[SCM] Packaging for bzflag branch, master, updated. debian/2.4.2+ds1-1

Ryan Kavanagh rak at debian.org
Wed Aug 1 18:42:28 UTC 2012


The following commit has been merged in the master branch:
commit d10991a9e0ec94b9a2efc551b0f922f21fa9e438
Author: Ryan Kavanagh <rak at debian.org>
Date:   Mon Jul 30 21:17:53 2012 -0400

    Repack upstream tarball to drop all bundled libraries: PDCurses, ares, curl, glew, regex, zlib

diff --git a/src/other/Makefile.am b/src/other/Makefile.am
deleted file mode 100644
index ea4a3c8..0000000
--- a/src/other/Makefile.am
+++ /dev/null
@@ -1,86 +0,0 @@
-if BUILD_ZLIB
-ZLIB_DIR = zlib
-else
-ZLIB_DIR =
-endif
-
-if BUILD_ARES
-ARES_DIR = ares
-else
-ARES_DIR =
-endif
-
-if BUILD_REGEX
-REGEX_DIR = regex
-else
-REGEX_DIR =
-endif
-
-if BUILD_CURL
-CURL_DIR = curl
-else
-CURL_DIR =
-endif
-
-SUBDIRS = \
-	${ZLIB_DIR} \
-	${ARES_DIR} \
-	${CURL_DIR} \
-	${REGEX_DIR}
-
-# include the files for subconfigured packages as needed left out of the dist
-EXTRA_DIST = \
-	PDCurses \
-	glew
-
-MAINTAINERCLEANFILES = \
-	Makefile.in \
-	ares/Makefile.in \
-	ares/aclocal.m4 \
-	ares/ares_config.h.in \
-	ares/ares_config.h.in~ \
-	ares/autom4te.cache \
-	ares/compile \
-	ares/config.guess \
-	ares/config.sub \
-	ares/configure \
-	ares/depcomp \
-	ares/install-sh \
-	ares/ltmain.sh \
-	ares/m4/libtool.m4 \
-	ares/m4/ltoptions.m4 \
-	ares/m4/ltsugar.m4 \
-	ares/m4/ltversion.m4 \
-	ares/m4/lt~obsolete.m4 \
-	ares/missing \
-	ares/mkinstalldirs \
-	curl/Makefile.in \
-	curl/aclocal.m4 \
-	curl/autom4te.cache \
-	curl/config.guess \
-	curl/config.sub \
-	curl/configure \
-	curl/depcomp \
-	curl/docs/Makefile.in \
-	curl/docs/examples/Makefile.in \
-	curl/docs/libcurl/Makefile.in \
-	curl/include/Makefile.in \
-	curl/include/curl/Makefile.in \
-	curl/install-sh \
-	curl/lib/Makefile.in \
-	curl/lib/curl_config.h.in \
-	curl/lib/curl_config.h.in~ \
-	curl/ltmain.sh \
-	curl/m4/libtool.m4 \
-	curl/m4/ltoptions.m4 \
-	curl/m4/ltsugar.m4 \
-	curl/m4/ltversion.m4 \
-	curl/m4/lt~obsolete.m4 \
-	curl/missing \
-	curl/mkinstalldirs \
-	curl/src/Makefile.in 
-
-maintainer-clean-local:
-	-rm -rf \
-		ares/autom4te.cache \
-		curl/autom4te.cache
diff --git a/src/other/Makefile.in b/src/other/Makefile.in
deleted file mode 100644
index 7a6fd4c..0000000
--- a/src/other/Makefile.in
+++ /dev/null
@@ -1,682 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-target_triplet = @target@
-subdir = src/other
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/cache.m4 \
-	$(top_srcdir)/m4/curses.m4 $(top_srcdir)/m4/isnan.m4 \
-	$(top_srcdir)/m4/libcurl.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/m4/mkdirp.m4 $(top_srcdir)/m4/sdl.m4 \
-	$(top_srcdir)/m4/stage.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/include/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-SOURCES =
-DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
-	html-recursive info-recursive install-data-recursive \
-	install-dvi-recursive install-exec-recursive \
-	install-html-recursive install-info-recursive \
-	install-pdf-recursive install-ps-recursive install-recursive \
-	installcheck-recursive installdirs-recursive pdf-recursive \
-	ps-recursive uninstall-recursive
-RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
-  distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
-	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
-	distdir
-ETAGS = etags
-CTAGS = ctags
-DIST_SUBDIRS = zlib ares curl regex
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-am__relativize = \
-  dir0=`pwd`; \
-  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
-  sed_rest='s,^[^/]*/*,,'; \
-  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
-  sed_butlast='s,/*[^/]*$$,,'; \
-  while test -n "$$dir1"; do \
-    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
-    if test "$$first" != "."; then \
-      if test "$$first" = ".."; then \
-        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
-        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
-      else \
-        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
-        if test "$$first2" = "$$first"; then \
-          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
-        else \
-          dir2="../$$dir2"; \
-        fi; \
-        dir0="$$dir0"/"$$first"; \
-      fi; \
-    fi; \
-    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
-  done; \
-  reldir="$$dir2"
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AR_FLAGS = @AR_FLAGS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-BZFLAG_DATA = @BZFLAG_DATA@
-BZFLAG_DATE = @BZFLAG_DATE@
-BZFLAG_VERSION = @BZFLAG_VERSION@
-CC = @CC@
-CCACHE = @CCACHE@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CONFIG = @CONFIG@
-CONFIG_CACHE = @CONFIG_CACHE@
-CONF_CFLAGS = @CONF_CFLAGS@
-CONF_CPPFLAGS = @CONF_CPPFLAGS@
-CONF_CXXFLAGS = @CONF_CXXFLAGS@
-CONF_TIME = @CONF_TIME@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CURSES_LIB = @CURSES_LIB@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO = @ECHO@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FRAMEWORK_OPENGL = @FRAMEWORK_OPENGL@
-GLEW_LIBS = @GLEW_LIBS@
-GLIBS = @GLIBS@
-GREP = @GREP@
-HASPOD2MAN = @HASPOD2MAN@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCARES = @LIBCARES@
-LIBCURL = @LIBCURL@
-LIBCURL_CPPFLAGS = @LIBCURL_CPPFLAGS@
-LIBDIR = @LIBDIR@
-LIBDL = @LIBDL@
-LIBMINIUPNPC = @LIBMINIUPNPC@
-LIBOBJS = @LIBOBJS@
-LIBREGEX = @LIBREGEX@
-LIBRT = @LIBRT@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIBTOOLFLAGS = @LIBTOOLFLAGS@
-LIBTOOL_DEPS = @LIBTOOL_DEPS@
-LIBZ = @LIBZ@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAJOR_VERSION = @MAJOR_VERSION@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MINOR_VERSION = @MINOR_VERSION@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-RANLIB = @RANLIB@
-SDL_CFLAGS = @SDL_CFLAGS@
-SDL_CONFIG = @SDL_CONFIG@
-SDL_LIBS = @SDL_LIBS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-VERSION = @VERSION@
-WINDRES = @WINDRES@
-XMKMF = @XMKMF@
-X_CFLAGS = @X_CFLAGS@
-X_EXTRA_LIBS = @X_EXTRA_LIBS@
-X_LIBS = @X_LIBS@
-X_PRE_LIBS = @X_PRE_LIBS@
-_libcurl_config = @_libcurl_config@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-subdirs = @subdirs@
-sysconfdir = @sysconfdir@
-target = @target@
-target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
- at BUILD_ZLIB_FALSE@ZLIB_DIR = 
- at BUILD_ZLIB_TRUE@ZLIB_DIR = zlib
- at BUILD_ARES_FALSE@ARES_DIR = 
- at BUILD_ARES_TRUE@ARES_DIR = ares
- at BUILD_REGEX_FALSE@REGEX_DIR = 
- at BUILD_REGEX_TRUE@REGEX_DIR = regex
- at BUILD_CURL_FALSE@CURL_DIR = 
- at BUILD_CURL_TRUE@CURL_DIR = curl
-SUBDIRS = \
-	${ZLIB_DIR} \
-	${ARES_DIR} \
-	${CURL_DIR} \
-	${REGEX_DIR}
-
-
-# include the files for subconfigured packages as needed left out of the dist
-EXTRA_DIST = \
-	PDCurses \
-	glew
-
-MAINTAINERCLEANFILES = \
-	Makefile.in \
-	ares/Makefile.in \
-	ares/aclocal.m4 \
-	ares/ares_config.h.in \
-	ares/ares_config.h.in~ \
-	ares/autom4te.cache \
-	ares/compile \
-	ares/config.guess \
-	ares/config.sub \
-	ares/configure \
-	ares/depcomp \
-	ares/install-sh \
-	ares/ltmain.sh \
-	ares/m4/libtool.m4 \
-	ares/m4/ltoptions.m4 \
-	ares/m4/ltsugar.m4 \
-	ares/m4/ltversion.m4 \
-	ares/m4/lt~obsolete.m4 \
-	ares/missing \
-	ares/mkinstalldirs \
-	curl/Makefile.in \
-	curl/aclocal.m4 \
-	curl/autom4te.cache \
-	curl/config.guess \
-	curl/config.sub \
-	curl/configure \
-	curl/depcomp \
-	curl/docs/Makefile.in \
-	curl/docs/examples/Makefile.in \
-	curl/docs/libcurl/Makefile.in \
-	curl/include/Makefile.in \
-	curl/include/curl/Makefile.in \
-	curl/install-sh \
-	curl/lib/Makefile.in \
-	curl/lib/curl_config.h.in \
-	curl/lib/curl_config.h.in~ \
-	curl/ltmain.sh \
-	curl/m4/libtool.m4 \
-	curl/m4/ltoptions.m4 \
-	curl/m4/ltsugar.m4 \
-	curl/m4/ltversion.m4 \
-	curl/m4/lt~obsolete.m4 \
-	curl/missing \
-	curl/mkinstalldirs \
-	curl/src/Makefile.in 
-
-all: all-recursive
-
-.SUFFIXES:
-$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
-	@for dep in $?; do \
-	  case '$(am__configure_deps)' in \
-	    *$$dep*) \
-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
-	        && { if test -f $@; then exit 0; else break; fi; }; \
-	      exit 1;; \
-	  esac; \
-	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/other/Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --gnu src/other/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure:  $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-
-# This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-#     (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
-	@fail= failcom='exit 1'; \
-	for f in x $$MAKEFLAGS; do \
-	  case $$f in \
-	    *=* | --[!k]*);; \
-	    *k*) failcom='fail=yes';; \
-	  esac; \
-	done; \
-	dot_seen=no; \
-	target=`echo $@ | sed s/-recursive//`; \
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  echo "Making $$target in $$subdir"; \
-	  if test "$$subdir" = "."; then \
-	    dot_seen=yes; \
-	    local_target="$$target-am"; \
-	  else \
-	    local_target="$$target"; \
-	  fi; \
-	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	  || eval $$failcom; \
-	done; \
-	if test "$$dot_seen" = "no"; then \
-	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
-	fi; test -z "$$fail"
-
-$(RECURSIVE_CLEAN_TARGETS):
-	@fail= failcom='exit 1'; \
-	for f in x $$MAKEFLAGS; do \
-	  case $$f in \
-	    *=* | --[!k]*);; \
-	    *k*) failcom='fail=yes';; \
-	  esac; \
-	done; \
-	dot_seen=no; \
-	case "$@" in \
-	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
-	  *) list='$(SUBDIRS)' ;; \
-	esac; \
-	rev=''; for subdir in $$list; do \
-	  if test "$$subdir" = "."; then :; else \
-	    rev="$$subdir $$rev"; \
-	  fi; \
-	done; \
-	rev="$$rev ."; \
-	target=`echo $@ | sed s/-recursive//`; \
-	for subdir in $$rev; do \
-	  echo "Making $$target in $$subdir"; \
-	  if test "$$subdir" = "."; then \
-	    local_target="$$target-am"; \
-	  else \
-	    local_target="$$target"; \
-	  fi; \
-	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	  || eval $$failcom; \
-	done && test -z "$$fail"
-tags-recursive:
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
-	done
-ctags-recursive:
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
-	done
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	set x; \
-	here=`pwd`; \
-	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
-	  include_option=--etags-include; \
-	  empty_fix=.; \
-	else \
-	  include_option=--include; \
-	  empty_fix=; \
-	fi; \
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    test ! -f $$subdir/TAGS || \
-	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
-	  fi; \
-	done; \
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(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
-	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    test -d "$(distdir)/$$subdir" \
-	    || $(MKDIR_P) "$(distdir)/$$subdir" \
-	    || exit 1; \
-	  fi; \
-	done
-	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
-	    $(am__relativize); \
-	    new_distdir=$$reldir; \
-	    dir1=$$subdir; dir2="$(top_distdir)"; \
-	    $(am__relativize); \
-	    new_top_distdir=$$reldir; \
-	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
-	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
-	    ($(am__cd) $$subdir && \
-	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$new_top_distdir" \
-	        distdir="$$new_distdir" \
-		am__remove_distdir=: \
-		am__skip_length_check=: \
-		am__skip_mode_fix=: \
-	        distdir) \
-	      || exit 1; \
-	  fi; \
-	done
-check-am: all-am
-check: check-recursive
-all-am: Makefile
-installdirs: installdirs-recursive
-installdirs-am:
-install: install-recursive
-install-exec: install-exec-recursive
-install-data: install-data-recursive
-uninstall: uninstall-recursive
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-recursive
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-	-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-clean: clean-recursive
-
-clean-am: clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-recursive
-	-rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-tags
-
-dvi: dvi-recursive
-
-dvi-am:
-
-html: html-recursive
-
-html-am:
-
-info: info-recursive
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-recursive
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-recursive
-
-install-html-am:
-
-install-info: install-info-recursive
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-recursive
-
-install-pdf-am:
-
-install-ps: install-ps-recursive
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-recursive
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic \
-	maintainer-clean-local
-
-mostlyclean: mostlyclean-recursive
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf: pdf-recursive
-
-pdf-am:
-
-ps: ps-recursive
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
-	install-am install-strip tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
-	all all-am check check-am clean clean-generic clean-libtool \
-	ctags ctags-recursive distclean distclean-generic \
-	distclean-libtool 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 installdirs-am maintainer-clean \
-	maintainer-clean-generic maintainer-clean-local mostlyclean \
-	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
-	tags tags-recursive uninstall uninstall-am
-
-
-maintainer-clean-local:
-	-rm -rf \
-		ares/autom4te.cache \
-		curl/autom4te.cache
-
-# 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/src/other/PDCurses/HISTORY b/src/other/PDCurses/HISTORY
deleted file mode 100644
index 7cf5b71..0000000
--- a/src/other/PDCurses/HISTORY
+++ /dev/null
@@ -1,1925 +0,0 @@
-PDCurses 3.4 - 2008/09/08
-=========================
-
-Nothing much new this time, but I've been sitting on some bug fixes for 
-almost a year, so it's overdue. Apart from bugs, the main changes are in 
-the documentation.
-
-New features:
-
-- setsyx() is now a function rather than a macro.
-
-Bug fixes and such:
-
-- In x11, the xc_atrtab table size was under-calculated by half, 
-  resulting in crashes at (oddly) certain line counts. (It should've 
-  crashed a lot more.) Reported by Mark Hessling.
-
-- Test for moved cursor was omitting the window origin offset. Reported 
-  by Carey Evans.
-
-- Is DOS and OS/2, the value for max items in key_table was still wrong.
-  Reported by C.E.
-
-- Changed isendwin() so it won't crash after delscreen().
-
-- Ensure zero-termination in PDC_mbstowcs() and PDC_wcstombs(). 
-
-- Disable QuickEdit Mode when enabling mouse input for the Win32 
-  console; reported by "Zalapkrakna".
-
-- Fix for building under Innotek C (I hope). Report by Elbert Pol, fix
-  courtesy of Paul Smedley.
-
-- Unified exports list with no duplicates -- pdcurses.def is now built
-  from components at compile time.
-
-- Don't install curspriv.h, and don't include it with binary
-  distributions.
-
-- Building DLLs with LCC is no longer supported, due to the primitive
-  nature of its make.exe.
-
-- Export the terminfo stub functions from the DLLs, too.
-
-- Added support for Apple's ".dylib" in configure. Suggested by Marc 
-  Vaillant (who says it's needed with OS 10.5.)
-
-- In sdl1/Makefile.mng, ensure that CC is set.
-
-- In the gcc makefiles, "$?" didn't really have the desired effect --
-  _all_ the dependencies showed up on the command line, including
-  curses.h, and pdcurses.a twice.  And apparently, this can mess up some
-  old version (?) of MinGW. So, revert to spelling out "tuidemo.o
-  tui.o". Reported by "Howard L."
-
-- Extensive documentation revision and reorganizing. More to do here. 
-  For example, I moved the build instructions from INSTALL (which never 
-  really described installation) to the platform-specific READMEs. 
-
-- New indentation standard: four spaces, no tabs.
-
-------------------------------------------------------------------------
-
-PDCurses 3.3 - 2007/07/11
-=========================
-
-This release adds an SDL backend, refines the demos, and is faster in 
-some cases.
-
-New features:
-
-- SDL port. See INSTALL, doc/sdl.txt and sdl1/* for details.
-
-- Double-buffering -- minimize screen writes by checking, in doupdate()
-  and wnoutrefresh(), whether the changes to curscr are really changes.
-  In most cases, this makes no difference (writes were already limited
-  to areas marked as changed), but it can greatly reduce the overhead
-  from touchwin(). It also helps if you have small, separated updates on
-  the same line.
-
-- The PDC_RGB colors can now be used, or not, with any platform (as long
-  as the same options are used when compiling both the library and
-  apps). This may help if you have apps that are hardwired to assume
-  certain definitions.
-
-- Restored the use_default_colors() stuff from the ncurses versions of
-  the rain and worm demos, to make them "transparent" (this is useful
-  now, with the SDL port); added transparency to newdemo.
-
-- Added setlocale() to tuidemo, to make it easier to browse files with
-  non-ASCII characters.
-
-- Sped up firework demo by replacing unneeded clear() and init_pair()
-  calls.
-
-- Allow exit from ptest demo by typing 'q'.
-
-- New functions for implementors: PDC_pair_content() and PDC_init_pair()
-  (the old pdc_atrtab stuff was arguably the last remnant of code in the
-  pdcurses directory that was based on platform details).
-
-Bug fixes and such:
-
-- Implicit wrefresh() needs to be called from wgetch() when the window's 
-  cursor position is changed, even if there are no other changes.
-
-- Set SP->audible on a per-platform basis, as was documented in
-  IMPLEMNT, but not actually being done.
-
-- Minor tweaks for efficiency and readability, notably with wscrl().
-
-- tuidemo didn't work correctly on monochrome screens when A_COLOR was
-  defined -- the color pair numbers appeared as the corresponding
-  character; also, the input box was (I now realize) broken with ncurses
-  since our 2.7, and broke more subtly with PDCurses' new implicit
-  refresh handling; also, the path to the default file for the Browse
-  function was a bit off.
-
-- Assume in the demos that curs_set() is always available -- there's no
-  good test for this, and the existing tests were bogus.
-
-- Made the command-line parameter for ptest work. (If given an argument,
-  it delays that number of milliseconds between changes, instead of
-  waiting for a key, and automatically loops five times.)
-
-- Building the Win32 DLL with MinGW or Cygwin wouldn't work from outside
-  the platform directory.
-
-- Building the X11 port with Cygwin required manually editing the 
-  Makefile after configuring; no longer. Reported by Warren W. Gay.
-
-- Minor tightening of configure and makefiles.
-
-- Bogus references to "ACS_BLCORNER" in the border man page. Reported by
-  "Walrii".
-
-- slk_wlabel() was not documented.
-
-- Spelling cleanup.
-
-- Changed RCSIDs to not end with a semicolon -- avoids warnings when
-  compiling with the -pedantic option.
-
-- Merged latin-1.txt into x11.txt.
-
-- Updated config.guess and config.sub to more recent versions.
-
-------------------------------------------------------------------------
-
-PDCurses 3.2 - 2007/06/06
-=========================
-
-This release mainly covers changes to the build process, along with a 
-few structural changes.
-
-New features:
-
-- The panel library has been folded into the main library. What this
-  means is that you no longer need to specify "-lpanel" or equivalent
-  when linking programs that use panel functionality with PDCurses;
-  however, panel.lib/.a is still provided (as a copy of pdcurses.lib/.a)
-  so that you can, optionally, build your projects with no changes. It
-  also means that panel functionality is available with the DLL or
-  shared library. Note that panel.h remains separate from curses.h.
-
-- Setting the PDCURSES_SRCDIR environment variable is no longer required
-  before building, unless you want to build in a location other than the
-  platform directory. (See INSTALL.)
-
-- MinGW and Cygwin makefiles support building DLLs, via the "DLL=Y"
-  option. Partly due to Timofei Shatrov.
-
-- Support for the Digital Mars compiler.
-
-- Watcom makefiles now use the "loaddll" feature.
-
-Bug fixes and such:
-
-- Eliminated the platform defines (DOS, WIN32, OS2, XCURSES) from
-  curses.h, except for X11-specific SCREEN elements and functions.
-  Dynamically-linked X11 apps built against an old version will have
-  their red and blue swapped until rebuilt. (You can define PDC_RGB to
-  build the library with the old color scheme, but it would also have to
-  be defined when building any new app.) Any app that depends on
-  PDCurses to determine the platform it's building on will have to make
-  other arrangements.
-
-- Documentation cleanup -- added more details; removed some content that
-  didn't apply to PDCurses; moved the doc-building tool to the doc
-  directory; changed *.man to *.txt.
-
-- The EMX makefile now accepts "DLL=Y", builds pdcurses.dll instead of
-  curses.dll, builds either the static library or the DLL (not both at
-  once), and links all the demos with the DLL when building it.
-
-- In Win32, read the registry only when needed: when init_color() or 
-  color_content() is called, instead of at startup.
-
-- A few additional consts in declarations.
-
-- The Win32 compilers that build DLLs now use common .def files.
-
-- panel.h functions sorted by name, as with other .h files; curses.h is
-  no longer included by repeated inclusions of panel.h or term.h.
-
-- Simplified Borland makefiles.
-
-- Makefile.aix.in depended on a file, xcurses.exp, that was never there.
-  This problem was fixed as part of the change to common .def files; 
-  however, I still haven't been able to test building on AIX.
-
-------------------------------------------------------------------------
-
-PDCurses 3.1 - 2007/05/03
-=========================
-
-Primarily clipboard-related fixes, and special UTF-8 support.
-
-New features:
-
-- "Force UTF-8" mode, a compile-time option to force the use of UTF-8
-  for multibyte strings, instead of the system locale. (Mainly for
-  Windows, where UTF-8 doesn't work well in the console.) See INSTALL.
-
-- Multibyte string support in PDC_*clipboard() functions, and in Win32's
-  PDC_set_title().
-
-- Added the global string "ttytype", per other curses implementations,
-  for compatibility with old BSD curses.
-
-- Real functions for the "quasi-standard aliases" -- crmode(),
-  nocrmode(), draino(), resetterm(), fixterm() and saveterm().
-  (Corresponding macros removed.)
-
-Bug fixes and such:
-
-- In Win32, under NT-family OSes, the scrollback buffer would be
-  restored by endwin(), but would not be turned off again when resuming
-  curses after an endwin(). The result was an odd, partly-scrolled-up
-  display. Now, the buffer is toggled by PDC_reset_prog_mode() and
-  PDC_reset_shell_mode(), so it's properly turned off when returning
-  from an endwin().
-
-- In 3.0, selection in X11 didn't work. (Well, the selecting worked, but 
-  the pasting elsewhere didn't.) This was due to the attempted fix 
-  "don't return selection start as a press event," so that's been 
-  reverted for now.
-
-- PDC_setclipboard() was locking up in X11. Reported by Mark Hessling.
-
-- Missing underscore in the declaration of XC_say() prevented
-  compilation with PDCDEBUG defined.  Reported by M.H.
-
-- Off-by-one error in copywin() -- the maximum coordinates for the
-  destination window should be inclusive. Reported by Tiago Dionizio.
-
-- Start in echo mode, per X/Open. Reported by T.D.
-
-- Strip leading and trailing spaces from slk labels, per a literal
-  reading of X/Open. Suggested by Alexey Miheev (about ncurses, but it
-  also applies here).
-
-- The #endif for __PDCURSES__ needs to come _after_ the closing of the
-  extern "C". This has been broken since June 2005. Fortunately (?), it
-  only shows up if the file is included multiple times, and then only in
-  C++. Reported on the DOSBox forums.
-
-- Use CF_OEMTEXT instead of CF_TEXT in the narrow versions of the 
-  clipboard functions in Win32, to match the console.
-
-- Changed the format of the string returned from longname().
-
-- In the clipboard test in the testcurs demo, use a single mvprintw() to
-  display the return from PDC_getclipboard(), instead of a loop of
-  addch(), which was incompatible with multibyte strings.
-
-- Moved has_key() into the keyname module, and documented it.
-
-- Moved RIPPEDOFFLINE to curspriv.h.
-
-- Typos in IMPLEMNT.
-
-------------------------------------------------------------------------
-
-PDCurses 3.0 - 2007/04/01
-=========================
-
-The focuses for this release are X/Open conformance, i18n, better color 
-support, cleaner code, and more consistency across platforms.
-
-This is only a brief summary of the changes. For more details, consult 
-the CVS log.
-
-New features:
-
-- An almost complete implementation of X/Open curses, including the
-  wide-character and attr_t functions (but excluding terminfo). The
-  wide-character functions work only in Win32 and X11, for now, and
-  require building the library with the appropriate options (see
-  INSTALL). Note that this is a simplistic implementation, with exactly
-  one wchar_t per cchar_t; the only characters it handles properly are
-  those that are one column wide.
-
-- Support for X Input Methods in the X11 port (see INSTALL). When built
-  this way, the internal compose key support is disabled in favor of
-  XIM's, which is a lot more complete, although you lose the box cursor.
-
-- Multibyte character support in the non-wide string handling functions, 
-  per X/Open. This only works when the library is built with wide- 
-  character support enabled.
-
-- Mouse support for DOS and OS/2. The DOS version includes untested 
-  support for scroll wheels, via the "CuteMouse" driver.
-
-- An ncurses-compatible mouse interface, which can work in parallel with 
-  the traditional PDCurses mouse interface. See the man page (or 
-  mouse.c) for details.
-
-- DOS and OS/2 can now return modifiers as keys, as in Win32 and X11.
-
-- COLORS, which had been fixed at 8, is now either 8 or 16, depending on
-  the terminal -- usually 16. When it's 8, blinking mode is enabled
-  (controlled as before by the A_BLINK attribute); when it's 16, bright
-  background colors are used instead. On platforms where it can be
-  changed, the mode is toggled by the new function PDC_set_blink().
-  PDCurses tries to set PDC_set_blink(FALSE) at startup. (In Win32, it's
-  always set to FALSE; in DOS, with other than an EGA or VGA card, it 
-  can't be.) Also, COLORS is now set to 0 until start_color() is called.
-
-- Corresponding to the change in COLORS, COLOR_PAIRS is now 256.
-
-- Working init_color() and color_content(). The OS/2 version of
-  init_color() works only in a full-screen session; the Win32 version
-  works only in windowed mode, and only in NT-family OSes; the DOS
-  version works only with VGA adapters (real or simulated). The Win32
-  version is based mostly on James Brown's setconsoleinfo.c
-  (www.catch22.net).
-
-- use_default_colors(), assume_default_colors(), and curses_version(),
-  after ncurses.
-
-- Added global int TABSIZE, after ncurses and Solaris curses; removed
-  window-specific _tabsize.
-
-- Logical extension to the wide-character slk_ funcs: slk_wlabel(), for 
-  retrieving the label as a wide-character string.
-
-- A non-macro implementation of ncurses' wresize().
-
-- Working putwin(), getwin(), scr_dump() and scr_restore().
-
-- A working acs_map[]. Characters from the ACS are now stored in window
-  structures as a regular character plus the A_ALTCHARSET attribute, and
-  rendered to the ACS only when displayed. (This allows, for example,
-  the correct display on one platform of windows saved from another.)
-
-- In X11, allow selection and paste of UTF8_STRING.
-
-- The testcurs demo now includes a color chart and init_color() test, a
-  wide character input test, a display of wide ACS characters with
-  sample Unicode text, a specific test of flash(), more info in the
-  resize test, and attempts to change the width as well as the height.
-
-- Command-line option for MSVC to build DLLs (see INSTALL). Also, the
-  naming distinction for DLLs ("curses" vs. "pdcurses") is abandoned,
-  and either the static lib or DLL is built, not both at once (except
-  for X11).
-
-- For backwards compatibility, a special module just for deprecated
-  functions -- currently PDC_check_bios_key(), PDC_get_bios_key(),
-  PDC_get_ctrl_break() and PDC_set_ctrl_break(). These shouldn't be used
-  in applications, but currently are... in fact, all the "private"
-  functions (in curspriv.h) are subject to change and should be avoided. 
-
-- A new document, IMPLEMNT, describing PDCurses' internal functions for
-  those wishing to port it to new platforms.
-
-- Mark Hessling has released the X11 port to the public domain. 
-  (However, x11/ScrollBox* retain their separate copyright and MIT-like 
-  license.)
-
-Bug fixes and such:
-
-- Most of the macros have been removed (along with the NOMACROS ifdef).
-  The only remaining ones are those which have to be macros to work, and
-  those that are required by X/Open to be macros. There were numerous
-  problems with the macros, and no apparent reason to keep them, except
-  tradition -- although it was PCcurses 1.x that first omitted them.
-
-- Clean separation of platform-specific code from the rest. Outside of
-  the platform directories, there remain only a few ifdefs in curses.h
-  and curspriv.h.
-
-- General reorganization and simplification.
-
-- Documentation revisions.
-
-- When expanding control characters in addch() or insch(), retain the 
-  attributes from the chtype.
-
-- Preserve the A_ALTCHARSET attribute in addch() and insch().
-
-- Per X/Open, beep() should always return OK.
-
-- On platforms with a controlling terminal (i.e., not X11), curs_set(1)
-  now sets the cursor to the shape it had at the time of initscr(),
-  rather than always making it small. (Exception for DOS: If the video
-  mode has been changed by PDC_resize_screen(), curs_set(1) reverts to
-  line 6/7.) The shape is taken from SP->orig_cursor (the meaning of
-  which is platform-specific).
-
-- Stop updating the cursor position when the cursor is invisible (this 
-  gives a huge performance boost in Win 9x); update the cursor position 
-  from curs_set() if changing from invisible to visible.
-
-- Some tweaking of the behavior of def_prog_mode(), def_shell_mode(), 
-  savetty(), reset_prog_mode(), reset_shell_mode() and resetty()... 
-  still not quite right.
-
-- flash() was not implemented for Win32 or X. A portable implementation
-  is now used for all platforms. Note that it's much slower than the
-  old (DOS and OS/2) version, but this is only apparent on an extremely
-  slow machine, such as an XT.
-
-- In getstr(), backspacing on high-bit characters caused a double 
-  backspace.
-
-- hline() and vline() used an incorrect (off by one) interpretation of 
-  _maxx and _maxy. If values of n greater than the max were specified, 
-  these functions could access unallocated memory.
-
-- innstr() is supposed to return the number of characters read, not just 
-  OK or ERR. Reported by Mike Aubury.
-
-- A proper implementation of insch() -- the PDC_chadd()-based version 
-  wasn't handling the control characters correctly.
-
-- Return ASCII and control key names from keyname() (problem revealed by
-  ncurses' movewindow test); also, per X/Open, return "UNKNOWN KEY" when 
-  appropriate, rather than "NO KEY NAME".
-
-- Turn off the cursor from leaveok(TRUE), even in X11; leaveok(FALSE)
-  now calls curs_set(1), regardless of the previous state of the cursor.
-
-- In the slk area, BUTTON_CLICKED events now translate to function keys,
-  along with the previously recognized BUTTON_PRESSED events. Of course,
-  it should really be checking the events specified by map_button(),
-  which still doesn't work.
-
-- napms(0) now returns immediately.
-
-- A unified napms() implementation for DOS -- no longer throttles the
-  CPU when built with any compiler.
-
-- Allow backspace editing of the nocbreak() buffer.
-
-- pair_content(0, ...) is valid.
-
-- There was no check to ensure that the pnoutrefresh() window fit within 
-  the screen. It now returns an ERR if it doesn't.
-
-- In X11, resize_term() must be called with parameters (0, 0), and only 
-  when SP->resized is set, else it returns ERR.
-
-- Copy _bkgd in resize_window(). Patch found on Frederic L. W. Meunier's 
-  web site.
-
-- slk_clear() now removes the buttons completely, as in ncurses.
-
-- Use the current foreground color for the line attributes (underline,
-  left, right), unless PDC_set_line_color() is explicitly called. After 
-  setting the line color, you can reset it to this mode via 
-  "PDC_set_line_color(-1)".
-
-- Removed non-macro implementations of COLOR_PAIR() and PAIR_NUMBER().
-
-- Dispensed with PDC_chadd() and PDC_chins() -- waddch() and winsch() 
-  are now (again) the core functions.
-
-- Dropped or made static many obsolete, unused, and/or broken functions,
-  including PDC_chg_attrs(), PDC_cursor_on() and _off(),
-  PDC_fix_cursor(), PDC_get_attribute(), PDC_get_cur_col() and _row(),
-  PDC_set_80x25(), PDC_set_cursor_mode(), PDC_set_rows(),
-  PDC_wunderline(), PDC_wleftline(), PDC_wrightline(),
-  XCursesModifierPress() and XCurses_refresh_scrollbar().
-
-- Obsolete/unused defines: _BCHAR, _GOCHAR, _STOPCHAR, _PRINTCHAR 
-  _ENDLINE, _FULLWIN and _SCROLLWIN.
-
-- Obsolete/unused elements of the WINDOW struct: _pmax*, _lastp*, 
-  _lasts*.
-
-- Obsolete/unused elements of the SCREEN struct: orgcbr, visible_cursor,
-  sizeable, shell, blank, cursor, orig_emulation, font, orig_font,
-  tahead, adapter, scrnmode, kbdinfo, direct_video, video_page,
-  video_seg, video_ofs, bogus_adapter. (Some of these persist outside
-  the SCREEN struct, in the platform directories.) Added mouse_wait and 
-  key_code.
-
-- Removed all the EMALLOC stuff. Straight malloc calls were used 
-  elsewhere; it was undocumented outside of comments in curspriv.h; and 
-  there are better ways to use a substitute malloc().
-
-- Single mouse clicks are now reportable on all platforms (not just
-  double-clicks). And in general, mouse event reporting is more
-  consistent across platforms.
-
-- The mouse cursor no longer appears in full-screen mode in Win32 unless
-  a nonzero mouse event mask is used.
-
-- ALT-keypad input now works in Win32.
-
-- In Win32, SetConsoleMode(ENABLE_WINDOW_INPUT) is not useful, and 
-  appears to be the source of a four-year-old bug report (hanging in 
-  THE) by Phil Smith.
-
-- Removed the PDC_THREAD_BUILD stuff, which has never worked. For the
-  record: PDCurses is not thread-safe. Neither is ncurses; and the
-  X/Open curses spec explicitly makes it a non-requirement.
-
-- With the internal compose key system in the X11 port, modifier keys
-  were breaking out of the compose state, making it impossible to type
-  accented capitals, etc. Also, Multi_key is now the default compose
-  key, instead of leaving it undefined by default; and a few more combos
-  are supported.
-
-- In X11, the first reported mouse event after startup always read as a
-  double-click at position 0, 0. (This bug was introduced in 2.8.)
-
-- In X11, don't return selection start as a press event. (Shift-click on
-  button 1 is still returned.)
-
-- In X11, properly handle pasting of high-bit chars. (It was doing an
-  unwanted sign extension.)
-
-- In X11, BUTTON_MOVED was never returned, although PDC_MOUSE_MOVED was
-  set.
-
-- The fix in 2.8 for the scroll wheel in X11 wasn't very good -- it did
-  report the events as scroll wheel events, but it doubled them. Here's
-  a proper fix.
-
-- Changed mouse handling in X11: Simpler translation table, with
-  XCursesPasteSelection() called from XCursesButton() instead of the
-  translation table; require shift with button 1 or 2 for select or
-  paste when mouse events are being reported (as with ncurses), allowing
-  passthrough of simple button 2 events. This fixes the previously
-  unreliable button 2 behavior.
-
-- Modifier keys are now returned on key up in X11, as in Win32. And in
-  general, modifier key reporting is more consistent across platforms.
-
-- Modifiers are not returned as keys when a mouse click has occurred
-  since the key press.
-
-- In BIOS mode (in DOS), count successive identical output bytes, and
-  make only one BIOS call for all of them. This dramatically improves 
-  performance.
-
-- The cursor position was not always updated correctly in BIOS mode.
-
-- In testcurs, the way the ACS test was written, it would really only
-  work with a) PDCurses (with any compiler), or b) gcc (with any
-  curses). Here's a more portable implementation.
-
-- Better reporting of mouse events in testcurs.
-
-- Blank out buffer and num before the scanw() test in testcurs, in case 
-  the user just hits enter or etc.; clear the screen after resizing.
-
-- Allow tuidemo to use the last line.
-
-- Separate left/right modifier keys are now reported properly in Win32.
-  (Everything was being reported as _R.)
-
-- Attempts to redirect input in Win32 now cause program exit and an 
-  error message, instead of hanging.
-
-- Dropped support for the Microway NDP compiler.
-
-- Some modules renamed, rearranged.
-
-- Fixes for errors and warnings when building with Visual C++ 2005.
-
-- In MSVC, the panel library didn't work with the DLL.
-
-- Complete export lists for DLLs.
-
-- Simplified makefiles; moved common elements to .mif files; better 
-  optimization; strip demos when possible.
-
-- Changed makefile targets of "pdcurses.a/lib" and "panel.a/lib" to 
-  $(LIBCURSES) and $(LIBPANEL). Suggestion of Doug Kaufman.
-
-- Changed "install" target in the makefile to a double-colon rule, to 
-  get around a conflict with INSTALL on non-case-sensitive filesystems, 
-  such as Mac OS X's HFS+. Reported by Douglas Godfrey et al.
-
-- Make PDCurses.man dependent on manext. Suggestion of Tiziano Mueller.
-
-- Set up configure.ac so autoheader works; removed some obsolescent 
-  macros. Partly the suggestion of T.M.
-
-- The X11 port now builds in the x11 directory (including the demos), as
-  with other ports.
-
-- The X11 port should now build on more 64-bit systems. Partly due to 
-  M.H.
-
-- The default window title and icons for the X11 port are now "PDCurses"
-  instead of "XCurses".
-
-- Internal functions and variables made static where possible.
-
-- Adopted a somewhat more consistent naming style: Internal functions
-  with external linkage, and only those, have the prefix "PDC_";
-  external variables that aren't part of the API use "pdc_"; static
-  functions use "_"; and "XC_" and "xc_" prefixes are used for functions
-  and variables, respectively, that are shared between both processes in
-  the X11 port. Also eliminated camel casing, where possible.
-
-- Changed the encoding for non-ASCII characters in comments and
-  documentation from Latin-1 to UTF-8.
-
-------------------------------------------------------------------------
-
-PDCurses 2.8 - 2006/04/01
-=========================
-
-As with the previous version, you should assume that apps linked against 
-older dynamic versions of the library won't work with this one until 
-recompiled.
-
-New features:
-
-- Simpler, faster.
-
-- Declarations for all supported, standard functions, per the X/Open
-  Curses 4.2 spec, with the notable exception of getch() and ungetch().
-  You can disable the use of the macro versions by defining NOMACROS
-  before including curses.h (see xmas.c for an example). NOMACROS yields
-  smaller but theoretically slower executables.
-
-- New functions: vwprintw(), vwscanw(), vw_printw() and vw_scanw(). This 
-  completes the list of X/Open 4.2 functions, except for those concerned 
-  with attr_t and wide characters. Some (especially the terminfo/termcap 
-  functions) aren't yet fully fleshed out, though.
-
-- Non-macro implementations for COLOR_PAIR(), PAIR_NUMBER(), getbkgd(), 
-  mvgetnstr(), mvwgetnstr(), mvhline(), mvvline(), mvwhline(), and 
-  mvwvline(). (The macros are still available, too.)
-
-- newterm() works now, in a limited way -- the parameters are ignored, 
-  and only the first invocation will work (i.e., only one SCREEN can be 
-  used).
-
-- start_color() works now -- which is to say, if you _don't_ call it, 
-  you'll only get monochrome output. Also, without calling it, the 
-  terminal's default colors will be used, where supported (currently 
-  only in Win32). This is equivalent to the PDC_ORIGINAL_COLORS behavior 
-  introduced in 2.7, except that _only_ the default colors will be used. 
-  (PDC_ORIGINAL_COLORS is still available, if you want to combine the 
-  use of specific colors and the default colors.)
-
-- New logic for termname() and longname(): termname() always returns
-  "pdcurses"; longname() returns "PDCurses for [platform] [adapter]
-  [COLOR/MONO]-YxX" (adapter is only defined for DOS and OS/2). This is
-  the first time these functions return _anything_ in Win32.
-
-- New installation method for XCurses: the header files are placed in a 
-  subdirectory "xcurses" within the include directory, rather than being 
-  renamed. (But the renamed xcurses.h and xpanel.h are also installed, 
-  for backwards compatibility.) curspriv.h and term.h are now available,
-  and existing curses-based code need no longer be edited to use 
-  XCurses' curses.h. And with no more need for explicit XCursesExit() 
-  calls (see below), your code need not be changed at all to move from 
-  another curses implementation to XCurses. It can be as simple as "gcc 
-  -I/usr/local/include/xcurses -lXCurses -oprogname progname.c".
-
-- Combined readme.* into this HISTORY file, and incorporated the old 1.x
-  (PCcurses) history.
-
-- New functionality for the testcurs demo: ACS character display; menu 
-  support for PgUp, PgDn, Home and End; centered menu; and it can now 
-  be resized in X.
-
-- Added modified versions of the rain and worm demos from ncurses.
-
-Bug fixes and such:
-
-- Big cleanup of dead and redundant code, including unneeded defines, 
-  ifdefs, and structure elements.
-
-- flushinp() was not implemented for Win32.
-
-- resetty() was not restoring LINES and COLS.
-
-- nonl() made '\n' print a line feed without carriage return. This was 
-  incorrect.
-
-- Removed bogus implementation of intrflush().
-
-- The line-breakout optimization system, disabled by default in 2.7, is
-  removed in 2.8. It simply didn't work, and never has. (The typeahead() 
-  function remains, for compatibility, but does nothing.)
-
-- The declarations for the printw() and scanw() function families were
-  erroneously ifdef'd.
-
-- Safer printw() calls on platforms that support vsnprintf().
-
-- Use the native vsscanf() in DJGPP, MinGW and Cygwin.
-
-- ACS_BLOCK now works in X.
-
-- Explicit calls to XCursesExit() are no longer needed.
-
-- XCURSES is now defined automatically if not DOS, OS2 or WIN32.
-
-- The default icon for XCurses wasn't working (had to remove the focus 
-  hint code to fix this). Also, the default title is now "XCurses" 
-  instead of "main".
-
-- Incorrect dimensions (undercounting by two in each direction) were
-  shown while resizing in X.
-
-- Scroll wheel events were not always correctly reported in X.
-
-- 32 bits are enough for the "long" chtype, but 64 bits were used on a 
-  64-bit system, wasting memory. Now conditioned on _LP64. This could be 
-  faster, too.
-
-- The short, 16-bit chtype now works with XCurses.
-
-- Corrected return value for is_linetouched(), is_wintouched(),
-  can_change_color() and isendwin() (bool instead of int).
-
-- timeout(), wtimeout(), idcok() and immedok() return void.
-
-- pair_content() takes a short.
-
-- Replaced incorrect usages of attr_t with chtype. attr_t is still 
-  typedef'd, for backwards compatibility. (It's supposed to be used for 
-  the WA_*-style functions, which PDCurses doesn't yet support.)
-
-- Added const where required by the spec, and in other appropriate
-  places.
-
-- Removed PDC_usleep(). napms() is now the core delay routine.
-
-- Fixed poll() support in napms().
-
-- Various changes to the internal PDC_* functions -- don't depend on 
-  these, and don't use them unless you absolutely have to.
-
-- Some routines accessed window structures in their variable 
-  declarations, _before_ checking for a NULL window pointer.
-
-- Dropped support for the undocumented PDC_FULL_DISPLAY, wtitle(), and
-  PDC_print().
-
-- Cleaned up remaining warnings.
-
-- Reduced unnecessary #include directives -- speeds up compilation.
-
-- Fix for demos build in Borland/DOS -- the makefile in 2.7 didn't 
-  specify the memory model. Reported by Erwin Waterlander.
-
-- Simplified the makefiles; e.g., some now build each demo in a single 
-  step, and Watcom no longer uses demos.lnk. Also, the demo exes are now 
-  stripped when possible; maximum compression used for archives built 
-  by the makefiles; xcurses-config removed as part of "make distclean"; 
-  and I tweaked optimization for some platforms.
-
-- Reverted to /usr/local/ as default installation directory for XCurses.
-
-- Upgraded to autoconf 2.59... instantly doubling the size of the
-  configure script. Ah well. Otherwise, simplified the build system.
-
-- Dropped support for pre-ANSI compilers. (It hasn't worked since at
-  least version 2.4, anyway.)
-
-- Revised and, I hope, clarified the boilerplate and other comments.
-
-- Simplified logging and RCS ids; added RCS ids where missing.
-
-- Consistent formatting for all code, approximately equivalent to
-  "indent -kr -i8 -bl -bli0", with adjustments for 80 columns.
-
-------------------------------------------------------------------------
-
-PDCurses 2.7 - 2005/12/30
-=========================
-
-INTRODUCTION:
-
- Hello all. As of a few weeks ago, I'm the new maintainer for PDCurses.
- Here's a brief summary of changes in this release. (More details are
- available in the CVS log and trackers on SourceForge.)
-
-NEW FEATURES:
-
-- Functions: delscreen(), getattrs(), has_key(), slk_color(),
-  wcolor_set(), wtimeout().
-
-- Macros: color_set(), mvhline(), mvvline(), mvwgetnstr(), mvwhline(),
-  mvwvline(), timeout(), wresize().
-
-- Stub implementations of terminfo functions (including a term.h).
-
-- More stubs for compatibility: filter(), getwin(), putwin(),
-  noqiflush(), qiflush(), scr_dump(), scr_init(), scr_restore(),
-  scr_set(), use_env(), vidattr(), vidputs().
-
-- The terminal's default colors are used as curses' default colors when
-  the environment variable "PDC_ORIGINAL_COLORS" is set to any value
-  (Win32 only at the moment).
-
-- Simplified build system.
-
-- Replaced PDC_STATIC_BUILD with its opposite, PDC_DLL_BUILD (see .mak
-  files for more info).
-
-- Minimal implementation of color_content() -- no longer a stub.
-
-- Added the remaining ACS defines (ACS_S3, ACS_BBSS, etc.) for
-  DOS/OS2/Win; "enhanced" versions of existing ACS characters used.
-
-- Support for scroll wheels.
-
-- Support for Pacific C.
-
-BUGS FIXED:
-
-- Builds correctly (including demos) on all tested platforms (see
-  below); nearly all compiler warnings have been cleaned up; the ptest
-  demo is built on all platforms; "clean" targets are improved.
-
-- The ability to build ncurses_tests has been restored (see demos dir).
-
-- Line-breakout optimization now defaults to off (equivalent to
-  "typeahead(-1)"), so output is not interrupted by keystrokes (it's
-  supposed to resume on the next refresh(), which wasn't working).
-
-- Implicit wrefresh() in wgetch() was not being invoked in nodelay mode.
-
-- subpad() was erroneously offsetting from the origin coordinates of the
-  parent pad (which are always -1,-1).
-
-- In wborder(), whline(), and wvline(), the current (wattrset) attribute
-  was being used, but not the current background (wbkgd).
-
-- Allow Russian 'r' character ASCII 0xe0 to be returned.
-
-- termattrs() now also returns A_UNDERLINE, A_REVERSE.
-
-- In Win32, with large scrollback buffers set, there was an unwanted
-  "scrollup" effect on startup.
-
-- Revamped keyboard handling for Win32.
-
-- New screen resize method for Win32.
-
-- napms(), delay_output(), etc. now work with Cygwin.
-
-- curs_set(0) wasn't working in Win32 in full-screen (ALT-ENTER) mode --
-  the cursor stayed on.
-
-- The A_REVERSE attribute was broken in XCurses.
-
-- On 64-bit systems, XCurses was ignoring every other keystroke.
-
-- Added focus hints for XCurses.
-
-- Demos (except for tuidemo) once again have their proper titles in
-  XCurses (using Xinitscr() instead of the obsolete XCursesProgramName).
-
-- The 16-bit chtype is a working option again (by removing #define
-  CHTYPE_LONG from curses.h), except in XCurses. It's not recommended;
-  but if your needs are limited, it still works.
-
-- Reset screen size in resetty() under DOS, as in Win32 and OS/2.
-
-- Changes for cursor size under DOS.
-
-- Automatic setting of BIOS mode for CGA under DOS now works.
-
-- The cursor is now always updated in PDC_gotoxy(); this fixes the
-  problem of missing characters in BIOS mode.
-
-- Macros nocbreak(), cbreak(), nocrmode(), crmode(), nodelay(),
-  nl() and nonl() now return OK.
-
-- ERR and OK are now defined as -1 and 0, respectively, for
-  compatibility with other curses implementations -- note that this
-  change is not binary compatible; you'll have to rebuild programs that
-  use shared/dynamic libraries.
-
-- Added "const" to prototypes where appropriate.
-
-- Miscellaneous code cleanup.
-
-ACKNOWLEDGEMENTS:
-
- Walter Briscoe
- Jean-Pierre Demailly
- Ruslan Fedyarov
- Warren Gay
- Florian Grosse-Coosmann
- Vladimir Kokovic
- Matt Maloy
- K.H. Man
- Michael Ryazanov
- Ron Thibodeau
- Alexandr Zamaraev
-
- and of course, MARK HESSLING, for his over 13 years of service as the
- maintainer of PDCurses. Plus, thanks to all who've reported bugs or
- requested features. Apologies to anyone I've forgotten.
-
- I've tested this version on Turbo C++ 3.0 and Borland C++ 3.1 for DOS;
- DJGPP 2.X; Open Watcom 1.3 for DOS (16 and 32-bit), Windows and OS/2;
- EMX 0.9d and the "newgcc" version of EMX; Borland C++ 5.5 for Windows;
- recent versions of MinGW, Cygwin, LCC-Win32 and Microsoft Visual C++;
- and gcc under several flavors of Linux, Mac OS X, *BSD and Solaris.
-
--- William McBrine
-
-------------------------------------------------------------------------
-
-PDCurses 2.6 - 2003/01/08
-=========================
-
-INTRODUCTION:
-
- This release of PDCurses includes the following changes:
-
-BUGS FIXED:
-
-- Allow accented characters on Win32 platform when run on non-English
-  keyboards.
-
-- Allow "special" characters like Ctrl-S, Ctrl-Q under OS/2 to be returned.
-
-- Some bugs with halfdelay() fixed by William McBrine.
-
-- pechochar() should now work correctly.
-
-- redrawwin() macro in curses.h was incorrect - fixed by Alberto Ornaghi
-
-- Don't include "special" characters like KEY_SHIFT_L to be returned in
-  getnstr() family. Bug 542913
-
-- Entering TAB in wgetnstr() no longer exceeds requested buffer size.
-  Bug 489233
-
-- Fixed bug 550066, scrollok() and pads.
-  Also beep() called when buffer exceeded. Bug 562041.
-
-- Reverse video of X11 selection reinstated. Pablo Garcia Abio??
-
-- Right Alt modifier now works like left Alt modifier under Win32
-
-- Add support for all libXaw replacement libraries with Scrollbar bug. 
-  Note that for this to work, you still have to change the libXaw 
-  replacement libraries to fix the bug :-(
-
-- Don't trap signals in XCurses if calling application has ignored them. 
-  Change by Frank Heckenbach.
-
-- Bug reports from Warren W. Gay:
-  - Fix termattrs() to return A_REVERSE and A_BLINK on all platforms.
-  - Fix definition of getsyx() and setsyx() to be consistent with 
-    ncurses. Bug 624424.
-  - Fix definition of echo() and noecho(). Bug 625001.
-  - Fix definition of keypad() and leaveok(). Bug 632653.
-  - Missing panel_hidden() prototype. Bug 649320.
-
-- Fixed bug with calling def_prog_mode(), resize_term(), 
-  reset_prog_mode(); the resize details were being lost.
-
-NEW FEATURES:
-
-- Clipboard support now available on DOS platform, but handled 
-  internally to the currently running process.
-
-- New X11 resource: textCursor, allows the text cursor to be specified 
-  as a vertical bar, or the standard horizontal bar. Thanks to Frank 
-  Heckenbach for the suggestion.
-
-NEW COMPILER SUPPORT:
-
-- lcc-win32 now works correctly
-
-------------------------------------------------------------------------
-
-PDCurses 2.5 - 2001/11/26
-=========================
-
-INTRODUCTION:
-
- This release of PDCurses includes the following changes:
-
-- Set BASE address for Win32 DLL
-
-- Add KEY_SUP and KEY_SDOWN.
-
-- Add PDC_set_line_color()
-
-- Add blink support as bold background
-
-- Add bold colors
-
-- Add getbkgd() macro
-
-- Add new PDC functions for adding underline, overline, leftline and 
-  rightline
-
-- Add support for shifted keypad keys.
-
-- Allow more keypad keys to work under Win32
-
-- Change Win32 and OS/2 DLL name to curses.dll
-
-- Change example resources to allow overriding from the command line
-
-- Changes for building cleanly on OS/2
-
-- Changes to handle building XCurses under AIX
-
-- Check if prefresh() and pnoutrefresh() parameters are valid.
-
-- Ensure build/install works from any directory
-
-- Handle platforms where X11 headers do not typedef XPointer.
-
-- Mention that Flexos is likely out-of-date.
-
-- Pass delaytenths to XCurses_rawgetch()
-
-- Remove boldFont
-
-- Updates for cursor blinking and italic.
-
-BUGS FIXED:
-
-- Fix bug with getting Win32 clipboard contents. Added new 
-  PDC_freeclipboard() function.
-
-- Fix bug with halfdelay()
-
-- Fix bug with mouse interrupting programs that are not trapping mouse 
-  events under Win32.
-
-- Fix return value from curs_set()
-
-- Reverse the left and right pointing bars in ALT_CHARSET
-
-NEW COMPILER SUPPORT:
-
-- Add QNX-RTP port
-
-------------------------------------------------------------------------
-
-PDCurses 2.4 - 2000/01/17
-=========================
-
-INTRODUCTION:
-
- This release of PDCurses includes the following changes:
-
-- full support of X11 selection handling
-
-- removed the need for the cursos2.h file
-
-- enabled the "shifted" key on the numeric keypad
-
-- added native clipboard support for X11, Win32 and OS/2
-
-- added extra functions for obtaining internal PDCurses status
-
-- added clipboard and key modifier tests in testcurs.c
-
-- fixes for panel library
-
-- key modifiers pressed by themselves are now returned as keys:
-  KEY_SHIFT_L KEY_SHIFT_R KEY_CONTROL_L KEY_CONTROL_R KEY_ALT_L KEY_ALT_R
-  This works on Win32 and X11 ports only
-
-- Added X11 shared library support
-
-- Added extra slk formats supported by ncurses
-
-- Fixed bug with resizing the terminal when slk were on.
-
-- Changed behavior of slk_attrset(), slk_attron() slk_attroff()
-  functions to work more like ncurses.
-
-BUGS FIXED:
-
-- some minor bug and portability fixes were included in this release
-
-NEW FUNCTIONS:
-
-- PDC_getclipboard() and PDC_setclipboard() for accessing the native
-  clipboard (X11, Win32 and OS/2)
-
-- PDC_set_title() for setting the title of the window (X11 and Win32 
-  only)
-
-- PDC_get_input_fd() for getting the file handle of the PDCurses input
-
-- PDC_get_key_modifiers() for getting the keyboard modifier settings at 
-  the time of the last (w)getch()
-
-- Xinitscr() (only for X11 port) which allows standard X11 switches to 
-  be passed to the application
-
-NEW COMPILER SUPPORT:
-
-- MingW32 GNU compiler under Win95/NT
-
-- Cygnus Win32 GNU compiler under Win95/NT
-
-- Borland C++ for OS/2 1.0+
-
-- lcc-win32 compiler under Win95/NT
-
-ACKNOWLEDGEMENTS: (for this release)
-
- Georg Fuchs for various changes.
- Juan David Palomar for pointing out getnstr() was not implemented.
- William McBrine for fix to allow black/black as valid color pair.
- Peter Preus for pointing out the missing bccos2.mak file.
- Laura Michaels for a couple of bug fixes and changes required to 
- support Mingw32 compiler.
- Frank Heckenbach for PDC_get_input_fd() and some portability fixes and
- the fixes for panel library.
- Matthias Burian for the lcc-win32 compiler support.
-
-------------------------------------------------------------------------
-
-PDCurses 2.3 - 1998/07/09
-=========================
-
-INTRODUCTION:
-
- This release of PDCurses includes the following changes:
-
-- added more System V R4 functions
-
-- added Win32 port
-
-- the X11 port is now fully functional
-
-- the MS Visual C++ Win32 port now includes a DLL
-
-- both the X11 and Win32 ports support the mouse
-
-- the slk..() functions are now functional
-
-- support for scrollbars under X11 are experimental at this stage
-
-- long chtype extended to non-Unix ports
-
- The name of the statically built library is pdcurses.lib (or 
- pdcurses.a). The name of the DLL import library (where applicable) is 
- curses.lib.
-
-BUGS FIXED:
-
-- some minor bugs were corrected in this release
-
-NEW FUNCTIONS:
-
-- slk..() functions
-
-NEW COMPILER SUPPORT:
-
-- MS Visual C++ under Win95/NT
-
-- Watcom C++ under OS/2, Win32 and DOS
-
-- two EMX ports have been provided:
-  - OS/2 only using OS/2 APIs
-  - OS/2 and DOS using EMX video support routines
-
-EXTRA OPTIONS:
-
- PDCurses recognizes two environment variables which determines the
- initialization and finalization behavior.  These environment variables
- do not apply to the X11 port.
-
- PDC_PRESERVE_SCREEN
- If this environment variable is set, PDCurses will not clear the screen
- to the default white on black on startup.  This allows you to overlay
- a window over the top of the existing screen background.
-
- PDC_RESTORE_SCREEN
- If this environment variable is set, PDCurses will take a copy of the
- contents of the screen at the time that PDCurses is started; initscr(),
- and when endwin() is called, the screen will be restored.
-
-
-ACKNOWLEDGEMENTS: (for this release)
-
- Chris Szurgot for original Win32 port.
- Gurusamy Sarathy for some updates to the Win32 port.
- Kim Huron for the slk..() functions.
- Florian Grosse Coosmann for some bug fixes.
- Esa Peuha for reducing compiler warnings.
- Augustin Martin Domingo for patches to X11 port to enable accented 
- characters.
-
-------------------------------------------------------------------------
-
-PDCurses 2.2 - 1995/02/12
-=========================
-
-INTRODUCTION:
-
- This release of PDCurses has includes a number of major changes:
-
-- The portable library functions are now grouped together into single 
-  files with the same arrangement as System V R4 curses.
-
-- A panels library has been included. This panels library was written by 
-  Warren Tucker.
-
-- Quite a few more functions have been supplied by Wade Schauer and 
-  incorporated into release 2.2. Wade also supplied the support for the 
-  Microway NDP C/C++ 32 bit DOS compiler.
-
-- The curses datatype has been changed from an unsigned int to a long. 
-  This allows more attributes to be stored as well as increasing the 
-  number of color-pairs from 32 to 64.
-
-- Xwindows port (experimental at the moment).
-
-BUGS FIXED:
-
-- mvwin() checked the wrong coordinates
-
-- removed DESQview shadow memory buffer checking bug in curses.h in 
-  #define for wstandout()
-
-- lots of others I can't remember
-
-NEW FUNCTIONS:
-
-- Too many to mention. See intro.man for a complete list of the 
-  functions PDCurses now supports.
-
-COMPILER SUPPORT:
-
-- DJGPP 1.12 is now supported. The run-time error that caused programs 
-  to crash has been removed.
-
-- emx 0.9a is supported. A program compiled for OS/2 should also work 
-  under DOS if you use the VID=EMX switch when compiling. See the 
-  makefile for details.
-
-- The Microway NDP C/C++ DOS compiler is now supported. Thanks to Wade 
-  Schauer for this port.
-
-- The Watcom C++ 10.0 DOS compiler is now supported. Thanks to Pieter 
-  Kunst for this port.
-
-- The library now has many functions grouped together to reduce the size 
-  of the library and to improve the speed of compilation.
-
-- The "names" of a couple of the compilers in the makefile has changed; 
-  CSET2 is now ICC and GO32 is now GCC.
-
-EXTRA OPTIONS:
-
- One difference between the behavior of PDCurses and Unix curses is the 
- attributes that are displayed when a character is cleared. Under Unix 
- curses, no attributes are displayed, so the result is always black. 
- Under PDCurses, these functions clear with the current attributes in 
- effect at the time. With the introduction of the bkgd functions, by 
- default, PDCurses clears using the value set by (w)bkgd(). To have 
- PDCurses behave the same way as it did before release 2.2, compile with 
- -DPDCURSES_WCLR
-
-ACKNOWLEDGEMENTS: (for this release)
-
- Pieter Kunst, David Nugent, Warren Tucker, Darin Haugen, Stefan Strack, 
- Wade Schauer and others who either alerted me to bugs or supplied 
- fixes.
-
-------------------------------------------------------------------------
-
-PDCurses 2.1 - 1993/06/20
-=========================
-
-INTRODUCTION:
-
- The current code contains bug fixes for the DOS and OS/2 releases and 
- also includes an alpha release for Unix. The Unix release uses another 
- public domain package (mytinfo) to handle the low-level screen writes. 
- mytinfo was posted to comp.sources.unix (or misc) in December 1992 or 
- January 1993. Unless you are a glutton for punishment I would recommend 
- you avoid the Unix port at this stage.
-
- The other major addition to PDCurses is the support for DJGPP (the DOS 
- port of GNU C++). Thanks to David Nugent <davidn at csource.oz.au>.
-
- Other additions are copywin() function, function debugging support and 
- getting the small and medium memory models to work. The testcurs.c demo 
- program has also been changed significantly and a new demo program, 
- tuidemo, has been added.
-
- Some people have suggested including information on where to get dmake 
- from. oak.oakland.edu in /pub/msdos/c
-
-OTHER NOTES:
-	
- Under DOS, by default, screen writes to a CGA monitor are done via the 
- video BIOS rather than by direct video memory writes. This is due to 
- the CGA "snow" problem. If you have a CGA monitor and do not suffer 
- from snow, you can compile private\_queryad.c with CGA_DIRECT defined. 
- This will then use cause PDCurses to write directly to the CGA video 
- memory.
-
- Function debugging: Firstly to get function debugging, you have to 
- compile the library with OPT=N in the makefile. This also turns on 
- compiler debugging. You can control when you want PDCurses to write to 
- the debug file (called trace in the current directory) by using the 
- functions traceon() and traceoff() in your program.
-
- Microsoft C 6.00 Users note:
- ----------------------------
-
- With the addition of several new functions, using dmake to compile 
- PDCurses now causes the compiler to run "out of heap space in pass 2". 
- Using the 6.00AX version (DOS-Extended) to compile PDCurses fixes this 
- problem; hence the -EM switch.
-
- Functional changes
- ------------------
-
- Added OS/2 DLL support.
-
- A few curses functions have been fixed to exhibit their correct 
- behavior and make them more functionally portable with System V 
- curses. The functions that have changed are overlay(), overwrite() and 
- typeahead.
-
- overlay() and overwrite()
-
- Both of theses functions in PDCurses 2.0 allowed for one window to be 
- effectively placed on top of another, and the characters in the first 
- window were overlaid or overwritten starting at 0,0 in both windows. 
- This behavior of these functions was not correct. These functions only 
- operate on windows that physically overlap with respect to the 
- displayed screen. To achieve the same functionality as before, use the 
- new function copywin(). See the manual page for further details.
-
- typeahead()
-
- This function in PDCurses 2.0 effectively checked to see if there were 
- any characters remaining in the keyboard buffer. This is not the 
- behavior exhibited by System V curses. This function is intended 
- purely to set a flag so that curses can check while updating the 
- physical screen if any keyboard input is pending. To achieve the same 
- effect with typeahead() under PDCurses 2.1 the following code should be 
- used.
-
- In place of...
-
-	while(!typeahead(stdin))
-	 {
-		/* do something until any key is pressed... */
-	 }
-
- use...
-
-	/* getch() to return ERR if no key pending */
-	nodelay(stdscr,TRUE);
-	while(getch() == (ERR))
-	 {
-		/* do something until any key is pressed... */
-	 }
-
-
-ACKNOWLEDGEMENTS: (in no particular order)
-
- Jason Shumate, Pieter Kunst, David Nugent, Andreas Otte, Pasi 
- Hamalainen, James McLennan, Duane Paulson, Ib Hojme
-	
- Apologies to anyone I may have left out.
-
-------------------------------------------------------------------------
-
-PDCurses 2.0 - 1992/11/23
-=========================
-
-INTRODUCTION:
-
- Well, here it finally is; PDCurses v2.0.
-
- PDCurses v2.0 is an almost total rewrite of PCcurses 1.4 done by John 
- 'Frotz' Fa'atuai, the previous maintainer. It adds support for OS/2 as 
- well as DOS.
-
- This version has been tested with Microsoft C v6.0, QuickC v2.0 and 
- Borland C++ 2.0 under DOS and Microsoft C v6.0 and TopSpeed c v3.02 
- under OS/2 2.0. Also the library has been compiled successfully with 
- emx 0.8e, C Set/2 and Watcom 9. Most testing was done with the large 
- memory model, where applicable. The large memory model is probably the 
- best model to use.
-
- The amount of testing has not been as extensive as I would have liked, 
- but demands on releasing a product have outweighed the product's 
- quality. Nothing new with that !! Hopefully with wider circulation, 
- more bugs will be fixed more quickly.
-
- I have included just 1 makefile which is suitable for dmake 3.8 for 
- both DOS and OS/2. The makefile does not rely on customization of the 
- dmake.ini file.
-
- If you discover bugs, and especially if you have fixes, please let me 
- know ASAP.
-
- The source to the library is distributed as a zip file made with zip 
- 1.9. You will need Info-ZIP unzip 5.0 to unzip. Follow the directions 
- below to compile the library.
-
-DIRECTIONS:
-
- 1. Create a new directory in which to unzip pdcurs20.zip. This will 
-    create a curses directory and a number of subdirectories containing 
-    source code for the library and utilities and the documentation.
-
- 2. Make changes to the makefile where necessary:
-    Change the MODEL or model macro to the appropriate value (if it
-    applies to your compiler). Use model for Borland compilers.
-
-    Change any paths in the defined macros to be suitable for your
-    compiler.
-
- 3. Invoke DMAKE [-e environment_options] [target]
-
-    where environment_options are:
-
-	OS (host operating system)
-	COMP (compiler)
-	OPT (optimized version or debug version) - optional. default Y
-	TOS (target operating system) - optional. default OS
-
-    see the makefile for valid combinations
-
-    targets: all, demos, lcursesd.lib, manual...
-	
-    NB. dmake is case sensitive with targets, so those environments that 
-    use an upper case model value (eg MSC) MUST specify the library 
-    target as for eg. Lcursesd.lib
-
-    The makefile is by default set up for Borland C++. The use of -e 
-    environment_options override these defaults. If you prefer, you can 
-    just change the defaults in the makefile and invoke it without the 
-    -e switch.
-
-OTHER NOTES:
-
- The documentation for the library is built into each source file, a 
- couple of specific doc files and the header files. A program is 
- supplied (manext) to build the manual. This program gets compiled when 
- you build the documentation.
-	
- To generate the library response file correctly, I had to write a quick 
- and dirty program (buildlrf) to achieve this. Originally the makefiles 
- just had statements like: "echo -+$(OBJ)\$* & >> $(LRF)" which appended 
- a suitable line to the response file. Unfortunately under some 
- combinations of makefiles and command processors (eg. nmake and 4DOS) 
- the & would get treated as stderr and the echo command would fail.
-	
- The original source for PDCurses that I received from the previous 
- maintainer contained support for the FLEXOS operating system. Not 
- having access to it, I could not test the changes I made so its support 
- has fallen by the wayside. If you really need to have PDCurses running 
- under FLEXOS, contact me and I will see what can be arranged.
-	
- Under DOS, by default, screen writes to a CGA monitor are done via the 
- video BIOS rather than by direct video memory writes. This is due to 
- the CGA "snow" problem. If you have a CGA monitor and do not suffer 
- from snow, you can compile private\_queryad.c with CGA_DIRECT defined. 
- This will then use cause PDCurses to write directly to the CGA video 
- memory.
-
- Added System V color support.
-
-COMPILER-SPECIFIC NOTES:
-
- Microsoft C
- -----------
-
- It is possible with MSC 6.0 to build the OS/2 libraries and demo 
- programs from within DOS. This is the only case where it is possible to 
- specify the value of TOS on the command line to be OS2 and the value of 
- OS be DOS.
-
- C Set/2
- -------
-
- I have only tested the library using the migration libraries. I doubt 
- that the demo programs will work without them.
-
- emx
- ---
-
- Testing has been done with 0.8e of emx together with the 16_to_32 
- libraries. The emx\lib directory should include the vio32.lib and 
- kbd32.lib libraries from the 16_to_32 package.
-
-BUGS and UNFINISHED BUSINESS:
-
-- PDC_set_ctrl_break() function does not work under OS/2.
-
-- win_print() and PDC_print() do not work under OS/2.
-
-- The file todo.man in the doc directory also lists those functions of 
-  System V 3.2 curses not yet implemented. Any volunteers?
-
-ACKNOWLEDGEMENTS:
-
- John 'Frotz' Fa'atuai, the previous maintainer for providing an
- excellent base for further development.
- John Burnell <johnb at kea.am.dsir.govt.nz>, for the OS/2 port.
- John Steele, Jason (finally NOT a John) Shumate....
- for various fixes and suggestions.
- Eberhardt Mattes (author of emx) for allowing code based on his
- C library to be included with PDCurses.
- Several others for their support, moral and actual.
-
--- Mark Hessling
-
-------------------------------------------------------------------------
-
-PDCurses 2.0Beta - 1991/12/21
-=============================
-
-Changed back from short to int. (int is the correct size for the default 
-platform. Short might be too short on some platforms. This is more 
-portable. I, also, made this mistake.)
-
-Many functions are now macros.  If you want the real thing, #undef the 
-macro. (X/Open requirement.)
-
-Merged many sources into current release.
-
-Added many X/Open routines (not quite all yet).
-
-Added internal documentation to all routines.
-
-Added a HISTORY file to the environment.
-
-Added a CONTRIB file to the environment.
-
-------------------------------------------------------------------------
-
-PDCurses 1.5Beta - 1990/07/14
-=============================
-
-Added many levels of compiler support. Added mixed prototypes for all 
-"internal" routines. Removed all assembly language.  Added EGA/VGA 
-support.  Converted all #ifdef to #if in all modules except CURSES.H and 
-CURSPRIV.H. Always include ASSERT.H.  Added support for an external 
-malloc(), calloc() and free(). Added support for FAST_VIDEO 
-(direct-memory writes). Added various memory model support (for 
-FAST_VIDEO). Added much of the December 1988 X/Open Curses 
-specification.
-
--- John 'Frotz' Fa'atuai
-
-------------------------------------------------------------------------
-
-PCcurses 1.4 - 1990/01/14
-=========================
-
-  In PCcurses v.1.4, both portability improvements and bugfixes have 
-been made. The files have been changed to allow lint-free compilation 
-with Microsoft C v.5.1, and with Turbo C v.2.0. The source should still 
-compile without problems on older compilers, although this has not been 
-verified.
-
-  The makefiles have been changed to suit both the public release and 
-the author, who maintains a special kind of libraries for himself. In 
-the case of Microsoft C, changes were done in the makefile to lower the 
-warning level to 2 (was 3). This was to avoid ANSI warnings which are 
-abundant because PCcurses does not attempt to follow strict ANSI C 
-standard.
-
-  BUG FIXES FROM V.1.3 TO V.1.4:
-
-  !!!IMPORTANT CHANGE!!!
-
-  The definitions for OK and ERR in curses.h were exchanged. This was 
-done to be more consistent with UNIX versions. Also, it permits 
-functions like newwin() and subwin() to return 0 (=NULL) when they fail 
-due to memory shortage. This incompatibility with UNIX curses was 
-pointed out by Fred C. Smith. If you have tested success/failure by 
-comparisons to anything other than ERR and OK, your applications will 
-need to be be changed on that point. Sorry... but presumably most of you 
-used the symbolic constants?
-
-  (END OF IMPORTANT CHANGE)
-
-  Fred also pointed out a bug in the file update.c. The bug caused the 
-first character printed after 'unauthorized' screen changes (like during 
-a shell escape, for example) to be placed at the wrong screen position. 
-This happened even if the normal precautions (clear / touch / refresh) 
-were taken. The problem has now been fixed.
-
-  PCcurses is currently also being used on a 68000 system with 
-hard-coded ESCape sequences for ANSI terminals. However, ints used by 
-the 68000 C compiler are 32 bits. Therefore ints have been turned into 
-shorts wherever possible in the code (otherwise all window structures 
-occupy twice as much space as required on the 68000). This does not 
-affect PC versions since normally both ints and shorts are 16 bits for 
-PC C compilers.
-
-  At some places in the source code there are references made to the 
-68000 version. There are also a makefile, a curses68.c file, and a 
-curses68.cmd file. These are for making, low-level I/O, and linking 
-commands when building the 68000 version. These files are probably 
-useful to no-one but the author, since it is very specific for its 
-special hardware environment. Still in an effort to keep all 
-curses-related sources in one place they are included. Note however that 
-PCcurses will not officially support a non-PC environment.
-
-  The file cursesio.c, which was included in the package at revision 
-level 1.2, and which was to be an alternative to the cursesio.asm file, 
-has been verified to behave incorrectly in the function _curseskeytst(). 
-The problem was that the value of 'cflag' does not contain the proper 
-data for the test that is attempted. Furthermore, neither Turbo C or 
-Microsoft C allows any way to return the data that is needed, and 
-consequently you should not use cursesio.c. The best solution is to 
-simply use the ASM version. In v.1.2 and v.1.3, the user could edit the 
-makefile to select which version he wanted to use. The makefiles in 
-v.1.4 have removed this possibility forcing the use of the ASM file, and 
-cursesio.c has been dropped from the distribution.
-
-  A bug in the wgetstr() function caused PCcurses to echo characters 
-when reading a keyboard string, even if the echo had been turned off. 
-Thanks to Per Foreby at Lund University, Sweden, for this. Per also 
-reported bugs concerning the handling of characters with bit 8 set. 
-Their ASCII code were considered as lower than 32, so they were erased 
-etc. like control characters, i.e. erasing two character positions. The 
-control character test was changed to cope with this.
-
-  The overlay() and overwrite() functions were changed so that the 
-overlaying window is positioned at its 'own' coordinates inside the 
-underlying window (it used to be at the underlying window's [0,0] 
-position). There is some controversy about this - the documentation for 
-different curses versions say different things. I think the choice made 
-is the most reasonable.
-
-  The border() and wborder() functions were changed to actually draw a 
-border, since this seems to be the correct behavior of these functions. 
-They used to just set the border characters to be used by box(). These 
-functions are not present in standard BSD UNIX curses.
-
-  The subwin() function previously did not allow the subwindow to be as 
-big as the original window in which it was created. This has now been 
-fixed. There was also the problem that the default size (set by 
-specifying numlines or numcols (or both) as 0 made the resulting actual 
-size 1 line/column too small.
-
-  There were a few spelling errors in function names, both in the 
-function declarations and in curses.h. This was reported by Carlos 
-Amaral at INESC in Portugal. Thanks! There was also an unnecessary (but 
-harmless) parameter in a function call at one place.
-
-------------------------------------------------------------------------
-
-PCcurses 1.3 - 1988/10/05
-=========================
-
-  The file 'border.c' is now included. It allows you to explicitly 
-specify what characters should be used as box borders when the box() 
-functions are called. If the new border characters are non-0, they 
-override the border characters specified in the box() call. In my 
-understanding, this functionality is required for AT&T UNIX sV.3 
-compatibility. Thanks for this goes to Tony L. Hansen
-(hansen at pegasus.UUCP) for posting an article about it on Usenet 
-(newsgroup comp.unix.questions; his posting was not related at all to 
-PCcurses).
-
-  The only other difference between v.1.2 and v.1.3 is that the latter 
-has been changed to avoid warning diagnostics if the source files are 
-compiled with warning switches on (for Microsoft this means '-W3', for 
-Turbo C it means '-w -w-pro'). Of these, the Turbo C warning check is 
-clearly to be used rather than Microsoft, even if neither of them comes 
-even close to a real UNIX 'lint'. Some of the warnings in fact indicated 
-real bugs, mostly functions that did not return correct return values or 
-types.
-
-  The makefiles for both MSC and TRC have been modified to produce 
-warning messages as part of normal compilation.
-
-------------------------------------------------------------------------
-
-PCcurses 1.2 - 1988/10/02
-=========================
-
-  The changes from v.1.1 to v.1.2 are minor. The biggest change is that 
-there was a bug related to limiting the cursor movement if the 
-application tried to move it outside the screen (something that should 
-not be done anyway). Such erroneous application behavior is now handled 
-appropriately.
-
-  All modules have been changed to have a revision string in them, which 
-makes it easier to determine what version is linked into a program (or 
-what library version you have).
-
-  There is now a 'cursesio.c' file. That file does the same as 
-'cursesio.asm' (i.e. it provides the interface to the lower-level system 
-I/O routines). It is written in C and thus it is (possibly) more 
-portable than the assembler version (but still not so portable since it 
-uses 8086 INT XX calls directly). When one creates new curses libraries, 
-one chooses whether to use the assembler or the C version of cursesio. 
-The choice is made by commenting out the appropriate dependencies for 
-cursesio.obj, near the end of the makefiles.
-
-  There is now a 'setmode.c' file. That file contains functions that 
-save and restore terminal modes. They do it into other variables than do 
-savetty() and resetty(), so one should probably use either 
-savetty()/resetty() or the new functions only - and not mix the both 
-ways unless one really knows what one does.
-
-  Diff lists vs v.1.0 are no longer included in the distribution. The 
-make utility still is. PCcurses v.1.2 still compiles with Microsoft C 
-v.4.0, and with Borland Turbo C v.1.0. There is as far as I know no 
-reason to believe that it does not compile under Microsoft C v.3.0 and 
-5.x, or Turbo C v.1.5, but this has not been tested.
-
-  There are two makefiles included, one for Microsoft C, one for Turbo 
-C. They are both copies of my personal makefiles, and as such they 
-reflect the directory structure on my own computer. This will have to be 
-changed before you run make. Check $(INCDIR) and $(LIBDIR) in 
-particular, and make the choice of ASM or C cursesio version as 
-mentioned above (the distribution version uses the C version of 
-cursesio).
-
-  The manual file (curses.man) has been changed at appropriate places.
-
-  I would like to thank the following persons for their help:
-
-  	Brandon S. Allbery (alberry at ncoast.UUCP)
-		for running comp.binaries.ibm.pc (at that time)
-		and comp.source.misc.
-
-	Steve Balogh (Steve at cit5.cit.oz.AU)
-  		for writing a set of manual pages and posting
-		them to the net.
-
-	Torbjorn Lindh
-		for finding bugs and suggesting raw
-		character output routines.
-
-	Nathan Glasser (nathan at eddie.mit.edu)
-  		for finding and reporting bugs.
-
-	Ingvar Olafsson (...enea!hafro!ingvar)
-  		for finding and reporting bugs.
-
-	Eric Rosco (...enea!ipmoea!ericr)
-  		for finding and reporting bugs.
-
-	Steve Creps (creps at silver.bacs.indiana.edu)
-  		for doing a lot of work - among others
-		posting bug fixes to the net, and writing
-		the new cursesio.c module.
-
-	N. Dean Pentcheff (dean at violet.berkeley.edu)
-  		for finding bugs and rewriting cursesio.asm
-		for Turbo 'C' 1.5.
-
-  Finally, Jeff Dean (parcvax,hplabs}!cdp!jeff)
-  		     (jeff at ads.arpa)
-	has had a shareware version of curses deliverable since
-	about half a year before I released PCcurses 1.0 on Use-
-	Net. He is very concerned about confusion between the two
-	packages, and therefore any references on the network
-	should make clear whether they reference Dean's PCcurses
-	or Larsson's PCcurses.
-
-------------------------------------------------------------------------
-
-PCcurses 1.1 - 1988/03/06
-=========================
-
-  The changes from v.1.0 to v.1.1 are minor. There are a few bug fixes, 
-and new (non-portable) functions for verbatim IBM character font display 
-have been added (in charadd.c and charins.c). The manual file 
-(curses.man) has been changed at appropriate places.
-
-  In the file v10tov11.dif there are listings of the differences between
-version 1.0 and 1.1. The diff listings are in UNIX diff(1) format.
-
-  Version 1.1 compiles with Turbo C v.1.0, as well as Microsoft C v.3.0 
-and v.4.0. On the release disk there is a make.exe utility which is very 
-similar to UNIX make (If the package was mailed to you, the make utility 
-will be in uuencoded format - in make.uu - and must be uudecoded first). 
-It is much more powerful than Microsoft's different MAKEs; the latter 
-ones will NOT generate libraries properly if used with the PCcurses 
-makefiles.
-
-  There are three makefiles:
-
-	makefile		generic MSC 3.0 makefile
-	makefile.ms		MSC 4.0 makefile
-	makefile.tc		Turbo C 1.0 makefile
-
-  To make a library with for example Turbo C, make directories to hold 
-.H and .LIB files (these directories are the 'standard places'), edit 
-makefile.tc for this, and type
-
-	make -f makefile.tc all
-
-and libraries for all memory models will be created in the .LIB 
-directory, while the include files will end up in the .H directory. Also 
-read what is said about installation below!
-
-------------------------------------------------------------------------
-
-PCcurses 1.0 - 1987/08/24
-=========================
-
-  This is the release notes for the PCcurses v.1.0 cursor/window control 
-package. PCcurses offers the functionality of UNIX curses, plus some 
-extras. Normally it should be possible to port curses-based programs 
-from UNIX curses to PCcurses on the IBM PC without changes. PCcurses is 
-a port/ rewrite of Pavel Curtis' public domain 'ncurses' package. All 
-the code has been re-written - it is not just an edit of ncurses (or 
-UNIX curses). I mention this to clarify any copyright violation claims. 
-The data structures and ideas are very similar to ncurses. As for UNIX 
-curses, I have not even seen any sources for it.
-
-  For an introduction to the use of 'curses' and its derivatives, you 
-should read 'Screen Updating and Cursor Movement Optimization: A Library 
-Package' by Kenneth C. R. C. Arnold, which describes the original 
-Berkeley UNIX version of curses. It is available as part of the UNIX 
-manuals. The other source of information is 'The Ncurses Reference 
-Manual' by Pavel Curtis. The latter is part of Curtis' ncurses package.
-
-  The only other documentation provided is a 'man' page which describes 
-all the included functions in a very terse way. In the sources, each 
-function is preceded by a rather thorough description of what the 
-function does. I didn't have time to write a nice manual/tutorial - 
-sorry.
-
-  PCcurses is released as a number of source files, a man page, and a 
-make file. A uuencoded copy of a 'make' utility, and a manpage for the 
-'make' is also provided to make it easier to put together PCcurses 
-libraries. Even if you are not interested in PCcurses, it may be 
-worthwhile to grab the make.
-
-  The makefile assumes the presence of the Microsoft C compiler (3.0 or 
-4.0), Microsoft MASM and LIB, plus some MS-DOS utilities. The reason for 
-supplying MAKE.EXE is that the Microsoft 'MAKE:s' are much inferior to a 
-real UNIX make. The supplied make is a port of a public domain make, 
-published on Usenet. It is almost completely compatible with UNIX make. 
-When generating the curses libraries, the makefile will direct make to 
-do some directory creating and file copying, and then re-invoke itself 
-with new targets. The workings of the makefile are not absolutely 
-crystal clear at first sight... just start it and see what it does.
-
-  For portability, the curses libraries depend on one assembler file for 
-access to the BIOS routines. There is no support for the EGA, but both 
-CGA, MGA, and the HGA can be used. The libraries are originally for 
-Microsoft C, but all C modules should be portable right away. In the 
-assembler file, segment names probably need to be changed, and possibly 
-the parameter passing scheme. I think Turbo C will work right away - as 
-far as I understand, all its conventions are compatible with Microsoft 
-C.
-
-  There are some parts left out between ncurses and PCcurses. One is the 
-support for multiple terminals - not very interesting on a PC anyway. 
-Because we KNOW what terminal we have, there is no need for a termcap or 
-terminfo library. PCcurses also has some things that neither curses nor 
-ncurses have. Compared to the original UNIX curses, PCcurses has lots of 
-extras.
-
-  The BIOS routines are used directly, which gives fast screen updates.
-PCcurses does not do direct writes to screen RAM - in my opinion it is
-a bit ugly to rely that much on hardware compatibility. Anyone could fix
-that, of course...
-
-  One of the more serious problems with PCcurses is the way in which 
-normal, cbreak, and raw input modes are done. All those details are in 
-the 'charget' module - I do raw I/O via the BIOS, and perform any 
-buffering myself. If an application program uses PCcurses, it should do 
-ALL its I/O via PCcurses calls, otherwise the mix of normal and 
-PCcurses I/O may mess up the display. I think my code is reasonable... 
-comments are welcome, provided you express them nicely...
-
-  To install, copy all files to a work directory, edit 'makefile' to 
-define the standard include and library file directory names of your 
-choice (these directories must exist already, and their path names must 
-be relative to the root directory, not to the current one). You must 
-also run uudecode on make.uu, to generate MAKE.EXE. You can do that on 
-your PC, if you have uudecode there, otherwise you can do it under UNIX 
-and do a binary transfer to the PC. When you have MAKE.EXE in your work 
-directory (or in your /bin directory), type make.
-
-  Make will now create 4 sub-directories (one for each memory model), 
-copy some assembler include files into them, copy two include files to 
-your include directory, CHDIR to each sub-directory and re-invoke itself 
-with other make targets to compile and assemble all the source files 
-into the appropriate directories. Then the library manager is run to 
-create the library files in your desired library directory. Presto!
-
-  If you only want to generate a library for one memory model, type 
-'make small', 'make large', etc. The name of the memory model must be in 
-lower case, like in the makefile.
-
-  I think the package is fairly well debugged - but then again, that's 
-what I always think. It was completed in May-87, and no problems found 
-yet. Now it's your turn... Comments, suggestions and bug reports and 
-fixes (no flames please) to
-
--- Bjorn Larsson
diff --git a/src/other/PDCurses/IMPLEMNT b/src/other/PDCurses/IMPLEMNT
deleted file mode 100644
index a83f026..0000000
--- a/src/other/PDCurses/IMPLEMNT
+++ /dev/null
@@ -1,325 +0,0 @@
-PDCurses Implementor's Guide
-============================
-
-Version 1.3 - 20??/??/?? - notes about official ports, new indentation
-                           style
-Version 1.2 - 2007/07/11 - added PDC_init_pair(), PDC_pair_content(),
-			   version history; removed pdc_atrtab
-Version 1.1 - 2007/06/06 - minor cosmetic change
-Version 1.0 - 2007/04/01 - initial revision
-
-This document is for those wishing to port PDCurses to a new platform, 
-or just wanting to better understand how it works. Nothing here should 
-be needed for application programming; for that, refer to PDCurses.txt, 
-as built in doc/, or distributed as a file separate from this source 
-package. This document assumes that you've read the user-level 
-documentation and are very familiar with application-level curses 
-programming.
-
-If you want to submit your port for possible inclusion into the main 
-PDCurses distribution, please follow these guidelines:
-
- - Don't modify anything in the pdcurses directory or in other port 
-   directories. Don't modify curses.h or curspriv.h unless absolutely 
-   necessary. (And prefer modifying curspriv.h over curses.h.)
-
- - Use the same indentation style, naming and scope conventions as the 
-   existing code.
-
- - Release all your code to the public domain -- no copyright. Code 
-   under GPL, BSD, etc. will not be accepted.
-
-
-DATA STRUCTURES
----------------
-
-A port of PDCurses must provide acs_map[], a 128-element array of 
-chtypes, with values laid out based on the Alternate Character Set of 
-the VT100 (see curses.h). PDC_transform_line() must use this table; when 
-it encounters a chtype with the A_ALTCHARSET flag set, and an A_CHARTEXT 
-value in the range 0-127, it must render it using the A_CHARTEXT portion 
-of the corresponding value from this table, instead of the original 
-value. Also, values may be read from this table by apps, and passed 
-through functions such as waddch(), which does no special processing on 
-control characters (0-31 and 127) when the A_ALTCHARSET flag is set. 
-Thus, any control characters used in acs_map[] should also have the 
-A_ALTCHARSET flag set. Implementations should provide suitable values 
-for all the ACS_ macros defined in curses.h; other values in the table 
-should be filled with their own indices (e.g., acs_map['E'] == 'E'). The 
-table can be either hardwired, or filled by PDC_scr_open(). Existing 
-ports define it in pdcdisp.c, but this is not required.
-
-
-FUNCTIONS
----------
-
-A port of PDCurses must implement the following functions, with extern 
-scope. These functions are traditionally divided into several modules, 
-as indicated below; this division is not required (only the functions 
-are), but may make it easier to follow for someone familiar with the 
-existing ports.
-
-Any other functions you create as part of your implementation should 
-have static scope, if possible. If they can't be static, they should be 
-named with the "PDC_" prefix. This minimizes the risk of collision with 
-an application's choices.
-
-Current PDCurses style also uses a single leading underscore with the 
-name of any static function; and modified BSD/Allman-style indentation, 
-approximately equivalent to "indent -kr -nut -bl -bli0", with 
-adjustments to keep every line under 80 columns.
-
-
-pdcdisp.c:
-----------
-
-void	PDC_gotoyx(int y, int x);
-
-Move the physical cursor (as opposed to the logical cursor affected by 
-wmove()) to the given location. This is called mainly from doupdate(). 
-In general, this function need not compare the old location with the new 
-one, and should just move the cursor unconditionally.
-
-void	PDC_transform_line(int lineno, int x, int len, const chtype *srcp);
-
-The core output routine. It takes len chtype entities from srcp (a 
-pointer into curscr) and renders them to the physical screen at line 
-lineno, column x. It must also translate characters 0-127 via acs_map[], 
-if they're flagged with A_ALTCHARSET in the attribute portion of the 
-chtype.
-
-
-pdcgetsc.c:
------------
-
-int	PDC_get_columns(void);
-
-Returns the size of the screen in columns. It's used in resize_term() to 
-set the new value of COLS. (Some existing implementations also call it 
-internally from PDC_scr_open(), but this is not required.)
-
-int	PDC_get_cursor_mode(void);
-
-Returns the size/shape of the cursor. The format of the result is 
-unspecified, except that it must be returned as an int. This function is 
-called from initscr(), and the result is stored in SP->orig_cursor, 
-which is used by PDC_curs_set() to determine the size/shape of the 
-cursor in normal visibility mode (curs_set(1)).
-
-int	PDC_get_rows(void);
-
-Returns the size of the screen in rows. It's used in resize_term() to 
-set the new value of LINES. (Some existing implementations also call it 
-internally from PDC_scr_open(), but this is not required.)
-
-
-pdckbd.c:
----------
-
-bool	PDC_check_key(void);
-
-Keyboard/mouse event check, called from wgetch(). Returns TRUE if
-there's an event ready to process. This function must be non-blocking.
-
-void	PDC_flushinp(void);
-
-This is the core of flushinp(). It discards any pending key or mouse
-events, removing them from any internal queue and from the OS queue, if
-applicable.
-
-int	PDC_get_key(void);
-
-Get the next available key, or mouse event (indicated by a return of
-KEY_MOUSE), and remove it from the OS' input queue, if applicable. This
-function is called from wgetch(). This function may be blocking, and
-traditionally is; but it need not be. If a valid key or mouse event
-cannot be returned, for any reason, this function returns -1. Valid keys
-are those that fall within the appropriate character set, or are in the
-list of special keys found in curses.h (KEY_MIN through KEY_MAX). When
-returning a special key code, this routine must also set SP->key_code to
-TRUE; otherwise it must set it to FALSE. If SP->return_key_modifiers is
-TRUE, this function may return modifier keys (shift, control, alt),
-pressed alone, as special key codes; if SP->return_key_modifiers is
-FALSE, it must not. If modifier keys are returned, it should only happen
-if no other keys were pressed in the meantime; i.e., the return should
-happen on key up. But if this is not possible, it may return the
-modifier keys on key down (if and only if SP->return_key_modifiers is
-TRUE).
-
-int	PDC_modifiers_set(void);
-
-Called from PDC_return_key_modifiers(). If your platform needs to do 
-anything in response to a change in SP->return_key_modifiers, do it 
-here. Returns OK or ERR, which is passed on by the caller.
-
-int	PDC_mouse_set(void);
-
-Called by mouse_set(), mouse_on(), and mouse_off() -- all the functions 
-that modify SP->_trap_mbe. If your platform needs to do anything in 
-response to a change in SP->_trap_mbe (for example, turning the mouse 
-cursor on or off), do it here. Returns OK or ERR, which is passed on by 
-the caller.
-
-void	PDC_set_keyboard_binary(bool on);
-
-Set keyboard input to "binary" mode. If you need to do something to keep 
-the OS from processing ^C, etc. on your platform, do it here. TRUE turns 
-the mode on; FALSE reverts it. This function is called from raw() and 
-noraw().
-
-
-pdcscrn.c:
-----------
-
-bool	PDC_can_change_color(void);
-
-Returns TRUE if init_color() and color_content() give meaningful 
-results, FALSE otherwise. Called from can_change_color().
-
-int	PDC_color_content(short color, short *red, short *green, short *blue);
-
-The core of color_content(). This does all the work of that function, 
-except checking for values out of range and null pointers.
-
-int	PDC_init_color(short color, short red, short green, short blue);
-
-The core of init_color(). This does all the work of that function, 
-except checking for values out of range.
-
-void	PDC_init_pair(short pair, short fg, short bg);
-
-The core of init_pair(). This does all the work of that function, except 
-checking for values out of range. The values passed to this function 
-should be returned by a call to PDC_pair_content() with the same pair 
-number. PDC_transform_line() should use the specified colors when 
-rendering a chtype with the given pair number.
-
-int	PDC_pair_content(short pair, short *fg, short *bg);
-
-The core of pair_content(). This does all the work of that function, 
-except checking for values out of range and null pointers.
-
-void	PDC_reset_prog_mode(void);
-
-The non-portable functionality of reset_prog_mode() is handled here -- 
-whatever's not done in _restore_mode(). In current ports: In OS/2, this 
-sets the keyboard to binary mode; in Win32, it enables or disables the 
-mouse pointer to match the saved mode; in others it does nothing.
-
-void	PDC_reset_shell_mode(void);
-
-The same thing, for reset_shell_mode(). In OS/2 and Win32, it restores 
-the default console mode; in others it does nothing.
-
-int	PDC_resize_screen(int nlines, int ncols);
-
-This does the main work of resize_term(). It may respond to non-zero 
-parameters, by setting the screen to the specified size; to zero 
-parameters, by setting the screen to a size chosen by the user at 
-runtime, in an unspecified way (e.g., by dragging the edges of the 
-window); or both. It may also do nothing, if there's no appropriate 
-action for the platform.
-
-void	PDC_restore_screen_mode(int i);
-
-Called from _restore_mode() in kernel.c, this function does the actual 
-mode changing, if applicable. Currently used only in DOS and OS/2.
-
-void	PDC_save_screen_mode(int i);
-
-Called from _save_mode() in kernel.c, this function saves the actual 
-screen mode, if applicable. Currently used only in DOS and OS/2.
-
-void	PDC_scr_close(void);
-
-The platform-specific part of endwin(). It may restore the image of the 
-original screen saved by PDC_scr_open(), if the PDC_RESTORE_SCREEN 
-environment variable is set; either way, if using an existing terminal, 
-this function should restore it to the mode it had at startup, and move 
-the cursor to the lower left corner. (The X11 port does nothing.)
-
-void	PDC_scr_free(void);
-
-Frees the memory for SP allocated by PDC_scr_open(). Called by 
-delscreen().
-
-int	PDC_scr_open(int argc, char **argv);
-
-The platform-specific part of initscr(). It's actually called from 
-Xinitscr(); the arguments, if present, correspond to those used with 
-main(), and may be used to set the title of the terminal window, or for 
-other, platform-specific purposes. (The arguments are currently used 
-only in X11.) PDC_scr_open() must allocate memory for SP, and must 
-initialize acs_map[] (unless it's preset) and several members of SP, 
-including lines, cols, mouse_wait, orig_attr (and if orig_attr is TRUE, 
-orig_fore and orig_back), mono, _restore and _preserve. (Although SP is 
-used the same way in all ports, it's allocated here in order to allow 
-the X11 port to map it to a block of shared memory.) If using an 
-existing terminal, and the environment variable PDC_RESTORE_SCREEN is 
-set, this function may also store the existing screen image for later 
-restoration by PDC_scr_close().
-
-
-pdcsetsc.c:
------------
-
-int	PDC_curs_set(int visibility);
-
-Called from curs_set(). Changes the appearance of the cursor -- 0 turns 
-it off, 1 is normal (the terminal's default, if applicable, as 
-determined by SP->orig_cursor), and 2 is high visibility. The exact 
-appearance of these modes is not specified.
-
-
-pdcutil.c:
-----------
-
-void	PDC_beep(void);
-
-Emits a short audible beep. If this is not possible on your platform, 
-you must set SP->audible to FALSE during initialization (i.e., from 
-PDC_scr_open() -- not here); otherwise, set it to TRUE. This function is 
-called from beep().
-
-void	PDC_napms(int ms);
-
-This is the core delay routine, called by napms(). It pauses for about 
-(the X/Open spec says "at least") ms milliseconds, then returns. High 
-degrees of accuracy and precision are not expected (though desirable, if 
-you can achieve them). More important is that this function gives back 
-the process' time slice to the OS, so that PDCurses idles at low CPU 
-usage.
-
-const char *PDC_sysname(void);
-
-Returns a short string describing the platform, such as "DOS" or "X11". 
-This is used by longname(). It must be no more than 100 characters; it 
-should be much, much shorter (existing platforms use no more than 5).
-
---------------------------------------------------------------------------
-
-The following functions are implemented in the platform directories, but 
-are accessed directly by apps. Refer to the user documentation for their 
-descriptions:
-
-
-pdcclip.c:
-----------
-
-int     PDC_clearclipboard(void);
-int     PDC_freeclipboard(char *contents);
-int     PDC_getclipboard(char **contents, long *length);
-int     PDC_setclipboard(const char *contents, long length);
-
-
-pdckbd.c:
----------
-
-unsigned long PDC_get_input_fd(void);
-
-
-pdcsetsc.c:
------------
-
-int     PDC_set_blink(bool blinkon);
-void    PDC_set_title(const char *title);
diff --git a/src/other/PDCurses/Makefile.in b/src/other/PDCurses/Makefile.in
deleted file mode 100644
index dc40abf..0000000
--- a/src/other/PDCurses/Makefile.in
+++ /dev/null
@@ -1,108 +0,0 @@
-# Makefile for PDCurses library for X11
-
-SHELL = @SHELL@
-
- at SET_MAKE@
-
-srcdir		=@srcdir@
-prefix		=@prefix@
-exec_prefix	=$(DESTDIR)@exec_prefix@
-libdir		=$(exec_prefix)/lib
-bindir		=$(exec_prefix)/bin
-includedir	=$(exec_prefix)/include
-pdcursesdir	=./x11
-
-INSTALL		=$(srcdir)/install-sh
-RANLIB		=@RANLIB@
-SHLPRE = @SHLPRE@
-SHLPST = @SHLPST@
-SHLFILE = XCurses
-
-include $(srcdir)/version.mif
-
-PDC_DIR=PDCurses-$(VERDOT)
-
-ZIPFILE = pdcurs$(VER).zip
-TARBALL = $(PDC_DIR).tar.gz
-
-all \
-clean \
-distclean \
-mostlyclean \
-realclean ::
-	cd x11; $(MAKE) $(MFLAGS) $@
-	cd doc; $(MAKE) $(MFLAGS) $@
-
-install ::
-	$(INSTALL) -d -m 755 $(libdir)
-	$(INSTALL) -d -m 755 $(bindir)
-	$(INSTALL) -d -m 755 $(includedir)
-	$(INSTALL) -d -m 755 $(includedir)/xcurses
-	$(INSTALL) -c -m 644 $(srcdir)/curses.h $(includedir)/xcurses.h
-	$(INSTALL) -c -m 644 $(srcdir)/curses.h $(includedir)/xcurses/curses.h
-	sed -e 's/#include <curses.h>/#include <xcurses.h>/' \
-		< $(srcdir)/panel.h > ./xpanel.h
-	$(INSTALL) -m 644 ./xpanel.h $(includedir)/xpanel.h
-	$(INSTALL) -c -m 644 $(srcdir)/panel.h $(includedir)/xcurses/panel.h
-	$(INSTALL) -c -m 644 $(srcdir)/term.h $(includedir)/xcurses/term.h
-	$(INSTALL) -c -m 644 $(pdcursesdir)/libXCurses.a $(libdir)/libXCurses.a
-	-$(RANLIB) $(libdir)/libXCurses.a
-	-$(INSTALL) -c -m 755 $(pdcursesdir)/$(SHLPRE)$(SHLFILE)$(SHLPST) \
-		$(libdir)/$(SHLPRE)$(SHLFILE)$(SHLPST)
-	ln -f -s $(libdir)/$(SHLPRE)$(SHLFILE)$(SHLPST) \
-		$(libdir)/$(SHLPRE)Xpanel$(SHLPST)
-	ln -f -s $(libdir)/libXCurses.a $(libdir)/libXpanel.a
-	-$(RANLIB) $(libdir)/libXpanel.a
-	$(INSTALL) -c -m 755 x11/xcurses-config $(bindir)/xcurses-config
-
-clean ::
-	rm -f config.log config.cache config.status
-
-distclean ::
-	rm -f config.log config.cache config.status
-	rm -f config.h Makefile x11/xcurses-config
-
-manual:
-	cd doc; $(MAKE) $(MFLAGS) $@
-
-$(ZIPFILE):
-	zip -9y $(ZIPFILE) README HISTORY IMPLEMNT *.spec *.mif *.def \
-	Makefile.in config.h.in configure configure.ac config.guess \
-	config.sub x11/xcurses-config.in install-sh aclocal.m4 curses.h \
-	curspriv.h panel.h term.h pdcurses/README \
-	pdcurses/*.c demos/README demos/*.c demos/*.h dos/README dos/*.c \
-	dos/*.h dos/*.mak dos/*.lrf os2/README os2/*.c os2/*.h os2/*.mak \
-	os2/*.lrf sdl1/README sdl1/*.c sdl1/*.h sdl1/Make* \
-	win32/README win32/*.c win32/*.h win32/*.mak \
-	win32/*.ico win32/*.rc x11/README x11/*.c x11/*.h x11/Makefile.* \
-	x11/*.xbm doc/*.txt doc/manext.c doc/Makefile
-
-zip: $(ZIPFILE)
-
-../$(TARBALL):
-	(cd ..; tar cvf - $(PDC_DIR)/README $(PDC_DIR)/HISTORY \
-	$(PDC_DIR)/IMPLEMNT $(PDC_DIR)/*.spec $(PDC_DIR)/*.mif \
-	$(PDC_DIR)/*.def $(PDC_DIR)/Makefile.in $(PDC_DIR)/aclocal.m4 \
-	$(PDC_DIR)/config.h.in $(PDC_DIR)/configure \
-	$(PDC_DIR)/config.guess $(PDC_DIR)/x11/xcurses-config.in \
-	$(PDC_DIR)/config.sub $(PDC_DIR)/configure.ac \
-	$(PDC_DIR)/install-sh $(PDC_DIR)/curses.h $(PDC_DIR)/curspriv.h \
-	$(PDC_DIR)/panel.h $(PDC_DIR)/term.h \
-	$(PDC_DIR)/pdcurses/README $(PDC_DIR)/pdcurses/*.c \
-	$(PDC_DIR)/demos/README $(PDC_DIR)/demos/*.c $(PDC_DIR)/demos/*.h \
-	$(PDC_DIR)/doc/*.txt $(PDC_DIR)/dos/README $(PDC_DIR)/dos/*.c \
-	$(PDC_DIR)/dos/*.h $(PDC_DIR)/dos/*.mak $(PDC_DIR)/dos/*.lrf \
-	$(PDC_DIR)/os2/README $(PDC_DIR)/os2/*.c $(PDC_DIR)/os2/*.h \
-	$(PDC_DIR)/os2/*.mak $(PDC_DIR)/os2/*.lrf \
-	$(PDC_DIR)/sdl1/README $(PDC_DIR)/sdl1/*.c $(PDC_DIR)/sdl1/*.h \
-	$(PDC_DIR)/sdl1/Make* $(PDC_DIR)/win32/README $(PDC_DIR)/win32/*.c \
-	$(PDC_DIR)/win32/*.h $(PDC_DIR)/win32/*.mak \
-	$(PDC_DIR)/win32/*.ico $(PDC_DIR)/win32/*.rc $(PDC_DIR)/x11/README \
-	$(PDC_DIR)/x11/*.c $(PDC_DIR)/x11/*.xbm $(PDC_DIR)/x11/*.h \
-	$(PDC_DIR)/x11/Makefile.* $(PDC_DIR)/doc/manext.c \
-	$(PDC_DIR)/doc/Makefile | gzip -9 > $(TARBALL))
-
-dist: ../$(TARBALL)
-
-rpm: ../$(TARBALL)
-	rpmbuild -ba $(srcdir)/PDCurses.spec
diff --git a/src/other/PDCurses/PDCurses.spec b/src/other/PDCurses/PDCurses.spec
deleted file mode 100644
index 814e313..0000000
--- a/src/other/PDCurses/PDCurses.spec
+++ /dev/null
@@ -1,52 +0,0 @@
-# $Id: PDCurses.spec,v 1.18 2008/07/21 12:25:20 wmcbrine Exp $
-
-%define ver 34
-%define verdot 3.4
-%define base /usr
-
-Summary: Public Domain Curses for X11
-Name: PDCurses
-Version: %verdot
-Release: 1
-Copyright: Public Domain
-Group: Development/Libraries
-Source: %{name}-%{version}.tar.gz
-URL: http://pdcurses.sourceforge.net
-BuildRoot: %{_tmppath}/%{name}-%{version}-root
-Prefix: %base
-
-%description
-PDCurses for X11 is an implementation of the curses library that lets 
-you build text-mode curses programs as native X11 applications. For more 
-information, visit http://pdcurses.sourceforge.net/
-
-%prep
-%setup -q
-
-%build
-./configure --prefix=%{base}
-make 
-
-%install
-make DESTDIR=$RPM_BUILD_ROOT install
-
-%clean
-rm -rf $RPM_BUILD_ROOT
-rm -rf $RPM_BUILD_DIR/%{name}-%{version}
-
-%post -p /sbin/ldconfig
-
-%postun -p /sbin/ldconfig
-
-%files
-%defattr(-,root,root)
-%doc README HISTORY
-%{base}/bin/xcurses-config
-%{base}/lib/libXCurses.a
-%{base}/lib/libXpanel.a
-%{base}/lib/libXCurses.so
-%{base}/include/xcurses.h
-%{base}/include/xpanel.h
-%{base}/include/xcurses/curses.h
-%{base}/include/xcurses/panel.h
-%{base}/include/xcurses/term.h
diff --git a/src/other/PDCurses/README b/src/other/PDCurses/README
deleted file mode 100644
index dc476a9..0000000
--- a/src/other/PDCurses/README
+++ /dev/null
@@ -1,48 +0,0 @@
-Welcome to PDCurses!
-====================
-
-Public Domain Curses, aka PDCurses, is an implementation of X/Open 
-curses for multiple platforms. The latest version can be found at:
-
-   http://pdcurses.sourceforge.net/
-
-For changes, see the HISTORY file.
-
-
-Legal Stuff
------------
-
-The core package is in the public domain, but small portions of PDCurses 
-are subject to copyright under various licenses.  Each directory 
-contains a README file, with a section titled "Distribution Status" 
-which describes the status of the files in that directory.
-
-If you use PDCurses in an application, an acknowledgement would be 
-appreciated, but is not mandatory. If you make corrections or 
-enhancements to PDCurses, please forward them to the current maintainer 
-for the benefit of other users.
-
-This software is provided AS IS with NO WARRANTY whatsoever.
-
-
-Ports
------
-
-PDCurses has been ported to DOS, OS/2, Win32, X11 and SDL. A directory 
-containing the port-specific source files exists for each of these 
-platforms. Build instructions are in the README file for each platform.
-
-
-Distribution Status
--------------------
-
-All files in this directory except configure, config.guess and 
-config.sub are released to the Public Domain. config.guess and 
-config.sub are under the GPL; configure is under a free license 
-described within it.
-
-
-Maintainer
-----------
-
-William McBrine <wmcbrine at users.sf.net>
diff --git a/src/other/PDCurses/aclocal.m4 b/src/other/PDCurses/aclocal.m4
deleted file mode 100644
index ad7c3f3..0000000
--- a/src/other/PDCurses/aclocal.m4
+++ /dev/null
@@ -1,613 +0,0 @@
-dnl ---------------------------------------------------------------------------
-dnl This file offers the following macros...
-dnl ---------------------------------------------------------------------------
-dnl MH_IPC
-dnl MH_CHECK_X_INC
-dnl MH_CHECK_X_LIB
-dnl MH_CHECK_X_HEADERS
-dnl MH_CHECK_X_KEYDEFS
-dnl MH_CHECK_X_TYPEDEF
-dnl MH_CHECK_LIB
-dnl MH_SHARED_LIBRARY
-dnl MH_HOWTO_DYN_LINK
-dnl MH_CHECK_CC_O
-dnl MH_SHLPST
-dnl MH_CHECK_MAX_SIGNALS
-
-dnl ---------------------------------------------------------------------------
-dnl Determine if the system has System V IPC. ie sys/ipc.h and sys/shm.h
-dnl headers.
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([MH_IPC],
-[
-AC_CHECK_HEADER(sys/ipc.h)
-if test $ac_cv_header_sys_ipc_h = no; then
-	AC_MSG_ERROR(Cannot find required header file sys/ipc.h; PDCurses cannot be configured)
-fi
-])dnl
-
-dnl ---------------------------------------------------------------------------
-dnl Set up the correct X header file location
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([MH_CHECK_X_INC],
-[
-mh_x11_dir=""
-mh_x11_xaw_dir=""
-
-mh_inc_dirs="$ac_x_header_dirs"
-
-dnl Provide for user supplying directory
-
-if test "x$x_includes" != xNONE ; then
-	mh_inc_dirs="$x_includes $mh_inc_dirs"
-fi
-
-dnl Try to determine the directory containing X headers
-dnl We will append X11 to all the paths above as an extra check
-
-for ac_dir in $mh_inc_dirs ; do
-  if test -r $ac_dir/Intrinsic.h; then
-    mh_x11_dir=$ac_dir
-    break
-  fi
-  if test -r $ac_dir/X11/Intrinsic.h; then
-    mh_x11_dir="$ac_dir/X11"
-    break
-  fi
-done
-
-dnl Try to determine the directory containing Xaw headers
-dnl We will append X11 to all the paths above as an extra check
-
-if test "$with_xaw3d" = yes; then
-	mh_xaw_dir="Xaw3d"
-else
-	if test "$with_nextaw" = yes; then
-		mh_xaw_dir="neXtaw"
-	else
-		mh_xaw_dir="Xaw"
-	fi
-fi
-for ac_dir in $mh_inc_dirs ; do
-  if test -r $ac_dir/$mh_xaw_dir/Box.h; then
-    mh_x11_xaw_dir=$ac_dir
-    break
-  fi
-  if test -r $ac_dir/X11/$mh_xaw_dir/Box.h; then
-    mh_x11_xaw_dir="$ac_dir/X11"
-    break
-  fi
-done
-
-if test "x$mh_x11_dir" != "x" ; then
-	mh_x11_dir_no_x11=`echo $mh_x11_dir | sed 's/\/X11$//'`
-
-	if test "$mh_x11_dir_no_x11" != "$mh_x11_dir" ; then
-		MH_XINC_DIR="-I$mh_x11_dir -I$mh_x11_dir_no_x11"
-	else
-		MH_XINC_DIR="-I$mh_x11_dir"
-	fi
-else
-	AC_MSG_ERROR(Cannot find required header file Intrinsic.h; PDCurses cannot be configured)
-fi
-
-if test "x$mh_x11_xaw_dir" != "x"; then
-	if test "$mh_x11_xaw_dir" != "$mh_x11_dir" ; then
-		MH_XINC_DIR="-I$mh_x11_xaw_dir $MH_XINC_DIR"
-	fi
-else
-	AC_MSG_ERROR(Cannot find required Xaw header file Box.h; PDCurses cannot be configured)
-fi
-
-AC_SUBST(MH_XINC_DIR)
-
-])dnl
-
-dnl ---------------------------------------------------------------------------
-dnl Set up the correct X library file location
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([MH_CHECK_X_LIB],
-[
-dnl Some systems require extra libraries...
-
-mh_solaris_flag=no
-mh_hpux9_flag=no
-AC_REQUIRE([AC_CANONICAL_SYSTEM])
-case "$target" in
-	*solaris*)
-		mh_solaris_flag=yes
-		;;
-	*pc-sco*)
-		extra_x_libs="Xext"
-		;;
-	sparc*sunos*)
-		extra_x_libs="Xext"
-		if test "$ac_cv_prog_CC" = "gcc" ; then
-			extra_ld_flags="-Wl,-Bstatic"
-			extra_ld_flags2="-Wl,-Bdynamic"
-		else
-			extra_ld_flags="-Bstatic"
-			extra_ld_flags2="-Bdynamic"
-		fi
-		;;
-	*hpux9*)
-		mh_hpux9_flag=yes
-		;;
-esac
-
-if test "$with_xaw3d" = yes; then
-	MH_X11_LIBS="Xaw3d Xmu Xt X11"
-else
-	if test "$with_nextaw" = yes; then
-		MH_X11_LIBS="neXtaw Xmu Xt X11"
-	else
-		MH_X11_LIBS="Xaw Xmu Xt X11"
-	fi
-fi
-MH_X11R6_LIBS="SM ICE Xext"
-mh_x11r6=no
-
-mh_lib_dirs="$x_libraries `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`"
-
-dnl try to find libSM.[a,sl,so,dylib]. If we find it we are using X11R6
-for ac_dir in $mh_lib_dirs ; do
-	for mh_xsm in libSM.a libSM.so libSM.sl libSM.dylib; do
-	  if test -r $ac_dir/$mh_xsm; then
-	    mh_x11r6=yes
-	    break 2
-	  fi
-	done
-done
-
-if test "$mh_x11r6" = yes ; then
-	mh_libs="$MH_X11_LIBS $MH_X11R6_LIBS"
-else
-	mh_libs="$MH_X11_LIBS $extra_x_libs"
-fi
-
-
-dnl Ensure that all required X libraries are found
-
-mh_prev_dir=""
-mh_where_found=""
-mh_where_found_dirs=""
-mh_solaris_path=""
-for mh_lib in $mh_libs; do
-  mh_lib_found=no
-  for ac_dir in $mh_lib_dirs ; do
-    for mh_ext in a so sl dll.a dylib; do
-      if test -r $ac_dir/lib$mh_lib.$mh_ext; then
-        if test "x$mh_prev_dir" != "x$ac_dir" ; then
-          if test "x$mh_prev_dir" = "x" ; then
-             mh_where_found="$mh_where_found found in $ac_dir"
-          else
-             mh_where_found="$mh_where_found and in $ac_dir"
-          fi
-          mh_prev_dir=$ac_dir
-          mh_where_found_dirs="$mh_where_found_dirs $ac_dir"
-          MH_XLIBS="$MH_XLIBS -L$ac_dir"
-          mh_solaris_path="${mh_solaris_path}:$ac_dir"
-        fi
-        MH_XLIBS="$MH_XLIBS -l$mh_lib"
-        mh_lib_found=yes
-        break 2
-      fi
-    done
-  done
-  if test "$mh_lib_found" = no; then
-    AC_MSG_ERROR(Cannot find required X library; lib$mh_lib. PDCurses cannot be configured)
-  fi
-done
-
-mh_solaris_path=`echo $mh_solaris_path | sed 's/^://'`
-if test "$mh_solaris_flag" = yes ; then
-	MH_XLIBS="-R$mh_solaris_path $extra_ld_flags $MH_XLIBS $extra_libs $extra_ld_flags2"
-else
-	MH_XLIBS="$extra_ld_flags $MH_XLIBS $extra_libs $extra_ld_flags2"
-fi
-if test "$mh_hpux9_flag" = yes ; then
-  grep -q XtSetLanguageProc $mh_x11_dir/Intrinsic.h
-  if test $? -eq 0 ; then
-    mh_found_xtshellstrings=no
-    for mh_acdir in $mh_where_found_dirs ; do
-      for mh_xaw in `ls $mh_acdir/libXaw.*` ; do
-        nm $mh_xaw | grep XtShellStrings | grep -qv extern
-        if test $? -eq 0 ; then
-          mh_found_xtshellstrings=yes
-        fi
-      done
-    done
-    if test "$mh_found_xtshellstrings" = no ; then
-      AC_MSG_WARN(The X11 development environment has not been installed correctly.)
-      AC_MSG_WARN(The header file; Intrinsic.h, is for X11R5 while the Athena Widget)
-      AC_MSG_WARN(Set library; libXaw is for X11R4.  This is a common problem with)
-      AC_MSG_WARN(HP-UX 9.x.)
-      AC_MSG_ERROR(X11 installation incomplete; cannot continue)
-    fi
-  fi
-fi
-
-AC_SUBST(MH_XLIBS)
-
-])dnl
-
-dnl ---------------------------------------------------------------------------
-dnl Determine if the supplied X headers exist.
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([MH_CHECK_X_HEADERS],
-[
-save_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $MH_XINC_DIR"
-for mh_header in $1; do
-	AC_CHECK_HEADERS($mh_header)
-done
-CPPFLAGS="$save_CPPFLAGS"
-])dnl
-
-dnl ---------------------------------------------------------------------------
-dnl Determine if various key definitions exist in keysym.h
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([MH_CHECK_X_KEYDEFS],
-[
-save_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $MH_XINC_DIR"
-for mh_keydef in $1; do
-	AC_MSG_CHECKING(for $mh_keydef in keysym.h)
-	mh_upper_name="HAVE_`echo $mh_keydef | tr '[a-z]' '[A-Z]'`"
-	AC_TRY_COMPILE([#include <keysym.h>],
-[int i = $mh_keydef;],
-  mh_have_key=yes; AC_DEFINE_UNQUOTED($mh_upper_name,1), mh_have_key=no )
-	AC_MSG_RESULT($mh_have_key)
-done
-CPPFLAGS="$save_CPPFLAGS"
-])dnl
-
-dnl ---------------------------------------------------------------------------
-dnl Determine if supplied types have been typedefed
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([MH_CHECK_X_TYPEDEF],
-[
-save_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $SYS_DEFS $MH_XINC_DIR"
-for td in $1 ; do
-AC_MSG_CHECKING(if $td is typedefed:)
-AC_TRY_COMPILE(
-[#include "X11/Xlib.h"],
-[$td fred],
-	[mh_td=yes],
-	[mh_td=no]
-)
-if test "$mh_td" = yes ; then
-	TD_upper=`echo $td | tr a-z A-Z`
-	AC_DEFINE_UNQUOTED(${TD_upper}_TYPEDEFED, 1)
-fi
-AC_MSG_RESULT($mh_td)
-done
-CPPFLAGS="$save_CPPFLAGS"
-])dnl
-
-dnl ---------------------------------------------------------------------------
-dnl Check for presence of various libraries
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([MH_CHECK_LIB],
-[
-MH_EXTRA_LIBS=''
-for mh_lib in $1; do
-	if test "$on_qnx" = yes; then
-		AC_MSG_CHECKING(for library -l${mh_lib})
-		if test -r /usr/lib/${mh_lib}3r.lib; then
-			AC_MSG_RESULT(found)
-			MH_EXTRA_LIBS="${MH_EXTRA_LIBS} -l${mh_lib}"
-		else
-		AC_MSG_RESULT(not found)
-		fi
-	else
-		AC_CHECK_LIB($mh_lib,main,mh_lib_found=yes,mh_lib_found=no)
-		if test "$mh_lib_found" = yes; then
-			MH_EXTRA_LIBS="${MH_EXTRA_LIBS} -l${mh_lib}"
-		fi
-	fi
-done
-])dnl
-
-dnl ---------------------------------------------------------------------------
-dnl Work out how to create a dynamically loaded module
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([MH_HOWTO_DYN_LINK],
-[
-mh_compile='${CC-cc} -c $DYN_COMP conftest.$ac_ext 1>&AC_FD_CC'
-cat > conftest.$ac_ext <<EOF
-dnl [#]line __oline__ "[$]0"
-[#]line __oline__ "configure"
-int foo()
-{
-return(0);
-}
-EOF
-if AC_TRY_EVAL(mh_compile) && test -s conftest.o; then
-	mh_dyn_link='ld -shared -o conftest.rxlib conftest.o -lc 1>&AC_FD_CC'
-#	mh_dyn_link='${CC} -Wl,-shared -o conftest.rxlib conftest.o -lc 1>&AC_FD_CC'
-	if AC_TRY_EVAL(mh_dyn_link) && test -s conftest.rxlib; then
-		LD_RXLIB1="ld -shared"
-#		LD_RXLIB1="${CC} -Wl,-shared"
-		SHLPRE="lib"
-		SHLPST=".so"
-	else
-		mh_dyn_link='ld -G -o conftest.rxlib conftest.o 1>&AC_FD_CC'
-#		mh_dyn_link='${CC} -Wl,-G -o conftest.rxlib conftest.o 1>&AC_FD_CC'
-		if AC_TRY_EVAL(mh_dyn_link) && test -s conftest.rxlib; then
-			LD_RXLIB1="ld -G"
-#			LD_RXLIB1="${CC} -Wl,-G"
-			SHLPRE="lib"
-			SHLPST=".so"
-		else
-			LD_RXLIB1=""
-			SHLPRE=""
-			SHLPST=""
-		fi
-	fi
-fi
-rm -f conftest*
-])dnl
-
-dnl ---------------------------------------------------------------------------
-dnl Determine how to build shared libraries etc..
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([MH_SHARED_LIBRARY],
-[
-AC_REQUIRE([MH_SHLPST])
-dnl
-dnl If compiler is gcc, then flags should be the same for all platforms
-dnl (just guessing on this)
-dnl
-AIX_DYN="no"
-BEOS_DYN="no"
-SHLFILE="$1"
-SHLFILES="$*"
-RXPACKEXPORTS=""
-SHLPRE="lib"
-LD_RXLIB1=""
-
-AC_REQUIRE([AC_CANONICAL_SYSTEM])
-case "$target" in
-	*hp-hpux*)
-		SYS_DEFS="-D_HPUX_SOURCE"
-		LD_RXLIB1="ld -b -q -n"
-		;;
-	*ibm-aix*)
-		SYS_DEFS="-D_ALL_SOURCE -DAIX"
-		AIX_DYN="yes"
-		DYN_COMP="-DDYNAMIC"
-		LD_RXLIB1="ld -bnoentry -bM:SRE"
-		RXPACKEXPORTS="-bE:$SHLFILE.exp"
-		RXPACKEXP="$SHLFILE.exp"
-		;;
-	*dec-osf*)
-		if test "$ac_cv_prog_CC" = "gcc"; then
-			SYS_DEFS="-D_POSIX_SOURCE -D_XOPEN_SOURCE"
-		else
-			SYS_DEFS="-D_POSIX_SOURCE -D_XOPEN_SOURCE -Olimit 800"
-		fi
-		LD_RXLIB1="ld -shared"
-		;;
-	*sequent-dynix*|*esix*|*dgux*)
-		LD_RXLIB1="ld -G"
-		;;
-	*solaris*)
-		if test "$ac_cv_prog_CC" = "gcc"; then
-			LD_RXLIB1="gcc -shared"
-		else
-			LD_RXLIB1="ld -G"
-		fi
-		;;
-	sparc*sunos*)
-		SYS_DEFS="-DSUNOS -DSUNOS_STRTOD_BUG"
-		LD_RXLIB1="ld"
-		;;
-	*linux*|*atheos*|*nto-qnx*)
-		LD_RXLIB1="${CC} -shared"
-		;;
-	*freebsd*)
-		LD_RXLIB1="ld -Bdynamic -Bshareable"
-		;;
-	*pc-sco*)
-		LD_RXLIB1="ld -dy -G"
-		;;
-	*beos*)
-		LD_RXLIB1="${CC} -Wl,-shared -nostart -Xlinker -soname=\$(@)"
-		BEOS_DYN="yes"
-		;;
-	*qnx*)
-		SHLPRE=""
-		DYN_COMP="-Q"   # force no check for dynamic loading
-		SHLFILE=""
-		;;
-	*cygwin)
-		SHLPRE=""
-		DYN_COMP="-DDYNAMIC"
-		LD_RXLIB1="dllwrap --def \$(srcdir)/../win32/pdcurses.def --target i386-cygwin32 --dllname \$(@)"
-# cygwininstall target MUST install the shared library itself because
-# it puts it into $(bindir) not $(libdir) as all other platforms
-		;;
-	*darwin*)
-		DYN_COMP="-fno-common"
-		LD_RXLIB1="${CC} -flat_namespace -undefined suppress -dynamiclib -install_name=\$(@)"
-		;;
-	*)
-		;;
-esac
-
-dnl determine what switches our compiler uses for building objects
-dnl suitable for inclusion in shared libraries
-dnl Only call this if DYN_COMP is not set. If we have set DYN_COMP
-dnl above, then we know how to compile AND link for dynamic libraries
-
-if test "$DYN_COMP" = ""; then
-AC_MSG_CHECKING(compiler flags for a dynamic object)
-
-cat > conftest.$ac_ext <<EOF
-dnl [#]line __oline__ "[$]0"
-[#]line __oline__ "configure"
-int a=0
-EOF
-
-	DYN_COMP=""
-	mh_cv_stop=no
-	save_cflags="$CFLAGS"
-	mh_cv_flags="-fPIC -KPIC +Z"
-	for a in $mh_cv_flags; do
-		CFLAGS="-c $a"
-
-		mh_compile='${CC-cc} -c $CFLAGS conftest.$ac_ext > conftest.tmp 2>&1'
-		if AC_TRY_EVAL(mh_compile); then
-			DYN_COMP=""
-		else
-			slash="\\"
-			mh_dyncomp="`egrep -c $slash$a conftest.tmp`"
-			if test "$mh_dyncomp" = "0"; then
-				DYN_COMP="$a -DDYNAMIC"
-				AC_MSG_RESULT($a)
-				break
-			else
-				DYN_COMP=""
-			fi
-		fi
-	done
-	if test "$DYN_COMP" = ""; then
-		AC_MSG_RESULT(none of $mh_cv_flags supported)
-	fi
-	if test "$LD_RXLIB1" = ""; then
-		MH_HOWTO_DYN_LINK()
-	fi
-	CFLAGS=$save_cflags
-	rm -f conftest.*
-fi
-
-
-SHL_TARGETS=""
-
-if test "$AIX_DYN" = "yes"; then
-	aix_exports="config.exports.aix"
-	echo "" > $aix_exports
-fi
-
-if test "$ac_cv_header_dl_h" = "yes" -o "$ac_cv_header_dlfcn_h" = "yes" -o "$AIX_DYN" = "yes" -o "$BEOS_DYN" = "yes" -o "$DLFCNINCDIR" != "" -o "$DLFCNLIBDIR" != ""; then
-	EXPS="1,2,3,4,5,6,7,8,9"
-	for a in $SHLFILES
-	do
-		SHL_TARGETS="${SHL_TARGETS} ${SHLPRE}${a}${SHLPST}"
-		this=`echo $EXPS | cut -d, -f1`
-		EXPS=`echo $EXPS | cut -d, -f2-`
-		if test "$AIX_DYN" = "yes"; then
-			echo "RXPACKEXP$this=$a.exp" >> $aix_exports
-			echo "RXPACKEXPORTS$this=-bE:$a.exp" >> $aix_exports
-		fi
-	done
-fi
-
-AC_SUBST(DYN_COMP)
-AC_SUBST(LIBS)
-AC_SUBST(LD_RXLIB1)
-AC_SUBST(SHLPRE)
-AC_SUBST(SHLPST)
-AC_SUBST(SHL_TARGETS)
-AC_SUBST(O2SAVE)
-AC_SUBST(CC2O)
-AC_SUBST(SAVE2O)
-AC_SUBST(RXPACKEXPORTS)
-])dnl
-
-dnl ---------------------------------------------------------------------------
-dnl Check if C compiler supports -c -o file.ooo
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([MH_CHECK_CC_O],
-[
-AC_MSG_CHECKING(whether $CC understand -c and -o together)
-set dummy $CC; ac_cc="`echo [$]2 |
-changequote(, )dnl
-		       sed -e 's/[^a-zA-Z0-9_]/_/g' -e 's/^[0-9]/_/'`"
-changequote([, ])dnl
-AC_CACHE_VAL(ac_cv_prog_cc_${ac_cc}_c_o,
-[echo 'foo(){}' > conftest.c
-# We do the test twice because some compilers refuse to overwrite an
-# existing .o file with -o, though they will create one.
-eval ac_cv_prog_cc_${ac_cc}_c_o=no
-ac_try='${CC-cc} -c conftest.c -o conftest.ooo 1>&AC_FD_CC'
-if AC_TRY_EVAL(ac_try) && test -f conftest.ooo && AC_TRY_EVAL(ac_try);
-then
-  ac_try='${CC-cc} -c conftest.c -o conftest.ooo 1>&AC_FD_CC'
-  if AC_TRY_EVAL(ac_try) && test -f conftest.ooo && AC_TRY_EVAL(ac_try);
-  then
-    eval ac_cv_prog_cc_${ac_cc}_c_o=yes
-  fi
-fi
-rm -f conftest*
-])dnl
-if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = yes"; then
-	O2SAVE=""
-	SAVE2O=""
-	CC2O="-o $"'@'
-	AC_MSG_RESULT(yes)
-else
-	O2SAVE="-mv \`basename "$'@'" .sho\`.o \`basename "$'@'" .sho\`.o.save;"
-	SAVE2O="-mv \`basename "$'@'" .sho\`.o "$'@'"; mv \`basename "$'@'" .sho\`.o.save \`basename "$'@'" .sho\`.o"
-	CC2O=""
-	AC_MSG_RESULT(no)
-fi
-])
-
-dnl ---------------------------------------------------------------------------
-dnl Determines the file extension for shared libraries
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([MH_SHLPST],
-[
-AC_MSG_CHECKING(shared library extension)
-SHLPST=".so"
-AC_REQUIRE([AC_CANONICAL_SYSTEM])
-case "$target" in
-        *hp-hpux*)
-                SHLPST=".sl"
-                ;;
-        *ibm-aix*)
-                SHLPST=".a"
-                ;;
-        *qnx*)
-                SHLPST=""
-                ;;
-        *cygwin*)
-                SHLPST=".dll"
-                ;;
-        *darwin*)
-                SHLPST=".dylib"
-                ;;
-esac
-AC_SUBST(SHLPST)
-AC_MSG_RESULT($SHLPST)
-])
-
-dnl ---------------------------------------------------------------------------
-dnl Determine the system limit for number of signals
-dnl ---------------------------------------------------------------------------
-AC_DEFUN([MH_CHECK_MAX_SIGNALS],
-[
-save_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $SYS_DEFS"
-AC_MSG_CHECKING(for maximum signal specifier:)
-AC_CACHE_VAL(mh_cv_max_signals,
-mh_found="no"
-for mh_sigs in $1; do
-	AC_TRY_COMPILE([#include <signal.h>],
-[return $mh_sigs;],
-  mh_found="yes"; mh_cv_max_signals="$mh_sigs" )
-	if test "$mh_found" = "yes"; then
-		break;
-	fi
-done)
-CPPFLAGS="$save_CPPFLAGS"
-if test "$mh_found" = "no"; then
-	AC_MSG_ERROR(Cannot find a system limit for number of signals. PDCurses cannot be configured on this machine.)
-else
-	AC_DEFINE_UNQUOTED(PDC_MAX_SIGNALS,$mh_cv_max_signals)
-	AC_MSG_RESULT($mh_cv_max_signals)
-fi
-])dnl
diff --git a/src/other/PDCurses/config.guess b/src/other/PDCurses/config.guess
deleted file mode 100644
index 396482d..0000000
--- a/src/other/PDCurses/config.guess
+++ /dev/null
@@ -1,1500 +0,0 @@
-#! /bin/sh
-# Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
-#   Inc.
-
-timestamp='2006-07-02'
-
-# 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 2 of the License, 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
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner <per at bothner.com>.
-# Please send patches to <config-patches at gnu.org>.  Submit a context
-# diff and a properly formatted ChangeLog entry.
-#
-# This script attempts to guess a canonical system name similar to
-# config.sub.  If it succeeds, it prints the system name on stdout, and
-# exits with 0.  Otherwise, it exits with 1.
-#
-# The plan is that this can be called by configure scripts if you
-# don't specify an explicit build system type.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION]
-
-Output the configuration name of the system \`$me' is run on.
-
-Operation modes:
-  -h, --help         print this help, then exit
-  -t, --time-stamp   print date of last modification, then exit
-  -v, --version      print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.guess ($timestamp)
-
-Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-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."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
-  case $1 in
-    --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit ;;
-    --version | -v )
-       echo "$version" ; exit ;;
-    --help | --h* | -h )
-       echo "$usage"; exit ;;
-    -- )     # Stop option processing
-       shift; break ;;
-    - )	# Use stdin as input.
-       break ;;
-    -* )
-       echo "$me: invalid option $1$help" >&2
-       exit 1 ;;
-    * )
-       break ;;
-  esac
-done
-
-if test $# != 0; then
-  echo "$me: too many arguments$help" >&2
-  exit 1
-fi
-
-trap 'exit 1' 1 2 15
-
-# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
-# compiler to aid in system detection is discouraged as it requires
-# temporary files to be created and, as you can see below, it is a
-# headache to deal with in a portable fashion.
-
-# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-# use `HOST_CC' if defined, but it is deprecated.
-
-# Portable tmp directory creation inspired by the Autoconf team.
-
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,)    echo "int x;" > $dummy.c ;
-	for c in cc gcc c89 c99 ; do
-	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
-	     CC_FOR_BUILD="$c"; break ;
-	  fi ;
-	done ;
-	if test x"$CC_FOR_BUILD" = x ; then
-	  CC_FOR_BUILD=no_compiler_found ;
-	fi
-	;;
- ,,*)   CC_FOR_BUILD=$CC ;;
- ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
-
-# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi at noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
-	PATH=$PATH:/.attbin ; export PATH
-fi
-
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-# Note: order is significant - the case branches are not exclusive.
-
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
-    *:NetBSD:*:*)
-	# NetBSD (nbsd) targets should (where applicable) match one or
-	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
-	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
-	# switched to ELF, *-*-netbsd* would select the old
-	# object file format.  This provides both forward
-	# compatibility and a consistent mechanism for selecting the
-	# object file format.
-	#
-	# Note: NetBSD doesn't particularly care about the vendor
-	# portion of the name.  We always set it to "unknown".
-	sysctl="sysctl -n hw.machine_arch"
-	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
-	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
-	case "${UNAME_MACHINE_ARCH}" in
-	    armeb) machine=armeb-unknown ;;
-	    arm*) machine=arm-unknown ;;
-	    sh3el) machine=shl-unknown ;;
-	    sh3eb) machine=sh-unknown ;;
-	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
-	esac
-	# The Operating System including object format, if it has switched
-	# to ELF recently, or will in the future.
-	case "${UNAME_MACHINE_ARCH}" in
-	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
-		eval $set_cc_for_build
-		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-			| grep __ELF__ >/dev/null
-		then
-		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
-		    # Return netbsd for either.  FIX?
-		    os=netbsd
-		else
-		    os=netbsdelf
-		fi
-		;;
-	    *)
-	        os=netbsd
-		;;
-	esac
-	# The OS release
-	# Debian GNU/NetBSD machines have a different userland, and
-	# thus, need a distinct triplet. However, they do not need
-	# kernel version information, so it can be replaced with a
-	# suitable tag, in the style of linux-gnu.
-	case "${UNAME_VERSION}" in
-	    Debian*)
-		release='-gnu'
-		;;
-	    *)
-		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-		;;
-	esac
-	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
-	# contains redundant information, the shorter form:
-	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-	echo "${machine}-${os}${release}"
-	exit ;;
-    *:OpenBSD:*:*)
-	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
-	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
-	exit ;;
-    *:ekkoBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
-	exit ;;
-    *:SolidBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
-	exit ;;
-    macppc:MirBSD:*:*)
-	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
-	exit ;;
-    *:MirBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
-	exit ;;
-    alpha:OSF1:*:*)
-	case $UNAME_RELEASE in
-	*4.0)
-		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
-		;;
-	*5.*)
-	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
-		;;
-	esac
-	# According to Compaq, /usr/sbin/psrinfo has been available on
-	# OSF/1 and Tru64 systems produced since 1995.  I hope that
-	# covers most systems running today.  This code pipes the CPU
-	# types through head -n 1, so we only detect the type of CPU 0.
-	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
-	case "$ALPHA_CPU_TYPE" in
-	    "EV4 (21064)")
-		UNAME_MACHINE="alpha" ;;
-	    "EV4.5 (21064)")
-		UNAME_MACHINE="alpha" ;;
-	    "LCA4 (21066/21068)")
-		UNAME_MACHINE="alpha" ;;
-	    "EV5 (21164)")
-		UNAME_MACHINE="alphaev5" ;;
-	    "EV5.6 (21164A)")
-		UNAME_MACHINE="alphaev56" ;;
-	    "EV5.6 (21164PC)")
-		UNAME_MACHINE="alphapca56" ;;
-	    "EV5.7 (21164PC)")
-		UNAME_MACHINE="alphapca57" ;;
-	    "EV6 (21264)")
-		UNAME_MACHINE="alphaev6" ;;
-	    "EV6.7 (21264A)")
-		UNAME_MACHINE="alphaev67" ;;
-	    "EV6.8CB (21264C)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.8AL (21264B)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.8CX (21264D)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.9A (21264/EV69A)")
-		UNAME_MACHINE="alphaev69" ;;
-	    "EV7 (21364)")
-		UNAME_MACHINE="alphaev7" ;;
-	    "EV7.9 (21364A)")
-		UNAME_MACHINE="alphaev79" ;;
-	esac
-	# A Pn.n version is a patched version.
-	# A Vn.n version is a released version.
-	# A Tn.n version is a released field test version.
-	# A Xn.n version is an unreleased experimental baselevel.
-	# 1.2 uses "1.2" for uname -r.
-	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-	exit ;;
-    Alpha\ *:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# Should we change UNAME_MACHINE based on the output of uname instead
-	# of the specific Alpha model?
-	echo alpha-pc-interix
-	exit ;;
-    21064:Windows_NT:50:3)
-	echo alpha-dec-winnt3.5
-	exit ;;
-    Amiga*:UNIX_System_V:4.0:*)
-	echo m68k-unknown-sysv4
-	exit ;;
-    *:[Aa]miga[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-amigaos
-	exit ;;
-    *:[Mm]orph[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-morphos
-	exit ;;
-    *:OS/390:*:*)
-	echo i370-ibm-openedition
-	exit ;;
-    *:z/VM:*:*)
-	echo s390-ibm-zvmoe
-	exit ;;
-    *:OS400:*:*)
-        echo powerpc-ibm-os400
-	exit ;;
-    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
-	echo arm-acorn-riscix${UNAME_RELEASE}
-	exit ;;
-    arm:riscos:*:*|arm:RISCOS:*:*)
-	echo arm-unknown-riscos
-	exit ;;
-    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
-	echo hppa1.1-hitachi-hiuxmpp
-	exit ;;
-    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
-	# akee at wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
-	if test "`(/bin/universe) 2>/dev/null`" = att ; then
-		echo pyramid-pyramid-sysv3
-	else
-		echo pyramid-pyramid-bsd
-	fi
-	exit ;;
-    NILE*:*:*:dcosx)
-	echo pyramid-pyramid-svr4
-	exit ;;
-    DRS?6000:unix:4.0:6*)
-	echo sparc-icl-nx6
-	exit ;;
-    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
-	case `/usr/bin/uname -p` in
-	    sparc) echo sparc-icl-nx7; exit ;;
-	esac ;;
-    sun4H:SunOS:5.*:*)
-	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
-	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    i86pc:SunOS:5.*:*)
-	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:6*:*)
-	# According to config.sub, this is the proper way to canonicalize
-	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
-	# it's likely to be more like Solaris than SunOS4.
-	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:*:*)
-	case "`/usr/bin/arch -k`" in
-	    Series*|S4*)
-		UNAME_RELEASE=`uname -v`
-		;;
-	esac
-	# Japanese Language versions have a version number like `4.1.3-JL'.
-	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
-	exit ;;
-    sun3*:SunOS:*:*)
-	echo m68k-sun-sunos${UNAME_RELEASE}
-	exit ;;
-    sun*:*:4.2BSD:*)
-	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
-	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
-	case "`/bin/arch`" in
-	    sun3)
-		echo m68k-sun-sunos${UNAME_RELEASE}
-		;;
-	    sun4)
-		echo sparc-sun-sunos${UNAME_RELEASE}
-		;;
-	esac
-	exit ;;
-    aushp:SunOS:*:*)
-	echo sparc-auspex-sunos${UNAME_RELEASE}
-	exit ;;
-    # The situation for MiNT is a little confusing.  The machine name
-    # can be virtually everything (everything which is not
-    # "atarist" or "atariste" at least should have a processor
-    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
-    # to the lowercase version "mint" (or "freemint").  Finally
-    # the system name "TOS" denotes a system which is actually not
-    # MiNT.  But MiNT is downward compatible to TOS, so this should
-    # be no problem.
-    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
-        echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
-    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
-        exit ;;
-    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
-        echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
-    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
-        echo m68k-milan-mint${UNAME_RELEASE}
-        exit ;;
-    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
-        echo m68k-hades-mint${UNAME_RELEASE}
-        exit ;;
-    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-        echo m68k-unknown-mint${UNAME_RELEASE}
-        exit ;;
-    m68k:machten:*:*)
-	echo m68k-apple-machten${UNAME_RELEASE}
-	exit ;;
-    powerpc:machten:*:*)
-	echo powerpc-apple-machten${UNAME_RELEASE}
-	exit ;;
-    RISC*:Mach:*:*)
-	echo mips-dec-mach_bsd4.3
-	exit ;;
-    RISC*:ULTRIX:*:*)
-	echo mips-dec-ultrix${UNAME_RELEASE}
-	exit ;;
-    VAX*:ULTRIX*:*:*)
-	echo vax-dec-ultrix${UNAME_RELEASE}
-	exit ;;
-    2020:CLIX:*:* | 2430:CLIX:*:*)
-	echo clipper-intergraph-clix${UNAME_RELEASE}
-	exit ;;
-    mips:*:*:UMIPS | mips:*:*:RISCos)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-#ifdef __cplusplus
-#include <stdio.h>  /* for printf() prototype */
-	int main (int argc, char *argv[]) {
-#else
-	int main (argc, argv) int argc; char *argv[]; {
-#endif
-	#if defined (host_mips) && defined (MIPSEB)
-	#if defined (SYSTYPE_SYSV)
-	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
-	#endif
-	#if defined (SYSTYPE_SVR4)
-	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
-	#endif
-	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
-	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
-	#endif
-	#endif
-	  exit (-1);
-	}
-EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c &&
-	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
-	  SYSTEM_NAME=`$dummy $dummyarg` &&
-	    { echo "$SYSTEM_NAME"; exit; }
-	echo mips-mips-riscos${UNAME_RELEASE}
-	exit ;;
-    Motorola:PowerMAX_OS:*:*)
-	echo powerpc-motorola-powermax
-	exit ;;
-    Motorola:*:4.3:PL8-*)
-	echo powerpc-harris-powermax
-	exit ;;
-    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
-	echo powerpc-harris-powermax
-	exit ;;
-    Night_Hawk:Power_UNIX:*:*)
-	echo powerpc-harris-powerunix
-	exit ;;
-    m88k:CX/UX:7*:*)
-	echo m88k-harris-cxux7
-	exit ;;
-    m88k:*:4*:R4*)
-	echo m88k-motorola-sysv4
-	exit ;;
-    m88k:*:3*:R3*)
-	echo m88k-motorola-sysv3
-	exit ;;
-    AViiON:dgux:*:*)
-        # DG/UX returns AViiON for all architectures
-        UNAME_PROCESSOR=`/usr/bin/uname -p`
-	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
-	then
-	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
-	       [ ${TARGET_BINARY_INTERFACE}x = x ]
-	    then
-		echo m88k-dg-dgux${UNAME_RELEASE}
-	    else
-		echo m88k-dg-dguxbcs${UNAME_RELEASE}
-	    fi
-	else
-	    echo i586-dg-dgux${UNAME_RELEASE}
-	fi
- 	exit ;;
-    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
-	echo m88k-dolphin-sysv3
-	exit ;;
-    M88*:*:R3*:*)
-	# Delta 88k system running SVR3
-	echo m88k-motorola-sysv3
-	exit ;;
-    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
-	echo m88k-tektronix-sysv3
-	exit ;;
-    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
-	echo m68k-tektronix-bsd
-	exit ;;
-    *:IRIX*:*:*)
-	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
-	exit ;;
-    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
-	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
-	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
-    i*86:AIX:*:*)
-	echo i386-ibm-aix
-	exit ;;
-    ia64:AIX:*:*)
-	if [ -x /usr/bin/oslevel ] ; then
-		IBM_REV=`/usr/bin/oslevel`
-	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-	fi
-	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
-	exit ;;
-    *:AIX:2:3)
-	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
-		eval $set_cc_for_build
-		sed 's/^		//' << EOF >$dummy.c
-		#include <sys/systemcfg.h>
-
-		main()
-			{
-			if (!__power_pc())
-				exit(1);
-			puts("powerpc-ibm-aix3.2.5");
-			exit(0);
-			}
-EOF
-		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
-		then
-			echo "$SYSTEM_NAME"
-		else
-			echo rs6000-ibm-aix3.2.5
-		fi
-	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
-		echo rs6000-ibm-aix3.2.4
-	else
-		echo rs6000-ibm-aix3.2
-	fi
-	exit ;;
-    *:AIX:*:[45])
-	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
-	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
-		IBM_ARCH=rs6000
-	else
-		IBM_ARCH=powerpc
-	fi
-	if [ -x /usr/bin/oslevel ] ; then
-		IBM_REV=`/usr/bin/oslevel`
-	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-	fi
-	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
-	exit ;;
-    *:AIX:*:*)
-	echo rs6000-ibm-aix
-	exit ;;
-    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
-	echo romp-ibm-bsd4.4
-	exit ;;
-    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
-	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
-	exit ;;                             # report: romp-ibm BSD 4.3
-    *:BOSX:*:*)
-	echo rs6000-bull-bosx
-	exit ;;
-    DPX/2?00:B.O.S.:*:*)
-	echo m68k-bull-sysv3
-	exit ;;
-    9000/[34]??:4.3bsd:1.*:*)
-	echo m68k-hp-bsd
-	exit ;;
-    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
-	echo m68k-hp-bsd4.4
-	exit ;;
-    9000/[34678]??:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	case "${UNAME_MACHINE}" in
-	    9000/31? )            HP_ARCH=m68000 ;;
-	    9000/[34]?? )         HP_ARCH=m68k ;;
-	    9000/[678][0-9][0-9])
-		if [ -x /usr/bin/getconf ]; then
-		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
-                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
-                    case "${sc_cpu_version}" in
-                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
-                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
-                      532)                      # CPU_PA_RISC2_0
-                        case "${sc_kernel_bits}" in
-                          32) HP_ARCH="hppa2.0n" ;;
-                          64) HP_ARCH="hppa2.0w" ;;
-			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
-                        esac ;;
-                    esac
-		fi
-		if [ "${HP_ARCH}" = "" ]; then
-		    eval $set_cc_for_build
-		    sed 's/^              //' << EOF >$dummy.c
-
-              #define _HPUX_SOURCE
-              #include <stdlib.h>
-              #include <unistd.h>
-
-              int main ()
-              {
-              #if defined(_SC_KERNEL_BITS)
-                  long bits = sysconf(_SC_KERNEL_BITS);
-              #endif
-                  long cpu  = sysconf (_SC_CPU_VERSION);
-
-                  switch (cpu)
-              	{
-              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
-              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
-              	case CPU_PA_RISC2_0:
-              #if defined(_SC_KERNEL_BITS)
-              	    switch (bits)
-              		{
-              		case 64: puts ("hppa2.0w"); break;
-              		case 32: puts ("hppa2.0n"); break;
-              		default: puts ("hppa2.0"); break;
-              		} break;
-              #else  /* !defined(_SC_KERNEL_BITS) */
-              	    puts ("hppa2.0"); break;
-              #endif
-              	default: puts ("hppa1.0"); break;
-              	}
-                  exit (0);
-              }
-EOF
-		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
-		    test -z "$HP_ARCH" && HP_ARCH=hppa
-		fi ;;
-	esac
-	if [ ${HP_ARCH} = "hppa2.0w" ]
-	then
-	    eval $set_cc_for_build
-
-	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
-	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
-	    # generating 64-bit code.  GNU and HP use different nomenclature:
-	    #
-	    # $ CC_FOR_BUILD=cc ./config.guess
-	    # => hppa2.0w-hp-hpux11.23
-	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
-	    # => hppa64-hp-hpux11.23
-
-	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
-		grep __LP64__ >/dev/null
-	    then
-		HP_ARCH="hppa2.0w"
-	    else
-		HP_ARCH="hppa64"
-	    fi
-	fi
-	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
-	exit ;;
-    ia64:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	echo ia64-hp-hpux${HPUX_REV}
-	exit ;;
-    3050*:HI-UX:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#include <unistd.h>
-	int
-	main ()
-	{
-	  long cpu = sysconf (_SC_CPU_VERSION);
-	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
-	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
-	     results, however.  */
-	  if (CPU_IS_PA_RISC (cpu))
-	    {
-	      switch (cpu)
-		{
-		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
-		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
-		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
-		  default: puts ("hppa-hitachi-hiuxwe2"); break;
-		}
-	    }
-	  else if (CPU_IS_HP_MC68K (cpu))
-	    puts ("m68k-hitachi-hiuxwe2");
-	  else puts ("unknown-hitachi-hiuxwe2");
-	  exit (0);
-	}
-EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
-		{ echo "$SYSTEM_NAME"; exit; }
-	echo unknown-hitachi-hiuxwe2
-	exit ;;
-    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
-	echo hppa1.1-hp-bsd
-	exit ;;
-    9000/8??:4.3bsd:*:*)
-	echo hppa1.0-hp-bsd
-	exit ;;
-    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
-	echo hppa1.0-hp-mpeix
-	exit ;;
-    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
-	echo hppa1.1-hp-osf
-	exit ;;
-    hp8??:OSF1:*:*)
-	echo hppa1.0-hp-osf
-	exit ;;
-    i*86:OSF1:*:*)
-	if [ -x /usr/sbin/sysversion ] ; then
-	    echo ${UNAME_MACHINE}-unknown-osf1mk
-	else
-	    echo ${UNAME_MACHINE}-unknown-osf1
-	fi
-	exit ;;
-    parisc*:Lites*:*:*)
-	echo hppa1.1-hp-lites
-	exit ;;
-    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
-	echo c1-convex-bsd
-        exit ;;
-    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
-	if getsysinfo -f scalar_acc
-	then echo c32-convex-bsd
-	else echo c2-convex-bsd
-	fi
-        exit ;;
-    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
-	echo c34-convex-bsd
-        exit ;;
-    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
-	echo c38-convex-bsd
-        exit ;;
-    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
-	echo c4-convex-bsd
-        exit ;;
-    CRAY*Y-MP:*:*:*)
-	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*[A-Z]90:*:*:*)
-	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
-	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-	      -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*TS:*:*:*)
-	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*T3E:*:*:*)
-	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*SV1:*:*:*)
-	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    *:UNICOS/mp:*:*)
-	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
-	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
-        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-        exit ;;
-    5000:UNIX_System_V:4.*:*)
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
-        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-	exit ;;
-    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
-	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
-	exit ;;
-    sparc*:BSD/OS:*:*)
-	echo sparc-unknown-bsdi${UNAME_RELEASE}
-	exit ;;
-    *:BSD/OS:*:*)
-	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
-	exit ;;
-    *:FreeBSD:*:*)
-	case ${UNAME_MACHINE} in
-	    pc98)
-		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	    amd64)
-		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	    *)
-		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	esac
-	exit ;;
-    i*:CYGWIN*:*)
-	echo ${UNAME_MACHINE}-pc-cygwin
-	exit ;;
-    i*:MINGW*:*)
-	echo ${UNAME_MACHINE}-pc-mingw32
-	exit ;;
-    i*:windows32*:*)
-    	# uname -m includes "-pc" on this system.
-    	echo ${UNAME_MACHINE}-mingw32
-	exit ;;
-    i*:PW*:*)
-	echo ${UNAME_MACHINE}-pc-pw32
-	exit ;;
-    x86:Interix*:[3456]*)
-	echo i586-pc-interix${UNAME_RELEASE}
-	exit ;;
-    EM64T:Interix*:[3456]*)
-	echo x86_64-unknown-interix${UNAME_RELEASE}
-	exit ;;
-    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
-	echo i${UNAME_MACHINE}-pc-mks
-	exit ;;
-    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
-	# UNAME_MACHINE based on the output of uname instead of i386?
-	echo i586-pc-interix
-	exit ;;
-    i*:UWIN*:*)
-	echo ${UNAME_MACHINE}-pc-uwin
-	exit ;;
-    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
-	echo x86_64-unknown-cygwin
-	exit ;;
-    p*:CYGWIN*:*)
-	echo powerpcle-unknown-cygwin
-	exit ;;
-    prep*:SunOS:5.*:*)
-	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    *:GNU:*:*)
-	# the GNU system
-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
-	exit ;;
-    *:GNU/*:*:*)
-	# other systems with GNU libc and userland
-	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
-	exit ;;
-    i*86:Minix:*:*)
-	echo ${UNAME_MACHINE}-pc-minix
-	exit ;;
-    arm*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    avr32*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    cris:Linux:*:*)
-	echo cris-axis-linux-gnu
-	exit ;;
-    crisv32:Linux:*:*)
-	echo crisv32-axis-linux-gnu
-	exit ;;
-    frv:Linux:*:*)
-    	echo frv-unknown-linux-gnu
-	exit ;;
-    ia64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    m32r*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    m68*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    mips:Linux:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#undef CPU
-	#undef mips
-	#undef mipsel
-	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=mipsel
-	#else
-	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=mips
-	#else
-	CPU=
-	#endif
-	#endif
-EOF
-	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-	    /^CPU/{
-		s: ::g
-		p
-	    }'`"
-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-	;;
-    mips64:Linux:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#undef CPU
-	#undef mips64
-	#undef mips64el
-	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=mips64el
-	#else
-	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=mips64
-	#else
-	CPU=
-	#endif
-	#endif
-EOF
-	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-	    /^CPU/{
-		s: ::g
-		p
-	    }'`"
-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-	;;
-    or32:Linux:*:*)
-	echo or32-unknown-linux-gnu
-	exit ;;
-    ppc:Linux:*:*)
-	echo powerpc-unknown-linux-gnu
-	exit ;;
-    ppc64:Linux:*:*)
-	echo powerpc64-unknown-linux-gnu
-	exit ;;
-    alpha:Linux:*:*)
-	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-	  EV5)   UNAME_MACHINE=alphaev5 ;;
-	  EV56)  UNAME_MACHINE=alphaev56 ;;
-	  PCA56) UNAME_MACHINE=alphapca56 ;;
-	  PCA57) UNAME_MACHINE=alphapca56 ;;
-	  EV6)   UNAME_MACHINE=alphaev6 ;;
-	  EV67)  UNAME_MACHINE=alphaev67 ;;
-	  EV68*) UNAME_MACHINE=alphaev68 ;;
-        esac
-	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
-	exit ;;
-    parisc:Linux:*:* | hppa:Linux:*:*)
-	# Look for CPU level
-	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
-	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
-	  *)    echo hppa-unknown-linux-gnu ;;
-	esac
-	exit ;;
-    parisc64:Linux:*:* | hppa64:Linux:*:*)
-	echo hppa64-unknown-linux-gnu
-	exit ;;
-    s390:Linux:*:* | s390x:Linux:*:*)
-	echo ${UNAME_MACHINE}-ibm-linux
-	exit ;;
-    sh64*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    sh*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    sparc:Linux:*:* | sparc64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    vax:Linux:*:*)
-	echo ${UNAME_MACHINE}-dec-linux-gnu
-	exit ;;
-    x86_64:Linux:*:*)
-	echo x86_64-unknown-linux-gnu
-	exit ;;
-    i*86:Linux:*:*)
-	# The BFD linker knows what the default object file format is, so
-	# first see if it will tell us. cd to the root directory to prevent
-	# problems with other programs or directories called `ld' in the path.
-	# Set LC_ALL=C to ensure ld outputs messages in English.
-	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
-			 | sed -ne '/supported targets:/!d
-				    s/[ 	][ 	]*/ /g
-				    s/.*supported targets: *//
-				    s/ .*//
-				    p'`
-        case "$ld_supported_targets" in
-	  elf32-i386)
-		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
-		;;
-	  a.out-i386-linux)
-		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
-		exit ;;
-	  coff-i386)
-		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
-		exit ;;
-	  "")
-		# Either a pre-BFD a.out linker (linux-gnuoldld) or
-		# one that does not give us useful --help.
-		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
-		exit ;;
-	esac
-	# Determine whether the default compiler is a.out or elf
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#include <features.h>
-	#ifdef __ELF__
-	# ifdef __GLIBC__
-	#  if __GLIBC__ >= 2
-	LIBC=gnu
-	#  else
-	LIBC=gnulibc1
-	#  endif
-	# else
-	LIBC=gnulibc1
-	# endif
-	#else
-	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
-	LIBC=gnu
-	#else
-	LIBC=gnuaout
-	#endif
-	#endif
-	#ifdef __dietlibc__
-	LIBC=dietlibc
-	#endif
-EOF
-	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-	    /^LIBC/{
-		s: ::g
-		p
-	    }'`"
-	test x"${LIBC}" != x && {
-		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
-		exit
-	}
-	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
-	;;
-    i*86:DYNIX/ptx:4*:*)
-	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
-	# earlier versions are messed up and put the nodename in both
-	# sysname and nodename.
-	echo i386-sequent-sysv4
-	exit ;;
-    i*86:UNIX_SV:4.2MP:2.*)
-        # Unixware is an offshoot of SVR4, but it has its own version
-        # number series starting with 2...
-        # I am not positive that other SVR4 systems won't match this,
-	# I just have to hope.  -- rms.
-        # Use sysv4.2uw... so that sysv4* matches it.
-	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
-	exit ;;
-    i*86:OS/2:*:*)
-	# If we were able to find `uname', then EMX Unix compatibility
-	# is probably installed.
-	echo ${UNAME_MACHINE}-pc-os2-emx
-	exit ;;
-    i*86:XTS-300:*:STOP)
-	echo ${UNAME_MACHINE}-unknown-stop
-	exit ;;
-    i*86:atheos:*:*)
-	echo ${UNAME_MACHINE}-unknown-atheos
-	exit ;;
-    i*86:syllable:*:*)
-	echo ${UNAME_MACHINE}-pc-syllable
-	exit ;;
-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
-	echo i386-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    i*86:*DOS:*:*)
-	echo ${UNAME_MACHINE}-pc-msdosdjgpp
-	exit ;;
-    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
-	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
-	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
-		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
-	else
-		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
-	fi
-	exit ;;
-    i*86:*:5:[678]*)
-    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
-	case `/bin/uname -X | grep "^Machine"` in
-	    *486*)	     UNAME_MACHINE=i486 ;;
-	    *Pentium)	     UNAME_MACHINE=i586 ;;
-	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
-	esac
-	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
-	exit ;;
-    i*86:*:3.2:*)
-	if test -f /usr/options/cb.name; then
-		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
-		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
-	elif /bin/uname -X 2>/dev/null >/dev/null ; then
-		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
-		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
-		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
-			&& UNAME_MACHINE=i586
-		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
-			&& UNAME_MACHINE=i686
-		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
-			&& UNAME_MACHINE=i686
-		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
-	else
-		echo ${UNAME_MACHINE}-pc-sysv32
-	fi
-	exit ;;
-    pc:*:*:*)
-	# Left here for compatibility:
-        # uname -m prints for DJGPP always 'pc', but it prints nothing about
-        # the processor, so we play safe by assuming i386.
-	echo i386-pc-msdosdjgpp
-        exit ;;
-    Intel:Mach:3*:*)
-	echo i386-pc-mach3
-	exit ;;
-    paragon:*:*:*)
-	echo i860-intel-osf1
-	exit ;;
-    i860:*:4.*:*) # i860-SVR4
-	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
-	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
-	else # Add other i860-SVR4 vendors below as they are discovered.
-	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
-	fi
-	exit ;;
-    mini*:CTIX:SYS*5:*)
-	# "miniframe"
-	echo m68010-convergent-sysv
-	exit ;;
-    mc68k:UNIX:SYSTEM5:3.51m)
-	echo m68k-convergent-sysv
-	exit ;;
-    M680?0:D-NIX:5.3:*)
-	echo m68k-diab-dnix
-	exit ;;
-    M68*:*:R3V[5678]*:*)
-	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
-    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
-	OS_REL=''
-	test -r /etc/.relid \
-	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
-	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
-    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
-        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-          && { echo i486-ncr-sysv4; exit; } ;;
-    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
-	echo m68k-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    mc68030:UNIX_System_V:4.*:*)
-	echo m68k-atari-sysv4
-	exit ;;
-    TSUNAMI:LynxOS:2.*:*)
-	echo sparc-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    rs6000:LynxOS:2.*:*)
-	echo rs6000-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
-	echo powerpc-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    SM[BE]S:UNIX_SV:*:*)
-	echo mips-dde-sysv${UNAME_RELEASE}
-	exit ;;
-    RM*:ReliantUNIX-*:*:*)
-	echo mips-sni-sysv4
-	exit ;;
-    RM*:SINIX-*:*:*)
-	echo mips-sni-sysv4
-	exit ;;
-    *:SINIX-*:*:*)
-	if uname -p 2>/dev/null >/dev/null ; then
-		UNAME_MACHINE=`(uname -p) 2>/dev/null`
-		echo ${UNAME_MACHINE}-sni-sysv4
-	else
-		echo ns32k-sni-sysv
-	fi
-	exit ;;
-    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-                      # says <Richard.M.Bartel at ccMail.Census.GOV>
-        echo i586-unisys-sysv4
-        exit ;;
-    *:UNIX_System_V:4*:FTX*)
-	# From Gerald Hewes <hewes at openmarket.com>.
-	# How about differentiating between stratus architectures? -djm
-	echo hppa1.1-stratus-sysv4
-	exit ;;
-    *:*:*:FTX*)
-	# From seanf at swdc.stratus.com.
-	echo i860-stratus-sysv4
-	exit ;;
-    i*86:VOS:*:*)
-	# From Paul.Green at stratus.com.
-	echo ${UNAME_MACHINE}-stratus-vos
-	exit ;;
-    *:VOS:*:*)
-	# From Paul.Green at stratus.com.
-	echo hppa1.1-stratus-vos
-	exit ;;
-    mc68*:A/UX:*:*)
-	echo m68k-apple-aux${UNAME_RELEASE}
-	exit ;;
-    news*:NEWS-OS:6*:*)
-	echo mips-sony-newsos6
-	exit ;;
-    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
-	if [ -d /usr/nec ]; then
-	        echo mips-nec-sysv${UNAME_RELEASE}
-	else
-	        echo mips-unknown-sysv${UNAME_RELEASE}
-	fi
-        exit ;;
-    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
-	echo powerpc-be-beos
-	exit ;;
-    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
-	echo powerpc-apple-beos
-	exit ;;
-    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
-	echo i586-pc-beos
-	exit ;;
-    SX-4:SUPER-UX:*:*)
-	echo sx4-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-5:SUPER-UX:*:*)
-	echo sx5-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-6:SUPER-UX:*:*)
-	echo sx6-nec-superux${UNAME_RELEASE}
-	exit ;;
-    Power*:Rhapsody:*:*)
-	echo powerpc-apple-rhapsody${UNAME_RELEASE}
-	exit ;;
-    *:Rhapsody:*:*)
-	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
-	exit ;;
-    *:Darwin:*:*)
-	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-	case $UNAME_PROCESSOR in
-	    unknown) UNAME_PROCESSOR=powerpc ;;
-	esac
-	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
-	exit ;;
-    *:procnto*:*:* | *:QNX:[0123456789]*:*)
-	UNAME_PROCESSOR=`uname -p`
-	if test "$UNAME_PROCESSOR" = "x86"; then
-		UNAME_PROCESSOR=i386
-		UNAME_MACHINE=pc
-	fi
-	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
-	exit ;;
-    *:QNX:*:4*)
-	echo i386-pc-qnx
-	exit ;;
-    NSE-?:NONSTOP_KERNEL:*:*)
-	echo nse-tandem-nsk${UNAME_RELEASE}
-	exit ;;
-    NSR-?:NONSTOP_KERNEL:*:*)
-	echo nsr-tandem-nsk${UNAME_RELEASE}
-	exit ;;
-    *:NonStop-UX:*:*)
-	echo mips-compaq-nonstopux
-	exit ;;
-    BS2000:POSIX*:*:*)
-	echo bs2000-siemens-sysv
-	exit ;;
-    DS/*:UNIX_System_V:*:*)
-	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
-	exit ;;
-    *:Plan9:*:*)
-	# "uname -m" is not consistent, so use $cputype instead. 386
-	# is converted to i386 for consistency with other x86
-	# operating systems.
-	if test "$cputype" = "386"; then
-	    UNAME_MACHINE=i386
-	else
-	    UNAME_MACHINE="$cputype"
-	fi
-	echo ${UNAME_MACHINE}-unknown-plan9
-	exit ;;
-    *:TOPS-10:*:*)
-	echo pdp10-unknown-tops10
-	exit ;;
-    *:TENEX:*:*)
-	echo pdp10-unknown-tenex
-	exit ;;
-    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
-	echo pdp10-dec-tops20
-	exit ;;
-    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
-	echo pdp10-xkl-tops20
-	exit ;;
-    *:TOPS-20:*:*)
-	echo pdp10-unknown-tops20
-	exit ;;
-    *:ITS:*:*)
-	echo pdp10-unknown-its
-	exit ;;
-    SEI:*:*:SEIUX)
-        echo mips-sei-seiux${UNAME_RELEASE}
-	exit ;;
-    *:DragonFly:*:*)
-	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-	exit ;;
-    *:*VMS:*:*)
-    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
-	case "${UNAME_MACHINE}" in
-	    A*) echo alpha-dec-vms ; exit ;;
-	    I*) echo ia64-dec-vms ; exit ;;
-	    V*) echo vax-dec-vms ; exit ;;
-	esac ;;
-    *:XENIX:*:SysV)
-	echo i386-pc-xenix
-	exit ;;
-    i*86:skyos:*:*)
-	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
-	exit ;;
-    i*86:rdos:*:*)
-	echo ${UNAME_MACHINE}-pc-rdos
-	exit ;;
-esac
-
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
-  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
-     I don't know....  */
-  printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
-  printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
-          "4"
-#else
-	  ""
-#endif
-         ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
-  printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
-  printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
-  int version;
-  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
-  if (version < 4)
-    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
-  else
-    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
-  exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
-  printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
-  printf ("ns32k-encore-mach\n"); exit (0);
-#else
-  printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
-  printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
-  printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
-  printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
-    struct utsname un;
-
-    uname(&un);
-
-    if (strncmp(un.version, "V2", 2) == 0) {
-	printf ("i386-sequent-ptx2\n"); exit (0);
-    }
-    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
-	printf ("i386-sequent-ptx1\n"); exit (0);
-    }
-    printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-#  include <sys/param.h>
-#  if defined (BSD)
-#   if BSD == 43
-      printf ("vax-dec-bsd4.3\n"); exit (0);
-#   else
-#    if BSD == 199006
-      printf ("vax-dec-bsd4.3reno\n"); exit (0);
-#    else
-      printf ("vax-dec-bsd\n"); exit (0);
-#    endif
-#   endif
-#  else
-    printf ("vax-dec-bsd\n"); exit (0);
-#  endif
-# else
-    printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
-  printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
-  exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
-	{ echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
-    case `getsysinfo -f cpu_type` in
-    c1*)
-	echo c1-convex-bsd
-	exit ;;
-    c2*)
-	if getsysinfo -f scalar_acc
-	then echo c32-convex-bsd
-	else echo c2-convex-bsd
-	fi
-	exit ;;
-    c34*)
-	echo c34-convex-bsd
-	exit ;;
-    c38*)
-	echo c38-convex-bsd
-	exit ;;
-    c4*)
-	echo c4-convex-bsd
-	exit ;;
-    esac
-fi
-
-cat >&2 <<EOF
-$0: unable to guess system type
-
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
-
-  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
-and
-  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
-
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patches at gnu.org> in order to provide the needed
-information to handle your system.
-
-config.guess timestamp = $timestamp
-
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
-
-hostinfo               = `(hostinfo) 2>/dev/null`
-/bin/universe          = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch              = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM  = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
-EOF
-
-exit 1
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/src/other/PDCurses/config.h.in b/src/other/PDCurses/config.h.in
deleted file mode 100644
index 28e9e48..0000000
--- a/src/other/PDCurses/config.h.in
+++ /dev/null
@@ -1,133 +0,0 @@
-/* config.h.in.  Generated from configure.ac by autoheader.  */
-
-/* Define if you have the <DECkeySym.h> header file */
-#undef HAVE_DECKEYSYM_H
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#undef HAVE_DLFCN_H
-
-/* Define to 1 if you have the <dl.h> header file. */
-#undef HAVE_DL_H
-
-/* Define to 1 if you have the <fcntl.h> header file. */
-#undef HAVE_FCNTL_H
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#undef HAVE_INTTYPES_H
-
-/* Define to 1 if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H
-
-/* Define to 1 if you have the `poll' function. */
-#undef HAVE_POLL
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H
-
-/* Define to 1 if you have the <strings.h> header file. */
-#undef HAVE_STRINGS_H
-
-/* Define to 1 if you have the <string.h> header file. */
-#undef HAVE_STRING_H
-
-/* Define if you have the <Sunkeysym.h> header file */
-#undef HAVE_SUNKEYSYM_H
-
-/* Define to 1 if you have the <sys/select.h> header file. */
-#undef HAVE_SYS_SELECT_H
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#undef HAVE_SYS_STAT_H
-
-/* Define to 1 if you have the <sys/time.h> header file. */
-#undef HAVE_SYS_TIME_H
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#undef HAVE_SYS_TYPES_H
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H
-
-/* Define to 1 if you have the `usleep' function. */
-#undef HAVE_USLEEP
-
-/* Define to 1 if you have the `vsnprintf' function. */
-#undef HAVE_VSNPRINTF
-
-/* Define to 1 if you have the `vsscanf' function. */
-#undef HAVE_VSSCANF
-
-/* Define if you have this defined in <keysym.h> */
-#undef HAVE_XK_KP_BEGIN
-
-/* Define if you have this defined in <keysym.h> */
-#undef HAVE_XK_KP_DELETE
-
-/* Define if you have this defined in <keysym.h> */
-#undef HAVE_XK_KP_DOWN
-
-/* Define if you have this defined in <keysym.h> */
-#undef HAVE_XK_KP_END
-
-/* Define if you have this defined in <keysym.h> */
-#undef HAVE_XK_KP_HOME
-
-/* Define if you have this defined in <keysym.h> */
-#undef HAVE_XK_KP_INSERT
-
-/* Define if you have this defined in <keysym.h> */
-#undef HAVE_XK_KP_LEFT
-
-/* Define if you have this defined in <keysym.h> */
-#undef HAVE_XK_KP_NEXT
-
-/* Define if you have this defined in <keysym.h> */
-#undef HAVE_XK_KP_PRIOR
-
-/* Define if you have this defined in <keysym.h> */
-#undef HAVE_XK_KP_RIGHT
-
-/* Define if you have this defined in <keysym.h> */
-#undef HAVE_XK_KP_UP
-
-/* Define if you have the <xpm.h> header file */
-#undef HAVE_XPM_H
-
-/* Define to the address where bug reports for this package should be sent. */
-#undef PACKAGE_BUGREPORT
-
-/* Define to the full name of this package. */
-#undef PACKAGE_NAME
-
-/* Define to the full name and version of this package. */
-#undef PACKAGE_STRING
-
-/* Define to the one symbol short name of this package. */
-#undef PACKAGE_TARNAME
-
-/* Define to the version of this package. */
-#undef PACKAGE_VERSION
-
-/* Define as the system defined limit for number of signals */
-#undef PDC_MAX_SIGNALS
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#undef RETSIGTYPE
-
-/* Define to 1 if you have the ANSI C header files. */
-#undef STDC_HEADERS
-
-/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-#undef TIME_WITH_SYS_TIME
-
-/* Define if you want to use neXtaw library */
-#undef USE_NEXTAW
-
-/* Define if you want to use Xaw3d library */
-#undef USE_XAW3D
-
-/* Define XPointer is typedefed in X11/Xlib.h */
-#undef XPOINTER_TYPEDEFED
diff --git a/src/other/PDCurses/config.sub b/src/other/PDCurses/config.sub
deleted file mode 100644
index fab0aa3..0000000
--- a/src/other/PDCurses/config.sub
+++ /dev/null
@@ -1,1616 +0,0 @@
-#! /bin/sh
-# Configuration validation subroutine script.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
-#   Inc.
-
-timestamp='2006-09-20'
-
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine.  It does not imply ALL GNU software can.
-#
-# 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 2 of the License, 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 General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Please send patches to <config-patches at gnu.org>.  Submit a context
-# diff and a properly formatted ChangeLog entry.
-#
-# Configuration subroutine to validate and canonicalize a configuration type.
-# Supply the specified configuration type as an argument.
-# If it is invalid, we print an error message on stderr and exit with code 1.
-# Otherwise, we print the canonical config type on stdout and succeed.
-
-# This file is supposed to be the same for all GNU packages
-# and recognize all the CPU types, system types and aliases
-# that are meaningful with *any* GNU software.
-# Each package is responsible for reporting which valid configurations
-# it does not support.  The user should be able to distinguish
-# a failure to support a valid configuration from a meaningless
-# configuration.
-
-# The goal of this file is to map all the various variations of a given
-# machine specification into a single specification in the form:
-#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
-# or in some cases, the newer four-part form:
-#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
-# It is wrong to echo any other type of specification.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
-       $0 [OPTION] ALIAS
-
-Canonicalize a configuration name.
-
-Operation modes:
-  -h, --help         print this help, then exit
-  -t, --time-stamp   print date of last modification, then exit
-  -v, --version      print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.sub ($timestamp)
-
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-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."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
-  case $1 in
-    --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit ;;
-    --version | -v )
-       echo "$version" ; exit ;;
-    --help | --h* | -h )
-       echo "$usage"; exit ;;
-    -- )     # Stop option processing
-       shift; break ;;
-    - )	# Use stdin as input.
-       break ;;
-    -* )
-       echo "$me: invalid option $1$help"
-       exit 1 ;;
-
-    *local*)
-       # First pass through any local machine types.
-       echo $1
-       exit ;;
-
-    * )
-       break ;;
-  esac
-done
-
-case $# in
- 0) echo "$me: missing argument$help" >&2
-    exit 1;;
- 1) ;;
- *) echo "$me: too many arguments$help" >&2
-    exit 1;;
-esac
-
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
-  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
-  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
-  storm-chaos* | os2-emx* | rtmk-nova*)
-    os=-$maybe_os
-    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
-    ;;
-  *)
-    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
-    if [ $basic_machine != $1 ]
-    then os=`echo $1 | sed 's/.*-/-/'`
-    else os=; fi
-    ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work.  We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
-	-sun*os*)
-		# Prevent following clause from handling this invalid input.
-		;;
-	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
-	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
-	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
-	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-	-apple | -axis | -knuth | -cray)
-		os=
-		basic_machine=$1
-		;;
-	-sim | -cisco | -oki | -wec | -winbond)
-		os=
-		basic_machine=$1
-		;;
-	-scout)
-		;;
-	-wrs)
-		os=-vxworks
-		basic_machine=$1
-		;;
-	-chorusos*)
-		os=-chorusos
-		basic_machine=$1
-		;;
- 	-chorusrdb)
- 		os=-chorusrdb
-		basic_machine=$1
- 		;;
-	-hiux*)
-		os=-hiuxwe2
-		;;
-	-sco6)
-		os=-sco5v6
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco5)
-		os=-sco3.2v5
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco4)
-		os=-sco3.2v4
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco3.2.[4-9]*)
-		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco3.2v[4-9]*)
-		# Don't forget version if it is 3.2v4 or newer.
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco5v6*)
-		# Don't forget version if it is 3.2v4 or newer.
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco*)
-		os=-sco3.2v2
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-udk*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-isc)
-		os=-isc2.2
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-clix*)
-		basic_machine=clipper-intergraph
-		;;
-	-isc*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-lynx*)
-		os=-lynxos
-		;;
-	-ptx*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
-		;;
-	-windowsnt*)
-		os=`echo $os | sed -e 's/windowsnt/winnt/'`
-		;;
-	-psos*)
-		os=-psos
-		;;
-	-mint | -mint[0-9]*)
-		basic_machine=m68k-atari
-		os=-mint
-		;;
-esac
-
-# Decode aliases for certain CPU-COMPANY combinations.
-case $basic_machine in
-	# Recognize the basic CPU types without company name.
-	# Some are omitted here because they have special meanings below.
-	1750a | 580 \
-	| a29k \
-	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
-	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
-	| am33_2.0 \
-	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
-	| bfin \
-	| c4x | clipper \
-	| d10v | d30v | dlx | dsp16xx \
-	| fr30 | frv \
-	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
-	| i370 | i860 | i960 | ia64 \
-	| ip2k | iq2000 \
-	| m32c | m32r | m32rle | m68000 | m68k | m88k \
-	| maxq | mb | microblaze | mcore \
-	| mips | mipsbe | mipseb | mipsel | mipsle \
-	| mips16 \
-	| mips64 | mips64el \
-	| mips64vr | mips64vrel \
-	| mips64orion | mips64orionel \
-	| mips64vr4100 | mips64vr4100el \
-	| mips64vr4300 | mips64vr4300el \
-	| mips64vr5000 | mips64vr5000el \
-	| mips64vr5900 | mips64vr5900el \
-	| mipsisa32 | mipsisa32el \
-	| mipsisa32r2 | mipsisa32r2el \
-	| mipsisa64 | mipsisa64el \
-	| mipsisa64r2 | mipsisa64r2el \
-	| mipsisa64sb1 | mipsisa64sb1el \
-	| mipsisa64sr71k | mipsisa64sr71kel \
-	| mipstx39 | mipstx39el \
-	| mn10200 | mn10300 \
-	| mt \
-	| msp430 \
-	| nios | nios2 \
-	| ns16k | ns32k \
-	| or32 \
-	| pdp10 | pdp11 | pj | pjl \
-	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
-	| pyramid \
-	| score \
-	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
-	| sh64 | sh64le \
-	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
-	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
-	| spu | strongarm \
-	| tahoe | thumb | tic4x | tic80 | tron \
-	| v850 | v850e \
-	| we32k \
-	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
-	| z8k)
-		basic_machine=$basic_machine-unknown
-		;;
-	m6811 | m68hc11 | m6812 | m68hc12)
-		# Motorola 68HC11/12.
-		basic_machine=$basic_machine-unknown
-		os=-none
-		;;
-	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
-		;;
-	ms1)
-		basic_machine=mt-unknown
-		;;
-
-	# We use `pc' rather than `unknown'
-	# because (1) that's what they normally are, and
-	# (2) the word "unknown" tends to confuse beginning users.
-	i*86 | x86_64)
-	  basic_machine=$basic_machine-pc
-	  ;;
-	# Object if more than one company name word.
-	*-*-*)
-		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-		exit 1
-		;;
-	# Recognize the basic CPU types with company name.
-	580-* \
-	| a29k-* \
-	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
-	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
-	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
-	| avr-* | avr32-* \
-	| bfin-* | bs2000-* \
-	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
-	| clipper-* | craynv-* | cydra-* \
-	| d10v-* | d30v-* | dlx-* \
-	| elxsi-* \
-	| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
-	| h8300-* | h8500-* \
-	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
-	| i*86-* | i860-* | i960-* | ia64-* \
-	| ip2k-* | iq2000-* \
-	| m32c-* | m32r-* | m32rle-* \
-	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-	| m88110-* | m88k-* | maxq-* | mcore-* \
-	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
-	| mips16-* \
-	| mips64-* | mips64el-* \
-	| mips64vr-* | mips64vrel-* \
-	| mips64orion-* | mips64orionel-* \
-	| mips64vr4100-* | mips64vr4100el-* \
-	| mips64vr4300-* | mips64vr4300el-* \
-	| mips64vr5000-* | mips64vr5000el-* \
-	| mips64vr5900-* | mips64vr5900el-* \
-	| mipsisa32-* | mipsisa32el-* \
-	| mipsisa32r2-* | mipsisa32r2el-* \
-	| mipsisa64-* | mipsisa64el-* \
-	| mipsisa64r2-* | mipsisa64r2el-* \
-	| mipsisa64sb1-* | mipsisa64sb1el-* \
-	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
-	| mipstx39-* | mipstx39el-* \
-	| mmix-* \
-	| mt-* \
-	| msp430-* \
-	| nios-* | nios2-* \
-	| none-* | np1-* | ns16k-* | ns32k-* \
-	| orion-* \
-	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
-	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
-	| pyramid-* \
-	| romp-* | rs6000-* \
-	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
-	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
-	| sparclite-* \
-	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
-	| tahoe-* | thumb-* \
-	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
-	| tron-* \
-	| v850-* | v850e-* | vax-* \
-	| we32k-* \
-	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
-	| xstormy16-* | xtensa-* \
-	| ymp-* \
-	| z8k-*)
-		;;
-	# Recognize the various machine names and aliases which stand
-	# for a CPU type and a company and sometimes even an OS.
-	386bsd)
-		basic_machine=i386-unknown
-		os=-bsd
-		;;
-	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
-		basic_machine=m68000-att
-		;;
-	3b*)
-		basic_machine=we32k-att
-		;;
-	a29khif)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-    	abacus)
-		basic_machine=abacus-unknown
-		;;
-	adobe68k)
-		basic_machine=m68010-adobe
-		os=-scout
-		;;
-	alliant | fx80)
-		basic_machine=fx80-alliant
-		;;
-	altos | altos3068)
-		basic_machine=m68k-altos
-		;;
-	am29k)
-		basic_machine=a29k-none
-		os=-bsd
-		;;
-	amd64)
-		basic_machine=x86_64-pc
-		;;
-	amd64-*)
-		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	amdahl)
-		basic_machine=580-amdahl
-		os=-sysv
-		;;
-	amiga | amiga-*)
-		basic_machine=m68k-unknown
-		;;
-	amigaos | amigados)
-		basic_machine=m68k-unknown
-		os=-amigaos
-		;;
-	amigaunix | amix)
-		basic_machine=m68k-unknown
-		os=-sysv4
-		;;
-	apollo68)
-		basic_machine=m68k-apollo
-		os=-sysv
-		;;
-	apollo68bsd)
-		basic_machine=m68k-apollo
-		os=-bsd
-		;;
-	aux)
-		basic_machine=m68k-apple
-		os=-aux
-		;;
-	balance)
-		basic_machine=ns32k-sequent
-		os=-dynix
-		;;
-	c90)
-		basic_machine=c90-cray
-		os=-unicos
-		;;
-	convex-c1)
-		basic_machine=c1-convex
-		os=-bsd
-		;;
-	convex-c2)
-		basic_machine=c2-convex
-		os=-bsd
-		;;
-	convex-c32)
-		basic_machine=c32-convex
-		os=-bsd
-		;;
-	convex-c34)
-		basic_machine=c34-convex
-		os=-bsd
-		;;
-	convex-c38)
-		basic_machine=c38-convex
-		os=-bsd
-		;;
-	cray | j90)
-		basic_machine=j90-cray
-		os=-unicos
-		;;
-	craynv)
-		basic_machine=craynv-cray
-		os=-unicosmp
-		;;
-	cr16c)
-		basic_machine=cr16c-unknown
-		os=-elf
-		;;
-	crds | unos)
-		basic_machine=m68k-crds
-		;;
-	crisv32 | crisv32-* | etraxfs*)
-		basic_machine=crisv32-axis
-		;;
-	cris | cris-* | etrax*)
-		basic_machine=cris-axis
-		;;
-	crx)
-		basic_machine=crx-unknown
-		os=-elf
-		;;
-	da30 | da30-*)
-		basic_machine=m68k-da30
-		;;
-	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
-		basic_machine=mips-dec
-		;;
-	decsystem10* | dec10*)
-		basic_machine=pdp10-dec
-		os=-tops10
-		;;
-	decsystem20* | dec20*)
-		basic_machine=pdp10-dec
-		os=-tops20
-		;;
-	delta | 3300 | motorola-3300 | motorola-delta \
-	      | 3300-motorola | delta-motorola)
-		basic_machine=m68k-motorola
-		;;
-	delta88)
-		basic_machine=m88k-motorola
-		os=-sysv3
-		;;
-	djgpp)
-		basic_machine=i586-pc
-		os=-msdosdjgpp
-		;;
-	dpx20 | dpx20-*)
-		basic_machine=rs6000-bull
-		os=-bosx
-		;;
-	dpx2* | dpx2*-bull)
-		basic_machine=m68k-bull
-		os=-sysv3
-		;;
-	ebmon29k)
-		basic_machine=a29k-amd
-		os=-ebmon
-		;;
-	elxsi)
-		basic_machine=elxsi-elxsi
-		os=-bsd
-		;;
-	encore | umax | mmax)
-		basic_machine=ns32k-encore
-		;;
-	es1800 | OSE68k | ose68k | ose | OSE)
-		basic_machine=m68k-ericsson
-		os=-ose
-		;;
-	fx2800)
-		basic_machine=i860-alliant
-		;;
-	genix)
-		basic_machine=ns32k-ns
-		;;
-	gmicro)
-		basic_machine=tron-gmicro
-		os=-sysv
-		;;
-	go32)
-		basic_machine=i386-pc
-		os=-go32
-		;;
-	h3050r* | hiux*)
-		basic_machine=hppa1.1-hitachi
-		os=-hiuxwe2
-		;;
-	h8300hms)
-		basic_machine=h8300-hitachi
-		os=-hms
-		;;
-	h8300xray)
-		basic_machine=h8300-hitachi
-		os=-xray
-		;;
-	h8500hms)
-		basic_machine=h8500-hitachi
-		os=-hms
-		;;
-	harris)
-		basic_machine=m88k-harris
-		os=-sysv3
-		;;
-	hp300-*)
-		basic_machine=m68k-hp
-		;;
-	hp300bsd)
-		basic_machine=m68k-hp
-		os=-bsd
-		;;
-	hp300hpux)
-		basic_machine=m68k-hp
-		os=-hpux
-		;;
-	hp3k9[0-9][0-9] | hp9[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hp9k2[0-9][0-9] | hp9k31[0-9])
-		basic_machine=m68000-hp
-		;;
-	hp9k3[2-9][0-9])
-		basic_machine=m68k-hp
-		;;
-	hp9k6[0-9][0-9] | hp6[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hp9k7[0-79][0-9] | hp7[0-79][0-9])
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k78[0-9] | hp78[0-9])
-		# FIXME: really hppa2.0-hp
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
-		# FIXME: really hppa2.0-hp
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k8[0-9][13679] | hp8[0-9][13679])
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k8[0-9][0-9] | hp8[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hppa-next)
-		os=-nextstep3
-		;;
-	hppaosf)
-		basic_machine=hppa1.1-hp
-		os=-osf
-		;;
-	hppro)
-		basic_machine=hppa1.1-hp
-		os=-proelf
-		;;
-	i370-ibm* | ibm*)
-		basic_machine=i370-ibm
-		;;
-# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
-	i*86v32)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv32
-		;;
-	i*86v4*)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv4
-		;;
-	i*86v)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv
-		;;
-	i*86sol2)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-solaris2
-		;;
-	i386mach)
-		basic_machine=i386-mach
-		os=-mach
-		;;
-	i386-vsta | vsta)
-		basic_machine=i386-unknown
-		os=-vsta
-		;;
-	iris | iris4d)
-		basic_machine=mips-sgi
-		case $os in
-		    -irix*)
-			;;
-		    *)
-			os=-irix4
-			;;
-		esac
-		;;
-	isi68 | isi)
-		basic_machine=m68k-isi
-		os=-sysv
-		;;
-	m88k-omron*)
-		basic_machine=m88k-omron
-		;;
-	magnum | m3230)
-		basic_machine=mips-mips
-		os=-sysv
-		;;
-	merlin)
-		basic_machine=ns32k-utek
-		os=-sysv
-		;;
-	mingw32)
-		basic_machine=i386-pc
-		os=-mingw32
-		;;
-	miniframe)
-		basic_machine=m68000-convergent
-		;;
-	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
-		basic_machine=m68k-atari
-		os=-mint
-		;;
-	mips3*-*)
-		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
-		;;
-	mips3*)
-		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
-		;;
-	monitor)
-		basic_machine=m68k-rom68k
-		os=-coff
-		;;
-	morphos)
-		basic_machine=powerpc-unknown
-		os=-morphos
-		;;
-	msdos)
-		basic_machine=i386-pc
-		os=-msdos
-		;;
-	ms1-*)
-		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
-		;;
-	mvs)
-		basic_machine=i370-ibm
-		os=-mvs
-		;;
-	ncr3000)
-		basic_machine=i486-ncr
-		os=-sysv4
-		;;
-	netbsd386)
-		basic_machine=i386-unknown
-		os=-netbsd
-		;;
-	netwinder)
-		basic_machine=armv4l-rebel
-		os=-linux
-		;;
-	news | news700 | news800 | news900)
-		basic_machine=m68k-sony
-		os=-newsos
-		;;
-	news1000)
-		basic_machine=m68030-sony
-		os=-newsos
-		;;
-	news-3600 | risc-news)
-		basic_machine=mips-sony
-		os=-newsos
-		;;
-	necv70)
-		basic_machine=v70-nec
-		os=-sysv
-		;;
-	next | m*-next )
-		basic_machine=m68k-next
-		case $os in
-		    -nextstep* )
-			;;
-		    -ns2*)
-		      os=-nextstep2
-			;;
-		    *)
-		      os=-nextstep3
-			;;
-		esac
-		;;
-	nh3000)
-		basic_machine=m68k-harris
-		os=-cxux
-		;;
-	nh[45]000)
-		basic_machine=m88k-harris
-		os=-cxux
-		;;
-	nindy960)
-		basic_machine=i960-intel
-		os=-nindy
-		;;
-	mon960)
-		basic_machine=i960-intel
-		os=-mon960
-		;;
-	nonstopux)
-		basic_machine=mips-compaq
-		os=-nonstopux
-		;;
-	np1)
-		basic_machine=np1-gould
-		;;
-	nsr-tandem)
-		basic_machine=nsr-tandem
-		;;
-	op50n-* | op60c-*)
-		basic_machine=hppa1.1-oki
-		os=-proelf
-		;;
-	openrisc | openrisc-*)
-		basic_machine=or32-unknown
-		;;
-	os400)
-		basic_machine=powerpc-ibm
-		os=-os400
-		;;
-	OSE68000 | ose68000)
-		basic_machine=m68000-ericsson
-		os=-ose
-		;;
-	os68k)
-		basic_machine=m68k-none
-		os=-os68k
-		;;
-	pa-hitachi)
-		basic_machine=hppa1.1-hitachi
-		os=-hiuxwe2
-		;;
-	paragon)
-		basic_machine=i860-intel
-		os=-osf
-		;;
-	pbd)
-		basic_machine=sparc-tti
-		;;
-	pbb)
-		basic_machine=m68k-tti
-		;;
-	pc532 | pc532-*)
-		basic_machine=ns32k-pc532
-		;;
-	pc98)
-		basic_machine=i386-pc
-		;;
-	pc98-*)
-		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentium | p5 | k5 | k6 | nexgen | viac3)
-		basic_machine=i586-pc
-		;;
-	pentiumpro | p6 | 6x86 | athlon | athlon_*)
-		basic_machine=i686-pc
-		;;
-	pentiumii | pentium2 | pentiumiii | pentium3)
-		basic_machine=i686-pc
-		;;
-	pentium4)
-		basic_machine=i786-pc
-		;;
-	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
-		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentiumpro-* | p6-* | 6x86-* | athlon-*)
-		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
-		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentium4-*)
-		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pn)
-		basic_machine=pn-gould
-		;;
-	power)	basic_machine=power-ibm
-		;;
-	ppc)	basic_machine=powerpc-unknown
-		;;
-	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ppcle | powerpclittle | ppc-le | powerpc-little)
-		basic_machine=powerpcle-unknown
-		;;
-	ppcle-* | powerpclittle-*)
-		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ppc64)	basic_machine=powerpc64-unknown
-		;;
-	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
-		basic_machine=powerpc64le-unknown
-		;;
-	ppc64le-* | powerpc64little-*)
-		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ps2)
-		basic_machine=i386-ibm
-		;;
-	pw32)
-		basic_machine=i586-unknown
-		os=-pw32
-		;;
-	rdos)
-		basic_machine=i386-pc
-		os=-rdos
-		;;
-	rom68k)
-		basic_machine=m68k-rom68k
-		os=-coff
-		;;
-	rm[46]00)
-		basic_machine=mips-siemens
-		;;
-	rtpc | rtpc-*)
-		basic_machine=romp-ibm
-		;;
-	s390 | s390-*)
-		basic_machine=s390-ibm
-		;;
-	s390x | s390x-*)
-		basic_machine=s390x-ibm
-		;;
-	sa29200)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-	sb1)
-		basic_machine=mipsisa64sb1-unknown
-		;;
-	sb1el)
-		basic_machine=mipsisa64sb1el-unknown
-		;;
-	sde)
-		basic_machine=mipsisa32-sde
-		os=-elf
-		;;
-	sei)
-		basic_machine=mips-sei
-		os=-seiux
-		;;
-	sequent)
-		basic_machine=i386-sequent
-		;;
-	sh)
-		basic_machine=sh-hitachi
-		os=-hms
-		;;
-	sh64)
-		basic_machine=sh64-unknown
-		;;
-	sparclite-wrs | simso-wrs)
-		basic_machine=sparclite-wrs
-		os=-vxworks
-		;;
-	sps7)
-		basic_machine=m68k-bull
-		os=-sysv2
-		;;
-	spur)
-		basic_machine=spur-unknown
-		;;
-	st2000)
-		basic_machine=m68k-tandem
-		;;
-	stratus)
-		basic_machine=i860-stratus
-		os=-sysv4
-		;;
-	sun2)
-		basic_machine=m68000-sun
-		;;
-	sun2os3)
-		basic_machine=m68000-sun
-		os=-sunos3
-		;;
-	sun2os4)
-		basic_machine=m68000-sun
-		os=-sunos4
-		;;
-	sun3os3)
-		basic_machine=m68k-sun
-		os=-sunos3
-		;;
-	sun3os4)
-		basic_machine=m68k-sun
-		os=-sunos4
-		;;
-	sun4os3)
-		basic_machine=sparc-sun
-		os=-sunos3
-		;;
-	sun4os4)
-		basic_machine=sparc-sun
-		os=-sunos4
-		;;
-	sun4sol2)
-		basic_machine=sparc-sun
-		os=-solaris2
-		;;
-	sun3 | sun3-*)
-		basic_machine=m68k-sun
-		;;
-	sun4)
-		basic_machine=sparc-sun
-		;;
-	sun386 | sun386i | roadrunner)
-		basic_machine=i386-sun
-		;;
-	sv1)
-		basic_machine=sv1-cray
-		os=-unicos
-		;;
-	symmetry)
-		basic_machine=i386-sequent
-		os=-dynix
-		;;
-	t3e)
-		basic_machine=alphaev5-cray
-		os=-unicos
-		;;
-	t90)
-		basic_machine=t90-cray
-		os=-unicos
-		;;
-	tic54x | c54x*)
-		basic_machine=tic54x-unknown
-		os=-coff
-		;;
-	tic55x | c55x*)
-		basic_machine=tic55x-unknown
-		os=-coff
-		;;
-	tic6x | c6x*)
-		basic_machine=tic6x-unknown
-		os=-coff
-		;;
-	tx39)
-		basic_machine=mipstx39-unknown
-		;;
-	tx39el)
-		basic_machine=mipstx39el-unknown
-		;;
-	toad1)
-		basic_machine=pdp10-xkl
-		os=-tops20
-		;;
-	tower | tower-32)
-		basic_machine=m68k-ncr
-		;;
-	tpf)
-		basic_machine=s390x-ibm
-		os=-tpf
-		;;
-	udi29k)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-	ultra3)
-		basic_machine=a29k-nyu
-		os=-sym1
-		;;
-	v810 | necv810)
-		basic_machine=v810-nec
-		os=-none
-		;;
-	vaxv)
-		basic_machine=vax-dec
-		os=-sysv
-		;;
-	vms)
-		basic_machine=vax-dec
-		os=-vms
-		;;
-	vpp*|vx|vx-*)
-		basic_machine=f301-fujitsu
-		;;
-	vxworks960)
-		basic_machine=i960-wrs
-		os=-vxworks
-		;;
-	vxworks68)
-		basic_machine=m68k-wrs
-		os=-vxworks
-		;;
-	vxworks29k)
-		basic_machine=a29k-wrs
-		os=-vxworks
-		;;
-	w65*)
-		basic_machine=w65-wdc
-		os=-none
-		;;
-	w89k-*)
-		basic_machine=hppa1.1-winbond
-		os=-proelf
-		;;
-	xbox)
-		basic_machine=i686-pc
-		os=-mingw32
-		;;
-	xps | xps100)
-		basic_machine=xps100-honeywell
-		;;
-	ymp)
-		basic_machine=ymp-cray
-		os=-unicos
-		;;
-	z8k-*-coff)
-		basic_machine=z8k-unknown
-		os=-sim
-		;;
-	none)
-		basic_machine=none-none
-		os=-none
-		;;
-
-# Here we handle the default manufacturer of certain CPU types.  It is in
-# some cases the only manufacturer, in others, it is the most popular.
-	w89k)
-		basic_machine=hppa1.1-winbond
-		;;
-	op50n)
-		basic_machine=hppa1.1-oki
-		;;
-	op60c)
-		basic_machine=hppa1.1-oki
-		;;
-	romp)
-		basic_machine=romp-ibm
-		;;
-	mmix)
-		basic_machine=mmix-knuth
-		;;
-	rs6000)
-		basic_machine=rs6000-ibm
-		;;
-	vax)
-		basic_machine=vax-dec
-		;;
-	pdp10)
-		# there are many clones, so DEC is not a safe bet
-		basic_machine=pdp10-unknown
-		;;
-	pdp11)
-		basic_machine=pdp11-dec
-		;;
-	we32k)
-		basic_machine=we32k-att
-		;;
-	sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
-		basic_machine=sh-unknown
-		;;
-	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
-		basic_machine=sparc-sun
-		;;
-	cydra)
-		basic_machine=cydra-cydrome
-		;;
-	orion)
-		basic_machine=orion-highlevel
-		;;
-	orion105)
-		basic_machine=clipper-highlevel
-		;;
-	mac | mpw | mac-mpw)
-		basic_machine=m68k-apple
-		;;
-	pmac | pmac-mpw)
-		basic_machine=powerpc-apple
-		;;
-	*-unknown)
-		# Make sure to match an already-canonicalized machine name.
-		;;
-	*)
-		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-		exit 1
-		;;
-esac
-
-# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
-	*-digital*)
-		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
-		;;
-	*-commodore*)
-		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
-		;;
-	*)
-		;;
-esac
-
-# Decode manufacturer-specific aliases for certain operating systems.
-
-if [ x"$os" != x"" ]
-then
-case $os in
-        # First match some system type aliases
-        # that might get confused with valid system types.
-	# -solaris* is a basic system type, with this one exception.
-	-solaris1 | -solaris1.*)
-		os=`echo $os | sed -e 's|solaris1|sunos4|'`
-		;;
-	-solaris)
-		os=-solaris2
-		;;
-	-svr4*)
-		os=-sysv4
-		;;
-	-unixware*)
-		os=-sysv4.2uw
-		;;
-	-gnu/linux*)
-		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
-		;;
-	# First accept the basic system types.
-	# The portable systems comes first.
-	# Each alternative MUST END IN A *, to match a version number.
-	# -sysv* is not here because it comes later, after sysvr4.
-	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
-	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
-	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
-	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-	      | -aos* \
-	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
-	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
-	      | -openbsd* | -solidbsd* \
-	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
-	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
-	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
-	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-	      | -chorusos* | -chorusrdb* \
-	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
-	      | -uxpv* | -beos* | -mpeix* | -udk* \
-	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
-	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
-	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
-	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
-	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
-	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-	      | -skyos* | -haiku* | -rdos* | -toppers*)
-	# Remember, each alternative MUST END IN *, to match a version number.
-		;;
-	-qnx*)
-		case $basic_machine in
-		    x86-* | i*86-*)
-			;;
-		    *)
-			os=-nto$os
-			;;
-		esac
-		;;
-	-nto-qnx*)
-		;;
-	-nto*)
-		os=`echo $os | sed -e 's|nto|nto-qnx|'`
-		;;
-	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
-	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
-	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
-		;;
-	-mac*)
-		os=`echo $os | sed -e 's|mac|macos|'`
-		;;
-	-linux-dietlibc)
-		os=-linux-dietlibc
-		;;
-	-linux*)
-		os=`echo $os | sed -e 's|linux|linux-gnu|'`
-		;;
-	-sunos5*)
-		os=`echo $os | sed -e 's|sunos5|solaris2|'`
-		;;
-	-sunos6*)
-		os=`echo $os | sed -e 's|sunos6|solaris3|'`
-		;;
-	-opened*)
-		os=-openedition
-		;;
-        -os400*)
-		os=-os400
-		;;
-	-wince*)
-		os=-wince
-		;;
-	-osfrose*)
-		os=-osfrose
-		;;
-	-osf*)
-		os=-osf
-		;;
-	-utek*)
-		os=-bsd
-		;;
-	-dynix*)
-		os=-bsd
-		;;
-	-acis*)
-		os=-aos
-		;;
-	-atheos*)
-		os=-atheos
-		;;
-	-syllable*)
-		os=-syllable
-		;;
-	-386bsd)
-		os=-bsd
-		;;
-	-ctix* | -uts*)
-		os=-sysv
-		;;
-	-nova*)
-		os=-rtmk-nova
-		;;
-	-ns2 )
-		os=-nextstep2
-		;;
-	-nsk*)
-		os=-nsk
-		;;
-	# Preserve the version number of sinix5.
-	-sinix5.*)
-		os=`echo $os | sed -e 's|sinix|sysv|'`
-		;;
-	-sinix*)
-		os=-sysv4
-		;;
-        -tpf*)
-		os=-tpf
-		;;
-	-triton*)
-		os=-sysv3
-		;;
-	-oss*)
-		os=-sysv3
-		;;
-	-svr4)
-		os=-sysv4
-		;;
-	-svr3)
-		os=-sysv3
-		;;
-	-sysvr4)
-		os=-sysv4
-		;;
-	# This must come after -sysvr4.
-	-sysv*)
-		;;
-	-ose*)
-		os=-ose
-		;;
-	-es1800*)
-		os=-ose
-		;;
-	-xenix)
-		os=-xenix
-		;;
-	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-		os=-mint
-		;;
-	-aros*)
-		os=-aros
-		;;
-	-kaos*)
-		os=-kaos
-		;;
-	-zvmoe)
-		os=-zvmoe
-		;;
-	-none)
-		;;
-	*)
-		# Get rid of the `-' at the beginning of $os.
-		os=`echo $os | sed 's/[^-]*-//'`
-		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
-		exit 1
-		;;
-esac
-else
-
-# Here we handle the default operating systems that come with various machines.
-# The value should be what the vendor currently ships out the door with their
-# machine or put another way, the most popular os provided with the machine.
-
-# Note that if you're going to try to match "-MANUFACTURER" here (say,
-# "-sun"), then you have to tell the case statement up towards the top
-# that MANUFACTURER isn't an operating system.  Otherwise, code above
-# will signal an error saying that MANUFACTURER isn't an operating
-# system, and we'll never get to this point.
-
-case $basic_machine in
-        score-*)
-		os=-elf
-		;;
-        spu-*)
-		os=-elf
-		;;
-	*-acorn)
-		os=-riscix1.2
-		;;
-	arm*-rebel)
-		os=-linux
-		;;
-	arm*-semi)
-		os=-aout
-		;;
-        c4x-* | tic4x-*)
-        	os=-coff
-		;;
-	# This must come before the *-dec entry.
-	pdp10-*)
-		os=-tops20
-		;;
-	pdp11-*)
-		os=-none
-		;;
-	*-dec | vax-*)
-		os=-ultrix4.2
-		;;
-	m68*-apollo)
-		os=-domain
-		;;
-	i386-sun)
-		os=-sunos4.0.2
-		;;
-	m68000-sun)
-		os=-sunos3
-		# This also exists in the configure program, but was not the
-		# default.
-		# os=-sunos4
-		;;
-	m68*-cisco)
-		os=-aout
-		;;
-	mips*-cisco)
-		os=-elf
-		;;
-	mips*-*)
-		os=-elf
-		;;
-	or32-*)
-		os=-coff
-		;;
-	*-tti)	# must be before sparc entry or we get the wrong os.
-		os=-sysv3
-		;;
-	sparc-* | *-sun)
-		os=-sunos4.1.1
-		;;
-	*-be)
-		os=-beos
-		;;
-	*-haiku)
-		os=-haiku
-		;;
-	*-ibm)
-		os=-aix
-		;;
-    	*-knuth)
-		os=-mmixware
-		;;
-	*-wec)
-		os=-proelf
-		;;
-	*-winbond)
-		os=-proelf
-		;;
-	*-oki)
-		os=-proelf
-		;;
-	*-hp)
-		os=-hpux
-		;;
-	*-hitachi)
-		os=-hiux
-		;;
-	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
-		os=-sysv
-		;;
-	*-cbm)
-		os=-amigaos
-		;;
-	*-dg)
-		os=-dgux
-		;;
-	*-dolphin)
-		os=-sysv3
-		;;
-	m68k-ccur)
-		os=-rtu
-		;;
-	m88k-omron*)
-		os=-luna
-		;;
-	*-next )
-		os=-nextstep
-		;;
-	*-sequent)
-		os=-ptx
-		;;
-	*-crds)
-		os=-unos
-		;;
-	*-ns)
-		os=-genix
-		;;
-	i370-*)
-		os=-mvs
-		;;
-	*-next)
-		os=-nextstep3
-		;;
-	*-gould)
-		os=-sysv
-		;;
-	*-highlevel)
-		os=-bsd
-		;;
-	*-encore)
-		os=-bsd
-		;;
-	*-sgi)
-		os=-irix
-		;;
-	*-siemens)
-		os=-sysv4
-		;;
-	*-masscomp)
-		os=-rtu
-		;;
-	f30[01]-fujitsu | f700-fujitsu)
-		os=-uxpv
-		;;
-	*-rom68k)
-		os=-coff
-		;;
-	*-*bug)
-		os=-coff
-		;;
-	*-apple)
-		os=-macos
-		;;
-	*-atari*)
-		os=-mint
-		;;
-	*)
-		os=-none
-		;;
-esac
-fi
-
-# Here we handle the case where we know the os, and the CPU type, but not the
-# manufacturer.  We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
-	*-unknown)
-		case $os in
-			-riscix*)
-				vendor=acorn
-				;;
-			-sunos*)
-				vendor=sun
-				;;
-			-aix*)
-				vendor=ibm
-				;;
-			-beos*)
-				vendor=be
-				;;
-			-hpux*)
-				vendor=hp
-				;;
-			-mpeix*)
-				vendor=hp
-				;;
-			-hiux*)
-				vendor=hitachi
-				;;
-			-unos*)
-				vendor=crds
-				;;
-			-dgux*)
-				vendor=dg
-				;;
-			-luna*)
-				vendor=omron
-				;;
-			-genix*)
-				vendor=ns
-				;;
-			-mvs* | -opened*)
-				vendor=ibm
-				;;
-			-os400*)
-				vendor=ibm
-				;;
-			-ptx*)
-				vendor=sequent
-				;;
-			-tpf*)
-				vendor=ibm
-				;;
-			-vxsim* | -vxworks* | -windiss*)
-				vendor=wrs
-				;;
-			-aux*)
-				vendor=apple
-				;;
-			-hms*)
-				vendor=hitachi
-				;;
-			-mpw* | -macos*)
-				vendor=apple
-				;;
-			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-				vendor=atari
-				;;
-			-vos*)
-				vendor=stratus
-				;;
-		esac
-		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
-		;;
-esac
-
-echo $basic_machine$os
-exit
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/src/other/PDCurses/configure b/src/other/PDCurses/configure
deleted file mode 100644
index 2d094bc..0000000
--- a/src/other/PDCurses/configure
+++ /dev/null
@@ -1,6738 +0,0 @@
-#! /bin/sh
-# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for PDCurses 3.4.
-#
-# Report bugs to <wmcbrine at users.sf.net>.
-#
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-## --------------------- ##
-## M4sh Initialization.  ##
-## --------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-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
-
-
-
-
-# PATH needs CR
-# 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
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  as_unset=unset
-else
-  as_unset=false
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-as_nl='
-'
-IFS=" ""	$as_nl"
-
-# Find who we are.  Look in the path if we contain no directory separator.
-case $0 in
-  *[\\/]* ) as_myself=$0 ;;
-  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  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
-  echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  { (exit 1); exit 1; }
-fi
-
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-for as_var in \
-  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-  LC_TELEPHONE LC_TIME
-do
-  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
-    eval $as_var=C; export $as_var
-  else
-    ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
-  fi
-done
-
-# Required to use basename.
-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
-
-
-# Name of the executable.
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-	 X"$0" : 'X\(//\)$' \| \
-	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-
-# CDPATH.
-$as_unset CDPATH
-
-
-if test "x$CONFIG_SHELL" = x; then
-  if (eval ":") 2>/dev/null; then
-  as_have_required=yes
-else
-  as_have_required=no
-fi
-
-  if test $as_have_required = yes && 	 (eval ":
-(as_func_return () {
-  (exit \$1)
-}
-as_func_success () {
-  as_func_return 0
-}
-as_func_failure () {
-  as_func_return 1
-}
-as_func_ret_success () {
-  return 0
-}
-as_func_ret_failure () {
-  return 1
-}
-
-exitcode=0
-if as_func_success; then
-  :
-else
-  exitcode=1
-  echo as_func_success failed.
-fi
-
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
-fi
-
-if as_func_ret_success; then
-  :
-else
-  exitcode=1
-  echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
-  :
-else
-  exitcode=1
-  echo positional parameters were not saved.
-fi
-
-test \$exitcode = 0) || { (exit 1); exit 1; }
-
-(
-  as_lineno_1=\$LINENO
-  as_lineno_2=\$LINENO
-  test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" &&
-  test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; }
-") 2> /dev/null; then
-  :
-else
-  as_candidate_shells=
-    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  case $as_dir in
-	 /*)
-	   for as_base in sh bash ksh sh5; do
-	     as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
-	   done;;
-       esac
-done
-IFS=$as_save_IFS
-
-
-      for as_shell in $as_candidate_shells $SHELL; do
-	 # Try only shells that exist, to save several forks.
-	 if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-		{ ("$as_shell") 2> /dev/null <<\_ASEOF
-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
-
-
-:
-_ASEOF
-}; then
-  CONFIG_SHELL=$as_shell
-	       as_have_required=yes
-	       if { "$as_shell" 2> /dev/null <<\_ASEOF
-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
-
-
-:
-(as_func_return () {
-  (exit $1)
-}
-as_func_success () {
-  as_func_return 0
-}
-as_func_failure () {
-  as_func_return 1
-}
-as_func_ret_success () {
-  return 0
-}
-as_func_ret_failure () {
-  return 1
-}
-
-exitcode=0
-if as_func_success; then
-  :
-else
-  exitcode=1
-  echo as_func_success failed.
-fi
-
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
-fi
-
-if as_func_ret_success; then
-  :
-else
-  exitcode=1
-  echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = "$1" ); then
-  :
-else
-  exitcode=1
-  echo positional parameters were not saved.
-fi
-
-test $exitcode = 0) || { (exit 1); exit 1; }
-
-(
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
-
-_ASEOF
-}; then
-  break
-fi
-
-fi
-
-      done
-
-      if test "x$CONFIG_SHELL" != x; then
-  for as_var in BASH_ENV ENV
-        do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
-        done
-        export CONFIG_SHELL
-        exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
-fi
-
-
-    if test $as_have_required = no; then
-  echo This script requires a shell more modern than all the
-      echo shells that I found on your system.  Please install a
-      echo modern shell, or manually run the script under such a
-      echo shell if you do have one.
-      { (exit 1); exit 1; }
-fi
-
-
-fi
-
-fi
-
-
-
-(eval "as_func_return () {
-  (exit \$1)
-}
-as_func_success () {
-  as_func_return 0
-}
-as_func_failure () {
-  as_func_return 1
-}
-as_func_ret_success () {
-  return 0
-}
-as_func_ret_failure () {
-  return 1
-}
-
-exitcode=0
-if as_func_success; then
-  :
-else
-  exitcode=1
-  echo as_func_success failed.
-fi
-
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
-fi
-
-if as_func_ret_success; then
-  :
-else
-  exitcode=1
-  echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
-  :
-else
-  exitcode=1
-  echo positional parameters were not saved.
-fi
-
-test \$exitcode = 0") || {
-  echo No shell found that supports shell functions.
-  echo Please tell autoconf at gnu.org about your system,
-  echo including any error possibly output before this
-  echo message
-}
-
-
-
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
-
-  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
-  # uniformly replaced by the line number.  The first 'sed' inserts a
-  # line-number line after each line using $LINENO; the second 'sed'
-  # does the real work.  The second script uses 'N' to pair each
-  # line-number line with the line containing $LINENO, and appends
-  # trailing '-' during substitution so that $LINENO is not a special
-  # case at line end.
-  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
-  # scripts with optimization help from Paolo Bonzini.  Blame Lee
-  # E. McMahon (1931-1989) for sed's syntax.  :-)
-  sed -n '
-    p
-    /[$]LINENO/=
-  ' <$as_myself |
-    sed '
-      s/[$]LINENO.*/&-/
-      t lineno
-      b
-      :lineno
-      N
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$as_me.lineno &&
-  chmod +x "$as_me.lineno" ||
-    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
-   { (exit 1); exit 1; }; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in
--n*)
-  case `echo 'x\c'` in
-  *c*) ECHO_T='	';;	# ECHO_T is single tab character.
-  *)   ECHO_C='\c';;
-  esac;;
-*)
-  ECHO_N='-n';;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-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
-fi
-echo >conf$$.file
-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 -p'.
-  ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-    as_ln_s='cp -p'
-elif ln conf$$.file conf$$ 2>/dev/null; then
-  as_ln_s=ln
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p=:
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-        test -d "$1/.";
-      else
-	case $1 in
-        -*)set "./$1";;
-	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
-	???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# 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 7<&0 </dev/null 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIBOBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-# Identity of this package.
-PACKAGE_NAME='PDCurses'
-PACKAGE_TARNAME='PDCurses'
-PACKAGE_VERSION='3.4'
-PACKAGE_STRING='PDCurses 3.4'
-PACKAGE_BUGREPORT='wmcbrine at users.sf.net'
-
-ac_unique_file="curspriv.h"
-# Factoring default headers for most tests.
-ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-# endif
-#endif
-#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-#  include <memory.h>
-# endif
-# include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif"
-
-ac_subst_vars='SHELL
-PATH_SEPARATOR
-PACKAGE_NAME
-PACKAGE_TARNAME
-PACKAGE_VERSION
-PACKAGE_STRING
-PACKAGE_BUGREPORT
-exec_prefix
-prefix
-program_transform_name
-bindir
-sbindir
-libexecdir
-datarootdir
-datadir
-sysconfdir
-sharedstatedir
-localstatedir
-includedir
-oldincludedir
-docdir
-infodir
-htmldir
-dvidir
-pdfdir
-psdir
-libdir
-localedir
-mandir
-DEFS
-ECHO_C
-ECHO_N
-ECHO_T
-LIBS
-build_alias
-host_alias
-target_alias
-CC
-CFLAGS
-LDFLAGS
-CPPFLAGS
-ac_ct_CC
-EXEEXT
-OBJEXT
-build
-build_cpu
-build_vendor
-build_os
-host
-host_cpu
-host_vendor
-host_os
-target
-target_cpu
-target_vendor
-target_os
-SYS_DEFS
-RANLIB
-INSTALL_PROGRAM
-INSTALL_SCRIPT
-INSTALL_DATA
-SET_MAKE
-CPP
-GREP
-EGREP
-MH_EXTRA_LIBS
-XMKMF
-MH_XINC_DIR
-MH_XLIBS
-PURIFY
-SHLPST
-DYN_COMP
-LD_RXLIB1
-SHLPRE
-SHL_TARGETS
-O2SAVE
-CC2O
-SAVE2O
-RXPACKEXPORTS
-LIBOBJS
-LTLIBOBJS'
-ac_subst_files=''
-      ac_precious_vars='build_alias
-host_alias
-target_alias
-CC
-CFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS
-CPP
-XMKMF'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
-  # If the previous option needs an argument, assign it.
-  if test -n "$ac_prev"; then
-    eval $ac_prev=\$ac_option
-    ac_prev=
-    continue
-  fi
-
-  case $ac_option in
-  *=*)	ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
-  *)	ac_optarg=yes ;;
-  esac
-
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
-  case $ac_dashdash$ac_option in
-  --)
-    ac_dashdash=yes ;;
-
-  -bindir | --bindir | --bindi | --bind | --bin | --bi)
-    ac_prev=bindir ;;
-  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
-    bindir=$ac_optarg ;;
-
-  -build | --build | --buil | --bui | --bu)
-    ac_prev=build_alias ;;
-  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
-    build_alias=$ac_optarg ;;
-
-  -cache-file | --cache-file | --cache-fil | --cache-fi \
-  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
-    ac_prev=cache_file ;;
-  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
-  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
-    cache_file=$ac_optarg ;;
-
-  --config-cache | -C)
-    cache_file=config.cache ;;
-
-  -datadir | --datadir | --datadi | --datad)
-    ac_prev=datadir ;;
-  -datadir=* | --datadir=* | --datadi=* | --datad=*)
-    datadir=$ac_optarg ;;
-
-  -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
-  | --dataroo | --dataro | --datar)
-    ac_prev=datarootdir ;;
-  -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
-  | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
-    datarootdir=$ac_optarg ;;
-
-  -disable-* | --disable-*)
-    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
-   { (exit 1); exit 1; }; }
-    ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
-    eval enable_$ac_feature=no ;;
-
-  -docdir | --docdir | --docdi | --doc | --do)
-    ac_prev=docdir ;;
-  -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
-    docdir=$ac_optarg ;;
-
-  -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
-    ac_prev=dvidir ;;
-  -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
-    dvidir=$ac_optarg ;;
-
-  -enable-* | --enable-*)
-    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
-   { (exit 1); exit 1; }; }
-    ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
-    eval enable_$ac_feature=\$ac_optarg ;;
-
-  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
-  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
-  | --exec | --exe | --ex)
-    ac_prev=exec_prefix ;;
-  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
-  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
-  | --exec=* | --exe=* | --ex=*)
-    exec_prefix=$ac_optarg ;;
-
-  -gas | --gas | --ga | --g)
-    # Obsolete; use --with-gas.
-    with_gas=yes ;;
-
-  -help | --help | --hel | --he | -h)
-    ac_init_help=long ;;
-  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
-    ac_init_help=recursive ;;
-  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
-    ac_init_help=short ;;
-
-  -host | --host | --hos | --ho)
-    ac_prev=host_alias ;;
-  -host=* | --host=* | --hos=* | --ho=*)
-    host_alias=$ac_optarg ;;
-
-  -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
-    ac_prev=htmldir ;;
-  -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
-  | --ht=*)
-    htmldir=$ac_optarg ;;
-
-  -includedir | --includedir | --includedi | --included | --include \
-  | --includ | --inclu | --incl | --inc)
-    ac_prev=includedir ;;
-  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
-  | --includ=* | --inclu=* | --incl=* | --inc=*)
-    includedir=$ac_optarg ;;
-
-  -infodir | --infodir | --infodi | --infod | --info | --inf)
-    ac_prev=infodir ;;
-  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
-    infodir=$ac_optarg ;;
-
-  -libdir | --libdir | --libdi | --libd)
-    ac_prev=libdir ;;
-  -libdir=* | --libdir=* | --libdi=* | --libd=*)
-    libdir=$ac_optarg ;;
-
-  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
-  | --libexe | --libex | --libe)
-    ac_prev=libexecdir ;;
-  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
-  | --libexe=* | --libex=* | --libe=*)
-    libexecdir=$ac_optarg ;;
-
-  -localedir | --localedir | --localedi | --localed | --locale)
-    ac_prev=localedir ;;
-  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
-    localedir=$ac_optarg ;;
-
-  -localstatedir | --localstatedir | --localstatedi | --localstated \
-  | --localstate | --localstat | --localsta | --localst | --locals)
-    ac_prev=localstatedir ;;
-  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
-  | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
-    localstatedir=$ac_optarg ;;
-
-  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
-    ac_prev=mandir ;;
-  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
-    mandir=$ac_optarg ;;
-
-  -nfp | --nfp | --nf)
-    # Obsolete; use --without-fp.
-    with_fp=no ;;
-
-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-  | --no-cr | --no-c | -n)
-    no_create=yes ;;
-
-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
-    no_recursion=yes ;;
-
-  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
-  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
-  | --oldin | --oldi | --old | --ol | --o)
-    ac_prev=oldincludedir ;;
-  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
-  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
-  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
-    oldincludedir=$ac_optarg ;;
-
-  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
-    ac_prev=prefix ;;
-  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
-    prefix=$ac_optarg ;;
-
-  -program-prefix | --program-prefix | --program-prefi | --program-pref \
-  | --program-pre | --program-pr | --program-p)
-    ac_prev=program_prefix ;;
-  -program-prefix=* | --program-prefix=* | --program-prefi=* \
-  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
-    program_prefix=$ac_optarg ;;
-
-  -program-suffix | --program-suffix | --program-suffi | --program-suff \
-  | --program-suf | --program-su | --program-s)
-    ac_prev=program_suffix ;;
-  -program-suffix=* | --program-suffix=* | --program-suffi=* \
-  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
-    program_suffix=$ac_optarg ;;
-
-  -program-transform-name | --program-transform-name \
-  | --program-transform-nam | --program-transform-na \
-  | --program-transform-n | --program-transform- \
-  | --program-transform | --program-transfor \
-  | --program-transfo | --program-transf \
-  | --program-trans | --program-tran \
-  | --progr-tra | --program-tr | --program-t)
-    ac_prev=program_transform_name ;;
-  -program-transform-name=* | --program-transform-name=* \
-  | --program-transform-nam=* | --program-transform-na=* \
-  | --program-transform-n=* | --program-transform-=* \
-  | --program-transform=* | --program-transfor=* \
-  | --program-transfo=* | --program-transf=* \
-  | --program-trans=* | --program-tran=* \
-  | --progr-tra=* | --program-tr=* | --program-t=*)
-    program_transform_name=$ac_optarg ;;
-
-  -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
-    ac_prev=pdfdir ;;
-  -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
-    pdfdir=$ac_optarg ;;
-
-  -psdir | --psdir | --psdi | --psd | --ps)
-    ac_prev=psdir ;;
-  -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
-    psdir=$ac_optarg ;;
-
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil)
-    silent=yes ;;
-
-  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
-    ac_prev=sbindir ;;
-  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
-  | --sbi=* | --sb=*)
-    sbindir=$ac_optarg ;;
-
-  -sharedstatedir | --sharedstatedir | --sharedstatedi \
-  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
-  | --sharedst | --shareds | --shared | --share | --shar \
-  | --sha | --sh)
-    ac_prev=sharedstatedir ;;
-  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
-  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
-  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
-  | --sha=* | --sh=*)
-    sharedstatedir=$ac_optarg ;;
-
-  -site | --site | --sit)
-    ac_prev=site ;;
-  -site=* | --site=* | --sit=*)
-    site=$ac_optarg ;;
-
-  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
-    ac_prev=srcdir ;;
-  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
-    srcdir=$ac_optarg ;;
-
-  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
-  | --syscon | --sysco | --sysc | --sys | --sy)
-    ac_prev=sysconfdir ;;
-  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
-  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
-    sysconfdir=$ac_optarg ;;
-
-  -target | --target | --targe | --targ | --tar | --ta | --t)
-    ac_prev=target_alias ;;
-  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
-    target_alias=$ac_optarg ;;
-
-  -v | -verbose | --verbose | --verbos | --verbo | --verb)
-    verbose=yes ;;
-
-  -version | --version | --versio | --versi | --vers | -V)
-    ac_init_version=: ;;
-
-  -with-* | --with-*)
-    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid package name: $ac_package" >&2
-   { (exit 1); exit 1; }; }
-    ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
-    eval with_$ac_package=\$ac_optarg ;;
-
-  -without-* | --without-*)
-    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid package name: $ac_package" >&2
-   { (exit 1); exit 1; }; }
-    ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
-    eval with_$ac_package=no ;;
-
-  --x)
-    # Obsolete; use --with-x.
-    with_x=yes ;;
-
-  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
-  | --x-incl | --x-inc | --x-in | --x-i)
-    ac_prev=x_includes ;;
-  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
-  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
-    x_includes=$ac_optarg ;;
-
-  -x-libraries | --x-libraries | --x-librarie | --x-librari \
-  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
-    ac_prev=x_libraries ;;
-  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
-  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
-    x_libraries=$ac_optarg ;;
-
-  -*) { echo "$as_me: error: unrecognized option: $ac_option
-Try \`$0 --help' for more information." >&2
-   { (exit 1); exit 1; }; }
-    ;;
-
-  *=*)
-    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
-   { (exit 1); exit 1; }; }
-    eval $ac_envvar=\$ac_optarg
-    export $ac_envvar ;;
-
-  *)
-    # FIXME: should be removed in autoconf 3.0.
-    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
-    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
-    : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
-    ;;
-
-  esac
-done
-
-if test -n "$ac_prev"; then
-  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
-  { echo "$as_me: error: missing argument to $ac_option" >&2
-   { (exit 1); exit 1; }; }
-fi
-
-# Be sure to have absolute directory names.
-for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
-		datadir sysconfdir sharedstatedir localstatedir includedir \
-		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-		libdir localedir mandir
-do
-  eval ac_val=\$$ac_var
-  case $ac_val in
-    [\\/$]* | ?:[\\/]* )  continue;;
-    NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
-  esac
-  { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
-   { (exit 1); exit 1; }; }
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
-  if test "x$build_alias" = x; then
-    cross_compiling=maybe
-    echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used." >&2
-  elif test "x$build_alias" != "x$host_alias"; then
-    cross_compiling=yes
-  fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
-  { echo "$as_me: error: Working directory cannot be determined" >&2
-   { (exit 1); exit 1; }; }
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
-  { echo "$as_me: error: pwd does not report name of working directory" >&2
-   { (exit 1); exit 1; }; }
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
-  ac_srcdir_defaulted=yes
-  # Try the directory containing this script, then the parent directory.
-  ac_confdir=`$as_dirname -- "$0" ||
-$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$0" : 'X\(//\)[^/]' \| \
-	 X"$0" : 'X\(//\)$' \| \
-	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-echo X"$0" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-  srcdir=$ac_confdir
-  if test ! -r "$srcdir/$ac_unique_file"; then
-    srcdir=..
-  fi
-else
-  ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
-  test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
-  { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
-   { (exit 1); exit 1; }; }
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
-	cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2
-   { (exit 1); exit 1; }; }
-	pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
-  srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
-  eval ac_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_env_${ac_var}_value=\$${ac_var}
-  eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
-  # Omit some internal or obsolete options to make the list less imposing.
-  # This message is too long to be a string in the A/UX 3.1 sh.
-  cat <<_ACEOF
-\`configure' configures PDCurses 3.4 to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE.  See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
-  -h, --help              display this help and exit
-      --help=short        display options specific to this package
-      --help=recursive    display the short help of all the included packages
-  -V, --version           display version information and exit
-  -q, --quiet, --silent   do not print \`checking...' messages
-      --cache-file=FILE   cache test results in FILE [disabled]
-  -C, --config-cache      alias for \`--cache-file=config.cache'
-  -n, --no-create         do not create output files
-      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
-
-Installation directories:
-  --prefix=PREFIX         install architecture-independent files in PREFIX
-			  [$ac_default_prefix]
-  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
-			  [PREFIX]
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
-  --bindir=DIR           user executables [EPREFIX/bin]
-  --sbindir=DIR          system admin executables [EPREFIX/sbin]
-  --libexecdir=DIR       program executables [EPREFIX/libexec]
-  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
-  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
-  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
-  --libdir=DIR           object code libraries [EPREFIX/lib]
-  --includedir=DIR       C header files [PREFIX/include]
-  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
-  --datarootdir=DIR      read-only arch.-independent data root [PREFIX/share]
-  --datadir=DIR          read-only architecture-independent data [DATAROOTDIR]
-  --infodir=DIR          info documentation [DATAROOTDIR/info]
-  --localedir=DIR        locale-dependent data [DATAROOTDIR/locale]
-  --mandir=DIR           man documentation [DATAROOTDIR/man]
-  --docdir=DIR           documentation root [DATAROOTDIR/doc/PDCurses]
-  --htmldir=DIR          html documentation [DOCDIR]
-  --dvidir=DIR           dvi documentation [DOCDIR]
-  --pdfdir=DIR           pdf documentation [DOCDIR]
-  --psdir=DIR            ps documentation [DOCDIR]
-_ACEOF
-
-  cat <<\_ACEOF
-
-X features:
-  --x-includes=DIR    X include files are in DIR
-  --x-libraries=DIR   X library files are in DIR
-
-System types:
-  --build=BUILD     configure for building on BUILD [guessed]
-  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
-  --target=TARGET   configure for building compilers for TARGET [HOST]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
-  case $ac_init_help in
-     short | recursive ) echo "Configuration of PDCurses 3.4:";;
-   esac
-  cat <<\_ACEOF
-
-Optional Features:
-  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
-  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-  --enable-debug          turn on debugging
-  --enable-widec          include support for wide characters
-  --enable-xim            include support for XIM
-  --enable-force-utf8     override locale settings; use UTF-8
-  --enable-purify         link with Purify (TM)
-
-Optional Packages:
-  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
-  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
-  --with-x                use the X Window System
-  --with-xaw3d            link with Xaw3d
-  --with-nextaw           link with neXtaw
-
-Some influential environment variables:
-  CC          C compiler command
-  CFLAGS      C compiler flags
-  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
-              nonstandard directory <lib dir>
-  LIBS        libraries to pass to the linker, e.g. -l<library>
-  CPPFLAGS    C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
-              you have headers in a nonstandard directory <include dir>
-  CPP         C preprocessor
-  XMKMF       Path to xmkmf, Makefile generator for X Window System
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <wmcbrine at users.sf.net>.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
-  # If there are subdirs, report their specific --help.
-  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
-    test -d "$ac_dir" || continue
-    ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
-  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`echo "$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
-
-    cd "$ac_dir" || { ac_status=$?; continue; }
-    # Check for guested configure.
-    if test -f "$ac_srcdir/configure.gnu"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure.gnu" --help=recursive
-    elif test -f "$ac_srcdir/configure"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure" --help=recursive
-    else
-      echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
-    fi || ac_status=$?
-    cd "$ac_pwd" || { ac_status=$?; break; }
-  done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
-  cat <<\_ACEOF
-PDCurses configure 3.4
-generated by GNU Autoconf 2.61
-
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
-  exit
-fi
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by PDCurses $as_me 3.4, which was
-generated by GNU Autoconf 2.61.  Invocation command line was
-
-  $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
-
-/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`
-/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
-/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  echo "PATH: $as_dir"
-done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
-  for ac_arg
-  do
-    case $ac_arg in
-    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
-    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-    | -silent | --silent | --silen | --sile | --sil)
-      continue ;;
-    *\'*)
-      ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    esac
-    case $ac_pass in
-    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
-    2)
-      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
-      if test $ac_must_keep_next = true; then
-	ac_must_keep_next=false # Got value, back to normal.
-      else
-	case $ac_arg in
-	  *=* | --config-cache | -C | -disable-* | --disable-* \
-	  | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
-	  | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
-	  | -with-* | --with-* | -without-* | --without-* | --x)
-	    case "$ac_configure_args0 " in
-	      "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
-	    esac
-	    ;;
-	  -* ) ac_must_keep_next=true ;;
-	esac
-      fi
-      ac_configure_args="$ac_configure_args '$ac_arg'"
-      ;;
-    esac
-  done
-done
-$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
-$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log.  We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
-  # Save into config.log some information that might help in debugging.
-  {
-    echo
-
-    cat <<\_ASBOX
-## ---------------- ##
-## Cache variables. ##
-## ---------------- ##
-_ASBOX
-    echo
-    # The following way of writing the cache mishandles newlines in values,
-(
-  for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
-echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      *) $as_unset $ac_var ;;
-      esac ;;
-    esac
-  done
-  (set) 2>&1 |
-    case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      sed -n \
-	"s/'\''/'\''\\\\'\'''\''/g;
-	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
-      ;; #(
-    *)
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-)
-    echo
-
-    cat <<\_ASBOX
-## ----------------- ##
-## Output variables. ##
-## ----------------- ##
-_ASBOX
-    echo
-    for ac_var in $ac_subst_vars
-    do
-      eval ac_val=\$$ac_var
-      case $ac_val in
-      *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-      esac
-      echo "$ac_var='\''$ac_val'\''"
-    done | sort
-    echo
-
-    if test -n "$ac_subst_files"; then
-      cat <<\_ASBOX
-## ------------------- ##
-## File substitutions. ##
-## ------------------- ##
-_ASBOX
-      echo
-      for ac_var in $ac_subst_files
-      do
-	eval ac_val=\$$ac_var
-	case $ac_val in
-	*\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-	esac
-	echo "$ac_var='\''$ac_val'\''"
-      done | sort
-      echo
-    fi
-
-    if test -s confdefs.h; then
-      cat <<\_ASBOX
-## ----------- ##
-## confdefs.h. ##
-## ----------- ##
-_ASBOX
-      echo
-      cat confdefs.h
-      echo
-    fi
-    test "$ac_signal" != 0 &&
-      echo "$as_me: caught signal $ac_signal"
-    echo "$as_me: exit $exit_status"
-  } >&5
-  rm -f core *.core core.conftest.* &&
-    rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
-    exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
-  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer explicitly selected file to automatically selected ones.
-if test -n "$CONFIG_SITE"; then
-  set x "$CONFIG_SITE"
-elif test "x$prefix" != xNONE; then
-  set x "$prefix/share/config.site" "$prefix/etc/config.site"
-else
-  set x "$ac_default_prefix/share/config.site" \
-	"$ac_default_prefix/etc/config.site"
-fi
-shift
-for ac_site_file
-do
-  if test -r "$ac_site_file"; then
-    { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
-echo "$as_me: loading site script $ac_site_file" >&6;}
-    sed 's/^/| /' "$ac_site_file" >&5
-    . "$ac_site_file"
-  fi
-done
-
-if test -r "$cache_file"; then
-  # Some versions of bash will fail to source /dev/null (special
-  # files actually), so we avoid doing that.
-  if test -f "$cache_file"; then
-    { echo "$as_me:$LINENO: loading cache $cache_file" >&5
-echo "$as_me: loading cache $cache_file" >&6;}
-    case $cache_file in
-      [\\/]* | ?:[\\/]* ) . "$cache_file";;
-      *)                      . "./$cache_file";;
-    esac
-  fi
-else
-  { echo "$as_me:$LINENO: creating cache $cache_file" >&5
-echo "$as_me: creating cache $cache_file" >&6;}
-  >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
-  eval ac_old_set=\$ac_cv_env_${ac_var}_set
-  eval ac_new_set=\$ac_env_${ac_var}_set
-  eval ac_old_val=\$ac_cv_env_${ac_var}_value
-  eval ac_new_val=\$ac_env_${ac_var}_value
-  case $ac_old_set,$ac_new_set in
-    set,)
-      { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,set)
-      { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,);;
-    *)
-      if test "x$ac_old_val" != "x$ac_new_val"; then
-	{ echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
-echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-	{ echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
-echo "$as_me:   former value:  $ac_old_val" >&2;}
-	{ echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
-echo "$as_me:   current value: $ac_new_val" >&2;}
-	ac_cache_corrupted=:
-      fi;;
-  esac
-  # Pass precious variables to config.status.
-  if test "$ac_new_set" = set; then
-    case $ac_new_val in
-    *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
-    *) ac_arg=$ac_var=$ac_new_val ;;
-    esac
-    case " $ac_configure_args " in
-      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
-      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
-    esac
-  fi
-done
-if $ac_cache_corrupted; then
-  { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
-echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
-  ac_ct_CC=$CC
-  # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="gcc"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet.  If you think this
-configuration is useful to you, please write to autoconf at gnu.org." >&5
-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet.  If you think this
-configuration is useful to you, please write to autoconf at gnu.org." >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-else
-  CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
-          if test -n "$ac_tool_prefix"; then
-    # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}cc"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-  fi
-fi
-if test -z "$CC"; then
-  # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-  ac_prog_rejected=no
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
-       ac_prog_rejected=yes
-       continue
-     fi
-    ac_cv_prog_CC="cc"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
-  # We found a bogon in the path, so make sure we never use it.
-  set dummy $ac_cv_prog_CC
-  shift
-  if test $# != 0; then
-    # We chose a different compiler from the bogus one.
-    # However, it has the same basename, so the bogon will be chosen
-    # first if we set CC to just the basename; use the full file name.
-    shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
-  fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
-  if test -n "$ac_tool_prefix"; then
-  for ac_prog in cl.exe
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-    test -n "$CC" && break
-  done
-fi
-if test -z "$CC"; then
-  ac_ct_CC=$CC
-  for ac_prog in cl.exe
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="$ac_prog"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-  test -n "$ac_ct_CC" && break
-done
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet.  If you think this
-configuration is useful to you, please write to autoconf at gnu.org." >&5
-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet.  If you think this
-configuration is useful to you, please write to autoconf at gnu.org." >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-fi
-
-fi
-
-
-test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&5
-echo "$as_me: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-
-# Provide some information about the compiler.
-echo "$as_me:$LINENO: checking for C compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (ac_try="$ac_compiler --version >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compiler --version >&5") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (ac_try="$ac_compiler -v >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compiler -v >&5") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (ac_try="$ac_compiler -V >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compiler -V >&5") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
-echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6; }
-ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-#
-# List of possible output files, starting from the most likely.
-# The algorithm is not robust to junk in `.', hence go to wildcards (a.*)
-# only as a last resort.  b.out is created by i960 compilers.
-ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out'
-#
-# The IRIX 6 linker writes into existing files which may not be
-# executable, retaining their permissions.  Remove them first so a
-# subsequent execution test works.
-ac_rmfiles=
-for ac_file in $ac_files
-do
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
-    * ) ac_rmfiles="$ac_rmfiles $ac_file";;
-  esac
-done
-rm -f $ac_rmfiles
-
-if { (ac_try="$ac_link_default"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link_default") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-  # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile.  We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj )
-	;;
-    [ab].out )
-	# We found the default executable, but exeext='' is most
-	# certainly right.
-	break;;
-    *.* )
-        if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
-	then :; else
-	   ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-	fi
-	# We set ac_cv_exeext here because the later test for it is not
-	# safe: cross compilers may not add the suffix if given an `-o'
-	# argument, so we may need to know it at that point already.
-	# Even if this section looks crufty: it has the advantage of
-	# actually working.
-	break;;
-    * )
-	break;;
-  esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
-  ac_file=''
-fi
-
-{ echo "$as_me:$LINENO: result: $ac_file" >&5
-echo "${ECHO_T}$ac_file" >&6; }
-if test -z "$ac_file"; then
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
-See \`config.log' for more details." >&5
-echo "$as_me: error: C compiler cannot create executables
-See \`config.log' for more details." >&2;}
-   { (exit 77); exit 77; }; }
-fi
-
-ac_exeext=$ac_cv_exeext
-
-# Check that the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-{ echo "$as_me:$LINENO: checking whether the C compiler works" >&5
-echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6; }
-# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
-# If not cross compiling, check that we can run a simple program.
-if test "$cross_compiling" != yes; then
-  if { ac_try='./$ac_file'
-  { (case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; }; then
-    cross_compiling=no
-  else
-    if test "$cross_compiling" = maybe; then
-	cross_compiling=yes
-    else
-	{ { echo "$as_me:$LINENO: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-    fi
-  fi
-fi
-{ echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-
-rm -f a.out a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-# Check that the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
-echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; }
-{ echo "$as_me:$LINENO: result: $cross_compiling" >&5
-echo "${ECHO_T}$cross_compiling" >&6; }
-
-{ echo "$as_me:$LINENO: checking for suffix of executables" >&5
-echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; }
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-  # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
-    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-	  break;;
-    * ) break;;
-  esac
-done
-else
-  { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-rm -f conftest$ac_cv_exeext
-{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
-echo "${ECHO_T}$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-{ echo "$as_me:$LINENO: checking for suffix of object files" >&5
-echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; }
-if test "${ac_cv_objext+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-  for ac_file in conftest.o conftest.obj conftest.*; do
-  test -f "$ac_file" || continue;
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;;
-    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
-       break;;
-  esac
-done
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
-echo "${ECHO_T}$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
-echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-#ifndef __GNUC__
-       choke me
-#endif
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_compiler_gnu=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_compiler_gnu=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
-echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6; }
-GCC=`test $ac_compiler_gnu = yes && echo yes`
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
-echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; }
-if test "${ac_cv_prog_cc_g+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_save_c_werror_flag=$ac_c_werror_flag
-   ac_c_werror_flag=yes
-   ac_cv_prog_cc_g=no
-   CFLAGS="-g"
-   cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_prog_cc_g=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	CFLAGS=""
-      cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  :
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_c_werror_flag=$ac_save_c_werror_flag
-	 CFLAGS="-g"
-	 cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_prog_cc_g=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-   ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
-  CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
-  if test "$GCC" = yes; then
-    CFLAGS="-g -O2"
-  else
-    CFLAGS="-g"
-  fi
-else
-  if test "$GCC" = yes; then
-    CFLAGS="-O2"
-  else
-    CFLAGS=
-  fi
-fi
-{ echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
-echo $ECHO_N "checking for $CC option to accept ISO C89... $ECHO_C" >&6; }
-if test "${ac_cv_prog_cc_c89+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
-   inside strings and character constants.  */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-  ;
-  return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-	-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
-  CC="$ac_save_CC $ac_arg"
-  rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_prog_cc_c89=$ac_arg
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext
-  test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
-  x)
-    { echo "$as_me:$LINENO: result: none needed" >&5
-echo "${ECHO_T}none needed" >&6; } ;;
-  xno)
-    { echo "$as_me:$LINENO: result: unsupported" >&5
-echo "${ECHO_T}unsupported" >&6; } ;;
-  *)
-    CC="$CC $ac_cv_prog_cc_c89"
-    { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-ac_config_headers="$ac_config_headers config.h"
-
-ac_aux_dir=
-for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
-  if test -f "$ac_dir/install-sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f "$ac_dir/install.sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  elif test -f "$ac_dir/shtool"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/shtool install -c"
-    break
-  fi
-done
-if test -z "$ac_aux_dir"; then
-  { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5
-echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
-
-
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
-  { { echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5
-echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;}
-   { (exit 1); exit 1; }; }
-
-{ echo "$as_me:$LINENO: checking build system type" >&5
-echo $ECHO_N "checking build system type... $ECHO_C" >&6; }
-if test "${ac_cv_build+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
-  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
-  { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
-echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
-   { (exit 1); exit 1; }; }
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
-  { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5
-echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;}
-   { (exit 1); exit 1; }; }
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_build" >&5
-echo "${ECHO_T}$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) { { echo "$as_me:$LINENO: error: invalid value of canonical build" >&5
-echo "$as_me: error: invalid value of canonical build" >&2;}
-   { (exit 1); exit 1; }; };;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ echo "$as_me:$LINENO: checking host system type" >&5
-echo $ECHO_N "checking host system type... $ECHO_C" >&6; }
-if test "${ac_cv_host+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "x$host_alias" = x; then
-  ac_cv_host=$ac_cv_build
-else
-  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
-    { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5
-echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_host" >&5
-echo "${ECHO_T}$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) { { echo "$as_me:$LINENO: error: invalid value of canonical host" >&5
-echo "$as_me: error: invalid value of canonical host" >&2;}
-   { (exit 1); exit 1; }; };;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
-{ echo "$as_me:$LINENO: checking target system type" >&5
-echo $ECHO_N "checking target system type... $ECHO_C" >&6; }
-if test "${ac_cv_target+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "x$target_alias" = x; then
-  ac_cv_target=$ac_cv_host
-else
-  ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` ||
-    { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&5
-echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_target" >&5
-echo "${ECHO_T}$ac_cv_target" >&6; }
-case $ac_cv_target in
-*-*-*) ;;
-*) { { echo "$as_me:$LINENO: error: invalid value of canonical target" >&5
-echo "$as_me: error: invalid value of canonical target" >&2;}
-   { (exit 1); exit 1; }; };;
-esac
-target=$ac_cv_target
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_target
-shift
-target_cpu=$1
-target_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-target_os=$*
-IFS=$ac_save_IFS
-case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac
-
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-test -n "$target_alias" &&
-  test "$program_prefix$program_suffix$program_transform_name" = \
-    NONENONEs,x,x, &&
-  program_prefix=${target_alias}-
-
-mymakefile="Makefile"
-on_qnx=no
-case "$target" in
-	*hp-hpux*)
-		SYS_DEFS="-D_HPUX_SOURCE"
-		;;
-	*ibm-aix*)
-		SYS_DEFS="-D_ALL_SOURCE"
-		mymakefile="Makefile.aix"
-		;;
-	*dec-osf*)
-		SYS_DEFS="-D_XOPEN_SOURCE_EXTENDED"
-		;;
-	*pc-sco*)
-		SYS_DEFS="-UM_XENIX -b elf"
-		;;
-	*qnx*)
-		on_qnx=yes
-		SYS_DEFS="-Q"
-		;;
-	*)
-		;;
-esac
-
-
-
-save_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $SYS_DEFS"
-{ echo "$as_me:$LINENO: checking for maximum signal specifier:" >&5
-echo $ECHO_N "checking for maximum signal specifier:... $ECHO_C" >&6; }
-if test "${mh_cv_max_signals+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  mh_found="no"
-for mh_sigs in NSIG __sys_nsig; do
-
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <signal.h>
-int
-main ()
-{
-return $mh_sigs;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  mh_found="yes"; mh_cv_max_signals="$mh_sigs"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-	if test "$mh_found" = "yes"; then
-		break;
-	fi
-done
-fi
-
-CPPFLAGS="$save_CPPFLAGS"
-if test "$mh_found" = "no"; then
-	{ { echo "$as_me:$LINENO: error: Cannot find a system limit for number of signals. PDCurses cannot be configured on this machine." >&5
-echo "$as_me: error: Cannot find a system limit for number of signals. PDCurses cannot be configured on this machine." >&2;}
-   { (exit 1); exit 1; }; }
-else
-	cat >>confdefs.h <<_ACEOF
-#define PDC_MAX_SIGNALS $mh_cv_max_signals
-_ACEOF
-
-	{ echo "$as_me:$LINENO: result: $mh_cv_max_signals" >&5
-echo "${ECHO_T}$mh_cv_max_signals" >&6; }
-fi
-
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_RANLIB+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$RANLIB"; then
-  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
-  { echo "$as_me:$LINENO: result: $RANLIB" >&5
-echo "${ECHO_T}$RANLIB" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
-  ac_ct_RANLIB=$RANLIB
-  # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$ac_ct_RANLIB"; then
-  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_RANLIB="ranlib"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
-  { echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
-echo "${ECHO_T}$ac_ct_RANLIB" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-  if test "x$ac_ct_RANLIB" = x; then
-    RANLIB=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet.  If you think this
-configuration is useful to you, please write to autoconf at gnu.org." >&5
-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
-whose name does not start with the host triplet.  If you think this
-configuration is useful to you, please write to autoconf at gnu.org." >&2;}
-ac_tool_warned=yes ;;
-esac
-    RANLIB=$ac_ct_RANLIB
-  fi
-else
-  RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-# Find a good install program.  We prefer a C program (faster),
-# so one script is as good as another.  But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
-echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; }
-if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in
-  ./ | .// | /cC/* | \
-  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
-  /usr/ucb/* ) ;;
-  *)
-    # OSF1 and SCO ODT 3.0 have their own names for install.
-    # Don't use installbsd from OSF since it installs stuff as root
-    # by default.
-    for ac_prog in ginstall scoinst install; do
-      for ac_exec_ext in '' $ac_executable_extensions; do
-	if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
-	  if test $ac_prog = install &&
-	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-	    # AIX install.  It has an incompatible calling convention.
-	    :
-	  elif test $ac_prog = install &&
-	    grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-	    # program-specific install script used by HP pwplus--don't use.
-	    :
-	  else
-	    ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-	    break 3
-	  fi
-	fi
-      done
-    done
-    ;;
-esac
-done
-IFS=$as_save_IFS
-
-
-fi
-  if test "${ac_cv_path_install+set}" = set; then
-    INSTALL=$ac_cv_path_install
-  else
-    # As a last resort, use the slow shell script.  Don't cache a
-    # value for INSTALL within a source directory, because that will
-    # break other packages using the cache if that directory is
-    # removed, or if the value is a relative name.
-    INSTALL=$ac_install_sh
-  fi
-fi
-{ echo "$as_me:$LINENO: result: $INSTALL" >&5
-echo "${ECHO_T}$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-{ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; }
-set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
-	@echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
-  *@@@%%%=?*=@@@%%%*)
-    eval ac_cv_prog_make_${ac_make}_set=yes;;
-  *)
-    eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-  SET_MAKE=
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-  SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
-echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-  if test "${ac_cv_prog_CPP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-		     Syntax error
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  :
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Broken: fails on valid input.
-continue
-fi
-
-rm -f conftest.err conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  # Broken: success on invalid input.
-continue
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-
-rm -f conftest.err conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
-  break
-fi
-
-    done
-    ac_cv_prog_CPP=$CPP
-
-fi
-  CPP=$ac_cv_prog_CPP
-else
-  ac_cv_prog_CPP=$CPP
-fi
-{ echo "$as_me:$LINENO: result: $CPP" >&5
-echo "${ECHO_T}$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-		     Syntax error
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  :
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Broken: fails on valid input.
-continue
-fi
-
-rm -f conftest.err conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  # Broken: success on invalid input.
-continue
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-
-rm -f conftest.err conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
-  :
-else
-  { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&5
-echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5
-echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; }
-if test "${ac_cv_path_GREP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  # Extract the first word of "grep ggrep" to use in msg output
-if test -z "$GREP"; then
-set dummy grep ggrep; ac_prog_name=$2
-if test "${ac_cv_path_GREP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_path_GREP_found=false
-# Loop through the user's path and test for each of PROGNAME-LIST
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_prog in grep ggrep; do
-  for ac_exec_ext in '' $ac_executable_extensions; do
-    ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-    { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
-    # Check for GNU ac_path_GREP and select it if it is found.
-  # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
-  ac_count=0
-  echo $ECHO_N "0123456789$ECHO_C" >"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"
-    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    ac_count=`expr $ac_count + 1`
-    if test $ac_count -gt ${ac_path_GREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_GREP="$ac_path_GREP"
-      ac_path_GREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-
-    $ac_path_GREP_found && break 3
-  done
-done
-
-done
-IFS=$as_save_IFS
-
-
-fi
-
-GREP="$ac_cv_path_GREP"
-if test -z "$GREP"; then
-  { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-else
-  ac_cv_path_GREP=$GREP
-fi
-
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5
-echo "${ECHO_T}$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-
-{ echo "$as_me:$LINENO: checking for egrep" >&5
-echo $ECHO_N "checking for egrep... $ECHO_C" >&6; }
-if test "${ac_cv_path_EGREP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
-   then ac_cv_path_EGREP="$GREP -E"
-   else
-     # Extract the first word of "egrep" to use in msg output
-if test -z "$EGREP"; then
-set dummy egrep; ac_prog_name=$2
-if test "${ac_cv_path_EGREP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_path_EGREP_found=false
-# Loop through the user's path and test for each of PROGNAME-LIST
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_prog in egrep; do
-  for ac_exec_ext in '' $ac_executable_extensions; do
-    ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-    { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
-    # Check for GNU ac_path_EGREP and select it if it is found.
-  # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
-  ac_count=0
-  echo $ECHO_N "0123456789$ECHO_C" >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    echo 'EGREP' >> "conftest.nl"
-    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    ac_count=`expr $ac_count + 1`
-    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_EGREP="$ac_path_EGREP"
-      ac_path_EGREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-
-    $ac_path_EGREP_found && break 3
-  done
-done
-
-done
-IFS=$as_save_IFS
-
-
-fi
-
-EGREP="$ac_cv_path_EGREP"
-if test -z "$EGREP"; then
-  { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-else
-  ac_cv_path_EGREP=$EGREP
-fi
-
-
-   fi
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
-echo "${ECHO_T}$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
-{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5
-echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_header_stdc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_header_stdc=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then
-  :
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then
-  :
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then
-  :
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-		   (('a' <= (c) && (c) <= 'i') \
-		     || ('j' <= (c) && (c) <= 'r') \
-		     || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-	|| toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; }; then
-  :
-else
-  echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-fi
-
-
-fi
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
-echo "${ECHO_T}$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-cat >>confdefs.h <<\_ACEOF
-#define STDC_HEADERS 1
-_ACEOF
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-
-
-
-
-
-
-
-
-
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-		  inttypes.h stdint.h unistd.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  eval "$as_ac_Header=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	eval "$as_ac_Header=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-if test "${ac_cv_header_sys_ipc_h+set}" = set; then
-  { echo "$as_me:$LINENO: checking for sys/ipc.h" >&5
-echo $ECHO_N "checking for sys/ipc.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_sys_ipc_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_sys_ipc_h" >&5
-echo "${ECHO_T}$ac_cv_header_sys_ipc_h" >&6; }
-else
-  # Is the header compilable?
-{ echo "$as_me:$LINENO: checking sys/ipc.h usability" >&5
-echo $ECHO_N "checking sys/ipc.h usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <sys/ipc.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking sys/ipc.h presence" >&5
-echo $ECHO_N "checking sys/ipc.h presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/ipc.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: sys/ipc.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: sys/ipc.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: sys/ipc.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: sys/ipc.h: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: sys/ipc.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: sys/ipc.h: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: sys/ipc.h:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: sys/ipc.h:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: sys/ipc.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: sys/ipc.h: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: sys/ipc.h:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: sys/ipc.h:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: sys/ipc.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: sys/ipc.h: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: sys/ipc.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: sys/ipc.h: in the future, the compiler will take precedence" >&2;}
-    ( cat <<\_ASBOX
-## ------------------------------------ ##
-## Report this to wmcbrine at users.sf.net ##
-## ------------------------------------ ##
-_ASBOX
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-{ echo "$as_me:$LINENO: checking for sys/ipc.h" >&5
-echo $ECHO_N "checking for sys/ipc.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_sys_ipc_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_cv_header_sys_ipc_h=$ac_header_preproc
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_sys_ipc_h" >&5
-echo "${ECHO_T}$ac_cv_header_sys_ipc_h" >&6; }
-
-fi
-
-
-if test $ac_cv_header_sys_ipc_h = no; then
-	{ { echo "$as_me:$LINENO: error: Cannot find required header file sys/ipc.h; PDCurses cannot be configured" >&5
-echo "$as_me: error: Cannot find required header file sys/ipc.h; PDCurses cannot be configured" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-
-if test $ac_cv_header_stdc != yes; then
-	{ { echo "$as_me:$LINENO: error: Need ANSI C headers" >&5
-echo "$as_me: error: Need ANSI C headers" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-
-
-
-
-
-
-for ac_header in fcntl.h \
-	sys/time.h \
-	sys/select.h \
-	dlfcn.h \
-	dl.h
-
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  { echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    ( cat <<\_ASBOX
-## ------------------------------------ ##
-## Report this to wmcbrine at users.sf.net ##
-## ------------------------------------ ##
-_ASBOX
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-{ echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5
-echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6; }
-if test "${ac_cv_header_time+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-
-int
-main ()
-{
-if ((struct tm *) 0)
-return 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_header_time=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_header_time=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5
-echo "${ECHO_T}$ac_cv_header_time" >&6; }
-if test $ac_cv_header_time = yes; then
-
-cat >>confdefs.h <<\_ACEOF
-#define TIME_WITH_SYS_TIME 1
-_ACEOF
-
-fi
-
-
-MH_EXTRA_LIBS=''
-for mh_lib in socket nls; do
-	if test "$on_qnx" = yes; then
-		{ echo "$as_me:$LINENO: checking for library -l${mh_lib}" >&5
-echo $ECHO_N "checking for library -l${mh_lib}... $ECHO_C" >&6; }
-		if test -r /usr/lib/${mh_lib}3r.lib; then
-			{ echo "$as_me:$LINENO: result: found" >&5
-echo "${ECHO_T}found" >&6; }
-			MH_EXTRA_LIBS="${MH_EXTRA_LIBS} -l${mh_lib}"
-		else
-		{ echo "$as_me:$LINENO: result: not found" >&5
-echo "${ECHO_T}not found" >&6; }
-		fi
-	else
-		as_ac_Lib=`echo "ac_cv_lib_$mh_lib''_main" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for main in -l$mh_lib" >&5
-echo $ECHO_N "checking for main in -l$mh_lib... $ECHO_C" >&6; }
-if { as_var=$as_ac_Lib; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-l$mh_lib  $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-
-int
-main ()
-{
-return main ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  eval "$as_ac_Lib=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	eval "$as_ac_Lib=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-ac_res=`eval echo '${'$as_ac_Lib'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Lib'}'` = yes; then
-  mh_lib_found=yes
-else
-  mh_lib_found=no
-fi
-
-		if test "$mh_lib_found" = yes; then
-			MH_EXTRA_LIBS="${MH_EXTRA_LIBS} -l${mh_lib}"
-		fi
-	fi
-done
-
-
-
-{ echo "$as_me:$LINENO: checking whether $CC understand -c and -o together" >&5
-echo $ECHO_N "checking whether $CC understand -c and -o together... $ECHO_C" >&6; }
-set dummy $CC; ac_cc="`echo $2 |
-		       sed -e 's/[^a-zA-Z0-9_]/_/g' -e 's/^[0-9]/_/'`"
-if { as_var=ac_cv_prog_cc_${ac_cc}_c_o; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  echo 'foo(){}' > conftest.c
-# We do the test twice because some compilers refuse to overwrite an
-# existing .o file with -o, though they will create one.
-eval ac_cv_prog_cc_${ac_cc}_c_o=no
-ac_try='${CC-cc} -c conftest.c -o conftest.ooo 1>&5'
-if { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-  (eval $ac_try) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && test -f conftest.ooo && { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-  (eval $ac_try) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); };
-then
-  ac_try='${CC-cc} -c conftest.c -o conftest.ooo 1>&5'
-  if { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-  (eval $ac_try) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && test -f conftest.ooo && { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-  (eval $ac_try) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); };
-  then
-    eval ac_cv_prog_cc_${ac_cc}_c_o=yes
-  fi
-fi
-rm -f conftest*
-
-fi
-if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = yes"; then
-	O2SAVE=""
-	SAVE2O=""
-	CC2O="-o $"'@'
-	{ echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-else
-	O2SAVE="-mv \`basename "$'@'" .sho\`.o \`basename "$'@'" .sho\`.o.save;"
-	SAVE2O="-mv \`basename "$'@'" .sho\`.o "$'@'"; mv \`basename "$'@'" .sho\`.o.save \`basename "$'@'" .sho\`.o"
-	CC2O=""
-	{ echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-{ echo "$as_me:$LINENO: checking return type of signal handlers" >&5
-echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6; }
-if test "${ac_cv_type_signal+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-
-int
-main ()
-{
-return *(signal (0, 0)) (0) == 1;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_type_signal=int
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_cv_type_signal=void
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5
-echo "${ECHO_T}$ac_cv_type_signal" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define RETSIGTYPE $ac_cv_type_signal
-_ACEOF
-
-
-
-
-
-
-for ac_func in vsscanf usleep poll vsnprintf
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* 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 $ac_func ();
-/* 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_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	eval "$as_ac_var=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval echo '${'$as_ac_var'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-done
-
-
-{ echo "$as_me:$LINENO: checking for X" >&5
-echo $ECHO_N "checking for X... $ECHO_C" >&6; }
-
-
-# Check whether --with-x was given.
-if test "${with_x+set}" = set; then
-  withval=$with_x;
-fi
-
-# $have_x is `yes', `no', `disabled', or empty when we do not yet know.
-if test "x$with_x" = xno; then
-  # The user explicitly disabled X.
-  have_x=disabled
-else
-  case $x_includes,$x_libraries in #(
-    *\'*) { { echo "$as_me:$LINENO: error: Cannot use X directory names containing '" >&5
-echo "$as_me: error: Cannot use X directory names containing '" >&2;}
-   { (exit 1); exit 1; }; };; #(
-    *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  # One or both of the vars are not set, and there is no cached value.
-ac_x_includes=no ac_x_libraries=no
-rm -f -r conftest.dir
-if mkdir conftest.dir; then
-  cd conftest.dir
-  cat >Imakefile <<'_ACEOF'
-incroot:
-	@echo incroot='${INCROOT}'
-usrlibdir:
-	@echo usrlibdir='${USRLIBDIR}'
-libdir:
-	@echo libdir='${LIBDIR}'
-_ACEOF
-  if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then
-    # GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-    for ac_var in incroot usrlibdir libdir; do
-      eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`"
-    done
-    # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR.
-    for ac_extension in a so sl; do
-      if test ! -f "$ac_im_usrlibdir/libX11.$ac_extension" &&
-	 test -f "$ac_im_libdir/libX11.$ac_extension"; then
-	ac_im_usrlibdir=$ac_im_libdir; break
-      fi
-    done
-    # Screen out bogus values from the imake configuration.  They are
-    # bogus both because they are the default anyway, and because
-    # using them would break gcc on systems where it needs fixed includes.
-    case $ac_im_incroot in
-	/usr/include) ac_x_includes= ;;
-	*) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;;
-    esac
-    case $ac_im_usrlibdir in
-	/usr/lib | /lib) ;;
-	*) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;;
-    esac
-  fi
-  cd ..
-  rm -f -r conftest.dir
-fi
-
-# Standard set of common directories for X headers.
-# Check X11 before X11Rn because it is often a symlink to the current release.
-ac_x_header_dirs='
-/usr/X11/include
-/usr/X11R6/include
-/usr/X11R5/include
-/usr/X11R4/include
-
-/usr/include/X11
-/usr/include/X11R6
-/usr/include/X11R5
-/usr/include/X11R4
-
-/usr/local/X11/include
-/usr/local/X11R6/include
-/usr/local/X11R5/include
-/usr/local/X11R4/include
-
-/usr/local/include/X11
-/usr/local/include/X11R6
-/usr/local/include/X11R5
-/usr/local/include/X11R4
-
-/usr/X386/include
-/usr/x386/include
-/usr/XFree86/include/X11
-
-/usr/include
-/usr/local/include
-/usr/unsupported/include
-/usr/athena/include
-/usr/local/x11r5/include
-/usr/lpp/Xamples/include
-
-/usr/openwin/include
-/usr/openwin/share/include'
-
-if test "$ac_x_includes" = no; then
-  # Guess where to find include files, by looking for Xlib.h.
-  # First, try using that file with no special directory specified.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <X11/Xlib.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  # We can compile using X headers with no special include directory.
-ac_x_includes=
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  for ac_dir in $ac_x_header_dirs; do
-  if test -r "$ac_dir/X11/Xlib.h"; then
-    ac_x_includes=$ac_dir
-    break
-  fi
-done
-fi
-
-rm -f conftest.err conftest.$ac_ext
-fi # $ac_x_includes = no
-
-if test "$ac_x_libraries" = no; then
-  # Check for the libraries.
-  # See if we find them without any special options.
-  # Don't add to $LIBS permanently.
-  ac_save_LIBS=$LIBS
-  LIBS="-lX11 $LIBS"
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <X11/Xlib.h>
-int
-main ()
-{
-XrmInitialize ()
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  LIBS=$ac_save_LIBS
-# We can link X programs with no special library path.
-ac_x_libraries=
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	LIBS=$ac_save_LIBS
-for ac_dir in `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`
-do
-  # Don't even attempt the hair of trying to link an X program!
-  for ac_extension in a so sl; do
-    if test -r "$ac_dir/libX11.$ac_extension"; then
-      ac_x_libraries=$ac_dir
-      break 2
-    fi
-  done
-done
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
-fi # $ac_x_libraries = no
-
-case $ac_x_includes,$ac_x_libraries in #(
-  no,* | *,no | *\'*)
-    # Didn't find X, or a directory has "'" in its name.
-    ac_cv_have_x="have_x=no";; #(
-  *)
-    # Record where we found X for the cache.
-    ac_cv_have_x="have_x=yes\
-	ac_x_includes='$ac_x_includes'\
-	ac_x_libraries='$ac_x_libraries'"
-esac
-fi
-;; #(
-    *) have_x=yes;;
-  esac
-  eval "$ac_cv_have_x"
-fi # $with_x != no
-
-if test "$have_x" != yes; then
-  { echo "$as_me:$LINENO: result: $have_x" >&5
-echo "${ECHO_T}$have_x" >&6; }
-  no_x=yes
-else
-  # If each of the values was on the command line, it overrides each guess.
-  test "x$x_includes" = xNONE && x_includes=$ac_x_includes
-  test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries
-  # Update the cache value to reflect the command line values.
-  ac_cv_have_x="have_x=yes\
-	ac_x_includes='$x_includes'\
-	ac_x_libraries='$x_libraries'"
-  { echo "$as_me:$LINENO: result: libraries $x_libraries, headers $x_includes" >&5
-echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6; }
-fi
-
-
-mh_x11_dir=""
-mh_x11_xaw_dir=""
-
-mh_inc_dirs="$ac_x_header_dirs"
-
-
-if test "x$x_includes" != xNONE ; then
-	mh_inc_dirs="$x_includes $mh_inc_dirs"
-fi
-
-
-for ac_dir in $mh_inc_dirs ; do
-  if test -r $ac_dir/Intrinsic.h; then
-    mh_x11_dir=$ac_dir
-    break
-  fi
-  if test -r $ac_dir/X11/Intrinsic.h; then
-    mh_x11_dir="$ac_dir/X11"
-    break
-  fi
-done
-
-
-if test "$with_xaw3d" = yes; then
-	mh_xaw_dir="Xaw3d"
-else
-	if test "$with_nextaw" = yes; then
-		mh_xaw_dir="neXtaw"
-	else
-		mh_xaw_dir="Xaw"
-	fi
-fi
-for ac_dir in $mh_inc_dirs ; do
-  if test -r $ac_dir/$mh_xaw_dir/Box.h; then
-    mh_x11_xaw_dir=$ac_dir
-    break
-  fi
-  if test -r $ac_dir/X11/$mh_xaw_dir/Box.h; then
-    mh_x11_xaw_dir="$ac_dir/X11"
-    break
-  fi
-done
-
-if test "x$mh_x11_dir" != "x" ; then
-	mh_x11_dir_no_x11=`echo $mh_x11_dir | sed 's/\/X11$//'`
-
-	if test "$mh_x11_dir_no_x11" != "$mh_x11_dir" ; then
-		MH_XINC_DIR="-I$mh_x11_dir -I$mh_x11_dir_no_x11"
-	else
-		MH_XINC_DIR="-I$mh_x11_dir"
-	fi
-else
-	{ { echo "$as_me:$LINENO: error: Cannot find required header file Intrinsic.h; PDCurses cannot be configured" >&5
-echo "$as_me: error: Cannot find required header file Intrinsic.h; PDCurses cannot be configured" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-if test "x$mh_x11_xaw_dir" != "x"; then
-	if test "$mh_x11_xaw_dir" != "$mh_x11_dir" ; then
-		MH_XINC_DIR="-I$mh_x11_xaw_dir $MH_XINC_DIR"
-	fi
-else
-	{ { echo "$as_me:$LINENO: error: Cannot find required Xaw header file Box.h; PDCurses cannot be configured" >&5
-echo "$as_me: error: Cannot find required Xaw header file Box.h; PDCurses cannot be configured" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-
-
-
-
-
-mh_solaris_flag=no
-mh_hpux9_flag=no
-
-case "$target" in
-	*solaris*)
-		mh_solaris_flag=yes
-		;;
-	*pc-sco*)
-		extra_x_libs="Xext"
-		;;
-	sparc*sunos*)
-		extra_x_libs="Xext"
-		if test "$ac_cv_prog_CC" = "gcc" ; then
-			extra_ld_flags="-Wl,-Bstatic"
-			extra_ld_flags2="-Wl,-Bdynamic"
-		else
-			extra_ld_flags="-Bstatic"
-			extra_ld_flags2="-Bdynamic"
-		fi
-		;;
-	*hpux9*)
-		mh_hpux9_flag=yes
-		;;
-esac
-
-if test "$with_xaw3d" = yes; then
-	MH_X11_LIBS="Xaw3d Xmu Xt X11"
-else
-	if test "$with_nextaw" = yes; then
-		MH_X11_LIBS="neXtaw Xmu Xt X11"
-	else
-		MH_X11_LIBS="Xaw Xmu Xt X11"
-	fi
-fi
-MH_X11R6_LIBS="SM ICE Xext"
-mh_x11r6=no
-
-mh_lib_dirs="$x_libraries `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`"
-
-for ac_dir in $mh_lib_dirs ; do
-	for mh_xsm in libSM.a libSM.so libSM.sl libSM.dylib; do
-	  if test -r $ac_dir/$mh_xsm; then
-	    mh_x11r6=yes
-	    break 2
-	  fi
-	done
-done
-
-if test "$mh_x11r6" = yes ; then
-	mh_libs="$MH_X11_LIBS $MH_X11R6_LIBS"
-else
-	mh_libs="$MH_X11_LIBS $extra_x_libs"
-fi
-
-
-
-mh_prev_dir=""
-mh_where_found=""
-mh_where_found_dirs=""
-mh_solaris_path=""
-for mh_lib in $mh_libs; do
-  mh_lib_found=no
-  for ac_dir in $mh_lib_dirs ; do
-    for mh_ext in a so sl dll.a dylib; do
-      if test -r $ac_dir/lib$mh_lib.$mh_ext; then
-        if test "x$mh_prev_dir" != "x$ac_dir" ; then
-          if test "x$mh_prev_dir" = "x" ; then
-             mh_where_found="$mh_where_found found in $ac_dir"
-          else
-             mh_where_found="$mh_where_found and in $ac_dir"
-          fi
-          mh_prev_dir=$ac_dir
-          mh_where_found_dirs="$mh_where_found_dirs $ac_dir"
-          MH_XLIBS="$MH_XLIBS -L$ac_dir"
-          mh_solaris_path="${mh_solaris_path}:$ac_dir"
-        fi
-        MH_XLIBS="$MH_XLIBS -l$mh_lib"
-        mh_lib_found=yes
-        break 2
-      fi
-    done
-  done
-  if test "$mh_lib_found" = no; then
-    { { echo "$as_me:$LINENO: error: Cannot find required X library; lib$mh_lib. PDCurses cannot be configured" >&5
-echo "$as_me: error: Cannot find required X library; lib$mh_lib. PDCurses cannot be configured" >&2;}
-   { (exit 1); exit 1; }; }
-  fi
-done
-
-mh_solaris_path=`echo $mh_solaris_path | sed 's/^://'`
-if test "$mh_solaris_flag" = yes ; then
-	MH_XLIBS="-R$mh_solaris_path $extra_ld_flags $MH_XLIBS $extra_libs $extra_ld_flags2"
-else
-	MH_XLIBS="$extra_ld_flags $MH_XLIBS $extra_libs $extra_ld_flags2"
-fi
-if test "$mh_hpux9_flag" = yes ; then
-  grep -q XtSetLanguageProc $mh_x11_dir/Intrinsic.h
-  if test $? -eq 0 ; then
-    mh_found_xtshellstrings=no
-    for mh_acdir in $mh_where_found_dirs ; do
-      for mh_xaw in `ls $mh_acdir/libXaw.*` ; do
-        nm $mh_xaw | grep XtShellStrings | grep -qv extern
-        if test $? -eq 0 ; then
-          mh_found_xtshellstrings=yes
-        fi
-      done
-    done
-    if test "$mh_found_xtshellstrings" = no ; then
-      { echo "$as_me:$LINENO: WARNING: The X11 development environment has not been installed correctly." >&5
-echo "$as_me: WARNING: The X11 development environment has not been installed correctly." >&2;}
-      { echo "$as_me:$LINENO: WARNING: The header file; Intrinsic.h" >&5
-echo "$as_me: WARNING: The header file; Intrinsic.h" >&2;}
-      { echo "$as_me:$LINENO: WARNING: Set library; libXaw is for X11R4.  This is a common problem with" >&5
-echo "$as_me: WARNING: Set library; libXaw is for X11R4.  This is a common problem with" >&2;}
-      { echo "$as_me:$LINENO: WARNING: HP-UX 9.x." >&5
-echo "$as_me: WARNING: HP-UX 9.x." >&2;}
-      { { echo "$as_me:$LINENO: error: X11 installation incomplete; cannot continue" >&5
-echo "$as_me: error: X11 installation incomplete; cannot continue" >&2;}
-   { (exit 1); exit 1; }; }
-    fi
-  fi
-fi
-
-
-
-
-
-save_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $MH_XINC_DIR"
-for mh_header in DECkeysym.h Sunkeysym.h xpm.h; do
-
-for ac_header in $mh_header
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  { echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_header_compiler=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } >/dev/null && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-    ( cat <<\_ASBOX
-## ------------------------------------ ##
-## Report this to wmcbrine at users.sf.net ##
-## ------------------------------------ ##
-_ASBOX
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-done
-CPPFLAGS="$save_CPPFLAGS"
-
-
-save_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $MH_XINC_DIR"
-for mh_keydef in XK_KP_Delete XK_KP_Insert XK_KP_End XK_KP_Down XK_KP_Next \
-	XK_KP_Left XK_KP_Right XK_KP_Home XK_KP_Up XK_KP_Prior XK_KP_Begin; do
-	{ echo "$as_me:$LINENO: checking for $mh_keydef in keysym.h" >&5
-echo $ECHO_N "checking for $mh_keydef in keysym.h... $ECHO_C" >&6; }
-	mh_upper_name="HAVE_`echo $mh_keydef | tr 'a-z' 'A-Z'`"
-	cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <keysym.h>
-int
-main ()
-{
-int i = $mh_keydef;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  mh_have_key=yes; cat >>confdefs.h <<_ACEOF
-#define $mh_upper_name 1
-_ACEOF
-
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	mh_have_key=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-	{ echo "$as_me:$LINENO: result: $mh_have_key" >&5
-echo "${ECHO_T}$mh_have_key" >&6; }
-done
-CPPFLAGS="$save_CPPFLAGS"
-
-
-save_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $SYS_DEFS $MH_XINC_DIR"
-for td in XPointer ; do
-{ echo "$as_me:$LINENO: checking if $td is typedefed:" >&5
-echo $ECHO_N "checking if $td is typedefed:... $ECHO_C" >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include "X11/Xlib.h"
-int
-main ()
-{
-$td fred
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_compile") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  mh_td=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	mh_td=no
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-if test "$mh_td" = yes ; then
-	TD_upper=`echo $td | tr a-z A-Z`
-	cat >>confdefs.h <<_ACEOF
-#define ${TD_upper}_TYPEDEFED 1
-_ACEOF
-
-fi
-{ echo "$as_me:$LINENO: result: $mh_td" >&5
-echo "${ECHO_T}$mh_td" >&6; }
-done
-CPPFLAGS="$save_CPPFLAGS"
-
-if test $ac_cv_header_xpm_h = yes; then
-	MH_XLIBS="$MH_XLIBS -lXpm"
-fi
-# Check whether --enable-debug was given.
-if test "${enable_debug+set}" = set; then
-  enableval=$enable_debug; with_debug=$enableval
-else
-  with_debug=no
-fi
-
-cflags_g="`echo $CFLAGS | grep -c '\-g'`"
-cflags_O="`echo $CFLAGS | grep -c '\-O'`"
-
-if test "$with_debug" = yes; then
-	if test "$cflags_g" = "0"; then
-		CFLAGS="${CFLAGS} -g"
-	fi
-	if test "$cflags_O" != "0"; then
-		CFLAGS="`echo ${CFLAGS} | sed -e s/-O.//`"
-	fi
-	CFLAGS="${CFLAGS} -DPDCDEBUG"
-else
-	if test "$cflags_O" = "0"; then
-		CFLAGS="${CFLAGS} -O"
-	fi
-	if test "$cflags_g" != "0"; then
-		CFLAGS="`echo ${CFLAGS} | sed -e s/-g//`"
-	fi
-fi
-if test "$ac_cv_prog_CC" = "gcc"; then
-	if test "$with_debug" = yes; then
-		CFLAGS="${CFLAGS} -Wall"
-	else
-		CFLAGS="-O2 -Wall -fomit-frame-pointer"
-	fi
-fi
-if test "$on_qnx" = yes; then
-	if test "$with_debug" = yes; then
-		CFLAGS="-g"
-	else
-		CFLAGS="-Otax"
-	fi
-fi
-
-# Check whether --enable-widec was given.
-if test "${enable_widec+set}" = set; then
-  enableval=$enable_widec; with_widec=$enableval
-else
-  with_widec=no
-fi
-
-if test "$with_widec" = yes; then
-	SYS_DEFS="$SYS_DEFS -DPDC_WIDE"
-fi
-
-# Check whether --enable-xim was given.
-if test "${enable_xim+set}" = set; then
-  enableval=$enable_xim; with_xim=$enableval
-else
-  with_xim=no
-fi
-
-if test "$with_xim" = yes; then
-	SYS_DEFS="$SYS_DEFS -DPDC_XIM"
-fi
-
-# Check whether --enable-force-utf8 was given.
-if test "${enable_force_utf8+set}" = set; then
-  enableval=$enable_force_utf8; force_utf8=$enableval
-else
-  force_utf8=no
-fi
-
-if test "$force_utf8" = yes; then
-	SYS_DEFS="$SYS_DEFS -DPDC_FORCE_UTF8"
-fi
-
-# Check whether --enable-purify was given.
-if test "${enable_purify+set}" = set; then
-  enableval=$enable_purify; with_purify=$enableval
-else
-  with_purify=no
-fi
-
-if test "$with_purify" = yes; then
-	PURIFY="purify"
-else
-	PURIFY=""
-fi
-
-
-
-# Check whether --with-xaw3d was given.
-if test "${with_xaw3d+set}" = set; then
-  withval=$with_xaw3d; with_xaw3d=$withval
-else
-  with_xaw3d=no
-fi
-
-if test "$with_xaw3d" = yes; then
-
-cat >>confdefs.h <<\_ACEOF
-#define USE_XAW3D 1
-_ACEOF
-
-fi
-
-
-# Check whether --with-nextaw was given.
-if test "${with_nextaw+set}" = set; then
-  withval=$with_nextaw; with_nextaw=$withval
-else
-  with_nextaw=no
-fi
-
-if test "$with_nextaw" = yes; then
-
-cat >>confdefs.h <<\_ACEOF
-#define USE_NEXTAW 1
-_ACEOF
-
-fi
-
-
-{ echo "$as_me:$LINENO: checking shared library extension" >&5
-echo $ECHO_N "checking shared library extension... $ECHO_C" >&6; }
-SHLPST=".so"
-
-case "$target" in
-        *hp-hpux*)
-                SHLPST=".sl"
-                ;;
-        *ibm-aix*)
-                SHLPST=".a"
-                ;;
-        *qnx*)
-                SHLPST=""
-                ;;
-        *cygwin*)
-                SHLPST=".dll"
-                ;;
-        *darwin*)
-                SHLPST=".dylib"
-                ;;
-esac
-
-{ echo "$as_me:$LINENO: result: $SHLPST" >&5
-echo "${ECHO_T}$SHLPST" >&6; }
-
-
-
-AIX_DYN="no"
-BEOS_DYN="no"
-SHLFILE="XCurses"
-SHLFILES="XCurses"
-RXPACKEXPORTS=""
-SHLPRE="lib"
-LD_RXLIB1=""
-
-
-case "$target" in
-	*hp-hpux*)
-		SYS_DEFS="-D_HPUX_SOURCE"
-		LD_RXLIB1="ld -b -q -n"
-		;;
-	*ibm-aix*)
-		SYS_DEFS="-D_ALL_SOURCE -DAIX"
-		AIX_DYN="yes"
-		DYN_COMP="-DDYNAMIC"
-		LD_RXLIB1="ld -bnoentry -bM:SRE"
-		RXPACKEXPORTS="-bE:$SHLFILE.exp"
-		RXPACKEXP="$SHLFILE.exp"
-		;;
-	*dec-osf*)
-		if test "$ac_cv_prog_CC" = "gcc"; then
-			SYS_DEFS="-D_POSIX_SOURCE -D_XOPEN_SOURCE"
-		else
-			SYS_DEFS="-D_POSIX_SOURCE -D_XOPEN_SOURCE -Olimit 800"
-		fi
-		LD_RXLIB1="ld -shared"
-		;;
-	*sequent-dynix*|*esix*|*dgux*)
-		LD_RXLIB1="ld -G"
-		;;
-	*solaris*)
-		if test "$ac_cv_prog_CC" = "gcc"; then
-			LD_RXLIB1="gcc -shared"
-		else
-			LD_RXLIB1="ld -G"
-		fi
-		;;
-	sparc*sunos*)
-		SYS_DEFS="-DSUNOS -DSUNOS_STRTOD_BUG"
-		LD_RXLIB1="ld"
-		;;
-	*linux*|*atheos*|*nto-qnx*)
-		LD_RXLIB1="${CC} -shared"
-		;;
-	*freebsd*)
-		LD_RXLIB1="ld -Bdynamic -Bshareable"
-		;;
-	*pc-sco*)
-		LD_RXLIB1="ld -dy -G"
-		;;
-	*beos*)
-		LD_RXLIB1="${CC} -Wl,-shared -nostart -Xlinker -soname=\$(@)"
-		BEOS_DYN="yes"
-		;;
-	*qnx*)
-		SHLPRE=""
-		DYN_COMP="-Q"   # force no check for dynamic loading
-		SHLFILE=""
-		;;
-	*cygwin)
-		SHLPRE=""
-		DYN_COMP="-DDYNAMIC"
-		LD_RXLIB1="dllwrap --def \$(srcdir)/../win32/pdcurses.def --target i386-cygwin32 --dllname \$(@)"
-# cygwininstall target MUST install the shared library itself because
-# it puts it into $(bindir) not $(libdir) as all other platforms
-		;;
-	*darwin*)
-		DYN_COMP="-fno-common"
-		LD_RXLIB1="${CC} -flat_namespace -undefined suppress -dynamiclib -install_name=\$(@)"
-		;;
-	*)
-		;;
-esac
-
-
-if test "$DYN_COMP" = ""; then
-{ echo "$as_me:$LINENO: checking compiler flags for a dynamic object" >&5
-echo $ECHO_N "checking compiler flags for a dynamic object... $ECHO_C" >&6; }
-
-cat > conftest.$ac_ext <<EOF
-#line 5368 "configure"
-int a=0
-EOF
-
-	DYN_COMP=""
-	mh_cv_stop=no
-	save_cflags="$CFLAGS"
-	mh_cv_flags="-fPIC -KPIC +Z"
-	for a in $mh_cv_flags; do
-		CFLAGS="-c $a"
-
-		mh_compile='${CC-cc} -c $CFLAGS conftest.$ac_ext > conftest.tmp 2>&1'
-		if { (eval echo "$as_me:$LINENO: \"$mh_compile\"") >&5
-  (eval $mh_compile) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-			DYN_COMP=""
-		else
-			slash="\\"
-			mh_dyncomp="`egrep -c $slash$a conftest.tmp`"
-			if test "$mh_dyncomp" = "0"; then
-				DYN_COMP="$a -DDYNAMIC"
-				{ echo "$as_me:$LINENO: result: $a" >&5
-echo "${ECHO_T}$a" >&6; }
-				break
-			else
-				DYN_COMP=""
-			fi
-		fi
-	done
-	if test "$DYN_COMP" = ""; then
-		{ echo "$as_me:$LINENO: result: none of $mh_cv_flags supported" >&5
-echo "${ECHO_T}none of $mh_cv_flags supported" >&6; }
-	fi
-	if test "$LD_RXLIB1" = ""; then
-
-mh_compile='${CC-cc} -c $DYN_COMP conftest.$ac_ext 1>&5'
-cat > conftest.$ac_ext <<EOF
-#line 5407 "configure"
-int foo()
-{
-return(0);
-}
-EOF
-if { (eval echo "$as_me:$LINENO: \"$mh_compile\"") >&5
-  (eval $mh_compile) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && test -s conftest.o; then
-	mh_dyn_link='ld -shared -o conftest.rxlib conftest.o -lc 1>&5'
-#	mh_dyn_link='${CC} -Wl,-shared -o conftest.rxlib conftest.o -lc 1>&AC_FD_CC'
-	if { (eval echo "$as_me:$LINENO: \"$mh_dyn_link\"") >&5
-  (eval $mh_dyn_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && test -s conftest.rxlib; then
-		LD_RXLIB1="ld -shared"
-#		LD_RXLIB1="${CC} -Wl,-shared"
-		SHLPRE="lib"
-		SHLPST=".so"
-	else
-		mh_dyn_link='ld -G -o conftest.rxlib conftest.o 1>&5'
-#		mh_dyn_link='${CC} -Wl,-G -o conftest.rxlib conftest.o 1>&AC_FD_CC'
-		if { (eval echo "$as_me:$LINENO: \"$mh_dyn_link\"") >&5
-  (eval $mh_dyn_link) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && test -s conftest.rxlib; then
-			LD_RXLIB1="ld -G"
-#			LD_RXLIB1="${CC} -Wl,-G"
-			SHLPRE="lib"
-			SHLPST=".so"
-		else
-			LD_RXLIB1=""
-			SHLPRE=""
-			SHLPST=""
-		fi
-	fi
-fi
-rm -f conftest*
-
-	fi
-	CFLAGS=$save_cflags
-	rm -f conftest.*
-fi
-
-
-SHL_TARGETS=""
-
-if test "$AIX_DYN" = "yes"; then
-	aix_exports="config.exports.aix"
-	echo "" > $aix_exports
-fi
-
-if test "$ac_cv_header_dl_h" = "yes" -o "$ac_cv_header_dlfcn_h" = "yes" -o "$AIX_DYN" = "yes" -o "$BEOS_DYN" = "yes" -o "$DLFCNINCDIR" != "" -o "$DLFCNLIBDIR" != ""; then
-	EXPS="1,2,3,4,5,6,7,8,9"
-	for a in $SHLFILES
-	do
-		SHL_TARGETS="${SHL_TARGETS} ${SHLPRE}${a}${SHLPST}"
-		this=`echo $EXPS | cut -d, -f1`
-		EXPS=`echo $EXPS | cut -d, -f2-`
-		if test "$AIX_DYN" = "yes"; then
-			echo "RXPACKEXP$this=$a.exp" >> $aix_exports
-			echo "RXPACKEXPORTS$this=-bE:$a.exp" >> $aix_exports
-		fi
-	done
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-ac_config_files="$ac_config_files Makefile x11/$mymakefile x11/xcurses-config"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems.  If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
-  for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
-echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      *) $as_unset $ac_var ;;
-      esac ;;
-    esac
-  done
-
-  (set) 2>&1 |
-    case $as_nl`(ac_space=' '; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      # `set' does not quote correctly, so add quotes (double-quote
-      # substitution turns \\\\ into \\, and sed turns \\ into \).
-      sed -n \
-	"s/'/'\\\\''/g;
-	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
-      ;; #(
-    *)
-      # `set' quotes correctly as required by POSIX, so do not add quotes.
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-) |
-  sed '
-     /^ac_cv_env_/b end
-     t clear
-     :clear
-     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
-     t end
-     s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
-     :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
-  if test -w "$cache_file"; then
-    test "x$cache_file" != "x/dev/null" &&
-      { echo "$as_me:$LINENO: updating cache $cache_file" >&5
-echo "$as_me: updating cache $cache_file" >&6;}
-    cat confcache >$cache_file
-  else
-    { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
-echo "$as_me: not updating unwritable cache $cache_file" >&6;}
-  fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-DEFS=-DHAVE_CONFIG_H
-
-ac_libobjs=
-ac_ltlibobjs=
-for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
-  # 1. Remove the extension, and $U if already installed.
-  ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
-  ac_i=`echo "$ac_i" | sed "$ac_script"`
-  # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
-  #    will be set to the directory where LIBOBJS objects are built.
-  ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext"
-  ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIBOBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-
-: ${CONFIG_STATUS=./config.status}
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
-echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF
-#! $SHELL
-# Generated by $as_me.
-# 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-$SHELL}
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-## --------------------- ##
-## M4sh Initialization.  ##
-## --------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-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
-
-
-
-
-# PATH needs CR
-# 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
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
-  echo "#! /bin/sh" >conf$$.sh
-  echo  "exit 0"   >>conf$$.sh
-  chmod +x conf$$.sh
-  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-    PATH_SEPARATOR=';'
-  else
-    PATH_SEPARATOR=:
-  fi
-  rm -f conf$$.sh
-fi
-
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  as_unset=unset
-else
-  as_unset=false
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-as_nl='
-'
-IFS=" ""	$as_nl"
-
-# Find who we are.  Look in the path if we contain no directory separator.
-case $0 in
-  *[\\/]* ) as_myself=$0 ;;
-  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  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
-  echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  { (exit 1); exit 1; }
-fi
-
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-for as_var in \
-  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-  LC_TELEPHONE LC_TIME
-do
-  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
-    eval $as_var=C; export $as_var
-  else
-    ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
-  fi
-done
-
-# Required to use basename.
-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
-
-
-# Name of the executable.
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-	 X"$0" : 'X\(//\)$' \| \
-	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\/\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-
-# CDPATH.
-$as_unset CDPATH
-
-
-
-  as_lineno_1=$LINENO
-  as_lineno_2=$LINENO
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
-
-  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
-  # uniformly replaced by the line number.  The first 'sed' inserts a
-  # line-number line after each line using $LINENO; the second 'sed'
-  # does the real work.  The second script uses 'N' to pair each
-  # line-number line with the line containing $LINENO, and appends
-  # trailing '-' during substitution so that $LINENO is not a special
-  # case at line end.
-  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
-  # scripts with optimization help from Paolo Bonzini.  Blame Lee
-  # E. McMahon (1931-1989) for sed's syntax.  :-)
-  sed -n '
-    p
-    /[$]LINENO/=
-  ' <$as_myself |
-    sed '
-      s/[$]LINENO.*/&-/
-      t lineno
-      b
-      :lineno
-      N
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$as_me.lineno &&
-  chmod +x "$as_me.lineno" ||
-    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
-   { (exit 1); exit 1; }; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
-  as_dirname=dirname
-else
-  as_dirname=false
-fi
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in
--n*)
-  case `echo 'x\c'` in
-  *c*) ECHO_T='	';;	# ECHO_T is single tab character.
-  *)   ECHO_C='\c';;
-  esac;;
-*)
-  ECHO_N='-n';;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
-   test "X`expr 00001 : '.*\(...\)'`" = X001; then
-  as_expr=expr
-else
-  as_expr=false
-fi
-
-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
-fi
-echo >conf$$.file
-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 -p'.
-  ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-    as_ln_s='cp -p'
-elif ln conf$$.file conf$$ 2>/dev/null; then
-  as_ln_s=ln
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p=:
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-        test -d "$1/.";
-      else
-	case $1 in
-        -*)set "./$1";;
-	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
-	???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# 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
-
-# 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 PDCurses $as_me 3.4, which was
-generated by GNU Autoconf 2.61.  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`
-"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<_ACEOF
-# Files that config.status was made for.
-config_files="$ac_config_files"
-config_headers="$ac_config_headers"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-ac_cs_usage="\
-\`$as_me' instantiates files from templates according to the
-current configuration.
-
-Usage: $0 [OPTIONS] [FILE]...
-
-  -h, --help       print this help, then exit
-  -V, --version    print version number and configuration settings, then exit
-  -q, --quiet      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
-
-Report bugs to <bug-autoconf at gnu.org>."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
-ac_cs_version="\\
-PDCurses config.status 3.4
-configured by $0, generated by GNU Autoconf 2.61,
-  with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
-
-Copyright (C) 2006 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='$ac_pwd'
-srcdir='$srcdir'
-INSTALL='$INSTALL'
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-# If no file are specified by the user, then we need to provide default
-# value.  By we need to know if files were specified by the user.
-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=$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 )
-    echo "$ac_cs_version"; exit ;;
-  --debug | --debu | --deb | --de | --d | -d )
-    debug=: ;;
-  --file | --fil | --fi | --f )
-    $ac_shift
-    CONFIG_FILES="$CONFIG_FILES $ac_optarg"
-    ac_need_defaults=false;;
-  --header | --heade | --head | --hea )
-    $ac_shift
-    CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
-    ac_need_defaults=false;;
-  --he | --h)
-    # Conflict between --help and --header
-    { echo "$as_me: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&2
-   { (exit 1); exit 1; }; };;
-  --help | --hel | -h )
-    echo "$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.
-  -*) { echo "$as_me: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&2
-   { (exit 1); exit 1; }; } ;;
-
-  *) ac_config_targets="$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
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
-if \$ac_cs_recheck; then
-  echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
-  CONFIG_SHELL=$SHELL
-  export CONFIG_SHELL
-  exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-exec 5>>config.log
-{
-  echo
-  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
-_ASBOX
-  echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-# 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" ;;
-    "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
-    "x11/$mymakefile") CONFIG_FILES="$CONFIG_FILES x11/$mymakefile" ;;
-    "x11/xcurses-config") CONFIG_FILES="$CONFIG_FILES x11/xcurses-config" ;;
-
-  *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
-   { (exit 1); exit 1; }; };;
-  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+set}" = set || CONFIG_FILES=$config_files
-  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
-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=
-  trap 'exit_status=$?
-  { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
-' 0
-  trap '{ (exit 1); exit 1; }' 1 2 13 15
-}
-# Create a (secure) tmp directory for tmp files.
-
-{
-  tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
-  test -n "$tmp" && test -d "$tmp"
-}  ||
-{
-  tmp=./conf$$-$RANDOM
-  (umask 077 && mkdir "$tmp")
-} ||
-{
-   echo "$me: cannot create a temporary directory in ." >&2
-   { (exit 1); exit 1; }
-}
-
-#
-# Set up the sed scripts for CONFIG_FILES section.
-#
-
-# No need to generate the scripts if there are no CONFIG_FILES.
-# This happens for instance when ./config.status config.h
-if test -n "$CONFIG_FILES"; then
-
-_ACEOF
-
-
-
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
-  cat >conf$$subs.sed <<_ACEOF
-SHELL!$SHELL$ac_delim
-PATH_SEPARATOR!$PATH_SEPARATOR$ac_delim
-PACKAGE_NAME!$PACKAGE_NAME$ac_delim
-PACKAGE_TARNAME!$PACKAGE_TARNAME$ac_delim
-PACKAGE_VERSION!$PACKAGE_VERSION$ac_delim
-PACKAGE_STRING!$PACKAGE_STRING$ac_delim
-PACKAGE_BUGREPORT!$PACKAGE_BUGREPORT$ac_delim
-exec_prefix!$exec_prefix$ac_delim
-prefix!$prefix$ac_delim
-program_transform_name!$program_transform_name$ac_delim
-bindir!$bindir$ac_delim
-sbindir!$sbindir$ac_delim
-libexecdir!$libexecdir$ac_delim
-datarootdir!$datarootdir$ac_delim
-datadir!$datadir$ac_delim
-sysconfdir!$sysconfdir$ac_delim
-sharedstatedir!$sharedstatedir$ac_delim
-localstatedir!$localstatedir$ac_delim
-includedir!$includedir$ac_delim
-oldincludedir!$oldincludedir$ac_delim
-docdir!$docdir$ac_delim
-infodir!$infodir$ac_delim
-htmldir!$htmldir$ac_delim
-dvidir!$dvidir$ac_delim
-pdfdir!$pdfdir$ac_delim
-psdir!$psdir$ac_delim
-libdir!$libdir$ac_delim
-localedir!$localedir$ac_delim
-mandir!$mandir$ac_delim
-DEFS!$DEFS$ac_delim
-ECHO_C!$ECHO_C$ac_delim
-ECHO_N!$ECHO_N$ac_delim
-ECHO_T!$ECHO_T$ac_delim
-LIBS!$LIBS$ac_delim
-build_alias!$build_alias$ac_delim
-host_alias!$host_alias$ac_delim
-target_alias!$target_alias$ac_delim
-CC!$CC$ac_delim
-CFLAGS!$CFLAGS$ac_delim
-LDFLAGS!$LDFLAGS$ac_delim
-CPPFLAGS!$CPPFLAGS$ac_delim
-ac_ct_CC!$ac_ct_CC$ac_delim
-EXEEXT!$EXEEXT$ac_delim
-OBJEXT!$OBJEXT$ac_delim
-build!$build$ac_delim
-build_cpu!$build_cpu$ac_delim
-build_vendor!$build_vendor$ac_delim
-build_os!$build_os$ac_delim
-host!$host$ac_delim
-host_cpu!$host_cpu$ac_delim
-host_vendor!$host_vendor$ac_delim
-host_os!$host_os$ac_delim
-target!$target$ac_delim
-target_cpu!$target_cpu$ac_delim
-target_vendor!$target_vendor$ac_delim
-target_os!$target_os$ac_delim
-SYS_DEFS!$SYS_DEFS$ac_delim
-RANLIB!$RANLIB$ac_delim
-INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim
-INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim
-INSTALL_DATA!$INSTALL_DATA$ac_delim
-SET_MAKE!$SET_MAKE$ac_delim
-CPP!$CPP$ac_delim
-GREP!$GREP$ac_delim
-EGREP!$EGREP$ac_delim
-MH_EXTRA_LIBS!$MH_EXTRA_LIBS$ac_delim
-XMKMF!$XMKMF$ac_delim
-MH_XINC_DIR!$MH_XINC_DIR$ac_delim
-MH_XLIBS!$MH_XLIBS$ac_delim
-PURIFY!$PURIFY$ac_delim
-SHLPST!$SHLPST$ac_delim
-DYN_COMP!$DYN_COMP$ac_delim
-LD_RXLIB1!$LD_RXLIB1$ac_delim
-SHLPRE!$SHLPRE$ac_delim
-SHL_TARGETS!$SHL_TARGETS$ac_delim
-O2SAVE!$O2SAVE$ac_delim
-CC2O!$CC2O$ac_delim
-SAVE2O!$SAVE2O$ac_delim
-RXPACKEXPORTS!$RXPACKEXPORTS$ac_delim
-LIBOBJS!$LIBOBJS$ac_delim
-LTLIBOBJS!$LTLIBOBJS$ac_delim
-_ACEOF
-
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 81; then
-    break
-  elif $ac_last_try; then
-    { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
-   { (exit 1); exit 1; }; }
-  else
-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
-  fi
-done
-
-ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed`
-if test -n "$ac_eof"; then
-  ac_eof=`echo "$ac_eof" | sort -nru | sed 1q`
-  ac_eof=`expr $ac_eof + 1`
-fi
-
-cat >>$CONFIG_STATUS <<_ACEOF
-cat >"\$tmp/subs-1.sed" <<\CEOF$ac_eof
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end
-_ACEOF
-sed '
-s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g
-s/^/s,@/; s/!/@,|#_!!_#|/
-:n
-t n
-s/'"$ac_delim"'$/,g/; t
-s/$/\\/; p
-N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n
-' >>$CONFIG_STATUS <conf$$subs.sed
-rm -f conf$$subs.sed
-cat >>$CONFIG_STATUS <<_ACEOF
-:end
-s/|#_!!_#|//g
-CEOF$ac_eof
-_ACEOF
-
-
-# VPATH may cause trouble with some makes, so we remove $(srcdir),
-# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
-  ac_vpsub='/^[	 ]*VPATH[	 ]*=/{
-s/:*\$(srcdir):*/:/
-s/:*\${srcdir}:*/:/
-s/:*@srcdir@:*/:/
-s/^\([^=]*=[	 ]*\):*/\1/
-s/:*$//
-s/^[^=]*=[	 ]*$//
-}'
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-fi # test -n "$CONFIG_FILES"
-
-
-for ac_tag in  :F $CONFIG_FILES  :H $CONFIG_HEADERS
-do
-  case $ac_tag in
-  :[FHLC]) ac_mode=$ac_tag; continue;;
-  esac
-  case $ac_mode$ac_tag in
-  :[FHL]*:*);;
-  :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5
-echo "$as_me: error: Invalid tag $ac_tag." >&2;}
-   { (exit 1); exit 1; }; };;
-  :[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="$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 ||
-	   { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5
-echo "$as_me: error: cannot find input file: $ac_f" >&2;}
-   { (exit 1); exit 1; }; };;
-      esac
-      ac_file_inputs="$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 "`IFS=:
-	  echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure."
-    if test x"$ac_file" != x-; then
-      configure_input="$ac_file.  $configure_input"
-      { echo "$as_me:$LINENO: creating $ac_file" >&5
-echo "$as_me: creating $ac_file" >&6;}
-    fi
-
-    case $ac_tag in
-    *:-:* | *:-) cat >"$tmp/stdin";;
-    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 ||
-echo 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"
-  case $as_dir in #(
-  -*) as_dir=./$as_dir;;
-  esac
-  test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
-    as_dirs=
-    while :; do
-      case $as_dir in #(
-      *\'*) as_qdir=`echo "$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 ||
-echo 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" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
-echo "$as_me: error: cannot create directory $as_dir" >&2;}
-   { (exit 1); exit 1; }; }; }
-  ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
-  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`echo "$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
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-# 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=
-
-case `sed -n '/datarootdir/ {
-  p
-  q
-}
-/@datadir@/p
-/@docdir@/p
-/@infodir@/p
-/@localedir@/p
-/@mandir@/p
-' $ac_file_inputs` in
-*datarootdir*) ac_datarootdir_seen=yes;;
-*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
-  { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
-  ac_datarootdir_hack='
-  s&@datadir@&$datadir&g
-  s&@docdir@&$docdir&g
-  s&@infodir@&$infodir&g
-  s&@localedir@&$localedir&g
-  s&@mandir@&$mandir&g
-    s&\\\${datarootdir}&$datarootdir&g' ;;
-esac
-_ACEOF
-
-# Neutralize VPATH when `$srcdir' = `.'.
-# Shell code in configure.ac might set extrasub.
-# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF
-  sed "$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s&@configure_input@&$configure_input&;t t
-s&@top_builddir@&$ac_top_builddir_sub&;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
-" $ac_file_inputs | sed -f "$tmp/subs-1.sed" >$tmp/out
-
-test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
-  { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
-  { ac_out=`sed -n '/^[	 ]*datarootdir[	 ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
-  { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined.  Please make sure it is defined." >&5
-echo "$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 "$tmp/stdin"
-  case $ac_file in
-  -) cat "$tmp/out"; rm -f "$tmp/out";;
-  *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;;
-  esac
- ;;
-  :H)
-  #
-  # CONFIG_HEADER
-  #
-_ACEOF
-
-# Transform confdefs.h into a sed script `conftest.defines', that
-# substitutes the proper values into config.h.in to produce config.h.
-rm -f conftest.defines conftest.tail
-# First, append a space to every undef/define line, to ease matching.
-echo 's/$/ /' >conftest.defines
-# Then, protect against being on the right side of a sed subst, or in
-# an unquoted here document, in config.status.  If some macros were
-# called several times there might be several #defines for the same
-# symbol, which is useless.  But do not sort them, since the last
-# AC_DEFINE must be honored.
-ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
-# These sed commands are passed to sed as "A NAME B PARAMS C VALUE D", where
-# NAME is the cpp macro being defined, VALUE is the value it is being given.
-# PARAMS is the parameter list in the macro definition--in most cases, it's
-# just an empty string.
-ac_dA='s,^\\([	 #]*\\)[^	 ]*\\([	 ]*'
-ac_dB='\\)[	 (].*,\\1define\\2'
-ac_dC=' '
-ac_dD=' ,'
-
-uniq confdefs.h |
-  sed -n '
-	t rset
-	:rset
-	s/^[	 ]*#[	 ]*define[	 ][	 ]*//
-	t ok
-	d
-	:ok
-	s/[\\&,]/\\&/g
-	s/^\('"$ac_word_re"'\)\(([^()]*)\)[	 ]*\(.*\)/ '"$ac_dA"'\1'"$ac_dB"'\2'"${ac_dC}"'\3'"$ac_dD"'/p
-	s/^\('"$ac_word_re"'\)[	 ]*\(.*\)/'"$ac_dA"'\1'"$ac_dB$ac_dC"'\2'"$ac_dD"'/p
-  ' >>conftest.defines
-
-# Remove the space that was appended to ease matching.
-# Then 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.
-# (The regexp can be short, since the line contains either #define or #undef.)
-echo 's/ $//
-s,^[	 #]*u.*,/* & */,' >>conftest.defines
-
-# Break up conftest.defines:
-ac_max_sed_lines=50
-
-# First sed command is:	 sed -f defines.sed $ac_file_inputs >"$tmp/out1"
-# Second one is:	 sed -f defines.sed "$tmp/out1" >"$tmp/out2"
-# Third one will be:	 sed -f defines.sed "$tmp/out2" >"$tmp/out1"
-# et cetera.
-ac_in='$ac_file_inputs'
-ac_out='"$tmp/out1"'
-ac_nxt='"$tmp/out2"'
-
-while :
-do
-  # Write a here document:
-    cat >>$CONFIG_STATUS <<_ACEOF
-    # First, check the format of the line:
-    cat >"\$tmp/defines.sed" <<\\CEOF
-/^[	 ]*#[	 ]*undef[	 ][	 ]*$ac_word_re[	 ]*\$/b def
-/^[	 ]*#[	 ]*define[	 ][	 ]*$ac_word_re[(	 ]/b def
-b
-:def
-_ACEOF
-  sed ${ac_max_sed_lines}q conftest.defines >>$CONFIG_STATUS
-  echo 'CEOF
-    sed -f "$tmp/defines.sed"' "$ac_in >$ac_out" >>$CONFIG_STATUS
-  ac_in=$ac_out; ac_out=$ac_nxt; ac_nxt=$ac_in
-  sed 1,${ac_max_sed_lines}d conftest.defines >conftest.tail
-  grep . conftest.tail >/dev/null || break
-  rm -f conftest.defines
-  mv conftest.tail conftest.defines
-done
-rm -f conftest.defines conftest.tail
-
-echo "ac_result=$ac_in" >>$CONFIG_STATUS
-cat >>$CONFIG_STATUS <<\_ACEOF
-  if test x"$ac_file" != x-; then
-    echo "/* $configure_input  */" >"$tmp/config.h"
-    cat "$ac_result" >>"$tmp/config.h"
-    if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then
-      { echo "$as_me:$LINENO: $ac_file is unchanged" >&5
-echo "$as_me: $ac_file is unchanged" >&6;}
-    else
-      rm -f $ac_file
-      mv "$tmp/config.h" $ac_file
-    fi
-  else
-    echo "/* $configure_input  */"
-    cat "$ac_result"
-  fi
-  rm -f "$tmp/out12"
- ;;
-
-
-  esac
-
-done # for ac_tag
-
-
-{ (exit 0); exit 0; }
-_ACEOF
-chmod +x $CONFIG_STATUS
-ac_clean_files=$ac_clean_files_save
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded.  So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status.  When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
-  ac_cs_success=:
-  ac_config_status_args=
-  test "$silent" = yes &&
-    ac_config_status_args="$ac_config_status_args --quiet"
-  exec 5>/dev/null
-  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
-  exec 5>>config.log
-  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
-  # would make configure fail if this is the last instruction.
-  $ac_cs_success || { (exit 1); exit 1; }
-fi
-
-
-case "$target" in
-        *ibm-aix*)
-                mv x11/Makefile.aix x11/Makefile
-                { echo "$as_me:$LINENO: result: renaming x11/Makefile.aix to x11/Makefile" >&5
-echo "${ECHO_T}renaming x11/Makefile.aix to x11/Makefile" >&6; }
-                ;;
-        *)
-                ;;
-esac
-
-
-cat >>confdefs.h <<\_ACEOF
-#define PDC_MAX_SIGNALS
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_DECKEYSYM_H
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_SUNKEYSYM_H
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XPM_H
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XK_KP_DELETE
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XK_KP_INSERT
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XK_KP_END
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XK_KP_DOWN
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XK_KP_NEXT
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XK_KP_LEFT
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XK_KP_RIGHT
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XK_KP_HOME
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XK_KP_UP
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XK_KP_PRIOR
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_XK_KP_BEGIN
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define USE_XAW3D
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define USE_NEXTAW
-_ACEOF
-
-
-
-cat >>confdefs.h <<\_ACEOF
-#define XPOINTER_TYPEDEFED
-_ACEOF
-
diff --git a/src/other/PDCurses/configure.ac b/src/other/PDCurses/configure.ac
deleted file mode 100644
index cf87496..0000000
--- a/src/other/PDCurses/configure.ac
+++ /dev/null
@@ -1,285 +0,0 @@
-dnl $Id: configure.ac,v 1.35 2008/07/21 12:19:21 wmcbrine Exp $
-dnl Process this file with autoconf to produce a configure script.
-
-AC_INIT([PDCurses], [3.4], [wmcbrine at users.sf.net], [PDCurses])
-AC_CONFIG_SRCDIR([curspriv.h])
-
-AC_SUBST(prefix)
-
-AC_PROG_CC
-
-AC_CONFIG_HEADER(config.h)
-dnl Checks for system first
-AC_CANONICAL_SYSTEM([])
-
-mymakefile="Makefile"
-on_qnx=no
-case "$target" in
-	*hp-hpux*) 
-		SYS_DEFS="-D_HPUX_SOURCE"
-		;;
-	*ibm-aix*)
-		SYS_DEFS="-D_ALL_SOURCE"
-		mymakefile="Makefile.aix"
-		;;
-	*dec-osf*)
-		SYS_DEFS="-D_XOPEN_SOURCE_EXTENDED"
-		;;
-	*pc-sco*)
-		SYS_DEFS="-UM_XENIX -b elf"
-		;;
-	*qnx*)
-		on_qnx=yes
-		SYS_DEFS="-Q"
-		;;
-	*)
-		;;
-esac
-AC_SUBST(SYS_DEFS)
-
-MH_CHECK_MAX_SIGNALS(NSIG __sys_nsig)
-
-dnl Check for other programs.
-AC_PROG_RANLIB
-AC_PROG_INSTALL
-AC_PROG_MAKE_SET
-
-dnl ensure that the system has System V IPC support
-MH_IPC
-
-if test $ac_cv_header_stdc != yes; then
-	AC_MSG_ERROR([Need ANSI C headers])
-fi
-
-dnl Checks for libraries.
-
-AC_CHECK_HEADERS(fcntl.h \
-	sys/time.h \
-	sys/select.h \
-	dlfcn.h \
-	dl.h
-)
-
-dnl Checks for typedefs, structures, and compiler characteristics.
-AC_HEADER_TIME
-MH_CHECK_LIB(socket nls)
-AC_SUBST(MH_EXTRA_LIBS)
-MH_CHECK_CC_O
-
-dnl Checks for library functions.
-AC_TYPE_SIGNAL
-AC_CHECK_FUNCS(vsscanf usleep poll vsnprintf)
-
-dnl Check for X includes and X libraries
-AC_PATH_X
-MH_CHECK_X_INC
-MH_CHECK_X_LIB
-MH_CHECK_X_HEADERS(DECkeysym.h Sunkeysym.h xpm.h)
-MH_CHECK_X_KEYDEFS(XK_KP_Delete XK_KP_Insert XK_KP_End XK_KP_Down XK_KP_Next \
-	XK_KP_Left XK_KP_Right XK_KP_Home XK_KP_Up XK_KP_Prior XK_KP_Begin)
-MH_CHECK_X_TYPEDEF(XPointer)
-dnl
-dnl extra for xpm library
-if test $ac_cv_header_xpm_h = yes; then
-	MH_XLIBS="$MH_XLIBS -lXpm"
-fi
-dnl ---------- allow --enable-debug to compile in debug mode ---------
-AC_ARG_ENABLE(debug,
-	[  --enable-debug          turn on debugging],
-	[with_debug=$enableval],
-	[with_debug=no],
-)
-cflags_g="`echo $CFLAGS | grep -c '\-g'`"
-cflags_O="`echo $CFLAGS | grep -c '\-O'`"
-
-if test "$with_debug" = yes; then
-	if test "$cflags_g" = "0"; then
-		CFLAGS="${CFLAGS} -g"
-	fi
-	if test "$cflags_O" != "0"; then
-		CFLAGS="`echo ${CFLAGS} | sed -e s/-O.//`"
-	fi
-	CFLAGS="${CFLAGS} -DPDCDEBUG"
-else
-	if test "$cflags_O" = "0"; then
-		CFLAGS="${CFLAGS} -O"
-	fi
-	if test "$cflags_g" != "0"; then
-		CFLAGS="`echo ${CFLAGS} | sed -e s/-g//`"
-	fi
-fi
-if test "$ac_cv_prog_CC" = "gcc"; then
-	if test "$with_debug" = yes; then
-		CFLAGS="${CFLAGS} -Wall"
-	else
-		CFLAGS="-O2 -Wall -fomit-frame-pointer"
-	fi
-fi
-if test "$on_qnx" = yes; then
-	if test "$with_debug" = yes; then
-		CFLAGS="-g"
-	else
-		CFLAGS="-Otax"
-	fi
-fi
-
-dnl --------------- check for wide character support -----------------
-dnl allow --enable-widec to include wide character support
-AC_ARG_ENABLE(widec,
-	[  --enable-widec          include support for wide characters],
-	[with_widec=$enableval],
-	[with_widec=no],
-)
-if test "$with_widec" = yes; then
-	SYS_DEFS="$SYS_DEFS -DPDC_WIDE"
-fi
-
-dnl -------------------- check for XIM support -----------------------
-dnl allow --enable-xim to include XIM support
-AC_ARG_ENABLE(xim,
-	[  --enable-xim            include support for XIM],
-	[with_xim=$enableval],
-	[with_xim=no],
-)
-if test "$with_xim" = yes; then
-	SYS_DEFS="$SYS_DEFS -DPDC_XIM"
-fi
-
-dnl ------------------------ force UTF-8? ----------------------------
-dnl allow --enable-force-utf8 to override locale settings
-AC_ARG_ENABLE(force-utf8,
-	[  --enable-force-utf8     override locale settings; use UTF-8],
-	[force_utf8=$enableval],
-	[force_utf8=no],
-)
-if test "$force_utf8" = yes; then
-	SYS_DEFS="$SYS_DEFS -DPDC_FORCE_UTF8"
-fi
-
-dnl ----------------- check for Purify support -----------------------
-dnl allow --enable-purify to enable linking with Purify
-AC_ARG_ENABLE(purify,
-	[  --enable-purify         link with Purify (TM)],
-	[with_purify=$enableval],
-	[with_purify=no],
-)
-if test "$with_purify" = yes; then
-	PURIFY="purify"
-else
-	PURIFY=""
-fi
-AC_SUBST(PURIFY)
-
-dnl --------------------- check for Xaw3d library --------------------
-dnl allow --with-xaw3d to link with PDCurses
-AC_ARG_WITH(xaw3d,
-	[  --with-xaw3d            link with Xaw3d],
-	[with_xaw3d=$withval],
-	[with_xaw3d=no],
-)
-if test "$with_xaw3d" = yes; then
-	AC_DEFINE([USE_XAW3D], [1],
-		[Define if you want to use Xaw3d library]
-	)
-fi
-
-dnl --------------------- check for neXtaw library -------------------
-dnl allow --with-nextaw to link with PDCurses
-AC_ARG_WITH(nextaw,
-	[  --with-nextaw           link with neXtaw],
-	[with_nextaw=$withval],
-	[with_nextaw=no],
-)
-if test "$with_nextaw" = yes; then
-	AC_DEFINE([USE_NEXTAW], [1],
-		[Define if you want to use neXtaw library]
-	)
-fi
-
-dnl -------------- check how to make shared libraries ----------------
-dnl Force the ability of shared library usage
-MH_SHARED_LIBRARY(XCurses)
-
-AC_CONFIG_FILES([Makefile x11/$mymakefile x11/xcurses-config])
-AC_OUTPUT
-
-case "$target" in
-        *ibm-aix*)
-                mv x11/Makefile.aix x11/Makefile
-                AC_MSG_RESULT(renaming x11/Makefile.aix to x11/Makefile)
-                ;;
-        *)
-                ;;
-esac
-
-AC_DEFINE([PDC_MAX_SIGNALS], [],
-	[Define as the system defined limit for number of signals]
-)
-
-AC_DEFINE([HAVE_DECKEYSYM_H], [],
-	[Define if you have the <DECkeySym.h> header file]
-)
-
-AC_DEFINE([HAVE_SUNKEYSYM_H], [],
-	[Define if you have the <Sunkeysym.h> header file]
-)
-
-AC_DEFINE([HAVE_XPM_H], [],
-	[Define if you have the <xpm.h> header file]
-)
-
-AC_DEFINE([HAVE_XK_KP_DELETE], [],
-	[Define if you have this defined in <keysym.h>]
-)
-
-AC_DEFINE([HAVE_XK_KP_INSERT], [],
-	[Define if you have this defined in <keysym.h>]
-)
-
-AC_DEFINE([HAVE_XK_KP_END], [],
-	[Define if you have this defined in <keysym.h>]
-)
-
-AC_DEFINE([HAVE_XK_KP_DOWN], [],
-	[Define if you have this defined in <keysym.h>]
-)
-
-AC_DEFINE([HAVE_XK_KP_NEXT], [],
-	[Define if you have this defined in <keysym.h>]
-)
-
-AC_DEFINE([HAVE_XK_KP_LEFT], [],
-	[Define if you have this defined in <keysym.h>]
-)
-
-AC_DEFINE([HAVE_XK_KP_RIGHT], [],
-	[Define if you have this defined in <keysym.h>]
-)
-
-AC_DEFINE([HAVE_XK_KP_HOME], [],
-	[Define if you have this defined in <keysym.h>]
-)
-
-AC_DEFINE([HAVE_XK_KP_UP], [],
-	[Define if you have this defined in <keysym.h>]
-)
-
-AC_DEFINE([HAVE_XK_KP_PRIOR], [],
-	[Define if you have this defined in <keysym.h>]
-)
-
-AC_DEFINE([HAVE_XK_KP_BEGIN], [],
-	[Define if you have this defined in <keysym.h>]
-)
-
-AC_DEFINE([USE_XAW3D], [],
-	[Define if you want to use Xaw3d library]
-)
-
-AC_DEFINE([USE_NEXTAW], [],
-	[Define if you want to use neXtaw library]
-)
-
-AC_DEFINE([XPOINTER_TYPEDEFED], [],
-	[Define XPointer is typedefed in X11/Xlib.h]
-)
diff --git a/src/other/PDCurses/curses.h b/src/other/PDCurses/curses.h
deleted file mode 100644
index 295084e..0000000
--- a/src/other/PDCurses/curses.h
+++ /dev/null
@@ -1,1387 +0,0 @@
-/* Public Domain Curses */
-
-/* $Id: curses.h,v 1.297 2011/04/20 22:13:33 wmcbrine Exp $ */
-
-/*----------------------------------------------------------------------*
- *                              PDCurses                                *
- *----------------------------------------------------------------------*/
-
-#ifndef __PDCURSES__
-#define __PDCURSES__ 1
-
-/*man-start**************************************************************
-
-PDCurses definitions list:  (Only define those needed)
-
-    XCURSES         True if compiling for X11.
-    PDC_RGB         True if you want to use RGB color definitions
-                    (Red = 1, Green = 2, Blue = 4) instead of BGR.
-    PDC_WIDE        True if building wide-character support.
-    PDC_DLL_BUILD   True if building a Win32 DLL.
-    NCURSES_MOUSE_VERSION   Use the ncurses mouse API instead
-                            of PDCurses' traditional mouse API.
-
-PDCurses portable platform definitions list:
-
-    PDC_BUILD       Defines API build version.
-    PDCURSES        Enables access to PDCurses-only routines.
-    XOPEN           Always true.
-    SYSVcurses      True if you are compiling for SYSV portability.
-    BSDcurses       True if you are compiling for BSD portability.
-
-**man-end****************************************************************/
-
-#define PDC_BUILD 3401
-#define PDCURSES        1      /* PDCurses-only routines */
-#define XOPEN           1      /* X/Open Curses routines */
-#define SYSVcurses      1      /* System V Curses routines */
-#define BSDcurses       1      /* BSD Curses routines */
-#define CHTYPE_LONG     1      /* size of chtype; long */
-
-/*----------------------------------------------------------------------*/
-
-#include <stdarg.h>
-#include <stddef.h>
-#include <stdio.h>             /* Required by X/Open usage below */
-
-#ifdef PDC_WIDE
-# include <wchar.h>
-#endif
-
-#if defined(__cplusplus) || defined(__cplusplus__) || defined(__CPLUSPLUS)
-extern "C"
-{
-# define bool _bool
-#endif
-
-/*----------------------------------------------------------------------
- *
- *  PDCurses Manifest Constants
- *
- */
-
-#ifndef FALSE
-# define FALSE 0
-#endif
-#ifndef TRUE
-# define TRUE 1
-#endif
-#ifndef NULL
-# define NULL (void *)0
-#endif
-#ifndef ERR
-# define ERR (-1)
-#endif
-#ifndef OK
-# define OK 0
-#endif
-
-/*----------------------------------------------------------------------
- *
- *  PDCurses Type Declarations
- *
- */
-
-typedef unsigned char bool;    /* PDCurses Boolean type */
-
-#ifdef CHTYPE_LONG
-# if _LP64
-typedef unsigned int chtype;
-# else
-typedef unsigned long chtype;  /* 16-bit attr + 16-bit char */
-# endif
-#else
-typedef unsigned short chtype; /* 8-bit attr + 8-bit char */
-#endif
-
-#ifdef PDC_WIDE
-typedef chtype cchar_t;
-#endif
-
-typedef chtype attr_t;
-
-/*----------------------------------------------------------------------
- *
- *  PDCurses Mouse Interface -- SYSVR4, with extensions
- *
- */
-
-typedef struct
-{
-    int x;           /* absolute column, 0 based, measured in characters */
-    int y;           /* absolute row, 0 based, measured in characters */
-    short button[3]; /* state of each button */
-    int changes;     /* flags indicating what has changed with the mouse */
-} MOUSE_STATUS;
-
-#define BUTTON_RELEASED         0x0000
-#define BUTTON_PRESSED          0x0001
-#define BUTTON_CLICKED          0x0002
-#define BUTTON_DOUBLE_CLICKED   0x0003
-#define BUTTON_TRIPLE_CLICKED   0x0004
-#define BUTTON_MOVED            0x0005  /* PDCurses */
-#define WHEEL_SCROLLED          0x0006  /* PDCurses */
-#define BUTTON_ACTION_MASK      0x0007  /* PDCurses */
-
-#define PDC_BUTTON_SHIFT        0x0008  /* PDCurses */
-#define PDC_BUTTON_CONTROL      0x0010  /* PDCurses */
-#define PDC_BUTTON_ALT          0x0020  /* PDCurses */
-#define BUTTON_MODIFIER_MASK    0x0038  /* PDCurses */
-
-#define MOUSE_X_POS             (Mouse_status.x)
-#define MOUSE_Y_POS             (Mouse_status.y)
-
-/*
- * Bits associated with the .changes field:
- *   3         2         1         0
- * 210987654321098765432109876543210
- *                                 1 <- button 1 has changed
- *                                10 <- button 2 has changed
- *                               100 <- button 3 has changed
- *                              1000 <- mouse has moved
- *                             10000 <- mouse position report
- *                            100000 <- mouse wheel up
- *                           1000000 <- mouse wheel down
- *                          10000000 <- mouse wheel left
- *                         100000000 <- mouse wheel right
- */
-
-#define PDC_MOUSE_MOVED         0x0008
-#define PDC_MOUSE_POSITION      0x0010
-#define PDC_MOUSE_WHEEL_UP      0x0020
-#define PDC_MOUSE_WHEEL_DOWN    0x0040
-#define PDC_MOUSE_WHEEL_LEFT    0x0080
-#define PDC_MOUSE_WHEEL_RIGHT   0x0100
-
-#define A_BUTTON_CHANGED        (Mouse_status.changes & 7)
-#define MOUSE_MOVED             (Mouse_status.changes & PDC_MOUSE_MOVED)
-#define MOUSE_POS_REPORT        (Mouse_status.changes & PDC_MOUSE_POSITION)
-#define BUTTON_CHANGED(x)       (Mouse_status.changes & (1 << ((x) - 1)))
-#define BUTTON_STATUS(x)        (Mouse_status.button[(x) - 1])
-#define MOUSE_WHEEL_UP          (Mouse_status.changes & PDC_MOUSE_WHEEL_UP)
-#define MOUSE_WHEEL_DOWN        (Mouse_status.changes & PDC_MOUSE_WHEEL_DOWN)
-#define MOUSE_WHEEL_LEFT        (Mouse_status.changes & PDC_MOUSE_WHEEL_LEFT)
-#define MOUSE_WHEEL_RIGHT       (Mouse_status.changes & PDC_MOUSE_WHEEL_RIGHT)
-
-/* mouse bit-masks */
-
-#define BUTTON1_RELEASED        0x00000001L
-#define BUTTON1_PRESSED         0x00000002L
-#define BUTTON1_CLICKED         0x00000004L
-#define BUTTON1_DOUBLE_CLICKED  0x00000008L
-#define BUTTON1_TRIPLE_CLICKED  0x00000010L
-#define BUTTON1_MOVED           0x00000010L /* PDCurses */
-
-#define BUTTON2_RELEASED        0x00000020L
-#define BUTTON2_PRESSED         0x00000040L
-#define BUTTON2_CLICKED         0x00000080L
-#define BUTTON2_DOUBLE_CLICKED  0x00000100L
-#define BUTTON2_TRIPLE_CLICKED  0x00000200L
-#define BUTTON2_MOVED           0x00000200L /* PDCurses */
-
-#define BUTTON3_RELEASED        0x00000400L
-#define BUTTON3_PRESSED         0x00000800L
-#define BUTTON3_CLICKED         0x00001000L
-#define BUTTON3_DOUBLE_CLICKED  0x00002000L
-#define BUTTON3_TRIPLE_CLICKED  0x00004000L
-#define BUTTON3_MOVED           0x00004000L /* PDCurses */
-
-/* For the ncurses-compatible functions only, BUTTON4_PRESSED and 
-   BUTTON5_PRESSED are returned for mouse scroll wheel up and down; 
-   otherwise PDCurses doesn't support buttons 4 and 5 */
-
-#define BUTTON4_RELEASED        0x00008000L
-#define BUTTON4_PRESSED         0x00010000L
-#define BUTTON4_CLICKED         0x00020000L
-#define BUTTON4_DOUBLE_CLICKED  0x00040000L
-#define BUTTON4_TRIPLE_CLICKED  0x00080000L
-
-#define BUTTON5_RELEASED        0x00100000L
-#define BUTTON5_PRESSED         0x00200000L
-#define BUTTON5_CLICKED         0x00400000L
-#define BUTTON5_DOUBLE_CLICKED  0x00800000L
-#define BUTTON5_TRIPLE_CLICKED  0x01000000L
-
-#define MOUSE_WHEEL_SCROLL      0x02000000L /* PDCurses */
-#define BUTTON_MODIFIER_SHIFT   0x04000000L /* PDCurses */
-#define BUTTON_MODIFIER_CONTROL 0x08000000L /* PDCurses */
-#define BUTTON_MODIFIER_ALT     0x10000000L /* PDCurses */
-
-#define ALL_MOUSE_EVENTS        0x1fffffffL
-#define REPORT_MOUSE_POSITION   0x20000000L
-
-/* ncurses mouse interface */
-
-typedef unsigned long mmask_t;
-
-typedef struct
-{
-        short id;       /* unused, always 0 */
-        int x, y, z;    /* x, y same as MOUSE_STATUS; z unused */
-        mmask_t bstate; /* equivalent to changes + button[], but
-                           in the same format as used for mousemask() */
-} MEVENT;
-
-#ifdef NCURSES_MOUSE_VERSION
-# define BUTTON_SHIFT   BUTTON_MODIFIER_SHIFT
-# define BUTTON_CONTROL BUTTON_MODIFIER_CONTROL
-# define BUTTON_CTRL    BUTTON_MODIFIER_CONTROL
-# define BUTTON_ALT     BUTTON_MODIFIER_ALT
-#else
-# define BUTTON_SHIFT   PDC_BUTTON_SHIFT
-# define BUTTON_CONTROL PDC_BUTTON_CONTROL
-# define BUTTON_ALT     PDC_BUTTON_ALT
-#endif
-
-/*----------------------------------------------------------------------
- *
- *  PDCurses Structure Definitions
- *
- */
-
-typedef struct _win       /* definition of a window */
-{
-    int   _cury;          /* current pseudo-cursor */
-    int   _curx;
-    int   _maxy;          /* max window coordinates */
-    int   _maxx;
-    int   _begy;          /* origin on screen */
-    int   _begx;
-    int   _flags;         /* window properties */
-    chtype _attrs;        /* standard attributes and colors */
-    chtype _bkgd;         /* background, normally blank */
-    bool  _clear;         /* causes clear at next refresh */
-    bool  _leaveit;       /* leaves cursor where it is */
-    bool  _scroll;        /* allows window scrolling */
-    bool  _nodelay;       /* input character wait flag */
-    bool  _immed;         /* immediate update flag */
-    bool  _sync;          /* synchronise window ancestors */
-    bool  _use_keypad;    /* flags keypad key mode active */
-    chtype **_y;          /* pointer to line pointer array */
-    int   *_firstch;      /* first changed character in line */
-    int   *_lastch;       /* last changed character in line */
-    int   _tmarg;         /* top of scrolling region */
-    int   _bmarg;         /* bottom of scrolling region */
-    int   _delayms;       /* milliseconds of delay for getch() */
-    int   _parx, _pary;   /* coords relative to parent (0,0) */
-    struct _win *_parent; /* subwin's pointer to parent win */
-} WINDOW;
-
-/* Avoid using the SCREEN struct directly -- use the corresponding 
-   functions if possible. This struct may eventually be made private. */
-
-typedef struct
-{
-    bool  alive;          /* if initscr() called, and not endwin() */
-    bool  autocr;         /* if cr -> lf */
-    bool  cbreak;         /* if terminal unbuffered */
-    bool  echo;           /* if terminal echo */
-    bool  raw_inp;        /* raw input mode (v. cooked input) */
-    bool  raw_out;        /* raw output mode (7 v. 8 bits) */
-    bool  audible;        /* FALSE if the bell is visual */
-    bool  mono;           /* TRUE if current screen is mono */
-    bool  resized;        /* TRUE if TERM has been resized */
-    bool  orig_attr;      /* TRUE if we have the original colors */
-    short orig_fore;      /* original screen foreground color */
-    short orig_back;      /* original screen foreground color */
-    int   cursrow;        /* position of physical cursor */
-    int   curscol;        /* position of physical cursor */
-    int   visibility;     /* visibility of cursor */
-    int   orig_cursor;    /* original cursor size */
-    int   lines;          /* new value for LINES */
-    int   cols;           /* new value for COLS */
-    unsigned long _trap_mbe;       /* trap these mouse button events */
-    unsigned long _map_mbe_to_key; /* map mouse buttons to slk */
-    int   mouse_wait;              /* time to wait (in ms) for a
-                                      button release after a press, in 
-                                      order to count it as a click */
-    int   slklines;                /* lines in use by slk_init() */
-    WINDOW *slk_winptr;            /* window for slk */
-    int   linesrippedoff;          /* lines ripped off via ripoffline() */
-    int   linesrippedoffontop;     /* lines ripped off on 
-                                      top via ripoffline() */
-    int   delaytenths;             /* 1/10ths second to wait block
-                                      getch() for */
-    bool  _preserve;               /* TRUE if screen background
-                                      to be preserved */
-    int   _restore;                /* specifies if screen background
-                                      to be restored, and how */
-    bool  save_key_modifiers;      /* TRUE if each key modifiers saved
-                                      with each key press */
-    bool  return_key_modifiers;    /* TRUE if modifier keys are
-                                      returned as "real" keys */
-    bool  key_code;                /* TRUE if last key is a special key;
-                                      used internally by get_wch() */
-#ifdef XCURSES
-    int   XcurscrSize;    /* size of Xcurscr shared memory block */
-    bool  sb_on;
-    int   sb_viewport_y;
-    int   sb_viewport_x;
-    int   sb_total_y;
-    int   sb_total_x;
-    int   sb_cur_y;
-    int   sb_cur_x;
-#endif
-    short line_color;     /* color of line attributes - default -1 */
-} SCREEN;
-
-/*----------------------------------------------------------------------
- *
- *  PDCurses External Variables
- *
- */
-
-#ifdef PDC_DLL_BUILD
-# ifdef CURSES_LIBRARY
-#  define PDCEX __declspec(dllexport) extern
-# else
-#  define PDCEX __declspec(dllimport)
-# endif
-#else
-# define PDCEX extern
-#endif
-
-PDCEX  int          LINES;        /* terminal height */
-PDCEX  int          COLS;         /* terminal width */
-PDCEX  WINDOW       *stdscr;      /* the default screen window */
-PDCEX  WINDOW       *curscr;      /* the current screen image */
-PDCEX  SCREEN       *SP;          /* curses variables */
-PDCEX  MOUSE_STATUS Mouse_status;
-PDCEX  int          COLORS;
-PDCEX  int          COLOR_PAIRS;
-PDCEX  int          TABSIZE;
-PDCEX  chtype       acs_map[];    /* alternate character set map */
-PDCEX  char         ttytype[];    /* terminal name/description */
-
-/*man-start**************************************************************
-
-PDCurses Text Attributes
-========================
-
-Originally, PDCurses used a short (16 bits) for its chtype. To include 
-color, a number of things had to be sacrificed from the strict Unix and 
-System V support. The main problem was fitting all character attributes 
-and color into an unsigned char (all 8 bits!).
-
-Today, PDCurses by default uses a long (32 bits) for its chtype, as in 
-System V. The short chtype is still available, by undefining CHTYPE_LONG 
-and rebuilding the library.
-
-The following is the structure of a win->_attrs chtype:
-
-short form:
-
--------------------------------------------------
-|15|14|13|12|11|10| 9| 8| 7| 6| 5| 4| 3| 2| 1| 0|
--------------------------------------------------
-  color number |  attrs |   character eg 'a'
-
-The available non-color attributes are bold, reverse and blink. Others 
-have no effect. The high order char is an index into an array of 
-physical colors (defined in color.c) -- 32 foreground/background color 
-pairs (5 bits) plus 3 bits for other attributes.
-
-long form:
-
-----------------------------------------------------------------------------
-|31|30|29|28|27|26|25|24|23|22|21|20|19|18|17|16|15|14|13|12|..| 3| 2| 1| 0|
-----------------------------------------------------------------------------
-      color number      |     modifiers         |      character eg 'a'
-
-The available non-color attributes are bold, underline, invisible, 
-right-line, left-line, protect, reverse and blink. 256 color pairs (8 
-bits), 8 bits for other attributes, and 16 bits for character data.
-
-**man-end****************************************************************/
-
-/*** Video attribute macros ***/
-
-#define A_NORMAL      (chtype)0
-
-#ifdef CHTYPE_LONG
-# define A_ALTCHARSET (chtype)0x00010000
-# define A_RIGHTLINE  (chtype)0x00020000
-# define A_LEFTLINE   (chtype)0x00040000
-# define A_INVIS      (chtype)0x00080000
-# define A_UNDERLINE  (chtype)0x00100000
-# define A_REVERSE    (chtype)0x00200000
-# define A_BLINK      (chtype)0x00400000
-# define A_BOLD       (chtype)0x00800000
-
-# define A_ATTRIBUTES (chtype)0xffff0000
-# define A_CHARTEXT   (chtype)0x0000ffff
-# define A_COLOR      (chtype)0xff000000
-
-# define A_ITALIC     A_INVIS
-# define A_PROTECT    (A_UNDERLINE | A_LEFTLINE | A_RIGHTLINE)
-
-# define PDC_ATTR_SHIFT  19
-# define PDC_COLOR_SHIFT 24
-#else
-# define A_BOLD       (chtype)0x0100  /* X/Open */
-# define A_REVERSE    (chtype)0x0200  /* X/Open */
-# define A_BLINK      (chtype)0x0400  /* X/Open */
-
-# define A_ATTRIBUTES (chtype)0xff00  /* X/Open */
-# define A_CHARTEXT   (chtype)0x00ff  /* X/Open */
-# define A_COLOR      (chtype)0xf800  /* System V */
-
-# define A_ALTCHARSET A_NORMAL        /* X/Open */
-# define A_PROTECT    A_NORMAL        /* X/Open */
-# define A_UNDERLINE  A_NORMAL        /* X/Open */
-
-# define A_LEFTLINE   A_NORMAL
-# define A_RIGHTLINE  A_NORMAL
-# define A_ITALIC     A_NORMAL
-# define A_INVIS      A_NORMAL
-
-# define PDC_ATTR_SHIFT   8
-# define PDC_COLOR_SHIFT 11
-#endif
-
-#define A_STANDOUT    (A_REVERSE | A_BOLD) /* X/Open */
-#define A_DIM         A_NORMAL
-
-#define CHR_MSK       A_CHARTEXT           /* Obsolete */
-#define ATR_MSK       A_ATTRIBUTES         /* Obsolete */
-#define ATR_NRM       A_NORMAL             /* Obsolete */
-
-/* For use with attr_t -- X/Open says, "these shall be distinct", so 
-   this is a non-conforming implementation. */
-
-#define WA_NORMAL     A_NORMAL
-
-#define WA_ALTCHARSET A_ALTCHARSET
-#define WA_BLINK      A_BLINK
-#define WA_BOLD       A_BOLD
-#define WA_DIM        A_DIM
-#define WA_INVIS      A_INVIS
-#define WA_LEFT       A_LEFTLINE
-#define WA_PROTECT    A_PROTECT
-#define WA_REVERSE    A_REVERSE
-#define WA_RIGHT      A_RIGHTLINE
-#define WA_STANDOUT   A_STANDOUT
-#define WA_UNDERLINE  A_UNDERLINE
-
-#define WA_HORIZONTAL A_NORMAL
-#define WA_LOW        A_NORMAL
-#define WA_TOP        A_NORMAL
-#define WA_VERTICAL   A_NORMAL
-
-#define WA_ATTRIBUTES A_ATTRIBUTES
-
-/*** Alternate character set macros ***/
-
-/* 'w' = 32-bit chtype; acs_map[] index | A_ALTCHARSET
-   'n' = 16-bit chtype; it gets the fallback set because no bit is 
-         available for A_ALTCHARSET */
-
-#ifdef CHTYPE_LONG
-# define ACS_PICK(w, n) ((chtype)w | A_ALTCHARSET)
-#else
-# define ACS_PICK(w, n) ((chtype)n)
-#endif
-
-/* VT100-compatible symbols -- box chars */
-
-#define ACS_ULCORNER  ACS_PICK('l', '+')
-#define ACS_LLCORNER  ACS_PICK('m', '+')
-#define ACS_URCORNER  ACS_PICK('k', '+')
-#define ACS_LRCORNER  ACS_PICK('j', '+')
-#define ACS_RTEE      ACS_PICK('u', '+')
-#define ACS_LTEE      ACS_PICK('t', '+')
-#define ACS_BTEE      ACS_PICK('v', '+')
-#define ACS_TTEE      ACS_PICK('w', '+')
-#define ACS_HLINE     ACS_PICK('q', '-')
-#define ACS_VLINE     ACS_PICK('x', '|')
-#define ACS_PLUS      ACS_PICK('n', '+')
-
-/* VT100-compatible symbols -- other */
-
-#define ACS_S1        ACS_PICK('o', '-')
-#define ACS_S9        ACS_PICK('s', '_')
-#define ACS_DIAMOND   ACS_PICK('`', '+')
-#define ACS_CKBOARD   ACS_PICK('a', ':')
-#define ACS_DEGREE    ACS_PICK('f', '\'')
-#define ACS_PLMINUS   ACS_PICK('g', '#')
-#define ACS_BULLET    ACS_PICK('~', 'o')
-
-/* Teletype 5410v1 symbols -- these are defined in SysV curses, but
-   are not well-supported by most terminals. Stick to VT100 characters
-   for optimum portability. */
-
-#define ACS_LARROW    ACS_PICK(',', '<')
-#define ACS_RARROW    ACS_PICK('+', '>')
-#define ACS_DARROW    ACS_PICK('.', 'v')
-#define ACS_UARROW    ACS_PICK('-', '^')
-#define ACS_BOARD     ACS_PICK('h', '#')
-#define ACS_LANTERN   ACS_PICK('i', '*')
-#define ACS_BLOCK     ACS_PICK('0', '#')
-
-/* That goes double for these -- undocumented SysV symbols. Don't use
-   them. */
-
-#define ACS_S3        ACS_PICK('p', '-')
-#define ACS_S7        ACS_PICK('r', '-')
-#define ACS_LEQUAL    ACS_PICK('y', '<')
-#define ACS_GEQUAL    ACS_PICK('z', '>')
-#define ACS_PI        ACS_PICK('{', 'n')
-#define ACS_NEQUAL    ACS_PICK('|', '+')
-#define ACS_STERLING  ACS_PICK('}', 'L')
-
-/* Box char aliases */
-
-#define ACS_BSSB      ACS_ULCORNER
-#define ACS_SSBB      ACS_LLCORNER
-#define ACS_BBSS      ACS_URCORNER
-#define ACS_SBBS      ACS_LRCORNER
-#define ACS_SBSS      ACS_RTEE
-#define ACS_SSSB      ACS_LTEE
-#define ACS_SSBS      ACS_BTEE
-#define ACS_BSSS      ACS_TTEE
-#define ACS_BSBS      ACS_HLINE
-#define ACS_SBSB      ACS_VLINE
-#define ACS_SSSS      ACS_PLUS
-
-/* cchar_t aliases */
-
-#ifdef PDC_WIDE
-# define WACS_ULCORNER (&(acs_map['l']))
-# define WACS_LLCORNER (&(acs_map['m']))
-# define WACS_URCORNER (&(acs_map['k']))
-# define WACS_LRCORNER (&(acs_map['j']))
-# define WACS_RTEE     (&(acs_map['u']))
-# define WACS_LTEE     (&(acs_map['t']))
-# define WACS_BTEE     (&(acs_map['v']))
-# define WACS_TTEE     (&(acs_map['w']))
-# define WACS_HLINE    (&(acs_map['q']))
-# define WACS_VLINE    (&(acs_map['x']))
-# define WACS_PLUS     (&(acs_map['n']))
-
-# define WACS_S1       (&(acs_map['o']))
-# define WACS_S9       (&(acs_map['s']))
-# define WACS_DIAMOND  (&(acs_map['`']))
-# define WACS_CKBOARD  (&(acs_map['a']))
-# define WACS_DEGREE   (&(acs_map['f']))
-# define WACS_PLMINUS  (&(acs_map['g']))
-# define WACS_BULLET   (&(acs_map['~']))
-
-# define WACS_LARROW   (&(acs_map[',']))
-# define WACS_RARROW   (&(acs_map['+']))
-# define WACS_DARROW   (&(acs_map['.']))
-# define WACS_UARROW   (&(acs_map['-']))
-# define WACS_BOARD    (&(acs_map['h']))
-# define WACS_LANTERN  (&(acs_map['i']))
-# define WACS_BLOCK    (&(acs_map['0']))
-
-# define WACS_S3       (&(acs_map['p']))
-# define WACS_S7       (&(acs_map['r']))
-# define WACS_LEQUAL   (&(acs_map['y']))
-# define WACS_GEQUAL   (&(acs_map['z']))
-# define WACS_PI       (&(acs_map['{']))
-# define WACS_NEQUAL   (&(acs_map['|']))
-# define WACS_STERLING (&(acs_map['}']))
-
-# define WACS_BSSB     WACS_ULCORNER
-# define WACS_SSBB     WACS_LLCORNER
-# define WACS_BBSS     WACS_URCORNER
-# define WACS_SBBS     WACS_LRCORNER
-# define WACS_SBSS     WACS_RTEE
-# define WACS_SSSB     WACS_LTEE
-# define WACS_SSBS     WACS_BTEE
-# define WACS_BSSS     WACS_TTEE
-# define WACS_BSBS     WACS_HLINE
-# define WACS_SBSB     WACS_VLINE
-# define WACS_SSSS     WACS_PLUS
-#endif
-
-/*** Color macros ***/
-
-#define COLOR_BLACK   0
-
-#ifdef PDC_RGB        /* RGB */
-# define COLOR_RED    1
-# define COLOR_GREEN  2
-# define COLOR_BLUE   4
-#else                 /* BGR */
-# define COLOR_BLUE   1
-# define COLOR_GREEN  2
-# define COLOR_RED    4
-#endif
-
-#define COLOR_CYAN    (COLOR_BLUE | COLOR_GREEN)
-#define COLOR_MAGENTA (COLOR_RED | COLOR_BLUE)
-#define COLOR_YELLOW  (COLOR_RED | COLOR_GREEN)
-
-#define COLOR_WHITE   7
-
-/*----------------------------------------------------------------------
- *
- *  Function and Keypad Key Definitions.
- *  Many are just for compatibility.
- *
- */
-
-#define KEY_CODE_YES  0x100  /* If get_wch() gives a key code */
-
-#define KEY_BREAK     0x101  /* Not on PC KBD */
-#define KEY_DOWN      0x102  /* Down arrow key */
-#define KEY_UP        0x103  /* Up arrow key */
-#define KEY_LEFT      0x104  /* Left arrow key */
-#define KEY_RIGHT     0x105  /* Right arrow key */
-#define KEY_HOME      0x106  /* home key */
-#define KEY_BACKSPACE 0x107  /* not on pc */
-#define KEY_F0        0x108  /* function keys; 64 reserved */
-
-#define KEY_DL        0x148  /* delete line */
-#define KEY_IL        0x149  /* insert line */
-#define KEY_DC        0x14a  /* delete character */
-#define KEY_IC        0x14b  /* insert char or enter ins mode */
-#define KEY_EIC       0x14c  /* exit insert char mode */
-#define KEY_CLEAR     0x14d  /* clear screen */
-#define KEY_EOS       0x14e  /* clear to end of screen */
-#define KEY_EOL       0x14f  /* clear to end of line */
-#define KEY_SF        0x150  /* scroll 1 line forward */
-#define KEY_SR        0x151  /* scroll 1 line back (reverse) */
-#define KEY_NPAGE     0x152  /* next page */
-#define KEY_PPAGE     0x153  /* previous page */
-#define KEY_STAB      0x154  /* set tab */
-#define KEY_CTAB      0x155  /* clear tab */
-#define KEY_CATAB     0x156  /* clear all tabs */
-#define KEY_ENTER     0x157  /* enter or send (unreliable) */
-#define KEY_SRESET    0x158  /* soft/reset (partial/unreliable) */
-#define KEY_RESET     0x159  /* reset/hard reset (unreliable) */
-#define KEY_PRINT     0x15a  /* print/copy */
-#define KEY_LL        0x15b  /* home down/bottom (lower left) */
-#define KEY_ABORT     0x15c  /* abort/terminate key (any) */
-#define KEY_SHELP     0x15d  /* short help */
-#define KEY_LHELP     0x15e  /* long help */
-#define KEY_BTAB      0x15f  /* Back tab key */
-#define KEY_BEG       0x160  /* beg(inning) key */
-#define KEY_CANCEL    0x161  /* cancel key */
-#define KEY_CLOSE     0x162  /* close key */
-#define KEY_COMMAND   0x163  /* cmd (command) key */
-#define KEY_COPY      0x164  /* copy key */
-#define KEY_CREATE    0x165  /* create key */
-#define KEY_END       0x166  /* end key */
-#define KEY_EXIT      0x167  /* exit key */
-#define KEY_FIND      0x168  /* find key */
-#define KEY_HELP      0x169  /* help key */
-#define KEY_MARK      0x16a  /* mark key */
-#define KEY_MESSAGE   0x16b  /* message key */
-#define KEY_MOVE      0x16c  /* move key */
-#define KEY_NEXT      0x16d  /* next object key */
-#define KEY_OPEN      0x16e  /* open key */
-#define KEY_OPTIONS   0x16f  /* options key */
-#define KEY_PREVIOUS  0x170  /* previous object key */
-#define KEY_REDO      0x171  /* redo key */
-#define KEY_REFERENCE 0x172  /* ref(erence) key */
-#define KEY_REFRESH   0x173  /* refresh key */
-#define KEY_REPLACE   0x174  /* replace key */
-#define KEY_RESTART   0x175  /* restart key */
-#define KEY_RESUME    0x176  /* resume key */
-#define KEY_SAVE      0x177  /* save key */
-#define KEY_SBEG      0x178  /* shifted beginning key */
-#define KEY_SCANCEL   0x179  /* shifted cancel key */
-#define KEY_SCOMMAND  0x17a  /* shifted command key */
-#define KEY_SCOPY     0x17b  /* shifted copy key */
-#define KEY_SCREATE   0x17c  /* shifted create key */
-#define KEY_SDC       0x17d  /* shifted delete char key */
-#define KEY_SDL       0x17e  /* shifted delete line key */
-#define KEY_SELECT    0x17f  /* select key */
-#define KEY_SEND      0x180  /* shifted end key */
-#define KEY_SEOL      0x181  /* shifted clear line key */
-#define KEY_SEXIT     0x182  /* shifted exit key */
-#define KEY_SFIND     0x183  /* shifted find key */
-#define KEY_SHOME     0x184  /* shifted home key */
-#define KEY_SIC       0x185  /* shifted input key */
-
-#define KEY_SLEFT     0x187  /* shifted left arrow key */
-#define KEY_SMESSAGE  0x188  /* shifted message key */
-#define KEY_SMOVE     0x189  /* shifted move key */
-#define KEY_SNEXT     0x18a  /* shifted next key */
-#define KEY_SOPTIONS  0x18b  /* shifted options key */
-#define KEY_SPREVIOUS 0x18c  /* shifted prev key */
-#define KEY_SPRINT    0x18d  /* shifted print key */
-#define KEY_SREDO     0x18e  /* shifted redo key */
-#define KEY_SREPLACE  0x18f  /* shifted replace key */
-#define KEY_SRIGHT    0x190  /* shifted right arrow */
-#define KEY_SRSUME    0x191  /* shifted resume key */
-#define KEY_SSAVE     0x192  /* shifted save key */
-#define KEY_SSUSPEND  0x193  /* shifted suspend key */
-#define KEY_SUNDO     0x194  /* shifted undo key */
-#define KEY_SUSPEND   0x195  /* suspend key */
-#define KEY_UNDO      0x196  /* undo key */
-
-/* PDCurses-specific key definitions -- PC only */
-
-#define ALT_0         0x197
-#define ALT_1         0x198
-#define ALT_2         0x199
-#define ALT_3         0x19a
-#define ALT_4         0x19b
-#define ALT_5         0x19c
-#define ALT_6         0x19d
-#define ALT_7         0x19e
-#define ALT_8         0x19f
-#define ALT_9         0x1a0
-#define ALT_A         0x1a1
-#define ALT_B         0x1a2
-#define ALT_C         0x1a3
-#define ALT_D         0x1a4
-#define ALT_E         0x1a5
-#define ALT_F         0x1a6
-#define ALT_G         0x1a7
-#define ALT_H         0x1a8
-#define ALT_I         0x1a9
-#define ALT_J         0x1aa
-#define ALT_K         0x1ab
-#define ALT_L         0x1ac
-#define ALT_M         0x1ad
-#define ALT_N         0x1ae
-#define ALT_O         0x1af
-#define ALT_P         0x1b0
-#define ALT_Q         0x1b1
-#define ALT_R         0x1b2
-#define ALT_S         0x1b3
-#define ALT_T         0x1b4
-#define ALT_U         0x1b5
-#define ALT_V         0x1b6
-#define ALT_W         0x1b7
-#define ALT_X         0x1b8
-#define ALT_Y         0x1b9
-#define ALT_Z         0x1ba
-
-#define CTL_LEFT      0x1bb  /* Control-Left-Arrow */
-#define CTL_RIGHT     0x1bc
-#define CTL_PGUP      0x1bd
-#define CTL_PGDN      0x1be
-#define CTL_HOME      0x1bf
-#define CTL_END       0x1c0
-
-#define KEY_A1        0x1c1  /* upper left on Virtual keypad */
-#define KEY_A2        0x1c2  /* upper middle on Virt. keypad */
-#define KEY_A3        0x1c3  /* upper right on Vir. keypad */
-#define KEY_B1        0x1c4  /* middle left on Virt. keypad */
-#define KEY_B2        0x1c5  /* center on Virt. keypad */
-#define KEY_B3        0x1c6  /* middle right on Vir. keypad */
-#define KEY_C1        0x1c7  /* lower left on Virt. keypad */
-#define KEY_C2        0x1c8  /* lower middle on Virt. keypad */
-#define KEY_C3        0x1c9  /* lower right on Vir. keypad */
-
-#define PADSLASH      0x1ca  /* slash on keypad */
-#define PADENTER      0x1cb  /* enter on keypad */
-#define CTL_PADENTER  0x1cc  /* ctl-enter on keypad */
-#define ALT_PADENTER  0x1cd  /* alt-enter on keypad */
-#define PADSTOP       0x1ce  /* stop on keypad */
-#define PADSTAR       0x1cf  /* star on keypad */
-#define PADMINUS      0x1d0  /* minus on keypad */
-#define PADPLUS       0x1d1  /* plus on keypad */
-#define CTL_PADSTOP   0x1d2  /* ctl-stop on keypad */
-#define CTL_PADCENTER 0x1d3  /* ctl-enter on keypad */
-#define CTL_PADPLUS   0x1d4  /* ctl-plus on keypad */
-#define CTL_PADMINUS  0x1d5  /* ctl-minus on keypad */
-#define CTL_PADSLASH  0x1d6  /* ctl-slash on keypad */
-#define CTL_PADSTAR   0x1d7  /* ctl-star on keypad */
-#define ALT_PADPLUS   0x1d8  /* alt-plus on keypad */
-#define ALT_PADMINUS  0x1d9  /* alt-minus on keypad */
-#define ALT_PADSLASH  0x1da  /* alt-slash on keypad */
-#define ALT_PADSTAR   0x1db  /* alt-star on keypad */
-#define ALT_PADSTOP   0x1dc  /* alt-stop on keypad */
-#define CTL_INS       0x1dd  /* ctl-insert */
-#define ALT_DEL       0x1de  /* alt-delete */
-#define ALT_INS       0x1df  /* alt-insert */
-#define CTL_UP        0x1e0  /* ctl-up arrow */
-#define CTL_DOWN      0x1e1  /* ctl-down arrow */
-#define CTL_TAB       0x1e2  /* ctl-tab */
-#define ALT_TAB       0x1e3
-#define ALT_MINUS     0x1e4
-#define ALT_EQUAL     0x1e5
-#define ALT_HOME      0x1e6
-#define ALT_PGUP      0x1e7
-#define ALT_PGDN      0x1e8
-#define ALT_END       0x1e9
-#define ALT_UP        0x1ea  /* alt-up arrow */
-#define ALT_DOWN      0x1eb  /* alt-down arrow */
-#define ALT_RIGHT     0x1ec  /* alt-right arrow */
-#define ALT_LEFT      0x1ed  /* alt-left arrow */
-#define ALT_ENTER     0x1ee  /* alt-enter */
-#define ALT_ESC       0x1ef  /* alt-escape */
-#define ALT_BQUOTE    0x1f0  /* alt-back quote */
-#define ALT_LBRACKET  0x1f1  /* alt-left bracket */
-#define ALT_RBRACKET  0x1f2  /* alt-right bracket */
-#define ALT_SEMICOLON 0x1f3  /* alt-semi-colon */
-#define ALT_FQUOTE    0x1f4  /* alt-forward quote */
-#define ALT_COMMA     0x1f5  /* alt-comma */
-#define ALT_STOP      0x1f6  /* alt-stop */
-#define ALT_FSLASH    0x1f7  /* alt-forward slash */
-#define ALT_BKSP      0x1f8  /* alt-backspace */
-#define CTL_BKSP      0x1f9  /* ctl-backspace */
-#define PAD0          0x1fa  /* keypad 0 */
-
-#define CTL_PAD0      0x1fb  /* ctl-keypad 0 */
-#define CTL_PAD1      0x1fc
-#define CTL_PAD2      0x1fd
-#define CTL_PAD3      0x1fe
-#define CTL_PAD4      0x1ff
-#define CTL_PAD5      0x200
-#define CTL_PAD6      0x201
-#define CTL_PAD7      0x202
-#define CTL_PAD8      0x203
-#define CTL_PAD9      0x204
-
-#define ALT_PAD0      0x205  /* alt-keypad 0 */
-#define ALT_PAD1      0x206
-#define ALT_PAD2      0x207
-#define ALT_PAD3      0x208
-#define ALT_PAD4      0x209
-#define ALT_PAD5      0x20a
-#define ALT_PAD6      0x20b
-#define ALT_PAD7      0x20c
-#define ALT_PAD8      0x20d
-#define ALT_PAD9      0x20e
-
-#define CTL_DEL       0x20f  /* clt-delete */
-#define ALT_BSLASH    0x210  /* alt-back slash */
-#define CTL_ENTER     0x211  /* ctl-enter */
-
-#define SHF_PADENTER  0x212  /* shift-enter on keypad */
-#define SHF_PADSLASH  0x213  /* shift-slash on keypad */
-#define SHF_PADSTAR   0x214  /* shift-star  on keypad */
-#define SHF_PADPLUS   0x215  /* shift-plus  on keypad */
-#define SHF_PADMINUS  0x216  /* shift-minus on keypad */
-#define SHF_UP        0x217  /* shift-up on keypad */
-#define SHF_DOWN      0x218  /* shift-down on keypad */
-#define SHF_IC        0x219  /* shift-insert on keypad */
-#define SHF_DC        0x21a  /* shift-delete on keypad */
-
-#define KEY_MOUSE     0x21b  /* "mouse" key */
-#define KEY_SHIFT_L   0x21c  /* Left-shift */
-#define KEY_SHIFT_R   0x21d  /* Right-shift */
-#define KEY_CONTROL_L 0x21e  /* Left-control */
-#define KEY_CONTROL_R 0x21f  /* Right-control */
-#define KEY_ALT_L     0x220  /* Left-alt */
-#define KEY_ALT_R     0x221  /* Right-alt */
-#define KEY_RESIZE    0x222  /* Window resize */
-#define KEY_SUP       0x223  /* Shifted up arrow */
-#define KEY_SDOWN     0x224  /* Shifted down arrow */
-
-#define KEY_MIN       KEY_BREAK      /* Minimum curses key value */
-#define KEY_MAX       KEY_SDOWN      /* Maximum curses key */
-
-#define KEY_F(n)      (KEY_F0 + (n))
-
-/*----------------------------------------------------------------------
- *
- *  PDCurses Function Declarations
- *
- */
-
-/* Standard */
-
-int     addch(const chtype);
-int     addchnstr(const chtype *, int);
-int     addchstr(const chtype *);
-int     addnstr(const char *, int);
-int     addstr(const char *);
-int     attroff(chtype);
-int     attron(chtype);
-int     attrset(chtype);
-int     attr_get(attr_t *, short *, void *);
-int     attr_off(attr_t, void *);
-int     attr_on(attr_t, void *);
-int     attr_set(attr_t, short, void *);
-int     baudrate(void);
-int     beep(void);
-int     bkgd(chtype);
-void    bkgdset(chtype);
-int     border(chtype, chtype, chtype, chtype, chtype, chtype, chtype, chtype);
-int     box(WINDOW *, chtype, chtype);
-bool    can_change_color(void);
-int     cbreak(void); 
-int     chgat(int, attr_t, short, const void *);
-int     clearok(WINDOW *, bool);
-int     clear(void);
-int     clrtobot(void);
-int     clrtoeol(void);
-int     color_content(short, short *, short *, short *);
-int     color_set(short, void *);
-int     copywin(const WINDOW *, WINDOW *, int, int, int, int, int, int, int);
-int     curs_set(int);
-int     def_prog_mode(void);
-int     def_shell_mode(void);
-int     delay_output(int);
-int     delch(void);
-int     deleteln(void);
-void    delscreen(SCREEN *); 
-int     delwin(WINDOW *);
-WINDOW *derwin(WINDOW *, int, int, int, int);
-int     doupdate(void);
-WINDOW *dupwin(WINDOW *);
-int     echochar(const chtype);
-int     echo(void);
-int     endwin(void);
-char    erasechar(void);
-int     erase(void);
-void    filter(void);
-int     flash(void);
-int     flushinp(void);
-chtype  getbkgd(WINDOW *);
-int     getnstr(char *, int);
-int     getstr(char *);
-WINDOW *getwin(FILE *);
-int     halfdelay(int);
-bool    has_colors(void);
-bool    has_ic(void);
-bool    has_il(void);
-int     hline(chtype, int);
-void    idcok(WINDOW *, bool);
-int     idlok(WINDOW *, bool);
-void    immedok(WINDOW *, bool);
-int     inchnstr(chtype *, int);
-int     inchstr(chtype *);
-chtype  inch(void);
-int     init_color(short, short, short, short);
-int     init_pair(short, short, short);
-WINDOW *initscr(void);
-int     innstr(char *, int);
-int     insch(chtype);
-int     insdelln(int);
-int     insertln(void);
-int     insnstr(const char *, int);
-int     insstr(const char *);
-int     instr(char *);
-int     intrflush(WINDOW *, bool);
-bool    isendwin(void);
-bool    is_linetouched(WINDOW *, int);
-bool    is_wintouched(WINDOW *);
-char   *keyname(int);
-int     keypad(WINDOW *, bool);
-char    killchar(void);
-int     leaveok(WINDOW *, bool);
-char   *longname(void);
-int     meta(WINDOW *, bool);
-int     move(int, int);
-int     mvaddch(int, int, const chtype);
-int     mvaddchnstr(int, int, const chtype *, int);
-int     mvaddchstr(int, int, const chtype *);
-int     mvaddnstr(int, int, const char *, int);
-int     mvaddstr(int, int, const char *);
-int     mvchgat(int, int, int, attr_t, short, const void *);
-int     mvcur(int, int, int, int);
-int     mvdelch(int, int);
-int     mvderwin(WINDOW *, int, int);
-int     mvgetch(int, int);
-int     mvgetnstr(int, int, char *, int);
-int     mvgetstr(int, int, char *);
-int     mvhline(int, int, chtype, int);
-chtype  mvinch(int, int);
-int     mvinchnstr(int, int, chtype *, int);
-int     mvinchstr(int, int, chtype *);
-int     mvinnstr(int, int, char *, int);
-int     mvinsch(int, int, chtype);
-int     mvinsnstr(int, int, const char *, int);
-int     mvinsstr(int, int, const char *);
-int     mvinstr(int, int, char *);
-int     mvprintw(int, int, const char *, ...);
-int     mvscanw(int, int, const char *, ...);
-int     mvvline(int, int, chtype, int);
-int     mvwaddchnstr(WINDOW *, int, int, const chtype *, int);
-int     mvwaddchstr(WINDOW *, int, int, const chtype *);
-int     mvwaddch(WINDOW *, int, int, const chtype);
-int     mvwaddnstr(WINDOW *, int, int, const char *, int);
-int     mvwaddstr(WINDOW *, int, int, const char *);
-int     mvwchgat(WINDOW *, int, int, int, attr_t, short, const void *);
-int     mvwdelch(WINDOW *, int, int);
-int     mvwgetch(WINDOW *, int, int);
-int     mvwgetnstr(WINDOW *, int, int, char *, int);
-int     mvwgetstr(WINDOW *, int, int, char *);
-int     mvwhline(WINDOW *, int, int, chtype, int);
-int     mvwinchnstr(WINDOW *, int, int, chtype *, int);
-int     mvwinchstr(WINDOW *, int, int, chtype *);
-chtype  mvwinch(WINDOW *, int, int);
-int     mvwinnstr(WINDOW *, int, int, char *, int);
-int     mvwinsch(WINDOW *, int, int, chtype);
-int     mvwinsnstr(WINDOW *, int, int, const char *, int);
-int     mvwinsstr(WINDOW *, int, int, const char *);
-int     mvwinstr(WINDOW *, int, int, char *);
-int     mvwin(WINDOW *, int, int);
-int     mvwprintw(WINDOW *, int, int, const char *, ...);
-int     mvwscanw(WINDOW *, int, int, const char *, ...);
-int     mvwvline(WINDOW *, int, int, chtype, int);
-int     napms(int);
-WINDOW *newpad(int, int);
-SCREEN *newterm(const char *, FILE *, FILE *);
-WINDOW *newwin(int, int, int, int);
-int     nl(void);
-int     nocbreak(void);
-int     nodelay(WINDOW *, bool);
-int     noecho(void);
-int     nonl(void);
-void    noqiflush(void);
-int     noraw(void);
-int     notimeout(WINDOW *, bool);
-int     overlay(const WINDOW *, WINDOW *);
-int     overwrite(const WINDOW *, WINDOW *);
-int     pair_content(short, short *, short *);
-int     pechochar(WINDOW *, chtype);
-int     pnoutrefresh(WINDOW *, int, int, int, int, int, int);
-int     prefresh(WINDOW *, int, int, int, int, int, int);
-int     printw(const char *, ...);
-int     putwin(WINDOW *, FILE *);
-void    qiflush(void);
-int     raw(void);
-int     redrawwin(WINDOW *);
-int     refresh(void);
-int     reset_prog_mode(void);
-int     reset_shell_mode(void);
-int     resetty(void);
-int     ripoffline(int, int (*)(WINDOW *, int));
-int     savetty(void);
-int     scanw(const char *, ...);
-int     scr_dump(const char *);
-int     scr_init(const char *);
-int     scr_restore(const char *);
-int     scr_set(const char *);
-int     scrl(int);
-int     scroll(WINDOW *);
-int     scrollok(WINDOW *, bool);
-SCREEN *set_term(SCREEN *);
-int     setscrreg(int, int);
-int     slk_attroff(const chtype);
-int     slk_attr_off(const attr_t, void *);
-int     slk_attron(const chtype);
-int     slk_attr_on(const attr_t, void *);
-int     slk_attrset(const chtype);
-int     slk_attr_set(const attr_t, short, void *);
-int     slk_clear(void);
-int     slk_color(short);
-int     slk_init(int);
-char   *slk_label(int);
-int     slk_noutrefresh(void);
-int     slk_refresh(void);
-int     slk_restore(void);
-int     slk_set(int, const char *, int);
-int     slk_touch(void);
-int     standend(void);
-int     standout(void);
-int     start_color(void);
-WINDOW *subpad(WINDOW *, int, int, int, int);
-WINDOW *subwin(WINDOW *, int, int, int, int);
-int     syncok(WINDOW *, bool);
-chtype  termattrs(void);
-attr_t  term_attrs(void);
-char   *termname(void);
-void    timeout(int);
-int     touchline(WINDOW *, int, int);
-int     touchwin(WINDOW *);
-int     typeahead(int);
-int     untouchwin(WINDOW *);
-void    use_env(bool);
-int     vidattr(chtype);
-int     vid_attr(attr_t, short, void *);
-int     vidputs(chtype, int (*)(int));
-int     vid_puts(attr_t, short, void *, int (*)(int));
-int     vline(chtype, int);
-int     vw_printw(WINDOW *, const char *, va_list);
-int     vwprintw(WINDOW *, const char *, va_list);
-int     vw_scanw(WINDOW *, const char *, va_list);
-int     vwscanw(WINDOW *, const char *, va_list);
-int     waddchnstr(WINDOW *, const chtype *, int);
-int     waddchstr(WINDOW *, const chtype *);
-int     waddch(WINDOW *, const chtype);
-int     waddnstr(WINDOW *, const char *, int);
-int     waddstr(WINDOW *, const char *);
-int     wattroff(WINDOW *, chtype);
-int     wattron(WINDOW *, chtype);
-int     wattrset(WINDOW *, chtype);
-int     wattr_get(WINDOW *, attr_t *, short *, void *);
-int     wattr_off(WINDOW *, attr_t, void *);
-int     wattr_on(WINDOW *, attr_t, void *);
-int     wattr_set(WINDOW *, attr_t, short, void *);
-void    wbkgdset(WINDOW *, chtype);
-int     wbkgd(WINDOW *, chtype);
-int     wborder(WINDOW *, chtype, chtype, chtype, chtype,
-                chtype, chtype, chtype, chtype);
-int     wchgat(WINDOW *, int, attr_t, short, const void *);
-int     wclear(WINDOW *);
-int     wclrtobot(WINDOW *);
-int     wclrtoeol(WINDOW *);
-int     wcolor_set(WINDOW *, short, void *);
-void    wcursyncup(WINDOW *);
-int     wdelch(WINDOW *);
-int     wdeleteln(WINDOW *);
-int     wechochar(WINDOW *, const chtype);
-int     werase(WINDOW *);
-int     wgetch(WINDOW *);
-int     wgetnstr(WINDOW *, char *, int);
-int     wgetstr(WINDOW *, char *);
-int     whline(WINDOW *, chtype, int);
-int     winchnstr(WINDOW *, chtype *, int);
-int     winchstr(WINDOW *, chtype *);
-chtype  winch(WINDOW *);
-int     winnstr(WINDOW *, char *, int);
-int     winsch(WINDOW *, chtype);
-int     winsdelln(WINDOW *, int);
-int     winsertln(WINDOW *);
-int     winsnstr(WINDOW *, const char *, int);
-int     winsstr(WINDOW *, const char *);
-int     winstr(WINDOW *, char *);
-int     wmove(WINDOW *, int, int);
-int     wnoutrefresh(WINDOW *);
-int     wprintw(WINDOW *, const char *, ...);
-int     wredrawln(WINDOW *, int, int);
-int     wrefresh(WINDOW *);
-int     wscanw(WINDOW *, const char *, ...);
-int     wscrl(WINDOW *, int);
-int     wsetscrreg(WINDOW *, int, int);
-int     wstandend(WINDOW *);
-int     wstandout(WINDOW *);
-void    wsyncdown(WINDOW *);
-void    wsyncup(WINDOW *);
-void    wtimeout(WINDOW *, int);
-int     wtouchln(WINDOW *, int, int, int);
-int     wvline(WINDOW *, chtype, int);
-
-/* Wide-character functions */
-
-#ifdef PDC_WIDE
-int     addnwstr(const wchar_t *, int);
-int     addwstr(const wchar_t *);
-int     add_wch(const cchar_t *);
-int     add_wchnstr(const cchar_t *, int);
-int     add_wchstr(const cchar_t *);
-int     border_set(const cchar_t *, const cchar_t *, const cchar_t *, 
-                   const cchar_t *, const cchar_t *, const cchar_t *, 
-                   const cchar_t *, const cchar_t *);
-int     box_set(WINDOW *, const cchar_t *, const cchar_t *);
-int     echo_wchar(const cchar_t *);
-int     erasewchar(wchar_t *);
-int     getbkgrnd(cchar_t *);
-int     getcchar(const cchar_t *, wchar_t *, attr_t *, short *, void *);
-int     getn_wstr(wint_t *, int);
-int     get_wch(wint_t *);
-int     get_wstr(wint_t *);
-int     hline_set(const cchar_t *, int);
-int     innwstr(wchar_t *, int);
-int     ins_nwstr(const wchar_t *, int);
-int     ins_wch(const cchar_t *);
-int     ins_wstr(const wchar_t *);
-int     inwstr(wchar_t *);
-int     in_wch(cchar_t *);
-int     in_wchnstr(cchar_t *, int);
-int     in_wchstr(cchar_t *);
-char   *key_name(wchar_t);
-int     killwchar(wchar_t *);
-int     mvaddnwstr(int, int, const wchar_t *, int);
-int     mvaddwstr(int, int, const wchar_t *);
-int     mvadd_wch(int, int, const cchar_t *);
-int     mvadd_wchnstr(int, int, const cchar_t *, int);
-int     mvadd_wchstr(int, int, const cchar_t *);
-int     mvgetn_wstr(int, int, wint_t *, int);
-int     mvget_wch(int, int, wint_t *);
-int     mvget_wstr(int, int, wint_t *);
-int     mvhline_set(int, int, const cchar_t *, int);
-int     mvinnwstr(int, int, wchar_t *, int);
-int     mvins_nwstr(int, int, const wchar_t *, int);
-int     mvins_wch(int, int, const cchar_t *);
-int     mvins_wstr(int, int, const wchar_t *);
-int     mvinwstr(int, int, wchar_t *);
-int     mvin_wch(int, int, cchar_t *);
-int     mvin_wchnstr(int, int, cchar_t *, int);
-int     mvin_wchstr(int, int, cchar_t *);
-int     mvvline_set(int, int, const cchar_t *, int);
-int     mvwaddnwstr(WINDOW *, int, int, const wchar_t *, int);
-int     mvwaddwstr(WINDOW *, int, int, const wchar_t *);
-int     mvwadd_wch(WINDOW *, int, int, const cchar_t *);
-int     mvwadd_wchnstr(WINDOW *, int, int, const cchar_t *, int);
-int     mvwadd_wchstr(WINDOW *, int, int, const cchar_t *);
-int     mvwgetn_wstr(WINDOW *, int, int, wint_t *, int);
-int     mvwget_wch(WINDOW *, int, int, wint_t *);
-int     mvwget_wstr(WINDOW *, int, int, wint_t *);
-int     mvwhline_set(WINDOW *, int, int, const cchar_t *, int);
-int     mvwinnwstr(WINDOW *, int, int, wchar_t *, int);
-int     mvwins_nwstr(WINDOW *, int, int, const wchar_t *, int);
-int     mvwins_wch(WINDOW *, int, int, const cchar_t *);
-int     mvwins_wstr(WINDOW *, int, int, const wchar_t *);
-int     mvwin_wch(WINDOW *, int, int, cchar_t *);
-int     mvwin_wchnstr(WINDOW *, int, int, cchar_t *, int);
-int     mvwin_wchstr(WINDOW *, int, int, cchar_t *);
-int     mvwinwstr(WINDOW *, int, int, wchar_t *);
-int     mvwvline_set(WINDOW *, int, int, const cchar_t *, int);
-int     pecho_wchar(WINDOW *, const cchar_t*);
-int     setcchar(cchar_t*, const wchar_t*, const attr_t, short, const void*);
-int     slk_wset(int, const wchar_t *, int);
-int     unget_wch(const wchar_t);
-int     vline_set(const cchar_t *, int);
-int     waddnwstr(WINDOW *, const wchar_t *, int);
-int     waddwstr(WINDOW *, const wchar_t *);
-int     wadd_wch(WINDOW *, const cchar_t *);
-int     wadd_wchnstr(WINDOW *, const cchar_t *, int);
-int     wadd_wchstr(WINDOW *, const cchar_t *);
-int     wbkgrnd(WINDOW *, const cchar_t *);
-void    wbkgrndset(WINDOW *, const cchar_t *);
-int     wborder_set(WINDOW *, const cchar_t *, const cchar_t *,
-                    const cchar_t *, const cchar_t *, const cchar_t *, 
-                    const cchar_t *, const cchar_t *, const cchar_t *);
-int     wecho_wchar(WINDOW *, const cchar_t *);
-int     wgetbkgrnd(WINDOW *, cchar_t *);
-int     wgetn_wstr(WINDOW *, wint_t *, int);
-int     wget_wch(WINDOW *, wint_t *);
-int     wget_wstr(WINDOW *, wint_t *);
-int     whline_set(WINDOW *, const cchar_t *, int);
-int     winnwstr(WINDOW *, wchar_t *, int);
-int     wins_nwstr(WINDOW *, const wchar_t *, int);
-int     wins_wch(WINDOW *, const cchar_t *);
-int     wins_wstr(WINDOW *, const wchar_t *);
-int     winwstr(WINDOW *, wchar_t *);
-int     win_wch(WINDOW *, cchar_t *);
-int     win_wchnstr(WINDOW *, cchar_t *, int);
-int     win_wchstr(WINDOW *, cchar_t *);
-wchar_t *wunctrl(cchar_t *);
-int     wvline_set(WINDOW *, const cchar_t *, int);
-#endif
-
-/* Quasi-standard */
-
-chtype  getattrs(WINDOW *);
-int     getbegx(WINDOW *);
-int     getbegy(WINDOW *);
-int     getmaxx(WINDOW *);
-int     getmaxy(WINDOW *);
-int     getparx(WINDOW *);
-int     getpary(WINDOW *);
-int     getcurx(WINDOW *);
-int     getcury(WINDOW *);
-void    traceoff(void);
-void    traceon(void);
-char   *unctrl(chtype);
-
-int     crmode(void);
-int     nocrmode(void);
-int     draino(int);
-int     resetterm(void);
-int     fixterm(void);
-int     saveterm(void);
-int     setsyx(int, int);
-
-int     mouse_set(unsigned long);
-int     mouse_on(unsigned long);
-int     mouse_off(unsigned long);
-int     request_mouse_pos(void);
-int     map_button(unsigned long);
-void    wmouse_position(WINDOW *, int *, int *);
-unsigned long getmouse(void);
-unsigned long getbmap(void);
-
-/* ncurses */
-
-int     assume_default_colors(int, int);
-const char *curses_version(void);
-bool    has_key(int);
-int     use_default_colors(void);
-int     wresize(WINDOW *, int, int);
-
-int     mouseinterval(int);
-mmask_t mousemask(mmask_t, mmask_t *);
-bool    mouse_trafo(int *, int *, bool);
-int     nc_getmouse(MEVENT *);
-int     ungetmouse(MEVENT *);
-bool    wenclose(const WINDOW *, int, int);
-bool    wmouse_trafo(const WINDOW *, int *, int *, bool);
-
-/* PDCurses */
-
-int     addrawch(chtype);
-int     insrawch(chtype);
-bool    is_termresized(void);
-int     mvaddrawch(int, int, chtype);
-int     mvdeleteln(int, int);
-int     mvinsertln(int, int);
-int     mvinsrawch(int, int, chtype);
-int     mvwaddrawch(WINDOW *, int, int, chtype);
-int     mvwdeleteln(WINDOW *, int, int);
-int     mvwinsertln(WINDOW *, int, int);
-int     mvwinsrawch(WINDOW *, int, int, chtype);
-int     raw_output(bool);
-int     resize_term(int, int);
-WINDOW *resize_window(WINDOW *, int, int);
-int     waddrawch(WINDOW *, chtype);
-int     winsrawch(WINDOW *, chtype);
-char    wordchar(void);
-
-#ifdef PDC_WIDE
-wchar_t *slk_wlabel(int);
-#endif
-
-void    PDC_debug(const char *, ...);
-int     PDC_ungetch(int);
-int     PDC_set_blink(bool);
-int     PDC_set_line_color(short);
-void    PDC_set_title(const char *);
-
-int     PDC_clearclipboard(void);
-int     PDC_freeclipboard(char *);
-int     PDC_getclipboard(char **, long *);
-int     PDC_setclipboard(const char *, long);
-
-unsigned long PDC_get_input_fd(void);
-unsigned long PDC_get_key_modifiers(void);
-int     PDC_return_key_modifiers(bool);
-int     PDC_save_key_modifiers(bool);
-
-#ifdef XCURSES
-WINDOW *Xinitscr(int, char **);
-void    XCursesExit(void);
-int     sb_init(void);
-int     sb_set_horz(int, int, int);
-int     sb_set_vert(int, int, int);
-int     sb_get_horz(int *, int *, int *);
-int     sb_get_vert(int *, int *, int *);
-int     sb_refresh(void);
-#endif
-
-/*** Functions defined as macros ***/
-
-/* getch() and ungetch() conflict with some DOS libraries */
-
-#define getch()            wgetch(stdscr)
-#define ungetch(ch)        PDC_ungetch(ch)
-
-#define COLOR_PAIR(n)      (((chtype)(n) << PDC_COLOR_SHIFT) & A_COLOR)
-#define PAIR_NUMBER(n)     (((n) & A_COLOR) >> PDC_COLOR_SHIFT)
-
-/* These will _only_ work as macros */
-
-#define getbegyx(w, y, x)  (y = getbegy(w), x = getbegx(w))
-#define getmaxyx(w, y, x)  (y = getmaxy(w), x = getmaxx(w))
-#define getparyx(w, y, x)  (y = getpary(w), x = getparx(w))
-#define getyx(w, y, x)     (y = getcury(w), x = getcurx(w))
-
-#define getsyx(y, x)       { if (curscr->_leaveit) (y)=(x)=-1; \
-                             else getyx(curscr,(y),(x)); }
-
-#ifdef NCURSES_MOUSE_VERSION
-# define getmouse(x) nc_getmouse(x)
-#endif
-
-/* return codes from PDC_getclipboard() and PDC_setclipboard() calls */
-
-#define PDC_CLIP_SUCCESS         0
-#define PDC_CLIP_ACCESS_ERROR    1
-#define PDC_CLIP_EMPTY           2
-#define PDC_CLIP_MEMORY_ERROR    3
-
-/* PDCurses key modifier masks */
-
-#define PDC_KEY_MODIFIER_SHIFT   1
-#define PDC_KEY_MODIFIER_CONTROL 2
-#define PDC_KEY_MODIFIER_ALT     4
-#define PDC_KEY_MODIFIER_NUMLOCK 8
-
-#if defined(__cplusplus) || defined(__cplusplus__) || defined(__CPLUSPLUS)
-# undef bool
-}
-#endif
-
-#endif  /* __PDCURSES__ */
diff --git a/src/other/PDCurses/curspriv.h b/src/other/PDCurses/curspriv.h
deleted file mode 100644
index 8b34f01..0000000
--- a/src/other/PDCurses/curspriv.h
+++ /dev/null
@@ -1,142 +0,0 @@
-/* Public Domain Curses */
-
-/* $Id: curspriv.h,v 1.158 2008/07/13 16:08:16 wmcbrine Exp $ */
-
-/* Private definitions and declarations for use within PDCurses.
-   These should generally not be referenced by applications. */
-
-#ifndef __CURSES_INTERNALS__
-#define __CURSES_INTERNALS__ 1
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#define CURSES_LIBRARY
-#include <curses.h>
-
-#if defined(__TURBOC__) || defined(__EMX__) || defined(__DJGPP__) || \
-    defined(__CYGWIN32__) || defined(__MINGW32__) || \
-    defined(__WATCOMC__) || defined(__PACIFIC__)
-# ifndef HAVE_VSSCANF
-#  define HAVE_VSSCANF       /* have vsscanf() */
-# endif
-#endif
-
-#if defined(__CYGWIN32__) || defined(__MINGW32__) || \
-    defined(__LCC__) || defined(__WATCOMC__)
-# ifndef HAVE_VSNPRINTF
-#  define HAVE_VSNPRINTF     /* have vsnprintf() */
-# endif
-#endif
-
-#if defined(_MSC_VER) && defined(_WIN32) && !defined(_CRT_SECURE_NO_DEPRECATE)
-# define _CRT_SECURE_NO_DEPRECATE 1   /* kill nonsense warnings */
-#endif
-
-/*----------------------------------------------------------------------*/
-
-typedef struct           /* structure for ripped off lines */
-{
-    int line;
-    int (*init)(WINDOW *, int);
-} RIPPEDOFFLINE;
-
-/* Window properties */
-
-#define _SUBWIN    0x01  /* window is a subwindow */
-#define _PAD       0x10  /* X/Open Pad. */
-#define _SUBPAD    0x20  /* X/Open subpad. */
-
-/* Miscellaneous */
-
-#define _NO_CHANGE -1    /* flags line edge unchanged */
-
-#define _ECHAR     0x08  /* Erase char       (^H) */
-#define _DWCHAR    0x17  /* Delete Word char (^W) */
-#define _DLCHAR    0x15  /* Delete Line char (^U) */
-
-extern WINDOW *pdc_lastscr;
-extern bool pdc_trace_on;   /* tracing flag */
-extern bool pdc_color_started;
-extern unsigned long pdc_key_modifiers;
-extern MOUSE_STATUS pdc_mouse_status;
-
-/*----------------------------------------------------------------------*/
-
-/* Platform implementation functions */
-
-void    PDC_beep(void);
-bool    PDC_can_change_color(void);
-int     PDC_color_content(short, short *, short *, short *);
-bool    PDC_check_key(void);
-int     PDC_curs_set(int);
-void    PDC_flushinp(void);
-int     PDC_get_columns(void);
-int     PDC_get_cursor_mode(void);
-int     PDC_get_key(void);
-int     PDC_get_rows(void);
-void    PDC_gotoyx(int, int);
-int     PDC_init_color(short, short, short, short);
-void    PDC_init_pair(short, short, short);
-int     PDC_modifiers_set(void);
-int     PDC_mouse_set(void);
-void    PDC_napms(int);
-int     PDC_pair_content(short, short *, short *);
-void    PDC_reset_prog_mode(void);
-void    PDC_reset_shell_mode(void);
-int     PDC_resize_screen(int, int);
-void    PDC_restore_screen_mode(int);
-void    PDC_save_screen_mode(int);
-void    PDC_scr_close(void);
-void    PDC_scr_free(void);
-int     PDC_scr_open(int, char **);
-void    PDC_set_keyboard_binary(bool);
-void    PDC_transform_line(int, int, int, const chtype *);
-const char *PDC_sysname(void);
-
-/* Internal cross-module functions */
-
-void    PDC_init_atrtab(void);
-WINDOW *PDC_makelines(WINDOW *);
-WINDOW *PDC_makenew(int, int, int, int);
-int     PDC_mouse_in_slk(int, int);
-void    PDC_slk_free(void);
-void    PDC_slk_initialize(void);
-void    PDC_sync(WINDOW *);
-
-#ifdef PDC_WIDE
-int     PDC_mbtowc(wchar_t *, const char *, size_t);
-size_t  PDC_mbstowcs(wchar_t *, const char *, size_t);
-size_t  PDC_wcstombs(char *, const wchar_t *, size_t);
-#endif
-
-#ifdef PDCDEBUG
-# define PDC_LOG(x) if (pdc_trace_on) PDC_debug x
-# define RCSID(x) static const char *rcsid = x;
-#else
-# define PDC_LOG(x)
-# define RCSID(x)
-#endif
-
-/* Internal macros for attributes */
-
-#ifdef CHTYPE_LONG
-# define PDC_COLOR_PAIRS 256
-#else
-# define PDC_COLOR_PAIRS  32
-#endif
-
-#ifndef max
-# define max(a,b) (((a) > (b)) ? (a) : (b))
-#endif
-#ifndef min
-# define min(a,b) (((a) < (b)) ? (a) : (b))
-#endif
-
-#define DIVROUND(num, divisor) ((num) + ((divisor) >> 1)) / (divisor)
-
-#define PDC_CLICK_PERIOD 150  /* time to wait for a click, if
-                                 not set by mouseinterval() */
-
-#endif /* __CURSES_INTERNALS__*/
diff --git a/src/other/PDCurses/demos/README b/src/other/PDCurses/demos/README
deleted file mode 100644
index 8f4b5c6..0000000
--- a/src/other/PDCurses/demos/README
+++ /dev/null
@@ -1,25 +0,0 @@
-PDCurses Demos
-==============
-
-This directory contains demonstration programs to show and test the 
-capabilities of curses libraries. Some of them predate PDCurses, 
-PCcurses or even pcurses/ncurses. Although some PDCurses-specific code 
-has been added, all programs remain portable to other implementations 
-(at a minimum, to ncurses).
-
-
-Building
---------
-
-The demos are built by the platform-specific makefiles, in the platform 
-directories. Alternatively, you can build them manually, individually, 
-and link with any curses library; e.g., "cc -lcurses -orain rain.c". 
-There are no dependencies besides curses and the standard C library, and 
-no configuration is needed.
-
-
-Distribution Status
--------------------
-
-Public Domain, except for rain.c and worm.c, which are under the ncurses 
-license (MIT-like).
diff --git a/src/other/PDCurses/demos/firework.c b/src/other/PDCurses/demos/firework.c
deleted file mode 100644
index 8d7921f..0000000
--- a/src/other/PDCurses/demos/firework.c
+++ /dev/null
@@ -1,148 +0,0 @@
-/* $Id: firework.c,v 1.25 2008/07/13 16:08:17 wmcbrine Exp $ */
-
-#include <stdio.h>
-#include <signal.h>
-#include <curses.h>
-#include <ctype.h>
-#include <stdlib.h>
-#include <sys/types.h>
-#include <time.h>
-
-#define DELAYSIZE 200
-
-void myrefresh(void);
-void get_color(void);
-void explode(int, int);
-
-short color_table[] =
-{
-    COLOR_RED, COLOR_BLUE, COLOR_GREEN, COLOR_CYAN,
-    COLOR_RED, COLOR_MAGENTA, COLOR_YELLOW, COLOR_WHITE
-};
-
-int main(int argc, char **argv)
-{
-    int i, start, end, row, diff, flag, direction, seed;
-
-#ifdef XCURSES
-    Xinitscr(argc, argv);
-#else
-    initscr();
-#endif
-    nodelay(stdscr, TRUE);
-    noecho();
-
-    if (has_colors())
-        start_color();
-
-    for (i = 0; i < 8; i++)
-        init_pair(i, color_table[i], COLOR_BLACK);
-
-    seed = time((time_t *)0);
-    srand(seed);
-    flag = 0;
-       
-    while (getch() == ERR)      /* loop until a key is hit */
-    {
-        do {
-            start = rand() % (COLS - 3);
-            end = rand() % (COLS - 3);
-            start = (start < 2) ? 2 : start;
-            end = (end < 2) ? 2 : end;
-            direction = (start > end) ? -1 : 1;
-            diff = abs(start - end);
-
-        } while (diff < 2 || diff >= LINES - 2);
-
-        attrset(A_NORMAL);
-
-        for (row = 0; row < diff; row++)
-        {
-            mvaddstr(LINES - row, row * direction + start,
-                (direction < 0) ? "\\" : "/");
-
-            if (flag++)
-            {
-                myrefresh();
-                erase();
-                flag = 0;
-            }
-        }
-
-        if (flag++)
-        {
-            myrefresh();
-            flag = 0;
-        }
-
-        explode(LINES - row, diff * direction + start);
-        erase();
-        myrefresh();
-    }
-
-    endwin();
-
-    return 0;
-}
-
-void explode(int row, int col)
-{
-    erase();
-    mvaddstr(row, col, "-");
-    myrefresh();
-
-    --col;
-
-    get_color();
-    mvaddstr(row - 1, col, " - ");
-    mvaddstr(row,     col, "-+-");
-    mvaddstr(row + 1, col, " - ");
-    myrefresh();
-
-    --col;
-
-    get_color();
-    mvaddstr(row - 2, col, " --- ");
-    mvaddstr(row - 1, col, "-+++-");
-    mvaddstr(row,     col, "-+#+-");
-    mvaddstr(row + 1, col, "-+++-");
-    mvaddstr(row + 2, col, " --- ");
-    myrefresh();
-
-    get_color();
-    mvaddstr(row - 2, col, " +++ ");
-    mvaddstr(row - 1, col, "++#++");
-    mvaddstr(row,     col, "+# #+");
-    mvaddstr(row + 1, col, "++#++");
-    mvaddstr(row + 2, col, " +++ ");
-    myrefresh();
-
-    get_color();
-    mvaddstr(row - 2, col, "  #  ");
-    mvaddstr(row - 1, col, "## ##");
-    mvaddstr(row,     col, "#   #");
-    mvaddstr(row + 1, col, "## ##");
-    mvaddstr(row + 2, col, "  #  ");
-    myrefresh();
-
-    get_color();
-    mvaddstr(row - 2, col, " # # ");
-    mvaddstr(row - 1, col, "#   #");
-    mvaddstr(row,     col, "     ");
-    mvaddstr(row + 1, col, "#   #");
-    mvaddstr(row + 2, col, " # # ");
-    myrefresh();
-}
-
-void myrefresh(void)
-{
-    napms(DELAYSIZE);
-    move(LINES - 1, COLS - 1);
-    refresh();
-}
-
-void get_color(void)
-{
-    chtype bold = (rand() % 2) ? A_BOLD : A_NORMAL;
-    attrset(COLOR_PAIR(rand() % 8) | bold);
-}
diff --git a/src/other/PDCurses/demos/newdemo.c b/src/other/PDCurses/demos/newdemo.c
deleted file mode 100644
index 3eae98d..0000000
--- a/src/other/PDCurses/demos/newdemo.c
+++ /dev/null
@@ -1,425 +0,0 @@
-/*
- *  newdemo.c   -   A demo program using PDCurses. The program 
- *          illustrates the use of colors for text output.
- *
- *  Hacks by jbuhler at cs.washington.edu on 12/29/96
- *
- *  $Id: newdemo.c,v 1.39 2008/07/13 16:08:17 wmcbrine Exp $
- */
-
-#include <stdio.h>
-#include <signal.h>
-#include <string.h>
-#include <curses.h>
-#include <stdlib.h>
-#include <time.h>
-
-int WaitForUser(void);
-int SubWinTest(WINDOW *);
-int BouncingBalls(WINDOW *);
-void trap(int);
-
-/* An ASCII map of Australia */
-
-char *AusMap[17] =
-{
-    "                       A ",
-    "           AA         AA ",
-    "    N.T. AAAAA       AAAA ",
-    "     AAAAAAAAAAA  AAAAAAAA ",
-    "   AAAAAAAAAAAAAAAAAAAAAAAAA Qld.",
-    " AAAAAAAAAAAAAAAAAAAAAAAAAAAA ",
-    " AAAAAAAAAAAAAAAAAAAAAAAAAAAAA ",
-    " AAAAAAAAAAAAAAAAAAAAAAAAAAAA ",
-    "   AAAAAAAAAAAAAAAAAAAAAAAAA N.S.W.",
-    "W.A. AAAAAAAAA      AAAAAA Vic.",
-    "       AAA   S.A.     AA",
-    "                       A  Tas.",
-    ""
-};
-
-/* Funny messages for the scroller */
-
-char *messages[] =
-{
-    "Hello from the Land Down Under",
-    "The Land of crocs, and a big Red Rock",
-    "Where the sunflower runs along the highways",
-    "The dusty red roads lead one to loneliness",
-    "Blue sky in the morning and",
-    "Freezing nights and twinkling stars",
-    NULL
-};
-
-int WaitForUser(void)
-{
-    chtype ch;
-
-    nodelay(stdscr, TRUE);
-    halfdelay(50);
-
-    ch = getch();
-
-    nodelay(stdscr, FALSE);
-    nocbreak();     /* Reset the halfdelay() value */
-    cbreak();
-
-    return (ch == '\033') ? ch : 0;
-}
-
-int SubWinTest(WINDOW *win)
-{
-    WINDOW *swin1, *swin2, *swin3;
-    int w, h, sw, sh, bx, by;
-
-    wattrset(win, 0);
-    getmaxyx(win, h, w);
-    getbegyx(win, by, bx);
-
-    sw = w / 3;
-    sh = h / 3;
-
-    if ((swin1 = derwin(win, sh, sw, 3, 5)) == NULL)
-        return 1;
-    if ((swin2 = subwin(win, sh, sw, by + 4, bx + 8)) == NULL)
-        return 1;
-    if ((swin3 = subwin(win, sh, sw, by + 5, bx + 11)) == NULL)
-        return 1;
-
-    init_pair(8, COLOR_RED, COLOR_BLUE);
-    wbkgd(swin1, COLOR_PAIR(8));
-    werase(swin1);
-    mvwaddstr(swin1, 0, 3, "Sub-window 1");
-    wrefresh(swin1);
-
-    init_pair(9, COLOR_CYAN, COLOR_MAGENTA);
-    wbkgd(swin2, COLOR_PAIR(9));
-    werase(swin2);
-    mvwaddstr(swin2, 0, 3, "Sub-window 2");
-    wrefresh(swin2);
-
-    init_pair(10, COLOR_YELLOW, COLOR_GREEN);
-    wbkgd(swin3, COLOR_PAIR(10));
-    werase(swin3);
-    mvwaddstr(swin3, 0, 3, "Sub-window 3");
-    wrefresh(swin3);
-
-    delwin(swin1);
-    delwin(swin2);
-    delwin(swin3);
-    WaitForUser();
-
-    return 0;
-}
-
-int BouncingBalls(WINDOW *win)
-{
-    chtype c1, c2, c3, ball1, ball2, ball3;
-    int w, h, x1, y1, xd1, yd1, x2, y2, xd2, yd2, x3, y3, xd3, yd3, c;
-
-    curs_set(0);
-
-    wbkgd(win, COLOR_PAIR(1));
-    wrefresh(win);
-    wattrset(win, 0);
-
-    init_pair(11, COLOR_RED, COLOR_GREEN);
-    init_pair(12, COLOR_BLUE, COLOR_RED);
-    init_pair(13, COLOR_YELLOW, COLOR_WHITE);
-
-    ball1 = 'O' | COLOR_PAIR(11);
-    ball2 = '*' | COLOR_PAIR(12);
-    ball3 = '@' | COLOR_PAIR(13);
-
-    getmaxyx(win, h, w);
-
-    x1 = 2 + rand() % (w - 4);
-    y1 = 2 + rand() % (h - 4);
-    x2 = 2 + rand() % (w - 4);
-    y2 = 2 + rand() % (h - 4);
-    x3 = 2 + rand() % (w - 4);
-    y3 = 2 + rand() % (h - 4);
-
-    xd1 = 1;
-    yd1 = 1;
-    xd2 = 1;
-    yd2 = -1;
-    xd3 = -1;
-    yd3 = 1;
-
-    nodelay(stdscr, TRUE);
-
-    while ((c = getch()) == ERR)
-    {
-        x1 += xd1;
-        if (x1 <= 1 || x1 >= w - 2)
-            xd1 *= -1;
-
-        y1 += yd1;
-        if (y1 <= 1 || y1 >= h - 2)
-            yd1 *= -1;
-
-        x2 += xd2;
-        if (x2 <= 1 || x2 >= w - 2)
-            xd2 *= -1;
-
-        y2 += yd2;
-        if (y2 <= 1 || y2 >= h - 2)
-            yd2 *= -1;
-
-        x3 += xd3;
-        if (x3 <= 1 || x3 >= w - 2)
-            xd3 *= -1;
-
-        y3 += yd3;
-        if (y3 <= 1 || y3 >= h - 2)
-            yd3 *= -1;
-
-        c1 = mvwinch(win, y1, x1);
-        c2 = mvwinch(win, y2, x2);
-        c3 = mvwinch(win, y3, x3);
-
-        mvwaddch(win, y1, x1, ball1);
-        mvwaddch(win, y2, x2, ball2);
-        mvwaddch(win, y3, x3, ball3);
-
-        wmove(win, 0, 0);
-        wrefresh(win);
-
-        mvwaddch(win, y1, x1, c1);
-        mvwaddch(win, y2, x2, c2);
-        mvwaddch(win, y3, x3, c3);
-
-        napms(150);
-    }
-
-    nodelay(stdscr, FALSE);
-    ungetch(c);
-    return 0;
-}
-
-/* Trap interrupt */
-
-void trap(int sig)
-{
-    if (sig == SIGINT)
-    {
-        endwin();
-
-        exit(0);
-    }
-}
-
-int main(int argc, char **argv)
-{
-    WINDOW *win;
-    chtype save[80], ch;
-    int width, height, w, x, y, i, j, seed;
-
-#ifdef XCURSES
-    Xinitscr(argc, argv);
-#else
-    initscr();
-#endif
-    seed = time((time_t *)0);
-        srand(seed);
-
-    start_color();
-# if defined(NCURSES_VERSION) || (defined(PDC_BUILD) && PDC_BUILD > 3000)
-    use_default_colors();
-# endif
-    cbreak();
-    noecho();
-
-    curs_set(0);
-
-#if !defined(__TURBOC__) && !defined(OS2)
-    signal(SIGINT, trap);
-#endif
-    noecho();
-
-    /* refresh stdscr so that reading from it will not cause it to 
-       overwrite the other windows that are being created */
-
-    refresh();
-
-    /* Create a drawing window */
-
-    width  = 48;
-    height = 15;
-
-    win = newwin(height, width, (LINES - height) / 2, (COLS - width) / 2);
-
-    if (win == NULL)
-    {
-        endwin();
-
-        return 1;
-    }
-
-    for (;;)
-    {
-        init_pair(1, COLOR_WHITE, COLOR_BLUE);
-        wbkgd(win, COLOR_PAIR(1));
-        werase(win);
-
-        init_pair(2, COLOR_RED, COLOR_RED);
-        wattrset(win, COLOR_PAIR(2));
-        box(win, ' ', ' ');
-        wrefresh(win);
-      
-        wattrset(win, 0);
-
-        /* Do random output of a character */
-
-        ch = 'a';
-
-        nodelay(stdscr, TRUE);
-
-        for (i = 0; i < 5000; ++i)
-        {
-            x = rand() % (width - 2) + 1;
-            y = rand() % (height - 2) + 1;
-
-            mvwaddch(win, y, x, ch);
-            wrefresh(win);
-
-            if (getch() != ERR)
-                break;
-
-            if (i == 2000)
-            {
-                ch = 'b';
-                init_pair(3, COLOR_CYAN, COLOR_YELLOW);
-                wattrset(win, COLOR_PAIR(3));
-            }
-        }
-
-        nodelay(stdscr, FALSE);
-
-        SubWinTest(win);
-
-        /* Erase and draw green window */
-
-        init_pair(4, COLOR_YELLOW, COLOR_GREEN);
-        wbkgd(win, COLOR_PAIR(4));
-        wattrset(win, A_BOLD);
-        werase(win);
-        wrefresh(win);
-
-        /* Draw RED bounding box */
-
-        wattrset(win, COLOR_PAIR(2));
-        box(win, ' ', ' ');
-        wrefresh(win);
-
-        /* Display Australia map */
-
-        wattrset(win, A_BOLD);
-        i = 0;
-
-        while (*AusMap[i])
-        {
-            mvwaddstr(win, i + 1, 8, AusMap[i]);
-            wrefresh(win);
-            napms(100);
-            ++i;
-        }
-
-        init_pair(5, COLOR_BLUE, COLOR_WHITE);
-        wattrset(win, COLOR_PAIR(5) | A_BLINK);
-        mvwaddstr(win, height - 2, 3,
-            " PDCurses 3.4 - DOS, OS/2, Win32, X11, SDL");
-        wrefresh(win);
-
-        /* Draw running messages */
-
-        init_pair(6, COLOR_BLACK, COLOR_WHITE);
-        wattrset(win, COLOR_PAIR(6));
-        w = width - 2;
-        nodelay(win, TRUE);
-
-        /* jbuhler's re-hacked scrolling messages */
-
-        for (j = 0; messages[j] != NULL; j++)
-        {
-            char *message = messages[j];
-            int msg_len = strlen(message);
-            int scroll_len = w + 2 * msg_len;
-            char *scrollbuf = malloc(scroll_len);
-            char *visbuf = scrollbuf + msg_len;
-            int stop = 0;
-            int i;
-
-            for (i = w + msg_len; i > 0; i--)
-            {
-                memset(visbuf, ' ', w);
-                strncpy(scrollbuf + i, message, msg_len);
-                mvwaddnstr(win, height / 2, 1, visbuf, w);
-                wrefresh(win);
-
-                if (wgetch(win) != ERR)
-                {
-                    flushinp();
-                    stop = 1;
-                    break;
-                }
-
-                napms(100);
-            }
-
-            free(scrollbuf);
-
-            if (stop)
-                break;
-        }
-
-        j = 0;
-
-        /*  Draw running 'A's across in RED */
-
-        init_pair(7, COLOR_RED, COLOR_GREEN);
-        wattron(win, COLOR_PAIR(7));
-
-        for (i = 2; i < width - 4; ++i)
-        {
-            ch = mvwinch(win, 5, i);
-            save[j++] = ch;
-            ch = ch & 0x7f;
-            mvwaddch(win, 5, i, ch);
-        }
-
-        wrefresh(win);
-
-        /* Put a message up; wait for a key */
-
-        i = height - 2;
-        wattrset(win, COLOR_PAIR(5));
-        mvwaddstr(win, i, 3,
-            "   Type a key to continue or ESC to quit  ");
-        wrefresh(win);
-
-        if (WaitForUser() == '\033')
-            break;
-
-        /* Restore the old line */
-
-        wattrset(win, 0);
-
-        for (i = 2, j = 0; i < width - 4; ++i)
-            mvwaddch(win, 5, i, save[j++]);
-
-        wrefresh(win);
-
-        BouncingBalls(win);
-
-        /* BouncingBalls() leaves a keystroke in the queue */
-
-        if (WaitForUser() == '\033')
-            break;
-    }
-
-    endwin();
-
-    return 0;
-}
diff --git a/src/other/PDCurses/demos/ptest.c b/src/other/PDCurses/demos/ptest.c
deleted file mode 100644
index 1134f6f..0000000
--- a/src/other/PDCurses/demos/ptest.c
+++ /dev/null
@@ -1,285 +0,0 @@
-/* $Id: ptest.c,v 1.24 2008/07/13 16:08:17 wmcbrine Exp $ */
-
-#include <curses.h>
-#include <panel.h>
-#include <stdlib.h>
-
-PANEL *p1, *p2, *p3, *p4, *p5;
-WINDOW *w4, *w5;
-
-long nap_msec = 1;
-
-char *mod[] = 
-{
-    "test ", "TEST ", "(**) ", "*()* ", "<--> ", "LAST "
-};
-
-void pflush(void)
-{
-    update_panels();
-    doupdate();
-}
-
-void backfill(void)
-{
-    int y, x;
-
-    erase();
-
-    for (y = 0; y < LINES - 1; y++)
-        for (x = 0; x < COLS; x++)
-            printw("%d", (y + x) % 10);
-}
-
-void wait_a_while(long msec)
-{
-    int c;
-
-    if (msec != 1)
-        timeout(msec);
-
-    c = getch();
-
-    if (c == 'q')
-    {
-        endwin();
-        exit(1);
-    }
-}
-
-void saywhat(const char *text)
-{
-    mvprintw(LINES - 1, 0, "%-20.20s", text);
-}
-
-/* mkpanel - alloc a win and panel and associate them */
-
-PANEL *mkpanel(int rows, int cols, int tly, int tlx)
-{
-    WINDOW *win = newwin(rows, cols, tly, tlx);
-    PANEL *pan = (PANEL *)0;
-
-    if (win)
-    {
-        pan = new_panel(win);
-
-        if (!pan)
-            delwin(win);
-    }
-
-    return pan;
-}
-
-void rmpanel(PANEL *pan)
-{
-    WINDOW *win = pan->win;
-
-    del_panel(pan);
-    delwin(win);
-}
-
-void fill_panel(PANEL *pan)
-{
-    WINDOW *win = pan->win;
-    char num = *((char *)pan->user + 1);
-    int y, x, maxy, maxx;
-
-    box(win, 0, 0);  
-    mvwprintw(win, 1, 1, "-pan%c-", num);
-    getmaxyx(win, maxy, maxx);
-
-    for (y = 2; y < maxy - 1; y++)
-        for (x = 1; x < maxx - 1; x++)
-            mvwaddch(win, y, x, num);
-}
-
-int main(int argc, char **argv)
-{
-    int itmp, y;
-
-    if (argc > 1 && atol(argv[1]))
-        nap_msec = atol(argv[1]);
-
-#ifdef XCURSES
-    Xinitscr(argc, argv);
-#else
-    initscr();
-#endif
-    backfill();
-
-    for (y = 0; y < 5; y++)
-    {
-        p1 = mkpanel(10, 10, 0, 0);
-        set_panel_userptr(p1, "p1");
-
-        p2 = mkpanel(14, 14, 5, 5);
-        set_panel_userptr(p2, "p2");
-
-        p3 = mkpanel(6, 8, 12, 12);
-        set_panel_userptr(p3, "p3");
-
-        p4 = mkpanel(10, 10, 10, 30);
-        w4 = panel_window(p4);
-        set_panel_userptr(p4, "p4");
-
-        p5 = mkpanel(10, 10, 13, 37);
-        w5 = panel_window(p5);
-        set_panel_userptr(p5, "p5");
-
-        fill_panel(p1);
-        fill_panel(p2);
-        fill_panel(p3);
-        fill_panel(p4);
-        fill_panel(p5);
-        hide_panel(p4);
-        hide_panel(p5);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("h3 s1 s2 s4 s5;");
-        move_panel(p1, 0, 0);
-        hide_panel(p3);
-        show_panel(p1);
-        show_panel(p2);
-        show_panel(p4);
-        show_panel(p5);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("s1;");
-        show_panel(p1);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("s2;");
-        show_panel(p2);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("m2;");
-        move_panel(p2, 10, 10);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("s3;");
-        show_panel(p3);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("m3;");
-        move_panel(p3, 5, 5);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("b3;");
-        bottom_panel(p3);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("s4;");
-        show_panel(p4);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("s5;");
-        show_panel(p5);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("t3;");
-        top_panel(p3);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("t1;");
-        top_panel(p1);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("t2;");
-        top_panel(p2);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("t3;");
-        top_panel(p3);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("t4;");
-        top_panel(p4);
-        pflush();
-        wait_a_while(nap_msec);
-
-        for (itmp = 0; itmp < 6; itmp++)
-        {
-            saywhat("m4;");
-            mvwaddstr(w4, 3, 1, mod[itmp]);
-            move_panel(p4, 4, itmp * 10);
-            mvwaddstr(w5, 4, 1, mod[itmp]);
-            pflush();
-            wait_a_while(nap_msec);
-
-            saywhat("m5;");
-            mvwaddstr(w4, 4, 1, mod[itmp]);
-            move_panel(p5, 7, itmp * 10 + 6);
-            mvwaddstr(w5, 3, 1, mod[itmp]);
-            pflush();
-            wait_a_while(nap_msec);
-        }
-
-        saywhat("m4;");
-        move_panel(p4, 4, itmp * 10);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("t5;");
-        top_panel(p5);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("t2;");
-        top_panel(p2);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("t1;");
-        top_panel(p1);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("d2;");
-        rmpanel(p2);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("h3;");
-        hide_panel(p3);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("d1;");
-        rmpanel(p1);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("d4; ");
-        rmpanel(p4);
-        pflush();
-        wait_a_while(nap_msec);
-
-        saywhat("d5; ");
-        rmpanel(p5);
-        pflush();
-        wait_a_while(nap_msec);
-
-        if (nap_msec == 1)
-            break;
-
-        nap_msec = 100L;
-    }
-
-    endwin();
-
-    return 0;
-}   /* end of main */
diff --git a/src/other/PDCurses/demos/rain.c b/src/other/PDCurses/demos/rain.c
deleted file mode 100644
index 51d05a9..0000000
--- a/src/other/PDCurses/demos/rain.c
+++ /dev/null
@@ -1,159 +0,0 @@
-/****************************************************************************
- * Copyright (c) 2002 Free Software Foundation, Inc.                        *
- *                                                                          *
- * Permission is hereby granted, free of charge, to any person obtaining a  *
- * copy of this software and associated documentation files (the            *
- * "Software"), to deal in the Software without restriction, including      *
- * without limitation the rights to use, copy, modify, merge, publish,      *
- * distribute, distribute with modifications, sublicense, and/or sell       *
- * copies of the Software, and to permit persons to whom the Software is    *
- * furnished to do so, subject to the following conditions:                 *
- *                                                                          *
- * The above copyright notice and this permission notice shall be included  *
- * in all copies or substantial portions of the Software.                   *
- *                                                                          *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
- * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
- * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
- * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
- * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
- *                                                                          *
- * Except as contained in this notice, the name(s) of the above copyright   *
- * holders shall not be used in advertising or otherwise to promote the     *
- * sale, use or other dealings in this Software without prior written       *
- * authorization.                                                           *
- ****************************************************************************/
-
-/* $Id: rain.c,v 1.11 2008/07/13 16:08:17 wmcbrine Exp $ */
-
-#include <curses.h>
-#include <stdlib.h>
-#include <time.h>
-
-/* rain 11/3/1980 EPS/CITHEP */
-
-static int next_j(int j)
-{
-    if (j == 0)
-        j = 4;
-    else
-        --j;
-
-    if (has_colors())
-    {
-        int z = rand() % 3;
-        chtype color = COLOR_PAIR(z);
-
-        if (z)
-            color |= A_BOLD;
-
-        attrset(color);
-    }
-
-    return j;
-}
-
-int main(int argc, char *argv[])
-{
-    int x, y, j, r, c, seed;
-    static int xpos[5], ypos[5];
-
-#ifdef XCURSES
-    Xinitscr(argc, argv);
-#else
-    initscr();
-#endif
-    seed = time((time_t *)0);
-        srand(seed);
-
-    if (has_colors())
-    {
-        int bg = COLOR_BLACK;
-
-        start_color();
-
-#if defined(NCURSES_VERSION) || (defined(PDC_BUILD) && PDC_BUILD > 3000)
-        if (use_default_colors() == OK)
-            bg = -1;
-#endif
-        init_pair(1, COLOR_BLUE, bg);
-        init_pair(2, COLOR_CYAN, bg);
-    }
-
-    nl();
-    noecho();
-    curs_set(0);
-    timeout(0);
-    keypad(stdscr, TRUE);
-
-    r = LINES - 4;
-    c = COLS - 4;
-
-    for (j = 5; --j >= 0;)
-    {
-        xpos[j] = rand() % c + 2;
-        ypos[j] = rand() % r + 2;
-    }
-
-    for (j = 0;;)
-    {
-        x = rand() % c + 2;
-        y = rand() % r + 2;
-
-        mvaddch(y, x, '.');
-
-        mvaddch(ypos[j], xpos[j], 'o');
-
-        j = next_j(j);
-        mvaddch(ypos[j], xpos[j], 'O');
-
-        j = next_j(j);
-        mvaddch(ypos[j] - 1, xpos[j], '-');
-        mvaddstr(ypos[j], xpos[j] - 1, "|.|");
-        mvaddch(ypos[j] + 1, xpos[j], '-');
-
-        j = next_j(j);
-        mvaddch(ypos[j] - 2, xpos[j], '-');
-        mvaddstr(ypos[j] - 1, xpos[j] - 1, "/ \\");
-        mvaddstr(ypos[j], xpos[j] - 2, "| O |");
-        mvaddstr(ypos[j] + 1, xpos[j] - 1, "\\ /");
-        mvaddch(ypos[j] + 2, xpos[j], '-');
-
-        j = next_j(j);
-        mvaddch(ypos[j] - 2, xpos[j], ' ');
-        mvaddstr(ypos[j] - 1, xpos[j] - 1, "   ");
-        mvaddstr(ypos[j], xpos[j] - 2, "     ");
-        mvaddstr(ypos[j] + 1, xpos[j] - 1, "   ");
-        mvaddch(ypos[j] + 2, xpos[j], ' ');
-
-        xpos[j] = x;
-        ypos[j] = y;
-
-        switch (getch())
-        {
-        case 'q':
-        case 'Q':
-            curs_set(1);
-            endwin();
-            return EXIT_SUCCESS;
-        case 's':
-            nodelay(stdscr, FALSE);
-            break;
-        case ' ':
-            nodelay(stdscr, TRUE);
-#ifdef KEY_RESIZE
-            break;
-        case KEY_RESIZE:
-# ifdef PDCURSES
-            resize_term(0, 0);
-            erase();
-# endif
-            r = LINES - 4;
-            c = COLS - 4;
-#endif
-        }
-        napms(50);
-    }
-}
diff --git a/src/other/PDCurses/demos/testcurs.c b/src/other/PDCurses/demos/testcurs.c
deleted file mode 100644
index e8555b5..0000000
--- a/src/other/PDCurses/demos/testcurs.c
+++ /dev/null
@@ -1,1148 +0,0 @@
-/*
- * This is a test program for PDCurses. Originally by
- * John Burnell <johnb at kea.am.dsir.govt.nz>
- *
- *  wrs(5/28/93) -- modified to be consistent (perform identically)
- *                  with either PDCurses or under Unix System V, R4
- *
- *  $Id: testcurs.c,v 1.86 2011/04/20 22:13:34 wmcbrine Exp $
- */
-
-#ifndef _XOPEN_SOURCE_EXTENDED
-# define _XOPEN_SOURCE_EXTENDED 1
-#endif
-
-#include <stdio.h>
-#include <ctype.h>
-#include <string.h>
-#include <curses.h>
-
-#ifdef WACS_S1
-# define HAVE_WIDE 1
-#else
-# define HAVE_WIDE 0
-#endif
-
-#include <locale.h>
-
-#if HAVE_WIDE
-# include <wchar.h>
-#endif
-
-#if defined(PDCURSES) && !defined(XCURSES)
-# define HAVE_RESIZE 1
-#else
-# define HAVE_RESIZE 0
-#endif
-
-#ifdef A_COLOR
-# define HAVE_COLOR 1
-#else
-# define HAVE_COLOR 0
-#endif
-
-/* Set to non-zero if you want to test the PDCurses clipboard */
-
-#define HAVE_CLIPBOARD 0
-
-void inputTest(WINDOW *);
-void scrollTest(WINDOW *);
-void introTest(WINDOW *);
-int initTest(WINDOW **, int, char **);
-void outputTest(WINDOW *);
-void padTest(WINDOW *);
-void acsTest(WINDOW *);
-
-#if HAVE_COLOR
-void colorTest(WINDOW *);
-#endif
-
-#if HAVE_RESIZE
-void resizeTest(WINDOW *);
-#endif
-
-#if HAVE_CLIPBOARD
-void clipboardTest(WINDOW *);
-#endif
-
-#if HAVE_WIDE
-void wideTest(WINDOW *);
-#endif
-
-void display_menu(int, int);
-
-struct commands
-{
-    const char *text;
-    void (*function)(WINDOW *);
-};
-
-typedef struct commands COMMAND;
-
-#define MAX_OPTIONS (6 + HAVE_COLOR + HAVE_RESIZE + HAVE_CLIPBOARD + HAVE_WIDE)
-
-COMMAND command[MAX_OPTIONS] =
-{
-    {"Intro Test", introTest},
-    {"Pad Test", padTest},
-#if HAVE_RESIZE
-    {"Resize Test", resizeTest},
-#endif
-    {"Scroll Test", scrollTest},
-    {"Input Test", inputTest},
-    {"Output Test", outputTest},
-    {"ACS Test", acsTest},
-#if HAVE_COLOR
-    {"Color Test", colorTest},
-#endif
-#if HAVE_CLIPBOARD
-    {"Clipboard Test", clipboardTest},
-#endif
-#if HAVE_WIDE
-    {"Wide Input", wideTest}
-#endif
-};
-
-int width, height;
-
-int main(int argc, char *argv[])
-{
-    WINDOW *win;
-    int key, old_option = -1, new_option = 0;
-    bool quit = FALSE;
-
-    setlocale(LC_ALL, "");
-
-    if (initTest(&win, argc, argv))
-        return 1;
-
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        init_pair(1, COLOR_WHITE, COLOR_BLUE);
-        wbkgd(win, COLOR_PAIR(1));
-    }
-    else
-#endif
-        wbkgd(win, A_REVERSE);
-
-    erase();
-    display_menu(old_option, new_option);
-
-    while (1)
-    {
-        noecho();
-        keypad(stdscr, TRUE);
-        raw();
-
-        key = getch();
-
-        switch(key)
-        {
-        case 10:
-        case 13:
-        case KEY_ENTER:
-            old_option = -1;
-            erase();
-            refresh();
-            (*command[new_option].function)(win);
-            erase();
-            display_menu(old_option, new_option);
-            break;
-
-        case KEY_PPAGE:
-        case KEY_HOME:
-            old_option = new_option;
-            new_option = 0;
-            display_menu(old_option, new_option);
-            break;
-
-        case KEY_NPAGE:
-        case KEY_END:
-            old_option = new_option;
-            new_option = MAX_OPTIONS - 1;
-            display_menu(old_option, new_option);
-            break;
-
-        case KEY_UP:
-            old_option = new_option;
-            new_option = (new_option == 0) ?
-                new_option : new_option - 1;
-            display_menu(old_option, new_option);
-            break;
-
-        case KEY_DOWN:
-            old_option = new_option;
-            new_option = (new_option == MAX_OPTIONS - 1) ?
-                new_option : new_option + 1;
-            display_menu(old_option, new_option);
-            break;
-#ifdef KEY_RESIZE
-        case KEY_RESIZE:
-# ifdef PDCURSES
-            resize_term(0, 0);
-# endif
-            old_option = -1;
-            erase();
-            display_menu(old_option, new_option);
-            break;
-#endif
-        case 'Q':
-        case 'q':
-            quit = TRUE;
-        }
-
-        if (quit == TRUE)
-            break;
-    }
-
-    delwin(win);
-    endwin();
-
-    return 0;
-}
-
-void Continue(WINDOW *win)
-{
-    mvwaddstr(win, 10, 1, " Press any key to continue");
-    wrefresh(win);
-    raw();
-    wgetch(win);
-}
-
-void Continue2(void)
-{
-    move(LINES - 1, 1);
-    clrtoeol();
-    mvaddstr(LINES - 2, 1, " Press any key to continue");
-    refresh();
-    raw();
-    getch();
-}
-
-int initTest(WINDOW **win, int argc, char *argv[])
-{
-#ifdef XCURSES
-    Xinitscr(argc, argv);
-#else
-    initscr();
-#endif
-#ifdef A_COLOR
-    if (has_colors())
-        start_color();
-#endif
-    /* Create a drawing window */
-
-    width  = 60;
-    height = 13;
-
-    *win = newwin(height, width, (LINES - height) / 2, (COLS - width) / 2);
-
-    if (*win == NULL)
-    {
-        endwin();
-        return 1;
-    }
-
-    return 0;
-}
-
-void introTest(WINDOW *win)
-{
-    werase(win);
-    wmove(win, height / 2 - 5, width / 2);
-    wvline(win, ACS_VLINE, 10);
-    wmove(win, height / 2, width / 2 - 10);
-    whline(win, ACS_HLINE, 20);
-    Continue(win);
-
-    beep();
-    werase(win);
-
-    box(win, ACS_VLINE, ACS_HLINE);
-    wrefresh(win);
-
-    cbreak();
-    mvwaddstr(win, 1, 1,
-        "You should have a rectangle in the middle of the screen");
-    mvwaddstr(win, 2, 1, "You should have heard a beep");
-    Continue(win);
-
-    flash();
-    mvwaddstr(win, 3, 1, "You should have seen a flash");
-    Continue(win);
-}
-
-void scrollTest(WINDOW *win)
-{
-    int i, OldY;
-#ifndef PDCURSES
-    int OldX;
-#endif
-    werase(win);
-    mvwaddstr(win, height - 2, 1, "The window will now scroll slowly");
-    box(win, ACS_VLINE, ACS_HLINE);
-    wrefresh(win);
-    scrollok(win, TRUE);
-    napms(500);
-
-    for (i = 1; i <= height; i++)
-    {
-        napms(150);
-        scroll(win);
-        wrefresh(win);
-    };
-
-#ifdef PDCURSES
-    OldY = getmaxy(win);
-#else
-    getmaxyx(win, OldY, OldX);
-#endif
-    mvwaddstr(win, 6, 1, "The top of the window will scroll");
-    wmove(win, 1, 1);
-    wsetscrreg(win, 0, 4);
-    box(win, ACS_VLINE, ACS_HLINE);
-    wrefresh(win);
-
-    for (i = 1; i <= 5; i++)
-    {
-        napms(500);
-        scroll(win);
-        wrefresh(win);
-    }
-
-    mvwaddstr(win, 3, 1, "The bottom of the window will scroll");
-    wmove(win, 8, 1);
-    wsetscrreg(win, 5, --OldY);
-    box(win, ACS_VLINE, ACS_HLINE);
-    wrefresh(win);
-
-    for (i = 5; i <= OldY; i++)
-    {
-        napms(300);
-        wscrl(win, -1);
-        wrefresh(win);
-    }
-
-    wsetscrreg(win, 0, OldY);
-}
-
-void inputTest(WINDOW *win)
-{
-    int w, h, bx, by, sw, sh, i, c, num = 0;
-    char buffer[80];
-    WINDOW *subWin;
-    static const char spinner[4] = "/-\\|";
-    int spinner_count = 0;
-
-    wclear(win);
-
-    getmaxyx(win, h, w);
-    getbegyx(win, by, bx);
-
-    sw = w / 3;
-    sh = h / 3;
-
-    if ((subWin = subwin(win, sh, sw, by + h - sh - 2, bx + w - sw - 2)) 
-        == NULL)
-        return;
-
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        init_pair(2, COLOR_WHITE, COLOR_RED);
-        wbkgd(subWin, COLOR_PAIR(2) | A_BOLD);
-    }
-    else
-#endif
-        wbkgd(subWin, A_BOLD);
-
-    box(subWin, ACS_VLINE, ACS_HLINE);
-    wrefresh(win);
-
-    nocbreak();
-
-    wclear (win);
-    mvwaddstr(win, 1, 1,
-        "Press keys (or mouse buttons) to show their names");
-    mvwaddstr(win, 2, 1, "Press spacebar to finish");
-    wrefresh(win);
-
-    keypad(win, TRUE);
-    raw();
-    noecho();
-
-    wtimeout(win, 200);
-
-#ifdef PDCURSES
-    mouse_set(ALL_MOUSE_EVENTS);
-    PDC_save_key_modifiers(TRUE);
-    PDC_return_key_modifiers(TRUE);
-#endif
-    curs_set(0);        /* turn cursor off */
-
-    while (1)
-    {
-        while (1)
-        {
-            c = wgetch(win);
-
-            if (c == ERR)
-            {
-                spinner_count++;
-                if (spinner_count == 4)
-                    spinner_count = 0;
-                mvwaddch(win, 3, 3, spinner[spinner_count]);
-                wrefresh(win);
-            }
-            else
-                break;
-        }
-#ifdef PDCURSES
-        wmove(win, 4, 18);
-        wclrtoeol(win);
-#endif
-        mvwaddstr(win, 3, 5, "Key Pressed: ");
-        wclrtoeol(win);
-
-        if (c >= KEY_MIN)
-            wprintw(win, "%s", keyname(c));
-        else if (isprint(c))
-            wprintw(win, "%c", c);
-        else
-            wprintw(win, "%s", unctrl(c));
-#ifdef PDCURSES
-        if (c == KEY_MOUSE)
-        {
-            int button = 0;
-            request_mouse_pos();
-
-            if (BUTTON_CHANGED(1))
-                button = 1;
-            else if (BUTTON_CHANGED(2))
-                button = 2;
-            else if (BUTTON_CHANGED(3))
-                button = 3;
-
-            if (button && (BUTTON_STATUS(button) & 
-                BUTTON_MODIFIER_MASK))
-            {
-                waddstr(win, " Modifier(s):");
-             
-                if (BUTTON_STATUS(button) & BUTTON_SHIFT)
-                    waddstr(win, " SHIFT");
-
-                if (BUTTON_STATUS(button) & BUTTON_CONTROL)
-                    waddstr(win, " CONTROL");
-
-                if (BUTTON_STATUS(button) & BUTTON_ALT)
-                    waddstr(win, " ALT");
-            }
-
-            wmove(win, 4, 18);
-            wclrtoeol(win);
-            wprintw(win, "Button %d: ", button);
-
-            if (MOUSE_MOVED)
-                waddstr(win, "moved: ");
-            else if (MOUSE_WHEEL_UP)
-                waddstr(win, "wheel up: ");
-            else if (MOUSE_WHEEL_DOWN)
-                waddstr(win, "wheel dn: ");
-            else if (MOUSE_WHEEL_LEFT)
-                waddstr(win, "wheel lt: ");
-            else if (MOUSE_WHEEL_RIGHT)
-                waddstr(win, "wheel rt: ");
-            else if ((BUTTON_STATUS(button) &
-                BUTTON_ACTION_MASK) == BUTTON_PRESSED)
-                waddstr(win, "pressed: ");
-            else if ((BUTTON_STATUS(button) &
-                BUTTON_ACTION_MASK) == BUTTON_CLICKED)
-                waddstr(win, "clicked: ");
-            else if ((BUTTON_STATUS(button) &
-                BUTTON_ACTION_MASK) == BUTTON_DOUBLE_CLICKED)
-                waddstr(win, "double: ");
-            else
-                waddstr(win, "released: ");
-
-            wprintw(win, "Position: Y: %d X: %d", MOUSE_Y_POS, MOUSE_X_POS);
-        }
-        else if (PDC_get_key_modifiers())
-        {
-            waddstr(win, " Modifier(s):");
-            if (PDC_get_key_modifiers() & PDC_KEY_MODIFIER_SHIFT)
-                waddstr(win, " SHIFT");
-
-            if (PDC_get_key_modifiers() & PDC_KEY_MODIFIER_CONTROL)
-                waddstr(win, " CONTROL");
-
-            if (PDC_get_key_modifiers() & PDC_KEY_MODIFIER_ALT)
-                waddstr(win, " ALT");
-
-            if (PDC_get_key_modifiers() & PDC_KEY_MODIFIER_NUMLOCK)
-                waddstr(win, " NUMLOCK");
-        }
-#endif
-        wrefresh(win);
-
-        if (c == ' ')
-            break;
-    }
-
-    wtimeout(win, -1);  /* turn off timeout() */
-    curs_set(1);        /* turn cursor back on */
-
-#ifdef PDCURSES
-    mouse_set(0L);
-    PDC_save_key_modifiers(FALSE);
-    PDC_return_key_modifiers(FALSE);
-#endif
-    wclear(win);
-    mvwaddstr(win, 2, 1, "Press some keys for 5 seconds");
-    mvwaddstr(win, 1, 1, "Pressing ^C should do nothing");
-    wrefresh(win);
-
-    werase(subWin);
-    box(subWin, ACS_VLINE, ACS_HLINE);
-
-    for (i = 0; i < 5; i++)
-    {
-        mvwprintw(subWin, 1, 1, "Time = %d", i);
-        wrefresh(subWin);
-        napms(1000);
-        flushinp();
-    }
-
-    delwin(subWin);
-    werase(win);
-    flash();
-    wrefresh(win);
-    napms(500);
-    flushinp();
-
-    mvwaddstr(win, 2, 1, "Press a key, followed by ENTER");
-    wmove(win, 9, 10);
-    wrefresh(win);
-    echo();
-
-    keypad(win, TRUE);
-    raw();
-    wgetnstr(win, buffer, 3);
-    flushinp();
-
-    wmove(win, 9, 10);
-    wdelch(win);
-    mvwaddstr(win, 4, 1, "The character should now have been deleted");
-    Continue(win);
-
-    refresh();
-    wclear(win);
-    echo();
-    buffer[0] = '\0';
-    mvwaddstr(win, 3, 2, "The window should have moved");
-    mvwaddstr(win, 4, 2,
-              "This text should have appeared without you pressing a key");
-    mvwaddstr(win, 6, 2, "Enter a number then a string seperated by space");
-    mvwin(win, 2, 1);
-    wrefresh(win);
-    mvwscanw(win, 7, 6, "%d %s", &num, buffer);
-    mvwprintw(win, 8, 6, "String: %s Number: %d", buffer, num);
-    Continue(win);
-
-    refresh();
-    wclear(win);
-    echo();
-    mvwaddstr(win, 3, 2, "Enter a 5 character string: ");
-    wgetnstr(win, buffer, 5);
-    mvwprintw(win, 4, 2, "String: %s", buffer);
-    Continue(win);
-}
-
-void outputTest(WINDOW *win)
-{
-    WINDOW *win1;
-    char Buffer[80];
-    chtype ch;
-    int by, bx;
-
-    nl();
-    wclear(win);
-    mvwaddstr(win, 1, 1, "You should now have a screen in the upper "
-                         "left corner, and this text should have wrapped");
-    waddstr(win,"\nThis text should be down\n");
-    waddstr(win,  "and broken into two here ^");
-    Continue(win);
-
-    wclear(win);
-    wattron(win, A_BOLD);
-    mvwaddstr(win, 1, 1, "A new window will appear with this text in it");
-    mvwaddstr(win, 8, 1, "Press any key to continue");
-    wrefresh(win);
-    wgetch(win);
-
-    getbegyx(win, by, bx);
-
-    if (LINES < 24 || COLS < 75)
-    {
-        mvwaddstr(win, 5, 1, "Some tests have been skipped as they require a");
-        mvwaddstr(win, 6, 1, "display of at least 24 LINES by 75 COLUMNS");
-        Continue(win);
-    }
-    else
-    {
-        win1 = newwin(10, 50, 14, 25);
-
-        if (win1 == NULL)
-        {
-            endwin();
-            return;
-        }
-
-#ifdef A_COLOR
-        if (has_colors())
-        {
-            init_pair(3, COLOR_BLUE, COLOR_WHITE);
-            wbkgd(win1, COLOR_PAIR(3));
-        }
-        else
-#endif
-            wbkgd(win1, A_NORMAL);
-
-        wclear(win1);
-        mvwaddstr(win1, 5, 1, "This text should appear; using overlay option");
-        copywin(win, win1, 0, 0, 0, 0, 9, 49, TRUE);
-        box(win1, ACS_VLINE, ACS_HLINE);
-        wmove(win1, 8, 26);
-        wrefresh(win1);
-        wgetch(win1);
-       
-        wclear(win1);
-
-        wattron(win1, A_BLINK);
-        mvwaddstr(win1, 4, 1,
-                  "This blinking text should appear in only the second window");
-        wattroff(win1, A_BLINK);
-
-        mvwin(win1, by, bx);
-        overlay(win, win1);
-        mvwin(win1, 14, 25);
-        wmove(win1, 8, 26);
-        wrefresh(win1);
-        wgetch(win1);
-
-        delwin(win1);
-    }
-
-    clear();
-    wclear(win);
-    wrefresh(win);
-    mvwaddstr(win, 6, 2, "This line shouldn't appear");
-    mvwaddstr(win, 4, 2, "Only half of the next line is visible");
-    mvwaddstr(win, 5, 2, "Only half of the next line is visible");
-    wmove(win, 6, 1);
-    wclrtobot(win);
-    wmove(win, 5, 20);
-    wclrtoeol(win);
-    mvwaddstr(win, 8, 2, "This line also shouldn't appear");
-    wmove(win, 8, 1);
-    winsdelln(win, -1);
-    Continue(win);
-
-    wmove(win, 5, 9);
-    ch = winch(win);
-
-    wclear(win);
-    wmove(win, 6, 2);
-    waddstr(win, "The next char should be l:  ");
-    winsch(win, ch);
-    Continue(win);
-
-    mvwinsstr(win, 6, 2, "A1B2C3D4E5");
-    Continue(win);
-
-    wmove(win, 5, 1);
-    winsdelln(win, 1);
-    mvwaddstr(win, 5, 2, "The lines below should have moved down");
-    Continue(win);
-
-    wclear(win);
-    wmove(win, 2, 2);
-    wprintw(win, "This is a formatted string in a window: %d %s\n",
-            42, "is it");
-    mvwaddstr(win, 10, 1, "Enter a string: ");
-    wrefresh(win);
-    echo();
-    wscanw(win, "%s", Buffer);
-
-    printw("This is a formatted string in stdscr: %d %s\n", 42, "is it");
-    mvaddstr(10, 1, "Enter a string: ");
-    scanw("%s", Buffer);
-
-    wclear(win);
-    curs_set(2);
-    mvwaddstr(win, 1, 1, "The cursor should be in high-visibility mode");
-    Continue(win);
-
-    wclear(win);
-    curs_set(0);
-    mvwaddstr(win, 1, 1, "The cursor should have disappeared");
-    Continue(win);
-
-    wclear(win);
-    curs_set(1);
-    mvwaddstr(win, 1, 1, "The cursor should be normal");
-    Continue(win);
-
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        wclear(win);
-        mvwaddstr(win, 1, 1, "Colors should change after you press a key");
-        Continue(win);
-
-        init_pair(1, COLOR_RED, COLOR_WHITE);
-        wrefresh(win);
-    }
-#endif
-    werase(win);
-    mvwaddstr(win, 1, 1, "Information About Your Terminal");
-    mvwaddstr(win, 3, 1, termname());
-    mvwaddstr(win, 4, 1, longname());
-
-    if (termattrs() & A_BLINK)
-        mvwaddstr(win, 5, 1, "This terminal claims to support blinking.");
-    else
-        mvwaddstr(win, 5, 1, "This terminal does NOT support blinking.");
-
-    mvwaddnstr(win, 7, 5, "Have a nice day!ok", 16);
-    wrefresh(win);
-
-    mvwinnstr(win, 7, 5, Buffer, 18);
-    mvaddstr(LINES - 2, 10, Buffer);
-    refresh();
-    Continue(win);
-}
-
-#if HAVE_RESIZE
-void resizeTest(WINDOW *dummy)
-{
-    WINDOW *win1;
-    int nwidth = 135, nheight = 52;
-    int owidth = COLS, oheight = LINES;
-
-    savetty();
-
-    resize_term(nheight, nwidth);
-
-    clear();
-    refresh();
-
-    win1 = newwin(10, 50, 14, 25);
-
-    if (win1 == NULL)
-    {
-        endwin();
-        return;
-    }
-
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        init_pair(3, COLOR_BLUE, COLOR_WHITE);
-        wattrset(win1, COLOR_PAIR(3));
-    }
-
-    wclear(win1);
-#endif
-    mvwaddstr(win1, 0, 0, "The screen may now be resized");
-    mvwprintw(win1, 1, 4, "Given size: %d by %d", nwidth, nheight);
-    mvwprintw(win1, 2, 4, "Actual size: %d by %d", COLS, LINES);
-    Continue(win1);
-
-    wclear(win1);
-    resetty();
-
-    mvwaddstr(win1, 0, 0, "The screen should now be reset");
-    mvwprintw(win1, 1, 6, "Old size: %d by %d", owidth, oheight);
-    mvwprintw(win1, 2, 6, "Size now: %d by %d", COLS, LINES);
-    Continue(win1);
-
-    delwin(win1);
-
-    clear();
-    refresh();
-}
-#endif /* HAVE_RESIZE */
-
-void padTest(WINDOW *dummy)
-{
-    WINDOW *pad, *spad;
-
-    pad = newpad(50, 100);
-    wattron(pad, A_REVERSE);
-    mvwaddstr(pad, 5, 2, "This is a new pad");
-    wattrset(pad, 0);
-    mvwaddstr(pad, 8, 0,
-        "The end of this line should be truncated here:except  now");
-    mvwaddstr(pad, 11, 1, "This line should not appear.It will now");
-    wmove(pad, 10, 1);
-    wclrtoeol(pad);
-    mvwaddstr(pad, 10, 1, " Press any key to continue");
-    prefresh(pad, 0, 0, 0, 0, 10, 45);
-    keypad(pad, TRUE);
-    raw();
-    wgetch(pad);
-
-    spad = subpad(pad, 12, 25, 7, 52);
-    mvwaddstr(spad, 2, 2, "This is a new subpad");
-    box(spad, 0, 0);
-    prefresh(pad, 0, 0, 0, 0, 15, 75);
-    keypad(pad, TRUE);
-    raw();
-    wgetch(pad);
-
-    mvwaddstr(pad, 35, 2, "This is displayed at line 35 in the pad");
-    mvwaddstr(pad, 40, 1, " Press any key to continue");
-    prefresh(pad, 30, 0, 0, 0, 10, 45);
-    keypad(pad, TRUE);
-    raw();
-    wgetch(pad);
-
-    delwin(pad);
-}
-
-#if HAVE_CLIPBOARD
-void clipboardTest(WINDOW *win)
-{
-    static const char *text =
-        "This string placed in clipboard by PDCurses test program, testcurs.";
-    char *ptr = NULL;
-    long i, length = 0;
-
-    mvaddstr(1, 1,
-             "This test will display the contents of the system clipboard");
-
-    Continue2();
-
-    scrollok(stdscr, TRUE);
-    i = PDC_getclipboard(&ptr, &length);
-
-    switch(i)
-    {
-    case PDC_CLIP_ACCESS_ERROR:
-        mvaddstr(3, 1, "There was an error accessing the clipboard");
-        refresh();
-        break;
-
-    case PDC_CLIP_MEMORY_ERROR:
-        mvaddstr(3, 1,
-            "Unable to allocate memory for clipboard contents");
-        break;
-
-    case PDC_CLIP_EMPTY:
-        mvaddstr(3, 1, "There was no text in the clipboard");
-        break;
-
-    default:
-        wsetscrreg(stdscr, 0, LINES - 1);
-        clear();
-        mvaddstr(1, 1, "Clipboard contents...");
-        mvprintw(2, 1, "%s\n", ptr);
-    }
-
-    Continue2();
-
-    clear();
-    mvaddstr(1, 1,
-        "This test will place the following string in the system clipboard:");
-    mvaddstr(2, 1, text);
-
-    i = PDC_setclipboard(text, strlen(text));
-
-    switch(i)
-    {
-    case PDC_CLIP_ACCESS_ERROR:
-        mvaddstr(3, 1, "There was an error accessing the clipboard");
-        break;
-
-    case PDC_CLIP_MEMORY_ERROR:
-        mvaddstr(3, 1, "Unable to allocate memory for clipboard contents");
-        break;
-
-    default:
-        mvaddstr(3, 1, "The string was placed in the clipboard successfully");
-    }
-
-    Continue2();
-}
-#endif /* HAVE_CLIPBOARD */
-
-void acsTest(WINDOW *win)
-{
-#ifdef ACS_S3
-# define ACSNUM 32
-#else
-# define ACSNUM 25
-#endif
-    static const char *acs_names[] =
-    {
-        "ACS_ULCORNER", "ACS_URCORNER", "ACS_LLCORNER", "ACS_LRCORNER",
-        "ACS_LTEE", "ACS_RTEE", "ACS_TTEE", "ACS_BTEE", "ACS_HLINE",
-        "ACS_VLINE", "ACS_PLUS",
-
-        "ACS_S1", "ACS_S9", "ACS_DIAMOND", "ACS_CKBOARD", "ACS_DEGREE",
-        "ACS_PLMINUS", "ACS_BULLET",
-
-        "ACS_LARROW", "ACS_RARROW", "ACS_UARROW", "ACS_DARROW",
-        "ACS_BOARD", "ACS_LANTERN", "ACS_BLOCK"
-#ifdef ACS_S3
-        , "ACS_S3", "ACS_S7", "ACS_LEQUAL", "ACS_GEQUAL", 
-        "ACS_PI", "ACS_NEQUAL", "ACS_STERLING"
-#endif
-    };
-
-    chtype acs_values[ACSNUM];
-
-#if HAVE_WIDE
-    cchar_t *wacs_values[] =
-    {
-        WACS_ULCORNER, WACS_URCORNER, WACS_LLCORNER, WACS_LRCORNER, 
-        WACS_LTEE, WACS_RTEE, WACS_TTEE, WACS_BTEE, WACS_HLINE, 
-        WACS_VLINE, WACS_PLUS,
-
-        WACS_S1, WACS_S9, WACS_DIAMOND, WACS_CKBOARD, WACS_DEGREE, 
-        WACS_PLMINUS, WACS_BULLET,
-
-        WACS_LARROW, WACS_RARROW, WACS_UARROW, WACS_DARROW, WACS_BOARD, 
-        WACS_LANTERN, WACS_BLOCK
-# ifdef WACS_S3
-        , WACS_S3, WACS_S7, WACS_LEQUAL, WACS_GEQUAL, WACS_PI, 
-        WACS_NEQUAL, WACS_STERLING
-# endif
-    };
-
-    static const wchar_t russian[] = {0x0420, 0x0443, 0x0441, 0x0441,
-        0x043a, 0x0438, 0x0439, L' ', 0x044f, 0x0437, 0x044b, 0x043a, 0};
-
-    static const wchar_t greek[] = {0x0395, 0x03bb, 0x03bb, 0x03b7,
-        0x03bd, 0x03b9, 0x03ba, 0x03ac, 0};
-
-    static const wchar_t georgian[] = {0x10e5, 0x10d0, 0x10e0, 0x10d7, 
-        0x10e3, 0x10da, 0x10d8, L' ', 0x10d4, 0x10dc, 0x10d0, 0};
-#endif
-
-    int i, tmarg = (LINES - 22) / 2;
-
-    attrset(A_BOLD);
-    mvaddstr(tmarg, (COLS - 23) / 2, "Alternate Character Set");
-    attrset(A_NORMAL);
-
-    tmarg += 3;
-
-#define A(b,c) acs_values[b] = ACS_##c
-
-    A(0,ULCORNER); A(1,URCORNER); A(2,LLCORNER); A(3,LRCORNER);
-    A(4,LTEE);     A(5,RTEE);     A(6,TTEE);     A(7,BTEE);
-    A(8,HLINE);    A(9,VLINE);    A(10,PLUS);    A(11,S1);
-    A(12,S9);      A(13,DIAMOND); A(14,CKBOARD); A(15,DEGREE);
-
-    A(16,PLMINUS); A(17,BULLET);  A(18,LARROW);  A(19,RARROW);
-    A(20,UARROW);  A(21,DARROW);  A(22,BOARD);   A(23,LANTERN);
-    A(24,BLOCK);
-#ifdef ACS_S3
-    A(25,S3);      A(26,S7);      A(27,LEQUAL);  A(28,GEQUAL);
-    A(29,PI);      A(30,NEQUAL);  A(31,STERLING);
-#endif
-
-#undef A
-
-    for (i = 0; i < ACSNUM; i++)
-    {
-        move((i % 8) * 2 + tmarg, (i / 8) * (COLS / 4) + (COLS / 8 - 7));
-        addch(acs_values[i]);
-        printw(" %s", acs_names[i]);
-    }
-
-    mvaddstr(tmarg + 18, 3, "Press any key to continue");
-    getch();
-
-#if HAVE_WIDE
-    clear();
-
-    attrset(A_BOLD);
-    mvaddstr(tmarg - 3, (COLS - 28) / 2, "Wide Alternate Character Set");
-    attrset(A_NORMAL);
-
-    for (i = 0; i < ACSNUM; i++)
-    {
-        move((i % 8) * 2 + tmarg, (i / 8) * (COLS / 4) + (COLS / 8 - 7));
-        add_wch(wacs_values[i]);
-        printw(" W%s", acs_names[i]);
-    }
-
-    /* Spanish, Russian, Greek, Georgian */
-
-    mvaddwstr(tmarg + 16, COLS / 8 - 5, L"Espa\xf1ol");
-    mvaddwstr(tmarg + 16, 3 * (COLS / 8) - 5, russian);
-    mvaddwstr(tmarg + 16, 5 * (COLS / 8) - 5, greek);
-    mvaddwstr(tmarg + 16, 7 * (COLS / 8) - 5, georgian);
-
-    mvaddstr(tmarg + 18, 3, "Press any key to continue");
-    getch();
-#endif
-}
-
-#if HAVE_COLOR
-void colorTest(WINDOW *win)
-{
-    static const short colors[] =
-    {
-        COLOR_BLACK, COLOR_RED, COLOR_GREEN, COLOR_BLUE, 
-        COLOR_CYAN, COLOR_MAGENTA, COLOR_YELLOW, COLOR_WHITE
-    };
-
-    static const char *colornames[] =
-    {
-        "COLOR_BLACK", "COLOR_RED", "COLOR_GREEN", "COLOR_BLUE", 
-        "COLOR_CYAN", "COLOR_MAGENTA", "COLOR_YELLOW", "COLOR_WHITE"
-    };
-
-    chtype fill = ACS_BLOCK;
-
-    int i, j, tmarg, col1, col2, col3;
-
-    if (!has_colors())
-        return;
-
-    tmarg = (LINES - 19) / 2;
-    col1 = (COLS - 60) / 2;
-    col2 = col1 + 20;
-    col3 = col2 + 20;
-
-    attrset(A_BOLD);
-    mvaddstr(tmarg, (COLS - 22) / 2, "Color Attribute Macros");
-    attrset(A_NORMAL);
-
-    mvaddstr(tmarg + 3, col2 + 4, "A_NORMAL");
-    mvaddstr(tmarg + 3, col3 + 5, "A_BOLD");
-
-    for (i = 0; i < 8; i++)
-    {
-        init_pair(i + 4, colors[i], COLOR_BLACK);
-
-        mvaddstr(tmarg + i + 5, col1, colornames[i]);
-
-        for (j = 0; j < 16; j++)
-        {
-            mvaddch(tmarg + i + 5, col2 + j, fill | COLOR_PAIR(i + 4));
-            mvaddch(tmarg + i + 5, col3 + j, fill | COLOR_PAIR(i + 4) | A_BOLD);
-        }
-    }
-
-    mvprintw(tmarg + 15, col1, "COLORS = %d", COLORS);
-    mvprintw(tmarg + 16, col1, "COLOR_PAIRS = %d", COLOR_PAIRS);
-
-    mvaddstr(tmarg + 19, 3, "Press any key to continue");
-    getch();
-
-    if (can_change_color())
-    {
-        struct
-        {
-            short red, green, blue;
-        } orgcolors[16];
-
-        int MAXCOL = (COLORS >= 16) ? 16 : 8;
-
-        if (MAXCOL < 8)
-            return;
-
-        for (i = 0; i < MAXCOL; i++)
-            color_content(i, &(orgcolors[i].red),
-                             &(orgcolors[i].green),
-                             &(orgcolors[i].blue));
-
-        attrset(A_BOLD);
-        mvaddstr(tmarg, (COLS - 22) / 2, " init_color() Example ");
-        attrset(A_NORMAL);
-
-        refresh();
-
-        for (i = 0; i < 8; i++)
-        {
-            init_color(colors[i], i * 125, 0, i * 125);
-
-            if (MAXCOL == 16)
-                init_color(colors[i] + 8, 0, i * 125, 0);
-        }
-
-        mvaddstr(tmarg + 19, 3, "Press any key to continue");
-        getch();
-
-        for (i = 0; i < MAXCOL; i++)
-            init_color(i, orgcolors[i].red,
-                          orgcolors[i].green,
-                          orgcolors[i].blue);
-    }
-}
-#endif
-
-#if HAVE_WIDE
-void wideTest(WINDOW *win)
-{
-    wchar_t tmp[513];
-    size_t i;
-
-    attrset(A_BOLD);
-    mvaddstr(1, (COLS - 25) / 2, "Wide Character Input Test");
-    attrset(A_NORMAL);
-
-    mvaddstr(4, 1, "Enter a string: ");
-
-    echo();
-
-    get_wstr((wint_t *)tmp);
-    addstr("\n\n String:\n\n ");
-    addwstr(tmp);
-    addstr("\n\n\n Hex:\n\n ");
-
-    for (i = 0; i < wcslen(tmp); i++)
-    {
-        printw("%04x ", tmp[i]);
-        addnwstr(tmp + i, 1);
-        addstr("  ");
-    }
-
-    noecho();
-
-    Continue2();
-}
-#endif
-
-void display_menu(int old_option, int new_option)
-{
-    int lmarg = (COLS - 14) / 2,
-        tmarg = (LINES - (MAX_OPTIONS + 2)) / 2;
-
-    if (old_option == -1)
-    {
-        int i;
-
-        attrset(A_BOLD);
-        mvaddstr(tmarg - 3, lmarg - 5, "PDCurses Test Program");
-        attrset(A_NORMAL);
-
-        for (i = 0; i < MAX_OPTIONS; i++)
-            mvaddstr(tmarg + i, lmarg, command[i].text);
-    }
-    else
-        mvaddstr(tmarg + old_option, lmarg, command[old_option].text);
-
-    attrset(A_REVERSE);
-    mvaddstr(tmarg + new_option, lmarg, command[new_option].text);
-    attrset(A_NORMAL);
-
-    mvaddstr(tmarg + MAX_OPTIONS + 2, lmarg - 23,
-             "Use Up and Down Arrows to select - Enter to run - Q to quit");
-    refresh();
-}
diff --git a/src/other/PDCurses/demos/tui.c b/src/other/PDCurses/demos/tui.c
deleted file mode 100644
index e57a1b0..0000000
--- a/src/other/PDCurses/demos/tui.c
+++ /dev/null
@@ -1,821 +0,0 @@
-/********************************* tui.c ************************************/
-/*
- * 'textual user interface'
- *
- * $Id: tui.c,v 1.34 2008/07/14 12:35:23 wmcbrine Exp $
- *
- * Author : P.J. Kunst <kunst at prl.philips.nl>
- * Date   : 25-02-93
- */
-
-#include <ctype.h>
-#include <curses.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-#include "tui.h"
-
-void statusmsg(char *);
-int waitforkey(void);
-void rmerror(void);
-
-#if defined(__unix) && !defined(__DJGPP__)
-#include <unistd.h>
-#endif
-
-#ifdef A_COLOR
-# define TITLECOLOR       1       /* color pair indices */
-# define MAINMENUCOLOR    (2 | A_BOLD)
-# define MAINMENUREVCOLOR (3 | A_BOLD | A_REVERSE)
-# define SUBMENUCOLOR     (4 | A_BOLD)
-# define SUBMENUREVCOLOR  (5 | A_BOLD | A_REVERSE)
-# define BODYCOLOR        6
-# define STATUSCOLOR      (7 | A_BOLD)
-# define INPUTBOXCOLOR    8
-# define EDITBOXCOLOR     (9 | A_BOLD | A_REVERSE)
-#else
-# define TITLECOLOR       0       /* color pair indices */
-# define MAINMENUCOLOR    (A_BOLD)
-# define MAINMENUREVCOLOR (A_BOLD | A_REVERSE)
-# define SUBMENUCOLOR     (A_BOLD)
-# define SUBMENUREVCOLOR  (A_BOLD | A_REVERSE)
-# define BODYCOLOR        0
-# define STATUSCOLOR      (A_BOLD)
-# define INPUTBOXCOLOR    0
-# define EDITBOXCOLOR     (A_BOLD | A_REVERSE)
-#endif
-
-
-#define th 1     /* title window height */
-#define mh 1     /* main menu height */
-#define sh 2     /* status window height */
-#define bh (LINES - th - mh - sh)   /* body window height */
-#define bw COLS  /* body window width */
-
-
-/******************************* STATIC ************************************/
-
-static WINDOW *wtitl, *wmain, *wbody, *wstat; /* title, menu, body, status win*/
-static int nexty, nextx;
-static int key = ERR, ch = ERR;
-static bool quit = FALSE;
-static bool incurses = FALSE;
-
-#ifndef PDCURSES
-static char wordchar(void)
-{
-    return 0x17;    /* ^W */ 
-}
-#endif
-
-static char *padstr(char *s, int length)
-{
-    static char buf[MAXSTRLEN];
-    char fmt[10];
-
-    sprintf(fmt, (int)strlen(s) > length ? "%%.%ds" : "%%-%ds", length);
-    sprintf(buf, fmt, s);
-
-    return buf;
-}
-
-static char *prepad(char *s, int length)
-{
-    int i;
-    char *p = s;
-
-    if (length > 0)
-    {
-        memmove((void *)(s + length), (const void *)s, strlen(s) + 1);
-
-        for (i = 0; i < length; i++)
-            *p++ = ' ';
-    }
-
-    return s;
-}
-
-static void rmline(WINDOW *win, int nr)   /* keeps box lines intact */
-{
-    mvwaddstr(win, nr, 1, padstr(" ", bw - 2));
-    wrefresh(win);
-}
-
-static void initcolor(void)
-{
-#ifdef A_COLOR
-    if (has_colors())
-        start_color();
-
-    /* foreground, background */
-
-    init_pair(TITLECOLOR       & ~A_ATTR, COLOR_BLACK, COLOR_CYAN);      
-    init_pair(MAINMENUCOLOR    & ~A_ATTR, COLOR_WHITE, COLOR_CYAN);    
-    init_pair(MAINMENUREVCOLOR & ~A_ATTR, COLOR_WHITE, COLOR_BLACK);
-    init_pair(SUBMENUCOLOR     & ~A_ATTR, COLOR_WHITE, COLOR_CYAN);    
-    init_pair(SUBMENUREVCOLOR  & ~A_ATTR, COLOR_WHITE, COLOR_BLACK);   
-    init_pair(BODYCOLOR        & ~A_ATTR, COLOR_WHITE, COLOR_BLUE);      
-    init_pair(STATUSCOLOR      & ~A_ATTR, COLOR_WHITE, COLOR_CYAN);   
-    init_pair(INPUTBOXCOLOR    & ~A_ATTR, COLOR_BLACK, COLOR_CYAN);
-    init_pair(EDITBOXCOLOR     & ~A_ATTR, COLOR_WHITE, COLOR_BLACK);
-#endif
-}
-
-static void setcolor(WINDOW *win, chtype color)
-{
-    chtype attr = color & A_ATTR;  /* extract Bold, Reverse, Blink bits */
-
-#ifdef A_COLOR
-    attr &= ~A_REVERSE;  /* ignore reverse, use colors instead! */
-    wattrset(win, COLOR_PAIR(color & A_CHARTEXT) | attr);
-#else
-    attr &= ~A_BOLD;     /* ignore bold, gives messy display on HP-UX */
-    wattrset(win, attr);
-#endif
-}
-
-static void colorbox(WINDOW *win, chtype color, int hasbox)
-{
-    int maxy;
-#ifndef PDCURSES
-    int maxx;
-#endif
-    chtype attr = color & A_ATTR;  /* extract Bold, Reverse, Blink bits */
-
-    setcolor(win, color);
-
-#ifdef A_COLOR
-    if (has_colors())
-        wbkgd(win, COLOR_PAIR(color & A_CHARTEXT) | (attr & ~A_REVERSE));
-    else
-#endif
-        wbkgd(win, attr);
-
-    werase(win); 
-
-#ifdef PDCURSES
-    maxy = getmaxy(win);
-#else
-    getmaxyx(win, maxy, maxx);
-#endif
-    if (hasbox && (maxy > 2))
-        box(win, 0, 0);
-
-    touchwin(win);
-    wrefresh(win);
-}
-
-static void idle(void)
-{
-    char buf[MAXSTRLEN];
-    time_t t;
-    struct tm *tp;
-
-    if (time (&t) == -1)
-        return;  /* time not available */
-
-    tp = localtime(&t);
-    sprintf(buf, " %.2d-%.2d-%.4d  %.2d:%.2d:%.2d",
-            tp->tm_mday, tp->tm_mon + 1, tp->tm_year + 1900,
-            tp->tm_hour, tp->tm_min, tp->tm_sec);
-
-    mvwaddstr(wtitl, 0, bw - strlen(buf) - 2, buf);
-    wrefresh(wtitl); 
-}
-
-static void menudim(menu *mp, int *lines, int *columns)
-{
-    int n, l, mmax = 0;
-
-    for (n=0; mp->func; n++, mp++)
-        if ((l = strlen(mp->name)) > mmax) mmax = l;
-
-    *lines = n;
-    *columns = mmax + 2;
-}
-
-static void setmenupos(int y, int x)
-{
-    nexty = y;
-    nextx = x;
-}
-
-static void getmenupos(int *y, int *x)
-{
-    *y = nexty;
-    *x = nextx;
-}
-
-static int hotkey(const char *s)
-{
-    int c0 = *s;    /* if no upper case found, return first char */
-
-    for (; *s; s++)
-        if (isupper((unsigned char)*s))
-            break;
-
-    return *s ? *s : c0;
-}
-
-static void repaintmenu(WINDOW *wmenu, menu *mp)
-{
-    int i;
-    menu *p = mp;
-
-    for (i = 0; p->func; i++, p++)
-        mvwaddstr(wmenu, i + 1, 2, p->name);
-
-    touchwin(wmenu);
-    wrefresh(wmenu);
-}
-
-static void repaintmainmenu(int width, menu *mp)
-{
-    int i;
-    menu *p = mp;
-
-    for (i = 0; p->func; i++, p++)
-        mvwaddstr(wmain, 0, i * width, prepad(padstr(p->name, width - 1), 1));
-
-    touchwin(wmain);
-    wrefresh(wmain);
-}
-
-static void mainhelp(void)
-{
-#ifdef ALT_X
-    statusmsg("Use arrow keys and Enter to select (Alt-X to quit)");
-#else
-    statusmsg("Use arrow keys and Enter to select");
-#endif
-}
-
-static void mainmenu(menu *mp)
-{
-    int nitems, barlen, old = -1, cur = 0, c, cur0;
-
-    menudim(mp, &nitems, &barlen);
-    repaintmainmenu(barlen, mp);
-
-    while (!quit)
-    {
-        if (cur != old)
-        {
-            if (old != -1)
-            {
-                mvwaddstr(wmain, 0, old * barlen, 
-                          prepad(padstr(mp[old].name, barlen - 1), 1));
-
-                statusmsg(mp[cur].desc);
-            }
-            else
-                mainhelp();
-
-            setcolor(wmain, MAINMENUREVCOLOR);
-
-            mvwaddstr(wmain, 0, cur * barlen, 
-                      prepad(padstr(mp[cur].name, barlen - 1), 1));
-
-            setcolor(wmain, MAINMENUCOLOR);
-            old = cur;
-            wrefresh(wmain);
-        }
-
-        switch (c = (key != ERR ? key : waitforkey()))
-        {
-        case KEY_DOWN:
-        case '\n':              /* menu item selected */
-            touchwin(wbody);
-            wrefresh(wbody);
-            rmerror();
-            setmenupos(th + mh, cur * barlen);
-            curs_set(1);
-            (mp[cur].func)();   /* perform function */
-            curs_set(0);
-
-            switch (key)
-            {
-            case KEY_LEFT:
-                cur = (cur + nitems - 1) % nitems;
-                key = '\n';
-                break;
-
-            case KEY_RIGHT:
-                cur = (cur + 1) % nitems;
-                key = '\n';
-                break;
-
-            default:
-                key = ERR;
-            }
-
-            repaintmainmenu(barlen, mp);
-            old = -1;
-            break;
-
-        case KEY_LEFT:
-            cur = (cur + nitems - 1) % nitems;
-            break;
-
-        case KEY_RIGHT:
-            cur = (cur + 1) % nitems;
-            break;
-
-        case KEY_ESC:
-            mainhelp();
-            break;
-
-        default:
-            cur0 = cur;
-
-            do
-            {
-                cur = (cur + 1) % nitems;
-
-            } while ((cur != cur0) && (hotkey(mp[cur].name) != toupper(c)));
-
-            if (hotkey(mp[cur].name) == toupper(c))
-                key = '\n';
-        }
-
-    }
-
-    rmerror();
-    touchwin(wbody);
-    wrefresh(wbody);
-}
-
-static void cleanup(void)   /* cleanup curses settings */
-{
-    if (incurses)
-    {
-        delwin(wtitl);
-        delwin(wmain);
-        delwin(wbody);
-        delwin(wstat);
-        curs_set(1);
-        endwin();
-        incurses = FALSE;
-    }
-}
-
-
-/******************************* EXTERNAL **********************************/
-
-void clsbody(void)
-{
-    werase(wbody);
-    wmove(wbody, 0, 0);
-}
-
-int bodylen(void)
-{
-#ifdef PDCURSES
-    return getmaxy(wbody);
-#else
-    int maxy, maxx;
-
-    getmaxyx(wbody, maxy, maxx);
-    return maxy;
-#endif
-}
-
-WINDOW *bodywin(void)
-{
-    return wbody;
-}
-
-void rmerror(void)
-{
-    rmline(wstat, 0);
-}
-
-void rmstatus(void)
-{
-    rmline(wstat, 1);
-}
-
-void titlemsg(char *msg)
-{
-    mvwaddstr(wtitl, 0, 2, padstr(msg, bw - 3));
-    wrefresh(wtitl);
-}
-
-void bodymsg(char *msg)
-{
-    waddstr(wbody, msg);
-    wrefresh(wbody);
-}
-
-void errormsg(char *msg)
-{
-    beep();
-    mvwaddstr(wstat, 0, 2, padstr(msg, bw - 3));
-    wrefresh(wstat);
-}
-
-void statusmsg(char *msg)
-{
-    mvwaddstr(wstat, 1, 2, padstr(msg, bw - 3));
-    wrefresh(wstat);
-}
-
-bool keypressed(void)
-{
-    ch = wgetch(wbody);
-
-    return ch != ERR;
-}
-
-int getkey(void)
-{
-    int c = ch;
-
-    ch = ERR;
-#ifdef ALT_X
-    quit = (c == ALT_X);    /* PC only ! */
-#endif
-    return c;
-}
-
-int waitforkey(void)
-{
-    do idle(); while (!keypressed());
-    return getkey();
-}
-
-void DoExit(void)   /* terminate program */
-{
-    quit = TRUE;
-}
-
-void domenu(menu *mp)
-{
-    int y, x, nitems, barlen, mheight, mw, old = -1, cur = 0, cur0;
-    bool stop = FALSE;
-    WINDOW *wmenu;
-
-    curs_set(0);
-    getmenupos(&y, &x);
-    menudim(mp, &nitems, &barlen);
-    mheight = nitems + 2;
-    mw = barlen + 2;
-    wmenu = newwin(mheight, mw, y, x);
-    colorbox(wmenu, SUBMENUCOLOR, 1);
-    repaintmenu(wmenu, mp);
-
-    key = ERR;
-
-    while (!stop && !quit)
-    {
-        if (cur != old)
-        {
-            if (old != -1)
-                mvwaddstr(wmenu, old + 1, 1, 
-                          prepad(padstr(mp[old].name, barlen - 1), 1));
-
-            setcolor(wmenu, SUBMENUREVCOLOR);
-            mvwaddstr(wmenu, cur + 1, 1,
-                      prepad(padstr(mp[cur].name, barlen - 1), 1));
-
-            setcolor(wmenu, SUBMENUCOLOR);
-            statusmsg(mp[cur].desc);
-
-            old = cur;
-            wrefresh(wmenu);
-        }
-
-        switch (key = ((key != ERR) ? key : waitforkey()))
-        {
-        case '\n':          /* menu item selected */
-            touchwin(wbody);
-            wrefresh(wbody);
-            setmenupos(y + 1, x + 1);
-            rmerror();
-
-            key = ERR;
-            curs_set(1);
-            (mp[cur].func)();   /* perform function */
-            curs_set(0);
-
-            repaintmenu(wmenu, mp);
-
-            old = -1;
-            break;
-
-        case KEY_UP:
-            cur = (cur + nitems - 1) % nitems;
-            key = ERR;
-            break;
-
-        case KEY_DOWN:
-            cur = (cur + 1) % nitems;
-            key = ERR;
-            break;
-
-        case KEY_ESC:
-        case KEY_LEFT:
-        case KEY_RIGHT:
-            if (key == KEY_ESC)
-                key = ERR;  /* return to prev submenu */
-
-            stop = TRUE;
-            break;
-
-        default:
-            cur0 = cur;
-
-            do
-            {
-                cur = (cur + 1) % nitems;
-
-            } while ((cur != cur0) &&
-                     (hotkey(mp[cur].name) != toupper((int)key)));
-
-            key = (hotkey(mp[cur].name) == toupper((int)key)) ? '\n' : ERR;
-        }
-
-    }
-
-    rmerror();
-    delwin(wmenu);
-    touchwin(wbody);
-    wrefresh(wbody);
-}
-
-void startmenu(menu *mp, char *mtitle)
-{
-    initscr();
-    incurses = TRUE;
-    initcolor();
-
-    wtitl = subwin(stdscr, th, bw, 0, 0);
-    wmain = subwin(stdscr, mh, bw, th, 0);
-    wbody = subwin(stdscr, bh, bw, th + mh, 0);
-    wstat = subwin(stdscr, sh, bw, th + mh + bh, 0);
-
-    colorbox(wtitl, TITLECOLOR, 0);
-    colorbox(wmain, MAINMENUCOLOR, 0);
-    colorbox(wbody, BODYCOLOR, 0);
-    colorbox(wstat, STATUSCOLOR, 0);
-
-    if (mtitle)
-        titlemsg(mtitle);
-
-    cbreak();              /* direct input (no newline required)... */
-    noecho();              /* ... without echoing */
-    curs_set(0);           /* hide cursor (if possible) */
-    nodelay(wbody, TRUE);  /* don't wait for input... */
-    halfdelay(10);         /* ...well, no more than a second, anyway */
-    keypad(wbody, TRUE);   /* enable cursor keys */
-    scrollok(wbody, TRUE); /* enable scrolling in main window */
-
-    leaveok(stdscr, TRUE);
-    leaveok(wtitl, TRUE);
-    leaveok(wmain, TRUE);
-    leaveok(wstat, TRUE);
-
-    mainmenu(mp);
-
-    cleanup();
-}
-
-static void repainteditbox(WINDOW *win, int x, char *buf)
-{
-#ifndef PDCURSES
-    int maxy;
-#endif
-    int maxx;
-
-#ifdef PDCURSES
-    maxx = getmaxx(win);
-#else
-    getmaxyx(win, maxy, maxx);
-#endif
-    werase(win);
-    mvwprintw(win, 0, 0, "%s", padstr(buf, maxx));
-    wmove(win, 0, x);
-    wrefresh(win); 
-}
-
-/*
-
-  weditstr()     - edit string
-
-  Description:
-    The initial value of 'str' with a maximum length of 'field' - 1,
-    which is supplied by the calling routine, is editted. The user's 
-    erase (^H), kill (^U) and delete word (^W) chars are interpreted. 
-    The PC insert or Tab keys toggle between insert and edit mode.
-    Escape aborts the edit session, leaving 'str' unchanged.
-    Enter, Up or Down Arrow are used to accept the changes to 'str'.
-    NOTE: editstr(), mveditstr(), and mvweditstr() are macros.
-
-  Return Value:
-    Returns the input terminating character on success (Escape, 
-    Enter, Up or Down Arrow) and ERR on error.
-
-  Errors:
-    It is an error to call this function with a NULL window pointer.
-    The length of the initial 'str' must not exceed 'field' - 1.
-
-*/
-
-int weditstr(WINDOW *win, char *buf, int field)
-{
-    char org[MAXSTRLEN], *tp, *bp = buf;
-    bool defdisp = TRUE, stop = FALSE, insert = FALSE;
-    int cury, curx, begy, begx, oldattr;
-    WINDOW *wedit;
-    int c = 0;
-
-    if ((field >= MAXSTRLEN) || (buf == NULL) ||
-        ((int)strlen(buf) > field - 1))
-        return ERR;
-
-    strcpy(org, buf);   /* save original */
-
-    wrefresh(win);
-    getyx(win, cury, curx);
-    getbegyx(win, begy, begx);
-
-    wedit = subwin(win, 1, field, begy + cury, begx + curx);
-    oldattr = wedit->_attrs;
-    colorbox(wedit, EDITBOXCOLOR, 0);
-
-    keypad(wedit, TRUE);
-    curs_set(1);
-
-    while (!stop)
-    {
-        idle();
-        repainteditbox(wedit, bp - buf, buf);
-
-        switch (c = wgetch(wedit))
-        {
-        case ERR:
-            break;
-
-        case KEY_ESC:
-            strcpy(buf, org);   /* restore original */
-            stop = TRUE;
-            break;
-
-        case '\n':
-        case KEY_UP:
-        case KEY_DOWN:
-            stop = TRUE;
-            break;
-
-        case KEY_LEFT:
-            if (bp > buf)
-                bp--;
-            break;
-
-        case KEY_RIGHT:
-            defdisp = FALSE;
-            if (bp - buf < (int)strlen(buf))
-                bp++;
-            break;
-
-        case '\t':            /* TAB -- because insert
-                                  is broken on HPUX */
-        case KEY_IC:          /* enter insert mode */
-        case KEY_EIC:         /* exit insert mode */
-            defdisp = FALSE;
-            insert = !insert;
-
-            curs_set(insert ? 2 : 1);
-            break;
-
-        default:
-            if (c == erasechar())       /* backspace, ^H */
-            {
-                if (bp > buf)
-                {
-                    memmove((void *)(bp - 1), (const void *)bp, strlen(bp) + 1);
-                    bp--;
-                }
-            }
-            else if (c == killchar())   /* ^U */
-            {
-                bp = buf;
-                *bp = '\0';
-            }
-            else if (c == wordchar())   /* ^W */
-            {
-                tp = bp;
-
-                while ((bp > buf) && (*(bp - 1) == ' ')) 
-                    bp--;
-                while ((bp > buf) && (*(bp - 1) != ' ')) 
-                    bp--;
-
-                memmove((void *)bp, (const void *)tp, strlen(tp) + 1);
-            }
-            else if (isprint(c))
-            {
-                if (defdisp)
-                {
-                    bp = buf;
-                    *bp = '\0';
-                    defdisp = FALSE;
-                }
-
-                if (insert)
-                {
-                    if ((int)strlen(buf) < field - 1)
-                    {
-                        memmove((void *)(bp + 1), (const void *)bp,
-                                strlen(bp) + 1);
-
-                        *bp++ = c;
-                    }
-                }
-                else if (bp - buf < field - 1)
-                {
-                    /* append new string terminator */
-
-                    if (!*bp)
-                        bp[1] = '\0';
-            
-                    *bp++ = c;
-                }
-            }
-        }
-    }
-
-    curs_set(0);
-
-    wattrset(wedit, oldattr);
-    repainteditbox(wedit, bp - buf, buf);
-    delwin(wedit);
-
-    return c;
-}
-
-WINDOW *winputbox(WINDOW *win, int nlines, int ncols)
-{
-    WINDOW *winp;
-    int cury, curx, begy, begx;
-
-    getyx(win, cury, curx);
-    getbegyx(win, begy, begx);
-
-    winp = newwin(nlines, ncols, begy + cury, begx + curx);
-    colorbox(winp, INPUTBOXCOLOR, 1);
-
-    return winp;
-}
-
-int getstrings(char *desc[], char *buf[], int field)
-{
-    WINDOW *winput;
-    int oldy, oldx, maxy, maxx, nlines, ncols, i, n, l, mmax = 0;
-    int c = 0;
-    bool stop = FALSE;
-
-    for (n = 0; desc[n]; n++)
-        if ((l = strlen(desc[n])) > mmax)
-            mmax = l;
-
-    nlines = n + 2; ncols = mmax + field + 4;
-    getyx(wbody, oldy, oldx);
-    getmaxyx(wbody, maxy, maxx);
-
-    winput = mvwinputbox(wbody, (maxy - nlines) / 2, (maxx - ncols) / 2, 
-        nlines, ncols);
-
-    for (i = 0; i < n; i++)
-        mvwprintw(winput, i + 1, 2, "%s", desc[i]);
-
-    i = 0;
-
-    while (!stop)
-    {
-        switch (c = mvweditstr(winput, i+1, mmax+3, buf[i], field))
-        {
-        case KEY_ESC:
-            stop = TRUE;
-            break;
-
-        case KEY_UP:
-            i = (i + n - 1) % n;
-            break;
-
-        case '\n':
-        case '\t':
-        case KEY_DOWN:
-            if (++i == n)
-                stop = TRUE;    /* all passed? */
-        }
-    }
-
-    delwin(winput);
-    touchwin(wbody);
-    wmove(wbody, oldy, oldx);
-    wrefresh(wbody);
-
-    return c;
-}
diff --git a/src/other/PDCurses/demos/tui.h b/src/other/PDCurses/demos/tui.h
deleted file mode 100644
index b99ca6b..0000000
--- a/src/other/PDCurses/demos/tui.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * 'textual user interface'
- *
- * $Id: tui.h,v 1.11 2008/07/14 12:35:23 wmcbrine Exp $
- *
- * Author : P.J. Kunst <kunst at prl.philips.nl>
- * Date   : 25-02-93
- */
-
-#ifndef _TUI_H_
-#define _TUI_H_
-
-#include <curses.h>
-
-#ifdef A_COLOR
-#define A_ATTR  (A_ATTRIBUTES ^ A_COLOR)  /* A_BLINK, A_REVERSE, A_BOLD */
-#else
-#define A_ATTR  (A_ATTRIBUTES)            /* standard UNIX attributes */
-#endif
-
-#define MAXSTRLEN  256
-#define KEY_ESC    0x1b     /* Escape */
-
-typedef void (*FUNC)(void);
-
-typedef struct 
-{
-    char *name; /* item label */
-    FUNC  func; /* (pointer to) function */
-    char *desc; /* function description */
-} menu;
-
-/* ANSI C function prototypes: */
-
-void    clsbody(void);
-int     bodylen(void);
-WINDOW *bodywin(void);
-
-void    rmerror(void);
-void    rmstatus(void);
-
-void    titlemsg(char *msg);
-void    bodymsg(char *msg);
-void    errormsg(char *msg);
-void    statusmsg(char *msg);
-
-bool    keypressed(void);
-int     getkey(void);
-int     waitforkey(void);
-
-void    DoExit(void);
-void    startmenu(menu *mp, char *title);
-void    domenu(menu *mp);
-
-int     weditstr(WINDOW *win, char *buf, int field);
-WINDOW *winputbox(WINDOW *win, int nlines, int ncols);
-int     getstrings(char *desc[], char *buf[], int field);
-
-#define editstr(s,f)           (weditstr(stdscr,s,f))
-#define mveditstr(y,x,s,f)     (move(y,x)==ERR?ERR:editstr(s,f))
-#define mvweditstr(w,y,x,s,f)  (wmove(w,y,x)==ERR?ERR:weditstr(w,s,f))
-
-#define inputbox(l,c)          (winputbox(stdscr,l,c))
-#define mvinputbox(y,x,l,c)    (move(y,x)==ERR?w:inputbox(l,c))
-#define mvwinputbox(w,y,x,l,c) (wmove(w,y,x)==ERR?w:winputbox(w,l,c))
-
-#endif
diff --git a/src/other/PDCurses/demos/tuidemo.c b/src/other/PDCurses/demos/tuidemo.c
deleted file mode 100644
index a22d2a4..0000000
--- a/src/other/PDCurses/demos/tuidemo.c
+++ /dev/null
@@ -1,233 +0,0 @@
-/*
- * $Id: tuidemo.c,v 1.22 2008/07/14 12:35:23 wmcbrine Exp $
- *
- * Author : P.J. Kunst <kunst at prl.philips.nl>
- * Date   : 25-02-93
- *
- * Purpose: This program demonstrates the use of the 'curses' library
- *          for the creation of (simple) menu-operated programs.
- *          In the PDCurses version, use is made of colors for the
- *          highlighting of subwindows (title bar, status bar etc).
- *
- * Acknowledgement: some ideas were borrowed from Mark Hessling's
- *                  version of the 'testcurs' program.
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <locale.h>
-#include "tui.h"
-
-/* change this if source at other location */
-
-#ifdef XCURSES
-# define FNAME  "../demos/tui.c"
-#else
-# define FNAME  "..\\demos\\tui.c"
-#endif
-
-/**************************** strings entry box ***************************/
-
-void address(void)
-{
-    char *fieldname[6] = 
-    {
-        "Name", "Street", "City", "State", "Country", (char *)0
-    };
-
-    char *fieldbuf[5];
-    WINDOW *wbody = bodywin();
-    int i, field = 50;
-
-    for (i = 0; i < 5; i++)
-        fieldbuf[i] = calloc(1, field + 1);
-
-    if (getstrings(fieldname, fieldbuf, field) != KEY_ESC)
-    {
-        for (i = 0; fieldname[i]; i++)
-            wprintw(wbody, "%10s : %s\n",
-                fieldname[i], fieldbuf[i]);
-
-        wrefresh(wbody);
-    }
-
-    for (i = 0; i < 5; i++)
-        free(fieldbuf[i]);
-}
-
-/**************************** string entry box ****************************/
-
-char *getfname(char *desc, char *fname, int field)
-{
-    char *fieldname[2];
-    char *fieldbuf[1];
-
-    fieldname[0] = desc;
-    fieldname[1] = 0;
-    fieldbuf[0] = fname;
-
-    return (getstrings(fieldname, fieldbuf, field) == KEY_ESC) ? NULL : fname;
-}
-
-/**************************** a very simple file browser ******************/
-
-void showfile(char *fname)
-{
-    int i, bh = bodylen();
-    FILE *fp;
-    char buf[MAXSTRLEN];
-    bool ateof = FALSE;
-
-    statusmsg("FileBrowser: Hit key to continue, Q to quit");
-
-    if ((fp = fopen(fname, "r")) != NULL)   /* file available? */
-    {
-        while (!ateof)
-        {
-            clsbody();
-
-            for (i = 0; i < bh - 1 && !ateof; i++)
-            {
-                buf[0] = '\0';
-                fgets(buf, MAXSTRLEN, fp);
-
-                if (strlen(buf))
-                    bodymsg(buf);
-                else
-                    ateof = TRUE;
-            }
-
-            switch (waitforkey())
-            {
-            case 'Q':
-            case 'q':
-            case 0x1b:
-                ateof = TRUE;
-            }
-        }
-
-        fclose(fp);
-    }
-    else
-    {
-        sprintf(buf, "ERROR: file '%s' not found", fname);
-        errormsg(buf);
-    }
-}
-
-/***************************** forward declarations ***********************/
-
-void sub0(void), sub1(void), sub2(void), sub3(void);
-void func1(void), func2(void);
-void subfunc1(void), subfunc2(void);
-void subsub(void);
-
-/***************************** menus initialization ***********************/
-
-menu MainMenu[] =
-{
-    { "Asub", sub0, "Go inside first submenu" },
-    { "Bsub", sub1, "Go inside second submenu" },
-    { "Csub", sub2, "Go inside third submenu" },
-    { "Dsub", sub3, "Go inside fourth submenu" },
-    { "", (FUNC)0, "" }   /* always add this as the last item! */
-};
-
-menu SubMenu0[] =
-{
-    { "Exit", DoExit, "Terminate program" },
-    { "", (FUNC)0, "" }
-};
-
-menu SubMenu1[] =
-{
-    { "OneBeep", func1, "Sound one beep" },
-    { "TwoBeeps", func2, "Sound two beeps" },
-    { "", (FUNC)0, "" }
-};
-
-menu SubMenu2[] =
-{
-    { "Browse", subfunc1, "Source file lister" },
-    { "Input", subfunc2, "Interactive file lister" },
-    { "Address", address, "Get address data" },
-    { "", (FUNC)0, "" }
-};
-
-menu SubMenu3[] =
-{
-    { "SubSub", subsub, "Go inside sub-submenu" },
-    { "", (FUNC)0, "" }
-};
-
-/***************************** main menu functions ************************/
-
-void sub0(void)
-{
-    domenu(SubMenu0);
-}
-
-void sub1(void)
-{
-    domenu(SubMenu1);
-}
-
-void sub2(void)
-{
-    domenu(SubMenu2);
-}
-
-void sub3(void)
-{
-    domenu(SubMenu3);
-}
-
-/***************************** submenu1 functions *************************/
-
-void func1(void)
-{
-    beep();
-    bodymsg("One beep! ");
-}
-
-void func2(void)
-{
-    beep();
-    bodymsg("Two beeps! ");
-    beep();
-}
-
-/***************************** submenu2 functions *************************/
-
-void subfunc1(void)
-{
-    showfile(FNAME);
-}
-
-void subfunc2(void)
-{
-    char fname[MAXSTRLEN];
-
-    strcpy(fname, FNAME);
-    if (getfname ("File to browse:", fname, 50))
-        showfile(fname);
-}
-
-/***************************** submenu3 functions *************************/
-
-void subsub(void)
-{
-    domenu(SubMenu2);
-}
-
-/***************************** start main menu  ***************************/
-
-int main(int argc, char **argv)
-{
-    setlocale(LC_ALL, "");
-
-    startmenu(MainMenu, "TUI - 'textual user interface' demonstration program");
-
-    return 0;
-}
diff --git a/src/other/PDCurses/demos/worm.c b/src/other/PDCurses/demos/worm.c
deleted file mode 100644
index 5a823f9..0000000
--- a/src/other/PDCurses/demos/worm.c
+++ /dev/null
@@ -1,434 +0,0 @@
-/****************************************************************************
- * Copyright (c) 2005 Free Software Foundation, Inc.                        *
- *                                                                          *
- * Permission is hereby granted, free of charge, to any person obtaining a  *
- * copy of this software and associated documentation files (the            *
- * "Software"), to deal in the Software without restriction, including      *
- * without limitation the rights to use, copy, modify, merge, publish,      *
- * distribute, distribute with modifications, sublicense, and/or sell       *
- * copies of the Software, and to permit persons to whom the Software is    *
- * furnished to do so, subject to the following conditions:                 *
- *                                                                          *
- * The above copyright notice and this permission notice shall be included  *
- * in all copies or substantial portions of the Software.                   *
- *                                                                          *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
- * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
- * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
- * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
- * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
- *                                                                          *
- * Except as contained in this notice, the name(s) of the above copyright   *
- * holders shall not be used in advertising or otherwise to promote the     *
- * sale, use or other dealings in this Software without prior written       *
- * authorization.                                                           *
- ****************************************************************************/
-
-/*
-
-         @@@        @@@    @@@@@@@@@@     @@@@@@@@@@@    @@@@@@@@@@@@
-         @@@        @@@   @@@@@@@@@@@@    @@@@@@@@@@@@   @@@@@@@@@@@@@
-         @@@        @@@  @@@@      @@@@   @@@@           @@@@ @@@  @@@@
-         @@@   @@   @@@  @@@        @@@   @@@            @@@  @@@   @@@
-         @@@  @@@@  @@@  @@@        @@@   @@@            @@@  @@@   @@@
-         @@@@ @@@@ @@@@  @@@        @@@   @@@            @@@  @@@   @@@
-          @@@@@@@@@@@@   @@@@      @@@@   @@@            @@@  @@@   @@@
-           @@@@  @@@@     @@@@@@@@@@@@    @@@            @@@  @@@   @@@
-            @@    @@       @@@@@@@@@@     @@@            @@@  @@@   @@@
-
-                                 Eric P. Scott
-                          Caltech High Energy Physics
-                                 October, 1980
-
-                           Color by Eric S. Raymond
-                                  July, 1995
-
-Options:
-        -f                      fill screen with copies of 'WORM' at start.
-        -l <n>                  set worm length
-        -n <n>                  set number of worms
-        -t                      make worms leave droppings
-
-  $Id: worm.c,v 1.16 2008/07/13 16:08:17 wmcbrine Exp $
-*/
-
-#include <curses.h>
-#include <stdlib.h>
-#include <time.h>
-
-#define FLAVORS 7
-
-static chtype flavor[FLAVORS] =
-{
-    'O', '*', '#', '$', '%', '0', '@'
-};
-
-static const short xinc[] =
-{
-    1, 1, 1, 0, -1, -1, -1, 0
-},
-yinc[] =
-{
-    -1, 0, 1, 1, 1, 0, -1, -1
-};
-
-static struct worm
-{
-    int orientation, head;
-    short *xpos, *ypos;
-} worm[40];
-
-static const char *field;
-static int length = 16, number = 3;
-static chtype trail = ' ';
-
-static const struct options
-{
-    int nopts;
-    int opts[3];
-} normal[8] =
-{
-    { 3, { 7, 0, 1 } }, { 3, { 0, 1, 2 } }, { 3, { 1, 2, 3 } },
-    { 3, { 2, 3, 4 } }, { 3, { 3, 4, 5 } }, { 3, { 4, 5, 6 } },
-    { 3, { 5, 6, 7 } }, { 3, { 6, 7, 0 } }
-},
-upper[8] =
-{
-    { 1, { 1, 0, 0 } }, { 2, { 1, 2, 0 } }, { 0, { 0, 0, 0 } },
-    { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } }, { 2, { 4, 5, 0 } },
-    { 1, { 5, 0, 0 } }, { 2, { 1, 5, 0 } }
-},
-left[8] =
-{
-    { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } },
-    { 2, { 2, 3, 0 } }, { 1, { 3, 0, 0 } }, { 2, { 3, 7, 0 } },
-    { 1, { 7, 0, 0 } }, { 2, { 7, 0, 0 } }
-},
-right[8] =
-{
-    { 1, { 7, 0, 0 } }, { 2, { 3, 7, 0 } }, { 1, { 3, 0, 0 } },
-    { 2, { 3, 4, 0 } }, { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } },
-    { 0, { 0, 0, 0 } }, { 2, { 6, 7, 0 } }
-},
-lower[8] =
-{
-    { 0, { 0, 0, 0 } }, { 2, { 0, 1, 0 } }, { 1, { 1, 0, 0 } },
-    { 2, { 1, 5, 0 } }, { 1, { 5, 0, 0 } }, { 2, { 5, 6, 0 } },
-    { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } }
-},
-upleft[8] =
-{
-    { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } },
-    { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } }, { 1, { 3, 0, 0 } },
-    { 2, { 1, 3, 0 } }, { 1, { 1, 0, 0 } }
-},
-upright[8] =
-{
-    { 2, { 3, 5, 0 } }, { 1, { 3, 0, 0 } }, { 0, { 0, 0, 0 } },
-    { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } },
-    { 0, { 0, 0, 0 } }, { 1, { 5, 0, 0 } }
-},
-lowleft[8] =
-{
-    { 3, { 7, 0, 1 } }, { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } },
-    { 1, { 1, 0, 0 } }, { 2, { 1, 7, 0 } }, { 1, { 7, 0, 0 } },
-    { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } }
-},
-lowright[8] =
-{
-    { 0, { 0, 0, 0 } }, { 1, { 7, 0, 0 } }, { 2, { 5, 7, 0 } },
-    { 1, { 5, 0, 0 } }, { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } },
-    { 0, { 0, 0, 0 } }, { 0, { 0, 0, 0 } }
-};
-
-static void cleanup(void)
-{
-    standend();
-    refresh();
-    curs_set(1);
-    endwin();
-}
-
-int main(int argc, char *argv[])
-{
-    const struct options *op;
-    struct worm *w;
-    short **ref, *ip;
-    int x, y, n, h, last, bottom, seed;
-
-    for (x = 1; x < argc; x++)
-    {
-        char *p = argv[x];
-
-        if (*p == '-')
-            p++;
-
-        switch (*p)
-        {
-        case 'f':
-            field = "WORM";
-            break;
-        case 'l':
-            if (++x == argc)
-                goto usage;
-
-            if ((length = atoi(argv[x])) < 2 || length > 1024)
-            {
-                fprintf(stderr, "%s: Invalid length\n", *argv);
-                return EXIT_FAILURE;
-            }
-
-            break;
-        case 'n':
-            if (++x == argc)
-                goto usage;
-
-            if ((number = atoi(argv[x])) < 1 || number > 40)
-            {
-                fprintf(stderr, "%s: Invalid number of worms\n", *argv);
-                return EXIT_FAILURE;
-            }
-
-            break;
-        case 't':
-            trail = '.';
-            break;
-        default:
-              usage:
-            fprintf(stderr, "usage: %s [-field] [-length #] "
-                            "[-number #] [-trail]\n", *argv);
-            return EXIT_FAILURE;
-        }
-    }
-
-#ifdef XCURSES
-    Xinitscr(argc, argv);
-#else
-    initscr();
-#endif
-    seed = time((time_t *)0);
-    srand(seed);
-
-    noecho();
-    cbreak();
-    nonl();
-    keypad(stdscr, TRUE);
-
-    curs_set(0);
-
-    bottom = LINES - 1;
-    last = COLS - 1;
-
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        int bg = COLOR_BLACK;
-        start_color();
-
-# if defined(NCURSES_VERSION) || (defined(PDC_BUILD) && PDC_BUILD > 3000)
-        if (use_default_colors() == OK)
-            bg = -1;
-# endif
-
-# define SET_COLOR(num, fg) \
-        init_pair(num + 1, fg, bg); \
-        flavor[num] |= COLOR_PAIR(num + 1) | A_BOLD
-
-        SET_COLOR(0, COLOR_GREEN);
-        SET_COLOR(1, COLOR_RED);
-        SET_COLOR(2, COLOR_CYAN);
-        SET_COLOR(3, COLOR_WHITE);
-        SET_COLOR(4, COLOR_MAGENTA);
-        SET_COLOR(5, COLOR_BLUE);
-        SET_COLOR(6, COLOR_YELLOW);
-    }
-#endif
-
-    ref = malloc(sizeof(short *) * LINES);
-
-    for (y = 0; y < LINES; y++)
-    {
-        ref[y] = malloc(sizeof(short) * COLS);
-
-        for (x = 0; x < COLS; x++)
-            ref[y][x] = 0;
-    }
-
-#ifdef BADCORNER
-    /* if addressing the lower right corner doesn't work in your curses */
-
-    ref[bottom][last] = 1;
-#endif
-
-    for (n = number, w = &worm[0]; --n >= 0; w++)
-    {
-        w->orientation = w->head = 0;
-
-        if ((ip = malloc(sizeof(short) * (length + 1))) == NULL)
-        {
-            fprintf(stderr, "%s: out of memory\n", *argv);
-            return EXIT_FAILURE;
-        }
-
-        w->xpos = ip;
-
-        for (x = length; --x >= 0;)
-            *ip++ = -1;
-
-        if ((ip = malloc(sizeof(short) * (length + 1))) == NULL)
-        {
-            fprintf(stderr, "%s: out of memory\n", *argv);
-            return EXIT_FAILURE;
-        }
-
-        w->ypos = ip;
-
-        for (y = length; --y >= 0;)
-            *ip++ = -1;
-    }
-
-    if (field)
-    {
-        const char *p = field;
-
-        for (y = bottom; --y >= 0;)
-            for (x = COLS; --x >= 0;)
-            {
-                addch((chtype) (*p++));
-
-                if (!*p)
-                    p = field;
-            }
-    }
-
-    napms(12);
-    refresh();
-    nodelay(stdscr, TRUE);
-
-    for (;;)
-    {
-        int ch;
-
-        if ((ch = getch()) > 0)
-        {
-#ifdef KEY_RESIZE
-            if (ch == KEY_RESIZE)
-            {
-# ifdef PDCURSES
-                resize_term(0, 0);
-                erase();
-# endif
-                if (last != COLS - 1)
-                {
-                    for (y = 0; y <= bottom; y++)
-                    {
-                        ref[y] = realloc(ref[y], sizeof(short) * COLS);
-
-                        for (x = last + 1; x < COLS; x++)
-                            ref[y][x] = 0;
-                    }
-
-                    last = COLS - 1;
-                }
-
-                if (bottom != LINES - 1)
-                {
-                    for (y = LINES; y <= bottom; y++)
-                        free(ref[y]);
-
-                    ref = realloc(ref, sizeof(short *) * LINES);
-
-                    for (y = bottom + 1; y < LINES; y++)
-                    {
-                        ref[y] = malloc(sizeof(short) * COLS);
-
-                        for (x = 0; x < COLS; x++)
-                            ref[y][x] = 0;
-                    }
-
-                    bottom = LINES - 1;
-                }
-            }
-
-#endif /* KEY_RESIZE */
-
-            /* Make it simple to put this into single-step mode,
-               or resume normal operation - T. Dickey */
-
-            if (ch == 'q')
-            {
-                cleanup();
-                return EXIT_SUCCESS;
-            }
-            else if (ch == 's')
-                nodelay(stdscr, FALSE);
-            else if (ch == ' ')
-                nodelay(stdscr, TRUE);
-        }
-
-        for (n = 0, w = &worm[0]; n < number; n++, w++)
-        {
-            if ((x = w->xpos[h = w->head]) < 0)
-            {
-                move(y = w->ypos[h] = bottom, x = w->xpos[h] = 0);
-                addch(flavor[n % FLAVORS]);
-                ref[y][x]++;
-            }
-            else
-                y = w->ypos[h];
-
-            if (x > last)
-                x = last;
-
-            if (y > bottom)
-                y = bottom;
-
-            if (++h == length)
-                h = 0;
-
-            if (w->xpos[w->head = h] >= 0)
-            {
-                int x1 = w->xpos[h];
-                int y1 = w->ypos[h];
-
-                if (y1 < LINES && x1 < COLS && --ref[y1][x1] == 0)
-                {
-                    move(y1, x1);
-                    addch(trail);
-                }
-            }
-
-            op = &(x == 0 ? (y == 0 ? upleft :
-                  (y == bottom ? lowleft : left)) :
-                  (x == last ? (y == 0 ? upright :
-                  (y == bottom ? lowright : right)) :
-                  (y == 0 ? upper :
-                  (y == bottom ? lower : normal))))
-                  [w->orientation];
-
-            switch (op->nopts)
-            {
-            case 0:
-                cleanup();
-                return EXIT_SUCCESS;
-            case 1:
-                w->orientation = op->opts[0];
-                break;
-            default:
-                w->orientation = op->opts[rand() % op->nopts];
-            }
-
-            move(y += yinc[w->orientation], x += xinc[w->orientation]);
-
-            if (y < 0)
-                y = 0;
-
-            addch(flavor[n % FLAVORS]);
-            ref[w->ypos[h] = y][w->xpos[h] = x]++;
-        }
-        napms(12);
-        refresh();
-    }
-}
diff --git a/src/other/PDCurses/demos/xmas.c b/src/other/PDCurses/demos/xmas.c
deleted file mode 100644
index 706858a..0000000
--- a/src/other/PDCurses/demos/xmas.c
+++ /dev/null
@@ -1,957 +0,0 @@
-/******************************************************************************/
-/* asciixmas                                                                  */
-/* December 1989             Larry Bartz           Indianapolis, IN           */
-/*                                                                            */
-/*                                                                            */
-/* I'm dreaming of an ascii character-based monochrome Christmas,             */
-/* Just like the one's I used to know!                                        */
-/* Via a full duplex communications channel,                                  */
-/* At 9600 bits per second,                                                   */
-/* Even though it's kinda slow.                                               */
-/*                                                                            */
-/* I'm dreaming of an ascii character-based monochrome Christmas,             */
-/* With ev'ry C program I write!                                              */
-/* May your screen be merry and bright!                                       */
-/* And may all your Christmases be amber or green,                            */
-/* (for reduced eyestrain and improved visibility)!                           */
-/*                                                                            */
-/*                                                                            */
-/*                                                                            */
-/* IMPLEMENTATION                                                             */
-/*                                                                            */
-/* Feel free to modify the defined string FROMWHO to reflect you, your        */
-/* organization, your site, whatever.                                         */
-/*                                                                            */
-/* This looks a lot better if you can turn off your cursor before execution.  */
-/* The cursor is distracting but it doesn't really ruin the show.             */
-/*                                                                            */
-/* At our site, we invoke this for our users just after login and the         */
-/* determination of terminal type.                                            */
-/*                                                                            */
-/*                                                                            */
-/* PORTABILITY                                                                */
-/*                                                                            */
-/* I wrote this using only the very simplest curses functions so that it      */
-/* might be the most portable. I was personally able to test on five          */
-/* different cpu/UNIX combinations.                                           */
-/*                                                                            */
-/*                                                                            */
-/* COMPILE                                                                    */
-/*                                                                            */
-/* usually this:                                                              */
-/*                                                                            */
-/* cc -O xmas.c -lcurses -o xmas -s                                           */
-/*                                                                            */
-/******************************************************************************/
-
-/* $Id: xmas.c,v 1.29 2008/07/13 16:08:17 wmcbrine Exp $ */
-
-#include <curses.h>
-#include <signal.h>
-
-void lil(WINDOW *);
-void midtop(WINDOW *);
-void bigtop(WINDOW *);
-void bigface(WINDOW *, chtype);
-void legs1(WINDOW *);
-void legs2(WINDOW *);
-void legs3(WINDOW *);
-void legs4(WINDOW *);
-void initdeer(void);
-void boxit(void);
-void seas(void);
-void greet(void);
-void fromwho(void);
-void del_msg(void);
-void tree(void);
-void balls(void);
-void star(void);
-void strng1(void);
-void strng2(void);
-void strng3(void);
-void strng4(void);
-void strng5(void);
-void blinkit(void);
-void reindeer(void);
-
-#define FROMWHO "From Larry Bartz, Mark Hessling and William McBrine"
-
-int y_pos, x_pos;
-
-WINDOW *treescrn, *treescrn2, *treescrn3, *treescrn4, *treescrn5,
-       *treescrn6, *treescrn7, *treescrn8, *dotdeer0, *stardeer0,
-       *lildeer0, *lildeer1, *lildeer2, *lildeer3, *middeer0,
-       *middeer1, *middeer2, *middeer3, *bigdeer0, *bigdeer1,
-       *bigdeer2, *bigdeer3, *bigdeer4, *lookdeer0, *lookdeer1,
-       *lookdeer2, *lookdeer3, *lookdeer4, *w_holiday, *w_del_msg;
-
-int main(int argc, char **argv)
-{
-    int loopy;
-
-#ifdef XCURSES
-    Xinitscr(argc, argv);
-#else
-    initscr();
-#endif
-    nodelay(stdscr, TRUE);
-    noecho();
-    nonl();
-    refresh();
-
-#ifdef A_COLOR
-    if (has_colors())
-        start_color();
-#endif
-    curs_set(0);
-
-    treescrn = newwin(16, 27, 3, 53);
-    treescrn2 = newwin(16, 27, 3, 53);
-    treescrn3 = newwin(16, 27, 3, 53);
-    treescrn4 = newwin(16, 27, 3, 53);
-    treescrn5 = newwin(16, 27, 3, 53);
-    treescrn6 = newwin(16, 27, 3, 53);
-    treescrn7 = newwin(16, 27, 3, 53);
-    treescrn8 = newwin(16, 27, 3, 53);
-
-    w_holiday = newwin(1, 26, 3, 27);
-
-    w_del_msg = newwin(1, 12, 23, 60);
-
-    mvwaddstr(w_holiday, 0, 0, "H A P P Y  H O L I D A Y S");
-
-    initdeer();
-
-    clear();
-    werase(treescrn);
-    touchwin(treescrn);
-    werase(treescrn2);
-    touchwin(treescrn2);
-    werase(treescrn8);
-    touchwin(treescrn8);
-    refresh();
-    napms(1000);
-
-    boxit();
-    del_msg();
-    napms(1000);
-
-    seas();
-    del_msg();
-    napms(1000);
-
-    greet();
-    del_msg();
-    napms(1000);
-
-    fromwho();
-    del_msg();
-    napms(1000);
-
-    tree();
-    napms(1000);
-
-    balls();
-    napms(1000);
-
-    star();
-    napms(1000);
-
-    strng1();
-    strng2();
-    strng3();
-    strng4();
-    strng5();
-
-    /* set up the windows for our blinking trees */
-    /* **************************************** */
-    /* treescrn3 */
-
-    overlay(treescrn, treescrn3);
-
-    /* balls */
-    mvwaddch(treescrn3, 4, 18, ' ');
-    mvwaddch(treescrn3, 7, 6, ' ');
-    mvwaddch(treescrn3, 8, 19, ' ');
-    mvwaddch(treescrn3, 11, 22, ' ');
-
-    /* star */
-    mvwaddch(treescrn3, 0, 12, '*');
-
-    /* strng1 */
-    mvwaddch(treescrn3, 3, 11, ' ');
-
-    /* strng2 */
-    mvwaddch(treescrn3, 5, 13, ' ');
-    mvwaddch(treescrn3, 6, 10, ' ');
-
-    /* strng3 */
-    mvwaddch(treescrn3, 7, 16, ' ');
-    mvwaddch(treescrn3, 7, 14, ' ');
-
-    /* strng4 */
-    mvwaddch(treescrn3, 10, 13, ' ');
-    mvwaddch(treescrn3, 10, 10, ' ');
-    mvwaddch(treescrn3, 11, 8, ' ');
-
-    /* strng5 */
-    mvwaddch(treescrn3, 11, 18, ' ');
-    mvwaddch(treescrn3, 12, 13, ' ');
-
-    /* treescrn4 */
-
-    overlay(treescrn, treescrn4);
-
-    /* balls */
-    mvwaddch(treescrn4, 3, 9, ' ');
-    mvwaddch(treescrn4, 4, 16, ' ');
-    mvwaddch(treescrn4, 7, 6, ' ');
-    mvwaddch(treescrn4, 8, 19, ' ');
-    mvwaddch(treescrn4, 11, 2, ' ');
-    mvwaddch(treescrn4, 12, 23, ' ');
-
-    /* star */
-    mvwaddch(treescrn4, 0, 12, '*' | A_STANDOUT);
-
-    /* strng1 */
-    mvwaddch(treescrn4, 3, 13, ' ');
-
-    /* strng2 */
-
-    /* strng3 */
-    mvwaddch(treescrn4, 7, 15, ' ');
-    mvwaddch(treescrn4, 8, 11, ' ');
-
-    /* strng4 */
-    mvwaddch(treescrn4, 9, 16, ' ');
-    mvwaddch(treescrn4, 10, 12, ' ');
-    mvwaddch(treescrn4, 11, 8, ' ');
-
-    /* strng5 */
-    mvwaddch(treescrn4, 11, 18, ' ');
-    mvwaddch(treescrn4, 12, 14, ' ');
-
-    /* treescrn5 */
-
-    overlay(treescrn, treescrn5);
-
-    /* balls */
-    mvwaddch(treescrn5, 3, 15, ' ');
-    mvwaddch(treescrn5, 10, 20, ' ');
-    mvwaddch(treescrn5, 12, 1, ' ');
-
-    /* star */
-    mvwaddch(treescrn5, 0, 12, '*');
-
-    /* strng1 */
-    mvwaddch(treescrn5, 3, 11, ' ');
-
-    /* strng2 */
-    mvwaddch(treescrn5, 5, 12, ' ');
-
-    /* strng3 */
-    mvwaddch(treescrn5, 7, 14, ' ');
-    mvwaddch(treescrn5, 8, 10, ' ');
-
-    /* strng4 */
-    mvwaddch(treescrn5, 9, 15, ' ');
-    mvwaddch(treescrn5, 10, 11, ' ');
-    mvwaddch(treescrn5, 11, 7, ' ');
-
-    /* strng5 */
-    mvwaddch(treescrn5, 11, 17, ' ');
-    mvwaddch(treescrn5, 12, 13, ' ');
-
-    /* treescrn6 */
-
-    overlay(treescrn, treescrn6);
-
-    /* balls */
-    mvwaddch(treescrn6, 6, 7, ' ');
-    mvwaddch(treescrn6, 7, 18, ' ');
-    mvwaddch(treescrn6, 10, 4, ' ');
-    mvwaddch(treescrn6, 11, 23, ' ');
-
-    /* star */
-    mvwaddch(treescrn6, 0, 12, '*' | A_STANDOUT);
-
-    /* strng1 */
-
-    /* strng2 */
-    mvwaddch(treescrn6, 5, 11, ' ');
-
-    /* strng3 */
-    mvwaddch(treescrn6, 7, 13, ' ');
-    mvwaddch(treescrn6, 8, 9, ' ');
-
-    /* strng4 */
-    mvwaddch(treescrn6, 9, 14, ' ');
-    mvwaddch(treescrn6, 10, 10, ' ');
-    mvwaddch(treescrn6, 11, 6, ' ');
-
-    /* strng5 */
-    mvwaddch(treescrn6, 11, 16, ' ');
-    mvwaddch(treescrn6, 12, 12, ' ');
-
-    /* treescrn7 */
-
-    overlay(treescrn, treescrn7);
-
-    /* balls */
-    mvwaddch(treescrn7, 3, 15, ' ');
-    mvwaddch(treescrn7, 6, 7, ' ');
-    mvwaddch(treescrn7, 7, 18, ' ');
-    mvwaddch(treescrn7, 10, 4, ' ');
-    mvwaddch(treescrn7, 11, 22, ' ');
-
-    /* star */
-    mvwaddch(treescrn7, 0, 12, '*');
-
-    /* strng1 */
-    mvwaddch(treescrn7, 3, 12, ' ');
-
-    /* strng2 */
-    mvwaddch(treescrn7, 5, 13, ' ');
-    mvwaddch(treescrn7, 6, 9, ' ');
-
-    /* strng3 */
-    mvwaddch(treescrn7, 7, 15, ' ');
-    mvwaddch(treescrn7, 8, 11, ' ');
-
-    /* strng4 */
-    mvwaddch(treescrn7, 9, 16, ' ');
-    mvwaddch(treescrn7, 10, 12, ' ');
-    mvwaddch(treescrn7, 11, 8, ' ');
-
-    /* strng5 */
-    mvwaddch(treescrn7, 11, 18, ' ');
-    mvwaddch(treescrn7, 12, 14, ' ');
-
-    napms(1000);
-    reindeer();
-
-    touchwin(w_holiday);
-    wrefresh(w_holiday);
-    wrefresh(w_del_msg);
-
-    napms(1000);
-
-    for (loopy = 0; loopy < 50; loopy++)
-        blinkit();
-
-    clear();
-    refresh();
-    endwin();
-
-    return 0;
-}
-
-void lil(WINDOW *win)
-{
-    mvwaddch(win, 0, 0, (chtype) 'V');
-    mvwaddch(win, 1, 0, (chtype) '@');
-    mvwaddch(win, 1, 3, (chtype) '~');
-}
-
-void midtop(WINDOW *win)
-{
-    mvwaddstr(win, 0, 2, "yy");
-    mvwaddstr(win, 1, 2, "0(=)~");
-}
-
-void bigtop(WINDOW *win)
-{
-    mvwaddstr(win, 0, 17, "\\/");
-    mvwaddstr(win, 0, 20, "\\/");
-    mvwaddch(win, 1, 18, (chtype) '\\');
-    mvwaddch(win, 1, 20, (chtype) '/');
-    mvwaddstr(win, 2, 19, "|_");
-    mvwaddstr(win, 3, 18, "/^0\\");
-    mvwaddstr(win, 4, 17, "//\\");
-    mvwaddch(win, 4, 22, (chtype) '\\');
-    mvwaddstr(win, 5, 7, "^~~~~~~~~//  ~~U");
-}
-
-void bigface(WINDOW *win, chtype noseattr)
-{
-    mvwaddstr(win, 0, 16, "\\/     \\/");
-    mvwaddstr(win, 1, 17, "\\Y/ \\Y/");
-    mvwaddstr(win, 2, 19, "\\=/");
-    mvwaddstr(win, 3, 17, "^\\o o/^");
-    mvwaddstr(win, 4, 17, "//( )");
-    mvwaddstr(win, 5, 7, "^~~~~~~~~// \\");
-    waddch(win, 'O' | noseattr);
-    waddstr(win, "/");
-}
-
-void legs1(WINDOW *win)
-{
-    mvwaddstr(win, 6, 7, "( \\_____( /");
-    mvwaddstr(win, 7, 8, "( )    /");
-    mvwaddstr(win, 8, 9, "\\\\   /");
-    mvwaddstr(win, 9, 11, "\\>/>");
-}
-
-void legs2(WINDOW *win)
-{
-    mvwaddstr(win, 6, 7, "(( )____( /");
-    mvwaddstr(win, 7, 7, "( /      |");
-    mvwaddstr(win, 8, 8, "\\/      |");
-    mvwaddstr(win, 9, 9, "|>     |>");
-}
-
-void legs3(WINDOW *win)
-{
-    mvwaddstr(win, 6, 6, "( ()_____( /");
-    mvwaddstr(win, 7, 6, "/ /       /");
-    mvwaddstr(win, 8, 5, "|/          \\");
-    mvwaddstr(win, 9, 5, "/>           \\>");
-}
-
-void legs4(WINDOW *win)
-{
-    mvwaddstr(win, 6, 6, "( )______( /");
-    mvwaddstr(win, 7, 5, "(/          \\");
-    mvwaddstr(win, 8, 0, "v___=             ----^");
-}
-
-void initdeer(void)
-{
-    chtype noseattr;
-
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        init_pair(31, COLOR_RED, COLOR_BLACK);
-        noseattr = COLOR_PAIR(31);
-    }
-    else
-#endif
-        noseattr = A_NORMAL;
-
-    /* set up the windows for our various reindeer */
-
-    dotdeer0 = newwin(3, 71, 0, 8);
-    stardeer0 = newwin(4, 56, 0, 8);
-    lildeer0 = newwin(7, 54, 0, 8);
-    middeer0 = newwin(15, 42, 0, 8);
-    bigdeer0 = newwin(10, 23, 0, 0);
-    lookdeer0 = newwin(10, 25, 0, 0);
-
-    /* lildeer1 */
-    lildeer1 = newwin(2, 4, 0, 0);
-    lil(lildeer1);
-    mvwaddstr(lildeer1, 1, 1, "<>");
-
-    /* lildeer2 */
-    lildeer2 = newwin(2, 4, 0, 0);
-    lil(lildeer2);
-    mvwaddstr(lildeer2, 1, 1, "||");
-
-    /* lildeer3 */
-    lildeer3 = newwin(2, 4, 0, 0);
-    lil(lildeer3);
-    mvwaddstr(lildeer3, 1, 1, "><");
-
-    /* middeer1 */
-    middeer1 = newwin(3, 7, 0, 0);
-    midtop(middeer1);
-    mvwaddstr(middeer1, 2, 3, "\\/");
-
-    /* middeer2 */
-    middeer2 = newwin(3, 7, 0, 0);
-    midtop(middeer2);
-    mvwaddch(middeer2, 2, 3, (chtype) '|');
-    mvwaddch(middeer2, 2, 5, (chtype) '|');
-
-    /* middeer3 */
-    middeer3 = newwin(3, 7, 0, 0);
-    midtop(middeer3);
-    mvwaddch(middeer3, 2, 2, (chtype) '/');
-    mvwaddch(middeer3, 2, 6, (chtype) '\\');
-
-    /* bigdeer1 */
-    bigdeer1 = newwin(10, 23, 0, 0);
-    bigtop(bigdeer1);
-    legs1(bigdeer1);
-
-    /* bigdeer2 */
-    bigdeer2 = newwin(10, 23, 0, 0);
-    bigtop(bigdeer2);
-    legs2(bigdeer2);
-
-    /* bigdeer3 */
-    bigdeer3 = newwin(10, 23, 0, 0);
-    bigtop(bigdeer3);
-    legs3(bigdeer3);
-
-    /* bigdeer4 */
-    bigdeer4 = newwin(10, 23, 0, 0);
-    bigtop(bigdeer4);
-    legs4(bigdeer4);
-
-    /* lookdeer1 */
-    lookdeer1 = newwin(10, 25, 0, 0);
-    bigface(lookdeer1, noseattr);
-    legs1(lookdeer1);
-
-    /* lookdeer2 */
-    lookdeer2 = newwin(10, 25, 0, 0);
-    bigface(lookdeer2, noseattr);
-    legs2(lookdeer2);
-
-    /* lookdeer3 */
-    lookdeer3 = newwin(10, 25, 0, 0);
-    bigface(lookdeer3, noseattr);
-    legs3(lookdeer3);
-
-    /* lookdeer4 */
-    lookdeer4 = newwin(10, 25, 0, 0);
-    bigface(lookdeer4, noseattr);
-    legs4(lookdeer4);
-}
-
-void boxit(void)
-{
-    int x;
-
-    for (x = 0; x < 20; ++x)
-        mvaddch(x, 7, '|');
-
-    for (x = 0; x < 80; ++x)
-    {
-        if (x > 7)
-            mvaddch(19, x, '_');
-
-        mvaddch(22, x, '_');
-    }
-}
-
-void seas(void)
-{
-    mvaddch(4, 1, 'S');
-    mvaddch(6, 1, 'E');
-    mvaddch(8, 1, 'A');
-    mvaddch(10, 1, 'S');
-    mvaddch(12, 1, 'O');
-    mvaddch(14, 1, 'N');
-    mvaddch(16, 1, '`');
-    mvaddch(18, 1, 'S');
-}
-
-void greet(void)
-{
-    mvaddch(3, 5, 'G');
-    mvaddch(5, 5, 'R');
-    mvaddch(7, 5, 'E');
-    mvaddch(9, 5, 'E');
-    mvaddch(11, 5, 'T');
-    mvaddch(13, 5, 'I');
-    mvaddch(15, 5, 'N');
-    mvaddch(17, 5, 'G');
-    mvaddch(19, 5, 'S');
-}
-
-void fromwho(void)
-{
-    mvaddstr(21, 13, FROMWHO);
-}
-
-void del_msg(void)
-{
-    refresh();
-}
-
-void tree(void)
-{
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        init_pair(30, COLOR_GREEN, COLOR_BLACK);
-        wattrset(treescrn, COLOR_PAIR(30));
-    }
-#endif
-    mvwaddch(treescrn, 1, 11, (chtype) '/');
-    mvwaddch(treescrn, 2, 11, (chtype) '/');
-    mvwaddch(treescrn, 3, 10, (chtype) '/');
-    mvwaddch(treescrn, 4, 9, (chtype) '/');
-    mvwaddch(treescrn, 5, 9, (chtype) '/');
-    mvwaddch(treescrn, 6, 8, (chtype) '/');
-    mvwaddch(treescrn, 7, 7, (chtype) '/');
-    mvwaddch(treescrn, 8, 6, (chtype) '/');
-    mvwaddch(treescrn, 9, 6, (chtype) '/');
-    mvwaddch(treescrn, 10, 5, (chtype) '/');
-    mvwaddch(treescrn, 11, 3, (chtype) '/');
-    mvwaddch(treescrn, 12, 2, (chtype) '/');
-
-    mvwaddch(treescrn, 1, 13, (chtype) '\\');
-    mvwaddch(treescrn, 2, 13, (chtype) '\\');
-    mvwaddch(treescrn, 3, 14, (chtype) '\\');
-    mvwaddch(treescrn, 4, 15, (chtype) '\\');
-    mvwaddch(treescrn, 5, 15, (chtype) '\\');
-    mvwaddch(treescrn, 6, 16, (chtype) '\\');
-    mvwaddch(treescrn, 7, 17, (chtype) '\\');
-    mvwaddch(treescrn, 8, 18, (chtype) '\\');
-    mvwaddch(treescrn, 9, 18, (chtype) '\\');
-    mvwaddch(treescrn, 10, 19, (chtype) '\\');
-    mvwaddch(treescrn, 11, 21, (chtype) '\\');
-    mvwaddch(treescrn, 12, 22, (chtype) '\\');
-
-    mvwaddch(treescrn, 4, 10, (chtype) '_');
-    mvwaddch(treescrn, 4, 14, (chtype) '_');
-    mvwaddch(treescrn, 8, 7, (chtype) '_');
-    mvwaddch(treescrn, 8, 17, (chtype) '_');
-
-    mvwaddstr(treescrn, 13, 0,
-          "//////////// \\\\\\\\\\\\\\\\\\\\\\\\");
-
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        init_pair(20, COLOR_YELLOW, COLOR_BLACK);
-        wattrset(treescrn, COLOR_PAIR(20));
-    }
-#endif
-    mvwaddstr(treescrn, 14, 11, "| |");
-    mvwaddstr(treescrn, 15, 11, "|_|");
-
-    wrefresh(treescrn);
-    wrefresh(w_del_msg);
-}
-
-void balls(void)
-{
-    chtype ball1, ball2, ball3, ball4, ball5, ball6;
-
-    overlay(treescrn, treescrn2);
-
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        init_pair(1, COLOR_BLUE, COLOR_BLACK);
-        init_pair(2, COLOR_RED, COLOR_BLACK);
-        init_pair(3, COLOR_MAGENTA, COLOR_BLACK);
-        init_pair(4, COLOR_CYAN, COLOR_BLACK);
-        init_pair(5, COLOR_YELLOW, COLOR_BLACK);
-        init_pair(6, COLOR_WHITE, COLOR_BLACK);
-        ball1 = COLOR_PAIR(1) | '@';
-        ball2 = COLOR_PAIR(2) | '@';
-        ball3 = COLOR_PAIR(3) | '@';
-        ball4 = COLOR_PAIR(4) | '@';
-        ball5 = COLOR_PAIR(5) | '@';
-        ball6 = COLOR_PAIR(6) | '@';
-    }
-    else
-#endif
-        ball1 = ball2 = ball3 = ball4 = ball5 = ball6 = '@';
-
-    mvwaddch(treescrn2, 3, 9, ball1);
-    mvwaddch(treescrn2, 3, 15, ball2);
-    mvwaddch(treescrn2, 4, 8, ball3);
-    mvwaddch(treescrn2, 4, 16, ball4);
-    mvwaddch(treescrn2, 5, 7, ball5);
-    mvwaddch(treescrn2, 5, 17, ball6);
-    mvwaddch(treescrn2, 7, 6, ball1 | A_BOLD);
-    mvwaddch(treescrn2, 7, 18, ball2 | A_BOLD);
-    mvwaddch(treescrn2, 8, 5, ball3 | A_BOLD);
-    mvwaddch(treescrn2, 8, 19, ball4 | A_BOLD);
-    mvwaddch(treescrn2, 10, 4, ball5 | A_BOLD);
-    mvwaddch(treescrn2, 10, 20, ball6 | A_BOLD);
-    mvwaddch(treescrn2, 11, 2, ball1);
-    mvwaddch(treescrn2, 11, 22, ball2);
-    mvwaddch(treescrn2, 12, 1, ball3);
-    mvwaddch(treescrn2, 12, 23, ball4);
-
-    wrefresh(treescrn2);
-    wrefresh(w_del_msg);
-}
-
-void star(void)
-{
-    mvwaddch(treescrn2, 0, 12, (chtype) '*' | A_STANDOUT);
-
-    wrefresh(treescrn2);
-    wrefresh(w_del_msg);
-}
-
-void strng1(void)
-{
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        init_pair(10, COLOR_YELLOW, COLOR_BLACK);
-        wattrset(treescrn2, COLOR_PAIR(10) | A_BOLD);
-    }
-#endif
-    mvwaddstr(treescrn2, 3, 11, ".:'");
-
-    wrefresh(treescrn2);
-    wrefresh(w_del_msg);
-}
-
-void strng2(void)
-{
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        init_pair(11, COLOR_RED, COLOR_BLACK);
-        wattrset(treescrn2, COLOR_PAIR(11) | A_BOLD);
-    }
-#endif
-    mvwaddstr(treescrn2, 5, 11, ",.:'");
-    mvwaddstr(treescrn2, 6, 9, ":'");
-
-    wrefresh(treescrn2);
-    wrefresh(w_del_msg);
-}
-
-void strng3(void)
-{
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        init_pair(12, COLOR_GREEN, COLOR_BLACK);
-        wattrset(treescrn2, COLOR_PAIR(12) | A_BOLD);
-    }
-#endif
-    mvwaddstr(treescrn2, 7, 13, ",.:'");
-    mvwaddstr(treescrn2, 8, 9, ",.:'");
-
-    wrefresh(treescrn2);
-    wrefresh(w_del_msg);
-}
-
-void strng4(void)
-{
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        init_pair(13, COLOR_WHITE, COLOR_BLACK);
-        wattrset(treescrn2, COLOR_PAIR(13) | A_BOLD);
-    }
-#endif
-    mvwaddstr(treescrn2, 9, 14, ",.:'");
-    mvwaddstr(treescrn2, 10, 10, ",.:'");
-    mvwaddstr(treescrn2, 11, 6, ",.:'");
-    mvwaddch(treescrn2, 12, 5, (chtype) '\'');
-
-    wrefresh(treescrn2);
-    wrefresh(w_del_msg);
-}
-
-void strng5(void)
-{
-#ifdef A_COLOR
-    if (has_colors())
-    {
-        init_pair(14, COLOR_CYAN, COLOR_BLACK);
-        wattrset(treescrn2, COLOR_PAIR(14) | A_BOLD);
-    }
-#endif
-    mvwaddstr(treescrn2, 11, 16, ",.:'");
-    mvwaddstr(treescrn2, 12, 12, ",.:'");
-
-    /* save a fully lit tree */
-    overlay(treescrn2, treescrn);
-
-    wrefresh(treescrn2);
-    wrefresh(w_del_msg);
-}
-
-void blinkit(void)
-{
-    static int cycle;
-
-    if (cycle > 4)
-        cycle = 0;
-
-    touchwin(treescrn8);
-
-    switch (cycle)
-    {
-    case 0:
-        overlay(treescrn3, treescrn8);
-        break;
-
-    case 1:
-        overlay(treescrn4, treescrn8);
-        break;
-
-    case 2:
-        overlay(treescrn5, treescrn8);
-        break;
-
-    case 3:
-        overlay(treescrn6, treescrn8);
-        break;
-
-    case 4:
-        overlay(treescrn7, treescrn8);
-    }
-
-    wrefresh(treescrn8);
-    wrefresh(w_del_msg);
-
-    napms(50);
-    touchwin(treescrn8);
-
-    /*ALL ON************************************************** */
-
-    overlay(treescrn, treescrn8);
-    wrefresh(treescrn8);
-    wrefresh(w_del_msg);
-
-    ++cycle;
-}
-
-#define TSHOW(win, pause) touchwin(win); wrefresh(win); \
-              wrefresh(w_del_msg); napms(pause)
-
-#define SHOW(win, pause) mvwin(win, y_pos, x_pos); wrefresh(win); \
-             wrefresh(w_del_msg); napms(pause)
-
-void reindeer(void)
-{
-    int looper;
-
-    y_pos = 0;
-
-    for (x_pos = 70; x_pos > 62; x_pos--)
-    {
-        if (x_pos < 62)
-            y_pos = 1;
-
-        for (looper = 0; looper < 4; looper++)
-        {
-            mvwaddch(dotdeer0, y_pos, x_pos, (chtype) '.');
-            wrefresh(dotdeer0);
-            wrefresh(w_del_msg);
-            werase(dotdeer0);
-            wrefresh(dotdeer0);
-            wrefresh(w_del_msg);
-        }
-    }
-
-    y_pos = 2;
-
-    for (; x_pos > 50; x_pos--)
-    {
-        for (looper = 0; looper < 4; looper++)
-        {
-            if (x_pos < 56)
-            {
-                y_pos = 3;
-
-                mvwaddch(stardeer0, y_pos, x_pos, (chtype) '*');
-                wrefresh(stardeer0);
-                wrefresh(w_del_msg);
-                werase(stardeer0);
-                wrefresh(stardeer0);
-            }
-            else
-            {
-                mvwaddch(dotdeer0, y_pos, x_pos, (chtype) '*');
-                wrefresh(dotdeer0);
-                wrefresh(w_del_msg);
-                werase(dotdeer0);
-                wrefresh(dotdeer0);
-            }
-            wrefresh(w_del_msg);
-        }
-    }
-
-    x_pos = 58;
-
-    for (y_pos = 2; y_pos < 5; y_pos++)
-    {
-        TSHOW(lildeer0, 50);
-
-        for (looper = 0; looper < 4; looper++)
-        {
-            SHOW(lildeer3, 50);
-            SHOW(lildeer2, 50);
-            SHOW(lildeer1, 50);
-            SHOW(lildeer2, 50);
-            SHOW(lildeer3, 50);
-
-            TSHOW(lildeer0, 50);
-
-            x_pos -= 2;
-        }
-    }
-
-    x_pos = 35;
-
-    for (y_pos = 5; y_pos < 10; y_pos++)
-    {
-        touchwin(middeer0);
-        wrefresh(middeer0);
-        wrefresh(w_del_msg);
-
-        for (looper = 0; looper < 2; looper++)
-        {
-            SHOW(middeer3, 50);
-            SHOW(middeer2, 50);
-            SHOW(middeer1, 50);
-            SHOW(middeer2, 50);
-            SHOW(middeer3, 50);
-
-            TSHOW(middeer0, 50);
-
-            x_pos -= 3;
-        }
-    }
-
-    napms(2000);
-
-    y_pos = 1;
-
-    for (x_pos = 8; x_pos < 16; x_pos++)
-    {
-        SHOW(bigdeer4, 30);
-        SHOW(bigdeer3, 30);
-        SHOW(bigdeer2, 30);
-        SHOW(bigdeer1, 30);
-        SHOW(bigdeer2, 30);
-        SHOW(bigdeer3, 30);
-        SHOW(bigdeer4, 30);
-        SHOW(bigdeer0, 30);
-    }
-
-    --x_pos;
-
-    for (looper = 0; looper < 6; looper++)
-    {
-        SHOW(lookdeer4, 40);
-        SHOW(lookdeer3, 40);
-        SHOW(lookdeer2, 40);
-        SHOW(lookdeer1, 40);
-        SHOW(lookdeer2, 40);
-        SHOW(lookdeer3, 40);
-        SHOW(lookdeer4, 40);
-    }
-
-    SHOW(lookdeer0, 40);
-
-    for (; y_pos < 10; y_pos++)
-    {
-        for (looper = 0; looper < 2; looper++)
-        {
-            SHOW(bigdeer4, 30);
-            SHOW(bigdeer3, 30);
-            SHOW(bigdeer2, 30);
-            SHOW(bigdeer1, 30);
-            SHOW(bigdeer2, 30);
-            SHOW(bigdeer3, 30);
-            SHOW(bigdeer4, 30);
-        }
-
-        SHOW(bigdeer0, 30);
-    }
-
-    --y_pos;
-
-    mvwin(lookdeer3, y_pos, x_pos);
-    wrefresh(lookdeer3);
-    wrefresh(w_del_msg);
-}
diff --git a/src/other/PDCurses/doc/Makefile b/src/other/PDCurses/doc/Makefile
deleted file mode 100644
index 8b5f337..0000000
--- a/src/other/PDCurses/doc/Makefile
+++ /dev/null
@@ -1,37 +0,0 @@
-# Makefile for PDCurses manext program.
-
-all: manual
-
-manual: PDCurses.txt
-
-PDCurses.txt: manext
-	cat intro.txt > PDCurses.txt
-	echo PDCurses Definitions and Variables >> PDCurses.txt
-	echo ================================== >> PDCurses.txt
-	./manext ../curses.h >> PDCurses.txt
-	echo PDCurses Functions >> PDCurses.txt
-	echo ================== >> PDCurses.txt
-	./manext ../pdcurses/*.c >> PDCurses.txt
-	./manext ../x11/*.c >> PDCurses.txt
-	cat x11.txt >> PDCurses.txt
-	echo >> PDCurses.txt
-	echo >> PDCurses.txt
-	echo \
--------------------------------------------------------------------------- \
->> PDCurses.txt
-	echo >> PDCurses.txt
-	cat sdl.txt >> PDCurses.txt
-
-manext: manext.c
-
-install:
-	echo Does nothing at the moment
-
-clean:
-	-rm -rf *.o manext PDCurses.txt
-
-distclean: clean
-
-mostlyclean: clean
-
-realclean: distclean
diff --git a/src/other/PDCurses/doc/README b/src/other/PDCurses/doc/README
deleted file mode 100644
index 6f93a39..0000000
--- a/src/other/PDCurses/doc/README
+++ /dev/null
@@ -1,21 +0,0 @@
-PDCurses Documentation
-======================
-
-Some plain text documents to provide a basic overview of PDCurses and 
-details for specific platforms, along with a program to combine them 
-with the "man page" sections from the source code files, into 
-"PDCurses.txt".
-
-
-Building
---------
-
-. Type "make". ("make clean" to remove the built files.) A Unix-like 
-  environment is required for the Makefile. This is called automatically 
-  when doing a top-level make of the X11 port.
-
-
-Distribution Status
--------------------
-
-Public Domain, except for manext.c, which is GPL 2+.
diff --git a/src/other/PDCurses/doc/intro.txt b/src/other/PDCurses/doc/intro.txt
deleted file mode 100644
index a13cb7a..0000000
--- a/src/other/PDCurses/doc/intro.txt
+++ /dev/null
@@ -1,834 +0,0 @@
-PDCurses User's Guide
-=====================
-
-Curses Overview
----------------
-
-The X/Open Curses Interface Definition describes a set of C-Language
-functions that provide screen-handling and updating, which are
-collectively known as the curses library.
-
-The curses library permits manipulation of data structures called
-windows which may be thought of as two-dimensional arrays of
-characters representing all or part of a terminal's screen.  The
-windows are manipulated using a procedural interface described
-elsewhere.  The curses package maintains a record of what characters
-are on the screen.  At the most basic level, manipulation is done with
-the routines move() and addch() which are used to "move" the curses
-around and add characters to the default window, stdscr, which
-represents the whole screen.
-
-An application may use these routines to add data to the window in any
-convenient order.  Once all data have been added, the routine
-refresh() is called.  The package then determines what changes have
-been made which affect the screen.  The screen contents are then
-changed to reflect those characters now in the window, using a
-sequence of operations optimized for the type of terminal in use. 
-
-At a higher level routines combining the actions of move() and addch()
-are defined, as are routines to add whole strings and to perform
-format conversions in the manner of printf(). 
-
-Interfaces are also defined to erase the entire window and to specify
-the attributes of individual characters in the window.  Attributes
-such as inverse video, underline and blink can be used on a
-per-character basis. 
-
-New windows can be created by allowing the application to build
-several images of the screen and display the appropriate one very
-quickly.  New windows are created using the routine newwin().  For
-each routine that manipulates the default window, stdscr, there is a
-corresponding routine prefixed with w to manipulate the contents of a
-specified window; for example, move() and wmove().  In fact, move(...)
-is functionally equivalent to wmove( stdscr, ...).  This is similar to
-the interface offered by printf(...) and fprintf(stdout, ...). 
-
-Windows do not have to correspond to the entire screen.  It is
-possible to create smaller windows, and also to indicate that the
-window is only partially visible on the screen.  Furthermore, large
-windows or pads, which are bigger than the actual screen size, may be
-created. 
-
-Interfaces are also defined to allow input character manipulation and
-to disable and enable many input attributes: character echo, single
-character input with or without signal processing (cbreak or raw
-modes), carriage returns mapping to newlines, screen scrolling, etc. 
-
-
-Data Types and the <curses.h> Header
-------------------------------------
-
-The data types supported by curses are described in this section.
-
-As the library supports a procedural interface to the data types, actual 
-structure contents are not described.  All curses data are manipulated 
-using the routines provided.
-
-
-THE <curses.h> HEADER
-
-The <curses.h> header defines various constants and declares the data 
-types that are available to the application.
-
-
-DATA TYPES
-
-The following data types are declared:
-
-	WINDOW *	pointer to screen representation
-	SCREEN *	pointer to terminal descriptor
-	bool		boolean data type
-	chtype		representation of a character in a window
-	cchar_t		the wide-character equivalent of chtype
-	attr_t		for WA_-style attributes
-
-The actual WINDOW and SCREEN objects used to store information are 
-created by the corresponding routines and a pointer to them is provided.  
-All manipulation is through that pointer.
-
-
-VARIABLES
-
-The following variables are defined:
-
-	LINES		number of lines on terminal screen
-	COLS		number of columns on terminal screen
-	stdscr		pointer to the default screen window    
-	curscr		pointer to the current screen image
-	SP		pointer to the current SCREEN struct
-	Mouse_status	status of the mouse
-	COLORS		number of colors available
-	COLOR_PAIRS	number of color pairs available
-	TABSIZE		size of one TAB block
-	acs_map[]	alternate character set map  
-	ttytype[]	terminal name/description    
-
-
-CONSTANTS
-
-The following constants are defined:
-
-GENERAL
-
-	FALSE		boolean false value
-	TRUE		boolean true value
-	NULL		zero pointer value
-	ERR		value returned on error condition
-	OK		value returned on successful completion
-
-VIDEO ATTRIBUTES
-
-Normally, attributes are a property of the character. 
-
-For chtype:
-
-	A_ALTCHARSET	use the alternate character set
-	A_BLINK		bright background or blinking
-	A_BOLD		bright foreground or bold
-	A_DIM		half bright -- no effect in PDCurses
-	A_INVIS		invisible
-	A_ITALIC	italic
-	A_LEFTLINE	line along the left edge
-	A_PROTECT 	protected (?) -- PDCurses renders this as a 
-			combination of the *LINE attributes
-	A_REVERSE	reverse video
-	A_RIGHTLINE	line along the right edge
-	A_STANDOUT	terminal's best highlighting mode
-	A_UNDERLINE	underline
-
-	A_ATTRIBUTES	bit-mask to extract attributes
-	A_CHARTEXT	bit-mask to extract a character
-	A_COLOR		bit-mask to extract a color-pair
-
-Not all attributes will work on all terminals. A_RIGHTLINE, A_LEFTLINE 
-and A_ITALIC are specific to PDCurses. A_INVIS and A_ITALIC are given 
-the same value in PDCurses.
-
-For attr_t:
-
-	WA_ALTCHARSET	same as A_ALTCHARSET
-	WA_BLINK	same as A_BLINK
-	WA_BOLD		same as A_BOLD
-	WA_DIM		same as A_DIM
-	WA_INVIS	same as A_INVIS
-	WA_LEFT		same as A_LEFTLINE
-	WA_PROTECT	same as A_PROTECT
-	WA_REVERSE	same as A_REVERSE
-	WA_RIGHT	same as A_RIGHTLINE
-	WA_STANDOUT	same as A_STANDOUT
-	WA_UNDERLINE	same as A_UNDERLINE
-
-Note that while A_LEFTLINE and A_RIGHTLINE are PDCurses-specific, 
-WA_LEFT and WA_RIGHT are standard. The following are also defined, for 
-compatibility, but currently have no effect in PDCurses: WA_HORIZONTAL, 
-WA_LOW, WA_TOP, WA_VERTICAL.
-
-THE ALTERNATE CHARACTER SET
-
-For use in chtypes and with related functions. These are a portable way 
-to represent graphics characters on different terminals.
-
-VT100-compatible symbols -- box characters:
-
-	ACS_ULCORNER	upper left box corner
-	ACS_LLCORNER	lower left box corner
-	ACS_URCORNER	upper right box corner
-	ACS_LRCORNER	lower right box corner
-	ACS_RTEE	right "T"
-	ACS_LTEE	left "T"
-	ACS_BTEE	bottom "T"
-	ACS_TTEE	top "T"
-	ACS_HLINE	horizontal line
-	ACS_VLINE	vertical line
-	ACS_PLUS	plus sign, cross, or four-corner piece
-
-VT100-compatible symbols -- other:
-
-	ACS_S1		scan line 1
-	ACS_S9		scan line 9
-	ACS_DIAMOND	diamond
-	ACS_CKBOARD	checkerboard -- 50% grey
-	ACS_DEGREE	degree symbol
-	ACS_PLMINUS	plus/minus sign
-	ACS_BULLET	bullet
-
-Teletype 5410v1 symbols -- these are defined in SysV curses, but
-are not well-supported by most terminals. Stick to VT100 characters
-for optimum portability:
-
-	ACS_LARROW	left arrow
-	ACS_RARROW	right arrow
-	ACS_DARROW	down arrow
-	ACS_UARROW	up arrow
-	ACS_BOARD	checkerboard -- lighter (less dense) than 
-			ACS_CKBOARD
-	ACS_LANTERN	lantern symbol
-	ACS_BLOCK	solid block
-
-That goes double for these -- undocumented SysV symbols. Don't use
-them:
-
-	ACS_S3		scan line 3
-	ACS_S7		scan line 7
-	ACS_LEQUAL	less than or equal
-	ACS_GEQUAL	greater than or equal
-	ACS_PI		pi
-	ACS_NEQUAL	not equal
-	ACS_STERLING	pounds sterling symbol
-
-Box character aliases:
-
-	ACS_BSSB	same as ACS_ULCORNER
-	ACS_SSBB	same as ACS_LLCORNER
-	ACS_BBSS	same as ACS_URCORNER
-	ACS_SBBS	same as ACS_LRCORNER
-	ACS_SBSS	same as ACS_RTEE
-	ACS_SSSB	same as ACS_LTEE
-	ACS_SSBS	same as ACS_BTEE
-	ACS_BSSS	same as ACS_TTEE
-	ACS_BSBS	same as ACS_HLINE
-	ACS_SBSB	same as ACS_VLINE
-	ACS_SSSS	same as ACS_PLUS
-
-For cchar_t and wide-character functions, WACS_ equivalents are also 
-defined.
-
-COLORS
-
-For use with init_pair(), color_set(), etc.:
-
-	COLOR_BLACK
-	COLOR_BLUE
-	COLOR_GREEN
-	COLOR_CYAN
-	COLOR_RED
-	COLOR_MAGENTA
-	COLOR_YELLOW
-	COLOR_WHITE
-
-Use these instead of numeric values. The definition of the colors 
-depends on the implementation of curses.
-
-
-INPUT VALUES
-
-The following constants might be returned by getch() if keypad() has
-been enabled.  Note that not all of these may be supported on a
-particular terminal:
-
-	KEY_BREAK	break key
-	KEY_DOWN	the four arrow keys
-	KEY_UP
-	KEY_LEFT
-	KEY_RIGHT
-	KEY_HOME	home key (upward+left arrow)
-	KEY_BACKSPACE	backspace
-	KEY_F0		function keys; space for 64 keys is reserved
-	KEY_F(n)	(KEY_F0+(n))
-	KEY_DL		delete line
-	KEY_IL		insert line
-	KEY_DC		delete character
-	KEY_IC		insert character
-	KEY_EIC		exit insert character mode
-	KEY_CLEAR	clear screen
-	KEY_EOS		clear to end of screen
-	KEY_EOL		clear to end of line
-	KEY_SF		scroll 1 line forwards
-	KEY_SR		scroll 1 line backwards (reverse)
-	KEY_NPAGE	next page
-	KEY_PPAGE	previous page
-	KEY_STAB	set tab
-	KEY_CTAB	clear tab
-	KEY_CATAB	clear all tabs
-	KEY_ENTER	enter or send
-	KEY_SRESET	soft (partial) reset
-	KEY_RESET	reset or hard reset
-	KEY_PRINT	print or copy
-	KEY_LL		home down or bottom (lower left)
-	KEY_A1		upper left of virtual keypad
-	KEY_A3		upper right of virtual keypad
-	KEY_B2		center of virtual keypad
-	KEY_C1		lower left of virtual keypad
-	KEY_C3		lower right of virtual keypad
-
-	KEY_BTAB 	Back tab key
-	KEY_BEG 	Beginning key
-	KEY_CANCEL 	Cancel key
-	KEY_CLOSE 	Close key
-	KEY_COMMAND 	Cmd (command) key
-	KEY_COPY 	Copy key
-	KEY_CREATE 	Create key
-	KEY_END 	End key
-	KEY_EXIT 	Exit key
-	KEY_FIND 	Find key
-	KEY_HELP 	Help key
-	KEY_MARK 	Mark key
-	KEY_MESSAGE 	Message key
-	KEY_MOVE 	Move key
-	KEY_NEXT 	Next object key
-	KEY_OPEN 	Open key
-	KEY_OPTIONS 	Options key
-	KEY_PREVIOUS 	Previous object key
-	KEY_REDO 	Redo key
-	KEY_REFERENCE 	Reference key
-	KEY_REFRESH 	Refresh key
-	KEY_REPLACE 	Replace key
-	KEY_RESTART 	Restart key
-	KEY_RESUME 	Resume key
-	KEY_SAVE 	Save key
-	KEY_SBEG 	Shifted beginning key
-	KEY_SCANCEL 	Shifted cancel key
-	KEY_SCOMMAND 	Shifted command key
-	KEY_SCOPY 	Shifted copy key
-	KEY_SCREATE 	Shifted create key
-	KEY_SDC 	Shifted delete char key
-	KEY_SDL 	Shifted delete line key
-	KEY_SELECT 	Select key
-	KEY_SEND 	Shifted end key
-	KEY_SEOL 	Shifted clear line key
-	KEY_SEXIT 	Shifted exit key
-	KEY_SFIND 	Shifted find key
-	KEY_SHELP 	Shifted help key
-	KEY_SHOME 	Shifted home key
-	KEY_SIC 	Shifted input key
-	KEY_SLEFT 	Shifted left arrow key
-	KEY_SMESSAGE 	Shifted message key
-	KEY_SMOVE 	Shifted move key
-	KEY_SNEXT 	Shifted next key
-	KEY_SOPTIONS 	Shifted options key
-	KEY_SPREVIOUS 	Shifted prev key
-	KEY_SPRINT 	Shifted print key
-	KEY_SREDO 	Shifted redo key
-	KEY_SREPLACE 	Shifted replace key
-	KEY_SRIGHT 	Shifted right arrow
-	KEY_SRSUME 	Shifted resume key
-	KEY_SSAVE 	Shifted save key
-	KEY_SSUSPEND 	Shifted suspend key
-	KEY_SUNDO 	Shifted undo key
-	KEY_SUSPEND 	Suspend key
-	KEY_UNDO 	Undo key
-
-The virtual keypad is arranged like this:
-
-	A1	up	A3
-	left	B2	right
-	C1	down	C3
-
-This list is incomplete -- see curses.h for the full list, and use the 
-testcurs demo to see what values are actually returned. The above are 
-just the keys required by X/Open. In particular, PDCurses defines many 
-CTL_ and ALT_ combinations; these are not portable.
-
-
-FUNCTIONS
-
-The following table lists each curses routine and the name of the manual 
-page on which it is described.
-
-Functions from the X/Open curses standard -- complete, except for 
-getch() and ungetch(), which are implemented as macros for DOS 
-compatibility:
-
-   Curses Function        Manual Page Name
-
-	addch			addch
-	addchnstr		addchstr
-	addchstr		addchstr
-	addnstr			addstr
-	addstr			addstr
-	attroff			attr
-	attron			attr
-	attrset			attr
-	attr_get		attr
-	attr_off		attr
-	attr_on			attr
-	attr_set		attr
-	baudrate		termattr
-	beep			beep
-	bkgd			bkgd
-	bkgdset			bkgd
-	border			border
-	box			border
-	can_change_color	color
-	cbreak			inopts
-	chgat			attr
-	clearok			outopts
-	clear			clear
-	clrtobot		clear
-	clrtoeol		clear
-	color_content		color
-	color_set		attr
-	copywin			overlay
-	curs_set		kernel
-	def_prog_mode		kernel
-	def_shell_mode		kernel
-	del_curterm		terminfo
-	delay_output		util
-	delch			delch
-	deleteln		deleteln
-	delscreen		initscr
-	delwin			window
-	derwin			window
-	doupdate		refresh
-	dupwin			window
-	echochar		addch
-	echo			inopts
-	endwin			initscr
-	erasechar		termattr
-	erase			clear
-	filter			util
-	flash			beep
-	flushinp		getch
-	getbkgd			bkgd
-	getnstr			getstr
-	getstr			getstr
-	getwin			scr_dump
-	halfdelay		inopts
-	has_colors		color
-	has_ic			termattr
-	has_il			termattr
-	hline			border
-	idcok			outopts
-	idlok			outopts
-	immedok			outopts
-	inchnstr		inchstr
-	inchstr			inchstr
-	inch			inch
-	init_color		color
-	init_pair		color
-	initscr			initscr
-	innstr			instr
-	insch			insch
-	insdelln		deleteln
-	insertln		deleteln
-	insnstr			innstr
-	insstr			innstr
-	instr			instr
-	intrflush		inopts
-	isendwin		initscr
-	is_linetouched		touch
-	is_wintouched		touch
-	keyname			keyname
-	keypad			inopts
-	killchar		termattr
-	leaveok			outopts
-	longname		termattr
-	meta			inopts
-	move			move
-	mvaddch			addch
-	mvaddchnstr		addchstr
-	mvaddchstr		addchstr
-	mvaddnstr		addstr
-	mvaddstr		addstr
-	mvchgat			attr
-	mvcur			terminfo
-	mvdelch			delch
-	mvderwin		window
-	mvgetch			getch
-	mvgetnstr		getstr
-	mvgetstr		getstr
-	mvhline			border
-	mvinch			inch
-	mvinchnstr		inchstr
-	mvinchstr		inchstr
-	mvinnstr		instr
-	mvinsch			insch
-	mvinsnstr		insstr
-	mvinsstr		insstr
-	mvinstr			instr
-	mvprintw		printw
-	mvscanw			scanw
-	mvvline			border
-	mvwaddchnstr		addchstr
-	mvwaddchstr		addchstr
-	mvwaddch		addch
-	mvwaddnstr		addstr
-	mvwaddstr		addstr
-	mvwchgat		attr
-	mvwdelch		delch
-	mvwgetch		getch
-	mvwgetnstr		getstr
-	mvwgetstr		getstr
-	mvwhline		border
-	mvwinchnstr		inchstr
-	mvwinchstr		inchstr
-	mvwinch			inch
-	mvwinnstr		instr
-	mvwinsch		insch
-	mvwinsnstr		insstr
-	mvwinsstr		insstr
-	mvwinstr		instr
-	mvwin			window
-	mvwprintw		printw
-	mvwscanw		scanw
-	mvwvline		border
-	napms			kernel
-	newpad			pad
-	newterm			initscr
-	newwin			window
-	nl			inopts
-	nocbreak		inopts
-	nodelay			inopts
-	noecho			inopts
-	nonl			inopts
-	noqiflush		inopts
-	noraw			inopts
-	notimeout		inopts
-	overlay			overlay
-	overwrite		overlay
-	pair_content		color
-	pechochar		pad
-	pnoutrefresh		pad
-	prefresh		pad
-	printw			printw
-	putp			terminfo
-	putwin			scr_dump
-	qiflush			inopts
-	raw			inopts
-	redrawwin		refresh
-	refresh			refresh
-	reset_prog_mode		kernel
-	reset_shell_mode	kernel
-	resetty			kernel
-	restartterm		terminfo
-	ripoffline		kernel
-	savetty			kernel
-	scanw			scanw
-	scr_dump		scr_dump
-	scr_init		scr_dump
-	scr_restore		scr_dump
-	scr_set			scr_dump
-	scrl			scroll
-	scroll			scroll
-	scrollok		outopts
-	set_term		initscr
-	setscrreg		outopts
-	setterm			terminfo
-	setupterm		terminfo
-	slk_attroff		slk
-	slk_attr_off		slk
-	slk_attron		slk
-	slk_attr_on		slk
-	slk_attrset		slk
-	slk_attr_set		slk
-	slk_clear		slk
-	slk_color		slk
-	slk_init		slk
-	slk_label		slk
-	slk_noutrefresh		slk
-	slk_refresh		slk
-	slk_restore		slk
-	slk_set			slk
-	slk_touch		slk
-	standend		attr
-	standout		attr
-	start_color		color
-	subpad			pad
-	subwin			window
-	syncok			window
-	termattrs		termattrs
-	term_attrs		termattrs
-	termname		termattrs
-	tgetent			termcap
-	tgetflag		termcap
-	tgetnum			termcap
-	tgetstr			termcap
-	tgoto			termcap
-	tigetflag		terminfo
-	tigetnum		terminfo
-	tigetstr		terminfo
-	timeout			inopts
-	touchline		touch
-	touchwin		touch
-	tparm			terminfo
-	tputs			terminfo
-	typeahead		inopts
-	untouchwin		touch
-	use_env			util
-	vidattr			terminfo
-	vid_attr		terminfo
-	vidputs			terminfo
-	vid_puts		terminfo
-	vline			border
-	vw_printw		printw
-	vwprintw		printw
-	vw_scanw		scanw
-	vwscanw			scanw
-	waddchnstr		addchstr
-	waddchstr		addchstr
-	waddch			addch
-	waddnstr		addstr
-	waddstr			addstr
-	wattroff		attr
-	wattron			attr
-	wattrset		attr
-	wattr_get		attr
-	wattr_off		attr
-	wattr_on		attr
-	wattr_set		attr
-	wbkgdset		bkgd
-	wbkgd			bkgd
-	wborder			border
-	wchgat			attr
-	wclear			clear
-	wclrtobot		clear
-	wclrtoeol		clear
-	wcolor_set		attr
-	wcursyncup		window
-	wdelch			delch
-	wdeleteln		deleteln
-	wechochar		addch
-	werase			clear
-	wgetch			getch
-	wgetnstr		getstr
-	wgetstr			getstr
-	whline			border
-	winchnstr		inchstr
-	winchstr		inchstr
-	winch			inch
-	winnstr			instr
-	winsch			insch
-	winsdelln		deleteln
-	winsertln		deleteln
-	winsnstr		insstr
-	winsstr			insstr
-	winstr			instr
-	wmove			move
-	wnoutrefresh		refresh
-	wprintw			printw
-	wredrawln		refresh
-	wrefresh		refresh
-	wscanw			scanw
-	wscrl			scroll
-	wsetscrreg		outopts
-	wstandend		attr
-	wstandout		attr
-	wsyncdown		window
-	wsyncup			window
-	wtimeout		inopts
-	wtouchln		touch
-	wvline			border
-
-Wide-character functions from the X/Open standard -- these are only 
-available when PDCurses is built with PDC_WIDE defined, and the 
-prototypes are only available from curses.h when PDC_WIDE is defined 
-before its inclusion in your app:
-
-	addnwstr		addstr
-	addwstr			addstr
-	add_wch			addch
-	add_wchnstr		addchstr
-	add_wchstr		addchstr
-	border_set		border
-	box_set			border
-	echo_wchar		addch
-	erasewchar		termattr
-	getbkgrnd		bkgd
-	getcchar		util
-	getn_wstr		getstr
-	get_wch			getch
-	get_wstr		getstr
-	hline_set		border
-	innwstr			instr
-	ins_nwstr		insstr
-	ins_wch			insch
-	ins_wstr		insstr
-	inwstr			instr
-	in_wch			inch
-	in_wchnstr		inchstr
-	in_wchstr		inchstr
-	key_name		keyname
-	killwchar		termattr
-	mvaddnwstr		addstr
-	mvaddwstr		addstr
-	mvadd_wch		addch
-	mvadd_wchnstr		addchstr
-	mvadd_wchstr		addchstr
-	mvgetn_wstr		getstr
-	mvget_wch		getch
-	mvget_wstr		getstr
-	mvhline_set		border
-	mvinnwstr		instr
-	mvins_nwstr		insstr
-	mvins_wch		insch
-	mvins_wstr		insstr
-	mvinwstr		instr
-	mvwaddnwstr		addstr
-	mvwaddwstr		addstr
-	mvwadd_wch		addch
-	mvwadd_wchnstr		addchstr
-	mvwadd_wchstr		addchstr
-	mvwgetn_wstr		getstr
-	mvwget_wch		getch
-	mvwget_wstr		getstr
-	mvwhline_set		border
-	mvwinnwstr		instr
-	mvwins_nwstr		insstr
-	mvwins_wch		insch
-	mvwins_wstr		insstr
-	mvwin_wch		inch
-	mvwin_wchnstr		inchstr
-	mvwin_wchstr		inchstr
-	mvwinwstr		instr
-	mvwvline_set		border
-	pecho_wchar		pad
-	setcchar		util
-	slk_wset		slk
-	unget_wch		getch
-	vline_set		border
-	waddnwstr		addstr
-	waddwstr		addstr
-	wadd_wch		addch
-	wadd_wchnstr		addchstr
-	wadd_wchstr		addchstr
-	wbkgrnd			bkgd
-	wbkgrndset		bkgd
-	wborder_set		border
-	wecho_wchar		addch
-	wgetbkgrnd		bkgd
-	wgetn_wstr		getstr
-	wget_wch		getch
-	wget_wstr		getstr
-	whline_set		border
-	winnwstr		instr
-	wins_nwstr		insstr
-	wins_wch		insch
-	wins_wstr		insstr
-	winwstr			instr
-	win_wch			inch
-	win_wchnstr		inchstr
-	win_wchstr		inchstr
-	wunctrl			util
-	wvline_set		border
-
-Quasi-standard functions, from Sys V or BSD curses:
-
-	getattrs		attr
-	getbegx			getyx
-	getbegy			getyx
-	getmaxx			getyx
-	getmaxy			getyx
-	getparx			getyx
-	getparx			getyx
-	traceoff		debug
-	traceon			debug
-	unctrl			util
-
-Classic PDCurses mouse functions, based on Sys V:
-
-	mouse_set		mouse
-	mouse_on		mouse
-	mouse_off		mouse
-	request_mouse_pos	mouse
-	map_button		mouse
-	wmouse_position		mouse
-	getmouse		mouse
-	getbmap			mouse
-
-Functions from ncurses:
-
-	assume_default_colors	color
-	curses_version		initscr
-	has_key			keyname
-	use_default_colors	color
-	wresize			window
-
-	mouseinterval		mouse
-	mousemask		mouse
-	mouse_trafo		mouse
-	nc_getmouse		mouse
-	ungetmouse		mouse
-	wenclose		mouse
-	wmouse_trafo		mouse
-
-PDCurses-specific functions -- avoid these in code that's intended to be 
-portable:
-
-	addrawch		addch
-	insrawch		insch
-	is_termresized		initscr
-	mvaddrawch		addch
-	mvdeleteln		deleteln
-	mvinsertln		deleteln
-	mvinsrawch		insch
-	mvwaddrawch		addch
-	mvwdeleteln		deleteln
-	mvwinsertln		deleteln
-	mvwinsrawch		insch
-	raw_output		outopts
-	resize_term		initscr
-	resize_window		window
-	slk_wlabel		slk
-	waddrawch		addch
-	winsrawch		insch
-	wordchar		termattr
-
-	PDC_debug		debug
-	PDC_ungetch		getch
-	PDC_set_blink		pdcsetsc
-	PDC_set_line_color	color
-	PDC_set_title		pdcsetsc
-
-	PDC_clearclipboard	pdcclip
-	PDC_freeclipboard	pdcclip
-	PDC_getclipboard	pdcclip
-	PDC_setclipboard	pdcclip
-
-	PDC_get_input_fd	pdckbd
-	PDC_get_key_modifiers	getch
-	PDC_return_key_modifiers getch
-	PDC_save_key_modifiers	getch
-
-Functions specific to the X11 port of PDCurses:
-
-	Xinitscr		initscr
-	XCursesExit		-
-	sb_init			sb
-	sb_set_horz		sb
-	sb_set_vert		sb
-	sb_get_horz		sb
-	sb_get_vert		sb
-	sb_refresh		sb
-
---------------------------------------------------------------------------
-
diff --git a/src/other/PDCurses/doc/manext.c b/src/other/PDCurses/doc/manext.c
deleted file mode 100644
index 4ce7cbf..0000000
--- a/src/other/PDCurses/doc/manext.c
+++ /dev/null
@@ -1,119 +0,0 @@
-/***********************************************************************/
-/* MANEXT - Extract manual pages from C source code.                   */
-/***********************************************************************/
-/*
- * MANEXT - A program to extract manual pages from C source code.
- * Copyright (C) 1991-1996 Mark Hessling
- *
- * This program 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 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
- * General Public License for more details.
- *
- * If you make modifications to this software that you feel increases
- * it usefulness for the rest of the community, please email the
- * changes, enhancements, bug fixes as well as any and all ideas to me.
- * This software is going to be maintained and enhanced as deemed
- * necessary by the community.
- *
- * Mark Hessling <mark at rexx.org>
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#define MAX_LINE 255
-
-void display_info()
-{
-    fprintf(stderr, "\nMANEXT 1.03 Copyright (C) 1991-1996 Mark Hessling\n"
-                    "All rights reserved.\n"
-                    "MANEXT is distributed under the terms of the GNU\n"
-                    "General Public License and comes with NO WARRANTY.\n"
-                    "See the file COPYING for details.\n"
-                    "\nUsage: manext sourcefile [...]\n\n");
-}
-
-int main(int argc, char **argv)
-{
-    char s[MAX_LINE + 1];       /* input line */
-    int i;
-    FILE *fp;
-
-#ifdef __EMX__
-    _wildcard(&argc, &argv);
-#endif
-    if (strcmp(argv[1], "-h") == 0)
-    {
-        display_info();
-        exit(1);
-    }
-
-    for (i = 1; i < argc; i++)
-    {
-        if ((fp = fopen(argv[i], "r")) == NULL)
-        {
-            fprintf(stderr, "\nCould not open %s\n", argv[i]);
-            continue;
-        }
-
-        while (!feof(fp))
-        {
-            if (fgets(s, (int)sizeof(s), fp) == NULL)
-            {
-                if (ferror(fp) != 0)
-                {
-                    fprintf(stderr, "*** Error reading %s.  Exiting.\n",
-                            argv[i]);
-                    exit(1);
-                }
-
-                break;
-            }
-
-            /* check for manual entry marker at beginning of line */
-
-            if (strncmp(s, "/*man-start*", 12) != 0)
-                continue;
-
-            /* inner loop */
-
-            for (;;)
-            {
-                /* read next line of manual entry */
-
-                if (fgets(s, (int)sizeof(s), fp) == NULL)
-                {
-                    if (ferror(fp) != 0)
-                    {
-                        fprintf(stderr, "*** Error reading %s.  Exiting.\n",
-                                argv[i]);
-                        exit(1);
-                    }
-
-                    break;
-                }
-
-                /* check for end of entry marker */
-
-                if (strncmp(s, "**man-end", 9) == 0)
-                    break;
-
-                printf("%s", s);
-            }
-
-            printf("\n\n-----------------------------------"
-                   "---------------------------------------\n\n");
-        }
-
-        fclose(fp);
-    }
-
-    return 0;
-}
diff --git a/src/other/PDCurses/doc/sdl.txt b/src/other/PDCurses/doc/sdl.txt
deleted file mode 100644
index 6a54b9b..0000000
--- a/src/other/PDCurses/doc/sdl.txt
+++ /dev/null
@@ -1,152 +0,0 @@
-SDL Considerations
-==================
-
-There are no special requirements to use PDCurses for SDL -- all 
-PDCurses-compatible code should work fine. (In fact, you can even build 
-against the Win32 console pdcurses.dll, and then swap in the SDL 
-pdcurses.dll.) Nothing extra is needed beyond the base SDL library. 
-However, there are some optional special features, described here.
-
-The principal limitation of this port is that input is currently 
-restricted to ASCII (i.e., 0-127), plus the special keys like KEY_LEFT. 
-(You could have Unicode input, but then the input wouldn't match the 
-output, which is in Code Page 437.) Also, see the note about the 
-potential for incomplete output under "PDC_update_rects()", below.
-
-
-Fonts
------
-
-The font is a simple BMP, 32 characters wide by 8 characters tall, 
-preferably with a palette. (BMPs without palettes still work, but in 
-that case, no attributes will be available, nor will the cursor work.) 
-The first entry in the palette (usually black) is treated as the 
-background color; the last entry (usually white) is treated as the 
-foreground. These are changed or made transparent as appropriate; any 
-other colors in the palette are passed through unchanged. So -- although 
-a one-bit depth is sufficient for a normal font -- you could redraw some 
-characters as multi-colored tiles.
-
-The font must be monospaced. The size of each character is derived by 
-dividing the width of the BMP by 32 and the height by 8. There is no 
-constraint on the dimensions.
-
-As provided in the default font and expected by acs_map[], the font is 
-in Code Page 437 form. But you can of course use any layout if you're 
-not relying on correct values for the ACS_* macros.
-
-The font can be set via the environment variable PDC_FONT. If it's not 
-set, PDCurses looks for a file named "pdcfont.bmp" in the current 
-directory at the time of initscr(). If neither is found, it uses the 
-built-in default font encoded in deffont.h.
-
-
-Backgrounds
------------
-
-PDCurses for SDL supports an optional background image BMP. This is used 
-whenever start_color() has not been called (see the ptest demo for an 
-example), or when use_default_colors() has been called after 
-start_color(), and the background color of a pair has been set to -1 
-(see newdemo, worm, and rain for examples). The usage parallels that of 
-ncurses in an appropriate terminal (e.g., Gnome Terminal). The image is 
-tiled to cover the PDCurses window, and can be any size or depth.
-
-As with the font, you can point to a location for the background via the 
-environment variable PDC_BACKGROUND; "pdcback.bmp" is the fallback. 
-(There is no default background.)
-
-
-Icons
------
-
-The icon (used with SDL_WM_SetIcon() -- not used for the executable 
-file) can be set via the environment variable PDC_ICON, and falls back 
-to "pdcicon.bmp", and then to the built-in icon from deficon.h. The 
-built-in icon is the PDCurses logo, as seen in ../x11/little_icon.xbm. 
-The SDL docs say that the icon must be 32x32, at least for use with MS 
-Windows.
-
-If pdc_screen is preinitialized (see below), PDCurses does not attempt 
-to set the icon.
-
-
-Screen size
------------
-
-The default screen size is 80x25 characters (whatever size they may be), 
-but you can override this via the environment variables PDC_COLS and/or 
-PDC_LINES. (Some other ports use COLS and LINES; this is not done here 
-because those values are, or should be, those of the controlling 
-terminal, and PDCurses for SDL is independent of the terminal.) If 
-pdc_screen is preinitialized (see below), these are ignored.
-
-
-Integration with SDL
---------------------
-
-If you want to go further, you can mix PDCurses and SDL functions. (Of 
-course this is extremely non-portable!) To aid you, there are several 
-external variables and functions specific to the SDL port; you could 
-include pdcsdl.h, or just add the declarations you need in your code:
-
- PDCEX SDL_Surface *pdc_screen, *pdc_font, *pdc_icon, *pdc_back;
- PDCEX int pdc_sheight, pdc_swidth, pdc_yoffset, pdc_xoffset;
-
- void PDC_update_rects(void);
- void PDC_retile(void);
-
-pdc_screen is the main surface, created by SDL_SetVideoMode(), unless 
-it's preset before initscr(). You can perform normal SDL operations on 
-this surface, but PDCurses won't respect them when it updates. (For 
-that, see PDC_retile().) As an alternative, you can preinitialize this 
-surface before calling initscr(). In that case, you can use pdc_sheight, 
-pdc_swidth, pdc_yoffset and/or pdc_xoffset (q.v.) to confine PDCurses to 
-only a specific area of the surface, reserving the rest for other SDL 
-operations. If you preinitialize pdc_screen, you'll have to close it 
-yourself; PDCurses will ignore resize events, and won't try to set the 
-icon. Also note that if you preinitialize pdc_screen, it need not be the 
-display surface.
-
-pdc_font, pdc_icon, and pdc_back are the SDL_surfaces for the font, 
-icon, and background, respectively. You can set any or all of them 
-before initscr(), and thus override any of the other ways to set them. 
-But note that pdc_icon will be ignored if pdc_screen is preset.
-
-pdc_sheight and pdc_swidth are the dimensions of the area of pdc_screen 
-to be used by PDCurses. You can preset them before initscr(); if either 
-is not set, it defaults to the full screen size minus the x or y offset, 
-as appropriate.
-
-pdc_xoffset and pdc_yoffset are the x and y offset for the area of 
-pdc_screen to be used by PDCurses. See the sdltest demo for an example.
-
-PDC_retile() makes a copy of pdc_screen, then tiles it with the 
-background image, if any. The resulting surface is used as the 
-background for transparent character cells. PDC_retile() is called from 
-initscr() and resize_term(). However, you can also use it at other 
-times, to take advantage of the way it copies pdc_screen: Draw some SDL 
-stuff; call PDC_retile(); do some curses stuff -- it will use whatever 
-was on pdc_screen as the background. Then you can erase the curses 
-screen, do some more SDL stuff, and call PDC_retile() again to make a 
-new background. (If you don't erase the curses screen, it will be 
-incorporated into the background when you call PDC_retile().) But this 
-only works if no background image is set.
-
-PDC_update_rects() is how the screen actually gets updated. For 
-performance reasons, when drawing, PDCurses for SDL maintains a table of 
-rectangles that need updating, and only updates (by calling this 
-function) during getch(), napms(), or when the table gets full. 
-Normally, this is sufficient; but if you're pausing in some way other 
-than by using napms(), and you're not doing keyboard checks, you may get 
-an incomplete update. If that happens, you can call PDC_update_rects() 
-manually.
-
-
-Interaction with stdio
-----------------------
-
-As with X11, it's a bad idea to mix curses and stdio calls. (In fact, 
-that's true for PDCurses on any platform; but especially these two, 
-which don't run under terminals.) Depending on how SDL is built, stdout 
-and stderr may be redirected to files.
diff --git a/src/other/PDCurses/doc/x11.txt b/src/other/PDCurses/doc/x11.txt
deleted file mode 100644
index db05683..0000000
--- a/src/other/PDCurses/doc/x11.txt
+++ /dev/null
@@ -1,416 +0,0 @@
-X11 Considerations
-==================
-
-PDCurses for X11 uses the System V IPC shared memory facility, along 
-with sockets, to share data between the curses program and the child 
-process created to manage the X stuff.
-
-When compiling your application, you need to include the <curses.h> or 
-<xcurses.h> that comes with PDCurses. You also need to link your code 
-with libXCurses. You may need to link with the following libraries under 
-X11R5:
-    Xaw Xmu Xt X11
-
-or, under X11R6:
-    Xaw Xmu Xt X11 SM ICE Xext
-
-You can run "xcurses-config --libs" to show the link parameters for your 
-system. If using dynamic linking, on some systems, "-lXCurses" suffices.
-
-By calling Xinitscr() rather than initscr(), you can pass your program 
-name and resource overrides to PDCurses. The program name is used as the 
-title of the X window, and for defining X resources specific to your 
-program.
-
-
-Interaction with stdio
-----------------------
-
-Be aware that curses programs that expect to have a normal tty 
-underneath them will be very disappointed! Output directed to stdout 
-will go to the xterm that invoked the PDCurses application, or to the 
-console if not invoked directly from an xterm. Similarly, stdin will 
-expect its input from the same place as stdout.
-
-
-X Resources
------------
-
-PDCurses for X11 recognizes the following resources:
-
-    lines
-    cols
-    normalFont
-    italicFont
-    pointer
-    pointerForeColor
-    pointerBackColor
-    cursorColor
-    textCursor
-    colorBlack
-    colorRed
-    colorGreen
-    colorYellow
-    colorBlue
-    colorMagenta
-    colorCyan
-    colorWhite
-    colorBoldBlack
-    colorBoldRed
-    colorBoldGreen
-    colorBoldYellow
-    colorBoldBlue
-    colorBoldMagenta
-    colorBoldCyan
-    colorBoldWhite
-    bitmap
-    pixmap
-    translations
-    shmmin
-    borderWidth
-    borderColor
-    clickPeriod
-    doubleClickPeriod
-    composeKey
-
-lines:		   Specifies the number of lines the "screen" will have.
-		   Directly equates to LINES.
-		   There is no theoretical maximum.
-		   The minimum value must be 2.
-		   Default:	   24
-
-cols:		   Specifies the number of columns the "screen" will have.
-                   Directly equates to COLS.
-                   There is no theoretical maximum.
-                   The minimum value must be 2.
-                   Default:	   80
-
-normalFont:	   The name of a fixed width font.
-		   Default:	   7x13
-
-italicFont:	   The name of a fixed width font to be used for
-		   characters with A_ITALIC attributes. Must have the 
-		   same cell size as normalFont.
-		   Default:	   7x13 (obviously not an italic font)
-
-pointer:	   The name of a valid pointer cursor.
-		   Default:	   xterm
-
-pointerForeColor:  The foreground color of the pointer.
-		   Default:	   black
-
-pointerBackColor:  The background color of the pointer.
-		   Default:	   white
-
-textCursor:	   The alignment of the text cursor; horizontal or vertical.
-		   Default:	   horizontal
-
-colorBlack:	   The color of the COLOR_BLACK attribute.
-		   Default:	   Black
-
-colorRed:	   The color of the COLOR_RED attribute.
-		   Default:	   red3
-
-colorGreen:	   The color of the COLOR_GREEN attribute.
-		   Default:	   green3
-
-colorYellow:	   The color of the COLOR_YELLOW attribute.
-		   Default:	   yellow3
-
-colorBlue:	   The color of the COLOR_BLUE attribute.
-		   Default:	   blue3
-
-colorMagenta:	   The color of the COLOR_MAGENTA attribute.
-		   Default:	   magenta3
-
-colorCyan:	   The color of the COLOR_CYAN attribute.
-		   Default:	   cyan3
-
-colorWhite:	   The color of the COLOR_WHITE attribute.
-		   Default:	   Grey
-
-colorBoldBlack:    COLOR_BLACK combined with A_BOLD.
-		   Default:	   grey40
-
-colorBoldRed:	   COLOR_RED combined with A_BOLD.
-		   Default:	   red1
-
-colorBoldGreen:    COLOR_GREEN combined with A_BOLD.
-		   Default:	   green1
-
-colorBoldYellow:   COLOR_YELLOW combined with A_BOLD.
-		   Default:	   yellow1
-
-colorBoldBlue:	   COLOR_BLUE combined with A_BOLD.
-		   Default:	   blue1
-
-colorBoldMagenta:  COLOR_MAGENTA combined with A_BOLD.
-		   Default:	   magenta1
-
-colorBoldCyan:	   COLOR_CYAN combined with A_BOLD.
-		   Default:	   cyan1
-
-colorBoldWhite:    COLOR_WHITE combined with A_BOLD.
-		   Default:	   White
-
-bitmap:		   The name of a valid bitmap file of depth 1 (black and white)
-		   used for the application's icon. The file is an X bitmap.
-		   Default:        a 32x32 or 64x64 pixmap depending on the 
-				   window manager
-
-pixmap:		   The name of a valid pixmap file of any depth 
-		   supported by the window manager (color) for the 
-		   application's icon, The file is an X11 pixmap. This 
-		   resource is only available if the libXpm package has 
-		   been installed (most systems have this by default). 
-		   This resource overrides the "bitmap" resource.
-                   Default:        none, uses default bitmap above
-
-translations:      Translations enable the user to customize the action
-		   that occurs when a key, combination of keys, or a
-		   button is pressed.  The translations are similar to
-		   those used by xterm.
-		   Defaults:
-			<Key>:		XCursesKeyPress()
-			<KeyUp>:	XCursesKeyPress()
-			<BtnDown>:	XCursesButton()
-			<BtnUp>:	XCursesButton()
-			<BtnMotion>:	XCursesButton()
-
-		   The most useful action for KeyPress translations is 
-		   string(). The argument to the string() action can be 
-		   either a string or a hex representation of a 
-		   character; e.g., string(0x1b) will send the ASCII
-		   escape character to the application; string("[11~") 
-		   will send [ 1 1 ~ , as separate keystrokes.
-
-shmmin:		   On most systems, there are two Unix kernel parameters
-		   that determine the allowable size of a shared memory
-		   segment. These parameters are usually something like 
-		   SHMMIN and SHMMAX. To use shared memory, a program
-		   must allocate a segment of shared memory that is
-		   between these two values.  Usually these values are
-		   like 1 for SHMMIN and some large number for SHMMAX. 
-		   Sometimes the Unix kernel is configured to have a
-		   value of SHMMIN that is bigger than the size of one
-		   of the shared memory segments that libXCurses uses. 
-		   On these systems an error message like:
-
-		     Cannot allocate shared memory for SCREEN: Invalid argument
-
-		   will result. To overcome this problem, this resource 
-		   should be set to the kernel value for SHMMIN. This
-		   ensures that a shared memory segment will always be
-		   bigger than the kernel value for SHMMIN (and
-		   hopefully less than SHMMAX!)
-
-		   Default:	   0
-
-borderColor:	   The color of the border around the screen.
-		   Default:	   black
-
-borderWidth:	   The width in pixels of the border around the screen.
-		   Default:	   0
-
-clickPeriod:	   The period (in milliseconds) between a button 
-		   press and a button release that determines if a click
-		   of a button has occurred.
-		   Default:	   100
-
-doubleClickPeriod: The period (in milliseconds) between two button
-		   press events that determines if a double click
-		   of a button has occurred.
-		   Default:	   200
-
-composeKey:	   The name of the X key that defines the "compose key",
-		   which is used to enter characters in the Latin-1 
-		   character set above 0xA0. (See "Compose Keys for 
-		   Latin-1" below.) This is used only when PDCurses is 
-		   built without XIM support. While in compose mode, the 
-		   text cursor will appear as a hollow rectangle.
-		   Default:	   Multi_key
-
-
-Using Resources
----------------
-
-All applications have a top-level class name of "XCurses". If Xinitscr() 
-is used, it sets an application's top-level widget name. (Otherwise the 
-name defaults to "PDCurses".)
-
-Examples for app-defaults or .Xdefaults:
-
-!
-! resources for XCurses class of programs
-!
-XCurses*lines:  30
-XCurses*cols:   80
-XCurses*normalFont:     9x13
-XCurses*bitmap: /tmp/xcurses.xbm
-XCurses*pointer: top_left_arrow
-!
-! resources for testcurs - XCurses
-!
-testcurs.colorRed:      orange
-testcurs.colorBlack:    midnightblue
-testcurs.lines: 25
-*testcurs.Translations: #override \n \
-  <Key>F12:  string(0x1b) string("[11~") \n
-!
-! resources for THE - XCurses
-!
-! resources with the * wildcard can be overridden by a parameter passed
-! to initscr()
-!
-the*normalFont: 9x15
-the*lines:      40
-the*cols:       86
-the*pointer:    xterm
-the*pointerForeColor: white
-the*pointerBackColor: black
-!
-! resources with the . format can not be overridden by a parameter passed
-! to Xinitscr()
-!
-the.bitmap:     /home/mark/the/the64.xbm
-the.pixmap:     /home/mark/the/the64.xpm
-
-Resources may also be passed as parameters to the Xinitscr() function. 
-Parameters are strings in the form of switches; e.g., to set the color 
-"red" to "indianred", and the number of lines to 30, the string passed 
-to Xinitscr would be: "-colorRed indianred -lines 30"
-
-
-Compose Keys for Latin-1
-------------------------
-
-When built without XIM support, PDCurses for X11 provides its own, 
-limited compose key system for Latin-1 characters. The available 
-combinations are listed here. For a given character, any of the 
-combinations shown in the last column may be used. To generate a 
-character, press the "compose" key followed by one of the pairs of 
-keystrokes. Where no key is evident, the spacebar is used.  Thus, to 
-generate the NO-BREAK SPACE, press the "compose" key followed by two 
-hits of the spacebar.
-
-With a typical modern X server, you can get many more compose key 
-combinations by using XIM instead. Configure PDCurses with --enable-xim 
-to use XIM support.
-
-This document is encoded in UTF-8.
-
-+----+-----+---+---------------------------------+---------------------------+
-|Hex | Dec |Chr| Description ISO 10646-1:1993(E) | Compose key combinations  |
-+----+-----+---+---------------------------------+---------------------------+
-| A0 | 160 |   | NO-BREAK SPACE			 |			     |
-| A1 | 161 | ¡ | INVERTED EXCLAMATION MARK	 | !   !!		     |
-| A2 | 162 | ¢ | CENT SIGN			 | c|  |c  c/  c$  C$  C|    |
-| A3 | 163 | £ | POUND SIGN			 | L-  L$  L=  l-  l$  l=  |-|
-| A4 | 164 | ¤ | CURRENCY SIGN			 | xo  ox  XO  g$	     |
-| A5 | 165 | ¥ | YEN SIGN			 | =y  y=  =Y  Y=  Y-  y$  y-|
-| A6 | 166 | ¦ | BROKEN BAR			 | |   ||  vb  VB  |^	     |
-| A7 | 167 | § | SECTION SIGN			 | SO  SS  s!  S!  so	     |
-| A8 | 168 | ¨ | DIAERESIS			 | "   ""		     |
-| A9 | 169 | © | COPYRIGHT SIGN			 | CO  co  OC		     |
-| AA | 170 | ª | FEMININE ORDINAL INDICATOR	 | sa  SA  a_  A_	     |
-| AB | 171 | « | LEFT DOUBLE ANGLE QUOTES	 | <<			     |
-| AC | 172 | ¬ | NOT SIGN			 | -,  no  NO		     |
-| AD | 173 | ­ | SOFT HYPHEN			 | -   --		     |
-| AE | 174 | ® | REGISTERED SIGN		 | RO  ro  OR		     |
-| AF | 175 | ¯ | MACRON				 | -^  _^  __		     |
-| B0 | 176 | ° | DEGREE SIGN			 | o   0^  0*  de  DE  ^0    |
-| B1 | 177 | ± | PLUS-MINUS SIGN		 | -+  +-		     |
-| B2 | 178 | ² | SUPERSCRIPT TWO		 | 2   2^  s2  ^2	     |
-| B3 | 179 | ³ | SUPERSCRIPT THREE		 | 3   3^  s3  ^3	     |
-| B4 | 180 | ´ | ACUTE ACCENT			 | '   ''		     |
-| B5 | 181 | µ | MICRO SIGN			 | u   /u  /U  *m  *M	     |
-| B6 | 182 | ¶ | PILCROW SIGN			 | p!  P!  pg  PG	     |
-| B7 | 183 | · | MIDDLE DOT			 | .   .^  ..		     |
-| B8 | 184 | ¸ | CEDILLA			 | ,   ,,		     |
-| B9 | 185 | ¹ | SUPERSCRIPT ONE		 | 1   1^  s1  ^1	     |
-| BA | 186 | º | MASCULINE ORDINAL INDICATOR	 | o_  s0  S0		     |
-| BB | 187 | » | RIGHT DOUBLE ANGLE QUOTES	 | >>			     |
-| BC | 188 | ¼ | VULGAR FRACTION ONE QUARTER	 | 14			     |
-| BD | 189 | ½ | VULGAR FRACTION ONE HALF	 | 12			     |
-| BE | 190 | ¾ | VULGAR FRACTION THREE QUARTERS  | 34			     |
-| BF | 191 | ¿ | INVERTED QUESTION MARK		 | ?   ??		     |
-| C0 | 192 | À | CAPITAL A WITH GRAVE ACCENT	 | `A  A`		     |
-| C1 | 193 | Á | CAPITAL A WITH ACUTE ACCENT	 | 'A  A'		     |
-| C2 | 194 | Â | CAPITAL A WITH CIRCUMFLEX ACCENT| ^A  A^  A>		     |
-| C3 | 195 | Ã | CAPITAL A WITH TILDE		 | ~A  A~  A-		     |
-| C4 | 196 | Ä | CAPITAL A WITH DIAERESIS	 | "A  A"		     |
-| C5 | 197 | Ã… | CAPITAL A WITH RING ABOVE	 | oA  Ao  A*  OA  *A	     |
-| C6 | 198 | Æ | CAPITAL LIGATURE AE		 | AE			     |
-| C7 | 199 | Ç | CAPITAL C WITH CEDILLA		 | ,C  C,		     |
-| C8 | 200 | È | CAPITAL E WITH GRAVE ACCENT	 | `E  E`		     |
-| C9 | 201 | É | CAPITAL E WITH ACUTE ACCENT	 | 'E  E'		     |
-| CA | 202 | Ê | CAPITAL E WITH CIRCUMFLEX ACCENT| ^E  E^  E>		     |
-| CB | 203 | Ë | CAPITAL E WITH DIAERESIS	 | "E  E"		     |
-| CC | 204 | Ì | CAPITAL I WITH GRAVE ACCENT	 | `I  I`		     |
-| CD | 205 | Í | CAPITAL I WITH ACUTE ACCENT	 | 'I  I'		     |
-| CE | 206 | ÃŽ | CAPITAL I WITH CIRCUMFLEX ACCENT| ^I  I^  I>		     |
-| CF | 207 | Ï | CAPITAL I WITH DIAERESIS	 | "I  I"		     |
-| D0 | 208 | Ð | CAPITAL ETH			 | D-			     |
-| D1 | 209 | Ñ | CAPITAL N WITH TILDE		 | ~N  N~  N-		     |
-| D2 | 210 | Ã’ | CAPITAL O WITH GRAVE ACCENT	 | `O  O`		     |
-| D3 | 211 | Ó | CAPITAL O WITH ACUTE ACCENT	 | 'O  O'		     |
-| D4 | 212 | Ô | CAPITAL O WITH CIRCUMFLEX ACCENT| ^O  O^  O>		     |
-| D5 | 213 | Õ | CAPITAL O WITH TILDE		 | ~O  O~  O-		     |
-| D6 | 214 | Ö | CAPITAL O WITH DIAERESIS	 | "O  O"		     |
-| D7 | 215 | × | MULTIPLICATION SIGN		 | x   xx  XX  mu  MU	     |
-| D8 | 216 | Ø | CAPITAL O WITH STROKE		 | /O  O/		     |
-| D9 | 217 | Ù | CAPITAL U WITH GRAVE ACCENT	 | `U  U`		     |
-| DA | 218 | Ú | CAPITAL U WITH ACUTE ACCENT	 | 'U  U'		     |
-| DB | 219 | Û | CAPITAL U WITH CIRCUMFLEX ACCENT| ^U  U^  U>		     |
-| DC | 220 | Ü | CAPITAL U WITH DIAERESIS	 | "U  U"		     |
-| DD | 221 | Ý | CAPITAL Y WITH ACUTE ACCENT	 | 'Y  Y'		     |
-| DE | 222 | Þ | CAPITAL THORN			 | P   TH  |P		     |
-| DF | 223 | ß | SMALL SHARP S			 | ss			     |
-| E0 | 224 | à | SMALL A WITH GRAVE ACCENT	 | `a  a`		     |
-| E1 | 225 | á | SMALL A WITH ACUTE ACCENT	 | 'a  a'		     |
-| E2 | 226 | â | SMALL A WITH CIRCUMFLEX ACCENT  | ^a  a^  a>		     |
-| E3 | 227 | ã | SMALL A WITH TILDE		 | ~a  a~  a-		     |
-| E4 | 228 | ä | SMALL A WITH DIAERESIS		 | "a  a"		     |
-| E5 | 229 | å | SMALL A WITH RING ABOVE	 | oa  ao  Oa  a*  *a	     |
-| E6 | 230 | æ | SMALL LIGATURE AE		 | ae			     |
-| E7 | 231 | ç | SMALL C WITH CEDILLA		 | ,c  c,		     |
-| E8 | 232 | è | SMALL E WITH GRAVE ACCENT	 | `e  e`		     |
-| E9 | 233 | é | SMALL E WITH ACUTE ACCENT	 | 'e  e'		     |
-| EA | 234 | ê | SMALL E WITH CIRCUMFLEX ACCENT  | ^e  e^  e>		     |
-| EB | 235 | ë | SMALL E WITH DIAERESIS		 | "e  e"		     |
-| EC | 236 | ì | SMALL I WITH GRAVE ACCENT	 | `i  i`		     |
-| ED | 237 | í | SMALL I WITH ACUTE ACCENT	 | 'i  i'		     |
-| EE | 238 | î | SMALL I WITH CIRCUMFLEX ACCENT  | ^i  i^  i>		     |
-| EF | 239 | ï | SMALL I WITH DIAERESIS		 | "i  i"		     |
-| F0 | 240 | ð | SMALL ETH			 | d-			     |
-| F1 | 241 | ñ | SMALL N WITH TILDE		 | ~n  n~  n-		     |
-| F2 | 242 | ò | SMALL O WITH GRAVE ACCENT	 | `o  o`		     |
-| F3 | 243 | ó | SMALL O WITH ACUTE ACCENT	 | 'o  o'		     |
-| F4 | 244 | ô | SMALL O WITH CIRCUMFLEX ACCENT  | ^o  o^  o>		     |
-| F5 | 245 | õ | SMALL O WITH TILDE		 | ~o  o~  o-		     |
-| F6 | 246 | ö | SMALL O WITH DIAERESIS		 | "o  o"		     |
-| F7 | 247 | ÷ | DIVISION SIGN			 | -:  :-		     |
-| F8 | 248 | ø | SMALL O WITH OBLIQUE BAR	 | /o  o/		     |
-| F9 | 249 | ù | SMALL U WITH GRAVE ACCENT	 | `u  u`		     |
-| FA | 250 | ú | SMALL U WITH ACUTE ACCENT	 | 'u  u'		     |
-| FB | 251 | û | SMALL U WITH CIRCUMFLEX ACCENT  | ^u  u^  u>		     |
-| FC | 252 | ü | SMALL U WITH DIAERESIS		 | "u  u"		     |
-| FD | 253 | ý | SMALL Y WITH ACUTE ACCENT	 | 'y  y'		     |
-| FE | 254 | þ | SMALL THORN			 | p   th  |p		     |
-| FF | 255 | ÿ | SMALL Y WITH DIAERESIS		 | "y  y"		     |
-+----+-----+---+---------------------------------+---------------------------+
-
-
-Deprecated
-----------
-
-XCursesProgramName is no longer used. To set the program name, you must 
-use Xinitscr(), or PDC_set_title() to set just the window title.
-
-The XCursesExit() function is now called automatically via atexit(). 
-(Multiple calls to it are OK, so you don't need to remove it if you've 
-already added it for previous versions of PDCurses.)
-
-XCURSES is no longer defined automatically, but need not be defined, 
-unless you want the X11-specific prototypes. (Normal curses programs 
-won't need it.)
diff --git a/src/other/PDCurses/dos/README b/src/other/PDCurses/dos/README
deleted file mode 100644
index 569034b..0000000
--- a/src/other/PDCurses/dos/README
+++ /dev/null
@@ -1,49 +0,0 @@
-PDCurses for DOS
-================
-
-This directory contains PDCurses source code files specific to DOS.
-
-
-Building
---------
-
-. Choose the appropriate makefile for your compiler:
-
-	bccdos.mak	- Borland C++ 3.0+
-	gccdos.mak	- DJGPP V2
-	mscdos.mak	- Microsoft C
-	wccdos16.mak	- Watcom 10.6+ (16-bit)
-	wccdos4g.mak	- Watcom 10.6+ (32-bit)
-
-. For 16-bit compilers, you can change the memory MODEL in the makefile.
-  (Large model is the default, and recommended.)
-
-. Optionally, you can build in a different directory than the platform
-  directory by setting PDCURSES_SRCDIR to point to the directory where
-  you unpacked PDCurses, and changing to your target directory:
-
-	set PDCURSES_SRCDIR=c:\pdcurses
-
-. Build it:
-
-	make -f makefile
-
-  (For Watcom, use "wmake" instead of "make"; for MSVC, "nmake".) You'll
-  get the libraries (pdcurses.lib or .a, depending on your compiler; and
-  panel.lib or .a), the demos (*.exe), and a lot of object files. Note
-  that the panel library is just a copy of the main library, provided 
-  for convenience; both panel and curses functions are in the main 
-  library.
-
-
-Distribution Status
--------------------
-
-The files in this directory are released to the Public Domain.
-
-
-Acknowledgements
-----------------
-
-Watcom C port was provided by Pieter Kunst <kunst at prl.philips.nl>
-DJGPP 1.x port was provided by David Nugent <davidn at csource.oz.au>
diff --git a/src/other/PDCurses/dos/bccdos.lrf b/src/other/PDCurses/dos/bccdos.lrf
deleted file mode 100644
index 9bd18c6..0000000
--- a/src/other/PDCurses/dos/bccdos.lrf
+++ /dev/null
@@ -1,9 +0,0 @@
-+addch.obj +addchstr.obj +addstr.obj +attr.obj +beep.obj +bkgd.obj &
-+border.obj +clear.obj +color.obj +delch.obj +deleteln.obj +deprec.obj &
-+getch.obj +getstr.obj +getyx.obj +inch.obj +inchstr.obj +initscr.obj &
-+inopts.obj +insch.obj +insstr.obj +instr.obj +kernel.obj +keyname.obj &
-+mouse.obj +move.obj +outopts.obj +overlay.obj +pad.obj +panel.obj &
-+printw.obj +refresh.obj +scanw.obj +scr_dump.obj +scroll.obj +slk.obj &
-+termattr.obj +terminfo.obj +touch.obj +util.obj +window.obj +debug.obj &
-+pdcclip.obj +pdcdisp.obj +pdcgetsc.obj +pdckbd.obj +pdcscrn.obj &
-+pdcsetsc.obj +pdcutil.obj ,lib.map
diff --git a/src/other/PDCurses/dos/bccdos.mak b/src/other/PDCurses/dos/bccdos.mak
deleted file mode 100644
index 6361a4d..0000000
--- a/src/other/PDCurses/dos/bccdos.mak
+++ /dev/null
@@ -1,82 +0,0 @@
-# Borland MAKE Makefile for PDCurses library - DOS BC++ 3.0+
-#
-# Usage: make -f [path\]bccdos.mak [DEBUG=] [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.lib|testcurs.exe...]
-
-# Change the memory MODEL here, if desired
-MODEL = l
-
-O = obj
-
-!ifndef PDCURSES_SRCDIR
-PDCURSES_SRCDIR = ..
-!endif
-
-!include $(PDCURSES_SRCDIR)\version.mif
-!include $(PDCURSES_SRCDIR)\libobjs.mif
-
-osdir		= $(PDCURSES_SRCDIR)\dos
-
-!ifdef DEBUG
-CFLAGS		= -N -v -y -DPDCDEBUG 
-!else
-CFLAGS		= -O 
-!endif
-
-CPPFLAGS	= -I$(PDCURSES_SRCDIR)
-
-BUILD		= $(CC) -1- -K -G -rd -d -w-eff -w-par -c \
--m$(MODEL) $(CFLAGS) $(CPPFLAGS)
-
-LIBEXE		= tlib /C /E
-
-LIBCURSES	= pdcurses.lib
-
-all:	$(LIBCURSES) $(DEMOS)
-
-clean:
-	-del *.obj
-	-del *.lib
-	-del *.map
-	-del *.exe
-
-demos:	$(DEMOS)
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	-del $@
-	$(LIBEXE) $@ @$(osdir)\bccdos.lrf
-	-copy $(LIBCURSES) panel.lib
-
-.autodepend
-
-{$(srcdir)\}.c.obj:
-	$(BUILD) $<
-
-{$(osdir)\}.c.obj:
-	$(BUILD) $<
-
-{$(demodir)\}.c.obj:
-	$(BUILD) $<
-
-.c.obj:
-	$(BUILD) $<
-
-.obj.exe:
-	$(CC) -m$(MODEL) -e$@ $** $(LIBCURSES)
-
-tuidemo.exe:	tuidemo.obj tui.obj $(LIBCURSES)
-	$(CC) -m$(MODEL) -e$@ $**
-
-tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
-	$(BUILD) -I$(demodir) $(demodir)\tui.c
-
-tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
-	$(BUILD) -I$(demodir) $(demodir)\tuidemo.c
-
-PLATFORM1 = Borland C++ 3.1
-PLATFORM2 = Borland C/C++ 3.1 for DOS
-ARCNAME = pdc$(VER)bcc
-
-!include $(PDCURSES_SRCDIR)\makedist.mif
diff --git a/src/other/PDCurses/dos/gccdos.mak b/src/other/PDCurses/dos/gccdos.mak
deleted file mode 100644
index 26a4ed3..0000000
--- a/src/other/PDCurses/dos/gccdos.mak
+++ /dev/null
@@ -1,87 +0,0 @@
-# GNU MAKE (3.79.1) Makefile for PDCurses library - DOS DJGPP V2.0+
-#
-# Usage: make -f [path\]gccdos.mak [DEBUG=Y] [target]
-#
-# where target can be any of:
-# [all|libs|demos|dist|pdcurses.a|testcurs.exe...]
-
-O = o
-
-ifndef PDCURSES_SRCDIR
-	PDCURSES_SRCDIR = ..
-endif
-
-include $(PDCURSES_SRCDIR)/version.mif
-include $(PDCURSES_SRCDIR)/libobjs.mif
-
-osdir		= $(PDCURSES_SRCDIR)/dos
-
-PDCURSES_DOS_H	= $(osdir)/pdcdos.h
-
-CC		= gcc
-
-ifeq ($(DEBUG),Y)
-	CFLAGS  = -g -Wall -DPDCDEBUG
-	LDFLAGS = -g
-else
-	CFLAGS  = -O2 -Wall
-	LDFLAGS =
-endif
-
-CFLAGS += -I$(PDCURSES_SRCDIR)
-
-LINK		= gcc
-
-LIBEXE		= ar
-LIBFLAGS	= rcv
-
-LIBCURSES	= pdcurses.a
-
-.PHONY: all libs clean demos dist
-
-all:	libs demos
-
-libs:	$(LIBCURSES)
-
-clean:
-	-del *.o
-	-del *.a
-	-del *.exe
-
-demos:	$(DEMOS)
-	strip *.exe
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	$(LIBEXE) $(LIBFLAGS) $@ $?
-	-copy $(LIBCURSES) panel.a
-
-$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS)
-$(PDCOBJS) : $(PDCURSES_DOS_H)
-$(DEMOS) : $(PDCURSES_CURSES_H) $(LIBCURSES)
-panel.o : $(PANEL_HEADER)
-terminfo.o: $(TERM_HEADER)
-
-$(LIBOBJS) : %.o: $(srcdir)/%.c
-	$(CC) -c $(CFLAGS) $<
-
-$(PDCOBJS) : %.o: $(osdir)/%.c
-	$(CC) -c $(CFLAGS) $<
-
-firework.exe newdemo.exe rain.exe testcurs.exe worm.exe xmas.exe \
-ptest.exe: %.exe: $(demodir)/%.c
-	$(CC) $(CFLAGS) -o$@ $< $(LIBCURSES)
-
-tuidemo.exe: tuidemo.o tui.o
-	$(LINK) $(LDFLAGS) -o$@ tuidemo.o tui.o $(LIBCURSES)
-
-tui.o: $(demodir)/tui.c $(demodir)/tui.h $(PDCURSES_CURSES_H)
-	$(CC) -c $(CFLAGS) -I$(demodir) -o$@ $<
-
-tuidemo.o: $(demodir)/tuidemo.c $(PDCURSES_CURSES_H)
-	$(CC) -c $(CFLAGS) -I$(demodir) -o$@ $<
-
-PLATFORM1 = DJGPP 2.03
-PLATFORM2 = DJGPP 2.03 for DOS
-ARCNAME = pdc$(VER)djg
-
-include $(PDCURSES_SRCDIR)/makedist.mif
diff --git a/src/other/PDCurses/dos/mscdos.lrf b/src/other/PDCurses/dos/mscdos.lrf
deleted file mode 100644
index b1fdf37..0000000
--- a/src/other/PDCurses/dos/mscdos.lrf
+++ /dev/null
@@ -1,50 +0,0 @@
--+addch.obj &
--+addchstr.obj &
--+addstr.obj &
--+attr.obj &
--+beep.obj &
--+bkgd.obj &
--+border.obj &
--+clear.obj &
--+color.obj &
--+delch.obj &
--+deleteln.obj &
--+deprec.obj &
--+getch.obj &
--+getstr.obj &
--+getyx.obj &
--+inch.obj & 
--+inchstr.obj &
--+initscr.obj &
--+inopts.obj &
--+insch.obj &
--+insstr.obj &
--+instr.obj &
--+kernel.obj &
--+keyname.obj &
--+mouse.obj &
--+move.obj & 
--+outopts.obj &
--+overlay.obj &
--+pad.obj &  
--+panel.obj &
--+printw.obj &
--+refresh.obj &
--+scanw.obj &
--+scr_dump.obj &
--+scroll.obj &
--+slk.obj &  
--+termattr.obj &
--+terminfo.obj &
--+touch.obj &
--+util.obj & 
--+window.obj &
--+debug.obj &
--+pdcclip.obj &
--+pdcdisp.obj &
--+pdcgetsc.obj &
--+pdckbd.obj &
--+pdcscrn.obj &
--+pdcsetsc.obj &
--+pdcutil.obj &
-,lib.map;
diff --git a/src/other/PDCurses/dos/mscdos.mak b/src/other/PDCurses/dos/mscdos.mak
deleted file mode 100644
index 3d778f4..0000000
--- a/src/other/PDCurses/dos/mscdos.mak
+++ /dev/null
@@ -1,114 +0,0 @@
-# NMAKE Makefile for PDCurses library - Microsoft C for DOS
-#
-# Usage: nmake -f [path\]mscdos.mak [DEBUG=] [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.lib|testcurs.exe...]
-
-# Change the memory MODEL here, if desired
-MODEL	= L       # one of L, S, M, T, H, C
-SIZE	= LARGE   # one of LARGE, SMALL, MEDIUM, TINY, HUGE, COMPACT
-
-O = obj
-
-!ifndef PDCURSES_SRCDIR
-PDCURSES_SRCDIR = ..
-!endif
-
-!include $(PDCURSES_SRCDIR)\version.mif
-!include $(PDCURSES_SRCDIR)\libobjs.mif
-
-osdir		= $(PDCURSES_SRCDIR)\dos
-
-PDCURSES_DOS_H	= $(osdir)\pdcdos.h
-
-CC		= cl
-
-!ifdef DEBUG
-CFLAGS		= /Od /Zi /DPDCDEBUG
-LDFLAGS		= /CO /NOE /SE:160 
-!else
-CFLAGS		= /Ox
-LDFLAGS		= /NOE /SE:160
-!endif
-
-CPPFLAGS	= -I$(PDCURSES_SRCDIR)
-
-BUILD		= $(CC) /J /nologo /c /D$(SIZE) /A$(MODEL) $(CFLAGS) $(CPPFLAGS)
-
-LINK		= link
-
-CCLIBS		=
-
-LIBEXE		= lib
-
-LIBCURSES	= pdcurses.lib
-
-all:	$(LIBCURSES) $(DEMOS)
-
-clean:
-	-del *.obj
-	-del *.lib
-	-del *.exe
-
-demos:	$(DEMOS)
-
-DEMOOBJS = $(DEMOS:.exe=.obj) tui.obj
-
-$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS)
-$(DEMOOBJS) : $(PDCURSES_CURSES_H)
-$(DEMOS) : $(LIBCURSES)
-panel.obj : $(PANEL_HEADER)
-terminfo.obj: $(TERM_HEADER)
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	$(LIBEXE) $@ @$(osdir)\mscdos.lrf
-	-copy $(LIBCURSES) panel.lib
-
-{$(srcdir)\}.c{}.obj:
-	$(BUILD) $<
-
-{$(osdir)\}.c{}.obj:
-	$(BUILD) $<
-
-{$(demodir)\}.c{}.obj:
-	$(BUILD) $<
-
-firework.exe: firework.obj
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-newdemo.exe: newdemo.obj
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-ptest.exe: ptest.obj
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-rain.exe: rain.obj
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-testcurs.exe: testcurs.obj
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-tuidemo.exe: tuidemo.obj tui.obj
-	$(LINK) $(LDFLAGS) $*.obj+tui.obj,$*,,$(LIBCURSES);
-
-worm.exe: worm.obj
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-xmas.exe: xmas.obj
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-ptest.obj: $(demodir)\ptest.c $(PANEL_HEADER)
-	$(BUILD) $(demodir)\ptest.c
-
-tui.obj: $(demodir)\tui.c $(demodir)\tui.h
-	$(BUILD) -I$(demodir) $(demodir)\tui.c
-
-tuidemo.obj: $(demodir)\tuidemo.c
-	$(BUILD) -I$(demodir) $(demodir)\tuidemo.c
-
-PLATFORM1 = Microsoft C
-PLATFORM2 = Microsoft C for DOS
-ARCNAME = pdc$(VER)msc
-
-!include $(PDCURSES_SRCDIR)\makedist.mif
diff --git a/src/other/PDCurses/dos/pdcclip.c b/src/other/PDCurses/dos/pdcclip.c
deleted file mode 100644
index 74607aa..0000000
--- a/src/other/PDCurses/dos/pdcclip.c
+++ /dev/null
@@ -1,129 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcdos.h"
-
-RCSID("$Id: pdcclip.c,v 1.33 2008/07/13 16:08:17 wmcbrine Exp $")
-
-#include <stdlib.h>
-
-/*man-start**************************************************************
-
-  Name:                                                         clipboard
-
-  Synopsis:
-        int PDC_getclipboard(char **contents, long *length);
-        int PDC_setclipboard(const char *contents, long length);
-        int PDC_freeclipboard(char *contents);
-        int PDC_clearclipboard(void);
-
-  Description:
-        PDC_getclipboard() gets the textual contents of the system's 
-        clipboard. This function returns the contents of the clipboard 
-        in the contents argument. It is the responsibilitiy of the 
-        caller to free the memory returned, via PDC_freeclipboard().
-        The length of the clipboard contents is returned in the length 
-        argument.
-
-        PDC_setclipboard copies the supplied text into the system's 
-        clipboard, emptying the clipboard prior to the copy.
-
-        PDC_clearclipboard() clears the internal clipboard.
-
-  Return Values:
-        indicator of success/failure of call.
-        PDC_CLIP_SUCCESS        the call was successful
-        PDC_CLIP_MEMORY_ERROR   unable to allocate sufficient memory for 
-                                the clipboard contents
-        PDC_CLIP_EMPTY          the clipboard contains no text
-        PDC_CLIP_ACCESS_ERROR   no clipboard support
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_getclipboard                        -       -       -
-        PDC_setclipboard                        -       -       -
-        PDC_freeclipboard                       -       -       -
-        PDC_clearclipboard                      -       -       -
-
-**man-end****************************************************************/
-
-/* global clipboard contents, should be NULL if none set */
-
-static char *pdc_DOS_clipboard = NULL;
-
-int PDC_getclipboard(char **contents, long *length)
-{
-    int len;
-
-    PDC_LOG(("PDC_getclipboard() - called\n"));
-
-    if (!pdc_DOS_clipboard)
-        return PDC_CLIP_EMPTY;
-
-    len = strlen(pdc_DOS_clipboard);
-    if ((*contents = malloc(len + 1)) == NULL)
-        return PDC_CLIP_MEMORY_ERROR;
-
-    strcpy(*contents, pdc_DOS_clipboard);
-    *length = len;
-
-    return PDC_CLIP_SUCCESS;
-}
-
-int PDC_setclipboard(const char *contents, long length)
-{
-    PDC_LOG(("PDC_setclipboard() - called\n"));
-
-    if (pdc_DOS_clipboard)
-    {
-        free(pdc_DOS_clipboard);
-        pdc_DOS_clipboard = NULL;
-    }
-
-    if (contents)
-    {
-        if ((pdc_DOS_clipboard = malloc(length + 1)) == NULL)
-            return PDC_CLIP_MEMORY_ERROR;
-
-        strcpy(pdc_DOS_clipboard, contents);
-    }
-
-    return PDC_CLIP_SUCCESS;
-}
-
-int PDC_freeclipboard(char *contents)
-{
-    PDC_LOG(("PDC_freeclipboard() - called\n"));
-
-    /* should we also free empty the system clipboard? probably not */
-
-    if (contents)
-    {
-
-        /* NOTE: We free the memory, but we can not set caller's pointer 
-           to NULL, so if caller calls again then will try to access 
-           free'd memory.  We 1st overwrite memory with a string so if 
-           caller tries to use free memory they won't get what they 
-           expect & hopefully notice. */
-
-        /* memset(contents, 0xFD, strlen(contents)); */
-
-        if (strlen(contents) >= strlen("PDCURSES"))
-            strcpy(contents, "PDCURSES");
-
-        free(contents);
-    }
-
-    return PDC_CLIP_SUCCESS;
-}
-
-int PDC_clearclipboard(void)
-{
-    PDC_LOG(("PDC_clearclipboard() - called\n"));
-
-    if (pdc_DOS_clipboard) 
-    {
-        free(pdc_DOS_clipboard);
-        pdc_DOS_clipboard = NULL;
-    }
-
-    return PDC_CLIP_SUCCESS;
-}
diff --git a/src/other/PDCurses/dos/pdcdisp.c b/src/other/PDCurses/dos/pdcdisp.c
deleted file mode 100644
index aae9bfb..0000000
--- a/src/other/PDCurses/dos/pdcdisp.c
+++ /dev/null
@@ -1,158 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcdos.h"
-
-RCSID("$Id: pdcdisp.c,v 1.65 2008/07/13 16:08:17 wmcbrine Exp $")
-
-/* ACS definitions originally by jshumate at wrdis01.robins.af.mil -- these
-   match code page 437 and compatible pages (CP850, CP852, etc.) */
-
-#ifdef CHTYPE_LONG
-
-# define A(x) ((chtype)x | A_ALTCHARSET)
-
-chtype acs_map[128] =
-{
-    A(0), A(1), A(2), A(3), A(4), A(5), A(6), A(7), A(8), A(9), A(10), 
-    A(11), A(12), A(13), A(14), A(15), A(16), A(17), A(18), A(19), 
-    A(20), A(21), A(22), A(23), A(24), A(25), A(26), A(27), A(28), 
-    A(29), A(30), A(31), ' ', '!', '"', '#', '$', '%', '&', '\'', '(', 
-    ')', '*',
-
-    A(0x1a), A(0x1b), A(0x18), A(0x19),
-
-    '/',
-
-    0xdb,
-
-    '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', 
-    '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 
-    'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 
-    'X', 'Y', 'Z', '[', '\\', ']', '^', '_',
-
-    A(0x04), 0xb1,
-
-    'b', 'c', 'd', 'e',
-
-    0xf8, 0xf1, 0xb0, A(0x0f), 0xd9, 0xbf, 0xda, 0xc0, 0xc5, 0x2d, 0x2d, 
-    0xc4, 0x2d, 0x5f, 0xc3, 0xb4, 0xc1, 0xc2, 0xb3, 0xf3, 0xf2, 0xe3, 
-    0xd8, 0x9c, 0xf9,
-
-    A(127)
-};
-
-# undef A
-
-#endif
-
-#ifdef __PACIFIC__
-void movedata(unsigned sseg, unsigned soff, unsigned dseg,
-              unsigned doff, unsigned n)
-{
-    far char *src = MK_FP(sseg, soff);
-    far char *dst = MK_FP(dseg, doff);
-
-    while (n--)
-        *dst++ = *src++;
-}
-#endif
-
-/* position hardware cursor at (y, x) */
-
-void PDC_gotoyx(int row, int col)
-{
-    PDCREGS regs;
-
-    PDC_LOG(("PDC_gotoyx() - called: row %d col %d\n", row, col));
-
-    regs.h.ah = 0x02;
-    regs.h.bh = 0;
-    regs.h.dh = (unsigned char) row;
-    regs.h.dl = (unsigned char) col;
-    PDCINT(0x10, regs);
-}
-
-/* update the given physical line to look like the corresponding line in 
-   curscr */
-
-void PDC_transform_line(int lineno, int x, int len, const chtype *srcp)
-{
-    int j;
-
-    PDC_LOG(("PDC_transform_line() - called: line %d\n", lineno));
-
-    if (pdc_direct_video)
-    {
-#if SMALL || MEDIUM
-# ifndef __PACIFIC__
-        struct SREGS segregs;
-# endif
-        int ds;
-#endif
-        /* this should be enough for the maximum width of a screen */
-
-        struct {unsigned char text, attr;} temp_line[256];
-
-        /* replace the attribute part of the chtype with the actual 
-           color value for each chtype in the line */
-
-        for (j = 0; j < len; j++)
-        {
-            chtype ch = srcp[j];
-
-            temp_line[j].attr = pdc_atrtab[ch >> PDC_ATTR_SHIFT];
-#ifdef CHTYPE_LONG
-            if (ch & A_ALTCHARSET && !(ch & 0xff80))
-                ch = acs_map[ch & 0x7f];
-#endif
-            temp_line[j].text = ch & 0xff;
-        }
-
-#ifdef __DJGPP__
-        dosmemput(temp_line, len * 2,
-                  (unsigned long)_FAR_POINTER(pdc_video_seg,
-                  pdc_video_ofs + (lineno * curscr->_maxx + x) * 2));
-#else
-# if SMALL || MEDIUM
-#  ifdef __PACIFIC__
-        ds = FP_SEG((void far *) temp_line);
-#  else
-        segread(&segregs);
-        ds = segregs.ds;
-#  endif
-        movedata(ds, (int)temp_line, pdc_video_seg,
-                 pdc_video_ofs + (lineno * curscr->_maxx + x) * 2, len * 2);
-# else
-        memcpy((void *)_FAR_POINTER(pdc_video_seg,
-               pdc_video_ofs + (lineno * curscr->_maxx + x) * 2),
-               temp_line, len * 2);
-# endif
-#endif
-
-    }
-    else
-        for (j = 0; j < len;)
-        {
-            PDCREGS regs;
-            unsigned short count = 1;
-            chtype ch = srcp[j];
-
-            while ((j + count < len) && (ch == srcp[j + count]))
-                count++;
-
-            PDC_gotoyx(lineno, j + x);
-
-            regs.h.ah = 0x09;
-            regs.W.bx = pdc_atrtab[ch >> PDC_ATTR_SHIFT];
-            regs.W.cx = count;
-#ifdef CHTYPE_LONG
-            if (ch & A_ALTCHARSET && !(ch & 0xff80))
-                ch = acs_map[ch & 0x7f];
-#endif
-            regs.h.al = (unsigned char) (ch & 0xff);
-
-            PDCINT(0x10, regs);
-
-            j += count;
-        }
-}
diff --git a/src/other/PDCurses/dos/pdcdos.h b/src/other/PDCurses/dos/pdcdos.h
deleted file mode 100644
index 436699d..0000000
--- a/src/other/PDCurses/dos/pdcdos.h
+++ /dev/null
@@ -1,186 +0,0 @@
-/* Public Domain Curses */
-
-/* $Id: pdcdos.h,v 1.30 2008/07/13 16:08:17 wmcbrine Exp $ */
-
-#include <curspriv.h>
-#include <string.h>
-
-#if defined(_MSC_VER) || defined(_QC)
-# define MSC 1
-#endif
-
-#if defined(__PACIFIC__) && !defined(__SMALL__)
-# define __SMALL__
-#endif
-
-#if defined(__HIGHC__) || MSC
-# include <bios.h>
-#endif
-
-/*----------------------------------------------------------------------
- *  MEMORY MODEL SUPPORT:
- *
- *  MODELS
- *    TINY    cs,ds,ss all in 1 segment (not enough memory!)
- *    SMALL   cs:1 segment, ds:1 segment
- *    MEDIUM  cs:many segments, ds:1 segment
- *    COMPACT cs:1 segment, ds:many segments
- *    LARGE   cs:many segments, ds:many segments
- *    HUGE    cs:many segments, ds:segments > 64K
- */
-
-#ifdef __TINY__
-# define SMALL 1
-#endif
-#ifdef __SMALL__
-# define SMALL 1
-#endif
-#ifdef __MEDIUM__
-# define MEDIUM 1
-#endif
-#ifdef __COMPACT__
-# define COMPACT 1
-#endif
-#ifdef __LARGE__
-# define LARGE 1
-#endif
-#ifdef __HUGE__
-# define HUGE 1
-#endif
-
-#include <dos.h>
-
-extern unsigned char *pdc_atrtab;
-extern int pdc_adapter;
-extern int pdc_scrnmode;
-extern int pdc_font;
-extern bool pdc_direct_video;
-extern bool pdc_bogus_adapter;
-extern unsigned pdc_video_seg;
-extern unsigned pdc_video_ofs;
-
-#ifdef __DJGPP__        /* Note: works only in plain DOS... */
-# if DJGPP == 2
-#  define _FAR_POINTER(s,o) ((((int)(s)) << 4) + ((int)(o)))
-# else
-#  define _FAR_POINTER(s,o) (0xe0000000 + (((int)(s)) << 4) + ((int)(o)))
-# endif
-# define _FP_SEGMENT(p)     (unsigned short)((((long)p) >> 4) & 0xffff)
-#else
-# ifdef __TURBOC__
-#  define _FAR_POINTER(s,o) MK_FP(s,o)
-# else
-#  if defined(__WATCOMC__) && defined(__FLAT__)
-#   define _FAR_POINTER(s,o) ((((int)(s)) << 4) + ((int)(o)))
-#  else
-#   define _FAR_POINTER(s,o) (((long)s << 16) | (long)o)
-#  endif
-# endif
-# define _FP_SEGMENT(p)     (unsigned short)(((long)p) >> 4)
-#endif
-#define _FP_OFFSET(p)       ((unsigned short)p & 0x000f)
-
-#ifdef __DJGPP__
-# include <sys/movedata.h>
-unsigned char getdosmembyte(int offs);
-unsigned short getdosmemword(int offs);
-unsigned long getdosmemdword(int offs);
-void setdosmembyte(int offs, unsigned char b);
-void setdosmemword(int offs, unsigned short w);
-#else
-# if SMALL || MEDIUM || MSC
-#  define PDC_FAR far
-# else
-#  define PDC_FAR
-# endif
-# define getdosmembyte(offs) \
-    (*((unsigned char PDC_FAR *) _FAR_POINTER(0,offs)))
-# define getdosmemword(offs) \
-    (*((unsigned short PDC_FAR *) _FAR_POINTER(0,offs)))
-# define getdosmemdword(offs) \
-    (*((unsigned long PDC_FAR *) _FAR_POINTER(0,offs)))
-# define setdosmembyte(offs,x) \
-    (*((unsigned char PDC_FAR *) _FAR_POINTER(0,offs)) = (x))
-# define setdosmemword(offs,x) \
-    (*((unsigned short PDC_FAR *) _FAR_POINTER(0,offs)) = (x))
-#endif
-
-#if defined(__WATCOMC__) && defined(__386__)
-
-typedef union
-{
-    struct
-    {
-        unsigned long edi, esi, ebp, res, ebx, edx, ecx, eax;
-    } d;
-
-    struct
-    {
-        unsigned short di, di_hi, si, si_hi, bp, bp_hi, res, res_hi,
-                       bx, bx_hi, dx, dx_hi, cx, cx_hi, ax, ax_hi, 
-                       flags, es, ds, fs, gs, ip, cs, sp, ss;
-    } w;
-
-    struct
-    {
-        unsigned char edi[4], esi[4], ebp[4], res[4],
-                      bl, bh, ebx_b2, ebx_b3, dl, dh, edx_b2, edx_b3,
-                      cl, ch, ecx_b2, ecx_b3, al, ah, eax_b2, eax_b3;
-    } h;
-} pdc_dpmi_regs;
-
-void PDC_dpmi_int(int, pdc_dpmi_regs *);
-
-#endif
-
-#ifdef __DJGPP__
-# include <dpmi.h>
-# define PDCREGS __dpmi_regs
-# define PDCINT(vector, regs) __dpmi_int(vector, &regs)
-#else
-# ifdef __WATCOMC__
-#  ifdef __386__
-#   define PDCREGS pdc_dpmi_regs
-#   define PDCINT(vector, regs) PDC_dpmi_int(vector, &regs)
-#  else
-#   define PDCREGS union REGPACK
-#   define PDCINT(vector, regs) intr(vector, &regs)
-#  endif
-# else
-#  define PDCREGS union REGS
-#  define PDCINT(vector, regs) int86(vector, &regs, &regs)
-# endif
-#endif
-
-/* Wide registers in REGS: w or x? */
-
-#ifdef __WATCOMC__
-# define W w
-#else
-# define W x
-#endif
-
-/* Monitor (terminal) type information */
-
-enum
-{
-    _NONE, _MDA, _CGA,
-    _EGACOLOR = 0x04, _EGAMONO,
-    _VGACOLOR = 0x07, _VGAMONO,
-    _MCGACOLOR = 0x0a, _MCGAMONO,
-    _MDS_GENIUS = 0x30
-};
-
-/* Text-mode font size information */
-
-enum
-{
-    _FONT8 = 8,
-    _FONT14 = 14,
-    _FONT15,    /* GENIUS */
-    _FONT16
-};
-
-#ifdef __PACIFIC__
-void movedata(unsigned, unsigned, unsigned, unsigned, unsigned);
-#endif
diff --git a/src/other/PDCurses/dos/pdcgetsc.c b/src/other/PDCurses/dos/pdcgetsc.c
deleted file mode 100644
index 290db5a..0000000
--- a/src/other/PDCurses/dos/pdcgetsc.c
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcdos.h"
-
-RCSID("$Id: pdcgetsc.c,v 1.42 2008/07/13 16:08:17 wmcbrine Exp $")
-
-#include <stdlib.h>
-
-/* return width of screen/viewport */
-
-int PDC_get_columns(void)
-{
-    PDCREGS regs;
-    int cols;
-    const char *env_cols;
-
-    PDC_LOG(("PDC_get_columns() - called\n"));
-
-    /* use the value from COLS environment variable, if set. MH 10-Jun-92 */
-    /* and use the minimum of COLS and return from int10h    MH 18-Jun-92 */
-
-    regs.h.ah = 0x0f;
-    PDCINT(0x10, regs);
-    cols = (int)regs.h.ah;
-
-    env_cols = getenv("COLS");
-
-    if (env_cols)
-        cols = min(atoi(env_cols), cols);
-
-    PDC_LOG(("PDC_get_columns() - returned: cols %d\n", cols));
-
-    return cols;
-}
-
-/* get the cursor size/shape */
-
-int PDC_get_cursor_mode(void)
-{
-    PDC_LOG(("PDC_get_cursor_mode() - called\n"));
-
-    return getdosmemword(0x460);
-}
-
-/* return number of screen rows */
-
-int PDC_get_rows(void)
-{
-    const char *env_rows;
-    int rows;
-
-    PDC_LOG(("PDC_get_rows() - called\n"));
-
-    /* use the value from LINES environment variable, if set. MH 10-Jun-92 */
-    /* and use the minimum of LINES and *ROWS.                MH 18-Jun-92 */
-
-    rows = getdosmembyte(0x484) + 1;
-    env_rows = getenv("LINES");
-
-    if (env_rows)
-        rows = min(atoi(env_rows), rows);
-
-    if (rows == 1 && pdc_adapter == _MDS_GENIUS)
-        rows = 66;
-    if (rows == 1 && pdc_adapter == _MDA)
-        rows = 25;
-
-    if (rows == 1)
-    {
-        rows = 25;
-        pdc_direct_video = FALSE;
-    }
-
-    switch (pdc_adapter)
-    {
-    case _EGACOLOR:
-    case _EGAMONO:
-        switch (rows)
-        {
-        case 25:
-        case 43:
-            break;
-        default:
-            rows = 25;
-        }
-        break;
-
-    case _VGACOLOR:
-    case _VGAMONO:
-        break;
-
-    default:
-        rows = 25;
-        break;
-    }
-
-    PDC_LOG(("PDC_get_rows() - returned: rows %d\n", rows));
-
-    return rows;
-}
diff --git a/src/other/PDCurses/dos/pdckbd.c b/src/other/PDCurses/dos/pdckbd.c
deleted file mode 100644
index 652cb0c..0000000
--- a/src/other/PDCurses/dos/pdckbd.c
+++ /dev/null
@@ -1,511 +0,0 @@
-/* Public Domain Curses */
-                          
-/* MS C doesn't return flags from int86() */
-#ifdef MSC
-# define USE_KBHIT
-#endif
-
-#ifdef USE_KBHIT
-# include <conio.h>
-#endif
-
-#include "pdcdos.h"
-
-RCSID("$Id: pdckbd.c,v 1.87 2008/07/13 16:08:17 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         pdckbd
-
-  Synopsis:
-        unsigned long PDC_get_input_fd(void);
-
-  Description:
-        PDC_get_input_fd() returns the file descriptor that PDCurses 
-        reads its input from. It can be used for select().
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_get_input_fd                        -       -       -
-
-**man-end****************************************************************/
-
-#ifdef __DJGPP__
-# include <fcntl.h>
-# include <io.h>
-# include <signal.h>
-#endif
-
-/************************************************************************
- *    Table for key code translation of function keys in keypad mode    *
- *    These values are for strict IBM keyboard compatibles only         *
- ************************************************************************/
-
-static short key_table[] =
-{
-    -1,             ALT_ESC,        -1,             0,
-    -1,             -1,             -1,             -1,
-    -1,             -1,             -1,             -1,
-    -1,             -1,             ALT_BKSP,       KEY_BTAB,
-    ALT_Q,          ALT_W,          ALT_E,          ALT_R,
-    ALT_T,          ALT_Y,          ALT_U,          ALT_I,
-    ALT_O,          ALT_P,          ALT_LBRACKET,   ALT_RBRACKET,
-    ALT_ENTER,      -1,             ALT_A,          ALT_S,
-    ALT_D,          ALT_F,          ALT_G,          ALT_H,
-    ALT_J,          ALT_K,          ALT_L,          ALT_SEMICOLON,
-    ALT_FQUOTE,     ALT_BQUOTE,     -1,             ALT_BSLASH,
-    ALT_Z,          ALT_X,          ALT_C,          ALT_V,
-    ALT_B,          ALT_N,          ALT_M,          ALT_COMMA,
-    ALT_STOP,       ALT_FSLASH,     -1,             ALT_PADSTAR,
-    -1,             -1,             -1,             KEY_F(1),
-    KEY_F(2),       KEY_F(3),       KEY_F(4),       KEY_F(5),
-    KEY_F(6),       KEY_F(7),       KEY_F(8),       KEY_F(9),
-    KEY_F(10),      -1,             -1,             KEY_HOME,
-    KEY_UP,         KEY_PPAGE,      ALT_PADMINUS,   KEY_LEFT,
-    KEY_B2,         KEY_RIGHT,      ALT_PADPLUS,    KEY_END,
-    KEY_DOWN,       KEY_NPAGE,      KEY_IC,         KEY_DC,
-    KEY_F(13),      KEY_F(14),      KEY_F(15),      KEY_F(16),
-    KEY_F(17),      KEY_F(18),      KEY_F(19),      KEY_F(20),
-    KEY_F(21),      KEY_F(22),      KEY_F(25),      KEY_F(26),
-    KEY_F(27),      KEY_F(28),      KEY_F(29),      KEY_F(30),
-    KEY_F(31),      KEY_F(32),      KEY_F(33),      KEY_F(34),
-    KEY_F(37),      KEY_F(38),      KEY_F(39),      KEY_F(40),
-    KEY_F(41),      KEY_F(42),      KEY_F(43),      KEY_F(44),
-    KEY_F(45),      KEY_F(46),      -1,             CTL_LEFT,
-    CTL_RIGHT,      CTL_END,        CTL_PGDN,       CTL_HOME,
-    ALT_1,          ALT_2,          ALT_3,          ALT_4,
-    ALT_5,          ALT_6,          ALT_7,          ALT_8,
-    ALT_9,          ALT_0,          ALT_MINUS,      ALT_EQUAL,
-    CTL_PGUP,       KEY_F(11),      KEY_F(12),      KEY_F(23),
-    KEY_F(24),      KEY_F(35),      KEY_F(36),      KEY_F(47),
-    KEY_F(48),      CTL_UP,         CTL_PADMINUS,   CTL_PADCENTER,
-    CTL_PADPLUS,    CTL_DOWN,       CTL_INS,        CTL_DEL,
-    CTL_TAB,        CTL_PADSLASH,   CTL_PADSTAR,    ALT_HOME,
-    ALT_UP,         ALT_PGUP,       -1,             ALT_LEFT,
-    -1,             ALT_RIGHT,      -1,             ALT_END,
-    ALT_DOWN,       ALT_PGDN,       ALT_INS,        ALT_DEL,
-    ALT_PADSLASH,   ALT_TAB,        ALT_PADENTER,   -1
-};
-
-unsigned long pdc_key_modifiers = 0L;
-
-static struct {unsigned short pressed, released;} button[3];
-
-static bool mouse_avail = FALSE, mouse_vis = FALSE, mouse_moved = FALSE,
-            mouse_button = FALSE, key_pressed = FALSE;
-
-static unsigned char mouse_scroll = 0;
-static PDCREGS ms_regs, old_ms;
-static unsigned short shift_status, old_shift = 0;
-static unsigned char keyboard_function = 0xff, shift_function = 0xff,
-                     check_function = 0xff;
-
-static const unsigned short button_map[3] = {0, 2, 1};
-
-unsigned long PDC_get_input_fd(void)
-{
-    PDC_LOG(("PDC_get_input_fd() - called\n"));
-
-    return (unsigned long)fileno(stdin);
-}
-
-void PDC_set_keyboard_binary(bool on)
-{
-    PDC_LOG(("PDC_set_keyboard_binary() - called\n"));
-
-#ifdef __DJGPP__
-    setmode(fileno(stdin), on ? O_BINARY : O_TEXT);
-    signal(SIGINT, on ? SIG_IGN : SIG_DFL);
-#endif
-}
-
-/* check if a key or mouse event is waiting */
-
-bool PDC_check_key(void)
-{
-    PDCREGS regs;
-
-    if (shift_function == 0xff)
-    {
-        int scan;
-
-        /* get shift status for all keyboards */
-
-        regs.h.ah = 0x02;
-        PDCINT(0x16, regs);
-        scan = regs.h.al;
-
-        /* get shift status for enhanced keyboards */
-
-        regs.h.ah = 0x12;
-        PDCINT(0x16, regs);
-
-        if (scan == regs.h.al && getdosmembyte(0x496) == 0x10)
-        {
-            keyboard_function = 0x10;
-            check_function = 0x11;
-            shift_function = 0x12;
-        }
-        else
-        {
-            keyboard_function = 0;
-            check_function = 1;
-            shift_function = 2;
-        }
-    }
-
-    regs.h.ah = shift_function;
-    PDCINT(0x16, regs);
-
-    shift_status = regs.W.ax;
-
-    if (mouse_vis)
-    {
-        unsigned short i;
-
-        ms_regs.W.ax = 3;
-        PDCINT(0x33, ms_regs);
-
-        mouse_button = FALSE;
-
-        for (i = 0; i < 3; i++)
-        {
-            regs.W.ax = 6;
-            regs.W.bx = button_map[i];
-            PDCINT(0x33, regs);
-            button[i].released = regs.W.bx;
-            if (regs.W.bx)
-            {
-                ms_regs.W.cx = regs.W.cx;
-                ms_regs.W.dx = regs.W.dx;
-                mouse_button = TRUE;
-            }
-
-            regs.W.ax = 5;
-            regs.W.bx = button_map[i];
-            PDCINT(0x33, regs);
-            button[i].pressed = regs.W.bx;
-            if (regs.W.bx)
-            {
-                ms_regs.W.cx = regs.W.cx;
-                ms_regs.W.dx = regs.W.dx;
-                mouse_button = TRUE;
-            }
-        }
-
-        mouse_scroll = ms_regs.h.bh;
-
-        mouse_moved = !mouse_button && ms_regs.h.bl &&
-                       ms_regs.h.bl == old_ms.h.bl &&
-                    (((ms_regs.W.cx ^ old_ms.W.cx) >> 3) ||
-                     ((ms_regs.W.dx ^ old_ms.W.dx) >> 3));
-
-        if (mouse_scroll || mouse_button || mouse_moved)
-            return TRUE;
-    }
-
-    if (old_shift && !shift_status)     /* modifier released */
-    {
-        if (!key_pressed && SP->return_key_modifiers)
-            return TRUE;
-    }
-    else if (!old_shift && shift_status)    /* modifier pressed */
-        key_pressed = FALSE;
-
-    old_shift = shift_status;
-
-#ifndef USE_KBHIT
-    regs.h.ah = check_function;
-    PDCINT(0x16, regs);
-
-    return !(regs.W.flags & 64);
-#else
-    return kbhit();
-#endif
-}
-
-static int _process_mouse_events(void)
-{
-    int i;
-    short shift_flags = 0;
-
-    memset(&pdc_mouse_status, 0, sizeof(pdc_mouse_status));
-
-    key_pressed = TRUE;
-    old_shift = shift_status;
-    SP->key_code = TRUE;
-
-    /* Set shift modifiers */
-
-    if (shift_status & 3)
-        shift_flags |= BUTTON_SHIFT;
-
-    if (shift_status & 4)
-        shift_flags |= BUTTON_CONTROL;
-
-    if (shift_status & 8)
-        shift_flags |= BUTTON_ALT;
-
-    /* Scroll wheel support for CuteMouse */
-
-    if (mouse_scroll)
-    {
-        pdc_mouse_status.changes = mouse_scroll & 0x80 ?
-            PDC_MOUSE_WHEEL_UP : PDC_MOUSE_WHEEL_DOWN;
-
-        pdc_mouse_status.x = -1;
-        pdc_mouse_status.y = -1;
-
-        return KEY_MOUSE;
-    }
-
-    if (mouse_moved)
-    {
-        pdc_mouse_status.changes = PDC_MOUSE_MOVED;
-
-        for (i = 0; i < 3; i++)
-        {
-            if (ms_regs.h.bl & (1 << button_map[i]))
-            {
-                pdc_mouse_status.button[i] = BUTTON_MOVED | shift_flags;
-                pdc_mouse_status.changes |= (1 << i);
-            }
-        }
-    }
-    else    /* button event */
-    {
-        for (i = 0; i < 3; i++)
-        {
-            if (button[i].pressed)
-            {
-                /* Check for a click -- a PRESS followed 
-                   immediately by a release */
-
-                if (!button[i].released)
-                {
-                    if (SP->mouse_wait)
-                    {
-                        PDCREGS regs;
-
-                        napms(SP->mouse_wait);
-
-                        regs.W.ax = 6;
-                        regs.W.bx = button_map[i];
-                        PDCINT(0x33, regs);
-
-                        pdc_mouse_status.button[i] = regs.W.bx ?
-                            BUTTON_CLICKED : BUTTON_PRESSED;
-                    }
-                    else
-                        pdc_mouse_status.button[i] = BUTTON_PRESSED;
-                }
-                else
-                    pdc_mouse_status.button[i] = BUTTON_CLICKED;
-            }
-
-            if (button[i].pressed || button[i].released)
-            {
-                pdc_mouse_status.button[i] |= shift_flags;
-                pdc_mouse_status.changes |= (1 << i);
-            }
-        }
-    }
-
-    pdc_mouse_status.x = ms_regs.W.cx >> 3;
-    pdc_mouse_status.y = ms_regs.W.dx >> 3;
-
-    old_ms = ms_regs;
-
-    return KEY_MOUSE;
-}
-
-/* return the next available key or mouse event */
-
-int PDC_get_key(void)
-{
-    PDCREGS regs;
-    int key, scan;
-
-    pdc_key_modifiers = 0;
-
-    if (mouse_vis && (mouse_scroll || mouse_button || mouse_moved))
-        return _process_mouse_events();
-
-    /* Return modifiers as keys? */
-
-    if (old_shift && !shift_status)
-    {
-        key = -1;
-
-        if (old_shift & 1)
-            key = KEY_SHIFT_R;
-
-        if (old_shift & 2)
-            key = KEY_SHIFT_L;
-
-        if (shift_function == 0x12)
-        {
-            if (old_shift & 0x400)
-                key = KEY_CONTROL_R;
-
-            if (old_shift & 0x100)
-                key = KEY_CONTROL_L;
-
-            if (old_shift & 0x800)
-                key = KEY_ALT_R;
-
-            if (old_shift & 0x200)
-                key = KEY_ALT_L;
-        }
-        else
-        {
-            if (old_shift & 4)
-                key = KEY_CONTROL_R;
-
-            if (old_shift & 8)
-                key = KEY_ALT_R;
-        }
-
-        key_pressed = FALSE;
-        old_shift = shift_status;
-
-        SP->key_code = TRUE;
-        return key;
-    }
-
-    regs.h.ah = keyboard_function;
-    PDCINT(0x16, regs);
-    key = regs.h.al;
-    scan = regs.h.ah;
-
-    if (SP->save_key_modifiers)
-    {
-        if (shift_status & 3)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_SHIFT;
-
-        if (shift_status & 4)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_CONTROL;
-
-        if (shift_status & 8)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_ALT;
-
-        if (shift_status & 0x20)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_NUMLOCK;
-    }
-
-    if (scan == 0x1c && key == 0x0a)    /* ^Enter */
-        key = CTL_ENTER;
-    else if (scan == 0xe0 && key == 0x0d)   /* PadEnter */
-        key = PADENTER;
-    else if (scan == 0xe0 && key == 0x0a)   /* ^PadEnter */
-        key = CTL_PADENTER;
-    else if (scan == 0x37 && key == 0x2a)   /* Star */
-        key = PADSTAR;
-    else if (scan == 0x4a && key == 0x2d)   /* Minus */
-        key = PADMINUS;
-    else if (scan == 0x4e && key == 0x2b)   /* Plus */
-        key = PADPLUS;
-    else if (scan == 0xe0 && key == 0x2f)   /* Slash */
-        key = PADSLASH;
-    else if (key == 0x00 || (key == 0xe0 && scan > 53 && scan != 86))
-        key = (scan > 0xa7) ? -1 : key_table[scan];
-
-    if (shift_status & 3)
-    {
-        switch (key)
-        {
-        case KEY_HOME:  /* Shift Home */
-            key = KEY_SHOME;
-            break;
-        case KEY_UP:    /* Shift Up */
-            key = KEY_SUP;
-            break;
-        case KEY_PPAGE: /* Shift PgUp */
-            key = KEY_SPREVIOUS;
-            break;
-        case KEY_LEFT:  /* Shift Left */
-            key = KEY_SLEFT;
-            break;
-        case KEY_RIGHT: /* Shift Right */
-            key = KEY_SRIGHT;
-            break;
-        case KEY_END:   /* Shift End */
-            key = KEY_SEND;
-            break;
-        case KEY_DOWN:  /* Shift Down */
-            key = KEY_SDOWN;
-            break;
-        case KEY_NPAGE: /* Shift PgDn */
-            key = KEY_SNEXT;
-            break;
-        case KEY_IC:    /* Shift Ins */
-            key = KEY_SIC;
-            break;
-        case KEY_DC:    /* Shift Del */
-            key = KEY_SDC;
-        }
-    }
-
-    key_pressed = TRUE;
-    SP->key_code = ((unsigned)key >= 256);
-
-    return key;
-}
-
-/* discard any pending keyboard or mouse input -- this is the core 
-   routine for flushinp() */
-
-void PDC_flushinp(void)
-{
-    PDC_LOG(("PDC_flushinp() - called\n"));
-
-    /* Force the BIOS keyboard buffer head and tail pointers to be 
-       the same...  Real nasty trick... */
-
-    setdosmemword(0x41a, getdosmemword(0x41c));
-}
-
-int PDC_mouse_set(void)
-{
-    PDCREGS regs;
-    unsigned long mbe = SP->_trap_mbe;
-
-    if (mbe && !mouse_avail)
-    {
-        regs.W.ax = 0;
-        PDCINT(0x33, regs);
-
-        mouse_avail = !!(regs.W.ax);
-    }
-
-    if (mbe)
-    {
-        if (mouse_avail && !mouse_vis)
-        {
-            memset(&old_ms, 0, sizeof(old_ms));
-
-            regs.W.ax = 1;
-            PDCINT(0x33, regs);
-
-            mouse_vis = TRUE;
-        }
-    }
-    else
-    {
-        if (mouse_avail && mouse_vis)
-        {
-            regs.W.ax = 2;
-            PDCINT(0x33, regs);
-
-            mouse_vis = FALSE;
-        }
-    }
-
-    return (mouse_avail || !mbe) ? OK : ERR;
-}
-
-int PDC_modifiers_set(void)
-{
-    key_pressed = FALSE;
-
-    return OK;
-}
diff --git a/src/other/PDCurses/dos/pdcscrn.c b/src/other/PDCurses/dos/pdcscrn.c
deleted file mode 100644
index ddfb095..0000000
--- a/src/other/PDCurses/dos/pdcscrn.c
+++ /dev/null
@@ -1,757 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcdos.h"
-
-RCSID("$Id: pdcscrn.c,v 1.89 2008/07/13 16:08:17 wmcbrine Exp $")
-
-#include <stdlib.h>
-
-#ifdef CHTYPE_LONG
-# define PDC_OFFSET 32
-#else
-# define PDC_OFFSET  8
-#endif
-
-/* COLOR_PAIR to attribute encoding table. */
-
-unsigned char *pdc_atrtab = (unsigned char *)NULL;
-
-int pdc_adapter;         /* screen type */
-int pdc_scrnmode;        /* default screen mode */
-int pdc_font;            /* default font size */
-bool pdc_direct_video;   /* allow direct screen memory writes */
-bool pdc_bogus_adapter;  /* TRUE if adapter has insane values */
-unsigned pdc_video_seg;  /* video base segment */
-unsigned pdc_video_ofs;  /* video base offset */
-
-static short curstoreal[16], realtocurs[16] =
-{
-    COLOR_BLACK, COLOR_BLUE, COLOR_GREEN, COLOR_CYAN, COLOR_RED,
-    COLOR_MAGENTA, COLOR_YELLOW, COLOR_WHITE, COLOR_BLACK + 8,
-    COLOR_BLUE + 8, COLOR_GREEN + 8, COLOR_CYAN + 8, COLOR_RED + 8,
-    COLOR_MAGENTA + 8, COLOR_YELLOW + 8, COLOR_WHITE + 8
-};
-
-static bool sizeable = FALSE;   /* TRUE if adapter is resizeable    */
-
-static unsigned short *saved_screen = NULL;
-static int saved_lines = 0;
-static int saved_cols = 0;
-
-static int saved_scrnmode[3];
-static int saved_font[3];
-
-/* Thanks to Jeff Duntemann, K16RA for providing the impetus
-   (through the Dr. Dobbs Journal, March 1989 issue) for getting
-   the routines below merged into Bjorn Larsson's PDCurses 1.3...
-    -- frotz at dri.com    900730 */
-
-/* _get_font() - Get the current font size */
-
-static int _get_font(void)
-{
-    int retval;
-
-    retval = getdosmemword(0x485);
-
-    /* Assume the MDS Genius is in 66 line mode. */
-
-    if ((retval == 0) && (pdc_adapter == _MDS_GENIUS))
-        retval = _FONT15;
-
-    switch (pdc_adapter)
-    {
-    case _MDA:
-        retval = 10;    /* POINTS is not certain on MDA/Hercules */
-        break;
-
-    case _EGACOLOR:
-    case _EGAMONO:
-        switch (retval)
-        {
-        case _FONT8:
-        case _FONT14:
-            break;
-        default:
-            retval = _FONT14;
-        }
-        break;
-
-    case _CGA:
-        retval = _FONT8;
-    }
-
-    return retval;
-}
-
-/* _set_font() - Sets the current font size, if the adapter allows such a 
-   change. It is an error to attempt to change the font size on a 
-   "bogus" adapter. The reason for this is that we have a known video 
-   adapter identity problem. e.g. Two adapters report the same identifying 
-   characteristics. */
-
-static void _set_font(int size)
-{
-    PDCREGS regs;
-
-    if (pdc_bogus_adapter)
-        return;
-
-    switch (pdc_adapter)
-    {
-    case _CGA:
-    case _MDA:
-    case _MCGACOLOR:
-    case _MCGAMONO:
-    case _MDS_GENIUS:
-        break;
-
-    case _EGACOLOR:
-    case _EGAMONO:
-        if (sizeable && (pdc_font != size))
-        {
-            switch (size)
-            {
-            case _FONT8:
-                regs.W.ax = 0x1112;
-                regs.h.bl = 0x00;
-                PDCINT(0x10, regs);
-                break;
-            case _FONT14:
-                regs.W.ax = 0x1111;
-                regs.h.bl = 0x00;
-                PDCINT(0x10, regs);
-            }
-        }
-        break;
-
-    case _VGACOLOR:
-    case _VGAMONO:
-        if (sizeable && (pdc_font != size))
-        {
-            switch (size)
-            {
-            case _FONT8:
-                regs.W.ax = 0x1112;
-                regs.h.bl = 0x00;
-                PDCINT(0x10, regs);
-                break;
-            case _FONT14:
-                regs.W.ax = 0x1111;
-                regs.h.bl = 0x00;
-                PDCINT(0x10, regs);
-                break;
-            case _FONT16:
-                regs.W.ax = 0x1114;
-                regs.h.bl = 0x00;
-                PDCINT(0x10, regs);
-            }
-        }
-    }
-
-    curs_set(SP->visibility);
-
-    pdc_font = _get_font();
-}
-
-/* _set_80x25() - force a known screen state: 80x25 text mode. Forces the 
-   appropriate 80x25 alpha mode given the display adapter. */
-
-static void _set_80x25(void)
-{
-    PDCREGS regs;
-
-    switch (pdc_adapter)
-    {
-    case _CGA:
-    case _EGACOLOR:
-    case _EGAMONO:
-    case _VGACOLOR:
-    case _VGAMONO:
-    case _MCGACOLOR:
-    case _MCGAMONO:
-        regs.h.ah = 0x00;
-        regs.h.al = 0x03;
-        PDCINT(0x10, regs);
-        break;
-    case _MDA:
-        regs.h.ah = 0x00;
-        regs.h.al = 0x07;
-        PDCINT(0x10, regs);
-    }
-}
-
-/* _get_scrn_mode() - Return the current BIOS video mode */
-
-static int _get_scrn_mode(void)
-{
-    PDCREGS regs;
-
-    regs.h.ah = 0x0f;
-    PDCINT(0x10, regs);
-
-    return (int)regs.h.al;
-}
-
-/* _set_scrn_mode() - Sets the BIOS Video Mode Number only if it is 
-   different from the current video mode. */
-
-static void _set_scrn_mode(int new_mode)
-{
-    PDCREGS regs;
-
-    if (_get_scrn_mode() != new_mode)
-    {
-        regs.h.ah = 0;
-        regs.h.al = (unsigned char) new_mode;
-        PDCINT(0x10, regs);
-    }
-
-    pdc_font = _get_font();
-    pdc_scrnmode = new_mode;
-    LINES = PDC_get_rows();
-    COLS = PDC_get_columns();
-}
-
-/* _sanity_check() - A video adapter identification sanity check. This 
-   routine will force sane values for various control flags. */
-
-static int _sanity_check(int adapter)
-{
-    int fontsize = _get_font();
-    int rows = PDC_get_rows();
-
-    PDC_LOG(("_sanity_check() - called: Adapter %d\n", adapter));
-
-    switch (adapter)
-    {
-    case _EGACOLOR:
-    case _EGAMONO:
-        switch (rows)
-        {
-        case 25:
-        case 43:    
-            break;
-        default:
-            pdc_bogus_adapter = TRUE;
-        }
-
-        switch (fontsize)
-        {
-        case _FONT8:
-        case _FONT14:
-            break;
-        default:
-            pdc_bogus_adapter = TRUE;
-        }
-        break;
-
-    case _VGACOLOR:
-    case _VGAMONO:
-        break;
-
-    case _CGA:
-    case _MDA:
-    case _MCGACOLOR:
-    case _MCGAMONO:
-        switch (rows)
-        {
-        case 25:
-            break;
-        default:
-            pdc_bogus_adapter = TRUE;
-        }
-        break;
-
-    default:
-        pdc_bogus_adapter = TRUE;
-    }
-
-    if (pdc_bogus_adapter)
-    {
-        sizeable = FALSE;
-        pdc_direct_video = FALSE;
-    }
-
-    return adapter;
-}
-
-/* _query_adapter_type() - Determine PC video adapter type. */
-
-static int _query_adapter_type(void)
-{
-    PDCREGS regs;
-    int retval = _NONE;
-
-    /* thanks to paganini at ax.apc.org for the GO32 fix */
-
-#if !defined(__DJGPP__) && !defined(__WATCOMC__)
-    struct SREGS segs;
-#endif
-    short video_base = getdosmemword(0x463);
-
-    PDC_LOG(("_query_adapter_type() - called\n"));
-
-    /* attempt to call VGA Identify Adapter Function */
-
-    regs.W.ax = 0x1a00;
-    PDCINT(0x10, regs);
-
-    if ((regs.h.al == 0x1a) && (retval == _NONE))
-    {
-        /* We know that the PS/2 video BIOS is alive and well. */
-
-        switch (regs.h.al)
-        {
-        case 0:
-            retval = _NONE;
-            break;
-        case 1:
-            retval = _MDA;
-            break;
-        case 2:
-            retval = _CGA;
-            break;
-        case 4:
-            retval = _EGACOLOR;
-            sizeable = TRUE;
-            break;
-        case 5:
-            retval = _EGAMONO;
-            break;
-        case 26:            /* ...alt. VGA BIOS... */
-        case 7:
-            retval = _VGACOLOR;
-            sizeable = TRUE;
-            break;
-        case 8:
-            retval = _VGAMONO;
-            break;
-        case 10:
-        case 13:
-            retval = _MCGACOLOR;
-            break;
-        case 12:
-            retval = _MCGAMONO;
-            break;
-        default:
-            retval = _CGA;
-        }
-    }
-    else
-    {
-        /* No VGA BIOS, check for an EGA BIOS by selecting an
-           Alternate Function Service...
-
-           bx == 0x0010 --> return EGA information */
-
-        regs.h.ah = 0x12;
-        regs.W.bx = 0x10;
-        PDCINT(0x10, regs);
-
-        if ((regs.h.bl != 0x10) && (retval == _NONE))
-        {
-            /* An EGA BIOS exists */
-
-            regs.h.ah = 0x12;
-            regs.h.bl = 0x10;
-            PDCINT(0x10, regs);
-
-            if (regs.h.bh == 0)
-                retval = _EGACOLOR;
-            else
-                retval = _EGAMONO;
-        }
-        else if (retval == _NONE)
-        {
-            /* Now we know we only have CGA or MDA */
-
-            PDCINT(0x11, regs);
-
-            switch (regs.h.al & 0x30)
-            {
-            case 0x10:
-            case 0x20:
-                retval = _CGA;
-                break;
-            case 0x30:
-                retval = _MDA;
-                break;
-            default:
-                retval = _NONE;
-            }
-        }
-    }
-
-    if (video_base == 0x3d4)
-    {
-        pdc_video_seg = 0xb800;
-        switch (retval)
-        {
-        case _EGAMONO:
-            retval = _EGACOLOR;
-            break;
-        case _VGAMONO:
-            retval = _VGACOLOR;
-        }
-    }
-
-    if (video_base == 0x3b4)
-    {
-        pdc_video_seg = 0xb000;
-        switch (retval)
-        {
-        case _EGACOLOR:
-            retval = _EGAMONO;
-            break;
-        case _VGACOLOR:
-            retval = _VGAMONO;
-        }
-    }
-
-    if ((retval == _NONE)
-#ifndef CGA_DIRECT
-    ||  (retval == _CGA)
-#endif
-    )
-        pdc_direct_video = FALSE;
-
-    if ((unsigned)pdc_video_seg == 0xb000)
-        SP->mono = TRUE;
-    else
-        SP->mono = FALSE;
-
-    /* Check for DESQview shadow buffer
-       thanks to paganini at ax.apc.org for the GO32 fix */
-
-#ifndef __WATCOMC__
-    regs.h.ah = 0xfe;
-    regs.h.al = 0;
-    regs.x.di = pdc_video_ofs;
-# ifdef __DJGPP__
-    regs.x.es = pdc_video_seg;
-    __dpmi_int(0x10, &regs);
-    pdc_video_seg = regs.x.es;
-# else
-    segs.es   = pdc_video_seg;
-    int86x(0x10, &regs, &regs, &segs);
-    pdc_video_seg = segs.es;
-# endif
-    pdc_video_ofs = regs.x.di;
-#endif
-    if (!pdc_adapter)
-        pdc_adapter = retval;
-
-    return _sanity_check(retval);
-}
-
-/* close the physical screen -- may restore the screen to its state 
-   before PDC_scr_open(); miscellaneous cleanup */
-
-void PDC_scr_close(void)
-{
-#if SMALL || MEDIUM
-# ifndef __PACIFIC__
-    struct SREGS segregs;
-# endif
-    int ds;
-#endif
-    PDC_LOG(("PDC_scr_close() - called\n"));
-
-    if (getenv("PDC_RESTORE_SCREEN") && saved_screen)
-    {
-#ifdef __DJGPP__
-        dosmemput(saved_screen, saved_lines * saved_cols * 2,
-            (unsigned long)_FAR_POINTER(pdc_video_seg,
-            pdc_video_ofs));
-#else
-# if (SMALL || MEDIUM)
-#  ifdef __PACIFIC__
-        ds = FP_SEG((void far *)saved_screen);
-#  else
-        segread(&segregs);
-        ds = segregs.ds;
-#  endif
-        movedata(ds, (int)saved_screen, pdc_video_seg, pdc_video_ofs,
-        (saved_lines * saved_cols * 2));
-# else
-        memcpy((void *)_FAR_POINTER(pdc_video_seg, pdc_video_ofs),
-        (void *)saved_screen, (saved_lines * saved_cols * 2));
-# endif
-#endif
-        free(saved_screen);
-        saved_screen = NULL;
-    }
-
-    reset_shell_mode();
-
-    if (SP->visibility != 1)
-        curs_set(1);
-
-    /* Position cursor to the bottom left of the screen. */
-
-    PDC_gotoyx(PDC_get_rows() - 2, 0);
-}
-
-void PDC_scr_free(void)
-{
-    if (SP)
-        free(SP);
-    if (pdc_atrtab)
-        free(pdc_atrtab);
-
-    pdc_atrtab = (unsigned char *)NULL;
-}
-
-/* open the physical screen -- allocate SP, miscellaneous intialization, 
-   and may save the existing screen for later restoration */
-
-int PDC_scr_open(int argc, char **argv)
-{
-#if SMALL || MEDIUM
-# ifndef __PACIFIC__
-    struct SREGS segregs;
-# endif
-    int ds;
-#endif
-    int i;
-
-    PDC_LOG(("PDC_scr_open() - called\n"));
-
-    SP = calloc(1, sizeof(SCREEN));
-    pdc_atrtab = calloc(PDC_COLOR_PAIRS * PDC_OFFSET, 1);
-
-    if (!SP || !pdc_atrtab)
-        return ERR;
-
-    for (i = 0; i < 16; i++)
-        curstoreal[realtocurs[i]] = i;
-
-    SP->orig_attr = FALSE;
-
-    pdc_direct_video = TRUE; /* Assume that we can */
-    pdc_video_seg = 0xb000;  /* Base screen segment addr */
-    pdc_video_ofs = 0x0;     /* Base screen segment ofs */
-
-    pdc_adapter = _query_adapter_type();
-    pdc_scrnmode = _get_scrn_mode();
-    pdc_font = _get_font();
-
-    SP->lines = PDC_get_rows();
-    SP->cols = PDC_get_columns();
-
-    SP->mouse_wait = PDC_CLICK_PERIOD;
-    SP->audible = TRUE;
-
-    /* If the environment variable PDCURSES_BIOS is set, the DOS int10() 
-       BIOS calls are used in place of direct video memory access. */
-
-    if (getenv("PDCURSES_BIOS"))
-        pdc_direct_video = FALSE;
-
-    /* This code for preserving the current screen. */
-
-    if (getenv("PDC_RESTORE_SCREEN"))
-    {
-        saved_lines = SP->lines;
-        saved_cols = SP->cols;
-
-        saved_screen = malloc(saved_lines * saved_cols * 2);
-
-        if (!saved_screen)
-        {
-            SP->_preserve = FALSE;
-            return OK;
-        }
-#ifdef __DJGPP__
-        dosmemget((unsigned long)_FAR_POINTER(pdc_video_seg, pdc_video_ofs),
-                  saved_lines * saved_cols * 2, saved_screen);
-#else
-# if SMALL || MEDIUM
-#  ifdef __PACIFIC__
-        ds = FP_SEG((void far *) saved_screen);
-#  else
-        segread(&segregs);
-        ds = segregs.ds;
-#  endif
-        movedata(pdc_video_seg, pdc_video_ofs, ds, (int)saved_screen,
-                 (saved_lines * saved_cols * 2));
-# else
-        memcpy((void *)saved_screen,
-               (void *)_FAR_POINTER(pdc_video_seg, pdc_video_ofs),
-               (saved_lines * saved_cols * 2));
-# endif
-#endif
-    }
-
-    SP->_preserve = (getenv("PDC_PRESERVE_SCREEN") != NULL);
-
-    return OK;
-}
-
-/* the core of resize_term() */
-
-int PDC_resize_screen(int nlines, int ncols)
-{
-    PDC_LOG(("PDC_resize_screen() - called. Lines: %d Cols: %d\n",
-             nlines, ncols));
-
-    /* Trash the stored value of orig_cursor -- it's only good if the 
-       video mode doesn't change */
-
-    SP->orig_cursor = 0x0607;
-
-    switch (pdc_adapter)
-    {
-    case _EGACOLOR:
-        if (nlines >= 43)
-            _set_font(_FONT8);
-        else
-            _set_80x25();
-        break;
-
-    case _VGACOLOR:
-        if (nlines > 28)
-            _set_font(_FONT8);
-        else
-            if (nlines > 25)
-                _set_font(_FONT14);
-            else
-                _set_80x25();
-    }
-
-    PDC_set_blink(COLORS == 8);
-
-    return OK;
-}
-
-void PDC_reset_prog_mode(void)
-{
-        PDC_LOG(("PDC_reset_prog_mode() - called.\n"));
-}
-
-void PDC_reset_shell_mode(void)
-{
-        PDC_LOG(("PDC_reset_shell_mode() - called.\n"));
-}
-
-void PDC_restore_screen_mode(int i)
-{
-    if (i >= 0 && i <= 2)
-    {
-        pdc_font = _get_font();
-        _set_font(saved_font[i]);
-
-        if (_get_scrn_mode() != saved_scrnmode[i])
-            _set_scrn_mode(saved_scrnmode[i]);
-    }
-}
-
-void PDC_save_screen_mode(int i)
-{
-    if (i >= 0 && i <= 2)
-    {
-        saved_font[i] = pdc_font;
-        saved_scrnmode[i] = pdc_scrnmode;
-    }
-}
-
-void PDC_init_pair(short pair, short fg, short bg)
-{
-    unsigned char att, temp_bg;
-    chtype i;
-
-    fg = curstoreal[fg];
-    bg = curstoreal[bg];
-
-    for (i = 0; i < PDC_OFFSET; i++)
-    {
-        att = fg | (bg << 4);
-
-        if (i & (A_REVERSE >> PDC_ATTR_SHIFT))
-            att = bg | (fg << 4);
-        if (i & (A_UNDERLINE >> PDC_ATTR_SHIFT))
-            att = 1;
-        if (i & (A_INVIS >> PDC_ATTR_SHIFT))
-        {
-            temp_bg = att >> 4;
-            att = temp_bg << 4 | temp_bg;
-        }
-        if (i & (A_BOLD >> PDC_ATTR_SHIFT))
-            att |= 8;
-        if (i & (A_BLINK >> PDC_ATTR_SHIFT))
-            att |= 128;
-
-        pdc_atrtab[pair * PDC_OFFSET + i] = att;
-    }
-}
-
-int PDC_pair_content(short pair, short *fg, short *bg)
-{
-    *fg = realtocurs[pdc_atrtab[pair * PDC_OFFSET] & 0x0F];
-    *bg = realtocurs[(pdc_atrtab[pair * PDC_OFFSET] & 0xF0) >> 4];
-
-    return OK;
-}
-
-/* _egapal() - Find the EGA palette value (0-63) for the color (0-15).
-   On VGA, this is an index into the DAC. */
-
-static short _egapal(short color)
-{
-    PDCREGS regs;
-
-    regs.W.ax = 0x1007;
-    regs.h.bl = curstoreal[color];
-
-    PDCINT(0x10, regs);
-
-    return regs.h.bh;
-}
-
-bool PDC_can_change_color(void)
-{
-    return (pdc_adapter == _VGACOLOR);
-}
-
-/* These are only valid when pdc_adapter == _VGACOLOR */
-
-int PDC_color_content(short color, short *red, short *green, short *blue)
-{
-    PDCREGS regs;
-
-    /* Read single DAC register */
-
-    regs.W.ax = 0x1015;
-    regs.h.bl = _egapal(color);
-
-    PDCINT(0x10, regs);
-
-    /* Scale and store */
-
-    *red = DIVROUND((unsigned)(regs.h.dh) * 1000, 63);
-    *green = DIVROUND((unsigned)(regs.h.ch) * 1000, 63);
-    *blue = DIVROUND((unsigned)(regs.h.cl) * 1000, 63);
-
-    return OK;
-}
-
-int PDC_init_color(short color, short red, short green, short blue)
-{
-    PDCREGS regs;
-
-    /* Scale */
-
-    regs.h.dh = DIVROUND((unsigned)red * 63, 1000);
-    regs.h.ch = DIVROUND((unsigned)green * 63, 1000);
-    regs.h.cl = DIVROUND((unsigned)blue * 63, 1000);
-
-    /* Set single DAC register */
-
-    regs.W.ax = 0x1010;
-    regs.W.bx = _egapal(color);
-
-    PDCINT(0x10, regs);
-
-    return OK;
-}
diff --git a/src/other/PDCurses/dos/pdcsetsc.c b/src/other/PDCurses/dos/pdcsetsc.c
deleted file mode 100644
index 2180ef4..0000000
--- a/src/other/PDCurses/dos/pdcsetsc.c
+++ /dev/null
@@ -1,99 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcdos.h"
-
-RCSID("$Id: pdcsetsc.c,v 1.39 2008/07/13 16:08:17 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         pdcsetsc
-
-  Synopsis:
-        int PDC_set_blink(bool blinkon);
-        void PDC_set_title(const char *title);
-
-  Description:
-        PDC_set_blink() toggles whether the A_BLINK attribute sets an
-        actual blink mode (TRUE), or sets the background color to high
-        intensity (FALSE). The default is platform-dependent (FALSE in
-        most cases). It returns OK if it could set the state to match 
-        the given parameter, ERR otherwise. Current platforms also 
-        adjust the value of COLORS according to this function -- 16 for 
-        FALSE, and 8 for TRUE.
-
-        PDC_set_title() sets the title of the window in which the curses
-        program is running. This function may not do anything on some
-        platforms. (Currently it only works in Win32 and X11.)
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_set_blink                           -       -       -
-        PDC_set_title                           -       -       -
-
-**man-end****************************************************************/
-
-int PDC_curs_set(int visibility)
-{
-    PDCREGS regs;
-    int ret_vis, start, end;
-
-    PDC_LOG(("PDC_curs_set() - called: visibility=%d\n", visibility));
-
-    ret_vis = SP->visibility;
-    SP->visibility = visibility;
-
-    switch (visibility)
-    {
-        case 0:  /* invisible */
-            start = 32;
-            end = 0;  /* was 32 */
-            break;
-        case 2:  /* highly visible */
-            start = 0;   /* full-height block */
-            end = 7;
-            break;
-        default:  /* normal visibility */
-            start = (SP->orig_cursor >> 8) & 0xff;
-            end = SP->orig_cursor & 0xff;
-    }
-
-    /* if scrnmode is not set, some BIOSes hang */
-
-    regs.h.ah = 0x01;
-    regs.h.al = (unsigned char)pdc_scrnmode; 
-    regs.h.ch = (unsigned char)start;
-    regs.h.cl = (unsigned char)end;
-    PDCINT(0x10, regs);
-
-    return ret_vis;
-}
-
-void PDC_set_title(const char *title)
-{
-    PDC_LOG(("PDC_set_title() - called: <%s>\n", title));
-}
-
-int PDC_set_blink(bool blinkon)
-{
-    PDCREGS regs;
-
-    switch (pdc_adapter)
-    {
-    case _EGACOLOR:
-    case _EGAMONO:
-    case _VGACOLOR:
-    case _VGAMONO:
-        regs.W.ax = 0x1003;
-        regs.W.bx = blinkon;
-
-        PDCINT(0x10, regs);
-
-        if (pdc_color_started)
-            COLORS = blinkon ? 8 : 16;
-
-        break;
-    default:
-        COLORS = 8;
-    }
-
-    return (COLORS - (blinkon * 8) != 8) ? OK : ERR;
-}
diff --git a/src/other/PDCurses/dos/pdcutil.c b/src/other/PDCurses/dos/pdcutil.c
deleted file mode 100644
index b209352..0000000
--- a/src/other/PDCurses/dos/pdcutil.c
+++ /dev/null
@@ -1,105 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcdos.h"
-
-RCSID("$Id: pdcutil.c,v 1.24 2008/07/13 16:08:17 wmcbrine Exp $")
-
-void PDC_beep(void)
-{
-    PDCREGS regs;
-
-    PDC_LOG(("PDC_beep() - called\n"));
-
-    regs.W.ax = 0x0e07;       /* Write ^G in TTY fashion */
-    regs.W.bx = 0;
-    PDCINT(0x10, regs);
-}
-
-void PDC_napms(int ms)
-{
-    PDCREGS regs;
-    long goal, start, current;
-
-    PDC_LOG(("PDC_napms() - called: ms=%d\n", ms));
-
-    goal = DIVROUND((long)ms, 50);
-    if (!goal)
-        goal++;
-
-    start = getdosmemdword(0x46c);
-
-    goal += start;
-
-    while (goal > (current = getdosmemdword(0x46c)))
-    {
-        if (current < start)    /* in case of midnight reset */
-            return;
-
-        regs.W.ax = 0x1680;
-        PDCINT(0x2f, regs);
-        PDCINT(0x28, regs);
-    }
-}
-
-const char *PDC_sysname(void)
-{
-    return "DOS";
-}
-
-#ifdef __DJGPP__
-
-unsigned char getdosmembyte(int offset)
-{
-    unsigned char b;
-
-    dosmemget(offset, sizeof(unsigned char), &b);
-    return b;
-}
-
-unsigned short getdosmemword(int offset)
-{
-    unsigned short w;
-
-    dosmemget(offset, sizeof(unsigned short), &w);
-    return w;
-}
-
-unsigned long getdosmemdword(int offset)
-{
-    unsigned long dw;
-
-    dosmemget(offset, sizeof(unsigned long), &dw);
-    return dw;
-}
-
-void setdosmembyte(int offset, unsigned char b)
-{
-    dosmemput(&b, sizeof(unsigned char), offset);
-}
-
-void setdosmemword(int offset, unsigned short w)
-{
-    dosmemput(&w, sizeof(unsigned short), offset);
-}
-
-#endif
-
-#if defined(__WATCOMC__) && defined(__386__)
-
-void PDC_dpmi_int(int vector, pdc_dpmi_regs *rmregs)
-{
-    union REGPACK regs = {0};
-
-    rmregs->w.ss = 0;
-    rmregs->w.sp = 0;
-    rmregs->w.flags = 0;
-
-    regs.w.ax = 0x300;
-    regs.h.bl = vector;
-    regs.x.edi = FP_OFF(rmregs);
-    regs.x.es = FP_SEG(rmregs);
-
-    intr(0x31, &regs);
-}
-
-#endif
diff --git a/src/other/PDCurses/dos/wccdos16.mak b/src/other/PDCurses/dos/wccdos16.mak
deleted file mode 100644
index a0cbb22..0000000
--- a/src/other/PDCurses/dos/wccdos16.mak
+++ /dev/null
@@ -1,48 +0,0 @@
-# Watcom WMAKE Makefile for PDCurses library - DOS (16 bit) Watcom C/C++ 10.6+
-#
-# Usage: wmake -f [path\]wccdos16.mak [DEBUG=Y] [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.lib|testcurs.exe...]
-
-# Change the memory MODEL here, if desired
-MODEL		= l
-
-!ifdef %PDCURSES_SRCDIR
-PDCURSES_SRCDIR	= $(%PDCURSES_SRCDIR)
-!else
-PDCURSES_SRCDIR	= ..
-!endif
-
-!include $(PDCURSES_SRCDIR)\version.mif
-
-osdir		= $(PDCURSES_SRCDIR)\dos
-
-CC		= wcc
-TARGET		= dos
-
-CFLAGS		= /bt=$(TARGET) /zq /wx /m$(MODEL) /i=$(PDCURSES_SRCDIR)
-
-!ifeq DEBUG Y
-CFLAGS  	+= /d2 /DPDCDEBUG
-LDFLAGS 	= D W A op q sys $(TARGET)
-!else
-CFLAGS  	+= /oneatx
-LDFLAGS 	= op q sys $(TARGET)
-!endif
-
-LIBEXE		= wlib /q /n /t
-
-!include $(PDCURSES_SRCDIR)\watcom.mif
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	%write wccdos.lrf $(LIBOBJS) $(PDCOBJS)
-	$(LIBEXE) $@ @wccdos.lrf
-	-del wccdos.lrf
-	-copy $(LIBCURSES) panel.lib
-
-PLATFORM1	= Watcom C++ 16-bit DOS
-PLATFORM2	= Open Watcom 1.6 for 16-bit DOS
-ARCNAME		= pdc$(VER)16w
-
-!include $(PDCURSES_SRCDIR)\makedist.mif
diff --git a/src/other/PDCurses/dos/wccdos4g.mak b/src/other/PDCurses/dos/wccdos4g.mak
deleted file mode 100644
index e1ba1cd..0000000
--- a/src/other/PDCurses/dos/wccdos4g.mak
+++ /dev/null
@@ -1,45 +0,0 @@
-# Watcom WMAKE Makefile for PDCurses library - DOS/4GW Watcom C/C++ 10.6+
-#
-# Usage: wmake -f [path\]wccdos4g.mak [DEBUG=Y] [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.lib|testcurs.exe...]
-
-!ifdef %PDCURSES_SRCDIR
-PDCURSES_SRCDIR	= $(%PDCURSES_SRCDIR)
-!else
-PDCURSES_SRCDIR	= ..
-!endif
-
-!include $(PDCURSES_SRCDIR)\version.mif
-
-osdir		= $(PDCURSES_SRCDIR)\dos
-
-CC		= wcc386
-TARGET		= dos4g
-
-CFLAGS		= /bt=$(TARGET) /zq /wx /mf /i=$(PDCURSES_SRCDIR)
-
-!ifeq DEBUG Y
-CFLAGS  	+= /d2 /DPDCDEBUG
-LDFLAGS 	= D W A op q sys $(TARGET)
-!else
-CFLAGS  	+= /oneatx
-LDFLAGS 	= op q sys $(TARGET)
-!endif
-
-LIBEXE		= wlib /q /n /t
-
-!include $(PDCURSES_SRCDIR)\watcom.mif
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	%write wccdos.lrf $(LIBOBJS) $(PDCOBJS)
-	$(LIBEXE) $@ @wccdos.lrf
-	-del wccdos.lrf
-	-copy $(LIBCURSES) panel.lib
-
-PLATFORM1	= Watcom C++ 32-bit DOS
-PLATFORM2	= Open Watcom 1.6 for 32-bit DOS
-ARCNAME		= pdc$(VER)32w
-
-!include $(PDCURSES_SRCDIR)\makedist.mif
diff --git a/src/other/PDCurses/exp-base.def b/src/other/PDCurses/exp-base.def
deleted file mode 100644
index 222b133..0000000
--- a/src/other/PDCurses/exp-base.def
+++ /dev/null
@@ -1,374 +0,0 @@
-LINES
-COLS
-stdscr
-curscr
-SP
-Mouse_status
-COLORS
-COLOR_PAIRS
-TABSIZE
-acs_map
-ttytype
-addch
-addchnstr
-addchstr
-addnstr
-addstr
-attroff
-attron
-attrset
-attr_get
-attr_off
-attr_on
-attr_set
-baudrate
-beep
-bkgd
-bkgdset
-border
-box
-can_change_color
-cbreak
-chgat
-clearok
-clear
-clrtobot
-clrtoeol
-color_content
-color_set
-copywin
-curs_set
-def_prog_mode
-def_shell_mode
-delay_output
-delch
-deleteln
-delscreen
-delwin
-derwin
-doupdate
-dupwin
-echochar
-echo
-endwin
-erasechar
-erase
-filter
-flash
-flushinp
-getbkgd
-getnstr
-getstr
-getwin
-halfdelay
-has_colors
-has_ic
-has_il
-hline
-idcok
-idlok
-immedok
-inchnstr
-inchstr
-inch
-init_color
-init_pair
-initscr
-innstr
-insch
-insdelln
-insertln
-insnstr
-insstr
-instr
-intrflush
-isendwin
-is_linetouched
-is_wintouched
-keyname
-keypad
-killchar
-leaveok
-longname
-meta
-move
-mvaddch
-mvaddchnstr
-mvaddchstr
-mvaddnstr
-mvaddstr
-mvchgat
-mvcur
-mvdelch
-mvderwin
-mvgetch
-mvgetnstr
-mvgetstr
-mvhline
-mvinch
-mvinchnstr
-mvinchstr
-mvinnstr
-mvinsch
-mvinsnstr
-mvinsstr
-mvinstr
-mvprintw
-mvscanw
-mvvline
-mvwaddchnstr
-mvwaddchstr
-mvwaddch
-mvwaddnstr
-mvwaddstr
-mvwchgat
-mvwdelch
-mvwgetch
-mvwgetnstr
-mvwgetstr
-mvwhline
-mvwinchnstr
-mvwinchstr
-mvwinch
-mvwinnstr
-mvwinsch
-mvwinsnstr
-mvwinsstr
-mvwinstr
-mvwin
-mvwprintw
-mvwscanw
-mvwvline
-napms
-newpad
-newterm
-newwin
-nl
-nocbreak
-nodelay
-noecho
-nonl
-noqiflush
-noraw
-notimeout
-overlay
-overwrite
-pair_content
-pechochar
-pnoutrefresh
-prefresh
-printw
-putwin
-qiflush
-raw
-redrawwin
-refresh
-reset_prog_mode
-reset_shell_mode
-resetty
-ripoffline
-savetty
-scanw
-scr_dump
-scr_init
-scrl
-scrollok
-scroll
-scr_restore
-scr_set
-setscrreg
-setsyx
-set_term
-slk_attroff
-slk_attr_off
-slk_attron
-slk_attr_on
-slk_attrset
-slk_attr_set
-slk_clear
-slk_color
-slk_init
-slk_label
-slk_noutrefresh
-slk_refresh
-slk_restore
-slk_set
-slk_touch
-standend
-standout
-start_color
-subpad
-subwin
-syncok
-termattrs
-term_attrs
-termname
-timeout
-touchline
-touchwin
-typeahead
-untouchwin
-use_env
-vidattr
-vid_attr
-vidputs
-vid_puts
-vline
-vw_printw
-vwprintw
-vw_scanw
-vwscanw
-waddchnstr
-waddchstr
-waddch
-waddnstr
-waddstr
-wattroff
-wattron
-wattrset
-wattr_get
-wattr_off
-wattr_on
-wattr_set
-wbkgdset
-wbkgd
-wborder
-wchgat
-wclear
-wclrtobot
-wclrtoeol
-wcolor_set
-wcursyncup
-wdelch
-wdeleteln
-wechochar
-werase
-wgetch
-wgetnstr
-wgetstr
-whline
-winchnstr
-winchstr
-winch
-winnstr
-winsch
-winsdelln
-winsertln
-winsnstr
-winsstr
-winstr
-wmove
-wnoutrefresh
-wprintw
-wredrawln
-wrefresh
-wscanw
-wscrl
-wsetscrreg
-wstandend
-wstandout
-wsyncdown
-wsyncup
-wtimeout
-wtouchln
-wvline
-getattrs
-getbegx
-getbegy
-getmaxx
-getmaxy
-getparx
-getpary
-getcurx
-getcury
-traceoff
-traceon
-unctrl
-crmode
-nocrmode
-draino
-resetterm
-fixterm
-saveterm
-mouse_set
-mouse_on
-mouse_off
-request_mouse_pos
-map_button
-wmouse_position
-getmouse
-getbmap
-assume_default_colors
-curses_version
-has_key
-use_default_colors
-wresize
-mouseinterval
-mousemask
-mouse_trafo
-nc_getmouse
-ungetmouse
-wenclose
-wmouse_trafo
-addrawch
-insrawch
-is_termresized
-mvaddrawch
-mvdeleteln
-mvinsertln
-mvinsrawch
-mvwaddrawch
-mvwdeleteln
-mvwinsertln
-mvwinsrawch
-raw_output
-resize_term
-resize_window
-waddrawch
-winsrawch
-wordchar
-bottom_panel
-del_panel
-hide_panel
-move_panel
-new_panel
-panel_above
-panel_below
-panel_hidden
-panel_userptr
-panel_window
-replace_panel
-set_panel_userptr
-show_panel
-top_panel
-update_panels
-PDC_debug
-PDC_ungetch
-PDC_set_blink
-PDC_set_line_color
-PDC_set_title
-PDC_clearclipboard
-PDC_freeclipboard
-PDC_getclipboard
-PDC_setclipboard
-PDC_get_input_fd
-PDC_get_key_modifiers
-PDC_save_key_modifiers
-PDC_return_key_modifiers
-cur_term
-del_curterm
-putp
-restartterm
-set_curterm
-setterm
-setupterm
-tgetent
-tgetflag
-tgetnum
-tgetstr
-tgoto
-tigetflag
-tigetnum
-tigetstr
-tparm
-tputs
diff --git a/src/other/PDCurses/exp-wide.def b/src/other/PDCurses/exp-wide.def
deleted file mode 100644
index ebf6bc2..0000000
--- a/src/other/PDCurses/exp-wide.def
+++ /dev/null
@@ -1,90 +0,0 @@
-addnwstr
-addwstr
-add_wch
-add_wchnstr
-add_wchstr
-border_set
-box_set
-echo_wchar
-erasewchar
-getbkgrnd
-getcchar
-getn_wstr
-get_wch
-get_wstr
-hline_set
-innwstr
-ins_nwstr
-ins_wch
-ins_wstr
-inwstr
-in_wch
-in_wchnstr
-in_wchstr
-key_name
-killwchar
-mvaddnwstr
-mvaddwstr
-mvadd_wch
-mvadd_wchnstr
-mvadd_wchstr
-mvgetn_wstr
-mvget_wch
-mvget_wstr
-mvhline_set
-mvinnwstr
-mvins_nwstr
-mvins_wch
-mvins_wstr
-mvinwstr
-mvin_wch
-mvin_wchnstr
-mvin_wchstr
-mvvline_set
-mvwaddnwstr
-mvwaddwstr
-mvwadd_wch
-mvwadd_wchnstr
-mvwadd_wchstr
-mvwgetn_wstr
-mvwget_wch
-mvwget_wstr
-mvwhline_set
-mvwinnwstr
-mvwins_nwstr
-mvwins_wch
-mvwins_wstr
-mvwin_wch
-mvwin_wchnstr
-mvwin_wchstr
-mvwinwstr
-mvwvline_set
-pecho_wchar
-setcchar
-slk_wset
-unget_wch
-vline_set
-waddnwstr
-waddwstr
-wadd_wch
-wadd_wchnstr
-wadd_wchstr
-wbkgrnd
-wbkgrndset
-wborder_set
-wecho_wchar
-wgetbkgrnd
-wgetn_wstr
-wget_wch
-wget_wstr
-whline_set
-winnwstr
-wins_nwstr
-wins_wch
-wins_wstr
-winwstr
-win_wch
-win_wchnstr
-win_wchstr
-wunctrl
-wvline_set
diff --git a/src/other/PDCurses/install-sh b/src/other/PDCurses/install-sh
deleted file mode 100644
index fb9e848..0000000
--- a/src/other/PDCurses/install-sh
+++ /dev/null
@@ -1,253 +0,0 @@
-#! /bin/sh
-#
-# install - install a program, script, or datafile
-# This comes from X11R5 (mit/util/scripts/install.sh).
-#
-# Copyright 1991 by the Massachusetts Institute of Technology
-#
-# Permission to use, copy, modify, distribute, and sell this software and its
-# documentation for any purpose is hereby granted without fee, provided that
-# the above copyright notice appear in all copies and that both that
-# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of M.I.T. not be used in advertising or
-# publicity pertaining to distribution of the software without specific,
-# written prior permission.  M.I.T. makes no representations about the
-# suitability of this software for any purpose.  It is provided "as is"
-# without express or implied warranty.
-#
-# Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
-# when there is no Makefile.
-#
-# This script is compatible with the BSD install script, but was written
-# from scratch.  It can only install one file at a time, a restriction
-# shared with many OS's install programs.
-
-
-# set DOITPROG to echo to test this script
-
-# Don't use :- since 4.3BSD and earlier shells don't like it.
-#
-# Modified 1 Feb 2000 MHES to cater for mkdir -p
-#
-doit="${DOITPROG-}"
-
-
-# put in absolute paths if you don't have them in your path; or use env. vars.
-
-mvprog="${MVPROG-mv}"
-cpprog="${CPPROG-cp}"
-chmodprog="${CHMODPROG-chmod}"
-chownprog="${CHOWNPROG-chown}"
-chgrpprog="${CHGRPPROG-chgrp}"
-stripprog="${STRIPPROG-strip}"
-rmprog="${RMPROG-rm}"
-mkdirprog="${MKDIRPROG-mkdir}"
-
-transformbasename=""
-transform_arg=""
-instcmd="$mvprog"
-chmodcmd="$chmodprog 0755"
-chowncmd=""
-chgrpcmd=""
-stripcmd=""
-rmcmd="$rmprog -f"
-mvcmd="$mvprog"
-mkdircmd="$mkdirprog -p"
-src=""
-dst=""
-dir_arg=""
-
-while [ x"$1" != x ]; do
-    case $1 in
-        -c) instcmd="$cpprog"
-            shift
-            continue;;
-
-        -d) dir_arg=true
-            shift
-            continue;;
-
-        -m) chmodcmd="$chmodprog $2"
-            shift
-            shift
-            continue;;
-
-        -o) chowncmd="$chownprog $2"
-            shift
-            shift
-            continue;;
-
-        -g) chgrpcmd="$chgrpprog $2"
-            shift
-            shift
-            continue;;
-
-        -s) stripcmd="$stripprog"
-            shift
-            continue;;
-
-        -t=*) transformarg=`echo $1 | sed 's/-t=//'`
-            shift
-            continue;;
-
-        -b=*) transformbasename=`echo $1 | sed 's/-b=//'`
-            shift
-            continue;;
-
-        *)  if [ x"$src" = x ]
-            then
-                src=$1
-            else
-                # this colon is to work around a 386BSD /bin/sh bug
-                :
-                dst=$1
-            fi
-            shift
-            continue;;
-    esac
-done
-
-if [ x"$src" = x ]
-then
-        echo "install:  no input file specified"
-        exit 1
-else
-        true
-fi
-
-if [ x"$dir_arg" != x ]; then
-        dst=$src
-        src=""
-
-        if [ -d $dst ]; then
-                instcmd=:
-        else
-                instcmd=mkdir
-        fi
-else
-
-# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
-# might cause directories to be created, which would be especially bad
-# if $src (and thus $dsttmp) contains '*'.
-
-        if [ -f $src -o -d $src ]
-        then
-                true
-        else
-                echo "install:  $src does not exist"
-                exit 1
-        fi
-
-        if [ x"$dst" = x ]
-        then
-                echo "install:  no destination specified"
-                exit 1
-        else
-                true
-        fi
-
-# If destination is a directory, append the input filename; if your system
-# does not like double slashes in filenames, you may need to add some logic
-
-        if [ -d $dst ]
-        then
-                dst="$dst"/`basename $src`
-        else
-                true
-        fi
-fi
-
-## this sed command emulates the dirname command
-dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
-
-# Make sure that the destination directory exists.
-#  this part is taken from Noah Friedman's mkinstalldirs script
-
-# Skip lots of stat calls in the usual case.
-if [ ! -d "$dstdir" ]; then
-defaultIFS='
-'
-IFS="${IFS-${defaultIFS}}"
-
-oIFS="${IFS}"
-# Some sh's can't handle IFS=/ for some reason.
-IFS='%'
-set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
-IFS="${oIFS}"
-
-pathcomp=''
-
-while [ $# -ne 0 ] ; do
-        pathcomp="${pathcomp}${1}"
-        shift
-
-        if [ ! -d "${pathcomp}" ] ;
-        then
-                $mkdircmd "${pathcomp}"
-        else
-                true
-        fi
-
-        pathcomp="${pathcomp}/"
-done
-fi
-
-if [ x"$dir_arg" != x ]
-then
-        $doit $instcmd $dst &&
-
-        if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi &&
-        if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi &&
-        if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi &&
-        if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi
-else
-
-# If we're going to rename the final executable, determine the name now.
-
-        if [ x"$transformarg" = x ]
-        then
-                dstfile=`basename $dst`
-        else
-                dstfile=`basename $dst $transformbasename |
-                        sed $transformarg`$transformbasename
-        fi
-
-# don't allow the sed command to completely eliminate the filename
-
-        if [ x"$dstfile" = x ]
-        then
-                dstfile=`basename $dst`
-        else
-                true
-        fi
-
-# Make a temp file name in the proper directory.
-
-        dsttmp=$dstdir/#inst.$$#
-
-# Move or copy the file name to the temp name
-
-        $doit $instcmd $src $dsttmp &&
-
-        trap "rm -f ${dsttmp}" 0 &&
-
-# and set any options; do chmod last to preserve setuid bits
-
-# If any of these fail, we abort the whole thing.  If we want to
-# ignore errors from any of these, just make sure not to ignore
-# errors from the above "$doit $instcmd $src $dsttmp" command.
-
-        if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi &&
-        if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi &&
-        if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi &&
-        if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi &&
-
-# Now rename the file to the real destination.
-
-        $doit $rmcmd -f $dstdir/$dstfile &&
-        $doit $mvcmd $dsttmp $dstdir/$dstfile
-
-fi &&
-
-exit 0
diff --git a/src/other/PDCurses/libobjs.mif b/src/other/PDCurses/libobjs.mif
deleted file mode 100644
index 6705323..0000000
--- a/src/other/PDCurses/libobjs.mif
+++ /dev/null
@@ -1,26 +0,0 @@
-# Common elements for most of the DOS, OS/2 and Win32
-# makefiles (not Watcom or LCC)
-
-PDCURSES_CURSES_H	= $(PDCURSES_SRCDIR)/curses.h
-PDCURSES_CURSPRIV_H	= $(PDCURSES_SRCDIR)/curspriv.h
-PDCURSES_HEADERS	= $(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
-PANEL_HEADER		= $(PDCURSES_SRCDIR)/panel.h
-TERM_HEADER		= $(PDCURSES_SRCDIR)/term.h
-
-srcdir	= $(PDCURSES_SRCDIR)/pdcurses
-demodir	= $(PDCURSES_SRCDIR)/demos
-
-LIBOBJS = addch.$(O) addchstr.$(O) addstr.$(O) attr.$(O) beep.$(O) \
-bkgd.$(O) border.$(O) clear.$(O) color.$(O) delch.$(O) deleteln.$(O) \
-deprec.$(O) getch.$(O) getstr.$(O) getyx.$(O) inch.$(O) inchstr.$(O) \
-initscr.$(O) inopts.$(O) insch.$(O) insstr.$(O) instr.$(O) kernel.$(O) \
-keyname.$(O) mouse.$(O) move.$(O) outopts.$(O) overlay.$(O) pad.$(O) \
-panel.$(O) printw.$(O) refresh.$(O) scanw.$(O) scr_dump.$(O) scroll.$(O) \
-slk.$(O) termattr.$(O) terminfo.$(O) touch.$(O) util.$(O) window.$(O) \
-debug.$(O)
-
-PDCOBJS = pdcclip.$(O) pdcdisp.$(O) pdcgetsc.$(O) pdckbd.$(O) pdcscrn.$(O) \
-pdcsetsc.$(O) pdcutil.$(O)
-
-DEMOS = testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe \
-ptest.exe rain.exe worm.exe
diff --git a/src/other/PDCurses/makedist.mif b/src/other/PDCurses/makedist.mif
deleted file mode 100644
index e7495a5..0000000
--- a/src/other/PDCurses/makedist.mif
+++ /dev/null
@@ -1,20 +0,0 @@
-# Makefile include: build a binary archive with Info-ZIP
-# under DOS, OS/2 or Win32
-
-dist: $(PDCLIBS)
-	echo PDCurses $(VERDOT) for $(PLATFORM1) > file_id.diz
-	echo ------------------------------------------ >> file_id.diz
-	echo Public Domain Curses library for >> file_id.diz
-	echo $(PLATFORM2). >> file_id.diz
-	echo Source available in PDCURS$(VER).ZIP >> file_id.diz
-	echo Public Domain. >> file_id.diz
-	echo $(PDCURSES_SRCDIR)\README > flist
-	echo $(PDCURSES_SRCDIR)\HISTORY >> flist
-	echo $(PDCURSES_SRCDIR)\curses.h >> flist
-	echo $(PDCURSES_SRCDIR)\panel.h >> flist
-	echo $(PDCURSES_SRCDIR)\term.h >> flist
-	echo $(LIBCURSES) >> flist
-	echo file_id.diz >> flist
-	zip -9jX $(ARCNAME) -@ <flist
-	del flist
-	del file_id.diz
diff --git a/src/other/PDCurses/os2/README b/src/other/PDCurses/os2/README
deleted file mode 100644
index 7fde884..0000000
--- a/src/other/PDCurses/os2/README
+++ /dev/null
@@ -1,43 +0,0 @@
-PDCurses for OS/2
-=================
-
-This directory contains PDCurses source code files specific to OS/2.
-
-
-Building
---------
-
-. Choose the appropriate makefile for your compiler:
-
-	bccos2.mak	- Borland C++ 2.0
-	gccos2.mak	- EMX 0.9b+
-	iccos2.mak	- C Set/2
-	wccos2.mak	- Watcom 10.6+ (32-bit)
-
-. Optionally, you can build in a different directory than the platform
-  directory by setting PDCURSES_SRCDIR to point to the directory where
-  you unpacked PDCurses, and changing to your target directory:
-
-	set PDCURSES_SRCDIR=c:\pdcurses
-
-. Build it:
-
-	make -f makefilename
-
-  (For Watcom, use "wmake" instead of "make"; for MSVC or C Set/2,
-  "nmake".) You'll get the libraries (pdcurses.lib or .a, depending on
-  your compiler; and panel.lib or .a), the demos (*.exe), and a lot of
-  object files. Note that the panel library is just a copy of the main
-  library, provided for convenience; both panel and curses functions are
-  in the main library.
-
-  You can also use the optional parameter "DLL=Y" with EMX, to build the 
-  library as a DLL:
-
-	make -f gccos2.mak DLL=Y
-
-
-Distribution Status
--------------------
-
-The files in this directory are released to the Public Domain.
diff --git a/src/other/PDCurses/os2/bccos2.mak b/src/other/PDCurses/os2/bccos2.mak
deleted file mode 100644
index 1c7d77a..0000000
--- a/src/other/PDCurses/os2/bccos2.mak
+++ /dev/null
@@ -1,90 +0,0 @@
-# Borland MAKE Makefile for PDCurses library - OS/2 BC++ 1.0+
-#
-# Usage: make -f [path\]bccos2.mak [DEBUG=] [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.lib|testcurs.exe...]
-
-O = obj
-
-!ifndef PDCURSES_SRCDIR
-PDCURSES_SRCDIR = ..
-!endif
-
-!include $(PDCURSES_SRCDIR)\version.mif
-!include $(PDCURSES_SRCDIR)\libobjs.mif
-
-osdir		= $(PDCURSES_SRCDIR)\os2
-
-CC		= bcc
-
-!ifdef DEBUG
-CFLAGS		= -N -v -y -DPDCDEBUG 
-!else
-CFLAGS		= -O 
-!endif
-
-CPPFLAGS	= -I$(PDCURSES_SRCDIR)
-
-BUILD		= $(CC) -c $(CFLAGS) $(CPPFLAGS)
-
-LINK		= tlink
-
-LIBEXE		= tlib /C /E
-
-LIBCURSES	= pdcurses.lib
-
-all:	$(LIBCURSES) $(DEMOS)
-
-clean:
-	-del *.obj
-	-del *.lib
-	-del *.exe
-
-demos:	$(DEMOS)
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	-del $@
-	$(LIBEXE) $@ \
-+addch.obj +addchstr.obj +addstr.obj +attr.obj +beep.obj +bkgd.obj \
-+border.obj +clear.obj +color.obj +delch.obj +deleteln.obj +deprec.obj \
-+getch.obj +getstr.obj +getyx.obj +inch.obj +inchstr.obj +initscr.obj \
-+inopts.obj +insch.obj +insstr.obj +instr.obj +kernel.obj +keyname.obj \
-+mouse.obj +move.obj +outopts.obj +overlay.obj +pad.obj +panel.obj \
-+printw.obj +refresh.obj +scanw.obj +scr_dump.obj +scroll.obj +slk.obj \
-+termattr.obj +terminfo.obj +touch.obj +util.obj +window.obj +debug.obj \
-+pdcclip.obj +pdcdisp.obj +pdcgetsc.obj +pdckbd.obj +pdcscrn.obj \
-+pdcsetsc.obj +pdcutil.obj ,lib.map
-	-copy $(LIBCURSES) panel.lib
-
-.autodepend
-
-{$(srcdir)\}.c.obj:
-	$(BUILD) $<
-
-{$(osdir)\}.c.obj:
-	$(BUILD) $<
-
-{$(demodir)\}.c.obj:
-	$(BUILD) $<
-
-.c.obj:
-	$(BUILD) $<
-
-.obj.exe:
-	$(CC) -e$@ $** $(LIBCURSES)
-
-tuidemo.exe:	tuidemo.obj tui.obj $(LIBCURSES)
-	$(CC) -e$@ $**
-
-tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
-	$(BUILD) -I$(demodir) $(demodir)\tui.c
-
-tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
-	$(BUILD) -I$(demodir) $(demodir)\tuidemo.c
-
-PLATFORM1 = Borland C++ OS/2 1.0
-PLATFORM2 = Borland C/C++ OS/2 1.0
-ARCNAME = pdc$(VER)bcos2
-
-!include $(PDCURSES_SRCDIR)\makedist.mif
diff --git a/src/other/PDCurses/os2/gccos2.mak b/src/other/PDCurses/os2/gccos2.mak
deleted file mode 100644
index 07d4dca..0000000
--- a/src/other/PDCurses/os2/gccos2.mak
+++ /dev/null
@@ -1,148 +0,0 @@
-# GNU MAKE Makefile for PDCurses library - OS/2 emx 0.9c+
-#
-# Usage: make -f [path\]gccos2.mak [DEBUG=Y] [EMXVIDEO=Y] [DLL=Y] [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.a|testcurs.exe...]
-#
-# The EMXVIDEO option compiles with the emx video library, which
-# enables a PDCurses program to run under OS/2 and DOS.
-
-O = o
-
-ifndef PDCURSES_SRCDIR
-	PDCURSES_SRCDIR = ..
-endif
-
-include $(PDCURSES_SRCDIR)/version.mif
-include $(PDCURSES_SRCDIR)/libobjs.mif
-
-osdir		= $(PDCURSES_SRCDIR)/os2
-
-PDCURSES_OS2_H	= $(osdir)/pdcos2.h
-
-CC		= gcc
-
-CFLAGS = -I$(PDCURSES_SRCDIR) -c -Wall
-
-ifeq ($(EMXVIDEO),Y)
-	CFLAGS += -DEMXVIDEO
-	CCLIBS = -lvideo
-	BINDFLAGS = -acm
-else
-	CCLIBS =
-	BINDFLAGS = 
-endif
-
-ifeq ($(DEBUG),Y)
-	CFLAGS  += -g -DPDCDEBUG
-	LDFLAGS = -g
-else
-	CFLAGS  += -O2
-	LDFLAGS =
-endif
-
-BASEDEF		= $(PDCURSES_SRCDIR)\exp-base.def
-
-DEFDEPS		= $(BASEDEF)
-
-DEFFILE		= pdcurses.def
-
-DLLTARGET	= pdcurses.dll
-DLLFLAGS 	= -Zdll -Zcrtdll -Zomf
-
-LINK		= gcc
-EMXBIND		= emxbind 
-EMXOMF		= emxomf
-
-LIBEXE		= ar
-LIBFLAGS	= rcv
-
-ifeq ($(DLL),Y)
-	CFLAGS += -Zdll -Zcrtdll -Zomf
-	LDFLAGS += -Zlinker /PM:VIO -Zomf -Zcrtdll
-	LIBCURSES = pdcurses.lib
-	LIBDEPS = $(LIBOBJS) $(PDCOBJS) $(DEFFILE)
-	PDCLIBS = $(DLLTARGET)
-	EXEPOST =
-	TUIPOST =
-	CLEAN = *.dll *.lib $(DEFFILE)
-else
-	LIBCURSES = pdcurses.a
-	LIBDEPS = $(LIBOBJS) $(PDCOBJS)
-	PDCLIBS = $(LIBCURSES)
-	EXEPOST = $(EMXBIND) $* $(BINDFLAGS)
-	TUIPOST = $(EMXBIND) tuidemo $(BINDFLAGS)
-	CLEAN = *.a testcurs newdemo xmas tuidemo firework ptest rain worm
-endif
-
-.PHONY: all libs clean demos dist
-
-all:	libs demos
-
-libs:	$(PDCLIBS)
-
-clean:
-	-del *.o
-	-del *.exe
-	-del $(CLEAN)
-
-demos:	$(DEMOS)
-
-DEMOOBJS = testcurs.o newdemo.o xmas.o tui.o tuidemo.o firework.o \
-ptest.o rain.o worm.o
-
-$(DEFFILE) : $(DEFDEPS)
-	echo LIBRARY PDCURSES > $@
-	echo DESCRIPTION 'PDCurses 3.4 Dynamic Linking library' >> $@
-	echo PROTMODE >>$@
-	echo DATA MULTIPLE READWRITE LOADONCALL >> $@
-	echo CODE LOADONCALL >> $@
-	echo EXPORTS >> $@
-	type $(BASEDEF) >> $@
-
-$(LIBCURSES) : $(LIBDEPS)
-	$(LIBEXE) $(LIBFLAGS) $@ $?
-	-copy $(LIBCURSES) panel.a
-
-$(DLLTARGET) : $(LIBDEPS)
-	$(LINK) $(DLLFLAGS) -o $(DLLTARGET) $? $(DEFFILE)
-#	lxlite $(DLLTARGET)
-	emximp -o $(LIBCURSES) $(DEFFILE)
-
-$(LIBOBJS) $(PDCOBJS) $(DEMOOBJS) : $(PDCURSES_HEADERS)
-$(PDCOBJS) : $(PDCURSES_OS2_H)
-$(DEMOS) : $(LIBCURSES)
-panel.o ptest.o: $(PANEL_HEADER)
-terminfo.o: $(TERM_HEADER)
-
-$(LIBOBJS) : %.o: $(srcdir)/%.c
-	$(CC) -c $(CFLAGS) -o$@ $<
-
-$(PDCOBJS) : %.o: $(osdir)/%.c
-	$(CC) -c $(CFLAGS) -o$@ $<
-
-firework.exe newdemo.exe rain.exe testcurs.exe worm.exe xmas.exe \
-ptest.exe: %.exe: %.o
-	$(LINK) $(LDFLAGS) -o $* $< $(LIBCURSES) $(CCLIBS)
-	$(EXEPOST)
-
-tuidemo.exe:	tuidemo.o tui.o
-	$(LINK) $(LDFLAGS) -o tuidemo tuidemo.o tui.o $(LIBCURSES) $(CCLIBS)
-	$(TUIPOST)
-
-firework.o newdemo.o ptest.o rain.o testcurs.o worm.o xmas.o: %.o: \
-$(demodir)/%.c
-	$(CC) $(CFLAGS) -o$@ $<
-
-tui.o: $(demodir)\tui.c $(demodir)\tui.h
-	$(CC) $(CFLAGS) -I$(demodir) -o $@ $<
-
-tuidemo.o: $(demodir)\tuidemo.c
-	$(CC) $(CFLAGS) -I$(demodir) -o $@ $<
-
-PLATFORM1 = EMX OS/2
-PLATFORM2 = EMX 0.9d for OS/2
-ARCNAME = pdc$(VER)_emx_os2
-
-include $(PDCURSES_SRCDIR)/makedist.mif
diff --git a/src/other/PDCurses/os2/iccos2.lrf b/src/other/PDCurses/os2/iccos2.lrf
deleted file mode 100644
index b1fdf37..0000000
--- a/src/other/PDCurses/os2/iccos2.lrf
+++ /dev/null
@@ -1,50 +0,0 @@
--+addch.obj &
--+addchstr.obj &
--+addstr.obj &
--+attr.obj &
--+beep.obj &
--+bkgd.obj &
--+border.obj &
--+clear.obj &
--+color.obj &
--+delch.obj &
--+deleteln.obj &
--+deprec.obj &
--+getch.obj &
--+getstr.obj &
--+getyx.obj &
--+inch.obj & 
--+inchstr.obj &
--+initscr.obj &
--+inopts.obj &
--+insch.obj &
--+insstr.obj &
--+instr.obj &
--+kernel.obj &
--+keyname.obj &
--+mouse.obj &
--+move.obj & 
--+outopts.obj &
--+overlay.obj &
--+pad.obj &  
--+panel.obj &
--+printw.obj &
--+refresh.obj &
--+scanw.obj &
--+scr_dump.obj &
--+scroll.obj &
--+slk.obj &  
--+termattr.obj &
--+terminfo.obj &
--+touch.obj &
--+util.obj & 
--+window.obj &
--+debug.obj &
--+pdcclip.obj &
--+pdcdisp.obj &
--+pdcgetsc.obj &
--+pdckbd.obj &
--+pdcscrn.obj &
--+pdcsetsc.obj &
--+pdcutil.obj &
-,lib.map;
diff --git a/src/other/PDCurses/os2/iccos2.mak b/src/other/PDCurses/os2/iccos2.mak
deleted file mode 100644
index 06a2c1f..0000000
--- a/src/other/PDCurses/os2/iccos2.mak
+++ /dev/null
@@ -1,256 +0,0 @@
-# NMAKE Makefile for PDCurses library - OS/2 C Set/2
-#
-# Usage: nmake -f [path\]iccos2.mak [DEBUG=] [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.lib|testcurs.exe...]
-
-O = obj
-
-!ifndef PDCURSES_SRCDIR
-PDCURSES_SRCDIR = ..
-!endif
-
-!include $(PDCURSES_SRCDIR)\version.mif
-!include $(PDCURSES_SRCDIR)\libobjs.mif
-
-osdir		= $(PDCURSES_SRCDIR)\os2
-
-PDCURSES_OS2_H	= $(osdir)\pdcos2.h
-
-CC		= icc
-
-!ifdef DEBUG
-CFLAGS  	= /Sm /Ti+ /O- /Q+ /dPDCDEBUG
-LDFLAGS 	= /NOLOGO /NOE /SE:160 /DEBUG /PMTYPE:VIO
-!else
-CFLAGS  	= /Sm /Ti- /O+ /Q+
-LDFLAGS 	= /NOLOGO /NOE /EXEPACK /PACKCODE /PACKDATA /PMTYPE:VIO
-!endif
-
-CPPFLAGS	= -I$(PDCURSES_SRCDIR)
-
-BUILD		= $(CC) -c $(CFLAGS) $(CPPFLAGS)
-
-LINK		= link386
-
-LIBEXE		= lib
-
-LIBCURSES	= pdcurses.lib
-
-all:	$(LIBCURSES) $(DEMOS)
-
-clean:
-	-del *.obj
-	-del *.lib
-	-del *.exe
-
-demos:	$(DEMOS)
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	$(LIBEXE) $@ @$(osdir)\iccos2.lrf
-	-copy $(LIBCURSES) panel.lib
-
-addch.obj: $(srcdir)\addch.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\addch.c
-
-addchstr.obj: $(srcdir)\addchstr.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\addchstr.c
-
-addstr.obj: $(srcdir)\addstr.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\addstr.c
-
-attr.obj: $(srcdir)\attr.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\attr.c
-
-beep.obj: $(srcdir)\beep.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\beep.c
-
-bkgd.obj: $(srcdir)\bkgd.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\bkgd.c
-
-border.obj: $(srcdir)\border.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\border.c
-
-clear.obj: $(srcdir)\clear.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\clear.c
-
-color.obj: $(srcdir)\color.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\color.c
-
-delch.obj: $(srcdir)\delch.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\delch.c
-
-deleteln.obj: $(srcdir)\deleteln.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\deleteln.c
-
-deprec.obj: $(srcdir)\deprec.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\deprec.c
-
-getch.obj: $(srcdir)\getch.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\getch.c
-
-getstr.obj: $(srcdir)\getstr.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\getstr.c
-
-getyx.obj: $(srcdir)\getyx.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\getyx.c
-
-inch.obj: $(srcdir)\inch.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\inch.c
-
-inchstr.obj: $(srcdir)\inchstr.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\inchstr.c
-
-initscr.obj: $(srcdir)\initscr.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\initscr.c
-
-inopts.obj: $(srcdir)\inopts.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\inopts.c
-
-insch.obj: $(srcdir)\insch.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\insch.c
-
-insstr.obj: $(srcdir)\insstr.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\insstr.c
-
-instr.obj: $(srcdir)\instr.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\instr.c
-
-kernel.obj: $(srcdir)\kernel.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\kernel.c
-
-keyname.obj: $(srcdir)\keyname.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\keyname.c
-
-mouse.obj: $(srcdir)\mouse.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\mouse.c
-
-move.obj: $(srcdir)\move.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\move.c
-
-outopts.obj: $(srcdir)\outopts.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\outopts.c
-
-overlay.obj: $(srcdir)\overlay.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\overlay.c
-
-pad.obj: $(srcdir)\pad.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\pad.c
-
-panel.obj: $(srcdir)\panel.c $(PDCURSES_HEADERS) $(PANEL_HEADER)
-	$(BUILD) $(srcdir)\panel.c
-
-printw.obj: $(srcdir)\printw.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\printw.c
-
-refresh.obj: $(srcdir)\refresh.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\refresh.c
-
-scanw.obj: $(srcdir)\scanw.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\scanw.c
-
-scr_dump.obj: $(srcdir)\scr_dump.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\scr_dump.c
-
-scroll.obj: $(srcdir)\scroll.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\scroll.c
-
-slk.obj: $(srcdir)\slk.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\slk.c
-
-termattr.obj: $(srcdir)\termattr.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\termattr.c
-
-terminfo.obj: $(srcdir)\terminfo.c $(PDCURSES_HEADERS) $(TERM_HEADER)
-	$(BUILD) $(srcdir)\terminfo.c
-
-touch.obj: $(srcdir)\touch.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\touch.c
-
-util.obj: $(srcdir)\util.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\util.c
-
-window.obj: $(srcdir)\window.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\window.c
-
-debug.obj: $(srcdir)\debug.c $(PDCURSES_HEADERS)
-	$(BUILD) $(srcdir)\debug.c
-
-pdcclip.obj: $(osdir)\pdcclip.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
-	$(BUILD) $(osdir)\pdcclip.c
-
-pdcdisp.obj: $(osdir)\pdcdisp.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
-	$(BUILD) $(osdir)\pdcdisp.c
-
-pdcgetsc.obj: $(osdir)\pdcgetsc.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
-	$(BUILD) $(osdir)\pdcgetsc.c
-
-pdckbd.obj: $(osdir)\pdckbd.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
-	$(BUILD) $(osdir)\pdckbd.c
-
-pdcscrn.obj: $(osdir)\pdcscrn.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
-	$(BUILD) $(osdir)\pdcscrn.c
-
-pdcsetsc.obj: $(osdir)\pdcsetsc.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
-	$(BUILD) $(osdir)\pdcsetsc.c
-
-pdcutil.obj: $(osdir)\pdcutil.c $(PDCURSES_HEADERS) $(PDCURSES_OS2_H)
-	$(BUILD) $(osdir)\pdcutil.c
-
-firework.exe: firework.obj $(LIBCURSES)
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-newdemo.exe: newdemo.obj $(LIBCURSES)
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-ptest.exe: ptest.obj $(LIBCURSES)
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-rain.exe: rain.obj $(LIBCURSES)
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-testcurs.exe: testcurs.obj $(LIBCURSES)
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-tuidemo.exe: tuidemo.obj tui.obj $(LIBCURSES)
-	$(LINK) $(LDFLAGS) $*.obj+tui.obj,$*,,$(LIBCURSES);
-
-worm.exe: worm.obj $(LIBCURSES)
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-xmas.exe: xmas.obj $(LIBCURSES)
-	$(LINK) $(LDFLAGS) $*.obj,$*,,$(LIBCURSES);
-
-firework.obj: $(demodir)\firework.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(demodir)\firework.c
-
-newdemo.obj: $(demodir)\newdemo.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(demodir)\newdemo.c
-
-ptest.obj: $(demodir)\ptest.c $(PANEL_HEADER) $(PDCURSES_CURSES_H)
-	$(BUILD) $(demodir)\ptest.c
-
-rain.obj: $(demodir)\rain.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(demodir)\rain.c
-
-testcurs.obj: $(demodir)\testcurs.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(demodir)\testcurs.c
-
-tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
-	$(BUILD) $(demodir)\tui.c
-
-tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(demodir)\tuidemo.c
-
-worm.obj: $(demodir)\worm.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(demodir)\worm.c
-
-xmas.obj: $(demodir)\xmas.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(demodir)\xmas.c
-
-PLATFORM1 = C Set/2 OS/2
-PLATFORM2 = C Set/2 for OS/2
-ARCNAME = pdc$(VER)_icc_os2
-
-!include $(PDCURSES_SRCDIR)\makedist.mif
diff --git a/src/other/PDCurses/os2/pdcclip.c b/src/other/PDCurses/os2/pdcclip.c
deleted file mode 100644
index ddc61d9..0000000
--- a/src/other/PDCurses/os2/pdcclip.c
+++ /dev/null
@@ -1,185 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcos2.h"
-
-RCSID("$Id: pdcclip.c,v 1.33 2008/07/14 04:24:51 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         clipboard
-
-  Synopsis:
-        int PDC_getclipboard(char **contents, long *length);
-        int PDC_setclipboard(const char *contents, long length);
-        int PDC_freeclipboard(char *contents);
-        int PDC_clearclipboard(void);
-
-  Description:
-        PDC_getclipboard() gets the textual contents of the system's 
-        clipboard. This function returns the contents of the clipboard 
-        in the contents argument. It is the responsibilitiy of the 
-        caller to free the memory returned, via PDC_freeclipboard().
-        The length of the clipboard contents is returned in the length 
-        argument.
-
-        PDC_setclipboard copies the supplied text into the system's 
-        clipboard, emptying the clipboard prior to the copy.
-
-        PDC_clearclipboard() clears the internal clipboard.
-
-  Return Values:
-        indicator of success/failure of call.
-        PDC_CLIP_SUCCESS        the call was successful
-        PDC_CLIP_MEMORY_ERROR   unable to allocate sufficient memory for 
-                                the clipboard contents
-        PDC_CLIP_EMPTY          the clipboard contains no text
-        PDC_CLIP_ACCESS_ERROR   no clipboard support
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_getclipboard                        -       -       -
-        PDC_setclipboard                        -       -       -
-        PDC_freeclipboard                       -       -       -
-        PDC_clearclipboard                      -       -       -
-
-**man-end****************************************************************/
-
-int PDC_getclipboard(char **contents, long *length)
-{
-#ifndef EMXVIDEO
-    HMQ hmq;
-    HAB hab;
-    PTIB ptib;
-    PPIB ppib;
-    ULONG ulRet;
-    long len;
-    int rc;
-#endif
-    PDC_LOG(("PDC_getclipboard() - called\n"));
-
-#ifndef EMXVIDEO
-    DosGetInfoBlocks(&ptib, &ppib);
-    ppib->pib_ultype = 3;
-    hab = WinInitialize(0);
-    hmq = WinCreateMsgQueue(hab, 0);
-
-    if (!WinOpenClipbrd(hab))
-    {
-        WinDestroyMsgQueue(hmq);
-        WinTerminate(hab);
-        return PDC_CLIP_ACCESS_ERROR;
-    }
-
-    rc = PDC_CLIP_EMPTY;
-
-    ulRet = WinQueryClipbrdData(hab, CF_TEXT);
-
-    if (ulRet)
-    {
-        len = strlen((char *)ulRet);
-        *contents = malloc(len + 1);
-
-        if (!*contents)
-            rc = PDC_CLIP_MEMORY_ERROR;
-        else
-        {
-            strcpy((char *)*contents, (char *)ulRet);
-            *length = len;
-            rc = PDC_CLIP_SUCCESS;
-        }
-    }
-
-    WinCloseClipbrd(hab);
-    WinDestroyMsgQueue(hmq);
-    WinTerminate(hab);
-
-    return rc;
-#else
-    return PDC_CLIP_ACCESS_ERROR;
-#endif
-}
-
-int PDC_setclipboard(const char *contents, long length)
-{
-#ifndef EMXVIDEO
-    HAB hab;
-    PTIB ptib;
-    PPIB ppib;
-    ULONG ulRC;
-    PSZ szTextOut = NULL;
-    int rc;
-#endif
-    PDC_LOG(("PDC_setclipboard() - called\n"));
-
-#ifndef EMXVIDEO
-    DosGetInfoBlocks(&ptib, &ppib);
-    ppib->pib_ultype = 3;
-    hab = WinInitialize(0);
-
-    if (!WinOpenClipbrd(hab))
-    {
-        WinTerminate(hab);
-        return PDC_CLIP_ACCESS_ERROR;
-    }
-
-    rc = PDC_CLIP_MEMORY_ERROR;
-
-    ulRC = DosAllocSharedMem((PVOID)&szTextOut, NULL, length + 1,
-                             PAG_WRITE | PAG_COMMIT | OBJ_GIVEABLE);
-
-    if (ulRC == 0)
-    {
-        strcpy(szTextOut, contents);
-        WinEmptyClipbrd(hab);
-
-        if (WinSetClipbrdData(hab, (ULONG)szTextOut, CF_TEXT, CFI_POINTER))
-            rc = PDC_CLIP_SUCCESS;
-        else
-        {
-            DosFreeMem(szTextOut);
-            rc = PDC_CLIP_ACCESS_ERROR;
-        }
-    }
-
-    WinCloseClipbrd(hab);
-    WinTerminate(hab);
-
-    return rc;
-#else
-    return PDC_CLIP_ACCESS_ERROR;
-#endif
-}
-
-int PDC_freeclipboard(char *contents)
-{
-    PDC_LOG(("PDC_freeclipboard() - called\n"));
-
-    if (contents)
-        free(contents);
-
-    return PDC_CLIP_SUCCESS;
-}
-
-int PDC_clearclipboard(void)
-{
-#ifndef EMXVIDEO
-    HAB hab;
-    PTIB ptib;
-    PPIB ppib;
-#endif
-    PDC_LOG(("PDC_clearclipboard() - called\n"));
-
-#ifndef EMXVIDEO
-    DosGetInfoBlocks(&ptib, &ppib);
-    ppib->pib_ultype = 3;
-    hab = WinInitialize(0);
-
-    WinEmptyClipbrd(hab);
-
-    WinCloseClipbrd(hab);
-    WinTerminate(hab);
-
-    return PDC_CLIP_SUCCESS;
-#else
-    return PDC_CLIP_ACCESS_ERROR;
-#endif
-}
diff --git a/src/other/PDCurses/os2/pdcdisp.c b/src/other/PDCurses/os2/pdcdisp.c
deleted file mode 100644
index 3c1b86e..0000000
--- a/src/other/PDCurses/os2/pdcdisp.c
+++ /dev/null
@@ -1,95 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcos2.h"
-
-RCSID("$Id: pdcdisp.c,v 1.49 2008/07/14 04:24:51 wmcbrine Exp $")
-
-/* ACS definitions originally by jshumate at wrdis01.robins.af.mil -- these 
-   match code page 437 and compatible pages (CP850, CP852, etc.) */
-
-#ifdef CHTYPE_LONG
-
-# define A(x) ((chtype)x | A_ALTCHARSET)
-
-chtype acs_map[128] =
-{
-    A(0), A(1), A(2), A(3), A(4), A(5), A(6), A(7), A(8), A(9),
-    A(10), A(11), A(12), A(13), A(14), A(15), A(16), A(17), A(18),
-    A(19), A(20), A(21), A(22), A(23), A(24), A(25), A(26), A(27),
-    A(28), A(29), A(30), A(31), ' ', '!', '"', '#', '$', '%', '&',
-    '\'', '(', ')', '*',
-
-    A(0x1a), A(0x1b), A(0x18), A(0x19),
-
-    '/',
-
-    0xdb,
-
-    '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=',
-    '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
-    'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W',
-    'X', 'Y', 'Z', '[', '\\', ']', '^', '_',
-
-    A(0x04), 0xb1,
-
-    'b', 'c', 'd', 'e',
-
-    0xf8, 0xf1, 0xb0, A(0x0f), 0xd9, 0xbf, 0xda, 0xc0, 0xc5, 0x2d,
-    0x2d, 0xc4, 0x2d, 0x5f, 0xc3, 0xb4, 0xc1, 0xc2, 0xb3, 0xf3,
-    0xf2, 0xe3, 0xd8, 0x9c, 0xf9,
-
-    A(127)
-};
-
-# undef A
-
-#endif
-
-/* position hardware cursor at (y, x) */
-
-void PDC_gotoyx(int row, int col)
-{
-    PDC_LOG(("PDC_gotoyx() - called: row %d col %d\n", row, col));
-
-#ifdef EMXVIDEO
-    v_gotoxy(col, row);
-#else
-    VioSetCurPos(row, col, 0);
-#endif
-}
-
-/* update the given physical line to look like the corresponding line in
-   curscr */
-
-void PDC_transform_line(int lineno, int x, int len, const chtype *srcp)
-{
-    /* this should be enough for the maximum width of a screen. */
-
-    struct {unsigned char text, attr;} temp_line[256];
-    int j;
-
-    PDC_LOG(("PDC_transform_line() - called: line %d\n", lineno));
-
-    /* replace the attribute part of the chtype with the 
-       actual color value for each chtype in the line */
-
-    for (j = 0; j < len; j++)
-    {
-        chtype ch = srcp[j];
-
-        temp_line[j].attr = pdc_atrtab[ch >> PDC_ATTR_SHIFT];
-
-#ifdef CHTYPE_LONG
-        if (ch & A_ALTCHARSET && !(ch & 0xff80))
-            ch = acs_map[ch & 0x7f];
-#endif
-        temp_line[j].text = ch & 0xff;
-    }
-
-#ifdef EMXVIDEO
-    v_putline((char *)temp_line, x, lineno, len);
-#else
-    VioWrtCellStr((PCH)temp_line, (USHORT)(len * sizeof(unsigned short)),
-                  (USHORT)lineno, (USHORT)x, 0);
-#endif
-}
diff --git a/src/other/PDCurses/os2/pdcgetsc.c b/src/other/PDCurses/os2/pdcgetsc.c
deleted file mode 100644
index d712dad..0000000
--- a/src/other/PDCurses/os2/pdcgetsc.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcos2.h"
-
-RCSID("$Id: pdcgetsc.c,v 1.39 2008/07/14 04:24:51 wmcbrine Exp $")
-
-/* return width of screen/viewport */
-
-int PDC_get_columns(void)
-{
-#ifdef EMXVIDEO
-    int rows = 0;
-#else
-    VIOMODEINFO modeInfo = {0};
-#endif
-    int cols = 0;
-    const char *env_cols;
-
-    PDC_LOG(("PDC_get_columns() - called\n"));
-
-#ifdef EMXVIDEO
-    v_dimen(&cols, &rows);
-#else
-    modeInfo.cb = sizeof(modeInfo);
-    VioGetMode(&modeInfo, 0);
-    cols = modeInfo.col;
-#endif
-    env_cols = getenv("COLS");
-
-    if (env_cols)
-        cols = min(atoi(env_cols), cols);
-
-    PDC_LOG(("PDC_get_columns() - returned: cols %d\n", cols));
-
-    return cols;
-}
-
-/* get the cursor size/shape */
-
-int PDC_get_cursor_mode(void)
-{
-#ifdef EMXVIDEO
-    int curstart = 0, curend = 0;
-#else
-    VIOCURSORINFO cursorInfo;
-#endif
-    PDC_LOG(("PDC_get_cursor_mode() - called\n"));
-
-#ifdef EMXVIDEO
-    v_getctype(&curstart, &curend);
-    return (curstart << 8) | curend;
-#else
-    VioGetCurType (&cursorInfo, 0);
-
-    return (cursorInfo.yStart << 8) | cursorInfo.cEnd;
-#endif
-}
-
-/* return number of screen rows */
-
-int PDC_get_rows(void)
-{
-#ifdef EMXVIDEO
-    int cols = 0;
-#else
-    VIOMODEINFO modeInfo = {0};
-#endif
-    int rows = 0;
-    const char *env_rows;
-
-    PDC_LOG(("PDC_get_rows() - called\n"));
-
-    /* use the value from LINES environment variable, if set. MH 10-Jun-92 */
-    /* and use the minimum of LINES and *ROWS.                MH 18-Jun-92 */
-
-#ifdef EMXVIDEO
-    v_dimen(&cols, &rows);
-#else
-    modeInfo.cb = sizeof(modeInfo);
-    VioGetMode(&modeInfo, 0);
-    rows = modeInfo.row;
-#endif
-    env_rows = getenv("LINES");
-
-    if (env_rows)
-        rows = min(atoi(env_rows), rows);
-
-    PDC_LOG(("PDC_get_rows() - returned: rows %d\n", rows));
-
-    return rows;
-}
diff --git a/src/other/PDCurses/os2/pdckbd.c b/src/other/PDCurses/os2/pdckbd.c
deleted file mode 100644
index 42c24cc..0000000
--- a/src/other/PDCurses/os2/pdckbd.c
+++ /dev/null
@@ -1,519 +0,0 @@
-/* Public Domain Curses */
-
-#if defined(__EMX__) || defined(__WATCOMC__) || defined(__IBMC__) || \
-defined(__TURBOC__)
-# define HAVE_SIGNAL
-# include <signal.h>
-#endif
-
-#include "pdcos2.h"
-
-RCSID("$Id: pdckbd.c,v 1.89 2008/07/14 04:24:51 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         pdckbd
-
-  Synopsis:
-        unsigned long PDC_get_input_fd(void);
-
-  Description:
-        PDC_get_input_fd() returns the file descriptor that PDCurses 
-        reads its input from. It can be used for select().
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_get_input_fd                        -       -       -
-
-**man-end****************************************************************/
-
-#ifdef EMXVIDEO
-# include <termios.h>
-static int tahead = -1;
-#else
-static KBDINFO kbdinfo;     /* default keyboard mode */
-static HMOU mouse_handle = 0;
-static MOUSE_STATUS old_mouse_status;
-static USHORT old_shift = 0;
-static bool key_pressed = FALSE;
-static int mouse_events = 0;
-#endif
-
-/************************************************************************
- *    Table for key code translation of function keys in keypad mode    *
- *    These values are for strict IBM keyboard compatibles only         *
- ************************************************************************/
-
-static short key_table[] =
-{
-    -1,             ALT_ESC,        -1,             0,
-    -1,             -1,             -1,             -1,
-    -1,             -1,             -1,             -1,
-    -1,             -1,             ALT_BKSP,       KEY_BTAB,
-    ALT_Q,          ALT_W,          ALT_E,          ALT_R,
-    ALT_T,          ALT_Y,          ALT_U,          ALT_I,
-    ALT_O,          ALT_P,          ALT_LBRACKET,   ALT_RBRACKET,
-    ALT_ENTER,      -1,             ALT_A,          ALT_S,
-    ALT_D,          ALT_F,          ALT_G,          ALT_H,
-    ALT_J,          ALT_K,          ALT_L,          ALT_SEMICOLON,
-    ALT_FQUOTE,     ALT_BQUOTE,     -1,             ALT_BSLASH,
-    ALT_Z,          ALT_X,          ALT_C,          ALT_V,
-    ALT_B,          ALT_N,          ALT_M,          ALT_COMMA,
-    ALT_STOP,       ALT_FSLASH,     -1,             ALT_PADSTAR,
-    -1,             -1,             -1,             KEY_F(1),
-    KEY_F(2),       KEY_F(3),       KEY_F(4),       KEY_F(5),
-    KEY_F(6),       KEY_F(7),       KEY_F(8),       KEY_F(9),
-    KEY_F(10),      -1,             -1,             KEY_HOME,
-    KEY_UP,         KEY_PPAGE,      ALT_PADMINUS,   KEY_LEFT,
-    KEY_B2,         KEY_RIGHT,      ALT_PADPLUS,    KEY_END,
-    KEY_DOWN,       KEY_NPAGE,      KEY_IC,         KEY_DC,
-    KEY_F(13),      KEY_F(14),      KEY_F(15),      KEY_F(16),
-    KEY_F(17),      KEY_F(18),      KEY_F(19),      KEY_F(20),
-    KEY_F(21),      KEY_F(22),      KEY_F(25),      KEY_F(26),
-    KEY_F(27),      KEY_F(28),      KEY_F(29),      KEY_F(30),
-    KEY_F(31),      KEY_F(32),      KEY_F(33),      KEY_F(34),
-    KEY_F(37),      KEY_F(38),      KEY_F(39),      KEY_F(40),
-    KEY_F(41),      KEY_F(42),      KEY_F(43),      KEY_F(44),
-    KEY_F(45),      KEY_F(46),      -1,             CTL_LEFT,
-    CTL_RIGHT,      CTL_END,        CTL_PGDN,       CTL_HOME,
-    ALT_1,          ALT_2,          ALT_3,          ALT_4,
-    ALT_5,          ALT_6,          ALT_7,          ALT_8,
-    ALT_9,          ALT_0,          ALT_MINUS,      ALT_EQUAL,
-    CTL_PGUP,       KEY_F(11),      KEY_F(12),      KEY_F(23),
-    KEY_F(24),      KEY_F(35),      KEY_F(36),      KEY_F(47),
-    KEY_F(48),      CTL_UP,         CTL_PADMINUS,   CTL_PADCENTER,
-    CTL_PADPLUS,    CTL_DOWN,       CTL_INS,        CTL_DEL,
-    CTL_TAB,        CTL_PADSLASH,   CTL_PADSTAR,    ALT_HOME,
-    ALT_UP,         ALT_PGUP,       -1,             ALT_LEFT,
-    -1,             ALT_RIGHT,      -1,             ALT_END,
-    ALT_DOWN,       ALT_PGDN,       ALT_INS,        ALT_DEL,
-    ALT_PADSLASH,   ALT_TAB,        ALT_PADENTER,   -1
-};
-
-unsigned long pdc_key_modifiers = 0L;
-
-unsigned long PDC_get_input_fd(void)
-{
-    PDC_LOG(("PDC_get_input_fd() - called\n"));
-
-    return (unsigned long)fileno(stdin);
-}
-
-#ifndef EMXVIDEO
-
-void PDC_get_keyboard_info(void)
-{
-    kbdinfo.cb = sizeof(kbdinfo);
-    KbdGetStatus(&kbdinfo, 0);
-}
-
-void PDC_set_keyboard_default(void)
-{
-    KbdSetStatus(&kbdinfo, 0);
-}
-
-#endif /* ifndef EMXVIDEO */
-
-void PDC_set_keyboard_binary(bool on)
-{
-    PDC_LOG(("PDC_set_keyboard_binary() - called\n"));
-
-#ifndef EMXVIDEO
-    if (on)
-    {
-        kbdinfo.fsMask &= ~(KEYBOARD_ASCII_MODE);
-        kbdinfo.fsMask |= KEYBOARD_BINARY_MODE;
-    }
-    else
-    {
-        kbdinfo.fsMask &= ~(KEYBOARD_BINARY_MODE);
-        kbdinfo.fsMask |= KEYBOARD_ASCII_MODE;
-    }
-
-    KbdSetStatus(&kbdinfo, 0);
-#endif
-
-#ifdef HAVE_SIGNAL
-    signal(SIGBREAK, on ? SIG_IGN : SIG_DFL);
-#endif
-}
-
-/* check if a key or mouse event is waiting */
-
-bool PDC_check_key(void)
-{
-#if !defined(_MSC_VER) && !defined(EMXVIDEO)
-    KBDKEYINFO keyInfo = {0};
-#endif
-
-#ifdef EMXVIDEO
-    if (tahead == -1)       /* Nothing typed yet */
-    {                    
-        tahead = _read_kbd(0, 0, 0);
-
-        /* Read additional */
-
-        if (tahead == 0)    
-            tahead = _read_kbd(0, 1, 0) << 8;
-    }
-
-    return (tahead != -1);
-#else
-# ifndef _MSC_VER
-
-    KbdGetStatus(&kbdinfo, 0);
-
-    if (mouse_handle)
-    {
-        MOUQUEINFO queue;
-
-        MouGetNumQueEl(&queue, mouse_handle);
-        mouse_events = queue.cEvents;
-
-        if (mouse_events)
-            return TRUE;
-    }
-
-    if (old_shift && !kbdinfo.fsState)  /* modifier released */
-    {
-        if (!key_pressed && SP->return_key_modifiers)
-            return TRUE;
-    }
-    else if (!old_shift && kbdinfo.fsState) /* modifier pressed */
-        key_pressed = FALSE;
-
-    old_shift = kbdinfo.fsState;
-
-    KbdPeek(&keyInfo, 0);   /* peek at keyboard  */
-    return (keyInfo.fbStatus != 0);
-# else
-    return kbhit();
-# endif
-#endif
-}         
-
-#ifndef EMXVIDEO
-
-static int _process_mouse_events(void)
-{
-    MOUEVENTINFO event;
-    static const USHORT button_mask[] = {6, 96, 24},
-                        move_mask[] = {2, 32, 8},
-                        press_mask[] = {4, 64, 16};
-    USHORT count = 1;
-    short shift_flags = 0;
-    int i;
-
-    MouReadEventQue(&event, &count, mouse_handle);
-    mouse_events--;
-
-    for (i = 0; i < 3; i++)
-    {
-        pdc_mouse_status.button[i] =
-            ((event.fs & move_mask[i]) ? BUTTON_MOVED : 0) |
-            ((event.fs & press_mask[i]) ? BUTTON_PRESSED : 0);
-
-        /* PRESS events are sometimes mistakenly reported as MOVE 
-           events. A MOVE should always follow a PRESS, so treat a MOVE 
-           immediately after a RELEASE as a PRESS. */
-
-        if ((pdc_mouse_status.button[i] == BUTTON_MOVED) &&
-            (old_mouse_status.button[i] == BUTTON_RELEASED))
-        {
-            pdc_mouse_status.button[i] = BUTTON_PRESSED;
-        }
-
-        if (pdc_mouse_status.button[i] == BUTTON_PRESSED && SP->mouse_wait)
-        {
-            /* Check for a click -- a PRESS followed immediately by a 
-               release */
-
-            if (!mouse_events)
-            {
-                MOUQUEINFO queue;
-
-                napms(SP->mouse_wait);
-
-                MouGetNumQueEl(&queue, mouse_handle);
-                mouse_events = queue.cEvents;
-            }
-
-            if (mouse_events)
-            {
-                MouReadEventQue(&event, &count, mouse_handle);
-
-                if (!(event.fs & button_mask[i]))
-                    pdc_mouse_status.button[i] = BUTTON_CLICKED;
-            }
-        }
-    }
-
-    pdc_mouse_status.x = event.col;
-    pdc_mouse_status.y = event.row;
-
-    pdc_mouse_status.changes = 0;
-
-    for (i = 0; i < 3; i++)
-    {
-        if (old_mouse_status.button[i] != pdc_mouse_status.button[i])
-            pdc_mouse_status.changes |= (1 << i);
-
-        if (pdc_mouse_status.button[i] == BUTTON_MOVED)
-        {
-            /* Discard non-moved "moves" */
-
-            if (pdc_mouse_status.x == old_mouse_status.x &&
-                pdc_mouse_status.y == old_mouse_status.y)
-                return -1;
-
-            /* Motion events always flag the button as changed */
-
-            pdc_mouse_status.changes |= (1 << i);
-            pdc_mouse_status.changes |= PDC_MOUSE_MOVED;
-            break;
-        }
-    }
-
-    old_mouse_status = pdc_mouse_status;
-
-    /* Treat click events as release events for comparison purposes */
-
-    for (i = 0; i < 3; i++)
-    {
-        if (old_mouse_status.button[i] == BUTTON_CLICKED)
-            old_mouse_status.button[i] = BUTTON_RELEASED;
-    }
-
-    /* Check for SHIFT/CONTROL/ALT */
-
-    if (kbdinfo.fsState & KBDSTF_ALT)
-        shift_flags |= BUTTON_ALT;
-
-    if (kbdinfo.fsState & KBDSTF_CONTROL)
-        shift_flags |= BUTTON_CONTROL;
-
-    if (kbdinfo.fsState & (KBDSTF_LEFTSHIFT|KBDSTF_RIGHTSHIFT))
-        shift_flags |= BUTTON_SHIFT;
-
-    if (shift_flags)
-    {
-        for (i = 0; i < 3; i++)
-        {
-            if (pdc_mouse_status.changes & (1 << i))
-                pdc_mouse_status.button[i] |= shift_flags;
-        }
-    }
-
-    old_shift = kbdinfo.fsState;
-    key_pressed = TRUE;
-
-    SP->key_code = TRUE;
-    return KEY_MOUSE;
-}
-
-#endif
-
-/* return the next available key or mouse event */
-
-int PDC_get_key(void)
-{
-    int key, scan;
-#ifndef EMXVIDEO
-    KBDKEYINFO keyInfo = {0};
-#endif
-
-#ifdef EMXVIDEO
-    if (tahead == -1)
-    {
-        tahead = _read_kbd(0, 1, 0);
-
-        /* Read additional */
-
-        if (tahead == 0)
-            tahead = _read_kbd(0, 1, 0) << 8;
-    }
-
-    key = tahead & 0xff;
-    scan = tahead >> 8;
-    pdc_key_modifiers = 0L;
-
-    tahead = -1;
-#else
-    pdc_key_modifiers = 0L;
-
-    if (mouse_handle && mouse_events)
-        return _process_mouse_events();
-
-    if (old_shift && !kbdinfo.fsState)
-    {
-        key = -1;
-
-        if (old_shift & KBDSTF_LEFTALT)
-        {
-            key = KEY_ALT_L;
-        }
-        else if (old_shift & KBDSTF_RIGHTALT)
-        {
-            key = KEY_ALT_R;
-        }
-        else if (old_shift & KBDSTF_LEFTCONTROL)
-        {
-            key = KEY_CONTROL_L;
-        }
-        else if (old_shift & KBDSTF_RIGHTCONTROL)
-        {
-            key = KEY_CONTROL_R;
-        }
-        else if (old_shift & KBDSTF_LEFTSHIFT)
-        {
-            key = KEY_SHIFT_L;
-        }
-        else if (old_shift & KBDSTF_RIGHTSHIFT)
-        {
-            key = KEY_SHIFT_R;
-        }
-
-        key_pressed = FALSE;
-        old_shift = kbdinfo.fsState;
-
-        SP->key_code = TRUE;
-        return key;
-    }
-
-    KbdCharIn(&keyInfo, IO_WAIT, 0);    /* get a character */
-
-    key = keyInfo.chChar;
-    scan = keyInfo.chScan;
-
-    if (SP->save_key_modifiers)
-    {
-        if (keyInfo.fsState & KBDSTF_ALT)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_ALT;
-
-        if (keyInfo.fsState & KBDSTF_CONTROL)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_CONTROL;
-
-        if (keyInfo.fsState & KBDSTF_NUMLOCK_ON)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_NUMLOCK;
-
-        if (keyInfo.fsState & (KBDSTF_LEFTSHIFT|KBDSTF_RIGHTSHIFT))
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_SHIFT;
-    }
-#endif
-    if (scan == 0x1c && key == 0x0a)    /* ^Enter */
-        key = CTL_ENTER;
-    else if (scan == 0xe0 && key == 0x0d)   /* PadEnter */
-        key = PADENTER;
-    else if (scan == 0xe0 && key == 0x0a)   /* ^PadEnter */
-        key = CTL_PADENTER;
-    else if (scan == 0x37 && key == 0x2a)   /* Star */
-        key = PADSTAR;
-    else if (scan == 0x4a && key == 0x2d)   /* Minus */
-        key = PADMINUS;
-    else if (scan == 0x4e && key == 0x2b)   /* Plus */
-        key = PADPLUS;
-    else if (scan == 0xe0 && key == 0x2f)   /* Slash */
-        key = PADSLASH;
-    else if (key == 0x00 || (key == 0xe0 && scan > 53 && scan != 86))
-        key = (scan > 0xa7) ? -1 : key_table[scan];
-
-    if (keyInfo.fsState & (KBDSTF_LEFTSHIFT|KBDSTF_RIGHTSHIFT))
-    {
-        switch (key)
-        {
-        case KEY_HOME:  /* Shift Home */
-            key = KEY_SHOME;
-            break;
-        case KEY_UP:    /* Shift Up */
-            key = KEY_SUP;
-            break;
-        case KEY_PPAGE: /* Shift PgUp */
-            key = KEY_SPREVIOUS;
-            break;
-        case KEY_LEFT:  /* Shift Left */
-            key = KEY_SLEFT;
-            break;
-        case KEY_RIGHT: /* Shift Right */
-            key = KEY_SRIGHT;
-            break;
-        case KEY_END:   /* Shift End */
-            key = KEY_SEND;
-            break;
-        case KEY_DOWN:  /* Shift Down */
-            key = KEY_SDOWN;
-            break;
-        case KEY_NPAGE: /* Shift PgDn */
-            key = KEY_SNEXT;
-            break;
-        case KEY_IC:    /* Shift Ins */
-            key = KEY_SIC;
-            break;
-        case KEY_DC:    /* Shift Del */
-            key = KEY_SDC;
-        }
-    }
-
-    key_pressed = TRUE;
-    SP->key_code = ((unsigned)key >= 256);
-
-    return key;
-}
-
-/* discard any pending keyboard or mouse input -- this is the core
-   routine for flushinp() */
-
-void PDC_flushinp(void)
-{
-    PDC_LOG(("PDC_flushinp() - called\n"));
-
-#ifdef EMXVIDEO
-    tcflush(0, TCIFLUSH);
-#else
-    if (mouse_handle)
-        MouFlushQue(mouse_handle);
-
-    KbdFlushBuffer(0);
-#endif
-}
-
-int PDC_mouse_set(void)
-{
-#ifndef EMXVIDEO
-
-    unsigned long mbe = SP->_trap_mbe;
-
-    if (mbe && !mouse_handle)
-    {
-        memset(&old_mouse_status, 0, sizeof(MOUSE_STATUS));
-        MouOpen(NULL, &mouse_handle);
-        if (mouse_handle)
-            MouDrawPtr(mouse_handle);
-    }
-    else if (!mbe && mouse_handle)
-    {
-        MouClose(mouse_handle);
-        mouse_handle = 0;
-    }
-
-    if (mbe && mouse_handle)
-    {
-        USHORT mask = ((mbe & (BUTTON1_PRESSED | BUTTON1_CLICKED |
-                               BUTTON1_MOVED)) ? 6 : 0) |
-
-                      ((mbe & (BUTTON3_PRESSED | BUTTON3_CLICKED | 
-                               BUTTON3_MOVED)) ? 24 : 0) |
-
-                      ((mbe & (BUTTON2_PRESSED | BUTTON2_CLICKED | 
-                               BUTTON2_MOVED)) ? 96 : 0);
-
-        MouSetEventMask(&mask, mouse_handle);
-    }
-#endif
-    return OK;
-}
-
-int PDC_modifiers_set(void)
-{
-    key_pressed = FALSE;
-
-    return OK;
-}
diff --git a/src/other/PDCurses/os2/pdcos2.h b/src/other/PDCurses/os2/pdcos2.h
deleted file mode 100644
index 1c11d48..0000000
--- a/src/other/PDCurses/os2/pdcos2.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Public Domain Curses */
-
-/* $Id: pdcos2.h,v 1.9 2008/08/14 06:38:35 wmcbrine Exp $ */
-
-#ifdef _MSC_VER
-# define USE_OS2_H 1         /* Use the os2.h for the compiler       */
-# define APIRET USHORT
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-
-#ifdef EMXVIDEO
-# include <sys/video.h>
-#else
-# define INCL_DOS
-# define INCL_DOSMISC
-# define INCL_WIN
-# define INCL_VIO
-# define INCL_KBD
-# define INCL_MOU
-# include <os2.h>
-#endif
-
-#include <curspriv.h>
-
-#ifdef __WATCOMC__
-# define PDCTHUNK(x) ((ptr_16)(x))
-# ifdef __386__
-#  define SEG16 _Seg16
-# else
-#  define SEG16
-# endif
-
-typedef void * SEG16 ptr_16;
-
-#else
-# ifdef __EMX__
-#  ifdef __INNOTEK_LIBC__
-#   define PDCTHUNK(x) ((PCH)_libc_32to16(x))
-#  else
-#   define PDCTHUNK(x) ((PCH)_emx_32to16(x))
-#  endif
-# endif
-#endif
-
-extern unsigned char *pdc_atrtab;
-extern int pdc_font;
-
-extern void PDC_get_keyboard_info(void);
-extern void PDC_set_keyboard_default(void);
diff --git a/src/other/PDCurses/os2/pdcscrn.c b/src/other/PDCurses/os2/pdcscrn.c
deleted file mode 100644
index e2d68fa..0000000
--- a/src/other/PDCurses/os2/pdcscrn.c
+++ /dev/null
@@ -1,422 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcos2.h"
-
-RCSID("$Id: pdcscrn.c,v 1.76 2008/07/14 04:24:51 wmcbrine Exp $")
-
-#ifdef CHTYPE_LONG
-# define PDC_OFFSET 32
-#else
-# define PDC_OFFSET  8
-#endif
-
-/* COLOR_PAIR to attribute encoding table. */
-
-unsigned char *pdc_atrtab = (unsigned char *)NULL;
-
-int pdc_font;  /* default font size */
-
-static short curstoreal[16], realtocurs[16] =
-{
-    COLOR_BLACK, COLOR_BLUE, COLOR_GREEN, COLOR_CYAN, COLOR_RED,
-    COLOR_MAGENTA, COLOR_YELLOW, COLOR_WHITE, COLOR_BLACK + 8,
-    COLOR_BLUE + 8, COLOR_GREEN + 8, COLOR_CYAN + 8, COLOR_RED + 8,
-    COLOR_MAGENTA + 8, COLOR_YELLOW + 8, COLOR_WHITE + 8
-};
-
-#ifdef EMXVIDEO
-static unsigned char *saved_screen = NULL;
-static int saved_lines = 0;
-static int saved_cols = 0;
-#else
-# ifdef PDCTHUNK
-#  ifdef __EMX__
-#   define THUNKEDVIO VIOCOLORREG
-#  else
-
-typedef struct {
-    USHORT cb;
-    USHORT type;
-    USHORT firstcolorreg;
-    USHORT numcolorregs;
-    ptr_16 colorregaddr;
-} THUNKEDVIO;
-
-#  endif
-# endif
-
-static PCH saved_screen = NULL;
-static USHORT saved_lines = 0;
-static USHORT saved_cols = 0;
-static VIOMODEINFO scrnmode;    /* default screen mode  */
-static VIOMODEINFO saved_scrnmode[3];
-static int saved_font[3];
-static bool can_change = FALSE;
-
-static int _get_font(void)
-{
-    VIOMODEINFO modeInfo = {0};
-
-    modeInfo.cb = sizeof(modeInfo);
-
-    VioGetMode(&modeInfo, 0);
-    return (modeInfo.vres / modeInfo.row);
-}
-
-static void _set_font(int size)
-{
-    VIOMODEINFO modeInfo = {0};
-
-    if (pdc_font != size)
-    {
-        modeInfo.cb = sizeof(modeInfo);
-
-        /* set most parameters of modeInfo */
-
-        VioGetMode(&modeInfo, 0);
-        modeInfo.cb = 8;    /* ignore horiz an vert resolution */
-        modeInfo.row = modeInfo.vres / size;
-        VioSetMode(&modeInfo, 0);
-    }
-
-    curs_set(SP->visibility);
-
-    pdc_font = _get_font();
-}
-
-#endif
-
-/* close the physical screen -- may restore the screen to its state
-   before PDC_scr_open(); miscellaneous cleanup */
-
-void PDC_scr_close(void)
-{
-    PDC_LOG(("PDC_scr_close() - called\n"));
-
-    if (saved_screen && getenv("PDC_RESTORE_SCREEN"))
-    {
-#ifdef EMXVIDEO
-        v_putline(saved_screen, 0, 0, saved_lines * saved_cols);
-#else
-        VioWrtCellStr(saved_screen, saved_lines * saved_cols * 2,
-            0, 0, (HVIO)NULL);
-#endif
-        free(saved_screen);
-        saved_screen = NULL;
-    }
-
-    reset_shell_mode();
-
-    if (SP->visibility != 1)
-        curs_set(1);
-
-    /* Position cursor to the bottom left of the screen. */
-
-    PDC_gotoyx(PDC_get_rows() - 2, 0);
-}
-
-void PDC_scr_free(void)
-{
-    if (SP)
-        free(SP);
-    if (pdc_atrtab)
-        free(pdc_atrtab);
-
-    pdc_atrtab = (unsigned char *)NULL;
-}
-
-/* open the physical screen -- allocate SP, miscellaneous intialization,
-   and may save the existing screen for later restoration */
-
-int PDC_scr_open(int argc, char **argv)
-{
-#ifdef EMXVIDEO
-    int adapter;
-#else
-    USHORT totchars;
-#endif
-    int i;
-    short r, g, b;
-
-    PDC_LOG(("PDC_scr_open() - called\n"));
-
-    SP = calloc(1, sizeof(SCREEN));
-    pdc_atrtab = calloc(PDC_COLOR_PAIRS * PDC_OFFSET, 1);
-
-    if (!SP || !pdc_atrtab)
-        return ERR;
-
-    for (i = 0; i < 16; i++)
-        curstoreal[realtocurs[i]] = i;
-
-#ifdef EMXVIDEO
-    v_init();
-#endif
-    SP->orig_attr = FALSE;
-
-#ifdef EMXVIDEO
-    adapter = v_hardware();
-    SP->mono = (adapter == V_MONOCHROME);
-
-    pdc_font = SP->mono ? 14 : (adapter == V_COLOR_8) ? 8 : 12;
-#else
-    VioGetMode(&scrnmode, 0);
-    PDC_get_keyboard_info();
-
-    pdc_font = _get_font();
-#endif
-    SP->lines = PDC_get_rows();
-    SP->cols = PDC_get_columns();
-
-    SP->mouse_wait = PDC_CLICK_PERIOD;
-    SP->audible = TRUE;
-
-    /* This code for preserving the current screen */
-
-    if (getenv("PDC_RESTORE_SCREEN"))
-    {
-        saved_lines = SP->lines;
-        saved_cols = SP->cols;
-
-        saved_screen = malloc(2 * saved_lines * saved_cols);
-
-        if (!saved_screen)
-        {
-            SP->_preserve = FALSE;
-            return OK;
-        }
-#ifdef EMXVIDEO
-        v_getline(saved_screen, 0, 0, saved_lines * saved_cols);
-#else
-        totchars = saved_lines * saved_cols * 2;
-        VioReadCellStr((PCH)saved_screen, &totchars, 0, 0, (HVIO)NULL);
-#endif
-    }
-
-    SP->_preserve = (getenv("PDC_PRESERVE_SCREEN") != NULL);
-
-    can_change = (PDC_color_content(0, &r, &g, &b) == OK);
-
-    return OK;
-}
-
-/* the core of resize_term() */
-
-int PDC_resize_screen(int nlines, int ncols)
-{
-#ifndef EMXVIDEO
-    VIOMODEINFO modeInfo = {0};
-    USHORT result;
-#endif
-
-    PDC_LOG(("PDC_resize_screen() - called. Lines: %d Cols: %d\n",
-              nlines, ncols));
-
-#ifdef EMXVIDEO
-    return ERR;
-#else
-    modeInfo.cb = sizeof(modeInfo);
-
-    /* set most parameters of modeInfo */
-
-    VioGetMode(&modeInfo, 0);
-    modeInfo.fbType = 1;
-    modeInfo.row = nlines;
-    modeInfo.col = ncols;
-    result = VioSetMode(&modeInfo, 0);
-
-    LINES = PDC_get_rows();
-    COLS = PDC_get_columns();
-
-    return (result == 0) ? OK : ERR;
-#endif
-}
-
-void PDC_reset_prog_mode(void)
-{
-    PDC_LOG(("PDC_reset_prog_mode() - called.\n"));
-
-#ifndef EMXVIDEO
-    PDC_set_keyboard_binary(TRUE);
-#endif
-}
-
-void PDC_reset_shell_mode(void)
-{
-    PDC_LOG(("PDC_reset_shell_mode() - called.\n"));
-
-#ifndef EMXVIDEO
-    PDC_set_keyboard_default();
-#endif
-}
-
-#ifndef EMXVIDEO
-
-static bool _screen_mode_equals(VIOMODEINFO *oldmode)
-{
-    VIOMODEINFO current = {0};
-
-    VioGetMode(&current, 0);
-
-    return ((current.cb == oldmode->cb) &&
-            (current.fbType == oldmode->fbType) &&
-            (current.color == oldmode->color) && 
-            (current.col == oldmode->col) &&
-            (current.row == oldmode->row) && 
-            (current.hres == oldmode->vres) &&
-            (current.vres == oldmode->vres));
-}
-
-#endif
-
-void PDC_restore_screen_mode(int i)
-{
-#ifndef EMXVIDEO
-    if (i >= 0 && i <= 2)
-    {
-        pdc_font = _get_font();
-        _set_font(saved_font[i]);
-
-        if (!_screen_mode_equals(&saved_scrnmode[i]))
-            if (VioSetMode(&saved_scrnmode[i], 0) != 0)
-            {
-                pdc_font = _get_font();
-                scrnmode = saved_scrnmode[i];
-                LINES = PDC_get_rows();
-                COLS = PDC_get_columns();
-            }
-    }
-#endif
-}
-
-void PDC_save_screen_mode(int i)
-{
-#ifndef EMXVIDEO
-    if (i >= 0 && i <= 2)
-    {
-        saved_font[i] = pdc_font;
-        saved_scrnmode[i] = scrnmode;
-    }
-#endif
-}
-
-void PDC_init_pair(short pair, short fg, short bg)
-{
-    unsigned char att, temp_bg;
-    chtype i;
-
-    fg = curstoreal[fg];
-    bg = curstoreal[bg];
-
-    for (i = 0; i < PDC_OFFSET; i++)
-    {
-        att = fg | (bg << 4);
-
-        if (i & (A_REVERSE >> PDC_ATTR_SHIFT))
-            att = bg | (fg << 4);
-        if (i & (A_UNDERLINE >> PDC_ATTR_SHIFT))
-            att = 1;
-        if (i & (A_INVIS >> PDC_ATTR_SHIFT))
-        {
-            temp_bg = att >> 4;
-            att = temp_bg << 4 | temp_bg;
-        }
-        if (i & (A_BOLD >> PDC_ATTR_SHIFT))
-            att |= 8;
-        if (i & (A_BLINK >> PDC_ATTR_SHIFT))
-            att |= 128;
-
-        pdc_atrtab[pair * PDC_OFFSET + i] = att;
-    }
-}
-
-int PDC_pair_content(short pair, short *fg, short *bg)
-{
-    *fg = realtocurs[pdc_atrtab[pair * PDC_OFFSET] & 0x0F];
-    *bg = realtocurs[(pdc_atrtab[pair * PDC_OFFSET] & 0xF0) >> 4];
-
-    return OK;
-}
-
-bool PDC_can_change_color(void)
-{
-    return can_change;
-}
-
-int PDC_color_content(short color, short *red, short *green, short *blue)
-{
-#ifdef PDCTHUNK
-    THUNKEDVIO vcr;
-    USHORT palbuf[4];
-    unsigned char pal[3];
-    int rc;
-
-    /* Read single DAC register */
-
-    palbuf[0] = 8;
-    palbuf[1] = 0;
-    palbuf[2] = curstoreal[color];
-
-    rc = VioGetState(&palbuf, 0);
-    if (rc)
-        return ERR;
-
-    vcr.cb = sizeof(vcr);
-    vcr.type = 3;
-    vcr.firstcolorreg = palbuf[3];
-    vcr.numcolorregs = 1;
-    vcr.colorregaddr = PDCTHUNK(pal);
-
-    rc = VioGetState(&vcr, 0);
-    if (rc)
-        return ERR;
-
-    /* Scale and store */
-
-    *red = DIVROUND((unsigned)(pal[0]) * 1000, 63);
-    *green = DIVROUND((unsigned)(pal[1]) * 1000, 63);
-    *blue = DIVROUND((unsigned)(pal[2]) * 1000, 63);
-
-    return OK;
-#else
-    return ERR;
-#endif
-}
-
-int PDC_init_color(short color, short red, short green, short blue)
-{
-#ifdef PDCTHUNK
-    THUNKEDVIO vcr;
-    USHORT palbuf[4];
-    unsigned char pal[3];
-    int rc;
-
-    /* Scale */
-
-    pal[0] = DIVROUND((unsigned)red * 63, 1000);
-    pal[1] = DIVROUND((unsigned)green * 63, 1000);
-    pal[2] = DIVROUND((unsigned)blue * 63, 1000);
-
-    /* Set single DAC register */
-
-    palbuf[0] = 8;
-    palbuf[1] = 0;
-    palbuf[2] = curstoreal[color];
-
-    rc = VioGetState(&palbuf, 0);
-    if (rc)
-        return ERR;
-
-    vcr.cb = sizeof(vcr);
-    vcr.type = 3;
-    vcr.firstcolorreg = palbuf[3];
-    vcr.numcolorregs = 1;
-    vcr.colorregaddr = PDCTHUNK(pal);
-
-    rc = VioSetState(&vcr, 0);
-
-    return rc ? ERR : OK;
-#else
-    return ERR;
-#endif
-}
diff --git a/src/other/PDCurses/os2/pdcsetsc.c b/src/other/PDCurses/os2/pdcsetsc.c
deleted file mode 100644
index 2a770bd..0000000
--- a/src/other/PDCurses/os2/pdcsetsc.c
+++ /dev/null
@@ -1,110 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcos2.h"
-
-RCSID("$Id: pdcsetsc.c,v 1.44 2008/07/14 04:24:51 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         pdcsetsc
-
-  Synopsis:
-        int PDC_set_blink(bool blinkon);
-        void PDC_set_title(const char *title);
-
-  Description:
-        PDC_set_blink() toggles whether the A_BLINK attribute sets an
-        actual blink mode (TRUE), or sets the background color to high
-        intensity (FALSE). The default is platform-dependent (FALSE in
-        most cases). It returns OK if it could set the state to match 
-        the given parameter, ERR otherwise. Current platforms also 
-        adjust the value of COLORS according to this function -- 16 for 
-        FALSE, and 8 for TRUE.
-
-        PDC_set_title() sets the title of the window in which the curses
-        program is running. This function may not do anything on some
-        platforms. (Currently it only works in Win32 and X11.)
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_set_blink                           -       -       -
-        PDC_set_title                           -       -       -
-
-**man-end****************************************************************/
-
-int PDC_curs_set(int visibility)
-{
-#ifndef EMXVIDEO
-    VIOCURSORINFO pvioCursorInfo;
-#endif
-    int ret_vis, hidden = 0, start = 0, end = 0;
-
-    PDC_LOG(("PDC_curs_set() - called: visibility=%d\n", visibility));
-
-    ret_vis = SP->visibility;
-    SP->visibility = visibility;
-
-    switch(visibility)
-    {
-    case 0:     /* invisible */
-#ifdef EMXVIDEO
-        start = end = 0;
-#else
-        start = pdc_font / 4;
-        end = pdc_font;
-        hidden = -1;
-#endif
-        break;
-
-    case 2:     /* highly visible */
-        start = 2;      /* almost full-height block */
-        end = pdc_font - 1;
-        break;
-
-    default:    /* normal visibility */
-        start = (SP->orig_cursor >> 8) & 0xff;
-        end = SP->orig_cursor & 0xff;
-    }
-
-#ifdef EMXVIDEO
-    if (!visibility)
-        v_hidecursor();
-    else
-        v_ctype(start, end);
-#else
-    pvioCursorInfo.yStart = (USHORT)start;
-    pvioCursorInfo.cEnd = (USHORT)end;
-    pvioCursorInfo.cx = (USHORT)1;
-    pvioCursorInfo.attr = hidden;
-    VioSetCurType((PVIOCURSORINFO)&pvioCursorInfo, 0);
-#endif
-    return ret_vis;
-}
-
-void PDC_set_title(const char *title)
-{
-    PDC_LOG(("PDC_set_title() - called:<%s>\n", title));
-}
-
-int PDC_set_blink(bool blinkon)
-{
-#ifndef EMXVIDEO
-    USHORT statebuf[3], result;
-
-    statebuf[0] = 6;    /* length */
-    statebuf[1] = 2;    /* blink/intensity */
-    statebuf[2] = !blinkon;
-
-    result = VioSetState(&statebuf, 0);
-    VioGetState(&statebuf, 0);  /* needed? */
-
-    if (pdc_color_started)
-        COLORS = statebuf[2] ? 16 : 8;
-
-    return (result == 0) ? OK : ERR;
-#else
-    if (pdc_color_started)
-        COLORS = 16;
-
-    return blinkon ? ERR : OK;
-#endif
-}
diff --git a/src/other/PDCurses/os2/pdcutil.c b/src/other/PDCurses/os2/pdcutil.c
deleted file mode 100644
index 290be35..0000000
--- a/src/other/PDCurses/os2/pdcutil.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcos2.h"
-
-RCSID("$Id: pdcutil.c,v 1.14 2008/07/14 04:24:51 wmcbrine Exp $")
-
-#if defined(OS2) && !defined(__EMX__)
-APIRET APIENTRY DosSleep(ULONG ulTime);
-#endif
-
-void PDC_beep(void)
-{
-    PDC_LOG(("PDC_beep() - called\n"));
-
-#ifdef EMXVIDEO
-    putchar('\007');
-#else
-    DosBeep(1380, 100);
-#endif
-}
-
-void PDC_napms(int ms)
-{
-    PDC_LOG(("PDC_napms() - called: ms=%d\n", ms));
-
-#ifdef __EMX__
-    _sleep2(ms);
-#else
-    DosSleep(ms);
-#endif
-}
-
-const char *PDC_sysname(void)
-{
-    return "OS/2";
-}
diff --git a/src/other/PDCurses/os2/wccos2.mak b/src/other/PDCurses/os2/wccos2.mak
deleted file mode 100644
index d5900d3..0000000
--- a/src/other/PDCurses/os2/wccos2.mak
+++ /dev/null
@@ -1,43 +0,0 @@
-# Watcom WMAKE Makefile for PDCurses library - OS/2 Open Watcom 1.1+
-#
-# Usage: wmake -f [path\]wccos2.mak [DEBUG=Y] [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.lib|testcurs.exe...]
-
-!ifdef %PDCURSES_SRCDIR
-PDCURSES_SRCDIR	= $(%PDCURSES_SRCDIR)
-!else
-PDCURSES_SRCDIR	= ..
-!endif
-
-!include $(PDCURSES_SRCDIR)\version.mif
-
-osdir		= $(PDCURSES_SRCDIR)\os2
-
-CC		= wcc386
-TARGET		= os2v2
-
-CFLAGS		= /bt=$(TARGET) /wx /s /zq /i=$(PDCURSES_SRCDIR)
-
-!ifeq DEBUG Y
-CFLAGS  	+= /d2 /DPDCDEBUG
-LDFLAGS 	= D A op q sys $(TARGET)
-!else
-CFLAGS  	+= /oneatx
-LDFLAGS 	= op q sys $(TARGET)
-!endif
-
-LIBEXE		= wlib /q /n /b /c /t
-
-!include $(PDCURSES_SRCDIR)\watcom.mif
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	$(LIBEXE) $@ $(LIBOBJS) $(PDCOBJS)
-	-copy $(LIBCURSES) panel.lib
-
-PLATFORM1	= Watcom C++ OS/2
-PLATFORM2	= Open Watcom 1.6 for OS/2
-ARCNAME		= pdc$(VER)_wcc_os2
-
-!include $(PDCURSES_SRCDIR)\makedist.mif
diff --git a/src/other/PDCurses/panel.h b/src/other/PDCurses/panel.h
deleted file mode 100644
index 1d7cace..0000000
--- a/src/other/PDCurses/panel.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/* Public Domain Curses */
-
-/* $Id: panel.h,v 1.19 2008/07/13 16:08:16 wmcbrine Exp $ */
-
-/*----------------------------------------------------------------------*
- *                         Panels for PDCurses                          *
- *----------------------------------------------------------------------*/
-
-#ifndef __PDCURSES_PANEL_H__
-#define __PDCURSES_PANEL_H__ 1
-
-#include <curses.h>
-
-#if defined(__cplusplus) || defined(__cplusplus__) || defined(__CPLUSPLUS)
-extern "C"
-{
-#endif
-
-typedef struct panelobs
-{
-    struct panelobs *above;
-    struct panel *pan;
-} PANELOBS;
-
-typedef struct panel
-{
-    WINDOW *win;
-    int wstarty;
-    int wendy;
-    int wstartx;
-    int wendx;
-    struct panel *below;
-    struct panel *above;
-    const void *user;
-    struct panelobs *obscure;
-} PANEL;
-
-int     bottom_panel(PANEL *pan);
-int     del_panel(PANEL *pan);
-int     hide_panel(PANEL *pan);
-int     move_panel(PANEL *pan, int starty, int startx);
-PANEL  *new_panel(WINDOW *win);
-PANEL  *panel_above(const PANEL *pan);
-PANEL  *panel_below(const PANEL *pan);
-int     panel_hidden(const PANEL *pan);
-const void *panel_userptr(const PANEL *pan);
-WINDOW *panel_window(const PANEL *pan);
-int     replace_panel(PANEL *pan, WINDOW *win);
-int     set_panel_userptr(PANEL *pan, const void *uptr);
-int     show_panel(PANEL *pan);
-int     top_panel(PANEL *pan);
-void    update_panels(void);
-
-#if defined(__cplusplus) || defined(__cplusplus__) || defined(__CPLUSPLUS)
-}
-#endif
-
-#endif /* __PDCURSES_PANEL_H__ */
diff --git a/src/other/PDCurses/pdcurses/README b/src/other/PDCurses/pdcurses/README
deleted file mode 100644
index bef1c4c..0000000
--- a/src/other/PDCurses/pdcurses/README
+++ /dev/null
@@ -1,25 +0,0 @@
-PDCurses Portable Core
-======================
-
-This directory contains core PDCurses source code files common to all 
-platforms.
-
-
-Building
---------
-
-These modules are built by the platform-specific makefiles, in the 
-platform directories.
-
-
-Distribution Status
--------------------
-
-The files in this directory are released to the Public Domain.
-
-
-Acknowledgements
-----------------
-
-The panel library was originally provided by
-Warren Tucker <wht at n4hgf.mt-park.ga.us>
diff --git a/src/other/PDCurses/pdcurses/addch.c b/src/other/PDCurses/pdcurses/addch.c
deleted file mode 100644
index 586d1a7..0000000
--- a/src/other/PDCurses/pdcurses/addch.c
+++ /dev/null
@@ -1,408 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: addch.c,v 1.54 2008/07/13 16:08:17 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         addch
-
-  Synopsis:
-        int addch(const chtype ch);
-        int waddch(WINDOW *win, const chtype ch);
-        int mvaddch(int y, int x, const chtype ch);
-        int mvwaddch(WINDOW *win, int y, int x, const chtype ch);
-        int echochar(const chtype ch);
-        int wechochar(WINDOW *win, const chtype ch);
-
-        int addrawch(chtype ch);
-        int waddrawch(WINDOW *win, chtype ch);
-        int mvaddrawch(int y, int x, chtype ch);
-        int mvwaddrawch(WINDOW *win, int y, int x, chtype ch);
-
-        int add_wch(const cchar_t *wch);
-        int wadd_wch(WINDOW *win, const cchar_t *wch);
-        int mvadd_wch(int y, int x, const cchar_t *wch);
-        int mvwadd_wch(WINDOW *win, int y, int x, const cchar_t *wch);
-        int echo_wchar(const cchar_t *wch);
-        int wecho_wchar(WINDOW *win, const cchar_t *wch);
-
-  Description:
-        addch() adds the chtype ch to the default window (stdscr) at the
-        current cursor position, and advances the cursor. Note that
-        chtypes can convey both text (a single character) and
-        attributes, including a color pair. add_wch() is the wide-
-        character version of this function, taking a pointer to a
-        cchar_t instead of a chtype.
-
-        waddch() is like addch(), but also lets you specify the window.
-        (This is in fact the core output routine.) wadd_wch() is the
-        wide version.
-
-        mvaddch() moves the cursor to the specified (y, x) position, and
-        adds ch to stdscr. mvadd_wch() is the wide version.
-
-        mvwaddch() moves the cursor to the specified position and adds 
-        ch to the specified window. mvwadd_wch() is the wide version.
-
-        echochar() adds ch to stdscr at the current cursor position and 
-        calls refresh(). echo_wchar() is the wide version.
-
-        wechochar() adds ch to the specified window and calls 
-        wrefresh(). wecho_wchar() is the wide version.
-
-        addrawch(), waddrawch(), mvaddrawch() and mvwaddrawch() are
-        PDCurses-specific wrappers for addch() etc. that disable the 
-        translation of control characters.
-
-        The following applies to all these functions:
-
-        If the cursor moves on to the right margin, an automatic newline 
-        is performed.  If scrollok is enabled, and a character is added 
-        to the bottom right corner of the window, the scrolling region 
-        will be scrolled up one line.  If scrolling is not allowed, ERR 
-        will be returned.
-
-        If ch is a tab, newline, or backspace, the cursor will be moved 
-        appropriately within the window.  If ch is a newline, the 
-        clrtoeol routine is called before the cursor is moved to the 
-        beginning of the next line.  If newline mapping is off, the 
-        cursor will be moved to the next line, but the x coordinate will 
-        be unchanged.  If ch is a tab the cursor is moved to the next 
-        tab position within the window.  If ch is another control 
-        character, it will be drawn in the ^X notation.  Calling the 
-        inch() routine after adding a control character returns the 
-        representation of the control character, not the control 
-        character.
-
-        Video attributes can be combined with a character by ORing them 
-        into the parameter. Text, including attributes, can be copied 
-        from one place to another by using inch() and addch().
-
-        Note that in PDCurses, for now, a cchar_t and a chtype are the
-        same. The text field is 16 bits wide, and is treated as Unicode
-        (UCS-2) when PDCurses is built with wide-character support
-        (define PDC_WIDE). So, in functions that take a chtype, like
-        addch(), both the wide and narrow versions will handle Unicode.
-        But for portability, you should use the wide functions.
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        addch                                   Y       Y       Y
-        waddch                                  Y       Y       Y
-        mvaddch                                 Y       Y       Y
-        mvwaddch                                Y       Y       Y
-        echochar                                Y       -      3.0
-        wechochar                               Y       -      3.0
-        addrawch                                -       -       -
-        waddrawch                               -       -       -
-        mvaddrawch                              -       -       -
-        mvwaddrawch                             -       -       -
-        add_wch                                 Y
-        wadd_wch                                Y
-        mvadd_wch                               Y
-        mvwadd_wch                              Y
-        echo_wchar                              Y
-        wecho_wchar                             Y
-
-**man-end****************************************************************/
-
-int waddch(WINDOW *win, const chtype ch)
-{
-    int x, y;
-    chtype text, attr;
-    bool xlat;
-
-    PDC_LOG(("waddch() - called: win=%p ch=%x (text=%c attr=0x%x)\n",
-             win, ch, ch & A_CHARTEXT, ch & A_ATTRIBUTES));
-
-    if (!win)
-        return ERR;
-
-    x = win->_curx;
-    y = win->_cury;
-
-    if (y > win->_maxy || x > win->_maxx || y < 0 || x < 0)
-        return ERR;
-
-    xlat = !SP->raw_out && !(ch & A_ALTCHARSET);
-    text = ch & A_CHARTEXT;
-    attr = ch & A_ATTRIBUTES;
-
-    if (xlat && (text < ' ' || text == 0x7f))
-    {
-        int x2;
-
-        switch (text)
-        {
-        case '\t':
-            for (x2 = ((x / TABSIZE) + 1) * TABSIZE; x < x2; x++)
-            {
-                if (waddch(win, attr | ' ') == ERR)
-                    return ERR;
-
-                /* if tab to next line, exit the loop */
-
-                if (!win->_curx)
-                    break;
-            }
-            return OK;
-
-        case '\n':
-            /* if lf -> crlf */
-
-            if (!SP->raw_out)
-                x = 0;
-
-            wclrtoeol(win);
-
-            if (++y > win->_bmarg)
-            {
-                y--;
-
-                if (wscrl(win, 1) == ERR)
-                    return ERR;
-            }
-
-            break;
-
-        case '\b':
-            /* don't back over left margin */
-
-            if (--x < 0)
-        case '\r':
-                x = 0;
-
-            break;
-
-        case 0x7f:
-            if (waddch(win, attr | '^') == ERR)
-                return ERR;
-
-            return waddch(win, attr | '?');
-
-        default:
-            /* handle control chars */
-
-            if (waddch(win, attr | '^') == ERR)
-                return ERR;
-
-            return waddch(win, ch + '@');
-        }
-    }
-    else
-    {
-        /* If the incoming character doesn't have its own attribute,
-           then use the current attributes for the window. If it has
-           attributes but not a color component, OR the attributes to
-           the current attributes for the window. If it has a color
-           component, use the attributes solely from the incoming
-           character. */
-
-        if (!(attr & A_COLOR))
-            attr |= win->_attrs;
-
-        /* wrs (4/10/93): Apply the same sort of logic for the window 
-           background, in that it only takes precedence if other color 
-           attributes are not there and that the background character 
-           will only print if the printing character is blank. */
-
-        if (!(attr & A_COLOR))
-            attr |= win->_bkgd & A_ATTRIBUTES;
-        else
-            attr |= win->_bkgd & (A_ATTRIBUTES ^ A_COLOR);
-
-        if (text == ' ')
-            text = win->_bkgd & A_CHARTEXT;
-
-        /* Add the attribute back into the character. */
-
-        text |= attr;
-
-        /* Only change _firstch/_lastch if the character to be added is
-           different from the character/attribute that is already in
-           that position in the window. */
-
-        if (win->_y[y][x] != text)
-        {
-            if (win->_firstch[y] == _NO_CHANGE)
-                win->_firstch[y] = win->_lastch[y] = x;
-            else
-                if (x < win->_firstch[y])
-                    win->_firstch[y] = x;
-                else
-                    if (x > win->_lastch[y])
-                        win->_lastch[y] = x;
-
-            win->_y[y][x] = text;
-        }
-
-        if (++x >= win->_maxx)
-        {
-            /* wrap around test */
-
-            x = 0;
-
-            if (++y > win->_bmarg)
-            {
-                y--;
-
-                if (wscrl(win, 1) == ERR)
-                {
-                    PDC_sync(win);
-                    return ERR;
-                }
-            }
-        }
-    }
-
-    win->_curx = x;
-    win->_cury = y;
-
-    if (win->_immed)
-        wrefresh(win);
-    if (win->_sync)
-        wsyncup(win);
-
-    return OK;
-}
-
-int addch(const chtype ch)
-{
-    PDC_LOG(("addch() - called: ch=%x\n", ch));
-
-    return waddch(stdscr, ch);
-}
-
-int mvaddch(int y, int x, const chtype ch)
-{
-    PDC_LOG(("mvaddch() - called: y=%d x=%d ch=%x\n", y, x, ch));
-
-    if (move(y,x) == ERR)
-        return ERR;
-
-    return waddch(stdscr, ch);
-}
-
-int mvwaddch(WINDOW *win, int y, int x, const chtype ch)
-{
-    PDC_LOG(("mvwaddch() - called: win=%p y=%d x=%d ch=%d\n", win, y, x, ch));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return waddch(win, ch);
-}
-
-int echochar(const chtype ch)
-{
-    PDC_LOG(("echochar() - called: ch=%x\n", ch));
-
-    return wechochar(stdscr, ch);
-}
-
-int wechochar(WINDOW *win, const chtype ch)
-{
-    PDC_LOG(("wechochar() - called: win=%p ch=%x\n", win, ch));
-
-    if (waddch(win, ch) == ERR)
-        return ERR;
-
-    return wrefresh(win);
-}
-
-int waddrawch(WINDOW *win, chtype ch)
-{
-    PDC_LOG(("waddrawch() - called: win=%p ch=%x (text=%c attr=0x%x)\n",
-             win, ch, ch & A_CHARTEXT, ch & A_ATTRIBUTES));
-
-    if ((ch & A_CHARTEXT) < ' ' || (ch & A_CHARTEXT) == 0x7f)
-        ch |= A_ALTCHARSET;
-
-    return waddch(win, ch);
-}
-
-int addrawch(chtype ch)
-{
-    PDC_LOG(("addrawch() - called: ch=%x\n", ch));
-
-    return waddrawch(stdscr, ch);
-}
-
-int mvaddrawch(int y, int x, chtype ch)
-{
-    PDC_LOG(("mvaddrawch() - called: y=%d x=%d ch=%d\n", y, x, ch));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return waddrawch(stdscr, ch);
-}
-
-int mvwaddrawch(WINDOW *win, int y, int x, chtype ch)
-{
-    PDC_LOG(("mvwaddrawch() - called: win=%p y=%d x=%d ch=%d\n",
-             win, y, x, ch));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return waddrawch(win, ch);
-}
-
-#ifdef PDC_WIDE
-int wadd_wch(WINDOW *win, const cchar_t *wch)
-{
-    PDC_LOG(("wadd_wch() - called: win=%p wch=%x\n", win, *wch));
-
-    return wch ? waddch(win, *wch) : ERR;
-}
-
-int add_wch(const cchar_t *wch)
-{
-    PDC_LOG(("add_wch() - called: wch=%x\n", *wch));
-
-    return wadd_wch(stdscr, wch);
-}
-
-int mvadd_wch(int y, int x, const cchar_t *wch)
-{
-    PDC_LOG(("mvaddch() - called: y=%d x=%d wch=%x\n", y, x, *wch));
-
-    if (move(y,x) == ERR)
-        return ERR;
-
-    return wadd_wch(stdscr, wch);
-}
-
-int mvwadd_wch(WINDOW *win, int y, int x, const cchar_t *wch)
-{
-    PDC_LOG(("mvwaddch() - called: win=%p y=%d x=%d wch=%d\n",
-             win, y, x, *wch));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wadd_wch(win, wch);
-}
-
-int echo_wchar(const cchar_t *wch)
-{
-    PDC_LOG(("echo_wchar() - called: wch=%x\n", *wch));
-
-    return wecho_wchar(stdscr, wch);
-}
-
-int wecho_wchar(WINDOW *win, const cchar_t *wch)
-{
-    PDC_LOG(("wecho_wchar() - called: win=%p wch=%x\n", win, *wch));
-
-    if (!wch || (wadd_wch(win, wch) == ERR))
-        return ERR;
-
-    return wrefresh(win);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/addchstr.c b/src/other/PDCurses/pdcurses/addchstr.c
deleted file mode 100644
index 0eea85a..0000000
--- a/src/other/PDCurses/pdcurses/addchstr.c
+++ /dev/null
@@ -1,242 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: addchstr.c,v 1.43 2008/07/13 16:08:17 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         addchstr
-
-  Synopsis:
-        int addchstr(const chtype *ch);
-        int addchnstr(const chtype *ch, int n);
-        int waddchstr(WINDOW *win, const chtype *ch);
-        int waddchnstr(WINDOW *win, const chtype *ch, int n);
-        int mvaddchstr(int y, int x, const chtype *ch);
-        int mvaddchnstr(int y, int x, const chtype *ch, int n);
-        int mvwaddchstr(WINDOW *, int y, int x, const chtype *ch);
-        int mvwaddchnstr(WINDOW *, int y, int x, const chtype *ch, int n);
-
-        int add_wchstr(const cchar_t *wch);
-        int add_wchnstr(const cchar_t *wch, int n);
-        int wadd_wchstr(WINDOW *win, const cchar_t *wch);
-        int wadd_wchnstr(WINDOW *win, const cchar_t *wch, int n);
-        int mvadd_wchstr(int y, int x, const cchar_t *wch);
-        int mvadd_wchnstr(int y, int x, const cchar_t *wch, int n);
-        int mvwadd_wchstr(WINDOW *win, int y, int x, const cchar_t *wch);
-        int mvwadd_wchnstr(WINDOW *win, int y, int x, const cchar_t *wch,
-                int n);
-
-  Description:
-        These routines write a chtype or cchar_t string directly into 
-        the window structure, starting at the current or specified 
-        position. The four routines with n as the last argument copy at 
-        most n elements, but no more than will fit on the line. If n = 
-        -1 then the whole string is copied, up to the maximum number 
-        that will fit on the line.
-
-        The cursor position is not advanced. These routines do not check 
-        for newline or other special characters, nor does any line 
-        wrapping occur.
-
-  Return Value:
-        All functions return OK or ERR.
-
-  Portability                                X/Open    BSD    SYS V
-        addchstr                                Y       -      4.0
-        waddchstr                               Y       -      4.0
-        mvaddchstr                              Y       -      4.0
-        mvwaddchstr                             Y       -      4.0
-        addchnstr                               Y       -      4.0
-        waddchnstr                              Y       -      4.0
-        mvaddchnstr                             Y       -      4.0
-        mvwaddchnstr                            Y       -      4.0
-        add_wchstr                              Y
-        wadd_wchstr                             Y
-        mvadd_wchstr                            Y
-        mvwadd_wchstr                           Y
-        add_wchnstr                             Y
-        wadd_wchnstr                            Y
-        mvadd_wchnstr                           Y
-        mvwadd_wchnstr                          Y
-
-**man-end****************************************************************/
-
-#include <string.h>
-
-int waddchnstr(WINDOW *win, const chtype *ch, int n)
-{
-    int y, x, maxx, minx;
-    chtype *ptr;
-
-    PDC_LOG(("waddchnstr() - called: win=%p n=%d\n", win, n));
-
-    if (!win || !ch || !n || n < -1)
-        return ERR;
-
-    x = win->_curx;
-    y = win->_cury;
-    ptr = &(win->_y[y][x]);
-
-    if (n == -1 || n > win->_maxx - x)
-        n = win->_maxx - x;
-
-    minx = win->_firstch[y];
-    maxx = win->_lastch[y];
-
-    for (; n && *ch; n--, x++, ptr++, ch++)
-    {
-        if (*ptr != *ch)
-        {
-            if (x < minx || minx == _NO_CHANGE)
-                minx = x;
-
-            if (x > maxx)
-                maxx = x;
-
-            PDC_LOG(("y %d x %d minx %d maxx %d *ptr %x *ch"
-                     " %x firstch: %d lastch: %d\n",
-                     y, x, minx, maxx, *ptr, *ch, 
-                     win->_firstch[y], win->_lastch[y]));
-
-            *ptr = *ch;
-        }
-    }
-
-    win->_firstch[y] = minx;
-    win->_lastch[y] = maxx;
-
-    return OK;
-}
-
-int addchstr(const chtype *ch)
-{
-    PDC_LOG(("addchstr() - called\n"));
-
-    return waddchnstr(stdscr, ch, -1);
-}
-
-int addchnstr(const chtype *ch, int n)
-{
-    PDC_LOG(("addchnstr() - called\n"));
-
-    return waddchnstr(stdscr, ch, n);
-}
-
-int waddchstr(WINDOW *win, const chtype *ch)
-{
-    PDC_LOG(("waddchstr() - called: win=%p\n", win));
-
-    return waddchnstr(win, ch, -1);
-}
-
-int mvaddchstr(int y, int x, const chtype *ch)
-{
-    PDC_LOG(("mvaddchstr() - called: y %d x %d\n", y, x));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return waddchnstr(stdscr, ch, -1);
-}
-
-int mvaddchnstr(int y, int x, const chtype *ch, int n)
-{
-    PDC_LOG(("mvaddchnstr() - called: y %d x %d n %d\n", y, x, n));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return waddchnstr(stdscr, ch, n);
-}
-
-int mvwaddchstr(WINDOW *win, int y, int x, const chtype *ch)
-{
-    PDC_LOG(("mvwaddchstr() - called:\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return waddchnstr(win, ch, -1);
-}
-
-int mvwaddchnstr(WINDOW *win, int y, int x, const chtype *ch, int n)
-{
-    PDC_LOG(("mvwaddchnstr() - called: y %d x %d n %d \n", y, x, n));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return waddchnstr(win, ch, n);
-}
-
-#ifdef PDC_WIDE
-int wadd_wchnstr(WINDOW *win, const cchar_t *wch, int n)
-{
-    PDC_LOG(("wadd_wchnstr() - called: win=%p n=%d\n", win, n));
-
-    return waddchnstr(win, wch, n);
-}
-
-int add_wchstr(const cchar_t *wch)
-{
-    PDC_LOG(("add_wchstr() - called\n"));
-
-    return wadd_wchnstr(stdscr, wch, -1);
-}
-
-int add_wchnstr(const cchar_t *wch, int n)
-{
-    PDC_LOG(("add_wchnstr() - called\n"));
-
-    return wadd_wchnstr(stdscr, wch, n);
-}
-
-int wadd_wchstr(WINDOW *win, const cchar_t *wch)
-{
-    PDC_LOG(("wadd_wchstr() - called: win=%p\n", win));
-
-    return wadd_wchnstr(win, wch, -1);
-}
-
-int mvadd_wchstr(int y, int x, const cchar_t *wch)
-{
-    PDC_LOG(("mvadd_wchstr() - called: y %d x %d\n", y, x));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wadd_wchnstr(stdscr, wch, -1);
-}
-
-int mvadd_wchnstr(int y, int x, const cchar_t *wch, int n)
-{
-    PDC_LOG(("mvadd_wchnstr() - called: y %d x %d n %d\n", y, x, n));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wadd_wchnstr(stdscr, wch, n);
-}
-
-int mvwadd_wchstr(WINDOW *win, int y, int x, const cchar_t *wch)
-{
-    PDC_LOG(("mvwadd_wchstr() - called:\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wadd_wchnstr(win, wch, -1);
-}
-
-int mvwadd_wchnstr(WINDOW *win, int y, int x, const cchar_t *wch, int n)
-{
-    PDC_LOG(("mvwadd_wchnstr() - called: y %d x %d n %d \n", y, x, n));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wadd_wchnstr(win, wch, n);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/addstr.c b/src/other/PDCurses/pdcurses/addstr.c
deleted file mode 100644
index ca19fd0..0000000
--- a/src/other/PDCurses/pdcurses/addstr.c
+++ /dev/null
@@ -1,237 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: addstr.c,v 1.44 2008/07/13 16:08:17 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         addstr
-
-  Synopsis:
-        int addstr(const char *str);
-        int addnstr(const char *str, int n);
-        int waddstr(WINDOW *win, const char *str);
-        int waddnstr(WINDOW *win, const char *str, int n);
-        int mvaddstr(int y, int x, const char *str);
-        int mvaddnstr(int y, int x, const char *str, int n);
-        int mvwaddstr(WINDOW *win, int y, int x, const char *str);
-        int mvwaddnstr(WINDOW *win, int y, int x, const char *str, int n);
-
-        int addwstr(const wchar_t *wstr);
-        int addnwstr(const wchar_t *wstr, int n);
-        int waddwstr(WINDOW *win, const wchar_t *wstr);
-        int waddnwstr(WINDOW *win, const wchar_t *wstr, int n);
-        int mvaddwstr(int y, int x, const wchar_t *wstr);
-        int mvaddnwstr(int y, int x, const wchar_t *wstr, int n);
-        int mvwaddwstr(WINDOW *win, int y, int x, const wchar_t *wstr);
-        int mvwaddnwstr(WINDOW *win, int y, int x, const wchar_t *wstr, int n);
-
-  Description:
-        These routines write all the characters of the null-terminated
-        string str or wide-character string wstr to the given window.
-        The functionality is similar to calling waddch() once for each
-        character in the string; except that, when PDCurses is built
-        with wide-character support enabled, the narrow-character
-        functions treat the string as a multibyte string in the current
-        locale, and convert it. The routines with n as the last
-        argument write at most n characters; if n is negative, then the
-        entire string will be added.
-
-  Return Value:
-        All functions return OK or ERR.
-
-  Portability                                X/Open    BSD    SYS V
-        addstr                                  Y       Y       Y
-        waddstr                                 Y       Y       Y
-        mvaddstr                                Y       Y       Y
-        mvwaddstr                               Y       Y       Y
-        addnstr                                 Y       -      4.0
-        waddnstr                                Y       -      4.0
-        mvaddnstr                               Y       -      4.0
-        mvwaddnstr                              Y       -      4.0
-        addwstr                                 Y
-        waddwstr                                Y
-        mvaddwstr                               Y
-        mvwaddwstr                              Y
-        addnwstr                                Y
-        waddnwstr                               Y
-        mvaddnwstr                              Y
-        mvwaddnwstr                             Y
-
-**man-end****************************************************************/
-
-int waddnstr(WINDOW *win, const char *str, int n)
-{
-    int i = 0;
-
-    PDC_LOG(("waddnstr() - called: string=\"%s\" n %d \n", str, n));
-
-    if (!win || !str)
-        return ERR;
-
-    while (str[i] && (i < n || n < 0))
-    {
-#ifdef PDC_WIDE
-        wchar_t wch;
-        int retval = PDC_mbtowc(&wch, str + i, n >= 0 ? n - i : 6);
-
-        if (retval <= 0)
-            return OK;
-
-        i += retval;
-#else
-        chtype wch = (unsigned char)(str[i++]);
-#endif
-        if (waddch(win, wch) == ERR)
-            return ERR;
-    }
-
-    return OK;
-}
-
-int addstr(const char *str)
-{
-    PDC_LOG(("addstr() - called: string=\"%s\"\n", str));
-
-    return waddnstr(stdscr, str, -1);
-}
-
-int addnstr(const char *str, int n)
-{
-    PDC_LOG(("addnstr() - called: string=\"%s\" n %d \n", str, n));
-
-    return waddnstr(stdscr, str, n);
-}
-
-int waddstr(WINDOW *win, const char *str)
-{
-    PDC_LOG(("waddstr() - called: string=\"%s\"\n", str));
-
-    return waddnstr(win, str, -1);
-}
-
-int mvaddstr(int y, int x, const char *str)
-{
-    PDC_LOG(("mvaddstr() - called: y %d x %d string=\"%s\"\n", y, x, str));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return waddnstr(stdscr, str, -1);
-}
-
-int mvaddnstr(int y, int x, const char *str, int n)
-{
-    PDC_LOG(("mvaddnstr() - called: y %d x %d string=\"%s\" n %d \n",
-             y, x, str, n));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return waddnstr(stdscr, str, n);
-}
-
-int mvwaddstr(WINDOW *win, int y, int x, const char *str)
-{
-    PDC_LOG(("mvwaddstr() - called: string=\"%s\"\n", str));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return waddnstr(win, str, -1);
-}
-
-int mvwaddnstr(WINDOW *win, int y, int x, const char *str, int n)
-{
-    PDC_LOG(("mvwaddnstr() - called: y %d x %d string=\"%s\" n %d \n",
-             y, x, str, n));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return waddnstr(win, str, n);
-}
-
-#ifdef PDC_WIDE
-int waddnwstr(WINDOW *win, const wchar_t *wstr, int n)
-{
-    int i = 0;
-
-    PDC_LOG(("waddnwstr() - called\n"));
-
-    if (!win || !wstr)
-        return ERR;
-
-    while (wstr[i] && (i < n || n < 0))
-    {
-        chtype wch = wstr[i++];
-
-        if (waddch(win, wch) == ERR)
-            return ERR;
-    }
-
-    return OK;
-}
-
-int addwstr(const wchar_t *wstr)
-{
-    PDC_LOG(("addwstr() - called\n"));
-
-    return waddnwstr(stdscr, wstr, -1);
-}
-
-int addnwstr(const wchar_t *wstr, int n)
-{
-    PDC_LOG(("addnwstr() - called\n"));
-
-    return waddnwstr(stdscr, wstr, n);
-}
-
-int waddwstr(WINDOW *win, const wchar_t *wstr)
-{
-    PDC_LOG(("waddwstr() - called\n"));
-
-    return waddnwstr(win, wstr, -1);
-}
-
-int mvaddwstr(int y, int x, const wchar_t *wstr)
-{
-    PDC_LOG(("mvaddstr() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return waddnwstr(stdscr, wstr, -1);
-}
-
-int mvaddnwstr(int y, int x, const wchar_t *wstr, int n)
-{
-    PDC_LOG(("mvaddnstr() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return waddnwstr(stdscr, wstr, n);
-}
-
-int mvwaddwstr(WINDOW *win, int y, int x, const wchar_t *wstr)
-{
-    PDC_LOG(("mvwaddstr() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return waddnwstr(win, wstr, -1);
-}
-
-int mvwaddnwstr(WINDOW *win, int y, int x, const wchar_t *wstr, int n)
-{
-    PDC_LOG(("mvwaddnstr() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return waddnwstr(win, wstr, n);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/attr.c b/src/other/PDCurses/pdcurses/attr.c
deleted file mode 100644
index 532384b..0000000
--- a/src/other/PDCurses/pdcurses/attr.c
+++ /dev/null
@@ -1,349 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: attr.c,v 1.41 2008/07/13 16:08:17 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         attr
-
-  Synopsis:
-        int attroff(chtype attrs);
-        int wattroff(WINDOW *win, chtype attrs);
-        int attron(chtype attrs);
-        int wattron(WINDOW *win, chtype attrs);
-        int attrset(chtype attrs);
-        int wattrset(WINDOW *win, chtype attrs);
-        int standend(void);
-        int wstandend(WINDOW *win);
-        int standout(void);
-        int wstandout(WINDOW *win);
-
-        int color_set(short color_pair, void *opts);
-        int wcolor_set(WINDOW *win, short color_pair, void *opts);
-
-        int attr_get(attr_t *attrs, short *color_pair, void *opts);
-        int attr_off(attr_t attrs, void *opts);
-        int attr_on(attr_t attrs, void *opts);
-        int attr_set(attr_t attrs, short color_pair, void *opts);
-        int wattr_get(WINDOW *win, attr_t *attrs, short *color_pair,
-                void *opts);
-        int wattr_off(WINDOW *win, attr_t attrs, void *opts);
-        int wattr_on(WINDOW *win, attr_t attrs, void *opts);
-        int wattr_set(WINDOW *win, attr_t attrs, short color_pair,
-                void *opts);
-
-        int chgat(int n, attr_t attr, short color, const void *opts);
-        int mvchgat(int y, int x, int n, attr_t attr, short color,
-                const void *opts);
-        int mvwchgat(WINDOW *win, int y, int x, int n, attr_t attr,
-                short color, const void *opts);
-        int wchgat(WINDOW *win, int n, attr_t attr, short color,
-                const void *opts);
-
-        chtype getattrs(WINDOW *win);
-
-  Description:
-        These functions manipulate the current attributes and/or colors 
-        of the named window.  These attributes can be any combination 
-        of A_STANDOUT, A_REVERSE, A_BOLD, A_DIM, A_BLINK, A_UNDERLINE.
-
-        These constants are defined in <curses.h> and can be combined
-        with the bitwise-OR operator (|).
-
-        The current attributes of a window are applied to all chtypes 
-        that are written into the window with waddch(). Attributes are 
-        a property of the chtype, and move with the character through 
-        any scrolling or insert/delete operations.
-
-        attrset() sets the current attributes of the given window to 
-        attrs. attroff() turns off the named attributes without 
-        affecting any other attributes; attron() turns them on. 
-        color_set() sets the window color to the value of color_pair.
-
-        standout() is the same as attron(A_STANDOUT). standend() is the 
-        same as attrset(A_NORMAL); that is, it turns off all attributes.
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        attroff                                 Y       Y       Y
-        wattroff                                Y       Y       Y
-        attron                                  Y       Y       Y
-        wattron                                 Y       Y       Y
-        attrset                                 Y       Y       Y
-        wattrset                                Y       Y       Y
-        standend                                Y       Y       Y
-        wstandend                               Y       Y       Y
-        standout                                Y       Y       Y
-        wstandout                               Y       Y       Y
-        color_set                               Y
-        wcolor_set                              Y
-        attr_get                                Y
-        wattr_get                               Y
-        attr_on                                 Y
-        wattr_on                                Y
-        attr_off                                Y
-        wattr_off                               Y
-        attr_set                                Y
-        wattr_set                               Y
-        chgat                                   Y
-        wchgat                                  Y
-        mvchgat                                 Y
-        mvwchgat                                Y
-        getattrs                                -
-
-**man-end****************************************************************/
-
-int wattroff(WINDOW *win, chtype attrs)
-{
-    PDC_LOG(("wattroff() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    win->_attrs &= (~attrs & A_ATTRIBUTES);
-
-    return OK;
-}
-
-int attroff(chtype attrs)
-{
-    PDC_LOG(("attroff() - called\n"));
-
-    return wattroff(stdscr, attrs);
-}
-
-int wattron(WINDOW *win, chtype attrs)
-{
-    chtype newcolr, oldcolr, newattr, oldattr;
-
-    PDC_LOG(("wattron() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    if ((win->_attrs & A_COLOR) && (attrs & A_COLOR)) 
-    {
-        oldcolr = win->_attrs & A_COLOR;
-        oldattr = win->_attrs ^ oldcolr;
-        newcolr = attrs & A_COLOR;
-        newattr = (attrs & A_ATTRIBUTES) ^ newcolr;
-        newattr |= oldattr;
-        win->_attrs = newattr | newcolr;
-    }
-    else
-        win->_attrs |= (attrs & A_ATTRIBUTES);
-
-    return OK;
-}
-
-int attron(chtype attrs)
-{
-    PDC_LOG(("attron() - called\n"));
-
-    return wattron(stdscr, attrs);
-}
-
-int wattrset(WINDOW *win, chtype attrs)
-{
-    PDC_LOG(("wattrset() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    win->_attrs = attrs & A_ATTRIBUTES;
-
-    return OK;
-}
-
-int attrset(chtype attrs)
-{
-    PDC_LOG(("attrset() - called\n"));
-
-    return wattrset(stdscr, attrs);
-}
-
-int standend(void)
-{
-    PDC_LOG(("standend() - called\n"));
-
-    return wattrset(stdscr, A_NORMAL);
-}
-
-int standout(void)
-{
-    PDC_LOG(("standout() - called\n"));
-
-    return wattrset(stdscr, A_STANDOUT);
-}
-
-int wstandend(WINDOW *win)
-{
-    PDC_LOG(("wstandend() - called\n"));
-
-    return wattrset(win, A_NORMAL);
-}
-
-int wstandout(WINDOW *win)
-{
-    PDC_LOG(("wstandout() - called\n"));
-
-    return wattrset(win, A_STANDOUT);
-}
-
-chtype getattrs(WINDOW *win)
-{
-    return win ? win->_attrs : 0;
-}
-
-int wcolor_set(WINDOW *win, short color_pair, void *opts)
-{
-    PDC_LOG(("wcolor_set() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    win->_attrs = (win->_attrs & ~A_COLOR) | COLOR_PAIR(color_pair);
-
-    return OK;
-}
-
-int color_set(short color_pair, void *opts)
-{
-    PDC_LOG(("color_set() - called\n"));
-
-    return wcolor_set(stdscr, color_pair, opts);
-}
-
-int wattr_get(WINDOW *win, attr_t *attrs, short *color_pair, void *opts)
-{
-    PDC_LOG(("wattr_get() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    if (attrs)
-        *attrs = win->_attrs & (A_ATTRIBUTES & ~A_COLOR);
-
-    if (color_pair)
-        *color_pair = PAIR_NUMBER(win->_attrs);
-
-    return OK;
-}
-
-int attr_get(attr_t *attrs, short *color_pair, void *opts)
-{
-    PDC_LOG(("attr_get() - called\n"));
-
-    return wattr_get(stdscr, attrs, color_pair, opts);
-}
-
-int wattr_off(WINDOW *win, attr_t attrs, void *opts)
-{
-    PDC_LOG(("wattr_off() - called\n"));
-
-    return wattroff(win, attrs);
-}
-
-int attr_off(attr_t attrs, void *opts)
-{
-    PDC_LOG(("attr_off() - called\n"));
-
-    return wattroff(stdscr, attrs);
-}
-
-int wattr_on(WINDOW *win, attr_t attrs, void *opts)
-{
-    PDC_LOG(("wattr_off() - called\n"));
-
-    return wattron(win, attrs);
-}
-
-int attr_on(attr_t attrs, void *opts)
-{
-    PDC_LOG(("attr_on() - called\n"));
-
-    return wattron(stdscr, attrs);
-}
-
-int wattr_set(WINDOW *win, attr_t attrs, short color_pair, void *opts)
-{
-    PDC_LOG(("wattr_set() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    win->_attrs = (attrs & (A_ATTRIBUTES & ~A_COLOR)) | COLOR_PAIR(color_pair);
-
-    return OK;
-}
-
-int attr_set(attr_t attrs, short color_pair, void *opts)
-{
-    PDC_LOG(("attr_get() - called\n"));
-
-    return wattr_set(stdscr, attrs, color_pair, opts);
-}
-
-int wchgat(WINDOW *win, int n, attr_t attr, short color, const void *opts)
-{
-    chtype *dest, newattr;
-    int startpos, endpos;
-
-    PDC_LOG(("wchgat() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    newattr = (attr & A_ATTRIBUTES) | COLOR_PAIR(color);
-
-    startpos = win->_curx;
-    endpos = ((n < 0) ? win->_maxx : min(startpos + n, win->_maxx)) - 1;
-    dest = win->_y[win->_cury];
-
-    for (n = startpos; n <= endpos; n++)
-        dest[n] = (dest[n] & A_CHARTEXT) | newattr;
-
-    n = win->_cury;
-
-    if (startpos < win->_firstch[n] || win->_firstch[n] == _NO_CHANGE)
-        win->_firstch[n] = startpos;
-
-    if (endpos > win->_lastch[n])
-        win->_lastch[n] = endpos;
-
-    PDC_sync(win);
-
-    return OK;
-}
-
-int chgat(int n, attr_t attr, short color, const void *opts)
-{
-    PDC_LOG(("chgat() - called\n"));
-
-    return wchgat(stdscr, n, attr, color, opts);
-}
-
-int mvchgat(int y, int x, int n, attr_t attr, short color, const void *opts)
-{
-    PDC_LOG(("mvchgat() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wchgat(stdscr, n, attr, color, opts);
-}
-
-int mvwchgat(WINDOW *win, int y, int x, int n, attr_t attr, short color,
-             const void *opts)
-{
-    PDC_LOG(("mvwchgat() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wchgat(win, n, attr, color, opts);
-}
diff --git a/src/other/PDCurses/pdcurses/beep.c b/src/other/PDCurses/pdcurses/beep.c
deleted file mode 100644
index 9e92f45..0000000
--- a/src/other/PDCurses/pdcurses/beep.c
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: beep.c,v 1.34 2008/07/13 16:08:17 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         beep
-
-  Synopsis:
-        int beep(void);
-        int flash(void);
-
-  Description:
-        beep() sounds the audible bell on the terminal, if possible;
-        if not, it calls flash().
-
-        flash() "flashes" the screen, by inverting the foreground and
-        background of every cell, pausing, and then restoring the
-        original attributes.
-
-  Return Value:
-        These functions return OK.
-
-  Portability                                X/Open    BSD    SYS V
-        beep                                    Y       Y       Y
-        flash                                   Y       Y       Y
-
-**man-end****************************************************************/
-
-int beep(void)
-{
-    PDC_LOG(("beep() - called\n"));
-
-    if (SP->audible)
-        PDC_beep();
-    else
-        flash();
-
-    return OK;
-}
-
-int flash(void)
-{
-    int z, y, x;
-
-    PDC_LOG(("flash() - called\n"));
-
-    /* Reverse each cell; wait; restore the screen */
-
-    for (z = 0; z < 2; z++)
-    {
-        for (y = 0; y < LINES; y++)
-            for (x = 0; x < COLS; x++)
-                curscr->_y[y][x] ^= A_REVERSE;
-
-        wrefresh(curscr);
-
-        if (!z)
-            napms(50);
-    }
-
-    return OK;
-}
diff --git a/src/other/PDCurses/pdcurses/bkgd.c b/src/other/PDCurses/pdcurses/bkgd.c
deleted file mode 100644
index 083239e..0000000
--- a/src/other/PDCurses/pdcurses/bkgd.c
+++ /dev/null
@@ -1,220 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: bkgd.c,v 1.39 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         bkgd
-
-  Synopsis:
-        int bkgd(chtype ch);
-        void bkgdset(chtype ch);
-        chtype getbkgd(WINDOW *win);
-        int wbkgd(WINDOW *win, chtype ch);
-        void wbkgdset(WINDOW *win, chtype ch);
-
-        int bkgrnd(const cchar_t *wch);
-        void bkgrndset(const cchar_t *wch);
-        int getbkgrnd(cchar_t *wch);
-        int wbkgrnd(WINDOW *win, const cchar_t *wch);
-        void wbkgrndset(WINDOW *win, const cchar_t *wch);
-        int wgetbkgrnd(WINDOW *win, cchar_t *wch);
-
-  Description:
-        bkgdset() and wbkgdset() manipulate the background of a window.
-        The background is a chtype consisting of any combination of
-        attributes and a character; it is combined with each chtype
-        added or inserted to the window by waddch() or winsch(). Only
-        the attribute part is used to set the background of non-blank
-        characters, while both character and attributes are used for
-        blank positions.
-
-        bkgd() and wbkgd() not only change the background, but apply it
-        immediately to every cell in the window.
-
-        The attributes that are defined with the attrset()/attron() set
-        of functions take precedence over the background attributes if
-        there is a conflict (e.g., different color pairs).
-
-  Return Value:
-        bkgd() and wbkgd() return OK, unless the window is NULL, in 
-        which case they return ERR.
-
-  Portability                                X/Open    BSD    SYS V
-        bkgd                                    Y       -      4.0
-        bkgdset                                 Y       -      4.0
-        getbkgd                                 Y
-        wbkgd                                   Y       -      4.0
-        wbkgdset                                Y       -      4.0
-        bkgrnd                                  Y
-        bkgrndset                               Y
-        getbkgrnd                               Y
-        wbkgrnd                                 Y
-        wbkgrndset                              Y
-        wgetbkgrnd                              Y
-
-**man-end****************************************************************/
-
-int wbkgd(WINDOW *win, chtype ch)
-{
-    int x, y;
-    chtype oldcolr, oldch, newcolr, newch, colr, attr;
-    chtype oldattr = 0, newattr = 0;
-    chtype *winptr;
-
-    PDC_LOG(("wbkgd() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    if (win->_bkgd == ch)
-        return OK;
-
-    oldcolr = win->_bkgd & A_COLOR;
-    if (oldcolr)
-        oldattr = (win->_bkgd & A_ATTRIBUTES) ^ oldcolr;
-
-    oldch = win->_bkgd & A_CHARTEXT;
-
-    wbkgdset(win, ch);
-
-    newcolr = win->_bkgd & A_COLOR;
-    if (newcolr)
-        newattr = (win->_bkgd & A_ATTRIBUTES) ^ newcolr;
-
-    newch = win->_bkgd & A_CHARTEXT;
-
-    /* what follows is what seems to occur in the System V 
-       implementation of this routine */
-
-    for (y = 0; y < win->_maxy; y++)
-    {
-        for (x = 0; x < win->_maxx; x++)
-        {
-            winptr = win->_y[y] + x;
-
-            ch = *winptr;
-
-            /* determine the colors and attributes of the character read 
-               from the window */
-
-            colr = ch & A_COLOR;
-            attr = ch & (A_ATTRIBUTES ^ A_COLOR);
-
-            /* if the color is the same as the old background color, 
-               then make it the new background color, otherwise leave it */
-
-            if (colr == oldcolr)
-                colr = newcolr;
-
-            /* remove any attributes (non color) from the character that 
-               were part of the old background, then combine the 
-               remaining ones with the new background */
-
-            attr ^= oldattr;
-            attr |= newattr;
-
-            /* change character if it is there because it was the old 
-               background character */
-
-            ch &= A_CHARTEXT;
-            if (ch == oldch)
-                ch = newch;
-
-            ch |= (attr | colr);
-
-            *winptr = ch;
-
-        }
-    }
-
-    touchwin(win);
-    PDC_sync(win);
-    return OK;
-}
-
-int bkgd(chtype ch)
-{
-    PDC_LOG(("bkgd() - called\n"));
-
-    return wbkgd(stdscr, ch);
-}
-
-void wbkgdset(WINDOW *win, chtype ch)
-{
-    PDC_LOG(("wbkgdset() - called\n"));
-
-    if (win)
-    {
-        if (!(ch & A_CHARTEXT))
-            ch |= ' ';
-
-        win->_bkgd = ch;
-    }
-}
-
-void bkgdset(chtype ch)
-{
-    PDC_LOG(("bkgdset() - called\n"));
-
-    wbkgdset(stdscr, ch);
-}
-
-chtype getbkgd(WINDOW *win)
-{
-    PDC_LOG(("getbkgd() - called\n"));
-
-    return win ? win->_bkgd : (chtype)ERR;
-}
-
-#ifdef PDC_WIDE
-int wbkgrnd(WINDOW *win, const cchar_t *wch)
-{
-    PDC_LOG(("wbkgrnd() - called\n"));
-
-    return wch ? wbkgd(win, *wch) : ERR;
-}
-
-int bkgrnd(const cchar_t *wch)
-{
-    PDC_LOG(("bkgrnd() - called\n"));
-
-    return wbkgrnd(stdscr, wch);
-}
-
-void wbkgrndset(WINDOW *win, const cchar_t *wch)
-{
-    PDC_LOG(("wbkgdset() - called\n"));
-
-    if (wch)
-        wbkgdset(win, *wch);
-}
-
-void bkgrndset(const cchar_t *wch)
-{
-    PDC_LOG(("bkgrndset() - called\n"));
-
-    wbkgrndset(stdscr, wch);
-}
-
-int wgetbkgrnd(WINDOW *win, cchar_t *wch)
-{
-    PDC_LOG(("wgetbkgrnd() - called\n"));
-
-    if (!win || !wch)
-        return ERR;
-
-    *wch = win->_bkgd;
-
-    return OK;
-}
-
-int getbkgrnd(cchar_t *wch)
-{
-    PDC_LOG(("getbkgrnd() - called\n"));
-
-    return wgetbkgrnd(stdscr, wch);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/border.c b/src/other/PDCurses/pdcurses/border.c
deleted file mode 100644
index ec86aaf..0000000
--- a/src/other/PDCurses/pdcurses/border.c
+++ /dev/null
@@ -1,408 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: border.c,v 1.53 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         border
-
-  Synopsis:
-        int border(chtype ls, chtype rs, chtype ts, chtype bs, chtype tl, 
-                   chtype tr, chtype bl, chtype br);
-        int wborder(WINDOW *win, chtype ls, chtype rs, chtype ts, 
-                    chtype bs, chtype tl, chtype tr, chtype bl, chtype br);
-        int box(WINDOW *win, chtype verch, chtype horch);
-        int hline(chtype ch, int n);
-        int vline(chtype ch, int n);
-        int whline(WINDOW *win, chtype ch, int n);
-        int wvline(WINDOW *win, chtype ch, int n);
-        int mvhline(int y, int x, chtype ch, int n);
-        int mvvline(int y, int x, chtype ch, int n);
-        int mvwhline(WINDOW *win, int y, int x, chtype ch, int n);
-        int mvwvline(WINDOW *win, int y, int x, chtype ch, int n);
-
-        int border_set(const cchar_t *ls, const cchar_t *rs,
-                       const cchar_t *ts, const cchar_t *bs,
-                       const cchar_t *tl, const cchar_t *tr,
-                       const cchar_t *bl, const cchar_t *br);
-        int wborder_set(WINDOW *win, const cchar_t *ls, const cchar_t *rs,
-                        const cchar_t *ts, const cchar_t *bs,
-                        const cchar_t *tl, const cchar_t *tr,
-                        const cchar_t *bl, const cchar_t *br);
-        int box_set(WINDOW *win, const cchar_t *verch, const cchar_t *horch);
-        int hline_set(const cchar_t *wch, int n);
-        int vline_set(const cchar_t *wch, int n);
-        int whline_set(WINDOW *win, const cchar_t *wch, int n);
-        int wvline_set(WINDOW *win, const cchar_t *wch, int n);
-        int mvhline_set(int y, int x, const cchar_t *wch, int n);
-        int mvvline_set(int y, int x, const cchar_t *wch, int n);
-        int mvwhline_set(WINDOW *win, int y, int x, const cchar_t *wch, int n);
-        int mvwvline_set(WINDOW *win, int y, int x, const cchar_t *wch, int n);
-
-  Description:
-        border(), wborder(), and box() draw a border around the edge of 
-        the window. If any argument is zero, an appropriate default is 
-        used:
-
-                ls      left side of border             ACS_VLINE
-                rs      right side of border            ACS_VLINE
-                ts      top side of border              ACS_HLINE
-                bs      bottom side of border           ACS_HLINE
-                tl      top left corner of border       ACS_ULCORNER
-                tr      top right corner of border      ACS_URCORNER
-                bl      bottom left corner of border    ACS_LLCORNER
-                br      bottom right corner of border   ACS_LRCORNER
-
-        hline() and whline() draw a horizontal line, using ch, starting 
-        from the current cursor position. The cursor position does not 
-        change. The line is at most n characters long, or as many as 
-        will fit in the window.
-
-        vline() and wvline() draw a vertical line, using ch, starting 
-        from the current cursor position. The cursor position does not 
-        change. The line is at most n characters long, or as many as 
-        will fit in the window.
-
-  Return Value:
-        These functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        border                                  Y       -      4.0
-        wborder                                 Y       -      4.0
-        box                                     Y       Y       Y
-        hline                                   Y       -      4.0
-        vline                                   Y       -      4.0
-        whline                                  Y       -      4.0
-        wvline                                  Y       -      4.0
-        mvhline                                 Y
-        mvvline                                 Y
-        mvwhline                                Y
-        mvwvline                                Y
-        border_set                              Y
-        wborder_set                             Y
-        box_set                                 Y
-        hline_set                               Y
-        vline_set                               Y
-        whline_set                              Y
-        wvline_set                              Y
-        mvhline_set                             Y
-        mvvline_set                             Y
-        mvwhline_set                            Y
-        mvwvline_set                            Y
-
-**man-end****************************************************************/
-
-/* _attr_passthru() -- Takes a single chtype 'ch' and checks if the 
-   current attribute of window 'win', as set by wattrset(), and/or the 
-   current background of win, as set by wbkgd(), should by combined with 
-   it. Attributes set explicitly in ch take precedence. */
-
-static chtype _attr_passthru(WINDOW *win, chtype ch)
-{
-    chtype attr;
-
-    /* If the incoming character doesn't have its own attribute, then 
-       use the current attributes for the window. If the incoming 
-       character has attributes, but not a color component, OR the 
-       attributes to the current attributes for the window. If the 
-       incoming character has a color component, use only the attributes 
-       from the incoming character. */
-
-    attr = ch & A_ATTRIBUTES;
-    if (!(attr & A_COLOR))
-        attr |= win->_attrs;
-
-    /* wrs (4/10/93) -- Apply the same sort of logic for the window 
-       background, in that it only takes precedence if other color 
-       attributes are not there. */
-
-    if (!(attr & A_COLOR))
-        attr |= win->_bkgd & A_ATTRIBUTES;
-    else
-        attr |= win->_bkgd & (A_ATTRIBUTES ^ A_COLOR);
-
-    ch = (ch & A_CHARTEXT) | attr;
-
-    return ch;
-}
-
-int wborder(WINDOW *win, chtype ls, chtype rs, chtype ts, chtype bs, 
-            chtype tl, chtype tr, chtype bl, chtype br)
-{
-    int i, ymax, xmax;
-
-    PDC_LOG(("wborder() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    ymax = win->_maxy - 1;
-    xmax = win->_maxx - 1;
-
-    ls = _attr_passthru(win, ls ? ls : ACS_VLINE);
-    rs = _attr_passthru(win, rs ? rs : ACS_VLINE);
-    ts = _attr_passthru(win, ts ? ts : ACS_HLINE);
-    bs = _attr_passthru(win, bs ? bs : ACS_HLINE);
-    tl = _attr_passthru(win, tl ? tl : ACS_ULCORNER);
-    tr = _attr_passthru(win, tr ? tr : ACS_URCORNER);
-    bl = _attr_passthru(win, bl ? bl : ACS_LLCORNER);
-    br = _attr_passthru(win, br ? br : ACS_LRCORNER);
-
-    for (i = 1; i < xmax; i++)
-    {
-        win->_y[0][i] = ts;
-        win->_y[ymax][i] = bs;
-    }
-
-    for (i = 1; i < ymax; i++)
-    {
-        win->_y[i][0] = ls;
-        win->_y[i][xmax] = rs;
-    }
-
-    win->_y[0][0] = tl;
-    win->_y[0][xmax] = tr;
-    win->_y[ymax][0] = bl;
-    win->_y[ymax][xmax] = br;
-
-    for (i = 0; i <= ymax; i++)
-    {
-        win->_firstch[i] = 0;
-        win->_lastch[i] = xmax;
-    }
-
-    PDC_sync(win);
-
-    return OK;
-}
-
-int border(chtype ls, chtype rs, chtype ts, chtype bs, chtype tl,
-           chtype tr, chtype bl, chtype br)
-{
-    PDC_LOG(("border() - called\n"));
-
-    return wborder(stdscr, ls, rs, ts, bs, tl, tr, bl, br);
-}
-
-int box(WINDOW *win, chtype verch, chtype horch)
-{
-    PDC_LOG(("box() - called\n"));
-
-    return wborder(win, verch, verch, horch, horch, 0, 0, 0, 0);
-}
-
-int whline(WINDOW *win, chtype ch, int n)
-{
-    chtype *dest;
-    int startpos, endpos;
-
-    PDC_LOG(("whline() - called\n"));
-
-    if (!win || n < 1)
-        return ERR;
-
-    startpos = win->_curx;
-    endpos = min(startpos + n, win->_maxx) - 1;
-    dest = win->_y[win->_cury];
-    ch = _attr_passthru(win, ch ? ch : ACS_HLINE);
-
-    for (n = startpos; n <= endpos; n++)
-        dest[n] = ch;
-
-    n = win->_cury;
-
-    if (startpos < win->_firstch[n] || win->_firstch[n] == _NO_CHANGE)
-        win->_firstch[n] = startpos;
-
-    if (endpos > win->_lastch[n])
-        win->_lastch[n] = endpos;
-
-    PDC_sync(win);
-
-    return OK;
-}
-
-int hline(chtype ch, int n)
-{
-    PDC_LOG(("hline() - called\n"));
-
-    return whline(stdscr, ch, n);
-}
-
-int mvhline(int y, int x, chtype ch, int n)
-{
-    PDC_LOG(("mvhline() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return whline(stdscr, ch, n);
-}
-
-int mvwhline(WINDOW *win, int y, int x, chtype ch, int n)
-{
-    PDC_LOG(("mvwhline() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return whline(win, ch, n);
-}
-
-int wvline(WINDOW *win, chtype ch, int n)
-{
-    int endpos, x;
-
-    PDC_LOG(("wvline() - called\n"));
-
-    if (!win || n < 1)
-        return ERR;
-
-    endpos = min(win->_cury + n, win->_maxy);
-    x = win->_curx;
-
-    ch = _attr_passthru(win, ch ? ch : ACS_VLINE);
-
-    for (n = win->_cury; n < endpos; n++)
-    {
-        win->_y[n][x] = ch;
-
-        if (x < win->_firstch[n] || win->_firstch[n] == _NO_CHANGE)
-            win->_firstch[n] = x;
-
-        if (x > win->_lastch[n])
-            win->_lastch[n] = x;
-    }
-
-    PDC_sync(win);
-
-    return OK;
-}
-
-int vline(chtype ch, int n)
-{
-    PDC_LOG(("vline() - called\n"));
-
-    return wvline(stdscr, ch, n);
-}
-
-int mvvline(int y, int x, chtype ch, int n)
-{
-    PDC_LOG(("mvvline() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wvline(stdscr, ch, n);
-}
-
-int mvwvline(WINDOW *win, int y, int x, chtype ch, int n)
-{
-    PDC_LOG(("mvwvline() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wvline(win, ch, n);
-}
-
-#ifdef PDC_WIDE
-int wborder_set(WINDOW *win, const cchar_t *ls, const cchar_t *rs,
-                const cchar_t *ts, const cchar_t *bs, const cchar_t *tl,
-                const cchar_t *tr, const cchar_t *bl, const cchar_t *br)
-{
-    PDC_LOG(("wborder_set() - called\n"));
-
-    return wborder(win, ls ? *ls : 0, rs ? *rs : 0, ts ? *ts : 0,
-                        bs ? *bs : 0, tl ? *tl : 0, tr ? *tr : 0,
-                        bl ? *bl : 0, br ? *br : 0);
-}
-
-int border_set(const cchar_t *ls, const cchar_t *rs, const cchar_t *ts,
-               const cchar_t *bs, const cchar_t *tl, const cchar_t *tr,
-               const cchar_t *bl, const cchar_t *br)
-{
-    PDC_LOG(("border_set() - called\n"));
-
-    return wborder_set(stdscr, ls, rs, ts, bs, tl, tr, bl, br);
-}
-
-int box_set(WINDOW *win, const cchar_t *verch, const cchar_t *horch)
-{
-    PDC_LOG(("box_set() - called\n"));
-
-    return wborder_set(win, verch, verch, horch, horch,
-                       (const cchar_t *)NULL, (const cchar_t *)NULL,
-                       (const cchar_t *)NULL, (const cchar_t *)NULL);
-}
-
-int whline_set(WINDOW *win, const cchar_t *wch, int n)
-{
-    PDC_LOG(("whline_set() - called\n"));
-
-    return wch ? whline(win, *wch, n) : ERR;
-}
-
-int hline_set(const cchar_t *wch, int n)
-{
-    PDC_LOG(("hline_set() - called\n"));
-
-    return whline_set(stdscr, wch, n);
-}
-
-int mvhline_set(int y, int x, const cchar_t *wch, int n)
-{
-    PDC_LOG(("mvhline_set() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return whline_set(stdscr, wch, n);
-}
-
-int mvwhline_set(WINDOW *win, int y, int x, const cchar_t *wch, int n)
-{
-    PDC_LOG(("mvwhline_set() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return whline_set(win, wch, n);
-}
-
-int wvline_set(WINDOW *win, const cchar_t *wch, int n)
-{
-    PDC_LOG(("wvline_set() - called\n"));
-
-    return wch ? wvline(win, *wch, n) : ERR;
-}
-
-int vline_set(const cchar_t *wch, int n)
-{
-    PDC_LOG(("vline_set() - called\n"));
-
-    return wvline_set(stdscr, wch, n);
-}
-
-int mvvline_set(int y, int x, const cchar_t *wch, int n)
-{
-    PDC_LOG(("mvvline_set() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wvline_set(stdscr, wch, n);
-}
-
-int mvwvline_set(WINDOW *win, int y, int x, const cchar_t *wch, int n)
-{
-    PDC_LOG(("mvwvline_set() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wvline_set(win, wch, n);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/clear.c b/src/other/PDCurses/pdcurses/clear.c
deleted file mode 100644
index eda3385..0000000
--- a/src/other/PDCurses/pdcurses/clear.c
+++ /dev/null
@@ -1,154 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: clear.c,v 1.35 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         clear
-
-  Synopsis:
-        int clear(void);
-        int wclear(WINDOW *win);
-        int erase(void);
-        int werase(WINDOW *win);
-        int clrtobot(void);
-        int wclrtobot(WINDOW *win);
-        int clrtoeol(void);
-        int wclrtoeol(WINDOW *win);
-
-  Description:
-        erase() and werase() copy blanks (i.e. the background chtype) to 
-        every cell of the window.
-
-        clear() and wclear() are similar to erase() and werase(), but
-        they also call clearok() to ensure that the the window is 
-        cleared on the next wrefresh().
-
-        clrtobot() and wclrtobot() clear the window from the current 
-        cursor position to the end of the window.
-
-        clrtoeol() and wclrtoeol() clear the window from the current
-        cursor position to the end of the current line.
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        clear                                   Y       Y       Y
-        wclear                                  Y       Y       Y
-        erase                                   Y       Y       Y
-        werase                                  Y       Y       Y
-        clrtobot                                Y       Y       Y
-        wclrtobot                               Y       Y       Y
-        clrtoeol                                Y       Y       Y
-        wclrtoeol                               Y       Y       Y
-
-**man-end****************************************************************/
-
-int wclrtoeol(WINDOW *win)
-{
-    int x, y, minx;
-    chtype blank, *ptr;
-
-    PDC_LOG(("wclrtoeol() - called: Row: %d Col: %d\n",
-             win->_cury, win->_curx));
-
-    if (!win)
-        return ERR;
-
-    y = win->_cury;
-    x = win->_curx;
-
-    /* wrs (4/10/93) account for window background */
-
-    blank = win->_bkgd;
-
-    for (minx = x, ptr = &win->_y[y][x]; minx < win->_maxx; minx++, ptr++)
-        *ptr = blank;
-
-    if (x < win->_firstch[y] || win->_firstch[y] == _NO_CHANGE)
-        win->_firstch[y] = x;
-
-    win->_lastch[y] = win->_maxx - 1;
-
-    PDC_sync(win);
-    return OK;
-}
-
-int clrtoeol(void)
-{
-    PDC_LOG(("clrtoeol() - called\n"));
-
-    return wclrtoeol(stdscr);
-}
-
-int wclrtobot(WINDOW *win)
-{
-    int savey = win->_cury;
-    int savex = win->_curx;
-
-    PDC_LOG(("wclrtobot() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    /* should this involve scrolling region somehow ? */
-
-    if (win->_cury + 1 < win->_maxy)
-    {
-        win->_curx = 0;
-        win->_cury++;
-        for (; win->_maxy > win->_cury; win->_cury++)
-            wclrtoeol(win);
-        win->_cury = savey;
-        win->_curx = savex;
-    }
-    wclrtoeol(win);
-
-    PDC_sync(win);
-    return OK;
-}
-
-int clrtobot(void)
-{
-    PDC_LOG(("clrtobot() - called\n"));
-
-    return wclrtobot(stdscr);
-}
-
-int werase(WINDOW *win)
-{
-    PDC_LOG(("werase() - called\n"));
-
-    if (wmove(win, 0, 0) == ERR)
-        return ERR;
-
-    return wclrtobot(win);
-}
-
-int erase(void)
-{
-    PDC_LOG(("erase() - called\n"));
-
-    return werase(stdscr);
-}
-
-int wclear(WINDOW *win)
-{
-    PDC_LOG(("wclear() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    win->_clear = TRUE;
-    return werase(win);
-}
-
-int clear(void)
-{
-    PDC_LOG(("clear() - called\n"));
-
-    return wclear(stdscr);
-}
diff --git a/src/other/PDCurses/pdcurses/color.c b/src/other/PDCurses/pdcurses/color.c
deleted file mode 100644
index 038f760..0000000
--- a/src/other/PDCurses/pdcurses/color.c
+++ /dev/null
@@ -1,295 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: color.c,v 1.83 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         color
-
-  Synopsis:
-        int start_color(void);
-        int init_pair(short pair, short fg, short bg);
-        int init_color(short color, short red, short green, short blue);
-        bool has_colors(void);
-        bool can_change_color(void);
-        int color_content(short color, short *red, short *green, short *blue);
-        int pair_content(short pair, short *fg, short *bg);
-
-        int assume_default_colors(int f, int b);
-        int use_default_colors(void);
-
-        int PDC_set_line_color(short color);
-
-  Description:
-        To use these routines, start_color() must be called, usually
-        immediately after initscr(). Colors are always used in pairs, 
-        referred to as color-pairs. A color-pair consists of a 
-        foreground color and a background color. A color-pair is 
-        initialized via init_pair(). After initialization, COLOR_PAIR(n) 
-        can be used like any other video attribute.
-
-        start_color() initializes eight basic colors (black, red, green,
-        yellow, blue, magenta, cyan, and white), and two global
-        variables; COLORS and COLOR_PAIRS (respectively defining the
-        maximum number of colors and color-pairs the terminal is capable
-        of displaying).
-
-        init_pair() changes the definition of a color-pair. It takes 
-        three arguments: the number of the color-pair to be redefined, 
-        and the new values of the foreground and background colors. The 
-        pair number must be between 0 and COLOR_PAIRS - 1, inclusive. 
-        The foreground and background must be between 0 and COLORS - 1, 
-        inclusive. If the color pair was previously initialized, the 
-        screen is refreshed, and all occurrences of that color-pair are 
-        changed to the new definition.
-
-        has_colors() indicates if the terminal supports, and can 
-        maniplulate color. It returns TRUE or FALSE.
-
-        can_change_color() indicates if the terminal has the capability
-        to change the definition of its colors.
-
-        pair_content() is used to determine what the colors of a given
-        color-pair consist of.
-
-        assume_default_colors() and use_default_colors() emulate the
-        ncurses extensions of the same names. assume_default_colors(f,
-        b) is essentially the same as init_pair(0, f, b) (which isn't
-        allowed); it redefines the default colors. use_default_colors()
-        allows the use of -1 as a foreground or background color with
-        init_pair(), and calls assume_default_colors(-1, -1); -1
-        represents the foreground or background color that the terminal
-        had at startup. If the environment variable PDC_ORIGINAL_COLORS
-        is set at the time start_color() is called, that's equivalent to
-        calling use_default_colors().
-
-        PDC_set_line_color() is used to set the color, globally, for
-        the color of the lines drawn for the attributes: A_UNDERLINE,
-        A_OVERLINE, A_LEFTLINE and A_RIGHTLINE. A value of -1 (the
-        default) indicates that the current foreground color should be
-        used.
-
-        NOTE: COLOR_PAIR() and PAIR_NUMBER() are implemented as macros.
-
-  Return Value:
-        All functions return OK on success and ERR on error, except for
-        has_colors() and can_change_colors(), which return TRUE or FALSE.
-
-  Portability                                X/Open    BSD    SYS V
-        start_color                             Y       -      3.2
-        init_pair                               Y       -      3.2
-        init_color                              Y       -      3.2
-        has_colors                              Y       -      3.2
-        can_change_color                        Y       -      3.2
-        color_content                           Y       -      3.2
-        pair_content                            Y       -      3.2
-        assume_default_colors                   -       -       -
-        use_default_colors                      -       -       -
-        PDC_set_line_color                      -       -       -
-
-**man-end****************************************************************/
-
-#include <stdlib.h>
-#include <string.h>
-
-int COLORS = 0;
-int COLOR_PAIRS = PDC_COLOR_PAIRS;
-
-bool pdc_color_started = FALSE;
-
-/* pair_set[] tracks whether a pair has been set via init_pair() */
-
-static bool pair_set[PDC_COLOR_PAIRS];
-static bool default_colors = FALSE;
-static short first_col = 0;
-
-int start_color(void)
-{
-    PDC_LOG(("start_color() - called\n"));
-
-    if (SP->mono)
-        return ERR;
-
-    pdc_color_started = TRUE;
-
-    PDC_set_blink(FALSE);   /* Also sets COLORS, to 8 or 16 */
-
-    if (!default_colors && SP->orig_attr && getenv("PDC_ORIGINAL_COLORS"))
-        default_colors = TRUE;
-
-    PDC_init_atrtab();
-
-    memset(pair_set, 0, PDC_COLOR_PAIRS);
-
-    return OK;
-}
-
-static void _normalize(short *fg, short *bg)
-{
-    if (*fg == -1)
-        *fg = SP->orig_attr ? SP->orig_fore : COLOR_WHITE;
-
-    if (*bg == -1)
-        *bg = SP->orig_attr ? SP->orig_back : COLOR_BLACK;
-}
-
-int init_pair(short pair, short fg, short bg)
-{
-    PDC_LOG(("init_pair() - called: pair %d fg %d bg %d\n", pair, fg, bg));
-
-    if (!pdc_color_started || pair < 1 || pair >= COLOR_PAIRS ||
-        fg < first_col || fg >= COLORS || bg < first_col || bg >= COLORS)
-        return ERR;
-
-    _normalize(&fg, &bg);
-
-    /* To allow the PDC_PRESERVE_SCREEN option to work, we only reset 
-       curscr if this call to init_pair() alters a color pair created by 
-       the user. */
-
-    if (pair_set[pair])
-    {
-        short oldfg, oldbg;
-
-        PDC_pair_content(pair, &oldfg, &oldbg);
-
-        if (oldfg != fg || oldbg != bg)
-            curscr->_clear = TRUE;
-    }
-
-    PDC_init_pair(pair, fg, bg);
-
-    pair_set[pair] = TRUE;
-
-    return OK;
-}
-
-bool has_colors(void)
-{
-    PDC_LOG(("has_colors() - called\n"));
-
-    return !(SP->mono);
-}
-
-int init_color(short color, short red, short green, short blue)
-{
-    PDC_LOG(("init_color() - called\n"));
-
-    if (color < 0 || color >= COLORS || !PDC_can_change_color() ||
-        red < 0 || red > 1000 || green < 0 || green > 1000 ||
-        blue < 0 || blue > 1000)
-        return ERR;
-
-    return PDC_init_color(color, red, green, blue);
-}
-
-int color_content(short color, short *red, short *green, short *blue)
-{
-    PDC_LOG(("color_content() - called\n"));
-
-    if (color < 0 || color >= COLORS || !red || !green || !blue)
-        return ERR;
-
-    if (PDC_can_change_color())
-        return PDC_color_content(color, red, green, blue);
-    else
-    {
-        /* Simulated values for platforms that don't support palette 
-           changing */
-
-        short maxval = (color & 8) ? 1000 : 680;
-
-        *red = (color & COLOR_RED) ? maxval : 0;
-        *green = (color & COLOR_GREEN) ? maxval : 0;
-        *blue = (color & COLOR_BLUE) ? maxval : 0;
-
-        return OK;
-    }
-}
-
-bool can_change_color(void)
-{
-    PDC_LOG(("can_change_color() - called\n"));
-
-    return PDC_can_change_color();
-}
-
-int pair_content(short pair, short *fg, short *bg)
-{
-    PDC_LOG(("pair_content() - called\n"));
-
-    if (pair < 0 || pair >= COLOR_PAIRS || !fg || !bg)
-        return ERR;
-
-    return PDC_pair_content(pair, fg, bg);
-}
-
-int assume_default_colors(int f, int b)
-{
-    PDC_LOG(("assume_default_colors() - called: f %d b %d\n", f, b));
-
-    if (f < -1 || f >= COLORS || b < -1 || b >= COLORS)
-        return ERR;
-
-    if (pdc_color_started)
-    {
-        short fg, bg, oldfg, oldbg;
-
-        fg = f;
-        bg = b;
-
-        _normalize(&fg, &bg);
-
-        PDC_pair_content(0, &oldfg, &oldbg);
-
-        if (oldfg != fg || oldbg != bg)
-            curscr->_clear = TRUE;
-
-        PDC_init_pair(0, fg, bg);
-    }
-
-    return OK;
-}
-
-int use_default_colors(void)
-{
-    PDC_LOG(("use_default_colors() - called\n"));
-
-    default_colors = TRUE;
-    first_col = -1;
-
-    return assume_default_colors(-1, -1);
-}
-
-int PDC_set_line_color(short color)
-{
-    PDC_LOG(("PDC_set_line_color() - called: %d\n", color));
-
-    if (color < -1 || color >= COLORS)
-        return ERR;
-
-    SP->line_color = color;
-
-    return OK;
-}
-
-void PDC_init_atrtab(void)
-{
-    int i;
-    short fg, bg;
-
-    if (pdc_color_started && !default_colors)
-    {
-        fg = COLOR_WHITE;
-        bg = COLOR_BLACK;
-    }
-    else
-        fg = bg = -1;
-
-    _normalize(&fg, &bg);
-
-    for (i = 0; i < PDC_COLOR_PAIRS; i++)
-        PDC_init_pair(i, fg, bg);
-}
diff --git a/src/other/PDCurses/pdcurses/debug.c b/src/other/PDCurses/pdcurses/debug.c
deleted file mode 100644
index 95dc7d4..0000000
--- a/src/other/PDCurses/pdcurses/debug.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: debug.c,v 1.7 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         debug
-
-  Synopsis:
-        void traceon(void);
-        void traceoff(void);
-        void PDC_debug(const char *, ...);
-
-  Description:
-        traceon() and traceoff() toggle the recording of debugging 
-        information to the file "trace". Although not standard, similar 
-        functions are in some other curses implementations.
-
-        PDC_debug() is the function that writes to the file, based on 
-        whether traceon() has been called. It's used from the PDC_LOG() 
-        macro.
-
-  Portability                                X/Open    BSD    SYS V
-        traceon                                 -       -       -
-        traceoff                                -       -       -
-        PDC_debug                               -       -       -
-
-**man-end****************************************************************/
-
-#include <string.h>
-#include <sys/types.h>
-#include <time.h>
-
-bool pdc_trace_on = FALSE;
-
-void PDC_debug(const char *fmt, ...)
-{
-    va_list args;
-    FILE *dbfp;
-    char hms[9];
-    time_t now;
-
-    if (!pdc_trace_on)
-        return; 
-
-    /* open debug log file append */
-
-    dbfp = fopen("trace", "a");
-    if (!dbfp)
-    {
-        fprintf(stderr,
-            "PDC_debug(): Unable to open debug log file\n");
-        return;
-    }
-
-    time(&now);
-    strftime(hms, 9, "%H:%M:%S", localtime(&now));
-    fprintf(dbfp, "At: %8.8ld - %s ", (long) clock(), hms);
-
-    va_start(args, fmt);
-    vfprintf(dbfp, fmt, args);
-    va_end(args);
-
-    fclose(dbfp);
-}
-
-void traceon(void)
-{
-    PDC_LOG(("traceon() - called\n"));
-
-    pdc_trace_on = TRUE;
-}
-
-void traceoff(void)
-{
-    PDC_LOG(("traceoff() - called\n"));
-
-    pdc_trace_on = FALSE;
-}
diff --git a/src/other/PDCurses/pdcurses/delch.c b/src/other/PDCurses/pdcurses/delch.c
deleted file mode 100644
index 9c2416e..0000000
--- a/src/other/PDCurses/pdcurses/delch.c
+++ /dev/null
@@ -1,93 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: delch.c,v 1.33 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         delch
-
-  Synopsis:
-        int delch(void);
-        int wdelch(WINDOW *win);
-        int mvdelch(int y, int x);
-        int mvwdelch(WINDOW *win, int y, int x);
-
-  Description:
-        The character under the cursor in the window is deleted.  All
-        characters to the right on the same line are moved to the left
-        one position and the last character on the line is filled with
-        a blank.  The cursor position does not change (after moving to
-        y, x if coordinates are specified).
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        delch                                   Y       Y       Y
-        wdelch                                  Y       Y       Y
-        mvdelch                                 Y       Y       Y
-        mvwdelch                                Y       Y       Y
-
-**man-end****************************************************************/
-
-#include <string.h>
-
-int wdelch(WINDOW *win)
-{
-    int y, x, maxx;
-    chtype *temp1;
-
-    PDC_LOG(("wdelch() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    y = win->_cury;
-    x = win->_curx;
-    maxx = win->_maxx - 1;
-    temp1 = &win->_y[y][x];
-
-    memmove(temp1, temp1 + 1, (maxx - x) * sizeof(chtype));
-
-    /* wrs (4/10/93) account for window background */
-
-    win->_y[y][maxx] = win->_bkgd;
-
-    win->_lastch[y] = maxx;
-
-    if ((win->_firstch[y] == _NO_CHANGE) || (win->_firstch[y] > x))
-        win->_firstch[y] = x;
-
-    PDC_sync(win);
-
-    return OK;
-}
-
-int delch(void)
-{
-    PDC_LOG(("delch() - called\n"));
-
-    return wdelch(stdscr);
-}
-
-int mvdelch(int y, int x)
-{
-    PDC_LOG(("mvdelch() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wdelch(stdscr);
-}
-
-int mvwdelch(WINDOW *win, int y, int x)
-{
-    PDC_LOG(("mvwdelch() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wdelch(win);
-}
diff --git a/src/other/PDCurses/pdcurses/deleteln.c b/src/other/PDCurses/pdcurses/deleteln.c
deleted file mode 100644
index c856e90..0000000
--- a/src/other/PDCurses/pdcurses/deleteln.c
+++ /dev/null
@@ -1,208 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: deleteln.c,v 1.35 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         deleteln
-
-  Synopsis:
-        int deleteln(void);
-        int wdeleteln(WINDOW *win);
-        int insdelln(int n);
-        int winsdelln(WINDOW *win, int n);
-        int insertln(void);
-        int winsertln(WINDOW *win);
-
-        int mvdeleteln(int y, int x);
-        int mvwdeleteln(WINDOW *win, int y, int x);
-        int mvinsertln(int y, int x);
-        int mvwinsertln(WINDOW *win, int y, int x);
-
-  Description:
-        With the deleteln() and wdeleteln() functions, the line under
-        the cursor in the window is deleted.  All lines below the
-        current line are moved up one line.  The bottom line of the
-        window is cleared.  The cursor position does not change.
-
-        With the insertln() and winsertn() functions, a blank line is 
-        inserted above the current line and the bottom line is lost.
-
-        mvdeleteln(), mvwdeleteln(), mvinsertln() and mvwinsertln() 
-        allow moving the cursor and inserting/deleting in one call.
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        deleteln                                Y       Y       Y
-        wdeleteln                               Y       Y       Y
-        mvdeleteln                              -       -       -
-        mvwdeleteln                             -       -       -
-        insdelln                                Y       -      4.0
-        winsdelln                               Y       -      4.0
-        insertln                                Y       Y       Y
-        winsertln                               Y       Y       Y
-        mvinsertln                              -       -       -
-        mvwinsertln                             -       -       -
-
-**man-end****************************************************************/
-
-int wdeleteln(WINDOW *win)
-{
-    chtype blank, *temp, *ptr;
-    int y;
-
-    PDC_LOG(("wdeleteln() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    /* wrs (4/10/93) account for window background */
-
-    blank = win->_bkgd;
-
-    temp = win->_y[win->_cury];
-
-    for (y = win->_cury; y < win->_bmarg; y++)
-    {
-        win->_y[y] = win->_y[y + 1];
-        win->_firstch[y] = 0;
-        win->_lastch[y] = win->_maxx - 1;
-    }
-
-    for (ptr = temp; (ptr - temp < win->_maxx); ptr++)
-        *ptr = blank;           /* make a blank line */
-
-    if (win->_cury <= win->_bmarg) 
-    {
-        win->_firstch[win->_bmarg] = 0;
-        win->_lastch[win->_bmarg] = win->_maxx - 1;
-        win->_y[win->_bmarg] = temp;
-    }
-
-    return OK;
-}
-
-int deleteln(void)
-{
-    PDC_LOG(("deleteln() - called\n"));
-
-    return wdeleteln(stdscr);
-}
-
-int mvdeleteln(int y, int x)
-{
-    PDC_LOG(("mvdeleteln() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wdeleteln(stdscr);
-}
-
-int mvwdeleteln(WINDOW *win, int y, int x)
-{
-    PDC_LOG(("mvwdeleteln() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wdeleteln(win);
-}
-
-int winsdelln(WINDOW *win, int n)
-{
-    int i;
-
-    PDC_LOG(("winsdelln() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    if (n > 0)
-    {
-        for (i = 0; i < n; i++)
-            if (winsertln(win) == ERR)
-                return ERR;
-    }
-    else if (n < 0)
-    {
-        n = -n;
-        for (i = 0; i < n; i++)
-            if (wdeleteln(win) == ERR)
-                return ERR;
-    }
-
-    return OK;
-}
-
-int insdelln(int n)
-{
-    PDC_LOG(("insdelln() - called\n"));
-
-    return winsdelln(stdscr, n);
-}
-
-int winsertln(WINDOW *win)
-{
-    chtype blank, *temp, *end;
-    int y;
-
-    PDC_LOG(("winsertln() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    /* wrs (4/10/93) account for window background */
-
-    blank = win->_bkgd;
-
-    temp = win->_y[win->_maxy - 1];
-
-    for (y = win->_maxy - 1; y > win->_cury; y--)
-    {
-        win->_y[y] = win->_y[y - 1];
-        win->_firstch[y] = 0;
-        win->_lastch[y] = win->_maxx - 1;
-    }
-
-    win->_y[win->_cury] = temp;
-
-    for (end = &temp[win->_maxx - 1]; temp <= end; temp++)
-        *temp = blank;
-
-    win->_firstch[win->_cury] = 0;
-    win->_lastch[win->_cury] = win->_maxx - 1;
-
-    return OK;
-}
-
-int insertln(void)
-{
-    PDC_LOG(("insertln() - called\n"));
-
-    return winsertln(stdscr);
-}
-
-int mvinsertln(int y, int x)
-{
-    PDC_LOG(("mvinsertln() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return winsertln(stdscr);
-}
-
-int mvwinsertln(WINDOW *win, int y, int x)
-{
-    PDC_LOG(("mvwinsertln() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return winsertln(win);
-}
diff --git a/src/other/PDCurses/pdcurses/deprec.c b/src/other/PDCurses/pdcurses/deprec.c
deleted file mode 100644
index 83e6131..0000000
--- a/src/other/PDCurses/pdcurses/deprec.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: deprec.c,v 1.6 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/* Deprecated functions. These should not be used, and will eventually 
-   be removed. They're here solely for the benefit of applications that 
-   linked to them in older versions of PDCurses. */
-
-bool PDC_check_bios_key(void)
-{
-    return PDC_check_key();
-}
-
-int PDC_get_bios_key(void)
-{
-    return PDC_get_key();
-}
-
-bool PDC_get_ctrl_break(void)
-{
-    return !SP->raw_inp;
-}
-
-int PDC_set_ctrl_break(bool setting)
-{
-    return setting ? noraw() : raw();
-}
diff --git a/src/other/PDCurses/pdcurses/getch.c b/src/other/PDCurses/pdcurses/getch.c
deleted file mode 100644
index 87677ba..0000000
--- a/src/other/PDCurses/pdcurses/getch.c
+++ /dev/null
@@ -1,410 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: getch.c,v 1.72 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         getch
-
-  Synopsis:
-        int getch(void);
-        int wgetch(WINDOW *win);
-        int mvgetch(int y, int x);
-        int mvwgetch(WINDOW *win, int y, int x);
-        int ungetch(int ch);
-        int flushinp(void);
-
-        int get_wch(wint_t *wch);
-        int wget_wch(WINDOW *win, wint_t *wch);
-        int mvget_wch(int y, int x, wint_t *wch);
-        int mvwget_wch(WINDOW *win, int y, int x, wint_t *wch);
-        int unget_wch(const wchar_t wch);
-
-        unsigned long PDC_get_key_modifiers(void);
-        int PDC_save_key_modifiers(bool flag);
-        int PDC_return_key_modifiers(bool flag);
-
-  Description:
-        With the getch(), wgetch(), mvgetch(), and mvwgetch() functions, 
-        a character is read from the terminal associated with the window. 
-        In nodelay mode, if there is no input waiting, the value ERR is 
-        returned. In delay mode, the program will hang until the system 
-        passes text through to the program. Depending on the setting of 
-        cbreak(), this will be after one character or after the first 
-        newline.  Unless noecho() has been set, the character will also 
-        be echoed into the designated window.
-
-        If keypad() is TRUE, and a function key is pressed, the token for
-        that function key will be returned instead of the raw characters.
-        Possible function keys are defined in <curses.h> with integers
-        beginning with 0401, whose names begin with KEY_.
-
-        If nodelay(win, TRUE) has been called on the window and no input
-        is waiting, the value ERR is returned.
-
-        ungetch() places ch back onto the input queue to be returned by 
-        the next call to wgetch().
-
-        flushinp() throws away any type-ahead that has been typed by the 
-        user and has not yet been read by the program.
-
-        PDC_get_key_modifiers() returns the keyboard modifiers (shift, 
-        control, alt, numlock) effective at the time of the last getch() 
-        call, if PDC_save_key_modifiers(TRUE) has been called before the 
-        getch(). Use the macros PDC_KEY_MODIFIER_* to determine which 
-        modifier(s) were set. PDC_return_key_modifiers() tells getch() 
-        to return modifier keys pressed alone as keystrokes (KEY_ALT_L, 
-        etc.). These may not work on all platforms.
-
-        NOTE: getch() and ungetch() are implemented as macros, to avoid 
-        conflict with many DOS compiler's runtime libraries.
-
-  Return Value:
-        These functions return ERR or the value of the character, meta 
-        character or function key token.
-
-  Portability                                X/Open    BSD    SYS V
-        getch                                   Y       Y       Y
-        wgetch                                  Y       Y       Y
-        mvgetch                                 Y       Y       Y
-        mvwgetch                                Y       Y       Y
-        ungetch                                 Y       Y       Y
-        flushinp                                Y       Y       Y
-        get_wch                                 Y
-        wget_wch                                Y
-        mvget_wch                               Y
-        mvwget_wch                              Y
-        unget_wch                               Y
-        PDC_get_key_modifiers                   -       -       -
-
-**man-end****************************************************************/
-
-#define _INBUFSIZ   512 /* size of terminal input buffer */
-#define NUNGETCH    256 /* max # chars to ungetch() */
-
-static int c_pindex = 0;    /* putter index */
-static int c_gindex = 1;    /* getter index */
-static int c_ungind = 0;    /* ungetch() push index */
-static int c_ungch[NUNGETCH];   /* array of ungotten chars */
-
-static int _mouse_key(WINDOW *win)
-{
-    int i, key = KEY_MOUSE;
-    unsigned long mbe = SP->_trap_mbe;
-
-    /* Filter unwanted mouse events */
-
-    for (i = 0; i < 3; i++)
-    {
-        if (pdc_mouse_status.changes & (1 << i))
-        {
-            int shf = i * 5;
-            short button = pdc_mouse_status.button[i] & BUTTON_ACTION_MASK;
-
-            if (   (!(mbe & (BUTTON1_PRESSED << shf)) &&
-                    (button == BUTTON_PRESSED))
-
-                || (!(mbe & (BUTTON1_CLICKED << shf)) &&
-                    (button == BUTTON_CLICKED))
-
-                || (!(mbe & (BUTTON1_DOUBLE_CLICKED << shf)) &&
-                    (button == BUTTON_DOUBLE_CLICKED))
-
-                || (!(mbe & (BUTTON1_MOVED << shf)) &&
-                    (button == BUTTON_MOVED))
-
-                || (!(mbe & (BUTTON1_RELEASED << shf)) &&
-                    (button == BUTTON_RELEASED))
-            )
-                pdc_mouse_status.changes ^= (1 << i);
-        }
-    }
-
-    if (pdc_mouse_status.changes & PDC_MOUSE_MOVED)
-    {
-        if (!(mbe & (BUTTON1_MOVED|BUTTON2_MOVED|BUTTON3_MOVED)))
-            pdc_mouse_status.changes ^= PDC_MOUSE_MOVED;
-    }
-
-    if (pdc_mouse_status.changes &
-        (PDC_MOUSE_WHEEL_UP|PDC_MOUSE_WHEEL_DOWN))
-    {
-        if (!(mbe & MOUSE_WHEEL_SCROLL))
-            pdc_mouse_status.changes &=
-                ~(PDC_MOUSE_WHEEL_UP|PDC_MOUSE_WHEEL_DOWN);
-    }
-
-    if (!pdc_mouse_status.changes)
-        return -1;
-
-    /* Check for click in slk area */
-
-    i = PDC_mouse_in_slk(pdc_mouse_status.y, pdc_mouse_status.x);
-
-    if (i)
-    {
-        if (pdc_mouse_status.button[0] & (BUTTON_PRESSED|BUTTON_CLICKED))
-            key = KEY_F(i);
-        else
-            key = -1;
-    }
-
-    return key;
-}
-
-int wgetch(WINDOW *win)
-{
-    static int buffer[_INBUFSIZ];   /* character buffer */
-    int key, waitcount;
-
-    PDC_LOG(("wgetch() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    waitcount = 0;
-
-     /* set the number of 1/20th second napms() calls */
-
-    if (SP->delaytenths)
-        waitcount = 2 * SP->delaytenths;
-    else
-        if (win->_delayms)
-        {
-            /* Can't really do millisecond intervals, so delay in 
-               1/20ths of a second (50ms) */
-
-            waitcount = win->_delayms / 50;
-            if (!waitcount)
-                waitcount = 1;
-        }
-
-    /* refresh window when wgetch is called if there have been changes 
-       to it and it is not a pad */
-
-    if (!(win->_flags & _PAD) && ((!win->_leaveit &&
-         (win->_begx + win->_curx != SP->curscol ||
-          win->_begy + win->_cury != SP->cursrow)) || is_wintouched(win)))
-        wrefresh(win);
-
-    /* if ungotten char exists, remove and return it */
-
-    if (c_ungind)
-        return c_ungch[--c_ungind];
-
-    /* if normal and data in buffer */
-
-    if ((!SP->raw_inp && !SP->cbreak) && (c_gindex < c_pindex))
-        return buffer[c_gindex++];
-
-    /* prepare to buffer data */
-
-    c_pindex = 0;
-    c_gindex = 0;
-
-    /* to get here, no keys are buffered. go and get one. */
-
-    for (;;)            /* loop for any buffering */
-    {
-        /* is there a keystroke ready? */
-
-        if (!PDC_check_key())
-        {
-            /* if not, handle timeout() and halfdelay() */
-
-            if (SP->delaytenths || win->_delayms)
-            {
-                if (!waitcount)
-                    return ERR;
-
-                waitcount--;
-            }
-            else
-                if (win->_nodelay)
-                    return ERR;
-
-            napms(50);  /* sleep for 1/20th second */
-            continue;   /* then check again */
-        }
-
-        /* if there is, fetch it */
-
-        key = PDC_get_key();
-
-        if (SP->key_code)
-        {
-            /* filter special keys if not in keypad mode */
-
-            if (!win->_use_keypad)
-                key = -1;
-
-            /* filter mouse events; translate mouse clicks in the slk 
-               area to function keys */
-
-            else if (key == KEY_MOUSE)
-                key = _mouse_key(win);
-        }
-
-        /* unwanted key? loop back */
-
-        if (key == -1)
-            continue;
-
-        /* translate CR */
-
-        if (key == '\r' && SP->autocr && !SP->raw_inp)
-            key = '\n';
-
-        /* if echo is enabled */
-
-        if (SP->echo && !SP->key_code)
-        {
-            waddch(win, key);
-            wrefresh(win);
-        }
-
-        /* if no buffering */
-
-        if (SP->raw_inp || SP->cbreak)
-            return key;
-
-        /* if no overflow, put data in buffer */
-
-        if (key == '\b')
-        {
-            if (c_pindex > c_gindex)
-                c_pindex--;
-        }
-        else
-            if (c_pindex < _INBUFSIZ - 2)
-                buffer[c_pindex++] = key;
-
-        /* if we got a line */
-
-        if (key == '\n' || key == '\r')
-            return buffer[c_gindex++];
-    }
-}
-
-int mvgetch(int y, int x)
-{
-    PDC_LOG(("mvgetch() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wgetch(stdscr);
-}
-
-int mvwgetch(WINDOW *win, int y, int x)
-{
-    PDC_LOG(("mvwgetch() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wgetch(win);
-}
-
-int PDC_ungetch(int ch)
-{
-    PDC_LOG(("ungetch() - called\n"));
-
-    if (c_ungind >= NUNGETCH)   /* pushback stack full */
-        return ERR;
-
-    c_ungch[c_ungind++] = ch;
-
-    return OK;
-}
-
-int flushinp(void)
-{
-    PDC_LOG(("flushinp() - called\n"));
-
-    PDC_flushinp();
-
-    c_gindex = 1;           /* set indices to kill buffer */
-    c_pindex = 0;
-    c_ungind = 0;           /* clear c_ungch array */
-
-    return OK;
-}
-
-unsigned long PDC_get_key_modifiers(void)
-{
-    PDC_LOG(("PDC_get_key_modifiers() - called\n"));
-
-    return pdc_key_modifiers;
-}
-
-int PDC_save_key_modifiers(bool flag)
-{
-    PDC_LOG(("PDC_save_key_modifiers() - called\n"));
-
-    SP->save_key_modifiers = flag;
-    return OK;
-}
-
-int PDC_return_key_modifiers(bool flag)
-{
-    PDC_LOG(("PDC_return_key_modifiers() - called\n"));
-
-    SP->return_key_modifiers = flag;
-    return PDC_modifiers_set();
-}
-
-#ifdef PDC_WIDE
-int wget_wch(WINDOW *win, wint_t *wch)
-{
-    int key;
-
-    PDC_LOG(("wget_wch() - called\n"));
-
-    if (!wch)
-        return ERR;
-
-    key = wgetch(win);
-
-    if (key == ERR)
-        return ERR;
-
-    *wch = key;
-
-    return SP->key_code ? KEY_CODE_YES : OK;
-}
-
-int get_wch(wint_t *wch)
-{
-    PDC_LOG(("get_wch() - called\n"));
-
-    return wget_wch(stdscr, wch);
-}
-
-int mvget_wch(int y, int x, wint_t *wch)
-{
-    PDC_LOG(("mvget_wch() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wget_wch(stdscr, wch);
-}
-
-int mvwget_wch(WINDOW *win, int y, int x, wint_t *wch)
-{
-    PDC_LOG(("mvwget_wch() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wget_wch(win, wch);
-}
-
-int unget_wch(const wchar_t wch)
-{
-    return PDC_ungetch(wch);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/getstr.c b/src/other/PDCurses/pdcurses/getstr.c
deleted file mode 100644
index c6386d3..0000000
--- a/src/other/PDCurses/pdcurses/getstr.c
+++ /dev/null
@@ -1,471 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: getstr.c,v 1.51 2008/07/14 04:24:51 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         getstr
-
-  Synopsis:
-        int getstr(char *str);
-        int wgetstr(WINDOW *win, char *str);
-        int mvgetstr(int y, int x, char *str);
-        int mvwgetstr(WINDOW *win, int y, int x, char *str);
-        int getnstr(char *str, int n);
-        int wgetnstr(WINDOW *win, char *str, int n);
-        int mvgetnstr(int y, int x, char *str, int n);
-        int mvwgetnstr(WINDOW *win, int y, int x, char *str, int n);
-
-        int get_wstr(wint_t *wstr);
-        int wget_wstr(WINDOW *win, wint_t *wstr);
-        int mvget_wstr(int y, int x, wint_t *wstr);
-        int mvwget_wstr(WINDOW *win, int, int, wint_t *wstr);
-        int getn_wstr(wint_t *wstr, int n);
-        int wgetn_wstr(WINDOW *win, wint_t *wstr, int n);
-        int mvgetn_wstr(int y, int x, wint_t *wstr, int n);
-        int mvwgetn_wstr(WINDOW *win, int y, int x, wint_t *wstr, int n);
-
-  Description:
-        These routines call wgetch() repeatedly to build a string, 
-        interpreting erase and kill characters along the way, until a 
-        newline or carriage return is received. When PDCurses is built 
-        with wide-character support enabled, the narrow-character 
-        functions convert the wgetch()'d values into a multibyte string 
-        in the current locale before returning it. The resulting string 
-        is placed in the area pointed to by *str. The routines with n as 
-        the last argument read at most n characters.
-
-        Note that there's no way to know how long the buffer passed to 
-        wgetstr() is, so use wgetnstr() to avoid buffer overflows.
-
-  Return Value:
-        This functions return ERR on failure or any other value on 
-        success.
-
-  Portability                                X/Open    BSD    SYS V
-        getstr                                  Y       Y       Y
-        wgetstr                                 Y       Y       Y
-        mvgetstr                                Y       Y       Y
-        mvwgetstr                               Y       Y       Y
-        getnstr                                 Y       -      4.0
-        wgetnstr                                Y       -      4.0
-        mvgetnstr                               Y       -       -
-        mvwgetnstr                              Y       -       -
-        get_wstr                                Y
-        wget_wstr                               Y
-        mvget_wstr                              Y
-        mvwget_wstr                             Y
-        getn_wstr                               Y
-        wgetn_wstr                              Y
-        mvgetn_wstr                             Y
-        mvwgetn_wstr                            Y
-
-**man-end****************************************************************/
-
-#define MAXLINE 255
-
-int wgetnstr(WINDOW *win, char *str, int n)
-{
-#ifdef PDC_WIDE
-    wchar_t wstr[MAXLINE + 1];
-
-    if (n < 0 || n > MAXLINE)
-        n = MAXLINE;
-
-    if (wgetn_wstr(win, (wint_t *)wstr, n) == ERR)
-        return ERR;
-
-    return PDC_wcstombs(str, wstr, n);
-#else
-    int ch, i, num, x, chars;
-    char *p;
-    bool stop, oldecho, oldcbreak, oldnodelay;
-
-    PDC_LOG(("wgetnstr() - called\n"));
-
-    if (!win || !str)
-        return ERR;
-
-    chars = 0;
-    p = str;
-    stop = FALSE;
-
-    x = win->_curx;
-
-    oldcbreak = SP->cbreak; /* remember states */
-    oldecho = SP->echo;
-    oldnodelay = win->_nodelay;
-
-    SP->echo = FALSE;       /* we do echo ourselves */
-    cbreak();               /* ensure each key is returned immediately */
-    win->_nodelay = FALSE;  /* don't return -1 */
-
-    wrefresh(win);
-
-    while (!stop)
-    {
-        ch = wgetch(win);
-
-        switch (ch)
-        {
-
-        case '\t':
-            ch = ' ';
-            num = TABSIZE - (win->_curx - x) % TABSIZE;
-            for (i = 0; i < num; i++)
-            {
-                if (chars < n)
-                {
-                    if (oldecho) 
-                        waddch(win, ch);
-                    *p++ = ch;
-                    ++chars;
-                }
-                else
-                    beep();
-            }
-            break;
-
-        case _ECHAR:        /* CTRL-H -- Delete character */
-            if (p > str)
-            {
-                if (oldecho) 
-                    waddstr(win, "\b \b");
-                ch = (unsigned char)(*--p);
-                if ((ch < ' ') && (oldecho))
-                    waddstr(win, "\b \b");
-                chars--;
-            }
-            break;
-
-        case _DLCHAR:       /* CTRL-U -- Delete line */
-            while (p > str)
-            {
-                if (oldecho) 
-                    waddstr(win, "\b \b");
-                ch = (unsigned char)(*--p);
-                if ((ch < ' ') && (oldecho))
-                    waddstr(win, "\b \b");
-            }
-            chars = 0;
-            break;
-
-        case _DWCHAR:       /* CTRL-W -- Delete word */
-
-            while ((p > str) && (*(p - 1) == ' '))
-            {
-                if (oldecho) 
-                    waddstr(win, "\b \b");
-
-                --p;        /* remove space */
-                chars--;
-            }
-            while ((p > str) && (*(p - 1) != ' '))
-            {
-                if (oldecho) 
-                    waddstr(win, "\b \b");
-
-                ch = (unsigned char)(*--p);
-                if ((ch < ' ') && (oldecho))
-                    waddstr(win, "\b \b");
-                chars--;
-            }
-            break;
-
-        case '\n':
-        case '\r':
-            stop = TRUE;
-            if (oldecho) 
-                waddch(win, '\n');
-            break;
-
-        default:
-            if (chars < n)
-            {
-                if (!SP->key_code && ch < 0x100)
-                {
-                    *p++ = ch;
-                    if (oldecho) 
-                        waddch(win, ch);
-                    chars++;
-                }
-            }
-            else
-                beep();
-
-            break;
-      
-        }
-
-        wrefresh(win);
-    }
-
-    *p = '\0';
-
-    SP->echo = oldecho;     /* restore old settings */
-    SP->cbreak = oldcbreak;
-    win->_nodelay = oldnodelay;
-
-    return OK;
-#endif
-}
-
-int getstr(char *str)
-{
-    PDC_LOG(("getstr() - called\n"));
-
-    return wgetnstr(stdscr, str, MAXLINE);
-}
-
-int wgetstr(WINDOW *win, char *str)
-{
-    PDC_LOG(("wgetstr() - called\n"));
-
-    return wgetnstr(win, str, MAXLINE);
-}
-
-int mvgetstr(int y, int x, char *str)
-{
-    PDC_LOG(("mvgetstr() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wgetnstr(stdscr, str, MAXLINE);
-}
-
-int mvwgetstr(WINDOW *win, int y, int x, char *str)
-{
-    PDC_LOG(("mvwgetstr() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wgetnstr(win, str, MAXLINE);
-}
-
-int getnstr(char *str, int n)
-{
-    PDC_LOG(("getnstr() - called\n"));
-
-    return wgetnstr(stdscr, str, n);
-}
-
-int mvgetnstr(int y, int x, char *str, int n)
-{
-    PDC_LOG(("mvgetnstr() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wgetnstr(stdscr, str, n);
-}
-
-int mvwgetnstr(WINDOW *win, int y, int x, char *str, int n)
-{
-    PDC_LOG(("mvwgetnstr() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wgetnstr(win, str, n);
-}
-
-#ifdef PDC_WIDE
-int wgetn_wstr(WINDOW *win, wint_t *wstr, int n)
-{
-    int ch, i, num, x, chars;
-    wint_t *p;
-    bool stop, oldecho, oldcbreak, oldnodelay;
-
-    PDC_LOG(("wgetn_wstr() - called\n"));
-
-    if (!win || !wstr)
-        return ERR;
-
-    chars = 0;
-    p = wstr;
-    stop = FALSE;
-
-    x = win->_curx;
-
-    oldcbreak = SP->cbreak; /* remember states */
-    oldecho = SP->echo;
-    oldnodelay = win->_nodelay;
-
-    SP->echo = FALSE;       /* we do echo ourselves */
-    cbreak();               /* ensure each key is returned immediately */
-    win->_nodelay = FALSE;  /* don't return -1 */
-
-    wrefresh(win);
-
-    while (!stop)
-    {
-        ch = wgetch(win);
-
-        switch (ch)
-        {
-
-        case '\t':
-            ch = ' ';
-            num = TABSIZE - (win->_curx - x) % TABSIZE;
-            for (i = 0; i < num; i++)
-            {
-                if (chars < n)
-                {
-                    if (oldecho) 
-                        waddch(win, ch);
-                    *p++ = ch;
-                    ++chars;
-                }
-                else
-                    beep();
-            }
-            break;
-
-        case _ECHAR:        /* CTRL-H -- Delete character */
-            if (p > wstr)
-            {
-                if (oldecho) 
-                    waddstr(win, "\b \b");
-                ch = *--p;
-                if ((ch < ' ') && (oldecho))
-                    waddstr(win, "\b \b");
-                chars--;
-            }
-            break;
-
-        case _DLCHAR:       /* CTRL-U -- Delete line */
-            while (p > wstr)
-            {
-                if (oldecho) 
-                    waddstr(win, "\b \b");
-                ch = *--p;
-                if ((ch < ' ') && (oldecho))
-                    waddstr(win, "\b \b");
-            }
-            chars = 0;
-            break;
-
-        case _DWCHAR:       /* CTRL-W -- Delete word */
-
-            while ((p > wstr) && (*(p - 1) == ' '))
-            {
-                if (oldecho) 
-                    waddstr(win, "\b \b");
-
-                --p;        /* remove space */
-                chars--;
-            }
-            while ((p > wstr) && (*(p - 1) != ' '))
-            {
-                if (oldecho) 
-                    waddstr(win, "\b \b");
-
-                ch = *--p;
-                if ((ch < ' ') && (oldecho))
-                    waddstr(win, "\b \b");
-                chars--;
-            }
-            break;
-
-        case '\n':
-        case '\r':
-            stop = TRUE;
-            if (oldecho) 
-                waddch(win, '\n');
-            break;
-
-        default:
-            if (chars < n)
-            {
-                if (!SP->key_code)
-                {
-                    *p++ = ch;
-                    if (oldecho)
-                        waddch(win, ch);
-                    chars++;
-                }
-            }
-            else
-                beep();
-
-            break;
-      
-        }
-
-        wrefresh(win);
-    }
-
-    *p = '\0';
-
-    SP->echo = oldecho;     /* restore old settings */
-    SP->cbreak = oldcbreak;
-    win->_nodelay = oldnodelay;
-
-    return OK;
-}
-
-int get_wstr(wint_t *wstr)
-{
-    PDC_LOG(("get_wstr() - called\n"));
-
-    return wgetn_wstr(stdscr, wstr, MAXLINE);
-}
-
-int wget_wstr(WINDOW *win, wint_t *wstr)
-{
-    PDC_LOG(("wget_wstr() - called\n"));
-
-    return wgetn_wstr(win, wstr, MAXLINE);
-}
-
-int mvget_wstr(int y, int x, wint_t *wstr)
-{
-    PDC_LOG(("mvget_wstr() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wgetn_wstr(stdscr, wstr, MAXLINE);
-}
-
-int mvwget_wstr(WINDOW *win, int y, int x, wint_t *wstr)
-{
-    PDC_LOG(("mvwget_wstr() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wgetn_wstr(win, wstr, MAXLINE);
-}
-
-int getn_wstr(wint_t *wstr, int n)
-{
-    PDC_LOG(("getn_wstr() - called\n"));
-
-    return wgetn_wstr(stdscr, wstr, n);
-}
-
-int mvgetn_wstr(int y, int x, wint_t *wstr, int n)
-{
-    PDC_LOG(("mvgetn_wstr() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wgetn_wstr(stdscr, wstr, n);
-}
-
-int mvwgetn_wstr(WINDOW *win, int y, int x, wint_t *wstr, int n)
-{
-    PDC_LOG(("mvwgetn_wstr() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wgetn_wstr(win, wstr, n);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/getyx.c b/src/other/PDCurses/pdcurses/getyx.c
deleted file mode 100644
index fd0564d..0000000
--- a/src/other/PDCurses/pdcurses/getyx.c
+++ /dev/null
@@ -1,143 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: getyx.c,v 1.29 2008/07/15 17:13:26 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         getyx
-
-  Synopsis:
-        void getyx(WINDOW *win, int y, int x);
-        void getparyx(WINDOW *win, int y, int x);
-        void getbegyx(WINDOW *win, int y, int x);
-        void getmaxyx(WINDOW *win, int y, int x);
-
-        void getsyx(int y, int x);
-        int setsyx(int y, int x);
-
-        int getbegy(WINDOW *win);
-        int getbegx(WINDOW *win);
-        int getcury(WINDOW *win);
-        int getcurx(WINDOW *win);
-        int getpary(WINDOW *win);
-        int getparx(WINDOW *win);
-        int getmaxy(WINDOW *win);
-        int getmaxx(WINDOW *win);
-
-  Description:
-        The getyx() macro (defined in curses.h -- the prototypes here 
-        are merely illustrative) puts the current cursor position of the 
-        specified window into y and x. getbegyx() and getmaxyx() return 
-        the starting coordinates and size of the specified window, 
-        respectively. getparyx() returns the starting coordinates of the 
-        parent's window, if the specified window is a subwindow; 
-        otherwise it sets y and x to -1. These are all macros.
-
-        getsyx() gets the coordinates of the virtual screen cursor, and
-        stores them in y and x. If leaveok() is TRUE, it returns -1, -1.
-        If lines have been removed with ripoffline(), then getsyx()
-        includes these lines in its count; so, the returned y and x
-        values should only be used with setsyx().
-
-        setsyx() sets the virtual screen cursor to the y, x coordinates.
-        If y, x are -1, -1, leaveok() is set TRUE.
-
-        getsyx() and setsyx() are meant to be used by a library routine
-        that manipulates curses windows without altering the position of
-        the cursor. Note that getsyx() is defined only as a macro.
-
-        getbegy(), getbegx(), getcurx(), getcury(), getmaxy(),
-        getmaxx(), getpary(), and getparx() return the appropriate
-        coordinate or size values, or ERR in the case of a NULL window.
-
-  Portability                                X/Open    BSD    SYS V
-        getyx                                   Y       Y       Y
-        getparyx                                -       -      4.0
-        getbegyx                                -       -      3.0
-        getmaxyx                                -       -      3.0
-        getsyx                                  -       -      3.0
-        setsyx                                  -       -      3.0
-        getbegy                                 -       -       -
-        getbegx                                 -       -       -
-        getcury                                 -       -       -
-        getcurx                                 -       -       -
-        getpary                                 -       -       -
-        getparx                                 -       -       -
-        getmaxy                                 -       -       -
-        getmaxx                                 -       -       -
-
-**man-end****************************************************************/
-
-int getbegy(WINDOW *win)
-{
-    PDC_LOG(("getbegy() - called\n"));
-
-    return win ? win->_begy : ERR;
-}
-
-int getbegx(WINDOW *win)
-{
-    PDC_LOG(("getbegx() - called\n"));
-
-    return win ? win->_begx : ERR;
-}
-
-int getcury(WINDOW *win)
-{
-    PDC_LOG(("getcury() - called\n"));
-
-    return win ? win->_cury : ERR;
-}
-
-int getcurx(WINDOW *win)
-{
-    PDC_LOG(("getcurx() - called\n"));
-
-    return win ? win->_curx : ERR;
-}
-
-int getpary(WINDOW *win)
-{
-    PDC_LOG(("getpary() - called\n"));
-
-    return win ? win->_pary : ERR;
-}
-
-int getparx(WINDOW *win)
-{
-    PDC_LOG(("getparx() - called\n"));
-
-    return win ? win->_parx : ERR;
-}
-
-int getmaxy(WINDOW *win)
-{
-    PDC_LOG(("getmaxy() - called\n"));
-
-    return win ? win->_maxy : ERR;
-}
-
-int getmaxx(WINDOW *win)
-{
-    PDC_LOG(("getmaxx() - called\n"));
-
-    return win ? win->_maxx : ERR;
-}
-
-int setsyx(int y, int x)
-{
-    PDC_LOG(("setsyx() - called\n"));
-
-    if(y == -1 && x == -1)
-    {
-        curscr->_leaveit = TRUE;
-        return OK;
-    }
-    else
-    {
-        curscr->_leaveit = FALSE;
-        return wmove(curscr, y, x);
-    }
-}
diff --git a/src/other/PDCurses/pdcurses/inch.c b/src/other/PDCurses/pdcurses/inch.c
deleted file mode 100644
index 7347e74..0000000
--- a/src/other/PDCurses/pdcurses/inch.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: inch.c,v 1.33 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         inch
-
-  Synopsis:
-        chtype inch(void);
-        chtype winch(WINDOW *win);
-        chtype mvinch(int y, int x);
-        chtype mvwinch(WINDOW *win, int y, int x);
-
-        int in_wch(cchar_t *wcval);
-        int win_wch(WINDOW *win, cchar_t *wcval);
-        int mvin_wch(int y, int x, cchar_t *wcval);
-        int mvwin_wch(WINDOW *win, int y, int x, cchar_t *wcval);
-
-  Description:
-        The inch() functions retrieve the character and attribute from 
-        the current or specified window position, in the form of a 
-        chtype. If a NULL window is specified, (chtype)ERR is returned.
-
-        The in_wch() functions are the wide-character versions; instead 
-        of returning a chtype, they store a cchar_t at the address 
-        specified by wcval, and return OK or ERR. (No value is stored 
-        when ERR is returned.) Note that in PDCurses, chtype and cchar_t 
-        are the same.
-
-  Portability                                X/Open    BSD    SYS V
-        inch                                    Y       Y       Y
-        winch                                   Y       Y       Y
-        mvinch                                  Y       Y       Y
-        mvwinch                                 Y       Y       Y
-        in_wch                                  Y
-        win_wch                                 Y
-        mvin_wch                                Y
-        mvwin_wch                               Y
-
-**man-end****************************************************************/
-
-chtype winch(WINDOW *win)
-{
-    PDC_LOG(("winch() - called\n"));
-
-    if (!win)
-        return (chtype)ERR;
-
-    return win->_y[win->_cury][win->_curx];
-}
-
-chtype inch(void)
-{
-    PDC_LOG(("inch() - called\n"));
-
-    return winch(stdscr);
-}
-
-chtype mvinch(int y, int x)
-{
-    PDC_LOG(("mvinch() - called\n"));
-
-    if (move(y, x) == ERR)
-        return (chtype)ERR;
-
-    return stdscr->_y[stdscr->_cury][stdscr->_curx];
-}
-
-chtype mvwinch(WINDOW *win, int y, int x)
-{
-    PDC_LOG(("mvwinch() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return (chtype)ERR;
-
-    return win->_y[win->_cury][win->_curx];
-}
-
-#ifdef PDC_WIDE
-int win_wch(WINDOW *win, cchar_t *wcval)
-{
-    PDC_LOG(("win_wch() - called\n"));
-
-    if (!win || !wcval)
-        return ERR;
-
-    *wcval = win->_y[win->_cury][win->_curx];
-
-    return OK;
-}
-
-int in_wch(cchar_t *wcval)
-{
-    PDC_LOG(("in_wch() - called\n"));
-
-    return win_wch(stdscr, wcval);
-}
-
-int mvin_wch(int y, int x, cchar_t *wcval)
-{
-    PDC_LOG(("mvin_wch() - called\n"));
-
-    if (!wcval || (move(y, x) == ERR))
-        return ERR;
-
-    *wcval = stdscr->_y[stdscr->_cury][stdscr->_curx];
-
-    return OK;
-}
-
-int mvwin_wch(WINDOW *win, int y, int x, cchar_t *wcval)
-{
-    PDC_LOG(("mvwin_wch() - called\n"));
-
-    if (!wcval || (wmove(win, y, x) == ERR))
-        return ERR;
-
-    *wcval = win->_y[win->_cury][win->_curx];
-
-    return OK;
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/inchstr.c b/src/other/PDCurses/pdcurses/inchstr.c
deleted file mode 100644
index 50b8cf5..0000000
--- a/src/other/PDCurses/pdcurses/inchstr.c
+++ /dev/null
@@ -1,211 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: inchstr.c,v 1.34 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         inchstr
-
-  Synopsis:
-        int inchstr(chtype *ch);
-        int inchnstr(chtype *ch, int n);
-        int winchstr(WINDOW *win, chtype *ch);
-        int winchnstr(WINDOW *win, chtype *ch, int n);
-        int mvinchstr(int y, int x, chtype *ch);
-        int mvinchnstr(int y, int x, chtype *ch, int n);
-        int mvwinchstr(WINDOW *, int y, int x, chtype *ch);
-        int mvwinchnstr(WINDOW *, int y, int x, chtype *ch, int n);
-
-        int in_wchstr(cchar_t *wch);
-        int in_wchnstr(cchar_t *wch, int n);
-        int win_wchstr(WINDOW *win, cchar_t *wch);
-        int win_wchnstr(WINDOW *win, cchar_t *wch, int n);
-        int mvin_wchstr(int y, int x, cchar_t *wch);
-        int mvin_wchnstr(int y, int x, cchar_t *wch, int n);
-        int mvwin_wchstr(WINDOW *win, int y, int x, cchar_t *wch);
-        int mvwin_wchnstr(WINDOW *win, int y, int x, cchar_t *wch, int n);
-
-  Description:
-        These routines read a chtype or cchar_t string from the window, 
-        starting at the current or specified position, and ending at the 
-        right margin, or after n elements, whichever is less.
-
-  Return Value:
-        All functions return the number of elements read, or ERR on 
-        error.
-
-  Portability                                X/Open    BSD    SYS V
-        inchstr                                 Y       -      4.0
-        winchstr                                Y       -      4.0
-        mvinchstr                               Y       -      4.0
-        mvwinchstr                              Y       -      4.0
-        inchnstr                                Y       -      4.0
-        winchnstr                               Y       -      4.0
-        mvinchnstr                              Y       -      4.0
-        mvwinchnstr                             Y       -      4.0
-        in_wchstr                               Y
-        win_wchstr                              Y
-        mvin_wchstr                             Y
-        mvwin_wchstr                            Y
-        in_wchnstr                              Y
-        win_wchnstr                             Y
-        mvin_wchnstr                            Y
-        mvwin_wchnstr                           Y
-
-**man-end****************************************************************/
-
-int winchnstr(WINDOW *win, chtype *ch, int n)
-{
-    chtype *src;
-    int i;
-
-    PDC_LOG(("winchnstr() - called\n"));
-
-    if (!win || !ch || n < 0)
-        return ERR;
-
-    if ((win->_curx + n) > win->_maxx)
-        n = win->_maxx - win->_curx;
-
-    src = win->_y[win->_cury] + win->_curx;
-
-    for (i = 0; i < n; i++)
-        *ch++ = *src++;
-
-    *ch = (chtype)0;
-
-    return OK;
-}
-
-int inchstr(chtype *ch)
-{
-    PDC_LOG(("inchstr() - called\n"));
-
-    return winchnstr(stdscr, ch, stdscr->_maxx - stdscr->_curx);
-}
-
-int winchstr(WINDOW *win, chtype *ch)
-{
-    PDC_LOG(("winchstr() - called\n"));
-
-    return winchnstr(win, ch, win->_maxx - win->_curx);
-}
-
-int mvinchstr(int y, int x, chtype *ch)
-{
-    PDC_LOG(("mvinchstr() - called: y %d x %d\n", y, x));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return winchnstr(stdscr, ch, stdscr->_maxx - stdscr->_curx);
-}
-
-int mvwinchstr(WINDOW *win, int y, int x, chtype *ch)
-{
-    PDC_LOG(("mvwinchstr() - called:\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return winchnstr(win, ch, win->_maxx - win->_curx);
-}
-
-int inchnstr(chtype *ch, int n)
-{
-    PDC_LOG(("inchnstr() - called\n"));
-
-    return winchnstr(stdscr, ch, n);
-}
-
-int mvinchnstr(int y, int x, chtype *ch, int n)
-{
-    PDC_LOG(("mvinchnstr() - called: y %d x %d n %d\n", y, x, n));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return winchnstr(stdscr, ch, n);
-}
-
-int mvwinchnstr(WINDOW *win, int y, int x, chtype *ch, int n)
-{
-    PDC_LOG(("mvwinchnstr() - called: y %d x %d n %d \n", y, x, n));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return winchnstr(win, ch, n);
-}
-
-#ifdef PDC_WIDE
-int win_wchnstr(WINDOW *win, cchar_t *wch, int n)
-{
-    PDC_LOG(("win_wchnstr() - called\n"));
-
-    return winchnstr(win, wch, n);
-}
-
-int in_wchstr(cchar_t *wch)
-{
-    PDC_LOG(("in_wchstr() - called\n"));
-
-    return win_wchnstr(stdscr, wch, stdscr->_maxx - stdscr->_curx);
-}
-
-int win_wchstr(WINDOW *win, cchar_t *wch)
-{
-    PDC_LOG(("win_wchstr() - called\n"));
-
-    return win_wchnstr(win, wch, win->_maxx - win->_curx);
-}
-
-int mvin_wchstr(int y, int x, cchar_t *wch)
-{
-    PDC_LOG(("mvin_wchstr() - called: y %d x %d\n", y, x));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return win_wchnstr(stdscr, wch, stdscr->_maxx - stdscr->_curx);
-}
-
-int mvwin_wchstr(WINDOW *win, int y, int x, cchar_t *wch)
-{
-    PDC_LOG(("mvwin_wchstr() - called:\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return win_wchnstr(win, wch, win->_maxx - win->_curx);
-}
-
-int in_wchnstr(cchar_t *wch, int n)
-{
-    PDC_LOG(("in_wchnstr() - called\n"));
-
-    return win_wchnstr(stdscr, wch, n);
-}
-
-int mvin_wchnstr(int y, int x, cchar_t *wch, int n)
-{
-    PDC_LOG(("mvin_wchnstr() - called: y %d x %d n %d\n", y, x, n));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return win_wchnstr(stdscr, wch, n);
-}
-
-int mvwin_wchnstr(WINDOW *win, int y, int x, cchar_t *wch, int n)
-{
-    PDC_LOG(("mvwinchnstr() - called: y %d x %d n %d \n", y, x, n));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return win_wchnstr(win, wch, n);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/initscr.c b/src/other/PDCurses/pdcurses/initscr.c
deleted file mode 100644
index d80fa0c..0000000
--- a/src/other/PDCurses/pdcurses/initscr.c
+++ /dev/null
@@ -1,339 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: initscr.c,v 1.114 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         initscr
-
-  Synopsis:
-        WINDOW *initscr(void);
-        WINDOW *Xinitscr(int argc, char *argv[]);
-        int endwin(void);
-        bool isendwin(void);
-        SCREEN *newterm(const char *type, FILE *outfd, FILE *infd);
-        SCREEN *set_term(SCREEN *new);
-        void delscreen(SCREEN *sp);
-
-        int resize_term(int nlines, int ncols);
-        bool is_termresized(void);
-        const char *curses_version(void);
-
-  Description:
-        initscr() should be the first curses routine called.  It will 
-        initialize all curses data structures, and arrange that the 
-        first call to refresh() will clear the screen.  In case of 
-        error, initscr() will write a message to standard error and end 
-        the program.
-
-        endwin() should be called before exiting or escaping from curses 
-        mode temporarily.  It will restore tty modes, move the cursor to 
-        the lower left corner of the screen and reset the terminal into 
-        the proper non-visual mode.  To resume curses after a temporary 
-        escape, call refresh() or doupdate().
-
-        isendwin() returns TRUE if endwin() has been called without a 
-        subsequent refresh, unless SP is NULL.
-
-        In some implementations of curses, newterm() allows the use of 
-        multiple terminals. Here, it's just an alternative interface for 
-        initscr(). It always returns SP, or NULL.
-
-        delscreen() frees the memory allocated by newterm() or
-        initscr(), since it's not freed by endwin(). This function is
-        usually not needed. In PDCurses, the parameter must be the
-        value of SP, and delscreen() sets SP to NULL.
-
-        set_term() does nothing meaningful in PDCurses, but is included 
-        for compatibility with other curses implementations.
-
-        resize_term() is effectively two functions: When called with 
-        nonzero values for nlines and ncols, it attempts to resize the 
-        screen to the given size. When called with (0, 0), it merely 
-        adjusts the internal structures to match the current size after 
-        the screen is resized by the user. On the currently supported 
-        platforms, this functionality is mutually exclusive: X11 allows 
-        user resizing, while DOS, OS/2 and Win32 allow programmatic 
-        resizing. If you want to support user resizing, you should check 
-        for getch() returning KEY_RESIZE, and/or call is_termresized() 
-        at appropriate times; if either condition occurs, call 
-        resize_term(0, 0). Then, with either user or programmatic 
-        resizing, you'll have to resize any windows you've created, as 
-        appropriate; resize_term() only handles stdscr and curscr.
-
-        is_termresized() returns TRUE if the curses screen has been
-        resized by the user, and a call to resize_term() is needed. 
-        Checking for KEY_RESIZE is generally preferable, unless you're 
-        not handling the keyboard.
-
-        curses_version() returns a string describing the version of 
-        PDCurses.
-
-  Return Value:
-        All functions return NULL on error, except endwin(), which
-        returns ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        initscr                                 Y       Y       Y
-        endwin                                  Y       Y       Y
-        isendwin                                Y       -      3.0
-        newterm                                 Y       -       Y
-        set_term                                Y       -       Y
-        delscreen                               Y       -      4.0
-        resize_term                             -       -       -
-        is_termresized                          -       -       -
-        curses_version                          -       -       -
-
-**man-end****************************************************************/
-
-#include <stdlib.h>
-
-char ttytype[128];
-
-const char *_curses_notice = "PDCurses 3.4 - Public Domain 2008";
-
-SCREEN *SP = (SCREEN*)NULL;           /* curses variables */
-WINDOW *curscr = (WINDOW *)NULL;      /* the current screen image */
-WINDOW *stdscr = (WINDOW *)NULL;      /* the default screen window */
-WINDOW *pdc_lastscr = (WINDOW *)NULL; /* the last screen image */
-
-int LINES = 0;                        /* current terminal height */
-int COLS = 0;                         /* current terminal width */
-int TABSIZE = 8;
-
-MOUSE_STATUS Mouse_status, pdc_mouse_status;
-
-extern RIPPEDOFFLINE linesripped[5];
-extern char linesrippedoff;
-
-WINDOW *Xinitscr(int argc, char *argv[])
-{
-    int i;
-
-    PDC_LOG(("Xinitscr() - called\n"));
-
-    if (SP && SP->alive)
-        return NULL;
-
-    if (PDC_scr_open(argc, argv) == ERR)
-    {
-        fprintf(stderr, "initscr(): Unable to create SP\n");
-        exit(8);
-    }
-
-    SP->autocr = TRUE;       /* cr -> lf by default */
-    SP->raw_out = FALSE;     /* tty I/O modes */
-    SP->raw_inp = FALSE;     /* tty I/O modes */
-    SP->cbreak = TRUE;
-    SP->save_key_modifiers = FALSE;
-    SP->return_key_modifiers = FALSE;
-    SP->echo = TRUE;
-    SP->visibility = 1;
-    SP->resized = FALSE;
-    SP->_trap_mbe = 0L;
-    SP->_map_mbe_to_key = 0L;
-    SP->linesrippedoff = 0;
-    SP->linesrippedoffontop = 0;
-    SP->delaytenths = 0;
-    SP->line_color = -1;
-
-    SP->orig_cursor = PDC_get_cursor_mode();
-
-    LINES = SP->lines;
-    COLS = SP->cols;
-
-    if (LINES < 2 || COLS < 2)
-    {
-        fprintf(stderr, "initscr(): LINES=%d COLS=%d: too small.\n",
-                LINES, COLS);
-        exit(4);
-    }
-
-    if ((curscr = newwin(LINES, COLS, 0, 0)) == (WINDOW *)NULL)
-    {
-        fprintf(stderr, "initscr(): Unable to create curscr.\n");
-        exit(2);
-    }
-
-    if ((pdc_lastscr = newwin(LINES, COLS, 0, 0)) == (WINDOW *)NULL)
-    {
-        fprintf(stderr, "initscr(): Unable to create pdc_lastscr.\n");
-        exit(2);
-    }
-
-    wattrset(pdc_lastscr, (chtype)(-1));
-    werase(pdc_lastscr);
-
-    PDC_slk_initialize();
-    LINES -= SP->slklines;
-
-    /* We have to sort out ripped off lines here, and reduce the height 
-       of stdscr by the number of lines ripped off */
-
-    for (i = 0; i < linesrippedoff; i++)
-    {
-        if (linesripped[i].line < 0)
-            (*linesripped[i].init)(newwin(1, COLS, LINES - 1, 0), COLS);
-        else
-            (*linesripped[i].init)(newwin(1, COLS,
-                                   SP->linesrippedoffontop++, 0), COLS);
-
-        SP->linesrippedoff++;
-        LINES--;
-    }
-
-    linesrippedoff = 0;
-
-    if (!(stdscr = newwin(LINES, COLS, SP->linesrippedoffontop, 0)))
-    {
-        fprintf(stderr, "initscr(): Unable to create stdscr.\n");
-        exit(1);
-    }
-
-    wclrtobot(stdscr);
-
-    /* If preserving the existing screen, don't allow a screen clear */
-
-    if (SP->_preserve)
-    {
-        untouchwin(curscr);
-        untouchwin(stdscr);
-        stdscr->_clear = FALSE;
-        curscr->_clear = FALSE;
-    }
-    else
-        curscr->_clear = TRUE;
-
-    PDC_init_atrtab();  /* set up default colors */
-
-    MOUSE_X_POS = MOUSE_Y_POS = -1;
-    BUTTON_STATUS(1) = BUTTON_RELEASED;
-    BUTTON_STATUS(2) = BUTTON_RELEASED;
-    BUTTON_STATUS(3) = BUTTON_RELEASED;
-    Mouse_status.changes = 0;
-
-    SP->alive = TRUE;
-
-    def_shell_mode();
-
-    sprintf(ttytype, "pdcurses|PDCurses for %s", PDC_sysname());
-
-    return stdscr;
-}
-
-WINDOW *initscr(void)
-{
-    PDC_LOG(("initscr() - called\n"));
-
-    return Xinitscr(0, NULL);
-}
-
-int endwin(void)
-{
-    PDC_LOG(("endwin() - called\n"));
-
-    /* Allow temporary exit from curses using endwin() */
-
-    def_prog_mode();
-    PDC_scr_close();
-
-    SP->alive = FALSE;
-
-    return OK;
-}
-
-bool isendwin(void)
-{
-    PDC_LOG(("isendwin() - called\n"));
-    
-    return SP ? !(SP->alive) : FALSE;
-}
-
-SCREEN *newterm(const char *type, FILE *outfd, FILE *infd)
-{
-    PDC_LOG(("newterm() - called\n"));
-
-    return Xinitscr(0, NULL) ? SP : NULL;
-}
-
-SCREEN *set_term(SCREEN *new)
-{
-    PDC_LOG(("set_term() - called\n"));
-
-    /* We only support one screen */
-
-    return (new == SP) ? SP : NULL;
-}
-
-void delscreen(SCREEN *sp)
-{
-    PDC_LOG(("delscreen() - called\n"));
-
-    if (sp != SP)
-        return;
-
-    PDC_slk_free();     /* free the soft label keys, if needed */
-
-    delwin(stdscr);
-    delwin(curscr);
-    delwin(pdc_lastscr);
-    stdscr = (WINDOW *)NULL;
-    curscr = (WINDOW *)NULL;
-    pdc_lastscr = (WINDOW *)NULL;
-
-    SP->alive = FALSE;
-
-    PDC_scr_free();     /* free SP and pdc_atrtab */
-
-    SP = (SCREEN *)NULL;
-}
-
-int resize_term(int nlines, int ncols)
-{
-    PDC_LOG(("resize_term() - called: nlines %d\n", nlines));
-
-    if (!stdscr || PDC_resize_screen(nlines, ncols) == ERR)
-        return ERR;
-
-    SP->lines = PDC_get_rows();
-    LINES = SP->lines - SP->linesrippedoff - SP->slklines;
-    SP->cols = COLS = PDC_get_columns();
-
-    if (wresize(curscr, SP->lines, SP->cols) == ERR ||
-        wresize(stdscr, LINES, COLS) == ERR ||
-        wresize(pdc_lastscr, SP->lines, SP->cols) == ERR)
-        return ERR;
-
-    werase(pdc_lastscr);
-    curscr->_clear = TRUE;
-
-    if (SP->slk_winptr)
-    {
-        if (wresize(SP->slk_winptr, SP->slklines, COLS) == ERR)
-            return ERR;
-
-        wmove(SP->slk_winptr, 0, 0);
-        wclrtobot(SP->slk_winptr);
-        PDC_slk_initialize();
-        slk_noutrefresh();
-    }
-
-    touchwin(stdscr);
-    wnoutrefresh(stdscr);
-
-    return OK;
-}
-
-bool is_termresized(void)
-{
-    PDC_LOG(("is_termresized() - called\n"));
-
-    return SP->resized;
-}
-
-const char *curses_version(void)
-{
-    return _curses_notice;
-}
diff --git a/src/other/PDCurses/pdcurses/inopts.c b/src/other/PDCurses/pdcurses/inopts.c
deleted file mode 100644
index 6d33fc2..0000000
--- a/src/other/PDCurses/pdcurses/inopts.c
+++ /dev/null
@@ -1,321 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: inopts.c,v 1.43 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         inopts
-
-  Synopsis:
-        int cbreak(void);
-        int nocbreak(void);
-        int echo(void);
-        int noecho(void);
-        int halfdelay(int tenths);
-        int intrflush(WINDOW *win, bool bf);
-        int keypad(WINDOW *win, bool bf);
-        int meta(WINDOW *win, bool bf);
-        int nl(void);
-        int nonl(void);
-        int nodelay(WINDOW *win, bool bf);
-        int notimeout(WINDOW *win, bool bf);
-        int raw(void);
-        int noraw(void);
-        void noqiflush(void);
-        void qiflush(void);
-        void timeout(int delay);
-        void wtimeout(WINDOW *win, int delay);
-        int typeahead(int fildes);
-
-        int crmode(void);
-        int nocrmode(void);
-
-  Description:
-        cbreak() and nocbreak() toggle cbreak mode. In cbreak mode, 
-        characters typed by the user are made available immediately, and 
-        erase/kill character processing is not performed.  In nocbreak 
-        mode, typed characters are buffered until a newline or carriage 
-        return. Interrupt and flow control characters are unaffected by 
-        this mode. PDCurses always starts in cbreak mode.
-
-        echo() and noecho() control whether typed characters are echoed 
-        by the input routine.  Initially, input characters are echoed.  
-        Subsequent calls to echo() and noecho() do not flush type-ahead.
-
-        halfdelay() is similar to cbreak(), but allows for a time limit 
-        to be specified, in tenths of a second. This causes getch() to 
-        block for that period before returning ERR if no key has been 
-        received.  tenths must be between 1 and 255.
-
-        keypad() controls whether getch() returns function/special keys 
-        as single key codes (e.g., the left arrow key as KEY_LEFT). Per 
-        X/Open, the default for keypad mode is OFF. You'll probably want 
-        it on. With keypad mode off, if a special key is pressed, 
-        getch() does nothing or returns ERR.
-
-        nodelay() controls whether wgetch() is a non-blocking call. If 
-        the option is enabled, and no input is ready, wgetch() will 
-        return ERR. If disabled, wgetch() will hang until input is 
-        ready.
-
-        nl() enables the translation of a carriage return into a newline 
-        on input. nonl() disables this. Initially, the translation does 
-        occur.
-
-        raw() and noraw() toggle raw mode. Raw mode is similar to cbreak 
-        mode, in that characters typed are immediately passed through to 
-        the user program.  The difference is that in raw mode, the INTR, 
-        QUIT, SUSP, and STOP characters are passed through without being 
-        interpreted, and without generating a signal.
-
-        In PDCurses, the meta() function sets raw mode on or off.
-
-        timeout() and wtimeout() set blocking or non-blocking reads for 
-        the specified window. The delay is measured in milliseconds. If 
-        it's negative, a blocking read is used; if zero, then non- 
-        blocking reads are done -- if no input is waiting, ERR is 
-        returned immediately. If the delay is positive, the read blocks 
-        for the delay period; if the period expires, ERR is returned.
-
-        intrflush(), notimeout(), noqiflush(), qiflush() and typeahead()
-        do nothing in PDCurses, but are included for compatibility with 
-        other curses implementations.
-
-        crmode() and nocrmode() are archaic equivalents to cbreak() and 
-        nocbreak(), respectively.
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        cbreak                                  Y       Y       Y
-        nocbreak                                Y       Y       Y
-        echo                                    Y       Y       Y
-        noecho                                  Y       Y       Y
-        halfdelay                               Y       -       Y
-        intrflush                               Y       -       Y
-        keypad                                  Y       -       Y
-        meta                                    Y       -       Y
-        nl                                      Y       Y       Y
-        nonl                                    Y       Y       Y
-        nodelay                                 Y       -       Y
-        notimeout                               Y       -       Y
-        raw                                     Y       Y       Y
-        noraw                                   Y       Y       Y
-        noqiflush                               Y       -       Y
-        qiflush                                 Y       -       Y
-        timeout                                 Y       -       Y
-        wtimeout                                Y       -       Y
-        typeahead                               Y       -       Y
-        crmode                                  -
-        nocrmode                                -
-
-**man-end****************************************************************/
-
-int cbreak(void)
-{
-    PDC_LOG(("cbreak() - called\n"));
-
-    SP->cbreak = TRUE;
-
-    return OK;
-}
-
-int nocbreak(void)
-{
-    PDC_LOG(("nocbreak() - called\n"));
-
-    SP->cbreak = FALSE;
-    SP->delaytenths = 0;
-
-    return OK;
-}
-
-int echo(void)
-{
-    PDC_LOG(("echo() - called\n"));
-
-    SP->echo = TRUE;
-
-    return OK;
-}
-
-int noecho(void)
-{
-    PDC_LOG(("noecho() - called\n"));
-
-    SP->echo = FALSE;
-
-    return OK;
-}
-
-int halfdelay(int tenths)
-{
-    PDC_LOG(("halfdelay() - called\n"));
-
-    if (tenths < 1 || tenths > 255)
-        return ERR;
-
-    SP->delaytenths = tenths;
-
-    return OK;
-}
-
-int intrflush(WINDOW *win, bool bf)
-{
-    PDC_LOG(("intrflush() - called\n"));
-
-    return OK;
-}
-
-int keypad(WINDOW *win, bool bf)
-{
-    PDC_LOG(("keypad() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    win->_use_keypad = bf;
-
-    return OK;
-}
-
-int meta(WINDOW *win, bool bf)
-{
-    PDC_LOG(("meta() - called\n"));
-
-    SP->raw_inp = bf;
-
-    return OK;
-}
-
-int nl(void)
-{
-    PDC_LOG(("nl() - called\n"));
-
-    SP->autocr = TRUE;
-
-    return OK;
-}
-
-int nonl(void)
-{
-    PDC_LOG(("nonl() - called\n"));
-
-    SP->autocr = FALSE;
-
-    return OK;
-}
-
-int nodelay(WINDOW *win, bool flag)
-{
-    PDC_LOG(("nodelay() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    win->_nodelay = flag;
-
-    return OK;
-}
-
-int notimeout(WINDOW *win, bool flag)
-{
-    PDC_LOG(("notimeout() - called\n"));
-
-    return OK;
-}
-
-int raw(void)
-{
-    PDC_LOG(("raw() - called\n"));
-
-    PDC_set_keyboard_binary(TRUE);
-    SP->raw_inp = TRUE;
-
-    return OK;
-}
-
-int noraw(void)
-{
-    PDC_LOG(("noraw() - called\n"));
-
-    PDC_set_keyboard_binary(FALSE);
-    SP->raw_inp = FALSE;
-
-    return OK;
-}
-
-void noqiflush(void)
-{
-    PDC_LOG(("noqiflush() - called\n"));
-}
-
-void qiflush(void)
-{
-    PDC_LOG(("qiflush() - called\n"));
-}
-
-int typeahead(int fildes)
-{
-    PDC_LOG(("typeahead() - called\n"));
-
-    return OK;
-}
-
-void wtimeout(WINDOW *win, int delay)
-{
-    PDC_LOG(("wtimeout() - called\n"));
-
-    if (!win)
-        return;
-
-    if (delay < 0)
-    {
-        /* This causes a blocking read on the window, so turn on delay 
-           mode */
-
-        win->_nodelay = FALSE;
-        win->_delayms = 0;
-    }
-    else if (!delay)
-    {
-        /* This causes a non-blocking read on the window, so turn off 
-           delay mode */
-
-        win->_nodelay = TRUE;
-        win->_delayms = 0;
-    }
-    else
-    {
-        /* This causes the read on the window to delay for the number of 
-           milliseconds. Also forces the window into non-blocking read 
-           mode */
-
-        /*win->_nodelay = TRUE;*/
-        win->_delayms = delay;
-    }
-}
-
-void timeout(int delay)
-{
-    PDC_LOG(("timeout() - called\n"));
-
-    wtimeout(stdscr, delay);
-}
-
-int crmode(void)
-{
-    PDC_LOG(("crmode() - called\n"));
-
-    return cbreak();
-}
-
-int nocrmode(void)
-{
-    PDC_LOG(("nocrmode() - called\n"));
-
-    return nocbreak();
-}
diff --git a/src/other/PDCurses/pdcurses/insch.c b/src/other/PDCurses/pdcurses/insch.c
deleted file mode 100644
index 50527f2..0000000
--- a/src/other/PDCurses/pdcurses/insch.c
+++ /dev/null
@@ -1,268 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: insch.c,v 1.44 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         insch
-
-  Synopsis:
-        int insch(chtype ch);
-        int winsch(WINDOW *win, chtype ch);
-        int mvinsch(int y, int x, chtype ch);
-        int mvwinsch(WINDOW *win, int y, int x, chtype ch);
-
-        int insrawch(chtype ch);
-        int winsrawch(WINDOW *win, chtype ch);
-        int mvinsrawch(int y, int x, chtype ch);
-        int mvwinsrawch(WINDOW *win, int y, int x, chtype ch);
-
-        int ins_wch(const cchar_t *wch);
-        int wins_wch(WINDOW *win, const cchar_t *wch);
-        int mvins_wch(int y, int x, const cchar_t *wch);
-        int mvwins_wch(WINDOW *win, int y, int x, const cchar_t *wch);
-
-  Description:
-        The insch() functions insert a chtype into the window at the 
-        current or specified cursor position. The cursor is NOT 
-        advanced. A newline is equivalent to clrtoeol(); tabs are 
-        expanded; other control characters are converted as with 
-        unctrl().
-
-        The ins_wch() functions are the wide-character
-        equivalents, taking cchar_t pointers rather than chtypes.
-
-        Video attributes can be combined with a character by ORing
-        them into the parameter. Text, including attributes, can be 
-        copied from one place to another using inch() and insch().
-
-        insrawch() etc. are PDCurses-specific wrappers for insch() etc. 
-        that disable the translation of control characters.
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        insch                                   Y       Y       Y
-        winsch                                  Y       Y       Y
-        mvinsch                                 Y       Y       Y
-        mvwinsch                                Y       Y       Y
-        insrawch                                -       -       -
-        winsrawch                               -       -       -
-        ins_wch                                 Y
-        wins_wch                                Y
-        mvins_wch                               Y
-        mvwins_wch                              Y
-
-**man-end****************************************************************/
-
-#include <string.h>
-
-int winsch(WINDOW *win, chtype ch)
-{
-    int x, y;
-    chtype attr;
-    bool xlat;
-
-    PDC_LOG(("winsch() - called: win=%p ch=%x (text=%c attr=0x%x)\n",
-             win, ch, ch & A_CHARTEXT, ch & A_ATTRIBUTES));
-
-    if (!win)
-        return ERR;
-
-    x = win->_curx;
-    y = win->_cury;
-
-    if (y > win->_maxy || x > win->_maxx || y < 0 || x < 0)
-        return ERR;
-
-    xlat = !SP->raw_out && !(ch & A_ALTCHARSET);
-    attr = ch & A_ATTRIBUTES;
-    ch &= A_CHARTEXT;
-
-    if (xlat && (ch < ' ' || ch == 0x7f))
-    {
-        int x2;
-
-        switch (ch)
-        {
-        case '\t':
-            for (x2 = ((x / TABSIZE) + 1) * TABSIZE; x < x2; x++)
-            {
-                if (winsch(win, attr | ' ') == ERR)
-                    return ERR;
-            }
-            return OK;
-
-        case '\n':
-            wclrtoeol(win);
-            break;
-
-        case 0x7f:
-            if (winsch(win, attr | '?') == ERR)
-                return ERR;
-
-            return winsch(win, attr | '^');
-
-        default:
-            /* handle control chars */
-
-            if (winsch(win, attr | (ch + '@')) == ERR)
-                return ERR;
-
-            return winsch(win, attr | '^');
-        }
-    }
-    else
-    {
-        int maxx;
-        chtype *temp;
-
-        /* If the incoming character doesn't have its own attribute,
-           then use the current attributes for the window. If it has
-           attributes but not a color component, OR the attributes to
-           the current attributes for the window. If it has a color
-           component, use the attributes solely from the incoming
-           character. */
-
-        if (!(attr & A_COLOR))
-            attr |= win->_attrs;
-
-        /* wrs (4/10/93): Apply the same sort of logic for the window
-           background, in that it only takes precedence if other color
-           attributes are not there and that the background character
-           will only print if the printing character is blank. */
-
-        if (!(attr & A_COLOR))
-            attr |= win->_bkgd & A_ATTRIBUTES;
-        else
-            attr |= win->_bkgd & (A_ATTRIBUTES ^ A_COLOR);
-
-        if (ch == ' ')
-            ch = win->_bkgd & A_CHARTEXT;
-
-        /* Add the attribute back into the character. */
-
-        ch |= attr;
-
-        maxx = win->_maxx;
-        temp = &win->_y[y][x];
-
-        memmove(temp + 1, temp, (maxx - x - 1) * sizeof(chtype));
-
-        win->_lastch[y] = maxx - 1;
-
-        if ((win->_firstch[y] == _NO_CHANGE) || (win->_firstch[y] > x))
-            win->_firstch[y] = x;
-
-        *temp = ch;
-    }
-
-    PDC_sync(win);
-
-    return OK;
-}
-
-int insch(chtype ch)
-{
-    PDC_LOG(("insch() - called\n"));
-
-    return winsch(stdscr, ch);
-}
-
-int mvinsch(int y, int x, chtype ch)
-{
-    PDC_LOG(("mvinsch() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return winsch(stdscr, ch);
-}
-
-int mvwinsch(WINDOW *win, int y, int x, chtype ch)
-{
-    PDC_LOG(("mvwinsch() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return winsch(win, ch);
-}
-
-int winsrawch(WINDOW *win, chtype ch)
-{
-    PDC_LOG(("winsrawch() - called: win=%p ch=%x "
-             "(char=%c attr=0x%x)\n", win, ch,
-             ch & A_CHARTEXT, ch & A_ATTRIBUTES));
-
-    if ((ch & A_CHARTEXT) < ' ' || (ch & A_CHARTEXT) == 0x7f)
-        ch |= A_ALTCHARSET;
-
-    return winsch(win, ch);
-}
-
-int insrawch(chtype ch)
-{
-    PDC_LOG(("insrawch() - called\n"));
-
-    return winsrawch(stdscr, ch);
-}
-
-int mvinsrawch(int y, int x, chtype ch)
-{
-    PDC_LOG(("mvinsrawch() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return winsrawch(stdscr, ch);
-}
-
-int mvwinsrawch(WINDOW *win, int y, int x, chtype ch)
-{
-    PDC_LOG(("mvwinsrawch() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return winsrawch(win, ch);
-}
-
-#ifdef PDC_WIDE
-int wins_wch(WINDOW *win, const cchar_t *wch)
-{
-    PDC_LOG(("wins_wch() - called\n"));
-
-    return wch ? winsch(win, *wch) : ERR;
-}
-
-int ins_wch(const cchar_t *wch)
-{
-    PDC_LOG(("ins_wch() - called\n"));
-
-    return wins_wch(stdscr, wch);
-}
-
-int mvins_wch(int y, int x, const cchar_t *wch)
-{
-    PDC_LOG(("mvins_wch() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wins_wch(stdscr, wch);
-}
-
-int mvwins_wch(WINDOW *win, int y, int x, const cchar_t *wch)
-{
-    PDC_LOG(("mvwins_wch() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wins_wch(win, wch);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/insstr.c b/src/other/PDCurses/pdcurses/insstr.c
deleted file mode 100644
index 38fa389..0000000
--- a/src/other/PDCurses/pdcurses/insstr.c
+++ /dev/null
@@ -1,261 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: insstr.c,v 1.46 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         insstr
-
-  Synopsis:
-        int insstr(const char *str);
-        int insnstr(const char *str, int n);
-        int winsstr(WINDOW *win, const char *str);
-        int winsnstr(WINDOW *win, const char *str, int n);
-        int mvinsstr(int y, int x, const char *str);
-        int mvinsnstr(int y, int x, const char *str, int n);
-        int mvwinsstr(WINDOW *win, int y, int x, const char *str);
-        int mvwinsnstr(WINDOW *win, int y, int x, const char *str, int n);
-
-        int ins_wstr(const wchar_t *wstr);
-        int ins_nwstr(const wchar_t *wstr, int n);
-        int wins_wstr(WINDOW *win, const wchar_t *wstr);
-        int wins_nwstr(WINDOW *win, const wchar_t *wstr, int n);
-        int mvins_wstr(int y, int x, const wchar_t *wstr);
-        int mvins_nwstr(int y, int x, const wchar_t *wstr, int n);
-        int mvwins_wstr(WINDOW *win, int y, int x, const wchar_t *wstr);
-        int mvwins_nwstr(WINDOW *win, int y, int x, const wchar_t *wstr, int n);
-
-  Description:
-        The insstr() functions insert a character string into a window
-        at the current cursor position, by repeatedly calling winsch().
-        When PDCurses is built with wide-character support enabled, the
-        narrow-character functions treat the string as a multibyte
-        string in the current locale, and convert it first. All 
-        characters to the right of the cursor are moved to the right, 
-        with the possibility of the rightmost characters on the line 
-        being lost.  The cursor position does not change (after moving 
-        to y, x, if specified).  The routines with n as the last 
-        argument insert at most n characters; if n is negative, then the 
-        entire string is inserted.
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        insstr                                  Y       -      4.0
-        winsstr                                 Y       -      4.0
-        mvinsstr                                Y       -      4.0
-        mvwinsstr                               Y       -      4.0
-        insnstr                                 Y       -      4.0
-        winsnstr                                Y       -      4.0
-        mvinsnstr                               Y       -      4.0
-        mvwinsnstr                              Y       -      4.0
-        ins_wstr                                Y
-        wins_wstr                               Y
-        mvins_wstr                              Y
-        mvwins_wstr                             Y
-        ins_nwstr                               Y
-        wins_nwstr                              Y
-        mvins_nwstr                             Y
-        mvwins_nwstr                            Y
-
-**man-end****************************************************************/
-
-#include <string.h>
-
-int winsnstr(WINDOW *win, const char *str, int n)
-{
-#ifdef PDC_WIDE
-    wchar_t wstr[513], *p;
-    int i;
-#endif
-    int len;
-
-    PDC_LOG(("winsnstr() - called: string=\"%s\" n %d \n", str, n));
-
-    if (!win || !str)
-        return ERR;
-
-    len = strlen(str);
-
-    if (n < 0 || n < len)
-        n = len;
-
-#ifdef PDC_WIDE
-    if (n > 512)
-        n = 512;
-
-    p = wstr;
-    i = 0;
-
-    while (str[i] && i < n)
-    {
-        int retval = PDC_mbtowc(p, str + i, n - i);
-
-        if (retval <= 0)
-            break;
-        p++;
-        i += retval;
-    }
-
-    while (p > wstr)
-        if (winsch(win, *--p) == ERR)
-#else
-    while (n)
-        if (winsch(win, (unsigned char)(str[--n])) == ERR)
-#endif
-            return ERR;
-
-    return OK;
-}
-
-int insstr(const char *str)
-{
-    PDC_LOG(("insstr() - called: string=\"%s\"\n", str));
-
-    return winsnstr(stdscr, str, -1);
-}
-
-int winsstr(WINDOW *win, const char *str)
-{
-    PDC_LOG(("winsstr() - called: string=\"%s\"\n", str));
-
-    return winsnstr(win, str, -1);
-}
-
-int mvinsstr(int y, int x, const char *str)
-{
-    PDC_LOG(("mvinsstr() - called: y %d x %d string=\"%s\"\n", y, x, str));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return winsnstr(stdscr, str, -1);
-}
-
-int mvwinsstr(WINDOW *win, int y, int x, const char *str)
-{
-    PDC_LOG(("mvwinsstr() - called: string=\"%s\"\n", str));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return winsnstr(win, str, -1);
-}
-
-int insnstr(const char *str, int n)
-{
-    PDC_LOG(("insnstr() - called: string=\"%s\" n %d \n", str, n));
-
-    return winsnstr(stdscr, str, n);
-}
-
-int mvinsnstr(int y, int x, const char *str, int n)
-{
-    PDC_LOG(("mvinsnstr() - called: y %d x %d string=\"%s\" n %d \n",
-             y, x, str, n));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return winsnstr(stdscr, str, n);
-}
-
-int mvwinsnstr(WINDOW *win, int y, int x, const char *str, int n)
-{
-    PDC_LOG(("mvwinsnstr() - called: y %d x %d string=\"%s\" n %d \n",
-             y, x, str, n));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return winsnstr(win, str, n);
-}
-
-#ifdef PDC_WIDE
-int wins_nwstr(WINDOW *win, const wchar_t *wstr, int n)
-{
-    const wchar_t *p;
-    int len;
-
-    PDC_LOG(("wins_nwstr() - called\n"));
-
-    if (!win || !wstr)
-        return ERR;
-
-    for (len = 0, p = wstr; *p; p++)
-        len++;
-
-    if (n < 0 || n < len)
-        n = len;
-
-    while (n)
-        if (winsch(win, wstr[--n]) == ERR)
-            return ERR;
-
-    return OK;
-}
-
-int ins_wstr(const wchar_t *wstr)
-{
-    PDC_LOG(("ins_wstr() - called\n"));
-
-    return wins_nwstr(stdscr, wstr, -1);
-}
-
-int wins_wstr(WINDOW *win, const wchar_t *wstr)
-{
-    PDC_LOG(("wins_wstr() - called\n"));
-
-    return wins_nwstr(win, wstr, -1);
-}
-
-int mvins_wstr(int y, int x, const wchar_t *wstr)
-{
-    PDC_LOG(("mvins_wstr() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wins_nwstr(stdscr, wstr, -1);
-}
-
-int mvwins_wstr(WINDOW *win, int y, int x, const wchar_t *wstr)
-{
-    PDC_LOG(("mvwinsstr() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wins_nwstr(win, wstr, -1);
-}
-
-int ins_nwstr(const wchar_t *wstr, int n)
-{
-    PDC_LOG(("ins_nwstr() - called\n"));
-
-    return wins_nwstr(stdscr, wstr, n);
-}
-
-int mvins_nwstr(int y, int x, const wchar_t *wstr, int n)
-{
-    PDC_LOG(("mvinsnstr() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return wins_nwstr(stdscr, wstr, n);
-}
-
-int mvwins_nwstr(WINDOW *win, int y, int x, const wchar_t *wstr, int n)
-{
-    PDC_LOG(("mvwinsnstr() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return wins_nwstr(win, wstr, n);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/instr.c b/src/other/PDCurses/pdcurses/instr.c
deleted file mode 100644
index bbf369c..0000000
--- a/src/other/PDCurses/pdcurses/instr.c
+++ /dev/null
@@ -1,243 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: instr.c,v 1.44 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         instr
-
-  Synopsis:
-        int instr(char *str);
-        int innstr(char *str, int n);
-        int winstr(WINDOW *win, char *str);
-        int winnstr(WINDOW *win, char *str, int n);
-        int mvinstr(int y, int x, char *str);
-        int mvinnstr(int y, int x, char *str, int n);
-        int mvwinstr(WINDOW *win, int y, int x, char *str);
-        int mvwinnstr(WINDOW *win, int y, int x, char *str, int n);
-
-        int inwstr(wchar_t *wstr);
-        int innwstr(wchar_t *wstr, int n);
-        int winwstr(WINDOW *win, wchar_t *wstr);
-        int winnwstr(WINDOW *win, wchar_t *wstr, int n);
-        int mvinwstr(int y, int x, wchar_t *wstr);
-        int mvinnwstr(int y, int x, wchar_t *wstr, int n);
-        int mvwinwstr(WINDOW *win, int y, int x, wchar_t *wstr);
-        int mvwinnwstr(WINDOW *win, int y, int x, wchar_t *wstr, int n);
-
-  Description:
-        These functions take characters (or wide characters) from the 
-        current or specified position in the window, and return them as 
-        a string in str (or wstr). Attributes are ignored. The functions 
-        with n as the last argument return a string at most n characters 
-        long.
-
-  Return Value:
-        Upon successful completion, innstr(), mvinnstr(), mvwinnstr() 
-        and winnstr() return the number of characters actually read into
-        the string; instr(), mvinstr(), mvwinstr() and winstr() return 
-        OK. Otherwise, all these functions return ERR.
-
-  Portability                                X/Open    BSD    SYS V
-        instr                                   Y       -      4.0
-        winstr                                  Y       -      4.0
-        mvinstr                                 Y       -      4.0
-        mvwinstr                                Y       -      4.0
-        innstr                                  Y       -      4.0
-        winnstr                                 Y       -      4.0
-        mvinnstr                                Y       -      4.0
-        mvwinnstr                               Y       -      4.0
-        inwstr                                  Y
-        winwstr                                 Y
-        mvinwstr                                Y
-        mvwinwstr                               Y
-        innwstr                                 Y
-        winnwstr                                Y
-        mvinnwstr                               Y
-        mvwinnwstr                              Y
-
-**man-end****************************************************************/
-
-int winnstr(WINDOW *win, char *str, int n)
-{
-#ifdef PDC_WIDE
-    wchar_t wstr[513];
-
-    if (n < 0 || n > 512)
-        n = 512;
-
-    if (winnwstr(win, wstr, n) == ERR)
-        return ERR;
-
-    return PDC_wcstombs(str, wstr, n);
-#else
-    chtype *src;
-    int i;
-
-    PDC_LOG(("winnstr() - called: n %d \n", n));
-
-    if (!win || !str)
-        return ERR;
-
-    if (n < 0 || (win->_curx + n) > win->_maxx)
-        n = win->_maxx - win->_curx;
-
-    src = win->_y[win->_cury] + win->_curx;
-
-    for (i = 0; i < n; i++)
-        str[i] = src[i] & A_CHARTEXT;
-
-    str[i] = '\0';
-
-    return i;
-#endif
-}
-
-int instr(char *str)
-{
-    PDC_LOG(("instr() - called: string=\"%s\"\n", str));
-
-    return (ERR == winnstr(stdscr, str, stdscr->_maxx)) ? ERR : OK;
-}
-
-int winstr(WINDOW *win, char *str)
-{
-    PDC_LOG(("winstr() - called: \n"));
-
-    return (ERR == winnstr(win, str, win->_maxx)) ? ERR : OK;
-}
-
-int mvinstr(int y, int x, char *str)
-{
-    PDC_LOG(("mvinstr() - called: y %d x %d \n", y, x));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return (ERR == winnstr(stdscr, str, stdscr->_maxx)) ? ERR : OK;
-}
-
-int mvwinstr(WINDOW *win, int y, int x, char *str)
-{
-    PDC_LOG(("mvwinstr() - called: y %d x %d \n", y, x));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return (ERR == winnstr(win, str, win->_maxx)) ? ERR : OK;
-}
-
-int innstr(char *str, int n)
-{
-    PDC_LOG(("innstr() - called: n %d \n", n));
-
-    return winnstr(stdscr, str, n);
-}
-
-int mvinnstr(int y, int x, char *str, int n)
-{
-    PDC_LOG(("mvinnstr() - called: y %d x %d n %d \n", y, x, n));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return winnstr(stdscr, str, n);
-}
-
-int mvwinnstr(WINDOW *win, int y, int x, char *str, int n)
-{
-    PDC_LOG(("mvwinnstr() - called: y %d x %d n %d \n", y, x, n));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return winnstr(win, str, n);
-}
-
-#ifdef PDC_WIDE
-int winnwstr(WINDOW *win, wchar_t *wstr, int n)
-{
-    chtype *src;
-    int i;
-
-    PDC_LOG(("winnstr() - called: n %d \n", n));
-
-    if (!win || !wstr)
-        return ERR;
-
-    if (n < 0 || (win->_curx + n) > win->_maxx)
-        n = win->_maxx - win->_curx;
-
-    src = win->_y[win->_cury] + win->_curx;
-
-    for (i = 0; i < n; i++)
-        wstr[i] = src[i] & A_CHARTEXT;
-
-    wstr[i] = L'\0';
-
-    return i;
-}
-
-int inwstr(wchar_t *wstr)
-{
-    PDC_LOG(("inwstr() - called\n"));
-
-    return (ERR == winnwstr(stdscr, wstr, stdscr->_maxx)) ? ERR : OK;
-}
-
-int winwstr(WINDOW *win, wchar_t *wstr)
-{
-    PDC_LOG(("winwstr() - called\n"));
-
-    return (ERR == winnwstr(win, wstr, win->_maxx)) ? ERR : OK;
-}
-
-int mvinwstr(int y, int x, wchar_t *wstr)
-{
-    PDC_LOG(("mvinwstr() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return (ERR == winnwstr(stdscr, wstr, stdscr->_maxx)) ? ERR : OK;
-}
-
-int mvwinwstr(WINDOW *win, int y, int x, wchar_t *wstr)
-{
-    PDC_LOG(("mvwinstr() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return (ERR == winnwstr(win, wstr, win->_maxx)) ? ERR : OK;
-}
-
-int innwstr(wchar_t *wstr, int n)
-{
-    PDC_LOG(("innwstr() - called\n"));
-
-    return winnwstr(stdscr, wstr, n);
-}
-
-int mvinnwstr(int y, int x, wchar_t *wstr, int n)
-{
-    PDC_LOG(("mvinnstr() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    return winnwstr(stdscr, wstr, n);
-}
-
-int mvwinnwstr(WINDOW *win, int y, int x, wchar_t *wstr, int n)
-{
-    PDC_LOG(("mvwinnwstr() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    return winnwstr(win, wstr, n);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/kernel.c b/src/other/PDCurses/pdcurses/kernel.c
deleted file mode 100644
index 7e41ccf..0000000
--- a/src/other/PDCurses/pdcurses/kernel.c
+++ /dev/null
@@ -1,256 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: kernel.c,v 1.78 2008/07/15 17:13:26 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         kernel
-
-  Synopsis:
-        int def_prog_mode(void);
-        int def_shell_mode(void);
-        int reset_prog_mode(void);
-        int reset_shell_mode(void);
-        int resetty(void);
-        int savetty(void);
-        int ripoffline(int line, int (*init)(WINDOW *, int));
-        int curs_set(int visibility);
-        int napms(int ms);
-
-        int draino(int ms);
-        int resetterm(void);
-        int fixterm(void);
-        int saveterm(void);
-
-  Description:
-        def_prog_mode() and def_shell_mode() save the current terminal
-        modes as the "program" (in curses) or "shell" (not in curses)
-        state for use by the reset_prog_mode() and reset_shell_mode()
-        functions.  This is done automatically by initscr().
-
-        reset_prog_mode() and reset_shell_mode() restore the terminal to
-        "program" (in curses) or "shell" (not in curses) state.  These
-        are done automatically by endwin() and doupdate() after an
-        endwin(), so they would normally not be called before these
-        functions.
-
-        savetty() and resetty() save and restore the state of the
-        terminal modes. savetty() saves the current state in a buffer,
-        and resetty() restores the state to what it was at the last call
-        to savetty().
-
-        curs_set() alters the appearance of the cursor. A visibility of
-        0 makes it disappear; 1 makes it appear "normal" (usually an
-        underline) and 2 makes it "highly visible" (usually a block).
-
-        ripoffline() reduces the size of stdscr by one line.  If the 
-        "line" parameter is positive, the line is removed from the top 
-        of the screen; if negative, from the bottom. Up to 5 lines can 
-        be ripped off stdscr by calling ripoffline() repeatedly. The 
-        function argument, init, is called from within initscr() or 
-        newterm(), so ripoffline() must be called before either of these 
-        functions.  The init function receives a pointer to a one-line 
-        WINDOW, and the width of the window. Calling ripoffline() with a 
-        NULL init function pointer is an error.
-
-        napms() suspends the program for the specified number of 
-        milliseconds. draino() is an archaic equivalent.
-
-        resetterm(), fixterm() and saveterm() are archaic equivalents
-        for reset_shell_mode(), reset_prog_mode() and def_prog_mode(),
-        respectively.
-
-  Return Value:
-        All functions return OK on success and ERR on error, except
-        curs_set(), which returns the previous visibility.
-
-  Portability                                X/Open    BSD    SYS V
-        def_prog_mode                           Y       Y       Y
-        def_shell_mode                          Y       Y       Y
-        reset_prog_mode                         Y       Y       Y
-        reset_shell_mode                        Y       Y       Y
-        resetty                                 Y       Y       Y
-        savetty                                 Y       Y       Y
-        ripoffline                              Y       -      3.0
-        curs_set                                Y       -      3.0
-        napms                                   Y       Y       Y
-        draino                                  -
-        resetterm                               -
-        fixterm                                 -
-        saveterm                                -
-
-**man-end****************************************************************/
-
-#include <string.h>
-
-RIPPEDOFFLINE linesripped[5];
-char linesrippedoff = 0;
-
-static struct cttyset
-{
-    bool been_set;
-    SCREEN saved;
-} ctty[3];
-
-enum { PDC_SH_TTY, PDC_PR_TTY, PDC_SAVE_TTY };
-
-static void _save_mode(int i)
-{
-    ctty[i].been_set = TRUE;
-
-    memcpy(&(ctty[i].saved), SP, sizeof(SCREEN));
-
-    PDC_save_screen_mode(i);
-}
-
-static int _restore_mode(int i)
-{
-    if (ctty[i].been_set == TRUE)
-    {
-        memcpy(SP, &(ctty[i].saved), sizeof(SCREEN));
-
-        if (ctty[i].saved.raw_out)
-            raw();
-
-        PDC_restore_screen_mode(i);
-
-        if ((LINES != ctty[i].saved.lines) ||
-            (COLS != ctty[i].saved.cols))
-            resize_term(ctty[i].saved.lines, ctty[i].saved.cols);
-
-        PDC_curs_set(ctty[i].saved.visibility);
-
-        PDC_gotoyx(ctty[i].saved.cursrow, ctty[i].saved.curscol);
-    }
-
-    return ctty[i].been_set ? OK : ERR;
-}
-
-int def_prog_mode(void)
-{
-    PDC_LOG(("def_prog_mode() - called\n"));
-
-    _save_mode(PDC_PR_TTY);
-
-    return OK;
-}
-
-int def_shell_mode(void)
-{
-    PDC_LOG(("def_shell_mode() - called\n"));
-
-    _save_mode(PDC_SH_TTY);
-
-    return OK;
-}
-
-int reset_prog_mode(void)
-{
-    PDC_LOG(("reset_prog_mode() - called\n"));
-
-    _restore_mode(PDC_PR_TTY);
-    PDC_reset_prog_mode();
-
-    return OK;
-}
-
-int reset_shell_mode(void)
-{
-    PDC_LOG(("reset_shell_mode() - called\n"));
-
-    _restore_mode(PDC_SH_TTY);
-    PDC_reset_shell_mode();
-
-    return OK;
-}
-
-int resetty(void)
-{
-    PDC_LOG(("resetty() - called\n"));
-
-    return _restore_mode(PDC_SAVE_TTY);
-}
-
-int savetty(void)
-{
-    PDC_LOG(("savetty() - called\n"));
-
-    _save_mode(PDC_SAVE_TTY);
-
-    return OK;
-}
-
-int curs_set(int visibility)
-{
-    int ret_vis;
-
-    PDC_LOG(("curs_set() - called: visibility=%d\n", visibility));
-
-    if ((visibility < 0) || (visibility > 2))
-        return ERR;
-
-    ret_vis = PDC_curs_set(visibility);
-
-    /* If the cursor is changing from invisible to visible, update 
-       its position */
-
-    if (visibility && !ret_vis)
-        PDC_gotoyx(SP->cursrow, SP->curscol);
-
-    return ret_vis;
-}
-
-int napms(int ms)
-{
-    PDC_LOG(("napms() - called: ms=%d\n", ms));
-
-    if (ms)
-        PDC_napms(ms);
-
-    return OK;
-}
-
-int ripoffline(int line, int (*init)(WINDOW *, int))
-{
-    PDC_LOG(("ripoffline() - called: line=%d\n", line));
-
-    if (linesrippedoff < 5 && line && init)
-    {
-        linesripped[(int)linesrippedoff].line = line;
-        linesripped[(int)linesrippedoff++].init = init;
-
-        return OK;
-    }
-
-    return ERR;
-}
-
-int draino(int ms)
-{
-    PDC_LOG(("draino() - called\n"));
-
-    return napms(ms);
-}
-
-int resetterm(void)
-{
-    PDC_LOG(("resetterm() - called\n"));
-
-    return reset_shell_mode();
-}
-
-int fixterm(void)
-{
-    PDC_LOG(("fixterm() - called\n"));
-
-    return reset_prog_mode();
-}
-
-int saveterm(void)
-{
-    PDC_LOG(("saveterm() - called\n"));
-
-    return def_prog_mode();
-}
diff --git a/src/other/PDCurses/pdcurses/keyname.c b/src/other/PDCurses/pdcurses/keyname.c
deleted file mode 100644
index 6d02cef..0000000
--- a/src/other/PDCurses/pdcurses/keyname.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: keyname.c,v 1.8 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         keyname
-
-  Synopsis:
-        char *keyname(int key);
-
-        char *key_name(wchar_t c);
-
-        bool has_key(int key);
-
-  Description:
-        keyname() returns a string corresponding to the argument key. 
-        key may be any key returned by wgetch().
-
-        key_name() is the wide-character version. It takes a wchar_t 
-        parameter, but still returns a char *.
-
-        has_key() returns TRUE for recognized keys, FALSE otherwise. 
-        This function is an ncurses extension.
-
-  Portability                                X/Open    BSD    SYS V
-        keyname                                 Y       -      3.0
-        key_name                                Y
-        has_key                                 -       -       -
-
-**man-end****************************************************************/
-
-char *keyname(int key)
-{
-    /* Key names must be in exactly the same order as in curses.h */
-
-    static char *key_name[] =
-    {
-        "KEY_BREAK", "KEY_DOWN", "KEY_UP", "KEY_LEFT", "KEY_RIGHT",
-        "KEY_HOME", "KEY_BACKSPACE", "KEY_F0", "KEY_F(1)", "KEY_F(2)",
-        "KEY_F(3)", "KEY_F(4)", "KEY_F(5)", "KEY_F(6)", "KEY_F(7)",
-        "KEY_F(8)", "KEY_F(9)", "KEY_F(10)", "KEY_F(11)", "KEY_F(12)",
-        "KEY_F(13)", "KEY_F(14)", "KEY_F(15)", "KEY_F(16)", "KEY_F(17)",
-        "KEY_F(18)", "KEY_F(19)", "KEY_F(20)", "KEY_F(21)", "KEY_F(22)",
-        "KEY_F(23)", "KEY_F(24)", "KEY_F(25)", "KEY_F(26)", "KEY_F(27)",
-        "KEY_F(28)", "KEY_F(29)", "KEY_F(30)", "KEY_F(31)", "KEY_F(32)",
-        "KEY_F(33)", "KEY_F(34)", "KEY_F(35)", "KEY_F(36)", "KEY_F(37)",
-        "KEY_F(38)", "KEY_F(39)", "KEY_F(40)", "KEY_F(41)", "KEY_F(42)",
-        "KEY_F(43)", "KEY_F(44)", "KEY_F(45)", "KEY_F(46)", "KEY_F(47)",
-        "KEY_F(48)", "KEY_F(49)", "KEY_F(50)", "KEY_F(51)", "KEY_F(52)",
-        "KEY_F(53)", "KEY_F(54)", "KEY_F(55)", "KEY_F(56)", "KEY_F(57)",
-        "KEY_F(58)", "KEY_F(59)", "KEY_F(60)", "KEY_F(61)", "KEY_F(62)",
-        "KEY_F(63)", "KEY_DL", "KEY_IL", "KEY_DC", "KEY_IC", "KEY_EIC",
-        "KEY_CLEAR", "KEY_EOS", "KEY_EOL", "KEY_SF", "KEY_SR",
-        "KEY_NPAGE", "KEY_PPAGE", "KEY_STAB", "KEY_CTAB", "KEY_CATAB",
-        "KEY_ENTER", "KEY_SRESET", "KEY_RESET", "KEY_PRINT", "KEY_LL",
-        "KEY_ABORT", "KEY_SHELP", "KEY_LHELP", "KEY_BTAB", "KEY_BEG",
-        "KEY_CANCEL", "KEY_CLOSE", "KEY_COMMAND", "KEY_COPY",
-        "KEY_CREATE", "KEY_END", "KEY_EXIT", "KEY_FIND", "KEY_HELP",
-        "KEY_MARK", "KEY_MESSAGE", "KEY_MOVE", "KEY_NEXT", "KEY_OPEN",
-        "KEY_OPTIONS", "KEY_PREVIOUS", "KEY_REDO", "KEY_REFERENCE",
-        "KEY_REFRESH", "KEY_REPLACE", "KEY_RESTART", "KEY_RESUME",
-        "KEY_SAVE", "KEY_SBEG", "KEY_SCANCEL", "KEY_SCOMMAND",
-        "KEY_SCOPY", "KEY_SCREATE", "KEY_SDC", "KEY_SDL", "KEY_SELECT",
-        "KEY_SEND", "KEY_SEOL", "KEY_SEXIT", "KEY_SFIND", "KEY_SHOME",
-        "KEY_SIC", "UNKNOWN KEY", "KEY_SLEFT", "KEY_SMESSAGE",
-        "KEY_SMOVE", "KEY_SNEXT", "KEY_SOPTIONS", "KEY_SPREVIOUS",
-        "KEY_SPRINT", "KEY_SREDO", "KEY_SREPLACE", "KEY_SRIGHT",
-        "KEY_SRSUME", "KEY_SSAVE", "KEY_SSUSPEND", "KEY_SUNDO",
-        "KEY_SUSPEND", "KEY_UNDO", "ALT_0", "ALT_1", "ALT_2", "ALT_3",
-        "ALT_4", "ALT_5", "ALT_6", "ALT_7", "ALT_8", "ALT_9", "ALT_A",
-        "ALT_B", "ALT_C", "ALT_D", "ALT_E", "ALT_F", "ALT_G", "ALT_H",
-        "ALT_I", "ALT_J", "ALT_K", "ALT_L", "ALT_M", "ALT_N", "ALT_O",
-        "ALT_P", "ALT_Q", "ALT_R", "ALT_S", "ALT_T", "ALT_U", "ALT_V",
-        "ALT_W", "ALT_X", "ALT_Y", "ALT_Z", "CTL_LEFT", "CTL_RIGHT",
-        "CTL_PGUP", "CTL_PGDN", "CTL_HOME", "CTL_END", "KEY_A1",
-        "KEY_A2", "KEY_A3", "KEY_B1", "KEY_B2", "KEY_B3", "KEY_C1",
-        "KEY_C2", "KEY_C3", "PADSLASH", "PADENTER", "CTL_PADENTER",
-        "ALT_PADENTER", "PADSTOP", "PADSTAR", "PADMINUS", "PADPLUS",
-        "CTL_PADSTOP", "CTL_PADCENTER", "CTL_PADPLUS", "CTL_PADMINUS",
-        "CTL_PADSLASH", "CTL_PADSTAR", "ALT_PADPLUS", "ALT_PADMINUS",
-        "ALT_PADSLASH", "ALT_PADSTAR", "ALT_PADSTOP", "CTL_INS",
-        "ALT_DEL", "ALT_INS", "CTL_UP", "CTL_DOWN", "CTL_TAB",
-        "ALT_TAB", "ALT_MINUS", "ALT_EQUAL", "ALT_HOME", "ALT_PGUP",
-        "ALT_PGDN", "ALT_END", "ALT_UP", "ALT_DOWN", "ALT_RIGHT",
-        "ALT_LEFT", "ALT_ENTER", "ALT_ESC", "ALT_BQUOTE",
-        "ALT_LBRACKET", "ALT_RBRACKET", "ALT_SEMICOLON", "ALT_FQUOTE",
-        "ALT_COMMA", "ALT_STOP", "ALT_FSLASH", "ALT_BKSP", "CTL_BKSP",
-        "PAD0", "CTL_PAD0", "CTL_PAD1", "CTL_PAD2", "CTL_PAD3",
-        "CTL_PAD4", "CTL_PAD5", "CTL_PAD6", "CTL_PAD7","CTL_PAD8",
-        "CTL_PAD9", "ALT_PAD0", "ALT_PAD1", "ALT_PAD2", "ALT_PAD3",
-        "ALT_PAD4", "ALT_PAD5", "ALT_PAD6", "ALT_PAD7", "ALT_PAD8",
-        "ALT_PAD9", "CTL_DEL", "ALT_BSLASH", "CTL_ENTER",
-        "SHF_PADENTER", "SHF_PADSLASH", "SHF_PADSTAR", "SHF_PADPLUS",
-        "SHF_PADMINUS", "SHF_UP", "SHF_DOWN", "SHF_IC", "SHF_DC",
-        "KEY_MOUSE", "KEY_SHIFT_L", "KEY_SHIFT_R", "KEY_CONTROL_L",
-        "KEY_CONTROL_R", "KEY_ALT_L", "KEY_ALT_R", "KEY_RESIZE",
-        "KEY_SUP", "KEY_SDOWN"
-    };
-
-    PDC_LOG(("keyname() - called: key %d\n", key));
-
-    if ((key >= 0) && (key < 0x80))
-        return unctrl((chtype)key);
-
-    return has_key(key) ? key_name[key - KEY_MIN] : "UNKNOWN KEY";
-}
-
-bool has_key(int key)
-{
-    PDC_LOG(("has_key() - called: key %d\n", key));
-
-    return (key >= KEY_MIN && key <= KEY_MAX);
-}
-
-#ifdef PDC_WIDE
-char *key_name(wchar_t c)
-{
-    PDC_LOG(("key_name() - called\n"));
-
-    return keyname((int)c);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/mouse.c b/src/other/PDCurses/pdcurses/mouse.c
deleted file mode 100644
index 1f476dd..0000000
--- a/src/other/PDCurses/pdcurses/mouse.c
+++ /dev/null
@@ -1,429 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: mouse.c,v 1.45 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         mouse
-
-  Synopsis:
-        int mouse_set(unsigned long mbe);
-        int mouse_on(unsigned long mbe);
-        int mouse_off(unsigned long mbe);
-        int request_mouse_pos(void);
-        int map_button(unsigned long button);
-        void wmouse_position(WINDOW *win, int *y, int *x);
-        unsigned long getmouse(void);
-        unsigned long getbmap(void);
-
-        int mouseinterval(int wait);
-        bool wenclose(const WINDOW *win, int y, int x);
-        bool wmouse_trafo(const WINDOW *win, int *y, int *x, bool to_screen);
-        bool mouse_trafo(int *y, int *x, bool to_screen);
-        mmask_t mousemask(mmask_t mask, mmask_t *oldmask);
-        int nc_getmouse(MEVENT *event);
-        int ungetmouse(MEVENT *event);
-
-  Description:
-        As of PDCurses 3.0, there are two separate mouse interfaces: the
-        classic interface, which is based on the undocumented Sys V
-        mouse functions; and an ncurses-compatible interface. Both are
-        active at all times, and you can mix and match functions from
-        each, though it's not recommended. The ncurses interface is
-        essentially an emulation layer built on top of the classic
-        interface; it's here to allow easier porting of ncurses apps.
-
-        The classic interface: mouse_set(), mouse_on(), mouse_off(),
-        request_mouse_pos(), map_button(), wmouse_position(),
-        getmouse(), and getbmap(). An application using this interface
-        would start by calling mouse_set() or mouse_on() with a non-zero
-        value, often ALL_MOUSE_EVENTS. Then it would check for a
-        KEY_MOUSE return from getch(). If found, it would call
-        request_mouse_pos() to get the current mouse status.
-
-        mouse_set(), mouse_on() and mouse_off() are analagous to
-        attrset(), attron() and attroff().  These functions set the
-        mouse button events to trap.  The button masks used in these
-        functions are defined in curses.h and can be or'ed together.
-        They are the group of masks starting with BUTTON1_RELEASED.
-
-        request_mouse_pos() requests curses to fill in the Mouse_status
-        structure with the current state of the mouse.
-
-        map_button() enables the specified mouse action to activate the
-        Soft Label Keys if the action occurs over the area of the screen
-        where the Soft Label Keys are displayed.  The mouse actions are
-        defined in curses.h in the group that starts with BUTTON_RELEASED.
-
-        wmouse_position() determines if the current mouse position is
-        within the window passed as an argument.  If the mouse is
-        outside the current window, -1 is returned in the y and x
-        arguments; otherwise the y and x coordinates of the mouse
-        (relative to the top left corner of the window) are returned in
-        y and x.
-
-        getmouse() returns the current status of the trapped mouse
-        buttons as set by mouse_set() or mouse_on().
-
-        getbmap() returns the current status of the button action used
-        to map a mouse action to the Soft Label Keys as set by the
-        map_button() function.
-
-        The ncurses interface: mouseinterval(), wenclose(),
-        wmouse_trafo(), mouse_trafo(), mousemask(), nc_getmouse(), and
-        ungetmouse(). A typical application using this interface would
-        start by calling mousemask() with a non-zero value, often
-        ALL_MOUSE_EVENTS. Then it would check for a KEY_MOUSE return
-        from getch(). If found, it would call nc_getmouse() to get the
-        current mouse status.
-
-        mouseinterval() sets the timeout for a mouse click. On all
-        current platforms, PDCurses receives mouse button press and
-        release events, but must synthesize click events. It does this
-        by checking whether a release event is queued up after a press
-        event. If it gets a press event, and there are no more events
-        waiting, it will wait for the timeout interval, then check again
-        for a release. A press followed by a release is reported as
-        BUTTON_CLICKED; otherwise it's passed through as BUTTON_PRESSED.
-        The default timeout is 150ms; valid values are 0 (no clicks
-        reported) through 1000ms. In x11, the timeout can also be set
-        via the clickPeriod resource. The return value from
-        mouseinterval() is the old timeout. To check the old value
-        without setting a new one, call it with a parameter of -1. Note 
-        that although there's no classic equivalent for this function 
-        (apart from the clickPeriod resource), the value set applies in 
-        both interfaces.
-
-        wenclose() reports whether the given screen-relative y, x
-        coordinates fall within the given window.
-
-        wmouse_trafo() converts between screen-relative and window-
-        relative coordinates. A to_screen parameter of TRUE means to
-        convert from window to screen; otherwise the reverse. The
-        function returns FALSE if the coordinates aren't within the
-        window, or if any of the parameters are NULL. The coordinates
-        have been converted when the function returns TRUE.
-
-        mouse_trafo() is the stdscr version of wmouse_trafo().
-
-        mousemask() is nearly equivalent to mouse_set(), but instead of
-        OK/ERR, it returns the value of the mask after setting it. (This
-        isn't necessarily the same value passed in, since the mask could
-        be altered on some platforms.) And if the second parameter is a 
-        non-null pointer, mousemask() stores the previous mask value 
-        there. Also, since the ncurses interface doesn't work with 
-        PDCurses' BUTTON_MOVED events, mousemask() filters them out.
-
-        nc_getmouse() returns the current mouse status in an MEVENT 
-        struct. This is equivalent to ncurses' getmouse(), renamed to 
-        avoid conflict with PDCurses' getmouse(). But if you define 
-        NCURSES_MOUSE_VERSION (preferably as 2) before including 
-        curses.h, it defines getmouse() to nc_getmouse(), along with a 
-        few other redefintions needed for compatibility with ncurses 
-        code. nc_getmouse() calls request_mouse_pos(), which (not 
-        getmouse()) is the classic equivalent.
-
-        ungetmouse() is the mouse equivalent of ungetch(). However, 
-        PDCurses doesn't maintain a queue of mouse events; only one can 
-        be pushed back, and it can overwrite or be overwritten by real 
-        mouse events.
-
-  Portability                                X/Open    BSD    SYS V
-        mouse_set                               -       -      4.0
-        mouse_on                                -       -      4.0
-        mouse_off                               -       -      4.0
-        request_mouse_pos                       -       -      4.0
-        map_button                              -       -      4.0
-        wmouse_position                         -       -      4.0
-        getmouse                                -       -      4.0
-        getbmap                                 -       -      4.0
-        mouseinterval                           -       -       -
-        wenclose                                -       -       -
-        wmouse_trafo                            -       -       -
-        mouse_trafo                             -       -       -
-        mousemask                               -       -       -
-        nc_getmouse                             -       -       -
-        ungetmouse                              -       -       -
-
-**man-end****************************************************************/
-
-#include <string.h>
-
-static bool ungot = FALSE;
-
-int mouse_set(unsigned long mbe)
-{
-    PDC_LOG(("mouse_set() - called: event %x\n", mbe));
-
-    SP->_trap_mbe = mbe;
-    return PDC_mouse_set();
-}
-
-int mouse_on(unsigned long mbe)
-{
-    PDC_LOG(("mouse_on() - called: event %x\n", mbe));
-
-    SP->_trap_mbe |= mbe;
-    return PDC_mouse_set();
-}
-
-int mouse_off(unsigned long mbe)
-{
-    PDC_LOG(("mouse_off() - called: event %x\n", mbe));
-
-    SP->_trap_mbe &= ~mbe;
-    return PDC_mouse_set();
-}
-
-int map_button(unsigned long button)
-{
-    PDC_LOG(("map_button() - called: button %x\n", button));
-
-/****************** this does nothing at the moment ***************/
-    SP->_map_mbe_to_key = button;
-
-    return OK;
-}
-
-int request_mouse_pos(void)
-{
-    PDC_LOG(("request_mouse_pos() - called\n"));
-
-    Mouse_status = pdc_mouse_status;
-
-    return OK;
-}
-
-void wmouse_position(WINDOW *win, int *y, int *x)
-{
-    PDC_LOG(("wmouse_position() - called\n"));
-
-    if (win && wenclose(win, MOUSE_Y_POS, MOUSE_X_POS))
-    {
-        if (y)
-            *y = MOUSE_Y_POS - win->_begy;
-        if (x)
-            *x = MOUSE_X_POS - win->_begx;
-    }
-    else
-    {
-        if (y)
-            *y = -1;
-        if (x)
-            *x = -1;
-    }
-}
-
-unsigned long getmouse(void)
-{
-    PDC_LOG(("getmouse() - called\n"));
-
-    return SP->_trap_mbe;
-}
-
-unsigned long getbmap(void)
-{
-    PDC_LOG(("getbmap() - called\n"));
-
-    return SP->_map_mbe_to_key;
-}
-
-/* ncurses mouse interface */
-
-int mouseinterval(int wait)
-{
-    int old_wait;
-
-    PDC_LOG(("mouseinterval() - called: %d\n", wait));
-
-    old_wait = SP->mouse_wait;
-
-    if (wait >= 0 && wait <= 1000)
-        SP->mouse_wait = wait;
-
-    return old_wait;
-}
-
-bool wenclose(const WINDOW *win, int y, int x)
-{
-    PDC_LOG(("wenclose() - called: %p %d %d\n", win, y, x));
-
-    return (win && y >= win->_begy && y < win->_begy + win->_maxy
-                && x >= win->_begx && x < win->_begx + win->_maxx);
-}
-
-bool wmouse_trafo(const WINDOW *win, int *y, int *x, bool to_screen)
-{
-    int newy, newx;
-
-    PDC_LOG(("wmouse_trafo() - called\n"));
-
-    if (!win || !y || !x)
-        return FALSE;
-
-    newy = *y;
-    newx = *x;
-
-    if (to_screen)
-    {
-        newy += win->_begy;
-        newx += win->_begx;
-
-        if (!wenclose(win, newy, newx))
-            return FALSE;
-    }
-    else
-    {
-        if (wenclose(win, newy, newx))
-        {
-            newy -= win->_begy;
-            newx -= win->_begx;
-        }
-        else
-            return FALSE;
-    }
-
-    *y = newy;
-    *x = newx;
-
-    return TRUE;
-}
-
-bool mouse_trafo(int *y, int *x, bool to_screen)
-{
-    PDC_LOG(("mouse_trafo() - called\n"));
-
-    return wmouse_trafo(stdscr, y, x, to_screen);
-}
-
-mmask_t mousemask(mmask_t mask, mmask_t *oldmask)
-{
-    PDC_LOG(("mousemask() - called\n"));
-
-    if (oldmask)
-        *oldmask = SP->_trap_mbe;
-
-    /* The ncurses interface doesn't work with our move events, so 
-       filter them here */
-
-    mask &= ~(BUTTON1_MOVED | BUTTON2_MOVED | BUTTON3_MOVED);
-
-    mouse_set(mask);
-
-    return SP->_trap_mbe;
-}
-
-int nc_getmouse(MEVENT *event)
-{
-    int i;
-    mmask_t bstate = 0;
-
-    PDC_LOG(("nc_getmouse() - called\n"));
-
-    if (!event)
-        return ERR;
-
-    ungot = FALSE;
-
-    request_mouse_pos();
-
-    event->id = 0;
-
-    event->x = Mouse_status.x;
-    event->y = Mouse_status.y;
-    event->z = 0;
-
-    for (i = 0; i < 3; i++)
-    {
-        if (Mouse_status.changes & (1 << i))
-        {
-            int shf = i * 5;
-            short button = Mouse_status.button[i] & BUTTON_ACTION_MASK;
-
-            if (button == BUTTON_RELEASED)
-                bstate |= (BUTTON1_RELEASED << shf);
-            else if (button == BUTTON_PRESSED)
-                bstate |= (BUTTON1_PRESSED << shf);
-            else if (button == BUTTON_CLICKED)
-                bstate |= (BUTTON1_CLICKED << shf);
-            else if (button == BUTTON_DOUBLE_CLICKED)
-                bstate |= (BUTTON1_DOUBLE_CLICKED << shf);
-
-            button = Mouse_status.button[i] & BUTTON_MODIFIER_MASK;
-
-            if (button & PDC_BUTTON_SHIFT)
-                bstate |= BUTTON_MODIFIER_SHIFT;
-            if (button & PDC_BUTTON_CONTROL)
-                bstate |= BUTTON_MODIFIER_CONTROL;
-            if (button & PDC_BUTTON_ALT)
-                bstate |= BUTTON_MODIFIER_ALT;
-        }
-    }
-
-    if (MOUSE_WHEEL_UP)
-        bstate |= BUTTON4_PRESSED;
-    else if (MOUSE_WHEEL_DOWN)
-        bstate |= BUTTON5_PRESSED;
-
-    /* extra filter pass -- mainly for button modifiers */
-
-    event->bstate = bstate & SP->_trap_mbe;
-
-    return OK;
-}
-
-int ungetmouse(MEVENT *event)
-{
-    int i;
-    unsigned long bstate;
-
-    PDC_LOG(("ungetmouse() - called\n"));
-
-    if (!event || ungot)
-        return ERR;
-
-    ungot = TRUE;
-
-    pdc_mouse_status.x = event->x;
-    pdc_mouse_status.y = event->y;
-
-    pdc_mouse_status.changes = 0;
-    bstate = event->bstate;
-
-    for (i = 0; i < 3; i++)
-    {
-        int shf = i * 5;
-        short button = 0;
-
-        if (bstate & ((BUTTON1_RELEASED | BUTTON1_PRESSED | 
-            BUTTON1_CLICKED | BUTTON1_DOUBLE_CLICKED) << shf))
-        {
-            pdc_mouse_status.changes |= 1 << i;
-
-            if (bstate & (BUTTON1_PRESSED << shf))
-                button = BUTTON_PRESSED;
-            if (bstate & (BUTTON1_CLICKED << shf))
-                button = BUTTON_CLICKED;
-            if (bstate & (BUTTON1_DOUBLE_CLICKED << shf))
-                button = BUTTON_DOUBLE_CLICKED;
-
-            if (bstate & BUTTON_MODIFIER_SHIFT)
-                button |= PDC_BUTTON_SHIFT;
-            if (bstate & BUTTON_MODIFIER_CONTROL)
-                button |= PDC_BUTTON_CONTROL;
-            if (bstate & BUTTON_MODIFIER_ALT)
-                button |= PDC_BUTTON_ALT;
-        }
-
-        pdc_mouse_status.button[i] = button;
-    }
-
-    if (bstate & BUTTON4_PRESSED)
-        pdc_mouse_status.changes |= PDC_MOUSE_WHEEL_UP;
-    else if (bstate & BUTTON5_PRESSED)
-        pdc_mouse_status.changes |= PDC_MOUSE_WHEEL_DOWN;
-
-    return ungetch(KEY_MOUSE);
-}
diff --git a/src/other/PDCurses/pdcurses/move.c b/src/other/PDCurses/pdcurses/move.c
deleted file mode 100644
index 30e5908..0000000
--- a/src/other/PDCurses/pdcurses/move.c
+++ /dev/null
@@ -1,54 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: move.c,v 1.28 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         move
-
-  Synopsis:
-        int move(int y, int x);
-        int wmove(WINDOW *win, int y, int x);
-
-  Description:
-        The cursor associated with the window is moved to the given
-        location.  This does not move the physical cursor of the
-        terminal until refresh() is called.  The position specified is
-        relative to the upper left corner of the window, which is (0,0).
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        move                                    Y       Y       Y
-        wmove                                   Y       Y       Y
-
-**man-end****************************************************************/
-
-int move(int y, int x)
-{
-    PDC_LOG(("move() - called: y=%d x=%d\n", y, x));
-
-    if (!stdscr || x < 0 || y < 0 || x >= stdscr->_maxx || y >= stdscr->_maxy)
-        return ERR;
-
-    stdscr->_curx = x;
-    stdscr->_cury = y;
-
-    return OK;
-}
-
-int wmove(WINDOW *win, int y, int x)
-{
-    PDC_LOG(("wmove() - called: y=%d x=%d\n", y, x));
-
-    if (!win || x < 0 || y < 0 || x >= win->_maxx || y >= win->_maxy)
-        return ERR;
-
-    win->_curx = x;
-    win->_cury = y;
-
-    return OK;
-}
diff --git a/src/other/PDCurses/pdcurses/outopts.c b/src/other/PDCurses/pdcurses/outopts.c
deleted file mode 100644
index 0a8fd2d..0000000
--- a/src/other/PDCurses/pdcurses/outopts.c
+++ /dev/null
@@ -1,156 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: outopts.c,v 1.39 2008/07/14 12:22:13 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         outopts
-
-  Synopsis:
-        int clearok(WINDOW *win, bool bf);
-        int idlok(WINDOW *win, bool bf);
-        void idcok(WINDOW *win, bool bf);
-        void immedok(WINDOW *win, bool bf);
-        int leaveok(WINDOW *win, bool bf);
-        int setscrreg(int top, int bot);
-        int wsetscrreg(WINDOW *win, int top, int bot);
-        int scrollok(WINDOW *win, bool bf);
-
-        int raw_output(bool bf);
-
-  Description:
-        With clearok(), if bf is TRUE, the next call to wrefresh() with 
-        this window will clear the screen completely and redraw the 
-        entire screen.
-
-        immedok(), called with a second argument of TRUE, causes an 
-        automatic wrefresh() every time a change is made to the 
-        specified window.
-
-        Normally, the hardware cursor is left at the location of the
-        window being refreshed.  leaveok() allows the cursor to be
-        left wherever the update happens to leave it.  It's useful
-        for applications where the cursor is not used, since it reduces
-        the need for cursor motions.  If possible, the cursor is made
-        invisible when this option is enabled.
-
-        wsetscrreg() sets a scrolling region in a window; "top" and 
-        "bot" are the line numbers for the top and bottom margins. If 
-        this option and scrollok() are enabled, any attempt to move off 
-        the bottom margin will cause all lines in the scrolling region 
-        to scroll up one line. setscrreg() is the stdscr version.
-
-        idlok() and idcok() do nothing in PDCurses, but are provided for 
-        compatibility with other curses implementations.
-
-        raw_output() enables the output of raw characters using the 
-        standard *add* and *ins* curses functions (that is, it disables 
-        translation of control characters).
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        clearok                                 Y       Y       Y
-        idlok                                   Y       Y       Y
-        idcok                                   Y       -      4.0
-        immedok                                 Y       -      4.0
-        leaveok                                 Y       Y       Y
-        setscrreg                               Y       Y       Y
-        wsetscrreg                              Y       Y       Y
-        scrollok                                Y       Y       Y
-        raw_output                              -       -       -
-
-**man-end****************************************************************/
-
-int clearok(WINDOW *win, bool bf)
-{
-    PDC_LOG(("clearok() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    win->_clear = bf;
-
-    return OK;
-}
-
-int idlok(WINDOW *win, bool bf)
-{
-    PDC_LOG(("idlok() - called\n"));
-
-    return OK;
-}
-
-void idcok(WINDOW *win, bool bf)
-{
-    PDC_LOG(("idcok() - called\n"));
-}
-
-void immedok(WINDOW *win, bool bf)
-{
-    PDC_LOG(("immedok() - called\n"));
-
-    if (win)
-        win->_immed = bf;
-}
-
-int leaveok(WINDOW *win, bool bf)
-{
-    PDC_LOG(("leaveok() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    win->_leaveit = bf;
-
-    curs_set(!bf);
-
-    return OK;
-}
-
-int setscrreg(int top, int bottom)
-{
-    PDC_LOG(("setscrreg() - called: top %d bottom %d\n", top, bottom));
-
-    return wsetscrreg(stdscr, top, bottom);
-}
-
-int wsetscrreg(WINDOW *win, int top, int bottom)
-{
-    PDC_LOG(("wsetscrreg() - called: top %d bottom %d\n", top, bottom));
-
-    if (win && 0 <= top && top <= win->_cury &&
-        win->_cury <= bottom && bottom < win->_maxy)
-    {
-        win->_tmarg = top;
-        win->_bmarg = bottom;
-
-        return OK;
-    }
-    else
-        return ERR;
-}
-
-int scrollok(WINDOW *win, bool bf)
-{
-    PDC_LOG(("scrollok() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    win->_scroll = bf;
-
-    return OK;
-}
-
-int raw_output(bool bf)
-{
-    PDC_LOG(("raw_output() - called\n"));
-
-    SP->raw_out = bf;
-
-    return OK;
-}
diff --git a/src/other/PDCurses/pdcurses/overlay.c b/src/other/PDCurses/pdcurses/overlay.c
deleted file mode 100644
index f9bba50..0000000
--- a/src/other/PDCurses/pdcurses/overlay.c
+++ /dev/null
@@ -1,256 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: overlay.c,v 1.36 2008/07/14 12:35:23 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         overlay
-
-  Synopsis:
-        int overlay(const WINDOW *src_w, WINDOW *dst_w)
-        int overwrite(const WINDOW *src_w, WINDOW *dst_w)
-        int copywin(const WINDOW *src_w, WINDOW *dst_w, int src_tr,
-                    int src_tc, int dst_tr, int dst_tc, int dst_br,
-                    int dst_bc, bool overlay)
-
-  Description:
-        overlay() and overwrite() copy all the text from src_w into
-        dst_w. The windows need not be the same size. Those characters
-        in the source window that intersect with the destination window
-        are copied, so that the characters appear in the same physical
-        position on the screen. The difference between the two functions
-        is that overlay() is non-destructive (blanks are not copied)
-        while overwrite() is destructive (blanks are copied).
-
-        copywin() is similar, but doesn't require that the two windows
-        overlap. The arguments src_tc and src_tr specify the top left
-        corner of the region to be copied. dst_tc, dst_tr, dst_br, and
-        dst_bc specify the region within the destination window to copy
-        to. The argument "overlay", if TRUE, indicates that the copy is
-        done non-destructively (as in overlay()); blanks in the source
-        window are not copied to the destination window. When overlay is
-        FALSE, blanks are copied.
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        overlay                                 Y       Y       Y
-        overwrite                               Y       Y       Y
-        copywin                                 Y       -      3.0
-
-**man-end****************************************************************/
-
-/* Thanks to Andreas Otte <venn@@uni-paderborn.de> for the 
-   corrected overlay()/overwrite() behavior. */
-
-static int _copy_win(const WINDOW *src_w, WINDOW *dst_w, int src_tr,
-                     int src_tc, int src_br, int src_bc, int dst_tr,
-                     int dst_tc, bool overlay)
-{
-    int col, line, y1, fc, *minchng, *maxchng;
-    chtype *w1ptr, *w2ptr;
-
-    int lc = 0;
-    int xdiff = src_bc - src_tc;
-    int ydiff = src_br - src_tr;
-
-    if (!src_w || !dst_w)
-        return ERR;
-
-    minchng = dst_w->_firstch;
-    maxchng = dst_w->_lastch;
-
-    for (y1 = 0; y1 < dst_tr; y1++)
-    {
-        minchng++;
-        maxchng++;
-    }
-
-    for (line = 0; line < ydiff; line++)
-    {
-        w1ptr = src_w->_y[line + src_tr] + src_tc;
-        w2ptr = dst_w->_y[line + dst_tr] + dst_tc;
-
-        fc = _NO_CHANGE;
-
-        for (col = 0; col < xdiff; col++)
-        {
-            if ((*w1ptr) != (*w2ptr) &&
-                !((*w1ptr & A_CHARTEXT) == ' ' && overlay))
-            {
-                *w2ptr = *w1ptr;
-
-                if (fc == _NO_CHANGE)
-                    fc = col + dst_tc;
-            
-                lc = col + dst_tc;
-            }
-
-            w1ptr++;
-            w2ptr++;
-        }
-
-        if (*minchng == _NO_CHANGE)
-        {
-            *minchng = fc;
-            *maxchng = lc;
-        }
-        else if (fc != _NO_CHANGE)
-        {
-            if (fc < *minchng)
-                *minchng = fc;
-            if (lc > *maxchng)
-                *maxchng = lc;
-        }
-
-        minchng++;
-        maxchng++;
-    }
-
-    return OK;
-}
-
-int overlay(const WINDOW *src_w, WINDOW *dst_w)
-{
-    int first_line, first_col, last_line, last_col;
-    int src_start_x, src_start_y, dst_start_x, dst_start_y;
-    int xdiff, ydiff;
-
-    PDC_LOG(("overlay() - called\n"));
-
-    if (!src_w || !dst_w)
-        return ERR;
-
-    first_col = max(dst_w->_begx, src_w->_begx);
-    first_line = max(dst_w->_begy, src_w->_begy);
-
-    last_col = min(src_w->_begx + src_w->_maxx, dst_w->_begx + dst_w->_maxx);
-    last_line = min(src_w->_begy + src_w->_maxy, dst_w->_begy + dst_w->_maxy);
-
-    /* determine the overlapping region of the two windows in real 
-       coordinates */
-
-    /* if no overlapping region, do nothing */
-
-    if ((last_col < first_col) || (last_line < first_line))
-        return OK;
-
-    /* size of overlapping region */
-
-    xdiff = last_col - first_col;
-    ydiff = last_line - first_line;
-
-    if (src_w->_begx <= dst_w->_begx)
-    {
-        src_start_x = dst_w->_begx - src_w->_begx;
-        dst_start_x = 0;
-    }
-    else
-    {
-        dst_start_x = src_w->_begx - dst_w->_begx;
-        src_start_x = 0;
-    }
-
-    if (src_w->_begy <= dst_w->_begy)
-    {
-        src_start_y = dst_w->_begy - src_w->_begy;
-        dst_start_y = 0;
-    }
-    else
-    {
-        dst_start_y = src_w->_begy - dst_w->_begy;
-        src_start_y = 0;
-    }
-
-    return _copy_win(src_w, dst_w, src_start_y, src_start_x,
-                     src_start_y + ydiff, src_start_x + xdiff,
-                     dst_start_y, dst_start_x, TRUE);
-}
-
-int overwrite(const WINDOW *src_w, WINDOW *dst_w)
-{
-    int first_line, first_col, last_line, last_col;
-    int src_start_x, src_start_y, dst_start_x, dst_start_y;
-    int xdiff, ydiff;
-
-    PDC_LOG(("overwrite() - called\n"));
-
-    if (!src_w || !dst_w)
-        return ERR;
-
-    first_col = max(dst_w->_begx, src_w->_begx);
-    first_line = max(dst_w->_begy, src_w->_begy);
-
-    last_col = min(src_w->_begx + src_w->_maxx, dst_w->_begx + dst_w->_maxx);
-    last_line = min(src_w->_begy + src_w->_maxy, dst_w->_begy + dst_w->_maxy);
-
-    /* determine the overlapping region of the two windows in real 
-       coordinates */
-
-    /* if no overlapping region, do nothing */
-
-    if ((last_col < first_col) || (last_line < first_line))
-        return OK;
-
-    /* size of overlapping region */
-
-    xdiff = last_col - first_col;
-    ydiff = last_line - first_line;
-
-    if (src_w->_begx <= dst_w->_begx)
-    {
-        src_start_x = dst_w->_begx - src_w->_begx;
-        dst_start_x = 0;
-    }
-    else
-    {
-        dst_start_x = src_w->_begx - dst_w->_begx;
-        src_start_x = 0;
-    }
-
-    if (src_w->_begy <= dst_w->_begy)
-    {
-        src_start_y = dst_w->_begy - src_w->_begy;
-        dst_start_y = 0;
-    }
-    else
-    {
-        dst_start_y = src_w->_begy - dst_w->_begy;
-        src_start_y = 0;
-    }
-
-    return _copy_win(src_w, dst_w, src_start_y, src_start_x,
-                     src_start_y + ydiff, src_start_x + xdiff,
-                     dst_start_y, dst_start_x, FALSE);
-}
-
-int copywin(const WINDOW *src_w, WINDOW *dst_w, int src_tr, int src_tc,
-            int dst_tr, int dst_tc, int dst_br, int dst_bc, int overlay)
-{
-    int src_end_x, src_end_y;
-    int src_rows, src_cols, dst_rows, dst_cols;
-    int min_rows, min_cols;
-
-    PDC_LOG(("copywin() - called\n"));
-
-    if (!src_w || !dst_w || dst_w == curscr || dst_br > dst_w->_maxy
-        || dst_bc > dst_w->_maxx || dst_tr < 0 || dst_tc < 0)
-        return ERR;
-
-    src_rows = src_w->_maxy - src_tr;
-    src_cols = src_w->_maxx - src_tc;
-    dst_rows = dst_br - dst_tr + 1;
-    dst_cols = dst_bc - dst_tc + 1;
-
-    min_rows = min(src_rows, dst_rows);
-    min_cols = min(src_cols, dst_cols);
-
-    src_end_y = src_tr + min_rows;
-    src_end_x = src_tc + min_cols;
-
-    return _copy_win(src_w, dst_w, src_tr, src_tc, src_end_y, src_end_x,
-                     dst_tr, dst_tc, overlay);
-}
diff --git a/src/other/PDCurses/pdcurses/pad.c b/src/other/PDCurses/pdcurses/pad.c
deleted file mode 100644
index ccc5db2..0000000
--- a/src/other/PDCurses/pdcurses/pad.c
+++ /dev/null
@@ -1,259 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: pad.c,v 1.50 2008/07/14 12:22:13 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         pad
-
-  Synopsis:
-        WINDOW *newpad(int nlines, int ncols);
-        WINDOW *subpad(WINDOW *orig, int nlines, int ncols,
-                       int begy, int begx);
-        int prefresh(WINDOW *win, int py, int px, int sy1, int sx1,
-                     int sy2, int sx2);
-        int pnoutrefresh(WINDOW *w, int py, int px, int sy1, int sx1,
-                         int sy2, int sx2);
-        int pechochar(WINDOW *pad, chtype ch);
-        int pecho_wchar(WINDOW *pad, const cchar_t *wch);
-
-  Description:
-        A pad is a special kind of window, which is not restricted by
-        the screen size, and is not necessarily associated with a
-        particular part of the screen.  You can use a pad when you need
-        a large window, and only a part of the window will be on the
-        screen at one time.  Pads are not refreshed automatically (e.g.,
-        from scrolling or echoing of input).  You can't call wrefresh()
-        with a pad as an argument; use prefresh() or pnoutrefresh()
-        instead.  Note that these routines require additional parameters
-        to specify the part of the pad to be displayed, and the location
-        to use on the screen.
-
-        newpad() creates a new pad data structure.  
-
-        subpad() creates a new sub-pad within a pad, at position (begy,
-        begx), with dimensions of nlines lines and ncols columns. This 
-        position is relative to the pad, and not to the screen as with 
-        subwin.  Changes to either the parent pad or sub-pad will affect 
-        both.  When using sub-pads, you may need to call touchwin() 
-        before calling prefresh().
-
-        pnoutrefresh() copies the specified pad to the virtual screen.
-
-        prefresh() calls pnoutrefresh(), followed by doupdate().
-
-        These routines are analogous to wnoutrefresh() and wrefresh().
-        (py, px) specifies the upper left corner of the part of the pad
-        to be displayed; (sy1, sx1) and (sy2, sx2) describe the screen 
-        rectangle that will contain the selected part of the pad.
-
-        pechochar() is functionally equivalent to addch() followed by
-        a call to prefresh(), with the last-used coordinates and
-        dimensions. pecho_wchar() is the wide-character version.
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        newpad                                  Y       -       Y
-        subpad                                  Y       -       Y
-        prefresh                                Y       -       Y
-        pnoutrefresh                            Y       -       Y
-        pechochar                               Y       -      3.0
-        pecho_wchar                             Y
-
-**man-end****************************************************************/
-
-#include <string.h>
-
-/* save values for pechochar() */
-
-static int save_pminrow, save_pmincol;
-static int save_sminrow, save_smincol, save_smaxrow, save_smaxcol;
-
-WINDOW *newpad(int nlines, int ncols)
-{
-    WINDOW *win;
-
-    PDC_LOG(("newpad() - called: lines=%d cols=%d\n", nlines, ncols));
-
-    if ( !(win = PDC_makenew(nlines, ncols, -1, -1))
-        || !(win = PDC_makelines(win)) )
-        return (WINDOW *)NULL;
-
-    werase(win);
-
-    win->_flags = _PAD;
-
-    /* save default values in case pechochar() is the first call to 
-       prefresh(). */
-
-    save_pminrow = 0;
-    save_pmincol = 0;
-    save_sminrow = 0;
-    save_smincol = 0;
-    save_smaxrow = min(LINES, nlines) - 1;
-    save_smaxcol = min(COLS, ncols) - 1;
-
-    return win;
-}
-
-WINDOW *subpad(WINDOW *orig, int nlines, int ncols, int begy, int begx)
-{
-    WINDOW *win;
-    int i;
-    int j = begy;
-    int k = begx;
-
-    PDC_LOG(("subpad() - called: lines=%d cols=%d begy=%d begx=%d\n",
-             nlines, ncols, begy, begx));
-
-    if (!orig || !(orig->_flags & _PAD))
-        return (WINDOW *)NULL;
-
-    /* make sure window fits inside the original one */
-
-    if ((begy < orig->_begy) || (begx < orig->_begx) ||
-        (begy + nlines) > (orig->_begy + orig->_maxy) ||
-        (begx + ncols)  > (orig->_begx + orig->_maxx))
-        return (WINDOW *)NULL;
-
-    if (!nlines) 
-        nlines = orig->_maxy - 1 - j;
-
-    if (!ncols) 
-        ncols = orig->_maxx - 1 - k;
-
-    if ( !(win = PDC_makenew(nlines, ncols, begy, begx)) )
-        return (WINDOW *)NULL;
-
-    /* initialize window variables */
-
-    win->_attrs = orig->_attrs;
-    win->_leaveit = orig->_leaveit;
-    win->_scroll = orig->_scroll;
-    win->_nodelay = orig->_nodelay;
-    win->_use_keypad = orig->_use_keypad;
-    win->_parent = orig;
-
-    for (i = 0; i < nlines; i++)
-        win->_y[i] = (orig->_y[j++]) + k;
-
-    win->_flags = _SUBPAD;
-
-    /* save default values in case pechochar() is the first call
-       to prefresh(). */
-
-    save_pminrow = 0;
-    save_pmincol = 0;
-    save_sminrow = 0;
-    save_smincol = 0;
-    save_smaxrow = min(LINES, nlines) - 1;
-    save_smaxcol = min(COLS, ncols) - 1;
-
-    return win;
-}
-
-int prefresh(WINDOW *win, int py, int px, int sy1, int sx1, int sy2, int sx2)
-{
-    PDC_LOG(("prefresh() - called\n"));
-
-    if (pnoutrefresh(win, py, px, sy1, sx1, sy2, sx2) == ERR)
-        return ERR;
-
-    doupdate();
-    return OK;
-}
-
-int pnoutrefresh(WINDOW *w, int py, int px, int sy1, int sx1, int sy2, int sx2)
-{
-    int num_cols;
-    int sline = sy1;
-    int pline = py;
-
-    PDC_LOG(("pnoutrefresh() - called\n"));
-
-    if (!w || !(w->_flags & (_PAD|_SUBPAD)) || (sy2 >= LINES) || (sy2 >= COLS))
-        return ERR;
-
-    if (py < 0)
-        py = 0;
-    if (px < 0)
-        px = 0;
-    if (sy1 < 0)
-        sy1 = 0;
-    if (sx1 < 0)
-        sx1 = 0;
-
-    if (sy2 < sy1 || sx2 < sx1)
-        return ERR;
-
-    num_cols = min((sx2 - sx1 + 1), (w->_maxx - px));
-
-    while (sline <= sy2)
-    {
-        if (pline < w->_maxy)
-        {
-            memcpy(curscr->_y[sline] + sx1, w->_y[pline] + px,
-                   num_cols * sizeof(chtype));
-
-            if ((curscr->_firstch[sline] == _NO_CHANGE) 
-                || (curscr->_firstch[sline] > sx1))
-                curscr->_firstch[sline] = sx1;
-
-            if (sx2 > curscr->_lastch[sline])
-                curscr->_lastch[sline] = sx2;
-
-            w->_firstch[pline] = _NO_CHANGE; /* updated now */
-            w->_lastch[pline] = _NO_CHANGE;  /* updated now */
-        }
-
-        sline++;
-        pline++;
-    }
-
-    if (w->_clear)
-    {
-        w->_clear = FALSE;
-        curscr->_clear = TRUE;
-    }
-
-    /* position the cursor to the pad's current position if possible -- 
-       is the pad current position going to end up displayed? if not, 
-       then don't move the cursor; if so, move it to the correct place */
-
-    if (!w->_leaveit && w->_cury >= py && w->_curx >= px &&
-         w->_cury <= py + (sy2 - sy1) && w->_curx <= px + (sx2 - sx1))
-    {
-        curscr->_cury = (w->_cury - py) + sy1;
-        curscr->_curx = (w->_curx - px) + sx1;
-    }
-
-    return OK;
-}
-
-int pechochar(WINDOW *pad, chtype ch)
-{
-    PDC_LOG(("pechochar() - called\n"));
-
-    if (waddch(pad, ch) == ERR)
-        return ERR;
-
-    return prefresh(pad, save_pminrow, save_pmincol, save_sminrow, 
-                    save_smincol, save_smaxrow, save_smaxcol);
-}
-
-#ifdef PDC_WIDE
-int pecho_wchar(WINDOW *pad, const cchar_t *wch)
-{
-    PDC_LOG(("pecho_wchar() - called\n"));
-
-    if (!wch || (waddch(pad, *wch) == ERR))
-        return ERR;
-
-    return prefresh(pad, save_pminrow, save_pmincol, save_sminrow, 
-                    save_smincol, save_smaxrow, save_smaxcol);
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/panel.c b/src/other/PDCurses/pdcurses/panel.c
deleted file mode 100644
index 77028c6..0000000
--- a/src/other/PDCurses/pdcurses/panel.c
+++ /dev/null
@@ -1,630 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: panel.c,v 1.8 2008/07/14 12:35:23 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         panel
-
-  Synopsis:
-        int bottom_panel(PANEL *pan);
-        int del_panel(PANEL *pan);
-        int hide_panel(PANEL *pan);
-        int move_panel(PANEL *pan, int starty, int startx);
-        PANEL *new_panel(WINDOW *win);
-        PANEL *panel_above(const PANEL *pan);
-        PANEL *panel_below(const PANEL *pan);
-        int panel_hidden(const PANEL *pan);
-        const void *panel_userptr(const PANEL *pan);
-        WINDOW *panel_window(const PANEL *pan);
-        int replace_panel(PANEL *pan, WINDOW *win);
-        int set_panel_userptr(PANEL *pan, const void *uptr);
-        int show_panel(PANEL *pan);
-        int top_panel(PANEL *pan);
-        void update_panels(void);
-
-  Description:
-        The panel library is built using the curses library, and any
-        program using panels routines must call one of the curses
-        initialization routines such as initscr(). A program using these
-        routines must be linked with the panels and curses libraries.
-        The header <panel.h> includes the header <curses.h>.
-
-        The panels package gives the applications programmer a way to
-        have depth relationships between curses windows; a curses window
-        is associated with every panel. The panels routines allow curses
-        windows to overlap without making visible the overlapped
-        portions of underlying windows. The initial curses window,
-        stdscr, lies beneath all panels. The set of currently visible
-        panels is the 'deck' of panels.
-
-        The panels package allows the applications programmer to create
-        panels, fetch and set their associated windows, shuffle panels
-        in the deck, and manipulate panels in other ways.
-
-        bottom_panel() places pan at the bottom of the deck. The size, 
-        location and contents of the panel are unchanged.
-
-        del_panel() deletes pan, but not its associated winwow.
-
-        hide_panel() removes a panel from the deck and thus hides it 
-        from view.
-
-        move_panel() moves the curses window associated with pan, so 
-        that its upper lefthand corner is at the supplied coordinates. 
-        (Do not use mvwin() on the window.)
-
-        new_panel() creates a new panel associated with win and returns 
-        the panel pointer. The new panel is placed at the top of the 
-        deck.
-
-        panel_above() returns a pointer to the panel in the deck above 
-        pan, or NULL if pan is the top panel. If the value of pan passed 
-        is NULL, this function returns a pointer to the bottom panel in 
-        the deck.
-
-        panel_below() returns a pointer to the panel in the deck below 
-        pan, or NULL if pan is the bottom panel. If the value of pan 
-        passed is NULL, this function returns a pointer to the top panel 
-        in the deck.
-
-        panel_hidden() returns OK if pan is hidden and ERR if it is not.
-
-        panel_userptr() - Each panel has a user pointer available for 
-        maintaining relevant information. This function returns a 
-        pointer to that information previously set up by 
-        set_panel_userptr().
-
-        panel_window() returns a pointer to the curses window associated 
-        with the panel.
-
-        replace_panel() replaces the current window of pan with win.
-
-        set_panel_userptr() - Each panel has a user pointer available 
-        for maintaining relevant information. This function sets the 
-        value of that information.
-
-        show_panel() makes a previously hidden panel visible and places 
-        it back in the deck on top.
-
-        top_panel() places pan on the top of the deck. The size, 
-        location and contents of the panel are unchanged.
-
-        update_panels() refreshes the virtual screen to reflect the 
-        depth relationships between the panels in the deck. The user 
-        must use doupdate() to refresh the physical screen.
-
-  Return Value:
-        Each routine that returns a pointer to an object returns NULL if 
-        an error occurs. Each panel routine that returns an integer, 
-        returns OK if it executes successfully and ERR if it does not.
-
-  Portability                                X/Open    BSD    SYS V
-        bottom_panel                            -       -       Y
-        del_panel                               -       -       Y
-        hide_panel                              -       -       Y
-        move_panel                              -       -       Y
-        new_panel                               -       -       Y
-        panel_above                             -       -       Y
-        panel_below                             -       -       Y
-        panel_hidden                            -       -       Y
-        panel_userptr                           -       -       Y
-        panel_window                            -       -       Y
-        replace_panel                           -       -       Y
-        set_panel_userptr                       -       -       Y
-        show_panel                              -       -       Y
-        top_panel                               -       -       Y
-        update_panels                           -       -       Y
-
-  Credits:
-        Original Author - Warren Tucker <wht at n4hgf.mt-park.ga.us>
-
-**man-end****************************************************************/
-
-#include <panel.h>
-#include <stdlib.h>
-
-PANEL *_bottom_panel = (PANEL *)0;
-PANEL *_top_panel = (PANEL *)0;
-PANEL _stdscr_pseudo_panel = { (WINDOW *)0 };
-
-#ifdef PANEL_DEBUG
-
-static void dPanel(char *text, PANEL *pan)
-{
-    PDC_LOG(("%s id=%s b=%s a=%s y=%d x=%d", text, pan->user,
-             pan->below ? pan->below->user : "--",
-             pan->above ? pan->above->user : "--",
-             pan->wstarty, pan->wstartx));
-}
-
-static void dStack(char *fmt, int num, PANEL *pan)
-{
-    char s80[80];
-
-    sprintf(s80, fmt, num, pan);
-    PDC_LOG(("%s b=%s t=%s", s80, _bottom_panel ? _bottom_panel->user : "--",
-             _top_panel    ? _top_panel->user    : "--"));
-
-    if (pan)
-        PDC_LOG(("pan id=%s", pan->user));
-
-    pan = _bottom_panel;
-
-    while (pan)
-    {
-        dPanel("stk", pan);
-        pan = pan->above;
-    }
-}
-
-/* debugging hook for wnoutrefresh */
-
-static void Wnoutrefresh(PANEL *pan)
-{
-    dPanel("wnoutrefresh", pan);
-    wnoutrefresh(pan->win);
-}
-
-static void Touchpan(PANEL *pan)
-{
-    dPanel("Touchpan", pan);
-    touchwin(pan->win);
-}
-
-static void Touchline(PANEL *pan, int start, int count)
-{
-    char s80[80];
-
-    sprintf(s80, "Touchline s=%d c=%d", start, count);
-    dPanel(s80, pan);
-    touchline(pan->win, start, count);
-}
-
-#else   /* PANEL_DEBUG */
-
-#define dPanel(text, pan)
-#define dStack(fmt, num, pan)
-#define Wnoutrefresh(pan) wnoutrefresh((pan)->win)
-#define Touchpan(pan) touchwin((pan)->win)
-#define Touchline(pan, start, count) touchline((pan)->win, start, count)
-
-#endif  /* PANEL_DEBUG */
-
-static bool _panels_overlapped(PANEL *pan1, PANEL *pan2)
-{
-    if (!pan1 || !pan2)
-        return FALSE;
-
-    return ((pan1->wstarty >= pan2->wstarty && pan1->wstarty < pan2->wendy)
-         || (pan2->wstarty >= pan1->wstarty && pan2->wstarty < pan1->wendy))
-        && ((pan1->wstartx >= pan2->wstartx && pan1->wstartx < pan2->wendx)
-         || (pan2->wstartx >= pan1->wstartx && pan2->wstartx < pan1->wendx));
-}
-
-static void _free_obscure(PANEL *pan)
-{
-    PANELOBS *tobs = pan->obscure;  /* "this" one */
-    PANELOBS *nobs;                 /* "next" one */
-
-    while (tobs)
-    {
-        nobs = tobs->above;
-        free((char *)tobs);
-        tobs = nobs;
-    }
-    pan->obscure = (PANELOBS *)0;
-}
-
-static void _override(PANEL *pan, int show)
-{
-    int y;
-    PANEL *pan2;
-    PANELOBS *tobs = pan->obscure;      /* "this" one */
-
-    if (show == 1)
-        Touchpan(pan);
-    else if (!show)
-    {
-        Touchpan(pan);
-        Touchpan(&_stdscr_pseudo_panel);
-    }
-    else if (show == -1)
-        while (tobs && (tobs->pan != pan))
-            tobs = tobs->above;
-
-    while (tobs)
-    {
-        if ((pan2 = tobs->pan) != pan)
-            for (y = pan->wstarty; y < pan->wendy; y++)
-                if ((y >= pan2->wstarty) && (y < pan2->wendy) &&
-                   ((is_linetouched(pan->win, y - pan->wstarty)) ||
-                    (is_linetouched(stdscr, y))))
-                    Touchline(pan2, y - pan2->wstarty, 1);
-
-        tobs = tobs->above;
-    }
-}
-
-static void _calculate_obscure(void)
-{
-    PANEL *pan, *pan2;
-    PANELOBS *tobs;     /* "this" one */
-    PANELOBS *lobs;     /* last one */
-
-    pan = _bottom_panel;
-
-    while (pan)
-    {
-        if (pan->obscure)
-            _free_obscure(pan);
-
-        lobs = (PANELOBS *)0;
-        pan2 = _bottom_panel;
-
-        while (pan2)
-        {
-            if (_panels_overlapped(pan, pan2))
-            {
-                if ((tobs = malloc(sizeof(PANELOBS))) == NULL)
-                    return;
-
-                tobs->pan = pan2;
-                dPanel("obscured", pan2);
-                tobs->above = (PANELOBS *)0;
-
-                if (lobs)
-                    lobs->above = tobs;
-                else
-                    pan->obscure = tobs;
-
-                lobs  = tobs;
-            }
-
-            pan2 = pan2->above;
-        }
-
-        _override(pan, 1);
-        pan = pan->above;
-    }
-}
-
-/* check to see if panel is in the stack */
-
-static bool _panel_is_linked(const PANEL *pan)
-{
-    PANEL *pan2 = _bottom_panel;
-
-    while (pan2)
-    {
-        if (pan2 == pan)
-            return TRUE;
-
-        pan2 = pan2->above;
-    }
-
-    return FALSE;
-}
-
-/* link panel into stack at top */
-
-static void _panel_link_top(PANEL *pan)
-{
-#ifdef PANEL_DEBUG
-    dStack("<lt%d>", 1, pan);
-    if (_panel_is_linked(pan))
-        return;
-#endif
-    pan->above = (PANEL *)0;
-    pan->below = (PANEL *)0;
-
-    if (_top_panel)
-    {
-        _top_panel->above = pan;
-        pan->below = _top_panel;
-    }
-
-    _top_panel = pan;
-
-    if (!_bottom_panel)
-        _bottom_panel = pan;
-
-    _calculate_obscure();
-    dStack("<lt%d>", 9, pan);
-}
-
-/* link panel into stack at bottom */
-
-static void _panel_link_bottom(PANEL *pan)
-{
-#ifdef PANEL_DEBUG
-    dStack("<lb%d>", 1, pan);
-    if (_panel_is_linked(pan))
-        return;
-#endif
-    pan->above = (PANEL *)0;
-    pan->below = (PANEL *)0;
-
-    if (_bottom_panel)
-    {
-        _bottom_panel->below = pan;
-        pan->above = _bottom_panel;
-    }
-
-    _bottom_panel = pan;
-
-    if (!_top_panel)
-        _top_panel = pan;
-
-    _calculate_obscure();
-    dStack("<lb%d>", 9, pan);
-}
-
-static void _panel_unlink(PANEL *pan)
-{
-    PANEL *prev;
-    PANEL *next;
-
-#ifdef PANEL_DEBUG
-    dStack("<u%d>", 1, pan);
-    if (!_panel_is_linked(pan))
-        return;
-#endif
-    _override(pan, 0);
-    _free_obscure(pan);
-
-    prev = pan->below;
-    next = pan->above;
-
-    /* if non-zero, we will not update the list head */
-
-    if (prev)
-    {
-        prev->above = next;
-        if(next)
-            next->below = prev;
-    }
-    else if (next)
-        next->below = prev;
-
-    if (pan == _bottom_panel)
-        _bottom_panel = next;
-
-    if (pan == _top_panel)
-        _top_panel = prev;
-
-    _calculate_obscure();
-
-    pan->above = (PANEL *)0;
-    pan->below = (PANEL *)0;
-    dStack("<u%d>", 9, pan);
-
-}
-
-/************************************************************************
- *   The following are the public functions for the panels library.     *
- ************************************************************************/
-
-int bottom_panel(PANEL *pan)
-{
-    if (!pan)
-        return ERR;
-
-    if (pan == _bottom_panel)
-        return OK;
-
-    if (_panel_is_linked(pan))
-        hide_panel(pan);
-
-    _panel_link_bottom(pan);
-
-    return OK;
-}
-
-int del_panel(PANEL *pan)
-{
-    if (pan)
-    {
-        if (_panel_is_linked(pan))
-            hide_panel(pan);
-
-        free((char *)pan);
-        return OK;
-    }
-
-    return ERR;
-}
-
-int hide_panel(PANEL *pan)
-{
-    if (!pan)
-        return ERR;
-
-    if (!_panel_is_linked(pan))
-    {
-        pan->above = (PANEL *)0;
-        pan->below = (PANEL *)0;
-        return ERR;
-    }
-
-    _panel_unlink(pan);
-
-    return OK;
-}
-
-int move_panel(PANEL *pan, int starty, int startx)
-{
-    WINDOW *win;
-    int maxy, maxx;
-
-    if (!pan)
-        return ERR;
-
-    if (_panel_is_linked(pan))
-        _override(pan, 0);
-
-    win = pan->win;
-
-    if (mvwin(win, starty, startx) == ERR)
-        return ERR;
-
-    getbegyx(win, pan->wstarty, pan->wstartx);
-    getmaxyx(win, maxy, maxx);
-    pan->wendy = pan->wstarty + maxy;
-    pan->wendx = pan->wstartx + maxx;
-
-    if (_panel_is_linked(pan))
-        _calculate_obscure();
-
-    return OK;
-}
-
-PANEL *new_panel(WINDOW *win)
-{
-    PANEL *pan = malloc(sizeof(PANEL));
-
-    if (!_stdscr_pseudo_panel.win)
-    {
-        _stdscr_pseudo_panel.win = stdscr;
-        _stdscr_pseudo_panel.wstarty = 0;
-        _stdscr_pseudo_panel.wstartx = 0;
-        _stdscr_pseudo_panel.wendy = LINES;
-        _stdscr_pseudo_panel.wendx = COLS;
-        _stdscr_pseudo_panel.user = "stdscr";
-        _stdscr_pseudo_panel.obscure = (PANELOBS *)0;
-    }
-
-    if (pan)
-    {
-        int maxy, maxx;
-
-        pan->win = win;
-        pan->above = (PANEL *)0;
-        pan->below = (PANEL *)0;
-        getbegyx(win, pan->wstarty, pan->wstartx);
-        getmaxyx(win, maxy, maxx);
-        pan->wendy = pan->wstarty + maxy;
-        pan->wendx = pan->wstartx + maxx;
-#ifdef PANEL_DEBUG
-        pan->user = "new";
-#else
-        pan->user = (char *)0;
-#endif
-        pan->obscure = (PANELOBS *)0;
-        show_panel(pan);
-    }
-
-    return pan;
-}
-
-PANEL *panel_above(const PANEL *pan)
-{
-    return pan ? pan->above : _bottom_panel;
-}
-
-PANEL *panel_below(const PANEL *pan)
-{
-    return pan ? pan->below : _top_panel;
-}
-
-int panel_hidden(const PANEL *pan)
-{
-    if (!pan)
-        return ERR;
-
-    return _panel_is_linked(pan) ? ERR : OK;
-}
-
-const void *panel_userptr(const PANEL *pan)
-{
-    return pan ? pan->user : NULL;
-}
-
-WINDOW *panel_window(const PANEL *pan)
-{
-    PDC_LOG(("panel_window() - called\n"));
-
-    return pan->win;
-}
-
-int replace_panel(PANEL *pan, WINDOW *win)
-{
-    int maxy, maxx;
-
-    if (!pan)
-        return ERR;
-
-    if (_panel_is_linked(pan))
-        _override(pan, 0);
-
-    pan->win = win;
-    getbegyx(win, pan->wstarty, pan->wstartx);
-    getmaxyx(win, maxy, maxx);
-    pan->wendy = pan->wstarty + maxy;
-    pan->wendx = pan->wstartx + maxx;
-
-    if (_panel_is_linked(pan))
-        _calculate_obscure();
-
-    return OK;
-}
-
-int set_panel_userptr(PANEL *pan, const void *uptr)
-{
-    if (!pan)
-        return ERR;
-
-    pan->user = uptr;
-    return OK;
-}
-
-int show_panel(PANEL *pan)
-{
-    if (!pan)
-        return ERR;
-
-    if (pan == _top_panel)
-        return OK;
-
-    if (_panel_is_linked(pan))
-        hide_panel(pan);
-
-    _panel_link_top(pan);
-
-    return OK;
-}
-
-int top_panel(PANEL *pan)
-{
-    return show_panel(pan);
-}
-
-void update_panels(void)
-{
-    PANEL *pan;
-
-    PDC_LOG(("update_panels() - called\n"));
-
-    pan = _bottom_panel;
-
-    while (pan)
-    {
-        _override(pan, -1);
-        pan = pan->above;
-    }
-
-    if (is_wintouched(stdscr))
-        Wnoutrefresh(&_stdscr_pseudo_panel);
-    
-    pan = _bottom_panel;
-
-    while (pan)
-    {
-        if (is_wintouched(pan->win) || !pan->above)
-            Wnoutrefresh(pan);
-
-        pan = pan->above;
-    }
-}
diff --git a/src/other/PDCurses/pdcurses/printw.c b/src/other/PDCurses/pdcurses/printw.c
deleted file mode 100644
index 9be0c5f..0000000
--- a/src/other/PDCurses/pdcurses/printw.c
+++ /dev/null
@@ -1,123 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: printw.c,v 1.40 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         printw
-
-  Synopsis:
-        int printw(const char *fmt, ...);
-        int wprintw(WINDOW *win, const char *fmt, ...);
-        int mvprintw(int y, int x, const char *fmt, ...);
-        int mvwprintw(WINDOW *win, int y, int x, const char *fmt,...);
-        int vwprintw(WINDOW *win, const char *fmt, va_list varglist);
-        int vw_printw(WINDOW *win, const char *fmt, va_list varglist);
-
-  Description:
-        The printw() functions add a formatted string to the window at 
-        the current or specified cursor position. The format strings are 
-        the same as used in the standard C library's printf(). (printw() 
-        can be used as a drop-in replacement for printf().)
-
-  Return Value:
-        All functions return the number of characters printed, or 
-        ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        printw                                  Y       Y       Y
-        wprintw                                 Y       Y       Y
-        mvprintw                                Y       Y       Y
-        mvwprintw                               Y       Y       Y
-        vwprintw                                Y       -      4.0
-        vw_printw                               Y
-
-**man-end****************************************************************/
-
-#include <string.h>
-
-int vwprintw(WINDOW *win, const char *fmt, va_list varglist)
-{
-    char printbuf[513];
-    int len;
-
-    PDC_LOG(("vwprintw() - called\n"));
-
-#ifdef HAVE_VSNPRINTF
-    len = vsnprintf(printbuf, 512, fmt, varglist);
-#else
-    len = vsprintf(printbuf, fmt, varglist);
-#endif
-    return (waddstr(win, printbuf) == ERR) ? ERR : len;
-}
-
-int printw(const char *fmt, ...)
-{
-    va_list args;
-    int retval;
-
-    PDC_LOG(("printw() - called\n"));
-
-    va_start(args, fmt);
-    retval = vwprintw(stdscr, fmt, args);
-    va_end(args);
-
-    return retval;
-}
-
-int wprintw(WINDOW *win, const char *fmt, ...)
-{
-    va_list args;
-    int retval;
-
-    PDC_LOG(("wprintw() - called\n"));
-
-    va_start(args, fmt);
-    retval = vwprintw(win, fmt, args);
-    va_end(args);
-
-    return retval;
-}
-
-int mvprintw(int y, int x, const char *fmt, ...)
-{
-    va_list args;
-    int retval;
-
-    PDC_LOG(("mvprintw() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    va_start(args, fmt);
-    retval = vwprintw(stdscr, fmt, args);
-    va_end(args);
-
-    return retval;
-}
-
-int mvwprintw(WINDOW *win, int y, int x, const char *fmt, ...)
-{
-    va_list args;
-    int retval;
-
-    PDC_LOG(("mvwprintw() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    va_start(args, fmt);
-    retval = vwprintw(win, fmt, args);
-    va_end(args);
-
-    return retval;
-}
-
-int vw_printw(WINDOW *win, const char *fmt, va_list varglist)
-{
-    PDC_LOG(("vw_printw() - called\n"));
-
-    return vwprintw(win, fmt, varglist);
-}
diff --git a/src/other/PDCurses/pdcurses/refresh.c b/src/other/PDCurses/pdcurses/refresh.c
deleted file mode 100644
index 0b8e1ca..0000000
--- a/src/other/PDCurses/pdcurses/refresh.c
+++ /dev/null
@@ -1,276 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: refresh.c,v 1.56 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         refresh
-
-  Synopsis:
-        int refresh(void);
-        int wrefresh(WINDOW *win);
-        int wnoutrefresh(WINDOW *win);
-        int doupdate(void);
-        int redrawwin(WINDOW *win);
-        int wredrawln(WINDOW *win, int beg_line, int num_lines);
-
-  Description:
-        wrefresh() copies the named window to the physical terminal 
-        screen, taking into account what is already there in order to 
-        optimize cursor movement. refresh() does the same, using stdscr. 
-        These routines must be called to get any output on the terminal, 
-        as other routines only manipulate data structures. Unless 
-        leaveok() has been enabled, the physical cursor of the terminal 
-        is left at the location of the window's cursor.
-
-        wnoutrefresh() and doupdate() allow multiple updates with more 
-        efficiency than wrefresh() alone. wrefresh() works by first 
-        calling wnoutrefresh(), which copies the named window to the 
-        virtual screen.  It then calls doupdate(), which compares the 
-        virtual screen to the physical screen and does the actual 
-        update. A series of calls to wrefresh() will result in 
-        alternating calls to wnoutrefresh() and doupdate(), causing 
-        several bursts of output to the screen.  By first calling 
-        wnoutrefresh() for each window, it is then possible to call 
-        doupdate() only once.
-
-        In PDCurses, redrawwin() is equivalent to touchwin(), and 
-        wredrawln() is the same as touchline(). In some other curses 
-        implementations, there's a subtle distinction, but it has no 
-        meaning in PDCurses.
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        refresh                                 Y       Y       Y
-        wrefresh                                Y       Y       Y
-        wnoutrefresh                            Y       Y       Y
-        doupdate                                Y       Y       Y
-        redrawwin                               Y       -      4.0
-        wredrawln                               Y       -      4.0
-
-**man-end****************************************************************/
-
-#include <string.h>
-
-int wnoutrefresh(WINDOW *win)
-{
-    int begy, begx;     /* window's place on screen   */
-    int i, j;
-
-    PDC_LOG(("wnoutrefresh() - called: win=%p\n", win));
-
-    if ( !win || (win->_flags & (_PAD|_SUBPAD)) )
-        return ERR;
-
-    begy = win->_begy;
-    begx = win->_begx;
-
-    for (i = 0, j = begy; i < win->_maxy; i++, j++)
-    {
-        if (win->_firstch[i] != _NO_CHANGE)
-        {
-            chtype *src = win->_y[i];
-            chtype *dest = curscr->_y[j] + begx;
-
-            int first = win->_firstch[i]; /* first changed */
-            int last = win->_lastch[i];   /* last changed */
-
-            /* ignore areas on the outside that are marked as changed, 
-               but really aren't */
-
-            while (first <= last && src[first] == dest[first])
-                first++;
-
-            while (last >= first && src[last] == dest[last])
-                last--;
-
-            /* if any have really changed... */
-
-            if (first <= last)
-            {
-                memcpy(dest + first, src + first,
-                       (last - first + 1) * sizeof(chtype));
-
-                first += begx; 
-                last += begx;
-
-                if (first < curscr->_firstch[j] ||
-                    curscr->_firstch[j] == _NO_CHANGE)
-                    curscr->_firstch[j] = first;
-
-                if (last > curscr->_lastch[j])
-                    curscr->_lastch[j] = last;
-            }
-
-            win->_firstch[i] = _NO_CHANGE;  /* updated now */
-        }
-
-        win->_lastch[i] = _NO_CHANGE;       /* updated now */
-    }
-
-    if (win->_clear)
-        win->_clear = FALSE;
-
-    if (!win->_leaveit)
-    {
-        curscr->_cury = win->_cury + begy;
-        curscr->_curx = win->_curx + begx;
-    }
-
-    return OK;
-}
-
-int doupdate(void)
-{
-    int y;
-    bool clearall;
-
-    PDC_LOG(("doupdate() - called\n"));
-
-    if (!curscr)
-        return ERR;
-
-    if (isendwin())         /* coming back after endwin() called */
-    {
-        reset_prog_mode();
-        clearall = TRUE;
-        SP->alive = TRUE;   /* so isendwin() result is correct */
-    }
-    else
-        clearall = curscr->_clear;
-
-    for (y = 0; y < SP->lines; y++)
-    {
-        PDC_LOG(("doupdate() - Transforming line %d of %d: %s\n",
-                 y, SP->lines, (curscr->_firstch[y] != _NO_CHANGE) ?
-                 "Yes" : "No"));
-
-        if (clearall || curscr->_firstch[y] != _NO_CHANGE)
-        {
-            int first, last;
-
-            chtype *src = curscr->_y[y];
-            chtype *dest = pdc_lastscr->_y[y];
-
-            if (clearall)
-            {
-                first = 0;
-                last = COLS - 1;
-            }
-            else
-            {
-                first = curscr->_firstch[y];
-                last = curscr->_lastch[y];
-            }
-
-            while (first <= last)
-            {
-                int len = 0;
-
-                /* build up a run of changed cells; if two runs are
-                   separated by a single unchanged cell, ignore the
-                   break */
-
-                if (clearall)
-                    len = last - first + 1;
-                else
-                    while (first + len <= last &&
-                           (src[first + len] != dest[first + len] ||
-                            (len && first + len < last &&
-                             src[first + len + 1] != dest[first + len + 1])
-                           )
-                          )
-                        len++;
-
-                /* update the screen, and pdc_lastscr */
-
-                if (len)
-                {
-                    PDC_transform_line(y, first, len, src + first);
-                    memcpy(dest + first, src + first, len * sizeof(chtype));
-                    first += len;
-                }
-
-                /* skip over runs of unchanged cells */
-
-                while (first <= last && src[first] == dest[first])
-                    first++;
-            }
-
-            curscr->_firstch[y] = _NO_CHANGE;
-            curscr->_lastch[y] = _NO_CHANGE;
-        }
-    }
-
-    curscr->_clear = FALSE;
-
-    if (SP->visibility)
-        PDC_gotoyx(curscr->_cury, curscr->_curx);
-
-    SP->cursrow = curscr->_cury;
-    SP->curscol = curscr->_curx;
-
-    return OK;
-}
-
-int wrefresh(WINDOW *win)
-{
-    bool save_clear;
-
-    PDC_LOG(("wrefresh() - called\n"));
-
-    if ( !win || (win->_flags & (_PAD|_SUBPAD)) )
-        return ERR;
-
-    save_clear = win->_clear;
-
-    if (win == curscr)
-        curscr->_clear = TRUE;
-    else
-        wnoutrefresh(win);
-
-    if (save_clear && win->_maxy == SP->lines && win->_maxx == SP->cols)
-        curscr->_clear = TRUE;
-
-    return doupdate();
-}
-
-int refresh(void)
-{
-    PDC_LOG(("refresh() - called\n"));
-
-    return wrefresh(stdscr);
-}
-
-int wredrawln(WINDOW *win, int start, int num)
-{
-    int i;
-
-    PDC_LOG(("wredrawln() - called: win=%p start=%d num=%d\n",
-        win, start, num));
-
-    if (!win || start > win->_maxy || start + num > win->_maxy)
-        return ERR;
-
-    for (i = start; i < start + num; i++)
-    {
-        win->_firstch[i] = 0;
-        win->_lastch[i] = win->_maxx - 1;
-    }
-
-    return OK;
-}
-
-int redrawwin(WINDOW *win)
-{
-    PDC_LOG(("redrawwin() - called: win=%p\n", win));
-
-    if (!win)
-        return ERR;
-
-    return wredrawln(win, 0, win->_maxy);
-}
diff --git a/src/other/PDCurses/pdcurses/scanw.c b/src/other/PDCurses/pdcurses/scanw.c
deleted file mode 100644
index af2bcb9..0000000
--- a/src/other/PDCurses/pdcurses/scanw.c
+++ /dev/null
@@ -1,575 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: scanw.c,v 1.42 2008/07/14 12:22:13 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         scanw
-
-  Synopsis:
-        int scanw(const char *fmt, ...);
-        int wscanw(WINDOW *win, const char *fmt, ...);
-        int mvscanw(int y, int x, const char *fmt, ...);
-        int mvwscanw(WINDOW *win, int y, int x, const char *fmt, ...);
-        int vwscanw(WINDOW *win, const char *fmt, va_list varglist);
-        int vw_scanw(WINDOW *win, const char *fmt, va_list varglist);
-
-  Description:
-        These routines correspond to the standard C library's scanf()
-        family. Each gets a string from the window via wgetnstr(), and
-        uses the resulting line as input for the scan.
-
-  Return Value:
-        On successful completion, these functions return the number of
-        items successfully matched.  Otherwise they return ERR.
-
-  Portability                                X/Open    BSD    SYS V
-        scanw                                   Y       Y       Y
-        wscanw                                  Y       Y       Y
-        mvscanw                                 Y       Y       Y
-        mvwscanw                                Y       Y       Y
-        vwscanw                                 Y       -      4.0
-        vw_scanw                                Y
-
-**man-end****************************************************************/
-
-#include <string.h>
-
-#ifndef HAVE_VSSCANF
-# include <stdlib.h>
-# include <ctype.h>
-# include <limits.h>
-
-static int _pdc_vsscanf(const char *, const char *, va_list);
-
-# define vsscanf _pdc_vsscanf
-#endif
-
-int vwscanw(WINDOW *win, const char *fmt, va_list varglist)
-{
-    char scanbuf[256];
-
-    PDC_LOG(("vwscanw() - called\n"));
-
-    if (wgetnstr(win, scanbuf, 255) == ERR)
-        return ERR;
-
-    return vsscanf(scanbuf, fmt, varglist);
-}
-
-int scanw(const char *fmt, ...)
-{
-    va_list args;
-    int retval;
-
-    PDC_LOG(("scanw() - called\n"));
-
-    va_start(args, fmt);
-    retval = vwscanw(stdscr, fmt, args);
-    va_end(args);
-
-    return retval;
-}
-
-int wscanw(WINDOW *win, const char *fmt, ...)
-{
-    va_list args;
-    int retval;
-
-    PDC_LOG(("wscanw() - called\n"));
-
-    va_start(args, fmt);
-    retval = vwscanw(win, fmt, args);
-    va_end(args);
-
-    return retval;
-}
-
-int mvscanw(int y, int x, const char *fmt, ...)
-{
-    va_list args;
-    int retval;
-
-    PDC_LOG(("mvscanw() - called\n"));
-
-    if (move(y, x) == ERR)
-        return ERR;
-
-    va_start(args, fmt);
-    retval = vwscanw(stdscr, fmt, args);
-    va_end(args);
-
-    return retval;
-}
-
-int mvwscanw(WINDOW *win, int y, int x, const char *fmt, ...)
-{
-    va_list args;
-    int retval;
-
-    PDC_LOG(("mvscanw() - called\n"));
-
-    if (wmove(win, y, x) == ERR)
-        return ERR;
-
-    va_start(args, fmt);
-    retval = vwscanw(win, fmt, args);
-    va_end(args);
-
-    return retval;
-}
-
-int vw_scanw(WINDOW *win, const char *fmt, va_list varglist)
-{
-    PDC_LOG(("vw_scanw() - called\n"));
-
-    return vwscanw(win, fmt, varglist);
-}
-
-#ifndef HAVE_VSSCANF
-
-/* _pdc_vsscanf() - Internal routine to parse and format an input 
-   buffer. It scans a series of input fields; each field is formatted 
-   according to a supplied format string and the formatted input is 
-   stored in the variable number of addresses passed. Returns the number 
-   of input fields or EOF on error.
-
-   Don't compile this unless required. Some compilers (at least Borland 
-   C++ 3.0) have to link with math libraries due to the use of floats.
-
-   Based on vsscanf.c and input.c from emx 0.8f library source, 
-   Copyright (c) 1990-1992 by Eberhard Mattes, who has kindly agreed to 
-   its inclusion in PDCurses. */
-
-#define WHITE(x) ((x) == ' ' || (x) == '\t' || (x) == '\n')
-
-#define NEXT(x) \
-        do { \
-            x = *buf++; \
-            if (!x) \
-               return (count ? count : EOF); \
-            ++chars; \
-           } while (0)
-
-#define UNGETC() \
-        do { \
-            --buf; --chars; \
-           } while (0)
-
-static int _pdc_vsscanf(const char *buf, const char *fmt, va_list arg_ptr)
-{
-    int count, chars, c, width, radix, d, i;
-    int *int_ptr;
-    long *long_ptr;
-    short *short_ptr;
-    char *char_ptr;
-    unsigned char f;
-    char neg, assign, ok, size;
-    long n;
-    char map[256], end;
-    double dx, dd, *dbl_ptr;
-    float *flt_ptr;
-    int exp;
-    char eneg;
-
-    count = 0;
-    chars = 0;
-    c = 0;
-    while ((f = *fmt) != 0)
-    {
-        if (WHITE(f))
-        {
-            do
-            {
-                ++fmt;
-                f = *fmt;
-            }
-            while (WHITE(f));
-            do
-            {
-                c = *buf++;
-                if (!c)
-                {
-                    if (!f || count)
-                        return count;
-                    else
-                        return EOF;
-                } else
-                    ++chars;
-            }
-            while (WHITE(c));
-            UNGETC();
-        } else if (f != '%')
-        {
-            NEXT(c);
-            if (c != f)
-                return count;
-            ++fmt;
-        } else
-        {
-            assign = TRUE;
-            width = INT_MAX;
-            char_ptr = NULL;
-            ++fmt;
-            if (*fmt == '*')
-            {
-                assign = FALSE;
-                ++fmt;
-            }
-            if (isdigit(*fmt))
-            {
-                width = 0;
-                while (isdigit(*fmt))
-                    width = width * 10 + (*fmt++ - '0');
-                if (!width)
-                    width = INT_MAX;
-            }
-            size = 0;
-            if (*fmt == 'h' || *fmt == 'l')
-                size = *fmt++;
-            f = *fmt;
-            switch (f)
-            {
-            case 'c':
-                if (width == INT_MAX)
-                    width = 1;
-                if (assign)
-                    char_ptr = va_arg(arg_ptr, char *);
-                while (width > 0)
-                {
-                    --width;
-                    NEXT(c);
-                    if (assign)
-                    {
-                        *char_ptr++ = (char) c;
-                        ++count;
-                    }
-                }
-                break;
-            case '[':
-                memset(map, 0, 256);
-                end = 0;
-                ++fmt;
-                if (*fmt == '^')
-                {
-                    ++fmt;
-                    end = 1;
-                }
-                i = 0;
-                for (;;)
-                {
-                    f = (unsigned char) *fmt;
-                    switch (f)
-                    {
-                    case 0:
-                        /* avoid skipping past 0 */
-                        --fmt;
-                        NEXT(c);
-                        goto string;
-                    case ']':
-                        if (i > 0)
-                        {
-                            NEXT(c);
-                            goto string;
-                        }
-                        /* no break */
-                    default:
-                        if (fmt[1] == '-' && fmt[2]
-                            && f < (unsigned char)fmt[2])
-                        {
-                            memset(map + f, 1, (unsigned char)fmt[2] - f);
-                            fmt += 2;
-                        }
-                        else
-                            map[f] = 1;
-                        break;
-                    }
-                    ++fmt;
-                    ++i;
-                }
-            case 's':
-                memset(map, 0, 256);
-                map[' '] = 1;
-                map['\n'] = 1;
-                map['\r'] = 1;
-                map['\t'] = 1;
-                end = 1;
-                do
-                {
-                    NEXT(c);
-                }
-                while (WHITE(c));
-            string:
-                if (assign)
-                    char_ptr = va_arg(arg_ptr, char *);
-                while (width > 0 && map[(unsigned char) c] != end)
-                {
-                    --width;
-                    if (assign)
-                        *char_ptr++ = (char) c;
-                    c = *buf++;
-                    if (!c)
-                        break;
-                    else
-                        ++chars;
-                }
-                if (assign)
-                {
-                    *char_ptr = 0;
-                    ++count;
-                }
-                if (!c)
-                    return count;
-                else
-                    UNGETC();
-                break;
-            case 'f':
-            case 'e':
-            case 'E':
-            case 'g':
-            case 'G':
-                neg = ok = FALSE;
-                dx = 0.0;
-                do
-                {
-                    NEXT(c);
-                }
-                while (WHITE(c));
-                if (c == '+')
-                {
-                    NEXT(c);
-                    --width;
-                } else if (c == '-')
-                {
-                    neg = TRUE;
-                    NEXT(c);
-                    --width;
-                }
-                while (width > 0 && isdigit(c))
-                {
-                    --width;
-                    dx = dx * 10.0 + (double) (c - '0');
-                    ok = TRUE;
-                    c = *buf++;
-                    if (!c)
-                        break;
-                    else
-                        ++chars;
-                }
-                if (width > 0 && c == '.')
-                {
-                    --width;
-                    dd = 10.0;
-                    NEXT(c);
-                    while (width > 0 && isdigit(c))
-                    {
-                        --width;
-                        dx += (double) (c - '0') / dd;
-                        dd *= 10.0;
-                        ok = TRUE;
-                        c = *buf++;
-                        if (!c)
-                            break;
-                        else
-                            ++chars;
-                    }
-                }
-                if (!ok)
-                    return count;
-                if (width > 0 && (c == 'e' || c == 'E'))
-                {
-                    eneg = FALSE;
-                    exp = 0;
-                    NEXT(c);
-                    --width;
-                    if (width > 0 && c == '+')
-                    {
-                        NEXT(c);
-                        --width;
-                    } else if (width > 0 && c == '-')
-                    {
-                        eneg = TRUE;
-                        NEXT(c);
-                        --width;
-                    }
-                    if (!(width > 0 && isdigit(c)))
-                    {
-                        UNGETC();
-                        return count;
-                    }
-                    while (width > 0 && isdigit(c))
-                    {
-                        --width;
-                        exp = exp * 10 + (c - '0');
-                        c = *buf++;
-                        if (!c)
-                            break;
-                        else
-                            ++chars;
-                    }
-                    if (eneg)
-                        exp = -exp;
-                    while (exp > 0)
-                    {
-                        dx *= 10.0;
-                        --exp;
-                    }
-                    while (exp < 0)
-                    {
-                        dx /= 10.0;
-                        ++exp;
-                    }
-                }
-                if (assign)
-                {
-                    if (neg)
-                        dx = -dx;
-                    if (size == 'l')
-                    {
-                        dbl_ptr = va_arg(arg_ptr, double *);
-                        *dbl_ptr = dx;
-                    }
-                    else
-                    {
-                        flt_ptr = va_arg(arg_ptr, float *);
-                        *flt_ptr = (float)dx;
-                    }
-                    ++count;
-                }
-                if (!c)
-                    return count;
-                else
-                    UNGETC();
-                break;
-            case 'i':
-                neg = FALSE;
-                radix = 10;
-                do
-                {
-                    NEXT(c);
-                }
-                while (WHITE(c));
-                if (!(width > 0 && c == '0'))
-                    goto scan_complete_number;
-                NEXT(c);
-                --width;
-                if (width > 0 && (c == 'x' || c == 'X'))
-                {
-                    NEXT(c);
-                    radix = 16;
-                    --width;
-                }
-                else if (width > 0 && (c >= '0' && c <= '7'))
-                    radix = 8;
-                goto scan_unsigned_number;
-            case 'd':
-            case 'u':
-            case 'o':
-            case 'x':
-            case 'X':
-                do
-                {
-                    NEXT(c);
-                }
-                while (WHITE(c));
-                switch (f)
-                {
-                case 'o':
-                    radix = 8;
-                    break;
-                case 'x':
-                case 'X':
-                    radix = 16;
-                    break;
-                default:
-                    radix = 10;
-                    break;
-                }
-            scan_complete_number:
-                neg = FALSE;
-                if (width > 0 && c == '+')
-                {
-                    NEXT(c);
-                    --width;
-                }
-                else if (width > 0 && c == '-' && radix == 10)
-                {
-                    neg = TRUE;
-                    NEXT(c);
-                    --width;
-                }
-            scan_unsigned_number:
-                n = 0;
-                ok = FALSE;
-                while (width > 0)
-                {
-                    --width;
-                    if (isdigit(c))
-                        d = c - '0';
-                    else if (isupper(c))
-                        d = c - 'A' + 10;
-                    else if (islower(c))
-                        d = c - 'a' + 10;
-                    else
-                        break;
-                    if (d < 0 || d >= radix)
-                        break;
-                    ok = TRUE;
-                    n = n * radix + d;
-                    c = *buf++;
-                    if (!c)
-                        break;
-                    else
-                        ++chars;
-                }
-                if (!ok)
-                    return count;
-                if (assign)
-                {
-                    if (neg)
-                        n = -n;
-                    switch (size)
-                    {
-                    case 'h':
-                        short_ptr = va_arg(arg_ptr, short *);
-                        *short_ptr = (short) n;
-                        break;
-                    case 'l':
-                        long_ptr = va_arg(arg_ptr, long *);
-                        *long_ptr = (long) n;
-                        break;
-                    default:
-                        int_ptr = va_arg(arg_ptr, int *);
-                        *int_ptr = (int) n;
-                    }
-                    ++count;
-                }
-                if (!c)
-                    return count;
-                else
-                    UNGETC();
-                break;
-            case 'n':
-                if (assign)
-                {
-                    int_ptr = va_arg(arg_ptr, int *);
-                    *int_ptr = chars;
-                    ++count;
-                }
-                break;
-            default:
-                if (!f) /* % at end of string */
-                    return count;
-                NEXT(c);
-                if (c != f)
-                    return count;
-                break;
-            }
-            ++fmt;
-        }
-    }
-    return count;
-}
-#endif /* HAVE_VSSCANF */
diff --git a/src/other/PDCurses/pdcurses/scr_dump.c b/src/other/PDCurses/pdcurses/scr_dump.c
deleted file mode 100644
index e02046e..0000000
--- a/src/other/PDCurses/pdcurses/scr_dump.c
+++ /dev/null
@@ -1,210 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: scr_dump.c,v 1.30 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         scr_dump
-
-  Synopsis:
-        int putwin(WINDOW *win, FILE *filep);
-        WINDOW *getwin(FILE *filep);
-        int scr_dump(const char *filename);
-        int scr_init(const char *filename);
-        int scr_restore(const char *filename);
-        int scr_set(const char *filename);
-
-  Description:
-        getwin() reads window-related data previously stored in a file 
-        by putwin(). It then creates and initialises a new window using 
-        that data.
-
-        putwin() writes all data associated with a window into a file, 
-        using an unspecified format. This information can be retrieved 
-        later using getwin().
-
-        scr_dump() writes the current contents of the virtual screen to 
-        the file named by filename in an unspecified format.
-
-        scr_restore() function sets the virtual screen to the contents 
-        of the file named by filename, which must have been written 
-        using scr_dump(). The next refresh operation restores the screen 
-        to the way it looked in the dump file.
-
-        In PDCurses, scr_init() does nothing, and scr_set() is a synonym 
-        for scr_restore(). Also, scr_dump() and scr_restore() save and 
-        load from curscr. This differs from some other implementations, 
-        where scr_init() works with curscr, and scr_restore() works with 
-        newscr; but the effect should be the same. (PDCurses has no 
-        newscr.)
-
-  Return Value:
-        On successful completion, getwin() returns a pointer to the 
-        window it created. Otherwise, it returns a null pointer. Other 
-        functions return OK or ERR.
-
-  Portability                                X/Open    BSD    SYS V
-        putwin                                  Y
-        getwin                                  Y
-        scr_dump                                Y
-        scr_init                                Y
-        scr_restore                             Y
-        scr_set                                 Y
-
-**man-end****************************************************************/
-
-#include <stdlib.h>
-#include <string.h>
-
-#define DUMPVER 1   /* Should be updated whenever the WINDOW struct is
-                       changed */
-
-int putwin(WINDOW *win, FILE *filep)
-{
-    static const char *marker = "PDC";
-    static const unsigned char version = DUMPVER;
-
-    PDC_LOG(("putwin() - called\n"));
-
-    /* write the marker and the WINDOW struct */
-
-    if (filep && fwrite(marker, strlen(marker), 1, filep)
-              && fwrite(&version, 1, 1, filep)
-              && fwrite(win, sizeof(WINDOW), 1, filep))
-    {
-        int i;
-
-        /* write each line */
-
-        for (i = 0; i < win->_maxy && win->_y[i]; i++)
-            if (!fwrite(win->_y[i], win->_maxx * sizeof(chtype), 1, filep))
-                return ERR;
-
-        return OK;
-    }
-
-    return ERR;
-}
-
-WINDOW *getwin(FILE *filep)
-{
-    WINDOW *win;
-    char marker[4];
-    int i, nlines, ncols;
-
-    PDC_LOG(("getwin() - called\n"));
-
-    if ( !(win = malloc(sizeof(WINDOW))) )
-        return (WINDOW *)NULL;
-
-    /* check for the marker, and load the WINDOW struct */
-
-    if (!filep || !fread(marker, 4, 1, filep) || strncmp(marker, "PDC", 3)
-        || marker[3] != DUMPVER || !fread(win, sizeof(WINDOW), 1, filep))
-    {
-        free(win);
-        return (WINDOW *)NULL;
-    }
-
-    nlines = win->_maxy;
-    ncols = win->_maxx;
-
-    /* allocate the line pointer array */
-
-    if ( !(win->_y = malloc(nlines * sizeof(chtype *))) )
-    {
-        free(win);
-        return (WINDOW *)NULL;
-    }
-
-    /* allocate the minchng and maxchng arrays */
-
-    if ( !(win->_firstch = malloc(nlines * sizeof(int))) )
-    {
-        free(win->_y);
-        free(win);
-        return (WINDOW *)NULL;
-    }
-
-    if ( !(win->_lastch = malloc(nlines * sizeof(int))) )
-    {
-        free(win->_firstch);
-        free(win->_y);
-        free(win);
-        return (WINDOW *)NULL;
-    }
-
-    /* allocate the lines */
-
-    if ( !(win = PDC_makelines(win)) )
-        return (WINDOW *)NULL;
-
-    /* read them */
-
-    for (i = 0; i < nlines; i++)
-    {
-        if (!fread(win->_y[i], ncols * sizeof(chtype), 1, filep))
-        {
-            delwin(win);
-            return (WINDOW *)NULL;
-        }
-    }
-
-    touchwin(win);
-
-    return win;
-}
-
-int scr_dump(const char *filename)
-{
-    FILE *filep;
-
-    PDC_LOG(("scr_dump() - called: filename %s\n", filename));
-
-    if (filename && (filep = fopen(filename, "wb")) != NULL)
-    {
-        int result = putwin(curscr, filep);
-        fclose(filep);
-        return result;
-    }
-
-    return ERR;
-}
-
-int scr_init(const char *filename)
-{
-    PDC_LOG(("scr_init() - called: filename %s\n", filename));
-
-    return OK;
-}
-
-int scr_restore(const char *filename)
-{
-    FILE *filep;
-
-    PDC_LOG(("scr_restore() - called: filename %s\n", filename));
-
-    if (filename && (filep = fopen(filename, "rb")) != NULL)
-    {
-        WINDOW *replacement = getwin(filep);
-        fclose(filep);
-
-        if (replacement)
-        {
-            int result = overwrite(replacement, curscr);
-            delwin(replacement);
-            return result;
-        }
-    }
-
-    return ERR;
-}
-
-int scr_set(const char *filename)
-{
-    PDC_LOG(("scr_set() - called: filename %s\n", filename));
-
-    return scr_restore(filename);
-}
diff --git a/src/other/PDCurses/pdcurses/scroll.c b/src/other/PDCurses/pdcurses/scroll.c
deleted file mode 100644
index c53e295..0000000
--- a/src/other/PDCurses/pdcurses/scroll.c
+++ /dev/null
@@ -1,98 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: scroll.c,v 1.36 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         scroll
-
-  Synopsis:
-        int scroll(WINDOW *win);
-        int scrl(int n);
-        int wscrl(WINDOW *win, int n);
-
-  Description:
-        scroll() causes the window to scroll up one line.  This involves 
-        moving the lines in the window data strcture.
- 
-        With a positive n, scrl() and wscrl() scroll the window up n 
-        lines (line i + n becomes i); otherwise they scroll the window 
-        down n lines.
- 
-        For these functions to work, scrolling must be enabled via 
-        scrollok(). Note also that scrolling is not allowed if the 
-        supplied window is a pad.
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        scroll                                  Y       Y       Y
-        scrl                                    Y       -      4.0
-        wscrl                                   Y       -      4.0
-
-**man-end****************************************************************/
-
-int wscrl(WINDOW *win, int n)
-{
-    int i, l, dir, start, end;
-    chtype blank, *temp;
-
-    /* Check if window scrolls. Valid for window AND pad */
-
-    if (!win || !win->_scroll || !n)
-        return ERR;
-
-    blank = win->_bkgd;
-
-    if (n > 0)
-    {
-        start = win->_tmarg;
-        end = win->_bmarg;
-        dir = 1;
-    }
-    else
-    {
-        start = win->_bmarg;
-        end = win->_tmarg;
-        dir = -1;
-    }
-
-    for (l = 0; l < (n * dir); l++) 
-    {
-        temp = win->_y[start];
-
-        /* re-arrange line pointers */
-
-        for (i = start; i != end; i += dir)
-            win->_y[i] = win->_y[i + dir];
-
-        win->_y[end] = temp;
-
-        /* make a blank line */
-
-        for (i = 0; i < win->_maxx; i++)
-            *temp++ = blank;
-    }
-
-    touchline(win, win->_tmarg, win->_bmarg - win->_tmarg + 1);
-
-    PDC_sync(win);
-    return OK;
-}
-
-int scrl(int n)
-{
-    PDC_LOG(("scrl() - called\n"));
-
-    return wscrl(stdscr, n);
-}
-
-int scroll(WINDOW *win)
-{
-    PDC_LOG(("scroll() - called\n"));
-
-    return wscrl(win, 1);
-}
diff --git a/src/other/PDCurses/pdcurses/slk.c b/src/other/PDCurses/pdcurses/slk.c
deleted file mode 100644
index f97f406..0000000
--- a/src/other/PDCurses/pdcurses/slk.c
+++ /dev/null
@@ -1,643 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: slk.c,v 1.61 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         slk
-
-  Synopsis:
-        int slk_init(int fmt);
-        int slk_set(int labnum, const char *label, int justify);
-        int slk_refresh(void);
-        int slk_noutrefresh(void);
-        char *slk_label(int labnum);
-        int slk_clear(void);
-        int slk_restore(void);
-        int slk_touch(void);
-        int slk_attron(const chtype attrs);
-        int slk_attr_on(const attr_t attrs, void *opts);
-        int slk_attrset(const chtype attrs);
-        int slk_attr_set(const attr_t attrs, short color_pair, void *opts);
-        int slk_attroff(const chtype attrs);
-        int slk_attr_off(const attr_t attrs, void *opts);
-        int slk_color(short color_pair);
-
-        int slk_wset(int labnum, const wchar_t *label, int justify);
-
-        int PDC_mouse_in_slk(int y, int x);
-        void PDC_slk_free(void);
-        void PDC_slk_initialize(void);
-
-        wchar_t *slk_wlabel(int labnum)
-
-  Description:
-        These functions manipulate a window that contain Soft Label Keys 
-        (SLK). To use the SLK functions, a call to slk_init() must be 
-        made BEFORE initscr() or newterm(). slk_init() removes 1 or 2 
-        lines from the useable screen, depending on the format selected.
-
-        The line(s) removed from the screen are used as a separate 
-        window, in which SLKs are displayed.
-
-        slk_init() requires a single parameter which describes the 
-        format of the SLKs as follows:
- 
-                0       3-2-3 format
-                1       4-4 format
-                2       4-4-4 format (ncurses extension)
-                3       4-4-4 format with index line (ncurses extension)
-                        2 lines used
-                55      5-5 format (pdcurses format)
-
-        slk_refresh(), slk_noutrefresh() and slk_touch() are analogous
-        to refresh(), noutrefresh() and touch().
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        slk_init                                Y       -       Y
-        slk_set                                 Y       -       Y
-        slk_refresh                             Y       -       Y
-        slk_noutrefresh                         Y       -       Y
-        slk_label                               Y       -       Y
-        slk_clear                               Y       -       Y
-        slk_restore                             Y       -       Y
-        slk_touch                               Y       -       Y
-        slk_attron                              Y       -       Y
-        slk_attrset                             Y       -       Y
-        slk_attroff                             Y       -       Y
-        slk_attr_on                             Y
-        slk_attr_set                            Y
-        slk_attr_off                            Y
-        slk_wset                                Y
-        PDC_mouse_in_slk                        -       -       -
-        PDC_slk_free                            -       -       -
-        PDC_slk_initialize                      -       -       -
-        slk_wlabel                              -       -       -
-
-**man-end****************************************************************/
-
-#include <stdlib.h>
-
-enum { LABEL_NORMAL = 8, LABEL_EXTENDED = 10, LABEL_NCURSES_EXTENDED = 12 };
-
-static int label_length = 0;
-static int labels = 0;
-static int label_fmt = 0;
-static int label_line = 0;
-static bool hidden = FALSE;
-
-static struct SLK {
-    chtype label[32];
-    int len;
-    int format;
-    int start_col;
-} *slk = (struct SLK *)NULL;
-
-/* slk_init() is the slk initialization routine.
-   This must be called before initscr().
-
-   label_fmt = 0, 1 or 55.
-       0 = 3-2-3 format
-       1 = 4 - 4 format
-       2 = 4-4-4 format (ncurses extension for PC 12 function keys)
-       3 = 4-4-4 format (ncurses extension for PC 12 function keys -
-    with index line)
-      55 = 5 - 5 format (extended for PC, 10 function keys) */
-
-int slk_init(int fmt)
-{
-    PDC_LOG(("slk_init() - called\n"));
-
-    if (SP)
-        return ERR;
-
-    switch (fmt) 
-    {
-    case 0:  /* 3 - 2 - 3 */
-        labels = LABEL_NORMAL;
-        break;
-
-    case 1:   /* 4 - 4 */
-        labels = LABEL_NORMAL;
-        break;
-
-    case 2:   /* 4 4 4 */
-        labels = LABEL_NCURSES_EXTENDED;
-        break;
-
-    case 3:   /* 4 4 4  with index */
-        labels = LABEL_NCURSES_EXTENDED;
-        break;
-
-    case 55:  /* 5 - 5 */
-        labels = LABEL_EXTENDED;
-        break;
-
-    default:
-        return ERR;
-    }
-
-    label_fmt = fmt;
-
-    slk = calloc(labels, sizeof(struct SLK));
-
-    if (!slk)
-        labels = 0;
-
-    return slk ? OK : ERR;
-}
-
-/* draw a single button */
-
-static void _drawone(int num)
-{
-    int i, col, slen;
-
-    if (hidden)
-        return;
-
-    slen = slk[num].len;
-
-    switch (slk[num].format)
-    {
-    case 0:  /* LEFT */
-        col = 0;
-        break;
-
-    case 1:  /* CENTER */
-        col = (label_length - slen) / 2;
-
-        if (col + slen > label_length)
-            --col;
-        break;
-
-    default:  /* RIGHT */
-        col = label_length - slen;
-    }
-
-    wmove(SP->slk_winptr, label_line, slk[num].start_col);
-
-    for (i = 0; i < label_length; ++i)
-        waddch(SP->slk_winptr, (i >= col && i < (col + slen)) ?
-               slk[num].label[i - col] : ' ');
-}
-
-/* redraw each button */
-
-static void _redraw(void)
-{
-    int i;
-
-    for (i = 0; i < labels; ++i)
-        _drawone(i);
-}
-
-/* slk_set() Used to set a slk label to a string.
-
-   labnum  = 1 - 8 (or 10) (number of the label)
-   label   = string (8 or 7 bytes total), or NULL
-   justify = 0 : left, 1 : center, 2 : right  */
-
-int slk_set(int labnum, const char *label, int justify)
-{
-#ifdef PDC_WIDE
-    wchar_t wlabel[32];
-
-    PDC_mbstowcs(wlabel, label, 31);
-    return slk_wset(labnum, wlabel, justify);
-#else
-    PDC_LOG(("slk_set() - called\n"));
-
-    if (labnum < 1 || labnum > labels || justify < 0 || justify > 2)
-        return ERR;
-
-    labnum--;
-
-    if (!label || !(*label)) 
-    {
-        /* Clear the label */
-
-        *slk[labnum].label = 0;
-        slk[labnum].format = 0;
-        slk[labnum].len = 0;
-    }
-    else
-    {
-        int i, j = 0;
-
-        /* Skip leading spaces */
-
-        while (label[j] == ' ')
-            j++;
-
-        /* Copy it */
-
-        for (i = 0; i < label_length; i++)
-        {
-            chtype ch = label[i + j];
-
-            slk[labnum].label[i] = ch;
-
-            if (!ch)
-                break;
-        }
-
-        /* Drop trailing spaces */
-
-        while ((i + j) && (label[i + j - 1] == ' '))
-            i--;
-
-        slk[labnum].label[i] = 0;
-        slk[labnum].format = justify;
-        slk[labnum].len = i;
-    }
-
-    _drawone(labnum);
-
-    return OK;
-#endif
-}
-
-int slk_refresh(void)
-{
-    PDC_LOG(("slk_refresh() - called\n"));
-
-    return (slk_noutrefresh() == ERR) ? ERR : doupdate();
-}
-
-int slk_noutrefresh(void)
-{
-    PDC_LOG(("slk_noutrefresh() - called\n"));
-
-    return wnoutrefresh(SP->slk_winptr);
-}
-
-char *slk_label(int labnum)
-{
-    static char temp[33];
-#ifdef PDC_WIDE
-    wchar_t *wtemp = slk_wlabel(labnum);
-
-    PDC_wcstombs(temp, wtemp, 32);
-#else
-    chtype *p;
-    int i;
-
-    PDC_LOG(("slk_label() - called\n"));
-
-    if (labnum < 1 || labnum > labels)
-        return (char *)0;
-
-    for (i = 0, p = slk[labnum - 1].label; *p; i++)
-        temp[i] = *p++;
-
-    temp[i] = '\0';
-#endif
-    return temp;
-}
-
-int slk_clear(void)
-{
-    PDC_LOG(("slk_clear() - called\n"));
-
-    hidden = TRUE;
-    werase(SP->slk_winptr);
-    return wrefresh(SP->slk_winptr);
-}
-
-int slk_restore(void)
-{
-    PDC_LOG(("slk_restore() - called\n"));
-
-    hidden = FALSE;
-    _redraw();
-    return wrefresh(SP->slk_winptr);
-}
-
-int slk_touch(void)
-{
-    PDC_LOG(("slk_touch() - called\n"));
-
-    return touchwin(SP->slk_winptr);
-}
-
-int slk_attron(const chtype attrs)
-{
-    int rc;
-
-    PDC_LOG(("slk_attron() - called\n"));
-
-    rc = wattron(SP->slk_winptr, attrs);
-    _redraw();
-
-    return rc;
-}
-
-int slk_attr_on(const attr_t attrs, void *opts)
-{
-    PDC_LOG(("slk_attr_on() - called\n"));
-
-    return slk_attron(attrs);
-}
-
-int slk_attroff(const chtype attrs)
-{
-    int rc;
-
-    PDC_LOG(("slk_attroff() - called\n"));
-
-    rc = wattroff(SP->slk_winptr, attrs);
-    _redraw();
-
-    return rc;
-}
-
-int slk_attr_off(const attr_t attrs, void *opts)
-{
-    PDC_LOG(("slk_attr_off() - called\n"));
-
-    return slk_attroff(attrs);
-}
-
-int slk_attrset(const chtype attrs)
-{
-    int rc;
-
-    PDC_LOG(("slk_attrset() - called\n"));
-
-    rc = wattrset(SP->slk_winptr, attrs);
-    _redraw();
-
-    return rc;
-}
-
-int slk_color(short color_pair)
-{
-    int rc;
-
-    PDC_LOG(("slk_color() - called\n"));
-
-    rc = wcolor_set(SP->slk_winptr, color_pair, NULL);
-    _redraw();
-
-    return rc;
-}
-
-int slk_attr_set(const attr_t attrs, short color_pair, void *opts)
-{
-    PDC_LOG(("slk_attr_set() - called\n"));
-
-    return slk_attrset(attrs | COLOR_PAIR(color_pair));
-}
-
-static void _slk_calc(void)
-{
-    int i, center, col = 0;
-    label_length = COLS / labels;
-
-    if (label_length > 31)
-        label_length = 31;
-
-    switch (label_fmt)
-    {
-    case 0:     /* 3 - 2 - 3 F-Key layout */
-
-        --label_length;
-
-        slk[0].start_col = col;
-        slk[1].start_col = (col += label_length);
-        slk[2].start_col = (col += label_length);
-
-        center = COLS / 2;
-
-        slk[3].start_col = center - label_length + 1;
-        slk[4].start_col = center + 1;
-
-        col = COLS - (label_length * 3) + 1;
-
-        slk[5].start_col = col;
-        slk[6].start_col = (col += label_length);
-        slk[7].start_col = (col += label_length);
-        break;
-
-    case 1:     /* 4 - 4 F-Key layout */
-
-        for (i = 0; i < 8; i++)
-        {
-            slk[i].start_col = col;
-            col += label_length;
-
-            if (i == 3)
-                col = COLS - (label_length * 4) + 1; 
-        }
-
-        break;
-
-    case 2:     /* 4 4 4 F-Key layout */
-    case 3:     /* 4 4 4 F-Key layout with index */
-
-        for (i = 0; i < 4; i++)
-        {
-            slk[i].start_col = col;
-            col += label_length;
-        }
-
-        center = COLS/2;
-
-        slk[4].start_col = center - (label_length * 2) + 1;
-        slk[5].start_col = center - label_length - 1;
-        slk[6].start_col = center + 1;
-        slk[7].start_col = center + label_length + 1;
-
-        col = COLS - (label_length * 4) + 1;
-
-        for (i = 8; i < 12; i++)
-        {
-            slk[i].start_col = col;
-            col += label_length;
-        }
-
-        break;
-
-    default:    /* 5 - 5 F-Key layout */
-
-        for (i = 0; i < 10; i++)
-        {
-            slk[i].start_col = col;
-            col += label_length;
-
-            if (i == 4)
-                col = COLS - (label_length * 5) + 1;
-        }
-    }
-
-    --label_length;
-
-    /* make sure labels are all in window */
-
-    _redraw();
-}
-
-void PDC_slk_initialize(void)
-{
-    if (slk)
-    {
-        if (label_fmt == 3)
-        {
-            SP->slklines = 2;
-            label_line = 1;
-        }
-        else
-            SP->slklines = 1;
-
-        if (!SP->slk_winptr)
-        {
-            if ( !(SP->slk_winptr = newwin(SP->slklines, COLS, 
-                                           LINES - SP->slklines, 0)) )
-                return;
-
-            wattrset(SP->slk_winptr, A_REVERSE);
-        }
-
-        _slk_calc();
-
-        /* if we have an index line, display it now */
-
-        if (label_fmt == 3)
-        {
-            chtype save_attr;
-            int i;
-
-            save_attr = SP->slk_winptr->_attrs;
-            wattrset(SP->slk_winptr, A_NORMAL);
-            wmove(SP->slk_winptr, 0, 0);
-            whline(SP->slk_winptr, 0, COLS);
-
-            for (i = 0; i < labels; i++)
-                mvwprintw(SP->slk_winptr, 0, slk[i].start_col, "F%d", i + 1);
-
-            SP->slk_winptr->_attrs = save_attr;
-        }
-
-        touchwin(SP->slk_winptr);
-    }
-}
-
-void PDC_slk_free(void)
-{
-    if (slk)
-    {
-        if (SP->slk_winptr)
-        {
-            delwin(SP->slk_winptr);
-            SP->slk_winptr = (WINDOW *)NULL;
-        }
-
-        free(slk);
-        slk = (struct SLK *)NULL;
-
-        label_length = 0;
-        labels = 0;
-        label_fmt = 0;
-        label_line = 0;
-        hidden = FALSE;
-    }
-}
-
-int PDC_mouse_in_slk(int y, int x)
-{
-    int i;
-
-    PDC_LOG(("PDC_mouse_in_slk() - called: y->%d x->%d\n", y, x));
-
-    /* If the line on which the mouse was clicked is NOT the last line 
-       of the screen, we are not interested in it. */
-
-    if (!slk || !SP->slk_winptr || (y != SP->slk_winptr->_begy + label_line))
-        return 0;
-
-    for (i = 0; i < labels; i++)
-        if (x >= slk[i].start_col && x < (slk[i].start_col + label_length))
-            return i + 1;
-
-    return 0;
-}
-
-#ifdef PDC_WIDE
-int slk_wset(int labnum, const wchar_t *label, int justify)
-{
-    PDC_LOG(("slk_wset() - called\n"));
-
-    if (labnum < 1 || labnum > labels || justify < 0 || justify > 2)
-        return ERR;
-
-    labnum--;
-
-    if (!label || !(*label)) 
-    {
-        /* Clear the label */
-
-        *slk[labnum].label = 0;
-        slk[labnum].format = 0;
-        slk[labnum].len = 0;
-    }
-    else
-    {
-        int i, j = 0;
-
-        /* Skip leading spaces */
-
-        while (label[j] == L' ')
-            j++;
-
-        /* Copy it */
-
-        for (i = 0; i < label_length; i++)
-        {
-            chtype ch = label[i + j];
-
-            slk[labnum].label[i] = ch;
-
-            if (!ch)
-                break;
-        }
-
-        /* Drop trailing spaces */
-
-        while ((i + j) && (label[i + j - 1] == L' '))
-            i--;
-
-        slk[labnum].label[i] = 0;
-        slk[labnum].format = justify;
-        slk[labnum].len = i;
-    }
-
-    _drawone(labnum);
-
-    return OK;
-}
-
-wchar_t *slk_wlabel(int labnum)
-{
-    static wchar_t temp[33];
-    chtype *p;
-    int i;
-
-    PDC_LOG(("slk_wlabel() - called\n"));
-
-    if (labnum < 1 || labnum > labels)
-        return (wchar_t *)0;
-
-    for (i = 0, p = slk[labnum - 1].label; *p; i++)
-        temp[i] = *p++;
-
-    temp[i] = '\0';
-
-    return temp;
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/termattr.c b/src/other/PDCurses/pdcurses/termattr.c
deleted file mode 100644
index 06e9ee8..0000000
--- a/src/other/PDCurses/pdcurses/termattr.c
+++ /dev/null
@@ -1,176 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: termattr.c,v 1.54 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         termattr
-
-  Synopsis:
-        int baudrate(void);
-        char erasechar(void);
-        bool has_ic(void);
-        bool has_il(void);
-        char killchar(void);
-        char *longname(void);
-        chtype termattrs(void);
-        attr_t term_attrs(void);
-        char *termname(void);
-
-        int erasewchar(wchar_t *ch);
-        int killwchar(wchar_t *ch);
-
-        char wordchar(void);
-
-  Description:
-        baudrate() is supposed to return the output speed of the 
-        terminal. In PDCurses, it simply returns INT_MAX.
-
-        has_ic and has_il() return TRUE. These functions have meaning in 
-        some other implementations of curses.
-
-        erasechar() and killchar() return ^H and ^U, respectively -- the 
-        ERASE and KILL characters. In other curses implementations, 
-        these may vary by terminal type. erasewchar() and killwchar() 
-        are the wide-character versions; they take a pointer to a 
-        location in which to store the character, and return OK or ERR.
-
-        longname() returns a pointer to a static area containing a
-        verbose description of the current terminal. The maximum length
-        of the string is 128 characters.  It is defined only after the
-        call to initscr() or newterm().
-
-        termname() returns a pointer to a static area containing a
-        short description of the current terminal (14 characters).
-
-        termattrs() returns a logical OR of all video attributes
-        supported by the terminal.
-
-        wordchar() is a PDCurses extension of the concept behind the 
-        functions erasechar() and killchar(), returning the "delete 
-        word" character, ^W.
-
-  Portability                                X/Open    BSD    SYS V
-        baudrate                                Y       Y       Y
-        erasechar                               Y       Y       Y
-        has_ic                                  Y       Y       Y
-        has_il                                  Y       Y       Y
-        killchar                                Y       Y       Y
-        longname                                Y       Y       Y
-        termattrs                               Y       Y       Y
-        termname                                Y       Y       Y
-        erasewchar                              Y
-        killwchar                               Y
-        term_attrs                              Y
-        wordchar                                -       -       -
-
-**man-end****************************************************************/
-
-#include <string.h>
-#include <limits.h>
-
-int baudrate(void)
-{
-    PDC_LOG(("baudrate() - called\n"));
-
-    return INT_MAX;
-}
-
-char erasechar(void)
-{
-    PDC_LOG(("erasechar() - called\n"));
-
-    return _ECHAR;      /* character delete char (^H) */
-}
-
-bool has_ic(void)
-{
-    PDC_LOG(("has_ic() - called\n"));
-
-    return TRUE;
-}
-
-bool has_il(void)
-{
-    PDC_LOG(("has_il() - called\n"));
-
-    return TRUE;
-}
-
-char killchar(void)
-{
-    PDC_LOG(("killchar() - called\n"));
-
-    return _DLCHAR;     /* line delete char (^U) */
-}
-
-char *longname(void)
-{
-    PDC_LOG(("longname() - called\n"));
-
-    return ttytype + 9; /* skip "pdcurses|" */
-}
-
-chtype termattrs(void)
-{
-    chtype temp = A_BLINK | A_BOLD | A_INVIS | A_REVERSE | A_UNDERLINE;
-
-    /* note: blink is bold background on some platforms */
-
-    PDC_LOG(("termattrs() - called\n"));
-
-    if (!SP->mono)
-        temp |= A_COLOR;
-
-    return temp;
-}
-
-attr_t term_attrs(void)
-{
-    PDC_LOG(("term_attrs() - called\n"));
-
-    return WA_BLINK | WA_BOLD | WA_INVIS | WA_LEFT | WA_REVERSE | 
-           WA_RIGHT | WA_UNDERLINE;
-}
-
-char *termname(void)
-{
-    PDC_LOG(("termname() - called\n"));
-
-    return "pdcurses";
-}
-
-char wordchar(void)
-{
-    PDC_LOG(("wordchar() - called\n"));
-
-    return _DWCHAR;         /* word delete char */
-}
-
-#ifdef PDC_WIDE
-int erasewchar(wchar_t *ch)
-{
-    PDC_LOG(("erasewchar() - called\n"));
-
-    if (!ch)
-        return ERR;
-
-    *ch = (wchar_t)_ECHAR;
-
-    return OK;
-}
-
-int killwchar(wchar_t *ch)
-{
-    PDC_LOG(("killwchar() - called\n"));
-
-    if (!ch)
-        return ERR;
-
-    *ch = (wchar_t)_DLCHAR;
-
-    return OK;
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/terminfo.c b/src/other/PDCurses/pdcurses/terminfo.c
deleted file mode 100644
index c099ada..0000000
--- a/src/other/PDCurses/pdcurses/terminfo.c
+++ /dev/null
@@ -1,215 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: terminfo.c,v 1.37 2008/07/21 12:29:20 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         terminfo
-
-  Synopsis:
-        int mvcur(int oldrow, int oldcol, int newrow, int newcol);
-        int vidattr(chtype attr);
-        int vid_attr(attr_t attr, short color_pair, void *opt);
-        int vidputs(chtype attr, int (*putfunc)(int));
-        int vid_puts(attr_t attr, short color_pair, void *opt,
-                int (*putfunc)(int));
-
-        int del_curterm(TERMINAL *);
-        int putp(const char *);
-        int restartterm(const char *, int, int *);
-        TERMINAL *set_curterm(TERMINAL *);
-        int setterm(const char *term);
-        int setupterm(const char *, int, int *);
-        int tgetent(char *, const char *);
-        int tgetflag(const char *);
-        int tgetnum(const char *);
-        char *tgetstr(const char *, char **);
-        char *tgoto(const char *, int, int);
-        int tigetflag(const char *);
-        int tigetnum(const char *);
-        char *tigetstr(const char *);
-        char *tparm(const char *,long, long, long, long, long, long,
-                long, long, long);
-        int tputs(const char *, int, int (*)(int));
-
-  Description:
-        mvcur() lets you move the physical cursor without updating any 
-        window cursor positions. It returns OK or ERR.
-
-        The rest of these functions are currently implemented as stubs, 
-        returning the appropriate errors and doing nothing else.
-
-  Portability                                X/Open    BSD    SYS V
-        mvcur                                   Y       Y       Y
-
-**man-end****************************************************************/
-
-#include <term.h>
-
-TERMINAL *cur_term = NULL;
-
-int mvcur(int oldrow, int oldcol, int newrow, int newcol)
-{
-    PDC_LOG(("mvcur() - called: oldrow %d oldcol %d newrow %d newcol %d\n",
-             oldrow, oldcol, newrow, newcol));
-
-    if ((newrow >= LINES) || (newcol >= COLS) || (newrow < 0) || (newcol < 0))
-        return ERR;
-
-    PDC_gotoyx(newrow, newcol);
-    SP->cursrow = newrow;
-    SP->curscol = newcol;
-
-    return OK;
-}
-
-int vidattr(chtype attr)
-{
-    PDC_LOG(("vidattr() - called: attr %d\n", attr));
-
-    return ERR;
-}
-
-int vid_attr(attr_t attr, short color_pair, void *opt)
-{
-    PDC_LOG(("vid_attr() - called\n"));
-
-    return ERR;
-}
-
-int vidputs(chtype attr, int (*putfunc)(int))
-{
-    PDC_LOG(("vidputs() - called: attr %d\n", attr));
-
-    return ERR;
-}
-
-int vid_puts(attr_t attr, short color_pair, void *opt, int (*putfunc)(int))
-{
-    PDC_LOG(("vid_puts() - called\n"));
-
-    return ERR;
-}
-
-int del_curterm(TERMINAL *oterm)
-{
-    PDC_LOG(("del_curterm() - called\n"));
-
-    return ERR;
-}
-
-int putp(const char *str)
-{
-    PDC_LOG(("putp() - called: str %s\n", str));
-
-    return ERR;
-}
-
-int restartterm(const char *term, int filedes, int *errret)
-{
-    PDC_LOG(("restartterm() - called\n"));
-
-    if (errret)
-        *errret = -1;
-
-    return ERR;
-}
-
-TERMINAL *set_curterm(TERMINAL *nterm)
-{
-    PDC_LOG(("set_curterm() - called\n"));
-
-    return (TERMINAL *)NULL;
-}
-
-int setterm(const char *term)
-{
-    PDC_LOG(("setterm() - called\n"));
-
-    return ERR;
-}
-
-int setupterm(const char *term, int filedes, int *errret)
-{
-    PDC_LOG(("setupterm() - called\n"));
-
-    if (errret)
-        *errret = -1;
-    else
-        fprintf(stderr, "There is no terminfo database\n");
-
-    return ERR;
-}
-
-int tgetent(char *bp, const char *name)
-{
-    PDC_LOG(("tgetent() - called: name %s\n", name));
-
-    return ERR;
-}
-
-int tgetflag(const char *id)
-{
-    PDC_LOG(("tgetflag() - called: id %s\n", id));
-
-    return ERR;
-}
-
-int tgetnum(const char *id)
-{
-    PDC_LOG(("tgetnum() - called: id %s\n", id));
-
-    return ERR;
-}
-
-char *tgetstr(const char *id, char **area)
-{
-    PDC_LOG(("tgetstr() - called: id %s\n", id));
-
-    return (char *)NULL;
-}
-
-char *tgoto(const char *cap, int col, int row)
-{
-    PDC_LOG(("tgoto() - called\n"));
-
-    return (char *)NULL;
-}
-
-int tigetflag(const char *capname)
-{
-    PDC_LOG(("tigetflag() - called: capname %s\n", capname));
-
-    return -1;
-}
-
-int tigetnum(const char *capname)
-{
-    PDC_LOG(("tigetnum() - called: capname %s\n", capname));
-
-    return -2;
-}
-
-char *tigetstr(const char *capname)
-{
-    PDC_LOG(("tigetstr() - called: capname %s\n", capname));
-
-    return (char *)(-1);
-}
-
-char *tparm(const char *cap, long p1, long p2, long p3, long p4,
-            long p5, long p6, long p7, long p8, long p9)
-{
-    PDC_LOG(("tparm() - called: cap %s\n", cap));
-
-    return (char *)NULL;
-}
-
-int tputs(const char *str, int affcnt, int (*putfunc)(int))
-{
-    PDC_LOG(("tputs() - called\n"));
-
-    return ERR;
-}
diff --git a/src/other/PDCurses/pdcurses/touch.c b/src/other/PDCurses/pdcurses/touch.c
deleted file mode 100644
index 9355aa1..0000000
--- a/src/other/PDCurses/pdcurses/touch.c
+++ /dev/null
@@ -1,160 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: touch.c,v 1.29 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         touch
-
-  Synopsis:
-        int touchwin(WINDOW *win);
-        int touchline(WINDOW *win, int start, int count);
-        int untouchwin(WINDOW *win);
-        int wtouchln(WINDOW *win, int y, int n, int changed);
-        bool is_linetouched(WINDOW *win, int line);
-        bool is_wintouched(WINDOW *win);
-
-  Description:
-        touchwin() and touchline() throw away all information about 
-        which parts of the window have been touched, pretending that the 
-        entire window has been drawn on.  This is sometimes necessary 
-        when using overlapping windows, since a change to one window 
-        will affect the other window, but the records of which lines 
-        have been changed in the other window will not reflect the 
-        change.
-
-        untouchwin() marks all lines in the window as unchanged since 
-        the last call to wrefresh().
-
-        wtouchln() makes n lines in the window, starting at line y, look 
-        as if they have (changed == 1) or have not (changed == 0) been 
-        changed since the last call to wrefresh().
-
-        is_linetouched() returns TRUE if the specified line in the 
-        specified window has been changed since the last call to 
-        wrefresh().
-
-        is_wintouched() returns TRUE if the specified window 
-        has been changed since the last call to wrefresh().
-
-  Return Value:
-        All functions return OK on success and ERR on error except
-        is_wintouched() and is_linetouched().
-
-  Portability                                X/Open    BSD    SYS V
-        touchwin                                Y       Y       Y
-        touchline                               Y       -      3.0
-        untouchwin                              Y       -      4.0
-        wtouchln                                Y       Y       Y
-        is_linetouched                          Y       -      4.0
-        is_wintouched                           Y       -      4.0
-
-**man-end****************************************************************/
-
-int touchwin(WINDOW *win)
-{
-    int i;
-
-    PDC_LOG(("touchwin() - called: Win=%x\n", win));
-
-    if (!win)
-        return ERR;
-
-    for (i = 0; i < win->_maxy; i++)
-    {
-        win->_firstch[i] = 0;
-        win->_lastch[i] = win->_maxx - 1;
-    }
-
-    return OK;
-}
-
-int touchline(WINDOW *win, int start, int count)
-{
-    int i;
-
-    PDC_LOG(("touchline() - called: win=%p start %d count %d\n",
-             win, start, count));
-
-    if (!win || start > win->_maxy || start + count > win->_maxy)
-        return ERR;
-
-    for (i = start; i < start + count; i++)
-    {
-        win->_firstch[i] = 0;
-        win->_lastch[i] = win->_maxx - 1;
-    }
-
-    return OK;
-}
-
-int untouchwin(WINDOW *win)
-{
-    int i;
-
-    PDC_LOG(("untouchwin() - called: win=%p", win));
-
-    if (!win)
-        return ERR;
-
-    for (i = 0; i < win->_maxy; i++)
-    {
-        win->_firstch[i] = _NO_CHANGE;
-        win->_lastch[i] = _NO_CHANGE;
-    }
-
-    return OK;
-}
-
-int wtouchln(WINDOW *win, int y, int n, int changed)
-{
-    int i;
-
-    PDC_LOG(("wtouchln() - called: win=%p y=%d n=%d changed=%d\n",
-             win, y, n, changed));
-
-    if (!win || y > win->_maxy || y + n > win->_maxy)
-        return ERR;
-
-    for (i = y; i < y + n; i++)
-    {
-        if (changed)
-        {
-            win->_firstch[i] = 0;
-            win->_lastch[i] = win->_maxx - 1;
-        }
-        else 
-        {
-            win->_firstch[i] = _NO_CHANGE;
-            win->_lastch[i] = _NO_CHANGE;
-        }
-    }
-
-    return OK;
-}
-
-bool is_linetouched(WINDOW *win, int line)
-{
-    PDC_LOG(("is_linetouched() - called: win=%p line=%d\n", win, line));
-
-    if (!win || line > win->_maxy || line < 0)
-        return FALSE;
-
-    return (win->_firstch[line] != _NO_CHANGE) ? TRUE : FALSE;
-}
-
-bool is_wintouched(WINDOW *win)
-{
-    int i;
-
-    PDC_LOG(("is_wintouched() - called: win=%p\n", win));
-
-    if (win)
-        for (i = 0; i < win->_maxy; i++)
-            if (win->_firstch[i] != _NO_CHANGE)
-                return TRUE;
-
-    return FALSE;
-}
diff --git a/src/other/PDCurses/pdcurses/util.c b/src/other/PDCurses/pdcurses/util.c
deleted file mode 100644
index f0673fc..0000000
--- a/src/other/PDCurses/pdcurses/util.c
+++ /dev/null
@@ -1,309 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: util.c,v 1.71 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         util
-
-  Synopsis:
-        char *unctrl(chtype c);
-        void filter(void);
-        void use_env(bool x);
-        int delay_output(int ms);
-
-        int getcchar(const cchar_t *wcval, wchar_t *wch, attr_t *attrs,
-                     short *color_pair, void *opts);
-        int setcchar(cchar_t *wcval, const wchar_t *wch, const attr_t attrs,
-                     short color_pair, const void *opts);
-        wchar_t *wunctrl(cchar_t *wc);
-
-        int PDC_mbtowc(wchar_t *pwc, const char *s, size_t n);
-        size_t PDC_mbstowcs(wchar_t *dest, const char *src, size_t n);
-        size_t PDC_wcstombs(char *dest, const wchar_t *src, size_t n);
-
-  Description:
-        unctrl() expands the text portion of the chtype c into a 
-        printable string. Control characters are changed to the "^X" 
-        notation; others are passed through. wunctrl() is the wide- 
-        character version of the function.
-
-        filter() and use_env() are no-ops in PDCurses.
-
-        delay_output() inserts an ms millisecond pause in output.
-
-        getcchar() works in two modes: When wch is not NULL, it reads 
-        the cchar_t pointed to by wcval and stores the attributes in 
-        attrs, the color pair in color_pair, and the text in the
-        wide-character string wch. When wch is NULL, getcchar() merely 
-        returns the number of wide characters in wcval. In either mode, 
-        the opts argument is unused.
-
-        setcchar constructs a cchar_t at wcval from the wide-character 
-        text at wch, the attributes in attr and the color pair in 
-        color_pair. The opts argument is unused.
-
-        Currently, the length returned by getcchar() is always 1 or 0.
-        Similarly, setcchar() will only take the first wide character
-        from wch, and ignore any others that it "should" take (i.e.,
-        combining characters). Nor will it correctly handle any 
-        character outside the basic multilingual plane (UCS-2).
-
-  Return Value:
-        unctrl() and wunctrl() return NULL on failure. delay_output() 
-        always returns OK.
-
-        getcchar() returns the number of wide characters wcval points to 
-        when wch is NULL; when it's not, getcchar() returns OK or ERR. 
-
-        setcchar() returns OK or ERR.
-
-  Portability                                X/Open    BSD    SYS V
-        unctrl                                  Y       Y       Y
-        filter                                  Y       -      3.0
-        use_env                                 Y       -      4.0
-        delay_output                            Y       Y       Y
-        getcchar                                Y
-        setcchar                                Y
-        wunctrl                                 Y
-        PDC_mbtowc                              -       -       -
-        PDC_mbstowcs                            -       -       -
-        PDC_wcstombs                            -       -       -
-
-**man-end****************************************************************/
-
-#ifdef PDC_WIDE
-# ifdef PDC_FORCE_UTF8
-#  include <string.h>
-# else
-#  include <stdlib.h>
-# endif
-#endif
-
-char *unctrl(chtype c)
-{
-    static char strbuf[3] = {0, 0, 0};
-
-    chtype ic;
-
-    PDC_LOG(("unctrl() - called\n"));
-
-    ic = c & A_CHARTEXT;
-
-    if (ic >= 0x20 && ic != 0x7f)       /* normal characters */
-    {
-        strbuf[0] = (char)ic;
-        strbuf[1] = '\0';
-        return strbuf;
-    }
-
-    strbuf[0] = '^';            /* '^' prefix */
-
-    if (ic == 0x7f)             /* 0x7f == DEL */
-        strbuf[1] = '?';
-    else                    /* other control */
-        strbuf[1] = (char)(ic + '@');
-
-    return strbuf;
-}
-
-void filter(void)
-{
-    PDC_LOG(("filter() - called\n"));
-}
-
-void use_env(bool x)
-{
-    PDC_LOG(("use_env() - called: x %d\n", x));
-}
-
-int delay_output(int ms)
-{
-    PDC_LOG(("delay_output() - called: ms %d\n", ms));
-
-    return napms(ms);
-}
-
-#ifdef PDC_WIDE
-int getcchar(const cchar_t *wcval, wchar_t *wch, attr_t *attrs,
-             short *color_pair, void *opts)
-{
-    if (!wcval)
-        return ERR;
-
-    if (wch)
-    {
-        if (!attrs || !color_pair)
-            return ERR;
-
-        *wch = (*wcval & A_CHARTEXT);
-        *attrs = (*wcval & (A_ATTRIBUTES & ~A_COLOR));
-        *color_pair = PAIR_NUMBER(*wcval & A_COLOR);
-
-        if (*wch)
-            *++wch = L'\0';
-
-        return OK;
-    }
-    else
-        return ((*wcval & A_CHARTEXT) != L'\0');
-}
-
-int setcchar(cchar_t *wcval, const wchar_t *wch, const attr_t attrs,
-             short color_pair, const void *opts)
-{
-    if (!wcval || !wch)
-        return ERR;
-
-    *wcval = *wch | attrs | COLOR_PAIR(color_pair);
-
-    return OK;
-}
-
-wchar_t *wunctrl(cchar_t *wc)
-{
-    static wchar_t strbuf[3] = {0, 0, 0};
-
-    cchar_t ic;
-
-    PDC_LOG(("wunctrl() - called\n"));
-
-    ic = *wc & A_CHARTEXT;
-
-    if (ic >= 0x20 && ic != 0x7f)       /* normal characters */
-    {
-        strbuf[0] = (wchar_t)ic;
-        strbuf[1] = L'\0';
-        return strbuf;
-    }
-
-    strbuf[0] = '^';            /* '^' prefix */
-
-    if (ic == 0x7f)             /* 0x7f == DEL */
-        strbuf[1] = '?';
-    else                    /* other control */
-        strbuf[1] = (wchar_t)(ic + '@');
-
-    return strbuf;
-}
-
-int PDC_mbtowc(wchar_t *pwc, const char *s, size_t n)
-{
-# ifdef PDC_FORCE_UTF8
-    wchar_t key;
-    int i = -1;
-    const unsigned char *string;
-
-    if (!s || (n < 1))
-        return -1;
-
-    if (!*s)
-        return 0;
-
-    string = (const unsigned char *)s;
-
-    key = string[0];
-
-    /* Simplistic UTF-8 decoder -- only does the BMP, minimal validation */
-
-    if (key & 0x80)
-    {
-        if ((key & 0xe0) == 0xc0)
-        {
-            if (1 < n)
-            {
-                key = ((key & 0x1f) << 6) | (string[1] & 0x3f);
-                i = 2;
-            }
-        }
-        else if ((key & 0xe0) == 0xe0)
-        {
-            if (2 < n)
-            {
-                key = ((key & 0x0f) << 12) | ((string[1] & 0x3f) << 6) |
-                      (string[2] & 0x3f);
-                i = 3;
-            }
-        }
-    }
-    else
-        i = 1;
-
-    if (i)
-        *pwc = key;
-
-    return i;
-# else
-    return mbtowc(pwc, s, n);
-# endif
-}
-
-size_t PDC_mbstowcs(wchar_t *dest, const char *src, size_t n)
-{
-# ifdef PDC_FORCE_UTF8
-    size_t i = 0, len;
-
-    if (!src || !dest)
-        return 0;
-
-    len = strlen(src);
-
-    while (*src && i < n)
-    {
-        int retval = PDC_mbtowc(dest + i, src, len);
-
-        if (retval < 1)
-            return -1;
-
-        src += retval;
-        len -= retval;
-        i++;
-    }
-# else
-    size_t i = mbstowcs(dest, src, n);
-# endif
-    dest[i] = 0;
-    return i;
-}
-
-size_t PDC_wcstombs(char *dest, const wchar_t *src, size_t n)
-{
-# ifdef PDC_FORCE_UTF8
-    size_t i = 0;
-
-    if (!src || !dest)
-        return 0;
-
-    while (*src && i < n)
-    {
-        chtype code = *src++;
-
-        if (code < 0x80)
-        {
-            dest[i] = code;
-            i++;
-        }
-        else
-            if (code < 0x800)
-            {
-                dest[i] = ((code & 0x07c0) >> 6) | 0xc0;
-                dest[i + 1] = (code & 0x003f) | 0x80;
-                i += 2;
-            }
-            else
-            {
-                dest[i] = ((code & 0xf000) >> 12) | 0xe0;
-                dest[i + 1] = ((code & 0x0fc0) >> 6) | 0x80;
-                dest[i + 2] = (code & 0x003f) | 0x80;
-                i += 3;
-            }
-    }
-# else
-    size_t i = wcstombs(dest, src, n);
-# endif
-    dest[i] = '\0';
-    return i;
-}
-#endif
diff --git a/src/other/PDCurses/pdcurses/window.c b/src/other/PDCurses/pdcurses/window.c
deleted file mode 100644
index dbfd584..0000000
--- a/src/other/PDCurses/pdcurses/window.c
+++ /dev/null
@@ -1,562 +0,0 @@
-/* Public Domain Curses */
-
-#include <curspriv.h>
-
-RCSID("$Id: window.c,v 1.62 2008/07/13 16:08:18 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         window
-
-  Synopsis:
-        WINDOW *newwin(int nlines, int ncols, int begy, int begx);
-        WINDOW *derwin(WINDOW* orig, int nlines, int ncols,
-                int begy, int begx);
-        WINDOW *subwin(WINDOW* orig, int nlines, int ncols,
-                int begy, int begx);
-        WINDOW *dupwin(WINDOW *win);
-        int delwin(WINDOW *win);
-        int mvwin(WINDOW *win, int y, int x);
-        int mvderwin(WINDOW *win, int pary, int parx);
-        int syncok(WINDOW *win, bool bf);
-        void wsyncup(WINDOW *win);
-        void wcursyncup(WINDOW *win);
-        void wsyncdown(WINDOW *win);
-
-        WINDOW *resize_window(WINDOW *win, int nlines, int ncols);
-        int wresize(WINDOW *win, int nlines, int ncols);
-        WINDOW *PDC_makelines(WINDOW *win);
-        WINDOW *PDC_makenew(int nlines, int ncols, int begy, int begx);
-        void PDC_sync(WINDOW *win);
-
-  Description:
-        newwin() creates a new window with the given number of lines,
-        nlines and columns, ncols. The upper left corner of the window
-        is at line begy, column begx. If nlines is zero, it defaults to
-        LINES - begy; ncols to COLS - begx. Create a new full-screen
-        window by calling newwin(0, 0, 0, 0).
-
-        delwin() deletes the named window, freeing all associated 
-        memory. In the case of overlapping windows, subwindows should be 
-        deleted before the main window.
-
-        mvwin() moves the window so that the upper left-hand corner is
-        at position (y,x). If the move would cause the window to be off
-        the screen, it is an error and the window is not moved. Moving
-        subwindows is allowed.
-
-        subwin() creates a new subwindow within a window.  The
-        dimensions of the subwindow are nlines lines and ncols columns.
-        The subwindow is at position (begy, begx) on the screen.  This
-        position is relative to the screen, and not to the window orig.
-        Changes made to either window will affect both.  When using this
-        routine, you will often need to call touchwin() before calling
-        wrefresh().
-
-        derwin() is the same as subwin(), except that begy and begx are
-        relative to the origin of the window orig rather than the
-        screen.  There is no difference between subwindows and derived
-        windows.
-
-        mvderwin() moves a derived window (or subwindow) inside its
-        parent window.  The screen-relative parameters of the window are
-        not changed.  This routine is used to display different parts of
-        the parent window at the same physical position on the screen.
-
-        dupwin() creates an exact duplicate of the window win.
-
-        wsyncup() causes a touchwin() of all of the window's parents.
-
-        If wsyncok() is called with a second argument of TRUE, this
-        causes a wsyncup() to be called every time the window is
-        changed.
-
-        wcursyncup() causes the current cursor position of all of a
-        window's ancestors to reflect the current cursor position of the
-        current window.
-
-        wsyncdown() causes a touchwin() of the current window if any of
-        its parent's windows have been touched.
-
-        resize_window() allows the user to resize an existing window. It 
-        returns the pointer to the new window, or NULL on failure.
-
-        wresize() is an ncurses-compatible wrapper for resize_window().
-        Note that, unlike ncurses, it will NOT process any subwindows of
-        the window. (However, you still can call it _on_ subwindows.) It 
-        returns OK or ERR.
-
-        PDC_makenew() allocates all data for a new WINDOW * except the
-        actual lines themselves. If it's unable to allocate memory for
-        the window structure, it will free all allocated memory and
-        return a NULL pointer.
-
-        PDC_makelines() allocates the memory for the lines.
-
-        PDC_sync() handles wrefresh() and wsyncup() calls when a window
-        is changed.
-
-  Return Value:
-        newwin(), subwin(), derwin() and dupwin() return a pointer
-        to the new window, or NULL on failure. delwin(), mvwin(),
-        mvderwin() and syncok() return OK or ERR. wsyncup(),
-        wcursyncup() and wsyncdown() return nothing.
-
-  Errors:
-        It is an error to call resize_window() before calling initscr().
-        Also, an error will be generated if we fail to create a newly
-        sized replacement window for curscr, or stdscr. This could
-        happen when increasing the window size. NOTE: If this happens,
-        the previously successfully allocated windows are left alone;
-        i.e., the resize is NOT cancelled for those windows.
-
-  Portability                                X/Open    BSD    SYS V
-        newwin                                  Y       Y       Y
-        delwin                                  Y       Y       Y
-        mvwin                                   Y       Y       Y
-        subwin                                  Y       Y       Y
-        derwin                                  Y       -       Y
-        mvderwin                                Y       -       Y
-        dupwin                                  Y       -      4.0
-        wsyncup                                 Y       -      4.0
-        syncok                                  Y       -      4.0
-        wcursyncup                              Y       -      4.0
-        wsyncdown                               Y       -      4.0
-        resize_window                           -       -       -
-        wresize                                 -       -       -
-        PDC_makelines                           -       -       -
-        PDC_makenew                             -       -       -
-        PDC_sync                                -       -       -
-
-**man-end****************************************************************/
-
-#include <stdlib.h>
-
-WINDOW *PDC_makenew(int nlines, int ncols, int begy, int begx)
-{
-    WINDOW *win;
-
-    PDC_LOG(("PDC_makenew() - called: lines %d cols %d begy %d begx %d\n",
-             nlines, ncols, begy, begx));
-
-    /* allocate the window structure itself */
-
-    if ((win = calloc(1, sizeof(WINDOW))) == (WINDOW *)NULL)
-        return win;
-
-    /* allocate the line pointer array */
-
-    if ((win->_y = malloc(nlines * sizeof(chtype *))) == NULL)
-    {
-        free(win);
-        return (WINDOW *)NULL;
-    }
-
-    /* allocate the minchng and maxchng arrays */
-
-    if ((win->_firstch = malloc(nlines * sizeof(int))) == NULL)
-    {
-        free(win->_y);
-        free(win);
-        return (WINDOW *)NULL;
-    }
-
-    if ((win->_lastch = malloc(nlines * sizeof(int))) == NULL)
-    {
-        free(win->_firstch);
-        free(win->_y);
-        free(win);
-        return (WINDOW *)NULL;
-    }
-
-    /* initialize window variables */
-
-    win->_maxy = nlines;  /* real max screen size */
-    win->_maxx = ncols;   /* real max screen size */
-    win->_begy = begy;
-    win->_begx = begx;
-    win->_bkgd = ' ';     /* wrs 4/10/93 -- initialize background to blank */
-    win->_clear = (bool) ((nlines == LINES) && (ncols == COLS));
-    win->_bmarg = nlines - 1;
-    win->_parx = win->_pary = -1;
-
-    /* init to say window all changed */
-
-    touchwin(win);
-
-    return win;
-}
-
-WINDOW *PDC_makelines(WINDOW *win)
-{
-    int i, j, nlines, ncols;
-
-    PDC_LOG(("PDC_makelines() - called: lines %d cols %d\n", nlines, ncols));
-
-    if (!win)
-        return (WINDOW *)NULL;
-
-    nlines = win->_maxy;
-    ncols = win->_maxx;
-
-    for (i = 0; i < nlines; i++)
-    {
-        if ((win->_y[i] = malloc(ncols * sizeof(chtype))) == NULL)
-        {
-            /* if error, free all the data */
-
-            for (j = 0; j < i; j++)
-                free(win->_y[j]);
-
-            free(win->_firstch);
-            free(win->_lastch);
-            free(win->_y);
-            free(win);
-
-            return (WINDOW *)NULL;
-        }
-    }
-
-    return win;
-}
-
-void PDC_sync(WINDOW *win)
-{
-    PDC_LOG(("PDC_sync() - called:\n"));
-
-    if (win->_immed)
-        wrefresh(win);
-    if (win->_sync)
-        wsyncup(win);
-}
-
-WINDOW *newwin(int nlines, int ncols, int begy, int begx)
-{
-    WINDOW *win;
-
-    PDC_LOG(("newwin() - called:lines=%d cols=%d begy=%d begx=%d\n",
-             nlines, ncols, begy, begx));
-
-    if (!nlines)
-        nlines = LINES - begy;
-    if (!ncols)
-        ncols  = COLS  - begx;
-
-    if ( (begy + nlines > SP->lines || begx + ncols > SP->cols)
-        || !(win = PDC_makenew(nlines, ncols, begy, begx))
-        || !(win = PDC_makelines(win)) )
-        return (WINDOW *)NULL;
-
-    werase(win);
-
-    return win;
-}
-
-int delwin(WINDOW *win)
-{
-    int i;
-
-    PDC_LOG(("delwin() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    /* subwindows use parents' lines */
-
-    if (!(win->_flags & (_SUBWIN|_SUBPAD)))
-        for (i = 0; i < win->_maxy && win->_y[i]; i++)
-            if (win->_y[i])
-                free(win->_y[i]);
-
-    free(win->_firstch);
-    free(win->_lastch);
-    free(win->_y);
-    free(win);
-
-    return OK;
-}
-
-int mvwin(WINDOW *win, int y, int x)
-{
-    PDC_LOG(("mvwin() - called\n"));
-
-    if (!win || (y + win->_maxy > LINES || y < 0)
-             || (x + win->_maxx > COLS || x < 0))
-        return ERR;
-
-    win->_begy = y;
-    win->_begx = x;
-    touchwin(win);
-
-    return OK;
-}
-
-WINDOW *subwin(WINDOW *orig, int nlines, int ncols, int begy, int begx)
-{
-    WINDOW *win;
-    int i;
-    int j = begy - orig->_begy;
-    int k = begx - orig->_begx;
-
-    PDC_LOG(("subwin() - called: lines %d cols %d begy %d begx %d\n",
-             nlines, ncols, begy, begx));
-
-    /* make sure window fits inside the original one */
-
-    if (!orig || (begy < orig->_begy) || (begx < orig->_begx) ||
-        (begy + nlines) > (orig->_begy + orig->_maxy) ||
-        (begx + ncols) > (orig->_begx + orig->_maxx))
-        return (WINDOW *)NULL;
-
-    if (!nlines)
-        nlines = orig->_maxy - 1 - j;
-    if (!ncols)
-        ncols  = orig->_maxx - 1 - k;
-
-    if ( !(win = PDC_makenew(nlines, ncols, begy, begx)) )
-        return (WINDOW *)NULL;
-
-    /* initialize window variables */
-
-    win->_attrs = orig->_attrs;
-    win->_bkgd = orig->_bkgd;
-    win->_leaveit = orig->_leaveit;
-    win->_scroll = orig->_scroll;
-    win->_nodelay = orig->_nodelay;
-    win->_use_keypad = orig->_use_keypad;
-    win->_immed = orig->_immed;
-    win->_sync = orig->_sync;
-    win->_pary = j;
-    win->_parx = k;
-    win->_parent = orig;
-
-    for (i = 0; i < nlines; i++, j++)
-        win->_y[i] = orig->_y[j] + k;
-
-    win->_flags |= _SUBWIN;
-
-    return win;
-}
-
-WINDOW *derwin(WINDOW *orig, int nlines, int ncols, int begy, int begx)
-{
-    return subwin(orig, nlines, ncols, begy + orig->_begy, begx + orig->_begx);
-}
-
-int mvderwin(WINDOW *win, int pary, int parx)
-{
-    int i, j;
-    WINDOW *mypar;
-
-    if (!win || !(win->_parent))
-        return ERR;
-
-    mypar = win->_parent;
-
-    if (pary < 0 || parx < 0 || (pary + win->_maxy) > mypar->_maxy ||
-                                (parx + win->_maxx) > mypar->_maxx)
-        return ERR;
-
-    j = pary;
-
-    for (i = 0; i < win->_maxy; i++)
-        win->_y[i] = (mypar->_y[j++]) + parx;
-
-    win->_pary = pary;
-    win->_parx = parx;
-
-    return OK;
-}
-
-WINDOW *dupwin(WINDOW *win)
-{
-    WINDOW *new;
-    chtype *ptr, *ptr1;
-    int nlines, ncols, begy, begx, i;
-
-    if (!win)
-        return (WINDOW *)NULL;
-
-    nlines = win->_maxy;
-    ncols = win->_maxx;
-    begy = win->_begy;
-    begx = win->_begx;
-
-    if ( !(new = PDC_makenew(nlines, ncols, begy, begx))
-        || !(new = PDC_makelines(new)) )
-        return (WINDOW *)NULL;
-
-    /* copy the contents of win into new */
-
-    for (i = 0; i < nlines; i++)
-    {
-        for (ptr = new->_y[i], ptr1 = win->_y[i];
-             ptr < new->_y[i] + ncols; ptr++, ptr1++)
-            *ptr = *ptr1;
-
-        new->_firstch[i] = 0;
-        new->_lastch[i] = ncols - 1;
-    }
-
-    new->_curx = win->_curx;
-    new->_cury = win->_cury;
-    new->_maxy = win->_maxy;
-    new->_maxx = win->_maxx;
-    new->_begy = win->_begy;
-    new->_begx = win->_begx;
-    new->_flags = win->_flags;
-    new->_attrs = win->_attrs;
-    new->_clear = win->_clear;
-    new->_leaveit = win->_leaveit;
-    new->_scroll = win->_scroll;
-    new->_nodelay = win->_nodelay;
-    new->_use_keypad = win->_use_keypad;
-    new->_tmarg = win->_tmarg;
-    new->_bmarg = win->_bmarg;
-    new->_parx = win->_parx;
-    new->_pary = win->_pary;
-    new->_parent = win->_parent;
-    new->_bkgd = win->_bkgd;
-    new->_flags = win->_flags;
-
-    return new;
-}
-
-WINDOW *resize_window(WINDOW *win, int nlines, int ncols)
-{
-    WINDOW *new;
-    int i, save_cury, save_curx, new_begy, new_begx;
-
-    PDC_LOG(("resize_window() - called: nlines %d ncols %d\n",
-             nlines, ncols));
-
-    if (!win)
-        return (WINDOW *)NULL;
-
-    if (win->_flags & _SUBPAD)
-    {
-        if ( !(new = subpad(win->_parent, nlines, ncols,
-                            win->_begy, win->_begx)) )
-            return (WINDOW *)NULL;
-    }
-    else if (win->_flags & _SUBWIN)
-    {
-        if ( !(new = subwin(win->_parent, nlines, ncols,
-                            win->_begy, win->_begx)) )
-            return (WINDOW *)NULL;
-    }
-    else
-    {
-        if (win == SP->slk_winptr)
-        {
-            new_begy = SP->lines - SP->slklines;
-            new_begx = 0;
-        }
-        else
-        {
-            new_begy = win->_begy;
-            new_begx = win->_begx;
-        }
-
-        if ( !(new = PDC_makenew(nlines, ncols, new_begy, new_begx)) )
-            return (WINDOW *)NULL;
-    }
-
-    save_curx = min(win->_curx, new->_maxx);
-    save_cury = min(win->_cury, new->_maxy);
-
-    if (!(win->_flags & (_SUBPAD|_SUBWIN)))
-    {
-        if ( !(new = PDC_makelines(new)) )
-            return (WINDOW *)NULL;
-
-        werase(new);
-
-        copywin(win, new, 0, 0, 0, 0, min(win->_maxy, new->_maxy) - 1,
-                min(win->_maxx, new->_maxx) - 1, FALSE);
-
-        for (i = 0; i < win->_maxy && win->_y[i]; i++)
-            if (win->_y[i])
-                free(win->_y[i]);
-    }
-
-    new->_flags = win->_flags;
-    new->_attrs = win->_attrs;
-    new->_clear = win->_clear;
-    new->_leaveit = win->_leaveit;
-    new->_scroll = win->_scroll;
-    new->_nodelay = win->_nodelay;
-    new->_use_keypad = win->_use_keypad;
-    new->_tmarg = (win->_tmarg > new->_maxy - 1) ? 0 : win->_tmarg;
-    new->_bmarg = (win->_bmarg == win->_maxy - 1) ?
-                  new->_maxy - 1 : min(win->_bmarg, (new->_maxy - 1));
-    new->_parent = win->_parent;
-    new->_immed = win->_immed;
-    new->_sync = win->_sync;
-    new->_bkgd = win->_bkgd;
-
-    new->_curx = save_curx;
-    new->_cury = save_cury;
-
-    free(win->_firstch);
-    free(win->_lastch);
-    free(win->_y);
-
-    *win = *new;
-    free(new);
-
-    return win;
-}
-
-int wresize(WINDOW *win, int nlines, int ncols)
-{
-    return (resize_window(win, nlines, ncols) ? OK : ERR);
-}
-
-void wsyncup(WINDOW *win)
-{
-    WINDOW *tmp;
-
-    PDC_LOG(("wsyncup() - called\n"));
-
-    for (tmp = win; tmp; tmp = tmp->_parent)
-        touchwin(tmp);
-}
-
-int syncok(WINDOW *win, bool bf)
-{
-    PDC_LOG(("syncok() - called\n"));
-
-    if (!win)
-        return ERR;
-
-    win->_sync = bf;
-
-    return OK;
-}
-
-void wcursyncup(WINDOW *win)
-{
-    WINDOW *tmp;
-
-    PDC_LOG(("wcursyncup() - called\n"));
-
-    for (tmp = win; tmp && tmp->_parent; tmp = tmp->_parent)
-        wmove(tmp->_parent, tmp->_pary + tmp->_cury, tmp->_parx + tmp->_curx);
-}
-
-void wsyncdown(WINDOW *win)
-{
-    WINDOW *tmp;
-
-    PDC_LOG(("wsyncdown() - called\n"));
-
-    for (tmp = win; tmp; tmp = tmp->_parent)
-    {
-        if (is_wintouched(tmp))
-        {
-            touchwin(win);
-            break;
-        }
-    }
-}
diff --git a/src/other/PDCurses/sdl1/Makefile b/src/other/PDCurses/sdl1/Makefile
deleted file mode 100644
index a8393f0..0000000
--- a/src/other/PDCurses/sdl1/Makefile
+++ /dev/null
@@ -1,101 +0,0 @@
-# Makefile for PDCurses library for SDL
-
-O = o
-
-ifndef PDCURSES_SRCDIR
-	PDCURSES_SRCDIR	= ..
-endif
-
-include $(PDCURSES_SRCDIR)/libobjs.mif
-
-osdir		= $(PDCURSES_SRCDIR)/sdl1
-
-PDCURSES_SDL_H	= $(osdir)/pdcsdl.h
-
-SFLAGS		= $(shell sdl-config --cflags)
-SLIBS		= $(shell sdl-config --libs)
-
-# If your system doesn't have these, remove the defines here
-SFLAGS		+= -DHAVE_VSNPRINTF -DHAVE_VSSCANF
-
-ifeq ($(DEBUG),Y)
-	CFLAGS  = -g -Wall -DPDCDEBUG
-else
-	CFLAGS  = -O2 -Wall
-endif
-
-BUILD		= $(CC) $(CFLAGS) -I$(PDCURSES_SRCDIR)
-
-ifeq ($(shell uname),Darwin)
-	DEMOFLAGS = -Dmain=SDL_main
-endif
-
-LINK		= $(CC)
-LDFLAGS		= $(LIBCURSES) $(SLIBS)
-RANLIB		= ranlib
-LIBCURSES	= libpdcurses.a
-
-DEMOS		= firework newdemo ptest rain testcurs tuidemo worm xmas \
-sdltest
-
-.PHONY: all libs clean demos
-
-all:	libs demos
-
-libs:	$(LIBCURSES)
-
-clean:
-	-rm -rf *.o trace $(LIBCURSES) $(DEMOS)
-
-demos:	$(DEMOS)
-	strip $(DEMOS)
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	ar rv $@ $?
-	-$(RANLIB) $@
-
-$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS)
-$(PDCOBJS) : $(PDCURSES_SDL_H)
-$(DEMOS) : $(PDCURSES_CURSES_H) $(LIBCURSES)
-tui.o tuidemo.o : $(PDCURSES_CURSES_H)
-terminfo.o: $(TERM_HEADER)
-panel.o ptest: $(PANEL_HEADER)
-
-$(LIBOBJS) : %.o: $(srcdir)/%.c
-	$(BUILD) $(SFLAGS) -c $<
-
-$(PDCOBJS) : %.o: $(osdir)/%.c
-	$(BUILD) $(SFLAGS) -c $<
-
-firework: $(demodir)/firework.c
-	$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
-
-newdemo: $(demodir)/newdemo.c
-	$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
-
-ptest: $(demodir)/ptest.c
-	$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
-
-rain: $(demodir)/rain.c
-	$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
-
-testcurs: $(demodir)/testcurs.c
-	$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
-
-tuidemo: tuidemo.o tui.o
-	$(LINK) tui.o tuidemo.o -o $@ $(LDFLAGS)
-
-worm: $(demodir)/worm.c
-	$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
-
-xmas: $(demodir)/xmas.c
-	$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
-
-sdltest: $(osdir)/sdltest.c
-	$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
-
-tui.o: $(demodir)/tui.c $(demodir)/tui.h
-	$(BUILD) -c $(DEMOFLAGS) $(demodir)/tui.c
-
-tuidemo.o: $(demodir)/tuidemo.c
-	$(BUILD) -c $(DEMOFLAGS) $(demodir)/tuidemo.c
diff --git a/src/other/PDCurses/sdl1/Makefile.mng b/src/other/PDCurses/sdl1/Makefile.mng
deleted file mode 100644
index 427edc6..0000000
--- a/src/other/PDCurses/sdl1/Makefile.mng
+++ /dev/null
@@ -1,105 +0,0 @@
-# Makefile for PDCurses library for SDL
-
-O = o
-
-ifndef PDCURSES_SRCDIR
-	PDCURSES_SRCDIR	= ..
-endif
-
-include $(PDCURSES_SRCDIR)/libobjs.mif
-
-osdir		= $(PDCURSES_SRCDIR)/sdl1
-
-PDCURSES_SDL_H	= $(osdir)/pdcsdl.h
-
-ifeq ($(DEBUG),Y)
-        CFLAGS  = -g -Wall -DPDCDEBUG
-else
-        CFLAGS  = -O2 -Wall
-endif
-
-CC		= gcc
-BUILD		= $(CC) $(CFLAGS) -I$(PDCURSES_SRCDIR)
-LDFLAGS		= -mwindows $(LIBCURSES)
-
-BASEDEF		= $(PDCURSES_SRCDIR)\exp-base.def
-
-DEFDEPS		= $(BASEDEF)
-
-DEFFILE		= pdcurses.def
-
-ifeq ($(DLL),Y)
-	BUILD += -DPDC_DLL_BUILD
-	LIBEXE = gcc $(DEFFILE)
-	LIBFLAGS = -Wl,--out-implib,libpdcurses.a -shared -o
-	LIBCURSES = pdcurses.dll
-	CLEAN = $(LIBCURSES) *.a $(DEFFILE)
-	POST = -lSDL
-else
-	LIBEXE = ar
-	LIBFLAGS = rcv
-	LIBCURSES = libpdcurses.a
-	CLEAN = *.a
-	LDFLAGS += -lSDL
-endif
-
-DEMOS += sdltest.exe
-
-.PHONY: all libs clean demos
-
-all:	libs demos
-
-libs:	$(LIBCURSES)
-
-clean:
-	-del *.o $(CLEAN) *.exe
-
-demos:	$(DEMOS)
-	strip *.exe
-
-pdcurses.dll: $(DEFFILE)
-
-$(DEFFILE): $(DEFDEPS)
-	echo LIBRARY pdcurses > $@        
-	echo EXPORTS >> $@        
-	type $(BASEDEF) >> $@ 
-	echo pdc_screen >> $@
-	echo pdc_font >> $@
-	echo pdc_icon >> $@
-	echo pdc_back >> $@
-	echo pdc_sheight >> $@
-	echo pdc_swidth >> $@
-	echo pdc_yoffset >> $@
-	echo pdc_xoffset >> $@
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	$(LIBEXE) $(LIBFLAGS) $@ $? $(POST)
-
-$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS)
-$(PDCOBJS) : $(PDCURSES_SDL_H)
-$(DEMOS) : $(PDCURSES_CURSES_H) $(LIBCURSES)
-tui.o tuidemo.o : $(PDCURSES_CURSES_H)
-terminfo.o: $(TERM_HEADER)
-panel.o ptest.exe: $(PANEL_HEADER)
-
-$(LIBOBJS) : %.o: $(srcdir)/%.c
-	$(BUILD) -c $<
-
-$(PDCOBJS) : %.o: $(osdir)/%.c
-	$(BUILD) -c $<
-
-firework.exe newdemo.exe rain.exe testcurs.exe worm.exe xmas.exe \
-ptest.exe: %.exe: $(demodir)/%.c
-	$(BUILD) -o $@ $< $(LDFLAGS)
-
-tuidemo.exe: tuidemo.o tui.o
-	$(CC) -o $@ tuidemo.o tui.o $(LDFLAGS)
-
-tui.o: $(demodir)/tui.c $(demodir)/tui.h
-	$(BUILD) -c $<
-
-tuidemo.o: $(demodir)/tuidemo.c $(demodir)/tui.h
-	$(BUILD) -c $<
-
-sdltest.exe: $(osdir)/sdltest.c
-	$(BUILD) -o $@ $< -mwindows $(LIBCURSES) -lmingw32 -lSDLmain -lSDL
diff --git a/src/other/PDCurses/sdl1/README b/src/other/PDCurses/sdl1/README
deleted file mode 100644
index 35234d3..0000000
--- a/src/other/PDCurses/sdl1/README
+++ /dev/null
@@ -1,33 +0,0 @@
-PDCurses for SDL
-================
-
-This is a port of PDCurses for SDL.
-
-
-Building
---------
-
-. On *nix (including Linux and Mac OS X), run "make" in the sdl1
-  directory. There is no configure script (yet?) for this port. This
-  assumes a working sdl-config, and GNU make. It builds the library 
-  libpdcurses.a (dynamic lib not implemented).
-
-  With MinGW, run "make -f Makefile.mng". This assumes SDL is installed
-  in the standard directories. The MinGW makefile accepts the optional
-  parameters "DLL=Y" and "DEBUG=Y", as with the console version. (Wide-
-  character support is not yet implemented for SDL.) Both makefiles
-  recognize the optional PDCURSES_SRCDIR environment variable, as with
-  the console ports. Makefile.mng builds libpdcurses.a, along with 
-  pdcurses.dll, if specified.
-
-
-Distribution Status
--------------------
-
-The files in this directory are released to the Public Domain.
-
-
-Acknowledgements
-----------------
-
-SDL port was provided by William McBrine <wmcbrine at users.sf.net>
diff --git a/src/other/PDCurses/sdl1/deffont.h b/src/other/PDCurses/sdl1/deffont.h
deleted file mode 100644
index cf9cab1..0000000
--- a/src/other/PDCurses/sdl1/deffont.h
+++ /dev/null
@@ -1,385 +0,0 @@
-/* Default font -- this is simply a 256x128x1 BMP, in #include'able form.
-   The font is 8x16, code page 437, and is based on the pc8x16s.bdf font
-   from the vgafonts.tar.gz package, by "Myrlin". */
-
-unsigned char deffont[] =
-{
-    0x42, 0x4d, 0x3e, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e,
-    0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
-    0x80, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x10, 0x00, 0x00, 0x12, 0x0b, 0x00, 0x00, 0x12, 0x0b,
-    0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00,
-    0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x60,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x18, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x76, 0xf8, 0xc0, 0x6c, 0xfe, 0x70, 0x7c, 0x18,
-    0x7e, 0x38, 0xee, 0x3c, 0x00, 0xc0, 0x1c, 0xc6, 0x00, 0x7e, 0x7e,
-    0x7e, 0x18, 0xd8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00,
-    0x00, 0x00, 0xdc, 0xcc, 0xc0, 0x6c, 0xc6, 0xd8, 0x66, 0x18, 0x18,
-    0x6c, 0x6c, 0x66, 0x00, 0x60, 0x30, 0xc6, 0xfe, 0x00, 0x00, 0x00,
-    0x18, 0xd8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x7e,
-    0x00, 0xd8, 0xcc, 0xc0, 0x6c, 0x60, 0xd8, 0x66, 0x18, 0x3c, 0xc6,
-    0x6c, 0x66, 0x7e, 0x7e, 0x60, 0xc6, 0x00, 0x00, 0x30, 0x0c, 0x18,
-    0xd8, 0x18, 0xdc, 0x00, 0x00, 0x00, 0x6c, 0x00, 0x00, 0x7e, 0x00,
-    0xd8, 0xcc, 0xc0, 0x6c, 0x30, 0xd8, 0x66, 0x18, 0x66, 0xc6, 0x6c,
-    0x66, 0xdb, 0xf3, 0x60, 0xc6, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18,
-    0x00, 0x76, 0x00, 0x18, 0x00, 0x6c, 0x00, 0x00, 0x7e, 0x00, 0xd8,
-    0xc8, 0xc0, 0x6c, 0x18, 0xd8, 0x66, 0x18, 0x66, 0xc6, 0x6c, 0x66,
-    0xdb, 0xdb, 0x60, 0xc6, 0xfe, 0x18, 0x0c, 0x30, 0x18, 0x18, 0x7e,
-    0x00, 0x00, 0x18, 0x18, 0xec, 0x00, 0x00, 0x7e, 0x00, 0xdc, 0xdc,
-    0xc0, 0x6c, 0x18, 0xd8, 0x66, 0x18, 0x66, 0xfe, 0xc6, 0x3e, 0xdb,
-    0xdb, 0x7c, 0xc6, 0x00, 0x7e, 0x06, 0x60, 0x18, 0x18, 0x00, 0xdc,
-    0x00, 0x00, 0x00, 0x0c, 0x36, 0x7e, 0x7e, 0x00, 0x76, 0xce, 0xc0,
-    0xfe, 0x30, 0x7e, 0x66, 0xdc, 0x66, 0xc6, 0xc6, 0x0c, 0x7e, 0x7e,
-    0x60, 0xc6, 0x00, 0x18, 0x0c, 0x30, 0x18, 0x18, 0x18, 0x76, 0x00,
-    0x00, 0x00, 0x0c, 0x36, 0x32, 0x7e, 0x00, 0x00, 0xc6, 0xc6, 0x00,
-    0x60, 0x00, 0x00, 0x76, 0x3c, 0xc6, 0xc6, 0x18, 0x00, 0x06, 0x60,
-    0xc6, 0xfe, 0x18, 0x18, 0x18, 0x1b, 0x18, 0x00, 0x00, 0x38, 0x00,
-    0x00, 0x0c, 0x36, 0x18, 0x7e, 0x00, 0x00, 0xce, 0xc6, 0x00, 0xc6,
-    0x00, 0x00, 0x00, 0x18, 0x6c, 0x6c, 0x30, 0x00, 0x03, 0x30, 0x7c,
-    0x00, 0x00, 0x30, 0x0c, 0x1b, 0x18, 0x00, 0x00, 0x6c, 0x00, 0x00,
-    0x0c, 0x36, 0x0c, 0x00, 0x00, 0x00, 0x7c, 0xfe, 0x00, 0xfe, 0x00,
-    0x00, 0x00, 0x7e, 0x38, 0x38, 0x1e, 0x00, 0x00, 0x1c, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x0e, 0x18, 0x00, 0x00, 0x6c, 0x00, 0x00, 0x0c,
-    0x36, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x38, 0x00, 0x00, 0x0f, 0x6c,
-    0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x36, 0x00,
-    0x36, 0x00, 0x36, 0x36, 0x00, 0x36, 0x00, 0x00, 0x18, 0x36, 0x00,
-    0x00, 0x18, 0x36, 0x36, 0x18, 0x00, 0x18, 0xff, 0xff, 0xf0, 0x0f,
-    0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x36, 0x00, 0x36,
-    0x00, 0x36, 0x36, 0x00, 0x36, 0x00, 0x00, 0x18, 0x36, 0x00, 0x00,
-    0x18, 0x36, 0x36, 0x18, 0x00, 0x18, 0xff, 0xff, 0xf0, 0x0f, 0x00,
-    0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x36, 0x00, 0x36, 0x00,
-    0x36, 0x36, 0x00, 0x36, 0x00, 0x00, 0x18, 0x36, 0x00, 0x00, 0x18,
-    0x36, 0x36, 0x18, 0x00, 0x18, 0xff, 0xff, 0xf0, 0x0f, 0x00, 0x00,
-    0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x36, 0x00, 0x36, 0x00, 0x36,
-    0x36, 0x00, 0x36, 0x00, 0x00, 0x18, 0x36, 0x00, 0x00, 0x18, 0x36,
-    0x36, 0x18, 0x00, 0x18, 0xff, 0xff, 0xf0, 0x0f, 0x00, 0x00, 0x00,
-    0x18, 0x18, 0x00, 0x18, 0x18, 0x36, 0x00, 0x36, 0x00, 0x36, 0x36,
-    0x00, 0x36, 0x00, 0x00, 0x18, 0x36, 0x00, 0x00, 0x18, 0x36, 0x36,
-    0x18, 0x00, 0x18, 0xff, 0xff, 0xf0, 0x0f, 0x00, 0x00, 0x00, 0x18,
-    0x18, 0x00, 0x18, 0x18, 0x36, 0x00, 0x36, 0x00, 0x36, 0x36, 0x00,
-    0x36, 0x00, 0x00, 0x18, 0x36, 0x00, 0x00, 0x18, 0x36, 0x36, 0x18,
-    0x00, 0x18, 0xff, 0xff, 0xf0, 0x0f, 0x00, 0x00, 0x00, 0x18, 0x18,
-    0x00, 0x18, 0x18, 0x36, 0x00, 0x36, 0x00, 0x36, 0x36, 0x00, 0x36,
-    0x00, 0x00, 0x18, 0x36, 0x00, 0x00, 0x18, 0x36, 0x36, 0x18, 0x00,
-    0x18, 0xff, 0xff, 0xf0, 0x0f, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00,
-    0x18, 0x18, 0x36, 0x00, 0x36, 0x00, 0x36, 0x36, 0x00, 0x36, 0x00,
-    0x00, 0x18, 0x36, 0x00, 0x00, 0x18, 0x36, 0x36, 0x18, 0x00, 0x18,
-    0xff, 0xff, 0xf0, 0x0f, 0x00, 0x1f, 0xff, 0xff, 0x1f, 0xff, 0xff,
-    0x1f, 0x37, 0x3f, 0x37, 0xff, 0xf7, 0x37, 0xff, 0xf7, 0xff, 0xff,
-    0xff, 0xff, 0x3f, 0x1f, 0x1f, 0x3f, 0xff, 0xff, 0xf8, 0x1f, 0xff,
-    0xff, 0xf0, 0x0f, 0x00, 0x18, 0x18, 0x00, 0x18, 0x00, 0x18, 0x18,
-    0x36, 0x30, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x36, 0x00,
-    0x00, 0x36, 0x18, 0x18, 0x00, 0x36, 0x18, 0x18, 0x00, 0xff, 0x00,
-    0xf0, 0x0f, 0xff, 0x18, 0x18, 0x00, 0x18, 0x00, 0x18, 0x1f, 0x36,
-    0x37, 0x3f, 0xf7, 0xff, 0x37, 0xff, 0xf7, 0xff, 0x36, 0xff, 0x00,
-    0x36, 0x1f, 0x1f, 0x00, 0x36, 0xff, 0x18, 0x00, 0xff, 0x00, 0xf0,
-    0x0f, 0xff, 0x18, 0x18, 0x00, 0x18, 0x00, 0x18, 0x18, 0x36, 0x36,
-    0x00, 0x36, 0x00, 0x36, 0x00, 0x36, 0x18, 0x36, 0x00, 0x00, 0x36,
-    0x18, 0x00, 0x00, 0x36, 0x18, 0x18, 0x00, 0xff, 0x00, 0xf0, 0x0f,
-    0xff, 0x18, 0x18, 0x00, 0x18, 0x00, 0x18, 0x18, 0x36, 0x36, 0x00,
-    0x36, 0x00, 0x36, 0x00, 0x36, 0x18, 0x36, 0x00, 0x00, 0x36, 0x18,
-    0x00, 0x00, 0x36, 0x18, 0x18, 0x00, 0xff, 0x00, 0xf0, 0x0f, 0xff,
-    0x18, 0x18, 0x00, 0x18, 0x00, 0x18, 0x18, 0x36, 0x36, 0x00, 0x36,
-    0x00, 0x36, 0x00, 0x36, 0x18, 0x36, 0x00, 0x00, 0x36, 0x18, 0x00,
-    0x00, 0x36, 0x18, 0x18, 0x00, 0xff, 0x00, 0xf0, 0x0f, 0xff, 0x18,
-    0x18, 0x00, 0x18, 0x00, 0x18, 0x18, 0x36, 0x36, 0x00, 0x36, 0x00,
-    0x36, 0x00, 0x36, 0x18, 0x36, 0x00, 0x00, 0x36, 0x18, 0x00, 0x00,
-    0x36, 0x18, 0x18, 0x00, 0xff, 0x00, 0xf0, 0x0f, 0xff, 0x18, 0x18,
-    0x00, 0x18, 0x00, 0x18, 0x18, 0x36, 0x36, 0x00, 0x36, 0x00, 0x36,
-    0x00, 0x36, 0x18, 0x36, 0x00, 0x00, 0x36, 0x18, 0x00, 0x00, 0x36,
-    0x18, 0x18, 0x00, 0xff, 0x00, 0xf0, 0x0f, 0xff, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x44, 0xaa, 0x77, 0x18, 0x18, 0x18, 0x36, 0x36, 0x18,
-    0x36, 0x36, 0x36, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x11, 0x55, 0xdd, 0x18, 0x18, 0x18, 0x36, 0x36, 0x18, 0x36,
-    0x36, 0x36, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x06, 0x00, 0x00, 0x00,
-    0x44, 0xaa, 0x77, 0x18, 0x18, 0x18, 0x36, 0x36, 0x18, 0x36, 0x36,
-    0x36, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x06, 0x00, 0x00, 0x00, 0x11,
-    0x55, 0xdd, 0x18, 0x18, 0x18, 0x36, 0x36, 0x18, 0x36, 0x36, 0x36,
-    0x00, 0x00, 0x00, 0x18, 0x76, 0x18, 0x7c, 0x78, 0x66, 0xc6, 0x00,
-    0x00, 0x7c, 0x00, 0x00, 0x0c, 0x3f, 0x18, 0x00, 0x00, 0x44, 0xaa,
-    0x77, 0x18, 0x18, 0x18, 0x36, 0x36, 0x18, 0x36, 0x36, 0x36, 0x00,
-    0x00, 0x00, 0x18, 0xcc, 0x18, 0xc6, 0xcc, 0x66, 0xc6, 0x00, 0x00,
-    0xc6, 0xc0, 0x06, 0x86, 0x9a, 0x3c, 0x00, 0x00, 0x11, 0x55, 0xdd,
-    0x18, 0x18, 0x18, 0x36, 0x36, 0x18, 0x36, 0x36, 0x36, 0x00, 0x00,
-    0x00, 0x18, 0xcc, 0x18, 0xc6, 0xcc, 0x66, 0xc6, 0x00, 0x00, 0xc6,
-    0xc0, 0x06, 0xdc, 0xce, 0x3c, 0x36, 0xd8, 0x44, 0xaa, 0x77, 0x18,
-    0x18, 0x18, 0x36, 0x36, 0x18, 0x36, 0x36, 0x36, 0x00, 0x00, 0x00,
-    0x18, 0xcc, 0x18, 0xc6, 0xcc, 0x66, 0xce, 0x00, 0x00, 0xc0, 0xc0,
-    0x06, 0x60, 0x66, 0x3c, 0x6c, 0x6c, 0x11, 0x55, 0xdd, 0x18, 0x18,
-    0x18, 0x36, 0x36, 0x18, 0x36, 0x36, 0x36, 0x00, 0x00, 0x00, 0x18,
-    0x7c, 0x18, 0xc6, 0xcc, 0x66, 0xde, 0x7e, 0x7c, 0x60, 0xc0, 0x06,
-    0x30, 0x30, 0x18, 0xd8, 0x36, 0x44, 0xaa, 0x77, 0x18, 0xf8, 0xf8,
-    0xf6, 0xfe, 0xf8, 0xf6, 0x36, 0xf6, 0xfe, 0xfe, 0xf8, 0xf8, 0x0c,
-    0x18, 0xc6, 0xcc, 0x66, 0xfe, 0x00, 0x00, 0x30, 0xfe, 0xfe, 0x18,
-    0x18, 0x18, 0x6c, 0x6c, 0x11, 0x55, 0xdd, 0x18, 0x18, 0x18, 0x36,
-    0x00, 0x18, 0x06, 0x36, 0x06, 0x06, 0x36, 0x18, 0x00, 0x78, 0x38,
-    0x7c, 0xcc, 0x5c, 0xf6, 0x3e, 0x38, 0x30, 0x00, 0x00, 0x6c, 0x6c,
-    0x18, 0x36, 0xd8, 0x44, 0xaa, 0x77, 0x18, 0x18, 0xf8, 0x36, 0x00,
-    0xf8, 0xf6, 0x36, 0xfe, 0xf6, 0x36, 0xf8, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0xe6, 0x6c, 0x6c, 0x00, 0x00, 0x00, 0x66, 0x66, 0x00,
-    0x00, 0x00, 0x11, 0x55, 0xdd, 0x18, 0x18, 0x18, 0x36, 0x00, 0x00,
-    0x36, 0x36, 0x00, 0x36, 0x36, 0x18, 0x00, 0x60, 0x30, 0x60, 0x60,
-    0xdc, 0xc6, 0x6c, 0x6c, 0x30, 0x00, 0x00, 0x62, 0x62, 0x18, 0x00,
-    0x00, 0x44, 0xaa, 0x77, 0x18, 0x18, 0x18, 0x36, 0x00, 0x00, 0x36,
-    0x36, 0x00, 0x36, 0x36, 0x18, 0x00, 0x30, 0x18, 0x30, 0x30, 0x76,
-    0x00, 0x3c, 0x38, 0x30, 0x00, 0x00, 0xe0, 0xe0, 0x18, 0x00, 0x00,
-    0x11, 0x55, 0xdd, 0x18, 0x18, 0x18, 0x36, 0x00, 0x00, 0x36, 0x36,
-    0x00, 0x36, 0x36, 0x18, 0x00, 0x18, 0x0c, 0x18, 0x18, 0x00, 0xdc,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, 0x00, 0x44,
-    0xaa, 0x77, 0x18, 0x18, 0x18, 0x36, 0x00, 0x00, 0x36, 0x36, 0x00,
-    0x36, 0x36, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x55,
-    0xdd, 0x18, 0x18, 0x18, 0x36, 0x00, 0x00, 0x36, 0x36, 0x00, 0x36,
-    0x36, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x8c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18,
-    0x78, 0x7c, 0x76, 0x76, 0x76, 0x76, 0x7c, 0x7c, 0x7c, 0x7c, 0x18,
-    0x18, 0x18, 0xc6, 0xc6, 0xfc, 0x6e, 0xce, 0x7c, 0x7c, 0x7c, 0x78,
-    0x78, 0x76, 0x7c, 0x7c, 0x18, 0xfe, 0x18, 0xc6, 0x70, 0x3c, 0xcc,
-    0xc2, 0xcc, 0xcc, 0xcc, 0xcc, 0xc6, 0xc2, 0xc2, 0xc2, 0x18, 0x18,
-    0x18, 0xc6, 0xc6, 0xc0, 0xd8, 0xcc, 0xc6, 0xc6, 0xc6, 0xcc, 0xcc,
-    0xce, 0xc6, 0xc6, 0x18, 0x60, 0x7e, 0xcc, 0xd8, 0x66, 0xcc, 0xc0,
-    0xcc, 0xcc, 0xcc, 0xcc, 0xc0, 0xc0, 0xc0, 0xc0, 0x18, 0x18, 0x18,
-    0xc6, 0xc6, 0xc0, 0xd8, 0xcc, 0xc6, 0xc6, 0xc6, 0xcc, 0xcc, 0xc6,
-    0xc6, 0xc6, 0x7c, 0x60, 0x18, 0xcc, 0x18, 0xc6, 0xcc, 0xc0, 0xcc,
-    0xcc, 0xcc, 0xcc, 0xc0, 0xc0, 0xc0, 0xc0, 0x18, 0x18, 0x18, 0xfe,
-    0xc6, 0xc0, 0x7e, 0xcc, 0xc6, 0xc6, 0xc6, 0xcc, 0xcc, 0xc6, 0xc6,
-    0xc6, 0xc6, 0x60, 0x7e, 0xcc, 0x18, 0xc0, 0xcc, 0xfe, 0x7c, 0x7c,
-    0x7c, 0x7c, 0xc0, 0xfe, 0xfe, 0xfe, 0x18, 0x18, 0x18, 0xc6, 0xfe,
-    0xf0, 0x36, 0xcc, 0xc6, 0xc6, 0xc6, 0xcc, 0xcc, 0xc6, 0xc6, 0xc6,
-    0xc0, 0x60, 0x18, 0xde, 0x18, 0xc0, 0xcc, 0xc6, 0x0c, 0x0c, 0x0c,
-    0x0c, 0xc6, 0xc6, 0xc6, 0xc6, 0x18, 0x18, 0x18, 0xc6, 0xc6, 0xc0,
-    0x36, 0xfe, 0xc6, 0xc6, 0xc6, 0xcc, 0xcc, 0xc6, 0xc6, 0xc6, 0xc0,
-    0xf8, 0x3c, 0xcc, 0x7e, 0xc0, 0xcc, 0x7c, 0x78, 0x78, 0x78, 0x78,
-    0x7c, 0x7c, 0x7c, 0x7c, 0x38, 0x38, 0x38, 0x6c, 0x6c, 0xc0, 0xec,
-    0xcc, 0x7c, 0x7c, 0x7c, 0xcc, 0xcc, 0xc6, 0xc6, 0xc6, 0xc0, 0x60,
-    0x66, 0xc4, 0x18, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x38, 0xc0, 0x00, 0xcc,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0x60, 0x66,
-    0xf8, 0x18, 0x3c, 0xcc, 0x30, 0x6c, 0x00, 0x18, 0x38, 0x00, 0x6c,
-    0x00, 0x18, 0x00, 0x66, 0x18, 0x10, 0x10, 0xfc, 0x00, 0x6c, 0x6c,
-    0x00, 0x18, 0xcc, 0x18, 0x00, 0x7c, 0xc6, 0x7c, 0x62, 0x66, 0xcc,
-    0x18, 0x00, 0xcc, 0x18, 0x38, 0xcc, 0x30, 0x6c, 0x00, 0x38, 0xc6,
-    0x30, 0x66, 0x3c, 0x30, 0x00, 0x38, 0x00, 0x00, 0x3e, 0x38, 0xc6,
-    0x30, 0x78, 0x30, 0xc6, 0x00, 0x00, 0x18, 0x3c, 0x66, 0xcc, 0x1b,
-    0x00, 0x00, 0x0c, 0x10, 0x00, 0x60, 0x38, 0x00, 0x10, 0x00, 0x60,
-    0x00, 0x18, 0x60, 0xc6, 0x6c, 0x30, 0x00, 0x00, 0x10, 0x00, 0x60,
-    0x30, 0x60, 0x00, 0xc6, 0xc6, 0x18, 0x00, 0x00, 0xf8, 0x0e, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x38, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0xc0, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x8c, 0x00, 0x00, 0xcc, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0xc0, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x0c, 0x00, 0x00, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0xc0, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xf8, 0x78, 0x7c, 0x7c,
-    0x30, 0x7c, 0xcc, 0x18, 0x0c, 0xcc, 0x18, 0xc6, 0xcc, 0x78, 0xf8,
-    0x7c, 0xc0, 0x7c, 0x30, 0x78, 0x10, 0x6c, 0xc6, 0x76, 0xfe, 0x0e,
-    0x18, 0x70, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xc4, 0xcc, 0xc2, 0x30,
-    0xcc, 0xcc, 0x18, 0x0c, 0xcc, 0x18, 0xd6, 0xcc, 0xcc, 0xcc, 0xcc,
-    0xc0, 0x86, 0x30, 0xcc, 0x6c, 0xfe, 0x6c, 0xce, 0xc0, 0x18, 0x18,
-    0x18, 0x00, 0xfe, 0x00, 0xcc, 0xcc, 0xc0, 0xcc, 0xc0, 0x30, 0xcc,
-    0xcc, 0x18, 0x0c, 0xd8, 0x18, 0xd6, 0xcc, 0xcc, 0xcc, 0xcc, 0xc0,
-    0x06, 0x30, 0xcc, 0xc6, 0xd6, 0x38, 0xc6, 0x60, 0x18, 0x18, 0x18,
-    0x00, 0xc6, 0x00, 0xcc, 0xcc, 0xc0, 0xcc, 0xc0, 0x30, 0xcc, 0xcc,
-    0x18, 0x0c, 0xf0, 0x18, 0xd6, 0xcc, 0xcc, 0xcc, 0xcc, 0xc0, 0x1c,
-    0x30, 0xcc, 0xc6, 0xd6, 0x38, 0xc6, 0x30, 0x18, 0x18, 0x18, 0x00,
-    0xc6, 0x00, 0x7c, 0xcc, 0xc0, 0xcc, 0xfe, 0x30, 0xcc, 0xcc, 0x18,
-    0x0c, 0xf0, 0x18, 0xd6, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x70, 0x30,
-    0xcc, 0xc6, 0xd6, 0x38, 0xc6, 0x18, 0x18, 0x18, 0x18, 0x00, 0xc6,
-    0x00, 0x0c, 0xcc, 0xc4, 0xcc, 0xc6, 0x78, 0xcc, 0xec, 0x18, 0x0c,
-    0xd8, 0x18, 0xfe, 0xcc, 0xcc, 0xcc, 0xcc, 0xec, 0xc2, 0x30, 0xcc,
-    0xc6, 0xc6, 0x6c, 0xc6, 0x0c, 0x70, 0x18, 0x0e, 0x00, 0x6c, 0x00,
-    0x78, 0xf8, 0x78, 0x7c, 0x7c, 0x30, 0x7c, 0xd8, 0x38, 0x0c, 0xcc,
-    0x18, 0xec, 0xb8, 0x78, 0xf8, 0x7c, 0xb8, 0x7c, 0xfc, 0xcc, 0xc6,
-    0xc6, 0xc6, 0xc6, 0xfe, 0x18, 0x18, 0x18, 0x00, 0x38, 0x00, 0x00,
-    0xc0, 0x00, 0x0c, 0x00, 0x32, 0x00, 0xc0, 0x00, 0x00, 0xc0, 0x18,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0x00, 0x10, 0x0c, 0x00, 0xc0,
-    0x00, 0x0c, 0x00, 0x36, 0x00, 0xc0, 0x18, 0x0c, 0xc0, 0x18, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x18, 0x18, 0x18, 0x00, 0x00, 0x18, 0x00, 0xc0, 0x00,
-    0x0c, 0x00, 0x1c, 0x00, 0xc0, 0x18, 0x0c, 0xc0, 0x38, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x0e, 0x18, 0x70, 0xdc, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x7c, 0xc6, 0xfc, 0x3c, 0xf8, 0xfc, 0xc0, 0x3e, 0xc6, 0x18, 0x78,
-    0xc2, 0xfc, 0xc6, 0xc6, 0x7c, 0xc0, 0x7c, 0xc6, 0x7c, 0x18, 0x7c,
-    0x10, 0x6c, 0xc6, 0x18, 0xfe, 0x3c, 0x02, 0x3c, 0x00, 0x00, 0xc0,
-    0xc6, 0xc6, 0x66, 0xdc, 0xc0, 0xc0, 0x66, 0xc6, 0x18, 0xcc, 0xc6,
-    0xc0, 0xc6, 0xc6, 0xc6, 0xc0, 0xde, 0xc6, 0x86, 0x18, 0xc6, 0x38,
-    0xee, 0xc6, 0x18, 0xc0, 0x30, 0x06, 0x0c, 0x00, 0x00, 0xdc, 0xc6,
-    0xc6, 0xc2, 0xce, 0xc0, 0xc0, 0xc6, 0xc6, 0x18, 0xcc, 0xcc, 0xc0,
-    0xc6, 0xc6, 0xc6, 0xc0, 0xd6, 0xcc, 0x06, 0x18, 0xc6, 0x6c, 0xfe,
-    0x6c, 0x18, 0xc0, 0x30, 0x0e, 0x0c, 0x00, 0x00, 0xde, 0xc6, 0xc6,
-    0xc0, 0xc6, 0xc0, 0xc0, 0xc6, 0xc6, 0x18, 0xcc, 0xd8, 0xc0, 0xc6,
-    0xc6, 0xc6, 0xc0, 0xc6, 0xcc, 0x06, 0x18, 0xc6, 0xc6, 0xd6, 0x7c,
-    0x18, 0x60, 0x30, 0x1c, 0x0c, 0x00, 0x00, 0xde, 0xfe, 0xc6, 0xc0,
-    0xc6, 0xc0, 0xc0, 0xde, 0xc6, 0x18, 0x0c, 0xf0, 0xc0, 0xc6, 0xce,
-    0xc6, 0xc0, 0xc6, 0xd8, 0x0c, 0x18, 0xc6, 0xc6, 0xd6, 0x38, 0x18,
-    0x30, 0x30, 0x38, 0x0c, 0x00, 0x00, 0xde, 0xc6, 0xfc, 0xc0, 0xc6,
-    0xf8, 0xf8, 0xc0, 0xfe, 0x18, 0x0c, 0xf0, 0xc0, 0xd6, 0xde, 0xc6,
-    0xfc, 0xc6, 0xfc, 0x38, 0x18, 0xc6, 0xc6, 0xd6, 0x38, 0x3c, 0x18,
-    0x30, 0x70, 0x0c, 0x00, 0x00, 0xc6, 0xc6, 0xc6, 0xc0, 0xc6, 0xc0,
-    0xc0, 0xc0, 0xc6, 0x18, 0x0c, 0xd8, 0xc0, 0xfe, 0xfe, 0xc6, 0xc6,
-    0xc6, 0xc6, 0x60, 0x18, 0xc6, 0xc6, 0xc6, 0x7c, 0x66, 0x0c, 0x30,
-    0xe0, 0x0c, 0x00, 0x00, 0xc6, 0x6c, 0xc6, 0xc2, 0xce, 0xc0, 0xc0,
-    0xc0, 0xc6, 0x18, 0x0c, 0xcc, 0xc0, 0xfe, 0xf6, 0xc6, 0xc6, 0xc6,
-    0xc6, 0xc0, 0x18, 0xc6, 0xc6, 0xc6, 0x6c, 0x66, 0x06, 0x30, 0xc0,
-    0x0c, 0x00, 0x00, 0x7c, 0x38, 0xc6, 0x66, 0xdc, 0xc0, 0xc0, 0x62,
-    0xc6, 0x18, 0x0c, 0xc6, 0xc0, 0xee, 0xe6, 0xc6, 0xc6, 0xc6, 0xc6,
-    0xc2, 0x7e, 0xc6, 0xc6, 0xc6, 0xc6, 0x66, 0x06, 0x30, 0x80, 0x0c,
-    0xc6, 0x00, 0x00, 0x10, 0xfc, 0x3c, 0xf8, 0xfc, 0xfc, 0x3c, 0xc6,
-    0x18, 0x1e, 0xc2, 0xc0, 0xc6, 0xc6, 0x7c, 0xfc, 0x7c, 0xfc, 0x7c,
-    0x7e, 0xc6, 0xc6, 0xc6, 0xc6, 0x66, 0xfe, 0x3c, 0x00, 0x3c, 0x6c,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x6c, 0x7c,
-    0x86, 0x76, 0x00, 0x0c, 0x30, 0x00, 0x00, 0x18, 0x00, 0x18, 0x80,
-    0x38, 0x18, 0xfe, 0x7c, 0x0c, 0x7c, 0x7c, 0x30, 0x7c, 0x78, 0x00,
-    0x30, 0x06, 0x00, 0x60, 0x18, 0x00, 0x18, 0x00, 0x6c, 0xc6, 0xc6,
-    0xcc, 0x00, 0x18, 0x18, 0x00, 0x00, 0x18, 0x00, 0x18, 0xc0, 0x6c,
-    0x18, 0xc0, 0x86, 0x0c, 0x86, 0xc6, 0x30, 0xc6, 0x8c, 0x18, 0x18,
-    0x0c, 0x00, 0x30, 0x18, 0x00, 0x00, 0x00, 0xfe, 0x86, 0x60, 0xcc,
-    0x00, 0x30, 0x0c, 0x66, 0x18, 0x18, 0x00, 0x00, 0x60, 0xc6, 0x18,
-    0xc0, 0x06, 0x0c, 0x06, 0xc6, 0x30, 0xc6, 0x06, 0x18, 0x18, 0x18,
-    0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x6c, 0x06, 0x30, 0xcc, 0x00,
-    0x30, 0x0c, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x30, 0xe6, 0x18, 0x60,
-    0x06, 0x0c, 0x06, 0xc6, 0x30, 0xc6, 0x06, 0x00, 0x00, 0x30, 0x7e,
-    0x0c, 0x18, 0x00, 0x18, 0x00, 0x6c, 0x06, 0x18, 0xdc, 0x00, 0x30,
-    0x0c, 0xff, 0x7e, 0x00, 0xfe, 0x00, 0x18, 0xf6, 0x18, 0x30, 0x06,
-    0xfe, 0x06, 0xe6, 0x18, 0xc6, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06,
-    0x18, 0x00, 0x18, 0x00, 0x6c, 0x7c, 0x0c, 0x76, 0x00, 0x30, 0x0c,
-    0x3c, 0x18, 0x00, 0x00, 0x00, 0x0c, 0xde, 0x18, 0x18, 0x3c, 0xcc,
-    0xfc, 0xdc, 0x0c, 0x7c, 0x7e, 0x00, 0x00, 0x30, 0x00, 0x0c, 0x18,
-    0x00, 0x3c, 0x00, 0xfe, 0xc0, 0xc6, 0x38, 0x00, 0x30, 0x0c, 0x66,
-    0x18, 0x00, 0x00, 0x00, 0x06, 0xce, 0x18, 0x0c, 0x06, 0x6c, 0xc0,
-    0xc0, 0x06, 0xc6, 0xc6, 0x18, 0x18, 0x18, 0x7e, 0x18, 0x0c, 0x00,
-    0x3c, 0x24, 0x6c, 0xc2, 0xc2, 0x6c, 0x60, 0x30, 0x0c, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x02, 0xc6, 0x78, 0x06, 0x06, 0x3c, 0xc0, 0xc0,
-    0x06, 0xc6, 0xc6, 0x18, 0x18, 0x0c, 0x00, 0x30, 0xc6, 0x00, 0x3c,
-    0x66, 0x6c, 0xc6, 0x00, 0x6c, 0x30, 0x18, 0x18, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x6c, 0x38, 0xc6, 0x86, 0x1c, 0xc0, 0x60, 0x06,
-    0xc6, 0xc6, 0x00, 0x00, 0x06, 0x00, 0x60, 0xc6, 0x00, 0x18, 0x66,
-    0x00, 0x7c, 0x00, 0x38, 0x30, 0x0c, 0x30, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x38, 0x18, 0x7c, 0x7c, 0x0c, 0xfe, 0x3c, 0xfe, 0x7c,
-    0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x66, 0x00,
-    0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,
-    0x00, 0xff, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x7e, 0x7e, 0x10, 0x00, 0x3c, 0x3c, 0x00, 0xff, 0x00,
-    0xff, 0x78, 0x18, 0xe0, 0xe6, 0x18, 0x80, 0x02, 0x00, 0x66, 0x1b,
-    0xc6, 0xfe, 0x7e, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x81, 0xff, 0x38, 0x10, 0x18, 0x18, 0x00, 0xff, 0x3c, 0xc3,
-    0xcc, 0x18, 0xf0, 0xe7, 0x18, 0xc0, 0x06, 0x18, 0x66, 0x1b, 0x0c,
-    0xfe, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x10, 0x00,
-    0x81, 0xff, 0x7c, 0x38, 0x18, 0x18, 0x18, 0xe7, 0x66, 0x99, 0xcc,
-    0x7e, 0x70, 0x67, 0xdb, 0xe0, 0x0e, 0x3c, 0x00, 0x1b, 0x38, 0xfe,
-    0x3c, 0x18, 0x7e, 0x18, 0x30, 0xfe, 0x28, 0xfe, 0x38, 0x00, 0x99,
-    0xe7, 0xfe, 0x7c, 0xe7, 0x7e, 0x3c, 0xc3, 0x42, 0xbd, 0xcc, 0x18,
-    0x30, 0x63, 0x3c, 0xf0, 0x1e, 0x7e, 0x66, 0x1b, 0x6c, 0xfe, 0x7e,
-    0x18, 0x18, 0x0c, 0x60, 0xc0, 0x6c, 0x7c, 0x38, 0x00, 0xbd, 0xc3,
-    0xfe, 0xfe, 0xe7, 0xff, 0x3c, 0xc3, 0x42, 0xbd, 0xcc, 0x3c, 0x30,
-    0x63, 0xe7, 0xf8, 0x3e, 0x18, 0x66, 0x1b, 0xc6, 0x00, 0x18, 0x18,
-    0x18, 0xfe, 0xfe, 0xc0, 0xfe, 0x7c, 0x7c, 0x00, 0x81, 0xff, 0xfe,
-    0x7c, 0xe7, 0xff, 0x18, 0xe7, 0x66, 0x99, 0x78, 0x66, 0x30, 0x63,
-    0x3c, 0xfe, 0xfe, 0x18, 0x66, 0x7b, 0xc6, 0x00, 0x18, 0x18, 0x18,
-    0x0c, 0x60, 0xc0, 0x6c, 0x38, 0x7c, 0x00, 0x81, 0xff, 0xfe, 0x38,
-    0x3c, 0x7e, 0x00, 0xff, 0x3c, 0xc3, 0x32, 0x66, 0x30, 0x63, 0xdb,
-    0xf8, 0x3e, 0x18, 0x66, 0xdb, 0x6c, 0x00, 0x18, 0x18, 0x18, 0x18,
-    0x30, 0x00, 0x28, 0x38, 0xfe, 0x00, 0xa5, 0xdb, 0x6c, 0x10, 0x3c,
-    0x3c, 0x00, 0xff, 0x00, 0xff, 0x1a, 0x66, 0x3f, 0x7f, 0x18, 0xf0,
-    0x1e, 0x7e, 0x66, 0xdb, 0x38, 0x00, 0x7e, 0x7e, 0x18, 0x00, 0x00,
-    0x00, 0x00, 0x10, 0xfe, 0x00, 0x81, 0xff, 0x00, 0x00, 0x18, 0x18,
-    0x00, 0xff, 0x00, 0xff, 0x0e, 0x66, 0x33, 0x63, 0x18, 0xe0, 0x0e,
-    0x3c, 0x66, 0xdb, 0x60, 0x00, 0x3c, 0x3c, 0x18, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x7e, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0xff, 0x00, 0xff, 0x1e, 0x3c, 0x3f, 0x7f, 0x00, 0xc0, 0x06, 0x18,
-    0x66, 0x7f, 0xc6, 0x00, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,
-    0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00,
-    0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00,
-    0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-};
diff --git a/src/other/PDCurses/sdl1/deficon.h b/src/other/PDCurses/sdl1/deficon.h
deleted file mode 100644
index 7248ab5..0000000
--- a/src/other/PDCurses/sdl1/deficon.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* The PDCurses logo as #include'able BMP (from ../x11/little_icon.xbm) */
-
-unsigned char deficon[] =
-{
-    0x42, 0x4d, 0xbe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e,
-    0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
-    0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x80, 0x00, 0x00, 0x00, 0x13, 0x0b, 0x00, 0x00, 0x13, 0x0b,
-    0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xce, 0x6f, 0x9c,
-    0xe7, 0xb5, 0xaf, 0x6b, 0x5b, 0xbd, 0xaf, 0xeb, 0xfb, 0xbd, 0xaf,
-    0x98, 0xe7, 0xbd, 0xaf, 0x7b, 0x5f, 0xb5, 0xa5, 0x6b, 0x5b, 0xcd,
-    0xab, 0x9c, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xcf, 0x03, 0xff, 0xff, 0xce, 0x03, 0xff, 0xff, 0xcc, 0x73,
-    0xff, 0xff, 0xcc, 0xf3, 0xff, 0xff, 0xcc, 0xf3, 0xff, 0xff, 0xcc,
-    0x73, 0xff, 0xff, 0xc6, 0x33, 0xff, 0xff, 0xc3, 0x13, 0xff, 0xff,
-    0xc1, 0x83, 0xff, 0xff, 0xc8, 0xc3, 0xff, 0xff, 0xcc, 0x63, 0xff,
-    0xff, 0xce, 0x33, 0xff, 0xff, 0xcf, 0x33, 0xff, 0xff, 0xcf, 0x33,
-    0xff, 0xff, 0xce, 0x33, 0xff, 0xff, 0xc0, 0x73, 0xff, 0xff, 0xc0,
-    0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xff, 0xff, 0xff
-};
diff --git a/src/other/PDCurses/sdl1/pdcclip.c b/src/other/PDCurses/sdl1/pdcclip.c
deleted file mode 100644
index 203c975..0000000
--- a/src/other/PDCurses/sdl1/pdcclip.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcsdl.h"
-
-RCSID("$Id: pdcclip.c,v 1.6 2008/07/14 04:24:52 wmcbrine Exp $")
-
-#include <stdlib.h>
-
-/*man-start**************************************************************
-
-  Name:                                                         clipboard
-
-  Synopsis:
-        int PDC_getclipboard(char **contents, long *length);
-        int PDC_setclipboard(const char *contents, long length);
-        int PDC_freeclipboard(char *contents);
-        int PDC_clearclipboard(void);
-
-  Description:
-        PDC_getclipboard() gets the textual contents of the system's 
-        clipboard. This function returns the contents of the clipboard 
-        in the contents argument. It is the responsibilitiy of the 
-        caller to free the memory returned, via PDC_freeclipboard().
-        The length of the clipboard contents is returned in the length 
-        argument.
-
-        PDC_setclipboard copies the supplied text into the system's 
-        clipboard, emptying the clipboard prior to the copy.
-
-        PDC_clearclipboard() clears the internal clipboard.
-
-  Return Values:
-        indicator of success/failure of call.
-        PDC_CLIP_SUCCESS        the call was successful
-        PDC_CLIP_MEMORY_ERROR   unable to allocate sufficient memory for 
-                                the clipboard contents
-        PDC_CLIP_EMPTY          the clipboard contains no text
-        PDC_CLIP_ACCESS_ERROR   no clipboard support
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_getclipboard                        -       -       -
-        PDC_setclipboard                        -       -       -
-        PDC_freeclipboard                       -       -       -
-        PDC_clearclipboard                      -       -       -
-
-**man-end****************************************************************/
-
-/* global clipboard contents, should be NULL if none set */
-
-static char *pdc_SDL_clipboard = NULL;
-
-int PDC_getclipboard(char **contents, long *length)
-{
-    int len;
-
-    PDC_LOG(("PDC_getclipboard() - called\n"));
-
-    if (!pdc_SDL_clipboard)
-        return PDC_CLIP_EMPTY;
-
-    len = strlen(pdc_SDL_clipboard);
-    if ((*contents = malloc(len + 1)) == NULL)
-        return PDC_CLIP_MEMORY_ERROR;
-
-    strcpy(*contents, pdc_SDL_clipboard);
-    *length = len;
-
-    return PDC_CLIP_SUCCESS;
-}
-
-int PDC_setclipboard(const char *contents, long length)
-{
-    PDC_LOG(("PDC_setclipboard() - called\n"));
-
-    if (pdc_SDL_clipboard)
-    {
-        free(pdc_SDL_clipboard);
-        pdc_SDL_clipboard = NULL;
-    }
-
-    if (contents)
-    {
-        if ((pdc_SDL_clipboard = malloc(length + 1)) == NULL)
-            return PDC_CLIP_MEMORY_ERROR;
-
-        strcpy(pdc_SDL_clipboard, contents);
-    }
-
-    return PDC_CLIP_SUCCESS;
-}
-
-int PDC_freeclipboard(char *contents)
-{
-    PDC_LOG(("PDC_freeclipboard() - called\n"));
-
-    /* should we also free empty the system clipboard? probably not */
-
-    if (contents)
-    {
-        /* NOTE: We free the memory, but we can not set caller's pointer
-           to NULL, so if caller calls again then will try to access
-           free'd memory.  We 1st overwrite memory with a string so if
-           caller tries to use free memory they won't get what they
-           expect & hopefully notice. */
-
-        /* memset(contents, 0xFD, strlen(contents)); */
-
-        if (strlen(contents) >= strlen("PDCURSES"))
-            strcpy(contents, "PDCURSES");
-
-        free(contents);
-    }
-
-    return PDC_CLIP_SUCCESS;
-}
-
-int PDC_clearclipboard(void)
-{
-    PDC_LOG(("PDC_clearclipboard() - called\n"));
-
-    if (pdc_SDL_clipboard) 
-    {
-        free(pdc_SDL_clipboard);
-        pdc_SDL_clipboard = NULL;
-    }
-
-    return PDC_CLIP_SUCCESS;
-}
diff --git a/src/other/PDCurses/sdl1/pdcdisp.c b/src/other/PDCurses/sdl1/pdcdisp.c
deleted file mode 100644
index 3712e66..0000000
--- a/src/other/PDCurses/sdl1/pdcdisp.c
+++ /dev/null
@@ -1,301 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcsdl.h"
-
-RCSID("$Id: pdcdisp.c,v 1.35 2008/07/14 04:24:52 wmcbrine Exp $")
-
-#include <stdlib.h>
-#include <string.h>
-
-#ifdef CHTYPE_LONG
-
-# define A(x) ((chtype)x | A_ALTCHARSET)
-
-chtype acs_map[128] =
-{
-    A(0), A(1), A(2), A(3), A(4), A(5), A(6), A(7), A(8), A(9),
-    A(10), A(11), A(12), A(13), A(14), A(15), A(16), A(17), A(18),
-    A(19), A(20), A(21), A(22), A(23), A(24), A(25), A(26), A(27),
-    A(28), A(29), A(30), A(31), ' ', '!', '"', '#', '$', '%', '&',
-    '\'', '(', ')', '*',
-
-    A(0x1a), A(0x1b), A(0x18), A(0x19),
-
-    '/',
-
-    0xdb,
-
-    '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=',
-    '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
-    'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W',
-    'X', 'Y', 'Z', '[', '\\', ']', '^', '_',
-
-    A(0x04), 0xb1,
-
-    'b', 'c', 'd', 'e',
-
-    0xf8, 0xf1, 0xb0, A(0x0f), 0xd9, 0xbf, 0xda, 0xc0, 0xc5, 0x2d,
-    0x2d, 0xc4, 0x2d, 0x5f, 0xc3, 0xb4, 0xc1, 0xc2, 0xb3, 0xf3,
-    0xf2, 0xe3, 0xd8, 0x9c, 0xf9,
-
-    A(127)
-};
-
-# undef A
-
-#endif
-
-Uint32 pdc_lastupdate = 0;
-
-#define MAXRECT 200     /* maximum number of rects to queue up before
-                           an update is forced; the number was chosen
-                           arbitrarily */
-
-static SDL_Rect uprect[MAXRECT];       /* table of rects to update */
-static chtype oldch = (chtype)(-1);    /* current attribute */
-static int rectcount = 0;              /* index into uprect */
-static short foregr = -2, backgr = -2; /* current foreground, background */
-
-/* do the real updates on a delay */
-
-void PDC_update_rects(void)
-{
-    if (rectcount)
-    {
-        /* if the maximum number of rects has been reached, we're 
-           probably better off doing a full screen update */
-
-        if (rectcount == MAXRECT)
-            SDL_Flip(pdc_screen);
-        else
-            SDL_UpdateRects(pdc_screen, rectcount, uprect);
-
-        pdc_lastupdate = SDL_GetTicks();
-        rectcount = 0;
-    }
-}
-
-/* set the font colors to match the chtype's attribute */
-
-static void _set_attr(chtype ch)
-{
-    ch &= (A_COLOR|A_BOLD|A_BLINK|A_REVERSE);
-
-    if (oldch != ch)
-    {
-        short newfg, newbg;
-
-        if (SP->mono)
-            return;
-
-        PDC_pair_content(PAIR_NUMBER(ch), &newfg, &newbg);
-
-        newfg |= (ch & A_BOLD) ? 8 : 0;
-        newbg |= (ch & A_BLINK) ? 8 : 0;
-
-        if (ch & A_REVERSE)
-        {
-            short tmp = newfg;
-            newfg = newbg;
-            newbg = tmp;
-        }
-
-        if (newfg != foregr)
-        {
-            SDL_SetPalette(pdc_font, SDL_LOGPAL, 
-                           pdc_color + newfg, pdc_flastc, 1);
-            foregr = newfg;
-        }
-
-        if (newbg != backgr)
-        {
-            if (newbg == -1)
-                SDL_SetColorKey(pdc_font, SDL_SRCCOLORKEY, 0);
-            else
-            {
-                if (backgr == -1)
-                    SDL_SetColorKey(pdc_font, 0, 0);
-
-                SDL_SetPalette(pdc_font, SDL_LOGPAL,
-                               pdc_color + newbg, 0, 1);
-            }
-
-            backgr = newbg;
-        }
-
-        oldch = ch;
-    }
-}
-
-/* draw a cursor at (y, x) */
-
-void PDC_gotoyx(int row, int col)
-{
-    SDL_Rect src, dest;
-    chtype ch;
-    int oldrow, oldcol;
-
-    PDC_LOG(("PDC_gotoyx() - called: row %d col %d from row %d col %d\n",
-             row, col, SP->cursrow, SP->curscol));
-
-    if (SP->mono)
-        return;
-
-    oldrow = SP->cursrow;
-    oldcol = SP->curscol;
-
-    /* clear the old cursor */
-
-    PDC_transform_line(oldrow, oldcol, 1, curscr->_y[oldrow] + oldcol);
-
-    if (!SP->visibility)
-        return;
-
-    /* draw a new cursor by overprinting the existing character in 
-       reverse, either the full cell (when visibility == 2) or the 
-       lowest quarter of it (when visibility == 1) */
-
-    ch = curscr->_y[row][col] ^ A_REVERSE;
-
-    _set_attr(ch);
-
-#ifdef CHTYPE_LONG
-    if (ch & A_ALTCHARSET && !(ch & 0xff80))
-        ch = acs_map[ch & 0x7f];
-#endif
-    src.h = (SP->visibility == 1) ? pdc_fheight >> 2 : pdc_fheight;
-    src.w = pdc_fwidth;
-
-    dest.y = (row + 1) * pdc_fheight - src.h + pdc_yoffset;
-    dest.x = col * pdc_fwidth + pdc_xoffset;
-
-    src.x = (ch & 0xff) % 32 * pdc_fwidth;
-    src.y = (ch & 0xff) / 32 * pdc_fheight + (pdc_fheight - src.h);
-
-    SDL_BlitSurface(pdc_font, &src, pdc_screen, &dest);
-
-    if (oldrow != row || oldcol != col)
-    {
-        if (rectcount == MAXRECT)
-            PDC_update_rects();
-
-        uprect[rectcount++] = dest;
-    }
-}
-
-/* handle the A_*LINE attributes */
-
-static void _highlight(SDL_Rect *src, SDL_Rect *dest, chtype ch)
-{
-    short col = SP->line_color;
-
-    if (SP->mono)
-        return;
-
-    if (ch & A_UNDERLINE)
-    {
-        if (col != -1)
-            SDL_SetPalette(pdc_font, SDL_LOGPAL,
-                           pdc_color + col, pdc_flastc, 1);
-
-        src->x = '_' % 32 * pdc_fwidth;
-        src->y = '_' / 32 * pdc_fheight;
-
-        if (backgr != -1)
-            SDL_SetColorKey(pdc_font, SDL_SRCCOLORKEY, 0);
-
-        SDL_BlitSurface(pdc_font, src, pdc_screen, dest);
-
-        if (backgr != -1)
-            SDL_SetColorKey(pdc_font, 0, 0);
-
-        if (col != -1)
-            SDL_SetPalette(pdc_font, SDL_LOGPAL,
-                           pdc_color + foregr, pdc_flastc, 1);
-    }
-
-    if (ch & (A_LEFTLINE|A_RIGHTLINE))
-    {
-        if (col == -1)
-            col = foregr;
-
-        dest->w = 1;
-
-        if (ch & A_LEFTLINE)
-            SDL_FillRect(pdc_screen, dest, pdc_mapped[col]);
-
-        if (ch & A_RIGHTLINE)
-        {
-            dest->x += pdc_fwidth - 1;
-            SDL_FillRect(pdc_screen, dest, pdc_mapped[col]);
-            dest->x -= pdc_fwidth - 1;
-        }
-
-        dest->w = pdc_fwidth;
-    }
-}
-
-/* update the given physical line to look like the corresponding line in
-   curscr */
-
-void PDC_transform_line(int lineno, int x, int len, const chtype *srcp)
-{
-    SDL_Rect src, dest, lastrect;
-    int j;
-
-    PDC_LOG(("PDC_transform_line() - called: lineno=%d\n", lineno));
-
-    if (rectcount == MAXRECT)
-        PDC_update_rects();
-
-    src.h = pdc_fheight;
-    src.w = pdc_fwidth;
-
-    dest.y = pdc_fheight * lineno + pdc_yoffset;
-    dest.x = pdc_fwidth * x + pdc_xoffset;
-    dest.h = pdc_fheight;
-    dest.w = pdc_fwidth * len;
-
-    /* if the previous rect was just above this one, with the same width
-       and horizontal position, then merge the new one with it instead
-       of adding a new entry */
-
-    if (rectcount)
-        lastrect = uprect[rectcount - 1];
-
-    if (rectcount && lastrect.x == dest.x && lastrect.w == dest.w)
-    {
-        if (lastrect.y + lastrect.h == dest.y)
-            uprect[rectcount - 1].h = lastrect.h + pdc_fheight;
-        else
-            if (lastrect.y != dest.y)
-                uprect[rectcount++] = dest;
-    } 
-    else
-        uprect[rectcount++] = dest;
-
-    dest.w = pdc_fwidth;
-
-    for (j = 0; j < len; j++)
-    {
-        chtype ch = srcp[j];
-
-        _set_attr(ch);
-#ifdef CHTYPE_LONG
-        if (ch & A_ALTCHARSET && !(ch & 0xff80))
-            ch = (ch & (A_ATTRIBUTES ^ A_ALTCHARSET)) | acs_map[ch & 0x7f];
-#endif
-        if (backgr == -1)
-            SDL_LowerBlit(pdc_tileback, &dest, pdc_screen, &dest);
-
-        src.x = (ch & 0xff) % 32 * pdc_fwidth;
-        src.y = (ch & 0xff) / 32 * pdc_fheight;
-
-        SDL_LowerBlit(pdc_font, &src, pdc_screen, &dest);
-
-        if (ch & (A_UNDERLINE|A_LEFTLINE|A_RIGHTLINE))
-            _highlight(&src, &dest, ch);
-
-        dest.x += pdc_fwidth;
-    }
-}
diff --git a/src/other/PDCurses/sdl1/pdcgetsc.c b/src/other/PDCurses/sdl1/pdcgetsc.c
deleted file mode 100644
index 4319235..0000000
--- a/src/other/PDCurses/sdl1/pdcgetsc.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcsdl.h"
-
-RCSID("$Id: pdcgetsc.c,v 1.8 2008/07/14 04:24:52 wmcbrine Exp $")
-
-/* get the cursor size/shape */
-
-int PDC_get_cursor_mode(void)
-{
-    PDC_LOG(("PDC_get_cursor_mode() - called\n"));
-
-    return 0;
-}
-
-/* return number of screen rows */
-
-int PDC_get_rows(void)
-{
-    PDC_LOG(("PDC_get_rows() - called\n"));
-
-    return pdc_sheight / pdc_fheight;
-}
-
-/* return width of screen/viewport */
-
-int PDC_get_columns(void)
-{
-    PDC_LOG(("PDC_get_columns() - called\n"));
-
-    return pdc_swidth / pdc_fwidth;
-}
diff --git a/src/other/PDCurses/sdl1/pdckbd.c b/src/other/PDCurses/sdl1/pdckbd.c
deleted file mode 100644
index 57a88e1..0000000
--- a/src/other/PDCurses/sdl1/pdckbd.c
+++ /dev/null
@@ -1,401 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcsdl.h"
-
-RCSID("$Id: pdckbd.c,v 1.21 2011/04/23 06:50:02 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         pdckbd
-
-  Synopsis:
-        unsigned long PDC_get_input_fd(void);
-
-  Description:
-        PDC_get_input_fd() returns the file descriptor that PDCurses 
-        reads its input from. It can be used for select().
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_get_input_fd                        -       -       -
-
-**man-end****************************************************************/
-
-#include <string.h>
-
-unsigned long pdc_key_modifiers = 0L;
-
-static SDL_Event event;
-static SDLKey oldkey;
-static MOUSE_STATUS old_mouse_status;
-
-static struct
-{
-    SDLKey keycode;
-    bool numkeypad;
-    unsigned short normal;
-    unsigned short shifted;
-    unsigned short control;
-    unsigned short alt;
-} key_table[] =
-{
-/* keycode	keypad	normal	     shifted	   control	alt*/
- {SDLK_LEFT,	FALSE,	KEY_LEFT,    KEY_SLEFT,    CTL_LEFT,	ALT_LEFT},
- {SDLK_RIGHT,	FALSE,	KEY_RIGHT,   KEY_SRIGHT,   CTL_RIGHT,	ALT_RIGHT},
- {SDLK_UP,	FALSE,	KEY_UP,      KEY_SUP,	   CTL_UP,	ALT_UP},
- {SDLK_DOWN,	FALSE,	KEY_DOWN,    KEY_SDOWN,    CTL_DOWN,	ALT_DOWN},
- {SDLK_HOME,	FALSE,	KEY_HOME,    KEY_SHOME,    CTL_HOME,	ALT_HOME},
- {SDLK_END,	FALSE,	KEY_END,     KEY_SEND,	   CTL_END,	ALT_END},
- {SDLK_PAGEUP,	FALSE,	KEY_PPAGE,   KEY_SPREVIOUS,CTL_PGUP,	ALT_PGUP},
- {SDLK_PAGEDOWN,FALSE,	KEY_NPAGE,   KEY_SNEXT,    CTL_PGDN,	ALT_PGDN},
- {SDLK_INSERT,	FALSE,	KEY_IC,      KEY_SIC,	   CTL_INS,	ALT_INS},
- {SDLK_DELETE,	FALSE,	KEY_DC,      KEY_SDC,	   CTL_DEL,	ALT_DEL},
- {SDLK_F1,	FALSE,	KEY_F(1),    KEY_F(13),    KEY_F(25),	KEY_F(37)},
- {SDLK_F2,	FALSE,	KEY_F(2),    KEY_F(14),    KEY_F(26),	KEY_F(38)},
- {SDLK_F3,	FALSE,	KEY_F(3),    KEY_F(15),    KEY_F(27),	KEY_F(39)},
- {SDLK_F4,	FALSE,	KEY_F(4),    KEY_F(16),    KEY_F(28),	KEY_F(40)},
- {SDLK_F5,	FALSE,	KEY_F(5),    KEY_F(17),    KEY_F(29),	KEY_F(41)},
- {SDLK_F6,	FALSE,	KEY_F(6),    KEY_F(18),    KEY_F(30),	KEY_F(42)},
- {SDLK_F7,	FALSE,	KEY_F(7),    KEY_F(19),    KEY_F(31),	KEY_F(43)},
- {SDLK_F8,	FALSE,	KEY_F(8),    KEY_F(20),    KEY_F(32),	KEY_F(44)},
- {SDLK_F9,	FALSE,	KEY_F(9),    KEY_F(21),    KEY_F(33),	KEY_F(45)},
- {SDLK_F10,	FALSE,	KEY_F(10),   KEY_F(22),    KEY_F(34),	KEY_F(46)},
- {SDLK_F11,	FALSE,	KEY_F(11),   KEY_F(23),    KEY_F(35),	KEY_F(47)},
- {SDLK_F12,	FALSE,	KEY_F(12),   KEY_F(24),    KEY_F(36),	KEY_F(48)},
- {SDLK_F13,	FALSE,	KEY_F(13),   KEY_F(25),    KEY_F(37),	KEY_F(49)},
- {SDLK_F14,	FALSE,	KEY_F(14),   KEY_F(26),    KEY_F(38),	KEY_F(50)},
- {SDLK_F15,	FALSE,	KEY_F(15),   KEY_F(27),    KEY_F(39),	KEY_F(51)},
- {SDLK_BACKSPACE,FALSE,	0x08,        0x08,	   CTL_BKSP,	ALT_BKSP},
- {SDLK_TAB,	FALSE,	0x09,        KEY_BTAB,	   CTL_TAB,	ALT_TAB},
- {SDLK_PRINT,	FALSE,	KEY_PRINT,   KEY_SPRINT,   KEY_PRINT,	KEY_PRINT},
- {SDLK_PAUSE,	FALSE,	KEY_SUSPEND, KEY_SSUSPEND, KEY_SUSPEND, KEY_SUSPEND},
- {SDLK_CLEAR,	FALSE,	KEY_CLEAR,   KEY_CLEAR,    KEY_CLEAR,	KEY_CLEAR},
- {SDLK_BREAK,	FALSE,	KEY_BREAK,   KEY_BREAK,    KEY_BREAK,	KEY_BREAK},
- {SDLK_HELP,	FALSE,	KEY_HELP,    KEY_SHELP,    KEY_LHELP,	KEY_HELP},
- {SDLK_MENU,	FALSE,	KEY_OPTIONS, KEY_SOPTIONS, KEY_OPTIONS, KEY_OPTIONS},
- {SDLK_ESCAPE,	FALSE,	0x1B,        0x1B,	   0x1B,	ALT_ESC},
- {SDLK_KP_ENTER,TRUE,	PADENTER,    PADENTER,	   CTL_PADENTER,ALT_PADENTER},
- {SDLK_KP_PLUS,	TRUE,	PADPLUS,     '+',	   CTL_PADPLUS, ALT_PADPLUS},
- {SDLK_KP_MINUS,TRUE,	PADMINUS,    '-',	   CTL_PADMINUS,ALT_PADMINUS},
- {SDLK_KP_MULTIPLY,TRUE,PADSTAR,     '*',	   CTL_PADSTAR, ALT_PADSTAR},
- {SDLK_KP_DIVIDE,TRUE,	PADSLASH,    '/',	   CTL_PADSLASH,ALT_PADSLASH},
- {SDLK_KP_PERIOD,TRUE,	PADSTOP,     '.',	   CTL_PADSTOP, ALT_PADSTOP},
- {SDLK_KP0,	TRUE,	PAD0,	     '0',	   CTL_PAD0,	ALT_PAD0},
- {SDLK_KP1,	TRUE,	KEY_C1,      '1',	   CTL_PAD1,	ALT_PAD1},
- {SDLK_KP2,	TRUE,	KEY_C2,      '2',	   CTL_PAD2,	ALT_PAD2},
- {SDLK_KP3,	TRUE,	KEY_C3,      '3',	   CTL_PAD3,	ALT_PAD3},
- {SDLK_KP4,	TRUE,	KEY_B1,      '4',	   CTL_PAD4,	ALT_PAD4},
- {SDLK_KP5,	TRUE,	KEY_B2,      '5',	   CTL_PAD5,	ALT_PAD5},
- {SDLK_KP6,	TRUE,	KEY_B3,      '6',	   CTL_PAD6,	ALT_PAD6},
- {SDLK_KP7,	TRUE,	KEY_A1,      '7',	   CTL_PAD7,	ALT_PAD7},
- {SDLK_KP8,	TRUE,	KEY_A2,      '8',	   CTL_PAD8,	ALT_PAD8},
- {SDLK_KP9,	TRUE,	KEY_A3,      '9',	   CTL_PAD9,	ALT_PAD9},
- {0,		0,	0,	     0,		   0,		0}
-};
-
-unsigned long PDC_get_input_fd(void)
-{
-    PDC_LOG(("PDC_get_input_fd() - called\n"));
-
-    return 0L;  /* test this */
-}
-
-void PDC_set_keyboard_binary(bool on)
-{
-    PDC_LOG(("PDC_set_keyboard_binary() - called\n"));
-}
-
-/* check if a key or mouse event is waiting */
-
-bool PDC_check_key(void)
-{
-    Uint32 current = SDL_GetTicks();
-    int haveevent = SDL_PollEvent(&event);
-
-    /* if we have an event, or 30 ms have passed without a screen 
-       update, or the timer has wrapped, update now */
-
-    if (haveevent ||
-        current < pdc_lastupdate || ((current - pdc_lastupdate) > 30))
-        PDC_update_rects();
-
-    return haveevent;
-}
-
-static int _process_key_event(void)
-{
-    int i, key = 0;
-
-    pdc_key_modifiers = 0L;
-    SP->key_code = FALSE;
-
-    if (event.type == SDL_KEYUP)
-    {
-        if (SP->return_key_modifiers && event.key.keysym.sym == oldkey)
-        {
-            switch (oldkey)
-            {
-            case SDLK_RSHIFT:
-                return KEY_SHIFT_R;
-            case SDLK_LSHIFT:
-                return KEY_SHIFT_L;
-            case SDLK_RCTRL:
-                return KEY_CONTROL_R;
-            case SDLK_LCTRL:
-                return KEY_CONTROL_L;
-            case SDLK_RALT:
-                return KEY_ALT_R;
-            case SDLK_LALT:
-                return KEY_ALT_L;
-            default:
-                break;
-            }
-        }
-
-        return -1;
-    }
-
-    oldkey = event.key.keysym.sym;
-
-    if (SP->save_key_modifiers)
-    {
-        if (event.key.keysym.mod & KMOD_NUM)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_NUMLOCK;
-
-        if (event.key.keysym.mod & KMOD_SHIFT)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_SHIFT;
-
-        if (event.key.keysym.mod & KMOD_CTRL)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_CONTROL;
-
-        if (event.key.keysym.mod & KMOD_ALT)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_ALT;
-    }
-
-    for (i = 0; key_table[i].keycode; i++)
-    {
-        if (key_table[i].keycode == event.key.keysym.sym)
-        {
-            if ((event.key.keysym.mod & KMOD_SHIFT) ||
-                (key_table[i].numkeypad && (event.key.keysym.mod & KMOD_NUM)))
-            {
-                key = key_table[i].shifted;
-            }
-            else if (event.key.keysym.mod & KMOD_CTRL)
-            {
-                key = key_table[i].control;
-            }
-            else if (event.key.keysym.mod & KMOD_ALT)
-            {
-                key = key_table[i].alt;
-            }
-
-            /* To get here, we ignore all other modifiers */
-
-            else
-                key = key_table[i].normal;
-
-            SP->key_code = (key > 0x100);
-            break;
-        }
-    }
-
-    if (!key)
-    {
-        key = event.key.keysym.unicode;
-
-        if (key > 0x7f)
-            key = 0;
-    }
-
-    /* Handle ALT letters and numbers */
-
-    if (event.key.keysym.mod & KMOD_ALT)
-    {
-        if (key >= 'A' && key <= 'Z')
-        {
-            key += ALT_A - 'A';
-            SP->key_code = TRUE;
-        }
-
-        if (key >= 'a' && key <= 'z')
-        {
-            key += ALT_A - 'a';
-            SP->key_code = TRUE;
-        }
-
-        if (key >= '0' && key <= '9')
-        {
-            key += ALT_0 - '0';
-            SP->key_code = TRUE;
-        }
-    }
-
-    return key ? key : -1;
-}
-
-static int _process_mouse_event(void)
-{
-    SDLMod keymods;
-    short shift_flags = 0;
-
-    memset(&pdc_mouse_status, 0, sizeof(MOUSE_STATUS));
-
-    keymods = SDL_GetModState();
-
-    if (keymods & KMOD_SHIFT)
-        shift_flags |= BUTTON_SHIFT;
-
-    if (keymods & KMOD_CTRL)
-        shift_flags |= BUTTON_CONTROL;
-
-    if (keymods & KMOD_ALT)
-        shift_flags |= BUTTON_ALT;
-
-    if (event.type == SDL_MOUSEMOTION)
-    {
-        int i;
-
-        pdc_mouse_status.x = event.motion.x / pdc_fwidth;
-        pdc_mouse_status.y = event.motion.y / pdc_fheight;
-
-        if (!event.motion.state ||
-           (pdc_mouse_status.x == old_mouse_status.x &&
-            pdc_mouse_status.y == old_mouse_status.y))
-            return -1;
-
-        pdc_mouse_status.changes = PDC_MOUSE_MOVED;
-
-        for (i = 0; i < 3; i++)
-        {
-            if (event.motion.state & SDL_BUTTON(i + 1))
-            {
-                pdc_mouse_status.button[i] = BUTTON_MOVED | shift_flags;
-                pdc_mouse_status.changes |= (1 << i);
-            }
-        }
-    }
-    else
-    {
-        short action = (event.button.state == SDL_PRESSED) ?
-                       BUTTON_PRESSED : BUTTON_RELEASED;
-        Uint8 btn = event.button.button;
-
-        /* handle scroll wheel */
-
-        if ((btn >= 4 && btn <= 7) && action == BUTTON_RELEASED)
-        {
-            pdc_mouse_status.x = pdc_mouse_status.y = -1;
-
-            switch (btn)
-            {
-            case 4:
-                pdc_mouse_status.changes = PDC_MOUSE_WHEEL_UP;
-                break;
-            case 5:
-                pdc_mouse_status.changes = PDC_MOUSE_WHEEL_DOWN;
-                break;
-            case 6:
-                pdc_mouse_status.changes = PDC_MOUSE_WHEEL_LEFT;
-                break;
-            case 7:
-                pdc_mouse_status.changes = PDC_MOUSE_WHEEL_RIGHT;
-            }
-
-            return KEY_MOUSE;
-        }
-
-        if (btn < 1 || btn > 3)
-            return -1;
-
-        /* check for a click -- a press followed immediately by a release */
-
-        if (action == BUTTON_PRESSED && SP->mouse_wait)
-        {
-            SDL_Event rel;
-
-            napms(SP->mouse_wait);
-
-            if (SDL_PollEvent(&rel))
-            {
-                if (rel.type == SDL_MOUSEBUTTONUP && rel.button.button == btn)
-                    action = BUTTON_CLICKED;
-                else
-                    SDL_PushEvent(&rel);
-            }
-        }
-
-        pdc_mouse_status.x = event.button.x / pdc_fwidth;
-        pdc_mouse_status.y = event.button.y / pdc_fheight;
-
-        btn--;
-
-        pdc_mouse_status.button[btn] = action | shift_flags;
-        pdc_mouse_status.changes = (1 << btn);
-    }
-
-    old_mouse_status = pdc_mouse_status;
-
-    return KEY_MOUSE;
-}
-
-/* return the next available key or mouse event */
-
-int PDC_get_key(void)
-{
-    switch (event.type)
-    {
-    case SDL_QUIT:
-        exit(1);
-    case SDL_VIDEORESIZE:
-        if (pdc_own_screen &&
-           (event.resize.h / pdc_fheight != LINES ||
-            event.resize.w / pdc_fwidth != COLS))
-        {
-            pdc_sheight = event.resize.h;
-            pdc_swidth = event.resize.w;
-
-            if (!SP->resized)
-            {
-                SP->resized = TRUE;
-                return KEY_RESIZE;
-            }
-        }
-        break;
-    case SDL_MOUSEMOTION:
-        SDL_ShowCursor(SDL_ENABLE);
-    case SDL_MOUSEBUTTONUP:
-    case SDL_MOUSEBUTTONDOWN:
-        oldkey = SDLK_SPACE;
-        if (SP->_trap_mbe)
-            return _process_mouse_event();
-        break;
-    case SDL_KEYUP:
-    case SDL_KEYDOWN:
-        PDC_mouse_set();
-        return _process_key_event();
-    }
-
-    return -1;
-}
-
-/* discard any pending keyboard or mouse input -- this is the core
-   routine for flushinp() */
-
-void PDC_flushinp(void)
-{
-    PDC_LOG(("PDC_flushinp() - called\n"));
-
-    while (PDC_check_key());
-}
-
-int PDC_mouse_set(void)
-{
-    SDL_ShowCursor(SP->_trap_mbe ? SDL_ENABLE : SDL_DISABLE);
-
-    return OK;
-}
-
-int PDC_modifiers_set(void)
-{
-    return OK;
-}
diff --git a/src/other/PDCurses/sdl1/pdcscrn.c b/src/other/PDCurses/sdl1/pdcscrn.c
deleted file mode 100644
index e422b25..0000000
--- a/src/other/PDCurses/sdl1/pdcscrn.c
+++ /dev/null
@@ -1,295 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcsdl.h"
-
-RCSID("$Id: pdcscrn.c,v 1.34 2008/07/14 04:24:52 wmcbrine Exp $")
-
-#include <stdlib.h>
-#include "deffont.h"
-#include "deficon.h"
-
-SDL_Surface *pdc_screen = NULL, *pdc_font = NULL, *pdc_icon = NULL,
-            *pdc_back = NULL, *pdc_tileback = NULL;
-int pdc_sheight = 0, pdc_swidth = 0, pdc_yoffset = 0, pdc_xoffset = 0;
-
-SDL_Color pdc_color[16];
-Uint32 pdc_mapped[16];
-int pdc_fheight, pdc_fwidth, pdc_flastc;
-bool pdc_own_screen;
-
-/* COLOR_PAIR to attribute encoding table. */
-
-static struct {short f, b;} atrtab[PDC_COLOR_PAIRS];
-
-void PDC_retile(void)
-{
-    if (pdc_tileback)
-        SDL_FreeSurface(pdc_tileback);
-
-    pdc_tileback = SDL_DisplayFormat(pdc_screen);
-
-    if (pdc_back)
-    {
-        SDL_Rect dest;
-
-        dest.y = 0;
-
-        while (dest.y < pdc_tileback->h)
-        {
-            dest.x = 0;
-
-            while (dest.x < pdc_tileback->w)
-            {
-                SDL_BlitSurface(pdc_back, 0, pdc_tileback, &dest);
-                dest.x += pdc_back->w;
-            }
-
-            dest.y += pdc_back->h;
-        }
-
-        SDL_BlitSurface(pdc_tileback, 0, pdc_screen, 0);
-    }
-}
-
-void PDC_scr_close(void)
-{
-    PDC_LOG(("PDC_scr_close() - called\n"));
-}
-
-void PDC_scr_free(void)
-{
-    if (SP)
-        free(SP);
-}
-
-/* open the physical screen -- allocate SP, miscellaneous intialization */
-
-int PDC_scr_open(int argc, char **argv)
-{
-    int i;
-
-    PDC_LOG(("PDC_scr_open() - called\n"));
-
-    SP = calloc(1, sizeof(SCREEN));
-
-    if (!SP)
-        return ERR;
-
-    pdc_own_screen = !pdc_screen;
-
-    if (pdc_own_screen)
-    {
-        if (SDL_Init(SDL_INIT_VIDEO|SDL_INIT_TIMER) < 0)
-        {
-            fprintf(stderr, "Could not start SDL: %s\n", SDL_GetError());
-            return ERR;
-        }
-
-        atexit(SDL_Quit);
-    }
-
-    if (!pdc_font)
-    {
-        const char *fname = getenv("PDC_FONT");
-        pdc_font = SDL_LoadBMP(fname ? fname : "pdcfont.bmp");
-    }
-
-    if (!pdc_font)
-        pdc_font = SDL_LoadBMP_RW(SDL_RWFromMem(deffont, sizeof(deffont)), 0);
-
-    if (!pdc_font)
-    {
-        fprintf(stderr, "Could not load font\n");
-        return ERR;
-    }
-
-    SP->mono = !pdc_font->format->palette;
-
-    if (!SP->mono && !pdc_back)
-    {
-        const char *bname = getenv("PDC_BACKGROUND");
-        pdc_back = SDL_LoadBMP(bname ? bname : "pdcback.bmp");
-    }
-
-    if (!SP->mono && (pdc_back || !pdc_own_screen))
-    {
-        SP->orig_attr = TRUE;
-        SP->orig_fore = COLOR_WHITE;
-        SP->orig_back = -1;
-    }
-    else
-        SP->orig_attr = FALSE;
-
-    pdc_fheight = pdc_font->h / 8;
-    pdc_fwidth = pdc_font->w / 32;
-
-    if (!SP->mono)
-        pdc_flastc = pdc_font->format->palette->ncolors - 1;
-
-    if (pdc_own_screen && !pdc_icon)
-    {
-        const char *iname = getenv("PDC_ICON");
-        pdc_icon = SDL_LoadBMP(iname ? iname : "pdcicon.bmp");
-
-        if (!pdc_icon)
-            pdc_icon = SDL_LoadBMP_RW(SDL_RWFromMem(deficon,
-                                                    sizeof(deficon)), 0);
-
-        if (pdc_icon)
-            SDL_WM_SetIcon(pdc_icon, NULL);
-    }
-
-    if (pdc_own_screen)
-    {
-        const char *env = getenv("PDC_LINES");
-        pdc_sheight = (env ? atoi(env) : 25) * pdc_fheight;
-
-        env = getenv("PDC_COLS");
-        pdc_swidth = (env ? atoi(env) : 80) * pdc_fwidth;
-
-        pdc_screen = SDL_SetVideoMode(pdc_swidth, pdc_sheight, 0,
-            SDL_SWSURFACE|SDL_ANYFORMAT|SDL_RESIZABLE);
-    }
-    else
-    {
-        if (!pdc_sheight)
-            pdc_sheight = pdc_screen->h - pdc_yoffset;
-
-        if (!pdc_swidth)
-            pdc_swidth = pdc_screen->w - pdc_xoffset;
-    }
-
-    if (!pdc_screen)
-    {
-        fprintf(stderr, "Couldn't create a surface: %s\n", SDL_GetError());
-        return ERR;
-    }
-
-    if (SP->orig_attr)
-        PDC_retile();
-
-    for (i = 0; i < 8; i++)
-    {
-        pdc_color[i].r = (i & COLOR_RED) ? 0xc0 : 0;
-        pdc_color[i].g = (i & COLOR_GREEN) ? 0xc0 : 0;
-        pdc_color[i].b = (i & COLOR_BLUE) ? 0xc0 : 0;
-
-        pdc_color[i + 8].r = (i & COLOR_RED) ? 0xff : 0x40;
-        pdc_color[i + 8].g = (i & COLOR_GREEN) ? 0xff : 0x40;
-        pdc_color[i + 8].b = (i & COLOR_BLUE) ? 0xff : 0x40;
-    }
-
-    for (i = 0; i < 16; i++)
-        pdc_mapped[i] = SDL_MapRGB(pdc_screen->format, pdc_color[i].r,
-                                   pdc_color[i].g, pdc_color[i].b);
-
-    SDL_EnableUNICODE(1);
-
-    PDC_mouse_set();
-
-    if (pdc_own_screen)
-        PDC_set_title(argc ? argv[0] : "PDCurses");
-
-    SP->lines = PDC_get_rows();
-    SP->cols = PDC_get_columns();
-
-    SP->mouse_wait = PDC_CLICK_PERIOD;
-    SP->audible = FALSE;
-
-    PDC_reset_prog_mode();
-
-    return OK;
-}
-
-/* the core of resize_term() */
-
-int PDC_resize_screen(int nlines, int ncols)
-{
-    if (!pdc_own_screen)
-        return ERR;
-
-    if (nlines && ncols)
-    {
-        pdc_sheight = nlines * pdc_fheight;
-        pdc_swidth = ncols * pdc_fwidth;
-    }
-
-    SDL_FreeSurface(pdc_screen);
-
-    pdc_screen = SDL_SetVideoMode(pdc_swidth, pdc_sheight, 0,
-        SDL_SWSURFACE|SDL_ANYFORMAT|SDL_RESIZABLE);
-
-    if (pdc_tileback)
-        PDC_retile();
-
-    SP->resized = FALSE;
-    SP->cursrow = SP->curscol = 0;
-
-    return OK;
-}
-
-void PDC_reset_prog_mode(void)
-{
-    PDC_LOG(("PDC_reset_prog_mode() - called.\n"));
-
-    PDC_flushinp();
-    SDL_EnableKeyRepeat(SDL_DEFAULT_REPEAT_DELAY, SDL_DEFAULT_REPEAT_INTERVAL);
-}
-
-void PDC_reset_shell_mode(void)
-{
-    PDC_LOG(("PDC_reset_shell_mode() - called.\n"));
-
-    SDL_EnableKeyRepeat(0, 0);
-    PDC_flushinp();
-}
-
-void PDC_restore_screen_mode(int i)
-{
-}
-
-void PDC_save_screen_mode(int i)
-{
-}
-
-void PDC_init_pair(short pair, short fg, short bg)
-{
-    atrtab[pair].f = fg;
-    atrtab[pair].b = bg;
-}
-
-int PDC_pair_content(short pair, short *fg, short *bg)
-{
-    *fg = atrtab[pair].f;
-    *bg = atrtab[pair].b;
-
-    return OK;
-}
-
-bool PDC_can_change_color(void)
-{
-    return TRUE;
-}
-
-int PDC_color_content(short color, short *red, short *green, short *blue)
-{
-    *red = DIVROUND(pdc_color[color].r * 1000, 255);
-    *green = DIVROUND(pdc_color[color].g * 1000, 255);
-    *blue = DIVROUND(pdc_color[color].b * 1000, 255);
-
-    return OK;
-}
-
-int PDC_init_color(short color, short red, short green, short blue)
-{
-    pdc_color[color].r = DIVROUND(red * 255, 1000);
-    pdc_color[color].g = DIVROUND(green * 255, 1000);
-    pdc_color[color].b = DIVROUND(blue * 255, 1000);
-
-    pdc_mapped[color] = SDL_MapRGB(pdc_screen->format, pdc_color[color].r,
-                                   pdc_color[color].g, pdc_color[color].b);
-
-    wrefresh(curscr);
-
-    return OK;
-}
diff --git a/src/other/PDCurses/sdl1/pdcsdl.h b/src/other/PDCurses/sdl1/pdcsdl.h
deleted file mode 100644
index 79df21a..0000000
--- a/src/other/PDCurses/sdl1/pdcsdl.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Public Domain Curses */
-
-/* $Id: pdcsdl.h,v 1.17 2008/07/14 04:24:52 wmcbrine Exp $ */
-
-#include <curspriv.h>
-
-#include <SDL/SDL.h>
-
-PDCEX SDL_Surface *pdc_screen, *pdc_font, *pdc_icon, *pdc_back;
-PDCEX int pdc_sheight, pdc_swidth, pdc_yoffset, pdc_xoffset;
-
-extern SDL_Surface *pdc_tileback;    /* used to regenerate the background
-                                        of "transparent" cells */
-extern SDL_Color pdc_color[16];      /* colors for font palette */
-extern Uint32 pdc_mapped[16];        /* colors for FillRect(), as
-                                        used in _highlight() */
-extern int pdc_fheight, pdc_fwidth;  /* font height and width */
-extern int pdc_flastc;               /* font palette's last color
-                                        (treated as the foreground) */
-extern bool pdc_own_screen;          /* if pdc_screen was not set
-                                        before initscr(), PDCurses is
-                                        responsible for (owns) it */
-extern Uint32 pdc_lastupdate;        /* time of last update, in ticks */
-
-void PDC_update_rects(void);
-void PDC_retile(void);
diff --git a/src/other/PDCurses/sdl1/pdcsetsc.c b/src/other/PDCurses/sdl1/pdcsetsc.c
deleted file mode 100644
index 0df97ab..0000000
--- a/src/other/PDCurses/sdl1/pdcsetsc.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcsdl.h"
-
-RCSID("$Id: pdcsetsc.c,v 1.7 2008/07/14 04:24:52 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         pdcsetsc
-
-  Synopsis:
-        int PDC_set_blink(bool blinkon);
-        void PDC_set_title(const char *title);
-
-  Description:
-        PDC_set_blink() toggles whether the A_BLINK attribute sets an
-        actual blink mode (TRUE), or sets the background color to high
-        intensity (FALSE). The default is platform-dependent (FALSE in
-        most cases). It returns OK if it could set the state to match 
-        the given parameter, ERR otherwise. Current platforms also 
-        adjust the value of COLORS according to this function -- 16 for 
-        FALSE, and 8 for TRUE.
-
-        PDC_set_title() sets the title of the window in which the curses
-        program is running. This function may not do anything on some
-        platforms. (Currently it only works in Win32 and X11.)
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_set_blink                           -       -       -
-        PDC_set_title                           -       -       -
-
-**man-end****************************************************************/
-
-int PDC_curs_set(int visibility)
-{
-    int ret_vis;
-
-    PDC_LOG(("PDC_curs_set() - called: visibility=%d\n", visibility));
-
-    ret_vis = SP->visibility;
-
-    SP->visibility = visibility;
-
-    PDC_gotoyx(SP->cursrow, SP->curscol);
-
-    return ret_vis;
-}
-
-void PDC_set_title(const char *title)
-{
-    PDC_LOG(("PDC_set_title() - called:<%s>\n", title));
-
-    SDL_WM_SetCaption(title, title);
-}
-
-int PDC_set_blink(bool blinkon)
-{
-    if (pdc_color_started)
-        COLORS = 16;
-
-    return blinkon ? ERR : OK;
-}
diff --git a/src/other/PDCurses/sdl1/pdcutil.c b/src/other/PDCurses/sdl1/pdcutil.c
deleted file mode 100644
index b2d8404..0000000
--- a/src/other/PDCurses/sdl1/pdcutil.c
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcsdl.h"
-
-RCSID("$Id: pdcutil.c,v 1.6 2008/07/14 04:24:52 wmcbrine Exp $")
-
-void PDC_beep(void)
-{
-    PDC_LOG(("PDC_beep() - called\n"));
-}
-
-void PDC_napms(int ms)
-{
-    PDC_LOG(("PDC_napms() - called: ms=%d\n", ms));
-
-    PDC_update_rects();
-    SDL_Delay(ms);
-}
-
-const char *PDC_sysname(void)
-{
-    return "SDL";
-}
diff --git a/src/other/PDCurses/sdl1/sdltest.c b/src/other/PDCurses/sdl1/sdltest.c
deleted file mode 100644
index d39533b..0000000
--- a/src/other/PDCurses/sdl1/sdltest.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/* Here's a simple example of combining SDL and PDCurses functionality.
-   The top portion of the window is devoted to SDL, with a four-line
-   (assuming the default 8x16 font) stdscr at the bottom.
-
-   $Id: sdltest.c,v 1.2 2008/07/14 04:24:52 wmcbrine Exp $
-*/
-
-#include <SDL/SDL.h>
-#include <curses.h>
-#include <stdlib.h>
-#include <time.h>
-
-/* You could #include pdcsdl.h, or just add the relevant declarations 
-   here: */
-
-PDCEX SDL_Surface *pdc_screen;
-PDCEX int pdc_yoffset;
-
-int main(int argc, char **argv)
-{
-    char inp[60];
-    int i, j, seed;
-
-    seed = time((time_t *)0);
-    srand(seed);
-
-    /* Initialize SDL */
-
-    if (SDL_Init(SDL_INIT_VIDEO) < 0)
-        exit(1);
-
-    atexit(SDL_Quit);
-
-    pdc_screen = SDL_SetVideoMode(640, 480, 0, SDL_SWSURFACE|SDL_ANYFORMAT);
-
-    /* Initialize PDCurses */
-
-    pdc_yoffset = 416;  /* 480 - 4 * 16 */
-
-    initscr();
-    start_color();
-    scrollok(stdscr, TRUE);
-
-    PDC_set_title("PDCurses for SDL");
-
-    /* Do some SDL stuff */
-
-    for (i = 640, j = 416; j; i -= 2, j -= 2)
-    {
-        SDL_Rect dest;
-
-        dest.x = (640 - i) / 2;
-        dest.y = (416 - j) / 2;
-        dest.w = i;
-        dest.h = j;
-
-        SDL_FillRect(pdc_screen, &dest, 
-                     SDL_MapRGB(pdc_screen->format, rand() % 256,
-                                rand() % 256, rand() % 256));
-    }
-
-    SDL_UpdateRect(pdc_screen, 0, 0, 640, 416);
-
-    /* Do some curses stuff */
-
-    init_pair(1, COLOR_WHITE + 8, COLOR_BLUE);
-    bkgd(COLOR_PAIR(1));
-
-    addstr("This is a demo of ");
-    attron(A_UNDERLINE);
-    addstr("PDCurses for SDL");
-    attroff(A_UNDERLINE);
-    addstr(".\nYour comments here: ");
-    getnstr(inp, 59);
-    addstr("Press any key to exit.");
-
-    getch();
-    endwin();
-
-    return 0;
-}
diff --git a/src/other/PDCurses/term.h b/src/other/PDCurses/term.h
deleted file mode 100644
index ce6bc4f..0000000
--- a/src/other/PDCurses/term.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Public Domain Curses */
-
-/* $Id: term.h,v 1.16 2008/07/13 16:08:16 wmcbrine Exp $ */
-
-/* PDCurses doesn't operate with terminfo, but we need these functions for 
-   compatibility, to allow some things (notably, interface libraries for 
-   other languages) to be compiled. Anyone who tries to actually _use_ 
-   them will be disappointed, since they only return ERR. */
-
-#ifndef __PDCURSES_TERM_H__
-#define __PDCURSES_TERM_H__ 1
-
-#include <curses.h>
-
-#if defined(__cplusplus) || defined(__cplusplus__) || defined(__CPLUSPLUS)
-extern "C"
-{
-#endif
-
-typedef struct
-{
-    const char *_termname;
-} TERMINAL;
-
-#ifdef PDC_DLL_BUILD
-# ifndef CURSES_LIBRARY
-__declspec(dllimport)  TERMINAL *cur_term;
-# else
-__declspec(dllexport) extern TERMINAL *cur_term;
-# endif
-#else
-extern TERMINAL *cur_term;
-#endif
-
-int     del_curterm(TERMINAL *);
-int     putp(const char *);
-int     restartterm(const char *, int, int *);
-TERMINAL *set_curterm(TERMINAL *);
-int     setterm(const char *);
-int     setupterm(const char *, int, int *);
-int     tgetent(char *, const char *);
-int     tgetflag(const char *);
-int     tgetnum(const char *);
-char   *tgetstr(const char *, char **);
-char   *tgoto(const char *, int, int);
-int     tigetflag(const char *);
-int     tigetnum(const char *);
-char   *tigetstr(const char *);
-char   *tparm(const char *, long, long, long, long, long, 
-              long, long, long, long);
-int     tputs(const char *, int, int (*)(int));
-
-#if defined(__cplusplus) || defined(__cplusplus__) || defined(__CPLUSPLUS)
-}
-#endif
-
-#endif /* __PDCURSES_TERM_H__ */
diff --git a/src/other/PDCurses/version.mif b/src/other/PDCurses/version.mif
deleted file mode 100644
index 9ff7335..0000000
--- a/src/other/PDCurses/version.mif
+++ /dev/null
@@ -1,4 +0,0 @@
-# Version number macros for inclusion from makefiles
-
-VER = 34
-VERDOT = 3.4
diff --git a/src/other/PDCurses/watcom.mif b/src/other/PDCurses/watcom.mif
deleted file mode 100644
index 023ea37..0000000
--- a/src/other/PDCurses/watcom.mif
+++ /dev/null
@@ -1,59 +0,0 @@
-# Common elements for the Watcom makefiles
-
-srcdir = $(PDCURSES_SRCDIR)\pdcurses
-demodir = $(PDCURSES_SRCDIR)\demos
-
-LIBOBJS = addch.obj addchstr.obj addstr.obj attr.obj beep.obj bkgd.obj &
-border.obj clear.obj color.obj delch.obj deleteln.obj deprec.obj &
-getch.obj getstr.obj getyx.obj inch.obj inchstr.obj initscr.obj inopts.obj &
-insch.obj insstr.obj instr.obj kernel.obj keyname.obj mouse.obj move.obj &
-outopts.obj overlay.obj pad.obj panel.obj printw.obj refresh.obj &
-scanw.obj scr_dump.obj scroll.obj slk.obj termattr.obj terminfo.obj &
-touch.obj util.obj window.obj debug.obj
-
-PDCOBJS = pdcclip.obj pdcdisp.obj pdcgetsc.obj pdckbd.obj pdcscrn.obj &
-pdcsetsc.obj pdcutil.obj
-
-DEMOS = testcurs.exe newdemo.exe xmas.exe tuidemo.exe firework.exe &
-ptest.exe rain.exe worm.exe
-
-LIBCURSES = pdcurses.lib
-
-LINK = wlink
-
-!ifdef __LOADDLL__
-! loaddll wcc    wccd
-! loaddll wcc386 wccd386
-! loaddll wlink  wlink
-! loaddll wlib   wlibd
-!endif
-
-all:	$(LIBCURSES) $(DEMOS)
-
-clean
-	-del *.obj
-	-del *.lib
-	-del *.exe
-	-del *.err
-
-demos:	$(DEMOS)
-
-.c: $(srcdir);$(osdir);$(demodir)
-.c.obj: .autodepend
-	$(CC) $(CFLAGS) $<
-
-.obj.exe:
-	$(LINK) $(LDFLAGS) n $@ f $*.obj l $(LIBCURSES)
-
-testcurs.exe:	testcurs.obj $(LIBCURSES)
-newdemo.exe:	newdemo.obj $(LIBCURSES)
-xmas.exe:	xmas.obj $(LIBCURSES)
-firework.exe:	firework.obj $(LIBCURSES)
-rain.exe:	rain.obj $(LIBCURSES)
-worm.exe:	worm.obj $(LIBCURSES)
-ptest.exe:	ptest.obj $(LIBCURSES)
-
-tuidemo.exe:	tuidemo.obj tui.obj $(LIBCURSES)
-	$(LINK) $(LDFLAGS) n $@ f tuidemo.obj f tui.obj l $(LIBCURSES)
-
-dist: .symbolic
diff --git a/src/other/PDCurses/win32/README b/src/other/PDCurses/win32/README
deleted file mode 100644
index 88dd0d7..0000000
--- a/src/other/PDCurses/win32/README
+++ /dev/null
@@ -1,76 +0,0 @@
-PDCurses for Win32
-==================
-
-This directory contains PDCurses source code files specific to Win32 
-console mode (Win9x/Me/NT/2k/XP/Vista).
-
-
-Building
---------
-
-. Choose the appropriate makefile for your compiler:
-
-	bccwin32.mak	- Borland C++ 4.0.2+
-	dmcwin32.mak	- Digital Mars
-	gccwin32.mak	- Cygnus GNU Compiler
-	lccwin32.mak	- LCC-Win32
-	mingwin32.mak	- MinGW
-	vcwin32.mak	- Microsoft Visual C++ 2.0+
-	wccwin32.mak	- Watcom 10.6+
-
-. Optionally, you can build in a different directory than the platform
-  directory by setting PDCURSES_SRCDIR to point to the directory where
-  you unpacked PDCurses, and changing to your target directory:
-
-	set PDCURSES_SRCDIR=c:\pdcurses
-
-  This won't work with the LCC or Digital Mars makefiles, nor will the
-  options described below.
-
-. Build it:
-
-	make -f makefilename
-
-  (For Watcom, use "wmake" instead of "make"; for MSVC, "nmake".) You'll
-  get the libraries (pdcurses.lib or .a, depending on your compiler; and
-  panel.lib or .a), the demos (*.exe), and a lot of object files. Note
-  that the panel library is just a copy of the main library, provided
-  for convenience; both panel and curses functions are in the main
-  library.
-
-  You can also give the optional parameter "WIDE=Y", to build the 
-  library with wide-character (Unicode) support:
-
-	make -f mingwin32.mak WIDE=Y
-
-  When built this way, the library is not compatible with Windows 9x,
-  unless you also link with the Microsoft Layer for Unicode (not
-  tested).
-
-  Another option, "UTF8=Y", makes PDCurses ignore the system locale, and 
-  treat all narrow-character strings as UTF-8. This option has no effect 
-  unless WIDE=Y is also set. Use it to get around the poor support for 
-  UTF-8 in the Win32 console:
-
-	make -f mingwin32.mak WIDE=Y UTF8=Y
-
-  You can also use the optional parameter "DLL=Y" with Visual C++,
-  MinGW or Cygwin, to build the library as a DLL:
-
-	nmake -f vcwin32.mak WIDE=Y DLL=Y
-
-  When you build the library as a Windows DLL, you must always define
-  PDC_DLL_BUILD when linking against it. (Or, if you only want to use
-  the DLL, you could add this definition to your curses.h.)
-
-
-Distribution Status
--------------------
-
-The files in this directory are released to the Public Domain.
-
-
-Acknowledgements
-----------------
-
-Generic Win32 port was provided by Chris Szurgot <szurgot at itribe.net>
diff --git a/src/other/PDCurses/win32/bccwin32.mak b/src/other/PDCurses/win32/bccwin32.mak
deleted file mode 100644
index 229ab4b..0000000
--- a/src/other/PDCurses/win32/bccwin32.mak
+++ /dev/null
@@ -1,85 +0,0 @@
-# Borland MAKE Makefile for PDCurses library - Win32 BC++ 4.0+
-#
-# Usage: make -f [path\]bccwin32.mak [DEBUG=] [WIDE=] [UTF8=] [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.lib|testcurs.exe...]
-
-O = obj
-
-!ifndef PDCURSES_SRCDIR
-PDCURSES_SRCDIR = ..
-!endif
-
-!include $(PDCURSES_SRCDIR)\version.mif
-!include $(PDCURSES_SRCDIR)\libobjs.mif
-
-osdir		= $(PDCURSES_SRCDIR)\win32
-
-CC		= bcc32 -q
-
-!ifdef DEBUG
-CFLAGS		= -N -v -y -DPDCDEBUG
-!else
-CFLAGS		= -O
-!endif
-
-!ifdef WIDE
-WIDEOPT		= -DPDC_WIDE
-!endif
-
-!ifdef UTF8
-UTF8OPT		= -DPDC_FORCE_UTF8
-!endif
-
-BUILD		= $(CC) -I$(PDCURSES_SRCDIR) -c -Tpe -w32 $(CFLAGS) -w-par \
-$(WIDEOPT) $(UTF8OPT)
-
-LIBEXE		= tlib /C /E /0 /a
-
-LIBCURSES	= pdcurses.lib
-
-all:	$(LIBCURSES) $(DEMOS)
-
-clean:
-	-del *.obj
-	-del *.lib
-	-del *.tds
-	-del *.exe
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	-del $@
-	$(LIBEXE) $@ $(LIBOBJS) $(PDCOBJS)
-	-copy $(LIBCURSES) panel.lib
-
-.autodepend
-
-{$(srcdir)\}.c.obj:
-	$(BUILD) $<
-
-{$(osdir)\}.c.obj:
-	$(BUILD) $<
-
-{$(demodir)\}.c.obj:
-	$(BUILD) $<
-
-.c.obj:
-	$(BUILD) $<
-
-.obj.exe:
-	$(CC) -e$@ $** $(LIBCURSES)
-
-tuidemo.exe:	tuidemo.obj tui.obj $(LIBCURSES)
-	$(CC) -e$@ $**
-
-tui.obj: $(demodir)\tui.c $(demodir)\tui.h $(PDCURSES_CURSES_H)
-	$(BUILD) -I$(demodir) $(demodir)\tui.c
-
-tuidemo.obj: $(demodir)\tuidemo.c $(PDCURSES_CURSES_H)
-	$(BUILD) -I$(demodir) $(demodir)\tuidemo.c
-
-PLATFORM1 = Borland C++ Win32
-PLATFORM2 = Borland C/C++ 5.5 for Win32
-ARCNAME = pdc$(VER)_bcc_w32
-
-!include $(PDCURSES_SRCDIR)\makedist.mif
diff --git a/src/other/PDCurses/win32/dmcwin32.mak b/src/other/PDCurses/win32/dmcwin32.mak
deleted file mode 100644
index 23522cc..0000000
--- a/src/other/PDCurses/win32/dmcwin32.mak
+++ /dev/null
@@ -1,253 +0,0 @@
-# Makefile for PDCurses library - WIN32 Digital Mars
-#
-# Usage: make -f dmcwin32.mak [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.lib|testcurs.exe...]
-
-PDCURSES_SRCDIR	= ..
-
-PDCURSES_CURSES_H	= $(PDCURSES_SRCDIR)\curses.h
-PDCURSES_CURSPRIV_H	= $(PDCURSES_SRCDIR)\curspriv.h
-PDCURSES_HEADERS	= $(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
-
-PANEL_HEADER	= $(PDCURSES_SRCDIR)\panel.h
-TERM_HEADER	= $(PDCURSES_SRCDIR)\term.h
-
-srcdir		= $(PDCURSES_SRCDIR)\pdcurses
-osdir		= $(PDCURSES_SRCDIR)\win32
-demodir		= $(PDCURSES_SRCDIR)\demos
-
-PDCURSES_WIN_H	= $(osdir)\pdcwin.h
-
-CC		= dmc
-
-CFLAGS		= -c -o+space -Nc
-
-CPPFLAGS	= -I$(PDCURSES_SRCDIR) #-DPDC_WIDE -DPDC_FORCE_UTF8
-
-LINK		= dmc
-LIBEXE		= lib
-
-LIBCURSES	= pdcurses.lib
-
-BUILD		= $(CC) $(CFLAGS) $(CPPFLAGS)
-
-DEMOS		= testcurs.exe newdemo.exe xmas.exe tuidemo.exe \
-firework.exe ptest.exe rain.exe worm.exe
-
-all:    $(LIBCURSES) $(DEMOS)
-
-clean:
-	-del *.obj
-	-del *.lib
-	-del *.exe
-	-del *.map
-	-del advapi32.def
-
-LIBOBJS = addch.obj addchstr.obj addstr.obj attr.obj beep.obj bkgd.obj \
-border.obj clear.obj color.obj delch.obj deleteln.obj deprec.obj getch.obj \
-getstr.obj getyx.obj inch.obj inchstr.obj initscr.obj inopts.obj \
-insch.obj insstr.obj instr.obj kernel.obj keyname.obj mouse.obj move.obj \
-outopts.obj overlay.obj pad.obj panel.obj printw.obj refresh.obj \
-scanw.obj scr_dump.obj scroll.obj slk.obj termattr.obj terminfo.obj \
-touch.obj util.obj window.obj debug.obj
-
-PDCOBJS = pdcclip.obj pdcdisp.obj pdcgetsc.obj pdckbd.obj pdcscrn.obj \
-pdcsetsc.obj pdcutil.obj
-
-DEMOOBJS = testcurs.obj newdemo.obj xmas.obj tuidemo.obj tui.obj \
-firework.obj ptest.obj rain.obj worm.obj
-
-$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS)
-$(PDCOBJS) : $(PDCURSES_WIN_H)
-panel.obj ptest.obj: $(PANEL_HEADER)
-terminfo.obj: $(TERM_HEADER)
-
-$(DEMOOBJS) : $(PDCURSES_CURSES_H)
-$(DEMOS) : $(LIBCURSES)
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	$(LIBEXE) -c $@ $(LIBOBJS) $(PDCOBJS)
-	-copy $(LIBCURSES) panel.lib
-
-SRCBUILD = $(BUILD) $(srcdir)\$*.c
-OSBUILD = $(BUILD) $(osdir)\$*.c
-DEMOBUILD = $(LINK) $(CPPFLAGS) -o+space $@ $**
-
-addch.obj: $(srcdir)\addch.c
-	$(SRCBUILD)
-
-addchstr.obj: $(srcdir)\addchstr.c
-	$(SRCBUILD)
-
-addstr.obj: $(srcdir)\addstr.c
-	$(SRCBUILD)
-
-attr.obj: $(srcdir)\attr.c
-	$(SRCBUILD)
-
-beep.obj: $(srcdir)\beep.c
-	$(SRCBUILD)
-
-bkgd.obj: $(srcdir)\bkgd.c
-	$(SRCBUILD)
-
-border.obj: $(srcdir)\border.c
-	$(SRCBUILD)
-
-clear.obj: $(srcdir)\clear.c
-	$(SRCBUILD)
-
-color.obj: $(srcdir)\color.c
-	$(SRCBUILD)
-
-delch.obj: $(srcdir)\delch.c
-	$(SRCBUILD)
-
-deleteln.obj: $(srcdir)\deleteln.c
-	$(SRCBUILD)
-
-deprec.obj: $(srcdir)\deprec.c
-	$(SRCBUILD)
-
-getch.obj: $(srcdir)\getch.c
-	$(SRCBUILD)
-
-getstr.obj: $(srcdir)\getstr.c
-	$(SRCBUILD)
-
-getyx.obj: $(srcdir)\getyx.c
-	$(SRCBUILD)
-
-inch.obj: $(srcdir)\inch.c
-	$(SRCBUILD)
-
-inchstr.obj: $(srcdir)\inchstr.c
-	$(SRCBUILD)
-
-initscr.obj: $(srcdir)\initscr.c
-	$(SRCBUILD)
-
-inopts.obj: $(srcdir)\inopts.c
-	$(SRCBUILD)
-
-insch.obj: $(srcdir)\insch.c
-	$(SRCBUILD)
-
-insstr.obj: $(srcdir)\insstr.c
-	$(SRCBUILD)
-
-instr.obj: $(srcdir)\instr.c
-	$(SRCBUILD)
-
-kernel.obj: $(srcdir)\kernel.c
-	$(SRCBUILD)
-
-keyname.obj: $(srcdir)\keyname.c
-	$(SRCBUILD)
-
-mouse.obj: $(srcdir)\mouse.c
-	$(SRCBUILD)
-
-move.obj: $(srcdir)\move.c
-	$(SRCBUILD)
-
-outopts.obj: $(srcdir)\outopts.c
-	$(SRCBUILD)
-
-overlay.obj: $(srcdir)\overlay.c
-	$(SRCBUILD)
-
-pad.obj: $(srcdir)\pad.c
-	$(SRCBUILD)
-
-panel.obj: $(srcdir)\panel.c
-	$(SRCBUILD)
-
-printw.obj: $(srcdir)\printw.c
-	$(SRCBUILD)
-
-refresh.obj: $(srcdir)\refresh.c
-	$(SRCBUILD)
-
-scanw.obj: $(srcdir)\scanw.c
-	$(SRCBUILD)
-
-scr_dump.obj: $(srcdir)\scr_dump.c
-	$(SRCBUILD)
-
-scroll.obj: $(srcdir)\scroll.c
-	$(SRCBUILD)
-
-slk.obj: $(srcdir)\slk.c
-	$(SRCBUILD)
-
-termattr.obj: $(srcdir)\termattr.c
-	$(SRCBUILD)
-
-terminfo.obj: $(srcdir)\terminfo.c
-	$(SRCBUILD)
-
-touch.obj: $(srcdir)\touch.c
-	$(SRCBUILD)
-
-util.obj: $(srcdir)\util.c
-	$(SRCBUILD)
-
-window.obj: $(srcdir)\window.c
-	$(SRCBUILD)
-
-debug.obj: $(srcdir)\debug.c
-	$(SRCBUILD)
-
-pdcclip.obj: $(osdir)\pdcclip.c
-	$(OSBUILD)
-
-pdcdisp.obj: $(osdir)\pdcdisp.c
-	$(OSBUILD)
-
-pdcgetsc.obj: $(osdir)\pdcgetsc.c
-	$(OSBUILD)
-
-pdckbd.obj: $(osdir)\pdckbd.c
-	$(OSBUILD)
-
-pdcscrn.obj: $(osdir)\pdcscrn.c
-	$(OSBUILD)
-
-pdcsetsc.obj: $(osdir)\pdcsetsc.c
-	$(OSBUILD)
-
-pdcutil.obj: $(osdir)\pdcutil.c
-	$(OSBUILD)
-
-firework.exe:   $(demodir)\firework.c
-	$(DEMOBUILD)
-
-newdemo.exe:    $(demodir)\newdemo.c
-	$(DEMOBUILD)
-
-ptest.exe:      $(demodir)\ptest.c
-	$(DEMOBUILD)
-
-rain.exe:       $(demodir)\rain.c
-	$(DEMOBUILD)
-
-testcurs.exe:   $(demodir)\testcurs.c
-	$(DEMOBUILD) advapi32.lib
-
-tuidemo.exe:    tuidemo.obj tui.obj
-	$(DEMOBUILD)
-
-worm.exe:       $(demodir)\worm.c
-	$(DEMOBUILD)
-
-xmas.exe:       $(demodir)\xmas.c
-	$(DEMOBUILD)
-
-tui.obj: $(demodir)\tui.c $(demodir)\tui.h
-	$(BUILD) -I$(demodir) $(demodir)\$*.c
-
-tuidemo.obj: $(demodir)\tuidemo.c
-	$(BUILD) -I$(demodir) $(demodir)\$*.c
diff --git a/src/other/PDCurses/win32/gccwin32.mak b/src/other/PDCurses/win32/gccwin32.mak
deleted file mode 100644
index 7504bb3..0000000
--- a/src/other/PDCurses/win32/gccwin32.mak
+++ /dev/null
@@ -1,128 +0,0 @@
-# GNU MAKE Makefile for PDCurses library - WIN32 Cygnus GCC
-#
-# Usage: make -f [path\]gccwin32.mak [DEBUG=Y] [DLL=Y] [WIDE=Y] [UTF8=Y] [tgt]
-#
-# where tgt can be any of:
-# [all|demos|pdcurses.a|testcurs.exe...]
-
-O = o
-
-ifndef PDCURSES_SRCDIR
-	PDCURSES_SRCDIR = ..
-endif
-
-include $(PDCURSES_SRCDIR)/version.mif
-include $(PDCURSES_SRCDIR)/libobjs.mif
-
-osdir		= $(PDCURSES_SRCDIR)/win32
-
-PDCURSES_WIN_H	= $(osdir)/pdcwin.h
-
-CC		= gcc
-
-ifeq ($(DEBUG),Y)
-	CFLAGS  = -g -Wall -DPDCDEBUG
-	LDFLAGS = -g
-else
-	CFLAGS  = -O2 -Wall
-	LDFLAGS =
-endif
-
-CFLAGS += -I$(PDCURSES_SRCDIR)
-
-BASEDEF		= $(PDCURSES_SRCDIR)/exp-base.def
-WIDEDEF		= $(PDCURSES_SRCDIR)/exp-wide.def
-
-DEFDEPS		= $(BASEDEF)
-
-ifeq ($(WIDE),Y)
-	CFLAGS += -DPDC_WIDE
-	DEFDEPS += $(WIDEDEF)
-endif
-
-ifeq ($(UTF8),Y)
-	CFLAGS += -DPDC_FORCE_UTF8
-endif
-
-DEFFILE		= pdcurses.def
-
-LINK		= gcc
-
-ifeq ($(DLL),Y)
-	CFLAGS += -DPDC_DLL_BUILD
-	LIBEXE = gcc $(DEFFILE)
-	LIBFLAGS = -Wl,--out-implib,pdcurses.a -shared -o
-	LIBCURSES = pdcurses.dll
-	LIBDEPS = $(LIBOBJS) $(PDCOBJS) $(DEFFILE)
-	CLEAN = $(LIBCURSES) *.a $(DEFFILE)
-else
-	LIBEXE = ar
-	LIBFLAGS = rcv
-	LIBCURSES = pdcurses.a
-	LIBDEPS = $(LIBOBJS) $(PDCOBJS)
-	CLEAN = *.a
-endif
-
-.PHONY: all libs clean demos dist
-
-all:	libs demos
-
-libs:	$(LIBCURSES)
-
-clean:
-	-rm -f *.o
-	-rm -f *.exe
-	-rm -f $(CLEAN)
-
-demos:	$(DEMOS)
-	strip *.exe
-
-$(DEFFILE): $(DEFDEPS)
-	echo LIBRARY pdcurses > $@
-	echo EXPORTS >> $@
-	cat $(BASEDEF) >> $@
-ifeq ($(WIDE),Y)
-	cat $(WIDEDEF) >> $@
-endif
-
-$(LIBCURSES) : $(LIBDEPS)
-	$(LIBEXE) $(LIBFLAGS) $@ $?
-	-cp pdcurses.a panel.a
-
-$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS)
-$(PDCOBJS) : $(PDCURSES_WIN_H)
-$(DEMOS) : $(PDCURSES_CURSES_H) $(LIBCURSES)
-panel.o : $(PANEL_HEADER)
-terminfo.o: $(TERM_HEADER)
-
-$(LIBOBJS) : %.o: $(srcdir)/%.c
-	$(CC) -c $(CFLAGS) $<
-
-$(PDCOBJS) : %.o: $(osdir)/%.c
-	$(CC) -c $(CFLAGS) $<
-
-firework.exe newdemo.exe rain.exe testcurs.exe worm.exe xmas.exe \
-ptest.exe: %.exe: $(demodir)/%.c
-	$(CC) $(CFLAGS) -o$@ $< $(LIBCURSES)
-
-tuidemo.exe: tuidemo.o tui.o
-	$(LINK) $(LDFLAGS) -o$@ tuidemo.o tui.o $(LIBCURSES)
-
-tui.o: $(demodir)/tui.c $(demodir)/tui.h $(PDCURSES_CURSES_H)
-	$(CC) -c $(CFLAGS) -I$(demodir) -o$@ $<
-
-tuidemo.o: $(demodir)/tuidemo.c $(PDCURSES_CURSES_H)
-	$(CC) -c $(CFLAGS) -I$(demodir) -o$@ $<
-
-dist: $(PDCLIBS)
-	echo PDCurses $(VERDOT) for Cygnus Win32 > file_id.diz
-	echo ------------------------------------------ >> file_id.diz
-	echo Public Domain Curses library for >> file_id.diz
-	echo Cygnus GCC for Win32. >> file_id.diz
-	echo Source available in PDCURS$(VER).ZIP >> file_id.diz
-	echo Public Domain. >> file_id.diz
-	zip -9jX pdc$(VER)_cyg_w32 \
-	$(PDCURSES_SRCDIR)/README $(PDCURSES_SRCDIR)/HISTORY \
-	$(PDCURSES_SRCDIR)/curses.h $(PDCURSES_SRCDIR)/panel.h \
-	$(LIBCURSES) $(LIBPANEL) file_id.diz
-	rm file_id.diz
diff --git a/src/other/PDCurses/win32/lccwin32.mak b/src/other/PDCurses/win32/lccwin32.mak
deleted file mode 100644
index 90c1c89..0000000
--- a/src/other/PDCurses/win32/lccwin32.mak
+++ /dev/null
@@ -1,273 +0,0 @@
-# Makefile for PDCurses library - WIN32 LCC-Win32
-#
-# Usage: make -f lccwin32.mak [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.lib|testcurs.exe...]
-
-PDCURSES_SRCDIR	= ..
-
-PDCURSES_CURSES_H	= $(PDCURSES_SRCDIR)\curses.h
-PDCURSES_CURSPRIV_H	= $(PDCURSES_SRCDIR)\curspriv.h
-PDCURSES_HEADERS	= $(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
-
-PANEL_HEADER	= $(PDCURSES_SRCDIR)\panel.h
-TERM_HEADER	= $(PDCURSES_SRCDIR)\term.h
-
-srcdir		= $(PDCURSES_SRCDIR)\pdcurses
-osdir		= $(PDCURSES_SRCDIR)\win32
-demodir		= $(PDCURSES_SRCDIR)\demos
-
-PDCURSES_WIN_H	= $(osdir)\pdcwin.h
-
-CC		= lcc
-
-#CFLAGS		= -c -g3 -A -ansic
-CFLAGS		= -c -O -A -ansic
-
-CPPFLAGS	= -I$(PDCURSES_SRCDIR) #-DPDC_WIDE -DPDC_FORCE_UTF8
-
-LINK		= lcclnk
-LIBEXE		= lcclib
-
-LIBCURSES	= pdcurses.lib
-
-BUILD		= $(CC) $(CFLAGS) $(CPPFLAGS)
-PDCLIBS		= $(LIBCURSES)
-
-DEMOS		= testcurs.exe newdemo.exe xmas.exe tuidemo.exe \
-firework.exe ptest.exe rain.exe worm.exe
-
-all:    $(PDCLIBS) $(DEMOS)
-
-clean:
-	-del *.obj
-	-del *.lib
-	-del *.exe
-
-LIBOBJS = addch.obj addchstr.obj addstr.obj attr.obj beep.obj bkgd.obj \
-border.obj clear.obj color.obj delch.obj deleteln.obj deprec.obj getch.obj \
-getstr.obj getyx.obj inch.obj inchstr.obj initscr.obj inopts.obj \
-insch.obj insstr.obj instr.obj kernel.obj keyname.obj mouse.obj move.obj \
-outopts.obj overlay.obj pad.obj panel.obj printw.obj refresh.obj \
-scanw.obj scr_dump.obj scroll.obj slk.obj termattr.obj terminfo.obj \
-touch.obj util.obj window.obj debug.obj
-
-PDCOBJS = pdcclip.obj pdcdisp.obj pdcgetsc.obj pdckbd.obj pdcscrn.obj \
-pdcsetsc.obj pdcutil.obj
-
-DEMOOBJS = testcurs.obj newdemo.obj xmas.obj tuidemo.obj tui.obj \
-firework.obj ptest.obj rain.obj worm.obj
-
-$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS)
-$(PDCOBJS) : $(PDCURSES_WIN_H)
-panel.obj ptest.obj: $(PANEL_HEADER)
-terminfo.obj: $(TERM_HEADER)
-
-$(DEMOOBJS) : $(PDCURSES_CURSES_H)
-$(DEMOS) : $(LIBCURSES)
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	$(LIBEXE) /out:$@ $(LIBOBJS) $(PDCOBJS)
-	-copy $(LIBCURSES) panel.lib
-
-SRCBUILD = $(BUILD) $(srcdir)\$*.c
-OSBUILD = $(BUILD) $(osdir)\$*.c
-
-addch.obj: $(srcdir)\addch.c
-	$(SRCBUILD)
-
-addchstr.obj: $(srcdir)\addchstr.c
-	$(SRCBUILD)
-
-addstr.obj: $(srcdir)\addstr.c
-	$(SRCBUILD)
-
-attr.obj: $(srcdir)\attr.c
-	$(SRCBUILD)
-
-beep.obj: $(srcdir)\beep.c
-	$(SRCBUILD)
-
-bkgd.obj: $(srcdir)\bkgd.c
-	$(SRCBUILD)
-
-border.obj: $(srcdir)\border.c
-	$(SRCBUILD)
-
-clear.obj: $(srcdir)\clear.c
-	$(SRCBUILD)
-
-color.obj: $(srcdir)\color.c
-	$(SRCBUILD)
-
-delch.obj: $(srcdir)\delch.c
-	$(SRCBUILD)
-
-deleteln.obj: $(srcdir)\deleteln.c
-	$(SRCBUILD)
-
-deprec.obj: $(srcdir)\deprec.c
-	$(SRCBUILD)
-
-getch.obj: $(srcdir)\getch.c
-	$(SRCBUILD)
-
-getstr.obj: $(srcdir)\getstr.c
-	$(SRCBUILD)
-
-getyx.obj: $(srcdir)\getyx.c
-	$(SRCBUILD)
-
-inch.obj: $(srcdir)\inch.c
-	$(SRCBUILD)
-
-inchstr.obj: $(srcdir)\inchstr.c
-	$(SRCBUILD)
-
-initscr.obj: $(srcdir)\initscr.c
-	$(SRCBUILD)
-
-inopts.obj: $(srcdir)\inopts.c
-	$(SRCBUILD)
-
-insch.obj: $(srcdir)\insch.c
-	$(SRCBUILD)
-
-insstr.obj: $(srcdir)\insstr.c
-	$(SRCBUILD)
-
-instr.obj: $(srcdir)\instr.c
-	$(SRCBUILD)
-
-kernel.obj: $(srcdir)\kernel.c
-	$(SRCBUILD)
-
-keyname.obj: $(srcdir)\keyname.c
-	$(SRCBUILD)
-
-mouse.obj: $(srcdir)\mouse.c
-	$(SRCBUILD)
-
-move.obj: $(srcdir)\move.c
-	$(SRCBUILD)
-
-outopts.obj: $(srcdir)\outopts.c
-	$(SRCBUILD)
-
-overlay.obj: $(srcdir)\overlay.c
-	$(SRCBUILD)
-
-pad.obj: $(srcdir)\pad.c
-	$(SRCBUILD)
-
-panel.obj: $(srcdir)\panel.c
-	$(SRCBUILD)
-
-printw.obj: $(srcdir)\printw.c
-	$(SRCBUILD)
-
-refresh.obj: $(srcdir)\refresh.c
-	$(SRCBUILD)
-
-scanw.obj: $(srcdir)\scanw.c
-	$(SRCBUILD)
-
-scr_dump.obj: $(srcdir)\scr_dump.c
-	$(SRCBUILD)
-
-scroll.obj: $(srcdir)\scroll.c
-	$(SRCBUILD)
-
-slk.obj: $(srcdir)\slk.c
-	$(SRCBUILD)
-
-termattr.obj: $(srcdir)\termattr.c
-	$(SRCBUILD)
-
-terminfo.obj: $(srcdir)\terminfo.c
-	$(SRCBUILD)
-
-touch.obj: $(srcdir)\touch.c
-	$(SRCBUILD)
-
-util.obj: $(srcdir)\util.c
-	$(SRCBUILD)
-
-window.obj: $(srcdir)\window.c
-	$(SRCBUILD)
-
-debug.obj: $(srcdir)\debug.c
-	$(SRCBUILD)
-
-pdcclip.obj: $(osdir)\pdcclip.c
-	$(OSBUILD)
-
-pdcdisp.obj: $(osdir)\pdcdisp.c
-	$(OSBUILD)
-
-pdcgetsc.obj: $(osdir)\pdcgetsc.c
-	$(OSBUILD)
-
-pdckbd.obj: $(osdir)\pdckbd.c
-	$(OSBUILD)
-
-pdcscrn.obj: $(osdir)\pdcscrn.c
-	$(OSBUILD)
-
-pdcsetsc.obj: $(osdir)\pdcsetsc.c
-	$(OSBUILD)
-
-pdcutil.obj: $(osdir)\pdcutil.c
-	$(OSBUILD)
-
-firework.exe:   firework.obj
-	$(LINK) -o $@ firework.obj $(LIBCURSES)
-
-newdemo.exe:    newdemo.obj
-	$(LINK) -o $@ newdemo.obj $(LIBCURSES)
-
-ptest.exe:      ptest.obj
-	$(LINK) -o $@ ptest.obj $(LIBCURSES)
-
-rain.exe:       rain.obj
-	$(LINK) -o $@ rain.obj $(LIBCURSES)
-
-testcurs.exe:   testcurs.obj
-	$(LINK) -o $@ testcurs.obj $(LIBCURSES)
-
-tuidemo.exe:    tuidemo.obj tui.obj
-	$(LINK) -o $@ tuidemo.obj tui.obj $(LIBCURSES)
-
-worm.exe:       worm.obj
-	$(LINK) -o $@ worm.obj $(LIBCURSES)
-
-xmas.exe:       xmas.obj
-	$(LINK) -o $@ xmas.obj $(LIBCURSES)
-
-firework.obj: $(demodir)\firework.c
-	$(BUILD) $(demodir)\$*.c
-
-newdemo.obj: $(demodir)\newdemo.c
-	$(BUILD) $(demodir)\$*.c
-
-ptest.obj: $(demodir)\ptest.c
-	$(BUILD) $(demodir)\$*.c
-
-rain.obj: $(demodir)\rain.c
-	$(BUILD) $(demodir)\$*.c
-
-testcurs.obj: $(demodir)\testcurs.c
-	$(BUILD) $(demodir)\$*.c
-
-tui.obj: $(demodir)\tui.c $(demodir)\tui.h
-	$(BUILD) -I$(demodir) $(demodir)\$*.c
-
-tuidemo.obj: $(demodir)\tuidemo.c
-	$(BUILD) -I$(demodir) $(demodir)\$*.c
-
-worm.obj: $(demodir)\worm.c
-	$(BUILD) $(demodir)\$*.c
-
-xmas.obj: $(demodir)\xmas.c
-	$(BUILD) $(demodir)\$*.c
diff --git a/src/other/PDCurses/win32/mingwin32.mak b/src/other/PDCurses/win32/mingwin32.mak
deleted file mode 100644
index 7fb17e8..0000000
--- a/src/other/PDCurses/win32/mingwin32.mak
+++ /dev/null
@@ -1,121 +0,0 @@
-# GNU MAKE Makefile for PDCurses library - WIN32 MinGW GCC
-#
-# Usage: make -f [path\]mingwin32.mak [DEBUG=Y] [DLL=Y] [WIDE=Y] [UTF8=Y] [tgt]
-#
-# where tgt can be any of:
-# [all|demos|pdcurses.a|testcurs.exe...]
-
-O = o
-
-ifndef PDCURSES_SRCDIR
-	PDCURSES_SRCDIR = ..
-endif
-
-include $(PDCURSES_SRCDIR)/version.mif
-include $(PDCURSES_SRCDIR)/libobjs.mif
-
-osdir		= $(PDCURSES_SRCDIR)/win32
-
-PDCURSES_WIN_H	= $(osdir)/pdcwin.h
-
-CC		= gcc
-
-ifeq ($(DEBUG),Y)
-	CFLAGS  = -g -Wall -DPDCDEBUG
-	LDFLAGS = -g
-else
-	CFLAGS  = -O2 -Wall
-	LDFLAGS =
-endif
-
-CFLAGS += -I$(PDCURSES_SRCDIR)
-
-BASEDEF		= $(PDCURSES_SRCDIR)\exp-base.def
-WIDEDEF		= $(PDCURSES_SRCDIR)\exp-wide.def
-
-DEFDEPS		= $(BASEDEF)
-
-ifeq ($(WIDE),Y)
-	CFLAGS += -DPDC_WIDE
-	DEFDEPS += $(WIDEDEF)
-endif
-
-ifeq ($(UTF8),Y)
-	CFLAGS += -DPDC_FORCE_UTF8
-endif
-
-DEFFILE		= pdcurses.def
-
-LINK		= gcc
-
-ifeq ($(DLL),Y)
-	CFLAGS += -DPDC_DLL_BUILD
-	LIBEXE = gcc $(DEFFILE)
-	LIBFLAGS = -Wl,--out-implib,pdcurses.a -shared -o
-	LIBCURSES = pdcurses.dll
-	LIBDEPS = $(LIBOBJS) $(PDCOBJS) $(DEFFILE)
-	CLEAN = $(LIBCURSES) *.a $(DEFFILE)
-else
-	LIBEXE = ar
-	LIBFLAGS = rcv
-	LIBCURSES = pdcurses.a
-	LIBDEPS = $(LIBOBJS) $(PDCOBJS)
-	CLEAN = *.a
-endif
-
-.PHONY: all libs clean demos dist
-
-all:	libs demos
-
-libs:	$(LIBCURSES)
-
-clean:
-	-del *.o
-	-del *.exe
-	-del $(CLEAN)
-
-demos:	$(DEMOS)
-	strip *.exe
-
-$(DEFFILE): $(DEFDEPS)
-	echo LIBRARY pdcurses > $@
-	echo EXPORTS >> $@
-	type $(BASEDEF) >> $@
-ifeq ($(WIDE),Y)
-	type $(WIDEDEF) >> $@
-endif
-
-$(LIBCURSES) : $(LIBDEPS)
-	$(LIBEXE) $(LIBFLAGS) $@ $?
-	-copy pdcurses.a panel.a
-
-$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS)
-$(PDCOBJS) : $(PDCURSES_WIN_H)
-$(DEMOS) : $(PDCURSES_CURSES_H) $(LIBCURSES)
-panel.o : $(PANEL_HEADER)
-terminfo.o: $(TERM_HEADER)
-
-$(LIBOBJS) : %.o: $(srcdir)/%.c
-	$(CC) -c $(CFLAGS) $<
-
-$(PDCOBJS) : %.o: $(osdir)/%.c
-	$(CC) -c $(CFLAGS) $<
-
-firework.exe newdemo.exe rain.exe testcurs.exe worm.exe xmas.exe \
-ptest.exe: %.exe: $(demodir)/%.c
-	$(CC) $(CFLAGS) -o$@ $< $(LIBCURSES)
-
-tuidemo.exe: tuidemo.o tui.o
-	$(LINK) $(LDFLAGS) -o$@ tuidemo.o tui.o $(LIBCURSES)
-
-tui.o: $(demodir)/tui.c $(demodir)/tui.h $(PDCURSES_CURSES_H)
-	$(CC) -c $(CFLAGS) -I$(demodir) -o$@ $<
-
-tuidemo.o: $(demodir)/tuidemo.c $(PDCURSES_CURSES_H)
-	$(CC) -c $(CFLAGS) -I$(demodir) -o$@ $<
-
-PLATFORM1 = MinGW Win32
-PLATFORM2 = MinGW for Win32
-ARCNAME = pdc$(VER)_ming_w32
-
-include $(PDCURSES_SRCDIR)/makedist.mif
diff --git a/src/other/PDCurses/win32/pdcclip.c b/src/other/PDCurses/win32/pdcclip.c
deleted file mode 100644
index 35b6bba..0000000
--- a/src/other/PDCurses/win32/pdcclip.c
+++ /dev/null
@@ -1,145 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcwin.h"
-
-RCSID("$Id: pdcclip.c,v 1.30 2008/07/14 04:24:52 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         clipboard
-
-  Synopsis:
-        int PDC_getclipboard(char **contents, long *length);
-        int PDC_setclipboard(const char *contents, long length);
-        int PDC_freeclipboard(char *contents);
-        int PDC_clearclipboard(void);
-
-  Description:
-        PDC_getclipboard() gets the textual contents of the system's 
-        clipboard. This function returns the contents of the clipboard 
-        in the contents argument. It is the responsibilitiy of the 
-        caller to free the memory returned, via PDC_freeclipboard().
-        The length of the clipboard contents is returned in the length 
-        argument.
-
-        PDC_setclipboard copies the supplied text into the system's 
-        clipboard, emptying the clipboard prior to the copy.
-
-        PDC_clearclipboard() clears the internal clipboard.
-
-  Return Values:
-        indicator of success/failure of call.
-        PDC_CLIP_SUCCESS        the call was successful
-        PDC_CLIP_MEMORY_ERROR   unable to allocate sufficient memory for 
-                                the clipboard contents
-        PDC_CLIP_EMPTY          the clipboard contains no text
-        PDC_CLIP_ACCESS_ERROR   no clipboard support
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_getclipboard                        -       -       -
-        PDC_setclipboard                        -       -       -
-        PDC_freeclipboard                       -       -       -
-        PDC_clearclipboard                      -       -       -
-
-**man-end****************************************************************/
-
-#ifdef PDC_WIDE
-# define PDC_TEXT CF_UNICODETEXT
-#else
-# define PDC_TEXT CF_OEMTEXT
-#endif
-
-int PDC_getclipboard(char **contents, long *length)
-{
-    HANDLE handle;
-    long len;
-
-    PDC_LOG(("PDC_getclipboard() - called\n"));
-
-    if (!OpenClipboard(NULL))
-        return PDC_CLIP_ACCESS_ERROR;
-
-    if ((handle = GetClipboardData(PDC_TEXT)) == NULL)
-    {
-        CloseClipboard();
-        return PDC_CLIP_EMPTY;
-    }
-
-#ifdef PDC_WIDE
-    len = wcslen((wchar_t *)handle) * 3;
-#else
-    len = strlen((char *)handle);
-#endif
-    *contents = (char *)GlobalAlloc(GMEM_FIXED, len + 1);
-
-    if (!*contents)
-    {
-        CloseClipboard();
-        return PDC_CLIP_MEMORY_ERROR;
-    }
-
-#ifdef PDC_WIDE
-    len = PDC_wcstombs((char *)*contents, (wchar_t *)handle, len);
-#else
-    strcpy((char *)*contents, (char *)handle);
-#endif
-    *length = len;
-    CloseClipboard();
-
-    return PDC_CLIP_SUCCESS;
-}
-
-int PDC_setclipboard(const char *contents, long length)
-{
-    HGLOBAL ptr1;
-    LPTSTR ptr2;
-
-    PDC_LOG(("PDC_setclipboard() - called\n"));
-
-    if (!OpenClipboard(NULL))
-        return PDC_CLIP_ACCESS_ERROR;
-
-    ptr1 = GlobalAlloc(GMEM_MOVEABLE|GMEM_DDESHARE, 
-        (length + 1) * sizeof(TCHAR));
-
-    if (!ptr1)
-        return PDC_CLIP_MEMORY_ERROR;
-
-    ptr2 = GlobalLock(ptr1);
-
-#ifdef PDC_WIDE
-    PDC_mbstowcs((wchar_t *)ptr2, contents, length);
-#else
-    memcpy((char *)ptr2, contents, length + 1);
-#endif
-    GlobalUnlock(ptr1);
-    EmptyClipboard();
-
-    if (!SetClipboardData(PDC_TEXT, ptr1))
-    {
-        GlobalFree(ptr1);
-        return PDC_CLIP_ACCESS_ERROR;
-    }
-
-    CloseClipboard();
-    GlobalFree(ptr1);
-
-    return PDC_CLIP_SUCCESS;
-}
-
-int PDC_freeclipboard(char *contents)
-{
-    PDC_LOG(("PDC_freeclipboard() - called\n"));
-
-    GlobalFree(contents);
-    return PDC_CLIP_SUCCESS;
-}
-
-int PDC_clearclipboard(void)
-{
-    PDC_LOG(("PDC_clearclipboard() - called\n"));
-
-    EmptyClipboard();
-
-    return PDC_CLIP_SUCCESS;
-}
diff --git a/src/other/PDCurses/win32/pdcdisp.c b/src/other/PDCurses/win32/pdcdisp.c
deleted file mode 100644
index c2ad814..0000000
--- a/src/other/PDCurses/win32/pdcdisp.c
+++ /dev/null
@@ -1,117 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcwin.h"
-
-RCSID("$Id: pdcdisp.c,v 1.47 2008/07/14 04:24:52 wmcbrine Exp $")
-
-#include <stdlib.h>
-#include <string.h>
-
-#ifdef CHTYPE_LONG
-
-# define A(x) ((chtype)x | A_ALTCHARSET)
-
-chtype acs_map[128] =
-{
-    A(0), A(1), A(2), A(3), A(4), A(5), A(6), A(7), A(8), A(9), A(10),
-    A(11), A(12), A(13), A(14), A(15), A(16), A(17), A(18), A(19),
-    A(20), A(21), A(22), A(23), A(24), A(25), A(26), A(27), A(28), 
-    A(29), A(30), A(31), ' ', '!', '"', '#', '$', '%', '&', '\'', '(', 
-    ')', '*',
-
-# ifdef PDC_WIDE
-    0x2192, 0x2190, 0x2191, 0x2193,
-# else
-    A(0x1a), A(0x1b), A(0x18), A(0x19),
-# endif
-
-    '/',
-
-# ifdef PDC_WIDE
-    0x2588,
-# else
-    0xdb,
-# endif
-
-    '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=',
-    '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
-    'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W',
-    'X', 'Y', 'Z', '[', '\\', ']', '^', '_',
-
-# ifdef PDC_WIDE
-    0x2666, 0x2592,
-# else
-    A(0x04), 0xb1,
-# endif
-
-    'b', 'c', 'd', 'e',
-
-# ifdef PDC_WIDE
-    0x00b0, 0x00b1, 0x2591, 0x00a4, 0x2518, 0x2510, 0x250c, 0x2514,
-    0x253c, 0x23ba, 0x23bb, 0x2500, 0x23bc, 0x23bd, 0x251c, 0x2524,
-    0x2534, 0x252c, 0x2502, 0x2264, 0x2265, 0x03c0, 0x2260, 0x00a3,
-    0x00b7,
-# else
-    0xf8, 0xf1, 0xb0, A(0x0f), 0xd9, 0xbf, 0xda, 0xc0, 0xc5, 0x2d, 0x2d,
-    0xc4, 0x2d, 0x5f, 0xc3, 0xb4, 0xc1, 0xc2, 0xb3, 0xf3, 0xf2, 0xe3,
-    0xd8, 0x9c, 0xf9,
-# endif
-
-    A(127)
-};
-
-# undef A
-
-#endif
-
-/* position hardware cursor at (y, x) */
-
-void PDC_gotoyx(int row, int col)
-{
-    COORD coord;
-
-    PDC_LOG(("PDC_gotoyx() - called: row %d col %d from row %d col %d\n",
-             row, col, SP->cursrow, SP->curscol));
-
-    coord.X = col;
-    coord.Y = row;
-
-    SetConsoleCursorPosition(pdc_con_out, coord);
-}
-
-/* update the given physical line to look like the corresponding line in
-   curscr */
-
-void PDC_transform_line(int lineno, int x, int len, const chtype *srcp)
-{
-    CHAR_INFO ci[512];
-    int j;
-    COORD bufSize, bufPos;
-    SMALL_RECT sr;
-
-    PDC_LOG(("PDC_transform_line() - called: lineno=%d\n", lineno));
-
-    bufPos.X = bufPos.Y = 0;
-
-    bufSize.X = len;
-    bufSize.Y = 1;
-
-    sr.Top = lineno;
-    sr.Bottom = lineno;
-    sr.Left = x;
-    sr.Right = x + len - 1;
-
-    for (j = 0; j < len; j++)
-    {
-        chtype ch = srcp[j];
-
-        ci[j].Attributes = pdc_atrtab[ch >> PDC_ATTR_SHIFT];
-#ifdef CHTYPE_LONG
-        if (ch & A_ALTCHARSET && !(ch & 0xff80))
-            ch = acs_map[ch & 0x7f];
-#endif
-        ci[j].Char.UnicodeChar = ch & A_CHARTEXT;
-    }
-
-    WriteConsoleOutput(pdc_con_out, ci, bufSize, bufPos, &sr);
-}
diff --git a/src/other/PDCurses/win32/pdcgetsc.c b/src/other/PDCurses/win32/pdcgetsc.c
deleted file mode 100644
index 15f0dc5..0000000
--- a/src/other/PDCurses/win32/pdcgetsc.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcwin.h"
-
-RCSID("$Id: pdcgetsc.c,v 1.36 2008/07/14 04:24:52 wmcbrine Exp $")
-
-/* get the cursor size/shape */
-
-int PDC_get_cursor_mode(void)
-{
-    CONSOLE_CURSOR_INFO ci;
-    
-    PDC_LOG(("PDC_get_cursor_mode() - called\n"));
-
-    GetConsoleCursorInfo(pdc_con_out, &ci);
-
-    return ci.dwSize;
-}
-
-/* return number of screen rows */
-
-int PDC_get_rows(void)
-{
-    CONSOLE_SCREEN_BUFFER_INFO scr;
-
-    PDC_LOG(("PDC_get_rows() - called\n"));
-
-    GetConsoleScreenBufferInfo(pdc_con_out, &scr);
-
-    return scr.srWindow.Bottom - scr.srWindow.Top + 1;
-}
-
-/* return number of buffer rows */
-
-int PDC_get_buffer_rows(void)
-{
-    CONSOLE_SCREEN_BUFFER_INFO scr;
-
-    PDC_LOG(("PDC_get_buffer_rows() - called\n"));
-
-    GetConsoleScreenBufferInfo(pdc_con_out, &scr);
-
-    return scr.dwSize.Y;
-}
-
-/* return width of screen/viewport */
-
-int PDC_get_columns(void)
-{
-    CONSOLE_SCREEN_BUFFER_INFO scr;
-
-    PDC_LOG(("PDC_get_columns() - called\n"));
-
-    GetConsoleScreenBufferInfo(pdc_con_out, &scr);
-
-    return scr.srWindow.Right - scr.srWindow.Left + 1;
-}
diff --git a/src/other/PDCurses/win32/pdckbd.c b/src/other/PDCurses/win32/pdckbd.c
deleted file mode 100644
index 7717260..0000000
--- a/src/other/PDCurses/win32/pdckbd.c
+++ /dev/null
@@ -1,669 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcwin.h"
-
-RCSID("$Id: pdckbd.c,v 1.116 2011/04/23 06:50:03 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         pdckbd
-
-  Synopsis:
-        unsigned long PDC_get_input_fd(void);
-
-  Description:
-        PDC_get_input_fd() returns the file descriptor that PDCurses 
-        reads its input from. It can be used for select().
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_get_input_fd                        -       -       -
-
-**man-end****************************************************************/
-
-unsigned long pdc_key_modifiers = 0L;
-
-/* These variables are used to store information about the next
-   Input Event. */
-
-static INPUT_RECORD save_ip;
-static MOUSE_STATUS old_mouse_status;
-static DWORD event_count = 0;
-static SHORT left_key;
-static int key_count = 0;
-static int save_press = 0;
-
-#define KEV save_ip.Event.KeyEvent
-#define MEV save_ip.Event.MouseEvent
-
-/************************************************************************
- *    Table for key code translation of function keys in keypad mode    *  
- *    These values are for strict IBM keyboard compatibles only         *
- ************************************************************************/
-
-typedef struct
-{
-    unsigned short normal;
-    unsigned short shift;
-    unsigned short control;
-    unsigned short alt;
-    unsigned short extended;
-} KPTAB;
-
-static KPTAB kptab[] =
-{
-   {0,          0,         0,           0,          0   }, /* 0  */
-   {0,          0,         0,           0,          0   }, /* 1   VK_LBUTTON */
-   {0,          0,         0,           0,          0   }, /* 2   VK_RBUTTON */
-   {0,          0,         0,           0,          0   }, /* 3   VK_CANCEL  */
-   {0,          0,         0,           0,          0   }, /* 4   VK_MBUTTON */
-   {0,          0,         0,           0,          0   }, /* 5   */
-   {0,          0,         0,           0,          0   }, /* 6   */
-   {0,          0,         0,           0,          0   }, /* 7   */
-   {0x08,       0x08,      0x7F,        ALT_BKSP,   0   }, /* 8   VK_BACK    */
-   {0x09,       KEY_BTAB,  CTL_TAB,     ALT_TAB,    999 }, /* 9   VK_TAB     */
-   {0,          0,         0,           0,          0   }, /* 10  */
-   {0,          0,         0,           0,          0   }, /* 11  */
-   {KEY_B2,     0x35,      CTL_PAD5,    ALT_PAD5,   0   }, /* 12  VK_CLEAR   */
-   {0x0D,       0x0D,      CTL_ENTER,   ALT_ENTER,  1   }, /* 13  VK_RETURN  */
-   {0,          0,         0,           0,          0   }, /* 14  */
-   {0,          0,         0,           0,          0   }, /* 15  */
-   {0,          0,         0,           0,          0   }, /* 16  VK_SHIFT   HANDLED SEPARATELY */
-   {0,          0,         0,           0,          0   }, /* 17  VK_CONTROL HANDLED SEPARATELY */
-   {0,          0,         0,           0,          0   }, /* 18  VK_MENU    HANDLED SEPARATELY */
-   {0,          0,         0,           0,          0   }, /* 19  VK_PAUSE   */
-   {0,          0,         0,           0,          0   }, /* 20  VK_CAPITAL HANDLED SEPARATELY */
-   {0,          0,         0,           0,          0   }, /* 21  VK_HANGUL  */
-   {0,          0,         0,           0,          0   }, /* 22  */
-   {0,          0,         0,           0,          0   }, /* 23  VK_JUNJA   */
-   {0,          0,         0,           0,          0   }, /* 24  VK_FINAL   */
-   {0,          0,         0,           0,          0   }, /* 25  VK_HANJA   */
-   {0,          0,         0,           0,          0   }, /* 26  */
-   {0x1B,       0x1B,      0x1B,        ALT_ESC,    0   }, /* 27  VK_ESCAPE  */
-   {0,          0,         0,           0,          0   }, /* 28  VK_CONVERT */
-   {0,          0,         0,           0,          0   }, /* 29  VK_NONCONVERT */
-   {0,          0,         0,           0,          0   }, /* 30  VK_ACCEPT  */
-   {0,          0,         0,           0,          0   }, /* 31  VK_MODECHANGE */
-   {0x20,       0x20,      0x20,        0x20,       0   }, /* 32  VK_SPACE   */
-   {KEY_A3,     0x39,      CTL_PAD9,    ALT_PAD9,   3   }, /* 33  VK_PRIOR   */
-   {KEY_C3,     0x33,      CTL_PAD3,    ALT_PAD3,   4   }, /* 34  VK_NEXT    */
-   {KEY_C1,     0x31,      CTL_PAD1,    ALT_PAD1,   5   }, /* 35  VK_END     */
-   {KEY_A1,     0x37,      CTL_PAD7,    ALT_PAD7,   6   }, /* 36  VK_HOME    */
-   {KEY_B1,     0x34,      CTL_PAD4,    ALT_PAD4,   7   }, /* 37  VK_LEFT    */
-   {KEY_A2,     0x38,      CTL_PAD8,    ALT_PAD8,   8   }, /* 38  VK_UP      */
-   {KEY_B3,     0x36,      CTL_PAD6,    ALT_PAD6,   9   }, /* 39  VK_RIGHT   */
-   {KEY_C2,     0x32,      CTL_PAD2,    ALT_PAD2,   10  }, /* 40  VK_DOWN    */
-   {0,          0,         0,           0,          0   }, /* 41  VK_SELECT  */
-   {0,          0,         0,           0,          0   }, /* 42  VK_PRINT   */
-   {0,          0,         0,           0,          0   }, /* 43  VK_EXECUTE */
-   {0,          0,         0,           0,          0   }, /* 44  VK_SNAPSHOT*/
-   {PAD0,       0x30,      CTL_PAD0,    ALT_PAD0,   11  }, /* 45  VK_INSERT  */
-   {PADSTOP,    0x2E,      CTL_PADSTOP, ALT_PADSTOP,12  }, /* 46  VK_DELETE  */
-   {0,          0,         0,           0,          0   }, /* 47  VK_HELP    */
-   {0x30,       0x29,      0,           ALT_0,      0   }, /* 48  */
-   {0x31,       0x21,      0,           ALT_1,      0   }, /* 49  */
-   {0x32,       0x40,      0,           ALT_2,      0   }, /* 50  */
-   {0x33,       0x23,      0,           ALT_3,      0   }, /* 51  */
-   {0x34,       0x24,      0,           ALT_4,      0   }, /* 52  */
-   {0x35,       0x25,      0,           ALT_5,      0   }, /* 53  */
-   {0x36,       0x5E,      0,           ALT_6,      0   }, /* 54  */
-   {0x37,       0x26,      0,           ALT_7,      0   }, /* 55  */
-   {0x38,       0x2A,      0,           ALT_8,      0   }, /* 56  */
-   {0x39,       0x28,      0,           ALT_9,      0   }, /* 57  */
-   {0,          0,         0,           0,          0   }, /* 58  */
-   {0,          0,         0,           0,          0   }, /* 59  */
-   {0,          0,         0,           0,          0   }, /* 60  */
-   {0,          0,         0,           0,          0   }, /* 61  */
-   {0,          0,         0,           0,          0   }, /* 62  */
-   {0,          0,         0,           0,          0   }, /* 63  */
-   {0,          0,         0,           0,          0   }, /* 64  */
-   {0x61,       0x41,      0x01,        ALT_A,      0   }, /* 65  */
-   {0x62,       0x42,      0x02,        ALT_B,      0   }, /* 66  */
-   {0x63,       0x43,      0x03,        ALT_C,      0   }, /* 67  */
-   {0x64,       0x44,      0x04,        ALT_D,      0   }, /* 68  */
-   {0x65,       0x45,      0x05,        ALT_E,      0   }, /* 69  */
-   {0x66,       0x46,      0x06,        ALT_F,      0   }, /* 70  */
-   {0x67,       0x47,      0x07,        ALT_G,      0   }, /* 71  */
-   {0x68,       0x48,      0x08,        ALT_H,      0   }, /* 72  */
-   {0x69,       0x49,      0x09,        ALT_I,      0   }, /* 73  */
-   {0x6A,       0x4A,      0x0A,        ALT_J,      0   }, /* 74  */
-   {0x6B,       0x4B,      0x0B,        ALT_K,      0   }, /* 75  */
-   {0x6C,       0x4C,      0x0C,        ALT_L,      0   }, /* 76  */
-   {0x6D,       0x4D,      0x0D,        ALT_M,      0   }, /* 77  */
-   {0x6E,       0x4E,      0x0E,        ALT_N,      0   }, /* 78  */
-   {0x6F,       0x4F,      0x0F,        ALT_O,      0   }, /* 79  */
-   {0x70,       0x50,      0x10,        ALT_P,      0   }, /* 80  */
-   {0x71,       0x51,      0x11,        ALT_Q,      0   }, /* 81  */
-   {0x72,       0x52,      0x12,        ALT_R,      0   }, /* 82  */
-   {0x73,       0x53,      0x13,        ALT_S,      0   }, /* 83  */
-   {0x74,       0x54,      0x14,        ALT_T,      0   }, /* 84  */
-   {0x75,       0x55,      0x15,        ALT_U,      0   }, /* 85  */
-   {0x76,       0x56,      0x16,        ALT_V,      0   }, /* 86  */
-   {0x77,       0x57,      0x17,        ALT_W,      0   }, /* 87  */
-   {0x78,       0x58,      0x18,        ALT_X,      0   }, /* 88  */
-   {0x79,       0x59,      0x19,        ALT_Y,      0   }, /* 89  */
-   {0x7A,       0x5A,      0x1A,        ALT_Z,      0   }, /* 90  */
-   {0,          0,         0,           0,          0   }, /* 91  VK_LWIN    */
-   {0,          0,         0,           0,          0   }, /* 92  VK_RWIN    */
-   {0,          0,         0,           0,          0   }, /* 93  VK_APPS    */
-   {0,          0,         0,           0,          0   }, /* 94  */
-   {0,          0,         0,           0,          0   }, /* 95  */
-   {0x30,       0,         CTL_PAD0,    ALT_PAD0,   0   }, /* 96  VK_NUMPAD0 */
-   {0x31,       0,         CTL_PAD1,    ALT_PAD1,   0   }, /* 97  VK_NUMPAD1 */
-   {0x32,       0,         CTL_PAD2,    ALT_PAD2,   0   }, /* 98  VK_NUMPAD2 */
-   {0x33,       0,         CTL_PAD3,    ALT_PAD3,   0   }, /* 99  VK_NUMPAD3 */
-   {0x34,       0,         CTL_PAD4,    ALT_PAD4,   0   }, /* 100 VK_NUMPAD4 */
-   {0x35,       0,         CTL_PAD5,    ALT_PAD5,   0   }, /* 101 VK_NUMPAD5 */
-   {0x36,       0,         CTL_PAD6,    ALT_PAD6,   0   }, /* 102 VK_NUMPAD6 */
-   {0x37,       0,         CTL_PAD7,    ALT_PAD7,   0   }, /* 103 VK_NUMPAD7 */
-   {0x38,       0,         CTL_PAD8,    ALT_PAD8,   0   }, /* 104 VK_NUMPAD8 */
-   {0x39,       0,         CTL_PAD9,    ALT_PAD9,   0   }, /* 105 VK_NUMPAD9 */
-   {PADSTAR,   SHF_PADSTAR,CTL_PADSTAR, ALT_PADSTAR,999 }, /* 106 VK_MULTIPLY*/
-   {PADPLUS,   SHF_PADPLUS,CTL_PADPLUS, ALT_PADPLUS,999 }, /* 107 VK_ADD     */
-   {0,          0,         0,           0,          0   }, /* 108 VK_SEPARATOR     */
-   {PADMINUS, SHF_PADMINUS,CTL_PADMINUS,ALT_PADMINUS,999}, /* 109 VK_SUBTRACT*/
-   {0x2E,       0,         CTL_PADSTOP, ALT_PADSTOP,0   }, /* 110 VK_DECIMAL */
-   {PADSLASH,  SHF_PADSLASH,CTL_PADSLASH,ALT_PADSLASH,2 }, /* 111 VK_DIVIDE  */
-   {KEY_F(1),   KEY_F(13), KEY_F(25),   KEY_F(37),  0   }, /* 112 VK_F1      */
-   {KEY_F(2),   KEY_F(14), KEY_F(26),   KEY_F(38),  0   }, /* 113 VK_F2      */
-   {KEY_F(3),   KEY_F(15), KEY_F(27),   KEY_F(39),  0   }, /* 114 VK_F3      */
-   {KEY_F(4),   KEY_F(16), KEY_F(28),   KEY_F(40),  0   }, /* 115 VK_F4      */
-   {KEY_F(5),   KEY_F(17), KEY_F(29),   KEY_F(41),  0   }, /* 116 VK_F5      */
-   {KEY_F(6),   KEY_F(18), KEY_F(30),   KEY_F(42),  0   }, /* 117 VK_F6      */
-   {KEY_F(7),   KEY_F(19), KEY_F(31),   KEY_F(43),  0   }, /* 118 VK_F7      */
-   {KEY_F(8),   KEY_F(20), KEY_F(32),   KEY_F(44),  0   }, /* 119 VK_F8      */
-   {KEY_F(9),   KEY_F(21), KEY_F(33),   KEY_F(45),  0   }, /* 120 VK_F9      */
-   {KEY_F(10),  KEY_F(22), KEY_F(34),   KEY_F(46),  0   }, /* 121 VK_F10     */
-   {KEY_F(11),  KEY_F(23), KEY_F(35),   KEY_F(47),  0   }, /* 122 VK_F11     */
-   {KEY_F(12),  KEY_F(24), KEY_F(36),   KEY_F(48),  0   }, /* 123 VK_F12     */
-
-   /* 124 through 218 */
-
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, 
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, 
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-   {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0},
-
-   {0x5B,       0x7B,      0x1B,        ALT_LBRACKET,0  }, /* 219 */
-   {0x5C,       0x7C,      0x1C,        ALT_BSLASH, 0   }, /* 220 */
-   {0x5D,       0x7D,      0x1D,        ALT_RBRACKET,0  }, /* 221 */
-   {0,          0,         0x27,        ALT_FQUOTE, 0   }, /* 222 */
-   {0,          0,         0,           0,          0   }, /* 223 */
-   {0,          0,         0,           0,          0   }, /* 224 */
-   {0,          0,         0,           0,          0   }  /* 225 */
-};
-
-static KPTAB ext_kptab[] =
-{
-   {0,          0,              0,              0,          }, /* MUST BE EMPTY */
-   {PADENTER,   SHF_PADENTER,   CTL_PADENTER,   ALT_PADENTER}, /* 13 */
-   {PADSLASH,   SHF_PADSLASH,   CTL_PADSLASH,   ALT_PADSLASH}, /* 111 */
-   {KEY_PPAGE,  KEY_SPREVIOUS,  CTL_PGUP,       ALT_PGUP    }, /* 33 */
-   {KEY_NPAGE,  KEY_SNEXT,      CTL_PGDN,       ALT_PGDN    }, /* 34 */
-   {KEY_END,    KEY_SEND,       CTL_END,        ALT_END     }, /* 35 */
-   {KEY_HOME,   KEY_SHOME,      CTL_HOME,       ALT_HOME    }, /* 36 */
-   {KEY_LEFT,   KEY_SLEFT,      CTL_LEFT,       ALT_LEFT    }, /* 37 */
-   {KEY_UP,     KEY_SUP,        CTL_UP,         ALT_UP      }, /* 38 */
-   {KEY_RIGHT,  KEY_SRIGHT,     CTL_RIGHT,      ALT_RIGHT   }, /* 39 */
-   {KEY_DOWN,   KEY_SDOWN,      CTL_DOWN,       ALT_DOWN    }, /* 40 */
-   {KEY_IC,     KEY_SIC,        CTL_INS,        ALT_INS     }, /* 45 */
-   {KEY_DC,     KEY_SDC,        CTL_DEL,        ALT_DEL     }, /* 46 */
-   {PADSLASH,   SHF_PADSLASH,   CTL_PADSLASH,   ALT_PADSLASH}, /* 191 */
-};
-
-/* End of kptab[] */
-
-unsigned long PDC_get_input_fd(void)
-{
-    PDC_LOG(("PDC_get_input_fd() - called\n"));
-
-    return 0L;
-}
-
-void PDC_set_keyboard_binary(bool on)
-{
-    PDC_LOG(("PDC_set_keyboard_binary() - called\n"));
-}
-
-/* check if a key or mouse event is waiting */
-
-bool PDC_check_key(void)
-{
-    if (key_count > 0)
-        return TRUE;
-
-    GetNumberOfConsoleInputEvents(pdc_con_in, &event_count);
-
-    return (event_count != 0);
-}
-
-/* _get_key_count returns 0 if save_ip doesn't contain an event which
-   should be passed back to the user. This function filters "useless"
-   events.
-
-   The function returns the number of keys waiting. This may be > 1
-   if the repetition of real keys pressed so far are > 1.
-
-   Returns 0 on NUMLOCK, CAPSLOCK, SCROLLLOCK.
-
-   Returns 1 for SHIFT, ALT, CTRL only if no other key has been pressed
-   in between, and SP->return_key_modifiers is set; these are returned
-   on keyup.
-
-   Normal keys are returned on keydown only. The number of repetitions
-   are returned. Dead keys (diacritics) are omitted. See below for a
-   description.
-*/
-
-static int _get_key_count(void)
-{
-    int num_keys = 0, vk;
-
-    PDC_LOG(("_get_key_count() - called\n"));
-
-    vk = KEV.wVirtualKeyCode;
-
-    if (KEV.bKeyDown)
-    {
-        /* key down */
-
-        save_press = 0;
-
-        if (vk == VK_CAPITAL || vk == VK_NUMLOCK || vk == VK_SCROLL)
-        {
-            /* throw away these modifiers */
-        }
-        else if (vk == VK_SHIFT || vk == VK_CONTROL || vk == VK_MENU)
-        {
-            /* These keys are returned on keyup only. */
-
-            save_press = vk;
-            switch (vk)
-            {
-            case VK_SHIFT:
-                left_key = GetKeyState(VK_LSHIFT);
-                break;
-            case VK_CONTROL:
-                left_key = GetKeyState(VK_LCONTROL);
-                break;
-            case VK_MENU:
-                left_key = GetKeyState(VK_LMENU);
-            }
-        }
-        else
-        {
-            /* Check for diacritics. These are dead keys. Some locales 
-               have modified characters like umlaut-a, which is an "a" 
-               with two dots on it. In some locales you have to press a 
-               special key (the dead key) immediately followed by the 
-               "a" to get a composed umlaut-a. The special key may have 
-               a normal meaning with different modifiers. */
-
-            if (KEV.uChar.UnicodeChar || !(MapVirtualKey(vk, 2) & 0x80000000))
-                num_keys = KEV.wRepeatCount;
-        }
-    }
-    else
-    {
-        /* key up */
-
-        /* Only modifier keys or the results of ALT-numpad entry are
-           returned on keyup */
-
-        if ((vk == VK_MENU && KEV.uChar.UnicodeChar) ||
-           ((vk == VK_SHIFT || vk == VK_CONTROL || vk == VK_MENU) &&
-             vk == save_press))
-        {
-            save_press = 0;
-            num_keys = 1;
-        }
-    }
-
-    PDC_LOG(("_get_key_count() - returning: num_keys %d\n", num_keys));
-
-    return num_keys;
-}
-
-/* _process_key_event returns -1 if the key in save_ip should be
-   ignored. Otherwise it returns the keycode which should be returned
-   by PDC_get_key(). save_ip must be a key event.
-
-   CTRL-ALT support has been disabled, when is it emitted plainly?  */
-
-static int _process_key_event(void)
-{
-    int key = (unsigned short)KEV.uChar.UnicodeChar;
-    WORD vk = KEV.wVirtualKeyCode;
-    DWORD state = KEV.dwControlKeyState;
-
-    int idx;
-    BOOL enhanced;
-
-    SP->key_code = TRUE;
-
-    /* Save the key modifiers if required. Do this first to allow to
-       detect e.g. a pressed CTRL key after a hit of NUMLOCK. */
-
-    if (SP->save_key_modifiers)
-    {
-        if (state & (LEFT_ALT_PRESSED|RIGHT_ALT_PRESSED))
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_ALT;
-
-        if (state & SHIFT_PRESSED)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_SHIFT;
-
-        if (state & (LEFT_CTRL_PRESSED|RIGHT_CTRL_PRESSED))
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_CONTROL;
-
-        if (state & NUMLOCK_ON)
-            pdc_key_modifiers |= PDC_KEY_MODIFIER_NUMLOCK;
-    }
-
-    /* Handle modifier keys hit by themselves */
-
-    switch (vk)
-    {
-    case VK_SHIFT: /* shift */
-        if (!SP->return_key_modifiers)
-            return -1;
-
-        return (left_key & 0x8000) ? KEY_SHIFT_L : KEY_SHIFT_R;
-
-    case VK_CONTROL: /* control */
-        if (!SP->return_key_modifiers)
-            return -1;
-
-        return (left_key & 0x8000) ? KEY_CONTROL_L : KEY_CONTROL_R;
-
-    case VK_MENU: /* alt */
-        if (!key)
-        {
-            if (!SP->return_key_modifiers)
-                return -1;
-
-            return (left_key & 0x8000) ? KEY_ALT_L : KEY_ALT_R;
-        }
-    }
-
-    /* The system may emit Ascii or Unicode characters depending on
-       whether ReadConsoleInputA or ReadConsoleInputW is used.
-
-       Normally, if key != 0 then the system did the translation
-       successfully. But this is not true for LEFT_ALT (different to
-       RIGHT_ALT). In case of LEFT_ALT we can get key != 0. So
-       check for this first. */
-
-    if (key && ( !(state & LEFT_ALT_PRESSED) ||
-        (state & RIGHT_ALT_PRESSED) ))
-    {
-        /* This code should catch all keys returning a printable
-           character. Characters above 0x7F should be returned as
-           positive codes. But if'ndef NUMKEYPAD we have to return
-           extended keycodes for keypad codes. */
-
-#ifndef NUMKEYPAD
-        if (kptab[vk].extended == 0)
-#endif
-        {
-            SP->key_code = FALSE;
-            return key;
-        }
-    }
-
-    /* This case happens if a functional key has been entered. */
-
-    if ((state & ENHANCED_KEY) && (kptab[vk].extended != 999))
-    {
-        enhanced = TRUE;
-        idx = kptab[vk].extended;
-    }
-    else
-    {
-        enhanced = FALSE;
-        idx = vk;
-    }
-
-    if (state & SHIFT_PRESSED)
-        key = enhanced ? ext_kptab[idx].shift : kptab[idx].shift;
-
-    else if (state & (LEFT_CTRL_PRESSED|RIGHT_CTRL_PRESSED))
-        key = enhanced ? ext_kptab[idx].control : kptab[idx].control;
-
-    else if (state & (LEFT_ALT_PRESSED|RIGHT_ALT_PRESSED))
-        key = enhanced ? ext_kptab[idx].alt : kptab[idx].alt;
-
-    else
-        key = enhanced ? ext_kptab[idx].normal : kptab[idx].normal;
-
-    if (key < KEY_CODE_YES)
-        SP->key_code = FALSE;
-
-    return key;
-}
-
-static int _process_mouse_event(void)
-{
-    static const DWORD button_mask[] = {1, 4, 2};
-    short action, shift_flags = 0;
-    int i;
-
-    save_press = 0;
-    SP->key_code = TRUE;
-
-    memset(&pdc_mouse_status, 0, sizeof(MOUSE_STATUS));
-
-    /* Handle scroll wheel */
-
-    if (MEV.dwEventFlags == 4)
-    {
-        pdc_mouse_status.changes = (MEV.dwButtonState & 0xFF000000) ?
-            PDC_MOUSE_WHEEL_DOWN : PDC_MOUSE_WHEEL_UP;
-
-        pdc_mouse_status.x = -1;
-        pdc_mouse_status.y = -1;
-
-        memset(&old_mouse_status, 0, sizeof(old_mouse_status));
-
-        return KEY_MOUSE;
-    }
-
-    if (MEV.dwEventFlags == 8)
-    {
-        pdc_mouse_status.changes = (MEV.dwButtonState & 0xFF000000) ?
-            PDC_MOUSE_WHEEL_RIGHT : PDC_MOUSE_WHEEL_LEFT;
-
-        pdc_mouse_status.x = -1;
-        pdc_mouse_status.y = -1;
-
-        memset(&old_mouse_status, 0, sizeof(old_mouse_status));
-
-        return KEY_MOUSE;
-    }
-
-    action = (MEV.dwEventFlags == 2) ? BUTTON_DOUBLE_CLICKED :
-            ((MEV.dwEventFlags == 1) ? BUTTON_MOVED : BUTTON_PRESSED);
-
-    for (i = 0; i < 3; i++)
-        pdc_mouse_status.button[i] =
-            (MEV.dwButtonState & button_mask[i]) ? action : 0;
-
-    if (action == BUTTON_PRESSED && MEV.dwButtonState & 7 && SP->mouse_wait)
-    {
-        /* Check for a click -- a PRESS followed immediately by a release */
-
-        if (!event_count)
-        {
-            napms(SP->mouse_wait);
-
-            GetNumberOfConsoleInputEvents(pdc_con_in, &event_count);
-        }
-
-        if (event_count)
-        {
-            INPUT_RECORD ip;
-            DWORD count;
-            bool have_click = FALSE;
-
-            PeekConsoleInput(pdc_con_in, &ip, 1, &count);
-
-            for (i = 0; i < 3; i++)
-            {
-                if (pdc_mouse_status.button[i] == BUTTON_PRESSED &&
-                    !(ip.Event.MouseEvent.dwButtonState & button_mask[i]))
-                {
-                    pdc_mouse_status.button[i] = BUTTON_CLICKED;
-                    have_click = TRUE;
-                }
-            }
-
-            /* If a click was found, throw out the event */
-
-            if (have_click)
-                ReadConsoleInput(pdc_con_in, &ip, 1, &count);
-        }
-    }
-
-    pdc_mouse_status.x = MEV.dwMousePosition.X;
-    pdc_mouse_status.y = MEV.dwMousePosition.Y;
-
-    pdc_mouse_status.changes = 0;
-
-    for (i = 0; i < 3; i++)
-    {
-        if (old_mouse_status.button[i] != pdc_mouse_status.button[i])
-            pdc_mouse_status.changes |= (1 << i);
-
-        if (pdc_mouse_status.button[i] == BUTTON_MOVED)
-        {
-            /* Discard non-moved "moves" */
-
-            if (pdc_mouse_status.x == old_mouse_status.x &&
-                pdc_mouse_status.y == old_mouse_status.y)
-                return -1;
-
-            /* Motion events always flag the button as changed */
-
-            pdc_mouse_status.changes |= (1 << i);
-            pdc_mouse_status.changes |= PDC_MOUSE_MOVED;
-            break;
-        }
-    }
-
-    old_mouse_status = pdc_mouse_status;
-
-    /* Treat click events as release events for comparison purposes */
-
-    for (i = 0; i < 3; i++)
-    {
-        if (old_mouse_status.button[i] == BUTTON_CLICKED ||
-            old_mouse_status.button[i] == BUTTON_DOUBLE_CLICKED)
-            old_mouse_status.button[i] = BUTTON_RELEASED;
-    }
-
-    /* Check for SHIFT/CONTROL/ALT */
-
-    if (MEV.dwControlKeyState & (LEFT_ALT_PRESSED|RIGHT_ALT_PRESSED))
-        shift_flags |= BUTTON_ALT;
-
-    if (MEV.dwControlKeyState & (LEFT_CTRL_PRESSED|RIGHT_CTRL_PRESSED))
-        shift_flags |= BUTTON_CONTROL;
-
-    if (MEV.dwControlKeyState & SHIFT_PRESSED)
-        shift_flags |= BUTTON_SHIFT;
-
-    if (shift_flags)
-    {
-        for (i = 0; i < 3; i++)
-        {
-            if (pdc_mouse_status.changes & (1 << i))
-                pdc_mouse_status.button[i] |= shift_flags;
-        }
-    }
-
-    return KEY_MOUSE;
-}
-
-/* return the next available key or mouse event */
-
-int PDC_get_key(void)
-{
-    pdc_key_modifiers = 0L;
-
-    if (!key_count)
-    {
-        DWORD count;
-
-        ReadConsoleInput(pdc_con_in, &save_ip, 1, &count);
-        event_count--;
-
-        if (save_ip.EventType == MOUSE_EVENT)
-            key_count = 1;
-        else if (save_ip.EventType == KEY_EVENT)
-            key_count = _get_key_count();
-    }
-
-    if (key_count)
-    {
-        key_count--;
-
-        switch (save_ip.EventType)
-        {
-        case KEY_EVENT:
-            return _process_key_event();
-
-        case MOUSE_EVENT:
-            return _process_mouse_event();
-        }
-    }
-
-    return -1;
-}
-
-/* discard any pending keyboard or mouse input -- this is the core
-   routine for flushinp() */
-
-void PDC_flushinp(void)
-{
-    PDC_LOG(("PDC_flushinp() - called\n"));
-
-    FlushConsoleInputBuffer(pdc_con_in);
-}
-
-int PDC_mouse_set(void)
-{
-    /* If turning on mouse input: Set ENABLE_MOUSE_INPUT, and clear 
-       all other flags, including the extended flags;
-       If turning off the mouse: Set QuickEdit Mode to the status it 
-       had on startup, and clear all other flags */
-
-    SetConsoleMode(pdc_con_in, SP->_trap_mbe ?
-                   (ENABLE_MOUSE_INPUT|0x0080) : (pdc_quick_edit|0x0080));
-
-    memset(&old_mouse_status, 0, sizeof(old_mouse_status));
-
-    return OK;
-}
-
-int PDC_modifiers_set(void)
-{
-    return OK;
-}
diff --git a/src/other/PDCurses/win32/pdcscrn.c b/src/other/PDCurses/win32/pdcscrn.c
deleted file mode 100644
index b48ddaa..0000000
--- a/src/other/PDCurses/win32/pdcscrn.c
+++ /dev/null
@@ -1,620 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcwin.h"
-
-RCSID("$Id: pdcscrn.c,v 1.92 2008/07/20 20:12:04 wmcbrine Exp $")
-
-#ifdef CHTYPE_LONG
-# define PDC_OFFSET 32
-#else
-# define PDC_OFFSET  8
-#endif
-
-/* COLOR_PAIR to attribute encoding table. */
-
-unsigned char *pdc_atrtab = (unsigned char *)NULL;
-
-HANDLE pdc_con_out = INVALID_HANDLE_VALUE;
-HANDLE pdc_con_in = INVALID_HANDLE_VALUE;
-
-DWORD pdc_quick_edit;
-
-static short curstoreal[16], realtocurs[16] =
-{
-    COLOR_BLACK, COLOR_BLUE, COLOR_GREEN, COLOR_CYAN, COLOR_RED,
-    COLOR_MAGENTA, COLOR_YELLOW, COLOR_WHITE, COLOR_BLACK + 8,
-    COLOR_BLUE + 8, COLOR_GREEN + 8, COLOR_CYAN + 8, COLOR_RED + 8,
-    COLOR_MAGENTA + 8, COLOR_YELLOW + 8, COLOR_WHITE + 8
-};
-
-enum { PDC_RESTORE_NONE, PDC_RESTORE_BUFFER, PDC_RESTORE_WINDOW };
-
-/* Struct for storing console registry keys, and for use with the 
-   undocumented WM_SETCONSOLEINFO message. Originally by James Brown, 
-   www.catch22.net. */
-
-static struct
-{
-    ULONG    Length;
-    COORD    ScreenBufferSize;
-    COORD    WindowSize;
-    ULONG    WindowPosX;
-    ULONG    WindowPosY;
-
-    COORD    FontSize;
-    ULONG    FontFamily;
-    ULONG    FontWeight;
-    WCHAR    FaceName[32];
-
-    ULONG    CursorSize;
-    ULONG    FullScreen;
-    ULONG    QuickEdit;
-    ULONG    AutoPosition;
-    ULONG    InsertMode;
-    
-    USHORT   ScreenColors;
-    USHORT   PopupColors;
-    ULONG    HistoryNoDup;
-    ULONG    HistoryBufferSize;
-    ULONG    NumberOfHistoryBuffers;
-    
-    COLORREF ColorTable[16];
-
-    ULONG    CodePage;
-    HWND     Hwnd;
-
-    WCHAR    ConsoleTitle[0x100];
-} console_info;
-
-static CONSOLE_SCREEN_BUFFER_INFO orig_scr;
-
-static CHAR_INFO *ci_save = NULL;
-static DWORD old_console_mode = 0;
-
-static bool is_nt;
-
-static HWND _find_console_handle(void)
-{
-    TCHAR orgtitle[1024], temptitle[1024];
-    HWND wnd;
-
-    GetConsoleTitle(orgtitle, 1024);
-
-    wsprintf(temptitle, TEXT("%d/%d"), GetTickCount(), GetCurrentProcessId());
-    SetConsoleTitle(temptitle);
-
-    Sleep(40);
-
-    wnd = FindWindow(NULL, temptitle);
-
-    SetConsoleTitle(orgtitle);
-
-    return wnd;
-}
-
-/* Undocumented console message */
-
-#define WM_SETCONSOLEINFO (WM_USER + 201)
-
-/* Wrapper around WM_SETCONSOLEINFO. We need to create the necessary 
-   section (file-mapping) object in the context of the process which 
-   owns the console, before posting the message. Originally by JB. */
-
-static void _set_console_info(void)
-{
-    CONSOLE_SCREEN_BUFFER_INFO csbi;
-    CONSOLE_CURSOR_INFO cci;
-    DWORD dwConsoleOwnerPid;
-    HANDLE hProcess;
-    HANDLE hSection, hDupSection;
-    PVOID ptrView;
-
-    /* Each-time initialization for console_info */
-
-    GetConsoleCursorInfo(pdc_con_out, &cci);
-    console_info.CursorSize = cci.dwSize;
-
-    GetConsoleScreenBufferInfo(pdc_con_out, &csbi);
-    console_info.ScreenBufferSize = csbi.dwSize;
-
-    console_info.WindowSize.X = csbi.srWindow.Right - csbi.srWindow.Left + 1;
-    console_info.WindowSize.Y = csbi.srWindow.Bottom - csbi.srWindow.Top + 1;
-
-    console_info.WindowPosX = csbi.srWindow.Left;
-    console_info.WindowPosY = csbi.srWindow.Top;
-
-    /* Open the process which "owns" the console */
-
-    GetWindowThreadProcessId(console_info.Hwnd, &dwConsoleOwnerPid);
-    
-    hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwConsoleOwnerPid);
-
-    /* Create a SECTION object backed by page-file, then map a view of
-       this section into the owner process so we can write the contents
-       of the CONSOLE_INFO buffer into it */
-
-    hSection = CreateFileMapping(INVALID_HANDLE_VALUE, 0, PAGE_READWRITE,
-                                 0, sizeof(console_info), 0);
-
-    /* Copy our console structure into the section-object */
-
-    ptrView = MapViewOfFile(hSection, FILE_MAP_WRITE|FILE_MAP_READ,
-                            0, 0, sizeof(console_info));
-
-    memcpy(ptrView, &console_info, sizeof(console_info));
-
-    UnmapViewOfFile(ptrView);
-
-    /* Map the memory into owner process */
-
-    DuplicateHandle(GetCurrentProcess(), hSection, hProcess, &hDupSection,
-                    0, FALSE, DUPLICATE_SAME_ACCESS);
-
-    /* Send console window the "update" message */
-
-    SendMessage(console_info.Hwnd, WM_SETCONSOLEINFO, (WPARAM)hDupSection, 0);
-
-    CloseHandle(hSection);
-    CloseHandle(hProcess);
-}
-
-/* One-time initialization for console_info -- color table and font info
-   from the registry; other values from functions. */
-
-static void _init_console_info(void)
-{
-    DWORD scrnmode, len;
-    HKEY reghnd;
-    int i;
-
-    console_info.Hwnd = _find_console_handle();
-    console_info.Length = sizeof(console_info);
-
-    GetConsoleMode(pdc_con_in, &scrnmode);
-    console_info.QuickEdit = !!(scrnmode & 0x0040);
-    console_info.InsertMode = !!(scrnmode & 0x0020);
-
-    console_info.FullScreen = FALSE;
-    console_info.AutoPosition = 0x10000;
-    console_info.ScreenColors = SP->orig_back << 4 | SP->orig_fore;
-    console_info.PopupColors = 0xf5;
-    
-    console_info.HistoryNoDup = FALSE;
-    console_info.HistoryBufferSize = 50;
-    console_info.NumberOfHistoryBuffers = 4;
-
-    console_info.CodePage = GetConsoleOutputCP();
-
-    RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("Console"), 0,
-                 KEY_QUERY_VALUE, &reghnd);
-
-    len = sizeof(DWORD);
-
-    /* Default color table */
-
-    for (i = 0; i < 16; i++)
-    {
-        char tname[13];
-
-        sprintf(tname, "ColorTable%02d", i);
-        RegQueryValueExA(reghnd, tname, NULL, NULL,
-                         (LPBYTE)(&(console_info.ColorTable[i])), &len);
-    }
-
-    /* Font info */
-
-    RegQueryValueEx(reghnd, TEXT("FontSize"), NULL, NULL,
-                    (LPBYTE)(&console_info.FontSize), &len);
-    RegQueryValueEx(reghnd, TEXT("FontFamily"), NULL, NULL,
-                    (LPBYTE)(&console_info.FontFamily), &len);
-    RegQueryValueEx(reghnd, TEXT("FontWeight"), NULL, NULL,
-                    (LPBYTE)(&console_info.FontWeight), &len);
-
-    len = sizeof(WCHAR) * 32;
-    RegQueryValueExW(reghnd, L"FaceName", NULL, NULL,
-                     (LPBYTE)(console_info.FaceName), &len);
-
-    RegCloseKey(reghnd);
-}
-
-/* close the physical screen -- may restore the screen to its state
-   before PDC_scr_open(); miscellaneous cleanup */
-
-void PDC_scr_close(void)
-{
-    COORD origin;
-    SMALL_RECT rect;
-
-    PDC_LOG(("PDC_scr_close() - called\n"));
-
-    PDC_reset_shell_mode();
-
-    if (SP->_restore != PDC_RESTORE_NONE)
-    {
-        if (SP->_restore == PDC_RESTORE_WINDOW)
-        {
-            rect.Top = orig_scr.srWindow.Top;
-            rect.Left = orig_scr.srWindow.Left;
-            rect.Bottom = orig_scr.srWindow.Bottom;
-            rect.Right = orig_scr.srWindow.Right;
-        }
-        else    /* PDC_RESTORE_BUFFER */
-        {
-            rect.Top = rect.Left = 0;
-            rect.Bottom = orig_scr.dwSize.Y - 1;
-            rect.Right = orig_scr.dwSize.X - 1;
-        }
-
-        origin.X = origin.Y = 0;
-
-        if (!WriteConsoleOutput(pdc_con_out, ci_save, orig_scr.dwSize, 
-                                origin, &rect))
-            return;
-    }
-
-    if (SP->visibility != 1)
-        curs_set(1);
-
-    /* Position cursor to the bottom left of the screen. */
-
-    PDC_gotoyx(PDC_get_buffer_rows() - 2, 0);
-}
-
-void PDC_scr_free(void)
-{
-    if (SP)
-        free(SP);
-    if (pdc_atrtab)
-        free(pdc_atrtab);
-
-    pdc_atrtab = (unsigned char *)NULL;
-}
-
-/* open the physical screen -- allocate SP, miscellaneous intialization,
-   and may save the existing screen for later restoration */
-
-int PDC_scr_open(int argc, char **argv)
-{
-    COORD bufsize, origin;
-    SMALL_RECT rect;
-    const char *str;
-    CONSOLE_SCREEN_BUFFER_INFO csbi;
-    int i;
-
-    PDC_LOG(("PDC_scr_open() - called\n"));
-
-    SP = calloc(1, sizeof(SCREEN));
-    pdc_atrtab = calloc(PDC_COLOR_PAIRS * PDC_OFFSET, 1);
-
-    if (!SP || !pdc_atrtab)
-        return ERR;
-
-    for (i = 0; i < 16; i++)
-        curstoreal[realtocurs[i]] = i;
-
-    pdc_con_out = GetStdHandle(STD_OUTPUT_HANDLE);
-    pdc_con_in = GetStdHandle(STD_INPUT_HANDLE);
-
-    if (GetFileType(pdc_con_in) != FILE_TYPE_CHAR)
-    {
-        fprintf(stderr, "\nRedirection is not supported.\n");
-        exit(1);
-    }
-
-    is_nt = !(GetVersion() & 0x80000000);
-
-    GetConsoleScreenBufferInfo(pdc_con_out, &csbi);
-    GetConsoleScreenBufferInfo(pdc_con_out, &orig_scr);
-    GetConsoleMode(pdc_con_in, &old_console_mode);
-
-    /* preserve QuickEdit Mode setting for use in PDC_mouse_set() when
-       the mouse is not enabled -- other console input settings are
-       cleared */
-
-    pdc_quick_edit = old_console_mode & 0x0040;
-
-    SP->lines = (str = getenv("LINES")) ? atoi(str) : PDC_get_rows();
-    SP->cols = (str = getenv("COLS")) ? atoi(str) : PDC_get_columns();
-
-    SP->mouse_wait = PDC_CLICK_PERIOD;
-    SP->audible = TRUE;
-
-    if (SP->lines < 2 || SP->lines > csbi.dwMaximumWindowSize.Y)
-    {
-        fprintf(stderr, "LINES value must be >= 2 and <= %d: got %d\n",
-                csbi.dwMaximumWindowSize.Y, SP->lines);
-
-        return ERR;
-    }
-
-    if (SP->cols < 2 || SP->cols > csbi.dwMaximumWindowSize.X)
-    {
-        fprintf(stderr, "COLS value must be >= 2 and <= %d: got %d\n",
-                csbi.dwMaximumWindowSize.X, SP->cols);
-
-        return ERR;
-    }
-
-    SP->orig_fore = csbi.wAttributes & 0x0f;
-    SP->orig_back = (csbi.wAttributes & 0xf0) >> 4;
-
-    SP->orig_attr = TRUE;
-
-    SP->_restore = PDC_RESTORE_NONE;
-
-    if (getenv("PDC_RESTORE_SCREEN"))
-    {
-        /* Attempt to save the complete console buffer */
-
-        ci_save = malloc(orig_scr.dwSize.X * orig_scr.dwSize.Y *
-                         sizeof(CHAR_INFO));
-
-        if (!ci_save)
-        {
-            PDC_LOG(("PDC_scr_open() - malloc failure (1)\n"));
-
-            return ERR;
-        }
-
-        bufsize.X = orig_scr.dwSize.X;
-        bufsize.Y = orig_scr.dwSize.Y;
-
-        origin.X = origin.Y = 0;
-
-        rect.Top = rect.Left = 0;
-        rect.Bottom = orig_scr.dwSize.Y  - 1;
-        rect.Right = orig_scr.dwSize.X - 1;
-
-        if (!ReadConsoleOutput(pdc_con_out, ci_save, bufsize, origin, &rect))
-        {
-            /* We can't save the complete buffer, so try and save just 
-               the displayed window */
-
-            free(ci_save);
-            ci_save = NULL;
-
-            bufsize.X = orig_scr.srWindow.Right - orig_scr.srWindow.Left + 1;
-            bufsize.Y = orig_scr.srWindow.Bottom - orig_scr.srWindow.Top + 1;
-
-            ci_save = malloc(bufsize.X * bufsize.Y * sizeof(CHAR_INFO));
-
-            if (!ci_save)
-            {
-                PDC_LOG(("PDC_scr_open() - malloc failure (2)\n"));
-
-                return ERR;
-            }
-
-            origin.X = origin.Y = 0;
-
-            rect.Top = orig_scr.srWindow.Top;
-            rect.Left = orig_scr.srWindow.Left;
-            rect.Bottom = orig_scr.srWindow.Bottom;
-            rect.Right = orig_scr.srWindow.Right;
-
-            if (!ReadConsoleOutput(pdc_con_out, ci_save, bufsize, 
-                                   origin, &rect))
-            {
-#ifdef PDCDEBUG
-                CHAR LastError[256];
-
-                FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, 
-                              GetLastError(), MAKELANGID(LANG_NEUTRAL, 
-                              SUBLANG_DEFAULT), LastError, 256, NULL);
-
-                PDC_LOG(("PDC_scr_open() - %s\n", LastError));
-#endif
-                free(ci_save);
-                ci_save = NULL;
-
-                return ERR;
-            }
-
-            SP->_restore = PDC_RESTORE_WINDOW;
-        }
-        else
-            SP->_restore = PDC_RESTORE_BUFFER;
-    }
-
-    SP->_preserve = (getenv("PDC_PRESERVE_SCREEN") != NULL);
-
-    PDC_reset_prog_mode();
-
-    SP->mono = FALSE;
-
-    return OK;
-}
-
- /* Calls SetConsoleWindowInfo with the given parameters, but fits them 
-    if a scoll bar shrinks the maximum possible value. The rectangle 
-    must at least fit in a half-sized window. */
-
-static BOOL _fit_console_window(HANDLE con_out, CONST SMALL_RECT *rect)
-{
-    SMALL_RECT run;
-    SHORT mx, my;
-
-    if (SetConsoleWindowInfo(con_out, TRUE, rect))
-        return TRUE;
-
-    run = *rect;
-    run.Right /= 2;
-    run.Bottom /= 2;
-
-    mx = run.Right;
-    my = run.Bottom;
-
-    if (!SetConsoleWindowInfo(con_out, TRUE, &run))
-        return FALSE;
-
-    for (run.Right = rect->Right; run.Right >= mx; run.Right--)
-        if (SetConsoleWindowInfo(con_out, TRUE, &run))
-            break;
-
-    if (run.Right < mx)
-        return FALSE;
-
-    for (run.Bottom = rect->Bottom; run.Bottom >= my; run.Bottom--)
-        if (SetConsoleWindowInfo(con_out, TRUE, &run))
-            return TRUE;
-
-    return FALSE;
-}
-
-/* the core of resize_term() */
-
-int PDC_resize_screen(int nlines, int ncols)
-{
-    SMALL_RECT rect;
-    COORD size, max;
-
-    if (nlines < 2 || ncols < 2)
-        return ERR;
-
-    max = GetLargestConsoleWindowSize(pdc_con_out);
-
-    rect.Left = rect.Top = 0;
-    rect.Right = ncols - 1;
-
-    if (rect.Right > max.X)
-        rect.Right = max.X;
-
-    rect.Bottom = nlines - 1;
-
-    if (rect.Bottom > max.Y)
-        rect.Bottom = max.Y;
-
-    size.X = rect.Right + 1;
-    size.Y = rect.Bottom + 1;
-
-    _fit_console_window(pdc_con_out, &rect);
-    SetConsoleScreenBufferSize(pdc_con_out, size);
-    _fit_console_window(pdc_con_out, &rect);
-    SetConsoleScreenBufferSize(pdc_con_out, size);
-    SetConsoleActiveScreenBuffer(pdc_con_out);
-
-    return OK;
-}
-
-void PDC_reset_prog_mode(void)
-{
-    PDC_LOG(("PDC_reset_prog_mode() - called.\n"));
-
-    if (is_nt)
-    {
-        COORD bufsize;
-        SMALL_RECT rect;
-
-        bufsize.X = orig_scr.srWindow.Right - orig_scr.srWindow.Left + 1;
-        bufsize.Y = orig_scr.srWindow.Bottom - orig_scr.srWindow.Top + 1;
-
-        rect.Top = rect.Left = 0;
-        rect.Bottom = bufsize.Y - 1;
-        rect.Right = bufsize.X - 1;
-
-        SetConsoleScreenBufferSize(pdc_con_out, bufsize);
-        SetConsoleWindowInfo(pdc_con_out, TRUE, &rect);
-        SetConsoleScreenBufferSize(pdc_con_out, bufsize);
-        SetConsoleActiveScreenBuffer(pdc_con_out);
-    }
-
-    PDC_mouse_set();
-}
-
-void PDC_reset_shell_mode(void)
-{
-    PDC_LOG(("PDC_reset_shell_mode() - called.\n"));
-
-    if (is_nt)
-    {
-        SetConsoleScreenBufferSize(pdc_con_out, orig_scr.dwSize);
-        SetConsoleWindowInfo(pdc_con_out, TRUE, &orig_scr.srWindow);
-        SetConsoleScreenBufferSize(pdc_con_out, orig_scr.dwSize);
-        SetConsoleWindowInfo(pdc_con_out, TRUE, &orig_scr.srWindow);
-        SetConsoleActiveScreenBuffer(pdc_con_out);
-    }
-
-    SetConsoleMode(pdc_con_in, old_console_mode);
-}
-
-void PDC_restore_screen_mode(int i)
-{
-}
-
-void PDC_save_screen_mode(int i)
-{
-}
-
-void PDC_init_pair(short pair, short fg, short bg)
-{
-    unsigned char att, temp_bg;
-    chtype i;
-
-    fg = curstoreal[fg];
-    bg = curstoreal[bg];
-
-    for (i = 0; i < PDC_OFFSET; i++)
-    {
-        att = fg | (bg << 4);
-
-        if (i & (A_REVERSE >> PDC_ATTR_SHIFT))
-            att = bg | (fg << 4);
-        if (i & (A_UNDERLINE >> PDC_ATTR_SHIFT))
-            att = 1;
-        if (i & (A_INVIS >> PDC_ATTR_SHIFT))
-        {
-            temp_bg = att >> 4;
-            att = temp_bg << 4 | temp_bg;
-        }
-        if (i & (A_BOLD >> PDC_ATTR_SHIFT))
-            att |= 8;
-        if (i & (A_BLINK >> PDC_ATTR_SHIFT))
-            att |= 128;
-
-        pdc_atrtab[pair * PDC_OFFSET + i] = att;
-    }
-}
-
-int PDC_pair_content(short pair, short *fg, short *bg)
-{
-    *fg = realtocurs[pdc_atrtab[pair * PDC_OFFSET] & 0x0F];
-    *bg = realtocurs[(pdc_atrtab[pair * PDC_OFFSET] & 0xF0) >> 4];
-
-    return OK;
-}
-
-bool PDC_can_change_color(void)
-{
-    return is_nt;
-}
-
-int PDC_color_content(short color, short *red, short *green, short *blue)
-{
-    DWORD col;
-
-    if (!console_info.Hwnd)
-        _init_console_info();
-
-    col = console_info.ColorTable[curstoreal[color]];
-
-    *red = DIVROUND(GetRValue(col) * 1000, 255);
-    *green = DIVROUND(GetGValue(col) * 1000, 255);
-    *blue = DIVROUND(GetBValue(col) * 1000, 255);
-
-    return OK;
-}
-
-int PDC_init_color(short color, short red, short green, short blue)
-{
-    if (!console_info.Hwnd)
-        _init_console_info();
-
-    console_info.ColorTable[curstoreal[color]] =
-        RGB(DIVROUND(red * 255, 1000),
-            DIVROUND(green * 255, 1000),
-            DIVROUND(blue * 255, 1000));
-
-    _set_console_info();
-
-    return OK;
-}
diff --git a/src/other/PDCurses/win32/pdcsetsc.c b/src/other/PDCurses/win32/pdcsetsc.c
deleted file mode 100644
index cfb1231..0000000
--- a/src/other/PDCurses/win32/pdcsetsc.c
+++ /dev/null
@@ -1,89 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcwin.h"
-
-RCSID("$Id: pdcsetsc.c,v 1.40 2008/07/14 04:24:52 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         pdcsetsc
-
-  Synopsis:
-        int PDC_set_blink(bool blinkon);
-        void PDC_set_title(const char *title);
-
-  Description:
-        PDC_set_blink() toggles whether the A_BLINK attribute sets an
-        actual blink mode (TRUE), or sets the background color to high
-        intensity (FALSE). The default is platform-dependent (FALSE in
-        most cases). It returns OK if it could set the state to match 
-        the given parameter, ERR otherwise. Current platforms also 
-        adjust the value of COLORS according to this function -- 16 for 
-        FALSE, and 8 for TRUE.
-
-        PDC_set_title() sets the title of the window in which the curses
-        program is running. This function may not do anything on some
-        platforms. (Currently it only works in Win32 and X11.)
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_set_blink                           -       -       -
-        PDC_set_title                           -       -       -
-
-**man-end****************************************************************/
-
-int PDC_curs_set(int visibility)
-{
-    CONSOLE_CURSOR_INFO cci;
-    int ret_vis;
-
-    PDC_LOG(("PDC_curs_set() - called: visibility=%d\n", visibility));
-
-    ret_vis = SP->visibility;
-
-    if (GetConsoleCursorInfo(pdc_con_out, &cci) == FALSE)
-        return ERR;
-
-    switch(visibility)
-    {
-    case 0:             /* invisible */
-        cci.bVisible = FALSE;
-        break;
-    case 2:             /* highly visible */
-        cci.bVisible = TRUE;
-        cci.dwSize = 95;
-        break;
-    default:            /* normal visibility */
-        cci.bVisible = TRUE;
-        cci.dwSize = SP->orig_cursor;
-        break;
-    }
-
-    if (SetConsoleCursorInfo(pdc_con_out, &cci) == FALSE)
-        return ERR;
-
-    SP->visibility = visibility;
-    return ret_vis;
-}
-
-void PDC_set_title(const char *title)
-{
-#ifdef PDC_WIDE
-    wchar_t wtitle[512];
-#endif
-    PDC_LOG(("PDC_set_title() - called:<%s>\n", title));
-
-#ifdef PDC_WIDE
-    PDC_mbstowcs(wtitle, title, 511);
-    SetConsoleTitleW(wtitle);
-#else
-    SetConsoleTitleA(title);
-#endif
-}
-
-int PDC_set_blink(bool blinkon)
-{
-    if (pdc_color_started)
-        COLORS = 16;
-
-    return blinkon ? ERR : OK;
-}
diff --git a/src/other/PDCurses/win32/pdcurses.ico b/src/other/PDCurses/win32/pdcurses.ico
deleted file mode 100644
index 53a6dde..0000000
Binary files a/src/other/PDCurses/win32/pdcurses.ico and /dev/null differ
diff --git a/src/other/PDCurses/win32/pdcurses.rc b/src/other/PDCurses/win32/pdcurses.rc
deleted file mode 100644
index 1b8bba4..0000000
--- a/src/other/PDCurses/win32/pdcurses.rc
+++ /dev/null
@@ -1,28 +0,0 @@
-#include "winver.h"
-
-1 VERSIONINFO
- FILEVERSION 3,4,0,0
- PRODUCTVERSION 3,4,0,0
- FILEFLAGSMASK 0x3fL
- FILEFLAGS 0x0L
- FILEOS VOS_UNKNOWN
- FILETYPE VFT_DLL
- FILESUBTYPE 0x0L
-BEGIN
-    BLOCK "StringFileInfo"
-    BEGIN
-        BLOCK "040904b0"
-        BEGIN
-            VALUE "Maintainer", "William McBrine\0"
-            VALUE "FileDescription", "Public Domain Curses\0"
-            VALUE "FileVersion", "3.4.0\0"
-            VALUE "InternalName", "PDCurses\0"
-            VALUE "LegalCopyright", "Public Domain\0"
-            VALUE "OriginalFilename", "PDCURSES.DLL\0"
-            VALUE "ProductName", "Public Domain Curses Library\0"
-            VALUE "ProductVersion", "3.4.0\0"
-        END
-    END
-END
-
-1 ICON    DISCARDABLE     "PDCURSES.ico"
diff --git a/src/other/PDCurses/win32/pdcutil.c b/src/other/PDCurses/win32/pdcutil.c
deleted file mode 100644
index f7be019..0000000
--- a/src/other/PDCurses/win32/pdcutil.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcwin.h"
-
-RCSID("$Id: pdcutil.c,v 1.14 2008/07/14 04:24:52 wmcbrine Exp $")
-
-void PDC_beep(void)
-{
-    PDC_LOG(("PDC_beep() - called\n"));
-
-/*  MessageBeep(MB_OK); */
-    MessageBeep(0XFFFFFFFF);
-}
-
-void PDC_napms(int ms)
-{
-    PDC_LOG(("PDC_napms() - called: ms=%d\n", ms));
-
-    Sleep(ms);
-}
-
-const char *PDC_sysname(void)
-{
-    return "Win32";
-}
diff --git a/src/other/PDCurses/win32/pdcwin.h b/src/other/PDCurses/win32/pdcwin.h
deleted file mode 100644
index bb3396f..0000000
--- a/src/other/PDCurses/win32/pdcwin.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/* Public Domain Curses */
-
-/* $Id: pdcwin.h,v 1.6 2008/07/13 06:36:32 wmcbrine Exp $ */
-
-#ifdef PDC_WIDE
-# define UNICODE
-#endif
-
-#include <windows.h>
-#undef MOUSE_MOVED
-#include <curspriv.h>
-
-extern unsigned char *pdc_atrtab;
-extern HANDLE pdc_con_out, pdc_con_in;
-extern DWORD pdc_quick_edit;
-
-extern int PDC_get_buffer_rows(void);
diff --git a/src/other/PDCurses/win32/vcwin32.mak b/src/other/PDCurses/win32/vcwin32.mak
deleted file mode 100644
index b8dc404..0000000
--- a/src/other/PDCurses/win32/vcwin32.mak
+++ /dev/null
@@ -1,136 +0,0 @@
-# Visual C++ NMakefile for PDCurses library - Win32 VC++ 2.0+
-#
-# Usage: nmake -f [path\]vcwin32.mak [DEBUG=] [DLL=] [WIDE=] [UTF8=] [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.lib|testcurs.exe...]
-
-O = obj
-
-!ifndef PDCURSES_SRCDIR
-PDCURSES_SRCDIR = ..
-!endif
-
-!include $(PDCURSES_SRCDIR)\version.mif
-!include $(PDCURSES_SRCDIR)\libobjs.mif
-
-osdir		= $(PDCURSES_SRCDIR)\win32
-
-PDCURSES_WIN_H	= $(osdir)\pdcwin.h
-
-CC		= cl.exe -nologo
-
-!ifdef DEBUG
-CFLAGS		= -Z7 -DPDCDEBUG
-LDFLAGS		= -debug -pdb:none
-!else
-CFLAGS		= -O1
-LDFLAGS		=
-!endif
-
-BASEDEF		= $(PDCURSES_SRCDIR)\exp-base.def
-WIDEDEF		= $(PDCURSES_SRCDIR)\exp-wide.def
-
-DEFDEPS		= $(BASEDEF)
-
-!ifdef WIDE
-WIDEOPT		= -DPDC_WIDE
-DEFDEPS		= $(DEFDEPS) $(WIDEDEF)
-!endif
-
-!ifdef UTF8
-UTF8OPT		= -DPDC_FORCE_UTF8
-!endif
-
-DEFFILE		= pdcurses.def
-SHL_LD = link $(LDFLAGS) /NOLOGO /DLL /OUT:pdcurses.dll /DEF:$(DEFFILE)
-
-LINK		= link.exe -nologo
-
-CCLIBS		= user32.lib advapi32.lib
-# may need to add msvcrt.lib for VC 2.x, VC 5.0 doesn't want it
-#CCLIBS		= msvcrt.lib user32.lib advapi32.lib
-
-LIBEXE		= lib -nologo
-
-LIBCURSES	= pdcurses.lib
-CURSESDLL	= pdcurses.dll
-
-!ifdef DLL
-DLLOPT		= -DPDC_DLL_BUILD
-PDCLIBS		= $(CURSESDLL)
-!else
-PDCLIBS		= $(LIBCURSES)
-!endif
-
-BUILD		= $(CC) -I$(PDCURSES_SRCDIR) -c $(CFLAGS) $(DLLOPT) \
-$(WIDEOPT) $(UTF8OPT)
-
-all:	$(PDCLIBS) $(DEMOS)
-
-clean:
-	-del *.obj
-	-del *.lib
-	-del *.exe
-	-del *.dll
-	-del *.exp
-	-del *.res
-	-del *.def
-
-DEMOOBJS = $(DEMOS:.exe=.obj) tui.obj
-
-$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS)
-$(PDCOBJS) : $(PDCURSES_WIN_H)
-$(DEMOOBJS) : $(PDCURSES_CURSES_H)
-$(DEMOS) : $(LIBCURSES)
-panel.obj : $(PANEL_HEADER)
-terminfo.obj: $(TERM_HEADER)
-
-!ifndef DLL
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	$(LIBEXE) -out:$@ $(LIBOBJS) $(PDCOBJS)
-	-copy $(LIBCURSES) panel.lib
-!endif
-
-$(DEFFILE) : $(DEFDEPS)
-	echo LIBRARY pdcurses > $(DEFFILE)
-	echo EXPORTS >> $(DEFFILE)
-	type $(BASEDEF) >> $(DEFFILE)
-!ifdef WIDE
-	type $(WIDEDEF) >> $(DEFFILE)
-!endif
-
-$(CURSESDLL) : $(LIBOBJS) $(PDCOBJS) $(DEFFILE) pdcurses.obj
-	$(SHL_LD) $(LIBOBJS) $(PDCOBJS) pdcurses.obj $(CCLIBS)
-	-copy $(LIBCURSES) panel.lib
-
-pdcurses.res pdcurses.obj: $(osdir)\pdcurses.rc $(osdir)\pdcurses.ico
-	rc /r /fopdcurses.res $(osdir)\pdcurses.rc
-	cvtres /MACHINE:IX86 /NOLOGO /OUT:pdcurses.obj pdcurses.res
-
-{$(srcdir)\}.c{}.obj::
-	$(BUILD) $<
-
-{$(osdir)\}.c{}.obj::
-	$(BUILD) $<
-
-{$(demodir)\}.c{}.obj::
-	$(BUILD) $<
-
-.obj.exe:
-	$(LINK) $(LDFLAGS) $< $(LIBCURSES) $(CCLIBS)
-
-tuidemo.exe: tuidemo.obj tui.obj
-	$(LINK) $(LDFLAGS) $*.obj tui.obj $(LIBCURSES) $(CCLIBS)
-
-tui.obj: $(demodir)\tui.c $(demodir)\tui.h
-	$(BUILD) -I$(demodir) $(demodir)\tui.c
-
-tuidemo.obj: $(demodir)\tuidemo.c
-	$(BUILD) -I$(demodir) $(demodir)\tuidemo.c
-
-PLATFORM1 = Visual C++
-PLATFORM2 = Microsoft Visual C/C++ for Win32
-ARCNAME = pdc$(VER)_vc_w32
-
-!include $(PDCURSES_SRCDIR)\makedist.mif
diff --git a/src/other/PDCurses/win32/wccwin32.mak b/src/other/PDCurses/win32/wccwin32.mak
deleted file mode 100644
index 1363897..0000000
--- a/src/other/PDCurses/win32/wccwin32.mak
+++ /dev/null
@@ -1,51 +0,0 @@
-# Watcom WMAKE Makefile for PDCurses library - Win32 Watcom C/C++ 10.6+
-#
-# Usage: wmake -f [win32\]wccwin32.mak [DEBUG=Y] [WIDE=Y] [UTF8=Y] [target]
-#
-# where target can be any of:
-# [all|demos|pdcurses.lib|testcurs.exe...]
-
-!ifdef %PDCURSES_SRCDIR
-PDCURSES_SRCDIR	= $(%PDCURSES_SRCDIR)
-!else
-PDCURSES_SRCDIR	= ..
-!endif
-
-!include $(PDCURSES_SRCDIR)\version.mif
-
-osdir		= $(PDCURSES_SRCDIR)\win32
-
-CC		= wcc386
-TARGET		= nt
-
-CFLAGS		= /ei /zq /wx /i=$(PDCURSES_SRCDIR)
-
-!ifeq DEBUG Y
-CFLAGS		+= /d2 /DPDCDEBUG
-LDFLAGS		= D W A op q sys $(TARGET)
-!else
-CFLAGS		+= /oneatx
-LDFLAGS		= op q sys $(TARGET)
-!endif
-
-!ifeq WIDE Y
-CFLAGS		+= /DPDC_WIDE
-!endif
-
-!ifeq UTF8 Y
-CFLAGS		+= /DPDC_FORCE_UTF8
-!endif
-
-LIBEXE		= wlib /q /n /t
-
-!include $(PDCURSES_SRCDIR)\watcom.mif
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	$(LIBEXE) $@ $(LIBOBJS) $(PDCOBJS)
-	-copy $(LIBCURSES) panel.lib
-
-PLATFORM1	= Watcom C++ Win32
-PLATFORM2	= Open Watcom 1.6 for Win32
-ARCNAME		= pdc$(VER)_wcc_w32
-
-!include $(PDCURSES_SRCDIR)\makedist.mif
diff --git a/src/other/PDCurses/x11/Makefile.aix.in b/src/other/PDCurses/x11/Makefile.aix.in
deleted file mode 100644
index 0fe5db7..0000000
--- a/src/other/PDCurses/x11/Makefile.aix.in
+++ /dev/null
@@ -1,234 +0,0 @@
-# Makefile for PDCurses library for AIX/X11
-
-SHELL		= @SHELL@
-THIS		= Makefile
-
- at SET_MAKE@
-
-PDCURSES_SRCDIR	= ..
-
-osdir		= .
-srcdir		= $(PDCURSES_SRCDIR)/pdcurses
-
-PDCURSES_CONFIG_H	=$(PDCURSES_SRCDIR)/config.h
-PDCURSES_CURSES_H	=$(PDCURSES_SRCDIR)/curses.h
-PDCURSES_CURSPRIV_H	=$(PDCURSES_SRCDIR)/curspriv.h
-PDCURSES_HEADERS	=$(PDCURSES_CONFIG_H) $(PDCURSES_CURSES_H) \
-$(PDCURSES_CURSPRIV_H)
-PDCURSES_X11_H		=$(osdir)/pdcx11.h
-
-MH_EXTRA_LIBS	= @MH_EXTRA_LIBS@
-
-CFLAGS		= @CFLAGS@ @DYN_COMP@
-
-CPPFLAGS	= @DEFS@ -DXCURSES @SYS_DEFS@ -I$(PDCURSES_SRCDIR)
-
-BUILD		= @CC@ -c $(CFLAGS) $(CPPFLAGS) @MH_XINC_DIR@
-
-LINK		= @CC@
-LDFLAGS		= 
-
-LIBCURSES	= libXCurses.a
-
-all :	$(LIBCURSES)
-
-install : 
-	echo Does nothing at the moment
-
-clean :
-	-rm -rf *.o *.sho trace $(LIBCURSES)
-
-distclean: clean
-	-rm -f Makefile
-
-mostlyclean: clean
-
-realclean: distclean
-
-LIBOBJS = addch.o addchstr.o addstr.o attr.o beep.o bkgd.o border.o \
-clear.o color.o delch.o deleteln.o deprec.o getch.o getstr.o getyx.o \
-inch.o inchstr.o initscr.o inopts.o insch.o insstr.o instr.o kernel.o \
-keyname.o mouse.o move.o outopts.o overlay.o pad.o panel.o printw.o \
-refresh.o scanw.o scr_dump.o scroll.o slk.o termattr.o terminfo.o \
-touch.o util.o window.o debug.o
-
-PDCOBJS = pdcclip.o pdcdisp.o pdcgetsc.o pdckbd.o pdcscrn.o pdcsetsc.o \
-pdcutil.o pdcx11.o x11.o sb.o ScrollBox.o
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS) curses.exp
-	ld -bnoentry -bM:SRE -bE:curses.exp $(MH_LIBS) $(MH_EXTRA_LIBS) \
-$(LIBOBJS) $(PDCOBJS) -o $@
-
-$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS)
-$(PDCOBJS) : $(PDCURSES_X11_H)
-terminfo.o: $(TERM_HEADER)
-
-curses.exp: ../exp-base.def
-	cat ../exp-base.def > curses.exp
-	echo Xinitscr >> curses.exp
-	echo XCursesExit >> curses.exp
-	echo sb_init >> curses.exp
-	echo sb_set_horz >> curses.exp
-	echo sb_set_vert >> curses.exp
-	echo sb_get_horz >> curses.exp
-	echo sb_get_vert >> curses.exp
-	echo sb_refresh >> curses.exp
-
-addch.o: $(srcdir)/addch.c
-	$(BUILD) $(srcdir)/addch.c
-
-addchstr.o: $(srcdir)/addchstr.c
-	$(BUILD) $(srcdir)/addchstr.c
-
-addstr.o: $(srcdir)/addstr.c
-	$(BUILD) $(srcdir)/addstr.c
-
-attr.o: $(srcdir)/attr.c
-	$(BUILD) $(srcdir)/attr.c
-
-beep.o: $(srcdir)/beep.c
-	$(BUILD) $(srcdir)/beep.c
-
-bkgd.o: $(srcdir)/bkgd.c
-	$(BUILD) $(srcdir)/bkgd.c
-
-border.o: $(srcdir)/border.c
-	$(BUILD) $(srcdir)/border.c
-
-clear.o: $(srcdir)/clear.c
-	$(BUILD) $(srcdir)/clear.c
-
-color.o: $(srcdir)/color.c
-	$(BUILD) $(srcdir)/color.c
-
-delch.o: $(srcdir)/delch.c
-	$(BUILD) $(srcdir)/delch.c
-
-deleteln.o: $(srcdir)/deleteln.c
-	$(BUILD) $(srcdir)/deleteln.c
-
-deprec.o: $(srcdir)/deprec.c
-	$(BUILD) $(srcdir)/deprec.c
-
-getch.o: $(srcdir)/getch.c
-	$(BUILD) $(srcdir)/getch.c
-
-getstr.o: $(srcdir)/getstr.c
-	$(BUILD) $(srcdir)/getstr.c
-
-getyx.o: $(srcdir)/getyx.c
-	$(BUILD) $(srcdir)/getyx.c
-
-inch.o: $(srcdir)/inch.c
-	$(BUILD) $(srcdir)/inch.c
-
-inchstr.o: $(srcdir)/inchstr.c
-	$(BUILD) $(srcdir)/inchstr.c
-
-initscr.o: $(srcdir)/initscr.c
-	$(BUILD) $(srcdir)/initscr.c
-
-inopts.o: $(srcdir)/inopts.c
-	$(BUILD) $(srcdir)/inopts.c
-
-insch.o: $(srcdir)/insch.c
-	$(BUILD) $(srcdir)/insch.c
-
-insstr.o: $(srcdir)/insstr.c
-	$(BUILD) $(srcdir)/insstr.c
-
-instr.o: $(srcdir)/instr.c
-	$(BUILD) $(srcdir)/instr.c
-
-kernel.o: $(srcdir)/kernel.c
-	$(BUILD) $(srcdir)/kernel.c
-
-keyname.o: $(srcdir)/keyname.c
-	$(BUILD) $(srcdir)/keyname.c
-
-mouse.o: $(srcdir)/mouse.c
-	$(BUILD) $(srcdir)/mouse.c
-
-move.o: $(srcdir)/move.c
-	$(BUILD) $(srcdir)/move.c
-
-outopts.o: $(srcdir)/outopts.c
-	$(BUILD) $(srcdir)/outopts.c
-
-overlay.o: $(srcdir)/overlay.c
-	$(BUILD) $(srcdir)/overlay.c
-
-pad.o: $(srcdir)/pad.c
-	$(BUILD) $(srcdir)/pad.c
-
-panel.o: $(srcdir)/panel.c $(PDCURSES_SRCDIR)/panel.h
-	$(BUILD) $(srcdir)/panel.c
-
-printw.o: $(srcdir)/printw.c
-	$(BUILD) $(srcdir)/printw.c
-
-refresh.o: $(srcdir)/refresh.c
-	$(BUILD) $(srcdir)/refresh.c
-
-scanw.o: $(srcdir)/scanw.c
-	$(BUILD) $(srcdir)/scanw.c
-
-scr_dump.o: $(srcdir)/scr_dump.c
-	$(BUILD) $(srcdir)/scr_dump.c
-
-scroll.o: $(srcdir)/scroll.c
-	$(BUILD) $(srcdir)/scroll.c
-
-slk.o: $(srcdir)/slk.c
-	$(BUILD) $(srcdir)/slk.c
-
-termattr.o: $(srcdir)/termattr.c
-	$(BUILD) $(srcdir)/termattr.c
-
-terminfo.o: $(srcdir)/terminfo.c
-	$(BUILD) $(srcdir)/terminfo.c
-
-touch.o: $(srcdir)/touch.c
-	$(BUILD) $(srcdir)/touch.c
-
-util.o: $(srcdir)/util.c
-	$(BUILD) $(srcdir)/util.c
-
-window.o: $(srcdir)/window.c
-	$(BUILD) $(srcdir)/window.c
-
-debug.o: $(srcdir)/debug.c
-	$(BUILD) $(srcdir)/debug.c
-
-pdcclip.o: $(osdir)/pdcclip.c
-	$(BUILD) $(osdir)/pdcclip.c
-
-pdcdisp.o: $(osdir)/pdcdisp.c
-	$(BUILD) $(osdir)/pdcdisp.c
-
-pdcgetsc.o: $(osdir)/pdcgetsc.c
-	$(BUILD) $(osdir)/pdcgetsc.c
-
-pdckbd.o: $(osdir)/pdckbd.c
-	$(BUILD) $(osdir)/pdckbd.c
-
-pdcscrn.o: $(osdir)/pdcscrn.c
-	$(BUILD) $(osdir)/pdcscrn.c
-
-pdcsetsc.o: $(osdir)/pdcsetsc.c
-	$(BUILD) $(osdir)/pdcsetsc.c
-
-pdcutil.o: $(osdir)/pdcutil.c
-	$(BUILD) $(osdir)/pdcutil.c
-
-pdcx11.o: $(osdir)/pdcx11.c
-	$(BUILD) $(osdir)/pdcx11.c
-
-ScrollBox.o: $(osdir)/ScrollBox.c
-	$(BUILD) $(osdir)/ScrollBox.c
-
-sb.o: $(osdir)/sb.c
-	$(BUILD) $(osdir)/sb.c
-
-x11.o: $(osdir)/x11.c
-	$(BUILD) $(osdir)/x11.c
diff --git a/src/other/PDCurses/x11/Makefile.in b/src/other/PDCurses/x11/Makefile.in
deleted file mode 100644
index d23a214..0000000
--- a/src/other/PDCurses/x11/Makefile.in
+++ /dev/null
@@ -1,572 +0,0 @@
-# Makefile for PDCurses library for X11
-
-SHELL		= @SHELL@
-THIS		= Makefile
-
- at SET_MAKE@
-
-PDCURSES_SRCDIR	= ..
-
-osdir		= .
-srcdir		= $(PDCURSES_SRCDIR)/pdcurses
-demodir		= $(PDCURSES_SRCDIR)/demos
-
-PDCURSES_CONFIG_H	=$(PDCURSES_SRCDIR)/config.h
-PDCURSES_CURSES_H	=$(PDCURSES_SRCDIR)/curses.h
-PDCURSES_CURSPRIV_H	=$(PDCURSES_SRCDIR)/curspriv.h
-PDCURSES_HEADERS	=$(PDCURSES_CONFIG_H) $(PDCURSES_CURSES_H) \
-$(PDCURSES_CURSPRIV_H)
-PDCURSES_X11_H		=$(osdir)/pdcx11.h
-
-SHLPRE		= @SHLPRE@
-SHLPST		= @SHLPST@
-LD_RXLIB1	= @LD_RXLIB1@
-LD_RXLIB2	= @MH_XLIBS@ @MH_EXTRA_LIBS@ -lc
-
-CFLAGS		= @CFLAGS@
-
-CPPFLAGS	= @DEFS@ -DXCURSES @SYS_DEFS@ -I$(PDCURSES_SRCDIR)
-
-BUILD		= @CC@ -c $(CFLAGS) $(CPPFLAGS) @MH_XINC_DIR@
-DYN_BUILD	= @O2SAVE@ $(BUILD) @DYN_COMP@ @CC2O@
-
-LINK		= @PURIFY@ @CC@
-#LDFLAGS	= $(LIB_DEPS) @LDFLAGS@ @LIBS@ @MH_XLIBS@ @MH_EXTRA_LIBS@
-LDFLAGS		= $(LIBCURSES) @LDFLAGS@ @LIBS@ @MH_XLIBS@ @MH_EXTRA_LIBS@
-
-RANLIB		= @RANLIB@
-
-LIBCURSES	= libXCurses.a
-
-LIB_DEPS        = -L$(PDCURSES_SRCDIR)/x11 -lXCurses
-
-PDCLIBS		= $(LIBCURSES) @SHL_TARGETS@
-
-DEMOS		= firework newdemo ptest rain testcurs tuidemo worm xmas
-DEMOOBJS	= firework.o newdemo.o ptest.o rain.o testcurs.o tui.o \
-tuidemo.o worm.o xmas.o
-
-SHLFILE		= XCurses
-
-all:	$(PDCLIBS) $(DEMOS)
-
-install:
-	echo Does nothing at the moment
-
-clean:
-	-rm -rf *.o *.sho trace $(PDCLIBS) $(DEMOS)
-
-demos:	$(DEMOS)
-
-distclean: clean
-	-rm -f Makefile
-
-mostlyclean: clean
-
-realclean: distclean
-
-LIBOBJS = addch.o addchstr.o addstr.o attr.o beep.o bkgd.o border.o \
-clear.o color.o delch.o deleteln.o deprec.o getch.o getstr.o getyx.o \
-inch.o inchstr.o initscr.o inopts.o insch.o insstr.o instr.o kernel.o \
-keyname.o mouse.o move.o outopts.o overlay.o pad.o panel.o printw.o \
-refresh.o scanw.o scr_dump.o scroll.o slk.o termattr.o terminfo.o \
-touch.o util.o window.o debug.o
-
-PDCOBJS = pdcclip.o pdcdisp.o pdcgetsc.o pdckbd.o pdcscrn.o pdcsetsc.o \
-pdcutil.o pdcx11.o x11.o sb.o ScrollBox.o
-
-LIBSHOBJS = $(LIBOBJS:.o=.sho)
-PDCSHOBJS = $(PDCOBJS:.o=.sho)
-
-SHOFILES = $(LIBSHOBJS) $(PDCSHOBJS)
-
-$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
-	ar rv $@ $?
-	-$(RANLIB) $@
-
-$(SHLPRE)$(SHLFILE)$(SHLPST) : $(SHOFILES)
-	$(LD_RXLIB1) -o $@ $(SHOFILES) $(LD_RXLIB2)
-
-$(LIBOBJS) $(PDCOBJS) $(SHOFILES) : $(PDCURSES_HEADERS)
-$(PDCOBJS) $(PDCSHOBJS) : $(PDCURSES_X11_H)
-$(DEMOOBJS) : $(PDCURSES_CURSES_H)
-$(DEMOS) : $(LIBCURSES)
-terminfo.o terminfo.sho: $(TERM_HEADER)
-
-addch.o: $(srcdir)/addch.c
-	$(BUILD) $(srcdir)/addch.c
-
-addchstr.o: $(srcdir)/addchstr.c
-	$(BUILD) $(srcdir)/addchstr.c
-
-addstr.o: $(srcdir)/addstr.c
-	$(BUILD) $(srcdir)/addstr.c
-
-attr.o: $(srcdir)/attr.c
-	$(BUILD) $(srcdir)/attr.c
-
-beep.o: $(srcdir)/beep.c
-	$(BUILD) $(srcdir)/beep.c
-
-bkgd.o: $(srcdir)/bkgd.c
-	$(BUILD) $(srcdir)/bkgd.c
-
-border.o: $(srcdir)/border.c
-	$(BUILD) $(srcdir)/border.c
-
-clear.o: $(srcdir)/clear.c
-	$(BUILD) $(srcdir)/clear.c
-
-color.o: $(srcdir)/color.c
-	$(BUILD) $(srcdir)/color.c
-
-delch.o: $(srcdir)/delch.c
-	$(BUILD) $(srcdir)/delch.c
-
-deleteln.o: $(srcdir)/deleteln.c
-	$(BUILD) $(srcdir)/deleteln.c
-
-deprec.o: $(srcdir)/deprec.c
-	$(BUILD) $(srcdir)/deprec.c
-
-getch.o: $(srcdir)/getch.c
-	$(BUILD) $(srcdir)/getch.c
-
-getstr.o: $(srcdir)/getstr.c
-	$(BUILD) $(srcdir)/getstr.c
-
-getyx.o: $(srcdir)/getyx.c
-	$(BUILD) $(srcdir)/getyx.c
-
-inch.o: $(srcdir)/inch.c
-	$(BUILD) $(srcdir)/inch.c
-
-inchstr.o: $(srcdir)/inchstr.c
-	$(BUILD) $(srcdir)/inchstr.c
-
-initscr.o: $(srcdir)/initscr.c
-	$(BUILD) $(srcdir)/initscr.c
-
-inopts.o: $(srcdir)/inopts.c
-	$(BUILD) $(srcdir)/inopts.c
-
-insch.o: $(srcdir)/insch.c
-	$(BUILD) $(srcdir)/insch.c
-
-insstr.o: $(srcdir)/insstr.c
-	$(BUILD) $(srcdir)/insstr.c
-
-instr.o: $(srcdir)/instr.c
-	$(BUILD) $(srcdir)/instr.c
-
-kernel.o: $(srcdir)/kernel.c
-	$(BUILD) $(srcdir)/kernel.c
-
-keyname.o: $(srcdir)/keyname.c
-	$(BUILD) $(srcdir)/keyname.c
-
-mouse.o: $(srcdir)/mouse.c
-	$(BUILD) $(srcdir)/mouse.c
-
-move.o: $(srcdir)/move.c
-	$(BUILD) $(srcdir)/move.c
-
-outopts.o: $(srcdir)/outopts.c
-	$(BUILD) $(srcdir)/outopts.c
-
-overlay.o: $(srcdir)/overlay.c
-	$(BUILD) $(srcdir)/overlay.c
-
-pad.o: $(srcdir)/pad.c
-	$(BUILD) $(srcdir)/pad.c
-
-panel.o: $(srcdir)/panel.c $(PDCURSES_SRCDIR)/panel.h
-	$(BUILD) $(srcdir)/panel.c
-
-printw.o: $(srcdir)/printw.c
-	$(BUILD) $(srcdir)/printw.c
-
-refresh.o: $(srcdir)/refresh.c
-	$(BUILD) $(srcdir)/refresh.c
-
-scanw.o: $(srcdir)/scanw.c
-	$(BUILD) $(srcdir)/scanw.c
-
-scr_dump.o: $(srcdir)/scr_dump.c
-	$(BUILD) $(srcdir)/scr_dump.c
-
-scroll.o: $(srcdir)/scroll.c
-	$(BUILD) $(srcdir)/scroll.c
-
-slk.o: $(srcdir)/slk.c
-	$(BUILD) $(srcdir)/slk.c
-
-termattr.o: $(srcdir)/termattr.c
-	$(BUILD) $(srcdir)/termattr.c
-
-terminfo.o: $(srcdir)/terminfo.c
-	$(BUILD) $(srcdir)/terminfo.c
-
-touch.o: $(srcdir)/touch.c
-	$(BUILD) $(srcdir)/touch.c
-
-util.o: $(srcdir)/util.c
-	$(BUILD) $(srcdir)/util.c
-
-window.o: $(srcdir)/window.c
-	$(BUILD) $(srcdir)/window.c
-
-debug.o: $(srcdir)/debug.c
-	$(BUILD) $(srcdir)/debug.c
-
-pdcclip.o: $(osdir)/pdcclip.c
-	$(BUILD) $(osdir)/pdcclip.c
-
-pdcdisp.o: $(osdir)/pdcdisp.c
-	$(BUILD) $(osdir)/pdcdisp.c
-
-pdcgetsc.o: $(osdir)/pdcgetsc.c
-	$(BUILD) $(osdir)/pdcgetsc.c
-
-pdckbd.o: $(osdir)/pdckbd.c
-	$(BUILD) $(osdir)/pdckbd.c
-
-pdcscrn.o: $(osdir)/pdcscrn.c
-	$(BUILD) $(osdir)/pdcscrn.c
-
-pdcsetsc.o: $(osdir)/pdcsetsc.c
-	$(BUILD) $(osdir)/pdcsetsc.c
-
-pdcutil.o: $(osdir)/pdcutil.c
-	$(BUILD) $(osdir)/pdcutil.c
-
-pdcx11.o: $(osdir)/pdcx11.c
-	$(BUILD) $(osdir)/pdcx11.c
-
-ScrollBox.o: $(osdir)/ScrollBox.c
-	$(BUILD) $(osdir)/ScrollBox.c
-
-sb.o: $(osdir)/sb.c
-	$(BUILD) $(osdir)/sb.c
-
-x11.o: $(osdir)/x11.c
-	$(BUILD) $(osdir)/x11.c
-
-addch.sho: $(srcdir)/addch.c
-	$(DYN_BUILD) $(srcdir)/addch.c
-	@SAVE2O@
-
-addchstr.sho: $(srcdir)/addchstr.c
-	$(DYN_BUILD) $(srcdir)/addchstr.c
-	@SAVE2O@
-
-addstr.sho: $(srcdir)/addstr.c
-	$(DYN_BUILD) $(srcdir)/addstr.c
-	@SAVE2O@
-
-attr.sho: $(srcdir)/attr.c
-	$(DYN_BUILD) $(srcdir)/attr.c
-	@SAVE2O@
-
-beep.sho: $(srcdir)/beep.c
-	$(DYN_BUILD) $(srcdir)/beep.c
-	@SAVE2O@
-
-bkgd.sho: $(srcdir)/bkgd.c
-	$(DYN_BUILD) $(srcdir)/bkgd.c
-	@SAVE2O@
-
-border.sho: $(srcdir)/border.c
-	$(DYN_BUILD) $(srcdir)/border.c
-	@SAVE2O@
-
-clear.sho: $(srcdir)/clear.c
-	$(DYN_BUILD) $(srcdir)/clear.c
-	@SAVE2O@
-
-color.sho: $(srcdir)/color.c
-	$(DYN_BUILD) $(srcdir)/color.c
-	@SAVE2O@
-
-delch.sho: $(srcdir)/delch.c
-	$(DYN_BUILD) $(srcdir)/delch.c
-	@SAVE2O@
-
-deleteln.sho: $(srcdir)/deleteln.c
-	$(DYN_BUILD) $(srcdir)/deleteln.c
-	@SAVE2O@
-
-deprec.sho: $(srcdir)/deprec.c
-	$(DYN_BUILD) $(srcdir)/deprec.c
-	@SAVE2O@
-
-getch.sho: $(srcdir)/getch.c
-	$(DYN_BUILD) $(srcdir)/getch.c
-	@SAVE2O@
-
-getstr.sho: $(srcdir)/getstr.c
-	$(DYN_BUILD) $(srcdir)/getstr.c
-	@SAVE2O@
-
-getyx.sho: $(srcdir)/getyx.c
-	$(DYN_BUILD) $(srcdir)/getyx.c
-	@SAVE2O@
-
-inch.sho: $(srcdir)/inch.c
-	$(DYN_BUILD) $(srcdir)/inch.c
-	@SAVE2O@
-
-inchstr.sho: $(srcdir)/inchstr.c
-	$(DYN_BUILD) $(srcdir)/inchstr.c
-	@SAVE2O@
-
-initscr.sho: $(srcdir)/initscr.c
-	$(DYN_BUILD) $(srcdir)/initscr.c
-	@SAVE2O@
-
-inopts.sho: $(srcdir)/inopts.c
-	$(DYN_BUILD) $(srcdir)/inopts.c
-	@SAVE2O@
-
-insch.sho: $(srcdir)/insch.c
-	$(DYN_BUILD) $(srcdir)/insch.c
-	@SAVE2O@
-
-insstr.sho: $(srcdir)/insstr.c
-	$(DYN_BUILD) $(srcdir)/insstr.c
-	@SAVE2O@
-
-instr.sho: $(srcdir)/instr.c
-	$(DYN_BUILD) $(srcdir)/instr.c
-	@SAVE2O@
-
-kernel.sho: $(srcdir)/kernel.c
-	$(DYN_BUILD) $(srcdir)/kernel.c
-	@SAVE2O@
-
-keyname.sho: $(srcdir)/keyname.c
-	$(DYN_BUILD) $(srcdir)/keyname.c
-	@SAVE2O@
-
-mouse.sho: $(srcdir)/mouse.c
-	$(DYN_BUILD) $(srcdir)/mouse.c
-	@SAVE2O@
-
-move.sho: $(srcdir)/move.c
-	$(DYN_BUILD) $(srcdir)/move.c
-	@SAVE2O@
-
-outopts.sho: $(srcdir)/outopts.c
-	$(DYN_BUILD) $(srcdir)/outopts.c
-	@SAVE2O@
-
-overlay.sho: $(srcdir)/overlay.c
-	$(DYN_BUILD) $(srcdir)/overlay.c
-	@SAVE2O@
-
-pad.sho: $(srcdir)/pad.c
-	$(DYN_BUILD) $(srcdir)/pad.c
-	@SAVE2O@
-
-panel.sho: $(srcdir)/panel.c $(PDCURSES_SRCDIR)/panel.h
-	$(DYN_BUILD) $(srcdir)/panel.c
-	@SAVE2O@
-
-printw.sho: $(srcdir)/printw.c
-	$(DYN_BUILD) $(srcdir)/printw.c
-	@SAVE2O@
-
-refresh.sho: $(srcdir)/refresh.c
-	$(DYN_BUILD) $(srcdir)/refresh.c
-	@SAVE2O@
-
-scanw.sho: $(srcdir)/scanw.c
-	$(DYN_BUILD) $(srcdir)/scanw.c
-	@SAVE2O@
-
-scr_dump.sho: $(srcdir)/scr_dump.c
-	$(DYN_BUILD) $(srcdir)/scr_dump.c
-	@SAVE2O@
-
-scroll.sho: $(srcdir)/scroll.c
-	$(DYN_BUILD) $(srcdir)/scroll.c
-	@SAVE2O@
-
-slk.sho: $(srcdir)/slk.c
-	$(DYN_BUILD) $(srcdir)/slk.c
-	@SAVE2O@
-
-termattr.sho: $(srcdir)/termattr.c
-	$(DYN_BUILD) $(srcdir)/termattr.c
-	@SAVE2O@
-
-terminfo.sho: $(srcdir)/terminfo.c
-	$(DYN_BUILD) $(srcdir)/terminfo.c
-	@SAVE2O@
-
-touch.sho: $(srcdir)/touch.c
-	$(DYN_BUILD) $(srcdir)/touch.c
-	@SAVE2O@
-
-util.sho: $(srcdir)/util.c
-	$(DYN_BUILD) $(srcdir)/util.c
-	@SAVE2O@
-
-window.sho: $(srcdir)/window.c
-	$(DYN_BUILD) $(srcdir)/window.c
-	@SAVE2O@
-
-debug.sho: $(srcdir)/debug.c
-	$(DYN_BUILD) $(srcdir)/debug.c
-	@SAVE2O@
-
-pdcclip.sho: $(osdir)/pdcclip.c
-	$(DYN_BUILD) $(osdir)/pdcclip.c
-	@SAVE2O@
-
-pdcdisp.sho: $(osdir)/pdcdisp.c
-	$(DYN_BUILD) $(osdir)/pdcdisp.c
-	@SAVE2O@
-
-pdcgetsc.sho: $(osdir)/pdcgetsc.c
-	$(DYN_BUILD) $(osdir)/pdcgetsc.c
-	@SAVE2O@
-
-pdckbd.sho: $(osdir)/pdckbd.c
-	$(DYN_BUILD) $(osdir)/pdckbd.c
-	@SAVE2O@
-
-pdcscrn.sho: $(osdir)/pdcscrn.c
-	$(DYN_BUILD) $(osdir)/pdcscrn.c
-	@SAVE2O@
-
-pdcsetsc.sho: $(osdir)/pdcsetsc.c
-	$(DYN_BUILD) $(osdir)/pdcsetsc.c
-	@SAVE2O@
-
-pdcutil.sho: $(osdir)/pdcutil.c
-	$(DYN_BUILD) $(osdir)/pdcutil.c
-	@SAVE2O@
-
-pdcx11.sho: $(osdir)/pdcx11.c
-	$(DYN_BUILD) $(osdir)/pdcx11.c
-	@SAVE2O@
-
-ScrollBox.sho: $(osdir)/ScrollBox.c
-	$(DYN_BUILD) $(osdir)/ScrollBox.c
-	@SAVE2O@
-
-sb.sho: $(osdir)/sb.c
-	$(DYN_BUILD) $(osdir)/sb.c
-	@SAVE2O@
-
-x11.sho: $(osdir)/x11.c
-	$(DYN_BUILD) $(osdir)/x11.c
-	@SAVE2O@
-
-firework: firework.o
-	$(LINK) firework.o -o $@ $(LDFLAGS)
-
-newdemo: newdemo.o
-	$(LINK) newdemo.o -o $@ $(LDFLAGS)
-
-ptest: ptest.o
-	$(LINK) ptest.o -o $@ $(LDFLAGS)
-
-rain: rain.o
-	$(LINK) rain.o -o $@ $(LDFLAGS)
-
-testcurs: testcurs.o
-	$(LINK) testcurs.o -o $@ $(LDFLAGS)
-
-tuidemo: tuidemo.o tui.o
-	$(LINK) tui.o tuidemo.o -o $@ $(LDFLAGS)
-
-worm: worm.o
-	$(LINK) worm.o -o $@ $(LDFLAGS)
-
-xmas: xmas.o
-	$(LINK) xmas.o -o $@ $(LDFLAGS)
-
-firework.o: $(demodir)/firework.c
-	$(BUILD) $(demodir)/firework.c
-
-newdemo.o: $(demodir)/newdemo.c
-	$(BUILD) $(demodir)/newdemo.c
-
-ptest.o: $(demodir)/ptest.c $(PDCURSES_SRCDIR)/panel.h
-	$(BUILD) $(demodir)/ptest.c
-
-rain.o: $(demodir)/rain.c
-	$(BUILD) $(demodir)/rain.c
-
-testcurs.o: $(demodir)/testcurs.c
-	$(BUILD) $(demodir)/testcurs.c
-
-tui.o: $(demodir)/tui.c $(demodir)/tui.h
-	$(BUILD) $(demodir)/tui.c
-
-tuidemo.o: $(demodir)/tuidemo.c
-	$(BUILD) $(demodir)/tuidemo.c
-
-worm.o: $(demodir)/worm.c
-	$(BUILD) $(demodir)/worm.c
-
-xmas.o: $(demodir)/xmas.c
-	$(BUILD) $(demodir)/xmas.c
-
-# This section provides for compiling and linking the
-# ncurses test programs.
-
-ncurses_testdir	= $(HOME)/ncurses-5.6/test
-
-NCURSES_TESTS	= bs gdc hanoi knight tclock ncurses
-
-ncurses_tests: $(NCURSES_TESTS)
-
-ncurses_clean:
-	-rm -f *.o trace $(NCURSES_TESTS)
-
-NCFLAGS		= -I. -I$(ncurses_testdir)
-
-bs: bs.o $(LIBCURSES)
-	$(LINK) bs.o -o $@ $(LDFLAGS)
-
-gdc: gdc.o $(LIBCURSES)
-	$(LINK) gdc.o -o $@ $(LDFLAGS)
-
-hanoi: hanoi.o $(LIBCURSES)
-	$(LINK) hanoi.o -o $@ $(LDFLAGS)
-
-knight: knight.o $(LIBCURSES)
-	$(LINK) knight.o -o $@ $(LDFLAGS)
-
-tclock: tclock.o $(LIBCURSES)
-	$(LINK) tclock.o -o $@ $(LDFLAGS) -lm
-
-view: view.o $(LIBCURSES)
-	$(LINK) view.o -o $@ $(LDFLAGS)
-
-ncurses: ncurses.o $(LIBCURSES)
-	$(LINK) ncurses.o -o $@ $(LDFLAGS)
-
-bs.o: $(ncurses_testdir)/bs.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(NCFLAGS) $(ncurses_testdir)/bs.c
-
-gdc.o: $(ncurses_testdir)/gdc.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(NCFLAGS) $(ncurses_testdir)/gdc.c
-
-hanoi.o: $(ncurses_testdir)/hanoi.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(NCFLAGS) $(ncurses_testdir)/hanoi.c
-
-knight.o: $(ncurses_testdir)/knight.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(NCFLAGS) $(ncurses_testdir)/knight.c
-
-tclock.o: $(ncurses_testdir)/tclock.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(NCFLAGS) $(ncurses_testdir)/tclock.c
-
-view.o: $(ncurses_testdir)/view.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(NCFLAGS) $(ncurses_testdir)/view.c
-
-ncurses.o: $(ncurses_testdir)/ncurses.c $(PDCURSES_CURSES_H)
-	$(BUILD) $(NCFLAGS) $(ncurses_testdir)/ncurses.c
diff --git a/src/other/PDCurses/x11/README b/src/other/PDCurses/x11/README
deleted file mode 100644
index 37b45d0..0000000
--- a/src/other/PDCurses/x11/README
+++ /dev/null
@@ -1,64 +0,0 @@
-PDCurses for X11
-================
-
-This is a port of PDCurses for X11, aka XCurses.  It is designed to 
-allow existing curses programs to be re-compiled with PDCurses, 
-resulting in native X11 programs.
-
-
-Building
---------
-
-. Run "./configure" in the top-level directory.
-
-  To build the wide-character version of the library, specify
-  "--enable-widec" as a parameter. To use X Input Methods, add
-  "--enable-xim". I recommend these options, but I haven't yet made
-  them the defaults, for the sake of backwards compatibility and due to
-  their new and relatively untested status.
-
-  If your system is lacking in UTF-8 support, you can force the use of
-  UTF-8 instead of the system locale via "--enable-force-utf8". This is
-  generally more useful in Windows.
-
-  If configure can't find your X include files or X libraries, you can
-  specify the paths with the arguments "--x-includes=inc_path" and/or
-  "--x-libraries=lib_path".
-
-  By default, the library and demo programs are built with the optimizer
-  switch -O2. You can turn this off, and turn on debugging (-g), by
-  adding "--with-debug" to the configure command.
-
-. Run "make". This should build libXCurses and all the demo programs.
-
-. Optionally, run "make install". curses.h and panel.h will be renamed
-  when installed (to xcurses.h and xpanel.h), to avoid conflicts with
-  any existing curses installations. Unrenamed copies of curses.h and
-  panel.h are installed in (by default) /usr/local/include/xcurses.
-
-  libXpanel is just a symlink to libXCurses. Both curses and panel
-  functions are in the main library.
-
-
-Distribution Status
--------------------
-
-As of April 13, 2006, the files in this directory are released to the 
-Public Domain, except for ScrollBox*, which are under essentially the 
-MIT X License.
-
-
-To be Done
-----------
-
-- have newterm() create a new X window
-
-- provide a command line parsing function to enable X command line
-  arguments to be parsed and stripped from the arguments passed back
-  to the calling procedure.
-
-
-Acknowledgements
-----------------
-
-X11 port was provided by Mark Hessling <mark at rexx.org>
diff --git a/src/other/PDCurses/x11/ScrollBox.c b/src/other/PDCurses/x11/ScrollBox.c
deleted file mode 100644
index 48ea38f..0000000
--- a/src/other/PDCurses/x11/ScrollBox.c
+++ /dev/null
@@ -1,321 +0,0 @@
-/*
- * Copyright 1989 O'Reilly and Associates, Inc.
-
-     The X Consortium, and any party obtaining a copy of these files from
-     the X Consortium, directly or indirectly, is granted, free of charge, a
-     full and unrestricted irrevocable, world-wide, paid up, royalty-free,
-     nonexclusive right and license to deal in this software and
-     documentation files (the "Software"), including without limitation the
-     rights to use, copy, modify, merge, publish, distribute, sublicense,
-     and/or sell copies of the Software, and to permit persons who receive
-     copies from any such party to do so.  This license includes without
-     limitation a license to do the foregoing actions under any patents of
-     the party supplying this software to the X Consortium.
-
-     $Id: ScrollBox.c,v 1.15 2008/07/14 04:24:52 wmcbrine Exp $
- */
-
-/* ScrollBox.c - scrollBox composite widget */
-
-#include <X11/IntrinsicP.h>
-#include <X11/StringDefs.h>
-#include <X11/Shell.h>
-
-#include "x11/ScrollBoxP.h"
-
-#include <stdio.h>
-
-#define INITIAL_WIDTH 300
-#define INITIAL_HEIGHT 300
-
-/************************************************************************
- *                                                                      *
- * scrollBox Resources                                                  *
- *                                                                      *
- ************************************************************************/
-
-static XtResource resources[] = 
-{
-    { XtNhSpace, XtCHSpace, XtRDimension, sizeof(Dimension),
-        XtOffset(ScrollBoxWidget, scrollBox.h_space), 
-        XtRImmediate, (XtPointer)4 },
-    { XtNvSpace, XtCVSpace, XtRDimension, sizeof(Dimension),
-        XtOffset(ScrollBoxWidget, scrollBox.v_space), 
-        XtRImmediate, (XtPointer)4 },
-    { XtNheightInc, XtCHeightInc, XtRDimension, sizeof(Dimension),
-        XtOffset(ScrollBoxWidget, scrollBox.increment_height), 
-        XtRImmediate, (XtPointer)13 },
-    { XtNwidthInc, XtCWidthInc, XtRDimension, sizeof(Dimension),
-        XtOffset(ScrollBoxWidget, scrollBox.increment_width), 
-        XtRImmediate, (XtPointer)7 },
-};
-
-/************************************************************************
- *                                                                      *
- * Full class record constant                                           *
- *                                                                      *
- ************************************************************************/
-
-static void Initialize(Widget, Widget, ArgList, Cardinal *);
-static void Resize(Widget);
-static Boolean SetValues(Widget, Widget, Widget, ArgList, Cardinal *);
-static void ChangeManaged(Widget);
-static XtGeometryResult QueryGeometry(Widget, XtWidgetGeometry *,
-                                      XtWidgetGeometry *);
-static XtGeometryResult GeometryManager(Widget, XtWidgetGeometry *,
-                                        XtWidgetGeometry *);
-static void RefigureLocations(Widget);
-
-ScrollBoxClassRec scrollBoxClassRec = {
-  {
-    /* core_class fields        */
-        /* superclass           */  (WidgetClass) &compositeClassRec,
-        /* class_name           */  "scrollBox",
-        /* widget_size          */  sizeof(ScrollBoxRec),
-        /* class_initialize     */  NULL,
-        /* class_part_init      */  NULL,
-        /* class_inited         */  FALSE,
-        /* initialize           */  Initialize,
-        /* initialize_hook      */  NULL,
-        /* realize              */  XtInheritRealize,
-        /* actions              */  NULL,
-        /* num_actions          */  0,
-        /* resources            */  resources,
-        /* num_resources        */  XtNumber(resources),
-        /* xrm_class            */  NULLQUARK,
-        /* compress_motion      */  TRUE,
-        /* compress_exposure    */  TRUE,
-        /* compress_enterleave  */  TRUE,
-        /* visible_interest     */  FALSE,
-        /* destroy              */  NULL,
-        /* resize               */  Resize,
-        /* expose               */  NULL,
-        /* set_values           */  SetValues,
-        /* set_values_hook      */  NULL,
-        /* set_values_almost    */  XtInheritSetValuesAlmost,
-        /* get_values_hook      */  NULL,
-        /* accept_focus         */  NULL,
-        /* version              */  XtVersion,
-        /* callback_private     */  NULL,
-        /* tm_table             */  NULL,
-        /* query_geometry       */  QueryGeometry,
-        /* display_accelerator  */  XtInheritDisplayAccelerator,
-        /* extension            */  NULL
-  },{
-    /* composite_class fields   */
-        /* geometry_manager     */  GeometryManager,
-        /* change_managed       */  ChangeManaged,
-        /* insert_child         */  XtInheritInsertChild,
-        /* delete_child         */  XtInheritDeleteChild,
-        /* extension            */  NULL
-  },{
-    /* scrollBox class fields   */
-        /* empty                */  0,
-  }
-};
-
-WidgetClass scrollBoxWidgetClass = (WidgetClass)&scrollBoxClassRec;
-
-
-/************************************************************************
- *                                                                      *
- * Private Routines                                                     *
- *                                                                      *
- ************************************************************************/
-
-/* Do a layout, either actually assigning positions, or just 
-   calculating size. */
-
-static void DoLayout(Widget w, Boolean doit)
-{
-    ScrollBoxWidget sbw = (ScrollBoxWidget)w;
-    Widget wmain, vscroll, hscroll, child;
-    Dimension mw, mh;   /* main window */
-    Dimension vh;   /* vertical scrollbar length (height) */
-    Dimension hw;   /* horizontal scrollbar length (width) */
-    Position vx;
-    Position hy;
-    Cardinal i;
-
-    if (sbw->composite.num_children != 3)
-        XtAppError(XtWidgetToApplicationContext(w),
-            "ScrollBox: must manage exactly three widgets.");
-
-    for (i = 0; i < sbw->composite.num_children; i++) 
-    {
-        child = sbw->composite.children[i];
-
-        if (!XtIsManaged(child)) 
-            XtAppError(XtWidgetToApplicationContext(w),
-                "ScrollBox: all three widgets must be managed.");
-    }
-
-    /* Child one is the main window, two is the vertical scrollbar, 
-       and three is the horizontal scrollbar. */
-
-    wmain = sbw->composite.children[0];
-    vscroll = sbw->composite.children[1];
-    hscroll = sbw->composite.children[2];
-
-    /* Size all three widgets so that space is fully utilized. */
-
-    mw = sbw->core.width - (2 * sbw->scrollBox.h_space) -
-        vscroll->core.width - (2 * vscroll->core.border_width) -
-        (2 * wmain->core.border_width);
-
-    mh = sbw->core.height - (2 * sbw->scrollBox.v_space) -
-        hscroll->core.height - (2 * hscroll->core.border_width) -
-        (2 * wmain->core.border_width);
-
-    /* Force the main window to be sized to the appropriate increment. */
-
-    mw = (mw / sbw->scrollBox.increment_width) *
-        sbw->scrollBox.increment_width;
-
-    mh = ((mh / sbw->scrollBox.increment_height) *
-        sbw->scrollBox.increment_height) +
-        sbw->scrollBox.increment_height;
-
-    vx = wmain->core.x + mw + sbw->scrollBox.h_space + 
-        wmain->core.border_width + vscroll->core.border_width; 
-
-    hy = wmain->core.y + mh + sbw->scrollBox.v_space + 
-        wmain->core.border_width + hscroll->core.border_width; 
-
-    vh = mh;   /* scrollbars are always same length as main window */
-    hw = mw;
-
-    if (doit)
-    {
-        XtResizeWidget(wmain, mw, mh, 1);
-
-        XtResizeWidget(vscroll, vscroll->core.width, vh, 1);
-        XtMoveWidget(vscroll, vx, vscroll->core.y);
-
-        XtResizeWidget(hscroll, hw, hscroll->core.height, 1);
-        XtMoveWidget(hscroll, hscroll->core.x, hy);
-    }
-}
-
-static XtGeometryResult GeometryManager(Widget w, XtWidgetGeometry *request,
-                                        XtWidgetGeometry *reply)
-{
-    XtWidgetGeometry allowed;
-
-    if (request->request_mode & ~(XtCWQueryOnly | CWWidth | CWHeight))
-        return XtGeometryNo;
-
-    if (request->request_mode & CWWidth)
-        allowed.width = request->width;
-    else
-        allowed.width = w->core.width;
-
-    if (request->request_mode & CWHeight)
-        allowed.height = request->height;
-    else
-        allowed.height = w->core.height;
-
-    if (allowed.width == w->core.width && allowed.height == w->core.height)
-        return XtGeometryNo;
-
-    if (!(request->request_mode & XtCWQueryOnly))
-        RefigureLocations(w);
-
-    return XtGeometryYes;
-}
-
-static void RefigureLocations(Widget w)
-{
-    DoLayout(w, False);
-}
-
-/* Calculate preferred size.  We can't just use the current sizes
-   of the children, because that calculation would always end up with 
-   our current size.  Could query each child, and use that size to 
-   recalculate a size for us, then if it ends up being larger than width 
-   and height passed in, accept bounding box. However, we know our 
-   children and they don't have any particular preferred geometry, 
-   except the bigger the better. Therefore, if the parent suggested a 
-   size, we'll take it. */
-
-static XtGeometryResult QueryGeometry(Widget w, XtWidgetGeometry *request,
-                                      XtWidgetGeometry *reply_return)
-{
-    XtGeometryResult result=XtGeometryNo;
-
-    request->request_mode &= CWWidth | CWHeight;
-
-    /* parent isn't going to change w or h, so nothing to re-compute */
-
-    if (request->request_mode == 0)
-        return XtGeometryYes;
-
-    /* if proposed size is large enough, accept it.  Otherwise, suggest
-       our arbitrary initial size. */
-
-    if (request->request_mode & CWHeight) 
-    {
-        if (request->height < INITIAL_HEIGHT) 
-        {
-            result = XtGeometryAlmost;
-            reply_return->height = INITIAL_HEIGHT;
-            reply_return->request_mode &= CWHeight;
-        }
-        else
-            result = XtGeometryYes;
-    }
-
-    if (request->request_mode & CWWidth) 
-    {
-        if (request->width < INITIAL_WIDTH) 
-        {
-            result = XtGeometryAlmost;
-            reply_return->width = INITIAL_WIDTH;
-            reply_return->request_mode &= CWWidth;
-        }
-        else
-            result = XtGeometryYes;
-    }
-
-    return result;
-}
-
-/* Actually layout the scrollBox  */
-
-static void Resize(Widget w)
-{
-    DoLayout(w, True);
-}
-
-static void ChangeManaged(Widget w)
-{
-    DoLayout(w, True);
-}
-
-static void Initialize(Widget request, Widget new,
-                       ArgList args, Cardinal *num_args)
-{
-    ScrollBoxWidget newsbw = (ScrollBoxWidget)new;
-
-    if (newsbw->core.width == 0)
-        newsbw->core.width = INITIAL_WIDTH;
-
-    if (newsbw->core.height == 0)
-        newsbw->core.height = INITIAL_HEIGHT;
-
-}
-
-static Boolean SetValues(Widget current, Widget request, Widget new, 
-                         ArgList args, Cardinal *num_args)
-{
-    ScrollBoxWidget sbwcurrent = (ScrollBoxWidget)current;
-    ScrollBoxWidget sbwnew = (ScrollBoxWidget)new;
-
-    /* need to relayout if h_space or v_space change */
-
-    if ((sbwnew->scrollBox.h_space != sbwcurrent->scrollBox.h_space) ||
-        (sbwnew->scrollBox.v_space != sbwcurrent->scrollBox.v_space))
-        DoLayout(new, True);
-
-    return False;
-}
diff --git a/src/other/PDCurses/x11/ScrollBox.h b/src/other/PDCurses/x11/ScrollBox.h
deleted file mode 100644
index 5825862..0000000
--- a/src/other/PDCurses/x11/ScrollBox.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright 1989 O'Reilly and Associates, Inc.
-
-     The X Consortium, and any party obtaining a copy of these files from
-     the X Consortium, directly or indirectly, is granted, free of charge, a
-     full and unrestricted irrevocable, world-wide, paid up, royalty-free,
-     nonexclusive right and license to deal in this software and
-     documentation files (the "Software"), including without limitation the
-     rights to use, copy, modify, merge, publish, distribute, sublicense,
-     and/or sell copies of the Software, and to permit persons who receive
-     copies from any such party to do so.  This license includes without
-     limitation a license to do the foregoing actions under any patents of
-     the party supplying this software to the X Consortium.
-
-     $Id: ScrollBox.h,v 1.4 2008/07/14 04:24:52 wmcbrine Exp $
- */
-
-#ifndef _XORAscrollBox_h
-#define _XORAscrollBox_h
-
-/************************************************************************
- *                                                                      *
- * scrollBox Widget (subclass of CompositeClass)                        *
- *                                                                      *
- ************************************************************************/
-
-/* Parameters:
-
- Name               Class              RepType      Default Value
- ----               -----              -------      -------------
- background         Background         Pixel        XtDefaultBackground
- border             BorderColor        Pixel        XtDefaultForeground
- borderWidth        BorderWidth        Dimension    1
- destroyCallback    Callback           Pointer      NULL
- hSpace             HSpace             Dimension    4
- height             Height             Dimension    0
- mappedWhenManaged  MappedWhenManaged  Boolean      True
- vSpace             VSpace             Dimension    4
- width              Width              Dimension    0
- x                  Position           Position     0
- y                  Position           Position     0
-
-*/
-
-
-/* Class record constants */
-
-extern WidgetClass scrollBoxWidgetClass;
-
-typedef struct _ScrollBoxClassRec *ScrollBoxWidgetClass;
-typedef struct _ScrollBoxRec      *ScrollBoxWidget;
-
-#endif /* _XORAscrollBox_h */
diff --git a/src/other/PDCurses/x11/ScrollBoxP.h b/src/other/PDCurses/x11/ScrollBoxP.h
deleted file mode 100644
index 069666d..0000000
--- a/src/other/PDCurses/x11/ScrollBoxP.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Copyright 1989 O'Reilly and Associates, Inc.
-
-     The X Consortium, and any party obtaining a copy of these files from
-     the X Consortium, directly or indirectly, is granted, free of charge, a
-     full and unrestricted irrevocable, world-wide, paid up, royalty-free,
-     nonexclusive right and license to deal in this software and
-     documentation files (the "Software"), including without limitation the
-     rights to use, copy, modify, merge, publish, distribute, sublicense,
-     and/or sell copies of the Software, and to permit persons who receive
-     copies from any such party to do so.  This license includes without
-     limitation a license to do the foregoing actions under any patents of
-     the party supplying this software to the X Consortium.
-
-     $Id: ScrollBoxP.h,v 1.5 2008/07/14 04:24:52 wmcbrine Exp $
- */
-
-/* 
- * scrollBoxP.h - Private definitions for scrollBox widget
- * 
- */
-
-#ifndef _XORAscrollBoxP_h
-#define _XORAscrollBoxP_h
-
-/************************************************************************
- *                                                                      *
- * scrollBox Widget Private Data                                        *
- *                                                                      *
- ************************************************************************/
-
-#include "x11/ScrollBox.h"
-
-#include <X11/CompositeP.h>
-
-/* New fields for the scrollBox widget class record */
-typedef struct _ScrollBoxClass {
-    int empty;
-} ScrollBoxClassPart;
-
-/* Full class record declaration */
-typedef struct _ScrollBoxClassRec {
-    CoreClassPart core_class;
-    CompositeClassPart composite_class;
-    ScrollBoxClassPart scrollBox_class;
-} ScrollBoxClassRec;
-
-extern ScrollBoxClassRec scrollBoxClassRec;
-
-/* New fields for the scrollBox widget record */
-typedef struct {
-    Dimension h_space, v_space;
-    Dimension preferred_width, preferred_height;
-    Dimension last_query_width, last_query_height;
-    Dimension increment_width, increment_height;
-    XtGeometryMask last_query_mode;
-} ScrollBoxPart;
-
-
-/************************************************************************
- *                                                                      *
- * Full instance record declaration                                     *
- *                                                                      *
- ************************************************************************/
-
-typedef struct _ScrollBoxRec {
-    CorePart core;
-    CompositePart composite;
-    ScrollBoxPart scrollBox;
-} ScrollBoxRec;
-
-#endif /* _XORAscrollBoxP_h */
diff --git a/src/other/PDCurses/x11/big_icon.xbm b/src/other/PDCurses/x11/big_icon.xbm
deleted file mode 100644
index 04b98a5..0000000
--- a/src/other/PDCurses/x11/big_icon.xbm
+++ /dev/null
@@ -1,46 +0,0 @@
-#define big_icon_width 64
-#define big_icon_height 64
-static unsigned char big_icon_bits[] = {
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff,
-   0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xc1, 0x03, 0x00, 0x00,
-   0x00, 0x00, 0xf0, 0xff, 0xc3, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff,
-   0xc3, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xc0, 0xc7, 0x03, 0x00, 0x00,
-   0x00, 0x00, 0xf0, 0x80, 0xc7, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x80,
-   0xc7, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x80, 0xc7, 0x03, 0x00, 0x00,
-   0x00, 0x00, 0xf0, 0x80, 0xc7, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xc0,
-   0xc7, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xe0, 0xc3, 0x03, 0x00, 0x00,
-   0x00, 0x00, 0xf0, 0xf0, 0xe3, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8,
-   0xf1, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xfc, 0xf8, 0x03, 0x00, 0x00,
-   0x00, 0x00, 0xf0, 0x7e, 0xfc, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f,
-   0xfe, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x1f, 0xff, 0x03, 0x00, 0x00,
-   0x00, 0x00, 0xf0, 0x8f, 0xdf, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xc7,
-   0xcf, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xe3, 0xc7, 0x03, 0x00, 0x00,
-   0x00, 0x00, 0xf0, 0xf1, 0xc3, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0,
-   0xc1, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xc0, 0x03, 0x00, 0x00,
-   0x00, 0x00, 0xf0, 0x78, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x78,
-   0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x78, 0xc0, 0x03, 0x00, 0x00,
-   0x00, 0x00, 0xf0, 0x78, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8,
-   0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xff, 0x03, 0x00, 0x00,
-   0x00, 0x00, 0xf0, 0xf0, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xe0,
-   0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xc0, 0xff, 0x03, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x23, 0x50, 0x1e,
-   0x7c, 0xf0, 0xe0, 0x03, 0x60, 0x26, 0x50, 0x33, 0xc6, 0x98, 0x31, 0x06,
-   0x30, 0x2c, 0xd0, 0x61, 0x83, 0x0d, 0x1b, 0x0c, 0x10, 0x28, 0xd0, 0x40,
-   0x01, 0x05, 0x0a, 0x08, 0x10, 0x20, 0x50, 0x00, 0x01, 0x05, 0x0a, 0x08,
-   0x10, 0x20, 0x50, 0x00, 0x03, 0x04, 0x1a, 0x00, 0x10, 0x20, 0x50, 0x00,
-   0x06, 0x04, 0x32, 0x00, 0x10, 0x20, 0x50, 0x00, 0x7c, 0xfc, 0xe3, 0x03,
-   0x10, 0x20, 0x50, 0x00, 0xc0, 0x04, 0x00, 0x06, 0x10, 0x20, 0x50, 0x00,
-   0x80, 0x05, 0x00, 0x0c, 0x10, 0x20, 0x50, 0x00, 0x01, 0x05, 0x0a, 0x08,
-   0x10, 0x28, 0x50, 0x00, 0x01, 0x05, 0x0a, 0x08, 0x30, 0x6c, 0x58, 0x00,
-   0x83, 0x0d, 0x1b, 0x0c, 0x60, 0xc6, 0x4c, 0x00, 0xc6, 0x98, 0x31, 0x06,
-   0xc0, 0x83, 0x47, 0x00, 0x7c, 0xf0, 0xe0, 0x03, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
diff --git a/src/other/PDCurses/x11/compose.h b/src/other/PDCurses/x11/compose.h
deleted file mode 100644
index 12b85fa..0000000
--- a/src/other/PDCurses/x11/compose.h
+++ /dev/null
@@ -1,203 +0,0 @@
-/* Public Domain Curses */
-
-/* $Id: compose.h,v 1.3 2008/07/14 04:24:52 wmcbrine Exp $ */
-
-/* Tables and variables for the built-in compose key system. This file 
-   is not included when PDCurses is built with XIM support. */
-
-#define MAX_COMPOSE_CHARS 14
-#define MAX_COMPOSE_PRE 60
-
-static const char *compose_chars =
-    "`'~^,/\"AaPpSs!?0123CcRr-_<>Xx.=Yy |EeIiOoUu+NnLlgDd:*TtMmVv";
-
-/*
-   ` :  À  È  Ì  Ò  Ù  à  è  ì  ò  ù
-   ' :  ´  Á  É  Í  Ó  Ú  Ý  á  é  í  ó  ú  ý  ´
-   ~ :  Ã  Ñ  Õ  ã  ñ  õ
-   ^ :  Â  Ê  Î  Ô  Û  â  ê  î  ô  û  °  ¹  ²  ³
-   , :  ¸  Ç  ç  ¸
-   / :  Ø  ø  µ  µ
-   " :  ¨  Ä  Ë  Ï  Ö  Ü  ä  ë  ï  ö  ü  ÿ  ¨
-   A :  Æ  À  Á  Ã  Â  Å  Å  Ã  Â  ª
-   a :  æ  à  á  ã  â  å  å  ã  â  ª
-   P :  Þ  ¶  ¶
-   p :  þ  ¶  ¶
-   S :  §  §  §  º  ª
-   s :  ß  §  ª  ¹  ²  ³  º  §
-   ! :  ¡  ¡
-   ? :  ¿  ¿
-   0 :  °  °
-   1 :  ¹  ½  ¼  ¹
-   2 :  ²  ²
-   3 :  ³  ¾  ³
-   C :  ©  Ç  ¢  ¢
-   c :  ¢  ©  ç  ¢  ¢
-   R :  ®
-   r :  ®
-   - :  ­  ±  ¬  ­  ¯  ÷
-   _ :  ¯  ¯
-   < :  «
-   > :  «
-   X :  ¤  ×
-   x :  ×  ¤  ×
-   . :  ·  ·  ·
-   = :  ¥  ¥
-   Y :  ¥  Ý  ¥
-   y :  ¥  ý  ÿ  ¥  ¥
-     :
-   | :  ¦  ¢  ¦  Þ  þ  ¦  £
-   E :  È  É  Ê  Ë  Ê
-   e :  è  é  ê  ë  ê
-   I :  Ì  Í  Î  Ï  Î
-   i :  ì  í  î  ï  î
-   O :  Ò  Ó  Ô  Õ  Ö  Ø  ©  ®  Õ  Ô  Å  å
-   o :  °  Å  å  ¤  õ  ò  ó  ô  õ  ö  ø  ô  º
-   U :  Ù  Ú  Û  Ü  Û
-   u :  ù  ú  û  ü  µ  û
-   + :  ±
-   N :  Ñ  Ñ  ¬
-   n :  ñ  ñ  ¬
-   L :  £  £  £
-   l :  £  £  £
-   g :  ¤
-   D :  °  Ð
-   d :  °  ð
-   : :  ÷
-   * :  µ  µ  å  Å
-   T :  Þ
-   t :  þ
-   M :  ×
-   m :  ×
-   V :  ¦
-   v :  ¦
-*/
-
-static const char compose_lookups[MAX_COMPOSE_PRE][MAX_COMPOSE_CHARS] =
-{
-/* ` */ {'A','E','I','O','U','a','e','i','o','u',  0,  0,  0,  0},
-/* ' */ {' ','A','E','I','O','U','Y','a','e','i','o','u','y', 39},
-/* ~ */ {'A','N','O','a','n','o',  0,  0,  0,  0,  0,  0,  0,  0},
-/* ^ */ {'A','E','I','O','U','a','e','i','o','u','0','1','2','3'},
-/* , */ {' ','C','c',',',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* / */ {'O','o','u','U',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* " */ {' ','A','E','I','O','U','a','e','i','o','u','y','\"', 0},
-/* A */ {'E','`', 39,'~','^','"','o','*','-','>','_',  0,  0,  0},
-/* a */ {'e','`', 39,'~','^','"','o','*','-','>','_',  0,  0,  0},
-/* P */ {' ','G','!',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* p */ {' ','g','!',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* S */ {'S','!','O','0','A',  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* s */ {'s','!','a','1','2','3','0','o',  0,  0,  0,  0,  0,  0},
-/* ! */ {' ','!',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* ? */ {' ','?',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* 0 */ {'^','*',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* 1 */ {' ','2','4','^',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* 2 */ {' ','^',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* 3 */ {' ','4','^',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* C */ {'O',',','$','|',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* c */ {'|','o',',','/','$',  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* R */ {'O',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* r */ {'o',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* - */ {' ','+',',','-','^',':',  0,  0,  0,  0,  0,  0,  0,  0},
-/* _ */ {'_','^',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* < */ {'<',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* > */ {'>',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* X */ {'O','X',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* x */ {' ','o','x',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* . */ {' ','^','.',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* = */ {'Y','y',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* Y */ {'=', 39,'-',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* y */ {'=', 39,'"','$','-',  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/*   */ {' ',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* | */ {' ','c','|','P','p','^','-',  0,  0,  0,  0,  0,  0,  0},
-/* E */ {'`', 39,'^','"','>',  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* e */ {'`', 39,'^','"','>',  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* I */ {'`', 39,'^','"','>',  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* i */ {'`', 39,'^','"','>',  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* O */ {'`', 39,'^','~','"','/','C','R','-','>','A','a',  0,  0},
-/* o */ {' ','A','a','x','-','`', 39,'^','~','"','/','>','_',  0},
-/* U */ {'`', 39,'^','"','>',  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* u */ {'`', 39,'^','"',' ','>',  0,  0,  0,  0,  0,  0,  0,  0},
-/* + */ {'-',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* N */ {'~','-','O',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* n */ {'~','-','o',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* L */ {'$','=','-',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* l */ {'$','=','-',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* g */ {'$',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* D */ {'E','-',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* d */ {'e','-',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* : */ {'-',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* * */ {'m','M','a','A',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* T */ {'H',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* t */ {'h',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* M */ {'U',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* m */ {'u',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* V */ {'B',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* v */ {'b',  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-};
-
-static const unsigned char compose_keys[MAX_COMPOSE_PRE][MAX_COMPOSE_CHARS] =
-{
-/* ` */ {192,200,204,210,217,224,232,236,242,249,  0,  0,  0,  0},
-/* ' */ {180,193,201,205,211,218,221,225,233,237,243,250,253,180},
-/* ~ */ {195,209,213,227,241,245,  0,  0,  0,  0,  0,  0,  0,  0},
-/* ^ */ {194,202,206,212,219,226,234,238,244,251,176,185,178,179},
-/* , */ {184,199,231,184,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* / */ {216,248,181,181,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* " */ {168,196,203,207,214,220,228,235,239,246,252,255,168,  0},
-/* A */ {198,192,193,195,194,196,197,197,195,194,170,  0,  0,  0},
-/* a */ {230,224,225,227,226,228,229,229,227,226,170,  0,  0,  0},
-/* P */ {222,182,182,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* p */ {254,182,182,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* S */ {167,167,167,186,170,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* s */ {223,167,170,185,178,179,186,167,  0,  0,  0,  0,  0,  0},
-/* ! */ {161,161,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* ? */ {191,191,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* 0 */ {176,176,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* 1 */ {185,189,188,185,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* 2 */ {178,178,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* 3 */ {179,190,179,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* C */ {169,199,162,162,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* c */ {162,169,231,162,162,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* R */ {174,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* r */ {174,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* - */ {173,177,172,173,175,247,  0,  0,  0,  0,  0,  0,  0,  0},
-/* _ */ {175,175,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* < */ {171,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* > */ {187,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* X */ {164,215,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* x */ {215,164,215,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* . */ {183,183,183,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* = */ {165,165,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* Y */ {165,221,165,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* y */ {165,253,255,165,165,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/*   */ {160,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* | */ {166,162,166,222,254,166,163,  0,  0,  0,  0,  0,  0,  0},
-/* E */ {200,201,202,203,202,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* e */ {232,233,234,235,234,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* I */ {204,205,206,207,206,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* i */ {236,237,238,239,238,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* O */ {210,211,212,213,214,216,169,174,213,212,197,229,  0,  0},
-/* o */ {176,197,229,164,245,242,243,244,245,246,248,244,186,  0},
-/* U */ {217,218,219,220,219,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* u */ {249,250,251,252,181,251,  0,  0,  0,  0,  0,  0,  0,  0},
-/* + */ {177,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* N */ {209,209,172,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* n */ {241,241,172,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* L */ {163,163,163,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* l */ {163,163,163,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* g */ {164,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* D */ {176,208,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* d */ {176,240,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* : */ {247,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* * */ {181,181,229,197,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* T */ {222,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* t */ {254,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* M */ {215,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* u */ {215,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* V */ {166,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-/* v */ {166,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
-};
-
-static KeySym compose_key = 0;
-static int compose_mask = 0;
diff --git a/src/other/PDCurses/x11/little_icon.xbm b/src/other/PDCurses/x11/little_icon.xbm
deleted file mode 100644
index d3e777e..0000000
--- a/src/other/PDCurses/x11/little_icon.xbm
+++ /dev/null
@@ -1,14 +0,0 @@
-#define little_icon_width 32
-#define little_icon_height 32
-static unsigned char little_icon_bits[] = {
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0xfc, 0x30, 0x00, 0x00, 0xfc, 0x31, 0x00, 0x00, 0x8c, 0x33, 0x00,
-   0x00, 0x0c, 0x33, 0x00, 0x00, 0x0c, 0x33, 0x00, 0x00, 0x8c, 0x33, 0x00,
-   0x00, 0xcc, 0x39, 0x00, 0x00, 0xec, 0x3c, 0x00, 0x00, 0x7c, 0x3e, 0x00,
-   0x00, 0x3c, 0x37, 0x00, 0x00, 0x9c, 0x33, 0x00, 0x00, 0xcc, 0x31, 0x00,
-   0x00, 0xcc, 0x30, 0x00, 0x00, 0xcc, 0x30, 0x00, 0x00, 0xcc, 0x31, 0x00,
-   0x00, 0x8c, 0x3f, 0x00, 0x00, 0x0c, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x4c, 0x2a, 0xc6, 0x18, 0x52, 0x5a, 0x29, 0x25,
-   0x42, 0x0a, 0x21, 0x05, 0x42, 0x0a, 0xe6, 0x18, 0x42, 0x0a, 0x28, 0x20,
-   0x52, 0x0a, 0x29, 0x25, 0x8c, 0x09, 0xc6, 0x18, 0x00, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
diff --git a/src/other/PDCurses/x11/ncurses_cfg.h b/src/other/PDCurses/x11/ncurses_cfg.h
deleted file mode 100644
index 4257118..0000000
--- a/src/other/PDCurses/x11/ncurses_cfg.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* $Id: ncurses_cfg.h,v 1.8 2006/12/28 01:02:03 wmcbrine Exp $
- *
- * This file is only used with the ncurses test programs.
- *
- * Have ncurses-5.6 unpacked in your $(HOME) (you don't need to build 
- * it), or edit ncurses_testdir appropriately in the Makefile. Configure 
- * and build PDCurses for X11. (Sorry, other ports won't work yet.) 
- * Change to this directory, and:
- *
- * "make ncurses_tests" to start.
- * "make ncurses_clean" when you're done.
- *
- * Builds: bs gdc hanoi knight tclock ncurses
- */
-
-#define NCURSES_MOUSE_VERSION 2
-
-#include "../config.h"
-#include <curses.h>
-
-#define ExitProgram exit
-
-#define HAVE_CURSES_VERSION 1
-#define HAVE_GETBEGX 1
-#define HAVE_GETCURX 1
-#define HAVE_GETMAXX 1
-#define HAVE_GETNSTR 1
-#define HAVE_GETTIMEOFDAY 1
-#define HAVE_GETWIN 1
-#define HAVE_LIBPANEL 1
-#define HAVE_LOCALE_H 1
-#define HAVE_NAPMS 1
-#define HAVE_PANEL_H 1
-#define HAVE_PUTWIN 1
-#define HAVE_SLK_COLOR 1
-#define HAVE_SLK_INIT 1
-#define HAVE_WRESIZE 1
-
-#ifdef PDC_WIDE
-# define USE_WIDEC_SUPPORT 1
-#endif
-
-/* Fool ncurses.c so it gives us all the tests, and doesn't redefine 
-   ACS_ chars
-*/
-
-#define NCURSES_VERSION PDCURSES
diff --git a/src/other/PDCurses/x11/pdcclip.c b/src/other/PDCurses/x11/pdcclip.c
deleted file mode 100644
index 1a3ce92..0000000
--- a/src/other/PDCurses/x11/pdcclip.c
+++ /dev/null
@@ -1,170 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcx11.h"
-
-RCSID("$Id: pdcclip.c,v 1.35 2008/07/14 04:24:52 wmcbrine Exp $")
-
-#include <stdlib.h>
-
-/*man-start**************************************************************
-
-  Name:                                                         clipboard
-
-  Synopsis:
-        int PDC_getclipboard(char **contents, long *length);
-        int PDC_setclipboard(const char *contents, long length);
-        int PDC_freeclipboard(char *contents);
-        int PDC_clearclipboard(void);
-
-  Description:
-        PDC_getclipboard() gets the textual contents of the system's 
-        clipboard. This function returns the contents of the clipboard 
-        in the contents argument. It is the responsibilitiy of the 
-        caller to free the memory returned, via PDC_freeclipboard().
-        The length of the clipboard contents is returned in the length 
-        argument.
-
-        PDC_setclipboard copies the supplied text into the system's 
-        clipboard, emptying the clipboard prior to the copy.
-
-        PDC_clearclipboard() clears the internal clipboard.
-
-  Return Values:
-        indicator of success/failure of call.
-        PDC_CLIP_SUCCESS        the call was successful
-        PDC_CLIP_MEMORY_ERROR   unable to allocate sufficient memory for 
-                                the clipboard contents
-        PDC_CLIP_EMPTY          the clipboard contains no text
-        PDC_CLIP_ACCESS_ERROR   no clipboard support
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_getclipboard                        -       -       -
-        PDC_setclipboard                        -       -       -
-        PDC_freeclipboard                       -       -       -
-        PDC_clearclipboard                      -       -       -
-
-**man-end****************************************************************/
-
-int PDC_getclipboard(char **contents, long *length)
-{
-#ifdef PDC_WIDE
-    wchar_t *wcontents;
-#endif
-    int result = 0;
-    int len;
-
-    PDC_LOG(("PDC_getclipboard() - called\n"));
-
-    XCursesInstructAndWait(CURSES_GET_SELECTION);
-
-    if (XC_read_socket(xc_display_sock, &result, sizeof(int)) < 0)
-        XCursesExitCursesProcess(5, "exiting from PDC_getclipboard");
-
-    if (result == PDC_CLIP_SUCCESS)
-    {
-        if (XC_read_socket(xc_display_sock, &len, sizeof(int)) < 0)
-            XCursesExitCursesProcess(5, "exiting from PDC_getclipboard");
-#ifdef PDC_WIDE
-        wcontents = malloc((len + 1) * sizeof(wchar_t));
-        *contents = malloc(len * 3 + 1);
-
-        if (!wcontents || !*contents)
-#else
-            *contents = malloc(len + 1);
-
-        if (!*contents)
-#endif
-        XCursesExitCursesProcess(6, "exiting from PDC_getclipboard - "
-                                    "synchronization error");
-
-        if (len)
-        {
-            if (XC_read_socket(xc_display_sock,
-#ifdef PDC_WIDE
-                wcontents, len * sizeof(wchar_t)) < 0)
-#else
-                *contents, len) < 0)
-#endif
-                XCursesExitCursesProcess(5, "exiting from PDC_getclipboard");
-        }
-
-#ifdef PDC_WIDE
-        wcontents[len] = 0;
-        len = PDC_wcstombs(*contents, wcontents, len * 3);
-        free(wcontents);
-#endif
-        (*contents)[len] = '\0';
-        *length = len;
-    }
-
-    return result;
-}
-
-int PDC_setclipboard(const char *contents, long length)
-{
-#ifdef PDC_WIDE
-    wchar_t *wcontents;
-#endif
-    int rc;
-
-    PDC_LOG(("PDC_setclipboard() - called\n"));
-
-#ifdef PDC_WIDE
-    wcontents = malloc((length + 1) * sizeof(wchar_t));
-    if (!wcontents)
-        return PDC_CLIP_MEMORY_ERROR;
-
-    length = PDC_mbstowcs(wcontents, contents, length);
-#endif
-    XCursesInstruct(CURSES_SET_SELECTION);
-
-    /* Write, then wait for X to do its stuff; expect return code. */
-
-    if (XC_write_socket(xc_display_sock, &length, sizeof(long)) >= 0)
-    {
-        if (XC_write_socket(xc_display_sock,
-#ifdef PDC_WIDE
-            wcontents, length * sizeof(wchar_t)) >= 0)
-        {
-            free(wcontents);
-#else
-            contents, length) >= 0)
-        {
-#endif
-            if (XC_read_socket(xc_display_sock, &rc, sizeof(int)) >= 0)
-                return rc;
-        }
-    }
-
-    XCursesExitCursesProcess(5, "exiting from PDC_setclipboard");
-
-    return PDC_CLIP_ACCESS_ERROR;   /* not reached */
-}
-
-int PDC_freeclipboard(char *contents)
-{
-    PDC_LOG(("PDC_freeclipboard() - called\n"));
-
-    free(contents);
-    return PDC_CLIP_SUCCESS;
-}
-
-int PDC_clearclipboard(void)
-{
-    int rc;
-    long len = 0;
-
-    PDC_LOG(("PDC_clearclipboard() - called\n"));
-
-    XCursesInstruct(CURSES_CLEAR_SELECTION);
-
-    /* Write, then wait for X to do its stuff; expect return code. */
-
-    if (XC_write_socket(xc_display_sock, &len, sizeof(long)) >= 0)
-        if (XC_read_socket(xc_display_sock, &rc, sizeof(int)) >= 0)
-            return rc;
-
-    XCursesExitCursesProcess(5, "exiting from PDC_clearclipboard");
-
-    return PDC_CLIP_ACCESS_ERROR;   /* not reached */
-}
diff --git a/src/other/PDCurses/x11/pdcdisp.c b/src/other/PDCurses/x11/pdcdisp.c
deleted file mode 100644
index 3700edb..0000000
--- a/src/other/PDCurses/x11/pdcdisp.c
+++ /dev/null
@@ -1,132 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcx11.h"
-
-RCSID("$Id: pdcdisp.c,v 1.46 2008/07/14 04:24:52 wmcbrine Exp $")
-
-#include <string.h>
-
-#ifdef CHTYPE_LONG
-
-# define A(x) ((chtype)x | A_ALTCHARSET)
-
-chtype acs_map[128] =
-{
-    A(0), A(1), A(2), A(3), A(4), A(5), A(6), A(7), A(8), A(9), A(10),
-    A(11), A(12), A(13), A(14), A(15), A(16), A(17), A(18), A(19),
-    A(20), A(21), A(22), A(23), A(24), A(25), A(26), A(27), A(28),
-    A(29), A(30), A(31), ' ', '!', '"', '#', '$', '%', '&', '\'', '(',
-    ')', '*',
-
-# ifdef PDC_WIDE
-    0x2192, 0x2190, 0x2191, 0x2193,
-# else
-    '>', '<', '^', 'v',
-# endif
-
-    '/',
-
-# ifdef PDC_WIDE
-    0x2588,
-# else
-    A(0),
-# endif
-
-    '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=',
-    '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
-    'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W',
-    'X', 'Y', 'Z', '[', '\\', ']', '^', '_',
-
-# ifdef PDC_WIDE
-    0x2666, 0x2592,
-# else
-    A(1), A(2),
-# endif
-
-    'b', 'c', 'd', 'e',
-
-# ifdef PDC_WIDE
-    0x00b0, 0x00b1, 0x2591, 0x00a4, 0x2518, 0x2510, 0x250c, 0x2514,
-    0x253c, 0x23ba, 0x23bb, 0x2500, 0x23bc, 0x23bd, 0x251c, 0x2524,
-    0x2534, 0x252c, 0x2502, 0x2264, 0x2265, 0x03c0, 0x2260, 0x00a3,
-    0x00b7,
-# else
-    A(7), A(8), '#', 0xa4, A(11), A(12), A(13), A(14), A(15), A(16), 
-    A(17), A(18), A(19), A(20), A(21), A(22), A(23), A(24), A(25), 
-    A(26), A(27), A(28), A(29), A(30), 0xb7,
-# endif
-
-    A(127)
-};
-
-# undef A
-
-#endif
-
-int PDC_display_cursor(int oldrow, int oldcol, int newrow, int newcol,
-                       int visibility)
-{
-    char buf[30];
-    int idx, pos;
-
-    PDC_LOG(("%s:PDC_display_cursor() - called: NEW row %d col %d, vis %d\n",
-             XCLOGMSG, newrow, newcol, visibility));
-
-    if (visibility == -1)
-    {
-        /* Only send the CURSES_DISPLAY_CURSOR message, no data */
-
-        idx = CURSES_DISPLAY_CURSOR;
-        memcpy(buf, &idx, sizeof(int));
-        idx = sizeof(int);
-    }
-    else
-    {
-        idx = CURSES_CURSOR;
-        memcpy(buf, &idx, sizeof(int));
-
-        idx = sizeof(int);
-        pos = oldrow + (oldcol << 8);
-        memcpy(buf + idx, &pos, sizeof(int));
-
-        idx += sizeof(int);
-        pos = newrow + (newcol << 8);
-        memcpy(buf + idx, &pos, sizeof(int));
-
-        idx += sizeof(int);
-    }
-
-    if (XC_write_socket(xc_display_sock, buf, idx) < 0)
-        XCursesExitCursesProcess(1, "exiting from PDC_display_cursor");
-
-    return OK;
-}
-
-/* position hardware cursor at (y, x) */
-
-void PDC_gotoyx(int row, int col)
-{
-    PDC_LOG(("PDC_gotoyx() - called: row %d col %d\n", row, col));
-
-    PDC_display_cursor(SP->cursrow, SP->curscol, row, col, SP->visibility);
-}
-
-/* update the given physical line to look like the corresponding line in
-   curscr */
-
-void PDC_transform_line(int lineno, int x, int len, const chtype *srcp)
-{
-    PDC_LOG(("PDC_transform_line() - called: line %d\n", lineno));
-
-    XC_get_line_lock(lineno);
-
-    memcpy(Xcurscr + XCURSCR_Y_OFF(lineno) + (x * sizeof(chtype)), srcp,
-           len * sizeof(chtype));
-
-    *(Xcurscr + XCURSCR_START_OFF + lineno) = x;
-    *(Xcurscr + XCURSCR_LENGTH_OFF + lineno) = len;
-
-    XC_release_line_lock(lineno);
-
-    XCursesInstructAndWait(CURSES_REFRESH);
-}
diff --git a/src/other/PDCurses/x11/pdcgetsc.c b/src/other/PDCurses/x11/pdcgetsc.c
deleted file mode 100644
index 8f7c0ad..0000000
--- a/src/other/PDCurses/x11/pdcgetsc.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcx11.h"
-
-RCSID("$Id: pdcgetsc.c,v 1.26 2008/07/14 04:24:52 wmcbrine Exp $")
-
-/* return width of screen/viewport */
-
-int PDC_get_columns(void)
-{
-    PDC_LOG(("PDC_get_columns() - called\n"));
-
-    return XCursesCOLS;
-}
-
-/* get the cursor size/shape */
-
-int PDC_get_cursor_mode(void)
-{
-    return 0;
-}
-
-/* return number of screen rows */
-
-int PDC_get_rows(void)
-{
-    PDC_LOG(("PDC_get_rows() - called\n"));
-
-    return XCursesLINES;
-}
diff --git a/src/other/PDCurses/x11/pdckbd.c b/src/other/PDCurses/x11/pdckbd.c
deleted file mode 100644
index 30c37a8..0000000
--- a/src/other/PDCurses/x11/pdckbd.c
+++ /dev/null
@@ -1,102 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcx11.h"
-
-RCSID("$Id: pdckbd.c,v 1.62 2008/07/14 04:24:52 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                         pdckbd
-
-  Synopsis:
-        unsigned long PDC_get_input_fd(void);
-
-  Description:
-        PDC_get_input_fd() returns the file descriptor that PDCurses 
-        reads its input from. It can be used for select().
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_get_input_fd                        -       -       -
-
-**man-end****************************************************************/
-
-/* check if a key or mouse event is waiting */
-
-bool PDC_check_key(void)
-{
-    struct timeval socket_timeout = {0};
-    int s;
-
-    /* Is something ready to be read on the socket ? Must be a key. */
-
-    FD_ZERO(&xc_readfds);
-    FD_SET(xc_key_sock, &xc_readfds);
-
-    if ((s = select(FD_SETSIZE, (FD_SET_CAST)&xc_readfds, NULL, 
-        NULL, &socket_timeout)) < 0)
-        XCursesExitCursesProcess(3, "child - exiting from "
-                                    "PDC_check_key select failed");
-
-    PDC_LOG(("%s:PDC_check_key() - returning %s\n", XCLOGMSG,
-             s ? "TRUE" : "FALSE"));
-
-    return !!s;
-}
-
-/* return the next available key or mouse event */
-
-int PDC_get_key(void)
-{
-    unsigned long newkey = 0;
-    int key = 0;
-
-    if (XC_read_socket(xc_key_sock, &newkey, sizeof(unsigned long)) < 0)
-        XCursesExitCursesProcess(2, "exiting from PDC_get_key");
-
-    pdc_key_modifiers = (newkey >> 24) & 0xFF;
-    key = (int)(newkey & 0x00FFFFFF);
-
-    if (key == KEY_MOUSE && SP->key_code)
-    {
-        if (XC_read_socket(xc_key_sock, &pdc_mouse_status,
-            sizeof(MOUSE_STATUS)) < 0)
-            XCursesExitCursesProcess(2, "exiting from PDC_get_key");
-    }
-
-    PDC_LOG(("%s:PDC_get_key() - key %d returned\n", XCLOGMSG, key));
-
-    return key;
-}
-
-unsigned long PDC_get_input_fd(void)
-{
-    PDC_LOG(("PDC_get_input_fd() - called\n"));
-
-    return xc_key_sock;
-}
-
-void PDC_set_keyboard_binary(bool on)
-{
-    PDC_LOG(("PDC_set_keyboard_binary() - called\n"));
-}
-
-/* discard any pending keyboard or mouse input -- this is the core
-   routine for flushinp() */
-
-void PDC_flushinp(void)
-{
-    PDC_LOG(("PDC_flushinp() - called\n"));
-
-    while (PDC_check_key())
-        PDC_get_key();
-}
-
-int PDC_mouse_set(void)
-{
-    return OK;
-}
-
-int PDC_modifiers_set(void)
-{
-    return OK;
-}
diff --git a/src/other/PDCurses/x11/pdcscrn.c b/src/other/PDCurses/x11/pdcscrn.c
deleted file mode 100644
index 07b1a04..0000000
--- a/src/other/PDCurses/x11/pdcscrn.c
+++ /dev/null
@@ -1,150 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcx11.h"
-
-RCSID("$Id: pdcscrn.c,v 1.55 2008/07/14 04:24:52 wmcbrine Exp $")
-
-/* COLOR_PAIR to attribute encoding table. */
-
-short *xc_atrtab = (short *)NULL;
-
-/* close the physical screen */
-
-void PDC_scr_close(void)
-{
-    PDC_LOG(("PDC_scr_close() - called\n"));
-}
-
-void PDC_scr_free(void)
-{
-    XCursesExit();
-
-    xc_atrtab = (short *)NULL;
-}
-
-/* open the physical screen -- allocate SP, miscellaneous intialization */
-
-int PDC_scr_open(int argc, char **argv)
-{
-    extern bool sb_started;
-
-    PDC_LOG(("PDC_scr_open() - called\n"));
-
-    if ((XCursesInitscr(argc, argv) == ERR) || !SP)
-        return ERR;
-
-    SP->cursrow = SP->curscol = 0;
-    SP->orig_attr = FALSE;
-    SP->sb_on = sb_started;
-    SP->sb_total_y = 0;
-    SP->sb_viewport_y = 0;
-    SP->sb_cur_y = 0;
-    SP->sb_total_x = 0;
-    SP->sb_viewport_x = 0;
-    SP->sb_cur_x = 0;
-
-    return OK;
-}
-
-/* the core of resize_term() */
-
-int PDC_resize_screen(int nlines, int ncols)
-{
-    PDC_LOG(("PDC_resize_screen() - called. Lines: %d Cols: %d\n",
-             nlines, ncols));
-
-    if (nlines || ncols || !SP->resized)
-        return ERR;
-
-    shmdt((char *)Xcurscr);
-    XCursesInstructAndWait(CURSES_RESIZE);
-
-    if ((shmid_Xcurscr = shmget(shmkey_Xcurscr,
-        SP->XcurscrSize + XCURSESSHMMIN, 0700)) < 0)
-    {
-        perror("Cannot allocate shared memory for curscr");
-        kill(xc_otherpid, SIGKILL);
-        return ERR;
-    }
-
-    XCursesLINES = SP->lines;
-    XCursesCOLS = SP->cols;
-
-    PDC_LOG(("%s:shmid_Xcurscr %d shmkey_Xcurscr %d SP->lines %d "
-             "SP->cols %d\n", XCLOGMSG, shmid_Xcurscr, 
-             shmkey_Xcurscr, SP->lines, SP->cols));
-
-    Xcurscr = (unsigned char*)shmat(shmid_Xcurscr, 0, 0);
-    xc_atrtab = (short *)(Xcurscr + XCURSCR_ATRTAB_OFF);
-
-    SP->resized = FALSE;
-
-    return OK;
-}
-
-void PDC_reset_prog_mode(void)
-{
-    PDC_LOG(("PDC_reset_prog_mode() - called.\n"));
-}
-
-void PDC_reset_shell_mode(void)
-{
-    PDC_LOG(("PDC_reset_shell_mode() - called.\n"));
-}
-
-void PDC_restore_screen_mode(int i)
-{
-}
-
-void PDC_save_screen_mode(int i)
-{
-}
-
-void PDC_init_pair(short pair, short fg, short bg)
-{
-    xc_atrtab[pair * 2] = fg;
-    xc_atrtab[pair * 2 + 1] = bg;
-}
-
-int PDC_pair_content(short pair, short *fg, short *bg)
-{
-    *fg = xc_atrtab[pair * 2];
-    *bg = xc_atrtab[pair * 2 + 1];
-
-    return OK;
-}
-
-bool PDC_can_change_color(void)
-{
-    return TRUE;
-}
-
-int PDC_color_content(short color, short *red, short *green, short *blue)
-{
-    XColor *tmp = (XColor *)(Xcurscr + XCURSCR_XCOLOR_OFF);
-
-    tmp->pixel = color;
-
-    XCursesInstructAndWait(CURSES_GET_COLOR);
-
-    *red = ((double)(tmp->red) * 1000 / 65535) + 0.5;
-    *green = ((double)(tmp->green) * 1000 / 65535) + 0.5;
-    *blue = ((double)(tmp->blue) * 1000 / 65535) + 0.5;
-
-    return OK;
-}
-
-int PDC_init_color(short color, short red, short green, short blue)
-{
-    XColor *tmp = (XColor *)(Xcurscr + XCURSCR_XCOLOR_OFF);
-
-    tmp->pixel = color;
-
-    tmp->red = ((double)red * 65535 / 1000) + 0.5;
-    tmp->green = ((double)green * 65535 / 1000) + 0.5;
-    tmp->blue = ((double)blue * 65535 / 1000) + 0.5;
-
-    XCursesInstructAndWait(CURSES_SET_COLOR);
-
-    return OK;
-}
diff --git a/src/other/PDCurses/x11/pdcsetsc.c b/src/other/PDCurses/x11/pdcsetsc.c
deleted file mode 100644
index 395060e..0000000
--- a/src/other/PDCurses/x11/pdcsetsc.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcx11.h"
-
-RCSID("$Id: pdcsetsc.c,v 1.33 2008/07/14 04:24:52 wmcbrine Exp $")
-
-#include <string.h>
-
-/*man-start**************************************************************
-
-  Name:                                                         pdcsetsc
-
-  Synopsis:
-        int PDC_set_blink(bool blinkon);
-        void PDC_set_title(const char *title);
-
-  Description:
-        PDC_set_blink() toggles whether the A_BLINK attribute sets an
-        actual blink mode (TRUE), or sets the background color to high
-        intensity (FALSE). The default is platform-dependent (FALSE in
-        most cases). It returns OK if it could set the state to match 
-        the given parameter, ERR otherwise. Current platforms also 
-        adjust the value of COLORS according to this function -- 16 for 
-        FALSE, and 8 for TRUE.
-
-        PDC_set_title() sets the title of the window in which the curses
-        program is running. This function may not do anything on some
-        platforms. (Currently it only works in Win32 and X11.)
-
-  Portability                                X/Open    BSD    SYS V
-        PDC_set_blink                           -       -       -
-        PDC_set_title                           -       -       -
-
-**man-end****************************************************************/
-
-int PDC_curs_set(int visibility)
-{
-    int ret_vis = SP->visibility;
-
-    PDC_LOG(("PDC_curs_set() - called: visibility=%d\n", visibility));
-
-    if (visibility != -1)
-        SP->visibility = visibility;
-
-    PDC_display_cursor(SP->cursrow, SP->curscol, SP->cursrow,
-                       SP->curscol, visibility);
-
-    return ret_vis;
-}
-
-void PDC_set_title(const char *title)
-{
-    int len;
-
-    PDC_LOG(("PDC_set_title() - called:<%s>\n", title));
-
-    len = strlen(title) + 1;        /* write nul character */
-
-    XCursesInstruct(CURSES_TITLE);
-
-    if (XC_write_display_socket_int(len) >= 0)
-        if (XC_write_socket(xc_display_sock, title, len) >= 0)
-            return;
-
-    XCursesExitCursesProcess(1, "exiting from PDC_set_title");
-}
-
-int PDC_set_blink(bool blinkon)
-{
-    if (pdc_color_started)
-        COLORS = 16;
-
-    return blinkon ? ERR : OK;
-}
diff --git a/src/other/PDCurses/x11/pdcutil.c b/src/other/PDCurses/x11/pdcutil.c
deleted file mode 100644
index 5b5109f..0000000
--- a/src/other/PDCurses/x11/pdcutil.c
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcx11.h"
-
-RCSID("$Id: pdcutil.c,v 1.10 2008/07/14 04:24:52 wmcbrine Exp $")
-
-#if defined(HAVE_POLL) && !defined(HAVE_USLEEP)
-# include <poll.h>
-#endif
-
-void PDC_beep(void)
-{
-    PDC_LOG(("PDC_beep() - called\n"));
-
-    XCursesInstruct(CURSES_BELL);
-}
-
-void PDC_napms(int ms)
-{
-    PDC_LOG(("PDC_napms() - called: ms=%d\n", ms));
-
-#if defined(HAVE_USLEEP)
-
-    usleep(1000 * ms);
-
-#elif defined(HAVE_POLL)
-    {
-        struct pollfd fd;
-        fd.fd = -1;
-        fd.events = 0;
-        poll(&fd, 1, ms);
-    }
-#endif
-}
-
-const char *PDC_sysname(void)
-{
-    return "X11";
-}
diff --git a/src/other/PDCurses/x11/pdcx11.c b/src/other/PDCurses/x11/pdcx11.c
deleted file mode 100644
index 1e8d0d1..0000000
--- a/src/other/PDCurses/x11/pdcx11.c
+++ /dev/null
@@ -1,317 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcx11.h"
-
-RCSID("$Id: pdcx11.c,v 1.96 2008/07/14 04:24:52 wmcbrine Exp $")
-
-#include <errno.h>
-#include <stdlib.h>
-
-/*** Functions that are called by both processes ***/
-
-unsigned char *Xcurscr;
-
-int XCursesProcess = 1;
-int shmidSP;
-int shmid_Xcurscr;
-int shmkeySP;
-int shmkey_Xcurscr;
-int xc_otherpid;
-int XCursesLINES = 24;
-int XCursesCOLS = 80;
-int xc_display_sock;
-int xc_key_sock;
-int xc_display_sockets[2];
-int xc_key_sockets[2];
-int xc_exit_sock;
-
-fd_set xc_readfds;
-
-static void _dummy_function(void)
-{
-}
-
-void XC_get_line_lock(int row)
-{
-    /* loop until we can write to the line -- Patch by:
-       Georg Fuchs, georg.fuchs at rz.uni-regensburg.de */
-
-    while (*(Xcurscr + XCURSCR_FLAG_OFF + row))
-        _dummy_function();
-
-    *(Xcurscr + XCURSCR_FLAG_OFF + row) = 1;
-}
-
-void XC_release_line_lock(int row)
-{
-    *(Xcurscr + XCURSCR_FLAG_OFF + row) = 0;
-}
-
-int XC_write_socket(int sock_num, const void *buf, int len)
-{
-    int start = 0, rc;
-
-    PDC_LOG(("%s:XC_write_socket called: sock_num %d len %d\n",
-             XCLOGMSG, sock_num, len));
-
-#ifdef MOUSE_DEBUG
-    if (sock_num == xc_key_sock)
-        printf("%s:XC_write_socket(key) len: %d\n", XCLOGMSG, len);
-#endif
-    while (1)
-    {
-        rc = write(sock_num, buf + start, len);
-
-        if (rc < 0 || rc == len)
-            return rc;
-
-        len -= rc;
-        start = rc;
-    }
-}
-
-int XC_read_socket(int sock_num, void *buf, int len)
-{
-    int start = 0, length = len, rc;
-
-    PDC_LOG(("%s:XC_read_socket called: sock_num %d len %d\n",
-             XCLOGMSG, sock_num, len));
-
-    while (1)
-    {
-        rc = read(sock_num, buf + start, length);
-
-#ifdef MOUSE_DEBUG
-        if (sock_num == xc_key_sock)
-            printf("%s:XC_read_socket(key) rc %d errno %d "
-                   "resized: %d\n", XCLOGMSG, rc, errno, SP->resized);
-#endif
-        if (rc < 0 && sock_num == xc_key_sock && errno == EINTR
-            && SP->resized != FALSE)
-        {
-            MOUSE_LOG(("%s:continuing\n", XCLOGMSG));
-
-            rc = 0;
-
-            if (SP->resized > 1)
-                SP->resized = TRUE;
-            else
-                SP->resized = FALSE;
-
-            memcpy(buf, &rc, sizeof(int));
-         
-            return 0;
-        }
-
-        if (rc <= 0 || rc == length)
-            return rc;
-
-        length -= rc;
-        start = rc;
-    }
-}
-
-int XC_write_display_socket_int(int x)
-{
-    return XC_write_socket(xc_display_sock, &x, sizeof(int));
-}
-
-#ifdef PDCDEBUG
-void XC_say(const char *msg)
-{
-    PDC_LOG(("%s:%s", XCLOGMSG, msg));
-}
-#endif
-
-/*** Functions that are called by the "curses" process ***/
-
-int XCursesInstruct(int flag)
-{
-    PDC_LOG(("%s:XCursesInstruct() - called flag %d\n", XCLOGMSG, flag));
-
-    /* Send a request to X */
-
-    if (XC_write_display_socket_int(flag) < 0)
-        XCursesExitCursesProcess(4, "exiting from XCursesInstruct");
-
-    return OK;
-}
-
-int XCursesInstructAndWait(int flag)
-{
-    int result;
-
-    XC_LOG(("XCursesInstructAndWait() - called\n"));
-
-    /* tell X we want to do something */
-
-    XCursesInstruct(flag);
-
-    /* wait for X to say the refresh has occurred*/
-
-    if (XC_read_socket(xc_display_sock, &result, sizeof(int)) < 0)
-        XCursesExitCursesProcess(5, "exiting from XCursesInstructAndWait");
-
-    if (result != CURSES_CONTINUE)
-        XCursesExitCursesProcess(6, "exiting from XCursesInstructAndWait"
-                                    " - synchronization error");
-
-    return OK;
-}
-
-static int _setup_curses(void)
-{
-    int wait_value;
-
-    XC_LOG(("_setup_curses called\n"));
-
-    close(xc_display_sockets[1]);
-    close(xc_key_sockets[1]);
-
-    xc_display_sock = xc_display_sockets[0];
-    xc_key_sock = xc_key_sockets[0];
-
-    FD_ZERO(&xc_readfds);
-
-    XC_read_socket(xc_display_sock, &wait_value, sizeof(int));
-
-    if (wait_value != CURSES_CHILD)
-        return ERR;
-
-    /* Set LINES and COLS now so that the size of the shared memory 
-       segment can be allocated */
-
-    if ((shmidSP = shmget(shmkeySP, sizeof(SCREEN) + XCURSESSHMMIN, 0700)) < 0)
-    {
-        perror("Cannot allocate shared memory for SCREEN");
-        kill(xc_otherpid, SIGKILL);
-        return ERR;
-    }
-
-    SP = (SCREEN*)shmat(shmidSP, 0, 0);
-
-    XCursesLINES = SP->lines;
-    LINES = XCursesLINES - SP->linesrippedoff - SP->slklines;
-    XCursesCOLS = COLS = SP->cols;
-
-    if ((shmid_Xcurscr = shmget(shmkey_Xcurscr,
-                                SP->XcurscrSize + XCURSESSHMMIN, 0700)) < 0)
-    {
-        perror("Cannot allocate shared memory for curscr");
-        kill(xc_otherpid, SIGKILL);
-        return ERR;
-    }
-
-    PDC_LOG(("%s:shmid_Xcurscr %d shmkey_Xcurscr %d LINES %d COLS %d\n",
-             XCLOGMSG, shmid_Xcurscr, shmkey_Xcurscr, LINES, COLS));
-
-    Xcurscr = (unsigned char *)shmat(shmid_Xcurscr, 0, 0);
-    xc_atrtab = (short *)(Xcurscr + XCURSCR_ATRTAB_OFF);
-
-    XC_LOG(("cursesprocess exiting from Xinitscr\n"));
-
-    /* Always trap SIGWINCH if the C library supports SIGWINCH */
-
-    XCursesSetSignal(SIGWINCH, XCursesSigwinchHandler);
-
-    atexit(XCursesExit);
-
-    return OK;
-}
-
-int XCursesInitscr(int argc, char *argv[])
-{
-    int pid, rc;
-
-    XC_LOG(("XCursesInitscr() - called\n"));
-
-    shmkeySP = getpid();
-            
-    if (socketpair(AF_UNIX, SOCK_STREAM, 0, xc_display_sockets) < 0)
-    {
-        fprintf(stderr, "ERROR: cannot create display socketpair\n");
-        return ERR;
-    }
-            
-    if (socketpair(AF_UNIX, SOCK_STREAM, 0, xc_key_sockets) < 0)
-    {
-        fprintf(stderr, "ERROR: cannot create key socketpair\n");
-        return ERR;
-    }
-
-    pid = fork();
-
-    switch(pid)
-    {
-    case -1:
-        fprintf(stderr, "ERROR: cannot fork()\n");
-        return ERR;
-        break;
-
-    case 0: /* child */
-        shmkey_Xcurscr = getpid();
-#ifdef XISPARENT
-        XCursesProcess = 0;
-        rc = _setup_curses();
-#else
-        XCursesProcess = 1;
-        xc_otherpid = getppid();
-        rc = XCursesSetupX(argc, argv);
-#endif
-        break;
-
-    default:  /* parent */
-        shmkey_Xcurscr = pid;
-#ifdef XISPARENT
-        XCursesProcess = 1;
-        xc_otherpid = pid;
-        rc = XCursesSetupX(argc, argv);
-#else
-        XCursesProcess = 0;
-        rc = _setup_curses();
-#endif
-    }
-
-    return rc;
-}
-
-static void _cleanup_curses_process(int rc)
-{
-    PDC_LOG(("%s:_cleanup_curses_process() - called: %d\n", XCLOGMSG, rc));
-
-    shutdown(xc_display_sock, 2);
-    close(xc_display_sock);
-
-    shutdown(xc_key_sock, 2);
-    close(xc_key_sock);
-
-    shmdt((char *)SP);
-    shmdt((char *)Xcurscr);
-
-    if (rc)
-        _exit(rc);
-}
-
-void XCursesExitCursesProcess(int rc, char *msg)
-{
-    PDC_LOG(("%s:XCursesExitCursesProcess() - called: %d %s\n",
-             XCLOGMSG, rc, msg));
-
-    endwin();
-    _cleanup_curses_process(rc);
-}
-
-void XCursesExit(void)
-{
-    static bool called = FALSE;
-
-    XC_LOG(("XCursesExit() - called\n"));
-
-    if (FALSE == called)
-    {
-        XCursesInstruct(CURSES_EXIT);
-        _cleanup_curses_process(0);
-
-        called = TRUE;
-    }
-}
diff --git a/src/other/PDCurses/x11/pdcx11.h b/src/other/PDCurses/x11/pdcx11.h
deleted file mode 100644
index 0b66c88..0000000
--- a/src/other/PDCurses/x11/pdcx11.h
+++ /dev/null
@@ -1,188 +0,0 @@
-/* Public Domain Curses */
-
-/* $Id: pdcx11.h,v 1.64 2008/07/14 04:24:52 wmcbrine Exp $ */
-
-#include <curspriv.h>
-
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-#include <signal.h>
-#include <ctype.h>
-#include <pwd.h>
-
-#include <sys/types.h>
-#include <sys/socket.h>
-#ifdef HAVE_FCNTL_H
-# include <fcntl.h>
-#endif
-#ifdef HAVE_SYS_SELECT_H
-# include <sys/select.h>   /* AIX needs this for FD_ZERO etc macros */
-#endif
-#include <sys/ipc.h>
-#include <sys/shm.h>
-
-#ifdef TIME_WITH_SYS_TIME
-# include <sys/time.h>
-# include <time.h>
-#else
-# ifdef HAVE_SYS_TIME_H
-#  include <sys/time.h>
-# else
-#  include <time.h>
-# endif
-#endif
-
-#include <Intrinsic.h>
-#include <StringDefs.h>
-#include <Shell.h>
-
-#ifdef USE_XAW3D
-# include <Xaw3d/Box.h>
-# include <Xaw3d/Scrollbar.h>
-#elif defined(USE_NEXTAW)
-# include <neXtaw/Box.h>
-# include <neXtaw/Scrollbar.h>
-#else
-# include <Xaw/Box.h>
-# include <Xaw/Scrollbar.h>
-#endif
-#include "x11/ScrollBox.h"
-
-#include "Xmu/StdSel.h"
-#include "Xmu/Atoms.h"
-
-#include <keysym.h>
-#include <Xatom.h>
-
-#define XCURSCR_Y_SIZE      (XCursesLINES * XCursesCOLS * sizeof(chtype))
-#define XCURSCR_FLAG_SIZE   (XCursesLINES * sizeof(int))
-#define XCURSCR_START_SIZE  (XCursesLINES * sizeof(int))
-#define XCURSCR_LENGTH_SIZE (XCursesLINES * sizeof(int))
-#define XCURSCR_ATRTAB_SIZE (PDC_COLOR_PAIRS * 2 * sizeof(short))
-#define XCURSCR_SIZE        (XCURSCR_FLAG_SIZE + XCURSCR_START_SIZE + \
-        XCURSCR_LENGTH_SIZE + XCURSCR_Y_SIZE + XCURSCR_ATRTAB_SIZE + \
-        sizeof(XColor))
-
-#define XCURSCR_Y_OFF(y)    ((y) * XCursesCOLS * sizeof(chtype))
-#define XCURSCR_FLAG_OFF    (XCURSCR_Y_OFF(0) + XCURSCR_Y_SIZE)
-#define XCURSCR_START_OFF   (XCURSCR_FLAG_OFF + XCURSCR_FLAG_SIZE)
-#define XCURSCR_LENGTH_OFF  (XCURSCR_START_OFF + XCURSCR_START_SIZE)
-#define XCURSCR_ATRTAB_OFF  (XCURSCR_LENGTH_OFF + XCURSCR_LENGTH_SIZE)
-#define XCURSCR_XCOLOR_OFF  (XCURSCR_ATRTAB_OFF + XCURSCR_ATRTAB_SIZE)
-
-typedef struct
-{
-    int lines;
-    int cols;
-    Pixel cursorColor;
-    Pixel colorBlack;
-    Pixel colorRed;
-    Pixel colorGreen;
-    Pixel colorYellow;
-    Pixel colorBlue;
-    Pixel colorMagenta;
-    Pixel colorCyan;
-    Pixel colorWhite;
-    Pixel colorBoldBlack;
-    Pixel colorBoldRed;
-    Pixel colorBoldGreen;
-    Pixel colorBoldYellow;
-    Pixel colorBoldBlue;
-    Pixel colorBoldMagenta;
-    Pixel colorBoldCyan;
-    Pixel colorBoldWhite;
-    Pixel pointerForeColor;
-    Pixel pointerBackColor;
-    XFontStruct *normalFont;
-    XFontStruct *italicFont;
-    char *bitmap;
-#ifdef HAVE_XPM_H
-    char *pixmap;
-#endif
-    char *composeKey;
-    Cursor pointer;
-    int shmmin;
-    int borderWidth;
-    int borderColor;
-    int clickPeriod;
-    int doubleClickPeriod;
-    int scrollbarWidth;
-    int cursorBlinkRate;
-    char *textCursor;
-} XCursesAppData;
-
-extern XCursesAppData xc_app_data;
-
-#define XCURSESSHMMIN xc_app_data.shmmin
-
-#define XCLOGMSG (XCursesProcess ? "     X" : "CURSES")
-
-void XC_get_line_lock(int);
-void XC_release_line_lock(int);
-
-int PDC_display_cursor(int, int, int, int, int);
-
-void XCursesExitCursesProcess(int, char *);
-int XCursesInstruct(int);
-int XCursesInstructAndWait(int);
-int XCursesInitscr(int, char **);
-
-int XC_write_socket(int, const void *, int);
-int XC_read_socket(int, void *, int);
-int XC_write_display_socket_int(int);
-
-int XCursesSetupX(int argc, char *argv[]);
-RETSIGTYPE XCursesSigwinchHandler(int signo);
-
-#ifdef _HPUX_SOURCE
-# define FD_SET_CAST int *
-#else
-# define FD_SET_CAST fd_set *
-#endif
-
-extern fd_set xc_readfds;
-
-extern unsigned char *Xcurscr;
-extern int XCursesProcess;
-extern int shmidSP;
-extern int shmid_Xcurscr;
-extern int shmkeySP;
-extern int shmkey_Xcurscr;
-extern int xc_otherpid;
-extern int XCursesLINES;
-extern int XCursesCOLS;
-extern int xc_display_sock;
-extern int xc_key_sock;
-extern int xc_display_sockets[2];
-extern int xc_key_sockets[2];
-extern int xc_exit_sock;
-
-typedef RETSIGTYPE (*signal_handler)();
-
-signal_handler XCursesSetSignal(int, signal_handler);
-
-#ifdef PDCDEBUG
-void XC_say(const char *msg);
-# define XC_LOG(x) XC_say x
-#else
-# define XC_LOG(x)
-#endif
-
-#ifdef MOUSE_DEBUG
-# define MOUSE_LOG(x) printf x
-#else
-# define MOUSE_LOG(x)
-#endif
-
-enum
-{
-    CURSES_CLEAR_SELECTION, CURSES_DISPLAY_CURSOR, CURSES_SET_SELECTION, 
-    CURSES_GET_SELECTION, CURSES_TITLE, CURSES_REFRESH_SCROLLBAR, 
-    CURSES_RESIZE, CURSES_BELL, CURSES_CONTINUE, CURSES_CURSOR, 
-    CURSES_CHILD, CURSES_REFRESH, CURSES_GET_COLOR, CURSES_SET_COLOR, 
-    CURSES_EXIT
-};
-
-extern short *xc_atrtab;
diff --git a/src/other/PDCurses/x11/sb.c b/src/other/PDCurses/x11/sb.c
deleted file mode 100644
index a34f502..0000000
--- a/src/other/PDCurses/x11/sb.c
+++ /dev/null
@@ -1,153 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcx11.h"
-
-RCSID("$Id: sb.c,v 1.27 2008/07/14 04:24:52 wmcbrine Exp $")
-
-/*man-start**************************************************************
-
-  Name:                                                          sb
-
-  Synopsis:
-        int sb_init(void)
-        int sb_set_horz(int total, int viewport, int cur)
-        int sb_set_vert(int total, int viewport, int cur)
-        int sb_get_horz(int *total, int *viewport, int *cur)
-        int sb_get_vert(int *total, int *viewport, int *cur)
-        int sb_refresh(void);
-
-  Description:
-        These functions manipulate the scrollbar.
-
-  Return Value:
-        All functions return OK on success and ERR on error.
-
-  Portability                                X/Open    BSD    SYS V
-        sb_init                                 -       -       -
-        sb_set_horz                             -       -       -
-        sb_set_vert                             -       -       -
-        sb_get_horz                             -       -       -
-        sb_get_vert                             -       -       -
-        sb_refresh                              -       -       -
-
-**man-end****************************************************************/
-
-bool sb_started = FALSE;
-
-/* sb_init() is the sb initialization routine.
-   This must be called before initscr(). */
-
-int sb_init(void)
-{
-    PDC_LOG(("sb_init() - called\n"));
-
-    if (SP)
-        return ERR;
-
-    sb_started = TRUE;
-
-    return OK;
-}
-
-/* sb_set_horz() - Used to set horizontal scrollbar.
-
-   total = total number of columns
-   viewport = size of viewport in columns
-   cur = current column in total */
-
-int sb_set_horz(int total, int viewport, int cur)
-{
-    PDC_LOG(("sb_set_horz() - called: total %d viewport %d cur %d\n",
-             total, viewport, cur));
-
-    if (!SP)
-        return ERR;
-
-    SP->sb_total_x = total;
-    SP->sb_viewport_x = viewport;
-    SP->sb_cur_x = cur;
-
-    return OK;
-}
-
-/* sb_set_vert() - Used to set vertical scrollbar.
-
-   total = total number of columns on line
-   viewport = size of viewport in columns
-   cur = current column in total */
-
-int sb_set_vert(int total, int viewport, int cur)
-{
-    PDC_LOG(("sb_set_vert() - called: total %d viewport %d cur %d\n",
-             total, viewport, cur));
-
-    if (!SP)
-        return ERR;
-
-    SP->sb_total_y = total;
-    SP->sb_viewport_y = viewport;
-    SP->sb_cur_y = cur;
-
-    return OK;
-}
-
-/* sb_get_horz() - Used to get horizontal scrollbar.
-
-   total = total number of lines
-   viewport = size of viewport in lines
-   cur = current line in total */
-
-int sb_get_horz(int *total, int *viewport, int *cur)
-{
-    PDC_LOG(("sb_get_horz() - called\n"));
-
-    if (!SP)
-        return ERR;
-
-    if (total)
-        *total = SP->sb_total_x;
-    if (viewport)
-        *viewport = SP->sb_viewport_x;
-    if (cur)
-        *cur = SP->sb_cur_x;
-
-    return OK;
-}
-
-/* sb_get_vert() - Used to get vertical scrollbar.
-
-   total = total number of lines
-   viewport = size of viewport in lines
-   cur = current line in total */
-
-int sb_get_vert(int *total, int *viewport, int *cur)
-{
-    PDC_LOG(("sb_get_vert() - called\n"));
-
-    if (!SP)
-        return ERR;
-
-    if (total)
-        *total = SP->sb_total_y;
-    if (viewport)
-        *viewport = SP->sb_viewport_y;
-    if (cur)
-        *cur = SP->sb_cur_y;
-
-    return OK;
-}
-
-/* sb_refresh() - Used to draw the scrollbars. */
-
-int sb_refresh(void)
-{
-    PDC_LOG(("sb_refresh() - called\n"));
-
-    if (!SP)
-        return ERR;
-
-    XCursesInstruct(CURSES_REFRESH_SCROLLBAR);
-
-    return OK;
-}
-
diff --git a/src/other/PDCurses/x11/x11.c b/src/other/PDCurses/x11/x11.c
deleted file mode 100644
index 1f57928..0000000
--- a/src/other/PDCurses/x11/x11.c
+++ /dev/null
@@ -1,3242 +0,0 @@
-/* Public Domain Curses */
-
-#include "pdcx11.h"
-
-RCSID("$Id: x11.c,v 1.95 2011/04/20 22:13:34 wmcbrine Exp $")
-
-#ifdef HAVE_DECKEYSYM_H
-# include <DECkeysym.h>
-#endif
-
-#ifdef HAVE_SUNKEYSYM_H
-# include <Sunkeysym.h>
-#endif
-
-#ifdef HAVE_XPM_H
-# include <xpm.h>
-#endif
-
-#if defined PDC_XIM
-# include <Xlocale.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-
-#ifndef XPOINTER_TYPEDEFED
-typedef char * XPointer;
-#endif
-
-#ifndef MAX_PATH
-# define MAX_PATH 256
-#endif
-
-XCursesAppData xc_app_data;
-
-#if NeedWidePrototypes
-# define PDC_SCROLLBAR_TYPE double
-#else
-# define PDC_SCROLLBAR_TYPE float
-#endif
-
-#define MAX_COLORS   16             /* maximum of "normal" colors */
-#define COLOR_CURSOR MAX_COLORS     /* color of cursor */
-#define COLOR_BORDER MAX_COLORS + 1 /* color of border */
-
-#define XCURSESDISPLAY (XtDisplay(drawing))
-#define XCURSESWIN     (XtWindow(drawing))
-
-/* Default icons for XCurses applications.  */
-
-#include "big_icon.xbm"
-#include "little_icon.xbm"
-
-static void _selection_off(void);
-static void _display_cursor(int, int, int, int);
-static void _redraw_cursor(void);
-static void _exit_process(int, int, char *);
-static void _send_key_to_curses(unsigned long, MOUSE_STATUS *, bool);
-
-static void XCursesButton(Widget, XEvent *, String *, Cardinal *);
-static void XCursesHandleString(Widget, XEvent *, String *, Cardinal *);
-static void XCursesKeyPress(Widget, XEvent *, String *, Cardinal *);
-static void XCursesPasteSelection(Widget, XButtonEvent *);
-
-static struct
-{
-    KeySym keycode;
-    bool numkeypad;
-    unsigned short normal;
-    unsigned short shifted;
-    unsigned short control;
-    unsigned short alt;
-} key_table[] =
-{
-/* keycode      keypad  normal       shifted       control      alt*/
- {XK_Left,      FALSE,  KEY_LEFT,    KEY_SLEFT,    CTL_LEFT,    ALT_LEFT},
- {XK_Right,     FALSE,  KEY_RIGHT,   KEY_SRIGHT,   CTL_RIGHT,   ALT_RIGHT},
- {XK_Up,        FALSE,  KEY_UP,      KEY_SUP,      CTL_UP,      ALT_UP},
- {XK_Down,      FALSE,  KEY_DOWN,    KEY_SDOWN,    CTL_DOWN,    ALT_DOWN},
- {XK_Home,      FALSE,  KEY_HOME,    KEY_SHOME,    CTL_HOME,    ALT_HOME},
-/* Sun Type 4 keyboard */
- {XK_R7,        FALSE,  KEY_HOME,    KEY_SHOME,    CTL_HOME,    ALT_HOME},
- {XK_End,       FALSE,  KEY_END,     KEY_SEND,     CTL_END,     ALT_END},
-/* Sun Type 4 keyboard */
- {XK_R13,       FALSE,  KEY_END,     KEY_SEND,     CTL_END,     ALT_END},
- {XK_Prior,     FALSE,  KEY_PPAGE,   KEY_SPREVIOUS,CTL_PGUP,    ALT_PGUP},
-/* Sun Type 4 keyboard */
- {XK_R9,        FALSE,  KEY_PPAGE,   KEY_SPREVIOUS,CTL_PGUP,    ALT_PGUP},
- {XK_Next,      FALSE,  KEY_NPAGE,   KEY_SNEXT,    CTL_PGDN,    ALT_PGDN},
-/* Sun Type 4 keyboard */
- {XK_R15,       FALSE,  KEY_NPAGE,   KEY_SNEXT,    CTL_PGDN,    ALT_PGDN},
- {XK_Insert,    FALSE,  KEY_IC,      KEY_SIC,      CTL_INS,     ALT_INS},
- {XK_Delete,    FALSE,  KEY_DC,      KEY_SDC,      CTL_DEL,     ALT_DEL},
- {XK_F1,        FALSE,  KEY_F(1),    KEY_F(13),    KEY_F(25),   KEY_F(37)},
- {XK_F2,        FALSE,  KEY_F(2),    KEY_F(14),    KEY_F(26),   KEY_F(38)},
- {XK_F3,        FALSE,  KEY_F(3),    KEY_F(15),    KEY_F(27),   KEY_F(39)},
- {XK_F4,        FALSE,  KEY_F(4),    KEY_F(16),    KEY_F(28),   KEY_F(40)},
- {XK_F5,        FALSE,  KEY_F(5),    KEY_F(17),    KEY_F(29),   KEY_F(41)},
- {XK_F6,        FALSE,  KEY_F(6),    KEY_F(18),    KEY_F(30),   KEY_F(42)},
- {XK_F7,        FALSE,  KEY_F(7),    KEY_F(19),    KEY_F(31),   KEY_F(43)},
- {XK_F8,        FALSE,  KEY_F(8),    KEY_F(20),    KEY_F(32),   KEY_F(44)},
- {XK_F9,        FALSE,  KEY_F(9),    KEY_F(21),    KEY_F(33),   KEY_F(45)},
- {XK_F10,       FALSE,  KEY_F(10),   KEY_F(22),    KEY_F(34),   KEY_F(46)},
- {XK_F11,       FALSE,  KEY_F(11),   KEY_F(23),    KEY_F(35),   KEY_F(47)},
- {XK_F12,       FALSE,  KEY_F(12),   KEY_F(24),    KEY_F(36),   KEY_F(48)},
- {XK_F13,       FALSE,  KEY_F(13),   KEY_F(25),    KEY_F(37),   KEY_F(49)},
- {XK_F14,       FALSE,  KEY_F(14),   KEY_F(26),    KEY_F(38),   KEY_F(50)},
- {XK_F15,       FALSE,  KEY_F(15),   KEY_F(27),    KEY_F(39),   KEY_F(51)},
- {XK_F16,       FALSE,  KEY_F(16),   KEY_F(28),    KEY_F(40),   KEY_F(52)},
- {XK_F17,       FALSE,  KEY_F(17),   KEY_F(29),    KEY_F(41),   KEY_F(53)},
- {XK_F18,       FALSE,  KEY_F(18),   KEY_F(30),    KEY_F(42),   KEY_F(54)},
- {XK_F19,       FALSE,  KEY_F(19),   KEY_F(31),    KEY_F(43),   KEY_F(55)},
- {XK_F20,       FALSE,  KEY_F(20),   KEY_F(32),    KEY_F(44),   KEY_F(56)},
- {XK_BackSpace, FALSE,  0x08,        0x08,         CTL_BKSP,    ALT_BKSP},
- {XK_Tab,       FALSE,  0x09,        KEY_BTAB,     CTL_TAB,     ALT_TAB},
- {XK_Select,    FALSE,  KEY_SELECT,  KEY_SELECT,   KEY_SELECT,  KEY_SELECT},
- {XK_Print,     FALSE,  KEY_PRINT,   KEY_SPRINT,   KEY_PRINT,   KEY_PRINT},
- {XK_Find,      FALSE,  KEY_FIND,    KEY_SFIND,    KEY_FIND,    KEY_FIND},
- {XK_Pause,     FALSE,  KEY_SUSPEND, KEY_SSUSPEND, KEY_SUSPEND, KEY_SUSPEND},
- {XK_Clear,     FALSE,  KEY_CLEAR,   KEY_CLEAR,    KEY_CLEAR,   KEY_CLEAR},
- {XK_Cancel,    FALSE,  KEY_CANCEL,  KEY_SCANCEL,  KEY_CANCEL,  KEY_CANCEL},
- {XK_Break,     FALSE,  KEY_BREAK,   KEY_BREAK,    KEY_BREAK,   KEY_BREAK},
- {XK_Help,      FALSE,  KEY_HELP,    KEY_SHELP,    KEY_LHELP,   KEY_HELP},
- {XK_L4,        FALSE,  KEY_UNDO,    KEY_SUNDO,    KEY_UNDO,    KEY_UNDO},
- {XK_L6,        FALSE,  KEY_COPY,    KEY_SCOPY,    KEY_COPY,    KEY_COPY},
- {XK_L9,        FALSE,  KEY_FIND,    KEY_SFIND,    KEY_FIND,    KEY_FIND},
- {XK_Menu,      FALSE,  KEY_OPTIONS, KEY_SOPTIONS, KEY_OPTIONS, KEY_OPTIONS},
-#ifdef HAVE_SUNKEYSYM_H
- {SunXK_F36,    FALSE,  KEY_F(41),   KEY_F(43),    KEY_F(45),   KEY_F(47)},
- {SunXK_F37,    FALSE,  KEY_F(42),   KEY_F(44),    KEY_F(46),   KEY_F(48)},
-#endif
-#ifdef HAVE_DECKEYSYM_H
- {DXK_Remove,   FALSE,  KEY_DC,      KEY_SDC,      CTL_DEL,     ALT_DEL},
-#endif
- {XK_Escape,    FALSE,  0x1B,        0x1B,         0x1B,        ALT_ESC},
- {XK_KP_Enter,  TRUE,   PADENTER,    PADENTER,     CTL_PADENTER,ALT_PADENTER},
- {XK_KP_Add,    TRUE,   PADPLUS,     '+',          CTL_PADPLUS, ALT_PADPLUS},
- {XK_KP_Subtract,TRUE,  PADMINUS,    '-',          CTL_PADMINUS,ALT_PADMINUS},
- {XK_KP_Multiply,TRUE,  PADSTAR,     '*',          CTL_PADSTAR, ALT_PADSTAR},
-/* Sun Type 4 keyboard */
- {XK_R6,        TRUE,   PADSTAR,     '*',          CTL_PADSTAR, ALT_PADSTAR},
- {XK_KP_Divide, TRUE,   PADSLASH,    '/',          CTL_PADSLASH,ALT_PADSLASH},
-/* Sun Type 4 keyboard */
- {XK_R5,        TRUE,   PADSLASH,    '/',          CTL_PADSLASH,ALT_PADSLASH},
- {XK_KP_Decimal,TRUE,   PADSTOP,     '.',          CTL_PADSTOP, ALT_PADSTOP},
- {XK_KP_0,      TRUE,   PAD0,        '0',          CTL_PAD0,    ALT_PAD0},
- {XK_KP_1,      TRUE,   KEY_C1,      '1',          CTL_PAD1,    ALT_PAD1},
- {XK_KP_2,      TRUE,   KEY_C2,      '2',          CTL_PAD2,    ALT_PAD2},
- {XK_KP_3,      TRUE,   KEY_C3,      '3',          CTL_PAD3,    ALT_PAD3},
- {XK_KP_4,      TRUE,   KEY_B1,      '4',          CTL_PAD4,    ALT_PAD4},
- {XK_KP_5,      TRUE,   KEY_B2,      '5',          CTL_PAD5,    ALT_PAD5},
-/* Sun Type 4 keyboard */
- {XK_R11,       TRUE,   KEY_B2,      '5',          CTL_PAD5,    ALT_PAD5},
- {XK_KP_6,      TRUE,   KEY_B3,      '6',          CTL_PAD6,    ALT_PAD6},
- {XK_KP_7,      TRUE,   KEY_A1,      '7',          CTL_PAD7,    ALT_PAD7},
- {XK_KP_8,      TRUE,   KEY_A2,      '8',          CTL_PAD8,    ALT_PAD8},
- {XK_KP_9,      TRUE,   KEY_A3,      '9',          CTL_PAD9,    ALT_PAD9},
-/* the following added to support Sun Type 5 keyboards */
- {XK_F21,       FALSE,  KEY_SUSPEND, KEY_SSUSPEND, KEY_SUSPEND, KEY_SUSPEND},
- {XK_F22,       FALSE,  KEY_PRINT,   KEY_SPRINT,   KEY_PRINT,   KEY_PRINT},
- {XK_F24,       TRUE,   PADMINUS,    '-',          CTL_PADMINUS,ALT_PADMINUS},
-/* Sun Type 4 keyboard */
- {XK_F25,       TRUE,   PADSLASH,    '/',          CTL_PADSLASH,ALT_PADSLASH},
-/* Sun Type 4 keyboard */
- {XK_F26,       TRUE,   PADSTAR,     '*',          CTL_PADSTAR, ALT_PADSTAR},
- {XK_F27,       TRUE,   KEY_A1,      '7',          CTL_PAD7,    ALT_PAD7},
- {XK_F29,       TRUE,   KEY_A3,      '9',          CTL_PAD9,    ALT_PAD9},
- {XK_F31,       TRUE,   KEY_B2,      '5',          CTL_PAD5,    ALT_PAD5},
- {XK_F35,       TRUE,   KEY_C3,      '3',          CTL_PAD3,    ALT_PAD3},
-#ifdef HAVE_XK_KP_DELETE
- {XK_KP_Delete, TRUE,   PADSTOP,     '.',          CTL_PADSTOP, ALT_PADSTOP},
-#endif
-#ifdef HAVE_XK_KP_INSERT
- {XK_KP_Insert, TRUE,   PAD0,        '0',          CTL_PAD0,    ALT_PAD0},
-#endif
-#ifdef HAVE_XK_KP_END
- {XK_KP_End,    TRUE,   KEY_C1,      '1',          CTL_PAD1,    ALT_PAD1},
-#endif
-#ifdef HAVE_XK_KP_DOWN
- {XK_KP_Down,   TRUE,   KEY_C2,      '2',          CTL_PAD2,    ALT_PAD2},
-#endif
-#ifdef HAVE_XK_KP_NEXT
- {XK_KP_Next,   TRUE,   KEY_C3,      '3',          CTL_PAD3,    ALT_PAD3},
-#endif
-#ifdef HAVE_XK_KP_LEFT
- {XK_KP_Left,   TRUE,   KEY_B1,      '4',          CTL_PAD4,    ALT_PAD4},
-#endif
-#ifdef HAVE_XK_KP_BEGIN
- {XK_KP_Begin,  TRUE,   KEY_B2,      '5',          CTL_PAD5,    ALT_PAD5},
-#endif
-#ifdef HAVE_XK_KP_RIGHT
- {XK_KP_Right,  TRUE,   KEY_B3,      '6',          CTL_PAD6,    ALT_PAD6},
-#endif
-#ifdef HAVE_XK_KP_HOME
- {XK_KP_Home,   TRUE,   KEY_A1,      '7',          CTL_PAD7,    ALT_PAD7},
-#endif
-#ifdef HAVE_XK_KP_UP
- {XK_KP_Up,     TRUE,   KEY_A2,      '8',          CTL_PAD8,    ALT_PAD8},
-#endif
-#ifdef HAVE_XK_KP_PRIOR
- {XK_KP_Prior,  TRUE,   KEY_A3,      '9',          CTL_PAD9,    ALT_PAD9},
-#endif
- {0,            0,      0,           0,            0,           0}
-};
-
-#ifndef PDC_XIM
-# include "compose.h"
-#endif
-
-#define BITMAPDEPTH 1
-
-unsigned long pdc_key_modifiers = 0L;
-
-static GC normal_gc, block_cursor_gc, rect_cursor_gc, italic_gc, border_gc;
-static int font_height, font_width, font_ascent, font_descent,
-           window_width, window_height;
-static int resize_window_width = 0, resize_window_height = 0;
-static char *bitmap_file = NULL;
-#ifdef HAVE_XPM_H
-static char *pixmap_file = NULL;
-#endif
-static KeySym keysym = 0;
-
-static int state_mask[8] =
-{
-    ShiftMask,
-    LockMask,
-    ControlMask,
-    Mod1Mask,
-    Mod2Mask,
-    Mod3Mask,
-    Mod4Mask,
-    Mod5Mask
-};
-
-static Atom wm_atom[2];
-static String class_name = "XCurses";
-static XtAppContext app_context;
-static Widget topLevel, drawing, scrollBox, scrollVert, scrollHoriz;
-static int received_map_notify = 0;
-static bool mouse_selection = FALSE;
-static chtype *tmpsel = NULL;
-static unsigned long tmpsel_length = 0;
-static int selection_start_x = 0, selection_start_y = 0,
-           selection_end_x = 0, selection_end_y = 0;
-static Pixmap icon_bitmap;
-#ifdef HAVE_XPM_H
-static Pixmap icon_pixmap;
-static Pixmap icon_pixmap_mask;
-#endif
-static bool visible_cursor = FALSE;
-static bool window_entered = TRUE;
-static char *program_name;
-
-/* Macros just for app_resources */
-
-#ifdef PDC_WIDE
-# define DEFFONT "-misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1"
-#else
-# define DEFFONT "7x13"
-#endif
-
-#define APPDATAOFF(n) XtOffsetOf(XCursesAppData, n)
-
-#define RINT(name1, name2, value) { \
-                #name1, #name2, XtRInt, \
-                sizeof(int), APPDATAOFF(name1), XtRImmediate, \
-                (XtPointer)value \
-        }
-
-#define RPIXEL(name1, name2, value) { \
-                #name1, #name2, XtRPixel, \
-                sizeof(Pixel), APPDATAOFF(name1), XtRString, \
-                (XtPointer)#value \
-        }
-
-#define RCOLOR(name, value) RPIXEL(color##name, Color##name, value)
-
-
-#define RSTRINGP(name1, name2, param) { \
-                #name1, #name2, XtRString, \
-                MAX_PATH, APPDATAOFF(name1), XtRString, (XtPointer)param \
-        }
-
-#define RSTRING(name1, name2) RSTRINGP(name1, name2, "")
-
-#define RFONT(name1, name2, value) { \
-                #name1, #name2, XtRFontStruct, \
-                sizeof(XFontStruct), APPDATAOFF(name1), XtRString, \
-                (XtPointer)value \
-        }
-
-#define RCURSOR(name1, name2, value) { \
-                #name1, #name2, XtRCursor, \
-                sizeof(Cursor), APPDATAOFF(name1), XtRString, \
-                (XtPointer)#value \
-        }
-
-static XtResource app_resources[] =
-{
-    RINT(lines, Lines, 24),
-    RINT(cols, Cols, 80),
-
-    RPIXEL(cursorColor, CursorColor, Red),
-
-    RCOLOR(Black, Black),
-    RCOLOR(Red, red3),
-    RCOLOR(Green, green3),
-    RCOLOR(Yellow, yellow3),
-    RCOLOR(Blue, blue3),
-    RCOLOR(Magenta, magenta3),
-    RCOLOR(Cyan, cyan3),
-    RCOLOR(White, Grey),
-
-    RCOLOR(BoldBlack, grey40),
-    RCOLOR(BoldRed, red1),
-    RCOLOR(BoldGreen, green1),
-    RCOLOR(BoldYellow, yellow1),
-    RCOLOR(BoldBlue, blue1),
-    RCOLOR(BoldMagenta, magenta1),
-    RCOLOR(BoldCyan, cyan1),
-    RCOLOR(BoldWhite, White),
-
-    RFONT(normalFont, NormalFont, DEFFONT),
-    RFONT(italicFont, ItalicFont, DEFFONT),
-
-    RSTRING(bitmap, Bitmap),
-#ifdef HAVE_XPM_H
-    RSTRING(pixmap, Pixmap),
-#endif
-    RSTRINGP(composeKey, ComposeKey, "Multi_key"),
-
-    RCURSOR(pointer, Pointer, xterm),
-
-    RPIXEL(pointerForeColor, PointerForeColor, Black),
-    RPIXEL(pointerBackColor, PointerBackColor, White),
-
-    RINT(shmmin, Shmmin, 0),
-    RINT(borderWidth, BorderWidth, 0),
-
-    RPIXEL(borderColor, BorderColor, Black),
-
-    RINT(doubleClickPeriod, DoubleClickPeriod, (PDC_CLICK_PERIOD * 2)),
-    RINT(clickPeriod, ClickPeriod, PDC_CLICK_PERIOD),
-    RINT(scrollbarWidth, ScrollbarWidth, 15),
-    RINT(cursorBlinkRate, CursorBlinkRate, 0),
-
-    RSTRING(textCursor, TextCursor)
-};
-
-#undef RCURSOR
-#undef RFONT
-#undef RSTRING
-#undef RCOLOR
-#undef RPIXEL
-#undef RINT
-#undef APPDATAOFF
-#undef DEFFONT
-
-/* Macros for options */
-
-#define COPT(name) {"-" #name, "*" #name, XrmoptionSepArg, NULL}
-#define CCOLOR(name) COPT(color##name)
-
-static XrmOptionDescRec options[] =
-{
-    COPT(lines), COPT(cols), COPT(normalFont), COPT(italicFont),
-    COPT(bitmap),
-#ifdef HAVE_XPM_H
-    COPT(pixmap),
-#endif
-    COPT(pointer), COPT(shmmin), COPT(composeKey), COPT(clickPeriod),
-    COPT(doubleClickPeriod), COPT(scrollbarWidth),
-    COPT(pointerForeColor), COPT(pointerBackColor),
-    COPT(cursorBlinkRate), COPT(cursorColor), COPT(textCursor),
-
-    CCOLOR(Black), CCOLOR(Red), CCOLOR(Green), CCOLOR(Yellow),
-    CCOLOR(Blue), CCOLOR(Magenta), CCOLOR(Cyan), CCOLOR(White),
-
-    CCOLOR(BoldBlack), CCOLOR(BoldRed), CCOLOR(BoldGreen), 
-    CCOLOR(BoldYellow), CCOLOR(BoldBlue), CCOLOR(BoldMagenta), 
-    CCOLOR(BoldCyan), CCOLOR(BoldWhite)
-};
-
-#undef CCOLOR
-#undef COPT
-
-static XtActionsRec action_table[] =
-{
-    {"XCursesButton",         (XtActionProc)XCursesButton},
-    {"XCursesKeyPress",       (XtActionProc)XCursesKeyPress},
-    {"XCursesPasteSelection", (XtActionProc)XCursesPasteSelection},
-    {"string",                (XtActionProc)XCursesHandleString}
-};
-
-static bool after_first_curses_request = FALSE;
-static Pixel colors[MAX_COLORS + 2];
-static bool vertical_cursor = FALSE;
-
-#ifdef PDC_XIM
-static XIM Xim = NULL;
-static XIC Xic = NULL;
-#endif
-
-static const char *default_translations =
-{
-    "<Key>: XCursesKeyPress() \n" \
-    "<KeyUp>: XCursesKeyPress() \n" \
-    "<BtnDown>: XCursesButton() \n" \
-    "<BtnUp>: XCursesButton() \n" \
-    "<BtnMotion>: XCursesButton()"
-};
-
-static int _to_utf8(char *outcode, chtype code)
-{
-#ifdef PDC_WIDE
-    if (code & A_ALTCHARSET && !(code & 0xff80))
-        code = acs_map[code & 0x7f];
-#endif
-    code &= A_CHARTEXT;
-
-    if (code < 0x80)
-    {
-        outcode[0] = code;
-        return 1;
-    }
-    else
-        if (code < 0x800)
-        {
-            outcode[0] = ((code & 0x07c0) >> 6) | 0xc0;
-            outcode[1] = (code & 0x003f) | 0x80;
-            return 2;
-        }
-        else
-        {
-            outcode[0] = ((code & 0xf000) >> 12) | 0xe0;
-            outcode[1] = ((code & 0x0fc0) >> 6) | 0x80;
-            outcode[2] = (code & 0x003f) | 0x80;
-            return 3;
-        }
-}
-
-static int _from_utf8(wchar_t *pwc, const char *s, size_t n)
-{
-    wchar_t key;
-    int i = -1;
-    const unsigned char *string;
-
-    if (!s || (n < 1))
-        return -1;
-
-    if (!*s)
-        return 0;
-
-    string = (const unsigned char *)s;
-
-    key = string[0];
-
-    /* Simplistic UTF-8 decoder -- only does the BMP, minimal validation */
-
-    if (key & 0x80)
-    {
-        if ((key & 0xe0) == 0xc0)
-        {
-            if (1 < n)
-            {
-                key = ((key & 0x1f) << 6) | (string[1] & 0x3f);
-                i = 2;
-            }
-        }
-        else if ((key & 0xe0) == 0xe0)
-        {
-            if (2 < n)
-            {
-                key = ((key & 0x0f) << 12) |
-                      ((string[1] & 0x3f) << 6) | (string[2] & 0x3f);
-                i = 3;
-            }
-        }
-    }
-    else
-        i = 1;
-
-    if (i)
-        *pwc = key;
-
-    return i;
-}
-
-#ifndef X_HAVE_UTF8_STRING
-static Atom XA_UTF8_STRING(Display *dpy)
-{
-    static AtomPtr p = NULL;
-
-    if (!p)
-        p = XmuMakeAtom("UTF8_STRING");
-
-    return XmuInternAtom(dpy, p);
-}
-#endif
-
-signal_handler XCursesSetSignal(int signo, signal_handler action)
-{
-#if defined(SA_INTERRUPT) || defined(SA_RESTART)
-    struct sigaction sigact, osigact;
-
-    sigact.sa_handler = action;
-
-    sigact.sa_flags =
-# ifdef SA_INTERRUPT
-#  ifdef SA_RESTART
-        SA_INTERRUPT | SA_RESTART;
-#  else
-        SA_INTERRUPT;
-#  endif
-# else  /* must be SA_RESTART */
-        SA_RESTART;
-# endif
-    sigemptyset(&sigact.sa_mask);
-
-    if (sigaction(signo, &sigact, &osigact))
-        return SIG_ERR;
-
-    return osigact.sa_handler;
-
-#else   /* not SA_INTERRUPT or SA_RESTART, use plain signal */
-    return signal(signo, action);
-#endif
-}
-
-RETSIGTYPE XCursesSigwinchHandler(int signo)
-{
-    PDC_LOG(("%s:XCursesSigwinchHandler() - called: SIGNO: %d\n",
-             XCLOGMSG, signo));
-
-    /* Patch by: Georg Fuchs, georg.fuchs at rz.uni-regensburg.de 
-       02-Feb-1999 */
-
-    SP->resized += 1;
-
-    /* Always trap SIGWINCH if the C library supports SIGWINCH */
-
-#ifdef SIGWINCH
-    XCursesSetSignal(SIGWINCH, XCursesSigwinchHandler);
-#endif
-}
-
-/* Convert character positions x and y to pixel positions, stored in 
-   xpos and ypos */
-
-static void _make_xy(int x, int y, int *xpos, int *ypos)
-{
-    *xpos = (x * font_width) + xc_app_data.borderWidth;
-    *ypos = xc_app_data.normalFont->ascent + (y * font_height) + 
-            xc_app_data.borderWidth;
-}
-
-/* Output a block of characters with common attributes */
-
-static int _new_packet(chtype attr, bool rev, int len, int col, int row,
-#ifdef PDC_WIDE
-                       XChar2b *text)
-#else
-                       char *text)
-#endif
-{
-    GC gc;
-    int xpos, ypos;
-    short fore, back;
-
-    PDC_pair_content(PAIR_NUMBER(attr), &fore, &back);
-
-#ifdef PDC_WIDE
-    text[len].byte1 = text[len].byte2 = 0;
-#else
-    text[len] = '\0';
-#endif
-
-    /* Specify the color table offsets */
-
-    fore |= (attr & A_BOLD) ? 8 : 0;
-    back |= (attr & A_BLINK) ? 8 : 0;
-
-    /* Reverse flag = highlighted selection XOR A_REVERSE set */
-
-    rev ^= !!(attr & A_REVERSE);
-
-    /* Determine which GC to use - normal or italic */
-
-    gc = (attr & A_ITALIC) ? italic_gc : normal_gc;
-
-    /* Draw it */
-
-    XSetForeground(XCURSESDISPLAY, gc, colors[rev ? back : fore]);
-    XSetBackground(XCURSESDISPLAY, gc, colors[rev ? fore : back]);
-
-    _make_xy(col, row, &xpos, &ypos);
-
-#ifdef PDC_WIDE
-    XDrawImageString16(
-#else
-    XDrawImageString(
-#endif
-                     XCURSESDISPLAY, XCURSESWIN, gc, xpos, ypos, text, len);
-
-    /* Underline, etc. */
-
-    if (attr & (A_LEFTLINE|A_RIGHTLINE|A_UNDERLINE))
-    {
-        int k;
-
-        if (SP->line_color != -1)
-            XSetForeground(XCURSESDISPLAY, gc, colors[SP->line_color]);
-
-        if (attr & A_UNDERLINE)     /* UNDER */
-            XDrawLine(XCURSESDISPLAY, XCURSESWIN, gc,
-                      xpos, ypos + 1, xpos + font_width * len, ypos + 1);
-
-        if (attr & A_LEFTLINE)      /* LEFT */
-            for (k = 0; k < len; k++)
-            {
-                int x = xpos + font_width * k - 1;
-                XDrawLine(XCURSESDISPLAY, XCURSESWIN, gc,
-                          x, ypos - font_ascent, x, ypos + font_descent);
-            }
-
-        if (attr & A_RIGHTLINE)     /* RIGHT */
-            for (k = 0; k < len; k++)
-            {
-                int x = xpos + font_width * (k + 1) - 1;
-                XDrawLine(XCURSESDISPLAY, XCURSESWIN, gc,
-                          x, ypos - font_ascent, x, ypos + font_descent);
-            }
-    }
-
-    PDC_LOG(("%s:_new_packet() - row: %d col: %d "
-             "num_cols: %d fore: %d back: %d text:<%s>\n",
-             XCLOGMSG, row, col, len, fore, back, text));
-
-    return OK;
-}
-
-/* The core display routine -- update one line of text */
-
-static int _display_text(const chtype *ch, int row, int col,
-                         int num_cols, bool highlight)
-{
-#ifdef PDC_WIDE
-    XChar2b text[513];
-#else
-    char text[513];
-#endif
-    chtype old_attr, attr;
-    int i, j;
-
-    PDC_LOG(("%s:_display_text() - called: row: %d col: %d "
-             "num_cols: %d\n", XCLOGMSG, row, col, num_cols));
-
-    if (!num_cols)
-        return OK;
-
-    old_attr = *ch & A_ATTRIBUTES;
-
-    for (i = 0, j = 0; j < num_cols; j++)
-    {
-        chtype curr = ch[j];
-
-        attr = curr & A_ATTRIBUTES;
-
-#ifdef CHTYPE_LONG
-        if (attr & A_ALTCHARSET && !(curr & 0xff80))
-        {
-            attr ^= A_ALTCHARSET;
-            curr = acs_map[curr & 0x7f];
-        }
-#endif
-
-#ifndef PDC_WIDE
-        /* Special handling for ACS_BLOCK */
-
-        if (!(curr & A_CHARTEXT))
-        {
-            curr |= ' ';
-            attr ^= A_REVERSE;
-        }
-#endif
-        if (attr != old_attr)
-        {
-            if (_new_packet(old_attr, highlight, i, col, row, text) == ERR)
-                return ERR;
-
-            old_attr = attr;
-            col += i;
-            i = 0;
-        }
-
-#ifdef PDC_WIDE
-        text[i].byte1 = (curr & 0xff00) >> 8;
-        text[i++].byte2 = curr & 0x00ff;
-#else
-        text[i++] = curr & 0xff;
-#endif
-    }
-
-    return _new_packet(old_attr, highlight, i, col, row, text);
-}
-
-static void _get_gc(GC *gc, XFontStruct *font_info, int fore, int back)
-{
-    XGCValues values;
-
-    /* Create default Graphics Context */
-
-    *gc = XCreateGC(XCURSESDISPLAY, XCURSESWIN, 0L, &values);
-
-    /* specify font */
-
-    XSetFont(XCURSESDISPLAY, *gc, font_info->fid);
-
-    XSetForeground(XCURSESDISPLAY, *gc, colors[fore]);
-    XSetBackground(XCURSESDISPLAY, *gc, colors[back]);
-}
-
-static void _initialize_colors(void)
-{
-    colors[COLOR_BLACK]   = xc_app_data.colorBlack;
-    colors[COLOR_RED]     = xc_app_data.colorRed;
-    colors[COLOR_GREEN]   = xc_app_data.colorGreen;
-    colors[COLOR_YELLOW]  = xc_app_data.colorYellow;
-    colors[COLOR_BLUE]    = xc_app_data.colorBlue;
-    colors[COLOR_MAGENTA] = xc_app_data.colorMagenta;
-    colors[COLOR_CYAN]    = xc_app_data.colorCyan;
-    colors[COLOR_WHITE]   = xc_app_data.colorWhite;
-
-    colors[COLOR_BLACK + 8]   = xc_app_data.colorBoldBlack;
-    colors[COLOR_RED + 8]     = xc_app_data.colorBoldRed;
-    colors[COLOR_GREEN + 8]   = xc_app_data.colorBoldGreen;
-    colors[COLOR_YELLOW + 8]  = xc_app_data.colorBoldYellow;
-    colors[COLOR_BLUE + 8]    = xc_app_data.colorBoldBlue;
-    colors[COLOR_MAGENTA + 8] = xc_app_data.colorBoldMagenta;
-    colors[COLOR_CYAN + 8]    = xc_app_data.colorBoldCyan;
-    colors[COLOR_WHITE + 8]   = xc_app_data.colorBoldWhite;
-
-    colors[COLOR_CURSOR] = xc_app_data.cursorColor;
-    colors[COLOR_BORDER] = xc_app_data.borderColor;
-}
-
-static void _refresh_scrollbar(void)
-{
-    XC_LOG(("_refresh_scrollbar() - called\n"));
-
-    if (SP->sb_on)
-    {
-        PDC_SCROLLBAR_TYPE total_y = SP->sb_total_y;
-        PDC_SCROLLBAR_TYPE total_x = SP->sb_total_x;
-
-        if (total_y)
-            XawScrollbarSetThumb(scrollVert,
-                (PDC_SCROLLBAR_TYPE)(SP->sb_cur_y) / total_y,
-                (PDC_SCROLLBAR_TYPE)(SP->sb_viewport_y) / total_y);
-
-        if (total_x)
-            XawScrollbarSetThumb(scrollHoriz,
-                (PDC_SCROLLBAR_TYPE)(SP->sb_cur_x) / total_x,
-                (PDC_SCROLLBAR_TYPE)(SP->sb_viewport_x) / total_x);
-    }
-}
-
-static void _set_cursor_color(chtype *ch, short *fore, short *back)
-{
-    int attr;
-    short f, b;
-
-    attr = PAIR_NUMBER(*ch);
-
-    if (attr)
-    {
-        PDC_pair_content(attr, &f, &b);
-        *fore = 7 - (f % 8);
-        *back = 7 - (b % 8);
-    }
-    else
-    {
-        if (*ch & A_REVERSE)
-        {
-            *back = COLOR_BLACK;
-            *fore = COLOR_WHITE;
-        }
-        else
-        {
-            *back = COLOR_WHITE;
-            *fore = COLOR_BLACK;
-        }
-    }
-}
-
-static void _get_icon(void)
-{
-    XIconSize *icon_size;
-    int size_count = 0;
-    Status rc;
-    unsigned char *bitmap_bits = NULL;
-    unsigned icon_bitmap_width = 0, icon_bitmap_height = 0,
-             file_bitmap_width = 0, file_bitmap_height = 0;
-
-    XC_LOG(("_get_icon() - called\n"));
-
-    icon_size = XAllocIconSize();
-
-    rc = XGetIconSizes(XtDisplay(topLevel),
-                       RootWindowOfScreen(XtScreen(topLevel)),
-                       &icon_size, &size_count);
-
-    /* if the WM can advise on icon sizes... */
-
-    if (rc && size_count)
-    {
-        int i, max_height = 0, max_width = 0;
-
-        PDC_LOG(("%s:size_count: %d rc: %d\n", XCLOGMSG, size_count, rc));
-
-        for (i = 0; i < size_count; i++)
-        {
-            if (icon_size[i].max_width > max_width)
-                max_width = icon_size[i].max_width;
-            if (icon_size[i].max_height > max_height)
-                max_height = icon_size[i].max_height;
-
-            PDC_LOG(("%s:min: %d %d\n", XCLOGMSG,
-                     icon_size[i].min_width, icon_size[i].min_height));
-
-            PDC_LOG(("%s:max: %d %d\n", XCLOGMSG,
-                     icon_size[i].max_width, icon_size[i].max_height));
-
-            PDC_LOG(("%s:inc: %d %d\n", XCLOGMSG,
-                     icon_size[i].width_inc, icon_size[i].height_inc));
-        }
-
-        if (max_width >= big_icon_width && max_height >= big_icon_height)
-        {
-            icon_bitmap_width = big_icon_width;
-            icon_bitmap_height = big_icon_height;
-            bitmap_bits = (unsigned char *)big_icon_bits;
-        }
-        else
-        {
-            icon_bitmap_width = little_icon_width;
-            icon_bitmap_height = little_icon_height;
-            bitmap_bits = (unsigned char *)little_icon_bits;
-        }
-
-    }
-    else  /* use small icon */
-    {
-        icon_bitmap_width = little_icon_width;
-        icon_bitmap_height = little_icon_height;
-        bitmap_bits = (unsigned char *)little_icon_bits;
-    }
-
-    XFree(icon_size);
-
-#ifdef HAVE_XPM_H
-    if (xc_app_data.pixmap && xc_app_data.pixmap[0]) /* supplied pixmap */
-    {
-        XpmReadFileToPixmap(XtDisplay(topLevel),
-                            RootWindowOfScreen(XtScreen(topLevel)),
-                            (char *)xc_app_data.pixmap,
-                            &icon_pixmap, &icon_pixmap_mask, NULL);
-        return;
-    }
-#endif
-
-    if (xc_app_data.bitmap && xc_app_data.bitmap[0]) /* supplied bitmap */
-    {
-        int x_hot = 0, y_hot = 0;
-
-        rc = XReadBitmapFile(XtDisplay(topLevel),
-                             RootWindowOfScreen(XtScreen(topLevel)),
-                             (char *)xc_app_data.bitmap,
-                             &file_bitmap_width, &file_bitmap_height,
-                             &icon_bitmap, &x_hot, &y_hot);
-
-        switch(rc)
-        {
-        case BitmapOpenFailed:
-            fprintf(stderr, "bitmap file %s: not found\n",
-                    xc_app_data.bitmap);
-            break;
-        case BitmapFileInvalid:
-            fprintf(stderr, "bitmap file %s: contents invalid\n",
-                    xc_app_data.bitmap);
-            break;
-        default:
-            return;
-        }
-    }
-
-    icon_bitmap = XCreateBitmapFromData(XtDisplay(topLevel),
-        RootWindowOfScreen(XtScreen(topLevel)),
-        (char *)bitmap_bits, icon_bitmap_width, icon_bitmap_height);
-}
-
-static void _draw_border(void)
-{
-    /* Draw the border if required */
-
-    if (xc_app_data.borderWidth)
-        XDrawRectangle(XCURSESDISPLAY, XCURSESWIN, border_gc,
-                       xc_app_data.borderWidth / 2,
-                       xc_app_data.borderWidth / 2,
-                       window_width - xc_app_data.borderWidth,
-                       window_height - xc_app_data.borderWidth);
-}
-
-/* Redraw the entire screen */
-
-static void _display_screen(void)
-{
-    int row;
-
-    XC_LOG(("_display_screen() - called\n"));
-
-    for (row = 0; row < XCursesLINES; row++)
-    {
-        XC_get_line_lock(row);
-
-        _display_text((const chtype *)(Xcurscr + XCURSCR_Y_OFF(row)),
-                      row, 0, COLS, FALSE);
-
-        XC_release_line_lock(row);
-    }
-
-    _redraw_cursor();
-    _draw_border();
-}
-
-/* Draw changed portions of the screen */
-
-static void _refresh_screen(void)
-{
-    int row, start_col, num_cols;
-
-    XC_LOG(("_refresh_screen() - called\n"));
-
-    for (row = 0; row < XCursesLINES; row++)
-    {
-        num_cols = (int)*(Xcurscr + XCURSCR_LENGTH_OFF + row);
-
-        if (num_cols)
-        {
-            XC_get_line_lock(row);
-
-            start_col = (int)*(Xcurscr + XCURSCR_START_OFF + row);
-
-            _display_text((const chtype *)(Xcurscr + XCURSCR_Y_OFF(row) +
-                          (start_col * sizeof(chtype))), row, start_col, 
-                          num_cols, FALSE);
-
-            *(Xcurscr + XCURSCR_LENGTH_OFF + row) = 0;
-
-            XC_release_line_lock(row);
-        }
-    }
-
-    if (mouse_selection)
-        _selection_off();
-}
-
-static void _handle_expose(Widget w, XtPointer client_data, XEvent *event,
-                           Boolean *unused)
-{
-    XC_LOG(("_handle_expose() - called\n"));
-
-    /* ignore all Exposes except last */
-
-    if (event->xexpose.count)
-        return;
-
-    if (after_first_curses_request && received_map_notify)
-        _display_screen();
-}
-
-static void _handle_nonmaskable(Widget w, XtPointer client_data, XEvent *event,
-                                Boolean *unused)
-{
-    XClientMessageEvent *client_event = (XClientMessageEvent *)event;
-
-    PDC_LOG(("%s:_handle_nonmaskable called: xc_otherpid %d event %d\n",
-             XCLOGMSG, xc_otherpid, event->type));
-
-    if (event->type == ClientMessage)
-    {
-        XC_LOG(("ClientMessage received\n"));
-
-        /* This code used to include handling of WM_SAVE_YOURSELF, but 
-           it resulted in continual failure of THE on my Toshiba laptop. 
-           Removed on 3-3-2001. Now only exits on WM_DELETE_WINDOW. */
-
-        if ((Atom)client_event->data.s[0] == wm_atom[0])
-            _exit_process(0, SIGKILL, "");
-    }
-}
-
-static void XCursesKeyPress(Widget w, XEvent *event, String *params,
-                            Cardinal *nparams)
-{
-    enum { STATE_NORMAL, STATE_COMPOSE, STATE_CHAR };
-
-#ifdef PDC_XIM
-    Status status;
-    wchar_t buffer[120];
-#else
-    unsigned char buffer[120];
-    XComposeStatus compose;
-    static int compose_state = STATE_NORMAL;
-    static int compose_index = 0;
-    int char_idx = 0;
-#endif
-    unsigned long key = 0;
-    int buflen = 40;
-    int i, count;
-    unsigned long modifier = 0;
-    bool key_code = FALSE;
-
-    XC_LOG(("XCursesKeyPress() - called\n"));
-
-    /* Handle modifier keys first; ignore other KeyReleases */
-
-    if (event->type == KeyRelease)
-    {
-        /* The keysym value was set by a previous call to this function 
-           with a KeyPress event (or reset by the mouse event handler) */
-
-        if (SP->return_key_modifiers &&
-#ifndef PDC_XIM
-            keysym != compose_key && 
-#endif
-            IsModifierKey(keysym))
-        {
-            switch (keysym) {
-            case XK_Shift_L:
-                key = KEY_SHIFT_L;
-                break;
-            case XK_Shift_R:
-                key = KEY_SHIFT_R;
-                break;
-            case XK_Control_L:
-                key = KEY_CONTROL_L;
-                break;
-            case XK_Control_R:
-                key = KEY_CONTROL_R;
-                break;
-            case XK_Alt_L:
-                key = KEY_ALT_L;
-                break;
-            case XK_Alt_R:
-                key = KEY_ALT_R;
-            }
-
-            if (key)
-                _send_key_to_curses(key, NULL, TRUE);
-        }
-
-        return;
-    }
-
-    buffer[0] = '\0';
-
-#ifdef PDC_XIM
-    count = XwcLookupString(Xic, &(event->xkey), buffer, buflen,
-                            &keysym, &status);
-#else
-    count = XLookupString(&(event->xkey), (char *)buffer, buflen,
-                          &keysym, &compose);
-#endif
-
-    /* translate keysym into curses key code */
-
-    PDC_LOG(("%s:Key mask: %x\n", XCLOGMSG, event->xkey.state));
-
-#ifdef PDCDEBUG
-    for (i = 0; i < 4; i++)
-        PDC_debug("%s:Keysym %x %d\n", XCLOGMSG,
-                  XKeycodeToKeysym(XCURSESDISPLAY, event->xkey.keycode, i), i);
-#endif
-
-#ifndef PDC_XIM
-
-    /* Check if the key just pressed is the user-specified compose 
-       key; if it is, set the compose state and exit. */
-
-    if (keysym == compose_key)
-    {
-        chtype *ch;
-        int xpos, ypos, save_visibility = SP->visibility;
-        short fore = 0, back = 0;
-
-        /* Change the shape of the cursor to an outline rectangle to
-           indicate we are in "compose" status */
-
-        SP->visibility = 0;
-
-        _redraw_cursor();
-
-        SP->visibility = save_visibility;
-        _make_xy(SP->curscol, SP->cursrow, &xpos, &ypos);
-
-        ch = (chtype *)(Xcurscr + XCURSCR_Y_OFF(SP->cursrow) + 
-             (SP->curscol * sizeof(chtype)));
-
-        _set_cursor_color(ch, &fore, &back);
-
-        XSetForeground(XCURSESDISPLAY, rect_cursor_gc, colors[back]);
-
-        XDrawRectangle(XCURSESDISPLAY, XCURSESWIN, rect_cursor_gc, 
-                       xpos + 1, ypos - font_height + 
-                       xc_app_data.normalFont->descent + 1, 
-                       font_width - 2, font_height - 2);
-
-        compose_state = STATE_COMPOSE;
-        return;
-    }
-
-    switch (compose_state)
-    {
-    case STATE_COMPOSE:
-        if (IsModifierKey(keysym))
-            return;
-
-        if (event->xkey.state & compose_mask)
-        {
-            compose_state = STATE_NORMAL;
-            _redraw_cursor();
-            break;
-        }
-
-        if (buffer[0] && count == 1)
-            key = buffer[0];
-
-        compose_index = -1;
-         
-        for (i = 0; i < (int)strlen(compose_chars); i++)
-            if (compose_chars[i] == key)
-            {
-                compose_index = i;
-                break;
-            }
-
-        if (compose_index == -1)
-        {
-            compose_state = STATE_NORMAL;
-            compose_index = 0;
-            _redraw_cursor();
-            break;
-        }
-
-        compose_state = STATE_CHAR;
-        return;
-
-    case STATE_CHAR:
-        if (IsModifierKey(keysym))
-            return;
-
-        if (event->xkey.state & compose_mask)
-        {
-            compose_state = STATE_NORMAL;
-            _redraw_cursor();
-            break;
-        }
-
-        if (buffer[0] && count == 1)
-            key = buffer[0];
-
-        char_idx = -1;
-
-        for (i = 0; i < MAX_COMPOSE_CHARS; i++)
-            if (compose_lookups[compose_index][i] == key)
-            {
-                char_idx = i;
-                break;
-            }
-
-        if (char_idx == -1)
-        {
-            compose_state = STATE_NORMAL;
-            compose_index = 0;
-            _redraw_cursor();
-            break;
-        }
-
-        _send_key_to_curses(compose_keys[compose_index][char_idx],
-            NULL, FALSE);
-
-        compose_state = STATE_NORMAL;
-        compose_index = 0;
-         
-        _redraw_cursor();
-
-        return;
-    }
-
-#endif /* PDC_XIM */
-
-    /* To get here we are procesing "normal" keys */
-
-    PDC_LOG(("%s:Keysym %x %d\n", XCLOGMSG,
-             XKeycodeToKeysym(XCURSESDISPLAY, event->xkey.keycode, key), key));
-
-    if (SP->save_key_modifiers)
-    {
-        /* 0x10: usually, numlock modifier */
-
-        if (event->xkey.state & Mod2Mask)
-            modifier |= PDC_KEY_MODIFIER_NUMLOCK;
-
-        /* 0x01: shift modifier */
-
-        if (event->xkey.state & ShiftMask)
-            modifier |= PDC_KEY_MODIFIER_SHIFT;
-
-        /* 0x04: control modifier */
-
-        if (event->xkey.state & ControlMask)
-            modifier |= PDC_KEY_MODIFIER_CONTROL;
-
-        /* 0x08: usually, alt modifier */
-
-        if (event->xkey.state & Mod1Mask)
-            modifier |= PDC_KEY_MODIFIER_ALT;
-    }
-
-    for (i = 0; key_table[i].keycode; i++)
-    {
-        if (key_table[i].keycode == keysym)
-        {
-            PDC_LOG(("%s:State %x\n", XCLOGMSG, event->xkey.state));
-
-            /* ControlMask: 0x04: control modifier
-               Mod1Mask: 0x08: usually, alt modifier
-               Mod2Mask: 0x10: usually, numlock modifier
-               ShiftMask: 0x01: shift modifier */
-
-            if ((event->xkey.state & ShiftMask) ||
-                (key_table[i].numkeypad &&
-                (event->xkey.state & Mod2Mask)))
-            {
-                key = key_table[i].shifted;
-            }
-            else if (event->xkey.state & ControlMask)
-            {
-                key = key_table[i].control;
-            }
-            else if (event->xkey.state & Mod1Mask)
-            {
-                key = key_table[i].alt;
-            }
-
-            /* To get here, we ignore all other modifiers */
-
-            else
-                key = key_table[i].normal;
-
-            key_code = (key > 0x100);
-            break;
-        }
-    }
-
-    if (!key && buffer[0] && count == 1)
-        key = buffer[0];
-
-    PDC_LOG(("%s:Key: %s pressed - %x Mod: %x\n", XCLOGMSG,
-             XKeysymToString(keysym), key, event->xkey.state));
-
-    /* Handle ALT letters and numbers */
-
-    if (event->xkey.state == Mod1Mask)
-    {
-        if (key >= 'A' && key <= 'Z')
-        {
-            key += ALT_A - 'A';
-            key_code = TRUE;
-        }
-
-        if (key >= 'a' && key <= 'z')
-        {
-            key += ALT_A - 'a';
-            key_code = TRUE;
-        }
-
-        if (key >= '0' && key <= '9')
-        {
-            key += ALT_0 - '0';
-            key_code = TRUE;
-        }
-    }
-
-    /* After all that, send the key back to the application if is 
-       NOT zero. */
-
-    if (key)
-    {
-        key |= (modifier << 24);
-
-        _send_key_to_curses(key, NULL, key_code);
-    }
-}
-
-static void XCursesHandleString(Widget w, XEvent *event, String *params,
-                                Cardinal *nparams)
-{
-    unsigned char *ptr;
-
-    if (*nparams != 1)
-        return;
-
-    ptr = (unsigned char *)*params;
-
-    if (ptr[0] == '0' && ptr[1] == 'x' && ptr[2] != '\0')
-    {    
-        unsigned char c;
-        unsigned long total = 0;
-
-        for (ptr += 2; (c = tolower(*ptr)); ptr++)
-        {
-            total <<= 4;
-
-            if (c >= '0' && c <= '9')
-                total += c - '0';
-            else
-                if (c >= 'a' && c <= 'f')
-                    total += c - ('a' - 10);
-                else
-                    break;
-        }
-
-        if (c == '\0')
-            _send_key_to_curses(total, NULL, FALSE);
-    }
-    else
-        for (; *ptr; ptr++)
-            _send_key_to_curses((unsigned long)*ptr, NULL, FALSE);
-}
-
-static void _paste_string(Widget w, XtPointer data, Atom *selection, Atom *type,
-                          XtPointer value, unsigned long *length, int *format)
-{
-    unsigned long i, key;
-    unsigned char *string = value;
-
-    XC_LOG(("_paste_string() - called\n"));
-
-    if (!*type || !*length || !string)
-        return;
-
-    for (i = 0; string[i] && (i < (*length)); i++)
-    {
-        key = string[i];
-
-        if (key == 10)      /* new line - convert to ^M */
-            key = 13;
-
-        _send_key_to_curses(key, NULL, FALSE);
-    }
-
-    XtFree(value);
-}
-
-static void _paste_utf8(Widget w, XtPointer event, Atom *selection, Atom *type,
-                        XtPointer value, unsigned long *length, int *format)
-{
-    wchar_t key;
-    size_t i = 0, len;
-    char *string = value;
-
-    XC_LOG(("_paste_utf8() - called\n"));
-
-    if (!*type || !*length)
-    {
-        XtGetSelectionValue(w, XA_PRIMARY, XA_STRING, _paste_string, 
-                            event, ((XButtonEvent *)event)->time);
-        return;
-    }
-
-    len = *length;
-
-    if (!string)
-        return;
-
-    while (string[i] && (i < len))
-    {
-        int retval = _from_utf8(&key, string + i, len - i);
-
-        if (retval < 1)
-            return;
-
-        if (key == 10)      /* new line - convert to ^M */
-            key = 13;
-
-        _send_key_to_curses(key, NULL, FALSE);
-
-        i += retval;
-    }
-
-    XtFree(value);
-}
-
-static void XCursesPasteSelection(Widget w, XButtonEvent *button_event)
-{
-    XC_LOG(("XCursesPasteSelection() - called\n"));
-
-    XtGetSelectionValue(w, XA_PRIMARY, XA_UTF8_STRING(XtDisplay(w)),
-                        _paste_utf8, (XtPointer)button_event,
-                        button_event->time);
-}
-
-static Boolean _convert_proc(Widget w, Atom *selection, Atom *target,
-                             Atom *type_return, XtPointer *value_return,
-                             unsigned long *length_return, int *format_return)
-{
-    XC_LOG(("_convert_proc() - called\n"));
-
-    if (*target == XA_TARGETS(XtDisplay(topLevel)))
-    {
-        XSelectionRequestEvent *req = XtGetSelectionRequest(w, 
-            *selection, (XtRequestId)NULL);
-
-        Atom *targetP;
-        XPointer std_targets;
-        unsigned long std_length;
-
-        XmuConvertStandardSelection(topLevel, req->time, selection, 
-                                    target, type_return, &std_targets,
-                                    &std_length, format_return);
-
-        *length_return = std_length + 2;
-        *value_return = XtMalloc(sizeof(Atom) * (*length_return));
-
-        targetP = *(Atom**)value_return;
-        *targetP++ = XA_STRING;
-        *targetP++ = XA_UTF8_STRING(XtDisplay(topLevel));
-
-        memmove((void *)targetP, (const void *)std_targets,
-                sizeof(Atom) * std_length);
-
-        XtFree((char *)std_targets);
-        *type_return = XA_ATOM;
-        *format_return = sizeof(Atom) * 8;
-
-        return True;
-    }
-    else if (*target == XA_UTF8_STRING(XtDisplay(topLevel)) ||
-             *target == XA_STRING)
-    {
-        bool utf8 = !(*target == XA_STRING);
-        char *data = XtMalloc(tmpsel_length * 3 + 1);
-        chtype *tmp = tmpsel;
-        int ret_length = 0;
-
-        if (utf8)
-        {
-            while (*tmp)
-                ret_length += _to_utf8(data + ret_length, *tmp++);
-        }
-        else
-            while (*tmp)
-                data[ret_length++] = *tmp++ & 0xff;
-
-        data[ret_length++] = '\0';
-
-        *value_return = data;
-        *length_return = ret_length;
-        *format_return = 8;
-        *type_return = *target;
-
-        return True;
-    }
-    else
-        return XmuConvertStandardSelection(topLevel, CurrentTime, 
-            selection, target, type_return, (XPointer*)value_return,
-            length_return, format_return);
-}
-
-static void _lose_ownership(Widget w, Atom *type)
-{
-    XC_LOG(("_lose_ownership() - called\n"));
-
-    if (tmpsel)
-        free(tmpsel);
-
-    tmpsel = NULL;
-    tmpsel_length = 0;
-    _selection_off();
-}
-
-static void _show_selection(int start_x, int start_y, int end_x, int end_y,
-                            bool highlight)
-{
-    int i, num_cols, start_col, row;
-
-    PDC_LOG(("%s:_show_selection() - called StartX: %d StartY: %d "
-             "EndX: %d EndY: %d Highlight: %d\n", XCLOGMSG,
-             start_x, start_y, end_x, end_y, highlight));
-
-    for (i = 0; i < end_y - start_y + 1; i++)
-    {
-        if (start_y == end_y)       /* only one line */
-        {
-            start_col = start_x;
-            num_cols = end_x - start_x + 1;
-            row = start_y;
-        }
-        else if (!i)            /* first line */
-        {
-            start_col = start_x;
-            num_cols = COLS - start_x;
-            row = start_y;
-        }
-        else if (start_y + i == end_y)  /* last line */
-        {
-            start_col = 0;
-            num_cols = end_x + 1;
-            row = end_y;
-        }
-        else                /* full line */
-        {
-            start_col = 0;
-            num_cols = COLS;
-            row = start_y + i;
-        }
-
-        XC_get_line_lock(row);
-
-        _display_text((const chtype *)(Xcurscr + XCURSCR_Y_OFF(row) +
-                      (start_col * sizeof(chtype))), row, start_col,
-                      num_cols, highlight);
-
-        XC_release_line_lock(row);
-    }
-}
-
-static void _selection_off(void)
-{
-    XC_LOG(("_selection_off() - called\n"));
-
-    _display_screen();
-
-    selection_start_x = selection_start_y = selection_end_x = 
-        selection_end_y = 0;
-
-    mouse_selection = FALSE;
-}
-
-static void _selection_on(int x, int y)
-{
-    XC_LOG(("_selection_on() - called\n"));
-
-    selection_start_x = selection_end_x = x;
-    selection_start_y = selection_end_y = y;
-}
-
-static void _selection_extend(int x, int y)
-{
-    int temp, current_start, current_end, current_start_x, 
-        current_end_x, current_start_y, current_end_y, new_start, 
-        new_end, new_start_x, new_end_x, new_start_y, new_end_y;
-
-    XC_LOG(("_selection_extend() - called\n"));
-
-    mouse_selection = TRUE;
-
-    /* convert x/y coordinates into start/stop */
-
-    current_start = (selection_start_y * COLS) + selection_start_x;
-    current_end = (selection_end_y * COLS) + selection_end_x;
-
-    if (current_start > current_end)
-    {
-        current_start_x = selection_end_x;
-        current_start_y = selection_end_y;
-        current_end_x = selection_start_x;
-        current_end_y = selection_start_y;
-        temp = current_start;
-        current_start = current_end;
-        current_end = temp;
-    }
-    else
-    {
-        current_end_x = selection_end_x;
-        current_end_y = selection_end_y;
-        current_start_x = selection_start_x;
-        current_start_y = selection_start_y;
-    }
-
-    /* Now we have the current selection as a linear expression. 
-       Convert the new position to a linear expression. */
-
-    selection_end_x = x;
-    selection_end_y = y;
-
-    /* convert x/y coordinates into start/stop */
-
-    new_start = (selection_start_y * COLS) + selection_start_x;
-    new_end = (selection_end_y * COLS) + selection_end_x;
-
-    if (new_start > new_end)
-    {
-        new_start_x = selection_end_x;
-        new_start_y = selection_end_y;
-        new_end_x = selection_start_x;
-        new_end_y = selection_start_y;
-        temp = new_start;
-        new_start = new_end;
-        new_end = temp;
-    }
-    else
-    {
-        new_end_x = selection_end_x;
-        new_end_y = selection_end_y;
-        new_start_x = selection_start_x;
-        new_start_y = selection_start_y;
-    }
-
-    if (new_end > current_end)
-        _show_selection(current_end_x, current_end_y, new_end_x, 
-                        new_end_y, TRUE);
-    else if (new_end < current_end)
-        _show_selection(new_end_x, new_end_y, current_end_x, 
-                        current_end_y, FALSE);
-    else if (new_start < current_start)
-        _show_selection(new_start_x, new_start_y, current_start_x, 
-                        current_start_y, TRUE);
-    else if (new_start > current_start)
-        _show_selection(current_start_x, current_start_y, 
-                        new_start_x, new_start_y, FALSE);
-    else
-        _show_selection(current_start_x, current_start_y, 
-                        new_start_x, new_start_y, TRUE);
-}
-
-static void _selection_set(void)
-{
-    int i, j, start, end, start_x, end_x, start_y, end_y, num_cols, 
-        start_col, row, num_chars, ch, last_nonblank, length, newlen;
-    chtype *ptr = NULL;
-
-    XC_LOG(("_selection_set() - called\n"));
-
-    /* convert x/y coordinates into start/stop */
-
-    start = (selection_start_y * COLS) + selection_start_x;
-    end = (selection_end_y * COLS) + selection_end_x;
-
-    if (start == end)
-    {
-        if (tmpsel)
-            free(tmpsel);
-
-        tmpsel = NULL;
-        tmpsel_length = 0;
-
-        return;
-    }
-
-    if (start > end)
-    {
-        start_x = selection_end_x;
-        start_y = selection_end_y;
-        end_x = selection_start_x;
-        end_y = selection_start_y;
-        length = start - end + 1;
-    }
-    else
-    {
-        end_x = selection_end_x;
-        end_y = selection_end_y;
-        start_x = selection_start_x;
-        start_y = selection_start_y;
-        length = end - start + 1;
-    }
-
-    newlen = length + end_y - start_y + 2;
-
-    if (length > (int)tmpsel_length)
-    {
-        if (!tmpsel_length)
-            tmpsel = malloc(newlen * sizeof(chtype));
-        else
-            tmpsel = realloc(tmpsel, newlen * sizeof(chtype));
-    }
-
-    if (!tmpsel)
-    {
-        tmpsel_length = 0;
-        return;
-    }
-
-    tmpsel_length = length;
-    num_chars = 0;
-
-    for (i = 0; i < end_y - start_y + 1; i++)
-    {
-
-        if (start_y == end_y)       /* only one line */
-        {
-            start_col = start_x;
-            num_cols = end_x - start_x + 1;
-            row = start_y;
-        }
-        else if (!i)            /* first line */
-        {
-            start_col = start_x;
-            num_cols = COLS - start_x;
-            row = start_y;
-        }
-        else if (start_y + i == end_y)  /* last line */
-        {
-            start_col = 0;
-            num_cols = end_x + 1;
-            row = end_y;
-        }
-        else                /* full line */
-        {
-            start_col = 0;
-            num_cols = COLS;
-            row = start_y + i;
-        }
-
-        XC_get_line_lock(row);
-
-        ptr = (chtype *)(Xcurscr + XCURSCR_Y_OFF(row) +
-              start_col * sizeof(chtype));
-
-        if (i < end_y - start_y)
-        {
-            last_nonblank = 0;
-
-            for (j = 0; j < num_cols; j++)
-            {
-                ch = (int)(ptr[j] & A_CHARTEXT);
-                if (ch != (int)' ')
-                    last_nonblank = j;
-            }
-        }
-        else
-            last_nonblank = num_cols - 1;
-
-        for (j = 0; j <= last_nonblank; j++)
-            tmpsel[num_chars++] = ptr[j];
-
-        XC_release_line_lock(row);
-
-        if (i < end_y - start_y)
-            tmpsel[num_chars++] = '\n';
-    }
-
-    tmpsel[num_chars] = '\0';
-    tmpsel_length = num_chars;
-}
-
-static void _display_cursor(int old_row, int old_x, int new_row, int new_x)
-{
-    int xpos, ypos, i;
-    chtype *ch;
-    short fore = 0, back = 0;
-
-    PDC_LOG(("%s:_display_cursor() - draw char at row: %d col %d\n",
-             XCLOGMSG, old_row, old_x));
-
-    /* if the cursor position is outside the boundary of the screen, 
-       ignore the request */
-
-    if (old_row >= XCursesLINES || old_x >= COLS ||
-        new_row >= XCursesLINES || new_x >= COLS)
-        return;
-
-    /* display the character at the current cursor position */
-
-    PDC_LOG(("%s:_display_cursor() - draw char at row: %d col %d\n",
-             XCLOGMSG, old_row, old_x));
-
-    _display_text((const chtype *)(Xcurscr + (XCURSCR_Y_OFF(old_row) +
-                  (old_x * sizeof(chtype)))), old_row, old_x, 1, FALSE);
-
-    /* display the cursor at the new cursor position */
-
-    if (!SP->visibility)
-        return;     /* cursor not displayed, no more to do */
-
-    _make_xy(new_x, new_row, &xpos, &ypos);
-
-    ch = (chtype *)(Xcurscr + XCURSCR_Y_OFF(new_row) + new_x * sizeof(chtype));
-
-    _set_cursor_color(ch, &fore, &back);
-
-    if (vertical_cursor)
-    {
-        XSetForeground(XCURSESDISPLAY, rect_cursor_gc, colors[back]);
-
-        for (i = 1; i <= SP->visibility; i++)
-            XDrawLine(XCURSESDISPLAY, XCURSESWIN, rect_cursor_gc,
-                      xpos + i, ypos - xc_app_data.normalFont->ascent,
-                      xpos + i, ypos - xc_app_data.normalFont->ascent + 
-                      font_height - 1);
-    }
-    else
-    {
-        if (SP->visibility == 1)
-        {
-            /* cursor visibility normal */
-
-            XSetForeground(XCURSESDISPLAY, rect_cursor_gc, colors[back]);
-
-            for (i = 0; i < xc_app_data.normalFont->descent + 2; i++)
-                XDrawLine(XCURSESDISPLAY, XCURSESWIN, rect_cursor_gc,
-                          xpos, ypos - 2 + i, xpos + font_width, ypos - 2 + i);
-        }
-        else
-        {
-            /* cursor visibility high */
-#ifdef PDC_WIDE
-            XChar2b buf[2];
-
-            buf[0].byte1 = (*ch & 0xff00) >> 8;
-            buf[0].byte2 = *ch & 0x00ff;
-
-            buf[1].byte1 = buf[1].byte2 = 0;
-#else
-            char buf[2];
-
-            buf[0] = *ch & 0xff;
-            buf[1] = '\0';
-#endif
-            XSetForeground(XCURSESDISPLAY, block_cursor_gc, colors[fore]);
-            XSetBackground(XCURSESDISPLAY, block_cursor_gc, colors[back]);
-#ifdef PDC_WIDE
-            XDrawImageString16(
-#else
-            XDrawImageString(
-#endif
-                             XCURSESDISPLAY, XCURSESWIN, block_cursor_gc,
-                             xpos, ypos, buf, 1);
-        }
-    }
-
-    PDC_LOG(("%s:_display_cursor() - draw cursor at row %d col %d\n",
-             XCLOGMSG, new_row, new_x));
-}
-
-static void _redraw_cursor(void)
-{
-    _display_cursor(SP->cursrow, SP->curscol, SP->cursrow, SP->curscol);
-}
-
-static void _handle_enter_leave(Widget w, XtPointer client_data,
-                                XEvent *event, Boolean *unused)
-{
-    XC_LOG(("_handle_enter_leave called\n"));
-
-    switch(event->type)
-    {
-    case EnterNotify:
-        XC_LOG(("EnterNotify received\n"));
-
-        window_entered = TRUE;
-        break;
-
-    case LeaveNotify:
-        XC_LOG(("LeaveNotify received\n"));
-
-        window_entered = FALSE;
-
-        /* Display the cursor so it stays on while the window is 
-           not current */
-
-        _redraw_cursor();
-        break;
-
-    default:
-        PDC_LOG(("%s:_handle_enter_leave - unknown event %d\n",
-                 XCLOGMSG, event->type));
-    }
-}
-
-static void _send_key_to_curses(unsigned long key, MOUSE_STATUS *ms,
-                                bool key_code)
-{
-    PDC_LOG(("%s:_send_key_to_curses() - called: sending %d\n",
-             XCLOGMSG, key));
-
-    SP->key_code = key_code;
-
-    if (XC_write_socket(xc_key_sock, &key, sizeof(unsigned long)) < 0)
-        _exit_process(1, SIGKILL, "exiting from _send_key_to_curses");
-
-    if (ms)
-    {
-        MOUSE_LOG(("%s:writing mouse stuff\n", XCLOGMSG));
-
-        if (XC_write_socket(xc_key_sock, ms, sizeof(MOUSE_STATUS)) < 0)
-            _exit_process(1, SIGKILL, "exiting from _send_key_to_curses");
-    }
-}
-
-static void _blink_cursor(XtPointer unused, XtIntervalId *id)
-{
-    XC_LOG(("_blink_cursor() - called:\n"));
-
-    if (window_entered)
-    {
-        if (visible_cursor)
-        {
-            /* Cursor currently ON, turn it off */
-
-            int save_visibility = SP->visibility;
-            SP->visibility = 0;
-            _redraw_cursor();
-            SP->visibility = save_visibility;
-            visible_cursor = FALSE;
-        }
-        else
-        {
-            /* Cursor currently OFF, turn it on */
-
-            _redraw_cursor();
-            visible_cursor = TRUE;
-        }
-    }
-
-    XtAppAddTimeOut(app_context, xc_app_data.cursorBlinkRate,
-                    _blink_cursor, NULL);
-}
-
-static void XCursesButton(Widget w, XEvent *event, String *params,
-                          Cardinal *nparams)
-{
-    int button_no;
-    static int last_button_no = 0;
-    static Time last_button_press_time = 0;
-    MOUSE_STATUS save_mouse_status;
-    bool send_key = TRUE;
-    static bool remove_release;
-    static bool handle_real_release;
-
-    XC_LOG(("XCursesButton() - called\n"));
-
-    keysym = 0; /* suppress any modifier key return */
-
-    save_mouse_status = Mouse_status;
-    button_no = event->xbutton.button;
-
-    /* It appears that under X11R6 (at least on Linux), that an
-       event_type of ButtonMotion does not include the mouse button in
-       the event. The following code is designed to cater for this
-       situation. */
-
-    if (!button_no)
-        button_no = last_button_no;
-
-    last_button_no = button_no;
-
-    Mouse_status.changes = 0;
-
-    switch(event->type)
-    {
-    case ButtonPress:
-        /* Handle button 4 and 5, which are normally mapped to the wheel
-           mouse scroll up and down, and button 6 and 7, which are
-           normally mapped to the wheel mouse scroll left and right */
-
-        if (button_no >= 4 && button_no <= 7)
-        {
-            /* Send the KEY_MOUSE to curses program */
-
-            memset(&Mouse_status, 0, sizeof(Mouse_status));
-
-            switch(button_no)
-            {
-               case 4:
-                  Mouse_status.changes = PDC_MOUSE_WHEEL_UP;
-                  break;
-               case 5:
-                  Mouse_status.changes = PDC_MOUSE_WHEEL_DOWN;
-                  break;
-               case 6:
-                  Mouse_status.changes = PDC_MOUSE_WHEEL_LEFT;
-                  break;
-               case 7:
-                  Mouse_status.changes = PDC_MOUSE_WHEEL_RIGHT;
-            }
-
-            MOUSE_X_POS = MOUSE_Y_POS = -1;
-            _send_key_to_curses(KEY_MOUSE, &Mouse_status, TRUE);
-            remove_release = TRUE;
-
-            return;
-        }
-
-        if (button_no == 2 &&
-            (!SP->_trap_mbe || (event->xbutton.state & ShiftMask)))
-        {
-            XCursesPasteSelection(drawing, (XButtonEvent *)event);
-            remove_release = TRUE;
-
-            return;
-        }
-
-        remove_release = False;
-        handle_real_release = False;
-
-        MOUSE_LOG(("\nButtonPress\n"));
-
-        if ((event->xbutton.time - last_button_press_time) <
-            xc_app_data.doubleClickPeriod)
-        {
-            MOUSE_X_POS = save_mouse_status.x;
-            MOUSE_Y_POS = save_mouse_status.y;
-            BUTTON_STATUS(button_no) = BUTTON_DOUBLE_CLICKED;
-
-            _selection_off();
-            remove_release = True;
-        }
-        else
-        {
-            napms(SP->mouse_wait);
-            event->type = ButtonRelease;
-            XSendEvent(event->xbutton.display, event->xbutton.window,
-                       True, 0, event);
-            last_button_press_time = event->xbutton.time;
-
-            return;
-        }
-
-        last_button_press_time = event->xbutton.time;
-        break;
-
-    case MotionNotify:
-        MOUSE_LOG(("\nMotionNotify: y: %d x: %d Width: %d "
-                   "Height: %d\n", event->xbutton.y, event->xbutton.x, 
-                   font_width, font_height));
-
-        MOUSE_X_POS = (event->xbutton.x - xc_app_data.borderWidth) /
-                      font_width;
-        MOUSE_Y_POS = (event->xbutton.y - xc_app_data.borderWidth) /
-                      font_height;
-
-        if (button_no == 1 &&
-            (!SP->_trap_mbe || (event->xbutton.state & ShiftMask)))
-        {
-            _selection_extend(MOUSE_X_POS, MOUSE_Y_POS);
-            send_key = FALSE;
-        }
-        else
-            _selection_off();
-
-        /* Throw away mouse movements if they are in the same character 
-           position as the last mouse event, or if we are currently in 
-           the middle of a double click event. */
-
-        if ((MOUSE_X_POS == save_mouse_status.x &&
-             MOUSE_Y_POS == save_mouse_status.y) || 
-             save_mouse_status.button[button_no - 1] == BUTTON_DOUBLE_CLICKED)
-        {
-            send_key = FALSE;
-            break;
-        }
-
-        Mouse_status.changes |= PDC_MOUSE_MOVED;
-        break;
-
-    case ButtonRelease:
-        if (remove_release)
-        {
-            MOUSE_LOG(("Release at: %ld - removed\n", event->xbutton.time));
-            return;
-        }
-        else
-        {
-            MOUSE_X_POS = (event->xbutton.x - xc_app_data.borderWidth) /
-                          font_width;
-            MOUSE_Y_POS = (event->xbutton.y - xc_app_data.borderWidth) /
-                          font_height;
-
-            if (!handle_real_release)
-            {
-                if ((event->xbutton.time - last_button_press_time) <
-                    SP->mouse_wait && 
-                    (event->xbutton.time != last_button_press_time))
-                {
-                    /* The "real" release was shorter than usleep() time;
-                       therefore generate a click event */
-
-                    MOUSE_LOG(("Release at: %ld - click\n",
-                               event->xbutton.time));
-
-                    BUTTON_STATUS(button_no) = BUTTON_CLICKED;
-
-                    if (button_no == 1 && mouse_selection &&
-                        (!SP->_trap_mbe || (event->xbutton.state & ShiftMask)))
-                    {
-                        send_key = FALSE;
-
-                        if (XtOwnSelection(topLevel, XA_PRIMARY, 
-                                           event->xbutton.time, _convert_proc,
-                                           _lose_ownership, NULL) == False)
-                            _selection_off();
-                    }
-                    else
-                        _selection_off();
-
-                    /* Ensure the "pseudo" release event is ignored */
-
-                    remove_release = True;
-                    handle_real_release = False;
-                    break;
-                }
-                else
-                {
-                    /* Button release longer than usleep() time; 
-                       therefore generate a press and wait for the real 
-                       release to occur later. */
-
-                    MOUSE_LOG(("Generated Release at: %ld - "
-                               "press & release\n", event->xbutton.time));
-
-                    BUTTON_STATUS(button_no) = BUTTON_PRESSED;
-
-                    if (button_no == 1 &&
-                        (!SP->_trap_mbe || (event->xbutton.state & ShiftMask)))
-                    {
-                        _selection_off();
-                        _selection_on(MOUSE_X_POS, MOUSE_Y_POS);
-                    }
-
-                    handle_real_release = True;
-                    break;
-                }
-            }
-            else
-            {
-                MOUSE_LOG(("Release at: %ld - released\n",
-                           event->xbutton.time));
-            }
-        }
-
-        MOUSE_LOG(("\nButtonRelease\n"));
-
-        BUTTON_STATUS(button_no) = BUTTON_RELEASED;
-
-        if (button_no == 1 && mouse_selection &&
-            (!SP->_trap_mbe || (event->xbutton.state & ShiftMask)))
-        {
-            send_key = FALSE;
-
-            if (XtOwnSelection(topLevel, XA_PRIMARY, 
-                               event->xbutton.time, _convert_proc, 
-                               _lose_ownership, NULL) == False)
-                _selection_off();
-
-            _selection_set();
-        }
-        else
-            _selection_off();
-
-        break;
-    }
-
-    /* Set up the mouse status fields in preparation for sending */
-
-    Mouse_status.changes |= 1 << (button_no - 1);
-
-    if (Mouse_status.changes & PDC_MOUSE_MOVED &&
-        BUTTON_STATUS(button_no) == BUTTON_PRESSED)
-        BUTTON_STATUS(button_no) = BUTTON_MOVED;
-
-    if (event->xbutton.state & ShiftMask)
-        BUTTON_STATUS(button_no) |= BUTTON_SHIFT;
-    if (event->xbutton.state & ControlMask)
-        BUTTON_STATUS(button_no) |= BUTTON_CONTROL;
-    if (event->xbutton.state & Mod1Mask)
-        BUTTON_STATUS(button_no) |= BUTTON_ALT;
-
-    /* If we are ignoring the event, or the mouse position is outside
-       the bounds of the screen (because of the border), return here */
-
-    MOUSE_LOG(("Button: %d x: %d y: %d Button status: %x "
-        "Mouse status: %x\n", button_no, MOUSE_X_POS, MOUSE_Y_POS,
-        BUTTON_STATUS(button_no), Mouse_status.changes));
-
-    MOUSE_LOG(("Send: %d Button1: %x Button2: %x Button3: %x %d %d\n",
-        send_key, BUTTON_STATUS(1), BUTTON_STATUS(2), 
-        BUTTON_STATUS(3), XCursesLINES, XCursesCOLS));
-
-    if (!send_key || MOUSE_X_POS < 0 || MOUSE_X_POS >= XCursesCOLS ||
-        MOUSE_Y_POS < 0 || MOUSE_Y_POS >= XCursesLINES)
-        return;
-
-    /* Send the KEY_MOUSE to curses program */
-
-    _send_key_to_curses(KEY_MOUSE, &Mouse_status, TRUE);
-}
-
-static void _scroll_up_down(Widget w, XtPointer client_data,
-                            XtPointer call_data)
-{
-    int pixels = (long) call_data;
-    int total_y = SP->sb_total_y * font_height;
-    int viewport_y = SP->sb_viewport_y * font_height;
-    int cur_y = SP->sb_cur_y * font_height;
-
-    /* When pixels is negative, right button pressed, move data down,
-       thumb moves up.  Otherwise, left button pressed, pixels positive,
-       move data up, thumb down. */
-
-    cur_y += pixels;
-
-    /* limit panning to size of overall */
-
-    if (cur_y < 0)
-        cur_y = 0;
-    else
-        if (cur_y > (total_y - viewport_y))
-            cur_y = total_y - viewport_y;
-
-    SP->sb_cur_y = cur_y / font_height;
-
-    XawScrollbarSetThumb(w, (double)((double)cur_y / (double)total_y),
-                         (double)((double)viewport_y / (double)total_y));
-
-    /* Send a key: if pixels negative, send KEY_SCROLL_DOWN */
-
-    _send_key_to_curses(KEY_SF, NULL, TRUE);
-}
-
-static void _scroll_left_right(Widget w, XtPointer client_data,
-                               XtPointer call_data)
-{
-    int pixels = (long) call_data;
-    int total_x = SP->sb_total_x * font_width;
-    int viewport_x = SP->sb_viewport_x * font_width;
-    int cur_x = SP->sb_cur_x * font_width;
-
-    cur_x += pixels;
-
-    /* limit panning to size of overall */
-
-    if (cur_x < 0)
-        cur_x = 0;
-    else
-        if (cur_x > (total_x - viewport_x))
-            cur_x = total_x - viewport_x;
-
-    SP->sb_cur_x = cur_x / font_width;
-
-    XawScrollbarSetThumb(w, (double)((double)cur_x / (double)total_x),
-                         (double)((double)viewport_x / (double)total_x));
-
-    _send_key_to_curses(KEY_SR, NULL, TRUE);
-}
-
-static void _thumb_up_down(Widget w, XtPointer client_data,
-                           XtPointer call_data)
-{
-    double percent = *(double *) call_data;
-    double total_y = (double)SP->sb_total_y;
-    double viewport_y = (double)SP->sb_viewport_y;
-    int cur_y = SP->sb_cur_y;
-
-    /* If the size of the viewport is > overall area simply return, 
-       as no scrolling is permitted. */
-
-    if (SP->sb_viewport_y >= SP->sb_total_y)
-        return;
-
-    if ((SP->sb_cur_y = (int)((double)total_y * percent)) >=
-        (total_y - viewport_y))
-        SP->sb_cur_y = total_y - viewport_y;
-
-    XawScrollbarSetThumb(w, (double)(cur_y / total_y),
-                         (double)(viewport_y / total_y));
-
-    _send_key_to_curses(KEY_SF, NULL, TRUE);
-}
-
-static void _thumb_left_right(Widget w, XtPointer client_data,
-                  XtPointer call_data)
-{
-    double percent = *(double *) call_data;
-    double total_x = (double)SP->sb_total_x;
-    double viewport_x = (double)SP->sb_viewport_x;
-    int cur_x = SP->sb_cur_x;
-
-    if (SP->sb_viewport_x >= SP->sb_total_x)
-        return;
-
-    if ((SP->sb_cur_x = (int)((float)total_x * percent)) >=
-        (total_x - viewport_x))
-        SP->sb_cur_x = total_x - viewport_x;
-
-    XawScrollbarSetThumb(w, (double)(cur_x / total_x),
-                         (double)(viewport_x / total_x));
-    
-    _send_key_to_curses(KEY_SR, NULL, TRUE);
-}
-
-static void _exit_process(int rc, int sig, char *msg)
-{
-    if (rc || sig)
-        fprintf(stderr, "%s:_exit_process() - called: rc:%d sig:%d <%s>\n",
-                XCLOGMSG, rc, sig, msg);
-
-    shmdt((char *)SP);
-    shmdt((char *)Xcurscr);
-    shmctl(shmidSP, IPC_RMID, 0);
-    shmctl(shmid_Xcurscr, IPC_RMID, 0);
-
-    if (bitmap_file)
-    {
-        XFreePixmap(XCURSESDISPLAY, icon_bitmap);
-        free(bitmap_file);
-    }
-
-#ifdef HAVE_XPM_H
-    if (pixmap_file)
-    {
-        XFreePixmap(XCURSESDISPLAY, icon_pixmap);
-        XFreePixmap(XCURSESDISPLAY, icon_pixmap_mask);
-        free(pixmap_file);
-    }
-#endif
-    XFreeGC(XCURSESDISPLAY, normal_gc);
-    XFreeGC(XCURSESDISPLAY, italic_gc);
-    XFreeGC(XCURSESDISPLAY, block_cursor_gc);
-    XFreeGC(XCURSESDISPLAY, rect_cursor_gc);
-    XFreeGC(XCURSESDISPLAY, border_gc);
-#ifdef PDC_XIM
-    XDestroyIC(Xic);
-#endif
-
-    shutdown(xc_display_sock, 2);
-    close(xc_display_sock);
-
-    shutdown(xc_exit_sock, 2);
-    close(xc_exit_sock);
-
-    shutdown(xc_key_sock, 2);
-    close(xc_key_sock);
-
-    if (sig)
-        kill(xc_otherpid, sig); /* to kill parent process */
-
-    _exit(rc);
-}
-
-static void _resize(void)
-{
-    short save_atrtab[PDC_COLOR_PAIRS * 2]; 
-
-    after_first_curses_request = FALSE;
-
-    SP->lines = XCursesLINES = ((resize_window_height -
-        (2 * xc_app_data.borderWidth)) / font_height);
-
-    LINES = XCursesLINES - SP->linesrippedoff - SP->slklines;
-
-    SP->cols = COLS = XCursesCOLS = ((resize_window_width -
-        (2 * xc_app_data.borderWidth)) / font_width);
-
-    window_width = resize_window_width;
-    window_height = resize_window_height;
-    visible_cursor = TRUE;
-
-    _draw_border();
-
-    /* Detach and drop the current shared memory segment and create and
-       attach to a new segment */
-
-    memcpy(save_atrtab, xc_atrtab, sizeof(save_atrtab));
-
-    SP->XcurscrSize = XCURSCR_SIZE;
-    shmdt((char *)Xcurscr);
-    shmctl(shmid_Xcurscr, IPC_RMID, 0);
-
-    if ((shmid_Xcurscr = shmget(shmkey_Xcurscr,
-        SP->XcurscrSize + XCURSESSHMMIN, 0700 | IPC_CREAT)) < 0)
-    { 
-        perror("Cannot allocate shared memory for curscr");
-
-        _exit_process(4, SIGKILL, "exiting from _process_curses_requests");
-    } 
-
-    Xcurscr = (unsigned char*)shmat(shmid_Xcurscr, 0, 0);
-    memset(Xcurscr, 0, SP->XcurscrSize);
-    xc_atrtab = (short *)(Xcurscr + XCURSCR_ATRTAB_OFF);
-    memcpy(xc_atrtab, save_atrtab, sizeof(save_atrtab));
-}
-
-/* For PDC_set_title() */
-
-static void _set_title(void)
-{
-    char title[1024];   /* big enough for window title */ 
-    int pos;
-
-    if ((XC_read_socket(xc_display_sock, &pos, sizeof(int)) < 0) ||
-        (XC_read_socket(xc_display_sock, title, pos) < 0))
-    {
-        _exit_process(5, SIGKILL, "exiting from _set_title");
-    }
-
-    XtVaSetValues(topLevel, XtNtitle, title, NULL);
-}
-
-/* For color_content() */
-
-static void _get_color(void)
-{
-    XColor *tmp = (XColor *)(Xcurscr + XCURSCR_XCOLOR_OFF);
-    int index = tmp->pixel;
-    Colormap cmap = DefaultColormap(XCURSESDISPLAY,
-                                    DefaultScreen(XCURSESDISPLAY));
-
-    if (index < 0 || index >= MAX_COLORS)
-        _exit_process(4, SIGKILL, "exiting from _get_color");
-
-    tmp->pixel = colors[index];
-    XQueryColor(XCURSESDISPLAY, cmap, tmp);
-}
-
-/* For init_color() */
-
-static void _set_color(void)
-{
-    XColor *tmp = (XColor *)(Xcurscr + XCURSCR_XCOLOR_OFF);
-    int index = tmp->pixel;
-    Colormap cmap = DefaultColormap(XCURSESDISPLAY,
-                                    DefaultScreen(XCURSESDISPLAY));
-
-    if (index < 0 || index >= MAX_COLORS)
-        _exit_process(4, SIGKILL, "exiting from _set_color");
-
-    if (XAllocColor(XCURSESDISPLAY, cmap, tmp))
-    {
-        XFreeColors(XCURSESDISPLAY, cmap, colors + index, 1, 0);
-        colors[index] = tmp->pixel;
-
-        _display_screen();
-    }
-}
-
-/* For PDC_getclipboard() */
-
-static void _get_selection(Widget w, XtPointer data, Atom *selection,
-                           Atom *type, XtPointer value,
-                           unsigned long *length, int *format)
-{
-    unsigned char *src = value;
-    int pos, len = *length;
-
-    XC_LOG(("_get_selection() - called\n"));
-
-    if (!value && !len)
-    {
-        if (XC_write_display_socket_int(PDC_CLIP_EMPTY) < 0)
-            _exit_process(4, SIGKILL, "exiting from _get_selection");
-    }
-    else
-    {
-        /* Here all is OK, send PDC_CLIP_SUCCESS, then length, then 
-           contents */
-
-        if (XC_write_display_socket_int(PDC_CLIP_SUCCESS) < 0)
-            _exit_process(4, SIGKILL, "exiting from _get_selection");
-
-        if (XC_write_display_socket_int(len) < 0)
-            _exit_process(4, SIGKILL, "exiting from _get_selection");
-
-        for (pos = 0; pos < len; pos++)
-        {
-#ifdef PDC_WIDE
-            wchar_t c;
-#else
-            unsigned char c;
-#endif
-            c = *src++;
-
-            if (XC_write_socket(xc_display_sock, &c, sizeof(c)) < 0)
-                _exit_process(4, SIGKILL, "exiting from _get_selection");
-        }
-    }
-}
-
-#ifdef PDC_WIDE
-static void _get_selection_utf8(Widget w, XtPointer data, Atom *selection,
-                                Atom *type, XtPointer value,
-                                unsigned long *length, int *format)
-{
-    int len = *length;
-
-    XC_LOG(("_get_selection_utf8() - called\n"));
-
-    if (!*type || !*length)
-    {
-        XtGetSelectionValue(w, XA_PRIMARY, XA_STRING, _get_selection,
-                            (XtPointer)NULL, 0);
-        return;
-    }
-
-    if (!value && !len)
-    {
-        if (XC_write_display_socket_int(PDC_CLIP_EMPTY) >= 0)
-            return;
-    }
-    else
-    {
-        wchar_t *wcontents = malloc((len + 1) * sizeof(wchar_t));
-        char *src = value;
-        int i = 0;
-
-        while (*src && i < (*length))
-        {
-            int retval = _from_utf8(wcontents + i, src, len);
-
-            src += retval;
-            len -= retval;
-            i++;
-        }
-
-        wcontents[i] = 0;
-        len = i;
-
-        /* Here all is OK, send PDC_CLIP_SUCCESS, then length, then 
-           contents */
-
-        if (XC_write_display_socket_int(PDC_CLIP_SUCCESS) >= 0)
-            if (XC_write_display_socket_int(len) >= 0)
-                if (XC_write_socket(xc_display_sock, 
-                    wcontents, len * sizeof(wchar_t)) >= 0)
-                {
-                    free(wcontents);
-                    return;
-                }
-    }
-
-    _exit_process(4, SIGKILL, "exiting from _get_selection_utf8");
-}
-#endif
-
-/* For PDC_setclipboard() */
-
-static void _set_selection(void)
-{
-    long length, pos;
-    int status;
-
-    if (XC_read_socket(xc_display_sock, &length, sizeof(long)) < 0)
-        _exit_process(5, SIGKILL, "exiting from _set_selection");
-
-    if (length > (long)tmpsel_length)
-    {
-        if (!tmpsel_length)
-            tmpsel = malloc((length + 1) * sizeof(chtype));
-        else
-            tmpsel = realloc(tmpsel, (length + 1) * sizeof(chtype));
-    }
-
-    if (!tmpsel)
-        if (XC_write_display_socket_int(PDC_CLIP_MEMORY_ERROR) < 0)
-            _exit_process(4, SIGKILL, "exiting from _set_selection");
-
-    for (pos = 0; pos < length; pos++)
-    {
-#ifdef PDC_WIDE
-        wchar_t c;
-#else
-        unsigned char c;
-#endif
-        if (XC_read_socket(xc_display_sock, &c, sizeof(c)) < 0)
-            _exit_process(5, SIGKILL, "exiting from _set_selection");
-
-        tmpsel[pos] = c;
-    }
-
-    tmpsel_length = length;
-    tmpsel[length] = 0;
-
-    if (XtOwnSelection(topLevel, XA_PRIMARY, CurrentTime,
-                       _convert_proc, _lose_ownership, NULL) == False)
-    {
-        status = PDC_CLIP_ACCESS_ERROR;
-        free(tmpsel);
-        tmpsel = NULL;
-        tmpsel_length = 0;
-    }
-    else
-        status = PDC_CLIP_SUCCESS;
-
-    _selection_off();
-
-    if (XC_write_display_socket_int(status) < 0)
-        _exit_process(4, SIGKILL, "exiting from _set_selection");
-}
-
-/* The curses process is waiting; tell it to continue */
-
-static void _resume_curses(void)
-{
-    if (XC_write_display_socket_int(CURSES_CONTINUE) < 0)
-        _exit_process(4, SIGKILL, "exiting from _process_curses_requests");
-}
-
-/* The curses process sent us a message */
-
-static void _process_curses_requests(XtPointer client_data, int *fid,
-                                     XtInputId *id) 
-{ 
-    struct timeval socket_timeout = {0};
-    int s;
-    int old_row, new_row;
-    int old_x, new_x;
-    int pos, num_cols;
-
-    char buf[12];       /* big enough for 2 integers */ 
-
-    XC_LOG(("_process_curses_requests() - called\n"));
-
-    if (!received_map_notify) 
-        return; 
-
-    FD_ZERO(&xc_readfds); 
-    FD_SET(xc_display_sock, &xc_readfds); 
-
-    if ((s = select(FD_SETSIZE, (FD_SET_CAST)&xc_readfds, NULL, 
-                    NULL, &socket_timeout)) < 0)
-        _exit_process(2, SIGKILL, "exiting from _process_curses_requests"
-                                  " - select failed");
-
-    if (!s)     /* no requests pending - should never happen! */ 
-        return; 
-
-    if (FD_ISSET(xc_display_sock, &xc_readfds)) 
-    { 
-        /* read first integer to determine total message has been
-           received */
-
-        XC_LOG(("_process_curses_requests() - before XC_read_socket()\n"));
-
-        if (XC_read_socket(xc_display_sock, &num_cols, sizeof(int)) < 0) 
-            _exit_process(3, SIGKILL, "exiting from _process_curses_requests"
-                                      " - first read");
-
-        XC_LOG(("_process_curses_requests() - after XC_read_socket()\n"));
-
-        after_first_curses_request = TRUE;
-
-        switch(num_cols) 
-        { 
-        case CURSES_EXIT:   /* request from curses to stop */
-            XC_LOG(("CURSES_EXIT received from child\n"));
-            _exit_process(0, 0, "XCursesProcess requested to exit by child");
-            break;
-
-        case CURSES_BELL:
-            XC_LOG(("CURSES_BELL received from child\n"));
-            XBell(XCURSESDISPLAY, 50);
-            break;
-
-        /* request from curses to confirm completion of display */ 
-
-        case CURSES_REFRESH:
-            XC_LOG(("CURSES_REFRESH received from child\n"));
-            _refresh_screen(); 
-            _resume_curses();
-            break;
-
-        case CURSES_REFRESH_SCROLLBAR:
-            _refresh_scrollbar();
-            break;
-
-        case CURSES_CURSOR:
-            XC_LOG(("CURSES_CURSOR received from child\n"));
-
-            if (XC_read_socket(xc_display_sock, buf, sizeof(int) * 2) < 0)
-                _exit_process(5, SIGKILL, "exiting from CURSES_CURSOR "
-                                          "_process_curses_requests");
-
-            memcpy(&pos, buf, sizeof(int)); 
-            old_row = pos & 0xFF;
-            old_x = pos >> 8;
-
-            memcpy(&pos, buf + sizeof(int), sizeof(int));
-            new_row = pos & 0xFF;
-            new_x = pos >> 8;
-
-            visible_cursor = TRUE;
-            _display_cursor(old_row, old_x, new_row, new_x);
-            break;
-
-        case CURSES_DISPLAY_CURSOR:
-            XC_LOG(("CURSES_DISPLAY_CURSOR received from child. Vis now: "));
-            XC_LOG((visible_cursor ? "1\n" : "0\n"));
-
-            /* If the window is not active, ignore this command. The
-               cursor will stay solid. */
-
-            if (window_entered)
-            { 
-                if (visible_cursor) 
-                { 
-                    /* Cursor currently ON, turn it off */
-
-                    int save_visibility = SP->visibility;
-                    SP->visibility = 0;
-                    _redraw_cursor();
-                    SP->visibility = save_visibility;
-                    visible_cursor = FALSE;
-                }
-                else 
-                { 
-                    /* Cursor currently OFF, turn it on */ 
-
-                    _redraw_cursor();
-                    visible_cursor = TRUE;
-                } 
-            } 
-
-            break; 
-
-        case CURSES_TITLE:
-            XC_LOG(("CURSES_TITLE received from child\n"));
-            _set_title();
-            break;
-
-        case CURSES_RESIZE:
-            XC_LOG(("CURSES_RESIZE received from child\n"));
-            _resize();
-            _resume_curses(); 
-            break; 
-
-        case CURSES_GET_SELECTION:
-            XC_LOG(("CURSES_GET_SELECTION received from child\n"));
-
-            _resume_curses();
-
-            XtGetSelectionValue(topLevel, XA_PRIMARY,
-#ifdef PDC_WIDE
-                                XA_UTF8_STRING(XtDisplay(topLevel)),
-                                _get_selection_utf8,
-#else
-                                XA_STRING, _get_selection,
-#endif
-                                (XtPointer)NULL, 0);
-
-            break;
-
-        case CURSES_SET_SELECTION:
-            XC_LOG(("CURSES_SET_SELECTION received from child\n"));
-            _set_selection();
-            break;
-
-        case CURSES_CLEAR_SELECTION:
-            XC_LOG(("CURSES_CLEAR_SELECTION received from child\n"));
-            _resume_curses();
-            _selection_off();
-            break;
-
-        case CURSES_GET_COLOR:
-            XC_LOG(("CURSES_GET_COLOR recieved from child\n"));
-            _get_color();
-            _resume_curses();
-            break;
-
-        case CURSES_SET_COLOR:
-            XC_LOG(("CURSES_SET_COLOR recieved from child\n"));
-            _set_color();
-            _resume_curses();
-            break;
-
-        default: 
-            PDC_LOG(("%s:Unknown request %d\n", XCLOGMSG, num_cols));
-        } 
-    } 
-} 
-
-static void _handle_structure_notify(Widget w, XtPointer client_data, 
-                                     XEvent *event, Boolean *unused)
-{
-    XC_LOG(("_handle_structure_notify() - called\n"));
-
-    switch(event->type)
-    {
-    case ConfigureNotify:
-        XC_LOG(("ConfigureNotify received\n"));
-
-        /* Window has been resized, change width and height to send to
-           place_text and place_graphics in next Expose. Also will need
-           to kill (SIGWINCH) curses process if screen size changes. */
-
-        resize_window_width = event->xconfigure.width;
-        resize_window_height = event->xconfigure.height;
-
-        after_first_curses_request = FALSE;
-
-#ifdef SIGWINCH
-        SP->resized = 1;
-
-        kill(xc_otherpid, SIGWINCH);
-#endif
-        _send_key_to_curses(KEY_RESIZE, NULL, TRUE);
-        break;
-
-    case MapNotify:
-        XC_LOG(("MapNotify received\n"));
-
-        received_map_notify = 1;
-
-        _draw_border();
-        break;
-
-    default:
-        PDC_LOG(("%s:_handle_structure_notify - unknown event %d\n",
-                 XCLOGMSG, event->type));
-    }
-}
-
-static RETSIGTYPE _handle_signals(int signo)
-{
-    int flag = CURSES_EXIT;
-
-    PDC_LOG(("%s:_handle_signals() - called: %d\n", XCLOGMSG, signo));
-
-    /* Patch by: Georg Fuchs */
-
-    XCursesSetSignal(signo, _handle_signals);
-
-#ifdef SIGTSTP
-    if (signo == SIGTSTP)
-    {
-        pause();
-        return;
-    }
-#endif
-#ifdef SIGCONT
-    if (signo == SIGCONT)
-        return;
-#endif
-#ifdef SIGCLD
-    if (signo == SIGCLD)
-        return;
-#endif
-#ifdef SIGTTIN
-    if (signo == SIGTTIN)
-        return;
-#endif
-#ifdef SIGWINCH
-    if (signo == SIGWINCH)
-        return;
-#endif
-
-    /* End of patch by: Georg Fuchs */
-
-    XCursesSetSignal(signo, SIG_IGN);
-
-    /* Send a CURSES_EXIT to myself */
-
-    if (XC_write_socket(xc_exit_sock, &flag, sizeof(int)) < 0)
-        _exit_process(7, signo, "exiting from _handle_signals");
-}
-
-#ifdef PDC_XIM
-static void _dummy_handler(Widget w, XtPointer client_data,
-                           XEvent *event, Boolean *unused)
-{
-}
-#endif
-
-int XCursesSetupX(int argc, char *argv[])
-{
-    char *myargv[] = {"PDCurses", NULL};
-    extern bool sb_started;
-
-    int italic_font_valid;
-    XColor pointerforecolor, pointerbackcolor;
-    XrmValue rmfrom, rmto;
-    int i = 0;
-    int minwidth, minheight;
-
-    XC_LOG(("XCursesSetupX called\n"));
-
-    if (!argv)
-    {
-        argv = myargv;
-        argc = 1;
-    }
-
-    program_name = argv[0];
-
-    /* Keep open the 'write' end of the socket so the XCurses process
-       can send a CURSES_EXIT to itself from within the signal handler */
-
-    xc_exit_sock = xc_display_sockets[0];
-    xc_display_sock = xc_display_sockets[1];
-
-    close(xc_key_sockets[0]);
-    xc_key_sock = xc_key_sockets[1];
-
-    /* Trap all signals when XCurses is the child process, but only if
-       they haven't already been ignored by the application. */
-
-    for (i = 0; i < PDC_MAX_SIGNALS; i++)
-        if (XCursesSetSignal(i, _handle_signals) == SIG_IGN)
-            XCursesSetSignal(i, SIG_IGN);
-
-    /* Start defining X Toolkit things */
-
-#if XtSpecificationRelease > 4
-    XtSetLanguageProc(NULL, (XtLanguageProc)NULL, NULL);
-#endif
-
-    /* Exit if no DISPLAY variable set */
-
-    if (!getenv("DISPLAY"))
-    {
-        fprintf(stderr, "Error: no DISPLAY variable set\n");
-        kill(xc_otherpid, SIGKILL);
-        return ERR;
-    }
-
-    /* Initialise the top level widget */
-
-    topLevel = XtVaAppInitialize(&app_context, class_name, options,
-                                 XtNumber(options), &argc, argv, NULL, NULL);
-
-    XtVaGetApplicationResources(topLevel, &xc_app_data, app_resources,
-                                XtNumber(app_resources), NULL);
-
-    /* Check application resource values here */
-
-    font_width = xc_app_data.normalFont->max_bounds.rbearing - 
-                 xc_app_data.normalFont->min_bounds.lbearing;
-
-    font_height = xc_app_data.normalFont->max_bounds.ascent + 
-                  xc_app_data.normalFont->max_bounds.descent;
-
-    font_ascent = xc_app_data.normalFont->max_bounds.ascent;
-    font_descent = xc_app_data.normalFont->max_bounds.descent;
-
-    /* Check that the italic font and normal fonts are the same size */
-    /* This appears backwards */
-
-    italic_font_valid = font_width !=
-        xc_app_data.italicFont->max_bounds.rbearing -
-        xc_app_data.italicFont->min_bounds.lbearing ||
-        font_height !=
-        xc_app_data.italicFont->max_bounds.ascent + 
-        xc_app_data.italicFont->max_bounds.descent;
-
-    /* Calculate size of display window */
-
-    XCursesCOLS = xc_app_data.cols;
-    XCursesLINES = xc_app_data.lines;
-
-    window_width = font_width * XCursesCOLS +
-                   2 * xc_app_data.borderWidth;
-
-    window_height = font_height * XCursesLINES +
-                    2 * xc_app_data.borderWidth;
-
-    minwidth = font_width * 2 + xc_app_data.borderWidth * 2;
-    minheight = font_height * 2 + xc_app_data.borderWidth * 2;
-
-    /* Set up the icon for the application; the default is an internal
-       one for PDCurses. Then set various application level resources. */
-
-    _get_icon();
-
-#ifdef HAVE_XPM_H
-    if (xc_app_data.pixmap && xc_app_data.pixmap[0])
-        XtVaSetValues(topLevel, XtNminWidth, minwidth, XtNminHeight,
-                      minheight, XtNbaseWidth, xc_app_data.borderWidth * 2,
-                      XtNbaseHeight, xc_app_data.borderWidth * 2,
-                      XtNiconPixmap, icon_pixmap,
-                      XtNiconMask, icon_pixmap_mask, NULL);
-    else
-#endif
-        XtVaSetValues(topLevel, XtNminWidth, minwidth, XtNminHeight,
-                      minheight, XtNbaseWidth, xc_app_data.borderWidth * 2,
-                      XtNbaseHeight, xc_app_data.borderWidth * 2,
-                      XtNiconPixmap, icon_bitmap, NULL);
-
-    /* Create a BOX widget in which to draw */
-
-    if (xc_app_data.scrollbarWidth && sb_started)
-    {
-        scrollBox = XtVaCreateManagedWidget(program_name, 
-            scrollBoxWidgetClass, topLevel, XtNwidth, 
-            window_width + xc_app_data.scrollbarWidth, 
-            XtNheight, window_height + xc_app_data.scrollbarWidth,
-            XtNwidthInc, font_width, XtNheightInc, font_height, NULL);
-
-        drawing = XtVaCreateManagedWidget(program_name, 
-            boxWidgetClass, scrollBox, XtNwidth, 
-            window_width, XtNheight, window_height, XtNwidthInc, 
-            font_width, XtNheightInc, font_height, NULL);
-
-        scrollVert = XtVaCreateManagedWidget("scrollVert", 
-            scrollbarWidgetClass, scrollBox, XtNorientation, 
-            XtorientVertical, XtNheight, window_height, XtNwidth, 
-            xc_app_data.scrollbarWidth, NULL);
-
-        XtAddCallback(scrollVert, XtNscrollProc, _scroll_up_down, drawing);
-        XtAddCallback(scrollVert, XtNjumpProc, _thumb_up_down, drawing);
-
-        scrollHoriz = XtVaCreateManagedWidget("scrollHoriz", 
-            scrollbarWidgetClass, scrollBox, XtNorientation, 
-            XtorientHorizontal, XtNwidth, window_width, XtNheight, 
-            xc_app_data.scrollbarWidth, NULL);
-
-        XtAddCallback(scrollHoriz, XtNscrollProc, _scroll_left_right, drawing);
-        XtAddCallback(scrollHoriz, XtNjumpProc, _thumb_left_right, drawing);
-    }
-    else
-    {
-        drawing = XtVaCreateManagedWidget(program_name, boxWidgetClass,
-            topLevel, XtNwidth, window_width, XtNheight, window_height,
-            XtNwidthInc, font_width, XtNheightInc, font_height, NULL);
-
-        XtVaSetValues(topLevel, XtNwidthInc, font_width, XtNheightInc,
-                      font_height, NULL);
-    }
-
-    /* Process any default translations */
-
-    XtAugmentTranslations(drawing,
-                          XtParseTranslationTable(default_translations));
-    XtAppAddActions(app_context, action_table, XtNumber(action_table));
-
-    /* Process the supplied colors */
-
-    _initialize_colors();
-
-    /* Determine text cursor alignment from resources */
-
-    if (!strcmp(xc_app_data.textCursor, "vertical"))
-        vertical_cursor = TRUE;
-
-    /* Now have LINES and COLS. Set these in the shared SP so the curses
-       program can find them. */
-
-    LINES = XCursesLINES;
-    COLS = XCursesCOLS;
-
-    if ((shmidSP = shmget(shmkeySP, sizeof(SCREEN) + XCURSESSHMMIN, 
-        0700 | IPC_CREAT)) < 0)
-    {
-        perror("Cannot allocate shared memory for SCREEN");
-        kill(xc_otherpid, SIGKILL);
-        return ERR;
-    }
-
-    SP = (SCREEN*)shmat(shmidSP, 0, 0);
-    memset(SP, 0, sizeof(SCREEN));
-    SP->XcurscrSize = XCURSCR_SIZE;
-    SP->lines = XCursesLINES;
-    SP->cols = XCursesCOLS;
-
-    SP->mouse_wait = xc_app_data.clickPeriod;
-    SP->audible = TRUE;
-
-    PDC_LOG(("%s:SHM size for curscr %d\n", XCLOGMSG, SP->XcurscrSize));
-
-    if ((shmid_Xcurscr = shmget(shmkey_Xcurscr, SP->XcurscrSize + 
-        XCURSESSHMMIN, 0700 | IPC_CREAT)) < 0)
-    {
-        perror("Cannot allocate shared memory for curscr");
-        kill(xc_otherpid, SIGKILL);
-        shmdt((char *)SP);
-        shmctl(shmidSP, IPC_RMID, 0);
-        return ERR;
-    }
-
-    Xcurscr = (unsigned char *)shmat(shmid_Xcurscr, 0, 0);
-    memset(Xcurscr, 0, SP->XcurscrSize); 
-    xc_atrtab = (short *)(Xcurscr + XCURSCR_ATRTAB_OFF);
-
-    PDC_LOG(("%s:shmid_Xcurscr %d shmkey_Xcurscr %d LINES %d COLS %d\n",
-             XCLOGMSG, shmid_Xcurscr, shmkey_Xcurscr, LINES, COLS));
-
-    /* Add Event handlers to the drawing widget */
-
-    XtAddEventHandler(drawing, ExposureMask, False, _handle_expose, NULL);
-    XtAddEventHandler(drawing, StructureNotifyMask, False, 
-                      _handle_structure_notify, NULL);
-    XtAddEventHandler(drawing, EnterWindowMask | LeaveWindowMask, False,
-                      _handle_enter_leave, NULL);
-    XtAddEventHandler(topLevel, 0, True, _handle_nonmaskable, NULL);
-
-    /* Add input handler from xc_display_sock (requests from curses 
-       program) */
-
-    XtAppAddInput(app_context, xc_display_sock, (XtPointer)XtInputReadMask, 
-                  _process_curses_requests, NULL);
-
-    /* If there is a cursorBlink resource, start the Timeout event */
-
-    if (xc_app_data.cursorBlinkRate)
-        XtAppAddTimeOut(app_context, xc_app_data.cursorBlinkRate,
-                        _blink_cursor, NULL);
-
-    /* Leave telling the curses process that it can start to here so 
-       that when the curses process makes a request, the Xcurses 
-       process can service the request. */
-
-    XC_write_display_socket_int(CURSES_CHILD);
-
-    XtRealizeWidget(topLevel);
-
-    /* Handle trapping of the WM_DELETE_WINDOW property */
-
-    wm_atom[0] = XInternAtom(XtDisplay(topLevel), "WM_DELETE_WINDOW", False);
-
-    XSetWMProtocols(XtDisplay(topLevel), XtWindow(topLevel), wm_atom, 1);
-
-    /* Create the Graphics Context for drawing. This MUST be done AFTER
-       the associated widget has been realized. */
-
-    XC_LOG(("before _get_gc\n"));
-
-    _get_gc(&normal_gc, xc_app_data.normalFont, COLOR_WHITE, COLOR_BLACK);
-
-    _get_gc(&italic_gc, italic_font_valid ? xc_app_data.italicFont : 
-            xc_app_data.normalFont, COLOR_WHITE, COLOR_BLACK);
-
-    _get_gc(&block_cursor_gc, xc_app_data.normalFont,
-            COLOR_BLACK, COLOR_CURSOR);
-
-    _get_gc(&rect_cursor_gc, xc_app_data.normalFont,
-            COLOR_CURSOR, COLOR_BLACK);
-
-    _get_gc(&border_gc, xc_app_data.normalFont, COLOR_BORDER, COLOR_BLACK);
-
-    XSetLineAttributes(XCURSESDISPLAY, rect_cursor_gc, 2,
-                       LineSolid, CapButt, JoinMiter);
-
-    XSetLineAttributes(XCURSESDISPLAY, border_gc, xc_app_data.borderWidth,
-                       LineSolid, CapButt, JoinMiter);
-
-    /* Set the cursor for the application */
-
-    XDefineCursor(XCURSESDISPLAY, XCURSESWIN, xc_app_data.pointer);
-    rmfrom.size = sizeof(Pixel);
-    rmto.size = sizeof(XColor);
-
-    rmto.addr = (XPointer)&pointerforecolor;
-    rmfrom.addr = (XPointer)&(xc_app_data.pointerForeColor);
-    XtConvertAndStore(drawing, XtRPixel, &rmfrom, XtRColor, &rmto);
-
-    rmfrom.size = sizeof(Pixel);
-    rmto.size = sizeof(XColor);
-
-    rmfrom.addr = (XPointer)&(xc_app_data.pointerBackColor);
-    rmto.addr = (XPointer)&pointerbackcolor;
-    XtConvertAndStore(drawing, XtRPixel, &rmfrom, XtRColor, &rmto);
-
-    XRecolorCursor(XCURSESDISPLAY, xc_app_data.pointer,
-                   &pointerforecolor, &pointerbackcolor);
-
-#ifndef PDC_XIM
-
-    /* Convert the supplied compose key to a Keysym */
-
-    compose_key = XStringToKeysym(xc_app_data.composeKey);
-
-    if (compose_key && IsModifierKey(compose_key))
-    {
-        int i, j;
-        KeyCode *kcp;
-        XModifierKeymap *map;
-        KeyCode compose_keycode = XKeysymToKeycode(XCURSESDISPLAY, compose_key);
-
-        map = XGetModifierMapping(XCURSESDISPLAY);
-        kcp = map->modifiermap;
-
-        for (i = 0; i < 8; i++)
-        {
-            for (j = 0; j < map->max_keypermod; j++, kcp++)
-            {
-                if (!*kcp)
-                    continue;
-
-                if (compose_keycode == *kcp)
-                {
-                    compose_mask = state_mask[i];
-                    break;
-                }
-            }
-
-            if (compose_mask)
-                break;
-        }
-
-        XFreeModifiermap(map);
-    }
-
-#else
-    Xim = XOpenIM(XCURSESDISPLAY, NULL, NULL, NULL);
-
-    if (Xim)
-    {
-        Xic = XCreateIC(Xim, XNInputStyle,
-                        XIMPreeditNothing | XIMStatusNothing,
-                        XNClientWindow, XCURSESWIN, NULL);
-    }
-
-    if (Xic)
-    {
-        long im_event_mask;
-
-        XGetICValues(Xic, XNFilterEvents, &im_event_mask, NULL);
-        if (im_event_mask)
-            XtAddEventHandler(drawing, im_event_mask, False,
-                              _dummy_handler, NULL);
-
-        XSetICFocus(Xic);
-    }
-    else
-    {
-        perror("ERROR: Cannot create input context");
-        kill(xc_otherpid, SIGKILL);
-        shmdt((char *)SP);
-        shmdt((char *)Xcurscr);
-        shmctl(shmidSP, IPC_RMID, 0);
-        shmctl(shmid_Xcurscr, IPC_RMID, 0);
-        return ERR;
-    }
-
-#endif
-
-    /* Wait for events */
-
-    XtAppMainLoop(app_context);
-    return OK;          /* won't get here */
-}
diff --git a/src/other/PDCurses/x11/xcurses-config.in b/src/other/PDCurses/x11/xcurses-config.in
deleted file mode 100644
index 55b4704..0000000
--- a/src/other/PDCurses/x11/xcurses-config.in
+++ /dev/null
@@ -1,76 +0,0 @@
-#! /bin/sh
-#
-# The idea to this kind of setup info script was stolen from numerous
-# other packages, such as neon, libxml and gnome.
-#
-# $Id: xcurses-config.in,v 1.6 2007/11/07 23:33:07 wmcbrine Exp $
-#
-
-verdot=3.4
-
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-includedir=@includedir@/xcurses
-
-usage()
-{
-    echo "Usage: xcurses-config [OPTION]"
-    echo ""
-    echo "Available values for OPTION include:"
-    echo ""
-    echo "  --help         display this help and exit"
-    echo "  --cflags       pre-processor and compiler flags"
-    echo "                 [-I$includedir]"
-    echo "  --libs         library linking information"
-    echo "                 [-L$prefix/lib -lXCurses @LDFLAGS@ @MH_XLIBS@ @MH_EXTRA_LIBS@"
-    echo "  --prefix       PDCurses install prefix"
-    echo "                 [$prefix]"
-    echo "  --version      output version information"
-    echo "                 [$verdot]"
-    exit $1
-}
-
-if test $# -eq 0; then
-    usage 1
-fi
-
-while test $# -gt 0; do
-    case "$1" in
-    # this deals with options in the style
-    # --option=value and extracts the value part
-    # [not currently used]
-    -*=*) value=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
-    *) value= ;;
-    esac
-
-    case "$1" in
-    --prefix)
-       echo $prefix
-       ;;
-
-    --version)
-       echo $verdot
-       exit 0
-       ;;
-
-    --help)
-       usage 0
-       ;;
-
-    --cflags)
-       echo -I$includedir
-       ;;
-
-    --libs)
-       echo -L$prefix/lib -lXCurses @LDFLAGS@ @MH_XLIBS@ @MH_EXTRA_LIBS@
-       ;;
-
-    *)
-       usage
-       exit 1
-       ;;
-    esac
-    shift
-done
-
-exit 0
diff --git a/src/other/ares/AUTHORS b/src/other/ares/AUTHORS
deleted file mode 100644
index e197a74..0000000
--- a/src/other/ares/AUTHORS
+++ /dev/null
@@ -1,37 +0,0 @@
-c-ares is based on ares, and these are the people that have worked on it since
-the fork was made:
-
-Alexander Lazic
-Alexey Simak
-Andreas Rieke
-Ashish Sharma
-Brad House
-Brad Spencer
-Bram Matthys
-Dan Fandrich
-Daniel Stenberg
-Dirk Manske
-Dominick Meglio
-Doug Goldstein
-Duncan Wilcox
-Eino Tuominen
-Erik Kline
-George Neill
-Gisle Vanem
-Guilherme Balena Versiani
-Gunter Knauf
-Henrik Stoerner
-James Bursa
-Michael Wallner
-Nick Mathewson
-Phil Blundell
-Ravi Pratap
-Robin Cornelius
-Sebastian at basti79.de
-Shmulik Regev
-Steinar H. Gunderson
-Tofu Linden
-Vlad Dinulescu
-William Ahern
-Yang Tse
-liren at vivisimo.com
diff --git a/src/other/ares/CHANGES b/src/other/ares/CHANGES
deleted file mode 100644
index b6c608d..0000000
--- a/src/other/ares/CHANGES
+++ /dev/null
@@ -1,1156 +0,0 @@
-  Changelog for the c-ares project
-
-Version 1.7.1 (Mar 23, 2010)
-
-* March 23, 2010 (Daniel Stenberg)
-- We switched from CVS to git. See http://github.com/bagder/c-ares
-
-* March 5, 2010 (Daniel Stenberg)
-- Daniel Johnson provided fixes for building with the clang compiler.
-
-* March 5, 2010 (Yang Tse)
-- Added IPv6 name servers support. Implementation has been based on code,
-  comments and feedback provided November and December of 2008 by Daniel
-  Stenberg, Gregor Jasny, Phil Blundell and myself, December 2009 by Cedric
-  Bail, and February 2010 by Jakub Hrozek on the c-ares mailing list. On
-  March I reviewed all that, selected the best of each, and adjusted or
-  extended parts of it to make the best fit.
-
-  The external and visible result of all this is that two new functions are
-  added to the external API, ares_get_servers() and ares_set_servers(), which
-  becomes now the preferred way of getting and setting name servers for any
-  ares channel as these support both IPv4 and IPv6 name servers.
-
-  In order to not break ABI compatibility, ares_init_options() with option
-  mask ARES_OPT_SERVERS and ares_save_options() may still be used in code
-  which is intended to run on IPv4-only stacks. But remember that these
-  functions do not support IPv6 name servers. This implies that if the user
-  is capable of defining or providing an IPv6 name server, and the app is
-  using ares_init_options() or ares_save_options() at some point to handle
-  the name servers, the app will likely loose IPv6 name servers.
-
-* January 28, 2010 (Daniel Stenberg)
-- Tommie Gannert pointed out a silly bug in ares_process_fd() since it didn't
-  check for broken connections like ares_process() did. Based on that, I
-  merged the two functions into a single generic one with two front-ends.
-
-* December 29, 2009 (Yang Tse)
-- Laszlo Tamas Szabo adjusted Makefile.msvc compiler options so that where
-  run-time error checks enabling compiler option /GZ was used it is replaced
-  with equivalent /RTCsu for Visual Studio 2003 and newer versions. Option
-  /GX is replaced with equivalent /EHsc for all versions. Also fixed socket
-  data type for internal configure_socket function.
-
-* December 21, 2009 (Yang Tse)
-- Ingmar Runge noticed that Windows config-win32.h configuration file
-  did not include a definition for HAVE_CLOSESOCKET which resulted in
-  function close() being inappropriately used to close sockets.
-
-Version 1.7.0 (Nov 30, 2009)
-
-* November 26, 2009 (Yang Tse)
-- Larry Lansing fixed ares_parse_srv_reply to properly parse replies
-  which might contain non-SRV answers, skipping over potential non-SRV
-  ones such as CNAMEs.
-
-* November 23, 2009 (Yang Tse)
-- Changed naming convention for c-ares libraries built with MSVC, details
-  and build instructions provided in README.msvc file.
-
-* November 22, 2009 (Yang Tse)
-- Jakub Hrozek fixed more function prototypes in man pages to sync them
-  with the ones declared in ares.h
-
-- Jakub Hrozek renamed addrttl and addr6ttl structs to ares_addrttl and
-  ares_addr6ttl in order to prevent name space pollution, along with
-  necessary changes to code base and man pages.This change does not break
-  ABI, there is no need to recompile existing applications. But existing
-  applications using these structs with the old name will need source code
-  adjustments when recompiled using c-ares 1.7.0.
-
-* November 21, 2009 (Yang Tse)
-- Added manifest stuff to Makefile.msvc.
-
-* November 20, 2009 (Yang Tse)
-- Fixed several function prototypes in man pages that were out of sync
-  with the ones declared in ares.h.  Added ares_free_data() along with
-  man page.  Updated ares_parse_srv_reply() and ares_parse_txt_reply()
-  with changes from Jakub Hrozek making these now return linked lists
-  instead of arrays, and merging the ares_free_data() adjustments.
-
-* November 10, 2009 (Yang Tse)
-- Updated MSVC 6.0 project files to match settings from Makefile.msvc.
-
-* November 9, 2009 (Yang Tse)
-- Makefile.msvc is now the reference method to build c-ares and sample
-  programs with any MSVC compiler or MS Visual Studio version.  If no
-  option or target are specified it builds dynamic and static c-ares
-  libraries in debug and release flavours and also builds all sample
-  programs using each of the different c-ares libraries.
-
-* November 2, 2009 (Yang Tse)
-- Renamed c-ares setup.h to ares_setup.h
-
-* October 31, 2009 (Yang Tse)
-- Symbol hiding configure options are named now --enable-symbol-hiding
-  and --disable-symbol-hiding in an attempt to make them less ambiguous.
-
-* October 30, 2009 (Yang Tse)
-- Many fixes for ares_parse_txt_reply()
-
-* October 29, 2009 (Daniel Stenberg)
-- Jakub Hrozek added ares_parse_txt_reply() for TXT parsing
-
-* October 29, 2009 (Yang Tse)
-- Updated MSVC 6.0 workspace and project files that allows building
-  dynamic and static c-ares libraries in debug and release flavours.
-  Additionally each of the three sample programs is built against
-  each of the four possible c-ares libraries, generating all this
-  a total number of 12 executables and 4 libraries.
-
-* October 28, 2009 (Yang Tse)
-- Initial step towards the ability to reduce c-ares exported symbols
-  when built as a shared library based on the 'visibility' attribute
-  for GNUC and Intel compilers and based on __global for Sun compilers,
-  taking also in account __declspec function decoration for Win32 and
-  Symbian DLL's.
-
-* October 27, 2009 (Yang Tse)
-- Fixed Pelles C Win32 target compilation issues.
-
-* October 23, 2009 (Yang Tse)
-- John Engelhart noticed an unreleased problem relative to a duplicate
-  ARES_ECANCELLED error code value and missing error code description.
-
-* October 7, 2009 (Yang Tse)
-- Overhauled ares__get_hostent() Fixing out of bounds memory overwrite
-  triggered with malformed /etc/hosts file. Improving parsing of /etc/hosts
-  file. Validating requested address family. Ensuring that failures always
-  return a NULL pointer. Adjusting header inclusions.
-
-* October 6, 2009 (Yang Tse)
-- Fix ssize_t redefinition errors on WIN64 reported by Alexey Simak.
-
-* September 29, 2009 (Yang Tse)
-- Make configure script also check if _REENTRANT definition is required to
-  make errno available as a preprocessor macro.
-
-* September 7, 2009 (Yang Tse)
-- Add T_SRV portability check to ares_parse_srv_reply.c
-
-* 4 Sep 2009 (Daniel Stenberg)
-- Jakub Hrozek added ares_parse_srv_reply() for SRV parsing
-
-* 3 Aug 2009 (Daniel Stenberg)
-- Joshua Kwan fixed the init routine to fill in the defaults for stuff that
-  fails to get inited by other means. This fixes a case of when the c-ares
-  init fails when internet access is fone.
-
-- Timo Teras changed the reason code used in the resolve callback done when
-  ares_cancel() is used, to be ARES_ECANCELLED instead of ARES_ETIMEOUT to
-  better allow the callback to know what's happening.
-
-* 14 Jul 2009 (Guenter Knauf)
-- renamed generated config.h to ares_config.h to avoid any future clashes
-  with config.h from other projects.
-
-* June 20 2009 (Yang Tse)
-- Refactor how libraries are checked for connect() function in configure
-  script and check for connect() as it is done for other functions.
-
-* June 19 2009 (Yang Tse)
-- Make sclose() function-like macro definition used to close a socket,
-  now solely based on HAVE_CLOSESOCKET and HAVE_CLOSESOCKET_CAMEL
-  config file preprocessor definitions
-
-* June 18 2009 (Yang Tse)
-- Add CloseSocket camel case function check for configure script.
-
-* June 17 2009 (Yang Tse)
-- Check for socket() and closesocket() as it is done for other functions
-  in configure script.
-
-* June 11 2009 (Yang Tse)
-- Modified buildconf so that when automake runs it copies missing files
-  instead of symlinking them.
-
-* June 8 2009 (Yang Tse)
-- Removed buildconf.bat from release and daily snapshot archives. This
-  file is only for CVS tree checkout builds.
-
-* May 26 2009 (Yang Tse)
-- Added --enable-curldebug configure option to enable and disable building
-  with the low-level curl debug memory tracking 'feature' to allow decoupled
-  setting from --enable-debug, allowing again to build c-ares independently
-  out of the CVS tree.
-
-  For the c-ares library option --enable-debug enables debug build features
-  which are _not_ related with memory tracking. For the c-ares library when
-  --enable-debug is given it does not enable the memory tracking feature. If
-  you wish to enable the curl debug memory tracking you must use configure
-  option --enable-curldebug explicitily to do so.
-
-  Internally, definition of preprocessor symbol DEBUGBUILD restricts code
-  which is only compiled for debug enabled builds. And symbol CURLDEBUG is
-  used to differentiate code which is _only_ used for memory tracking.
-
-  Make ares_init(), ares_dup() and ares_init_options() fail returning
-  ARES_ENOTINITIALIZED if library initialization has not been performed
-  calling ares_library_init().
-
-* May 20 2009 (Yang Tse)
-- Added ares_library_init() and ares_library_cleanup() man pages.
-
-* May 19 2009 (Yang Tse)
-- Introduced ares_library_init() and ares_library_cleanup() functions.
-
-  This is an API and ABI break for Win32/64 systems. Non-Win32/64 build targets
-  using c-ares 1.7.0 can still survive without calling these functions. Read all
-  the details on ares_library_init(3) and ares_library_cleanup(3) man pages that
-  are included.
-
-  curl/libcurl 7.19.5 is fully compatible with c-ares 1.7.0 on all systems.
-
-  In order to use c-ares 1.7.0 with curl/libcurl on Win32/64 systems it is
-  required that curl/libcurl is 7.19.5 or newer. In other words, it is not
-  possible on Win32/64 to use c-ares 1.7.0 with a curl/libcurl version less
-  than 7.19.5
-
-* May 11 2009 (Daniel Stenberg)
-- Gregor Jasny made c-ares link with libtool 's -export-symbols-regex option to
-  only expose functions starting with ares_.
-
-* May 7 2009 (Yang Tse)
-- Fix an m4 overquoting triggering a spurious 'AS_TR_CPP' symbol definition
-  attempt in generated config.h
-
-* May 2 2009 (Yang Tse)
-- Use a build-time configured ares_socklen_t data type instead of socklen_t.
-
-* April 21 2009 (Yang Tse)
-- Moved potential inclusion of system's malloc.h and memory.h header files to
-  setup_once.h.  Inclusion of each header file is based on the definition of
-  NEED_MALLOC_H and NEED_MEMORY_H respectively.
-
-* March 11 2009 (Yang Tse)
-- Japheth Cleaver fixed acountry.c replacing u_long with unsigned long.
-
-* February 20 2009 (Yang Tse)
-- Do not halt compilation when using VS2008 to build a Windows 2000 target.
-
-* February 3 2009 (Phil Blundell)
-- If the server returns garbage or nothing at all in response to an AAAA query,
-  go on and ask for A records anyway.
-
-* January 31 2009 (Daniel Stenberg)
-- ares_gethostbyname() now accepts 'AF_UNSPEC' as a family for resolving
-  either AF_INET6 or AF_INET. It works by accepting any of the looksups in the
-  hosts file, and it resolves the AAAA field with a fallback to A.
-
-* January 14 2009 (Daniel Stenberg)
-- ares.h no longer uses the HAVE_STRUCT_IN6_ADDR define check, but instead it
-  now declares the private struct ares_in6_addr for all systems instead of
-  relying on one possibly not present in the system.
-
-* January 13 2009 (Phil Blundell)
-- ares__send_query() now varies the retry timeout pseudo-randomly to avoid
-  packet storms when several queries were started at the same time.
-
-* January 11 2009 (Daniel Stenberg)
-- Phil Blundell added the internal function ares__expand_name_for_response()
-  that is now used by the ares_parse_*_reply() functions instead of the
-  ares_expand_name() simply to easier return ARES_EBADRESP for the cases where
-  the name expansion fails as in responses that really isn't expected.
-
-Version 1.6.0 (Dec 9, 2008)
-
-* December 9 2008 (Gisle Vanem)
-
-  Fixes for Win32 targets using the Watt-32 tcp/ip stack.
-
-* Dec 4 2008 (Daniel Stenberg)
-
-  Gregor Jasny provided the patch that introduces ares_set_socket_callback(),
-  and I edited it to also get duped by ares_dup().
-
-* Dec 3 2008 (Daniel Stenberg)
-
-  API changes:
-
-  I made sure the public ares_config struct looks like before and yet it
-  supports the ROTATE option thanks to c-ares now storing the "optmask"
-  internally. Thus we should be ABI compatible with the past release(s)
-  now. My efforts mentioned below should not break backwards ABI compliance.
-
-  Here's how I suggest we proceed with the API:
-
-  ares_init() will be primary "channel creator" function.
-
-  ares_init_options() will continue to work exactly like now and before. For
-  starters, it will be the (only) way to set the existing options.
-
-  ares_save_options() will continue to work like today, but will ONLY save
-  options that you can set today (including ARES_OPT_ROTATE actually) but new
-  options that we add may not be saved with this.
-
-  Instead we introduce:
-
-  ares_dup() that instead can make a new channel and clone the config used
-  from an existing channel. It will then clone all config options, including
-  future new things we add.
-
-  ares_set_*() style functions that set (new) config options. As a start we
-  simply add these for new functionality, but over time we can also introduce
-  them for existing "struct ares_options" so that we can eventually deprecate
-  the two ares_*_options() functions.
-
-  ares_get_*() style functions for extracting info from a channel handle that
-  should be used instead of ares_save_options().
-
-* Nov 26 2008 (Yang Tse)
-- Brad Spencer provided changes to allow buildconf to work on OS X.
-
-- Gerald Combs fixed a bug in ares_parse_ptr_reply() which would cause a
-  buffer to shrink instead of expand if a reply contained 8 or more records.
-
-* Nov 25 2008 (Yang Tse)
-- In preparation for the upcomming IPv6 nameservers patch, the internal
-  ares_addr union is now changed into an internal struct which also holds
-  the address family.
-
-* Nov 19 2008 (Daniel Stenberg)
-- Brad Spencer brought the new function ares_gethostbyname_file() which simply
-  resolves a host name from the given file, using the regular hosts syntax.
-
-* Nov 1 2008 (Daniel Stenberg)
-- Carlo Contavalli added support for the glibc "rotate" option, as documented
-  in man resolv.conf:
-
-  causes round robin selection of nameservers from among those listed.  This
-  has the effect of spreading the query load among all listed servers, rather
-  than having all clients try the first listed server first every time.
-
-  You can enable it with ARES_OPT_ROTATE
-
-* Oct 21 2008 (Yang Tse)
-  Charles Hardin added handling of EINPROGRESS for UDP connects.
-
-* Oct 18 2008 (Daniel Stenberg)
-  Charles Hardin made adig support a regular numerical dotted IP address for the
-  -s option as well.
-
-* Oct 7 2008 (Yang Tse)
-- Added --enable-optimize configure option to enable and disable compiler
-  optimizations to allow decoupled setting from --enable-debug.
-
-* Oct 2 2008 (Yang Tse)
-- Added --enable-warnings configure option to enable and disable strict
-  compiler warnings to allow decoupled setting from --enable-debug.
-
-* Sep 17 2008 (Yang Tse)
-- Code reorganization to allow internal/private use of "nameser.h" to any
-  system that lacks arpa/nameser.h or arpa/nameser_compat.h header files.
-
-* Sep 16 2008 (Yang Tse)
-- Code reorganization to allow internal/private use of ares_writev to any
-  system that lacks the writev function.
-
-* Sep 15 2008 (Yang Tse)
-- Code reorganization to allow internal/private use of ares_strcasecmp to any
-  system that lacks the strcasecmp function.
-
-- Improve configure detection of some string functions.
-
-* Sep 11 2008 (Yang Tse)
-- Code reorganization to allow internal/private use of ares_strdup to any
-  system that lacks the strdup function.
-
-Version 1.5.3 (Aug 29, 2008)
-
-* Aug 25 2008 (Yang Tse)
-- Improvement by Brad House:
-
-  This patch addresses an issue in which a response could be sent back to the
-  source port of a client from a different address than the request was made to.
-  This is one form of a DNS cache poisoning attack.
-
-  The patch simply uses recvfrom() rather than recv() and validates that the
-  address returned from recvfrom() matches the address of the server we have
-  connected to. Only necessary on UDP sockets as they are connection-less, TCP
-  is unaffected.
-
-- Fix by George Neill:
-  Fixed compilation of acountry sample application failure on some systems.
-
-* Aug 4 2008 (Daniel Stenberg)
-- Fix by Tofu Linden:
-
-  The symptom:
-  * Users (usually, but not always) on 2-Wire routers and the Comcast service
-  and a wired connection to their router would find that the second and
-  subsequent DNS lookups from fresh processes using c-ares to resolve the same
-  address would cause the process to never see a reply (it keeps polling for
-  around 1m15s before giving up).
-
-  The repro:
-  * On such a machine (and yeah, it took us a lot of QA to find the systems
-  that reproduce such a specific problem!), do 'ahost www.secondlife.com',
-  then do it again.  The first process's lookup will work, subsequent lookups
-  will time-out and fail.
-
-  The cause:
-  * init_id_key() was calling randomize_key() *before* it initialized
-  key->state, meaning that the randomness generated by randomize_key() is
-  immediately overwritten with deterministic values. (/dev/urandom was also
-  being read incorrectly in the c-ares version we were using, but this was
-  fixed in a later version.)
-  * This makes the stream of generated query-IDs from any new c-ares process
-  be an identical and predictable sequence of IDs.
-  * This makes the 2-Wire's default built-in DNS server detect these queries
-  as probable-duplicates and (erroneously) not respond at all.
-
-
-* Aug 4 2008 (Yang Tse)
-- Autoconf 2.62 has changed the behaviour of the AC_AIX macro which we use.
-  Prior versions of autoconf defined _ALL_SOURCE if _AIX was defined. 2.62
-  version of AC_AIX defines _ALL_SOURCE and other four preprocessor symbols
-  no matter if the system is AIX or not. To keep the traditional behaviour,
-  and an uniform one across autoconf versions AC_AIX is replaced with our
-  own internal macro CARES_CHECK_AIX_ALL_SOURCE.
-
-* Aug 1 2008 (Yang Tse)
-- Configure process now checks if the preprocessor _REENTRANT symbol is already
-  defined. If it isn't currently defined a set of checks are performed to test
-  if its definition is required to make visible to the compiler a set of *_r
-  functions. Finally, if _REENTRANT is already defined or needed it takes care
-  of making adjustments necessary to ensure that it is defined equally for the
-  configure process tests and generated config file.
-
-* Jul 20 2008 (Yang Tse)
-- When recvfrom prototype uses a void pointer for arguments 2, 5 or 6 this will
-  now cause the definition, as appropriate, of RECVFROM_TYPE_ARG2_IS_VOID,
-  RECVFROM_TYPE_ARG5_IS_VOID or RECVFROM_TYPE_ARG6_IS_VOID.
-
-* Jul 17 2008 (Yang Tse)
-- RECVFROM_TYPE_ARG2, RECVFROM_TYPE_ARG5 and RECVFROM_TYPE_ARG6 are now defined
-  to the data type pointed by its respective argument and not the pointer type.
-
-* Jul 16 2008 (Yang Tse)
-- Improved configure detection of number of arguments for getservbyport_r.
-  Detection is now based on compilation checks instead of linker ones.
-
-- Configure process now checks availability of recvfrom() socket function and
-  finds out its return type and the types of its arguments. Added definitions
-  for non-configure systems config files, and introduced macro sreadfrom which
-  will be used on udp sockets as a recvfrom() wrapper in the future.
-
-* Jul 15 2008 (Yang Tse)
-- Introduce definition of _REENTRANT symbol in setup.h to improve library
-  usability.  Previously the configure process only used the AC_SYS_LARGEFILE
-  macro for debug builds, now it is also used for non-debug ones enabling the
-  use of configure options --enable-largefile and --disable-largefile which
-  might be needed for library compatibility.  Remove checking the size of
-  curl_off_t, it is no longer needed.
-
-* Jul 3 2008 (Daniel Stenberg)
-- Phil Blundell: If you ask ares_gethostbyname() to do an AF_INET6 lookup and
-  the target host has only A records, it automatically falls back to an
-  AF_INET lookup and gives you the A results.  However, if the target host has
-  a CNAME record, this behaviour is defeated since the original query does
-  return some data even though ares_parse_aaa_reply() doesn't consider it
-  relevant. Here's a small patch to make it behave the same with and without
-  the CNAME.
-
-* Jul 2 2008 (Yang Tse)
-- Fallback to gettimeofday when monotonic clock is unavailable at run-time.
-
-* Jun 30 2008 (Daniel Stenberg)
-
-- As was pointed out to me by Andreas Schuldei, the MAXHOSTNAMELEN define is
-  not posix or anything and thus c-ares failed to build on hurd (and possibly
-  elsewhere). The define was also somewhat artificially used in the windows
-  port. Now, I instead rewrote the use of gethostbyname to enlarge the host
-  name buffer in case of need and totally avoid the use of the MAXHOSTNAMELEN
-  define. I thus also removed the defien from the namser.h file where it was
-  once added for the windows build.
-
-  I also fixed init_by_defaults() function to not leak memory in case if
-  error.
-
-* Jun 9 2008 (Yang Tse)
-
-- Make libcares.pc generated file for pkg-config include information relative
-  to the libraries needed for the static linking of c-ares.
-
-* May 30 2008 (Yang Tse)
-
-- Brad House fixed a missing header file inclusion in adig sample program.
-
-Version 1.5.2 (May 29, 2008)
-
-* May 13 2008 (Daniel Stenberg)
-
-- Introducing millisecond resolution support for the timeout option. See
-  ares_init_options()'s ARES_OPT_TIMEOUTMS.
-
-* May 9 2008 (Yang Tse)
-
-- Use monotonic time source if available, for private function ares__tvnow()
-
-* May 7 2008 (Daniel Stenberg)
-
-- Sebastian made c-ares able to return all PTR-records when doing reverse
-  lookups. It is not common practice to have multiple PTR-Records for a single
-  IP, but its perfectly legal and some sites have those.
-
-- Doug Goldstein provided a configure patch: updates autoconf 2.13 usage to
-  autoconf 2.57 usage (which is the version you have specified as the minimum
-  version). It's a minor change but it does clean up some warnings with newer
-  autoconf (specifically 2.62).
-
-* May 5 2008 (Yang Tse)
-
-- Improved parsing of resolver configuration files.
-
-* April 4 2008 (Daniel Stenberg)
-
-- Eino Tuominen improved the code when a file is used to seed the randomizer.
-
-- Alexey Simak made adig support NAPTR records
-
-- Alexey Simak fixed the VC dsp file by adding the missing source file
-  ares_expand_string.c
-
-* December 11 2007 (Gisle Vanem)
-
-- Added another sample application; acountry.c which converts an
-  IPv4-address(es) and/or host-name(s) to country-name and country-code.
-  This uses the service of the DNSBL at countries.nerd.dk.
-
-* December 3 2007 (Daniel Stenberg)
-
-- Brad Spencer fixed the configure script to assume that there's no
-  /dev/urandom when built cross-compiled as then the script cannot check for
-  it.
-
-- Erik Kline cleaned up ares_gethostbyaddr.c:next_lookup() somewhat
-
-Version 1.5.1 (Nov 21, 2007)
-
-* November 21 2007 (Daniel Stenberg)
-
-- Robin Cornelius pointed out that ares_llist.h was missing in the release
-  archive for 1.5.0
-
-Version 1.5.0 (Nov 21, 2007)
-
-* October 2 2007 (Daniel Stenberg)
-
-- ares_strerror() segfaulted if the input error number was out of the currently
-  supported range.
-
-- Yang Tse: Avoid a segfault when generating a DNS "Transaction ID" in
-  internal function init_id_key() under low memory conditions.
-
-* September 28 2007 (Daniel Stenberg)
-
-- Bumped version to 1.5.0 for next release and soname bumped to 2 due to ABI
-  and API changes in the progress callback (and possibly more coming up from
-  Steinar)
-
-* September 28 2007 (Steinar H. Gunderson)
-
-- Don't skip a server if it's the only one. (Bugfix from the Google tree.)
-
-- Made the query callbacks receive the number of timeouts that happened during
-  the execution of a query, and updated documentation accordingly. (Patch from
-  the Google tree.)
-
-- Support a few more socket options: ARES_OPT_SOCK_SNDBUF and
-  ARES_OPT_SOCK_RCVBUF
-
-- Always register for TCP events even if there are no outstanding queries, as
-  the other side could always close the connection, which is a valid event
-  which should be responded to.
-
-* September 22 2007 (Daniel Stenberg)
-
-- Steinar H. Gunderson fixed: Correctly clear sockets from the fd_set on in
-  several functions (write_tcp_data, read_tcp_data, read_udp_packets) so that
-  if it fails and the socket is closed the following code doesn't try to use
-  the file descriptor.
-
-- Steinar H. Gunderson modified c-ares to now also do to DNS retries even when
-  TCP is used since there are several edge cases where it still makes sense.
-
-- Brad House provided a fix for ares_save_options():
-
-  Apparently I overlooked something with the ares_save_options() where it
-  would try to do a malloc(0) when no options of that type needed to be saved.
-  On most platforms, this was fine because malloc(0) doesn't actually return
-  NULL, but on AIX it does, so ares_save_options would return ARES_ENOMEM.
-
-* July 14 2007 (Daniel Stenberg)
-
-- Vlad Dinulescu fixed two outstanding valgrind reports:
-
-  1. In ares_query.c , in find_query_by_id we compare q->qid (which is a short
-  int variable) with qid, which is declared as an int variable.  Moreover,
-  DNS_HEADER_SET_QID is used to set the value of qid, but DNS_HEADER_SET_QID
-  sets only the first two bytes of qid. I think that qid should be declared as
-  "unsigned short" in this function.
-
-  2. The same problem occurs in ares_process.c, process_answer() .  query->qid
-  (an unsigned short integer variable) is compared with id, which is an
-  integer variable. Moreover, id is initialized from DNS_HEADER_QID which sets
-  only the first two bytes of id. I think that the id variable should be
-  declared as "unsigned short" in this function.
-
-  Even after declaring these variables as "unsigned short", the valgrind
-  errors are still there. Which brings us to the third problem.
-
-  3. The third problem is that Valgrind assumes that query->qid is not
-  initialised correctly. And it does that because query->qid is set from
-  DNS_HEADER_QID(qbuf); Valgrind says that qbuf has unitialised bytes. And
-  qbuf has uninitialised bytes because of channel->next_id . And next_id is
-  set by ares_init.c:ares__generate_new_id() . I found that putting short r=0
-  in this function (instead of short r) makes all Valgrind warnings go away.
-  I have studied ares__rc4() too, and this is the offending line:
-
-        buffer_ptr[counter] ^= state[xorIndex];   (ares_query.c:62)
-
-  This is what triggers Valgrind.. buffer_ptr is unitialised in this function,
-  and by applying ^= on it, it remains unitialised.
-
-Version 1.4.0 (June 8, 2007)
-
-* June 4 2007 (Daniel Stenberg)
-
-- James Bursa reported a major memory problem when resolving multi-IP names
-  and I found and fixed the problem. It was added by Ashish Sharma's patch
-  two days ago.
-
-  When I then tried to verify multiple entries in /etc/hosts after my fix, I
-  got another segfault and decided this code was not ripe for inclusion and I
-  reverted the patch.
-
-* June 2 2007
-
-- Brad Spencer found and fixed three flaws in the code, found with the new
-  gcc 4.2.0 warning: -Waddress
-
-- Brad House fixed VS2005 compiler warnings due to time_t being 64bit.
-  He also made recent Microsoft compilers use _strdup() instead of strdup().
-
-- Brad House's man pages for ares_save_options() and ares_destroy_options()
-  were added.
-
-- Ashish Sharma provided a patch for supporting multiple entries in the
-  /etc/hosts file. Patch edited for coding style and functionality by me
-  (Daniel).
-
-* May 30 2007
-
-- Shmulik Regev brought cryptographically secure transaction IDs:
-
-  The c-ares library implementation uses a DNS "Transaction ID" field that is
-  seeded with a pseudo random number (based on gettimeofday) which is
-  incremented (++) between consecutive calls and is therefore rather
-  predictable. In general, predictability of DNS Transaction ID is a well
-  known security problem (e.g.
-  http://bak.spc.org/dms/archive/dns_id_attack.txt) and makes a c-ares based
-  implementation vulnerable to DNS poisoning. Credit goes to Amit Klein
-  (Trusteer) for identifying this problem.
-
-  The patch I wrote changes the implementation to use a more secure way of
-  generating unique IDs. It starts by obtaining a key with reasonable entropy
-  which is used with an RC4 stream to generate the cryptographically secure
-  transaction IDs.
-
-  Note that the key generation code (in ares_init:randomize_key) has two
-  versions, the Windows specific one uses a cryptographically safe function
-  provided (but undocumented :) by the operating system (described at
-  http://blogs.msdn.com/michael_howard/archive/2005/01/14/353379.aspx).  The
-  default implementation is a bit naive and uses the standard 'rand'
-  function. Surely a better way to generate random keys exists for other
-  platforms.
-
-  The patch can be tested by using the adig utility and using the '-s' option.
-
-- Brad House added ares_save_options() and ares_destroy_options() that can be
-  used to keep options for later re-usal when ares_init_options() is used.
-
-  Problem: Calling ares_init() for each lookup can be unnecessarily resource
-         intensive.  On windows, it must LoadLibrary() or search the registry
-         on each call to ares_init().  On unix, it must read and parse
-         multiple files to obtain the necessary configuration information.  In
-         a single-threaded environment, it would make sense to only
-         ares_init() once, but in a heavily multi-threaded environment, it is
-         undesirable to ares_init() and ares_destroy() for each thread created
-         and track that.
-
-  Solution: Create ares_save_options() and ares_destroy_options() functions to
-         retrieve and free options obtained from an initialized channel.  The
-         options populated can be used to pass back into ares_init_options(),
-         it should populate all needed fields and not retrieve any information
-         from the system.  Probably wise to destroy the cache every minute or
-         so to prevent the data from becoming stale.
-
-- Daniel S added ares_process_fd() to allow applications to ask for processing
-  on specific sockets and thus avoiding select() and associated
-  functions/macros.  This function will be used by upcoming libcurl releases
-  for this very reason. It also made me export the ares_socket_t type in the
-  public ares.h header file, since ares_process_fd() uses that type for two of
-  the arguments.
-
-* May 25 2007
-
-- Ravi Pratap fixed a flaw in the init_by_resolv_conf() function for windows
-  that could cause it to return a bad return code.
-
-* April 16 2007
-
-- Yang Tse: Provide ares_getopt() command-line parser function as a source
-  code helper function, not belonging to the actual c-ares library.
-
-* February 19 2007
-
-- Vlad Dinulescu added ares_parse_ns_reply().
-
-* February 13 2007
-
-- Yang Tse: Fix failure to get the search sequence of /etc/hosts and
-  DNS from /etc/nsswitch.conf, /etc/host.conf or /etc/svc.conf when
-  /etc/resolv.conf did not exist or was unable to read it.
-
-* November 22 2006
-
-- Install ares_dns.h too
-
-- Michael Wallner fixed this problem: When I set domains in the options
-  struct, and there are domain/search entries in /etc/resolv.conf, the domains
-  of the options struct will be overridden.
-
-* November 6 2006
-
-- Yang Tse removed a couple of potential zero size memory allocations.
-
-- Andreas Rieke fixed the line endings in the areslib.dsp file that I (Daniel)
-  broke in the 1.3.2 release. We should switch to a system where that file is
-  auto-generated. We could rip some code for that from curl...
-
-Version 1.3.2 (November 3, 2006)
-
-* October 12 2006
-
-- Prevent ares_getsock() to overflow if more than 16 sockets are used.
-
-* September 11 2006
-
-- Guilherme Balena Versiani: I noted a strange BUG in Win32 port
-  (ares_init.c/get_iphlpapi_dns_info() function): when I disable the network
-  by hand or disconnect the network cable in Windows 2000 or Windows XP, my
-  application gets 127.0.0.1 as the only name server. The problem comes from
-  'GetNetworkParams' function, that returns the empty string "" as the only
-  name server in that case. Moreover, the Windows implementation of
-  inet_addr() returns INADDR_LOOPBACK instead of INADDR_NONE.
-
-* August 29 2006
-
-- Brad Spencer did
-
-  o made ares_version.h use extern "C" for c++ compilers
-  o fixed compiler warnings in ares_getnameinfo.c
-  o fixed a buffer position init for TCP reads
-
-* August 3 2006
-
-- Ravi Pratap fixed ares_getsock() to actually return the proper bitmap and
-  not always zero!
-
-Version 1.3.1 (June 24, 2006)
-
-* July 23, 2006
-
-- Gisle Vanem added getopt() to the ahost program. Currently accepts
-  only [-t {a|aaaa}] to specify address family in ares_gethostbyname().
-
-* June 19, 2006
-
-- (wahern) Removed "big endian" DNS section and RR data integer parser
-  macros from ares_dns.h, which break c-ares on my Sparc64. Bit-wise
-  operations in C operate on logical values. And in any event the octets are
-  already in big-endian (aka network) byte order so they're being reversed
-  (thus the source of the breakage).
-
-* June 18, 2006
-
-- William Ahern handles EAGAIN/EWOULDBLOCK errors in most of the I/O calls
-  from area_process.c.
-
-  TODO: Handle one last EAGAIN for a UDP socket send(2) in
-  ares__send_query().
-
-* May 10, 2006
-
-- Bram Matthys brought my attention to a libtool peculiarity where detecting
-  things such as C++ compiler actually is a bad thing and since we don't need
-  that detection I added a work-around, much inspired by a previous patch by
-  Paolo Bonzini. This also shortens the configure script quite a lot.
-
-* May 3, 2006
-
-- Nick Mathewson added the ARES_OPT_SOCK_STATE_CB option that when set makes
-  c-ares call a callback on socket state changes. A better way than the
-  ares_getsock() to get full control over the socket state.
-
-* January 9, 2006
-
-- Alexander Lazic improved the getservbyport_r() configure check.
-
-* January 6, 2006
-
-- Alexander Lazic pointed out that the buildconf should use the ACLOCAL_FLAGS
-  variable for easier controlling what it does and how it runs.
-
-* January 5, 2006
-
-- James Bursa fixed c-ares to find the hosts file on RISC OS, and made it
-  build with newer gcc versions that no longer defines "riscos".
-
-* December 22
-
-- Daniel Stenberg added ares_getsock() that extracts the set of sockets to
-  wait for action on. Similar to ares_fds() but not restricted to using
-  select() for the waiting.
-
-* November 25
-
-- Yang Tse fixed some send() / recv() compiler warnings
-
-* September 18
-
-- Added constants that will be used by ares_getaddrinfo
-
-- Made ares_getnameinfo use the reentrant getservbyport (getservbyport_r) if it
-  is available to ensure it works properly in a threaded environment.
-
-* September 10
-
-- configure fix for detecting a member in the sockaddr_in6 struct which failed
-  on ipv6-enabled HP-UX 11.00
-
-Version 1.3.0 (August 29, 2005)
-
-* August 21
-
-- Alfredo Tupone provided a fix for the Windows code in get_iphlpapi_dns_info()
-  when getting the DNS server etc.
-
-* June 19
-
-- Added some checks for the addrinfo structure.
-
-* June 2
-
-- William Ahern:
-
-  Make UDP sockets non-blocking. I've confirmed that at least on Linux 2.4 a
-  read event can come back from poll() on a valid SOCK_DGRAM socket but
-  recv(2) will still block. This patch doesn't ignore EAGAIN in
-  read_udp_packets(), though maybe it should. (This patch was edited by Daniel
-  Stenberg and a new configure test was added (imported from curl's configure)
-  to properly detect what non-blocking socket approach to use.)
-
-  I'm not quite sure how this was happening, but I've been seeing PTR queries
-  which seem to return empty responses. At least, they were empty when calling
-  ares_expand_name() on the record. Here's a patch which guarantees to
-  NUL-terminate the expanded name. The old behavior failed to NUL-terminate if
-  len was 0, and this was causing strlen() to run past the end of the buffer
-  after calling ares_expand_name() and getting ARES_SUCCESS as the return
-  value. If q is not greater than *s then it's equal and *s is always
-  allocated with at least one byte.
-
-* May 16
-
-- Added ares_getnameinfo which mimics the getnameinfo API (another feature
-  that could use testing).
-
-* May 14
-
-- Added an inet_ntop function from BIND for systems that do not have it.
-
-* April 9
-
-- Made sortlist support IPv6 (this can probably use some testing).
-
-- Made sortlist support CIDR matching for IPv4.
-
-* April 8
-
-- Added preliminary IPv6 support to ares_gethostbyname. Currently, sortlist
-  does not work with IPv6. Also provided an implementation of bitncmp from
-  BIND for systems that do not supply this function. This will be used to add
-  IPv6 support to sortlist.
-
-- Made ares_gethostbyaddr support IPv6 by specifying AF_INET6 as the family.
-  The function can lookup IPv6 addresses both from files (/etc/hosts) and
-  DNS lookups.
-
-* April 7
-
-- Tupone Alfredo fixed includes of arpa/nameser_compat.h to build fine on Mac
-  OS X.
-
-* April 5
-
-- Dominick Meglio: Provided implementations of inet_net_pton and inet_pton
-  from BIND for systems that do not include these functions.
-
-* March 11, 2005
-
-- Dominick Meglio added ares_parse_aaaa_reply.c and did various
-  adjustments. The first little steps towards IPv6 support!
-
-* November 7
-
-- Fixed the VC project and makefile to use ares_cancel and ares_version
-
-* October 24
-
-- The released ares_version.h from 1.2.1 says 1.2.0 due to a maketgz flaw.
-  This is now fixed.
-
-Version 1.2.1 (October 20, 2004)
-
-* September 29
-
-- Henrik Stoerner fix: got a report that Tru64 Unix (the unix from Digital
-  when they made Alpha's) uses /etc/svc.conf for the purpose fixed below for
-  other OSes. He made c-ares check for and understand it if present.
-
-- Now c-ares will use local host name lookup _before_ DNS resolving by default
-  if nothing else is told.
-
-* September 26
-
-- Henrik Stoerner: found out that c-ares does not look at the /etc/host.conf
-  file to determine the sequence in which to search /etc/hosts and DNS.  So on
-  systems where this order is defined by /etc/host.conf instead of a "lookup"
-  entry in /etc/resolv.conf, c-ares will always default to looking in DNS
-  first, and /etc/hosts second.
-
-  c-ares now looks at
-
-  1) resolv.conf (for the "lookup" line);
-  2) nsswitch.fon (for the "hosts:" line);
-  3) host.conf (for the "order" line).
-
-  First match wins.
-
-- Dominick Meglio patched: C-ares on Windows assumed that the HOSTS file is
-  located in a static location. It assumed
-  C:\Windows\System32\Drivers\Etc. This is a poor assumption to make. In fact,
-  the location of the HOSTS file can be changed via a registry setting.
-
-  There is a key called DatabasePath which specifies the path to the HOSTS
-  file:
-  http://www.microsoft.com/technet/itsolutions/network/deploy/depovg/tcpip2k.mspx
-
-  The patch will make c-ares correctly consult the registry for the location
-  of this file.
-
-* August 29
-
-- Gisle Vanem fixed the MSVC build files.
-
-* August 20
-
-- Gisle Vanem made c-ares build and work with his Watt-32 TCP/IP stack.
-
-* August 13
-
-- Harshal Pradhan made a minor syntax change in ares_init.c to make it build
-  fine with MSVC 7.1
-
-* July 24
-
-- Made the lib get built static only if --enable-debug is used.
-
-- Gisle Vanem fixed:
-
-  Basically in loops like handle_errors(), 'query->next' was assigned a local
-  variable and then query was referenced after the memory was freed by
-  next_server(). I've changed that so next_server() and end_query() returns
-  the next query. So callers should use this ret-value.
-
-  The next problem was that 'server->tcp_buffer_pos' had a random value at
-  entry to 1st recv() (luckily causing Winsock to return ENOBUFS).
-
-  I've also added a ares_writev() for Windows to streamline the code a bit
-  more.
-
-* July 20
-- Fixed a few variable return types for some system calls. Made configure
-  check for ssize_t to make it possible to use that when receiving the send()
-  error code. This is necessary to prevent compiler warnings on some systems.
-
-- Made configure create config.h, and all source files now include setup.h that
-  might include the proper config.h (or a handicrafted alternative).
-
-- Switched to 'ares_socket_t' type for sockets in ares, since Windows don't
-  use 'int' for that.
-
-- automake-ified and libool-ified c-ares. Now it builds libcares as a shared
-  lib on most platforms if wanted. (This bloated the size of the release
-  archive with another 200K!)
-
-- Makefile.am now uses Makefile.inc for the c sources, h headers and man
-  pages, to make it easier for other makefiles to use the exact same set of
-  files.
-
-- Adjusted 'maketgz' to use the new automake magic when building distribution
-  archives.
-
-- Anyone desires HTML and/or PDF versions of the man pages in the release
-  archives?
-
-* July 3
-- Günter Knauf made c-ares build and run on Novell Netware.
-
-* July 1
-- Gisle Vanem provided Makefile.dj to build with djgpp, added a few more djgpp
-  fixes and made ares not use 'errno' to provide further info on Windows.
-
-* June 30
-- Gisle Vanem made it build with djgpp and run fine with the Watt-32 stack.
-
-* June 10
-- Gisle Vanem's init patch for Windows:
-
-  The init_by_resolv_conf() function fetches the DNS-server(s)
-  from a series of registry branches.
-
-  This can be wrong in the case where DHCP has assigned nameservers, but the
-  user has overridden these servers with other prefered settings. Then it's
-  wrong to use the DHCPNAMESERVER setting in registry.
-
-  In the case of no global DHCP-assigned or fixed servers, but DNS server(s)
-  per adapter, one has to query the adapter branches.  But how can c-ares know
-  which adapter is valid for use? AFAICS it can't. There could be one adapter
-  that is down (e.g. a VPN adapter).
-
-  So it's better to leave this to the IP Helper API (iphlapi) available in
-  Win-98/2000 and later. My patch falls-back to the old way if not available.
-
-* June 8
-- James Bursa fixed an init issue for RISC OS.
-
-* May 11
-- Nico Stappenbelt reported that when processing domain and search lines in
-  the resolv.conf file, the first entry encountered is processed and used as
-  the search list. According to the manual pages for both Linux, Solaris and
-  Tru64, the last entry of either a domain or a search field is used.
-
-  This is now adjusted in the code
-
-Version 1.2.0 (April 13, 2004)
-
-* April 2, 2004
-- Updated various man pages to look nicer when converted to HTML on the web
-  site.
-
-* April 1, 2004
-- Dirk Manske provided a new function that is now named ares_cancel(). It is
-  used to cancel/cleanup a resolve/request made using ares functions on the
-  given ares channel. It does not destroy/kill the ares channel itself.
-
-- Dominick Meglio cleaned up the formatting in several man pages.
-
-* March 30, 2004
-- Dominick Meglio's new ares_expand_string. A helper function when decoding
-  incoming DNS packages.
-
-- Daniel Stenberg modified the Makefile.in to use a for loop for the man page
-  installation to improve overview and make it easier to add man pages.
-
-Version 1.1.0 (March 11, 2004)
-
-* March 9, 2004
-- Gisle Vanem improved build on Windows.
-
-* February 25, 2004
-- Dan Fandrich found a flaw in the Feb 22 fix.
-
-- Added better configure --enable-debug logic (taken from the curl configure
-  script). Added acinclude.m4 to the tarball.
-
-* February 23, 2004
-- Removed ares_free_errmem(), the function, the file and the man page. It was
-  not used and it did nothing.
-
-- Fixed a lot of code that wasn't "64bit clean" and thus caused a lot of
-  compiler warnings on picky compilers.
-
-* February 22, 2004
-- Dominick Meglio made ares init support multiple name servers in the
-  NameServer key on Windows.
-
-* February 16, 2004
-- Modified ares_private.h to include libcurl's memory debug header if
-  CURLDEBUG is set. This makes all the ares-functions supervised properly by
-  the curl test suite. This also forced me to add inclusion of the
-  ares_private.h header in a few more files that are using some kind of
-  memory-related resources.
-
-- Made the makefile only build ahost and adig if 'make demos' is used.
-
-* February 10, 2004
-- Dirk Manske made ares_version.h installed with 'make install'
-
-* February 4, 2004
-- ares_free_errmem() is subject for removal, it is simply present for future
-  purposes, and since we removed the extra parameter in strerror() it won't
-  be used by c-ares!
-- configure --enable-debug now enables picky compiler options if gcc is used
-- fixed several compiler warnings --enable-debug showed and Joerg Mueller-Tolk
-  reported
-
-Version 1.0.0 (February 3, 2004)
-
-* February 3, 2004
-- now we produce the libcares.a library instead of the previous libares.a
-  since we are no longer compatible
-
-* February 2, 2004
-
-- ares_strerror() has one argument less. This is the first official
-  modification of the existing provided ares API.
-
-* January 29, 2004
-
-- Dirk Manske fixed how the socket is set non-blocking.
-
-* January 4, 2004
-
-- Dominick Meglio made the private gettimeofday() become ares_gettimeofday()
-  instead in order to not pollute the name space and risk colliding with
-  other libraries' versions of this function.
-
-* October 24, 2003. Daniel Stenberg
-
-  Added ares_version().
-
-Version 1.0-pre1 (8 October 2003)
-
-- James Bursa made it run on RISC OS
-
-- Dominick Meglio made it run fine on NT4
-
-- Duncan Wilcox made it work fine on Mac OS X
-
-- Daniel Stenberg adjusted the windows port
-
-- liren at vivisimo.com made the initial windows port
-
-* Imported the sources from ares 1.1.1
diff --git a/src/other/ares/Makefile.am b/src/other/ares/Makefile.am
deleted file mode 100644
index 780adbb..0000000
--- a/src/other/ares/Makefile.am
+++ /dev/null
@@ -1,171 +0,0 @@
-AUTOMAKE_OPTIONS = foreign nostdinc
-
-ACLOCAL_AMFLAGS = -I m4
-
-# Specify our include paths here, and do it relative to $(top_srcdir) and
-# $(top_builddir), to ensure that these paths which belong to the library
-# being currently built and tested are searched before the library which
-# might possibly already be installed in the system.
-#
-# When using the low-level hard-hacking memory leak tracking code from
-# libcurl the generated curl/curlbuild.h file must also be reachable.
-# Using the libcurl lowlevel code from within c-ares library is ugly and
-# only works when c-ares is built and linked with a similarly debug-build
-# libcurl, but we do this anyway for convenience.
-#
-# $(top_builddir)/../include/curl for generated curlbuild.h included from curl.h
-# $(top_builddir)/../include is for libcurl's generated curl/curlbuild.h file
-# $(top_srcdir)/../include is for libcurl's external include files
-# $(top_builddir)/../lib is for libcurl's generated lib/curl_config.h file
-# $(top_srcdir)/../lib is for libcurl's lib/setup.h and other "private" files
-# $(top_builddir) is for c-ares's generated ares_config.h file
-# $(top_srcdir) is for c-ares's ares_setup.h and other "c-ares-private" files
-
-if CURLDEBUG
-INCLUDES = -I$(top_builddir)/../include/curl \
-           -I$(top_builddir)/../include      \
-           -I$(top_srcdir)/../include        \
-           -I$(top_builddir)/../lib          \
-           -I$(top_srcdir)/../lib            \
-           -I$(top_builddir)                 \
-           -I$(top_srcdir)
-else
-INCLUDES = -I$(top_builddir) \
-           -I$(top_srcdir)
-endif
-
-noinst_LTLIBRARIES = libcares.la
-
-noinst_MANS = $(MANPAGES)
-
-MSVCFILES = vc/vc6aws.dsw vc/acountry/vc6acountry.dsp vc/adig/vc6adig.dsp \
- vc/ahost/vc6ahost.dsp vc/cares/vc6cares.dsp vc/cares/vc6cares.dsw
-
-if CURLDEBUG
-PROGS =
-else
-PROGS = ahost adig acountry
-endif
-
-noinst_PROGRAMS =$(PROGS)
-
-# adig and ahost are just sample programs and thus not mentioned with the
-# regular sources and headers
-EXTRA_DIST = AUTHORS CHANGES README.cares Makefile.inc Makefile.dj	   \
- Makefile.m32 Makefile.netware Makefile.msvc $(man_MANS) $(MSVCFILES)	   \
- config-win32.h RELEASE-NOTES libcares.pc.in buildconf get_ver.awk maketgz \
- TODO ares_build.h.in $(PDFPAGES) cares.rc README.msvc
-
-CLEANFILES = $(PDFPAGES) $(HTMLPAGES)
-
-DISTCLEANFILES = ares_build.h
-
-pkgconfigdir = $(libdir)/pkgconfig
-noinst_DATA = libcares.pc
-
-VER=-version-info 2:0:0
-# This flag accepts an argument of the form current[:revision[:age]]. So,
-# passing -version-info 3:12:1 sets current to 3, revision to 12, and age to
-# 1.
-#
-# If either revision or age are omitted, they default to 0. Also note that age
-# must be less than or equal to the current interface number.
-#
-# Here are a set of rules to help you update your library version information: 
-#
-# 1.Start with version information of 0:0:0 for each libtool library.
-#
-# 2.Update the version information only immediately before a public release of
-# your software. More frequent updates are unnecessary, and only guarantee
-# that the current interface number gets larger faster.
-#
-# 3.If the library source code has changed at all since the last update, then
-# increment revision (c:r+1:a)
-#
-# 4.If any interfaces have been added, removed, or changed since the last
-# update, increment current, and set revision to 0. (c+1:r=0:a)
-#
-# 5.If any interfaces have been added since the last public release, then
-# increment age. (c:r:a+1)
-#
-# 6.If any interfaces have been removed since the last public release, then
-# set age to 0. (c:r:a=0)
-#
-
-if NO_UNDEFINED
-# The -no-undefined flag is crucial for this to build fine on some platforms
-UNDEF = -no-undefined
-endif
-
-libcares_la_LDFLAGS = $(UNDEF) $(VER)
-
-# Makefile.inc provides the CSOURCES and HHEADERS defines
-include Makefile.inc
-
-libcares_la_SOURCES = $(CSOURCES) $(HHEADERS)
-
-# where to install the c-ares headers
-libcares_ladir = $(includedir)
-# what headers to install on 'make install':
-noinst_HEADERS = ares.h ares_version.h ares_dns.h \
-	ares_build.h ares_rules.h
-
-ahost_SOURCES = ahost.c $(SAMPLESOURCES) $(SAMPLEHEADERS)
-ahost_LDADD = $(top_builddir)/libcares.la
-ahost_CFLAGS = $(AM_CFLAGS)
-
-adig_SOURCES = adig.c $(SAMPLESOURCES) $(SAMPLEHEADERS)
-adig_LDADD = $(top_builddir)/libcares.la
-adig_CFLAGS = $(AM_CFLAGS)
-
-acountry_SOURCES = acountry.c $(SAMPLESOURCES) $(SAMPLEHEADERS)
-acountry_LDADD = $(top_builddir)/libcares.la
-acountry_CFLAGS = $(AM_CFLAGS)
-
-SOURCEDMANDIR = man3
-SOURCEDMANPAGES = ares_init.3
-
-clean-local: clean-sourced-manpages
-
-clean-sourced-manpages:
-	@srcdmandir='$(SOURCEDMANDIR)'; \
-	echo "rm -rf $(top_builddir)/$$srcdmandir"; \
-	rm -rf $(top_builddir)/$$srcdmandir
-
-sourced-manpages: clean-sourced-manpages
-	@srcdmandir='$(SOURCEDMANDIR)'; \
-	srcdmanfiles='$(SOURCEDMANPAGES)'; \
-	mkdir $(top_builddir)/$$srcdmandir; \
-	for file in $$srcdmanfiles; do \
-	  if test -f $(top_srcdir)/$$file; then \
-	    echo "cp $(top_srcdir)/$$file $(top_builddir)/$$srcdmandir/$$file"; \
-	    cp $(top_srcdir)/$$file $(top_builddir)/$$srcdmandir/$$file; \
-	  fi; \
-	done
-
-MAN2HTML = roffit --mandir=. < $< >$@
-
-SUFFIXES = .3 .html
-
-html: sourced-manpages $(HTMLPAGES)
-
-.3.html:
-	$(MAN2HTML)
-
-pdf: sourced-manpages $(PDFPAGES)
-
-.3.pdf:
-	@(foo=`echo $@ | sed -e 's/\.[0-9]$$//g'`; \
-	groff -Tps -man $< >$$foo.ps; \
-	ps2pdf $$foo.ps $@; \
-	rm $$foo.ps; \
-	echo "converted $< to $@")
-
-# Make files named *.dist replace the file without .dist extension
-dist-hook:
-	find $(distdir) -name "*.dist" -exec rm {} \;
-	(distit=`find $(srcdir) -name "*.dist"`; \
-	for file in $$distit; do \
-	  strip=`echo $$file | sed -e s/^$(srcdir)// -e s/\.dist//`; \
-	  cp $$file $(distdir)$$strip; \
-	done)
diff --git a/src/other/ares/Makefile.dj b/src/other/ares/Makefile.dj
deleted file mode 100644
index f6b9d8f..0000000
--- a/src/other/ares/Makefile.dj
+++ /dev/null
@@ -1,86 +0,0 @@
-#
-# c-ares Makefile for djgpp/gcc/Watt-32.
-#   By Gisle Vanem <gvanem at broadpark.no> 2004.
-#
-# $Id$
-
-
-TOPDIR = ..
-
-DEPEND_PREREQ = ares_config.h
-
-include ../packages/DOS/common.dj
-include Makefile.inc
-
-CFLAGS += -DWATT32 -Dselect=select_s
-
-LDFLAGS = -s
-
-ifeq ($(USE_CURLDEBUG),1)
-  EX_LIBS  = ../lib/libcurl.a
-  OBJ_HACK = $(OBJECTS)
-else
-  OBJ_HACK = libcares.a
-endif
-
-ifeq ($(USE_SSL),1)
-  EX_LIBS += $(OPENSSL_ROOT)/lib/libssl.a $(OPENSSL_ROOT)/lib/libcrypt.a
-endif
-
-ifeq ($(USE_ZLIB),1)
-  EX_LIBS += $(ZLIB_ROOT)/libz.a
-endif
-
-ifeq ($(USE_IDNA),1)
-  EX_LIBS += $(LIBIDN_ROOT)/lib/dj_obj/libidn.a -liconv
-endif
-
-EX_LIBS += $(WATT32_ROOT)/lib/libwatt.a
-
-OBJECTS = $(addprefix $(OBJ_DIR)/, $(CSOURCES:.c=.o))
-
-all: $(OBJ_DIR) ares_config.h libcares.a ahost.exe adig.exe acountry.exe
-	@echo Welcome to c-ares.
-
-libcares.a: $(OBJECTS)
-	ar rs $@ $?
-
-ares_config.h: config.dos
-	$(COPY) $^ $@
-
-ahost.exe: ahost.c $(OBJ_DIR)/ares_getopt.o $(OBJ_HACK)
-	$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(EX_LIBS)
-
-adig.exe: adig.c $(OBJ_DIR)/ares_getopt.o $(OBJ_HACK)
-	$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(EX_LIBS)
-
-acountry.exe: acountry.c $(OBJ_DIR)/ares_getopt.o $(OBJ_HACK)
-	$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(EX_LIBS)
-
-# clean generated files
-#
-genclean:
-	- $(DELETE) ares_config.h
-
-# clean object files and subdir
-#
-objclean: genclean
-	- $(DELETE) $(OBJ_DIR)$(DS)*.o
-	- $(RMDIR) $(OBJ_DIR)
-
-# clean without removing built library and programs
-#
-clean: objclean
-	- $(DELETE) depend.dj
-
-# clean everything
-#
-realclean vclean: clean
-	- $(DELETE) libcares.a
-	- $(DELETE) acountry.exe
-	- $(DELETE) adig.exe
-	- $(DELETE) ahost.exe
-	- $(DELETE) libcares.a
-
--include depend.dj
-
diff --git a/src/other/ares/Makefile.in b/src/other/ares/Makefile.in
deleted file mode 100644
index 57a03a4..0000000
--- a/src/other/ares/Makefile.in
+++ /dev/null
@@ -1,1335 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-
-
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-noinst_PROGRAMS = $(am__EXEEXT_1)
-DIST_COMMON = README $(am__configure_deps) $(noinst_HEADERS) \
-	$(srcdir)/Makefile.am $(srcdir)/Makefile.in \
-	$(srcdir)/Makefile.inc $(srcdir)/ares_build.h.in \
-	$(srcdir)/ares_config.h.in $(srcdir)/libcares.pc.in \
-	$(top_srcdir)/configure AUTHORS NEWS TODO compile config.guess \
-	config.sub depcomp install-sh ltmain.sh missing
-subdir = .
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/cares-compilers.m4 \
-	$(top_srcdir)/m4/cares-confopts.m4 \
-	$(top_srcdir)/m4/cares-functions.m4 \
-	$(top_srcdir)/m4/cares-override.m4 \
-	$(top_srcdir)/m4/cares-reentrant.m4 \
-	$(top_srcdir)/m4/cares-system.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
- configure.lineno config.status.lineno
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = ares_config.h ares_build.h
-CONFIG_CLEAN_FILES = libcares.pc
-CONFIG_CLEAN_VPATH_FILES =
-LTLIBRARIES = $(noinst_LTLIBRARIES)
-libcares_la_LIBADD =
-am__objects_1 = ares__close_sockets.lo ares__get_hostent.lo \
-	ares__read_line.lo ares__timeval.lo ares_cancel.lo \
-	ares_data.lo ares_destroy.lo ares_expand_name.lo \
-	ares_expand_string.lo ares_fds.lo ares_free_hostent.lo \
-	ares_free_string.lo ares_gethostbyaddr.lo \
-	ares_gethostbyname.lo ares_getnameinfo.lo ares_getsock.lo \
-	ares_init.lo ares_library_init.lo ares_llist.lo \
-	ares_mkquery.lo ares_nowarn.lo ares_options.lo \
-	ares_parse_a_reply.lo ares_parse_aaaa_reply.lo \
-	ares_parse_ns_reply.lo ares_parse_ptr_reply.lo \
-	ares_parse_srv_reply.lo ares_parse_txt_reply.lo \
-	ares_process.lo ares_query.lo ares_search.lo ares_send.lo \
-	ares_strcasecmp.lo ares_strdup.lo ares_strerror.lo \
-	ares_timeout.lo ares_version.lo ares_writev.lo bitncmp.lo \
-	inet_net_pton.lo inet_ntop.lo windows_port.lo
-am__objects_2 =
-am_libcares_la_OBJECTS = $(am__objects_1) $(am__objects_2)
-libcares_la_OBJECTS = $(am_libcares_la_OBJECTS)
-libcares_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
-	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-	$(libcares_la_LDFLAGS) $(LDFLAGS) -o $@
- at CURLDEBUG_FALSE@am__EXEEXT_1 = ahost$(EXEEXT) adig$(EXEEXT) \
- at CURLDEBUG_FALSE@	acountry$(EXEEXT)
-PROGRAMS = $(noinst_PROGRAMS)
-am__objects_3 = acountry-ares_getopt.$(OBJEXT) \
-	acountry-ares_strcasecmp.$(OBJEXT) \
-	acountry-inet_net_pton.$(OBJEXT) acountry-inet_ntop.$(OBJEXT)
-am_acountry_OBJECTS = acountry-acountry.$(OBJEXT) $(am__objects_3) \
-	$(am__objects_2)
-acountry_OBJECTS = $(am_acountry_OBJECTS)
-acountry_DEPENDENCIES = $(top_builddir)/libcares.la
-acountry_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=link $(CCLD) $(acountry_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
-	$(LDFLAGS) -o $@
-am__objects_4 = adig-ares_getopt.$(OBJEXT) \
-	adig-ares_strcasecmp.$(OBJEXT) adig-inet_net_pton.$(OBJEXT) \
-	adig-inet_ntop.$(OBJEXT)
-am_adig_OBJECTS = adig-adig.$(OBJEXT) $(am__objects_4) \
-	$(am__objects_2)
-adig_OBJECTS = $(am_adig_OBJECTS)
-adig_DEPENDENCIES = $(top_builddir)/libcares.la
-adig_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=link $(CCLD) $(adig_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
-	$(LDFLAGS) -o $@
-am__objects_5 = ahost-ares_getopt.$(OBJEXT) \
-	ahost-ares_strcasecmp.$(OBJEXT) ahost-inet_net_pton.$(OBJEXT) \
-	ahost-inet_ntop.$(OBJEXT)
-am_ahost_OBJECTS = ahost-ahost.$(OBJEXT) $(am__objects_5) \
-	$(am__objects_2)
-ahost_OBJECTS = $(am_ahost_OBJECTS)
-ahost_DEPENDENCIES = $(top_builddir)/libcares.la
-ahost_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=link $(CCLD) $(ahost_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
-	$(LDFLAGS) -o $@
-DEFAULT_INCLUDES = 
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
-	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
-	$(LDFLAGS) -o $@
-SOURCES = $(libcares_la_SOURCES) $(acountry_SOURCES) $(adig_SOURCES) \
-	$(ahost_SOURCES)
-DIST_SOURCES = $(libcares_la_SOURCES) $(acountry_SOURCES) \
-	$(adig_SOURCES) $(ahost_SOURCES)
-DATA = $(noinst_DATA)
-HEADERS = $(noinst_HEADERS)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
-  { test ! -d "$(distdir)" \
-    || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
-         && rm -fr "$(distdir)"; }; }
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CARES_PRIVATE_LIBS = @CARES_PRIVATE_LIBS@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH = @PATH@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-RANDOM_FILE = @RANDOM_FILE@
-RANLIB = @RANLIB@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-AUTOMAKE_OPTIONS = foreign nostdinc
-ACLOCAL_AMFLAGS = -I m4
- at CURLDEBUG_FALSE@INCLUDES = -I$(top_builddir) \
- at CURLDEBUG_FALSE@           -I$(top_srcdir)
-
-
-# Specify our include paths here, and do it relative to $(top_srcdir) and
-# $(top_builddir), to ensure that these paths which belong to the library
-# being currently built and tested are searched before the library which
-# might possibly already be installed in the system.
-#
-# When using the low-level hard-hacking memory leak tracking code from
-# libcurl the generated curl/curlbuild.h file must also be reachable.
-# Using the libcurl lowlevel code from within c-ares library is ugly and
-# only works when c-ares is built and linked with a similarly debug-build
-# libcurl, but we do this anyway for convenience.
-#
-# $(top_builddir)/../include/curl for generated curlbuild.h included from curl.h
-# $(top_builddir)/../include is for libcurl's generated curl/curlbuild.h file
-# $(top_srcdir)/../include is for libcurl's external include files
-# $(top_builddir)/../lib is for libcurl's generated lib/curl_config.h file
-# $(top_srcdir)/../lib is for libcurl's lib/setup.h and other "private" files
-# $(top_builddir) is for c-ares's generated ares_config.h file
-# $(top_srcdir) is for c-ares's ares_setup.h and other "c-ares-private" files
- at CURLDEBUG_TRUE@INCLUDES = -I$(top_builddir)/../include/curl \
- at CURLDEBUG_TRUE@           -I$(top_builddir)/../include      \
- at CURLDEBUG_TRUE@           -I$(top_srcdir)/../include        \
- at CURLDEBUG_TRUE@           -I$(top_builddir)/../lib          \
- at CURLDEBUG_TRUE@           -I$(top_srcdir)/../lib            \
- at CURLDEBUG_TRUE@           -I$(top_builddir)                 \
- at CURLDEBUG_TRUE@           -I$(top_srcdir)
-
-noinst_LTLIBRARIES = libcares.la
-noinst_MANS = $(MANPAGES)
-MSVCFILES = vc/vc6aws.dsw vc/acountry/vc6acountry.dsp vc/adig/vc6adig.dsp \
- vc/ahost/vc6ahost.dsp vc/cares/vc6cares.dsp vc/cares/vc6cares.dsw
-
- at CURLDEBUG_FALSE@PROGS = ahost adig acountry
- at CURLDEBUG_TRUE@PROGS = 
-
-# adig and ahost are just sample programs and thus not mentioned with the
-# regular sources and headers
-EXTRA_DIST = AUTHORS CHANGES README.cares Makefile.inc Makefile.dj	   \
- Makefile.m32 Makefile.netware Makefile.msvc $(man_MANS) $(MSVCFILES)	   \
- config-win32.h RELEASE-NOTES libcares.pc.in buildconf get_ver.awk maketgz \
- TODO ares_build.h.in $(PDFPAGES) cares.rc README.msvc
-
-CLEANFILES = $(PDFPAGES) $(HTMLPAGES)
-DISTCLEANFILES = ares_build.h
-pkgconfigdir = $(libdir)/pkgconfig
-noinst_DATA = libcares.pc
-VER = -version-info 2:0:0
-# This flag accepts an argument of the form current[:revision[:age]]. So,
-# passing -version-info 3:12:1 sets current to 3, revision to 12, and age to
-# 1.
-#
-# If either revision or age are omitted, they default to 0. Also note that age
-# must be less than or equal to the current interface number.
-#
-# Here are a set of rules to help you update your library version information: 
-#
-# 1.Start with version information of 0:0:0 for each libtool library.
-#
-# 2.Update the version information only immediately before a public release of
-# your software. More frequent updates are unnecessary, and only guarantee
-# that the current interface number gets larger faster.
-#
-# 3.If the library source code has changed at all since the last update, then
-# increment revision (c:r+1:a)
-#
-# 4.If any interfaces have been added, removed, or changed since the last
-# update, increment current, and set revision to 0. (c+1:r=0:a)
-#
-# 5.If any interfaces have been added since the last public release, then
-# increment age. (c:r:a+1)
-#
-# 6.If any interfaces have been removed since the last public release, then
-# set age to 0. (c:r:a=0)
-#
-
-# The -no-undefined flag is crucial for this to build fine on some platforms
- at NO_UNDEFINED_TRUE@UNDEF = -no-undefined
-libcares_la_LDFLAGS = $(UNDEF) $(VER)
-CSOURCES = ares__close_sockets.c	\
-  ares__get_hostent.c			\
-  ares__read_line.c			\
-  ares__timeval.c			\
-  ares_cancel.c				\
-  ares_data.c				\
-  ares_destroy.c			\
-  ares_expand_name.c			\
-  ares_expand_string.c			\
-  ares_fds.c				\
-  ares_free_hostent.c			\
-  ares_free_string.c			\
-  ares_gethostbyaddr.c			\
-  ares_gethostbyname.c			\
-  ares_getnameinfo.c			\
-  ares_getsock.c			\
-  ares_init.c				\
-  ares_library_init.c			\
-  ares_llist.c				\
-  ares_mkquery.c			\
-  ares_nowarn.c				\
-  ares_options.c			\
-  ares_parse_a_reply.c			\
-  ares_parse_aaaa_reply.c		\
-  ares_parse_ns_reply.c			\
-  ares_parse_ptr_reply.c		\
-  ares_parse_srv_reply.c		\
-  ares_parse_txt_reply.c		\
-  ares_process.c			\
-  ares_query.c				\
-  ares_search.c				\
-  ares_send.c				\
-  ares_strcasecmp.c			\
-  ares_strdup.c				\
-  ares_strerror.c			\
-  ares_timeout.c			\
-  ares_version.c			\
-  ares_writev.c				\
-  bitncmp.c				\
-  inet_net_pton.c			\
-  inet_ntop.c				\
-  windows_port.c
-
-HHEADERS = ares.h			\
-  ares_build.h				\
-  ares_data.h				\
-  ares_dns.h				\
-  ares_ipv6.h				\
-  ares_library_init.h			\
-  ares_llist.h				\
-  ares_nowarn.h				\
-  ares_private.h			\
-  ares_rules.h				\
-  ares_strcasecmp.h			\
-  ares_strdup.h				\
-  ares_version.h			\
-  ares_writev.h				\
-  bitncmp.h				\
-  inet_net_pton.h			\
-  inet_ntop.h				\
-  nameser.h				\
-  ares_setup.h				\
-  setup_once.h
-
-MANPAGES = ares_cancel.3		\
-  ares_destroy.3			\
-  ares_destroy_options.3		\
-  ares_dup.3				\
-  ares_expand_name.3			\
-  ares_expand_string.3			\
-  ares_fds.3				\
-  ares_free_data.3			\
-  ares_free_hostent.3			\
-  ares_free_string.3			\
-  ares_get_servers.3			\
-  ares_gethostbyaddr.3			\
-  ares_gethostbyname.3			\
-  ares_gethostbyname_file.3		\
-  ares_getnameinfo.3			\
-  ares_getsock.3			\
-  ares_init.3				\
-  ares_init_options.3			\
-  ares_library_cleanup.3		\
-  ares_library_init.3			\
-  ares_mkquery.3			\
-  ares_parse_a_reply.3			\
-  ares_parse_aaaa_reply.3		\
-  ares_parse_ns_reply.3			\
-  ares_parse_ptr_reply.3		\
-  ares_parse_srv_reply.3		\
-  ares_parse_txt_reply.3		\
-  ares_process.3			\
-  ares_query.3				\
-  ares_save_options.3			\
-  ares_search.3				\
-  ares_send.3				\
-  ares_set_servers.3			\
-  ares_set_socket_callback.3		\
-  ares_strerror.3			\
-  ares_timeout.3			\
-  ares_version.3
-
-HTMLPAGES = ares_cancel.html		\
-  ares_destroy.html			\
-  ares_destroy_options.html		\
-  ares_dup.html				\
-  ares_expand_name.html			\
-  ares_expand_string.html		\
-  ares_fds.html				\
-  ares_free_data.html			\
-  ares_free_hostent.html		\
-  ares_free_string.html			\
-  ares_get_servers.html			\
-  ares_gethostbyaddr.html		\
-  ares_gethostbyname.html		\
-  ares_gethostbyname_file.html		\
-  ares_getnameinfo.html			\
-  ares_getsock.html			\
-  ares_init.html			\
-  ares_init_options.html		\
-  ares_library_cleanup.html		\
-  ares_library_init.html		\
-  ares_mkquery.html			\
-  ares_parse_a_reply.html		\
-  ares_parse_aaaa_reply.html		\
-  ares_parse_ns_reply.html		\
-  ares_parse_ptr_reply.html		\
-  ares_parse_srv_reply.html		\
-  ares_parse_txt_reply.html		\
-  ares_process.html			\
-  ares_query.html			\
-  ares_save_options.html		\
-  ares_search.html			\
-  ares_send.html			\
-  ares_set_servers.html			\
-  ares_set_socket_callback.html		\
-  ares_strerror.html			\
-  ares_timeout.html			\
-  ares_version.html
-
-PDFPAGES = ares_cancel.pdf		\
-  ares_destroy.pdf			\
-  ares_destroy_options.pdf		\
-  ares_dup.pdf				\
-  ares_expand_name.pdf			\
-  ares_expand_string.pdf		\
-  ares_fds.pdf				\
-  ares_free_data.pdf			\
-  ares_free_hostent.pdf			\
-  ares_free_string.pdf			\
-  ares_get_servers.pdf			\
-  ares_gethostbyaddr.pdf		\
-  ares_gethostbyname.pdf		\
-  ares_gethostbyname_file.pdf		\
-  ares_getnameinfo.pdf			\
-  ares_getsock.pdf			\
-  ares_init.pdf				\
-  ares_init_options.pdf			\
-  ares_library_cleanup.pdf		\
-  ares_library_init.pdf			\
-  ares_mkquery.pdf			\
-  ares_parse_a_reply.pdf		\
-  ares_parse_aaaa_reply.pdf		\
-  ares_parse_ns_reply.pdf		\
-  ares_parse_ptr_reply.pdf		\
-  ares_parse_srv_reply.pdf		\
-  ares_parse_txt_reply.pdf		\
-  ares_process.pdf			\
-  ares_query.pdf			\
-  ares_save_options.pdf			\
-  ares_search.pdf			\
-  ares_send.pdf				\
-  ares_set_servers.pdf			\
-  ares_set_socket_callback.pdf		\
-  ares_strerror.pdf			\
-  ares_timeout.pdf			\
-  ares_version.pdf
-
-SAMPLESOURCES = ares_getopt.c		\
-  ares_strcasecmp.c			\
-  inet_net_pton.c			\
-  inet_ntop.c
-
-SAMPLEHEADERS = ares_getopt.h		\
-  ares_strcasecmp.h			\
-  inet_net_pton.h			\
-  inet_ntop.h
-
-
-# Makefile.inc provides the CSOURCES and HHEADERS defines
-libcares_la_SOURCES = $(CSOURCES) $(HHEADERS)
-
-# where to install the c-ares headers
-libcares_ladir = $(includedir)
-# what headers to install on 'make install':
-noinst_HEADERS = ares.h ares_version.h ares_dns.h \
-	ares_build.h ares_rules.h
-
-ahost_SOURCES = ahost.c $(SAMPLESOURCES) $(SAMPLEHEADERS)
-ahost_LDADD = $(top_builddir)/libcares.la
-ahost_CFLAGS = $(AM_CFLAGS)
-adig_SOURCES = adig.c $(SAMPLESOURCES) $(SAMPLEHEADERS)
-adig_LDADD = $(top_builddir)/libcares.la
-adig_CFLAGS = $(AM_CFLAGS)
-acountry_SOURCES = acountry.c $(SAMPLESOURCES) $(SAMPLEHEADERS)
-acountry_LDADD = $(top_builddir)/libcares.la
-acountry_CFLAGS = $(AM_CFLAGS)
-SOURCEDMANDIR = man3
-SOURCEDMANPAGES = ares_init.3
-MAN2HTML = roffit --mandir=. < $< >$@
-SUFFIXES = .3 .html
-all: ares_config.h ares_build.h
-	$(MAKE) $(AM_MAKEFLAGS) all-am
-
-.SUFFIXES:
-.SUFFIXES: .3 .html .c .lo .o .obj .pdf
-am--refresh:
-	@:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Makefile.inc $(am__configure_deps)
-	@for dep in $?; do \
-	  case '$(am__configure_deps)' in \
-	    *$$dep*) \
-	      echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
-	      $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
-		&& exit 0; \
-	      exit 1;; \
-	  esac; \
-	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    echo ' $(SHELL) ./config.status'; \
-	    $(SHELL) ./config.status;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	$(SHELL) ./config.status --recheck
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	$(am__cd) $(srcdir) && $(AUTOCONF)
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
-$(am__aclocal_m4_deps):
-
-ares_config.h: stamp-h1
-	@if test ! -f $@; then \
-	  rm -f stamp-h1; \
-	  $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
-	else :; fi
-
-stamp-h1: $(srcdir)/ares_config.h.in $(top_builddir)/config.status
-	@rm -f stamp-h1
-	cd $(top_builddir) && $(SHELL) ./config.status ares_config.h
-$(srcdir)/ares_config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) 
-	($(am__cd) $(top_srcdir) && $(AUTOHEADER))
-	rm -f stamp-h1
-	touch $@
-
-ares_build.h: stamp-h2
-	@if test ! -f $@; then \
-	  rm -f stamp-h2; \
-	  $(MAKE) $(AM_MAKEFLAGS) stamp-h2; \
-	else :; fi
-
-stamp-h2: $(srcdir)/ares_build.h.in $(top_builddir)/config.status
-	@rm -f stamp-h2
-	cd $(top_builddir) && $(SHELL) ./config.status ares_build.h
-
-distclean-hdr:
-	-rm -f ares_config.h stamp-h1 ares_build.h stamp-h2
-libcares.pc: $(top_builddir)/config.status $(srcdir)/libcares.pc.in
-	cd $(top_builddir) && $(SHELL) ./config.status $@
-
-clean-noinstLTLIBRARIES:
-	-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
-	@list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
-	  dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
-	  test "$$dir" != "$$p" || dir=.; \
-	  echo "rm -f \"$${dir}/so_locations\""; \
-	  rm -f "$${dir}/so_locations"; \
-	done
-libcares.la: $(libcares_la_OBJECTS) $(libcares_la_DEPENDENCIES) 
-	$(libcares_la_LINK)  $(libcares_la_OBJECTS) $(libcares_la_LIBADD) $(LIBS)
-
-clean-noinstPROGRAMS:
-	@list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
-	echo " rm -f" $$list; \
-	rm -f $$list || exit $$?; \
-	test -n "$(EXEEXT)" || exit 0; \
-	list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
-	echo " rm -f" $$list; \
-	rm -f $$list
-acountry$(EXEEXT): $(acountry_OBJECTS) $(acountry_DEPENDENCIES) 
-	@rm -f acountry$(EXEEXT)
-	$(acountry_LINK) $(acountry_OBJECTS) $(acountry_LDADD) $(LIBS)
-adig$(EXEEXT): $(adig_OBJECTS) $(adig_DEPENDENCIES) 
-	@rm -f adig$(EXEEXT)
-	$(adig_LINK) $(adig_OBJECTS) $(adig_LDADD) $(LIBS)
-ahost$(EXEEXT): $(ahost_OBJECTS) $(ahost_DEPENDENCIES) 
-	@rm -f ahost$(EXEEXT)
-	$(ahost_LINK) $(ahost_OBJECTS) $(ahost_LDADD) $(LIBS)
-
-mostlyclean-compile:
-	-rm -f *.$(OBJEXT)
-
-distclean-compile:
-	-rm -f *.tab.c
-
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/acountry-acountry.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/acountry-ares_getopt.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/acountry-ares_strcasecmp.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/acountry-inet_net_pton.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/acountry-inet_ntop.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/adig-adig.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/adig-ares_getopt.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/adig-ares_strcasecmp.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/adig-inet_net_pton.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/adig-inet_ntop.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ahost-ahost.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ahost-ares_getopt.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ahost-ares_strcasecmp.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ahost-inet_net_pton.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ahost-inet_ntop.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares__close_sockets.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares__get_hostent.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares__read_line.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares__timeval.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_cancel.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_data.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_destroy.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_expand_name.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_expand_string.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_fds.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_free_hostent.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_free_string.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_gethostbyaddr.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_gethostbyname.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_getnameinfo.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_getsock.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_init.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_library_init.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_llist.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_mkquery.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_nowarn.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_options.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_parse_a_reply.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_parse_aaaa_reply.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_parse_ns_reply.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_parse_ptr_reply.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_parse_srv_reply.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_parse_txt_reply.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_process.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_query.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_search.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_send.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_strcasecmp.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_strdup.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_strerror.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_timeout.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_version.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ares_writev.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/bitncmp.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/inet_net_pton.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/inet_ntop.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/windows_port.Plo at am__quote@
-
-.c.o:
- at am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c $<
-
-.c.obj:
- at am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-.c.lo:
- at am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
-
-acountry-acountry.o: acountry.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -MT acountry-acountry.o -MD -MP -MF $(DEPDIR)/acountry-acountry.Tpo -c -o acountry-acountry.o `test -f 'acountry.c' || echo '$(srcdir)/'`acountry.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/acountry-acountry.Tpo $(DEPDIR)/acountry-acountry.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='acountry.c' object='acountry-acountry.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -c -o acountry-acountry.o `test -f 'acountry.c' || echo '$(srcdir)/'`acountry.c
-
-acountry-acountry.obj: acountry.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -MT acountry-acountry.obj -MD -MP -MF $(DEPDIR)/acountry-acountry.Tpo -c -o acountry-acountry.obj `if test -f 'acountry.c'; then $(CYGPATH_W) 'acountry.c'; else $(CYGPATH_W) '$(srcdir)/acountry.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/acountry-acountry.Tpo $(DEPDIR)/acountry-acountry.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='acountry.c' object='acountry-acountry.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -c -o acountry-acountry.obj `if test -f 'acountry.c'; then $(CYGPATH_W) 'acountry.c'; else $(CYGPATH_W) '$(srcdir)/acountry.c'; fi`
-
-acountry-ares_getopt.o: ares_getopt.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -MT acountry-ares_getopt.o -MD -MP -MF $(DEPDIR)/acountry-ares_getopt.Tpo -c -o acountry-ares_getopt.o `test -f 'ares_getopt.c' || echo '$(srcdir)/'`ares_getopt.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/acountry-ares_getopt.Tpo $(DEPDIR)/acountry-ares_getopt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ares_getopt.c' object='acountry-ares_getopt.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -c -o acountry-ares_getopt.o `test -f 'ares_getopt.c' || echo '$(srcdir)/'`ares_getopt.c
-
-acountry-ares_getopt.obj: ares_getopt.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -MT acountry-ares_getopt.obj -MD -MP -MF $(DEPDIR)/acountry-ares_getopt.Tpo -c -o acountry-ares_getopt.obj `if test -f 'ares_getopt.c'; then $(CYGPATH_W) 'ares_getopt.c'; else $(CYGPATH_W) '$(srcdir)/ares_getopt.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/acountry-ares_getopt.Tpo $(DEPDIR)/acountry-ares_getopt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ares_getopt.c' object='acountry-ares_getopt.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -c -o acountry-ares_getopt.obj `if test -f 'ares_getopt.c'; then $(CYGPATH_W) 'ares_getopt.c'; else $(CYGPATH_W) '$(srcdir)/ares_getopt.c'; fi`
-
-acountry-ares_strcasecmp.o: ares_strcasecmp.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -MT acountry-ares_strcasecmp.o -MD -MP -MF $(DEPDIR)/acountry-ares_strcasecmp.Tpo -c -o acountry-ares_strcasecmp.o `test -f 'ares_strcasecmp.c' || echo '$(srcdir)/'`ares_strcasecmp.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/acountry-ares_strcasecmp.Tpo $(DEPDIR)/acountry-ares_strcasecmp.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ares_strcasecmp.c' object='acountry-ares_strcasecmp.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -c -o acountry-ares_strcasecmp.o `test -f 'ares_strcasecmp.c' || echo '$(srcdir)/'`ares_strcasecmp.c
-
-acountry-ares_strcasecmp.obj: ares_strcasecmp.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -MT acountry-ares_strcasecmp.obj -MD -MP -MF $(DEPDIR)/acountry-ares_strcasecmp.Tpo -c -o acountry-ares_strcasecmp.obj `if test -f 'ares_strcasecmp.c'; then $(CYGPATH_W) 'ares_strcasecmp.c'; else $(CYGPATH_W) '$(srcdir)/ares_strcasecmp.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/acountry-ares_strcasecmp.Tpo $(DEPDIR)/acountry-ares_strcasecmp.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ares_strcasecmp.c' object='acountry-ares_strcasecmp.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -c -o acountry-ares_strcasecmp.obj `if test -f 'ares_strcasecmp.c'; then $(CYGPATH_W) 'ares_strcasecmp.c'; else $(CYGPATH_W) '$(srcdir)/ares_strcasecmp.c'; fi`
-
-acountry-inet_net_pton.o: inet_net_pton.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -MT acountry-inet_net_pton.o -MD -MP -MF $(DEPDIR)/acountry-inet_net_pton.Tpo -c -o acountry-inet_net_pton.o `test -f 'inet_net_pton.c' || echo '$(srcdir)/'`inet_net_pton.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/acountry-inet_net_pton.Tpo $(DEPDIR)/acountry-inet_net_pton.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='inet_net_pton.c' object='acountry-inet_net_pton.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -c -o acountry-inet_net_pton.o `test -f 'inet_net_pton.c' || echo '$(srcdir)/'`inet_net_pton.c
-
-acountry-inet_net_pton.obj: inet_net_pton.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -MT acountry-inet_net_pton.obj -MD -MP -MF $(DEPDIR)/acountry-inet_net_pton.Tpo -c -o acountry-inet_net_pton.obj `if test -f 'inet_net_pton.c'; then $(CYGPATH_W) 'inet_net_pton.c'; else $(CYGPATH_W) '$(srcdir)/inet_net_pton.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/acountry-inet_net_pton.Tpo $(DEPDIR)/acountry-inet_net_pton.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='inet_net_pton.c' object='acountry-inet_net_pton.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -c -o acountry-inet_net_pton.obj `if test -f 'inet_net_pton.c'; then $(CYGPATH_W) 'inet_net_pton.c'; else $(CYGPATH_W) '$(srcdir)/inet_net_pton.c'; fi`
-
-acountry-inet_ntop.o: inet_ntop.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -MT acountry-inet_ntop.o -MD -MP -MF $(DEPDIR)/acountry-inet_ntop.Tpo -c -o acountry-inet_ntop.o `test -f 'inet_ntop.c' || echo '$(srcdir)/'`inet_ntop.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/acountry-inet_ntop.Tpo $(DEPDIR)/acountry-inet_ntop.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='inet_ntop.c' object='acountry-inet_ntop.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -c -o acountry-inet_ntop.o `test -f 'inet_ntop.c' || echo '$(srcdir)/'`inet_ntop.c
-
-acountry-inet_ntop.obj: inet_ntop.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -MT acountry-inet_ntop.obj -MD -MP -MF $(DEPDIR)/acountry-inet_ntop.Tpo -c -o acountry-inet_ntop.obj `if test -f 'inet_ntop.c'; then $(CYGPATH_W) 'inet_ntop.c'; else $(CYGPATH_W) '$(srcdir)/inet_ntop.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/acountry-inet_ntop.Tpo $(DEPDIR)/acountry-inet_ntop.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='inet_ntop.c' object='acountry-inet_ntop.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(acountry_CFLAGS) $(CFLAGS) -c -o acountry-inet_ntop.obj `if test -f 'inet_ntop.c'; then $(CYGPATH_W) 'inet_ntop.c'; else $(CYGPATH_W) '$(srcdir)/inet_ntop.c'; fi`
-
-adig-adig.o: adig.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -MT adig-adig.o -MD -MP -MF $(DEPDIR)/adig-adig.Tpo -c -o adig-adig.o `test -f 'adig.c' || echo '$(srcdir)/'`adig.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/adig-adig.Tpo $(DEPDIR)/adig-adig.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='adig.c' object='adig-adig.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -c -o adig-adig.o `test -f 'adig.c' || echo '$(srcdir)/'`adig.c
-
-adig-adig.obj: adig.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -MT adig-adig.obj -MD -MP -MF $(DEPDIR)/adig-adig.Tpo -c -o adig-adig.obj `if test -f 'adig.c'; then $(CYGPATH_W) 'adig.c'; else $(CYGPATH_W) '$(srcdir)/adig.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/adig-adig.Tpo $(DEPDIR)/adig-adig.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='adig.c' object='adig-adig.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -c -o adig-adig.obj `if test -f 'adig.c'; then $(CYGPATH_W) 'adig.c'; else $(CYGPATH_W) '$(srcdir)/adig.c'; fi`
-
-adig-ares_getopt.o: ares_getopt.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -MT adig-ares_getopt.o -MD -MP -MF $(DEPDIR)/adig-ares_getopt.Tpo -c -o adig-ares_getopt.o `test -f 'ares_getopt.c' || echo '$(srcdir)/'`ares_getopt.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/adig-ares_getopt.Tpo $(DEPDIR)/adig-ares_getopt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ares_getopt.c' object='adig-ares_getopt.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -c -o adig-ares_getopt.o `test -f 'ares_getopt.c' || echo '$(srcdir)/'`ares_getopt.c
-
-adig-ares_getopt.obj: ares_getopt.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -MT adig-ares_getopt.obj -MD -MP -MF $(DEPDIR)/adig-ares_getopt.Tpo -c -o adig-ares_getopt.obj `if test -f 'ares_getopt.c'; then $(CYGPATH_W) 'ares_getopt.c'; else $(CYGPATH_W) '$(srcdir)/ares_getopt.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/adig-ares_getopt.Tpo $(DEPDIR)/adig-ares_getopt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ares_getopt.c' object='adig-ares_getopt.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -c -o adig-ares_getopt.obj `if test -f 'ares_getopt.c'; then $(CYGPATH_W) 'ares_getopt.c'; else $(CYGPATH_W) '$(srcdir)/ares_getopt.c'; fi`
-
-adig-ares_strcasecmp.o: ares_strcasecmp.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -MT adig-ares_strcasecmp.o -MD -MP -MF $(DEPDIR)/adig-ares_strcasecmp.Tpo -c -o adig-ares_strcasecmp.o `test -f 'ares_strcasecmp.c' || echo '$(srcdir)/'`ares_strcasecmp.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/adig-ares_strcasecmp.Tpo $(DEPDIR)/adig-ares_strcasecmp.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ares_strcasecmp.c' object='adig-ares_strcasecmp.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -c -o adig-ares_strcasecmp.o `test -f 'ares_strcasecmp.c' || echo '$(srcdir)/'`ares_strcasecmp.c
-
-adig-ares_strcasecmp.obj: ares_strcasecmp.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -MT adig-ares_strcasecmp.obj -MD -MP -MF $(DEPDIR)/adig-ares_strcasecmp.Tpo -c -o adig-ares_strcasecmp.obj `if test -f 'ares_strcasecmp.c'; then $(CYGPATH_W) 'ares_strcasecmp.c'; else $(CYGPATH_W) '$(srcdir)/ares_strcasecmp.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/adig-ares_strcasecmp.Tpo $(DEPDIR)/adig-ares_strcasecmp.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ares_strcasecmp.c' object='adig-ares_strcasecmp.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -c -o adig-ares_strcasecmp.obj `if test -f 'ares_strcasecmp.c'; then $(CYGPATH_W) 'ares_strcasecmp.c'; else $(CYGPATH_W) '$(srcdir)/ares_strcasecmp.c'; fi`
-
-adig-inet_net_pton.o: inet_net_pton.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -MT adig-inet_net_pton.o -MD -MP -MF $(DEPDIR)/adig-inet_net_pton.Tpo -c -o adig-inet_net_pton.o `test -f 'inet_net_pton.c' || echo '$(srcdir)/'`inet_net_pton.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/adig-inet_net_pton.Tpo $(DEPDIR)/adig-inet_net_pton.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='inet_net_pton.c' object='adig-inet_net_pton.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -c -o adig-inet_net_pton.o `test -f 'inet_net_pton.c' || echo '$(srcdir)/'`inet_net_pton.c
-
-adig-inet_net_pton.obj: inet_net_pton.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -MT adig-inet_net_pton.obj -MD -MP -MF $(DEPDIR)/adig-inet_net_pton.Tpo -c -o adig-inet_net_pton.obj `if test -f 'inet_net_pton.c'; then $(CYGPATH_W) 'inet_net_pton.c'; else $(CYGPATH_W) '$(srcdir)/inet_net_pton.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/adig-inet_net_pton.Tpo $(DEPDIR)/adig-inet_net_pton.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='inet_net_pton.c' object='adig-inet_net_pton.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -c -o adig-inet_net_pton.obj `if test -f 'inet_net_pton.c'; then $(CYGPATH_W) 'inet_net_pton.c'; else $(CYGPATH_W) '$(srcdir)/inet_net_pton.c'; fi`
-
-adig-inet_ntop.o: inet_ntop.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -MT adig-inet_ntop.o -MD -MP -MF $(DEPDIR)/adig-inet_ntop.Tpo -c -o adig-inet_ntop.o `test -f 'inet_ntop.c' || echo '$(srcdir)/'`inet_ntop.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/adig-inet_ntop.Tpo $(DEPDIR)/adig-inet_ntop.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='inet_ntop.c' object='adig-inet_ntop.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -c -o adig-inet_ntop.o `test -f 'inet_ntop.c' || echo '$(srcdir)/'`inet_ntop.c
-
-adig-inet_ntop.obj: inet_ntop.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -MT adig-inet_ntop.obj -MD -MP -MF $(DEPDIR)/adig-inet_ntop.Tpo -c -o adig-inet_ntop.obj `if test -f 'inet_ntop.c'; then $(CYGPATH_W) 'inet_ntop.c'; else $(CYGPATH_W) '$(srcdir)/inet_ntop.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/adig-inet_ntop.Tpo $(DEPDIR)/adig-inet_ntop.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='inet_ntop.c' object='adig-inet_ntop.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(adig_CFLAGS) $(CFLAGS) -c -o adig-inet_ntop.obj `if test -f 'inet_ntop.c'; then $(CYGPATH_W) 'inet_ntop.c'; else $(CYGPATH_W) '$(srcdir)/inet_ntop.c'; fi`
-
-ahost-ahost.o: ahost.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -MT ahost-ahost.o -MD -MP -MF $(DEPDIR)/ahost-ahost.Tpo -c -o ahost-ahost.o `test -f 'ahost.c' || echo '$(srcdir)/'`ahost.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/ahost-ahost.Tpo $(DEPDIR)/ahost-ahost.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ahost.c' object='ahost-ahost.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -c -o ahost-ahost.o `test -f 'ahost.c' || echo '$(srcdir)/'`ahost.c
-
-ahost-ahost.obj: ahost.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -MT ahost-ahost.obj -MD -MP -MF $(DEPDIR)/ahost-ahost.Tpo -c -o ahost-ahost.obj `if test -f 'ahost.c'; then $(CYGPATH_W) 'ahost.c'; else $(CYGPATH_W) '$(srcdir)/ahost.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/ahost-ahost.Tpo $(DEPDIR)/ahost-ahost.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ahost.c' object='ahost-ahost.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -c -o ahost-ahost.obj `if test -f 'ahost.c'; then $(CYGPATH_W) 'ahost.c'; else $(CYGPATH_W) '$(srcdir)/ahost.c'; fi`
-
-ahost-ares_getopt.o: ares_getopt.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -MT ahost-ares_getopt.o -MD -MP -MF $(DEPDIR)/ahost-ares_getopt.Tpo -c -o ahost-ares_getopt.o `test -f 'ares_getopt.c' || echo '$(srcdir)/'`ares_getopt.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/ahost-ares_getopt.Tpo $(DEPDIR)/ahost-ares_getopt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ares_getopt.c' object='ahost-ares_getopt.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -c -o ahost-ares_getopt.o `test -f 'ares_getopt.c' || echo '$(srcdir)/'`ares_getopt.c
-
-ahost-ares_getopt.obj: ares_getopt.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -MT ahost-ares_getopt.obj -MD -MP -MF $(DEPDIR)/ahost-ares_getopt.Tpo -c -o ahost-ares_getopt.obj `if test -f 'ares_getopt.c'; then $(CYGPATH_W) 'ares_getopt.c'; else $(CYGPATH_W) '$(srcdir)/ares_getopt.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/ahost-ares_getopt.Tpo $(DEPDIR)/ahost-ares_getopt.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ares_getopt.c' object='ahost-ares_getopt.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -c -o ahost-ares_getopt.obj `if test -f 'ares_getopt.c'; then $(CYGPATH_W) 'ares_getopt.c'; else $(CYGPATH_W) '$(srcdir)/ares_getopt.c'; fi`
-
-ahost-ares_strcasecmp.o: ares_strcasecmp.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -MT ahost-ares_strcasecmp.o -MD -MP -MF $(DEPDIR)/ahost-ares_strcasecmp.Tpo -c -o ahost-ares_strcasecmp.o `test -f 'ares_strcasecmp.c' || echo '$(srcdir)/'`ares_strcasecmp.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/ahost-ares_strcasecmp.Tpo $(DEPDIR)/ahost-ares_strcasecmp.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ares_strcasecmp.c' object='ahost-ares_strcasecmp.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -c -o ahost-ares_strcasecmp.o `test -f 'ares_strcasecmp.c' || echo '$(srcdir)/'`ares_strcasecmp.c
-
-ahost-ares_strcasecmp.obj: ares_strcasecmp.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -MT ahost-ares_strcasecmp.obj -MD -MP -MF $(DEPDIR)/ahost-ares_strcasecmp.Tpo -c -o ahost-ares_strcasecmp.obj `if test -f 'ares_strcasecmp.c'; then $(CYGPATH_W) 'ares_strcasecmp.c'; else $(CYGPATH_W) '$(srcdir)/ares_strcasecmp.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/ahost-ares_strcasecmp.Tpo $(DEPDIR)/ahost-ares_strcasecmp.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ares_strcasecmp.c' object='ahost-ares_strcasecmp.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -c -o ahost-ares_strcasecmp.obj `if test -f 'ares_strcasecmp.c'; then $(CYGPATH_W) 'ares_strcasecmp.c'; else $(CYGPATH_W) '$(srcdir)/ares_strcasecmp.c'; fi`
-
-ahost-inet_net_pton.o: inet_net_pton.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -MT ahost-inet_net_pton.o -MD -MP -MF $(DEPDIR)/ahost-inet_net_pton.Tpo -c -o ahost-inet_net_pton.o `test -f 'inet_net_pton.c' || echo '$(srcdir)/'`inet_net_pton.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/ahost-inet_net_pton.Tpo $(DEPDIR)/ahost-inet_net_pton.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='inet_net_pton.c' object='ahost-inet_net_pton.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -c -o ahost-inet_net_pton.o `test -f 'inet_net_pton.c' || echo '$(srcdir)/'`inet_net_pton.c
-
-ahost-inet_net_pton.obj: inet_net_pton.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -MT ahost-inet_net_pton.obj -MD -MP -MF $(DEPDIR)/ahost-inet_net_pton.Tpo -c -o ahost-inet_net_pton.obj `if test -f 'inet_net_pton.c'; then $(CYGPATH_W) 'inet_net_pton.c'; else $(CYGPATH_W) '$(srcdir)/inet_net_pton.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/ahost-inet_net_pton.Tpo $(DEPDIR)/ahost-inet_net_pton.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='inet_net_pton.c' object='ahost-inet_net_pton.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -c -o ahost-inet_net_pton.obj `if test -f 'inet_net_pton.c'; then $(CYGPATH_W) 'inet_net_pton.c'; else $(CYGPATH_W) '$(srcdir)/inet_net_pton.c'; fi`
-
-ahost-inet_ntop.o: inet_ntop.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -MT ahost-inet_ntop.o -MD -MP -MF $(DEPDIR)/ahost-inet_ntop.Tpo -c -o ahost-inet_ntop.o `test -f 'inet_ntop.c' || echo '$(srcdir)/'`inet_ntop.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/ahost-inet_ntop.Tpo $(DEPDIR)/ahost-inet_ntop.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='inet_ntop.c' object='ahost-inet_ntop.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -c -o ahost-inet_ntop.o `test -f 'inet_ntop.c' || echo '$(srcdir)/'`inet_ntop.c
-
-ahost-inet_ntop.obj: inet_ntop.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -MT ahost-inet_ntop.obj -MD -MP -MF $(DEPDIR)/ahost-inet_ntop.Tpo -c -o ahost-inet_ntop.obj `if test -f 'inet_ntop.c'; then $(CYGPATH_W) 'inet_ntop.c'; else $(CYGPATH_W) '$(srcdir)/inet_ntop.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/ahost-inet_ntop.Tpo $(DEPDIR)/ahost-inet_ntop.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='inet_ntop.c' object='ahost-inet_ntop.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ahost_CFLAGS) $(CFLAGS) -c -o ahost-inet_ntop.obj `if test -f 'inet_ntop.c'; then $(CYGPATH_W) 'inet_ntop.c'; else $(CYGPATH_W) '$(srcdir)/inet_ntop.c'; fi`
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-
-distclean-libtool:
-	-rm -f libtool config.lt
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES) ares_config.h.in ares_build.h.in $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	set x; \
-	here=`pwd`; \
-	list='$(SOURCES) $(HEADERS) ares_config.h.in ares_build.h.in $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES) ares_config.h.in ares_build.h.in $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	list='$(SOURCES) $(HEADERS) ares_config.h.in ares_build.h.in $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
-	$(am__remove_distdir)
-	test -d "$(distdir)" || mkdir "$(distdir)"
-	@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
-	$(MAKE) $(AM_MAKEFLAGS) \
-	  top_distdir="$(top_distdir)" distdir="$(distdir)" \
-	  dist-hook
-	-test -n "$(am__skip_mode_fix)" \
-	|| find "$(distdir)" -type d ! -perm -755 \
-		-exec chmod u+rwx,go+rx {} \; -o \
-	  ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
-	  ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
-	  ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
-	|| chmod -R a+r "$(distdir)"
-dist-gzip: distdir
-	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
-	$(am__remove_distdir)
-
-dist-bzip2: distdir
-	tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
-	$(am__remove_distdir)
-
-dist-lzma: distdir
-	tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
-	$(am__remove_distdir)
-
-dist-xz: distdir
-	tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
-	$(am__remove_distdir)
-
-dist-tarZ: distdir
-	tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
-	$(am__remove_distdir)
-
-dist-shar: distdir
-	shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
-	$(am__remove_distdir)
-
-dist-zip: distdir
-	-rm -f $(distdir).zip
-	zip -rq $(distdir).zip $(distdir)
-	$(am__remove_distdir)
-
-dist dist-all: distdir
-	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
-	$(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration.  Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
-	case '$(DIST_ARCHIVES)' in \
-	*.tar.gz*) \
-	  GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
-	*.tar.bz2*) \
-	  bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
-	*.tar.lzma*) \
-	  lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
-	*.tar.xz*) \
-	  xz -dc $(distdir).tar.xz | $(am__untar) ;;\
-	*.tar.Z*) \
-	  uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
-	*.shar.gz*) \
-	  GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
-	*.zip*) \
-	  unzip $(distdir).zip ;;\
-	esac
-	chmod -R a-w $(distdir); chmod a+w $(distdir)
-	mkdir $(distdir)/_build
-	mkdir $(distdir)/_inst
-	chmod a-w $(distdir)
-	test -d $(distdir)/_build || exit 0; \
-	dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
-	  && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
-	  && am__cwd=`pwd` \
-	  && $(am__cd) $(distdir)/_build \
-	  && ../configure --srcdir=.. --prefix="$$dc_install_base" \
-	    $(DISTCHECK_CONFIGURE_FLAGS) \
-	  && $(MAKE) $(AM_MAKEFLAGS) \
-	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
-	  && $(MAKE) $(AM_MAKEFLAGS) check \
-	  && $(MAKE) $(AM_MAKEFLAGS) install \
-	  && $(MAKE) $(AM_MAKEFLAGS) installcheck \
-	  && $(MAKE) $(AM_MAKEFLAGS) uninstall \
-	  && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
-	        distuninstallcheck \
-	  && chmod -R a-w "$$dc_install_base" \
-	  && ({ \
-	       (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
-	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
-	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
-	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
-	            distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
-	      } || { rm -rf "$$dc_destdir"; exit 1; }) \
-	  && rm -rf "$$dc_destdir" \
-	  && $(MAKE) $(AM_MAKEFLAGS) dist \
-	  && rm -rf $(DIST_ARCHIVES) \
-	  && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
-	  && cd "$$am__cwd" \
-	  || exit 1
-	$(am__remove_distdir)
-	@(echo "$(distdir) archives ready for distribution: "; \
-	  list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
-	  sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
-distuninstallcheck:
-	@$(am__cd) '$(distuninstallcheck_dir)' \
-	&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
-	   || { echo "ERROR: files left after uninstall:" ; \
-	        if test -n "$(DESTDIR)"; then \
-	          echo "  (check DESTDIR support)"; \
-	        fi ; \
-	        $(distuninstallcheck_listfiles) ; \
-	        exit 1; } >&2
-distcleancheck: distclean
-	@if test '$(srcdir)' = . ; then \
-	  echo "ERROR: distcleancheck can only run from a VPATH build" ; \
-	  exit 1 ; \
-	fi
-	@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
-	  || { echo "ERROR: files left in build directory after distclean:" ; \
-	       $(distcleancheck_listfiles) ; \
-	       exit 1; } >&2
-check-am: all-am
-check: check-am
-all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(DATA) $(HEADERS) \
-		ares_config.h ares_build.h
-installdirs:
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic clean-libtool clean-local \
-	clean-noinstLTLIBRARIES clean-noinstPROGRAMS mostlyclean-am
-
-distclean: distclean-am
-	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-	-rm -rf ./$(DEPDIR)
-	-rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
-	distclean-hdr distclean-libtool distclean-tags
-
-dvi: dvi-am
-
-dvi-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 $(am__CONFIG_DISTCLEAN_FILES)
-	-rm -rf $(top_srcdir)/autom4te.cache
-	-rm -rf ./$(DEPDIR)
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
-	mostlyclean-libtool
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: all install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am am--refresh check check-am clean \
-	clean-generic clean-libtool clean-local \
-	clean-noinstLTLIBRARIES clean-noinstPROGRAMS ctags dist \
-	dist-all dist-bzip2 dist-gzip dist-hook dist-lzma dist-shar \
-	dist-tarZ dist-xz dist-zip distcheck distclean \
-	distclean-compile distclean-generic distclean-hdr \
-	distclean-libtool distclean-tags distcleancheck distdir \
-	distuninstallcheck 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 mostlyclean \
-	mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-	pdf pdf-am ps ps-am tags uninstall uninstall-am
-
-
-clean-local: clean-sourced-manpages
-
-clean-sourced-manpages:
-	@srcdmandir='$(SOURCEDMANDIR)'; \
-	echo "rm -rf $(top_builddir)/$$srcdmandir"; \
-	rm -rf $(top_builddir)/$$srcdmandir
-
-sourced-manpages: clean-sourced-manpages
-	@srcdmandir='$(SOURCEDMANDIR)'; \
-	srcdmanfiles='$(SOURCEDMANPAGES)'; \
-	mkdir $(top_builddir)/$$srcdmandir; \
-	for file in $$srcdmanfiles; do \
-	  if test -f $(top_srcdir)/$$file; then \
-	    echo "cp $(top_srcdir)/$$file $(top_builddir)/$$srcdmandir/$$file"; \
-	    cp $(top_srcdir)/$$file $(top_builddir)/$$srcdmandir/$$file; \
-	  fi; \
-	done
-
-html: sourced-manpages $(HTMLPAGES)
-
-.3.html:
-	$(MAN2HTML)
-
-pdf: sourced-manpages $(PDFPAGES)
-
-.3.pdf:
-	@(foo=`echo $@ | sed -e 's/\.[0-9]$$//g'`; \
-	groff -Tps -man $< >$$foo.ps; \
-	ps2pdf $$foo.ps $@; \
-	rm $$foo.ps; \
-	echo "converted $< to $@")
-
-# Make files named *.dist replace the file without .dist extension
-dist-hook:
-	find $(distdir) -name "*.dist" -exec rm {} \;
-	(distit=`find $(srcdir) -name "*.dist"`; \
-	for file in $$distit; do \
-	  strip=`echo $$file | sed -e s/^$(srcdir)// -e s/\.dist//`; \
-	  cp $$file $(distdir)$$strip; \
-	done)
-
-# 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/src/other/ares/Makefile.inc b/src/other/ares/Makefile.inc
deleted file mode 100644
index cef828a..0000000
--- a/src/other/ares/Makefile.inc
+++ /dev/null
@@ -1,188 +0,0 @@
-
-CSOURCES = ares__close_sockets.c	\
-  ares__get_hostent.c			\
-  ares__read_line.c			\
-  ares__timeval.c			\
-  ares_cancel.c				\
-  ares_data.c				\
-  ares_destroy.c			\
-  ares_expand_name.c			\
-  ares_expand_string.c			\
-  ares_fds.c				\
-  ares_free_hostent.c			\
-  ares_free_string.c			\
-  ares_gethostbyaddr.c			\
-  ares_gethostbyname.c			\
-  ares_getnameinfo.c			\
-  ares_getsock.c			\
-  ares_init.c				\
-  ares_library_init.c			\
-  ares_llist.c				\
-  ares_mkquery.c			\
-  ares_nowarn.c				\
-  ares_options.c			\
-  ares_parse_a_reply.c			\
-  ares_parse_aaaa_reply.c		\
-  ares_parse_ns_reply.c			\
-  ares_parse_ptr_reply.c		\
-  ares_parse_srv_reply.c		\
-  ares_parse_txt_reply.c		\
-  ares_process.c			\
-  ares_query.c				\
-  ares_search.c				\
-  ares_send.c				\
-  ares_strcasecmp.c			\
-  ares_strdup.c				\
-  ares_strerror.c			\
-  ares_timeout.c			\
-  ares_version.c			\
-  ares_writev.c				\
-  bitncmp.c				\
-  inet_net_pton.c			\
-  inet_ntop.c				\
-  windows_port.c
-
-HHEADERS = ares.h			\
-  ares_build.h				\
-  ares_data.h				\
-  ares_dns.h				\
-  ares_ipv6.h				\
-  ares_library_init.h			\
-  ares_llist.h				\
-  ares_nowarn.h				\
-  ares_private.h			\
-  ares_rules.h				\
-  ares_strcasecmp.h			\
-  ares_strdup.h				\
-  ares_version.h			\
-  ares_writev.h				\
-  bitncmp.h				\
-  inet_net_pton.h			\
-  inet_ntop.h				\
-  nameser.h				\
-  ares_setup.h				\
-  setup_once.h
-
-MANPAGES = ares_cancel.3		\
-  ares_destroy.3			\
-  ares_destroy_options.3		\
-  ares_dup.3				\
-  ares_expand_name.3			\
-  ares_expand_string.3			\
-  ares_fds.3				\
-  ares_free_data.3			\
-  ares_free_hostent.3			\
-  ares_free_string.3			\
-  ares_get_servers.3			\
-  ares_gethostbyaddr.3			\
-  ares_gethostbyname.3			\
-  ares_gethostbyname_file.3		\
-  ares_getnameinfo.3			\
-  ares_getsock.3			\
-  ares_init.3				\
-  ares_init_options.3			\
-  ares_library_cleanup.3		\
-  ares_library_init.3			\
-  ares_mkquery.3			\
-  ares_parse_a_reply.3			\
-  ares_parse_aaaa_reply.3		\
-  ares_parse_ns_reply.3			\
-  ares_parse_ptr_reply.3		\
-  ares_parse_srv_reply.3		\
-  ares_parse_txt_reply.3		\
-  ares_process.3			\
-  ares_query.3				\
-  ares_save_options.3			\
-  ares_search.3				\
-  ares_send.3				\
-  ares_set_servers.3			\
-  ares_set_socket_callback.3		\
-  ares_strerror.3			\
-  ares_timeout.3			\
-  ares_version.3
-
-HTMLPAGES = ares_cancel.html		\
-  ares_destroy.html			\
-  ares_destroy_options.html		\
-  ares_dup.html				\
-  ares_expand_name.html			\
-  ares_expand_string.html		\
-  ares_fds.html				\
-  ares_free_data.html			\
-  ares_free_hostent.html		\
-  ares_free_string.html			\
-  ares_get_servers.html			\
-  ares_gethostbyaddr.html		\
-  ares_gethostbyname.html		\
-  ares_gethostbyname_file.html		\
-  ares_getnameinfo.html			\
-  ares_getsock.html			\
-  ares_init.html			\
-  ares_init_options.html		\
-  ares_library_cleanup.html		\
-  ares_library_init.html		\
-  ares_mkquery.html			\
-  ares_parse_a_reply.html		\
-  ares_parse_aaaa_reply.html		\
-  ares_parse_ns_reply.html		\
-  ares_parse_ptr_reply.html		\
-  ares_parse_srv_reply.html		\
-  ares_parse_txt_reply.html		\
-  ares_process.html			\
-  ares_query.html			\
-  ares_save_options.html		\
-  ares_search.html			\
-  ares_send.html			\
-  ares_set_servers.html			\
-  ares_set_socket_callback.html		\
-  ares_strerror.html			\
-  ares_timeout.html			\
-  ares_version.html
-
-PDFPAGES = ares_cancel.pdf		\
-  ares_destroy.pdf			\
-  ares_destroy_options.pdf		\
-  ares_dup.pdf				\
-  ares_expand_name.pdf			\
-  ares_expand_string.pdf		\
-  ares_fds.pdf				\
-  ares_free_data.pdf			\
-  ares_free_hostent.pdf			\
-  ares_free_string.pdf			\
-  ares_get_servers.pdf			\
-  ares_gethostbyaddr.pdf		\
-  ares_gethostbyname.pdf		\
-  ares_gethostbyname_file.pdf		\
-  ares_getnameinfo.pdf			\
-  ares_getsock.pdf			\
-  ares_init.pdf				\
-  ares_init_options.pdf			\
-  ares_library_cleanup.pdf		\
-  ares_library_init.pdf			\
-  ares_mkquery.pdf			\
-  ares_parse_a_reply.pdf		\
-  ares_parse_aaaa_reply.pdf		\
-  ares_parse_ns_reply.pdf		\
-  ares_parse_ptr_reply.pdf		\
-  ares_parse_srv_reply.pdf		\
-  ares_parse_txt_reply.pdf		\
-  ares_process.pdf			\
-  ares_query.pdf			\
-  ares_save_options.pdf			\
-  ares_search.pdf			\
-  ares_send.pdf				\
-  ares_set_servers.pdf			\
-  ares_set_socket_callback.pdf		\
-  ares_strerror.pdf			\
-  ares_timeout.pdf			\
-  ares_version.pdf
-
-SAMPLESOURCES = ares_getopt.c		\
-  ares_strcasecmp.c			\
-  inet_net_pton.c			\
-  inet_ntop.c
-
-SAMPLEHEADERS = ares_getopt.h		\
-  ares_strcasecmp.h			\
-  inet_net_pton.h			\
-  inet_ntop.h
diff --git a/src/other/ares/Makefile.m32 b/src/other/ares/Makefile.m32
deleted file mode 100644
index 120aad3..0000000
--- a/src/other/ares/Makefile.m32
+++ /dev/null
@@ -1,69 +0,0 @@
-#############################################################
-# $Id$
-#
-## Makefile for building libcares.a with MingW32 (GCC-3.2)
-## Use: make -f Makefile.m32 [demos]
-##
-## Quick hack by Guenter; comments to: /dev/nul
-#
-########################################################
-## Nothing more to do below this line!
-
-LIB	= libcares.a
-
-CC	= gcc
-LD	= gcc
-RANLIB	= ranlib
-#RM	= rm -f
-
-CFLAGS	= -O2 -Wall
-LDFLAGS	= -s
-LIBS	= -lwsock32
-
-# Makefile.inc provides the CSOURCES and HHEADERS defines
-include Makefile.inc
-
-OBJLIB	:= $(patsubst %.c,%.o,$(strip $(CSOURCES)))
-
-
-$(LIB): $(OBJLIB)
-	ar cru $@ $^
-	$(RANLIB) $@
-
-all: $(LIB) demos
-
-demos: adig.exe ahost.exe acountry.exe
-
-tags:
-	etags *.[ch]
-
-%.exe: %.o ares_getopt.o $(LIB)
-	$(LD) $(LDFLAGS) -o $@ $^ $(LIBS)
-
-$(OBJLIB): ares.h ares_dns.h ares_private.h ares_build.h ares_rules.h
-
-.c.o:
-	$(CC) $(CFLAGS) -c $<
-
-check:
-
-install:
-	${top_srcdir}/mkinstalldirs ${DESTDIR}${libdir}
-	${top_srcdir}/mkinstalldirs ${DESTDIR}${includedir}
-	${top_srcdir}/mkinstalldirs ${DESTDIR}${mandir}/man3
-	${INSTALL} -m 644 $(LIB) ${DESTDIR}${libdir}
-	${RANLIB} ${DESTDIR}${libdir}/$(LIB)
-	chmod u-w ${DESTDIR}${libdir}/$(LIB)
-	${INSTALL} -m 444 ${srcdir}/ares.h ${DESTDIR}${includedir}
-	${INSTALL} -m 444 ${srcdir}/ares_build.h ${DESTDIR}${includedir}
-	${INSTALL} -m 444 ${srcdir}/ares_rules.h ${DESTDIR}${includedir}
-	(for man in $(MANPAGES); do \
-	   ${INSTALL} -m 444 ${srcdir}/$${man} ${DESTDIR}${mandir}/man3; \
-	done)
-
-clean:
-	$(RM) ares_getopt.o $(OBJLIB) $(LIB) adig.exe ahost.exe acountry.exe
-
-distclean: clean
-	$(RM) config.cache config.log config.status Makefile
-
diff --git a/src/other/ares/Makefile.msvc b/src/other/ares/Makefile.msvc
deleted file mode 100644
index fe3c118..0000000
--- a/src/other/ares/Makefile.msvc
+++ /dev/null
@@ -1,475 +0,0 @@
-# $Id$
-
-# Copyright (C) 2009-2010 by Daniel Stenberg
-#
-# Permission to use, copy, modify, and distribute this
-# software and its documentation for any purpose and without
-# fee is hereby granted, provided that the above copyright
-# notice appear in all copies and that both that copyright
-# notice and this permission notice appear in supporting
-# documentation, and that the name of M.I.T. not be used in
-# advertising or publicity pertaining to distribution of the
-# software without specific, written prior permission.
-# M.I.T. makes no representations about the suitability of
-# this software for any purpose.  It is provided "as is"
-# without express or implied warranty.
-
-# ------------------------------------------------------------------------------
-#
-# Makefile for building c-ares libraries and sample programs with MSVC.
-#
-# Usage: nmake /f makefile.msvc CFG=<config> <target>
-# 
-# <config> must be one of: [ lib-release | lib-debug | dll-release | dll-debug }
-# <target> must be one of: [ ALL | c-ares | acountry | adig | ahost | clean }
-# 
-# If a <target> other than ALL or clean is given, <config> becomes mandatory.
-# 
-# If neither <config> nor <target> are specified this results in
-# all targets being built for all <config> c-ares library types.
-#
-# This makefile must be processed from the subdir where it is located.
-#
-# All results are generated below a subdirectory named msvcXXX.
-#
-# ------------------------------------------------------------------------------
-
-NAME = cares
-
-# ------------------------------------------------
-# c-ares static and dynamic libraries common base
-# file names for release and debug configurations
-# ------------------------------------------------
-
-STA_LIB_REL = lib$(NAME)
-DYN_LIB_REL = $(NAME)
-STA_LIB_DBG = $(STA_LIB_REL)d
-DYN_LIB_DBG = $(DYN_LIB_REL)d
-
-# -------------------------------------------
-# Base names for c-ares DLL import libraries
-# -------------------------------------------
-
-IMP_LIB_REL = $(DYN_LIB_REL)
-IMP_LIB_DBG = $(DYN_LIB_DBG)
-
-# --------------------------
-# Runtime library selection
-# --------------------------
-
-RTLIB  = /MD
-RTLIBD = /MDd
-
-!IF "$(RTLIBCFG)" == "static"
-RTLIB  = /MT
-RTLIBD = /MTd
-!ENDIF
-
-# --------------------------------------------------------
-# Define USE_WATT32 to 1 to use the Watt-32 tcp/ip stack,
-# otherwise Winsock tcp/ip stack will be used as default.
-# --------------------------------------------------------
-
-USE_WATT32 = 0
-
-# -------------------------------------------
-# Detect NMAKE version deducing MSVC version
-# -------------------------------------------
-
-!IFNDEF _NMAKE_VER
-!  MESSAGE Macro _NMAKE_VER not defined.
-!  MESSAGE Use MSVC's NMAKE to process this makefile.
-!  ERROR   See previous message.
-!ENDIF
-
-!IF     "$(_NMAKE_VER)" == "6.00.8168.0"
-CC_VERS_NUM = 60
-!ELSEIF "$(_NMAKE_VER)" == "6.00.9782.0"
-CC_VERS_NUM = 60
-!ELSEIF "$(_NMAKE_VER)" == "7.00.9466"
-CC_VERS_NUM = 70
-!ELSEIF "$(_NMAKE_VER)" == "7.00.9955"
-CC_VERS_NUM = 70
-!ELSEIF "$(_NMAKE_VER)" == "7.10.3077"
-CC_VERS_NUM = 71
-!ELSEIF "$(_NMAKE_VER)" == "8.00.40607.16"
-CC_VERS_NUM = 80
-!ELSEIF "$(_NMAKE_VER)" == "8.00.50727.42"
-CC_VERS_NUM = 80
-!ELSEIF "$(_NMAKE_VER)" == "8.00.50727.762"
-CC_VERS_NUM = 80
-!ELSEIF "$(_NMAKE_VER)" == "9.00.21022.08"
-CC_VERS_NUM = 90
-!ELSEIF "$(_NMAKE_VER)" == "9.00.30729.01"
-CC_VERS_NUM = 90
-!ELSEIF "$(_NMAKE_VER)" == "10.00.20506.01"
-CC_VERS_NUM = 100
-!ELSEIF "$(_NMAKE_VER)" == "10.00.21003.01"
-CC_VERS_NUM = 100
-!ELSE
-!  MESSAGE Unknown value for _NMAKE_VER macro: "$(_NMAKE_VER)"
-!  MESSAGE Please, report this condition on the c-ares development
-!  MESSAGE mailing list: http://cool.haxx.se/mailman/listinfo/c-ares/
-!  ERROR   See previous message.
-!ENDIF
-
-CC_VERS_STR = msvc$(CC_VERS_NUM)
-
-# ----------------------------------------------------
-# Verify that current subdir is the c-ares source one
-# ----------------------------------------------------
-
-!IF ! EXIST(.\ares_init.c)
-!  MESSAGE Can not process Makefile.msvc from outside of c-ares source subdirectory.
-!  MESSAGE Change to the subdirectory where Makefile.msvc is found, and try again.
-!  ERROR   See previous message.
-!ENDIF
-
-# ------------------------------------------------------------------
-# Base subdir is the common root from which other subdirs will hang,
-# the name depends on MSVC version being used when building c-ares.
-# ------------------------------------------------------------------
-
-BASE_DIR = .\$(CC_VERS_STR)
-
-# ----------------------------------------
-# Subdir holding sources for all projects
-# ----------------------------------------
-
-SRCDIR = .
-
-# -------------------------
-# Configuration validation
-# -------------------------
-
-VALID_CFGSET = FALSE
-!IF "$(CFG)" == "lib-release" || "$(CFG)" == "lib-debug" || \
-    "$(CFG)" == "dll-release" || "$(CFG)" == "dll-debug"
-VALID_CFGSET = TRUE
-!ENDIF
-
-!IF "$(VALID_CFGSET)" == "FALSE" && "$(CFG)" != ""
-!  MESSAGE MSVC c-ares makefile
-!  MESSAGE
-!  MESSAGE Usage: nmake /f makefile.msvc CFG=<config> <target>
-!  MESSAGE
-!  MESSAGE <config> must be one of: [ lib-release | lib-debug | dll-release | dll-debug }
-!  MESSAGE <target> must be one of: [ ALL | c-ares | acountry | adig | ahost | clean }
-!  MESSAGE
-!  MESSAGE If a <target> other than ALL or clean is given, <config> becomes mandatory.
-!  MESSAGE
-!  MESSAGE If neither <config> nor <target> are specified this results in
-!  MESSAGE all targets being built for all <config> c-ares library types.
-!  MESSAGE
-!  ERROR Choose a valid configuration.
-!ENDIF
-
-# --------------------------------------------------------
-# Project subdirs independent of configuration being used
-# --------------------------------------------------------
-
-CARES_DIR = $(BASE_DIR)\cares
-PROG1_DIR = $(BASE_DIR)\acountry
-PROG2_DIR = $(BASE_DIR)\adig
-PROG3_DIR = $(BASE_DIR)\ahost
-
-# ---------------------------------------------------
-# Subdirs which are configuration dependent are only
-# defined when a valid configuration has been given.
-# ---------------------------------------------------
-
-!IF "$(VALID_CFGSET)" == "TRUE"
-CARES_OUTDIR = $(CARES_DIR)\$(CFG)
-PROG1_OUTDIR = $(PROG1_DIR)\$(CFG)
-PROG2_OUTDIR = $(PROG2_DIR)\$(CFG)
-PROG3_OUTDIR = $(PROG3_DIR)\$(CFG)
-CARES_OBJDIR = $(CARES_OUTDIR)\obj
-PROG1_OBJDIR = $(PROG1_OUTDIR)\obj
-PROG2_OBJDIR = $(PROG2_OUTDIR)\obj
-PROG3_OBJDIR = $(PROG3_OUTDIR)\obj
-!ELSE
-!UNDEF CARES_OUTDIR
-!UNDEF PROG1_OUTDIR
-!UNDEF PROG2_OUTDIR
-!UNDEF PROG3_OUTDIR
-!UNDEF CARES_OBJDIR
-!UNDEF PROG1_OBJDIR
-!UNDEF PROG2_OBJDIR
-!UNDEF PROG3_OBJDIR
-!ENDIF
-
-# -------------------------------------
-# Settings that depend on tcp/ip stack
-# -------------------------------------
-
-!IF "$(USE_WATT32)" == "1"
-CFLAGS  = /UWIN32 /DWATT32 /I$(WATT_ROOT)\inc
-EX_LIBS_REL = $(WATT_ROOT)\lib\wattcpvc_imp.lib
-EX_LIBS_DBG = $(WATT_ROOT)\lib\wattcpvc_imp_d.lib
-!ELSE
-CFLAGS  = /DWIN32
-EX_LIBS_REL = ws2_32.lib advapi32.lib kernel32.lib
-EX_LIBS_DBG = ws2_32.lib advapi32.lib kernel32.lib
-!ENDIF
-
-# -----------------------------------------
-# Switches that depend on compiler version
-# -----------------------------------------
-
-!IF $(CC_VERS_NUM) == 60
-PDB_NONE            = /pdb:none
-PDBTYPE_CONSOLIDATE = /pdbtype:consolidate
-!ELSE
-!UNDEF PDB_NONE
-!UNDEF PDBTYPE_CONSOLIDATE
-!ENDIF
-
-!IF $(CC_VERS_NUM) <= 70
-RT_ERROR_CHECKING = /GZ
-!ELSE
-RT_ERROR_CHECKING = /RTCsu
-!ENDIF
-
-# ----------------------------
-# Assorted commands and flags
-# ----------------------------
-
-CC_CMD_REL = cl.exe /nologo $(RTLIB) /DNDEBUG /O2
-CC_CMD_DBG = cl.exe /nologo $(RTLIBD) /D_DEBUG /Od /Zi $(RT_ERROR_CHECKING)
-CC_CFLAGS  = $(CFLAGS) /I. /W3 /EHsc /FD
-
-RC_CMD_REL = rc.exe /l 0x409 /d "NDEBUG"
-RC_CMD_DBG = rc.exe /l 0x409 /d "_DEBUG"
-
-LINK_CMD_LIB = link.exe /lib /nologo
-LINK_CMD_DLL = link.exe /dll /nologo /incremental:no /fixed:no
-LINK_CMD_EXE = link.exe /nologo /incremental:no /fixed:no /subsystem:console
-
-LINK_CMD_EXE_REL = $(LINK_CMD_EXE) /release $(PDB_NONE)
-LINK_CMD_EXE_DBG = $(LINK_CMD_EXE) /debug $(PDBTYPE_CONSOLIDATE)
-
-# ---------------------------------
-# Configuration dependent settings
-# ---------------------------------
-
-!IF "$(CFG)" == "lib-release"
-CARES_TARGET = $(STA_LIB_REL).lib
-CARES_CFLAGS = /DCARES_BUILDING_LIBRARY /DCARES_STATICLIB
-CARES_LFLAGS =
-SPROG_CFLAGS = /DCARES_STATICLIB
-SPROG_LFLAGS = /libpath:$(CARES_OUTDIR) $(EX_LIBS_REL) $(STA_LIB_REL).lib
-CARES_LINK   = $(LINK_CMD_LIB)
-SPROG_LINK   = $(LINK_CMD_EXE_REL)
-CC_CMD       = $(CC_CMD_REL)
-!ENDIF
-
-!IF "$(CFG)" == "lib-debug"
-CARES_TARGET = $(STA_LIB_DBG).lib
-CARES_CFLAGS = /DCARES_BUILDING_LIBRARY /DCARES_STATICLIB /DDEBUGBUILD
-CARES_LFLAGS =
-SPROG_CFLAGS = /DCARES_STATICLIB
-SPROG_LFLAGS = /libpath:$(CARES_OUTDIR) $(EX_LIBS_DBG) $(STA_LIB_DBG).lib
-CARES_LINK   = $(LINK_CMD_LIB)
-SPROG_LINK   = $(LINK_CMD_EXE_DBG)
-CC_CMD       = $(CC_CMD_DBG)
-!ENDIF
-
-!IF "$(CFG)" == "dll-release"
-CARES_TARGET = $(DYN_LIB_REL).dll
-CARES_CFLAGS = /DCARES_BUILDING_LIBRARY
-CARES_LFLAGS = /release $(EX_LIBS_REL) /implib:$(CARES_OUTDIR)\$(IMP_LIB_REL).lib $(PDB_NONE)
-SPROG_CFLAGS =
-SPROG_LFLAGS = /libpath:$(CARES_OUTDIR) $(EX_LIBS_REL) $(IMP_LIB_REL).lib
-CARES_LINK   = $(LINK_CMD_DLL)
-SPROG_LINK   = $(LINK_CMD_EXE_REL)
-CC_CMD       = $(CC_CMD_REL)
-USE_RES_FILE = TRUE
-RC_CMD       = $(RC_CMD_REL)
-!ENDIF
-
-!IF "$(CFG)" == "dll-debug"
-CARES_TARGET = $(DYN_LIB_DBG).dll
-CARES_CFLAGS = /DCARES_BUILDING_LIBRARY /DDEBUGBUILD
-CARES_LFLAGS = /debug $(EX_LIBS_DBG) /implib:$(CARES_OUTDIR)\$(IMP_LIB_DBG).lib /pdb:$(CARES_OUTDIR)\$(DYN_LIB_DBG).pdb $(PDBTYPE_CONSOLIDATE)
-SPROG_CFLAGS =
-SPROG_LFLAGS = /libpath:$(CARES_OUTDIR) $(EX_LIBS_DBG) $(IMP_LIB_DBG).lib
-CARES_LINK   = $(LINK_CMD_DLL)
-SPROG_LINK   = $(LINK_CMD_EXE_DBG)
-CC_CMD       = $(CC_CMD_DBG)
-USE_RES_FILE = TRUE
-RC_CMD       = $(RC_CMD_DBG)
-!ENDIF
-
-# --------------------------------------------
-# Makefile.inc provides lists of source files
-# --------------------------------------------
-
-!INCLUDE .\Makefile.inc
-
-# ----------------------------
-# Build lists of object files
-# ----------------------------
-
-!IF "$(VALID_CFGSET)" == "TRUE"
-
-!IF [ECHO CARES_OBJS=^$(CARES_OBJDIR)\$(CSOURCES: = $(CARES_OBJDIR^)\) > .\cares_objs.inc] == 0
-!INCLUDE .\cares_objs.inc
-!IF [DEL .\cares_objs.inc]
-!ENDIF
-!ELSE
-!ERROR Problem generating CARES_OBJS list.
-!ENDIF
-CARES_OBJS = $(CARES_OBJS:.c=.obj)
-!IF "$(USE_RES_FILE)" == "TRUE"
-CARES_OBJS = $(CARES_OBJS) $(CARES_OBJDIR)\cares.res
-!ENDIF
-
-!IF [ECHO PROG1_OBJS=^$(PROG1_OBJDIR)\$(SAMPLESOURCES: = $(PROG1_OBJDIR^)\) > .\prog1_objs.inc] == 0
-!INCLUDE .\prog1_objs.inc
-!IF [DEL .\prog1_objs.inc]
-!ENDIF
-!ELSE
-!ERROR Problem generating PROG1_OBJS list.
-!ENDIF
-PROG1_OBJS = $(PROG1_OBJS:.c=.obj)
-PROG1_OBJS = $(PROG1_OBJS) $(PROG1_OBJDIR)\acountry.obj
-
-!IF [ECHO PROG2_OBJS=^$(PROG2_OBJDIR)\$(SAMPLESOURCES: = $(PROG2_OBJDIR^)\) > .\prog2_objs.inc] == 0
-!INCLUDE .\prog2_objs.inc
-!IF [DEL .\prog2_objs.inc]
-!ENDIF
-!ELSE
-!ERROR Problem generating PROG2_OBJS list.
-!ENDIF
-PROG2_OBJS = $(PROG2_OBJS:.c=.obj)
-PROG2_OBJS = $(PROG2_OBJS) $(PROG2_OBJDIR)\adig.obj
-
-!IF [ECHO PROG3_OBJS=^$(PROG3_OBJDIR)\$(SAMPLESOURCES: = $(PROG3_OBJDIR^)\) > .\prog3_objs.inc] == 0
-!INCLUDE .\prog3_objs.inc
-!IF [DEL .\prog3_objs.inc]
-!ENDIF
-!ELSE
-!ERROR Problem generating PROG3_OBJS list.
-!ENDIF
-PROG3_OBJS = $(PROG3_OBJS:.c=.obj)
-PROG3_OBJS = $(PROG3_OBJS) $(PROG3_OBJDIR)\ahost.obj
-
-!ENDIF
-
-# --------------------------------
-# Only our custom inference rules
-# --------------------------------
-
-.SUFFIXES:
-.SUFFIXES: .c .rc
-
-{$(SRCDIR)}.rc{$(CARES_OBJDIR)}.res:
-    $(RC_CMD) /Fo $@ $<
-
-{$(SRCDIR)}.c{$(CARES_OBJDIR)}.obj:
-    $(CC_CMD) $(CC_CFLAGS) $(CARES_CFLAGS) /Fo$@ /Fd$(@D)\ /c $<
-
-{$(SRCDIR)}.c{$(PROG1_OBJDIR)}.obj:
-    $(CC_CMD) $(CC_CFLAGS) $(SPROG_CFLAGS) /Fo$@ /Fd$(@D)\ /c $<
-
-{$(SRCDIR)}.c{$(PROG2_OBJDIR)}.obj:
-    $(CC_CMD) $(CC_CFLAGS) $(SPROG_CFLAGS) /Fo$@ /Fd$(@D)\ /c $<
-
-{$(SRCDIR)}.c{$(PROG3_OBJDIR)}.obj:
-    $(CC_CMD) $(CC_CFLAGS) $(SPROG_CFLAGS) /Fo$@ /Fd$(@D)\ /c $<
-
-# ------------------------------------------------------------- #
-# ------------------------------------------------------------- #
-# Default target when no CFG library type has been specified,   #
-# results in building target ALL for all c-ares library types.  #
-# ------------------------------------------------------------- #
-# ------------------------------------------------------------- #
-
-!IF "$(VALID_CFGSET)" == "FALSE"
-
-ALL:
-    $(MAKE) /f .\Makefile.msvc  CFG=lib-release  ALL
-    $(MAKE) /f .\Makefile.msvc  CFG=lib-debug    ALL
-    $(MAKE) /f .\Makefile.msvc  CFG=dll-release  ALL
-    $(MAKE) /f .\Makefile.msvc  CFG=dll-debug    ALL
-
-clean:
-    @-RMDIR /S /Q $(BASE_DIR) >NUL 2>&1
-
-!ENDIF
-
-# ---------------------------------------------------------------------
-# Targets only available when a proper CFG library type has been given
-# ---------------------------------------------------------------------
-
-!IF "$(VALID_CFGSET)" == "TRUE"
-
-ALL: c-ares acountry adig ahost
-    @
-
-c-ares: $(HHEADERS) $(CSOURCES) $(CARES_OBJDIR) $(CARES_OBJS) $(CARES_OUTDIR)
-    $(CARES_LINK) $(CARES_LFLAGS) /out:$(CARES_OUTDIR)\$(CARES_TARGET) $(CARES_OBJS)
-!   IF "$(USE_RES_FILE)" == "TRUE"
-    @if exist $(CARES_OUTDIR)\$(CARES_TARGET).manifest mt -nologo -manifest $(CARES_OUTDIR)\$(CARES_TARGET).manifest -outputresource:$(CARES_OUTDIR)\$(CARES_TARGET);2
-!   ENDIF
-
-acountry: c-ares acountry.c $(SAMPLESOURCES) $(SAMPLEHEADERS) $(PROG1_OBJDIR) $(PROG1_OBJS) $(PROG1_OUTDIR)
-    $(SPROG_LINK) $(SPROG_LFLAGS) /out:$(PROG1_OUTDIR)\acountry.exe $(PROG1_OBJS)
-    @if exist $(PROG1_OUTDIR)\acountry.exe.manifest mt -nologo -manifest $(PROG1_OUTDIR)\acountry.exe.manifest -outputresource:$(PROG1_OUTDIR)\acountry.exe;1
-
-adig: c-ares adig.c $(SAMPLESOURCES) $(SAMPLEHEADERS) $(PROG2_OBJDIR) $(PROG2_OBJS) $(PROG2_OUTDIR)
-    $(SPROG_LINK) $(SPROG_LFLAGS) /out:$(PROG2_OUTDIR)\adig.exe $(PROG2_OBJS)
-    @if exist $(PROG2_OUTDIR)\adig.exe.manifest mt -nologo -manifest $(PROG2_OUTDIR)\adig.exe.manifest -outputresource:$(PROG2_OUTDIR)\adig.exe;1
-
-ahost: c-ares ahost.c $(SAMPLESOURCES) $(SAMPLEHEADERS) $(PROG3_OBJDIR) $(PROG3_OBJS) $(PROG3_OUTDIR)
-    $(SPROG_LINK) $(SPROG_LFLAGS) /out:$(PROG3_OUTDIR)\ahost.exe $(PROG3_OBJS)
-    @if exist $(PROG3_OUTDIR)\ahost.exe.manifest mt -nologo -manifest $(PROG3_OUTDIR)\ahost.exe.manifest -outputresource:$(PROG3_OUTDIR)\ahost.exe;1
-
-$(CARES_OUTDIR): $(CARES_DIR)
-    @if not exist $(CARES_OUTDIR) mkdir $(CARES_OUTDIR)
-
-$(PROG1_OUTDIR): $(PROG1_DIR)
-    @if not exist $(PROG1_OUTDIR) mkdir $(PROG1_OUTDIR)
-
-$(PROG2_OUTDIR): $(PROG2_DIR)
-    @if not exist $(PROG2_OUTDIR) mkdir $(PROG2_OUTDIR)
-
-$(PROG3_OUTDIR): $(PROG3_DIR)
-    @if not exist $(PROG3_OUTDIR) mkdir $(PROG3_OUTDIR)
-
-$(CARES_OBJDIR): $(CARES_OUTDIR)
-    @if not exist $(CARES_OBJDIR) mkdir $(CARES_OBJDIR)
-
-$(PROG1_OBJDIR): $(PROG1_OUTDIR)
-    @if not exist $(PROG1_OBJDIR) mkdir $(PROG1_OBJDIR)
-
-$(PROG2_OBJDIR): $(PROG2_OUTDIR)
-    @if not exist $(PROG2_OBJDIR) mkdir $(PROG2_OBJDIR)
-
-$(PROG3_OBJDIR): $(PROG3_OUTDIR)
-    @if not exist $(PROG3_OBJDIR) mkdir $(PROG3_OBJDIR)
-
-clean:
-    @-RMDIR /S /Q $(CARES_OUTDIR) >NUL 2>&1
-    @-RMDIR /S /Q $(PROG1_OUTDIR) >NUL 2>&1
-    @-RMDIR /S /Q $(PROG2_OUTDIR) >NUL 2>&1
-    @-RMDIR /S /Q $(PROG3_OUTDIR) >NUL 2>&1
-
-!ENDIF
-
-$(BASE_DIR):
-    @if not exist $(BASE_DIR) mkdir $(BASE_DIR)
-
-$(CARES_DIR): $(BASE_DIR)
-    @if not exist $(CARES_DIR) mkdir $(CARES_DIR)
-
-$(PROG1_DIR): $(BASE_DIR)
-    @if not exist $(PROG1_DIR) mkdir $(PROG1_DIR)
-
-$(PROG2_DIR): $(BASE_DIR)
-    @if not exist $(PROG2_DIR) mkdir $(PROG2_DIR)
-
-$(PROG3_DIR): $(BASE_DIR)
-    @if not exist $(PROG3_DIR) mkdir $(PROG3_DIR)
-
-# End of Makefile.msvc
diff --git a/src/other/ares/Makefile.netware b/src/other/ares/Makefile.netware
deleted file mode 100644
index 52e899e..0000000
--- a/src/other/ares/Makefile.netware
+++ /dev/null
@@ -1,430 +0,0 @@
-#################################################################
-# $Id$
-#
-## Makefile for building libcares (NetWare version - gnu make)
-## Use: make -f Makefile.netware
-##
-## Comments to: Guenter Knauf http://www.gknw.de/phpbb
-#
-#################################################################
-
-# Edit the path below to point to the base of your Novell NDK.
-ifndef NDKBASE
-NDKBASE	= c:/novell
-endif
-
-ifndef INSTDIR
-INSTDIR	= ../ares-$(LIBCARES_VERSION_STR)-bin-nw
-endif
-
-# Edit the vars below to change NLM target settings.
-TARGETS = adig.nlm ahost.nlm acountry.nlm
-LTARGET = libcares.$(LIBEXT)
-VERSION	= $(LIBCARES_VERSION)
-COPYR	= Copyright (C) 1996 - 2008, Daniel Stenberg, <daniel at haxx.se>
-DESCR	= cURL $(subst .def,,$(notdir $@)) $(LIBCARES_VERSION_STR) - http://curl.haxx.se
-MTSAFE	= YES
-STACK	= 64000
-SCREEN	= none
-#EXPORTS	=
-# Comment the line below if you dont want to load protected automatically.
-#LDRING	= 3
-
-# Edit the var below to point to your lib architecture.
-ifndef LIBARCH
-LIBARCH = LIBC
-endif
-
-# must be equal to NDEBUG or DEBUG, CURLDEBUG
-ifndef DB
-DB	= NDEBUG
-endif
-# Optimization: -O<n> or debugging: -g
-ifeq ($(DB),NDEBUG)
-	OPT	= -O2
-	OBJDIR	= release
-else
-	OPT	= -g
-	OBJDIR	= debug
-endif
-
-# Include the version info retrieved from curlver.h
--include $(OBJDIR)/version.inc
-
-# The following lines defines your compiler.
-ifdef CWFolder
-	METROWERKS = $(CWFolder)
-endif
-ifdef METROWERKS
-	# MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support
-	MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support/Metrowerks Support
-	CC = mwccnlm
-else
-	CC = gcc
-endif
-# a native win32 awk can be downloaded from here:
-# http://www.gknw.net/development/prgtools/awk-20070501.zip
-AWK	= awk
-YACC	= bison -y
-CP	= cp -afv
-MKDIR	= mkdir
-# RM	= rm -f
-# if you want to mark the target as MTSAFE you will need a tool for
-# generating the xdc data for the linker; here's a minimal tool:
-# http://www.gknw.net/development/prgtools/mkxdc.zip
-MPKXDC	= mkxdc
-
-# Global flags for all compilers
-CFLAGS	+= $(OPT) -D$(DB) -DNETWARE -DHAVE_CONFIG_H -nostdinc
-
-ifeq ($(CC),mwccnlm)
-LD	= mwldnlm
-LDFLAGS	= -nostdlib $(PRELUDE) $(OBJEXE) $(<:.def=.o) -o $@ -commandfile
-AR	= mwldnlm
-ARFLAGS	= -nostdlib -type library -o
-LIBEXT	= lib
-#RANLIB	=
-CFLAGS	+= -msgstyle gcc -gccinc -inline off -opt nointrinsics -proc 586
-CFLAGS	+= -relax_pointers
-#CFLAGS	+= -w on
-ifeq ($(LIBARCH),LIBC)
-	PRELUDE = $(SDK_LIBC)/imports/libcpre.o
-	CFLAGS += -align 4
-else
-	# PRELUDE = $(SDK_CLIB)/imports/clibpre.o
-	# to avoid the __init_* / __deinit_* whoes dont use prelude from NDK
-	PRELUDE = "$(MWCW_PATH)/libraries/runtime/prelude.obj"
-	# CFLAGS += -include "$(MWCW_PATH)/headers/nlm_clib_prefix.h"
-	CFLAGS += -align 1
-endif
-else
-LD	= nlmconv
-LDFLAGS	= -T
-AR	= ar
-ARFLAGS	= -cq
-LIBEXT	= a
-RANLIB	= ranlib
-CFLAGS	+= -fno-builtin -fpcc-struct-return -fno-strict-aliasing
-CFLAGS	+= -Wall -Wno-format -Wno-uninitialized # -pedantic
-ifeq ($(LIBARCH),LIBC)
-	PRELUDE = $(SDK_LIBC)/imports/libcpre.gcc.o
-else
-	# PRELUDE = $(SDK_CLIB)/imports/clibpre.gcc.o
-	# to avoid the __init_* / __deinit_* whoes dont use prelude from NDK
-	# http://www.gknw.net/development/mk_nlm/gcc_pre.zip
-	PRELUDE = $(NDK_ROOT)/pre/prelude.o
-	CFLAGS += -include $(NDKBASE)/nlmconv/genlm.h
-endif
-endif
-
-NDK_ROOT = $(NDKBASE)/ndk
-SDK_CLIB = $(NDK_ROOT)/nwsdk
-SDK_LIBC = $(NDK_ROOT)/libc
-
-ifeq ($(LIBARCH),LIBC)
-	INCLUDES += -I$(SDK_LIBC)/include
-	# INCLUDES += -I$(SDK_LIBC)/include/nks
-	# INCLUDES += -I$(SDK_LIBC)/include/winsock
-	CFLAGS += -D_POSIX_SOURCE
-else
-	INCLUDES += -I$(SDK_CLIB)/include/nlm
-	# INCLUDES += -I$(SDK_CLIB)/include/nlm/obsolete
-	# INCLUDES += -I$(SDK_CLIB)/include
-endif
-ifeq ($(DB),CURLDEBUG)
-INCLUDES += -I../include
-endif
-CFLAGS	+= -I. $(INCLUDES)
-
-ifeq ($(MTSAFE),YES)
-	XDCOPT = -n
-endif
-ifeq ($(MTSAFE),NO)
-	XDCOPT = -u
-endif
-
-ifeq ($(findstring linux,$(OSTYPE)),linux)
-DL	= '
-#-include $(NDKBASE)/nlmconv/ncpfs.inc
-endif
-
-# Makefile.inc provides the CSOURCES and HHEADERS defines
-include Makefile.inc
-
-OBJLIB	:= $(patsubst %.c,$(OBJDIR)/%.o,$(strip $(CSOURCES)))
-OBJEXE	= $(OBJLIB) $(OBJDIR)/ares_getopt.o
-
-.PHONY: lib nlm prebuild dist install clean
-
-lib: prebuild $(LTARGET)
-
-nlm: prebuild $(TARGETS)
-
-prebuild: $(OBJDIR) ares_build.h $(OBJDIR)/version.inc ares_config.h
-
-install: $(INSTDIR) all
-	@$(CP) *.nlm $(INSTDIR)
-	@$(CP) ../CHANGES $(INSTDIR)
-	@$(CP) ../COPYING $(INSTDIR)
-	@$(CP) ../README $(INSTDIR)
-	@$(CP) ../RELEASE-NOTES $(INSTDIR)
-
-clean:
-	-$(RM) $(LTARGET) $(TARGETS) ares_config.h
-	-$(RM) -r $(OBJDIR)
-	-$(RM) -r arpa
-
-%.$(LIBEXT): $(OBJLIB)
-	@echo Creating $@
-	@-$(RM) $@
-	@$(AR) $(ARFLAGS) $@ $^
-ifdef RANLIB
-	@$(RANLIB) $@
-endif
-
-%.nlm: $(OBJDIR)/%.def $(OBJDIR)/%.o $(OBJDIR)/%.xdc $(OBJEXE)
-	@echo Linking $@
-	@-$(RM) $@
-	@$(LD) $(LDFLAGS) $<
-
-$(OBJDIR) $(INSTDIR):
-	@$(MKDIR) $@
-
-$(OBJDIR)/%.o: %.c
-#	@echo Compiling $<
-	$(CC) $(CFLAGS) -c $< -o $@
-
-$(OBJDIR)/version.inc: ares_version.h $(OBJDIR)
-	@echo Creating $@
-	@$(AWK) -f get_ver.awk $< > $@
-
-$(OBJDIR)/%.xdc: Makefile.netware
-	@echo Creating $@
-	@$(MPKXDC) $(XDCOPT) $@
-
-$(OBJDIR)/%.def: Makefile.netware
-	@echo Creating $@
-	@echo $(DL)# DEF file for linking with $(LD)$(DL) > $@
-	@echo $(DL)# Do not edit this file - it is created by make!$(DL) >> $@
-	@echo $(DL)# All your changes will be lost!!$(DL) >> $@
-	@echo $(DL)#$(DL) >> $@
-	@echo $(DL)copyright "$(COPYR)"$(DL) >> $@
-	@echo $(DL)description "$(DESCR)"$(DL) >> $@
-	@echo $(DL)version $(VERSION)$(DL) >> $@
-ifdef NLMTYPE
-	@echo $(DL)type $(NLMTYPE)$(DL) >> $@
-endif
-ifdef STACK
-	@echo $(DL)stack $(STACK)$(DL) >> $@
-endif
-ifdef SCREEN
-	@echo $(DL)screenname "$(SCREEN)"$(DL) >> $@
-else
-	@echo $(DL)screenname "DEFAULT"$(DL) >> $@
-endif
-ifeq ($(DB),DEBUG)
-	@echo $(DL)debug$(DL) >> $@
-endif
-	@echo $(DL)threadname "$^"$(DL) >> $@
-ifdef XDCOPT
-	@echo $(DL)xdcdata $(@:.def=.xdc)$(DL) >> $@
-endif
-ifeq ($(LDRING),0)
-	@echo $(DL)flag_on 16$(DL) >> $@
-endif
-ifeq ($(LDRING),3)
-	@echo $(DL)flag_on 512$(DL) >> $@
-endif
-ifeq ($(LIBARCH),CLIB)
-	@echo $(DL)start _Prelude$(DL) >> $@
-	@echo $(DL)exit _Stop$(DL) >> $@
-	@echo $(DL)import @$(SDK_CLIB)/imports/clib.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_CLIB)/imports/threads.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_CLIB)/imports/nlmlib.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_CLIB)/imports/socklib.imp$(DL) >> $@
-	@echo $(DL)module clib$(DL) >> $@
-else
-	@echo $(DL)flag_on 64$(DL) >> $@
-	@echo $(DL)pseudopreemption$(DL) >> $@
-	@echo $(DL)start _LibCPrelude$(DL) >> $@
-	@echo $(DL)exit _LibCPostlude$(DL) >> $@
-	@echo $(DL)check _LibCCheckUnload$(DL) >> $@
-	@echo $(DL)import @$(SDK_LIBC)/imports/libc.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_LIBC)/imports/netware.imp$(DL) >> $@
-	@echo $(DL)module libc$(DL) >> $@
-endif
-ifdef MODULES
-	@echo $(DL)module $(MODULES)$(DL) >> $@
-endif
-ifdef EXPORTS
-	@echo $(DL)export $(EXPORTS)$(DL) >> $@
-endif
-ifdef IMPORTS
-	@echo $(DL)import $(IMPORTS)$(DL) >> $@
-endif
-ifeq ($(LD),nlmconv)
-	@echo $(DL)input $(PRELUDE)$(DL) >> $@
-	@echo $(DL)input $(OBJEXE)$(DL) >> $@
-	@echo $(DL)input $(@:.def=.o)$(DL) >> $@
-	@echo $(DL)output $(notdir $(@:.def=.nlm))$(DL) >> $@
-endif
-
-ares_config.h: Makefile.netware
-	@echo Creating $@
-	@echo $(DL)/* $@ for NetWare target.$(DL) > $@
-	@echo $(DL)** Do not edit this file - it is created by make!$(DL) >> $@
-	@echo $(DL)** All your changes will be lost!!$(DL) >> $@
-	@echo $(DL)*/$(DL) >> $@
-	@echo $(DL)#ifndef NETWARE$(DL) >> $@
-	@echo $(DL)#error This $(notdir $@) is created for NetWare platform!$(DL) >> $@
-	@echo $(DL)#endif$(DL) >> $@
-	@echo $(DL)#define VERSION "$(LIBCARES_VERSION_STR)"$(DL) >> $@
-	@echo $(DL)#define PACKAGE_BUGREPORT "a suitable curl mailing list => http://curl.haxx.se/mail/"$(DL) >> $@
-ifeq ($(LIBARCH),CLIB)
-	@echo $(DL)#define OS "i586-pc-clib-NetWare"$(DL) >> $@
-	@echo $(DL)#define HAVE_STRICMP 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRNICMP 1$(DL) >> $@
-	@echo $(DL)#define NETDB_USE_INTERNET 1$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG2 char *$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG3 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_RETV int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG2 char$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG3 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG5 struct sockaddr$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG6 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_RETV int$(DL) >> $@
-	@echo $(DL)#define SEND_QUAL_ARG2$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG2 char *$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG3 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_RETV int$(DL) >> $@
-else
-	@echo $(DL)#define OS "i586-pc-libc-NetWare"$(DL) >> $@
-	@echo $(DL)#define HAVE_DLFCN_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_DLOPEN 1$(DL) >> $@
-	@echo $(DL)#define HAVE_FTRUNCATE 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETTIMEOFDAY 1$(DL) >> $@
-	@echo $(DL)#define HAVE_INTTYPES_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LONGLONG 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STDINT_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRCASECMP 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRLCAT 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRLCPY 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRTOLL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_PARAM_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_SELECT_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_TERMIOS_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_AF_INET6 1$(DL) >> $@
-	@echo $(DL)#define HAVE_PF_INET6 1$(DL) >> $@
-	@echo $(DL)#define HAVE_FREEADDRINFO 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETADDRINFO 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRUCT_IN6_ADDR 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRUCT_SOCKADDR_IN6 1$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG2 void *$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG3 size_t$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_RETV ssize_t$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG2 void$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG3 size_t$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG5 struct sockaddr$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG6 size_t$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_RETV ssize_t$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG2_IS_VOID 1$(DL) >> $@
-	@echo $(DL)#define SEND_QUAL_ARG2$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG2 void *$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG3 size_t$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_RETV ssize_t$(DL) >> $@
-	@echo $(DL)#define SIZEOF_STRUCT_IN6_ADDR 16$(DL) >> $@
-endif
-	@echo $(DL)#define HAVE_ARPA_INET_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_ASSERT_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_ERR_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_FCNTL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETHOSTBYADDR 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETHOSTBYNAME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETHOSTNAME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETPROTOBYNAME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GMTIME_R 1$(DL) >> $@
-	@echo $(DL)#define HAVE_INET_ADDR 1$(DL) >> $@
-	@echo $(DL)#define HAVE_IOCTL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_IOCTL_FIONBIO 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LIMITS_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LOCALTIME_R 1$(DL) >> $@
-	@echo $(DL)#define HAVE_MALLOC_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_NETINET_IN_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_RECV 1$(DL) >> $@
-	@echo $(DL)#define HAVE_RECVFROM 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SELECT 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SEND 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SETJMP_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SIGNAL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SIGNAL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SIG_ATOMIC_T 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SOCKET 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STDLIB_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRDUP 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRFTIME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRING_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRSTR 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRUCT_ADDRINFO 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRUCT_TIMEVAL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_IOCTL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_STAT_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_TIME_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_TIME_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_UNAME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_UNISTD_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_UTIME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_UTIME_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_WRITEV 1$(DL) >> $@
-	@echo $(DL)#define RETSIGTYPE void$(DL) >> $@
-	@echo $(DL)#define SIZEOF_INT 4$(DL) >> $@
-	@echo $(DL)#define SIZEOF_STRUCT_IN_ADDR 4$(DL) >> $@
-	@echo $(DL)#define STDC_HEADERS 1$(DL) >> $@
-	@echo $(DL)#define TIME_WITH_SYS_TIME 1$(DL) >> $@
-ifdef NW_WINSOCK
-	@echo $(DL)#define HAVE_CLOSESOCKET 1$(DL) >> $@
-else
-	@echo $(DL)#define HAVE_SYS_TYPES_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_SOCKET_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_SOCKIO_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_NETDB_H 1$(DL) >> $@
-endif
-	@echo $(DL)#ifdef __GNUC__$(DL) >> $@
-	@echo $(DL)#define HAVE_VARIADIC_MACROS_GCC 1$(DL) >> $@
-	@echo $(DL)#else$(DL) >> $@
-	@echo $(DL)#define HAVE_VARIADIC_MACROS_C99 1$(DL) >> $@
-	@echo $(DL)#endif$(DL) >> $@
-
-FORCE: ;
-
-ares_build.h: Makefile.netware FORCE
-	@echo Creating $@
-	@echo $(DL)/* $@ intended for NetWare target.$(DL) > $@
-	@echo $(DL)** Do not edit this file - it is created by make!$(DL) >> $@
-	@echo $(DL)** All your changes will be lost!!$(DL) >> $@
-	@echo $(DL)*/$(DL) >> $@
-	@echo $(DL)#ifndef __CARES_BUILD_H$(DL) >> $@
-	@echo $(DL)#define __CARES_BUILD_H$(DL) >> $@
-ifeq ($(LIBARCH),CLIB)
-	@echo $(DL)#define CARES_TYPEOF_ARES_SOCKLEN_T int$(DL) >> $@
-	@echo $(DL)#define CARES_SIZEOF_ARES_SOCKLEN_T 4$(DL) >> $@
-else
-	@echo $(DL)#define CARES_TYPEOF_ARES_SOCKLEN_T unsigned int$(DL) >> $@
-	@echo $(DL)#define CARES_SIZEOF_ARES_SOCKLEN_T 4$(DL) >> $@
-endif
-	@echo $(DL)#define CARES_SIZEOF_LONG 4$(DL) >> $@
-	@echo $(DL)typedef CARES_TYPEOF_ARES_SOCKLEN_T ares_socklen_t;$(DL) >> $@
-	@echo $(DL)#endif /* __CARES_BUILD_H */$(DL) >> $@
diff --git a/src/other/ares/NEWS b/src/other/ares/NEWS
deleted file mode 100644
index 95a2eee..0000000
--- a/src/other/ares/NEWS
+++ /dev/null
@@ -1,21 +0,0 @@
-Major changes since:
-* see the CHANGES file
-
-Major changes in release 1.1.1:
-* ares should now compile as C++ code (no longer uses reserved word
-  "class").
-* Added SRV support to adig test program.
-* Fixed a few error handling bugs in query processing.
-
-Major changes in release 1.1.0:
-* Added ares_free_string() function so that memory can be freed in the
-  same layer as it is allocated, a desirable feature in some
-  environments.
-* A few of the ares_dns.h macros are fixed to use the proper bitwise
-  operator.
-* Fixed a couple of fenceposts fixed in ares_expand_name()'s
-  bounds-checking.
-* In process_timeouts(), extract query->next before calling
-  next_server() and possibly freeing the query structure.
-* Casted arguments to ctype macros casted to unsigned char, since not
-  all char values are valid inputs to those macros according to ANSI.
diff --git a/src/other/ares/README b/src/other/ares/README
deleted file mode 100644
index aae99cd..0000000
--- a/src/other/ares/README
+++ /dev/null
@@ -1,60 +0,0 @@
-c-ares
-======
-
-This is c-ares, an asynchronous resolver library.  It is intended for
-applications which need to perform DNS queries without blocking, or need to
-perform multiple DNS queries in parallel.  The primary examples of such
-applications are servers which communicate with multiple clients and programs
-with graphical user interfaces.
-
-The full source code is available in the 'c-ares' release archives, and in a
-git repository: http://github.com/bagder/c-ares
-
-If you find bugs, correct flaws, have questions or have comments in general in
-regard to c-ares (or by all means the original ares too), get in touch with us
-on the c-ares mailing list: http://cool.haxx.se/mailman/listinfo/c-ares
-
-c-ares is of course distributed under the same MIT-style license as the
-original ares.
-
-You'll find all c-ares details and news here:
-
-        http://c-ares.haxx.se/
-
-
-NOTES FOR C-ARES HACKERS
-
-The following notes apply to c-ares version 1.7.0 and later.
-
-* The distributed ares_build.h file is only intended to be used on systems
-  which can not run the also distributed configure script.
-
-* The distributed ares_build.h file is generated as a copy of ares_build.h.dist
-  when the c-ares source code distribution archive file is originally created.
-
-* If you check out from git on a non-configure platform, you must run the
-  appropriate buildconf* script to set up ares_build.h and other local files
-  before being able of compiling the library.
-
-* On systems capable of running the configure script, the configure process
-  will overwrite the distributed ares_build.h file with one that is suitable
-  and specific to the library being configured and built, this new file is
-  generated from the ares_build.h.in template file.
-
-* If you intend to distribute an already compiled c-ares library you _MUST_
-  also distribute along with it the generated ares_build.h which has been
-  used to compile it. Otherwise the library will be of no use for the users of
-  the library that you have built. It is _your_ responsability to provide this
-  file. No one at the c-ares project can know how you have built the library.
-
-* File ares_build.h includes platform and configuration dependent info,
-  and must not be modified by anyone. Configure script generates it for you.
-
-* We cannot assume anything else but very basic compiler features being
-  present. While c-ares requires an ANSI C compiler to build, some of the
-  earlier ANSI compilers clearly can't deal with some preprocessor operators.
-
-* Newlines must remain unix-style for older compilers' sake.
-
-* Comments must be written in the old-style /* unnested C-fashion */
-
diff --git a/src/other/ares/README.cares b/src/other/ares/README.cares
deleted file mode 100644
index aca54c8..0000000
--- a/src/other/ares/README.cares
+++ /dev/null
@@ -1,13 +0,0 @@
-c-ares
-======
-
-This package is based on ares 1.1.1 (written by Greg Hudson). I decided to
-fork and release a separate project since the ares author didn't want the
-improvements that were vital for our use of it.
-
-This package is dubbed 'c-ares' since I (Daniel Stenberg) wanted this for use
-within the curl project (hence the letter C) and it makes a nice pun. Also,
-c-ares is not API compatible with ares: a new name makes that more obvious to
-the public.
-
-The original libares was distributed at athena-dist.mit.edu:pub/ATHENA/ares.
diff --git a/src/other/ares/README.msvc b/src/other/ares/README.msvc
deleted file mode 100644
index 2c63085..0000000
--- a/src/other/ares/README.msvc
+++ /dev/null
@@ -1,119 +0,0 @@
- $Id$
-
-
-                          ___       __ _ _ __ ___  ___ 
-                         / __| ___ / _` | '__/ _ \/ __|
-                        | (_  |___| (_| | | |  __/\__ \
-                         \___|     \__,_|_|  \___||___/
-
-
-                How to build c-ares using MSVC or Visual Studio
-               =================================================
-
-
-
-  How to build using MSVC from the command line
-  ---------------------------------------------
-
-  Open a command prompt window and ensure that the environment is properly
-  set up in order to use MSVC or Visual Studio compiler tools.
-
-  Change to c-ares source folder where Makefile.msvc file is located and run:
-
-  > nmake -f Makefile.msvc
-
-  This will build all c-ares libraries as well as three sample programs.
-
-  Once the above command has finished a new folder named MSVCXX will exist
-  below the folder where makefile.msvc is found. The name of the folder
-  depends on the MSVC compiler version being used to build c-ares.
-
-  Below the MSVCXX folder there will exist four folders named 'cares',
-  'ahost', 'acountry', and 'adig'. The 'cares' folder is the one that
-  holds the c-ares libraries you have just generated, the other three
-  hold sample programs that use the libraries.
-
-  The above command builds four versions of the c-ares library, dynamic
-  and static versions and each one in release and debug flavours. Each
-  of these is found in folders named dll-release, dll-debug, lib-release,
-  and lib-debug, which hang from the 'cares' folder mentioned above. Each
-  sample program also has folders with the same names to reflect which
-  library version it is using.
-
-
-  How to build using Visual Studio 6 IDE
-  --------------------------------------
-
-  A VC++ 6.0 reference workspace (vc6aws.dsw) is available within the 'vc'
-  folder to allow proper building of the library and sample programs.
-
-  1) Open the vc6aws.dsw workspace with MSVC6's IDE.
-  2) Select 'Build' from top menu.
-  3) Select 'Batch Build' from dropdown menu.
-  4) Make sure that the sixteen project configurations are 'checked'.
-  5) Click on the 'Build' button.
-  6) Once the sixteen project configurations are built you are done.
-
-  Dynamic and static c-ares libraries are built in debug and release flavours,
-  and can be located each one in its own subdirectory, dll-debug, dll-release,
-  lib-debug and lib-release, all of them below the 'vc\cares' subdirectory.
-
-  In the same way four executable versions of each sample program are built,
-  each using its respective library. The resulting sample executables are
-  located in its own subdirectory, dll-debug, dll-release, lib-debug and
-  lib-release, below the 'vc\acountry', 'vc\adig' and 'vc\ahost'folders.
-
-  These reference VC++ 6.0 configurations are generated using the dynamic CRT.
-
-
-  How to build using Visual Studio 2003 or newer IDE
-  --------------------------------------------------
-
-  First you have to convert the VC++ 6.0 reference workspace and project files
-  to the Visual Studio IDE version you are using, following next steps:
-
-  1) Open vc\vc6aws.dsw with VS20XX.
-  2) Allow VS20XX to update all projects and workspaces.
-  3) Save ALL and close VS20XX.
-  4) Open vc\vc6aws.sln with VS20XX.
-  5) Select batch build, check 'all' projects and click 'build' button.
-
-  Same comments relative to generated files and folders as done above for
-  Visual Studio 6 IDE apply here.
-
-
-  Relationship between c-ares library file names and versions
-  -----------------------------------------------------------
-
-  c-ares static release library version files:
-
-      libcares.lib -> static release library
-
-  c-ares static debug library version files:
-
-      libcaresd.lib -> static debug library
-
-  c-ares dynamic release library version files:
-
-      cares.dll -> dynamic release library
-      cares.lib -> import library for the dynamic release library
-      cares.exp -> export file for the dynamic release library
-
-  c-ares dynamic debug library version files:
-
-      caresd.dll -> dynamic debug library
-      caresd.lib -> import library for the dynamic debug library
-      caresd.exp -> export file for the dynamic debug library
-      caresd.pdb -> debug symbol file for the dynamic debug library
-
-
-  How to use c-ares static libraries
-  ----------------------------------
-
-  When using the c-ares static library in your program, you will have to
-  define preprocessor symbol CARES_STATICLIB while building your program,
-  otherwise you will get errors at linkage stage.
-
-
-Have Fun!
- 
diff --git a/src/other/ares/RELEASE-NOTES b/src/other/ares/RELEASE-NOTES
deleted file mode 100644
index 0e1fefb..0000000
--- a/src/other/ares/RELEASE-NOTES
+++ /dev/null
@@ -1,18 +0,0 @@
-This is what's new and changed in the c-ares 1.7.1 release:
-
-Changed:
-
- o added IPv6 name servers support
-
-Fixed:
-
- o closing of sockets on Windows systems
- o MSVC deprecated compiler options warnings
- o ares_process_fd() didn't check broken connections
-
-Thanks go to these friendly people for their efforts and contributions:
-
- Ingmar Runge, Laszlo Tamas Szabo, Yang Tse, Tommie Gannert, Gregor Jasny,
- Phil Blundell, Cedric Bail, Jakub Hrozek
-
-Have fun!
diff --git a/src/other/ares/TODO b/src/other/ares/TODO
deleted file mode 100644
index fa31cea..0000000
--- a/src/other/ares/TODO
+++ /dev/null
@@ -1,23 +0,0 @@
-TODO
-====
-
-ares_reinit()
-
-- To allow an app to force a re-read of /etc/resolv.conf etc, pretty much
-  like the res_init() resolver function offers
-
-ares_gethostbyname
-
-- When built to support IPv6, it needs to also support PF_UNSPEC or similar,
-  so that an application can ask for any protocol and then c-ares would return
-  all known resolves and not just explicitly IPv4 _or_ IPv6 resolves.
-
-ares_process
-
-- Upon next ABI breakage ares_process() should be changed to return 'int'
-  and return ARES_ENOTINITIALIZED if ares_library_init() has not been called.
-
-ares_process_fd
-
-- Upon next ABI breakage ares_process_fd() should be changed to return
-  'int' and return ARES_ENOTINITIALIZED if library has not been initialized.
diff --git a/src/other/ares/acinclude.m4 b/src/other/ares/acinclude.m4
deleted file mode 100644
index b6dccf2..0000000
--- a/src/other/ares/acinclude.m4
+++ /dev/null
@@ -1,1925 +0,0 @@
-
-
-dnl CURL_CHECK_DEF (SYMBOL, [INCLUDES], [SILENT])
-dnl -------------------------------------------------
-dnl Use the C preprocessor to find out if the given object-style symbol
-dnl is defined and get its expansion. This macro will not use default
-dnl includes even if no INCLUDES argument is given. This macro will run
-dnl silently when invoked with three arguments. If the expansion would
-dnl result in a set of double-quoted strings the returned expansion will
-dnl actually be a single double-quoted string concatenating all them.
-
-AC_DEFUN([CURL_CHECK_DEF], [
-  AS_VAR_PUSHDEF([ac_HaveDef], [curl_cv_have_def_$1])dnl
-  AS_VAR_PUSHDEF([ac_Def], [curl_cv_def_$1])dnl
-  if test -z "$SED"; then
-    AC_MSG_ERROR([SED not set. Cannot continue without SED being set.])
-  fi
-  if test -z "$GREP"; then
-    AC_MSG_ERROR([GREP not set. Cannot continue without GREP being set.])
-  fi
-  ifelse($3,,[AC_MSG_CHECKING([for preprocessor definition of $1])])
-  tmp_exp=""
-  AC_PREPROC_IFELSE([
-    AC_LANG_SOURCE(
-ifelse($2,,,[$2])[[
-#ifdef $1
-CURL_DEF_TOKEN $1
-#endif
-    ]])
-  ],[
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[[ ]]//' 2>/dev/null | \
-      "$SED" 's/[["]][[ ]]*[["]]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "$1"; then
-      tmp_exp=""
-    fi
-  ])
-  if test -z "$tmp_exp"; then
-    AS_VAR_SET(ac_HaveDef, no)
-    ifelse($3,,[AC_MSG_RESULT([no])])
-  else
-    AS_VAR_SET(ac_HaveDef, yes)
-    AS_VAR_SET(ac_Def, $tmp_exp)
-    ifelse($3,,[AC_MSG_RESULT([$tmp_exp])])
-  fi
-  AS_VAR_POPDEF([ac_Def])dnl
-  AS_VAR_POPDEF([ac_HaveDef])dnl
-])
-
-
-dnl CURL_CHECK_DEF_CC (SYMBOL, [INCLUDES], [SILENT])
-dnl -------------------------------------------------
-dnl Use the C compiler to find out only if the given symbol is defined
-dnl or not, this can not find out its expansion. This macro will not use
-dnl default includes even if no INCLUDES argument is given. This macro
-dnl will run silently when invoked with three arguments.
-
-AC_DEFUN([CURL_CHECK_DEF_CC], [
-  AS_VAR_PUSHDEF([ac_HaveDef], [curl_cv_have_def_$1])dnl
-  ifelse($3,,[AC_MSG_CHECKING([for compiler definition of $1])])
-  AC_COMPILE_IFELSE([
-    AC_LANG_SOURCE(
-ifelse($2,,,[$2])[[
-int main (void)
-{
-#ifdef $1
-  return 0;
-#else
-  force compilation error
-#endif
-}
-    ]])
-  ],[
-    tst_symbol_defined="yes"
-  ],[
-    tst_symbol_defined="no"
-  ])
-  if test "$tst_symbol_defined" = "yes"; then
-    AS_VAR_SET(ac_HaveDef, yes)
-    ifelse($3,,[AC_MSG_RESULT([yes])])
-  else
-    AS_VAR_SET(ac_HaveDef, no)
-    ifelse($3,,[AC_MSG_RESULT([no])])
-  fi
-  AS_VAR_POPDEF([ac_HaveDef])dnl
-])
-
-
-dnl CARES_CHECK_LIB_XNET
-dnl -------------------------------------------------
-dnl Verify if X/Open network library is required.
-
-AC_DEFUN([CARES_CHECK_LIB_XNET], [
-  AC_MSG_CHECKING([if X/Open network library is required])
-  tst_lib_xnet_required="no"
-  AC_COMPILE_IFELSE([
-    AC_LANG_SOURCE([[
-int main (void)
-{
-#if defined(__hpux) && defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 600)
-  return 0;
-#elif defined(__hpux) && defined(_XOPEN_SOURCE_EXTENDED)
-  return 0;
-#else
-  force compilation error
-#endif
-}
-    ]])
-  ],[
-    tst_lib_xnet_required="yes"
-    LIBS="$LIBS -lxnet"
-  ])
-  AC_MSG_RESULT([$tst_lib_xnet_required])
-])
-
-
-dnl CARES_CHECK_AIX_ALL_SOURCE
-dnl -------------------------------------------------
-dnl Provides a replacement of traditional AC_AIX with
-dnl an uniform behaviour across all autoconf versions,
-dnl and with our own placement rules.
-
-AC_DEFUN([CARES_CHECK_AIX_ALL_SOURCE], [
-  AH_VERBATIM([_ALL_SOURCE],
-    [/* Define to 1 if OS is AIX. */
-#ifndef _ALL_SOURCE
-#  undef _ALL_SOURCE
-#endif])
-  AC_BEFORE([$0], [AC_SYS_LARGEFILE])dnl
-  AC_BEFORE([$0], [CARES_CONFIGURE_REENTRANT])dnl
-  AC_MSG_CHECKING([if OS is AIX (to define _ALL_SOURCE)])
-  AC_EGREP_CPP([yes_this_is_aix],[
-#ifdef _AIX
-   yes_this_is_aix
-#endif
-  ],[
-    AC_MSG_RESULT([yes])
-    AC_DEFINE(_ALL_SOURCE)
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-])
-
-
-dnl CURL_CHECK_HEADER_WINDOWS
-dnl -------------------------------------------------
-dnl Check for compilable and valid windows.h header 
-
-AC_DEFUN([CURL_CHECK_HEADER_WINDOWS], [
-  AC_CACHE_CHECK([for windows.h], [ac_cv_header_windows_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINDOWS_H shall not be defined.
-#else
-        int dummy=2*WINVER;
-#endif
-      ]])
-    ],[
-      ac_cv_header_windows_h="yes"
-    ],[
-      ac_cv_header_windows_h="no"
-    ])
-  ])
-  case "$ac_cv_header_windows_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINDOWS_H, 1,
-        [Define to 1 if you have the windows.h header file.])
-      AC_DEFINE_UNQUOTED(WIN32_LEAN_AND_MEAN, 1,
-        [Define to avoid automatic inclusion of winsock.h])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_NATIVE_WINDOWS
-dnl -------------------------------------------------
-dnl Check if building a native Windows target
-
-AC_DEFUN([CURL_CHECK_NATIVE_WINDOWS], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([whether build target is a native Windows one], [ac_cv_native_windows], [
-    if test "$ac_cv_header_windows_h" = "no"; then
-      ac_cv_native_windows="no"
-    else
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-        ]],[[
-#if defined(__MINGW32__) || defined(__MINGW32CE__) || \
-   (defined(_MSC_VER) && (defined(_WIN32) || defined(_WIN64)))
-          int dummy=1;
-#else
-          Not a native Windows build target.
-#endif
-        ]])
-      ],[
-        ac_cv_native_windows="yes"
-      ],[
-        ac_cv_native_windows="no"
-      ])
-    fi
-  ])
-  case "$ac_cv_native_windows" in
-    yes)
-      AC_DEFINE_UNQUOTED(NATIVE_WINDOWS, 1,
-        [Define to 1 if you are building a native Windows target.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_WINSOCK
-dnl -------------------------------------------------
-dnl Check for compilable and valid winsock.h header 
-
-AC_DEFUN([CURL_CHECK_HEADER_WINSOCK], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([for winsock.h], [ac_cv_header_winsock_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINSOCK_H shall not be defined.
-#else
-        int dummy=WSACleanup();
-#endif
-      ]])
-    ],[
-      ac_cv_header_winsock_h="yes"
-    ],[
-      ac_cv_header_winsock_h="no"
-    ])
-  ])
-  case "$ac_cv_header_winsock_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINSOCK_H, 1,
-        [Define to 1 if you have the winsock.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_WINSOCK2
-dnl -------------------------------------------------
-dnl Check for compilable and valid winsock2.h header 
-
-AC_DEFUN([CURL_CHECK_HEADER_WINSOCK2], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([for winsock2.h], [ac_cv_header_winsock2_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WINSOCK2_H shall not be defined.
-#else
-        int dummy=2*IPPROTO_ESP;
-#endif
-      ]])
-    ],[
-      ac_cv_header_winsock2_h="yes"
-    ],[
-      ac_cv_header_winsock2_h="no"
-    ])
-  ])
-  case "$ac_cv_header_winsock2_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINSOCK2_H, 1,
-        [Define to 1 if you have the winsock2.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_WS2TCPIP
-dnl -------------------------------------------------
-dnl Check for compilable and valid ws2tcpip.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WS2TCPIP], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CACHE_CHECK([for ws2tcpip.h], [ac_cv_header_ws2tcpip_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-#include <ws2tcpip.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WS2TCPIP_H shall not be defined.
-#else
-        int dummy=2*IP_PKTINFO;
-#endif
-      ]])
-    ],[
-      ac_cv_header_ws2tcpip_h="yes"
-    ],[
-      ac_cv_header_ws2tcpip_h="no"
-    ])
-  ])
-  case "$ac_cv_header_ws2tcpip_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WS2TCPIP_H, 1,
-        [Define to 1 if you have the ws2tcpip.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_MALLOC
-dnl -------------------------------------------------
-dnl Check for compilable and valid malloc.h header,
-dnl and check if it is needed even with stdlib.h
-
-AC_DEFUN([CURL_CHECK_HEADER_MALLOC], [
-  AC_CACHE_CHECK([for malloc.h], [ac_cv_header_malloc_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <malloc.h>
-      ]],[[
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-      ]])
-    ],[
-      ac_cv_header_malloc_h="yes"
-    ],[
-      ac_cv_header_malloc_h="no"
-    ])
-  ])
-  if test "$ac_cv_header_malloc_h" = "yes"; then
-    AC_DEFINE_UNQUOTED(HAVE_MALLOC_H, 1,
-      [Define to 1 if you have the malloc.h header file.])
-    #
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <stdlib.h>
-      ]],[[
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-      ]])
-    ],[
-      curl_cv_need_header_malloc_h="no"
-    ],[
-      curl_cv_need_header_malloc_h="yes"
-    ])
-    #
-    case "$curl_cv_need_header_malloc_h" in
-      yes)
-        AC_DEFINE_UNQUOTED(NEED_MALLOC_H, 1,
-          [Define to 1 if you need the malloc.h header file even with stdlib.h])
-        ;;
-    esac
-  fi
-])
-
-
-dnl CURL_CHECK_HEADER_MEMORY
-dnl -------------------------------------------------
-dnl Check for compilable and valid memory.h header,
-dnl and check if it is needed even with stdlib.h for
-dnl memory related functions.
-
-AC_DEFUN([CURL_CHECK_HEADER_MEMORY], [
-  AC_CACHE_CHECK([for memory.h], [ac_cv_header_memory_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <memory.h>
-      ]],[[
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-      ]])
-    ],[
-      ac_cv_header_memory_h="yes"
-    ],[
-      ac_cv_header_memory_h="no"
-    ])
-  ])
-  if test "$ac_cv_header_memory_h" = "yes"; then
-    AC_DEFINE_UNQUOTED(HAVE_MEMORY_H, 1,
-      [Define to 1 if you have the memory.h header file.])
-    #
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <stdlib.h>
-      ]],[[
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-      ]])
-    ],[
-      curl_cv_need_header_memory_h="no"
-    ],[
-      curl_cv_need_header_memory_h="yes"
-    ])
-    #
-    case "$curl_cv_need_header_memory_h" in
-      yes)
-        AC_DEFINE_UNQUOTED(NEED_MEMORY_H, 1,
-          [Define to 1 if you need the memory.h header file even with stdlib.h])
-        ;;
-    esac
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_GETNAMEINFO
-dnl -------------------------------------------------
-dnl Test if the getnameinfo function is available, 
-dnl and check the types of five of its arguments.
-dnl If the function succeeds HAVE_GETNAMEINFO will be
-dnl defined, defining the types of the arguments in
-dnl GETNAMEINFO_TYPE_ARG1, GETNAMEINFO_TYPE_ARG2,
-dnl GETNAMEINFO_TYPE_ARG46 and GETNAMEINFO_TYPE_ARG7,
-dnl and also defining the type qualifier of first 
-dnl argument in GETNAMEINFO_QUAL_ARG1.
-
-AC_DEFUN([CURL_CHECK_FUNC_GETNAMEINFO], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WS2TCPIP])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h netdb.h)
-  #
-  AC_MSG_CHECKING([for getnameinfo])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([getnameinfo])
-  ],[
-    AC_MSG_RESULT([yes])
-    curl_cv_getnameinfo="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    curl_cv_getnameinfo="no"
-  ])
-  #
-  if test "$curl_cv_getnameinfo" != "yes"; then
-    AC_MSG_CHECKING([deeper for getnameinfo])
-    AC_LINK_IFELSE([
-      AC_LANG_PROGRAM([[
-      ]],[[
-        getnameinfo();
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      curl_cv_getnameinfo="yes"
-    ],[
-      AC_MSG_RESULT([but still no])
-      curl_cv_getnameinfo="no"
-    ])
-  fi
-  #
-  if test "$curl_cv_getnameinfo" != "yes"; then
-    AC_MSG_CHECKING([deeper and deeper for getnameinfo])
-    AC_LINK_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#endif
-      ]],[[
-        getnameinfo(0, 0, 0, 0, 0, 0, 0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      curl_cv_getnameinfo="yes"
-    ],[
-      AC_MSG_RESULT([but still no])
-      curl_cv_getnameinfo="no"
-    ])
-  fi
-  #
-  if test "$curl_cv_getnameinfo" = "yes"; then
-    AC_CACHE_CHECK([types of arguments for getnameinfo],
-      [curl_cv_func_getnameinfo_args], [
-      curl_cv_func_getnameinfo_args="unknown"
-      for gni_arg1 in 'struct sockaddr *' 'const struct sockaddr *' 'void *'; do
-        for gni_arg2 in 'socklen_t' 'size_t' 'int'; do
-          for gni_arg46 in 'size_t' 'int' 'socklen_t' 'unsigned int' 'DWORD'; do
-            for gni_arg7 in 'int' 'unsigned int'; do
-              if test "$curl_cv_func_getnameinfo_args" = "unknown"; then
-                AC_COMPILE_IFELSE([
-                  AC_LANG_PROGRAM([[
-#undef inline 
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#if (!defined(_WIN32_WINNT)) || (_WIN32_WINNT < 0x0501)
-#undef _WIN32_WINNT
-#define _WIN32_WINNT 0x0501
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h> 
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#define GNICALLCONV WSAAPI
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#define GNICALLCONV
-#endif
-                    extern int GNICALLCONV getnameinfo($gni_arg1, $gni_arg2,
-                                           char *, $gni_arg46,
-                                           char *, $gni_arg46,
-                                           $gni_arg7);
-                  ]],[[
-                    $gni_arg2 salen=0;
-                    $gni_arg46 hostlen=0;
-                    $gni_arg46 servlen=0;
-                    $gni_arg7 flags=0;
-                    int res = getnameinfo(0, salen, 0, hostlen, 0, servlen, flags);
-                  ]])
-                ],[
-                  curl_cv_func_getnameinfo_args="$gni_arg1,$gni_arg2,$gni_arg46,$gni_arg7"
-                ])
-              fi
-            done
-          done
-        done
-      done
-    ]) # AC-CACHE-CHECK
-    if test "$curl_cv_func_getnameinfo_args" = "unknown"; then
-      AC_MSG_WARN([Cannot find proper types to use for getnameinfo args])
-      AC_MSG_WARN([HAVE_GETNAMEINFO will not be defined])
-    else
-      gni_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_getnameinfo_args" | sed 's/\*/\*/g'`
-      IFS=$gni_prev_IFS
-      shift
-      #
-      gni_qual_type_arg1=$[1]
-      #
-      AC_DEFINE_UNQUOTED(GETNAMEINFO_TYPE_ARG2, $[2],
-        [Define to the type of arg 2 for getnameinfo.])
-      AC_DEFINE_UNQUOTED(GETNAMEINFO_TYPE_ARG46, $[3],
-        [Define to the type of args 4 and 6 for getnameinfo.])
-      AC_DEFINE_UNQUOTED(GETNAMEINFO_TYPE_ARG7, $[4],
-        [Define to the type of arg 7 for getnameinfo.])
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      case "$gni_qual_type_arg1" in
-        const*)
-          gni_qual_arg1=const
-          gni_type_arg1=`echo $gni_qual_type_arg1 | sed 's/^const //'`
-        ;;
-        *)
-          gni_qual_arg1=
-          gni_type_arg1=$gni_qual_type_arg1
-        ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(GETNAMEINFO_QUAL_ARG1, $gni_qual_arg1,
-        [Define to the type qualifier of arg 1 for getnameinfo.])
-      AC_DEFINE_UNQUOTED(GETNAMEINFO_TYPE_ARG1, $gni_type_arg1,
-        [Define to the type of arg 1 for getnameinfo.])
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(HAVE_GETNAMEINFO, 1,
-        [Define to 1 if you have the getnameinfo function.])
-      ac_cv_func_getnameinfo="yes"
-    fi
-  fi
-])
-
-
-dnl TYPE_SOCKADDR_STORAGE
-dnl -------------------------------------------------
-dnl Check for struct sockaddr_storage. Most IPv6-enabled 
-dnl hosts have it, but AIX 4.3 is one known exception.
-
-AC_DEFUN([TYPE_SOCKADDR_STORAGE],
-[
-   AC_CHECK_TYPE([struct sockaddr_storage],
-        AC_DEFINE(HAVE_STRUCT_SOCKADDR_STORAGE, 1,
-                  [if struct sockaddr_storage is defined]), ,
-   [
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-   ])
-])
-
-
-dnl CURL_CHECK_NI_WITHSCOPEID
-dnl -------------------------------------------------
-dnl Check for working NI_WITHSCOPEID in getnameinfo()
-
-AC_DEFUN([CURL_CHECK_NI_WITHSCOPEID], [
-  AC_REQUIRE([CURL_CHECK_FUNC_GETNAMEINFO])dnl
-  AC_REQUIRE([TYPE_SOCKADDR_STORAGE])dnl
-  AC_CHECK_HEADERS(stdio.h sys/types.h sys/socket.h \
-                   netdb.h netinet/in.h arpa/inet.h)
-  #
-  AC_CACHE_CHECK([for working NI_WITHSCOPEID], 
-    [ac_cv_working_ni_withscopeid], [
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_STDIO_H
-#include <stdio.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-      ]],[[
-#if defined(NI_WITHSCOPEID) && defined(HAVE_GETNAMEINFO)
-#ifdef HAVE_STRUCT_SOCKADDR_STORAGE
-        struct sockaddr_storage sa;
-#else
-        unsigned char sa[256];
-#endif
-        char hostbuf[NI_MAXHOST];
-        int rc;
-        GETNAMEINFO_TYPE_ARG2 salen = (GETNAMEINFO_TYPE_ARG2)sizeof(sa);
-        GETNAMEINFO_TYPE_ARG46 hostlen = (GETNAMEINFO_TYPE_ARG46)sizeof(hostbuf);
-        GETNAMEINFO_TYPE_ARG7 flags = NI_NUMERICHOST | NI_NUMERICSERV | NI_WITHSCOPEID;
-        int fd = socket(AF_INET6, SOCK_STREAM, 0);
-        if(fd < 0) {
-          perror("socket()");
-          return 1; /* Error creating socket */
-        }
-        rc = getsockname(fd, (GETNAMEINFO_TYPE_ARG1)&sa, &salen);
-        if(rc) {
-          perror("getsockname()");
-          return 2; /* Error retrieving socket name */
-        }
-        rc = getnameinfo((GETNAMEINFO_TYPE_ARG1)&sa, salen, hostbuf, hostlen, NULL, 0, flags);
-        if(rc) {
-          printf("rc = %s\n", gai_strerror(rc));
-          return 3; /* Error translating socket address */
-        }
-        return 0; /* Ok, NI_WITHSCOPEID works */
-#else
-        return 4; /* Error, NI_WITHSCOPEID not defined or no getnameinfo() */
-#endif
-      ]]) # AC-LANG-PROGRAM
-    ],[
-      # Exit code == 0. Program worked.
-      ac_cv_working_ni_withscopeid="yes"
-    ],[
-      # Exit code != 0. Program failed.
-      ac_cv_working_ni_withscopeid="no"
-    ],[
-      # Program is not run when cross-compiling. So we assume
-      # NI_WITHSCOPEID will work if we are able to compile it.
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netdb.h>
-        ]],[[
-          unsigned int dummy= NI_NUMERICHOST | NI_NUMERICSERV | NI_WITHSCOPEID;
-        ]])
-      ],[
-        ac_cv_working_ni_withscopeid="yes"
-      ],[
-        ac_cv_working_ni_withscopeid="no"
-      ]) # AC-COMPILE-IFELSE
-    ]) # AC-RUN-IFELSE
-  ]) # AC-CACHE-CHECK
-  case "$ac_cv_working_ni_withscopeid" in
-    yes)
-      AC_DEFINE(HAVE_NI_WITHSCOPEID, 1,
-        [Define to 1 if NI_WITHSCOPEID exists and works.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_FUNC_RECV
-dnl -------------------------------------------------
-dnl Test if the socket recv() function is available, 
-dnl and check its return type and the types of its 
-dnl arguments. If the function succeeds HAVE_RECV 
-dnl will be defined, defining the types of the arguments 
-dnl in RECV_TYPE_ARG1, RECV_TYPE_ARG2, RECV_TYPE_ARG3 
-dnl and RECV_TYPE_ARG4, defining the type of the function
-dnl return value in RECV_TYPE_RETV.
-
-AC_DEFUN([CURL_CHECK_FUNC_RECV], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK])dnl
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h)
-  #
-  AC_MSG_CHECKING([for recv])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#undef inline 
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-    ]],[[
-      recv(0, 0, 0, 0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    curl_cv_recv="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    curl_cv_recv="no"
-  ])
-  #
-  if test "$curl_cv_recv" = "yes"; then
-    AC_CACHE_CHECK([types of args and return type for recv],
-      [curl_cv_func_recv_args], [
-      curl_cv_func_recv_args="unknown"
-      for recv_retv in 'int' 'ssize_t'; do
-        for recv_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for recv_arg2 in 'char *' 'void *'; do
-            for recv_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for recv_arg4 in 'int' 'unsigned int'; do
-                if test "$curl_cv_func_recv_args" = "unknown"; then
-                  AC_COMPILE_IFELSE([
-                    AC_LANG_PROGRAM([[
-#undef inline 
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define RECVCALLCONV PASCAL
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define RECVCALLCONV
-#endif
-                      extern $recv_retv RECVCALLCONV
-                      recv($recv_arg1, $recv_arg2, $recv_arg3, $recv_arg4);
-                    ]],[[
-                      $recv_arg1 s=0;
-                      $recv_arg2 buf=0;
-                      $recv_arg3 len=0;
-                      $recv_arg4 flags=0;
-                      $recv_retv res = recv(s, buf, len, flags);
-                    ]])
-                  ],[
-                    curl_cv_func_recv_args="$recv_arg1,$recv_arg2,$recv_arg3,$recv_arg4,$recv_retv"
-                  ])
-                fi
-              done
-            done
-          done
-        done
-      done
-    ]) # AC-CACHE-CHECK
-    if test "$curl_cv_func_recv_args" = "unknown"; then
-      AC_MSG_ERROR([Cannot find proper types to use for recv args])
-    else
-      recv_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_recv_args" | sed 's/\*/\*/g'`
-      IFS=$recv_prev_IFS
-      shift
-      #
-      AC_DEFINE_UNQUOTED(RECV_TYPE_ARG1, $[1],
-        [Define to the type of arg 1 for recv.])
-      AC_DEFINE_UNQUOTED(RECV_TYPE_ARG2, $[2],
-        [Define to the type of arg 2 for recv.])
-      AC_DEFINE_UNQUOTED(RECV_TYPE_ARG3, $[3],
-        [Define to the type of arg 3 for recv.])
-      AC_DEFINE_UNQUOTED(RECV_TYPE_ARG4, $[4],
-        [Define to the type of arg 4 for recv.])
-      AC_DEFINE_UNQUOTED(RECV_TYPE_RETV, $[5],
-        [Define to the function return type for recv.])
-      #
-      AC_DEFINE_UNQUOTED(HAVE_RECV, 1,
-        [Define to 1 if you have the recv function.])
-      ac_cv_func_recv="yes"
-    fi
-  else
-    AC_MSG_ERROR([Unable to link function recv])
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_SEND
-dnl -------------------------------------------------
-dnl Test if the socket send() function is available, 
-dnl and check its return type and the types of its 
-dnl arguments. If the function succeeds HAVE_SEND 
-dnl will be defined, defining the types of the arguments 
-dnl in SEND_TYPE_ARG1, SEND_TYPE_ARG2, SEND_TYPE_ARG3 
-dnl and SEND_TYPE_ARG4, defining the type of the function
-dnl return value in SEND_TYPE_RETV, and also defining the 
-dnl type qualifier of second argument in SEND_QUAL_ARG2.
-
-AC_DEFUN([CURL_CHECK_FUNC_SEND], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK])dnl
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h)
-  #
-  AC_MSG_CHECKING([for send])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#undef inline 
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-    ]],[[
-      send(0, 0, 0, 0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    curl_cv_send="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    curl_cv_send="no"
-  ])
-  #
-  if test "$curl_cv_send" = "yes"; then
-    AC_CACHE_CHECK([types of args and return type for send],
-      [curl_cv_func_send_args], [
-      curl_cv_func_send_args="unknown"
-      for send_retv in 'int' 'ssize_t'; do
-        for send_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for send_arg2 in 'char *' 'void *' 'const char *' 'const void *'; do
-            for send_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for send_arg4 in 'int' 'unsigned int'; do
-                if test "$curl_cv_func_send_args" = "unknown"; then
-                  AC_COMPILE_IFELSE([
-                    AC_LANG_PROGRAM([[
-#undef inline 
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define SENDCALLCONV PASCAL
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define SENDCALLCONV
-#endif
-                      extern $send_retv SENDCALLCONV
-                      send($send_arg1, $send_arg2, $send_arg3, $send_arg4);
-                    ]],[[
-                      $send_arg1 s=0;
-                      $send_arg3 len=0;
-                      $send_arg4 flags=0;
-                      $send_retv res = send(s, 0, len, flags);
-                    ]])
-                  ],[
-                    curl_cv_func_send_args="$send_arg1,$send_arg2,$send_arg3,$send_arg4,$send_retv"
-                  ])
-                fi
-              done
-            done
-          done
-        done
-      done
-    ]) # AC-CACHE-CHECK
-    if test "$curl_cv_func_send_args" = "unknown"; then
-      AC_MSG_ERROR([Cannot find proper types to use for send args])
-    else
-      send_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_send_args" | sed 's/\*/\*/g'`
-      IFS=$send_prev_IFS
-      shift
-      #
-      send_qual_type_arg2=$[2]
-      #
-      AC_DEFINE_UNQUOTED(SEND_TYPE_ARG1, $[1],
-        [Define to the type of arg 1 for send.])
-      AC_DEFINE_UNQUOTED(SEND_TYPE_ARG3, $[3],
-        [Define to the type of arg 3 for send.])
-      AC_DEFINE_UNQUOTED(SEND_TYPE_ARG4, $[4],
-        [Define to the type of arg 4 for send.])
-      AC_DEFINE_UNQUOTED(SEND_TYPE_RETV, $[5],
-        [Define to the function return type for send.])
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      case "$send_qual_type_arg2" in
-        const*)
-          send_qual_arg2=const
-          send_type_arg2=`echo $send_qual_type_arg2 | sed 's/^const //'`
-        ;;
-        *)
-          send_qual_arg2=
-          send_type_arg2=$send_qual_type_arg2
-        ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(SEND_QUAL_ARG2, $send_qual_arg2,
-        [Define to the type qualifier of arg 2 for send.])
-      AC_DEFINE_UNQUOTED(SEND_TYPE_ARG2, $send_type_arg2,
-        [Define to the type of arg 2 for send.])
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(HAVE_SEND, 1,
-        [Define to 1 if you have the send function.])
-      ac_cv_func_send="yes"
-    fi
-  else
-    AC_MSG_ERROR([Unable to link function send])
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_RECVFROM
-dnl -------------------------------------------------
-dnl Test if the socket recvfrom() function is available,
-dnl and check its return type and the types of its
-dnl arguments. If the function succeeds HAVE_RECVFROM
-dnl will be defined, defining the types of the arguments
-dnl in RECVFROM_TYPE_ARG1, RECVFROM_TYPE_ARG2, and so on
-dnl to RECVFROM_TYPE_ARG6, defining also the type of the
-dnl function return value in RECVFROM_TYPE_RETV.
-dnl Notice that the types returned for pointer arguments
-dnl will actually be the type pointed by the pointer.
-
-AC_DEFUN([CURL_CHECK_FUNC_RECVFROM], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK])dnl
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h)
-  #
-  AC_MSG_CHECKING([for recvfrom])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#undef inline 
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-    ]],[[
-      recvfrom(0, 0, 0, 0, 0, 0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    curl_cv_recvfrom="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    curl_cv_recvfrom="no"
-  ])
-  #
-  if test "$curl_cv_recvfrom" = "yes"; then
-    AC_CACHE_CHECK([types of args and return type for recvfrom],
-      [curl_cv_func_recvfrom_args], [
-      curl_cv_func_recvfrom_args="unknown"
-      for recvfrom_retv in 'int' 'ssize_t'; do
-        for recvfrom_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for recvfrom_arg2 in 'char *' 'void *'; do
-            for recvfrom_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for recvfrom_arg4 in 'int' 'unsigned int'; do
-                for recvfrom_arg5 in 'struct sockaddr *' 'void *'; do
-                  for recvfrom_arg6 in 'socklen_t *' 'int *' 'unsigned int *' 'size_t *' 'void *'; do
-                    if test "$curl_cv_func_recvfrom_args" = "unknown"; then
-                      AC_COMPILE_IFELSE([
-                        AC_LANG_PROGRAM([[
-#undef inline 
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define RECVFROMCALLCONV PASCAL
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define RECVFROMCALLCONV
-#endif
-                          extern $recvfrom_retv RECVFROMCALLCONV
-                          recvfrom($recvfrom_arg1, $recvfrom_arg2,
-                                   $recvfrom_arg3, $recvfrom_arg4,
-                                   $recvfrom_arg5, $recvfrom_arg6);
-                        ]],[[
-                          $recvfrom_arg1 s=0;
-                          $recvfrom_arg2 buf=0;
-                          $recvfrom_arg3 len=0;
-                          $recvfrom_arg4 flags=0;
-                          $recvfrom_arg5 addr=0;
-                          $recvfrom_arg6 addrlen=0;
-                          $recvfrom_retv res=0;
-                          res = recvfrom(s, buf, len, flags, addr, addrlen);
-                        ]])
-                      ],[
-                        curl_cv_func_recvfrom_args="$recvfrom_arg1,$recvfrom_arg2,$recvfrom_arg3,$recvfrom_arg4,$recvfrom_arg5,$recvfrom_arg6,$recvfrom_retv"
-                      ])
-                    fi
-                  done
-                done
-              done
-            done
-          done
-        done
-      done
-    ]) # AC-CACHE-CHECK
-    # Nearly last minute change for this release starts here
-    AC_DEFINE_UNQUOTED(HAVE_RECVFROM, 1,
-      [Define to 1 if you have the recvfrom function.])
-    ac_cv_func_recvfrom="yes"
-    # Nearly last minute change for this release ends here
-    if test "$curl_cv_func_recvfrom_args" = "unknown"; then
-      AC_MSG_WARN([Cannot find proper types to use for recvfrom args])
-    else
-      recvfrom_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_recvfrom_args" | sed 's/\*/\*/g'`
-      IFS=$recvfrom_prev_IFS
-      shift
-      #
-      recvfrom_ptrt_arg2=$[2]
-      recvfrom_ptrt_arg5=$[5]
-      recvfrom_ptrt_arg6=$[6]
-      #
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG1, $[1],
-        [Define to the type of arg 1 for recvfrom.])
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG3, $[3],
-        [Define to the type of arg 3 for recvfrom.])
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG4, $[4],
-        [Define to the type of arg 4 for recvfrom.])
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_RETV, $[7],
-        [Define to the function return type for recvfrom.])
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      recvfrom_type_arg2=`echo $recvfrom_ptrt_arg2 | sed 's/ \*//'`
-      recvfrom_type_arg5=`echo $recvfrom_ptrt_arg5 | sed 's/ \*//'`
-      recvfrom_type_arg6=`echo $recvfrom_ptrt_arg6 | sed 's/ \*//'`
-      #
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG2, $recvfrom_type_arg2,
-        [Define to the type pointed by arg 2 for recvfrom.])
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG5, $recvfrom_type_arg5,
-        [Define to the type pointed by arg 5 for recvfrom.])
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG6, $recvfrom_type_arg6,
-        [Define to the type pointed by arg 6 for recvfrom.])
-      #
-      if test "$recvfrom_type_arg2" = "void"; then
-        AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG2_IS_VOID, 1,
-          [Define to 1 if the type pointed by arg 2 for recvfrom is void.])
-      fi
-      if test "$recvfrom_type_arg5" = "void"; then
-        AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG5_IS_VOID, 1,
-          [Define to 1 if the type pointed by arg 5 for recvfrom is void.])
-      fi
-      if test "$recvfrom_type_arg6" = "void"; then
-        AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG6_IS_VOID, 1,
-          [Define to 1 if the type pointed by arg 6 for recvfrom is void.])
-      fi
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(HAVE_RECVFROM, 1,
-        [Define to 1 if you have the recvfrom function.])
-      ac_cv_func_recvfrom="yes"
-    fi
-  else
-    AC_MSG_WARN([Unable to link function recvfrom])
-    AC_MSG_WARN([Your system will be vulnerable to some forms of DNS cache poisoning])
-  fi
-])
-
-
-dnl CURL_CHECK_MSG_NOSIGNAL
-dnl -------------------------------------------------
-dnl Check for MSG_NOSIGNAL
-
-AC_DEFUN([CURL_CHECK_MSG_NOSIGNAL], [
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h)
-  AC_CACHE_CHECK([for MSG_NOSIGNAL], [ac_cv_msg_nosignal], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline 
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-      ]],[[
-        int flag=MSG_NOSIGNAL;
-      ]])
-    ],[
-      ac_cv_msg_nosignal="yes"
-    ],[
-      ac_cv_msg_nosignal="no"
-    ])
-  ])
-  case "$ac_cv_msg_nosignal" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_MSG_NOSIGNAL, 1,
-        [Define to 1 if you have the MSG_NOSIGNAL flag.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_STRUCT_TIMEVAL
-dnl -------------------------------------------------
-dnl Check for timeval struct
-
-AC_DEFUN([CURL_CHECK_STRUCT_TIMEVAL], [
-  AC_REQUIRE([AC_HEADER_TIME])dnl
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK])dnl
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/time.h time.h sys/socket.h)
-  AC_CACHE_CHECK([for struct timeval], [ac_cv_struct_timeval], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline 
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-      ]],[[
-        struct timeval ts;
-        ts.tv_sec  = 0;
-        ts.tv_usec = 0;
-      ]])
-    ],[
-      ac_cv_struct_timeval="yes"
-    ],[
-      ac_cv_struct_timeval="no"
-    ])
-  ])
-  case "$ac_cv_struct_timeval" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_STRUCT_TIMEVAL, 1,
-        [Define to 1 if you have the timeval struct.])
-      ;;
-  esac
-])
-
-
-dnl TYPE_SIG_ATOMIC_T
-dnl -------------------------------------------------
-dnl Check if the sig_atomic_t type is available, and
-dnl verify if it is already defined as volatile.
-
-AC_DEFUN([TYPE_SIG_ATOMIC_T], [
-  AC_CHECK_HEADERS(signal.h)
-  AC_CHECK_TYPE([sig_atomic_t],[
-    AC_DEFINE(HAVE_SIG_ATOMIC_T, 1,
-      [Define to 1 if sig_atomic_t is an available typedef.])
-  ], ,[
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-  ])
-  case "$ac_cv_type_sig_atomic_t" in
-    yes)
-      #
-      AC_MSG_CHECKING([if sig_atomic_t is already defined as volatile])
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-        ]],[[
-          static volatile sig_atomic_t dummy = 0;
-        ]])
-      ],[
-        AC_MSG_RESULT([no])
-        ac_cv_sig_atomic_t_volatile="no"
-      ],[
-        AC_MSG_RESULT([yes])
-        ac_cv_sig_atomic_t_volatile="yes"
-      ])
-      #
-      if test "$ac_cv_sig_atomic_t_volatile" = "yes"; then
-        AC_DEFINE(HAVE_SIG_ATOMIC_T_VOLATILE, 1,
-          [Define to 1 if sig_atomic_t is already defined as volatile.])
-      fi
-      ;;
-  esac
-])
-
-
-dnl TYPE_IN_ADDR_T
-dnl -------------------------------------------------
-dnl Check for in_addr_t: it is used to receive the return code of inet_addr()
-dnl and a few other things.
-
-AC_DEFUN([TYPE_IN_ADDR_T], [
-  AC_CHECK_TYPE([in_addr_t], ,[
-    dnl in_addr_t not available
-    AC_CACHE_CHECK([for in_addr_t equivalent],
-      [curl_cv_in_addr_t_equiv], [
-      curl_cv_in_addr_t_equiv="unknown"
-      for t in "unsigned long" int size_t unsigned long; do
-        if test "$curl_cv_in_addr_t_equiv" = "unknown"; then
-          AC_LINK_IFELSE([
-            AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-            ]],[[
-              $t data = inet_addr ("1.2.3.4");
-            ]])
-          ],[
-            curl_cv_in_addr_t_equiv="$t"
-          ])
-        fi
-      done
-    ])
-    case "$curl_cv_in_addr_t_equiv" in
-      unknown)
-        AC_MSG_ERROR([Cannot find a type to use in place of in_addr_t])
-        ;;
-      *)
-        AC_DEFINE_UNQUOTED(in_addr_t, $curl_cv_in_addr_t_equiv,
-          [Type to use in place of in_addr_t when system does not provide it.])
-        ;;
-    esac
-  ],[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-  ])
-])
-
-
-dnl CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC
-dnl -------------------------------------------------
-dnl Check if monotonic clock_gettime is available.
-
-AC_DEFUN([CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC], [
-  AC_REQUIRE([AC_HEADER_TIME])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/time.h time.h)
-  AC_MSG_CHECKING([for monotonic clock_gettime])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-    ]],[[
-      struct timespec ts;
-      (void)clock_gettime(CLOCK_MONOTONIC, &ts);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    ac_cv_func_clock_gettime="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    ac_cv_func_clock_gettime="no"
-  ])
-  dnl Definition of HAVE_CLOCK_GETTIME_MONOTONIC is intentionally postponed
-  dnl until library linking and run-time checks for clock_gettime succeed.
-])
-
-
-dnl CURL_CHECK_LIBS_CLOCK_GETTIME_MONOTONIC
-dnl -------------------------------------------------
-dnl If monotonic clock_gettime is available then,
-dnl check and prepended to LIBS any needed libraries.
-
-AC_DEFUN([CURL_CHECK_LIBS_CLOCK_GETTIME_MONOTONIC], [
-  AC_REQUIRE([CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC])dnl
-  #
-  if test "$ac_cv_func_clock_gettime" = "yes"; then
-    #
-    AC_MSG_CHECKING([for clock_gettime in libraries])
-    #
-    curl_cv_save_LIBS="$LIBS"
-    curl_cv_gclk_LIBS="unknown"
-    #
-    for x_xlibs in '' '-lrt' '-lposix4' ; do
-      if test "$curl_cv_gclk_LIBS" = "unknown"; then
-        if test -z "$x_xlibs"; then
-          LIBS="$curl_cv_save_LIBS"
-        else
-          LIBS="$x_xlibs $curl_cv_save_LIBS"
-        fi
-        AC_LINK_IFELSE([
-          AC_LANG_PROGRAM([[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-          ]],[[
-            struct timespec ts;
-            (void)clock_gettime(CLOCK_MONOTONIC, &ts);
-          ]])
-        ],[
-          curl_cv_gclk_LIBS="$x_xlibs"
-        ])
-      fi
-    done
-    #
-    LIBS="$curl_cv_save_LIBS"
-    #
-    case X-"$curl_cv_gclk_LIBS" in
-      X-unknown)
-        AC_MSG_RESULT([cannot find clock_gettime])
-        AC_MSG_WARN([HAVE_CLOCK_GETTIME_MONOTONIC will not be defined])
-        ac_cv_func_clock_gettime="no"
-        ;;
-      X-)
-        AC_MSG_RESULT([no additional lib required])
-        ac_cv_func_clock_gettime="yes"
-        ;;
-      *)
-        if test -z "$curl_cv_save_LIBS"; then
-          LIBS="$curl_cv_gclk_LIBS"
-        else
-          LIBS="$curl_cv_gclk_LIBS $curl_cv_save_LIBS"
-        fi
-        AC_MSG_RESULT([$curl_cv_gclk_LIBS])
-        ac_cv_func_clock_gettime="yes"
-        ;;
-    esac
-    #
-    dnl only do runtime verification when not cross-compiling
-    if test "x$cross_compiling" != "xyes" &&
-      test "$ac_cv_func_clock_gettime" = "yes"; then
-      AC_MSG_CHECKING([if monotonic clock_gettime works])
-      AC_RUN_IFELSE([
-        AC_LANG_PROGRAM([[
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-        ]],[[
-          struct timespec ts;
-          if (0 == clock_gettime(CLOCK_MONOTONIC, &ts))
-            exit(0);
-          else
-            exit(1);
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-      ],[
-        AC_MSG_RESULT([no])
-        AC_MSG_WARN([HAVE_CLOCK_GETTIME_MONOTONIC will not be defined])
-        ac_cv_func_clock_gettime="no"
-        LIBS="$curl_cv_save_LIBS"
-      ])
-    fi
-    #
-    case "$ac_cv_func_clock_gettime" in
-      yes)
-        AC_DEFINE_UNQUOTED(HAVE_CLOCK_GETTIME_MONOTONIC, 1,
-          [Define to 1 if you have the clock_gettime function and monotonic timer.])
-        ;;
-    esac
-    #
-  fi
-  #
-])
-
-
-dnl CARES_CHECK_LIBS_CONNECT
-dnl -------------------------------------------------
-dnl Verify if network connect function is already available
-dnl using current libraries or if another one is required.
-
-AC_DEFUN([CARES_CHECK_LIBS_CONNECT], [
-  AC_REQUIRE([CARES_INCLUDES_WINSOCK2])dnl
-  AC_MSG_CHECKING([for connect in libraries])
-  tst_connect_save_LIBS="$LIBS"
-  tst_connect_need_LIBS="unknown"
-  for tst_lib in '' '-lsocket' ; do
-    if test "$tst_connect_need_LIBS" = "unknown"; then
-      LIBS="$tst_lib $tst_connect_save_LIBS"
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-          $cares_includes_winsock2
-          #ifndef HAVE_WINDOWS_H
-            int connect(int, void*, int);
-          #endif
-        ]],[[
-          if(0 != connect(0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        tst_connect_need_LIBS="$tst_lib"
-      ])
-    fi
-  done
-  LIBS="$tst_connect_save_LIBS"
-  #
-  case X-"$tst_connect_need_LIBS" in
-    X-unknown)
-      AC_MSG_RESULT([cannot find connect])
-      AC_MSG_ERROR([cannot find connect function in libraries.])
-      ;;
-    X-)
-      AC_MSG_RESULT([yes])
-      ;;
-    *)
-      AC_MSG_RESULT([$tst_connect_need_LIBS])
-      LIBS="$tst_connect_need_LIBS $tst_connect_save_LIBS"
-      ;;
-  esac
-])
-
-
-dnl CARES_DEFINE_UNQUOTED (VARIABLE, [VALUE])
-dnl -------------------------------------------------
-dnl Like AC_DEFINE_UNQUOTED this macro will define a C preprocessor
-dnl symbol that can be further used in custom template configuration
-dnl files. This macro, unlike AC_DEFINE_UNQUOTED, does not use a third
-dnl argument for the description. Symbol definitions done with this
-dnl macro are intended to be exclusively used in handcrafted *.h.in
-dnl template files. Contrary to what AC_DEFINE_UNQUOTED does, this one
-dnl prevents autoheader generation and insertion of symbol template
-dnl stub and definition into the first configuration header file. Do
-dnl not use this macro as a replacement for AC_DEFINE_UNQUOTED, each
-dnl one serves different functional needs.
-
-AC_DEFUN([CARES_DEFINE_UNQUOTED], [
-cat >>confdefs.h <<_EOF
-[@%:@define] $1 ifelse($#, 2, [$2], 1)
-_EOF
-])
-
-
-dnl CARES_CONFIGURE_LONG
-dnl -------------------------------------------------
-dnl Find out the size of long as reported by sizeof() and define
-dnl CARES_SIZEOF_LONG as appropriate to be used in template file
-dnl ares_build.h.in to properly configure the library.
-dnl The size of long is a build time characteristic and as such
-dnl must be recorded in ares_build.h
-
-AC_DEFUN([CARES_CONFIGURE_LONG], [
-  if test -z "$ac_cv_sizeof_long" ||
-    test "$ac_cv_sizeof_long" -eq "0"; then
-    AC_MSG_ERROR([cannot find out size of long.])
-  fi
-  CARES_DEFINE_UNQUOTED([CARES_SIZEOF_LONG], [$ac_cv_sizeof_long])
-])
-
-
-dnl CARES_CONFIGURE_ARES_SOCKLEN_T
-dnl -------------------------------------------------
-dnl Find out suitable ares_socklen_t data type definition and size, making
-dnl appropriate definitions for template file ares_build.h.in
-dnl to properly configure and use the library.
-dnl
-dnl The need for the ares_socklen_t definition arises mainly to properly
-dnl interface HP-UX systems which on one hand have a typedef'ed socklen_t
-dnl data type which is 32 or 64-Bit wide depending on the data model being
-dnl used, and that on the other hand is only actually used when interfacing
-dnl the X/Open sockets provided in the xnet library.
-
-AC_DEFUN([CARES_CONFIGURE_ARES_SOCKLEN_T], [
-  AC_REQUIRE([CARES_INCLUDES_WS2TCPIP])dnl
-  AC_REQUIRE([CARES_INCLUDES_SYS_SOCKET])dnl
-  AC_REQUIRE([CARES_PREPROCESS_CALLCONV])dnl
-  #
-  AC_MSG_CHECKING([for ares_socklen_t data type])
-  cares_typeof_ares_socklen_t="unknown"
-  for arg1 in int SOCKET; do
-    for arg2 in 'struct sockaddr' void; do
-      for t in socklen_t int size_t 'unsigned int' long 'unsigned long' void; do
-        if test "$cares_typeof_ares_socklen_t" = "unknown"; then
-          AC_COMPILE_IFELSE([
-            AC_LANG_PROGRAM([[
-              $cares_includes_ws2tcpip
-              $cares_includes_sys_socket
-              $cares_preprocess_callconv
-              extern int getpeername($arg1, $arg2 *, $t *);
-            ]],[[
-              $t *lenptr = 0;
-              if(0 != getpeername(0, 0, lenptr))
-                return 1;
-            ]])
-          ],[
-            cares_typeof_ares_socklen_t="$t"
-          ])
-        fi
-      done
-    done
-  done
-  for t in socklen_t int; do
-    if test "$cares_typeof_ares_socklen_t" = "void"; then
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $cares_includes_sys_socket
-          typedef $t ares_socklen_t;
-        ]],[[
-          ares_socklen_t dummy;
-        ]])
-      ],[
-        cares_typeof_ares_socklen_t="$t"
-      ])
-    fi
-  done
-  AC_MSG_RESULT([$cares_typeof_ares_socklen_t])
-  if test "$cares_typeof_ares_socklen_t" = "void" ||
-    test "$cares_typeof_ares_socklen_t" = "unknown"; then
-    AC_MSG_ERROR([cannot find data type for ares_socklen_t.])
-  fi
-  #
-  AC_MSG_CHECKING([size of ares_socklen_t])
-  cares_sizeof_ares_socklen_t="unknown"
-  cares_pull_headers_socklen_t="unknown"
-  if test "$ac_cv_header_ws2tcpip_h" = "yes"; then
-    tst_pull_header_checks='none ws2tcpip'
-    tst_size_checks='4'
-  else
-    tst_pull_header_checks='none systypes syssocket'
-    tst_size_checks='4 8 2'
-  fi
-  for tst_size in $tst_size_checks; do
-    for tst_pull_headers in $tst_pull_header_checks; do
-      if test "$cares_sizeof_ares_socklen_t" = "unknown"; then
-        case $tst_pull_headers in
-          ws2tcpip)
-            tmp_includes="$cares_includes_ws2tcpip"
-            ;;
-          systypes)
-            tmp_includes="$cares_includes_sys_types"
-            ;;
-          syssocket)
-            tmp_includes="$cares_includes_sys_socket"
-            ;;
-          *)
-            tmp_includes=""
-            ;;
-        esac
-        AC_COMPILE_IFELSE([
-          AC_LANG_PROGRAM([[
-            $tmp_includes
-            typedef $cares_typeof_ares_socklen_t ares_socklen_t;
-            typedef char dummy_arr[sizeof(ares_socklen_t) == $tst_size ? 1 : -1];
-          ]],[[
-            ares_socklen_t dummy;
-          ]])
-        ],[
-          cares_sizeof_ares_socklen_t="$tst_size"
-          cares_pull_headers_socklen_t="$tst_pull_headers"
-        ])
-      fi
-    done
-  done
-  AC_MSG_RESULT([$cares_sizeof_ares_socklen_t])
-  if test "$cares_sizeof_ares_socklen_t" = "unknown"; then
-    AC_MSG_ERROR([cannot find out size of ares_socklen_t.])
-  fi
-  #
-  case $cares_pull_headers_socklen_t in
-    ws2tcpip)
-      CARES_DEFINE_UNQUOTED([CARES_PULL_WS2TCPIP_H])
-      ;;
-    systypes)
-      CARES_DEFINE_UNQUOTED([CARES_PULL_SYS_TYPES_H])
-      ;;
-    syssocket)
-      CARES_DEFINE_UNQUOTED([CARES_PULL_SYS_TYPES_H])
-      CARES_DEFINE_UNQUOTED([CARES_PULL_SYS_SOCKET_H])
-      ;;
-  esac
-  CARES_DEFINE_UNQUOTED([CARES_TYPEOF_ARES_SOCKLEN_T], [$cares_typeof_ares_socklen_t])
-  CARES_DEFINE_UNQUOTED([CARES_SIZEOF_ARES_SOCKLEN_T], [$cares_sizeof_ares_socklen_t])
-])
-
-
-dnl This macro determines if the specified struct exists in the specified file
-dnl Syntax:
-dnl CARES_CHECK_STRUCT(headers, struct name, if found, [if not found])
-
-AC_DEFUN([CARES_CHECK_STRUCT], [
-  AC_MSG_CHECKING([for struct $2])
-  AC_TRY_COMPILE([$1], 
-    [
-      struct $2 struct_instance;
-    ], ac_struct="yes", ac_found="no")
-  if test "$ac_struct" = "yes" ; then
-    AC_MSG_RESULT(yes)
-    $3
-  else
-    AC_MSG_RESULT(no)
-    $4
-  fi
-])
-
-dnl This macro determines if the specified constant exists in the specified file
-dnl Syntax:
-dnl CARES_CHECK_CONSTANT(headers, constant name, if found, [if not found])
-
-AC_DEFUN([CARES_CHECK_CONSTANT], [
-  AC_MSG_CHECKING([for $2])
-  AC_EGREP_CPP(VARIABLEWASDEFINED,
-   [
-      $1
-
-      #ifdef $2
-        VARIABLEWASDEFINED
-      #else
-        NJET
-      #endif
-    ], ac_constant="yes", ac_constant="no"
-  )
-  if test "$ac_constant" = "yes" ; then
-    AC_MSG_RESULT(yes)
-    $3
-  else
-    AC_MSG_RESULT(no)
-    $4
-  fi
-])
-
diff --git a/src/other/ares/aclocal.m4 b/src/other/ares/aclocal.m4
deleted file mode 100644
index ae5a004..0000000
--- a/src/other/ares/aclocal.m4
+++ /dev/null
@@ -1,1050 +0,0 @@
-# generated automatically by aclocal 1.11.1 -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2007, 2008, 2009  Free Software Foundation, Inc.
-# This file 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.
-
-m4_ifndef([AC_AUTOCONF_VERSION],
-  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],,
-[m4_warning([this file was generated for autoconf 2.68.
-You have another version of autoconf.  It may work, but is not guaranteed to.
-If you have problems, you may need to regenerate the build system entirely.
-To do so, use the procedure documented by the package, typically `autoreconf'.])])
-
-# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# AM_AUTOMAKE_VERSION(VERSION)
-# ----------------------------
-# Automake X.Y traces this macro to ensure aclocal.m4 has been
-# generated from the m4 files accompanying Automake X.Y.
-# (This private macro should not be called outside this file.)
-AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.11'
-dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
-dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.11.1], [],
-      [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
-])
-
-# _AM_AUTOCONF_VERSION(VERSION)
-# -----------------------------
-# aclocal traces this macro to find the Autoconf version.
-# This is a private macro too.  Using m4_define simplifies
-# the logic in aclocal, which can simply ignore this definition.
-m4_define([_AM_AUTOCONF_VERSION], [])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
-# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.11.1])dnl
-m4_ifndef([AC_AUTOCONF_VERSION],
-  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
-
-# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
-
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
-# $ac_aux_dir to `$srcdir/foo'.  In other projects, it is set to
-# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
-#
-# Of course, Automake must honor this variable whenever it calls a
-# tool from the auxiliary directory.  The problem is that $srcdir (and
-# therefore $ac_aux_dir as well) can be either absolute or relative,
-# depending on how configure is run.  This is pretty annoying, since
-# it makes $ac_aux_dir quite unusable in subdirectories: in the top
-# source directory, any form will work fine, but in subdirectories a
-# relative path needs to be adjusted first.
-#
-# $ac_aux_dir/missing
-#    fails when called from a subdirectory if $ac_aux_dir is relative
-# $top_srcdir/$ac_aux_dir/missing
-#    fails if $ac_aux_dir is absolute,
-#    fails when called from a subdirectory in a VPATH build with
-#          a relative $ac_aux_dir
-#
-# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
-# are both prefixed by $srcdir.  In an in-source build this is usually
-# harmless because $srcdir is `.', but things will broke when you
-# start a VPATH build or use an absolute $srcdir.
-#
-# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
-# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:
-#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
-# and then we would define $MISSING as
-#   MISSING="\${SHELL} $am_aux_dir/missing"
-# This will work as long as MISSING is not called from configure, because
-# unfortunately $(top_srcdir) has no meaning in configure.
-# However there are other variables, like CC, which are often used in
-# configure, and could therefore not use this "fixed" $ac_aux_dir.
-#
-# Another solution, used here, is to always expand $ac_aux_dir to an
-# absolute PATH.  The drawback is that using absolute paths prevent a
-# configured tree to be moved without reconfiguration.
-
-AC_DEFUN([AM_AUX_DIR_EXPAND],
-[dnl Rely on autoconf to set up CDPATH properly.
-AC_PREREQ([2.50])dnl
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-])
-
-# AM_CONDITIONAL                                            -*- Autoconf -*-
-
-# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 9
-
-# AM_CONDITIONAL(NAME, SHELL-CONDITION)
-# -------------------------------------
-# Define a conditional.
-AC_DEFUN([AM_CONDITIONAL],
-[AC_PREREQ(2.52)dnl
- ifelse([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
-	[$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
-AC_SUBST([$1_TRUE])dnl
-AC_SUBST([$1_FALSE])dnl
-_AM_SUBST_NOTMAKE([$1_TRUE])dnl
-_AM_SUBST_NOTMAKE([$1_FALSE])dnl
-m4_define([_AM_COND_VALUE_$1], [$2])dnl
-if $2; then
-  $1_TRUE=
-  $1_FALSE='#'
-else
-  $1_TRUE='#'
-  $1_FALSE=
-fi
-AC_CONFIG_COMMANDS_PRE(
-[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
-  AC_MSG_ERROR([[conditional "$1" was never defined.
-Usually this means the macro was only invoked conditionally.]])
-fi])])
-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 10
-
-# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
-# written in clear, in which case automake, when reading aclocal.m4,
-# will think it sees a *use*, and therefore will trigger all it's
-# C support machinery.  Also note that it means that autoscan, seeing
-# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
-
-
-# _AM_DEPENDENCIES(NAME)
-# ----------------------
-# See how the compiler implements dependency checking.
-# NAME is "CC", "CXX", "GCJ", or "OBJC".
-# We try a few techniques and use that to set a single cache variable.
-#
-# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
-# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
-# dependency, and given that the user is not expected to run this macro,
-# just rely on AC_PROG_CC.
-AC_DEFUN([_AM_DEPENDENCIES],
-[AC_REQUIRE([AM_SET_DEPDIR])dnl
-AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
-AC_REQUIRE([AM_MAKE_INCLUDE])dnl
-AC_REQUIRE([AM_DEP_TRACK])dnl
-
-ifelse([$1], CC,   [depcc="$CC"   am_compiler_list=],
-       [$1], CXX,  [depcc="$CXX"  am_compiler_list=],
-       [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
-       [$1], UPC,  [depcc="$UPC"  am_compiler_list=],
-       [$1], GCJ,  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
-                   [depcc="$$1"   am_compiler_list=])
-
-AC_CACHE_CHECK([dependency style of $depcc],
-               [am_cv_$1_dependencies_compiler_type],
-[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
-  # We make a subdir and do the tests there.  Otherwise we can end up
-  # making bogus files that we don't know about and never remove.  For
-  # instance it was reported that on HP-UX the gcc test will end up
-  # making a dummy file named `D' -- because `-MD' means `put the output
-  # in D'.
-  mkdir conftest.dir
-  # Copy depcomp to subdir because otherwise we won't find it if we're
-  # using a relative directory.
-  cp "$am_depcomp" conftest.dir
-  cd conftest.dir
-  # We will build objects and dependencies in a subdirectory because
-  # it helps to detect inapplicable dependency modes.  For instance
-  # both Tru64's cc and ICC support -MD to output dependencies as a
-  # side effect of compilation, but ICC will put the dependencies in
-  # the current directory while Tru64 will put them in the object
-  # directory.
-  mkdir sub
-
-  am_cv_$1_dependencies_compiler_type=none
-  if test "$am_compiler_list" = ""; then
-     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
-  fi
-  am__universal=false
-  m4_case([$1], [CC],
-    [case " $depcc " in #(
-     *\ -arch\ *\ -arch\ *) am__universal=true ;;
-     esac],
-    [CXX],
-    [case " $depcc " in #(
-     *\ -arch\ *\ -arch\ *) am__universal=true ;;
-     esac])
-
-  for depmode in $am_compiler_list; do
-    # Setup a source with many dependencies, because some compilers
-    # like to wrap large dependency lists on column 80 (with \), and
-    # we should not choose a depcomp mode which is confused by this.
-    #
-    # We need to recreate these files for each test, as the compiler may
-    # overwrite some of them when testing with obscure command lines.
-    # This happens at least with the AIX C compiler.
-    : > sub/conftest.c
-    for i in 1 2 3 4 5 6; do
-      echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
-      # Solaris 8's {/usr,}/bin/sh.
-      touch sub/conftst$i.h
-    done
-    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
-    # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.  Also, some Intel
-    # versions had trouble with output in subdirs
-    am__obj=sub/conftest.${OBJEXT-o}
-    am__minus_obj="-o $am__obj"
-    case $depmode in
-    gcc)
-      # This depmode causes a compiler race in universal mode.
-      test "$am__universal" = false || continue
-      ;;
-    nosideeffect)
-      # after this tag, mechanisms are not by side-effect, so they'll
-      # only be used when explicitly requested
-      if test "x$enable_dependency_tracking" = xyes; then
-	continue
-      else
-	break
-      fi
-      ;;
-    msvisualcpp | msvcmsys)
-      # This compiler won't grok `-c -o', but also, the minuso test has
-      # not run yet.  These depmodes are late enough in the game, and
-      # so weak that their functioning should not be impacted.
-      am__obj=conftest.${OBJEXT-o}
-      am__minus_obj=
-      ;;
-    none) break ;;
-    esac
-    if depmode=$depmode \
-       source=sub/conftest.c object=$am__obj \
-       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
-         >/dev/null 2>conftest.err &&
-       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
-       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
-      # icc doesn't choke on unknown options, it will just issue warnings
-      # or remarks (even with -Werror).  So we grep stderr for any message
-      # that says an option was ignored or not supported.
-      # When given -MP, icc 7.0 and 7.1 complain thusly:
-      #   icc: Command line warning: ignoring option '-M'; no argument required
-      # The diagnosis changed in icc 8.0:
-      #   icc: Command line remark: option '-MP' not supported
-      if (grep 'ignoring option' conftest.err ||
-          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
-        am_cv_$1_dependencies_compiler_type=$depmode
-        break
-      fi
-    fi
-  done
-
-  cd ..
-  rm -rf conftest.dir
-else
-  am_cv_$1_dependencies_compiler_type=none
-fi
-])
-AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
-AM_CONDITIONAL([am__fastdep$1], [
-  test "x$enable_dependency_tracking" != xno \
-  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
-])
-
-
-# AM_SET_DEPDIR
-# -------------
-# Choose a directory name for dependency files.
-# This macro is AC_REQUIREd in _AM_DEPENDENCIES
-AC_DEFUN([AM_SET_DEPDIR],
-[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
-])
-
-
-# AM_DEP_TRACK
-# ------------
-AC_DEFUN([AM_DEP_TRACK],
-[AC_ARG_ENABLE(dependency-tracking,
-[  --disable-dependency-tracking  speeds up one-time build
-  --enable-dependency-tracking   do not reject slow dependency extractors])
-if test "x$enable_dependency_tracking" != xno; then
-  am_depcomp="$ac_aux_dir/depcomp"
-  AMDEPBACKSLASH='\'
-fi
-AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
-AC_SUBST([AMDEPBACKSLASH])dnl
-_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
-])
-
-# Generate code to set up dependency tracking.              -*- Autoconf -*-
-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-#serial 5
-
-# _AM_OUTPUT_DEPENDENCY_COMMANDS
-# ------------------------------
-AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
-[{
-  # Autoconf 2.62 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.
-  case $CONFIG_FILES in
-  *\'*) eval set x "$CONFIG_FILES" ;;
-  *)   set x $CONFIG_FILES ;;
-  esac
-  shift
-  for mf
-  do
-    # Strip MF so we end up with the name of the file.
-    mf=`echo "$mf" | sed -e 's/:.*$//'`
-    # Check whether this is an Automake generated Makefile or not.
-    # We used to match only the files named `Makefile.in', but
-    # some people rename them; so instead we look at the file content.
-    # Grep'ing the first line is not enough: some people post-process
-    # each Makefile.in and add a new line on top of each file to say so.
-    # Grep'ing the whole file is not good either: AIX grep has a line
-    # limit of 2048, but all sed's we know have understand at least 4000.
-    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
-      dirpart=`AS_DIRNAME("$mf")`
-    else
-      continue
-    fi
-    # Extract the definition of DEPDIR, am__include, and am__quote
-    # from the Makefile without running `make'.
-    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
-    test -z "$DEPDIR" && continue
-    am__include=`sed -n 's/^am__include = //p' < "$mf"`
-    test -z "am__include" && continue
-    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-    # When using ansi2knr, U may be empty or an underscore; expand it
-    U=`sed -n 's/^U = //p' < "$mf"`
-    # Find all dependency output files, they are included files with
-    # $(DEPDIR) in their names.  We invoke sed twice because it is the
-    # simplest approach to changing $(DEPDIR) to its actual value in the
-    # expansion.
-    for file in `sed -n "
-      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
-      # Make sure the directory exists.
-      test -f "$dirpart/$file" && continue
-      fdir=`AS_DIRNAME(["$file"])`
-      AS_MKDIR_P([$dirpart/$fdir])
-      # echo "creating $dirpart/$file"
-      echo '# dummy' > "$dirpart/$file"
-    done
-  done
-}
-])# _AM_OUTPUT_DEPENDENCY_COMMANDS
-
-
-# AM_OUTPUT_DEPENDENCY_COMMANDS
-# -----------------------------
-# This macro should only be invoked once -- use via AC_REQUIRE.
-#
-# This code is only required when automatic dependency tracking
-# is enabled.  FIXME.  This creates each `.P' file that we will
-# need in order to bootstrap the dependency handling code.
-AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
-[AC_CONFIG_COMMANDS([depfiles],
-     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
-     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
-])
-
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 8
-
-# AM_CONFIG_HEADER is obsolete.  It has been replaced by AC_CONFIG_HEADERS.
-AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
-
-# Do all the work for Automake.                             -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 16
-
-# This macro actually does too much.  Some checks are only needed if
-# your package does certain things.  But this isn't really a big deal.
-
-# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
-# AM_INIT_AUTOMAKE([OPTIONS])
-# -----------------------------------------------
-# The call with PACKAGE and VERSION arguments is the old style
-# call (pre autoconf-2.50), which is being phased out.  PACKAGE
-# and VERSION should now be passed to AC_INIT and removed from
-# the call to AM_INIT_AUTOMAKE.
-# We support both call styles for the transition.  After
-# the next Automake release, Autoconf can make the AC_INIT
-# arguments mandatory, and then we can depend on a new Autoconf
-# release and drop the old call support.
-AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.62])dnl
-dnl Autoconf wants to disallow AM_ names.  We explicitly allow
-dnl the ones we care about.
-m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
-AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])dnl
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
-  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
-  # is not polluted with repeated "-I."
-  AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
-  # test to see if srcdir already configured
-  if test -f $srcdir/config.status; then
-    AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
-  fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
-  if (cygpath --version) >/dev/null 2>/dev/null; then
-    CYGPATH_W='cygpath -w'
-  else
-    CYGPATH_W=echo
-  fi
-fi
-AC_SUBST([CYGPATH_W])
-
-# Define the identity of the package.
-dnl Distinguish between old-style and new-style calls.
-m4_ifval([$2],
-[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
- AC_SUBST([PACKAGE], [$1])dnl
- AC_SUBST([VERSION], [$2])],
-[_AM_SET_OPTIONS([$1])dnl
-dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
-m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
-  [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
-
-_AM_IF_OPTION([no-define],,
-[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
- AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
-
-# Some tools Automake needs.
-AC_REQUIRE([AM_SANITY_CHECK])dnl
-AC_REQUIRE([AC_ARG_PROGRAM])dnl
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
-AM_MISSING_PROG(AUTOCONF, autoconf)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
-AM_MISSING_PROG(AUTOHEADER, autoheader)
-AM_MISSING_PROG(MAKEINFO, makeinfo)
-AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
-AC_REQUIRE([AM_PROG_MKDIR_P])dnl
-# We need awk for the "check" target.  The system "awk" is bad on
-# some platforms.
-AC_REQUIRE([AC_PROG_AWK])dnl
-AC_REQUIRE([AC_PROG_MAKE_SET])dnl
-AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
-	      [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
-			     [_AM_PROG_TAR([v7])])])
-_AM_IF_OPTION([no-dependencies],,
-[AC_PROVIDE_IFELSE([AC_PROG_CC],
-		  [_AM_DEPENDENCIES(CC)],
-		  [define([AC_PROG_CC],
-			  defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_CXX],
-		  [_AM_DEPENDENCIES(CXX)],
-		  [define([AC_PROG_CXX],
-			  defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_OBJC],
-		  [_AM_DEPENDENCIES(OBJC)],
-		  [define([AC_PROG_OBJC],
-			  defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
-])
-_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
-dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
-dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This macro
-dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
-AC_CONFIG_COMMANDS_PRE(dnl
-[m4_provide_if([_AM_COMPILER_EXEEXT],
-  [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
-])
-
-dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
-dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
-dnl mangled by Autoconf and run in a shell conditional statement.
-m4_define([_AC_COMPILER_EXEEXT],
-m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
-
-
-# When config.status generates a header, we must update the stamp-h file.
-# This file resides in the same directory as the config header
-# that is generated.  The stamp files are numbered to have different names.
-
-# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
-# loop where config.status creates the headers, so we can generate
-# our stamp files there.
-AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
-[# Compute $1's index in $config_headers.
-_am_arg=$1
-_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"])`/stamp-h[]$_am_stamp_count])
-
-# Copyright (C) 2001, 2003, 2005, 2008  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# AM_PROG_INSTALL_SH
-# ------------------
-# Define $install_sh.
-AC_DEFUN([AM_PROG_INSTALL_SH],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\	*)
-    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
-  *)
-    install_sh="\${SHELL} $am_aux_dir/install-sh"
-  esac
-fi
-AC_SUBST(install_sh)])
-
-# Copyright (C) 2003, 2005  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 2
-
-# Check whether the underlying file-system supports filenames
-# with a leading dot.  For instance MS-DOS doesn't.
-AC_DEFUN([AM_SET_LEADING_DOT],
-[rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
-  am__leading_dot=.
-else
-  am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-AC_SUBST([am__leading_dot])])
-
-# Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
-# From Jim Meyering
-
-# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 5
-
-# AM_MAINTAINER_MODE([DEFAULT-MODE])
-# ----------------------------------
-# Control maintainer-specific portions of Makefiles.
-# Default is to disable them, unless `enable' is passed literally.
-# For symmetry, `disable' may be passed as well.  Anyway, the user
-# can override the default with the --enable/--disable switch.
-AC_DEFUN([AM_MAINTAINER_MODE],
-[m4_case(m4_default([$1], [disable]),
-       [enable], [m4_define([am_maintainer_other], [disable])],
-       [disable], [m4_define([am_maintainer_other], [enable])],
-       [m4_define([am_maintainer_other], [enable])
-        m4_warn([syntax], [unexpected argument to AM@&t at _MAINTAINER_MODE: $1])])
-AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles])
-  dnl maintainer-mode's default is 'disable' unless 'enable' is passed
-  AC_ARG_ENABLE([maintainer-mode],
-[  --][am_maintainer_other][-maintainer-mode  am_maintainer_other make rules and dependencies not useful
-			  (and sometimes confusing) to the casual installer],
-      [USE_MAINTAINER_MODE=$enableval],
-      [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
-  AC_MSG_RESULT([$USE_MAINTAINER_MODE])
-  AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
-  MAINT=$MAINTAINER_MODE_TRUE
-  AC_SUBST([MAINT])dnl
-]
-)
-
-AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
-
-# Check to see how 'make' treats includes.	            -*- Autoconf -*-
-
-# Copyright (C) 2001, 2002, 2003, 2005, 2009  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 4
-
-# AM_MAKE_INCLUDE()
-# -----------------
-# Check to see how make treats includes.
-AC_DEFUN([AM_MAKE_INCLUDE],
-[am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
-	@echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-AC_MSG_CHECKING([for style of include used by $am_make])
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
-  am__include=include
-  am__quote=
-  _am_result=GNU
-  ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
-   echo '.include "confinc"' > confmf
-   case `$am_make -s -f confmf 2> /dev/null` in #(
-   *the\ am__doit\ target*)
-     am__include=.include
-     am__quote="\""
-     _am_result=BSD
-     ;;
-   esac
-fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
-rm -f confinc confmf
-])
-
-# Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 6
-
-# AM_PROG_CC_C_O
-# --------------
-# Like AC_PROG_CC_C_O, but changed for automake.
-AC_DEFUN([AM_PROG_CC_C_O],
-[AC_REQUIRE([AC_PROG_CC_C_O])dnl
-AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([compile])dnl
-# FIXME: we rely on the cache variable name because
-# there is no other way.
-set dummy $CC
-am_cc=`echo $[2] | sed ['s/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/']`
-eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o
-if test "$am_t" != yes; then
-   # Losing compiler, so override with the script.
-   # FIXME: It is wrong to rewrite CC.
-   # But if we don't then we get into trouble of one sort or another.
-   # A longer-term fix would be to have automake use am__CC in this case,
-   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
-   CC="$am_aux_dir/compile $CC"
-fi
-dnl Make sure AC_PROG_CC is never called again, or it will override our
-dnl setting of CC.
-m4_define([AC_PROG_CC],
-          [m4_fatal([AC_PROG_CC cannot be called after AM_PROG_CC_C_O])])
-])
-
-# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
-
-# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 6
-
-# AM_MISSING_PROG(NAME, PROGRAM)
-# ------------------------------
-AC_DEFUN([AM_MISSING_PROG],
-[AC_REQUIRE([AM_MISSING_HAS_RUN])
-$1=${$1-"${am_missing_run}$2"}
-AC_SUBST($1)])
-
-
-# AM_MISSING_HAS_RUN
-# ------------------
-# Define MISSING if not defined so far and test if it supports --run.
-# If it does, set am_missing_run to use it, otherwise, to nothing.
-AC_DEFUN([AM_MISSING_HAS_RUN],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([missing])dnl
-if test x"${MISSING+set}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\	*)
-    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
-  *)
-    MISSING="\${SHELL} $am_aux_dir/missing" ;;
-  esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
-  am_missing_run="$MISSING --run "
-else
-  am_missing_run=
-  AC_MSG_WARN([`missing' script is too old or missing])
-fi
-])
-
-# Copyright (C) 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# AM_PROG_MKDIR_P
-# ---------------
-# Check for `mkdir -p'.
-AC_DEFUN([AM_PROG_MKDIR_P],
-[AC_PREREQ([2.60])dnl
-AC_REQUIRE([AC_PROG_MKDIR_P])dnl
-dnl Automake 1.8 to 1.9.6 used to define mkdir_p.  We now use MKDIR_P,
-dnl while keeping a definition of mkdir_p for backward compatibility.
-dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
-dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
-dnl Makefile.ins that do not define MKDIR_P, so we do our own
-dnl adjustment using top_builddir (which is defined more often than
-dnl MKDIR_P).
-AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
-case $mkdir_p in
-  [[\\/$]]* | ?:[[\\/]]*) ;;
-  */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-])
-
-# Helper functions for option handling.                     -*- Autoconf -*-
-
-# Copyright (C) 2001, 2002, 2003, 2005, 2008  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 4
-
-# _AM_MANGLE_OPTION(NAME)
-# -----------------------
-AC_DEFUN([_AM_MANGLE_OPTION],
-[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
-
-# _AM_SET_OPTION(NAME)
-# ------------------------------
-# Set option NAME.  Presently that only means defining a flag for this option.
-AC_DEFUN([_AM_SET_OPTION],
-[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
-
-# _AM_SET_OPTIONS(OPTIONS)
-# ----------------------------------
-# OPTIONS is a space-separated list of Automake options.
-AC_DEFUN([_AM_SET_OPTIONS],
-[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
-
-# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
-# -------------------------------------------
-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
-AC_DEFUN([_AM_IF_OPTION],
-[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-
-# Check to make sure that the build environment is sane.    -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 5
-
-# AM_SANITY_CHECK
-# ---------------
-AC_DEFUN([AM_SANITY_CHECK],
-[AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftest.file
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name.  Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
-  *[[\\\"\#\$\&\'\`$am_lf]]*)
-    AC_MSG_ERROR([unsafe absolute working directory name]);;
-esac
-case $srcdir in
-  *[[\\\"\#\$\&\'\`$am_lf\ \	]]*)
-    AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
-esac
-
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments.  Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
-   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
-   if test "$[*]" = "X"; then
-      # -L didn't work.
-      set X `ls -t "$srcdir/configure" conftest.file`
-   fi
-   rm -f conftest.file
-   if test "$[*]" != "X $srcdir/configure conftest.file" \
-      && test "$[*]" != "X conftest.file $srcdir/configure"; then
-
-      # If neither matched, then we have a broken ls.  This can happen
-      # if, for instance, CONFIG_SHELL is bash and it inherits a
-      # broken ls alias from the environment.  This has actually
-      # happened.  Such a system could not be considered "sane".
-      AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
-alias in your environment])
-   fi
-
-   test "$[2]" = conftest.file
-   )
-then
-   # Ok.
-   :
-else
-   AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-AC_MSG_RESULT(yes)])
-
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# AM_PROG_INSTALL_STRIP
-# ---------------------
-# One issue with vendor `install' (even GNU) is that you can't
-# specify the program used to strip binaries.  This is especially
-# annoying in cross-compiling environments, where the build's strip
-# is unlikely to handle the host's binaries.
-# Fortunately install-sh will honor a STRIPPROG variable, so we
-# always use install-sh in `make install-strip', and initialize
-# STRIPPROG with the value of the STRIP variable (set by the user).
-AC_DEFUN([AM_PROG_INSTALL_STRIP],
-[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'.  However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
-if test "$cross_compiling" != no; then
-  AC_CHECK_TOOL([STRIP], [strip], :)
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-AC_SUBST([INSTALL_STRIP_PROGRAM])])
-
-# Copyright (C) 2006, 2008  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 2
-
-# _AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
-# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
-# This macro is traced by Automake.
-AC_DEFUN([_AM_SUBST_NOTMAKE])
-
-# AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
-# Public sister of _AM_SUBST_NOTMAKE.
-AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
-
-# Check how to create a tarball.                            -*- Autoconf -*-
-
-# Copyright (C) 2004, 2005  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 2
-
-# _AM_PROG_TAR(FORMAT)
-# --------------------
-# Check how to create a tarball in format FORMAT.
-# FORMAT should be one of `v7', `ustar', or `pax'.
-#
-# Substitute a variable $(am__tar) that is a command
-# writing to stdout a FORMAT-tarball containing the directory
-# $tardir.
-#     tardir=directory && $(am__tar) > result.tar
-#
-# Substitute a variable $(am__untar) that extract such
-# a tarball read from stdin.
-#     $(am__untar) < result.tar
-AC_DEFUN([_AM_PROG_TAR],
-[# Always define AMTAR for backward compatibility.
-AM_MISSING_PROG([AMTAR], [tar])
-m4_if([$1], [v7],
-     [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
-     [m4_case([$1], [ustar],, [pax],,
-              [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
-_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of `-'.
-for _am_tool in $_am_tools
-do
-  case $_am_tool in
-  gnutar)
-    for _am_tar in tar gnutar gtar;
-    do
-      AM_RUN_LOG([$_am_tar --version]) && break
-    done
-    am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
-    am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
-    am__untar="$_am_tar -xf -"
-    ;;
-  plaintar)
-    # Must skip GNU tar: if it does not support --format= it doesn't create
-    # ustar tarball either.
-    (tar --version) >/dev/null 2>&1 && continue
-    am__tar='tar chf - "$$tardir"'
-    am__tar_='tar chf - "$tardir"'
-    am__untar='tar xf -'
-    ;;
-  pax)
-    am__tar='pax -L -x $1 -w "$$tardir"'
-    am__tar_='pax -L -x $1 -w "$tardir"'
-    am__untar='pax -r'
-    ;;
-  cpio)
-    am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
-    am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
-    am__untar='cpio -i -H $1 -d'
-    ;;
-  none)
-    am__tar=false
-    am__tar_=false
-    am__untar=false
-    ;;
-  esac
-
-  # If the value was cached, stop now.  We just wanted to have am__tar
-  # and am__untar set.
-  test -n "${am_cv_prog_tar_$1}" && break
-
-  # tar/untar a dummy directory, and stop if the command works
-  rm -rf conftest.dir
-  mkdir conftest.dir
-  echo GrepMe > conftest.dir/file
-  AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
-  rm -rf conftest.dir
-  if test -s conftest.tar; then
-    AM_RUN_LOG([$am__untar <conftest.tar])
-    grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
-  fi
-done
-rm -rf conftest.dir
-
-AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-AC_MSG_RESULT([$am_cv_prog_tar_$1])])
-AC_SUBST([am__tar])
-AC_SUBST([am__untar])
-]) # _AM_PROG_TAR
-
-m4_include([m4/cares-compilers.m4])
-m4_include([m4/cares-confopts.m4])
-m4_include([m4/cares-functions.m4])
-m4_include([m4/cares-override.m4])
-m4_include([m4/cares-reentrant.m4])
-m4_include([m4/cares-system.m4])
-m4_include([m4/libtool.m4])
-m4_include([m4/ltoptions.m4])
-m4_include([m4/ltsugar.m4])
-m4_include([m4/ltversion.m4])
-m4_include([m4/lt~obsolete.m4])
-m4_include([acinclude.m4])
diff --git a/src/other/ares/acountry.c b/src/other/ares/acountry.c
deleted file mode 100644
index c30e6b7..0000000
--- a/src/other/ares/acountry.c
+++ /dev/null
@@ -1,628 +0,0 @@
-/*
- * $Id$
- *
- * IP-address/hostname to country converter.
- *
- * Problem; you want to know where IP a.b.c.d is located.
- *
- * Use ares_gethostbyname ("d.c.b.a.zz.countries.nerd.dk")
- * and get the CNAME (host->h_name). Result will be:
- *   CNAME = zz<CC>.countries.nerd.dk with address 127.0.x.y (ver 1) or
- *   CNAME = <a.b.c.d>.zz.countries.nerd.dk with address 127.0.x.y (ver 2)
- *
- * The 2 letter country code is in <CC> and the ISO-3166 country
- * number is in x.y (number = x*256 + y). Version 2 of the protocol is missing
- * the <CC> number.
- *
- * Ref: http://countries.nerd.dk/more.html
- *
- * Written by G. Vanem <gvanem at broadpark.no> 2006, 2007
- *
- * NB! This program may not be big-endian aware.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <ctype.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_STRINGS_H
-#include <strings.h>
-#endif
-
-#if defined(WIN32) && !defined(WATT32)
-  #include <winsock.h>
-#else
-  #include <sys/socket.h>
-  #include <arpa/inet.h>
-  #include <netinet/in.h>
-  #include <netdb.h>
-#endif
-
-#include "ares.h"
-#include "ares_getopt.h"
-#include "inet_net_pton.h"
-#include "inet_ntop.h"
-
-#ifndef HAVE_STRDUP
-#  include "ares_strdup.h"
-#  define strdup(ptr) ares_strdup(ptr)
-#endif
-
-#ifndef HAVE_STRCASECMP
-#  include "ares_strcasecmp.h"
-#  define strcasecmp(p1,p2) ares_strcasecmp(p1,p2)
-#endif
-
-#ifndef HAVE_STRNCASECMP
-#  include "ares_strcasecmp.h"
-#  define strncasecmp(p1,p2,n) ares_strncasecmp(p1,p2,n)
-#endif
-
-#ifndef INADDR_NONE
-#define INADDR_NONE 0xffffffff
-#endif
-
-static const char *usage      = "acountry [-vh?] {host|addr} ...\n";
-static const char  nerd_fmt[] = "%u.%u.%u.%u.zz.countries.nerd.dk";
-static const char *nerd_ver1  = nerd_fmt + 14;
-static const char *nerd_ver2  = nerd_fmt + 11;
-static int         verbose    = 0;
-
-#define TRACE(fmt) do {               \
-                     if (verbose > 0) \
-                       printf fmt ;   \
-                   } while (0)
-
-static void wait_ares(ares_channel channel);
-static void callback(void *arg, int status, int timeouts, struct hostent *host);
-static void callback2(void *arg, int status, int timeouts, struct hostent *host);
-static void find_country_from_cname(const char *cname, struct in_addr addr);
-
-static void Abort(const char *fmt, ...)
-{
-  va_list args;
-  va_start(args, fmt);
-  vfprintf(stderr, fmt, args);
-  va_end(args);
-  exit(1);
-}
-
-int main(int argc, char **argv)
-{
-  ares_channel channel;
-  int    ch, status;
-
-#if defined(WIN32) && !defined(WATT32)
-  WORD wVersionRequested = MAKEWORD(USE_WINSOCK,USE_WINSOCK);
-  WSADATA wsaData;
-  WSAStartup(wVersionRequested, &wsaData);
-#endif
-
-  status = ares_library_init(ARES_LIB_INIT_ALL);
-  if (status != ARES_SUCCESS)
-    {
-      fprintf(stderr, "ares_library_init: %s\n", ares_strerror(status));
-      return 1;
-    }
-
-  while ((ch = ares_getopt(argc, argv, "dvh?")) != -1)
-    switch (ch)
-      {
-      case 'd':
-#ifdef WATT32
-        dbug_init();
-#endif
-        break;
-      case 'v':
-        verbose++;
-        break;
-      case 'h':
-      case '?':
-      default:
-        Abort(usage);
-      }
-
-  argc -= optind;
-  argv += optind;
-  if (argc < 1)
-     Abort(usage);
-
-  status = ares_init(&channel);
-  if (status != ARES_SUCCESS)
-    {
-      fprintf(stderr, "ares_init: %s\n", ares_strerror(status));
-      return 1;
-    }
-
-  /* Initiate the queries, one per command-line argument. */
-  for ( ; *argv; argv++)
-    {
-      struct in_addr addr;
-      char buf[100];
-
-      /* If this fails, assume '*argv' is a host-name that
-       * must be resolved first
-       */
-      if (ares_inet_pton(AF_INET, *argv, &addr) != 1)
-        {
-          ares_gethostbyname(channel, *argv, AF_INET, callback2, &addr);
-          wait_ares(channel);
-          if (addr.s_addr == INADDR_NONE)
-            {
-              printf("Failed to lookup %s\n", *argv);
-              continue;
-            }
-        }
-
-      sprintf(buf, nerd_fmt,
-              (unsigned int)(addr.s_addr >> 24),
-              (unsigned int)((addr.s_addr >> 16) & 255),
-              (unsigned int)((addr.s_addr >> 8) & 255),
-              (unsigned int)(addr.s_addr & 255));
-      TRACE(("Looking up %s...", buf));
-      fflush(stdout);
-      ares_gethostbyname(channel, buf, AF_INET, callback, buf);
-    }
-
-  wait_ares(channel);
-  ares_destroy(channel);
-
-  ares_library_cleanup();
-
-#if defined(WIN32) && !defined(WATT32)
-  WSACleanup();
-#endif
-
-  return 0;
-}
-
-/*
- * Wait for the queries to complete.
- */
-static void wait_ares(ares_channel channel)
-{
-  for (;;)
-    {
-      struct timeval *tvp, tv;
-      fd_set read_fds, write_fds;
-      int nfds;
-
-      FD_ZERO(&read_fds);
-      FD_ZERO(&write_fds);
-      nfds = ares_fds(channel, &read_fds, &write_fds);
-      if (nfds == 0)
-        break;
-      tvp = ares_timeout(channel, NULL, &tv);
-      select(nfds, &read_fds, &write_fds, NULL, tvp);
-      ares_process(channel, &read_fds, &write_fds);
-    }
-}
-
-/*
- * This is the callback used when we have the IP-address of interest.
- * Extract the CNAME and figure out the country-code from it.
- */
-static void callback(void *arg, int status, int timeouts, struct hostent *host)
-{
-  const char *name = (const char*)arg;
-  const char *cname;
-  char buf[20];
-
-  (void)timeouts;
-
-  if (!host || status != ARES_SUCCESS)
-    {
-      printf("Failed to lookup %s: %s\n", name, ares_strerror(status));
-      return;
-    }
-
-  TRACE(("\nFound address %s, name %s\n",
-         ares_inet_ntop(AF_INET,(const char*)host->h_addr,buf,sizeof(buf)),
-         host->h_name));
-
-  cname = host->h_name;  /* CNAME gets put here */
-  if (!cname)
-    printf("Failed to get CNAME for %s\n", name);
-  else
-    find_country_from_cname(cname, *(struct in_addr*)host->h_addr);
-}
-
-/*
- * This is the callback used to obtain the IP-address of the host of interest.
- */
-static void callback2(void *arg, int status, int timeouts, struct hostent *host)
-{
-  struct in_addr *addr = (struct in_addr*) arg;
-
-  (void)timeouts;
-  if (!host || status != ARES_SUCCESS)
-    memset(addr, INADDR_NONE, sizeof(*addr));
-  else
-    memcpy(addr, host->h_addr, sizeof(*addr));
-}
-
-struct search_list {
-       int         country_number; /* ISO-3166 country number */
-       char        short_name[3];  /* A2 short country code */
-       const char *long_name;      /* normal country name */
-     };
-
-static const struct search_list *list_lookup(int number, const struct search_list *list, int num)
-{
-  while (num > 0 && list->long_name)
-    {
-      if (list->country_number == number)
-        return (list);
-      num--;
-      list++;
-    }
-  return (NULL);
-}
-
-/*
- * Ref: ftp://ftp.ripe.net/iso3166-countrycodes.txt
- */
-static const struct search_list country_list[] = {
-       {   4, "af", "Afghanistan"                          },
-       { 248, "ax", "Åland Island"                         },
-       {   8, "al", "Albania"                              },
-       {  12, "dz", "Algeria"                              },
-       {  16, "as", "American Samoa"                       },
-       {  20, "ad", "Andorra"                              },
-       {  24, "ao", "Angola"                               },
-       { 660, "ai", "Anguilla"                             },
-       {  10, "aq", "Antarctica"                           },
-       {  28, "ag", "Antigua & Barbuda"                    },
-       {  32, "ar", "Argentina"                            },
-       {  51, "am", "Armenia"                              },
-       { 533, "aw", "Aruba"                                },
-       {  36, "au", "Australia"                            },
-       {  40, "at", "Austria"                              },
-       {  31, "az", "Azerbaijan"                           },
-       {  44, "bs", "Bahamas"                              },
-       {  48, "bh", "Bahrain"                              },
-       {  50, "bd", "Bangladesh"                           },
-       {  52, "bb", "Barbados"                             },
-       { 112, "by", "Belarus"                              },
-       {  56, "be", "Belgium"                              },
-       {  84, "bz", "Belize"                               },
-       { 204, "bj", "Benin"                                },
-       {  60, "bm", "Bermuda"                              },
-       {  64, "bt", "Bhutan"                               },
-       {  68, "bo", "Bolivia"                              },
-       {  70, "ba", "Bosnia & Herzegowina"                 },
-       {  72, "bw", "Botswana"                             },
-       {  74, "bv", "Bouvet Island"                        },
-       {  76, "br", "Brazil"                               },
-       {  86, "io", "British Indian Ocean Territory"       },
-       {  96, "bn", "Brunei Darussalam"                    },
-       { 100, "bg", "Bulgaria"                             },
-       { 854, "bf", "Burkina Faso"                         },
-       { 108, "bi", "Burundi"                              },
-       { 116, "kh", "Cambodia"                             },
-       { 120, "cm", "Cameroon"                             },
-       { 124, "ca", "Canada"                               },
-       { 132, "cv", "Cape Verde"                           },
-       { 136, "ky", "Cayman Islands"                       },
-       { 140, "cf", "Central African Republic"             },
-       { 148, "td", "Chad"                                 },
-       { 152, "cl", "Chile"                                },
-       { 156, "cn", "China"                                },
-       { 162, "cx", "Christmas Island"                     },
-       { 166, "cc", "Cocos Islands"                        },
-       { 170, "co", "Colombia"                             },
-       { 174, "km", "Comoros"                              },
-       { 178, "cg", "Congo"                                },
-       { 180, "cd", "Congo"                                },
-       { 184, "ck", "Cook Islands"                         },
-       { 188, "cr", "Costa Rica"                           },
-       { 384, "ci", "Cote d'Ivoire"                        },
-       { 191, "hr", "Croatia"                              },
-       { 192, "cu", "Cuba"                                 },
-       { 196, "cy", "Cyprus"                               },
-       { 203, "cz", "Czech Republic"                       },
-       { 208, "dk", "Denmark"                              },
-       { 262, "dj", "Djibouti"                             },
-       { 212, "dm", "Dominica"                             },
-       { 214, "do", "Dominican Republic"                   },
-       { 218, "ec", "Ecuador"                              },
-       { 818, "eg", "Egypt"                                },
-       { 222, "sv", "El Salvador"                          },
-       { 226, "gq", "Equatorial Guinea"                    },
-       { 232, "er", "Eritrea"                              },
-       { 233, "ee", "Estonia"                              },
-       { 231, "et", "Ethiopia"                             },
-       { 238, "fk", "Falkland Islands"                     },
-       { 234, "fo", "Faroe Islands"                        },
-       { 242, "fj", "Fiji"                                 },
-       { 246, "fi", "Finland"                              },
-       { 250, "fr", "France"                               },
-       { 249, "fx", "France, Metropolitan"                 },
-       { 254, "gf", "French Guiana"                        },
-       { 258, "pf", "French Polynesia"                     },
-       { 260, "tf", "French Southern Territories"          },
-       { 266, "ga", "Gabon"                                },
-       { 270, "gm", "Gambia"                               },
-       { 268, "ge", "Georgia"                              },
-       { 276, "de", "Germany"                              },
-       { 288, "gh", "Ghana"                                },
-       { 292, "gi", "Gibraltar"                            },
-       { 300, "gr", "Greece"                               },
-       { 304, "gl", "Greenland"                            },
-       { 308, "gd", "Grenada"                              },
-       { 312, "gp", "Guadeloupe"                           },
-       { 316, "gu", "Guam"                                 },
-       { 320, "gt", "Guatemala"                            },
-       { 324, "gn", "Guinea"                               },
-       { 624, "gw", "Guinea-Bissau"                        },
-       { 328, "gy", "Guyana"                               },
-       { 332, "ht", "Haiti"                                },
-       { 334, "hm", "Heard & Mc Donald Islands"            },
-       { 336, "va", "Vatican City"                         },
-       { 340, "hn", "Honduras"                             },
-       { 344, "hk", "Hong kong"                            },
-       { 348, "hu", "Hungary"                              },
-       { 352, "is", "Iceland"                              },
-       { 356, "in", "India"                                },
-       { 360, "id", "Indonesia"                            },
-       { 364, "ir", "Iran"                                 },
-       { 368, "iq", "Iraq"                                 },
-       { 372, "ie", "Ireland"                              },
-       { 376, "il", "Israel"                               },
-       { 380, "it", "Italy"                                },
-       { 388, "jm", "Jamaica"                              },
-       { 392, "jp", "Japan"                                },
-       { 400, "jo", "Jordan"                               },
-       { 398, "kz", "Kazakhstan"                           },
-       { 404, "ke", "Kenya"                                },
-       { 296, "ki", "Kiribati"                             },
-       { 408, "kp", "Korea (north)"                        },
-       { 410, "kr", "Korea (south)"                        },
-       { 414, "kw", "Kuwait"                               },
-       { 417, "kg", "Kyrgyzstan"                           },
-       { 418, "la", "Laos"                                 },
-       { 428, "lv", "Latvia"                               },
-       { 422, "lb", "Lebanon"                              },
-       { 426, "ls", "Lesotho"                              },
-       { 430, "lr", "Liberia"                              },
-       { 434, "ly", "Libya"                                },
-       { 438, "li", "Liechtenstein"                        },
-       { 440, "lt", "Lithuania"                            },
-       { 442, "lu", "Luxembourg"                           },
-       { 446, "mo", "Macao"                                },
-       { 807, "mk", "Macedonia"                            },
-       { 450, "mg", "Madagascar"                           },
-       { 454, "mw", "Malawi"                               },
-       { 458, "my", "Malaysia"                             },
-       { 462, "mv", "Maldives"                             },
-       { 466, "ml", "Mali"                                 },
-       { 470, "mt", "Malta"                                },
-       { 584, "mh", "Marshall Islands"                     },
-       { 474, "mq", "Martinique"                           },
-       { 478, "mr", "Mauritania"                           },
-       { 480, "mu", "Mauritius"                            },
-       { 175, "yt", "Mayotte"                              },
-       { 484, "mx", "Mexico"                               },
-       { 583, "fm", "Micronesia"                           },
-       { 498, "md", "Moldova"                              },
-       { 492, "mc", "Monaco"                               },
-       { 496, "mn", "Mongolia"                             },
-       { 500, "ms", "Montserrat"                           },
-       { 504, "ma", "Morocco"                              },
-       { 508, "mz", "Mozambique"                           },
-       { 104, "mm", "Myanmar"                              },
-       { 516, "na", "Namibia"                              },
-       { 520, "nr", "Nauru"                                },
-       { 524, "np", "Nepal"                                },
-       { 528, "nl", "Netherlands"                          },
-       { 530, "an", "Netherlands Antilles"                 },
-       { 540, "nc", "New Caledonia"                        },
-       { 554, "nz", "New Zealand"                          },
-       { 558, "ni", "Nicaragua"                            },
-       { 562, "ne", "Niger"                                },
-       { 566, "ng", "Nigeria"                              },
-       { 570, "nu", "Niue"                                 },
-       { 574, "nf", "Norfolk Island"                       },
-       { 580, "mp", "Northern Mariana Islands"             },
-       { 578, "no", "Norway"                               },
-       { 512, "om", "Oman"                                 },
-       { 586, "pk", "Pakistan"                             },
-       { 585, "pw", "Palau"                                },
-       { 275, "ps", "Palestinian Territory"                },
-       { 591, "pa", "Panama"                               },
-       { 598, "pg", "Papua New Guinea"                     },
-       { 600, "py", "Paraguay"                             },
-       { 604, "pe", "Peru"                                 },
-       { 608, "ph", "Philippines"                          },
-       { 612, "pn", "Pitcairn"                             },
-       { 616, "pl", "Poland"                               },
-       { 620, "pt", "Portugal"                             },
-       { 630, "pr", "Puerto Rico"                          },
-       { 634, "qa", "Qatar"                                },
-       { 638, "re", "Reunion"                              },
-       { 642, "ro", "Romania"                              },
-       { 643, "ru", "Russia"                               },
-       { 646, "rw", "Rwanda"                               },
-       { 659, "kn", "Saint Kitts & Nevis"                  },
-       { 662, "lc", "Saint Lucia"                          },
-       { 670, "vc", "Saint Vincent"                        },
-       { 882, "ws", "Samoa"                                },
-       { 674, "sm", "San Marino"                           },
-       { 678, "st", "Sao Tome & Principe"                  },
-       { 682, "sa", "Saudi Arabia"                         },
-       { 686, "sn", "Senegal"                              },
-       { 891, "cs", "Serbia and Montenegro"                },
-       { 690, "sc", "Seychelles"                           },
-       { 694, "sl", "Sierra Leone"                         },
-       { 702, "sg", "Singapore"                            },
-       { 703, "sk", "Slovakia"                             },
-       { 705, "si", "Slovenia"                             },
-       {  90, "sb", "Solomon Islands"                      },
-       { 706, "so", "Somalia"                              },
-       { 710, "za", "South Africa"                         },
-       { 239, "gs", "South Georgia"                        },
-       { 724, "es", "Spain"                                },
-       { 144, "lk", "Sri Lanka"                            },
-       { 654, "sh", "St. Helena"                           },
-       { 666, "pm", "St. Pierre & Miquelon"                },
-       { 736, "sd", "Sudan"                                },
-       { 740, "sr", "Suriname"                             },
-       { 744, "sj", "Svalbard & Jan Mayen Islands"         },
-       { 748, "sz", "Swaziland"                            },
-       { 752, "se", "Sweden"                               },
-       { 756, "ch", "Switzerland"                          },
-       { 760, "sy", "Syrian Arab Republic"                 },
-       { 626, "tl", "Timor-Leste"                          },
-       { 158, "tw", "Taiwan"                               },
-       { 762, "tj", "Tajikistan"                           },
-       { 834, "tz", "Tanzania"                             },
-       { 764, "th", "Thailand"                             },
-       { 768, "tg", "Togo"                                 },
-       { 772, "tk", "Tokelau"                              },
-       { 776, "to", "Tonga"                                },
-       { 780, "tt", "Trinidad & Tobago"                    },
-       { 788, "tn", "Tunisia"                              },
-       { 792, "tr", "Turkey"                               },
-       { 795, "tm", "Turkmenistan"                         },
-       { 796, "tc", "Turks & Caicos Islands"               },
-       { 798, "tv", "Tuvalu"                               },
-       { 800, "ug", "Uganda"                               },
-       { 804, "ua", "Ukraine"                              },
-       { 784, "ae", "United Arab Emirates"                 },
-       { 826, "gb", "United Kingdom"                       },
-       { 840, "us", "United States"                        },
-       { 581, "um", "United States Minor Outlying Islands" },
-       { 858, "uy", "Uruguay"                              },
-       { 860, "uz", "Uzbekistan"                           },
-       { 548, "vu", "Vanuatu"                              },
-       { 862, "ve", "Venezuela"                            },
-       { 704, "vn", "Vietnam"                              },
-       {  92, "vg", "Virgin Islands (British)"             },
-       { 850, "vi", "Virgin Islands (US)"                  },
-       { 876, "wf", "Wallis & Futuna Islands"              },
-       { 732, "eh", "Western Sahara"                       },
-       { 887, "ye", "Yemen"                                },
-       { 894, "zm", "Zambia"                               },
-       { 716, "zw", "Zimbabwe"                             }
-     };
-
-/*
- * Check if start of 'str' is simply an IPv4 address.
- */
-#define BYTE_OK(x) ((x) >= 0 && (x) <= 255)
-
-static int is_addr(char *str, char **end)
-{
-  int a0, a1, a2, a3, num, rc = 0, length = 0;
-
-  num = sscanf(str,"%3d.%3d.%3d.%3d%n",&a0,&a1,&a2,&a3,&length);
-  if( (num == 4) &&
-      BYTE_OK(a0) && BYTE_OK(a1) && BYTE_OK(a2) && BYTE_OK(a3) &&
-      length >= (3+4))
-    {
-      rc = 1;
-      *end = str + length;
-    }
-  return rc;
-}
-
-/*
- * Find the country-code and name from the CNAME. E.g.:
- *   version 1: CNAME = zzno.countries.nerd.dk with address 127.0.2.66
- *              yields ccode_A" = "no" and cnumber 578 (2.66).
- *   version 2: CNAME = <a.b.c.d>.zz.countries.nerd.dk with address 127.0.2.66
- *              yields cnumber 578 (2.66). ccode_A is "";
- */
-static void find_country_from_cname(const char *cname, struct in_addr addr)
-{
-  const struct search_list *country;
-  char  ccode_A2[3], *ccopy, *dot_4;
-  int   cnumber, z0, z1, ver_1, ver_2;
-  unsigned long ip;
-
-  ip = ntohl(addr.s_addr);
-  z0 = tolower(cname[0]);
-  z1 = tolower(cname[1]);
-  ccopy = strdup(cname);
-  dot_4 = NULL;
-
-  ver_1 = (z0 == 'z' && z1 == 'z' && !strcasecmp(cname+4,nerd_ver1));
-  ver_2 = (is_addr(ccopy,&dot_4) && !strcasecmp(dot_4,nerd_ver2));
-
-  if (ver_1)
-    {
-      const char *dot = strchr(cname, '.');
-      if ((z0 != 'z' && z1 != 'z') || dot != cname+4)
-        {
-          printf("Unexpected CNAME %s (ver_1)\n", cname);
-          return;
-        }
-    }
-  else if (ver_2)
-    {
-      z0 = tolower(dot_4[1]);
-      z1 = tolower(dot_4[2]);
-      if (z0 != 'z' && z1 != 'z')
-        {
-          printf("Unexpected CNAME %s (ver_2)\n", cname);
-          return;
-        }
-    }
-  else
-    {
-      printf("Unexpected CNAME %s (ver?)\n", cname);
-      return;
-    }
-
-  if (ver_1)
-    {
-      ccode_A2[0] = (char)tolower(cname[2]);
-      ccode_A2[1] = (char)tolower(cname[3]);
-      ccode_A2[2] = '\0';
-    }
-  else
-    ccode_A2[0] = '\0';
-
-  cnumber = ip & 0xFFFF;
-
-  TRACE(("Found country-code `%s', number %d\n",
-         ver_1 ? ccode_A2 : "<n/a>", cnumber));
-
-  country = list_lookup(cnumber, country_list,
-                        sizeof(country_list) / sizeof(country_list[0]));
-  if (!country)
-    printf("Name for country-number %d not found.\n", cnumber);
-  else
-    {
-      if (ver_1)
-        {
-          if ((country->short_name[0] != ccode_A2[0]) ||
-              (country->short_name[1] != ccode_A2[1]) ||
-              (country->short_name[2] != ccode_A2[2]))
-            printf("short-name mismatch; %s vs %s\n",
-                   country->short_name, ccode_A2);
-        }
-      printf("%s (%s), number %d.\n",
-             country->long_name, country->short_name, cnumber);
-    }
-  free(ccopy);
-}
-
diff --git a/src/other/ares/adig.c b/src/other/ares/adig.c
deleted file mode 100644
index 4e33f6c..0000000
--- a/src/other/ares/adig.c
+++ /dev/null
@@ -1,820 +0,0 @@
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * $Id$
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#ifdef HAVE_SYS_TIME_H
-#  include <sys/time.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_STRINGS_H
-#  include <strings.h>
-#endif
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-#include <errno.h>
-
-#include "ares.h"
-#include "ares_dns.h"
-#include "inet_ntop.h"
-#include "inet_net_pton.h"
-#include "ares_getopt.h"
-
-#ifndef HAVE_STRDUP
-#  include "ares_strdup.h"
-#  define strdup(ptr) ares_strdup(ptr)
-#endif
-
-#ifndef HAVE_STRCASECMP
-#  include "ares_strcasecmp.h"
-#  define strcasecmp(p1,p2) ares_strcasecmp(p1,p2)
-#endif
-
-#ifndef HAVE_STRNCASECMP
-#  include "ares_strcasecmp.h"
-#  define strncasecmp(p1,p2,n) ares_strncasecmp(p1,p2,n)
-#endif
-
-#ifdef WATT32
-#undef WIN32  /* Redefined in MingW headers */
-#endif
-
-/* Mac OS X portability check */
-#ifndef T_SRV
-#define T_SRV 33 /* server selection */
-#endif
-
-/* AIX portability check */
-#ifndef T_NAPTR
-#define T_NAPTR 35 /* naming authority pointer */
-#endif
-
-struct nv {
-  const char *name;
-  int value;
-};
-
-static const struct nv flags[] = {
-  { "usevc",            ARES_FLAG_USEVC },
-  { "primary",          ARES_FLAG_PRIMARY },
-  { "igntc",            ARES_FLAG_IGNTC },
-  { "norecurse",        ARES_FLAG_NORECURSE },
-  { "stayopen",         ARES_FLAG_STAYOPEN },
-  { "noaliases",        ARES_FLAG_NOALIASES }
-};
-static const int nflags = sizeof(flags) / sizeof(flags[0]);
-
-static const struct nv classes[] = {
-  { "IN",       C_IN },
-  { "CHAOS",    C_CHAOS },
-  { "HS",       C_HS },
-  { "ANY",      C_ANY }
-};
-static const int nclasses = sizeof(classes) / sizeof(classes[0]);
-
-static const struct nv types[] = {
-  { "A",        T_A },
-  { "NS",       T_NS },
-  { "MD",       T_MD },
-  { "MF",       T_MF },
-  { "CNAME",    T_CNAME },
-  { "SOA",      T_SOA },
-  { "MB",       T_MB },
-  { "MG",       T_MG },
-  { "MR",       T_MR },
-  { "NULL",     T_NULL },
-  { "WKS",      T_WKS },
-  { "PTR",      T_PTR },
-  { "HINFO",    T_HINFO },
-  { "MINFO",    T_MINFO },
-  { "MX",       T_MX },
-  { "TXT",      T_TXT },
-  { "RP",       T_RP },
-  { "AFSDB",    T_AFSDB },
-  { "X25",      T_X25 },
-  { "ISDN",     T_ISDN },
-  { "RT",       T_RT },
-  { "NSAP",     T_NSAP },
-  { "NSAP_PTR", T_NSAP_PTR },
-  { "SIG",      T_SIG },
-  { "KEY",      T_KEY },
-  { "PX",       T_PX },
-  { "GPOS",     T_GPOS },
-  { "AAAA",     T_AAAA },
-  { "LOC",      T_LOC },
-  { "SRV",      T_SRV },
-  { "AXFR",     T_AXFR },
-  { "MAILB",    T_MAILB },
-  { "MAILA",    T_MAILA },
-  { "NAPTR",    T_NAPTR },
-  { "ANY",      T_ANY }
-};
-static const int ntypes = sizeof(types) / sizeof(types[0]);
-
-static const char *opcodes[] = {
-  "QUERY", "IQUERY", "STATUS", "(reserved)", "NOTIFY",
-  "(unknown)", "(unknown)", "(unknown)", "(unknown)",
-  "UPDATEA", "UPDATED", "UPDATEDA", "UPDATEM", "UPDATEMA",
-  "ZONEINIT", "ZONEREF"
-};
-
-static const char *rcodes[] = {
-  "NOERROR", "FORMERR", "SERVFAIL", "NXDOMAIN", "NOTIMP", "REFUSED",
-  "(unknown)", "(unknown)", "(unknown)", "(unknown)", "(unknown)",
-  "(unknown)", "(unknown)", "(unknown)", "(unknown)", "NOCHANGE"
-};
-
-static void callback(void *arg, int status, int timeouts,
-                     unsigned char *abuf, int alen);
-static const unsigned char *display_question(const unsigned char *aptr,
-                                             const unsigned char *abuf,
-                                             int alen);
-static const unsigned char *display_rr(const unsigned char *aptr,
-                                       const unsigned char *abuf, int alen);
-static const char *type_name(int type);
-static const char *class_name(int dnsclass);
-static void usage(void);
-static void destroy_addr_list(struct ares_addr_node *head);
-static void append_addr_list(struct ares_addr_node **head,
-                             struct ares_addr_node *node);
-
-int main(int argc, char **argv)
-{
-  ares_channel channel;
-  int c, i, optmask = ARES_OPT_FLAGS, dnsclass = C_IN, type = T_A;
-  int status, nfds, count;
-  struct ares_options options;
-  struct hostent *hostent;
-  fd_set read_fds, write_fds;
-  struct timeval *tvp, tv;
-  struct ares_addr_node *srvr, *servers = NULL;
-
-#ifdef USE_WINSOCK
-  WORD wVersionRequested = MAKEWORD(USE_WINSOCK,USE_WINSOCK);
-  WSADATA wsaData;
-  WSAStartup(wVersionRequested, &wsaData);
-#endif
-
-  status = ares_library_init(ARES_LIB_INIT_ALL);
-  if (status != ARES_SUCCESS)
-    {
-      fprintf(stderr, "ares_library_init: %s\n", ares_strerror(status));
-      return 1;
-    }
-
-  options.flags = ARES_FLAG_NOCHECKRESP;
-  options.servers = NULL;
-  options.nservers = 0;
-  while ((c = ares_getopt(argc, argv, "df:s:c:t:T:U:")) != -1)
-    {
-      switch (c)
-        {
-        case 'd':
-#ifdef WATT32
-          dbug_init();
-#endif
-          break;
-
-        case 'f':
-          /* Add a flag. */
-          for (i = 0; i < nflags; i++)
-            {
-              if (strcmp(flags[i].name, optarg) == 0)
-                break;
-            }
-          if (i < nflags)
-            options.flags |= flags[i].value;
-          else
-            usage();
-          break;
-
-        case 's':
-          /* User specified name servers override default ones. */
-          srvr = malloc(sizeof(struct ares_addr_node));
-          if (!srvr)
-            {
-              fprintf(stderr, "Out of memory!\n");
-              destroy_addr_list(servers);
-              return 1;
-            }
-          append_addr_list(&servers, srvr);
-          if (ares_inet_pton(AF_INET, optarg, &srvr->addr.addr4) > 0)
-            srvr->family = AF_INET;
-          else if (ares_inet_pton(AF_INET6, optarg, &srvr->addr.addr6) > 0)
-            srvr->family = AF_INET6;
-          else
-            {
-              hostent = gethostbyname(optarg);
-              if (!hostent)
-                {
-                  fprintf(stderr, "adig: server %s not found.\n", optarg);
-                  destroy_addr_list(servers);
-                  return 1;
-                }
-              switch (hostent->h_addrtype)
-                {
-                  case AF_INET:
-                    srvr->family = AF_INET;
-                    memcpy(&srvr->addr.addr4, hostent->h_addr,
-                           sizeof(srvr->addr.addr4));
-                    break;
-                  case AF_INET6:
-                    srvr->family = AF_INET6;
-                    memcpy(&srvr->addr.addr6, hostent->h_addr,
-                           sizeof(srvr->addr.addr6));
-                    break;
-                  default:
-                    fprintf(stderr,
-                      "adig: server %s unsupported address family.\n", optarg);
-                    destroy_addr_list(servers);
-                    return 1;
-                }
-            }
-          /* Notice that calling ares_init_options() without servers in the
-           * options struct and with ARES_OPT_SERVERS set simultaneously in
-           * the options mask, results in an initialization with no servers.
-           * When alternative name servers have been specified these are set
-           * later calling ares_set_servers() overriding any existing server
-           * configuration. To prevent initial configuration with default
-           * servers that will be discarded later ARES_OPT_SERVERS is set.
-           * If this flag is not set here the result shall be the same but
-           * ares_init_options() will do needless work. */
-          optmask |= ARES_OPT_SERVERS;
-          break;
-
-        case 'c':
-          /* Set the query class. */
-          for (i = 0; i < nclasses; i++)
-            {
-              if (strcasecmp(classes[i].name, optarg) == 0)
-                break;
-            }
-          if (i < nclasses)
-            dnsclass = classes[i].value;
-          else
-            usage();
-          break;
-
-        case 't':
-          /* Set the query type. */
-          for (i = 0; i < ntypes; i++)
-            {
-              if (strcasecmp(types[i].name, optarg) == 0)
-                break;
-            }
-          if (i < ntypes)
-            type = types[i].value;
-          else
-            usage();
-          break;
-
-        case 'T':
-          /* Set the TCP port number. */
-          if (!ISDIGIT(*optarg))
-            usage();
-          options.tcp_port = (unsigned short)strtol(optarg, NULL, 0);
-          optmask |= ARES_OPT_TCP_PORT;
-          break;
-
-        case 'U':
-          /* Set the UDP port number. */
-          if (!ISDIGIT(*optarg))
-            usage();
-          options.udp_port = (unsigned short)strtol(optarg, NULL, 0);
-          optmask |= ARES_OPT_UDP_PORT;
-          break;
-        }
-    }
-  argc -= optind;
-  argv += optind;
-  if (argc == 0)
-    usage();
-
-  status = ares_init_options(&channel, &options, optmask);
-
-  if (status != ARES_SUCCESS)
-    {
-      fprintf(stderr, "ares_init_options: %s\n",
-              ares_strerror(status));
-      return 1;
-    }
-
-  if(servers)
-    {
-      status = ares_set_servers(channel, servers);
-      destroy_addr_list(servers);
-      if (status != ARES_SUCCESS)
-        {
-          fprintf(stderr, "ares_init_options: %s\n",
-                  ares_strerror(status));
-          return 1;
-        }
-    }
-
-  /* Initiate the queries, one per command-line argument.  If there is
-   * only one query to do, supply NULL as the callback argument;
-   * otherwise, supply the query name as an argument so we can
-   * distinguish responses for the user when printing them out.
-   */
-  if (argc == 1)
-    ares_query(channel, *argv, dnsclass, type, callback, (char *) NULL);
-  else
-    {
-      for (; *argv; argv++)
-        ares_query(channel, *argv, dnsclass, type, callback, *argv);
-    }
-
-  /* Wait for all queries to complete. */
-  for (;;)
-    {
-      FD_ZERO(&read_fds);
-      FD_ZERO(&write_fds);
-      nfds = ares_fds(channel, &read_fds, &write_fds);
-      if (nfds == 0)
-        break;
-      tvp = ares_timeout(channel, NULL, &tv);
-      count = select(nfds, &read_fds, &write_fds, NULL, tvp);
-      if (count < 0 && SOCKERRNO != EINVAL)
-        {
-          perror("select");
-          return 1;
-        }
-      ares_process(channel, &read_fds, &write_fds);
-    }
-
-  ares_destroy(channel);
-
-  ares_library_cleanup();
-
-#ifdef USE_WINSOCK
-  WSACleanup();
-#endif
-
-  return 0;
-}
-
-static void callback(void *arg, int status, int timeouts,
-                     unsigned char *abuf, int alen)
-{
-  char *name = (char *) arg;
-  int id, qr, opcode, aa, tc, rd, ra, rcode;
-  unsigned int qdcount, ancount, nscount, arcount, i;
-  const unsigned char *aptr;
-
-  (void) timeouts;
-
-  /* Display the query name if given. */
-  if (name)
-    printf("Answer for query %s:\n", name);
-
-  /* Display an error message if there was an error, but only stop if
-   * we actually didn't get an answer buffer.
-   */
-  if (status != ARES_SUCCESS)
-    {
-      printf("%s\n", ares_strerror(status));
-      if (!abuf)
-        return;
-    }
-
-  /* Won't happen, but check anyway, for safety. */
-  if (alen < HFIXEDSZ)
-    return;
-
-  /* Parse the answer header. */
-  id = DNS_HEADER_QID(abuf);
-  qr = DNS_HEADER_QR(abuf);
-  opcode = DNS_HEADER_OPCODE(abuf);
-  aa = DNS_HEADER_AA(abuf);
-  tc = DNS_HEADER_TC(abuf);
-  rd = DNS_HEADER_RD(abuf);
-  ra = DNS_HEADER_RA(abuf);
-  rcode = DNS_HEADER_RCODE(abuf);
-  qdcount = DNS_HEADER_QDCOUNT(abuf);
-  ancount = DNS_HEADER_ANCOUNT(abuf);
-  nscount = DNS_HEADER_NSCOUNT(abuf);
-  arcount = DNS_HEADER_ARCOUNT(abuf);
-
-  /* Display the answer header. */
-  printf("id: %d\n", id);
-  printf("flags: %s%s%s%s%s\n",
-         qr ? "qr " : "",
-         aa ? "aa " : "",
-         tc ? "tc " : "",
-         rd ? "rd " : "",
-         ra ? "ra " : "");
-  printf("opcode: %s\n", opcodes[opcode]);
-  printf("rcode: %s\n", rcodes[rcode]);
-
-  /* Display the questions. */
-  printf("Questions:\n");
-  aptr = abuf + HFIXEDSZ;
-  for (i = 0; i < qdcount; i++)
-    {
-      aptr = display_question(aptr, abuf, alen);
-      if (aptr == NULL)
-        return;
-    }
-
-  /* Display the answers. */
-  printf("Answers:\n");
-  for (i = 0; i < ancount; i++)
-    {
-      aptr = display_rr(aptr, abuf, alen);
-      if (aptr == NULL)
-        return;
-    }
-
-  /* Display the NS records. */
-  printf("NS records:\n");
-  for (i = 0; i < nscount; i++)
-    {
-      aptr = display_rr(aptr, abuf, alen);
-      if (aptr == NULL)
-        return;
-    }
-
-  /* Display the additional records. */
-  printf("Additional records:\n");
-  for (i = 0; i < arcount; i++)
-    {
-      aptr = display_rr(aptr, abuf, alen);
-      if (aptr == NULL)
-        return;
-    }
-}
-
-static const unsigned char *display_question(const unsigned char *aptr,
-                                             const unsigned char *abuf,
-                                             int alen)
-{
-  char *name;
-  int type, dnsclass, status;
-  long len;
-
-  /* Parse the question name. */
-  status = ares_expand_name(aptr, abuf, alen, &name, &len);
-  if (status != ARES_SUCCESS)
-    return NULL;
-  aptr += len;
-
-  /* Make sure there's enough data after the name for the fixed part
-   * of the question.
-   */
-  if (aptr + QFIXEDSZ > abuf + alen)
-    {
-      ares_free_string(name);
-      return NULL;
-    }
-
-  /* Parse the question type and class. */
-  type = DNS_QUESTION_TYPE(aptr);
-  dnsclass = DNS_QUESTION_CLASS(aptr);
-  aptr += QFIXEDSZ;
-
-  /* Display the question, in a format sort of similar to how we will
-   * display RRs.
-   */
-  printf("\t%-15s.\t", name);
-  if (dnsclass != C_IN)
-    printf("\t%s", class_name(dnsclass));
-  printf("\t%s\n", type_name(type));
-  ares_free_string(name);
-  return aptr;
-}
-
-static const unsigned char *display_rr(const unsigned char *aptr,
-                                       const unsigned char *abuf, int alen)
-{
-  const unsigned char *p;
-  int type, dnsclass, ttl, dlen, status;
-  long len;
-  char addr[46];
-  union {
-    unsigned char * as_uchar;
-             char * as_char;
-  } name;
-
-  /* Parse the RR name. */
-  status = ares_expand_name(aptr, abuf, alen, &name.as_char, &len);
-  if (status != ARES_SUCCESS)
-    return NULL;
-  aptr += len;
-
-  /* Make sure there is enough data after the RR name for the fixed
-   * part of the RR.
-   */
-  if (aptr + RRFIXEDSZ > abuf + alen)
-    {
-      ares_free_string(name.as_char);
-      return NULL;
-    }
-
-  /* Parse the fixed part of the RR, and advance to the RR data
-   * field. */
-  type = DNS_RR_TYPE(aptr);
-  dnsclass = DNS_RR_CLASS(aptr);
-  ttl = DNS_RR_TTL(aptr);
-  dlen = DNS_RR_LEN(aptr);
-  aptr += RRFIXEDSZ;
-  if (aptr + dlen > abuf + alen)
-    {
-      ares_free_string(name.as_char);
-      return NULL;
-    }
-
-  /* Display the RR name, class, and type. */
-  printf("\t%-15s.\t%d", name.as_char, ttl);
-  if (dnsclass != C_IN)
-    printf("\t%s", class_name(dnsclass));
-  printf("\t%s", type_name(type));
-  ares_free_string(name.as_char);
-
-  /* Display the RR data.  Don't touch aptr. */
-  switch (type)
-    {
-    case T_CNAME:
-    case T_MB:
-    case T_MD:
-    case T_MF:
-    case T_MG:
-    case T_MR:
-    case T_NS:
-    case T_PTR:
-      /* For these types, the RR data is just a domain name. */
-      status = ares_expand_name(aptr, abuf, alen, &name.as_char, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t%s.", name.as_char);
-      ares_free_string(name.as_char);
-      break;
-
-    case T_HINFO:
-      /* The RR data is two length-counted character strings. */
-      p = aptr;
-      len = *p;
-      if (p + len + 1 > aptr + dlen)
-        return NULL;
-      status = ares_expand_string(p, abuf, alen, &name.as_uchar, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t%s", name.as_char);
-      ares_free_string(name.as_char);
-      p += len;
-      len = *p;
-      if (p + len + 1 > aptr + dlen)
-        return NULL;
-      status = ares_expand_string(p, abuf, alen, &name.as_uchar, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t%s", name.as_char);
-      ares_free_string(name.as_char);
-      break;
-
-    case T_MINFO:
-      /* The RR data is two domain names. */
-      p = aptr;
-      status = ares_expand_name(p, abuf, alen, &name.as_char, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t%s.", name.as_char);
-      ares_free_string(name.as_char);
-      p += len;
-      status = ares_expand_name(p, abuf, alen, &name.as_char, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t%s.", name.as_char);
-      ares_free_string(name.as_char);
-      break;
-
-    case T_MX:
-      /* The RR data is two bytes giving a preference ordering, and
-       * then a domain name.
-       */
-      if (dlen < 2)
-        return NULL;
-      printf("\t%d", DNS__16BIT(aptr));
-      status = ares_expand_name(aptr + 2, abuf, alen, &name.as_char, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t%s.", name.as_char);
-      ares_free_string(name.as_char);
-      break;
-
-    case T_SOA:
-      /* The RR data is two domain names and then five four-byte
-       * numbers giving the serial number and some timeouts.
-       */
-      p = aptr;
-      status = ares_expand_name(p, abuf, alen, &name.as_char, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t%s.\n", name.as_char);
-      ares_free_string(name.as_char);
-      p += len;
-      status = ares_expand_name(p, abuf, alen, &name.as_char, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t\t\t\t\t\t%s.\n", name.as_char);
-      ares_free_string(name.as_char);
-      p += len;
-      if (p + 20 > aptr + dlen)
-        return NULL;
-      printf("\t\t\t\t\t\t( %lu %lu %lu %lu %lu )",
-             (unsigned long)DNS__32BIT(p), (unsigned long)DNS__32BIT(p+4),
-             (unsigned long)DNS__32BIT(p+8), (unsigned long)DNS__32BIT(p+12),
-             (unsigned long)DNS__32BIT(p+16));
-      break;
-
-    case T_TXT:
-      /* The RR data is one or more length-counted character
-       * strings. */
-      p = aptr;
-      while (p < aptr + dlen)
-        {
-          len = *p;
-          if (p + len + 1 > aptr + dlen)
-            return NULL;
-          status = ares_expand_string(p, abuf, alen, &name.as_uchar, &len);
-          if (status != ARES_SUCCESS)
-            return NULL;
-          printf("\t%s", name.as_char);
-          ares_free_string(name.as_char);
-          p += len;
-        }
-      break;
-
-    case T_A:
-      /* The RR data is a four-byte Internet address. */
-      if (dlen != 4)
-        return NULL;
-      printf("\t%s", ares_inet_ntop(AF_INET,aptr,addr,sizeof(addr)));
-      break;
-
-    case T_AAAA:
-      /* The RR data is a 16-byte IPv6 address. */
-      if (dlen != 16)
-        return NULL;
-      printf("\t%s", ares_inet_ntop(AF_INET6,aptr,addr,sizeof(addr)));
-      break;
-
-    case T_WKS:
-      /* Not implemented yet */
-      break;
-
-    case T_SRV:
-      /* The RR data is three two-byte numbers representing the
-       * priority, weight, and port, followed by a domain name.
-       */
-
-      printf("\t%d", DNS__16BIT(aptr));
-      printf(" %d", DNS__16BIT(aptr + 2));
-      printf(" %d", DNS__16BIT(aptr + 4));
-
-      status = ares_expand_name(aptr + 6, abuf, alen, &name.as_char, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t%s.", name.as_char);
-      ares_free_string(name.as_char);
-      break;
-
-    case T_NAPTR:
-
-      printf("\t%d", DNS__16BIT(aptr)); /* order */
-      printf(" %d\n", DNS__16BIT(aptr + 2)); /* preference */
-
-      p = aptr + 4;
-      status = ares_expand_string(p, abuf, alen, &name.as_uchar, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t\t\t\t\t\t%s\n", name.as_char);
-      ares_free_string(name.as_char);
-      p += len;
-
-      status = ares_expand_string(p, abuf, alen, &name.as_uchar, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t\t\t\t\t\t%s\n", name.as_char);
-      ares_free_string(name.as_char);
-      p += len;
-
-      status = ares_expand_string(p, abuf, alen, &name.as_uchar, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t\t\t\t\t\t%s\n", name.as_char);
-      ares_free_string(name.as_char);
-      p += len;
-
-      status = ares_expand_string(p, abuf, alen, &name.as_uchar, &len);
-      if (status != ARES_SUCCESS)
-        return NULL;
-      printf("\t\t\t\t\t\t%s", name.as_char);
-      ares_free_string(name.as_char);
-      break;
-
-
-    default:
-      printf("\t[Unknown RR; cannot parse]");
-      break;
-    }
-  printf("\n");
-
-  return aptr + dlen;
-}
-
-static const char *type_name(int type)
-{
-  int i;
-
-  for (i = 0; i < ntypes; i++)
-    {
-      if (types[i].value == type)
-        return types[i].name;
-    }
-  return "(unknown)";
-}
-
-static const char *class_name(int dnsclass)
-{
-  int i;
-
-  for (i = 0; i < nclasses; i++)
-    {
-      if (classes[i].value == dnsclass)
-        return classes[i].name;
-    }
-  return "(unknown)";
-}
-
-static void usage(void)
-{
-  fprintf(stderr, "usage: adig [-f flag] [-s server] [-c class] "
-          "[-t type] [-p port] name ...\n");
-  exit(1);
-}
-
-static void destroy_addr_list(struct ares_addr_node *head)
-{
-  while(head)
-    {
-      struct ares_addr_node *detached = head;
-      head = head->next;
-      free(detached);
-    }
-}
-
-static void append_addr_list(struct ares_addr_node **head,
-                             struct ares_addr_node *node)
-{
-  struct ares_addr_node *last;
-  node->next = NULL;
-  if(*head)
-    {
-      last = *head;
-      while(last->next)
-        last = last->next;
-      last->next = node;
-    }
-  else
-    *head = node;
-}
diff --git a/src/other/ares/ahost.c b/src/other/ares/ahost.c
deleted file mode 100644
index f499306..0000000
--- a/src/other/ares/ahost.c
+++ /dev/null
@@ -1,202 +0,0 @@
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * $Id$
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#if !defined(WIN32) || defined(WATT32)
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-#include <netdb.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#endif
-#ifdef HAVE_STRINGS_H
-#include <strings.h>
-#endif
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "ares.h"
-#include "ares_dns.h"
-#include "inet_ntop.h"
-#include "inet_net_pton.h"
-#include "ares_getopt.h"
-#include "ares_ipv6.h"
-
-#ifndef HAVE_STRDUP
-#  include "ares_strdup.h"
-#  define strdup(ptr) ares_strdup(ptr)
-#endif
-
-#ifndef HAVE_STRCASECMP
-#  include "ares_strcasecmp.h"
-#  define strcasecmp(p1,p2) ares_strcasecmp(p1,p2)
-#endif
-
-#ifndef HAVE_STRNCASECMP
-#  include "ares_strcasecmp.h"
-#  define strncasecmp(p1,p2,n) ares_strncasecmp(p1,p2,n)
-#endif
-
-static void callback(void *arg, int status, int timeouts, struct hostent *host);
-static void usage(void);
-
-int main(int argc, char **argv)
-{
-  ares_channel channel;
-  int status, nfds, c, addr_family = AF_INET;
-  fd_set read_fds, write_fds;
-  struct timeval *tvp, tv;
-  struct in_addr addr4;
-  struct ares_in6_addr addr6;
-
-#ifdef USE_WINSOCK
-  WORD wVersionRequested = MAKEWORD(USE_WINSOCK,USE_WINSOCK);
-  WSADATA wsaData;
-  WSAStartup(wVersionRequested, &wsaData);
-#endif
-
-  status = ares_library_init(ARES_LIB_INIT_ALL);
-  if (status != ARES_SUCCESS)
-    {
-      fprintf(stderr, "ares_library_init: %s\n", ares_strerror(status));
-      return 1;
-    }
-
-  while ((c = ares_getopt(argc,argv,"dt:h")) != -1)
-    {
-      switch (c)
-        {
-        case 'd':
-#ifdef WATT32
-          dbug_init();
-#endif
-          break;
-        case 't':
-          if (!strcasecmp(optarg,"a"))
-            addr_family = AF_INET;
-          else if (!strcasecmp(optarg,"aaaa"))
-            addr_family = AF_INET6;
-          else
-            usage();
-          break;
-        case 'h':
-        default:
-          usage();
-          break;
-        }
-    }
-
-  argc -= optind;
-  argv += optind;
-  if (argc < 1)
-    usage();
-
-  status = ares_init(&channel);
-  if (status != ARES_SUCCESS)
-    {
-      fprintf(stderr, "ares_init: %s\n", ares_strerror(status));
-      return 1;
-    }
-
-  /* Initiate the queries, one per command-line argument. */
-  for ( ; *argv; argv++)
-    {
-      if (ares_inet_pton(AF_INET, *argv, &addr4) == 1)
-        {
-          ares_gethostbyaddr(channel, &addr4, sizeof(addr4), AF_INET, callback,
-                             *argv);
-        }
-      else if (ares_inet_pton(AF_INET6, *argv, &addr6) == 1)
-        {
-          ares_gethostbyaddr(channel, &addr6, sizeof(addr6), AF_INET6, callback,
-                             *argv);
-        }
-      else
-        {
-          ares_gethostbyname(channel, *argv, addr_family, callback, *argv);
-        }
-    }
-
-  /* Wait for all queries to complete. */
-  for (;;)
-    {
-      FD_ZERO(&read_fds);
-      FD_ZERO(&write_fds);
-      nfds = ares_fds(channel, &read_fds, &write_fds);
-      if (nfds == 0)
-        break;
-      tvp = ares_timeout(channel, NULL, &tv);
-      select(nfds, &read_fds, &write_fds, NULL, tvp);
-      ares_process(channel, &read_fds, &write_fds);
-    }
-
-  ares_destroy(channel);
-
-  ares_library_cleanup();
-
-#ifdef USE_WINSOCK
-  WSACleanup();
-#endif
-
-  return 0;
-}
-
-static void callback(void *arg, int status, int timeouts, struct hostent *host)
-{
-  char **p;
-
-  (void)timeouts;
-
-  if (status != ARES_SUCCESS)
-    {
-      fprintf(stderr, "%s: %s\n", (char *) arg, ares_strerror(status));
-      return;
-    }
-
-  for (p = host->h_addr_list; *p; p++)
-    {
-      char addr_buf[46] = "??";
-
-      ares_inet_ntop(host->h_addrtype, *p, addr_buf, sizeof(addr_buf));
-      printf("%-32s\t%s", host->h_name, addr_buf);
-#if 0
-      if (host->h_aliases[0])
-        {
-           int i;
-
-           printf (", Aliases: ");
-           for (i = 0; host->h_aliases[i]; i++)
-               printf("%s ", host->h_aliases[i]);
-        }
-#endif
-      puts("");
-    }
-}
-
-static void usage(void)
-{
-  fprintf(stderr, "usage: ahost [-t {a|aaaa}] {host|addr} ...\n");
-  exit(1);
-}
diff --git a/src/other/ares/ares.h b/src/other/ares/ares.h
deleted file mode 100644
index 6d658ad..0000000
--- a/src/other/ares/ares.h
+++ /dev/null
@@ -1,509 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998, 2009 by the Massachusetts Institute of Technology.
- * Copyright (C) 2007-2010 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#ifndef ARES__H
-#define ARES__H
-
-#include "ares_version.h"  /* c-ares version defines   */
-#include "ares_build.h"    /* c-ares build definitions */
-#include "ares_rules.h"    /* c-ares rules enforcement */
-
-/*
- * Define WIN32 when build target is Win32 API
- */
-
-#if (defined(_WIN32) || defined(__WIN32__)) && \
-   !defined(WIN32) && !defined(__SYMBIAN32__)
-#  define WIN32
-#endif
-
-#include <sys/types.h>
-
-/* HP-UX systems version 9, 10 and 11 lack sys/select.h and so does oldish
-   libc5-based Linux systems. Only include it on system that are known to
-   require it! */
-#if defined(_AIX) || defined(__NOVELL_LIBC__) || defined(__NetBSD__) || \
-    defined(__minix) || defined(__SYMBIAN32__) || defined(__INTEGRITY)
-#include <sys/select.h>
-#endif
-#if (defined(NETWARE) && !defined(__NOVELL_LIBC__))
-#include <sys/bsdskt.h>
-#endif
-
-#if defined(WATT32)
-#  include <netinet/in.h>
-#  include <sys/socket.h>
-#  include <tcp.h>
-#elif defined(WIN32)
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  include <winsock2.h>
-#  include <ws2tcpip.h>
-#else
-#  include <sys/socket.h>
-#  include <netinet/in.h>
-#endif
-
-#ifdef  __cplusplus
-extern "C" {
-#endif
-
-/*
-** c-ares external API function linkage decorations.
-*/
-
-#if !defined(CARES_STATICLIB) && \
-   (defined(WIN32) || defined(_WIN32) || defined(__SYMBIAN32__))
-   /* __declspec function decoration for Win32 and Symbian DLL's */
-#  if defined(CARES_BUILDING_LIBRARY)
-#    define CARES_EXTERN  __declspec(dllexport)
-#  else
-#    define CARES_EXTERN  __declspec(dllimport)
-#  endif
-#else
-   /* visibility function decoration for other cases */
-#  if !defined(CARES_SYMBOL_HIDING) || \
-     defined(WIN32) || defined(_WIN32) || defined(__SYMBIAN32__)
-#    define CARES_EXTERN
-#  else
-#    define CARES_EXTERN CARES_SYMBOL_SCOPE_EXTERN
-#  endif
-#endif
-
-
-#define ARES_SUCCESS            0
-
-/* Server error codes (ARES_ENODATA indicates no relevant answer) */
-#define ARES_ENODATA            1
-#define ARES_EFORMERR           2
-#define ARES_ESERVFAIL          3
-#define ARES_ENOTFOUND          4
-#define ARES_ENOTIMP            5
-#define ARES_EREFUSED           6
-
-/* Locally generated error codes */
-#define ARES_EBADQUERY          7
-#define ARES_EBADNAME           8
-#define ARES_EBADFAMILY         9
-#define ARES_EBADRESP           10
-#define ARES_ECONNREFUSED       11
-#define ARES_ETIMEOUT           12
-#define ARES_EOF                13
-#define ARES_EFILE              14
-#define ARES_ENOMEM             15
-#define ARES_EDESTRUCTION       16
-#define ARES_EBADSTR            17
-
-/* ares_getnameinfo error codes */
-#define ARES_EBADFLAGS          18
-
-/* ares_getaddrinfo error codes */
-#define ARES_ENONAME            19
-#define ARES_EBADHINTS          20
-
-/* Uninitialized library error code */
-#define ARES_ENOTINITIALIZED    21          /* introduced in 1.7.0 */
-
-/* ares_library_init error codes */
-#define ARES_ELOADIPHLPAPI           22     /* introduced in 1.7.0 */
-#define ARES_EADDRGETNETWORKPARAMS   23     /* introduced in 1.7.0 */
-
-/* More error codes */
-#define ARES_ECANCELLED         24          /* introduced in 1.7.0 */
-
-/* Flag values */
-#define ARES_FLAG_USEVC         (1 << 0)
-#define ARES_FLAG_PRIMARY       (1 << 1)
-#define ARES_FLAG_IGNTC         (1 << 2)
-#define ARES_FLAG_NORECURSE     (1 << 3)
-#define ARES_FLAG_STAYOPEN      (1 << 4)
-#define ARES_FLAG_NOSEARCH      (1 << 5)
-#define ARES_FLAG_NOALIASES     (1 << 6)
-#define ARES_FLAG_NOCHECKRESP   (1 << 7)
-
-/* Option mask values */
-#define ARES_OPT_FLAGS          (1 << 0)
-#define ARES_OPT_TIMEOUT        (1 << 1)
-#define ARES_OPT_TRIES          (1 << 2)
-#define ARES_OPT_NDOTS          (1 << 3)
-#define ARES_OPT_UDP_PORT       (1 << 4)
-#define ARES_OPT_TCP_PORT       (1 << 5)
-#define ARES_OPT_SERVERS        (1 << 6)
-#define ARES_OPT_DOMAINS        (1 << 7)
-#define ARES_OPT_LOOKUPS        (1 << 8)
-#define ARES_OPT_SOCK_STATE_CB  (1 << 9)
-#define ARES_OPT_SORTLIST       (1 << 10)
-#define ARES_OPT_SOCK_SNDBUF    (1 << 11)
-#define ARES_OPT_SOCK_RCVBUF    (1 << 12)
-#define ARES_OPT_TIMEOUTMS      (1 << 13)
-#define ARES_OPT_ROTATE         (1 << 14)
-
-/* Nameinfo flag values */
-#define ARES_NI_NOFQDN                  (1 << 0)
-#define ARES_NI_NUMERICHOST             (1 << 1)
-#define ARES_NI_NAMEREQD                (1 << 2)
-#define ARES_NI_NUMERICSERV             (1 << 3)
-#define ARES_NI_DGRAM                   (1 << 4)
-#define ARES_NI_TCP                     0
-#define ARES_NI_UDP                     ARES_NI_DGRAM
-#define ARES_NI_SCTP                    (1 << 5)
-#define ARES_NI_DCCP                    (1 << 6)
-#define ARES_NI_NUMERICSCOPE            (1 << 7)
-#define ARES_NI_LOOKUPHOST              (1 << 8)
-#define ARES_NI_LOOKUPSERVICE           (1 << 9)
-/* Reserved for future use */
-#define ARES_NI_IDN                     (1 << 10)
-#define ARES_NI_IDN_ALLOW_UNASSIGNED    (1 << 11)
-#define ARES_NI_IDN_USE_STD3_ASCII_RULES (1 << 12)
-
-/* Addrinfo flag values */
-#define ARES_AI_CANONNAME               (1 << 0)
-#define ARES_AI_NUMERICHOST             (1 << 1)
-#define ARES_AI_PASSIVE                 (1 << 2)
-#define ARES_AI_NUMERICSERV             (1 << 3)
-#define ARES_AI_V4MAPPED                (1 << 4)
-#define ARES_AI_ALL                     (1 << 5)
-#define ARES_AI_ADDRCONFIG              (1 << 6)
-/* Reserved for future use */
-#define ARES_AI_IDN                     (1 << 10)
-#define ARES_AI_IDN_ALLOW_UNASSIGNED    (1 << 11)
-#define ARES_AI_IDN_USE_STD3_ASCII_RULES (1 << 12)
-#define ARES_AI_CANONIDN                (1 << 13)
-
-#define ARES_AI_MASK (ARES_AI_CANONNAME|ARES_AI_NUMERICHOST|ARES_AI_PASSIVE| \
-                      ARES_AI_NUMERICSERV|ARES_AI_V4MAPPED|ARES_AI_ALL| \
-                      ARES_AI_ADDRCONFIG)
-#define ARES_GETSOCK_MAXNUM 16 /* ares_getsock() can return info about this
-                                  many sockets */
-#define ARES_GETSOCK_READABLE(bits,num) (bits & (1<< (num)))
-#define ARES_GETSOCK_WRITABLE(bits,num) (bits & (1 << ((num) + \
-                                         ARES_GETSOCK_MAXNUM)))
-
-/* c-ares library initialization flag values */
-#define ARES_LIB_INIT_NONE   (0)
-#define ARES_LIB_INIT_WIN32  (1 << 0)
-#define ARES_LIB_INIT_ALL    (ARES_LIB_INIT_WIN32)
-
-
-/*
- * Typedef our socket type
- */
-
-#ifndef ares_socket_typedef
-#ifdef WIN32
-typedef SOCKET ares_socket_t;
-#define ARES_SOCKET_BAD INVALID_SOCKET
-#else
-typedef int ares_socket_t;
-#define ARES_SOCKET_BAD -1
-#endif
-#define ares_socket_typedef
-#endif /* ares_socket_typedef */
-
-typedef void (*ares_sock_state_cb)(void *data,
-                                   ares_socket_t socket_fd,
-                                   int readable,
-                                   int writable);
-
-struct apattern;
-
-/* NOTE about the ares_options struct to users and developers.
-
-   This struct will remain looking like this. It will not be extended nor
-   shrunk in future releases, but all new options will be set by ares_set_*()
-   options instead of with the ares_init_options() function.
-
-   Eventually (in a galaxy far far away), all options will be settable by
-   ares_set_*() options and the ares_init_options() function will become
-   deprecated.
-
-   When new options are added to c-ares, they are not added to this
-   struct. And they are not "saved" with the ares_save_options() function but
-   instead we encourage the use of the ares_dup() function. Needless to say,
-   if you add config options to c-ares you need to make sure ares_dup()
-   duplicates this new option.
-
- */
-struct ares_options {
-  int flags;
-  int timeout; /* in seconds or milliseconds, depending on options */
-  int tries;
-  int ndots;
-  unsigned short udp_port;
-  unsigned short tcp_port;
-  int socket_send_buffer_size;
-  int socket_receive_buffer_size;
-  struct in_addr *servers;
-  int nservers;
-  char **domains;
-  int ndomains;
-  char *lookups;
-  ares_sock_state_cb sock_state_cb;
-  void *sock_state_cb_data;
-  struct apattern *sortlist;
-  int nsort;
-};
-
-struct hostent;
-struct timeval;
-struct sockaddr;
-struct ares_channeldata;
-
-typedef struct ares_channeldata *ares_channel;
-
-typedef void (*ares_callback)(void *arg,
-                              int status,
-                              int timeouts,
-                              unsigned char *abuf,
-                              int alen);
-
-typedef void (*ares_host_callback)(void *arg,
-                                   int status,
-                                   int timeouts,
-                                   struct hostent *hostent);
-
-typedef void (*ares_nameinfo_callback)(void *arg,
-                                       int status,
-                                       int timeouts,
-                                       char *node,
-                                       char *service);
-
-typedef int  (*ares_sock_create_callback)(ares_socket_t socket_fd,
-                                          int type,
-                                          void *data);
-
-CARES_EXTERN int ares_library_init(int flags);
-
-CARES_EXTERN void ares_library_cleanup(void);
-
-CARES_EXTERN const char *ares_version(int *version);
-
-CARES_EXTERN int ares_init(ares_channel *channelptr);
-
-CARES_EXTERN int ares_init_options(ares_channel *channelptr,
-                                   struct ares_options *options,
-                                   int optmask);
-
-CARES_EXTERN int ares_save_options(ares_channel channel,
-                                   struct ares_options *options,
-                                   int *optmask);
-
-CARES_EXTERN void ares_destroy_options(struct ares_options *options);
-
-CARES_EXTERN int ares_dup(ares_channel *dest,
-                          ares_channel src);
-
-CARES_EXTERN void ares_destroy(ares_channel channel);
-
-CARES_EXTERN void ares_cancel(ares_channel channel);
-
-CARES_EXTERN void ares_set_socket_callback(ares_channel channel,
-                                           ares_sock_create_callback callback,
-                                           void *user_data);
-
-CARES_EXTERN void ares_send(ares_channel channel,
-                            const unsigned char *qbuf,
-                            int qlen,
-                            ares_callback callback,
-                            void *arg);
-
-CARES_EXTERN void ares_query(ares_channel channel,
-                             const char *name,
-                             int dnsclass,
-                             int type,
-                             ares_callback callback,
-                             void *arg);
-
-CARES_EXTERN void ares_search(ares_channel channel,
-                              const char *name,
-                              int dnsclass,
-                              int type,
-                              ares_callback callback,
-                              void *arg);
-
-CARES_EXTERN void ares_gethostbyname(ares_channel channel,
-                                     const char *name,
-                                     int family,
-                                     ares_host_callback callback,
-                                     void *arg);
-
-CARES_EXTERN int ares_gethostbyname_file(ares_channel channel,
-                                         const char *name,
-                                         int family,
-                                         struct hostent **host);
-
-CARES_EXTERN void ares_gethostbyaddr(ares_channel channel,
-                                     const void *addr,
-                                     int addrlen,
-                                     int family,
-                                     ares_host_callback callback,
-                                     void *arg);
-
-CARES_EXTERN void ares_getnameinfo(ares_channel channel,
-                                   const struct sockaddr *sa,
-                                   ares_socklen_t salen,
-                                   int flags,
-                                   ares_nameinfo_callback callback,
-                                   void *arg);
-
-CARES_EXTERN int ares_fds(ares_channel channel,
-                          fd_set *read_fds,
-                          fd_set *write_fds);
-
-CARES_EXTERN int ares_getsock(ares_channel channel,
-                              ares_socket_t *socks,
-                              int numsocks);
-
-CARES_EXTERN struct timeval *ares_timeout(ares_channel channel,
-                                          struct timeval *maxtv,
-                                          struct timeval *tv);
-
-CARES_EXTERN void ares_process(ares_channel channel,
-                               fd_set *read_fds,
-                               fd_set *write_fds);
-
-CARES_EXTERN void ares_process_fd(ares_channel channel,
-                                  ares_socket_t read_fd,
-                                  ares_socket_t write_fd);
-
-CARES_EXTERN int ares_mkquery(const char *name,
-                              int dnsclass,
-                              int type,
-                              unsigned short id,
-                              int rd,
-                              unsigned char **buf,
-                              int *buflen);
-
-CARES_EXTERN int ares_expand_name(const unsigned char *encoded,
-                                  const unsigned char *abuf,
-                                  int alen,
-                                  char **s,
-                                  long *enclen);
-
-CARES_EXTERN int ares_expand_string(const unsigned char *encoded,
-                                    const unsigned char *abuf,
-                                    int alen,
-                                    unsigned char **s,
-                                    long *enclen);
-
-/*
- * NOTE: before c-ares 1.7.0 we would most often use the system in6_addr
- * struct below when ares itself was built, but many apps would use this
- * private version since the header checked a HAVE_* define for it. Starting
- * with 1.7.0 we always declare and use our own to stop relying on the
- * system's one.
- */
-struct ares_in6_addr {
-  union {
-    unsigned char _S6_u8[16];
-  } _S6_un;
-};
-
-struct ares_addrttl {
-  struct in_addr ipaddr;
-  int            ttl;
-};
-
-struct ares_addr6ttl {
-  struct ares_in6_addr ip6addr;
-  int             ttl;
-};
-
-struct ares_srv_reply {
-  struct ares_srv_reply  *next;
-  char                   *host;
-  unsigned short          priority;
-  unsigned short          weight;
-  unsigned short          port;
-};
-
-struct ares_txt_reply {
-  struct ares_txt_reply  *next;
-  unsigned char          *txt;
-  size_t                  length;  /* length excludes null termination */
-};
-
-/*
-** Parse the buffer, starting at *abuf and of length alen bytes, previously
-** obtained from an ares_search call.  Put the results in *host, if nonnull.
-** Also, if addrttls is nonnull, put up to *naddrttls IPv4 addresses along with
-** their TTLs in that array, and set *naddrttls to the number of addresses
-** so written.
-*/
-
-CARES_EXTERN int ares_parse_a_reply(const unsigned char *abuf,
-                                    int alen,
-                                    struct hostent **host,
-                                    struct ares_addrttl *addrttls,
-                                    int *naddrttls);
-
-CARES_EXTERN int ares_parse_aaaa_reply(const unsigned char *abuf,
-                                       int alen,
-                                       struct hostent **host,
-                                       struct ares_addr6ttl *addrttls,
-                                       int *naddrttls);
-
-CARES_EXTERN int ares_parse_ptr_reply(const unsigned char *abuf,
-                                      int alen,
-                                      const void *addr,
-                                      int addrlen,
-                                      int family,
-                                      struct hostent **host);
-
-CARES_EXTERN int ares_parse_ns_reply(const unsigned char *abuf,
-                                     int alen,
-                                     struct hostent **host);
-
-CARES_EXTERN int ares_parse_srv_reply(const unsigned char* abuf,
-                                      int alen,
-                                      struct ares_srv_reply** srv_out);
-
-CARES_EXTERN int ares_parse_txt_reply(const unsigned char* abuf,
-                                      int alen,
-                                      struct ares_txt_reply** txt_out);
-
-CARES_EXTERN void ares_free_string(void *str);
-
-CARES_EXTERN void ares_free_hostent(struct hostent *host);
-
-CARES_EXTERN void ares_free_data(void *dataptr);
-
-CARES_EXTERN const char *ares_strerror(int code);
-
-struct ares_addr_node {
-  struct ares_addr_node *next;
-  int family;
-  union {
-    struct in_addr       addr4;
-    struct ares_in6_addr addr6;
-  } addr;
-};
-
-CARES_EXTERN int ares_set_servers(ares_channel channel,
-                                  struct ares_addr_node *servers);
-
-CARES_EXTERN int ares_get_servers(ares_channel channel,
-                                  struct ares_addr_node **servers);
-
-#ifdef  __cplusplus
-}
-#endif
-
-#endif /* ARES__H */
diff --git a/src/other/ares/ares__close_sockets.c b/src/other/ares/ares__close_sockets.c
deleted file mode 100644
index d2476fd..0000000
--- a/src/other/ares/ares__close_sockets.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#include <stdlib.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#include "ares.h"
-#include "ares_private.h"
-
-void ares__close_sockets(ares_channel channel, struct server_state *server)
-{
-  struct send_request *sendreq;
-
-  /* Free all pending output buffers. */
-  while (server->qhead)
-    {
-      /* Advance server->qhead; pull out query as we go. */
-      sendreq = server->qhead;
-      server->qhead = sendreq->next;
-      if (sendreq->data_storage != NULL)
-        free(sendreq->data_storage);
-      free(sendreq);
-    }
-  server->qtail = NULL;
-
-  /* Reset any existing input buffer. */
-  if (server->tcp_buffer)
-    free(server->tcp_buffer);
-  server->tcp_buffer = NULL;
-  server->tcp_lenbuf_pos = 0;
-
-  /* Reset brokenness */
-  server->is_broken = 0;
-
-  /* Close the TCP and UDP sockets. */
-  if (server->tcp_socket != ARES_SOCKET_BAD)
-    {
-      SOCK_STATE_CALLBACK(channel, server->tcp_socket, 0, 0);
-      sclose(server->tcp_socket);
-      server->tcp_socket = ARES_SOCKET_BAD;
-      server->tcp_connection_generation = ++channel->tcp_connection_generation;
-    }
-  if (server->udp_socket != ARES_SOCKET_BAD)
-    {
-      SOCK_STATE_CALLBACK(channel, server->udp_socket, 0, 0);
-      sclose(server->udp_socket);
-      server->udp_socket = ARES_SOCKET_BAD;
-    }
-}
diff --git a/src/other/ares/ares__get_hostent.c b/src/other/ares/ares__get_hostent.c
deleted file mode 100644
index caa7f79..0000000
--- a/src/other/ares/ares__get_hostent.c
+++ /dev/null
@@ -1,264 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998, 2010 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-
-#include "ares.h"
-#include "inet_net_pton.h"
-#include "ares_private.h"
-
-int ares__get_hostent(FILE *fp, int family, struct hostent **host)
-{
-  char *line = NULL, *p, *q, **alias;
-  char *txtaddr, *txthost, *txtalias;
-  int status;
-  size_t addrlen, linesize, naliases;
-  struct ares_addr addr;
-  struct hostent *hostent = NULL;
-
-  *host = NULL; /* Assume failure */
-
-  /* Validate family */
-  switch (family) {
-    case AF_INET:
-    case AF_INET6:
-    case AF_UNSPEC:
-      break;
-    default:
-      return ARES_EBADFAMILY;
-  }
-
-  while ((status = ares__read_line(fp, &line, &linesize)) == ARES_SUCCESS)
-    {
-
-      /* Trim line comment. */
-      p = line;
-      while (*p && (*p != '#'))
-        p++;
-      *p = '\0';
-
-      /* Trim trailing whitespace. */
-      q = p - 1;
-      while ((q >= line) && ISSPACE(*q))
-        q--;
-      *++q = '\0';
-
-      /* Skip leading whitespace. */
-      p = line;
-      while (*p && ISSPACE(*p))
-        p++;
-      if (!*p)
-        /* Ignore line if empty. */
-        continue;
-
-      /* Pointer to start of IPv4 or IPv6 address part. */
-      txtaddr = p;
-
-      /* Advance past address part. */
-      while (*p && !ISSPACE(*p))
-        p++;
-      if (!*p)
-        /* Ignore line if reached end of line. */
-        continue;
-
-      /* Null terminate address part. */
-      *p = '\0';
-
-      /* Advance to host name */
-      p++;
-      while (*p && ISSPACE(*p))
-        p++;
-      if (!*p)
-        /* Ignore line if reached end of line. */
-        continue;
-
-      /* Pointer to start of host name. */
-      txthost = p;
-
-      /* Advance past host name. */
-      while (*p && !ISSPACE(*p))
-        p++;
-
-      /* Pointer to start of first alias. */
-      txtalias = NULL;
-      if (*p)
-        {
-          q = p + 1;
-          while (*q && ISSPACE(*q))
-            q++;
-          if (*q)
-            txtalias = q;
-        }
-
-      /* Null terminate host name. */
-      *p = '\0';
-
-      /* find out number of aliases. */
-      naliases = 0;
-      if (txtalias)
-        {
-          p = txtalias;
-          while (*p)
-            {
-              while (*p && !ISSPACE(*p))
-                p++;
-              while (*p && ISSPACE(*p))
-                p++;
-              naliases++;
-            }
-        }
-
-      /* Convert address string to network address for the requested family. */
-      addrlen = 0;
-      addr.family = AF_UNSPEC;
-      addr.addrV4.s_addr = INADDR_NONE;
-      if ((family == AF_INET) || (family == AF_UNSPEC))
-        {
-          addr.addrV4.s_addr = inet_addr(txtaddr);
-          if (addr.addrV4.s_addr != INADDR_NONE)
-            {
-              /* Actual network address family and length. */
-              addr.family = AF_INET;
-              addrlen = sizeof(addr.addrV4);
-            }
-        }
-      if ((family == AF_INET6) || ((family == AF_UNSPEC) && (!addrlen)))
-        {
-          if (ares_inet_pton(AF_INET6, txtaddr, &addr.addrV6) > 0)
-            {
-              /* Actual network address family and length. */
-              addr.family = AF_INET6;
-              addrlen = sizeof(addr.addrV6);
-            }
-        }
-      if (!addrlen)
-        /* Ignore line if invalid address string for the requested family. */
-        continue;
-
-      /*
-      ** Actual address family possible values are AF_INET and AF_INET6 only.
-      */
-
-      /* Allocate memory for the hostent structure. */
-      hostent = malloc(sizeof(struct hostent));
-      if (!hostent)
-        break;
-
-      /* Initialize fields for out of memory condition. */
-      hostent->h_aliases = NULL;
-      hostent->h_addr_list = NULL;
-
-      /* Copy official host name. */
-      hostent->h_name = strdup(txthost);
-      if (!hostent->h_name)
-        break;
-
-      /* Copy network address. */
-      hostent->h_addr_list = malloc(2 * sizeof(char *));
-      if (!hostent->h_addr_list)
-        break;
-      hostent->h_addr_list[1] = NULL;
-      hostent->h_addr_list[0] = malloc(addrlen);
-      if (!hostent->h_addr_list[0])
-        break;
-      if (addr.family == AF_INET)
-        memcpy(hostent->h_addr_list[0], &addr.addrV4, sizeof(addr.addrV4));
-      else
-        memcpy(hostent->h_addr_list[0], &addr.addrV6, sizeof(addr.addrV6));
-
-      /* Copy aliases. */
-      hostent->h_aliases = malloc((naliases + 1) * sizeof(char *));
-      if (!hostent->h_aliases)
-        break;
-      alias = hostent->h_aliases;
-      while (naliases)
-        *(alias + naliases--) = NULL;
-      *alias = NULL;
-      while (txtalias)
-        {
-          p = txtalias;
-          while (*p && !ISSPACE(*p))
-            p++;
-          q = p;
-          while (*q && ISSPACE(*q))
-            q++;
-          *p = '\0';
-          if ((*alias = strdup(txtalias)) == NULL)
-            break;
-          alias++;
-          txtalias = *q ? q : NULL;
-        }
-      if (txtalias)
-        /* Alias memory allocation failure. */
-        break;
-
-      /* Copy actual network address family and length. */
-      hostent->h_addrtype = addr.family;
-      hostent->h_length = (int)addrlen;
-
-      /* Free line buffer. */
-      free(line);
-
-      /* Return hostent successfully */
-      *host = hostent;
-      return ARES_SUCCESS;
-
-    }
-
-  /* If allocated, free line buffer. */
-  if (line)
-    free(line);
-
-  if (status == ARES_SUCCESS)
-    {
-      /* Memory allocation failure; clean up. */
-      if (hostent)
-        {
-          if (hostent->h_name)
-            free((char *) hostent->h_name);
-          if (hostent->h_aliases)
-            {
-              for (alias = hostent->h_aliases; *alias; alias++)
-                free(*alias);
-              free(hostent->h_aliases);
-            }
-          if (hostent->h_addr_list)
-            {
-              if (hostent->h_addr_list[0])
-                free(hostent->h_addr_list[0]);
-              free(hostent->h_addr_list);
-            }
-          free(hostent);
-        }
-      return ARES_ENOMEM;
-    }
-
-  return status;
-}
diff --git a/src/other/ares/ares__read_line.c b/src/other/ares/ares__read_line.c
deleted file mode 100644
index 2e94945..0000000
--- a/src/other/ares/ares__read_line.c
+++ /dev/null
@@ -1,72 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "ares.h"
-#include "ares_nowarn.h"
-#include "ares_private.h"
-
-/* This is an internal function.  Its contract is to read a line from
- * a file into a dynamically allocated buffer, zeroing the trailing
- * newline if there is one.  The calling routine may call
- * ares__read_line multiple times with the same buf and bufsize
- * pointers; *buf will be reallocated and *bufsize adjusted as
- * appropriate.  The initial value of *buf should be NULL.  After the
- * calling routine is done reading lines, it should free *buf.
- */
-int ares__read_line(FILE *fp, char **buf, size_t *bufsize)
-{
-  char *newbuf;
-  size_t offset = 0;
-  size_t len;
-
-  if (*buf == NULL)
-    {
-      *buf = malloc(128);
-      if (!*buf)
-        return ARES_ENOMEM;
-      *bufsize = 128;
-    }
-
-  for (;;)
-    {
-      int bytestoread = aresx_uztosi(*bufsize - offset);
-
-      if (!fgets(*buf + offset, bytestoread, fp))
-        return (offset != 0) ? 0 : (ferror(fp)) ? ARES_EFILE : ARES_EOF;
-      len = offset + strlen(*buf + offset);
-      if ((*buf)[len - 1] == '\n')
-        {
-          (*buf)[len - 1] = 0;
-          break;
-        }
-      offset = len;
-      if(len < *bufsize - 1)
-        continue;
-
-      /* Allocate more space. */
-      newbuf = realloc(*buf, *bufsize * 2);
-      if (!newbuf)
-        return ARES_ENOMEM;
-      *buf = newbuf;
-      *bufsize *= 2;
-    }
-  return ARES_SUCCESS;
-}
diff --git a/src/other/ares/ares__timeval.c b/src/other/ares/ares__timeval.c
deleted file mode 100644
index 8cf37e9..0000000
--- a/src/other/ares/ares__timeval.c
+++ /dev/null
@@ -1,112 +0,0 @@
-/* $Id$ */
-
-/* Copyright (C) 2008 by Daniel Stenberg et al
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation for any purpose and without fee is hereby granted, provided
- * that the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in advertising or
- * publicity pertaining to distribution of the software without specific,
- * written prior permission.  M.I.T. makes no representations about the
- * suitability of this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-#include "ares.h"
-#include "ares_private.h"
-
-#if defined(WIN32) && !defined(MSDOS)
-
-struct timeval ares__tvnow(void)
-{
-  /*
-  ** GetTickCount() is available on _all_ Windows versions from W95 up
-  ** to nowadays. Returns milliseconds elapsed since last system boot,
-  ** increases monotonically and wraps once 49.7 days have elapsed.
-  */
-  struct timeval now;
-  DWORD milliseconds = GetTickCount();
-  now.tv_sec = milliseconds / 1000;
-  now.tv_usec = (milliseconds % 1000) * 1000;
-  return now;
-}
-
-#elif defined(HAVE_CLOCK_GETTIME_MONOTONIC)
-
-struct timeval ares__tvnow(void)
-{
-  /*
-  ** clock_gettime() is granted to be increased monotonically when the
-  ** monotonic clock is queried. Time starting point is unspecified, it
-  ** could be the system start-up time, the Epoch, or something else,
-  ** in any case the time starting point does not change once that the
-  ** system has started up.
-  */
-  struct timeval now;
-  struct timespec tsnow;
-  if(0 == clock_gettime(CLOCK_MONOTONIC, &tsnow)) {
-    now.tv_sec = tsnow.tv_sec;
-    now.tv_usec = tsnow.tv_nsec / 1000;
-  }
-  /*
-  ** Even when the configure process has truly detected monotonic clock
-  ** availability, it might happen that it is not actually available at
-  ** run-time. When this occurs simply fallback to other time source.
-  */
-#ifdef HAVE_GETTIMEOFDAY
-  else
-    (void)gettimeofday(&now, NULL);
-#else
-  else {
-    now.tv_sec = (long)time(NULL);
-    now.tv_usec = 0;
-  }
-#endif
-  return now;
-}
-
-#elif defined(HAVE_GETTIMEOFDAY)
-
-struct timeval ares__tvnow(void)
-{
-  /*
-  ** gettimeofday() is not granted to be increased monotonically, due to
-  ** clock drifting and external source time synchronization it can jump
-  ** forward or backward in time.
-  */
-  struct timeval now;
-  (void)gettimeofday(&now, NULL);
-  return now;
-}
-
-#else
-
-struct timeval ares__tvnow(void)
-{
-  /*
-  ** time() returns the value of time in seconds since the Epoch.
-  */
-  struct timeval now;
-  now.tv_sec = (long)time(NULL);
-  now.tv_usec = 0;
-  return now;
-}
-
-#endif
-
-#if 0 /* Not used */
-/*
- * Make sure that the first argument is the more recent time, as otherwise
- * we'll get a weird negative time-diff back...
- *
- * Returns: the time difference in number of milliseconds.
- */
-long ares__tvdiff(struct timeval newer, struct timeval older)
-{
-  return (newer.tv_sec-older.tv_sec)*1000+
-    (newer.tv_usec-older.tv_usec)/1000;
-}
-#endif
-
diff --git a/src/other/ares/ares_build.h.in b/src/other/ares/ares_build.h.in
deleted file mode 100644
index 6d2f87c..0000000
--- a/src/other/ares/ares_build.h.in
+++ /dev/null
@@ -1,111 +0,0 @@
-#ifndef __CARES_BUILD_H
-#define __CARES_BUILD_H
-
-/* $Id$ */
-
-/* Copyright (C) 2009 by Daniel Stenberg et al
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation for any purpose and without fee is hereby granted, provided
- * that the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in advertising or
- * publicity pertaining to distribution of the software without specific,
- * written prior permission.  M.I.T. makes no representations about the
- * suitability of this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-/* ================================================================ */
-/*               NOTES FOR CONFIGURE CAPABLE SYSTEMS                */
-/* ================================================================ */
-
-/*
- * NOTE 1:
- * -------
- *
- * Nothing in this file is intended to be modified or adjusted by the
- * c-ares library user nor by the c-ares library builder.
- *
- * If you think that something actually needs to be changed, adjusted
- * or fixed in this file, then, report it on the c-ares development
- * mailing list: http://cool.haxx.se/mailman/listinfo/c-ares/
- *
- * This header file shall only export symbols which are 'cares' or 'CARES'
- * prefixed, otherwise public name space would be polluted.
- *
- * NOTE 2:
- * -------
- *
- * Right now you might be staring at file ares_build.h.in or ares_build.h,
- * this is due to the following reason:
- *
- * On systems capable of running the configure script, the configure process
- * will overwrite the distributed ares_build.h file with one that is suitable
- * and specific to the library being configured and built, which is generated
- * from the ares_build.h.in template file.
- *
- */
-
-/* ================================================================ */
-/*  DEFINITION OF THESE SYMBOLS SHALL NOT TAKE PLACE ANYWHERE ELSE  */
-/* ================================================================ */
-
-#ifdef CARES_SIZEOF_LONG
-#  error "CARES_SIZEOF_LONG shall not be defined except in ares_build.h"
-   Error Compilation_aborted_CARES_SIZEOF_LONG_already_defined
-#endif
-
-#ifdef CARES_TYPEOF_ARES_SOCKLEN_T
-#  error "CARES_TYPEOF_ARES_SOCKLEN_T shall not be defined except in ares_build.h"
-   Error Compilation_aborted_CARES_TYPEOF_ARES_SOCKLEN_T_already_defined
-#endif
-
-#ifdef CARES_SIZEOF_ARES_SOCKLEN_T
-#  error "CARES_SIZEOF_ARES_SOCKLEN_T shall not be defined except in ares_build.h"
-   Error Compilation_aborted_CARES_SIZEOF_ARES_SOCKLEN_T_already_defined
-#endif
-
-/* ================================================================ */
-/*  EXTERNAL INTERFACE SETTINGS FOR CONFIGURE CAPABLE SYSTEMS ONLY  */
-/* ================================================================ */
-
-/* Configure process defines this to 1 when it finds out that system  */
-/* header file ws2tcpip.h must be included by the external interface. */
-#undef CARES_PULL_WS2TCPIP_H
-#ifdef CARES_PULL_WS2TCPIP_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  include <winsock2.h>
-#  include <ws2tcpip.h>
-#endif
-
-/* Configure process defines this to 1 when it finds out that system   */
-/* header file sys/types.h must be included by the external interface. */
-#undef CARES_PULL_SYS_TYPES_H
-#ifdef CARES_PULL_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-
-/* Configure process defines this to 1 when it finds out that system    */
-/* header file sys/socket.h must be included by the external interface. */
-#undef CARES_PULL_SYS_SOCKET_H
-#ifdef CARES_PULL_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-
-/* The size of `long', as computed by sizeof. */
-#undef CARES_SIZEOF_LONG
-
-/* Integral data type used for ares_socklen_t. */
-#undef CARES_TYPEOF_ARES_SOCKLEN_T
-
-/* The size of `ares_socklen_t', as computed by sizeof. */
-#undef CARES_SIZEOF_ARES_SOCKLEN_T
-
-/* Data type definition of ares_socklen_t. */
-typedef CARES_TYPEOF_ARES_SOCKLEN_T ares_socklen_t;
-
-#endif /* __CARES_BUILD_H */
diff --git a/src/other/ares/ares_cancel.c b/src/other/ares/ares_cancel.c
deleted file mode 100644
index a730a65..0000000
--- a/src/other/ares/ares_cancel.c
+++ /dev/null
@@ -1,64 +0,0 @@
-/* $Id$ */
-
-/* Copyright (C) 2004 by Daniel Stenberg et al
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation for any purpose and without fee is hereby granted, provided
- * that the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in advertising or
- * publicity pertaining to distribution of the software without specific,
- * written prior permission.  M.I.T. makes no representations about the
- * suitability of this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-#include <assert.h>
-#include <stdlib.h>
-#include "ares.h"
-#include "ares_private.h"
-
-/*
- * ares_cancel() cancels all ongoing requests/resolves that might be going on
- * on the given channel. It does NOT kill the channel, use ares_destroy() for
- * that.
- */
-void ares_cancel(ares_channel channel)
-{
-  struct query *query;
-  struct list_node* list_head;
-  struct list_node* list_node;
-  int i;
-
-  list_head = &(channel->all_queries);
-  for (list_node = list_head->next; list_node != list_head; )
-  {
-    query = list_node->data;
-    list_node = list_node->next;  /* since we're deleting the query */
-    query->callback(query->arg, ARES_ECANCELLED, 0, NULL, 0);
-    ares__free_query(query);
-  }
-#ifndef NDEBUG
-  /* Freeing the query should remove it from all the lists in which it sits,
-   * so all query lists should be empty now.
-   */
-  assert(ares__is_list_empty(&(channel->all_queries)));
-  for (i = 0; i < ARES_QID_TABLE_SIZE; i++)
-    {
-      assert(ares__is_list_empty(&(channel->queries_by_qid[i])));
-    }
-  for (i = 0; i < ARES_TIMEOUT_TABLE_SIZE; i++)
-    {
-      assert(ares__is_list_empty(&(channel->queries_by_timeout[i])));
-    }
-#endif
-  if (!(channel->flags & ARES_FLAG_STAYOPEN))
-  {
-    if (channel->servers)
-    {
-      for (i = 0; i < channel->nservers; i++)
-        ares__close_sockets(channel, &channel->servers[i]);
-    }
-  }
-}
diff --git a/src/other/ares/ares_cancel.pdf b/src/other/ares/ares_cancel.pdf
deleted file mode 100644
index f18b73c..0000000
Binary files a/src/other/ares/ares_cancel.pdf and /dev/null differ
diff --git a/src/other/ares/ares_config.h.in b/src/other/ares/ares_config.h.in
deleted file mode 100644
index 139a014..0000000
--- a/src/other/ares/ares_config.h.in
+++ /dev/null
@@ -1,512 +0,0 @@
-/* ares_config.h.in.  Generated from configure.ac by autoheader.  */
-
-/* Define if building universal (internal helper macro) */
-#undef AC_APPLE_UNIVERSAL_BUILD
-
-/* define this if ares is built for a big endian system */
-#undef ARES_BIG_ENDIAN
-
-/* when building as static part of libcurl */
-#undef BUILDING_LIBCURL
-
-/* when building c-ares library */
-#undef CARES_BUILDING_LIBRARY
-
-/* when not building a shared library */
-#undef CARES_STATICLIB
-
-/* Define to 1 to enable hiding of library internal symbols. */
-#undef CARES_SYMBOL_HIDING
-
-/* Definition to make a library symbol externally visible. */
-#undef CARES_SYMBOL_SCOPE_EXTERN
-
-/* if a /etc/inet dir is being used */
-#undef ETC_INET
-
-/* Define to the type qualifier of arg 1 for getnameinfo. */
-#undef GETNAMEINFO_QUAL_ARG1
-
-/* Define to the type of arg 1 for getnameinfo. */
-#undef GETNAMEINFO_TYPE_ARG1
-
-/* Define to the type of arg 2 for getnameinfo. */
-#undef GETNAMEINFO_TYPE_ARG2
-
-/* Define to the type of args 4 and 6 for getnameinfo. */
-#undef GETNAMEINFO_TYPE_ARG46
-
-/* Define to the type of arg 7 for getnameinfo. */
-#undef GETNAMEINFO_TYPE_ARG7
-
-/* Specifies the number of arguments to getservbyport_r */
-#undef GETSERVBYPORT_R_ARGS
-
-/* Specifies the size of the buffer to pass to getservbyport_r */
-#undef GETSERVBYPORT_R_BUFSIZE
-
-/* Define to 1 if you have AF_INET6. */
-#undef HAVE_AF_INET6
-
-/* Define to 1 if you have the <arpa/inet.h> header file. */
-#undef HAVE_ARPA_INET_H
-
-/* Define to 1 if you have the <arpa/nameser_compat.h> header file. */
-#undef HAVE_ARPA_NAMESER_COMPAT_H
-
-/* Define to 1 if you have the <arpa/nameser.h> header file. */
-#undef HAVE_ARPA_NAMESER_H
-
-/* Define to 1 if you have the <assert.h> header file. */
-#undef HAVE_ASSERT_H
-
-/* Define to 1 if you have the `bitncmp' function. */
-#undef HAVE_BITNCMP
-
-/* Define to 1 if bool is an available type. */
-#undef HAVE_BOOL_T
-
-/* Define to 1 if you have the clock_gettime function and monotonic timer. */
-#undef HAVE_CLOCK_GETTIME_MONOTONIC
-
-/* Define to 1 if you have the closesocket function. */
-#undef HAVE_CLOSESOCKET
-
-/* Define to 1 if you have the CloseSocket camel case function. */
-#undef HAVE_CLOSESOCKET_CAMEL
-
-/* Define to 1 if you have the connect function. */
-#undef HAVE_CONNECT
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#undef HAVE_DLFCN_H
-
-/* Define to 1 if you have the <errno.h> header file. */
-#undef HAVE_ERRNO_H
-
-/* Define to 1 if you have the fcntl function. */
-#undef HAVE_FCNTL
-
-/* Define to 1 if you have the <fcntl.h> header file. */
-#undef HAVE_FCNTL_H
-
-/* Define to 1 if you have a working fcntl O_NONBLOCK function. */
-#undef HAVE_FCNTL_O_NONBLOCK
-
-/* Define to 1 if you have the freeaddrinfo function. */
-#undef HAVE_FREEADDRINFO
-
-/* Define to 1 if you have a working getaddrinfo function. */
-#undef HAVE_GETADDRINFO
-
-/* Define to 1 if the getaddrinfo function is threadsafe. */
-#undef HAVE_GETADDRINFO_THREADSAFE
-
-/* Define to 1 if you have the gethostbyaddr function. */
-#undef HAVE_GETHOSTBYADDR
-
-/* Define to 1 if you have the gethostbyname function. */
-#undef HAVE_GETHOSTBYNAME
-
-/* Define to 1 if you have the gethostname function. */
-#undef HAVE_GETHOSTNAME
-
-/* Define to 1 if you have the getnameinfo function. */
-#undef HAVE_GETNAMEINFO
-
-/* Define to 1 if you have the getservbyport_r function. */
-#undef HAVE_GETSERVBYPORT_R
-
-/* Define to 1 if you have the `gettimeofday' function. */
-#undef HAVE_GETTIMEOFDAY
-
-/* Define to 1 if you have the `if_indextoname' function. */
-#undef HAVE_IF_INDEXTONAME
-
-/* Define to 1 if you have the `inet_net_pton' function. */
-#undef HAVE_INET_NET_PTON
-
-/* Define to 1 if inet_net_pton supports IPv6. */
-#undef HAVE_INET_NET_PTON_IPV6
-
-/* Define to 1 if you have a IPv6 capable working inet_ntop function. */
-#undef HAVE_INET_NTOP
-
-/* Define to 1 if you have a IPv6 capable working inet_pton function. */
-#undef HAVE_INET_PTON
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#undef HAVE_INTTYPES_H
-
-/* Define to 1 if you have the ioctl function. */
-#undef HAVE_IOCTL
-
-/* Define to 1 if you have the ioctlsocket function. */
-#undef HAVE_IOCTLSOCKET
-
-/* Define to 1 if you have the IoctlSocket camel case function. */
-#undef HAVE_IOCTLSOCKET_CAMEL
-
-/* Define to 1 if you have a working IoctlSocket camel case FIONBIO function.
-   */
-#undef HAVE_IOCTLSOCKET_CAMEL_FIONBIO
-
-/* Define to 1 if you have a working ioctlsocket FIONBIO function. */
-#undef HAVE_IOCTLSOCKET_FIONBIO
-
-/* Define to 1 if you have a working ioctl FIONBIO function. */
-#undef HAVE_IOCTL_FIONBIO
-
-/* Define to 1 if you have a working ioctl SIOCGIFADDR function. */
-#undef HAVE_IOCTL_SIOCGIFADDR
-
-/* Define to 1 if you have the `resolve' library (-lresolve). */
-#undef HAVE_LIBRESOLVE
-
-/* Define to 1 if you have the <limits.h> header file. */
-#undef HAVE_LIMITS_H
-
-/* if your compiler supports LL */
-#undef HAVE_LL
-
-/* Define to 1 if the compiler supports the 'long long' data type. */
-#undef HAVE_LONGLONG
-
-/* Define to 1 if you have the malloc.h header file. */
-#undef HAVE_MALLOC_H
-
-/* Define to 1 if you have the memory.h header file. */
-#undef HAVE_MEMORY_H
-
-/* Define to 1 if you have the MSG_NOSIGNAL flag. */
-#undef HAVE_MSG_NOSIGNAL
-
-/* Define to 1 if you have the <netdb.h> header file. */
-#undef HAVE_NETDB_H
-
-/* Define to 1 if you have the <netinet/in.h> header file. */
-#undef HAVE_NETINET_IN_H
-
-/* Define to 1 if you have the <netinet/tcp.h> header file. */
-#undef HAVE_NETINET_TCP_H
-
-/* Define to 1 if you have the <net/if.h> header file. */
-#undef HAVE_NET_IF_H
-
-/* Define to 1 if you have PF_INET6. */
-#undef HAVE_PF_INET6
-
-/* Define to 1 if you have the recv function. */
-#undef HAVE_RECV
-
-/* Define to 1 if you have the recvfrom function. */
-#undef HAVE_RECVFROM
-
-/* Define to 1 if you have the send function. */
-#undef HAVE_SEND
-
-/* Define to 1 if you have the setsockopt function. */
-#undef HAVE_SETSOCKOPT
-
-/* Define to 1 if you have a working setsockopt SO_NONBLOCK function. */
-#undef HAVE_SETSOCKOPT_SO_NONBLOCK
-
-/* Define to 1 if you have the <signal.h> header file. */
-#undef HAVE_SIGNAL_H
-
-/* Define to 1 if sig_atomic_t is an available typedef. */
-#undef HAVE_SIG_ATOMIC_T
-
-/* Define to 1 if sig_atomic_t is already defined as volatile. */
-#undef HAVE_SIG_ATOMIC_T_VOLATILE
-
-/* Define to 1 if your struct sockaddr_in6 has sin6_scope_id. */
-#undef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
-
-/* Define to 1 if you have the socket function. */
-#undef HAVE_SOCKET
-
-/* Define to 1 if you have the <socket.h> header file. */
-#undef HAVE_SOCKET_H
-
-/* Define to 1 if you have the <stdbool.h> header file. */
-#undef HAVE_STDBOOL_H
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H
-
-/* Define to 1 if you have the strcasecmp function. */
-#undef HAVE_STRCASECMP
-
-/* Define to 1 if you have the strcmpi function. */
-#undef HAVE_STRCMPI
-
-/* Define to 1 if you have the strdup function. */
-#undef HAVE_STRDUP
-
-/* Define to 1 if you have the stricmp function. */
-#undef HAVE_STRICMP
-
-/* Define to 1 if you have the <strings.h> header file. */
-#undef HAVE_STRINGS_H
-
-/* Define to 1 if you have the <string.h> header file. */
-#undef HAVE_STRING_H
-
-/* Define to 1 if you have the strncasecmp function. */
-#undef HAVE_STRNCASECMP
-
-/* Define to 1 if you have the strncmpi function. */
-#undef HAVE_STRNCMPI
-
-/* Define to 1 if you have the strnicmp function. */
-#undef HAVE_STRNICMP
-
-/* Define to 1 if you have the <stropts.h> header file. */
-#undef HAVE_STROPTS_H
-
-/* Define to 1 if you have struct addrinfo. */
-#undef HAVE_STRUCT_ADDRINFO
-
-/* Define to 1 if you have struct in6_addr. */
-#undef HAVE_STRUCT_IN6_ADDR
-
-/* Define to 1 if you have struct sockaddr_in6. */
-#undef HAVE_STRUCT_SOCKADDR_IN6
-
-/* if struct sockaddr_storage is defined */
-#undef HAVE_STRUCT_SOCKADDR_STORAGE
-
-/* Define to 1 if you have the timeval struct. */
-#undef HAVE_STRUCT_TIMEVAL
-
-/* Define to 1 if you have the <sys/ioctl.h> header file. */
-#undef HAVE_SYS_IOCTL_H
-
-/* Define to 1 if you have the <sys/param.h> header file. */
-#undef HAVE_SYS_PARAM_H
-
-/* Define to 1 if you have the <sys/select.h> header file. */
-#undef HAVE_SYS_SELECT_H
-
-/* Define to 1 if you have the <sys/socket.h> header file. */
-#undef HAVE_SYS_SOCKET_H
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#undef HAVE_SYS_STAT_H
-
-/* Define to 1 if you have the <sys/time.h> header file. */
-#undef HAVE_SYS_TIME_H
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#undef HAVE_SYS_TYPES_H
-
-/* Define to 1 if you have the <sys/uio.h> header file. */
-#undef HAVE_SYS_UIO_H
-
-/* Define to 1 if you have the <time.h> header file. */
-#undef HAVE_TIME_H
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H
-
-/* Define to 1 if you have the windows.h header file. */
-#undef HAVE_WINDOWS_H
-
-/* Define to 1 if you have the winsock2.h header file. */
-#undef HAVE_WINSOCK2_H
-
-/* Define to 1 if you have the winsock.h header file. */
-#undef HAVE_WINSOCK_H
-
-/* Define to 1 if you have the writev function. */
-#undef HAVE_WRITEV
-
-/* Define to 1 if you have the ws2tcpip.h header file. */
-#undef HAVE_WS2TCPIP_H
-
-/* Define to the sub-directory in which libtool stores uninstalled libraries.
-   */
-#undef LT_OBJDIR
-
-/* Define to 1 if you are building a native Windows target. */
-#undef NATIVE_WINDOWS
-
-/* Define to 1 if you need the malloc.h header file even with stdlib.h */
-#undef NEED_MALLOC_H
-
-/* Define to 1 if you need the memory.h header file even with stdlib.h */
-#undef NEED_MEMORY_H
-
-/* Define to 1 if _REENTRANT preprocessor symbol must be defined. */
-#undef NEED_REENTRANT
-
-/* Define to 1 if _THREAD_SAFE preprocessor symbol must be defined. */
-#undef NEED_THREAD_SAFE
-
-/* Define to 1 if your C compiler doesn't accept -c and -o together. */
-#undef NO_MINUS_C_MINUS_O
-
-/* cpu-machine-OS */
-#undef OS
-
-/* Name of package */
-#undef PACKAGE
-
-/* Define to the address where bug reports for this package should be sent. */
-#undef PACKAGE_BUGREPORT
-
-/* Define to the full name of this package. */
-#undef PACKAGE_NAME
-
-/* Define to the full name and version of this package. */
-#undef PACKAGE_STRING
-
-/* Define to the one symbol short name of this package. */
-#undef PACKAGE_TARNAME
-
-/* Define to the home page for this package. */
-#undef PACKAGE_URL
-
-/* Define to the version of this package. */
-#undef PACKAGE_VERSION
-
-/* a suitable file/device to read random data from */
-#undef RANDOM_FILE
-
-/* Define to the type of arg 1 for recvfrom. */
-#undef RECVFROM_TYPE_ARG1
-
-/* Define to the type pointed by arg 2 for recvfrom. */
-#undef RECVFROM_TYPE_ARG2
-
-/* Define to 1 if the type pointed by arg 2 for recvfrom is void. */
-#undef RECVFROM_TYPE_ARG2_IS_VOID
-
-/* Define to the type of arg 3 for recvfrom. */
-#undef RECVFROM_TYPE_ARG3
-
-/* Define to the type of arg 4 for recvfrom. */
-#undef RECVFROM_TYPE_ARG4
-
-/* Define to the type pointed by arg 5 for recvfrom. */
-#undef RECVFROM_TYPE_ARG5
-
-/* Define to 1 if the type pointed by arg 5 for recvfrom is void. */
-#undef RECVFROM_TYPE_ARG5_IS_VOID
-
-/* Define to the type pointed by arg 6 for recvfrom. */
-#undef RECVFROM_TYPE_ARG6
-
-/* Define to 1 if the type pointed by arg 6 for recvfrom is void. */
-#undef RECVFROM_TYPE_ARG6_IS_VOID
-
-/* Define to the function return type for recvfrom. */
-#undef RECVFROM_TYPE_RETV
-
-/* Define to the type of arg 1 for recv. */
-#undef RECV_TYPE_ARG1
-
-/* Define to the type of arg 2 for recv. */
-#undef RECV_TYPE_ARG2
-
-/* Define to the type of arg 3 for recv. */
-#undef RECV_TYPE_ARG3
-
-/* Define to the type of arg 4 for recv. */
-#undef RECV_TYPE_ARG4
-
-/* Define to the function return type for recv. */
-#undef RECV_TYPE_RETV
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#undef RETSIGTYPE
-
-/* Define to the type qualifier of arg 2 for send. */
-#undef SEND_QUAL_ARG2
-
-/* Define to the type of arg 1 for send. */
-#undef SEND_TYPE_ARG1
-
-/* Define to the type of arg 2 for send. */
-#undef SEND_TYPE_ARG2
-
-/* Define to the type of arg 3 for send. */
-#undef SEND_TYPE_ARG3
-
-/* Define to the type of arg 4 for send. */
-#undef SEND_TYPE_ARG4
-
-/* Define to the function return type for send. */
-#undef SEND_TYPE_RETV
-
-/* The size of `int', as computed by sizeof. */
-#undef SIZEOF_INT
-
-/* The size of `long', as computed by sizeof. */
-#undef SIZEOF_LONG
-
-/* The size of `size_t', as computed by sizeof. */
-#undef SIZEOF_SIZE_T
-
-/* The size of `struct in6_addr', as computed by sizeof. */
-#undef SIZEOF_STRUCT_IN6_ADDR
-
-/* The size of `struct in_addr', as computed by sizeof. */
-#undef SIZEOF_STRUCT_IN_ADDR
-
-/* The size of `time_t', as computed by sizeof. */
-#undef SIZEOF_TIME_T
-
-/* Define to 1 if you have the ANSI C header files. */
-#undef STDC_HEADERS
-
-/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-#undef TIME_WITH_SYS_TIME
-
-/* Define to disable non-blocking sockets. */
-#undef USE_BLOCKING_SOCKETS
-
-/* Version number of package */
-#undef VERSION
-
-/* Define to avoid automatic inclusion of winsock.h */
-#undef WIN32_LEAN_AND_MEAN
-
-/* 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 to 1 if OS is AIX. */
-#ifndef _ALL_SOURCE
-#  undef _ALL_SOURCE
-#endif
-
-/* Number of bits in a file offset, on hosts where this is settable. */
-#undef _FILE_OFFSET_BITS
-
-/* Define for large files, on AIX-style hosts. */
-#undef _LARGE_FILES
-
-/* Define to empty if `const' does not conform to ANSI C. */
-#undef const
-
-/* Type to use in place of in_addr_t when system does not provide it. */
-#undef in_addr_t
-
-/* Define to `unsigned int' if <sys/types.h> does not define. */
-#undef size_t
-
-/* the signed version of size_t */
-#undef ssize_t
diff --git a/src/other/ares/ares_data.c b/src/other/ares/ares_data.c
deleted file mode 100644
index 3a4c00c..0000000
--- a/src/other/ares/ares_data.c
+++ /dev/null
@@ -1,176 +0,0 @@
-/* $Id$ */
-
-/* Copyright (C) 2009-2010 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-
-#include "ares_setup.h"
-
-#include <stddef.h>
-
-#include "ares.h"
-#include "ares_data.h"
-#include "ares_private.h"
-
-
-/*
-** ares_free_data() - c-ares external API function.
-**
-** This function must be used by the application to free data memory that
-** has been internally allocated by some c-ares function and for which a
-** pointer has already been returned to the calling application. The list
-** of c-ares functions returning pointers that must be free'ed using this
-** function is:
-**
-**   ares_get_servers()
-**   ares_parse_srv_reply()
-**   ares_parse_txt_reply()
-*/
-
-void ares_free_data(void *dataptr)
-{
-  struct ares_data *ptr;
-
-  if (!dataptr)
-    return;
-
-#ifdef __INTEL_COMPILER
-#  pragma warning(push)
-#  pragma warning(disable:1684)
-   /* 1684: conversion from pointer to same-sized integral type */
-#endif
-
-  ptr = (void *)((char *)dataptr - offsetof(struct ares_data, data));
-
-#ifdef __INTEL_COMPILER
-#  pragma warning(pop)
-#endif
-
-  if (ptr->mark != ARES_DATATYPE_MARK)
-    return;
-
-  switch (ptr->type)
-    {
-      case ARES_DATATYPE_SRV_REPLY:
-
-        if (ptr->data.srv_reply.next)
-          ares_free_data(ptr->data.srv_reply.next);
-        if (ptr->data.srv_reply.host)
-          free(ptr->data.srv_reply.host);
-        break;
-
-      case ARES_DATATYPE_TXT_REPLY:
-
-        if (ptr->data.txt_reply.next)
-          ares_free_data(ptr->data.txt_reply.next);
-        if (ptr->data.txt_reply.txt)
-          free(ptr->data.txt_reply.txt);
-        break;
-
-      case ARES_DATATYPE_ADDR_NODE:
-
-        if (ptr->data.addr_node.next)
-          ares_free_data(ptr->data.addr_node.next);
-        break;
-
-      default:
-        return;
-    }
-
-  free(ptr);
-}
-
-
-/*
-** ares_malloc_data() - c-ares internal helper function.
-**
-** This function allocates memory for a c-ares private ares_data struct
-** for the specified ares_datatype, initializes c-ares private fields
-** and zero initializes those which later might be used from the public
-** API. It returns an interior pointer which can be passed by c-ares
-** functions to the calling application, and that must be free'ed using
-** c-ares external API function ares_free_data().
-*/
-
-void *ares_malloc_data(ares_datatype type)
-{
-  struct ares_data *ptr;
-
-  ptr = malloc(sizeof(struct ares_data));
-  if (!ptr)
-    return NULL;
-
-  switch (type)
-    {
-      case ARES_DATATYPE_SRV_REPLY:
-        ptr->data.srv_reply.next = NULL;
-        ptr->data.srv_reply.host = NULL;
-        ptr->data.srv_reply.priority = 0;
-        ptr->data.srv_reply.weight = 0;
-        ptr->data.srv_reply.port = 0;
-        break;
-
-      case ARES_DATATYPE_TXT_REPLY:
-        ptr->data.txt_reply.next = NULL;
-        ptr->data.txt_reply.txt = NULL;
-        ptr->data.txt_reply.length  = 0;
-        break;
-
-      case ARES_DATATYPE_ADDR_NODE:
-        ptr->data.addr_node.next = NULL;
-        ptr->data.addr_node.family = 0;
-        memset(&ptr->data.addr_node.addrV6, 0,
-          sizeof(ptr->data.addr_node.addrV6));
-
-      default:
-        free(ptr);
-        return NULL;
-    }
-
-  ptr->mark = ARES_DATATYPE_MARK;
-  ptr->type = type;
-
-  return &ptr->data;
-}
-
-
-/*
-** ares_get_datatype() - c-ares internal helper function.
-**
-** This function returns the ares_datatype of the data stored in a
-** private ares_data struct when given the public API pointer.
-*/
-
-ares_datatype ares_get_datatype(void * dataptr)
-{
-  struct ares_data *ptr;
-
-#ifdef __INTEL_COMPILER
-#  pragma warning(push)
-#  pragma warning(disable:1684)
-   /* 1684: conversion from pointer to same-sized integral type */
-#endif
-
-  ptr = (void *)((char *)dataptr - offsetof(struct ares_data, data));
-
-#ifdef __INTEL_COMPILER
-#  pragma warning(pop)
-#endif
-
-  if (ptr->mark == ARES_DATATYPE_MARK)
-    return ptr->type;
-
-  return ARES_DATATYPE_UNKNOWN;
-}
diff --git a/src/other/ares/ares_data.h b/src/other/ares/ares_data.h
deleted file mode 100644
index 02ff1bc..0000000
--- a/src/other/ares/ares_data.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/* $Id$ */
-
-/* Copyright (C) 2009-2010 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-typedef enum {
-  ARES_DATATYPE_UNKNOWN = 1,  /* unknown data type     - introduced in 1.7.0 */
-  ARES_DATATYPE_SRV_REPLY,    /* struct ares_srv_reply - introduced in 1.7.0 */
-  ARES_DATATYPE_TXT_REPLY,    /* struct ares_txt_reply - introduced in 1.7.0 */
-  ARES_DATATYPE_ADDR_NODE,    /* struct ares_addr_node - introduced in 1.7.1 */
-#if 0
-  ARES_DATATYPE_ADDR6TTL,     /* struct ares_addrttl   */
-  ARES_DATATYPE_ADDRTTL,      /* struct ares_addr6ttl  */
-  ARES_DATATYPE_HOSTENT,      /* struct hostent        */
-  ARES_DATATYPE_OPTIONS,      /* struct ares_options   */
-#endif
-  ARES_DATATYPE_LAST          /* not used              - introduced in 1.7.0 */
-} ares_datatype;
-
-#define ARES_DATATYPE_MARK 0xbead
-
-/*
- * ares_data struct definition is internal to c-ares and shall not
- * be exposed by the public API in order to allow future changes
- * and extensions to it without breaking ABI.  This will be used
- * internally by c-ares as the container of multiple types of data
- * dynamically allocated for which a reference will be returned
- * to the calling application.
- *
- * c-ares API functions returning a pointer to c-ares internally
- * allocated data will actually be returning an interior pointer
- * into this ares_data struct.
- *
- * All this is 'invisible' to the calling application, the only
- * requirement is that this kind of data must be free'ed by the
- * calling application using ares_free_data() with the pointer
- * it has received from a previous c-ares function call.
- */
-
-struct ares_data {
-  ares_datatype type;  /* Actual data type identifier. */
-  unsigned int  mark;  /* Private ares_data signature. */
-  union {
-    struct ares_txt_reply txt_reply;
-    struct ares_srv_reply srv_reply;
-    struct ares_addr_node addr_node;
-  } data;
-};
-
-void *ares_malloc_data(ares_datatype type);
-
-ares_datatype ares_get_datatype(void * dataptr);
diff --git a/src/other/ares/ares_destroy.c b/src/other/ares/ares_destroy.c
deleted file mode 100644
index d921666..0000000
--- a/src/other/ares/ares_destroy.c
+++ /dev/null
@@ -1,106 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- * Copyright (C) 2004-2010 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-#include <assert.h>
-#include <stdlib.h>
-#include "ares.h"
-#include "ares_private.h"
-
-void ares_destroy_options(struct ares_options *options)
-{
-  int i;
-
-  if(options->servers)
-    free(options->servers);
-  for (i = 0; i < options->ndomains; i++)
-    free(options->domains[i]);
-  free(options->domains);
-  if(options->sortlist)
-    free(options->sortlist);
-  free(options->lookups);
-}
-
-void ares_destroy(ares_channel channel)
-{
-  int i;
-  struct query *query;
-  struct list_node* list_head;
-  struct list_node* list_node;
-  
-  if (!channel)
-    return;
-
-  list_head = &(channel->all_queries);
-  for (list_node = list_head->next; list_node != list_head; )
-    {
-      query = list_node->data;
-      list_node = list_node->next;  /* since we're deleting the query */
-      query->callback(query->arg, ARES_EDESTRUCTION, 0, NULL, 0);
-      ares__free_query(query);
-    }
-#ifndef NDEBUG
-  /* Freeing the query should remove it from all the lists in which it sits,
-   * so all query lists should be empty now.
-   */
-  assert(ares__is_list_empty(&(channel->all_queries)));
-  for (i = 0; i < ARES_QID_TABLE_SIZE; i++)
-    {
-      assert(ares__is_list_empty(&(channel->queries_by_qid[i])));
-    }
-  for (i = 0; i < ARES_TIMEOUT_TABLE_SIZE; i++)
-    {
-      assert(ares__is_list_empty(&(channel->queries_by_timeout[i])));
-    }
-#endif
-
-  ares__destroy_servers_state(channel);
-
-  if (channel->domains) {
-    for (i = 0; i < channel->ndomains; i++)
-      free(channel->domains[i]);
-    free(channel->domains);
-  }
-
-  if(channel->sortlist)
-    free(channel->sortlist);
-
-  if (channel->lookups)
-    free(channel->lookups);
-
-  free(channel);
-}
-
-void ares__destroy_servers_state(ares_channel channel)
-{
-  struct server_state *server;
-  int i;
-
-  if (channel->servers)
-    {
-      for (i = 0; i < channel->nservers; i++)
-        {
-          server = &channel->servers[i];
-          ares__close_sockets(channel, server);
-          assert(ares__is_list_empty(&server->queries_to_server));
-        }
-      free(channel->servers);
-      channel->servers = NULL;
-    }
-  channel->nservers = -1;
-}
diff --git a/src/other/ares/ares_destroy.pdf b/src/other/ares/ares_destroy.pdf
deleted file mode 100644
index 4d2052a..0000000
Binary files a/src/other/ares/ares_destroy.pdf and /dev/null differ
diff --git a/src/other/ares/ares_destroy_options.pdf b/src/other/ares/ares_destroy_options.pdf
deleted file mode 100644
index 8be375e..0000000
Binary files a/src/other/ares/ares_destroy_options.pdf and /dev/null differ
diff --git a/src/other/ares/ares_dns.h b/src/other/ares/ares_dns.h
deleted file mode 100644
index 2187da6..0000000
--- a/src/other/ares/ares_dns.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#ifndef ARES__DNS_H
-#define ARES__DNS_H
-
-#define DNS__16BIT(p)                   (((p)[0] << 8) | (p)[1])
-#define DNS__32BIT(p)                   (((p)[0] << 24) | ((p)[1] << 16) | \
-                                         ((p)[2] << 8) | (p)[3])
-
-#define DNS__SET16BIT(p, v)  (((p)[0] = (unsigned char)(((v) >> 8) & 0xff)), \
-                              ((p)[1] = (unsigned char)((v) & 0xff)))
-#define DNS__SET32BIT(p, v)  (((p)[0] = (unsigned char)(((v) >> 24) & 0xff)), \
-                              ((p)[1] = (unsigned char)(((v) >> 16) & 0xff)), \
-                              ((p)[2] = (unsigned char)(((v) >> 8) & 0xff)), \
-                              ((p)[3] = (unsigned char)((v) & 0xff)))
-
-#if 0
-/* we cannot use this approach on systems where we can't access 16/32 bit
-   data on un-aligned addresses */
-#define DNS__16BIT(p)                   ntohs(*(unsigned short*)(p))
-#define DNS__32BIT(p)                   ntohl(*(unsigned long*)(p))
-#define DNS__SET16BIT(p, v)             *(unsigned short*)(p) = htons(v)
-#define DNS__SET32BIT(p, v)             *(unsigned long*)(p) = htonl(v)
-#endif
-
-/* Macros for parsing a DNS header */
-#define DNS_HEADER_QID(h)               DNS__16BIT(h)
-#define DNS_HEADER_QR(h)                (((h)[2] >> 7) & 0x1)
-#define DNS_HEADER_OPCODE(h)            (((h)[2] >> 3) & 0xf)
-#define DNS_HEADER_AA(h)                (((h)[2] >> 2) & 0x1)
-#define DNS_HEADER_TC(h)                (((h)[2] >> 1) & 0x1)
-#define DNS_HEADER_RD(h)                ((h)[2] & 0x1)
-#define DNS_HEADER_RA(h)                (((h)[3] >> 7) & 0x1)
-#define DNS_HEADER_Z(h)                 (((h)[3] >> 4) & 0x7)
-#define DNS_HEADER_RCODE(h)             ((h)[3] & 0xf)
-#define DNS_HEADER_QDCOUNT(h)           DNS__16BIT((h) + 4)
-#define DNS_HEADER_ANCOUNT(h)           DNS__16BIT((h) + 6)
-#define DNS_HEADER_NSCOUNT(h)           DNS__16BIT((h) + 8)
-#define DNS_HEADER_ARCOUNT(h)           DNS__16BIT((h) + 10)
-
-/* Macros for constructing a DNS header */
-#define DNS_HEADER_SET_QID(h, v)      DNS__SET16BIT(h, v)
-#define DNS_HEADER_SET_QR(h, v)       ((h)[2] |= (unsigned char)(((v) & 0x1) << 7))
-#define DNS_HEADER_SET_OPCODE(h, v)   ((h)[2] |= (unsigned char)(((v) & 0xf) << 3))
-#define DNS_HEADER_SET_AA(h, v)       ((h)[2] |= (unsigned char)(((v) & 0x1) << 2))
-#define DNS_HEADER_SET_TC(h, v)       ((h)[2] |= (unsigned char)(((v) & 0x1) << 1))
-#define DNS_HEADER_SET_RD(h, v)       ((h)[2] |= (unsigned char)((v) & 0x1))
-#define DNS_HEADER_SET_RA(h, v)       ((h)[3] |= (unsigned char)(((v) & 0x1) << 7))
-#define DNS_HEADER_SET_Z(h, v)        ((h)[3] |= (unsigned char)(((v) & 0x7) << 4))
-#define DNS_HEADER_SET_RCODE(h, v)    ((h)[3] |= (unsigned char)((v) & 0xf))
-#define DNS_HEADER_SET_QDCOUNT(h, v)  DNS__SET16BIT((h) + 4, v)
-#define DNS_HEADER_SET_ANCOUNT(h, v)  DNS__SET16BIT((h) + 6, v)
-#define DNS_HEADER_SET_NSCOUNT(h, v)  DNS__SET16BIT((h) + 8, v)
-#define DNS_HEADER_SET_ARCOUNT(h, v)  DNS__SET16BIT((h) + 10, v)
-
-/* Macros for parsing the fixed part of a DNS question */
-#define DNS_QUESTION_TYPE(q)            DNS__16BIT(q)
-#define DNS_QUESTION_CLASS(q)           DNS__16BIT((q) + 2)
-
-/* Macros for constructing the fixed part of a DNS question */
-#define DNS_QUESTION_SET_TYPE(q, v)     DNS__SET16BIT(q, v)
-#define DNS_QUESTION_SET_CLASS(q, v)    DNS__SET16BIT((q) + 2, v)
-
-/* Macros for parsing the fixed part of a DNS resource record */
-#define DNS_RR_TYPE(r)                  DNS__16BIT(r)
-#define DNS_RR_CLASS(r)                 DNS__16BIT((r) + 2)
-#define DNS_RR_TTL(r)                   DNS__32BIT((r) + 4)
-#define DNS_RR_LEN(r)                   DNS__16BIT((r) + 8)
-
-/* Macros for constructing the fixed part of a DNS resource record */
-#define DNS_RR_SET_TYPE(r)              DNS__SET16BIT(r, v)
-#define DNS_RR_SET_CLASS(r)             DNS__SET16BIT((r) + 2, v)
-#define DNS_RR_SET_TTL(r)               DNS__SET32BIT((r) + 4, v)
-#define DNS_RR_SET_LEN(r)               DNS__SET16BIT((r) + 8, v)
-
-#endif /* ARES__DNS_H */
diff --git a/src/other/ares/ares_dup.pdf b/src/other/ares/ares_dup.pdf
deleted file mode 100644
index c48557b..0000000
Binary files a/src/other/ares/ares_dup.pdf and /dev/null differ
diff --git a/src/other/ares/ares_expand_name.c b/src/other/ares/ares_expand_name.c
deleted file mode 100644
index fd3220d..0000000
--- a/src/other/ares/ares_expand_name.c
+++ /dev/null
@@ -1,194 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#include <stdlib.h>
-#include "ares.h"
-#include "ares_private.h" /* for the memdebug */
-
-static int name_length(const unsigned char *encoded, const unsigned char *abuf,
-                       int alen);
-
-/* Expand an RFC1035-encoded domain name given by encoded.  The
- * containing message is given by abuf and alen.  The result given by
- * *s, which is set to a NUL-terminated allocated buffer.  *enclen is
- * set to the length of the encoded name (not the length of the
- * expanded name; the goal is to tell the caller how many bytes to
- * move forward to get past the encoded name).
- *
- * In the simple case, an encoded name is a series of labels, each
- * composed of a one-byte length (limited to values between 0 and 63
- * inclusive) followed by the label contents.  The name is terminated
- * by a zero-length label.
- *
- * In the more complicated case, a label may be terminated by an
- * indirection pointer, specified by two bytes with the high bits of
- * the first byte (corresponding to INDIR_MASK) set to 11.  With the
- * two high bits of the first byte stripped off, the indirection
- * pointer gives an offset from the beginning of the containing
- * message with more labels to decode.  Indirection can happen an
- * arbitrary number of times, so we have to detect loops.
- *
- * Since the expanded name uses '.' as a label separator, we use
- * backslashes to escape periods or backslashes in the expanded name.
- */
-
-int ares_expand_name(const unsigned char *encoded, const unsigned char *abuf,
-                     int alen, char **s, long *enclen)
-{
-  int len, indir = 0;
-  char *q;
-  const unsigned char *p;
-  union {
-    ssize_t sig;
-     size_t uns;
-  } nlen;
-
-  nlen.sig = name_length(encoded, abuf, alen);
-  if (nlen.sig < 0)
-    return ARES_EBADNAME;
-
-  *s = malloc(nlen.uns + 1);
-  if (!*s)
-    return ARES_ENOMEM;
-  q = *s;
-
-  if (nlen.uns == 0) {
-    /* RFC2181 says this should be ".": the root of the DNS tree.
-     * Since this function strips trailing dots though, it becomes ""
-     */
-    q[0] = '\0';
-    *enclen = 1;  /* the caller should move one byte to get past this */
-    return ARES_SUCCESS;
-  }
-
-  /* No error-checking necessary; it was all done by name_length(). */
-  p = encoded;
-  while (*p)
-    {
-      if ((*p & INDIR_MASK) == INDIR_MASK)
-        {
-          if (!indir)
-            {
-              *enclen = p + 2 - encoded;
-              indir = 1;
-            }
-          p = abuf + ((*p & ~INDIR_MASK) << 8 | *(p + 1));
-        }
-      else
-        {
-          len = *p;
-          p++;
-          while (len--)
-            {
-              if (*p == '.' || *p == '\\')
-                *q++ = '\\';
-              *q++ = *p;
-              p++;
-            }
-          *q++ = '.';
-        }
-    }
-  if (!indir)
-    *enclen = p + 1 - encoded;
-
-  /* Nuke the trailing period if we wrote one. */
-  if (q > *s)
-    *(q - 1) = 0;
-  else
-    *q = 0; /* zero terminate */
-
-  return ARES_SUCCESS;
-}
-
-/* Return the length of the expansion of an encoded domain name, or
- * -1 if the encoding is invalid.
- */
-static int name_length(const unsigned char *encoded, const unsigned char *abuf,
-                       int alen)
-{
-  int n = 0, offset, indir = 0;
-
-  /* Allow the caller to pass us abuf + alen and have us check for it. */
-  if (encoded == abuf + alen)
-    return -1;
-
-  while (*encoded)
-    {
-      if ((*encoded & INDIR_MASK) == INDIR_MASK)
-        {
-          /* Check the offset and go there. */
-          if (encoded + 1 >= abuf + alen)
-            return -1;
-          offset = (*encoded & ~INDIR_MASK) << 8 | *(encoded + 1);
-          if (offset >= alen)
-            return -1;
-          encoded = abuf + offset;
-
-          /* If we've seen more indirects than the message length,
-           * then there's a loop.
-           */
-          if (++indir > alen)
-            return -1;
-        }
-      else
-        {
-          offset = *encoded;
-          if (encoded + offset + 1 >= abuf + alen)
-            return -1;
-          encoded++;
-          while (offset--)
-            {
-              n += (*encoded == '.' || *encoded == '\\') ? 2 : 1;
-              encoded++;
-            }
-          n++;
-        }
-    }
-
-  /* If there were any labels at all, then the number of dots is one
-   * less than the number of labels, so subtract one.
-   */
-  return (n) ? n - 1 : n;
-}
-
-/* Like ares_expand_name but returns EBADRESP in case of invalid input. */
-int ares__expand_name_for_response(const unsigned char *encoded,
-                                   const unsigned char *abuf, int alen,
-                                   char **s, long *enclen)
-{
-  int status = ares_expand_name(encoded, abuf, alen, s, enclen);
-  if (status == ARES_EBADNAME)
-    status = ARES_EBADRESP;
-  return status;
-}
diff --git a/src/other/ares/ares_expand_name.pdf b/src/other/ares/ares_expand_name.pdf
deleted file mode 100644
index b8c0aa5..0000000
Binary files a/src/other/ares/ares_expand_name.pdf and /dev/null differ
diff --git a/src/other/ares/ares_expand_string.c b/src/other/ares/ares_expand_string.c
deleted file mode 100644
index 3b7b341..0000000
--- a/src/other/ares/ares_expand_string.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-
-#include <string.h>
-#include <stdlib.h>
-#include "ares.h"
-#include "ares_private.h" /* for the memdebug */
-
-/* Simply decodes a length-encoded character string. The first byte of the
- * input is the length of the string to be returned and the bytes thereafter
- * are the characters of the string. The returned result will be NULL
- * terminated.
- */
-int ares_expand_string(const unsigned char *encoded,
-                       const unsigned char *abuf,
-                       int alen,
-                       unsigned char **s,
-                       long *enclen)
-{
-  unsigned char *q;
-  union {
-    ssize_t sig;
-     size_t uns;
-  } elen;
-
-  if (encoded == abuf+alen)
-    return ARES_EBADSTR;
-
-  elen.uns = *encoded;
-  if (encoded+elen.sig+1 > abuf+alen)
-    return ARES_EBADSTR;
-
-  encoded++;
-
-  *s = malloc(elen.uns+1);
-  if (*s == NULL)
-    return ARES_ENOMEM;
-  q = *s;
-  strncpy((char *)q, (char *)encoded, elen.uns);
-  q[elen.uns] = '\0';
-
-  *s = q;
-
-  *enclen = (long)(elen.sig+1);
-
-  return ARES_SUCCESS;
-}
-
diff --git a/src/other/ares/ares_expand_string.pdf b/src/other/ares/ares_expand_string.pdf
deleted file mode 100644
index 5b6f89e..0000000
Binary files a/src/other/ares/ares_expand_string.pdf and /dev/null differ
diff --git a/src/other/ares/ares_fds.c b/src/other/ares/ares_fds.c
deleted file mode 100644
index bbf5c45..0000000
--- a/src/other/ares/ares_fds.c
+++ /dev/null
@@ -1,63 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-
-#include "ares.h"
-#include "ares_private.h"
-
-int ares_fds(ares_channel channel, fd_set *read_fds, fd_set *write_fds)
-{
-  struct server_state *server;
-  ares_socket_t nfds;
-  int i;
-
-  /* Are there any active queries? */
-  int active_queries = !ares__is_list_empty(&(channel->all_queries));
-
-  nfds = 0;
-  for (i = 0; i < channel->nservers; i++)
-    {
-      server = &channel->servers[i];
-      /* We only need to register interest in UDP sockets if we have
-       * outstanding queries.
-       */
-      if (active_queries && server->udp_socket != ARES_SOCKET_BAD)
-        {
-          FD_SET(server->udp_socket, read_fds);
-          if (server->udp_socket >= nfds)
-            nfds = server->udp_socket + 1;
-        }
-      /* We always register for TCP events, because we want to know
-       * when the other side closes the connection, so we don't waste
-       * time trying to use a broken connection.
-       */
-      if (server->tcp_socket != ARES_SOCKET_BAD)
-       {
-         FD_SET(server->tcp_socket, read_fds);
-         if (server->qhead)
-           FD_SET(server->tcp_socket, write_fds);
-         if (server->tcp_socket >= nfds)
-           nfds = server->tcp_socket + 1;
-	}
-    }
-  return (int)nfds;
-}
diff --git a/src/other/ares/ares_fds.pdf b/src/other/ares/ares_fds.pdf
deleted file mode 100644
index bf8735f..0000000
Binary files a/src/other/ares/ares_fds.pdf and /dev/null differ
diff --git a/src/other/ares/ares_free_data.pdf b/src/other/ares/ares_free_data.pdf
deleted file mode 100644
index db4e922..0000000
Binary files a/src/other/ares/ares_free_data.pdf and /dev/null differ
diff --git a/src/other/ares/ares_free_hostent.c b/src/other/ares/ares_free_hostent.c
deleted file mode 100644
index f07fd7c..0000000
--- a/src/other/ares/ares_free_hostent.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-#include <stdlib.h>
-
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-
-#include "ares.h"
-#include "ares_private.h" /* for memdebug */
-
-void ares_free_hostent(struct hostent *host)
-{
-  char **p;
-
-  free((char *)(host->h_name));
-  for (p = host->h_aliases; *p; p++)
-    free(*p);
-  free(host->h_aliases);
-  free(host->h_addr_list[0]); /* no matter if there is one or many entries,
-                                 there is only one malloc for all of them */
-  free(host->h_addr_list);
-  free(host);
-}
diff --git a/src/other/ares/ares_free_hostent.pdf b/src/other/ares/ares_free_hostent.pdf
deleted file mode 100644
index cf1b2eb..0000000
--- a/src/other/ares/ares_free_hostent.pdf
+++ /dev/null
@@ -1,111 +0,0 @@
-%PDF-1.4
-%Ç쏢
-5 0 obj
-<</Length 6 0 R/Filter /FlateDecode>>
-stream
-xœ¥UÛnÛF}çWЇ®k³»¼.PpS%V`K©Ä>v!ÐÔêÒJ¤Â]5ÐGõ;Ë‹(ÒrZ ‰ÜË™3sæÌ`”³Ÿú;Ý;og!¬µÃàþ¯//7@ý•îá—7EöE¼rªsB¡çA¼w„Ë) þêÛÙh¾x?wÓy<šÄOÄ}Àõ׃øOgȨàâ$"Pé[¯»wÈävð#…«Ü§¾t8^:äad¶!	F=»ÌÊH’BéŪPj±ÉµQ™à=>‚}mŠcjŽ…‚d·ËÓĨ%<ŸÀ‚Õ1KÍ6ÏtrÕÃò€FeóÏ“é§ùxÞn«#¯ãx$?l³tw\*ø))<¤RrI”¦›ŸÄ-w^r+oDºç
]IeÅõ‘l—`OG¤äƒ?(c!>‰=‘Š
4Dß”·¿qÖ”Ì÷)–ªJžÝÕ
ñƒ@Ö€¤ªK—·°¨ü‚û¯£ù»ÙøS<žNº¥hé“x£ªµs§"’QÃi¹!²‰xÍÍ
0EB\p«™4·G(4ÎDunf²¬uS1°õ֐téEH^„5»nªº±‡•¼ŽŽtt‘g
-ò˜ê«ãÌm(L£ç·ÕïÒ;Ø"2[;—hµHv•¨ÃîTõB—¨d4bM¦ÈMËïg0ˆ®Aàß5AýªßÎÍ|ñ+·`Uϱú]Ñǧ‘‹¼þWS,.Ö_ãR/”M‘è•Îóñ§­Éd:p±O$‰GóÞu­
-åB”"ØjÈr™J•ÖIq‚'’dËæuš…J
Ú•ÉK%•õîÙÅ!Ñ5;ìbŠ*yNÒ¿ZUÀ*ïgËrïÄoúŠXlôÂfÅX”çS–ìÕÕì ²¸l*ô€Sß‹^)ÇK”d¹,Z·õßñ.kàhz!ÊýÚ'
yÕ}ÃÒ5¿nw;HŽ&ß'fkórªr¨é¦—DܼQYéþ‚EXážuw2[(<’ék’è˜ñh·÷óéëf\[päµJë.<*J³o7‚Ê ±RæìæŠu6;Z×»À¨Úð0(þúŒ_àTÈïÈô$[˜wAêâ|1à‡žçÓ 3Sno…†ƒ"p;ˆï¦³?t÷<j>娩{èOgó\ßµ×zV´Í ;.užÝÀÃ8†q†mk…‹3d~ÂѰו<%õ}¼é,¢wùáln§b»ÞÀ#;#¬jÐ’tsÔʍ·j³5GSÎŽx2¢ÒM–ïòõiଉ|­Îf‘‡èSÎ/À~,£.|<bÙëKn¾eU;?áöÕ(v~ÃÏ¿_Rˆendstream
-endobj
-6 0 obj
-1006
-endobj
-4 0 obj
-<</Type/Page/MediaBox [0 0 612 792]
-/Rotate 0/Parent 3 0 R
-/Resources<</ProcSet[/PDF /Text]
-/ExtGState 11 0 R
-/Font 12 0 R
->>
-/Contents 5 0 R
->>
-endobj
-3 0 obj
-<< /Type /Pages /Kids [
-4 0 R
-] /Count 1
->>
-endobj
-1 0 obj
-<</Type /Catalog /Pages 3 0 R
-/Metadata 14 0 R
->>
-endobj
-7 0 obj
-<</Type/ExtGState
-/OPM 1>>endobj
-11 0 obj
-<</R7
-7 0 R>>
-endobj
-12 0 obj
-<</R10
-10 0 R/R9
-9 0 R/R8
-8 0 R>>
-endobj
-10 0 obj
-<</BaseFont/Times-Italic/Type/Font
-/Subtype/Type1>>
-endobj
-9 0 obj
-<</BaseFont/Times-Bold/Type/Font
-/Subtype/Type1>>
-endobj
-8 0 obj
-<</BaseFont/Times-Roman/Type/Font
-/Encoding 13 0 R/Subtype/Type1>>
-endobj
-13 0 obj
-<</Type/Encoding/Differences[
-173/minus]>>
-endobj
-14 0 obj
-<</Type/Metadata
-/Subtype/XML/Length 1325>>stream
-<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d'?>
-<?adobe-xap-filters esc="CRLF"?>
-<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
-<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='32e43238-112b-11ed-0000-2119b054c4d' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.04'/>
-<rdf:Description rdf:about='32e43238-112b-11ed-0000-2119b054c4d' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2012-07-28T16:47:54-07:00</xmp:ModifyDate>
-<xmp:CreateDate>2012-07-28T16:47:54-07:00</xmp:CreateDate>
-<xmp:CreatorTool>groff version 1.21</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='32e43238-112b-11ed-0000-2119b054c4d' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:32e43238-112b-11ed-0000-2119b054c4d '/>
-<rdf:Description rdf:about='32e43238-112b-11ed-0000-2119b054c4d' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
-</rdf:RDF>
-</x:xmpmeta>
-                                                                        
-                                                                        
-<?xpacket end='w'?>
-endstream
-endobj
-2 0 obj
-<</Producer(GPL Ghostscript 9.04)
-/CreationDate(D:20120728164754-07'00')
-/ModDate(D:20120728164754-07'00')
-/Creator(groff version 1.21)>>endobj
-xref
-0 15
-0000000000 65535 f 
-0000001330 00000 n 
-0000003192 00000 n 
-0000001271 00000 n 
-0000001111 00000 n 
-0000000015 00000 n 
-0000001091 00000 n 
-0000001395 00000 n 
-0000001649 00000 n 
-0000001584 00000 n 
-0000001516 00000 n 
-0000001436 00000 n 
-0000001466 00000 n 
-0000001731 00000 n 
-0000001790 00000 n 
-trailer
-<< /Size 15 /Root 1 0 R /Info 2 0 R
-/ID [<0107A9E4C7E5E7E6AB57640E11BB5CE7><0107A9E4C7E5E7E6AB57640E11BB5CE7>]
->>
-startxref
-3344
-%%EOF
diff --git a/src/other/ares/ares_free_string.c b/src/other/ares/ares_free_string.c
deleted file mode 100644
index dc27f5b..0000000
--- a/src/other/ares/ares_free_string.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* $Id$ */
-
-/* Copyright 2000 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-#include <stdlib.h>
-#include "ares.h"
-#include "ares_private.h"
-
-void ares_free_string(void *str)
-{
-  free(str);
-}
diff --git a/src/other/ares/ares_free_string.pdf b/src/other/ares/ares_free_string.pdf
deleted file mode 100644
index 71d12c4..0000000
Binary files a/src/other/ares/ares_free_string.pdf and /dev/null differ
diff --git a/src/other/ares/ares_get_servers.pdf b/src/other/ares/ares_get_servers.pdf
deleted file mode 100644
index da4788a..0000000
Binary files a/src/other/ares/ares_get_servers.pdf and /dev/null differ
diff --git a/src/other/ares/ares_gethostbyaddr.c b/src/other/ares/ares_gethostbyaddr.c
deleted file mode 100644
index a2c3a90..0000000
--- a/src/other/ares/ares_gethostbyaddr.c
+++ /dev/null
@@ -1,291 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "ares.h"
-#include "inet_net_pton.h"
-#include "ares_private.h"
-
-#ifdef WATT32
-#undef WIN32
-#endif
-
-struct addr_query {
-  /* Arguments passed to ares_gethostbyaddr() */
-  ares_channel channel;
-  struct ares_addr addr;
-  ares_host_callback callback;
-  void *arg;
-
-  const char *remaining_lookups;
-  int timeouts;
-};
-
-static void next_lookup(struct addr_query *aquery);
-static void addr_callback(void *arg, int status, int timeouts,
-                          unsigned char *abuf, int alen);
-static void end_aquery(struct addr_query *aquery, int status,
-                       struct hostent *host);
-static int file_lookup(struct ares_addr *addr, struct hostent **host);
-static void ptr_rr_name(char *name, const struct ares_addr *addr);
-
-void ares_gethostbyaddr(ares_channel channel, const void *addr, int addrlen,
-                        int family, ares_host_callback callback, void *arg)
-{
-  struct addr_query *aquery;
-
-  if (family != AF_INET && family != AF_INET6)
-    {
-      callback(arg, ARES_ENOTIMP, 0, NULL);
-      return;
-    }
-
-  if ((family == AF_INET && addrlen != sizeof(aquery->addr.addrV4)) ||
-      (family == AF_INET6 && addrlen != sizeof(aquery->addr.addrV6)))
-    {
-      callback(arg, ARES_ENOTIMP, 0, NULL);
-      return;
-    }
-
-  aquery = malloc(sizeof(struct addr_query));
-  if (!aquery)
-    {
-      callback(arg, ARES_ENOMEM, 0, NULL);
-      return;
-    }
-  aquery->channel = channel;
-  if (family == AF_INET)
-    memcpy(&aquery->addr.addrV4, addr, sizeof(aquery->addr.addrV4));
-  else
-    memcpy(&aquery->addr.addrV6, addr, sizeof(aquery->addr.addrV6));
-  aquery->addr.family = family;
-  aquery->callback = callback;
-  aquery->arg = arg;
-  aquery->remaining_lookups = channel->lookups;
-  aquery->timeouts = 0;
-
-  next_lookup(aquery);
-}
-
-static void next_lookup(struct addr_query *aquery)
-{
-  const char *p;
-  char name[128];
-  int status;
-  struct hostent *host;
-
-  for (p = aquery->remaining_lookups; *p; p++)
-    {
-      switch (*p)
-        {
-        case 'b':
-          ptr_rr_name(name, &aquery->addr);
-          aquery->remaining_lookups = p + 1;
-          ares_query(aquery->channel, name, C_IN, T_PTR, addr_callback,
-                     aquery);
-          return;
-        case 'f':
-          status = file_lookup(&aquery->addr, &host);
-
-          /* this status check below previously checked for !ARES_ENOTFOUND,
-             but we should not assume that this single error code is the one
-             that can occur, as that is in fact no longer the case */
-          if (status == ARES_SUCCESS)
-            {
-              end_aquery(aquery, status, host);
-              return;
-            }
-          break;
-        }
-    }
-  end_aquery(aquery, ARES_ENOTFOUND, NULL);
-}
-
-static void addr_callback(void *arg, int status, int timeouts,
-                          unsigned char *abuf, int alen)
-{
-  struct addr_query *aquery = (struct addr_query *) arg;
-  struct hostent *host;
-  size_t addrlen;
-
-  aquery->timeouts += timeouts;
-  if (status == ARES_SUCCESS)
-    {
-      if (aquery->addr.family == AF_INET)
-        {
-          addrlen = sizeof(aquery->addr.addrV4);
-          status = ares_parse_ptr_reply(abuf, alen, &aquery->addr.addrV4,
-                                        (int)addrlen, AF_INET, &host);
-        }
-      else
-        {
-          addrlen = sizeof(aquery->addr.addrV6);
-          status = ares_parse_ptr_reply(abuf, alen, &aquery->addr.addrV6,
-                                        (int)addrlen, AF_INET6, &host);
-        }
-      end_aquery(aquery, status, host);
-    }
-  else if (status == ARES_EDESTRUCTION)
-    end_aquery(aquery, status, NULL);
-  else
-    next_lookup(aquery);
-}
-
-static void end_aquery(struct addr_query *aquery, int status,
-                       struct hostent *host)
-{
-  aquery->callback(aquery->arg, status, aquery->timeouts, host);
-  if (host)
-    ares_free_hostent(host);
-  free(aquery);
-}
-
-static int file_lookup(struct ares_addr *addr, struct hostent **host)
-{
-  FILE *fp;
-  int status;
-  int error;
-
-#ifdef WIN32
-  char PATH_HOSTS[MAX_PATH];
-  if (IS_NT()) {
-    char tmp[MAX_PATH];
-    HKEY hkeyHosts;
-
-    if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, WIN_NS_NT_KEY, 0, KEY_READ, &hkeyHosts)
-        == ERROR_SUCCESS)
-    {
-      DWORD dwLength = MAX_PATH;
-      RegQueryValueEx(hkeyHosts, DATABASEPATH, NULL, NULL, (LPBYTE)tmp,
-                      &dwLength);
-      ExpandEnvironmentStrings(tmp, PATH_HOSTS, MAX_PATH);
-      RegCloseKey(hkeyHosts);
-    }
-  }
-  else
-    GetWindowsDirectory(PATH_HOSTS, MAX_PATH);
-
-  strcat(PATH_HOSTS, WIN_PATH_HOSTS);
-
-#elif defined(WATT32)
-  extern const char *_w32_GetHostsFile (void);
-  const char *PATH_HOSTS = _w32_GetHostsFile();
-
-  if (!PATH_HOSTS)
-    return ARES_ENOTFOUND;
-#endif
-
-  fp = fopen(PATH_HOSTS, "r");
-  if (!fp)
-    {
-      error = ERRNO;
-      switch(error)
-        {
-        case ENOENT:
-        case ESRCH:
-          return ARES_ENOTFOUND;
-        default:
-          DEBUGF(fprintf(stderr, "fopen() failed with error: %d %s\n",
-                         error, strerror(error)));
-          DEBUGF(fprintf(stderr, "Error opening file: %s\n",
-                         PATH_HOSTS));
-          *host = NULL;
-          return ARES_EFILE;
-        }
-    }
-  while ((status = ares__get_hostent(fp, addr->family, host)) == ARES_SUCCESS)
-    {
-      if (addr->family != (*host)->h_addrtype)
-        {
-          ares_free_hostent(*host);
-          continue;
-        }
-      if (addr->family == AF_INET)
-        {
-          if (memcmp((*host)->h_addr, &addr->addrV4, sizeof(addr->addrV4)) == 0)
-            break;
-        }
-      else if (addr->family == AF_INET6)
-        {
-          if (memcmp((*host)->h_addr, &addr->addrV6, sizeof(addr->addrV6)) == 0)
-            break;
-        }
-      ares_free_hostent(*host);
-    }
-  fclose(fp);
-  if (status == ARES_EOF)
-    status = ARES_ENOTFOUND;
-  if (status != ARES_SUCCESS)
-    *host = NULL;
-  return status;
-}
-
-static void ptr_rr_name(char *name, const struct ares_addr *addr)
-{
-  if (addr->family == AF_INET)
-    {
-       unsigned long laddr = ntohl(addr->addrV4.s_addr);
-       int a1 = (int)((laddr >> 24) & 0xff);
-       int a2 = (int)((laddr >> 16) & 0xff);
-       int a3 = (int)((laddr >> 8) & 0xff);
-       int a4 = (int)(laddr & 0xff);
-       sprintf(name, "%d.%d.%d.%d.in-addr.arpa", a4, a3, a2, a1);
-    }
-  else
-    {
-       unsigned char *bytes = (unsigned char *)&addr->addrV6;
-       /* There are too many arguments to do this in one line using
-        * minimally C89-compliant compilers */
-       sprintf(name,
-                "%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.",
-                bytes[15]&0xf, bytes[15] >> 4, bytes[14]&0xf, bytes[14] >> 4,
-                bytes[13]&0xf, bytes[13] >> 4, bytes[12]&0xf, bytes[12] >> 4,
-                bytes[11]&0xf, bytes[11] >> 4, bytes[10]&0xf, bytes[10] >> 4,
-                bytes[9]&0xf, bytes[9] >> 4, bytes[8]&0xf, bytes[8] >> 4);
-       sprintf(name+strlen(name),
-                "%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.%x.ip6.arpa",
-                bytes[7]&0xf, bytes[7] >> 4, bytes[6]&0xf, bytes[6] >> 4,
-                bytes[5]&0xf, bytes[5] >> 4, bytes[4]&0xf, bytes[4] >> 4,
-                bytes[3]&0xf, bytes[3] >> 4, bytes[2]&0xf, bytes[2] >> 4,
-                bytes[1]&0xf, bytes[1] >> 4, bytes[0]&0xf, bytes[0] >> 4);
-    }
-}
diff --git a/src/other/ares/ares_gethostbyaddr.pdf b/src/other/ares/ares_gethostbyaddr.pdf
deleted file mode 100644
index 2e79dbb..0000000
Binary files a/src/other/ares/ares_gethostbyaddr.pdf and /dev/null differ
diff --git a/src/other/ares/ares_gethostbyname.c b/src/other/ares/ares_gethostbyname.c
deleted file mode 100644
index ebad670..0000000
--- a/src/other/ares/ares_gethostbyname.c
+++ /dev/null
@@ -1,513 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-#ifdef HAVE_STRINGS_H
-#include <strings.h>
-#endif
-
-#include "ares.h"
-#include "inet_net_pton.h"
-#include "bitncmp.h"
-#include "ares_private.h"
-
-#ifdef WATT32
-#undef WIN32
-#endif
-
-struct host_query {
-  /* Arguments passed to ares_gethostbyname() */
-  ares_channel channel;
-  char *name;
-  ares_host_callback callback;
-  void *arg;
-  int sent_family; /* this family is what was is being used */
-  int want_family; /* this family is what is asked for in the API */
-  const char *remaining_lookups;
-  int timeouts;
-};
-
-static void next_lookup(struct host_query *hquery, int status_code);
-static void host_callback(void *arg, int status, int timeouts,
-                          unsigned char *abuf, int alen);
-static void end_hquery(struct host_query *hquery, int status,
-                       struct hostent *host);
-static int fake_hostent(const char *name, int family,
-                        ares_host_callback callback, void *arg);
-static int file_lookup(const char *name, int family, struct hostent **host);
-static void sort_addresses(struct hostent *host,
-                           const struct apattern *sortlist, int nsort);
-static void sort6_addresses(struct hostent *host,
-                            const struct apattern *sortlist, int nsort);
-static int get_address_index(const struct in_addr *addr,
-                             const struct apattern *sortlist, int nsort);
-static int get6_address_index(const struct ares_in6_addr *addr,
-                              const struct apattern *sortlist, int nsort);
-
-void ares_gethostbyname(ares_channel channel, const char *name, int family,
-                        ares_host_callback callback, void *arg)
-{
-  struct host_query *hquery;
-
-  /* Right now we only know how to look up Internet addresses - and unspec
-     means try both basically. */
-  switch (family) {
-  case AF_INET:
-  case AF_INET6:
-  case AF_UNSPEC:
-    break;
-  default:
-    callback(arg, ARES_ENOTIMP, 0, NULL);
-    return;
-  }
-
-  if (fake_hostent(name, family, callback, arg))
-    return;
-
-  /* Allocate and fill in the host query structure. */
-  hquery = malloc(sizeof(struct host_query));
-  if (!hquery)
-    {
-      callback(arg, ARES_ENOMEM, 0, NULL);
-      return;
-    }
-  hquery->channel = channel;
-  hquery->name = strdup(name);
-  hquery->want_family = family;
-  hquery->sent_family = -1; /* nothing is sent yet */
-  if (!hquery->name) {
-    free(hquery);
-    callback(arg, ARES_ENOMEM, 0, NULL);
-    return;
-  }
-  hquery->callback = callback;
-  hquery->arg = arg;
-  hquery->remaining_lookups = channel->lookups;
-  hquery->timeouts = 0;
-
-  /* Start performing lookups according to channel->lookups. */
-  next_lookup(hquery, ARES_ECONNREFUSED /* initial error code */);
-}
-
-static void next_lookup(struct host_query *hquery, int status_code)
-{
-  const char *p;
-  struct hostent *host;
-  int status = status_code;
-
-  for (p = hquery->remaining_lookups; *p; p++)
-    {
-      switch (*p)
-        {
-        case 'b':
-          /* DNS lookup */
-          hquery->remaining_lookups = p + 1;
-          if ((hquery->want_family == AF_INET6) ||
-              (hquery->want_family == AF_UNSPEC)) {
-            /* if inet6 or unspec, start out with AAAA */
-            hquery->sent_family = AF_INET6;
-            ares_search(hquery->channel, hquery->name, C_IN, T_AAAA,
-                        host_callback, hquery);
-          }
-          else {
-            hquery->sent_family = AF_INET;
-            ares_search(hquery->channel, hquery->name, C_IN, T_A, host_callback,
-                        hquery);
-          }
-          return;
-
-        case 'f':
-          /* Host file lookup */
-          status = file_lookup(hquery->name, hquery->want_family, &host);
-
-          /* this status check below previously checked for !ARES_ENOTFOUND,
-             but we should not assume that this single error code is the one
-             that can occur, as that is in fact no longer the case */
-          if (status == ARES_SUCCESS)
-            {
-              end_hquery(hquery, status, host);
-              return;
-            }
-          status = status_code;   /* Use original status code */
-          break;
-        }
-    }
-  end_hquery(hquery, status, NULL);
-}
-
-static void host_callback(void *arg, int status, int timeouts,
-                          unsigned char *abuf, int alen)
-{
-  struct host_query *hquery = (struct host_query *) arg;
-  ares_channel channel = hquery->channel;
-  struct hostent *host = NULL;
-
-  hquery->timeouts += timeouts;
-  if (status == ARES_SUCCESS)
-    {
-      if (hquery->sent_family == AF_INET)
-        {
-          status = ares_parse_a_reply(abuf, alen, &host, NULL, NULL);
-          if (host && channel->nsort)
-            sort_addresses(host, channel->sortlist, channel->nsort);
-        }
-      else if (hquery->sent_family == AF_INET6)
-        {
-          status = ares_parse_aaaa_reply(abuf, alen, &host, NULL, NULL);
-          if (status == ARES_ENODATA || status == ARES_EBADRESP) {
-            /* The query returned something but either there were no AAAA records (e.g. just CNAME) 
-               or the response was malformed.  Try looking up A instead.  
-               We should possibly limit this attempt-next logic to AF_UNSPEC lookups only. */
-            hquery->sent_family = AF_INET;
-            ares_search(hquery->channel, hquery->name, C_IN, T_A,
-                        host_callback, hquery);
-            return;
-          }
-          if (host && channel->nsort)
-            sort6_addresses(host, channel->sortlist, channel->nsort);
-        }
-      end_hquery(hquery, status, host);
-    }
-  else if ((status == ARES_ENODATA || status == ARES_EBADRESP || status == ARES_ETIMEOUT) && hquery->sent_family == AF_INET6)
-    {
-      /* The AAAA query yielded no useful result.  Now look up an A instead.  
-         We should possibly limit this attempt-next logic to AF_UNSPEC lookups only. */
-      hquery->sent_family = AF_INET;
-      ares_search(hquery->channel, hquery->name, C_IN, T_A, host_callback,
-                  hquery);
-    }
-  else if (status == ARES_EDESTRUCTION)
-    end_hquery(hquery, status, NULL);
-  else
-    next_lookup(hquery, status);
-}
-
-static void end_hquery(struct host_query *hquery, int status,
-                       struct hostent *host)
-{
-  hquery->callback(hquery->arg, status, hquery->timeouts, host);
-  if (host)
-    ares_free_hostent(host);
-  free(hquery->name);
-  free(hquery);
-}
-
-/* If the name looks like an IP address, fake up a host entry, end the
- * query immediately, and return true.  Otherwise return false.
- */
-static int fake_hostent(const char *name, int family, ares_host_callback callback,
-                        void *arg)
-{
-  struct hostent hostent;
-  char *aliases[1] = { NULL };
-  char *addrs[2];
-  int result = 0;
-  struct in_addr in;
-  struct ares_in6_addr in6;
-
-  if (family == AF_INET || family == AF_INET6)
-    {
-      /* It only looks like an IP address if it's all numbers and dots. */
-      int numdots = 0, valid = 1;
-      const char *p;
-      for (p = name; *p; p++)
-        {
-          if (!ISDIGIT(*p) && *p != '.') {
-            valid = 0;
-            break;
-          } else if (*p == '.') {
-            numdots++;
-          }
-        }
-
-      /* if we don't have 3 dots, it is illegal
-       * (although inet_addr doesn't think so).
-       */
-      if (numdots != 3 || !valid)
-        result = 0;
-      else
-        result = ((in.s_addr = inet_addr(name)) == INADDR_NONE ? 0 : 1);
-
-      if (result)
-        family = AF_INET;
-    }
-  if (family == AF_INET6)
-    result = (ares_inet_pton(AF_INET6, name, &in6) < 1 ? 0 : 1);
-
-  if (!result)
-    return 0;
-
-  if (family == AF_INET)
-    {
-      hostent.h_length = (int)sizeof(struct in_addr);
-      addrs[0] = (char *)∈
-    }
-  else if (family == AF_INET6)
-    {
-      hostent.h_length = (int)sizeof(struct ares_in6_addr);
-      addrs[0] = (char *)&in6;
-    }
-  /* Duplicate the name, to avoid a constness violation. */
-  hostent.h_name = strdup(name);
-  if (!hostent.h_name)
-    {
-      callback(arg, ARES_ENOMEM, 0, NULL);
-      return 1;
-    }
-
-  /* Fill in the rest of the host structure and terminate the query. */
-  addrs[1] = NULL;
-  hostent.h_aliases = aliases;
-  hostent.h_addrtype = family;
-  hostent.h_addr_list = addrs;
-  callback(arg, ARES_SUCCESS, 0, &hostent);
-
-  free((char *)(hostent.h_name));
-  return 1;
-}
-
-/* This is an API method */
-int ares_gethostbyname_file(ares_channel channel, const char *name,
-                            int family, struct hostent **host)
-{
-  int result;
-
-  /* We only take the channel to ensure that ares_init() been called. */
-  if(channel == NULL)
-    {
-      /* Anything will do, really.  This seems fine, and is consistent with
-         other error cases. */
-      *host = NULL;
-      return ARES_ENOTFOUND;
-    }
-
-  /* Just chain to the internal implementation we use here; it's exactly
-   * what we want.
-   */
-  result = file_lookup(name, family, host);
-  if(result != ARES_SUCCESS)
-    {
-      /* We guarantee a NULL hostent on failure. */
-      *host = NULL;
-    }
-  return result;
-}
-
-static int file_lookup(const char *name, int family, struct hostent **host)
-{
-  FILE *fp;
-  char **alias;
-  int status;
-  int error;
-
-#ifdef WIN32
-  char PATH_HOSTS[MAX_PATH];
-  if (IS_NT()) {
-    char tmp[MAX_PATH];
-    HKEY hkeyHosts;
-
-    if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, WIN_NS_NT_KEY, 0, KEY_READ, &hkeyHosts)
-        == ERROR_SUCCESS)
-    {
-      DWORD dwLength = MAX_PATH;
-      RegQueryValueEx(hkeyHosts, DATABASEPATH, NULL, NULL, (LPBYTE)tmp,
-                      &dwLength);
-      ExpandEnvironmentStrings(tmp, PATH_HOSTS, MAX_PATH);
-      RegCloseKey(hkeyHosts);
-    }
-  }
-  else
-    GetWindowsDirectory(PATH_HOSTS, MAX_PATH);
-
-  strcat(PATH_HOSTS, WIN_PATH_HOSTS);
-
-#elif defined(WATT32)
-  extern const char *_w32_GetHostsFile (void);
-  const char *PATH_HOSTS = _w32_GetHostsFile();
-
-  if (!PATH_HOSTS)
-    return ARES_ENOTFOUND;
-#endif
-
-  fp = fopen(PATH_HOSTS, "r");
-  if (!fp)
-    {
-      error = ERRNO;
-      switch(error)
-        {
-        case ENOENT:
-        case ESRCH:
-          return ARES_ENOTFOUND;
-        default:
-          DEBUGF(fprintf(stderr, "fopen() failed with error: %d %s\n",
-                         error, strerror(error)));
-          DEBUGF(fprintf(stderr, "Error opening file: %s\n",
-                         PATH_HOSTS));
-          *host = NULL;
-          return ARES_EFILE;
-        }
-    }
-  while ((status = ares__get_hostent(fp, family, host)) == ARES_SUCCESS)
-    {
-      if (strcasecmp((*host)->h_name, name) == 0)
-        break;
-      for (alias = (*host)->h_aliases; *alias; alias++)
-        {
-          if (strcasecmp(*alias, name) == 0)
-            break;
-        }
-      if (*alias)
-        break;
-      ares_free_hostent(*host);
-    }
-  fclose(fp);
-  if (status == ARES_EOF)
-    status = ARES_ENOTFOUND;
-  if (status != ARES_SUCCESS)
-    *host = NULL;
-  return status;
-}
-
-static void sort_addresses(struct hostent *host, const struct apattern *sortlist,
-                           int nsort)
-{
-  struct in_addr a1, a2;
-  int i1, i2, ind1, ind2;
-
-  /* This is a simple insertion sort, not optimized at all.  i1 walks
-   * through the address list, with the loop invariant that everything
-   * to the left of i1 is sorted.  In the loop body, the value at i1 is moved
-   * back through the list (via i2) until it is in sorted order.
-   */
-  for (i1 = 0; host->h_addr_list[i1]; i1++)
-    {
-      memcpy(&a1, host->h_addr_list[i1], sizeof(struct in_addr));
-      ind1 = get_address_index(&a1, sortlist, nsort);
-      for (i2 = i1 - 1; i2 >= 0; i2--)
-        {
-          memcpy(&a2, host->h_addr_list[i2], sizeof(struct in_addr));
-          ind2 = get_address_index(&a2, sortlist, nsort);
-          if (ind2 <= ind1)
-            break;
-          memcpy(host->h_addr_list[i2 + 1], &a2, sizeof(struct in_addr));
-        }
-      memcpy(host->h_addr_list[i2 + 1], &a1, sizeof(struct in_addr));
-    }
-}
-
-/* Find the first entry in sortlist which matches addr.  Return nsort
- * if none of them match.
- */
-static int get_address_index(const struct in_addr *addr,
-                             const struct apattern *sortlist,
-                             int nsort)
-{
-  int i;
-
-  for (i = 0; i < nsort; i++)
-    {
-      if (sortlist[i].family != AF_INET)
-        continue;
-      if (sortlist[i].type == PATTERN_MASK)
-        {
-          if ((addr->s_addr & sortlist[i].mask.addr4.s_addr)
-              == sortlist[i].addrV4.s_addr)
-            break;
-        }
-      else
-        {
-          if (!ares_bitncmp(&addr->s_addr, &sortlist[i].addrV4.s_addr,
-                            sortlist[i].mask.bits))
-            break;
-        }
-    }
-  return i;
-}
-
-static void sort6_addresses(struct hostent *host, const struct apattern *sortlist,
-                           int nsort)
-{
-  struct ares_in6_addr a1, a2;
-  int i1, i2, ind1, ind2;
-
-  /* This is a simple insertion sort, not optimized at all.  i1 walks
-   * through the address list, with the loop invariant that everything
-   * to the left of i1 is sorted.  In the loop body, the value at i1 is moved
-   * back through the list (via i2) until it is in sorted order.
-   */
-  for (i1 = 0; host->h_addr_list[i1]; i1++)
-    {
-      memcpy(&a1, host->h_addr_list[i1], sizeof(struct ares_in6_addr));
-      ind1 = get6_address_index(&a1, sortlist, nsort);
-      for (i2 = i1 - 1; i2 >= 0; i2--)
-        {
-          memcpy(&a2, host->h_addr_list[i2], sizeof(struct ares_in6_addr));
-          ind2 = get6_address_index(&a2, sortlist, nsort);
-          if (ind2 <= ind1)
-            break;
-          memcpy(host->h_addr_list[i2 + 1], &a2, sizeof(struct ares_in6_addr));
-        }
-      memcpy(host->h_addr_list[i2 + 1], &a1, sizeof(struct ares_in6_addr));
-    }
-}
-
-/* Find the first entry in sortlist which matches addr.  Return nsort
- * if none of them match.
- */
-static int get6_address_index(const struct ares_in6_addr *addr,
-                              const struct apattern *sortlist,
-                              int nsort)
-{
-  int i;
-
-  for (i = 0; i < nsort; i++)
-    {
-      if (sortlist[i].family != AF_INET6)
-        continue;
-        if (!ares_bitncmp(addr,
-                          &sortlist[i].addrV6,
-                          sortlist[i].mask.bits))
-          break;
-    }
-  return i;
-}
diff --git a/src/other/ares/ares_gethostbyname.pdf b/src/other/ares/ares_gethostbyname.pdf
deleted file mode 100644
index 587cae3..0000000
Binary files a/src/other/ares/ares_gethostbyname.pdf and /dev/null differ
diff --git a/src/other/ares/ares_gethostbyname_file.pdf b/src/other/ares/ares_gethostbyname_file.pdf
deleted file mode 100644
index 3554b75..0000000
Binary files a/src/other/ares/ares_gethostbyname_file.pdf and /dev/null differ
diff --git a/src/other/ares/ares_getnameinfo.c b/src/other/ares/ares_getnameinfo.c
deleted file mode 100644
index 77752df..0000000
--- a/src/other/ares/ares_getnameinfo.c
+++ /dev/null
@@ -1,413 +0,0 @@
-/* $Id$ */
-
-/* Copyright 2005 by Dominick Meglio
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-#include "ares_setup.h"
-
-#ifdef HAVE_GETSERVBYPORT_R
-#  if !defined(GETSERVBYPORT_R_ARGS) || \
-     (GETSERVBYPORT_R_ARGS < 4) || (GETSERVBYPORT_R_ARGS > 6)
-#    error "you MUST specifiy a valid number of arguments for getservbyport_r"
-#  endif
-#endif
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#ifdef HAVE_NET_IF_H
-#include <net/if.h>
-#endif
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "ares.h"
-#include "ares_ipv6.h"
-#include "inet_ntop.h"
-#include "ares_private.h"
-
-struct nameinfo_query {
-  ares_nameinfo_callback callback;
-  void *arg;
-  union {
-    struct sockaddr_in addr4;
-    struct sockaddr_in6 addr6;
-  } addr;
-  int family;
-  int flags;
-  int timeouts;
-};
-
-#ifdef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
-#define IPBUFSIZ \
-        (sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255") + IF_NAMESIZE)
-#else
-#define IPBUFSIZ \
-        (sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255"))
-#endif
-
-static void nameinfo_callback(void *arg, int status, int timeouts, struct hostent *host);
-static char *lookup_service(unsigned short port, int flags,
-                            char *buf, size_t buflen);
-#ifdef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
-static void append_scopeid(struct sockaddr_in6 *addr6, unsigned int scopeid,
-                           char *buf, size_t buflen);
-#endif
-static char *ares_striendstr(const char *s1, const char *s2);
-
-void ares_getnameinfo(ares_channel channel, const struct sockaddr *sa,
-                      ares_socklen_t salen,
-                      int flags, ares_nameinfo_callback callback, void *arg)
-{
-  struct sockaddr_in *addr = NULL;
-  struct sockaddr_in6 *addr6 = NULL;
-  struct nameinfo_query *niquery;
-  unsigned int port = 0;
-
-  /* Verify the buffer size */
-  if (salen == sizeof(struct sockaddr_in))
-    {
-      addr = (struct sockaddr_in *)sa;
-      port = addr->sin_port;
-    }
-  else if (salen == sizeof(struct sockaddr_in6))
-    {
-      addr6 = (struct sockaddr_in6 *)sa;
-      port = addr6->sin6_port;
-    }
-  else
-    {
-      callback(arg, ARES_ENOTIMP, 0, NULL, NULL);
-      return;
-    }
-
-  /* If neither, assume they want a host */
-  if (!(flags & ARES_NI_LOOKUPSERVICE) && !(flags & ARES_NI_LOOKUPHOST))
-    flags |= ARES_NI_LOOKUPHOST;
-
-  /* All they want is a service, no need for DNS */
-  if ((flags & ARES_NI_LOOKUPSERVICE) && !(flags & ARES_NI_LOOKUPHOST))
-    {
-      char buf[33], *service;
-
-      service = lookup_service((unsigned short)(port & 0xffff),
-                               flags, buf, sizeof(buf));
-      callback(arg, ARES_SUCCESS, 0, NULL, service);
-      return;
-    }
-
-  /* They want a host lookup */
-  if ((flags & ARES_NI_LOOKUPHOST))
-    {
-     /* A numeric host can be handled without DNS */
-     if ((flags & ARES_NI_NUMERICHOST))
-      {
-        char ipbuf[IPBUFSIZ];
-        char srvbuf[33];
-        char *service = NULL;
-        ipbuf[0] = 0;
-
-        /* Specifying not to lookup a host, but then saying a host
-         * is required has to be illegal.
-         */
-        if (flags & ARES_NI_NAMEREQD)
-          {
-            callback(arg, ARES_EBADFLAGS, 0, NULL, NULL);
-            return;
-          }
-        if (salen == sizeof(struct sockaddr_in6))
-          {
-            ares_inet_ntop(AF_INET6, &addr6->sin6_addr, ipbuf, IPBUFSIZ);
-            /* If the system supports scope IDs, use it */
-#ifdef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
-            append_scopeid(addr6, flags, ipbuf, sizeof(ipbuf));
-#endif
-          }
-        else
-          {
-            ares_inet_ntop(AF_INET, &addr->sin_addr, ipbuf, IPBUFSIZ);
-          }
-        /* They also want a service */
-        if (flags & ARES_NI_LOOKUPSERVICE)
-          service = lookup_service((unsigned short)(port & 0xffff),
-                                   flags, srvbuf, sizeof(srvbuf));
-        callback(arg, ARES_SUCCESS, 0, ipbuf, service);
-        return;
-      }
-    /* This is where a DNS lookup becomes necessary */
-    else
-      {
-        niquery = malloc(sizeof(struct nameinfo_query));
-        if (!niquery)
-          {
-            callback(arg, ARES_ENOMEM, 0, NULL, NULL);
-            return;
-          }
-        niquery->callback = callback;
-        niquery->arg = arg;
-        niquery->flags = flags;
-        niquery->timeouts = 0;
-        if (sa->sa_family == AF_INET)
-          {
-            niquery->family = AF_INET;
-            memcpy(&niquery->addr.addr4, addr, sizeof(addr));
-            ares_gethostbyaddr(channel, &addr->sin_addr,
-                               sizeof(struct in_addr), AF_INET,
-                               nameinfo_callback, niquery);
-          }
-        else
-          {
-            niquery->family = AF_INET6;
-            memcpy(&niquery->addr.addr6, addr6, sizeof(addr6));
-            ares_gethostbyaddr(channel, &addr6->sin6_addr,
-                               sizeof(struct ares_in6_addr), AF_INET6,
-                               nameinfo_callback, niquery);
-          }
-      }
-    }
-}
-
-static void nameinfo_callback(void *arg, int status, int timeouts, struct hostent *host)
-{
-  struct nameinfo_query *niquery = (struct nameinfo_query *) arg;
-  char srvbuf[33];
-  char *service = NULL;
-
-  niquery->timeouts += timeouts;
-  if (status == ARES_SUCCESS)
-    {
-      /* They want a service too */
-      if (niquery->flags & ARES_NI_LOOKUPSERVICE)
-        {
-          if (niquery->family == AF_INET)
-            service = lookup_service(niquery->addr.addr4.sin_port,
-                                     niquery->flags, srvbuf, sizeof(srvbuf));
-          else
-            service = lookup_service(niquery->addr.addr6.sin6_port,
-                                     niquery->flags, srvbuf, sizeof(srvbuf));
-        }
-      /* NOFQDN means we have to strip off the domain name portion.
-         We do this by determining our own domain name, then searching the string
-         for this domain name and removing it.
-       */
-#ifdef HAVE_GETHOSTNAME
-      if (niquery->flags & ARES_NI_NOFQDN)
-        {
-           char buf[255];
-           char *domain;
-           gethostname(buf, 255);
-           if ((domain = strchr(buf, '.')))
-             {
-               char *end = ares_striendstr(host->h_name, domain);
-               if (end)
-                 *end = 0;
-             }
-        }
-#endif
-      niquery->callback(niquery->arg, ARES_SUCCESS, niquery->timeouts, (char *)(host->h_name),
-                        service);
-      return;
-    }
-  /* We couldn't find the host, but it's OK, we can use the IP */
-  else if (status == ARES_ENOTFOUND && !(niquery->flags & ARES_NI_NAMEREQD))
-    {
-      char ipbuf[IPBUFSIZ];
-      if (niquery->family == AF_INET)
-        ares_inet_ntop(AF_INET, &niquery->addr.addr4.sin_addr, ipbuf, IPBUFSIZ);
-      else
-        {
-          ares_inet_ntop(AF_INET6, &niquery->addr.addr6.sin6_addr, ipbuf, IPBUFSIZ);
-#ifdef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
-          append_scopeid(&niquery->addr.addr6, niquery->flags, ipbuf, sizeof(ipbuf));
-#endif
-        }
-      /* They want a service too */
-      if (niquery->flags & ARES_NI_LOOKUPSERVICE)
-        {
-          if (niquery->family == AF_INET)
-            service = lookup_service(niquery->addr.addr4.sin_port,
-                                     niquery->flags, srvbuf, sizeof(srvbuf));
-          else
-            service = lookup_service(niquery->addr.addr6.sin6_port,
-                                     niquery->flags, srvbuf, sizeof(srvbuf));
-        }
-      niquery->callback(niquery->arg, ARES_SUCCESS, niquery->timeouts, ipbuf, service);
-      return;
-    }
-  niquery->callback(niquery->arg, status, niquery->timeouts, NULL, NULL);
-  free(niquery);
-}
-
-static char *lookup_service(unsigned short port, int flags,
-                            char *buf, size_t buflen)
-{
-  const char *proto;
-  struct servent *sep;
-#ifdef HAVE_GETSERVBYPORT_R
-  struct servent se;
-#endif
-  char tmpbuf[4096];
-
-  if (port)
-    {
-      if (flags & ARES_NI_NUMERICSERV)
-        sep = NULL;
-      else
-        {
-          if (flags & ARES_NI_UDP)
-            proto = "udp";
-          else if (flags & ARES_NI_SCTP)
-            proto = "sctp";
-          else if (flags & ARES_NI_DCCP)
-            proto = "dccp";
-          else
-            proto = "tcp";
-#ifdef HAVE_GETSERVBYPORT_R
-          sep = &se;
-          memset(tmpbuf, 0, sizeof(tmpbuf));
-#if GETSERVBYPORT_R_ARGS == 6
-          if (getservbyport_r(port, proto, &se, (void *)tmpbuf, sizeof(tmpbuf), &sep) != 0)
-            sep = NULL;
-#elif GETSERVBYPORT_R_ARGS == 5
-          sep = getservbyport_r(port, proto, &se, (void *)tmpbuf, sizeof(tmpbuf));
-#elif GETSERVBYPORT_R_ARGS == 4
-          if (getservbyport_r(port, proto, &se, (void *)tmpbuf) != 0)
-            sep = NULL;
-#else
-          /* Lets just hope the OS uses TLS! */
-          sep = getservbyport(port, proto);
-#endif
-#else
-          /* Lets just hope the OS uses TLS! */
-#if (defined(NETWARE) && !defined(__NOVELL_LIBC__))
-          sep = getservbyport(port, (char*)proto);
-#else
-          sep = getservbyport(port, proto);
-#endif
-#endif
-        }
-      if (sep && sep->s_name)
-        /* get service name */
-        strcpy(tmpbuf, sep->s_name);
-      else
-        /* get port as a string */
-        sprintf(tmpbuf, "%u", (unsigned int)ntohs(port));
-      if (strlen(tmpbuf) < buflen)
-        /* return it if buffer big enough */
-        strcpy(buf, tmpbuf);
-      else
-        /* avoid reusing previous one */
-        buf[0] = '\0';
-      return buf;
-    }
-  buf[0] = '\0';
-  return NULL;
-}
-
-#ifdef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
-static void append_scopeid(struct sockaddr_in6 *addr6, unsigned int flags,
-                           char *buf, size_t buflen)
-{
-#ifdef HAVE_IF_INDEXTONAME
-  int is_ll, is_mcll;
-#endif
-  char fmt_u[] = "%u";
-  char fmt_lu[] = "%lu";
-  char tmpbuf[IF_NAMESIZE + 2];
-  size_t bufl;
-  char *fmt = (sizeof(addr6->sin6_scope_id) > sizeof(unsigned int))?fmt_lu:fmt_u;
-
-  tmpbuf[0] = '%';
-
-#ifdef HAVE_IF_INDEXTONAME
-  is_ll = IN6_IS_ADDR_LINKLOCAL(&addr6->sin6_addr);
-  is_mcll = IN6_IS_ADDR_MC_LINKLOCAL(&addr6->sin6_addr);
-  if ((flags & ARES_NI_NUMERICSCOPE) ||
-      (!is_ll && !is_mcll))
-    {
-       sprintf(&tmpbuf[1], fmt, addr6->sin6_scope_id);
-    }
-  else
-    {
-      if (if_indextoname(addr6->sin6_scope_id, &tmpbuf[1]) == NULL)
-        sprintf(&tmpbuf[1], fmt, addr6->sin6_scope_id);
-    }
-#else
-  sprintf(&tmpbuf[1], fmt, addr6->sin6_scope_id);
-  (void) flags;
-#endif
-  tmpbuf[IF_NAMESIZE + 1] = '\0';
-  bufl = strlen(buf);
-
-  if(bufl + strlen(tmpbuf) < buflen)
-    /* only append the scopeid string if it fits in the target buffer */
-    strcpy(&buf[bufl], tmpbuf);
-}
-#endif
-
-/* Determines if s1 ends with the string in s2 (case-insensitive) */
-static char *ares_striendstr(const char *s1, const char *s2)
-{
-  const char *c1, *c2, *c1_begin;
-  int lo1, lo2;
-  size_t s1_len = strlen(s1), s2_len = strlen(s2);
-
-  /* If the substr is longer than the full str, it can't match */
-  if (s2_len > s1_len)
-    return NULL;
-
-  /* Jump to the end of s1 minus the length of s2 */
-  c1_begin = s1+s1_len-s2_len;
-  c1 = (const char *)c1_begin;
-  c2 = s2;
-  while (c2 < s2+s2_len)
-    {
-      lo1 = tolower(*c1);
-      lo2 = tolower(*c2);
-      if (lo1 != lo2)
-        return NULL;
-      else
-        {
-          c1++;
-          c2++;
-        }
-    }
-  if (c2 == c1 && c2 == NULL)
-    return (char *)c1_begin;
-  return NULL;
-}
diff --git a/src/other/ares/ares_getnameinfo.pdf b/src/other/ares/ares_getnameinfo.pdf
deleted file mode 100644
index 3a592ad..0000000
Binary files a/src/other/ares/ares_getnameinfo.pdf and /dev/null differ
diff --git a/src/other/ares/ares_getopt.c b/src/other/ares/ares_getopt.c
deleted file mode 100644
index b3cbb01..0000000
--- a/src/other/ares/ares_getopt.c
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Original file name getopt.c  Initial import into the c-ares source tree
- * on 2007-04-11.  Lifted from version 5.2 of the 'Open Mash' project with
- * the modified BSD license, BSD license without the advertising clause.
- *
- * $Id$
- */
-
-/*
- * getopt.c --
- *
- *      Standard UNIX getopt function.  Code is from BSD.
- *
- * Copyright (c) 1987-2001 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- * A. Redistributions of source code must retain the above copyright notice,
- *    this list of conditions and the following disclaimer.
- * B. Redistributions in binary form must reproduce the above copyright notice,
- *    this list of conditions and the following disclaimer in the documentation
- *    and/or other materials provided with the distribution.
- * C. Neither the names of the copyright holders nor the names of its
- *    contributors may be used to endorse or promote products derived from this
- *    software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
- * IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-/* #if !defined(lint)
- * static char sccsid[] = "@(#)getopt.c 8.2 (Berkeley) 4/2/94";
- * #endif
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "ares_getopt.h"
-
-int   opterr = 1,     /* if error message should be printed */
-      optind = 1;     /* index into parent argv vector */
-int   optopt = 0;     /* character checked for validity */
-static int optreset;  /* reset getopt */
-char  *optarg;        /* argument associated with option */
-
-#define  BADCH   (int)'?'
-#define  BADARG  (int)':'
-#define  EMSG    (char *)""
-
-/*
- * ares_getopt --
- *    Parse argc/argv argument vector.
- */
-int
-ares_getopt(int nargc, char * const nargv[], const char *ostr)
-{
-    static char *place = EMSG;                /* option letter processing */
-    char *oli;                                /* option letter list index */
-
-    if (optreset || !*place) {                /* update scanning pointer */
-        optreset = 0;
-        if (optind >= nargc || *(place = nargv[optind]) != '-') {
-            place = EMSG;
-            return (EOF);
-        }
-        if (place[1] && *++place == '-') {    /* found "--" */
-            ++optind;
-            place = EMSG;
-            return (EOF);
-        }
-    }                                         /* option letter okay? */
-    if ((optopt = (int)*place++) == (int)':' ||
-        (oli = strchr(ostr, optopt)) == NULL) {
-        /*
-         * if the user didn't specify '-' as an option,
-         * assume it means EOF.
-         */
-        if (optopt == (int)'-')
-            return (EOF);
-        if (!*place)
-            ++optind;
-        if (opterr && *ostr != ':')
-            (void)fprintf(stderr,
-                "%s: illegal option -- %c\n", __FILE__, optopt);
-        return (BADCH);
-    }
-    if (*++oli != ':') {                      /* don't need argument */
-        optarg = NULL;
-        if (!*place)
-            ++optind;
-    }
-    else {                                    /* need an argument */
-        if (*place)                           /* no white space */
-            optarg = place;
-        else if (nargc <= ++optind) {         /* no arg */
-            place = EMSG;
-            if (*ostr == ':')
-                return (BADARG);
-            if (opterr)
-                (void)fprintf(stderr,
-                    "%s: option requires an argument -- %c\n",
-                    __FILE__, optopt);
-            return (BADCH);
-        }
-         else                                 /* white space */
-            optarg = nargv[optind];
-        place = EMSG;
-        ++optind;
-    }
-    return (optopt);                          /* dump back option letter */
-}
diff --git a/src/other/ares/ares_getopt.h b/src/other/ares/ares_getopt.h
deleted file mode 100644
index 63acb3b..0000000
--- a/src/other/ares/ares_getopt.h
+++ /dev/null
@@ -1,53 +0,0 @@
-#ifndef ARES_GETOPT_H
-#define ARES_GETOPT_H
-
-/*
- * Copyright (c) 1987-2001 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- * A. Redistributions of source code must retain the above copyright notice,
- *    this list of conditions and the following disclaimer.
- * B. Redistributions in binary form must reproduce the above copyright notice,
- *    this list of conditions and the following disclaimer in the documentation
- *    and/or other materials provided with the distribution.
- * C. Neither the names of the copyright holders nor the names of its
- *    contributors may be used to endorse or promote products derived from this
- *    software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
- * IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-
-int ares_getopt(int nargc, char * const nargv[], const char *ostr);
-
-#undef optarg
-#undef optind
-#undef opterr
-#undef optopt
-#undef optreset
-
-#define optarg   ares_optarg
-#define optind   ares_optind
-#define opterr   ares_opterr
-#define optopt   ares_optopt
-#define optreset ares_optreset
-
-extern char *optarg;
-extern int optind;
-extern int opterr;
-extern int optopt;
-
-#endif /* ARES_GETOPT_H */
diff --git a/src/other/ares/ares_getsock.c b/src/other/ares/ares_getsock.c
deleted file mode 100644
index 52aaecd..0000000
--- a/src/other/ares/ares_getsock.c
+++ /dev/null
@@ -1,73 +0,0 @@
-/* $Id$ */
-
-/* Copyright (C) 2005 - 2010, Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation for any purpose and without fee is hereby granted, provided
- * that the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in advertising or
- * publicity pertaining to distribution of the software without specific,
- * written prior permission.  M.I.T. makes no representations about the
- * suitability of this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-
-#include "ares.h"
-#include "ares_private.h"
-
-int ares_getsock(ares_channel channel,
-                 ares_socket_t *socks,
-                 int numsocks) /* size of the 'socks' array */
-{
-  struct server_state *server;
-  int i;
-  int sockindex=0;
-  int bitmap = 0;
-  unsigned int setbits = 0xffffffff;
-
-  /* Are there any active queries? */
-  int active_queries = !ares__is_list_empty(&(channel->all_queries));
-
-  for (i = 0;
-       (i < channel->nservers) && (sockindex < ARES_GETSOCK_MAXNUM);
-       i++)
-    {
-      server = &channel->servers[i];
-      /* We only need to register interest in UDP sockets if we have
-       * outstanding queries.
-       */
-      if (active_queries && server->udp_socket != ARES_SOCKET_BAD)
-        {
-          if(sockindex >= numsocks)
-            break;
-          socks[sockindex] = server->udp_socket;
-          bitmap |= ARES_GETSOCK_READABLE(setbits, sockindex);
-          sockindex++;
-        }
-      /* We always register for TCP events, because we want to know
-       * when the other side closes the connection, so we don't waste
-       * time trying to use a broken connection.
-       */
-      if (server->tcp_socket != ARES_SOCKET_BAD)
-       {
-         if(sockindex >= numsocks)
-           break;
-         socks[sockindex] = server->tcp_socket;
-         bitmap |= ARES_GETSOCK_READABLE(setbits, sockindex);
-
-         if (server->qhead && active_queries)
-           /* then the tcp socket is also writable! */
-           bitmap |= ARES_GETSOCK_WRITABLE(setbits, sockindex);
-
-         sockindex++;
-       }
-    }
-  return bitmap;
-}
diff --git a/src/other/ares/ares_getsock.pdf b/src/other/ares/ares_getsock.pdf
deleted file mode 100644
index 6bfa409..0000000
Binary files a/src/other/ares/ares_getsock.pdf and /dev/null differ
diff --git a/src/other/ares/ares_init.c b/src/other/ares/ares_init.c
deleted file mode 100644
index 0a481e1..0000000
--- a/src/other/ares/ares_init.c
+++ /dev/null
@@ -1,1627 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- * Copyright (C) 2007-2010 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef USE_WINSOCK
-#include <iphlpapi.h>
-#endif
-
-#ifdef HAVE_SYS_PARAM_H
-#include <sys/param.h>
-#endif
-
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-#include <time.h>
-#include <errno.h>
-#include "ares.h"
-#include "inet_net_pton.h"
-#include "ares_library_init.h"
-#include "ares_private.h"
-
-#ifdef WATT32
-#undef WIN32  /* Redefined in MingW/MSVC headers */
-#endif
-
-static int init_by_options(ares_channel channel, const struct ares_options *options,
-                           int optmask);
-static int init_by_environment(ares_channel channel);
-static int init_by_resolv_conf(ares_channel channel);
-static int init_by_defaults(ares_channel channel);
-
-#ifndef WATT32
-static int config_nameserver(struct server_state **servers, int *nservers,
-                             char *str);
-#endif
-static int set_search(ares_channel channel, const char *str);
-static int set_options(ares_channel channel, const char *str);
-static const char *try_option(const char *p, const char *q, const char *opt);
-static int init_id_key(rc4_key* key,int key_data_len);
-
-#if !defined(WIN32) && !defined(WATT32)
-static int sortlist_alloc(struct apattern **sortlist, int *nsort, struct apattern *pat);
-static int ip_addr(const char *s, int len, struct in_addr *addr);
-static void natural_mask(struct apattern *pat);
-static int config_domain(ares_channel channel, char *str);
-static int config_lookup(ares_channel channel, const char *str,
-                         const char *bindch, const char *filech);
-static int config_sortlist(struct apattern **sortlist, int *nsort,
-                           const char *str);
-static char *try_config(char *s, const char *opt);
-#endif
-
-#define ARES_CONFIG_CHECK(x) (x->lookups && x->nsort > -1 && \
-                             x->nservers > -1 && \
-                             x->ndomains > -1 && \
-                             x->ndots > -1 && x->timeout > -1 && \
-                             x->tries > -1)
-
-int ares_init(ares_channel *channelptr)
-{
-  return ares_init_options(channelptr, NULL, 0);
-}
-
-int ares_init_options(ares_channel *channelptr, struct ares_options *options,
-                      int optmask)
-{
-  ares_channel channel;
-  int i;
-  int status = ARES_SUCCESS;
-  struct timeval now;
-
-#ifdef CURLDEBUG
-  const char *env = getenv("CARES_MEMDEBUG");
-
-  if (env)
-    curl_memdebug(env);
-  env = getenv("CARES_MEMLIMIT");
-  if (env)
-    curl_memlimit(atoi(env));
-#endif
-
-  if (ares_library_initialized() != ARES_SUCCESS)
-    return ARES_ENOTINITIALIZED;
-
-  channel = malloc(sizeof(struct ares_channeldata));
-  if (!channel) {
-    *channelptr = NULL;
-    return ARES_ENOMEM;
-  }
-
-  now = ares__tvnow();
-
-  /* Set everything to distinguished values so we know they haven't
-   * been set yet.
-   */
-  channel->flags = -1;
-  channel->timeout = -1;
-  channel->tries = -1;
-  channel->ndots = -1;
-  channel->rotate = -1;
-  channel->udp_port = -1;
-  channel->tcp_port = -1;
-  channel->socket_send_buffer_size = -1;
-  channel->socket_receive_buffer_size = -1;
-  channel->nservers = -1;
-  channel->ndomains = -1;
-  channel->nsort = -1;
-  channel->tcp_connection_generation = 0;
-  channel->lookups = NULL;
-  channel->domains = NULL;
-  channel->sortlist = NULL;
-  channel->servers = NULL;
-  channel->sock_state_cb = NULL;
-  channel->sock_state_cb_data = NULL;
-  channel->sock_create_cb = NULL;
-  channel->sock_create_cb_data = NULL;
-
-  channel->last_server = 0;
-  channel->last_timeout_processed = (time_t)now.tv_sec;
-
-  /* Initialize our lists of queries */
-  ares__init_list_head(&(channel->all_queries));
-  for (i = 0; i < ARES_QID_TABLE_SIZE; i++)
-    {
-      ares__init_list_head(&(channel->queries_by_qid[i]));
-    }
-  for (i = 0; i < ARES_TIMEOUT_TABLE_SIZE; i++)
-    {
-      ares__init_list_head(&(channel->queries_by_timeout[i]));
-    }
-
-  /* Initialize configuration by each of the four sources, from highest
-   * precedence to lowest.
-   */
-
-  if (status == ARES_SUCCESS) {
-    status = init_by_options(channel, options, optmask);
-    if (status != ARES_SUCCESS)
-      DEBUGF(fprintf(stderr, "Error: init_by_options failed: %s\n",
-                     ares_strerror(status)));
-  }
-  if (status == ARES_SUCCESS) {
-    status = init_by_environment(channel);
-    if (status != ARES_SUCCESS)
-      DEBUGF(fprintf(stderr, "Error: init_by_environment failed: %s\n",
-                     ares_strerror(status)));
-  }
-  if (status == ARES_SUCCESS) {
-    status = init_by_resolv_conf(channel);
-    if (status != ARES_SUCCESS)
-      DEBUGF(fprintf(stderr, "Error: init_by_resolv_conf failed: %s\n",
-                     ares_strerror(status)));
-  }
-
-  /*
-   * No matter what failed or succeeded, seed defaults to provide
-   * useful behavior for things that we missed.
-   */
-  status = init_by_defaults(channel);
-  if (status != ARES_SUCCESS)
-    DEBUGF(fprintf(stderr, "Error: init_by_defaults failed: %s\n",
-                   ares_strerror(status)));
-
-  /* Generate random key */
-
-  if (status == ARES_SUCCESS) {
-    status = init_id_key(&channel->id_key, ARES_ID_KEY_LEN);
-    if (status == ARES_SUCCESS)
-      channel->next_id = ares__generate_new_id(&channel->id_key);
-    else
-      DEBUGF(fprintf(stderr, "Error: init_id_key failed: %s\n",
-                     ares_strerror(status)));
-  }
-
-  if (status != ARES_SUCCESS)
-    {
-      /* Something failed; clean up memory we may have allocated. */
-      if (channel->servers)
-        free(channel->servers);
-      if (channel->domains)
-        {
-          for (i = 0; i < channel->ndomains; i++)
-            free(channel->domains[i]);
-          free(channel->domains);
-        }
-      if (channel->sortlist)
-        free(channel->sortlist);
-      if(channel->lookups)
-        free(channel->lookups);
-      free(channel);
-      return status;
-    }
-
-  /* Trim to one server if ARES_FLAG_PRIMARY is set. */
-  if ((channel->flags & ARES_FLAG_PRIMARY) && channel->nservers > 1)
-    channel->nservers = 1;
-
-  ares__init_servers_state(channel);
-
-  *channelptr = channel;
-  return ARES_SUCCESS;
-}
-
-/* ares_dup() duplicates a channel handle with all its options and returns a
-   new channel handle */
-int ares_dup(ares_channel *dest, ares_channel src)
-{
-  struct ares_options opts;
-  struct ares_addr_node *servers;
-  int ipv6_nservers = 0;
-  int i, rc;
-  int optmask;
-
-  *dest = NULL; /* in case of failure return NULL explicitly */
-
-  /* First get the options supported by the old ares_save_options() function,
-     which is most of them */
-  rc = ares_save_options(src, &opts, &optmask);
-  if(rc)
-    return rc;
-
-  /* Then create the new channel with those options */
-  rc = ares_init_options(dest, &opts, optmask);
-
-  /* destroy the options copy to not leak any memory */
-  ares_destroy_options(&opts);
-
-  if(rc)
-    return rc;
-
-  /* Now clone the options that ares_save_options() doesn't support. */
-  (*dest)->sock_create_cb      = src->sock_create_cb;
-  (*dest)->sock_create_cb_data = src->sock_create_cb_data;
-
-  /* Full name server cloning required when not all are IPv4 */
-  for (i = 0; i < src->nservers; i++)
-    {
-      if (src->servers[i].addr.family != AF_INET) {
-        ipv6_nservers++;
-        break;
-      }
-    }
-  if (ipv6_nservers) {
-    rc = ares_get_servers(src, &servers);
-    if (rc != ARES_SUCCESS)
-      return rc;
-    rc = ares_set_servers(*dest, servers);
-    ares_free_data(servers);
-    if (rc != ARES_SUCCESS)
-      return rc;
-  }
-
-  return ARES_SUCCESS; /* everything went fine */
-}
-
-/* Save options from initialized channel */
-int ares_save_options(ares_channel channel, struct ares_options *options,
-                      int *optmask)
-{
-  int i, j;
-  int ipv4_nservers = 0;
-
-  /* Zero everything out */
-  memset(options, 0, sizeof(struct ares_options));
-
-  if (!ARES_CONFIG_CHECK(channel))
-    return ARES_ENODATA;
-
-  /* Traditionally the optmask wasn't saved in the channel struct so it was
-     recreated here. ROTATE is the first option that has no struct field of
-     its own in the public config struct */
-  (*optmask) = (ARES_OPT_FLAGS|ARES_OPT_TRIES|ARES_OPT_NDOTS|
-                ARES_OPT_UDP_PORT|ARES_OPT_TCP_PORT|ARES_OPT_SOCK_STATE_CB|
-                ARES_OPT_SERVERS|ARES_OPT_DOMAINS|ARES_OPT_LOOKUPS|
-                ARES_OPT_SORTLIST|ARES_OPT_TIMEOUTMS) |
-    (channel->optmask & ARES_OPT_ROTATE);
-
-  /* Copy easy stuff */
-  options->flags   = channel->flags;
-
-  /* We return full millisecond resolution but that's only because we don't
-     set the ARES_OPT_TIMEOUT anymore, only the new ARES_OPT_TIMEOUTMS */
-  options->timeout = channel->timeout;
-  options->tries   = channel->tries;
-  options->ndots   = channel->ndots;
-  options->udp_port = (unsigned short)channel->udp_port;
-  options->tcp_port = (unsigned short)channel->tcp_port;
-  options->sock_state_cb     = channel->sock_state_cb;
-  options->sock_state_cb_data = channel->sock_state_cb_data;
-
-  /* Copy IPv4 servers */
-  if (channel->nservers) {
-    for (i = 0; i < channel->nservers; i++)
-    {
-      if (channel->servers[i].addr.family == AF_INET)
-        ipv4_nservers++;
-    }
-    if (ipv4_nservers) {
-      options->servers = malloc(ipv4_nservers * sizeof(struct server_state));
-      if (!options->servers)
-        return ARES_ENOMEM;
-      for (i = j = 0; i < channel->nservers; i++)
-      {
-        if (channel->servers[i].addr.family == AF_INET)
-          memcpy(&options->servers[j++],
-                 &channel->servers[i].addr.addrV4,
-                 sizeof(channel->servers[i].addr.addrV4));
-      }
-    }
-  }
-  options->nservers = ipv4_nservers;
-
-  /* copy domains */
-  if (channel->ndomains) {
-    options->domains = malloc(channel->ndomains * sizeof(char *));
-    if (!options->domains)
-      return ARES_ENOMEM;
-
-    for (i = 0; i < channel->ndomains; i++)
-    {
-      options->ndomains = i;
-      options->domains[i] = strdup(channel->domains[i]);
-      if (!options->domains[i])
-        return ARES_ENOMEM;
-    }
-  }
-  options->ndomains = channel->ndomains;
-
-  /* copy lookups */
-  if (channel->lookups) {
-    options->lookups = strdup(channel->lookups);
-    if (!options->lookups && channel->lookups)
-      return ARES_ENOMEM;
-  }
-
-  /* copy sortlist */
-  if (channel->nsort) {
-    options->sortlist = malloc(channel->nsort * sizeof(struct apattern));
-    if (!options->sortlist)
-      return ARES_ENOMEM;
-    for (i = 0; i < channel->nsort; i++)
-    {
-      memcpy(&(options->sortlist[i]), &(channel->sortlist[i]),
-             sizeof(struct apattern));
-    }
-  }
-  options->nsort = channel->nsort;
-
-  return ARES_SUCCESS;
-}
-
-static int init_by_options(ares_channel channel,
-                           const struct ares_options *options,
-                           int optmask)
-{
-  int i;
-
-  /* Easy stuff. */
-  if ((optmask & ARES_OPT_FLAGS) && channel->flags == -1)
-    channel->flags = options->flags;
-  if ((optmask & ARES_OPT_TIMEOUTMS) && channel->timeout == -1)
-    channel->timeout = options->timeout;
-  else if ((optmask & ARES_OPT_TIMEOUT) && channel->timeout == -1)
-    channel->timeout = options->timeout * 1000;
-  if ((optmask & ARES_OPT_TRIES) && channel->tries == -1)
-    channel->tries = options->tries;
-  if ((optmask & ARES_OPT_NDOTS) && channel->ndots == -1)
-    channel->ndots = options->ndots;
-  if ((optmask & ARES_OPT_ROTATE) && channel->rotate == -1)
-    channel->rotate = 1;
-  if ((optmask & ARES_OPT_UDP_PORT) && channel->udp_port == -1)
-    channel->udp_port = options->udp_port;
-  if ((optmask & ARES_OPT_TCP_PORT) && channel->tcp_port == -1)
-    channel->tcp_port = options->tcp_port;
-  if ((optmask & ARES_OPT_SOCK_STATE_CB) && channel->sock_state_cb == NULL)
-    {
-      channel->sock_state_cb = options->sock_state_cb;
-      channel->sock_state_cb_data = options->sock_state_cb_data;
-    }
-  if ((optmask & ARES_OPT_SOCK_SNDBUF)
-      && channel->socket_send_buffer_size == -1)
-    channel->socket_send_buffer_size = options->socket_send_buffer_size;
-  if ((optmask & ARES_OPT_SOCK_RCVBUF)
-      && channel->socket_receive_buffer_size == -1)
-    channel->socket_receive_buffer_size = options->socket_receive_buffer_size;
-
-  /* Copy the IPv4 servers, if given. */
-  if ((optmask & ARES_OPT_SERVERS) && channel->nservers == -1)
-    {
-      /* Avoid zero size allocations at any cost */
-      if (options->nservers > 0)
-        {
-          channel->servers =
-            malloc(options->nservers * sizeof(struct server_state));
-          if (!channel->servers)
-            return ARES_ENOMEM;
-          for (i = 0; i < options->nservers; i++)
-            {
-              channel->servers[i].addr.family = AF_INET;
-              memcpy(&channel->servers[i].addr.addrV4,
-                     &options->servers[i],
-                     sizeof(channel->servers[i].addr.addrV4));
-            }
-        }
-      channel->nservers = options->nservers;
-    }
-
-  /* Copy the domains, if given.  Keep channel->ndomains consistent so
-   * we can clean up in case of error.
-   */
-  if ((optmask & ARES_OPT_DOMAINS) && channel->ndomains == -1)
-    {
-      /* Avoid zero size allocations at any cost */
-      if (options->ndomains > 0)
-      {
-        channel->domains = malloc(options->ndomains * sizeof(char *));
-        if (!channel->domains)
-          return ARES_ENOMEM;
-        for (i = 0; i < options->ndomains; i++)
-          {
-            channel->ndomains = i;
-            channel->domains[i] = strdup(options->domains[i]);
-            if (!channel->domains[i])
-              return ARES_ENOMEM;
-          }
-      }
-      channel->ndomains = options->ndomains;
-    }
-
-  /* Set lookups, if given. */
-  if ((optmask & ARES_OPT_LOOKUPS) && !channel->lookups)
-    {
-      channel->lookups = strdup(options->lookups);
-      if (!channel->lookups)
-        return ARES_ENOMEM;
-    }
-
-  /* copy sortlist */
-  if ((optmask & ARES_OPT_SORTLIST) && channel->nsort == -1)
-    {
-      channel->sortlist = malloc(options->nsort * sizeof(struct apattern));
-      if (!channel->sortlist)
-        return ARES_ENOMEM;
-      for (i = 0; i < options->nsort; i++)
-        {
-          memcpy(&(channel->sortlist[i]), &(options->sortlist[i]),
-                 sizeof(struct apattern));
-        }
-      channel->nsort = options->nsort;
-    }
-
-  channel->optmask = optmask;
-
-  return ARES_SUCCESS;
-}
-
-static int init_by_environment(ares_channel channel)
-{
-  const char *localdomain, *res_options;
-  int status;
-
-  localdomain = getenv("LOCALDOMAIN");
-  if (localdomain && channel->ndomains == -1)
-    {
-      status = set_search(channel, localdomain);
-      if (status != ARES_SUCCESS)
-        return status;
-    }
-
-  res_options = getenv("RES_OPTIONS");
-  if (res_options)
-    {
-      status = set_options(channel, res_options);
-      if (status != ARES_SUCCESS)
-        return status;
-    }
-
-  return ARES_SUCCESS;
-}
-
-#ifdef WIN32
-/*
- * Warning: returns a dynamically allocated buffer, the user MUST
- * use free() if the function returns 1
- */
-static int get_res_nt(HKEY hKey, const char *subkey, char **obuf)
-{
-  /* Test for the size we need */
-  DWORD size = 0;
-  int result;
-
-  result = RegQueryValueEx(hKey, subkey, 0, NULL, NULL, &size);
-  if ((result != ERROR_SUCCESS && result != ERROR_MORE_DATA) || !size)
-    return 0;
-  *obuf = malloc(size+1);
-  if (!*obuf)
-    return 0;
-
-  if (RegQueryValueEx(hKey, subkey, 0, NULL,
-                      (LPBYTE)*obuf, &size) != ERROR_SUCCESS)
-  {
-    free(*obuf);
-    return 0;
-  }
-  if (size == 1)
-  {
-    free(*obuf);
-    return 0;
-  }
-  return 1;
-}
-
-static int get_res_interfaces_nt(HKEY hKey, const char *subkey, char **obuf)
-{
-  char enumbuf[39]; /* GUIDs are 38 chars + 1 for NULL */
-  DWORD enum_size = 39;
-  int idx = 0;
-  HKEY hVal;
-
-  while (RegEnumKeyEx(hKey, idx++, enumbuf, &enum_size, 0,
-                      NULL, NULL, NULL) != ERROR_NO_MORE_ITEMS)
-  {
-    int rc;
-
-    enum_size = 39;
-    if (RegOpenKeyEx(hKey, enumbuf, 0, KEY_QUERY_VALUE, &hVal) !=
-        ERROR_SUCCESS)
-      continue;
-    rc = get_res_nt(hVal, subkey, obuf);
-      RegCloseKey(hVal);
-    if (rc)
-      return 1;
-    }
-  return 0;
-}
-
-static int get_iphlpapi_dns_info (char *ret_buf, size_t ret_size)
-{
-  FIXED_INFO    *fi, *newfi;
-  DWORD          size = sizeof (*fi);
-  IP_ADDR_STRING *ipAddr;
-  int            i, count = 0;
-  int            debug  = 0;
-  size_t         ip_size = sizeof("255.255.255.255,")-1;
-  size_t         left = ret_size;
-  char          *ret = ret_buf;
-  HRESULT        res;
-
-  fi = malloc(size);
-  if (!fi)
-     return 0;
-
-  res = (*ares_fpGetNetworkParams) (fi, &size);
-  if ((res != ERROR_BUFFER_OVERFLOW) && (res != ERROR_SUCCESS))
-     goto quit;
-
-  newfi = realloc(fi, size);
-  if (!newfi)
-     goto quit;
-
-  fi = newfi;
-  res = (*ares_fpGetNetworkParams) (fi, &size);
-  if (res != ERROR_SUCCESS)
-     goto quit;
-
-  if (debug)
-  {
-    printf ("Host Name: %s\n", fi->HostName);
-    printf ("Domain Name: %s\n", fi->DomainName);
-    printf ("DNS Servers:\n"
-            "    %s (primary)\n", fi->DnsServerList.IpAddress.String);
-  }
-  if (strlen(fi->DnsServerList.IpAddress.String) > 0 &&
-      inet_addr(fi->DnsServerList.IpAddress.String) != INADDR_NONE &&
-      left > ip_size)
-  {
-    ret += sprintf (ret, "%s,", fi->DnsServerList.IpAddress.String);
-    left -= ret - ret_buf;
-    count++;
-  }
-
-  for (i = 0, ipAddr = fi->DnsServerList.Next; ipAddr && left > ip_size;
-       ipAddr = ipAddr->Next, i++)
-  {
-    if (inet_addr(ipAddr->IpAddress.String) != INADDR_NONE)
-    {
-       ret += sprintf (ret, "%s,", ipAddr->IpAddress.String);
-       left -= ret - ret_buf;
-       count++;
-    }
-    if (debug)
-       printf ("    %s (secondary %d)\n", ipAddr->IpAddress.String, i+1);
-  }
-
-quit:
-  if (fi)
-     free(fi);
-
-  if (debug && left <= ip_size)
-     printf ("Too many nameservers. Truncating to %d addressess", count);
-  if (ret > ret_buf)
-     ret[-1] = '\0';
-  return count;
-}
-#endif
-
-static int init_by_resolv_conf(ares_channel channel)
-{
-#ifndef WATT32
-  char *line = NULL;
-#endif
-  int status = -1, nservers = 0, nsort = 0;
-  struct server_state *servers = NULL;
-  struct apattern *sortlist = NULL;
-
-#ifdef WIN32
-
-    /*
-  NameServer info via IPHLPAPI (IP helper API):
-    GetNetworkParams() should be the trusted source for this.
-    Available in Win-98/2000 and later. If that fail, fall-back to
-    registry information.
-
-  NameServer Registry:
-
-   On Windows 9X, the DNS server can be found in:
-HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP\NameServer
-
-        On Windows NT/2000/XP/2003:
-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\NameServer
-        or
-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DhcpNameServer
-        or
-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\{AdapterID}\
-NameServer
-        or
-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\{AdapterID}\
-DhcpNameServer
-   */
-
-  HKEY mykey;
-  HKEY subkey;
-  DWORD data_type;
-  DWORD bytes;
-  DWORD result;
-  char  buf[256];
-
-  if (channel->nservers > -1)  /* don't override ARES_OPT_SERVER */
-     return ARES_SUCCESS;
-
-  if (get_iphlpapi_dns_info(buf,sizeof(buf)) > 0)
-  {
-    status = config_nameserver(&servers, &nservers, buf);
-    if (status == ARES_SUCCESS)
-      goto okay;
-  }
-
-  if (IS_NT())
-  {
-    if (RegOpenKeyEx(
-          HKEY_LOCAL_MACHINE, WIN_NS_NT_KEY, 0,
-          KEY_READ, &mykey
-          ) == ERROR_SUCCESS)
-    {
-      RegOpenKeyEx(mykey, "Interfaces", 0,
-                   KEY_QUERY_VALUE|KEY_ENUMERATE_SUB_KEYS, &subkey);
-      if (get_res_nt(mykey, NAMESERVER, &line))
-      {
-        status = config_nameserver(&servers, &nservers, line);
-        free(line);
-      }
-      else if (get_res_nt(mykey, DHCPNAMESERVER, &line))
-      {
-        status = config_nameserver(&servers, &nservers, line);
-        free(line);
-      }
-      /* Try the interfaces */
-      else if (get_res_interfaces_nt(subkey, NAMESERVER, &line))
-      {
-        status = config_nameserver(&servers, &nservers, line);
-        free(line);
-      }
-      else if (get_res_interfaces_nt(subkey, DHCPNAMESERVER, &line))
-      {
-        status = config_nameserver(&servers, &nservers, line);
-        free(line);
-      }
-      RegCloseKey(subkey);
-      RegCloseKey(mykey);
-    }
-  }
-  else
-  {
-    if (RegOpenKeyEx(
-          HKEY_LOCAL_MACHINE, WIN_NS_9X, 0,
-          KEY_READ, &mykey
-          ) == ERROR_SUCCESS)
-    {
-      if ((result = RegQueryValueEx(
-             mykey, NAMESERVER, NULL, &data_type,
-             NULL, &bytes
-             )
-            ) == ERROR_SUCCESS ||
-          result == ERROR_MORE_DATA)
-      {
-        if (bytes)
-        {
-          line = malloc(bytes+1);
-          if (RegQueryValueEx(mykey, NAMESERVER, NULL, &data_type,
-                              (unsigned char *)line, &bytes) ==
-              ERROR_SUCCESS)
-          {
-            status = config_nameserver(&servers, &nservers, line);
-          }
-          free(line);
-        }
-      }
-    }
-    RegCloseKey(mykey);
-  }
-
-  if (status == ARES_SUCCESS)
-    status = ARES_EOF;
-  else
-    /* Catch the case when all the above checks fail (which happens when there
-       is no network card or the cable is unplugged) */
-    status = ARES_EFILE;
-
-#elif defined(__riscos__)
-
-  /* Under RISC OS, name servers are listed in the
-     system variable Inet$Resolvers, space separated. */
-
-  line = getenv("Inet$Resolvers");
-  status = ARES_EOF;
-  if (line) {
-    char *resolvers = strdup(line), *pos, *space;
-
-    if (!resolvers)
-      return ARES_ENOMEM;
-
-    pos = resolvers;
-    do {
-      space = strchr(pos, ' ');
-      if (space)
-        *space = '\0';
-      status = config_nameserver(&servers, &nservers, pos);
-      if (status != ARES_SUCCESS)
-        break;
-      pos = space + 1;
-    } while (space);
-
-    if (status == ARES_SUCCESS)
-      status = ARES_EOF;
-
-    free(resolvers);
-  }
-
-#elif defined(WATT32)
-  int i;
-
-  sock_init();
-  for (i = 0; def_nameservers[i]; i++)
-      ;
-  if (i == 0)
-    return ARES_SUCCESS; /* use localhost DNS server */
-
-  nservers = i;
-  servers = calloc(i, sizeof(struct server_state));
-  if (!servers)
-     return ARES_ENOMEM;
-
-  for (i = 0; def_nameservers[i]; i++)
-      servers[i].addr.addrV4.s_addr = htonl(def_nameservers[i]);
-  status = ARES_EOF;
-
-#else
-  {
-    char *p;
-    FILE *fp;
-    size_t linesize;
-    int error;
-
-    /* Don't read resolv.conf and friends if we don't have to */
-    if (ARES_CONFIG_CHECK(channel))
-        return ARES_SUCCESS;
-
-    fp = fopen(PATH_RESOLV_CONF, "r");
-    if (fp) {
-      while ((status = ares__read_line(fp, &line, &linesize)) == ARES_SUCCESS)
-      {
-        if ((p = try_config(line, "domain")) && channel->ndomains == -1)
-          status = config_domain(channel, p);
-        else if ((p = try_config(line, "lookup")) && !channel->lookups)
-          status = config_lookup(channel, p, "bind", "file");
-        else if ((p = try_config(line, "search")) && channel->ndomains == -1)
-          status = set_search(channel, p);
-        else if ((p = try_config(line, "nameserver")) && channel->nservers == -1)
-          status = config_nameserver(&servers, &nservers, p);
-        else if ((p = try_config(line, "sortlist")) && channel->nsort == -1)
-          status = config_sortlist(&sortlist, &nsort, p);
-        else if ((p = try_config(line, "options")))
-          status = set_options(channel, p);
-        else
-          status = ARES_SUCCESS;
-        if (status != ARES_SUCCESS)
-          break;
-      }
-      fclose(fp);
-    }
-    else {
-      error = ERRNO;
-      switch(error) {
-      case ENOENT:
-      case ESRCH:
-        status = ARES_EOF;
-        break;
-      default:
-        DEBUGF(fprintf(stderr, "fopen() failed with error: %d %s\n",
-                       error, strerror(error)));
-        DEBUGF(fprintf(stderr, "Error opening file: %s\n", PATH_RESOLV_CONF));
-        status = ARES_EFILE;
-      }
-    }
-
-    if ((status == ARES_EOF) && (!channel->lookups)) {
-      /* Many systems (Solaris, Linux, BSD's) use nsswitch.conf */
-      fp = fopen("/etc/nsswitch.conf", "r");
-      if (fp) {
-        while ((status = ares__read_line(fp, &line, &linesize)) == ARES_SUCCESS)
-        {
-          if ((p = try_config(line, "hosts:")) && !channel->lookups)
-            status = config_lookup(channel, p, "dns", "files");
-        }
-        fclose(fp);
-      }
-      else {
-        error = ERRNO;
-        switch(error) {
-        case ENOENT:
-        case ESRCH:
-          status = ARES_EOF;
-          break;
-        default:
-          DEBUGF(fprintf(stderr, "fopen() failed with error: %d %s\n",
-                         error, strerror(error)));
-          DEBUGF(fprintf(stderr, "Error opening file: %s\n", "/etc/nsswitch.conf"));
-          status = ARES_EFILE;
-        }
-      }
-    }
-
-    if ((status == ARES_EOF) && (!channel->lookups)) {
-      /* Linux / GNU libc 2.x and possibly others have host.conf */
-      fp = fopen("/etc/host.conf", "r");
-      if (fp) {
-        while ((status = ares__read_line(fp, &line, &linesize)) == ARES_SUCCESS)
-        {
-          if ((p = try_config(line, "order")) && !channel->lookups)
-            status = config_lookup(channel, p, "bind", "hosts");
-        }
-        fclose(fp);
-      }
-      else {
-        error = ERRNO;
-        switch(error) {
-        case ENOENT:
-        case ESRCH:
-          status = ARES_EOF;
-          break;
-        default:
-          DEBUGF(fprintf(stderr, "fopen() failed with error: %d %s\n",
-                         error, strerror(error)));
-          DEBUGF(fprintf(stderr, "Error opening file: %s\n", "/etc/host.conf"));
-          status = ARES_EFILE;
-        }
-      }
-    }
-
-    if ((status == ARES_EOF) && (!channel->lookups)) {
-      /* Tru64 uses /etc/svc.conf */
-      fp = fopen("/etc/svc.conf", "r");
-      if (fp) {
-        while ((status = ares__read_line(fp, &line, &linesize)) == ARES_SUCCESS)
-        {
-          if ((p = try_config(line, "hosts=")) && !channel->lookups)
-            status = config_lookup(channel, p, "bind", "local");
-        }
-        fclose(fp);
-      }
-      else {
-        error = ERRNO;
-        switch(error) {
-        case ENOENT:
-        case ESRCH:
-          status = ARES_EOF;
-          break;
-        default:
-          DEBUGF(fprintf(stderr, "fopen() failed with error: %d %s\n",
-                         error, strerror(error)));
-          DEBUGF(fprintf(stderr, "Error opening file: %s\n", "/etc/svc.conf"));
-          status = ARES_EFILE;
-        }
-      }
-    }
-
-    if(line)
-      free(line);
-  }
-
-#endif
-
-  /* Handle errors. */
-  if (status != ARES_EOF)
-    {
-      if (servers != NULL)
-        free(servers);
-      if (sortlist != NULL)
-        free(sortlist);
-      return status;
-    }
-
-  /* If we got any name server entries, fill them in. */
-#ifdef WIN32
-okay:
-#endif
-  if (servers)
-    {
-      channel->servers = servers;
-      channel->nservers = nservers;
-    }
-
-  /* If we got any sortlist entries, fill them in. */
-  if (sortlist)
-    {
-      channel->sortlist = sortlist;
-      channel->nsort = nsort;
-    }
-
-  return ARES_SUCCESS;
-}
-
-static int init_by_defaults(ares_channel channel)
-{
-  char *hostname = NULL;
-  int rc = ARES_SUCCESS;
-#ifdef HAVE_GETHOSTNAME
-  char *dot;
-#endif
-
-  if (channel->flags == -1)
-    channel->flags = 0;
-  if (channel->timeout == -1)
-    channel->timeout = DEFAULT_TIMEOUT;
-  if (channel->tries == -1)
-    channel->tries = DEFAULT_TRIES;
-  if (channel->ndots == -1)
-    channel->ndots = 1;
-  if (channel->rotate == -1)
-    channel->rotate = 0;
-  if (channel->udp_port == -1)
-    channel->udp_port = htons(NAMESERVER_PORT);
-  if (channel->tcp_port == -1)
-    channel->tcp_port = htons(NAMESERVER_PORT);
-
-  if (channel->nservers == -1) {
-    /* If nobody specified servers, try a local named. */
-    channel->servers = malloc(sizeof(struct server_state));
-    if (!channel->servers) {
-      rc = ARES_ENOMEM;
-      goto error;
-    }
-    channel->servers[0].addr.family = AF_INET;
-    channel->servers[0].addr.addrV4.s_addr = htonl(INADDR_LOOPBACK);
-    channel->nservers = 1;
-  }
-
-#ifdef ENAMETOOLONG
-#define toolong(x) (x == -1) && ((ENAMETOOLONG == errno) || (EINVAL == errno))
-#else
-#define toolong(x) (x == -1) && (EINVAL == errno)
-#endif
-
-  if (channel->ndomains == -1) {
-    /* Derive a default domain search list from the kernel hostname,
-     * or set it to empty if the hostname isn't helpful.
-     */
-    size_t len = 64;
-    int res;
-    channel->ndomains = 0; /* default to none */
-
-#ifdef HAVE_GETHOSTNAME
-    hostname = malloc(len);
-    if(!hostname) {
-      rc = ARES_ENOMEM;
-      goto error;
-    }
-
-    do {
-      res = gethostname(hostname, len);
-
-      if(toolong(res)) {
-        char *p;
-        len *= 2;
-        p = realloc(hostname, len);
-        if(!p) {
-          rc = ARES_ENOMEM;
-          goto error;
-        }
-        hostname = p;
-        continue;
-      }
-      else if(res) {
-        rc = ARES_EBADNAME;
-        goto error;
-      }
-
-    } while(0);
-
-    dot = strchr(hostname, '.');
-    if (dot) {
-      /* a dot was found */
-      channel->domains = malloc(sizeof(char *));
-      if (!channel->domains) {
-        rc = ARES_ENOMEM;
-        goto error;
-      }
-      channel->domains[0] = strdup(dot + 1);
-      if (!channel->domains[0]) {
-        rc = ARES_ENOMEM;
-        goto error;
-      }
-      channel->ndomains = 1;
-    }
-#endif
-  }
-
-  if (channel->nsort == -1) {
-    channel->sortlist = NULL;
-    channel->nsort = 0;
-  }
-
-  if (!channel->lookups) {
-    channel->lookups = strdup("fb");
-    if (!channel->lookups)
-      rc = ARES_ENOMEM;
-  }
-
-  error:
-  if(rc) {
-    if(channel->servers)
-      free(channel->servers);
-
-    if(channel->domains && channel->domains[0])
-      free(channel->domains[0]);
-    if(channel->domains)
-      free(channel->domains);
-    if(channel->lookups)
-      free(channel->lookups);
-  }
-
-  if(hostname)
-    free(hostname);
-
-  return rc;
-}
-
-#if !defined(WIN32) && !defined(WATT32)
-static int config_domain(ares_channel channel, char *str)
-{
-  char *q;
-
-  /* Set a single search domain. */
-  q = str;
-  while (*q && !ISSPACE(*q))
-    q++;
-  *q = '\0';
-  return set_search(channel, str);
-}
-
-#if defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 910) && \
-    defined(__OPTIMIZE__) && defined(__unix__) &&  defined(__i386__)
-  /* workaround icc 9.1 optimizer issue */
-# define vqualifier volatile
-#else
-# define vqualifier
-#endif
-
-static int config_lookup(ares_channel channel, const char *str,
-                         const char *bindch, const char *filech)
-{
-  char lookups[3], *l;
-  const char *vqualifier p;
-
-  /* Set the lookup order.  Only the first letter of each work
-   * is relevant, and it has to be "b" for DNS or "f" for the
-   * host file.  Ignore everything else.
-   */
-  l = lookups;
-  p = str;
-  while (*p)
-    {
-      if ((*p == *bindch || *p == *filech) && l < lookups + 2) {
-        if (*p == *bindch) *l++ = 'b';
-        else *l++ = 'f';
-      }
-      while (*p && !ISSPACE(*p) && (*p != ','))
-        p++;
-      while (*p && (ISSPACE(*p) || (*p == ',')))
-        p++;
-    }
-  *l = '\0';
-  channel->lookups = strdup(lookups);
-  return (channel->lookups) ? ARES_SUCCESS : ARES_ENOMEM;
-}
-#endif  /* !WIN32 & !WATT32 */
-
-#ifndef WATT32
-static int config_nameserver(struct server_state **servers, int *nservers,
-                             char *str)
-{
-  struct ares_addr host;
-  struct server_state *newserv;
-  char *p, *txtaddr;
-  /* On Windows, there may be more than one nameserver specified in the same
-   * registry key, so we parse input as a space or comma seperated list.
-   */
-  for (p = str; p;)
-    {
-      /* Skip whitespace and commas. */
-      while (*p && (ISSPACE(*p) || (*p == ',')))
-        p++;
-      if (!*p)
-        /* No more input, done. */
-        break;
-
-      /* Pointer to start of IPv4 or IPv6 address part. */
-      txtaddr = p;
-
-      /* Advance past this address. */
-      while (*p && !ISSPACE(*p) && (*p != ','))
-        p++;
-      if (*p)
-        /* Null terminate this address. */
-        *p++ = '\0';
-      else
-        /* Reached end of input, done when this address is processed. */
-        p = NULL;
-
-      /* Convert textual address to binary format. */
-      if (ares_inet_pton(AF_INET, txtaddr, &host.addrV4) == 1)
-        host.family = AF_INET;
-      else if (ares_inet_pton(AF_INET6, txtaddr, &host.addrV6) == 1)
-        host.family = AF_INET6;
-      else
-        continue;
-
-      /* Resize servers state array. */
-      newserv = realloc(*servers, (*nservers + 1) *
-                        sizeof(struct server_state));
-      if (!newserv)
-        return ARES_ENOMEM;
-
-      /* Store address data. */
-      newserv[*nservers].addr.family = host.family;
-      if (host.family == AF_INET)
-        memcpy(&newserv[*nservers].addr.addrV4, &host.addrV4,
-               sizeof(host.addrV4));
-      else
-        memcpy(&newserv[*nservers].addr.addrV6, &host.addrV6,
-               sizeof(host.addrV6));
-
-      /* Update arguments. */
-      *servers = newserv;
-      *nservers += 1;
-    }
-
-  return ARES_SUCCESS;
-}
-
-#ifndef WIN32
-static int config_sortlist(struct apattern **sortlist, int *nsort,
-                           const char *str)
-{
-  struct apattern pat;
-  const char *q;
-
-  /* Add sortlist entries. */
-  while (*str && *str != ';')
-    {
-      int bits;
-      char ipbuf[16], ipbufpfx[32];
-      /* Find just the IP */
-      q = str;
-      while (*q && *q != '/' && *q != ';' && !ISSPACE(*q))
-        q++;
-      memcpy(ipbuf, str, (int)(q-str));
-      ipbuf[(int)(q-str)] = '\0';
-      /* Find the prefix */
-      if (*q == '/')
-        {
-          const char *str2 = q+1;
-          while (*q && *q != ';' && !ISSPACE(*q))
-            q++;
-          memcpy(ipbufpfx, str, (int)(q-str));
-          ipbufpfx[(int)(q-str)] = '\0';
-          str = str2;
-        }
-      else
-        ipbufpfx[0] = '\0';
-      /* Lets see if it is CIDR */
-      /* First we'll try IPv6 */
-      if ((bits = ares_inet_net_pton(AF_INET6, ipbufpfx[0] ? ipbufpfx : ipbuf,
-                                     &pat.addrV6,
-                                     sizeof(pat.addrV6))) > 0)
-        {
-          pat.type = PATTERN_CIDR;
-          pat.mask.bits = (unsigned short)bits;
-          pat.family = AF_INET6;
-          if (!sortlist_alloc(sortlist, nsort, &pat))
-            return ARES_ENOMEM;
-        }
-      if (ipbufpfx[0] &&
-          (bits = ares_inet_net_pton(AF_INET, ipbufpfx, &pat.addrV4,
-                                     sizeof(pat.addrV4))) > 0)
-        {
-          pat.type = PATTERN_CIDR;
-          pat.mask.bits = (unsigned short)bits;
-          pat.family = AF_INET;
-          if (!sortlist_alloc(sortlist, nsort, &pat))
-            return ARES_ENOMEM;
-        }
-      /* See if it is just a regular IP */
-      else if (ip_addr(ipbuf, (int)(q-str), &pat.addrV4) == 0)
-        {
-          if (ipbufpfx[0])
-            {
-              memcpy(ipbuf, str, (int)(q-str));
-              ipbuf[(int)(q-str)] = '\0';
-              if (ip_addr(ipbuf, (int)(q - str), &pat.mask.addr4) != 0)
-                natural_mask(&pat);
-            }
-          else
-            natural_mask(&pat);
-          pat.family = AF_INET;
-          pat.type = PATTERN_MASK;
-          if (!sortlist_alloc(sortlist, nsort, &pat))
-            return ARES_ENOMEM;
-        }
-      else
-        {
-          while (*q && *q != ';' && !ISSPACE(*q))
-            q++;
-        }
-      str = q;
-      while (ISSPACE(*str))
-        str++;
-    }
-
-  return ARES_SUCCESS;
-}
-#endif  /* !WIN32 */
-#endif  /* !WATT32 */
-
-static int set_search(ares_channel channel, const char *str)
-{
-  int n;
-  const char *p, *q;
-
-  if(channel->ndomains != -1) {
-    /* if we already have some domains present, free them first */
-    for(n=0; n < channel->ndomains; n++)
-      free(channel->domains[n]);
-    free(channel->domains);
-    channel->domains = NULL;
-    channel->ndomains = -1;
-  }
-
-  /* Count the domains given. */
-  n = 0;
-  p = str;
-  while (*p)
-    {
-      while (*p && !ISSPACE(*p))
-        p++;
-      while (ISSPACE(*p))
-        p++;
-      n++;
-    }
-
-  if (!n)
-    {
-      channel->ndomains = 0;
-      return ARES_SUCCESS;
-    }
-
-  channel->domains = malloc(n * sizeof(char *));
-  if (!channel->domains)
-    return ARES_ENOMEM;
-
-  /* Now copy the domains. */
-  n = 0;
-  p = str;
-  while (*p)
-    {
-      channel->ndomains = n;
-      q = p;
-      while (*q && !ISSPACE(*q))
-        q++;
-      channel->domains[n] = malloc(q - p + 1);
-      if (!channel->domains[n])
-        return ARES_ENOMEM;
-      memcpy(channel->domains[n], p, q - p);
-      channel->domains[n][q - p] = 0;
-      p = q;
-      while (ISSPACE(*p))
-        p++;
-      n++;
-    }
-  channel->ndomains = n;
-
-  return ARES_SUCCESS;
-}
-
-static int set_options(ares_channel channel, const char *str)
-{
-  const char *p, *q, *val;
-
-  p = str;
-  while (*p)
-    {
-      q = p;
-      while (*q && !ISSPACE(*q))
-        q++;
-      val = try_option(p, q, "ndots:");
-      if (val && channel->ndots == -1)
-        channel->ndots = atoi(val);
-      val = try_option(p, q, "retrans:");
-      if (val && channel->timeout == -1)
-        channel->timeout = atoi(val);
-      val = try_option(p, q, "retry:");
-      if (val && channel->tries == -1)
-        channel->tries = atoi(val);
-      val = try_option(p, q, "rotate");
-      if (val && channel->rotate == -1)
-        channel->rotate = 1;
-      p = q;
-      while (ISSPACE(*p))
-        p++;
-    }
-
-  return ARES_SUCCESS;
-}
-
-static const char *try_option(const char *p, const char *q, const char *opt)
-{
-  size_t len = strlen(opt);
-  return ((size_t)(q - p) >= len && !strncmp(p, opt, len)) ? &p[len] : NULL;
-}
-
-#if !defined(WIN32) && !defined(WATT32)
-static char *try_config(char *s, const char *opt)
-{
-  size_t len;
-  char *p;
-  char *q;
-
-  if (!s || !opt)
-    /* no line or no option */
-    return NULL;
-
-  /* trim line comment */
-  p = s;
-  while (*p && (*p != '#'))
-    p++;
-  *p = '\0';
-
-  /* trim trailing whitespace */
-  q = p - 1;
-  while ((q >= s) && ISSPACE(*q))
-    q--;
-  *++q = '\0';
-
-  /* skip leading whitespace */
-  p = s;
-  while (*p && ISSPACE(*p))
-    p++;
-
-  if (!*p)
-    /* empty line */
-    return NULL;
-
-  if ((len = strlen(opt)) == 0)
-    /* empty option */
-    return NULL;
-
-  if (strncmp(p, opt, len) != 0)
-    /* line and option do not match */
-    return NULL;
-
-  /* skip over given option name */
-  p += len;
-
-  if (!*p)
-    /* no option value */
-    return NULL;
-
-  if ((opt[len-1] != ':') && (opt[len-1] != '=') && !ISSPACE(*p))
-    /* whitespace between option name and value is mandatory
-       for given option names which do not end with ':' or '=' */
-    return NULL;
-
-  /* skip over whitespace */
-  while (*p && ISSPACE(*p))
-    p++;
-
-  if (!*p)
-    /* no option value */
-    return NULL;
-
-  /* return pointer to option value */
-  return p;
-}
-
-static int sortlist_alloc(struct apattern **sortlist, int *nsort,
-                          struct apattern *pat)
-{
-  struct apattern *newsort;
-  newsort = realloc(*sortlist, (*nsort + 1) * sizeof(struct apattern));
-  if (!newsort)
-    return 0;
-  newsort[*nsort] = *pat;
-  *sortlist = newsort;
-  (*nsort)++;
-  return 1;
-}
-
-static int ip_addr(const char *ipbuf, int len, struct in_addr *addr)
-{
-
-  /* Four octets and three periods yields at most 15 characters. */
-  if (len > 15)
-    return -1;
-
-  addr->s_addr = inet_addr(ipbuf);
-  if (addr->s_addr == INADDR_NONE && strcmp(ipbuf, "255.255.255.255") != 0)
-    return -1;
-  return 0;
-}
-
-static void natural_mask(struct apattern *pat)
-{
-  struct in_addr addr;
-
-  /* Store a host-byte-order copy of pat in a struct in_addr.  Icky,
-   * but portable.
-   */
-  addr.s_addr = ntohl(pat->addrV4.s_addr);
-
-  /* This is out of date in the CIDR world, but some people might
-   * still rely on it.
-   */
-  if (IN_CLASSA(addr.s_addr))
-    pat->mask.addr4.s_addr = htonl(IN_CLASSA_NET);
-  else if (IN_CLASSB(addr.s_addr))
-    pat->mask.addr4.s_addr = htonl(IN_CLASSB_NET);
-  else
-    pat->mask.addr4.s_addr = htonl(IN_CLASSC_NET);
-}
-#endif /* !WIN32 && !WATT32 */
-
-/* initialize an rc4 key. If possible a cryptographically secure random key
-   is generated using a suitable function (for example win32's RtlGenRandom as
-   described in
-   http://blogs.msdn.com/michael_howard/archive/2005/01/14/353379.aspx
-   otherwise the code defaults to cross-platform albeit less secure mechanism
-   using rand
-*/
-static void randomize_key(unsigned char* key,int key_data_len)
-{
-  int randomized = 0;
-  int counter=0;
-#ifdef WIN32
-  BOOLEAN res;
-  if (ares_fpSystemFunction036)
-    {
-      res = (*ares_fpSystemFunction036) (key, key_data_len);
-      if (res)
-        randomized = 1;
-    }
-#else /* !WIN32 */
-#ifdef RANDOM_FILE
-  FILE *f = fopen(RANDOM_FILE, "rb");
-  if(f) {
-    counter = fread(key, 1, key_data_len, f);
-    fclose(f);
-  }
-#endif
-#endif /* WIN32 */
-
-  if ( !randomized ) {
-    for (;counter<key_data_len;counter++)
-      key[counter]=(unsigned char)(rand() % 256);
-  }
-}
-
-static int init_id_key(rc4_key* key,int key_data_len)
-{
-  unsigned char index1;
-  unsigned char index2;
-  unsigned char* state;
-  short counter;
-  unsigned char *key_data_ptr = 0;
-
-  key_data_ptr = calloc(1,key_data_len);
-  if (!key_data_ptr)
-    return ARES_ENOMEM;
-
-  state = &key->state[0];
-  for(counter = 0; counter < 256; counter++)
-    /* unnecessary AND but it keeps some compilers happier */
-    state[counter] = (unsigned char)(counter & 0xff);
-  randomize_key(key->state,key_data_len);
-  key->x = 0;
-  key->y = 0;
-  index1 = 0;
-  index2 = 0;
-  for(counter = 0; counter < 256; counter++)
-  {
-    index2 = (unsigned char)((key_data_ptr[index1] + state[counter] +
-                              index2) % 256);
-    ARES_SWAP_BYTE(&state[counter], &state[index2]);
-
-    index1 = (unsigned char)((index1 + 1) % key_data_len);
-  }
-  free(key_data_ptr);
-  return ARES_SUCCESS;
-}
-
-unsigned short ares__generate_new_id(rc4_key* key)
-{
-  unsigned short r=0;
-  ares__rc4(key, (unsigned char *)&r, sizeof(r));
-  return r;
-}
-
-void ares_set_socket_callback(ares_channel channel,
-                              ares_sock_create_callback cb,
-                              void *data)
-{
-  channel->sock_create_cb = cb;
-  channel->sock_create_cb_data = data;
-}
-
-void ares__init_servers_state(ares_channel channel)
-{
-  struct server_state *server;
-  int i;
-
-  for (i = 0; i < channel->nservers; i++)
-    {
-      server = &channel->servers[i];
-      server->udp_socket = ARES_SOCKET_BAD;
-      server->tcp_socket = ARES_SOCKET_BAD;
-      server->tcp_connection_generation = ++channel->tcp_connection_generation;
-      server->tcp_lenbuf_pos = 0;
-      server->tcp_buffer_pos = 0;
-      server->tcp_buffer = NULL;
-      server->tcp_length = 0;
-      server->qhead = NULL;
-      server->qtail = NULL;
-      ares__init_list_head(&server->queries_to_server);
-      server->channel = channel;
-      server->is_broken = 0;
-    }
-}
diff --git a/src/other/ares/ares_init.pdf b/src/other/ares/ares_init.pdf
deleted file mode 100644
index b3e9fe0..0000000
Binary files a/src/other/ares/ares_init.pdf and /dev/null differ
diff --git a/src/other/ares/ares_init_options.pdf b/src/other/ares/ares_init_options.pdf
deleted file mode 100644
index 9ffd88a..0000000
Binary files a/src/other/ares/ares_init_options.pdf and /dev/null differ
diff --git a/src/other/ares/ares_ipv6.h b/src/other/ares/ares_ipv6.h
deleted file mode 100644
index 4a97199..0000000
--- a/src/other/ares/ares_ipv6.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/* $Id$ */
-
-/* Copyright (C) 2005 by Dominick Meglio
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#ifndef ARES_IPV6_H
-#define ARES_IPV6_H
-
-#ifndef HAVE_PF_INET6
-#define PF_INET6 AF_INET6
-#endif
-
-#ifndef HAVE_STRUCT_SOCKADDR_IN6
-struct sockaddr_in6
-{
-  unsigned short       sin6_family;
-  unsigned short       sin6_port;
-  unsigned long        sin6_flowinfo;
-  struct ares_in6_addr sin6_addr;
-  unsigned int         sin6_scope_id;
-};
-#endif
-
-#ifndef HAVE_STRUCT_ADDRINFO
-struct addrinfo
-{
-  int              ai_flags;
-  int              ai_family;
-  int              ai_socktype;
-  int              ai_protocol;
-  ares_socklen_t   ai_addrlen;   /* Follow rfc3493 struct addrinfo */
-  char            *ai_canonname;
-  struct sockaddr *ai_addr;
-  struct addrinfo *ai_next;
-};
-#endif
-
-#ifndef NS_IN6ADDRSZ
-#if SIZEOF_STRUCT_IN6_ADDR == 0
-/* We cannot have it set to zero, so we pick a fixed value here */
-#define NS_IN6ADDRSZ 16
-#else
-#define NS_IN6ADDRSZ SIZEOF_STRUCT_IN6_ADDR
-#endif
-#endif
-
-#ifndef NS_INADDRSZ
-#define NS_INADDRSZ SIZEOF_STRUCT_IN_ADDR
-#endif
-
-#ifndef NS_INT16SZ
-#define NS_INT16SZ 2
-#endif
-
-#ifndef IF_NAMESIZE
-#ifdef IFNAMSIZ
-#define IF_NAMESIZE IFNAMSIZ
-#else
-#define IF_NAMESIZE 256
-#endif
-#endif
-
-#endif /* ARES_IPV6_H */
diff --git a/src/other/ares/ares_library_cleanup.pdf b/src/other/ares/ares_library_cleanup.pdf
deleted file mode 100644
index 057ba86..0000000
Binary files a/src/other/ares/ares_library_cleanup.pdf and /dev/null differ
diff --git a/src/other/ares/ares_library_init.c b/src/other/ares/ares_library_init.c
deleted file mode 100644
index aac34ea..0000000
--- a/src/other/ares/ares_library_init.c
+++ /dev/null
@@ -1,133 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- * Copyright (C) 2004-2009 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#include "ares.h"
-#include "ares_library_init.h"
-#include "ares_private.h"
-
-/* library-private global and unique instance vars */
-
-#ifdef USE_WINSOCK
-fpGetNetworkParams_t ares_fpGetNetworkParams = ZERO_NULL;
-fpSystemFunction036_t ares_fpSystemFunction036 = ZERO_NULL;
-#endif
-
-/* library-private global vars with source visibility restricted to this file */
-
-static unsigned int ares_initialized;
-static int          ares_init_flags;
-
-#ifdef USE_WINSOCK
-static HMODULE hnd_iphlpapi;
-static HMODULE hnd_advapi32;
-#endif
-
-
-static int ares_win32_init(void)
-{
-#ifdef USE_WINSOCK
-
-  hnd_iphlpapi = 0;
-  hnd_iphlpapi = LoadLibrary("iphlpapi.dll");
-  if (!hnd_iphlpapi)
-    return ARES_ELOADIPHLPAPI;
-
-  ares_fpGetNetworkParams = (fpGetNetworkParams_t)
-    GetProcAddress(hnd_iphlpapi, "GetNetworkParams");
-  if (!ares_fpGetNetworkParams)
-    {
-      FreeLibrary(hnd_iphlpapi);
-      return ARES_EADDRGETNETWORKPARAMS;
-    }
-
-  /*
-   * When advapi32.dll is unavailable or advapi32.dll has no SystemFunction036,
-   * also known as RtlGenRandom, which is the case for Windows versions prior
-   * to WinXP then c-ares uses portable rand() function. Then don't error here.
-   */
-
-  hnd_advapi32 = 0;
-  hnd_advapi32 = LoadLibrary("advapi32.dll");
-  if (hnd_advapi32)
-    {
-      ares_fpSystemFunction036 = (fpSystemFunction036_t)
-        GetProcAddress(hnd_advapi32, "SystemFunction036");
-    }
-
-#endif
-  return ARES_SUCCESS;
-}
-
-
-static void ares_win32_cleanup(void)
-{
-#ifdef USE_WINSOCK
-  if (hnd_advapi32)
-    FreeLibrary(hnd_advapi32);
-  if (hnd_iphlpapi)
-    FreeLibrary(hnd_iphlpapi);
-#endif
-}
-
-
-int ares_library_init(int flags)
-{
-  int res;
-
-  if (ares_initialized)
-    return ARES_SUCCESS;
-  ares_initialized++;
-
-  if (flags & ARES_LIB_INIT_WIN32)
-    {
-      res = ares_win32_init();
-      if (res != ARES_SUCCESS)
-        return res;
-    }
-
-  ares_init_flags = flags;
-
-  return ARES_SUCCESS;
-}
-
-
-void ares_library_cleanup(void)
-{
-  if (!ares_initialized)
-    return;
-  ares_initialized--;
-
-  if (ares_init_flags & ARES_LIB_INIT_WIN32)
-    ares_win32_cleanup();
-
-  ares_init_flags = ARES_LIB_INIT_NONE;
-}
-
-
-int ares_library_initialized(void)
-{
-#ifdef USE_WINSOCK
-  if (!ares_initialized)
-    return ARES_ENOTINITIALIZED;
-#endif
-  return ARES_SUCCESS;
-}
-
-
diff --git a/src/other/ares/ares_library_init.h b/src/other/ares/ares_library_init.h
deleted file mode 100644
index 515c17d..0000000
--- a/src/other/ares/ares_library_init.h
+++ /dev/null
@@ -1,40 +0,0 @@
-#ifndef HEADER_CARES_LIBRARY_INIT_H
-#define HEADER_CARES_LIBRARY_INIT_H
-
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- * Copyright (C) 2004-2009 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef USE_WINSOCK
-
-#include <iphlpapi.h>
-
-typedef DWORD (WINAPI *fpGetNetworkParams_t) (FIXED_INFO*, DWORD*);
-typedef BOOLEAN (APIENTRY *fpSystemFunction036_t) (void*, ULONG);
-
-/* Forward-declaration of variables defined in ares_library_init.c */
-/* that are global and unique instances for whole c-ares library.  */
-
-extern fpGetNetworkParams_t ares_fpGetNetworkParams;
-extern fpSystemFunction036_t ares_fpSystemFunction036;
-
-#endif /* USE_WINSOCK */
-
-#endif /* HEADER_CARES_LIBRARY_INIT_H */
-
diff --git a/src/other/ares/ares_library_init.pdf b/src/other/ares/ares_library_init.pdf
deleted file mode 100644
index 261f95e..0000000
Binary files a/src/other/ares/ares_library_init.pdf and /dev/null differ
diff --git a/src/other/ares/ares_llist.c b/src/other/ares/ares_llist.c
deleted file mode 100644
index f261dc7..0000000
--- a/src/other/ares/ares_llist.c
+++ /dev/null
@@ -1,87 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#include "ares.h"
-#include "ares_private.h"
-
-/* Routines for managing doubly-linked circular linked lists with a
- * dummy head.
- */
-
-/* Initialize a new head node */
-void ares__init_list_head(struct list_node* head) {
-  head->prev = head;
-  head->next = head;
-  head->data = NULL;
-}
-
-/* Initialize a list node */
-void ares__init_list_node(struct list_node* node, void* d) {
-  node->prev = NULL;
-  node->next = NULL;
-  node->data = d;
-}
-
-/* Returns true iff the given list is empty */
-int ares__is_list_empty(struct list_node* head) {
-  return ((head->next == head) && (head->prev == head));
-}
-
-/* Inserts new_node before old_node */
-void ares__insert_in_list(struct list_node* new_node,
-                          struct list_node* old_node) {
-  new_node->next = old_node;
-  new_node->prev = old_node->prev;
-  old_node->prev->next = new_node;
-  old_node->prev = new_node;
-}
-
-/* Removes the node from the list it's in, if any */
-void ares__remove_from_list(struct list_node* node) {
-  if (node->next != NULL) {
-    node->prev->next = node->next;
-    node->next->prev = node->prev;
-    node->prev = NULL;
-    node->next = NULL;
-  }
-}
-
-/* Swap the contents of two lists */
-void ares__swap_lists(struct list_node* head_a,
-                      struct list_node* head_b) {
-  int is_a_empty = ares__is_list_empty(head_a);
-  int is_b_empty = ares__is_list_empty(head_b);
-  struct list_node old_a = *head_a;
-  struct list_node old_b = *head_b;
-
-  if (is_a_empty) {
-    ares__init_list_head(head_b);
-  } else {
-    *head_b = old_a;
-    old_a.next->prev = head_b;
-    old_a.prev->next = head_b;
-  }
-  if (is_b_empty) {
-    ares__init_list_head(head_a);
-  } else {
-    *head_a = old_b;
-    old_b.next->prev = head_a;
-    old_b.prev->next = head_a;
-  }
-}
diff --git a/src/other/ares/ares_llist.h b/src/other/ares/ares_llist.h
deleted file mode 100644
index d20af7e..0000000
--- a/src/other/ares/ares_llist.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#ifndef __ARES_LLIST_H
-#define __ARES_LLIST_H
-
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-
-/* Node definition for circular, doubly-linked list */
-struct list_node {
-  struct list_node *prev;
-  struct list_node *next;
-  void* data;
-};
-
-void ares__init_list_head(struct list_node* head);
-
-void ares__init_list_node(struct list_node* node, void* d);
-
-int ares__is_list_empty(struct list_node* head);
-
-void ares__insert_in_list(struct list_node* new_node,
-                          struct list_node* old_node);
-
-void ares__remove_from_list(struct list_node* node);
-
-void ares__swap_lists(struct list_node* head_a,
-                      struct list_node* head_b);
-
-#endif /* __ARES_LLIST_H */
diff --git a/src/other/ares/ares_mkquery.c b/src/other/ares/ares_mkquery.c
deleted file mode 100644
index 5657188..0000000
--- a/src/other/ares/ares_mkquery.c
+++ /dev/null
@@ -1,196 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-#include "ares.h"
-#include "ares_dns.h"
-#include "ares_private.h"
-
-/* Header format, from RFC 1035:
- *                                  1  1  1  1  1  1
- *    0  1  2  3  4  5  6  7  8  9  0  1  2  3  4  5
- *  +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- *  |                      ID                       |
- *  +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- *  |QR|   Opcode  |AA|TC|RD|RA|   Z    |   RCODE   |
- *  +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- *  |                    QDCOUNT                    |
- *  +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- *  |                    ANCOUNT                    |
- *  +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- *  |                    NSCOUNT                    |
- *  +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- *  |                    ARCOUNT                    |
- *  +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- *
- * AA, TC, RA, and RCODE are only set in responses.  Brief description
- * of the remaining fields:
- *      ID      Identifier to match responses with queries
- *      QR      Query (0) or response (1)
- *      Opcode  For our purposes, always QUERY
- *      RD      Recursion desired
- *      Z       Reserved (zero)
- *      QDCOUNT Number of queries
- *      ANCOUNT Number of answers
- *      NSCOUNT Number of name server records
- *      ARCOUNT Number of additional records
- *
- * Question format, from RFC 1035:
- *                                  1  1  1  1  1  1
- *    0  1  2  3  4  5  6  7  8  9  0  1  2  3  4  5
- *  +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- *  |                                               |
- *  /                     QNAME                     /
- *  /                                               /
- *  +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- *  |                     QTYPE                     |
- *  +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- *  |                     QCLASS                    |
- *  +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- *
- * The query name is encoded as a series of labels, each represented
- * as a one-byte length (maximum 63) followed by the text of the
- * label.  The list is terminated by a label of length zero (which can
- * be thought of as the root domain).
- */
-
-int ares_mkquery(const char *name, int dnsclass, int type, unsigned short id,
-                 int rd, unsigned char **buf, int *buflen)
-{
-  int len;
-  unsigned char *q;
-  const char *p;
-
-  /* Set our results early, in case we bail out early with an error. */
-  *buflen = 0;
-  *buf = NULL;
-
-  /* Compute the length of the encoded name so we can check buflen.
-   * Start counting at 1 for the zero-length label at the end. */
-  len = 1;
-  for (p = name; *p; p++)
-    {
-      if (*p == '\\' && *(p + 1) != 0)
-        p++;
-      len++;
-    }
-  /* If there are n periods in the name, there are n + 1 labels, and
-   * thus n + 1 length fields, unless the name is empty or ends with a
-   * period.  So add 1 unless name is empty or ends with a period.
-   */
-  if (*name && *(p - 1) != '.')
-    len++;
-
-  /* Immediately reject names that are longer than the maximum of 255
-   * bytes that's specified in RFC 1035 ("To simplify implementations,
-   * the total length of a domain name (i.e., label octets and label
-   * length octets) is restricted to 255 octets or less."). We aren't
-   * doing this just to be a stickler about RFCs. For names that are
-   * too long, 'dnscache' closes its TCP connection to us immediately
-   * (when using TCP) and ignores the request when using UDP, and
-   * BIND's named returns ServFail (TCP or UDP). Sending a request
-   * that we know will cause 'dnscache' to close the TCP connection is
-   * painful, since that makes any other outstanding requests on that
-   * connection fail. And sending a UDP request that we know
-   * 'dnscache' will ignore is bad because resources will be tied up
-   * until we time-out the request.
-   */
-  if (len > MAXCDNAME)
-    return ARES_EBADNAME;
-
-  *buflen = len + HFIXEDSZ + QFIXEDSZ;
-  *buf = malloc(*buflen);
-  if (!*buf)
-      return ARES_ENOMEM;
-
-  /* Set up the header. */
-  q = *buf;
-  memset(q, 0, HFIXEDSZ);
-  DNS_HEADER_SET_QID(q, id);
-  DNS_HEADER_SET_OPCODE(q, QUERY);
-  if (rd) {
-    DNS_HEADER_SET_RD(q, 1);
-  }
-  else {
-    DNS_HEADER_SET_RD(q, 0);
-  }
-  DNS_HEADER_SET_QDCOUNT(q, 1);
-
-  /* A name of "." is a screw case for the loop below, so adjust it. */
-  if (strcmp(name, ".") == 0)
-    name++;
-
-  /* Start writing out the name after the header. */
-  q += HFIXEDSZ;
-  while (*name)
-    {
-      if (*name == '.')
-        return ARES_EBADNAME;
-
-      /* Count the number of bytes in this label. */
-      len = 0;
-      for (p = name; *p && *p != '.'; p++)
-        {
-          if (*p == '\\' && *(p + 1) != 0)
-            p++;
-          len++;
-        }
-      if (len > MAXLABEL)
-        return ARES_EBADNAME;
-
-      /* Encode the length and copy the data. */
-      *q++ = (unsigned char)len;
-      for (p = name; *p && *p != '.'; p++)
-        {
-          if (*p == '\\' && *(p + 1) != 0)
-            p++;
-          *q++ = *p;
-        }
-
-      /* Go to the next label and repeat, unless we hit the end. */
-      if (!*p)
-        break;
-      name = p + 1;
-    }
-
-  /* Add the zero-length label at the end. */
-  *q++ = 0;
-
-  /* Finish off the question with the type and class. */
-  DNS_QUESTION_SET_TYPE(q, type);
-  DNS_QUESTION_SET_CLASS(q, dnsclass);
-
-  return ARES_SUCCESS;
-}
diff --git a/src/other/ares/ares_mkquery.pdf b/src/other/ares/ares_mkquery.pdf
deleted file mode 100644
index 57488ec..0000000
Binary files a/src/other/ares/ares_mkquery.pdf and /dev/null differ
diff --git a/src/other/ares/ares_nowarn.c b/src/other/ares/ares_nowarn.c
deleted file mode 100644
index 91d0a5f..0000000
--- a/src/other/ares/ares_nowarn.c
+++ /dev/null
@@ -1,53 +0,0 @@
-/* $Id$ */
-
-/* Copyright (C) 2010 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-
-#include "ares_setup.h"
-
-#include "ares_nowarn.h"
-
-#if (SIZEOF_INT == 2)
-#  define CARES_MASK_SINT  0x7FFF
-#  define CARES_MASK_UINT  0xFFFF
-#elif (SIZEOF_INT == 4)
-#  define CARES_MASK_SINT  0x7FFFFFFF
-#  define CARES_MASK_UINT  0xFFFFFFFF
-#elif (SIZEOF_INT == 8)
-#  define CARES_MASK_SINT  0x7FFFFFFFFFFFFFFF
-#  define CARES_MASK_UINT  0xFFFFFFFFFFFFFFFF
-#elif (SIZEOF_INT == 16)
-#  define CARES_MASK_SINT  0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-#  define CARES_MASK_UINT  0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-#endif
-
-/*
-** size_t to signed int
-*/
-
-int aresx_uztosi(size_t uznum)
-{
-#ifdef __INTEL_COMPILER
-#  pragma warning(push)
-#  pragma warning(disable:810) /* conversion may lose significant bits */
-#endif
-
-  return (int)(uznum & (size_t) CARES_MASK_SINT);
-
-#ifdef __INTEL_COMPILER
-#  pragma warning(pop)
-#endif
-}
diff --git a/src/other/ares/ares_nowarn.h b/src/other/ares/ares_nowarn.h
deleted file mode 100644
index 0b7181b..0000000
--- a/src/other/ares/ares_nowarn.h
+++ /dev/null
@@ -1,23 +0,0 @@
-#ifndef HEADER_CARES_NOWARN_H
-#define HEADER_CARES_NOWARN_H
-
-/* $Id$ */
-
-/* Copyright (C) 2010 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-int aresx_uztosi(size_t uznum);
-
-#endif /* HEADER_CARES_NOWARN_H */
diff --git a/src/other/ares/ares_options.c b/src/other/ares/ares_options.c
deleted file mode 100644
index 0c87974..0000000
--- a/src/other/ares/ares_options.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- * Copyright (C) 2008-2010 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-
-#include "ares_setup.h"
-
-#include "ares.h"
-#include "ares_data.h"
-#include "ares_private.h"
-
-
-int ares_get_servers(ares_channel channel,
-                     struct ares_addr_node **servers)
-{
-  struct ares_addr_node *srvr_head = NULL;
-  struct ares_addr_node *srvr_last = NULL;
-  struct ares_addr_node *srvr_curr;
-  int status = ARES_SUCCESS;
-  int i;
-
-  if (!channel)
-    return ARES_ENODATA;
-
-  for (i = 0; i < channel->nservers; i++)
-    {
-      /* Allocate storage for this server node appending it to the list */
-      srvr_curr = ares_malloc_data(ARES_DATATYPE_ADDR_NODE);
-      if (!srvr_curr)
-        {
-          status = ARES_ENOMEM;
-          break;
-        }
-      if (srvr_last)
-        {
-          srvr_last->next = srvr_curr;
-        }
-      else
-        {
-          srvr_head = srvr_curr;
-        }
-      srvr_last = srvr_curr;
-
-      /* Fill this server node data */
-      srvr_curr->family = channel->servers[i].addr.family;
-      if (srvr_curr->family == AF_INET)
-        memcpy(&srvr_curr->addrV4, &channel->servers[i].addr.addrV4,
-               sizeof(srvr_curr->addrV4));
-      else
-        memcpy(&srvr_curr->addrV6, &channel->servers[i].addr.addrV6,
-               sizeof(srvr_curr->addrV6));
-    }
-
-  if (status != ARES_SUCCESS)
-    {
-      if (srvr_head)
-        {
-          ares_free_data(srvr_head);
-          srvr_head = NULL;
-        }
-    }
-
-  *servers = srvr_head;
-
-  return status;
-}
-
-
-int ares_set_servers(ares_channel channel,
-                     struct ares_addr_node *servers)
-{
-  struct ares_addr_node *srvr;
-  int num_srvrs = 0;
-  int i;
-
-  if (ares_library_initialized() != ARES_SUCCESS)
-    return ARES_ENOTINITIALIZED;
-
-  if (!channel)
-    return ARES_ENODATA;
-
-  ares__destroy_servers_state(channel);
-
-  for (srvr = servers; srvr; srvr = srvr->next)
-    {
-      num_srvrs++;
-    }
-
-  if (num_srvrs > 0)
-    {
-      /* Allocate storage for servers state */
-      channel->servers = malloc(num_srvrs * sizeof(struct server_state));
-      if (!channel->servers)
-        {
-          return ARES_ENOMEM;
-        }
-      channel->nservers = num_srvrs;
-      /* Fill servers state address data */
-      for (i = 0, srvr = servers; srvr; i++, srvr = srvr->next)
-        {
-          channel->servers[i].addr.family = srvr->family;
-          if (srvr->family == AF_INET)
-            memcpy(&channel->servers[i].addr.addrV4, &srvr->addrV4,
-                   sizeof(srvr->addrV4));
-          else
-            memcpy(&channel->servers[i].addr.addrV6, &srvr->addrV6,
-                   sizeof(srvr->addrV6));
-        }
-      /* Initialize servers state remaining data */
-      ares__init_servers_state(channel);
-    }
-
-  return ARES_SUCCESS;
-}
diff --git a/src/other/ares/ares_parse_a_reply.c b/src/other/ares/ares_parse_a_reply.c
deleted file mode 100644
index a6ed7dd..0000000
--- a/src/other/ares/ares_parse_a_reply.c
+++ /dev/null
@@ -1,257 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#ifdef HAVE_STRINGS_H
-#  include <strings.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-#ifdef HAVE_LIMITS_H
-#  include <limits.h>
-#endif
-
-#include "ares.h"
-#include "ares_dns.h"
-#include "ares_private.h"
-
-int ares_parse_a_reply(const unsigned char *abuf, int alen,
-                       struct hostent **host,
-                       struct ares_addrttl *addrttls, int *naddrttls)
-{
-  unsigned int qdcount, ancount;
-  int status, i, rr_type, rr_class, rr_len, rr_ttl, naddrs;
-  int cname_ttl = INT_MAX;  /* the TTL imposed by the CNAME chain */
-  int naliases;
-  long len;
-  const unsigned char *aptr;
-  char *hostname, *rr_name, *rr_data, **aliases;
-  struct in_addr *addrs;
-  struct hostent *hostent;
-  const int max_addr_ttls = (addrttls && naddrttls) ? *naddrttls : 0;
-
-  /* Set *host to NULL for all failure cases. */
-  if (host)
-    *host = NULL;
-  /* Same with *naddrttls. */
-  if (naddrttls)
-    *naddrttls = 0;
-
-  /* Give up if abuf doesn't have room for a header. */
-  if (alen < HFIXEDSZ)
-    return ARES_EBADRESP;
-
-  /* Fetch the question and answer count from the header. */
-  qdcount = DNS_HEADER_QDCOUNT(abuf);
-  ancount = DNS_HEADER_ANCOUNT(abuf);
-  if (qdcount != 1)
-    return ARES_EBADRESP;
-
-  /* Expand the name from the question, and skip past the question. */
-  aptr = abuf + HFIXEDSZ;
-  status = ares__expand_name_for_response(aptr, abuf, alen, &hostname, &len);
-  if (status != ARES_SUCCESS)
-    return status;
-  if (aptr + len + QFIXEDSZ > abuf + alen)
-    {
-      free(hostname);
-      return ARES_EBADRESP;
-    }
-  aptr += len + QFIXEDSZ;
-
-  if (host)
-    {
-      /* Allocate addresses and aliases; ancount gives an upper bound for
-         both. */
-      addrs = malloc(ancount * sizeof(struct in_addr));
-      if (!addrs)
-        {
-          free(hostname);
-          return ARES_ENOMEM;
-        }
-      aliases = malloc((ancount + 1) * sizeof(char *));
-      if (!aliases)
-        {
-          free(hostname);
-          free(addrs);
-          return ARES_ENOMEM;
-        }
-    }
-  else
-    {
-      addrs = NULL;
-      aliases = NULL;
-    }
-
-  naddrs = 0;
-  naliases = 0;
-
-  /* Examine each answer resource record (RR) in turn. */
-  for (i = 0; i < (int)ancount; i++)
-    {
-      /* Decode the RR up to the data field. */
-      status = ares__expand_name_for_response(aptr, abuf, alen, &rr_name, &len);
-      if (status != ARES_SUCCESS)
-        break;
-      aptr += len;
-      if (aptr + RRFIXEDSZ > abuf + alen)
-        {
-          status = ARES_EBADRESP;
-          break;
-        }
-      rr_type = DNS_RR_TYPE(aptr);
-      rr_class = DNS_RR_CLASS(aptr);
-      rr_len = DNS_RR_LEN(aptr);
-      rr_ttl = DNS_RR_TTL(aptr);
-      aptr += RRFIXEDSZ;
-
-      if (rr_class == C_IN && rr_type == T_A
-          && rr_len == sizeof(struct in_addr)
-          && strcasecmp(rr_name, hostname) == 0)
-        {
-          if (addrs)
-            {
-              if (aptr + sizeof(struct in_addr) > abuf + alen)
-              {
-                status = ARES_EBADRESP;
-                break;
-              }
-              memcpy(&addrs[naddrs], aptr, sizeof(struct in_addr));
-            }
-          if (naddrs < max_addr_ttls)
-            {
-              struct ares_addrttl * const at = &addrttls[naddrs];
-              if (aptr + sizeof(struct in_addr) > abuf + alen)
-              {
-                status = ARES_EBADRESP;
-                break;
-              }
-              memcpy(&at->ipaddr, aptr,  sizeof(struct in_addr));
-              at->ttl = rr_ttl;
-            }
-          naddrs++;
-          status = ARES_SUCCESS;
-        }
-
-      if (rr_class == C_IN && rr_type == T_CNAME)
-        {
-          /* Record the RR name as an alias. */
-          if (aliases)
-            aliases[naliases] = rr_name;
-          else
-            free(rr_name);
-          naliases++;
-
-          /* Decode the RR data and replace the hostname with it. */
-          status = ares__expand_name_for_response(aptr, abuf, alen, &rr_data,
-                                                  &len);
-          if (status != ARES_SUCCESS)
-            break;
-          free(hostname);
-          hostname = rr_data;
-
-          /* Take the min of the TTLs we see in the CNAME chain. */
-          if (cname_ttl > rr_ttl)
-            cname_ttl = rr_ttl;
-        }
-      else
-        free(rr_name);
-
-      aptr += rr_len;
-      if (aptr > abuf + alen)
-        {
-          status = ARES_EBADRESP;
-          break;
-        }
-    }
-
-  if (status == ARES_SUCCESS && naddrs == 0)
-    status = ARES_ENODATA;
-  if (status == ARES_SUCCESS)
-    {
-      /* We got our answer. */
-      if (naddrttls)
-        {
-          const int n = naddrs < max_addr_ttls ? naddrs : max_addr_ttls;
-          for (i = 0; i < n; i++)
-            {
-              /* Ensure that each A TTL is no larger than the CNAME TTL. */
-              if (addrttls[i].ttl > cname_ttl)
-                addrttls[i].ttl = cname_ttl;
-            }
-          *naddrttls = n;
-        }
-      if (aliases)
-        aliases[naliases] = NULL;
-      if (host)
-        {
-          /* Allocate memory to build the host entry. */
-          hostent = malloc(sizeof(struct hostent));
-          if (hostent)
-            {
-              hostent->h_addr_list = malloc((naddrs + 1) * sizeof(char *));
-              if (hostent->h_addr_list)
-                {
-                  /* Fill in the hostent and return successfully. */
-                  hostent->h_name = hostname;
-                  hostent->h_aliases = aliases;
-                  hostent->h_addrtype = AF_INET;
-                  hostent->h_length = sizeof(struct in_addr);
-                  for (i = 0; i < naddrs; i++)
-                    hostent->h_addr_list[i] = (char *) &addrs[i];
-                  hostent->h_addr_list[naddrs] = NULL;
-                  *host = hostent;
-                  return ARES_SUCCESS;
-                }
-              free(hostent);
-            }
-          status = ARES_ENOMEM;
-        }
-     }
-  if (aliases)
-    {
-      for (i = 0; i < naliases; i++)
-        free(aliases[i]);
-      free(aliases);
-    }
-  free(addrs);
-  free(hostname);
-  return status;
-}
diff --git a/src/other/ares/ares_parse_a_reply.pdf b/src/other/ares/ares_parse_a_reply.pdf
deleted file mode 100644
index f1617c1..0000000
Binary files a/src/other/ares/ares_parse_a_reply.pdf and /dev/null differ
diff --git a/src/other/ares/ares_parse_aaaa_reply.c b/src/other/ares/ares_parse_aaaa_reply.c
deleted file mode 100644
index 8c2843f..0000000
--- a/src/other/ares/ares_parse_aaaa_reply.c
+++ /dev/null
@@ -1,257 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- * Copyright 2005 Dominick Meglio
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#ifdef HAVE_STRINGS_H
-#  include <strings.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-#ifdef HAVE_LIMITS_H
-#  include <limits.h>
-#endif
-
-#include "ares.h"
-#include "ares_dns.h"
-#include "inet_net_pton.h"
-#include "ares_private.h"
-
-int ares_parse_aaaa_reply(const unsigned char *abuf, int alen,
-                          struct hostent **host, struct ares_addr6ttl *addrttls,
-                          int *naddrttls)
-{
-  unsigned int qdcount, ancount;
-  int status, i, rr_type, rr_class, rr_len, rr_ttl, naddrs;
-  int cname_ttl = INT_MAX;  /* the TTL imposed by the CNAME chain */
-  int naliases;
-  long len;
-  const unsigned char *aptr;
-  char *hostname, *rr_name, *rr_data, **aliases;
-  struct ares_in6_addr *addrs;
-  struct hostent *hostent;
-  const int max_addr_ttls = (addrttls && naddrttls) ? *naddrttls : 0;
-
-  /* Set *host to NULL for all failure cases. */
-  if (host)
-    *host = NULL;
-  /* Same with *naddrttls. */
-  if (naddrttls)
-    *naddrttls = 0;
-
-  /* Give up if abuf doesn't have room for a header. */
-  if (alen < HFIXEDSZ)
-    return ARES_EBADRESP;
-
-  /* Fetch the question and answer count from the header. */
-  qdcount = DNS_HEADER_QDCOUNT(abuf);
-  ancount = DNS_HEADER_ANCOUNT(abuf);
-  if (qdcount != 1)
-    return ARES_EBADRESP;
-
-  /* Expand the name from the question, and skip past the question. */
-  aptr = abuf + HFIXEDSZ;
-  status = ares__expand_name_for_response(aptr, abuf, alen, &hostname, &len);
-  if (status != ARES_SUCCESS)
-    return status;
-  if (aptr + len + QFIXEDSZ > abuf + alen)
-    {
-      free(hostname);
-      return ARES_EBADRESP;
-    }
-  aptr += len + QFIXEDSZ;
-
-  /* Allocate addresses and aliases; ancount gives an upper bound for both. */
-  if (host)
-    {
-      addrs = malloc(ancount * sizeof(struct ares_in6_addr));
-      if (!addrs)
-        {
-          free(hostname);
-          return ARES_ENOMEM;
-        }
-      aliases = malloc((ancount + 1) * sizeof(char *));
-      if (!aliases)
-        {
-          free(hostname);
-          free(addrs);
-          return ARES_ENOMEM;
-        }
-    }
-  else
-    {
-      addrs = NULL;
-      aliases = NULL;
-    }
-  naddrs = 0;
-  naliases = 0;
-
-  /* Examine each answer resource record (RR) in turn. */
-  for (i = 0; i < (int)ancount; i++)
-    {
-      /* Decode the RR up to the data field. */
-      status = ares__expand_name_for_response(aptr, abuf, alen, &rr_name, &len);
-      if (status != ARES_SUCCESS)
-        break;
-      aptr += len;
-      if (aptr + RRFIXEDSZ > abuf + alen)
-        {
-          status = ARES_EBADRESP;
-          break;
-        }
-      rr_type = DNS_RR_TYPE(aptr);
-      rr_class = DNS_RR_CLASS(aptr);
-      rr_len = DNS_RR_LEN(aptr);
-      rr_ttl = DNS_RR_TTL(aptr);
-      aptr += RRFIXEDSZ;
-
-      if (rr_class == C_IN && rr_type == T_AAAA
-          && rr_len == sizeof(struct ares_in6_addr)
-          && strcasecmp(rr_name, hostname) == 0)
-        {
-          if (addrs)
-            {
-              if (aptr + sizeof(struct ares_in6_addr) > abuf + alen)
-              {
-                status = ARES_EBADRESP;
-                break;
-              }
-              memcpy(&addrs[naddrs], aptr, sizeof(struct ares_in6_addr));
-            }
-          if (naddrs < max_addr_ttls)
-            {
-              struct ares_addr6ttl * const at = &addrttls[naddrs];
-              if (aptr + sizeof(struct ares_in6_addr) > abuf + alen)
-              {
-                status = ARES_EBADRESP;
-                break;
-              }
-              memcpy(&at->ip6addr, aptr,  sizeof(struct ares_in6_addr));
-              at->ttl = rr_ttl;
-            }
-          naddrs++;
-          status = ARES_SUCCESS;
-        }
-
-      if (rr_class == C_IN && rr_type == T_CNAME)
-        {
-          /* Record the RR name as an alias. */
-          if (aliases)
-            aliases[naliases] = rr_name;
-          else
-            free(rr_name);
-          naliases++;
-
-          /* Decode the RR data and replace the hostname with it. */
-          status = ares__expand_name_for_response(aptr, abuf, alen, &rr_data,
-                                                  &len);
-          if (status != ARES_SUCCESS)
-            break;
-          free(hostname);
-          hostname = rr_data;
-
-          /* Take the min of the TTLs we see in the CNAME chain. */
-          if (cname_ttl > rr_ttl)
-            cname_ttl = rr_ttl;
-        }
-      else
-        free(rr_name);
-
-      aptr += rr_len;
-      if (aptr > abuf + alen)
-        {
-          status = ARES_EBADRESP;
-          break;
-        }
-    }
-
-  if (status == ARES_SUCCESS && naddrs == 0)
-    status = ARES_ENODATA;
-  if (status == ARES_SUCCESS)
-    {
-      /* We got our answer. */
-      if (naddrttls)
-        {
-          const int n = naddrs < max_addr_ttls ? naddrs : max_addr_ttls;
-          for (i = 0; i < n; i++)
-            {
-              /* Ensure that each A TTL is no larger than the CNAME TTL. */
-              if (addrttls[i].ttl > cname_ttl)
-                addrttls[i].ttl = cname_ttl;
-            }
-          *naddrttls = n;
-        }
-      if (aliases)
-        aliases[naliases] = NULL;
-      if (host)
-        {
-          /* Allocate memory to build the host entry. */
-          hostent = malloc(sizeof(struct hostent));
-          if (hostent)
-            {
-              hostent->h_addr_list = malloc((naddrs + 1) * sizeof(char *));
-              if (hostent->h_addr_list)
-                {
-                  /* Fill in the hostent and return successfully. */
-                  hostent->h_name = hostname;
-                  hostent->h_aliases = aliases;
-                  hostent->h_addrtype = AF_INET6;
-                  hostent->h_length = sizeof(struct ares_in6_addr);
-                  for (i = 0; i < naddrs; i++)
-                    hostent->h_addr_list[i] = (char *) &addrs[i];
-                  hostent->h_addr_list[naddrs] = NULL;
-                  *host = hostent;
-                  return ARES_SUCCESS;
-                }
-              free(hostent);
-            }
-          status = ARES_ENOMEM;
-        }
-    }
-  if (aliases)
-    {
-      for (i = 0; i < naliases; i++)
-        free(aliases[i]);
-      free(aliases);
-    }
-  free(addrs);
-  free(hostname);
-  return status;
-}
diff --git a/src/other/ares/ares_parse_aaaa_reply.pdf b/src/other/ares/ares_parse_aaaa_reply.pdf
deleted file mode 100644
index fa877fd..0000000
Binary files a/src/other/ares/ares_parse_aaaa_reply.pdf and /dev/null differ
diff --git a/src/other/ares/ares_parse_ns_reply.c b/src/other/ares/ares_parse_ns_reply.c
deleted file mode 100644
index 25c6329..0000000
--- a/src/other/ares/ares_parse_ns_reply.c
+++ /dev/null
@@ -1,182 +0,0 @@
-/* $Id */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-/*
- * ares_parse_ns_reply created by Vlad Dinulescu <vlad.dinulescu at avira.com>
- *      on behalf of AVIRA Gmbh - http://www.avira.com
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-#include "ares.h"
-#include "ares_dns.h"
-#include "ares_private.h"
-
-int ares_parse_ns_reply( const unsigned char* abuf, int alen,
-                         struct hostent** host )
-{
-  unsigned int qdcount, ancount;
-  int status, i, rr_type, rr_class, rr_len;
-  int nameservers_num;
-  long len;
-  const unsigned char *aptr;
-  char* hostname, *rr_name, *rr_data, **nameservers;
-  struct hostent *hostent;
-
-  /* Set *host to NULL for all failure cases. */
-  *host = NULL;
-
-  /* Give up if abuf doesn't have room for a header. */
-  if ( alen < HFIXEDSZ )
-    return ARES_EBADRESP;
-
-  /* Fetch the question and answer count from the header. */
-  qdcount = DNS_HEADER_QDCOUNT( abuf );
-  ancount = DNS_HEADER_ANCOUNT( abuf );
-  if ( qdcount != 1 )
-    return ARES_EBADRESP;
-
-  /* Expand the name from the question, and skip past the question. */
-  aptr = abuf + HFIXEDSZ;
-  status = ares__expand_name_for_response( aptr, abuf, alen, &hostname, &len);
-  if ( status != ARES_SUCCESS )
-    return status;
-  if ( aptr + len + QFIXEDSZ > abuf + alen )
-  {
-    free( hostname );
-    return ARES_EBADRESP;
-  }
-  aptr += len + QFIXEDSZ;
-
-  /* Allocate nameservers array; ancount gives an upper bound */
-  nameservers = malloc( ( ancount + 1 ) * sizeof( char * ) );
-  if ( !nameservers )
-  {
-    free( hostname );
-    return ARES_ENOMEM;
-  }
-  nameservers_num = 0;
-
-  /* Examine each answer resource record (RR) in turn. */
-  for ( i = 0; i < ( int ) ancount; i++ )
-  {
-    /* Decode the RR up to the data field. */
-    status = ares__expand_name_for_response( aptr, abuf, alen, &rr_name, &len );
-    if ( status != ARES_SUCCESS )
-      break;
-    aptr += len;
-    if ( aptr + RRFIXEDSZ > abuf + alen )
-    {
-      status = ARES_EBADRESP;
-      break;
-    }
-    rr_type = DNS_RR_TYPE( aptr );
-    rr_class = DNS_RR_CLASS( aptr );
-    rr_len = DNS_RR_LEN( aptr );
-    aptr += RRFIXEDSZ;
-
-    if ( rr_class == C_IN && rr_type == T_NS )
-    {
-      /* Decode the RR data and add it to the nameservers list */
-      status = ares__expand_name_for_response( aptr, abuf, alen, &rr_data,
-                                               &len);
-      if ( status != ARES_SUCCESS )
-      {
-        break;
-      }
-
-      nameservers[nameservers_num] = malloc(strlen(rr_data)+1);
-
-      if (nameservers[nameservers_num]==NULL)
-      {
-        free(rr_name);
-        free(rr_data);
-        status=ARES_ENOMEM;
-        break;
-      }
-      strcpy(nameservers[nameservers_num],rr_data);
-      free(rr_data);
-
-      nameservers_num++;
-    }
-
-    free( rr_name );
-
-    aptr += rr_len;
-    if ( aptr > abuf + alen )
-    {
-      status = ARES_EBADRESP;
-      break;
-    }
-  }
-
-  if ( status == ARES_SUCCESS && nameservers_num == 0 )
-  {
-    status = ARES_ENODATA;
-  }
-  if ( status == ARES_SUCCESS )
-  {
-    /* We got our answer.  Allocate memory to build the host entry. */
-    nameservers[nameservers_num] = NULL;
-    hostent = malloc( sizeof( struct hostent ) );
-    if ( hostent )
-    {
-      hostent->h_addr_list = malloc( 1 * sizeof( char * ) );
-      if ( hostent->h_addr_list )
-      {
-        /* Fill in the hostent and return successfully. */
-        hostent->h_name = hostname;
-        hostent->h_aliases = nameservers;
-        hostent->h_addrtype = AF_INET;
-        hostent->h_length = sizeof( struct in_addr );
-        hostent->h_addr_list[0] = NULL;
-        *host = hostent;
-        return ARES_SUCCESS;
-      }
-      free( hostent );
-    }
-    status = ARES_ENOMEM;
-  }
-  for ( i = 0; i < nameservers_num; i++ )
-    free( nameservers[i] );
-  free( nameservers );
-  free( hostname );
-  return status;
-}
diff --git a/src/other/ares/ares_parse_ns_reply.pdf b/src/other/ares/ares_parse_ns_reply.pdf
deleted file mode 100644
index 2a27ea6..0000000
Binary files a/src/other/ares/ares_parse_ns_reply.pdf and /dev/null differ
diff --git a/src/other/ares/ares_parse_ptr_reply.c b/src/other/ares/ares_parse_ptr_reply.c
deleted file mode 100644
index 9923a9d..0000000
--- a/src/other/ares/ares_parse_ptr_reply.c
+++ /dev/null
@@ -1,209 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#ifdef HAVE_STRINGS_H
-#  include <strings.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-#include "ares.h"
-#include "ares_dns.h"
-#include "ares_private.h"
-
-int ares_parse_ptr_reply(const unsigned char *abuf, int alen, const void *addr,
-                         int addrlen, int family, struct hostent **host)
-{
-  unsigned int qdcount, ancount;
-  int status, i, rr_type, rr_class, rr_len;
-  long len;
-  const unsigned char *aptr;
-  char *ptrname, *hostname, *rr_name, *rr_data;
-  struct hostent *hostent;
-  int aliascnt = 0;
-  int alias_alloc = 8;
-  char ** aliases;
-
-  /* Set *host to NULL for all failure cases. */
-  *host = NULL;
-
-  /* Give up if abuf doesn't have room for a header. */
-  if (alen < HFIXEDSZ)
-    return ARES_EBADRESP;
-
-  /* Fetch the question and answer count from the header. */
-  qdcount = DNS_HEADER_QDCOUNT(abuf);
-  ancount = DNS_HEADER_ANCOUNT(abuf);
-  if (qdcount != 1)
-    return ARES_EBADRESP;
-
-  /* Expand the name from the question, and skip past the question. */
-  aptr = abuf + HFIXEDSZ;
-  status = ares__expand_name_for_response(aptr, abuf, alen, &ptrname, &len);
-  if (status != ARES_SUCCESS)
-    return status;
-  if (aptr + len + QFIXEDSZ > abuf + alen)
-    {
-      free(ptrname);
-      return ARES_EBADRESP;
-    }
-  aptr += len + QFIXEDSZ;
-
-  /* Examine each answer resource record (RR) in turn. */
-  hostname = NULL;
-  aliases = malloc(alias_alloc * sizeof(char *));
-  if (!aliases)
-    {
-      free(ptrname);
-      return ARES_ENOMEM;
-    }
-  for (i = 0; i < (int)ancount; i++)
-    {
-      /* Decode the RR up to the data field. */
-      status = ares__expand_name_for_response(aptr, abuf, alen, &rr_name, &len);
-      if (status != ARES_SUCCESS)
-        break;
-      aptr += len;
-      if (aptr + RRFIXEDSZ > abuf + alen)
-        {
-          status = ARES_EBADRESP;
-          break;
-        }
-      rr_type = DNS_RR_TYPE(aptr);
-      rr_class = DNS_RR_CLASS(aptr);
-      rr_len = DNS_RR_LEN(aptr);
-      aptr += RRFIXEDSZ;
-
-      if (rr_class == C_IN && rr_type == T_PTR
-          && strcasecmp(rr_name, ptrname) == 0)
-        {
-          /* Decode the RR data and set hostname to it. */
-          status = ares__expand_name_for_response(aptr, abuf, alen, &rr_data,
-                                                  &len);
-          if (status != ARES_SUCCESS)
-            break;
-          if (hostname)
-            free(hostname);
-          hostname = rr_data;
-          aliases[aliascnt] = malloc((strlen(rr_data)+1) * sizeof(char *));
-          if (!aliases[aliascnt])
-            {
-              status = ARES_ENOMEM;
-              break;
-            }
-          strncpy(aliases[aliascnt], rr_data, strlen(rr_data)+1);
-          aliascnt++;
-          if (aliascnt >= alias_alloc) {
-            char **ptr;
-            alias_alloc *= 2;
-            ptr = realloc(aliases, alias_alloc * sizeof(char *));
-            if(!ptr) {
-              status = ARES_ENOMEM;
-              break;
-            }
-            aliases = ptr;
-          }
-        }
-
-      if (rr_class == C_IN && rr_type == T_CNAME)
-        {
-          /* Decode the RR data and replace ptrname with it. */
-          status = ares__expand_name_for_response(aptr, abuf, alen, &rr_data,
-                                                  &len);
-          if (status != ARES_SUCCESS)
-            break;
-          free(ptrname);
-          ptrname = rr_data;
-        }
-
-      free(rr_name);
-      aptr += rr_len;
-      if (aptr > abuf + alen)
-        {
-          status = ARES_EBADRESP;
-          break;
-        }
-    }
-
-  if (status == ARES_SUCCESS && !hostname)
-    status = ARES_ENODATA;
-  if (status == ARES_SUCCESS)
-    {
-      /* We got our answer.  Allocate memory to build the host entry. */
-      hostent = malloc(sizeof(struct hostent));
-      if (hostent)
-        {
-          hostent->h_addr_list = malloc(2 * sizeof(char *));
-          if (hostent->h_addr_list)
-            {
-              hostent->h_addr_list[0] = malloc(addrlen);
-              if (hostent->h_addr_list[0])
-                {
-                  hostent->h_aliases = malloc((aliascnt+1) * sizeof (char *));
-                  if (hostent->h_aliases)
-                    {
-                      /* Fill in the hostent and return successfully. */
-                      hostent->h_name = hostname;
-                      for (i=0 ; i<aliascnt ; i++)
-                        hostent->h_aliases[i] = aliases[i];
-                      hostent->h_aliases[aliascnt] = NULL;
-                      hostent->h_addrtype = family;
-                      hostent->h_length = addrlen;
-                      memcpy(hostent->h_addr_list[0], addr, addrlen);
-                      hostent->h_addr_list[1] = NULL;
-                      *host = hostent;
-                      free(aliases);
-                      free(ptrname);
-                      return ARES_SUCCESS;
-                    }
-                  free(hostent->h_addr_list[0]);
-                }
-              free(hostent->h_addr_list);
-            }
-          free(hostent);
-        }
-      status = ARES_ENOMEM;
-    }
-  for (i=0 ; i<aliascnt ; i++)
-    if (aliases[i]) 
-      free(aliases[i]);
-  free(aliases);
-  if (hostname)
-    free(hostname);
-  free(ptrname);
-  return status;
-}
diff --git a/src/other/ares/ares_parse_ptr_reply.pdf b/src/other/ares/ares_parse_ptr_reply.pdf
deleted file mode 100644
index 7f4972d..0000000
Binary files a/src/other/ares/ares_parse_ptr_reply.pdf and /dev/null differ
diff --git a/src/other/ares/ares_parse_srv_reply.c b/src/other/ares/ares_parse_srv_reply.c
deleted file mode 100644
index de723f3..0000000
--- a/src/other/ares/ares_parse_srv_reply.c
+++ /dev/null
@@ -1,180 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- * Copyright (C) 2009 by Jakub Hrozek <jhrozek at redhat.com>
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-#include "ares.h"
-#include "ares_dns.h"
-#include "ares_data.h"
-#include "ares_private.h"
-
-/* AIX portability check */
-#ifndef T_SRV
-#  define T_SRV 33 /* server selection */
-#endif
-
-int
-ares_parse_srv_reply (const unsigned char *abuf, int alen,
-                      struct ares_srv_reply **srv_out)
-{
-  unsigned int qdcount, ancount, i;
-  const unsigned char *aptr, *vptr;
-  int status, rr_type, rr_class, rr_len;
-  long len;
-  char *hostname = NULL, *rr_name = NULL;
-  struct ares_srv_reply *srv_head = NULL;
-  struct ares_srv_reply *srv_last = NULL;
-  struct ares_srv_reply *srv_curr;
-
-  /* Set *srv_out to NULL for all failure cases. */
-  *srv_out = NULL;
-
-  /* Give up if abuf doesn't have room for a header. */
-  if (alen < HFIXEDSZ)
-    return ARES_EBADRESP;
-
-  /* Fetch the question and answer count from the header. */
-  qdcount = DNS_HEADER_QDCOUNT (abuf);
-  ancount = DNS_HEADER_ANCOUNT (abuf);
-  if (qdcount != 1)
-    return ARES_EBADRESP;
-  if (ancount == 0)
-    return ARES_ENODATA;
-
-  /* Expand the name from the question, and skip past the question. */
-  aptr = abuf + HFIXEDSZ;
-  status = ares_expand_name (aptr, abuf, alen, &hostname, &len);
-  if (status != ARES_SUCCESS)
-    return status;
-
-  if (aptr + len + QFIXEDSZ > abuf + alen)
-    {
-      free (hostname);
-      return ARES_EBADRESP;
-    }
-  aptr += len + QFIXEDSZ;
-
-  /* Examine each answer resource record (RR) in turn. */
-  for (i = 0; i < ancount; i++)
-    {
-      /* Decode the RR up to the data field. */
-      status = ares_expand_name (aptr, abuf, alen, &rr_name, &len);
-      if (status != ARES_SUCCESS)
-        {
-          break;
-        }
-      aptr += len;
-      if (aptr + RRFIXEDSZ > abuf + alen)
-        {
-          status = ARES_EBADRESP;
-          break;
-        }
-      rr_type = DNS_RR_TYPE (aptr);
-      rr_class = DNS_RR_CLASS (aptr);
-      rr_len = DNS_RR_LEN (aptr);
-      aptr += RRFIXEDSZ;
-
-      /* Check if we are really looking at a SRV record */
-      if (rr_class == C_IN && rr_type == T_SRV)
-        {
-          /* parse the SRV record itself */
-          if (rr_len < 6)
-            {
-              status = ARES_EBADRESP;
-              break;
-            }
-
-          /* Allocate storage for this SRV answer appending it to the list */
-          srv_curr = ares_malloc_data(ARES_DATATYPE_SRV_REPLY);
-          if (!srv_curr)
-            {
-              status = ARES_ENOMEM;
-              break;
-            }
-          if (srv_last)
-            {
-              srv_last->next = srv_curr;
-            }
-          else
-            {
-              srv_head = srv_curr;
-            }
-          srv_last = srv_curr;
-
-          vptr = aptr;
-          srv_curr->priority = ntohs (*((unsigned short *)vptr));
-          vptr += sizeof(unsigned short);
-          srv_curr->weight = ntohs (*((unsigned short *)vptr));
-          vptr += sizeof(unsigned short);
-          srv_curr->port = ntohs (*((unsigned short *)vptr));
-          vptr += sizeof(unsigned short);
-
-          status = ares_expand_name (vptr, abuf, alen, &srv_curr->host, &len);
-          if (status != ARES_SUCCESS)
-            break;
-        }
-
-      /* Don't lose memory in the next iteration */
-      free (rr_name);
-      rr_name = NULL;
-
-      /* Move on to the next record */
-      aptr += rr_len;
-    }
-
-  if (hostname)
-    free (hostname);
-  if (rr_name)
-    free (rr_name);
-
-  /* clean up on error */
-  if (status != ARES_SUCCESS)
-    {
-      if (srv_head)
-        ares_free_data (srv_head);
-      return status;
-    }
-
-  /* everything looks fine, return the data */
-  *srv_out = srv_head;
-
-  return ARES_SUCCESS;
-}
diff --git a/src/other/ares/ares_parse_srv_reply.pdf b/src/other/ares/ares_parse_srv_reply.pdf
deleted file mode 100644
index 05cb81b..0000000
Binary files a/src/other/ares/ares_parse_srv_reply.pdf and /dev/null differ
diff --git a/src/other/ares/ares_parse_txt_reply.c b/src/other/ares/ares_parse_txt_reply.c
deleted file mode 100644
index 8e24e63..0000000
--- a/src/other/ares/ares_parse_txt_reply.c
+++ /dev/null
@@ -1,202 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- * Copyright (C) 2009 by Jakub Hrozek <jhrozek at redhat.com>
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#ifdef HAVE_STRINGS_H
-#  include <strings.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-
-#include "ares.h"
-#include "ares_dns.h"
-#include "ares_data.h"
-#include "ares_private.h"
-
-int
-ares_parse_txt_reply (const unsigned char *abuf, int alen,
-                      struct ares_txt_reply **txt_out)
-{
-  size_t substr_len, str_len;
-  unsigned int qdcount, ancount, i;
-  const unsigned char *aptr;
-  const unsigned char *strptr;
-  int status, rr_type, rr_class, rr_len;
-  long len;
-  char *hostname = NULL, *rr_name = NULL;
-  struct ares_txt_reply *txt_head = NULL;
-  struct ares_txt_reply *txt_last = NULL;
-  struct ares_txt_reply *txt_curr;
-
-  /* Set *txt_out to NULL for all failure cases. */
-  *txt_out = NULL;
-
-  /* Give up if abuf doesn't have room for a header. */
-  if (alen < HFIXEDSZ)
-    return ARES_EBADRESP;
-
-  /* Fetch the question and answer count from the header. */
-  qdcount = DNS_HEADER_QDCOUNT (abuf);
-  ancount = DNS_HEADER_ANCOUNT (abuf);
-  if (qdcount != 1)
-    return ARES_EBADRESP;
-  if (ancount == 0)
-    return ARES_ENODATA;
-
-  /* Expand the name from the question, and skip past the question. */
-  aptr = abuf + HFIXEDSZ;
-  status = ares_expand_name (aptr, abuf, alen, &hostname, &len);
-  if (status != ARES_SUCCESS)
-    return status;
-
-  if (aptr + len + QFIXEDSZ > abuf + alen)
-    {
-      free (hostname);
-      return ARES_EBADRESP;
-    }
-  aptr += len + QFIXEDSZ;
-
-  /* Examine each answer resource record (RR) in turn. */
-  for (i = 0; i < ancount; i++)
-    {
-      /* Decode the RR up to the data field. */
-      status = ares_expand_name (aptr, abuf, alen, &rr_name, &len);
-      if (status != ARES_SUCCESS)
-        {
-          break;
-        }
-      aptr += len;
-      if (aptr + RRFIXEDSZ > abuf + alen)
-        {
-          status = ARES_EBADRESP;
-          break;
-        }
-      rr_type = DNS_RR_TYPE (aptr);
-      rr_class = DNS_RR_CLASS (aptr);
-      rr_len = DNS_RR_LEN (aptr);
-      aptr += RRFIXEDSZ;
-
-      /* Check if we are really looking at a TXT record */
-      if (rr_class == C_IN && rr_type == T_TXT)
-        {
-          /* Allocate storage for this TXT answer appending it to the list */
-          txt_curr = ares_malloc_data(ARES_DATATYPE_TXT_REPLY);
-          if (!txt_curr)
-            {
-              status = ARES_ENOMEM;
-              break;
-            }
-          if (txt_last)
-            {
-              txt_last->next = txt_curr;
-            }
-          else
-            {
-              txt_head = txt_curr;
-            }
-          txt_last = txt_curr;
-
-          /*
-           * There may be multiple substrings in a single TXT record. Each
-           * substring may be up to 255 characters in length, with a
-           * "length byte" indicating the size of the substring payload.
-           * RDATA contains both the length-bytes and payloads of all
-           * substrings contained therein.
-           */
-
-          /* Compute total length to allow a single memory allocation */
-          strptr = aptr;
-          while (strptr < (aptr + rr_len))
-            {
-              substr_len = (unsigned char)*strptr;
-              txt_curr->length += substr_len;
-              strptr += substr_len + 1;
-            }
-
-          /* Including null byte */
-          txt_curr->txt = malloc (txt_curr->length + 1);
-          if (txt_curr->txt == NULL)
-            {
-              status = ARES_ENOMEM;
-              break;
-            }
-
-          /* Step through the list of substrings, concatenating them */
-          str_len = 0;
-          strptr = aptr;
-          while (strptr < (aptr + rr_len))
-            {
-              substr_len = (unsigned char)*strptr;
-              strptr++;
-              memcpy ((char *) txt_curr->txt + str_len, strptr, substr_len);
-              str_len += substr_len;
-              strptr += substr_len;
-            }
-          /* Make sure we NULL-terminate */
-          *((char *) txt_curr->txt + txt_curr->length) = '\0';
-        }
-
-      /* Don't lose memory in the next iteration */
-      free (rr_name);
-      rr_name = NULL;
-
-      /* Move on to the next record */
-      aptr += rr_len;
-    }
-
-  if (hostname)
-    free (hostname);
-  if (rr_name)
-    free (rr_name);
-
-  /* clean up on error */
-  if (status != ARES_SUCCESS)
-    {
-      if (txt_head)
-        ares_free_data (txt_head);
-      return status;
-    }
-
-  /* everything looks fine, return the data */
-  *txt_out = txt_head;
-
-  return ARES_SUCCESS;
-}
diff --git a/src/other/ares/ares_parse_txt_reply.pdf b/src/other/ares/ares_parse_txt_reply.pdf
deleted file mode 100644
index cd29324..0000000
Binary files a/src/other/ares/ares_parse_txt_reply.pdf and /dev/null differ
diff --git a/src/other/ares/ares_private.h b/src/other/ares/ares_private.h
deleted file mode 100644
index 2766d19..0000000
--- a/src/other/ares/ares_private.h
+++ /dev/null
@@ -1,345 +0,0 @@
-#ifndef __ARES_PRIVATE_H
-#define __ARES_PRIVATE_H
-
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- * Copyright (C) 2004-2010 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-/*
- * Define WIN32 when build target is Win32 API
- */
-
-#if (defined(_WIN32) || defined(__WIN32__)) && !defined(WIN32)
-#define WIN32
-#endif
-
-#include <stdio.h>
-#include <sys/types.h>
-
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-
-#ifdef WATT32
-#include <tcp.h>
-#include <sys/ioctl.h>
-#define writev(s,v,c)     writev_s(s,v,c)
-#define HAVE_WRITEV 1
-#endif
-
-#ifdef NETWARE
-#include <time.h>
-#endif
-
-#define DEFAULT_TIMEOUT         5000 /* milliseconds */
-#define DEFAULT_TRIES           4
-#ifndef INADDR_NONE
-#define INADDR_NONE 0xffffffff
-#endif
-
-#if defined(WIN32) && !defined(WATT32)
-
-#define IS_NT()        ((int)GetVersion() > 0)
-#define WIN_NS_9X      "System\\CurrentControlSet\\Services\\VxD\\MSTCP"
-#define WIN_NS_NT_KEY  "System\\CurrentControlSet\\Services\\Tcpip\\Parameters"
-#define NAMESERVER     "NameServer"
-#define DHCPNAMESERVER "DhcpNameServer"
-#define DATABASEPATH   "DatabasePath"
-#define WIN_PATH_HOSTS  "\\hosts"
-
-#elif defined(WATT32)
-
-#define PATH_RESOLV_CONF "/dev/ENV/etc/resolv.conf"
-
-#elif defined(NETWARE)
-
-#define PATH_RESOLV_CONF "sys:/etc/resolv.cfg"
-#define PATH_HOSTS              "sys:/etc/hosts"
-
-#elif defined(__riscos__)
-
-#define PATH_HOSTS             "InetDBase:Hosts"
-
-#else
-
-#define PATH_RESOLV_CONF        "/etc/resolv.conf"
-#ifdef ETC_INET
-#define PATH_HOSTS              "/etc/inet/hosts"
-#else
-#define PATH_HOSTS              "/etc/hosts"
-#endif
-
-#endif
-
-#define ARES_ID_KEY_LEN 31
-
-#include "ares_ipv6.h"
-#include "ares_llist.h"
-
-#ifndef HAVE_STRDUP
-#  include "ares_strdup.h"
-#  define strdup(ptr) ares_strdup(ptr)
-#endif
-
-#ifndef HAVE_STRCASECMP
-#  include "ares_strcasecmp.h"
-#  define strcasecmp(p1,p2) ares_strcasecmp(p1,p2)
-#endif
-
-#ifndef HAVE_STRNCASECMP
-#  include "ares_strcasecmp.h"
-#  define strncasecmp(p1,p2,n) ares_strncasecmp(p1,p2,n)
-#endif
-
-#ifndef HAVE_WRITEV
-#  include "ares_writev.h"
-#  define writev(s,ptr,cnt) ares_writev(s,ptr,cnt)
-#endif
-
-struct ares_addr {
-  int family;
-  union {
-    struct in_addr       addr4;
-    struct ares_in6_addr addr6;
-  } addr;
-};
-#define addrV4 addr.addr4
-#define addrV6 addr.addr6
-
-struct query;
-
-struct send_request {
-  /* Remaining data to send */
-  const unsigned char *data;
-  size_t len;
-
-  /* The query for which we're sending this data */
-  struct query* owner_query;
-  /* The buffer we're using, if we have our own copy of the packet */
-  unsigned char *data_storage;
-
-  /* Next request in queue */
-  struct send_request *next;
-};
-
-struct server_state {
-  struct ares_addr addr;
-  ares_socket_t udp_socket;
-  ares_socket_t tcp_socket;
-
-  /* Mini-buffer for reading the length word */
-  unsigned char tcp_lenbuf[2];
-  int tcp_lenbuf_pos;
-  int tcp_length;
-
-  /* Buffer for reading actual TCP data */
-  unsigned char *tcp_buffer;
-  int tcp_buffer_pos;
-
-  /* TCP output queue */
-  struct send_request *qhead;
-  struct send_request *qtail;
-
-  /* Which incarnation of this connection is this? We don't want to
-   * retransmit requests into the very same socket, but if the server
-   * closes on us and we re-open the connection, then we do want to
-   * re-send. */
-  int tcp_connection_generation;
-
-  /* Circular, doubly-linked list of outstanding queries to this server */
-  struct list_node queries_to_server;
-
-  /* Link back to owning channel */
-  ares_channel channel;
-
-  /* Is this server broken? We mark connections as broken when a
-   * request that is queued for sending times out.
-   */
-  int is_broken;
-};
-
-/* State to represent a DNS query */
-struct query {
-  /* Query ID from qbuf, for faster lookup, and current timeout */
-  unsigned short qid;
-  struct timeval timeout;
-
-  /*
-   * Links for the doubly-linked lists in which we insert a query.
-   * These circular, doubly-linked lists that are hash-bucketed based
-   * the attributes we care about, help making most important
-   * operations O(1).
-   */
-  struct list_node queries_by_qid;    /* hopefully in same cache line as qid */
-  struct list_node queries_by_timeout;
-  struct list_node queries_to_server;
-  struct list_node all_queries;
-
-  /* Query buf with length at beginning, for TCP transmission */
-  unsigned char *tcpbuf;
-  int tcplen;
-
-  /* Arguments passed to ares_send() (qbuf points into tcpbuf) */
-  const unsigned char *qbuf;
-  int qlen;
-  ares_callback callback;
-  void *arg;
-
-  /* Query status */
-  int try; /* Number of times we tried this query already. */
-  int server; /* Server this query has last been sent to. */
-  struct query_server_info *server_info;   /* per-server state */
-  int using_tcp;
-  int error_status;
-  int timeouts; /* number of timeouts we saw for this request */
-};
-
-/* Per-server state for a query */
-struct query_server_info {
-  int skip_server;  /* should we skip server, due to errors, etc? */
-  int tcp_connection_generation;  /* into which TCP connection did we send? */
-};
-
-/* An IP address pattern; matches an IP address X if X & mask == addr */
-#define PATTERN_MASK 0x1
-#define PATTERN_CIDR 0x2
-
-struct apattern {
-  union
-  {
-    struct in_addr       addr4;
-    struct ares_in6_addr addr6;
-  } addr;
-  union
-  {
-    struct in_addr       addr4;
-    struct ares_in6_addr addr6;
-    unsigned short       bits;
-  } mask;
-  int family;
-  unsigned short type;
-};
-
-typedef struct rc4_key
-{
-  unsigned char state[256];
-  unsigned char x;
-  unsigned char y;
-} rc4_key;
-
-struct ares_channeldata {
-  /* Configuration data */
-  int flags;
-  int timeout; /* in milliseconds */
-  int tries;
-  int ndots;
-  int rotate; /* if true, all servers specified are used */
-  int udp_port;
-  int tcp_port;
-  int socket_send_buffer_size;
-  int socket_receive_buffer_size;
-  char **domains;
-  int ndomains;
-  struct apattern *sortlist;
-  int nsort;
-  char *lookups;
-
-  int optmask; /* the option bitfield passed in at init time */
-
-  /* Server addresses and communications state */
-  struct server_state *servers;
-  int nservers;
-
-  /* ID to use for next query */
-  unsigned short next_id;
-  /* key to use when generating new ids */
-  rc4_key id_key;
-
-  /* Generation number to use for the next TCP socket open/close */
-  int tcp_connection_generation;
-
-  /* The time at which we last called process_timeouts(). Uses integer seconds
-     just to draw the line somewhere. */
-  time_t last_timeout_processed;
-
-  /* Last server we sent a query to. */
-  int last_server;
-
-  /* Circular, doubly-linked list of queries, bucketed various ways.... */
-  /* All active queries in a single list: */
-  struct list_node all_queries;
-  /* Queries bucketed by qid, for quickly dispatching DNS responses: */
-#define ARES_QID_TABLE_SIZE 2048
-  struct list_node queries_by_qid[ARES_QID_TABLE_SIZE];
-  /* Queries bucketed by timeout, for quickly handling timeouts: */
-#define ARES_TIMEOUT_TABLE_SIZE 1024
-  struct list_node queries_by_timeout[ARES_TIMEOUT_TABLE_SIZE];
-
-  ares_sock_state_cb sock_state_cb;
-  void *sock_state_cb_data;
-
-  ares_sock_create_callback sock_create_cb;
-  void *sock_create_cb_data;
-};
-
-/* return true if now is exactly check time or later */
-int ares__timedout(struct timeval *now,
-                   struct timeval *check);
-/* add the specific number of milliseconds to the time in the first argument */
-int ares__timeadd(struct timeval *now,
-                  int millisecs);
-/* return time offset between now and (future) check, in milliseconds */
-long ares__timeoffset(struct timeval *now,
-                      struct timeval *check);
-/* returns ARES_SUCCESS if library has been initialized */
-int ares_library_initialized(void);
-void ares__rc4(rc4_key* key,unsigned char *buffer_ptr, int buffer_len);
-void ares__send_query(ares_channel channel, struct query *query,
-                      struct timeval *now);
-void ares__close_sockets(ares_channel channel, struct server_state *server);
-int ares__get_hostent(FILE *fp, int family, struct hostent **host);
-int ares__read_line(FILE *fp, char **buf, size_t *bufsize);
-void ares__free_query(struct query *query);
-unsigned short ares__generate_new_id(rc4_key* key);
-struct timeval ares__tvnow(void);
-int ares__expand_name_for_response(const unsigned char *encoded,
-                                   const unsigned char *abuf, int alen,
-                                   char **s, long *enclen);
-void ares__init_servers_state(ares_channel channel);
-void ares__destroy_servers_state(ares_channel channel);
-#if 0 /* Not used */
-long ares__tvdiff(struct timeval t1, struct timeval t2);
-#endif
-
-#define ARES_SWAP_BYTE(a,b) \
-  { unsigned char swapByte = *(a);  *(a) = *(b);  *(b) = swapByte; }
-
-#define SOCK_STATE_CALLBACK(c, s, r, w)                                 \
-  do {                                                                  \
-    if ((c)->sock_state_cb)                                             \
-      (c)->sock_state_cb((c)->sock_state_cb_data, (s), (r), (w));       \
-  } while (0)
-
-#ifdef CURLDEBUG
-/* This is low-level hard-hacking memory leak tracking and similar. Using the
-   libcurl lowlevel code from within library is ugly and only works when
-   c-ares is built and linked with a similarly curldebug-enabled libcurl,
-   but we do this anyway for convenience. */
-#include "../lib/memdebug.h"
-#endif
-
-#endif /* __ARES_PRIVATE_H */
diff --git a/src/other/ares/ares_process.c b/src/other/ares/ares_process.c
deleted file mode 100644
index ab0b79d..0000000
--- a/src/other/ares/ares_process.c
+++ /dev/null
@@ -1,1262 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- * Copyright (C) 2004-2010 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_SYS_UIO_H
-#  include <sys/uio.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETINET_TCP_H
-#  include <netinet/tcp.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#ifdef HAVE_SYS_TIME_H
-#  include <sys/time.h>
-#endif
-
-#ifdef HAVE_STRINGS_H
-#  include <strings.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#  include <sys/ioctl.h>
-#endif
-#ifdef NETWARE
-#  include <sys/filio.h>
-#endif
-
-#include <assert.h>
-#include <string.h>
-#include <stdlib.h>
-#include <fcntl.h>
-#include <time.h>
-#include <errno.h>
-
-#include "ares.h"
-#include "ares_dns.h"
-#include "ares_private.h"
-
-
-static int try_again(int errnum);
-static void write_tcp_data(ares_channel channel, fd_set *write_fds,
-                           ares_socket_t write_fd, struct timeval *now);
-static void read_tcp_data(ares_channel channel, fd_set *read_fds,
-                          ares_socket_t read_fd, struct timeval *now);
-static void read_udp_packets(ares_channel channel, fd_set *read_fds,
-                             ares_socket_t read_fd, struct timeval *now);
-static void advance_tcp_send_queue(ares_channel channel, int whichserver,
-                                   ssize_t num_bytes);
-static void process_timeouts(ares_channel channel, struct timeval *now);
-static void process_broken_connections(ares_channel channel,
-                                       struct timeval *now);
-static void process_answer(ares_channel channel, unsigned char *abuf,
-                           int alen, int whichserver, int tcp,
-                           struct timeval *now);
-static void handle_error(ares_channel channel, int whichserver,
-                         struct timeval *now);
-static void skip_server(ares_channel channel, struct query *query,
-                        int whichserver);
-static void next_server(ares_channel channel, struct query *query,
-                        struct timeval *now);
-static int configure_socket(ares_socket_t s, ares_channel channel);
-static int open_tcp_socket(ares_channel channel, struct server_state *server);
-static int open_udp_socket(ares_channel channel, struct server_state *server);
-static int same_questions(const unsigned char *qbuf, int qlen,
-                          const unsigned char *abuf, int alen);
-static int same_address(struct sockaddr *sa, struct ares_addr *aa);
-static void end_query(ares_channel channel, struct query *query, int status,
-                      unsigned char *abuf, int alen);
-
-/* return true if now is exactly check time or later */
-int ares__timedout(struct timeval *now,
-                   struct timeval *check)
-{
-  long secs = (now->tv_sec - check->tv_sec);
-
-  if(secs > 0)
-    return 1; /* yes, timed out */
-  if(secs < 0)
-    return 0; /* nope, not timed out */
-
-  /* if the full seconds were identical, check the sub second parts */
-  return (now->tv_usec - check->tv_usec >= 0);
-}
-
-/* add the specific number of milliseconds to the time in the first argument */
-int ares__timeadd(struct timeval *now,
-                  int millisecs)
-{
-  now->tv_sec += millisecs/1000;
-  now->tv_usec += (millisecs%1000)*1000;
-
-  if(now->tv_usec >= 1000000) {
-    ++(now->tv_sec);
-    now->tv_usec -= 1000000;
-  }
-
-  return 0;
-}
-
-/* return time offset between now and (future) check, in milliseconds */
-long ares__timeoffset(struct timeval *now,
-                      struct timeval *check)
-{
-  return (check->tv_sec - now->tv_sec)*1000 +
-         (check->tv_usec - now->tv_usec)/1000;
-}
-
-
-/*
- * generic process function
- */
-static void processfds(ares_channel channel,
-                       fd_set *read_fds, ares_socket_t read_fd,
-                       fd_set *write_fds, ares_socket_t write_fd)
-{
-  struct timeval now = ares__tvnow();
-
-  write_tcp_data(channel, write_fds, write_fd, &now);
-  read_tcp_data(channel, read_fds, read_fd, &now);
-  read_udp_packets(channel, read_fds, read_fd, &now);
-  process_timeouts(channel, &now);
-  process_broken_connections(channel, &now);
-}
-
-/* Something interesting happened on the wire, or there was a timeout.
- * See what's up and respond accordingly.
- */
-void ares_process(ares_channel channel, fd_set *read_fds, fd_set *write_fds)
-{
-  processfds(channel, read_fds, ARES_SOCKET_BAD, write_fds, ARES_SOCKET_BAD);
-}
-
-/* Something interesting happened on the wire, or there was a timeout.
- * See what's up and respond accordingly.
- */
-void ares_process_fd(ares_channel channel,
-                     ares_socket_t read_fd, /* use ARES_SOCKET_BAD or valid
-                                               file descriptors */
-                     ares_socket_t write_fd)
-{
-  processfds(channel, NULL, read_fd, NULL, write_fd);
-}
-
-
-/* Return 1 if the specified error number describes a readiness error, or 0
- * otherwise. This is mostly for HP-UX, which could return EAGAIN or
- * EWOULDBLOCK. See this man page
- *
- * http://devrsrc1.external.hp.com/STKS/cgi-bin/man2html?
- *     manpage=/usr/share/man/man2.Z/send.2
- */
-static int try_again(int errnum)
-{
-#if !defined EWOULDBLOCK && !defined EAGAIN
-#error "Neither EWOULDBLOCK nor EAGAIN defined"
-#endif
-  switch (errnum)
-    {
-#ifdef EWOULDBLOCK
-    case EWOULDBLOCK:
-      return 1;
-#endif
-#if defined EAGAIN && EAGAIN != EWOULDBLOCK
-    case EAGAIN:
-      return 1;
-#endif
-    }
-  return 0;
-}
-
-/* If any TCP sockets select true for writing, write out queued data
- * we have for them.
- */
-static void write_tcp_data(ares_channel channel,
-                           fd_set *write_fds,
-                           ares_socket_t write_fd,
-                           struct timeval *now)
-{
-  struct server_state *server;
-  struct send_request *sendreq;
-  struct iovec *vec;
-  int i;
-  ssize_t scount;
-  ssize_t wcount;
-  size_t n;
-
-  if(!write_fds && (write_fd == ARES_SOCKET_BAD))
-    /* no possible action */
-    return;
-
-  for (i = 0; i < channel->nservers; i++)
-    {
-      /* Make sure server has data to send and is selected in write_fds or
-         write_fd. */
-      server = &channel->servers[i];
-      if (!server->qhead || server->tcp_socket == ARES_SOCKET_BAD ||
-          server->is_broken)
-        continue;
-
-      if(write_fds) {
-        if(!FD_ISSET(server->tcp_socket, write_fds))
-          continue;
-      }
-      else {
-        if(server->tcp_socket != write_fd)
-          continue;
-      }
-
-      if(write_fds)
-        /* If there's an error and we close this socket, then open
-         * another with the same fd to talk to another server, then we
-         * don't want to think that it was the new socket that was
-         * ready. This is not disastrous, but is likely to result in
-         * extra system calls and confusion. */
-        FD_CLR(server->tcp_socket, write_fds);
-
-      /* Count the number of send queue items. */
-      n = 0;
-      for (sendreq = server->qhead; sendreq; sendreq = sendreq->next)
-        n++;
-
-      /* Allocate iovecs so we can send all our data at once. */
-      vec = malloc(n * sizeof(struct iovec));
-      if (vec)
-        {
-          /* Fill in the iovecs and send. */
-          n = 0;
-          for (sendreq = server->qhead; sendreq; sendreq = sendreq->next)
-            {
-              vec[n].iov_base = (char *) sendreq->data;
-              vec[n].iov_len = sendreq->len;
-              n++;
-            }
-          wcount = (ssize_t)writev(server->tcp_socket, vec, (int)n);
-          free(vec);
-          if (wcount < 0)
-            {
-              if (!try_again(SOCKERRNO))
-                  handle_error(channel, i, now);
-              continue;
-            }
-
-          /* Advance the send queue by as many bytes as we sent. */
-          advance_tcp_send_queue(channel, i, wcount);
-        }
-      else
-        {
-          /* Can't allocate iovecs; just send the first request. */
-          sendreq = server->qhead;
-
-          scount = swrite(server->tcp_socket, sendreq->data, sendreq->len);
-          if (scount < 0)
-            {
-              if (!try_again(SOCKERRNO))
-                  handle_error(channel, i, now);
-              continue;
-            }
-
-          /* Advance the send queue by as many bytes as we sent. */
-          advance_tcp_send_queue(channel, i, scount);
-        }
-    }
-}
-
-/* Consume the given number of bytes from the head of the TCP send queue. */
-static void advance_tcp_send_queue(ares_channel channel, int whichserver,
-                                   ssize_t num_bytes)
-{
-  struct send_request *sendreq;
-  struct server_state *server = &channel->servers[whichserver];
-  while (num_bytes > 0)
-    {
-      sendreq = server->qhead;
-      if ((size_t)num_bytes >= sendreq->len)
-       {
-         num_bytes -= sendreq->len;
-         server->qhead = sendreq->next;
-         if (server->qhead == NULL)
-           {
-             SOCK_STATE_CALLBACK(channel, server->tcp_socket, 1, 0);
-             server->qtail = NULL;
-           }
-         if (sendreq->data_storage != NULL)
-           free(sendreq->data_storage);
-         free(sendreq);
-       }
-      else
-       {
-         sendreq->data += num_bytes;
-         sendreq->len -= num_bytes;
-         num_bytes = 0;
-       }
-    }
-}
-
-/* If any TCP socket selects true for reading, read some data,
- * allocate a buffer if we finish reading the length word, and process
- * a packet if we finish reading one.
- */
-static void read_tcp_data(ares_channel channel, fd_set *read_fds,
-                          ares_socket_t read_fd, struct timeval *now)
-{
-  struct server_state *server;
-  int i;
-  ssize_t count;
-
-  if(!read_fds && (read_fd == ARES_SOCKET_BAD))
-    /* no possible action */
-    return;
-
-  for (i = 0; i < channel->nservers; i++)
-    {
-      /* Make sure the server has a socket and is selected in read_fds. */
-      server = &channel->servers[i];
-      if (server->tcp_socket == ARES_SOCKET_BAD || server->is_broken)
-        continue;
-
-      if(read_fds) {
-        if(!FD_ISSET(server->tcp_socket, read_fds))
-          continue;
-      }
-      else {
-        if(server->tcp_socket != read_fd)
-          continue;
-      }
-
-      if(read_fds)
-        /* If there's an error and we close this socket, then open
-         * another with the same fd to talk to another server, then we
-         * don't want to think that it was the new socket that was
-         * ready. This is not disastrous, but is likely to result in
-         * extra system calls and confusion. */
-        FD_CLR(server->tcp_socket, read_fds);
-
-      if (server->tcp_lenbuf_pos != 2)
-        {
-          /* We haven't yet read a length word, so read that (or
-           * what's left to read of it).
-           */
-          count = sread(server->tcp_socket,
-                        server->tcp_lenbuf + server->tcp_lenbuf_pos,
-                        2 - server->tcp_lenbuf_pos);
-          if (count <= 0)
-            {
-              if (!(count == -1 && try_again(SOCKERRNO)))
-                  handle_error(channel, i, now);
-              continue;
-            }
-
-          server->tcp_lenbuf_pos += (int)count;
-          if (server->tcp_lenbuf_pos == 2)
-            {
-              /* We finished reading the length word.  Decode the
-               * length and allocate a buffer for the data.
-               */
-              server->tcp_length = server->tcp_lenbuf[0] << 8
-                | server->tcp_lenbuf[1];
-              server->tcp_buffer = malloc(server->tcp_length);
-              if (!server->tcp_buffer)
-                handle_error(channel, i, now);
-              server->tcp_buffer_pos = 0;
-            }
-        }
-      else
-        {
-          /* Read data into the allocated buffer. */
-          count = sread(server->tcp_socket,
-                        server->tcp_buffer + server->tcp_buffer_pos,
-                        server->tcp_length - server->tcp_buffer_pos);
-          if (count <= 0)
-            {
-              if (!(count == -1 && try_again(SOCKERRNO)))
-                  handle_error(channel, i, now);
-              continue;
-            }
-
-          server->tcp_buffer_pos += (int)count;
-          if (server->tcp_buffer_pos == server->tcp_length)
-            {
-              /* We finished reading this answer; process it and
-               * prepare to read another length word.
-               */
-              process_answer(channel, server->tcp_buffer, server->tcp_length,
-                             i, 1, now);
-          if (server->tcp_buffer)
-                        free(server->tcp_buffer);
-              server->tcp_buffer = NULL;
-              server->tcp_lenbuf_pos = 0;
-              server->tcp_buffer_pos = 0;
-            }
-        }
-    }
-}
-
-/* If any UDP sockets select true for reading, process them. */
-static void read_udp_packets(ares_channel channel, fd_set *read_fds,
-                             ares_socket_t read_fd, struct timeval *now)
-{
-  struct server_state *server;
-  int i;
-  ssize_t count;
-  unsigned char buf[PACKETSZ + 1];
-#ifdef HAVE_RECVFROM
-  ares_socklen_t fromlen;
-  union {
-    struct sockaddr_in  sa4;
-    struct sockaddr_in6 sa6;
-  } from;
-#endif
-
-  if(!read_fds && (read_fd == ARES_SOCKET_BAD))
-    /* no possible action */
-    return;
-
-  for (i = 0; i < channel->nservers; i++)
-    {
-      /* Make sure the server has a socket and is selected in read_fds. */
-      server = &channel->servers[i];
-
-      if (server->udp_socket == ARES_SOCKET_BAD || server->is_broken)
-        continue;
-
-      if(read_fds) {
-        if(!FD_ISSET(server->udp_socket, read_fds))
-          continue;
-      }
-      else {
-        if(server->udp_socket != read_fd)
-          continue;
-      }
-
-      if(read_fds)
-        /* If there's an error and we close this socket, then open
-         * another with the same fd to talk to another server, then we
-         * don't want to think that it was the new socket that was
-         * ready. This is not disastrous, but is likely to result in
-         * extra system calls and confusion. */
-        FD_CLR(server->udp_socket, read_fds);
-
-      /* To reduce event loop overhead, read and process as many
-       * packets as we can. */
-      do {
-#ifdef HAVE_RECVFROM
-        if (server->addr.family == AF_INET)
-          fromlen = sizeof(from.sa4);
-        else
-          fromlen = sizeof(from.sa6);
-        count = (ssize_t)recvfrom(server->udp_socket, (void *)buf, sizeof(buf),
-                                  0, (struct sockaddr *)&from, &fromlen);
-#else
-        count = sread(server->udp_socket, buf, sizeof(buf));
-#endif
-        if (count == -1 && try_again(SOCKERRNO))
-          continue;
-        else if (count <= 0)
-          handle_error(channel, i, now);
-#ifdef HAVE_RECVFROM
-        else if (!same_address((struct sockaddr *)&from, &server->addr))
-          /* The address the response comes from does not match
-           * the address we sent the request to. Someone may be
-           * attempting to perform a cache poisoning attack. */
-          break;
-#endif
-        else
-          process_answer(channel, buf, (int)count, i, 0, now);
-       } while (count > 0);
-    }
-}
-
-/* If any queries have timed out, note the timeout and move them on. */
-static void process_timeouts(ares_channel channel, struct timeval *now)
-{
-  time_t t;  /* the time of the timeouts we're processing */
-  struct query *query;
-  struct list_node* list_head;
-  struct list_node* list_node;
-
-  /* Process all the timeouts that have fired since the last time we
-   * processed timeouts. If things are going well, then we'll have
-   * hundreds/thousands of queries that fall into future buckets, and
-   * only a handful of requests that fall into the "now" bucket, so
-   * this should be quite quick.
-   */
-  for (t = channel->last_timeout_processed; t <= now->tv_sec; t++)
-    {
-      list_head = &(channel->queries_by_timeout[t % ARES_TIMEOUT_TABLE_SIZE]);
-      for (list_node = list_head->next; list_node != list_head; )
-        {
-          query = list_node->data;
-          list_node = list_node->next;  /* in case the query gets deleted */
-          if (query->timeout.tv_sec && ares__timedout(now, &query->timeout))
-            {
-              query->error_status = ARES_ETIMEOUT;
-              ++query->timeouts;
-              next_server(channel, query, now);
-            }
-        }
-     }
-  channel->last_timeout_processed = now->tv_sec;
-}
-
-/* Handle an answer from a server. */
-static void process_answer(ares_channel channel, unsigned char *abuf,
-                           int alen, int whichserver, int tcp,
-                           struct timeval *now)
-{
-  int tc, rcode;
-  unsigned short id;
-  struct query *query;
-  struct list_node* list_head;
-  struct list_node* list_node;
-
-  /* If there's no room in the answer for a header, we can't do much
-   * with it. */
-  if (alen < HFIXEDSZ)
-    return;
-
-  /* Grab the query ID, truncate bit, and response code from the packet. */
-  id = DNS_HEADER_QID(abuf);
-  tc = DNS_HEADER_TC(abuf);
-  rcode = DNS_HEADER_RCODE(abuf);
-
-  /* Find the query corresponding to this packet. The queries are
-   * hashed/bucketed by query id, so this lookup should be quick.
-   * Note that both the query id and the questions must be the same;
-   * when the query id wraps around we can have multiple outstanding
-   * queries with the same query id, so we need to check both the id and
-   * question.
-   */
-  query = NULL;
-  list_head = &(channel->queries_by_qid[id % ARES_QID_TABLE_SIZE]);
-  for (list_node = list_head->next; list_node != list_head;
-       list_node = list_node->next)
-    {
-      struct query *q = list_node->data;
-      if ((q->qid == id) && same_questions(q->qbuf, q->qlen, abuf, alen))
-        {
-          query = q;
-          break;
-        }
-    }
-  if (!query)
-    return;
-
-  /* If we got a truncated UDP packet and are not ignoring truncation,
-   * don't accept the packet, and switch the query to TCP if we hadn't
-   * done so already.
-   */
-  if ((tc || alen > PACKETSZ) && !tcp && !(channel->flags & ARES_FLAG_IGNTC))
-    {
-      if (!query->using_tcp)
-        {
-          query->using_tcp = 1;
-          ares__send_query(channel, query, now);
-        }
-      return;
-    }
-
-  /* Limit alen to PACKETSZ if we aren't using TCP (only relevant if we
-   * are ignoring truncation.
-   */
-  if (alen > PACKETSZ && !tcp)
-    alen = PACKETSZ;
-
-  /* If we aren't passing through all error packets, discard packets
-   * with SERVFAIL, NOTIMP, or REFUSED response codes.
-   */
-  if (!(channel->flags & ARES_FLAG_NOCHECKRESP))
-    {
-      if (rcode == SERVFAIL || rcode == NOTIMP || rcode == REFUSED)
-        {
-          skip_server(channel, query, whichserver);
-          if (query->server == whichserver)
-            next_server(channel, query, now);
-          return;
-        }
-    }
-
-  end_query(channel, query, ARES_SUCCESS, abuf, alen);
-}
-
-/* Close all the connections that are no longer usable. */
-static void process_broken_connections(ares_channel channel,
-                                       struct timeval *now)
-{
-  int i;
-  for (i = 0; i < channel->nservers; i++)
-    {
-      struct server_state *server = &channel->servers[i];
-      if (server->is_broken)
-        {
-          handle_error(channel, i, now);
-        }
-    }
-}
-
-static void handle_error(ares_channel channel, int whichserver,
-                         struct timeval *now)
-{
-  struct server_state *server;
-  struct query *query;
-  struct list_node list_head;
-  struct list_node* list_node;
-
-  server = &channel->servers[whichserver];
-
-  /* Reset communications with this server. */
-  ares__close_sockets(channel, server);
-
-  /* Tell all queries talking to this server to move on and not try
-   * this server again. We steal the current list of queries that were
-   * in-flight to this server, since when we call next_server this can
-   * cause the queries to be re-sent to this server, which will
-   * re-insert these queries in that same server->queries_to_server
-   * list.
-   */
-  ares__init_list_head(&list_head);
-  ares__swap_lists(&list_head, &(server->queries_to_server));
-  for (list_node = list_head.next; list_node != &list_head; )
-    {
-      query = list_node->data;
-      list_node = list_node->next;  /* in case the query gets deleted */
-      assert(query->server == whichserver);
-      skip_server(channel, query, whichserver);
-      next_server(channel, query, now);
-    }
-  /* Each query should have removed itself from our temporary list as
-   * it re-sent itself or finished up...
-   */
-  assert(ares__is_list_empty(&list_head));
-}
-
-static void skip_server(ares_channel channel, struct query *query,
-                        int whichserver) {
-  /* The given server gave us problems with this query, so if we have
-   * the luxury of using other servers, then let's skip the
-   * potentially broken server and just use the others. If we only
-   * have one server and we need to retry then we should just go ahead
-   * and re-use that server, since it's our only hope; perhaps we
-   * just got unlucky, and retrying will work (eg, the server timed
-   * out our TCP connection just as we were sending another request).
-   */
-  if (channel->nservers > 1)
-    {
-      query->server_info[whichserver].skip_server = 1;
-    }
-}
-
-static void next_server(ares_channel channel, struct query *query,
-                        struct timeval *now)
-{
-  /* We need to try each server channel->tries times. We have channel->nservers
-   * servers to try. In total, we need to do channel->nservers * channel->tries
-   * attempts. Use query->try to remember how many times we already attempted
-   * this query. Use modular arithmetic to find the next server to try. */
-  while (++(query->try) < (channel->nservers * channel->tries))
-    {
-      struct server_state *server;
-
-      /* Move on to the next server. */
-      query->server = (query->server + 1) % channel->nservers;
-      server = &channel->servers[query->server];
-
-      /* We don't want to use this server if (1) we decided this
-       * connection is broken, and thus about to be closed, (2)
-       * we've decided to skip this server because of earlier
-       * errors we encountered, or (3) we already sent this query
-       * over this exact connection.
-       */
-      if (!server->is_broken &&
-           !query->server_info[query->server].skip_server &&
-           !(query->using_tcp &&
-             (query->server_info[query->server].tcp_connection_generation ==
-              server->tcp_connection_generation)))
-        {
-           ares__send_query(channel, query, now);
-           return;
-        }
-
-      /* You might think that with TCP we only need one try. However,
-       * even when using TCP, servers can time-out our connection just
-       * as we're sending a request, or close our connection because
-       * they die, or never send us a reply because they get wedged or
-       * tickle a bug that drops our request.
-       */
-    }
-
-  /* If we are here, all attempts to perform query failed. */
-  end_query(channel, query, query->error_status, NULL, 0);
-}
-
-void ares__send_query(ares_channel channel, struct query *query,
-                      struct timeval *now)
-{
-  struct send_request *sendreq;
-  struct server_state *server;
-  int timeplus;
-
-  server = &channel->servers[query->server];
-  if (query->using_tcp)
-    {
-      /* Make sure the TCP socket for this server is set up and queue
-       * a send request.
-       */
-      if (server->tcp_socket == ARES_SOCKET_BAD)
-        {
-          if (open_tcp_socket(channel, server) == -1)
-            {
-              skip_server(channel, query, query->server);
-              next_server(channel, query, now);
-              return;
-            }
-        }
-      sendreq = calloc(1, sizeof(struct send_request));
-      if (!sendreq)
-        {
-        end_query(channel, query, ARES_ENOMEM, NULL, 0);
-          return;
-        }
-      /* To make the common case fast, we avoid copies by using the
-       * query's tcpbuf for as long as the query is alive. In the rare
-       * case where the query ends while it's queued for transmission,
-       * then we give the sendreq its own copy of the request packet
-       * and put it in sendreq->data_storage.
-       */
-      sendreq->data_storage = NULL;
-      sendreq->data = query->tcpbuf;
-      sendreq->len = query->tcplen;
-      sendreq->owner_query = query;
-      sendreq->next = NULL;
-      if (server->qtail)
-        server->qtail->next = sendreq;
-      else
-        {
-          SOCK_STATE_CALLBACK(channel, server->tcp_socket, 1, 1);
-          server->qhead = sendreq;
-        }
-      server->qtail = sendreq;
-      query->server_info[query->server].tcp_connection_generation =
-        server->tcp_connection_generation;
-    }
-  else
-    {
-      if (server->udp_socket == ARES_SOCKET_BAD)
-        {
-          if (open_udp_socket(channel, server) == -1)
-            {
-              skip_server(channel, query, query->server);
-              next_server(channel, query, now);
-              return;
-            }
-        }
-      if (swrite(server->udp_socket, query->qbuf, query->qlen) == -1)
-        {
-          /* FIXME: Handle EAGAIN here since it likely can happen. */
-          skip_server(channel, query, query->server);
-          next_server(channel, query, now);
-          return;
-        }
-    }
-    timeplus = channel->timeout << (query->try / channel->nservers);
-    timeplus = (timeplus * (9 + (rand () & 7))) / 16;
-    query->timeout = *now;
-    ares__timeadd(&query->timeout,
-                  timeplus);
-    /* Keep track of queries bucketed by timeout, so we can process
-     * timeout events quickly.
-     */
-    ares__remove_from_list(&(query->queries_by_timeout));
-    ares__insert_in_list(
-        &(query->queries_by_timeout),
-        &(channel->queries_by_timeout[query->timeout.tv_sec %
-                                      ARES_TIMEOUT_TABLE_SIZE]));
-
-    /* Keep track of queries bucketed by server, so we can process server
-     * errors quickly.
-     */
-    ares__remove_from_list(&(query->queries_to_server));
-    ares__insert_in_list(&(query->queries_to_server),
-                         &(server->queries_to_server));
-}
-
-/*
- * setsocknonblock sets the given socket to either blocking or non-blocking
- * mode based on the 'nonblock' boolean argument. This function is highly
- * portable.
- */
-static int setsocknonblock(ares_socket_t sockfd,    /* operate on this */
-                    int nonblock   /* TRUE or FALSE */)
-{
-#if defined(USE_BLOCKING_SOCKETS)
-
-  return 0; /* returns success */
-
-#elif defined(HAVE_FCNTL_O_NONBLOCK)
-
-  /* most recent unix versions */
-  int flags;
-  flags = fcntl(sockfd, F_GETFL, 0);
-  if (FALSE != nonblock)
-    return fcntl(sockfd, F_SETFL, flags | O_NONBLOCK);
-  else
-    return fcntl(sockfd, F_SETFL, flags & (~O_NONBLOCK));
-
-#elif defined(HAVE_IOCTL_FIONBIO)
-
-  /* older unix versions */
-  int flags;
-  flags = nonblock;
-  return ioctl(sockfd, FIONBIO, &flags);
-
-#elif defined(HAVE_IOCTLSOCKET_FIONBIO)
-
-#ifdef WATT32
-  char flags;
-#else
-  /* Windows */
-  unsigned long flags;
-#endif
-  flags = nonblock;
-  return ioctlsocket(sockfd, FIONBIO, &flags);
-
-#elif defined(HAVE_IOCTLSOCKET_CAMEL_FIONBIO)
-
-  /* Amiga */
-  return IoctlSocket(sockfd, FIONBIO, (long)nonblock);
-
-#elif defined(HAVE_SETSOCKOPT_SO_NONBLOCK)
-
-  /* BeOS */
-  long b = nonblock ? 1 : 0;
-  return setsockopt(sockfd, SOL_SOCKET, SO_NONBLOCK, &b, sizeof(b));
-
-#else
-#  error "no non-blocking method was found/used/set"
-#endif
-}
-
-static int configure_socket(ares_socket_t s, ares_channel channel)
-{
-  setsocknonblock(s, TRUE);
-
-#if defined(FD_CLOEXEC) && !defined(MSDOS)
-  /* Configure the socket fd as close-on-exec. */
-  if (fcntl(s, F_SETFD, FD_CLOEXEC) == -1)
-    return -1;
-#endif
-
-  /* Set the socket's send and receive buffer sizes. */
-  if ((channel->socket_send_buffer_size > 0) &&
-      setsockopt(s, SOL_SOCKET, SO_SNDBUF,
-                 (void *)&channel->socket_send_buffer_size,
-                 sizeof(channel->socket_send_buffer_size)) == -1)
-    return -1;
-
-  if ((channel->socket_receive_buffer_size > 0) &&
-      setsockopt(s, SOL_SOCKET, SO_RCVBUF,
-                 (void *)&channel->socket_receive_buffer_size,
-                 sizeof(channel->socket_receive_buffer_size)) == -1)
-    return -1;
-
-  return 0;
- }
-
-static int open_tcp_socket(ares_channel channel, struct server_state *server)
-{
-  ares_socket_t s;
-  int opt;
-  ares_socklen_t salen;
-  union {
-    struct sockaddr_in  sa4;
-    struct sockaddr_in6 sa6;
-  } saddr;
-  struct sockaddr *sa;
-
-  switch (server->addr.family)
-    {
-      case AF_INET:
-        sa = (void *)&saddr.sa4;
-        salen = sizeof(saddr.sa4);
-        memset(sa, 0, salen);
-        saddr.sa4.sin_family = AF_INET;
-        saddr.sa4.sin_port = (unsigned short)(channel->tcp_port & 0xffff);
-        memcpy(&saddr.sa4.sin_addr, &server->addr.addrV4,
-               sizeof(server->addr.addrV4));
-        break;
-      case AF_INET6:
-        sa = (void *)&saddr.sa6;
-        salen = sizeof(saddr.sa6);
-        memset(sa, 0, salen);
-        saddr.sa6.sin6_family = AF_INET6;
-        saddr.sa6.sin6_port = (unsigned short)(channel->tcp_port & 0xffff);
-        memcpy(&saddr.sa6.sin6_addr, &server->addr.addrV6,
-               sizeof(server->addr.addrV6));
-        break;
-      default:
-        return -1;
-    }
-
-  /* Acquire a socket. */
-  s = socket(server->addr.family, SOCK_STREAM, 0);
-  if (s == ARES_SOCKET_BAD)
-    return -1;
-
-  /* Configure it. */
-  if (configure_socket(s, channel) < 0)
-    {
-       sclose(s);
-       return -1;
-    }
-
-#ifdef TCP_NODELAY
-  /*
-   * Disable the Nagle algorithm (only relevant for TCP sockets, and thus not
-   * in configure_socket). In general, in DNS lookups we're pretty much
-   * interested in firing off a single request and then waiting for a reply,
-   * so batching isn't very interesting in general.
-   */
-  opt = 1;
-  if (setsockopt(s, IPPROTO_TCP, TCP_NODELAY,
-                 (void *)&opt, sizeof(opt)) == -1)
-    {
-       sclose(s);
-       return -1;
-    }
-#endif
-
-  /* Connect to the server. */
-  if (connect(s, sa, salen) == -1)
-    {
-      int err = SOCKERRNO;
-
-      if (err != EINPROGRESS && err != EWOULDBLOCK)
-        {
-          sclose(s);
-          return -1;
-        }
-    }
-
-  if (channel->sock_create_cb)
-    {
-      int err = channel->sock_create_cb(s, SOCK_STREAM,
-                                        channel->sock_create_cb_data);
-      if (err < 0)
-        {
-          sclose(s);
-          return err;
-        }
-    }
-
-  SOCK_STATE_CALLBACK(channel, s, 1, 0);
-  server->tcp_buffer_pos = 0;
-  server->tcp_socket = s;
-  server->tcp_connection_generation = ++channel->tcp_connection_generation;
-  return 0;
-}
-
-static int open_udp_socket(ares_channel channel, struct server_state *server)
-{
-  ares_socket_t s;
-  ares_socklen_t salen;
-  union {
-    struct sockaddr_in  sa4;
-    struct sockaddr_in6 sa6;
-  } saddr;
-  struct sockaddr *sa;
-
-  switch (server->addr.family)
-    {
-      case AF_INET:
-        sa = (void *)&saddr.sa4;
-        salen = sizeof(saddr.sa4);
-        memset(sa, 0, salen);
-        saddr.sa4.sin_family = AF_INET;
-        saddr.sa4.sin_port = (unsigned short)(channel->udp_port & 0xffff);
-        memcpy(&saddr.sa4.sin_addr, &server->addr.addrV4,
-               sizeof(server->addr.addrV4));
-        break;
-      case AF_INET6:
-        sa = (void *)&saddr.sa6;
-        salen = sizeof(saddr.sa6);
-        memset(sa, 0, salen);
-        saddr.sa6.sin6_family = AF_INET6;
-        saddr.sa6.sin6_port = (unsigned short)(channel->udp_port & 0xffff);
-        memcpy(&saddr.sa6.sin6_addr, &server->addr.addrV6,
-               sizeof(server->addr.addrV6));
-        break;
-      default:
-        return -1;
-    }
-
-  /* Acquire a socket. */
-  s = socket(server->addr.family, SOCK_DGRAM, 0);
-  if (s == ARES_SOCKET_BAD)
-    return -1;
-
-  /* Set the socket non-blocking. */
-  if (configure_socket(s, channel) < 0)
-    {
-       sclose(s);
-       return -1;
-    }
-
-  /* Connect to the server. */
-  if (connect(s, sa, salen) == -1)
-    {
-      int err = SOCKERRNO;
-
-      if (err != EINPROGRESS && err != EWOULDBLOCK)
-        {
-          sclose(s);
-          return -1;
-        }
-    }
-
-  if (channel->sock_create_cb)
-    {
-      int err = channel->sock_create_cb(s, SOCK_DGRAM,
-                                        channel->sock_create_cb_data);
-      if (err < 0)
-        {
-          sclose(s);
-          return err;
-        }
-    }
-
-  SOCK_STATE_CALLBACK(channel, s, 1, 0);
-
-  server->udp_socket = s;
-  return 0;
-}
-
-static int same_questions(const unsigned char *qbuf, int qlen,
-                          const unsigned char *abuf, int alen)
-{
-  struct {
-    const unsigned char *p;
-    int qdcount;
-    char *name;
-    long namelen;
-    int type;
-    int dnsclass;
-  } q, a;
-  int i, j;
-
-  if (qlen < HFIXEDSZ || alen < HFIXEDSZ)
-    return 0;
-
-  /* Extract qdcount from the request and reply buffers and compare them. */
-  q.qdcount = DNS_HEADER_QDCOUNT(qbuf);
-  a.qdcount = DNS_HEADER_QDCOUNT(abuf);
-  if (q.qdcount != a.qdcount)
-    return 0;
-
-  /* For each question in qbuf, find it in abuf. */
-  q.p = qbuf + HFIXEDSZ;
-  for (i = 0; i < q.qdcount; i++)
-    {
-      /* Decode the question in the query. */
-      if (ares_expand_name(q.p, qbuf, qlen, &q.name, &q.namelen)
-          != ARES_SUCCESS)
-        return 0;
-      q.p += q.namelen;
-      if (q.p + QFIXEDSZ > qbuf + qlen)
-        {
-          free(q.name);
-          return 0;
-        }
-      q.type = DNS_QUESTION_TYPE(q.p);
-      q.dnsclass = DNS_QUESTION_CLASS(q.p);
-      q.p += QFIXEDSZ;
-
-      /* Search for this question in the answer. */
-      a.p = abuf + HFIXEDSZ;
-      for (j = 0; j < a.qdcount; j++)
-        {
-          /* Decode the question in the answer. */
-          if (ares_expand_name(a.p, abuf, alen, &a.name, &a.namelen)
-              != ARES_SUCCESS)
-            {
-              free(q.name);
-              return 0;
-            }
-          a.p += a.namelen;
-          if (a.p + QFIXEDSZ > abuf + alen)
-            {
-              free(q.name);
-              free(a.name);
-              return 0;
-            }
-          a.type = DNS_QUESTION_TYPE(a.p);
-          a.dnsclass = DNS_QUESTION_CLASS(a.p);
-          a.p += QFIXEDSZ;
-
-          /* Compare the decoded questions. */
-          if (strcasecmp(q.name, a.name) == 0 && q.type == a.type
-              && q.dnsclass == a.dnsclass)
-            {
-              free(a.name);
-              break;
-            }
-          free(a.name);
-        }
-
-      free(q.name);
-      if (j == a.qdcount)
-        return 0;
-    }
-  return 1;
-}
-
-static int same_address(struct sockaddr *sa, struct ares_addr *aa)
-{
-  void *addr1;
-  void *addr2;
-
-  if (sa->sa_family == aa->family)
-    {
-      switch (aa->family)
-        {
-          case AF_INET:
-            addr1 = &aa->addrV4;
-            addr2 = &((struct sockaddr_in *)sa)->sin_addr;
-            if (memcmp(addr1, addr2, sizeof(aa->addrV4)) == 0)
-              return 1; /* match */
-            break;
-          case AF_INET6:
-            addr1 = &aa->addrV6;
-            addr2 = &((struct sockaddr_in6 *)sa)->sin6_addr;
-            if (memcmp(addr1, addr2, sizeof(aa->addrV6)) == 0)
-              return 1; /* match */
-            break;
-          default:
-            break;
-        }
-    }
-  return 0; /* different */
-}
-
-static void end_query (ares_channel channel, struct query *query, int status,
-                       unsigned char *abuf, int alen)
-{
-  int i;
-
-  /* First we check to see if this query ended while one of our send
-   * queues still has pointers to it.
-   */
-  for (i = 0; i < channel->nservers; i++)
-    {
-      struct server_state *server = &channel->servers[i];
-      struct send_request *sendreq;
-      for (sendreq = server->qhead; sendreq; sendreq = sendreq->next)
-        if (sendreq->owner_query == query)
-          {
-            sendreq->owner_query = NULL;
-            assert(sendreq->data_storage == NULL);
-            if (status == ARES_SUCCESS)
-              {
-                /* We got a reply for this query, but this queued
-                 * sendreq points into this soon-to-be-gone query's
-                 * tcpbuf. Probably this means we timed out and queued
-                 * the query for retransmission, then received a
-                 * response before actually retransmitting. This is
-                 * perfectly fine, so we want to keep the connection
-                 * running smoothly if we can. But in the worst case
-                 * we may have sent only some prefix of the query,
-                 * with some suffix of the query left to send. Also,
-                 * the buffer may be queued on multiple queues. To
-                 * prevent dangling pointers to the query's tcpbuf and
-                 * handle these cases, we just give such sendreqs
-                 * their own copy of the query packet.
-                 */
-               sendreq->data_storage = malloc(sendreq->len);
-               if (sendreq->data_storage != NULL)
-                 {
-                   memcpy(sendreq->data_storage, sendreq->data, sendreq->len);
-                   sendreq->data = sendreq->data_storage;
-                 }
-              }
-            if ((status != ARES_SUCCESS) || (sendreq->data_storage == NULL))
-              {
-                /* We encountered an error (probably a timeout,
-                 * suggesting the DNS server we're talking to is
-                 * probably unreachable, wedged, or severely
-                 * overloaded) or we couldn't copy the request, so
-                 * mark the connection as broken. When we get to
-                 * process_broken_connections() we'll close the
-                 * connection and try to re-send requests to another
-                 * server.
-                 */
-               server->is_broken = 1;
-               /* Just to be paranoid, zero out this sendreq... */
-               sendreq->data = NULL;
-               sendreq->len = 0;
-             }
-          }
-    }
-
-  /* Invoke the callback */
-  query->callback(query->arg, status, query->timeouts, abuf, alen);
-  ares__free_query(query);
-
-  /* Simple cleanup policy: if no queries are remaining, close all
-   * network sockets unless STAYOPEN is set.
-   */
-  if (!(channel->flags & ARES_FLAG_STAYOPEN) &&
-      ares__is_list_empty(&(channel->all_queries)))
-    {
-      for (i = 0; i < channel->nservers; i++)
-        ares__close_sockets(channel, &channel->servers[i]);
-    }
-}
-
-void ares__free_query(struct query *query)
-{
-  /* Remove the query from all the lists in which it is linked */
-  ares__remove_from_list(&(query->queries_by_qid));
-  ares__remove_from_list(&(query->queries_by_timeout));
-  ares__remove_from_list(&(query->queries_to_server));
-  ares__remove_from_list(&(query->all_queries));
-  /* Zero out some important stuff, to help catch bugs */
-  query->callback = NULL;
-  query->arg = NULL;
-  /* Deallocate the memory associated with the query */
-  free(query->tcpbuf);
-  free(query->server_info);
-  free(query);
-}
diff --git a/src/other/ares/ares_process.pdf b/src/other/ares/ares_process.pdf
deleted file mode 100644
index 23184b0..0000000
Binary files a/src/other/ares/ares_process.pdf and /dev/null differ
diff --git a/src/other/ares/ares_query.c b/src/other/ares/ares_query.c
deleted file mode 100644
index 2a717fb..0000000
--- a/src/other/ares/ares_query.c
+++ /dev/null
@@ -1,184 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#include <stdlib.h>
-#include "ares.h"
-#include "ares_dns.h"
-#include "ares_private.h"
-
-struct qquery {
-  ares_callback callback;
-  void *arg;
-};
-
-static void qcallback(void *arg, int status, int timeouts, unsigned char *abuf, int alen);
-
-void ares__rc4(rc4_key* key, unsigned char *buffer_ptr, int buffer_len)
-{
-  unsigned char x;
-  unsigned char y;
-  unsigned char* state;
-  unsigned char xorIndex;
-  short counter;
-
-  x = key->x;
-  y = key->y;
-
-  state = &key->state[0];
-  for(counter = 0; counter < buffer_len; counter ++)
-  {
-    x = (unsigned char)((x + 1) % 256);
-    y = (unsigned char)((state[x] + y) % 256);
-    ARES_SWAP_BYTE(&state[x], &state[y]);
-
-    xorIndex = (unsigned char)((state[x] + state[y]) % 256);
-
-    buffer_ptr[counter] = (unsigned char)(buffer_ptr[counter]^state[xorIndex]);
-  }
-  key->x = x;
-  key->y = y;
-}
-
-static struct query* find_query_by_id(ares_channel channel, unsigned short id)
-{
-  unsigned short qid;
-  struct list_node* list_head;
-  struct list_node* list_node;
-  DNS_HEADER_SET_QID(((unsigned char*)&qid), id);
-
-  /* Find the query corresponding to this packet. */
-  list_head = &(channel->queries_by_qid[qid % ARES_QID_TABLE_SIZE]);
-  for (list_node = list_head->next; list_node != list_head;
-       list_node = list_node->next)
-    {
-       struct query *q = list_node->data;
-       if (q->qid == qid)
-	  return q;
-    }
-  return NULL;
-}
-
-
-/* a unique query id is generated using an rc4 key. Since the id may already
-   be used by a running query (as infrequent as it may be), a lookup is
-   performed per id generation. In practice this search should happen only
-   once per newly generated id
-*/
-static unsigned short generate_unique_id(ares_channel channel)
-{
-  unsigned short id;
-
-  do {
-    id = ares__generate_new_id(&channel->id_key);
-  } while (find_query_by_id(channel, id));
-
-  return (unsigned short)id;
-}
-
-void ares_query(ares_channel channel, const char *name, int dnsclass,
-                int type, ares_callback callback, void *arg)
-{
-  struct qquery *qquery;
-  unsigned char *qbuf;
-  int qlen, rd, status;
-
-  /* Compose the query. */
-  rd = !(channel->flags & ARES_FLAG_NORECURSE);
-  status = ares_mkquery(name, dnsclass, type, channel->next_id, rd, &qbuf,
-                        &qlen);
-  if (status != ARES_SUCCESS)
-    {
-      if (qbuf != NULL) free(qbuf);
-      callback(arg, status, 0, NULL, 0);
-      return;
-    }
-
-  channel->next_id = generate_unique_id(channel);
-
-  /* Allocate and fill in the query structure. */
-  qquery = malloc(sizeof(struct qquery));
-  if (!qquery)
-    {
-      ares_free_string(qbuf);
-      callback(arg, ARES_ENOMEM, 0, NULL, 0);
-      return;
-    }
-  qquery->callback = callback;
-  qquery->arg = arg;
-
-  /* Send it off.  qcallback will be called when we get an answer. */
-  ares_send(channel, qbuf, qlen, qcallback, qquery);
-  ares_free_string(qbuf);
-}
-
-static void qcallback(void *arg, int status, int timeouts, unsigned char *abuf, int alen)
-{
-  struct qquery *qquery = (struct qquery *) arg;
-  unsigned int ancount;
-  int rcode;
-
-  if (status != ARES_SUCCESS)
-    qquery->callback(qquery->arg, status, timeouts, abuf, alen);
-  else
-    {
-      /* Pull the response code and answer count from the packet. */
-      rcode = DNS_HEADER_RCODE(abuf);
-      ancount = DNS_HEADER_ANCOUNT(abuf);
-
-      /* Convert errors. */
-      switch (rcode)
-        {
-        case NOERROR:
-          status = (ancount > 0) ? ARES_SUCCESS : ARES_ENODATA;
-          break;
-        case FORMERR:
-          status = ARES_EFORMERR;
-          break;
-        case SERVFAIL:
-          status = ARES_ESERVFAIL;
-          break;
-        case NXDOMAIN:
-          status = ARES_ENOTFOUND;
-          break;
-        case NOTIMP:
-          status = ARES_ENOTIMP;
-          break;
-        case REFUSED:
-          status = ARES_EREFUSED;
-          break;
-        }
-      qquery->callback(qquery->arg, status, timeouts, abuf, alen);
-    }
-  free(qquery);
-}
diff --git a/src/other/ares/ares_query.pdf b/src/other/ares/ares_query.pdf
deleted file mode 100644
index 671482e..0000000
Binary files a/src/other/ares/ares_query.pdf and /dev/null differ
diff --git a/src/other/ares/ares_rules.h b/src/other/ares/ares_rules.h
deleted file mode 100644
index cdacf4a..0000000
--- a/src/other/ares/ares_rules.h
+++ /dev/null
@@ -1,145 +0,0 @@
-#ifndef __CARES_RULES_H
-#define __CARES_RULES_H
-
-/* $Id$ */
-
-/* Copyright (C) 2009 by Daniel Stenberg et al
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation for any purpose and without fee is hereby granted, provided
- * that the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in advertising or
- * publicity pertaining to distribution of the software without specific,
- * written prior permission.  M.I.T. makes no representations about the
- * suitability of this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-/* ================================================================ */
-/*                    COMPILE TIME SANITY CHECKS                    */
-/* ================================================================ */
-
-/*
- * NOTE 1:
- * -------
- *
- * All checks done in this file are intentionally placed in a public
- * header file which is pulled by ares.h when an application is
- * being built using an already built c-ares library. Additionally
- * this file is also included and used when building the library.
- *
- * If compilation fails on this file it is certainly sure that the
- * problem is elsewhere. It could be a problem in the ares_build.h
- * header file, or simply that you are using different compilation
- * settings than those used to build the library.
- *
- * Nothing in this file is intended to be modified or adjusted by the
- * c-ares library user nor by the c-ares library builder.
- *
- * Do not deactivate any check, these are done to make sure that the
- * library is properly built and used.
- *
- * You can find further help on the c-ares development mailing list:
- * http://cool.haxx.se/mailman/listinfo/c-ares/
- *
- * NOTE 2
- * ------
- *
- * Some of the following compile time checks are based on the fact
- * that the dimension of a constant array can not be a negative one.
- * In this way if the compile time verification fails, the compilation
- * will fail issuing an error. The error description wording is compiler
- * dependent but it will be quite similar to one of the following:
- *
- *   "negative subscript or subscript is too large"
- *   "array must have at least one element"
- *   "-1 is an illegal array size"
- *   "size of array is negative"
- *
- * If you are building an application which tries to use an already
- * built c-ares library and you are getting this kind of errors on
- * this file, it is a clear indication that there is a mismatch between
- * how the library was built and how you are trying to use it for your
- * application. Your already compiled or binary library provider is the
- * only one who can give you the details you need to properly use it.
- */
-
-/*
- * Verify that some macros are actually defined.
- */
-
-#ifndef CARES_SIZEOF_LONG
-#  error "CARES_SIZEOF_LONG definition is missing!"
-   Error Compilation_aborted_CARES_SIZEOF_LONG_is_missing
-#endif
-
-#ifndef CARES_TYPEOF_ARES_SOCKLEN_T
-#  error "CARES_TYPEOF_ARES_SOCKLEN_T definition is missing!"
-   Error Compilation_aborted_CARES_TYPEOF_ARES_SOCKLEN_T_is_missing
-#endif
-
-#ifndef CARES_SIZEOF_ARES_SOCKLEN_T
-#  error "CARES_SIZEOF_ARES_SOCKLEN_T definition is missing!"
-   Error Compilation_aborted_CARES_SIZEOF_ARES_SOCKLEN_T_is_missing
-#endif
-
-/*
- * Macros private to this header file.
- */
-
-#define CareschkszEQ(t, s) sizeof(t) == s ? 1 : -1
-
-#define CareschkszGE(t1, t2) sizeof(t1) >= sizeof(t2) ? 1 : -1
-
-/*
- * Verify that the size previously defined and expected for long
- * is the same as the one reported by sizeof() at compile time.
- */
-
-typedef char
-  __cares_rule_01__
-    [CareschkszEQ(long, CARES_SIZEOF_LONG)];
-
-/*
- * Verify that the size previously defined and expected for
- * ares_socklen_t is actually the the same as the one reported
- * by sizeof() at compile time.
- */
-
-typedef char
-  __cares_rule_02__
-    [CareschkszEQ(ares_socklen_t, CARES_SIZEOF_ARES_SOCKLEN_T)];
-
-/*
- * Verify at compile time that the size of ares_socklen_t as reported
- * by sizeof() is greater or equal than the one reported for int for
- * the current compilation.
- */
-
-typedef char
-  __cares_rule_03__
-    [CareschkszGE(ares_socklen_t, int)];
-
-/* ================================================================ */
-/*          EXTERNALLY AND INTERNALLY VISIBLE DEFINITIONS           */
-/* ================================================================ */
-
-/*
- * Get rid of macros private to this header file.
- */
-
-#undef CareschkszEQ
-#undef CareschkszGE
-
-/*
- * Get rid of macros not intended to exist beyond this point.
- */
-
-#undef CARES_PULL_WS2TCPIP_H
-#undef CARES_PULL_SYS_TYPES_H
-#undef CARES_PULL_SYS_SOCKET_H
-
-#undef CARES_TYPEOF_ARES_SOCKLEN_T
-
-#endif /* __CARES_RULES_H */
diff --git a/src/other/ares/ares_save_options.pdf b/src/other/ares/ares_save_options.pdf
deleted file mode 100644
index 80d4e4d..0000000
Binary files a/src/other/ares/ares_save_options.pdf and /dev/null differ
diff --git a/src/other/ares/ares_search.c b/src/other/ares/ares_search.c
deleted file mode 100644
index 8673c28..0000000
--- a/src/other/ares/ares_search.c
+++ /dev/null
@@ -1,323 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-#include <errno.h>
-
-#ifdef HAVE_STRINGS_H
-#  include <strings.h>
-#endif
-
-#include "ares.h"
-#include "ares_private.h"
-
-struct search_query {
-  /* Arguments passed to ares_search */
-  ares_channel channel;
-  char *name;                   /* copied into an allocated buffer */
-  int dnsclass;
-  int type;
-  ares_callback callback;
-  void *arg;
-
-  int status_as_is;             /* error status from trying as-is */
-  int next_domain;              /* next search domain to try */
-  int trying_as_is;             /* current query is for name as-is */
-  int timeouts;                 /* number of timeouts we saw for this request */
-  int ever_got_nodata;          /* did we ever get ARES_ENODATA along the way? */
-};
-
-static void search_callback(void *arg, int status, int timeouts,
-                            unsigned char *abuf, int alen);
-static void end_squery(struct search_query *squery, int status,
-                       unsigned char *abuf, int alen);
-static int cat_domain(const char *name, const char *domain, char **s);
-static int single_domain(ares_channel channel, const char *name, char **s);
-
-void ares_search(ares_channel channel, const char *name, int dnsclass,
-                 int type, ares_callback callback, void *arg)
-{
-  struct search_query *squery;
-  char *s;
-  const char *p;
-  int status, ndots;
-
-  /* If name only yields one domain to search, then we don't have
-   * to keep extra state, so just do an ares_query().
-   */
-  status = single_domain(channel, name, &s);
-  if (status != ARES_SUCCESS)
-    {
-      callback(arg, status, 0, NULL, 0);
-      return;
-    }
-  if (s)
-    {
-      ares_query(channel, s, dnsclass, type, callback, arg);
-      free(s);
-      return;
-    }
-
-  /* Allocate a search_query structure to hold the state necessary for
-   * doing multiple lookups.
-   */
-  squery = malloc(sizeof(struct search_query));
-  if (!squery)
-    {
-      callback(arg, ARES_ENOMEM, 0, NULL, 0);
-      return;
-    }
-  squery->channel = channel;
-  squery->name = strdup(name);
-  if (!squery->name)
-    {
-      free(squery);
-      callback(arg, ARES_ENOMEM, 0, NULL, 0);
-      return;
-    }
-  squery->dnsclass = dnsclass;
-  squery->type = type;
-  squery->status_as_is = -1;
-  squery->callback = callback;
-  squery->arg = arg;
-  squery->timeouts = 0;
-  squery->ever_got_nodata = 0;
-
-  /* Count the number of dots in name. */
-  ndots = 0;
-  for (p = name; *p; p++)
-    {
-      if (*p == '.')
-        ndots++;
-    }
-
-  /* If ndots is at least the channel ndots threshold (usually 1),
-   * then we try the name as-is first.  Otherwise, we try the name
-   * as-is last.
-   */
-  if (ndots >= channel->ndots)
-    {
-      /* Try the name as-is first. */
-      squery->next_domain = 0;
-      squery->trying_as_is = 1;
-      ares_query(channel, name, dnsclass, type, search_callback, squery);
-    }
-  else
-    {
-      /* Try the name as-is last; start with the first search domain. */
-      squery->next_domain = 1;
-      squery->trying_as_is = 0;
-      status = cat_domain(name, channel->domains[0], &s);
-      if (status == ARES_SUCCESS)
-        {
-          ares_query(channel, s, dnsclass, type, search_callback, squery);
-          free(s);
-        }
-      else
-      {
-        /* failed, free the malloc()ed memory */
-        free(squery->name);
-        free(squery);
-        callback(arg, status, 0, NULL, 0);
-      }
-    }
-}
-
-static void search_callback(void *arg, int status, int timeouts,
-                            unsigned char *abuf, int alen)
-{
-  struct search_query *squery = (struct search_query *) arg;
-  ares_channel channel = squery->channel;
-  char *s;
-
-  squery->timeouts += timeouts;
-
-  /* Stop searching unless we got a non-fatal error. */
-  if (status != ARES_ENODATA && status != ARES_ESERVFAIL
-      && status != ARES_ENOTFOUND)
-    end_squery(squery, status, abuf, alen);
-  else
-    {
-      /* Save the status if we were trying as-is. */
-      if (squery->trying_as_is)
-        squery->status_as_is = status;
-
-      /*
-       * If we ever get ARES_ENODATA along the way, record that; if the search
-       * should run to the very end and we got at least one ARES_ENODATA,
-       * then callers like ares_gethostbyname() may want to try a T_A search
-       * even if the last domain we queried for T_AAAA resource records
-       * returned ARES_ENOTFOUND.
-       */
-      if (status == ARES_ENODATA)
-        squery->ever_got_nodata = 1;
-
-      if (squery->next_domain < channel->ndomains)
-        {
-          /* Try the next domain. */
-          status = cat_domain(squery->name,
-                              channel->domains[squery->next_domain], &s);
-          if (status != ARES_SUCCESS)
-            end_squery(squery, status, NULL, 0);
-          else
-            {
-              squery->trying_as_is = 0;
-              squery->next_domain++;
-              ares_query(channel, s, squery->dnsclass, squery->type,
-                         search_callback, squery);
-              free(s);
-            }
-        }
-      else if (squery->status_as_is == -1)
-        {
-          /* Try the name as-is at the end. */
-          squery->trying_as_is = 1;
-          ares_query(channel, squery->name, squery->dnsclass, squery->type,
-                     search_callback, squery);
-        }
-      else {
-        if (squery->status_as_is == ARES_ENOTFOUND && squery->ever_got_nodata) {
-          end_squery(squery, ARES_ENODATA, NULL, 0);
-        }
-        else
-          end_squery(squery, squery->status_as_is, NULL, 0);
-      }
-    }
-}
-
-static void end_squery(struct search_query *squery, int status,
-                       unsigned char *abuf, int alen)
-{
-  squery->callback(squery->arg, status, squery->timeouts, abuf, alen);
-  free(squery->name);
-  free(squery);
-}
-
-/* Concatenate two domains. */
-static int cat_domain(const char *name, const char *domain, char **s)
-{
-  size_t nlen = strlen(name);
-  size_t dlen = strlen(domain);
-
-  *s = malloc(nlen + 1 + dlen + 1);
-  if (!*s)
-    return ARES_ENOMEM;
-  memcpy(*s, name, nlen);
-  (*s)[nlen] = '.';
-  memcpy(*s + nlen + 1, domain, dlen);
-  (*s)[nlen + 1 + dlen] = 0;
-  return ARES_SUCCESS;
-}
-
-/* Determine if this name only yields one query.  If it does, set *s to
- * the string we should query, in an allocated buffer.  If not, set *s
- * to NULL.
- */
-static int single_domain(ares_channel channel, const char *name, char **s)
-{
-  size_t len = strlen(name);
-  const char *hostaliases;
-  FILE *fp;
-  char *line = NULL;
-  int status;
-  size_t linesize;
-  const char *p, *q;
-  int error;
-
-  /* If the name contains a trailing dot, then the single query is the name
-   * sans the trailing dot.
-   */
-  if (name[len - 1] == '.')
-    {
-      *s = strdup(name);
-      return (*s) ? ARES_SUCCESS : ARES_ENOMEM;
-    }
-
-  if (!(channel->flags & ARES_FLAG_NOALIASES) && !strchr(name, '.'))
-    {
-      /* The name might be a host alias. */
-      hostaliases = getenv("HOSTALIASES");
-      if (hostaliases)
-        {
-          fp = fopen(hostaliases, "r");
-          if (fp)
-            {
-              while ((status = ares__read_line(fp, &line, &linesize))
-                     == ARES_SUCCESS)
-                {
-                  if (strncasecmp(line, name, len) != 0 ||
-                      !ISSPACE(line[len]))
-                    continue;
-                  p = line + len;
-                  while (ISSPACE(*p))
-                    p++;
-                  if (*p)
-                    {
-                      q = p + 1;
-                      while (*q && !ISSPACE(*q))
-                        q++;
-                      *s = malloc(q - p + 1);
-                      if (*s)
-                        {
-                          memcpy(*s, p, q - p);
-                          (*s)[q - p] = 0;
-                        }
-                      free(line);
-                      fclose(fp);
-                      return (*s) ? ARES_SUCCESS : ARES_ENOMEM;
-                    }
-                }
-              free(line);
-              fclose(fp);
-              if (status != ARES_SUCCESS)
-                return status;
-            }
-          else
-            {
-              error = errno;
-              switch(error)
-                {
-                case ENOENT:
-                case ESRCH:
-                  break;
-                default:
-                  DEBUGF(fprintf(stderr, "fopen() failed with error: %d %s\n",
-                                 error, strerror(error)));
-                  DEBUGF(fprintf(stderr, "Error opening file: %s\n",
-                                 hostaliases));
-                  *s = NULL;
-                  return ARES_EFILE;
-                }
-            }
-        }
-    }
-
-  if (channel->flags & ARES_FLAG_NOSEARCH || channel->ndomains == 0)
-    {
-      /* No domain search to do; just try the name as-is. */
-      *s = strdup(name);
-      return (*s) ? ARES_SUCCESS : ARES_ENOMEM;
-    }
-
-  *s = NULL;
-  return ARES_SUCCESS;
-}
diff --git a/src/other/ares/ares_search.pdf b/src/other/ares/ares_search.pdf
deleted file mode 100644
index d79443a..0000000
Binary files a/src/other/ares/ares_search.pdf and /dev/null differ
diff --git a/src/other/ares/ares_send.c b/src/other/ares/ares_send.c
deleted file mode 100644
index c2b0065..0000000
--- a/src/other/ares/ares_send.c
+++ /dev/null
@@ -1,135 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-#include "ares.h"
-#include "ares_dns.h"
-#include "ares_private.h"
-
-void ares_send(ares_channel channel, const unsigned char *qbuf, int qlen,
-               ares_callback callback, void *arg)
-{
-  struct query *query;
-  int i;
-  struct timeval now;
-
-  /* Verify that the query is at least long enough to hold the header. */
-  if (qlen < HFIXEDSZ || qlen >= (1 << 16))
-    {
-      callback(arg, ARES_EBADQUERY, 0, NULL, 0);
-      return;
-    }
-
-  /* Allocate space for query and allocated fields. */
-  query = malloc(sizeof(struct query));
-  if (!query)
-    {
-      callback(arg, ARES_ENOMEM, 0, NULL, 0);
-      return;
-    }
-  query->tcpbuf = malloc(qlen + 2);
-  if (!query->tcpbuf)
-    {
-      free(query);
-      callback(arg, ARES_ENOMEM, 0, NULL, 0);
-      return;
-    }
-  query->server_info = malloc(channel->nservers *
-                              sizeof(query->server_info[0]));
-  if (!query->server_info)
-    {
-      free(query->tcpbuf);
-      free(query);
-      callback(arg, ARES_ENOMEM, 0, NULL, 0);
-      return;
-    }
-
-  /* Compute the query ID.  Start with no timeout. */
-  query->qid = (unsigned short)DNS_HEADER_QID(qbuf);
-  query->timeout.tv_sec = 0;
-  query->timeout.tv_usec = 0;
-
-  /* Form the TCP query buffer by prepending qlen (as two
-   * network-order bytes) to qbuf.
-   */
-  query->tcpbuf[0] = (unsigned char)((qlen >> 8) & 0xff);
-  query->tcpbuf[1] = (unsigned char)(qlen & 0xff);
-  memcpy(query->tcpbuf + 2, qbuf, qlen);
-  query->tcplen = qlen + 2;
-
-  /* Fill in query arguments. */
-  query->qbuf = query->tcpbuf + 2;
-  query->qlen = qlen;
-  query->callback = callback;
-  query->arg = arg;
-
-  /* Initialize query status. */
-  query->try = 0;
-
-  /* Choose the server to send the query to. If rotation is enabled, keep track
-   * of the next server we want to use. */
-  query->server = channel->last_server;
-  if (channel->rotate == 1)
-    channel->last_server = (channel->last_server + 1) % channel->nservers;
-
-  for (i = 0; i < channel->nservers; i++)
-    {
-      query->server_info[i].skip_server = 0;
-      query->server_info[i].tcp_connection_generation = 0;
-    }
-  query->using_tcp = (channel->flags & ARES_FLAG_USEVC) || qlen > PACKETSZ;
-  query->error_status = ARES_ECONNREFUSED;
-  query->timeouts = 0;
-
-  /* Initialize our list nodes. */
-  ares__init_list_node(&(query->queries_by_qid),     query);
-  ares__init_list_node(&(query->queries_by_timeout), query);
-  ares__init_list_node(&(query->queries_to_server),  query);
-  ares__init_list_node(&(query->all_queries),        query);
-
-  /* Chain the query into the list of all queries. */
-  ares__insert_in_list(&(query->all_queries), &(channel->all_queries));
-  /* Keep track of queries bucketed by qid, so we can process DNS
-   * responses quickly.
-   */
-  ares__insert_in_list(
-    &(query->queries_by_qid),
-    &(channel->queries_by_qid[query->qid % ARES_QID_TABLE_SIZE]));
-
-  /* Perform the first query action. */
-  now = ares__tvnow();
-  ares__send_query(channel, query, &now);
-}
diff --git a/src/other/ares/ares_send.pdf b/src/other/ares/ares_send.pdf
deleted file mode 100644
index 0506384..0000000
Binary files a/src/other/ares/ares_send.pdf and /dev/null differ
diff --git a/src/other/ares/ares_set_servers.pdf b/src/other/ares/ares_set_servers.pdf
deleted file mode 100644
index aa2cc49..0000000
Binary files a/src/other/ares/ares_set_servers.pdf and /dev/null differ
diff --git a/src/other/ares/ares_set_socket_callback.pdf b/src/other/ares/ares_set_socket_callback.pdf
deleted file mode 100644
index a9c6874..0000000
Binary files a/src/other/ares/ares_set_socket_callback.pdf and /dev/null differ
diff --git a/src/other/ares/ares_setup.h b/src/other/ares/ares_setup.h
deleted file mode 100644
index ce81b1f..0000000
--- a/src/other/ares/ares_setup.h
+++ /dev/null
@@ -1,198 +0,0 @@
-#ifndef HEADER_CARES_SETUP_H
-#define HEADER_CARES_SETUP_H
-
-/* $Id$ */
-
-/* Copyright (C) 2004 - 2009 by Daniel Stenberg et al
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation for any purpose and without fee is hereby granted, provided
- * that the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in advertising or
- * publicity pertaining to distribution of the software without specific,
- * written prior permission.  M.I.T. makes no representations about the
- * suitability of this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-/*
- * Define WIN32 when build target is Win32 API
- */
-
-#if (defined(_WIN32) || defined(__WIN32__)) && !defined(WIN32)
-#define WIN32
-#endif
-
-/*
- * Include configuration script results or hand-crafted
- * configuration file for platforms which lack config tool.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "ares_config.h"
-#else
-
-#ifdef WIN32
-#include "config-win32.h"
-#endif
-
-#endif /* HAVE_CONFIG_H */
-
-/* ================================================================ */
-/* Definition of preprocessor macros/symbols which modify compiler  */
-/* behaviour or generated code characteristics must be done here,   */
-/* as appropriate, before any system header file is included. It is */
-/* also possible to have them defined in the config file included   */
-/* before this point. As a result of all this we frown inclusion of */
-/* system header files in our config files, avoid this at any cost. */
-/* ================================================================ */
-
-/*
- * AIX 4.3 and newer needs _THREAD_SAFE defined to build
- * proper reentrant code. Others may also need it.
- */
-
-#ifdef NEED_THREAD_SAFE
-#  ifndef _THREAD_SAFE
-#    define _THREAD_SAFE
-#  endif
-#endif
-
-/*
- * Tru64 needs _REENTRANT set for a few function prototypes and
- * things to appear in the system header files. Unixware needs it
- * to build proper reentrant code. Others may also need it.
- */
-
-#ifdef NEED_REENTRANT
-#  ifndef _REENTRANT
-#    define _REENTRANT
-#  endif
-#endif
-
-/* ================================================================ */
-/*  If you need to include a system header file for your platform,  */
-/*  please, do it beyond the point further indicated in this file.  */
-/* ================================================================ */
-
-/*
- * c-ares external interface definitions are also used internally,
- * and might also include required system header files to define them.
- */
-
-#include <ares_build.h>
-
-/*
- * Compile time sanity checks must also be done when building the library.
- */
-
-#include <ares_rules.h>
-
-/* ================================================================= */
-/* No system header file shall be included in this file before this  */
-/* point. The only allowed ones are those included from ares_build.h */
-/* ================================================================= */
-
-/*
- * Include header files for windows builds before redefining anything.
- * Use this preproessor block only to include or exclude windows.h,
- * winsock2.h, ws2tcpip.h or winsock.h. Any other windows thing belongs
- * to any other further and independent block.  Under Cygwin things work
- * just as under linux (e.g. <sys/socket.h>) and the winsock headers should
- * never be included when __CYGWIN__ is defined.  configure script takes
- * care of this, not defining HAVE_WINDOWS_H, HAVE_WINSOCK_H, HAVE_WINSOCK2_H,
- * neither HAVE_WS2TCPIP_H when __CYGWIN__ is defined.
- */
-
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#    ifdef HAVE_WS2TCPIP_H
-#       include <ws2tcpip.h>
-#    endif
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
-#  endif
-#endif
-
-/*
- * Define USE_WINSOCK to 2 if we have and use WINSOCK2 API, else
- * define USE_WINSOCK to 1 if we have and use WINSOCK  API, else
- * undefine USE_WINSOCK.
- */
-
-#undef USE_WINSOCK
-
-#ifdef HAVE_WINSOCK2_H
-#  define USE_WINSOCK 2
-#else
-#  ifdef HAVE_WINSOCK_H
-#    define USE_WINSOCK 1
-#  endif
-#endif
-
-/*
- * Work-arounds for systems without configure support
- */
-
-#ifndef HAVE_CONFIG_H
-
-#if !defined(HAVE_SYS_TIME_H) && !defined(_MSC_VER) && !defined(__WATCOMC__)
-#define HAVE_SYS_TIME_H
-#endif
-
-#if !defined(HAVE_UNISTD_H) && !defined(_MSC_VER)
-#define HAVE_UNISTD_H 1
-#endif
-
-#if !defined(HAVE_SYS_UIO_H) && !defined(WIN32) && !defined(MSDOS)
-#define HAVE_SYS_UIO_H
-#endif
-
-#endif /* HAVE_CONFIG_H */
-
-#ifdef __POCC__
-#  include <sys/types.h>
-#  include <unistd.h>
-#  define ESRCH 3
-#endif
-
-/*
- * Recent autoconf versions define these symbols in ares_config.h. We don't
- * want them (since they collide with the libcurl ones when we build
- *  --enable-debug) so we undef them again here.
- */
-
-#undef PACKAGE_STRING
-#undef PACKAGE_TARNAME
-#undef PACKAGE_VERSION
-#undef PACKAGE_BUGREPORT
-#undef PACKAGE_NAME
-#undef VERSION
-#undef PACKAGE
-
-/* IPv6 compatibility */
-#if !defined(HAVE_AF_INET6)
-#if defined(HAVE_PF_INET6)
-#define AF_INET6 PF_INET6
-#else
-#define AF_INET6 AF_MAX+1
-#endif
-#endif
-
-/*
- * Include macros and defines that should only be processed once.
- */
-
-#ifndef __SETUP_ONCE_H
-#include "setup_once.h"
-#endif
-
-#endif /* HEADER_CARES_SETUP_H */
diff --git a/src/other/ares/ares_strcasecmp.c b/src/other/ares/ares_strcasecmp.c
deleted file mode 100644
index 30d64b9..0000000
--- a/src/other/ares/ares_strcasecmp.c
+++ /dev/null
@@ -1,67 +0,0 @@
-
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-#include "ares_strcasecmp.h"
-
-#ifndef HAVE_STRCASECMP
-int ares_strcasecmp(const char *a, const char *b)
-{
-#if defined(HAVE_STRCMPI)
-  return strcmpi(a, b);
-#elif defined(HAVE_STRICMP)
-  return stricmp(a, b);
-#else
-  size_t i;
-
-  for (i = 0; i < (size_t)-1; i++) {
-    int c1 = ISUPPER(a[i]) ? tolower(a[i]) : a[i];
-    int c2 = ISUPPER(b[i]) ? tolower(b[i]) : b[i];
-    if (c1 != c2)
-      return c1-c2;
-    if (!c1)
-      break;
-  }
-  return 0;
-#endif
-}
-#endif
-
-#ifndef HAVE_STRNCASECMP
-int ares_strncasecmp(const char *a, const char *b, size_t n)
-{
-#if defined(HAVE_STRNCMPI)
-  return strncmpi(a, b, n);
-#elif defined(HAVE_STRNICMP)
-  return strnicmp(a, b, n);
-#else
-  size_t i;
-
-  for (i = 0; i < n; i++) {
-    int c1 = ISUPPER(a[i]) ? tolower(a[i]) : a[i];
-    int c2 = ISUPPER(b[i]) ? tolower(b[i]) : b[i];
-    if (c1 != c2)
-      return c1-c2;
-    if (!c1)
-      break;
-  }
-  return 0;
-#endif
-}
-#endif
-
diff --git a/src/other/ares/ares_strcasecmp.h b/src/other/ares/ares_strcasecmp.h
deleted file mode 100644
index 28164d7..0000000
--- a/src/other/ares/ares_strcasecmp.h
+++ /dev/null
@@ -1,31 +0,0 @@
-#ifndef HEADER_CARES_STRCASECMP_H
-#define HEADER_CARES_STRCASECMP_H
-
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifndef HAVE_STRCASECMP
-extern int ares_strcasecmp(const char *a, const char *b);
-#endif
-
-#ifndef HAVE_STRNCASECMP
-extern int ares_strncasecmp(const char *a, const char *b, size_t n);
-#endif
-
-#endif /* HEADER_CARES_STRCASECMP_H */
diff --git a/src/other/ares/ares_strdup.c b/src/other/ares/ares_strdup.c
deleted file mode 100644
index 6742c6f..0000000
--- a/src/other/ares/ares_strdup.c
+++ /dev/null
@@ -1,43 +0,0 @@
-
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-#include "ares_strdup.h"
-
-#ifndef HAVE_STRDUP
-char *ares_strdup(const char *s1)
-{
-  size_t sz;
-  char * s2;
-
-  if(s1) {
-    sz = strlen(s1);
-    if(sz < (size_t)-1) {
-      sz++;
-      if(sz < ((size_t)-1) / sizeof(char)) {
-        s2 = malloc(sz * sizeof(char));
-        if(s2) {
-          memcpy(s2, s1, sz * sizeof(char));
-          return s2;
-        }
-      }
-    }
-  }
-  return (char *)NULL;
-}
-#endif
diff --git a/src/other/ares/ares_strdup.h b/src/other/ares/ares_strdup.h
deleted file mode 100644
index 980da52..0000000
--- a/src/other/ares/ares_strdup.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef HEADER_CARES_STRDUP_H
-#define HEADER_CARES_STRDUP_H
-
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifndef HAVE_STRDUP
-extern char *ares_strdup(const char *s1);
-#endif
-
-#endif /* HEADER_CARES_STRDUP_H */
diff --git a/src/other/ares/ares_strerror.c b/src/other/ares/ares_strerror.c
deleted file mode 100644
index 70af5b6..0000000
--- a/src/other/ares/ares_strerror.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-#include <assert.h>
-#include "ares.h"
-
-const char *ares_strerror(int code)
-{
-  /* Return a string literal from a table. */
-  const char *errtext[] = {
-    "Successful completion",
-    "DNS server returned answer with no data",
-    "DNS server claims query was misformatted",
-    "DNS server returned general failure",
-    "Domain name not found",
-    "DNS server does not implement requested operation",
-    "DNS server refused query",
-    "Misformatted DNS query",
-    "Misformatted domain name",
-    "Unsupported address family",
-    "Misformatted DNS reply",
-    "Could not contact DNS servers",
-    "Timeout while contacting DNS servers",
-    "End of file",
-    "Error reading file",
-    "Out of memory",
-    "Channel is being destroyed",
-    "Misformatted string",
-    "Illegal flags specified",
-    "Given hostname is not numeric",
-    "Illegal hints flags specified",
-    "c-ares library initialization not yet performed",
-    "Error loading iphlpapi.dll",
-    "Could not find GetNetworkParams function",
-    "DNS query cancelled"
-  };
-
-  if(code >= 0 && code < (int)(sizeof(errtext) / sizeof(*errtext)))
-    return errtext[code];
-  else
-    return "unknown";
-}
diff --git a/src/other/ares/ares_strerror.pdf b/src/other/ares/ares_strerror.pdf
deleted file mode 100644
index 3af8ae7..0000000
Binary files a/src/other/ares/ares_strerror.pdf and /dev/null differ
diff --git a/src/other/ares/ares_timeout.c b/src/other/ares/ares_timeout.c
deleted file mode 100644
index 72ea0dc..0000000
--- a/src/other/ares/ares_timeout.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-
-#include <time.h>
-
-#include "ares.h"
-#include "ares_private.h"
-
-/* WARNING: Beware that this is linear in the number of outstanding
- * requests! You are probably far better off just calling ares_process()
- * once per second, rather than calling ares_timeout() to figure out
- * when to next call ares_process().
- */
-struct timeval *ares_timeout(ares_channel channel, struct timeval *maxtv,
-                             struct timeval *tvbuf)
-{
-  struct query *query;
-  struct list_node* list_head;
-  struct list_node* list_node;
-  struct timeval now;
-  struct timeval nextstop;
-  long offset, min_offset;
-
-  /* No queries, no timeout (and no fetch of the current time). */
-  if (ares__is_list_empty(&(channel->all_queries)))
-    return maxtv;
-
-  /* Find the minimum timeout for the current set of queries. */
-  now = ares__tvnow();
-  min_offset = -1;
-
-  list_head = &(channel->all_queries);
-  for (list_node = list_head->next; list_node != list_head;
-       list_node = list_node->next)
-    {
-      query = list_node->data;
-      if (query->timeout.tv_sec == 0)
-        continue;
-      offset = ares__timeoffset(&now, &query->timeout);
-      if (offset < 0)
-        offset = 0;
-      if (min_offset == -1 || offset < min_offset)
-        min_offset = offset;
-    }
-
-  if(min_offset != -1) {
-    nextstop.tv_sec = min_offset/1000;
-    nextstop.tv_usec = (min_offset%1000)*1000;
-  }
-
-  /* If we found a minimum timeout and it's sooner than the one specified in
-   * maxtv (if any), return it.  Otherwise go with maxtv.
-   */
-  if (min_offset != -1 && (!maxtv || ares__timedout(maxtv, &nextstop)))
-    {
-      *tvbuf = nextstop;
-      return tvbuf;
-    }
-  else
-    return maxtv;
-}
diff --git a/src/other/ares/ares_timeout.pdf b/src/other/ares/ares_timeout.pdf
deleted file mode 100644
index 1d02e56..0000000
Binary files a/src/other/ares/ares_timeout.pdf and /dev/null differ
diff --git a/src/other/ares/ares_version.c b/src/other/ares/ares_version.c
deleted file mode 100644
index 0f7d037..0000000
--- a/src/other/ares/ares_version.c
+++ /dev/null
@@ -1,12 +0,0 @@
-/* $Id$ */
-
-#include "ares_setup.h"
-#include "ares.h"
-
-const char *ares_version(int *version)
-{
-  if(version)
-    *version = ARES_VERSION;
-
-  return ARES_VERSION_STR;
-}
diff --git a/src/other/ares/ares_version.h b/src/other/ares/ares_version.h
deleted file mode 100644
index 59dbeb2..0000000
--- a/src/other/ares/ares_version.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* $Id$ */
-
-#ifndef ARES__VERSION_H
-#define ARES__VERSION_H
-
-#define ARES_VERSION_MAJOR 1
-#define ARES_VERSION_MINOR 7
-#define ARES_VERSION_PATCH 1
-#define ARES_VERSION ((ARES_VERSION_MAJOR<<16)|\
-                       (ARES_VERSION_MINOR<<8)|\
-                       (ARES_VERSION_PATCH))
-#define ARES_VERSION_STR "1.7.1"
-
-#if (ARES_VERSION >= 0x010700)
-#  define CARES_HAVE_ARES_LIBRARY_INIT 1
-#  define CARES_HAVE_ARES_LIBRARY_CLEANUP 1
-#else
-#  undef CARES_HAVE_ARES_LIBRARY_INIT
-#  undef CARES_HAVE_ARES_LIBRARY_CLEANUP
-#endif
-
-#endif
diff --git a/src/other/ares/ares_version.pdf b/src/other/ares/ares_version.pdf
deleted file mode 100644
index bd83757..0000000
Binary files a/src/other/ares/ares_version.pdf and /dev/null differ
diff --git a/src/other/ares/ares_writev.c b/src/other/ares/ares_writev.c
deleted file mode 100644
index 4c12942..0000000
--- a/src/other/ares/ares_writev.c
+++ /dev/null
@@ -1,80 +0,0 @@
-
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_LIMITS_H
-#  include <limits.h>
-#endif
-
-#include "ares.h"
-#include "ares_private.h"
-
-#ifndef HAVE_WRITEV
-ssize_t ares_writev(ares_socket_t s, const struct iovec *iov, int iovcnt)
-{
-  char *buffer, *bp;
-  int i;
-  size_t bytes = 0;
-  ssize_t result;
-
-  /* Validate iovcnt */
-  if (iovcnt <= 0)
-  {
-    SET_ERRNO(EINVAL);
-    return (-1);
-  }
-
-  /* Validate and find the sum of the iov_len values in the iov array */
-  for (i = 0; i < iovcnt; i++)
-  {
-    if (iov[i].iov_len > INT_MAX - bytes)
-    {
-      SET_ERRNO(EINVAL);
-      return (-1);
-    }
-    bytes += iov[i].iov_len;
-  }
-
-  if (bytes == 0)
-    return (0);
-
-  /* Allocate a temporary buffer to hold the data */
-  buffer = malloc(bytes);
-  if (!buffer)
-  {
-    SET_ERRNO(ENOMEM);
-    return (-1);
-  }
-
-  /* Copy the data into buffer */
-  for (bp = buffer, i = 0; i < iovcnt; ++i)
-  {
-    memcpy (bp, iov[i].iov_base, iov[i].iov_len);
-    bp += iov[i].iov_len;
-  }
-
-  /* Send buffer contents */
-  result = swrite(s, buffer, bytes);
-
-  free(buffer);
-
-  return (result);
-}
-#endif
-
diff --git a/src/other/ares/ares_writev.h b/src/other/ares/ares_writev.h
deleted file mode 100644
index 860b294..0000000
--- a/src/other/ares/ares_writev.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#ifndef HEADER_CARES_WRITEV_H
-#define HEADER_CARES_WRITEV_H
-
-/* $Id$ */
-
-/* Copyright 1998 by the Massachusetts Institute of Technology.
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include "ares_setup.h"
-#include "ares.h"
-
-#ifndef HAVE_WRITEV
-
-/* Structure for scatter/gather I/O. */
-struct iovec
-{
-  void *iov_base;  /* Pointer to data. */
-  size_t iov_len;  /* Length of data.  */
-};
-
-extern ssize_t ares_writev(ares_socket_t s, const struct iovec *iov, int iovcnt);
-
-#endif
-
-#endif /* HEADER_CARES_WRITEV_H */
diff --git a/src/other/ares/bitncmp.c b/src/other/ares/bitncmp.c
deleted file mode 100644
index 2ec8dc5..0000000
--- a/src/other/ares/bitncmp.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/* $Id$ */
-
-/*
- * Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC")
- * Copyright (c) 1996,1999 by Internet Software Consortium.
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
- * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-#ifndef HAVE_BITNCMP
-
-#include "ares_setup.h"
-#include "bitncmp.h"
-
-/*
- * int
- * bitncmp(l, r, n)
- *	compare bit masks l and r, for n bits.
- * return:
- *	-1, 1, or 0 in the libc tradition.
- * note:
- *	network byte order assumed.  this means 192.5.5.240/28 has
- *	0x11110000 in its fourth octet.
- * author:
- *	Paul Vixie (ISC), June 1996
- */
-int
-ares_bitncmp(const void *l, const void *r, int n) {
-	unsigned int lb, rb;
-	int x, b;
-
-	b = n / 8;
-	x = memcmp(l, r, b);
-	if (x || (n % 8) == 0)
-		return (x);
-
-	lb = ((const unsigned char *)l)[b];
-	rb = ((const unsigned char *)r)[b];
-	for (b = n % 8; b > 0; b--) {
-		if ((lb & 0x80) != (rb & 0x80)) {
-			if (lb & 0x80)
-				return (1);
-			return (-1);
-		}
-		lb <<= 1;
-		rb <<= 1;
-	}
-	return (0);
-}
-#endif
diff --git a/src/other/ares/bitncmp.h b/src/other/ares/bitncmp.h
deleted file mode 100644
index acdd45f..0000000
--- a/src/other/ares/bitncmp.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef __ARES_BITNCMP_H
-#define __ARES_BITNCMP_H
-
-/* $Id$ */
-
-/* Copyright (C) 2005 by Dominick Meglio
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#ifndef HAVE_BITNCMP
-int ares_bitncmp(const void *l, const void *r, int n);
-#else
-#define ares_bitncmp(x,y,z) bitncmp(x,y,z)
-#endif
-
-#endif /* __ARES_BITNCMP_H */
diff --git a/src/other/ares/buildconf b/src/other/ares/buildconf
deleted file mode 100755
index f2e9ea5..0000000
--- a/src/other/ares/buildconf
+++ /dev/null
@@ -1,117 +0,0 @@
-#!/bin/sh
-
-#--------------------------------------------------------------------------
-# findtool works as 'which' but we use a different name to make it more
-# obvious we aren't using 'which'! ;-)
-#
-findtool(){
-  file="$1"
-
-  old_IFS=$IFS; IFS=':'
-  for path in $PATH
-  do
-    IFS=$old_IFS
-    # echo "checks for $file in $path" >&2
-    if test -f "$path/$file"; then
-      echo "$path/$file"
-      return
-    fi
-  done
-  IFS=$old_IFS
-}
-
-#--------------------------------------------------------------------------
-# removethis() removes all files and subdirectories with the given name,
-# inside and below the current subdirectory at invocation time.
-#
-removethis(){
-  if test "$#" = "1"; then
-    find . -depth -name $1 -print > buildconf.tmp.$$
-    while read fdname
-    do
-      if test -f "$fdname"; then
-        rm -f "$fdname"
-      elif test -d "$fdname"; then
-        rm -f -r "$fdname"
-      fi
-    done < buildconf.tmp.$$
-    rm -f buildconf.tmp.$$
-  fi
-}
-
-#--------------------------------------------------------------------------
-# Ensure that buildconf runs from the subdirectory where configure.ac lives
-#
-if test ! -f configure.ac ||
-  test ! -f ares_init.c ||
-  test ! -f m4/cares-functions.m4; then
-  echo "Can not run buildconf from outside of c-ares source subdirectory!"
-  echo "Change to the subdirectory where buildconf is found, and try again."
-  exit 1
-fi
-
-#--------------------------------------------------------------------------
-# this approach that tries 'glibtool' first is some kind of work-around for
-# some BSD-systems I believe that use to provide the GNU libtool named
-# glibtool, with 'libtool' being something completely different.
-libtool=`findtool glibtool 2>/dev/null`
-if test ! -x "$libtool"; then
-  libtool=`findtool ${LIBTOOL:-libtool}`
-fi
-
-if test -z "$LIBTOOLIZE"; then
-  # set the LIBTOOLIZE here so that glibtoolize is used if glibtool was found
-  # $libtool is already the full path
-  libtoolize="${libtool}ize"
-else
-  libtoolize=`findtool $LIBTOOLIZE`
-fi
-
-#--------------------------------------------------------------------------
-# Remove files generated on previous buildconf/configure run.
-#
-for fname in .deps \
-    .libs \
-    *.la \
-    *.lo \
-    *.a \
-    *.o \
-    Makefile \
-    Makefile.in \
-    aclocal.m4 \
-    aclocal.m4.bak \
-    ares_build.h \
-    ares_config.h \
-    ares_config.h.in \
-    autom4te.cache \
-    compile \
-    config.guess \
-    config.log \
-    config.lt \
-    config.status \
-    config.sub \
-    configure \
-    depcomp \
-    libcares.pc \
-    libtool \
-    libtool.m4 \
-    ltmain.sh \
-    ltoptions.m4 \
-    ltsugar.m4 \
-    ltversion.m4 \
-    lt~obsolete.m4 \
-    missing \
-    stamp-h1 \
-    stamp-h2 ; do
-  removethis "$fname"
-done
-
-#--------------------------------------------------------------------------
-# run the correct scripts now
-#
-
-${libtoolize} --copy --automake --force
-${ACLOCAL:-aclocal} -I m4 $ACLOCAL_FLAGS
-${AUTOHEADER:-autoheader}
-${AUTOCONF:-autoconf}
-${AUTOMAKE:-automake} --add-missing --copy
diff --git a/src/other/ares/cares.rc b/src/other/ares/cares.rc
deleted file mode 100644
index 4dfacc4..0000000
--- a/src/other/ares/cares.rc
+++ /dev/null
@@ -1,66 +0,0 @@
-/* $Id$ */
-
-/* Copyright (C) 2009 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#include <winver.h>
-#include "ares_version.h"
-
-LANGUAGE  0x09,0x01
-
-#define RC_VERSION  ARES_VERSION_MAJOR, ARES_VERSION_MINOR, ARES_VERSION_PATCH, 0
-
-VS_VERSION_INFO VERSIONINFO
-  FILEVERSION     RC_VERSION
-  PRODUCTVERSION  RC_VERSION
-  FILEFLAGSMASK   0x3fL
-#if defined(DEBUGBUILD) || defined(_DEBUG)
-  FILEFLAGS 1
-#else
-  FILEFLAGS 0
-#endif
-  FILEOS      VOS__WINDOWS32
-  FILETYPE    VFT_DLL
-  FILESUBTYPE 0x0L
-
-BEGIN
-  BLOCK "StringFileInfo"
-  BEGIN
-    BLOCK "040904b0"
-    BEGIN
-      VALUE "CompanyName",      "The c-ares library, http://c-ares.haxx.se/\0"
-#if defined(DEBUGBUILD) || defined(_DEBUG)
-      VALUE "FileDescription",  "c-ares Debug Shared Library\0"
-      VALUE "FileVersion",      ARES_VERSION_STR "\0"
-      VALUE "InternalName",     "c-ares\0"
-      VALUE "OriginalFilename", "caresd.dll\0"
-#else
-      VALUE "FileDescription",  "c-ares Shared Library\0"
-      VALUE "FileVersion",      ARES_VERSION_STR "\0"
-      VALUE "InternalName",     "c-ares\0"
-      VALUE "OriginalFilename", "cares.dll\0"
-#endif
-      VALUE "ProductName",      "The c-ares library\0"
-      VALUE "ProductVersion",   ARES_VERSION_STR "\0"
-      VALUE "LegalCopyright",   "© 2004 - 2009 Daniel Stenberg, <daniel at haxx.se>.\0"
-      VALUE "License",          "http://c-ares.haxx.se/license.html\0"
-    END
-  END
-
-  BLOCK "VarFileInfo"
-  BEGIN
-    VALUE "Translation", 0x409, 1200
-  END
-END
diff --git a/src/other/ares/compile b/src/other/ares/compile
deleted file mode 100755
index c0096a7..0000000
--- a/src/other/ares/compile
+++ /dev/null
@@ -1,143 +0,0 @@
-#! /bin/sh
-# Wrapper for compilers which do not understand `-c -o'.
-
-scriptversion=2009-10-06.20; # UTC
-
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009  Free Software
-# Foundation, Inc.
-# Written by Tom Tromey <tromey at cygnus.com>.
-#
-# This program 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, 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 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 <http://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# This file is maintained in Automake, please report
-# bugs to <bug-automake at gnu.org> or send patches to
-# <automake-patches at gnu.org>.
-
-case $1 in
-  '')
-     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
-     exit 1;
-     ;;
-  -h | --h*)
-    cat <<\EOF
-Usage: compile [--help] [--version] PROGRAM [ARGS]
-
-Wrapper for compilers which do not understand `-c -o'.
-Remove `-o dest.o' from ARGS, run PROGRAM with the remaining
-arguments, and rename the output as expected.
-
-If you are trying to build a whole package this is not the
-right script to run: please start by reading the file `INSTALL'.
-
-Report bugs to <bug-automake at gnu.org>.
-EOF
-    exit $?
-    ;;
-  -v | --v*)
-    echo "compile $scriptversion"
-    exit $?
-    ;;
-esac
-
-ofile=
-cfile=
-eat=
-
-for arg
-do
-  if test -n "$eat"; then
-    eat=
-  else
-    case $1 in
-      -o)
-	# configure might choose to run compile as `compile cc -o foo foo.c'.
-	# So we strip `-o arg' only if arg is an object.
-	eat=1
-	case $2 in
-	  *.o | *.obj)
-	    ofile=$2
-	    ;;
-	  *)
-	    set x "$@" -o "$2"
-	    shift
-	    ;;
-	esac
-	;;
-      *.c)
-	cfile=$1
-	set x "$@" "$1"
-	shift
-	;;
-      *)
-	set x "$@" "$1"
-	shift
-	;;
-    esac
-  fi
-  shift
-done
-
-if test -z "$ofile" || test -z "$cfile"; then
-  # If no `-o' option was seen then we might have been invoked from a
-  # pattern rule where we don't need one.  That is ok -- this is a
-  # normal compilation that the losing compiler can handle.  If no
-  # `.c' file was seen then we are probably linking.  That is also
-  # ok.
-  exec "$@"
-fi
-
-# Name of file we expect compiler to create.
-cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
-
-# Create the lock directory.
-# Note: use `[/\\:.-]' here to ensure that we don't use the same name
-# that we are using for the .o file.  Also, base the name on the expected
-# object file name, since that is what matters with a parallel build.
-lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
-while true; do
-  if mkdir "$lockdir" >/dev/null 2>&1; then
-    break
-  fi
-  sleep 1
-done
-# FIXME: race condition here if user kills between mkdir and trap.
-trap "rmdir '$lockdir'; exit 1" 1 2 15
-
-# Run the compile.
-"$@"
-ret=$?
-
-if test -f "$cofile"; then
-  test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
-elif test -f "${cofile}bj"; then
-  test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
-fi
-
-rmdir "$lockdir"
-exit $ret
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/src/other/ares/config-win32.h b/src/other/ares/config-win32.h
deleted file mode 100644
index d7b1179..0000000
--- a/src/other/ares/config-win32.h
+++ /dev/null
@@ -1,354 +0,0 @@
-#ifndef __ARES_CONFIG_WIN32_H
-#define __ARES_CONFIG_WIN32_H
-
-/* $Id$ */
-
-/* Copyright (C) 2004 - 2008 by Daniel Stenberg et al
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation for any purpose and without fee is hereby granted, provided
- * that the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in advertising or
- * publicity pertaining to distribution of the software without specific,
- * written prior permission.  M.I.T. makes no representations about the
- * suitability of this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-/* ================================================================ */
-/*    ares/config-win32.h - Hand crafted config file for Windows    */
-/* ================================================================ */
-
-/* ---------------------------------------------------------------- */
-/*                          HEADER FILES                            */
-/* ---------------------------------------------------------------- */
-
-/* Define if you have the <getopt.h> header file.  */
-#if defined(__MINGW32__) || defined(__POCC__)
-#define HAVE_GETOPT_H 1
-#endif
-
-/* Define if you have the <limits.h> header file.  */
-#define HAVE_LIMITS_H 1
-
-/* Define if you have the <process.h> header file.  */
-#ifndef __SALFORDC__
-#define HAVE_PROCESS_H 1
-#endif
-
-/* Define if you have the <signal.h> header file. */
-#define HAVE_SIGNAL_H 1
-
-/* Define if you have the <sys/time.h> header file */
-/* #define HAVE_SYS_TIME_H 1 */
-
-/* Define if you have the <time.h> header file.  */
-#define HAVE_TIME_H 1
-
-/* Define if you have the <unistd.h> header file.  */
-#if defined(__MINGW32__) || defined(__WATCOMC__) || defined(__LCC__) || \
-    defined(__POCC__)
-#define HAVE_UNISTD_H 1
-#endif
-
-/* Define if you have the <windows.h> header file.  */
-#define HAVE_WINDOWS_H 1
-
-/* Define if you have the <winsock.h> header file.  */
-#define HAVE_WINSOCK_H 1
-
-/* Define if you have the <winsock2.h> header file.  */
-#ifndef __SALFORDC__
-#define HAVE_WINSOCK2_H 1
-#endif
-
-/* Define if you have the <ws2tcpip.h> header file.  */
-#ifndef __SALFORDC__
-#define HAVE_WS2TCPIP_H 1
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                        OTHER HEADER INFO                         */
-/* ---------------------------------------------------------------- */
-
-/* Define if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T 1
-
-/* Define if you have the ANSI C header files.  */
-#define STDC_HEADERS 1
-
-/* Define if you can safely include both <sys/time.h> and <time.h>.  */
-/* #define TIME_WITH_SYS_TIME 1 */
-
-/* ---------------------------------------------------------------- */
-/*                             FUNCTIONS                            */
-/* ---------------------------------------------------------------- */
-
-/* Define if you have the closesocket function.  */
-#define HAVE_CLOSESOCKET 1
-
-/* Define if you have the gethostname function.  */
-#define HAVE_GETHOSTNAME 1
-
-/* Define if you have the ioctlsocket function. */
-#define HAVE_IOCTLSOCKET 1
-
-/* Define if you have a working ioctlsocket FIONBIO function. */
-#define HAVE_IOCTLSOCKET_FIONBIO 1
-
-/* Define if you have the strcasecmp function. */
-/* #define HAVE_STRCASECMP 1 */
-
-/* Define if you have the strdup function. */
-#define HAVE_STRDUP 1
-
-/* Define if you have the stricmp function. */
-#define HAVE_STRICMP 1
-
-/* Define if you have the strncasecmp function. */
-/* #define HAVE_STRNCASECMP 1 */
-
-/* Define if you have the strnicmp function. */
-#define HAVE_STRNICMP 1
-
-/* Define if you have the recv function. */
-#define HAVE_RECV 1
-
-/* Define to the type of arg 1 for recv. */
-#define RECV_TYPE_ARG1 SOCKET
-
-/* Define to the type of arg 2 for recv. */
-#define RECV_TYPE_ARG2 char *
-
-/* Define to the type of arg 3 for recv. */
-#define RECV_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for recv. */
-#define RECV_TYPE_ARG4 int
-
-/* Define to the function return type for recv. */
-#define RECV_TYPE_RETV int
-
-/* Define if you have the recvfrom function. */
-#define HAVE_RECVFROM 1
-
-/* Define to the type of arg 1 for recvfrom. */
-#define RECVFROM_TYPE_ARG1 SOCKET
-
-/* Define to the type pointed by arg 2 for recvfrom. */
-#define RECVFROM_TYPE_ARG2 char
-
-/* Define to the type of arg 3 for recvfrom. */
-#define RECVFROM_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for recvfrom. */
-#define RECVFROM_TYPE_ARG4 int
-
-/* Define to the type pointed by arg 5 for recvfrom. */
-#define RECVFROM_TYPE_ARG5 struct sockaddr
-
-/* Define to the type pointed by arg 6 for recvfrom. */
-#define RECVFROM_TYPE_ARG6 int
-
-/* Define to the function return type for recvfrom. */
-#define RECVFROM_TYPE_RETV int
-
-/* Define if you have the send function. */
-#define HAVE_SEND 1
-
-/* Define to the type of arg 1 for send. */
-#define SEND_TYPE_ARG1 SOCKET
-
-/* Define to the type qualifier of arg 2 for send. */
-#define SEND_QUAL_ARG2 const
-
-/* Define to the type of arg 2 for send. */
-#define SEND_TYPE_ARG2 char *
-
-/* Define to the type of arg 3 for send. */
-#define SEND_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for send. */
-#define SEND_TYPE_ARG4 int
-
-/* Define to the function return type for send. */
-#define SEND_TYPE_RETV int
-
-/* Specifics for the Watt-32 tcp/ip stack */
-#ifdef WATT32
-  #define SOCKET              int
-  #define NS_INADDRSZ         4
-  #define HAVE_ARPA_NAMESER_H 1
-  #define HAVE_ARPA_INET_H    1
-  #define HAVE_NETDB_H        1
-  #define HAVE_NETINET_IN_H   1
-  #define HAVE_SYS_SOCKET_H   1
-  #define HAVE_NETINET_TCP_H  1
-  #define HAVE_AF_INET6       1
-  #define HAVE_PF_INET6       1
-  #define HAVE_STRUCT_IN6_ADDR     1
-  #define HAVE_STRUCT_SOCKADDR_IN6 1
-  #undef HAVE_WINSOCK_H
-  #undef HAVE_WINSOCK2_H
-  #undef HAVE_WS2TCPIP_H
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                       TYPEDEF REPLACEMENTS                       */
-/* ---------------------------------------------------------------- */
-
-/* Define this if in_addr_t is not an available 'typedefed' type */
-#define in_addr_t unsigned long
-
-/* Define as the return type of signal handlers (int or void).  */
-#define RETSIGTYPE void
-
-/* Define ssize_t if it is not an available 'typedefed' type */
-#ifndef _SSIZE_T_DEFINED
-#  if (defined(__WATCOMC__) && (__WATCOMC__ >= 1240)) || \
-      defined(__POCC__) || \
-      defined(__MINGW32__)
-#  elif defined(_WIN64)
-#    define _SSIZE_T_DEFINED
-#    define ssize_t __int64
-#  else
-#    define _SSIZE_T_DEFINED
-#    define ssize_t int
-#  endif
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                            TYPE SIZES                            */
-/* ---------------------------------------------------------------- */
-
-/* The size of `int', as computed by sizeof. */
-#define SIZEOF_INT 4
-
-/* The size of `short', as computed by sizeof. */
-#define SIZEOF_SHORT 2
-
-/* ---------------------------------------------------------------- */
-/*                          STRUCT RELATED                          */
-/* ---------------------------------------------------------------- */
-
-/* Define this if you have struct addrinfo */
-#define HAVE_STRUCT_ADDRINFO 1
-
-/* Define this if you have struct sockaddr_storage */
-#ifndef __SALFORDC__
-#define HAVE_STRUCT_SOCKADDR_STORAGE 1
-#endif
-
-/* Define this if you have struct timeval */
-#define HAVE_STRUCT_TIMEVAL 1
-
-/* ---------------------------------------------------------------- */
-/*                        COMPILER SPECIFIC                         */
-/* ---------------------------------------------------------------- */
-
-/* Define to avoid VS2005 complaining about portable C functions */
-#if defined(_MSC_VER) && (_MSC_VER >= 1400)
-#define _CRT_SECURE_NO_DEPRECATE 1
-#define _CRT_NONSTDC_NO_DEPRECATE 1
-#endif
-
-/* Officially, Microsoft's Windows SDK versions 6.X do not support Windows
-   2000 as a supported build target. VS2008 default installations provide an
-   embedded Windows SDK v6.0A along with the claim that Windows 2000 is a
-   valid build target for VS2008. Popular belief is that binaries built using
-   Windows SDK versions 6.X and Windows 2000 as a build target are functional */
-#if defined(_MSC_VER) && (_MSC_VER >= 1500)
-#  define VS2008_MINIMUM_TARGET 0x0500
-#endif
-
-/* When no build target is specified VS2008 default build target is Windows
-   Vista, which leaves out even Winsows XP. If no build target has been given
-   for VS2008 we will target the minimum Officially supported build target,
-   which happens to be Windows XP. */
-#if defined(_MSC_VER) && (_MSC_VER >= 1500)
-#  define VS2008_DEFAULT_TARGET  0x0501
-#endif
-
-/* VS2008 default target settings and minimum build target check */
-#if defined(_MSC_VER) && (_MSC_VER >= 1500)
-#  ifndef _WIN32_WINNT
-#    define _WIN32_WINNT VS2008_DEFAULT_TARGET
-#  endif
-#  ifndef WINVER
-#    define WINVER VS2008_DEFAULT_TARGET
-#  endif
-#  if (_WIN32_WINNT < VS2008_MINIMUM_TARGET) || (WINVER < VS2008_MINIMUM_TARGET)
-#    error VS2008 does not support Windows build targets prior to Windows 2000
-#  endif
-#endif
-
-/* When no build target is specified Pelles C 5.00 and later default build
-   target is Windows Vista. We override default target to be Windows 2000. */
-#if defined(__POCC__) && (__POCC__ >= 500)
-#  ifndef _WIN32_WINNT
-#    define _WIN32_WINNT 0x0500
-#  endif
-#  ifndef WINVER
-#    define WINVER 0x0500
-#  endif
-#endif
-
-/* Availability of freeaddrinfo, getaddrinfo and getnameinfo functions is
-   quite convoluted, compiler dependent and even build target dependent. */
-#if defined(HAVE_WS2TCPIP_H)
-#  if defined(__POCC__)
-#    define HAVE_FREEADDRINFO 1
-#    define HAVE_GETADDRINFO  1
-#    define HAVE_GETNAMEINFO  1
-#  elif defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0501)
-#    define HAVE_FREEADDRINFO 1
-#    define HAVE_GETADDRINFO  1
-#    define HAVE_GETNAMEINFO  1
-#  elif defined(_MSC_VER) && (_MSC_VER >= 1200)
-#    define HAVE_FREEADDRINFO 1
-#    define HAVE_GETADDRINFO  1
-#    define HAVE_GETNAMEINFO  1
-#  endif
-#endif
-
-#if defined(__POCC__)
-#  ifndef _MSC_VER
-#    error Microsoft extensions /Ze compiler option is required
-#  endif
-#  ifndef __POCC__OLDNAMES
-#    error Compatibility names /Go compiler option is required
-#  endif
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                         IPV6 COMPATIBILITY                       */
-/* ---------------------------------------------------------------- */
-
-/* Define this if you have address family AF_INET6 */
-#ifdef HAVE_WINSOCK2_H
-#define HAVE_AF_INET6 1
-#endif
-
-/* Define this if you have protocol family PF_INET6 */
-#ifdef HAVE_WINSOCK2_H
-#define HAVE_PF_INET6 1
-#endif
-
-/* Define this if you have struct in6_addr */
-#ifdef HAVE_WS2TCPIP_H
-#define HAVE_STRUCT_IN6_ADDR 1
-#endif
-
-/* Define this if you have struct sockaddr_in6 */
-#ifdef HAVE_WS2TCPIP_H
-#define HAVE_STRUCT_SOCKADDR_IN6 1
-#endif
-
-/* Define this if you have sockaddr_in6 with scopeid */
-#ifdef HAVE_WS2TCPIP_H
-#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
-#endif
-
-
-#endif  /* __ARES_CONFIG_WIN32_H */
diff --git a/src/other/ares/config.guess b/src/other/ares/config.guess
deleted file mode 100755
index dc84c68..0000000
--- a/src/other/ares/config.guess
+++ /dev/null
@@ -1,1501 +0,0 @@
-#! /bin/sh
-# Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
-#   Free Software Foundation, Inc.
-
-timestamp='2009-11-20'
-
-# 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 2 of the License, 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
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner.  Please send patches (context
-# diff format) to <config-patches at gnu.org> and include a ChangeLog
-# entry.
-#
-# This script attempts to guess a canonical system name similar to
-# config.sub.  If it succeeds, it prints the system name on stdout, and
-# exits with 0.  Otherwise, it exits with 1.
-#
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION]
-
-Output the configuration name of the system \`$me' is run on.
-
-Operation modes:
-  -h, --help         print this help, then exit
-  -t, --time-stamp   print date of last modification, then exit
-  -v, --version      print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.guess ($timestamp)
-
-Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 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."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
-  case $1 in
-    --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit ;;
-    --version | -v )
-       echo "$version" ; exit ;;
-    --help | --h* | -h )
-       echo "$usage"; exit ;;
-    -- )     # Stop option processing
-       shift; break ;;
-    - )	# Use stdin as input.
-       break ;;
-    -* )
-       echo "$me: invalid option $1$help" >&2
-       exit 1 ;;
-    * )
-       break ;;
-  esac
-done
-
-if test $# != 0; then
-  echo "$me: too many arguments$help" >&2
-  exit 1
-fi
-
-trap 'exit 1' 1 2 15
-
-# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
-# compiler to aid in system detection is discouraged as it requires
-# temporary files to be created and, as you can see below, it is a
-# headache to deal with in a portable fashion.
-
-# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-# use `HOST_CC' if defined, but it is deprecated.
-
-# Portable tmp directory creation inspired by the Autoconf team.
-
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,)    echo "int x;" > $dummy.c ;
-	for c in cc gcc c89 c99 ; do
-	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
-	     CC_FOR_BUILD="$c"; break ;
-	  fi ;
-	done ;
-	if test x"$CC_FOR_BUILD" = x ; then
-	  CC_FOR_BUILD=no_compiler_found ;
-	fi
-	;;
- ,,*)   CC_FOR_BUILD=$CC ;;
- ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
-
-# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi at noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
-	PATH=$PATH:/.attbin ; export PATH
-fi
-
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-# Note: order is significant - the case branches are not exclusive.
-
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
-    *:NetBSD:*:*)
-	# NetBSD (nbsd) targets should (where applicable) match one or
-	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
-	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
-	# switched to ELF, *-*-netbsd* would select the old
-	# object file format.  This provides both forward
-	# compatibility and a consistent mechanism for selecting the
-	# object file format.
-	#
-	# Note: NetBSD doesn't particularly care about the vendor
-	# portion of the name.  We always set it to "unknown".
-	sysctl="sysctl -n hw.machine_arch"
-	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
-	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
-	case "${UNAME_MACHINE_ARCH}" in
-	    armeb) machine=armeb-unknown ;;
-	    arm*) machine=arm-unknown ;;
-	    sh3el) machine=shl-unknown ;;
-	    sh3eb) machine=sh-unknown ;;
-	    sh5el) machine=sh5le-unknown ;;
-	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
-	esac
-	# The Operating System including object format, if it has switched
-	# to ELF recently, or will in the future.
-	case "${UNAME_MACHINE_ARCH}" in
-	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
-		eval $set_cc_for_build
-		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-			| grep -q __ELF__
-		then
-		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
-		    # Return netbsd for either.  FIX?
-		    os=netbsd
-		else
-		    os=netbsdelf
-		fi
-		;;
-	    *)
-	        os=netbsd
-		;;
-	esac
-	# The OS release
-	# Debian GNU/NetBSD machines have a different userland, and
-	# thus, need a distinct triplet. However, they do not need
-	# kernel version information, so it can be replaced with a
-	# suitable tag, in the style of linux-gnu.
-	case "${UNAME_VERSION}" in
-	    Debian*)
-		release='-gnu'
-		;;
-	    *)
-		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-		;;
-	esac
-	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
-	# contains redundant information, the shorter form:
-	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-	echo "${machine}-${os}${release}"
-	exit ;;
-    *:OpenBSD:*:*)
-	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
-	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
-	exit ;;
-    *:ekkoBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
-	exit ;;
-    *:SolidBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
-	exit ;;
-    macppc:MirBSD:*:*)
-	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
-	exit ;;
-    *:MirBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
-	exit ;;
-    alpha:OSF1:*:*)
-	case $UNAME_RELEASE in
-	*4.0)
-		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
-		;;
-	*5.*)
-	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
-		;;
-	esac
-	# According to Compaq, /usr/sbin/psrinfo has been available on
-	# OSF/1 and Tru64 systems produced since 1995.  I hope that
-	# covers most systems running today.  This code pipes the CPU
-	# types through head -n 1, so we only detect the type of CPU 0.
-	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
-	case "$ALPHA_CPU_TYPE" in
-	    "EV4 (21064)")
-		UNAME_MACHINE="alpha" ;;
-	    "EV4.5 (21064)")
-		UNAME_MACHINE="alpha" ;;
-	    "LCA4 (21066/21068)")
-		UNAME_MACHINE="alpha" ;;
-	    "EV5 (21164)")
-		UNAME_MACHINE="alphaev5" ;;
-	    "EV5.6 (21164A)")
-		UNAME_MACHINE="alphaev56" ;;
-	    "EV5.6 (21164PC)")
-		UNAME_MACHINE="alphapca56" ;;
-	    "EV5.7 (21164PC)")
-		UNAME_MACHINE="alphapca57" ;;
-	    "EV6 (21264)")
-		UNAME_MACHINE="alphaev6" ;;
-	    "EV6.7 (21264A)")
-		UNAME_MACHINE="alphaev67" ;;
-	    "EV6.8CB (21264C)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.8AL (21264B)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.8CX (21264D)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.9A (21264/EV69A)")
-		UNAME_MACHINE="alphaev69" ;;
-	    "EV7 (21364)")
-		UNAME_MACHINE="alphaev7" ;;
-	    "EV7.9 (21364A)")
-		UNAME_MACHINE="alphaev79" ;;
-	esac
-	# A Pn.n version is a patched version.
-	# A Vn.n version is a released version.
-	# A Tn.n version is a released field test version.
-	# A Xn.n version is an unreleased experimental baselevel.
-	# 1.2 uses "1.2" for uname -r.
-	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-	exit ;;
-    Alpha\ *:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# Should we change UNAME_MACHINE based on the output of uname instead
-	# of the specific Alpha model?
-	echo alpha-pc-interix
-	exit ;;
-    21064:Windows_NT:50:3)
-	echo alpha-dec-winnt3.5
-	exit ;;
-    Amiga*:UNIX_System_V:4.0:*)
-	echo m68k-unknown-sysv4
-	exit ;;
-    *:[Aa]miga[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-amigaos
-	exit ;;
-    *:[Mm]orph[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-morphos
-	exit ;;
-    *:OS/390:*:*)
-	echo i370-ibm-openedition
-	exit ;;
-    *:z/VM:*:*)
-	echo s390-ibm-zvmoe
-	exit ;;
-    *:OS400:*:*)
-        echo powerpc-ibm-os400
-	exit ;;
-    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
-	echo arm-acorn-riscix${UNAME_RELEASE}
-	exit ;;
-    arm:riscos:*:*|arm:RISCOS:*:*)
-	echo arm-unknown-riscos
-	exit ;;
-    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
-	echo hppa1.1-hitachi-hiuxmpp
-	exit ;;
-    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
-	# akee at wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
-	if test "`(/bin/universe) 2>/dev/null`" = att ; then
-		echo pyramid-pyramid-sysv3
-	else
-		echo pyramid-pyramid-bsd
-	fi
-	exit ;;
-    NILE*:*:*:dcosx)
-	echo pyramid-pyramid-svr4
-	exit ;;
-    DRS?6000:unix:4.0:6*)
-	echo sparc-icl-nx6
-	exit ;;
-    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
-	case `/usr/bin/uname -p` in
-	    sparc) echo sparc-icl-nx7; exit ;;
-	esac ;;
-    s390x:SunOS:*:*)
-	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4H:SunOS:5.*:*)
-	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
-	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
-	echo i386-pc-auroraux${UNAME_RELEASE}
-	exit ;;
-    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
-	eval $set_cc_for_build
-	SUN_ARCH="i386"
-	# If there is a compiler, see if it is configured for 64-bit objects.
-	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
-	# This test works for both compilers.
-	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
-		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		grep IS_64BIT_ARCH >/dev/null
-	    then
-		SUN_ARCH="x86_64"
-	    fi
-	fi
-	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:6*:*)
-	# According to config.sub, this is the proper way to canonicalize
-	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
-	# it's likely to be more like Solaris than SunOS4.
-	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:*:*)
-	case "`/usr/bin/arch -k`" in
-	    Series*|S4*)
-		UNAME_RELEASE=`uname -v`
-		;;
-	esac
-	# Japanese Language versions have a version number like `4.1.3-JL'.
-	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
-	exit ;;
-    sun3*:SunOS:*:*)
-	echo m68k-sun-sunos${UNAME_RELEASE}
-	exit ;;
-    sun*:*:4.2BSD:*)
-	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
-	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
-	case "`/bin/arch`" in
-	    sun3)
-		echo m68k-sun-sunos${UNAME_RELEASE}
-		;;
-	    sun4)
-		echo sparc-sun-sunos${UNAME_RELEASE}
-		;;
-	esac
-	exit ;;
-    aushp:SunOS:*:*)
-	echo sparc-auspex-sunos${UNAME_RELEASE}
-	exit ;;
-    # The situation for MiNT is a little confusing.  The machine name
-    # can be virtually everything (everything which is not
-    # "atarist" or "atariste" at least should have a processor
-    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
-    # to the lowercase version "mint" (or "freemint").  Finally
-    # the system name "TOS" denotes a system which is actually not
-    # MiNT.  But MiNT is downward compatible to TOS, so this should
-    # be no problem.
-    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
-        echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
-    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
-        exit ;;
-    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
-        echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
-    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
-        echo m68k-milan-mint${UNAME_RELEASE}
-        exit ;;
-    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
-        echo m68k-hades-mint${UNAME_RELEASE}
-        exit ;;
-    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-        echo m68k-unknown-mint${UNAME_RELEASE}
-        exit ;;
-    m68k:machten:*:*)
-	echo m68k-apple-machten${UNAME_RELEASE}
-	exit ;;
-    powerpc:machten:*:*)
-	echo powerpc-apple-machten${UNAME_RELEASE}
-	exit ;;
-    RISC*:Mach:*:*)
-	echo mips-dec-mach_bsd4.3
-	exit ;;
-    RISC*:ULTRIX:*:*)
-	echo mips-dec-ultrix${UNAME_RELEASE}
-	exit ;;
-    VAX*:ULTRIX*:*:*)
-	echo vax-dec-ultrix${UNAME_RELEASE}
-	exit ;;
-    2020:CLIX:*:* | 2430:CLIX:*:*)
-	echo clipper-intergraph-clix${UNAME_RELEASE}
-	exit ;;
-    mips:*:*:UMIPS | mips:*:*:RISCos)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-#ifdef __cplusplus
-#include <stdio.h>  /* for printf() prototype */
-	int main (int argc, char *argv[]) {
-#else
-	int main (argc, argv) int argc; char *argv[]; {
-#endif
-	#if defined (host_mips) && defined (MIPSEB)
-	#if defined (SYSTYPE_SYSV)
-	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
-	#endif
-	#if defined (SYSTYPE_SVR4)
-	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
-	#endif
-	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
-	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
-	#endif
-	#endif
-	  exit (-1);
-	}
-EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c &&
-	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
-	  SYSTEM_NAME=`$dummy $dummyarg` &&
-	    { echo "$SYSTEM_NAME"; exit; }
-	echo mips-mips-riscos${UNAME_RELEASE}
-	exit ;;
-    Motorola:PowerMAX_OS:*:*)
-	echo powerpc-motorola-powermax
-	exit ;;
-    Motorola:*:4.3:PL8-*)
-	echo powerpc-harris-powermax
-	exit ;;
-    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
-	echo powerpc-harris-powermax
-	exit ;;
-    Night_Hawk:Power_UNIX:*:*)
-	echo powerpc-harris-powerunix
-	exit ;;
-    m88k:CX/UX:7*:*)
-	echo m88k-harris-cxux7
-	exit ;;
-    m88k:*:4*:R4*)
-	echo m88k-motorola-sysv4
-	exit ;;
-    m88k:*:3*:R3*)
-	echo m88k-motorola-sysv3
-	exit ;;
-    AViiON:dgux:*:*)
-        # DG/UX returns AViiON for all architectures
-        UNAME_PROCESSOR=`/usr/bin/uname -p`
-	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
-	then
-	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
-	       [ ${TARGET_BINARY_INTERFACE}x = x ]
-	    then
-		echo m88k-dg-dgux${UNAME_RELEASE}
-	    else
-		echo m88k-dg-dguxbcs${UNAME_RELEASE}
-	    fi
-	else
-	    echo i586-dg-dgux${UNAME_RELEASE}
-	fi
- 	exit ;;
-    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
-	echo m88k-dolphin-sysv3
-	exit ;;
-    M88*:*:R3*:*)
-	# Delta 88k system running SVR3
-	echo m88k-motorola-sysv3
-	exit ;;
-    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
-	echo m88k-tektronix-sysv3
-	exit ;;
-    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
-	echo m68k-tektronix-bsd
-	exit ;;
-    *:IRIX*:*:*)
-	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
-	exit ;;
-    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
-	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
-	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
-    i*86:AIX:*:*)
-	echo i386-ibm-aix
-	exit ;;
-    ia64:AIX:*:*)
-	if [ -x /usr/bin/oslevel ] ; then
-		IBM_REV=`/usr/bin/oslevel`
-	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-	fi
-	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
-	exit ;;
-    *:AIX:2:3)
-	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
-		eval $set_cc_for_build
-		sed 's/^		//' << EOF >$dummy.c
-		#include <sys/systemcfg.h>
-
-		main()
-			{
-			if (!__power_pc())
-				exit(1);
-			puts("powerpc-ibm-aix3.2.5");
-			exit(0);
-			}
-EOF
-		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
-		then
-			echo "$SYSTEM_NAME"
-		else
-			echo rs6000-ibm-aix3.2.5
-		fi
-	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
-		echo rs6000-ibm-aix3.2.4
-	else
-		echo rs6000-ibm-aix3.2
-	fi
-	exit ;;
-    *:AIX:*:[456])
-	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
-	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
-		IBM_ARCH=rs6000
-	else
-		IBM_ARCH=powerpc
-	fi
-	if [ -x /usr/bin/oslevel ] ; then
-		IBM_REV=`/usr/bin/oslevel`
-	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-	fi
-	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
-	exit ;;
-    *:AIX:*:*)
-	echo rs6000-ibm-aix
-	exit ;;
-    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
-	echo romp-ibm-bsd4.4
-	exit ;;
-    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
-	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
-	exit ;;                             # report: romp-ibm BSD 4.3
-    *:BOSX:*:*)
-	echo rs6000-bull-bosx
-	exit ;;
-    DPX/2?00:B.O.S.:*:*)
-	echo m68k-bull-sysv3
-	exit ;;
-    9000/[34]??:4.3bsd:1.*:*)
-	echo m68k-hp-bsd
-	exit ;;
-    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
-	echo m68k-hp-bsd4.4
-	exit ;;
-    9000/[34678]??:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	case "${UNAME_MACHINE}" in
-	    9000/31? )            HP_ARCH=m68000 ;;
-	    9000/[34]?? )         HP_ARCH=m68k ;;
-	    9000/[678][0-9][0-9])
-		if [ -x /usr/bin/getconf ]; then
-		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
-                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
-                    case "${sc_cpu_version}" in
-                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
-                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
-                      532)                      # CPU_PA_RISC2_0
-                        case "${sc_kernel_bits}" in
-                          32) HP_ARCH="hppa2.0n" ;;
-                          64) HP_ARCH="hppa2.0w" ;;
-			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
-                        esac ;;
-                    esac
-		fi
-		if [ "${HP_ARCH}" = "" ]; then
-		    eval $set_cc_for_build
-		    sed 's/^              //' << EOF >$dummy.c
-
-              #define _HPUX_SOURCE
-              #include <stdlib.h>
-              #include <unistd.h>
-
-              int main ()
-              {
-              #if defined(_SC_KERNEL_BITS)
-                  long bits = sysconf(_SC_KERNEL_BITS);
-              #endif
-                  long cpu  = sysconf (_SC_CPU_VERSION);
-
-                  switch (cpu)
-              	{
-              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
-              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
-              	case CPU_PA_RISC2_0:
-              #if defined(_SC_KERNEL_BITS)
-              	    switch (bits)
-              		{
-              		case 64: puts ("hppa2.0w"); break;
-              		case 32: puts ("hppa2.0n"); break;
-              		default: puts ("hppa2.0"); break;
-              		} break;
-              #else  /* !defined(_SC_KERNEL_BITS) */
-              	    puts ("hppa2.0"); break;
-              #endif
-              	default: puts ("hppa1.0"); break;
-              	}
-                  exit (0);
-              }
-EOF
-		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
-		    test -z "$HP_ARCH" && HP_ARCH=hppa
-		fi ;;
-	esac
-	if [ ${HP_ARCH} = "hppa2.0w" ]
-	then
-	    eval $set_cc_for_build
-
-	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
-	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
-	    # generating 64-bit code.  GNU and HP use different nomenclature:
-	    #
-	    # $ CC_FOR_BUILD=cc ./config.guess
-	    # => hppa2.0w-hp-hpux11.23
-	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
-	    # => hppa64-hp-hpux11.23
-
-	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
-		grep -q __LP64__
-	    then
-		HP_ARCH="hppa2.0w"
-	    else
-		HP_ARCH="hppa64"
-	    fi
-	fi
-	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
-	exit ;;
-    ia64:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	echo ia64-hp-hpux${HPUX_REV}
-	exit ;;
-    3050*:HI-UX:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#include <unistd.h>
-	int
-	main ()
-	{
-	  long cpu = sysconf (_SC_CPU_VERSION);
-	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
-	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
-	     results, however.  */
-	  if (CPU_IS_PA_RISC (cpu))
-	    {
-	      switch (cpu)
-		{
-		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
-		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
-		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
-		  default: puts ("hppa-hitachi-hiuxwe2"); break;
-		}
-	    }
-	  else if (CPU_IS_HP_MC68K (cpu))
-	    puts ("m68k-hitachi-hiuxwe2");
-	  else puts ("unknown-hitachi-hiuxwe2");
-	  exit (0);
-	}
-EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
-		{ echo "$SYSTEM_NAME"; exit; }
-	echo unknown-hitachi-hiuxwe2
-	exit ;;
-    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
-	echo hppa1.1-hp-bsd
-	exit ;;
-    9000/8??:4.3bsd:*:*)
-	echo hppa1.0-hp-bsd
-	exit ;;
-    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
-	echo hppa1.0-hp-mpeix
-	exit ;;
-    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
-	echo hppa1.1-hp-osf
-	exit ;;
-    hp8??:OSF1:*:*)
-	echo hppa1.0-hp-osf
-	exit ;;
-    i*86:OSF1:*:*)
-	if [ -x /usr/sbin/sysversion ] ; then
-	    echo ${UNAME_MACHINE}-unknown-osf1mk
-	else
-	    echo ${UNAME_MACHINE}-unknown-osf1
-	fi
-	exit ;;
-    parisc*:Lites*:*:*)
-	echo hppa1.1-hp-lites
-	exit ;;
-    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
-	echo c1-convex-bsd
-        exit ;;
-    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
-	if getsysinfo -f scalar_acc
-	then echo c32-convex-bsd
-	else echo c2-convex-bsd
-	fi
-        exit ;;
-    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
-	echo c34-convex-bsd
-        exit ;;
-    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
-	echo c38-convex-bsd
-        exit ;;
-    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
-	echo c4-convex-bsd
-        exit ;;
-    CRAY*Y-MP:*:*:*)
-	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*[A-Z]90:*:*:*)
-	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
-	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-	      -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*TS:*:*:*)
-	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*T3E:*:*:*)
-	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*SV1:*:*:*)
-	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    *:UNICOS/mp:*:*)
-	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
-	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
-        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-        exit ;;
-    5000:UNIX_System_V:4.*:*)
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
-        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-	exit ;;
-    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
-	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
-	exit ;;
-    sparc*:BSD/OS:*:*)
-	echo sparc-unknown-bsdi${UNAME_RELEASE}
-	exit ;;
-    *:BSD/OS:*:*)
-	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
-	exit ;;
-    *:FreeBSD:*:*)
-	case ${UNAME_MACHINE} in
-	    pc98)
-		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	    amd64)
-		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	    *)
-		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	esac
-	exit ;;
-    i*:CYGWIN*:*)
-	echo ${UNAME_MACHINE}-pc-cygwin
-	exit ;;
-    *:MINGW*:*)
-	echo ${UNAME_MACHINE}-pc-mingw32
-	exit ;;
-    i*:windows32*:*)
-    	# uname -m includes "-pc" on this system.
-    	echo ${UNAME_MACHINE}-mingw32
-	exit ;;
-    i*:PW*:*)
-	echo ${UNAME_MACHINE}-pc-pw32
-	exit ;;
-    *:Interix*:*)
-    	case ${UNAME_MACHINE} in
-	    x86)
-		echo i586-pc-interix${UNAME_RELEASE}
-		exit ;;
-	    authenticamd | genuineintel | EM64T)
-		echo x86_64-unknown-interix${UNAME_RELEASE}
-		exit ;;
-	    IA64)
-		echo ia64-unknown-interix${UNAME_RELEASE}
-		exit ;;
-	esac ;;
-    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
-	echo i${UNAME_MACHINE}-pc-mks
-	exit ;;
-    8664:Windows_NT:*)
-	echo x86_64-pc-mks
-	exit ;;
-    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
-	# UNAME_MACHINE based on the output of uname instead of i386?
-	echo i586-pc-interix
-	exit ;;
-    i*:UWIN*:*)
-	echo ${UNAME_MACHINE}-pc-uwin
-	exit ;;
-    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
-	echo x86_64-unknown-cygwin
-	exit ;;
-    p*:CYGWIN*:*)
-	echo powerpcle-unknown-cygwin
-	exit ;;
-    prep*:SunOS:5.*:*)
-	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    *:GNU:*:*)
-	# the GNU system
-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
-	exit ;;
-    *:GNU/*:*:*)
-	# other systems with GNU libc and userland
-	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
-	exit ;;
-    i*86:Minix:*:*)
-	echo ${UNAME_MACHINE}-pc-minix
-	exit ;;
-    alpha:Linux:*:*)
-	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-	  EV5)   UNAME_MACHINE=alphaev5 ;;
-	  EV56)  UNAME_MACHINE=alphaev56 ;;
-	  PCA56) UNAME_MACHINE=alphapca56 ;;
-	  PCA57) UNAME_MACHINE=alphapca56 ;;
-	  EV6)   UNAME_MACHINE=alphaev6 ;;
-	  EV67)  UNAME_MACHINE=alphaev67 ;;
-	  EV68*) UNAME_MACHINE=alphaev68 ;;
-        esac
-	objdump --private-headers /bin/sh | grep -q ld.so.1
-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
-	exit ;;
-    arm*:Linux:*:*)
-	eval $set_cc_for_build
-	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
-	    | grep -q __ARM_EABI__
-	then
-	    echo ${UNAME_MACHINE}-unknown-linux-gnu
-	else
-	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
-	fi
-	exit ;;
-    avr32*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    cris:Linux:*:*)
-	echo cris-axis-linux-gnu
-	exit ;;
-    crisv32:Linux:*:*)
-	echo crisv32-axis-linux-gnu
-	exit ;;
-    frv:Linux:*:*)
-    	echo frv-unknown-linux-gnu
-	exit ;;
-    i*86:Linux:*:*)
-	LIBC=gnu
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#ifdef __dietlibc__
-	LIBC=dietlibc
-	#endif
-EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
-	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
-	exit ;;
-    ia64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    m32r*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    m68*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    mips:Linux:*:* | mips64:Linux:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#undef CPU
-	#undef ${UNAME_MACHINE}
-	#undef ${UNAME_MACHINE}el
-	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=${UNAME_MACHINE}el
-	#else
-	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=${UNAME_MACHINE}
-	#else
-	CPU=
-	#endif
-	#endif
-EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-	;;
-    or32:Linux:*:*)
-	echo or32-unknown-linux-gnu
-	exit ;;
-    padre:Linux:*:*)
-	echo sparc-unknown-linux-gnu
-	exit ;;
-    parisc64:Linux:*:* | hppa64:Linux:*:*)
-	echo hppa64-unknown-linux-gnu
-	exit ;;
-    parisc:Linux:*:* | hppa:Linux:*:*)
-	# Look for CPU level
-	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
-	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
-	  *)    echo hppa-unknown-linux-gnu ;;
-	esac
-	exit ;;
-    ppc64:Linux:*:*)
-	echo powerpc64-unknown-linux-gnu
-	exit ;;
-    ppc:Linux:*:*)
-	echo powerpc-unknown-linux-gnu
-	exit ;;
-    s390:Linux:*:* | s390x:Linux:*:*)
-	echo ${UNAME_MACHINE}-ibm-linux
-	exit ;;
-    sh64*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    sh*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    sparc:Linux:*:* | sparc64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    vax:Linux:*:*)
-	echo ${UNAME_MACHINE}-dec-linux-gnu
-	exit ;;
-    x86_64:Linux:*:*)
-	echo x86_64-unknown-linux-gnu
-	exit ;;
-    xtensa*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    i*86:DYNIX/ptx:4*:*)
-	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
-	# earlier versions are messed up and put the nodename in both
-	# sysname and nodename.
-	echo i386-sequent-sysv4
-	exit ;;
-    i*86:UNIX_SV:4.2MP:2.*)
-        # Unixware is an offshoot of SVR4, but it has its own version
-        # number series starting with 2...
-        # I am not positive that other SVR4 systems won't match this,
-	# I just have to hope.  -- rms.
-        # Use sysv4.2uw... so that sysv4* matches it.
-	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
-	exit ;;
-    i*86:OS/2:*:*)
-	# If we were able to find `uname', then EMX Unix compatibility
-	# is probably installed.
-	echo ${UNAME_MACHINE}-pc-os2-emx
-	exit ;;
-    i*86:XTS-300:*:STOP)
-	echo ${UNAME_MACHINE}-unknown-stop
-	exit ;;
-    i*86:atheos:*:*)
-	echo ${UNAME_MACHINE}-unknown-atheos
-	exit ;;
-    i*86:syllable:*:*)
-	echo ${UNAME_MACHINE}-pc-syllable
-	exit ;;
-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
-	echo i386-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    i*86:*DOS:*:*)
-	echo ${UNAME_MACHINE}-pc-msdosdjgpp
-	exit ;;
-    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
-	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
-	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
-		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
-	else
-		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
-	fi
-	exit ;;
-    i*86:*:5:[678]*)
-    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
-	case `/bin/uname -X | grep "^Machine"` in
-	    *486*)	     UNAME_MACHINE=i486 ;;
-	    *Pentium)	     UNAME_MACHINE=i586 ;;
-	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
-	esac
-	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
-	exit ;;
-    i*86:*:3.2:*)
-	if test -f /usr/options/cb.name; then
-		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
-		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
-	elif /bin/uname -X 2>/dev/null >/dev/null ; then
-		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
-		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
-		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
-			&& UNAME_MACHINE=i586
-		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
-			&& UNAME_MACHINE=i686
-		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
-			&& UNAME_MACHINE=i686
-		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
-	else
-		echo ${UNAME_MACHINE}-pc-sysv32
-	fi
-	exit ;;
-    pc:*:*:*)
-	# Left here for compatibility:
-        # uname -m prints for DJGPP always 'pc', but it prints nothing about
-        # the processor, so we play safe by assuming i586.
-	# Note: whatever this is, it MUST be the same as what config.sub
-	# prints for the "djgpp" host, or else GDB configury will decide that
-	# this is a cross-build.
-	echo i586-pc-msdosdjgpp
-        exit ;;
-    Intel:Mach:3*:*)
-	echo i386-pc-mach3
-	exit ;;
-    paragon:*:*:*)
-	echo i860-intel-osf1
-	exit ;;
-    i860:*:4.*:*) # i860-SVR4
-	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
-	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
-	else # Add other i860-SVR4 vendors below as they are discovered.
-	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
-	fi
-	exit ;;
-    mini*:CTIX:SYS*5:*)
-	# "miniframe"
-	echo m68010-convergent-sysv
-	exit ;;
-    mc68k:UNIX:SYSTEM5:3.51m)
-	echo m68k-convergent-sysv
-	exit ;;
-    M680?0:D-NIX:5.3:*)
-	echo m68k-diab-dnix
-	exit ;;
-    M68*:*:R3V[5678]*:*)
-	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
-    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
-	OS_REL=''
-	test -r /etc/.relid \
-	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
-	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
-    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
-        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-          && { echo i486-ncr-sysv4; exit; } ;;
-    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
-	OS_REL='.3'
-	test -r /etc/.relid \
-	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
-	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
-    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
-	echo m68k-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    mc68030:UNIX_System_V:4.*:*)
-	echo m68k-atari-sysv4
-	exit ;;
-    TSUNAMI:LynxOS:2.*:*)
-	echo sparc-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    rs6000:LynxOS:2.*:*)
-	echo rs6000-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
-	echo powerpc-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    SM[BE]S:UNIX_SV:*:*)
-	echo mips-dde-sysv${UNAME_RELEASE}
-	exit ;;
-    RM*:ReliantUNIX-*:*:*)
-	echo mips-sni-sysv4
-	exit ;;
-    RM*:SINIX-*:*:*)
-	echo mips-sni-sysv4
-	exit ;;
-    *:SINIX-*:*:*)
-	if uname -p 2>/dev/null >/dev/null ; then
-		UNAME_MACHINE=`(uname -p) 2>/dev/null`
-		echo ${UNAME_MACHINE}-sni-sysv4
-	else
-		echo ns32k-sni-sysv
-	fi
-	exit ;;
-    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-                      # says <Richard.M.Bartel at ccMail.Census.GOV>
-        echo i586-unisys-sysv4
-        exit ;;
-    *:UNIX_System_V:4*:FTX*)
-	# From Gerald Hewes <hewes at openmarket.com>.
-	# How about differentiating between stratus architectures? -djm
-	echo hppa1.1-stratus-sysv4
-	exit ;;
-    *:*:*:FTX*)
-	# From seanf at swdc.stratus.com.
-	echo i860-stratus-sysv4
-	exit ;;
-    i*86:VOS:*:*)
-	# From Paul.Green at stratus.com.
-	echo ${UNAME_MACHINE}-stratus-vos
-	exit ;;
-    *:VOS:*:*)
-	# From Paul.Green at stratus.com.
-	echo hppa1.1-stratus-vos
-	exit ;;
-    mc68*:A/UX:*:*)
-	echo m68k-apple-aux${UNAME_RELEASE}
-	exit ;;
-    news*:NEWS-OS:6*:*)
-	echo mips-sony-newsos6
-	exit ;;
-    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
-	if [ -d /usr/nec ]; then
-	        echo mips-nec-sysv${UNAME_RELEASE}
-	else
-	        echo mips-unknown-sysv${UNAME_RELEASE}
-	fi
-        exit ;;
-    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
-	echo powerpc-be-beos
-	exit ;;
-    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
-	echo powerpc-apple-beos
-	exit ;;
-    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
-	echo i586-pc-beos
-	exit ;;
-    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
-	echo i586-pc-haiku
-	exit ;;
-    SX-4:SUPER-UX:*:*)
-	echo sx4-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-5:SUPER-UX:*:*)
-	echo sx5-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-6:SUPER-UX:*:*)
-	echo sx6-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-7:SUPER-UX:*:*)
-	echo sx7-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-8:SUPER-UX:*:*)
-	echo sx8-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-8R:SUPER-UX:*:*)
-	echo sx8r-nec-superux${UNAME_RELEASE}
-	exit ;;
-    Power*:Rhapsody:*:*)
-	echo powerpc-apple-rhapsody${UNAME_RELEASE}
-	exit ;;
-    *:Rhapsody:*:*)
-	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
-	exit ;;
-    *:Darwin:*:*)
-	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-	case $UNAME_PROCESSOR in
-	    i386)
-		eval $set_cc_for_build
-		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
-		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		      grep IS_64BIT_ARCH >/dev/null
-		  then
-		      UNAME_PROCESSOR="x86_64"
-		  fi
-		fi ;;
-	    unknown) UNAME_PROCESSOR=powerpc ;;
-	esac
-	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
-	exit ;;
-    *:procnto*:*:* | *:QNX:[0123456789]*:*)
-	UNAME_PROCESSOR=`uname -p`
-	if test "$UNAME_PROCESSOR" = "x86"; then
-		UNAME_PROCESSOR=i386
-		UNAME_MACHINE=pc
-	fi
-	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
-	exit ;;
-    *:QNX:*:4*)
-	echo i386-pc-qnx
-	exit ;;
-    NSE-?:NONSTOP_KERNEL:*:*)
-	echo nse-tandem-nsk${UNAME_RELEASE}
-	exit ;;
-    NSR-?:NONSTOP_KERNEL:*:*)
-	echo nsr-tandem-nsk${UNAME_RELEASE}
-	exit ;;
-    *:NonStop-UX:*:*)
-	echo mips-compaq-nonstopux
-	exit ;;
-    BS2000:POSIX*:*:*)
-	echo bs2000-siemens-sysv
-	exit ;;
-    DS/*:UNIX_System_V:*:*)
-	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
-	exit ;;
-    *:Plan9:*:*)
-	# "uname -m" is not consistent, so use $cputype instead. 386
-	# is converted to i386 for consistency with other x86
-	# operating systems.
-	if test "$cputype" = "386"; then
-	    UNAME_MACHINE=i386
-	else
-	    UNAME_MACHINE="$cputype"
-	fi
-	echo ${UNAME_MACHINE}-unknown-plan9
-	exit ;;
-    *:TOPS-10:*:*)
-	echo pdp10-unknown-tops10
-	exit ;;
-    *:TENEX:*:*)
-	echo pdp10-unknown-tenex
-	exit ;;
-    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
-	echo pdp10-dec-tops20
-	exit ;;
-    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
-	echo pdp10-xkl-tops20
-	exit ;;
-    *:TOPS-20:*:*)
-	echo pdp10-unknown-tops20
-	exit ;;
-    *:ITS:*:*)
-	echo pdp10-unknown-its
-	exit ;;
-    SEI:*:*:SEIUX)
-        echo mips-sei-seiux${UNAME_RELEASE}
-	exit ;;
-    *:DragonFly:*:*)
-	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-	exit ;;
-    *:*VMS:*:*)
-    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
-	case "${UNAME_MACHINE}" in
-	    A*) echo alpha-dec-vms ; exit ;;
-	    I*) echo ia64-dec-vms ; exit ;;
-	    V*) echo vax-dec-vms ; exit ;;
-	esac ;;
-    *:XENIX:*:SysV)
-	echo i386-pc-xenix
-	exit ;;
-    i*86:skyos:*:*)
-	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
-	exit ;;
-    i*86:rdos:*:*)
-	echo ${UNAME_MACHINE}-pc-rdos
-	exit ;;
-    i*86:AROS:*:*)
-	echo ${UNAME_MACHINE}-pc-aros
-	exit ;;
-esac
-
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
-  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
-     I don't know....  */
-  printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
-  printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
-          "4"
-#else
-	  ""
-#endif
-         ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
-  printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
-  printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
-  int version;
-  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
-  if (version < 4)
-    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
-  else
-    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
-  exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
-  printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
-  printf ("ns32k-encore-mach\n"); exit (0);
-#else
-  printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
-  printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
-  printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
-  printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
-    struct utsname un;
-
-    uname(&un);
-
-    if (strncmp(un.version, "V2", 2) == 0) {
-	printf ("i386-sequent-ptx2\n"); exit (0);
-    }
-    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
-	printf ("i386-sequent-ptx1\n"); exit (0);
-    }
-    printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-#  include <sys/param.h>
-#  if defined (BSD)
-#   if BSD == 43
-      printf ("vax-dec-bsd4.3\n"); exit (0);
-#   else
-#    if BSD == 199006
-      printf ("vax-dec-bsd4.3reno\n"); exit (0);
-#    else
-      printf ("vax-dec-bsd\n"); exit (0);
-#    endif
-#   endif
-#  else
-    printf ("vax-dec-bsd\n"); exit (0);
-#  endif
-# else
-    printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
-  printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
-  exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
-	{ echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
-    case `getsysinfo -f cpu_type` in
-    c1*)
-	echo c1-convex-bsd
-	exit ;;
-    c2*)
-	if getsysinfo -f scalar_acc
-	then echo c32-convex-bsd
-	else echo c2-convex-bsd
-	fi
-	exit ;;
-    c34*)
-	echo c34-convex-bsd
-	exit ;;
-    c38*)
-	echo c38-convex-bsd
-	exit ;;
-    c4*)
-	echo c4-convex-bsd
-	exit ;;
-    esac
-fi
-
-cat >&2 <<EOF
-$0: unable to guess system type
-
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
-
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-and
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patches at gnu.org> in order to provide the needed
-information to handle your system.
-
-config.guess timestamp = $timestamp
-
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
-
-hostinfo               = `(hostinfo) 2>/dev/null`
-/bin/universe          = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch              = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM  = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
-EOF
-
-exit 1
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/src/other/ares/config.sub b/src/other/ares/config.sub
deleted file mode 100755
index 2a55a50..0000000
--- a/src/other/ares/config.sub
+++ /dev/null
@@ -1,1705 +0,0 @@
-#! /bin/sh
-# Configuration validation subroutine script.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
-#   Free Software Foundation, Inc.
-
-timestamp='2009-11-20'
-
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine.  It does not imply ALL GNU software can.
-#
-# 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 2 of the License, 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 General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Please send patches to <config-patches at gnu.org>.  Submit a context
-# diff and a properly formatted GNU ChangeLog entry.
-#
-# Configuration subroutine to validate and canonicalize a configuration type.
-# Supply the specified configuration type as an argument.
-# If it is invalid, we print an error message on stderr and exit with code 1.
-# Otherwise, we print the canonical config type on stdout and succeed.
-
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-# This file is supposed to be the same for all GNU packages
-# and recognize all the CPU types, system types and aliases
-# that are meaningful with *any* GNU software.
-# Each package is responsible for reporting which valid configurations
-# it does not support.  The user should be able to distinguish
-# a failure to support a valid configuration from a meaningless
-# configuration.
-
-# The goal of this file is to map all the various variations of a given
-# machine specification into a single specification in the form:
-#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
-# or in some cases, the newer four-part form:
-#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
-# It is wrong to echo any other type of specification.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
-       $0 [OPTION] ALIAS
-
-Canonicalize a configuration name.
-
-Operation modes:
-  -h, --help         print this help, then exit
-  -t, --time-stamp   print date of last modification, then exit
-  -v, --version      print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.sub ($timestamp)
-
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 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."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
-  case $1 in
-    --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit ;;
-    --version | -v )
-       echo "$version" ; exit ;;
-    --help | --h* | -h )
-       echo "$usage"; exit ;;
-    -- )     # Stop option processing
-       shift; break ;;
-    - )	# Use stdin as input.
-       break ;;
-    -* )
-       echo "$me: invalid option $1$help"
-       exit 1 ;;
-
-    *local*)
-       # First pass through any local machine types.
-       echo $1
-       exit ;;
-
-    * )
-       break ;;
-  esac
-done
-
-case $# in
- 0) echo "$me: missing argument$help" >&2
-    exit 1;;
- 1) ;;
- *) echo "$me: too many arguments$help" >&2
-    exit 1;;
-esac
-
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
-  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
-  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
-  kopensolaris*-gnu* | \
-  storm-chaos* | os2-emx* | rtmk-nova*)
-    os=-$maybe_os
-    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
-    ;;
-  *)
-    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
-    if [ $basic_machine != $1 ]
-    then os=`echo $1 | sed 's/.*-/-/'`
-    else os=; fi
-    ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work.  We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
-	-sun*os*)
-		# Prevent following clause from handling this invalid input.
-		;;
-	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
-	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
-	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
-	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-	-apple | -axis | -knuth | -cray | -microblaze)
-		os=
-		basic_machine=$1
-		;;
-        -bluegene*)
-	        os=-cnk
-		;;
-	-sim | -cisco | -oki | -wec | -winbond)
-		os=
-		basic_machine=$1
-		;;
-	-scout)
-		;;
-	-wrs)
-		os=-vxworks
-		basic_machine=$1
-		;;
-	-chorusos*)
-		os=-chorusos
-		basic_machine=$1
-		;;
- 	-chorusrdb)
- 		os=-chorusrdb
-		basic_machine=$1
- 		;;
-	-hiux*)
-		os=-hiuxwe2
-		;;
-	-sco6)
-		os=-sco5v6
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco5)
-		os=-sco3.2v5
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco4)
-		os=-sco3.2v4
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco3.2.[4-9]*)
-		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco3.2v[4-9]*)
-		# Don't forget version if it is 3.2v4 or newer.
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco5v6*)
-		# Don't forget version if it is 3.2v4 or newer.
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco*)
-		os=-sco3.2v2
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-udk*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-isc)
-		os=-isc2.2
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-clix*)
-		basic_machine=clipper-intergraph
-		;;
-	-isc*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-lynx*)
-		os=-lynxos
-		;;
-	-ptx*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
-		;;
-	-windowsnt*)
-		os=`echo $os | sed -e 's/windowsnt/winnt/'`
-		;;
-	-psos*)
-		os=-psos
-		;;
-	-mint | -mint[0-9]*)
-		basic_machine=m68k-atari
-		os=-mint
-		;;
-esac
-
-# Decode aliases for certain CPU-COMPANY combinations.
-case $basic_machine in
-	# Recognize the basic CPU types without company name.
-	# Some are omitted here because they have special meanings below.
-	1750a | 580 \
-	| a29k \
-	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
-	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
-	| am33_2.0 \
-	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
-	| bfin \
-	| c4x | clipper \
-	| d10v | d30v | dlx | dsp16xx \
-	| fido | fr30 | frv \
-	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
-	| i370 | i860 | i960 | ia64 \
-	| ip2k | iq2000 \
-	| lm32 \
-	| m32c | m32r | m32rle | m68000 | m68k | m88k \
-	| maxq | mb | microblaze | mcore | mep | metag \
-	| mips | mipsbe | mipseb | mipsel | mipsle \
-	| mips16 \
-	| mips64 | mips64el \
-	| mips64octeon | mips64octeonel \
-	| mips64orion | mips64orionel \
-	| mips64r5900 | mips64r5900el \
-	| mips64vr | mips64vrel \
-	| mips64vr4100 | mips64vr4100el \
-	| mips64vr4300 | mips64vr4300el \
-	| mips64vr5000 | mips64vr5000el \
-	| mips64vr5900 | mips64vr5900el \
-	| mipsisa32 | mipsisa32el \
-	| mipsisa32r2 | mipsisa32r2el \
-	| mipsisa64 | mipsisa64el \
-	| mipsisa64r2 | mipsisa64r2el \
-	| mipsisa64sb1 | mipsisa64sb1el \
-	| mipsisa64sr71k | mipsisa64sr71kel \
-	| mipstx39 | mipstx39el \
-	| mn10200 | mn10300 \
-	| moxie \
-	| mt \
-	| msp430 \
-	| nios | nios2 \
-	| ns16k | ns32k \
-	| or32 \
-	| pdp10 | pdp11 | pj | pjl \
-	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
-	| pyramid \
-	| rx \
-	| score \
-	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
-	| sh64 | sh64le \
-	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
-	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
-	| spu | strongarm \
-	| tahoe | thumb | tic4x | tic80 | tron \
-	| ubicom32 \
-	| v850 | v850e \
-	| we32k \
-	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
-	| z8k | z80)
-		basic_machine=$basic_machine-unknown
-		;;
-	m6811 | m68hc11 | m6812 | m68hc12 | picochip)
-		# Motorola 68HC11/12.
-		basic_machine=$basic_machine-unknown
-		os=-none
-		;;
-	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
-		;;
-	ms1)
-		basic_machine=mt-unknown
-		;;
-
-	# We use `pc' rather than `unknown'
-	# because (1) that's what they normally are, and
-	# (2) the word "unknown" tends to confuse beginning users.
-	i*86 | x86_64)
-	  basic_machine=$basic_machine-pc
-	  ;;
-	# Object if more than one company name word.
-	*-*-*)
-		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-		exit 1
-		;;
-	# Recognize the basic CPU types with company name.
-	580-* \
-	| a29k-* \
-	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
-	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
-	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
-	| avr-* | avr32-* \
-	| bfin-* | bs2000-* \
-	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
-	| clipper-* | craynv-* | cydra-* \
-	| d10v-* | d30v-* | dlx-* \
-	| elxsi-* \
-	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
-	| h8300-* | h8500-* \
-	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
-	| i*86-* | i860-* | i960-* | ia64-* \
-	| ip2k-* | iq2000-* \
-	| lm32-* \
-	| m32c-* | m32r-* | m32rle-* \
-	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
-	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
-	| mips16-* \
-	| mips64-* | mips64el-* \
-	| mips64octeon-* | mips64octeonel-* \
-	| mips64orion-* | mips64orionel-* \
-	| mips64r5900-* | mips64r5900el-* \
-	| mips64vr-* | mips64vrel-* \
-	| mips64vr4100-* | mips64vr4100el-* \
-	| mips64vr4300-* | mips64vr4300el-* \
-	| mips64vr5000-* | mips64vr5000el-* \
-	| mips64vr5900-* | mips64vr5900el-* \
-	| mipsisa32-* | mipsisa32el-* \
-	| mipsisa32r2-* | mipsisa32r2el-* \
-	| mipsisa64-* | mipsisa64el-* \
-	| mipsisa64r2-* | mipsisa64r2el-* \
-	| mipsisa64sb1-* | mipsisa64sb1el-* \
-	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
-	| mipstx39-* | mipstx39el-* \
-	| mmix-* \
-	| mt-* \
-	| msp430-* \
-	| nios-* | nios2-* \
-	| none-* | np1-* | ns16k-* | ns32k-* \
-	| orion-* \
-	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
-	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
-	| pyramid-* \
-	| romp-* | rs6000-* | rx-* \
-	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
-	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
-	| sparclite-* \
-	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
-	| tahoe-* | thumb-* \
-	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
-	| tron-* \
-	| ubicom32-* \
-	| v850-* | v850e-* | vax-* \
-	| we32k-* \
-	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
-	| xstormy16-* | xtensa*-* \
-	| ymp-* \
-	| z8k-* | z80-*)
-		;;
-	# Recognize the basic CPU types without company name, with glob match.
-	xtensa*)
-		basic_machine=$basic_machine-unknown
-		;;
-	# Recognize the various machine names and aliases which stand
-	# for a CPU type and a company and sometimes even an OS.
-	386bsd)
-		basic_machine=i386-unknown
-		os=-bsd
-		;;
-	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
-		basic_machine=m68000-att
-		;;
-	3b*)
-		basic_machine=we32k-att
-		;;
-	a29khif)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-    	abacus)
-		basic_machine=abacus-unknown
-		;;
-	adobe68k)
-		basic_machine=m68010-adobe
-		os=-scout
-		;;
-	alliant | fx80)
-		basic_machine=fx80-alliant
-		;;
-	altos | altos3068)
-		basic_machine=m68k-altos
-		;;
-	am29k)
-		basic_machine=a29k-none
-		os=-bsd
-		;;
-	amd64)
-		basic_machine=x86_64-pc
-		;;
-	amd64-*)
-		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	amdahl)
-		basic_machine=580-amdahl
-		os=-sysv
-		;;
-	amiga | amiga-*)
-		basic_machine=m68k-unknown
-		;;
-	amigaos | amigados)
-		basic_machine=m68k-unknown
-		os=-amigaos
-		;;
-	amigaunix | amix)
-		basic_machine=m68k-unknown
-		os=-sysv4
-		;;
-	apollo68)
-		basic_machine=m68k-apollo
-		os=-sysv
-		;;
-	apollo68bsd)
-		basic_machine=m68k-apollo
-		os=-bsd
-		;;
-	aros)
-		basic_machine=i386-pc
-		os=-aros
-		;;
-	aux)
-		basic_machine=m68k-apple
-		os=-aux
-		;;
-	balance)
-		basic_machine=ns32k-sequent
-		os=-dynix
-		;;
-	blackfin)
-		basic_machine=bfin-unknown
-		os=-linux
-		;;
-	blackfin-*)
-		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
-	bluegene*)
-		basic_machine=powerpc-ibm
-		os=-cnk
-		;;
-	c90)
-		basic_machine=c90-cray
-		os=-unicos
-		;;
-        cegcc)
-		basic_machine=arm-unknown
-		os=-cegcc
-		;;
-	convex-c1)
-		basic_machine=c1-convex
-		os=-bsd
-		;;
-	convex-c2)
-		basic_machine=c2-convex
-		os=-bsd
-		;;
-	convex-c32)
-		basic_machine=c32-convex
-		os=-bsd
-		;;
-	convex-c34)
-		basic_machine=c34-convex
-		os=-bsd
-		;;
-	convex-c38)
-		basic_machine=c38-convex
-		os=-bsd
-		;;
-	cray | j90)
-		basic_machine=j90-cray
-		os=-unicos
-		;;
-	craynv)
-		basic_machine=craynv-cray
-		os=-unicosmp
-		;;
-	cr16)
-		basic_machine=cr16-unknown
-		os=-elf
-		;;
-	crds | unos)
-		basic_machine=m68k-crds
-		;;
-	crisv32 | crisv32-* | etraxfs*)
-		basic_machine=crisv32-axis
-		;;
-	cris | cris-* | etrax*)
-		basic_machine=cris-axis
-		;;
-	crx)
-		basic_machine=crx-unknown
-		os=-elf
-		;;
-	da30 | da30-*)
-		basic_machine=m68k-da30
-		;;
-	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
-		basic_machine=mips-dec
-		;;
-	decsystem10* | dec10*)
-		basic_machine=pdp10-dec
-		os=-tops10
-		;;
-	decsystem20* | dec20*)
-		basic_machine=pdp10-dec
-		os=-tops20
-		;;
-	delta | 3300 | motorola-3300 | motorola-delta \
-	      | 3300-motorola | delta-motorola)
-		basic_machine=m68k-motorola
-		;;
-	delta88)
-		basic_machine=m88k-motorola
-		os=-sysv3
-		;;
-	dicos)
-		basic_machine=i686-pc
-		os=-dicos
-		;;
-	djgpp)
-		basic_machine=i586-pc
-		os=-msdosdjgpp
-		;;
-	dpx20 | dpx20-*)
-		basic_machine=rs6000-bull
-		os=-bosx
-		;;
-	dpx2* | dpx2*-bull)
-		basic_machine=m68k-bull
-		os=-sysv3
-		;;
-	ebmon29k)
-		basic_machine=a29k-amd
-		os=-ebmon
-		;;
-	elxsi)
-		basic_machine=elxsi-elxsi
-		os=-bsd
-		;;
-	encore | umax | mmax)
-		basic_machine=ns32k-encore
-		;;
-	es1800 | OSE68k | ose68k | ose | OSE)
-		basic_machine=m68k-ericsson
-		os=-ose
-		;;
-	fx2800)
-		basic_machine=i860-alliant
-		;;
-	genix)
-		basic_machine=ns32k-ns
-		;;
-	gmicro)
-		basic_machine=tron-gmicro
-		os=-sysv
-		;;
-	go32)
-		basic_machine=i386-pc
-		os=-go32
-		;;
-	h3050r* | hiux*)
-		basic_machine=hppa1.1-hitachi
-		os=-hiuxwe2
-		;;
-	h8300hms)
-		basic_machine=h8300-hitachi
-		os=-hms
-		;;
-	h8300xray)
-		basic_machine=h8300-hitachi
-		os=-xray
-		;;
-	h8500hms)
-		basic_machine=h8500-hitachi
-		os=-hms
-		;;
-	harris)
-		basic_machine=m88k-harris
-		os=-sysv3
-		;;
-	hp300-*)
-		basic_machine=m68k-hp
-		;;
-	hp300bsd)
-		basic_machine=m68k-hp
-		os=-bsd
-		;;
-	hp300hpux)
-		basic_machine=m68k-hp
-		os=-hpux
-		;;
-	hp3k9[0-9][0-9] | hp9[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hp9k2[0-9][0-9] | hp9k31[0-9])
-		basic_machine=m68000-hp
-		;;
-	hp9k3[2-9][0-9])
-		basic_machine=m68k-hp
-		;;
-	hp9k6[0-9][0-9] | hp6[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hp9k7[0-79][0-9] | hp7[0-79][0-9])
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k78[0-9] | hp78[0-9])
-		# FIXME: really hppa2.0-hp
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
-		# FIXME: really hppa2.0-hp
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k8[0-9][13679] | hp8[0-9][13679])
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k8[0-9][0-9] | hp8[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hppa-next)
-		os=-nextstep3
-		;;
-	hppaosf)
-		basic_machine=hppa1.1-hp
-		os=-osf
-		;;
-	hppro)
-		basic_machine=hppa1.1-hp
-		os=-proelf
-		;;
-	i370-ibm* | ibm*)
-		basic_machine=i370-ibm
-		;;
-# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
-	i*86v32)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv32
-		;;
-	i*86v4*)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv4
-		;;
-	i*86v)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv
-		;;
-	i*86sol2)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-solaris2
-		;;
-	i386mach)
-		basic_machine=i386-mach
-		os=-mach
-		;;
-	i386-vsta | vsta)
-		basic_machine=i386-unknown
-		os=-vsta
-		;;
-	iris | iris4d)
-		basic_machine=mips-sgi
-		case $os in
-		    -irix*)
-			;;
-		    *)
-			os=-irix4
-			;;
-		esac
-		;;
-	isi68 | isi)
-		basic_machine=m68k-isi
-		os=-sysv
-		;;
-	m68knommu)
-		basic_machine=m68k-unknown
-		os=-linux
-		;;
-	m68knommu-*)
-		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
-	m88k-omron*)
-		basic_machine=m88k-omron
-		;;
-	magnum | m3230)
-		basic_machine=mips-mips
-		os=-sysv
-		;;
-	merlin)
-		basic_machine=ns32k-utek
-		os=-sysv
-		;;
-        microblaze)
-		basic_machine=microblaze-xilinx
-		;;
-	mingw32)
-		basic_machine=i386-pc
-		os=-mingw32
-		;;
-	mingw32ce)
-		basic_machine=arm-unknown
-		os=-mingw32ce
-		;;
-	miniframe)
-		basic_machine=m68000-convergent
-		;;
-	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
-		basic_machine=m68k-atari
-		os=-mint
-		;;
-	mips3*-*)
-		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
-		;;
-	mips3*)
-		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
-		;;
-	monitor)
-		basic_machine=m68k-rom68k
-		os=-coff
-		;;
-	morphos)
-		basic_machine=powerpc-unknown
-		os=-morphos
-		;;
-	msdos)
-		basic_machine=i386-pc
-		os=-msdos
-		;;
-	ms1-*)
-		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
-		;;
-	mvs)
-		basic_machine=i370-ibm
-		os=-mvs
-		;;
-	ncr3000)
-		basic_machine=i486-ncr
-		os=-sysv4
-		;;
-	netbsd386)
-		basic_machine=i386-unknown
-		os=-netbsd
-		;;
-	netwinder)
-		basic_machine=armv4l-rebel
-		os=-linux
-		;;
-	news | news700 | news800 | news900)
-		basic_machine=m68k-sony
-		os=-newsos
-		;;
-	news1000)
-		basic_machine=m68030-sony
-		os=-newsos
-		;;
-	news-3600 | risc-news)
-		basic_machine=mips-sony
-		os=-newsos
-		;;
-	necv70)
-		basic_machine=v70-nec
-		os=-sysv
-		;;
-	next | m*-next )
-		basic_machine=m68k-next
-		case $os in
-		    -nextstep* )
-			;;
-		    -ns2*)
-		      os=-nextstep2
-			;;
-		    *)
-		      os=-nextstep3
-			;;
-		esac
-		;;
-	nh3000)
-		basic_machine=m68k-harris
-		os=-cxux
-		;;
-	nh[45]000)
-		basic_machine=m88k-harris
-		os=-cxux
-		;;
-	nindy960)
-		basic_machine=i960-intel
-		os=-nindy
-		;;
-	mon960)
-		basic_machine=i960-intel
-		os=-mon960
-		;;
-	nonstopux)
-		basic_machine=mips-compaq
-		os=-nonstopux
-		;;
-	np1)
-		basic_machine=np1-gould
-		;;
-	nsr-tandem)
-		basic_machine=nsr-tandem
-		;;
-	op50n-* | op60c-*)
-		basic_machine=hppa1.1-oki
-		os=-proelf
-		;;
-	openrisc | openrisc-*)
-		basic_machine=or32-unknown
-		;;
-	os400)
-		basic_machine=powerpc-ibm
-		os=-os400
-		;;
-	OSE68000 | ose68000)
-		basic_machine=m68000-ericsson
-		os=-ose
-		;;
-	os68k)
-		basic_machine=m68k-none
-		os=-os68k
-		;;
-	pa-hitachi)
-		basic_machine=hppa1.1-hitachi
-		os=-hiuxwe2
-		;;
-	paragon)
-		basic_machine=i860-intel
-		os=-osf
-		;;
-	parisc)
-		basic_machine=hppa-unknown
-		os=-linux
-		;;
-	parisc-*)
-		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
-	pbd)
-		basic_machine=sparc-tti
-		;;
-	pbb)
-		basic_machine=m68k-tti
-		;;
-	pc532 | pc532-*)
-		basic_machine=ns32k-pc532
-		;;
-	pc98)
-		basic_machine=i386-pc
-		;;
-	pc98-*)
-		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentium | p5 | k5 | k6 | nexgen | viac3)
-		basic_machine=i586-pc
-		;;
-	pentiumpro | p6 | 6x86 | athlon | athlon_*)
-		basic_machine=i686-pc
-		;;
-	pentiumii | pentium2 | pentiumiii | pentium3)
-		basic_machine=i686-pc
-		;;
-	pentium4)
-		basic_machine=i786-pc
-		;;
-	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
-		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentiumpro-* | p6-* | 6x86-* | athlon-*)
-		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
-		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentium4-*)
-		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pn)
-		basic_machine=pn-gould
-		;;
-	power)	basic_machine=power-ibm
-		;;
-	ppc)	basic_machine=powerpc-unknown
-		;;
-	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ppcle | powerpclittle | ppc-le | powerpc-little)
-		basic_machine=powerpcle-unknown
-		;;
-	ppcle-* | powerpclittle-*)
-		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ppc64)	basic_machine=powerpc64-unknown
-		;;
-	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
-		basic_machine=powerpc64le-unknown
-		;;
-	ppc64le-* | powerpc64little-*)
-		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ps2)
-		basic_machine=i386-ibm
-		;;
-	pw32)
-		basic_machine=i586-unknown
-		os=-pw32
-		;;
-	rdos)
-		basic_machine=i386-pc
-		os=-rdos
-		;;
-	rom68k)
-		basic_machine=m68k-rom68k
-		os=-coff
-		;;
-	rm[46]00)
-		basic_machine=mips-siemens
-		;;
-	rtpc | rtpc-*)
-		basic_machine=romp-ibm
-		;;
-	s390 | s390-*)
-		basic_machine=s390-ibm
-		;;
-	s390x | s390x-*)
-		basic_machine=s390x-ibm
-		;;
-	sa29200)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-	sb1)
-		basic_machine=mipsisa64sb1-unknown
-		;;
-	sb1el)
-		basic_machine=mipsisa64sb1el-unknown
-		;;
-	sde)
-		basic_machine=mipsisa32-sde
-		os=-elf
-		;;
-	sei)
-		basic_machine=mips-sei
-		os=-seiux
-		;;
-	sequent)
-		basic_machine=i386-sequent
-		;;
-	sh)
-		basic_machine=sh-hitachi
-		os=-hms
-		;;
-	sh5el)
-		basic_machine=sh5le-unknown
-		;;
-	sh64)
-		basic_machine=sh64-unknown
-		;;
-	sparclite-wrs | simso-wrs)
-		basic_machine=sparclite-wrs
-		os=-vxworks
-		;;
-	sps7)
-		basic_machine=m68k-bull
-		os=-sysv2
-		;;
-	spur)
-		basic_machine=spur-unknown
-		;;
-	st2000)
-		basic_machine=m68k-tandem
-		;;
-	stratus)
-		basic_machine=i860-stratus
-		os=-sysv4
-		;;
-	sun2)
-		basic_machine=m68000-sun
-		;;
-	sun2os3)
-		basic_machine=m68000-sun
-		os=-sunos3
-		;;
-	sun2os4)
-		basic_machine=m68000-sun
-		os=-sunos4
-		;;
-	sun3os3)
-		basic_machine=m68k-sun
-		os=-sunos3
-		;;
-	sun3os4)
-		basic_machine=m68k-sun
-		os=-sunos4
-		;;
-	sun4os3)
-		basic_machine=sparc-sun
-		os=-sunos3
-		;;
-	sun4os4)
-		basic_machine=sparc-sun
-		os=-sunos4
-		;;
-	sun4sol2)
-		basic_machine=sparc-sun
-		os=-solaris2
-		;;
-	sun3 | sun3-*)
-		basic_machine=m68k-sun
-		;;
-	sun4)
-		basic_machine=sparc-sun
-		;;
-	sun386 | sun386i | roadrunner)
-		basic_machine=i386-sun
-		;;
-	sv1)
-		basic_machine=sv1-cray
-		os=-unicos
-		;;
-	symmetry)
-		basic_machine=i386-sequent
-		os=-dynix
-		;;
-	t3e)
-		basic_machine=alphaev5-cray
-		os=-unicos
-		;;
-	t90)
-		basic_machine=t90-cray
-		os=-unicos
-		;;
-	tic54x | c54x*)
-		basic_machine=tic54x-unknown
-		os=-coff
-		;;
-	tic55x | c55x*)
-		basic_machine=tic55x-unknown
-		os=-coff
-		;;
-	tic6x | c6x*)
-		basic_machine=tic6x-unknown
-		os=-coff
-		;;
-	tile*)
-		basic_machine=tile-unknown
-		os=-linux-gnu
-		;;
-	tx39)
-		basic_machine=mipstx39-unknown
-		;;
-	tx39el)
-		basic_machine=mipstx39el-unknown
-		;;
-	toad1)
-		basic_machine=pdp10-xkl
-		os=-tops20
-		;;
-	tower | tower-32)
-		basic_machine=m68k-ncr
-		;;
-	tpf)
-		basic_machine=s390x-ibm
-		os=-tpf
-		;;
-	udi29k)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-	ultra3)
-		basic_machine=a29k-nyu
-		os=-sym1
-		;;
-	v810 | necv810)
-		basic_machine=v810-nec
-		os=-none
-		;;
-	vaxv)
-		basic_machine=vax-dec
-		os=-sysv
-		;;
-	vms)
-		basic_machine=vax-dec
-		os=-vms
-		;;
-	vpp*|vx|vx-*)
-		basic_machine=f301-fujitsu
-		;;
-	vxworks960)
-		basic_machine=i960-wrs
-		os=-vxworks
-		;;
-	vxworks68)
-		basic_machine=m68k-wrs
-		os=-vxworks
-		;;
-	vxworks29k)
-		basic_machine=a29k-wrs
-		os=-vxworks
-		;;
-	w65*)
-		basic_machine=w65-wdc
-		os=-none
-		;;
-	w89k-*)
-		basic_machine=hppa1.1-winbond
-		os=-proelf
-		;;
-	xbox)
-		basic_machine=i686-pc
-		os=-mingw32
-		;;
-	xps | xps100)
-		basic_machine=xps100-honeywell
-		;;
-	ymp)
-		basic_machine=ymp-cray
-		os=-unicos
-		;;
-	z8k-*-coff)
-		basic_machine=z8k-unknown
-		os=-sim
-		;;
-	z80-*-coff)
-		basic_machine=z80-unknown
-		os=-sim
-		;;
-	none)
-		basic_machine=none-none
-		os=-none
-		;;
-
-# Here we handle the default manufacturer of certain CPU types.  It is in
-# some cases the only manufacturer, in others, it is the most popular.
-	w89k)
-		basic_machine=hppa1.1-winbond
-		;;
-	op50n)
-		basic_machine=hppa1.1-oki
-		;;
-	op60c)
-		basic_machine=hppa1.1-oki
-		;;
-	romp)
-		basic_machine=romp-ibm
-		;;
-	mmix)
-		basic_machine=mmix-knuth
-		;;
-	rs6000)
-		basic_machine=rs6000-ibm
-		;;
-	vax)
-		basic_machine=vax-dec
-		;;
-	pdp10)
-		# there are many clones, so DEC is not a safe bet
-		basic_machine=pdp10-unknown
-		;;
-	pdp11)
-		basic_machine=pdp11-dec
-		;;
-	we32k)
-		basic_machine=we32k-att
-		;;
-	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
-		basic_machine=sh-unknown
-		;;
-	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
-		basic_machine=sparc-sun
-		;;
-	cydra)
-		basic_machine=cydra-cydrome
-		;;
-	orion)
-		basic_machine=orion-highlevel
-		;;
-	orion105)
-		basic_machine=clipper-highlevel
-		;;
-	mac | mpw | mac-mpw)
-		basic_machine=m68k-apple
-		;;
-	pmac | pmac-mpw)
-		basic_machine=powerpc-apple
-		;;
-	*-unknown)
-		# Make sure to match an already-canonicalized machine name.
-		;;
-	*)
-		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-		exit 1
-		;;
-esac
-
-# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
-	*-digital*)
-		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
-		;;
-	*-commodore*)
-		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
-		;;
-	*)
-		;;
-esac
-
-# Decode manufacturer-specific aliases for certain operating systems.
-
-if [ x"$os" != x"" ]
-then
-case $os in
-        # First match some system type aliases
-        # that might get confused with valid system types.
-	# -solaris* is a basic system type, with this one exception.
-        -auroraux)
-	        os=-auroraux
-		;;
-	-solaris1 | -solaris1.*)
-		os=`echo $os | sed -e 's|solaris1|sunos4|'`
-		;;
-	-solaris)
-		os=-solaris2
-		;;
-	-svr4*)
-		os=-sysv4
-		;;
-	-unixware*)
-		os=-sysv4.2uw
-		;;
-	-gnu/linux*)
-		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
-		;;
-	# First accept the basic system types.
-	# The portable systems comes first.
-	# Each alternative MUST END IN A *, to match a version number.
-	# -sysv* is not here because it comes later, after sysvr4.
-	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
-	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
-	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
-	      | -sym* | -kopensolaris* \
-	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-	      | -aos* | -aros* \
-	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
-	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
-	      | -openbsd* | -solidbsd* \
-	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
-	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
-	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
-	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-	      | -chorusos* | -chorusrdb* | -cegcc* \
-	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
-	      | -uxpv* | -beos* | -mpeix* | -udk* \
-	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
-	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
-	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
-	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
-	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
-	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
-	# Remember, each alternative MUST END IN *, to match a version number.
-		;;
-	-qnx*)
-		case $basic_machine in
-		    x86-* | i*86-*)
-			;;
-		    *)
-			os=-nto$os
-			;;
-		esac
-		;;
-	-nto-qnx*)
-		;;
-	-nto*)
-		os=`echo $os | sed -e 's|nto|nto-qnx|'`
-		;;
-	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
-	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
-	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
-		;;
-	-mac*)
-		os=`echo $os | sed -e 's|mac|macos|'`
-		;;
-	-linux-dietlibc)
-		os=-linux-dietlibc
-		;;
-	-linux*)
-		os=`echo $os | sed -e 's|linux|linux-gnu|'`
-		;;
-	-sunos5*)
-		os=`echo $os | sed -e 's|sunos5|solaris2|'`
-		;;
-	-sunos6*)
-		os=`echo $os | sed -e 's|sunos6|solaris3|'`
-		;;
-	-opened*)
-		os=-openedition
-		;;
-        -os400*)
-		os=-os400
-		;;
-	-wince*)
-		os=-wince
-		;;
-	-osfrose*)
-		os=-osfrose
-		;;
-	-osf*)
-		os=-osf
-		;;
-	-utek*)
-		os=-bsd
-		;;
-	-dynix*)
-		os=-bsd
-		;;
-	-acis*)
-		os=-aos
-		;;
-	-atheos*)
-		os=-atheos
-		;;
-	-syllable*)
-		os=-syllable
-		;;
-	-386bsd)
-		os=-bsd
-		;;
-	-ctix* | -uts*)
-		os=-sysv
-		;;
-	-nova*)
-		os=-rtmk-nova
-		;;
-	-ns2 )
-		os=-nextstep2
-		;;
-	-nsk*)
-		os=-nsk
-		;;
-	# Preserve the version number of sinix5.
-	-sinix5.*)
-		os=`echo $os | sed -e 's|sinix|sysv|'`
-		;;
-	-sinix*)
-		os=-sysv4
-		;;
-        -tpf*)
-		os=-tpf
-		;;
-	-triton*)
-		os=-sysv3
-		;;
-	-oss*)
-		os=-sysv3
-		;;
-	-svr4)
-		os=-sysv4
-		;;
-	-svr3)
-		os=-sysv3
-		;;
-	-sysvr4)
-		os=-sysv4
-		;;
-	# This must come after -sysvr4.
-	-sysv*)
-		;;
-	-ose*)
-		os=-ose
-		;;
-	-es1800*)
-		os=-ose
-		;;
-	-xenix)
-		os=-xenix
-		;;
-	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-		os=-mint
-		;;
-	-aros*)
-		os=-aros
-		;;
-	-kaos*)
-		os=-kaos
-		;;
-	-zvmoe)
-		os=-zvmoe
-		;;
-	-dicos*)
-		os=-dicos
-		;;
-	-none)
-		;;
-	*)
-		# Get rid of the `-' at the beginning of $os.
-		os=`echo $os | sed 's/[^-]*-//'`
-		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
-		exit 1
-		;;
-esac
-else
-
-# Here we handle the default operating systems that come with various machines.
-# The value should be what the vendor currently ships out the door with their
-# machine or put another way, the most popular os provided with the machine.
-
-# Note that if you're going to try to match "-MANUFACTURER" here (say,
-# "-sun"), then you have to tell the case statement up towards the top
-# that MANUFACTURER isn't an operating system.  Otherwise, code above
-# will signal an error saying that MANUFACTURER isn't an operating
-# system, and we'll never get to this point.
-
-case $basic_machine in
-        score-*)
-		os=-elf
-		;;
-        spu-*)
-		os=-elf
-		;;
-	*-acorn)
-		os=-riscix1.2
-		;;
-	arm*-rebel)
-		os=-linux
-		;;
-	arm*-semi)
-		os=-aout
-		;;
-        c4x-* | tic4x-*)
-        	os=-coff
-		;;
-	# This must come before the *-dec entry.
-	pdp10-*)
-		os=-tops20
-		;;
-	pdp11-*)
-		os=-none
-		;;
-	*-dec | vax-*)
-		os=-ultrix4.2
-		;;
-	m68*-apollo)
-		os=-domain
-		;;
-	i386-sun)
-		os=-sunos4.0.2
-		;;
-	m68000-sun)
-		os=-sunos3
-		# This also exists in the configure program, but was not the
-		# default.
-		# os=-sunos4
-		;;
-	m68*-cisco)
-		os=-aout
-		;;
-        mep-*)
-		os=-elf
-		;;
-	mips*-cisco)
-		os=-elf
-		;;
-	mips*-*)
-		os=-elf
-		;;
-	or32-*)
-		os=-coff
-		;;
-	*-tti)	# must be before sparc entry or we get the wrong os.
-		os=-sysv3
-		;;
-	sparc-* | *-sun)
-		os=-sunos4.1.1
-		;;
-	*-be)
-		os=-beos
-		;;
-	*-haiku)
-		os=-haiku
-		;;
-	*-ibm)
-		os=-aix
-		;;
-    	*-knuth)
-		os=-mmixware
-		;;
-	*-wec)
-		os=-proelf
-		;;
-	*-winbond)
-		os=-proelf
-		;;
-	*-oki)
-		os=-proelf
-		;;
-	*-hp)
-		os=-hpux
-		;;
-	*-hitachi)
-		os=-hiux
-		;;
-	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
-		os=-sysv
-		;;
-	*-cbm)
-		os=-amigaos
-		;;
-	*-dg)
-		os=-dgux
-		;;
-	*-dolphin)
-		os=-sysv3
-		;;
-	m68k-ccur)
-		os=-rtu
-		;;
-	m88k-omron*)
-		os=-luna
-		;;
-	*-next )
-		os=-nextstep
-		;;
-	*-sequent)
-		os=-ptx
-		;;
-	*-crds)
-		os=-unos
-		;;
-	*-ns)
-		os=-genix
-		;;
-	i370-*)
-		os=-mvs
-		;;
-	*-next)
-		os=-nextstep3
-		;;
-	*-gould)
-		os=-sysv
-		;;
-	*-highlevel)
-		os=-bsd
-		;;
-	*-encore)
-		os=-bsd
-		;;
-	*-sgi)
-		os=-irix
-		;;
-	*-siemens)
-		os=-sysv4
-		;;
-	*-masscomp)
-		os=-rtu
-		;;
-	f30[01]-fujitsu | f700-fujitsu)
-		os=-uxpv
-		;;
-	*-rom68k)
-		os=-coff
-		;;
-	*-*bug)
-		os=-coff
-		;;
-	*-apple)
-		os=-macos
-		;;
-	*-atari*)
-		os=-mint
-		;;
-	*)
-		os=-none
-		;;
-esac
-fi
-
-# Here we handle the case where we know the os, and the CPU type, but not the
-# manufacturer.  We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
-	*-unknown)
-		case $os in
-			-riscix*)
-				vendor=acorn
-				;;
-			-sunos*)
-				vendor=sun
-				;;
-			-cnk*|-aix*)
-				vendor=ibm
-				;;
-			-beos*)
-				vendor=be
-				;;
-			-hpux*)
-				vendor=hp
-				;;
-			-mpeix*)
-				vendor=hp
-				;;
-			-hiux*)
-				vendor=hitachi
-				;;
-			-unos*)
-				vendor=crds
-				;;
-			-dgux*)
-				vendor=dg
-				;;
-			-luna*)
-				vendor=omron
-				;;
-			-genix*)
-				vendor=ns
-				;;
-			-mvs* | -opened*)
-				vendor=ibm
-				;;
-			-os400*)
-				vendor=ibm
-				;;
-			-ptx*)
-				vendor=sequent
-				;;
-			-tpf*)
-				vendor=ibm
-				;;
-			-vxsim* | -vxworks* | -windiss*)
-				vendor=wrs
-				;;
-			-aux*)
-				vendor=apple
-				;;
-			-hms*)
-				vendor=hitachi
-				;;
-			-mpw* | -macos*)
-				vendor=apple
-				;;
-			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-				vendor=atari
-				;;
-			-vos*)
-				vendor=stratus
-				;;
-		esac
-		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
-		;;
-esac
-
-echo $basic_machine$os
-exit
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/src/other/ares/configure b/src/other/ares/configure
deleted file mode 100755
index 0ed8eea..0000000
--- a/src/other/ares/configure
+++ /dev/null
@@ -1,27923 +0,0 @@
-#! /bin/sh
-# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for c-ares 1.7.1.
-#
-# Report bugs to <c-ares mailing list => http://cool.haxx.se/mailman/listinfo/c-ares>.
-#
-#
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-# Foundation, Inc.
-#
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-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
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in #(
-      *"$as_nl"*)
-	expr "X$arg" : "X\\(.*\\)$as_nl";
-	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
-
-
-  if test -z "$cares_cv_PATH_SEPARATOR"; then
-    if test -z "$PATH"; then
-      as_fn_error $? "PATH not set. Cannot continue without PATH being set."
-    fi
-        tst_dirs_col=0
-    tst_save_IFS=$IFS; IFS=':'
-    for tst_dir in $PATH; do
-      IFS=$tst_save_IFS
-      test -d "$tst_dir" && tst_dirs_col=`expr $tst_dirs_col + 1`
-    done
-    IFS=$tst_save_IFS
-        tst_dirs_sem=0
-    tst_save_IFS=$IFS; IFS=';'
-    for tst_dir in $PATH; do
-      IFS=$tst_save_IFS
-      test -d "$tst_dir" && tst_dirs_sem=`expr $tst_dirs_sem + 1`
-    done
-    IFS=$tst_save_IFS
-    if test $tst_dirs_sem -eq $tst_dirs_col; then
-                  if test -z "$PATH_SEPARATOR"; then
-                as_fn_error $? "PATH_SEPARATOR not set. Cannot continue without it."
-      fi
-    else
-            if test $tst_dirs_sem -gt $tst_dirs_col; then
-        tst_auto_separator=';'
-      else
-        tst_auto_separator=':'
-      fi
-      if test -z "$PATH_SEPARATOR"; then
-                PATH_SEPARATOR="$tst_auto_separator"
-      fi
-    fi
-    cares_cv_PATH_SEPARATOR="$PATH_SEPARATOR"
-  fi
-
-
-
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""	$as_nl"
-
-# 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
-  test -z "$as_dir" && as_dir=.
-    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
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test "x$CONFIG_SHELL" = x; then
-  as_bourne_compatible="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
-"
-  as_required="as_fn_return () { (exit \$1); }
-as_fn_success () { as_fn_return 0; }
-as_fn_failure () { as_fn_return 1; }
-as_fn_ret_success () { return 0; }
-as_fn_ret_failure () { return 1; }
-
-exitcode=0
-as_fn_success || { exitcode=1; echo as_fn_success failed.; }
-as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
-as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
-as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
-
-else
-  exitcode=1; echo positional parameters were not saved.
-fi
-test x\$exitcode = x0 || exit 1"
-  as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
-  as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
-  eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
-  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
-test \$(( 1 + 1 )) = 2 || exit 1
-
-  test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || (
-    ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-    ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO
-    ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO
-    PATH=/empty FPATH=/empty; export PATH FPATH
-    test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\
-      || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1"
-  if (eval "$as_required") 2>/dev/null; then :
-  as_have_required=yes
-else
-  as_have_required=no
-fi
-  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_found=false
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  as_found=:
-  case $as_dir in #(
-	 /*)
-	   for as_base in sh bash ksh sh5; do
-	     # Try only shells that exist, to save several forks.
-	     as_shell=$as_dir/$as_base
-	     if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-		    { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
-  CONFIG_SHELL=$as_shell as_have_required=yes
-		   if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
-  break 2
-fi
-fi
-	   done;;
-       esac
-  as_found=false
-done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
-	      { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
-  CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
-IFS=$as_save_IFS
-
-
-      if test "x$CONFIG_SHELL" != x; then :
-  # We cannot yet assume a decent shell, so we have to provide a
-	# neutralization value for shells without unset; and this also
-	# works around shells that cannot unset nonexistent variables.
-	# Preserve -v and -x to the replacement shell.
-	BASH_ENV=/dev/null
-	ENV=/dev/null
-	(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-	export CONFIG_SHELL
-	case $- in # ((((
-	  *v*x* | *x*v* ) as_opts=-vx ;;
-	  *v* ) as_opts=-v ;;
-	  *x* ) as_opts=-x ;;
-	  * ) as_opts= ;;
-	esac
-	exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
-fi
-
-    if test x$as_have_required = xno; then :
-  $as_echo "$0: This script requires a shell more modern than all"
-  $as_echo "$0: the shells that I found on your system."
-  if test x${ZSH_VERSION+set} = xset ; then
-    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
-    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
-  else
-    $as_echo "$0: Please tell bug-autoconf at gnu.org and c-ares mailing
-$0: list => http://cool.haxx.se/mailman/listinfo/c-ares
-$0: about your system, including any error possibly output
-$0: before this message. Then install a modern shell, or
-$0: manually run the script under such a shell if you do
-$0: have one."
-  fi
-  exit 1
-fi
-fi
-fi
-SHELL=${CONFIG_SHELL-/bin/sh}
-export SHELL
-# Unset more variables known to interfere with behavior of common tools.
-CLICOLOR_FORCE= GREP_OPTIONS=
-unset CLICOLOR_FORCE GREP_OPTIONS
-
-## --------------------- ##
-## M4sh Shell Functions. ##
-## --------------------- ##
-# as_fn_unset VAR
-# ---------------
-# Portably unset VAR.
-as_fn_unset ()
-{
-  { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-
-# 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_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=`$as_echo "$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 ||
-$as_echo 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
-# 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_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_fn_arith ()
-  {
-    as_val=`expr "$@" || test $? -eq 1`
-  }
-fi # as_fn_arith
-
-
-# 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
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
-  fi
-  $as_echo "$as_me: error: $2" >&2
-  as_fn_exit $as_status
-} # as_fn_error
-
-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 ||
-$as_echo 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
-
-
-  as_lineno_1=$LINENO as_lineno_1a=$LINENO
-  as_lineno_2=$LINENO as_lineno_2a=$LINENO
-  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
-  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
-  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
-  sed -n '
-    p
-    /[$]LINENO/=
-  ' <$as_myself |
-    sed '
-      s/[$]LINENO.*/&-/
-      t lineno
-      b
-      :lineno
-      N
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$as_me.lineno &&
-  chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-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
-
-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 -p'.
-    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
-  elif ln conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s=ln
-  else
-    as_ln_s='cp -p'
-  fi
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-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
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-	test -d "$1/.";
-      else
-	case $1 in #(
-	-*)set "./$1";;
-	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-	???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# 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'"
-
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-
-test -n "$DJDIR" || exec 7<&0 </dev/null
-exec 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIBOBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-
-# Identity of this package.
-PACKAGE_NAME='c-ares'
-PACKAGE_TARNAME='c-ares'
-PACKAGE_VERSION='1.7.1'
-PACKAGE_STRING='c-ares 1.7.1'
-PACKAGE_BUGREPORT='c-ares mailing list => http://cool.haxx.se/mailman/listinfo/c-ares'
-PACKAGE_URL=''
-
-ac_unique_file="ares_ipv6.h"
-# Factoring default headers for most tests.
-ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-# endif
-#endif
-#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-#  include <memory.h>
-# endif
-# include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif"
-
-ac_subst_vars='am__EXEEXT_FALSE
-am__EXEEXT_TRUE
-LTLIBOBJS
-LIBOBJS
-CARES_PRIVATE_LIBS
-RANDOM_FILE
-CURLDEBUG_FALSE
-CURLDEBUG_TRUE
-NO_UNDEFINED_FALSE
-NO_UNDEFINED_TRUE
-OTOOL64
-OTOOL
-LIPO
-NMEDIT
-DSYMUTIL
-MANIFEST_TOOL
-RANLIB
-ac_ct_AR
-LN_S
-NM
-ac_ct_DUMPBIN
-DUMPBIN
-LD
-FGREP
-LIBTOOL
-OBJDUMP
-DLLTOOL
-AS
-CPP
-am__fastdepCC_FALSE
-am__fastdepCC_TRUE
-CCDEPMODE
-AMDEPBACKSLASH
-AMDEP_FALSE
-AMDEP_TRUE
-am__quote
-am__include
-DEPDIR
-OBJEXT
-EXEEXT
-ac_ct_CC
-CPPFLAGS
-LDFLAGS
-CFLAGS
-CC
-host_os
-host_vendor
-host_cpu
-host
-build_os
-build_vendor
-build_cpu
-build
-am__untar
-am__tar
-AMTAR
-am__leading_dot
-SET_MAKE
-AWK
-mkdir_p
-MKDIR_P
-INSTALL_STRIP_PROGRAM
-STRIP
-install_sh
-MAKEINFO
-AUTOHEADER
-AUTOMAKE
-AUTOCONF
-ACLOCAL
-VERSION
-PACKAGE
-CYGPATH_W
-am__isrc
-INSTALL_DATA
-INSTALL_SCRIPT
-INSTALL_PROGRAM
-AR
-EGREP
-GREP
-SED
-MAINT
-MAINTAINER_MODE_FALSE
-MAINTAINER_MODE_TRUE
-target_alias
-host_alias
-build_alias
-LIBS
-ECHO_T
-ECHO_N
-ECHO_C
-DEFS
-mandir
-localedir
-libdir
-psdir
-pdfdir
-dvidir
-htmldir
-infodir
-docdir
-oldincludedir
-includedir
-localstatedir
-sharedstatedir
-sysconfdir
-datadir
-datarootdir
-libexecdir
-sbindir
-bindir
-program_transform_name
-prefix
-exec_prefix
-PACKAGE_URL
-PACKAGE_BUGREPORT
-PACKAGE_STRING
-PACKAGE_VERSION
-PACKAGE_TARNAME
-PACKAGE_NAME
-SHELL
-PATH
-PATH_SEPARATOR'
-ac_subst_files=''
-ac_user_opts='
-enable_option_checking
-enable_maintainer_mode
-enable_debug
-enable_optimize
-enable_warnings
-enable_curldebug
-enable_symbol_hiding
-enable_dependency_tracking
-enable_largefile
-enable_shared
-enable_static
-with_pic
-enable_fast_install
-with_gnu_ld
-with_sysroot
-enable_libtool_lock
-enable_libgcc
-with_random
-enable_nonblocking
-'
-      ac_precious_vars='build_alias
-host_alias
-target_alias
-CC
-CFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS
-CPP'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-ac_unrecognized_opts=
-ac_unrecognized_sep=
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
-  # If the previous option needs an argument, assign it.
-  if test -n "$ac_prev"; then
-    eval $ac_prev=\$ac_option
-    ac_prev=
-    continue
-  fi
-
-  case $ac_option in
-  *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
-  *=)   ac_optarg= ;;
-  *)    ac_optarg=yes ;;
-  esac
-
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
-  case $ac_dashdash$ac_option in
-  --)
-    ac_dashdash=yes ;;
-
-  -bindir | --bindir | --bindi | --bind | --bin | --bi)
-    ac_prev=bindir ;;
-  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
-    bindir=$ac_optarg ;;
-
-  -build | --build | --buil | --bui | --bu)
-    ac_prev=build_alias ;;
-  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
-    build_alias=$ac_optarg ;;
-
-  -cache-file | --cache-file | --cache-fil | --cache-fi \
-  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
-    ac_prev=cache_file ;;
-  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
-  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
-    cache_file=$ac_optarg ;;
-
-  --config-cache | -C)
-    cache_file=config.cache ;;
-
-  -datadir | --datadir | --datadi | --datad)
-    ac_prev=datadir ;;
-  -datadir=* | --datadir=* | --datadi=* | --datad=*)
-    datadir=$ac_optarg ;;
-
-  -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
-  | --dataroo | --dataro | --datar)
-    ac_prev=datarootdir ;;
-  -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
-  | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
-    datarootdir=$ac_optarg ;;
-
-  -disable-* | --disable-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"enable_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
-	 ac_unrecognized_sep=', ';;
-    esac
-    eval enable_$ac_useropt=no ;;
-
-  -docdir | --docdir | --docdi | --doc | --do)
-    ac_prev=docdir ;;
-  -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
-    docdir=$ac_optarg ;;
-
-  -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
-    ac_prev=dvidir ;;
-  -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
-    dvidir=$ac_optarg ;;
-
-  -enable-* | --enable-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"enable_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
-	 ac_unrecognized_sep=', ';;
-    esac
-    eval enable_$ac_useropt=\$ac_optarg ;;
-
-  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
-  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
-  | --exec | --exe | --ex)
-    ac_prev=exec_prefix ;;
-  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
-  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
-  | --exec=* | --exe=* | --ex=*)
-    exec_prefix=$ac_optarg ;;
-
-  -gas | --gas | --ga | --g)
-    # Obsolete; use --with-gas.
-    with_gas=yes ;;
-
-  -help | --help | --hel | --he | -h)
-    ac_init_help=long ;;
-  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
-    ac_init_help=recursive ;;
-  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
-    ac_init_help=short ;;
-
-  -host | --host | --hos | --ho)
-    ac_prev=host_alias ;;
-  -host=* | --host=* | --hos=* | --ho=*)
-    host_alias=$ac_optarg ;;
-
-  -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
-    ac_prev=htmldir ;;
-  -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
-  | --ht=*)
-    htmldir=$ac_optarg ;;
-
-  -includedir | --includedir | --includedi | --included | --include \
-  | --includ | --inclu | --incl | --inc)
-    ac_prev=includedir ;;
-  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
-  | --includ=* | --inclu=* | --incl=* | --inc=*)
-    includedir=$ac_optarg ;;
-
-  -infodir | --infodir | --infodi | --infod | --info | --inf)
-    ac_prev=infodir ;;
-  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
-    infodir=$ac_optarg ;;
-
-  -libdir | --libdir | --libdi | --libd)
-    ac_prev=libdir ;;
-  -libdir=* | --libdir=* | --libdi=* | --libd=*)
-    libdir=$ac_optarg ;;
-
-  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
-  | --libexe | --libex | --libe)
-    ac_prev=libexecdir ;;
-  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
-  | --libexe=* | --libex=* | --libe=*)
-    libexecdir=$ac_optarg ;;
-
-  -localedir | --localedir | --localedi | --localed | --locale)
-    ac_prev=localedir ;;
-  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
-    localedir=$ac_optarg ;;
-
-  -localstatedir | --localstatedir | --localstatedi | --localstated \
-  | --localstate | --localstat | --localsta | --localst | --locals)
-    ac_prev=localstatedir ;;
-  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
-  | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
-    localstatedir=$ac_optarg ;;
-
-  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
-    ac_prev=mandir ;;
-  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
-    mandir=$ac_optarg ;;
-
-  -nfp | --nfp | --nf)
-    # Obsolete; use --without-fp.
-    with_fp=no ;;
-
-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-  | --no-cr | --no-c | -n)
-    no_create=yes ;;
-
-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
-    no_recursion=yes ;;
-
-  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
-  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
-  | --oldin | --oldi | --old | --ol | --o)
-    ac_prev=oldincludedir ;;
-  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
-  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
-  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
-    oldincludedir=$ac_optarg ;;
-
-  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
-    ac_prev=prefix ;;
-  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
-    prefix=$ac_optarg ;;
-
-  -program-prefix | --program-prefix | --program-prefi | --program-pref \
-  | --program-pre | --program-pr | --program-p)
-    ac_prev=program_prefix ;;
-  -program-prefix=* | --program-prefix=* | --program-prefi=* \
-  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
-    program_prefix=$ac_optarg ;;
-
-  -program-suffix | --program-suffix | --program-suffi | --program-suff \
-  | --program-suf | --program-su | --program-s)
-    ac_prev=program_suffix ;;
-  -program-suffix=* | --program-suffix=* | --program-suffi=* \
-  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
-    program_suffix=$ac_optarg ;;
-
-  -program-transform-name | --program-transform-name \
-  | --program-transform-nam | --program-transform-na \
-  | --program-transform-n | --program-transform- \
-  | --program-transform | --program-transfor \
-  | --program-transfo | --program-transf \
-  | --program-trans | --program-tran \
-  | --progr-tra | --program-tr | --program-t)
-    ac_prev=program_transform_name ;;
-  -program-transform-name=* | --program-transform-name=* \
-  | --program-transform-nam=* | --program-transform-na=* \
-  | --program-transform-n=* | --program-transform-=* \
-  | --program-transform=* | --program-transfor=* \
-  | --program-transfo=* | --program-transf=* \
-  | --program-trans=* | --program-tran=* \
-  | --progr-tra=* | --program-tr=* | --program-t=*)
-    program_transform_name=$ac_optarg ;;
-
-  -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
-    ac_prev=pdfdir ;;
-  -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
-    pdfdir=$ac_optarg ;;
-
-  -psdir | --psdir | --psdi | --psd | --ps)
-    ac_prev=psdir ;;
-  -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
-    psdir=$ac_optarg ;;
-
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil)
-    silent=yes ;;
-
-  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
-    ac_prev=sbindir ;;
-  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
-  | --sbi=* | --sb=*)
-    sbindir=$ac_optarg ;;
-
-  -sharedstatedir | --sharedstatedir | --sharedstatedi \
-  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
-  | --sharedst | --shareds | --shared | --share | --shar \
-  | --sha | --sh)
-    ac_prev=sharedstatedir ;;
-  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
-  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
-  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
-  | --sha=* | --sh=*)
-    sharedstatedir=$ac_optarg ;;
-
-  -site | --site | --sit)
-    ac_prev=site ;;
-  -site=* | --site=* | --sit=*)
-    site=$ac_optarg ;;
-
-  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
-    ac_prev=srcdir ;;
-  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
-    srcdir=$ac_optarg ;;
-
-  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
-  | --syscon | --sysco | --sysc | --sys | --sy)
-    ac_prev=sysconfdir ;;
-  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
-  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
-    sysconfdir=$ac_optarg ;;
-
-  -target | --target | --targe | --targ | --tar | --ta | --t)
-    ac_prev=target_alias ;;
-  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
-    target_alias=$ac_optarg ;;
-
-  -v | -verbose | --verbose | --verbos | --verbo | --verb)
-    verbose=yes ;;
-
-  -version | --version | --versio | --versi | --vers | -V)
-    ac_init_version=: ;;
-
-  -with-* | --with-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"with_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
-	 ac_unrecognized_sep=', ';;
-    esac
-    eval with_$ac_useropt=\$ac_optarg ;;
-
-  -without-* | --without-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"with_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
-	 ac_unrecognized_sep=', ';;
-    esac
-    eval with_$ac_useropt=no ;;
-
-  --x)
-    # Obsolete; use --with-x.
-    with_x=yes ;;
-
-  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
-  | --x-incl | --x-inc | --x-in | --x-i)
-    ac_prev=x_includes ;;
-  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
-  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
-    x_includes=$ac_optarg ;;
-
-  -x-libraries | --x-libraries | --x-librarie | --x-librari \
-  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
-    ac_prev=x_libraries ;;
-  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
-  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
-    x_libraries=$ac_optarg ;;
-
-  -*) as_fn_error $? "unrecognized option: \`$ac_option'
-Try \`$0 --help' for more information"
-    ;;
-
-  *=*)
-    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
-    # Reject names that are not valid shell variable names.
-    case $ac_envvar in #(
-      '' | [0-9]* | *[!_$as_cr_alnum]* )
-      as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
-    esac
-    eval $ac_envvar=\$ac_optarg
-    export $ac_envvar ;;
-
-  *)
-    # FIXME: should be removed in autoconf 3.0.
-    $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
-    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
-    : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
-    ;;
-
-  esac
-done
-
-if test -n "$ac_prev"; then
-  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
-  as_fn_error $? "missing argument to $ac_option"
-fi
-
-if test -n "$ac_unrecognized_opts"; then
-  case $enable_option_checking in
-    no) ;;
-    fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
-    *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
-  esac
-fi
-
-# Check all directory arguments for consistency.
-for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
-		datadir sysconfdir sharedstatedir localstatedir includedir \
-		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-		libdir localedir mandir
-do
-  eval ac_val=\$$ac_var
-  # Remove trailing slashes.
-  case $ac_val in
-    */ )
-      ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
-      eval $ac_var=\$ac_val;;
-  esac
-  # Be sure to have absolute directory names.
-  case $ac_val in
-    [\\/$]* | ?:[\\/]* )  continue;;
-    NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
-  esac
-  as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
-  if test "x$build_alias" = x; then
-    cross_compiling=maybe
-    $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used" >&2
-  elif test "x$build_alias" != "x$host_alias"; then
-    cross_compiling=yes
-  fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
-  as_fn_error $? "working directory cannot be determined"
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
-  as_fn_error $? "pwd does not report name of working directory"
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
-  ac_srcdir_defaulted=yes
-  # Try the directory containing this script, then the parent directory.
-  ac_confdir=`$as_dirname -- "$as_myself" ||
-$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$as_myself" : 'X\(//\)[^/]' \| \
-	 X"$as_myself" : 'X\(//\)$' \| \
-	 X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-  srcdir=$ac_confdir
-  if test ! -r "$srcdir/$ac_unique_file"; then
-    srcdir=..
-  fi
-else
-  ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
-  test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
-  as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
-	cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
-	pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
-  srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
-  eval ac_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_env_${ac_var}_value=\$${ac_var}
-  eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
-  # Omit some internal or obsolete options to make the list less imposing.
-  # This message is too long to be a string in the A/UX 3.1 sh.
-  cat <<_ACEOF
-\`configure' configures c-ares 1.7.1 to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE.  See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
-  -h, --help              display this help and exit
-      --help=short        display options specific to this package
-      --help=recursive    display the short help of all the included packages
-  -V, --version           display version information and exit
-  -q, --quiet, --silent   do not print \`checking ...' messages
-      --cache-file=FILE   cache test results in FILE [disabled]
-  -C, --config-cache      alias for \`--cache-file=config.cache'
-  -n, --no-create         do not create output files
-      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
-
-Installation directories:
-  --prefix=PREFIX         install architecture-independent files in PREFIX
-                          [$ac_default_prefix]
-  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
-                          [PREFIX]
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
-  --bindir=DIR            user executables [EPREFIX/bin]
-  --sbindir=DIR           system admin executables [EPREFIX/sbin]
-  --libexecdir=DIR        program executables [EPREFIX/libexec]
-  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
-  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
-  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
-  --libdir=DIR            object code libraries [EPREFIX/lib]
-  --includedir=DIR        C header files [PREFIX/include]
-  --oldincludedir=DIR     C header files for non-gcc [/usr/include]
-  --datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]
-  --datadir=DIR           read-only architecture-independent data [DATAROOTDIR]
-  --infodir=DIR           info documentation [DATAROOTDIR/info]
-  --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]
-  --mandir=DIR            man documentation [DATAROOTDIR/man]
-  --docdir=DIR            documentation root [DATAROOTDIR/doc/c-ares]
-  --htmldir=DIR           html documentation [DOCDIR]
-  --dvidir=DIR            dvi documentation [DOCDIR]
-  --pdfdir=DIR            pdf documentation [DOCDIR]
-  --psdir=DIR             ps documentation [DOCDIR]
-_ACEOF
-
-  cat <<\_ACEOF
-
-Program names:
-  --program-prefix=PREFIX            prepend PREFIX to installed program names
-  --program-suffix=SUFFIX            append SUFFIX to installed program names
-  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names
-
-System types:
-  --build=BUILD     configure for building on BUILD [guessed]
-  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
-  case $ac_init_help in
-     short | recursive ) echo "Configuration of c-ares 1.7.1:";;
-   esac
-  cat <<\_ACEOF
-
-Optional Features:
-  --disable-option-checking  ignore unrecognized --enable/--with options
-  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
-  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-  --enable-maintainer-mode  enable make rules and dependencies not useful
-			  (and sometimes confusing) to the casual installer
-  --enable-debug          Enable debug build options
-  --disable-debug         Disable debug build options
-  --enable-optimize(=OPT) Enable compiler optimizations (default=-O2)
-  --disable-optimize      Disable compiler optimizations
-  --enable-warnings       Enable strict compiler warnings
-  --disable-warnings      Disable strict compiler warnings
-  --enable-curldebug      Enable curl debug memory tracking
-  --disable-curldebug     Disable curl debug memory tracking
-  --enable-symbol-hiding  Enable hiding of library internal symbols
-  --disable-symbol-hiding Disable hiding of library internal symbols
-  --disable-dependency-tracking  speeds up one-time build
-  --enable-dependency-tracking   do not reject slow dependency extractors
-  --disable-largefile     omit support for large files
-  --enable-shared[=PKGS]  build shared libraries [default=yes]
-  --enable-static[=PKGS]  build static libraries [default=yes]
-  --enable-fast-install[=PKGS]
-                          optimize for fast installation [default=yes]
-  --disable-libtool-lock  avoid locking (might break parallel builds)
-  --enable-libgcc         use libgcc when linking
-  --enable-nonblocking    Enable non-blocking communications
-  --disable-nonblocking   Disable non-blocking communications
-
-Optional Packages:
-  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
-  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
-  --with-pic              try to use only PIC/non-PIC objects [default=use
-                          both]
-  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
-  --with-sysroot=DIR Search for dependent libraries within DIR
-                        (or the compiler's sysroot if not specified).
-  --with-random=FILE      read randomness from FILE (default=/dev/urandom)
-
-Some influential environment variables:
-  CC          C compiler command
-  CFLAGS      C compiler flags
-  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
-              nonstandard directory <lib dir>
-  LIBS        libraries to pass to the linker, e.g. -l<library>
-  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
-              you have headers in a nonstandard directory <include dir>
-  CPP         C preprocessor
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <c-ares mailing list => http://cool.haxx.se/mailman/listinfo/c-ares>.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
-  # If there are subdirs, report their specific --help.
-  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
-    test -d "$ac_dir" ||
-      { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
-      continue
-    ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$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
-
-    cd "$ac_dir" || { ac_status=$?; continue; }
-    # Check for guested configure.
-    if test -f "$ac_srcdir/configure.gnu"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure.gnu" --help=recursive
-    elif test -f "$ac_srcdir/configure"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure" --help=recursive
-    else
-      $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
-    fi || ac_status=$?
-    cd "$ac_pwd" || { ac_status=$?; break; }
-  done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
-  cat <<\_ACEOF
-c-ares configure 1.7.1
-generated by GNU Autoconf 2.68
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
-  exit
-fi
-
-## ------------------------ ##
-## Autoconf initialization. ##
-## ------------------------ ##
-
-# ac_fn_c_try_compile LINENO
-# --------------------------
-# Try to compile conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_compile ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext
-  if { { ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compile") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_compile
-
-# ac_fn_c_try_cpp LINENO
-# ----------------------
-# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } > conftest.i && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-    ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_cpp
-
-# ac_fn_c_try_link LINENO
-# -----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_link ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext conftest$ac_exeext
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_retval=1
-fi
-  # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
-  # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
-  # interfere with the next link command; also delete a directory that is
-  # left behind by Apple's compiler.  We do this before executing the actions.
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_link
-
-# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists and can be compiled using the include files in
-# INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_compile
-
-# ac_fn_c_try_run LINENO
-# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-       $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=$ac_status
-fi
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_run
-
-# ac_fn_c_check_func LINENO FUNC VAR
-# ----------------------------------
-# Tests whether FUNC exists, setting the cache variable VAR accordingly
-ac_fn_c_check_func ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define $2 innocuous_$2
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef $2
-#ifdef __cplusplus
-extern "C"
-#endif
-char $2 ();
-#if defined __stub_$2 || defined __stub___$2
-choke me
-#endif
-
-int main (void)
-{
-return $2 ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_func
-
-# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists, giving a warning if it cannot be compiled using
-# the include files in INCLUDES and setting the cache variable VAR
-# accordingly.
-ac_fn_c_check_header_mongrel ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if eval \${$3+:} false; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_header_compiler=yes
-else
-  ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  ac_header_preproc=yes
-else
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
-  yes:no: )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-    ;;
-  no:yes:* )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( $as_echo "## --------------------------------------------------------------------------------- ##
-## Report this to c-ares mailing list => http://cool.haxx.se/mailman/listinfo/c-ares ##
-## --------------------------------------------------------------------------------- ##"
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_mongrel
-
-# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
-# -------------------------------------------
-# Tests whether TYPE exists after having included INCLUDES, setting cache
-# variable VAR accordingly.
-ac_fn_c_check_type ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=no"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-if (sizeof ($2))
-	 return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-if (sizeof (($2)))
-	    return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
-  eval "$3=yes"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_type
-
-# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
-# --------------------------------------------
-# Tries to find the compile-time value of EXPR in a program that includes
-# INCLUDES, setting VAR accordingly. Returns whether the value could be
-# computed
-ac_fn_c_compute_int ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if test "$cross_compiling" = yes; then
-    # Depending upon the size, compute the lo and hi bounds.
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-static int test_array [1 - 2 * !(($2) >= 0)];
-test_array [0] = 0
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-static int test_array [1 - 2 * !(($2) <= $ac_mid)];
-test_array [0] = 0
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=$ac_mid; break
-else
-  as_fn_arith $ac_mid + 1 && ac_lo=$as_val
-			if test $ac_lo -le $ac_mid; then
-			  ac_lo= ac_hi=
-			  break
-			fi
-			as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-static int test_array [1 - 2 * !(($2) < 0)];
-test_array [0] = 0
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-static int test_array [1 - 2 * !(($2) >= $ac_mid)];
-test_array [0] = 0
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_lo=$ac_mid; break
-else
-  as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
-			if test $ac_mid -le $ac_hi; then
-			  ac_lo= ac_hi=
-			  break
-			fi
-			as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  ac_lo= ac_hi=
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-static int test_array [1 - 2 * !(($2) <= $ac_mid)];
-test_array [0] = 0
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=$ac_mid
-else
-  as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in #((
-?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
-'') ac_retval=1 ;;
-esac
-  else
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-static long int longval () { return $2; }
-static unsigned long int ulongval () { return $2; }
-#include <stdio.h>
-#include <stdlib.h>
-int main (void)
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    return 1;
-  if (($2) < 0)
-    {
-      long int i = longval ();
-      if (i != ($2))
-	return 1;
-      fprintf (f, "%ld", i);
-    }
-  else
-    {
-      unsigned long int i = ulongval ();
-      if (i != ($2))
-	return 1;
-      fprintf (f, "%lu", i);
-    }
-  /* Do not output a trailing newline, as this causes \r\n confusion
-     on some platforms.  */
-  return ferror (f) || fclose (f) != 0;
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  echo >>conftest.val; read $3 <conftest.val; ac_retval=0
-else
-  ac_retval=1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-rm -f conftest.val
-
-  fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_compute_int
-
-# ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES
-# ----------------------------------------------------
-# Tries to find if the field MEMBER exists in type AGGR, after including
-# INCLUDES, setting cache variable VAR accordingly.
-ac_fn_c_check_member ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
-$as_echo_n "checking for $2.$3... " >&6; }
-if eval \${$4+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$5
-int main (void)
-{
-static $2 ac_aggr;
-if (ac_aggr.$3)
-return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$4=yes"
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$5
-int main (void)
-{
-static $2 ac_aggr;
-if (sizeof ac_aggr.$3)
-return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$4=yes"
-else
-  eval "$4=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$4
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_member
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by c-ares $as_me 1.7.1, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
-
-  $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
-
-/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`
-/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
-/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    $as_echo "PATH: $as_dir"
-  done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
-  for ac_arg
-  do
-    case $ac_arg in
-    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
-    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-    | -silent | --silent | --silen | --sile | --sil)
-      continue ;;
-    *\'*)
-      ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    esac
-    case $ac_pass in
-    1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
-    2)
-      as_fn_append ac_configure_args1 " '$ac_arg'"
-      if test $ac_must_keep_next = true; then
-	ac_must_keep_next=false # Got value, back to normal.
-      else
-	case $ac_arg in
-	  *=* | --config-cache | -C | -disable-* | --disable-* \
-	  | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
-	  | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
-	  | -with-* | --with-* | -without-* | --without-* | --x)
-	    case "$ac_configure_args0 " in
-	      "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
-	    esac
-	    ;;
-	  -* ) ac_must_keep_next=true ;;
-	esac
-      fi
-      as_fn_append ac_configure_args " '$ac_arg'"
-      ;;
-    esac
-  done
-done
-{ ac_configure_args0=; unset ac_configure_args0;}
-{ ac_configure_args1=; unset ac_configure_args1;}
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log.  We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
-  # Save into config.log some information that might help in debugging.
-  {
-    echo
-
-    $as_echo "## ---------------- ##
-## Cache variables. ##
-## ---------------- ##"
-    echo
-    # The following way of writing the cache mishandles newlines in values,
-(
-  for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
-      *) { eval $ac_var=; unset $ac_var;} ;;
-      esac ;;
-    esac
-  done
-  (set) 2>&1 |
-    case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      sed -n \
-	"s/'\''/'\''\\\\'\'''\''/g;
-	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
-      ;; #(
-    *)
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-)
-    echo
-
-    $as_echo "## ----------------- ##
-## Output variables. ##
-## ----------------- ##"
-    echo
-    for ac_var in $ac_subst_vars
-    do
-      eval ac_val=\$$ac_var
-      case $ac_val in
-      *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-      esac
-      $as_echo "$ac_var='\''$ac_val'\''"
-    done | sort
-    echo
-
-    if test -n "$ac_subst_files"; then
-      $as_echo "## ------------------- ##
-## File substitutions. ##
-## ------------------- ##"
-      echo
-      for ac_var in $ac_subst_files
-      do
-	eval ac_val=\$$ac_var
-	case $ac_val in
-	*\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-	esac
-	$as_echo "$ac_var='\''$ac_val'\''"
-      done | sort
-      echo
-    fi
-
-    if test -s confdefs.h; then
-      $as_echo "## ----------- ##
-## confdefs.h. ##
-## ----------- ##"
-      echo
-      cat confdefs.h
-      echo
-    fi
-    test "$ac_signal" != 0 &&
-      $as_echo "$as_me: caught signal $ac_signal"
-    $as_echo "$as_me: exit $exit_status"
-  } >&5
-  rm -f core *.core core.conftest.* &&
-    rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
-    exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
-  trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-$as_echo "/* confdefs.h */" > confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
-if test -n "$CONFIG_SITE"; then
-  # We do not want a PATH search for config.site.
-  case $CONFIG_SITE in #((
-    -*)  ac_site_file1=./$CONFIG_SITE;;
-    */*) ac_site_file1=$CONFIG_SITE;;
-    *)   ac_site_file1=./$CONFIG_SITE;;
-  esac
-elif test "x$prefix" != xNONE; then
-  ac_site_file1=$prefix/share/config.site
-  ac_site_file2=$prefix/etc/config.site
-else
-  ac_site_file1=$ac_default_prefix/share/config.site
-  ac_site_file2=$ac_default_prefix/etc/config.site
-fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
-do
-  test "x$ac_site_file" = xNONE && continue
-  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
-    sed 's/^/| /' "$ac_site_file" >&5
-    . "$ac_site_file" \
-      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5; }
-  fi
-done
-
-if test -r "$cache_file"; then
-  # Some versions of bash will fail to source /dev/null (special files
-  # actually), so we avoid doing that.  DJGPP emulates it as a regular file.
-  if test /dev/null != "$cache_file" && test -f "$cache_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
-    case $cache_file in
-      [\\/]* | ?:[\\/]* ) . "$cache_file";;
-      *)                      . "./$cache_file";;
-    esac
-  fi
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
-  >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
-  eval ac_old_set=\$ac_cv_env_${ac_var}_set
-  eval ac_new_set=\$ac_env_${ac_var}_set
-  eval ac_old_val=\$ac_cv_env_${ac_var}_value
-  eval ac_new_val=\$ac_env_${ac_var}_value
-  case $ac_old_set,$ac_new_set in
-    set,)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,set)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,);;
-    *)
-      if test "x$ac_old_val" != "x$ac_new_val"; then
-	# differences in whitespace do not lead to failure.
-	ac_old_val_w=`echo x $ac_old_val`
-	ac_new_val_w=`echo x $ac_new_val`
-	if test "$ac_old_val_w" != "$ac_new_val_w"; then
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-	  ac_cache_corrupted=:
-	else
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
-	  eval $ac_var=\$ac_old_val
-	fi
-	{ $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
-$as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}
-	{ $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
-$as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
-      fi;;
-  esac
-  # Pass precious variables to config.status.
-  if test "$ac_new_set" = set; then
-    case $ac_new_val in
-    *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
-    *) ac_arg=$ac_var=$ac_new_val ;;
-    esac
-    case " $ac_configure_args " in
-      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
-      *) as_fn_append ac_configure_args " '$ac_arg'" ;;
-    esac
-  fi
-done
-if $ac_cache_corrupted; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
-fi
-## -------------------- ##
-## Main body of script. ##
-## -------------------- ##
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-
-# using cares-override.m4
-
-
-
-ac_config_headers="$ac_config_headers ares_config.h ares_build.h"
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
-$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
-    # Check whether --enable-maintainer-mode was given.
-if test "${enable_maintainer_mode+set}" = set; then :
-  enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval
-else
-  USE_MAINTAINER_MODE=no
-fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5
-$as_echo "$USE_MAINTAINER_MODE" >&6; }
-   if test $USE_MAINTAINER_MODE = yes; then
-  MAINTAINER_MODE_TRUE=
-  MAINTAINER_MODE_FALSE='#'
-else
-  MAINTAINER_MODE_TRUE='#'
-  MAINTAINER_MODE_FALSE=
-fi
-
-  MAINT=$MAINTAINER_MODE_TRUE
-
-
-
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable debug build options" >&5
-$as_echo_n "checking whether to enable debug build options... " >&6; }
-  OPT_DEBUG_BUILD="default"
-  # Check whether --enable-debug was given.
-if test "${enable_debug+set}" = set; then :
-  enableval=$enable_debug; OPT_DEBUG_BUILD=$enableval
-fi
-
-  case "$OPT_DEBUG_BUILD" in
-    no)
-            want_debug="no"
-      ;;
-    default)
-            want_debug="no"
-      ;;
-    *)
-            want_debug="yes"
-      ;;
-  esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_debug" >&5
-$as_echo "$want_debug" >&6; }
-
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable compiler optimizer" >&5
-$as_echo_n "checking whether to enable compiler optimizer... " >&6; }
-  OPT_COMPILER_OPTIMIZE="default"
-  # Check whether --enable-optimize was given.
-if test "${enable_optimize+set}" = set; then :
-  enableval=$enable_optimize; OPT_COMPILER_OPTIMIZE=$enableval
-fi
-
-  case "$OPT_COMPILER_OPTIMIZE" in
-    no)
-                              want_optimize="no"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      ;;
-    default)
-                                                                        if test "$want_debug" = "yes"; then
-        want_optimize="assume_no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: not specified (assuming no)" >&5
-$as_echo "not specified (assuming no)" >&6; }
-      else
-        want_optimize="assume_yes"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: not specified (assuming yes)" >&5
-$as_echo "not specified (assuming yes)" >&6; }
-      fi
-      ;;
-    *)
-                              want_optimize="yes"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      ;;
-  esac
-
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable strict compiler warnings" >&5
-$as_echo_n "checking whether to enable strict compiler warnings... " >&6; }
-  OPT_COMPILER_WARNINGS="default"
-  # Check whether --enable-warnings was given.
-if test "${enable_warnings+set}" = set; then :
-  enableval=$enable_warnings; OPT_COMPILER_WARNINGS=$enableval
-fi
-
-  case "$OPT_COMPILER_WARNINGS" in
-    no)
-            want_warnings="no"
-      ;;
-    default)
-                  want_warnings="$want_debug"
-      ;;
-    *)
-            want_warnings="yes"
-      ;;
-  esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_warnings" >&5
-$as_echo "$want_warnings" >&6; }
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable curl debug memory tracking" >&5
-$as_echo_n "checking whether to enable curl debug memory tracking... " >&6; }
-  OPT_CURLDEBUG_BUILD="default"
-  # Check whether --enable-curldebug was given.
-if test "${enable_curldebug+set}" = set; then :
-  enableval=$enable_curldebug; OPT_CURLDEBUG_BUILD=$enableval
-fi
-
-  case "$OPT_CURLDEBUG_BUILD" in
-    no)
-            want_curldebug="no"
-      ;;
-    default)
-            want_curldebug="no"
-      ;;
-    *)
-                                                      want_curldebug="yes"
-      ;;
-  esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_curldebug" >&5
-$as_echo "$want_curldebug" >&6; }
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable hiding of library internal symbols" >&5
-$as_echo_n "checking whether to enable hiding of library internal symbols... " >&6; }
-  OPT_SYMBOL_HIDING="default"
-  # Check whether --enable-symbol-hiding was given.
-if test "${enable_symbol_hiding+set}" = set; then :
-  enableval=$enable_symbol_hiding; OPT_SYMBOL_HIDING=$enableval
-fi
-
-  case "$OPT_SYMBOL_HIDING" in
-    no)
-                              want_symbol_hiding="no"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      ;;
-    default)
-                  want_symbol_hiding="yes"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      ;;
-    *)
-                        want_symbol_hiding="yes"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      ;;
-  esac
-
-
-
-
-
-# Extract the first word of "sed", so it can be a program name with args.
-set dummy sed; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_SED+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $SED in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_SED="$SED" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_SED" && ac_cv_path_SED="not_found"
-  ;;
-esac
-fi
-SED=$ac_cv_path_SED
-if test -n "$SED"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SED" >&5
-$as_echo "$SED" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-if test -z "$SED" || test "$SED" = "not_found"; then
-  as_fn_error $? "sed not found in PATH. Cannot continue without sed." "$LINENO" 5
-fi
-
-
-# Extract the first word of "grep", so it can be a program name with args.
-set dummy grep; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $GREP in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_GREP="$GREP" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_GREP="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_GREP" && ac_cv_path_GREP="not_found"
-  ;;
-esac
-fi
-GREP=$ac_cv_path_GREP
-if test -n "$GREP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GREP" >&5
-$as_echo "$GREP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-if test -z "$GREP" || test "$GREP" = "not_found"; then
-  as_fn_error $? "grep not found in PATH. Cannot continue without grep." "$LINENO" 5
-fi
-
-
-if echo a | ($GREP -E '(a|b)') >/dev/null 2>&1; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-  EGREP="$GREP -E"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $EGREP" >&5
-$as_echo "$EGREP" >&6; }
-else
-  # Extract the first word of "egrep", so it can be a program name with args.
-set dummy egrep; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $EGREP in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_EGREP="$EGREP" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_EGREP="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_EGREP" && ac_cv_path_EGREP="not_found"
-  ;;
-esac
-fi
-EGREP=$ac_cv_path_EGREP
-if test -n "$EGREP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $EGREP" >&5
-$as_echo "$EGREP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$EGREP" || test "$EGREP" = "not_found"; then
-  as_fn_error $? "egrep not found in PATH. Cannot continue without egrep." "$LINENO" 5
-fi
-
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $AR in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_AR="$AR" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_AR="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  ;;
-esac
-fi
-AR=$ac_cv_path_AR
-if test -n "$AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_path_AR"; then
-  ac_pt_AR=$AR
-  # Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $ac_pt_AR in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_ac_pt_AR="$ac_pt_AR" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_ac_pt_AR="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  ;;
-esac
-fi
-ac_pt_AR=$ac_cv_path_ac_pt_AR
-if test -n "$ac_pt_AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_AR" >&5
-$as_echo "$ac_pt_AR" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_pt_AR" = x; then
-    AR="not_found"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    AR=$ac_pt_AR
-  fi
-else
-  AR="$ac_cv_path_AR"
-fi
-
-if test -z "$AR" || test "$AR" = "not_found"; then
-  as_fn_error $? "ar not found in PATH. Cannot continue without ar." "$LINENO" 5
-fi
-
-
-if test -f ${srcdir}/ares_build.h; then
-  rm -f ${srcdir}/ares_build.h
-fi
-
-VERSION=`$SED -ne 's/^#define ARES_VERSION_STR "\(.*\)"/\1/p' ${srcdir}/ares_version.h`
-am__api_version='1.11'
-
-ac_aux_dir=
-for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
-  if test -f "$ac_dir/install-sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f "$ac_dir/install.sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  elif test -f "$ac_dir/shtool"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/shtool install -c"
-    break
-  fi
-done
-if test -z "$ac_aux_dir"; then
-  as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
-
-
-# Find a good install program.  We prefer a C program (faster),
-# so one script is as good as another.  But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
-if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in #((
-  ./ | .// | /[cC]/* | \
-  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-  ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
-  /usr/ucb/* ) ;;
-  *)
-    # OSF1 and SCO ODT 3.0 have their own names for install.
-    # Don't use installbsd from OSF since it installs stuff as root
-    # by default.
-    for ac_prog in ginstall scoinst install; do
-      for ac_exec_ext in '' $ac_executable_extensions; do
-	if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
-	  if test $ac_prog = install &&
-	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-	    # AIX install.  It has an incompatible calling convention.
-	    :
-	  elif test $ac_prog = install &&
-	    grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-	    # program-specific install script used by HP pwplus--don't use.
-	    :
-	  else
-	    rm -rf conftest.one conftest.two conftest.dir
-	    echo one > conftest.one
-	    echo two > conftest.two
-	    mkdir conftest.dir
-	    if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
-	      test -s conftest.one && test -s conftest.two &&
-	      test -s conftest.dir/conftest.one &&
-	      test -s conftest.dir/conftest.two
-	    then
-	      ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-	      break 3
-	    fi
-	  fi
-	fi
-      done
-    done
-    ;;
-esac
-
-  done
-IFS=$as_save_IFS
-
-rm -rf conftest.one conftest.two conftest.dir
-
-fi
-  if test "${ac_cv_path_install+set}" = set; then
-    INSTALL=$ac_cv_path_install
-  else
-    # As a last resort, use the slow shell script.  Don't cache a
-    # value for INSTALL within a source directory, because that will
-    # break other packages using the cache if that directory is
-    # removed, or if the value is a relative name.
-    INSTALL=$ac_install_sh
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
-$as_echo_n "checking whether build environment is sane... " >&6; }
-# Just in case
-sleep 1
-echo timestamp > conftest.file
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name.  Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
-  *[\\\"\#\$\&\'\`$am_lf]*)
-    as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;;
-esac
-case $srcdir in
-  *[\\\"\#\$\&\'\`$am_lf\ \	]*)
-    as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;;
-esac
-
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments.  Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
-   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
-   if test "$*" = "X"; then
-      # -L didn't work.
-      set X `ls -t "$srcdir/configure" conftest.file`
-   fi
-   rm -f conftest.file
-   if test "$*" != "X $srcdir/configure conftest.file" \
-      && test "$*" != "X conftest.file $srcdir/configure"; then
-
-      # If neither matched, then we have a broken ls.  This can happen
-      # if, for instance, CONFIG_SHELL is bash and it inherits a
-      # broken ls alias from the environment.  This has actually
-      # happened.  Such a system could not be considered "sane".
-      as_fn_error $? "ls -t appears to fail.  Make sure there is not a broken
-alias in your environment" "$LINENO" 5
-   fi
-
-   test "$2" = conftest.file
-   )
-then
-   # Ok.
-   :
-else
-   as_fn_error $? "newly created file is older than distributed files!
-Check your system clock" "$LINENO" 5
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-test "$program_prefix" != NONE &&
-  program_transform_name="s&^&$program_prefix&;$program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
-  program_transform_name="s&\$&$program_suffix&;$program_transform_name"
-# Double any \ or $.
-# By default was `s,x,x', remove it if useless.
-ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
-program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
-
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-
-if test x"${MISSING+set}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\	*)
-    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
-  *)
-    MISSING="\${SHELL} $am_aux_dir/missing" ;;
-  esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
-  am_missing_run="$MISSING --run "
-else
-  am_missing_run=
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
-fi
-
-if test x"${install_sh}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\	*)
-    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
-  *)
-    install_sh="\${SHELL} $am_aux_dir/install-sh"
-  esac
-fi
-
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'.  However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-if test "$cross_compiling" != no; then
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$STRIP"; then
-  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
-  ac_ct_STRIP=$STRIP
-  # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_STRIP"; then
-  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_STRIP="strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_STRIP" = x; then
-    STRIP=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    STRIP=$ac_ct_STRIP
-  fi
-else
-  STRIP="$ac_cv_prog_STRIP"
-fi
-
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
-$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
-if test -z "$MKDIR_P"; then
-  if ${ac_cv_path_mkdir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in mkdir gmkdir; do
-	 for ac_exec_ext in '' $ac_executable_extensions; do
-	   { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
-	   case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
-	     'mkdir (GNU coreutils) '* | \
-	     'mkdir (coreutils) '* | \
-	     'mkdir (fileutils) '4.1*)
-	       ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
-	       break 3;;
-	   esac
-	 done
-       done
-  done
-IFS=$as_save_IFS
-
-fi
-
-  test -d ./--version && rmdir ./--version
-  if test "${ac_cv_path_mkdir+set}" = set; then
-    MKDIR_P="$ac_cv_path_mkdir -p"
-  else
-    # As a last resort, use the slow shell script.  Don't cache a
-    # value for MKDIR_P within a source directory, because that will
-    # break other packages using the cache if that directory is
-    # removed, or if the value is a relative name.
-    MKDIR_P="$ac_install_sh -d"
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
-$as_echo "$MKDIR_P" >&6; }
-
-mkdir_p="$MKDIR_P"
-case $mkdir_p in
-  [\\/$]* | ?:[\\/]*) ;;
-  */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-
-for ac_prog in gawk mawk nawk awk
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AWK+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$AWK"; then
-  ac_cv_prog_AWK="$AWK" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_AWK="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-AWK=$ac_cv_prog_AWK
-if test -n "$AWK"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$AWK" && break
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
-	@echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
-  *@@@%%%=?*=@@@%%%*)
-    eval ac_cv_prog_make_${ac_make}_set=yes;;
-  *)
-    eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  SET_MAKE=
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
-  am__leading_dot=.
-else
-  am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
-  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
-  # is not polluted with repeated "-I."
-  am__isrc=' -I$(srcdir)'
-  # test to see if srcdir already configured
-  if test -f $srcdir/config.status; then
-    as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
-  fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
-  if (cygpath --version) >/dev/null 2>/dev/null; then
-    CYGPATH_W='cygpath -w'
-  else
-    CYGPATH_W=echo
-  fi
-fi
-
-
-# Define the identity of the package.
- PACKAGE=c-ares
- VERSION=$VERSION
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE "$PACKAGE"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define VERSION "$VERSION"
-_ACEOF
-
-# Some tools Automake needs.
-
-ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
-
-
-AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
-
-
-AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
-
-
-AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
-
-
-MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
-
-# We need awk for the "check" target.  The system "awk" is bad on
-# some platforms.
-# Always define AMTAR for backward compatibility.
-
-AMTAR=${AMTAR-"${am_missing_run}tar"}
-
-am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking c-ares version" >&5
-$as_echo_n "checking c-ares version... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $VERSION" >&5
-$as_echo "$VERSION" >&6; }
-
-
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
-  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
-  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
-  as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
-  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "x$host_alias" = x; then
-  ac_cv_host=$ac_cv_build
-else
-  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
-    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define OS "${host}"
-_ACEOF
-
-
-DEPDIR="${am__leading_dot}deps"
-
-ac_config_commands="$ac_config_commands depfiles"
-
-
-am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
-	@echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
-$as_echo_n "checking for style of include used by $am_make... " >&6; }
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
-  am__include=include
-  am__quote=
-  _am_result=GNU
-  ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
-   echo '.include "confinc"' > confmf
-   case `$am_make -s -f confmf 2> /dev/null` in #(
-   *the\ am__doit\ target*)
-     am__include=.include
-     am__quote="\""
-     _am_result=BSD
-     ;;
-   esac
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
-$as_echo "$_am_result" >&6; }
-rm -f confinc confmf
-
-# Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then :
-  enableval=$enable_dependency_tracking;
-fi
-
-if test "x$enable_dependency_tracking" != xno; then
-  am_depcomp="$ac_aux_dir/depcomp"
-  AMDEPBACKSLASH='\'
-fi
- if test "x$enable_dependency_tracking" != xno; then
-  AMDEP_TRUE=
-  AMDEP_FALSE='#'
-else
-  AMDEP_TRUE='#'
-  AMDEP_FALSE=
-fi
-
-
-
-  ac_save_CFLAGS="$CFLAGS"
-  ac_save_CPPFLAGS="$CPPFLAGS"
-  ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
-  ac_ct_CC=$CC
-  # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-else
-  CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
-          if test -n "$ac_tool_prefix"; then
-    # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  fi
-fi
-if test -z "$CC"; then
-  # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-  ac_prog_rejected=no
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
-       ac_prog_rejected=yes
-       continue
-     fi
-    ac_cv_prog_CC="cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
-  # We found a bogon in the path, so make sure we never use it.
-  set dummy $ac_cv_prog_CC
-  shift
-  if test $# != 0; then
-    # We chose a different compiler from the bogus one.
-    # However, it has the same basename, so the bogon will be chosen
-    # first if we set CC to just the basename; use the full file name.
-    shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
-  fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
-  if test -n "$ac_tool_prefix"; then
-  for ac_prog in cl.exe
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    test -n "$CC" && break
-  done
-fi
-if test -z "$CC"; then
-  ac_ct_CC=$CC
-  for ac_prog in cl.exe
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$ac_ct_CC" && break
-done
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-fi
-
-fi
-
-
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5; }
-
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
-  { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compiler $ac_option >&5") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    sed '10a\
-... rest of stderr output deleted ...
-         10q' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-  fi
-  rm -f conftest.er1 conftest.err
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-done
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-
-# The possible output files:
-ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
-
-ac_rmfiles=
-for ac_file in $ac_files
-do
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
-    * ) ac_rmfiles="$ac_rmfiles $ac_file";;
-  esac
-done
-rm -f $ac_rmfiles
-
-if { { ac_try="$ac_link_default"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link_default") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile.  We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
-	;;
-    [ab].out )
-	# We found the default executable, but exeext='' is most
-	# certainly right.
-	break;;
-    *.* )
-	if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
-	then :; else
-	   ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-	fi
-	# We set ac_cv_exeext here because the later test for it is not
-	# safe: cross compilers may not add the suffix if given an `-o'
-	# argument, so we may need to know it at that point already.
-	# Even if this section looks crufty: it has the advantage of
-	# actually working.
-	break;;
-    * )
-	break;;
-  esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
-  ac_file=''
-fi
-if test -z "$ac_file"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "C compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-ac_exeext=$ac_cv_exeext
-
-rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
-if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
-    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-	  break;;
-    * ) break;;
-  esac
-done
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdio.h>
-int main (void)
-{
-FILE *f = fopen ("conftest.out", "w");
- return ferror (f) || fclose (f) != 0;
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files="$ac_clean_files conftest.out"
-# Check that the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-if test "$cross_compiling" != yes; then
-  { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-  if { ac_try='./conftest$ac_cv_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then
-    cross_compiling=no
-  else
-    if test "$cross_compiling" = maybe; then
-	cross_compiling=yes
-    else
-	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5; }
-    fi
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { { ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compile") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  for ac_file in conftest.o conftest.obj conftest.*; do
-  test -f "$ac_file" || continue;
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
-    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
-       break;;
-  esac
-done
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-#ifndef __GNUC__
-       choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_compiler_gnu=yes
-else
-  ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
-  GCC=yes
-else
-  GCC=
-fi
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_save_c_werror_flag=$ac_c_werror_flag
-   ac_c_werror_flag=yes
-   ac_cv_prog_cc_g=no
-   CFLAGS="-g"
-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_g=yes
-else
-  CFLAGS=""
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
-  ac_c_werror_flag=$ac_save_c_werror_flag
-	 CFLAGS="-g"
-	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-   ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
-  CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
-  if test "$GCC" = yes; then
-    CFLAGS="-g -O2"
-  else
-    CFLAGS="-g"
-  fi
-else
-  if test "$GCC" = yes; then
-    CFLAGS="-O2"
-  else
-    CFLAGS=
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
-   inside strings and character constants.  */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int main (void)
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
- ;
- return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-	-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
-  CC="$ac_save_CC $ac_arg"
-  if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_c89=$ac_arg
-fi
-rm -f core conftest.err conftest.$ac_objext
-  test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
-  x)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
-  xno)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
-  *)
-    CC="$CC $ac_cv_prog_cc_c89"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
-
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-depcc="$CC"   am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if ${am_cv_CC_dependencies_compiler_type+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
-  # We make a subdir and do the tests there.  Otherwise we can end up
-  # making bogus files that we don't know about and never remove.  For
-  # instance it was reported that on HP-UX the gcc test will end up
-  # making a dummy file named `D' -- because `-MD' means `put the output
-  # in D'.
-  mkdir conftest.dir
-  # Copy depcomp to subdir because otherwise we won't find it if we're
-  # using a relative directory.
-  cp "$am_depcomp" conftest.dir
-  cd conftest.dir
-  # We will build objects and dependencies in a subdirectory because
-  # it helps to detect inapplicable dependency modes.  For instance
-  # both Tru64's cc and ICC support -MD to output dependencies as a
-  # side effect of compilation, but ICC will put the dependencies in
-  # the current directory while Tru64 will put them in the object
-  # directory.
-  mkdir sub
-
-  am_cv_CC_dependencies_compiler_type=none
-  if test "$am_compiler_list" = ""; then
-     am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
-  fi
-  am__universal=false
-  case " $depcc " in #(
-     *\ -arch\ *\ -arch\ *) am__universal=true ;;
-     esac
-
-  for depmode in $am_compiler_list; do
-    # Setup a source with many dependencies, because some compilers
-    # like to wrap large dependency lists on column 80 (with \), and
-    # we should not choose a depcomp mode which is confused by this.
-    #
-    # We need to recreate these files for each test, as the compiler may
-    # overwrite some of them when testing with obscure command lines.
-    # This happens at least with the AIX C compiler.
-    : > sub/conftest.c
-    for i in 1 2 3 4 5 6; do
-      echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
-      # Solaris 8's {/usr,}/bin/sh.
-      touch sub/conftst$i.h
-    done
-    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
-    # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.  Also, some Intel
-    # versions had trouble with output in subdirs
-    am__obj=sub/conftest.${OBJEXT-o}
-    am__minus_obj="-o $am__obj"
-    case $depmode in
-    gcc)
-      # This depmode causes a compiler race in universal mode.
-      test "$am__universal" = false || continue
-      ;;
-    nosideeffect)
-      # after this tag, mechanisms are not by side-effect, so they'll
-      # only be used when explicitly requested
-      if test "x$enable_dependency_tracking" = xyes; then
-	continue
-      else
-	break
-      fi
-      ;;
-    msvisualcpp | msvcmsys)
-      # This compiler won't grok `-c -o', but also, the minuso test has
-      # not run yet.  These depmodes are late enough in the game, and
-      # so weak that their functioning should not be impacted.
-      am__obj=conftest.${OBJEXT-o}
-      am__minus_obj=
-      ;;
-    none) break ;;
-    esac
-    if depmode=$depmode \
-       source=sub/conftest.c object=$am__obj \
-       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
-         >/dev/null 2>conftest.err &&
-       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
-       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
-      # icc doesn't choke on unknown options, it will just issue warnings
-      # or remarks (even with -Werror).  So we grep stderr for any message
-      # that says an option was ignored or not supported.
-      # When given -MP, icc 7.0 and 7.1 complain thusly:
-      #   icc: Command line warning: ignoring option '-M'; no argument required
-      # The diagnosis changed in icc 8.0:
-      #   icc: Command line remark: option '-MP' not supported
-      if (grep 'ignoring option' conftest.err ||
-          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
-        am_cv_CC_dependencies_compiler_type=$depmode
-        break
-      fi
-    fi
-  done
-
-  cd ..
-  rm -rf conftest.dir
-else
-  am_cv_CC_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
-CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
-
- if
-  test "x$enable_dependency_tracking" != xno \
-  && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
-  am__fastdepCC_TRUE=
-  am__fastdepCC_FALSE='#'
-else
-  am__fastdepCC_TRUE='#'
-  am__fastdepCC_FALSE=
-fi
-
-
-  CFLAGS="$ac_save_CFLAGS"
-  CPPFLAGS="$ac_save_CPPFLAGS"
-
-if test "x$CC" != xcc; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC and cc understand -c and -o together" >&5
-$as_echo_n "checking whether $CC and cc understand -c and -o together... " >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether cc understands -c and -o together" >&5
-$as_echo_n "checking whether cc understands -c and -o together... " >&6; }
-fi
-set dummy $CC; ac_cc=`$as_echo "$2" |
-		      sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'`
-if eval \${ac_cv_prog_cc_${ac_cc}_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-# Make sure it works both with $CC and with simple cc.
-# We do the test twice because some compilers refuse to overwrite an
-# existing .o file with -o, though they will create one.
-ac_try='$CC -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
-rm -f conftest2.*
-if { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } &&
-   test -f conftest2.$ac_objext && { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; };
-then
-  eval ac_cv_prog_cc_${ac_cc}_c_o=yes
-  if test "x$CC" != xcc; then
-    # Test first that cc exists at all.
-    if { ac_try='cc -c conftest.$ac_ext >&5'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then
-      ac_try='cc -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
-      rm -f conftest2.*
-      if { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } &&
-	 test -f conftest2.$ac_objext && { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; };
-      then
-	# cc works too.
-	:
-      else
-	# cc exists but doesn't like -o.
-	eval ac_cv_prog_cc_${ac_cc}_c_o=no
-      fi
-    fi
-  fi
-else
-  eval ac_cv_prog_cc_${ac_cc}_c_o=no
-fi
-rm -f core conftest*
-
-fi
-if eval test \$ac_cv_prog_cc_${ac_cc}_c_o = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define NO_MINUS_C_MINUS_O 1" >>confdefs.h
-
-fi
-
-# FIXME: we rely on the cache variable name because
-# there is no other way.
-set dummy $CC
-am_cc=`echo $2 | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'`
-eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o
-if test "$am_t" != yes; then
-   # Losing compiler, so override with the script.
-   # FIXME: It is wrong to rewrite CC.
-   # But if we don't then we get into trouble of one sort or another.
-   # A longer-term fix would be to have automake use am__CC in this case,
-   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
-   CC="$am_aux_dir/compile $CC"
-fi
-
-
-
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-  if ${ac_cv_prog_CPP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-		     Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-  break
-fi
-
-    done
-    ac_cv_prog_CPP=$CPP
-
-fi
-  CPP=$ac_cv_prog_CPP
-else
-  ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-		     Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$GREP"; then
-  ac_path_GREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in grep ggrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
-# Check for GNU ac_path_GREP and select it if it is found.
-  # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'GREP' >> "conftest.nl"
-    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_GREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_GREP="$ac_path_GREP"
-      ac_path_GREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_GREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_GREP"; then
-    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_GREP=$GREP
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
-   then ac_cv_path_EGREP="$GREP -E"
-   else
-     if test -z "$EGREP"; then
-  ac_path_EGREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in egrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
-  # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'EGREP' >> "conftest.nl"
-    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_EGREP="$ac_path_EGREP"
-      ac_path_EGREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_EGREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_EGREP"; then
-    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_EGREP=$EGREP
-fi
-
-   fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
-
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if OS is AIX (to define _ALL_SOURCE)" >&5
-$as_echo_n "checking if OS is AIX (to define _ALL_SOURCE)... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef _AIX
-   yes_this_is_aix
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes_this_is_aix" >/dev/null 2>&1; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    $as_echo "#define _ALL_SOURCE 1" >>confdefs.h
-
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-rm -f conftest*
-
-
-
-
-    #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _THREAD_SAFE is already defined" >&5
-$as_echo_n "checking if _THREAD_SAFE is already defined... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-#ifdef _THREAD_SAFE
-      int dummy=1;
-#else
-      force compilation error
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tmp_thread_safe_initially_defined="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tmp_thread_safe_initially_defined="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  #
-  if test "$tmp_thread_safe_initially_defined" = "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _THREAD_SAFE is actually needed" >&5
-$as_echo_n "checking if _THREAD_SAFE is actually needed... " >&6; }
-
-  case $host_os in
-    aix[123].* | aix4.[012].*)
-            tmp_need_thread_safe="no"
-      ;;
-    aix*)
-            tmp_need_thread_safe="yes"
-      ;;
-    *)
-      tmp_need_thread_safe="no"
-      ;;
-  esac
-
-    if test "$tmp_need_thread_safe" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _THREAD_SAFE is onwards defined" >&5
-$as_echo_n "checking if _THREAD_SAFE is onwards defined... " >&6; }
-  if test "$tmp_thread_safe_initially_defined" = "yes" ||
-    test "$tmp_need_thread_safe" = "yes"; then
-
-
-$as_echo "#define NEED_THREAD_SAFE 1" >>confdefs.h
-
-cat >>confdefs.h <<_EOF
-#ifndef _THREAD_SAFE
-#  define _THREAD_SAFE
-#endif
-_EOF
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-  #
-
-
-    #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _REENTRANT is already defined" >&5
-$as_echo_n "checking if _REENTRANT is already defined... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-#ifdef _REENTRANT
-      int dummy=1;
-#else
-      force compilation error
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tmp_reentrant_initially_defined="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tmp_reentrant_initially_defined="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  #
-  if test "$tmp_reentrant_initially_defined" = "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _REENTRANT is actually needed" >&5
-$as_echo_n "checking if _REENTRANT is actually needed... " >&6; }
-
-  case $host_os in
-    solaris*)
-      tmp_need_reentrant="yes"
-      ;;
-    *)
-      tmp_need_reentrant="no"
-      ;;
-  esac
-
-    if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <errno.h>
-
-int main (void)
-{
-
-      if(0 != errno)
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tmp_errno="yes"
-
-else
-
-    tmp_errno="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  if test "$tmp_errno" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <errno.h>
-
-int main (void)
-{
-
-#ifdef errno
-        int dummy=1;
-#else
-        force compilation error
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      tmp_errno="errno_macro_defined"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define _REENTRANT
-#include <errno.h>
-
-int main (void)
-{
-
-#ifdef errno
-          int dummy=1;
-#else
-          force compilation error
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        tmp_errno="errno_macro_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-
-    fi
-    if test "$tmp_need_reentrant" = "no"; then
-
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define gmtime_r innocuous_gmtime_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef gmtime_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char gmtime_r ();
-#if defined __stub_gmtime_r || defined __stub___gmtime_r
-choke me
-#endif
-
-int main (void)
-{
-return gmtime_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_gmtime_r="yes"
-
-else
-
-    tmp_gmtime_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_gmtime_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gmtime_r" >/dev/null 2>&1; then :
-
-      tmp_gmtime_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gmtime_r" >/dev/null 2>&1; then :
-
-        tmp_gmtime_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define localtime_r innocuous_localtime_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef localtime_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char localtime_r ();
-#if defined __stub_localtime_r || defined __stub___localtime_r
-choke me
-#endif
-
-int main (void)
-{
-return localtime_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_localtime_r="yes"
-
-else
-
-    tmp_localtime_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_localtime_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "localtime_r" >/dev/null 2>&1; then :
-
-      tmp_localtime_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "localtime_r" >/dev/null 2>&1; then :
-
-        tmp_localtime_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strerror_r innocuous_strerror_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strerror_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char strerror_r ();
-#if defined __stub_strerror_r || defined __stub___strerror_r
-choke me
-#endif
-
-int main (void)
-{
-return strerror_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_strerror_r="yes"
-
-else
-
-    tmp_strerror_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_strerror_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strerror_r" >/dev/null 2>&1; then :
-
-      tmp_strerror_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strerror_r" >/dev/null 2>&1; then :
-
-        tmp_strerror_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strtok_r innocuous_strtok_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strtok_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char strtok_r ();
-#if defined __stub_strtok_r || defined __stub___strtok_r
-choke me
-#endif
-
-int main (void)
-{
-return strtok_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_strtok_r="yes"
-
-else
-
-    tmp_strtok_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_strtok_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strtok_r" >/dev/null 2>&1; then :
-
-      tmp_strtok_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strtok_r" >/dev/null 2>&1; then :
-
-        tmp_strtok_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define inet_ntoa_r innocuous_inet_ntoa_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef inet_ntoa_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char inet_ntoa_r ();
-#if defined __stub_inet_ntoa_r || defined __stub___inet_ntoa_r
-choke me
-#endif
-
-int main (void)
-{
-return inet_ntoa_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_inet_ntoa_r="yes"
-
-else
-
-    tmp_inet_ntoa_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_inet_ntoa_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "inet_ntoa_r" >/dev/null 2>&1; then :
-
-      tmp_inet_ntoa_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "inet_ntoa_r" >/dev/null 2>&1; then :
-
-        tmp_inet_ntoa_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define gethostbyaddr_r innocuous_gethostbyaddr_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef gethostbyaddr_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyaddr_r ();
-#if defined __stub_gethostbyaddr_r || defined __stub___gethostbyaddr_r
-choke me
-#endif
-
-int main (void)
-{
-return gethostbyaddr_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_gethostbyaddr_r="yes"
-
-else
-
-    tmp_gethostbyaddr_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_gethostbyaddr_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyaddr_r" >/dev/null 2>&1; then :
-
-      tmp_gethostbyaddr_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyaddr_r" >/dev/null 2>&1; then :
-
-        tmp_gethostbyaddr_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define gethostbyname_r innocuous_gethostbyname_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef gethostbyname_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyname_r ();
-#if defined __stub_gethostbyname_r || defined __stub___gethostbyname_r
-choke me
-#endif
-
-int main (void)
-{
-return gethostbyname_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_gethostbyname_r="yes"
-
-else
-
-    tmp_gethostbyname_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_gethostbyname_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyname_r" >/dev/null 2>&1; then :
-
-      tmp_gethostbyname_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyname_r" >/dev/null 2>&1; then :
-
-        tmp_gethostbyname_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define getprotobyname_r innocuous_getprotobyname_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef getprotobyname_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char getprotobyname_r ();
-#if defined __stub_getprotobyname_r || defined __stub___getprotobyname_r
-choke me
-#endif
-
-int main (void)
-{
-return getprotobyname_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_getprotobyname_r="yes"
-
-else
-
-    tmp_getprotobyname_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_getprotobyname_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getprotobyname_r" >/dev/null 2>&1; then :
-
-      tmp_getprotobyname_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getprotobyname_r" >/dev/null 2>&1; then :
-
-        tmp_getprotobyname_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define getservbyport_r innocuous_getservbyport_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef getservbyport_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char getservbyport_r ();
-#if defined __stub_getservbyport_r || defined __stub___getservbyport_r
-choke me
-#endif
-
-int main (void)
-{
-return getservbyport_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_getservbyport_r="yes"
-
-else
-
-    tmp_getservbyport_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_getservbyport_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getservbyport_r" >/dev/null 2>&1; then :
-
-      tmp_getservbyport_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getservbyport_r" >/dev/null 2>&1; then :
-
-        tmp_getservbyport_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-
-    fi
-    if test "$tmp_need_reentrant" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _REENTRANT is onwards defined" >&5
-$as_echo_n "checking if _REENTRANT is onwards defined... " >&6; }
-  if test "$tmp_reentrant_initially_defined" = "yes" ||
-    test "$tmp_need_reentrant" = "yes"; then
-
-
-$as_echo "#define NEED_REENTRANT 1" >>confdefs.h
-
-cat >>confdefs.h <<_EOF
-#ifndef _REENTRANT
-#  define _REENTRANT
-#endif
-_EOF
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-  #
-
-
-# Check whether --enable-largefile was given.
-if test "${enable_largefile+set}" = set; then :
-  enableval=$enable_largefile;
-fi
-
-if test "$enable_largefile" != no; then
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
-$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
-if ${ac_cv_sys_largefile_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_sys_largefile_CC=no
-     if test "$GCC" != yes; then
-       ac_save_CC=$CC
-       while :; do
-	 # IRIX 6.2 and later do not support large files by default,
-	 # so use the C compiler's -n32 option if that helps.
-	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-		       && LARGE_OFF_T % 2147483647 == 1)
-		      ? 1 : -1];
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-	 if ac_fn_c_try_compile "$LINENO"; then :
-  break
-fi
-rm -f core conftest.err conftest.$ac_objext
-	 CC="$CC -n32"
-	 if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_largefile_CC=' -n32'; break
-fi
-rm -f core conftest.err conftest.$ac_objext
-	 break
-       done
-       CC=$ac_save_CC
-       rm -f conftest.$ac_ext
-    fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
-$as_echo "$ac_cv_sys_largefile_CC" >&6; }
-  if test "$ac_cv_sys_largefile_CC" != no; then
-    CC=$CC$ac_cv_sys_largefile_CC
-  fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
-if ${ac_cv_sys_file_offset_bits+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  while :; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-		       && LARGE_OFF_T % 2147483647 == 1)
-		      ? 1 : -1];
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_file_offset_bits=no; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#define _FILE_OFFSET_BITS 64
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-		       && LARGE_OFF_T % 2147483647 == 1)
-		      ? 1 : -1];
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_file_offset_bits=64; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  ac_cv_sys_file_offset_bits=unknown
-  break
-done
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
-$as_echo "$ac_cv_sys_file_offset_bits" >&6; }
-case $ac_cv_sys_file_offset_bits in #(
-  no | unknown) ;;
-  *)
-cat >>confdefs.h <<_ACEOF
-#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
-_ACEOF
-;;
-esac
-rm -rf conftest*
-  if test $ac_cv_sys_file_offset_bits = unknown; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
-$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
-if ${ac_cv_sys_large_files+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  while :; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-		       && LARGE_OFF_T % 2147483647 == 1)
-		      ? 1 : -1];
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_large_files=no; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#define _LARGE_FILES 1
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-		       && LARGE_OFF_T % 2147483647 == 1)
-		      ? 1 : -1];
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_large_files=1; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  ac_cv_sys_large_files=unknown
-  break
-done
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
-$as_echo "$ac_cv_sys_large_files" >&6; }
-case $ac_cv_sys_large_files in #(
-  no | unknown) ;;
-  *)
-cat >>confdefs.h <<_ACEOF
-#define _LARGE_FILES $ac_cv_sys_large_files
-_ACEOF
-;;
-esac
-rm -rf conftest*
-  fi
-fi
-
-
-case $host_os in
-  solaris*)
-
-$as_echo "#define ETC_INET 1" >>confdefs.h
-
-    ;;
-esac
-
-enable_win32_dll=yes
-
-case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
-set dummy ${ac_tool_prefix}as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AS+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$AS"; then
-  ac_cv_prog_AS="$AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_AS="${ac_tool_prefix}as"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-AS=$ac_cv_prog_AS
-if test -n "$AS"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
-$as_echo "$AS" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_AS"; then
-  ac_ct_AS=$AS
-  # Extract the first word of "as", so it can be a program name with args.
-set dummy as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AS+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_AS"; then
-  ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_AS="as"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_AS=$ac_cv_prog_ac_ct_AS
-if test -n "$ac_ct_AS"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
-$as_echo "$ac_ct_AS" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_AS" = x; then
-    AS="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    AS=$ac_ct_AS
-  fi
-else
-  AS="$ac_cv_prog_AS"
-fi
-
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$DLLTOOL"; then
-  ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-DLLTOOL=$ac_cv_prog_DLLTOOL
-if test -n "$DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_DLLTOOL"; then
-  ac_ct_DLLTOOL=$DLLTOOL
-  # Extract the first word of "dlltool", so it can be a program name with args.
-set dummy dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_DLLTOOL"; then
-  ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_DLLTOOL="dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
-if test -n "$ac_ct_DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_DLLTOOL" = x; then
-    DLLTOOL="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    DLLTOOL=$ac_ct_DLLTOOL
-  fi
-else
-  DLLTOOL="$ac_cv_prog_DLLTOOL"
-fi
-
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
-set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$OBJDUMP"; then
-  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-OBJDUMP=$ac_cv_prog_OBJDUMP
-if test -n "$OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OBJDUMP"; then
-  ac_ct_OBJDUMP=$OBJDUMP
-  # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_OBJDUMP"; then
-  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_OBJDUMP="objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
-if test -n "$ac_ct_OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_OBJDUMP" = x; then
-    OBJDUMP="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    OBJDUMP=$ac_ct_OBJDUMP
-  fi
-else
-  OBJDUMP="$ac_cv_prog_OBJDUMP"
-fi
-
-  ;;
-esac
-
-test -z "$AS" && AS=as
-
-
-
-
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-
-
-
-
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if arch-OS host is AMD64-Linux/FreeBSD (to build static libraries with PIC)" >&5
-$as_echo_n "checking if arch-OS host is AMD64-Linux/FreeBSD (to build static libraries with PIC)... " >&6; }
-case $host in
-  x86_64*linux*|amd64*freebsd*|ia64*freebsd*)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    with_pic=yes
-    ;;
-  *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ;;
-esac
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is icc (to build with PIC)" >&5
-$as_echo_n "checking if compiler is icc (to build with PIC)... " >&6; }
-case $CC in
-  icc | */icc)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    with_pic=yes
-    ;;
-  *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ;;
-esac
-
-case `pwd` in
-  *\ * | *\	*)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
-$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
-esac
-
-
-
-macro_version='2.4'
-macro_revision='1.3293'
-
-
-
-
-
-
-
-
-
-
-
-
-
-ltmain="$ac_aux_dir/ltmain.sh"
-
-# Backslashify metacharacters that are still active within
-# double-quoted strings.
-sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\(["`\\]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# Sed substitution to delay expansion of an escaped single quote.
-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
-
-# Sed substitution to avoid accidental globbing in evaled expressions
-no_glob_subst='s/\*/\\\*/g'
-
-ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
-ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
-$as_echo_n "checking how to print strings... " >&6; }
-# Test print first, because it will be a builtin if present.
-if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
-   test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
-  ECHO='print -r --'
-elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-  ECHO='printf %s\n'
-else
-  # Use this function as a fallback that always works.
-  func_fallback_echo ()
-  {
-    eval 'cat <<_LTECHO_EOF
-$1
-_LTECHO_EOF'
-  }
-  ECHO='func_fallback_echo'
-fi
-
-# func_echo_all arg...
-# Invoke $ECHO with all args, space-separated.
-func_echo_all ()
-{
-    $ECHO ""
-}
-
-case "$ECHO" in
-  printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5
-$as_echo "printf" >&6; } ;;
-  print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
-$as_echo "print -r" >&6; } ;;
-  *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5
-$as_echo "cat" >&6; } ;;
-esac
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if ${ac_cv_path_SED+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-            ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
-     for ac_i in 1 2 3 4 5 6 7; do
-       ac_script="$ac_script$as_nl$ac_script"
-     done
-     echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
-     { ac_script=; unset ac_script;}
-     if test -z "$SED"; then
-  ac_path_SED_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in sed gsed; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
-# Check for GNU ac_path_SED and select it if it is found.
-  # Check for GNU $ac_path_SED
-case `"$ac_path_SED" --version 2>&1` in
-*GNU*)
-  ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo '' >> "conftest.nl"
-    "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_SED_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_SED="$ac_path_SED"
-      ac_path_SED_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_SED_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_SED"; then
-    as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5
-  fi
-else
-  ac_cv_path_SED=$SED
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
- SED="$ac_cv_path_SED"
-  rm -f conftest.sed
-
-test -z "$SED" && SED=sed
-Xsed="$SED -e 1s/^X//"
-
-
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
-$as_echo_n "checking for fgrep... " >&6; }
-if ${ac_cv_path_FGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
-   then ac_cv_path_FGREP="$GREP -F"
-   else
-     if test -z "$FGREP"; then
-  ac_path_FGREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in fgrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_FGREP" && $as_test_x "$ac_path_FGREP"; } || continue
-# Check for GNU ac_path_FGREP and select it if it is found.
-  # Check for GNU $ac_path_FGREP
-case `"$ac_path_FGREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'FGREP' >> "conftest.nl"
-    "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_FGREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_FGREP="$ac_path_FGREP"
-      ac_path_FGREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_FGREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_FGREP"; then
-    as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_FGREP=$FGREP
-fi
-
-   fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
-$as_echo "$ac_cv_path_FGREP" >&6; }
- FGREP="$ac_cv_path_FGREP"
-
-
-test -z "$GREP" && GREP=grep
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-# Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
-  withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
-  with_gnu_ld=no
-fi
-
-ac_prog=ld
-if test "$GCC" = yes; then
-  # Check if gcc -print-prog-name=ld gives a path.
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
-  case $host in
-  *-*-mingw*)
-    # gcc leaves a trailing carriage return which upsets mingw
-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-  *)
-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-  esac
-  case $ac_prog in
-    # Accept absolute paths.
-    [\\/]* | ?:[\\/]*)
-      re_direlt='/[^/][^/]*/\.\./'
-      # Canonicalize the pathname of ld
-      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
-      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
-	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
-      done
-      test -z "$LD" && LD="$ac_prog"
-      ;;
-  "")
-    # If it fails, then pretend we aren't using GCC.
-    ac_prog=ld
-    ;;
-  *)
-    # If it is relative, then search for the first ld in PATH.
-    with_gnu_ld=unknown
-    ;;
-  esac
-elif test "$with_gnu_ld" = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
-fi
-if ${lt_cv_path_LD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$LD"; then
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-  for ac_dir in $PATH; do
-    IFS="$lt_save_ifs"
-    test -z "$ac_dir" && ac_dir=.
-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      lt_cv_path_LD="$ac_dir/$ac_prog"
-      # Check to see if the program is GNU ld.  I'd rather use --version,
-      # but apparently some variants of GNU ld only accept -v.
-      # Break only if it was the GNU/non-GNU ld that we prefer.
-      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
-      *GNU* | *'with BFD'*)
-	test "$with_gnu_ld" != no && break
-	;;
-      *)
-	test "$with_gnu_ld" != yes && break
-	;;
-      esac
-    fi
-  done
-  IFS="$lt_save_ifs"
-else
-  lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi
-fi
-
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${lt_cv_prog_gnu_ld+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  # I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
-  lt_cv_prog_gnu_ld=yes
-  ;;
-*)
-  lt_cv_prog_gnu_ld=no
-  ;;
-esac
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
-with_gnu_ld=$lt_cv_prog_gnu_ld
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
-$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
-if ${lt_cv_path_NM+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$NM"; then
-  # Let the user override the test.
-  lt_cv_path_NM="$NM"
-else
-  lt_nm_to_check="${ac_tool_prefix}nm"
-  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
-    lt_nm_to_check="$lt_nm_to_check nm"
-  fi
-  for lt_tmp_nm in $lt_nm_to_check; do
-    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
-      IFS="$lt_save_ifs"
-      test -z "$ac_dir" && ac_dir=.
-      tmp_nm="$ac_dir/$lt_tmp_nm"
-      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
-	# Check to see if the nm accepts a BSD-compat flag.
-	# Adding the `sed 1q' prevents false positives on HP-UX, which says:
-	#   nm: unknown option "B" ignored
-	# Tru64's nm complains that /dev/null is an invalid object file
-	case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
-	*/dev/null* | *'Invalid file or object type'*)
-	  lt_cv_path_NM="$tmp_nm -B"
-	  break
-	  ;;
-	*)
-	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
-	  */dev/null*)
-	    lt_cv_path_NM="$tmp_nm -p"
-	    break
-	    ;;
-	  *)
-	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
-	    continue # so that we can try to find one that supports BSD flags
-	    ;;
-	  esac
-	  ;;
-	esac
-      fi
-    done
-    IFS="$lt_save_ifs"
-  done
-  : ${lt_cv_path_NM=no}
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
-$as_echo "$lt_cv_path_NM" >&6; }
-if test "$lt_cv_path_NM" != "no"; then
-  NM="$lt_cv_path_NM"
-else
-  # Didn't find any BSD compatible name lister, look for dumpbin.
-  if test -n "$DUMPBIN"; then :
-    # Let the user override the test.
-  else
-    if test -n "$ac_tool_prefix"; then
-  for ac_prog in dumpbin "link -dump"
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DUMPBIN+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$DUMPBIN"; then
-  ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-DUMPBIN=$ac_cv_prog_DUMPBIN
-if test -n "$DUMPBIN"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
-$as_echo "$DUMPBIN" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    test -n "$DUMPBIN" && break
-  done
-fi
-if test -z "$DUMPBIN"; then
-  ac_ct_DUMPBIN=$DUMPBIN
-  for ac_prog in dumpbin "link -dump"
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_DUMPBIN"; then
-  ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
-if test -n "$ac_ct_DUMPBIN"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
-$as_echo "$ac_ct_DUMPBIN" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$ac_ct_DUMPBIN" && break
-done
-
-  if test "x$ac_ct_DUMPBIN" = x; then
-    DUMPBIN=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    DUMPBIN=$ac_ct_DUMPBIN
-  fi
-fi
-
-    case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
-    *COFF*)
-      DUMPBIN="$DUMPBIN -symbols"
-      ;;
-    *)
-      DUMPBIN=:
-      ;;
-    esac
-  fi
-
-  if test "$DUMPBIN" != ":"; then
-    NM="$DUMPBIN"
-  fi
-fi
-test -z "$NM" && NM=nm
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
-$as_echo_n "checking the name lister ($NM) interface... " >&6; }
-if ${lt_cv_nm_interface+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_nm_interface="BSD nm"
-  echo "int some_variable = 0;" > conftest.$ac_ext
-  (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5)
-  (eval "$ac_compile" 2>conftest.err)
-  cat conftest.err >&5
-  (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
-  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
-  cat conftest.err >&5
-  (eval echo "\"\$as_me:$LINENO: output\"" >&5)
-  cat conftest.out >&5
-  if $GREP 'External.*some_variable' conftest.out > /dev/null; then
-    lt_cv_nm_interface="MS dumpbin"
-  fi
-  rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
-$as_echo "$lt_cv_nm_interface" >&6; }
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
-$as_echo_n "checking whether ln -s works... " >&6; }
-LN_S=$as_ln_s
-if test "$LN_S" = "ln -s"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
-$as_echo "no, using $LN_S" >&6; }
-fi
-
-# find the maximum length of command line arguments
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
-$as_echo_n "checking the maximum length of command line arguments... " >&6; }
-if ${lt_cv_sys_max_cmd_len+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-    i=0
-  teststring="ABCD"
-
-  case $build_os in
-  msdosdjgpp*)
-    # On DJGPP, this test can blow up pretty badly due to problems in libc
-    # (any single argument exceeding 2000 bytes causes a buffer overrun
-    # during glob expansion).  Even if it were fixed, the result of this
-    # check would be larger than it should be.
-    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
-    ;;
-
-  gnu*)
-    # Under GNU Hurd, this test is not required because there is
-    # no limit to the length of command line arguments.
-    # Libtool will interpret -1 as no limit whatsoever
-    lt_cv_sys_max_cmd_len=-1;
-    ;;
-
-  cygwin* | mingw* | cegcc*)
-    # On Win9x/ME, this test blows up -- it succeeds, but takes
-    # about 5 minutes as the teststring grows exponentially.
-    # Worse, since 9x/ME are not pre-emptively multitasking,
-    # you end up with a "frozen" computer, even though with patience
-    # the test eventually succeeds (with a max line length of 256k).
-    # Instead, let's just punt: use the minimum linelength reported by
-    # all of the supported platforms: 8192 (on NT/2K/XP).
-    lt_cv_sys_max_cmd_len=8192;
-    ;;
-
-  mint*)
-    # On MiNT this can take a long time and run out of memory.
-    lt_cv_sys_max_cmd_len=8192;
-    ;;
-
-  amigaos*)
-    # On AmigaOS with pdksh, this test takes hours, literally.
-    # So we just punt and use a minimum line length of 8192.
-    lt_cv_sys_max_cmd_len=8192;
-    ;;
-
-  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
-    # This has been around since 386BSD, at least.  Likely further.
-    if test -x /sbin/sysctl; then
-      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
-    elif test -x /usr/sbin/sysctl; then
-      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
-    else
-      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs
-    fi
-    # And add a safety zone
-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
-    ;;
-
-  interix*)
-    # We know the value 262144 and hardcode it with a safety zone (like BSD)
-    lt_cv_sys_max_cmd_len=196608
-    ;;
-
-  osf*)
-    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
-    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
-    # nice to cause kernel panics so lets avoid the loop below.
-    # First set a reasonable default.
-    lt_cv_sys_max_cmd_len=16384
-    #
-    if test -x /sbin/sysconfig; then
-      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
-        *1*) lt_cv_sys_max_cmd_len=-1 ;;
-      esac
-    fi
-    ;;
-  sco3.2v5*)
-    lt_cv_sys_max_cmd_len=102400
-    ;;
-  sysv5* | sco5v6* | sysv4.2uw2*)
-    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
-    if test -n "$kargmax"; then
-      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[	 ]//'`
-    else
-      lt_cv_sys_max_cmd_len=32768
-    fi
-    ;;
-  *)
-    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
-    if test -n "$lt_cv_sys_max_cmd_len"; then
-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
-    else
-      # Make teststring a little bigger before we do anything with it.
-      # a 1K string should be a reasonable start.
-      for i in 1 2 3 4 5 6 7 8 ; do
-        teststring=$teststring$teststring
-      done
-      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
-      # If test is not a shell built-in, we'll probably end up computing a
-      # maximum length that is only half of the actual maximum length, but
-      # we can't tell.
-      while { test "X"`func_fallback_echo "$teststring$teststring" 2>/dev/null` \
-	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&
-	      test $i != 17 # 1/2 MB should be enough
-      do
-        i=`expr $i + 1`
-        teststring=$teststring$teststring
-      done
-      # Only check the string length outside the loop.
-      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
-      teststring=
-      # Add a significant safety factor because C++ compilers can tack on
-      # massive amounts of additional arguments before passing them to the
-      # linker.  It appears as though 1/2 is a usable value.
-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
-    fi
-    ;;
-  esac
-
-fi
-
-if test -n $lt_cv_sys_max_cmd_len ; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
-$as_echo "$lt_cv_sys_max_cmd_len" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
-$as_echo "none" >&6; }
-fi
-max_cmd_len=$lt_cv_sys_max_cmd_len
-
-
-
-
-
-
-: ${CP="cp -f"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5
-$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; }
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
-  test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,b/c, \
-    && eval 'test $(( 1 + 1 )) -eq 2 \
-    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
-  && xsi_shell=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5
-$as_echo "$xsi_shell" >&6; }
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5
-$as_echo_n "checking whether the shell understands \"+=\"... " >&6; }
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \
-    >/dev/null 2>&1 \
-  && lt_shell_append=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5
-$as_echo "$lt_shell_append" >&6; }
-
-
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  lt_unset=unset
-else
-  lt_unset=false
-fi
-
-
-
-
-
-# test EBCDIC or ASCII
-case `echo X|tr X '\101'` in
- A) # ASCII based system
-    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
-  lt_SP2NL='tr \040 \012'
-  lt_NL2SP='tr \015\012 \040\040'
-  ;;
- *) # EBCDIC based system
-  lt_SP2NL='tr \100 \n'
-  lt_NL2SP='tr \r\n \100\100'
-  ;;
-esac
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
-$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-if ${lt_cv_to_host_file_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $host in
-  *-*-mingw* )
-    case $build in
-      *-*-mingw* ) # actually msys
-        lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
-        ;;
-      *-*-cygwin* )
-        lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
-        ;;
-      * ) # otherwise, assume *nix
-        lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
-        ;;
-    esac
-    ;;
-  *-*-cygwin* )
-    case $build in
-      *-*-mingw* ) # actually msys
-        lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
-        ;;
-      *-*-cygwin* )
-        lt_cv_to_host_file_cmd=func_convert_file_noop
-        ;;
-      * ) # otherwise, assume *nix
-        lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
-        ;;
-    esac
-    ;;
-  * ) # unhandled hosts (and "normal" native builds)
-    lt_cv_to_host_file_cmd=func_convert_file_noop
-    ;;
-esac
-
-fi
-
-to_host_file_cmd=$lt_cv_to_host_file_cmd
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
-$as_echo "$lt_cv_to_host_file_cmd" >&6; }
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
-$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-if ${lt_cv_to_tool_file_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  #assume ordinary cross tools, or native build.
-lt_cv_to_tool_file_cmd=func_convert_file_noop
-case $host in
-  *-*-mingw* )
-    case $build in
-      *-*-mingw* ) # actually msys
-        lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
-        ;;
-    esac
-    ;;
-esac
-
-fi
-
-to_tool_file_cmd=$lt_cv_to_tool_file_cmd
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
-$as_echo "$lt_cv_to_tool_file_cmd" >&6; }
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
-$as_echo_n "checking for $LD option to reload object files... " >&6; }
-if ${lt_cv_ld_reload_flag+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_ld_reload_flag='-r'
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
-$as_echo "$lt_cv_ld_reload_flag" >&6; }
-reload_flag=$lt_cv_ld_reload_flag
-case $reload_flag in
-"" | " "*) ;;
-*) reload_flag=" $reload_flag" ;;
-esac
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-case $host_os in
-  cygwin* | mingw* | pw32* | cegcc*)
-    if test "$GCC" != yes; then
-      reload_cmds=false
-    fi
-    ;;
-  darwin*)
-    if test "$GCC" = yes; then
-      reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-    else
-      reload_cmds='$LD$reload_flag -o $output$reload_objs'
-    fi
-    ;;
-esac
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
-set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$OBJDUMP"; then
-  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-OBJDUMP=$ac_cv_prog_OBJDUMP
-if test -n "$OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OBJDUMP"; then
-  ac_ct_OBJDUMP=$OBJDUMP
-  # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_OBJDUMP"; then
-  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_OBJDUMP="objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
-if test -n "$ac_ct_OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_OBJDUMP" = x; then
-    OBJDUMP="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    OBJDUMP=$ac_ct_OBJDUMP
-  fi
-else
-  OBJDUMP="$ac_cv_prog_OBJDUMP"
-fi
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
-$as_echo_n "checking how to recognize dependent libraries... " >&6; }
-if ${lt_cv_deplibs_check_method+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_file_magic_cmd='$MAGIC_CMD'
-lt_cv_file_magic_test_file=
-lt_cv_deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-
-case $host_os in
-aix[4-9]*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-beos*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-bsdi[45]*)
-  lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
-  lt_cv_file_magic_cmd='/usr/bin/file -L'
-  lt_cv_file_magic_test_file=/shlib/libc.so
-  ;;
-
-cygwin*)
-  # func_win32_libid is a shell function defined in ltmain.sh
-  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
-  lt_cv_file_magic_cmd='func_win32_libid'
-  ;;
-
-mingw* | pw32*)
-  # Base MSYS/MinGW do not provide the 'file' command needed by
-  # func_win32_libid shell function, so use a weaker test based on 'objdump',
-  # unless we find 'file', for example because we are cross-compiling.
-  # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
-  if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
-    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
-    lt_cv_file_magic_cmd='func_win32_libid'
-  else
-    # Keep this pattern in sync with the one in func_win32_libid.
-    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
-    lt_cv_file_magic_cmd='$OBJDUMP -f'
-  fi
-  ;;
-
-cegcc*)
-  # use the weaker test based on 'objdump'. See mingw*.
-  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
-  lt_cv_file_magic_cmd='$OBJDUMP -f'
-  ;;
-
-darwin* | rhapsody*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-freebsd* | dragonfly*)
-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
-    case $host_cpu in
-    i*86 )
-      # Not sure whether the presence of OpenBSD here was a mistake.
-      # Let's accept both of them until this is cleared up.
-      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
-      lt_cv_file_magic_cmd=/usr/bin/file
-      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
-      ;;
-    esac
-  else
-    lt_cv_deplibs_check_method=pass_all
-  fi
-  ;;
-
-gnu*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-haiku*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-hpux10.20* | hpux11*)
-  lt_cv_file_magic_cmd=/usr/bin/file
-  case $host_cpu in
-  ia64*)
-    lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
-    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
-    ;;
-  hppa*64*)
-    lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]'
-    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
-    ;;
-  *)
-    lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library'
-    lt_cv_file_magic_test_file=/usr/lib/libc.sl
-    ;;
-  esac
-  ;;
-
-interix[3-9]*)
-  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
-  lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'
-  ;;
-
-irix5* | irix6* | nonstopux*)
-  case $LD in
-  *-32|*"-32 ") libmagic=32-bit;;
-  *-n32|*"-n32 ") libmagic=N32;;
-  *-64|*"-64 ") libmagic=64-bit;;
-  *) libmagic=never-match;;
-  esac
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-netbsd*)
-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
-  else
-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'
-  fi
-  ;;
-
-newos6*)
-  lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
-  lt_cv_file_magic_cmd=/usr/bin/file
-  lt_cv_file_magic_test_file=/usr/lib/libnls.so
-  ;;
-
-*nto* | *qnx*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-openbsd*)
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
-  else
-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
-  fi
-  ;;
-
-osf3* | osf4* | osf5*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-rdos*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-solaris*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-sysv4 | sysv4.3*)
-  case $host_vendor in
-  motorola)
-    lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
-    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
-    ;;
-  ncr)
-    lt_cv_deplibs_check_method=pass_all
-    ;;
-  sequent)
-    lt_cv_file_magic_cmd='/bin/file'
-    lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
-    ;;
-  sni)
-    lt_cv_file_magic_cmd='/bin/file'
-    lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"
-    lt_cv_file_magic_test_file=/lib/libc.so
-    ;;
-  siemens)
-    lt_cv_deplibs_check_method=pass_all
-    ;;
-  pc)
-    lt_cv_deplibs_check_method=pass_all
-    ;;
-  esac
-  ;;
-
-tpf*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
-$as_echo "$lt_cv_deplibs_check_method" >&6; }
-
-file_magic_glob=
-want_nocaseglob=no
-if test "$build" = "$host"; then
-  case $host_os in
-  mingw* | pw32*)
-    if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
-      want_nocaseglob=yes
-    else
-      file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"`
-    fi
-    ;;
-  esac
-fi
-
-file_magic_cmd=$lt_cv_file_magic_cmd
-deplibs_check_method=$lt_cv_deplibs_check_method
-test -z "$deplibs_check_method" && deplibs_check_method=unknown
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$DLLTOOL"; then
-  ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-DLLTOOL=$ac_cv_prog_DLLTOOL
-if test -n "$DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_DLLTOOL"; then
-  ac_ct_DLLTOOL=$DLLTOOL
-  # Extract the first word of "dlltool", so it can be a program name with args.
-set dummy dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_DLLTOOL"; then
-  ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_DLLTOOL="dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
-if test -n "$ac_ct_DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_DLLTOOL" = x; then
-    DLLTOOL="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    DLLTOOL=$ac_ct_DLLTOOL
-  fi
-else
-  DLLTOOL="$ac_cv_prog_DLLTOOL"
-fi
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
-$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_sharedlib_from_linklib_cmd='unknown'
-
-case $host_os in
-cygwin* | mingw* | pw32* | cegcc*)
-  # two different shell functions defined in ltmain.sh
-  # decide which to use based on capabilities of $DLLTOOL
-  case `$DLLTOOL --help 2>&1` in
-  *--identify-strict*)
-    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
-    ;;
-  *)
-    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
-    ;;
-  esac
-  ;;
-*)
-  # fallback: assume linklib IS sharedlib
-  lt_cv_sharedlib_from_linklib_cmd="$ECHO"
-  ;;
-esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
-$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
-sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
-test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
-  for ac_prog in ar
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$AR"; then
-  ac_cv_prog_AR="$AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-AR=$ac_cv_prog_AR
-if test -n "$AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    test -n "$AR" && break
-  done
-fi
-if test -z "$AR"; then
-  ac_ct_AR=$AR
-  for ac_prog in ar
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_AR"; then
-  ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_AR="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_AR=$ac_cv_prog_ac_ct_AR
-if test -n "$ac_ct_AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
-$as_echo "$ac_ct_AR" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$ac_ct_AR" && break
-done
-
-  if test "x$ac_ct_AR" = x; then
-    AR="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    AR=$ac_ct_AR
-  fi
-fi
-
-: ${AR=ar}
-: ${AR_FLAGS=cru}
-
-
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
-$as_echo_n "checking for archiver @FILE support... " >&6; }
-if ${lt_cv_ar_at_file+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_ar_at_file=no
-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  echo conftest.$ac_objext > conftest.lst
-      lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'
-      { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
-  (eval $lt_ar_try) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-      if test "$ac_status" -eq 0; then
-	# Ensure the archiver fails upon bogus file names.
-	rm -f conftest.$ac_objext libconftest.a
-	{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
-  (eval $lt_ar_try) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-	if test "$ac_status" -ne 0; then
-          lt_cv_ar_at_file=@
-        fi
-      fi
-      rm -f conftest.* libconftest.a
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
-$as_echo "$lt_cv_ar_at_file" >&6; }
-
-if test "x$lt_cv_ar_at_file" = xno; then
-  archiver_list_spec=
-else
-  archiver_list_spec=$lt_cv_ar_at_file
-fi
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$STRIP"; then
-  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
-  ac_ct_STRIP=$STRIP
-  # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_STRIP"; then
-  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_STRIP="strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_STRIP" = x; then
-    STRIP=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    STRIP=$ac_ct_STRIP
-  fi
-else
-  STRIP="$ac_cv_prog_STRIP"
-fi
-
-test -z "$STRIP" && STRIP=:
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$RANLIB"; then
-  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
-  ac_ct_RANLIB=$RANLIB
-  # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_RANLIB"; then
-  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_RANLIB="ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_RANLIB" = x; then
-    RANLIB=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    RANLIB=$ac_ct_RANLIB
-  fi
-else
-  RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-test -z "$RANLIB" && RANLIB=:
-
-
-
-
-
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-if test -n "$RANLIB"; then
-  case $host_os in
-  openbsd*)
-    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
-    ;;
-  *)
-    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
-    ;;
-  esac
-  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-fi
-
-case $host_os in
-  darwin*)
-    lock_old_archive_extraction=yes ;;
-  *)
-    lock_old_archive_extraction=no ;;
-esac
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
-$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
-if ${lt_cv_sys_global_symbol_pipe+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[BCDEGRST]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
-
-# Define system-specific variables.
-case $host_os in
-aix*)
-  symcode='[BCDT]'
-  ;;
-cygwin* | mingw* | pw32* | cegcc*)
-  symcode='[ABCDGISTW]'
-  ;;
-hpux*)
-  if test "$host_cpu" = ia64; then
-    symcode='[ABCDEGRST]'
-  fi
-  ;;
-irix* | nonstopux*)
-  symcode='[BCDEGRST]'
-  ;;
-osf*)
-  symcode='[BCDEGQRST]'
-  ;;
-solaris*)
-  symcode='[BDRT]'
-  ;;
-sco3.2v5*)
-  symcode='[DT]'
-  ;;
-sysv4.2uw2*)
-  symcode='[DT]'
-  ;;
-sysv5* | sco5v6* | unixware* | OpenUNIX*)
-  symcode='[ABDT]'
-  ;;
-sysv4)
-  symcode='[DFNSTU]'
-  ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-case `$NM -V 2>&1` in
-*GNU* | *'with BFD'*)
-  symcode='[ABCDGIRSTW]' ;;
-esac
-
-# Transform an extracted symbol line into a proper C declaration.
-# Some systems (esp. on ia64) link data and code symbols differently,
-# so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-
-# Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\)[ ]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\)[ ]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
-
-# Handle CRLF in mingw tool chain
-opt_cr=
-case $build_os in
-mingw*)
-  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
-  ;;
-esac
-
-# Try without a prefix underscore, then with it.
-for ac_symprfx in "" "_"; do
-
-  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
-  symxfrm="\\1 $ac_symprfx\\2 \\2"
-
-  # Write the raw and C identifiers.
-  if test "$lt_cv_nm_interface" = "MS dumpbin"; then
-    # Fake it for dumpbin and say T for any non-static function
-    # and D for any global variable.
-    # Also find C++ and __fastcall symbols from MSVC++,
-    # which start with @ or ?.
-    lt_cv_sys_global_symbol_pipe="$AWK '"\
-"     {last_section=section; section=\$ 3};"\
-"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
-"     \$ 0!~/External *\|/{next};"\
-"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
-"     {if(hide[section]) next};"\
-"     {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-"     {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-"     s[1]~/^[@?]/{print s[1], s[1]; next};"\
-"     s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
-"     ' prfx=^$ac_symprfx"
-  else
-    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
-  fi
-  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
-
-  # Check to see that the pipe works correctly.
-  pipe_works=no
-
-  rm -f conftest*
-  cat > conftest.$ac_ext <<_LT_EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(void);
-void nm_test_func(void){}
-#ifdef __cplusplus
-}
-#endif
-int main(){nm_test_var='a';nm_test_func();return(0);}
-_LT_EOF
-
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-    # Now try to grab the symbols.
-    nlist=conftest.nm
-    if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5
-  (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s "$nlist"; then
-      # Try sorting and uniquifying the output.
-      if sort "$nlist" | uniq > "$nlist"T; then
-	mv -f "$nlist"T "$nlist"
-      else
-	rm -f "$nlist"T
-      fi
-
-      # Make sure that we snagged all the symbols we need.
-      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
-	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
-	  cat <<_LT_EOF > conftest.$ac_ext
-/* 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 con'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
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-_LT_EOF
-	  # Now generate the symbol file.
-	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
-
-	  cat <<_LT_EOF >> conftest.$ac_ext
-
-/* The mapping between symbol names and symbols.  */
-LT_DLSYM_CONST struct {
-  const char *name;
-  void       *address;
-}
-lt__PROGRAM__LTX_preloaded_symbols[] =
-{
-  { "@PROGRAM@", (void *) 0 },
-_LT_EOF
-	  $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
-	  cat <<\_LT_EOF >> conftest.$ac_ext
-  {0, (void *) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
-  return lt__PROGRAM__LTX_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-_LT_EOF
-	  # Now try linking the two files.
-	  mv conftest.$ac_objext conftstm.$ac_objext
-	  lt_globsym_save_LIBS=$LIBS
-	  lt_globsym_save_CFLAGS=$CFLAGS
-	  LIBS="conftstm.$ac_objext"
-	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
-	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s conftest${ac_exeext}; then
-	    pipe_works=yes
-	  fi
-	  LIBS=$lt_globsym_save_LIBS
-	  CFLAGS=$lt_globsym_save_CFLAGS
-	else
-	  echo "cannot find nm_test_func in $nlist" >&5
-	fi
-      else
-	echo "cannot find nm_test_var in $nlist" >&5
-      fi
-    else
-      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
-    fi
-  else
-    echo "$progname: failed program was:" >&5
-    cat conftest.$ac_ext >&5
-  fi
-  rm -rf conftest* conftst*
-
-  # Do not use the global_symbol_pipe unless it works.
-  if test "$pipe_works" = yes; then
-    break
-  else
-    lt_cv_sys_global_symbol_pipe=
-  fi
-done
-
-fi
-
-if test -z "$lt_cv_sys_global_symbol_pipe"; then
-  lt_cv_sys_global_symbol_to_cdecl=
-fi
-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
-$as_echo "ok" >&6; }
-fi
-
-# Response file support.
-if test "$lt_cv_nm_interface" = "MS dumpbin"; then
-  nm_file_list_spec='@'
-elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then
-  nm_file_list_spec='@'
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
-$as_echo_n "checking for sysroot... " >&6; }
-
-# Check whether --with-sysroot was given.
-if test "${with_sysroot+set}" = set; then :
-  withval=$with_sysroot;
-else
-  with_sysroot=no
-fi
-
-
-lt_sysroot=
-case ${with_sysroot} in #(
- yes)
-   if test "$GCC" = yes; then
-     lt_sysroot=`$CC --print-sysroot 2>/dev/null`
-   fi
-   ;; #(
- /*)
-   lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
-   ;; #(
- no|'')
-   ;; #(
- *)
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
-$as_echo "${with_sysroot}" >&6; }
-   as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
-   ;;
-esac
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
-$as_echo "${lt_sysroot:-no}" >&6; }
-
-
-
-
-
-# Check whether --enable-libtool-lock was given.
-if test "${enable_libtool_lock+set}" = set; then :
-  enableval=$enable_libtool_lock;
-fi
-
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-
-# Some flags need to be propagated to the compiler or linker for good
-# libtool support.
-case $host in
-ia64-*-hpux*)
-  # Find out which ABI we are using.
-  echo 'int i;' > conftest.$ac_ext
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-    case `/usr/bin/file conftest.$ac_objext` in
-      *ELF-32*)
-	HPUX_IA64_MODE="32"
-	;;
-      *ELF-64*)
-	HPUX_IA64_MODE="64"
-	;;
-    esac
-  fi
-  rm -rf conftest*
-  ;;
-*-*-irix6*)
-  # Find out which ABI we are using.
-  echo '#line '$LINENO' "configure"' > conftest.$ac_ext
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-    if test "$lt_cv_prog_gnu_ld" = yes; then
-      case `/usr/bin/file conftest.$ac_objext` in
-	*32-bit*)
-	  LD="${LD-ld} -melf32bsmip"
-	  ;;
-	*N32*)
-	  LD="${LD-ld} -melf32bmipn32"
-	  ;;
-	*64-bit*)
-	  LD="${LD-ld} -melf64bmip"
-	;;
-      esac
-    else
-      case `/usr/bin/file conftest.$ac_objext` in
-	*32-bit*)
-	  LD="${LD-ld} -32"
-	  ;;
-	*N32*)
-	  LD="${LD-ld} -n32"
-	  ;;
-	*64-bit*)
-	  LD="${LD-ld} -64"
-	  ;;
-      esac
-    fi
-  fi
-  rm -rf conftest*
-  ;;
-
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
-  # Find out which ABI we are using.
-  echo 'int i;' > conftest.$ac_ext
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-    case `/usr/bin/file conftest.o` in
-      *32-bit*)
-	case $host in
-	  x86_64-*kfreebsd*-gnu)
-	    LD="${LD-ld} -m elf_i386_fbsd"
-	    ;;
-	  x86_64-*linux*)
-	    LD="${LD-ld} -m elf_i386"
-	    ;;
-	  ppc64-*linux*|powerpc64-*linux*)
-	    LD="${LD-ld} -m elf32ppclinux"
-	    ;;
-	  s390x-*linux*)
-	    LD="${LD-ld} -m elf_s390"
-	    ;;
-	  sparc64-*linux*)
-	    LD="${LD-ld} -m elf32_sparc"
-	    ;;
-	esac
-	;;
-      *64-bit*)
-	case $host in
-	  x86_64-*kfreebsd*-gnu)
-	    LD="${LD-ld} -m elf_x86_64_fbsd"
-	    ;;
-	  x86_64-*linux*)
-	    LD="${LD-ld} -m elf_x86_64"
-	    ;;
-	  ppc*-*linux*|powerpc*-*linux*)
-	    LD="${LD-ld} -m elf64ppc"
-	    ;;
-	  s390*-*linux*|s390*-*tpf*)
-	    LD="${LD-ld} -m elf64_s390"
-	    ;;
-	  sparc*-*linux*)
-	    LD="${LD-ld} -m elf64_sparc"
-	    ;;
-	esac
-	;;
-    esac
-  fi
-  rm -rf conftest*
-  ;;
-
-*-*-sco3.2v5*)
-  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-  SAVE_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS -belf"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
-$as_echo_n "checking whether the C compiler needs -belf... " >&6; }
-if ${lt_cv_cc_needs_belf+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  lt_cv_cc_needs_belf=yes
-else
-  lt_cv_cc_needs_belf=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-     ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
-$as_echo "$lt_cv_cc_needs_belf" >&6; }
-  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-    CFLAGS="$SAVE_CFLAGS"
-  fi
-  ;;
-sparc*-*solaris*)
-  # Find out which ABI we are using.
-  echo 'int i;' > conftest.$ac_ext
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-    case `/usr/bin/file conftest.o` in
-    *64-bit*)
-      case $lt_cv_prog_gnu_ld in
-      yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)
-	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
-	  LD="${LD-ld} -64"
-	fi
-	;;
-      esac
-      ;;
-    esac
-  fi
-  rm -rf conftest*
-  ;;
-esac
-
-need_locks="$enable_libtool_lock"
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.
-set dummy ${ac_tool_prefix}mt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$MANIFEST_TOOL"; then
-  ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL
-if test -n "$MANIFEST_TOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
-$as_echo "$MANIFEST_TOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_MANIFEST_TOOL"; then
-  ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL
-  # Extract the first word of "mt", so it can be a program name with args.
-set dummy mt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_MANIFEST_TOOL"; then
-  ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL
-if test -n "$ac_ct_MANIFEST_TOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
-$as_echo "$ac_ct_MANIFEST_TOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_MANIFEST_TOOL" = x; then
-    MANIFEST_TOOL=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL
-  fi
-else
-  MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL"
-fi
-
-test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
-$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-if ${lt_cv_path_mainfest_tool+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_path_mainfest_tool=no
-  echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5
-  $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
-  cat conftest.err >&5
-  if $GREP 'Manifest Tool' conftest.out > /dev/null; then
-    lt_cv_path_mainfest_tool=yes
-  fi
-  rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
-$as_echo "$lt_cv_path_mainfest_tool" >&6; }
-if test "x$lt_cv_path_mainfest_tool" != xyes; then
-  MANIFEST_TOOL=:
-fi
-
-
-
-
-
-
-  case $host_os in
-    rhapsody* | darwin*)
-    if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DSYMUTIL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$DSYMUTIL"; then
-  ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-DSYMUTIL=$ac_cv_prog_DSYMUTIL
-if test -n "$DSYMUTIL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
-$as_echo "$DSYMUTIL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_DSYMUTIL"; then
-  ac_ct_DSYMUTIL=$DSYMUTIL
-  # Extract the first word of "dsymutil", so it can be a program name with args.
-set dummy dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_DSYMUTIL"; then
-  ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
-if test -n "$ac_ct_DSYMUTIL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
-$as_echo "$ac_ct_DSYMUTIL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_DSYMUTIL" = x; then
-    DSYMUTIL=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    DSYMUTIL=$ac_ct_DSYMUTIL
-  fi
-else
-  DSYMUTIL="$ac_cv_prog_DSYMUTIL"
-fi
-
-    if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
-set dummy ${ac_tool_prefix}nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_NMEDIT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$NMEDIT"; then
-  ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-NMEDIT=$ac_cv_prog_NMEDIT
-if test -n "$NMEDIT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
-$as_echo "$NMEDIT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_NMEDIT"; then
-  ac_ct_NMEDIT=$NMEDIT
-  # Extract the first word of "nmedit", so it can be a program name with args.
-set dummy nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_NMEDIT"; then
-  ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_NMEDIT="nmedit"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
-if test -n "$ac_ct_NMEDIT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
-$as_echo "$ac_ct_NMEDIT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_NMEDIT" = x; then
-    NMEDIT=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    NMEDIT=$ac_ct_NMEDIT
-  fi
-else
-  NMEDIT="$ac_cv_prog_NMEDIT"
-fi
-
-    if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
-set dummy ${ac_tool_prefix}lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_LIPO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$LIPO"; then
-  ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-LIPO=$ac_cv_prog_LIPO
-if test -n "$LIPO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
-$as_echo "$LIPO" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_LIPO"; then
-  ac_ct_LIPO=$LIPO
-  # Extract the first word of "lipo", so it can be a program name with args.
-set dummy lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_LIPO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_LIPO"; then
-  ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_LIPO="lipo"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
-if test -n "$ac_ct_LIPO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
-$as_echo "$ac_ct_LIPO" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_LIPO" = x; then
-    LIPO=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    LIPO=$ac_ct_LIPO
-  fi
-else
-  LIPO="$ac_cv_prog_LIPO"
-fi
-
-    if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$OTOOL"; then
-  ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-OTOOL=$ac_cv_prog_OTOOL
-if test -n "$OTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
-$as_echo "$OTOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OTOOL"; then
-  ac_ct_OTOOL=$OTOOL
-  # Extract the first word of "otool", so it can be a program name with args.
-set dummy otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_OTOOL"; then
-  ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_OTOOL="otool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
-if test -n "$ac_ct_OTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
-$as_echo "$ac_ct_OTOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_OTOOL" = x; then
-    OTOOL=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    OTOOL=$ac_ct_OTOOL
-  fi
-else
-  OTOOL="$ac_cv_prog_OTOOL"
-fi
-
-    if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
-set dummy ${ac_tool_prefix}otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OTOOL64+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$OTOOL64"; then
-  ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-OTOOL64=$ac_cv_prog_OTOOL64
-if test -n "$OTOOL64"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
-$as_echo "$OTOOL64" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OTOOL64"; then
-  ac_ct_OTOOL64=$OTOOL64
-  # Extract the first word of "otool64", so it can be a program name with args.
-set dummy otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_OTOOL64"; then
-  ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_OTOOL64="otool64"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
-if test -n "$ac_ct_OTOOL64"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
-$as_echo "$ac_ct_OTOOL64" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_OTOOL64" = x; then
-    OTOOL64=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    OTOOL64=$ac_ct_OTOOL64
-  fi
-else
-  OTOOL64="$ac_cv_prog_OTOOL64"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
-$as_echo_n "checking for -single_module linker flag... " >&6; }
-if ${lt_cv_apple_cc_single_mod+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_apple_cc_single_mod=no
-      if test -z "${LT_MULTI_MODULE}"; then
-	# By default we will add the -single_module flag. You can override
-	# by either setting the environment variable LT_MULTI_MODULE
-	# non-empty at configure time, or by adding -multi_module to the
-	# link flags.
-	rm -rf libconftest.dylib*
-	echo "int foo(void){return 1;}" > conftest.c
-	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
--dynamiclib -Wl,-single_module conftest.c" >&5
-	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
-        _lt_result=$?
-	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
-	  lt_cv_apple_cc_single_mod=yes
-	else
-	  cat conftest.err >&5
-	fi
-	rm -rf libconftest.dylib*
-	rm -f conftest.*
-      fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
-$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
-$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
-if ${lt_cv_ld_exported_symbols_list+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_ld_exported_symbols_list=no
-      save_LDFLAGS=$LDFLAGS
-      echo "_main" > conftest.sym
-      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  lt_cv_ld_exported_symbols_list=yes
-else
-  lt_cv_ld_exported_symbols_list=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-	LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
-$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
-$as_echo_n "checking for -force_load linker flag... " >&6; }
-if ${lt_cv_ld_force_load+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_ld_force_load=no
-      cat > conftest.c << _LT_EOF
-int forced_loaded() { return 2;}
-_LT_EOF
-      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5
-      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
-      echo "$AR cru libconftest.a conftest.o" >&5
-      $AR cru libconftest.a conftest.o 2>&5
-      echo "$RANLIB libconftest.a" >&5
-      $RANLIB libconftest.a 2>&5
-      cat > conftest.c << _LT_EOF
-int main() { return 0;}
-_LT_EOF
-      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5
-      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
-      _lt_result=$?
-      if test -f conftest && test ! -s conftest.err && test $_lt_result = 0 && $GREP forced_load conftest 2>&1 >/dev/null; then
-	lt_cv_ld_force_load=yes
-      else
-	cat conftest.err >&5
-      fi
-        rm -f conftest.err libconftest.a conftest conftest.c
-        rm -rf conftest.dSYM
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
-$as_echo "$lt_cv_ld_force_load" >&6; }
-    case $host_os in
-    rhapsody* | darwin1.[012])
-      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
-    darwin1.*)
-      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
-    darwin*) # darwin 5.x on
-      # if running on 10.5 or later, the deployment target defaults
-      # to the OS version, if on x86, and 10.4, the deployment
-      # target defaults to 10.4. Don't you love it?
-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
-	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-	10.[012]*)
-	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
-	10.*)
-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-      esac
-    ;;
-  esac
-    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
-      _lt_dar_single_mod='$single_module'
-    fi
-    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
-      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
-    else
-      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
-    fi
-    if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
-      _lt_dsymutil='~$DSYMUTIL $lib || :'
-    else
-      _lt_dsymutil=
-    fi
-    ;;
-  esac
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-		   (('a' <= (c) && (c) <= 'i') \
-		     || ('j' <= (c) && (c) <= 'r') \
-		     || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-	|| toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-		  inttypes.h stdint.h unistd.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-for ac_header in dlfcn.h
-do :
-  ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
-"
-if test "x$ac_cv_header_dlfcn_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_DLFCN_H 1
-_ACEOF
-
-fi
-
-done
-
-
-
-
-
-# Set options
-
-
-
-        enable_dlopen=no
-
-
-
-            # Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then :
-  enableval=$enable_shared; p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_shared=yes ;;
-    no) enable_shared=no ;;
-    *)
-      enable_shared=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_shared=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_shared=yes
-fi
-
-
-
-
-
-
-
-
-
-  # Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then :
-  enableval=$enable_static; p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_static=yes ;;
-    no) enable_static=no ;;
-    *)
-     enable_static=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_static=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_static=yes
-fi
-
-
-
-
-
-
-
-
-
-
-# Check whether --with-pic was given.
-if test "${with_pic+set}" = set; then :
-  withval=$with_pic; pic_mode="$withval"
-else
-  pic_mode=default
-fi
-
-
-test -z "$pic_mode" && pic_mode=default
-
-
-
-
-
-
-
-  # Check whether --enable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then :
-  enableval=$enable_fast_install; p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_fast_install=yes ;;
-    no) enable_fast_install=no ;;
-    *)
-      enable_fast_install=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_fast_install=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_fast_install=yes
-fi
-
-
-
-
-
-
-
-
-
-
-
-# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
-
-# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-test -z "$LN_S" && LN_S="ln -s"
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-if test -n "${ZSH_VERSION+set}" ; then
-   setopt NO_GLOB_SUBST
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
-$as_echo_n "checking for objdir... " >&6; }
-if ${lt_cv_objdir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
-  lt_cv_objdir=.libs
-else
-  # MS-DOS does not allow filenames that begin with a dot.
-  lt_cv_objdir=_libs
-fi
-rmdir .libs 2>/dev/null
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
-$as_echo "$lt_cv_objdir" >&6; }
-objdir=$lt_cv_objdir
-
-
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define LT_OBJDIR "$lt_cv_objdir/"
-_ACEOF
-
-
-
-
-case $host_os in
-aix3*)
-  # 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 "X${COLLECT_NAMES+set}" != Xset; then
-    COLLECT_NAMES=
-    export COLLECT_NAMES
-  fi
-  ;;
-esac
-
-# Global variables:
-ofile=libtool
-can_build_shared=yes
-
-# All known linkers require a `.a' archive for static linking (except MSVC,
-# which needs '.lib').
-libext=a
-
-with_gnu_ld="$lt_cv_prog_gnu_ld"
-
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
-
-# Set sane defaults for various variables
-test -z "$CC" && CC=cc
-test -z "$LTCC" && LTCC=$CC
-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
-test -z "$LD" && LD=ld
-test -z "$ac_objext" && ac_objext=o
-
-for cc_temp in $compiler""; do
-  case $cc_temp in
-    compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
-    distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
-    \-*) ;;
-    *) break;;
-  esac
-done
-cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
-
-
-# Only perform the check for file, if the check method requires it
-test -z "$MAGIC_CMD" && MAGIC_CMD=file
-case $deplibs_check_method in
-file_magic*)
-  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
-$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
-if ${lt_cv_path_MAGIC_CMD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $MAGIC_CMD in
-[\\/*] |  ?:[\\/]*)
-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
-  ;;
-*)
-  lt_save_MAGIC_CMD="$MAGIC_CMD"
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-  ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
-  for ac_dir in $ac_dummy; do
-    IFS="$lt_save_ifs"
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/${ac_tool_prefix}file; then
-      lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
-      if test -n "$file_magic_test_file"; then
-	case $deplibs_check_method in
-	"file_magic "*)
-	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
-	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-	    $EGREP "$file_magic_regex" > /dev/null; then
-	    :
-	  else
-	    cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such.  This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem.  Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
-	  fi ;;
-	esac
-      fi
-      break
-    fi
-  done
-  IFS="$lt_save_ifs"
-  MAGIC_CMD="$lt_save_MAGIC_CMD"
-  ;;
-esac
-fi
-
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
-
-
-if test -z "$lt_cv_path_MAGIC_CMD"; then
-  if test -n "$ac_tool_prefix"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
-$as_echo_n "checking for file... " >&6; }
-if ${lt_cv_path_MAGIC_CMD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $MAGIC_CMD in
-[\\/*] |  ?:[\\/]*)
-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
-  ;;
-*)
-  lt_save_MAGIC_CMD="$MAGIC_CMD"
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-  ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
-  for ac_dir in $ac_dummy; do
-    IFS="$lt_save_ifs"
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/file; then
-      lt_cv_path_MAGIC_CMD="$ac_dir/file"
-      if test -n "$file_magic_test_file"; then
-	case $deplibs_check_method in
-	"file_magic "*)
-	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
-	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-	    $EGREP "$file_magic_regex" > /dev/null; then
-	    :
-	  else
-	    cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such.  This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem.  Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
-	  fi ;;
-	esac
-      fi
-      break
-    fi
-  done
-  IFS="$lt_save_ifs"
-  MAGIC_CMD="$lt_save_MAGIC_CMD"
-  ;;
-esac
-fi
-
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  else
-    MAGIC_CMD=:
-  fi
-fi
-
-  fi
-  ;;
-esac
-
-# Use C for the default configuration in the libtool script
-
-lt_save_CC="$CC"
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-# Source file extension for C test sources.
-ac_ext=c
-
-# Object file extension for compiled C test sources.
-objext=o
-objext=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='int main(){return(0);}'
-
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-# Save the default compiler, since it gets overwritten when the other
-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
-compiler_DEFAULT=$CC
-
-# save warnings/boilerplate of simple test code
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-
-
-## CAVEAT EMPTOR:
-## There is no encapsulation within the following macros, do not change
-## the running order or otherwise move them around unless you know exactly
-## what you are doing...
-if test -n "$compiler"; then
-
-lt_prog_compiler_no_builtin_flag=
-
-if test "$GCC" = yes; then
-  case $cc_basename in
-  nvcc*)
-    lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;;
-  *)
-    lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;
-  esac
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
-$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
-if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler_rtti_exceptions=no
-   ac_outfile=conftest.$ac_objext
-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-   lt_compiler_flag="-fno-rtti -fno-exceptions"
-   # Insert the option either (1) after the last *FLAGS variable, or
-   # (2) before a word containing "conftest.", or (3) at the end.
-   # Note that $ac_compile itself does not contain backslashes and begins
-   # with a dollar sign (not a hyphen), so the echo should work correctly.
-   # The option is referenced via a variable to avoid confusing sed.
-   lt_compile=`echo "$ac_compile" | $SED \
-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-   -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
-   (eval "$lt_compile" 2>conftest.err)
-   ac_status=$?
-   cat conftest.err >&5
-   echo "$as_me:$LINENO: \$? = $ac_status" >&5
-   if (exit $ac_status) && test -s "$ac_outfile"; then
-     # The compiler can only warn and ignore the option if not recognized
-     # So say no if there are warnings other than the usual output.
-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_cv_prog_compiler_rtti_exceptions=yes
-     fi
-   fi
-   $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
-$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
-
-if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then
-    lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
-else
-    :
-fi
-
-fi
-
-
-
-
-
-
-  lt_prog_compiler_wl=
-lt_prog_compiler_pic=
-lt_prog_compiler_static=
-
-
-  if test "$GCC" = yes; then
-    lt_prog_compiler_wl='-Wl,'
-    lt_prog_compiler_static='-static'
-
-    case $host_os in
-      aix*)
-      # All AIX code is PIC.
-      if test "$host_cpu" = ia64; then
-	# AIX 5 now supports IA64 processor
-	lt_prog_compiler_static='-Bstatic'
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            lt_prog_compiler_pic='-fPIC'
-        ;;
-      m68k)
-            # FIXME: we need at least 68020 code to build shared libraries, but
-            # adding the `-m68020' flag to GCC prevents building anything better,
-            # like `-m68040'.
-            lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
-        ;;
-      esac
-      ;;
-
-    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
-      # PIC is the default for these OSes.
-      ;;
-
-    mingw* | cygwin* | pw32* | os2* | cegcc*)
-      # This hack is so that the source file can tell whether it is being
-      # built for inclusion in a dll (and should export symbols for example).
-      # Although the cygwin gcc ignores -fPIC, still need this for old-style
-      # (--disable-auto-import) libraries
-      lt_prog_compiler_pic='-DDLL_EXPORT'
-      ;;
-
-    darwin* | rhapsody*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      lt_prog_compiler_pic='-fno-common'
-      ;;
-
-    haiku*)
-      # PIC is the default for Haiku.
-      # The "-static" flag exists, but is broken.
-      lt_prog_compiler_static=
-      ;;
-
-    hpux*)
-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
-      # sets the default TLS model and affects inlining.
-      case $host_cpu in
-      hppa*64*)
-	# +Z the default
-	;;
-      *)
-	lt_prog_compiler_pic='-fPIC'
-	;;
-      esac
-      ;;
-
-    interix[3-9]*)
-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
-      # Instead, we relocate shared libraries at runtime.
-      ;;
-
-    msdosdjgpp*)
-      # Just because we use GCC doesn't mean we suddenly get shared libraries
-      # on systems that don't support them.
-      lt_prog_compiler_can_build_shared=no
-      enable_shared=no
-      ;;
-
-    *nto* | *qnx*)
-      # QNX uses GNU C++, but need to define -shared option too, otherwise
-      # it will coredump.
-      lt_prog_compiler_pic='-fPIC -shared'
-      ;;
-
-    sysv4*MP*)
-      if test -d /usr/nec; then
-	lt_prog_compiler_pic=-Kconform_pic
-      fi
-      ;;
-
-    *)
-      lt_prog_compiler_pic='-fPIC'
-      ;;
-    esac
-
-    case $cc_basename in
-    nvcc*) # Cuda Compiler Driver 2.2
-      lt_prog_compiler_wl='-Xlinker '
-      lt_prog_compiler_pic='-Xcompiler -fPIC'
-      ;;
-    esac
-  else
-    # PORTME Check for flag to pass linker flags through the system compiler.
-    case $host_os in
-    aix*)
-      lt_prog_compiler_wl='-Wl,'
-      if test "$host_cpu" = ia64; then
-	# AIX 5 now supports IA64 processor
-	lt_prog_compiler_static='-Bstatic'
-      else
-	lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
-      fi
-      ;;
-
-    mingw* | cygwin* | pw32* | os2* | cegcc*)
-      # This hack is so that the source file can tell whether it is being
-      # built for inclusion in a dll (and should export symbols for example).
-      lt_prog_compiler_pic='-DDLL_EXPORT'
-      ;;
-
-    hpux9* | hpux10* | hpux11*)
-      lt_prog_compiler_wl='-Wl,'
-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
-      # not for PA HP-UX.
-      case $host_cpu in
-      hppa*64*|ia64*)
-	# +Z the default
-	;;
-      *)
-	lt_prog_compiler_pic='+Z'
-	;;
-      esac
-      # Is there a better lt_prog_compiler_static that works with the bundled CC?
-      lt_prog_compiler_static='${wl}-a ${wl}archive'
-      ;;
-
-    irix5* | irix6* | nonstopux*)
-      lt_prog_compiler_wl='-Wl,'
-      # PIC (with -KPIC) is the default.
-      lt_prog_compiler_static='-non_shared'
-      ;;
-
-    linux* | k*bsd*-gnu | kopensolaris*-gnu)
-      case $cc_basename in
-      # old Intel for x86_64 which still supported -KPIC.
-      ecc*)
-	lt_prog_compiler_wl='-Wl,'
-	lt_prog_compiler_pic='-KPIC'
-	lt_prog_compiler_static='-static'
-        ;;
-      # icc used to be incompatible with GCC.
-      # ICC 10 doesn't accept -KPIC any more.
-      icc* | ifort*)
-	lt_prog_compiler_wl='-Wl,'
-	lt_prog_compiler_pic='-fPIC'
-	lt_prog_compiler_static='-static'
-        ;;
-      # Lahey Fortran 8.1.
-      lf95*)
-	lt_prog_compiler_wl='-Wl,'
-	lt_prog_compiler_pic='--shared'
-	lt_prog_compiler_static='--static'
-	;;
-      nagfor*)
-	# NAG Fortran compiler
-	lt_prog_compiler_wl='-Wl,-Wl,,'
-	lt_prog_compiler_pic='-PIC'
-	lt_prog_compiler_static='-Bstatic'
-	;;
-      pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
-        # Portland Group compilers (*not* the Pentium gcc compiler,
-	# which looks to be a dead project)
-	lt_prog_compiler_wl='-Wl,'
-	lt_prog_compiler_pic='-fpic'
-	lt_prog_compiler_static='-Bstatic'
-        ;;
-      ccc*)
-        lt_prog_compiler_wl='-Wl,'
-        # All Alpha code is PIC.
-        lt_prog_compiler_static='-non_shared'
-        ;;
-      xl* | bgxl* | bgf* | mpixl*)
-	# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
-	lt_prog_compiler_wl='-Wl,'
-	lt_prog_compiler_pic='-qpic'
-	lt_prog_compiler_static='-qstaticlink'
-	;;
-      *)
-	case `$CC -V 2>&1 | sed 5q` in
-	*Sun\ F* | *Sun*Fortran*)
-	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
-	  lt_prog_compiler_pic='-KPIC'
-	  lt_prog_compiler_static='-Bstatic'
-	  lt_prog_compiler_wl=''
-	  ;;
-	*Sun\ C*)
-	  # Sun C 5.9
-	  lt_prog_compiler_pic='-KPIC'
-	  lt_prog_compiler_static='-Bstatic'
-	  lt_prog_compiler_wl='-Wl,'
-	  ;;
-	esac
-	;;
-      esac
-      ;;
-
-    newsos6)
-      lt_prog_compiler_pic='-KPIC'
-      lt_prog_compiler_static='-Bstatic'
-      ;;
-
-    *nto* | *qnx*)
-      # QNX uses GNU C++, but need to define -shared option too, otherwise
-      # it will coredump.
-      lt_prog_compiler_pic='-fPIC -shared'
-      ;;
-
-    osf3* | osf4* | osf5*)
-      lt_prog_compiler_wl='-Wl,'
-      # All OSF/1 code is PIC.
-      lt_prog_compiler_static='-non_shared'
-      ;;
-
-    rdos*)
-      lt_prog_compiler_static='-non_shared'
-      ;;
-
-    solaris*)
-      lt_prog_compiler_pic='-KPIC'
-      lt_prog_compiler_static='-Bstatic'
-      case $cc_basename in
-      f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
-	lt_prog_compiler_wl='-Qoption ld ';;
-      *)
-	lt_prog_compiler_wl='-Wl,';;
-      esac
-      ;;
-
-    sunos4*)
-      lt_prog_compiler_wl='-Qoption ld '
-      lt_prog_compiler_pic='-PIC'
-      lt_prog_compiler_static='-Bstatic'
-      ;;
-
-    sysv4 | sysv4.2uw2* | sysv4.3*)
-      lt_prog_compiler_wl='-Wl,'
-      lt_prog_compiler_pic='-KPIC'
-      lt_prog_compiler_static='-Bstatic'
-      ;;
-
-    sysv4*MP*)
-      if test -d /usr/nec ;then
-	lt_prog_compiler_pic='-Kconform_pic'
-	lt_prog_compiler_static='-Bstatic'
-      fi
-      ;;
-
-    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
-      lt_prog_compiler_wl='-Wl,'
-      lt_prog_compiler_pic='-KPIC'
-      lt_prog_compiler_static='-Bstatic'
-      ;;
-
-    unicos*)
-      lt_prog_compiler_wl='-Wl,'
-      lt_prog_compiler_can_build_shared=no
-      ;;
-
-    uts4*)
-      lt_prog_compiler_pic='-pic'
-      lt_prog_compiler_static='-Bstatic'
-      ;;
-
-    *)
-      lt_prog_compiler_can_build_shared=no
-      ;;
-    esac
-  fi
-
-case $host_os in
-  # For platforms which do not support PIC, -DPIC is meaningless:
-  *djgpp*)
-    lt_prog_compiler_pic=
-    ;;
-  *)
-    lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
-    ;;
-esac
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-if ${lt_cv_prog_compiler_pic+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
-$as_echo "$lt_cv_prog_compiler_pic" >&6; }
-lt_prog_compiler_pic=$lt_cv_prog_compiler_pic
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$lt_prog_compiler_pic"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
-if ${lt_cv_prog_compiler_pic_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler_pic_works=no
-   ac_outfile=conftest.$ac_objext
-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-   lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
-   # Insert the option either (1) after the last *FLAGS variable, or
-   # (2) before a word containing "conftest.", or (3) at the end.
-   # Note that $ac_compile itself does not contain backslashes and begins
-   # with a dollar sign (not a hyphen), so the echo should work correctly.
-   # The option is referenced via a variable to avoid confusing sed.
-   lt_compile=`echo "$ac_compile" | $SED \
-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-   -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
-   (eval "$lt_compile" 2>conftest.err)
-   ac_status=$?
-   cat conftest.err >&5
-   echo "$as_me:$LINENO: \$? = $ac_status" >&5
-   if (exit $ac_status) && test -s "$ac_outfile"; then
-     # The compiler can only warn and ignore the option if not recognized
-     # So say no if there are warnings other than the usual output.
-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_cv_prog_compiler_pic_works=yes
-     fi
-   fi
-   $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
-
-if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
-    case $lt_prog_compiler_pic in
-     "" | " "*) ;;
-     *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
-     esac
-else
-    lt_prog_compiler_pic=
-     lt_prog_compiler_can_build_shared=no
-fi
-
-fi
-
-
-
-
-
-
-
-
-
-
-
-#
-# Check to make sure the static flag actually works.
-#
-wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if ${lt_cv_prog_compiler_static_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler_static_works=no
-   save_LDFLAGS="$LDFLAGS"
-   LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
-   echo "$lt_simple_link_test_code" > conftest.$ac_ext
-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
-     # The linker can only warn and ignore the option if not recognized
-     # So say no if there are warnings
-     if test -s conftest.err; then
-       # Append any errors to the config.log.
-       cat conftest.err 1>&5
-       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
-       if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_cv_prog_compiler_static_works=yes
-       fi
-     else
-       lt_cv_prog_compiler_static_works=yes
-     fi
-   fi
-   $RM -r conftest*
-   LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
-$as_echo "$lt_cv_prog_compiler_static_works" >&6; }
-
-if test x"$lt_cv_prog_compiler_static_works" = xyes; then
-    :
-else
-    lt_prog_compiler_static=
-fi
-
-
-
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler_c_o=no
-   $RM -r conftest 2>/dev/null
-   mkdir conftest
-   cd conftest
-   mkdir out
-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
-   lt_compiler_flag="-o out/conftest2.$ac_objext"
-   # Insert the option either (1) after the last *FLAGS variable, or
-   # (2) before a word containing "conftest.", or (3) at the end.
-   # Note that $ac_compile itself does not contain backslashes and begins
-   # with a dollar sign (not a hyphen), so the echo should work correctly.
-   lt_compile=`echo "$ac_compile" | $SED \
-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-   -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
-   (eval "$lt_compile" 2>out/conftest.err)
-   ac_status=$?
-   cat out/conftest.err >&5
-   echo "$as_me:$LINENO: \$? = $ac_status" >&5
-   if (exit $ac_status) && test -s out/conftest2.$ac_objext
-   then
-     # The compiler can only warn and ignore the option if not recognized
-     # So say no if there are warnings
-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
-     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
-     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
-       lt_cv_prog_compiler_c_o=yes
-     fi
-   fi
-   chmod u+w . 2>&5
-   $RM conftest*
-   # SGI C++ compiler will create directory out/ii_files/ for
-   # template instantiation
-   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
-   $RM out/* && rmdir out
-   cd ..
-   $RM -r conftest
-   $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
-
-
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler_c_o=no
-   $RM -r conftest 2>/dev/null
-   mkdir conftest
-   cd conftest
-   mkdir out
-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
-   lt_compiler_flag="-o out/conftest2.$ac_objext"
-   # Insert the option either (1) after the last *FLAGS variable, or
-   # (2) before a word containing "conftest.", or (3) at the end.
-   # Note that $ac_compile itself does not contain backslashes and begins
-   # with a dollar sign (not a hyphen), so the echo should work correctly.
-   lt_compile=`echo "$ac_compile" | $SED \
-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-   -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
-   (eval "$lt_compile" 2>out/conftest.err)
-   ac_status=$?
-   cat out/conftest.err >&5
-   echo "$as_me:$LINENO: \$? = $ac_status" >&5
-   if (exit $ac_status) && test -s out/conftest2.$ac_objext
-   then
-     # The compiler can only warn and ignore the option if not recognized
-     # So say no if there are warnings
-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
-     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
-     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
-       lt_cv_prog_compiler_c_o=yes
-     fi
-   fi
-   chmod u+w . 2>&5
-   $RM conftest*
-   # SGI C++ compiler will create directory out/ii_files/ for
-   # template instantiation
-   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
-   $RM out/* && rmdir out
-   cd ..
-   $RM -r conftest
-   $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
-
-
-
-
-hard_links="nottested"
-if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then
-  # do not overwrite the value of need_locks provided by the user
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
-  hard_links=yes
-  $RM conftest*
-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  touch conftest.a
-  ln conftest.a conftest.b 2>&5 || hard_links=no
-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
-  if test "$hard_links" = no; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
-    need_locks=warn
-  fi
-else
-  need_locks=no
-fi
-
-
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
-
-  runpath_var=
-  allow_undefined_flag=
-  always_export_symbols=no
-  archive_cmds=
-  archive_expsym_cmds=
-  compiler_needs_object=no
-  enable_shared_with_static_runtimes=no
-  export_dynamic_flag_spec=
-  export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
-  hardcode_automatic=no
-  hardcode_direct=no
-  hardcode_direct_absolute=no
-  hardcode_libdir_flag_spec=
-  hardcode_libdir_flag_spec_ld=
-  hardcode_libdir_separator=
-  hardcode_minus_L=no
-  hardcode_shlibpath_var=unsupported
-  inherit_rpath=no
-  link_all_deplibs=unknown
-  module_cmds=
-  module_expsym_cmds=
-  old_archive_from_new_cmds=
-  old_archive_from_expsyms_cmds=
-  thread_safe_flag_spec=
-  whole_archive_flag_spec=
-  # include_expsyms should be a list of space-separated symbols to be *always*
-  # included in the symbol list
-  include_expsyms=
-  # exclude_expsyms can be an extended regexp of symbols to exclude
-  # it will be wrapped by ` (' and `)$', so one must not match beginning or
-  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-  # as well as any symbol that contains `d'.
-  exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
-  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
-  # platforms (ab)use it in PIC code, but their linkers get confused if
-  # the symbol is explicitly referenced.  Since portable code cannot
-  # rely on this symbol name, it's probably fine to never include it in
-  # preloaded symbol tables.
-  # Exclude shared library initialization/finalization symbols.
-  extract_expsyms_cmds=
-
-  case $host_os in
-  cygwin* | mingw* | pw32* | cegcc*)
-    # FIXME: the MSVC++ port hasn't been tested in a loooong time
-    # When not using gcc, we currently assume that we are using
-    # Microsoft Visual C++.
-    if test "$GCC" != yes; then
-      with_gnu_ld=no
-    fi
-    ;;
-  interix*)
-    # we just hope/assume this is gcc and not c89 (= MSVC++)
-    with_gnu_ld=yes
-    ;;
-  openbsd*)
-    with_gnu_ld=no
-    ;;
-  esac
-
-  ld_shlibs=yes
-
-  # On some targets, GNU ld is compatible enough with the native linker
-  # that we're better off using the native interface for both.
-  lt_use_gnu_ld_interface=no
-  if test "$with_gnu_ld" = yes; then
-    case $host_os in
-      aix*)
-	# The AIX port of GNU ld has always aspired to compatibility
-	# with the native linker.  However, as the warning in the GNU ld
-	# block says, versions before 2.19.5* couldn't really create working
-	# shared libraries, regardless of the interface used.
-	case `$LD -v 2>&1` in
-	  *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
-	  *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;;
-	  *\ \(GNU\ Binutils\)\ [3-9]*) ;;
-	  *)
-	    lt_use_gnu_ld_interface=yes
-	    ;;
-	esac
-	;;
-      *)
-	lt_use_gnu_ld_interface=yes
-	;;
-    esac
-  fi
-
-  if test "$lt_use_gnu_ld_interface" = yes; then
-    # If archive_cmds runs LD, not CC, wlarc should be empty
-    wlarc='${wl}'
-
-    # Set some defaults for GNU ld with shared library support. These
-    # are reset later if shared libraries are not supported. Putting them
-    # here allows them to be overridden if necessary.
-    runpath_var=LD_RUN_PATH
-    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-    export_dynamic_flag_spec='${wl}--export-dynamic'
-    # ancient GNU ld didn't support --whole-archive et. al.
-    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
-      whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-    else
-      whole_archive_flag_spec=
-    fi
-    supports_anon_versioning=no
-    case `$LD -v 2>&1` in
-      *GNU\ gold*) supports_anon_versioning=yes ;;
-      *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
-      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
-      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
-      *\ 2.11.*) ;; # other 2.11 versions
-      *) supports_anon_versioning=yes ;;
-    esac
-
-    # See if GNU ld supports shared libraries.
-    case $host_os in
-    aix[3-9]*)
-      # On AIX/PPC, the GNU linker is very broken
-      if test "$host_cpu" != ia64; then
-	ld_shlibs=no
-	cat <<_LT_EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.19, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support.  If you
-*** really care for shared libraries, you may want to install binutils
-*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
-*** You will then need to restart the configuration process.
-
-_LT_EOF
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-            archive_expsym_cmds=''
-        ;;
-      m68k)
-            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-            hardcode_libdir_flag_spec='-L$libdir'
-            hardcode_minus_L=yes
-        ;;
-      esac
-      ;;
-
-    beos*)
-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	allow_undefined_flag=unsupported
-	# Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
-	# support --undefined.  This deserves some investigation.  FIXME
-	archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-      else
-	ld_shlibs=no
-      fi
-      ;;
-
-    cygwin* | mingw* | pw32* | cegcc*)
-      # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
-      # as there is no search path for DLLs.
-      hardcode_libdir_flag_spec='-L$libdir'
-      export_dynamic_flag_spec='${wl}--export-all-symbols'
-      allow_undefined_flag=unsupported
-      always_export_symbols=no
-      enable_shared_with_static_runtimes=yes
-      export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'
-      exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'
-
-      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
-        archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-	# If the export-symbols file already is a .def file (1st line
-	# is EXPORTS), use it as is; otherwise, prepend...
-	archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	  cp $export_symbols $output_objdir/$soname.def;
-	else
-	  echo EXPORTS > $output_objdir/$soname.def;
-	  cat $export_symbols >> $output_objdir/$soname.def;
-	fi~
-	$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-      else
-	ld_shlibs=no
-      fi
-      ;;
-
-    haiku*)
-      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-      link_all_deplibs=yes
-      ;;
-
-    interix[3-9]*)
-      hardcode_direct=no
-      hardcode_shlibpath_var=no
-      hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-      export_dynamic_flag_spec='${wl}-E'
-      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
-      # Instead, shared libraries are loaded at an image base (0x10000000 by
-      # default) and relocated if they conflict, which is a slow very memory
-      # consuming and fragmenting process.  To avoid this, we pick a random,
-      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
-      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
-      archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      ;;
-
-    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
-      tmp_diet=no
-      if test "$host_os" = linux-dietlibc; then
-	case $cc_basename in
-	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
-	esac
-      fi
-      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
-	 && test "$tmp_diet" = no
-      then
-	tmp_addflag=' $pic_flag'
-	tmp_sharedflag='-shared'
-	case $cc_basename,$host_cpu in
-        pgcc*)				# Portland Group C compiler
-	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  tmp_addflag=' $pic_flag'
-	  ;;
-	pgf77* | pgf90* | pgf95* | pgfortran*)
-					# Portland Group f77 and f90 compilers
-	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  tmp_addflag=' $pic_flag -Mnomain' ;;
-	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
-	  tmp_addflag=' -i_dynamic' ;;
-	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64
-	  tmp_addflag=' -i_dynamic -nofor_main' ;;
-	ifc* | ifort*)			# Intel Fortran compiler
-	  tmp_addflag=' -nofor_main' ;;
-	lf95*)				# Lahey Fortran 8.1
-	  whole_archive_flag_spec=
-	  tmp_sharedflag='--shared' ;;
-	xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)
-	  tmp_sharedflag='-qmkshrobj'
-	  tmp_addflag= ;;
-	nvcc*)	# Cuda Compiler Driver 2.2
-	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  compiler_needs_object=yes
-	  ;;
-	esac
-	case `$CC -V 2>&1 | sed 5q` in
-	*Sun\ C*)			# Sun C 5.9
-	  whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  compiler_needs_object=yes
-	  tmp_sharedflag='-G' ;;
-	*Sun\ F*)			# Sun Fortran 8.3
-	  tmp_sharedflag='-G' ;;
-	esac
-	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-
-        if test "x$supports_anon_versioning" = xyes; then
-          archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
-	    cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-	    echo "local: *; };" >> $output_objdir/$libname.ver~
-	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
-        fi
-
-	case $cc_basename in
-	xlf* | bgf* | bgxlf* | mpixlf*)
-	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
-	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
-	  hardcode_libdir_flag_spec=
-	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
-	  archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
-	  if test "x$supports_anon_versioning" = xyes; then
-	    archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
-	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-	      echo "local: *; };" >> $output_objdir/$libname.ver~
-	      $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
-	  fi
-	  ;;
-	esac
-      else
-        ld_shlibs=no
-      fi
-      ;;
-
-    netbsd*)
-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
-	wlarc=
-      else
-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-      fi
-      ;;
-
-    solaris*)
-      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
-	ld_shlibs=no
-	cat <<_LT_EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems.  Therefore, libtool
-*** is disabling shared libraries support.  We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer.  Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
-      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-      else
-	ld_shlibs=no
-      fi
-      ;;
-
-    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
-      case `$LD -v 2>&1` in
-        *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
-	ld_shlibs=no
-	cat <<_LT_EOF 1>&2
-
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
-*** reliably create shared libraries on SCO systems.  Therefore, libtool
-*** is disabling shared libraries support.  We urge you to upgrade GNU
-*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
-	;;
-	*)
-	  # For security reasons, it is highly recommended that you always
-	  # use absolute paths for naming shared libraries, and exclude the
-	  # DT_RUNPATH tag from executables and libraries.  But doing so
-	  # requires that you compile everything twice, which is a pain.
-	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-	    archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	    archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-	  else
-	    ld_shlibs=no
-	  fi
-	;;
-      esac
-      ;;
-
-    sunos4*)
-      archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-      wlarc=
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      ;;
-
-    *)
-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-      else
-	ld_shlibs=no
-      fi
-      ;;
-    esac
-
-    if test "$ld_shlibs" = no; then
-      runpath_var=
-      hardcode_libdir_flag_spec=
-      export_dynamic_flag_spec=
-      whole_archive_flag_spec=
-    fi
-  else
-    # PORTME fill in a description of your system's linker (not GNU ld)
-    case $host_os in
-    aix3*)
-      allow_undefined_flag=unsupported
-      always_export_symbols=yes
-      archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
-      # Note: this linker hardcodes the directories in LIBPATH if there
-      # are no directories specified by -L.
-      hardcode_minus_L=yes
-      if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
-	# Neither direct hardcoding nor static linking is supported with a
-	# broken collect2.
-	hardcode_direct=unsupported
-      fi
-      ;;
-
-    aix[4-9]*)
-      if test "$host_cpu" = ia64; then
-	# On IA64, the linker does run time linking by default, so we don't
-	# have to do anything special.
-	aix_use_runtimelinking=no
-	exp_sym_flag='-Bexport'
-	no_entry_flag=""
-      else
-	# If we're using GNU nm, then we don't want the "-C" option.
-	# -C means demangle to AIX nm, but means don't demangle with GNU nm
-	# Also, AIX nm treats weak defined symbols like other global
-	# defined symbols, whereas GNU nm marks them as "W".
-	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
-	  export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
-	else
-	  export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
-	fi
-	aix_use_runtimelinking=no
-
-	# Test if we are trying to use run time linking or normal
-	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
-	# need to do runtime linking.
-	case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
-	  for ld_flag in $LDFLAGS; do
-	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
-	    aix_use_runtimelinking=yes
-	    break
-	  fi
-	  done
-	  ;;
-	esac
-
-	exp_sym_flag='-bexport'
-	no_entry_flag='-bnoentry'
-      fi
-
-      # When large executables or shared objects are built, AIX ld can
-      # have problems creating the table of contents.  If linking a library
-      # or program results in "error TOC overflow" add -mminimal-toc to
-      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
-      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
-      archive_cmds=''
-      hardcode_direct=yes
-      hardcode_direct_absolute=yes
-      hardcode_libdir_separator=':'
-      link_all_deplibs=yes
-      file_list_spec='${wl}-f,'
-
-      if test "$GCC" = yes; then
-	case $host_os in aix4.[012]|aix4.[012].*)
-	# We only want to do this on AIX 4.2 and lower, the check
-	# below for broken collect2 doesn't work under 4.3+
-	  collect2name=`${CC} -print-prog-name=collect2`
-	  if test -f "$collect2name" &&
-	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
-	  then
-	  # We have reworked collect2
-	  :
-	  else
-	  # We have old collect2
-	  hardcode_direct=unsupported
-	  # It fails to find uninstalled libraries when the uninstalled
-	  # path is not listed in the libpath.  Setting hardcode_minus_L
-	  # to unsupported forces relinking
-	  hardcode_minus_L=yes
-	  hardcode_libdir_flag_spec='-L$libdir'
-	  hardcode_libdir_separator=
-	  fi
-	  ;;
-	esac
-	shared_flag='-shared'
-	if test "$aix_use_runtimelinking" = yes; then
-	  shared_flag="$shared_flag "'${wl}-G'
-	fi
-      else
-	# not using gcc
-	if test "$host_cpu" = ia64; then
-	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
-	# chokes on -Wl,-G. The following line is correct:
-	  shared_flag='-G'
-	else
-	  if test "$aix_use_runtimelinking" = yes; then
-	    shared_flag='${wl}-G'
-	  else
-	    shared_flag='${wl}-bM:SRE'
-	  fi
-	fi
-      fi
-
-      export_dynamic_flag_spec='${wl}-bexpall'
-      # It seems that -bexpall does not export symbols beginning with
-      # underscore (_), so it is better to generate a list of symbols to export.
-      always_export_symbols=yes
-      if test "$aix_use_runtimelinking" = yes; then
-	# Warning - without using the other runtime loading flags (-brtl),
-	# -berok will link without error, but may produce a broken library.
-	allow_undefined_flag='-berok'
-        # Determine the default libpath from the value encoded in an
-        # empty executable.
-        if test "${lt_cv_aix_libpath+set}" = set; then
-  aix_libpath=$lt_cv_aix_libpath
-else
-  if ${lt_cv_aix_libpath_+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-  lt_aix_libpath_sed='
-      /Import File Strings/,/^$/ {
-	  /^0/ {
-	      s/^0  *\([^ ]*\) *$/\1/
-	      p
-	  }
-      }'
-  lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-  # Check for a 64-bit object if we didn't find anything.
-  if test -z "$lt_cv_aix_libpath_"; then
-    lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-  fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test -z "$lt_cv_aix_libpath_"; then
-    lt_cv_aix_libpath_="/usr/lib:/lib"
-  fi
-
-fi
-
-  aix_libpath=$lt_cv_aix_libpath_
-fi
-
-        hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
-        archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-      else
-	if test "$host_cpu" = ia64; then
-	  hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
-	  allow_undefined_flag="-z nodefs"
-	  archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
-	else
-	 # Determine the default libpath from the value encoded in an
-	 # empty executable.
-	 if test "${lt_cv_aix_libpath+set}" = set; then
-  aix_libpath=$lt_cv_aix_libpath
-else
-  if ${lt_cv_aix_libpath_+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-  lt_aix_libpath_sed='
-      /Import File Strings/,/^$/ {
-	  /^0/ {
-	      s/^0  *\([^ ]*\) *$/\1/
-	      p
-	  }
-      }'
-  lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-  # Check for a 64-bit object if we didn't find anything.
-  if test -z "$lt_cv_aix_libpath_"; then
-    lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-  fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test -z "$lt_cv_aix_libpath_"; then
-    lt_cv_aix_libpath_="/usr/lib:/lib"
-  fi
-
-fi
-
-  aix_libpath=$lt_cv_aix_libpath_
-fi
-
-	 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
-	  # Warning - without using the other run time loading flags,
-	  # -berok will link without error, but may produce a broken library.
-	  no_undefined_flag=' ${wl}-bernotok'
-	  allow_undefined_flag=' ${wl}-berok'
-	  if test "$with_gnu_ld" = yes; then
-	    # We only use this code for GNU lds that support --whole-archive.
-	    whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
-	  else
-	    # Exported symbols can be pulled into shared objects from archives
-	    whole_archive_flag_spec='$convenience'
-	  fi
-	  archive_cmds_need_lc=yes
-	  # This is similar to how AIX traditionally builds its shared libraries.
-	  archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
-	fi
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-            archive_expsym_cmds=''
-        ;;
-      m68k)
-            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-            hardcode_libdir_flag_spec='-L$libdir'
-            hardcode_minus_L=yes
-        ;;
-      esac
-      ;;
-
-    bsdi[45]*)
-      export_dynamic_flag_spec=-rdynamic
-      ;;
-
-    cygwin* | mingw* | pw32* | cegcc*)
-      # When not using gcc, we currently assume that we are using
-      # Microsoft Visual C++.
-      # hardcode_libdir_flag_spec is actually meaningless, as there is
-      # no search path for DLLs.
-      case $cc_basename in
-      cl*)
-	# Native MSVC
-	hardcode_libdir_flag_spec=' '
-	allow_undefined_flag=unsupported
-	always_export_symbols=yes
-	file_list_spec='@'
-	# Tell ltmain to make .lib files, not .a files.
-	libext=lib
-	# Tell ltmain to make .dll files, not .so files.
-	shrext_cmds=".dll"
-	# FIXME: Setting linknames here is a bad hack.
-	archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
-	archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	    sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
-	  else
-	    sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
-	  fi~
-	  $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
-	  linknames='
-	# The linker will not automatically build a static lib if we build a DLL.
-	# _LT_TAGVAR(old_archive_from_new_cmds, )='true'
-	enable_shared_with_static_runtimes=yes
-	export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
-	# Don't use ranlib
-	old_postinstall_cmds='chmod 644 $oldlib'
-	postlink_cmds='lt_outputfile="@OUTPUT@"~
-	  lt_tool_outputfile="@TOOL_OUTPUT@"~
-	  case $lt_outputfile in
-	    *.exe|*.EXE) ;;
-	    *)
-	      lt_outputfile="$lt_outputfile.exe"
-	      lt_tool_outputfile="$lt_tool_outputfile.exe"
-	      ;;
-	  esac~
-	  if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
-	    $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
-	    $RM "$lt_outputfile.manifest";
-	  fi'
-	;;
-      *)
-	# Assume MSVC wrapper
-	hardcode_libdir_flag_spec=' '
-	allow_undefined_flag=unsupported
-	# Tell ltmain to make .lib files, not .a files.
-	libext=lib
-	# Tell ltmain to make .dll files, not .so files.
-	shrext_cmds=".dll"
-	# FIXME: Setting linknames here is a bad hack.
-	archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
-	# The linker will automatically build a .lib file if we build a DLL.
-	old_archive_from_new_cmds='true'
-	# FIXME: Should let the user specify the lib program.
-	old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
-	enable_shared_with_static_runtimes=yes
-	;;
-      esac
-      ;;
-
-    darwin* | rhapsody*)
-
-
-  archive_cmds_need_lc=no
-  hardcode_direct=no
-  hardcode_automatic=yes
-  hardcode_shlibpath_var=unsupported
-  if test "$lt_cv_ld_force_load" = "yes"; then
-    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\"`'
-  else
-    whole_archive_flag_spec=''
-  fi
-  link_all_deplibs=yes
-  allow_undefined_flag="$_lt_dar_allow_undefined"
-  case $cc_basename in
-     ifort*) _lt_dar_can_shared=yes ;;
-     *) _lt_dar_can_shared=$GCC ;;
-  esac
-  if test "$_lt_dar_can_shared" = "yes"; then
-    output_verbose_link_cmd=func_echo_all
-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
-    archive_expsym_cmds="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 ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
-
-  else
-  ld_shlibs=no
-  fi
-
-      ;;
-
-    dgux*)
-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      hardcode_libdir_flag_spec='-L$libdir'
-      hardcode_shlibpath_var=no
-      ;;
-
-    freebsd1*)
-      ld_shlibs=no
-      ;;
-
-    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
-    # support.  Future versions do this automatically, but an explicit c++rt0.o
-    # does not break anything, and helps significantly (at the cost of a little
-    # extra space).
-    freebsd2.2*)
-      archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
-      hardcode_libdir_flag_spec='-R$libdir'
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      ;;
-
-    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
-    freebsd2*)
-      archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-      hardcode_direct=yes
-      hardcode_minus_L=yes
-      hardcode_shlibpath_var=no
-      ;;
-
-    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-    freebsd* | dragonfly*)
-      archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-      hardcode_libdir_flag_spec='-R$libdir'
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      ;;
-
-    hpux9*)
-      if test "$GCC" = yes; then
-	archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
-      else
-	archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
-      fi
-      hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
-      hardcode_libdir_separator=:
-      hardcode_direct=yes
-
-      # hardcode_minus_L: Not really in the search PATH,
-      # but as the default location of the library.
-      hardcode_minus_L=yes
-      export_dynamic_flag_spec='${wl}-E'
-      ;;
-
-    hpux10*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
-	archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
-      fi
-      if test "$with_gnu_ld" = no; then
-	hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
-	hardcode_libdir_flag_spec_ld='+b $libdir'
-	hardcode_libdir_separator=:
-	hardcode_direct=yes
-	hardcode_direct_absolute=yes
-	export_dynamic_flag_spec='${wl}-E'
-	# hardcode_minus_L: Not really in the search PATH,
-	# but as the default location of the library.
-	hardcode_minus_L=yes
-      fi
-      ;;
-
-    hpux11*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
-	case $host_cpu in
-	hppa*64*)
-	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	ia64*)
-	  archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	*)
-	  archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	esac
-      else
-	case $host_cpu in
-	hppa*64*)
-	  archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	ia64*)
-	  archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	*)
-
-	  # Older versions of the 11.00 compiler do not understand -b yet
-	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
-$as_echo_n "checking if $CC understands -b... " >&6; }
-if ${lt_cv_prog_compiler__b+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler__b=no
-   save_LDFLAGS="$LDFLAGS"
-   LDFLAGS="$LDFLAGS -b"
-   echo "$lt_simple_link_test_code" > conftest.$ac_ext
-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
-     # The linker can only warn and ignore the option if not recognized
-     # So say no if there are warnings
-     if test -s conftest.err; then
-       # Append any errors to the config.log.
-       cat conftest.err 1>&5
-       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
-       if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_cv_prog_compiler__b=yes
-       fi
-     else
-       lt_cv_prog_compiler__b=yes
-     fi
-   fi
-   $RM -r conftest*
-   LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
-$as_echo "$lt_cv_prog_compiler__b" >&6; }
-
-if test x"$lt_cv_prog_compiler__b" = xyes; then
-    archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
-else
-    archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
-fi
-
-	  ;;
-	esac
-      fi
-      if test "$with_gnu_ld" = no; then
-	hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
-	hardcode_libdir_separator=:
-
-	case $host_cpu in
-	hppa*64*|ia64*)
-	  hardcode_direct=no
-	  hardcode_shlibpath_var=no
-	  ;;
-	*)
-	  hardcode_direct=yes
-	  hardcode_direct_absolute=yes
-	  export_dynamic_flag_spec='${wl}-E'
-
-	  # hardcode_minus_L: Not really in the search PATH,
-	  # but as the default location of the library.
-	  hardcode_minus_L=yes
-	  ;;
-	esac
-      fi
-      ;;
-
-    irix5* | irix6* | nonstopux*)
-      if test "$GCC" = yes; then
-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-	# Try to use the -exported_symbol ld option, if it does not
-	# work, assume that -exports_file does not work either and
-	# implicitly export all symbols.
-	# This should be the same for all languages, so no per-tag cache variable.
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
-$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-if ${lt_cv_irix_exported_symbol+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  save_LDFLAGS="$LDFLAGS"
-	   LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
-	   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-int foo (void) { return 0; }
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  lt_cv_irix_exported_symbol=yes
-else
-  lt_cv_irix_exported_symbol=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-           LDFLAGS="$save_LDFLAGS"
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
-$as_echo "$lt_cv_irix_exported_symbol" >&6; }
-	if test "$lt_cv_irix_exported_symbol" = yes; then
-          archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
-	fi
-      else
-	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-      fi
-      archive_cmds_need_lc='no'
-      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-      hardcode_libdir_separator=:
-      inherit_rpath=yes
-      link_all_deplibs=yes
-      ;;
-
-    netbsd*)
-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-	archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
-      else
-	archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
-      fi
-      hardcode_libdir_flag_spec='-R$libdir'
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      ;;
-
-    newsos6)
-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      hardcode_direct=yes
-      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-      hardcode_libdir_separator=:
-      hardcode_shlibpath_var=no
-      ;;
-
-    *nto* | *qnx*)
-      ;;
-
-    openbsd*)
-      if test -f /usr/libexec/ld.so; then
-	hardcode_direct=yes
-	hardcode_shlibpath_var=no
-	hardcode_direct_absolute=yes
-	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	  hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	  export_dynamic_flag_spec='${wl}-E'
-	else
-	  case $host_os in
-	   openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-	     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	     hardcode_libdir_flag_spec='-R$libdir'
-	     ;;
-	   *)
-	     archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	     hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	     ;;
-	  esac
-	fi
-      else
-	ld_shlibs=no
-      fi
-      ;;
-
-    os2*)
-      hardcode_libdir_flag_spec='-L$libdir'
-      hardcode_minus_L=yes
-      allow_undefined_flag=unsupported
-      archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
-      old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
-      ;;
-
-    osf3*)
-      if test "$GCC" = yes; then
-	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-	archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-      else
-	allow_undefined_flag=' -expect_unresolved \*'
-	archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-      fi
-      archive_cmds_need_lc='no'
-      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-      hardcode_libdir_separator=:
-      ;;
-
-    osf4* | osf5*)	# as osf3* with the addition of -msym flag
-      if test "$GCC" = yes; then
-	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-	archive_cmds='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-	hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-      else
-	allow_undefined_flag=' -expect_unresolved \*'
-	archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
-	$CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
-
-	# Both c and cxx compiler support -rpath directly
-	hardcode_libdir_flag_spec='-rpath $libdir'
-      fi
-      archive_cmds_need_lc='no'
-      hardcode_libdir_separator=:
-      ;;
-
-    solaris*)
-      no_undefined_flag=' -z defs'
-      if test "$GCC" = yes; then
-	wlarc='${wl}'
-	archive_cmds='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
-      else
-	case `$CC -V 2>&1` in
-	*"Compilers 5.0"*)
-	  wlarc=''
-	  archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	  archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
-	  ;;
-	*)
-	  wlarc='${wl}'
-	  archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
-	  archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
-	  ;;
-	esac
-      fi
-      hardcode_libdir_flag_spec='-R$libdir'
-      hardcode_shlibpath_var=no
-      case $host_os in
-      solaris2.[0-5] | solaris2.[0-5].*) ;;
-      *)
-	# The compiler driver will combine and reorder linker options,
-	# but understands `-z linker_flag'.  GCC discards it without `$wl',
-	# but is careful enough not to reorder.
-	# Supported since Solaris 2.6 (maybe 2.5.1?)
-	if test "$GCC" = yes; then
-	  whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
-	else
-	  whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
-	fi
-	;;
-      esac
-      link_all_deplibs=yes
-      ;;
-
-    sunos4*)
-      if test "x$host_vendor" = xsequent; then
-	# Use $CC to link under sequent, because it throws in some extra .o
-	# files that make .init and .fini sections work.
-	archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
-      fi
-      hardcode_libdir_flag_spec='-L$libdir'
-      hardcode_direct=yes
-      hardcode_minus_L=yes
-      hardcode_shlibpath_var=no
-      ;;
-
-    sysv4)
-      case $host_vendor in
-	sni)
-	  archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	  hardcode_direct=yes # is this really true???
-	;;
-	siemens)
-	  ## LD is ld it makes a PLAMLIB
-	  ## CC just makes a GrossModule.
-	  archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
-	  reload_cmds='$CC -r -o $output$reload_objs'
-	  hardcode_direct=no
-        ;;
-	motorola)
-	  archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	  hardcode_direct=no #Motorola manual says yes, but my tests say they lie
-	;;
-      esac
-      runpath_var='LD_RUN_PATH'
-      hardcode_shlibpath_var=no
-      ;;
-
-    sysv4.3*)
-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      hardcode_shlibpath_var=no
-      export_dynamic_flag_spec='-Bexport'
-      ;;
-
-    sysv4*MP*)
-      if test -d /usr/nec; then
-	archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	hardcode_shlibpath_var=no
-	runpath_var=LD_RUN_PATH
-	hardcode_runpath_var=yes
-	ld_shlibs=yes
-      fi
-      ;;
-
-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
-      no_undefined_flag='${wl}-z,text'
-      archive_cmds_need_lc=no
-      hardcode_shlibpath_var=no
-      runpath_var='LD_RUN_PATH'
-
-      if test "$GCC" = yes; then
-	archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      fi
-      ;;
-
-    sysv5* | sco3.2v5* | sco5v6*)
-      # Note: We can NOT use -z defs as we might desire, because we do not
-      # link with -lc, and that would cause any symbols used from libc to
-      # always be unresolved, which means just about no library would
-      # ever link correctly.  If we're not using GNU ld we use -z text
-      # though, which does catch some bad symbols but isn't as heavy-handed
-      # as -z defs.
-      no_undefined_flag='${wl}-z,text'
-      allow_undefined_flag='${wl}-z,nodefs'
-      archive_cmds_need_lc=no
-      hardcode_shlibpath_var=no
-      hardcode_libdir_flag_spec='${wl}-R,$libdir'
-      hardcode_libdir_separator=':'
-      link_all_deplibs=yes
-      export_dynamic_flag_spec='${wl}-Bexport'
-      runpath_var='LD_RUN_PATH'
-
-      if test "$GCC" = yes; then
-	archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      fi
-      ;;
-
-    uts4*)
-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      hardcode_libdir_flag_spec='-L$libdir'
-      hardcode_shlibpath_var=no
-      ;;
-
-    *)
-      ld_shlibs=no
-      ;;
-    esac
-
-    if test x$host_vendor = xsni; then
-      case $host in
-      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-	export_dynamic_flag_spec='${wl}-Blargedynsym'
-	;;
-      esac
-    fi
-  fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
-$as_echo "$ld_shlibs" >&6; }
-test "$ld_shlibs" = no && can_build_shared=no
-
-with_gnu_ld=$with_gnu_ld
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$archive_cmds_need_lc" in
-x|xyes)
-  # Assume -lc should be added
-  archive_cmds_need_lc=yes
-
-  if test "$enable_shared" = yes && test "$GCC" = yes; then
-    case $archive_cmds in
-    *'~'*)
-      # FIXME: we may have to deal with multi-command sequences.
-      ;;
-    '$CC '*)
-      # Test whether the compiler implicitly links with -lc since on some
-      # systems, -lgcc has to come before -lc. If gcc already passes -lc
-      # to ld, don't add -lc before -lgcc.
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
-if ${lt_cv_archive_cmds_need_lc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  $RM conftest*
-	echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
-	if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } 2>conftest.err; then
-	  soname=conftest
-	  lib=conftest
-	  libobjs=conftest.$ac_objext
-	  deplibs=
-	  wl=$lt_prog_compiler_wl
-	  pic_flag=$lt_prog_compiler_pic
-	  compiler_flags=-v
-	  linker_flags=-v
-	  verstring=
-	  output_objdir=.
-	  libname=conftest
-	  lt_save_allow_undefined_flag=$allow_undefined_flag
-	  allow_undefined_flag=
-	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
-  (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-	  then
-	    lt_cv_archive_cmds_need_lc=no
-	  else
-	    lt_cv_archive_cmds_need_lc=yes
-	  fi
-	  allow_undefined_flag=$lt_save_allow_undefined_flag
-	else
-	  cat conftest.err 1>&5
-	fi
-	$RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
-$as_echo "$lt_cv_archive_cmds_need_lc" >&6; }
-      archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc
-      ;;
-    esac
-  fi
-  ;;
-esac
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
-
-if test "$GCC" = yes; then
-  case $host_os in
-    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
-    *) lt_awk_arg="/^libraries:/" ;;
-  esac
-  case $host_os in
-    mingw* | cegcc*) lt_sed_strip_eq="s,=\([A-Za-z]:\),\1,g" ;;
-    *) lt_sed_strip_eq="s,=/,/,g" ;;
-  esac
-  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
-  case $lt_search_path_spec in
-  *\;*)
-    # if the path contains ";" then we assume it to be the separator
-    # otherwise default to the standard path separator (i.e. ":") - it is
-    # assumed that no part of a normal pathname contains ";" but that should
-    # okay in the real world where ";" in dirpaths is itself problematic.
-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
-    ;;
-  *)
-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
-    ;;
-  esac
-  # Ok, now we have the path, separated by spaces, we can step through it
-  # and add multilib dir if necessary.
-  lt_tmp_lt_search_path_spec=
-  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
-  for lt_sys_path in $lt_search_path_spec; do
-    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
-      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
-    else
-      test -d "$lt_sys_path" && \
-	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
-    fi
-  done
-  lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
-BEGIN {RS=" "; FS="/|\n";} {
-  lt_foo="";
-  lt_count=0;
-  for (lt_i = NF; lt_i > 0; lt_i--) {
-    if ($lt_i != "" && $lt_i != ".") {
-      if ($lt_i == "..") {
-        lt_count++;
-      } else {
-        if (lt_count == 0) {
-          lt_foo="/" $lt_i lt_foo;
-        } else {
-          lt_count--;
-        }
-      }
-    }
-  }
-  if (lt_foo != "") { lt_freq[lt_foo]++; }
-  if (lt_freq[lt_foo] == 1) { print lt_foo; }
-}'`
-  # AWK program above erroneously prepends '/' to C:/dos/paths
-  # for these hosts.
-  case $host_os in
-    mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
-      $SED 's,/\([A-Za-z]:\),\1,g'` ;;
-  esac
-  sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
-else
-  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=".so"
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-case $host_os in
-aix3*)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
-  shlibpath_var=LIBPATH
-
-  # AIX 3 has no versioning support, so we append a major version to the name.
-  soname_spec='${libname}${release}${shared_ext}$major'
-  ;;
-
-aix[4-9]*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  hardcode_into_libs=yes
-  if test "$host_cpu" = ia64; then
-    # AIX 5 supports IA64
-    library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
-    shlibpath_var=LD_LIBRARY_PATH
-  else
-    # With GCC up to 2.95.x, collect2 would create an import file
-    # for dependence libraries.  The import file would start with
-    # the line `#! .'.  This would cause the generated library to
-    # depend on `.', always an invalid library.  This was fixed in
-    # development snapshots of GCC prior to 3.0.
-    case $host_os in
-      aix4 | aix4.[01] | aix4.[01].*)
-      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
-	   echo ' yes '
-	   echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
-	:
-      else
-	can_build_shared=no
-      fi
-      ;;
-    esac
-    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
-    # soname into executable. Probably we can add versioning support to
-    # collect2, so additional links can be useful in future.
-    if test "$aix_use_runtimelinking" = yes; then
-      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
-      # instead of lib<name>.a to let people know that these are not
-      # typical AIX shared libraries.
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    else
-      # We preserve .a as extension for shared libraries through AIX4.2
-      # and later when we are not doing run time linking.
-      library_names_spec='${libname}${release}.a $libname.a'
-      soname_spec='${libname}${release}${shared_ext}$major'
-    fi
-    shlibpath_var=LIBPATH
-  fi
-  ;;
-
-amigaos*)
-  case $host_cpu in
-  powerpc)
-    # Since July 2007 AmigaOS4 officially supports .so libraries.
-    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    ;;
-  m68k)
-    library_names_spec='$libname.ixlibrary $libname.a'
-    # Create ${libname}_ixlibrary.a entries in /sys/libs.
-    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
-    ;;
-  esac
-  ;;
-
-beos*)
-  library_names_spec='${libname}${shared_ext}'
-  dynamic_linker="$host_os ld.so"
-  shlibpath_var=LIBRARY_PATH
-  ;;
-
-bsdi[45]*)
-  version_type=linux
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
-  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
-  # the default ld.so.conf also contains /usr/contrib/lib and
-  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
-  # libtool to hard-code these into programs
-  ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
-  version_type=windows
-  shrext_cmds=".dll"
-  need_version=no
-  need_lib_prefix=no
-
-  case $GCC,$cc_basename in
-  yes,*)
-    # gcc
-    library_names_spec='$libname.dll.a'
-    # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
-      dldir=$destdir/`dirname \$dlpath`~
-      test -d \$dldir || mkdir -p \$dldir~
-      $install_prog $dir/$dlname \$dldir/$dlname~
-      chmod a+x \$dldir/$dlname~
-      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
-        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
-      fi'
-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
-      dlpath=$dir/\$dldll~
-       $RM \$dlpath'
-    shlibpath_overrides_runpath=yes
-
-    case $host_os in
-    cygwin*)
-      # Cygwin DLLs use 'cyg' prefix rather than 'lib'
-      soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
-
-      sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"
-      ;;
-    mingw* | cegcc*)
-      # MinGW DLLs use traditional 'lib' prefix
-      soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
-      ;;
-    pw32*)
-      # pw32 DLLs use 'pw' prefix rather than 'lib'
-      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
-      ;;
-    esac
-    dynamic_linker='Win32 ld.exe'
-    ;;
-
-  *,cl*)
-    # Native MSVC
-    libname_spec='$name'
-    soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
-    library_names_spec='${libname}.dll.lib'
-
-    case $build_os in
-    mingw*)
-      sys_lib_search_path_spec=
-      lt_save_ifs=$IFS
-      IFS=';'
-      for lt_path in $LIB
-      do
-        IFS=$lt_save_ifs
-        # Let DOS variable expansion print the short 8.3 style file name.
-        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
-        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
-      done
-      IFS=$lt_save_ifs
-      # Convert to MSYS style.
-      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
-      ;;
-    cygwin*)
-      # Convert to unix form, then to dos form, then back to unix form
-      # but this time dos style (no spaces!) so that the unix form looks
-      # like /cygdrive/c/PROGRA~1:/cygdr...
-      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
-      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
-      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
-      ;;
-    *)
-      sys_lib_search_path_spec="$LIB"
-      if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
-        # It is most probably a Windows format PATH.
-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
-      else
-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
-      fi
-      # FIXME: find the short name or the path components, as spaces are
-      # common. (e.g. "Program Files" -> "PROGRA~1")
-      ;;
-    esac
-
-    # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
-      dldir=$destdir/`dirname \$dlpath`~
-      test -d \$dldir || mkdir -p \$dldir~
-      $install_prog $dir/$dlname \$dldir/$dlname'
-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
-      dlpath=$dir/\$dldll~
-       $RM \$dlpath'
-    shlibpath_overrides_runpath=yes
-    dynamic_linker='Win32 link.exe'
-    ;;
-
-  *)
-    # Assume MSVC wrapper
-    library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
-    dynamic_linker='Win32 ld.exe'
-    ;;
-  esac
-  # FIXME: first we should search . and the directory the executable is in
-  shlibpath_var=PATH
-  ;;
-
-darwin* | rhapsody*)
-  dynamic_linker="$host_os dyld"
-  version_type=darwin
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
-  soname_spec='${libname}${release}${major}$shared_ext'
-  shlibpath_overrides_runpath=yes
-  shlibpath_var=DYLD_LIBRARY_PATH
-  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-
-  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
-  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
-  ;;
-
-dgux*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-freebsd1*)
-  dynamic_linker=no
-  ;;
-
-freebsd* | dragonfly*)
-  # DragonFly does not have aout.  When/if they implement a new
-  # versioning mechanism, adjust this.
-  if test -x /usr/bin/objformat; then
-    objformat=`/usr/bin/objformat`
-  else
-    case $host_os in
-    freebsd[123]*) objformat=aout ;;
-    *) objformat=elf ;;
-    esac
-  fi
-  version_type=freebsd-$objformat
-  case $version_type in
-    freebsd-elf*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-      need_version=no
-      need_lib_prefix=no
-      ;;
-    freebsd-*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
-      need_version=yes
-      ;;
-  esac
-  shlibpath_var=LD_LIBRARY_PATH
-  case $host_os in
-  freebsd2*)
-    shlibpath_overrides_runpath=yes
-    ;;
-  freebsd3.[01]* | freebsdelf3.[01]*)
-    shlibpath_overrides_runpath=yes
-    hardcode_into_libs=yes
-    ;;
-  freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
-  freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
-    shlibpath_overrides_runpath=no
-    hardcode_into_libs=yes
-    ;;
-  *) # from 4.6 on, and DragonFly
-    shlibpath_overrides_runpath=yes
-    hardcode_into_libs=yes
-    ;;
-  esac
-  ;;
-
-gnu*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  hardcode_into_libs=yes
-  ;;
-
-haiku*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  dynamic_linker="$host_os runtime_loader"
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
-  hardcode_into_libs=yes
-  ;;
-
-hpux9* | hpux10* | hpux11*)
-  # Give a soname corresponding to the major version so that dld.sl refuses to
-  # link against other versions.
-  version_type=sunos
-  need_lib_prefix=no
-  need_version=no
-  case $host_cpu in
-  ia64*)
-    shrext_cmds='.so'
-    hardcode_into_libs=yes
-    dynamic_linker="$host_os dld.so"
-    shlibpath_var=LD_LIBRARY_PATH
-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    if test "X$HPUX_IA64_MODE" = X32; then
-      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
-    else
-      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
-    fi
-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
-    ;;
-  hppa*64*)
-    shrext_cmds='.sl'
-    hardcode_into_libs=yes
-    dynamic_linker="$host_os dld.sl"
-    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
-    ;;
-  *)
-    shrext_cmds='.sl'
-    dynamic_linker="$host_os dld.sl"
-    shlibpath_var=SHLIB_PATH
-    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    ;;
-  esac
-  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
-  postinstall_cmds='chmod 555 $lib'
-  # or fails outright, so override atomically:
-  install_override_mode=555
-  ;;
-
-interix[3-9]*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  ;;
-
-irix5* | irix6* | nonstopux*)
-  case $host_os in
-    nonstopux*) version_type=nonstopux ;;
-    *)
-	if test "$lt_cv_prog_gnu_ld" = yes; then
-		version_type=linux
-	else
-		version_type=irix
-	fi ;;
-  esac
-  need_lib_prefix=no
-  need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
-  case $host_os in
-  irix5* | nonstopux*)
-    libsuff= shlibsuff=
-    ;;
-  *)
-    case $LD in # libtool.m4 will add one of these switches to LD
-    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
-      libsuff= shlibsuff= libmagic=32-bit;;
-    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
-      libsuff=32 shlibsuff=N32 libmagic=N32;;
-    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
-      libsuff=64 shlibsuff=64 libmagic=64-bit;;
-    *) libsuff= shlibsuff= libmagic=never-match;;
-    esac
-    ;;
-  esac
-  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
-  shlibpath_overrides_runpath=no
-  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
-  hardcode_into_libs=yes
-  ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
-  dynamic_linker=no
-  ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-
-  # Some binutils ld are patched to set DT_RUNPATH
-  if ${lt_cv_shlibpath_overrides_runpath+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_shlibpath_overrides_runpath=no
-    save_LDFLAGS=$LDFLAGS
-    save_libdir=$libdir
-    eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \
-	 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
-  lt_cv_shlibpath_overrides_runpath=yes
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    LDFLAGS=$save_LDFLAGS
-    libdir=$save_libdir
-
-fi
-
-  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
-
-  # This implies no fast_install, which is unacceptable.
-  # Some rework will be needed to allow for fast_install
-  # before this can be enabled.
-  hardcode_into_libs=yes
-
-  # Add ABI-specific directories to the system library path.
-  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
-
-  # Append ld.so.conf contents to the search path
-  if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
-
-  fi
-
-  # We used to test for /lib/ld.so.1 and disable shared libraries on
-  # powerpc, because MkLinux only supported shared libraries with the
-  # GNU dynamic linker.  Since this was broken with cross compilers,
-  # most powerpc-linux boxes support dynamic linking these days and
-  # people can always --disable-shared, the test was removed, and we
-  # assume the GNU/Linux dynamic linker is in use.
-  dynamic_linker='GNU/Linux ld.so'
-  ;;
-
-netbsd*)
-  version_type=sunos
-  need_lib_prefix=no
-  need_version=no
-  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-    dynamic_linker='NetBSD (a.out) ld.so'
-  else
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    dynamic_linker='NetBSD ld.elf_so'
-  fi
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  hardcode_into_libs=yes
-  ;;
-
-newsos6)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  ;;
-
-*nto* | *qnx*)
-  version_type=qnx
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  dynamic_linker='ldqnx.so'
-  ;;
-
-openbsd*)
-  version_type=sunos
-  sys_lib_dlsearch_path_spec="/usr/lib"
-  need_lib_prefix=no
-  # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
-  case $host_os in
-    openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
-    *)				need_version=no  ;;
-  esac
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-    case $host_os in
-      openbsd2.[89] | openbsd2.[89].*)
-	shlibpath_overrides_runpath=no
-	;;
-      *)
-	shlibpath_overrides_runpath=yes
-	;;
-      esac
-  else
-    shlibpath_overrides_runpath=yes
-  fi
-  ;;
-
-os2*)
-  libname_spec='$name'
-  shrext_cmds=".dll"
-  need_lib_prefix=no
-  library_names_spec='$libname${shared_ext} $libname.a'
-  dynamic_linker='OS/2 ld.exe'
-  shlibpath_var=LIBPATH
-  ;;
-
-osf3* | osf4* | osf5*)
-  version_type=osf
-  need_lib_prefix=no
-  need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
-  ;;
-
-rdos*)
-  dynamic_linker=no
-  ;;
-
-solaris*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  hardcode_into_libs=yes
-  # ldd complains unless libraries are executable
-  postinstall_cmds='chmod +x $lib'
-  ;;
-
-sunos4*)
-  version_type=sunos
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  if test "$with_gnu_ld" = yes; then
-    need_lib_prefix=no
-  fi
-  need_version=yes
-  ;;
-
-sysv4 | sysv4.3*)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  case $host_vendor in
-    sni)
-      shlibpath_overrides_runpath=no
-      need_lib_prefix=no
-      runpath_var=LD_RUN_PATH
-      ;;
-    siemens)
-      need_lib_prefix=no
-      ;;
-    motorola)
-      need_lib_prefix=no
-      need_version=no
-      shlibpath_overrides_runpath=no
-      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
-      ;;
-  esac
-  ;;
-
-sysv4*MP*)
-  if test -d /usr/nec ;then
-    version_type=linux
-    library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
-    soname_spec='$libname${shared_ext}.$major'
-    shlibpath_var=LD_LIBRARY_PATH
-  fi
-  ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  version_type=freebsd-elf
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  hardcode_into_libs=yes
-  if test "$with_gnu_ld" = yes; then
-    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
-  else
-    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
-    case $host_os in
-      sco3.2v5*)
-        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
-	;;
-    esac
-  fi
-  sys_lib_dlsearch_path_spec='/usr/lib'
-  ;;
-
-tpf*)
-  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  ;;
-
-uts4*)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-*)
-  dynamic_linker=no
-  ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
-test "$dynamic_linker" = no && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
-  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
-  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
-fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
-  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
-hardcode_action=
-if test -n "$hardcode_libdir_flag_spec" ||
-   test -n "$runpath_var" ||
-   test "X$hardcode_automatic" = "Xyes" ; then
-
-  # We can hardcode non-existent directories.
-  if test "$hardcode_direct" != no &&
-     # If the only mechanism to avoid hardcoding is shlibpath_var, we
-     # have to relink, otherwise we might link with an installed library
-     # when we should be linking with a yet-to-be-installed one
-     ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no &&
-     test "$hardcode_minus_L" != no; then
-    # Linking always hardcodes the temporary library directory.
-    hardcode_action=relink
-  else
-    # We can link without hardcoding, and we can hardcode nonexisting dirs.
-    hardcode_action=immediate
-  fi
-else
-  # We cannot hardcode anything, or else we can only hardcode existing
-  # directories.
-  hardcode_action=unsupported
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
-$as_echo "$hardcode_action" >&6; }
-
-if test "$hardcode_action" = relink ||
-   test "$inherit_rpath" = yes; then
-  # Fast installation is not supported
-  enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
-     test "$enable_shared" = no; then
-  # Fast installation is not necessary
-  enable_fast_install=needless
-fi
-
-
-
-
-
-
-  if test "x$enable_dlopen" != xyes; then
-  enable_dlopen=unknown
-  enable_dlopen_self=unknown
-  enable_dlopen_self_static=unknown
-else
-  lt_cv_dlopen=no
-  lt_cv_dlopen_libs=
-
-  case $host_os in
-  beos*)
-    lt_cv_dlopen="load_add_on"
-    lt_cv_dlopen_libs=
-    lt_cv_dlopen_self=yes
-    ;;
-
-  mingw* | pw32* | cegcc*)
-    lt_cv_dlopen="LoadLibrary"
-    lt_cv_dlopen_libs=
-    ;;
-
-  cygwin*)
-    lt_cv_dlopen="dlopen"
-    lt_cv_dlopen_libs=
-    ;;
-
-  darwin*)
-  # if libdl is installed we need to link against it
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int main (void)
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_dl_dlopen=yes
-else
-  ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-else
-
-    lt_cv_dlopen="dyld"
-    lt_cv_dlopen_libs=
-    lt_cv_dlopen_self=yes
-
-fi
-
-    ;;
-
-  *)
-    ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
-if test "x$ac_cv_func_shl_load" = xyes; then :
-  lt_cv_dlopen="shl_load"
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
-$as_echo_n "checking for shl_load in -ldld... " >&6; }
-if ${ac_cv_lib_dld_shl_load+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldld  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char shl_load ();
-int main (void)
-{
-return shl_load ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_dld_shl_load=yes
-else
-  ac_cv_lib_dld_shl_load=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
-$as_echo "$ac_cv_lib_dld_shl_load" >&6; }
-if test "x$ac_cv_lib_dld_shl_load" = xyes; then :
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
-else
-  ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
-if test "x$ac_cv_func_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen"
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int main (void)
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_dl_dlopen=yes
-else
-  ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
-$as_echo_n "checking for dlopen in -lsvld... " >&6; }
-if ${ac_cv_lib_svld_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsvld  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int main (void)
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_svld_dlopen=yes
-else
-  ac_cv_lib_svld_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
-$as_echo "$ac_cv_lib_svld_dlopen" >&6; }
-if test "x$ac_cv_lib_svld_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
-$as_echo_n "checking for dld_link in -ldld... " >&6; }
-if ${ac_cv_lib_dld_dld_link+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldld  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char dld_link ();
-int main (void)
-{
-return dld_link ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_dld_dld_link=yes
-else
-  ac_cv_lib_dld_dld_link=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
-$as_echo "$ac_cv_lib_dld_dld_link" >&6; }
-if test "x$ac_cv_lib_dld_dld_link" = xyes; then :
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-    ;;
-  esac
-
-  if test "x$lt_cv_dlopen" != xno; then
-    enable_dlopen=yes
-  else
-    enable_dlopen=no
-  fi
-
-  case $lt_cv_dlopen in
-  dlopen)
-    save_CPPFLAGS="$CPPFLAGS"
-    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-
-    save_LDFLAGS="$LDFLAGS"
-    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-
-    save_LIBS="$LIBS"
-    LIBS="$lt_cv_dlopen_libs $LIBS"
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
-$as_echo_n "checking whether a program can dlopen itself... " >&6; }
-if ${lt_cv_dlopen_self+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  	  if test "$cross_compiling" = yes; then :
-  lt_cv_dlopen_self=cross
-else
-  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
-  lt_status=$lt_dlunknown
-  cat > conftest.$ac_ext <<_LT_EOF
-#line $LINENO "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-#  define LT_DLGLOBAL		RTLD_GLOBAL
-#else
-#  ifdef DL_GLOBAL
-#    define LT_DLGLOBAL		DL_GLOBAL
-#  else
-#    define LT_DLGLOBAL		0
-#  endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
-   find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-#  ifdef RTLD_LAZY
-#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
-#  else
-#    ifdef DL_LAZY
-#      define LT_DLLAZY_OR_NOW		DL_LAZY
-#    else
-#      ifdef RTLD_NOW
-#        define LT_DLLAZY_OR_NOW	RTLD_NOW
-#      else
-#        ifdef DL_NOW
-#          define LT_DLLAZY_OR_NOW	DL_NOW
-#        else
-#          define LT_DLLAZY_OR_NOW	0
-#        endif
-#      endif
-#    endif
-#  endif
-#endif
-
-/* When -fvisbility=hidden is used, assume the code has been annotated
-   correspondingly for the symbols needed.  */
-#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
-int fnord () __attribute__((visibility("default")));
-#endif
-
-int fnord () { return 42; }
-int main ()
-{
-  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-  int status = $lt_dlunknown;
-
-  if (self)
-    {
-      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
-      else
-        {
-	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
-          else puts (dlerror ());
-	}
-      /* dlclose (self); */
-    }
-  else
-    puts (dlerror ());
-
-  return status;
-}
-_LT_EOF
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
-    (./conftest; exit; ) >&5 2>/dev/null
-    lt_status=$?
-    case x$lt_status in
-      x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
-      x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
-      x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;
-    esac
-  else :
-    # compilation failed
-    lt_cv_dlopen_self=no
-  fi
-fi
-rm -fr conftest*
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
-$as_echo "$lt_cv_dlopen_self" >&6; }
-
-    if test "x$lt_cv_dlopen_self" = xyes; then
-      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
-$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
-if ${lt_cv_dlopen_self_static+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  	  if test "$cross_compiling" = yes; then :
-  lt_cv_dlopen_self_static=cross
-else
-  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
-  lt_status=$lt_dlunknown
-  cat > conftest.$ac_ext <<_LT_EOF
-#line $LINENO "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-#  define LT_DLGLOBAL		RTLD_GLOBAL
-#else
-#  ifdef DL_GLOBAL
-#    define LT_DLGLOBAL		DL_GLOBAL
-#  else
-#    define LT_DLGLOBAL		0
-#  endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
-   find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-#  ifdef RTLD_LAZY
-#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
-#  else
-#    ifdef DL_LAZY
-#      define LT_DLLAZY_OR_NOW		DL_LAZY
-#    else
-#      ifdef RTLD_NOW
-#        define LT_DLLAZY_OR_NOW	RTLD_NOW
-#      else
-#        ifdef DL_NOW
-#          define LT_DLLAZY_OR_NOW	DL_NOW
-#        else
-#          define LT_DLLAZY_OR_NOW	0
-#        endif
-#      endif
-#    endif
-#  endif
-#endif
-
-/* When -fvisbility=hidden is used, assume the code has been annotated
-   correspondingly for the symbols needed.  */
-#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
-int fnord () __attribute__((visibility("default")));
-#endif
-
-int fnord () { return 42; }
-int main ()
-{
-  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-  int status = $lt_dlunknown;
-
-  if (self)
-    {
-      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
-      else
-        {
-	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
-          else puts (dlerror ());
-	}
-      /* dlclose (self); */
-    }
-  else
-    puts (dlerror ());
-
-  return status;
-}
-_LT_EOF
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
-    (./conftest; exit; ) >&5 2>/dev/null
-    lt_status=$?
-    case x$lt_status in
-      x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
-      x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
-      x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;
-    esac
-  else :
-    # compilation failed
-    lt_cv_dlopen_self_static=no
-  fi
-fi
-rm -fr conftest*
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
-$as_echo "$lt_cv_dlopen_self_static" >&6; }
-    fi
-
-    CPPFLAGS="$save_CPPFLAGS"
-    LDFLAGS="$save_LDFLAGS"
-    LIBS="$save_LIBS"
-    ;;
-  esac
-
-  case $lt_cv_dlopen_self in
-  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
-  *) enable_dlopen_self=unknown ;;
-  esac
-
-  case $lt_cv_dlopen_self_static in
-  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
-  *) enable_dlopen_self_static=unknown ;;
-  esac
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-striplib=
-old_striplib=
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
-$as_echo_n "checking whether stripping libraries is possible... " >&6; }
-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
-  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
-  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-# FIXME - insert some real tests, host_os isn't really good enough
-  case $host_os in
-  darwin*)
-    if test -n "$STRIP" ; then
-      striplib="$STRIP -x"
-      old_striplib="$STRIP -S"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-    ;;
-  *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ;;
-  esac
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-  # Report which library types will actually be built
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
-$as_echo_n "checking if libtool supports shared libraries... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
-$as_echo "$can_build_shared" >&6; }
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
-$as_echo_n "checking whether to build shared libraries... " >&6; }
-  test "$can_build_shared" = "no" && enable_shared=no
-
-  # On AIX, shared libraries and static libraries use the same namespace, and
-  # are all built from PIC.
-  case $host_os in
-  aix3*)
-    test "$enable_shared" = yes && enable_static=no
-    if test -n "$RANLIB"; then
-      archive_cmds="$archive_cmds~\$RANLIB \$lib"
-      postinstall_cmds='$RANLIB $lib'
-    fi
-    ;;
-
-  aix[4-9]*)
-    if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-      test "$enable_shared" = yes && enable_static=no
-    fi
-    ;;
-  esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
-$as_echo "$enable_shared" >&6; }
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
-$as_echo_n "checking whether to build static libraries... " >&6; }
-  # Make sure either enable_shared or enable_static is yes.
-  test "$enable_shared" = yes || enable_static=yes
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
-$as_echo "$enable_static" >&6; }
-
-
-
-
-fi
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-CC="$lt_save_CC"
-
-
-
-
-
-
-
-
-
-
-
-
-
-        ac_config_commands="$ac_config_commands libtool"
-
-
-
-
-# Only expand once:
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we need CARES_BUILDING_LIBRARY" >&5
-$as_echo_n "checking if we need CARES_BUILDING_LIBRARY... " >&6; }
-case $host in
-  *-*-mingw*)
-
-$as_echo "#define CARES_BUILDING_LIBRARY 1" >>confdefs.h
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we need CARES_STATICLIB" >&5
-$as_echo_n "checking if we need CARES_STATICLIB... " >&6; }
-    if test "X$enable_shared" = "Xno"
-    then
-
-$as_echo "#define CARES_STATICLIB 1" >>confdefs.h
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-    ;;
-  *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ;;
-esac
-
-
-
-    #
-  compiler_id="unknown"
-  compiler_num="0"
-  #
-  flags_dbg_all="unknown"
-  flags_dbg_yes="unknown"
-  flags_dbg_off="unknown"
-  flags_opt_all="unknown"
-  flags_opt_yes="unknown"
-  flags_opt_off="unknown"
-  #
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is DEC/Compaq/HP C" >&5
-$as_echo_n "checking if compiler is DEC/Compaq/HP C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __DECC
-CURL_DEF_TOKEN __DECC
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__DECC"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___DECC=no
-
-  else
-    curl_cv_have_def___DECC=yes
-    curl_cv_def___DECC=$tmp_exp
-
-  fi
-
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __DECC_VER
-CURL_DEF_TOKEN __DECC_VER
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__DECC_VER"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___DECC_VER=no
-
-  else
-    curl_cv_have_def___DECC_VER=yes
-    curl_cv_def___DECC_VER=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___DECC" = "yes" &&
-    test "$curl_cv_have_def___DECC_VER" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="DEC_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g2"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -O4"
-    flags_opt_yes="-O1"
-    flags_opt_off="-O0"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is HP-UX C" >&5
-$as_echo_n "checking if compiler is HP-UX C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __HP_cc
-CURL_DEF_TOKEN __HP_cc
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__HP_cc"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___HP_cc=no
-
-  else
-    curl_cv_have_def___HP_cc=yes
-    curl_cv_def___HP_cc=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___HP_cc" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="HP_UX_C"
-    flags_dbg_all="-g -s"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-s"
-    flags_opt_all="-O +O0 +O1 +O2 +O3 +O4"
-    flags_opt_yes="+O2"
-    flags_opt_off="+O0"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is IBM C" >&5
-$as_echo_n "checking if compiler is IBM C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __IBMC__
-CURL_DEF_TOKEN __IBMC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__IBMC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___IBMC__=no
-
-  else
-    curl_cv_have_def___IBMC__=yes
-    curl_cv_def___IBMC__=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___IBMC__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="IBM_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g"
-    flags_dbg_off=""
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -O4 -O5"
-    flags_opt_all="$flags_opt_all -qnooptimize"
-    flags_opt_all="$flags_opt_all -qoptimize=0"
-    flags_opt_all="$flags_opt_all -qoptimize=1"
-    flags_opt_all="$flags_opt_all -qoptimize=2"
-    flags_opt_all="$flags_opt_all -qoptimize=3"
-    flags_opt_all="$flags_opt_all -qoptimize=4"
-    flags_opt_all="$flags_opt_all -qoptimize=5"
-    flags_opt_yes="-O2"
-    flags_opt_off="-qnooptimize"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is Intel C" >&5
-$as_echo_n "checking if compiler is Intel C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __INTEL_COMPILER
-CURL_DEF_TOKEN __INTEL_COMPILER
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__INTEL_COMPILER"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___INTEL_COMPILER=no
-
-  else
-    curl_cv_have_def___INTEL_COMPILER=yes
-    curl_cv_def___INTEL_COMPILER=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___INTEL_COMPILER" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_num="$curl_cv_def___INTEL_COMPILER"
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __unix__
-CURL_DEF_TOKEN __unix__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = ""; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___unix__=no
-
-  else
-    curl_cv_have_def___unix__=yes
-    curl_cv_def___unix__=$tmp_exp
-
-  fi
-
-    if test "$curl_cv_have_def___unix__" = "yes"; then
-      compiler_id="INTEL_UNIX_C"
-      flags_dbg_all="-g -g0"
-      flags_dbg_yes="-g"
-      flags_dbg_off="-g0"
-      flags_opt_all="-O -O0 -O1 -O2 -O3 -Os"
-      flags_opt_yes="-O2"
-      flags_opt_off="-O0"
-    else
-      compiler_id="INTEL_WINDOWS_C"
-      flags_dbg_all="/ZI /Zi /zI /zi /ZD /Zd /zD /zd /Z7 /z7 /Oy /Oy-"
-      flags_dbg_all="$flags_dbg_all /debug"
-      flags_dbg_all="$flags_dbg_all /debug:none"
-      flags_dbg_all="$flags_dbg_all /debug:minimal"
-      flags_dbg_all="$flags_dbg_all /debug:partial"
-      flags_dbg_all="$flags_dbg_all /debug:full"
-      flags_dbg_all="$flags_dbg_all /debug:semantic_stepping"
-      flags_dbg_all="$flags_dbg_all /debug:extended"
-      flags_dbg_yes="/Zi /Oy-"
-      flags_dbg_off="/debug:none /Oy-"
-      flags_opt_all="/O /O0 /O1 /O2 /O3 /Od /Og /Og- /Oi /Oi-"
-      flags_opt_yes="/O2"
-      flags_opt_off="/Od"
-    fi
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is clang" >&5
-$as_echo_n "checking if compiler is clang... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __clang__
-CURL_DEF_TOKEN __clang__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__clang__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___clang__=no
-
-  else
-    curl_cv_have_def___clang__=yes
-    curl_cv_def___clang__=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___clang__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="CLANG"
-    clangver=`$CC -dumpversion`
-    clangvhi=`echo $clangver | cut -d . -f1`
-    clangvlo=`echo $clangver | cut -d . -f2`
-    compiler_num=`(expr $clangvhi "*" 100 + $clangvlo) 2>/dev/null`
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_all="$flags_dbg_all -ggdb"
-    flags_dbg_all="$flags_dbg_all -gstabs"
-    flags_dbg_all="$flags_dbg_all -gstabs+"
-    flags_dbg_all="$flags_dbg_all -gcoff"
-    flags_dbg_all="$flags_dbg_all -gxcoff"
-    flags_dbg_all="$flags_dbg_all -gdwarf-2"
-    flags_dbg_all="$flags_dbg_all -gvms"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -Os -O3 -O4"
-    flags_opt_yes="-Os"
-    flags_opt_off="-O0"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is GNU C" >&5
-$as_echo_n "checking if compiler is GNU C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __GNUC__
-CURL_DEF_TOKEN __GNUC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__GNUC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___GNUC__=no
-
-  else
-    curl_cv_have_def___GNUC__=yes
-    curl_cv_def___GNUC__=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___GNUC__" = "yes" &&
-    test "$compiler_id" = "unknown"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="GNU_C"
-    gccver=`$CC -dumpversion`
-    gccvhi=`echo $gccver | cut -d . -f1`
-    gccvlo=`echo $gccver | cut -d . -f2`
-    compiler_num=`(expr $gccvhi "*" 100 + $gccvlo) 2>/dev/null`
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_all="$flags_dbg_all -ggdb"
-    flags_dbg_all="$flags_dbg_all -gstabs"
-    flags_dbg_all="$flags_dbg_all -gstabs+"
-    flags_dbg_all="$flags_dbg_all -gcoff"
-    flags_dbg_all="$flags_dbg_all -gxcoff"
-    flags_dbg_all="$flags_dbg_all -gdwarf-2"
-    flags_dbg_all="$flags_dbg_all -gvms"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -Os"
-    flags_opt_yes="-O2"
-    flags_opt_off="-O0"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is LCC" >&5
-$as_echo_n "checking if compiler is LCC... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __LCC__
-CURL_DEF_TOKEN __LCC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__LCC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___LCC__=no
-
-  else
-    curl_cv_have_def___LCC__=yes
-    curl_cv_def___LCC__=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___LCC__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="LCC"
-    flags_dbg_all="-g"
-    flags_dbg_yes="-g"
-    flags_dbg_off=""
-    flags_opt_all=""
-    flags_opt_yes=""
-    flags_opt_off=""
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is SGI MIPSpro C" >&5
-$as_echo_n "checking if compiler is SGI MIPSpro C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __GNUC__
-CURL_DEF_TOKEN __GNUC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__GNUC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___GNUC__=no
-
-  else
-    curl_cv_have_def___GNUC__=yes
-    curl_cv_def___GNUC__=$tmp_exp
-
-  fi
-
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef _COMPILER_VERSION
-CURL_DEF_TOKEN _COMPILER_VERSION
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "_COMPILER_VERSION"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def__COMPILER_VERSION=no
-
-  else
-    curl_cv_have_def__COMPILER_VERSION=yes
-    curl_cv_def__COMPILER_VERSION=$tmp_exp
-
-  fi
-
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef _SGI_COMPILER_VERSION
-CURL_DEF_TOKEN _SGI_COMPILER_VERSION
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "_SGI_COMPILER_VERSION"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def__SGI_COMPILER_VERSION=no
-
-  else
-    curl_cv_have_def__SGI_COMPILER_VERSION=yes
-    curl_cv_def__SGI_COMPILER_VERSION=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___GNUC__" = "no" &&
-    (test "$curl_cv_have_def__SGI_COMPILER_VERSION" = "yes" ||
-     test "$curl_cv_have_def__COMPILER_VERSION" = "yes"); then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="SGI_MIPSPRO_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -Ofast"
-    flags_opt_yes="-O2"
-    flags_opt_off="-O0"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is SGI MIPS C" >&5
-$as_echo_n "checking if compiler is SGI MIPS C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __GNUC__
-CURL_DEF_TOKEN __GNUC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__GNUC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___GNUC__=no
-
-  else
-    curl_cv_have_def___GNUC__=yes
-    curl_cv_def___GNUC__=$tmp_exp
-
-  fi
-
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __sgi
-CURL_DEF_TOKEN __sgi
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__sgi"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___sgi=no
-
-  else
-    curl_cv_have_def___sgi=yes
-    curl_cv_def___sgi=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___GNUC__" = "no" &&
-    test "$curl_cv_have_def___sgi" = "yes" &&
-    test "$compiler_id" = "unknown"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="SGI_MIPS_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -Ofast"
-    flags_opt_yes="-O2"
-    flags_opt_off="-O0"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is SunPro C" >&5
-$as_echo_n "checking if compiler is SunPro C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __SUNPRO_C
-CURL_DEF_TOKEN __SUNPRO_C
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__SUNPRO_C"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___SUNPRO_C=no
-
-  else
-    curl_cv_have_def___SUNPRO_C=yes
-    curl_cv_def___SUNPRO_C=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___SUNPRO_C" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="SUNPRO_C"
-    flags_dbg_all="-g -s"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-s"
-    flags_opt_all="-O -xO -xO1 -xO2 -xO3 -xO4 -xO5"
-    flags_opt_yes="-xO2"
-    flags_opt_off=""
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is Tiny C" >&5
-$as_echo_n "checking if compiler is Tiny C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __TINYC__
-CURL_DEF_TOKEN __TINYC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__TINYC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___TINYC__=no
-
-  else
-    curl_cv_have_def___TINYC__=yes
-    curl_cv_def___TINYC__=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___TINYC__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="TINY_C"
-    flags_dbg_all="-g -b"
-    flags_dbg_yes="-g"
-    flags_dbg_off=""
-    flags_opt_all=""
-    flags_opt_yes=""
-    flags_opt_off=""
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is Watcom C" >&5
-$as_echo_n "checking if compiler is Watcom C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __WATCOMC__
-CURL_DEF_TOKEN __WATCOMC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__WATCOMC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___WATCOMC__=no
-
-  else
-    curl_cv_have_def___WATCOMC__=yes
-    curl_cv_def___WATCOMC__=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___WATCOMC__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __UNIX__
-CURL_DEF_TOKEN __UNIX__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__UNIX__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___UNIX__=no
-
-  else
-    curl_cv_have_def___UNIX__=yes
-    curl_cv_def___UNIX__=$tmp_exp
-
-  fi
-
-    if test "$curl_cv_have_def___UNIX__" = "yes"; then
-      compiler_id="WATCOM_UNIX_C"
-      flags_dbg_all="-g1 -g1+ -g2 -g3"
-      flags_dbg_yes="-g2"
-      flags_dbg_off=""
-      flags_opt_all="-O0 -O1 -O2 -O3"
-      flags_opt_yes="-O2"
-      flags_opt_off="-O0"
-    else
-      compiler_id="WATCOM_WINDOWS_C"
-      flags_dbg_all=""
-      flags_dbg_yes=""
-      flags_dbg_off=""
-      flags_opt_all=""
-      flags_opt_yes=""
-      flags_opt_off=""
-    fi
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-  #
-  if test "$compiler_id" = "unknown"; then
-  cat <<_EOF 1>&2
-***
-*** Warning: This configure script does not have information about the
-*** compiler you are using, relative to the flags required to enable or
-*** disable generation of debug info, optimization options or warnings.
-***
-*** Whatever settings are present in CFLAGS will be used for this run.
-***
-*** If you wish to help the c-ares project to better support your compiler
-*** you can report this and the required info on the c-ares development
-*** mailing list: http://cool.haxx.se/mailman/listinfo/c-ares/
-***
-_EOF
-  fi
-
-
-squeeze() {
-  _sqz_result=""
-  eval _sqz_input=\$$1
-  for _sqz_token in $_sqz_input; do
-    if test -z "$_sqz_result"; then
-      _sqz_result="$_sqz_token"
-    else
-      _sqz_result="$_sqz_result $_sqz_token"
-    fi
-  done
-  eval $1=\$_sqz_result
-  return 0
-}
-
-
-      #
-  if test "$compiler_id" != "unknown"; then
-    #
-    if test "$compiler_id" = "GNU_C" ||
-      test "$compiler_id" = "CLANG"; then
-
-    tmp_has_include="no"
-  tmp_chg_FLAGS="$CFLAGS"
-  for word1 in $tmp_chg_FLAGS; do
-    case "$word1" in
-      -I*)
-        tmp_has_include="yes"
-        ;;
-    esac
-  done
-  if test "$tmp_has_include" = "yes"; then
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/^-I/ -isystem /g'`
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/ -I/ -isystem /g'`
-    CFLAGS="$tmp_chg_FLAGS"
-    squeeze CFLAGS
-  fi
-  tmp_has_include="no"
-  tmp_chg_FLAGS="$CPPFLAGS"
-  for word1 in $tmp_chg_FLAGS; do
-    case "$word1" in
-      -I*)
-        tmp_has_include="yes"
-        ;;
-    esac
-  done
-  if test "$tmp_has_include" = "yes"; then
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/^-I/ -isystem /g'`
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/ -I/ -isystem /g'`
-    CPPFLAGS="$tmp_chg_FLAGS"
-    squeeze CPPFLAGS
-  fi
-
-    fi
-    #
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS=""
-    tmp_CFLAGS=""
-    #
-    case "$compiler_id" in
-        #
-      CLANG)
-        #
-                                tmp_CFLAGS="$tmp_CFLAGS -Qunused-arguments"
-        ;;
-        #
-      DEC_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS -std1"
-                tmp_CFLAGS="$tmp_CFLAGS -noansi_alias"
-                tmp_CFLAGS="$tmp_CFLAGS -warnprotos"
-                tmp_CFLAGS="$tmp_CFLAGS -msg_fatal toofewargs,toomanyargs"
-        ;;
-        #
-      GNU_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      HP_UX_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS -z"
-                                tmp_CFLAGS="$tmp_CFLAGS +W 4227,4255"
-        ;;
-        #
-      IBM_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS -qthreaded"
-                                        tmp_CFLAGS="$tmp_CFLAGS -qnoansialias"
-                        tmp_CFLAGS="$tmp_CFLAGS -qhalt=e"
-        ;;
-        #
-      INTEL_UNIX_C)
-        #
-                        tmp_CFLAGS="$tmp_CFLAGS -std=gnu89"
-                                                tmp_CPPFLAGS="$tmp_CPPFLAGS -we 140,147,165,266"
-                                        tmp_CPPFLAGS="$tmp_CPPFLAGS -wd 279,981,1469"
-        ;;
-        #
-      INTEL_WINDOWS_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      LCC)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS -n"
-        ;;
-        #
-      SGI_MIPS_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      SGI_MIPSPRO_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      SUNPRO_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      TINY_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      WATCOM_UNIX_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      WATCOM_WINDOWS_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-    esac
-    #
-    squeeze tmp_CPPFLAGS
-    squeeze tmp_CFLAGS
-    #
-    if test ! -z "$tmp_CFLAGS" || test ! -z "$tmp_CPPFLAGS"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts some basic options" >&5
-$as_echo_n "checking if compiler accepts some basic options... " >&6; }
-      CPPFLAGS="$tmp_save_CPPFLAGS $tmp_CPPFLAGS"
-      CFLAGS="$tmp_save_CFLAGS $tmp_CFLAGS"
-      squeeze CPPFLAGS
-      squeeze CFLAGS
-
-    tmp_compiler_works="unknown"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      int i = 1;
-      return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tmp_compiler_works="yes"
-
-else
-
-    tmp_compiler_works="no"
-    echo " " >&6
-    sed 's/^/cc-fail: /' conftest.err >&6
-    echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test "$tmp_compiler_works" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-        int i = 1;
-        return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      sed 's/^/link-fail: /' conftest.err >&6
-      echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tmp_compiler_works" = "yes"; then
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#       ifdef __STDC__
-#         include <stdlib.h>
-#       endif
-
-int main (void)
-{
-
-        int i = 0;
-        exit(i);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      echo "run-fail: test program exited with status $ac_status" >&6
-      echo " " >&6
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-    if test "$tmp_compiler_works" = "yes"; then
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
-$as_echo "$as_me: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&6;}
-
-  else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
-$as_echo "$as_me: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&2;}
-                CPPFLAGS="$tmp_save_CPPFLAGS"
-        CFLAGS="$tmp_save_CFLAGS"
-
-  fi
-
-    fi
-    #
-  fi
-
-
-        #
-  if test "$compiler_id" != "unknown"; then
-    #
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    #
-    tmp_options=""
-    tmp_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS="$CPPFLAGS"
-
-    ac_var_stripped=""
-  for word1 in $tmp_CFLAGS; do
-    ac_var_strip_word="no"
-    for word2 in $flags_dbg_all; do
-      if test "$word1" = "$word2"; then
-        ac_var_strip_word="yes"
-      fi
-    done
-    if test "$ac_var_strip_word" = "no"; then
-      ac_var_stripped="$ac_var_stripped $word1"
-    fi
-  done
-    tmp_CFLAGS="$ac_var_stripped"
-  squeeze tmp_CFLAGS
-
-
-    ac_var_stripped=""
-  for word1 in $tmp_CPPFLAGS; do
-    ac_var_strip_word="no"
-    for word2 in $flags_dbg_all; do
-      if test "$word1" = "$word2"; then
-        ac_var_strip_word="yes"
-      fi
-    done
-    if test "$ac_var_strip_word" = "no"; then
-      ac_var_stripped="$ac_var_stripped $word1"
-    fi
-  done
-    tmp_CPPFLAGS="$ac_var_stripped"
-  squeeze tmp_CPPFLAGS
-
-    #
-    if test "$want_debug" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts debug enabling options" >&5
-$as_echo_n "checking if compiler accepts debug enabling options... " >&6; }
-      tmp_options="$flags_dbg_yes"
-    fi
-    if test "$want_debug" = "no"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts debug disabling options" >&5
-$as_echo_n "checking if compiler accepts debug disabling options... " >&6; }
-      tmp_options="$flags_dbg_off"
-    fi
-    #
-    CPPFLAGS="$tmp_CPPFLAGS"
-    CFLAGS="$tmp_CFLAGS $tmp_options"
-    squeeze CPPFLAGS
-    squeeze CFLAGS
-
-    tmp_compiler_works="unknown"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      int i = 1;
-      return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tmp_compiler_works="yes"
-
-else
-
-    tmp_compiler_works="no"
-    echo " " >&6
-    sed 's/^/cc-fail: /' conftest.err >&6
-    echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test "$tmp_compiler_works" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-        int i = 1;
-        return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      sed 's/^/link-fail: /' conftest.err >&6
-      echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tmp_compiler_works" = "yes"; then
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#       ifdef __STDC__
-#         include <stdlib.h>
-#       endif
-
-int main (void)
-{
-
-        int i = 0;
-        exit(i);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      echo "run-fail: test program exited with status $ac_status" >&6
-      echo " " >&6
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-    if test "$tmp_compiler_works" = "yes"; then
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      { $as_echo "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_options" >&5
-$as_echo "$as_me: compiler options added: $tmp_options" >&6;}
-
-  else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_options" >&5
-$as_echo "$as_me: WARNING: compiler options rejected: $tmp_options" >&2;}
-            CPPFLAGS="$tmp_save_CPPFLAGS"
-      CFLAGS="$tmp_save_CFLAGS"
-
-  fi
-
-    #
-  fi
-
-
-        #
-  if test "$compiler_id" != "unknown"; then
-    #
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    #
-    tmp_options=""
-    tmp_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS="$CPPFLAGS"
-    honor_optimize_option="yes"
-    #
-                        #
-    if test "$want_optimize" = "assume_no" ||
-       test "$want_optimize" = "assume_yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler optimizer assumed setting might be used" >&5
-$as_echo_n "checking if compiler optimizer assumed setting might be used... " >&6; }
-
-
-  ac_var_match_word="no"
-  for word1 in $tmp_CFLAGS; do
-    for word2 in $flags_opt_all; do
-      if test "$word1" = "$word2"; then
-        ac_var_match_word="yes"
-      fi
-    done
-  done
-
-  if test "$ac_var_match_word" = "yes"; then
-
-        honor_optimize_option="no"
-
-
-  fi
-
-
-
-  ac_var_match_word="no"
-  for word1 in $tmp_CPPFLAGS; do
-    for word2 in $flags_opt_all; do
-      if test "$word1" = "$word2"; then
-        ac_var_match_word="yes"
-      fi
-    done
-  done
-
-  if test "$ac_var_match_word" = "yes"; then
-
-        honor_optimize_option="no"
-
-
-  fi
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $honor_optimize_option" >&5
-$as_echo "$honor_optimize_option" >&6; }
-      if test "$honor_optimize_option" = "yes"; then
-        if test "$want_optimize" = "assume_yes"; then
-          want_optimize="yes"
-        fi
-        if test "$want_optimize" = "assume_no"; then
-          want_optimize="no"
-        fi
-      fi
-    fi
-    #
-    if test "$honor_optimize_option" = "yes"; then
-
-    ac_var_stripped=""
-  for word1 in $tmp_CFLAGS; do
-    ac_var_strip_word="no"
-    for word2 in $flags_opt_all; do
-      if test "$word1" = "$word2"; then
-        ac_var_strip_word="yes"
-      fi
-    done
-    if test "$ac_var_strip_word" = "no"; then
-      ac_var_stripped="$ac_var_stripped $word1"
-    fi
-  done
-    tmp_CFLAGS="$ac_var_stripped"
-  squeeze tmp_CFLAGS
-
-
-    ac_var_stripped=""
-  for word1 in $tmp_CPPFLAGS; do
-    ac_var_strip_word="no"
-    for word2 in $flags_opt_all; do
-      if test "$word1" = "$word2"; then
-        ac_var_strip_word="yes"
-      fi
-    done
-    if test "$ac_var_strip_word" = "no"; then
-      ac_var_stripped="$ac_var_stripped $word1"
-    fi
-  done
-    tmp_CPPFLAGS="$ac_var_stripped"
-  squeeze tmp_CPPFLAGS
-
-      if test "$want_optimize" = "yes"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts optimizer enabling options" >&5
-$as_echo_n "checking if compiler accepts optimizer enabling options... " >&6; }
-        tmp_options="$flags_opt_yes"
-      fi
-      if test "$want_optimize" = "no"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts optimizer disabling options" >&5
-$as_echo_n "checking if compiler accepts optimizer disabling options... " >&6; }
-        tmp_options="$flags_opt_off"
-      fi
-      CPPFLAGS="$tmp_CPPFLAGS"
-      CFLAGS="$tmp_CFLAGS $tmp_options"
-      squeeze CPPFLAGS
-      squeeze CFLAGS
-
-    tmp_compiler_works="unknown"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      int i = 1;
-      return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tmp_compiler_works="yes"
-
-else
-
-    tmp_compiler_works="no"
-    echo " " >&6
-    sed 's/^/cc-fail: /' conftest.err >&6
-    echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test "$tmp_compiler_works" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-        int i = 1;
-        return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      sed 's/^/link-fail: /' conftest.err >&6
-      echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tmp_compiler_works" = "yes"; then
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#       ifdef __STDC__
-#         include <stdlib.h>
-#       endif
-
-int main (void)
-{
-
-        int i = 0;
-        exit(i);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      echo "run-fail: test program exited with status $ac_status" >&6
-      echo " " >&6
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-    if test "$tmp_compiler_works" = "yes"; then
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_options" >&5
-$as_echo "$as_me: compiler options added: $tmp_options" >&6;}
-
-  else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_options" >&5
-$as_echo "$as_me: WARNING: compiler options rejected: $tmp_options" >&2;}
-                CPPFLAGS="$tmp_save_CPPFLAGS"
-        CFLAGS="$tmp_save_CFLAGS"
-
-  fi
-
-    fi
-    #
-  fi
-
-
-        #
-  if test "$compiler_id" != "unknown"; then
-    #
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS=""
-    tmp_CFLAGS=""
-    #
-    case "$compiler_id" in
-        #
-      CLANG)
-        #
-        if test "$want_warnings" = "yes"; then
-                              tmp_CFLAGS="$tmp_CFLAGS -pedantic"
-          tmp_CFLAGS="$tmp_CFLAGS -Wall -Wextra"
-          tmp_CFLAGS="$tmp_CFLAGS -Wpointer-arith -Wwrite-strings"
-          tmp_CFLAGS="$tmp_CFLAGS -Wshadow"
-          tmp_CFLAGS="$tmp_CFLAGS -Winline -Wnested-externs"
-          tmp_CFLAGS="$tmp_CFLAGS -Wmissing-declarations"
-          tmp_CFLAGS="$tmp_CFLAGS -Wmissing-prototypes"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-long-long"
-          tmp_CFLAGS="$tmp_CFLAGS -Wfloat-equal"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-multichar -Wsign-compare"
-          tmp_CFLAGS="$tmp_CFLAGS -Wundef"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-format-nonliteral"
-          tmp_CFLAGS="$tmp_CFLAGS -Wendif-labels -Wstrict-prototypes"
-          tmp_CFLAGS="$tmp_CFLAGS -Wdeclaration-after-statement"
-          tmp_CFLAGS="$tmp_CFLAGS -Wcast-align"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-system-headers"
-          tmp_CFLAGS="$tmp_CFLAGS -Wshorten-64-to-32"
-          #
-                    if test "$compiler_num" -ge "101"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wunused"
-          fi
-        fi
-        ;;
-        #
-      DEC_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -msg_enable level3"
-        fi
-        ;;
-        #
-      GNU_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          #
-                              if test "x$cross_compiling" != "xyes" ||
-            test "$compiler_num" -ge "300"; then
-            tmp_CFLAGS="$tmp_CFLAGS -pedantic"
-          fi
-          #
-                    tmp_CFLAGS="$tmp_CFLAGS -Wall -W"
-          #
-                    if test "$compiler_num" -ge "104"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wpointer-arith -Wwrite-strings"
-                        if test "x$cross_compiling" != "xyes" ||
-              test "$compiler_num" -ge "300"; then
-              tmp_CFLAGS="$tmp_CFLAGS -Wunused -Wshadow"
-            fi
-          fi
-          #
-                    if test "$compiler_num" -ge "207"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Winline -Wnested-externs"
-                        if test "x$cross_compiling" != "xyes" ||
-              test "$compiler_num" -ge "300"; then
-              tmp_CFLAGS="$tmp_CFLAGS -Wmissing-declarations"
-              tmp_CFLAGS="$tmp_CFLAGS -Wmissing-prototypes"
-            fi
-          fi
-          #
-                    if test "$compiler_num" -ge "295"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wno-long-long"
-          fi
-          #
-                    if test "$compiler_num" -ge "296"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wfloat-equal"
-            tmp_CFLAGS="$tmp_CFLAGS -Wno-multichar -Wsign-compare"
-                                                tmp_CFLAGS="$tmp_CFLAGS -Wundef"
-          fi
-          #
-                    if test "$compiler_num" -ge "297"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wno-format-nonliteral"
-          fi
-          #
-                    if test "$compiler_num" -ge "300"; then
-                                                            tmp_CFLAGS="$tmp_CFLAGS"
-          fi
-          #
-                    if test "$compiler_num" -ge "303"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wendif-labels -Wstrict-prototypes"
-          fi
-          #
-                    if test "$compiler_num" -ge "304"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wdeclaration-after-statement"
-          fi
-          #
-                    if test "$compiler_num" -ge "403"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wtype-limits -Wold-style-declaration"
-            tmp_CFLAGS="$tmp_CFLAGS -Wmissing-parameter-type -Wempty-body"
-            tmp_CFLAGS="$tmp_CFLAGS -Wclobbered -Wignored-qualifiers"
-          fi
-          #
-        fi
-        #
-                if test "$compiler_num" -ge "300"; then
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-system-headers"
-        else
-                              if test "x$cross_compiling" = "xyes"; then
-            if test "$compiler_num" -ge "104"; then
-                            tmp_CFLAGS="$tmp_CFLAGS -Wno-unused -Wno-shadow"
-            fi
-            if test "$compiler_num" -ge "207"; then
-                            tmp_CFLAGS="$tmp_CFLAGS -Wno-missing-declarations"
-              tmp_CFLAGS="$tmp_CFLAGS -Wno-missing-prototypes"
-            fi
-          fi
-        fi
-        ;;
-        #
-      HP_UX_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS +w1"
-        fi
-        ;;
-        #
-      IBM_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      INTEL_UNIX_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          if test "$compiler_num" -gt "600"; then
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wall -w2"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wcheck"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wcomment"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wdeprecated"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wmissing-prototypes"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wp64"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wpointer-arith"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wreturn-type"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wshadow"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wuninitialized"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wunused-function"
-          fi
-        fi
-                tmp_CFLAGS="$tmp_CFLAGS -fno-omit-frame-pointer"
-                tmp_CFLAGS="$tmp_CFLAGS -fno-strict-aliasing"
-                tmp_CFLAGS="$tmp_CFLAGS -fp-model precise"
-                if test "$compiler_num" -ge "1000"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -vec-report0"
-        fi
-        ;;
-        #
-      INTEL_WINDOWS_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      LCC)
-        #
-        if test "$want_warnings" = "yes"; then
-                                                  tmp_CFLAGS="$tmp_CFLAGS"
-        fi
-        ;;
-        #
-      SGI_MIPS_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -fullwarn"
-        fi
-        ;;
-        #
-      SGI_MIPSPRO_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -fullwarn"
-                              tmp_CFLAGS="$tmp_CFLAGS -woff 1209"
-        fi
-        ;;
-        #
-      SUNPRO_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -v"
-        fi
-        ;;
-        #
-      TINY_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -Wall"
-                    tmp_CFLAGS="$tmp_CFLAGS -Wwrite-strings"
-                    tmp_CFLAGS="$tmp_CFLAGS -Wunsupported"
-        fi
-        ;;
-        #
-      WATCOM_UNIX_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -Wall -Wextra"
-        fi
-        ;;
-        #
-      WATCOM_WINDOWS_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-    esac
-    #
-    squeeze tmp_CPPFLAGS
-    squeeze tmp_CFLAGS
-    #
-    if test ! -z "$tmp_CFLAGS" || test ! -z "$tmp_CPPFLAGS"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts strict warning options" >&5
-$as_echo_n "checking if compiler accepts strict warning options... " >&6; }
-      CPPFLAGS="$tmp_save_CPPFLAGS $tmp_CPPFLAGS"
-      CFLAGS="$tmp_save_CFLAGS $tmp_CFLAGS"
-      squeeze CPPFLAGS
-      squeeze CFLAGS
-
-    tmp_compiler_works="unknown"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      int i = 1;
-      return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tmp_compiler_works="yes"
-
-else
-
-    tmp_compiler_works="no"
-    echo " " >&6
-    sed 's/^/cc-fail: /' conftest.err >&6
-    echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test "$tmp_compiler_works" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-        int i = 1;
-        return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      sed 's/^/link-fail: /' conftest.err >&6
-      echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tmp_compiler_works" = "yes"; then
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#       ifdef __STDC__
-#         include <stdlib.h>
-#       endif
-
-int main (void)
-{
-
-        int i = 0;
-        exit(i);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      echo "run-fail: test program exited with status $ac_status" >&6
-      echo " " >&6
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-    if test "$tmp_compiler_works" = "yes"; then
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
-$as_echo "$as_me: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&6;}
-
-  else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
-$as_echo "$as_me: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&2;}
-                CPPFLAGS="$tmp_save_CPPFLAGS"
-        CFLAGS="$tmp_save_CFLAGS"
-
-  fi
-
-    fi
-    #
-  fi
-
-
-if test "$compiler_id" = "INTEL_UNIX_C"; then
-  #
-  if test "$compiler_num" -ge "1000"; then
-        CFLAGS="$CFLAGS -shared-intel"
-  elif test "$compiler_num" -ge "900"; then
-        CFLAGS="$CFLAGS -i-dynamic"
-  fi
-  #
-fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler halts on compilation errors" >&5
-$as_echo_n "checking if compiler halts on compilation errors... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      force compilation error
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    as_fn_error $? "compiler does not halt on compilation errors." "$LINENO" 5
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler halts on negative sized arrays" >&5
-$as_echo_n "checking if compiler halts on negative sized arrays... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      typedef char bad_t[sizeof(char) == sizeof(int) ? -1 : -1 ];
-
-int main (void)
-{
-
-      bad_t dummy;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    as_fn_error $? "compiler does not halt on negative sized arrays." "$LINENO" 5
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler supports hiding library internal symbols" >&5
-$as_echo_n "checking if compiler supports hiding library internal symbols... " >&6; }
-  supports_symbol_hiding="no"
-  symbol_hiding_CFLAGS=""
-  symbol_hiding_EXTERN=""
-  tmp_CFLAGS=""
-  tmp_EXTERN=""
-  case "$compiler_id" in
-    CLANG)
-            tmp_EXTERN="__attribute__ ((visibility (\"default\")))"
-      tmp_CFLAGS="-fvisibility=hidden"
-      supports_symbol_hiding="yes"
-      ;;
-    GNU_C)
-            if test "$compiler_num" -ge "304"; then
-        if $CC --help --verbose 2>&1 | grep fvisibility= > /dev/null ; then
-          tmp_EXTERN="__attribute__ ((visibility (\"default\")))"
-          tmp_CFLAGS="-fvisibility=hidden"
-          supports_symbol_hiding="yes"
-        fi
-      fi
-      ;;
-    INTEL_UNIX_C)
-            if test "$compiler_num" -ge "900"; then
-        if $CC --help --verbose 2>&1 | grep fvisibility= > /dev/null ; then
-          tmp_save_CFLAGS="$CFLAGS"
-          CFLAGS="$CFLAGS -fvisibility=hidden"
-          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#             include <stdio.h>
-
-int main (void)
-{
-
-              printf("icc fvisibility bug test");
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-            tmp_EXTERN="__attribute__ ((visibility (\"default\")))"
-            tmp_CFLAGS="-fvisibility=hidden"
-            supports_symbol_hiding="yes"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-          CFLAGS="$tmp_save_CFLAGS"
-        fi
-      fi
-      ;;
-    SUNPRO_C)
-      if $CC 2>&1 | grep flags >/dev/null && $CC -flags | grep xldscope= >/dev/null ; then
-        tmp_EXTERN="__global"
-        tmp_CFLAGS="-xldscope=hidden"
-        supports_symbol_hiding="yes"
-      fi
-      ;;
-  esac
-  if test "$supports_symbol_hiding" = "yes"; then
-    tmp_save_CFLAGS="$CFLAGS"
-    CFLAGS="$tmp_save_CFLAGS $tmp_CFLAGS"
-    squeeze CFLAGS
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $tmp_EXTERN char *dummy(char *buff);
-        char *dummy(char *buff)
-        {
-         if(buff)
-           return ++buff;
-         else
-           return buff;
-        }
-
-int main (void)
-{
-
-        char b[16];
-        char *r = dummy(&b);
-        if(r)
-          return (int)*r;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      supports_symbol_hiding="yes"
-
-else
-
-      supports_symbol_hiding="no"
-      echo " " >&6
-      sed 's/^/cc-src: /' conftest.$ac_ext >&6
-      sed 's/^/cc-err: /' conftest.err >&6
-      echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    CFLAGS="$tmp_save_CFLAGS"
-  fi
-  if test "$supports_symbol_hiding" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    symbol_hiding_CFLAGS="$tmp_CFLAGS"
-    symbol_hiding_EXTERN="$tmp_EXTERN"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if shared libraries need -no-undefined" >&5
-$as_echo_n "checking if shared libraries need -no-undefined... " >&6; }
-  need_no_undefined="no"
-  case $host in
-    *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc* | *-*-aix*)
-      need_no_undefined="yes"
-      ;;
-  esac
-  if test "x$allow_undefined" = "xno"; then
-    need_no_undefined="yes"
-  elif test "x$allow_undefined_flag" = "xunsupported"; then
-    need_no_undefined="yes"
-  fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $need_no_undefined" >&5
-$as_echo "$need_no_undefined" >&6; }
-
- if test x$need_no_undefined = xyes; then
-  NO_UNDEFINED_TRUE=
-  NO_UNDEFINED_FALSE='#'
-else
-  NO_UNDEFINED_TRUE='#'
-  NO_UNDEFINED_FALSE=
-fi
-
-
-
-    cares_builddir=`pwd`
-  supports_curldebug="unknown"
-  if test "$want_curldebug" = "yes"; then
-    if test "x$enable_shared" != "xno" &&
-      test "x$enable_shared" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unknown enable_shared setting." >&5
-$as_echo "$as_me: WARNING: unknown enable_shared setting." >&2;}
-      supports_curldebug="no"
-    fi
-    if test "x$enable_static" != "xno" &&
-      test "x$enable_static" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unknown enable_static setting." >&5
-$as_echo "$as_me: WARNING: unknown enable_static setting." >&2;}
-      supports_curldebug="no"
-    fi
-    if test "$supports_curldebug" != "no"; then
-      if test "$enable_shared" = "yes" &&
-        test "$need_no_undefined" = "yes"; then
-        supports_curldebug="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: shared library does not support undefined symbols." >&5
-$as_echo "$as_me: WARNING: shared library does not support undefined symbols." >&2;}
-      fi
-      if test ! -f "$srcdir/../include/curl/curlbuild.h.dist"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: c-ares source not embedded in curl's CVS tree." >&5
-$as_echo "$as_me: WARNING: c-ares source not embedded in curl's CVS tree." >&2;}
-        supports_curldebug="no"
-      elif test ! -f "$srcdir/../include/curl/Makefile.in"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: curl's buildconf has not been run." >&5
-$as_echo "$as_me: WARNING: curl's buildconf has not been run." >&2;}
-        supports_curldebug="no"
-      elif test ! -f "$cares_builddir/../libcurl.pc" ||
-        test ! -f "$cares_builddir/../include/curl/curlbuild.h"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: curl's configure has not been run." >&5
-$as_echo "$as_me: WARNING: curl's configure has not been run." >&2;}
-        supports_curldebug="no"
-      elif test ! -f "$cares_builddir/../lib/curl_config.h"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libcurl's curl_config.h is missing." >&5
-$as_echo "$as_me: WARNING: libcurl's curl_config.h is missing." >&2;}
-        supports_curldebug="no"
-      elif test ! -f "$cares_builddir/../config.status"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: curl's config.status is missing." >&5
-$as_echo "$as_me: WARNING: curl's config.status is missing." >&2;}
-        supports_curldebug="no"
-      fi
-      if test "$supports_curldebug" != "no"; then
-        grep '^#define USE_ARES' "$cares_builddir/../lib/curl_config.h" >/dev/null
-        if test "$?" -ne "0"; then
-          { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libcurl configured without c-ares support." >&5
-$as_echo "$as_me: WARNING: libcurl configured without c-ares support." >&2;}
-          supports_curldebug="no"
-        fi
-      fi
-      if test "$supports_curldebug" != "no"; then
-        grep 'CPPFLAGS.*CURLDEBUG' "$cares_builddir/../config.status" >/dev/null
-        if test "$?" -ne "0"; then
-          { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libcurl configured without curldebug support." >&5
-$as_echo "$as_me: WARNING: libcurl configured without curldebug support." >&2;}
-          supports_curldebug="no"
-        fi
-      fi
-    fi
-  fi
-  #
-  if test "$want_curldebug" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if curl debug memory tracking can be enabled" >&5
-$as_echo_n "checking if curl debug memory tracking can be enabled... " >&6; }
-    test "$supports_curldebug" = "no" || supports_curldebug="yes"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $supports_curldebug" >&5
-$as_echo "$supports_curldebug" >&6; }
-    if test "$supports_curldebug" = "no"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot enable curl debug memory tracking." >&5
-$as_echo "$as_me: WARNING: cannot enable curl debug memory tracking." >&2;}
-      want_curldebug="no"
-    fi
-  fi
-  #
-  if test "$want_curldebug" = "yes"; then
-
-$as_echo "#define BUILDING_LIBCURL 1" >>confdefs.h
-
-    CPPFLAGS="$CPPFLAGS -DCURLDEBUG"
-    squeeze CPPFLAGS
-  fi
-  #
-  if test "$want_debug" = "yes"; then
-    CPPFLAGS="$CPPFLAGS -DDEBUGBUILD"
-    squeeze CPPFLAGS
-  fi
-
- if test x$want_curldebug = xyes; then
-  CURLDEBUG_TRUE=
-  CURLDEBUG_FALSE='#'
-else
-  CURLDEBUG_TRUE='#'
-  CURLDEBUG_FALSE=
-fi
-
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for windows.h" >&5
-$as_echo_n "checking for windows.h... " >&6; }
-if ${ac_cv_header_windows_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINDOWS_H shall not be defined.
-#else
-        int dummy=2*WINVER;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_windows_h="yes"
-
-else
-
-      ac_cv_header_windows_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_windows_h" >&5
-$as_echo "$ac_cv_header_windows_h" >&6; }
-  case "$ac_cv_header_windows_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINDOWS_H 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define WIN32_LEAN_AND_MEAN 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build target is a native Windows one" >&5
-$as_echo_n "checking whether build target is a native Windows one... " >&6; }
-if ${ac_cv_native_windows+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    if test "$ac_cv_header_windows_h" = "no"; then
-      ac_cv_native_windows="no"
-    else
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-#if defined(__MINGW32__) || defined(__MINGW32CE__) || \
-   (defined(_MSC_VER) && (defined(_WIN32) || defined(_WIN64)))
-          int dummy=1;
-#else
-          Not a native Windows build target.
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        ac_cv_native_windows="yes"
-
-else
-
-        ac_cv_native_windows="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_native_windows" >&5
-$as_echo "$ac_cv_native_windows" >&6; }
-  case "$ac_cv_native_windows" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define NATIVE_WINDOWS 1
-_ACEOF
-
-      ;;
-  esac
-
-case X-"$ac_cv_native_windows" in
-  X-yes)
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock.h" >&5
-$as_echo_n "checking for winsock.h... " >&6; }
-if ${ac_cv_header_winsock_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINSOCK_H shall not be defined.
-#else
-        int dummy=WSACleanup();
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_winsock_h="yes"
-
-else
-
-      ac_cv_header_winsock_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_winsock_h" >&5
-$as_echo "$ac_cv_header_winsock_h" >&6; }
-  case "$ac_cv_header_winsock_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock2.h" >&5
-$as_echo_n "checking for winsock2.h... " >&6; }
-if ${ac_cv_header_winsock2_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WINSOCK2_H shall not be defined.
-#else
-        int dummy=2*IPPROTO_ESP;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_winsock2_h="yes"
-
-else
-
-      ac_cv_header_winsock2_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_winsock2_h" >&5
-$as_echo "$ac_cv_header_winsock2_h" >&6; }
-  case "$ac_cv_header_winsock2_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK2_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ws2tcpip.h" >&5
-$as_echo_n "checking for ws2tcpip.h... " >&6; }
-if ${ac_cv_header_ws2tcpip_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-#include <ws2tcpip.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WS2TCPIP_H shall not be defined.
-#else
-        int dummy=2*IP_PKTINFO;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_ws2tcpip_h="yes"
-
-else
-
-      ac_cv_header_ws2tcpip_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_ws2tcpip_h" >&5
-$as_echo "$ac_cv_header_ws2tcpip_h" >&6; }
-  case "$ac_cv_header_ws2tcpip_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WS2TCPIP_H 1
-_ACEOF
-
-      ;;
-  esac
-
-    ;;
-  *)
-    ac_cv_header_winsock_h="no"
-    ac_cv_header_winsock2_h="no"
-    ac_cv_header_ws2tcpip_h="no"
-    ;;
-esac
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if X/Open network library is required" >&5
-$as_echo_n "checking if X/Open network library is required... " >&6; }
-  tst_lib_xnet_required="no"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-int main (void)
-{
-#if defined(__hpux) && defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 600)
-  return 0;
-#elif defined(__hpux) && defined(_XOPEN_SOURCE_EXTENDED)
-  return 0;
-#else
-  force compilation error
-#endif
-}
-
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tst_lib_xnet_required="yes"
-    LIBS="$LIBS -lxnet"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_lib_xnet_required" >&5
-$as_echo "$tst_lib_xnet_required" >&6; }
-
-
-ac_fn_c_check_func "$LINENO" "gethostbyname" "ac_cv_func_gethostbyname"
-if test "x$ac_cv_func_gethostbyname" = xyes; then :
-  HAVE_GETHOSTBYNAME="1"
-
-else
-   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5
-$as_echo_n "checking for gethostbyname in -lnsl... " >&6; }
-if ${ac_cv_lib_nsl_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lnsl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyname ();
-int main (void)
-{
-return gethostbyname ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_nsl_gethostbyname=yes
-else
-  ac_cv_lib_nsl_gethostbyname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5
-$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; }
-if test "x$ac_cv_lib_nsl_gethostbyname" = xyes; then :
-  HAVE_GETHOSTBYNAME="1"
-                             LIBS="$LIBS -lnsl"
-
-fi
-
-
-fi
-
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lsocket" >&5
-$as_echo_n "checking for gethostbyname in -lsocket... " >&6; }
-if ${ac_cv_lib_socket_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsocket  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyname ();
-int main (void)
-{
-return gethostbyname ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_socket_gethostbyname=yes
-else
-  ac_cv_lib_socket_gethostbyname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_gethostbyname" >&5
-$as_echo "$ac_cv_lib_socket_gethostbyname" >&6; }
-if test "x$ac_cv_lib_socket_gethostbyname" = xyes; then :
-  HAVE_GETHOSTBYNAME="1"
-               LIBS="$LIBS -lsocket"
-
-fi
-
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname with both nsl and socket libs" >&5
-$as_echo_n "checking for gethostbyname with both nsl and socket libs... " >&6; }
-  my_ac_save_LIBS=$LIBS
-  LIBS="-lnsl -lsocket $LIBS"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      gethostbyname();
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    HAVE_GETHOSTBYNAME="1"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    LIBS=$my_ac_save_LIBS
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-    if test "$ac_cv_header_windows_h" = "yes"; then
-    if test "$ac_cv_header_winsock_h" = "yes"; then
-      case $host in
-        *-*-mingw32ce*)
-          winsock_LIB="-lwinsock"
-          ;;
-        *)
-          winsock_LIB="-lwsock32"
-          ;;
-      esac
-    fi
-    if test "$ac_cv_header_winsock2_h" = "yes"; then
-      winsock_LIB="-lws2_32"
-    fi
-    if test ! -z "$winsock_LIB"; then
-      my_ac_save_LIBS=$LIBS
-      LIBS="$winsock_LIB $LIBS"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in $winsock_LIB" >&5
-$as_echo_n "checking for gethostbyname in $winsock_LIB... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#endif
-
-int main (void)
-{
-
-          gethostbyname("www.dummysite.com");
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        HAVE_GETHOSTBYNAME="1"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        winsock_LIB=""
-        LIBS=$my_ac_save_LIBS
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    fi
-  fi
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname for Minix 3" >&5
-$as_echo_n "checking for gethostbyname for Minix 3... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-/* Older Minix versions may need <net/gen/netdb.h> here instead */
-#include <netdb.h>
-
-int main (void)
-{
-
-      gethostbyname("www.dummysite.com");
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    HAVE_GETHOSTBYNAME="1"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname for eCos" >&5
-$as_echo_n "checking for gethostbyname for eCos... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <stdio.h>
-#include <netdb.h>
-
-int main (void)
-{
-
-      gethostbyname("www.dummysite.com");
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    HAVE_GETHOSTBYNAME="1"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnet" >&5
-$as_echo_n "checking for gethostbyname in -lnet... " >&6; }
-if ${ac_cv_lib_net_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lnet  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyname ();
-int main (void)
-{
-return gethostbyname ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_net_gethostbyname=yes
-else
-  ac_cv_lib_net_gethostbyname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_net_gethostbyname" >&5
-$as_echo "$ac_cv_lib_net_gethostbyname" >&6; }
-if test "x$ac_cv_lib_net_gethostbyname" = xyes; then :
-  HAVE_GETHOSTBYNAME="1"
-               LIBS="$LIBS -lnet"
-
-fi
-
-fi
-
-
-if test "$HAVE_GETHOSTBYNAME" != "1"; then
-  as_fn_error $? "couldn't find libraries for gethostbyname()" "$LINENO" 5
-fi
-
-ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp"
-if test "x$ac_cv_func_strcasecmp" = xyes; then :
-
-else
-   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strcasecmp in -lresolve" >&5
-$as_echo_n "checking for strcasecmp in -lresolve... " >&6; }
-if ${ac_cv_lib_resolve_strcasecmp+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lresolve  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char strcasecmp ();
-int main (void)
-{
-return strcasecmp ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_resolve_strcasecmp=yes
-else
-  ac_cv_lib_resolve_strcasecmp=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolve_strcasecmp" >&5
-$as_echo "$ac_cv_lib_resolve_strcasecmp" >&6; }
-if test "x$ac_cv_lib_resolve_strcasecmp" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBRESOLVE 1
-_ACEOF
-
-  LIBS="-lresolve $LIBS"
-
-fi
-
-fi
-
-
-if test "$ac_cv_lib_resolve_strcasecmp" = "$ac_cv_func_strcasecmp"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strcasecmp in -lresolve" >&5
-$as_echo_n "checking for strcasecmp in -lresolve... " >&6; }
-if ${ac_cv_lib_resolve_strcasecmp+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lresolve -lnsl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char strcasecmp ();
-int main (void)
-{
-return strcasecmp ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_resolve_strcasecmp=yes
-else
-  ac_cv_lib_resolve_strcasecmp=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolve_strcasecmp" >&5
-$as_echo "$ac_cv_lib_resolve_strcasecmp" >&6; }
-if test "x$ac_cv_lib_resolve_strcasecmp" = xyes; then :
-  LIBS="-lresolve $LIBS"
-fi
-
-fi
-ac_cv_func_strcasecmp="no"
-
-
-cares_includes_winsock2="\
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
-#  endif
-#endif
-/* includes end */"
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for windows.h" >&5
-$as_echo_n "checking for windows.h... " >&6; }
-if ${ac_cv_header_windows_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINDOWS_H shall not be defined.
-#else
-        int dummy=2*WINVER;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_windows_h="yes"
-
-else
-
-      ac_cv_header_windows_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_windows_h" >&5
-$as_echo "$ac_cv_header_windows_h" >&6; }
-  case "$ac_cv_header_windows_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINDOWS_H 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define WIN32_LEAN_AND_MEAN 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock.h" >&5
-$as_echo_n "checking for winsock.h... " >&6; }
-if ${ac_cv_header_winsock_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINSOCK_H shall not be defined.
-#else
-        int dummy=WSACleanup();
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_winsock_h="yes"
-
-else
-
-      ac_cv_header_winsock_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_winsock_h" >&5
-$as_echo "$ac_cv_header_winsock_h" >&6; }
-  case "$ac_cv_header_winsock_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock2.h" >&5
-$as_echo_n "checking for winsock2.h... " >&6; }
-if ${ac_cv_header_winsock2_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WINSOCK2_H shall not be defined.
-#else
-        int dummy=2*IPPROTO_ESP;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_winsock2_h="yes"
-
-else
-
-      ac_cv_header_winsock2_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_winsock2_h" >&5
-$as_echo "$ac_cv_header_winsock2_h" >&6; }
-  case "$ac_cv_header_winsock2_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK2_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for connect in libraries" >&5
-$as_echo_n "checking for connect in libraries... " >&6; }
-  tst_connect_save_LIBS="$LIBS"
-  tst_connect_need_LIBS="unknown"
-  for tst_lib in '' '-lsocket' ; do
-    if test "$tst_connect_need_LIBS" = "unknown"; then
-      LIBS="$tst_lib $tst_connect_save_LIBS"
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $cares_includes_winsock2
-          #ifndef HAVE_WINDOWS_H
-            int connect(int, void*, int);
-          #endif
-
-int main (void)
-{
-
-          if(0 != connect(0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-        tst_connect_need_LIBS="$tst_lib"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    fi
-  done
-  LIBS="$tst_connect_save_LIBS"
-  #
-  case X-"$tst_connect_need_LIBS" in
-    X-unknown)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: cannot find connect" >&5
-$as_echo "cannot find connect" >&6; }
-      as_fn_error $? "cannot find connect function in libraries." "$LINENO" 5
-      ;;
-    X-)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      ;;
-    *)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_connect_need_LIBS" >&5
-$as_echo "$tst_connect_need_LIBS" >&6; }
-      LIBS="$tst_connect_need_LIBS $tst_connect_save_LIBS"
-      ;;
-  esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5
-$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
-if ${ac_cv_header_time+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-
-int main (void)
-{
-if ((struct tm *) 0)
-return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_time=yes
-else
-  ac_cv_header_time=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5
-$as_echo "$ac_cv_header_time" >&6; }
-if test $ac_cv_header_time = yes; then
-
-$as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h
-
-fi
-
-
-    for ac_header in sys/types.h sys/time.h time.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for monotonic clock_gettime" >&5
-$as_echo_n "checking for monotonic clock_gettime... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-
-int main (void)
-{
-
-      struct timespec ts;
-      (void)clock_gettime(CLOCK_MONOTONIC, &ts);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    ac_cv_func_clock_gettime="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_clock_gettime="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-
-    #
-  if test "$ac_cv_func_clock_gettime" = "yes"; then
-    #
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in libraries" >&5
-$as_echo_n "checking for clock_gettime in libraries... " >&6; }
-    #
-    curl_cv_save_LIBS="$LIBS"
-    curl_cv_gclk_LIBS="unknown"
-    #
-    for x_xlibs in '' '-lrt' '-lposix4' ; do
-      if test "$curl_cv_gclk_LIBS" = "unknown"; then
-        if test -z "$x_xlibs"; then
-          LIBS="$curl_cv_save_LIBS"
-        else
-          LIBS="$x_xlibs $curl_cv_save_LIBS"
-        fi
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-
-int main (void)
-{
-
-            struct timespec ts;
-            (void)clock_gettime(CLOCK_MONOTONIC, &ts);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-          curl_cv_gclk_LIBS="$x_xlibs"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-      fi
-    done
-    #
-    LIBS="$curl_cv_save_LIBS"
-    #
-    case X-"$curl_cv_gclk_LIBS" in
-      X-unknown)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: cannot find clock_gettime" >&5
-$as_echo "cannot find clock_gettime" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&5
-$as_echo "$as_me: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&2;}
-        ac_cv_func_clock_gettime="no"
-        ;;
-      X-)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no additional lib required" >&5
-$as_echo "no additional lib required" >&6; }
-        ac_cv_func_clock_gettime="yes"
-        ;;
-      *)
-        if test -z "$curl_cv_save_LIBS"; then
-          LIBS="$curl_cv_gclk_LIBS"
-        else
-          LIBS="$curl_cv_gclk_LIBS $curl_cv_save_LIBS"
-        fi
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_gclk_LIBS" >&5
-$as_echo "$curl_cv_gclk_LIBS" >&6; }
-        ac_cv_func_clock_gettime="yes"
-        ;;
-    esac
-    #
-        if test "x$cross_compiling" != "xyes" &&
-      test "$ac_cv_func_clock_gettime" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if monotonic clock_gettime works" >&5
-$as_echo_n "checking if monotonic clock_gettime works... " >&6; }
-      if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-
-int main (void)
-{
-
-          struct timespec ts;
-          if (0 == clock_gettime(CLOCK_MONOTONIC, &ts))
-            exit(0);
-          else
-            exit(1);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&5
-$as_echo "$as_me: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&2;}
-        ac_cv_func_clock_gettime="no"
-        LIBS="$curl_cv_save_LIBS"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-    fi
-    #
-    case "$ac_cv_func_clock_gettime" in
-      yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_CLOCK_GETTIME_MONOTONIC 1
-_ACEOF
-
-        ;;
-    esac
-    #
-  fi
-  #
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use libgcc" >&5
-$as_echo_n "checking whether to use libgcc... " >&6; }
-# Check whether --enable-libgcc was given.
-if test "${enable_libgcc+set}" = set; then :
-  enableval=$enable_libgcc;  case "$enableval" in
-  yes)
-        LIBS="$LIBS -lgcc"
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-		   (('a' <= (c) && (c) <= 'i') \
-		     || ('j' <= (c) && (c) <= 'r') \
-		     || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-	|| toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for malloc.h" >&5
-$as_echo_n "checking for malloc.h... " >&6; }
-if ${ac_cv_header_malloc_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <malloc.h>
-
-int main (void)
-{
-
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_malloc_h="yes"
-
-else
-
-      ac_cv_header_malloc_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_malloc_h" >&5
-$as_echo "$ac_cv_header_malloc_h" >&6; }
-  if test "$ac_cv_header_malloc_h" = "yes"; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_MALLOC_H 1
-_ACEOF
-
-    #
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <stdlib.h>
-
-int main (void)
-{
-
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      curl_cv_need_header_malloc_h="no"
-
-else
-
-      curl_cv_need_header_malloc_h="yes"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    #
-    case "$curl_cv_need_header_malloc_h" in
-      yes)
-
-cat >>confdefs.h <<_ACEOF
-#define NEED_MALLOC_H 1
-_ACEOF
-
-        ;;
-    esac
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for memory.h" >&5
-$as_echo_n "checking for memory.h... " >&6; }
-if ${ac_cv_header_memory_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <memory.h>
-
-int main (void)
-{
-
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_memory_h="yes"
-
-else
-
-      ac_cv_header_memory_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_memory_h" >&5
-$as_echo "$ac_cv_header_memory_h" >&6; }
-  if test "$ac_cv_header_memory_h" = "yes"; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_MEMORY_H 1
-_ACEOF
-
-    #
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <stdlib.h>
-
-int main (void)
-{
-
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      curl_cv_need_header_memory_h="no"
-
-else
-
-      curl_cv_need_header_memory_h="yes"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    #
-    case "$curl_cv_need_header_memory_h" in
-      yes)
-
-cat >>confdefs.h <<_ACEOF
-#define NEED_MEMORY_H 1
-_ACEOF
-
-        ;;
-    esac
-  fi
-
-
-for ac_header in sys/types.h \
-       sys/time.h \
-       sys/select.h \
-       sys/socket.h \
-       sys/ioctl.h \
-       sys/param.h \
-       sys/uio.h \
-       assert.h \
-       netdb.h \
-       netinet/in.h \
-       netinet/tcp.h \
-       net/if.h \
-       errno.h \
-       socket.h \
-       strings.h \
-       stdbool.h \
-       time.h \
-       limits.h \
-       arpa/nameser.h \
-       arpa/nameser_compat.h \
-       arpa/inet.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#include <arpa/nameser.h>
-#endif
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-
-
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
-$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
-if ${ac_cv_c_const+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-/* FIXME: Include the comments suggested by Paul. */
-#ifndef __cplusplus
-  /* Ultrix mips cc rejects this.  */
-  typedef int charset[2];
-  const charset cs;
-  /* SunOS 4.1.1 cc rejects this.  */
-  char const *const *pcpcc;
-  char **ppc;
-  /* NEC SVR4.0.2 mips cc rejects this.  */
-  struct point {int x, y;};
-  static struct point const zero = {0,0};
-  /* AIX XL C 1.02.0.0 rejects this.
-     It does not let you subtract one const X* pointer from another in
-     an arm of an if-expression whose if-part is not a constant
-     expression */
-  const char *g = "string";
-  pcpcc = &g + (g ? g-g : 0);
-  /* HPUX 7.0 cc rejects these. */
-  ++pcpcc;
-  ppc = (char**) pcpcc;
-  pcpcc = (char const *const *) ppc;
-  { /* SCO 3.2v4 cc rejects this.  */
-    char *t;
-    char const *s = 0 ? (char *) 0 : (char const *) 0;
-
-    *t++ = 0;
-    if (s) return 0;
-  }
-  { /* Someone thinks the Sun supposedly-ANSI compiler will reject this.  */
-    int x[] = {25, 17};
-    const int *foo = &x[0];
-    ++foo;
-  }
-  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
-    typedef const int *iptr;
-    iptr p = 0;
-    ++p;
-  }
-  { /* AIX XL C 1.02.0.0 rejects this saying
-       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
-    struct s { int j; const int *ap[3]; };
-    struct s *b; b->j = 5;
-  }
-  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
-    const int foo = 10;
-    if (!foo) return 0;
-  }
-  return !cs[0] && !zero.x;
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_const=yes
-else
-  ac_cv_c_const=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
-$as_echo "$ac_cv_c_const" >&6; }
-if test $ac_cv_c_const = no; then
-
-$as_echo "#define const /**/" >>confdefs.h
-
-fi
-
-ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
-
-else
-
-cat >>confdefs.h <<_ACEOF
-#define size_t unsigned int
-_ACEOF
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5
-$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
-if ${ac_cv_header_time+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-
-int main (void)
-{
-if ((struct tm *) 0)
-return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_time=yes
-else
-  ac_cv_header_time=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5
-$as_echo "$ac_cv_header_time" >&6; }
-if test $ac_cv_header_time = yes; then
-
-$as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h
-
-fi
-
-
-        for ac_header in sys/types.h sys/time.h time.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timeval" >&5
-$as_echo_n "checking for struct timeval... " >&6; }
-if ${ac_cv_struct_timeval+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-int main (void)
-{
-
-        struct timeval ts;
-        ts.tv_sec  = 0;
-        ts.tv_usec = 0;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_struct_timeval="yes"
-
-else
-
-      ac_cv_struct_timeval="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_struct_timeval" >&5
-$as_echo "$ac_cv_struct_timeval" >&6; }
-  case "$ac_cv_struct_timeval" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_TIMEVAL 1
-_ACEOF
-
-      ;;
-  esac
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of size_t" >&5
-$as_echo_n "checking size of size_t... " >&6; }
-if ${ac_cv_sizeof_size_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (size_t))" "ac_cv_sizeof_size_t"        "$ac_includes_default"; then :
-
-else
-  if test "$ac_cv_type_size_t" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (size_t)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_size_t=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_size_t" >&5
-$as_echo "$ac_cv_sizeof_size_t" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_SIZE_T $ac_cv_sizeof_size_t
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5
-$as_echo_n "checking size of int... " >&6; }
-if ${ac_cv_sizeof_int+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int"        "$ac_includes_default"; then :
-
-else
-  if test "$ac_cv_type_int" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (int)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_int=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
-$as_echo "$ac_cv_sizeof_int" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_INT $ac_cv_sizeof_int
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long" >&5
-$as_echo_n "checking size of long... " >&6; }
-if ${ac_cv_sizeof_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long"        "$ac_includes_default"; then :
-
-else
-  if test "$ac_cv_type_long" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (long)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_long=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
-$as_echo "$ac_cv_sizeof_long" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_LONG $ac_cv_sizeof_long
-_ACEOF
-
-
-
-  if test -z "$ac_cv_sizeof_long" ||
-    test "$ac_cv_sizeof_long" -eq "0"; then
-    as_fn_error $? "cannot find out size of long." "$LINENO" 5
-  fi
-
-cat >>confdefs.h <<_EOF
-#define CARES_SIZEOF_LONG $ac_cv_sizeof_long
-_EOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of time_t" >&5
-$as_echo_n "checking size of time_t... " >&6; }
-if ${ac_cv_sizeof_time_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (time_t))" "ac_cv_sizeof_time_t"        "$ac_includes_default"; then :
-
-else
-  if test "$ac_cv_type_time_t" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (time_t)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_time_t=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_time_t" >&5
-$as_echo "$ac_cv_sizeof_time_t" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_TIME_T $ac_cv_sizeof_time_t
-_ACEOF
-
-
-
-ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "$ac_includes_default"
-if test "x$ac_cv_type_long_long" = xyes; then :
-
-$as_echo "#define HAVE_LONGLONG 1" >>confdefs.h
-
-   longlong="yes"
-
-fi
-
-
-if test "xyes" = "x$longlong"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if numberLL works" >&5
-$as_echo_n "checking if numberLL works... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      long long val = 1000LL;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define HAVE_LL 1" >>confdefs.h
-
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-
-# check for ssize_t
-ac_fn_c_check_type "$LINENO" "ssize_t" "ac_cv_type_ssize_t" "$ac_includes_default"
-if test "x$ac_cv_type_ssize_t" = xyes; then :
-
-else
-
-$as_echo "#define ssize_t int" >>confdefs.h
-
-fi
-
-
-# check for bool type
-ac_fn_c_check_type "$LINENO" "bool" "ac_cv_type_bool" "
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_STDBOOL_H
-#include <stdbool.h>
-#endif
-
-"
-if test "x$ac_cv_type_bool" = xyes; then :
-
-
-$as_echo "#define HAVE_BOOL_T 1" >>confdefs.h
-
-
-fi
-
-
-
-cares_includes_ws2tcpip="\
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#    ifdef HAVE_WS2TCPIP_H
-#       include <ws2tcpip.h>
-#    endif
-#  endif
-#endif
-/* includes end */"
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for windows.h" >&5
-$as_echo_n "checking for windows.h... " >&6; }
-if ${ac_cv_header_windows_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINDOWS_H shall not be defined.
-#else
-        int dummy=2*WINVER;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_windows_h="yes"
-
-else
-
-      ac_cv_header_windows_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_windows_h" >&5
-$as_echo "$ac_cv_header_windows_h" >&6; }
-  case "$ac_cv_header_windows_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINDOWS_H 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define WIN32_LEAN_AND_MEAN 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock2.h" >&5
-$as_echo_n "checking for winsock2.h... " >&6; }
-if ${ac_cv_header_winsock2_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WINSOCK2_H shall not be defined.
-#else
-        int dummy=2*IPPROTO_ESP;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_winsock2_h="yes"
-
-else
-
-      ac_cv_header_winsock2_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_winsock2_h" >&5
-$as_echo "$ac_cv_header_winsock2_h" >&6; }
-  case "$ac_cv_header_winsock2_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK2_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ws2tcpip.h" >&5
-$as_echo_n "checking for ws2tcpip.h... " >&6; }
-if ${ac_cv_header_ws2tcpip_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-#include <ws2tcpip.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WS2TCPIP_H shall not be defined.
-#else
-        int dummy=2*IP_PKTINFO;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_ws2tcpip_h="yes"
-
-else
-
-      ac_cv_header_ws2tcpip_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_ws2tcpip_h" >&5
-$as_echo "$ac_cv_header_ws2tcpip_h" >&6; }
-  case "$ac_cv_header_ws2tcpip_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WS2TCPIP_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-
-cares_includes_sys_socket="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$cares_includes_sys_socket
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-cares_preprocess_callconv="\
-/* preprocess start */
-#ifdef HAVE_WINDOWS_H
-#  define FUNCALLCONV __stdcall
-#else
-#  define FUNCALLCONV
-#endif
-/* preprocess end */"
-
-
-        #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ares_socklen_t data type" >&5
-$as_echo_n "checking for ares_socklen_t data type... " >&6; }
-  cares_typeof_ares_socklen_t="unknown"
-  for arg1 in int SOCKET; do
-    for arg2 in 'struct sockaddr' void; do
-      for t in socklen_t int size_t 'unsigned int' long 'unsigned long' void; do
-        if test "$cares_typeof_ares_socklen_t" = "unknown"; then
-          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-              $cares_includes_ws2tcpip
-              $cares_includes_sys_socket
-              $cares_preprocess_callconv
-              extern int getpeername($arg1, $arg2 *, $t *);
-
-int main (void)
-{
-
-              $t *lenptr = 0;
-              if(0 != getpeername(0, 0, lenptr))
-                return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-            cares_typeof_ares_socklen_t="$t"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-        fi
-      done
-    done
-  done
-  for t in socklen_t int; do
-    if test "$cares_typeof_ares_socklen_t" = "void"; then
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $cares_includes_sys_socket
-          typedef $t ares_socklen_t;
-
-int main (void)
-{
-
-          ares_socklen_t dummy;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        cares_typeof_ares_socklen_t="$t"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-  done
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cares_typeof_ares_socklen_t" >&5
-$as_echo "$cares_typeof_ares_socklen_t" >&6; }
-  if test "$cares_typeof_ares_socklen_t" = "void" ||
-    test "$cares_typeof_ares_socklen_t" = "unknown"; then
-    as_fn_error $? "cannot find data type for ares_socklen_t." "$LINENO" 5
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of ares_socklen_t" >&5
-$as_echo_n "checking size of ares_socklen_t... " >&6; }
-  cares_sizeof_ares_socklen_t="unknown"
-  cares_pull_headers_socklen_t="unknown"
-  if test "$ac_cv_header_ws2tcpip_h" = "yes"; then
-    tst_pull_header_checks='none ws2tcpip'
-    tst_size_checks='4'
-  else
-    tst_pull_header_checks='none systypes syssocket'
-    tst_size_checks='4 8 2'
-  fi
-  for tst_size in $tst_size_checks; do
-    for tst_pull_headers in $tst_pull_header_checks; do
-      if test "$cares_sizeof_ares_socklen_t" = "unknown"; then
-        case $tst_pull_headers in
-          ws2tcpip)
-            tmp_includes="$cares_includes_ws2tcpip"
-            ;;
-          systypes)
-            tmp_includes="$cares_includes_sys_types"
-            ;;
-          syssocket)
-            tmp_includes="$cares_includes_sys_socket"
-            ;;
-          *)
-            tmp_includes=""
-            ;;
-        esac
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-            $tmp_includes
-            typedef $cares_typeof_ares_socklen_t ares_socklen_t;
-            typedef char dummy_arr[sizeof(ares_socklen_t) == $tst_size ? 1 : -1];
-
-int main (void)
-{
-
-            ares_socklen_t dummy;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-          cares_sizeof_ares_socklen_t="$tst_size"
-          cares_pull_headers_socklen_t="$tst_pull_headers"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-      fi
-    done
-  done
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cares_sizeof_ares_socklen_t" >&5
-$as_echo "$cares_sizeof_ares_socklen_t" >&6; }
-  if test "$cares_sizeof_ares_socklen_t" = "unknown"; then
-    as_fn_error $? "cannot find out size of ares_socklen_t." "$LINENO" 5
-  fi
-  #
-  case $cares_pull_headers_socklen_t in
-    ws2tcpip)
-
-cat >>confdefs.h <<_EOF
-#define CARES_PULL_WS2TCPIP_H 1
-_EOF
-
-      ;;
-    systypes)
-
-cat >>confdefs.h <<_EOF
-#define CARES_PULL_SYS_TYPES_H 1
-_EOF
-
-      ;;
-    syssocket)
-
-cat >>confdefs.h <<_EOF
-#define CARES_PULL_SYS_TYPES_H 1
-_EOF
-
-
-cat >>confdefs.h <<_EOF
-#define CARES_PULL_SYS_SOCKET_H 1
-_EOF
-
-      ;;
-  esac
-
-cat >>confdefs.h <<_EOF
-#define CARES_TYPEOF_ARES_SOCKLEN_T $cares_typeof_ares_socklen_t
-_EOF
-
-
-cat >>confdefs.h <<_EOF
-#define CARES_SIZEOF_ARES_SOCKLEN_T $cares_sizeof_ares_socklen_t
-_EOF
-
-
-
-
-  ac_fn_c_check_type "$LINENO" "in_addr_t" "ac_cv_type_in_addr_t" "
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-
-"
-if test "x$ac_cv_type_in_addr_t" = xyes; then :
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for in_addr_t equivalent" >&5
-$as_echo_n "checking for in_addr_t equivalent... " >&6; }
-if ${curl_cv_in_addr_t_equiv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-      curl_cv_in_addr_t_equiv="unknown"
-      for t in "unsigned long" int size_t unsigned long; do
-        if test "$curl_cv_in_addr_t_equiv" = "unknown"; then
-          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-
-int main (void)
-{
-
-              $t data = inet_addr ("1.2.3.4");
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-            curl_cv_in_addr_t_equiv="$t"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-        fi
-      done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_in_addr_t_equiv" >&5
-$as_echo "$curl_cv_in_addr_t_equiv" >&6; }
-    case "$curl_cv_in_addr_t_equiv" in
-      unknown)
-        as_fn_error $? "Cannot find a type to use in place of in_addr_t" "$LINENO" 5
-        ;;
-      *)
-
-cat >>confdefs.h <<_ACEOF
-#define in_addr_t $curl_cv_in_addr_t_equiv
-_ACEOF
-
-        ;;
-    esac
-
-fi
-
-
-
-
-   ac_fn_c_check_type "$LINENO" "struct sockaddr_storage" "ac_cv_type_struct_sockaddr_storage" "
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-
-"
-if test "x$ac_cv_type_struct_sockaddr_storage" = xyes; then :
-
-$as_echo "#define HAVE_STRUCT_SOCKADDR_STORAGE 1" >>confdefs.h
-
-fi
-
-
-
-
-  for ac_header in signal.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "signal.h" "ac_cv_header_signal_h" "$ac_includes_default"
-if test "x$ac_cv_header_signal_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGNAL_H 1
-_ACEOF
-
-fi
-
-done
-
-  ac_fn_c_check_type "$LINENO" "sig_atomic_t" "ac_cv_type_sig_atomic_t" "
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-
-"
-if test "x$ac_cv_type_sig_atomic_t" = xyes; then :
-
-
-$as_echo "#define HAVE_SIG_ATOMIC_T 1" >>confdefs.h
-
-
-fi
-
-  case "$ac_cv_type_sig_atomic_t" in
-    yes)
-      #
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sig_atomic_t is already defined as volatile" >&5
-$as_echo_n "checking if sig_atomic_t is already defined as volatile... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-
-int main (void)
-{
-
-          static volatile sig_atomic_t dummy = 0;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        ac_cv_sig_atomic_t_volatile="no"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        ac_cv_sig_atomic_t_volatile="yes"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-      #
-      if test "$ac_cv_sig_atomic_t_volatile" = "yes"; then
-
-$as_echo "#define HAVE_SIG_ATOMIC_T_VOLATILE 1" >>confdefs.h
-
-      fi
-      ;;
-  esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
-$as_echo_n "checking return type of signal handlers... " >&6; }
-if ${ac_cv_type_signal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-
-int main (void)
-{
-return *(signal (0, 0)) (0) == 1;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_type_signal=int
-else
-  ac_cv_type_signal=void
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5
-$as_echo "$ac_cv_type_signal" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define RETSIGTYPE $ac_cv_type_signal
-_ACEOF
-
-
-
-
-      for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for recv" >&5
-$as_echo_n "checking for recv... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-
-int main (void)
-{
-
-      recv(0, 0, 0, 0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    curl_cv_recv="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    curl_cv_recv="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$curl_cv_recv" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking types of args and return type for recv" >&5
-$as_echo_n "checking types of args and return type for recv... " >&6; }
-if ${curl_cv_func_recv_args+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-      curl_cv_func_recv_args="unknown"
-      for recv_retv in 'int' 'ssize_t'; do
-        for recv_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for recv_arg2 in 'char *' 'void *'; do
-            for recv_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for recv_arg4 in 'int' 'unsigned int'; do
-                if test "$curl_cv_func_recv_args" = "unknown"; then
-                  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define RECVCALLCONV PASCAL
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define RECVCALLCONV
-#endif
-                      extern $recv_retv RECVCALLCONV
-                      recv($recv_arg1, $recv_arg2, $recv_arg3, $recv_arg4);
-
-int main (void)
-{
-
-                      $recv_arg1 s=0;
-                      $recv_arg2 buf=0;
-                      $recv_arg3 len=0;
-                      $recv_arg4 flags=0;
-                      $recv_retv res = recv(s, buf, len, flags);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-                    curl_cv_func_recv_args="$recv_arg1,$recv_arg2,$recv_arg3,$recv_arg4,$recv_retv"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-                fi
-              done
-            done
-          done
-        done
-      done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_recv_args" >&5
-$as_echo "$curl_cv_func_recv_args" >&6; } # AC-CACHE-CHECK
-    if test "$curl_cv_func_recv_args" = "unknown"; then
-      as_fn_error $? "Cannot find proper types to use for recv args" "$LINENO" 5
-    else
-      recv_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_recv_args" | sed 's/\*/\*/g'`
-      IFS=$recv_prev_IFS
-      shift
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_ARG1 $1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_ARG2 $2
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_ARG3 $3
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_ARG4 $4
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_RETV $5
-_ACEOF
-
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_RECV 1
-_ACEOF
-
-      ac_cv_func_recv="yes"
-    fi
-  else
-    as_fn_error $? "Unable to link function recv" "$LINENO" 5
-  fi
-
-
-      for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for recvfrom" >&5
-$as_echo_n "checking for recvfrom... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-
-int main (void)
-{
-
-      recvfrom(0, 0, 0, 0, 0, 0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    curl_cv_recvfrom="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    curl_cv_recvfrom="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$curl_cv_recvfrom" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking types of args and return type for recvfrom" >&5
-$as_echo_n "checking types of args and return type for recvfrom... " >&6; }
-if ${curl_cv_func_recvfrom_args+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-      curl_cv_func_recvfrom_args="unknown"
-      for recvfrom_retv in 'int' 'ssize_t'; do
-        for recvfrom_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for recvfrom_arg2 in 'char *' 'void *'; do
-            for recvfrom_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for recvfrom_arg4 in 'int' 'unsigned int'; do
-                for recvfrom_arg5 in 'struct sockaddr *' 'void *'; do
-                  for recvfrom_arg6 in 'socklen_t *' 'int *' 'unsigned int *' 'size_t *' 'void *'; do
-                    if test "$curl_cv_func_recvfrom_args" = "unknown"; then
-                      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define RECVFROMCALLCONV PASCAL
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define RECVFROMCALLCONV
-#endif
-                          extern $recvfrom_retv RECVFROMCALLCONV
-                          recvfrom($recvfrom_arg1, $recvfrom_arg2,
-                                   $recvfrom_arg3, $recvfrom_arg4,
-                                   $recvfrom_arg5, $recvfrom_arg6);
-
-int main (void)
-{
-
-                          $recvfrom_arg1 s=0;
-                          $recvfrom_arg2 buf=0;
-                          $recvfrom_arg3 len=0;
-                          $recvfrom_arg4 flags=0;
-                          $recvfrom_arg5 addr=0;
-                          $recvfrom_arg6 addrlen=0;
-                          $recvfrom_retv res=0;
-                          res = recvfrom(s, buf, len, flags, addr, addrlen);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-                        curl_cv_func_recvfrom_args="$recvfrom_arg1,$recvfrom_arg2,$recvfrom_arg3,$recvfrom_arg4,$recvfrom_arg5,$recvfrom_arg6,$recvfrom_retv"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-                    fi
-                  done
-                done
-              done
-            done
-          done
-        done
-      done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_recvfrom_args" >&5
-$as_echo "$curl_cv_func_recvfrom_args" >&6; } # AC-CACHE-CHECK
-    # Nearly last minute change for this release starts here
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_RECVFROM 1
-_ACEOF
-
-    ac_cv_func_recvfrom="yes"
-    # Nearly last minute change for this release ends here
-    if test "$curl_cv_func_recvfrom_args" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find proper types to use for recvfrom args" >&5
-$as_echo "$as_me: WARNING: Cannot find proper types to use for recvfrom args" >&2;}
-    else
-      recvfrom_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_recvfrom_args" | sed 's/\*/\*/g'`
-      IFS=$recvfrom_prev_IFS
-      shift
-      #
-      recvfrom_ptrt_arg2=$2
-      recvfrom_ptrt_arg5=$5
-      recvfrom_ptrt_arg6=$6
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG1 $1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG3 $3
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG4 $4
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_RETV $7
-_ACEOF
-
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      recvfrom_type_arg2=`echo $recvfrom_ptrt_arg2 | sed 's/ \*//'`
-      recvfrom_type_arg5=`echo $recvfrom_ptrt_arg5 | sed 's/ \*//'`
-      recvfrom_type_arg6=`echo $recvfrom_ptrt_arg6 | sed 's/ \*//'`
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG2 $recvfrom_type_arg2
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG5 $recvfrom_type_arg5
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG6 $recvfrom_type_arg6
-_ACEOF
-
-      #
-      if test "$recvfrom_type_arg2" = "void"; then
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG2_IS_VOID 1
-_ACEOF
-
-      fi
-      if test "$recvfrom_type_arg5" = "void"; then
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG5_IS_VOID 1
-_ACEOF
-
-      fi
-      if test "$recvfrom_type_arg6" = "void"; then
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG6_IS_VOID 1
-_ACEOF
-
-      fi
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_RECVFROM 1
-_ACEOF
-
-      ac_cv_func_recvfrom="yes"
-    fi
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to link function recvfrom" >&5
-$as_echo "$as_me: WARNING: Unable to link function recvfrom" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Your system will be vulnerable to some forms of DNS cache poisoning" >&5
-$as_echo "$as_me: WARNING: Your system will be vulnerable to some forms of DNS cache poisoning" >&2;}
-  fi
-
-
-      for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for send" >&5
-$as_echo_n "checking for send... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-
-int main (void)
-{
-
-      send(0, 0, 0, 0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    curl_cv_send="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    curl_cv_send="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$curl_cv_send" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking types of args and return type for send" >&5
-$as_echo_n "checking types of args and return type for send... " >&6; }
-if ${curl_cv_func_send_args+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-      curl_cv_func_send_args="unknown"
-      for send_retv in 'int' 'ssize_t'; do
-        for send_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for send_arg2 in 'char *' 'void *' 'const char *' 'const void *'; do
-            for send_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for send_arg4 in 'int' 'unsigned int'; do
-                if test "$curl_cv_func_send_args" = "unknown"; then
-                  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define SENDCALLCONV PASCAL
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define SENDCALLCONV
-#endif
-                      extern $send_retv SENDCALLCONV
-                      send($send_arg1, $send_arg2, $send_arg3, $send_arg4);
-
-int main (void)
-{
-
-                      $send_arg1 s=0;
-                      $send_arg3 len=0;
-                      $send_arg4 flags=0;
-                      $send_retv res = send(s, 0, len, flags);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-                    curl_cv_func_send_args="$send_arg1,$send_arg2,$send_arg3,$send_arg4,$send_retv"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-                fi
-              done
-            done
-          done
-        done
-      done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_send_args" >&5
-$as_echo "$curl_cv_func_send_args" >&6; } # AC-CACHE-CHECK
-    if test "$curl_cv_func_send_args" = "unknown"; then
-      as_fn_error $? "Cannot find proper types to use for send args" "$LINENO" 5
-    else
-      send_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_send_args" | sed 's/\*/\*/g'`
-      IFS=$send_prev_IFS
-      shift
-      #
-      send_qual_type_arg2=$2
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_ARG1 $1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_ARG3 $3
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_ARG4 $4
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_RETV $5
-_ACEOF
-
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      case "$send_qual_type_arg2" in
-        const*)
-          send_qual_arg2=const
-          send_type_arg2=`echo $send_qual_type_arg2 | sed 's/^const //'`
-        ;;
-        *)
-          send_qual_arg2=
-          send_type_arg2=$send_qual_type_arg2
-        ;;
-      esac
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define SEND_QUAL_ARG2 $send_qual_arg2
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_ARG2 $send_type_arg2
-_ACEOF
-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SEND 1
-_ACEOF
-
-      ac_cv_func_send="yes"
-    fi
-  else
-    as_fn_error $? "Unable to link function send" "$LINENO" 5
-  fi
-
-
-  for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MSG_NOSIGNAL" >&5
-$as_echo_n "checking for MSG_NOSIGNAL... " >&6; }
-if ${ac_cv_msg_nosignal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-
-int main (void)
-{
-
-        int flag=MSG_NOSIGNAL;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_msg_nosignal="yes"
-
-else
-
-      ac_cv_msg_nosignal="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_msg_nosignal" >&5
-$as_echo "$ac_cv_msg_nosignal" >&6; }
-  case "$ac_cv_msg_nosignal" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_MSG_NOSIGNAL 1
-_ACEOF
-
-      ;;
-  esac
-
-
-
-cares_includes_socket="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SOCKET_H
-#  include <socket.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$cares_includes_socket
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-      #
-  tst_links_closesocket="unknown"
-  tst_proto_closesocket="unknown"
-  tst_compi_closesocket="unknown"
-  tst_allow_closesocket="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket can be linked" >&5
-$as_echo_n "checking if closesocket can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $cares_includes_winsock2
-      $cares_includes_socket
-
-int main (void)
-{
-
-      if(0 != closesocket(0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_closesocket="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_closesocket="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_closesocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket is prototyped" >&5
-$as_echo_n "checking if closesocket is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_winsock2
-      $cares_includes_socket
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "closesocket" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_closesocket="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_closesocket="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_closesocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket is compilable" >&5
-$as_echo_n "checking if closesocket is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_winsock2
-        $cares_includes_socket
-
-int main (void)
-{
-
-        if(0 != closesocket(0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_closesocket="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_closesocket="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_closesocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket usage allowed" >&5
-$as_echo_n "checking if closesocket usage allowed... " >&6; }
-    if test "x$cares_disallow_closesocket" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_closesocket="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_closesocket="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket might be used" >&5
-$as_echo_n "checking if closesocket might be used... " >&6; }
-  if test "$tst_links_closesocket" = "yes" &&
-     test "$tst_proto_closesocket" = "yes" &&
-     test "$tst_compi_closesocket" = "yes" &&
-     test "$tst_allow_closesocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_CLOSESOCKET 1
-_ACEOF
-
-    ac_cv_func_closesocket="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_closesocket="no"
-  fi
-
-
-    #
-  tst_links_closesocket_camel="unknown"
-  tst_proto_closesocket_camel="unknown"
-  tst_compi_closesocket_camel="unknown"
-  tst_allow_closesocket_camel="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket can be linked" >&5
-$as_echo_n "checking if CloseSocket can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $cares_includes_sys_socket
-
-int main (void)
-{
-
-      if(0 != CloseSocket(0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_closesocket_camel="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_closesocket_camel="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_closesocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket is prototyped" >&5
-$as_echo_n "checking if CloseSocket is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_sys_socket
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "CloseSocket" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_closesocket_camel="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_closesocket_camel="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_closesocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket is compilable" >&5
-$as_echo_n "checking if CloseSocket is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_sys_socket
-
-int main (void)
-{
-
-        if(0 != CloseSocket(0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_closesocket_camel="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_closesocket_camel="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_closesocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket usage allowed" >&5
-$as_echo_n "checking if CloseSocket usage allowed... " >&6; }
-    if test "x$cares_disallow_closesocket_camel" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_closesocket_camel="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_closesocket_camel="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket might be used" >&5
-$as_echo_n "checking if CloseSocket might be used... " >&6; }
-  if test "$tst_links_closesocket_camel" = "yes" &&
-     test "$tst_proto_closesocket_camel" = "yes" &&
-     test "$tst_compi_closesocket_camel" = "yes" &&
-     test "$tst_allow_closesocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_CLOSESOCKET_CAMEL 1
-_ACEOF
-
-    ac_cv_func_closesocket_camel="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_closesocket_camel="no"
-  fi
-
-
-        #
-  tst_links_connect="unknown"
-  tst_proto_connect="unknown"
-  tst_compi_connect="unknown"
-  tst_allow_connect="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect can be linked" >&5
-$as_echo_n "checking if connect can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $cares_includes_winsock2
-      $cares_includes_sys_socket
-      $cares_includes_socket
-
-int main (void)
-{
-
-      if(0 != connect(0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_connect="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_connect="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_connect" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect is prototyped" >&5
-$as_echo_n "checking if connect is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_winsock2
-      $cares_includes_sys_socket
-      $cares_includes_socket
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "connect" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_connect="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_connect="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_connect" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect is compilable" >&5
-$as_echo_n "checking if connect is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_winsock2
-        $cares_includes_sys_socket
-        $cares_includes_socket
-
-int main (void)
-{
-
-        if(0 != connect(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_connect="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_connect="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_connect" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect usage allowed" >&5
-$as_echo_n "checking if connect usage allowed... " >&6; }
-    if test "x$cares_disallow_connect" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_connect="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_connect="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect might be used" >&5
-$as_echo_n "checking if connect might be used... " >&6; }
-  if test "$tst_links_connect" = "yes" &&
-     test "$tst_proto_connect" = "yes" &&
-     test "$tst_compi_connect" = "yes" &&
-     test "$tst_allow_connect" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_CONNECT 1
-_ACEOF
-
-    ac_cv_func_connect="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_connect="no"
-  fi
-
-
-cares_includes_fcntl="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_FCNTL_H
-#  include <fcntl.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h unistd.h fcntl.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$cares_includes_fcntl
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-  tst_links_fcntl="unknown"
-  tst_proto_fcntl="unknown"
-  tst_compi_fcntl="unknown"
-  tst_allow_fcntl="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl can be linked" >&5
-$as_echo_n "checking if fcntl can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define fcntl innocuous_fcntl
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef fcntl
-#ifdef __cplusplus
-extern "C"
-#endif
-char fcntl ();
-#if defined __stub_fcntl || defined __stub___fcntl
-choke me
-#endif
-
-int main (void)
-{
-return fcntl ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_fcntl="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_fcntl="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl is prototyped" >&5
-$as_echo_n "checking if fcntl is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_fcntl
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "fcntl" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_fcntl="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_fcntl="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl is compilable" >&5
-$as_echo_n "checking if fcntl is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_fcntl
-
-int main (void)
-{
-
-        if(0 != fcntl(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_fcntl="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_fcntl="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl usage allowed" >&5
-$as_echo_n "checking if fcntl usage allowed... " >&6; }
-    if test "x$cares_disallow_fcntl" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_fcntl="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_fcntl="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl might be used" >&5
-$as_echo_n "checking if fcntl might be used... " >&6; }
-  if test "$tst_links_fcntl" = "yes" &&
-     test "$tst_proto_fcntl" = "yes" &&
-     test "$tst_compi_fcntl" = "yes" &&
-     test "$tst_allow_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FCNTL 1
-_ACEOF
-
-    ac_cv_func_fcntl="yes"
-
-  #
-  tst_compi_fcntl_o_nonblock="unknown"
-  tst_allow_fcntl_o_nonblock="unknown"
-  #
-  case $host_os in
-    sunos4* | aix3* | beos*)
-            cares_disallow_fcntl_o_nonblock="yes"
-      ;;
-  esac
-  #
-  if test "$ac_cv_func_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl O_NONBLOCK is compilable" >&5
-$as_echo_n "checking if fcntl O_NONBLOCK is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_fcntl
-
-int main (void)
-{
-
-        int flags = 0;
-        if(0 != fcntl(0, F_SETFL, flags | O_NONBLOCK))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_fcntl_o_nonblock="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_fcntl_o_nonblock="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_fcntl_o_nonblock" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl O_NONBLOCK usage allowed" >&5
-$as_echo_n "checking if fcntl O_NONBLOCK usage allowed... " >&6; }
-    if test "x$cares_disallow_fcntl_o_nonblock" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_fcntl_o_nonblock="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_fcntl_o_nonblock="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl O_NONBLOCK might be used" >&5
-$as_echo_n "checking if fcntl O_NONBLOCK might be used... " >&6; }
-  if test "$tst_compi_fcntl_o_nonblock" = "yes" &&
-     test "$tst_allow_fcntl_o_nonblock" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FCNTL_O_NONBLOCK 1
-_ACEOF
-
-    ac_cv_func_fcntl_o_nonblock="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_fcntl_o_nonblock="no"
-  fi
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_fcntl="no"
-  fi
-
-
-cares_includes_netdb="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h netdb.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$cares_includes_netdb
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-        #
-  tst_links_freeaddrinfo="unknown"
-  tst_proto_freeaddrinfo="unknown"
-  tst_compi_freeaddrinfo="unknown"
-  tst_allow_freeaddrinfo="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo can be linked" >&5
-$as_echo_n "checking if freeaddrinfo can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $cares_includes_ws2tcpip
-      $cares_includes_sys_socket
-      $cares_includes_netdb
-
-int main (void)
-{
-
-      freeaddrinfo(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_freeaddrinfo="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_freeaddrinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_freeaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo is prototyped" >&5
-$as_echo_n "checking if freeaddrinfo is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_ws2tcpip
-      $cares_includes_sys_socket
-      $cares_includes_netdb
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "freeaddrinfo" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_freeaddrinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_freeaddrinfo="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_freeaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo is compilable" >&5
-$as_echo_n "checking if freeaddrinfo is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_ws2tcpip
-        $cares_includes_sys_socket
-        $cares_includes_netdb
-
-int main (void)
-{
-
-        freeaddrinfo(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_freeaddrinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_freeaddrinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_freeaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo usage allowed" >&5
-$as_echo_n "checking if freeaddrinfo usage allowed... " >&6; }
-    if test "x$cares_disallow_freeaddrinfo" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_freeaddrinfo="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_freeaddrinfo="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo might be used" >&5
-$as_echo_n "checking if freeaddrinfo might be used... " >&6; }
-  if test "$tst_links_freeaddrinfo" = "yes" &&
-     test "$tst_proto_freeaddrinfo" = "yes" &&
-     test "$tst_compi_freeaddrinfo" = "yes" &&
-     test "$tst_allow_freeaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FREEADDRINFO 1
-_ACEOF
-
-    ac_cv_func_freeaddrinfo="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_freeaddrinfo="no"
-  fi
-
-
-cares_includes_stdlib="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h stdlib.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$cares_includes_stdlib
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-cares_includes_string="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_STRING_H
-#  include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-#  include <strings.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h string.h strings.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$cares_includes_string
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-            #
-  tst_links_getaddrinfo="unknown"
-  tst_proto_getaddrinfo="unknown"
-  tst_compi_getaddrinfo="unknown"
-  tst_works_getaddrinfo="unknown"
-  tst_allow_getaddrinfo="unknown"
-  tst_tsafe_getaddrinfo="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo can be linked" >&5
-$as_echo_n "checking if getaddrinfo can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $cares_includes_ws2tcpip
-      $cares_includes_sys_socket
-      $cares_includes_netdb
-
-int main (void)
-{
-
-      if(0 != getaddrinfo(0, 0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_getaddrinfo="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_getaddrinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_getaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo is prototyped" >&5
-$as_echo_n "checking if getaddrinfo is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_ws2tcpip
-      $cares_includes_sys_socket
-      $cares_includes_netdb
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getaddrinfo" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_getaddrinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_getaddrinfo="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_getaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo is compilable" >&5
-$as_echo_n "checking if getaddrinfo is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_ws2tcpip
-        $cares_includes_sys_socket
-        $cares_includes_netdb
-
-int main (void)
-{
-
-        if(0 != getaddrinfo(0, 0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_getaddrinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_getaddrinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_getaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo seems to work" >&5
-$as_echo_n "checking if getaddrinfo seems to work... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_ws2tcpip
-        $cares_includes_stdlib
-        $cares_includes_string
-        $cares_includes_sys_socket
-        $cares_includes_netdb
-
-int main (void)
-{
-
-        struct addrinfo hints;
-        struct addrinfo *ai = 0;
-        int error;
-
-        memset(&hints, 0, sizeof(hints));
-        hints.ai_flags = AI_NUMERICHOST;
-        hints.ai_family = AF_UNSPEC;
-        hints.ai_socktype = SOCK_STREAM;
-        error = getaddrinfo("127.0.0.1", 0, &hints, &ai);
-        if(error || !ai)
-          exit(1); /* fail */
-        else
-          exit(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_works_getaddrinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_works_getaddrinfo="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-  #
-  if test "$tst_compi_getaddrinfo" = "yes" &&
-    test "$tst_works_getaddrinfo" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo usage allowed" >&5
-$as_echo_n "checking if getaddrinfo usage allowed... " >&6; }
-    if test "x$cares_disallow_getaddrinfo" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_getaddrinfo="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_getaddrinfo="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo might be used" >&5
-$as_echo_n "checking if getaddrinfo might be used... " >&6; }
-  if test "$tst_links_getaddrinfo" = "yes" &&
-     test "$tst_proto_getaddrinfo" = "yes" &&
-     test "$tst_compi_getaddrinfo" = "yes" &&
-     test "$tst_allow_getaddrinfo" = "yes" &&
-     test "$tst_works_getaddrinfo" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETADDRINFO 1
-_ACEOF
-
-    ac_cv_func_getaddrinfo="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_getaddrinfo="no"
-    ac_cv_func_getaddrinfo_threadsafe="no"
-  fi
-  #
-  if test "$ac_cv_func_getaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo is threadsafe" >&5
-$as_echo_n "checking if getaddrinfo is threadsafe... " >&6; }
-    case $host_os in
-      aix[1234].* | aix5.[01].*)
-                tst_tsafe_getaddrinfo="no"
-        ;;
-      aix*)
-                tst_tsafe_getaddrinfo="yes"
-        ;;
-      darwin[12345].*)
-                tst_tsafe_getaddrinfo="no"
-        ;;
-      darwin*)
-                tst_tsafe_getaddrinfo="yes"
-        ;;
-      freebsd[1234].* | freebsd5.[1234]*)
-                tst_tsafe_getaddrinfo="no"
-        ;;
-      freebsd*)
-                tst_tsafe_getaddrinfo="yes"
-        ;;
-      hpux[123456789].* | hpux10.* | hpux11.0* | hpux11.10*)
-                tst_tsafe_getaddrinfo="no"
-        ;;
-      hpux*)
-                tst_tsafe_getaddrinfo="yes"
-        ;;
-      netbsd[123].*)
-                tst_tsafe_getaddrinfo="no"
-        ;;
-      netbsd*)
-                tst_tsafe_getaddrinfo="yes"
-        ;;
-      *bsd*)
-                tst_tsafe_getaddrinfo="no"
-        ;;
-      solaris2*)
-                tst_tsafe_getaddrinfo="yes"
-        ;;
-    esac
-    if test "$tst_tsafe_getaddrinfo" = "unknown"; then
-
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_ws2tcpip
-        $cares_includes_sys_socket
-        $cares_includes_netdb
-
-int main (void)
-{
-#ifdef h_errno
-  return 0;
-#else
-  force compilation error
-#endif
-}
-
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tst_symbol_defined="yes"
-
-else
-
-    tst_symbol_defined="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  if test "$tst_symbol_defined" = "yes"; then
-    curl_cv_have_def_h_errno=yes
-
-  else
-    curl_cv_have_def_h_errno=no
-
-  fi
-
-      if test "$curl_cv_have_def_h_errno" = "no"; then
-        tst_tsafe_getaddrinfo="no"
-      fi
-    fi
-    if test "$tst_tsafe_getaddrinfo" = "unknown"; then
-      tst_tsafe_getaddrinfo="yes"
-    fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_tsafe_getaddrinfo" >&5
-$as_echo "$tst_tsafe_getaddrinfo" >&6; }
-    if test "$tst_tsafe_getaddrinfo" = "yes"; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETADDRINFO_THREADSAFE 1
-_ACEOF
-
-      ac_cv_func_getaddrinfo_threadsafe="yes"
-    else
-      ac_cv_func_getaddrinfo_threadsafe="no"
-    fi
-  fi
-
-
-      #
-  tst_links_gethostbyaddr="unknown"
-  tst_proto_gethostbyaddr="unknown"
-  tst_compi_gethostbyaddr="unknown"
-  tst_allow_gethostbyaddr="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr can be linked" >&5
-$as_echo_n "checking if gethostbyaddr can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $cares_includes_winsock2
-      $cares_includes_netdb
-
-int main (void)
-{
-
-      if(0 != gethostbyaddr(0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_gethostbyaddr="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_gethostbyaddr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_gethostbyaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr is prototyped" >&5
-$as_echo_n "checking if gethostbyaddr is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_winsock2
-      $cares_includes_netdb
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyaddr" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_gethostbyaddr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_gethostbyaddr="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_gethostbyaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr is compilable" >&5
-$as_echo_n "checking if gethostbyaddr is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_winsock2
-        $cares_includes_netdb
-
-int main (void)
-{
-
-        if(0 != gethostbyaddr(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_gethostbyaddr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_gethostbyaddr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_gethostbyaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr usage allowed" >&5
-$as_echo_n "checking if gethostbyaddr usage allowed... " >&6; }
-    if test "x$cares_disallow_gethostbyaddr" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_gethostbyaddr="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_gethostbyaddr="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr might be used" >&5
-$as_echo_n "checking if gethostbyaddr might be used... " >&6; }
-  if test "$tst_links_gethostbyaddr" = "yes" &&
-     test "$tst_proto_gethostbyaddr" = "yes" &&
-     test "$tst_compi_gethostbyaddr" = "yes" &&
-     test "$tst_allow_gethostbyaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETHOSTBYADDR 1
-_ACEOF
-
-    ac_cv_func_gethostbyaddr="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_gethostbyaddr="no"
-  fi
-
-
-      #
-  tst_links_gethostbyname="unknown"
-  tst_proto_gethostbyname="unknown"
-  tst_compi_gethostbyname="unknown"
-  tst_allow_gethostbyname="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname can be linked" >&5
-$as_echo_n "checking if gethostbyname can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $cares_includes_winsock2
-      $cares_includes_netdb
-
-int main (void)
-{
-
-      if(0 != gethostbyname(0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_gethostbyname="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_gethostbyname="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_gethostbyname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname is prototyped" >&5
-$as_echo_n "checking if gethostbyname is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_winsock2
-      $cares_includes_netdb
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyname" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_gethostbyname="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_gethostbyname="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_gethostbyname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname is compilable" >&5
-$as_echo_n "checking if gethostbyname is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_winsock2
-        $cares_includes_netdb
-
-int main (void)
-{
-
-        if(0 != gethostbyname(0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_gethostbyname="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_gethostbyname="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_gethostbyname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname usage allowed" >&5
-$as_echo_n "checking if gethostbyname usage allowed... " >&6; }
-    if test "x$cares_disallow_gethostbyname" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_gethostbyname="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_gethostbyname="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname might be used" >&5
-$as_echo_n "checking if gethostbyname might be used... " >&6; }
-  if test "$tst_links_gethostbyname" = "yes" &&
-     test "$tst_proto_gethostbyname" = "yes" &&
-     test "$tst_compi_gethostbyname" = "yes" &&
-     test "$tst_allow_gethostbyname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETHOSTBYNAME 1
-_ACEOF
-
-    ac_cv_func_gethostbyname="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_gethostbyname="no"
-  fi
-
-
-cares_includes_unistd="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h unistd.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$cares_includes_unistd
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-      #
-  tst_links_gethostname="unknown"
-  tst_proto_gethostname="unknown"
-  tst_compi_gethostname="unknown"
-  tst_allow_gethostname="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname can be linked" >&5
-$as_echo_n "checking if gethostname can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $cares_includes_winsock2
-      $cares_includes_unistd
-
-int main (void)
-{
-
-      if(0 != gethostname(0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_gethostname="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_gethostname="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname is prototyped" >&5
-$as_echo_n "checking if gethostname is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_winsock2
-      $cares_includes_unistd
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostname" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_gethostname="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_gethostname="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname is compilable" >&5
-$as_echo_n "checking if gethostname is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_winsock2
-        $cares_includes_unistd
-
-int main (void)
-{
-
-        if(0 != gethostname(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_gethostname="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_gethostname="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname usage allowed" >&5
-$as_echo_n "checking if gethostname usage allowed... " >&6; }
-    if test "x$cares_disallow_gethostname" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_gethostname="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_gethostname="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname might be used" >&5
-$as_echo_n "checking if gethostname might be used... " >&6; }
-  if test "$tst_links_gethostname" = "yes" &&
-     test "$tst_proto_gethostname" = "yes" &&
-     test "$tst_compi_gethostname" = "yes" &&
-     test "$tst_allow_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETHOSTNAME 1
-_ACEOF
-
-    ac_cv_func_gethostname="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_gethostname="no"
-  fi
-
-
-    #
-  tst_links_getservbyport_r="unknown"
-  tst_proto_getservbyport_r="unknown"
-  tst_compi_getservbyport_r="unknown"
-  tst_allow_getservbyport_r="unknown"
-  tst_nargs_getservbyport_r="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r can be linked" >&5
-$as_echo_n "checking if getservbyport_r can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define getservbyport_r innocuous_getservbyport_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef getservbyport_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char getservbyport_r ();
-#if defined __stub_getservbyport_r || defined __stub___getservbyport_r
-choke me
-#endif
-
-int main (void)
-{
-return getservbyport_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_getservbyport_r="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_getservbyport_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_getservbyport_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r is prototyped" >&5
-$as_echo_n "checking if getservbyport_r is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_netdb
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getservbyport_r" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_getservbyport_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_getservbyport_r="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_getservbyport_r" = "yes"; then
-    if test "$tst_nargs_getservbyport_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r takes 4 args." >&5
-$as_echo_n "checking if getservbyport_r takes 4 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $cares_includes_netdb
-
-int main (void)
-{
-
-          if(0 != getservbyport_r(0, 0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_getservbyport_r="yes"
-        tst_nargs_getservbyport_r="4"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_getservbyport_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test "$tst_nargs_getservbyport_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r takes 5 args." >&5
-$as_echo_n "checking if getservbyport_r takes 5 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $cares_includes_netdb
-
-int main (void)
-{
-
-          if(0 != getservbyport_r(0, 0, 0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_getservbyport_r="yes"
-        tst_nargs_getservbyport_r="5"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_getservbyport_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test "$tst_nargs_getservbyport_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r takes 6 args." >&5
-$as_echo_n "checking if getservbyport_r takes 6 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $cares_includes_netdb
-
-int main (void)
-{
-
-          if(0 != getservbyport_r(0, 0, 0, 0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_getservbyport_r="yes"
-        tst_nargs_getservbyport_r="6"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_getservbyport_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r is compilable" >&5
-$as_echo_n "checking if getservbyport_r is compilable... " >&6; }
-    if test "$tst_compi_getservbyport_r" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-  fi
-  #
-  if test "$tst_compi_getservbyport_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r usage allowed" >&5
-$as_echo_n "checking if getservbyport_r usage allowed... " >&6; }
-    if test "x$cares_disallow_getservbyport_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_getservbyport_r="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_getservbyport_r="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r might be used" >&5
-$as_echo_n "checking if getservbyport_r might be used... " >&6; }
-  if test "$tst_links_getservbyport_r" = "yes" &&
-     test "$tst_proto_getservbyport_r" = "yes" &&
-     test "$tst_compi_getservbyport_r" = "yes" &&
-     test "$tst_allow_getservbyport_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETSERVBYPORT_R 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define GETSERVBYPORT_R_ARGS $tst_nargs_getservbyport_r
-_ACEOF
-
-    if test "$tst_nargs_getservbyport_r" -eq "4"; then
-
-$as_echo "#define GETSERVBYPORT_R_BUFSIZE sizeof(struct servent_data)" >>confdefs.h
-
-    else
-
-$as_echo "#define GETSERVBYPORT_R_BUFSIZE 4096" >>confdefs.h
-
-    fi
-    ac_cv_func_getservbyport_r="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_getservbyport_r="no"
-  fi
-
-
-cares_includes_arpa_inet="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h sys/socket.h netinet/in.h arpa/inet.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$cares_includes_arpa_inet
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-        #
-  tst_links_inet_ntop="unknown"
-  tst_proto_inet_ntop="unknown"
-  tst_compi_inet_ntop="unknown"
-  tst_works_inet_ntop="unknown"
-  tst_allow_inet_ntop="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop can be linked" >&5
-$as_echo_n "checking if inet_ntop can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define inet_ntop innocuous_inet_ntop
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef inet_ntop
-#ifdef __cplusplus
-extern "C"
-#endif
-char inet_ntop ();
-#if defined __stub_inet_ntop || defined __stub___inet_ntop
-choke me
-#endif
-
-int main (void)
-{
-return inet_ntop ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_inet_ntop="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_inet_ntop="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_inet_ntop" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop is prototyped" >&5
-$as_echo_n "checking if inet_ntop is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_arpa_inet
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "inet_ntop" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_inet_ntop="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_inet_ntop="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_inet_ntop" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop is compilable" >&5
-$as_echo_n "checking if inet_ntop is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_arpa_inet
-
-int main (void)
-{
-
-        if(0 != inet_ntop(0, 0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_inet_ntop="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_inet_ntop="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_inet_ntop" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop seems to work" >&5
-$as_echo_n "checking if inet_ntop seems to work... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_stdlib
-        $cares_includes_arpa_inet
-        $cares_includes_string
-
-int main (void)
-{
-
-        char ipv6res[sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255")];
-        char ipv4res[sizeof "255.255.255.255"];
-        unsigned char ipv6a[26];
-        unsigned char ipv4a[5];
-        char *ipv6ptr = 0;
-        char *ipv4ptr = 0;
-        /* - */
-        ipv4res[0] = '\0';
-        ipv4a[0] = 0xc0;
-        ipv4a[1] = 0xa8;
-        ipv4a[2] = 0x64;
-        ipv4a[3] = 0x01;
-        ipv4a[4] = 0x01;
-        /* - */
-        ipv4ptr = inet_ntop(AF_INET, ipv4a, ipv4res, sizeof(ipv4res));
-        if(!ipv4ptr)
-          exit(1); /* fail */
-        if(ipv4ptr != ipv4res)
-          exit(1); /* fail */
-        if(!ipv4ptr[0])
-          exit(1); /* fail */
-        if(memcmp(ipv4res, "192.168.100.1", 13) != 0)
-          exit(1); /* fail */
-        /* - */
-        ipv6res[0] = '\0';
-        memset(ipv6a, 0, sizeof(ipv6a));
-        ipv6a[0] = 0xfe;
-        ipv6a[1] = 0x80;
-        ipv6a[8] = 0x02;
-        ipv6a[9] = 0x14;
-        ipv6a[10] = 0x4f;
-        ipv6a[11] = 0xff;
-        ipv6a[12] = 0xfe;
-        ipv6a[13] = 0x0b;
-        ipv6a[14] = 0x76;
-        ipv6a[15] = 0xc8;
-        ipv6a[25] = 0x01;
-        /* - */
-        ipv6ptr = inet_ntop(AF_INET6, ipv6a, ipv6res, sizeof(ipv6res));
-        if(!ipv6ptr)
-          exit(1); /* fail */
-        if(ipv6ptr != ipv6res)
-          exit(1); /* fail */
-        if(!ipv6ptr[0])
-          exit(1); /* fail */
-        if(memcmp(ipv6res, "fe80::214:4fff:fe0b:76c8", 24) != 0)
-          exit(1); /* fail */
-        /* - */
-        exit(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_works_inet_ntop="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_works_inet_ntop="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-  #
-  if test "$tst_compi_inet_ntop" = "yes" &&
-    test "$tst_works_inet_ntop" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop usage allowed" >&5
-$as_echo_n "checking if inet_ntop usage allowed... " >&6; }
-    if test "x$cares_disallow_inet_ntop" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_inet_ntop="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_inet_ntop="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop might be used" >&5
-$as_echo_n "checking if inet_ntop might be used... " >&6; }
-  if test "$tst_links_inet_ntop" = "yes" &&
-     test "$tst_proto_inet_ntop" = "yes" &&
-     test "$tst_compi_inet_ntop" = "yes" &&
-     test "$tst_allow_inet_ntop" = "yes" &&
-     test "$tst_works_inet_ntop" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_INET_NTOP 1
-_ACEOF
-
-    ac_cv_func_inet_ntop="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_inet_ntop="no"
-  fi
-
-
-        #
-  tst_links_inet_pton="unknown"
-  tst_proto_inet_pton="unknown"
-  tst_compi_inet_pton="unknown"
-  tst_works_inet_pton="unknown"
-  tst_allow_inet_pton="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton can be linked" >&5
-$as_echo_n "checking if inet_pton can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define inet_pton innocuous_inet_pton
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef inet_pton
-#ifdef __cplusplus
-extern "C"
-#endif
-char inet_pton ();
-#if defined __stub_inet_pton || defined __stub___inet_pton
-choke me
-#endif
-
-int main (void)
-{
-return inet_pton ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_inet_pton="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_inet_pton="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_inet_pton" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton is prototyped" >&5
-$as_echo_n "checking if inet_pton is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_arpa_inet
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "inet_pton" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_inet_pton="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_inet_pton="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_inet_pton" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton is compilable" >&5
-$as_echo_n "checking if inet_pton is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_arpa_inet
-
-int main (void)
-{
-
-        if(0 != inet_pton(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_inet_pton="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_inet_pton="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_inet_pton" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton seems to work" >&5
-$as_echo_n "checking if inet_pton seems to work... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_stdlib
-        $cares_includes_arpa_inet
-        $cares_includes_string
-
-int main (void)
-{
-
-        unsigned char ipv6a[16+1];
-        unsigned char ipv4a[4+1];
-        const char *ipv6src = "fe80::214:4fff:fe0b:76c8";
-        const char *ipv4src = "192.168.100.1";
-        /* - */
-        memset(ipv4a, 1, sizeof(ipv4a));
-        if(1 != inet_pton(AF_INET, ipv4src, ipv4a))
-          exit(1); /* fail */
-        /* - */
-        if( (ipv4a[0] != 0xc0) ||
-            (ipv4a[1] != 0xa8) ||
-            (ipv4a[2] != 0x64) ||
-            (ipv4a[3] != 0x01) ||
-            (ipv4a[4] != 0x01) )
-          exit(1); /* fail */
-        /* - */
-        memset(ipv6a, 1, sizeof(ipv6a));
-        if(1 != inet_pton(AF_INET6, ipv6src, ipv6a))
-          exit(1); /* fail */
-        /* - */
-        if( (ipv6a[0]  != 0xfe) ||
-            (ipv6a[1]  != 0x80) ||
-            (ipv6a[8]  != 0x02) ||
-            (ipv6a[9]  != 0x14) ||
-            (ipv6a[10] != 0x4f) ||
-            (ipv6a[11] != 0xff) ||
-            (ipv6a[12] != 0xfe) ||
-            (ipv6a[13] != 0x0b) ||
-            (ipv6a[14] != 0x76) ||
-            (ipv6a[15] != 0xc8) ||
-            (ipv6a[16] != 0x01) )
-          exit(1); /* fail */
-        /* - */
-        if( (ipv6a[2]  != 0x0) ||
-            (ipv6a[3]  != 0x0) ||
-            (ipv6a[4]  != 0x0) ||
-            (ipv6a[5]  != 0x0) ||
-            (ipv6a[6]  != 0x0) ||
-            (ipv6a[7]  != 0x0) )
-          exit(1); /* fail */
-        /* - */
-        exit(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_works_inet_pton="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_works_inet_pton="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-  #
-  if test "$tst_compi_inet_pton" = "yes" &&
-    test "$tst_works_inet_pton" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton usage allowed" >&5
-$as_echo_n "checking if inet_pton usage allowed... " >&6; }
-    if test "x$cares_disallow_inet_pton" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_inet_pton="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_inet_pton="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton might be used" >&5
-$as_echo_n "checking if inet_pton might be used... " >&6; }
-  if test "$tst_links_inet_pton" = "yes" &&
-     test "$tst_proto_inet_pton" = "yes" &&
-     test "$tst_compi_inet_pton" = "yes" &&
-     test "$tst_allow_inet_pton" = "yes" &&
-     test "$tst_works_inet_pton" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_INET_PTON 1
-_ACEOF
-
-    ac_cv_func_inet_pton="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_inet_pton="no"
-  fi
-
-
-cares_includes_stropts="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#  include <sys/ioctl.h>
-#endif
-#ifdef HAVE_STROPTS_H
-#  include <stropts.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h unistd.h sys/socket.h sys/ioctl.h stropts.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$cares_includes_stropts
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-  tst_links_ioctl="unknown"
-  tst_proto_ioctl="unknown"
-  tst_compi_ioctl="unknown"
-  tst_allow_ioctl="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl can be linked" >&5
-$as_echo_n "checking if ioctl can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define ioctl innocuous_ioctl
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef ioctl
-#ifdef __cplusplus
-extern "C"
-#endif
-char ioctl ();
-#if defined __stub_ioctl || defined __stub___ioctl
-choke me
-#endif
-
-int main (void)
-{
-return ioctl ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_ioctl="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_ioctl="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl is prototyped" >&5
-$as_echo_n "checking if ioctl is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_stropts
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "ioctl" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_ioctl="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_ioctl="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl is compilable" >&5
-$as_echo_n "checking if ioctl is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_stropts
-
-int main (void)
-{
-
-        if(0 != ioctl(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctl="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctl="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl usage allowed" >&5
-$as_echo_n "checking if ioctl usage allowed... " >&6; }
-    if test "x$cares_disallow_ioctl" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctl="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctl="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl might be used" >&5
-$as_echo_n "checking if ioctl might be used... " >&6; }
-  if test "$tst_links_ioctl" = "yes" &&
-     test "$tst_proto_ioctl" = "yes" &&
-     test "$tst_compi_ioctl" = "yes" &&
-     test "$tst_allow_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTL 1
-_ACEOF
-
-    ac_cv_func_ioctl="yes"
-
-  #
-  tst_compi_ioctl_fionbio="unknown"
-  tst_allow_ioctl_fionbio="unknown"
-  #
-  if test "$ac_cv_func_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl FIONBIO is compilable" >&5
-$as_echo_n "checking if ioctl FIONBIO is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_stropts
-
-int main (void)
-{
-
-        int flags = 0;
-        if(0 != ioctl(0, FIONBIO, &flags))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctl_fionbio="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctl_fionbio="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctl_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl FIONBIO usage allowed" >&5
-$as_echo_n "checking if ioctl FIONBIO usage allowed... " >&6; }
-    if test "x$cares_disallow_ioctl_fionbio" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctl_fionbio="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctl_fionbio="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl FIONBIO might be used" >&5
-$as_echo_n "checking if ioctl FIONBIO might be used... " >&6; }
-  if test "$tst_compi_ioctl_fionbio" = "yes" &&
-     test "$tst_allow_ioctl_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTL_FIONBIO 1
-_ACEOF
-
-    ac_cv_func_ioctl_fionbio="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctl_fionbio="no"
-  fi
-
-
-  #
-  tst_compi_ioctl_siocgifaddr="unknown"
-  tst_allow_ioctl_siocgifaddr="unknown"
-  #
-  if test "$ac_cv_func_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl SIOCGIFADDR is compilable" >&5
-$as_echo_n "checking if ioctl SIOCGIFADDR is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_stropts
-        #include <net/if.h>
-
-int main (void)
-{
-
-        struct ifreq ifr;
-        if(0 != ioctl(0, SIOCGIFADDR, &ifr))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctl_siocgifaddr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctl_siocgifaddr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctl_siocgifaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl SIOCGIFADDR usage allowed" >&5
-$as_echo_n "checking if ioctl SIOCGIFADDR usage allowed... " >&6; }
-    if test "x$cares_disallow_ioctl_siocgifaddr" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctl_siocgifaddr="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctl_siocgifaddr="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl SIOCGIFADDR might be used" >&5
-$as_echo_n "checking if ioctl SIOCGIFADDR might be used... " >&6; }
-  if test "$tst_compi_ioctl_siocgifaddr" = "yes" &&
-     test "$tst_allow_ioctl_siocgifaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTL_SIOCGIFADDR 1
-_ACEOF
-
-    ac_cv_func_ioctl_siocgifaddr="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctl_siocgifaddr="no"
-  fi
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctl="no"
-  fi
-
-
-    #
-  tst_links_ioctlsocket="unknown"
-  tst_proto_ioctlsocket="unknown"
-  tst_compi_ioctlsocket="unknown"
-  tst_allow_ioctlsocket="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket can be linked" >&5
-$as_echo_n "checking if ioctlsocket can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $cares_includes_winsock2
-
-int main (void)
-{
-
-      if(0 != ioctlsocket(0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_ioctlsocket="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_ioctlsocket="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket is prototyped" >&5
-$as_echo_n "checking if ioctlsocket is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_winsock2
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "ioctlsocket" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_ioctlsocket="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_ioctlsocket="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket is compilable" >&5
-$as_echo_n "checking if ioctlsocket is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_winsock2
-
-int main (void)
-{
-
-        if(0 != ioctlsocket(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctlsocket="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctlsocket="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket usage allowed" >&5
-$as_echo_n "checking if ioctlsocket usage allowed... " >&6; }
-    if test "x$cares_disallow_ioctlsocket" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctlsocket="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctlsocket="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket might be used" >&5
-$as_echo_n "checking if ioctlsocket might be used... " >&6; }
-  if test "$tst_links_ioctlsocket" = "yes" &&
-     test "$tst_proto_ioctlsocket" = "yes" &&
-     test "$tst_compi_ioctlsocket" = "yes" &&
-     test "$tst_allow_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTLSOCKET 1
-_ACEOF
-
-    ac_cv_func_ioctlsocket="yes"
-
-  #
-  tst_compi_ioctlsocket_fionbio="unknown"
-  tst_allow_ioctlsocket_fionbio="unknown"
-  #
-  if test "$ac_cv_func_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket FIONBIO is compilable" >&5
-$as_echo_n "checking if ioctlsocket FIONBIO is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_winsock2
-
-int main (void)
-{
-
-        int flags = 0;
-        if(0 != ioctlsocket(0, FIONBIO, &flags))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctlsocket_fionbio="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctlsocket_fionbio="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctlsocket_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket FIONBIO usage allowed" >&5
-$as_echo_n "checking if ioctlsocket FIONBIO usage allowed... " >&6; }
-    if test "x$cares_disallow_ioctlsocket_fionbio" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctlsocket_fionbio="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctlsocket_fionbio="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket FIONBIO might be used" >&5
-$as_echo_n "checking if ioctlsocket FIONBIO might be used... " >&6; }
-  if test "$tst_compi_ioctlsocket_fionbio" = "yes" &&
-     test "$tst_allow_ioctlsocket_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTLSOCKET_FIONBIO 1
-_ACEOF
-
-    ac_cv_func_ioctlsocket_fionbio="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctlsocket_fionbio="no"
-  fi
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctlsocket="no"
-  fi
-
-
-    #
-  tst_links_ioctlsocket_camel="unknown"
-  tst_proto_ioctlsocket_camel="unknown"
-  tst_compi_ioctlsocket_camel="unknown"
-  tst_allow_ioctlsocket_camel="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket can be linked" >&5
-$as_echo_n "checking if IoctlSocket can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define IoctlSocket innocuous_IoctlSocket
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef IoctlSocket
-#ifdef __cplusplus
-extern "C"
-#endif
-char IoctlSocket ();
-#if defined __stub_IoctlSocket || defined __stub___IoctlSocket
-choke me
-#endif
-
-int main (void)
-{
-return IoctlSocket ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_ioctlsocket_camel="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_ioctlsocket_camel="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket is prototyped" >&5
-$as_echo_n "checking if IoctlSocket is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_stropts
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "IoctlSocket" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_ioctlsocket_camel="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_ioctlsocket_camel="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket is compilable" >&5
-$as_echo_n "checking if IoctlSocket is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_stropts
-
-int main (void)
-{
-
-        if(0 != IoctlSocket(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctlsocket_camel="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctlsocket_camel="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket usage allowed" >&5
-$as_echo_n "checking if IoctlSocket usage allowed... " >&6; }
-    if test "x$cares_disallow_ioctlsocket_camel" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctlsocket_camel="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctlsocket_camel="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket might be used" >&5
-$as_echo_n "checking if IoctlSocket might be used... " >&6; }
-  if test "$tst_links_ioctlsocket_camel" = "yes" &&
-     test "$tst_proto_ioctlsocket_camel" = "yes" &&
-     test "$tst_compi_ioctlsocket_camel" = "yes" &&
-     test "$tst_allow_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTLSOCKET_CAMEL 1
-_ACEOF
-
-    ac_cv_func_ioctlsocket_camel="yes"
-
-  #
-  tst_compi_ioctlsocket_camel_fionbio="unknown"
-  tst_allow_ioctlsocket_camel_fionbio="unknown"
-  #
-  if test "$ac_cv_func_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket FIONBIO is compilable" >&5
-$as_echo_n "checking if IoctlSocket FIONBIO is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_stropts
-
-int main (void)
-{
-
-        long flags = 0;
-        if(0 != ioctlsocket(0, FIONBIO, &flags))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctlsocket_camel_fionbio="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctlsocket_camel_fionbio="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctlsocket_camel_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket FIONBIO usage allowed" >&5
-$as_echo_n "checking if IoctlSocket FIONBIO usage allowed... " >&6; }
-    if test "x$cares_disallow_ioctlsocket_camel_fionbio" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctlsocket_camel_fionbio="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctlsocket_camel_fionbio="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket FIONBIO might be used" >&5
-$as_echo_n "checking if IoctlSocket FIONBIO might be used... " >&6; }
-  if test "$tst_compi_ioctlsocket_camel_fionbio" = "yes" &&
-     test "$tst_allow_ioctlsocket_camel_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTLSOCKET_CAMEL_FIONBIO 1
-_ACEOF
-
-    ac_cv_func_ioctlsocket_camel_fionbio="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctlsocket_camel_fionbio="no"
-  fi
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctlsocket_camel="no"
-  fi
-
-
-      #
-  tst_links_setsockopt="unknown"
-  tst_proto_setsockopt="unknown"
-  tst_compi_setsockopt="unknown"
-  tst_allow_setsockopt="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt can be linked" >&5
-$as_echo_n "checking if setsockopt can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $cares_includes_winsock2
-      $cares_includes_sys_socket
-
-int main (void)
-{
-
-      if(0 != setsockopt(0, 0, 0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_setsockopt="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_setsockopt="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt is prototyped" >&5
-$as_echo_n "checking if setsockopt is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_winsock2
-      $cares_includes_sys_socket
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "setsockopt" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_setsockopt="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_setsockopt="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt is compilable" >&5
-$as_echo_n "checking if setsockopt is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_winsock2
-        $cares_includes_sys_socket
-
-int main (void)
-{
-
-        if(0 != setsockopt(0, 0, 0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_setsockopt="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_setsockopt="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt usage allowed" >&5
-$as_echo_n "checking if setsockopt usage allowed... " >&6; }
-    if test "x$cares_disallow_setsockopt" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_setsockopt="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_setsockopt="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt might be used" >&5
-$as_echo_n "checking if setsockopt might be used... " >&6; }
-  if test "$tst_links_setsockopt" = "yes" &&
-     test "$tst_proto_setsockopt" = "yes" &&
-     test "$tst_compi_setsockopt" = "yes" &&
-     test "$tst_allow_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SETSOCKOPT 1
-_ACEOF
-
-    ac_cv_func_setsockopt="yes"
-
-  #
-  tst_compi_setsockopt_so_nonblock="unknown"
-  tst_allow_setsockopt_so_nonblock="unknown"
-  #
-  if test "$ac_cv_func_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt SO_NONBLOCK is compilable" >&5
-$as_echo_n "checking if setsockopt SO_NONBLOCK is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_winsock2
-        $cares_includes_sys_socket
-
-int main (void)
-{
-
-        if(0 != setsockopt(0, SOL_SOCKET, SO_NONBLOCK, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_setsockopt_so_nonblock="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_setsockopt_so_nonblock="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_setsockopt_so_nonblock" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt SO_NONBLOCK usage allowed" >&5
-$as_echo_n "checking if setsockopt SO_NONBLOCK usage allowed... " >&6; }
-    if test "x$cares_disallow_setsockopt_so_nonblock" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_setsockopt_so_nonblock="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_setsockopt_so_nonblock="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt SO_NONBLOCK might be used" >&5
-$as_echo_n "checking if setsockopt SO_NONBLOCK might be used... " >&6; }
-  if test "$tst_compi_setsockopt_so_nonblock" = "yes" &&
-     test "$tst_allow_setsockopt_so_nonblock" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SETSOCKOPT_SO_NONBLOCK 1
-_ACEOF
-
-    ac_cv_func_setsockopt_so_nonblock="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_setsockopt_so_nonblock="no"
-  fi
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_setsockopt="no"
-  fi
-
-
-        #
-  tst_links_socket="unknown"
-  tst_proto_socket="unknown"
-  tst_compi_socket="unknown"
-  tst_allow_socket="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket can be linked" >&5
-$as_echo_n "checking if socket can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $cares_includes_winsock2
-      $cares_includes_sys_socket
-      $cares_includes_socket
-
-int main (void)
-{
-
-      if(0 != socket(0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_socket="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_socket="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_socket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket is prototyped" >&5
-$as_echo_n "checking if socket is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_winsock2
-      $cares_includes_sys_socket
-      $cares_includes_socket
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "socket" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_socket="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_socket="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_socket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket is compilable" >&5
-$as_echo_n "checking if socket is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_winsock2
-        $cares_includes_sys_socket
-        $cares_includes_socket
-
-int main (void)
-{
-
-        if(0 != socket(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_socket="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_socket="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_socket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket usage allowed" >&5
-$as_echo_n "checking if socket usage allowed... " >&6; }
-    if test "x$cares_disallow_socket" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_socket="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_socket="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket might be used" >&5
-$as_echo_n "checking if socket might be used... " >&6; }
-  if test "$tst_links_socket" = "yes" &&
-     test "$tst_proto_socket" = "yes" &&
-     test "$tst_compi_socket" = "yes" &&
-     test "$tst_allow_socket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SOCKET 1
-_ACEOF
-
-    ac_cv_func_socket="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_socket="no"
-  fi
-
-
-    #
-  tst_links_strcasecmp="unknown"
-  tst_proto_strcasecmp="unknown"
-  tst_compi_strcasecmp="unknown"
-  tst_allow_strcasecmp="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp can be linked" >&5
-$as_echo_n "checking if strcasecmp can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strcasecmp innocuous_strcasecmp
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strcasecmp
-#ifdef __cplusplus
-extern "C"
-#endif
-char strcasecmp ();
-#if defined __stub_strcasecmp || defined __stub___strcasecmp
-choke me
-#endif
-
-int main (void)
-{
-return strcasecmp ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strcasecmp="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strcasecmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strcasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp is prototyped" >&5
-$as_echo_n "checking if strcasecmp is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strcasecmp" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strcasecmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strcasecmp="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strcasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp is compilable" >&5
-$as_echo_n "checking if strcasecmp is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_string
-
-int main (void)
-{
-
-        if(0 != strcasecmp(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strcasecmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strcasecmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strcasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp usage allowed" >&5
-$as_echo_n "checking if strcasecmp usage allowed... " >&6; }
-    if test "x$cares_disallow_strcasecmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strcasecmp="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strcasecmp="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp might be used" >&5
-$as_echo_n "checking if strcasecmp might be used... " >&6; }
-  if test "$tst_links_strcasecmp" = "yes" &&
-     test "$tst_proto_strcasecmp" = "yes" &&
-     test "$tst_compi_strcasecmp" = "yes" &&
-     test "$tst_allow_strcasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRCASECMP 1
-_ACEOF
-
-    ac_cv_func_strcasecmp="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strcasecmp="no"
-  fi
-
-
-    #
-  tst_links_strcmpi="unknown"
-  tst_proto_strcmpi="unknown"
-  tst_compi_strcmpi="unknown"
-  tst_allow_strcmpi="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi can be linked" >&5
-$as_echo_n "checking if strcmpi can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strcmpi innocuous_strcmpi
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strcmpi
-#ifdef __cplusplus
-extern "C"
-#endif
-char strcmpi ();
-#if defined __stub_strcmpi || defined __stub___strcmpi
-choke me
-#endif
-
-int main (void)
-{
-return strcmpi ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strcmpi="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strcmpi="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strcmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi is prototyped" >&5
-$as_echo_n "checking if strcmpi is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strcmpi" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strcmpi="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strcmpi="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strcmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi is compilable" >&5
-$as_echo_n "checking if strcmpi is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_string
-
-int main (void)
-{
-
-        if(0 != strcmpi(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strcmpi="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strcmpi="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strcmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi usage allowed" >&5
-$as_echo_n "checking if strcmpi usage allowed... " >&6; }
-    if test "x$cares_disallow_strcmpi" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strcmpi="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strcmpi="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi might be used" >&5
-$as_echo_n "checking if strcmpi might be used... " >&6; }
-  if test "$tst_links_strcmpi" = "yes" &&
-     test "$tst_proto_strcmpi" = "yes" &&
-     test "$tst_compi_strcmpi" = "yes" &&
-     test "$tst_allow_strcmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRCMPI 1
-_ACEOF
-
-    ac_cv_func_strcmpi="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strcmpi="no"
-  fi
-
-
-    #
-  tst_links_strdup="unknown"
-  tst_proto_strdup="unknown"
-  tst_compi_strdup="unknown"
-  tst_allow_strdup="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup can be linked" >&5
-$as_echo_n "checking if strdup can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strdup innocuous_strdup
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strdup
-#ifdef __cplusplus
-extern "C"
-#endif
-char strdup ();
-#if defined __stub_strdup || defined __stub___strdup
-choke me
-#endif
-
-int main (void)
-{
-return strdup ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strdup="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strdup="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strdup" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup is prototyped" >&5
-$as_echo_n "checking if strdup is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strdup" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strdup="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strdup="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strdup" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup is compilable" >&5
-$as_echo_n "checking if strdup is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_string
-
-int main (void)
-{
-
-        if(0 != strdup(0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strdup="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strdup="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strdup" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup usage allowed" >&5
-$as_echo_n "checking if strdup usage allowed... " >&6; }
-    if test "x$cares_disallow_strdup" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strdup="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strdup="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup might be used" >&5
-$as_echo_n "checking if strdup might be used... " >&6; }
-  if test "$tst_links_strdup" = "yes" &&
-     test "$tst_proto_strdup" = "yes" &&
-     test "$tst_compi_strdup" = "yes" &&
-     test "$tst_allow_strdup" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRDUP 1
-_ACEOF
-
-    ac_cv_func_strdup="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strdup="no"
-  fi
-
-
-    #
-  tst_links_stricmp="unknown"
-  tst_proto_stricmp="unknown"
-  tst_compi_stricmp="unknown"
-  tst_allow_stricmp="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp can be linked" >&5
-$as_echo_n "checking if stricmp can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define stricmp innocuous_stricmp
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef stricmp
-#ifdef __cplusplus
-extern "C"
-#endif
-char stricmp ();
-#if defined __stub_stricmp || defined __stub___stricmp
-choke me
-#endif
-
-int main (void)
-{
-return stricmp ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_stricmp="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_stricmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_stricmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp is prototyped" >&5
-$as_echo_n "checking if stricmp is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "stricmp" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_stricmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_stricmp="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_stricmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp is compilable" >&5
-$as_echo_n "checking if stricmp is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_string
-
-int main (void)
-{
-
-        if(0 != stricmp(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_stricmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_stricmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_stricmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp usage allowed" >&5
-$as_echo_n "checking if stricmp usage allowed... " >&6; }
-    if test "x$cares_disallow_stricmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_stricmp="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_stricmp="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp might be used" >&5
-$as_echo_n "checking if stricmp might be used... " >&6; }
-  if test "$tst_links_stricmp" = "yes" &&
-     test "$tst_proto_stricmp" = "yes" &&
-     test "$tst_compi_stricmp" = "yes" &&
-     test "$tst_allow_stricmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRICMP 1
-_ACEOF
-
-    ac_cv_func_stricmp="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_stricmp="no"
-  fi
-
-
-    #
-  tst_links_strncasecmp="unknown"
-  tst_proto_strncasecmp="unknown"
-  tst_compi_strncasecmp="unknown"
-  tst_allow_strncasecmp="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncasecmp can be linked" >&5
-$as_echo_n "checking if strncasecmp can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strncasecmp innocuous_strncasecmp
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strncasecmp
-#ifdef __cplusplus
-extern "C"
-#endif
-char strncasecmp ();
-#if defined __stub_strncasecmp || defined __stub___strncasecmp
-choke me
-#endif
-
-int main (void)
-{
-return strncasecmp ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strncasecmp="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strncasecmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strncasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncasecmp is prototyped" >&5
-$as_echo_n "checking if strncasecmp is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strncasecmp" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strncasecmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strncasecmp="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strncasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncasecmp is compilable" >&5
-$as_echo_n "checking if strncasecmp is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_string
-
-int main (void)
-{
-
-        if(0 != strncasecmp(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strncasecmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strncasecmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strncasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncasecmp usage allowed" >&5
-$as_echo_n "checking if strncasecmp usage allowed... " >&6; }
-    if test "x$cares_disallow_strncasecmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strncasecmp="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strncasecmp="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncasecmp might be used" >&5
-$as_echo_n "checking if strncasecmp might be used... " >&6; }
-  if test "$tst_links_strncasecmp" = "yes" &&
-     test "$tst_proto_strncasecmp" = "yes" &&
-     test "$tst_compi_strncasecmp" = "yes" &&
-     test "$tst_allow_strncasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRNCASECMP 1
-_ACEOF
-
-    ac_cv_func_strncasecmp="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strncasecmp="no"
-  fi
-
-
-    #
-  tst_links_strncmpi="unknown"
-  tst_proto_strncmpi="unknown"
-  tst_compi_strncmpi="unknown"
-  tst_allow_strncmpi="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi can be linked" >&5
-$as_echo_n "checking if strncmpi can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strncmpi innocuous_strncmpi
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strncmpi
-#ifdef __cplusplus
-extern "C"
-#endif
-char strncmpi ();
-#if defined __stub_strncmpi || defined __stub___strncmpi
-choke me
-#endif
-
-int main (void)
-{
-return strncmpi ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strncmpi="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strncmpi="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strncmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi is prototyped" >&5
-$as_echo_n "checking if strncmpi is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strncmpi" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strncmpi="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strncmpi="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strncmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi is compilable" >&5
-$as_echo_n "checking if strncmpi is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_string
-
-int main (void)
-{
-
-        if(0 != strncmpi(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strncmpi="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strncmpi="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strncmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi usage allowed" >&5
-$as_echo_n "checking if strncmpi usage allowed... " >&6; }
-    if test "x$cares_disallow_strncmpi" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strncmpi="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strncmpi="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi might be used" >&5
-$as_echo_n "checking if strncmpi might be used... " >&6; }
-  if test "$tst_links_strncmpi" = "yes" &&
-     test "$tst_proto_strncmpi" = "yes" &&
-     test "$tst_compi_strncmpi" = "yes" &&
-     test "$tst_allow_strncmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRNCMPI 1
-_ACEOF
-
-    ac_cv_func_strncmpi="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strncmpi="no"
-  fi
-
-
-    #
-  tst_links_strnicmp="unknown"
-  tst_proto_strnicmp="unknown"
-  tst_compi_strnicmp="unknown"
-  tst_allow_strnicmp="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp can be linked" >&5
-$as_echo_n "checking if strnicmp can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strnicmp innocuous_strnicmp
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strnicmp
-#ifdef __cplusplus
-extern "C"
-#endif
-char strnicmp ();
-#if defined __stub_strnicmp || defined __stub___strnicmp
-choke me
-#endif
-
-int main (void)
-{
-return strnicmp ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strnicmp="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strnicmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strnicmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp is prototyped" >&5
-$as_echo_n "checking if strnicmp is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strnicmp" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strnicmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strnicmp="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strnicmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp is compilable" >&5
-$as_echo_n "checking if strnicmp is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_string
-
-int main (void)
-{
-
-        if(0 != strnicmp(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strnicmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strnicmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strnicmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp usage allowed" >&5
-$as_echo_n "checking if strnicmp usage allowed... " >&6; }
-    if test "x$cares_disallow_strnicmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strnicmp="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strnicmp="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp might be used" >&5
-$as_echo_n "checking if strnicmp might be used... " >&6; }
-  if test "$tst_links_strnicmp" = "yes" &&
-     test "$tst_proto_strnicmp" = "yes" &&
-     test "$tst_compi_strnicmp" = "yes" &&
-     test "$tst_allow_strnicmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRNICMP 1
-_ACEOF
-
-    ac_cv_func_strnicmp="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strnicmp="no"
-  fi
-
-
-cares_includes_sys_uio="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_UIO_H
-#  include <sys/uio.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h sys/uio.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$cares_includes_sys_uio
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-  tst_links_writev="unknown"
-  tst_proto_writev="unknown"
-  tst_compi_writev="unknown"
-  tst_allow_writev="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev can be linked" >&5
-$as_echo_n "checking if writev can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define writev innocuous_writev
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef writev
-#ifdef __cplusplus
-extern "C"
-#endif
-char writev ();
-#if defined __stub_writev || defined __stub___writev
-choke me
-#endif
-
-int main (void)
-{
-return writev ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_writev="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_writev="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_writev" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev is prototyped" >&5
-$as_echo_n "checking if writev is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $cares_includes_sys_uio
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "writev" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_writev="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_writev="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_writev" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev is compilable" >&5
-$as_echo_n "checking if writev is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $cares_includes_sys_uio
-
-int main (void)
-{
-
-        if(0 != writev(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_writev="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_writev="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_writev" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev usage allowed" >&5
-$as_echo_n "checking if writev usage allowed... " >&6; }
-    if test "x$cares_disallow_writev" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_writev="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_writev="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev might be used" >&5
-$as_echo_n "checking if writev might be used... " >&6; }
-  if test "$tst_links_writev" = "yes" &&
-     test "$tst_proto_writev" = "yes" &&
-     test "$tst_compi_writev" = "yes" &&
-     test "$tst_allow_writev" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WRITEV 1
-_ACEOF
-
-    ac_cv_func_writev="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_writev="no"
-  fi
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PF_INET6" >&5
-$as_echo_n "checking for PF_INET6... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-
-
-      #ifdef PF_INET6
-        VARIABLEWASDEFINED
-      #else
-        NJET
-      #endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "VARIABLEWASDEFINED" >/dev/null 2>&1; then :
-  ac_constant="yes"
-else
-  ac_constant="no"
-
-fi
-rm -f conftest*
-
-  if test "$ac_constant" = "yes" ; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_PF_INET6 1
-_ACEOF
-
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-  fi
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for AF_INET6" >&5
-$as_echo_n "checking for AF_INET6... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-
-
-      #ifdef AF_INET6
-        VARIABLEWASDEFINED
-      #else
-        NJET
-      #endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "VARIABLEWASDEFINED" >/dev/null 2>&1; then :
-  ac_constant="yes"
-else
-  ac_constant="no"
-
-fi
-rm -f conftest*
-
-  if test "$ac_constant" = "yes" ; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_AF_INET6 1
-_ACEOF
-
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-  fi
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct in6_addr" >&5
-$as_echo_n "checking for struct in6_addr... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#endif
-
-int main (void)
-{
-
-      struct in6_addr struct_instance;
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_struct="yes"
-else
-  ac_found="no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  if test "$ac_struct" = "yes" ; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_IN6_ADDR 1
-_ACEOF
-
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-  fi
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct sockaddr_in6" >&5
-$as_echo_n "checking for struct sockaddr_in6... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#endif
-
-int main (void)
-{
-
-      struct sockaddr_in6 struct_instance;
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_struct="yes"
-else
-  ac_found="no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  if test "$ac_struct" = "yes" ; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_SOCKADDR_IN6 1
-_ACEOF
- ac_have_sockaddr_in6=yes
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-  fi
-
-
-ac_fn_c_check_member "$LINENO" "struct sockaddr_in6" "sin6_scope_id" "ac_cv_member_struct_sockaddr_in6_sin6_scope_id" "
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#endif
-
-"
-if test "x$ac_cv_member_struct_sockaddr_in6_sin6_scope_id" = xyes; then :
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
-_ACEOF
-
-
-fi
-
-
-ac_fn_c_check_member "$LINENO" "struct addrinfo" "ai_flags" "ac_cv_member_struct_addrinfo_ai_flags" "
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#endif
-
-
-"
-if test "x$ac_cv_member_struct_addrinfo_ai_flags" = xyes; then :
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_ADDRINFO 1
-_ACEOF
-
-fi
-
-
-
-for ac_func in bitncmp \
-  gettimeofday \
-  if_indextoname
-
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-
-
-else
-
-  func="$ac_func"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking deeper for $func" >&5
-$as_echo_n "checking deeper for $func... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      $func ();
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    eval "ac_cv_func_$func=yes"
-
-cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$func" | $as_tr_cpp` 1
-_ACEOF
-
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: but still no" >&5
-$as_echo "but still no" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-
-fi
-done
-
-
-
-for ac_func in inet_net_pton
-do :
-  ac_fn_c_check_func "$LINENO" "inet_net_pton" "ac_cv_func_inet_net_pton"
-if test "x$ac_cv_func_inet_net_pton" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_INET_NET_PTON 1
-_ACEOF
-
-fi
-done
-
-if test "$ac_cv_func_inet_net_pton" = "yes" ; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_net_pton supports IPv6" >&5
-$as_echo_n "checking if inet_net_pton supports IPv6... " >&6; }
-if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-int main()
-  {
-    struct in6_addr addr6;
-    if (inet_net_pton(AF_INET6, "::1", &addr6, sizeof(addr6)) < 1)
-      exit(1);
-    else
-      exit(0);
-  }
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_INET_NET_PTON_IPV6 1
-_ACEOF
-
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of struct in6_addr" >&5
-$as_echo_n "checking size of struct in6_addr... " >&6; }
-if ${ac_cv_sizeof_struct_in6_addr+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (struct in6_addr))" "ac_cv_sizeof_struct_in6_addr"        "
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#endif
-
-
-"; then :
-
-else
-  if test "$ac_cv_type_struct_in6_addr" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (struct in6_addr)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_struct_in6_addr=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_struct_in6_addr" >&5
-$as_echo "$ac_cv_sizeof_struct_in6_addr" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_STRUCT_IN6_ADDR $ac_cv_sizeof_struct_in6_addr
-_ACEOF
-
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of struct in_addr" >&5
-$as_echo_n "checking size of struct in_addr... " >&6; }
-if ${ac_cv_sizeof_struct_in_addr+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (struct in_addr))" "ac_cv_sizeof_struct_in_addr"        "
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#endif
-
-
-"; then :
-
-else
-  if test "$ac_cv_type_struct_in_addr" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (struct in_addr)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_struct_in_addr=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_struct_in_addr" >&5
-$as_echo "$ac_cv_sizeof_struct_in_addr" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_STRUCT_IN_ADDR $ac_cv_sizeof_struct_in_addr
-_ACEOF
-
-
-
-
-
-    for ac_header in sys/types.h sys/socket.h netdb.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getnameinfo" >&5
-$as_echo_n "checking for getnameinfo... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define getnameinfo innocuous_getnameinfo
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef getnameinfo
-#ifdef __cplusplus
-extern "C"
-#endif
-char getnameinfo ();
-#if defined __stub_getnameinfo || defined __stub___getnameinfo
-choke me
-#endif
-
-int main (void)
-{
-return getnameinfo ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    curl_cv_getnameinfo="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    curl_cv_getnameinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$curl_cv_getnameinfo" != "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking deeper for getnameinfo" >&5
-$as_echo_n "checking deeper for getnameinfo... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-        getnameinfo();
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      curl_cv_getnameinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: but still no" >&5
-$as_echo "but still no" >&6; }
-      curl_cv_getnameinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-  #
-  if test "$curl_cv_getnameinfo" != "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking deeper and deeper for getnameinfo" >&5
-$as_echo_n "checking deeper and deeper for getnameinfo... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#endif
-
-int main (void)
-{
-
-        getnameinfo(0, 0, 0, 0, 0, 0, 0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      curl_cv_getnameinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: but still no" >&5
-$as_echo "but still no" >&6; }
-      curl_cv_getnameinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-  #
-  if test "$curl_cv_getnameinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking types of arguments for getnameinfo" >&5
-$as_echo_n "checking types of arguments for getnameinfo... " >&6; }
-if ${curl_cv_func_getnameinfo_args+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-      curl_cv_func_getnameinfo_args="unknown"
-      for gni_arg1 in 'struct sockaddr *' 'const struct sockaddr *' 'void *'; do
-        for gni_arg2 in 'socklen_t' 'size_t' 'int'; do
-          for gni_arg46 in 'size_t' 'int' 'socklen_t' 'unsigned int' 'DWORD'; do
-            for gni_arg7 in 'int' 'unsigned int'; do
-              if test "$curl_cv_func_getnameinfo_args" = "unknown"; then
-                cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#if (!defined(_WIN32_WINNT)) || (_WIN32_WINNT < 0x0501)
-#undef _WIN32_WINNT
-#define _WIN32_WINNT 0x0501
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#define GNICALLCONV WSAAPI
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#define GNICALLCONV
-#endif
-                    extern int GNICALLCONV getnameinfo($gni_arg1, $gni_arg2,
-                                           char *, $gni_arg46,
-                                           char *, $gni_arg46,
-                                           $gni_arg7);
-
-int main (void)
-{
-
-                    $gni_arg2 salen=0;
-                    $gni_arg46 hostlen=0;
-                    $gni_arg46 servlen=0;
-                    $gni_arg7 flags=0;
-                    int res = getnameinfo(0, salen, 0, hostlen, 0, servlen, flags);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-                  curl_cv_func_getnameinfo_args="$gni_arg1,$gni_arg2,$gni_arg46,$gni_arg7"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-              fi
-            done
-          done
-        done
-      done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_getnameinfo_args" >&5
-$as_echo "$curl_cv_func_getnameinfo_args" >&6; } # AC-CACHE-CHECK
-    if test "$curl_cv_func_getnameinfo_args" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find proper types to use for getnameinfo args" >&5
-$as_echo "$as_me: WARNING: Cannot find proper types to use for getnameinfo args" >&2;}
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_GETNAMEINFO will not be defined" >&5
-$as_echo "$as_me: WARNING: HAVE_GETNAMEINFO will not be defined" >&2;}
-    else
-      gni_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_getnameinfo_args" | sed 's/\*/\*/g'`
-      IFS=$gni_prev_IFS
-      shift
-      #
-      gni_qual_type_arg1=$1
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define GETNAMEINFO_TYPE_ARG2 $2
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define GETNAMEINFO_TYPE_ARG46 $3
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define GETNAMEINFO_TYPE_ARG7 $4
-_ACEOF
-
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      case "$gni_qual_type_arg1" in
-        const*)
-          gni_qual_arg1=const
-          gni_type_arg1=`echo $gni_qual_type_arg1 | sed 's/^const //'`
-        ;;
-        *)
-          gni_qual_arg1=
-          gni_type_arg1=$gni_qual_type_arg1
-        ;;
-      esac
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define GETNAMEINFO_QUAL_ARG1 $gni_qual_arg1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define GETNAMEINFO_TYPE_ARG1 $gni_type_arg1
-_ACEOF
-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETNAMEINFO 1
-_ACEOF
-
-      ac_cv_func_getnameinfo="yes"
-    fi
-  fi
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
-$as_echo_n "checking whether byte ordering is bigendian... " >&6; }
-if ${ac_cv_c_bigendian+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_c_bigendian=unknown
-    # See if we're dealing with a universal compiler.
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifndef __APPLE_CC__
-	       not a universal capable compiler
-	     #endif
-	     typedef int dummy;
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-	# Check for potential -arch flags.  It is not universal unless
-	# there are at least two -arch flags with different values.
-	ac_arch=
-	ac_prev=
-	for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do
-	 if test -n "$ac_prev"; then
-	   case $ac_word in
-	     i?86 | x86_64 | ppc | ppc64)
-	       if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then
-		 ac_arch=$ac_word
-	       else
-		 ac_cv_c_bigendian=universal
-		 break
-	       fi
-	       ;;
-	   esac
-	   ac_prev=
-	 elif test "x$ac_word" = "x-arch"; then
-	   ac_prev=arch
-	 fi
-       done
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test $ac_cv_c_bigendian = unknown; then
-      # See if sys/param.h defines the BYTE_ORDER macro.
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-	     #include <sys/param.h>
-
-int main (void)
-{
-#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
-		     && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
-		     && LITTLE_ENDIAN)
-	      bogus endian macros
-	     #endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  # It does; now see whether it defined to BIG_ENDIAN or not.
-	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-		#include <sys/param.h>
-
-int main (void)
-{
-#if BYTE_ORDER != BIG_ENDIAN
-		 not big endian
-		#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_bigendian=yes
-else
-  ac_cv_c_bigendian=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test $ac_cv_c_bigendian = unknown; then
-      # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <limits.h>
-
-int main (void)
-{
-#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
-	      bogus endian macros
-	     #endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  # It does; now see whether it defined to _BIG_ENDIAN or not.
-	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <limits.h>
-
-int main (void)
-{
-#ifndef _BIG_ENDIAN
-		 not big endian
-		#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_bigendian=yes
-else
-  ac_cv_c_bigendian=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test $ac_cv_c_bigendian = unknown; then
-      # Compile a test program.
-      if test "$cross_compiling" = yes; then :
-  # Try to guess by grepping values from an object file.
-	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-short int ascii_mm[] =
-		  { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
-		short int ascii_ii[] =
-		  { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
-		int use_ascii (int i) {
-		  return ascii_mm[i] + ascii_ii[i];
-		}
-		short int ebcdic_ii[] =
-		  { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
-		short int ebcdic_mm[] =
-		  { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
-		int use_ebcdic (int i) {
-		  return ebcdic_mm[i] + ebcdic_ii[i];
-		}
-		extern int foo;
-
-int main (void)
-{
-return use_ascii (foo) == use_ebcdic (foo);
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
-	      ac_cv_c_bigendian=yes
-	    fi
-	    if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
-	      if test "$ac_cv_c_bigendian" = unknown; then
-		ac_cv_c_bigendian=no
-	      else
-		# finding both strings is unlikely to happen, but who knows?
-		ac_cv_c_bigendian=unknown
-	      fi
-	    fi
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$ac_includes_default
-int main (void)
-{
-
-	     /* Are we little or big endian?  From Harbison&Steele.  */
-	     union
-	     {
-	       long int l;
-	       char c[sizeof (long int)];
-	     } u;
-	     u.l = 1;
-	     return u.c[sizeof (long int) - 1] == 1;
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  ac_cv_c_bigendian=no
-else
-  ac_cv_c_bigendian=yes
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-    fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
-$as_echo "$ac_cv_c_bigendian" >&6; }
- case $ac_cv_c_bigendian in #(
-   yes)
-
-$as_echo "#define ARES_BIG_ENDIAN 1" >>confdefs.h
-;; #(
-   no)
-      ;; #(
-   universal)
-
-$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
-
-     ;; #(
-   *)
-     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: couldn't figure out endianess, assuming little endian!" >&5
-$as_echo "$as_me: WARNING: couldn't figure out endianess, assuming little endian!" >&2;}
- ;;
- esac
-
-
-
-# Check whether --with-random was given.
-if test "${with_random+set}" = set; then :
-  withval=$with_random;  RANDOM_FILE="$withval"
-else
-
-                                if test "$cross_compiling" = "no"; then
-          as_ac_File=`$as_echo "ac_cv_file_"/dev/urandom"" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/dev/urandom\"" >&5
-$as_echo_n "checking for \"/dev/urandom\"... " >&6; }
-if eval \${$as_ac_File+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  test "$cross_compiling" = yes &&
-  as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5
-if test -r ""/dev/urandom""; then
-  eval "$as_ac_File=yes"
-else
-  eval "$as_ac_File=no"
-fi
-fi
-eval ac_res=\$$as_ac_File
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_File"\" = x"yes"; then :
-   RANDOM_FILE="/dev/urandom"
-fi
-
-        else
-          { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for /dev/urandom while cross compiling; assuming none" >&5
-$as_echo "$as_me: WARNING: cannot check for /dev/urandom while cross compiling; assuming none" >&2;}
-        fi
-
-
-
-fi
-
-if test -n "$RANDOM_FILE" && test X"$RANDOM_FILE" != Xno ; then
-
-
-cat >>confdefs.h <<_ACEOF
-#define RANDOM_FILE "$RANDOM_FILE"
-_ACEOF
-
-fi
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable non-blocking communications" >&5
-$as_echo_n "checking whether to enable non-blocking communications... " >&6; }
-  OPT_NONBLOCKING="default"
-  # Check whether --enable-nonblocking was given.
-if test "${enable_nonblocking+set}" = set; then :
-  enableval=$enable_nonblocking; OPT_NONBLOCKING=$enableval
-fi
-
-  case "$OPT_NONBLOCKING" in
-    no)
-            want_nonblocking="no"
-      ;;
-    default)
-            want_nonblocking="yes"
-      ;;
-    *)
-            want_nonblocking="yes"
-      ;;
-  esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_nonblocking" >&5
-$as_echo "$want_nonblocking" >&6; }
-
-
-              #
-  tst_method="unknown"
-  if test "$want_nonblocking" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to set a socket into non-blocking mode" >&5
-$as_echo_n "checking how to set a socket into non-blocking mode... " >&6; }
-    if test "x$ac_cv_func_fcntl_o_nonblock" = "xyes"; then
-      tst_method="fcntl O_NONBLOCK"
-    elif test "x$ac_cv_func_ioctl_fionbio" = "xyes"; then
-      tst_method="ioctl FIONBIO"
-    elif test "x$ac_cv_func_ioctlsocket_fionbio" = "xyes"; then
-      tst_method="ioctlsocket FIONBIO"
-    elif test "x$ac_cv_func_ioctlsocket_camel_fionbio" = "xyes"; then
-      tst_method="IoctlSocket FIONBIO"
-    elif test "x$ac_cv_func_setsockopt_so_nonblock" = "xyes"; then
-      tst_method="setsockopt SO_NONBLOCK"
-    fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_method" >&5
-$as_echo "$tst_method" >&6; }
-    if test "$tst_method" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot determine non-blocking socket method." >&5
-$as_echo "$as_me: WARNING: cannot determine non-blocking socket method." >&2;}
-    fi
-  fi
-  if test "$tst_method" = "unknown"; then
-
-cat >>confdefs.h <<_ACEOF
-#define USE_BLOCKING_SOCKETS 1
-_ACEOF
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: non-blocking sockets disabled." >&5
-$as_echo "$as_me: WARNING: non-blocking sockets disabled." >&2;}
-  fi
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether hiding of library internal symbols will actually happen" >&5
-$as_echo_n "checking whether hiding of library internal symbols will actually happen... " >&6; }
-  if test x"$ac_cv_native_windows" != "xyes" &&
-    test "$want_symbol_hiding" = "yes" &&
-    test "$supports_symbol_hiding" = "yes"; then
-    CFLAGS="$CFLAGS $symbol_hiding_CFLAGS"
-
-cat >>confdefs.h <<_ACEOF
-#define CARES_SYMBOL_HIDING 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define CARES_SYMBOL_SCOPE_EXTERN $symbol_hiding_EXTERN
-_ACEOF
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-CARES_PRIVATE_LIBS="$LIBS"
-
-
-
-squeeze CFLAGS
-squeeze CPPFLAGS
-squeeze DEFS
-squeeze LDFLAGS
-squeeze LIBS
-
-squeeze CARES_PRIVATE_LIBS
-
-ac_config_files="$ac_config_files Makefile libcares.pc"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems.  If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
-  for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
-      *) { eval $ac_var=; unset $ac_var;} ;;
-      esac ;;
-    esac
-  done
-
-  (set) 2>&1 |
-    case $as_nl`(ac_space=' '; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      # `set' does not quote correctly, so add quotes: double-quote
-      # substitution turns \\\\ into \\, and sed turns \\ into \.
-      sed -n \
-	"s/'/'\\\\''/g;
-	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
-      ;; #(
-    *)
-      # `set' quotes correctly as required by POSIX, so do not add quotes.
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-) |
-  sed '
-     /^ac_cv_env_/b end
-     t clear
-     :clear
-     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
-     t end
-     s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
-     :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
-  if test -w "$cache_file"; then
-    if test "x$cache_file" != "x/dev/null"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
-      if test ! -f "$cache_file" || test -h "$cache_file"; then
-	cat confcache >"$cache_file"
-      else
-        case $cache_file in #(
-        */* | ?:*)
-	  mv -f confcache "$cache_file"$$ &&
-	  mv -f "$cache_file"$$ "$cache_file" ;; #(
-        *)
-	  mv -f confcache "$cache_file" ;;
-	esac
-      fi
-    fi
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
-  fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-DEFS=-DHAVE_CONFIG_H
-
-ac_libobjs=
-ac_ltlibobjs=
-U=
-for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
-  # 1. Remove the extension, and $U if already installed.
-  ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
-  ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
-  # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
-  #    will be set to the directory where LIBOBJS objects are built.
-  as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
-  as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIBOBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
-  as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
- if test -n "$EXEEXT"; then
-  am__EXEEXT_TRUE=
-  am__EXEEXT_FALSE='#'
-else
-  am__EXEEXT_TRUE='#'
-  am__EXEEXT_FALSE=
-fi
-
-if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
-  as_fn_error $? "conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
-  as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${NO_UNDEFINED_TRUE}" && test -z "${NO_UNDEFINED_FALSE}"; then
-  as_fn_error $? "conditional \"NO_UNDEFINED\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${CURLDEBUG_TRUE}" && test -z "${CURLDEBUG_FALSE}"; then
-  as_fn_error $? "conditional \"CURLDEBUG\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-
-
-: "${CONFIG_STATUS=./config.status}"
-ac_write_fail=0
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-as_write_fail=0
-cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-# 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-$SHELL}
-export SHELL
-_ASEOF
-cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-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
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in #(
-      *"$as_nl"*)
-	expr "X$arg" : "X\\(.*\\)$as_nl";
-	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
-
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""	$as_nl"
-
-# 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
-  test -z "$as_dir" && as_dir=.
-    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
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-
-# 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
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
-  fi
-  $as_echo "$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_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_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 ||
-$as_echo 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
-
-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
-
-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 -p'.
-    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
-  elif ln conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s=ln
-  else
-    as_ln_s='cp -p'
-  fi
-else
-  as_ln_s='cp -p'
-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=`$as_echo "$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 ||
-$as_echo 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
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-	test -d "$1/.";
-      else
-	case $1 in #(
-	-*)set "./$1";;
-	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-	???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# 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. ##
-## ----------------------------------- ##
-_ASEOF
-test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# 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 c-ares $as_me 1.7.1, which was
-generated by GNU Autoconf 2.68.  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`
-"
-
-_ACEOF
-
-case $ac_config_files in *"
-"*) set x $ac_config_files; shift; ac_config_files=$*;;
-esac
-
-case $ac_config_headers in *"
-"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
-esac
-
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-# Files that config.status was made for.
-config_files="$ac_config_files"
-config_headers="$ac_config_headers"
-config_commands="$ac_config_commands"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-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 <c-ares mailing list => http://cool.haxx.se/mailman/listinfo/c-ares>."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
-ac_cs_version="\\
-c-ares config.status 1.7.1
-configured by $0, generated by GNU Autoconf 2.68,
-  with options \\"\$ac_cs_config\\"
-
-Copyright (C) 2010 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='$ac_pwd'
-srcdir='$srcdir'
-INSTALL='$INSTALL'
-MKDIR_P='$MKDIR_P'
-AWK='$AWK'
-test -n "\$AWK" || AWK=awk
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# 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 )
-    $as_echo "$ac_cs_version"; exit ;;
-  --config | --confi | --conf | --con | --co | --c )
-    $as_echo "$ac_cs_config"; exit ;;
-  --debug | --debu | --deb | --de | --d | -d )
-    debug=: ;;
-  --file | --fil | --fi | --f )
-    $ac_shift
-    case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$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=`$as_echo "$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 )
-    $as_echo "$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
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-if \$ac_cs_recheck; then
-  set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
-  shift
-  \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
-  CONFIG_SHELL='$SHELL'
-  export CONFIG_SHELL
-  exec "\$@"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-exec 5>>config.log
-{
-  echo
-  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
-_ASBOX
-  $as_echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-#
-# INIT-COMMANDS
-#
-AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
-
-
-# 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='$sed_quote_subst'
-double_quote_subst='$double_quote_subst'
-delay_variable_subst='$delay_variable_subst'
-AS='`$ECHO "$AS" | $SED "$delay_single_quote_subst"`'
-DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'
-OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'
-macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'
-macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'
-enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'
-enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'
-pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'
-enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'
-SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'
-ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`'
-host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`'
-host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`'
-host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`'
-build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`'
-build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`'
-build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`'
-SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`'
-Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`'
-GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`'
-EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`'
-FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`'
-LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`'
-NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`'
-LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`'
-max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`'
-ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`'
-exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
-lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
-lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
-lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
-lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`'
-lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'
-reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'
-reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'
-deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'
-file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'
-file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`'
-want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'
-sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'
-AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'
-AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'
-archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'
-STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
-RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
-old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`'
-old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`'
-lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`'
-CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`'
-CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`'
-compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`'
-GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
-nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'
-lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'
-objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'
-MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'
-lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'
-lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`'
-lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`'
-lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`'
-lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`'
-need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`'
-MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`'
-DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
-NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
-LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`'
-OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`'
-libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`'
-shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`'
-extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`'
-archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`'
-enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`'
-export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`'
-whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`'
-compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`'
-old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`'
-old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`'
-archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`'
-archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`'
-module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`'
-module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`'
-with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`'
-allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`'
-no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec_ld='`$ECHO "$hardcode_libdir_flag_spec_ld" | $SED "$delay_single_quote_subst"`'
-hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`'
-hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`'
-hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`'
-hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`'
-hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`'
-hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
-inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
-link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
-always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`'
-export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`'
-exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`'
-include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`'
-prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`'
-postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`'
-file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
-variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
-need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`'
-version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`'
-runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`'
-shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`'
-shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`'
-libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`'
-library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`'
-soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`'
-install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`'
-postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`'
-finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`'
-finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`'
-hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`'
-sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`'
-sys_lib_dlsearch_path_spec='`$ECHO "$sys_lib_dlsearch_path_spec" | $SED "$delay_single_quote_subst"`'
-hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`'
-enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`'
-enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`'
-enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`'
-old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`'
-striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`'
-
-LTCC='$LTCC'
-LTCFLAGS='$LTCFLAGS'
-compiler='$compiler_DEFAULT'
-
-# 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 \
-SED \
-GREP \
-EGREP \
-FGREP \
-LD \
-NM \
-LN_S \
-lt_SP2NL \
-lt_NL2SP \
-reload_flag \
-deplibs_check_method \
-file_magic_cmd \
-file_magic_glob \
-want_nocaseglob \
-sharedlib_from_linklib_cmd \
-AR \
-AR_FLAGS \
-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_c_name_address \
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
-nm_file_list_spec \
-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_flag_spec_ld \
-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\\"\\\`\\\\\\""
-      ;;
-    *)
-      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 \
-sys_lib_dlsearch_path_spec; do
-    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
-    *[\\\\\\\`\\"\\\$]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
-      ;;
-    *)
-      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
-      ;;
-    esac
-done
-
-ac_aux_dir='$ac_aux_dir'
-xsi_shell='$xsi_shell'
-lt_shell_append='$lt_shell_append'
-
-# See if we are running on zsh, and set the options which allow our
-# commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
-   setopt NO_GLOB_SUBST
-fi
-
-
-    PACKAGE='$PACKAGE'
-    VERSION='$VERSION'
-    TIMESTAMP='$TIMESTAMP'
-    RM='$RM'
-    ofile='$ofile'
-
-
-
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-
-# Handling of arguments.
-for ac_config_target in $ac_config_targets
-do
-  case $ac_config_target in
-    "ares_config.h") CONFIG_HEADERS="$CONFIG_HEADERS ares_config.h" ;;
-    "ares_build.h") CONFIG_HEADERS="$CONFIG_HEADERS ares_build.h" ;;
-    "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
-    "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
-    "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
-    "libcares.pc") CONFIG_FILES="$CONFIG_FILES libcares.pc" ;;
-
-  *) 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+set}" = set || CONFIG_FILES=$config_files
-  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
-  test "${CONFIG_COMMANDS+set}" = set || 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 2>/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" &&
-_ACEOF
-
-
-{
-  echo "cat >conf$$subs.awk <<_ACEOF" &&
-  echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
-  echo "_ACEOF"
-} >conf$$subs.sh ||
-  as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
-  . ./conf$$subs.sh ||
-    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-
-  ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
-  if test $ac_delim_n = $ac_delim_num; then
-    break
-  elif $ac_last_try; then
-    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-  else
-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
-  fi
-done
-rm -f conf$$subs.sh
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
-_ACEOF
-sed -n '
-h
-s/^/S["/; s/!.*/"]=/
-p
-g
-s/^[^!]*!//
-:repl
-t repl
-s/'"$ac_delim"'$//
-t delim
-:nl
-h
-s/\(.\{148\}\)..*/\1/
-t more1
-s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
-p
-n
-b repl
-:more1
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t nl
-:delim
-h
-s/\(.\{148\}\)..*/\1/
-t more2
-s/["\\]/\\&/g; s/^/"/; s/$/"/
-p
-b
-:more2
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t delim
-' <conf$$subs.awk | sed '
-/^[^""]/{
-  N
-  s/\n//
-}
-' >>$CONFIG_STATUS || ac_write_fail=1
-rm -f conf$$subs.awk
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-_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
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-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
-_ACEOF
-
-# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
-# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
-  ac_vpsub='/^[	 ]*VPATH[	 ]*=[	 ]*/{
-h
-s///
-s/^/:/
-s/[	 ]*$/:/
-s/:\$(srcdir):/:/g
-s/:\${srcdir}:/:/g
-s/:@srcdir@:/:/g
-s/^:*//
-s/:*$//
-x
-s/\(=[	 ]*\).*/\1/
-G
-s/\n//
-s/^[^=]*=[	 ]*$//
-}'
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-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 {
-_ACEOF
-
-# Transform confdefs.h into an awk script `defines.awk', embedded as
-# here-document in config.status, that substitutes the proper values into
-# config.h.in to produce config.h.
-
-# Create a delimiter string that does not exist in confdefs.h, to ease
-# handling of long lines.
-ac_delim='%!_!# '
-for ac_last_try in false false :; do
-  ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
-  if test -z "$ac_tt"; then
-    break
-  elif $ac_last_try; then
-    as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
-  else
-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
-  fi
-done
-
-# For the awk script, D is an array of macro values keyed by name,
-# likewise P contains macro parameters if any.  Preserve backslash
-# newline sequences.
-
-ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
-sed -n '
-s/.\{148\}/&'"$ac_delim"'/g
-t rset
-:rset
-s/^[	 ]*#[	 ]*define[	 ][	 ]*/ /
-t def
-d
-:def
-s/\\$//
-t bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[	 ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3"/p
-s/^ \('"$ac_word_re"'\)[	 ]*\(.*\)/D["\1"]=" \2"/p
-d
-:bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[	 ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3\\\\\\n"\\/p
-t cont
-s/^ \('"$ac_word_re"'\)[	 ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
-t cont
-d
-:cont
-n
-s/.\{148\}/&'"$ac_delim"'/g
-t clear
-:clear
-s/\\$//
-t bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/"/p
-d
-:bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
-b cont
-' <confdefs.h | sed '
-s/'"$ac_delim"'/"\\\
-"/g' >>$CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-  for (key in D) D_is_set[key] = 1
-  FS = ""
-}
-/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\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
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-  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=`$as_echo "$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 '`
-	  $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
-	`' by configure.'
-    if test x"$ac_file" != x-; then
-      configure_input="$ac_file.  $configure_input"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
-    fi
-    # Neutralize special characters interpreted by sed in replacement strings.
-    case $configure_input in #(
-    *\&* | *\|* | *\\* )
-       ac_sed_conf_input=`$as_echo "$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 ||
-$as_echo 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=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$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
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# 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@*)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-  ac_datarootdir_hack='
-  s&@datadir@&$datadir&g
-  s&@docdir@&$docdir&g
-  s&@infodir@&$infodir&g
-  s&@localedir@&$localedir&g
-  s&@mandir@&$mandir&g
-  s&\\\${datarootdir}&$datarootdir&g' ;;
-esac
-_ACEOF
-
-# Neutralize VPATH when `$srcdir' = `.'.
-# Shell code in configure.ac might set extrasub.
-# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_sed_extra="$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-: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"; } &&
-  { $as_echo "$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
-$as_echo "$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
-    {
-      $as_echo "/* $configure_input  */" \
-      && 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
-      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$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
-    $as_echo "/* $configure_input  */" \
-      && 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 ||
-$as_echo 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)  { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
- ;;
-  esac
-
-
-  case $ac_file$ac_mode in
-    "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
-  # Autoconf 2.62 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.
-  case $CONFIG_FILES in
-  *\'*) eval set x "$CONFIG_FILES" ;;
-  *)   set x $CONFIG_FILES ;;
-  esac
-  shift
-  for mf
-  do
-    # Strip MF so we end up with the name of the file.
-    mf=`echo "$mf" | sed -e 's/:.*$//'`
-    # Check whether this is an Automake generated Makefile or not.
-    # We used to match only the files named `Makefile.in', but
-    # some people rename them; so instead we look at the file content.
-    # Grep'ing the first line is not enough: some people post-process
-    # each Makefile.in and add a new line on top of each file to say so.
-    # Grep'ing the whole file is not good either: AIX grep has a line
-    # limit of 2048, but all sed's we know have understand at least 4000.
-    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
-      dirpart=`$as_dirname -- "$mf" ||
-$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$mf" : 'X\(//\)[^/]' \| \
-	 X"$mf" : 'X\(//\)$' \| \
-	 X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$mf" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-    else
-      continue
-    fi
-    # Extract the definition of DEPDIR, am__include, and am__quote
-    # from the Makefile without running `make'.
-    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
-    test -z "$DEPDIR" && continue
-    am__include=`sed -n 's/^am__include = //p' < "$mf"`
-    test -z "am__include" && continue
-    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-    # When using ansi2knr, U may be empty or an underscore; expand it
-    U=`sed -n 's/^U = //p' < "$mf"`
-    # Find all dependency output files, they are included files with
-    # $(DEPDIR) in their names.  We invoke sed twice because it is the
-    # simplest approach to changing $(DEPDIR) to its actual value in the
-    # expansion.
-    for file in `sed -n "
-      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
-      # Make sure the directory exists.
-      test -f "$dirpart/$file" && continue
-      fdir=`$as_dirname -- "$file" ||
-$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$file" : 'X\(//\)[^/]' \| \
-	 X"$file" : 'X\(//\)$' \| \
-	 X"$file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$file" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-      as_dir=$dirpart/$fdir; as_fn_mkdir_p
-      # echo "creating $dirpart/$file"
-      echo '# dummy' > "$dirpart/$file"
-    done
-  done
-}
- ;;
-    "libtool":C)
-
-    # See if we are running on zsh, and set the options which 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
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $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.
-#
-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-#                 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
-#                 Inc.
-#   Written by Gordon Matzigkeit, 1996
-#
-#   This file is part of GNU Libtool.
-#
-# 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 GNU Libtool; see the file COPYING.  If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-
-# The names of the tagged configurations supported by this script.
-available_tags=""
-
-# ### BEGIN LIBTOOL CONFIG
-
-# Assembler program.
-AS=$lt_AS
-
-# DLL creation program.
-DLLTOOL=$lt_DLLTOOL
-
-# Object dumper program.
-OBJDUMP=$lt_OBJDUMP
-
-# Which release of libtool.m4 was used?
-macro_version=$macro_version
-macro_revision=$macro_revision
-
-# 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
-
-# Shell to use when invoking shell scripts.
-SHELL=$lt_SHELL
-
-# An echo program that protects backslashes.
-ECHO=$lt_ECHO
-
-# 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
-
-# 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.
-AR_FLAGS=$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 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
-
-# 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 in which our libraries should be installed.
-lt_sysroot=$lt_sysroot
-
-# 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
-
-# Run-time system search path for libraries.
-sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
-
-# 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
-
-# If ld is used when linking, flag to hardcode \$libdir into a binary
-# during linking.  This must work even if \$libdir does not exist.
-hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld
-
-# 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
-
-  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 "X${COLLECT_NAMES+set}" != Xset; 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)
-
-  if test x"$xsi_shell" = xyes; then
-  sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
-func_dirname ()\
-{\
-\    case ${1} in\
-\      */*) func_dirname_result="${1%/*}${2}" ;;\
-\      *  ) func_dirname_result="${3}" ;;\
-\    esac\
-} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_basename ()$/,/^} # func_basename /c\
-func_basename ()\
-{\
-\    func_basename_result="${1##*/}"\
-} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\
-func_dirname_and_basename ()\
-{\
-\    case ${1} in\
-\      */*) func_dirname_result="${1%/*}${2}" ;;\
-\      *  ) func_dirname_result="${3}" ;;\
-\    esac\
-\    func_basename_result="${1##*/}"\
-} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_stripname ()$/,/^} # func_stripname /c\
-func_stripname ()\
-{\
-\    # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\
-\    # positional parameters, so assign one to ordinary parameter first.\
-\    func_stripname_result=${3}\
-\    func_stripname_result=${func_stripname_result#"${1}"}\
-\    func_stripname_result=${func_stripname_result%"${2}"}\
-} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\
-func_split_long_opt ()\
-{\
-\    func_split_long_opt_name=${1%%=*}\
-\    func_split_long_opt_arg=${1#*=}\
-} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\
-func_split_short_opt ()\
-{\
-\    func_split_short_opt_arg=${1#??}\
-\    func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\
-} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\
-func_lo2o ()\
-{\
-\    case ${1} in\
-\      *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\
-\      *)    func_lo2o_result=${1} ;;\
-\    esac\
-} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_xform ()$/,/^} # func_xform /c\
-func_xform ()\
-{\
-    func_xform_result=${1%.*}.lo\
-} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_arith ()$/,/^} # func_arith /c\
-func_arith ()\
-{\
-    func_arith_result=$(( $* ))\
-} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_len ()$/,/^} # func_len /c\
-func_len ()\
-{\
-    func_len_result=${#1}\
-} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-fi
-
-if test x"$lt_shell_append" = xyes; then
-  sed -e '/^func_append ()$/,/^} # func_append /c\
-func_append ()\
-{\
-    eval "${1}+=\\${2}"\
-} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\
-func_append_quoted ()\
-{\
-\    func_quote_for_eval "${2}"\
-\    eval "${1}+=\\\\ \\$func_quote_for_eval_result"\
-} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  # Save a `func_append' function call where possible by direct use of '+='
-  sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-else
-  # Save a `func_append' function call even when '+=' is not available
-  sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-fi
-
-if test x"$_lt_function_replace_fail" = x":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
-$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
-fi
-
-
-   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
-_ACEOF
-ac_clean_files=$ac_clean_files_save
-
-test $ac_write_fail = 0 ||
-  as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded.  So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status.  When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
-  ac_cs_success=:
-  ac_config_status_args=
-  test "$silent" = yes &&
-    ac_config_status_args="$ac_config_status_args --quiet"
-  exec 5>/dev/null
-  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
-  exec 5>>config.log
-  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
-  # would make configure fail if this is the last instruction.
-  $ac_cs_success || as_fn_exit 1
-fi
-if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
-fi
-
diff --git a/src/other/ares/configure.ac b/src/other/ares/configure.ac
deleted file mode 100644
index c77f24a..0000000
--- a/src/other/ares/configure.ac
+++ /dev/null
@@ -1,883 +0,0 @@
-AC_PREREQ(2.57)
-
-dnl Version not hardcoded here. Fetched later from ares_version.h
-AC_INIT([c-ares], [1.7.1],
-  [c-ares mailing list => http://cool.haxx.se/mailman/listinfo/c-ares])
-
-CARES_OVERRIDE_AUTOCONF
-
-AC_CONFIG_SRCDIR([ares_ipv6.h])
-AM_CONFIG_HEADER([ares_config.h ares_build.h])
-AC_CONFIG_MACRO_DIR([m4])
-AM_MAINTAINER_MODE
-
-CARES_CHECK_OPTION_DEBUG
-CARES_CHECK_OPTION_OPTIMIZE
-CARES_CHECK_OPTION_WARNINGS
-CARES_CHECK_OPTION_CURLDEBUG
-CARES_CHECK_OPTION_SYMBOL_HIDING
-
-CARES_CHECK_PATH_SEPARATOR_REQUIRED
-
-dnl SED is mandatory for configure process and libtool.
-dnl Set it now, allowing it to be changed later.
-AC_PATH_PROG([SED], [sed], [not_found],
-  [$PATH:/usr/bin:/usr/local/bin])
-if test -z "$SED" || test "$SED" = "not_found"; then
-  AC_MSG_ERROR([sed not found in PATH. Cannot continue without sed.])
-fi
-AC_SUBST([SED])
-
-dnl GREP is mandatory for configure process and libtool.
-dnl Set it now, allowing it to be changed later.
-AC_PATH_PROG([GREP], [grep], [not_found],
-  [$PATH:/usr/bin:/usr/local/bin])
-if test -z "$GREP" || test "$GREP" = "not_found"; then
-  AC_MSG_ERROR([grep not found in PATH. Cannot continue without grep.])
-fi
-AC_SUBST([GREP])
-
-dnl EGREP is mandatory for configure process and libtool.
-dnl Set it now, allowing it to be changed later.
-if echo a | ($GREP -E '(a|b)') >/dev/null 2>&1; then
-  AC_MSG_CHECKING([for egrep])
-  EGREP="$GREP -E"
-  AC_MSG_RESULT([$EGREP])
-else
-  AC_PATH_PROG([EGREP], [egrep], [not_found],
-    [$PATH:/usr/bin:/usr/local/bin])
-fi
-if test -z "$EGREP" || test "$EGREP" = "not_found"; then
-  AC_MSG_ERROR([egrep not found in PATH. Cannot continue without egrep.])
-fi
-AC_SUBST([EGREP])
-
-dnl AR is mandatory for configure process and libtool.
-dnl This is target dependent, so check it as a tool.
-AC_PATH_TOOL([AR], [ar], [not_found],
-  [$PATH:/usr/bin:/usr/local/bin])
-if test -z "$AR" || test "$AR" = "not_found"; then
-  AC_MSG_ERROR([ar not found in PATH. Cannot continue without ar.])
-fi
-AC_SUBST([AR])
-
-dnl Remove non-configure distributed ares_build.h
-if test -f ${srcdir}/ares_build.h; then
-  rm -f ${srcdir}/ares_build.h
-fi
-
-dnl Fetch c-ares version from ares_version.h
-VERSION=`$SED -ne 's/^#define ARES_VERSION_STR "\(.*\)"/\1/p' ${srcdir}/ares_version.h`
-AM_INIT_AUTOMAKE([c-ares], [$VERSION])
-AC_MSG_CHECKING([c-ares version])
-AC_MSG_RESULT([$VERSION])
-
-dnl
-dnl Detect the canonical host and target build environment
-dnl
-
-AC_CANONICAL_HOST
-dnl Get system canonical name
-AC_DEFINE_UNQUOTED(OS, "${host}", [cpu-machine-OS])
-
-CARES_CHECK_PROG_CC
-AM_PROG_CC_C_O
-AC_PROG_INSTALL
-
-dnl This defines _ALL_SOURCE for AIX
-CARES_CHECK_AIX_ALL_SOURCE
-
-dnl Our configure and build reentrant settings
-CARES_CONFIGURE_THREAD_SAFE
-CARES_CONFIGURE_REENTRANT
-
-dnl check for how to do large files
-AC_SYS_LARGEFILE
-
-case $host_os in
-  solaris*)
-    AC_DEFINE(ETC_INET, 1, [if a /etc/inet dir is being used])
-    ;;
-esac
-
-dnl support building of Windows DLLs
-AC_LIBTOOL_WIN32_DLL
-
-dnl force libtool to build static libraries with PIC on AMD64-Linux & FreeBSD
-AC_MSG_CHECKING([if arch-OS host is AMD64-Linux/FreeBSD (to build static libraries with PIC)])
-case $host in
-  x86_64*linux*|amd64*freebsd*|ia64*freebsd*)
-    AC_MSG_RESULT([yes])
-    with_pic=yes
-    ;;
-  *)
-    AC_MSG_RESULT([no])
-    ;;
-esac
-
-AC_MSG_CHECKING([if compiler is icc (to build with PIC)])
-case $CC in
-  icc | */icc)
-    AC_MSG_RESULT([yes])
-    with_pic=yes
-    ;;
-  *)
-    AC_MSG_RESULT([no])
-    ;;
-esac
-
-dnl libtool setup
-AC_PROG_LIBTOOL
-
-AC_MSG_CHECKING([if we need CARES_BUILDING_LIBRARY])
-case $host in
-  *-*-mingw*)
-    AC_DEFINE(CARES_BUILDING_LIBRARY, 1, [when building c-ares library])
-    AC_MSG_RESULT(yes)
-    AC_MSG_CHECKING([if we need CARES_STATICLIB])
-    if test "X$enable_shared" = "Xno"
-    then
-      AC_DEFINE(CARES_STATICLIB, 1, [when not building a shared library])
-      AC_MSG_RESULT(yes)
-    else
-      AC_MSG_RESULT(no)
-    fi
-    ;;
-  *)
-    AC_MSG_RESULT(no)
-    ;;
-esac
-
-dnl **********************************************************************
-dnl platform/compiler/architecture specific checks/flags
-dnl **********************************************************************
-
-CARES_CHECK_COMPILER
-CARES_SET_COMPILER_BASIC_OPTS
-CARES_SET_COMPILER_DEBUG_OPTS
-CARES_SET_COMPILER_OPTIMIZE_OPTS
-CARES_SET_COMPILER_WARNING_OPTS
-
-if test "$compiler_id" = "INTEL_UNIX_C"; then
-  #
-  if test "$compiler_num" -ge "1000"; then
-    dnl icc 10.X or later
-    CFLAGS="$CFLAGS -shared-intel"
-  elif test "$compiler_num" -ge "900"; then
-    dnl icc 9.X specific
-    CFLAGS="$CFLAGS -i-dynamic"
-  fi
-  #
-fi
-
-CARES_CHECK_COMPILER_HALT_ON_ERROR
-CARES_CHECK_COMPILER_ARRAY_SIZE_NEGATIVE
-CARES_CHECK_COMPILER_SYMBOL_HIDING
-
-CARES_CHECK_NO_UNDEFINED
-AM_CONDITIONAL(NO_UNDEFINED, test x$need_no_undefined = xyes)
-
-CARES_CHECK_CURLDEBUG
-AM_CONDITIONAL(CURLDEBUG, test x$want_curldebug = xyes)
-
-dnl **********************************************************************
-dnl Compilation based checks should not be done before this point.
-dnl **********************************************************************
-
-dnl **********************************************************************
-dnl Make sure that our checks for headers windows.h winsock.h winsock2.h 
-dnl and ws2tcpip.h take precedence over any other further checks which 
-dnl could be done later using AC_CHECK_HEADER or AC_CHECK_HEADERS for
-dnl this specific header files. And do them before its results are used.
-dnl **********************************************************************
-
-CURL_CHECK_HEADER_WINDOWS
-CURL_CHECK_NATIVE_WINDOWS
-case X-"$ac_cv_native_windows" in
-  X-yes)
-    CURL_CHECK_HEADER_WINSOCK
-    CURL_CHECK_HEADER_WINSOCK2
-    CURL_CHECK_HEADER_WS2TCPIP
-    ;;
-  *)
-    ac_cv_header_winsock_h="no"
-    ac_cv_header_winsock2_h="no"
-    ac_cv_header_ws2tcpip_h="no"
-    ;;
-esac
-
-dnl **********************************************************************
-dnl Checks for libraries.
-dnl **********************************************************************
-
-CARES_CHECK_LIB_XNET
-
-dnl gethostbyname without lib or in the nsl lib?
-AC_CHECK_FUNC(gethostbyname,
-              [HAVE_GETHOSTBYNAME="1"
-              ],
-              [ AC_CHECK_LIB(nsl, gethostbyname,
-                             [HAVE_GETHOSTBYNAME="1"
-                             LIBS="$LIBS -lnsl"
-                             ])
-              ])
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl gethostbyname in the socket lib?
-  AC_CHECK_LIB(socket, gethostbyname,
-               [HAVE_GETHOSTBYNAME="1"
-               LIBS="$LIBS -lsocket"
-               ])
-fi
-
-dnl At least one system has been identified to require BOTH nsl and socket
-dnl libs at the same time to link properly.
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  AC_MSG_CHECKING([for gethostbyname with both nsl and socket libs])
-  my_ac_save_LIBS=$LIBS
-  LIBS="-lnsl -lsocket $LIBS"
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-      gethostbyname();
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    HAVE_GETHOSTBYNAME="1"
-  ],[
-    AC_MSG_RESULT([no])
-    LIBS=$my_ac_save_LIBS
-  ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl This is for winsock systems
-  if test "$ac_cv_header_windows_h" = "yes"; then
-    if test "$ac_cv_header_winsock_h" = "yes"; then
-      case $host in
-        *-*-mingw32ce*)
-          winsock_LIB="-lwinsock"
-          ;;
-        *)
-          winsock_LIB="-lwsock32"
-          ;;
-      esac
-    fi
-    if test "$ac_cv_header_winsock2_h" = "yes"; then
-      winsock_LIB="-lws2_32"
-    fi
-    if test ! -z "$winsock_LIB"; then
-      my_ac_save_LIBS=$LIBS
-      LIBS="$winsock_LIB $LIBS"
-      AC_MSG_CHECKING([for gethostbyname in $winsock_LIB])
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#endif
-        ]],[[
-          gethostbyname("www.dummysite.com");
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        HAVE_GETHOSTBYNAME="1"
-      ],[
-        AC_MSG_RESULT([no])
-        winsock_LIB=""
-        LIBS=$my_ac_save_LIBS
-      ])
-    fi
-  fi
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl This is for Minix 3.1
-  AC_MSG_CHECKING([for gethostbyname for Minix 3])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-/* Older Minix versions may need <net/gen/netdb.h> here instead */
-#include <netdb.h>
-    ]],[[
-      gethostbyname("www.dummysite.com");
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    HAVE_GETHOSTBYNAME="1"
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl This is for eCos with a stubbed DNS implementation
-  AC_MSG_CHECKING([for gethostbyname for eCos])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#include <stdio.h>
-#include <netdb.h>
-    ]],[[
-      gethostbyname("www.dummysite.com");
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    HAVE_GETHOSTBYNAME="1"
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl gethostbyname in the net lib - for BeOS
-  AC_CHECK_LIB(net, gethostbyname,
-               [HAVE_GETHOSTBYNAME="1"
-               LIBS="$LIBS -lnet"
-               ])
-fi
-
-
-if test "$HAVE_GETHOSTBYNAME" != "1"; then
-  AC_MSG_ERROR([couldn't find libraries for gethostbyname()])
-fi
-
-dnl resolve lib?
-AC_CHECK_FUNC(strcasecmp, , [ AC_CHECK_LIB(resolve, strcasecmp) ])
-
-if test "$ac_cv_lib_resolve_strcasecmp" = "$ac_cv_func_strcasecmp"; then
-  AC_CHECK_LIB(resolve, strcasecmp,
-              [LIBS="-lresolve $LIBS"],
-               ,
-               -lnsl)
-fi
-ac_cv_func_strcasecmp="no"
-
-CARES_CHECK_LIBS_CONNECT
-
-dnl **********************************************************************
-dnl In case that function clock_gettime with monotonic timer is available,
-dnl check for additional required libraries.
-dnl **********************************************************************
-CURL_CHECK_LIBS_CLOCK_GETTIME_MONOTONIC
-
-AC_MSG_CHECKING([whether to use libgcc])
-AC_ARG_ENABLE(libgcc,
-AC_HELP_STRING([--enable-libgcc],[use libgcc when linking]),
-[ case "$enableval" in
-  yes)
-        LIBS="$LIBS -lgcc"
-       AC_MSG_RESULT(yes)
-       ;;
-  *)   AC_MSG_RESULT(no)
-       ;;
-  esac ],
-       AC_MSG_RESULT(no)
-)
-
-
-dnl Let's hope this split URL remains working:
-dnl http://publibn.boulder.ibm.com/doc_link/en_US/a_doc_lib/aixprggd/ \
-dnl genprogc/thread_quick_ref.htm
-
-
-dnl **********************************************************************
-dnl Back to "normal" configuring
-dnl **********************************************************************
-
-dnl Checks for header files.
-AC_HEADER_STDC
-
-CURL_CHECK_HEADER_MALLOC
-CURL_CHECK_HEADER_MEMORY
-
-dnl check for a few basic system headers we need
-AC_CHECK_HEADERS(
-       sys/types.h \
-       sys/time.h \
-       sys/select.h \
-       sys/socket.h \
-       sys/ioctl.h \
-       sys/param.h \
-       sys/uio.h \
-       assert.h \
-       netdb.h \
-       netinet/in.h \
-       netinet/tcp.h \
-       net/if.h \
-       errno.h \
-       socket.h \
-       strings.h \
-       stdbool.h \
-       time.h \
-       limits.h \
-       arpa/nameser.h \
-       arpa/nameser_compat.h \
-       arpa/inet.h,
-dnl to do if not found
-[],
-dnl to do if found
-[],
-dnl default includes
-[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-dnl We do this default-include simply to make sure that the nameser_compat.h
-dnl header *REALLY* can be include after the new nameser.h. It seems AIX 5.1
-dnl (and others?) is not designed to allow this.
-#ifdef HAVE_ARPA_NAMESER_H
-#include <arpa/nameser.h>
-#endif
-
-dnl *Sigh* these are needed in order for net/if.h to get properly detected.
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-]
-)
-
-dnl Checks for typedefs, structures, and compiler characteristics.
-AC_C_CONST
-AC_TYPE_SIZE_T
-AC_HEADER_TIME
-CURL_CHECK_STRUCT_TIMEVAL
-
-AC_CHECK_SIZEOF(size_t)
-AC_CHECK_SIZEOF(int)
-AC_CHECK_SIZEOF(long)
-CARES_CONFIGURE_LONG
-AC_CHECK_SIZEOF(time_t)
-
-AC_CHECK_TYPE(long long,
-   [AC_DEFINE(HAVE_LONGLONG, 1,
-     [Define to 1 if the compiler supports the 'long long' data type.])]
-   longlong="yes"  
-)
-
-if test "xyes" = "x$longlong"; then
-  AC_MSG_CHECKING([if numberLL works])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-      long long val = 1000LL;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    AC_DEFINE(HAVE_LL, 1, [if your compiler supports LL])
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-fi
-
-
-# check for ssize_t
-AC_CHECK_TYPE(ssize_t, ,
-   AC_DEFINE(ssize_t, int, [the signed version of size_t]))
-
-# check for bool type
-AC_CHECK_TYPE([bool],[
-  AC_DEFINE(HAVE_BOOL_T, 1,
-    [Define to 1 if bool is an available type.])
-], ,[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_STDBOOL_H
-#include <stdbool.h>
-#endif
-])
-
-CARES_CONFIGURE_ARES_SOCKLEN_T
-
-TYPE_IN_ADDR_T
-
-TYPE_SOCKADDR_STORAGE
-
-TYPE_SIG_ATOMIC_T
-
-AC_TYPE_SIGNAL
-
-CURL_CHECK_FUNC_RECV
-CURL_CHECK_FUNC_RECVFROM
-CURL_CHECK_FUNC_SEND
-CURL_CHECK_MSG_NOSIGNAL
-
-CARES_CHECK_FUNC_CLOSESOCKET
-CARES_CHECK_FUNC_CLOSESOCKET_CAMEL
-CARES_CHECK_FUNC_CONNECT
-CARES_CHECK_FUNC_FCNTL
-CARES_CHECK_FUNC_FREEADDRINFO
-CARES_CHECK_FUNC_GETADDRINFO
-CARES_CHECK_FUNC_GETHOSTBYADDR
-CARES_CHECK_FUNC_GETHOSTBYNAME
-CARES_CHECK_FUNC_GETHOSTNAME
-CARES_CHECK_FUNC_GETSERVBYPORT_R
-CARES_CHECK_FUNC_INET_NTOP
-CARES_CHECK_FUNC_INET_PTON
-CARES_CHECK_FUNC_IOCTL
-CARES_CHECK_FUNC_IOCTLSOCKET
-CARES_CHECK_FUNC_IOCTLSOCKET_CAMEL
-CARES_CHECK_FUNC_SETSOCKOPT
-CARES_CHECK_FUNC_SOCKET
-CARES_CHECK_FUNC_STRCASECMP
-CARES_CHECK_FUNC_STRCMPI
-CARES_CHECK_FUNC_STRDUP
-CARES_CHECK_FUNC_STRICMP
-CARES_CHECK_FUNC_STRNCASECMP
-CARES_CHECK_FUNC_STRNCMPI
-CARES_CHECK_FUNC_STRNICMP
-CARES_CHECK_FUNC_WRITEV
-
-
-dnl check for AF_INET6
-CARES_CHECK_CONSTANT(
-  [
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-  ], [PF_INET6], 
-     AC_DEFINE_UNQUOTED(HAVE_PF_INET6,1,[Define to 1 if you have PF_INET6.])
-)
-
-dnl check for PF_INET6
-CARES_CHECK_CONSTANT(
-  [
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-  ], [AF_INET6], 
-     AC_DEFINE_UNQUOTED(HAVE_AF_INET6,1,[Define to 1 if you have AF_INET6.])
-)
-
-
-dnl check for the in6_addr structure
-CARES_CHECK_STRUCT(
-  [
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#endif
-  ], [in6_addr], 
-     AC_DEFINE_UNQUOTED(HAVE_STRUCT_IN6_ADDR,1,[Define to 1 if you have struct in6_addr.])
-)
-
-dnl check for the sockaddr_in6 structure
-CARES_CHECK_STRUCT(
-  [
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#endif
-  ], [sockaddr_in6], 
-     AC_DEFINE_UNQUOTED(HAVE_STRUCT_SOCKADDR_IN6,1,
-       [Define to 1 if you have struct sockaddr_in6.]) ac_have_sockaddr_in6=yes
-)
-
-AC_CHECK_MEMBER(struct sockaddr_in6.sin6_scope_id,
-    AC_DEFINE_UNQUOTED(HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID,1,
-      [Define to 1 if your struct sockaddr_in6 has sin6_scope_id.])
-   , ,
-  [
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#endif
-  ])
-
-dnl check for the addrinfo structure
-AC_CHECK_MEMBER(struct addrinfo.ai_flags,
-     AC_DEFINE_UNQUOTED(HAVE_STRUCT_ADDRINFO,1,
-       [Define to 1 if you have struct addrinfo.]),,
-  [
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#endif
-  ]
-)
-
-
-AC_CHECK_FUNCS([bitncmp \
-  gettimeofday \
-  if_indextoname
-],[
-],[
-  func="$ac_func"
-  AC_MSG_CHECKING([deeper for $func])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-      $func ();
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    eval "ac_cv_func_$func=yes"
-    AC_DEFINE_UNQUOTED(AS_TR_CPP([HAVE_$func]), [1],
-      [Define to 1 if you have the $func function.])
-  ],[
-    AC_MSG_RESULT([but still no])
-  ])
-])
-
-
-dnl Check for inet_net_pton
-AC_CHECK_FUNCS(inet_net_pton)
-dnl Again, some systems have it, but not IPv6
-if test "$ac_cv_func_inet_net_pton" = "yes" ; then
-AC_MSG_CHECKING(if inet_net_pton supports IPv6)
-AC_TRY_RUN(
-  [
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-int main()
-  {
-    struct in6_addr addr6;
-    if (inet_net_pton(AF_INET6, "::1", &addr6, sizeof(addr6)) < 1)
-      exit(1);
-    else
-      exit(0);
-  }
-  ], [
-       AC_MSG_RESULT(yes)
-       AC_DEFINE_UNQUOTED(HAVE_INET_NET_PTON_IPV6,1,[Define to 1 if inet_net_pton supports IPv6.])
-     ], AC_MSG_RESULT(no),AC_MSG_RESULT(no))
-fi
-
-
-AC_CHECK_SIZEOF(struct in6_addr, ,
-[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#endif
-]
-)
-
-AC_CHECK_SIZEOF(struct in_addr, ,
-[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#endif
-]
-)
-
-
-dnl Check if the getnameinfo function is available
-dnl and get the types of five of its arguments.
-CURL_CHECK_FUNC_GETNAMEINFO
-
-
-AC_C_BIGENDIAN(
-    [AC_DEFINE(ARES_BIG_ENDIAN, 1,
-      [define this if ares is built for a big endian system])],
-    ,
-    [AC_MSG_WARN([couldn't figure out endianess, assuming little endian!])]
-)
-
-dnl Check for user-specified random device
-AC_ARG_WITH(random,
-AC_HELP_STRING([--with-random=FILE],
-               [read randomness from FILE (default=/dev/urandom)]),
-    [ RANDOM_FILE="$withval" ],
-    [
-        dnl Check for random device.  If we're cross compiling, we can't
-        dnl check, and it's better to assume it doesn't exist than it is
-        dnl to fail on AC_CHECK_FILE or later.
-        if test "$cross_compiling" = "no"; then
-          AC_CHECK_FILE("/dev/urandom", [ RANDOM_FILE="/dev/urandom"] )
-        else
-          AC_MSG_WARN([cannot check for /dev/urandom while cross compiling; assuming none])
-        fi
-        
-    ]
-)
-if test -n "$RANDOM_FILE" && test X"$RANDOM_FILE" != Xno ; then
-        AC_SUBST(RANDOM_FILE)
-        AC_DEFINE_UNQUOTED(RANDOM_FILE, "$RANDOM_FILE",
-        [a suitable file/device to read random data from])
-fi
-
-CARES_CHECK_OPTION_NONBLOCKING
-CARES_CHECK_NONBLOCKING_SOCKET
-
-CARES_CONFIGURE_SYMBOL_HIDING
-
-CARES_PRIVATE_LIBS="$LIBS"
-AC_SUBST(CARES_PRIVATE_LIBS)
-
-dnl squeeze whitespace out of some variables
-
-squeeze CFLAGS
-squeeze CPPFLAGS
-squeeze DEFS
-squeeze LDFLAGS
-squeeze LIBS
-
-squeeze CARES_PRIVATE_LIBS
-
-AC_CONFIG_FILES([Makefile libcares.pc])
-AC_OUTPUT
diff --git a/src/other/ares/depcomp b/src/other/ares/depcomp
deleted file mode 100755
index df8eea7..0000000
--- a/src/other/ares/depcomp
+++ /dev/null
@@ -1,630 +0,0 @@
-#! /bin/sh
-# depcomp - compile a program generating dependencies as side-effects
-
-scriptversion=2009-04-28.21; # UTC
-
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
-# Software Foundation, Inc.
-
-# This program 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, 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 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 <http://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Originally written by Alexandre Oliva <oliva at dcc.unicamp.br>.
-
-case $1 in
-  '')
-     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
-     exit 1;
-     ;;
-  -h | --h*)
-    cat <<\EOF
-Usage: depcomp [--help] [--version] PROGRAM [ARGS]
-
-Run PROGRAMS ARGS to compile a file, generating dependencies
-as side-effects.
-
-Environment variables:
-  depmode     Dependency tracking mode.
-  source      Source file read by `PROGRAMS ARGS'.
-  object      Object file output by `PROGRAMS ARGS'.
-  DEPDIR      directory where to store dependencies.
-  depfile     Dependency file to output.
-  tmpdepfile  Temporary file to use when outputing dependencies.
-  libtool     Whether libtool is used (yes/no).
-
-Report bugs to <bug-automake at gnu.org>.
-EOF
-    exit $?
-    ;;
-  -v | --v*)
-    echo "depcomp $scriptversion"
-    exit $?
-    ;;
-esac
-
-if test -z "$depmode" || test -z "$source" || test -z "$object"; then
-  echo "depcomp: Variables source, object and depmode must be set" 1>&2
-  exit 1
-fi
-
-# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
-depfile=${depfile-`echo "$object" |
-  sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
-tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
-
-rm -f "$tmpdepfile"
-
-# Some modes work just like other modes, but use different flags.  We
-# parameterize here, but still list the modes in the big case below,
-# to make depend.m4 easier to write.  Note that we *cannot* use a case
-# here, because this file can only contain one case statement.
-if test "$depmode" = hp; then
-  # HP compiler uses -M and no extra arg.
-  gccflag=-M
-  depmode=gcc
-fi
-
-if test "$depmode" = dashXmstdout; then
-   # This is just like dashmstdout with a different argument.
-   dashmflag=-xM
-   depmode=dashmstdout
-fi
-
-cygpath_u="cygpath -u -f -"
-if test "$depmode" = msvcmsys; then
-   # This is just like msvisualcpp but w/o cygpath translation.
-   # Just convert the backslash-escaped backslashes to single forward
-   # slashes to satisfy depend.m4
-   cygpath_u="sed s,\\\\\\\\,/,g"
-   depmode=msvisualcpp
-fi
-
-case "$depmode" in
-gcc3)
-## gcc 3 implements dependency tracking that does exactly what
-## we want.  Yay!  Note: for some reason libtool 1.4 doesn't like
-## it if -MD -MP comes after the -MF stuff.  Hmm.
-## Unfortunately, FreeBSD c89 acceptance of flags depends upon
-## the command line argument order; so add the flags where they
-## appear in depend2.am.  Note that the slowdown incurred here
-## affects only configure: in makefiles, %FASTDEP% shortcuts this.
-  for arg
-  do
-    case $arg in
-    -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
-    *)  set fnord "$@" "$arg" ;;
-    esac
-    shift # fnord
-    shift # $arg
-  done
-  "$@"
-  stat=$?
-  if test $stat -eq 0; then :
-  else
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  mv "$tmpdepfile" "$depfile"
-  ;;
-
-gcc)
-## There are various ways to get dependency output from gcc.  Here's
-## why we pick this rather obscure method:
-## - Don't want to use -MD because we'd like the dependencies to end
-##   up in a subdir.  Having to rename by hand is ugly.
-##   (We might end up doing this anyway to support other compilers.)
-## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
-##   -MM, not -M (despite what the docs say).
-## - Using -M directly means running the compiler twice (even worse
-##   than renaming).
-  if test -z "$gccflag"; then
-    gccflag=-MD,
-  fi
-  "$@" -Wp,"$gccflag$tmpdepfile"
-  stat=$?
-  if test $stat -eq 0; then :
-  else
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  rm -f "$depfile"
-  echo "$object : \\" > "$depfile"
-  alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
-## The second -e expression handles DOS-style file names with drive letters.
-  sed -e 's/^[^:]*: / /' \
-      -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
-## This next piece of magic avoids the `deleted header file' problem.
-## The problem is that when a header file which appears in a .P file
-## is deleted, the dependency causes make to die (because there is
-## typically no way to rebuild the header).  We avoid this by adding
-## dummy dependencies for each header file.  Too bad gcc doesn't do
-## this for us directly.
-  tr ' ' '
-' < "$tmpdepfile" |
-## Some versions of gcc put a space before the `:'.  On the theory
-## that the space means something, we add a space to the output as
-## well.
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-hp)
-  # This case exists only to let depend.m4 do its work.  It works by
-  # looking at the text of this script.  This case will never be run,
-  # since it is checked for above.
-  exit 1
-  ;;
-
-sgi)
-  if test "$libtool" = yes; then
-    "$@" "-Wp,-MDupdate,$tmpdepfile"
-  else
-    "$@" -MDupdate "$tmpdepfile"
-  fi
-  stat=$?
-  if test $stat -eq 0; then :
-  else
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  rm -f "$depfile"
-
-  if test -f "$tmpdepfile"; then  # yes, the sourcefile depend on other files
-    echo "$object : \\" > "$depfile"
-
-    # Clip off the initial element (the dependent).  Don't try to be
-    # clever and replace this with sed code, as IRIX sed won't handle
-    # lines with more than a fixed number of characters (4096 in
-    # IRIX 6.2 sed, 8192 in IRIX 6.5).  We also remove comment lines;
-    # the IRIX cc adds comments like `#:fec' to the end of the
-    # dependency line.
-    tr ' ' '
-' < "$tmpdepfile" \
-    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
-    tr '
-' ' ' >> "$depfile"
-    echo >> "$depfile"
-
-    # The second pass generates a dummy entry for each header file.
-    tr ' ' '
-' < "$tmpdepfile" \
-   | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
-   >> "$depfile"
-  else
-    # The sourcefile does not contain any dependencies, so just
-    # store a dummy comment line, to avoid errors with the Makefile
-    # "include basename.Plo" scheme.
-    echo "#dummy" > "$depfile"
-  fi
-  rm -f "$tmpdepfile"
-  ;;
-
-aix)
-  # The C for AIX Compiler uses -M and outputs the dependencies
-  # in a .u file.  In older versions, this file always lives in the
-  # current directory.  Also, the AIX compiler puts `$object:' at the
-  # start of each line; $object doesn't have directory information.
-  # Version 6 uses the directory in both cases.
-  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-  test "x$dir" = "x$object" && dir=
-  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-  if test "$libtool" = yes; then
-    tmpdepfile1=$dir$base.u
-    tmpdepfile2=$base.u
-    tmpdepfile3=$dir.libs/$base.u
-    "$@" -Wc,-M
-  else
-    tmpdepfile1=$dir$base.u
-    tmpdepfile2=$dir$base.u
-    tmpdepfile3=$dir$base.u
-    "$@" -M
-  fi
-  stat=$?
-
-  if test $stat -eq 0; then :
-  else
-    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
-    exit $stat
-  fi
-
-  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
-  do
-    test -f "$tmpdepfile" && break
-  done
-  if test -f "$tmpdepfile"; then
-    # Each line is of the form `foo.o: dependent.h'.
-    # Do two passes, one to just change these to
-    # `$object: dependent.h' and one to simply `dependent.h:'.
-    sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
-    # That's a tab and a space in the [].
-    sed -e 's,^.*\.[a-z]*:[	 ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
-  else
-    # The sourcefile does not contain any dependencies, so just
-    # store a dummy comment line, to avoid errors with the Makefile
-    # "include basename.Plo" scheme.
-    echo "#dummy" > "$depfile"
-  fi
-  rm -f "$tmpdepfile"
-  ;;
-
-icc)
-  # Intel's C compiler understands `-MD -MF file'.  However on
-  #    icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
-  # ICC 7.0 will fill foo.d with something like
-  #    foo.o: sub/foo.c
-  #    foo.o: sub/foo.h
-  # which is wrong.  We want:
-  #    sub/foo.o: sub/foo.c
-  #    sub/foo.o: sub/foo.h
-  #    sub/foo.c:
-  #    sub/foo.h:
-  # ICC 7.1 will output
-  #    foo.o: sub/foo.c sub/foo.h
-  # and will wrap long lines using \ :
-  #    foo.o: sub/foo.c ... \
-  #     sub/foo.h ... \
-  #     ...
-
-  "$@" -MD -MF "$tmpdepfile"
-  stat=$?
-  if test $stat -eq 0; then :
-  else
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  rm -f "$depfile"
-  # Each line is of the form `foo.o: dependent.h',
-  # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
-  # Do two passes, one to just change these to
-  # `$object: dependent.h' and one to simply `dependent.h:'.
-  sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
-  # Some versions of the HPUX 10.20 sed can't process this invocation
-  # correctly.  Breaking it into two sed invocations is a workaround.
-  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
-    sed -e 's/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-hp2)
-  # The "hp" stanza above does not work with aCC (C++) and HP's ia64
-  # compilers, which have integrated preprocessors.  The correct option
-  # to use with these is +Maked; it writes dependencies to a file named
-  # 'foo.d', which lands next to the object file, wherever that
-  # happens to be.
-  # Much of this is similar to the tru64 case; see comments there.
-  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-  test "x$dir" = "x$object" && dir=
-  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-  if test "$libtool" = yes; then
-    tmpdepfile1=$dir$base.d
-    tmpdepfile2=$dir.libs/$base.d
-    "$@" -Wc,+Maked
-  else
-    tmpdepfile1=$dir$base.d
-    tmpdepfile2=$dir$base.d
-    "$@" +Maked
-  fi
-  stat=$?
-  if test $stat -eq 0; then :
-  else
-     rm -f "$tmpdepfile1" "$tmpdepfile2"
-     exit $stat
-  fi
-
-  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
-  do
-    test -f "$tmpdepfile" && break
-  done
-  if test -f "$tmpdepfile"; then
-    sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
-    # Add `dependent.h:' lines.
-    sed -ne '2,${
-	       s/^ *//
-	       s/ \\*$//
-	       s/$/:/
-	       p
-	     }' "$tmpdepfile" >> "$depfile"
-  else
-    echo "#dummy" > "$depfile"
-  fi
-  rm -f "$tmpdepfile" "$tmpdepfile2"
-  ;;
-
-tru64)
-   # The Tru64 compiler uses -MD to generate dependencies as a side
-   # effect.  `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
-   # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
-   # dependencies in `foo.d' instead, so we check for that too.
-   # Subdirectories are respected.
-   dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-   test "x$dir" = "x$object" && dir=
-   base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-
-   if test "$libtool" = yes; then
-      # With Tru64 cc, shared objects can also be used to make a
-      # static library.  This mechanism is used in libtool 1.4 series to
-      # handle both shared and static libraries in a single compilation.
-      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
-      #
-      # With libtool 1.5 this exception was removed, and libtool now
-      # generates 2 separate objects for the 2 libraries.  These two
-      # compilations output dependencies in $dir.libs/$base.o.d and
-      # in $dir$base.o.d.  We have to check for both files, because
-      # one of the two compilations can be disabled.  We should prefer
-      # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
-      # automatically cleaned when .libs/ is deleted, while ignoring
-      # the former would cause a distcleancheck panic.
-      tmpdepfile1=$dir.libs/$base.lo.d   # libtool 1.4
-      tmpdepfile2=$dir$base.o.d          # libtool 1.5
-      tmpdepfile3=$dir.libs/$base.o.d    # libtool 1.5
-      tmpdepfile4=$dir.libs/$base.d      # Compaq CCC V6.2-504
-      "$@" -Wc,-MD
-   else
-      tmpdepfile1=$dir$base.o.d
-      tmpdepfile2=$dir$base.d
-      tmpdepfile3=$dir$base.d
-      tmpdepfile4=$dir$base.d
-      "$@" -MD
-   fi
-
-   stat=$?
-   if test $stat -eq 0; then :
-   else
-      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
-      exit $stat
-   fi
-
-   for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
-   do
-     test -f "$tmpdepfile" && break
-   done
-   if test -f "$tmpdepfile"; then
-      sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
-      # That's a tab and a space in the [].
-      sed -e 's,^.*\.[a-z]*:[	 ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
-   else
-      echo "#dummy" > "$depfile"
-   fi
-   rm -f "$tmpdepfile"
-   ;;
-
-#nosideeffect)
-  # This comment above is used by automake to tell side-effect
-  # dependency tracking mechanisms from slower ones.
-
-dashmstdout)
-  # Important note: in order to support this mode, a compiler *must*
-  # always write the preprocessed file to stdout, regardless of -o.
-  "$@" || exit $?
-
-  # Remove the call to Libtool.
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-
-  # Remove `-o $object'.
-  IFS=" "
-  for arg
-  do
-    case $arg in
-    -o)
-      shift
-      ;;
-    $object)
-      shift
-      ;;
-    *)
-      set fnord "$@" "$arg"
-      shift # fnord
-      shift # $arg
-      ;;
-    esac
-  done
-
-  test -z "$dashmflag" && dashmflag=-M
-  # Require at least two characters before searching for `:'
-  # in the target name.  This is to cope with DOS-style filenames:
-  # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
-  "$@" $dashmflag |
-    sed 's:^[  ]*[^: ][^:][^:]*\:[    ]*:'"$object"'\: :' > "$tmpdepfile"
-  rm -f "$depfile"
-  cat < "$tmpdepfile" > "$depfile"
-  tr ' ' '
-' < "$tmpdepfile" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-dashXmstdout)
-  # This case only exists to satisfy depend.m4.  It is never actually
-  # run, as this mode is specially recognized in the preamble.
-  exit 1
-  ;;
-
-makedepend)
-  "$@" || exit $?
-  # Remove any Libtool call
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-  # X makedepend
-  shift
-  cleared=no eat=no
-  for arg
-  do
-    case $cleared in
-    no)
-      set ""; shift
-      cleared=yes ;;
-    esac
-    if test $eat = yes; then
-      eat=no
-      continue
-    fi
-    case "$arg" in
-    -D*|-I*)
-      set fnord "$@" "$arg"; shift ;;
-    # Strip any option that makedepend may not understand.  Remove
-    # the object too, otherwise makedepend will parse it as a source file.
-    -arch)
-      eat=yes ;;
-    -*|$object)
-      ;;
-    *)
-      set fnord "$@" "$arg"; shift ;;
-    esac
-  done
-  obj_suffix=`echo "$object" | sed 's/^.*\././'`
-  touch "$tmpdepfile"
-  ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
-  rm -f "$depfile"
-  cat < "$tmpdepfile" > "$depfile"
-  sed '1,2d' "$tmpdepfile" | tr ' ' '
-' | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile" "$tmpdepfile".bak
-  ;;
-
-cpp)
-  # Important note: in order to support this mode, a compiler *must*
-  # always write the preprocessed file to stdout.
-  "$@" || exit $?
-
-  # Remove the call to Libtool.
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-
-  # Remove `-o $object'.
-  IFS=" "
-  for arg
-  do
-    case $arg in
-    -o)
-      shift
-      ;;
-    $object)
-      shift
-      ;;
-    *)
-      set fnord "$@" "$arg"
-      shift # fnord
-      shift # $arg
-      ;;
-    esac
-  done
-
-  "$@" -E |
-    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-       -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
-    sed '$ s: \\$::' > "$tmpdepfile"
-  rm -f "$depfile"
-  echo "$object : \\" > "$depfile"
-  cat < "$tmpdepfile" >> "$depfile"
-  sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-msvisualcpp)
-  # Important note: in order to support this mode, a compiler *must*
-  # always write the preprocessed file to stdout.
-  "$@" || exit $?
-
-  # Remove the call to Libtool.
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-
-  IFS=" "
-  for arg
-  do
-    case "$arg" in
-    -o)
-      shift
-      ;;
-    $object)
-      shift
-      ;;
-    "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
-	set fnord "$@"
-	shift
-	shift
-	;;
-    *)
-	set fnord "$@" "$arg"
-	shift
-	shift
-	;;
-    esac
-  done
-  "$@" -E 2>/dev/null |
-  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
-  rm -f "$depfile"
-  echo "$object : \\" > "$depfile"
-  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::	\1 \\:p' >> "$depfile"
-  echo "	" >> "$depfile"
-  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-msvcmsys)
-  # This case exists only to let depend.m4 do its work.  It works by
-  # looking at the text of this script.  This case will never be run,
-  # since it is checked for above.
-  exit 1
-  ;;
-
-none)
-  exec "$@"
-  ;;
-
-*)
-  echo "Unknown depmode $depmode" 1>&2
-  exit 1
-  ;;
-esac
-
-exit 0
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/src/other/ares/get_ver.awk b/src/other/ares/get_ver.awk
deleted file mode 100644
index 322f280..0000000
--- a/src/other/ares/get_ver.awk
+++ /dev/null
@@ -1,36 +0,0 @@
-# ***************************************************************************
-# *  Project: c-ares
-# *
-# * $Id$
-# ***************************************************************************
-# awk script which fetches c-ares version number and string from input
-# file and writes them to STDOUT. Here you can get an awk version for Win32:
-# http://www.gknw.net/development/prgtools/awk-20070501.zip
-#
-BEGIN {
-  if (match (ARGV[1], /ares_version.h/)) {
-    while ((getline < ARGV[1]) > 0) {
-      if (match ($0, /^#define ARES_COPYRIGHT "[^"]+"$/)) {
-        libcares_copyright_str = substr($0, 25, length($0)-25);
-      }
-      else if (match ($0, /^#define ARES_VERSION_STR "[^"]+"$/)) {
-        libcares_ver_str = substr($3, 2, length($3)-2);
-      }
-      else if (match ($0, /^#define ARES_VERSION_MAJOR [0-9]+$/)) {
-        libcares_ver_major = substr($3, 1, length($3));
-      }
-      else if (match ($0, /^#define ARES_VERSION_MINOR [0-9]+$/)) {
-        libcares_ver_minor = substr($3, 1, length($3));
-      }
-      else if (match ($0, /^#define ARES_VERSION_PATCH [0-9]+$/)) {
-        libcares_ver_patch = substr($3, 1, length($3));
-      }
-    }
-    libcares_ver = libcares_ver_major "," libcares_ver_minor "," libcares_ver_patch;
-    print "LIBCARES_VERSION = " libcares_ver "";
-    print "LIBCARES_VERSION_STR = " libcares_ver_str "";
-    print "LIBCARES_COPYRIGHT_STR = " libcares_copyright_str "";
-  }
-}
-
-
diff --git a/src/other/ares/inet_net_pton.c b/src/other/ares/inet_net_pton.c
deleted file mode 100644
index 9c4717a..0000000
--- a/src/other/ares/inet_net_pton.c
+++ /dev/null
@@ -1,447 +0,0 @@
-/* $Id$ */
-
-/*
- * Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC")
- * Copyright (c) 1996,1999 by Internet Software Consortium.
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
- * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#include <ctype.h>
-#include <errno.h>
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-
-#include "ares.h"
-#include "ares_ipv6.h"
-#include "inet_net_pton.h"
-
-#if !defined(HAVE_INET_NET_PTON) || !defined(HAVE_INET_NET_PTON_IPV6)
-
-/*
- * static int
- * inet_net_pton_ipv4(src, dst, size)
- *      convert IPv4 network number from presentation to network format.
- *      accepts hex octets, hex strings, decimal octets, and /CIDR.
- *      "size" is in bytes and describes "dst".
- * return:
- *      number of bits, either imputed classfully or specified with /CIDR,
- *      or -1 if some failure occurred (check errno).  ENOENT means it was
- *      not an IPv4 network specification.
- * note:
- *      network byte order assumed.  this means 192.5.5.240/28 has
- *      0b11110000 in its fourth octet.
- * note:
- *      On Windows we store the error in the thread errno, not
- *      in the winsock error code. This is to avoid loosing the
- *      actual last winsock error. So use macro ERRNO to fetch the
- *      errno this funtion sets when returning (-1), not SOCKERRNO.
- * author:
- *      Paul Vixie (ISC), June 1996
- */
-static int
-inet_net_pton_ipv4(const char *src, unsigned char *dst, size_t size)
-{
-  static const char xdigits[] = "0123456789abcdef";
-  static const char digits[] = "0123456789";
-  int n, ch, tmp = 0, dirty, bits;
-  const unsigned char *odst = dst;
-
-  ch = *src++;
-  if (ch == '0' && (src[0] == 'x' || src[0] == 'X')
-      && ISXDIGIT(src[1])) {
-    /* Hexadecimal: Eat nybble string. */
-    if (!size)
-      goto emsgsize;
-    dirty = 0;
-    src++;  /* skip x or X. */
-    while ((ch = *src++) != '\0' && ISXDIGIT(ch)) {
-      if (ISUPPER(ch))
-        ch = tolower(ch);
-      n = (int)(strchr(xdigits, ch) - xdigits);
-      if (dirty == 0)
-        tmp = n;
-      else
-        tmp = (tmp << 4) | n;
-      if (++dirty == 2) {
-        if (!size--)
-          goto emsgsize;
-        *dst++ = (unsigned char) tmp;
-        dirty = 0;
-      }
-    }
-    if (dirty) {  /* Odd trailing nybble? */
-      if (!size--)
-        goto emsgsize;
-      *dst++ = (unsigned char) (tmp << 4);
-    }
-  } else if (ISDIGIT(ch)) {
-    /* Decimal: eat dotted digit string. */
-    for (;;) {
-      tmp = 0;
-      do {
-        n = (int)(strchr(digits, ch) - digits);
-        tmp *= 10;
-        tmp += n;
-        if (tmp > 255)
-          goto enoent;
-      } while ((ch = *src++) != '\0' &&
-               ISDIGIT(ch));
-      if (!size--)
-        goto emsgsize;
-      *dst++ = (unsigned char) tmp;
-      if (ch == '\0' || ch == '/')
-        break;
-      if (ch != '.')
-        goto enoent;
-      ch = *src++;
-      if (!ISDIGIT(ch))
-        goto enoent;
-    }
-  } else
-    goto enoent;
-
-  bits = -1;
-  if (ch == '/' &&
-      ISDIGIT(src[0]) && dst > odst) {
-    /* CIDR width specifier.  Nothing can follow it. */
-    ch = *src++;    /* Skip over the /. */
-    bits = 0;
-    do {
-      n = (int)(strchr(digits, ch) - digits);
-      bits *= 10;
-      bits += n;
-    } while ((ch = *src++) != '\0' && ISDIGIT(ch));
-    if (ch != '\0')
-      goto enoent;
-    if (bits > 32)
-      goto emsgsize;
-  }
-
-  /* Firey death and destruction unless we prefetched EOS. */
-  if (ch != '\0')
-    goto enoent;
-
-  /* If nothing was written to the destination, we found no address. */
-  if (dst == odst)
-    goto enoent;
-  /* If no CIDR spec was given, infer width from net class. */
-  if (bits == -1) {
-    if (*odst >= 240)       /* Class E */
-      bits = 32;
-    else if (*odst >= 224)  /* Class D */
-      bits = 8;
-    else if (*odst >= 192)  /* Class C */
-      bits = 24;
-    else if (*odst >= 128)  /* Class B */
-      bits = 16;
-    else                    /* Class A */
-      bits = 8;
-    /* If imputed mask is narrower than specified octets, widen. */
-    if (bits < ((dst - odst) * 8))
-      bits = (int)(dst - odst) * 8;
-    /*
-     * If there are no additional bits specified for a class D
-     * address adjust bits to 4.
-     */
-    if (bits == 8 && *odst == 224)
-      bits = 4;
-  }
-  /* Extend network to cover the actual mask. */
-  while (bits > ((dst - odst) * 8)) {
-    if (!size--)
-      goto emsgsize;
-    *dst++ = '\0';
-  }
-  return (bits);
-
-  enoent:
-  SET_ERRNO(ENOENT);
-  return (-1);
-
-  emsgsize:
-  SET_ERRNO(EMSGSIZE);
-  return (-1);
-}
-
-static int
-getbits(const char *src, int *bitsp)
-{
-  static const char digits[] = "0123456789";
-  int n;
-  int val;
-  char ch;
-
-  val = 0;
-  n = 0;
-  while ((ch = *src++) != '\0') {
-    const char *pch;
-
-    pch = strchr(digits, ch);
-    if (pch != NULL) {
-      if (n++ != 0 && val == 0)       /* no leading zeros */
-        return (0);
-      val *= 10;
-      val += (pch - digits);
-      if (val > 128)                  /* range */
-        return (0);
-      continue;
-    }
-    return (0);
-  }
-  if (n == 0)
-    return (0);
-  *bitsp = val;
-  return (1);
-}
-
-static int
-getv4(const char *src, unsigned char *dst, int *bitsp)
-{
-  static const char digits[] = "0123456789";
-  unsigned char *odst = dst;
-  int n;
-  unsigned int val;
-  char ch;
-
-  val = 0;
-  n = 0;
-  while ((ch = *src++) != '\0') {
-    const char *pch;
-
-    pch = strchr(digits, ch);
-    if (pch != NULL) {
-      if (n++ != 0 && val == 0)       /* no leading zeros */
-        return (0);
-      val *= 10;
-      val += (pch - digits);
-      if (val > 255)                  /* range */
-        return (0);
-      continue;
-    }
-    if (ch == '.' || ch == '/') {
-      if (dst - odst > 3)             /* too many octets? */
-        return (0);
-      *dst++ = (unsigned char)val;
-      if (ch == '/')
-        return (getbits(src, bitsp));
-      val = 0;
-      n = 0;
-      continue;
-    }
-    return (0);
-  }
-  if (n == 0)
-    return (0);
-  if (dst - odst > 3)             /* too many octets? */
-    return (0);
-  *dst++ = (unsigned char)val;
-  return (1);
-}
-
-static int
-inet_net_pton_ipv6(const char *src, unsigned char *dst, size_t size)
-{
-  static const char xdigits_l[] = "0123456789abcdef",
-    xdigits_u[] = "0123456789ABCDEF";
-  unsigned char tmp[NS_IN6ADDRSZ], *tp, *endp, *colonp;
-  const char *xdigits, *curtok;
-  int ch, saw_xdigit;
-  unsigned int val;
-  int digits;
-  int bits;
-  size_t bytes;
-  int words;
-  int ipv4;
-
-  memset((tp = tmp), '\0', NS_IN6ADDRSZ);
-  endp = tp + NS_IN6ADDRSZ;
-  colonp = NULL;
-  /* Leading :: requires some special handling. */
-  if (*src == ':')
-    if (*++src != ':')
-      goto enoent;
-  curtok = src;
-  saw_xdigit = 0;
-  val = 0;
-  digits = 0;
-  bits = -1;
-  ipv4 = 0;
-  while ((ch = *src++) != '\0') {
-    const char *pch;
-
-    if ((pch = strchr((xdigits = xdigits_l), ch)) == NULL)
-      pch = strchr((xdigits = xdigits_u), ch);
-    if (pch != NULL) {
-      val <<= 4;
-      val |= (pch - xdigits);
-      if (++digits > 4)
-        goto enoent;
-      saw_xdigit = 1;
-      continue;
-    }
-    if (ch == ':') {
-      curtok = src;
-      if (!saw_xdigit) {
-        if (colonp)
-          goto enoent;
-        colonp = tp;
-        continue;
-      } else if (*src == '\0')
-        goto enoent;
-      if (tp + NS_INT16SZ > endp)
-        return (0);
-      *tp++ = (unsigned char)((val >> 8) & 0xff);
-      *tp++ = (unsigned char)(val & 0xff);
-      saw_xdigit = 0;
-      digits = 0;
-      val = 0;
-      continue;
-    }
-    if (ch == '.' && ((tp + NS_INADDRSZ) <= endp) &&
-        getv4(curtok, tp, &bits) > 0) {
-      tp += NS_INADDRSZ;
-      saw_xdigit = 0;
-      ipv4 = 1;
-      break;  /* '\0' was seen by inet_pton4(). */
-    }
-    if (ch == '/' && getbits(src, &bits) > 0)
-      break;
-    goto enoent;
-  }
-  if (saw_xdigit) {
-    if (tp + NS_INT16SZ > endp)
-      goto enoent;
-    *tp++ = (unsigned char)((val >> 8) & 0xff);
-    *tp++ = (unsigned char)(val & 0xff);
-  }
-  if (bits == -1)
-    bits = 128;
-
-  words = (bits + 15) / 16;
-  if (words < 2)
-    words = 2;
-  if (ipv4)
-    words = 8;
-  endp =  tmp + 2 * words;
-
-  if (colonp != NULL) {
-    /*
-     * Since some memmove()'s erroneously fail to handle
-     * overlapping regions, we'll do the shift by hand.
-     */
-    const int n = (int)(tp - colonp);
-    int i;
-
-    if (tp == endp)
-      goto enoent;
-    for (i = 1; i <= n; i++) {
-      endp[- i] = colonp[n - i];
-      colonp[n - i] = 0;
-    }
-    tp = endp;
-  }
-  if (tp != endp)
-    goto enoent;
-
-  bytes = (bits + 7) / 8;
-  if (bytes > size)
-    goto emsgsize;
-  memcpy(dst, tmp, bytes);
-  return (bits);
-
-  enoent:
-  SET_ERRNO(ENOENT);
-  return (-1);
-
-  emsgsize:
-  SET_ERRNO(EMSGSIZE);
-  return (-1);
-}
-
-/*
- * int
- * inet_net_pton(af, src, dst, size)
- *      convert network number from presentation to network format.
- *      accepts hex octets, hex strings, decimal octets, and /CIDR.
- *      "size" is in bytes and describes "dst".
- * return:
- *      number of bits, either imputed classfully or specified with /CIDR,
- *      or -1 if some failure occurred (check errno).  ENOENT means it was
- *      not a valid network specification.
- * note:
- *      On Windows we store the error in the thread errno, not
- *      in the winsock error code. This is to avoid loosing the
- *      actual last winsock error. So use macro ERRNO to fetch the
- *      errno this funtion sets when returning (-1), not SOCKERRNO.
- * author:
- *      Paul Vixie (ISC), June 1996
- */
-int
-ares_inet_net_pton(int af, const char *src, void *dst, size_t size)
-{
-  switch (af) {
-  case AF_INET:
-    return (inet_net_pton_ipv4(src, dst, size));
-  case AF_INET6:
-    return (inet_net_pton_ipv6(src, dst, size));
-  default:
-    SET_ERRNO(EAFNOSUPPORT);
-    return (-1);
-  }
-}
-
-#endif
-
-#ifndef HAVE_INET_PTON
-int ares_inet_pton(int af, const char *src, void *dst)
-{
-  int result;
-  size_t size;
-
-  if (af == AF_INET)
-    size = sizeof(struct in_addr);
-  else if (af == AF_INET6)
-    size = sizeof(struct ares_in6_addr);
-  else
-  {
-    SET_ERRNO(EAFNOSUPPORT);
-    return -1;
-  }
-  result = ares_inet_net_pton(af, src, dst, size);
-  if (result == -1 && ERRNO == ENOENT)
-    return 0;
-  return (result > -1 ? 1 : -1);
-}
-#endif
diff --git a/src/other/ares/inet_net_pton.h b/src/other/ares/inet_net_pton.h
deleted file mode 100644
index f5642a5..0000000
--- a/src/other/ares/inet_net_pton.h
+++ /dev/null
@@ -1,32 +0,0 @@
-#ifndef __ARES_INET_NET_PTON_H
-#define __ARES_INET_NET_PTON_H
-
-/* $Id$ */
-
-/* Copyright (C) 2005 by Daniel Stenberg
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#ifdef HAVE_INET_PTON
-#define ares_inet_pton(x,y,z) inet_pton(x,y,z)
-#else
-int ares_inet_pton(int af, const char *src, void *dst);
-#endif
-#if defined(HAVE_INET_NET_PTON) && defined(HAVE_INET_NET_PTON_IPV6)
-#define ares_inet_net_pton(w,x,y,z) inet_net_pton(w,x,y,z)
-#else
-int ares_inet_net_pton(int af, const char *src, void *dst, size_t size);
-#endif
-
-#endif /* __ARES_INET_NET_PTON_H */
diff --git a/src/other/ares/inet_ntop.c b/src/other/ares/inet_ntop.c
deleted file mode 100644
index 3b35397..0000000
--- a/src/other/ares/inet_ntop.c
+++ /dev/null
@@ -1,233 +0,0 @@
-/* $Id$ */
-
-/* Copyright (c) 1996 by Internet Software Consortium.
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
- * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
- * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
- * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
- * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
- * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
- * SOFTWARE.
- */
-
-#include "ares_setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-#ifdef HAVE_ARPA_NAMESER_H
-#  include <arpa/nameser.h>
-#else
-#  include "nameser.h"
-#endif
-#ifdef HAVE_ARPA_NAMESER_COMPAT_H
-#  include <arpa/nameser_compat.h>
-#endif
-
-#include <ctype.h>
-#include <errno.h>
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-
-#include "ares.h"
-#include "ares_ipv6.h"
-#include "inet_ntop.h"
-
-
-#ifndef HAVE_INET_NTOP
-
-#ifdef SPRINTF_CHAR
-# define SPRINTF(x) strlen(sprintf/**/x)
-#else
-# define SPRINTF(x) ((size_t)sprintf x)
-#endif
-
-/*
- * WARNING: Don't even consider trying to compile this on a system where
- * sizeof(int) < 4.  sizeof(int) > 4 is fine; all the world's not a VAX.
- */
-
-static const char *inet_ntop4(const unsigned char *src, char *dst, size_t size);
-static const char *inet_ntop6(const unsigned char *src, char *dst, size_t size);
-
-/* char *
- * inet_ntop(af, src, dst, size)
- *     convert a network format address to presentation format.
- * return:
- *     pointer to presentation format address (`dst'), or NULL (see errno).
- * note:
- *      On Windows we store the error in the thread errno, not
- *      in the winsock error code. This is to avoid loosing the
- *      actual last winsock error. So use macro ERRNO to fetch the
- *      errno this funtion sets when returning NULL, not SOCKERRNO.
- * author:
- *     Paul Vixie, 1996.
- */
-const char *
-ares_inet_ntop(int af, const void *src, char *dst, size_t size)
-{
-  switch (af)
-    {
-    case AF_INET:
-      return (inet_ntop4(src, dst, size));
-    case AF_INET6:
-      return (inet_ntop6(src, dst, size));
-    default:
-      SET_ERRNO(EAFNOSUPPORT);
-      return (NULL);
-    }
-  /* NOTREACHED */
-}
-
-/* const char *
- * inet_ntop4(src, dst, size)
- *     format an IPv4 address, more or less like inet_ntoa()
- * return:
- *     `dst' (as a const)
- * notes:
- *     (1) uses no statics
- *     (2) takes a unsigned char* not an in_addr as input
- * author:
- *     Paul Vixie, 1996.
- */
-static const char *
-inet_ntop4(const unsigned char *src, char *dst, size_t size)
-{
-  static const char fmt[] = "%u.%u.%u.%u";
-  char tmp[sizeof "255.255.255.255"];
-
-  if (SPRINTF((tmp, fmt, src[0], src[1], src[2], src[3])) > size)
-    {
-      SET_ERRNO(ENOSPC);
-      return (NULL);
-    }
-    strcpy(dst, tmp);
-    return (dst);
-}
-
-/* const char *
- * inet_ntop6(src, dst, size)
- *    convert IPv6 binary address into presentation (printable) format
- * author:
- *    Paul Vixie, 1996.
- */
-static const char *
-inet_ntop6(const unsigned char *src, char *dst, size_t size)
-{
-  /*
-   * Note that int32_t and int16_t need only be "at least" large enough
-   * to contain a value of the specified size.  On some systems, like
-   * Crays, there is no such thing as an integer variable with 16 bits.
-   * Keep this in mind if you think this function should have been coded
-   * to use pointer overlays.  All the world's not a VAX.
-   */
-  char tmp[sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255")];
-  char *tp;
-  struct {
-    long base;
-    long len;
-  } best, cur;
-  unsigned long words[NS_IN6ADDRSZ / NS_INT16SZ];
-  int i;
-
-  /*
-   * Preprocess:
-   *  Copy the input (bytewise) array into a wordwise array.
-   *  Find the longest run of 0x00's in src[] for :: shorthanding.
-   */
-  memset(words, '\0', sizeof(words));
-  for (i = 0; i < NS_IN6ADDRSZ; i++)
-      words[i / 2] |= (src[i] << ((1 - (i % 2)) << 3));
-
-  best.base = -1;
-  cur.base = -1;
-  best.len = 0;
-  cur.len = 0;
-
-  for (i = 0; i < (NS_IN6ADDRSZ / NS_INT16SZ); i++)
-    {
-      if (words[i] == 0)
-        {
-          if (cur.base == -1)
-            cur.base = i, cur.len = 1;
-          else
-            cur.len++;
-        }
-      else
-        {
-          if (cur.base != -1)
-            {
-              if (best.base == -1 || cur.len > best.len)
-                best = cur;
-              cur.base = -1;
-            }
-        }
-    }
-  if (cur.base != -1)
-    {
-      if (best.base == -1 || cur.len > best.len)
-        best = cur;
-    }
-  if (best.base != -1 && best.len < 2)
-    best.base = -1;
-
-  /*
-   * Format the result.
-   */
-  tp = tmp;
-  for (i = 0; i < (NS_IN6ADDRSZ / NS_INT16SZ); i++)
-    {
-      /* Are we inside the best run of 0x00's? */
-      if (best.base != -1 && i >= best.base &&
-          i < (best.base + best.len))
-        {
-          if (i == best.base)
-             *tp++ = ':';
-          continue;
-        }
-      /* Are we following an initial run of 0x00s or any real hex? */
-      if (i != 0)
-        *tp++ = ':';
-      /* Is this address an encapsulated IPv4? */
-      if (i == 6 && best.base == 0 &&
-          (best.len == 6 || (best.len == 5 && words[5] == 0xffff)))
-        {
-          if (!inet_ntop4(src+12, tp, sizeof(tmp) - (tp - tmp)))
-            return (NULL);
-          tp += strlen(tp);
-          break;
-        }
-        tp += SPRINTF((tp, "%lx", words[i]));
-    }
-
-  /* Was it a trailing run of 0x00's? */
-  if (best.base != -1 && (best.base + best.len) == (NS_IN6ADDRSZ / NS_INT16SZ))
-    *tp++ = ':';
-  *tp++ = '\0';
-
-  /*
-   * Check for overflow, copy, and we're done.
-   */
-  if ((size_t)(tp - tmp) > size)
-    {
-      SET_ERRNO(ENOSPC);
-      return (NULL);
-    }
-  strcpy(dst, tmp);
-  return (dst);
-}
-#endif
-
diff --git a/src/other/ares/inet_ntop.h b/src/other/ares/inet_ntop.h
deleted file mode 100644
index ab9735e..0000000
--- a/src/other/ares/inet_ntop.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef __ARES_INET_NTOP_H
-#define __ARES_INET_NTOP_H
-
-/* $Id$ */
-
-/* Copyright (C) 2005 by Dominick Meglio
- *
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies and that both that copyright
- * notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in
- * advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission.
- * M.I.T. makes no representations about the suitability of
- * this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-#ifdef HAVE_INET_NTOP
-#define ares_inet_ntop(w,x,y,z) inet_ntop(w,x,y,z)
-#else
-const char *ares_inet_ntop(int af, const void *src, char *dst, size_t size);
-#endif
-
-#endif /* __ARES_INET_NTOP_H */
diff --git a/src/other/ares/install-sh b/src/other/ares/install-sh
deleted file mode 100755
index 6781b98..0000000
--- a/src/other/ares/install-sh
+++ /dev/null
@@ -1,520 +0,0 @@
-#!/bin/sh
-# install - install a program, script, or datafile
-
-scriptversion=2009-04-28.21; # UTC
-
-# This originates from X11R5 (mit/util/scripts/install.sh), which was
-# later released in X11R6 (xc/config/util/install.sh) with the
-# following copyright and license.
-#
-# Copyright (C) 1994 X Consortium
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
-# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-#
-# Except as contained in this notice, the name of the X Consortium shall not
-# be used in advertising or otherwise to promote the sale, use or other deal-
-# ings in this Software without prior written authorization from the X Consor-
-# tium.
-#
-#
-# FSF changes to this file are in the public domain.
-#
-# Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
-# when there is no Makefile.
-#
-# This script is compatible with the BSD install script, but was written
-# from scratch.
-
-nl='
-'
-IFS=" ""	$nl"
-
-# set DOITPROG to echo to test this script
-
-# Don't use :- since 4.3BSD and earlier shells don't like it.
-doit=${DOITPROG-}
-if test -z "$doit"; then
-  doit_exec=exec
-else
-  doit_exec=$doit
-fi
-
-# Put in absolute file names if you don't have them in your path;
-# or use environment vars.
-
-chgrpprog=${CHGRPPROG-chgrp}
-chmodprog=${CHMODPROG-chmod}
-chownprog=${CHOWNPROG-chown}
-cmpprog=${CMPPROG-cmp}
-cpprog=${CPPROG-cp}
-mkdirprog=${MKDIRPROG-mkdir}
-mvprog=${MVPROG-mv}
-rmprog=${RMPROG-rm}
-stripprog=${STRIPPROG-strip}
-
-posix_glob='?'
-initialize_posix_glob='
-  test "$posix_glob" != "?" || {
-    if (set -f) 2>/dev/null; then
-      posix_glob=
-    else
-      posix_glob=:
-    fi
-  }
-'
-
-posix_mkdir=
-
-# Desired mode of installed file.
-mode=0755
-
-chgrpcmd=
-chmodcmd=$chmodprog
-chowncmd=
-mvcmd=$mvprog
-rmcmd="$rmprog -f"
-stripcmd=
-
-src=
-dst=
-dir_arg=
-dst_arg=
-
-copy_on_change=false
-no_target_directory=
-
-usage="\
-Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
-   or: $0 [OPTION]... SRCFILES... DIRECTORY
-   or: $0 [OPTION]... -t DIRECTORY SRCFILES...
-   or: $0 [OPTION]... -d DIRECTORIES...
-
-In the 1st form, copy SRCFILE to DSTFILE.
-In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
-In the 4th, create DIRECTORIES.
-
-Options:
-     --help     display this help and exit.
-     --version  display version info and exit.
-
-  -c            (ignored)
-  -C            install only if different (preserve the last data modification time)
-  -d            create directories instead of installing files.
-  -g GROUP      $chgrpprog installed files to GROUP.
-  -m MODE       $chmodprog installed files to MODE.
-  -o USER       $chownprog installed files to USER.
-  -s            $stripprog installed files.
-  -t DIRECTORY  install into DIRECTORY.
-  -T            report an error if DSTFILE is a directory.
-
-Environment variables override the default commands:
-  CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
-  RMPROG STRIPPROG
-"
-
-while test $# -ne 0; do
-  case $1 in
-    -c) ;;
-
-    -C) copy_on_change=true;;
-
-    -d) dir_arg=true;;
-
-    -g) chgrpcmd="$chgrpprog $2"
-	shift;;
-
-    --help) echo "$usage"; exit $?;;
-
-    -m) mode=$2
-	case $mode in
-	  *' '* | *'	'* | *'
-'*	  | *'*'* | *'?'* | *'['*)
-	    echo "$0: invalid mode: $mode" >&2
-	    exit 1;;
-	esac
-	shift;;
-
-    -o) chowncmd="$chownprog $2"
-	shift;;
-
-    -s) stripcmd=$stripprog;;
-
-    -t) dst_arg=$2
-	shift;;
-
-    -T) no_target_directory=true;;
-
-    --version) echo "$0 $scriptversion"; exit $?;;
-
-    --)	shift
-	break;;
-
-    -*)	echo "$0: invalid option: $1" >&2
-	exit 1;;
-
-    *)  break;;
-  esac
-  shift
-done
-
-if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
-  # When -d is used, all remaining arguments are directories to create.
-  # When -t is used, the destination is already specified.
-  # Otherwise, the last argument is the destination.  Remove it from $@.
-  for arg
-  do
-    if test -n "$dst_arg"; then
-      # $@ is not empty: it contains at least $arg.
-      set fnord "$@" "$dst_arg"
-      shift # fnord
-    fi
-    shift # arg
-    dst_arg=$arg
-  done
-fi
-
-if test $# -eq 0; then
-  if test -z "$dir_arg"; then
-    echo "$0: no input file specified." >&2
-    exit 1
-  fi
-  # It's OK to call `install-sh -d' without argument.
-  # This can happen when creating conditional directories.
-  exit 0
-fi
-
-if test -z "$dir_arg"; then
-  trap '(exit $?); exit' 1 2 13 15
-
-  # Set umask so as not to create temps with too-generous modes.
-  # However, 'strip' requires both read and write access to temps.
-  case $mode in
-    # Optimize common cases.
-    *644) cp_umask=133;;
-    *755) cp_umask=22;;
-
-    *[0-7])
-      if test -z "$stripcmd"; then
-	u_plus_rw=
-      else
-	u_plus_rw='% 200'
-      fi
-      cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
-    *)
-      if test -z "$stripcmd"; then
-	u_plus_rw=
-      else
-	u_plus_rw=,u+rw
-      fi
-      cp_umask=$mode$u_plus_rw;;
-  esac
-fi
-
-for src
-do
-  # Protect names starting with `-'.
-  case $src in
-    -*) src=./$src;;
-  esac
-
-  if test -n "$dir_arg"; then
-    dst=$src
-    dstdir=$dst
-    test -d "$dstdir"
-    dstdir_status=$?
-  else
-
-    # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
-    # might cause directories to be created, which would be especially bad
-    # if $src (and thus $dsttmp) contains '*'.
-    if test ! -f "$src" && test ! -d "$src"; then
-      echo "$0: $src does not exist." >&2
-      exit 1
-    fi
-
-    if test -z "$dst_arg"; then
-      echo "$0: no destination specified." >&2
-      exit 1
-    fi
-
-    dst=$dst_arg
-    # Protect names starting with `-'.
-    case $dst in
-      -*) dst=./$dst;;
-    esac
-
-    # If destination is a directory, append the input filename; won't work
-    # if double slashes aren't ignored.
-    if test -d "$dst"; then
-      if test -n "$no_target_directory"; then
-	echo "$0: $dst_arg: Is a directory" >&2
-	exit 1
-      fi
-      dstdir=$dst
-      dst=$dstdir/`basename "$src"`
-      dstdir_status=0
-    else
-      # Prefer dirname, but fall back on a substitute if dirname fails.
-      dstdir=`
-	(dirname "$dst") 2>/dev/null ||
-	expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	     X"$dst" : 'X\(//\)[^/]' \| \
-	     X"$dst" : 'X\(//\)$' \| \
-	     X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
-	echo X"$dst" |
-	    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-		   s//\1/
-		   q
-		 }
-		 /^X\(\/\/\)[^/].*/{
-		   s//\1/
-		   q
-		 }
-		 /^X\(\/\/\)$/{
-		   s//\1/
-		   q
-		 }
-		 /^X\(\/\).*/{
-		   s//\1/
-		   q
-		 }
-		 s/.*/./; q'
-      `
-
-      test -d "$dstdir"
-      dstdir_status=$?
-    fi
-  fi
-
-  obsolete_mkdir_used=false
-
-  if test $dstdir_status != 0; then
-    case $posix_mkdir in
-      '')
-	# Create intermediate dirs using mode 755 as modified by the umask.
-	# This is like FreeBSD 'install' as of 1997-10-28.
-	umask=`umask`
-	case $stripcmd.$umask in
-	  # Optimize common cases.
-	  *[2367][2367]) mkdir_umask=$umask;;
-	  .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-
-	  *[0-7])
-	    mkdir_umask=`expr $umask + 22 \
-	      - $umask % 100 % 40 + $umask % 20 \
-	      - $umask % 10 % 4 + $umask % 2
-	    `;;
-	  *) mkdir_umask=$umask,go-w;;
-	esac
-
-	# With -d, create the new directory with the user-specified mode.
-	# Otherwise, rely on $mkdir_umask.
-	if test -n "$dir_arg"; then
-	  mkdir_mode=-m$mode
-	else
-	  mkdir_mode=
-	fi
-
-	posix_mkdir=false
-	case $umask in
-	  *[123567][0-7][0-7])
-	    # POSIX mkdir -p sets u+wx bits regardless of umask, which
-	    # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
-	    ;;
-	  *)
-	    tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
-	    trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
-
-	    if (umask $mkdir_umask &&
-		exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
-	    then
-	      if test -z "$dir_arg" || {
-		   # Check for POSIX incompatibilities with -m.
-		   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
-		   # other-writeable bit of parent directory when it shouldn't.
-		   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
-		   ls_ld_tmpdir=`ls -ld "$tmpdir"`
-		   case $ls_ld_tmpdir in
-		     d????-?r-*) different_mode=700;;
-		     d????-?--*) different_mode=755;;
-		     *) false;;
-		   esac &&
-		   $mkdirprog -m$different_mode -p -- "$tmpdir" && {
-		     ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
-		     test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
-		   }
-		 }
-	      then posix_mkdir=:
-	      fi
-	      rmdir "$tmpdir/d" "$tmpdir"
-	    else
-	      # Remove any dirs left behind by ancient mkdir implementations.
-	      rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
-	    fi
-	    trap '' 0;;
-	esac;;
-    esac
-
-    if
-      $posix_mkdir && (
-	umask $mkdir_umask &&
-	$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
-      )
-    then :
-    else
-
-      # The umask is ridiculous, or mkdir does not conform to POSIX,
-      # or it failed possibly due to a race condition.  Create the
-      # directory the slow way, step by step, checking for races as we go.
-
-      case $dstdir in
-	/*) prefix='/';;
-	-*) prefix='./';;
-	*)  prefix='';;
-      esac
-
-      eval "$initialize_posix_glob"
-
-      oIFS=$IFS
-      IFS=/
-      $posix_glob set -f
-      set fnord $dstdir
-      shift
-      $posix_glob set +f
-      IFS=$oIFS
-
-      prefixes=
-
-      for d
-      do
-	test -z "$d" && continue
-
-	prefix=$prefix$d
-	if test -d "$prefix"; then
-	  prefixes=
-	else
-	  if $posix_mkdir; then
-	    (umask=$mkdir_umask &&
-	     $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
-	    # Don't fail if two instances are running concurrently.
-	    test -d "$prefix" || exit 1
-	  else
-	    case $prefix in
-	      *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
-	      *) qprefix=$prefix;;
-	    esac
-	    prefixes="$prefixes '$qprefix'"
-	  fi
-	fi
-	prefix=$prefix/
-      done
-
-      if test -n "$prefixes"; then
-	# Don't fail if two instances are running concurrently.
-	(umask $mkdir_umask &&
-	 eval "\$doit_exec \$mkdirprog $prefixes") ||
-	  test -d "$dstdir" || exit 1
-	obsolete_mkdir_used=true
-      fi
-    fi
-  fi
-
-  if test -n "$dir_arg"; then
-    { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
-    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
-    { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
-      test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
-  else
-
-    # Make a couple of temp file names in the proper directory.
-    dsttmp=$dstdir/_inst.$$_
-    rmtmp=$dstdir/_rm.$$_
-
-    # Trap to clean up those temp files at exit.
-    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
-
-    # Copy the file name to the temp name.
-    (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
-
-    # and set any options; do chmod last to preserve setuid bits.
-    #
-    # If any of these fail, we abort the whole thing.  If we want to
-    # ignore errors from any of these, just make sure not to ignore
-    # errors from the above "$doit $cpprog $src $dsttmp" command.
-    #
-    { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
-    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
-    { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
-    { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
-
-    # If -C, don't bother to copy if it wouldn't change the file.
-    if $copy_on_change &&
-       old=`LC_ALL=C ls -dlL "$dst"	2>/dev/null` &&
-       new=`LC_ALL=C ls -dlL "$dsttmp"	2>/dev/null` &&
-
-       eval "$initialize_posix_glob" &&
-       $posix_glob set -f &&
-       set X $old && old=:$2:$4:$5:$6 &&
-       set X $new && new=:$2:$4:$5:$6 &&
-       $posix_glob set +f &&
-
-       test "$old" = "$new" &&
-       $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
-    then
-      rm -f "$dsttmp"
-    else
-      # Rename the file to the real destination.
-      $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
-
-      # The rename failed, perhaps because mv can't rename something else
-      # to itself, or perhaps because mv is so ancient that it does not
-      # support -f.
-      {
-	# Now remove or move aside any old file at destination location.
-	# We try this two ways since rm can't unlink itself on some
-	# systems and the destination file might be busy for other
-	# reasons.  In this case, the final cleanup might fail but the new
-	# file should still install successfully.
-	{
-	  test ! -f "$dst" ||
-	  $doit $rmcmd -f "$dst" 2>/dev/null ||
-	  { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
-	    { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
-	  } ||
-	  { echo "$0: cannot unlink or rename $dst" >&2
-	    (exit 1); exit 1
-	  }
-	} &&
-
-	# Now rename the file to the real destination.
-	$doit $mvcmd "$dsttmp" "$dst"
-      }
-    fi || exit 1
-
-    trap '' 0
-  fi
-done
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/src/other/ares/libcares.pc.in b/src/other/ares/libcares.pc.in
deleted file mode 100644
index df6a0aa..0000000
--- a/src/other/ares/libcares.pc.in
+++ /dev/null
@@ -1,21 +0,0 @@
-#***************************************************************************
-# Project        ___       __ _ _ __ ___  ___ 
-#               / __|____ / _` | '__/ _ \/ __|
-#              | (_|_____| (_| | | |  __/\__ \
-#               \___|     \__,_|_|  \___||___/
-# $Id$
-#
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
-
-Name: c-ares
-URL: http://daniel.haxx.se/projects/c-ares/
-Description: asynchronous DNS lookup library
-Version: @VERSION@
-Requires: 
-Requires.private: 
-Cflags: -I${includedir}
-Libs: -L${libdir} -lcares
-Libs.private: @CARES_PRIVATE_LIBS@
diff --git a/src/other/ares/ltmain.sh b/src/other/ares/ltmain.sh
deleted file mode 100755
index 78cf017..0000000
--- a/src/other/ares/ltmain.sh
+++ /dev/null
@@ -1,9636 +0,0 @@
-
-# libtool (GNU libtool) 2.4
-# Written by Gordon Matzigkeit <gord at gnu.ai.mit.edu>, 1996
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006,
-# 2007, 2008, 2009, 2010 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 GNU Libtool; see the file COPYING.  If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html,
-# or obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-# Usage: $progname [OPTION]... [MODE-ARG]...
-#
-# Provide generalized library-building support services.
-#
-#       --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
-#       --preserve-dup-deps  don't remove duplicate dependency libraries
-#       --quiet, --silent    don't print informational messages
-#       --no-quiet, --no-silent
-#                            print informational messages (default)
-#       --tag=TAG            use configuration variables from tag TAG
-#   -v, --verbose            print more informational messages than default
-#       --no-verbose         don't print the extra informational messages
-#       --version            print version information
-#   -h, --help, --help-all   print short, long, or detailed 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)
-#         $progname:	(GNU libtool) 2.4
-#         automake:	$automake_version
-#         autoconf:	$autoconf_version
-#
-# Report bugs to <bug-libtool at gnu.org>.
-# GNU libtool home page: <http://www.gnu.org/software/libtool/>.
-# General help using GNU software: <http://www.gnu.org/gethelp/>.
-
-PROGRAM=libtool
-PACKAGE=libtool
-VERSION=2.4
-TIMESTAMP=""
-package_revision=1.3293
-
-# 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
-
-# A function that is used when there is no print builtin or printf.
-func_fallback_echo ()
-{
-  eval 'cat <<_LTECHO_EOF
-$1
-_LTECHO_EOF'
-}
-
-# NLS nuisances: We save the old values to restore during execute mode.
-lt_user_locale=
-lt_safe_locale=
-for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
-do
-  eval "if test \"\${$lt_var+set}\" = set; then
-          save_$lt_var=\$$lt_var
-          $lt_var=C
-	  export $lt_var
-	  lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\"
-	  lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\"
-	fi"
-done
-LC_ALL=C
-LANGUAGE=C
-export LANGUAGE LC_ALL
-
-$lt_unset CDPATH
-
-
-# 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"
-
-
-
-: ${CP="cp -f"}
-test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'}
-: ${EGREP="/bin/grep -E"}
-: ${FGREP="/bin/grep -F"}
-: ${GREP="/bin/grep"}
-: ${LN_S="ln -s"}
-: ${MAKE="make"}
-: ${MKDIR="mkdir"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-: ${SED="/bin/sed"}
-: ${SHELL="${CONFIG_SHELL-/bin/sh}"}
-: ${Xsed="$SED -e 1s/^X//"}
-
-# Global variables:
-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.
-
-exit_status=$EXIT_SUCCESS
-
-# Make sure IFS has a sensible default
-lt_nl='
-'
-IFS=" 	$lt_nl"
-
-dirname="s,/[^/]*$,,"
-basename="s,^.*/,,"
-
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE.  If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
-    func_dirname_result=`$ECHO "${1}" | $SED "$dirname"`
-    if test "X$func_dirname_result" = "X${1}"; then
-      func_dirname_result="${3}"
-    else
-      func_dirname_result="$func_dirname_result${2}"
-    fi
-} # func_dirname may be replaced by extended shell implementation
-
-
-# func_basename file
-func_basename ()
-{
-    func_basename_result=`$ECHO "${1}" | $SED "$basename"`
-} # func_basename may be replaced by extended shell implementation
-
-
-# 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"
-# Implementation must be kept synchronized with func_dirname
-# and func_basename. For efficiency, we do not delegate to
-# those functions but instead duplicate the functionality here.
-func_dirname_and_basename ()
-{
-    # Extract subdirectory from the argument.
-    func_dirname_result=`$ECHO "${1}" | $SED -e "$dirname"`
-    if test "X$func_dirname_result" = "X${1}"; then
-      func_dirname_result="${3}"
-    else
-      func_dirname_result="$func_dirname_result${2}"
-    fi
-    func_basename_result=`$ECHO "${1}" | $SED -e "$basename"`
-} # func_dirname_and_basename may be replaced by extended shell implementation
-
-
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# 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).
-# func_strip_suffix prefix name
-func_stripname ()
-{
-    case ${2} in
-      .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
-      *)  func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
-    esac
-} # func_stripname may be replaced by extended shell implementation
-
-
-# These SED scripts presuppose an absolute path with a trailing slash.
-pathcar='s,^/\([^/]*\).*$,\1,'
-pathcdr='s,^/[^/]*,,'
-removedotparts=':dotsl
-		s@/\./@/@g
-		t dotsl
-		s,/\.$,/,'
-collapseslashes='s@/\{1,\}@/@g'
-finalslash='s,/*$,/,'
-
-# 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.
-#             value returned in "$func_normal_abspath_result"
-func_normal_abspath ()
-{
-  # 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 "$removedotparts" -e "$collapseslashes" -e "$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 "$pathcar"`
-    func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
-        -e "$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_normal_abspath_result=$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_relative_path SRCDIR DSTDIR
-# generates a relative path from SRCDIR to DSTDIR, with a trailing
-# slash if non-empty, suitable for immediately appending a filename
-# without needing to append a separator.
-#             value returned in "$func_relative_path_result"
-func_relative_path ()
-{
-  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 "x$func_relative_path_tlibdir" = x ; 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 "x$func_stripname_result" != x ; then
-    func_relative_path_result=${func_relative_path_result}/${func_stripname_result}
-  fi
-
-  # Normalisation. If bindir is libdir, return empty string,
-  # else relative path ending with a slash; either way, target
-  # file name can be directly appended.
-  if test ! -z "$func_relative_path_result"; then
-    func_stripname './' '' "$func_relative_path_result/"
-    func_relative_path_result=$func_stripname_result
-  fi
-}
-
-# The name of this program:
-func_dirname_and_basename "$progpath"
-progname=$func_basename_result
-
-# Make sure we have an absolute path for reexecution:
-case $progpath in
-  [\\/]*|[A-Za-z]:\\*) ;;
-  *[\\/]*)
-     progdir=$func_dirname_result
-     progdir=`cd "$progdir" && pwd`
-     progpath="$progdir/$progname"
-     ;;
-  *)
-     save_IFS="$IFS"
-     IFS=:
-     for progdir in $PATH; do
-       IFS="$save_IFS"
-       test -x "$progdir/$progname" && break
-     done
-     IFS="$save_IFS"
-     test -n "$progdir" || progdir=`pwd`
-     progpath="$progdir/$progname"
-     ;;
-esac
-
-# Sed substitution that helps us do robust quoting.  It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed="${SED}"' -e 1s/^X//'
-sed_quote_subst='s/\([`"$\\]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-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
-# which contains forward slashes, into one that contains
-# (escaped) backslashes.  A very naive implementation.
-lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
-
-# Re-`\' parameter expansions in output of double_quote_subst that were
-# `\'-ed in input to the same.  If an odd number of `\' preceded a '$'
-# in input to 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 '$'.
-bs='\\'
-bs2='\\\\'
-bs4='\\\\\\\\'
-dollar='\$'
-sed_double_backslash="\
-  s/$bs4/&\\
-/g
-  s/^$bs2$dollar/$bs&/
-  s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g
-  s/\n//g"
-
-# Standard options:
-opt_dry_run=false
-opt_help=false
-opt_quiet=false
-opt_verbose=false
-opt_warning=:
-
-# func_echo arg...
-# Echo program name prefixed message, along with the current mode
-# name if it has been set yet.
-func_echo ()
-{
-    $ECHO "$progname: ${opt_mode+$opt_mode: }$*"
-}
-
-# func_verbose arg...
-# Echo program name prefixed message in verbose mode only.
-func_verbose ()
-{
-    $opt_verbose && 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_echo_all arg...
-# Invoke $ECHO with all args, space-separated.
-func_echo_all ()
-{
-    $ECHO "$*"
-}
-
-# func_error arg...
-# Echo program name prefixed message to standard error.
-func_error ()
-{
-    $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2
-}
-
-# func_warning arg...
-# Echo program name prefixed warning message to standard error.
-func_warning ()
-{
-    $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2
-
-    # bash bug again:
-    :
-}
-
-# func_fatal_error arg...
-# Echo program name prefixed message to standard error, and exit.
-func_fatal_error ()
-{
-    func_error ${1+"$@"}
-    exit $EXIT_FAILURE
-}
-
-# func_fatal_help arg...
-# Echo program name prefixed message to standard error, followed by
-# a help hint, and exit.
-func_fatal_help ()
-{
-    func_error ${1+"$@"}
-    func_fatal_error "$help"
-}
-help="Try \`$progname --help' for more information."  ## default
-
-
-# func_grep expression filename
-# Check whether EXPRESSION matches any line of FILENAME, without output.
-func_grep ()
-{
-    $GREP "$1" "$2" >/dev/null 2>&1
-}
-
-
-# func_mkdir_p directory-path
-# Make sure the entire path to DIRECTORY-PATH is available.
-func_mkdir_p ()
-{
-    my_directory_path="$1"
-    my_dir_list=
-
-    if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then
-
-      # Protect directory names starting with `-'
-      case $my_directory_path in
-        -*) my_directory_path="./$my_directory_path" ;;
-      esac
-
-      # While some portion of DIR does not yet exist...
-      while test ! -d "$my_directory_path"; do
-        # ...make a list in topmost first order.  Use a colon delimited
-	# list incase some portion of path contains whitespace.
-        my_dir_list="$my_directory_path:$my_dir_list"
-
-        # If the last portion added has no slash in it, the list is done
-        case $my_directory_path in */*) ;; *) break ;; esac
-
-        # ...otherwise throw away the child directory and loop
-        my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"`
-      done
-      my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'`
-
-      save_mkdir_p_IFS="$IFS"; IFS=':'
-      for my_dir in $my_dir_list; do
-	IFS="$save_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 "$my_dir" 2>/dev/null || :
-      done
-      IFS="$save_mkdir_p_IFS"
-
-      # Bail out if we (or some other process) failed to create a directory.
-      test -d "$my_directory_path" || \
-        func_fatal_error "Failed to create \`$1'"
-    fi
-}
-
-
-# func_mktempdir [string]
-# Make a temporary directory that won't clash with other running
-# libtool processes, and avoids race conditions if possible.  If
-# given, STRING is the basename for that directory.
-func_mktempdir ()
-{
-    my_template="${TMPDIR-/tmp}/${1-$progname}"
-
-    if test "$opt_dry_run" = ":"; then
-      # Return a directory name, but don't create it in dry-run mode
-      my_tmpdir="${my_template}-$$"
-    else
-
-      # If mktemp works, use that first and foremost
-      my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null`
-
-      if test ! -d "$my_tmpdir"; then
-        # Failing that, at least try and use $RANDOM to avoid a race
-        my_tmpdir="${my_template}-${RANDOM-0}$$"
-
-        save_mktempdir_umask=`umask`
-        umask 0077
-        $MKDIR "$my_tmpdir"
-        umask $save_mktempdir_umask
-      fi
-
-      # If we're not in dry-run mode, bomb out on failure
-      test -d "$my_tmpdir" || \
-        func_fatal_error "cannot create temporary directory \`$my_tmpdir'"
-    fi
-
-    $ECHO "$my_tmpdir"
-}
-
-
-# func_quote_for_eval arg
-# Aesthetically quote ARG to be evaled later.
-# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT
-# is double-quoted, suitable for a subsequent eval, whereas
-# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters
-# which are still active within double quotes backslashified.
-func_quote_for_eval ()
-{
-    case $1 in
-      *[\\\`\"\$]*)
-	func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;;
-      *)
-        func_quote_for_eval_unquoted_result="$1" ;;
-    esac
-
-    case $func_quote_for_eval_unquoted_result in
-      # Double-quote args containing shell metacharacters to delay
-      # word splitting, command substitution and 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_for_eval_result="\"$func_quote_for_eval_unquoted_result\""
-        ;;
-      *)
-        func_quote_for_eval_result="$func_quote_for_eval_unquoted_result"
-    esac
-}
-
-
-# func_quote_for_expand arg
-# Aesthetically quote ARG to be evaled later; same as above,
-# but do not quote variable references.
-func_quote_for_expand ()
-{
-    case $1 in
-      *[\\\`\"]*)
-	my_arg=`$ECHO "$1" | $SED \
-	    -e "$double_quote_subst" -e "$sed_double_backslash"` ;;
-      *)
-        my_arg="$1" ;;
-    esac
-
-    case $my_arg in
-      # Double-quote args containing shell metacharacters to delay
-      # word splitting and command substitution for a subsequent eval.
-      # Many Bourne shells cannot handle close brackets correctly
-      # in scan sets, so we specify it separately.
-      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
-        my_arg="\"$my_arg\""
-        ;;
-    esac
-
-    func_quote_for_expand_result="$my_arg"
-}
-
-
-# func_show_eval cmd [fail_exp]
-# Unless opt_silent 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 ()
-{
-    my_cmd="$1"
-    my_fail_exp="${2-:}"
-
-    ${opt_silent-false} || {
-      func_quote_for_expand "$my_cmd"
-      eval "func_echo $func_quote_for_expand_result"
-    }
-
-    if ${opt_dry_run-false}; then :; else
-      eval "$my_cmd"
-      my_status=$?
-      if test "$my_status" -eq 0; then :; else
-	eval "(exit $my_status); $my_fail_exp"
-      fi
-    fi
-}
-
-
-# func_show_eval_locale cmd [fail_exp]
-# Unless opt_silent 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 ()
-{
-    my_cmd="$1"
-    my_fail_exp="${2-:}"
-
-    ${opt_silent-false} || {
-      func_quote_for_expand "$my_cmd"
-      eval "func_echo $func_quote_for_expand_result"
-    }
-
-    if ${opt_dry_run-false}; then :; else
-      eval "$lt_user_locale
-	    $my_cmd"
-      my_status=$?
-      eval "$lt_safe_locale"
-      if test "$my_status" -eq 0; then :; else
-	eval "(exit $my_status); $my_fail_exp"
-      fi
-    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 ()
-{
-  case $1 in
-  [0-9]* | *[!a-zA-Z0-9_]*)
-    func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'`
-    ;;
-  * )
-    func_tr_sh_result=$1
-    ;;
-  esac
-}
-
-
-# func_version
-# Echo version message to standard output and exit.
-func_version ()
-{
-    $opt_debug
-
-    $SED -n '/(C)/!b go
-	:more
-	/\./!{
-	  N
-	  s/\n# / /
-	  b more
-	}
-	:go
-	/^# '$PROGRAM' (GNU /,/# warranty; / {
-        s/^# //
-	s/^# *$//
-        s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/
-        p
-     }' < "$progpath"
-     exit $?
-}
-
-# func_usage
-# Echo short help message to standard output and exit.
-func_usage ()
-{
-    $opt_debug
-
-    $SED -n '/^# Usage:/,/^#  *.*--help/ {
-        s/^# //
-	s/^# *$//
-	s/\$progname/'$progname'/
-	p
-    }' < "$progpath"
-    echo
-    $ECHO "run \`$progname --help | more' for full usage"
-    exit $?
-}
-
-# func_help [NOEXIT]
-# Echo long help message to standard output and exit,
-# unless 'noexit' is passed as argument.
-func_help ()
-{
-    $opt_debug
-
-    $SED -n '/^# Usage:/,/# Report bugs to/ {
-	:print
-        s/^# //
-	s/^# *$//
-	s*\$progname*'$progname'*
-	s*\$host*'"$host"'*
-	s*\$SHELL*'"$SHELL"'*
-	s*\$LTCC*'"$LTCC"'*
-	s*\$LTCFLAGS*'"$LTCFLAGS"'*
-	s*\$LD*'"$LD"'*
-	s/\$with_gnu_ld/'"$with_gnu_ld"'/
-	s/\$automake_version/'"`(automake --version) 2>/dev/null |$SED 1q`"'/
-	s/\$autoconf_version/'"`(autoconf --version) 2>/dev/null |$SED 1q`"'/
-	p
-	d
-     }
-     /^# .* home page:/b print
-     /^# General help using/b print
-     ' < "$progpath"
-    ret=$?
-    if test -z "$1"; then
-      exit $ret
-    fi
-}
-
-# func_missing_arg argname
-# Echo program name prefixed message to standard error and set global
-# exit_cmd.
-func_missing_arg ()
-{
-    $opt_debug
-
-    func_error "missing argument for $1."
-    exit_cmd=exit
-}
-
-
-# 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.
-func_split_short_opt ()
-{
-    my_sed_short_opt='1s/^\(..\).*$/\1/;q'
-    my_sed_short_rest='1s/^..\(.*\)$/\1/;q'
-
-    func_split_short_opt_name=`$ECHO "$1" | $SED "$my_sed_short_opt"`
-    func_split_short_opt_arg=`$ECHO "$1" | $SED "$my_sed_short_rest"`
-} # func_split_short_opt may be replaced by extended shell implementation
-
-
-# func_split_long_opt longopt
-# Set func_split_long_opt_name and func_split_long_opt_arg shell
-# variables after splitting LONGOPT at the `=' sign.
-func_split_long_opt ()
-{
-    my_sed_long_opt='1s/^\(--[^=]*\)=.*/\1/;q'
-    my_sed_long_arg='1s/^--[^=]*=//'
-
-    func_split_long_opt_name=`$ECHO "$1" | $SED "$my_sed_long_opt"`
-    func_split_long_opt_arg=`$ECHO "$1" | $SED "$my_sed_long_arg"`
-} # func_split_long_opt may be replaced by extended shell implementation
-
-exit_cmd=:
-
-
-
-
-
-magic="%%%MAGIC variable%%%"
-magic_exe="%%%MAGIC EXE variable%%%"
-
-# Global variables.
-nonopt=
-preserve_args=
-lo2o="s/\\.lo\$/.${objext}/"
-o2lo="s/\\.${objext}\$/.lo/"
-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=
-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
-{
-    eval "${1}=\$${1}\${2}"
-} # func_append may be replaced by extended shell implementation
-
-# func_append_quoted var value
-# Quote VALUE and append to the end of shell variable VAR, separated
-# by a space.
-func_append_quoted ()
-{
-    func_quote_for_eval "${2}"
-    eval "${1}=\$${1}\\ \$func_quote_for_eval_result"
-} # func_append_quoted may be replaced by extended shell implementation
-
-
-# func_arith arithmetic-term...
-func_arith ()
-{
-    func_arith_result=`expr "${@}"`
-} # func_arith may be replaced by extended shell implementation
-
-
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
-    func_len_result=`expr "${1}" : ".*" 2>/dev/null || echo $max_cmd_len`
-} # func_len may be replaced by extended shell implementation
-
-
-# func_lo2o object
-func_lo2o ()
-{
-    func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"`
-} # func_lo2o may be replaced by extended shell implementation
-
-
-# func_xform libobj-or-source
-func_xform ()
-{
-    func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'`
-} # func_xform may be replaced by extended shell implementation
-
-
-# func_fatal_configuration arg...
-# Echo program name prefixed message to standard error, followed by
-# a configuration failure hint, and exit.
-func_fatal_configuration ()
-{
-    func_error ${1+"$@"}
-    func_error "See the $PACKAGE documentation for more information."
-    func_fatal_error "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 "$build_libtool_libs" = yes; then
-      echo "enable shared libraries"
-    else
-      echo "disable shared libraries"
-    fi
-    if test "$build_old_libs" = yes; 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
-}
-
-
-# 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
-  ;;
-esac
-
-
-
-# Option defaults:
-opt_debug=:
-opt_dry_run=false
-opt_config=false
-opt_preserve_dup_deps=false
-opt_features=false
-opt_finish=false
-opt_help=false
-opt_help_all=false
-opt_silent=:
-opt_verbose=:
-opt_silent=false
-opt_verbose=false
-
-
-# Parse options once, thoroughly.  This comes as soon as possible in the
-# script to make things like `--version' happen as quickly as we can.
-{
-  # this just eases exit handling
-  while test $# -gt 0; do
-    opt="$1"
-    shift
-    case $opt in
-      --debug|-x)	opt_debug='set -x'
-			func_echo "enabling shell trace mode"
-			$opt_debug
-			;;
-      --dry-run|--dryrun|-n)
-			opt_dry_run=:
-			;;
-      --config)
-			opt_config=:
-func_config
-			;;
-      --dlopen|-dlopen)
-			optarg="$1"
-			opt_dlopen="${opt_dlopen+$opt_dlopen
-}$optarg"
-			shift
-			;;
-      --preserve-dup-deps)
-			opt_preserve_dup_deps=:
-			;;
-      --features)
-			opt_features=:
-func_features
-			;;
-      --finish)
-			opt_finish=:
-set dummy --mode finish ${1+"$@"}; shift
-			;;
-      --help)
-			opt_help=:
-			;;
-      --help-all)
-			opt_help_all=:
-opt_help=': help-all'
-			;;
-      --mode)
-			test $# = 0 && func_missing_arg $opt && break
-			optarg="$1"
-			opt_mode="$optarg"
-case $optarg in
-  # Valid mode arguments:
-  clean|compile|execute|finish|install|link|relink|uninstall) ;;
-
-  # Catch anything else as an error
-  *) func_error "invalid argument for $opt"
-     exit_cmd=exit
-     break
-     ;;
-esac
-			shift
-			;;
-      --no-silent|--no-quiet)
-			opt_silent=false
-func_append preserve_args " $opt"
-			;;
-      --no-verbose)
-			opt_verbose=false
-func_append preserve_args " $opt"
-			;;
-      --silent|--quiet)
-			opt_silent=:
-func_append preserve_args " $opt"
-        opt_verbose=false
-			;;
-      --verbose|-v)
-			opt_verbose=:
-func_append preserve_args " $opt"
-opt_silent=false
-			;;
-      --tag)
-			test $# = 0 && func_missing_arg $opt && break
-			optarg="$1"
-			opt_tag="$optarg"
-func_append preserve_args " $opt $optarg"
-func_enable_tag "$optarg"
-			shift
-			;;
-
-      -\?|-h)		func_usage				;;
-      --help)		func_help				;;
-      --version)	func_version				;;
-
-      # Separate optargs to long options:
-      --*=*)
-			func_split_long_opt "$opt"
-			set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"}
-			shift
-			;;
-
-      # Separate non-argument short options:
-      -\?*|-h*|-n*|-v*)
-			func_split_short_opt "$opt"
-			set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"}
-			shift
-			;;
-
-      --)		break					;;
-      -*)		func_fatal_help "unrecognized option \`$opt'" ;;
-      *)		set dummy "$opt" ${1+"$@"};	shift; break  ;;
-    esac
-  done
-
-  # Validate options:
-
-  # save first non-option argument
-  if test "$#" -gt 0; then
-    nonopt="$opt"
-    shift
-  fi
-
-  # preserve --debug
-  test "$opt_debug" = : || func_append preserve_args " --debug"
-
-  case $host in
-    *cygwin* | *mingw* | *pw32* | *cegcc*)
-      # 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
-
-    if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
-      func_fatal_configuration "not configured to build any kind of library"
-    fi
-
-    # Darwin sucks
-    eval std_shrext=\"$shrext_cmds\"
-
-    # Only execute mode is allowed to have -dlopen flags.
-    if test -n "$opt_dlopen" && test "$opt_mode" != execute; 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."
-  }
-
-
-  # Bail if the options were screwed
-  $exit_cmd $EXIT_FAILURE
-}
-
-
-
-
-## ----------- ##
-##    Main.    ##
-## ----------- ##
-
-# 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 \
-        | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
-}
-
-# 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 "$lalib_p" = yes
-}
-
-# 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 ()
-{
-    func_lalib_p "$1"
-}
-
-# 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 ()
-{
-    $opt_debug
-    save_ifs=$IFS; IFS='~'
-    for cmd in $1; do
-      IFS=$save_ifs
-      eval cmd=\"$cmd\"
-      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 ()
-{
-    $opt_debug
-    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 ()
-{
-    $opt_debug
-    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 "$build_libtool_libs" = yes; then
-      write_lobj=\'${2}\'
-    else
-      write_lobj=none
-    fi
-
-    if test "$build_old_libs" = yes; then
-      write_oldobj=\'${3}\'
-    else
-      write_oldobj=none
-    fi
-
-    $opt_dry_run || {
-      cat >${write_libobj}T <<EOF
-# $write_libobj - a libtool object file
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
-#
-# Please DO NOT delete this file!
-# It is necessary for linking the library.
-
-# Name of the PIC object.
-pic_object=$write_lobj
-
-# Name of the non-PIC object
-non_pic_object=$write_oldobj
-
-EOF
-      $MV "${write_libobj}T" "${write_libobj}"
-    }
-}
-
-
-##################################################
-# FILE NAME AND PATH CONVERSION HELPER FUNCTIONS #
-##################################################
-
-# func_convert_core_file_wine_to_w32 ARG
-# Helper function used by file name 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.
-#
-# ARG is the $build file name to be converted to w32 format.
-# Result is available in $func_convert_core_file_wine_to_w32_result, and will
-# be empty on error (or when ARG is empty)
-func_convert_core_file_wine_to_w32 ()
-{
-  $opt_debug
-  func_convert_core_file_wine_to_w32_result="$1"
-  if test -n "$1"; then
-    # Unfortunately, winepath does not exit with a non-zero error code, so we
-    # are forced to check the contents of stdout. On the other hand, if the
-    # command is not found, the shell will set an exit code of 127 and print
-    # *an error message* to stdout. So we must check for both error code of
-    # zero AND non-empty stdout, which explains the odd construction:
-    func_convert_core_file_wine_to_w32_tmp=`winepath -w "$1" 2>/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 "$lt_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 ()
-{
-  $opt_debug
-  # 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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  # awkward: cmd appends spaces to result
-  func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null |
-    $SED -e 's/[ ]*$//' -e "$lt_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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  $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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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_mode_compile arg...
-func_mode_compile ()
-{
-    $opt_debug
-    # 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 | *.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 "$build_libtool_libs" != yes && \
-	  func_fatal_configuration "can not 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_for_eval "$libobj"
-    test "X$libobj" != "X$func_quote_for_eval_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 "$build_old_libs" = yes; 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 "$pic_mode" = no && test "$deplibs_check_method" != pass_all; 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 "$compiler_c_o" = no; 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 "$need_locks" = yes; 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 "$need_locks" = warn; 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_for_eval "$srcfile"
-    qsrcfile=$func_quote_for_eval_result
-
-    # Only build a PIC object if we are building libtool libraries.
-    if test "$build_libtool_libs" = yes; then
-      # Without this assignment, base_compile gets emptied.
-      fbsd_hideous_sh_bug=$base_compile
-
-      if test "$pic_mode" != no; 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 "$need_locks" = warn &&
-	 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 "$suppress_opt" = yes; then
-	suppress_output=' >/dev/null 2>&1'
-      fi
-    fi
-
-    # Only build a position-dependent object if we build old libraries.
-    if test "$build_old_libs" = yes; then
-      if test "$pic_mode" != yes; then
-	# Don't build PIC code
-	command="$base_compile $qsrcfile$pie_flag"
-      else
-	command="$base_compile $qsrcfile $pic_flag"
-      fi
-      if test "$compiler_c_o" = yes; 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 "$need_locks" = warn &&
-	 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 "$need_locks" != no; then
-	removelist=$lockfile
-        $RM "$lockfile"
-      fi
-    }
-
-    exit $EXIT_SUCCESS
-}
-
-$opt_help || {
-  test "$opt_mode" = compile && 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          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
-  -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
-  -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           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
-  -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 ()
-{
-    $opt_debug
-    # 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 test "X$opt_dry_run" = Xfalse; then
-      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"
-    else
-      # 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
-    fi
-}
-
-test "$opt_mode" = execute && func_mode_execute ${1+"$@"}
-
-
-# func_mode_finish arg...
-func_mode_finish ()
-{
-    $opt_debug
-    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_silent && 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 "$opt_mode" = finish && func_mode_finish ${1+"$@"}
-
-
-# func_mode_install arg...
-func_mode_install ()
-{
-    $opt_debug
-    # There may be an optional sh(1) argument at the beginning of
-    # install_prog (especially on Windows NT).
-    if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
-       # Allow the use of GNU shtool's install command.
-       case $nonopt in *shtool*) :;; *) false;; esac; then
-      # Aesthetically quote it.
-      func_quote_for_eval "$nonopt"
-      install_prog="$func_quote_for_eval_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_for_eval "$arg"
-    func_append install_prog "$func_quote_for_eval_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=no
-    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=yes ;;
-      -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$prev" = x-m && 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_for_eval "$arg"
-      func_append install_prog " $func_quote_for_eval_result"
-      if test -n "$arg2"; then
-	func_quote_for_eval "$arg2"
-      fi
-      func_append install_shared_prog " $func_quote_for_eval_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_for_eval "$install_override_mode"
-	func_append install_shared_prog " -m $func_quote_for_eval_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=yes
-    if test "$isdir" = yes; 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
-	    ;;
-	  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 "$build_old_libs" = yes; 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=yes
-	  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'` ### testsuite: skip nested quoting test
-	    if test -n "$libdir" && test ! -f "$libfile"; then
-	      func_warning "\`$lib' has not been installed in \`$libdir'"
-	      finalize=no
-	    fi
-	  done
-
-	  relink_command=
-	  func_source "$wrapper"
-
-	  outputname=
-	  if test "$fast_install" = no && test -n "$relink_command"; then
-	    $opt_dry_run || {
-	      if test "$finalize" = yes; 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_silent || {
-	          func_quote_for_expand "$relink_command"
-		  eval "func_echo $func_quote_for_expand_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_show_eval "$install_prog \$file \$oldlib" 'exit $?'
-
-      if test -n "$stripme" && test -n "$old_striplib"; then
-	func_show_eval "$old_striplib $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 "$opt_mode" = install && 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 ()
-{
-    $opt_debug
-    my_outputname="$1"
-    my_originator="$2"
-    my_pic_p="${3-no}"
-    my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'`
-    my_dlsyms=
-
-    if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; 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$TIMESTAMP) $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 con'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
-
-/* External symbol declarations for the compiler. */\
-"
-
-	if test "$dlself" = yes; 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 <import library>.
-	            $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 >/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
-
-	  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[];
-LT_DLSYM_CONST lt_dlsymlist
-lt_${my_prefix}_LTX_preloaded_symbols[] =
-{\
-  { \"$my_originator\", (void *) 0 },"
-
-	  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"  ;;
-	  *)
-	    if test "X$my_pic_p" != Xno; then
-	      pic_flag_for_symtable=" $pic_flag"
-	    fi
-	    ;;
-	  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"'
-
-	# 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_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 ()
-{
-  $opt_debug
-  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
-      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
-		}
-	    }'`
-      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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 which possess that section. Heuristic: eliminate
-    # all those which 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_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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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_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 ()
-{
-  $opt_debug
-  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 ()
-{
-    $opt_debug
-    f_ex_an_ar_dir="$1"; shift
-    f_ex_an_ar_oldlib="$1"
-    if test "$lock_old_archive_extraction" = yes; 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 "$lock_old_archive_extraction" = yes; 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 ()
-{
-    $opt_debug
-    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`
-	  darwin_base_archive=`basename "$darwin_archive"`
-	  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 "$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 in which 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$TIMESTAMP) $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\""
-
-    qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"`
-    $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/ which is used only on
-# windows platforms, and (c) all begin with the string "--lt-"
-# (application programs are unlikely to have options which 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$TIMESTAMP) $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 ()
-{
-  for lt_wr_arg
-  do
-    case \$lt_wr_arg in
-    --lt-*) ;;
-    *) set x \"\$@\" \"\$lt_wr_arg\"; shift;;
-    esac
-    shift
-  done
-  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 "$fast_install" = yes; 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 "$shlibpath_overrides_runpath" = yes && 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 <<EOF
-
-/* $cwrappersource - temporary wrapper executable for $objdir/$outputname
-   Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
-
-   The $output program cannot be directly executed until all the libtool
-   libraries that it depends on are installed.
-
-   This wrapper executable should never be moved out of the build directory.
-   If it is, it will not operate correctly.
-*/
-EOF
-	    cat <<"EOF"
-#ifdef _MSC_VER
-# define _CRT_SECURE_NO_DEPRECATE 1
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-#ifdef _MSC_VER
-# include <direct.h>
-# include <process.h>
-# include <io.h>
-#else
-# include <unistd.h>
-# include <stdint.h>
-# ifdef __CYGWIN__
-#  include <io.h>
-# endif
-#endif
-#include <malloc.h>
-#include <stdarg.h>
-#include <assert.h>
-#include <string.h>
-#include <ctype.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <sys/stat.h>
-
-/* 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 platforms) ... */
-#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
-# ifndef _INTPTR_T_DEFINED
-#  define _INTPTR_T_DEFINED
-#  define intptr_t int
-# endif
-#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 ((void *) 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 <<EOF
-volatile const char * MAGIC_EXE = "$magic_exe";
-const char * LIB_PATH_VARNAME = "$shlibpath_var";
-EOF
-
-	    if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
-              func_to_host_path "$temp_rpath"
-	      cat <<EOF
-const char * LIB_PATH_VALUE   = "$func_to_host_path_result";
-EOF
-	    else
-	      cat <<"EOF"
-const char * LIB_PATH_VALUE   = "";
-EOF
-	    fi
-
-	    if test -n "$dllsearchpath"; then
-              func_to_host_path "$dllsearchpath:"
-	      cat <<EOF
-const char * EXE_PATH_VARNAME = "PATH";
-const char * EXE_PATH_VALUE   = "$func_to_host_path_result";
-EOF
-	    else
-	      cat <<"EOF"
-const char * EXE_PATH_VARNAME = "";
-const char * EXE_PATH_VALUE   = "";
-EOF
-	    fi
-
-	    if test "$fast_install" = yes; then
-	      cat <<EOF
-const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */
-EOF
-	    else
-	      cat <<EOF
-const char * TARGET_PROGRAM_NAME = "$outputname"; /* hopefully, no .exe */
-EOF
-	    fi
-
-
-	    cat <<"EOF"
-
-#define LTWRAPPER_OPTION_PREFIX         "--lt-"
-
-static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX;
-static const char *dumpscript_opt       = LTWRAPPER_OPTION_PREFIX "dump-script";
-static const char *debug_opt            = LTWRAPPER_OPTION_PREFIX "debug";
-
-int
-main (int argc, char *argv[])
-{
-  char **newargz;
-  int  newargc;
-  char *tmp_pathspec;
-  char *actual_cwrapper_path;
-  char *actual_cwrapper_name;
-  char *target_name;
-  char *lt_argv_zero;
-  intptr_t rval = 127;
-
-  int i;
-
-  program_name = (char *) xstrdup (base_name (argv[0]));
-  newargz = XMALLOC (char *, argc + 1);
-
-  /* very simple arg parsing; don't want to rely on getopt
-   * also, copy all non cwrapper options to newargz, except
-   * argz[0], which is handled differently
-   */
-  newargc=0;
-  for (i = 1; i < argc; i++)
-    {
-      if (strcmp (argv[i], dumpscript_opt) == 0)
-	{
-EOF
-	    case "$host" in
-	      *mingw* | *cygwin* )
-		# make stdout use "unix" line endings
-		echo "          setmode(1,_O_BINARY);"
-		;;
-	      esac
-
-	    cat <<"EOF"
-	  lt_dump_script (stdout);
-	  return 0;
-	}
-      if (strcmp (argv[i], debug_opt) == 0)
-	{
-          lt_debug = 1;
-          continue;
-	}
-      if (strcmp (argv[i], ltwrapper_option_prefix) == 0)
-        {
-          /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX
-             namespace, but it is not one of the ones we know about and
-             have already dealt with, above (inluding dump-script), then
-             report an error. Otherwise, targets might begin to believe
-             they are allowed to use options in the LTWRAPPER_OPTION_PREFIX
-             namespace. The first time any user complains about this, we'll
-             need to make LTWRAPPER_OPTION_PREFIX a configure-time option
-             or a configure.ac-settable value.
-           */
-          lt_fatal (__FILE__, __LINE__,
-		    "unrecognized %s option: '%s'",
-                    ltwrapper_option_prefix, argv[i]);
-        }
-      /* otherwise ... */
-      newargz[++newargc] = xstrdup (argv[i]);
-    }
-  newargz[++newargc] = NULL;
-
-EOF
-	    cat <<EOF
-  /* The GNU banner must be the first non-error debug message */
-  lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\n");
-EOF
-	    cat <<"EOF"
-  lt_debugprintf (__FILE__, __LINE__, "(main) argv[0]: %s\n", argv[0]);
-  lt_debugprintf (__FILE__, __LINE__, "(main) program_name: %s\n", program_name);
-
-  tmp_pathspec = find_executable (argv[0]);
-  if (tmp_pathspec == NULL)
-    lt_fatal (__FILE__, __LINE__, "couldn't find %s", argv[0]);
-  lt_debugprintf (__FILE__, __LINE__,
-                  "(main) found exe (before symlink chase) at: %s\n",
-		  tmp_pathspec);
-
-  actual_cwrapper_path = chase_symlinks (tmp_pathspec);
-  lt_debugprintf (__FILE__, __LINE__,
-                  "(main) found exe (after symlink chase) at: %s\n",
-		  actual_cwrapper_path);
-  XFREE (tmp_pathspec);
-
-  actual_cwrapper_name = xstrdup (base_name (actual_cwrapper_path));
-  strendzap (actual_cwrapper_path, actual_cwrapper_name);
-
-  /* wrapper name transforms */
-  strendzap (actual_cwrapper_name, ".exe");
-  tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1);
-  XFREE (actual_cwrapper_name);
-  actual_cwrapper_name = tmp_pathspec;
-  tmp_pathspec = 0;
-
-  /* target_name transforms -- use actual target program name; might have lt- prefix */
-  target_name = xstrdup (base_name (TARGET_PROGRAM_NAME));
-  strendzap (target_name, ".exe");
-  tmp_pathspec = lt_extend_str (target_name, ".exe", 1);
-  XFREE (target_name);
-  target_name = tmp_pathspec;
-  tmp_pathspec = 0;
-
-  lt_debugprintf (__FILE__, __LINE__,
-		  "(main) libtool target name: %s\n",
-		  target_name);
-EOF
-
-	    cat <<EOF
-  newargz[0] =
-    XMALLOC (char, (strlen (actual_cwrapper_path) +
-		    strlen ("$objdir") + 1 + strlen (actual_cwrapper_name) + 1));
-  strcpy (newargz[0], actual_cwrapper_path);
-  strcat (newargz[0], "$objdir");
-  strcat (newargz[0], "/");
-EOF
-
-	    cat <<"EOF"
-  /* stop here, and copy so we don't have to do this twice */
-  tmp_pathspec = xstrdup (newargz[0]);
-
-  /* do NOT want the lt- prefix here, so use actual_cwrapper_name */
-  strcat (newargz[0], actual_cwrapper_name);
-
-  /* DO want the lt- prefix here if it exists, so use target_name */
-  lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1);
-  XFREE (tmp_pathspec);
-  tmp_pathspec = NULL;
-EOF
-
-	    case $host_os in
-	      mingw*)
-	    cat <<"EOF"
-  {
-    char* p;
-    while ((p = strchr (newargz[0], '\\')) != NULL)
-      {
-	*p = '/';
-      }
-    while ((p = strchr (lt_argv_zero, '\\')) != NULL)
-      {
-	*p = '/';
-      }
-  }
-EOF
-	    ;;
-	    esac
-
-	    cat <<"EOF"
-  XFREE (target_name);
-  XFREE (actual_cwrapper_path);
-  XFREE (actual_cwrapper_name);
-
-  lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */
-  lt_setenv ("DUALCASE", "1");  /* for MSK sh */
-  /* Update the DLL searchpath.  EXE_PATH_VALUE ($dllsearchpath) must
-     be prepended before (that is, appear after) LIB_PATH_VALUE ($temp_rpath)
-     because on Windows, both *_VARNAMEs are PATH but uninstalled
-     libraries must come first. */
-  lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE);
-  lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE);
-
-  lt_debugprintf (__FILE__, __LINE__, "(main) lt_argv_zero: %s\n",
-		  nonnull (lt_argv_zero));
-  for (i = 0; i < newargc; i++)
-    {
-      lt_debugprintf (__FILE__, __LINE__, "(main) newargz[%d]: %s\n",
-		      i, nonnull (newargz[i]));
-    }
-
-EOF
-
-	    case $host_os in
-	      mingw*)
-		cat <<"EOF"
-  /* execv doesn't actually work on mingw as expected on unix */
-  newargz = prepare_spawn (newargz);
-  rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
-  if (rval == -1)
-    {
-      /* failed to start process */
-      lt_debugprintf (__FILE__, __LINE__,
-		      "(main) failed to launch target \"%s\": %s\n",
-		      lt_argv_zero, nonnull (strerror (errno)));
-      return 127;
-    }
-  return rval;
-EOF
-		;;
-	      *)
-		cat <<"EOF"
-  execv (lt_argv_zero, newargz);
-  return rval; /* =127, but avoids unused variable warning */
-EOF
-		;;
-	    esac
-
-	    cat <<"EOF"
-}
-
-void *
-xmalloc (size_t num)
-{
-  void *p = (void *) malloc (num);
-  if (!p)
-    lt_fatal (__FILE__, __LINE__, "memory exhausted");
-
-  return p;
-}
-
-char *
-xstrdup (const char *string)
-{
-  return string ? strcpy ((char *) xmalloc (strlen (string) + 1),
-			  string) : NULL;
-}
-
-const char *
-base_name (const char *name)
-{
-  const char *base;
-
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
-  /* Skip over the disk name in MSDOS pathnames. */
-  if (isalpha ((unsigned char) name[0]) && name[1] == ':')
-    name += 2;
-#endif
-
-  for (base = name; *name; name++)
-    if (IS_DIR_SEPARATOR (*name))
-      base = name + 1;
-  return base;
-}
-
-int
-check_executable (const char *path)
-{
-  struct stat st;
-
-  lt_debugprintf (__FILE__, __LINE__, "(check_executable): %s\n",
-                  nonempty (path));
-  if ((!path) || (!*path))
-    return 0;
-
-  if ((stat (path, &st) >= 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];
-  int 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 = 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 (strcmp (str, pat) == 0)
-	*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
-    int 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)
-    {
-      int orig_value_len = strlen (orig_value);
-      int 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 #' */
-      int len = strlen (new_value);
-      while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
-        {
-          new_value[len-1] = '\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 -e 's/\([\\"]\)/\\\1/g' \
-	           -e 's/^/  fputs ("/' -e 's/$/\\n", f);/'
-
-            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 ()
-{
-    $opt_debug
-    case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in
-    *import*) : ;;
-    *) false ;;
-    esac
-}
-
-# func_mode_link arg...
-func_mode_link ()
-{
-    $opt_debug
-    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
-      # which 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 which 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=
-    non_pic_objects=
-    precious_files_regex=
-    prefer_static_libs=no
-    preload=no
-    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 "$build_libtool_libs" != yes && \
-	  func_fatal_configuration "can not build a shared library"
-	build_old_libs=no
-	break
-	;;
-      -all-static | -static | -static-libtool-libs)
-	case $arg in
-	-all-static)
-	  if test "$build_libtool_libs" = yes && 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)
-	  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_for_eval "$arg"
-      qarg=$func_quote_for_eval_unquoted_result
-      func_append libtool_args " $func_quote_for_eval_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)
-	  if test "$preload" = no; then
-	    # Add the symbol object into the linking commands.
-	    func_append compile_command " @SYMFILE@"
-	    func_append finalize_command " @SYMFILE@"
-	    preload=yes
-	  fi
-	  case $arg in
-	  *.la | *.lo) ;;  # We handle these cases below.
-	  force)
-	    if test "$dlself" = no; then
-	      dlself=needless
-	      export_dynamic=yes
-	    fi
-	    prev=
-	    continue
-	    ;;
-	  self)
-	    if test "$prev" = dlprefiles; then
-	      dlself=yes
-	    elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
-	      dlself=yes
-	    else
-	      dlself=needless
-	      export_dynamic=yes
-	    fi
-	    prev=
-	    continue
-	    ;;
-	  *)
-	    if test "$prev" = dlfiles; 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
-	  ;;
-	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 "$pic_object" = none &&
-		   test "$non_pic_object" = none; 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 "$pic_object" != none; then
-		  # Prepend the subdirectory the object is found in.
-		  pic_object="$xdir$pic_object"
-
-		  if test "$prev" = dlfiles; then
-		    if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; 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 "$prev" = dlprefiles; 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 "$non_pic_object" != none; 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 "$pic_object" = none ; 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
-	  ;;
-	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 "$prev" = rpath; 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
-	  ;;
-	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)
-	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$arg" = "X-export-symbols"; 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$arg" = "X-lc" || test "X$arg" = "X-lm"; 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$arg" = "X-lc" && continue
-	    ;;
-	  *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
-	    # Do not include libc due to us having libc/libc_r.
-	    test "X$arg" = "X-lc" && 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$arg" = "X-lc" && continue
-	    ;;
-	  *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
-	    # Compiler inserts libc in the correct place for threads to work
-	    test "X$arg" = "X-lc" && continue
-	    ;;
-	  esac
-	elif test "X$arg" = "X-lc_r"; then
-	 case $host in
-	 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
-	   # Do not include libc_r directly, use -pthread flag.
-	   continue
-	   ;;
-	 esac
-	fi
-	func_append deplibs " $arg"
-	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
-	;;
-
-      -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
-	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
-	;;
-
-      -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 | -static-libtool-libs)
-	# The effects of -static 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_for_eval "$flag"
-	  func_append arg " $func_quote_for_eval_result"
-	  func_append compiler_flags " $func_quote_for_eval_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_for_eval "$flag"
-	  func_append arg " $wl$func_quote_for_eval_result"
-	  func_append compiler_flags " $wl$func_quote_for_eval_result"
-	  func_append linker_flags " $func_quote_for_eval_result"
-	done
-	IFS="$save_ifs"
-	func_stripname ' ' '' "$arg"
-	arg=$func_stripname_result
-	;;
-
-      -Xcompiler)
-	prev=xcompiler
-	continue
-	;;
-
-      -Xlinker)
-	prev=xlinker
-	continue
-	;;
-
-      -XCClinker)
-	prev=xcclinker
-	continue
-	;;
-
-      # -msg_* for osf cc
-      -msg_*)
-	func_quote_for_eval "$arg"
-	arg="$func_quote_for_eval_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
-      # @file                GCC response files
-      # -tp=*                Portland pgcc target processor selection
-      # --sysroot=*          for sysroot support
-      # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
-      -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*|-flto*|-fwhopr*|-fuse-linker-plugin)
-        func_quote_for_eval "$arg"
-	arg="$func_quote_for_eval_result"
-        func_append compile_command " $arg"
-        func_append finalize_command " $arg"
-        func_append compiler_flags " $arg"
-        continue
-        ;;
-
-      # Some other compiler flag.
-      -* | +*)
-        func_quote_for_eval "$arg"
-	arg="$func_quote_for_eval_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 "$pic_object" = none &&
-	     test "$non_pic_object" = none; 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 "$pic_object" != none; then
-	    # Prepend the subdirectory the object is found in.
-	    pic_object="$xdir$pic_object"
-
-	    if test "$prev" = dlfiles; then
-	      if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; 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 "$prev" = dlprefiles; 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 "$non_pic_object" != none; 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 "$pic_object" = none ; 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 "$prev" = dlfiles; then
-	  # This library was specified with -dlopen.
-	  func_append dlfiles " $func_resolve_sysroot_result"
-	  prev=
-	elif test "$prev" = dlprefiles; 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_for_eval "$arg"
-	arg="$func_quote_for_eval_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 "$export_dynamic" = yes && 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\"
-
-    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 "$linkmode" = lib; 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=no
-	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 "$linkmode,$pass" = "lib,link"; 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 "$linkmode,$pass" = "lib,link" ||
-	 test "$linkmode,$pass" = "prog,scan"; then
-	libs="$deplibs"
-	deplibs=
-      fi
-      if test "$linkmode" = prog; then
-	case $pass in
-	dlopen) libs="$dlfiles" ;;
-	dlpreopen) libs="$dlprefiles" ;;
-	link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
-	esac
-      fi
-      if test "$linkmode,$pass" = "lib,dlpreopen"; 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 "$pass" = dlopen; then
-	# Collect dlpreopened libraries
-	save_deplibs="$deplibs"
-	deplibs=
-      fi
-
-      for deplib in $libs; do
-	lib=
-	found=no
-	case $deplib in
-	-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
-	  if test "$linkmode,$pass" = "prog,link"; then
-	    compile_deplibs="$deplib $compile_deplibs"
-	    finalize_deplibs="$deplib $finalize_deplibs"
-	  else
-	    func_append compiler_flags " $deplib"
-	    if test "$linkmode" = lib ; then
-		case "$new_inherited_linker_flags " in
-		    *" $deplib "*) ;;
-		    * ) func_append new_inherited_linker_flags " $deplib" ;;
-		esac
-	    fi
-	  fi
-	  continue
-	  ;;
-	-l*)
-	  if test "$linkmode" != lib && test "$linkmode" != prog; then
-	    func_warning "\`-l' is ignored for archives/objects"
-	    continue
-	  fi
-	  func_stripname '-l' '' "$deplib"
-	  name=$func_stripname_result
-	  if test "$linkmode" = lib; 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 "$search_ext" = ".la"; then
-		  found=yes
-		else
-		  found=no
-		fi
-		break 2
-	      fi
-	    done
-	  done
-	  if test "$found" != yes; then
-	    # deplib doesn't seem to be a libtool library
-	    if test "$linkmode,$pass" = "prog,link"; then
-	      compile_deplibs="$deplib $compile_deplibs"
-	      finalize_deplibs="$deplib $finalize_deplibs"
-	    else
-	      deplibs="$deplib $deplibs"
-	      test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
-	    fi
-	    continue
-	  else # 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 "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; 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=no
-		    func_dirname "$lib" "" "."
-		    ladir="$func_dirname_result"
-		    lib=$ladir/$old_library
-		    if test "$linkmode,$pass" = "prog,link"; then
-		      compile_deplibs="$deplib $compile_deplibs"
-		      finalize_deplibs="$deplib $finalize_deplibs"
-		    else
-		      deplibs="$deplib $deplibs"
-		      test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
-		    fi
-		    continue
-		  fi
-		fi
-		;;
-	      *) ;;
-	      esac
-	    fi
-	  fi
-	  ;; # -l
-	*.ltframework)
-	  if test "$linkmode,$pass" = "prog,link"; then
-	    compile_deplibs="$deplib $compile_deplibs"
-	    finalize_deplibs="$deplib $finalize_deplibs"
-	  else
-	    deplibs="$deplib $deplibs"
-	    if test "$linkmode" = lib ; 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 "$pass" = conv && 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 "$pass" = conv; then
-	      deplibs="$deplib $deplibs"
-	      continue
-	    fi
-	    if test "$pass" = scan; 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 "$pass" = link; 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 "$pass" = conv; 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=no
-	      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=yes
-		  fi
-		;;
-		pass_all)
-		  valid_a_lib=yes
-		;;
-	      esac
-	      if test "$valid_a_lib" != yes; then
-		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."
-	      else
-		echo
-		$ECHO "*** Warning: Linking the shared library $output against the"
-		$ECHO "*** static library $deplib is not portable!"
-		deplibs="$deplib $deplibs"
-	      fi
-	      ;;
-	    esac
-	    continue
-	    ;;
-	  prog)
-	    if test "$pass" != link; then
-	      deplibs="$deplib $deplibs"
-	    else
-	      compile_deplibs="$deplib $compile_deplibs"
-	      finalize_deplibs="$deplib $finalize_deplibs"
-	    fi
-	    continue
-	    ;;
-	  esac # linkmode
-	  ;; # *.$libext
-	*.lo | *.$objext)
-	  if test "$pass" = conv; then
-	    deplibs="$deplib $deplibs"
-	  elif test "$linkmode" = prog; then
-	    if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; 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=yes
-	  continue
-	  ;;
-	esac # case $deplib
-
-	if test "$found" = yes || test -f "$lib"; then :
-	else
-	  func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'"
-	fi
-
-	# 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 "$linkmode,$pass" = "lib,link" ||
-	   test "$linkmode,$pass" = "prog,scan" ||
-	   { test "$linkmode" != prog && test "$linkmode" != lib; }; then
-	  test -n "$dlopen" && func_append dlfiles " $dlopen"
-	  test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen"
-	fi
-
-	if test "$pass" = conv; 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 "$linkmode" != prog && test "$linkmode" != lib; 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 "$prefer_static_libs" = yes ||
-	     test "$prefer_static_libs,$installed" = "built,no"; }; 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 "$pass" = dlopen; then
-	  if test -z "$libdir"; then
-	    func_fatal_error "cannot -dlopen a convenience library: \`$lib'"
-	  fi
-	  if test -z "$dlname" ||
-	     test "$dlopen_support" != yes ||
-	     test "$build_libtool_libs" = no; 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 "X$installed" = Xyes; 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 "X$hardcode_automatic" = Xyes && 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 "$pass" = dlpreopen; then
-	  if test -z "$libdir" && test "$linkmode" = prog; 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 "$linkmode" = lib; then
-	    deplibs="$dir/$old_library $deplibs"
-	  elif test "$linkmode,$pass" = "prog,link"; 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 "$linkmode" = prog && test "$pass" != link; then
-	  func_append newlib_search_path " $ladir"
-	  deplibs="$lib $deplibs"
-
-	  linkalldeplibs=no
-	  if test "$link_all_deplibs" != no || test -z "$library_names" ||
-	     test "$build_libtool_libs" = no; then
-	    linkalldeplibs=yes
-	  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 test "$linkalldeplibs" = yes; 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 "$linkmode,$pass" = "prog,link"; then
-	  if test -n "$library_names" &&
-	     { { test "$prefer_static_libs" = no ||
-	         test "$prefer_static_libs,$installed" = "built,yes"; } ||
-	       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 test "$alldeplibs" = yes &&
-	     { test "$deplibs_check_method" = pass_all ||
-	       { test "$build_libtool_libs" = yes &&
-		 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 "$use_static_libs" = built && test "$installed" = yes; then
-	  use_static_libs=no
-	fi
-	if test -n "$library_names" &&
-	   { test "$use_static_libs" = no || test -z "$old_library"; }; then
-	  case $host in
-	  *cygwin* | *mingw* | *cegcc*)
-	      # No point in relinking DLLs because paths are not encoded
-	      func_append notinst_deplibs " $lib"
-	      need_relink=no
-	    ;;
-	  *)
-	    if test "$installed" = no; 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 "$shouldnotlink" = yes && test "$pass" = link; then
-	    echo
-	    if test "$linkmode" = prog; 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 "$linkmode" = lib &&
-	     test "$hardcode_into_libs" = yes; 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*)
-	        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 "$linkmode" = prog || test "$opt_mode" != relink; then
-	    add_shlibpath=
-	    add_dir=
-	    add=
-	    lib_linked=yes
-	    case $hardcode_action in
-	    immediate | unsupported)
-	      if test "$hardcode_direct" = no; 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 can not
-		    # 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 "$hardcode_minus_L" = no; then
-		case $host in
-		*-*-sunos*) add_shlibpath="$dir" ;;
-		esac
-		add_dir="-L$dir"
-		add="-l$name"
-	      elif test "$hardcode_shlibpath_var" = no; then
-		add_shlibpath="$dir"
-		add="-l$name"
-	      else
-		lib_linked=no
-	      fi
-	      ;;
-	    relink)
-	      if test "$hardcode_direct" = yes &&
-	         test "$hardcode_direct_absolute" = no; then
-		add="$dir/$linklib"
-	      elif test "$hardcode_minus_L" = yes; then
-		add_dir="-L$dir"
-		# 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 "$hardcode_shlibpath_var" = yes; then
-		add_shlibpath="$dir"
-		add="-l$name"
-	      else
-		lib_linked=no
-	      fi
-	      ;;
-	    *) lib_linked=no ;;
-	    esac
-
-	    if test "$lib_linked" != yes; 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 "$linkmode" = prog; 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 "$hardcode_direct" != yes &&
-		 test "$hardcode_minus_L" != yes &&
-		 test "$hardcode_shlibpath_var" = yes; then
-		case :$finalize_shlibpath: in
-		*":$libdir:"*) ;;
-		*) func_append finalize_shlibpath "$libdir:" ;;
-		esac
-	      fi
-	    fi
-	  fi
-
-	  if test "$linkmode" = prog || test "$opt_mode" = relink; then
-	    add_shlibpath=
-	    add_dir=
-	    add=
-	    # Finalize command for both is simple: just hardcode it.
-	    if test "$hardcode_direct" = yes &&
-	       test "$hardcode_direct_absolute" = no; then
-	      add="$libdir/$linklib"
-	    elif test "$hardcode_minus_L" = yes; then
-	      add_dir="-L$libdir"
-	      add="-l$name"
-	    elif test "$hardcode_shlibpath_var" = yes; then
-	      case :$finalize_shlibpath: in
-	      *":$libdir:"*) ;;
-	      *) func_append finalize_shlibpath "$libdir:" ;;
-	      esac
-	      add="-l$name"
-	    elif test "$hardcode_automatic" = yes; 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 "$linkmode" = prog; 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 "$linkmode" = prog; 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 "$hardcode_direct" != unsupported; 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 "$build_libtool_libs" = yes; then
-	  # Not a shared library
-	  if test "$deplibs_check_method" != pass_all; 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 can not 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 "$module" = yes; 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 "$build_old_libs" = no; 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 "$linkmode" = lib; then
-	  if test -n "$dependency_libs" &&
-	     { test "$hardcode_into_libs" != yes ||
-	       test "$build_old_libs" = yes ||
-	       test "$link_static" = yes; }; 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 "$link_static" = no && 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 "$link_all_deplibs" != no; 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 "$pass" = link; then
-	if test "$linkmode" = "prog"; 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 "$pass" = dlpreopen; then
-	# Link the dlpreopened libraries before other libraries
-	for deplib in $save_deplibs; do
-	  deplibs="$deplib $deplibs"
-	done
-      fi
-      if test "$pass" != dlopen; then
-	if test "$pass" != conv; then
-	  # 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=
-	fi
-
-	if test "$linkmode,$pass" != "prog,link"; then
-	  vars="deplibs"
-	else
-	  vars="compile_deplibs finalize_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
-      # 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 "$linkmode" = prog; then
-      dlfiles="$newdlfiles"
-    fi
-    if test "$linkmode" = prog || test "$linkmode" = lib; then
-      dlprefiles="$newdlprefiles"
-    fi
-
-    case $linkmode in
-    oldlib)
-      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; 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 "$module" = no && \
-	  func_fatal_help "libtool library \`$output' must begin with \`lib'"
-
-	if test "$need_lib_prefix" != no; 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 "$deplibs_check_method" != pass_all; 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 "$dlself" != no && \
-	func_warning "\`-dlopen self' is ignored for libtool libraries"
-
-      set dummy $rpath
-      shift
-      test "$#" -gt 1 && \
-	func_warning "ignoring multiple \`-rpath's for a libtool library"
-
-      install_libdir="$1"
-
-      oldlibs=
-      if test -z "$rpath"; then
-	if test "$build_libtool_libs" = yes; 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
-	  # which has an extra 1 added just for fun
-	  #
-	  case $version_type in
-	  darwin|linux|osf|windows|none)
-	    func_arith $number_major + $number_minor
-	    current=$func_arith_result
-	    age="$number_minor"
-	    revision="$number_revision"
-	    ;;
-	  freebsd-aout|freebsd-elf|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"
-	  ;;
-
-	freebsd-aout)
-	  major=".$current"
-	  versuffix=".$current.$revision";
-	  ;;
-
-	freebsd-elf)
-	  major=".$current"
-	  versuffix=".$current"
-	  ;;
-
-	irix | nonstopux)
-	  if test "X$lt_irix_increment" = "Xno"; 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 "$loop" -ne 0; 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)
-	  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 "$loop" -ne 0; 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"
-	  ;;
-
-	sunos)
-	  major=".$current"
-	  versuffix=".$current.$revision"
-	  ;;
-
-	windows)
-	  # Use '-' rather than '.', since we only want one
-	  # extension on DOS 8.3 filesystems.
-	  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 "$need_version" = no; then
-	    versuffix=
-	  else
-	    versuffix=".0.0"
-	  fi
-	fi
-
-	# Remove version info from name if versioning should be avoided
-	if test "$avoid_version" = yes && test "$need_version" = no; then
-	  major=
-	  versuffix=
-	  verstring=""
-	fi
-
-	# Check to see if the archive will have undefined symbols.
-	if test "$allow_undefined" = yes; then
-	  if test "$allow_undefined_flag" = unsupported; then
-	    func_warning "undefined symbols not allowed in $host shared libraries"
-	    build_libtool_libs=no
-	    build_old_libs=yes
-	  fi
-	else
-	  # Don't allow undefined symbols.
-	  allow_undefined_flag="$no_undefined_flag"
-	fi
-
-      fi
-
-      func_generate_dlsyms "$libname" "$libname" "yes"
-      func_append libobjs " $symfileobj"
-      test "X$libobjs" = "X " && libobjs=
-
-      if test "$opt_mode" != relink; 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 "X$precious_files_regex" != "X"; 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 "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; 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 "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; 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 "$build_libtool_libs" = yes; 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*)
-	    # 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 "$build_libtool_need_lc" = "yes"; 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 <<EOF
-	  int main() { return 0; }
-EOF
-	  $opt_dry_run || $RM conftest
-	  if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
-	    ldd_output=`ldd conftest`
-	    for i in $deplibs; do
-	      case $i in
-	      -l*)
-		func_stripname -l '' "$i"
-		name=$func_stripname_result
-		if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
-		  case " $predeps $postdeps " in
-		  *" $i "*)
-		    func_append newdeplibs " $i"
-		    i=""
-		    ;;
-		  esac
-		fi
-		if test -n "$i" ; then
-		  libname=`eval "\\$ECHO \"$libname_spec\""`
-		  deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
-		  set dummy $deplib_matches; shift
-		  deplib_match=$1
-		  if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
-		    func_append newdeplibs " $i"
-		  else
-		    droppeddeps=yes
-		    echo
-		    $ECHO "*** Warning: dynamic linker does not accept needed library $i."
-		    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 I believe you do not have"
-		    echo "*** because a test_compile did reveal that the linker did not use it for"
-		    echo "*** its dynamic dependency list that programs get resolved with at runtime."
-		  fi
-		fi
-		;;
-	      *)
-		func_append newdeplibs " $i"
-		;;
-	      esac
-	    done
-	  else
-	    # Error occurred in the first compile.  Let's try to salvage
-	    # the situation: Compile a separate program for each library.
-	    for i in $deplibs; do
-	      case $i in
-	      -l*)
-		func_stripname -l '' "$i"
-		name=$func_stripname_result
-		$opt_dry_run || $RM conftest
-		if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
-		  ldd_output=`ldd conftest`
-		  if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
-		    case " $predeps $postdeps " in
-		    *" $i "*)
-		      func_append newdeplibs " $i"
-		      i=""
-		      ;;
-		    esac
-		  fi
-		  if test -n "$i" ; then
-		    libname=`eval "\\$ECHO \"$libname_spec\""`
-		    deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
-		    set dummy $deplib_matches; shift
-		    deplib_match=$1
-		    if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
-		      func_append newdeplibs " $i"
-		    else
-		      droppeddeps=yes
-		      echo
-		      $ECHO "*** Warning: dynamic linker does not accept needed library $i."
-		      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 a test_compile did reveal that the linker did not use this one"
-		      echo "*** as a dynamic dependency that programs can get resolved with at runtime."
-		    fi
-		  fi
-		else
-		  droppeddeps=yes
-		  echo
-		  $ECHO "*** Warning!  Library $i is needed by this library but I was not able to"
-		  echo "*** make it link in!  You will probably need to install it or some"
-		  echo "*** library that it depends on before this library will be fully"
-		  echo "*** functional.  Installing it before continuing would be even better."
-		fi
-		;;
-	      *)
-		func_append newdeplibs " $i"
-		;;
-	      esac
-	    done
-	  fi
-	  ;;
-	file_magic*)
-	  set dummy $deplibs_check_method; shift
-	  file_magic_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 "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; 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\""`
-		if test -n "$file_magic_glob"; then
-		  libnameglob=`func_echo_all "$libname" | $SED -e $file_magic_glob`
-		else
-		  libnameglob=$libname
-		fi
-		test "$want_nocaseglob" = yes && nocaseglob=`shopt -p nocaseglob`
-		for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
-		  if test "$want_nocaseglob" = yes; then
-		    shopt -s nocaseglob
-		    potential_libs=`ls $i/$libnameglob[.-]* 2>/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 "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; 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 "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; 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 "X$deplibs_check_method" = "Xnone"; 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 "$droppeddeps" = yes; then
-	  if test "$module" = yes; 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 "$build_old_libs" = no; 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 "$allow_undefined" = no; 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 "$build_old_libs" = no; 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 "$build_libtool_libs" = yes; then
-	if test "$hardcode_into_libs" = yes; then
-	  # Hardcode the library paths
-	  hardcode_libdirs=
-	  dep_rpath=
-	  rpath="$finalize_rpath"
-	  test "$opt_mode" != relink && 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"
-	    if test -n "$hardcode_libdir_flag_spec_ld"; then
-	      eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\"
-	    else
-	      eval dep_rpath=\"$hardcode_libdir_flag_spec\"
-	    fi
-	  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 "$opt_mode" != relink && 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
-	    if test "x`$SED 1q $export_symbols`" != xEXPORTS; then
-	      # 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
-	  fi
-	  ;;
-	esac
-
-	# Prepare the list of exported symbols
-	if test -z "$export_symbols"; then
-	  if test "$always_export_symbols" = yes || 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 "$try_normal_branch" = yes \
-		 && { 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 "X$skipped_export" != "X:"; 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 "X$skipped_export" != "X:" && 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 "$compiler_needs_object" = yes &&
-	    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 "$thread_safe" = yes && 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 "$opt_mode" = relink; 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 "$module" = yes && 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 "X$skipped_export" != "X:" &&
-	   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 "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; 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 "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then
-	    output=${output_objdir}/${output_la}.lnk
-	    func_verbose "creating linker input file list: $output"
-	    : > $output
-	    set x $save_libobjs
-	    shift
-	    firstobj=
-	    if test "$compiler_needs_object" = yes; 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 "X$objlist" = X ||
-		   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 "$k" -eq 1 ; 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
-
-	    if ${skipped_export-false}; then
-	      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
-	    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_silent || {
-		  func_quote_for_expand "$cmd"
-		  eval "func_echo $func_quote_for_expand_result"
-	      }
-	      $opt_dry_run || eval "$cmd" || {
-		lt_exit=$?
-
-		# Restore the uninstalled library and exit
-		if test "$opt_mode" = relink; 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
-
-          if ${skipped_export-false}; then
-	    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
-	  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 "$module" = yes && 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="$save_ifs"
-	  eval cmd=\"$cmd\"
-	  $opt_silent || {
-	    func_quote_for_expand "$cmd"
-	    eval "func_echo $func_quote_for_expand_result"
-	  }
-	  $opt_dry_run || eval "$cmd" || {
-	    lt_exit=$?
-
-	    # Restore the uninstalled library and exit
-	    if test "$opt_mode" = relink; 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 "$opt_mode" = relink; 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 "$module" = yes || test "$export_dynamic" = yes; then
-	  # On all known operating systems, these are identical.
-	  dlname="$soname"
-	fi
-      fi
-      ;;
-
-    obj)
-      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; 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=
-      # reload_cmds runs $LD directly, so let us get rid of
-      # -Wl from whole_archive_flag_spec and hope we can get by with
-      # turning comma into space..
-      wl=
-
-      if test -n "$convenience"; then
-	if test -n "$whole_archive_flag_spec"; then
-	  eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
-	  reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'`
-	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 "$build_libtool_libs" != yes && 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" ### testsuite: skip nested quoting test
-
-      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
-
-      if test "$build_libtool_libs" != yes; then
-	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
-      fi
-
-      if test -n "$pic_flag" || test "$pic_mode" != default; 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"
-
-      test "$preload" = yes \
-        && test "$dlopen_support" = unknown \
-	&& test "$dlopen_self" = unknown \
-	&& test "$dlopen_self_static" = unknown && \
-	  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 "$tagname" = CXX ; 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 "$build_old_libs" = yes; 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@" "no"
-
-      # template prelinking step
-      if test -n "$prelink_cmds"; then
-	func_execute_cmds "$prelink_cmds" 'exit $?'
-      fi
-
-      wrappers_required=yes
-      case $host in
-      *cegcc* | *mingw32ce*)
-        # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway.
-        wrappers_required=no
-        ;;
-      *cygwin* | *mingw* )
-        if test "$build_libtool_libs" != yes; then
-          wrappers_required=no
-        fi
-        ;;
-      *)
-        if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
-          wrappers_required=no
-        fi
-        ;;
-      esac
-      if test "$wrappers_required" = no; then
-	# 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
-      fi
-
-      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 "$no_install" = yes; 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
-
-      if test "$hardcode_action" = relink; then
-	# 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"
-      else
-	if test "$fast_install" != no; then
-	  link_command="$finalize_var$compile_command$finalize_rpath"
-	  if test "$fast_install" = yes; then
-	    relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'`
-	  else
-	    # fast_install is set to needless
-	    relink_command=
-	  fi
-	else
-	  link_command="$compile_var$compile_command$compile_rpath"
-	  relink_command="$finalize_var$finalize_command$finalize_rpath"
-	fi
-      fi
-
-      # 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_for_eval "$var_value"
-	    relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
-	  fi
-	done
-	relink_command="(cd `pwd`; $relink_command)"
-	relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
-      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
-
-      if test "$build_libtool_libs" = convenience; then
-	oldobjs="$libobjs_save $symfileobj"
-	addlibs="$convenience"
-	build_libtool_libs=no
-      else
-	if test "$build_libtool_libs" = module; then
-	  oldobjs="$libobjs_save"
-	  build_libtool_libs=no
-	else
-	  oldobjs="$old_deplibs $non_pic_objects"
-	  if test "$preload" = yes && test -f "$symfileobj"; then
-	    func_append oldobjs " $symfileobj"
-	  fi
-	fi
-	addlibs="$old_convenience"
-      fi
-
-      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 "$build_libtool_libs" = yes; 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
-	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 "X$oldobjs" = "X" ; 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 "$build_old_libs" = yes && 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_for_eval "$var_value"
-	  relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
-	fi
-      done
-      # Quote the link command for shipping.
-      relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
-      relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
-      if test "$hardcode_automatic" = yes ; then
-	relink_command=
-      fi
-
-      # Only create the output if not a dry run.
-      $opt_dry_run || {
-	for installed in no yes; do
-	  if test "$installed" = yes; 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"
-		eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
-		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 "x$bindir" != x ;
-	      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$TIMESTAMP) $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 can not 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 "$installed" = no && test "$need_relink" = yes; 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
-}
-
-{ test "$opt_mode" = link || test "$opt_mode" = relink; } &&
-    func_mode_link ${1+"$@"}
-
-
-# func_mode_uninstall arg...
-func_mode_uninstall ()
-{
-    $opt_debug
-    RM="$nonopt"
-    files=
-    rmforce=
-    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=yes ;;
-      -*) 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 "X$dir" = X.; then
-	odir="$objdir"
-      else
-	odir="$dir/$objdir"
-      fi
-      func_basename "$file"
-      name="$func_basename_result"
-      test "$opt_mode" = uninstall && odir="$dir"
-
-      # Remember odir for removal later, being careful to avoid duplicates
-      if test "$opt_mode" = clean; 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 test "$rmforce" = yes; 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" 'test "$rmforce" = yes || exit_status=1'
-	    fi
-
-	    if test -n "$old_library"; then
-	      # Do each command in the old_postuninstall commands.
-	      func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || 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 "$pic_object" != none; 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 "$non_pic_object" != none; then
-	    func_append rmfiles " $dir/$non_pic_object"
-	  fi
-	fi
-	;;
-
-      *)
-	if test "$opt_mode" = clean ; 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 "$fast_install" = yes && 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
-}
-
-{ test "$opt_mode" = uninstall || test "$opt_mode" = clean; } &&
-    func_mode_uninstall ${1+"$@"}
-
-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
-# in which 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:
-# vi:sw=2
-
diff --git a/src/other/ares/m4/cares-compilers.m4 b/src/other/ares/m4/cares-compilers.m4
deleted file mode 100644
index 3a57389..0000000
--- a/src/other/ares/m4/cares-compilers.m4
+++ /dev/null
@@ -1,1551 +0,0 @@
-#***************************************************************************
-# $Id$
-#
-# Copyright (C) 2009-2010 by Daniel Stenberg et al
-#
-# Permission to use, copy, modify, and distribute this software and its
-# documentation for any purpose and without fee is hereby granted, provided
-# that the above copyright notice appear in all copies and that both that
-# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of M.I.T. not be used in advertising or
-# publicity pertaining to distribution of the software without specific,
-# written prior permission.  M.I.T. makes no representations about the
-# suitability of this software for any purpose.  It is provided "as is"
-# without express or implied warranty.
-#
-#***************************************************************************
-
-# File version for 'aclocal' use. Keep it a single number.
-# serial 65
-
-
-dnl CARES_CHECK_COMPILER
-dnl -------------------------------------------------
-dnl Verify if the C compiler being used is known.
-
-AC_DEFUN([CARES_CHECK_COMPILER], [
-  AC_BEFORE([$0],[CARES_CHECK_NO_UNDEFINED])dnl
-  #
-  compiler_id="unknown"
-  compiler_num="0"
-  #
-  flags_dbg_all="unknown"
-  flags_dbg_yes="unknown"
-  flags_dbg_off="unknown"
-  flags_opt_all="unknown"
-  flags_opt_yes="unknown"
-  flags_opt_off="unknown"
-  #
-  CARES_CHECK_COMPILER_DEC_C
-  CARES_CHECK_COMPILER_HPUX_C
-  CARES_CHECK_COMPILER_IBM_C
-  CARES_CHECK_COMPILER_INTEL_C
-  CARES_CHECK_COMPILER_CLANG
-  CARES_CHECK_COMPILER_GNU_C
-  CARES_CHECK_COMPILER_LCC
-  CARES_CHECK_COMPILER_SGI_MIPSPRO_C
-  CARES_CHECK_COMPILER_SGI_MIPS_C
-  CARES_CHECK_COMPILER_SUNPRO_C
-  CARES_CHECK_COMPILER_TINY_C
-  CARES_CHECK_COMPILER_WATCOM_C
-  #
-  if test "$compiler_id" = "unknown"; then
-  cat <<_EOF 1>&2
-***
-*** Warning: This configure script does not have information about the
-*** compiler you are using, relative to the flags required to enable or
-*** disable generation of debug info, optimization options or warnings.
-***
-*** Whatever settings are present in CFLAGS will be used for this run.
-***
-*** If you wish to help the c-ares project to better support your compiler
-*** you can report this and the required info on the c-ares development
-*** mailing list: http://cool.haxx.se/mailman/listinfo/c-ares/
-***
-_EOF
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_CLANG
-dnl -------------------------------------------------
-dnl Verify if compiler being used is clang.
-
-AC_DEFUN([CARES_CHECK_COMPILER_CLANG], [
-  AC_BEFORE([$0],[CARES_CHECK_COMPILER_GNU_C])dnl
-  AC_MSG_CHECKING([if compiler is clang])
-  CURL_CHECK_DEF([__clang__], [], [silent])
-  if test "$curl_cv_have_def___clang__" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="CLANG"
-    clangver=`$CC -dumpversion`
-    clangvhi=`echo $clangver | cut -d . -f1`
-    clangvlo=`echo $clangver | cut -d . -f2`
-    compiler_num=`(expr $clangvhi "*" 100 + $clangvlo) 2>/dev/null`
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_all="$flags_dbg_all -ggdb"
-    flags_dbg_all="$flags_dbg_all -gstabs"
-    flags_dbg_all="$flags_dbg_all -gstabs+"
-    flags_dbg_all="$flags_dbg_all -gcoff"
-    flags_dbg_all="$flags_dbg_all -gxcoff"
-    flags_dbg_all="$flags_dbg_all -gdwarf-2"
-    flags_dbg_all="$flags_dbg_all -gvms"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -Os -O3 -O4"
-    flags_opt_yes="-Os"
-    flags_opt_off="-O0"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_DEC_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is DEC C.
-
-AC_DEFUN([CARES_CHECK_COMPILER_DEC_C], [
-  AC_MSG_CHECKING([if compiler is DEC/Compaq/HP C])
-  CURL_CHECK_DEF([__DECC], [], [silent])
-  CURL_CHECK_DEF([__DECC_VER], [], [silent])
-  if test "$curl_cv_have_def___DECC" = "yes" &&
-    test "$curl_cv_have_def___DECC_VER" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="DEC_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g2"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -O4"
-    flags_opt_yes="-O1"
-    flags_opt_off="-O0"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_GNU_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is GNU C.
-
-AC_DEFUN([CARES_CHECK_COMPILER_GNU_C], [
-  AC_REQUIRE([CARES_CHECK_COMPILER_INTEL_C])dnl
-  AC_REQUIRE([CARES_CHECK_COMPILER_CLANG])dnl
-  AC_MSG_CHECKING([if compiler is GNU C])
-  CURL_CHECK_DEF([__GNUC__], [], [silent])
-  if test "$curl_cv_have_def___GNUC__" = "yes" &&
-    test "$compiler_id" = "unknown"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="GNU_C"
-    gccver=`$CC -dumpversion`
-    gccvhi=`echo $gccver | cut -d . -f1`
-    gccvlo=`echo $gccver | cut -d . -f2`
-    compiler_num=`(expr $gccvhi "*" 100 + $gccvlo) 2>/dev/null`
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_all="$flags_dbg_all -ggdb"
-    flags_dbg_all="$flags_dbg_all -gstabs"
-    flags_dbg_all="$flags_dbg_all -gstabs+"
-    flags_dbg_all="$flags_dbg_all -gcoff"
-    flags_dbg_all="$flags_dbg_all -gxcoff"
-    flags_dbg_all="$flags_dbg_all -gdwarf-2"
-    flags_dbg_all="$flags_dbg_all -gvms"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -Os"
-    flags_opt_yes="-O2"
-    flags_opt_off="-O0"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_HPUX_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is HP-UX C.
-
-AC_DEFUN([CARES_CHECK_COMPILER_HPUX_C], [
-  AC_MSG_CHECKING([if compiler is HP-UX C])
-  CURL_CHECK_DEF([__HP_cc], [], [silent])
-  if test "$curl_cv_have_def___HP_cc" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="HP_UX_C"
-    flags_dbg_all="-g -s"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-s"
-    flags_opt_all="-O +O0 +O1 +O2 +O3 +O4"
-    flags_opt_yes="+O2"
-    flags_opt_off="+O0"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_IBM_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is IBM C.
-
-AC_DEFUN([CARES_CHECK_COMPILER_IBM_C], [
-  AC_MSG_CHECKING([if compiler is IBM C])
-  CURL_CHECK_DEF([__IBMC__], [], [silent])
-  if test "$curl_cv_have_def___IBMC__" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="IBM_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g"
-    flags_dbg_off=""
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -O4 -O5"
-    flags_opt_all="$flags_opt_all -qnooptimize"
-    flags_opt_all="$flags_opt_all -qoptimize=0"
-    flags_opt_all="$flags_opt_all -qoptimize=1"
-    flags_opt_all="$flags_opt_all -qoptimize=2"
-    flags_opt_all="$flags_opt_all -qoptimize=3"
-    flags_opt_all="$flags_opt_all -qoptimize=4"
-    flags_opt_all="$flags_opt_all -qoptimize=5"
-    flags_opt_yes="-O2"
-    flags_opt_off="-qnooptimize"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_INTEL_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is Intel C.
-
-AC_DEFUN([CARES_CHECK_COMPILER_INTEL_C], [
-  AC_BEFORE([$0],[CARES_CHECK_COMPILER_GNU_C])dnl
-  AC_MSG_CHECKING([if compiler is Intel C])
-  CURL_CHECK_DEF([__INTEL_COMPILER], [], [silent])
-  if test "$curl_cv_have_def___INTEL_COMPILER" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_num="$curl_cv_def___INTEL_COMPILER"
-    CURL_CHECK_DEF([__unix__], [], [silent])
-    if test "$curl_cv_have_def___unix__" = "yes"; then
-      compiler_id="INTEL_UNIX_C"
-      flags_dbg_all="-g -g0"
-      flags_dbg_yes="-g"
-      flags_dbg_off="-g0"
-      flags_opt_all="-O -O0 -O1 -O2 -O3 -Os"
-      flags_opt_yes="-O2"
-      flags_opt_off="-O0"
-    else
-      compiler_id="INTEL_WINDOWS_C"
-      flags_dbg_all="/ZI /Zi /zI /zi /ZD /Zd /zD /zd /Z7 /z7 /Oy /Oy-"
-      flags_dbg_all="$flags_dbg_all /debug"
-      flags_dbg_all="$flags_dbg_all /debug:none"
-      flags_dbg_all="$flags_dbg_all /debug:minimal"
-      flags_dbg_all="$flags_dbg_all /debug:partial"
-      flags_dbg_all="$flags_dbg_all /debug:full"
-      flags_dbg_all="$flags_dbg_all /debug:semantic_stepping"
-      flags_dbg_all="$flags_dbg_all /debug:extended"
-      flags_dbg_yes="/Zi /Oy-"
-      flags_dbg_off="/debug:none /Oy-"
-      flags_opt_all="/O /O0 /O1 /O2 /O3 /Od /Og /Og- /Oi /Oi-"
-      flags_opt_yes="/O2"
-      flags_opt_off="/Od"
-    fi
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_LCC
-dnl -------------------------------------------------
-dnl Verify if compiler being used is LCC.
-
-AC_DEFUN([CARES_CHECK_COMPILER_LCC], [
-  AC_MSG_CHECKING([if compiler is LCC])
-  CURL_CHECK_DEF([__LCC__], [], [silent])
-  if test "$curl_cv_have_def___LCC__" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="LCC"
-    flags_dbg_all="-g"
-    flags_dbg_yes="-g"
-    flags_dbg_off=""
-    flags_opt_all=""
-    flags_opt_yes=""
-    flags_opt_off=""
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_SGI_MIPS_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is SGI MIPS C.
-
-AC_DEFUN([CARES_CHECK_COMPILER_SGI_MIPS_C], [
-  AC_REQUIRE([CARES_CHECK_COMPILER_SGI_MIPSPRO_C])dnl
-  AC_MSG_CHECKING([if compiler is SGI MIPS C])
-  CURL_CHECK_DEF([__GNUC__], [], [silent])
-  CURL_CHECK_DEF([__sgi], [], [silent])
-  if test "$curl_cv_have_def___GNUC__" = "no" &&
-    test "$curl_cv_have_def___sgi" = "yes" &&
-    test "$compiler_id" = "unknown"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="SGI_MIPS_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -Ofast"
-    flags_opt_yes="-O2"
-    flags_opt_off="-O0"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_SGI_MIPSPRO_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is SGI MIPSpro C.
-
-AC_DEFUN([CARES_CHECK_COMPILER_SGI_MIPSPRO_C], [
-  AC_BEFORE([$0],[CARES_CHECK_COMPILER_SGI_MIPS_C])dnl
-  AC_MSG_CHECKING([if compiler is SGI MIPSpro C])
-  CURL_CHECK_DEF([__GNUC__], [], [silent])
-  CURL_CHECK_DEF([_COMPILER_VERSION], [], [silent])
-  CURL_CHECK_DEF([_SGI_COMPILER_VERSION], [], [silent])
-  if test "$curl_cv_have_def___GNUC__" = "no" &&
-    (test "$curl_cv_have_def__SGI_COMPILER_VERSION" = "yes" ||
-     test "$curl_cv_have_def__COMPILER_VERSION" = "yes"); then
-    AC_MSG_RESULT([yes])
-    compiler_id="SGI_MIPSPRO_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -Ofast"
-    flags_opt_yes="-O2"
-    flags_opt_off="-O0"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_SUNPRO_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is SunPro C.
-
-AC_DEFUN([CARES_CHECK_COMPILER_SUNPRO_C], [
-  AC_MSG_CHECKING([if compiler is SunPro C])
-  CURL_CHECK_DEF([__SUNPRO_C], [], [silent])
-  if test "$curl_cv_have_def___SUNPRO_C" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="SUNPRO_C"
-    flags_dbg_all="-g -s"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-s"
-    flags_opt_all="-O -xO -xO1 -xO2 -xO3 -xO4 -xO5"
-    flags_opt_yes="-xO2"
-    flags_opt_off=""
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_TINY_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is Tiny C.
-
-AC_DEFUN([CARES_CHECK_COMPILER_TINY_C], [
-  AC_MSG_CHECKING([if compiler is Tiny C])
-  CURL_CHECK_DEF([__TINYC__], [], [silent])
-  if test "$curl_cv_have_def___TINYC__" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="TINY_C"
-    flags_dbg_all="-g -b"
-    flags_dbg_yes="-g"
-    flags_dbg_off=""
-    flags_opt_all=""
-    flags_opt_yes=""
-    flags_opt_off=""
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_WATCOM_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is Watcom C.
-
-AC_DEFUN([CARES_CHECK_COMPILER_WATCOM_C], [
-  AC_MSG_CHECKING([if compiler is Watcom C])
-  CURL_CHECK_DEF([__WATCOMC__], [], [silent])
-  if test "$curl_cv_have_def___WATCOMC__" = "yes"; then
-    AC_MSG_RESULT([yes])
-    CURL_CHECK_DEF([__UNIX__], [], [silent])
-    if test "$curl_cv_have_def___UNIX__" = "yes"; then
-      compiler_id="WATCOM_UNIX_C"
-      flags_dbg_all="-g1 -g1+ -g2 -g3"
-      flags_dbg_yes="-g2"
-      flags_dbg_off=""
-      flags_opt_all="-O0 -O1 -O2 -O3"
-      flags_opt_yes="-O2"
-      flags_opt_off="-O0"
-    else
-      compiler_id="WATCOM_WINDOWS_C"
-      flags_dbg_all=""
-      flags_dbg_yes=""
-      flags_dbg_off=""
-      flags_opt_all=""
-      flags_opt_yes=""
-      flags_opt_off=""
-    fi
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_CONVERT_INCLUDE_TO_ISYSTEM
-dnl -------------------------------------------------
-dnl Changes standard include paths present in CFLAGS
-dnl and CPPFLAGS into isystem include paths. This is
-dnl done to prevent GNUC from generating warnings on
-dnl headers from these locations, although on ancient
-dnl GNUC versions these warnings are not silenced.
-
-AC_DEFUN([CARES_CONVERT_INCLUDE_TO_ISYSTEM], [
-  AC_REQUIRE([CARES_SHFUNC_SQUEEZE])dnl
-  tmp_has_include="no"
-  tmp_chg_FLAGS="$CFLAGS"
-  for word1 in $tmp_chg_FLAGS; do
-    case "$word1" in
-      -I*)
-        tmp_has_include="yes"
-        ;;
-    esac
-  done
-  if test "$tmp_has_include" = "yes"; then
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/^-I/ -isystem /g'`
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/ -I/ -isystem /g'`
-    CFLAGS="$tmp_chg_FLAGS"
-    squeeze CFLAGS
-  fi
-  tmp_has_include="no"
-  tmp_chg_FLAGS="$CPPFLAGS"
-  for word1 in $tmp_chg_FLAGS; do
-    case "$word1" in
-      -I*)
-        tmp_has_include="yes"
-        ;;
-    esac
-  done
-  if test "$tmp_has_include" = "yes"; then
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/^-I/ -isystem /g'`
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/ -I/ -isystem /g'`
-    CPPFLAGS="$tmp_chg_FLAGS"
-    squeeze CPPFLAGS
-  fi
-])
-
-
-dnl CARES_COMPILER_WORKS_IFELSE ([ACTION-IF-WORKS], [ACTION-IF-NOT-WORKS])
-dnl -------------------------------------------------
-dnl Verify if the C compiler seems to work with the
-dnl settings that are 'active' at the time the test
-dnl is performed.
-
-AC_DEFUN([CARES_COMPILER_WORKS_IFELSE], [
-  dnl compilation capability verification
-  tmp_compiler_works="unknown"
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-      int i = 1;
-      return i;
-    ]])
-  ],[
-    tmp_compiler_works="yes"
-  ],[
-    tmp_compiler_works="no"
-    echo " " >&6
-    sed 's/^/cc-fail: /' conftest.err >&6
-    echo " " >&6
-  ])
-  dnl linking capability verification
-  if test "$tmp_compiler_works" = "yes"; then
-    AC_LINK_IFELSE([
-      AC_LANG_PROGRAM([[
-      ]],[[
-        int i = 1;
-        return i;
-      ]])
-    ],[
-      tmp_compiler_works="yes"
-    ],[
-      tmp_compiler_works="no"
-      echo " " >&6
-      sed 's/^/link-fail: /' conftest.err >&6
-      echo " " >&6
-    ])
-  fi
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tmp_compiler_works" = "yes"; then
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-#       ifdef __STDC__
-#         include <stdlib.h>
-#       endif
-      ]],[[
-        int i = 0;
-        exit(i);
-      ]])
-    ],[
-      tmp_compiler_works="yes"
-    ],[
-      tmp_compiler_works="no"
-      echo " " >&6
-      echo "run-fail: test program exited with status $ac_status" >&6
-      echo " " >&6
-    ])
-  fi
-  dnl branch upon test result
-  if test "$tmp_compiler_works" = "yes"; then
-  ifelse($1,,:,[$1])
-  ifelse($2,,,[else
-    $2])
-  fi
-])
-
-
-dnl CARES_SET_COMPILER_BASIC_OPTS
-dnl -------------------------------------------------
-dnl Sets compiler specific options/flags which do not
-dnl depend on configure's debug, optimize or warnings
-dnl options.
-
-AC_DEFUN([CARES_SET_COMPILER_BASIC_OPTS], [
-  AC_REQUIRE([CARES_CHECK_COMPILER])dnl
-  AC_REQUIRE([CARES_SHFUNC_SQUEEZE])dnl
-  #
-  if test "$compiler_id" != "unknown"; then
-    #
-    if test "$compiler_id" = "GNU_C" ||
-      test "$compiler_id" = "CLANG"; then
-      CARES_CONVERT_INCLUDE_TO_ISYSTEM
-    fi
-    #
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS=""
-    tmp_CFLAGS=""
-    #
-    case "$compiler_id" in
-        #
-      CLANG)
-        #
-        dnl Disable warnings for unused arguments, otherwise clang will
-        dnl warn about compile-time arguments used during link-time, like
-        dnl -O and -g and -pedantic.
-        tmp_CFLAGS="$tmp_CFLAGS -Qunused-arguments"
-        ;;
-        #
-      DEC_C)
-        #
-        dnl Select strict ANSI C compiler mode
-        tmp_CFLAGS="$tmp_CFLAGS -std1"
-        dnl Turn off optimizer ANSI C aliasing rules
-        tmp_CFLAGS="$tmp_CFLAGS -noansi_alias"
-        dnl Generate warnings for missing function prototypes
-        tmp_CFLAGS="$tmp_CFLAGS -warnprotos"
-        dnl Change some warnings into fatal errors
-        tmp_CFLAGS="$tmp_CFLAGS -msg_fatal toofewargs,toomanyargs"
-        ;;
-        #
-      GNU_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      HP_UX_C)
-        #
-        dnl Disallow run-time dereferencing of null pointers
-        tmp_CFLAGS="$tmp_CFLAGS -z"
-        dnl Disable some remarks
-        dnl #4227: padding struct with n bytes to align member
-        dnl #4255: padding size of struct with n bytes to alignment boundary
-        tmp_CFLAGS="$tmp_CFLAGS +W 4227,4255"
-        ;;
-        #
-      IBM_C)
-        #
-        dnl Ensure that compiler optimizations are always thread-safe.
-        tmp_CFLAGS="$tmp_CFLAGS -qthreaded"
-        dnl Disable type based strict aliasing optimizations, using worst
-        dnl case aliasing assumptions when compiling. Type based aliasing
-        dnl would restrict the lvalues that could be safely used to access
-        dnl a data object.
-        tmp_CFLAGS="$tmp_CFLAGS -qnoansialias"
-        dnl Force compiler to stop after the compilation phase, without
-        dnl generating an object code file when compilation has errors.
-        tmp_CFLAGS="$tmp_CFLAGS -qhalt=e"
-        ;;
-        #
-      INTEL_UNIX_C)
-        #
-        dnl On unix this compiler uses gcc's header files, so
-        dnl we select ANSI C89 dialect plus GNU extensions.
-        tmp_CFLAGS="$tmp_CFLAGS -std=gnu89"
-        dnl Change some warnings into errors
-        dnl #140: too many arguments in function call
-        dnl #147: declaration is incompatible with 'previous one'
-        dnl #165: too few arguments in function call
-        dnl #266: function declared implicitly
-        tmp_CPPFLAGS="$tmp_CPPFLAGS -we 140,147,165,266"
-        dnl Disable some remarks
-        dnl #279: controlling expression is constant
-        dnl #981: operands are evaluated in unspecified order
-        dnl #1469: "cc" clobber ignored
-        tmp_CPPFLAGS="$tmp_CPPFLAGS -wd 279,981,1469"
-        ;;
-        #
-      INTEL_WINDOWS_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      LCC)
-        #
-        dnl Disallow run-time dereferencing of null pointers
-        tmp_CFLAGS="$tmp_CFLAGS -n"
-        ;;
-        #
-      SGI_MIPS_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      SGI_MIPSPRO_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      SUNPRO_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      TINY_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      WATCOM_UNIX_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      WATCOM_WINDOWS_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-    esac
-    #
-    squeeze tmp_CPPFLAGS
-    squeeze tmp_CFLAGS
-    #
-    if test ! -z "$tmp_CFLAGS" || test ! -z "$tmp_CPPFLAGS"; then
-      AC_MSG_CHECKING([if compiler accepts some basic options])
-      CPPFLAGS="$tmp_save_CPPFLAGS $tmp_CPPFLAGS"
-      CFLAGS="$tmp_save_CFLAGS $tmp_CFLAGS"
-      squeeze CPPFLAGS
-      squeeze CFLAGS
-      CARES_COMPILER_WORKS_IFELSE([
-        AC_MSG_RESULT([yes])
-        AC_MSG_NOTICE([compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS])
-      ],[
-        AC_MSG_RESULT([no])
-        AC_MSG_WARN([compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS])
-        dnl restore initial settings
-        CPPFLAGS="$tmp_save_CPPFLAGS"
-        CFLAGS="$tmp_save_CFLAGS"
-      ])
-    fi
-    #
-  fi
-])
-
-
-dnl CARES_SET_COMPILER_DEBUG_OPTS
-dnl -------------------------------------------------
-dnl Sets compiler specific options/flags which depend
-dnl on configure's debug option.
-
-AC_DEFUN([CARES_SET_COMPILER_DEBUG_OPTS], [
-  AC_REQUIRE([CARES_CHECK_OPTION_DEBUG])dnl
-  AC_REQUIRE([CARES_CHECK_COMPILER])dnl
-  AC_REQUIRE([CARES_SHFUNC_SQUEEZE])dnl
-  #
-  if test "$compiler_id" != "unknown"; then
-    #
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    #
-    tmp_options=""
-    tmp_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS="$CPPFLAGS"
-    CARES_VAR_STRIP([tmp_CFLAGS],[$flags_dbg_all])
-    CARES_VAR_STRIP([tmp_CPPFLAGS],[$flags_dbg_all])
-    #
-    if test "$want_debug" = "yes"; then
-      AC_MSG_CHECKING([if compiler accepts debug enabling options])
-      tmp_options="$flags_dbg_yes"
-    fi
-    if test "$want_debug" = "no"; then
-      AC_MSG_CHECKING([if compiler accepts debug disabling options])
-      tmp_options="$flags_dbg_off"
-    fi
-    #
-    CPPFLAGS="$tmp_CPPFLAGS"
-    CFLAGS="$tmp_CFLAGS $tmp_options"
-    squeeze CPPFLAGS
-    squeeze CFLAGS
-    CARES_COMPILER_WORKS_IFELSE([
-      AC_MSG_RESULT([yes])
-      AC_MSG_NOTICE([compiler options added: $tmp_options])
-    ],[
-      AC_MSG_RESULT([no])
-      AC_MSG_WARN([compiler options rejected: $tmp_options])
-      dnl restore initial settings
-      CPPFLAGS="$tmp_save_CPPFLAGS"
-      CFLAGS="$tmp_save_CFLAGS"
-    ])
-    #
-  fi
-])
-
-
-dnl CARES_SET_COMPILER_OPTIMIZE_OPTS
-dnl -------------------------------------------------
-dnl Sets compiler specific options/flags which depend
-dnl on configure's optimize option.
-
-AC_DEFUN([CARES_SET_COMPILER_OPTIMIZE_OPTS], [
-  AC_REQUIRE([CARES_CHECK_OPTION_OPTIMIZE])dnl
-  AC_REQUIRE([CARES_CHECK_COMPILER])dnl
-  AC_REQUIRE([CARES_SHFUNC_SQUEEZE])dnl
-  #
-  if test "$compiler_id" != "unknown"; then
-    #
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    #
-    tmp_options=""
-    tmp_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS="$CPPFLAGS"
-    honor_optimize_option="yes"
-    #
-    dnl If optimization request setting has not been explicitly specified,
-    dnl it has been derived from the debug setting and initially assumed.
-    dnl This initially assumed optimizer setting will finally be ignored
-    dnl if CFLAGS or CPPFLAGS already hold optimizer flags. This implies
-    dnl that an initially assumed optimizer setting might not be honored.
-    #
-    if test "$want_optimize" = "assume_no" ||
-       test "$want_optimize" = "assume_yes"; then
-      AC_MSG_CHECKING([if compiler optimizer assumed setting might be used])
-      CARES_VAR_MATCH_IFELSE([tmp_CFLAGS],[$flags_opt_all],[
-        honor_optimize_option="no"
-      ])
-      CARES_VAR_MATCH_IFELSE([tmp_CPPFLAGS],[$flags_opt_all],[
-        honor_optimize_option="no"
-      ])
-      AC_MSG_RESULT([$honor_optimize_option])
-      if test "$honor_optimize_option" = "yes"; then
-        if test "$want_optimize" = "assume_yes"; then
-          want_optimize="yes"
-        fi
-        if test "$want_optimize" = "assume_no"; then
-          want_optimize="no"
-        fi
-      fi
-    fi
-    #
-    if test "$honor_optimize_option" = "yes"; then
-      CARES_VAR_STRIP([tmp_CFLAGS],[$flags_opt_all])
-      CARES_VAR_STRIP([tmp_CPPFLAGS],[$flags_opt_all])
-      if test "$want_optimize" = "yes"; then
-        AC_MSG_CHECKING([if compiler accepts optimizer enabling options])
-        tmp_options="$flags_opt_yes"
-      fi
-      if test "$want_optimize" = "no"; then
-        AC_MSG_CHECKING([if compiler accepts optimizer disabling options])
-        tmp_options="$flags_opt_off"
-      fi
-      CPPFLAGS="$tmp_CPPFLAGS"
-      CFLAGS="$tmp_CFLAGS $tmp_options"
-      squeeze CPPFLAGS
-      squeeze CFLAGS
-      CARES_COMPILER_WORKS_IFELSE([
-        AC_MSG_RESULT([yes])
-        AC_MSG_NOTICE([compiler options added: $tmp_options])
-      ],[
-        AC_MSG_RESULT([no])
-        AC_MSG_WARN([compiler options rejected: $tmp_options])
-        dnl restore initial settings
-        CPPFLAGS="$tmp_save_CPPFLAGS"
-        CFLAGS="$tmp_save_CFLAGS"
-      ])
-    fi
-    #
-  fi
-])
-
-
-dnl CARES_SET_COMPILER_WARNING_OPTS
-dnl -------------------------------------------------
-dnl Sets compiler options/flags which depend on
-dnl configure's warnings given option.
-
-AC_DEFUN([CARES_SET_COMPILER_WARNING_OPTS], [
-  AC_REQUIRE([CARES_CHECK_OPTION_WARNINGS])dnl
-  AC_REQUIRE([CARES_CHECK_COMPILER])dnl
-  AC_REQUIRE([CARES_SHFUNC_SQUEEZE])dnl
-  #
-  if test "$compiler_id" != "unknown"; then
-    #
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS=""
-    tmp_CFLAGS=""
-    #
-    case "$compiler_id" in
-        #
-      CLANG)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl All versions of clang support the same warnings as at least
-          dnl gcc 4.2.1 except -Wunused.
-          tmp_CFLAGS="$tmp_CFLAGS -pedantic"
-          tmp_CFLAGS="$tmp_CFLAGS -Wall -Wextra"
-          tmp_CFLAGS="$tmp_CFLAGS -Wpointer-arith -Wwrite-strings"
-          tmp_CFLAGS="$tmp_CFLAGS -Wshadow"
-          tmp_CFLAGS="$tmp_CFLAGS -Winline -Wnested-externs"
-          tmp_CFLAGS="$tmp_CFLAGS -Wmissing-declarations"
-          tmp_CFLAGS="$tmp_CFLAGS -Wmissing-prototypes"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-long-long"
-          tmp_CFLAGS="$tmp_CFLAGS -Wfloat-equal"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-multichar -Wsign-compare"
-          tmp_CFLAGS="$tmp_CFLAGS -Wundef"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-format-nonliteral"
-          tmp_CFLAGS="$tmp_CFLAGS -Wendif-labels -Wstrict-prototypes"
-          tmp_CFLAGS="$tmp_CFLAGS -Wdeclaration-after-statement"
-          tmp_CFLAGS="$tmp_CFLAGS -Wcast-align"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-system-headers"
-          tmp_CFLAGS="$tmp_CFLAGS -Wshorten-64-to-32"
-          #
-          dnl Only clang 1.1 or later
-          if test "$compiler_num" -ge "101"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wunused"
-          fi
-        fi
-        ;;
-        #
-      DEC_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Select a higher warning level than default level2
-          tmp_CFLAGS="$tmp_CFLAGS -msg_enable level3"
-        fi
-        ;;
-        #
-      GNU_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          #
-          dnl Do not enable -pedantic when cross-compiling with a gcc older
-          dnl than 3.0, to avoid warnings from third party system headers.
-          if test "x$cross_compiling" != "xyes" ||
-            test "$compiler_num" -ge "300"; then
-            tmp_CFLAGS="$tmp_CFLAGS -pedantic"
-          fi
-          #
-          dnl Set of options we believe *ALL* gcc versions support:
-          tmp_CFLAGS="$tmp_CFLAGS -Wall -W"
-          #
-          dnl Only gcc 1.4 or later
-          if test "$compiler_num" -ge "104"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wpointer-arith -Wwrite-strings"
-            dnl If not cross-compiling with a gcc older than 3.0
-            if test "x$cross_compiling" != "xyes" ||
-              test "$compiler_num" -ge "300"; then
-              tmp_CFLAGS="$tmp_CFLAGS -Wunused -Wshadow"
-            fi
-          fi
-          #
-          dnl Only gcc 2.7 or later
-          if test "$compiler_num" -ge "207"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Winline -Wnested-externs"
-            dnl If not cross-compiling with a gcc older than 3.0
-            if test "x$cross_compiling" != "xyes" ||
-              test "$compiler_num" -ge "300"; then
-              tmp_CFLAGS="$tmp_CFLAGS -Wmissing-declarations"
-              tmp_CFLAGS="$tmp_CFLAGS -Wmissing-prototypes"
-            fi
-          fi
-          #
-          dnl Only gcc 2.95 or later
-          if test "$compiler_num" -ge "295"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wno-long-long"
-          fi
-          #
-          dnl Only gcc 2.96 or later
-          if test "$compiler_num" -ge "296"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wfloat-equal"
-            tmp_CFLAGS="$tmp_CFLAGS -Wno-multichar -Wsign-compare"
-            dnl -Wundef used only if gcc is 2.96 or later since we get
-            dnl lots of "`_POSIX_C_SOURCE' is not defined" in system
-            dnl headers with gcc 2.95.4 on FreeBSD 4.9
-            tmp_CFLAGS="$tmp_CFLAGS -Wundef"
-          fi
-          #
-          dnl Only gcc 2.97 or later
-          if test "$compiler_num" -ge "297"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wno-format-nonliteral"
-          fi
-          #
-          dnl Only gcc 3.0 or later
-          if test "$compiler_num" -ge "300"; then
-            dnl -Wunreachable-code seems totally unreliable on my gcc 3.3.2 on
-            dnl on i686-Linux as it gives us heaps with false positives.
-            dnl Also, on gcc 4.0.X it is totally unbearable and complains all
-            dnl over making it unusable for generic purposes. Let's not use it.
-            tmp_CFLAGS="$tmp_CFLAGS"
-          fi
-          #
-          dnl Only gcc 3.3 or later
-          if test "$compiler_num" -ge "303"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wendif-labels -Wstrict-prototypes"
-          fi
-          #
-          dnl Only gcc 3.4 or later
-          if test "$compiler_num" -ge "304"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wdeclaration-after-statement"
-          fi
-          #
-          dnl Only gcc 4.3 or later
-          if test "$compiler_num" -ge "403"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wtype-limits -Wold-style-declaration"
-            tmp_CFLAGS="$tmp_CFLAGS -Wmissing-parameter-type -Wempty-body"
-            tmp_CFLAGS="$tmp_CFLAGS -Wclobbered -Wignored-qualifiers"
-          fi
-          #
-        fi
-        #
-        dnl Do not issue warnings for code in system include paths.
-        if test "$compiler_num" -ge "300"; then
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-system-headers"
-        else
-          dnl When cross-compiling with a gcc older than 3.0, disable
-          dnl some warnings triggered on third party system headers.
-          if test "x$cross_compiling" = "xyes"; then
-            if test "$compiler_num" -ge "104"; then
-              dnl gcc 1.4 or later
-              tmp_CFLAGS="$tmp_CFLAGS -Wno-unused -Wno-shadow"
-            fi
-            if test "$compiler_num" -ge "207"; then
-              dnl gcc 2.7 or later
-              tmp_CFLAGS="$tmp_CFLAGS -Wno-missing-declarations"
-              tmp_CFLAGS="$tmp_CFLAGS -Wno-missing-prototypes"
-            fi
-          fi
-        fi
-        ;;
-        #
-      HP_UX_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Issue all warnings
-          tmp_CFLAGS="$tmp_CFLAGS +w1"
-        fi
-        ;;
-        #
-      IBM_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      INTEL_UNIX_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          if test "$compiler_num" -gt "600"; then
-            dnl Show errors, warnings, and remarks
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wall -w2"
-            dnl Perform extra compile-time code checking
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wcheck"
-            dnl Warn on nested comments
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wcomment"
-            dnl Show warnings relative to deprecated features
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wdeprecated"
-            dnl Enable warnings for missing prototypes
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wmissing-prototypes"
-            dnl Enable warnings for 64-bit portability issues
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wp64"
-            dnl Enable warnings for questionable pointer arithmetic
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wpointer-arith"
-            dnl Check for function return typw issues
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wreturn-type"
-            dnl Warn on variable declarations hiding a previous one
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wshadow"
-            dnl Warn when a variable is used before initialized
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wuninitialized"
-            dnl Warn if a declared function is not used
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wunused-function"
-          fi
-        fi
-        dnl Disable using EBP register in optimizations
-        tmp_CFLAGS="$tmp_CFLAGS -fno-omit-frame-pointer"
-        dnl Disable use of ANSI C aliasing rules in optimizations
-        tmp_CFLAGS="$tmp_CFLAGS -fno-strict-aliasing"
-        dnl Value-safe optimizations on floating-point data
-        tmp_CFLAGS="$tmp_CFLAGS -fp-model precise"
-        dnl Only icc 10.0 or later
-        if test "$compiler_num" -ge "1000"; then
-          dnl Disable vectorizer diagnostic information
-          tmp_CFLAGS="$tmp_CFLAGS -vec-report0"
-        fi
-        ;;
-        #
-      INTEL_WINDOWS_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      LCC)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Highest warning level is double -A, next is single -A.
-          dnl Due to the big number of warnings these trigger on third
-          dnl party header files it is impractical for us to use any of
-          dnl them here. If you want them simply define it in CPPFLAGS.
-          tmp_CFLAGS="$tmp_CFLAGS"
-        fi
-        ;;
-        #
-      SGI_MIPS_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Perform stricter semantic and lint-like checks
-          tmp_CFLAGS="$tmp_CFLAGS -fullwarn"
-        fi
-        ;;
-        #
-      SGI_MIPSPRO_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Perform stricter semantic and lint-like checks
-          tmp_CFLAGS="$tmp_CFLAGS -fullwarn"
-          dnl Disable some remarks
-          dnl #1209: controlling expression is constant
-          tmp_CFLAGS="$tmp_CFLAGS -woff 1209"
-        fi
-        ;;
-        #
-      SUNPRO_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Perform stricter semantic and lint-like checks
-          tmp_CFLAGS="$tmp_CFLAGS -v"
-        fi
-        ;;
-        #
-      TINY_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Activate all warnings
-          tmp_CFLAGS="$tmp_CFLAGS -Wall"
-          dnl Make string constants be of type const char *
-          tmp_CFLAGS="$tmp_CFLAGS -Wwrite-strings"
-          dnl Warn use of unsupported GCC features ignored by TCC
-          tmp_CFLAGS="$tmp_CFLAGS -Wunsupported"
-        fi
-        ;;
-        #
-      WATCOM_UNIX_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Issue all warnings
-          tmp_CFLAGS="$tmp_CFLAGS -Wall -Wextra"
-        fi
-        ;;
-        #
-      WATCOM_WINDOWS_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-    esac
-    #
-    squeeze tmp_CPPFLAGS
-    squeeze tmp_CFLAGS
-    #
-    if test ! -z "$tmp_CFLAGS" || test ! -z "$tmp_CPPFLAGS"; then
-      AC_MSG_CHECKING([if compiler accepts strict warning options])
-      CPPFLAGS="$tmp_save_CPPFLAGS $tmp_CPPFLAGS"
-      CFLAGS="$tmp_save_CFLAGS $tmp_CFLAGS"
-      squeeze CPPFLAGS
-      squeeze CFLAGS
-      CARES_COMPILER_WORKS_IFELSE([
-        AC_MSG_RESULT([yes])
-        AC_MSG_NOTICE([compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS])
-      ],[
-        AC_MSG_RESULT([no])
-        AC_MSG_WARN([compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS])
-        dnl restore initial settings
-        CPPFLAGS="$tmp_save_CPPFLAGS"
-        CFLAGS="$tmp_save_CFLAGS"
-      ])
-    fi
-    #
-  fi
-])
-
-
-dnl CARES_SHFUNC_SQUEEZE
-dnl -------------------------------------------------
-dnl Declares a shell function squeeze() which removes
-dnl redundant whitespace out of a shell variable.
-
-AC_DEFUN([CARES_SHFUNC_SQUEEZE], [
-squeeze() {
-  _sqz_result=""
-  eval _sqz_input=\[$][$]1
-  for _sqz_token in $_sqz_input; do
-    if test -z "$_sqz_result"; then
-      _sqz_result="$_sqz_token"
-    else
-      _sqz_result="$_sqz_result $_sqz_token"
-    fi
-  done
-  eval [$]1=\$_sqz_result
-  return 0
-}
-])
-
-
-dnl CARES_CHECK_CURLDEBUG
-dnl -------------------------------------------------
-dnl Settings which depend on configure's curldebug given
-dnl option, and other additional configure pre-requisites.
-dnl Using the curl debug memory tracking feature in c-ares
-dnl is a hack that actually can only be used/enabled when
-dnl c-ares is built directly in curl's CVS tree, as a static
-dnl library or as a shared one on those systems on which
-dnl shared libraries support undefined symbols, along with
-dnl an equally configured libcurl.
-
-AC_DEFUN([CARES_CHECK_CURLDEBUG], [
-  AC_REQUIRE([CARES_SHFUNC_SQUEEZE])dnl
-  cares_builddir=`pwd`
-  supports_curldebug="unknown"
-  if test "$want_curldebug" = "yes"; then
-    if test "x$enable_shared" != "xno" &&
-      test "x$enable_shared" != "xyes"; then
-      AC_MSG_WARN([unknown enable_shared setting.])
-      supports_curldebug="no"
-    fi
-    if test "x$enable_static" != "xno" &&
-      test "x$enable_static" != "xyes"; then
-      AC_MSG_WARN([unknown enable_static setting.])
-      supports_curldebug="no"
-    fi
-    if test "$supports_curldebug" != "no"; then
-      if test "$enable_shared" = "yes" &&
-        test "$need_no_undefined" = "yes"; then
-        supports_curldebug="no"
-        AC_MSG_WARN([shared library does not support undefined symbols.])
-      fi
-      if test ! -f "$srcdir/../include/curl/curlbuild.h.dist"; then
-        AC_MSG_WARN([c-ares source not embedded in curl's CVS tree.])
-        supports_curldebug="no"
-      elif test ! -f "$srcdir/../include/curl/Makefile.in"; then
-        AC_MSG_WARN([curl's buildconf has not been run.])
-        supports_curldebug="no"
-      elif test ! -f "$cares_builddir/../libcurl.pc" ||
-        test ! -f "$cares_builddir/../include/curl/curlbuild.h"; then
-        AC_MSG_WARN([curl's configure has not been run.])
-        supports_curldebug="no"
-      elif test ! -f "$cares_builddir/../lib/curl_config.h"; then
-        AC_MSG_WARN([libcurl's curl_config.h is missing.])
-        supports_curldebug="no"
-      elif test ! -f "$cares_builddir/../config.status"; then
-        AC_MSG_WARN([curl's config.status is missing.])
-        supports_curldebug="no"
-      fi
-      if test "$supports_curldebug" != "no"; then
-        grep '^#define USE_ARES' "$cares_builddir/../lib/curl_config.h" >/dev/null
-        if test "$?" -ne "0"; then
-          AC_MSG_WARN([libcurl configured without c-ares support.])
-          supports_curldebug="no"
-        fi
-      fi
-      if test "$supports_curldebug" != "no"; then
-        grep 'CPPFLAGS.*CURLDEBUG' "$cares_builddir/../config.status" >/dev/null
-        if test "$?" -ne "0"; then
-          AC_MSG_WARN([libcurl configured without curldebug support.])
-          supports_curldebug="no"
-        fi
-      fi
-    fi
-  fi
-  #
-  if test "$want_curldebug" = "yes"; then
-    AC_MSG_CHECKING([if curl debug memory tracking can be enabled])
-    test "$supports_curldebug" = "no" || supports_curldebug="yes"
-    AC_MSG_RESULT([$supports_curldebug])
-    if test "$supports_curldebug" = "no"; then
-      AC_MSG_WARN([cannot enable curl debug memory tracking.])
-      want_curldebug="no"
-    fi
-  fi
-  #
-  if test "$want_curldebug" = "yes"; then
-    dnl TODO: Verify if the BUILDING_LIBCURL definition is still required.
-    AC_DEFINE(BUILDING_LIBCURL, 1, [when building as static part of libcurl])
-    CPPFLAGS="$CPPFLAGS -DCURLDEBUG"
-    squeeze CPPFLAGS
-  fi
-  #
-  if test "$want_debug" = "yes"; then
-    CPPFLAGS="$CPPFLAGS -DDEBUGBUILD"
-    squeeze CPPFLAGS
-  fi
-])
-
-
-dnl CARES_CHECK_NO_UNDEFINED
-dnl -------------------------------------------------
-dnl Checks if the -no-undefined flag must be used when
-dnl building shared libraries. This is required on all
-dnl systems on which shared libraries should not have
-dnl references to undefined symbols. This check should
-dnl not be done before AC-PROG-LIBTOOL.
-
-AC_DEFUN([CARES_CHECK_NO_UNDEFINED], [
-  AC_BEFORE([$0],[CARES_CHECK_CURLDEBUG])dnl
-  AC_MSG_CHECKING([if shared libraries need -no-undefined])
-  need_no_undefined="no"
-  case $host in
-    *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc* | *-*-aix*)
-      need_no_undefined="yes"
-      ;;
-  esac
-  if test "x$allow_undefined" = "xno"; then
-    need_no_undefined="yes"
-  elif test "x$allow_undefined_flag" = "xunsupported"; then
-    need_no_undefined="yes"
-  fi
-  AC_MSG_RESULT($need_no_undefined)
-])
-
-
-dnl CARES_CHECK_PROG_CC
-dnl -------------------------------------------------
-dnl Check for compiler program, preventing CFLAGS and
-dnl CPPFLAGS from being unexpectedly changed.
-
-AC_DEFUN([CARES_CHECK_PROG_CC], [
-  ac_save_CFLAGS="$CFLAGS"
-  ac_save_CPPFLAGS="$CPPFLAGS"
-  AC_PROG_CC
-  CFLAGS="$ac_save_CFLAGS"
-  CPPFLAGS="$ac_save_CPPFLAGS"
-])
-
-
-dnl CARES_CHECK_COMPILER_HALT_ON_ERROR
-dnl -------------------------------------------------
-dnl Verifies if the compiler actually halts after the
-dnl compilation phase without generating any object
-dnl code file, when the source compiles with errors.
-
-AC_DEFUN([CARES_CHECK_COMPILER_HALT_ON_ERROR], [
-  AC_MSG_CHECKING([if compiler halts on compilation errors])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-      force compilation error
-    ]])
-  ],[
-    AC_MSG_RESULT([no])
-    AC_MSG_ERROR([compiler does not halt on compilation errors.])
-  ],[
-    AC_MSG_RESULT([yes])
-  ])
-])
-
-
-dnl CARES_CHECK_COMPILER_ARRAY_SIZE_NEGATIVE
-dnl -------------------------------------------------
-dnl Verifies if the compiler actually halts after the
-dnl compilation phase without generating any object
-dnl code file, when the source code tries to define a
-dnl type for a constant array with negative dimension.
-
-AC_DEFUN([CARES_CHECK_COMPILER_ARRAY_SIZE_NEGATIVE], [
-  AC_REQUIRE([CARES_CHECK_COMPILER_HALT_ON_ERROR])dnl
-  AC_MSG_CHECKING([if compiler halts on negative sized arrays])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-      typedef char bad_t[sizeof(char) == sizeof(int) ? -1 : -1 ];
-    ]],[[
-      bad_t dummy;
-    ]])
-  ],[
-    AC_MSG_RESULT([no])
-    AC_MSG_ERROR([compiler does not halt on negative sized arrays.])
-  ],[
-    AC_MSG_RESULT([yes])
-  ])
-])
-
-
-dnl CARES_CHECK_COMPILER_STRUCT_MEMBER_SIZE
-dnl -------------------------------------------------
-dnl Verifies if the compiler is capable of handling the
-dnl size of a struct member, struct which is a function
-dnl result, as a compilation-time condition inside the
-dnl type definition of a constant array.
-
-AC_DEFUN([CARES_CHECK_COMPILER_STRUCT_MEMBER_SIZE], [
-  AC_REQUIRE([CARES_CHECK_COMPILER_ARRAY_SIZE_NEGATIVE])dnl
-  AC_MSG_CHECKING([if compiler struct member size checking works])
-  tst_compiler_check_one_works="unknown"
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-      struct mystruct {
-        int  mi;
-        char mc;
-        struct mystruct *next;
-      };
-      struct mystruct myfunc();
-      typedef char good_t1[sizeof(myfunc().mi) == sizeof(int)  ? 1 : -1 ];
-      typedef char good_t2[sizeof(myfunc().mc) == sizeof(char) ? 1 : -1 ];
-    ]],[[
-      good_t1 dummy1;
-      good_t2 dummy2;
-    ]])
-  ],[
-    tst_compiler_check_one_works="yes"
-  ],[
-    tst_compiler_check_one_works="no"
-    sed 's/^/cc-src: /' conftest.$ac_ext >&6
-    sed 's/^/cc-err: /' conftest.err >&6
-  ])
-  tst_compiler_check_two_works="unknown"
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-      struct mystruct {
-        int  mi;
-        char mc;
-        struct mystruct *next;
-      };
-      struct mystruct myfunc();
-      typedef char bad_t1[sizeof(myfunc().mi) != sizeof(int)  ? 1 : -1 ];
-      typedef char bad_t2[sizeof(myfunc().mc) != sizeof(char) ? 1 : -1 ];
-    ]],[[
-      bad_t1 dummy1;
-      bad_t2 dummy2;
-    ]])
-  ],[
-    tst_compiler_check_two_works="no"
-  ],[
-    tst_compiler_check_two_works="yes"
-  ])
-  if test "$tst_compiler_check_one_works" = "yes" &&
-    test "$tst_compiler_check_two_works" = "yes"; then
-    AC_MSG_RESULT([yes])
-  else
-    AC_MSG_RESULT([no])
-    AC_MSG_ERROR([compiler fails struct member size checking.])
-  fi
-])
-
-
-dnl CARES_CHECK_COMPILER_SYMBOL_HIDING
-dnl -------------------------------------------------
-dnl Verify if compiler supports hiding library internal symbols, setting
-dnl shell variable supports_symbol_hiding value as appropriate, as well as
-dnl variables symbol_hiding_CFLAGS and symbol_hiding_EXTERN when supported.
-
-AC_DEFUN([CARES_CHECK_COMPILER_SYMBOL_HIDING], [
-  AC_REQUIRE([CARES_CHECK_COMPILER])dnl
-  AC_BEFORE([$0],[CARES_CONFIGURE_SYMBOL_HIDING])dnl
-  AC_MSG_CHECKING([if compiler supports hiding library internal symbols])
-  supports_symbol_hiding="no"
-  symbol_hiding_CFLAGS=""
-  symbol_hiding_EXTERN=""
-  tmp_CFLAGS=""
-  tmp_EXTERN=""
-  case "$compiler_id" in
-    CLANG)
-      dnl All versions of clang support -fvisibility=
-      tmp_EXTERN="__attribute__ ((visibility (\"default\")))"
-      tmp_CFLAGS="-fvisibility=hidden"
-      supports_symbol_hiding="yes"
-      ;;
-    GNU_C)
-      dnl Only gcc 3.4 or later
-      if test "$compiler_num" -ge "304"; then
-        if $CC --help --verbose 2>&1 | grep fvisibility= > /dev/null ; then
-          tmp_EXTERN="__attribute__ ((visibility (\"default\")))"
-          tmp_CFLAGS="-fvisibility=hidden"
-          supports_symbol_hiding="yes"
-        fi
-      fi
-      ;;
-    INTEL_UNIX_C)
-      dnl Only icc 9.0 or later
-      if test "$compiler_num" -ge "900"; then
-        if $CC --help --verbose 2>&1 | grep fvisibility= > /dev/null ; then
-          tmp_save_CFLAGS="$CFLAGS"
-          CFLAGS="$CFLAGS -fvisibility=hidden"
-          AC_LINK_IFELSE([
-            AC_LANG_PROGRAM([[
-#             include <stdio.h>
-            ]],[[
-              printf("icc fvisibility bug test");
-            ]])
-          ],[
-            tmp_EXTERN="__attribute__ ((visibility (\"default\")))"
-            tmp_CFLAGS="-fvisibility=hidden"
-            supports_symbol_hiding="yes"
-          ])
-          CFLAGS="$tmp_save_CFLAGS"
-        fi
-      fi
-      ;;
-    SUNPRO_C)
-      if $CC 2>&1 | grep flags >/dev/null && $CC -flags | grep xldscope= >/dev/null ; then
-        tmp_EXTERN="__global"
-        tmp_CFLAGS="-xldscope=hidden"
-        supports_symbol_hiding="yes"
-      fi
-      ;;
-  esac
-  if test "$supports_symbol_hiding" = "yes"; then
-    tmp_save_CFLAGS="$CFLAGS"
-    CFLAGS="$tmp_save_CFLAGS $tmp_CFLAGS"
-    squeeze CFLAGS
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $tmp_EXTERN char *dummy(char *buff);
-        char *dummy(char *buff)
-        {
-         if(buff)
-           return ++buff;
-         else
-           return buff;
-        }
-      ]],[[
-        char b[16];
-        char *r = dummy(&b);
-        if(r)
-          return (int)*r;
-      ]])
-    ],[
-      supports_symbol_hiding="yes"
-    ],[
-      supports_symbol_hiding="no"
-      echo " " >&6
-      sed 's/^/cc-src: /' conftest.$ac_ext >&6
-      sed 's/^/cc-err: /' conftest.err >&6
-      echo " " >&6
-    ])
-    CFLAGS="$tmp_save_CFLAGS"
-  fi
-  if test "$supports_symbol_hiding" = "yes"; then
-    AC_MSG_RESULT([yes])
-    symbol_hiding_CFLAGS="$tmp_CFLAGS"
-    symbol_hiding_EXTERN="$tmp_EXTERN"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CARES_VAR_MATCH (VARNAME, VALUE)
-dnl -------------------------------------------------
-dnl Verifies if shell variable VARNAME contains VALUE.
-dnl Contents of variable VARNAME and VALUE are handled
-dnl as whitespace separated lists of words. If at least
-dnl one word of VALUE is present in VARNAME the match
-dnl is considered positive, otherwise false.
-
-AC_DEFUN([CARES_VAR_MATCH], [
-  ac_var_match_word="no"
-  for word1 in $[$1]; do
-    for word2 in [$2]; do
-      if test "$word1" = "$word2"; then
-        ac_var_match_word="yes"
-      fi
-    done
-  done
-])
-
-
-dnl CARES_VAR_MATCH_IFELSE (VARNAME, VALUE,
-dnl                        [ACTION-IF-MATCH], [ACTION-IF-NOT-MATCH])
-dnl -------------------------------------------------
-dnl This performs a CURL_VAR_MATCH check and executes
-dnl first branch if the match is positive, otherwise
-dnl the second branch is executed.
-
-AC_DEFUN([CARES_VAR_MATCH_IFELSE], [
-  CARES_VAR_MATCH([$1],[$2])
-  if test "$ac_var_match_word" = "yes"; then
-  ifelse($3,,:,[$3])
-  ifelse($4,,,[else
-    $4])
-  fi
-])
-
-
-dnl CARES_VAR_STRIP (VARNAME, VALUE)
-dnl -------------------------------------------------
-dnl Contents of variable VARNAME and VALUE are handled
-dnl as whitespace separated lists of words. Each word
-dnl from VALUE is removed from VARNAME when present.
-
-AC_DEFUN([CARES_VAR_STRIP], [
-  AC_REQUIRE([CARES_SHFUNC_SQUEEZE])dnl
-  ac_var_stripped=""
-  for word1 in $[$1]; do
-    ac_var_strip_word="no"
-    for word2 in [$2]; do
-      if test "$word1" = "$word2"; then
-        ac_var_strip_word="yes"
-      fi
-    done
-    if test "$ac_var_strip_word" = "no"; then
-      ac_var_stripped="$ac_var_stripped $word1"
-    fi
-  done
-  dnl squeeze whitespace out of result
-  [$1]="$ac_var_stripped"
-  squeeze [$1]
-])
-
diff --git a/src/other/ares/m4/cares-confopts.m4 b/src/other/ares/m4/cares-confopts.m4
deleted file mode 100644
index 438f9cd..0000000
--- a/src/other/ares/m4/cares-confopts.m4
+++ /dev/null
@@ -1,320 +0,0 @@
-#***************************************************************************
-# $Id$
-#
-# Copyright (C) 2008 - 2009 by Daniel Stenberg et al
-#
-# Permission to use, copy, modify, and distribute this software and its
-# documentation for any purpose and without fee is hereby granted, provided
-# that the above copyright notice appear in all copies and that both that
-# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of M.I.T. not be used in advertising or
-# publicity pertaining to distribution of the software without specific,
-# written prior permission.  M.I.T. makes no representations about the
-# suitability of this software for any purpose.  It is provided "as is"
-# without express or implied warranty.
-#
-#***************************************************************************
-
-# File version for 'aclocal' use. Keep it a single number.
-# serial 8
-
-
-dnl CARES_CHECK_OPTION_CURLDEBUG
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-curldebug or --disable-curldebug, and set
-dnl shell variable want_curldebug value as appropriate.
-
-AC_DEFUN([CARES_CHECK_OPTION_CURLDEBUG], [
-  AC_BEFORE([$0],[CARES_CHECK_CURLDEBUG])dnl
-  AC_MSG_CHECKING([whether to enable curl debug memory tracking])
-  OPT_CURLDEBUG_BUILD="default"
-  AC_ARG_ENABLE(curldebug,
-AC_HELP_STRING([--enable-curldebug],[Enable curl debug memory tracking])
-AC_HELP_STRING([--disable-curldebug],[Disable curl debug memory tracking]),
-  OPT_CURLDEBUG_BUILD=$enableval)
-  case "$OPT_CURLDEBUG_BUILD" in
-    no)
-      dnl --disable-curldebug option used
-      want_curldebug="no"
-      ;;
-    default)
-      dnl configure option not specified
-      want_curldebug="no"
-      ;;
-    *)
-      dnl --enable-curldebug option used.
-      dnl The use of this option value is a request to enable curl's
-      dnl debug memory tracking for the c-ares library. This is a big
-      dnl hack that can only be done when a whole bunch of requisites
-      dnl are simultaneously satisfied. Later on, these requisites are
-      dnl verified and if they are not fully satisfied the option will
-      dnl be ignored and act as if --disable-curldebug had been given
-      dnl setting shell variable want_curldebug to 'no'.
-      want_curldebug="yes"
-      ;;
-  esac
-  AC_MSG_RESULT([$want_curldebug])
-])
-
-
-dnl CARES_CHECK_OPTION_DEBUG
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-debug or --disable-debug, and set shell
-dnl variable want_debug value as appropriate.
-
-AC_DEFUN([CARES_CHECK_OPTION_DEBUG], [
-  AC_BEFORE([$0],[CARES_CHECK_OPTION_WARNINGS])dnl
-  AC_BEFORE([$0],[CARES_CHECK_OPTION_CURLDEBUG])dnl
-  AC_BEFORE([$0],[CARES_CHECK_PROG_CC])dnl
-  AC_MSG_CHECKING([whether to enable debug build options])
-  OPT_DEBUG_BUILD="default"
-  AC_ARG_ENABLE(debug,
-AC_HELP_STRING([--enable-debug],[Enable debug build options])
-AC_HELP_STRING([--disable-debug],[Disable debug build options]),
-  OPT_DEBUG_BUILD=$enableval)
-  case "$OPT_DEBUG_BUILD" in
-    no)
-      dnl --disable-debug option used
-      want_debug="no"
-      ;;
-    default)
-      dnl configure option not specified
-      want_debug="no"
-      ;;
-    *)
-      dnl --enable-debug option used
-      want_debug="yes"
-      ;;
-  esac
-  AC_MSG_RESULT([$want_debug])
-])
-
-
-dnl CARES_CHECK_OPTION_NONBLOCKING
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-nonblocking or --disable-nonblocking, and
-dnl set shell variable want_nonblocking as appropriate.
-
-AC_DEFUN([CARES_CHECK_OPTION_NONBLOCKING], [
-  AC_BEFORE([$0],[CARES_CHECK_NONBLOCKING_SOCKET])dnl
-  AC_MSG_CHECKING([whether to enable non-blocking communications])
-  OPT_NONBLOCKING="default"
-  AC_ARG_ENABLE(nonblocking,
-AC_HELP_STRING([--enable-nonblocking],[Enable non-blocking communications])
-AC_HELP_STRING([--disable-nonblocking],[Disable non-blocking communications]),
-  OPT_NONBLOCKING=$enableval)
-  case "$OPT_NONBLOCKING" in
-    no)
-      dnl --disable-nonblocking option used
-      want_nonblocking="no"
-      ;;
-    default)
-      dnl configure option not specified
-      want_nonblocking="yes"
-      ;;
-    *)
-      dnl --enable-nonblocking option used
-      want_nonblocking="yes"
-      ;;
-  esac
-  AC_MSG_RESULT([$want_nonblocking])
-])
-
-
-dnl CARES_CHECK_OPTION_OPTIMIZE
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-optimize or --disable-optimize, and set
-dnl shell variable want_optimize value as appropriate.
-
-AC_DEFUN([CARES_CHECK_OPTION_OPTIMIZE], [
-  AC_REQUIRE([CARES_CHECK_OPTION_DEBUG])dnl
-  AC_BEFORE([$0],[CARES_CHECK_PROG_CC])dnl
-  AC_MSG_CHECKING([whether to enable compiler optimizer])
-  OPT_COMPILER_OPTIMIZE="default"
-  AC_ARG_ENABLE(optimize,
-AC_HELP_STRING([--enable-optimize(=OPT)],[Enable compiler optimizations (default=-O2)])
-AC_HELP_STRING([--disable-optimize],[Disable compiler optimizations]),
-  OPT_COMPILER_OPTIMIZE=$enableval)
-  case "$OPT_COMPILER_OPTIMIZE" in
-    no)
-      dnl --disable-optimize option used. We will handle this as
-      dnl a request to disable compiler optimizations if possible.
-      dnl If the compiler is known CFLAGS and CPPFLAGS will be
-      dnl overridden, otherwise this can not be honored.
-      want_optimize="no"
-      AC_MSG_RESULT([no])
-      ;;
-    default)
-      dnl configure's optimize option not specified. Initially we will
-      dnl handle this as a a request contrary to configure's setting
-      dnl for --enable-debug. IOW, initially, for debug-enabled builds
-      dnl this will be handled as a request to disable optimizations if
-      dnl possible, and for debug-disabled builds this will be handled
-      dnl initially as a request to enable optimizations if possible.
-      dnl Finally, if the compiler is known and CFLAGS and CPPFLAGS do
-      dnl not have any optimizer flag the request will be honored, in
-      dnl any other case the request can not be honored.
-      dnl IOW, existing optimizer flags defined in CFLAGS or CPPFLAGS
-      dnl will always take precedence over any initial assumption.
-      if test "$want_debug" = "yes"; then
-        want_optimize="assume_no"
-        AC_MSG_RESULT([not specified (assuming no)])
-      else
-        want_optimize="assume_yes"
-        AC_MSG_RESULT([not specified (assuming yes)])
-      fi
-      ;;
-    *)
-      dnl --enable-optimize option used. We will handle this as
-      dnl a request to enable compiler optimizations if possible.
-      dnl If the compiler is known CFLAGS and CPPFLAGS will be
-      dnl overridden, otherwise this can not be honored.
-      want_optimize="yes"
-      AC_MSG_RESULT([yes])
-      ;;
-  esac
-])
-
-
-dnl CARES_CHECK_OPTION_SYMBOL_HIDING
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-symbol-hiding or --disable-symbol-hiding,
-dnl setting shell variable want_symbol_hiding value.
-
-AC_DEFUN([CARES_CHECK_OPTION_SYMBOL_HIDING], [
-  AC_BEFORE([$0],[CARES_CHECK_COMPILER_SYMBOL_HIDING])dnl
-  AC_MSG_CHECKING([whether to enable hiding of library internal symbols])
-  OPT_SYMBOL_HIDING="default"
-  AC_ARG_ENABLE(symbol-hiding,
-AC_HELP_STRING([--enable-symbol-hiding],[Enable hiding of library internal symbols])
-AC_HELP_STRING([--disable-symbol-hiding],[Disable hiding of library internal symbols]),
-  OPT_SYMBOL_HIDING=$enableval)
-  case "$OPT_SYMBOL_HIDING" in
-    no)
-      dnl --disable-symbol-hiding option used.
-      dnl This is an indication to not attempt hiding of library internal
-      dnl symbols. Default symbol visibility will be used, which normally
-      dnl exposes all library internal symbols.
-      want_symbol_hiding="no"
-      AC_MSG_RESULT([no])
-      ;;
-    default)
-      dnl configure's symbol-hiding option not specified.
-      dnl Handle this as if --enable-symbol-hiding option was given.
-      want_symbol_hiding="yes"
-      AC_MSG_RESULT([yes])
-      ;;
-    *)
-      dnl --enable-symbol-hiding option used.
-      dnl This is an indication to attempt hiding of library internal
-      dnl symbols. This is only supported on some compilers/linkers.
-      want_symbol_hiding="yes"
-      AC_MSG_RESULT([yes])
-      ;;
-  esac
-])
-
-
-dnl CARES_CHECK_OPTION_WARNINGS
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-warnings or --disable-warnings, and set
-dnl shell variable want_warnings as appropriate.
-
-AC_DEFUN([CARES_CHECK_OPTION_WARNINGS], [
-  AC_REQUIRE([CARES_CHECK_OPTION_DEBUG])dnl
-  AC_BEFORE([$0],[CARES_CHECK_PROG_CC])dnl
-  AC_MSG_CHECKING([whether to enable strict compiler warnings])
-  OPT_COMPILER_WARNINGS="default"
-  AC_ARG_ENABLE(warnings,
-AC_HELP_STRING([--enable-warnings],[Enable strict compiler warnings])
-AC_HELP_STRING([--disable-warnings],[Disable strict compiler warnings]),
-  OPT_COMPILER_WARNINGS=$enableval)
-  case "$OPT_COMPILER_WARNINGS" in
-    no)
-      dnl --disable-warnings option used
-      want_warnings="no"
-      ;;
-    default)
-      dnl configure option not specified, so
-      dnl use same setting as --enable-debug
-      want_warnings="$want_debug"
-      ;;
-    *)
-      dnl --enable-warnings option used
-      want_warnings="yes"
-      ;;
-  esac
-  AC_MSG_RESULT([$want_warnings])
-])
-
-
-dnl CARES_CHECK_NONBLOCKING_SOCKET
-dnl -------------------------------------------------
-dnl Check for how to set a socket into non-blocking state.
-
-AC_DEFUN([CARES_CHECK_NONBLOCKING_SOCKET], [
-  AC_REQUIRE([CARES_CHECK_OPTION_NONBLOCKING])dnl
-  AC_REQUIRE([CARES_CHECK_FUNC_FCNTL])dnl
-  AC_REQUIRE([CARES_CHECK_FUNC_IOCTL])dnl
-  AC_REQUIRE([CARES_CHECK_FUNC_IOCTLSOCKET])dnl
-  AC_REQUIRE([CARES_CHECK_FUNC_IOCTLSOCKET_CAMEL])dnl
-  AC_REQUIRE([CARES_CHECK_FUNC_SETSOCKOPT])dnl
-  #
-  tst_method="unknown"
-  if test "$want_nonblocking" = "yes"; then
-    AC_MSG_CHECKING([how to set a socket into non-blocking mode])
-    if test "x$ac_cv_func_fcntl_o_nonblock" = "xyes"; then
-      tst_method="fcntl O_NONBLOCK"
-    elif test "x$ac_cv_func_ioctl_fionbio" = "xyes"; then
-      tst_method="ioctl FIONBIO"
-    elif test "x$ac_cv_func_ioctlsocket_fionbio" = "xyes"; then
-      tst_method="ioctlsocket FIONBIO"
-    elif test "x$ac_cv_func_ioctlsocket_camel_fionbio" = "xyes"; then
-      tst_method="IoctlSocket FIONBIO"
-    elif test "x$ac_cv_func_setsockopt_so_nonblock" = "xyes"; then
-      tst_method="setsockopt SO_NONBLOCK"
-    fi
-    AC_MSG_RESULT([$tst_method])
-    if test "$tst_method" = "unknown"; then
-      AC_MSG_WARN([cannot determine non-blocking socket method.])
-    fi
-  fi
-  if test "$tst_method" = "unknown"; then
-    AC_DEFINE_UNQUOTED(USE_BLOCKING_SOCKETS, 1,
-      [Define to disable non-blocking sockets.])
-    AC_MSG_WARN([non-blocking sockets disabled.])
-  fi
-])
-
-
-dnl CARES_CONFIGURE_SYMBOL_HIDING
-dnl -------------------------------------------------
-dnl Depending on --enable-symbol-hiding or --disable-symbol-hiding
-dnl configure option, and compiler capability to actually honor such
-dnl option, this will modify compiler flags as appropriate and also
-dnl provide needed definitions for configuration file.
-dnl This macro should not be used until all compilation tests have
-dnl been done to prevent interferences on other tests.
-
-AC_DEFUN([CARES_CONFIGURE_SYMBOL_HIDING], [
-  AC_MSG_CHECKING([whether hiding of library internal symbols will actually happen])
-  if test x"$ac_cv_native_windows" != "xyes" &&
-    test "$want_symbol_hiding" = "yes" &&
-    test "$supports_symbol_hiding" = "yes"; then
-    CFLAGS="$CFLAGS $symbol_hiding_CFLAGS"
-    AC_DEFINE_UNQUOTED(CARES_SYMBOL_HIDING, 1,
-      [Define to 1 to enable hiding of library internal symbols.])
-    AC_DEFINE_UNQUOTED(CARES_SYMBOL_SCOPE_EXTERN, $symbol_hiding_EXTERN,
-      [Definition to make a library symbol externally visible.])
-    AC_MSG_RESULT([yes])
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
diff --git a/src/other/ares/m4/cares-functions.m4 b/src/other/ares/m4/cares-functions.m4
deleted file mode 100644
index f847788..0000000
--- a/src/other/ares/m4/cares-functions.m4
+++ /dev/null
@@ -1,3235 +0,0 @@
-#***************************************************************************
-# $Id$
-#
-# Copyright (C) 2008 - 2009 by Daniel Stenberg et al
-#
-# Permission to use, copy, modify, and distribute this software and its
-# documentation for any purpose and without fee is hereby granted, provided
-# that the above copyright notice appear in all copies and that both that
-# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of M.I.T. not be used in advertising or
-# publicity pertaining to distribution of the software without specific,
-# written prior permission.  M.I.T. makes no representations about the
-# suitability of this software for any purpose.  It is provided "as is"
-# without express or implied warranty.
-#
-#***************************************************************************
-
-# File version for 'aclocal' use. Keep it a single number.
-# serial 39
-
-
-dnl CARES_INCLUDES_ARPA_INET
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when arpa/inet.h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_ARPA_INET], [
-cares_includes_arpa_inet="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h sys/socket.h netinet/in.h arpa/inet.h,
-    [], [], [$cares_includes_arpa_inet])
-])
-
-
-dnl CARES_INCLUDES_FCNTL
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when fcntl.h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_FCNTL], [
-cares_includes_fcntl="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_FCNTL_H
-#  include <fcntl.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h unistd.h fcntl.h,
-    [], [], [$cares_includes_fcntl])
-])
-
-
-dnl CARES_INCLUDES_NETDB
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when netdb.h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_NETDB], [
-cares_includes_netdb="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h netdb.h,
-    [], [], [$cares_includes_netdb])
-])
-
-
-dnl CARES_INCLUDES_SOCKET
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when socket.h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_SOCKET], [
-cares_includes_socket="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SOCKET_H
-#  include <socket.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h socket.h,
-    [], [], [$cares_includes_socket])
-])
-
-
-dnl CARES_INCLUDES_STDLIB
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when stdlib.h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_STDLIB], [
-cares_includes_stdlib="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h stdlib.h,
-    [], [], [$cares_includes_stdlib])
-])
-
-
-dnl CARES_INCLUDES_STRING
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when string(s).h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_STRING], [
-cares_includes_string="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_STRING_H
-#  include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-#  include <strings.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h string.h strings.h,
-    [], [], [$cares_includes_string])
-])
-
-
-dnl CARES_INCLUDES_STROPTS
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when stropts.h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_STROPTS], [
-cares_includes_stropts="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#  include <sys/ioctl.h>
-#endif
-#ifdef HAVE_STROPTS_H
-#  include <stropts.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h unistd.h sys/socket.h sys/ioctl.h stropts.h,
-    [], [], [$cares_includes_stropts])
-])
-
-
-dnl CARES_INCLUDES_SYS_SOCKET
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when sys/socket.h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_SYS_SOCKET], [
-cares_includes_sys_socket="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h sys/socket.h,
-    [], [], [$cares_includes_sys_socket])
-])
-
-
-dnl CARES_INCLUDES_SYS_TYPES
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when sys/types.h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_SYS_TYPES], [
-cares_includes_sys_types="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h,
-    [], [], [$cares_includes_sys_types])
-])
-
-
-dnl CARES_INCLUDES_SYS_UIO
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when sys/uio.h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_SYS_UIO], [
-cares_includes_sys_uio="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_UIO_H
-#  include <sys/uio.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h sys/uio.h,
-    [], [], [$cares_includes_sys_uio])
-])
-
-
-dnl CARES_INCLUDES_UNISTD
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when unistd.h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_UNISTD], [
-cares_includes_unistd="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h unistd.h,
-    [], [], [$cares_includes_unistd])
-])
-
-
-dnl CARES_INCLUDES_WINSOCK2
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when winsock(2).h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_WINSOCK2], [
-cares_includes_winsock2="\
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
-#  endif
-#endif
-/* includes end */"
-  CURL_CHECK_HEADER_WINDOWS
-  CURL_CHECK_HEADER_WINSOCK
-  CURL_CHECK_HEADER_WINSOCK2
-])
-
-
-dnl CARES_INCLUDES_WS2TCPIP
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when ws2tcpip.h is to be included.
-
-AC_DEFUN([CARES_INCLUDES_WS2TCPIP], [
-cares_includes_ws2tcpip="\
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#    ifdef HAVE_WS2TCPIP_H
-#       include <ws2tcpip.h>
-#    endif
-#  endif
-#endif
-/* includes end */"
-  CURL_CHECK_HEADER_WINDOWS
-  CURL_CHECK_HEADER_WINSOCK2
-  CURL_CHECK_HEADER_WS2TCPIP
-])
-
-
-dnl CARES_PREPROCESS_CALLCONV
-dnl -------------------------------------------------
-dnl Set up variable with a preprocessor block which
-dnl defines function calling convention.
-
-AC_DEFUN([CARES_PREPROCESS_CALLCONV], [
-cares_preprocess_callconv="\
-/* preprocess start */
-#ifdef HAVE_WINDOWS_H
-#  define FUNCALLCONV __stdcall
-#else
-#  define FUNCALLCONV
-#endif
-/* preprocess end */"
-])
-
-
-dnl CARES_CHECK_FUNC_CLOSESOCKET
-dnl -------------------------------------------------
-dnl Verify if closesocket is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_closesocket, then
-dnl HAVE_CLOSESOCKET will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_CLOSESOCKET], [
-  AC_REQUIRE([CARES_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CARES_INCLUDES_SOCKET])dnl
-  #
-  tst_links_closesocket="unknown"
-  tst_proto_closesocket="unknown"
-  tst_compi_closesocket="unknown"
-  tst_allow_closesocket="unknown"
-  #
-  AC_MSG_CHECKING([if closesocket can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $cares_includes_winsock2
-      $cares_includes_socket
-    ]],[[
-      if(0 != closesocket(0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_closesocket="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_closesocket="no"
-  ])
-  #
-  if test "$tst_links_closesocket" = "yes"; then
-    AC_MSG_CHECKING([if closesocket is prototyped])
-    AC_EGREP_CPP([closesocket],[
-      $cares_includes_winsock2
-      $cares_includes_socket
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_closesocket="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_closesocket="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_closesocket" = "yes"; then
-    AC_MSG_CHECKING([if closesocket is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_winsock2
-        $cares_includes_socket
-      ]],[[
-        if(0 != closesocket(0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_closesocket="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_closesocket="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_closesocket" = "yes"; then
-    AC_MSG_CHECKING([if closesocket usage allowed])
-    if test "x$cares_disallow_closesocket" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_closesocket="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_closesocket="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if closesocket might be used])
-  if test "$tst_links_closesocket" = "yes" &&
-     test "$tst_proto_closesocket" = "yes" &&
-     test "$tst_compi_closesocket" = "yes" &&
-     test "$tst_allow_closesocket" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_CLOSESOCKET, 1,
-      [Define to 1 if you have the closesocket function.])
-    ac_cv_func_closesocket="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_closesocket="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_CLOSESOCKET_CAMEL
-dnl -------------------------------------------------
-dnl Verify if CloseSocket is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_closesocket_camel,
-dnl then HAVE_CLOSESOCKET_CAMEL will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_CLOSESOCKET_CAMEL], [
-  AC_REQUIRE([CARES_INCLUDES_SYS_SOCKET])dnl
-  #
-  tst_links_closesocket_camel="unknown"
-  tst_proto_closesocket_camel="unknown"
-  tst_compi_closesocket_camel="unknown"
-  tst_allow_closesocket_camel="unknown"
-  #
-  AC_MSG_CHECKING([if CloseSocket can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $cares_includes_sys_socket
-    ]],[[
-      if(0 != CloseSocket(0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_closesocket_camel="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_closesocket_camel="no"
-  ])
-  #
-  if test "$tst_links_closesocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if CloseSocket is prototyped])
-    AC_EGREP_CPP([CloseSocket],[
-      $cares_includes_sys_socket
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_closesocket_camel="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_closesocket_camel="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_closesocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if CloseSocket is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_sys_socket
-      ]],[[
-        if(0 != CloseSocket(0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_closesocket_camel="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_closesocket_camel="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_closesocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if CloseSocket usage allowed])
-    if test "x$cares_disallow_closesocket_camel" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_closesocket_camel="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_closesocket_camel="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if CloseSocket might be used])
-  if test "$tst_links_closesocket_camel" = "yes" &&
-     test "$tst_proto_closesocket_camel" = "yes" &&
-     test "$tst_compi_closesocket_camel" = "yes" &&
-     test "$tst_allow_closesocket_camel" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_CLOSESOCKET_CAMEL, 1,
-      [Define to 1 if you have the CloseSocket camel case function.])
-    ac_cv_func_closesocket_camel="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_closesocket_camel="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_CONNECT
-dnl -------------------------------------------------
-dnl Verify if connect is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_connect, then
-dnl HAVE_CONNECT will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_CONNECT], [
-  AC_REQUIRE([CARES_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CARES_INCLUDES_SYS_SOCKET])dnl
-  AC_REQUIRE([CARES_INCLUDES_SOCKET])dnl
-  #
-  tst_links_connect="unknown"
-  tst_proto_connect="unknown"
-  tst_compi_connect="unknown"
-  tst_allow_connect="unknown"
-  #
-  AC_MSG_CHECKING([if connect can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $cares_includes_winsock2
-      $cares_includes_sys_socket
-      $cares_includes_socket
-    ]],[[
-      if(0 != connect(0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_connect="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_connect="no"
-  ])
-  #
-  if test "$tst_links_connect" = "yes"; then
-    AC_MSG_CHECKING([if connect is prototyped])
-    AC_EGREP_CPP([connect],[
-      $cares_includes_winsock2
-      $cares_includes_sys_socket
-      $cares_includes_socket
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_connect="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_connect="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_connect" = "yes"; then
-    AC_MSG_CHECKING([if connect is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_winsock2
-        $cares_includes_sys_socket
-        $cares_includes_socket
-      ]],[[
-        if(0 != connect(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_connect="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_connect="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_connect" = "yes"; then
-    AC_MSG_CHECKING([if connect usage allowed])
-    if test "x$cares_disallow_connect" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_connect="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_connect="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if connect might be used])
-  if test "$tst_links_connect" = "yes" &&
-     test "$tst_proto_connect" = "yes" &&
-     test "$tst_compi_connect" = "yes" &&
-     test "$tst_allow_connect" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_CONNECT, 1,
-      [Define to 1 if you have the connect function.])
-    ac_cv_func_connect="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_connect="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_FCNTL
-dnl -------------------------------------------------
-dnl Verify if fcntl is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_fcntl, then
-dnl HAVE_FCNTL will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_FCNTL], [
-  AC_REQUIRE([CARES_INCLUDES_FCNTL])dnl
-  #
-  tst_links_fcntl="unknown"
-  tst_proto_fcntl="unknown"
-  tst_compi_fcntl="unknown"
-  tst_allow_fcntl="unknown"
-  #
-  AC_MSG_CHECKING([if fcntl can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([fcntl])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_fcntl="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_fcntl="no"
-  ])
-  #
-  if test "$tst_links_fcntl" = "yes"; then
-    AC_MSG_CHECKING([if fcntl is prototyped])
-    AC_EGREP_CPP([fcntl],[
-      $cares_includes_fcntl
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_fcntl="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_fcntl="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_fcntl" = "yes"; then
-    AC_MSG_CHECKING([if fcntl is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_fcntl
-      ]],[[
-        if(0 != fcntl(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_fcntl="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_fcntl="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_fcntl" = "yes"; then
-    AC_MSG_CHECKING([if fcntl usage allowed])
-    if test "x$cares_disallow_fcntl" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_fcntl="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_fcntl="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if fcntl might be used])
-  if test "$tst_links_fcntl" = "yes" &&
-     test "$tst_proto_fcntl" = "yes" &&
-     test "$tst_compi_fcntl" = "yes" &&
-     test "$tst_allow_fcntl" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_FCNTL, 1,
-      [Define to 1 if you have the fcntl function.])
-    ac_cv_func_fcntl="yes"
-    CARES_CHECK_FUNC_FCNTL_O_NONBLOCK
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_fcntl="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_FCNTL_O_NONBLOCK
-dnl -------------------------------------------------
-dnl Verify if fcntl with status flag O_NONBLOCK is
-dnl available, can be compiled, and seems to work. If
-dnl all of these are true, then HAVE_FCNTL_O_NONBLOCK
-dnl will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_FCNTL_O_NONBLOCK], [
-  #
-  tst_compi_fcntl_o_nonblock="unknown"
-  tst_allow_fcntl_o_nonblock="unknown"
-  #
-  case $host_os in
-    sunos4* | aix3* | beos*)
-      dnl O_NONBLOCK does not work on these platforms
-      cares_disallow_fcntl_o_nonblock="yes"
-      ;;
-  esac
-  #
-  if test "$ac_cv_func_fcntl" = "yes"; then
-    AC_MSG_CHECKING([if fcntl O_NONBLOCK is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_fcntl
-      ]],[[
-        int flags = 0;
-        if(0 != fcntl(0, F_SETFL, flags | O_NONBLOCK))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_fcntl_o_nonblock="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_fcntl_o_nonblock="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_fcntl_o_nonblock" = "yes"; then
-    AC_MSG_CHECKING([if fcntl O_NONBLOCK usage allowed])
-    if test "x$cares_disallow_fcntl_o_nonblock" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_fcntl_o_nonblock="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_fcntl_o_nonblock="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if fcntl O_NONBLOCK might be used])
-  if test "$tst_compi_fcntl_o_nonblock" = "yes" &&
-     test "$tst_allow_fcntl_o_nonblock" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_FCNTL_O_NONBLOCK, 1,
-      [Define to 1 if you have a working fcntl O_NONBLOCK function.])
-    ac_cv_func_fcntl_o_nonblock="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_fcntl_o_nonblock="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_FREEADDRINFO
-dnl -------------------------------------------------
-dnl Verify if freeaddrinfo is available, prototyped,
-dnl and can be compiled. If all of these are true,
-dnl and usage has not been previously disallowed with
-dnl shell variable cares_disallow_freeaddrinfo, then
-dnl HAVE_FREEADDRINFO will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_FREEADDRINFO], [
-  AC_REQUIRE([CARES_INCLUDES_WS2TCPIP])dnl
-  AC_REQUIRE([CARES_INCLUDES_SYS_SOCKET])dnl
-  AC_REQUIRE([CARES_INCLUDES_NETDB])dnl
-  #
-  tst_links_freeaddrinfo="unknown"
-  tst_proto_freeaddrinfo="unknown"
-  tst_compi_freeaddrinfo="unknown"
-  tst_allow_freeaddrinfo="unknown"
-  #
-  AC_MSG_CHECKING([if freeaddrinfo can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $cares_includes_ws2tcpip
-      $cares_includes_sys_socket
-      $cares_includes_netdb
-    ]],[[
-      freeaddrinfo(0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_freeaddrinfo="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_freeaddrinfo="no"
-  ])
-  #
-  if test "$tst_links_freeaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if freeaddrinfo is prototyped])
-    AC_EGREP_CPP([freeaddrinfo],[
-      $cares_includes_ws2tcpip
-      $cares_includes_sys_socket
-      $cares_includes_netdb
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_freeaddrinfo="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_freeaddrinfo="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_freeaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if freeaddrinfo is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_ws2tcpip
-        $cares_includes_sys_socket
-        $cares_includes_netdb
-      ]],[[
-        freeaddrinfo(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_freeaddrinfo="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_freeaddrinfo="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_freeaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if freeaddrinfo usage allowed])
-    if test "x$cares_disallow_freeaddrinfo" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_freeaddrinfo="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_freeaddrinfo="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if freeaddrinfo might be used])
-  if test "$tst_links_freeaddrinfo" = "yes" &&
-     test "$tst_proto_freeaddrinfo" = "yes" &&
-     test "$tst_compi_freeaddrinfo" = "yes" &&
-     test "$tst_allow_freeaddrinfo" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_FREEADDRINFO, 1,
-      [Define to 1 if you have the freeaddrinfo function.])
-    ac_cv_func_freeaddrinfo="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_freeaddrinfo="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_GETADDRINFO
-dnl -------------------------------------------------
-dnl Verify if getaddrinfo is available, prototyped, can
-dnl be compiled and seems to work. If all of these are
-dnl true, and usage has not been previously disallowed
-dnl with shell variable cares_disallow_getaddrinfo, then
-dnl HAVE_GETADDRINFO will be defined. Additionally when
-dnl HAVE_GETADDRINFO gets defined this will also attempt
-dnl to find out if getaddrinfo happens to be threadsafe,
-dnl defining HAVE_GETADDRINFO_THREADSAFE when true.
-
-AC_DEFUN([CARES_CHECK_FUNC_GETADDRINFO], [
-  AC_REQUIRE([CARES_INCLUDES_WS2TCPIP])dnl
-  AC_REQUIRE([CARES_INCLUDES_STDLIB])dnl
-  AC_REQUIRE([CARES_INCLUDES_STRING])dnl
-  AC_REQUIRE([CARES_INCLUDES_SYS_SOCKET])dnl
-  AC_REQUIRE([CARES_INCLUDES_NETDB])dnl
-  #
-  tst_links_getaddrinfo="unknown"
-  tst_proto_getaddrinfo="unknown"
-  tst_compi_getaddrinfo="unknown"
-  tst_works_getaddrinfo="unknown"
-  tst_allow_getaddrinfo="unknown"
-  tst_tsafe_getaddrinfo="unknown"
-  #
-  AC_MSG_CHECKING([if getaddrinfo can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $cares_includes_ws2tcpip
-      $cares_includes_sys_socket
-      $cares_includes_netdb
-    ]],[[
-      if(0 != getaddrinfo(0, 0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_getaddrinfo="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_getaddrinfo="no"
-  ])
-  #
-  if test "$tst_links_getaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if getaddrinfo is prototyped])
-    AC_EGREP_CPP([getaddrinfo],[
-      $cares_includes_ws2tcpip
-      $cares_includes_sys_socket
-      $cares_includes_netdb
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_getaddrinfo="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_getaddrinfo="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_getaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if getaddrinfo is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_ws2tcpip
-        $cares_includes_sys_socket
-        $cares_includes_netdb
-      ]],[[
-        if(0 != getaddrinfo(0, 0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_getaddrinfo="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_getaddrinfo="no"
-    ])
-  fi
-  #
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_getaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if getaddrinfo seems to work])
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_ws2tcpip
-        $cares_includes_stdlib
-        $cares_includes_string
-        $cares_includes_sys_socket
-        $cares_includes_netdb
-      ]],[[
-        struct addrinfo hints;
-        struct addrinfo *ai = 0;
-        int error;
-
-        memset(&hints, 0, sizeof(hints));
-        hints.ai_flags = AI_NUMERICHOST;
-        hints.ai_family = AF_UNSPEC;
-        hints.ai_socktype = SOCK_STREAM;
-        error = getaddrinfo("127.0.0.1", 0, &hints, &ai);
-        if(error || !ai)
-          exit(1); /* fail */
-        else
-          exit(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_works_getaddrinfo="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_works_getaddrinfo="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_getaddrinfo" = "yes" &&
-    test "$tst_works_getaddrinfo" != "no"; then
-    AC_MSG_CHECKING([if getaddrinfo usage allowed])
-    if test "x$cares_disallow_getaddrinfo" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_getaddrinfo="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_getaddrinfo="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if getaddrinfo might be used])
-  if test "$tst_links_getaddrinfo" = "yes" &&
-     test "$tst_proto_getaddrinfo" = "yes" &&
-     test "$tst_compi_getaddrinfo" = "yes" &&
-     test "$tst_allow_getaddrinfo" = "yes" &&
-     test "$tst_works_getaddrinfo" != "no"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETADDRINFO, 1,
-      [Define to 1 if you have a working getaddrinfo function.])
-    ac_cv_func_getaddrinfo="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_getaddrinfo="no"
-    ac_cv_func_getaddrinfo_threadsafe="no"
-  fi
-  #
-  if test "$ac_cv_func_getaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if getaddrinfo is threadsafe])
-    case $host_os in
-      aix[[1234]].* | aix5.[[01]].*)
-        dnl aix 5.1 and older
-        tst_tsafe_getaddrinfo="no"
-        ;;
-      aix*)
-        dnl aix 5.2 and newer
-        tst_tsafe_getaddrinfo="yes"
-        ;;
-      darwin[[12345]].*)
-        dnl darwin 5.0 and mac os x 10.1.X and older
-        tst_tsafe_getaddrinfo="no"
-        ;;
-      darwin*)
-        dnl darwin 6.0 and mac os x 10.2.X and newer
-        tst_tsafe_getaddrinfo="yes"
-        ;;
-      freebsd[[1234]].* | freebsd5.[[1234]]*)
-        dnl freebsd 5.4 and older
-        tst_tsafe_getaddrinfo="no"
-        ;;
-      freebsd*)
-        dnl freebsd 5.5 and newer
-        tst_tsafe_getaddrinfo="yes"
-        ;;
-      hpux[[123456789]].* | hpux10.* | hpux11.0* | hpux11.10*)
-        dnl hpux 11.10 and older
-        tst_tsafe_getaddrinfo="no"
-        ;;
-      hpux*)
-        dnl hpux 11.11 and newer
-        tst_tsafe_getaddrinfo="yes"
-        ;;
-      netbsd[[123]].*)
-        dnl netbsd 3.X and older
-        tst_tsafe_getaddrinfo="no"
-        ;;
-      netbsd*)
-        dnl netbsd 4.X and newer
-        tst_tsafe_getaddrinfo="yes"
-        ;;
-      *bsd*)
-        dnl All other bsd's
-        tst_tsafe_getaddrinfo="no"
-        ;;
-      solaris2*)
-        dnl solaris which have it
-        tst_tsafe_getaddrinfo="yes"
-        ;;
-    esac
-    if test "$tst_tsafe_getaddrinfo" = "unknown"; then
-      CURL_CHECK_DEF_CC([h_errno], [
-        $cares_includes_ws2tcpip
-        $cares_includes_sys_socket
-        $cares_includes_netdb
-        ], [silent])
-      if test "$curl_cv_have_def_h_errno" = "no"; then
-        tst_tsafe_getaddrinfo="no"
-      fi
-    fi
-    if test "$tst_tsafe_getaddrinfo" = "unknown"; then
-      tst_tsafe_getaddrinfo="yes"
-    fi
-    AC_MSG_RESULT([$tst_tsafe_getaddrinfo])
-    if test "$tst_tsafe_getaddrinfo" = "yes"; then
-      AC_DEFINE_UNQUOTED(HAVE_GETADDRINFO_THREADSAFE, 1,
-        [Define to 1 if the getaddrinfo function is threadsafe.])
-      ac_cv_func_getaddrinfo_threadsafe="yes"
-    else
-      ac_cv_func_getaddrinfo_threadsafe="no"
-    fi
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_GETHOSTBYADDR
-dnl -------------------------------------------------
-dnl Verify if gethostbyaddr is available, prototyped,
-dnl and can be compiled. If all of these are true,
-dnl and usage has not been previously disallowed with
-dnl shell variable cares_disallow_gethostbyaddr, then
-dnl HAVE_GETHOSTBYADDR will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_GETHOSTBYADDR], [
-  AC_REQUIRE([CARES_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CARES_INCLUDES_NETDB])dnl
-  #
-  tst_links_gethostbyaddr="unknown"
-  tst_proto_gethostbyaddr="unknown"
-  tst_compi_gethostbyaddr="unknown"
-  tst_allow_gethostbyaddr="unknown"
-  #
-  AC_MSG_CHECKING([if gethostbyaddr can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $cares_includes_winsock2
-      $cares_includes_netdb
-    ]],[[
-      if(0 != gethostbyaddr(0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_gethostbyaddr="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_gethostbyaddr="no"
-  ])
-  #
-  if test "$tst_links_gethostbyaddr" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyaddr is prototyped])
-    AC_EGREP_CPP([gethostbyaddr],[
-      $cares_includes_winsock2
-      $cares_includes_netdb
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_gethostbyaddr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_gethostbyaddr="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_gethostbyaddr" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyaddr is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_winsock2
-        $cares_includes_netdb
-      ]],[[
-        if(0 != gethostbyaddr(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_gethostbyaddr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_gethostbyaddr="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_gethostbyaddr" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyaddr usage allowed])
-    if test "x$cares_disallow_gethostbyaddr" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_gethostbyaddr="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_gethostbyaddr="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if gethostbyaddr might be used])
-  if test "$tst_links_gethostbyaddr" = "yes" &&
-     test "$tst_proto_gethostbyaddr" = "yes" &&
-     test "$tst_compi_gethostbyaddr" = "yes" &&
-     test "$tst_allow_gethostbyaddr" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETHOSTBYADDR, 1,
-      [Define to 1 if you have the gethostbyaddr function.])
-    ac_cv_func_gethostbyaddr="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_gethostbyaddr="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_GETHOSTBYNAME
-dnl -------------------------------------------------
-dnl Verify if gethostbyname is available, prototyped,
-dnl and can be compiled. If all of these are true,
-dnl and usage has not been previously disallowed with
-dnl shell variable cares_disallow_gethostbyname, then
-dnl HAVE_GETHOSTBYNAME will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_GETHOSTBYNAME], [
-  AC_REQUIRE([CARES_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CARES_INCLUDES_NETDB])dnl
-  #
-  tst_links_gethostbyname="unknown"
-  tst_proto_gethostbyname="unknown"
-  tst_compi_gethostbyname="unknown"
-  tst_allow_gethostbyname="unknown"
-  #
-  AC_MSG_CHECKING([if gethostbyname can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $cares_includes_winsock2
-      $cares_includes_netdb
-    ]],[[
-      if(0 != gethostbyname(0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_gethostbyname="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_gethostbyname="no"
-  ])
-  #
-  if test "$tst_links_gethostbyname" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyname is prototyped])
-    AC_EGREP_CPP([gethostbyname],[
-      $cares_includes_winsock2
-      $cares_includes_netdb
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_gethostbyname="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_gethostbyname="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_gethostbyname" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyname is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_winsock2
-        $cares_includes_netdb
-      ]],[[
-        if(0 != gethostbyname(0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_gethostbyname="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_gethostbyname="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_gethostbyname" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyname usage allowed])
-    if test "x$cares_disallow_gethostbyname" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_gethostbyname="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_gethostbyname="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if gethostbyname might be used])
-  if test "$tst_links_gethostbyname" = "yes" &&
-     test "$tst_proto_gethostbyname" = "yes" &&
-     test "$tst_compi_gethostbyname" = "yes" &&
-     test "$tst_allow_gethostbyname" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETHOSTBYNAME, 1,
-      [Define to 1 if you have the gethostbyname function.])
-    ac_cv_func_gethostbyname="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_gethostbyname="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_GETHOSTNAME
-dnl -------------------------------------------------
-dnl Verify if gethostname is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_gethostname, then
-dnl HAVE_GETHOSTNAME will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_GETHOSTNAME], [
-  AC_REQUIRE([CARES_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CARES_INCLUDES_UNISTD])dnl
-  #
-  tst_links_gethostname="unknown"
-  tst_proto_gethostname="unknown"
-  tst_compi_gethostname="unknown"
-  tst_allow_gethostname="unknown"
-  #
-  AC_MSG_CHECKING([if gethostname can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $cares_includes_winsock2
-      $cares_includes_unistd
-    ]],[[
-      if(0 != gethostname(0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_gethostname="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_gethostname="no"
-  ])
-  #
-  if test "$tst_links_gethostname" = "yes"; then
-    AC_MSG_CHECKING([if gethostname is prototyped])
-    AC_EGREP_CPP([gethostname],[
-      $cares_includes_winsock2
-      $cares_includes_unistd
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_gethostname="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_gethostname="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_gethostname" = "yes"; then
-    AC_MSG_CHECKING([if gethostname is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_winsock2
-        $cares_includes_unistd
-      ]],[[
-        if(0 != gethostname(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_gethostname="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_gethostname="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_gethostname" = "yes"; then
-    AC_MSG_CHECKING([if gethostname usage allowed])
-    if test "x$cares_disallow_gethostname" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_gethostname="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_gethostname="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if gethostname might be used])
-  if test "$tst_links_gethostname" = "yes" &&
-     test "$tst_proto_gethostname" = "yes" &&
-     test "$tst_compi_gethostname" = "yes" &&
-     test "$tst_allow_gethostname" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETHOSTNAME, 1,
-      [Define to 1 if you have the gethostname function.])
-    ac_cv_func_gethostname="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_gethostname="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_GETSERVBYPORT_R
-dnl -------------------------------------------------
-dnl Verify if getservbyport_r is available, prototyped,
-dnl and can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_getservbyport_r, then
-dnl HAVE_GETSERVBYPORT_R will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_GETSERVBYPORT_R], [
-  AC_REQUIRE([CARES_INCLUDES_NETDB])dnl
-  #
-  tst_links_getservbyport_r="unknown"
-  tst_proto_getservbyport_r="unknown"
-  tst_compi_getservbyport_r="unknown"
-  tst_allow_getservbyport_r="unknown"
-  tst_nargs_getservbyport_r="unknown"
-  #
-  AC_MSG_CHECKING([if getservbyport_r can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([getservbyport_r])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_getservbyport_r="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_getservbyport_r="no"
-  ])
-  #
-  if test "$tst_links_getservbyport_r" = "yes"; then
-    AC_MSG_CHECKING([if getservbyport_r is prototyped])
-    AC_EGREP_CPP([getservbyport_r],[
-      $cares_includes_netdb
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_getservbyport_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_getservbyport_r="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_getservbyport_r" = "yes"; then
-    if test "$tst_nargs_getservbyport_r" = "unknown"; then
-      AC_MSG_CHECKING([if getservbyport_r takes 4 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $cares_includes_netdb
-        ]],[[
-          if(0 != getservbyport_r(0, 0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_getservbyport_r="yes"
-        tst_nargs_getservbyport_r="4"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_getservbyport_r="no"
-      ])
-    fi
-    if test "$tst_nargs_getservbyport_r" = "unknown"; then
-      AC_MSG_CHECKING([if getservbyport_r takes 5 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $cares_includes_netdb
-        ]],[[
-          if(0 != getservbyport_r(0, 0, 0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_getservbyport_r="yes"
-        tst_nargs_getservbyport_r="5"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_getservbyport_r="no"
-      ])
-    fi
-    if test "$tst_nargs_getservbyport_r" = "unknown"; then
-      AC_MSG_CHECKING([if getservbyport_r takes 6 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $cares_includes_netdb
-        ]],[[
-          if(0 != getservbyport_r(0, 0, 0, 0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_getservbyport_r="yes"
-        tst_nargs_getservbyport_r="6"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_getservbyport_r="no"
-      ])
-    fi
-    AC_MSG_CHECKING([if getservbyport_r is compilable])
-    if test "$tst_compi_getservbyport_r" = "yes"; then
-      AC_MSG_RESULT([yes])
-    else
-      AC_MSG_RESULT([no])
-    fi
-  fi
-  #
-  if test "$tst_compi_getservbyport_r" = "yes"; then
-    AC_MSG_CHECKING([if getservbyport_r usage allowed])
-    if test "x$cares_disallow_getservbyport_r" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_getservbyport_r="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_getservbyport_r="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if getservbyport_r might be used])
-  if test "$tst_links_getservbyport_r" = "yes" &&
-     test "$tst_proto_getservbyport_r" = "yes" &&
-     test "$tst_compi_getservbyport_r" = "yes" &&
-     test "$tst_allow_getservbyport_r" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETSERVBYPORT_R, 1,
-      [Define to 1 if you have the getservbyport_r function.])
-    AC_DEFINE_UNQUOTED(GETSERVBYPORT_R_ARGS, $tst_nargs_getservbyport_r,
-      [Specifies the number of arguments to getservbyport_r])
-    if test "$tst_nargs_getservbyport_r" -eq "4"; then
-      AC_DEFINE(GETSERVBYPORT_R_BUFSIZE, sizeof(struct servent_data),
-        [Specifies the size of the buffer to pass to getservbyport_r])
-    else
-      AC_DEFINE(GETSERVBYPORT_R_BUFSIZE, 4096,
-        [Specifies the size of the buffer to pass to getservbyport_r])
-    fi
-    ac_cv_func_getservbyport_r="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_getservbyport_r="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_INET_NTOP
-dnl -------------------------------------------------
-dnl Verify if inet_ntop is available, prototyped, can
-dnl be compiled and seems to work. If all of these are
-dnl true, and usage has not been previously disallowed
-dnl with shell variable cares_disallow_inet_ntop, then
-dnl HAVE_INET_NTOP will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_INET_NTOP], [
-  AC_REQUIRE([CARES_INCLUDES_STDLIB])dnl
-  AC_REQUIRE([CARES_INCLUDES_ARPA_INET])dnl
-  AC_REQUIRE([CARES_INCLUDES_STRING])dnl
-  #
-  tst_links_inet_ntop="unknown"
-  tst_proto_inet_ntop="unknown"
-  tst_compi_inet_ntop="unknown"
-  tst_works_inet_ntop="unknown"
-  tst_allow_inet_ntop="unknown"
-  #
-  AC_MSG_CHECKING([if inet_ntop can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([inet_ntop])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_inet_ntop="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_inet_ntop="no"
-  ])
-  #
-  if test "$tst_links_inet_ntop" = "yes"; then
-    AC_MSG_CHECKING([if inet_ntop is prototyped])
-    AC_EGREP_CPP([inet_ntop],[
-      $cares_includes_arpa_inet
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_inet_ntop="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_inet_ntop="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_inet_ntop" = "yes"; then
-    AC_MSG_CHECKING([if inet_ntop is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_arpa_inet
-      ]],[[
-        if(0 != inet_ntop(0, 0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_inet_ntop="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_inet_ntop="no"
-    ])
-  fi
-  #
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_inet_ntop" = "yes"; then
-    AC_MSG_CHECKING([if inet_ntop seems to work])
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_stdlib
-        $cares_includes_arpa_inet
-        $cares_includes_string
-      ]],[[
-        char ipv6res[sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255")];
-        char ipv4res[sizeof "255.255.255.255"];
-        unsigned char ipv6a[26];
-        unsigned char ipv4a[5];
-        char *ipv6ptr = 0;
-        char *ipv4ptr = 0;
-        /* - */
-        ipv4res[0] = '\0';
-        ipv4a[0] = 0xc0;
-        ipv4a[1] = 0xa8;
-        ipv4a[2] = 0x64;
-        ipv4a[3] = 0x01;
-        ipv4a[4] = 0x01;
-        /* - */
-        ipv4ptr = inet_ntop(AF_INET, ipv4a, ipv4res, sizeof(ipv4res));
-        if(!ipv4ptr)
-          exit(1); /* fail */
-        if(ipv4ptr != ipv4res)
-          exit(1); /* fail */
-        if(!ipv4ptr[0])
-          exit(1); /* fail */
-        if(memcmp(ipv4res, "192.168.100.1", 13) != 0)
-          exit(1); /* fail */
-        /* - */
-        ipv6res[0] = '\0';
-        memset(ipv6a, 0, sizeof(ipv6a));
-        ipv6a[0] = 0xfe;
-        ipv6a[1] = 0x80;
-        ipv6a[8] = 0x02;
-        ipv6a[9] = 0x14;
-        ipv6a[10] = 0x4f;
-        ipv6a[11] = 0xff;
-        ipv6a[12] = 0xfe;
-        ipv6a[13] = 0x0b;
-        ipv6a[14] = 0x76;
-        ipv6a[15] = 0xc8;
-        ipv6a[25] = 0x01;
-        /* - */
-        ipv6ptr = inet_ntop(AF_INET6, ipv6a, ipv6res, sizeof(ipv6res));
-        if(!ipv6ptr)
-          exit(1); /* fail */
-        if(ipv6ptr != ipv6res)
-          exit(1); /* fail */
-        if(!ipv6ptr[0])
-          exit(1); /* fail */
-        if(memcmp(ipv6res, "fe80::214:4fff:fe0b:76c8", 24) != 0)
-          exit(1); /* fail */
-        /* - */
-        exit(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_works_inet_ntop="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_works_inet_ntop="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_inet_ntop" = "yes" &&
-    test "$tst_works_inet_ntop" != "no"; then
-    AC_MSG_CHECKING([if inet_ntop usage allowed])
-    if test "x$cares_disallow_inet_ntop" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_inet_ntop="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_inet_ntop="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if inet_ntop might be used])
-  if test "$tst_links_inet_ntop" = "yes" &&
-     test "$tst_proto_inet_ntop" = "yes" &&
-     test "$tst_compi_inet_ntop" = "yes" &&
-     test "$tst_allow_inet_ntop" = "yes" &&
-     test "$tst_works_inet_ntop" != "no"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_INET_NTOP, 1,
-      [Define to 1 if you have a IPv6 capable working inet_ntop function.])
-    ac_cv_func_inet_ntop="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_inet_ntop="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_INET_PTON
-dnl -------------------------------------------------
-dnl Verify if inet_pton is available, prototyped, can
-dnl be compiled and seems to work. If all of these are
-dnl true, and usage has not been previously disallowed
-dnl with shell variable cares_disallow_inet_pton, then
-dnl HAVE_INET_PTON will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_INET_PTON], [
-  AC_REQUIRE([CARES_INCLUDES_STDLIB])dnl
-  AC_REQUIRE([CARES_INCLUDES_ARPA_INET])dnl
-  AC_REQUIRE([CARES_INCLUDES_STRING])dnl
-  #
-  tst_links_inet_pton="unknown"
-  tst_proto_inet_pton="unknown"
-  tst_compi_inet_pton="unknown"
-  tst_works_inet_pton="unknown"
-  tst_allow_inet_pton="unknown"
-  #
-  AC_MSG_CHECKING([if inet_pton can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([inet_pton])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_inet_pton="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_inet_pton="no"
-  ])
-  #
-  if test "$tst_links_inet_pton" = "yes"; then
-    AC_MSG_CHECKING([if inet_pton is prototyped])
-    AC_EGREP_CPP([inet_pton],[
-      $cares_includes_arpa_inet
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_inet_pton="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_inet_pton="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_inet_pton" = "yes"; then
-    AC_MSG_CHECKING([if inet_pton is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_arpa_inet
-      ]],[[
-        if(0 != inet_pton(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_inet_pton="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_inet_pton="no"
-    ])
-  fi
-  #
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_inet_pton" = "yes"; then
-    AC_MSG_CHECKING([if inet_pton seems to work])
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_stdlib
-        $cares_includes_arpa_inet
-        $cares_includes_string
-      ]],[[
-        unsigned char ipv6a[16+1];
-        unsigned char ipv4a[4+1];
-        const char *ipv6src = "fe80::214:4fff:fe0b:76c8";
-        const char *ipv4src = "192.168.100.1";
-        /* - */
-        memset(ipv4a, 1, sizeof(ipv4a));
-        if(1 != inet_pton(AF_INET, ipv4src, ipv4a))
-          exit(1); /* fail */
-        /* - */
-        if( (ipv4a[0] != 0xc0) ||
-            (ipv4a[1] != 0xa8) ||
-            (ipv4a[2] != 0x64) ||
-            (ipv4a[3] != 0x01) ||
-            (ipv4a[4] != 0x01) )
-          exit(1); /* fail */
-        /* - */
-        memset(ipv6a, 1, sizeof(ipv6a));
-        if(1 != inet_pton(AF_INET6, ipv6src, ipv6a))
-          exit(1); /* fail */
-        /* - */
-        if( (ipv6a[0]  != 0xfe) ||
-            (ipv6a[1]  != 0x80) ||
-            (ipv6a[8]  != 0x02) ||
-            (ipv6a[9]  != 0x14) ||
-            (ipv6a[10] != 0x4f) ||
-            (ipv6a[11] != 0xff) ||
-            (ipv6a[12] != 0xfe) ||
-            (ipv6a[13] != 0x0b) ||
-            (ipv6a[14] != 0x76) ||
-            (ipv6a[15] != 0xc8) ||
-            (ipv6a[16] != 0x01) )
-          exit(1); /* fail */
-        /* - */
-        if( (ipv6a[2]  != 0x0) ||
-            (ipv6a[3]  != 0x0) ||
-            (ipv6a[4]  != 0x0) ||
-            (ipv6a[5]  != 0x0) ||
-            (ipv6a[6]  != 0x0) ||
-            (ipv6a[7]  != 0x0) )
-          exit(1); /* fail */
-        /* - */
-        exit(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_works_inet_pton="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_works_inet_pton="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_inet_pton" = "yes" &&
-    test "$tst_works_inet_pton" != "no"; then
-    AC_MSG_CHECKING([if inet_pton usage allowed])
-    if test "x$cares_disallow_inet_pton" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_inet_pton="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_inet_pton="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if inet_pton might be used])
-  if test "$tst_links_inet_pton" = "yes" &&
-     test "$tst_proto_inet_pton" = "yes" &&
-     test "$tst_compi_inet_pton" = "yes" &&
-     test "$tst_allow_inet_pton" = "yes" &&
-     test "$tst_works_inet_pton" != "no"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_INET_PTON, 1,
-      [Define to 1 if you have a IPv6 capable working inet_pton function.])
-    ac_cv_func_inet_pton="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_inet_pton="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_IOCTL
-dnl -------------------------------------------------
-dnl Verify if ioctl is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_ioctl, then
-dnl HAVE_IOCTL will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_IOCTL], [
-  AC_REQUIRE([CARES_INCLUDES_STROPTS])dnl
-  #
-  tst_links_ioctl="unknown"
-  tst_proto_ioctl="unknown"
-  tst_compi_ioctl="unknown"
-  tst_allow_ioctl="unknown"
-  #
-  AC_MSG_CHECKING([if ioctl can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([ioctl])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_ioctl="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_ioctl="no"
-  ])
-  #
-  if test "$tst_links_ioctl" = "yes"; then
-    AC_MSG_CHECKING([if ioctl is prototyped])
-    AC_EGREP_CPP([ioctl],[
-      $cares_includes_stropts
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_ioctl="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_ioctl="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_ioctl" = "yes"; then
-    AC_MSG_CHECKING([if ioctl is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_stropts
-      ]],[[
-        if(0 != ioctl(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctl="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctl="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctl" = "yes"; then
-    AC_MSG_CHECKING([if ioctl usage allowed])
-    if test "x$cares_disallow_ioctl" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctl="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctl="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if ioctl might be used])
-  if test "$tst_links_ioctl" = "yes" &&
-     test "$tst_proto_ioctl" = "yes" &&
-     test "$tst_compi_ioctl" = "yes" &&
-     test "$tst_allow_ioctl" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTL, 1,
-      [Define to 1 if you have the ioctl function.])
-    ac_cv_func_ioctl="yes"
-    CARES_CHECK_FUNC_IOCTL_FIONBIO
-    CARES_CHECK_FUNC_IOCTL_SIOCGIFADDR
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctl="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_IOCTL_FIONBIO
-dnl -------------------------------------------------
-dnl Verify if ioctl with the FIONBIO command is
-dnl available, can be compiled, and seems to work. If
-dnl all of these are true, then HAVE_IOCTL_FIONBIO
-dnl will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_IOCTL_FIONBIO], [
-  #
-  tst_compi_ioctl_fionbio="unknown"
-  tst_allow_ioctl_fionbio="unknown"
-  #
-  if test "$ac_cv_func_ioctl" = "yes"; then
-    AC_MSG_CHECKING([if ioctl FIONBIO is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_stropts
-      ]],[[
-        int flags = 0;
-        if(0 != ioctl(0, FIONBIO, &flags))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctl_fionbio="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctl_fionbio="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctl_fionbio" = "yes"; then
-    AC_MSG_CHECKING([if ioctl FIONBIO usage allowed])
-    if test "x$cares_disallow_ioctl_fionbio" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctl_fionbio="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctl_fionbio="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if ioctl FIONBIO might be used])
-  if test "$tst_compi_ioctl_fionbio" = "yes" &&
-     test "$tst_allow_ioctl_fionbio" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTL_FIONBIO, 1,
-      [Define to 1 if you have a working ioctl FIONBIO function.])
-    ac_cv_func_ioctl_fionbio="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctl_fionbio="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_IOCTL_SIOCGIFADDR
-dnl -------------------------------------------------
-dnl Verify if ioctl with the SIOCGIFADDR command is available,
-dnl struct ifreq is defined, they can be compiled, and seem to
-dnl work. If all of these are true, then HAVE_IOCTL_SIOCGIFADDR
-dnl will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_IOCTL_SIOCGIFADDR], [
-  #
-  tst_compi_ioctl_siocgifaddr="unknown"
-  tst_allow_ioctl_siocgifaddr="unknown"
-  #
-  if test "$ac_cv_func_ioctl" = "yes"; then
-    AC_MSG_CHECKING([if ioctl SIOCGIFADDR is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_stropts
-        #include <net/if.h>
-      ]],[[
-        struct ifreq ifr;
-        if(0 != ioctl(0, SIOCGIFADDR, &ifr))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctl_siocgifaddr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctl_siocgifaddr="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctl_siocgifaddr" = "yes"; then
-    AC_MSG_CHECKING([if ioctl SIOCGIFADDR usage allowed])
-    if test "x$cares_disallow_ioctl_siocgifaddr" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctl_siocgifaddr="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctl_siocgifaddr="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if ioctl SIOCGIFADDR might be used])
-  if test "$tst_compi_ioctl_siocgifaddr" = "yes" &&
-     test "$tst_allow_ioctl_siocgifaddr" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTL_SIOCGIFADDR, 1,
-      [Define to 1 if you have a working ioctl SIOCGIFADDR function.])
-    ac_cv_func_ioctl_siocgifaddr="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctl_siocgifaddr="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_IOCTLSOCKET
-dnl -------------------------------------------------
-dnl Verify if ioctlsocket is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_ioctlsocket, then
-dnl HAVE_IOCTLSOCKET will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_IOCTLSOCKET], [
-  AC_REQUIRE([CARES_INCLUDES_WINSOCK2])dnl
-  #
-  tst_links_ioctlsocket="unknown"
-  tst_proto_ioctlsocket="unknown"
-  tst_compi_ioctlsocket="unknown"
-  tst_allow_ioctlsocket="unknown"
-  #
-  AC_MSG_CHECKING([if ioctlsocket can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $cares_includes_winsock2
-    ]],[[
-      if(0 != ioctlsocket(0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_ioctlsocket="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_ioctlsocket="no"
-  ])
-  #
-  if test "$tst_links_ioctlsocket" = "yes"; then
-    AC_MSG_CHECKING([if ioctlsocket is prototyped])
-    AC_EGREP_CPP([ioctlsocket],[
-      $cares_includes_winsock2
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_ioctlsocket="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_ioctlsocket="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_ioctlsocket" = "yes"; then
-    AC_MSG_CHECKING([if ioctlsocket is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_winsock2
-      ]],[[
-        if(0 != ioctlsocket(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctlsocket="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctlsocket="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctlsocket" = "yes"; then
-    AC_MSG_CHECKING([if ioctlsocket usage allowed])
-    if test "x$cares_disallow_ioctlsocket" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctlsocket="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctlsocket="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if ioctlsocket might be used])
-  if test "$tst_links_ioctlsocket" = "yes" &&
-     test "$tst_proto_ioctlsocket" = "yes" &&
-     test "$tst_compi_ioctlsocket" = "yes" &&
-     test "$tst_allow_ioctlsocket" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTLSOCKET, 1,
-      [Define to 1 if you have the ioctlsocket function.])
-    ac_cv_func_ioctlsocket="yes"
-    CARES_CHECK_FUNC_IOCTLSOCKET_FIONBIO
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctlsocket="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_IOCTLSOCKET_FIONBIO
-dnl -------------------------------------------------
-dnl Verify if ioctlsocket with the FIONBIO command is
-dnl available, can be compiled, and seems to work. If
-dnl all of these are true, then HAVE_IOCTLSOCKET_FIONBIO
-dnl will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_IOCTLSOCKET_FIONBIO], [
-  #
-  tst_compi_ioctlsocket_fionbio="unknown"
-  tst_allow_ioctlsocket_fionbio="unknown"
-  #
-  if test "$ac_cv_func_ioctlsocket" = "yes"; then
-    AC_MSG_CHECKING([if ioctlsocket FIONBIO is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_winsock2
-      ]],[[
-        int flags = 0;
-        if(0 != ioctlsocket(0, FIONBIO, &flags))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctlsocket_fionbio="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctlsocket_fionbio="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctlsocket_fionbio" = "yes"; then
-    AC_MSG_CHECKING([if ioctlsocket FIONBIO usage allowed])
-    if test "x$cares_disallow_ioctlsocket_fionbio" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctlsocket_fionbio="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctlsocket_fionbio="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if ioctlsocket FIONBIO might be used])
-  if test "$tst_compi_ioctlsocket_fionbio" = "yes" &&
-     test "$tst_allow_ioctlsocket_fionbio" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTLSOCKET_FIONBIO, 1,
-      [Define to 1 if you have a working ioctlsocket FIONBIO function.])
-    ac_cv_func_ioctlsocket_fionbio="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctlsocket_fionbio="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_IOCTLSOCKET_CAMEL
-dnl -------------------------------------------------
-dnl Verify if IoctlSocket is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_ioctlsocket_camel,
-dnl then HAVE_IOCTLSOCKET_CAMEL will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_IOCTLSOCKET_CAMEL], [
-  AC_REQUIRE([CARES_INCLUDES_STROPTS])dnl
-  #
-  tst_links_ioctlsocket_camel="unknown"
-  tst_proto_ioctlsocket_camel="unknown"
-  tst_compi_ioctlsocket_camel="unknown"
-  tst_allow_ioctlsocket_camel="unknown"
-  #
-  AC_MSG_CHECKING([if IoctlSocket can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([IoctlSocket])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_ioctlsocket_camel="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_ioctlsocket_camel="no"
-  ])
-  #
-  if test "$tst_links_ioctlsocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if IoctlSocket is prototyped])
-    AC_EGREP_CPP([IoctlSocket],[
-      $cares_includes_stropts
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_ioctlsocket_camel="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_ioctlsocket_camel="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_ioctlsocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if IoctlSocket is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_stropts
-      ]],[[
-        if(0 != IoctlSocket(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctlsocket_camel="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctlsocket_camel="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctlsocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if IoctlSocket usage allowed])
-    if test "x$cares_disallow_ioctlsocket_camel" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctlsocket_camel="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctlsocket_camel="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if IoctlSocket might be used])
-  if test "$tst_links_ioctlsocket_camel" = "yes" &&
-     test "$tst_proto_ioctlsocket_camel" = "yes" &&
-     test "$tst_compi_ioctlsocket_camel" = "yes" &&
-     test "$tst_allow_ioctlsocket_camel" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTLSOCKET_CAMEL, 1,
-      [Define to 1 if you have the IoctlSocket camel case function.])
-    ac_cv_func_ioctlsocket_camel="yes"
-    CARES_CHECK_FUNC_IOCTLSOCKET_CAMEL_FIONBIO
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctlsocket_camel="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_IOCTLSOCKET_CAMEL_FIONBIO
-dnl -------------------------------------------------
-dnl Verify if IoctlSocket with FIONBIO command is available,
-dnl can be compiled, and seems to work. If all of these are
-dnl true, then HAVE_IOCTLSOCKET_CAMEL_FIONBIO will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_IOCTLSOCKET_CAMEL_FIONBIO], [
-  #
-  tst_compi_ioctlsocket_camel_fionbio="unknown"
-  tst_allow_ioctlsocket_camel_fionbio="unknown"
-  #
-  if test "$ac_cv_func_ioctlsocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if IoctlSocket FIONBIO is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_stropts
-      ]],[[
-        long flags = 0;
-        if(0 != ioctlsocket(0, FIONBIO, &flags))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctlsocket_camel_fionbio="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctlsocket_camel_fionbio="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctlsocket_camel_fionbio" = "yes"; then
-    AC_MSG_CHECKING([if IoctlSocket FIONBIO usage allowed])
-    if test "x$cares_disallow_ioctlsocket_camel_fionbio" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctlsocket_camel_fionbio="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctlsocket_camel_fionbio="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if IoctlSocket FIONBIO might be used])
-  if test "$tst_compi_ioctlsocket_camel_fionbio" = "yes" &&
-     test "$tst_allow_ioctlsocket_camel_fionbio" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTLSOCKET_CAMEL_FIONBIO, 1,
-      [Define to 1 if you have a working IoctlSocket camel case FIONBIO function.])
-    ac_cv_func_ioctlsocket_camel_fionbio="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctlsocket_camel_fionbio="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_SETSOCKOPT
-dnl -------------------------------------------------
-dnl Verify if setsockopt is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_setsockopt, then
-dnl HAVE_SETSOCKOPT will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_SETSOCKOPT], [
-  AC_REQUIRE([CARES_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CARES_INCLUDES_SYS_SOCKET])dnl
-  #
-  tst_links_setsockopt="unknown"
-  tst_proto_setsockopt="unknown"
-  tst_compi_setsockopt="unknown"
-  tst_allow_setsockopt="unknown"
-  #
-  AC_MSG_CHECKING([if setsockopt can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $cares_includes_winsock2
-      $cares_includes_sys_socket
-    ]],[[
-      if(0 != setsockopt(0, 0, 0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_setsockopt="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_setsockopt="no"
-  ])
-  #
-  if test "$tst_links_setsockopt" = "yes"; then
-    AC_MSG_CHECKING([if setsockopt is prototyped])
-    AC_EGREP_CPP([setsockopt],[
-      $cares_includes_winsock2
-      $cares_includes_sys_socket
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_setsockopt="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_setsockopt="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_setsockopt" = "yes"; then
-    AC_MSG_CHECKING([if setsockopt is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_winsock2
-        $cares_includes_sys_socket
-      ]],[[
-        if(0 != setsockopt(0, 0, 0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_setsockopt="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_setsockopt="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_setsockopt" = "yes"; then
-    AC_MSG_CHECKING([if setsockopt usage allowed])
-    if test "x$cares_disallow_setsockopt" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_setsockopt="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_setsockopt="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if setsockopt might be used])
-  if test "$tst_links_setsockopt" = "yes" &&
-     test "$tst_proto_setsockopt" = "yes" &&
-     test "$tst_compi_setsockopt" = "yes" &&
-     test "$tst_allow_setsockopt" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_SETSOCKOPT, 1,
-      [Define to 1 if you have the setsockopt function.])
-    ac_cv_func_setsockopt="yes"
-    CARES_CHECK_FUNC_SETSOCKOPT_SO_NONBLOCK
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_setsockopt="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_SETSOCKOPT_SO_NONBLOCK
-dnl -------------------------------------------------
-dnl Verify if setsockopt with the SO_NONBLOCK command is
-dnl available, can be compiled, and seems to work. If
-dnl all of these are true, then HAVE_SETSOCKOPT_SO_NONBLOCK
-dnl will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_SETSOCKOPT_SO_NONBLOCK], [
-  #
-  tst_compi_setsockopt_so_nonblock="unknown"
-  tst_allow_setsockopt_so_nonblock="unknown"
-  #
-  if test "$ac_cv_func_setsockopt" = "yes"; then
-    AC_MSG_CHECKING([if setsockopt SO_NONBLOCK is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_winsock2
-        $cares_includes_sys_socket
-      ]],[[
-        if(0 != setsockopt(0, SOL_SOCKET, SO_NONBLOCK, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_setsockopt_so_nonblock="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_setsockopt_so_nonblock="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_setsockopt_so_nonblock" = "yes"; then
-    AC_MSG_CHECKING([if setsockopt SO_NONBLOCK usage allowed])
-    if test "x$cares_disallow_setsockopt_so_nonblock" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_setsockopt_so_nonblock="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_setsockopt_so_nonblock="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if setsockopt SO_NONBLOCK might be used])
-  if test "$tst_compi_setsockopt_so_nonblock" = "yes" &&
-     test "$tst_allow_setsockopt_so_nonblock" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_SETSOCKOPT_SO_NONBLOCK, 1,
-      [Define to 1 if you have a working setsockopt SO_NONBLOCK function.])
-    ac_cv_func_setsockopt_so_nonblock="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_setsockopt_so_nonblock="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_SOCKET
-dnl -------------------------------------------------
-dnl Verify if socket is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_socket, then
-dnl HAVE_SOCKET will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_SOCKET], [
-  AC_REQUIRE([CARES_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CARES_INCLUDES_SYS_SOCKET])dnl
-  AC_REQUIRE([CARES_INCLUDES_SOCKET])dnl
-  #
-  tst_links_socket="unknown"
-  tst_proto_socket="unknown"
-  tst_compi_socket="unknown"
-  tst_allow_socket="unknown"
-  #
-  AC_MSG_CHECKING([if socket can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $cares_includes_winsock2
-      $cares_includes_sys_socket
-      $cares_includes_socket
-    ]],[[
-      if(0 != socket(0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_socket="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_socket="no"
-  ])
-  #
-  if test "$tst_links_socket" = "yes"; then
-    AC_MSG_CHECKING([if socket is prototyped])
-    AC_EGREP_CPP([socket],[
-      $cares_includes_winsock2
-      $cares_includes_sys_socket
-      $cares_includes_socket
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_socket="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_socket="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_socket" = "yes"; then
-    AC_MSG_CHECKING([if socket is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_winsock2
-        $cares_includes_sys_socket
-        $cares_includes_socket
-      ]],[[
-        if(0 != socket(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_socket="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_socket="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_socket" = "yes"; then
-    AC_MSG_CHECKING([if socket usage allowed])
-    if test "x$cares_disallow_socket" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_socket="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_socket="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if socket might be used])
-  if test "$tst_links_socket" = "yes" &&
-     test "$tst_proto_socket" = "yes" &&
-     test "$tst_compi_socket" = "yes" &&
-     test "$tst_allow_socket" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_SOCKET, 1,
-      [Define to 1 if you have the socket function.])
-    ac_cv_func_socket="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_socket="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_STRCASECMP
-dnl -------------------------------------------------
-dnl Verify if strcasecmp is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_strcasecmp, then
-dnl HAVE_STRCASECMP will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_STRCASECMP], [
-  AC_REQUIRE([CARES_INCLUDES_STRING])dnl
-  #
-  tst_links_strcasecmp="unknown"
-  tst_proto_strcasecmp="unknown"
-  tst_compi_strcasecmp="unknown"
-  tst_allow_strcasecmp="unknown"
-  #
-  AC_MSG_CHECKING([if strcasecmp can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strcasecmp])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strcasecmp="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strcasecmp="no"
-  ])
-  #
-  if test "$tst_links_strcasecmp" = "yes"; then
-    AC_MSG_CHECKING([if strcasecmp is prototyped])
-    AC_EGREP_CPP([strcasecmp],[
-      $cares_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strcasecmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strcasecmp="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strcasecmp" = "yes"; then
-    AC_MSG_CHECKING([if strcasecmp is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_string
-      ]],[[
-        if(0 != strcasecmp(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strcasecmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strcasecmp="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strcasecmp" = "yes"; then
-    AC_MSG_CHECKING([if strcasecmp usage allowed])
-    if test "x$cares_disallow_strcasecmp" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strcasecmp="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strcasecmp="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strcasecmp might be used])
-  if test "$tst_links_strcasecmp" = "yes" &&
-     test "$tst_proto_strcasecmp" = "yes" &&
-     test "$tst_compi_strcasecmp" = "yes" &&
-     test "$tst_allow_strcasecmp" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRCASECMP, 1,
-      [Define to 1 if you have the strcasecmp function.])
-    ac_cv_func_strcasecmp="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strcasecmp="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_STRCMPI
-dnl -------------------------------------------------
-dnl Verify if strcmpi is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_strcmpi, then
-dnl HAVE_STRCMPI will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_STRCMPI], [
-  AC_REQUIRE([CARES_INCLUDES_STRING])dnl
-  #
-  tst_links_strcmpi="unknown"
-  tst_proto_strcmpi="unknown"
-  tst_compi_strcmpi="unknown"
-  tst_allow_strcmpi="unknown"
-  #
-  AC_MSG_CHECKING([if strcmpi can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strcmpi])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strcmpi="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strcmpi="no"
-  ])
-  #
-  if test "$tst_links_strcmpi" = "yes"; then
-    AC_MSG_CHECKING([if strcmpi is prototyped])
-    AC_EGREP_CPP([strcmpi],[
-      $cares_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strcmpi="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strcmpi="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strcmpi" = "yes"; then
-    AC_MSG_CHECKING([if strcmpi is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_string
-      ]],[[
-        if(0 != strcmpi(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strcmpi="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strcmpi="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strcmpi" = "yes"; then
-    AC_MSG_CHECKING([if strcmpi usage allowed])
-    if test "x$cares_disallow_strcmpi" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strcmpi="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strcmpi="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strcmpi might be used])
-  if test "$tst_links_strcmpi" = "yes" &&
-     test "$tst_proto_strcmpi" = "yes" &&
-     test "$tst_compi_strcmpi" = "yes" &&
-     test "$tst_allow_strcmpi" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRCMPI, 1,
-      [Define to 1 if you have the strcmpi function.])
-    ac_cv_func_strcmpi="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strcmpi="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_STRDUP
-dnl -------------------------------------------------
-dnl Verify if strdup is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_strdup, then
-dnl HAVE_STRDUP will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_STRDUP], [
-  AC_REQUIRE([CARES_INCLUDES_STRING])dnl
-  #
-  tst_links_strdup="unknown"
-  tst_proto_strdup="unknown"
-  tst_compi_strdup="unknown"
-  tst_allow_strdup="unknown"
-  #
-  AC_MSG_CHECKING([if strdup can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strdup])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strdup="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strdup="no"
-  ])
-  #
-  if test "$tst_links_strdup" = "yes"; then
-    AC_MSG_CHECKING([if strdup is prototyped])
-    AC_EGREP_CPP([strdup],[
-      $cares_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strdup="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strdup="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strdup" = "yes"; then
-    AC_MSG_CHECKING([if strdup is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_string
-      ]],[[
-        if(0 != strdup(0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strdup="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strdup="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strdup" = "yes"; then
-    AC_MSG_CHECKING([if strdup usage allowed])
-    if test "x$cares_disallow_strdup" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strdup="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strdup="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strdup might be used])
-  if test "$tst_links_strdup" = "yes" &&
-     test "$tst_proto_strdup" = "yes" &&
-     test "$tst_compi_strdup" = "yes" &&
-     test "$tst_allow_strdup" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRDUP, 1,
-      [Define to 1 if you have the strdup function.])
-    ac_cv_func_strdup="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strdup="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_STRICMP
-dnl -------------------------------------------------
-dnl Verify if stricmp is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_stricmp, then
-dnl HAVE_STRICMP will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_STRICMP], [
-  AC_REQUIRE([CARES_INCLUDES_STRING])dnl
-  #
-  tst_links_stricmp="unknown"
-  tst_proto_stricmp="unknown"
-  tst_compi_stricmp="unknown"
-  tst_allow_stricmp="unknown"
-  #
-  AC_MSG_CHECKING([if stricmp can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([stricmp])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_stricmp="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_stricmp="no"
-  ])
-  #
-  if test "$tst_links_stricmp" = "yes"; then
-    AC_MSG_CHECKING([if stricmp is prototyped])
-    AC_EGREP_CPP([stricmp],[
-      $cares_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_stricmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_stricmp="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_stricmp" = "yes"; then
-    AC_MSG_CHECKING([if stricmp is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_string
-      ]],[[
-        if(0 != stricmp(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_stricmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_stricmp="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_stricmp" = "yes"; then
-    AC_MSG_CHECKING([if stricmp usage allowed])
-    if test "x$cares_disallow_stricmp" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_stricmp="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_stricmp="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if stricmp might be used])
-  if test "$tst_links_stricmp" = "yes" &&
-     test "$tst_proto_stricmp" = "yes" &&
-     test "$tst_compi_stricmp" = "yes" &&
-     test "$tst_allow_stricmp" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRICMP, 1,
-      [Define to 1 if you have the stricmp function.])
-    ac_cv_func_stricmp="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_stricmp="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_STRNCASECMP
-dnl -------------------------------------------------
-dnl Verify if strncasecmp is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_strncasecmp, then
-dnl HAVE_STRNCASECMP will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_STRNCASECMP], [
-  AC_REQUIRE([CARES_INCLUDES_STRING])dnl
-  #
-  tst_links_strncasecmp="unknown"
-  tst_proto_strncasecmp="unknown"
-  tst_compi_strncasecmp="unknown"
-  tst_allow_strncasecmp="unknown"
-  #
-  AC_MSG_CHECKING([if strncasecmp can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strncasecmp])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strncasecmp="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strncasecmp="no"
-  ])
-  #
-  if test "$tst_links_strncasecmp" = "yes"; then
-    AC_MSG_CHECKING([if strncasecmp is prototyped])
-    AC_EGREP_CPP([strncasecmp],[
-      $cares_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strncasecmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strncasecmp="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strncasecmp" = "yes"; then
-    AC_MSG_CHECKING([if strncasecmp is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_string
-      ]],[[
-        if(0 != strncasecmp(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strncasecmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strncasecmp="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strncasecmp" = "yes"; then
-    AC_MSG_CHECKING([if strncasecmp usage allowed])
-    if test "x$cares_disallow_strncasecmp" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strncasecmp="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strncasecmp="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strncasecmp might be used])
-  if test "$tst_links_strncasecmp" = "yes" &&
-     test "$tst_proto_strncasecmp" = "yes" &&
-     test "$tst_compi_strncasecmp" = "yes" &&
-     test "$tst_allow_strncasecmp" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRNCASECMP, 1,
-      [Define to 1 if you have the strncasecmp function.])
-    ac_cv_func_strncasecmp="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strncasecmp="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_STRNCMPI
-dnl -------------------------------------------------
-dnl Verify if strncmpi is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_strncmpi, then
-dnl HAVE_STRNCMPI will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_STRNCMPI], [
-  AC_REQUIRE([CARES_INCLUDES_STRING])dnl
-  #
-  tst_links_strncmpi="unknown"
-  tst_proto_strncmpi="unknown"
-  tst_compi_strncmpi="unknown"
-  tst_allow_strncmpi="unknown"
-  #
-  AC_MSG_CHECKING([if strncmpi can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strncmpi])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strncmpi="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strncmpi="no"
-  ])
-  #
-  if test "$tst_links_strncmpi" = "yes"; then
-    AC_MSG_CHECKING([if strncmpi is prototyped])
-    AC_EGREP_CPP([strncmpi],[
-      $cares_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strncmpi="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strncmpi="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strncmpi" = "yes"; then
-    AC_MSG_CHECKING([if strncmpi is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_string
-      ]],[[
-        if(0 != strncmpi(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strncmpi="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strncmpi="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strncmpi" = "yes"; then
-    AC_MSG_CHECKING([if strncmpi usage allowed])
-    if test "x$cares_disallow_strncmpi" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strncmpi="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strncmpi="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strncmpi might be used])
-  if test "$tst_links_strncmpi" = "yes" &&
-     test "$tst_proto_strncmpi" = "yes" &&
-     test "$tst_compi_strncmpi" = "yes" &&
-     test "$tst_allow_strncmpi" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRNCMPI, 1,
-      [Define to 1 if you have the strncmpi function.])
-    ac_cv_func_strncmpi="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strncmpi="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_STRNICMP
-dnl -------------------------------------------------
-dnl Verify if strnicmp is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_strnicmp, then
-dnl HAVE_STRNICMP will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_STRNICMP], [
-  AC_REQUIRE([CARES_INCLUDES_STRING])dnl
-  #
-  tst_links_strnicmp="unknown"
-  tst_proto_strnicmp="unknown"
-  tst_compi_strnicmp="unknown"
-  tst_allow_strnicmp="unknown"
-  #
-  AC_MSG_CHECKING([if strnicmp can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strnicmp])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strnicmp="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strnicmp="no"
-  ])
-  #
-  if test "$tst_links_strnicmp" = "yes"; then
-    AC_MSG_CHECKING([if strnicmp is prototyped])
-    AC_EGREP_CPP([strnicmp],[
-      $cares_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strnicmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strnicmp="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strnicmp" = "yes"; then
-    AC_MSG_CHECKING([if strnicmp is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_string
-      ]],[[
-        if(0 != strnicmp(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strnicmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strnicmp="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strnicmp" = "yes"; then
-    AC_MSG_CHECKING([if strnicmp usage allowed])
-    if test "x$cares_disallow_strnicmp" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strnicmp="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strnicmp="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strnicmp might be used])
-  if test "$tst_links_strnicmp" = "yes" &&
-     test "$tst_proto_strnicmp" = "yes" &&
-     test "$tst_compi_strnicmp" = "yes" &&
-     test "$tst_allow_strnicmp" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRNICMP, 1,
-      [Define to 1 if you have the strnicmp function.])
-    ac_cv_func_strnicmp="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strnicmp="no"
-  fi
-])
-
-
-dnl CARES_CHECK_FUNC_WRITEV
-dnl -------------------------------------------------
-dnl Verify if writev is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable cares_disallow_writev, then
-dnl HAVE_WRITEV will be defined.
-
-AC_DEFUN([CARES_CHECK_FUNC_WRITEV], [
-  AC_REQUIRE([CARES_INCLUDES_SYS_UIO])dnl
-  #
-  tst_links_writev="unknown"
-  tst_proto_writev="unknown"
-  tst_compi_writev="unknown"
-  tst_allow_writev="unknown"
-  #
-  AC_MSG_CHECKING([if writev can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([writev])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_writev="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_writev="no"
-  ])
-  #
-  if test "$tst_links_writev" = "yes"; then
-    AC_MSG_CHECKING([if writev is prototyped])
-    AC_EGREP_CPP([writev],[
-      $cares_includes_sys_uio
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_writev="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_writev="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_writev" = "yes"; then
-    AC_MSG_CHECKING([if writev is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $cares_includes_sys_uio
-      ]],[[
-        if(0 != writev(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_writev="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_writev="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_writev" = "yes"; then
-    AC_MSG_CHECKING([if writev usage allowed])
-    if test "x$cares_disallow_writev" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_writev="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_writev="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if writev might be used])
-  if test "$tst_links_writev" = "yes" &&
-     test "$tst_proto_writev" = "yes" &&
-     test "$tst_compi_writev" = "yes" &&
-     test "$tst_allow_writev" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_WRITEV, 1,
-      [Define to 1 if you have the writev function.])
-    ac_cv_func_writev="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_writev="no"
-  fi
-])
diff --git a/src/other/ares/m4/cares-override.m4 b/src/other/ares/m4/cares-override.m4
deleted file mode 100644
index b29c960..0000000
--- a/src/other/ares/m4/cares-override.m4
+++ /dev/null
@@ -1,102 +0,0 @@
-#***************************************************************************
-# $Id$
-#***************************************************************************
-
-# File version for 'aclocal' use. Keep it a single number.
-# serial 3
-
-dnl CARES_OVERRIDE_AUTOCONF
-dnl -------------------------------------------------
-dnl Placing a call to this macro in configure.ac after
-dnl the one to AC_INIT will make macros in this file
-dnl visible to the rest of the compilation overriding
-dnl those from Autoconf.
-
-AC_DEFUN([CARES_OVERRIDE_AUTOCONF], [
-AC_BEFORE([$0],[AC_PROG_LIBTOOL])
-# using cares-override.m4
-])
-
-dnl Override some Libtool tests
-dnl -------------------------------------------------
-dnl This is done to prevent Libtool 1.5.X from doing
-dnl unnecesary C++, Fortran and Java tests and reduce
-dnl resulting configure script by nearly 300 Kb.
-
-m4_define([AC_LIBTOOL_LANG_CXX_CONFIG],[:])
-m4_define([AC_LIBTOOL_LANG_F77_CONFIG],[:])
-m4_define([AC_LIBTOOL_LANG_GCJ_CONFIG],[:])
-
-dnl Override Autoconf's AC_LANG_PROGRAM (C)
-dnl -------------------------------------------------
-dnl This is done to prevent compiler warning
-dnl 'function declaration isn't a prototype'
-dnl in function main. This requires at least
-dnl a c89 compiler and does not suport K&R.
-
-m4_define([AC_LANG_PROGRAM(C)],
-[$1
-int main (void)
-{
-$2
- ;
- return 0;
-}])
-
-dnl Override Autoconf's AC_LANG_CALL (C)
-dnl -------------------------------------------------
-dnl This is a backport of Autoconf's 2.60 with the
-dnl embedded comments that hit the resulting script
-dnl removed. This is done to reduce configure size
-dnl and use fixed macro across Autoconf versions.
-
-m4_define([AC_LANG_CALL(C)],
-[AC_LANG_PROGRAM([$1
-m4_if([$2], [main], ,
-[
-#ifdef __cplusplus
-extern "C"
-#endif
-char $2 ();])], [return $2 ();])])
-
-dnl Override Autoconf's AC_LANG_FUNC_LINK_TRY (C)
-dnl -------------------------------------------------
-dnl This is a backport of Autoconf's 2.60 with the
-dnl embedded comments that hit the resulting script
-dnl removed. This is done to reduce configure size
-dnl and use fixed macro across Autoconf versions.
-
-m4_define([AC_LANG_FUNC_LINK_TRY(C)],
-[AC_LANG_PROGRAM(
-[
-#define $1 innocuous_$1
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef $1
-#ifdef __cplusplus
-extern "C"
-#endif
-char $1 ();
-#if defined __stub_$1 || defined __stub___$1
-choke me
-#endif
-], [return $1 ();])])
-
-dnl Override Autoconf's PATH_SEPARATOR check
-dnl -------------------------------------------------
-dnl This is done to ensure that the same check is
-dnl used across different Autoconf versions and to
-dnl allow us to use this macro early enough in the
-dnl configure script.
-
-m4_defun([_AS_PATH_SEPARATOR_PREPARE],
-[CARES_CHECK_PATH_SEPARATOR
-m4_define([$0],[])])
-
-m4_defun([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR],
-[CARES_CHECK_PATH_SEPARATOR
-m4_define([$0],[])])
-
diff --git a/src/other/ares/m4/cares-reentrant.m4 b/src/other/ares/m4/cares-reentrant.m4
deleted file mode 100644
index 052326b..0000000
--- a/src/other/ares/m4/cares-reentrant.m4
+++ /dev/null
@@ -1,611 +0,0 @@
-#***************************************************************************
-# $Id$
-#
-# Copyright (C) 2008 - 2009 by Daniel Stenberg et al
-#
-# Permission to use, copy, modify, and distribute this software and its
-# documentation for any purpose and without fee is hereby granted, provided
-# that the above copyright notice appear in all copies and that both that
-# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of M.I.T. not be used in advertising or
-# publicity pertaining to distribution of the software without specific,
-# written prior permission.  M.I.T. makes no representations about the
-# suitability of this software for any purpose.  It is provided "as is"
-# without express or implied warranty.
-#
-#***************************************************************************
-
-# File version for 'aclocal' use. Keep it a single number.
-# serial 6
-
-dnl Note 1
-dnl ------
-dnl None of the CARES_CHECK_NEED_REENTRANT_* macros shall use HAVE_FOO_H to
-dnl conditionally include header files. These macros are used early in the
-dnl configure process much before header file availability is known.
-
-
-dnl CARES_CHECK_NEED_REENTRANT_ERRNO
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes errno available as a preprocessor macro.
-
-AC_DEFUN([CARES_CHECK_NEED_REENTRANT_ERRNO], [
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-#include <errno.h>
-    ]],[[
-      if(0 != errno)
-        return 1;
-    ]])
-  ],[
-    tmp_errno="yes"
-  ],[
-    tmp_errno="no"
-  ])
-  if test "$tmp_errno" = "yes"; then
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <errno.h>
-      ]],[[
-#ifdef errno
-        int dummy=1;
-#else
-        force compilation error
-#endif
-      ]])
-    ],[
-      tmp_errno="errno_macro_defined"
-    ],[
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-#define _REENTRANT
-#include <errno.h>
-        ]],[[
-#ifdef errno
-          int dummy=1;
-#else
-          force compilation error
-#endif
-        ]])
-      ],[
-        tmp_errno="errno_macro_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CARES_CHECK_NEED_REENTRANT_GMTIME_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function gmtime_r compiler visible.
-
-AC_DEFUN([CARES_CHECK_NEED_REENTRANT_GMTIME_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([gmtime_r])
-  ],[
-    tmp_gmtime_r="yes"
-  ],[
-    tmp_gmtime_r="no"
-  ])
-  if test "$tmp_gmtime_r" = "yes"; then
-    AC_EGREP_CPP([gmtime_r],[
-#include <sys/types.h>
-#include <time.h>
-    ],[
-      tmp_gmtime_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([gmtime_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <time.h>
-      ],[
-        tmp_gmtime_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CARES_CHECK_NEED_REENTRANT_LOCALTIME_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function localtime_r compiler visible.
-
-AC_DEFUN([CARES_CHECK_NEED_REENTRANT_LOCALTIME_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([localtime_r])
-  ],[
-    tmp_localtime_r="yes"
-  ],[
-    tmp_localtime_r="no"
-  ])
-  if test "$tmp_localtime_r" = "yes"; then
-    AC_EGREP_CPP([localtime_r],[
-#include <sys/types.h>
-#include <time.h>
-    ],[
-      tmp_localtime_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([localtime_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <time.h>
-      ],[
-        tmp_localtime_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CARES_CHECK_NEED_REENTRANT_STRERROR_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function strerror_r compiler visible.
-
-AC_DEFUN([CARES_CHECK_NEED_REENTRANT_STRERROR_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strerror_r])
-  ],[
-    tmp_strerror_r="yes"
-  ],[
-    tmp_strerror_r="no"
-  ])
-  if test "$tmp_strerror_r" = "yes"; then
-    AC_EGREP_CPP([strerror_r],[
-#include <sys/types.h>
-#include <string.h>
-    ],[
-      tmp_strerror_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([strerror_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <string.h>
-      ],[
-        tmp_strerror_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CARES_CHECK_NEED_REENTRANT_STRTOK_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function strtok_r compiler visible.
-
-AC_DEFUN([CARES_CHECK_NEED_REENTRANT_STRTOK_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strtok_r])
-  ],[
-    tmp_strtok_r="yes"
-  ],[
-    tmp_strtok_r="no"
-  ])
-  if test "$tmp_strtok_r" = "yes"; then
-    AC_EGREP_CPP([strtok_r],[
-#include <sys/types.h>
-#include <string.h>
-    ],[
-      tmp_strtok_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([strtok_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <string.h>
-      ],[
-        tmp_strtok_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CARES_CHECK_NEED_REENTRANT_INET_NTOA_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function inet_ntoa_r compiler visible.
-
-AC_DEFUN([CARES_CHECK_NEED_REENTRANT_INET_NTOA_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([inet_ntoa_r])
-  ],[
-    tmp_inet_ntoa_r="yes"
-  ],[
-    tmp_inet_ntoa_r="no"
-  ])
-  if test "$tmp_inet_ntoa_r" = "yes"; then
-    AC_EGREP_CPP([inet_ntoa_r],[
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-    ],[
-      tmp_inet_ntoa_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([inet_ntoa_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-      ],[
-        tmp_inet_ntoa_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CARES_CHECK_NEED_REENTRANT_GETHOSTBYADDR_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function gethostbyaddr_r compiler visible.
-
-AC_DEFUN([CARES_CHECK_NEED_REENTRANT_GETHOSTBYADDR_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([gethostbyaddr_r])
-  ],[
-    tmp_gethostbyaddr_r="yes"
-  ],[
-    tmp_gethostbyaddr_r="no"
-  ])
-  if test "$tmp_gethostbyaddr_r" = "yes"; then
-    AC_EGREP_CPP([gethostbyaddr_r],[
-#include <sys/types.h>
-#include <netdb.h>
-    ],[
-      tmp_gethostbyaddr_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([gethostbyaddr_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-      ],[
-        tmp_gethostbyaddr_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CARES_CHECK_NEED_REENTRANT_GETHOSTBYNAME_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function gethostbyname_r compiler visible.
-
-AC_DEFUN([CARES_CHECK_NEED_REENTRANT_GETHOSTBYNAME_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([gethostbyname_r])
-  ],[
-    tmp_gethostbyname_r="yes"
-  ],[
-    tmp_gethostbyname_r="no"
-  ])
-  if test "$tmp_gethostbyname_r" = "yes"; then
-    AC_EGREP_CPP([gethostbyname_r],[
-#include <sys/types.h>
-#include <netdb.h>
-    ],[
-      tmp_gethostbyname_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([gethostbyname_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-      ],[
-        tmp_gethostbyname_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CARES_CHECK_NEED_REENTRANT_GETPROTOBYNAME_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function getprotobyname_r compiler visible.
-
-AC_DEFUN([CARES_CHECK_NEED_REENTRANT_GETPROTOBYNAME_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([getprotobyname_r])
-  ],[
-    tmp_getprotobyname_r="yes"
-  ],[
-    tmp_getprotobyname_r="no"
-  ])
-  if test "$tmp_getprotobyname_r" = "yes"; then
-    AC_EGREP_CPP([getprotobyname_r],[
-#include <sys/types.h>
-#include <netdb.h>
-    ],[
-      tmp_getprotobyname_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([getprotobyname_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-      ],[
-        tmp_getprotobyname_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CARES_CHECK_NEED_REENTRANT_GETSERVBYPORT_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function getservbyport_r compiler visible.
-
-AC_DEFUN([CARES_CHECK_NEED_REENTRANT_GETSERVBYPORT_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([getservbyport_r])
-  ],[
-    tmp_getservbyport_r="yes"
-  ],[
-    tmp_getservbyport_r="no"
-  ])
-  if test "$tmp_getservbyport_r" = "yes"; then
-    AC_EGREP_CPP([getservbyport_r],[
-#include <sys/types.h>
-#include <netdb.h>
-    ],[
-      tmp_getservbyport_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([getservbyport_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-      ],[
-        tmp_getservbyport_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CARES_CHECK_NEED_REENTRANT_FUNCTIONS_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes several _r functions compiler visible.
-dnl Internal macro for CARES_CONFIGURE_REENTRANT.
-
-AC_DEFUN([CARES_CHECK_NEED_REENTRANT_FUNCTIONS_R], [
-  if test "$tmp_need_reentrant" = "no"; then
-    CARES_CHECK_NEED_REENTRANT_GMTIME_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CARES_CHECK_NEED_REENTRANT_LOCALTIME_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CARES_CHECK_NEED_REENTRANT_STRERROR_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CARES_CHECK_NEED_REENTRANT_STRTOK_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CARES_CHECK_NEED_REENTRANT_INET_NTOA_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CARES_CHECK_NEED_REENTRANT_GETHOSTBYADDR_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CARES_CHECK_NEED_REENTRANT_GETHOSTBYNAME_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CARES_CHECK_NEED_REENTRANT_GETPROTOBYNAME_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CARES_CHECK_NEED_REENTRANT_GETSERVBYPORT_R
-  fi
-])
-
-
-dnl CARES_CHECK_NEED_REENTRANT_SYSTEM
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl must be unconditionally done for this platform.
-dnl Internal macro for CARES_CONFIGURE_REENTRANT.
-
-AC_DEFUN([CARES_CHECK_NEED_REENTRANT_SYSTEM], [
-  case $host_os in
-    solaris*)
-      tmp_need_reentrant="yes"
-      ;;
-    *)
-      tmp_need_reentrant="no"
-      ;;
-  esac
-])
-
-
-dnl CARES_CHECK_NEED_THREAD_SAFE_SYSTEM
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _THREAD_SAFE definition
-dnl must be unconditionally done for this platform.
-dnl Internal macro for CARES_CONFIGURE_THREAD_SAFE.
-
-AC_DEFUN([CARES_CHECK_NEED_THREAD_SAFE_SYSTEM], [
-  case $host_os in
-    aix[[123]].* | aix4.[[012]].*)
-      dnl aix 4.2 and older
-      tmp_need_thread_safe="no"
-      ;;
-    aix*)
-      dnl AIX 4.3 and newer
-      tmp_need_thread_safe="yes"
-      ;;
-    *)
-      tmp_need_thread_safe="no"
-      ;;
-  esac
-])
-
-
-dnl CARES_CONFIGURE_FROM_NOW_ON_WITH_REENTRANT
-dnl -------------------------------------------------
-dnl This macro ensures that configuration tests done
-dnl after this will execute with preprocessor symbol
-dnl _REENTRANT defined. This macro also ensures that
-dnl the generated config file defines NEED_REENTRANT
-dnl and that in turn setup.h will define _REENTRANT.
-dnl Internal macro for CARES_CONFIGURE_REENTRANT.
-
-AC_DEFUN([CARES_CONFIGURE_FROM_NOW_ON_WITH_REENTRANT], [
-AC_DEFINE(NEED_REENTRANT, 1,
-  [Define to 1 if _REENTRANT preprocessor symbol must be defined.])
-cat >>confdefs.h <<_EOF
-#ifndef _REENTRANT
-#  define _REENTRANT
-#endif
-_EOF
-])
-
-
-dnl CARES_CONFIGURE_FROM_NOW_ON_WITH_THREAD_SAFE
-dnl -------------------------------------------------
-dnl This macro ensures that configuration tests done
-dnl after this will execute with preprocessor symbol
-dnl _THREAD_SAFE defined. This macro also ensures that
-dnl the generated config file defines NEED_THREAD_SAFE
-dnl and that in turn setup.h will define _THREAD_SAFE.
-dnl Internal macro for CARES_CONFIGURE_THREAD_SAFE.
-
-AC_DEFUN([CARES_CONFIGURE_FROM_NOW_ON_WITH_THREAD_SAFE], [
-AC_DEFINE(NEED_THREAD_SAFE, 1,
-  [Define to 1 if _THREAD_SAFE preprocessor symbol must be defined.])
-cat >>confdefs.h <<_EOF
-#ifndef _THREAD_SAFE
-#  define _THREAD_SAFE
-#endif
-_EOF
-])
-
-
-dnl CARES_CONFIGURE_REENTRANT
-dnl -------------------------------------------------
-dnl This first checks if the preprocessor _REENTRANT
-dnl symbol is already defined. If it isn't currently
-dnl defined a set of checks are performed to verify
-dnl if its definition is required to make visible to
-dnl the compiler a set of *_r functions. Finally, if
-dnl _REENTRANT is already defined or needed it takes
-dnl care of making adjustments necessary to ensure
-dnl that it is defined equally for further configure
-dnl tests and generated config file.
-
-AC_DEFUN([CARES_CONFIGURE_REENTRANT], [
-  AC_PREREQ([2.50])dnl
-  #
-  AC_MSG_CHECKING([if _REENTRANT is already defined])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-#ifdef _REENTRANT
-      int dummy=1;
-#else
-      force compilation error
-#endif
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tmp_reentrant_initially_defined="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tmp_reentrant_initially_defined="no"
-  ])
-  #
-  if test "$tmp_reentrant_initially_defined" = "no"; then
-    AC_MSG_CHECKING([if _REENTRANT is actually needed])
-    CARES_CHECK_NEED_REENTRANT_SYSTEM
-    if test "$tmp_need_reentrant" = "no"; then
-      CARES_CHECK_NEED_REENTRANT_ERRNO
-    fi
-    if test "$tmp_need_reentrant" = "no"; then
-      CARES_CHECK_NEED_REENTRANT_FUNCTIONS_R
-    fi
-    if test "$tmp_need_reentrant" = "yes"; then
-      AC_MSG_RESULT([yes])
-    else
-      AC_MSG_RESULT([no])
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if _REENTRANT is onwards defined])
-  if test "$tmp_reentrant_initially_defined" = "yes" ||
-    test "$tmp_need_reentrant" = "yes"; then
-    CARES_CONFIGURE_FROM_NOW_ON_WITH_REENTRANT
-    AC_MSG_RESULT([yes])
-  else
-    AC_MSG_RESULT([no])
-  fi
-  #
-])
-
-
-dnl CARES_CONFIGURE_THREAD_SAFE
-dnl -------------------------------------------------
-dnl This first checks if the preprocessor _THREAD_SAFE
-dnl symbol is already defined. If it isn't currently
-dnl defined a set of checks are performed to verify
-dnl if its definition is required. Finally, if
-dnl _THREAD_SAFE is already defined or needed it takes
-dnl care of making adjustments necessary to ensure
-dnl that it is defined equally for further configure
-dnl tests and generated config file.
-
-AC_DEFUN([CARES_CONFIGURE_THREAD_SAFE], [
-  AC_PREREQ([2.50])dnl
-  #
-  AC_MSG_CHECKING([if _THREAD_SAFE is already defined])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-#ifdef _THREAD_SAFE
-      int dummy=1;
-#else
-      force compilation error
-#endif
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tmp_thread_safe_initially_defined="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tmp_thread_safe_initially_defined="no"
-  ])
-  #
-  if test "$tmp_thread_safe_initially_defined" = "no"; then
-    AC_MSG_CHECKING([if _THREAD_SAFE is actually needed])
-    CARES_CHECK_NEED_THREAD_SAFE_SYSTEM
-    if test "$tmp_need_thread_safe" = "yes"; then
-      AC_MSG_RESULT([yes])
-    else
-      AC_MSG_RESULT([no])
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if _THREAD_SAFE is onwards defined])
-  if test "$tmp_thread_safe_initially_defined" = "yes" ||
-    test "$tmp_need_thread_safe" = "yes"; then
-    CARES_CONFIGURE_FROM_NOW_ON_WITH_THREAD_SAFE
-    AC_MSG_RESULT([yes])
-  else
-    AC_MSG_RESULT([no])
-  fi
-  #
-])
diff --git a/src/other/ares/m4/cares-system.m4 b/src/other/ares/m4/cares-system.m4
deleted file mode 100644
index f0adc89..0000000
--- a/src/other/ares/m4/cares-system.m4
+++ /dev/null
@@ -1,83 +0,0 @@
-#***************************************************************************
-# $Id$
-#
-# Copyright (C) 2008 - 2009 by Daniel Stenberg et al
-#
-# Permission to use, copy, modify, and distribute this software and its
-# documentation for any purpose and without fee is hereby granted, provided
-# that the above copyright notice appear in all copies and that both that
-# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of M.I.T. not be used in advertising or
-# publicity pertaining to distribution of the software without specific,
-# written prior permission.  M.I.T. makes no representations about the
-# suitability of this software for any purpose.  It is provided "as is"
-# without express or implied warranty.
-#
-#***************************************************************************
-
-# File version for 'aclocal' use. Keep it a single number.
-# serial 3
-
-
-dnl CARES_CHECK_PATH_SEPARATOR
-dnl -------------------------------------------------
-dnl Check and compute the path separator for us. This
-dnl path separator is the symbol used to diferentiate
-dnl or separate paths inside the PATH environment var.
-
-AC_DEFUN([CARES_CHECK_PATH_SEPARATOR], [
-  if test -z "$cares_cv_PATH_SEPARATOR"; then
-    if test -z "$PATH"; then
-      AC_MSG_ERROR([PATH not set. Cannot continue without PATH being set.])
-    fi
-    dnl Directory count in PATH when using a colon separator.
-    tst_dirs_col=0
-    tst_save_IFS=$IFS; IFS=':'
-    for tst_dir in $PATH; do
-      IFS=$tst_save_IFS
-      test -d "$tst_dir" && tst_dirs_col=`expr $tst_dirs_col + 1`
-    done
-    IFS=$tst_save_IFS
-    dnl Directory count in PATH when using a semicolon separator.
-    tst_dirs_sem=0
-    tst_save_IFS=$IFS; IFS=';'
-    for tst_dir in $PATH; do
-      IFS=$tst_save_IFS
-      test -d "$tst_dir" && tst_dirs_sem=`expr $tst_dirs_sem + 1`
-    done
-    IFS=$tst_save_IFS
-    if test $tst_dirs_sem -eq $tst_dirs_col; then
-      dnl When both counting methods give the same result we do not want to
-      dnl chose one over the other, and consider auto-detection not possible.
-      if test -z "$PATH_SEPARATOR"; then
-        dnl Stop dead until user provides PATH_SEPARATOR definition.
-        AC_MSG_ERROR([PATH_SEPARATOR not set. Cannot continue without it.])
-      fi
-    else
-      dnl Separator with the greater directory count is the auto-detected one.
-      if test $tst_dirs_sem -gt $tst_dirs_col; then
-        tst_auto_separator=';'
-      else
-        tst_auto_separator=':'
-      fi
-      if test -z "$PATH_SEPARATOR"; then
-        dnl Simply use the auto-detected one when not already set.
-        PATH_SEPARATOR="$tst_auto_separator"
-      fi
-    fi
-    cares_cv_PATH_SEPARATOR="$PATH_SEPARATOR"
-  fi
-  AC_SUBST([PATH_SEPARATOR])
-  AC_SUBST([PATH])
-])
-
-
-dnl CARES_CHECK_PATH_SEPARATOR_REQUIRED
-dnl -------------------------------------------------
-dnl Use this to ensure that the path separator check
-dnl macro is only expanded and included once.
-
-AC_DEFUN([CARES_CHECK_PATH_SEPARATOR_REQUIRED], [
-  AC_REQUIRE([CARES_CHECK_PATH_SEPARATOR])dnl
-])
-
diff --git a/src/other/ares/m4/libtool.m4 b/src/other/ares/m4/libtool.m4
deleted file mode 100644
index 88de383..0000000
--- a/src/other/ares/m4/libtool.m4
+++ /dev/null
@@ -1,7835 +0,0 @@
-# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
-#
-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-#                 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
-#                 Inc.
-#   Written by Gordon Matzigkeit, 1996
-#
-# This file 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.
-
-m4_define([_LT_COPYING], [dnl
-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-#                 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
-#                 Inc.
-#   Written by Gordon Matzigkeit, 1996
-#
-#   This file is part of GNU Libtool.
-#
-# 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 GNU Libtool; see the file COPYING.  If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-])
-
-# serial 57 LT_INIT
-
-
-# LT_PREREQ(VERSION)
-# ------------------
-# Complain and exit if this libtool version is less that VERSION.
-m4_defun([LT_PREREQ],
-[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
-       [m4_default([$3],
-		   [m4_fatal([Libtool version $1 or higher is required],
-		             63)])],
-       [$2])])
-
-
-# _LT_CHECK_BUILDDIR
-# ------------------
-# Complain if the absolute build directory name contains unusual characters
-m4_defun([_LT_CHECK_BUILDDIR],
-[case `pwd` in
-  *\ * | *\	*)
-    AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
-esac
-])
-
-
-# LT_INIT([OPTIONS])
-# ------------------
-AC_DEFUN([LT_INIT],
-[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
-AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
-AC_BEFORE([$0], [LT_LANG])dnl
-AC_BEFORE([$0], [LT_OUTPUT])dnl
-AC_BEFORE([$0], [LTDL_INIT])dnl
-m4_require([_LT_CHECK_BUILDDIR])dnl
-
-dnl Autoconf doesn't catch unexpanded LT_ macros by default:
-m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
-m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
-dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
-dnl unless we require an AC_DEFUNed macro:
-AC_REQUIRE([LTOPTIONS_VERSION])dnl
-AC_REQUIRE([LTSUGAR_VERSION])dnl
-AC_REQUIRE([LTVERSION_VERSION])dnl
-AC_REQUIRE([LTOBSOLETE_VERSION])dnl
-m4_require([_LT_PROG_LTMAIN])dnl
-
-_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
-
-dnl Parse OPTIONS
-_LT_SET_OPTIONS([$0], [$1])
-
-# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
-
-# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-AC_SUBST(LIBTOOL)dnl
-
-_LT_SETUP
-
-# Only expand once:
-m4_define([LT_INIT])
-])# LT_INIT
-
-# Old names:
-AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
-AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
-dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
-
-
-# _LT_CC_BASENAME(CC)
-# -------------------
-# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
-m4_defun([_LT_CC_BASENAME],
-[for cc_temp in $1""; do
-  case $cc_temp in
-    compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
-    distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
-    \-*) ;;
-    *) break;;
-  esac
-done
-cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
-])
-
-
-# _LT_FILEUTILS_DEFAULTS
-# ----------------------
-# It is okay to use these file commands and assume they have been set
-# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
-m4_defun([_LT_FILEUTILS_DEFAULTS],
-[: ${CP="cp -f"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-])# _LT_FILEUTILS_DEFAULTS
-
-
-# _LT_SETUP
-# ---------
-m4_defun([_LT_SETUP],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
-AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
-
-_LT_DECL([], [host_alias], [0], [The host system])dnl
-_LT_DECL([], [host], [0])dnl
-_LT_DECL([], [host_os], [0])dnl
-dnl
-_LT_DECL([], [build_alias], [0], [The build system])dnl
-_LT_DECL([], [build], [0])dnl
-_LT_DECL([], [build_os], [0])dnl
-dnl
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([LT_PATH_LD])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-dnl
-AC_REQUIRE([AC_PROG_LN_S])dnl
-test -z "$LN_S" && LN_S="ln -s"
-_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
-dnl
-AC_REQUIRE([LT_CMD_MAX_LEN])dnl
-_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
-_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
-dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_CHECK_SHELL_FEATURES])dnl
-m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
-m4_require([_LT_CMD_RELOAD])dnl
-m4_require([_LT_CHECK_MAGIC_METHOD])dnl
-m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
-m4_require([_LT_CMD_OLD_ARCHIVE])dnl
-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
-m4_require([_LT_WITH_SYSROOT])dnl
-
-_LT_CONFIG_LIBTOOL_INIT([
-# See if we are running on zsh, and set the options which allow our
-# commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
-   setopt NO_GLOB_SUBST
-fi
-])
-if test -n "${ZSH_VERSION+set}" ; then
-   setopt NO_GLOB_SUBST
-fi
-
-_LT_CHECK_OBJDIR
-
-m4_require([_LT_TAG_COMPILER])dnl
-
-case $host_os in
-aix3*)
-  # 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 "X${COLLECT_NAMES+set}" != Xset; then
-    COLLECT_NAMES=
-    export COLLECT_NAMES
-  fi
-  ;;
-esac
-
-# Global variables:
-ofile=libtool
-can_build_shared=yes
-
-# All known linkers require a `.a' archive for static linking (except MSVC,
-# which needs '.lib').
-libext=a
-
-with_gnu_ld="$lt_cv_prog_gnu_ld"
-
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
-
-# Set sane defaults for various variables
-test -z "$CC" && CC=cc
-test -z "$LTCC" && LTCC=$CC
-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
-test -z "$LD" && LD=ld
-test -z "$ac_objext" && ac_objext=o
-
-_LT_CC_BASENAME([$compiler])
-
-# Only perform the check for file, if the check method requires it
-test -z "$MAGIC_CMD" && MAGIC_CMD=file
-case $deplibs_check_method in
-file_magic*)
-  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
-    _LT_PATH_MAGIC
-  fi
-  ;;
-esac
-
-# Use C for the default configuration in the libtool script
-LT_SUPPORTED_TAG([CC])
-_LT_LANG_C_CONFIG
-_LT_LANG_DEFAULT_CONFIG
-_LT_CONFIG_COMMANDS
-])# _LT_SETUP
-
-
-# _LT_PREPARE_SED_QUOTE_VARS
-# --------------------------
-# Define a few sed substitution that help us do robust quoting.
-m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
-[# Backslashify metacharacters that are still active within
-# double-quoted strings.
-sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\([["`\\]]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# Sed substitution to delay expansion of an escaped single quote.
-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
-
-# Sed substitution to avoid accidental globbing in evaled expressions
-no_glob_subst='s/\*/\\\*/g'
-])
-
-# _LT_PROG_LTMAIN
-# ---------------
-# Note that this code is called both from `configure', and `config.status'
-# now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably,
-# `config.status' has no value for ac_aux_dir unless we are using Automake,
-# so we pass a copy along to make sure it has a sensible value anyway.
-m4_defun([_LT_PROG_LTMAIN],
-[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
-_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
-ltmain="$ac_aux_dir/ltmain.sh"
-])# _LT_PROG_LTMAIN
-
-
-## ------------------------------------- ##
-## Accumulate code for creating libtool. ##
-## ------------------------------------- ##
-
-# So that we can recreate a full libtool script including additional
-# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
-# in macros and then make a single call at the end using the `libtool'
-# label.
-
-
-# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
-# ----------------------------------------
-# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
-m4_define([_LT_CONFIG_LIBTOOL_INIT],
-[m4_ifval([$1],
-          [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
-                     [$1
-])])])
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_INIT])
-
-
-# _LT_CONFIG_LIBTOOL([COMMANDS])
-# ------------------------------
-# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
-m4_define([_LT_CONFIG_LIBTOOL],
-[m4_ifval([$1],
-          [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
-                     [$1
-])])])
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
-
-
-# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
-# -----------------------------------------------------
-m4_defun([_LT_CONFIG_SAVE_COMMANDS],
-[_LT_CONFIG_LIBTOOL([$1])
-_LT_CONFIG_LIBTOOL_INIT([$2])
-])
-
-
-# _LT_FORMAT_COMMENT([COMMENT])
-# -----------------------------
-# Add leading comment marks to the start of each line, and a trailing
-# full-stop to the whole comment if one is not present already.
-m4_define([_LT_FORMAT_COMMENT],
-[m4_ifval([$1], [
-m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
-              [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
-)])
-
-
-
-## ------------------------ ##
-## FIXME: Eliminate VARNAME ##
-## ------------------------ ##
-
-
-# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
-# -------------------------------------------------------------------
-# CONFIGNAME is the name given to the value in the libtool script.
-# VARNAME is the (base) name used in the configure script.
-# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
-# VARNAME.  Any other value will be used directly.
-m4_define([_LT_DECL],
-[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
-    [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
-	[m4_ifval([$1], [$1], [$2])])
-    lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
-    m4_ifval([$4],
-	[lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
-    lt_dict_add_subkey([lt_decl_dict], [$2],
-	[tagged?], [m4_ifval([$5], [yes], [no])])])
-])
-
-
-# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
-# --------------------------------------------------------
-m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
-
-
-# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
-# ------------------------------------------------
-m4_define([lt_decl_tag_varnames],
-[_lt_decl_filter([tagged?], [yes], $@)])
-
-
-# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
-# ---------------------------------------------------------
-m4_define([_lt_decl_filter],
-[m4_case([$#],
-  [0], [m4_fatal([$0: too few arguments: $#])],
-  [1], [m4_fatal([$0: too few arguments: $#: $1])],
-  [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
-  [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
-  [lt_dict_filter([lt_decl_dict], $@)])[]dnl
-])
-
-
-# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
-# --------------------------------------------------
-m4_define([lt_decl_quote_varnames],
-[_lt_decl_filter([value], [1], $@)])
-
-
-# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
-# ---------------------------------------------------
-m4_define([lt_decl_dquote_varnames],
-[_lt_decl_filter([value], [2], $@)])
-
-
-# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
-# ---------------------------------------------------
-m4_define([lt_decl_varnames_tagged],
-[m4_assert([$# <= 2])dnl
-_$0(m4_quote(m4_default([$1], [[, ]])),
-    m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
-    m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
-m4_define([_lt_decl_varnames_tagged],
-[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
-
-
-# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
-# ------------------------------------------------
-m4_define([lt_decl_all_varnames],
-[_$0(m4_quote(m4_default([$1], [[, ]])),
-     m4_if([$2], [],
-	   m4_quote(lt_decl_varnames),
-	m4_quote(m4_shift($@))))[]dnl
-])
-m4_define([_lt_decl_all_varnames],
-[lt_join($@, lt_decl_varnames_tagged([$1],
-			lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
-])
-
-
-# _LT_CONFIG_STATUS_DECLARE([VARNAME])
-# ------------------------------------
-# Quote a variable value, and forward it to `config.status' so that its
-# declaration there will have the same value as in `configure'.  VARNAME
-# must have a single quote delimited value for this to work.
-m4_define([_LT_CONFIG_STATUS_DECLARE],
-[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
-
-
-# _LT_CONFIG_STATUS_DECLARATIONS
-# ------------------------------
-# We delimit libtool config variables with single quotes, so when
-# we write them to config.status, we have to be sure to quote all
-# embedded single quotes properly.  In configure, this macro expands
-# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
-#
-#    <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
-m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
-[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
-    [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
-
-
-# _LT_LIBTOOL_TAGS
-# ----------------
-# Output comment and list of tags supported by the script
-m4_defun([_LT_LIBTOOL_TAGS],
-[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
-available_tags="_LT_TAGS"dnl
-])
-
-
-# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
-# -----------------------------------
-# Extract the dictionary values for VARNAME (optionally with TAG) and
-# expand to a commented shell variable setting:
-#
-#    # Some comment about what VAR is for.
-#    visible_name=$lt_internal_name
-m4_define([_LT_LIBTOOL_DECLARE],
-[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
-					   [description])))[]dnl
-m4_pushdef([_libtool_name],
-    m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
-m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
-    [0], [_libtool_name=[$]$1],
-    [1], [_libtool_name=$lt_[]$1],
-    [2], [_libtool_name=$lt_[]$1],
-    [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
-m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
-])
-
-
-# _LT_LIBTOOL_CONFIG_VARS
-# -----------------------
-# Produce commented declarations of non-tagged libtool config variables
-# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
-# script.  Tagged libtool config variables (even for the LIBTOOL CONFIG
-# section) are produced by _LT_LIBTOOL_TAG_VARS.
-m4_defun([_LT_LIBTOOL_CONFIG_VARS],
-[m4_foreach([_lt_var],
-    m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
-    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
-
-
-# _LT_LIBTOOL_TAG_VARS(TAG)
-# -------------------------
-m4_define([_LT_LIBTOOL_TAG_VARS],
-[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
-    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
-
-
-# _LT_TAGVAR(VARNAME, [TAGNAME])
-# ------------------------------
-m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
-
-
-# _LT_CONFIG_COMMANDS
-# -------------------
-# Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of
-# variables for single and double quote escaping we saved from calls
-# to _LT_DECL, we can put quote escaped variables declarations
-# into `config.status', and then the shell code to quote escape them in
-# for loops in `config.status'.  Finally, any additional code accumulated
-# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
-m4_defun([_LT_CONFIG_COMMANDS],
-[AC_PROVIDE_IFELSE([LT_OUTPUT],
-	dnl If the libtool generation code has been placed in $CONFIG_LT,
-	dnl instead of duplicating it all over again into config.status,
-	dnl then we will have config.status run $CONFIG_LT later, so it
-	dnl needs to know what name is stored there:
-        [AC_CONFIG_COMMANDS([libtool],
-            [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
-    dnl If the libtool generation code is destined for config.status,
-    dnl expand the accumulated commands and init code now:
-    [AC_CONFIG_COMMANDS([libtool],
-        [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
-])#_LT_CONFIG_COMMANDS
-
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
-[
-
-# 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='$sed_quote_subst'
-double_quote_subst='$double_quote_subst'
-delay_variable_subst='$delay_variable_subst'
-_LT_CONFIG_STATUS_DECLARATIONS
-LTCC='$LTCC'
-LTCFLAGS='$LTCFLAGS'
-compiler='$compiler_DEFAULT'
-
-# 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 lt_decl_all_varnames([[ \
-]], lt_decl_quote_varnames); do
-    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
-    *[[\\\\\\\`\\"\\\$]]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
-      ;;
-    *)
-      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
-      ;;
-    esac
-done
-
-# Double-quote double-evaled strings.
-for var in lt_decl_all_varnames([[ \
-]], lt_decl_dquote_varnames); do
-    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
-    *[[\\\\\\\`\\"\\\$]]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
-      ;;
-    *)
-      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
-      ;;
-    esac
-done
-
-_LT_OUTPUT_LIBTOOL_INIT
-])
-
-# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
-# ------------------------------------
-# Generate a child script FILE with all initialization necessary to
-# reuse the environment learned by the parent script, and make the
-# file executable.  If COMMENT is supplied, it is inserted after the
-# `#!' sequence but before initialization text begins.  After this
-# macro, additional text can be appended to FILE to form the body of
-# the child script.  The macro ends with non-zero status if the
-# file could not be fully written (such as if the disk is full).
-m4_ifdef([AS_INIT_GENERATED],
-[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
-[m4_defun([_LT_GENERATED_FILE_INIT],
-[m4_require([AS_PREPARE])]dnl
-[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
-[lt_write_fail=0
-cat >$1 <<_ASEOF || lt_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-$2
-SHELL=\${CONFIG_SHELL-$SHELL}
-export SHELL
-_ASEOF
-cat >>$1 <<\_ASEOF || lt_write_fail=1
-AS_SHELL_SANITIZE
-_AS_PREPARE
-exec AS_MESSAGE_FD>&1
-_ASEOF
-test $lt_write_fail = 0 && chmod +x $1[]dnl
-m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
-
-# LT_OUTPUT
-# ---------
-# This macro allows early generation of the libtool script (before
-# AC_OUTPUT is called), incase it is used in configure for compilation
-# tests.
-AC_DEFUN([LT_OUTPUT],
-[: ${CONFIG_LT=./config.lt}
-AC_MSG_NOTICE([creating $CONFIG_LT])
-_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
-[# Run this file to recreate a libtool stub with the current configuration.])
-
-cat >>"$CONFIG_LT" <<\_LTEOF
-lt_cl_silent=false
-exec AS_MESSAGE_LOG_FD>>config.log
-{
-  echo
-  AS_BOX([Running $as_me.])
-} >&AS_MESSAGE_LOG_FD
-
-lt_cl_help="\
-\`$as_me' creates a local libtool stub from the current configuration,
-for use in further configure time tests before the real libtool is
-generated.
-
-Usage: $[0] [[OPTIONS]]
-
-  -h, --help      print this help, then exit
-  -V, --version   print version number, then exit
-  -q, --quiet     do not print progress messages
-  -d, --debug     don't remove temporary files
-
-Report bugs to <bug-libtool at gnu.org>."
-
-lt_cl_version="\
-m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
-m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
-configured by $[0], generated by m4_PACKAGE_STRING.
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This config.lt script is free software; the Free Software Foundation
-gives unlimited permision to copy, distribute and modify it."
-
-while test $[#] != 0
-do
-  case $[1] in
-    --version | --v* | -V )
-      echo "$lt_cl_version"; exit 0 ;;
-    --help | --h* | -h )
-      echo "$lt_cl_help"; exit 0 ;;
-    --debug | --d* | -d )
-      debug=: ;;
-    --quiet | --q* | --silent | --s* | -q )
-      lt_cl_silent=: ;;
-
-    -*) AC_MSG_ERROR([unrecognized option: $[1]
-Try \`$[0] --help' for more information.]) ;;
-
-    *) AC_MSG_ERROR([unrecognized argument: $[1]
-Try \`$[0] --help' for more information.]) ;;
-  esac
-  shift
-done
-
-if $lt_cl_silent; then
-  exec AS_MESSAGE_FD>/dev/null
-fi
-_LTEOF
-
-cat >>"$CONFIG_LT" <<_LTEOF
-_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
-_LTEOF
-
-cat >>"$CONFIG_LT" <<\_LTEOF
-AC_MSG_NOTICE([creating $ofile])
-_LT_OUTPUT_LIBTOOL_COMMANDS
-AS_EXIT(0)
-_LTEOF
-chmod +x "$CONFIG_LT"
-
-# configure is writing to config.log, but config.lt does its own redirection,
-# appending to config.log, which fails on DOS, as config.log is still kept
-# open by configure.  Here we exec the FD to /dev/null, effectively closing
-# config.log, so it can be properly (re)opened and appended to by config.lt.
-lt_cl_success=:
-test "$silent" = yes &&
-  lt_config_lt_args="$lt_config_lt_args --quiet"
-exec AS_MESSAGE_LOG_FD>/dev/null
-$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
-exec AS_MESSAGE_LOG_FD>>config.log
-$lt_cl_success || AS_EXIT(1)
-])# LT_OUTPUT
-
-
-# _LT_CONFIG(TAG)
-# ---------------
-# If TAG is the built-in tag, create an initial libtool script with a
-# default configuration from the untagged config vars.  Otherwise add code
-# to config.status for appending the configuration named by TAG from the
-# matching tagged config vars.
-m4_defun([_LT_CONFIG],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-_LT_CONFIG_SAVE_COMMANDS([
-  m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
-  m4_if(_LT_TAG, [C], [
-    # See if we are running on zsh, and set the options which 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
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $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.
-#
-_LT_COPYING
-_LT_LIBTOOL_TAGS
-
-# ### BEGIN LIBTOOL CONFIG
-_LT_LIBTOOL_CONFIG_VARS
-_LT_LIBTOOL_TAG_VARS
-# ### END LIBTOOL CONFIG
-
-_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 "X${COLLECT_NAMES+set}" != Xset; then
-  COLLECT_NAMES=
-  export COLLECT_NAMES
-fi
-_LT_EOF
-    ;;
-  esac
-
-  _LT_PROG_LTMAIN
-
-  # 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)
-
-  _LT_PROG_REPLACE_SHELLFNS
-
-   mv -f "$cfgfile" "$ofile" ||
-    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
-  chmod +x "$ofile"
-],
-[cat <<_LT_EOF >> "$ofile"
-
-dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
-dnl in a comment (ie after a #).
-# ### BEGIN LIBTOOL TAG CONFIG: $1
-_LT_LIBTOOL_TAG_VARS(_LT_TAG)
-# ### END LIBTOOL TAG CONFIG: $1
-_LT_EOF
-])dnl /m4_if
-],
-[m4_if([$1], [], [
-    PACKAGE='$PACKAGE'
-    VERSION='$VERSION'
-    TIMESTAMP='$TIMESTAMP'
-    RM='$RM'
-    ofile='$ofile'], [])
-])dnl /_LT_CONFIG_SAVE_COMMANDS
-])# _LT_CONFIG
-
-
-# LT_SUPPORTED_TAG(TAG)
-# ---------------------
-# Trace this macro to discover what tags are supported by the libtool
-# --tag option, using:
-#    autoconf --trace 'LT_SUPPORTED_TAG:$1'
-AC_DEFUN([LT_SUPPORTED_TAG], [])
-
-
-# C support is built-in for now
-m4_define([_LT_LANG_C_enabled], [])
-m4_define([_LT_TAGS], [])
-
-
-# LT_LANG(LANG)
-# -------------
-# Enable libtool support for the given language if not already enabled.
-AC_DEFUN([LT_LANG],
-[AC_BEFORE([$0], [LT_OUTPUT])dnl
-m4_case([$1],
-  [C],			[_LT_LANG(C)],
-  [C++],		[_LT_LANG(CXX)],
-  [Java],		[_LT_LANG(GCJ)],
-  [Fortran 77],		[_LT_LANG(F77)],
-  [Fortran],		[_LT_LANG(FC)],
-  [Windows Resource],	[_LT_LANG(RC)],
-  [m4_ifdef([_LT_LANG_]$1[_CONFIG],
-    [_LT_LANG($1)],
-    [m4_fatal([$0: unsupported language: "$1"])])])dnl
-])# LT_LANG
-
-
-# _LT_LANG(LANGNAME)
-# ------------------
-m4_defun([_LT_LANG],
-[m4_ifdef([_LT_LANG_]$1[_enabled], [],
-  [LT_SUPPORTED_TAG([$1])dnl
-  m4_append([_LT_TAGS], [$1 ])dnl
-  m4_define([_LT_LANG_]$1[_enabled], [])dnl
-  _LT_LANG_$1_CONFIG($1)])dnl
-])# _LT_LANG
-
-
-# _LT_LANG_DEFAULT_CONFIG
-# -----------------------
-m4_defun([_LT_LANG_DEFAULT_CONFIG],
-[AC_PROVIDE_IFELSE([AC_PROG_CXX],
-  [LT_LANG(CXX)],
-  [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
-
-AC_PROVIDE_IFELSE([AC_PROG_F77],
-  [LT_LANG(F77)],
-  [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
-
-AC_PROVIDE_IFELSE([AC_PROG_FC],
-  [LT_LANG(FC)],
-  [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
-
-dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
-dnl pulling things in needlessly.
-AC_PROVIDE_IFELSE([AC_PROG_GCJ],
-  [LT_LANG(GCJ)],
-  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
-    [LT_LANG(GCJ)],
-    [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
-      [LT_LANG(GCJ)],
-      [m4_ifdef([AC_PROG_GCJ],
-	[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
-       m4_ifdef([A][M_PROG_GCJ],
-	[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
-       m4_ifdef([LT_PROG_GCJ],
-	[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
-
-AC_PROVIDE_IFELSE([LT_PROG_RC],
-  [LT_LANG(RC)],
-  [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
-])# _LT_LANG_DEFAULT_CONFIG
-
-# Obsolete macros:
-AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
-AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
-AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
-AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
-AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
-dnl AC_DEFUN([AC_LIBTOOL_F77], [])
-dnl AC_DEFUN([AC_LIBTOOL_FC], [])
-dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
-dnl AC_DEFUN([AC_LIBTOOL_RC], [])
-
-
-# _LT_TAG_COMPILER
-# ----------------
-m4_defun([_LT_TAG_COMPILER],
-[AC_REQUIRE([AC_PROG_CC])dnl
-
-_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
-_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
-_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
-_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-])# _LT_TAG_COMPILER
-
-
-# _LT_COMPILER_BOILERPLATE
-# ------------------------
-# Check for compiler boilerplate output or warnings with
-# the simple compiler test code.
-m4_defun([_LT_COMPILER_BOILERPLATE],
-[m4_require([_LT_DECL_SED])dnl
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-])# _LT_COMPILER_BOILERPLATE
-
-
-# _LT_LINKER_BOILERPLATE
-# ----------------------
-# Check for linker boilerplate output or warnings with
-# the simple link test code.
-m4_defun([_LT_LINKER_BOILERPLATE],
-[m4_require([_LT_DECL_SED])dnl
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-])# _LT_LINKER_BOILERPLATE
-
-# _LT_REQUIRED_DARWIN_CHECKS
-# -------------------------
-m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
-  case $host_os in
-    rhapsody* | darwin*)
-    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
-    AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
-    AC_CHECK_TOOL([LIPO], [lipo], [:])
-    AC_CHECK_TOOL([OTOOL], [otool], [:])
-    AC_CHECK_TOOL([OTOOL64], [otool64], [:])
-    _LT_DECL([], [DSYMUTIL], [1],
-      [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
-    _LT_DECL([], [NMEDIT], [1],
-      [Tool to change global to local symbols on Mac OS X])
-    _LT_DECL([], [LIPO], [1],
-      [Tool to manipulate fat objects and archives on Mac OS X])
-    _LT_DECL([], [OTOOL], [1],
-      [ldd/readelf like tool for Mach-O binaries on Mac OS X])
-    _LT_DECL([], [OTOOL64], [1],
-      [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
-
-    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
-      [lt_cv_apple_cc_single_mod=no
-      if test -z "${LT_MULTI_MODULE}"; then
-	# By default we will add the -single_module flag. You can override
-	# by either setting the environment variable LT_MULTI_MODULE
-	# non-empty at configure time, or by adding -multi_module to the
-	# link flags.
-	rm -rf libconftest.dylib*
-	echo "int foo(void){return 1;}" > conftest.c
-	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
--dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
-	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
-        _lt_result=$?
-	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
-	  lt_cv_apple_cc_single_mod=yes
-	else
-	  cat conftest.err >&AS_MESSAGE_LOG_FD
-	fi
-	rm -rf libconftest.dylib*
-	rm -f conftest.*
-      fi])
-    AC_CACHE_CHECK([for -exported_symbols_list linker flag],
-      [lt_cv_ld_exported_symbols_list],
-      [lt_cv_ld_exported_symbols_list=no
-      save_LDFLAGS=$LDFLAGS
-      echo "_main" > conftest.sym
-      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
-      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
-	[lt_cv_ld_exported_symbols_list=yes],
-	[lt_cv_ld_exported_symbols_list=no])
-	LDFLAGS="$save_LDFLAGS"
-    ])
-    AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
-      [lt_cv_ld_force_load=no
-      cat > conftest.c << _LT_EOF
-int forced_loaded() { return 2;}
-_LT_EOF
-      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
-      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
-      echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
-      $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
-      echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
-      $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
-      cat > conftest.c << _LT_EOF
-int main() { return 0;}
-_LT_EOF
-      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
-      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
-      _lt_result=$?
-      if test -f conftest && test ! -s conftest.err && test $_lt_result = 0 && $GREP forced_load conftest 2>&1 >/dev/null; then
-	lt_cv_ld_force_load=yes
-      else
-	cat conftest.err >&AS_MESSAGE_LOG_FD
-      fi
-        rm -f conftest.err libconftest.a conftest conftest.c
-        rm -rf conftest.dSYM
-    ])
-    case $host_os in
-    rhapsody* | darwin1.[[012]])
-      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
-    darwin1.*)
-      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
-    darwin*) # darwin 5.x on
-      # if running on 10.5 or later, the deployment target defaults
-      # to the OS version, if on x86, and 10.4, the deployment
-      # target defaults to 10.4. Don't you love it?
-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
-	10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-	10.[[012]]*)
-	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
-	10.*)
-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-      esac
-    ;;
-  esac
-    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
-      _lt_dar_single_mod='$single_module'
-    fi
-    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
-      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
-    else
-      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
-    fi
-    if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
-      _lt_dsymutil='~$DSYMUTIL $lib || :'
-    else
-      _lt_dsymutil=
-    fi
-    ;;
-  esac
-])
-
-
-# _LT_DARWIN_LINKER_FEATURES
-# --------------------------
-# Checks for linker and compiler features on darwin
-m4_defun([_LT_DARWIN_LINKER_FEATURES],
-[
-  m4_require([_LT_REQUIRED_DARWIN_CHECKS])
-  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-  _LT_TAGVAR(hardcode_direct, $1)=no
-  _LT_TAGVAR(hardcode_automatic, $1)=yes
-  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-  if test "$lt_cv_ld_force_load" = "yes"; then
-    _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
-  else
-    _LT_TAGVAR(whole_archive_flag_spec, $1)=''
-  fi
-  _LT_TAGVAR(link_all_deplibs, $1)=yes
-  _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
-  case $cc_basename in
-     ifort*) _lt_dar_can_shared=yes ;;
-     *) _lt_dar_can_shared=$GCC ;;
-  esac
-  if test "$_lt_dar_can_shared" = "yes"; then
-    output_verbose_link_cmd=func_echo_all
-    _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
-    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
-    _LT_TAGVAR(archive_expsym_cmds, $1)="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 ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
-    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
-    m4_if([$1], [CXX],
-[   if test "$lt_cv_apple_cc_single_mod" != "yes"; then
-      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
-      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
-    fi
-],[])
-  else
-  _LT_TAGVAR(ld_shlibs, $1)=no
-  fi
-])
-
-# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
-# ----------------------------------
-# Links a minimal program and checks the executable
-# for the system default hardcoded library path. In most cases,
-# this is /usr/lib:/lib, but when the MPI compilers are used
-# the location of the communication and MPI libs are included too.
-# If we don't find anything, use the default library path according
-# to the aix ld manual.
-# Store the results from the different compilers for each TAGNAME.
-# Allow to override them for all tags through lt_cv_aix_libpath.
-m4_defun([_LT_SYS_MODULE_PATH_AIX],
-[m4_require([_LT_DECL_SED])dnl
-if test "${lt_cv_aix_libpath+set}" = set; then
-  aix_libpath=$lt_cv_aix_libpath
-else
-  AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
-  [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
-  lt_aix_libpath_sed='[
-      /Import File Strings/,/^$/ {
-	  /^0/ {
-	      s/^0  *\([^ ]*\) *$/\1/
-	      p
-	  }
-      }]'
-  _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-  # Check for a 64-bit object if we didn't find anything.
-  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
-    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-  fi],[])
-  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
-    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
-  fi
-  ])
-  aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
-fi
-])# _LT_SYS_MODULE_PATH_AIX
-
-
-# _LT_SHELL_INIT(ARG)
-# -------------------
-m4_define([_LT_SHELL_INIT],
-[m4_divert_text([M4SH-INIT], [$1
-])])# _LT_SHELL_INIT
-
-
-
-# _LT_PROG_ECHO_BACKSLASH
-# -----------------------
-# Find how we can fake an echo command that does not interpret backslash.
-# In particular, with Autoconf 2.60 or later we add some code to the start
-# of the generated configure script which will find a shell with a builtin
-# printf (which we can use as an echo command).
-m4_defun([_LT_PROG_ECHO_BACKSLASH],
-[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
-ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
-
-AC_MSG_CHECKING([how to print strings])
-# Test print first, because it will be a builtin if present.
-if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
-   test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
-  ECHO='print -r --'
-elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-  ECHO='printf %s\n'
-else
-  # Use this function as a fallback that always works.
-  func_fallback_echo ()
-  {
-    eval 'cat <<_LTECHO_EOF
-$[]1
-_LTECHO_EOF'
-  }
-  ECHO='func_fallback_echo'
-fi
-
-# func_echo_all arg...
-# Invoke $ECHO with all args, space-separated.
-func_echo_all ()
-{
-    $ECHO "$*" 
-}
-
-case "$ECHO" in
-  printf*) AC_MSG_RESULT([printf]) ;;
-  print*) AC_MSG_RESULT([print -r]) ;;
-  *) AC_MSG_RESULT([cat]) ;;
-esac
-
-m4_ifdef([_AS_DETECT_SUGGESTED],
-[_AS_DETECT_SUGGESTED([
-  test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
-    ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
-    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
-    PATH=/empty FPATH=/empty; export PATH FPATH
-    test "X`printf %s $ECHO`" = "X$ECHO" \
-      || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
-
-_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
-_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
-])# _LT_PROG_ECHO_BACKSLASH
-
-
-# _LT_WITH_SYSROOT
-# ----------------
-AC_DEFUN([_LT_WITH_SYSROOT],
-[AC_MSG_CHECKING([for sysroot])
-AC_ARG_WITH([sysroot],
-[  --with-sysroot[=DIR] Search for dependent libraries within DIR
-                        (or the compiler's sysroot if not specified).],
-[], [with_sysroot=no])
-
-dnl lt_sysroot will always be passed unquoted.  We quote it here
-dnl in case the user passed a directory name.
-lt_sysroot=
-case ${with_sysroot} in #(
- yes)
-   if test "$GCC" = yes; then
-     lt_sysroot=`$CC --print-sysroot 2>/dev/null`
-   fi
-   ;; #(
- /*)
-   lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
-   ;; #(
- no|'')
-   ;; #(
- *)
-   AC_MSG_RESULT([${with_sysroot}])
-   AC_MSG_ERROR([The sysroot must be an absolute path.])
-   ;;
-esac
-
- AC_MSG_RESULT([${lt_sysroot:-no}])
-_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
-[dependent libraries, and in which our libraries should be installed.])])
-
-# _LT_ENABLE_LOCK
-# ---------------
-m4_defun([_LT_ENABLE_LOCK],
-[AC_ARG_ENABLE([libtool-lock],
-  [AS_HELP_STRING([--disable-libtool-lock],
-    [avoid locking (might break parallel builds)])])
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-
-# Some flags need to be propagated to the compiler or linker for good
-# libtool support.
-case $host in
-ia64-*-hpux*)
-  # Find out which ABI we are using.
-  echo 'int i;' > conftest.$ac_ext
-  if AC_TRY_EVAL(ac_compile); then
-    case `/usr/bin/file conftest.$ac_objext` in
-      *ELF-32*)
-	HPUX_IA64_MODE="32"
-	;;
-      *ELF-64*)
-	HPUX_IA64_MODE="64"
-	;;
-    esac
-  fi
-  rm -rf conftest*
-  ;;
-*-*-irix6*)
-  # Find out which ABI we are using.
-  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
-  if AC_TRY_EVAL(ac_compile); then
-    if test "$lt_cv_prog_gnu_ld" = yes; then
-      case `/usr/bin/file conftest.$ac_objext` in
-	*32-bit*)
-	  LD="${LD-ld} -melf32bsmip"
-	  ;;
-	*N32*)
-	  LD="${LD-ld} -melf32bmipn32"
-	  ;;
-	*64-bit*)
-	  LD="${LD-ld} -melf64bmip"
-	;;
-      esac
-    else
-      case `/usr/bin/file conftest.$ac_objext` in
-	*32-bit*)
-	  LD="${LD-ld} -32"
-	  ;;
-	*N32*)
-	  LD="${LD-ld} -n32"
-	  ;;
-	*64-bit*)
-	  LD="${LD-ld} -64"
-	  ;;
-      esac
-    fi
-  fi
-  rm -rf conftest*
-  ;;
-
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
-  # Find out which ABI we are using.
-  echo 'int i;' > conftest.$ac_ext
-  if AC_TRY_EVAL(ac_compile); then
-    case `/usr/bin/file conftest.o` in
-      *32-bit*)
-	case $host in
-	  x86_64-*kfreebsd*-gnu)
-	    LD="${LD-ld} -m elf_i386_fbsd"
-	    ;;
-	  x86_64-*linux*)
-	    LD="${LD-ld} -m elf_i386"
-	    ;;
-	  ppc64-*linux*|powerpc64-*linux*)
-	    LD="${LD-ld} -m elf32ppclinux"
-	    ;;
-	  s390x-*linux*)
-	    LD="${LD-ld} -m elf_s390"
-	    ;;
-	  sparc64-*linux*)
-	    LD="${LD-ld} -m elf32_sparc"
-	    ;;
-	esac
-	;;
-      *64-bit*)
-	case $host in
-	  x86_64-*kfreebsd*-gnu)
-	    LD="${LD-ld} -m elf_x86_64_fbsd"
-	    ;;
-	  x86_64-*linux*)
-	    LD="${LD-ld} -m elf_x86_64"
-	    ;;
-	  ppc*-*linux*|powerpc*-*linux*)
-	    LD="${LD-ld} -m elf64ppc"
-	    ;;
-	  s390*-*linux*|s390*-*tpf*)
-	    LD="${LD-ld} -m elf64_s390"
-	    ;;
-	  sparc*-*linux*)
-	    LD="${LD-ld} -m elf64_sparc"
-	    ;;
-	esac
-	;;
-    esac
-  fi
-  rm -rf conftest*
-  ;;
-
-*-*-sco3.2v5*)
-  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-  SAVE_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS -belf"
-  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
-    [AC_LANG_PUSH(C)
-     AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
-     AC_LANG_POP])
-  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-    CFLAGS="$SAVE_CFLAGS"
-  fi
-  ;;
-sparc*-*solaris*)
-  # Find out which ABI we are using.
-  echo 'int i;' > conftest.$ac_ext
-  if AC_TRY_EVAL(ac_compile); then
-    case `/usr/bin/file conftest.o` in
-    *64-bit*)
-      case $lt_cv_prog_gnu_ld in
-      yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)
-	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
-	  LD="${LD-ld} -64"
-	fi
-	;;
-      esac
-      ;;
-    esac
-  fi
-  rm -rf conftest*
-  ;;
-esac
-
-need_locks="$enable_libtool_lock"
-])# _LT_ENABLE_LOCK
-
-
-# _LT_PROG_AR
-# -----------
-m4_defun([_LT_PROG_AR],
-[AC_CHECK_TOOLS(AR, [ar], false)
-: ${AR=ar}
-: ${AR_FLAGS=cru}
-_LT_DECL([], [AR], [1], [The archiver])
-_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
-
-AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
-  [lt_cv_ar_at_file=no
-   AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
-     [echo conftest.$ac_objext > conftest.lst
-      lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
-      AC_TRY_EVAL([lt_ar_try])
-      if test "$ac_status" -eq 0; then
-	# Ensure the archiver fails upon bogus file names.
-	rm -f conftest.$ac_objext libconftest.a
-	AC_TRY_EVAL([lt_ar_try])
-	if test "$ac_status" -ne 0; then
-          lt_cv_ar_at_file=@
-        fi
-      fi
-      rm -f conftest.* libconftest.a
-     ])
-  ])
-
-if test "x$lt_cv_ar_at_file" = xno; then
-  archiver_list_spec=
-else
-  archiver_list_spec=$lt_cv_ar_at_file
-fi
-_LT_DECL([], [archiver_list_spec], [1],
-  [How to feed a file listing to the archiver])
-])# _LT_PROG_AR
-
-
-# _LT_CMD_OLD_ARCHIVE
-# -------------------
-m4_defun([_LT_CMD_OLD_ARCHIVE],
-[_LT_PROG_AR
-
-AC_CHECK_TOOL(STRIP, strip, :)
-test -z "$STRIP" && STRIP=:
-_LT_DECL([], [STRIP], [1], [A symbol stripping program])
-
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-test -z "$RANLIB" && RANLIB=:
-_LT_DECL([], [RANLIB], [1],
-    [Commands used to install an old-style archive])
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-if test -n "$RANLIB"; then
-  case $host_os in
-  openbsd*)
-    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
-    ;;
-  *)
-    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
-    ;;
-  esac
-  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-fi
-
-case $host_os in
-  darwin*)
-    lock_old_archive_extraction=yes ;;
-  *)
-    lock_old_archive_extraction=no ;;
-esac
-_LT_DECL([], [old_postinstall_cmds], [2])
-_LT_DECL([], [old_postuninstall_cmds], [2])
-_LT_TAGDECL([], [old_archive_cmds], [2],
-    [Commands used to build an old-style archive])
-_LT_DECL([], [lock_old_archive_extraction], [0],
-    [Whether to use a lock for old archive extraction])
-])# _LT_CMD_OLD_ARCHIVE
-
-
-# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
-#		[OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
-# ----------------------------------------------------------------
-# Check whether the given compiler option works
-AC_DEFUN([_LT_COMPILER_OPTION],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_CACHE_CHECK([$1], [$2],
-  [$2=no
-   m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-   lt_compiler_flag="$3"
-   # Insert the option either (1) after the last *FLAGS variable, or
-   # (2) before a word containing "conftest.", or (3) at the end.
-   # Note that $ac_compile itself does not contain backslashes and begins
-   # with a dollar sign (not a hyphen), so the echo should work correctly.
-   # The option is referenced via a variable to avoid confusing sed.
-   lt_compile=`echo "$ac_compile" | $SED \
-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
-   -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
-   (eval "$lt_compile" 2>conftest.err)
-   ac_status=$?
-   cat conftest.err >&AS_MESSAGE_LOG_FD
-   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
-   if (exit $ac_status) && test -s "$ac_outfile"; then
-     # The compiler can only warn and ignore the option if not recognized
-     # So say no if there are warnings other than the usual output.
-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       $2=yes
-     fi
-   fi
-   $RM conftest*
-])
-
-if test x"[$]$2" = xyes; then
-    m4_if([$5], , :, [$5])
-else
-    m4_if([$6], , :, [$6])
-fi
-])# _LT_COMPILER_OPTION
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
-
-
-# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
-#                  [ACTION-SUCCESS], [ACTION-FAILURE])
-# ----------------------------------------------------
-# Check whether the given linker option works
-AC_DEFUN([_LT_LINKER_OPTION],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_CACHE_CHECK([$1], [$2],
-  [$2=no
-   save_LDFLAGS="$LDFLAGS"
-   LDFLAGS="$LDFLAGS $3"
-   echo "$lt_simple_link_test_code" > conftest.$ac_ext
-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
-     # The linker can only warn and ignore the option if not recognized
-     # So say no if there are warnings
-     if test -s conftest.err; then
-       # Append any errors to the config.log.
-       cat conftest.err 1>&AS_MESSAGE_LOG_FD
-       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
-       if diff conftest.exp conftest.er2 >/dev/null; then
-         $2=yes
-       fi
-     else
-       $2=yes
-     fi
-   fi
-   $RM -r conftest*
-   LDFLAGS="$save_LDFLAGS"
-])
-
-if test x"[$]$2" = xyes; then
-    m4_if([$4], , :, [$4])
-else
-    m4_if([$5], , :, [$5])
-fi
-])# _LT_LINKER_OPTION
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
-
-
-# LT_CMD_MAX_LEN
-#---------------
-AC_DEFUN([LT_CMD_MAX_LEN],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-# find the maximum length of command line arguments
-AC_MSG_CHECKING([the maximum length of command line arguments])
-AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
-  i=0
-  teststring="ABCD"
-
-  case $build_os in
-  msdosdjgpp*)
-    # On DJGPP, this test can blow up pretty badly due to problems in libc
-    # (any single argument exceeding 2000 bytes causes a buffer overrun
-    # during glob expansion).  Even if it were fixed, the result of this
-    # check would be larger than it should be.
-    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
-    ;;
-
-  gnu*)
-    # Under GNU Hurd, this test is not required because there is
-    # no limit to the length of command line arguments.
-    # Libtool will interpret -1 as no limit whatsoever
-    lt_cv_sys_max_cmd_len=-1;
-    ;;
-
-  cygwin* | mingw* | cegcc*)
-    # On Win9x/ME, this test blows up -- it succeeds, but takes
-    # about 5 minutes as the teststring grows exponentially.
-    # Worse, since 9x/ME are not pre-emptively multitasking,
-    # you end up with a "frozen" computer, even though with patience
-    # the test eventually succeeds (with a max line length of 256k).
-    # Instead, let's just punt: use the minimum linelength reported by
-    # all of the supported platforms: 8192 (on NT/2K/XP).
-    lt_cv_sys_max_cmd_len=8192;
-    ;;
-
-  mint*)
-    # On MiNT this can take a long time and run out of memory.
-    lt_cv_sys_max_cmd_len=8192;
-    ;;
-
-  amigaos*)
-    # On AmigaOS with pdksh, this test takes hours, literally.
-    # So we just punt and use a minimum line length of 8192.
-    lt_cv_sys_max_cmd_len=8192;
-    ;;
-
-  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
-    # This has been around since 386BSD, at least.  Likely further.
-    if test -x /sbin/sysctl; then
-      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
-    elif test -x /usr/sbin/sysctl; then
-      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
-    else
-      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs
-    fi
-    # And add a safety zone
-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
-    ;;
-
-  interix*)
-    # We know the value 262144 and hardcode it with a safety zone (like BSD)
-    lt_cv_sys_max_cmd_len=196608
-    ;;
-
-  osf*)
-    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
-    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
-    # nice to cause kernel panics so lets avoid the loop below.
-    # First set a reasonable default.
-    lt_cv_sys_max_cmd_len=16384
-    #
-    if test -x /sbin/sysconfig; then
-      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
-        *1*) lt_cv_sys_max_cmd_len=-1 ;;
-      esac
-    fi
-    ;;
-  sco3.2v5*)
-    lt_cv_sys_max_cmd_len=102400
-    ;;
-  sysv5* | sco5v6* | sysv4.2uw2*)
-    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
-    if test -n "$kargmax"; then
-      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[	 ]]//'`
-    else
-      lt_cv_sys_max_cmd_len=32768
-    fi
-    ;;
-  *)
-    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
-    if test -n "$lt_cv_sys_max_cmd_len"; then
-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
-    else
-      # Make teststring a little bigger before we do anything with it.
-      # a 1K string should be a reasonable start.
-      for i in 1 2 3 4 5 6 7 8 ; do
-        teststring=$teststring$teststring
-      done
-      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
-      # If test is not a shell built-in, we'll probably end up computing a
-      # maximum length that is only half of the actual maximum length, but
-      # we can't tell.
-      while { test "X"`func_fallback_echo "$teststring$teststring" 2>/dev/null` \
-	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&
-	      test $i != 17 # 1/2 MB should be enough
-      do
-        i=`expr $i + 1`
-        teststring=$teststring$teststring
-      done
-      # Only check the string length outside the loop.
-      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
-      teststring=
-      # Add a significant safety factor because C++ compilers can tack on
-      # massive amounts of additional arguments before passing them to the
-      # linker.  It appears as though 1/2 is a usable value.
-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
-    fi
-    ;;
-  esac
-])
-if test -n $lt_cv_sys_max_cmd_len ; then
-  AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
-else
-  AC_MSG_RESULT(none)
-fi
-max_cmd_len=$lt_cv_sys_max_cmd_len
-_LT_DECL([], [max_cmd_len], [0],
-    [What is the maximum length of a command?])
-])# LT_CMD_MAX_LEN
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
-
-
-# _LT_HEADER_DLFCN
-# ----------------
-m4_defun([_LT_HEADER_DLFCN],
-[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
-])# _LT_HEADER_DLFCN
-
-
-# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
-#                      ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
-# ----------------------------------------------------------------
-m4_defun([_LT_TRY_DLOPEN_SELF],
-[m4_require([_LT_HEADER_DLFCN])dnl
-if test "$cross_compiling" = yes; then :
-  [$4]
-else
-  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
-  lt_status=$lt_dlunknown
-  cat > conftest.$ac_ext <<_LT_EOF
-[#line $LINENO "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-#  define LT_DLGLOBAL		RTLD_GLOBAL
-#else
-#  ifdef DL_GLOBAL
-#    define LT_DLGLOBAL		DL_GLOBAL
-#  else
-#    define LT_DLGLOBAL		0
-#  endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
-   find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-#  ifdef RTLD_LAZY
-#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
-#  else
-#    ifdef DL_LAZY
-#      define LT_DLLAZY_OR_NOW		DL_LAZY
-#    else
-#      ifdef RTLD_NOW
-#        define LT_DLLAZY_OR_NOW	RTLD_NOW
-#      else
-#        ifdef DL_NOW
-#          define LT_DLLAZY_OR_NOW	DL_NOW
-#        else
-#          define LT_DLLAZY_OR_NOW	0
-#        endif
-#      endif
-#    endif
-#  endif
-#endif
-
-/* When -fvisbility=hidden is used, assume the code has been annotated
-   correspondingly for the symbols needed.  */
-#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
-int fnord () __attribute__((visibility("default")));
-#endif
-
-int fnord () { return 42; }
-int main ()
-{
-  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-  int status = $lt_dlunknown;
-
-  if (self)
-    {
-      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
-      else
-        {
-	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
-          else puts (dlerror ());
-	}
-      /* dlclose (self); */
-    }
-  else
-    puts (dlerror ());
-
-  return status;
-}]
-_LT_EOF
-  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
-    (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
-    lt_status=$?
-    case x$lt_status in
-      x$lt_dlno_uscore) $1 ;;
-      x$lt_dlneed_uscore) $2 ;;
-      x$lt_dlunknown|x*) $3 ;;
-    esac
-  else :
-    # compilation failed
-    $3
-  fi
-fi
-rm -fr conftest*
-])# _LT_TRY_DLOPEN_SELF
-
-
-# LT_SYS_DLOPEN_SELF
-# ------------------
-AC_DEFUN([LT_SYS_DLOPEN_SELF],
-[m4_require([_LT_HEADER_DLFCN])dnl
-if test "x$enable_dlopen" != xyes; then
-  enable_dlopen=unknown
-  enable_dlopen_self=unknown
-  enable_dlopen_self_static=unknown
-else
-  lt_cv_dlopen=no
-  lt_cv_dlopen_libs=
-
-  case $host_os in
-  beos*)
-    lt_cv_dlopen="load_add_on"
-    lt_cv_dlopen_libs=
-    lt_cv_dlopen_self=yes
-    ;;
-
-  mingw* | pw32* | cegcc*)
-    lt_cv_dlopen="LoadLibrary"
-    lt_cv_dlopen_libs=
-    ;;
-
-  cygwin*)
-    lt_cv_dlopen="dlopen"
-    lt_cv_dlopen_libs=
-    ;;
-
-  darwin*)
-  # if libdl is installed we need to link against it
-    AC_CHECK_LIB([dl], [dlopen],
-		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
-    lt_cv_dlopen="dyld"
-    lt_cv_dlopen_libs=
-    lt_cv_dlopen_self=yes
-    ])
-    ;;
-
-  *)
-    AC_CHECK_FUNC([shl_load],
-	  [lt_cv_dlopen="shl_load"],
-      [AC_CHECK_LIB([dld], [shl_load],
-	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
-	[AC_CHECK_FUNC([dlopen],
-	      [lt_cv_dlopen="dlopen"],
-	  [AC_CHECK_LIB([dl], [dlopen],
-		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
-	    [AC_CHECK_LIB([svld], [dlopen],
-		  [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
-	      [AC_CHECK_LIB([dld], [dld_link],
-		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
-	      ])
-	    ])
-	  ])
-	])
-      ])
-    ;;
-  esac
-
-  if test "x$lt_cv_dlopen" != xno; then
-    enable_dlopen=yes
-  else
-    enable_dlopen=no
-  fi
-
-  case $lt_cv_dlopen in
-  dlopen)
-    save_CPPFLAGS="$CPPFLAGS"
-    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-
-    save_LDFLAGS="$LDFLAGS"
-    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-
-    save_LIBS="$LIBS"
-    LIBS="$lt_cv_dlopen_libs $LIBS"
-
-    AC_CACHE_CHECK([whether a program can dlopen itself],
-	  lt_cv_dlopen_self, [dnl
-	  _LT_TRY_DLOPEN_SELF(
-	    lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
-	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
-    ])
-
-    if test "x$lt_cv_dlopen_self" = xyes; then
-      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
-      AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
-	  lt_cv_dlopen_self_static, [dnl
-	  _LT_TRY_DLOPEN_SELF(
-	    lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
-	    lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
-      ])
-    fi
-
-    CPPFLAGS="$save_CPPFLAGS"
-    LDFLAGS="$save_LDFLAGS"
-    LIBS="$save_LIBS"
-    ;;
-  esac
-
-  case $lt_cv_dlopen_self in
-  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
-  *) enable_dlopen_self=unknown ;;
-  esac
-
-  case $lt_cv_dlopen_self_static in
-  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
-  *) enable_dlopen_self_static=unknown ;;
-  esac
-fi
-_LT_DECL([dlopen_support], [enable_dlopen], [0],
-	 [Whether dlopen is supported])
-_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
-	 [Whether dlopen of programs is supported])
-_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
-	 [Whether dlopen of statically linked programs is supported])
-])# LT_SYS_DLOPEN_SELF
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
-
-
-# _LT_COMPILER_C_O([TAGNAME])
-# ---------------------------
-# Check to see if options -c and -o are simultaneously supported by compiler.
-# This macro does not hard code the compiler like AC_PROG_CC_C_O.
-m4_defun([_LT_COMPILER_C_O],
-[m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
-  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
-  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
-   $RM -r conftest 2>/dev/null
-   mkdir conftest
-   cd conftest
-   mkdir out
-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
-   lt_compiler_flag="-o out/conftest2.$ac_objext"
-   # Insert the option either (1) after the last *FLAGS variable, or
-   # (2) before a word containing "conftest.", or (3) at the end.
-   # Note that $ac_compile itself does not contain backslashes and begins
-   # with a dollar sign (not a hyphen), so the echo should work correctly.
-   lt_compile=`echo "$ac_compile" | $SED \
-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
-   -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
-   (eval "$lt_compile" 2>out/conftest.err)
-   ac_status=$?
-   cat out/conftest.err >&AS_MESSAGE_LOG_FD
-   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
-   if (exit $ac_status) && test -s out/conftest2.$ac_objext
-   then
-     # The compiler can only warn and ignore the option if not recognized
-     # So say no if there are warnings
-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
-     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
-     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
-       _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
-     fi
-   fi
-   chmod u+w . 2>&AS_MESSAGE_LOG_FD
-   $RM conftest*
-   # SGI C++ compiler will create directory out/ii_files/ for
-   # template instantiation
-   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
-   $RM out/* && rmdir out
-   cd ..
-   $RM -r conftest
-   $RM conftest*
-])
-_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
-	[Does compiler simultaneously support -c and -o options?])
-])# _LT_COMPILER_C_O
-
-
-# _LT_COMPILER_FILE_LOCKS([TAGNAME])
-# ----------------------------------
-# Check to see if we can do hard links to lock some files if needed
-m4_defun([_LT_COMPILER_FILE_LOCKS],
-[m4_require([_LT_ENABLE_LOCK])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-_LT_COMPILER_C_O([$1])
-
-hard_links="nottested"
-if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
-  # do not overwrite the value of need_locks provided by the user
-  AC_MSG_CHECKING([if we can lock with hard links])
-  hard_links=yes
-  $RM conftest*
-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  touch conftest.a
-  ln conftest.a conftest.b 2>&5 || hard_links=no
-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  AC_MSG_RESULT([$hard_links])
-  if test "$hard_links" = no; then
-    AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
-    need_locks=warn
-  fi
-else
-  need_locks=no
-fi
-_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
-])# _LT_COMPILER_FILE_LOCKS
-
-
-# _LT_CHECK_OBJDIR
-# ----------------
-m4_defun([_LT_CHECK_OBJDIR],
-[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
-[rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
-  lt_cv_objdir=.libs
-else
-  # MS-DOS does not allow filenames that begin with a dot.
-  lt_cv_objdir=_libs
-fi
-rmdir .libs 2>/dev/null])
-objdir=$lt_cv_objdir
-_LT_DECL([], [objdir], [0],
-         [The name of the directory that contains temporary libtool files])dnl
-m4_pattern_allow([LT_OBJDIR])dnl
-AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
-  [Define to the sub-directory in which libtool stores uninstalled libraries.])
-])# _LT_CHECK_OBJDIR
-
-
-# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
-# --------------------------------------
-# Check hardcoding attributes.
-m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
-[AC_MSG_CHECKING([how to hardcode library paths into programs])
-_LT_TAGVAR(hardcode_action, $1)=
-if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
-   test -n "$_LT_TAGVAR(runpath_var, $1)" ||
-   test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
-
-  # We can hardcode non-existent directories.
-  if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
-     # If the only mechanism to avoid hardcoding is shlibpath_var, we
-     # have to relink, otherwise we might link with an installed library
-     # when we should be linking with a yet-to-be-installed one
-     ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
-     test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
-    # Linking always hardcodes the temporary library directory.
-    _LT_TAGVAR(hardcode_action, $1)=relink
-  else
-    # We can link without hardcoding, and we can hardcode nonexisting dirs.
-    _LT_TAGVAR(hardcode_action, $1)=immediate
-  fi
-else
-  # We cannot hardcode anything, or else we can only hardcode existing
-  # directories.
-  _LT_TAGVAR(hardcode_action, $1)=unsupported
-fi
-AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
-
-if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
-   test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
-  # Fast installation is not supported
-  enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
-     test "$enable_shared" = no; then
-  # Fast installation is not necessary
-  enable_fast_install=needless
-fi
-_LT_TAGDECL([], [hardcode_action], [0],
-    [How to hardcode a shared library path into an executable])
-])# _LT_LINKER_HARDCODE_LIBPATH
-
-
-# _LT_CMD_STRIPLIB
-# ----------------
-m4_defun([_LT_CMD_STRIPLIB],
-[m4_require([_LT_DECL_EGREP])
-striplib=
-old_striplib=
-AC_MSG_CHECKING([whether stripping libraries is possible])
-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
-  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
-  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-  AC_MSG_RESULT([yes])
-else
-# FIXME - insert some real tests, host_os isn't really good enough
-  case $host_os in
-  darwin*)
-    if test -n "$STRIP" ; then
-      striplib="$STRIP -x"
-      old_striplib="$STRIP -S"
-      AC_MSG_RESULT([yes])
-    else
-      AC_MSG_RESULT([no])
-    fi
-    ;;
-  *)
-    AC_MSG_RESULT([no])
-    ;;
-  esac
-fi
-_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
-_LT_DECL([], [striplib], [1])
-])# _LT_CMD_STRIPLIB
-
-
-# _LT_SYS_DYNAMIC_LINKER([TAG])
-# -----------------------------
-# PORTME Fill in your ld.so characteristics
-m4_defun([_LT_SYS_DYNAMIC_LINKER],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_OBJDUMP])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_CHECK_SHELL_FEATURES])dnl
-AC_MSG_CHECKING([dynamic linker characteristics])
-m4_if([$1],
-	[], [
-if test "$GCC" = yes; then
-  case $host_os in
-    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
-    *) lt_awk_arg="/^libraries:/" ;;
-  esac
-  case $host_os in
-    mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
-    *) lt_sed_strip_eq="s,=/,/,g" ;;
-  esac
-  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
-  case $lt_search_path_spec in
-  *\;*)
-    # if the path contains ";" then we assume it to be the separator
-    # otherwise default to the standard path separator (i.e. ":") - it is
-    # assumed that no part of a normal pathname contains ";" but that should
-    # okay in the real world where ";" in dirpaths is itself problematic.
-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
-    ;;
-  *)
-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
-    ;;
-  esac
-  # Ok, now we have the path, separated by spaces, we can step through it
-  # and add multilib dir if necessary.
-  lt_tmp_lt_search_path_spec=
-  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
-  for lt_sys_path in $lt_search_path_spec; do
-    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
-      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
-    else
-      test -d "$lt_sys_path" && \
-	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
-    fi
-  done
-  lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
-BEGIN {RS=" "; FS="/|\n";} {
-  lt_foo="";
-  lt_count=0;
-  for (lt_i = NF; lt_i > 0; lt_i--) {
-    if ($lt_i != "" && $lt_i != ".") {
-      if ($lt_i == "..") {
-        lt_count++;
-      } else {
-        if (lt_count == 0) {
-          lt_foo="/" $lt_i lt_foo;
-        } else {
-          lt_count--;
-        }
-      }
-    }
-  }
-  if (lt_foo != "") { lt_freq[[lt_foo]]++; }
-  if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
-}'`
-  # AWK program above erroneously prepends '/' to C:/dos/paths
-  # for these hosts.
-  case $host_os in
-    mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
-      $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
-  esac
-  sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
-else
-  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi])
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=".so"
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-case $host_os in
-aix3*)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
-  shlibpath_var=LIBPATH
-
-  # AIX 3 has no versioning support, so we append a major version to the name.
-  soname_spec='${libname}${release}${shared_ext}$major'
-  ;;
-
-aix[[4-9]]*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  hardcode_into_libs=yes
-  if test "$host_cpu" = ia64; then
-    # AIX 5 supports IA64
-    library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
-    shlibpath_var=LD_LIBRARY_PATH
-  else
-    # With GCC up to 2.95.x, collect2 would create an import file
-    # for dependence libraries.  The import file would start with
-    # the line `#! .'.  This would cause the generated library to
-    # depend on `.', always an invalid library.  This was fixed in
-    # development snapshots of GCC prior to 3.0.
-    case $host_os in
-      aix4 | aix4.[[01]] | aix4.[[01]].*)
-      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
-	   echo ' yes '
-	   echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
-	:
-      else
-	can_build_shared=no
-      fi
-      ;;
-    esac
-    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
-    # soname into executable. Probably we can add versioning support to
-    # collect2, so additional links can be useful in future.
-    if test "$aix_use_runtimelinking" = yes; then
-      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
-      # instead of lib<name>.a to let people know that these are not
-      # typical AIX shared libraries.
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    else
-      # We preserve .a as extension for shared libraries through AIX4.2
-      # and later when we are not doing run time linking.
-      library_names_spec='${libname}${release}.a $libname.a'
-      soname_spec='${libname}${release}${shared_ext}$major'
-    fi
-    shlibpath_var=LIBPATH
-  fi
-  ;;
-
-amigaos*)
-  case $host_cpu in
-  powerpc)
-    # Since July 2007 AmigaOS4 officially supports .so libraries.
-    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    ;;
-  m68k)
-    library_names_spec='$libname.ixlibrary $libname.a'
-    # Create ${libname}_ixlibrary.a entries in /sys/libs.
-    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
-    ;;
-  esac
-  ;;
-
-beos*)
-  library_names_spec='${libname}${shared_ext}'
-  dynamic_linker="$host_os ld.so"
-  shlibpath_var=LIBRARY_PATH
-  ;;
-
-bsdi[[45]]*)
-  version_type=linux
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
-  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
-  # the default ld.so.conf also contains /usr/contrib/lib and
-  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
-  # libtool to hard-code these into programs
-  ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
-  version_type=windows
-  shrext_cmds=".dll"
-  need_version=no
-  need_lib_prefix=no
-
-  case $GCC,$cc_basename in
-  yes,*)
-    # gcc
-    library_names_spec='$libname.dll.a'
-    # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
-      dldir=$destdir/`dirname \$dlpath`~
-      test -d \$dldir || mkdir -p \$dldir~
-      $install_prog $dir/$dlname \$dldir/$dlname~
-      chmod a+x \$dldir/$dlname~
-      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
-        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
-      fi'
-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
-      dlpath=$dir/\$dldll~
-       $RM \$dlpath'
-    shlibpath_overrides_runpath=yes
-
-    case $host_os in
-    cygwin*)
-      # Cygwin DLLs use 'cyg' prefix rather than 'lib'
-      soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
-m4_if([$1], [],[
-      sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
-      ;;
-    mingw* | cegcc*)
-      # MinGW DLLs use traditional 'lib' prefix
-      soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
-      ;;
-    pw32*)
-      # pw32 DLLs use 'pw' prefix rather than 'lib'
-      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
-      ;;
-    esac
-    dynamic_linker='Win32 ld.exe'
-    ;;
-
-  *,cl*)
-    # Native MSVC
-    libname_spec='$name'
-    soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
-    library_names_spec='${libname}.dll.lib'
-
-    case $build_os in
-    mingw*)
-      sys_lib_search_path_spec=
-      lt_save_ifs=$IFS
-      IFS=';'
-      for lt_path in $LIB
-      do
-        IFS=$lt_save_ifs
-        # Let DOS variable expansion print the short 8.3 style file name.
-        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
-        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
-      done
-      IFS=$lt_save_ifs
-      # Convert to MSYS style.
-      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
-      ;;
-    cygwin*)
-      # Convert to unix form, then to dos form, then back to unix form
-      # but this time dos style (no spaces!) so that the unix form looks
-      # like /cygdrive/c/PROGRA~1:/cygdr...
-      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
-      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
-      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
-      ;;
-    *)
-      sys_lib_search_path_spec="$LIB"
-      if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
-        # It is most probably a Windows format PATH.
-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
-      else
-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
-      fi
-      # FIXME: find the short name or the path components, as spaces are
-      # common. (e.g. "Program Files" -> "PROGRA~1")
-      ;;
-    esac
-
-    # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
-      dldir=$destdir/`dirname \$dlpath`~
-      test -d \$dldir || mkdir -p \$dldir~
-      $install_prog $dir/$dlname \$dldir/$dlname'
-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
-      dlpath=$dir/\$dldll~
-       $RM \$dlpath'
-    shlibpath_overrides_runpath=yes
-    dynamic_linker='Win32 link.exe'
-    ;;
-
-  *)
-    # Assume MSVC wrapper
-    library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
-    dynamic_linker='Win32 ld.exe'
-    ;;
-  esac
-  # FIXME: first we should search . and the directory the executable is in
-  shlibpath_var=PATH
-  ;;
-
-darwin* | rhapsody*)
-  dynamic_linker="$host_os dyld"
-  version_type=darwin
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
-  soname_spec='${libname}${release}${major}$shared_ext'
-  shlibpath_overrides_runpath=yes
-  shlibpath_var=DYLD_LIBRARY_PATH
-  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-m4_if([$1], [],[
-  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
-  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
-  ;;
-
-dgux*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-freebsd1*)
-  dynamic_linker=no
-  ;;
-
-freebsd* | dragonfly*)
-  # DragonFly does not have aout.  When/if they implement a new
-  # versioning mechanism, adjust this.
-  if test -x /usr/bin/objformat; then
-    objformat=`/usr/bin/objformat`
-  else
-    case $host_os in
-    freebsd[[123]]*) objformat=aout ;;
-    *) objformat=elf ;;
-    esac
-  fi
-  version_type=freebsd-$objformat
-  case $version_type in
-    freebsd-elf*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-      need_version=no
-      need_lib_prefix=no
-      ;;
-    freebsd-*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
-      need_version=yes
-      ;;
-  esac
-  shlibpath_var=LD_LIBRARY_PATH
-  case $host_os in
-  freebsd2*)
-    shlibpath_overrides_runpath=yes
-    ;;
-  freebsd3.[[01]]* | freebsdelf3.[[01]]*)
-    shlibpath_overrides_runpath=yes
-    hardcode_into_libs=yes
-    ;;
-  freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
-  freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
-    shlibpath_overrides_runpath=no
-    hardcode_into_libs=yes
-    ;;
-  *) # from 4.6 on, and DragonFly
-    shlibpath_overrides_runpath=yes
-    hardcode_into_libs=yes
-    ;;
-  esac
-  ;;
-
-gnu*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  hardcode_into_libs=yes
-  ;;
-
-haiku*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  dynamic_linker="$host_os runtime_loader"
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
-  hardcode_into_libs=yes
-  ;;
-
-hpux9* | hpux10* | hpux11*)
-  # Give a soname corresponding to the major version so that dld.sl refuses to
-  # link against other versions.
-  version_type=sunos
-  need_lib_prefix=no
-  need_version=no
-  case $host_cpu in
-  ia64*)
-    shrext_cmds='.so'
-    hardcode_into_libs=yes
-    dynamic_linker="$host_os dld.so"
-    shlibpath_var=LD_LIBRARY_PATH
-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    if test "X$HPUX_IA64_MODE" = X32; then
-      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
-    else
-      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
-    fi
-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
-    ;;
-  hppa*64*)
-    shrext_cmds='.sl'
-    hardcode_into_libs=yes
-    dynamic_linker="$host_os dld.sl"
-    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
-    ;;
-  *)
-    shrext_cmds='.sl'
-    dynamic_linker="$host_os dld.sl"
-    shlibpath_var=SHLIB_PATH
-    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    ;;
-  esac
-  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
-  postinstall_cmds='chmod 555 $lib'
-  # or fails outright, so override atomically:
-  install_override_mode=555
-  ;;
-
-interix[[3-9]]*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  ;;
-
-irix5* | irix6* | nonstopux*)
-  case $host_os in
-    nonstopux*) version_type=nonstopux ;;
-    *)
-	if test "$lt_cv_prog_gnu_ld" = yes; then
-		version_type=linux
-	else
-		version_type=irix
-	fi ;;
-  esac
-  need_lib_prefix=no
-  need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
-  case $host_os in
-  irix5* | nonstopux*)
-    libsuff= shlibsuff=
-    ;;
-  *)
-    case $LD in # libtool.m4 will add one of these switches to LD
-    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
-      libsuff= shlibsuff= libmagic=32-bit;;
-    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
-      libsuff=32 shlibsuff=N32 libmagic=N32;;
-    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
-      libsuff=64 shlibsuff=64 libmagic=64-bit;;
-    *) libsuff= shlibsuff= libmagic=never-match;;
-    esac
-    ;;
-  esac
-  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
-  shlibpath_overrides_runpath=no
-  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
-  hardcode_into_libs=yes
-  ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
-  dynamic_linker=no
-  ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-
-  # Some binutils ld are patched to set DT_RUNPATH
-  AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
-    [lt_cv_shlibpath_overrides_runpath=no
-    save_LDFLAGS=$LDFLAGS
-    save_libdir=$libdir
-    eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
-	 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
-    AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
-      [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
-	 [lt_cv_shlibpath_overrides_runpath=yes])])
-    LDFLAGS=$save_LDFLAGS
-    libdir=$save_libdir
-    ])
-  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
-
-  # This implies no fast_install, which is unacceptable.
-  # Some rework will be needed to allow for fast_install
-  # before this can be enabled.
-  hardcode_into_libs=yes
-
-  # Add ABI-specific directories to the system library path.
-  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
-
-  # Append ld.so.conf contents to the search path
-  if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
-
-  fi
-
-  # We used to test for /lib/ld.so.1 and disable shared libraries on
-  # powerpc, because MkLinux only supported shared libraries with the
-  # GNU dynamic linker.  Since this was broken with cross compilers,
-  # most powerpc-linux boxes support dynamic linking these days and
-  # people can always --disable-shared, the test was removed, and we
-  # assume the GNU/Linux dynamic linker is in use.
-  dynamic_linker='GNU/Linux ld.so'
-  ;;
-
-netbsd*)
-  version_type=sunos
-  need_lib_prefix=no
-  need_version=no
-  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-    dynamic_linker='NetBSD (a.out) ld.so'
-  else
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    dynamic_linker='NetBSD ld.elf_so'
-  fi
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  hardcode_into_libs=yes
-  ;;
-
-newsos6)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  ;;
-
-*nto* | *qnx*)
-  version_type=qnx
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  dynamic_linker='ldqnx.so'
-  ;;
-
-openbsd*)
-  version_type=sunos
-  sys_lib_dlsearch_path_spec="/usr/lib"
-  need_lib_prefix=no
-  # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
-  case $host_os in
-    openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
-    *)				need_version=no  ;;
-  esac
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-    case $host_os in
-      openbsd2.[[89]] | openbsd2.[[89]].*)
-	shlibpath_overrides_runpath=no
-	;;
-      *)
-	shlibpath_overrides_runpath=yes
-	;;
-      esac
-  else
-    shlibpath_overrides_runpath=yes
-  fi
-  ;;
-
-os2*)
-  libname_spec='$name'
-  shrext_cmds=".dll"
-  need_lib_prefix=no
-  library_names_spec='$libname${shared_ext} $libname.a'
-  dynamic_linker='OS/2 ld.exe'
-  shlibpath_var=LIBPATH
-  ;;
-
-osf3* | osf4* | osf5*)
-  version_type=osf
-  need_lib_prefix=no
-  need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
-  ;;
-
-rdos*)
-  dynamic_linker=no
-  ;;
-
-solaris*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  hardcode_into_libs=yes
-  # ldd complains unless libraries are executable
-  postinstall_cmds='chmod +x $lib'
-  ;;
-
-sunos4*)
-  version_type=sunos
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  if test "$with_gnu_ld" = yes; then
-    need_lib_prefix=no
-  fi
-  need_version=yes
-  ;;
-
-sysv4 | sysv4.3*)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  case $host_vendor in
-    sni)
-      shlibpath_overrides_runpath=no
-      need_lib_prefix=no
-      runpath_var=LD_RUN_PATH
-      ;;
-    siemens)
-      need_lib_prefix=no
-      ;;
-    motorola)
-      need_lib_prefix=no
-      need_version=no
-      shlibpath_overrides_runpath=no
-      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
-      ;;
-  esac
-  ;;
-
-sysv4*MP*)
-  if test -d /usr/nec ;then
-    version_type=linux
-    library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
-    soname_spec='$libname${shared_ext}.$major'
-    shlibpath_var=LD_LIBRARY_PATH
-  fi
-  ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  version_type=freebsd-elf
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  hardcode_into_libs=yes
-  if test "$with_gnu_ld" = yes; then
-    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
-  else
-    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
-    case $host_os in
-      sco3.2v5*)
-        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
-	;;
-    esac
-  fi
-  sys_lib_dlsearch_path_spec='/usr/lib'
-  ;;
-
-tpf*)
-  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  ;;
-
-uts4*)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-*)
-  dynamic_linker=no
-  ;;
-esac
-AC_MSG_RESULT([$dynamic_linker])
-test "$dynamic_linker" = no && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
-  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
-  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
-fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
-  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
-fi
-
-_LT_DECL([], [variables_saved_for_relink], [1],
-    [Variables whose values should be saved in libtool wrapper scripts and
-    restored at link time])
-_LT_DECL([], [need_lib_prefix], [0],
-    [Do we need the "lib" prefix for modules?])
-_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
-_LT_DECL([], [version_type], [0], [Library versioning type])
-_LT_DECL([], [runpath_var], [0],  [Shared library runtime path variable])
-_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
-_LT_DECL([], [shlibpath_overrides_runpath], [0],
-    [Is shlibpath searched before the hard-coded library search path?])
-_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
-_LT_DECL([], [library_names_spec], [1],
-    [[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]])
-_LT_DECL([], [soname_spec], [1],
-    [[The coded name of the library, if different from the real name]])
-_LT_DECL([], [install_override_mode], [1],
-    [Permission mode override for installation of shared libraries])
-_LT_DECL([], [postinstall_cmds], [2],
-    [Command to use after installation of a shared archive])
-_LT_DECL([], [postuninstall_cmds], [2],
-    [Command to use after uninstallation of a shared archive])
-_LT_DECL([], [finish_cmds], [2],
-    [Commands used to finish a libtool library installation in a directory])
-_LT_DECL([], [finish_eval], [1],
-    [[As "finish_cmds", except a single script fragment to be evaled but
-    not shown]])
-_LT_DECL([], [hardcode_into_libs], [0],
-    [Whether we should hardcode library paths into libraries])
-_LT_DECL([], [sys_lib_search_path_spec], [2],
-    [Compile-time system search path for libraries])
-_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
-    [Run-time system search path for libraries])
-])# _LT_SYS_DYNAMIC_LINKER
-
-
-# _LT_PATH_TOOL_PREFIX(TOOL)
-# --------------------------
-# find a file program which can recognize shared library
-AC_DEFUN([_LT_PATH_TOOL_PREFIX],
-[m4_require([_LT_DECL_EGREP])dnl
-AC_MSG_CHECKING([for $1])
-AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
-[case $MAGIC_CMD in
-[[\\/*] |  ?:[\\/]*])
-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
-  ;;
-*)
-  lt_save_MAGIC_CMD="$MAGIC_CMD"
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-dnl $ac_dummy forces splitting on constant user-supplied paths.
-dnl POSIX.2 word splitting is done only on the output of word expansions,
-dnl not every word.  This closes a longstanding sh security hole.
-  ac_dummy="m4_if([$2], , $PATH, [$2])"
-  for ac_dir in $ac_dummy; do
-    IFS="$lt_save_ifs"
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$1; then
-      lt_cv_path_MAGIC_CMD="$ac_dir/$1"
-      if test -n "$file_magic_test_file"; then
-	case $deplibs_check_method in
-	"file_magic "*)
-	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
-	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-	    $EGREP "$file_magic_regex" > /dev/null; then
-	    :
-	  else
-	    cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such.  This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem.  Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
-	  fi ;;
-	esac
-      fi
-      break
-    fi
-  done
-  IFS="$lt_save_ifs"
-  MAGIC_CMD="$lt_save_MAGIC_CMD"
-  ;;
-esac])
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
-  AC_MSG_RESULT($MAGIC_CMD)
-else
-  AC_MSG_RESULT(no)
-fi
-_LT_DECL([], [MAGIC_CMD], [0],
-	 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
-])# _LT_PATH_TOOL_PREFIX
-
-# Old name:
-AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
-
-
-# _LT_PATH_MAGIC
-# --------------
-# find a file program which can recognize a shared library
-m4_defun([_LT_PATH_MAGIC],
-[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
-if test -z "$lt_cv_path_MAGIC_CMD"; then
-  if test -n "$ac_tool_prefix"; then
-    _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
-  else
-    MAGIC_CMD=:
-  fi
-fi
-])# _LT_PATH_MAGIC
-
-
-# LT_PATH_LD
-# ----------
-# find the pathname to the GNU or non-GNU linker
-AC_DEFUN([LT_PATH_LD],
-[AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
-
-AC_ARG_WITH([gnu-ld],
-    [AS_HELP_STRING([--with-gnu-ld],
-	[assume the C compiler uses GNU ld @<:@default=no@:>@])],
-    [test "$withval" = no || with_gnu_ld=yes],
-    [with_gnu_ld=no])dnl
-
-ac_prog=ld
-if test "$GCC" = yes; then
-  # Check if gcc -print-prog-name=ld gives a path.
-  AC_MSG_CHECKING([for ld used by $CC])
-  case $host in
-  *-*-mingw*)
-    # gcc leaves a trailing carriage return which upsets mingw
-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-  *)
-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-  esac
-  case $ac_prog in
-    # Accept absolute paths.
-    [[\\/]]* | ?:[[\\/]]*)
-      re_direlt='/[[^/]][[^/]]*/\.\./'
-      # Canonicalize the pathname of ld
-      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
-      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
-	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
-      done
-      test -z "$LD" && LD="$ac_prog"
-      ;;
-  "")
-    # If it fails, then pretend we aren't using GCC.
-    ac_prog=ld
-    ;;
-  *)
-    # If it is relative, then search for the first ld in PATH.
-    with_gnu_ld=unknown
-    ;;
-  esac
-elif test "$with_gnu_ld" = yes; then
-  AC_MSG_CHECKING([for GNU ld])
-else
-  AC_MSG_CHECKING([for non-GNU ld])
-fi
-AC_CACHE_VAL(lt_cv_path_LD,
-[if test -z "$LD"; then
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-  for ac_dir in $PATH; do
-    IFS="$lt_save_ifs"
-    test -z "$ac_dir" && ac_dir=.
-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      lt_cv_path_LD="$ac_dir/$ac_prog"
-      # Check to see if the program is GNU ld.  I'd rather use --version,
-      # but apparently some variants of GNU ld only accept -v.
-      # Break only if it was the GNU/non-GNU ld that we prefer.
-      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
-      *GNU* | *'with BFD'*)
-	test "$with_gnu_ld" != no && break
-	;;
-      *)
-	test "$with_gnu_ld" != yes && break
-	;;
-      esac
-    fi
-  done
-  IFS="$lt_save_ifs"
-else
-  lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi])
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
-  AC_MSG_RESULT($LD)
-else
-  AC_MSG_RESULT(no)
-fi
-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
-_LT_PATH_LD_GNU
-AC_SUBST([LD])
-
-_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
-])# LT_PATH_LD
-
-# Old names:
-AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
-AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_PROG_LD], [])
-dnl AC_DEFUN([AC_PROG_LD], [])
-
-
-# _LT_PATH_LD_GNU
-#- --------------
-m4_defun([_LT_PATH_LD_GNU],
-[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
-[# I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
-  lt_cv_prog_gnu_ld=yes
-  ;;
-*)
-  lt_cv_prog_gnu_ld=no
-  ;;
-esac])
-with_gnu_ld=$lt_cv_prog_gnu_ld
-])# _LT_PATH_LD_GNU
-
-
-# _LT_CMD_RELOAD
-# --------------
-# find reload flag for linker
-#   -- PORTME Some linkers may need a different reload flag.
-m4_defun([_LT_CMD_RELOAD],
-[AC_CACHE_CHECK([for $LD option to reload object files],
-  lt_cv_ld_reload_flag,
-  [lt_cv_ld_reload_flag='-r'])
-reload_flag=$lt_cv_ld_reload_flag
-case $reload_flag in
-"" | " "*) ;;
-*) reload_flag=" $reload_flag" ;;
-esac
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-case $host_os in
-  cygwin* | mingw* | pw32* | cegcc*)
-    if test "$GCC" != yes; then
-      reload_cmds=false
-    fi
-    ;;
-  darwin*)
-    if test "$GCC" = yes; then
-      reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-    else
-      reload_cmds='$LD$reload_flag -o $output$reload_objs'
-    fi
-    ;;
-esac
-_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
-_LT_TAGDECL([], [reload_cmds], [2])dnl
-])# _LT_CMD_RELOAD
-
-
-# _LT_CHECK_MAGIC_METHOD
-# ----------------------
-# how to check for library dependencies
-#  -- PORTME fill in with the dynamic library characteristics
-m4_defun([_LT_CHECK_MAGIC_METHOD],
-[m4_require([_LT_DECL_EGREP])
-m4_require([_LT_DECL_OBJDUMP])
-AC_CACHE_CHECK([how to recognize dependent libraries],
-lt_cv_deplibs_check_method,
-[lt_cv_file_magic_cmd='$MAGIC_CMD'
-lt_cv_file_magic_test_file=
-lt_cv_deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-
-case $host_os in
-aix[[4-9]]*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-beos*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-bsdi[[45]]*)
-  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
-  lt_cv_file_magic_cmd='/usr/bin/file -L'
-  lt_cv_file_magic_test_file=/shlib/libc.so
-  ;;
-
-cygwin*)
-  # func_win32_libid is a shell function defined in ltmain.sh
-  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
-  lt_cv_file_magic_cmd='func_win32_libid'
-  ;;
-
-mingw* | pw32*)
-  # Base MSYS/MinGW do not provide the 'file' command needed by
-  # func_win32_libid shell function, so use a weaker test based on 'objdump',
-  # unless we find 'file', for example because we are cross-compiling.
-  # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
-  if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
-    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
-    lt_cv_file_magic_cmd='func_win32_libid'
-  else
-    # Keep this pattern in sync with the one in func_win32_libid.
-    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
-    lt_cv_file_magic_cmd='$OBJDUMP -f'
-  fi
-  ;;
-
-cegcc*)
-  # use the weaker test based on 'objdump'. See mingw*.
-  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
-  lt_cv_file_magic_cmd='$OBJDUMP -f'
-  ;;
-
-darwin* | rhapsody*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-freebsd* | dragonfly*)
-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
-    case $host_cpu in
-    i*86 )
-      # Not sure whether the presence of OpenBSD here was a mistake.
-      # Let's accept both of them until this is cleared up.
-      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
-      lt_cv_file_magic_cmd=/usr/bin/file
-      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
-      ;;
-    esac
-  else
-    lt_cv_deplibs_check_method=pass_all
-  fi
-  ;;
-
-gnu*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-haiku*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-hpux10.20* | hpux11*)
-  lt_cv_file_magic_cmd=/usr/bin/file
-  case $host_cpu in
-  ia64*)
-    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
-    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
-    ;;
-  hppa*64*)
-    [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
-    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
-    ;;
-  *)
-    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
-    lt_cv_file_magic_test_file=/usr/lib/libc.sl
-    ;;
-  esac
-  ;;
-
-interix[[3-9]]*)
-  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
-  lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
-  ;;
-
-irix5* | irix6* | nonstopux*)
-  case $LD in
-  *-32|*"-32 ") libmagic=32-bit;;
-  *-n32|*"-n32 ") libmagic=N32;;
-  *-64|*"-64 ") libmagic=64-bit;;
-  *) libmagic=never-match;;
-  esac
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-netbsd*)
-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
-  else
-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
-  fi
-  ;;
-
-newos6*)
-  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
-  lt_cv_file_magic_cmd=/usr/bin/file
-  lt_cv_file_magic_test_file=/usr/lib/libnls.so
-  ;;
-
-*nto* | *qnx*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-openbsd*)
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
-  else
-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
-  fi
-  ;;
-
-osf3* | osf4* | osf5*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-rdos*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-solaris*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-sysv4 | sysv4.3*)
-  case $host_vendor in
-  motorola)
-    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
-    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
-    ;;
-  ncr)
-    lt_cv_deplibs_check_method=pass_all
-    ;;
-  sequent)
-    lt_cv_file_magic_cmd='/bin/file'
-    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
-    ;;
-  sni)
-    lt_cv_file_magic_cmd='/bin/file'
-    lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
-    lt_cv_file_magic_test_file=/lib/libc.so
-    ;;
-  siemens)
-    lt_cv_deplibs_check_method=pass_all
-    ;;
-  pc)
-    lt_cv_deplibs_check_method=pass_all
-    ;;
-  esac
-  ;;
-
-tpf*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-esac
-])
-
-file_magic_glob=
-want_nocaseglob=no
-if test "$build" = "$host"; then
-  case $host_os in
-  mingw* | pw32*)
-    if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
-      want_nocaseglob=yes
-    else
-      file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
-    fi
-    ;;
-  esac
-fi
-
-file_magic_cmd=$lt_cv_file_magic_cmd
-deplibs_check_method=$lt_cv_deplibs_check_method
-test -z "$deplibs_check_method" && deplibs_check_method=unknown
-
-_LT_DECL([], [deplibs_check_method], [1],
-    [Method to check whether dependent libraries are shared objects])
-_LT_DECL([], [file_magic_cmd], [1],
-    [Command to use when deplibs_check_method = "file_magic"])
-_LT_DECL([], [file_magic_glob], [1],
-    [How to find potential files when deplibs_check_method = "file_magic"])
-_LT_DECL([], [want_nocaseglob], [1],
-    [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
-])# _LT_CHECK_MAGIC_METHOD
-
-
-# LT_PATH_NM
-# ----------
-# find the pathname to a BSD- or MS-compatible name lister
-AC_DEFUN([LT_PATH_NM],
-[AC_REQUIRE([AC_PROG_CC])dnl
-AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
-[if test -n "$NM"; then
-  # Let the user override the test.
-  lt_cv_path_NM="$NM"
-else
-  lt_nm_to_check="${ac_tool_prefix}nm"
-  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
-    lt_nm_to_check="$lt_nm_to_check nm"
-  fi
-  for lt_tmp_nm in $lt_nm_to_check; do
-    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
-      IFS="$lt_save_ifs"
-      test -z "$ac_dir" && ac_dir=.
-      tmp_nm="$ac_dir/$lt_tmp_nm"
-      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
-	# Check to see if the nm accepts a BSD-compat flag.
-	# Adding the `sed 1q' prevents false positives on HP-UX, which says:
-	#   nm: unknown option "B" ignored
-	# Tru64's nm complains that /dev/null is an invalid object file
-	case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
-	*/dev/null* | *'Invalid file or object type'*)
-	  lt_cv_path_NM="$tmp_nm -B"
-	  break
-	  ;;
-	*)
-	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
-	  */dev/null*)
-	    lt_cv_path_NM="$tmp_nm -p"
-	    break
-	    ;;
-	  *)
-	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
-	    continue # so that we can try to find one that supports BSD flags
-	    ;;
-	  esac
-	  ;;
-	esac
-      fi
-    done
-    IFS="$lt_save_ifs"
-  done
-  : ${lt_cv_path_NM=no}
-fi])
-if test "$lt_cv_path_NM" != "no"; then
-  NM="$lt_cv_path_NM"
-else
-  # Didn't find any BSD compatible name lister, look for dumpbin.
-  if test -n "$DUMPBIN"; then :
-    # Let the user override the test.
-  else
-    AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
-    case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
-    *COFF*)
-      DUMPBIN="$DUMPBIN -symbols"
-      ;;
-    *)
-      DUMPBIN=:
-      ;;
-    esac
-  fi
-  AC_SUBST([DUMPBIN])
-  if test "$DUMPBIN" != ":"; then
-    NM="$DUMPBIN"
-  fi
-fi
-test -z "$NM" && NM=nm
-AC_SUBST([NM])
-_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
-
-AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
-  [lt_cv_nm_interface="BSD nm"
-  echo "int some_variable = 0;" > conftest.$ac_ext
-  (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
-  (eval "$ac_compile" 2>conftest.err)
-  cat conftest.err >&AS_MESSAGE_LOG_FD
-  (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
-  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
-  cat conftest.err >&AS_MESSAGE_LOG_FD
-  (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
-  cat conftest.out >&AS_MESSAGE_LOG_FD
-  if $GREP 'External.*some_variable' conftest.out > /dev/null; then
-    lt_cv_nm_interface="MS dumpbin"
-  fi
-  rm -f conftest*])
-])# LT_PATH_NM
-
-# Old names:
-AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
-AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_PROG_NM], [])
-dnl AC_DEFUN([AC_PROG_NM], [])
-
-# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
-# --------------------------------
-# how to determine the name of the shared library
-# associated with a specific link library.
-#  -- PORTME fill in with the dynamic library characteristics
-m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
-[m4_require([_LT_DECL_EGREP])
-m4_require([_LT_DECL_OBJDUMP])
-m4_require([_LT_DECL_DLLTOOL])
-AC_CACHE_CHECK([how to associate runtime and link libraries],
-lt_cv_sharedlib_from_linklib_cmd,
-[lt_cv_sharedlib_from_linklib_cmd='unknown'
-
-case $host_os in
-cygwin* | mingw* | pw32* | cegcc*)
-  # two different shell functions defined in ltmain.sh
-  # decide which to use based on capabilities of $DLLTOOL
-  case `$DLLTOOL --help 2>&1` in
-  *--identify-strict*)
-    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
-    ;;
-  *)
-    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
-    ;;
-  esac
-  ;;
-*)
-  # fallback: assume linklib IS sharedlib
-  lt_cv_sharedlib_from_linklib_cmd="$ECHO"
-  ;;
-esac
-])
-sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
-test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
-
-_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
-    [Command to associate shared and link libraries])
-])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
-
-
-# _LT_PATH_MANIFEST_TOOL
-# ----------------------
-# locate the manifest tool
-m4_defun([_LT_PATH_MANIFEST_TOOL],
-[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
-test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
-AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
-  [lt_cv_path_mainfest_tool=no
-  echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
-  $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
-  cat conftest.err >&AS_MESSAGE_LOG_FD
-  if $GREP 'Manifest Tool' conftest.out > /dev/null; then
-    lt_cv_path_mainfest_tool=yes
-  fi
-  rm -f conftest*])
-if test "x$lt_cv_path_mainfest_tool" != xyes; then
-  MANIFEST_TOOL=:
-fi
-_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
-])# _LT_PATH_MANIFEST_TOOL
-
-
-# LT_LIB_M
-# --------
-# check for math library
-AC_DEFUN([LT_LIB_M],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-LIBM=
-case $host in
-*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
-  # These system don't have libm, or don't need it
-  ;;
-*-ncr-sysv4.3*)
-  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
-  AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
-  ;;
-*)
-  AC_CHECK_LIB(m, cos, LIBM="-lm")
-  ;;
-esac
-AC_SUBST([LIBM])
-])# LT_LIB_M
-
-# Old name:
-AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_CHECK_LIBM], [])
-
-
-# _LT_COMPILER_NO_RTTI([TAGNAME])
-# -------------------------------
-m4_defun([_LT_COMPILER_NO_RTTI],
-[m4_require([_LT_TAG_COMPILER])dnl
-
-_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
-
-if test "$GCC" = yes; then
-  case $cc_basename in
-  nvcc*)
-    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
-  *)
-    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
-  esac
-
-  _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
-    lt_cv_prog_compiler_rtti_exceptions,
-    [-fno-rtti -fno-exceptions], [],
-    [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
-fi
-_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
-	[Compiler flag to turn off builtin functions])
-])# _LT_COMPILER_NO_RTTI
-
-
-# _LT_CMD_GLOBAL_SYMBOLS
-# ----------------------
-m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_PROG_AWK])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-AC_REQUIRE([LT_PATH_LD])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-AC_MSG_CHECKING([command to parse $NM output from $compiler object])
-AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
-[
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[[BCDEGRST]]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
-
-# Define system-specific variables.
-case $host_os in
-aix*)
-  symcode='[[BCDT]]'
-  ;;
-cygwin* | mingw* | pw32* | cegcc*)
-  symcode='[[ABCDGISTW]]'
-  ;;
-hpux*)
-  if test "$host_cpu" = ia64; then
-    symcode='[[ABCDEGRST]]'
-  fi
-  ;;
-irix* | nonstopux*)
-  symcode='[[BCDEGRST]]'
-  ;;
-osf*)
-  symcode='[[BCDEGQRST]]'
-  ;;
-solaris*)
-  symcode='[[BDRT]]'
-  ;;
-sco3.2v5*)
-  symcode='[[DT]]'
-  ;;
-sysv4.2uw2*)
-  symcode='[[DT]]'
-  ;;
-sysv5* | sco5v6* | unixware* | OpenUNIX*)
-  symcode='[[ABDT]]'
-  ;;
-sysv4)
-  symcode='[[DFNSTU]]'
-  ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-case `$NM -V 2>&1` in
-*GNU* | *'with BFD'*)
-  symcode='[[ABCDGIRSTW]]' ;;
-esac
-
-# Transform an extracted symbol line into a proper C declaration.
-# Some systems (esp. on ia64) link data and code symbols differently,
-# so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-
-# Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
-
-# Handle CRLF in mingw tool chain
-opt_cr=
-case $build_os in
-mingw*)
-  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
-  ;;
-esac
-
-# Try without a prefix underscore, then with it.
-for ac_symprfx in "" "_"; do
-
-  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
-  symxfrm="\\1 $ac_symprfx\\2 \\2"
-
-  # Write the raw and C identifiers.
-  if test "$lt_cv_nm_interface" = "MS dumpbin"; then
-    # Fake it for dumpbin and say T for any non-static function
-    # and D for any global variable.
-    # Also find C++ and __fastcall symbols from MSVC++,
-    # which start with @ or ?.
-    lt_cv_sys_global_symbol_pipe="$AWK ['"\
-"     {last_section=section; section=\$ 3};"\
-"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
-"     \$ 0!~/External *\|/{next};"\
-"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
-"     {if(hide[section]) next};"\
-"     {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-"     {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-"     s[1]~/^[@?]/{print s[1], s[1]; next};"\
-"     s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
-"     ' prfx=^$ac_symprfx]"
-  else
-    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
-  fi
-  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
-
-  # Check to see that the pipe works correctly.
-  pipe_works=no
-
-  rm -f conftest*
-  cat > conftest.$ac_ext <<_LT_EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(void);
-void nm_test_func(void){}
-#ifdef __cplusplus
-}
-#endif
-int main(){nm_test_var='a';nm_test_func();return(0);}
-_LT_EOF
-
-  if AC_TRY_EVAL(ac_compile); then
-    # Now try to grab the symbols.
-    nlist=conftest.nm
-    if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
-      # Try sorting and uniquifying the output.
-      if sort "$nlist" | uniq > "$nlist"T; then
-	mv -f "$nlist"T "$nlist"
-      else
-	rm -f "$nlist"T
-      fi
-
-      # Make sure that we snagged all the symbols we need.
-      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
-	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
-	  cat <<_LT_EOF > conftest.$ac_ext
-/* 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 con't be const, because runtime
-   relocations are performed -- see ld's documentation on pseudo-relocs.  */
-# define LT@&t at _DLSYM_CONST
-#elif defined(__osf__)
-/* This system does not cope well with relocations in const data.  */
-# define LT@&t at _DLSYM_CONST
-#else
-# define LT@&t at _DLSYM_CONST const
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-_LT_EOF
-	  # Now generate the symbol file.
-	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
-
-	  cat <<_LT_EOF >> conftest.$ac_ext
-
-/* The mapping between symbol names and symbols.  */
-LT@&t at _DLSYM_CONST struct {
-  const char *name;
-  void       *address;
-}
-lt__PROGRAM__LTX_preloaded_symbols[[]] =
-{
-  { "@PROGRAM@", (void *) 0 },
-_LT_EOF
-	  $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
-	  cat <<\_LT_EOF >> conftest.$ac_ext
-  {0, (void *) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
-  return lt__PROGRAM__LTX_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-_LT_EOF
-	  # Now try linking the two files.
-	  mv conftest.$ac_objext conftstm.$ac_objext
-	  lt_globsym_save_LIBS=$LIBS
-	  lt_globsym_save_CFLAGS=$CFLAGS
-	  LIBS="conftstm.$ac_objext"
-	  CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
-	  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
-	    pipe_works=yes
-	  fi
-	  LIBS=$lt_globsym_save_LIBS
-	  CFLAGS=$lt_globsym_save_CFLAGS
-	else
-	  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
-	fi
-      else
-	echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
-      fi
-    else
-      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
-    fi
-  else
-    echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
-    cat conftest.$ac_ext >&5
-  fi
-  rm -rf conftest* conftst*
-
-  # Do not use the global_symbol_pipe unless it works.
-  if test "$pipe_works" = yes; then
-    break
-  else
-    lt_cv_sys_global_symbol_pipe=
-  fi
-done
-])
-if test -z "$lt_cv_sys_global_symbol_pipe"; then
-  lt_cv_sys_global_symbol_to_cdecl=
-fi
-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
-  AC_MSG_RESULT(failed)
-else
-  AC_MSG_RESULT(ok)
-fi
-
-# Response file support.
-if test "$lt_cv_nm_interface" = "MS dumpbin"; then
-  nm_file_list_spec='@'
-elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
-  nm_file_list_spec='@'
-fi
-
-_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
-    [Take the output of nm and produce a listing of raw symbols and C names])
-_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
-    [Transform the output of nm in a proper C declaration])
-_LT_DECL([global_symbol_to_c_name_address],
-    [lt_cv_sys_global_symbol_to_c_name_address], [1],
-    [Transform the output of nm in a C name address pair])
-_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
-    [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
-    [Transform the output of nm in a C name address pair when lib prefix is needed])
-_LT_DECL([], [nm_file_list_spec], [1],
-    [Specify filename containing input files for $NM])
-]) # _LT_CMD_GLOBAL_SYMBOLS
-
-
-# _LT_COMPILER_PIC([TAGNAME])
-# ---------------------------
-m4_defun([_LT_COMPILER_PIC],
-[m4_require([_LT_TAG_COMPILER])dnl
-_LT_TAGVAR(lt_prog_compiler_wl, $1)=
-_LT_TAGVAR(lt_prog_compiler_pic, $1)=
-_LT_TAGVAR(lt_prog_compiler_static, $1)=
-
-m4_if([$1], [CXX], [
-  # C++ specific cases for pic, static, wl, etc.
-  if test "$GXX" = yes; then
-    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-
-    case $host_os in
-    aix*)
-      # All AIX code is PIC.
-      if test "$host_cpu" = ia64; then
-	# AIX 5 now supports IA64 processor
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-        ;;
-      m68k)
-            # FIXME: we need at least 68020 code to build shared libraries, but
-            # adding the `-m68020' flag to GCC prevents building anything better,
-            # like `-m68040'.
-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
-        ;;
-      esac
-      ;;
-
-    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
-      # PIC is the default for these OSes.
-      ;;
-    mingw* | cygwin* | os2* | pw32* | cegcc*)
-      # This hack is so that the source file can tell whether it is being
-      # built for inclusion in a dll (and should export symbols for example).
-      # Although the cygwin gcc ignores -fPIC, still need this for old-style
-      # (--disable-auto-import) libraries
-      m4_if([$1], [GCJ], [],
-	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
-      ;;
-    darwin* | rhapsody*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
-      ;;
-    *djgpp*)
-      # DJGPP does not support shared libraries at all
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)=
-      ;;
-    haiku*)
-      # PIC is the default for Haiku.
-      # The "-static" flag exists, but is broken.
-      _LT_TAGVAR(lt_prog_compiler_static, $1)=
-      ;;
-    interix[[3-9]]*)
-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
-      # Instead, we relocate shared libraries at runtime.
-      ;;
-    sysv4*MP*)
-      if test -d /usr/nec; then
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
-      fi
-      ;;
-    hpux*)
-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
-      # sets the default TLS model and affects inlining.
-      case $host_cpu in
-      hppa*64*)
-	;;
-      *)
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-	;;
-      esac
-      ;;
-    *qnx* | *nto*)
-      # QNX uses GNU C++, but need to define -shared option too, otherwise
-      # it will coredump.
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
-      ;;
-    *)
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-      ;;
-    esac
-  else
-    case $host_os in
-      aix[[4-9]]*)
-	# All AIX code is PIC.
-	if test "$host_cpu" = ia64; then
-	  # AIX 5 now supports IA64 processor
-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	else
-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
-	fi
-	;;
-      chorus*)
-	case $cc_basename in
-	cxch68*)
-	  # Green Hills C++ Compiler
-	  # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
-	  ;;
-	esac
-	;;
-      mingw* | cygwin* | os2* | pw32* | cegcc*)
-	# This hack is so that the source file can tell whether it is being
-	# built for inclusion in a dll (and should export symbols for example).
-	m4_if([$1], [GCJ], [],
-	  [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
-	;;
-      dgux*)
-	case $cc_basename in
-	  ec++*)
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	    ;;
-	  ghcx*)
-	    # Green Hills C++ Compiler
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      freebsd* | dragonfly*)
-	# FreeBSD uses GNU C++
-	;;
-      hpux9* | hpux10* | hpux11*)
-	case $cc_basename in
-	  CC*)
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
-	    if test "$host_cpu" != ia64; then
-	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
-	    fi
-	    ;;
-	  aCC*)
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
-	    case $host_cpu in
-	    hppa*64*|ia64*)
-	      # +Z the default
-	      ;;
-	    *)
-	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
-	      ;;
-	    esac
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      interix*)
-	# This is c89, which is MS Visual C++ (no shared libs)
-	# Anyone wants to do a port?
-	;;
-      irix5* | irix6* | nonstopux*)
-	case $cc_basename in
-	  CC*)
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-	    # CC pic flag -KPIC is the default.
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      linux* | k*bsd*-gnu | kopensolaris*-gnu)
-	case $cc_basename in
-	  KCC*)
-	    # KAI C++ Compiler
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-	    ;;
-	  ecpc* )
-	    # old Intel C++ for x86_64 which still supported -KPIC.
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-	    ;;
-	  icpc* )
-	    # Intel C++, used to be incompatible with GCC.
-	    # ICC 10 doesn't accept -KPIC any more.
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-	    ;;
-	  pgCC* | pgcpp*)
-	    # Portland Group C++ compiler
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	    ;;
-	  cxx*)
-	    # Compaq C++
-	    # Make sure the PIC flag is empty.  It appears that all Alpha
-	    # Linux and Compaq Tru64 Unix objects are PIC.
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-	    ;;
-	  xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
-	    # IBM XL 8.0, 9.0 on PPC and BlueGene
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
-	    ;;
-	  *)
-	    case `$CC -V 2>&1 | sed 5q` in
-	    *Sun\ C*)
-	      # Sun C++ 5.9
-	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
-	      ;;
-	    esac
-	    ;;
-	esac
-	;;
-      lynxos*)
-	;;
-      m88k*)
-	;;
-      mvs*)
-	case $cc_basename in
-	  cxx*)
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      netbsd*)
-	;;
-      *qnx* | *nto*)
-        # QNX uses GNU C++, but need to define -shared option too, otherwise
-        # it will coredump.
-        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
-        ;;
-      osf3* | osf4* | osf5*)
-	case $cc_basename in
-	  KCC*)
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
-	    ;;
-	  RCC*)
-	    # Rational C++ 2.4.1
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
-	    ;;
-	  cxx*)
-	    # Digital/Compaq C++
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    # Make sure the PIC flag is empty.  It appears that all Alpha
-	    # Linux and Compaq Tru64 Unix objects are PIC.
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      psos*)
-	;;
-      solaris*)
-	case $cc_basename in
-	  CC* | sunCC*)
-	    # Sun C++ 4.2, 5.x and Centerline C++
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
-	    ;;
-	  gcx*)
-	    # Green Hills C++ Compiler
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      sunos4*)
-	case $cc_basename in
-	  CC*)
-	    # Sun C++ 4.x
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	    ;;
-	  lcc*)
-	    # Lucid
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
-	case $cc_basename in
-	  CC*)
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	    ;;
-	esac
-	;;
-      tandem*)
-	case $cc_basename in
-	  NCC*)
-	    # NonStop-UX NCC 3.20
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      vxworks*)
-	;;
-      *)
-	_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
-	;;
-    esac
-  fi
-],
-[
-  if test "$GCC" = yes; then
-    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-
-    case $host_os in
-      aix*)
-      # All AIX code is PIC.
-      if test "$host_cpu" = ia64; then
-	# AIX 5 now supports IA64 processor
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-        ;;
-      m68k)
-            # FIXME: we need at least 68020 code to build shared libraries, but
-            # adding the `-m68020' flag to GCC prevents building anything better,
-            # like `-m68040'.
-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
-        ;;
-      esac
-      ;;
-
-    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
-      # PIC is the default for these OSes.
-      ;;
-
-    mingw* | cygwin* | pw32* | os2* | cegcc*)
-      # This hack is so that the source file can tell whether it is being
-      # built for inclusion in a dll (and should export symbols for example).
-      # Although the cygwin gcc ignores -fPIC, still need this for old-style
-      # (--disable-auto-import) libraries
-      m4_if([$1], [GCJ], [],
-	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
-      ;;
-
-    darwin* | rhapsody*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
-      ;;
-
-    haiku*)
-      # PIC is the default for Haiku.
-      # The "-static" flag exists, but is broken.
-      _LT_TAGVAR(lt_prog_compiler_static, $1)=
-      ;;
-
-    hpux*)
-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
-      # sets the default TLS model and affects inlining.
-      case $host_cpu in
-      hppa*64*)
-	# +Z the default
-	;;
-      *)
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-	;;
-      esac
-      ;;
-
-    interix[[3-9]]*)
-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
-      # Instead, we relocate shared libraries at runtime.
-      ;;
-
-    msdosdjgpp*)
-      # Just because we use GCC doesn't mean we suddenly get shared libraries
-      # on systems that don't support them.
-      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
-      enable_shared=no
-      ;;
-
-    *nto* | *qnx*)
-      # QNX uses GNU C++, but need to define -shared option too, otherwise
-      # it will coredump.
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
-      ;;
-
-    sysv4*MP*)
-      if test -d /usr/nec; then
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
-      fi
-      ;;
-
-    *)
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-      ;;
-    esac
-
-    case $cc_basename in
-    nvcc*) # Cuda Compiler Driver 2.2
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Xcompiler -fPIC'
-      ;;
-    esac
-  else
-    # PORTME Check for flag to pass linker flags through the system compiler.
-    case $host_os in
-    aix*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      if test "$host_cpu" = ia64; then
-	# AIX 5 now supports IA64 processor
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      else
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
-      fi
-      ;;
-
-    mingw* | cygwin* | pw32* | os2* | cegcc*)
-      # This hack is so that the source file can tell whether it is being
-      # built for inclusion in a dll (and should export symbols for example).
-      m4_if([$1], [GCJ], [],
-	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
-      ;;
-
-    hpux9* | hpux10* | hpux11*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
-      # not for PA HP-UX.
-      case $host_cpu in
-      hppa*64*|ia64*)
-	# +Z the default
-	;;
-      *)
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
-	;;
-      esac
-      # Is there a better lt_prog_compiler_static that works with the bundled CC?
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
-      ;;
-
-    irix5* | irix6* | nonstopux*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      # PIC (with -KPIC) is the default.
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-      ;;
-
-    linux* | k*bsd*-gnu | kopensolaris*-gnu)
-      case $cc_basename in
-      # old Intel for x86_64 which still supported -KPIC.
-      ecc*)
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-        ;;
-      # icc used to be incompatible with GCC.
-      # ICC 10 doesn't accept -KPIC any more.
-      icc* | ifort*)
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-        ;;
-      # Lahey Fortran 8.1.
-      lf95*)
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
-	;;
-      nagfor*)
-	# NAG Fortran compiler
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	;;
-      pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
-        # Portland Group compilers (*not* the Pentium gcc compiler,
-	# which looks to be a dead project)
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-        ;;
-      ccc*)
-        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-        # All Alpha code is PIC.
-        _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-        ;;
-      xl* | bgxl* | bgf* | mpixl*)
-	# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
-	;;
-      *)
-	case `$CC -V 2>&1 | sed 5q` in
-	*Sun\ F* | *Sun*Fortran*)
-	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
-	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	  _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
-	  ;;
-	*Sun\ C*)
-	  # Sun C 5.9
-	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	  ;;
-	esac
-	;;
-      esac
-      ;;
-
-    newsos6)
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      ;;
-
-    *nto* | *qnx*)
-      # QNX uses GNU C++, but need to define -shared option too, otherwise
-      # it will coredump.
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
-      ;;
-
-    osf3* | osf4* | osf5*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      # All OSF/1 code is PIC.
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-      ;;
-
-    rdos*)
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-      ;;
-
-    solaris*)
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      case $cc_basename in
-      f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
-      *)
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
-      esac
-      ;;
-
-    sunos4*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      ;;
-
-    sysv4 | sysv4.2uw2* | sysv4.3*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      ;;
-
-    sysv4*MP*)
-      if test -d /usr/nec ;then
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      fi
-      ;;
-
-    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      ;;
-
-    unicos*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
-      ;;
-
-    uts4*)
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      ;;
-
-    *)
-      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
-      ;;
-    esac
-  fi
-])
-case $host_os in
-  # For platforms which do not support PIC, -DPIC is meaningless:
-  *djgpp*)
-    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
-    ;;
-  *)
-    _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t at m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
-    ;;
-esac
-
-AC_CACHE_CHECK([for $compiler option to produce PIC],
-  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
-  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
-_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
-  _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
-    [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
-    [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t at m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
-    [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
-     "" | " "*) ;;
-     *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
-     esac],
-    [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
-     _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
-fi
-_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
-	[Additional compiler flags for building library objects])
-
-_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
-	[How to pass a linker flag through the compiler])
-#
-# Check to make sure the static flag actually works.
-#
-wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
-_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
-  _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
-  $lt_tmp_static_flag,
-  [],
-  [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
-_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
-	[Compiler flag to prevent dynamic linking])
-])# _LT_COMPILER_PIC
-
-
-# _LT_LINKER_SHLIBS([TAGNAME])
-# ----------------------------
-# See if the linker supports building shared libraries.
-m4_defun([_LT_LINKER_SHLIBS],
-[AC_REQUIRE([LT_PATH_LD])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-m4_require([_LT_PATH_MANIFEST_TOOL])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
-m4_if([$1], [CXX], [
-  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
-  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
-  case $host_os in
-  aix[[4-9]]*)
-    # If we're using GNU nm, then we don't want the "-C" option.
-    # -C means demangle to AIX nm, but means don't demangle with GNU nm
-    # Also, AIX nm treats weak defined symbols like other global defined
-    # symbols, whereas GNU nm marks them as "W".
-    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
-    else
-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
-    fi
-    ;;
-  pw32*)
-    _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
-    ;;
-  cygwin* | mingw* | cegcc*)
-    case $cc_basename in
-    cl*) ;;
-    *)
-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
-      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
-      ;;
-    esac
-    ;;
-  *)
-    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
-    ;;
-  esac
-], [
-  runpath_var=
-  _LT_TAGVAR(allow_undefined_flag, $1)=
-  _LT_TAGVAR(always_export_symbols, $1)=no
-  _LT_TAGVAR(archive_cmds, $1)=
-  _LT_TAGVAR(archive_expsym_cmds, $1)=
-  _LT_TAGVAR(compiler_needs_object, $1)=no
-  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-  _LT_TAGVAR(export_dynamic_flag_spec, $1)=
-  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
-  _LT_TAGVAR(hardcode_automatic, $1)=no
-  _LT_TAGVAR(hardcode_direct, $1)=no
-  _LT_TAGVAR(hardcode_direct_absolute, $1)=no
-  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-  _LT_TAGVAR(hardcode_libdir_separator, $1)=
-  _LT_TAGVAR(hardcode_minus_L, $1)=no
-  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-  _LT_TAGVAR(inherit_rpath, $1)=no
-  _LT_TAGVAR(link_all_deplibs, $1)=unknown
-  _LT_TAGVAR(module_cmds, $1)=
-  _LT_TAGVAR(module_expsym_cmds, $1)=
-  _LT_TAGVAR(old_archive_from_new_cmds, $1)=
-  _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
-  _LT_TAGVAR(thread_safe_flag_spec, $1)=
-  _LT_TAGVAR(whole_archive_flag_spec, $1)=
-  # include_expsyms should be a list of space-separated symbols to be *always*
-  # included in the symbol list
-  _LT_TAGVAR(include_expsyms, $1)=
-  # exclude_expsyms can be an extended regexp of symbols to exclude
-  # it will be wrapped by ` (' and `)$', so one must not match beginning or
-  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-  # as well as any symbol that contains `d'.
-  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
-  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
-  # platforms (ab)use it in PIC code, but their linkers get confused if
-  # the symbol is explicitly referenced.  Since portable code cannot
-  # rely on this symbol name, it's probably fine to never include it in
-  # preloaded symbol tables.
-  # Exclude shared library initialization/finalization symbols.
-dnl Note also adjust exclude_expsyms for C++ above.
-  extract_expsyms_cmds=
-
-  case $host_os in
-  cygwin* | mingw* | pw32* | cegcc*)
-    # FIXME: the MSVC++ port hasn't been tested in a loooong time
-    # When not using gcc, we currently assume that we are using
-    # Microsoft Visual C++.
-    if test "$GCC" != yes; then
-      with_gnu_ld=no
-    fi
-    ;;
-  interix*)
-    # we just hope/assume this is gcc and not c89 (= MSVC++)
-    with_gnu_ld=yes
-    ;;
-  openbsd*)
-    with_gnu_ld=no
-    ;;
-  esac
-
-  _LT_TAGVAR(ld_shlibs, $1)=yes
-
-  # On some targets, GNU ld is compatible enough with the native linker
-  # that we're better off using the native interface for both.
-  lt_use_gnu_ld_interface=no
-  if test "$with_gnu_ld" = yes; then
-    case $host_os in
-      aix*)
-	# The AIX port of GNU ld has always aspired to compatibility
-	# with the native linker.  However, as the warning in the GNU ld
-	# block says, versions before 2.19.5* couldn't really create working
-	# shared libraries, regardless of the interface used.
-	case `$LD -v 2>&1` in
-	  *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
-	  *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
-	  *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
-	  *)
-	    lt_use_gnu_ld_interface=yes
-	    ;;
-	esac
-	;;
-      *)
-	lt_use_gnu_ld_interface=yes
-	;;
-    esac
-  fi
-
-  if test "$lt_use_gnu_ld_interface" = yes; then
-    # If archive_cmds runs LD, not CC, wlarc should be empty
-    wlarc='${wl}'
-
-    # Set some defaults for GNU ld with shared library support. These
-    # are reset later if shared libraries are not supported. Putting them
-    # here allows them to be overridden if necessary.
-    runpath_var=LD_RUN_PATH
-    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-    # ancient GNU ld didn't support --whole-archive et. al.
-    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
-      _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-    else
-      _LT_TAGVAR(whole_archive_flag_spec, $1)=
-    fi
-    supports_anon_versioning=no
-    case `$LD -v 2>&1` in
-      *GNU\ gold*) supports_anon_versioning=yes ;;
-      *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
-      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
-      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
-      *\ 2.11.*) ;; # other 2.11 versions
-      *) supports_anon_versioning=yes ;;
-    esac
-
-    # See if GNU ld supports shared libraries.
-    case $host_os in
-    aix[[3-9]]*)
-      # On AIX/PPC, the GNU linker is very broken
-      if test "$host_cpu" != ia64; then
-	_LT_TAGVAR(ld_shlibs, $1)=no
-	cat <<_LT_EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.19, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support.  If you
-*** really care for shared libraries, you may want to install binutils
-*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
-*** You will then need to restart the configuration process.
-
-_LT_EOF
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-            _LT_TAGVAR(archive_expsym_cmds, $1)=''
-        ;;
-      m68k)
-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-            _LT_TAGVAR(hardcode_minus_L, $1)=yes
-        ;;
-      esac
-      ;;
-
-    beos*)
-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-	# Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
-	# support --undefined.  This deserves some investigation.  FIXME
-	_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-      else
-	_LT_TAGVAR(ld_shlibs, $1)=no
-      fi
-      ;;
-
-    cygwin* | mingw* | pw32* | cegcc*)
-      # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
-      # as there is no search path for DLLs.
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-      _LT_TAGVAR(always_export_symbols, $1)=no
-      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
-      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
-
-      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-	# If the export-symbols file already is a .def file (1st line
-	# is EXPORTS), use it as is; otherwise, prepend...
-	_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	  cp $export_symbols $output_objdir/$soname.def;
-	else
-	  echo EXPORTS > $output_objdir/$soname.def;
-	  cat $export_symbols >> $output_objdir/$soname.def;
-	fi~
-	$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-      else
-	_LT_TAGVAR(ld_shlibs, $1)=no
-      fi
-      ;;
-
-    haiku*)
-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-      _LT_TAGVAR(link_all_deplibs, $1)=yes
-      ;;
-
-    interix[[3-9]]*)
-      _LT_TAGVAR(hardcode_direct, $1)=no
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
-      # Instead, shared libraries are loaded at an image base (0x10000000 by
-      # default) and relocated if they conflict, which is a slow very memory
-      # consuming and fragmenting process.  To avoid this, we pick a random,
-      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
-      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      ;;
-
-    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
-      tmp_diet=no
-      if test "$host_os" = linux-dietlibc; then
-	case $cc_basename in
-	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
-	esac
-      fi
-      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
-	 && test "$tmp_diet" = no
-      then
-	tmp_addflag=' $pic_flag'
-	tmp_sharedflag='-shared'
-	case $cc_basename,$host_cpu in
-        pgcc*)				# Portland Group C compiler
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  tmp_addflag=' $pic_flag'
-	  ;;
-	pgf77* | pgf90* | pgf95* | pgfortran*)
-					# Portland Group f77 and f90 compilers
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  tmp_addflag=' $pic_flag -Mnomain' ;;
-	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
-	  tmp_addflag=' -i_dynamic' ;;
-	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64
-	  tmp_addflag=' -i_dynamic -nofor_main' ;;
-	ifc* | ifort*)			# Intel Fortran compiler
-	  tmp_addflag=' -nofor_main' ;;
-	lf95*)				# Lahey Fortran 8.1
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)=
-	  tmp_sharedflag='--shared' ;;
-	xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
-	  tmp_sharedflag='-qmkshrobj'
-	  tmp_addflag= ;;
-	nvcc*)	# Cuda Compiler Driver 2.2
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  _LT_TAGVAR(compiler_needs_object, $1)=yes
-	  ;;
-	esac
-	case `$CC -V 2>&1 | sed 5q` in
-	*Sun\ C*)			# Sun C 5.9
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  _LT_TAGVAR(compiler_needs_object, $1)=yes
-	  tmp_sharedflag='-G' ;;
-	*Sun\ F*)			# Sun Fortran 8.3
-	  tmp_sharedflag='-G' ;;
-	esac
-	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-
-        if test "x$supports_anon_versioning" = xyes; then
-          _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-	    cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-	    echo "local: *; };" >> $output_objdir/$libname.ver~
-	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
-        fi
-
-	case $cc_basename in
-	xlf* | bgf* | bgxlf* | mpixlf*)
-	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-	  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
-	  if test "x$supports_anon_versioning" = xyes; then
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-	      echo "local: *; };" >> $output_objdir/$libname.ver~
-	      $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
-	  fi
-	  ;;
-	esac
-      else
-        _LT_TAGVAR(ld_shlibs, $1)=no
-      fi
-      ;;
-
-    netbsd*)
-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
-	wlarc=
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-      fi
-      ;;
-
-    solaris*)
-      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
-	_LT_TAGVAR(ld_shlibs, $1)=no
-	cat <<_LT_EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems.  Therefore, libtool
-*** is disabling shared libraries support.  We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer.  Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
-      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-      else
-	_LT_TAGVAR(ld_shlibs, $1)=no
-      fi
-      ;;
-
-    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
-      case `$LD -v 2>&1` in
-        *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
-	_LT_TAGVAR(ld_shlibs, $1)=no
-	cat <<_LT_EOF 1>&2
-
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
-*** reliably create shared libraries on SCO systems.  Therefore, libtool
-*** is disabling shared libraries support.  We urge you to upgrade GNU
-*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
-	;;
-	*)
-	  # For security reasons, it is highly recommended that you always
-	  # use absolute paths for naming shared libraries, and exclude the
-	  # DT_RUNPATH tag from executables and libraries.  But doing so
-	  # requires that you compile everything twice, which is a pain.
-	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-	  else
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	  fi
-	;;
-      esac
-      ;;
-
-    sunos4*)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-      wlarc=
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    *)
-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-      else
-	_LT_TAGVAR(ld_shlibs, $1)=no
-      fi
-      ;;
-    esac
-
-    if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
-      runpath_var=
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)=
-      _LT_TAGVAR(whole_archive_flag_spec, $1)=
-    fi
-  else
-    # PORTME fill in a description of your system's linker (not GNU ld)
-    case $host_os in
-    aix3*)
-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-      _LT_TAGVAR(always_export_symbols, $1)=yes
-      _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
-      # Note: this linker hardcodes the directories in LIBPATH if there
-      # are no directories specified by -L.
-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
-	# Neither direct hardcoding nor static linking is supported with a
-	# broken collect2.
-	_LT_TAGVAR(hardcode_direct, $1)=unsupported
-      fi
-      ;;
-
-    aix[[4-9]]*)
-      if test "$host_cpu" = ia64; then
-	# On IA64, the linker does run time linking by default, so we don't
-	# have to do anything special.
-	aix_use_runtimelinking=no
-	exp_sym_flag='-Bexport'
-	no_entry_flag=""
-      else
-	# If we're using GNU nm, then we don't want the "-C" option.
-	# -C means demangle to AIX nm, but means don't demangle with GNU nm
-	# Also, AIX nm treats weak defined symbols like other global
-	# defined symbols, whereas GNU nm marks them as "W".
-	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
-	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
-	else
-	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
-	fi
-	aix_use_runtimelinking=no
-
-	# Test if we are trying to use run time linking or normal
-	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
-	# need to do runtime linking.
-	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
-	  for ld_flag in $LDFLAGS; do
-	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
-	    aix_use_runtimelinking=yes
-	    break
-	  fi
-	  done
-	  ;;
-	esac
-
-	exp_sym_flag='-bexport'
-	no_entry_flag='-bnoentry'
-      fi
-
-      # When large executables or shared objects are built, AIX ld can
-      # have problems creating the table of contents.  If linking a library
-      # or program results in "error TOC overflow" add -mminimal-toc to
-      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
-      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
-      _LT_TAGVAR(archive_cmds, $1)=''
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
-      _LT_TAGVAR(link_all_deplibs, $1)=yes
-      _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
-
-      if test "$GCC" = yes; then
-	case $host_os in aix4.[[012]]|aix4.[[012]].*)
-	# We only want to do this on AIX 4.2 and lower, the check
-	# below for broken collect2 doesn't work under 4.3+
-	  collect2name=`${CC} -print-prog-name=collect2`
-	  if test -f "$collect2name" &&
-	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
-	  then
-	  # We have reworked collect2
-	  :
-	  else
-	  # We have old collect2
-	  _LT_TAGVAR(hardcode_direct, $1)=unsupported
-	  # It fails to find uninstalled libraries when the uninstalled
-	  # path is not listed in the libpath.  Setting hardcode_minus_L
-	  # to unsupported forces relinking
-	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-	  _LT_TAGVAR(hardcode_libdir_separator, $1)=
-	  fi
-	  ;;
-	esac
-	shared_flag='-shared'
-	if test "$aix_use_runtimelinking" = yes; then
-	  shared_flag="$shared_flag "'${wl}-G'
-	fi
-      else
-	# not using gcc
-	if test "$host_cpu" = ia64; then
-	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
-	# chokes on -Wl,-G. The following line is correct:
-	  shared_flag='-G'
-	else
-	  if test "$aix_use_runtimelinking" = yes; then
-	    shared_flag='${wl}-G'
-	  else
-	    shared_flag='${wl}-bM:SRE'
-	  fi
-	fi
-      fi
-
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
-      # It seems that -bexpall does not export symbols beginning with
-      # underscore (_), so it is better to generate a list of symbols to export.
-      _LT_TAGVAR(always_export_symbols, $1)=yes
-      if test "$aix_use_runtimelinking" = yes; then
-	# Warning - without using the other runtime loading flags (-brtl),
-	# -berok will link without error, but may produce a broken library.
-	_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
-        # Determine the default libpath from the value encoded in an
-        # empty executable.
-        _LT_SYS_MODULE_PATH_AIX([$1])
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-      else
-	if test "$host_cpu" = ia64; then
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
-	  _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
-	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
-	else
-	 # Determine the default libpath from the value encoded in an
-	 # empty executable.
-	 _LT_SYS_MODULE_PATH_AIX([$1])
-	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
-	  # Warning - without using the other run time loading flags,
-	  # -berok will link without error, but may produce a broken library.
-	  _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
-	  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
-	  if test "$with_gnu_ld" = yes; then
-	    # We only use this code for GNU lds that support --whole-archive.
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
-	  else
-	    # Exported symbols can be pulled into shared objects from archives
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
-	  fi
-	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-	  # This is similar to how AIX traditionally builds its shared libraries.
-	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
-	fi
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-            _LT_TAGVAR(archive_expsym_cmds, $1)=''
-        ;;
-      m68k)
-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-            _LT_TAGVAR(hardcode_minus_L, $1)=yes
-        ;;
-      esac
-      ;;
-
-    bsdi[[45]]*)
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
-      ;;
-
-    cygwin* | mingw* | pw32* | cegcc*)
-      # When not using gcc, we currently assume that we are using
-      # Microsoft Visual C++.
-      # hardcode_libdir_flag_spec is actually meaningless, as there is
-      # no search path for DLLs.
-      case $cc_basename in
-      cl*)
-	# Native MSVC
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
-	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-	_LT_TAGVAR(always_export_symbols, $1)=yes
-	_LT_TAGVAR(file_list_spec, $1)='@'
-	# Tell ltmain to make .lib files, not .a files.
-	libext=lib
-	# Tell ltmain to make .dll files, not .so files.
-	shrext_cmds=".dll"
-	# FIXME: Setting linknames here is a bad hack.
-	_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
-	_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	    sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
-	  else
-	    sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
-	  fi~
-	  $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
-	  linknames='
-	# The linker will not automatically build a static lib if we build a DLL.
-	# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
-	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-	_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
-	# Don't use ranlib
-	_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
-	_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
-	  lt_tool_outputfile="@TOOL_OUTPUT@"~
-	  case $lt_outputfile in
-	    *.exe|*.EXE) ;;
-	    *)
-	      lt_outputfile="$lt_outputfile.exe"
-	      lt_tool_outputfile="$lt_tool_outputfile.exe"
-	      ;;
-	  esac~
-	  if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
-	    $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
-	    $RM "$lt_outputfile.manifest";
-	  fi'
-	;;
-      *)
-	# Assume MSVC wrapper
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
-	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-	# Tell ltmain to make .lib files, not .a files.
-	libext=lib
-	# Tell ltmain to make .dll files, not .so files.
-	shrext_cmds=".dll"
-	# FIXME: Setting linknames here is a bad hack.
-	_LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
-	# The linker will automatically build a .lib file if we build a DLL.
-	_LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
-	# FIXME: Should let the user specify the lib program.
-	_LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
-	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-	;;
-      esac
-      ;;
-
-    darwin* | rhapsody*)
-      _LT_DARWIN_LINKER_FEATURES($1)
-      ;;
-
-    dgux*)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    freebsd1*)
-      _LT_TAGVAR(ld_shlibs, $1)=no
-      ;;
-
-    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
-    # support.  Future versions do this automatically, but an explicit c++rt0.o
-    # does not break anything, and helps significantly (at the cost of a little
-    # extra space).
-    freebsd2.2*)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
-    freebsd2*)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-    freebsd* | dragonfly*)
-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    hpux9*)
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
-      fi
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-
-      # hardcode_minus_L: Not really in the search PATH,
-      # but as the default location of the library.
-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-      ;;
-
-    hpux10*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
-      fi
-      if test "$with_gnu_ld" = no; then
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
-	_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
-	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
-	_LT_TAGVAR(hardcode_direct, $1)=yes
-	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-	# hardcode_minus_L: Not really in the search PATH,
-	# but as the default location of the library.
-	_LT_TAGVAR(hardcode_minus_L, $1)=yes
-      fi
-      ;;
-
-    hpux11*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
-	case $host_cpu in
-	hppa*64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	ia64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	esac
-      else
-	case $host_cpu in
-	hppa*64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	ia64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	*)
-	m4_if($1, [], [
-	  # Older versions of the 11.00 compiler do not understand -b yet
-	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
-	  _LT_LINKER_OPTION([if $CC understands -b],
-	    _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
-	    [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
-	    [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
-	  [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
-	  ;;
-	esac
-      fi
-      if test "$with_gnu_ld" = no; then
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
-	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
-	case $host_cpu in
-	hppa*64*|ia64*)
-	  _LT_TAGVAR(hardcode_direct, $1)=no
-	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	  ;;
-	*)
-	  _LT_TAGVAR(hardcode_direct, $1)=yes
-	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-
-	  # hardcode_minus_L: Not really in the search PATH,
-	  # but as the default location of the library.
-	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
-	  ;;
-	esac
-      fi
-      ;;
-
-    irix5* | irix6* | nonstopux*)
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-	# Try to use the -exported_symbol ld option, if it does not
-	# work, assume that -exports_file does not work either and
-	# implicitly export all symbols.
-	# This should be the same for all languages, so no per-tag cache variable.
-	AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
-	  [lt_cv_irix_exported_symbol],
-	  [save_LDFLAGS="$LDFLAGS"
-	   LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
-	   AC_LINK_IFELSE(
-	     [AC_LANG_SOURCE(
-	        [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
-			      [C++], [[int foo (void) { return 0; }]],
-			      [Fortran 77], [[
-      subroutine foo
-      end]],
-			      [Fortran], [[
-      subroutine foo
-      end]])])],
-	      [lt_cv_irix_exported_symbol=yes],
-	      [lt_cv_irix_exported_symbol=no])
-           LDFLAGS="$save_LDFLAGS"])
-	if test "$lt_cv_irix_exported_symbol" = yes; then
-          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
-	fi
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-      fi
-      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-      _LT_TAGVAR(inherit_rpath, $1)=yes
-      _LT_TAGVAR(link_all_deplibs, $1)=yes
-      ;;
-
-    netbsd*)
-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
-      fi
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    newsos6)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    *nto* | *qnx*)
-      ;;
-
-    openbsd*)
-      if test -f /usr/libexec/ld.so; then
-	_LT_TAGVAR(hardcode_direct, $1)=yes
-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-	else
-	  case $host_os in
-	   openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
-	     _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-	     ;;
-	   *)
-	     _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	     ;;
-	  esac
-	fi
-      else
-	_LT_TAGVAR(ld_shlibs, $1)=no
-      fi
-      ;;
-
-    os2*)
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
-      _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
-      ;;
-
-    osf3*)
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-      else
-	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-      fi
-      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-      ;;
-
-    osf4* | osf5*)	# as osf3* with the addition of -msym flag
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-      else
-	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
-	$CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
-
-	# Both c and cxx compiler support -rpath directly
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
-      fi
-      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-      ;;
-
-    solaris*)
-      _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
-      if test "$GCC" = yes; then
-	wlarc='${wl}'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
-      else
-	case `$CC -V 2>&1` in
-	*"Compilers 5.0"*)
-	  wlarc=''
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
-	  ;;
-	*)
-	  wlarc='${wl}'
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
-	  ;;
-	esac
-      fi
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      case $host_os in
-      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
-      *)
-	# The compiler driver will combine and reorder linker options,
-	# but understands `-z linker_flag'.  GCC discards it without `$wl',
-	# but is careful enough not to reorder.
-	# Supported since Solaris 2.6 (maybe 2.5.1?)
-	if test "$GCC" = yes; then
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
-	else
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
-	fi
-	;;
-      esac
-      _LT_TAGVAR(link_all_deplibs, $1)=yes
-      ;;
-
-    sunos4*)
-      if test "x$host_vendor" = xsequent; then
-	# Use $CC to link under sequent, because it throws in some extra .o
-	# files that make .init and .fini sections work.
-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
-      fi
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    sysv4)
-      case $host_vendor in
-	sni)
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	  _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
-	;;
-	siemens)
-	  ## LD is ld it makes a PLAMLIB
-	  ## CC just makes a GrossModule.
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
-	  _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
-	  _LT_TAGVAR(hardcode_direct, $1)=no
-        ;;
-	motorola)
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	  _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
-	;;
-      esac
-      runpath_var='LD_RUN_PATH'
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    sysv4.3*)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
-      ;;
-
-    sysv4*MP*)
-      if test -d /usr/nec; then
-	_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	runpath_var=LD_RUN_PATH
-	hardcode_runpath_var=yes
-	_LT_TAGVAR(ld_shlibs, $1)=yes
-      fi
-      ;;
-
-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      runpath_var='LD_RUN_PATH'
-
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      fi
-      ;;
-
-    sysv5* | sco3.2v5* | sco5v6*)
-      # Note: We can NOT use -z defs as we might desire, because we do not
-      # link with -lc, and that would cause any symbols used from libc to
-      # always be unresolved, which means just about no library would
-      # ever link correctly.  If we're not using GNU ld we use -z text
-      # though, which does catch some bad symbols but isn't as heavy-handed
-      # as -z defs.
-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
-      _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
-      _LT_TAGVAR(link_all_deplibs, $1)=yes
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
-      runpath_var='LD_RUN_PATH'
-
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      fi
-      ;;
-
-    uts4*)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    *)
-      _LT_TAGVAR(ld_shlibs, $1)=no
-      ;;
-    esac
-
-    if test x$host_vendor = xsni; then
-      case $host in
-      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
-	;;
-      esac
-    fi
-  fi
-])
-AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
-test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
-
-_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
-
-_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
-_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
-_LT_DECL([], [extract_expsyms_cmds], [2],
-    [The commands to extract the exported symbol list from a shared archive])
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
-x|xyes)
-  # Assume -lc should be added
-  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-
-  if test "$enable_shared" = yes && test "$GCC" = yes; then
-    case $_LT_TAGVAR(archive_cmds, $1) in
-    *'~'*)
-      # FIXME: we may have to deal with multi-command sequences.
-      ;;
-    '$CC '*)
-      # Test whether the compiler implicitly links with -lc since on some
-      # systems, -lgcc has to come before -lc. If gcc already passes -lc
-      # to ld, don't add -lc before -lgcc.
-      AC_CACHE_CHECK([whether -lc should be explicitly linked in],
-	[lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
-	[$RM conftest*
-	echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
-	if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
-	  soname=conftest
-	  lib=conftest
-	  libobjs=conftest.$ac_objext
-	  deplibs=
-	  wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
-	  pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
-	  compiler_flags=-v
-	  linker_flags=-v
-	  verstring=
-	  output_objdir=.
-	  libname=conftest
-	  lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
-	  _LT_TAGVAR(allow_undefined_flag, $1)=
-	  if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
-	  then
-	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-	  else
-	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-	  fi
-	  _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
-	else
-	  cat conftest.err 1>&5
-	fi
-	$RM conftest*
-	])
-      _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
-      ;;
-    esac
-  fi
-  ;;
-esac
-
-_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
-    [Whether or not to add -lc for building shared libraries])
-_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
-    [enable_shared_with_static_runtimes], [0],
-    [Whether or not to disallow shared libs when runtime libs are static])
-_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
-    [Compiler flag to allow reflexive dlopens])
-_LT_TAGDECL([], [whole_archive_flag_spec], [1],
-    [Compiler flag to generate shared objects directly from archives])
-_LT_TAGDECL([], [compiler_needs_object], [1],
-    [Whether the compiler copes with passing no objects directly])
-_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
-    [Create an old-style archive from a shared archive])
-_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
-    [Create a temporary old-style archive to link instead of a shared archive])
-_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
-_LT_TAGDECL([], [archive_expsym_cmds], [2])
-_LT_TAGDECL([], [module_cmds], [2],
-    [Commands used to build a loadable module if different from building
-    a shared archive.])
-_LT_TAGDECL([], [module_expsym_cmds], [2])
-_LT_TAGDECL([], [with_gnu_ld], [1],
-    [Whether we are building with GNU ld or not])
-_LT_TAGDECL([], [allow_undefined_flag], [1],
-    [Flag that allows shared libraries with undefined symbols to be built])
-_LT_TAGDECL([], [no_undefined_flag], [1],
-    [Flag that enforces no undefined symbols])
-_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
-    [Flag to hardcode $libdir into a binary during linking.
-    This must work even if $libdir does not exist])
-_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
-    [[If ld is used when linking, flag to hardcode $libdir into a binary
-    during linking.  This must work even if $libdir does not exist]])
-_LT_TAGDECL([], [hardcode_libdir_separator], [1],
-    [Whether we need a single "-rpath" flag with a separated argument])
-_LT_TAGDECL([], [hardcode_direct], [0],
-    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
-    DIR into the resulting binary])
-_LT_TAGDECL([], [hardcode_direct_absolute], [0],
-    [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])
-_LT_TAGDECL([], [hardcode_minus_L], [0],
-    [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
-    into the resulting binary])
-_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
-    [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
-    into the resulting binary])
-_LT_TAGDECL([], [hardcode_automatic], [0],
-    [Set to "yes" if building a shared library automatically hardcodes DIR
-    into the library and all subsequent libraries and executables linked
-    against it])
-_LT_TAGDECL([], [inherit_rpath], [0],
-    [Set to yes if linker adds runtime paths of dependent libraries
-    to runtime path list])
-_LT_TAGDECL([], [link_all_deplibs], [0],
-    [Whether libtool must link a program against all its dependency libraries])
-_LT_TAGDECL([], [always_export_symbols], [0],
-    [Set to "yes" if exported symbols are required])
-_LT_TAGDECL([], [export_symbols_cmds], [2],
-    [The commands to list exported symbols])
-_LT_TAGDECL([], [exclude_expsyms], [1],
-    [Symbols that should not be listed in the preloaded symbols])
-_LT_TAGDECL([], [include_expsyms], [1],
-    [Symbols that must always be exported])
-_LT_TAGDECL([], [prelink_cmds], [2],
-    [Commands necessary for linking programs (against libraries) with templates])
-_LT_TAGDECL([], [postlink_cmds], [2],
-    [Commands necessary for finishing linking programs])
-_LT_TAGDECL([], [file_list_spec], [1],
-    [Specify filename containing input files])
-dnl FIXME: Not yet implemented
-dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
-dnl    [Compiler flag to generate thread safe objects])
-])# _LT_LINKER_SHLIBS
-
-
-# _LT_LANG_C_CONFIG([TAG])
-# ------------------------
-# Ensure that the configuration variables for a C compiler are suitably
-# defined.  These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_C_CONFIG],
-[m4_require([_LT_DECL_EGREP])dnl
-lt_save_CC="$CC"
-AC_LANG_PUSH(C)
-
-# Source file extension for C test sources.
-ac_ext=c
-
-# Object file extension for compiled C test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='int main(){return(0);}'
-
-_LT_TAG_COMPILER
-# Save the default compiler, since it gets overwritten when the other
-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
-compiler_DEFAULT=$CC
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-## CAVEAT EMPTOR:
-## There is no encapsulation within the following macros, do not change
-## the running order or otherwise move them around unless you know exactly
-## what you are doing...
-if test -n "$compiler"; then
-  _LT_COMPILER_NO_RTTI($1)
-  _LT_COMPILER_PIC($1)
-  _LT_COMPILER_C_O($1)
-  _LT_COMPILER_FILE_LOCKS($1)
-  _LT_LINKER_SHLIBS($1)
-  _LT_SYS_DYNAMIC_LINKER($1)
-  _LT_LINKER_HARDCODE_LIBPATH($1)
-  LT_SYS_DLOPEN_SELF
-  _LT_CMD_STRIPLIB
-
-  # Report which library types will actually be built
-  AC_MSG_CHECKING([if libtool supports shared libraries])
-  AC_MSG_RESULT([$can_build_shared])
-
-  AC_MSG_CHECKING([whether to build shared libraries])
-  test "$can_build_shared" = "no" && enable_shared=no
-
-  # On AIX, shared libraries and static libraries use the same namespace, and
-  # are all built from PIC.
-  case $host_os in
-  aix3*)
-    test "$enable_shared" = yes && enable_static=no
-    if test -n "$RANLIB"; then
-      archive_cmds="$archive_cmds~\$RANLIB \$lib"
-      postinstall_cmds='$RANLIB $lib'
-    fi
-    ;;
-
-  aix[[4-9]]*)
-    if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-      test "$enable_shared" = yes && enable_static=no
-    fi
-    ;;
-  esac
-  AC_MSG_RESULT([$enable_shared])
-
-  AC_MSG_CHECKING([whether to build static libraries])
-  # Make sure either enable_shared or enable_static is yes.
-  test "$enable_shared" = yes || enable_static=yes
-  AC_MSG_RESULT([$enable_static])
-
-  _LT_CONFIG($1)
-fi
-AC_LANG_POP
-CC="$lt_save_CC"
-])# _LT_LANG_C_CONFIG
-
-
-# _LT_LANG_CXX_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for a C++ compiler are suitably
-# defined.  These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_CXX_CONFIG],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_PATH_MANIFEST_TOOL])dnl
-if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
-    ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
-    (test "X$CXX" != "Xg++"))) ; then
-  AC_PROG_CXXCPP
-else
-  _lt_caught_CXX_error=yes
-fi
-
-AC_LANG_PUSH(C++)
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(compiler_needs_object, $1)=no
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for C++ test sources.
-ac_ext=cpp
-
-# Object file extension for compiled C++ test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the CXX compiler isn't working.  Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_caught_CXX_error" != yes; then
-  # Code to be used in simple compile tests
-  lt_simple_compile_test_code="int some_variable = 0;"
-
-  # Code to be used in simple link tests
-  lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
-
-  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
-  _LT_TAG_COMPILER
-
-  # save warnings/boilerplate of simple test code
-  _LT_COMPILER_BOILERPLATE
-  _LT_LINKER_BOILERPLATE
-
-  # Allow CC to be a program name with arguments.
-  lt_save_CC=$CC
-  lt_save_CFLAGS=$CFLAGS
-  lt_save_LD=$LD
-  lt_save_GCC=$GCC
-  GCC=$GXX
-  lt_save_with_gnu_ld=$with_gnu_ld
-  lt_save_path_LD=$lt_cv_path_LD
-  if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
-    lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
-  else
-    $as_unset lt_cv_prog_gnu_ld
-  fi
-  if test -n "${lt_cv_path_LDCXX+set}"; then
-    lt_cv_path_LD=$lt_cv_path_LDCXX
-  else
-    $as_unset lt_cv_path_LD
-  fi
-  test -z "${LDCXX+set}" || LD=$LDCXX
-  CC=${CXX-"c++"}
-  CFLAGS=$CXXFLAGS
-  compiler=$CC
-  _LT_TAGVAR(compiler, $1)=$CC
-  _LT_CC_BASENAME([$compiler])
-
-  if test -n "$compiler"; then
-    # We don't want -fno-exception when compiling C++ code, so set the
-    # no_builtin_flag separately
-    if test "$GXX" = yes; then
-      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
-    else
-      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
-    fi
-
-    if test "$GXX" = yes; then
-      # Set up default GNU C++ configuration
-
-      LT_PATH_LD
-
-      # Check if GNU C++ uses GNU ld as the underlying linker, since the
-      # archiving commands below assume that GNU ld is being used.
-      if test "$with_gnu_ld" = yes; then
-        _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-
-        # If archive_cmds runs LD, not CC, wlarc should be empty
-        # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
-        #     investigate it a little bit more. (MM)
-        wlarc='${wl}'
-
-        # ancient GNU ld didn't support --whole-archive et. al.
-        if eval "`$CC -print-prog-name=ld` --help 2>&1" |
-	  $GREP 'no-whole-archive' > /dev/null; then
-          _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-        else
-          _LT_TAGVAR(whole_archive_flag_spec, $1)=
-        fi
-      else
-        with_gnu_ld=no
-        wlarc=
-
-        # A generic and very simple default shared library creation
-        # command for GNU C++ for the case where it uses the native
-        # linker, instead of GNU ld.  If possible, this setting should
-        # overridden to take advantage of the native linker features on
-        # the platform it is being used on.
-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
-      fi
-
-      # Commands to make compiler produce verbose output that lists
-      # what "hidden" libraries, object files and flags are used when
-      # linking a shared library.
-      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
-
-    else
-      GXX=no
-      with_gnu_ld=no
-      wlarc=
-    fi
-
-    # PORTME: fill in a description of your system's C++ link characteristics
-    AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
-    _LT_TAGVAR(ld_shlibs, $1)=yes
-    case $host_os in
-      aix3*)
-        # FIXME: insert proper C++ library support
-        _LT_TAGVAR(ld_shlibs, $1)=no
-        ;;
-      aix[[4-9]]*)
-        if test "$host_cpu" = ia64; then
-          # On IA64, the linker does run time linking by default, so we don't
-          # have to do anything special.
-          aix_use_runtimelinking=no
-          exp_sym_flag='-Bexport'
-          no_entry_flag=""
-        else
-          aix_use_runtimelinking=no
-
-          # Test if we are trying to use run time linking or normal
-          # AIX style linking. If -brtl is somewhere in LDFLAGS, we
-          # need to do runtime linking.
-          case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
-	    for ld_flag in $LDFLAGS; do
-	      case $ld_flag in
-	      *-brtl*)
-	        aix_use_runtimelinking=yes
-	        break
-	        ;;
-	      esac
-	    done
-	    ;;
-          esac
-
-          exp_sym_flag='-bexport'
-          no_entry_flag='-bnoentry'
-        fi
-
-        # When large executables or shared objects are built, AIX ld can
-        # have problems creating the table of contents.  If linking a library
-        # or program results in "error TOC overflow" add -mminimal-toc to
-        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
-        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
-        _LT_TAGVAR(archive_cmds, $1)=''
-        _LT_TAGVAR(hardcode_direct, $1)=yes
-        _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-        _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
-        _LT_TAGVAR(link_all_deplibs, $1)=yes
-        _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
-
-        if test "$GXX" = yes; then
-          case $host_os in aix4.[[012]]|aix4.[[012]].*)
-          # We only want to do this on AIX 4.2 and lower, the check
-          # below for broken collect2 doesn't work under 4.3+
-	  collect2name=`${CC} -print-prog-name=collect2`
-	  if test -f "$collect2name" &&
-	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null
-	  then
-	    # We have reworked collect2
-	    :
-	  else
-	    # We have old collect2
-	    _LT_TAGVAR(hardcode_direct, $1)=unsupported
-	    # It fails to find uninstalled libraries when the uninstalled
-	    # path is not listed in the libpath.  Setting hardcode_minus_L
-	    # to unsupported forces relinking
-	    _LT_TAGVAR(hardcode_minus_L, $1)=yes
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=
-	  fi
-          esac
-          shared_flag='-shared'
-	  if test "$aix_use_runtimelinking" = yes; then
-	    shared_flag="$shared_flag "'${wl}-G'
-	  fi
-        else
-          # not using gcc
-          if test "$host_cpu" = ia64; then
-	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
-	  # chokes on -Wl,-G. The following line is correct:
-	  shared_flag='-G'
-          else
-	    if test "$aix_use_runtimelinking" = yes; then
-	      shared_flag='${wl}-G'
-	    else
-	      shared_flag='${wl}-bM:SRE'
-	    fi
-          fi
-        fi
-
-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
-        # It seems that -bexpall does not export symbols beginning with
-        # underscore (_), so it is better to generate a list of symbols to
-	# export.
-        _LT_TAGVAR(always_export_symbols, $1)=yes
-        if test "$aix_use_runtimelinking" = yes; then
-          # Warning - without using the other runtime loading flags (-brtl),
-          # -berok will link without error, but may produce a broken library.
-          _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
-          # Determine the default libpath from the value encoded in an empty
-          # executable.
-          _LT_SYS_MODULE_PATH_AIX([$1])
-          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
-
-          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-        else
-          if test "$host_cpu" = ia64; then
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
-	    _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
-	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
-          else
-	    # Determine the default libpath from the value encoded in an
-	    # empty executable.
-	    _LT_SYS_MODULE_PATH_AIX([$1])
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
-	    # Warning - without using the other run time loading flags,
-	    # -berok will link without error, but may produce a broken library.
-	    _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
-	    _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
-	    if test "$with_gnu_ld" = yes; then
-	      # We only use this code for GNU lds that support --whole-archive.
-	      _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
-	    else
-	      # Exported symbols can be pulled into shared objects from archives
-	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
-	    fi
-	    _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-	    # This is similar to how AIX traditionally builds its shared
-	    # libraries.
-	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
-          fi
-        fi
-        ;;
-
-      beos*)
-	if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-	  # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
-	  # support --undefined.  This deserves some investigation.  FIXME
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	else
-	  _LT_TAGVAR(ld_shlibs, $1)=no
-	fi
-	;;
-
-      chorus*)
-        case $cc_basename in
-          *)
-	  # FIXME: insert proper C++ library support
-	  _LT_TAGVAR(ld_shlibs, $1)=no
-	  ;;
-        esac
-        ;;
-
-      cygwin* | mingw* | pw32* | cegcc*)
-	case $GXX,$cc_basename in
-	,cl* | no,cl*)
-	  # Native MSVC
-	  # hardcode_libdir_flag_spec is actually meaningless, as there is
-	  # no search path for DLLs.
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
-	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-	  _LT_TAGVAR(always_export_symbols, $1)=yes
-	  _LT_TAGVAR(file_list_spec, $1)='@'
-	  # Tell ltmain to make .lib files, not .a files.
-	  libext=lib
-	  # Tell ltmain to make .dll files, not .so files.
-	  shrext_cmds=".dll"
-	  # FIXME: Setting linknames here is a bad hack.
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	      $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
-	    else
-	      $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
-	    fi~
-	    $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
-	    linknames='
-	  # The linker will not automatically build a static lib if we build a DLL.
-	  # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
-	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-	  # Don't use ranlib
-	  _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
-	  _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
-	    lt_tool_outputfile="@TOOL_OUTPUT@"~
-	    case $lt_outputfile in
-	      *.exe|*.EXE) ;;
-	      *)
-		lt_outputfile="$lt_outputfile.exe"
-		lt_tool_outputfile="$lt_tool_outputfile.exe"
-		;;
-	    esac~
-	    func_to_tool_file "$lt_outputfile"~
-	    if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
-	      $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
-	      $RM "$lt_outputfile.manifest";
-	    fi'
-	  ;;
-	*)
-	  # g++
-	  # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
-	  # as there is no search path for DLLs.
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
-	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-	  _LT_TAGVAR(always_export_symbols, $1)=no
-	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-
-	  if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-	    # If the export-symbols file already is a .def file (1st line
-	    # is EXPORTS), use it as is; otherwise, prepend...
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	      cp $export_symbols $output_objdir/$soname.def;
-	    else
-	      echo EXPORTS > $output_objdir/$soname.def;
-	      cat $export_symbols >> $output_objdir/$soname.def;
-	    fi~
-	    $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-	  else
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	  fi
-	  ;;
-	esac
-	;;
-      darwin* | rhapsody*)
-        _LT_DARWIN_LINKER_FEATURES($1)
-	;;
-
-      dgux*)
-        case $cc_basename in
-          ec++*)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          ghcx*)
-	    # Green Hills C++ Compiler
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          *)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-        esac
-        ;;
-
-      freebsd[[12]]*)
-        # C++ shared libraries reported to be fairly broken before
-	# switch to ELF
-        _LT_TAGVAR(ld_shlibs, $1)=no
-        ;;
-
-      freebsd-elf*)
-        _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-        ;;
-
-      freebsd* | dragonfly*)
-        # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
-        # conventions
-        _LT_TAGVAR(ld_shlibs, $1)=yes
-        ;;
-
-      gnu*)
-        ;;
-
-      haiku*)
-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-        _LT_TAGVAR(link_all_deplibs, $1)=yes
-        ;;
-
-      hpux9*)
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
-        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-        _LT_TAGVAR(hardcode_direct, $1)=yes
-        _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
-				             # but as the default
-				             # location of the library.
-
-        case $cc_basename in
-          CC*)
-            # FIXME: insert proper C++ library support
-            _LT_TAGVAR(ld_shlibs, $1)=no
-            ;;
-          aCC*)
-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
-            # Commands to make compiler produce verbose output that lists
-            # what "hidden" libraries, object files and flags are used when
-            # linking a shared library.
-            #
-            # There doesn't appear to be a way to prevent this compiler from
-            # explicitly linking system object files so we need to strip them
-            # from the output so that they don't get included in the library
-            # dependencies.
-            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
-            ;;
-          *)
-            if test "$GXX" = yes; then
-              _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
-            else
-              # FIXME: insert proper C++ library support
-              _LT_TAGVAR(ld_shlibs, $1)=no
-            fi
-            ;;
-        esac
-        ;;
-
-      hpux10*|hpux11*)
-        if test $with_gnu_ld = no; then
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
-	  _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
-          case $host_cpu in
-            hppa*64*|ia64*)
-              ;;
-            *)
-	      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-              ;;
-          esac
-        fi
-        case $host_cpu in
-          hppa*64*|ia64*)
-            _LT_TAGVAR(hardcode_direct, $1)=no
-            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-            ;;
-          *)
-            _LT_TAGVAR(hardcode_direct, $1)=yes
-            _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-            _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
-					         # but as the default
-					         # location of the library.
-            ;;
-        esac
-
-        case $cc_basename in
-          CC*)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          aCC*)
-	    case $host_cpu in
-	      hppa*64*)
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	        ;;
-	      ia64*)
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	        ;;
-	      *)
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	        ;;
-	    esac
-	    # Commands to make compiler produce verbose output that lists
-	    # what "hidden" libraries, object files and flags are used when
-	    # linking a shared library.
-	    #
-	    # There doesn't appear to be a way to prevent this compiler from
-	    # explicitly linking system object files so we need to strip them
-	    # from the output so that they don't get included in the library
-	    # dependencies.
-	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
-	    ;;
-          *)
-	    if test "$GXX" = yes; then
-	      if test $with_gnu_ld = no; then
-	        case $host_cpu in
-	          hppa*64*)
-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	            ;;
-	          ia64*)
-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	            ;;
-	          *)
-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	            ;;
-	        esac
-	      fi
-	    else
-	      # FIXME: insert proper C++ library support
-	      _LT_TAGVAR(ld_shlibs, $1)=no
-	    fi
-	    ;;
-        esac
-        ;;
-
-      interix[[3-9]]*)
-	_LT_TAGVAR(hardcode_direct, $1)=no
-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
-	# Instead, shared libraries are loaded at an image base (0x10000000 by
-	# default) and relocated if they conflict, which is a slow very memory
-	# consuming and fragmenting process.  To avoid this, we pick a random,
-	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
-	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-	;;
-      irix5* | irix6*)
-        case $cc_basename in
-          CC*)
-	    # SGI C++
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-
-	    # Archives containing C++ object files must be created using
-	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
-	    # necessary to make sure instantiated templates are included
-	    # in the archive.
-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
-	    ;;
-          *)
-	    if test "$GXX" = yes; then
-	      if test "$with_gnu_ld" = no; then
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-	      else
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib'
-	      fi
-	    fi
-	    _LT_TAGVAR(link_all_deplibs, $1)=yes
-	    ;;
-        esac
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-        _LT_TAGVAR(inherit_rpath, $1)=yes
-        ;;
-
-      linux* | k*bsd*-gnu | kopensolaris*-gnu)
-        case $cc_basename in
-          KCC*)
-	    # Kuck and Associates, Inc. (KAI) C++ Compiler
-
-	    # KCC will only create a shared library if the output file
-	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
-	    # to its proper name (with version) after linking.
-	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
-	    # Commands to make compiler produce verbose output that lists
-	    # what "hidden" libraries, object files and flags are used when
-	    # linking a shared library.
-	    #
-	    # There doesn't appear to be a way to prevent this compiler from
-	    # explicitly linking system object files so we need to strip them
-	    # from the output so that they don't get included in the library
-	    # dependencies.
-	    output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
-
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-
-	    # Archives containing C++ object files must be created using
-	    # "CC -Bstatic", where "CC" is the KAI C++ compiler.
-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
-	    ;;
-	  icpc* | ecpc* )
-	    # Intel C++
-	    with_gnu_ld=yes
-	    # version 8.0 and above of icpc choke on multiply defined symbols
-	    # if we add $predep_objects and $postdep_objects, however 7.1 and
-	    # earlier do not add the objects themselves.
-	    case `$CC -V 2>&1` in
-	      *"Version 7."*)
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
-		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-		;;
-	      *)  # Version 8.0 or newer
-	        tmp_idyn=
-	        case $host_cpu in
-		  ia64*) tmp_idyn=' -i_dynamic';;
-		esac
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-		;;
-	    esac
-	    _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
-	    ;;
-          pgCC* | pgcpp*)
-            # Portland Group C++ compiler
-	    case `$CC -V` in
-	    *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
-	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
-		rm -rf $tpldir~
-		$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
-		compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
-	      _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
-		rm -rf $tpldir~
-		$CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
-		$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
-		$RANLIB $oldlib'
-	      _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
-		rm -rf $tpldir~
-		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
-		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
-	      _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
-		rm -rf $tpldir~
-		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
-		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
-	      ;;
-	    *) # Version 6 and above use weak symbols
-	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
-	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
-	      ;;
-	    esac
-
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-            ;;
-	  cxx*)
-	    # Compaq C++
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname  -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
-
-	    runpath_var=LD_RUN_PATH
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
-	    # Commands to make compiler produce verbose output that lists
-	    # what "hidden" libraries, object files and flags are used when
-	    # linking a shared library.
-	    #
-	    # There doesn't appear to be a way to prevent this compiler from
-	    # explicitly linking system object files so we need to strip them
-	    # from the output so that they don't get included in the library
-	    # dependencies.
-	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
-	    ;;
-	  xl* | mpixl* | bgxl*)
-	    # IBM XL 8.0 on PPC, with GNU ld
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	    if test "x$supports_anon_versioning" = xyes; then
-	      _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-		cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-		echo "local: *; };" >> $output_objdir/$libname.ver~
-		$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
-	    fi
-	    ;;
-	  *)
-	    case `$CC -V 2>&1 | sed 5q` in
-	    *Sun\ C*)
-	      # Sun C++ 5.9
-	      _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-	      _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-	      _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	      _LT_TAGVAR(compiler_needs_object, $1)=yes
-
-	      # Not sure whether something based on
-	      # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
-	      # would be better.
-	      output_verbose_link_cmd='func_echo_all'
-
-	      # Archives containing C++ object files must be created using
-	      # "CC -xar", where "CC" is the Sun C++ compiler.  This is
-	      # necessary to make sure instantiated templates are included
-	      # in the archive.
-	      _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
-	      ;;
-	    esac
-	    ;;
-	esac
-	;;
-
-      lynxos*)
-        # FIXME: insert proper C++ library support
-	_LT_TAGVAR(ld_shlibs, $1)=no
-	;;
-
-      m88k*)
-        # FIXME: insert proper C++ library support
-        _LT_TAGVAR(ld_shlibs, $1)=no
-	;;
-
-      mvs*)
-        case $cc_basename in
-          cxx*)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-	  *)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-	esac
-	;;
-
-      netbsd*)
-        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
-	  wlarc=
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-	  _LT_TAGVAR(hardcode_direct, $1)=yes
-	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	fi
-	# Workaround some broken pre-1.5 toolchains
-	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
-	;;
-
-      *nto* | *qnx*)
-        _LT_TAGVAR(ld_shlibs, $1)=yes
-	;;
-
-      openbsd2*)
-        # C++ shared libraries are fairly broken
-	_LT_TAGVAR(ld_shlibs, $1)=no
-	;;
-
-      openbsd*)
-	if test -f /usr/libexec/ld.so; then
-	  _LT_TAGVAR(hardcode_direct, $1)=yes
-	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-	  fi
-	  output_verbose_link_cmd=func_echo_all
-	else
-	  _LT_TAGVAR(ld_shlibs, $1)=no
-	fi
-	;;
-
-      osf3* | osf4* | osf5*)
-        case $cc_basename in
-          KCC*)
-	    # Kuck and Associates, Inc. (KAI) C++ Compiler
-
-	    # KCC will only create a shared library if the output file
-	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
-	    # to its proper name (with version) after linking.
-	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
-
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
-	    # Archives containing C++ object files must be created using
-	    # the KAI C++ compiler.
-	    case $host in
-	      osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
-	      *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
-	    esac
-	    ;;
-          RCC*)
-	    # Rational C++ 2.4.1
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          cxx*)
-	    case $host in
-	      osf3*)
-	        _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-		;;
-	      *)
-	        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	        _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
-	          echo "-hidden">> $lib.exp~
-	          $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp  `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~
-	          $RM $lib.exp'
-	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
-		;;
-	    esac
-
-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
-	    # Commands to make compiler produce verbose output that lists
-	    # what "hidden" libraries, object files and flags are used when
-	    # linking a shared library.
-	    #
-	    # There doesn't appear to be a way to prevent this compiler from
-	    # explicitly linking system object files so we need to strip them
-	    # from the output so that they don't get included in the library
-	    # dependencies.
-	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
-	    ;;
-	  *)
-	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
-	      _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-	      case $host in
-	        osf3*)
-	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-		  ;;
-	        *)
-	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-		  ;;
-	      esac
-
-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-	      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
-	      # Commands to make compiler produce verbose output that lists
-	      # what "hidden" libraries, object files and flags are used when
-	      # linking a shared library.
-	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
-
-	    else
-	      # FIXME: insert proper C++ library support
-	      _LT_TAGVAR(ld_shlibs, $1)=no
-	    fi
-	    ;;
-        esac
-        ;;
-
-      psos*)
-        # FIXME: insert proper C++ library support
-        _LT_TAGVAR(ld_shlibs, $1)=no
-        ;;
-
-      sunos4*)
-        case $cc_basename in
-          CC*)
-	    # Sun C++ 4.x
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          lcc*)
-	    # Lucid
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          *)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-        esac
-        ;;
-
-      solaris*)
-        case $cc_basename in
-          CC* | sunCC*)
-	    # Sun C++ 4.2, 5.x and Centerline C++
-            _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
-	    _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	      $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-	    _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	    case $host_os in
-	      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
-	      *)
-		# The compiler driver will combine and reorder linker options,
-		# but understands `-z linker_flag'.
-	        # Supported since Solaris 2.6 (maybe 2.5.1?)
-		_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
-	        ;;
-	    esac
-	    _LT_TAGVAR(link_all_deplibs, $1)=yes
-
-	    output_verbose_link_cmd='func_echo_all'
-
-	    # Archives containing C++ object files must be created using
-	    # "CC -xar", where "CC" is the Sun C++ compiler.  This is
-	    # necessary to make sure instantiated templates are included
-	    # in the archive.
-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
-	    ;;
-          gcx*)
-	    # Green Hills C++ Compiler
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
-
-	    # The C++ compiler must be used to create the archive.
-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
-	    ;;
-          *)
-	    # GNU C++ compiler with Solaris linker
-	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
-	      _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
-	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
-	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-		  $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
-	        # Commands to make compiler produce verbose output that lists
-	        # what "hidden" libraries, object files and flags are used when
-	        # linking a shared library.
-	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
-	      else
-	        # g++ 2.7 appears to require `-G' NOT `-shared' on this
-	        # platform.
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
-	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-		  $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
-	        # Commands to make compiler produce verbose output that lists
-	        # what "hidden" libraries, object files and flags are used when
-	        # linking a shared library.
-	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
-	      fi
-
-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
-	      case $host_os in
-		solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
-		*)
-		  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
-		  ;;
-	      esac
-	    fi
-	    ;;
-        esac
-        ;;
-
-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      runpath_var='LD_RUN_PATH'
-
-      case $cc_basename in
-        CC*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-      esac
-      ;;
-
-      sysv5* | sco3.2v5* | sco5v6*)
-	# Note: We can NOT use -z defs as we might desire, because we do not
-	# link with -lc, and that would cause any symbols used from libc to
-	# always be unresolved, which means just about no library would
-	# ever link correctly.  If we're not using GNU ld we use -z text
-	# though, which does catch some bad symbols but isn't as heavy-handed
-	# as -z defs.
-	_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
-	_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
-	_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
-	_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
-	_LT_TAGVAR(link_all_deplibs, $1)=yes
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
-	runpath_var='LD_RUN_PATH'
-
-	case $cc_basename in
-          CC*)
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
-	      '"$_LT_TAGVAR(old_archive_cmds, $1)"
-	    _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
-	      '"$_LT_TAGVAR(reload_cmds, $1)"
-	    ;;
-	  *)
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	    ;;
-	esac
-      ;;
-
-      tandem*)
-        case $cc_basename in
-          NCC*)
-	    # NonStop-UX NCC 3.20
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          *)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-        esac
-        ;;
-
-      vxworks*)
-        # FIXME: insert proper C++ library support
-        _LT_TAGVAR(ld_shlibs, $1)=no
-        ;;
-
-      *)
-        # FIXME: insert proper C++ library support
-        _LT_TAGVAR(ld_shlibs, $1)=no
-        ;;
-    esac
-
-    AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
-    test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
-
-    _LT_TAGVAR(GCC, $1)="$GXX"
-    _LT_TAGVAR(LD, $1)="$LD"
-
-    ## CAVEAT EMPTOR:
-    ## There is no encapsulation within the following macros, do not change
-    ## the running order or otherwise move them around unless you know exactly
-    ## what you are doing...
-    _LT_SYS_HIDDEN_LIBDEPS($1)
-    _LT_COMPILER_PIC($1)
-    _LT_COMPILER_C_O($1)
-    _LT_COMPILER_FILE_LOCKS($1)
-    _LT_LINKER_SHLIBS($1)
-    _LT_SYS_DYNAMIC_LINKER($1)
-    _LT_LINKER_HARDCODE_LIBPATH($1)
-
-    _LT_CONFIG($1)
-  fi # test -n "$compiler"
-
-  CC=$lt_save_CC
-  CFLAGS=$lt_save_CFLAGS
-  LDCXX=$LD
-  LD=$lt_save_LD
-  GCC=$lt_save_GCC
-  with_gnu_ld=$lt_save_with_gnu_ld
-  lt_cv_path_LDCXX=$lt_cv_path_LD
-  lt_cv_path_LD=$lt_save_path_LD
-  lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
-  lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
-fi # test "$_lt_caught_CXX_error" != yes
-
-AC_LANG_POP
-])# _LT_LANG_CXX_CONFIG
-
-
-# _LT_FUNC_STRIPNAME_CNF
-# ----------------------
-# func_stripname_cnf prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# 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).
-#
-# This function is identical to the (non-XSI) version of func_stripname,
-# except this one can be used by m4 code that may be executed by configure,
-# rather than the libtool script.
-m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
-AC_REQUIRE([_LT_DECL_SED])
-AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
-func_stripname_cnf ()
-{
-  case ${2} in
-  .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
-  *)  func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
-  esac
-} # func_stripname_cnf
-])# _LT_FUNC_STRIPNAME_CNF
-
-# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
-# ---------------------------------
-# Figure out "hidden" library dependencies from verbose
-# compiler output when linking a shared library.
-# Parse the compiler output and extract the necessary
-# objects, libraries and library flags.
-m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
-# Dependencies to place before and after the object being linked:
-_LT_TAGVAR(predep_objects, $1)=
-_LT_TAGVAR(postdep_objects, $1)=
-_LT_TAGVAR(predeps, $1)=
-_LT_TAGVAR(postdeps, $1)=
-_LT_TAGVAR(compiler_lib_search_path, $1)=
-
-dnl we can't use the lt_simple_compile_test_code here,
-dnl because it contains code intended for an executable,
-dnl not a library.  It's possible we should let each
-dnl tag define a new lt_????_link_test_code variable,
-dnl but it's only used here...
-m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
-int a;
-void foo (void) { a = 0; }
-_LT_EOF
-], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
-class Foo
-{
-public:
-  Foo (void) { a = 0; }
-private:
-  int a;
-};
-_LT_EOF
-], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
-      subroutine foo
-      implicit none
-      integer*4 a
-      a=0
-      return
-      end
-_LT_EOF
-], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
-      subroutine foo
-      implicit none
-      integer a
-      a=0
-      return
-      end
-_LT_EOF
-], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
-public class foo {
-  private int a;
-  public void bar (void) {
-    a = 0;
-  }
-};
-_LT_EOF
-])
-
-_lt_libdeps_save_CFLAGS=$CFLAGS
-case "$CC $CFLAGS " in #(
-*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
-*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
-esac
-
-dnl Parse the compiler output and extract the necessary
-dnl objects, libraries and library flags.
-if AC_TRY_EVAL(ac_compile); then
-  # Parse the compiler output and extract the necessary
-  # objects, libraries and library flags.
-
-  # Sentinel used to keep track of whether or not we are before
-  # the conftest object file.
-  pre_test_object_deps_done=no
-
-  for p in `eval "$output_verbose_link_cmd"`; do
-    case ${prev}${p} in
-
-    -L* | -R* | -l*)
-       # Some compilers place space between "-{L,R}" and the path.
-       # Remove the space.
-       if test $p = "-L" ||
-          test $p = "-R"; then
-	 prev=$p
-	 continue
-       fi
-
-       # Expand the sysroot to ease extracting the directories later.
-       if test -z "$prev"; then
-         case $p in
-         -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
-         -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
-         -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
-         esac
-       fi
-       case $p in
-       =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
-       esac
-       if test "$pre_test_object_deps_done" = no; then
-	 case ${prev} in
-	 -L | -R)
-	   # Internal compiler library paths should come after those
-	   # provided the user.  The postdeps already come after the
-	   # user supplied libs so there is no need to process them.
-	   if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
-	     _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
-	   else
-	     _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
-	   fi
-	   ;;
-	 # The "-l" case would never come before the object being
-	 # linked, so don't bother handling this case.
-	 esac
-       else
-	 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
-	   _LT_TAGVAR(postdeps, $1)="${prev}${p}"
-	 else
-	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
-	 fi
-       fi
-       prev=
-       ;;
-
-    *.lto.$objext) ;; # Ignore GCC LTO objects
-    *.$objext)
-       # This assumes that the test object file only shows up
-       # once in the compiler output.
-       if test "$p" = "conftest.$objext"; then
-	 pre_test_object_deps_done=yes
-	 continue
-       fi
-
-       if test "$pre_test_object_deps_done" = no; then
-	 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
-	   _LT_TAGVAR(predep_objects, $1)="$p"
-	 else
-	   _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
-	 fi
-       else
-	 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
-	   _LT_TAGVAR(postdep_objects, $1)="$p"
-	 else
-	   _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
-	 fi
-       fi
-       ;;
-
-    *) ;; # Ignore the rest.
-
-    esac
-  done
-
-  # Clean up.
-  rm -f a.out a.exe
-else
-  echo "libtool.m4: error: problem compiling $1 test program"
-fi
-
-$RM -f confest.$objext
-CFLAGS=$_lt_libdeps_save_CFLAGS
-
-# PORTME: override above test on systems where it is broken
-m4_if([$1], [CXX],
-[case $host_os in
-interix[[3-9]]*)
-  # Interix 3.5 installs completely hosed .la files for C++, so rather than
-  # hack all around it, let's just trust "g++" to DTRT.
-  _LT_TAGVAR(predep_objects,$1)=
-  _LT_TAGVAR(postdep_objects,$1)=
-  _LT_TAGVAR(postdeps,$1)=
-  ;;
-
-linux*)
-  case `$CC -V 2>&1 | sed 5q` in
-  *Sun\ C*)
-    # Sun C++ 5.9
-
-    # The more standards-conforming stlport4 library is
-    # incompatible with the Cstd library. Avoid specifying
-    # it if it's in CXXFLAGS. Ignore libCrun as
-    # -library=stlport4 depends on it.
-    case " $CXX $CXXFLAGS " in
-    *" -library=stlport4 "*)
-      solaris_use_stlport4=yes
-      ;;
-    esac
-
-    if test "$solaris_use_stlport4" != yes; then
-      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
-    fi
-    ;;
-  esac
-  ;;
-
-solaris*)
-  case $cc_basename in
-  CC* | sunCC*)
-    # The more standards-conforming stlport4 library is
-    # incompatible with the Cstd library. Avoid specifying
-    # it if it's in CXXFLAGS. Ignore libCrun as
-    # -library=stlport4 depends on it.
-    case " $CXX $CXXFLAGS " in
-    *" -library=stlport4 "*)
-      solaris_use_stlport4=yes
-      ;;
-    esac
-
-    # Adding this requires a known-good setup of shared libraries for
-    # Sun compiler versions before 5.6, else PIC objects from an old
-    # archive will be linked into the output, leading to subtle bugs.
-    if test "$solaris_use_stlport4" != yes; then
-      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
-    fi
-    ;;
-  esac
-  ;;
-esac
-])
-
-case " $_LT_TAGVAR(postdeps, $1) " in
-*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
-esac
- _LT_TAGVAR(compiler_lib_search_dirs, $1)=
-if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
- _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
-fi
-_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
-    [The directories searched by this compiler when creating a shared library])
-_LT_TAGDECL([], [predep_objects], [1],
-    [Dependencies to place before and after the objects being linked to
-    create a shared library])
-_LT_TAGDECL([], [postdep_objects], [1])
-_LT_TAGDECL([], [predeps], [1])
-_LT_TAGDECL([], [postdeps], [1])
-_LT_TAGDECL([], [compiler_lib_search_path], [1],
-    [The library search path used internally by the compiler when linking
-    a shared library])
-])# _LT_SYS_HIDDEN_LIBDEPS
-
-
-# _LT_LANG_F77_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for a Fortran 77 compiler are
-# suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_F77_CONFIG],
-[AC_LANG_PUSH(Fortran 77)
-if test -z "$F77" || test "X$F77" = "Xno"; then
-  _lt_disable_F77=yes
-fi
-
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for f77 test sources.
-ac_ext=f
-
-# Object file extension for compiled f77 test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the F77 compiler isn't working.  Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_disable_F77" != yes; then
-  # Code to be used in simple compile tests
-  lt_simple_compile_test_code="\
-      subroutine t
-      return
-      end
-"
-
-  # Code to be used in simple link tests
-  lt_simple_link_test_code="\
-      program t
-      end
-"
-
-  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
-  _LT_TAG_COMPILER
-
-  # save warnings/boilerplate of simple test code
-  _LT_COMPILER_BOILERPLATE
-  _LT_LINKER_BOILERPLATE
-
-  # Allow CC to be a program name with arguments.
-  lt_save_CC="$CC"
-  lt_save_GCC=$GCC
-  lt_save_CFLAGS=$CFLAGS
-  CC=${F77-"f77"}
-  CFLAGS=$FFLAGS
-  compiler=$CC
-  _LT_TAGVAR(compiler, $1)=$CC
-  _LT_CC_BASENAME([$compiler])
-  GCC=$G77
-  if test -n "$compiler"; then
-    AC_MSG_CHECKING([if libtool supports shared libraries])
-    AC_MSG_RESULT([$can_build_shared])
-
-    AC_MSG_CHECKING([whether to build shared libraries])
-    test "$can_build_shared" = "no" && enable_shared=no
-
-    # On AIX, shared libraries and static libraries use the same namespace, and
-    # are all built from PIC.
-    case $host_os in
-      aix3*)
-        test "$enable_shared" = yes && enable_static=no
-        if test -n "$RANLIB"; then
-          archive_cmds="$archive_cmds~\$RANLIB \$lib"
-          postinstall_cmds='$RANLIB $lib'
-        fi
-        ;;
-      aix[[4-9]]*)
-	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-	  test "$enable_shared" = yes && enable_static=no
-	fi
-        ;;
-    esac
-    AC_MSG_RESULT([$enable_shared])
-
-    AC_MSG_CHECKING([whether to build static libraries])
-    # Make sure either enable_shared or enable_static is yes.
-    test "$enable_shared" = yes || enable_static=yes
-    AC_MSG_RESULT([$enable_static])
-
-    _LT_TAGVAR(GCC, $1)="$G77"
-    _LT_TAGVAR(LD, $1)="$LD"
-
-    ## CAVEAT EMPTOR:
-    ## There is no encapsulation within the following macros, do not change
-    ## the running order or otherwise move them around unless you know exactly
-    ## what you are doing...
-    _LT_COMPILER_PIC($1)
-    _LT_COMPILER_C_O($1)
-    _LT_COMPILER_FILE_LOCKS($1)
-    _LT_LINKER_SHLIBS($1)
-    _LT_SYS_DYNAMIC_LINKER($1)
-    _LT_LINKER_HARDCODE_LIBPATH($1)
-
-    _LT_CONFIG($1)
-  fi # test -n "$compiler"
-
-  GCC=$lt_save_GCC
-  CC="$lt_save_CC"
-  CFLAGS="$lt_save_CFLAGS"
-fi # test "$_lt_disable_F77" != yes
-
-AC_LANG_POP
-])# _LT_LANG_F77_CONFIG
-
-
-# _LT_LANG_FC_CONFIG([TAG])
-# -------------------------
-# Ensure that the configuration variables for a Fortran compiler are
-# suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_FC_CONFIG],
-[AC_LANG_PUSH(Fortran)
-
-if test -z "$FC" || test "X$FC" = "Xno"; then
-  _lt_disable_FC=yes
-fi
-
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for fc test sources.
-ac_ext=${ac_fc_srcext-f}
-
-# Object file extension for compiled fc test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the FC compiler isn't working.  Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_disable_FC" != yes; then
-  # Code to be used in simple compile tests
-  lt_simple_compile_test_code="\
-      subroutine t
-      return
-      end
-"
-
-  # Code to be used in simple link tests
-  lt_simple_link_test_code="\
-      program t
-      end
-"
-
-  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
-  _LT_TAG_COMPILER
-
-  # save warnings/boilerplate of simple test code
-  _LT_COMPILER_BOILERPLATE
-  _LT_LINKER_BOILERPLATE
-
-  # Allow CC to be a program name with arguments.
-  lt_save_CC="$CC"
-  lt_save_GCC=$GCC
-  lt_save_CFLAGS=$CFLAGS
-  CC=${FC-"f95"}
-  CFLAGS=$FCFLAGS
-  compiler=$CC
-  GCC=$ac_cv_fc_compiler_gnu
-
-  _LT_TAGVAR(compiler, $1)=$CC
-  _LT_CC_BASENAME([$compiler])
-
-  if test -n "$compiler"; then
-    AC_MSG_CHECKING([if libtool supports shared libraries])
-    AC_MSG_RESULT([$can_build_shared])
-
-    AC_MSG_CHECKING([whether to build shared libraries])
-    test "$can_build_shared" = "no" && enable_shared=no
-
-    # On AIX, shared libraries and static libraries use the same namespace, and
-    # are all built from PIC.
-    case $host_os in
-      aix3*)
-        test "$enable_shared" = yes && enable_static=no
-        if test -n "$RANLIB"; then
-          archive_cmds="$archive_cmds~\$RANLIB \$lib"
-          postinstall_cmds='$RANLIB $lib'
-        fi
-        ;;
-      aix[[4-9]]*)
-	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-	  test "$enable_shared" = yes && enable_static=no
-	fi
-        ;;
-    esac
-    AC_MSG_RESULT([$enable_shared])
-
-    AC_MSG_CHECKING([whether to build static libraries])
-    # Make sure either enable_shared or enable_static is yes.
-    test "$enable_shared" = yes || enable_static=yes
-    AC_MSG_RESULT([$enable_static])
-
-    _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
-    _LT_TAGVAR(LD, $1)="$LD"
-
-    ## CAVEAT EMPTOR:
-    ## There is no encapsulation within the following macros, do not change
-    ## the running order or otherwise move them around unless you know exactly
-    ## what you are doing...
-    _LT_SYS_HIDDEN_LIBDEPS($1)
-    _LT_COMPILER_PIC($1)
-    _LT_COMPILER_C_O($1)
-    _LT_COMPILER_FILE_LOCKS($1)
-    _LT_LINKER_SHLIBS($1)
-    _LT_SYS_DYNAMIC_LINKER($1)
-    _LT_LINKER_HARDCODE_LIBPATH($1)
-
-    _LT_CONFIG($1)
-  fi # test -n "$compiler"
-
-  GCC=$lt_save_GCC
-  CC=$lt_save_CC
-  CFLAGS=$lt_save_CFLAGS
-fi # test "$_lt_disable_FC" != yes
-
-AC_LANG_POP
-])# _LT_LANG_FC_CONFIG
-
-
-# _LT_LANG_GCJ_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for the GNU Java Compiler compiler
-# are suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_GCJ_CONFIG],
-[AC_REQUIRE([LT_PROG_GCJ])dnl
-AC_LANG_SAVE
-
-# Source file extension for Java test sources.
-ac_ext=java
-
-# Object file extension for compiled Java test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="class foo {}"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
-
-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
-_LT_TAG_COMPILER
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-# Allow CC to be a program name with arguments.
-lt_save_CC=$CC
-lt_save_CFLAGS=$CFLAGS
-lt_save_GCC=$GCC
-GCC=yes
-CC=${GCJ-"gcj"}
-CFLAGS=$GCJFLAGS
-compiler=$CC
-_LT_TAGVAR(compiler, $1)=$CC
-_LT_TAGVAR(LD, $1)="$LD"
-_LT_CC_BASENAME([$compiler])
-
-# GCJ did not exist at the time GCC didn't implicitly link libc in.
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-
-## CAVEAT EMPTOR:
-## There is no encapsulation within the following macros, do not change
-## the running order or otherwise move them around unless you know exactly
-## what you are doing...
-if test -n "$compiler"; then
-  _LT_COMPILER_NO_RTTI($1)
-  _LT_COMPILER_PIC($1)
-  _LT_COMPILER_C_O($1)
-  _LT_COMPILER_FILE_LOCKS($1)
-  _LT_LINKER_SHLIBS($1)
-  _LT_LINKER_HARDCODE_LIBPATH($1)
-
-  _LT_CONFIG($1)
-fi
-
-AC_LANG_RESTORE
-
-GCC=$lt_save_GCC
-CC=$lt_save_CC
-CFLAGS=$lt_save_CFLAGS
-])# _LT_LANG_GCJ_CONFIG
-
-
-# _LT_LANG_RC_CONFIG([TAG])
-# -------------------------
-# Ensure that the configuration variables for the Windows resource compiler
-# are suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_RC_CONFIG],
-[AC_REQUIRE([LT_PROG_RC])dnl
-AC_LANG_SAVE
-
-# Source file extension for RC test sources.
-ac_ext=rc
-
-# Object file extension for compiled RC test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
-
-# Code to be used in simple link tests
-lt_simple_link_test_code="$lt_simple_compile_test_code"
-
-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
-_LT_TAG_COMPILER
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-# Allow CC to be a program name with arguments.
-lt_save_CC="$CC"
-lt_save_CFLAGS=$CFLAGS
-lt_save_GCC=$GCC
-GCC=
-CC=${RC-"windres"}
-CFLAGS=
-compiler=$CC
-_LT_TAGVAR(compiler, $1)=$CC
-_LT_CC_BASENAME([$compiler])
-_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
-
-if test -n "$compiler"; then
-  :
-  _LT_CONFIG($1)
-fi
-
-GCC=$lt_save_GCC
-AC_LANG_RESTORE
-CC=$lt_save_CC
-CFLAGS=$lt_save_CFLAGS
-])# _LT_LANG_RC_CONFIG
-
-
-# LT_PROG_GCJ
-# -----------
-AC_DEFUN([LT_PROG_GCJ],
-[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
-  [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
-    [AC_CHECK_TOOL(GCJ, gcj,)
-      test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
-      AC_SUBST(GCJFLAGS)])])[]dnl
-])
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
-
-
-# LT_PROG_RC
-# ----------
-AC_DEFUN([LT_PROG_RC],
-[AC_CHECK_TOOL(RC, windres,)
-])
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_RC], [])
-
-
-# _LT_DECL_EGREP
-# --------------
-# If we don't have a new enough Autoconf to choose the best grep
-# available, choose the one first in the user's PATH.
-m4_defun([_LT_DECL_EGREP],
-[AC_REQUIRE([AC_PROG_EGREP])dnl
-AC_REQUIRE([AC_PROG_FGREP])dnl
-test -z "$GREP" && GREP=grep
-_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
-_LT_DECL([], [EGREP], [1], [An ERE matcher])
-_LT_DECL([], [FGREP], [1], [A literal string matcher])
-dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
-AC_SUBST([GREP])
-])
-
-
-# _LT_DECL_OBJDUMP
-# --------------
-# If we don't have a new enough Autoconf to choose the best objdump
-# available, choose the one first in the user's PATH.
-m4_defun([_LT_DECL_OBJDUMP],
-[AC_CHECK_TOOL(OBJDUMP, objdump, false)
-test -z "$OBJDUMP" && OBJDUMP=objdump
-_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
-AC_SUBST([OBJDUMP])
-])
-
-# _LT_DECL_DLLTOOL
-# ----------------
-# Ensure DLLTOOL variable is set.
-m4_defun([_LT_DECL_DLLTOOL],
-[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
-AC_SUBST([DLLTOOL])
-])
-
-# _LT_DECL_SED
-# ------------
-# Check for a fully-functional sed program, that truncates
-# as few characters as possible.  Prefer GNU sed if found.
-m4_defun([_LT_DECL_SED],
-[AC_PROG_SED
-test -z "$SED" && SED=sed
-Xsed="$SED -e 1s/^X//"
-_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
-_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
-    [Sed that helps us avoid accidentally triggering echo(1) options like -n])
-])# _LT_DECL_SED
-
-m4_ifndef([AC_PROG_SED], [
-############################################################
-# NOTE: This macro has been submitted for inclusion into   #
-#  GNU Autoconf as AC_PROG_SED.  When it is available in   #
-#  a released version of Autoconf we should remove this    #
-#  macro and use it instead.                               #
-############################################################
-
-m4_defun([AC_PROG_SED],
-[AC_MSG_CHECKING([for a sed that does not truncate output])
-AC_CACHE_VAL(lt_cv_path_SED,
-[# Loop through the user's path and test for sed and gsed.
-# Then use that list of sed's as ones to test for truncation.
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for lt_ac_prog in sed gsed; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
-        lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
-      fi
-    done
-  done
-done
-IFS=$as_save_IFS
-lt_ac_max=0
-lt_ac_count=0
-# Add /usr/xpg4/bin/sed as it is typically found on Solaris
-# along with /bin/sed that truncates output.
-for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
-  test ! -f $lt_ac_sed && continue
-  cat /dev/null > conftest.in
-  lt_ac_count=0
-  echo $ECHO_N "0123456789$ECHO_C" >conftest.in
-  # Check for GNU sed and select it if it is found.
-  if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
-    lt_cv_path_SED=$lt_ac_sed
-    break
-  fi
-  while true; do
-    cat conftest.in conftest.in >conftest.tmp
-    mv conftest.tmp conftest.in
-    cp conftest.in conftest.nl
-    echo >>conftest.nl
-    $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
-    cmp -s conftest.out conftest.nl || break
-    # 10000 chars as input seems more than enough
-    test $lt_ac_count -gt 10 && break
-    lt_ac_count=`expr $lt_ac_count + 1`
-    if test $lt_ac_count -gt $lt_ac_max; then
-      lt_ac_max=$lt_ac_count
-      lt_cv_path_SED=$lt_ac_sed
-    fi
-  done
-done
-])
-SED=$lt_cv_path_SED
-AC_SUBST([SED])
-AC_MSG_RESULT([$SED])
-])#AC_PROG_SED
-])#m4_ifndef
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_SED], [])
-
-
-# _LT_CHECK_SHELL_FEATURES
-# ------------------------
-# Find out whether the shell is Bourne or XSI compatible,
-# or has some other useful features.
-m4_defun([_LT_CHECK_SHELL_FEATURES],
-[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
-  test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,b/c, \
-    && eval 'test $(( 1 + 1 )) -eq 2 \
-    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
-  && xsi_shell=yes
-AC_MSG_RESULT([$xsi_shell])
-_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
-
-AC_MSG_CHECKING([whether the shell understands "+="])
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
-    >/dev/null 2>&1 \
-  && lt_shell_append=yes
-AC_MSG_RESULT([$lt_shell_append])
-_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
-
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  lt_unset=unset
-else
-  lt_unset=false
-fi
-_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
-
-# test EBCDIC or ASCII
-case `echo X|tr X '\101'` in
- A) # ASCII based system
-    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
-  lt_SP2NL='tr \040 \012'
-  lt_NL2SP='tr \015\012 \040\040'
-  ;;
- *) # EBCDIC based system
-  lt_SP2NL='tr \100 \n'
-  lt_NL2SP='tr \r\n \100\100'
-  ;;
-esac
-_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
-_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
-])# _LT_CHECK_SHELL_FEATURES
-
-
-# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
-# ------------------------------------------------------
-# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
-# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
-m4_defun([_LT_PROG_FUNCTION_REPLACE],
-[dnl {
-sed -e '/^$1 ()$/,/^} # $1 /c\
-$1 ()\
-{\
-m4_bpatsubsts([$2], [$], [\\], [^\([	 ]\)], [\\\1])
-} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-])
-
-
-# _LT_PROG_REPLACE_SHELLFNS
-# -------------------------
-# Replace existing portable implementations of several shell functions with
-# equivalent extended shell implementations where those features are available..
-m4_defun([_LT_PROG_REPLACE_SHELLFNS],
-[if test x"$xsi_shell" = xyes; then
-  _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
-    case ${1} in
-      */*) func_dirname_result="${1%/*}${2}" ;;
-      *  ) func_dirname_result="${3}" ;;
-    esac])
-
-  _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
-    func_basename_result="${1##*/}"])
-
-  _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
-    case ${1} in
-      */*) func_dirname_result="${1%/*}${2}" ;;
-      *  ) func_dirname_result="${3}" ;;
-    esac
-    func_basename_result="${1##*/}"])
-
-  _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
-    # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
-    # positional parameters, so assign one to ordinary parameter first.
-    func_stripname_result=${3}
-    func_stripname_result=${func_stripname_result#"${1}"}
-    func_stripname_result=${func_stripname_result%"${2}"}])
-
-  _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
-    func_split_long_opt_name=${1%%=*}
-    func_split_long_opt_arg=${1#*=}])
-
-  _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
-    func_split_short_opt_arg=${1#??}
-    func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
-
-  _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
-    case ${1} in
-      *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
-      *)    func_lo2o_result=${1} ;;
-    esac])
-
-  _LT_PROG_FUNCTION_REPLACE([func_xform], [    func_xform_result=${1%.*}.lo])
-
-  _LT_PROG_FUNCTION_REPLACE([func_arith], [    func_arith_result=$(( $[*] ))])
-
-  _LT_PROG_FUNCTION_REPLACE([func_len], [    func_len_result=${#1}])
-fi
-
-if test x"$lt_shell_append" = xyes; then
-  _LT_PROG_FUNCTION_REPLACE([func_append], [    eval "${1}+=\\${2}"])
-
-  _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
-    func_quote_for_eval "${2}"
-dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
-    eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
-
-  # Save a `func_append' function call where possible by direct use of '+='
-  sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-else
-  # Save a `func_append' function call even when '+=' is not available
-  sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-fi
-
-if test x"$_lt_function_replace_fail" = x":"; then
-  AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
-fi
-])
-
-# _LT_PATH_CONVERSION_FUNCTIONS
-# -----------------------------
-# Determine which file name conversion functions should be used by
-# func_to_host_file (and, implicitly, by func_to_host_path).  These are needed
-# for certain cross-compile configurations and native mingw.
-m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-AC_MSG_CHECKING([how to convert $build file names to $host format])
-AC_CACHE_VAL(lt_cv_to_host_file_cmd,
-[case $host in
-  *-*-mingw* )
-    case $build in
-      *-*-mingw* ) # actually msys
-        lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
-        ;;
-      *-*-cygwin* )
-        lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
-        ;;
-      * ) # otherwise, assume *nix
-        lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
-        ;;
-    esac
-    ;;
-  *-*-cygwin* )
-    case $build in
-      *-*-mingw* ) # actually msys
-        lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
-        ;;
-      *-*-cygwin* )
-        lt_cv_to_host_file_cmd=func_convert_file_noop
-        ;;
-      * ) # otherwise, assume *nix
-        lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
-        ;;
-    esac
-    ;;
-  * ) # unhandled hosts (and "normal" native builds)
-    lt_cv_to_host_file_cmd=func_convert_file_noop
-    ;;
-esac
-])
-to_host_file_cmd=$lt_cv_to_host_file_cmd
-AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
-_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
-         [0], [convert $build file names to $host format])dnl
-
-AC_MSG_CHECKING([how to convert $build file names to toolchain format])
-AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
-[#assume ordinary cross tools, or native build.
-lt_cv_to_tool_file_cmd=func_convert_file_noop
-case $host in
-  *-*-mingw* )
-    case $build in
-      *-*-mingw* ) # actually msys
-        lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
-        ;;
-    esac
-    ;;
-esac
-])
-to_tool_file_cmd=$lt_cv_to_tool_file_cmd
-AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
-_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
-         [0], [convert $build files to toolchain format])dnl
-])# _LT_PATH_CONVERSION_FUNCTIONS
diff --git a/src/other/ares/m4/ltoptions.m4 b/src/other/ares/m4/ltoptions.m4
deleted file mode 100644
index 17cfd51..0000000
--- a/src/other/ares/m4/ltoptions.m4
+++ /dev/null
@@ -1,369 +0,0 @@
-# Helper functions for option handling.                    -*- Autoconf -*-
-#
-#   Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
-#   Inc.
-#   Written by Gary V. Vaughan, 2004
-#
-# This file 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.
-
-# serial 7 ltoptions.m4
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
-
-
-# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
-# ------------------------------------------
-m4_define([_LT_MANGLE_OPTION],
-[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
-
-
-# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
-# ---------------------------------------
-# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
-# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
-# saved as a flag.
-m4_define([_LT_SET_OPTION],
-[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
-m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
-        _LT_MANGLE_DEFUN([$1], [$2]),
-    [m4_warning([Unknown $1 option `$2'])])[]dnl
-])
-
-
-# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
-# ------------------------------------------------------------
-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
-m4_define([_LT_IF_OPTION],
-[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
-
-
-# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
-# -------------------------------------------------------
-# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
-# are set.
-m4_define([_LT_UNLESS_OPTIONS],
-[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
-	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
-		      [m4_define([$0_found])])])[]dnl
-m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
-])[]dnl
-])
-
-
-# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
-# ----------------------------------------
-# OPTION-LIST is a space-separated list of Libtool options associated
-# with MACRO-NAME.  If any OPTION has a matching handler declared with
-# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
-# the unknown option and exit.
-m4_defun([_LT_SET_OPTIONS],
-[# Set options
-m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
-    [_LT_SET_OPTION([$1], _LT_Option)])
-
-m4_if([$1],[LT_INIT],[
-  dnl
-  dnl Simply set some default values (i.e off) if boolean options were not
-  dnl specified:
-  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
-  ])
-  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
-  ])
-  dnl
-  dnl If no reference was made to various pairs of opposing options, then
-  dnl we run the default mode handler for the pair.  For example, if neither
-  dnl `shared' nor `disable-shared' was passed, we enable building of shared
-  dnl archives by default:
-  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
-  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
-  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
-  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
-  		   [_LT_ENABLE_FAST_INSTALL])
-  ])
-])# _LT_SET_OPTIONS
-
-
-## --------------------------------- ##
-## Macros to handle LT_INIT options. ##
-## --------------------------------- ##
-
-# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
-# -----------------------------------------
-m4_define([_LT_MANGLE_DEFUN],
-[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
-
-
-# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
-# -----------------------------------------------
-m4_define([LT_OPTION_DEFINE],
-[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
-])# LT_OPTION_DEFINE
-
-
-# dlopen
-# ------
-LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
-])
-
-AU_DEFUN([AC_LIBTOOL_DLOPEN],
-[_LT_SET_OPTION([LT_INIT], [dlopen])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `dlopen' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
-
-
-# win32-dll
-# ---------
-# Declare package support for building win32 dll's.
-LT_OPTION_DEFINE([LT_INIT], [win32-dll],
-[enable_win32_dll=yes
-
-case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
-  AC_CHECK_TOOL(AS, as, false)
-  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
-  AC_CHECK_TOOL(OBJDUMP, objdump, false)
-  ;;
-esac
-
-test -z "$AS" && AS=as
-_LT_DECL([], [AS],      [1], [Assembler program])dnl
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
-])# win32-dll
-
-AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-_LT_SET_OPTION([LT_INIT], [win32-dll])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `win32-dll' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
-
-
-# _LT_ENABLE_SHARED([DEFAULT])
-# ----------------------------
-# implement the --enable-shared flag, and supports the `shared' and
-# `disable-shared' LT_INIT options.
-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
-m4_define([_LT_ENABLE_SHARED],
-[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([shared],
-    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
-	[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
-    [p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_shared=yes ;;
-    no) enable_shared=no ;;
-    *)
-      enable_shared=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_shared=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac],
-    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
-
-    _LT_DECL([build_libtool_libs], [enable_shared], [0],
-	[Whether or not to build shared libraries])
-])# _LT_ENABLE_SHARED
-
-LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
-
-# Old names:
-AC_DEFUN([AC_ENABLE_SHARED],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
-])
-
-AC_DEFUN([AC_DISABLE_SHARED],
-[_LT_SET_OPTION([LT_INIT], [disable-shared])
-])
-
-AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
-AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_ENABLE_SHARED], [])
-dnl AC_DEFUN([AM_DISABLE_SHARED], [])
-
-
-
-# _LT_ENABLE_STATIC([DEFAULT])
-# ----------------------------
-# implement the --enable-static flag, and support the `static' and
-# `disable-static' LT_INIT options.
-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
-m4_define([_LT_ENABLE_STATIC],
-[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([static],
-    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
-	[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
-    [p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_static=yes ;;
-    no) enable_static=no ;;
-    *)
-     enable_static=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_static=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac],
-    [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
-
-    _LT_DECL([build_old_libs], [enable_static], [0],
-	[Whether or not to build static libraries])
-])# _LT_ENABLE_STATIC
-
-LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
-
-# Old names:
-AC_DEFUN([AC_ENABLE_STATIC],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
-])
-
-AC_DEFUN([AC_DISABLE_STATIC],
-[_LT_SET_OPTION([LT_INIT], [disable-static])
-])
-
-AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
-AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_ENABLE_STATIC], [])
-dnl AC_DEFUN([AM_DISABLE_STATIC], [])
-
-
-
-# _LT_ENABLE_FAST_INSTALL([DEFAULT])
-# ----------------------------------
-# implement the --enable-fast-install flag, and support the `fast-install'
-# and `disable-fast-install' LT_INIT options.
-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
-m4_define([_LT_ENABLE_FAST_INSTALL],
-[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([fast-install],
-    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
-    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
-    [p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_fast_install=yes ;;
-    no) enable_fast_install=no ;;
-    *)
-      enable_fast_install=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_fast_install=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac],
-    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
-
-_LT_DECL([fast_install], [enable_fast_install], [0],
-	 [Whether or not to optimize for fast installation])dnl
-])# _LT_ENABLE_FAST_INSTALL
-
-LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
-
-# Old names:
-AU_DEFUN([AC_ENABLE_FAST_INSTALL],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `fast-install' option into LT_INIT's first parameter.])
-])
-
-AU_DEFUN([AC_DISABLE_FAST_INSTALL],
-[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `disable-fast-install' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
-dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
-
-
-# _LT_WITH_PIC([MODE])
-# --------------------
-# implement the --with-pic flag, and support the `pic-only' and `no-pic'
-# LT_INIT options.
-# MODE is either `yes' or `no'.  If omitted, it defaults to `both'.
-m4_define([_LT_WITH_PIC],
-[AC_ARG_WITH([pic],
-    [AS_HELP_STRING([--with-pic],
-	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
-    [pic_mode="$withval"],
-    [pic_mode=default])
-
-test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
-
-_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
-])# _LT_WITH_PIC
-
-LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
-LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
-
-# Old name:
-AU_DEFUN([AC_LIBTOOL_PICMODE],
-[_LT_SET_OPTION([LT_INIT], [pic-only])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `pic-only' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
-
-## ----------------- ##
-## LTDL_INIT Options ##
-## ----------------- ##
-
-m4_define([_LTDL_MODE], [])
-LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
-		 [m4_define([_LTDL_MODE], [nonrecursive])])
-LT_OPTION_DEFINE([LTDL_INIT], [recursive],
-		 [m4_define([_LTDL_MODE], [recursive])])
-LT_OPTION_DEFINE([LTDL_INIT], [subproject],
-		 [m4_define([_LTDL_MODE], [subproject])])
-
-m4_define([_LTDL_TYPE], [])
-LT_OPTION_DEFINE([LTDL_INIT], [installable],
-		 [m4_define([_LTDL_TYPE], [installable])])
-LT_OPTION_DEFINE([LTDL_INIT], [convenience],
-		 [m4_define([_LTDL_TYPE], [convenience])])
diff --git a/src/other/ares/m4/ltsugar.m4 b/src/other/ares/m4/ltsugar.m4
deleted file mode 100644
index 9000a05..0000000
--- a/src/other/ares/m4/ltsugar.m4
+++ /dev/null
@@ -1,123 +0,0 @@
-# ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
-#
-# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gary V. Vaughan, 2004
-#
-# This file 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.
-
-# serial 6 ltsugar.m4
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
-
-
-# lt_join(SEP, ARG1, [ARG2...])
-# -----------------------------
-# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
-# associated separator.
-# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
-# versions in m4sugar had bugs.
-m4_define([lt_join],
-[m4_if([$#], [1], [],
-       [$#], [2], [[$2]],
-       [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
-m4_define([_lt_join],
-[m4_if([$#$2], [2], [],
-       [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
-
-
-# lt_car(LIST)
-# lt_cdr(LIST)
-# ------------
-# Manipulate m4 lists.
-# These macros are necessary as long as will still need to support
-# Autoconf-2.59 which quotes differently.
-m4_define([lt_car], [[$1]])
-m4_define([lt_cdr],
-[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
-       [$#], 1, [],
-       [m4_dquote(m4_shift($@))])])
-m4_define([lt_unquote], $1)
-
-
-# lt_append(MACRO-NAME, STRING, [SEPARATOR])
-# ------------------------------------------
-# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
-# Note that neither SEPARATOR nor STRING are expanded; they are appended
-# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
-# No SEPARATOR is output if MACRO-NAME was previously undefined (different
-# than defined and empty).
-#
-# This macro is needed until we can rely on Autoconf 2.62, since earlier
-# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
-m4_define([lt_append],
-[m4_define([$1],
-	   m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
-
-
-
-# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
-# ----------------------------------------------------------
-# Produce a SEP delimited list of all paired combinations of elements of
-# PREFIX-LIST with SUFFIX1 through SUFFIXn.  Each element of the list
-# has the form PREFIXmINFIXSUFFIXn.
-# Needed until we can rely on m4_combine added in Autoconf 2.62.
-m4_define([lt_combine],
-[m4_if(m4_eval([$# > 3]), [1],
-       [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
-[[m4_foreach([_Lt_prefix], [$2],
-	     [m4_foreach([_Lt_suffix],
-		]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
-	[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
-
-
-# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
-# -----------------------------------------------------------------------
-# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
-# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
-m4_define([lt_if_append_uniq],
-[m4_ifdef([$1],
-	  [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
-		 [lt_append([$1], [$2], [$3])$4],
-		 [$5])],
-	  [lt_append([$1], [$2], [$3])$4])])
-
-
-# lt_dict_add(DICT, KEY, VALUE)
-# -----------------------------
-m4_define([lt_dict_add],
-[m4_define([$1($2)], [$3])])
-
-
-# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
-# --------------------------------------------
-m4_define([lt_dict_add_subkey],
-[m4_define([$1($2:$3)], [$4])])
-
-
-# lt_dict_fetch(DICT, KEY, [SUBKEY])
-# ----------------------------------
-m4_define([lt_dict_fetch],
-[m4_ifval([$3],
-	m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
-    m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
-
-
-# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
-# -----------------------------------------------------------------
-m4_define([lt_if_dict_fetch],
-[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
-	[$5],
-    [$6])])
-
-
-# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
-# --------------------------------------------------------------
-m4_define([lt_dict_filter],
-[m4_if([$5], [], [],
-  [lt_join(m4_quote(m4_default([$4], [[, ]])),
-           lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
-		      [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
-])
diff --git a/src/other/ares/m4/ltversion.m4 b/src/other/ares/m4/ltversion.m4
deleted file mode 100644
index 9c7b5d4..0000000
--- a/src/other/ares/m4/ltversion.m4
+++ /dev/null
@@ -1,23 +0,0 @@
-# ltversion.m4 -- version numbers			-*- Autoconf -*-
-#
-#   Copyright (C) 2004 Free Software Foundation, Inc.
-#   Written by Scott James Remnant, 2004
-#
-# This file 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.
-
-# @configure_input@
-
-# serial 3293 ltversion.m4
-# This file is part of GNU Libtool
-
-m4_define([LT_PACKAGE_VERSION], [2.4])
-m4_define([LT_PACKAGE_REVISION], [1.3293])
-
-AC_DEFUN([LTVERSION_VERSION],
-[macro_version='2.4'
-macro_revision='1.3293'
-_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
-_LT_DECL(, macro_revision, 0)
-])
diff --git a/src/other/ares/m4/lt~obsolete.m4 b/src/other/ares/m4/lt~obsolete.m4
deleted file mode 100644
index c573da9..0000000
--- a/src/other/ares/m4/lt~obsolete.m4
+++ /dev/null
@@ -1,98 +0,0 @@
-# lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*-
-#
-#   Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
-#   Written by Scott James Remnant, 2004.
-#
-# This file 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.
-
-# serial 5 lt~obsolete.m4
-
-# These exist entirely to fool aclocal when bootstrapping libtool.
-#
-# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
-# which have later been changed to m4_define as they aren't part of the
-# exported API, or moved to Autoconf or Automake where they belong.
-#
-# The trouble is, aclocal is a bit thick.  It'll see the old AC_DEFUN
-# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
-# using a macro with the same name in our local m4/libtool.m4 it'll
-# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
-# and doesn't know about Autoconf macros at all.)
-#
-# So we provide this file, which has a silly filename so it's always
-# included after everything else.  This provides aclocal with the
-# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
-# because those macros already exist, or will be overwritten later.
-# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. 
-#
-# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
-# Yes, that means every name once taken will need to remain here until
-# we give up compatibility with versions before 1.7, at which point
-# we need to keep only those names which we still refer to.
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
-
-m4_ifndef([AC_LIBTOOL_LINKER_OPTION],	[AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
-m4_ifndef([AC_PROG_EGREP],		[AC_DEFUN([AC_PROG_EGREP])])
-m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
-m4_ifndef([_LT_AC_SHELL_INIT],		[AC_DEFUN([_LT_AC_SHELL_INIT])])
-m4_ifndef([_LT_AC_SYS_LIBPATH_AIX],	[AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
-m4_ifndef([_LT_PROG_LTMAIN],		[AC_DEFUN([_LT_PROG_LTMAIN])])
-m4_ifndef([_LT_AC_TAGVAR],		[AC_DEFUN([_LT_AC_TAGVAR])])
-m4_ifndef([AC_LTDL_ENABLE_INSTALL],	[AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
-m4_ifndef([AC_LTDL_PREOPEN],		[AC_DEFUN([AC_LTDL_PREOPEN])])
-m4_ifndef([_LT_AC_SYS_COMPILER],	[AC_DEFUN([_LT_AC_SYS_COMPILER])])
-m4_ifndef([_LT_AC_LOCK],		[AC_DEFUN([_LT_AC_LOCK])])
-m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE],	[AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
-m4_ifndef([_LT_AC_TRY_DLOPEN_SELF],	[AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
-m4_ifndef([AC_LIBTOOL_PROG_CC_C_O],	[AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
-m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
-m4_ifndef([AC_LIBTOOL_OBJDIR],		[AC_DEFUN([AC_LIBTOOL_OBJDIR])])
-m4_ifndef([AC_LTDL_OBJDIR],		[AC_DEFUN([AC_LTDL_OBJDIR])])
-m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
-m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP],	[AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
-m4_ifndef([AC_PATH_MAGIC],		[AC_DEFUN([AC_PATH_MAGIC])])
-m4_ifndef([AC_PROG_LD_GNU],		[AC_DEFUN([AC_PROG_LD_GNU])])
-m4_ifndef([AC_PROG_LD_RELOAD_FLAG],	[AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
-m4_ifndef([AC_DEPLIBS_CHECK_METHOD],	[AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
-m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
-m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS],	[AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
-m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP],	[AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
-m4_ifndef([LT_AC_PROG_EGREP],		[AC_DEFUN([LT_AC_PROG_EGREP])])
-m4_ifndef([LT_AC_PROG_SED],		[AC_DEFUN([LT_AC_PROG_SED])])
-m4_ifndef([_LT_CC_BASENAME],		[AC_DEFUN([_LT_CC_BASENAME])])
-m4_ifndef([_LT_COMPILER_BOILERPLATE],	[AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
-m4_ifndef([_LT_LINKER_BOILERPLATE],	[AC_DEFUN([_LT_LINKER_BOILERPLATE])])
-m4_ifndef([_AC_PROG_LIBTOOL],		[AC_DEFUN([_AC_PROG_LIBTOOL])])
-m4_ifndef([AC_LIBTOOL_SETUP],		[AC_DEFUN([AC_LIBTOOL_SETUP])])
-m4_ifndef([_LT_AC_CHECK_DLFCN],		[AC_DEFUN([_LT_AC_CHECK_DLFCN])])
-m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER],	[AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
-m4_ifndef([_LT_AC_TAGCONFIG],		[AC_DEFUN([_LT_AC_TAGCONFIG])])
-m4_ifndef([AC_DISABLE_FAST_INSTALL],	[AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
-m4_ifndef([_LT_AC_LANG_CXX],		[AC_DEFUN([_LT_AC_LANG_CXX])])
-m4_ifndef([_LT_AC_LANG_F77],		[AC_DEFUN([_LT_AC_LANG_F77])])
-m4_ifndef([_LT_AC_LANG_GCJ],		[AC_DEFUN([_LT_AC_LANG_GCJ])])
-m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
-m4_ifndef([_LT_AC_LANG_C_CONFIG],	[AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
-m4_ifndef([_LT_AC_LANG_CXX_CONFIG],	[AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
-m4_ifndef([_LT_AC_LANG_F77_CONFIG],	[AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
-m4_ifndef([_LT_AC_LANG_GCJ_CONFIG],	[AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
-m4_ifndef([_LT_AC_LANG_RC_CONFIG],	[AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
-m4_ifndef([AC_LIBTOOL_CONFIG],		[AC_DEFUN([AC_LIBTOOL_CONFIG])])
-m4_ifndef([_LT_AC_FILE_LTDLL_C],	[AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
-m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS],	[AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
-m4_ifndef([_LT_AC_PROG_CXXCPP],		[AC_DEFUN([_LT_AC_PROG_CXXCPP])])
-m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS],	[AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
-m4_ifndef([_LT_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
-m4_ifndef([_LT_PROG_F77],		[AC_DEFUN([_LT_PROG_F77])])
-m4_ifndef([_LT_PROG_FC],		[AC_DEFUN([_LT_PROG_FC])])
-m4_ifndef([_LT_PROG_CXX],		[AC_DEFUN([_LT_PROG_CXX])])
diff --git a/src/other/ares/maketgz b/src/other/ares/maketgz
deleted file mode 100755
index 147f0e5..0000000
--- a/src/other/ares/maketgz
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/usr/bin/env perl
-
-$version = $ARGV[0];
-
-if($version eq "") {
-    print "Enter version number!\n";
-    exit;
-}
-
-if(!-f "ares.h") {
-    print "run this script in the ares source root dir\n";
-    exit;
-}
-
-my ($major, $minor, $patch)=split(/\./, $version);
-
-$major += 0;
-$minor += 0;
-$patch += 0;
-
-open(VER, "<ares_version.h") ||
-    die "can't open ares_version.h";
-open(NEWV, ">ares_version.h.dist");
-while(<VER>) {
-    $_ =~ s/^\#define ARES_VERSION_MAJOR .*/\#define ARES_VERSION_MAJOR $major/;
-    $_ =~ s/^\#define ARES_VERSION_MINOR .*/\#define ARES_VERSION_MINOR $minor/;
-    $_ =~ s/^\#define ARES_VERSION_PATCH .*/\#define ARES_VERSION_PATCH $patch/;
-    $_ =~ s/^\#define ARES_VERSION_STR .*/\#define ARES_VERSION_STR \"$version\"/;
-
-    print NEWV $_;
-}
-close(VER);
-close(NEWV);
-print "ares_version.h.dist created\n";
-
-if(!-f "configure") {
-    print "running buildconf\n";
-    `./buildconf`;
-}
-print "adding $version in the configure.ac file\n";
-`sed -e 's/AC_INIT.*/AC_INIT([c-ares], [$version],/' < configure.ac > configure.ac.dist`;
-
-# now make a new configure script with this
-print "makes a new configure script\n";
-`autoconf configure.ac.dist >configure`;
-
-# now run this new configure to get a fine makefile
-print "running configure\n";
-`./configure`;
-
-# generate HTML versions of man pages
-# Deactivated for now. It seems that man pages need some adjustments
-# relative to paragraph and/or line breaks for proper html formatting.
-# EXTRA_DIST will need $(HTMLPAGES) when this is fully activated.
-# print "running make html\n";
-# `make -s html`;
-
-# generate PDF versions of man pages
-print "running make pdf\n";
-`make -s pdf`;
-
-# now make the actual tarball
-print "running make dist\n";
-`make dist VERSION=$version`;
-
-# remove temporay sourced man pages
-`make -s clean-sourced-manpages`;
-
-print "removing temporary configure.ac file\n";
-`rm configure.ac.dist`;
-print "removing temporary ares_version.h file\n";
-`rm ares_version.h.dist`;
-
-print "NOTE: now cvs tag this release!\n";
diff --git a/src/other/ares/missing b/src/other/ares/missing
deleted file mode 100755
index 28055d2..0000000
--- a/src/other/ares/missing
+++ /dev/null
@@ -1,376 +0,0 @@
-#! /bin/sh
-# Common stub for a few missing GNU programs while installing.
-
-scriptversion=2009-04-28.21; # UTC
-
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-# 2008, 2009 Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
-
-# This program 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, 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 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 <http://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-if test $# -eq 0; then
-  echo 1>&2 "Try \`$0 --help' for more information"
-  exit 1
-fi
-
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, `missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
-  configure_ac=configure.ac
-else
-  configure_ac=configure.in
-fi
-
-msg="missing on your system"
-
-case $1 in
---run)
-  # Try to run requested program, and just exit if it succeeds.
-  run=
-  shift
-  "$@" && exit 0
-  # Exit code 63 means version mismatch.  This often happens
-  # when the user try to use an ancient version of a tool on
-  # a file that requires a minimum version.  In this case we
-  # we should proceed has if the program had been absent, or
-  # if --run hadn't been passed.
-  if test $? = 63; then
-    run=:
-    msg="probably too old"
-  fi
-  ;;
-
-  -h|--h|--he|--hel|--help)
-    echo "\
-$0 [OPTION]... PROGRAM [ARGUMENT]...
-
-Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
-
-Options:
-  -h, --help      display this help and exit
-  -v, --version   output version information and exit
-  --run           try to run the given command, and emulate it if it fails
-
-Supported PROGRAM values:
-  aclocal      touch file \`aclocal.m4'
-  autoconf     touch file \`configure'
-  autoheader   touch file \`config.h.in'
-  autom4te     touch the output file, or create a stub one
-  automake     touch all \`Makefile.in' files
-  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
-  flex         create \`lex.yy.c', if possible, from existing .c
-  help2man     touch the output file
-  lex          create \`lex.yy.c', if possible, from existing .c
-  makeinfo     touch the output file
-  tar          try tar, gnutar, gtar, then tar without non-portable flags
-  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
-
-Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
-\`g' are ignored when checking the name.
-
-Send bug reports to <bug-automake at gnu.org>."
-    exit $?
-    ;;
-
-  -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
-    echo "missing $scriptversion (GNU Automake)"
-    exit $?
-    ;;
-
-  -*)
-    echo 1>&2 "$0: Unknown \`$1' option"
-    echo 1>&2 "Try \`$0 --help' for more information"
-    exit 1
-    ;;
-
-esac
-
-# normalize program name to check for.
-program=`echo "$1" | sed '
-  s/^gnu-//; t
-  s/^gnu//; t
-  s/^g//; t'`
-
-# Now exit if we have it, but it failed.  Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program).  This is about non-GNU programs, so use $1 not
-# $program.
-case $1 in
-  lex*|yacc*)
-    # Not GNU programs, they don't have --version.
-    ;;
-
-  tar*)
-    if test -n "$run"; then
-       echo 1>&2 "ERROR: \`tar' requires --run"
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       exit 1
-    fi
-    ;;
-
-  *)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       # Could not run --version or --help.  This is probably someone
-       # running `$TOOL --version' or `$TOOL --help' to check whether
-       # $TOOL exists and not knowing $TOOL uses missing.
-       exit 1
-    fi
-    ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $program in
-  aclocal*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
-         to install the \`Automake' and \`Perl' packages.  Grab them from
-         any GNU archive site."
-    touch aclocal.m4
-    ;;
-
-  autoconf*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`${configure_ac}'.  You might want to install the
-         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
-         archive site."
-    touch configure
-    ;;
-
-  autoheader*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
-         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
-         from any GNU archive site."
-    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
-    test -z "$files" && files="config.h"
-    touch_files=
-    for f in $files; do
-      case $f in
-      *:*) touch_files="$touch_files "`echo "$f" |
-				       sed -e 's/^[^:]*://' -e 's/:.*//'`;;
-      *) touch_files="$touch_files $f.in";;
-      esac
-    done
-    touch $touch_files
-    ;;
-
-  automake*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
-         You might want to install the \`Automake' and \`Perl' packages.
-         Grab them from any GNU archive site."
-    find . -type f -name Makefile.am -print |
-	   sed 's/\.am$/.in/' |
-	   while read f; do touch "$f"; done
-    ;;
-
-  autom4te*)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, but is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.
-         You can get \`$1' as part of \`Autoconf' from any GNU
-         archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-	touch $file
-    else
-	test -z "$file" || exec >$file
-	echo "#! /bin/sh"
-	echo "# Created by GNU Automake missing as a replacement of"
-	echo "#  $ $@"
-	echo "exit 0"
-	chmod +x $file
-	exit 1
-    fi
-    ;;
-
-  bison*|yacc*)
-    echo 1>&2 "\
-WARNING: \`$1' $msg.  You should only need it if
-         you modified a \`.y' file.  You may need the \`Bison' package
-         in order for those modifications to take effect.  You can get
-         \`Bison' from any GNU archive site."
-    rm -f y.tab.c y.tab.h
-    if test $# -ne 1; then
-        eval LASTARG="\${$#}"
-	case $LASTARG in
-	*.y)
-	    SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
-	    if test -f "$SRCFILE"; then
-	         cp "$SRCFILE" y.tab.c
-	    fi
-	    SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
-	    if test -f "$SRCFILE"; then
-	         cp "$SRCFILE" y.tab.h
-	    fi
-	  ;;
-	esac
-    fi
-    if test ! -f y.tab.h; then
-	echo >y.tab.h
-    fi
-    if test ! -f y.tab.c; then
-	echo 'main() { return 0; }' >y.tab.c
-    fi
-    ;;
-
-  lex*|flex*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.l' file.  You may need the \`Flex' package
-         in order for those modifications to take effect.  You can get
-         \`Flex' from any GNU archive site."
-    rm -f lex.yy.c
-    if test $# -ne 1; then
-        eval LASTARG="\${$#}"
-	case $LASTARG in
-	*.l)
-	    SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
-	    if test -f "$SRCFILE"; then
-	         cp "$SRCFILE" lex.yy.c
-	    fi
-	  ;;
-	esac
-    fi
-    if test ! -f lex.yy.c; then
-	echo 'main() { return 0; }' >lex.yy.c
-    fi
-    ;;
-
-  help2man*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-	 you modified a dependency of a manual page.  You may need the
-	 \`Help2man' package in order for those modifications to take
-	 effect.  You can get \`Help2man' from any GNU archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-	touch $file
-    else
-	test -z "$file" || exec >$file
-	echo ".ab help2man is required to generate this page"
-	exit $?
-    fi
-    ;;
-
-  makeinfo*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.texi' or \`.texinfo' file, or any other file
-         indirectly affecting the aspect of the manual.  The spurious
-         call might also be the consequence of using a buggy \`make' (AIX,
-         DU, IRIX).  You might want to install the \`Texinfo' package or
-         the \`GNU make' package.  Grab either from any GNU archive site."
-    # The file to touch is that specified with -o ...
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -z "$file"; then
-      # ... or it is the one specified with @setfilename ...
-      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-      file=`sed -n '
-	/^@setfilename/{
-	  s/.* \([^ ]*\) *$/\1/
-	  p
-	  q
-	}' $infile`
-      # ... or it is derived from the source name (dir/f.texi becomes f.info)
-      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
-    fi
-    # If the file does not exist, the user really needs makeinfo;
-    # let's fail without touching anything.
-    test -f $file || exit 1
-    touch $file
-    ;;
-
-  tar*)
-    shift
-
-    # We have already tried tar in the generic part.
-    # Look for gnutar/gtar before invocation to avoid ugly error
-    # messages.
-    if (gnutar --version > /dev/null 2>&1); then
-       gnutar "$@" && exit 0
-    fi
-    if (gtar --version > /dev/null 2>&1); then
-       gtar "$@" && exit 0
-    fi
-    firstarg="$1"
-    if shift; then
-	case $firstarg in
-	*o*)
-	    firstarg=`echo "$firstarg" | sed s/o//`
-	    tar "$firstarg" "$@" && exit 0
-	    ;;
-	esac
-	case $firstarg in
-	*h*)
-	    firstarg=`echo "$firstarg" | sed s/h//`
-	    tar "$firstarg" "$@" && exit 0
-	    ;;
-	esac
-    fi
-
-    echo 1>&2 "\
-WARNING: I can't seem to be able to run \`tar' with the given arguments.
-         You may want to install GNU tar or Free paxutils, or check the
-         command line arguments."
-    exit 1
-    ;;
-
-  *)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, and is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.  Check the \`README' file,
-         it often tells you about the needed prerequisites for installing
-         this package.  You may also peek at any GNU archive site, in case
-         some other package would contain this missing \`$1' program."
-    exit 1
-    ;;
-esac
-
-exit 0
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/src/other/ares/nameser.h b/src/other/ares/nameser.h
deleted file mode 100644
index 3d80096..0000000
--- a/src/other/ares/nameser.h
+++ /dev/null
@@ -1,194 +0,0 @@
-/* $Id$ */
-
-#ifndef ARES_NAMESER_H
-#define ARES_NAMESER_H
-
-/* header file provided by liren at vivisimo.com */
-
-#ifndef HAVE_ARPA_NAMESER_H
-
-#define NS_PACKETSZ     512   /* maximum packet size */
-#define NS_MAXDNAME     256   /* maximum domain name */
-#define NS_MAXCDNAME    255   /* maximum compressed domain name */
-#define NS_MAXLABEL     63
-#define NS_HFIXEDSZ     12    /* #/bytes of fixed data in header */
-#define NS_QFIXEDSZ     4     /* #/bytes of fixed data in query */
-#define NS_RRFIXEDSZ    10    /* #/bytes of fixed data in r record */
-#define NS_INT16SZ      2
-#define NS_INADDRSZ     4
-#define NS_IN6ADDRSZ    16
-#define NS_CMPRSFLGS    0xc0  /* Flag bits indicating name compression. */
-#define NS_DEFAULTPORT  53    /* For both TCP and UDP. */
-
-typedef enum __ns_class {
-    ns_c_invalid = 0,       /* Cookie. */
-    ns_c_in = 1,            /* Internet. */
-    ns_c_2 = 2,             /* unallocated/unsupported. */
-    ns_c_chaos = 3,         /* MIT Chaos-net. */
-    ns_c_hs = 4,            /* MIT Hesiod. */
-    /* Query class values which do not appear in resource records */
-    ns_c_none = 254,        /* for prereq. sections in update requests */
-    ns_c_any = 255,         /* Wildcard match. */
-    ns_c_max = 65536
-} ns_class;
-
-typedef enum __ns_type {
-    ns_t_invalid = 0,       /* Cookie. */
-    ns_t_a = 1,             /* Host address. */
-    ns_t_ns = 2,            /* Authoritative server. */
-    ns_t_md = 3,            /* Mail destination. */
-    ns_t_mf = 4,            /* Mail forwarder. */
-    ns_t_cname = 5,         /* Canonical name. */
-    ns_t_soa = 6,           /* Start of authority zone. */
-    ns_t_mb = 7,            /* Mailbox domain name. */
-    ns_t_mg = 8,            /* Mail group member. */
-    ns_t_mr = 9,            /* Mail rename name. */
-    ns_t_null = 10,         /* Null resource record. */
-    ns_t_wks = 11,          /* Well known service. */
-    ns_t_ptr = 12,          /* Domain name pointer. */
-    ns_t_hinfo = 13,        /* Host information. */
-    ns_t_minfo = 14,        /* Mailbox information. */
-    ns_t_mx = 15,           /* Mail routing information. */
-    ns_t_txt = 16,          /* Text strings. */
-    ns_t_rp = 17,           /* Responsible person. */
-    ns_t_afsdb = 18,        /* AFS cell database. */
-    ns_t_x25 = 19,          /* X_25 calling address. */
-    ns_t_isdn = 20,         /* ISDN calling address. */
-    ns_t_rt = 21,           /* Router. */
-    ns_t_nsap = 22,         /* NSAP address. */
-    ns_t_nsap_ptr = 23,     /* Reverse NSAP lookup (deprecated). */
-    ns_t_sig = 24,          /* Security signature. */
-    ns_t_key = 25,          /* Security key. */
-    ns_t_px = 26,           /* X.400 mail mapping. */
-    ns_t_gpos = 27,         /* Geographical position (withdrawn). */
-    ns_t_aaaa = 28,         /* Ip6 Address. */
-    ns_t_loc = 29,          /* Location Information. */
-    ns_t_nxt = 30,          /* Next domain (security). */
-    ns_t_eid = 31,          /* Endpoint identifier. */
-    ns_t_nimloc = 32,       /* Nimrod Locator. */
-    ns_t_srv = 33,          /* Server Selection. */
-    ns_t_atma = 34,         /* ATM Address */
-    ns_t_naptr = 35,        /* Naming Authority PoinTeR */
-    ns_t_kx = 36,           /* Key Exchange */
-    ns_t_cert = 37,         /* Certification record */
-    ns_t_a6 = 38,           /* IPv6 address (deprecates AAAA) */
-    ns_t_dname = 39,        /* Non-terminal DNAME (for IPv6) */
-    ns_t_sink = 40,         /* Kitchen sink (experimentatl) */
-    ns_t_opt = 41,          /* EDNS0 option (meta-RR) */
-    ns_t_apl = 42,          /* Address prefix list (RFC3123) */
-    ns_t_tkey = 249,        /* Transaction key */
-    ns_t_tsig = 250,        /* Transaction signature. */
-    ns_t_ixfr = 251,        /* Incremental zone transfer. */
-    ns_t_axfr = 252,        /* Transfer zone of authority. */
-    ns_t_mailb = 253,       /* Transfer mailbox records. */
-    ns_t_maila = 254,       /* Transfer mail agent records. */
-    ns_t_any = 255,         /* Wildcard match. */
-    ns_t_zxfr = 256,        /* BIND-specific, nonstandard. */
-    ns_t_max = 65536
-} ns_type;
-
-typedef enum __ns_opcode {
-    ns_o_query = 0,         /* Standard query. */
-    ns_o_iquery = 1,        /* Inverse query (deprecated/unsupported). */
-    ns_o_status = 2,        /* Name server status query (unsupported). */
-                                /* Opcode 3 is undefined/reserved. */
-    ns_o_notify = 4,        /* Zone change notification. */
-    ns_o_update = 5,        /* Zone update message. */
-    ns_o_max = 6
-} ns_opcode;
-
-typedef enum __ns_rcode {
-    ns_r_noerror = 0,       /* No error occurred. */
-    ns_r_formerr = 1,       /* Format error. */
-    ns_r_servfail = 2,      /* Server failure. */
-    ns_r_nxdomain = 3,      /* Name error. */
-    ns_r_notimpl = 4,       /* Unimplemented. */
-    ns_r_refused = 5,       /* Operation refused. */
-    /* these are for BIND_UPDATE */
-    ns_r_yxdomain = 6,      /* Name exists */
-    ns_r_yxrrset = 7,       /* RRset exists */
-    ns_r_nxrrset = 8,       /* RRset does not exist */
-    ns_r_notauth = 9,       /* Not authoritative for zone */
-    ns_r_notzone = 10,      /* Zone of record different from zone section */
-    ns_r_max = 11,
-    /* The following are TSIG extended errors */
-    ns_r_badsig = 16,
-    ns_r_badkey = 17,
-    ns_r_badtime = 18
-} ns_rcode;
-
-#endif /* HAVE_ARPA_NAMESER_H */
-
-#ifndef HAVE_ARPA_NAMESER_COMPAT_H
-
-#define PACKETSZ         NS_PACKETSZ
-#define MAXDNAME         NS_MAXDNAME
-#define MAXCDNAME        NS_MAXCDNAME
-#define MAXLABEL         NS_MAXLABEL
-#define HFIXEDSZ         NS_HFIXEDSZ
-#define QFIXEDSZ         NS_QFIXEDSZ
-#define RRFIXEDSZ        NS_RRFIXEDSZ
-#define INDIR_MASK       NS_CMPRSFLGS
-#define NAMESERVER_PORT  NS_DEFAULTPORT
-
-#define QUERY           ns_o_query
-
-#define SERVFAIL        ns_r_servfail
-#define NOTIMP          ns_r_notimpl
-#define REFUSED         ns_r_refused
-#undef NOERROR /* it seems this is already defined in winerror.h */
-#define NOERROR         ns_r_noerror
-#define FORMERR         ns_r_formerr
-#define NXDOMAIN        ns_r_nxdomain
-
-#define C_IN            ns_c_in
-#define C_CHAOS         ns_c_chaos
-#define C_HS            ns_c_hs
-#define C_NONE          ns_c_none
-#define C_ANY           ns_c_any
-
-#define T_A             ns_t_a
-#define T_NS            ns_t_ns
-#define T_MD            ns_t_md
-#define T_MF            ns_t_mf
-#define T_CNAME         ns_t_cname
-#define T_SOA           ns_t_soa
-#define T_MB            ns_t_mb
-#define T_MG            ns_t_mg
-#define T_MR            ns_t_mr
-#define T_NULL          ns_t_null
-#define T_WKS           ns_t_wks
-#define T_PTR           ns_t_ptr
-#define T_HINFO         ns_t_hinfo
-#define T_MINFO         ns_t_minfo
-#define T_MX            ns_t_mx
-#define T_TXT           ns_t_txt
-#define T_RP            ns_t_rp
-#define T_AFSDB         ns_t_afsdb
-#define T_X25           ns_t_x25
-#define T_ISDN          ns_t_isdn
-#define T_RT            ns_t_rt
-#define T_NSAP          ns_t_nsap
-#define T_NSAP_PTR      ns_t_nsap_ptr
-#define T_SIG           ns_t_sig
-#define T_KEY           ns_t_key
-#define T_PX            ns_t_px
-#define T_GPOS          ns_t_gpos
-#define T_AAAA          ns_t_aaaa
-#define T_LOC           ns_t_loc
-#define T_NXT           ns_t_nxt
-#define T_EID           ns_t_eid
-#define T_NIMLOC        ns_t_nimloc
-#define T_SRV           ns_t_srv
-#define T_ATMA          ns_t_atma
-#define T_NAPTR         ns_t_naptr
-#define T_TSIG          ns_t_tsig
-#define T_IXFR          ns_t_ixfr
-#define T_AXFR          ns_t_axfr
-#define T_MAILB         ns_t_mailb
-#define T_MAILA         ns_t_maila
-#define T_ANY           ns_t_any
-
-#endif /* HAVE_ARPA_NAMESER_COMPAT_H */
-
-#endif /* ARES_NAMESER_H */
diff --git a/src/other/ares/setup_once.h b/src/other/ares/setup_once.h
deleted file mode 100644
index 95722b2..0000000
--- a/src/other/ares/setup_once.h
+++ /dev/null
@@ -1,444 +0,0 @@
-#ifndef __SETUP_ONCE_H
-#define __SETUP_ONCE_H
-
-/* $Id$ */
-
-/* Copyright (C) 2004 - 2009 by Daniel Stenberg et al
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation for any purpose and without fee is hereby granted, provided
- * that the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of M.I.T. not be used in advertising or
- * publicity pertaining to distribution of the software without specific,
- * written prior permission.  M.I.T. makes no representations about the
- * suitability of this software for any purpose.  It is provided "as is"
- * without express or implied warranty.
- */
-
-
-/********************************************************************
- *                              NOTICE                              *
- *                             ========                             *
- *                                                                  *
- *  Content of header files lib/setup_once.h and ares/setup_once.h  *
- *  must be kept in sync. Modify the other one if you change this.  *
- *                                                                  *
- ********************************************************************/
-
-
-/*
- * Inclusion of common header files.
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <stdarg.h>
-#include <ctype.h>
-#include <errno.h>
-
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-
-#ifdef NEED_MALLOC_H
-#include <malloc.h>
-#endif
-
-#ifdef NEED_MEMORY_H
-#include <memory.h>
-#endif
-
-#ifdef HAVE_SYS_STAT_H
-#include <sys/stat.h>
-#endif
-
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-
-#ifdef WIN32
-#include <io.h>
-#include <fcntl.h>
-#endif
-
-#ifdef HAVE_STDBOOL_H
-#include <stdbool.h>
-#endif
-
-
-/*
- * Definition of timeval struct for platforms that don't have it.
- */
-
-#ifndef HAVE_STRUCT_TIMEVAL
-struct timeval {
- long tv_sec;
- long tv_usec;
-};
-#endif
-
-
-/*
- * If we have the MSG_NOSIGNAL define, make sure we use
- * it as the fourth argument of function send()
- */
-
-#ifdef HAVE_MSG_NOSIGNAL
-#define SEND_4TH_ARG MSG_NOSIGNAL
-#else
-#define SEND_4TH_ARG 0
-#endif
-
-
-#if defined(__minix)
-/* Minix doesn't support recv on TCP sockets */
-#define sread(x,y,z) (ssize_t)read((RECV_TYPE_ARG1)(x), \
-                                   (RECV_TYPE_ARG2)(y), \
-                                   (RECV_TYPE_ARG3)(z))
-
-#elif defined(HAVE_RECV)
-/*
- * The definitions for the return type and arguments types
- * of functions recv() and send() belong and come from the
- * configuration file. Do not define them in any other place.
- *
- * HAVE_RECV is defined if you have a function named recv()
- * which is used to read incoming data from sockets. If your
- * function has another name then don't define HAVE_RECV.
- *
- * If HAVE_RECV is defined then RECV_TYPE_ARG1, RECV_TYPE_ARG2,
- * RECV_TYPE_ARG3, RECV_TYPE_ARG4 and RECV_TYPE_RETV must also
- * be defined.
- *
- * HAVE_SEND is defined if you have a function named send()
- * which is used to write outgoing data on a connected socket.
- * If yours has another name then don't define HAVE_SEND.
- *
- * If HAVE_SEND is defined then SEND_TYPE_ARG1, SEND_QUAL_ARG2,
- * SEND_TYPE_ARG2, SEND_TYPE_ARG3, SEND_TYPE_ARG4 and
- * SEND_TYPE_RETV must also be defined.
- */
-
-#if !defined(RECV_TYPE_ARG1) || \
-    !defined(RECV_TYPE_ARG2) || \
-    !defined(RECV_TYPE_ARG3) || \
-    !defined(RECV_TYPE_ARG4) || \
-    !defined(RECV_TYPE_RETV)
-  /* */
-  Error Missing_definition_of_return_and_arguments_types_of_recv
-  /* */
-#else
-#define sread(x,y,z) (ssize_t)recv((RECV_TYPE_ARG1)(x), \
-                                   (RECV_TYPE_ARG2)(y), \
-                                   (RECV_TYPE_ARG3)(z), \
-                                   (RECV_TYPE_ARG4)(0))
-#endif
-#else /* HAVE_RECV */
-#ifndef sread
-  /* */
-  Error Missing_definition_of_macro_sread
-  /* */
-#endif
-#endif /* HAVE_RECV */
-
-
-#if defined(__minix)
-/* Minix doesn't support send on TCP sockets */
-#define swrite(x,y,z) (ssize_t)write((SEND_TYPE_ARG1)(x), \
-                                    (SEND_TYPE_ARG2)(y), \
-                                    (SEND_TYPE_ARG3)(z))
-
-#elif defined(HAVE_SEND)
-#if !defined(SEND_TYPE_ARG1) || \
-    !defined(SEND_QUAL_ARG2) || \
-    !defined(SEND_TYPE_ARG2) || \
-    !defined(SEND_TYPE_ARG3) || \
-    !defined(SEND_TYPE_ARG4) || \
-    !defined(SEND_TYPE_RETV)
-  /* */
-  Error Missing_definition_of_return_and_arguments_types_of_send
-  /* */
-#else
-#define swrite(x,y,z) (ssize_t)send((SEND_TYPE_ARG1)(x), \
-                                    (SEND_TYPE_ARG2)(y), \
-                                    (SEND_TYPE_ARG3)(z), \
-                                    (SEND_TYPE_ARG4)(SEND_4TH_ARG))
-#endif
-#else /* HAVE_SEND */
-#ifndef swrite
-  /* */
-  Error Missing_definition_of_macro_swrite
-  /* */
-#endif
-#endif /* HAVE_SEND */
-
-
-#if 0
-#if defined(HAVE_RECVFROM)
-/*
- * Currently recvfrom is only used on udp sockets.
- */
-#if !defined(RECVFROM_TYPE_ARG1) || \
-    !defined(RECVFROM_TYPE_ARG2) || \
-    !defined(RECVFROM_TYPE_ARG3) || \
-    !defined(RECVFROM_TYPE_ARG4) || \
-    !defined(RECVFROM_TYPE_ARG5) || \
-    !defined(RECVFROM_TYPE_ARG6) || \
-    !defined(RECVFROM_TYPE_RETV)
-  /* */
-  Error Missing_definition_of_return_and_arguments_types_of_recvfrom
-  /* */
-#else
-#define sreadfrom(s,b,bl,f,fl) (ssize_t)recvfrom((RECVFROM_TYPE_ARG1)  (s),  \
-                                                 (RECVFROM_TYPE_ARG2 *)(b),  \
-                                                 (RECVFROM_TYPE_ARG3)  (bl), \
-                                                 (RECVFROM_TYPE_ARG4)  (0),  \
-                                                 (RECVFROM_TYPE_ARG5 *)(f),  \
-                                                 (RECVFROM_TYPE_ARG6 *)(fl))
-#endif
-#else /* HAVE_RECVFROM */
-#ifndef sreadfrom
-  /* */
-  Error Missing_definition_of_macro_sreadfrom
-  /* */
-#endif
-#endif /* HAVE_RECVFROM */
-
-
-#ifdef RECVFROM_TYPE_ARG6_IS_VOID
-#  define RECVFROM_ARG6_T int
-#else
-#  define RECVFROM_ARG6_T RECVFROM_TYPE_ARG6
-#endif
-#endif /* if 0 */
-
-
-/*
- * Function-like macro definition used to close a socket.
- */
-
-#if defined(HAVE_CLOSESOCKET)
-#  define sclose(x)  closesocket((x))
-#elif defined(HAVE_CLOSESOCKET_CAMEL)
-#  define sclose(x)  CloseSocket((x))
-#else
-#  define sclose(x)  close((x))
-#endif
-
-
-/*
- * Uppercase macro versions of ANSI/ISO is*() functions/macros which
- * avoid negative number inputs with argument byte codes > 127.
- */
-
-#define ISSPACE(x)  (isspace((int)  ((unsigned char)x)))
-#define ISDIGIT(x)  (isdigit((int)  ((unsigned char)x)))
-#define ISALNUM(x)  (isalnum((int)  ((unsigned char)x)))
-#define ISXDIGIT(x) (isxdigit((int) ((unsigned char)x)))
-#define ISGRAPH(x)  (isgraph((int)  ((unsigned char)x)))
-#define ISALPHA(x)  (isalpha((int)  ((unsigned char)x)))
-#define ISPRINT(x)  (isprint((int)  ((unsigned char)x)))
-#define ISUPPER(x)  (isupper((int)  ((unsigned char)x)))
-#define ISLOWER(x)  (islower((int)  ((unsigned char)x)))
-
-#define ISBLANK(x)  (int)((((unsigned char)x) == ' ') || \
-                          (((unsigned char)x) == '\t'))
-
-
-/*
- * Typedef to 'unsigned char' if bool is not an available 'typedefed' type.
- */
-
-#ifndef HAVE_BOOL_T
-typedef unsigned char bool;
-#define HAVE_BOOL_T
-#endif
-
-
-/*
- * Default definition of uppercase TRUE and FALSE.
- */
-
-#ifndef TRUE
-#define TRUE 1
-#endif
-#ifndef FALSE
-#define FALSE 0
-#endif
-
-
-/*
- * Typedef to 'int' if sig_atomic_t is not an available 'typedefed' type.
- */
-
-#ifndef HAVE_SIG_ATOMIC_T
-typedef int sig_atomic_t;
-#define HAVE_SIG_ATOMIC_T
-#endif
-
-
-/*
- * Convenience SIG_ATOMIC_T definition
- */
-
-#ifdef HAVE_SIG_ATOMIC_T_VOLATILE
-#define SIG_ATOMIC_T static sig_atomic_t
-#else
-#define SIG_ATOMIC_T static volatile sig_atomic_t
-#endif
-
-
-/*
- * Default return type for signal handlers.
- */
-
-#ifndef RETSIGTYPE
-#define RETSIGTYPE void
-#endif
-
-
-/*
- * Macro used to include code only in debug builds.
- */
-
-#ifdef DEBUGBUILD
-#define DEBUGF(x) x
-#else
-#define DEBUGF(x) do { } while (0)
-#endif
-
-
-/*
- * Macro used to include assertion code only in debug builds.
- */
-
-#if defined(DEBUGBUILD) && defined(HAVE_ASSERT_H)
-#define DEBUGASSERT(x) assert(x)
-#else
-#define DEBUGASSERT(x) do { } while (0)
-#endif
-
-
-/*
- * Macro SOCKERRNO / SET_SOCKERRNO() returns / sets the *socket-related* errno
- * (or equivalent) on this platform to hide platform details to code using it.
- */
-
-#ifdef USE_WINSOCK
-#define SOCKERRNO         ((int)WSAGetLastError())
-#define SET_SOCKERRNO(x)  (WSASetLastError((int)(x)))
-#else
-#define SOCKERRNO         (errno)
-#define SET_SOCKERRNO(x)  (errno = (x))
-#endif
-
-
-/*
- * Macro ERRNO / SET_ERRNO() returns / sets the NOT *socket-related* errno
- * (or equivalent) on this platform to hide platform details to code using it.
- */
-
-#ifdef WIN32
-#define ERRNO         ((int)GetLastError())
-#define SET_ERRNO(x)  (SetLastError((DWORD)(x)))
-#else
-#define ERRNO         (errno)
-#define SET_ERRNO(x)  (errno = (x))
-#endif
-
-
-/*
- * Portable error number symbolic names defined to Winsock error codes.
- */
-
-#ifdef USE_WINSOCK
-#undef  EBADF            /* override definition in errno.h */
-#define EBADF            WSAEBADF
-#undef  EINTR            /* override definition in errno.h */
-#define EINTR            WSAEINTR
-#undef  EINVAL           /* override definition in errno.h */
-#define EINVAL           WSAEINVAL
-#define EWOULDBLOCK      WSAEWOULDBLOCK
-#define EINPROGRESS      WSAEINPROGRESS
-#define EALREADY         WSAEALREADY
-#define ENOTSOCK         WSAENOTSOCK
-#define EDESTADDRREQ     WSAEDESTADDRREQ
-#define EMSGSIZE         WSAEMSGSIZE
-#define EPROTOTYPE       WSAEPROTOTYPE
-#define ENOPROTOOPT      WSAENOPROTOOPT
-#define EPROTONOSUPPORT  WSAEPROTONOSUPPORT
-#define ESOCKTNOSUPPORT  WSAESOCKTNOSUPPORT
-#define EOPNOTSUPP       WSAEOPNOTSUPP
-#define EPFNOSUPPORT     WSAEPFNOSUPPORT
-#define EAFNOSUPPORT     WSAEAFNOSUPPORT
-#define EADDRINUSE       WSAEADDRINUSE
-#define EADDRNOTAVAIL    WSAEADDRNOTAVAIL
-#define ENETDOWN         WSAENETDOWN
-#define ENETUNREACH      WSAENETUNREACH
-#define ENETRESET        WSAENETRESET
-#define ECONNABORTED     WSAECONNABORTED
-#define ECONNRESET       WSAECONNRESET
-#define ENOBUFS          WSAENOBUFS
-#define EISCONN          WSAEISCONN
-#define ENOTCONN         WSAENOTCONN
-#define ESHUTDOWN        WSAESHUTDOWN
-#define ETOOMANYREFS     WSAETOOMANYREFS
-#define ETIMEDOUT        WSAETIMEDOUT
-#define ECONNREFUSED     WSAECONNREFUSED
-#define ELOOP            WSAELOOP
-#ifndef ENAMETOOLONG     /* possible previous definition in errno.h */
-#define ENAMETOOLONG     WSAENAMETOOLONG
-#endif
-#define EHOSTDOWN        WSAEHOSTDOWN
-#define EHOSTUNREACH     WSAEHOSTUNREACH
-#ifndef ENOTEMPTY        /* possible previous definition in errno.h */
-#define ENOTEMPTY        WSAENOTEMPTY
-#endif
-#define EPROCLIM         WSAEPROCLIM
-#define EUSERS           WSAEUSERS
-#define EDQUOT           WSAEDQUOT
-#define ESTALE           WSAESTALE
-#define EREMOTE          WSAEREMOTE
-#endif
-
-
-/*
- *  Actually use __32_getpwuid() on 64-bit VMS builds for getpwuid()
- */
-
-#if defined(__VMS) && \
-    defined(__INITIAL_POINTER_SIZE) && (__INITIAL_POINTER_SIZE == 64)
-#define getpwuid __32_getpwuid
-#endif
-
-
-/*
- * Macro argv_item_t hides platform details to code using it.
- */
-
-#ifdef __VMS
-#define argv_item_t  __char_ptr32
-#else
-#define argv_item_t  char *
-#endif
-
-
-/*
- * We use this ZERO_NULL to avoid picky compiler warnings,
- * when assigning a NULL pointer to a function pointer var.
- */
-
-#define ZERO_NULL 0
-
-
-#endif /* __SETUP_ONCE_H */
-
diff --git a/src/other/ares/vc/acountry/vc6acountry.dsp b/src/other/ares/vc/acountry/vc6acountry.dsp
deleted file mode 100644
index e9d4970..0000000
--- a/src/other/ares/vc/acountry/vc6acountry.dsp
+++ /dev/null
@@ -1,170 +0,0 @@
-# Microsoft Developer Studio Project File - Name="acountry" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=acountry - Win32 using cares LIB Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "vc6acountry.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "vc6acountry.mak" CFG="acountry - Win32 using cares LIB Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "acountry - Win32 using cares DLL Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE "acountry - Win32 using cares DLL Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "acountry - Win32 using cares LIB Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE "acountry - Win32 using cares LIB Release" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "acountry - Win32 using cares DLL Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "dll-debug"
-# PROP BASE Intermediate_Dir "dll-debug/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "dll-debug"
-# PROP Intermediate_Dir "dll-debug/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 caresd.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"dll-debug/acountry.exe" /pdbtype:con /libpath:"..\cares\dll-debug" /fixed:no
-# ADD LINK32 caresd.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"dll-debug/acountry.exe" /pdbtype:con /libpath:"..\cares\dll-debug" /fixed:no
-
-!ELSEIF  "$(CFG)" == "acountry - Win32 using cares DLL Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "dll-release"
-# PROP BASE Intermediate_Dir "dll-release/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "dll-release"
-# PROP Intermediate_Dir "dll-release/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 cares.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"dll-release/acountry.exe" /libpath:"..\cares\dll-release" /fixed:no
-# ADD LINK32 cares.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"dll-release/acountry.exe" /libpath:"..\cares\dll-release" /fixed:no
-
-!ELSEIF  "$(CFG)" == "acountry - Win32 using cares LIB Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "lib-debug"
-# PROP BASE Intermediate_Dir "lib-debug/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "lib-debug"
-# PROP Intermediate_Dir "lib-debug/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "CARES_STATICLIB" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "CARES_STATICLIB" /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 libcaresd.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"lib-debug/acountry.exe" /pdbtype:con /libpath:"..\cares\lib-debug" /fixed:no
-# ADD LINK32 libcaresd.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"lib-debug/acountry.exe" /pdbtype:con /libpath:"..\cares\lib-debug" /fixed:no
-
-!ELSEIF  "$(CFG)" == "acountry - Win32 using cares LIB Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "lib-release"
-# PROP BASE Intermediate_Dir "lib-release/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "lib-release"
-# PROP Intermediate_Dir "lib-release/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /D "CARES_STATICLIB" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /D "CARES_STATICLIB" /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 libcares.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"lib-release/acountry.exe" /libpath:"..\cares\lib-release" /fixed:no
-# ADD LINK32 libcares.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"lib-release/acountry.exe" /libpath:"..\cares\lib-release" /fixed:no
-
-!ENDIF 
-
-# Begin Target
-
-# Name "acountry - Win32 using cares DLL Debug"
-# Name "acountry - Win32 using cares DLL Release"
-# Name "acountry - Win32 using cares LIB Debug"
-# Name "acountry - Win32 using cares LIB Release"
-# Begin Group "Source Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\acountry.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_getopt.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_strcasecmp.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\inet_net_pton.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\inet_ntop.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\ares_getopt.h
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/src/other/ares/vc/adig/vc6adig.dsp b/src/other/ares/vc/adig/vc6adig.dsp
deleted file mode 100644
index 913d5d9..0000000
--- a/src/other/ares/vc/adig/vc6adig.dsp
+++ /dev/null
@@ -1,170 +0,0 @@
-# Microsoft Developer Studio Project File - Name="adig" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=adig - Win32 using cares LIB Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "vc6adig.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "vc6adig.mak" CFG="adig - Win32 using cares LIB Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "adig - Win32 using cares DLL Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE "adig - Win32 using cares DLL Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "adig - Win32 using cares LIB Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE "adig - Win32 using cares LIB Release" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "adig - Win32 using cares DLL Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "dll-debug"
-# PROP BASE Intermediate_Dir "dll-debug/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "dll-debug"
-# PROP Intermediate_Dir "dll-debug/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 caresd.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"dll-debug/adig.exe" /pdbtype:con /libpath:"..\cares\dll-debug" /fixed:no
-# ADD LINK32 caresd.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"dll-debug/adig.exe" /pdbtype:con /libpath:"..\cares\dll-debug" /fixed:no
-
-!ELSEIF  "$(CFG)" == "adig - Win32 using cares DLL Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "dll-release"
-# PROP BASE Intermediate_Dir "dll-release/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "dll-release"
-# PROP Intermediate_Dir "dll-release/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 cares.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"dll-release/adig.exe" /libpath:"..\cares\dll-release" /fixed:no
-# ADD LINK32 cares.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"dll-release/adig.exe" /libpath:"..\cares\dll-release" /fixed:no
-
-!ELSEIF  "$(CFG)" == "adig - Win32 using cares LIB Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "lib-debug"
-# PROP BASE Intermediate_Dir "lib-debug/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "lib-debug"
-# PROP Intermediate_Dir "lib-debug/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "CARES_STATICLIB" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "CARES_STATICLIB" /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 libcaresd.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"lib-debug/adig.exe" /pdbtype:con /libpath:"..\cares\lib-debug" /fixed:no
-# ADD LINK32 libcaresd.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"lib-debug/adig.exe" /pdbtype:con /libpath:"..\cares\lib-debug" /fixed:no
-
-!ELSEIF  "$(CFG)" == "adig - Win32 using cares LIB Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "lib-release"
-# PROP BASE Intermediate_Dir "lib-release/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "lib-release"
-# PROP Intermediate_Dir "lib-release/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /D "CARES_STATICLIB" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /D "CARES_STATICLIB" /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 libcares.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"lib-release/adig.exe" /libpath:"..\cares\lib-release" /fixed:no
-# ADD LINK32 libcares.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"lib-release/adig.exe" /libpath:"..\cares\lib-release" /fixed:no
-
-!ENDIF 
-
-# Begin Target
-
-# Name "adig - Win32 using cares DLL Debug"
-# Name "adig - Win32 using cares DLL Release"
-# Name "adig - Win32 using cares LIB Debug"
-# Name "adig - Win32 using cares LIB Release"
-# Begin Group "Source Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\adig.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_getopt.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_strcasecmp.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\inet_net_pton.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\inet_ntop.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\ares_getopt.h
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/src/other/ares/vc/ahost/vc6ahost.dsp b/src/other/ares/vc/ahost/vc6ahost.dsp
deleted file mode 100644
index 64d3728..0000000
--- a/src/other/ares/vc/ahost/vc6ahost.dsp
+++ /dev/null
@@ -1,170 +0,0 @@
-# Microsoft Developer Studio Project File - Name="ahost" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=ahost - Win32 using cares LIB Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "vc6ahost.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "vc6ahost.mak" CFG="ahost - Win32 using cares LIB Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "ahost - Win32 using cares DLL Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE "ahost - Win32 using cares DLL Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "ahost - Win32 using cares LIB Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE "ahost - Win32 using cares LIB Release" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "ahost - Win32 using cares DLL Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "dll-debug"
-# PROP BASE Intermediate_Dir "dll-debug/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "dll-debug"
-# PROP Intermediate_Dir "dll-debug/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 caresd.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"dll-debug/ahost.exe" /pdbtype:con /libpath:"..\cares\dll-debug" /fixed:no
-# ADD LINK32 caresd.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"dll-debug/ahost.exe" /pdbtype:con /libpath:"..\cares\dll-debug" /fixed:no
-
-!ELSEIF  "$(CFG)" == "ahost - Win32 using cares DLL Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "dll-release"
-# PROP BASE Intermediate_Dir "dll-release/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "dll-release"
-# PROP Intermediate_Dir "dll-release/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 cares.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"dll-release/ahost.exe" /libpath:"..\cares\dll-release" /fixed:no
-# ADD LINK32 cares.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"dll-release/ahost.exe" /libpath:"..\cares\dll-release" /fixed:no
-
-!ELSEIF  "$(CFG)" == "ahost - Win32 using cares LIB Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "lib-debug"
-# PROP BASE Intermediate_Dir "lib-debug/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "lib-debug"
-# PROP Intermediate_Dir "lib-debug/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "CARES_STATICLIB" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "CARES_STATICLIB" /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 libcaresd.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"lib-debug/ahost.exe" /pdbtype:con /libpath:"..\cares\lib-debug" /fixed:no
-# ADD LINK32 libcaresd.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"lib-debug/ahost.exe" /pdbtype:con /libpath:"..\cares\lib-debug" /fixed:no
-
-!ELSEIF  "$(CFG)" == "ahost - Win32 using cares LIB Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "lib-release"
-# PROP BASE Intermediate_Dir "lib-release/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "lib-release"
-# PROP Intermediate_Dir "lib-release/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /D "CARES_STATICLIB" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /D "CARES_STATICLIB" /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 libcares.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"lib-release/ahost.exe" /libpath:"..\cares\lib-release" /fixed:no
-# ADD LINK32 libcares.lib ws2_32.lib advapi32.lib kernel32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"lib-release/ahost.exe" /libpath:"..\cares\lib-release" /fixed:no
-
-!ENDIF 
-
-# Begin Target
-
-# Name "ahost - Win32 using cares DLL Debug"
-# Name "ahost - Win32 using cares DLL Release"
-# Name "ahost - Win32 using cares LIB Debug"
-# Name "ahost - Win32 using cares LIB Release"
-# Begin Group "Source Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\ahost.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_getopt.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_strcasecmp.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\inet_net_pton.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\inet_ntop.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\ares_getopt.h
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/src/other/ares/vc/cares/vc6cares.dsp b/src/other/ares/vc/cares/vc6cares.dsp
deleted file mode 100644
index ca84f80..0000000
--- a/src/other/ares/vc/cares/vc6cares.dsp
+++ /dev/null
@@ -1,393 +0,0 @@
-# Microsoft Developer Studio Project File - Name="cares" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
-# TARGTYPE "Win32 (x86) Static Library" 0x0104
-
-CFG=cares - Win32 LIB Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "vc6cares.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "vc6cares.mak" CFG="cares - Win32 LIB Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "cares - Win32 DLL Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "cares - Win32 DLL Release" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "cares - Win32 LIB Debug" (based on "Win32 (x86) Static Library")
-!MESSAGE "cares - Win32 LIB Release" (based on "Win32 (x86) Static Library")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-
-!IF  "$(CFG)" == "cares - Win32 DLL Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "dll-debug"
-# PROP BASE Intermediate_Dir "dll-debug/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "dll-debug"
-# PROP Intermediate_Dir "dll-debug/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "DEBUGBUILD" /D "CARES_BUILDING_LIBRARY" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "DEBUGBUILD" /D "CARES_BUILDING_LIBRARY" /FD /GZ /c
-MTL=midl.exe
-# ADD BASE MTL /nologo /D "_DEBUG" /win32
-# ADD MTL /nologo /D "_DEBUG" /win32
-RSC=rc.exe
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 ws2_32.lib advapi32.lib kernel32.lib /nologo /dll /incremental:no /debug /machine:I386 /out:"dll-debug/caresd.dll" /implib:"dll-debug/caresd.lib" /pdbtype:con /fixed:no
-# ADD LINK32 ws2_32.lib advapi32.lib kernel32.lib /nologo /dll /incremental:no /debug /machine:I386 /out:"dll-debug/caresd.dll" /implib:"dll-debug/caresd.lib" /pdbtype:con /fixed:no
-
-!ELSEIF  "$(CFG)" == "cares - Win32 DLL Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "dll-release"
-# PROP BASE Intermediate_Dir "dll-release/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "dll-release"
-# PROP Intermediate_Dir "dll-release/obj"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-CPP=cl.exe
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "CARES_BUILDING_LIBRARY" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "CARES_BUILDING_LIBRARY" /FD /c
-MTL=midl.exe
-# ADD BASE MTL /nologo /D "NDEBUG" /win32
-# ADD MTL /nologo /D "NDEBUG" /win32
-RSC=rc.exe
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 ws2_32.lib advapi32.lib kernel32.lib /nologo /dll /pdb:none /machine:I386 /out:"dll-release/cares.dll" /implib:"dll-release/cares.lib" /fixed:no /release /incremental:no
-# ADD LINK32 ws2_32.lib advapi32.lib kernel32.lib /nologo /dll /pdb:none /machine:I386 /out:"dll-release/cares.dll" /implib:"dll-release/cares.lib" /fixed:no /release /incremental:no
-
-!ELSEIF  "$(CFG)" == "cares - Win32 LIB Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "lib-debug"
-# PROP BASE Intermediate_Dir "lib-debug/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "lib-debug"
-# PROP Intermediate_Dir "lib-debug/obj"
-# PROP Target_Dir ""
-CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "DEBUGBUILD" /D "CARES_BUILDING_LIBRARY" /D "CARES_STATICLIB" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "..\.." /D "_DEBUG" /D "WIN32" /D "DEBUGBUILD" /D "CARES_BUILDING_LIBRARY" /D "CARES_STATICLIB" /FD /GZ /c
-RSC=rc.exe
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo /out:"lib-debug/libcaresd.lib" /machine:I386
-# ADD LIB32 /nologo /out:"lib-debug/libcaresd.lib" /machine:I386
-
-!ELSEIF  "$(CFG)" == "cares - Win32 LIB Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "lib-release"
-# PROP BASE Intermediate_Dir "lib-release/obj"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "lib-release"
-# PROP Intermediate_Dir "lib-release/obj"
-# PROP Target_Dir ""
-CPP=cl.exe
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "CARES_BUILDING_LIBRARY" /D "CARES_STATICLIB" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\.." /D "NDEBUG" /D "WIN32" /D "CARES_BUILDING_LIBRARY" /D "CARES_STATICLIB" /FD /c
-RSC=rc.exe
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo /out:"lib-release/libcares.lib" /machine:I386
-# ADD LIB32 /nologo /out:"lib-release/libcares.lib" /machine:I386
-
-!ENDIF 
-
-# Begin Target
-
-# Name "cares - Win32 DLL Debug"
-# Name "cares - Win32 DLL Release"
-# Name "cares - Win32 LIB Debug"
-# Name "cares - Win32 LIB Release"
-# Begin Group "Source Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\ares__close_sockets.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares__get_hostent.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares__read_line.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares__timeval.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_cancel.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_data.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_destroy.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_expand_name.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_expand_string.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_fds.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_free_hostent.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_free_string.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_gethostbyaddr.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_gethostbyname.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_getsock.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_init.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_library_init.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_llist.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_mkquery.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_nowarn.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_options.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_parse_a_reply.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_parse_aaaa_reply.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_parse_ns_reply.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_parse_ptr_reply.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_parse_srv_reply.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_parse_txt_reply.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_process.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_query.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_search.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_send.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_strcasecmp.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_strerror.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_timeout.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_version.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_writev.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\bitncmp.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\inet_net_pton.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\inet_ntop.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\windows_port.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\ares.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_build.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_data.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_dns.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_ipv6.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_library_init.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_llist.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_nowarn.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_private.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_rules.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_strcasecmp.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_version.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\ares_writev.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\bitncmp.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\inet_net_pton.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\inet_ntop.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\nameser.h
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\cares.rc
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/src/other/ares/vc/cares/vc6cares.dsw b/src/other/ares/vc/cares/vc6cares.dsw
deleted file mode 100644
index 5bad375..0000000
--- a/src/other/ares/vc/cares/vc6cares.dsw
+++ /dev/null
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "cares"=".\vc6cares.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
diff --git a/src/other/ares/vc/vc6aws.dsw b/src/other/ares/vc/vc6aws.dsw
deleted file mode 100644
index 9543a5a..0000000
--- a/src/other/ares/vc/vc6aws.dsw
+++ /dev/null
@@ -1,74 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "cares"=".\cares\vc6cares.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "acountry"=".\acountry\vc6acountry.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name cares
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Project: "adig"=".\adig\vc6adig.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name cares
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Project: "ahost"=".\ahost\vc6ahost.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name cares
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
diff --git a/src/other/ares/windows_port.c b/src/other/ares/windows_port.c
deleted file mode 100644
index 64096a5..0000000
--- a/src/other/ares/windows_port.c
+++ /dev/null
@@ -1,23 +0,0 @@
-#include "ares_setup.h"
-
-/* $Id$ */
-
-/* only do the following on windows
- */
-#if (defined(WIN32) || defined(WATT32)) && !defined(MSDOS)
-
-#ifdef __WATCOMC__
-/*
- * Watcom needs a DllMain() in order to initialise the clib startup code.
- */
-BOOL
-WINAPI DllMain (HINSTANCE hnd, DWORD reason, LPVOID reserved)
-{
-  (void) hnd;
-  (void) reason;
-  (void) reserved;
-  return (TRUE);
-}
-#endif
-
-#endif /* WIN32 builds only */
diff --git a/src/other/curl/Android.mk b/src/other/curl/Android.mk
deleted file mode 100644
index b8f3a0e..0000000
--- a/src/other/curl/Android.mk
+++ /dev/null
@@ -1,87 +0,0 @@
-# Google Android makefile for curl and libcurl
-#
-# Place the curl source (including this makefile) into external/curl/ in the
-# Android source tree.  Then build them with 'make curl' or just 'make libcurl'
-# from the Android root. Tested with Android 1.5
-#
-# Note: you must first create a curl_config.h file by running configure in the
-# Android environment. The only way I've found to do this is tricky. Perform a
-# normal Android build with libcurl in the source tree, providing the target
-# "showcommands" to make. The build will eventually fail (because curl_config.h
-# doesn't exist yet), but the compiler commands used to build curl will be
-# shown. Now, from the external/curl/ directory, run curl's normal configure
-# command with flags that match what Android itself uses. This will mean
-# putting the compiler directory into the PATH, putting the -I, -isystem and
-# -D options into CPPFLAGS, putting the -m, -f, -O and -nostdlib options into
-# CFLAGS, and putting the -Wl, -L and -l options into LIBS, along with the path
-# to the files libgcc.a, crtbegin_dynamic.o, and ccrtend_android.o. Remember
-# that the paths must be absolute since you will not be running configure from
-# the same directory as the Android make.  The normal cross-compiler options
-# must also be set.
-#
-# The end result will be a configure command that looks something like this
-# (the environment variable A is set to the Android root path):
-#
-#  A=`realpath ../..` && \
-#  PATH="$A/prebuilt/linux-x86/toolchain/arm-eabi-X/bin:$PATH" \
-#  ./configure --host=arm-linux CC=arm-eabi-gcc \
-#  CPPFLAGS="-I $A/system/core/include ..." \
-#  CFLAGS="-fno-exceptions -Wno-multichar ..." \
-#  LIB="$A/prebuilt/linux-x86/toolchain/arm-eabi-X/lib/gcc/arm-eabi/X\
-#  /interwork/libgcc.a ..." \
-#
-# Dan Fandrich
-# September 2009
-
-LOCAL_PATH:= $(call my-dir)
-
-common_CFLAGS := -Wpointer-arith -Wwrite-strings -Wunused -Winline -Wnested-externs -Wmissing-declarations -Wmissing-prototypes -Wno-long-long -Wfloat-equal -Wno-multichar -Wsign-compare -Wno-format-nonliteral -Wendif-labels -Wstrict-prototypes -Wdeclaration-after-statement -Wno-system-headers -DHAVE_CONFIG_H
-
-#########################
-# Build the libcurl library
-
-include $(CLEAR_VARS)
-include $(LOCAL_PATH)/lib/Makefile.inc
-CURL_HEADERS := \
-	curlbuild.h \
-	curl.h \
-	curlrules.h \
-	curlver.h \
-	easy.h \
-	mprintf.h \
-	multi.h \
-	stdcheaders.h \
-	typecheck-gcc.h \
-	types.h
-
-LOCAL_SRC_FILES := $(addprefix lib/,$(CSOURCES))
-LOCAL_C_INCLUDES += $(LOCAL_PATH)/include/
-LOCAL_CFLAGS += $(common_CFLAGS)
-
-LOCAL_COPY_HEADERS_TO := libcurl/curl
-LOCAL_COPY_HEADERS := $(addprefix include/curl/,$(CURL_HEADERS))
-
-LOCAL_MODULE:= libcurl
-
-include $(BUILD_STATIC_LIBRARY)
-
-
-#########################
-# Build the curl binary
-
-include $(CLEAR_VARS)
-include $(LOCAL_PATH)/src/Makefile.inc
-LOCAL_SRC_FILES := $(addprefix src/,$(CURL_SOURCES))
-
-LOCAL_MODULE := curl
-LOCAL_STATIC_LIBRARIES := libcurl
-LOCAL_SYSTEM_SHARED_LIBRARIES := libc
-
-LOCAL_C_INCLUDES += $(LOCAL_PATH)/include $(LOCAL_PATH)/lib
-
-# This will also need to include $(CURLX_ONES) in order to correctly build
-# a dynamic library
-LOCAL_CFLAGS += $(common_CFLAGS)
-
-include $(BUILD_EXECUTABLE)
-
diff --git a/src/other/curl/CHANGES b/src/other/curl/CHANGES
deleted file mode 100644
index b8b142b..0000000
--- a/src/other/curl/CHANGES
+++ /dev/null
@@ -1,2121 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-                                  Changelog
-
-Version 7.20.1 (14 April 2010)
-
-Daniel Stenberg (9 Apr 2010)
-- Prefixing the FTP quote commands with an asterisk really only worked for the
-  postquote actions. This is now fixed and test case 227 has been extended to
-  verify.
-
-Kamil Dudka (4 Apr 2010)
-- Eliminated a race condition in Curl_resolv_timeout().
-
-- Refactorized interface of Curl_ssl_recv()/Curl_ssl_send().
-
-- libcurl-NSS now provides more accurate messages and error codes in case of
-  client certificate problem.  Either during connection, or transfer phase.
-
-Daniel Stenberg (1 Apr 2010)
-- Matt Wixson found and fixed a bug in the SCP/SFTP area where the code
-  treated a 0 return code from libssh2 to be the same as EAGAIN while in
-  reality it isn't. The problem caused a hang in SFTP transfers from a
-  MessageWay server.
-
-Daniel Stenberg (28 Mar 2010)
-- Ben Greear: If you pass a URL to pop3 that does not contain a message ID as
-  part of the URL, it would previously ask for 'INBOX' which just causes the
-  pop3 server to return an error.
-    
-  Now libcurl treats en empty message ID as a request for LIST (list of pop3
-  message IDs).  User's code could then parse this and download individual
-  messages as desired.
-
-Daniel Stenberg (27 Mar 2010)
-- Ben Greear brought a patch that from now on allows all protocols to specify
-  name and user within the URL, in the same manner HTTP and FTP have been
-  allowed to in the past - although far from all of the libcurl supported
-  protocls actually have that feature in their URL definition spec.
-
-Daniel Stenberg (26 Mar 2010)
-- Ben Greear brought code that makes the rate limiting code for the easy
-  interface a bit smoother as it introduces sub-second sleeps during it and it
-  also takes the buffer sizes into account.
-
-Daniel Stenberg (24 Mar 2010)
-- Bob Richmond: There's an annoying situation where libcurl will read new HTTP
-  response data from a socket, then check if it's a timeout if one is set. If
-  the last packet received constitutes the end of the response body, libcurl
-  still treats it as a timeout condition and reports a message like:
-
-  "Operation timed out after 3000 milliseconds with 876 out of 876 bytes 
-  received"
-
-  It should only a timeout if the timer lapsed and we DIDN'T receive the end
-  of the response body yet.
-
-- Christopher Conroy fixed a problem with RTSP and GET_PARAMETER reported
-  to us by Massimo Callegari. There's a new test case 572 that verifies this
-  now.
-
-- The 'ares' subtree has been removed from the source repository. It was
-  always a separate project that sort of piggybacked on the curl project since
-  the dawn of times and now the time has come for it to go stand on its own
-  legs and continue living its own life. All details on c-ares and its new
-  source code repository is found at http://c-ares.haxx.se/
-
-Daniel Stenberg (23 Mar 2010)
-- Kenny To filed the bug report #2963679 with patch to fix a problem he
-  experienced with doing multi interface HTTP POST over a proxy using
-  PROXYTUNNEL. He found a case where it would connect fine but bits.tcpconnect
-  was not set correct so libcurl didn't work properly.
-
-  (http://curl.haxx.se/bug/view.cgi?id=2963679)
-
-- Akos Pasztory filed debian bug report #572276
-  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=572276 mentioning a problem
-  with a resource that returns chunked-encoded _and_ with a Content-Length
-  and libcurl failed to properly ignore the latter information.
-
-- Hauke Duden provided an example program that made the multi interface crash.
-  His example simply used the multi interface and did first one FTP transfer
-  and after completion it used a second easy handle and did another FTP
-  transfer on the same FTP server.
-
-  This triggered a bug in the "delayed easy handle kill" system that curl
-  uses: when an FTP connection is left alive it must keep an easy handle
-  around internally - only for the purpose of having an easy handle when it
-  later disconnects it. The code assumed that when the easy handle was removed
-  and an internal reference was made, that version could be killed later on
-  when a new easy handle came using the same connection. This was wrong as
-  Hauke's example showed that the removed handle wasn't killed for real until
-  later. This caused a double close attempt => segfault.
-
-Daniel Stenberg (22 Mar 2010)
-- Thomas Lopatic fixed the alarm()-based DNS timeout:
-
-  Looking at the code of Curl_resolv_timeout() in hostip.c, I think that in
-  case of a timeout, the signal handler for SIGALRM never gets removed. I
-  think that in my case it gets executed at some point later on when execution
-  has long left Curl_resolv_timeout() or even the cURL library.
-  
-  The code that is jumped to with siglongjmp() simply sets the error message
-  to "name lookup timed out" and then returns with CURLRESOLV_ERROR. I guess
-  that instead of simply returning without cleaning up, the code should have a
-  goto that jumps to the spot right after the call to Curl_resolv().
-
-Kamil Dudka (22 Mar 2010)
-- Douglas Steinwand contributed a patch fixing insufficient initialization in
-  Curl_clone_ssl_config()
-
-Daniel Stenberg (21 Mar 2010)
-- Ben Greear improved TFTP: the error code returning and the treatment
-  of TSIZE == 0 when uploading.
-
-- We've switched from CVS to git. See http://curl.haxx.se/source.html
-
-Kamil Dudka (19 Mar 2010)
-- Improved Curl_read() to not ignore the error returned from Curl_ssl_recv().
-
-Daniel Stenberg (15 Mar 2010)
-- Constantine Sapuntzakis brought a patch:
-
-  The problem mentioned on Dec 10 2009
-  (http://curl.haxx.se/bug/view.cgi?id=2905220) was only partially fixed.
-  Partially because an easy handle can be associated with many connections in
-  the cache (e.g. if there is a redirect during the lifetime of the easy
-  handle).  The previous patch only cleaned up the first one. The new fix now
-  removes the easy handle from all connections, not just the first one.
-
-Daniel Stenberg (6 Mar 2010)
-- Ben Greear brought a patch that fixed the rate limiting logic for TFTP when
-  the easy interface was used.
-
-Daniel Stenberg (5 Mar 2010)
-- Daniel Johnson provided fixes for building curl with the clang compiler.
-
-Yang Tse (5 Mar 2010)
-- Constantine Sapuntzakis detected and fixed a double free in builds done
-  with threaded resolver enabled (Windows default configuration) that would
-  get triggered when a curl handle is closed while doing DNS resolution.
-
-Daniel Stenberg (2 Mar 2010)
-- [Daniel Johnson] I've been trying to build libcurl with clang on Darwin and
-  ran into some issues with the GSSAPI tests in configure.ac. The tests first
-  try to determine the include dirs and libs and set CPPFLAGS and LIBS
-  accordingly. It then checks for the headers and finally sets LIBS a second
-  time, causing the libs to be included twice. The first setting of LIBS seems
-  redundant and should be left out, since the first part is otherwise just
-  about finding headers.
-
-  My second issue is that 'krb5-config --libs gssapi' on Darwin is less than
-  useless and returns junk that, while it happens to work with gcc, causes
-  clang to choke. For example, --libs returns $CFLAGS along with the libs,
-  which is really retarded. Simply setting 'LIBS="$LIBS -lgssapi_krb5
-  -lresolv"' on Darwin is sufficient.
-
-- Based on patch provided by Jacob Moshenko, the transfer logic now properly
-  makes sure that when using sub-second timeouts, there's no final bad 1000ms
-  wait. Previously, a sub-second timeout would often make the elapsed time end
-  up the time rounded up to the nearest second (e.g. 1s for 200ms timeout)
-
-- Andrei Benea filed bug report #2956698 and pointed out that the
-  CURLOPT_CERTINFO feature leaked memory due to a missing OpenSSL function
-  call. He provided the patch to fix it too.
-
-  http://curl.haxx.se/bug/view.cgi?id=2956698
-
-- Markus Duft pointed out in bug #2961796 that even though Interix has a
-  poll() function it doesn't quite work the way we want it so we must disable
-  it, and he also provided a patch for it.
-
-  http://curl.haxx.se/bug/view.cgi?id=2961796
-
-- Made the pingpong timeout code properly deal with the response timeout AND
-  the global timeout if set. Also, as was reported in the bug report #2956437
-  by Ryan Chan, the time stamp to use as basis for the per command timeout was
-  not set properly in the DONE phase for FTP (and not for SMTP) so I fixed
-  that just now. This was a regression compared to 7.19.7 due to the
-  conversion of FTP code over to the generic pingpong concepts.
-
-  http://curl.haxx.se/bug/view.cgi?id=2956437
-
-Daniel Stenberg (1 Mar 2010)
-- Ben Greear provided an update for TFTP that fixes upload.
-
-- Wesley Miaw reported bug #2958179 which identified a case of looping during
-  OpenSSL based SSL handshaking even though the multi interface was used and
-  there was no good reason for it.
-
-  http://curl.haxx.se/bug/view.cgi?id=2958179
-
-Daniel Stenberg (26 Feb 2010)
-- Pat Ray in bug #2958474 pointed out an off-by-one case when receiving a
-  chunked-encoding trailer.
-
-  http://curl.haxx.se/bug/view.cgi?id=2958474
-
-Daniel Fandrich (25 Feb 2010)
-- Fixed a couple of out of memory leaks and a segfault in the SMTP & IMAP code.
-
-Yang Tse (25 Feb 2010)
-- I fixed bug report #2958074 indicating
-  (http://curl.haxx.se/bug/view.cgi?id=2958074) that curl on Windows with
-  option --trace-time did not use local time when timestamping trace lines.
-  This could also happen on other systems depending on time souurce.
-
-Patrick Monnerat (22 Feb 2010)
-- Proper handling of STARTTLS on SMTP, taking CURLUSESSL_TRY into account.
-- SMTP falls back to RFC821 HELO when EHLO fails (and SSL is not required).
-- Use of true local host name (i.e.: via gethostname()) when available, as
-  default argument to SMTP HELO/EHLO.
-- Test case 804 for HELO fallback.
-
-Daniel Stenberg (20 Feb 2010)
-- Fixed the SMTP compliance by making sure RCPT TO addresses are specified
-  properly in angle brackets. Recipients provided with CURLOPT_MAIL_RCPT now
-  get angle bracket wrapping automatically by libcurl unless the recipient
-  starts with an angle bracket as then the app is assumed to deal with that
-  properly on its own.
-
-- I made the SMTP code expect a 250 response back from the server after the
-  full DATA has been sent, and I modified the test SMTP server to also send
-  that response. As usual, the DONE operation that is made after a completed
-  transfer is still not doable in a non-blocking way so this waiting for 250
-  is unfortunately made blockingly.
-
-Yang Tse (14 Feb 2010)
-- Overhauled test suite getpart() function. Fixing potential out of bounds
-  stack and memory overwrites triggered with huge test case definitions.
-
-Daniel Stenberg (13 Feb 2010)
-- Martin Hager reported and fixed a problem with a missing quote in libcurl.m4
-
-  (http://curl.haxx.se/bug/view.cgi?id=2951319)
-
-- Tom Donovan fixed the CURL_FORMAT_* defines when building with cmake.
-
-  (http://curl.haxx.se/bug/view.cgi?id=2951269)
-
-Daniel Stenberg (12 Feb 2010)
-- Jack Zhang reported a problem with SMTP: we wrongly used multiple addresses
-  in the same RCPT TO line, when they should be sent in separate single
-  commands. I updated test case 802 to verify this.
-
-- I also fixed a bad use of my_setopt_str() of CURLOPT_MAIL_RCPT in the curl
-  tool which made it try to output it as string for the --libcurl feature
-  which could lead to crashes.
-
-Yang Tse (11 Feb 2010)
-- Steven M. Schweda fixed VMS builder bad behavior when used in a batch job,
-  removed obsolete batch_compile.com and defines.com and updated VMS readme.
-
-Version 7.20.0 (9 February 2010)
-
-Daniel Stenberg (9 Feb 2010)
-- When downloading compressed content over HTTP and the app asked libcurl to
-  automatically uncompress it with the CURLOPT_ENCODING option, libcurl could
-  wrongly provide the callback with more data than the maximum documented
-  amount. An application could thus get tricked into badness if the maximum
-  limit was trusted to be enforced by libcurl itself (as it is documented).
-
-  This is further detailed and explained in the libcurl security advisory
-  20100209 at
-
-    http://curl.haxx.se/docs/adv_20100209.html
-
-Daniel Fandrich (3 Feb 2010)
-- Changed the Watcom makefiles to make them easier to keep in sync with
-  Makefile.inc since that can't be included directly.
-
-Yang Tse (2 Feb 2010)
-- Symbol CURL_FORMAT_OFF_T now obsoleted, will be removed in a future release,
-  symbol will not be available when building with CURL_NO_OLDIES defined. Use
-  of CURL_FORMAT_CURL_OFF_T is preferred since 7.19.0
-
-Daniel Stenberg (1 Feb 2010)
-- Using the multi_socket API, it turns out at times it seemed to "forget"
-  connections (which caused a hang). It turned out to be an existing (7.19.7)
-  bug in libcurl (that's been around for a long time) and it happened like
-  this:
-
-  The app calls curl_multi_add_handle() to add a new easy handle, libcurl will
-  then set it to timeout in 1 millisecond so libcurl will tell the app about
-  it.
-
-  The app's timeout fires off that there's a timeout, the app calls libcurl as
-  we so often document it:
-
-  do {
-   res = curl_multi_socket_action(... TIMEOUT ...);
-  } while(CURLM_CALL_MULTI_PERFORM == res);
-
-  And this is the problem number one:
-
-  When curl_multi_socket_action() is called with no specific handle, but only
-  a timeout-action, it will *only* perform actions within libcurl that are
-  marked to run at this time. In this case, the request would go from INIT to
-  CONNECT and return CURLM_CALL_MULTI_PERFORM. When the app then calls libcurl
-  again, there's no timer set for this handle so it remains in the CONNECT
-  state. The CONNECT state is a transitional state in libcurl so it reports no
-  sockets there, and thus libcurl never tells the app anything more about that
-  easy handle/connection.
-
-  libcurl _does_ set a 1ms timeout for the handle at the end of
-  multi_runsingle() if it returns CURLM_CALL_MULTI_PERFORM, but since the loop
-  is instant the new job is not ready to run at that point (and there's no
-  code that makes libcurl call the app to update the timout for this new
-  timeout). It will simply rely on that some other timeout will trigger later
-  on or that something else will update the timeout callback. This makes the
-  bug fairly hard to repeat.
-
-  The fix made to adress this issue:
-
-  We introduce a loop in lib/multi.c around all calls to multi_runsingle() and
-  simply check for CURLM_CALL_MULTI_PERFORM internally. This has the added
-  benefit that this goes in line with my long-term wishes to get rid of the
-  CURLM_CALL_MULTI_PERFORM all together from the public API.
-
-  The downside of this fix, is that the counter we return in 'running_handles'
-  in several of our public functions then gets a slightly new and possibly
-  confusing behavior during times:
-
-  If an app adds a handle that fails to connect (very quickly) it may just
-  as well never appear as a 'running_handle' with this fix. Previously it
-  would first bump the counter only to get it decreased again at next call.
-  Even I have used that change in handle counter to signal "end of a
-  transfer". The only *good* way to find the end of a individual transfer
-  is calling curl_multi_info_read() to see if it returns one.
-
-  Of course, if the app previously did the looping before it checked the
-  counter, it really shouldn't be any new effect.
-
-Yang Tse (26 Jan 2010)
-- Constantine Sapuntzakis' and Joshua Kwan's work done in the last four months
-  relative to the asynchronous DNS lookups, along with with some integration
-  adjustments I have done are finally committed to CVS.
-
-  Currently these enhancements will benefit builds done using c-ares on any
-  platform as well as Windows builds using the default threaded resolver.
-
-  This release does not make generally available POSIX threaded DNS lookups
-  yet. There is no configure option to enable this feature yet. It is possible
-  to experimantally try this feature running configure with compiler flags that
-  make simultaneous definition of preprocessor symbols USE_THREADS_POSIX and
-  HAVE_PTHREAD_H, as well as whatever reentrancy compiler flags and linker ones
-  are required to link and properly use pthread_* functions on each platform.
-
-Daniel Stenberg (26 Jan 2010)
-- Mike Crowe made libcurl return CURLE_COULDNT_RESOLVE_PROXY when it is the
-  proxy that cannot be resolved when using c-ares. This matches the behaviour
-  when not using c-ares.
-
-Björn Stenberg (23 Jan 2010)
-- Added a new flag: -J/--remote-header-name. This option tells the
-  -O/--remote-name option to use the server-specified Content-Disposition
-  filename instead of extracting a filename from the URL.
-
-Daniel Stenberg (21 Jan 2010)
-- Chris Conroy brought support for RTSP transfers, and with it comes 8(!) new
-  libcurl options for controlling what to get and how to receive posssibly
-  interleaved RTP data.
-
-Daniel Stenberg (20 Jan 2010)
-- As was pointed out on the http-state mailing list, the order of cookies in a
-  HTTP Cookie: header _needs_ to be sorted on the path length in the cases
-  where two cookies using the same name are set more than once using
-  (overlapping) paths. Realizing this, identically named cookies must be
-  sorted correctly. But detecting only identically named cookies and take care
-  of them individually is harder than just to blindly and unconditionally sort
-  all cookies based on their path lengths. All major browsers also already do
-  this, so this makes our behavior one step closer to them in the cookie area.
-
-  Test case 8 was the only one that broke due to this change and I updated it
-  accordingly.
-
-Daniel Stenberg (19 Jan 2010)
-- David McCreedy brought a fix and a new test case (129) to make libcurl work
-  again when downloading files over FTP using ASCII and it turns out that the
-  final size of the file is not the same as the initial size the server
-  reported. This is very common since servers don't take the newline
-  conversions into account.
-
-Kamil Dudka (14 Jan 2010)
-- Suppressed side effect of OpenSSL configure checks, which prevented NSS from
-  being properly detected under certain circumstances. It had been caused by
-  strange behavior of pkg-config when handling PKG_CONFIG_LIBDIR. pkg-config
-  distinguishes among empty and non-existent environment variable in that case.
-
-Daniel Stenberg (12 Jan 2010)
-- Gil Weber reported a peculiar flaw with the multi interface when doing SFTP
-  transfers: curl_multi_fdset() would return -1 and not set and file
-  descriptors several times during a transfer of a single file. It turned out
-  to be due to two different flaws now fixed. Gil's excellent recipe helped me
-  nail this.
-
-Daniel Stenberg (11 Jan 2010)
-- Made sure that the progress callback is repeatedly called at a regular
-  interval even during very slow connects.
-
-- The tests/runtests.pl script now checks to see if the test case that runs is
-  present in the tests/data/Makefile.am and outputs a notice message on the
-  screen if not. Each test file has to be included in that Makefile.am to get
-  included in release archives and forgetting to add files there is a common
-  mistake. This is an attempt to make it harder to forget.
-
-Daniel Stenberg (9 Jan 2010)
-- Johan van Selst found and fixed a OpenSSL session ref count leak:
-
-  ossl_connect_step3() increments an SSL session handle reference counter on
-  each call. When sessions are re-used this reference counter may be
-  incremented many times, but it will be decremented only once when done (by
-  Curl_ossl_session_free()); and the internal OpenSSL data will not be freed
-  if this reference count remains positive. When a session is re-used the
-  reference counter should be corrected by explicitly calling
-  SSL_SESSION_free() after each consecutive SSL_get1_session() to avoid
-  introducing a memory leak.
-
-  (http://curl.haxx.se/bug/view.cgi?id=2926284)
-
-Daniel Stenberg (7 Jan 2010)
-- Make sure the progress callback is called repeatedly even during very slow
-  name resolves when c-ares is used for resolving.
-
-Claes Jakobsson (6 Jan 2010)
-- Julien Chaffraix fixed so that the fragment part in an URL is not sent
-  to the server anymore.
-
-Kamil Dudka (3 Jan 2010)
-- Julien Chaffraix eliminated a duplicated initialization in singlesocket().
-
-Daniel Stenberg (2 Jan 2010)
-- Make curl support --ssl and --ssl-reqd instead of the previous FTP-specific
-  versions --ftp-ssl and --ftp-ssl-reqd as these options are now used to
-  control SSL/TLS for IMAP, POP3 and SMTP as well in addition to FTP. The old
-  option names are still working but the new ones are the ones listed and
-  documented.
-
-Daniel Stenberg (1 Jan 2010)
-- Ingmar Runge enhanced libcurl's FTP engine to support the PRET command. This
-  command is a special "hack" used by the drftpd server, but even though it is
-  a custom extension I've deemed it fine to add to libcurl since this server
-  seems to survive and people keep using it and want libcurl to support
-  it. The new libcurl option is named CURLOPT_FTP_USE_PRET, and it is also
-  usable from the curl tool with --ftp-pret. Using this option on a server
-  that doesn't support this command will make libcurl fail.
-
-  I added test cases 1107 and 1108 to verify the functionality.
-
-  The PRET command is documented at
-  http://www.drftpd.org/index.php/Distributed_PASV
-
-Yang Tse (30 Dec 2009)
-- Steven M. Schweda improved VMS build system, and Craig A. Berry helped
-  with the patch and testing.
-
-Daniel Stenberg (26 Dec 2009)
-- Renato Botelho and Peter Pentchev brought a patch that makes the libcurl
-  headers work correctly even on FreeBSD systems before v8.
-
-  (http://curl.haxx.se/bug/view.cgi?id=2916915)
-
-Daniel Stenberg (17 Dec 2009)
-- David Byron fixed Curl_ossl_cleanup to actually call ENGINE_cleanup when
-  available.
-
-- Follow-up fix for the proxy fix I did for Jon Nelson's bug. It turned out I
-  was a bit too quick and broke test case 1101 with that change. The order of
-  some of the setups is sensitive. I now changed it slightly again to make
-  sure we do them in this order:
-
-  1 - parse URL and figure out what protocol is used in the URL
-  2 - prepend protocol:// to URL if missing
-  3 - parse name+password off URL, which needs to know what protocol is used
-      (since only some allows for name+password in the URL)
-  4 - figure out if a proxy should be used set by an option
-  5 - if no proxy option, check proxy environment variables
-  6 - run the protocol-specific setup function, which needs to have the proxy
-      already set
-
-Daniel Stenberg (15 Dec 2009)
-- Jon Nelson found a regression that turned out to be a flaw in how libcurl
-  detects and uses proxies based on the environment variables. If the proxy
-  was given as an explicit option it worked, but due to the setup order
-  mistake proxies would not be used fine for a few protocols when picked up
-  from '[protocol]_proxy'. Obviously this broke after 7.19.4. I now also added
-  test case 1106 that verifies this functionality.
-
-  (http://curl.haxx.se/bug/view.cgi?id=2913886)
-
-Daniel Stenberg (12 Dec 2009)
-- IMAP, POP3 and SMTP support and their TLS versions (including IMAPS, POP3S
-  and SMTPS) are now supported. The current state may not yet be solid, but
-  the foundation is in place and the test suite has some initial support for
-  these protocols. Work will now persue to make them nice libcurl citizens
-  until release.
-
-  The work with supporting these new protocols was sponsored by
-  networking4all.com - thanks!
-
-Daniel Stenberg (10 Dec 2009)
-- Siegfried Gyuricsko found out that the curl manual said --retry would retry
-  on FTP errors in the transient 5xx range. Transient FTP errors are in the
-  4xx range. The code itself only tried on 5xx errors that occured _at login_.
-  Now the retry code retries on all FTP transfer failures that ended with a
-  4xx response.
-
-  (http://curl.haxx.se/bug/view.cgi?id=2911279)
-
-- Constantine Sapuntzakis figured out a case which would lead to libcurl
-  accessing alredy freed memory and thus crash when using HTTPS (with
-  OpenSSL), multi interface and the CURLOPT_DEBUGFUNCTION and a certain order
-  of cleaning things up. I fixed it.
-
-  (http://curl.haxx.se/bug/view.cgi?id=2905220)
-
-Daniel Stenberg (7 Dec 2009)
-- Martin Storsjo made libcurl use the Expect: 100-continue header for posts
-  with unknown size. Previously it was only used for posts with a known size
-  larger than 1024 bytes.
-
-Daniel Stenberg (1 Dec 2009)
-- If the Expect: 100-continue header has been set by the application through
-  curl_easy_setopt with CURLOPT_HTTPHEADER, the library should set
-  data->state.expect100header accordingly - the current code (in 7.19.7 at
-  least) doesn't handle this properly. Martin Storsjo provided the fix!
-
-Yang Tse (28 Nov 2009)
-- Added Diffie-Hellman parameters to several test harness certificate files in
-  PEM format. Required by several stunnel versions used by our test harness.
-
-Daniel Stenberg (28 Nov 2009)
-- Markus Koetter provided a polished and updated version of Chad Monroe's TFTP
-  rework patch that now integrates TFTP properly into libcurl so that it can
-  be used non-blocking with the multi interface and more. BLKSIZE also works.
-
-  The --tftp-blksize option was added to allow setting the TFTP BLKSIZE from
-  the command line.
-
-Daniel Stenberg (26 Nov 2009)
-- Extended and fixed the change I did on Dec 11 for the the progress
-  meter/callback during FTP command/response sequences. It turned out it was
-  really lame before and now the progress meter SHOULD get called at least
-  once per second.
-
-Daniel Stenberg (23 Nov 2009)
-- Bjorn Augustsson reported a bug which made curl not report any problems even
-  though it failed to write a very small download to disk (done in a single
-  fwrite call). It turned out to be because fwrite() returned success, but
-  there was insufficient error-checking for the fclose() call which tricked
-  curl to believe things were fine.
-
-Yang Tse (23 Nov 2009)
-- David Byron modified Makefile.dist vc8 and vc9 targets in order to allow
-  finer granularity control when generating src and lib makefiles.
-
-Yang Tse (22 Nov 2009)
-- I modified configure to force removal of the curlbuild.h file included in
-  distribution tarballs for use by non-configure systems. As intended, this
-  would get overwriten when doing in-tree builds. But VPATH builds would end
-  having two curlbuild.h files, one in the source tree and another in the
-  build tree. With the modification I introduced 5 Nov 2009 this could become
-  an issue when running libcurl's test suite.
-
-Daniel Stenberg (20 Nov 2009)
-- Constantine Sapuntzakis identified a write after close, as the sockets were
-  closed by libcurl before the SSL lib were shutdown and they may write to its
-  socket. Detected to at least happen with OpenSSL builds.
-
-- Jad Chamcham pointed out a bug with connection re-use. If a connection had
-  CURLOPT_HTTPPROXYTUNNEL enabled over a proxy, a subsequent request using the
-  same proxy with the tunnel option disabled would still wrongly re-use that
-  previous connection and the outcome would only be badness.
-
-Yang Tse (18 Nov 2009)
-- I modified the memory tracking system to make it intolerant with zero sized
-  malloc(), calloc() and realloc() function calls.
-
-Daniel Stenberg (17 Nov 2009)
-- Constantine Sapuntzakis provided another fix for the DNS cache that could
-  end up with entries that wouldn't time-out:
-
-  1. Set up a first web server that redirects (307) to a http://server:port
-     that's down
-  2. Have curl connect to the first web server using curl multi
-
-  After the curl_easy_cleanup call, there will be curl dns entries hanging
-  around with in_use != 0.
-
-  (http://curl.haxx.se/bug/view.cgi?id=2891591)
-
-- Marc Kleine-Budde fixed: curl saved the LDFLAGS set during configure into
-  its pkg-config file.  So -Wl stuff ended up in the .pc file, which is really
-  bad, and breaks if there are multiple -Wl in our LDFLAGS (which are in
-  PTXdist). bug #2893592 (http://curl.haxx.se/bug/view.cgi?id=2893592)
-
-Kamil Dudka (15 Nov 2009)
-- David Byron improved the configure script to use pkg-config to find OpenSSL
-  (and in particular the list of required libraries) even if a path is given
-  as argument to --with-ssl
-
-Yang Tse (15 Nov 2009)
-- I removed enable-thread / disable-thread configure option. These were only
-  placebo options. The library is always built as thread safe as possible on
-  every system.
-
-Claes Jakobsson (14 Nov 2009)
-- curl-config now accepts '--configure' to see what arguments was
-  passed to the configure script when building curl.
-
-Daniel Stenberg (14 Nov 2009)
-- Claes Jakobsson restored the configure functionality to detect NSS when
-  --with-nss is set but not "yes".
-
-  I think we can still improve that to check for pkg-config in that path etc,
-  but at least this patch brings back the same functionality we had before.
-
-- Camille Moncelier added support for the file type SSL_FILETYPE_ENGINE for
-  the client certificate. It also disable the key name test as some engines
-  can select a private key/cert automatically (When there is only one key
-  and/or certificate on the hardware device used by the engine)
-
-Yang Tse (14 Nov 2009)
-- Constantine Sapuntzakis provided the fix that ensures that an SSL connection
-  won't be reused unless protection level for peer and host verification match.
-
-  I refactored how preprocessor symbol _THREAD_SAFE definition is done.
-
-Kamil Dudka (12 Nov 2009)
-- Kevin Baughman provided a fix preventing libcurl-NSS from crash on doubly
-  closed NSPR descriptor. The issue was hard to find, reported several times
-  before and always closed unresolved. More info at the RH bug:
-  https://bugzilla.redhat.com/534176
-
-- libcurl-NSS now tries to reconnect with TLS disabled in case it detects
-  a broken TLS server. However it does not happen if SSL version is selected
-  manually. The approach was originally taken from PSM. Kaspar Brand helped me
-  to complete the patch. Original bug reports:
-  https://bugzilla.redhat.com/525496
-  https://bugzilla.redhat.com/527771
-
-Yang Tse (12 Nov 2009)
-- I modified configure script to make the getaddrinfo function check also
-  verify if the function is thread safe.
-
-Yang Tse (11 Nov 2009)
-- Marco Maggi reported that compilation failed when configured --with-gssapi
-  and GNU GSS installed due to a missing mutual exclusion of header files in
-  the Kerberos 5 code path. He also verified that my patch worked for him.
-
-Daniel Stenberg (11 Nov 2009)
-- Constantine Sapuntzakis posted bug #2891595
-  (http://curl.haxx.se/bug/view.cgi?id=2891595) which identified how an entry
-  in the DNS cache would linger too long if the request that added it was in
-  use that long. He also provided the patch that now makes libcurl capable of
-  still doing a request while the DNS hash entry may get timed out.
-
-- Christian Schmitz noticed that the progress meter/callback was not properly
-  used during the FTP connection phase (after the actual TCP connect), while
-  it of course should be. I also made the speed check get called correctly so
-  that really slow servers will trigger that properly too.
-
-Kamil Dudka (5 Nov 2009)
-- Dropped misleading timeouts in libcurl-NSS and made sure the SSL socket works
-  in non-blocking mode.
-
-Yang Tse (5 Nov 2009)
-- I removed leading 'curl' path on the 'curlbuild.h' include statement in
-  curl.h, adjusting auto-makefiles include path, to enhance portability to
-  OS's without an orthogonal directory tree structure such as OS/400.
-
-Daniel Stenberg (4 Nov 2009)
-- I fixed several problems with the transfer progress meter. It showed the
-  wrong percentage for small files, most notable for <1000 bytes and could
-  easily end up showing more than 100% at the end. It also didn't show any
-  percentage, transfer size or estimated transfer times when transferring
-  less than 100 bytes.
-
-Version 7.19.7 (4 November 2009)
-
-Daniel Stenberg (2 Nov 2009)
-- As reported independent by both Stan van de Burgt and Didier Brisebourg,
-  CURLINFO_SIZE_DOWNLOAD (the -w variable size_download) didn't work when
-  getting data from ldap!
-
-Daniel Stenberg (31 Oct 2009)
-- Gabriel Kuri reported a problem with CURLINFO_CONTENT_LENGTH_DOWNLOAD if the
-  download was 0 bytes, as libcurl would then return the size as unknown (-1)
-  and not 0. I wrote a fix and test case 566 to verify it.
-
-Daniel Stenberg (30 Oct 2009)
-- Liza Alenchery mentioned a problem with re-used SCP connection when a bad
-  auth is used, as it caused a crash. I failed to repeat the issue, but still
-  made a change that now forces the TCP connection used for a freed SCP
-  session to get closed and not be re-used.
-
-- "Tom" posted a bug report that mentioned how libcurl did wrong when doing a
-  POST using a read callback, with Digest authentication and
-  "Transfer-Encoding: chunked" enforced.  I would then cause the first request
-  to be wrongly sent and then basically hang until the server closed the
-  connection. I fixed the problem and added test case 565 to verify it.
-
-Daniel Stenberg (25 Oct 2009)
-- Dima Barsky made the curl cookie parser accept cookies even with blank or
-  unparsable expiry dates and then treat them as session cookies - previously
-  libcurl would reject cookies with a date format it couldn't parse. Research
-  shows that the major browser treat such cookies as session cookies. I
-  modified test 8 and 31 to verify this.
-
-Daniel Stenberg (21 Oct 2009)
-- Attempt to use pkg-config for finding out libssh2 installation details
-  during configure.
-
-- A patch in bug report #2883177 (http://curl.haxx.se/bug/view.cgi?id=2883177)
-  by Johan van Selst introduced the --crlfile option to curl, which makes curl
-  tell libcurl about a file with CRL (certificate revocation list) data to
-  read.
-
-Daniel Stenberg (18 Oct 2009)
-- Ray Dassen provided a patch in Debian's bug tracker (bug number #551461)
-  that now makes curl_getdate(3) actually handles RFC 822 formatted dates that
-  use the "single letter military timezones".
-  http://www.rfc-ref.org/RFC-TEXTS/822/chapter5.html has the details.
-
-- Fixed memory leak in the SCP/SFTP code as it never freed the knownhosts
-  data!
-
-- John Dennis filed bug report #2873666
-  (http://curl.haxx.se/bug/view.cgi?id=2873666) which identified a problem
-  which made libcurl loop infinitely when given incorrect credentials when
-  using HTTP GSS negotiate authentication. He also provided a small and simple
-  patch for it.
-
-- Kevin Baughman found a double close() problem with libcurl-NSS, as when
-  libcurl called NSS to close the SSL "session" it also closed the actual
-  socket.
-
-Yang Tse (17 Oct 2009)
-- Bug report #2866724 indicated
-  (http://curl.haxx.se/bug/view.cgi?id=2866724) that curl on Windows failed
-  when writing files whose file names originally contained characters which
-  are not valid for file names on Windows. Dan Fandrich provided an initial
-  patch and another revised one to fix this issue.
-
-Daniel Stenberg (1 Oct 2009)
-- Tom Mueller correctly reported in bug report #2870221
-  (http://curl.haxx.se/bug/view.cgi?id=2870221) that libcurl returned an
-  incorrect return code from the internal trynextip() function which caused
-  him grief. This is a regression that was introduced in 7.19.1 and I find it
-  strange it hasn't hit us harder, but I won't persue into figuring out
-  exactly why.
-
-- Constantine Sapuntzakis: The current implementation will always set
-  SO_SNDBUF to CURL_WRITE_SIZE even if the SO_SNDBUF starts out larger.  The
-  patch doesn't do a setsockopt if SO_SNDBUF is already greater than
-  CURL_WRITE_SIZE. This should help folks who have set up their computer with
-  large send buffers.
-
-Daniel Stenberg (27 Sep 2009)
-- I introduced a maximum limit for received HTTP headers. It is controlled by
-  the define CURL_MAX_HTTP_HEADER which is even exposed in the public header
-  file to allow for users to fairly easy rebuild libcurl with a modified
-  limit. The rationale for a fixed limit is that libcurl is realloc()ing a
-  buffer to be able to put a full header into it, so that it can call the
-  header callback with the entire header, but that also risk getting it into
-  trouble if a server by mistake or willingly sends a header that is more or
-  less without an end. The limit is set to 100K.
-
-Daniel Stenberg (26 Sep 2009)
-- John P. McCaskey posted a bug report that showed how libcurl did wrong when
-  saving received cookies with no given path, if the path in the request had a
-  query part. That is means a question mark (?) and characters on the right
-  side of that. I wrote test case 1105 and fixed this problem.
-
-Kamil Dudka (26 Sep 2009)
-- Implemented a protocol independent way to specify blocking direction, used by
-  transfer.c for blocking. It is currently used only by SCP and SFTP protocols.
-  This enhancement resolves an issue with 100% CPU usage during SFTP upload,
-  reported by Vourhey.
-
-Daniel Stenberg (25 Sep 2009)
-- Chris Mumford filed bug report #2861587
-  (http://curl.haxx.se/bug/view.cgi?id=2861587) identifying that libcurl used
-  the OpenSSL function X509_load_crl_file() wrongly and failed if it would
-  load a CRL file with more than one certificate within. This is now fixed.
-
-Daniel Stenberg (16 Sep 2009)
-- Sven Anders reported that we introduced a cert verfication flaw for OpenSSL-
-  powered libcurl in 7.19.6. If there was a X509v3 Subject Alternative Name
-  field in the certficate it had to match and so even if non-DNS and non-IP
-  entry was present it caused the verification to fail.
-
-Daniel Fandrich (15 Sep 2009)
-- Moved the libssh2 checks after the SSL library checks. This helps when
-  statically linking since libssh2 needs the SSL library link flags to be
-  set up already to satisfy its dependencies. This wouldn't be necessary if
-  the libssh2 configure check was changed to use pkg-config since the
-  --static flag would add the dependencies automatically.
-
-Yang Tse (14 Sep 2009)
-- Revert Joshua Kwan's patch committed 11 Sep 2009.
-
-  Some systems poll function sets POLLHUP in revents without setting
-  POLLIN, and sets POLLERR without setting POLLIN and POLLOUT. In some
-  libcurl code execution paths this could trigger busy wait loops with
-  high CPU usage until a timeout condition aborted the loop.
-
-  The reverted patch addressed the above issue for a very specific case,
-  when awaiting c-ares to resolve. A libcurl-wide fix for Curl_poll now
-  superceeds this one.
-
-Guenter Knauf (11 Sep 2009)
-- Joshua Kwan provided a patch to pass POLLERR / POLLHUP back to c-ares.
-  This fixes a loop problem with high CPU usage.
-
-Daniel Stenberg (10 Sep 2009)
-- Claes Jakobsson fixed a problem with cookie expiry dates at exctly the epoch
-  start second "Thu Jan 1 00:00:00 GMT 1970" as the date parser then returns 0
-  which internally then is treated as a session cookie. That particular date
-  is now made to get the value of 1.
-
-Daniel Stenberg (2 Sep 2009)
-- Daniel Johnson found a flaw in the code converting sftp-errors to libcurl
-  errors.
-
-Daniel Stenberg (1 Sep 2009)
-- Peter Sylvester made a debug feature for Curl_resolv() that now will force
-  libcurl to resolve 'localhost' whatever name you use in the URL *if* you set
-  the --interface option to (exactly) "LocalHost". This will enable us to
-  write tests for custom hosts names but still use a local host server.
-
-- configure now tries to use pkg-config for a number of sub-dependencies even
-  when cross-compiling. The key to success is then you properly setup
-  PKG_CONFIG_PATH before invoking configure.
-
-  I also improved how NSS is detected by trying nss-config if pkg-config isn't
-  present, and as a last resort just use the lib name and force the user to
-  setup the LIBS/LDFLAGS/CFLAGS etc properly. The previous last resort would
-  add a range of various libs that would almost never be quite correct.
-
-Daniel Stenberg (31 Aug 2009)
-- When using the multi interface with FTP and you asked for NOBODY, you did no
-  QUOTE commands and the request used the same path as the connection had
-  already changed to, it would decide that no commands would be necessary for
-  the "DO" action and that was not handled properly but libcurl would instead
-  hang.
-
-Kamil Dudka (28 Aug 2009)
-- Improved error message for not matching certificate subject name in
-  libcurl-NSS. Originally reported at:
-  https://bugzilla.redhat.com/show_bug.cgi?id=516056#c9
-
-Patrick Monnerat (24 Aug 2009)
-- Introduced a SYST-based test to properly set-up name format when dealing
-  with the OS/400 FTP server.
-
-- Fixed an ftp_readresp() bug preventing detection of failing control socket
-  and causing FTP client to loop forever.
-
-Daniel Stenberg (24 Aug 2009)
-- Marc de Bruin pointed out that configure --with-gnutls=PATH didn't work
-  properly and provided a fix. http://curl.haxx.se/bug/view.cgi?id=2843008
-
-- Eric Wong introduced support for the new option -T. (dot) that makes curl
-  read stdin in a non-blocking fashion. This also brings back -T- (minus) to
-  the previous blocking behavior since it could break stuff for people at
-  times.
-
-Michal Marek (21 Aug 2009)
-- With CURLOPT_PROXY_TRANSFER_MODE, avoid sending invalid URLs like
-  ftp://example.com;type=i if the user specified ftp://example.com without the
-  slash.
-
-Daniel Stenberg (21 Aug 2009)
-- Andre Guibert de Bruet pointed out a missing return code check for a
-  strdup() that could lead to segfault if it returned NULL. I extended his
-  suggest patch to now have Curl_retry_request() return a regular return code
-  and better check that.
-
-- Lots of good work by Krister Johansen, mostly related to pipelining:
-
-  Fix SIGSEGV on free'd easy_conn when pipe unexpectedly breaks
-  Fix data corruption issue with re-connected transfers
-  Fix use after free if we're completed but easy_conn not NULL
-
-Kamil Dudka (13 Aug 2009)
-- Changed NSS code to not ignore the value of ssl.verifyhost and produce more
-  verbose error messages. Originally reported at:
-  https://bugzilla.redhat.com/show_bug.cgi?id=516056
-
-Daniel Stenberg (12 Aug 2009)
-- Karl Moerder fixed the Makefile.vc* makefiles to include the new file
-  nonblock.c so that they work fine again
-
-- I expanded test 517 with a bunch of more dates that originate from the
-  Chrome browser test suite. It turns out most of them get parsed the same
-  way.
-
-Version 7.19.6 (12 August 2009)
-
-Daniel Stenberg (12 Aug 2009)
-- Carsten Lange reported a bug and provided a patch for TFTP upload and the
-  sending of the TSIZE option. I don't like fixing bugs just hours before
-  a release, but since it was broken and the patch fixes this for him I decided
-  to get it in anyway.
-
-Daniel Stenberg (11 Aug 2009)
-- Peter Sylvester made the HTTPS test server use specific certificates for
-  each test, so that the test suite can now be used to actually test the
-  verification of cert names etc. This made an error show up in the OpenSSL-
-  specific code where it would attempt to match the CN field even if a
-  subjectAltName exists that doesn't match. This is now fixed and verified
-  in test 311.
-
-- Benbuck Nason posted the bug report #2835196
-  (http://curl.haxx.se/bug/view.cgi?id=2835196), fixing a few compiler
-  warnings when mixing ints and bools.
-
-Daniel Fandrich (10 Aug 2009)
-- Fixed a memory leak in the FTP code and an off-by-one heap buffer overflow.
-
-Daniel Fandrich (9 Aug 2009)
-- Fixed some memory leaks in the command-line tool that caused most of the
-  torture tests to fail.
-
-Daniel Stenberg (2 Aug 2009)
-- Curt Bogmine reported a problem with SNI enabled on a particular server. We
-  should introduce an option to disable SNI, but as we're in feature freeze
-  now I've addressed the obvious bug here (pointed out by Peter Sylvester): we
-  shouldn't try to enable SNI when SSLv2 or SSLv3 is explicitly selected.
-  Code for OpenSSL and GnuTLS was fixed. NSS doesn't seem to have a particular
-  option for SNI, or are we simply not using it?
-
-Daniel Stenberg (1 Aug 2009)
-- Scott Cantor posted the bug report #2829955
-  (http://curl.haxx.se/bug/view.cgi?id=2829955) mentioning the recent SSL cert
-  verification flaw found and exploited by Moxie Marlinspike. The presentation
-  he did at Black Hat is available here:
-  https://www.blackhat.com/html/bh-usa-09/bh-usa-09-archives.html#Marlinspike
-
-  Apparently at least one CA allowed a subjectAltName or CN that contain a
-  zero byte, and thus clients that assumed they would never have zero bytes
-  were exploited to OK a certificate that didn't actually match the site. Like
-  if the name in the cert was "example.com\0theatualsite.com", libcurl would
-  happily verify that cert for example.com.
-
-  libcurl now better uses the length of the extracted name, not using the zero
-  termination for getting the string length.
-
-  This fixing only made and needed in OpenSSL interfacing code.
-
-- Tanguy Fautre pointed out that OpenSSL's function RAND_screen() (present
-  only in some OpenSSL installs - like on Windows) isn't thread-safe and we
-  agreed that moving it to the global_init() function is a decent way to deal
-  with this situation.
-
-- Alexander Beedie provided the patch for a noproxy problem: If I have set
-  CURLOPT_NOPROXY to "*", or to a host that should not use a proxy, I actually
-  could still end up using a proxy if a proxy environment variable was set.
-
-Daniel Stenberg (27 Jul 2009)
-- All the quote options (CURLOPT_QUOTE, CURLOPT_POSTQUOTE and
-  CURLOPT_PREQUOTE) now accept a preceeding asterisk before the command to
-  send when using FTP, as a sign that libcurl shall simply ignore the response
-  from the server instead of treating it as an error. Not treating a 400+ FTP
-  response code as an error means that failed commands will not abort the
-  chain of commands, nor will they cause the connection to get disconnected.
-
-Daniel Stenberg (26 Jul 2009)
-- Johan van Selst posted bug report #2825989
-  (http://curl.haxx.se/bug/view.cgi?id=2825989) pointing out that
-  OpenSSL-powered libcurl didn't support the SHA-2 digest algorithm, and
-  provided the solution too: to use OpenSSL_add_all_algorithms() in addition
-  to the older SSLeay_* alternative. OpenSSL_add_all_algorithms was added in
-  OpenSSL 0.9.5
-
-Daniel Stenberg (23 Jul 2009)
-- Added CURLOPT_SSH_KNOWNHOSTS, CURLOPT_SSH_KEYFUNCTION, CURLOPT_SSH_KEYDATA.
-  They introduce known_host support for SSH keys to libcurl. See docs for
-  details. Note that this feature depends on a new enough libssh2 version, to
-  be supported in libssh2 1.2 and later (or current git repo at this time).
-
-Michal Marek (22 Jul 2009)
-- David Binderman found a memory and fd leak in lib/gtls.c:load_file()
-  (https://bugzilla.novell.com/523919). When looking at the code, I found that
-  also the ptr pointer can leak.
-
-Kamil Dudka (20 Jul 2009)
-- Claes Jakobsson improved the support for client certificates handling in
-  NSS-powered libcurl. Now the client certificates can be selected
-  automatically by a NSS built-in hook. Additionally pre-login to all PKCS11
-  slots is no more performed. It used to cause problems with HW tokens.
-
-- Fixed reference counting for NSS client certificates. Now the PEM reader
-  module should be always properly unloaded on Curl_nss_cleanup(). If the
-  unload fails though, libcurl will try to reuse the already loaded instance.
-
-Daniel Fandrich (15 Jul 2009)
-- Added nonblock.c to the non-automake makefiles (note that the dependencies
-  in the Watcom makefiles aren't quite correct).
-
-Michal Marek (15 Jul 2009)
-- Changed the description of CURLINFO_OS_ERRNO to make it clear that the
-  errno is not reset on success.
-
-Guenter Knauf (14 Jul 2009)
-- renamed generated config.h to curl_config.h to avoid any future clashes
-  with config.h from other projects.
-
-Daniel Stenberg (9 Jul 2009)
-- Eric Wong introduced curlx_nonblock() that the curl tool now (re-)uses for
-  setting a file descriptor non-blocking. Used by the functionality Eric
-  himself brough on June 15th.
-
-Daniel Stenberg (8 Jul 2009)
-- Constantine Sapuntzakis posted bug report #2813123
-  (http://curl.haxx.se/bug/view.cgi?id=2813123) and an a patch that fixes the
-  problem:
-
-  Url A is accessed using auth. Url A redirects to Url B (on a different
-  server0. Url B reuses a persistent connection. Url B has auth, even though
-  it's on a different server.
-
-  Note: if Url B does not reuse a persistent connection, auth is not sent.
-
-  reason:
-
-  data->state.first_host is not initialized becuase Curl_http_connect is not
-  called when a connection is reused.
-
-  Solution:
-
-  move initialization of data->state.first_host to Curl_http. No code before
-  Curl_http uses data->state.first_host anyway.
-
-Guenter Knauf (4 Jul 2009)
-- Markus Koetter provided a patch to avoid getnameinfo() usage which broke a
-  couple of both IPv4 and IPv6 autobuilds.
-
-Daniel Stenberg (29 Jun 2009)
-- Markus Koetter made CURLOPT_FTPPORT (and curl's -P/--ftpport) support a port
-  range if given colon-separated after the host name/address part. Like
-  "192.168.0.1:2000-10000"
-
-- Modified the separators used for CURLOPT_CERTINFO in multi-part outputs. I
-  don't know how they got wrong in the first place, but using this output
-  format makes it possible to quite easily separate the string into an array
-  of multiple items.
-
-Daniel Fandrich (16 June 2009)
-- Added a few more compiler warning options for gcc.
-
-Daniel Stenberg (16 Jun 2009)
-- Reuven Wachtfogel made curl -o - properly produce a binary output on windows
-  (no newline translations). Use -B/--use-ascii if you rather get the ascii
-  approach.
-
-Michal Marek (16 Jun 2009)
-- When doing non-anonymous ftp via http proxies and the password is not
-  provided in the url, add it there (squid needs this).
-
-Daniel Stenberg (15 Jun 2009)
-- Eric Wong's patch:
-
-  This allows curl(1) to be used as a client-side tunnel for arbitrary stream
-  protocols by abusing chunked transfer encoding in both the HTTP request and
-  HTTP response.  This requires server support for sending a response while a
-  request is still being read, of course.
-
-  If attempting to read from stdin returns EAGAIN, then we pause our sender.
-  This leaves curl to attempt to read from the socket while reading from stdin
-  (and thus sending) is paused.
-
-  This change was needed to allow successfully tunneling the git protocol over
-  HTTP (--no-buffer is needed, as well).
-
-Patrick Monnerat (15 Jun 2009)
-- Replaced use of standard C library rand()/srand() by our own pseudo-random
-  number generator.
-
-Yang Tse (11 Jun 2009)
-- I adapted testcurl script to allow building test harness programs when
-  cross-compiling for a *-*-mingw* host.
-
-Daniel Stenberg (10 Jun 2009)
-- Fabian Keil ran clang on the (lib)curl code, found a bunch of warnings and
-  contributed a range of patches to fix them.
-
-Yang Tse (10 Jun 2009)
-- I introduced configure script option --enable-curldebug which now allows
-  the decoupled enabling or disabling of the curl debug memory tracking
-  feature from the --enable-debug option which no longer controls this.
-
-  curl --version will list 'Debug' feature for debug enabled builds, and
-  will list 'TrackMemory' feature for curl debug memory tracking capable
-  builds. These features are independent and can be controlled when running
-  the configure script. When --enable-debug is given both features will be
-  enabled, unless some restriction prevents memory tracking from being used.
-
-  Internally, definition of preprocessor symbol DEBUGBUILD restricts code
-  which is only compiled for debug enabled builds. And symbol CURLDEBUG is
-  used to differentiate code which is _only_ used for memory tracking.
-
-Yang Tse (9 Jun 2009)
-- Daniel Steinberg pointed out that Curl_FormInit() in formdata.c was not
-  initializing the fread callback pointer and this triggered a compiler
-  warning, also provided a friendly suggestion on how to fix it.
-
-Daniel Stenberg (8 Jun 2009)
-- Claes Jakobsson provided a patch for libcurl-NSS that fixed a bad refcount
-  issue with client certs that caused issues like segfaults.
-  http://curl.haxx.se/mail/lib-2009-05/0316.html
-
-- Triggered by bug report #2798852 and the patch in there, I fixed configure
-  to detect gnutls build options with pkg-config only and not libgnutls-config
-  anymore since GnuTLS has stopped distributing that tool. If an explicit path
-  is given to configure, we will instead guess on how to link and use that
-  lib. I did not use the patch from the bug report.
-
-Yang Tse (8 Jun 2009)
-- Igor Novoseltsev adjusted Makefile.vxworks to get sources and headers
-  included from Makefile.inc, and provided docs\INSTALL VxWorks section.
-
-- I removed buildconf.bat from release and daily snapshot archives. This
-  file is only for CVS tree checkout builds.
-
-Daniel Stenberg (8 Jun 2009)
-- Eric Wong fixed --no-buffer to actually switch off output buffering. Been
-  broken since 7.19.0
-
-Bill Hoffman (6 Jun 2009)
-- Added some cmake docs and fixed socklen_t in the build.
-
-Yang Tse (5 Jun 2009)
-- John E. Malmberg provided VMS specific patch: "This fixes an existing bug
-  in urlglob.c where it was not converting the Curl Unix exit code to a VMS
-  DCL compatible exit code.  This fix required the enhancement described next.
-  This also adds an enhancement to main.c so that when curl is run under a
-  Unix shell like Bash on VMS, it will return the standard Unix exit codes
-  and messages." And another patch for docs/examples.
-
-  I introduced os-specific.c and os-specific.h for use in curl tool code
-  and adjusted John E. Malmberg's patch placement to use these new files
-  as an effort to prevent main.c from growing ad infinitum. Code already
-  existing in main.c which is OS specific should be moved into these files.
-
-Daniel Stenberg (4 June 2009)
-- Setting the Content-Length: header from your app when you do a POST or PUT
-  is almost always a VERY BAD IDEA. Yet there are still apps out there doing
-  this, and now recently it triggered a bug/side-effect in libcurl as when
-  libcurl sends a POST or PUT with NTLM, it sends an empty post first when it
-  knows it will just get a 401/407 back. If the app then replaced the
-  Content-Length header, it caused the server to wait for input that libcurl
-  wouldn't send. Aaron Oneal reported this problem in bug report #2799008
-  (http://curl.haxx.se/bug/view.cgi?id=2799008) and helped us verify the fix.
-
-Yang Tse (4 Jun 2009)
-- Igor Novoseltsev provided patches and information, that after some
-  adjustments to better fit curl's way of doing things, have resulted
-  in the posibility of building libcurl for VxWorks.
-
-Daniel Fandrich (2 June 2009)
-- Checked in a Google Android make file. To use it, you must first
-  create a config.h file by running configure in the Android environment,
-  which doesn't seem to be easy to do. If no easy way can be found, a
-  static config-android.h may need to be created and checked in to the
-  libcurl source tree.
-
-Daniel Stenberg (1 June 2009)
-- Claes Jakobsson fixed the configure script to better find and use NSS
-  without pkg-config.
-
-Yang Tse (1 Jun 2009)
-- John E. Malmberg provided a VMS specific clean-up for curl.h, and pointed
-  out that the configure script was failing to detect the timeval struct on
-  VMS when building with _XOPEN_SOURCE_EXTENDED undefined due to definition
-  taking place in socket.h instead of time.h.  I have adjusted configure
-  script to also include this header when checking struct timeval.
-
-Daniel Stenberg (27 May 2009)
-- Frank McGeough provided a small OpenSSL #include fix to make libcurl compile
-  fine with Nokia 5th edition 1.0 SDK for Symbian.
-
-- Andre Guibert de Bruet found a call to a OpenSSL function that didn't check
-  for a failure properly.
-
-- Mike Crowe pointed out that setting CURLOPT_USERPWD to NULL used to clear
-  the auth credentials back in 7.19.0 and earlier while now you have to set ""
-  to get the same effect. His patch brings back the ability to use NULL.
-
-- Claes Jakobsson fixed libcurl-NSS to build fine even without the
-  PK11_CreateGenericObject() function.
-
-Daniel Stenberg (25 May 2009)
-- bug report #2796358 (http://curl.haxx.se/bug/view.cgi?id=2796358) pointed
-  out that the cookie parser would leak memory when it parses cookies that are
-  received with domain, path etc set multiple times in the same header. While
-  such a cookie is questionable, they occur in the wild and libcurl no longer
-  leaks memory for them. I added such a header to test case 8.
-
-Daniel Fandrich (22 May 2009)
-- Removed some obsolete digest code that caused a valgrind error in test 551.
-
-Daniel Fandrich (20 May 2009)
-- Added "non-existing host" test keywords to make it easy to skip those
-  tests on machines that have broken DNS configurations (such as
-  those configured to use OpenDNS).
-
-Daniel Stenberg (19 May 2009)
-- Kamil Dudka brought the patch from the Redhat bug entry
-  https://bugzilla.redhat.com/show_bug.cgi?id=427966 which was libcurl closing
-  a bad file descriptor when closing down the FTP data connection.  Caolan
-  McNamara seems to be the original author of it.
-
-Version 7.19.5 (18 May 2009)
-
-Daniel Stenberg (17 May 2009)
-- James Bursa posted a patch to the mailing list that fixed a problem with
-  no_proxy which made it not skip the proxy if the URL entered contained a
-  user name. I added test case 1101 to verify.
-
-Daniel Stenberg (11 May 2009)
-- Balint Szilakszi reported a memory leak when libcurl did gzip decompression
-  of streams that had some parts (legitimately) missing. We now provide and use
-  a proper cleanup function for the content encoding submodule.
-  http://curl.haxx.se/mail/lib-2009-05/0092.html
-
-- Kamil Dudka provided a fix for libcurl-NSS reported by Michael Cronenworth
-  at https://bugzilla.redhat.com/show_bug.cgi?id=453612#c12
-
-  If an incorrect password is given while loading a private key, libcurl ends
-  up in an infinite loop consuming memory. The bug is critical.
-
-- I fixed the problem with doing NTLM, POST and then following a 302 redirect,
-  as reported by Ebenezer Ikonne (on curl-users) and Laurent Rabret (on
-  curl-library). The transfer was mistakenly marked to get more data to send
-  but since it didn't actually have that, it just hung there...
-
-Daniel Stenberg (10 May 2009)
-- Andre Guibert de Bruet correctly pointed out an over-alloc with one wasted
-  byte in the digest code.
-
-Yang Tse (9 May 2009)
-- Removed DOS and TPF package's subdirectory Makefile.am, it was only used
-  to include some files in the distribution tarball serving no other purpose.
-  Files from the DOS and TPF subdirectories are now included in the EXTRA_DIST
-  of the Makefile in the parent subdirectory.
-
-Yang Tse (8 May 2009)
-- Changed host name literal in several tests to one under the haxx.se domain.
-
-- Renamed vc6 workspace and project files to avoid filename clash when used
-  for conversion to later VS versions.
-
-Daniel Stenberg (8 May 2009)
-- Constantine Sapuntzakis fixed bug report #2784055
-  (http://curl.haxx.se/bug/view.cgi?id=2784055) identifying a problem to
-  connect to SOCKS proxies when using the multi interface. It turned out to
-  almost not work at all previously. We need to wait for the TCP connect to
-  be properly verified before doing the SOCKS magic.
-
-  There's still a flaw in the FTP code for this.
-
-Daniel Stenberg (7 May 2009)
-- Made the SO_SNDBUF setting for the data connection socket for ftp uploads as
-  well. See change 28 Apr 2009.
-
-Yang Tse (7 May 2009)
-- Fixed an issue affecting FTP transfers, introduced with the transfer.c
-  patch committed May 4.
-
-Daniel Stenberg (7 May 2009)
-- Man page *roff problems fixed thanks to input from Colin Watson. Problems
-  reported in the Debian package.
-
-- Vijay G filed bug report #2723236
-  (http://curl.haxx.se/bug/view.cgi?id=2723236) identifying a problem with
-  libcurl's TFTP code and its lack of dealing with the OACK packet.
-
-Yang Tse (5 May 2009)
-- Fixed the --ftp-port address of test #251 to the CLIENTIP address, and
-  reverted the change affecting test suite harness committed 4 May.
-
-Daniel Stenberg (5 May 2009)
-- Inspired by Michael Smith's session id fix for OpenSSL, I did the
-  corresponding fix in the GnuTLS code: make sure to store the new session id
-  in case the previous re-used one is rejected.
-
-Daniel Stenberg (4 May 2009)
-- Michael Smith posted bug report #2786255
-  (http://curl.haxx.se/bug/view.cgi?id=2786255) with a patch, identifying how
-  libcurl did not deal with SSL session ids properly if the server rejected a
-  re-use of one. Starting now, it will forget the rejected one and remember
-  the new. This change was for OpenSSL only, it is likely that other SSL lib
-  code needs similar fixes.
-
-Yang Tse (4 May 2009)
-- Applied David McCreedy's "transfer.c fixes for CURL_DO_LINEEND_CONV and
-  non-ASCII platform HTTP requests" patch addressing two HTTP PUT problems:
-  1) On non-ASCII platforms not all of the protocol portions of the PUT are
-  being translated to ASCII.  2) On all platforms the line endings of part of
-  the protocol portions are mangled from CRLF to CRCRLF if data->set.crlf or
-  data->set.prefer_ascii are set (depending on CURL_DO_LINEEND_CONV).
-
-- Applied David McCreedy's patch to fix test suite harness to allow test FTP
-  server and client on different machines, providing FTP client address when
-  running the FTP test server.
-
-Daniel Fandrich (3 May 2009)
-- Added and disabled test case 563 which shows KNOWN_BUGS #59.  The bug
-  report failed to mention that a proxy must be used to reproduce it.
-
-Yang Tse (2 May 2009)
-- Use a build-time configured curl_socklen_t data type instead of socklen_t.
-
-Yang Tse (1 May 2009)
-- Applied David McCreedy's patches "TPF-platform specific changes to various
-  files" and "http.c fix to Curl_proxyCONNECT for non-ASCII platforms", the
-  former with minor edits.
-
-Daniel Stenberg (30 Apr 2009)
-- I was going to fix issue #59 in KNOWN_BUGS
-
-  If the CURLOPT_PORT option is used on an FTP URL like
-  "ftp://example.com/file;type=A" the ";type=A" is stripped off.
-
-  I added test case 562 to verify, only to find out that I couldn't repeat
-  this bug so I hereby consider it not a bug anymore!
-
-Daniel Stenberg (29 Apr 2009)
-- Based on bug report #2723219 (http://curl.haxx.se/bug/view.cgi?id=2723219)
-  I've now made TFTP "connections" not being kept for re-use within libcurl.
-  TFTP is UDP-based so the benefit was really low (if even existing) to begin
-  with so instead of tracking down to fix this problem we instead removed the
-  re-use. I also enabled test case 1099 that I wrote a few days ago to verify
-  that this change fixes the reported problem.
-
-Daniel Stenberg (28 Apr 2009)
-- Constantine Sapuntzakis filed bug report #2783090
-  (http://curl.haxx.se/bug/view.cgi?id=2783090) pointing out that on windows
-  we need to grow the SO_SNDBUF buffer somewhat to get really good upload
-  speeds. http://support.microsoft.com/kb/823764 has the details. Friends
-  confirmed that simply adding 32 to CURL_MAX_WRITE_SIZE is enough.
-
-- Bug report #2709004 (http://curl.haxx.se/bug/view.cgi?id=2709004) by Tim
-  Chen pointed out how curl couldn't upload with resume when reading from a
-  pipe.
-
-  This ended up with the introduction of a new return code for the
-  CURLOPT_SEEKFUNCTION callback that basically says that the seek failed but
-  that libcurl may try to resolve the situation anyway. In our case this means
-  libcurl will attempt to instead read that much data from the stream instead
-  of seeking and that way curl can now upload with resume when data is read
-  from a stream!
-
-Daniel Stenberg (26 Apr 2009)
-- Bug report #2779733 (http://curl.haxx.se/bug/view.cgi?id=2779733) by Sven
-  Wegener pointed out that CURLINFO_APPCONNECT_TIME didn't work with the multi
-  interface and provided a patch that fixed the problem!
-
-Daniel Stenberg (24 Apr 2009)
-- Kamil Dudka fixed another NSS-related leak when client certs were used.
-
-- Bug report #2779245 (http://curl.haxx.se/bug/view.cgi?id=2779245) by Rainer
-  Koenig pointed out that the man page didn't tell that the *_proxy
-  environment variables can be specified lower case or UPPER CASE and the
-  lower case takes precedence,
-
-Daniel Fandrich (21 Apr 2009)
-- Added new libcurl source files to Amiga, RiscOS and VC6 build files.
-
-Yang Tse (21 Apr 2009)
-- Moved potential inclusion of system's malloc.h and memory.h header files to
-  setup_once.h.  Inclusion of each header file is based on the definition of
-  NEED_MALLOC_H and NEED_MEMORY_H respectively.
-
-  Renamed libcurl's memory.h to curl_memory.h
-
-Daniel Stenberg (20 Apr 2009)
-- Leanic Lefever reported a crash and did some detailed research on why and
-  how it occurs (http://curl.haxx.se/mail/lib-2009-04/0289.html). The
-  conclusion was that if an error is detected and Curl_done() is called for
-  the connection, ftp_done() could at times return another error code that
-  then would take precedence and that new code confused existing logic that
-  works for the first error code (CURLE_SEND_ERROR) only.
-
-- Gisle Vanem noticed that --libtool would produce bogus strings at times for
-  OBJECTPOINT options. Now we've introduced a new function - my_setopt_str -
-  within the app for setting plain string options to avoid the risk of this
-  mistake happening.
-
-Daniel Stenberg (17 Apr 2009)
-- Pramod Sharma reported and tracked down a bug when doing FTP over a HTTP
-  proxy. libcurl would then wrongly close the connection after each
-  request. In his case it had the weird side-effect that it killed NTLM auth
-  for the proxy causing an inifinite loop!
-
-  I added test case 1098 to verify this fix. The test case does however not
-  properly verify that the transfers are done persistently - as I couldn't
-  think of a clever way to achieve it right now - but you need to read the
-  stderr output after a test run to see that it truly did the right thing.
-
-Daniel Stenberg (13 Apr 2009)
-- bug report #2727981 (http://curl.haxx.se/bug/view.cgi?id=2727981) by Martin
-  Storsjö pointed out how setting CURLOPT_NOBODY to 0 could be downright
-  confusing as it set the method to either GET or HEAD. The example he showed
-  looked like:
-
-   curl_easy_setopt(curl, CURLOPT_PUT, 1);
-   curl_easy_setopt(curl, CURLOPT_NOBODY, 0);
-
-  The new way doesn't alter the method until the request is about to start. If
-  CURLOPT_NOBODY is then 1 the HTTP request will be HEAD. If CURLOPT_NOBODY is
-  0 and the request happens to have been set to HEAD, it will then instead be
-  set to GET. I believe this will be less surprising to users, and hopefully
-  not hit any existing users badly.
-
-- Toshio Kuratomi reported a memory leak problem with libcurl+NSS that turned
-  out to be leaking cacerts. Kamil Dudka helped me complete the fix. The issue
-  is found in Redhat's bug tracker:
-  https://bugzilla.redhat.com/show_bug.cgi?id=453612
-
-  There are still memory leaks present, but they seem to have other reasons.
-
-Daniel Fandrich (11 Apr 2009)
-- Added new libcurl source files to Symbian OS build files.
-- Improved Symbian support for SSL.
-
-Yang Tse (10 Apr 2009)
-- Daniel Johnson improved the MacOSX-Framework shell script to now perform all
-  the steps required to build a Mac OS X four way fat ppc/i386/ppc64/x86_64
-  libcurl.framework.  Four way fat framework requires OS X 10.5 SDK or later.
-
-Yang Tse (8 Apr 2009)
-- Removed Sun compilers preprocessor block from curlbuild.h.dist, this also
-  removes it from the curlbuild.h file originally distributed by the cURL
-  project as this file is intended for systems not capable of running the
-  configure script.  For those who have been building curl out of the source
-  code curl distribution tarball provided by curl.haxx.se the change implies
-  nothing.  Previous change in this area committed 2 Apr becomes irrelevant.
-
-Daniel Stenberg (6 Apr 2009)
-- I clarified in the docs that CURLOPT_SEEKFUNCTION should return 0 on success
-  and 1 on fatal errors. Previously it only mentioned non-zero on fatal
-  errors. This is a slight change in meaning, but it follows what we've done
-  elsewhere before and it opens up for LOTS of more useful return codes
-  whenever we can think of them...
-
-Yang Tse (2 Apr 2009)
-- Fix curl_off_t definition for builds done using Sun compilers and a
-  non-configured libcurl. In this case curl_off_t data type was gated
-  to the off_t data type which depends on the _FILE_OFFSET_BITS. This
-  configuration is exactly the unwanted configuration for our curl_off_t
-  data type which must not depend on such setting. This breaks ABI for
-  libcurl libraries built with Sun compilers which were built without
-  having run the configure script with _FILE_OFFSET_BITS different than
-  64 and using the ILP32 data model.
-
-Daniel Stenberg (1 Apr 2009)
-- Andre Guibert de Bruet fixed a NULL pointer use in an infof() call if a
-  strdup() call failed.
-
-Daniel Fandrich (31 Mar 2009)
-- Properly return an error code in curl_easy_recv (reported by Jim Freeman).
-
-Daniel Stenberg (18 Mar 2009)
-- Kamil Dudka brought a patch that enables 6 additional crypto algorithms when
-  NSS is used. These ciphers were added in NSS 3.4 and require to be enabled
-  explicitly.
-
-Daniel Stenberg (13 Mar 2009)
-- Use libssh2_version() to present the libssh2 version in case the libssh2
-  library is found to support it.
-
-Yang Tse (12 Mar 2009)
-- Added missing Curl_read() return code checking in TELNET transfers.
-
-- Pierre Brico found and fixed TELNET transfers not being aborted upon
-  a write callback failure.
-
-Daniel Stenberg (11 Mar 2009)
-- Kamil Dudka made the curl tool properly call curl_global_init() before any
-  other libcurl function.
-
-Yang Tse (11 Mar 2009)
-- Added missing TELNET timeout support for Windows builds. This issue was
-  reported by Pierre Brico.
-
-Daniel Stenberg (9 Mar 2009)
-- Frank Hempel found out a bug and provided the fix:
-
-  curl_easy_duphandle did not necessarily duplicate the CURLOPT_COOKIEFILE
-  option. It only enabled the cookie engine in the destination handle if
-  data->cookies is not NULL (where data is the source handle). In case of a
-  newly initialized handle which just had the cookie support enabled by a
-  curl_easy_setopt(handle, CURL_COOKIEFILE, "")-call, handle->cookies was
-  still NULL because the setopt-call only appends the value to
-  data->change.cookielist, hence duplicating this handle would not have the
-  cookie engine switched on.
-
-  We also concluded that the slist-functionality would be suitable for being
-  put in its own module rather than simply hanging out in lib/sendf.c so I
-  created lib/slist.[ch] for them.
-
-- Andreas Farber made the 'buildconf' script check for the presence of m4
-  scripts to make it detect a bad checkout earlier. People with older
-  checkouts who don't do cvs update with the -d option won't get the new dirs
-  and then will get funny outputs that can be a bit hard to understand and
-  fix.
-
-Daniel Stenberg (8 Mar 2009)
-- Andre Guibert de Bruet found and fixed a code segment in ssluse.c where the
-  allocation of the memory BIO was not being properly checked.
-
-- Andre Guibert de Bruet fixed the gnutls-using code: There are a few places
-  in the gnutls code where we were checking for negative values for errors,
-  when the man pages state that GNUTLS_E_SUCCESS is returned on success and
-  other values indicate error conditions.
-
-- Bill Egert pointed out (http://curl.haxx.se/bug/view.cgi?id=2671602) that
-  curl didn't use sprintf() in a way that is documented to work in POSIX but
-  since we use our own printf() code (from libcurl) that shouldn't be a
-  problem. Nonetheless I modified the code to not rely on such particular
-  features and to not cause further raised eyebrowse with no good reason.
-
-Daniel Fandrich (5 Mar 2009)
-- Expanded the security section of the libcurl-tutorial man page to cover
-  more issues for authors to consider when writing robust libcurl-using
-  applications.
-
-Yang Tse (5 Mar 2009)
-- Fixed NTLM authentication memory leak on SSPI enabled Windows builds. This
-  issue was noticed by Chris Deidun.
-
-Daniel Fandrich (4 Mar 2009)
-- Fixed a problem with m4 quoting in the OpenSSL configure check reported
-  by Daniel Johnson.
-
-Daniel Stenberg (3 Mar 2009)
-- David James brought a patch that make libcurl close (all) dead connections
-  whenever you attempt to open a new connection.
-
-  1. After cleaning up a dead connection, "continue" instead of
-     returning FALSE. This ensures that we clean up all dead connections,
-     rather than just cleaning up the first dead connection.
-  2. Move up the cleanup for dead connections so that it occurs for
-     all connections, rather than just the connections which have the same
-     preferences as our current new connection.
-
-Version 7.19.4 (3 March 2009)
-
-Daniel Stenberg (3 Mar 2009)
-- David Kierznowski notified us about a security flaw
-  (http://curl.haxx.se/docs/adv_20090303.html also known as CVE-2009-0037) in
-  which previous libcurl versions (by design) can be tricked to access an
-  arbitrary local/different file instead of a remote one when
-  CURLOPT_FOLLOWLOCATION is enabled. This flaw is now fixed in this release
-  together this the addition of two new setopt options for controlling this
-  new behavior:
-
-  o CURLOPT_REDIR_PROTOCOLS controls what protocols libcurl is allowed to
-  follow to when CURLOPT_FOLLOWLOCATION is enabled. By default, this option
-  excludes the FILE and SCP protocols and thus you nee to explicitly allow
-  them in your app if you really want that behavior.
-
-  o CURLOPT_PROTOCOLS controls what protocol(s) libcurl is allowed to fetch
-  using the primary URL option. This is useful if you want to allow a user or
-  other outsiders control what URL to pass to libcurl and yet not allow all
-  protocols libcurl may have been built to support.
-
-Daniel Stenberg (27 Feb 2009)
-- Senthil Raja Velu reported a problem when CURLOPT_INTERFACE and
-  CURLOPT_LOCALPORT were used together (the local port bind failed), and
-  Markus Koetter provided the fix!
-
-Daniel Stenberg (25 Feb 2009)
-- As Daniel Fandrich figured out, we must do the GnuTLS initing in the
-  curl_global_init() function to properly maintain the performing functions
-  thread-safe. We've previously (28 April 2007) moved the init to a later time
-  just to avoid it to fail very early when libgcrypt dislikes the situation,
-  but that move was bad and the fix should rather be in libgcrypt or
-  elsewhere.
-
-Daniel Stenberg (24 Feb 2009)
-- Brian J. Murrell found out that Negotiate proxy authentication didn't work.
-  It happened because the code used the struct for server-based auth all the
-  time for both proxy and server auth which of course was wrong.
-
-Daniel Stenberg (23 Feb 2009)
-- After a bug reported by James Cheng I've made curl_easy_getinfo() for
-  CURLINFO_CONTENT_LENGTH_DOWNLOAD and CURLINFO_CONTENT_LENGTH_UPLOAD return
-  -1 if the sizes aren't know. Previously these returned 0, make it impossible
-  to detect the difference between actually zero and unknown.
-
-Yang Tse (23 Feb 2009)
-- Daniel Johnson provided a shell script that will perform all the steps needed
-  to build a Mac OS X fat ppc/i386 or ppc64/x86_64 libcurl.framework
-
-Daniel Stenberg (23 Feb 2009)
-- I renamed everything in the windows builds files that used the name 'curllib'
-  to the proper 'libcurl' as clearly this caused confusion.
-
-Yang Tse (20 Feb 2009)
-- Do not halt compilation when using VS2008 to build a Windows 2000 target.
-
-Daniel Stenberg (20 Feb 2009)
-- Linus Nielsen Feltzing reported and helped me repeat and fix a problem with
-  FTP with the multi interface: when a transfer fails, like when aborted by a
-  write callback, the control connection was wrongly closed and thus not
-  re-used properly.
-
-  This change is also an attempt to cleanup the code somewhat in this area, as
-  now the FTP code attempts to keep (better) track on pending responses
-  necessary to get read in ftp_done().
-
-Daniel Stenberg (19 Feb 2009)
-- Patrik Thunstrom reported a problem and helped me repeat it. It turned out
-  libcurl did a superfluous 1000ms wait when doing SFTP downloads!
-
-  We read data with libssh2 while doing the "DO" operation for SFTP and then
-  when we were about to start getting data for the actual file part, the
-  "TRANSFER" part, we waited for socket action (in 1000ms) before doing a
-  libssh2-read. But in this case libssh2 had already read and buffered the
-  data so we ended up always just waiting 1000ms before we get working on the
-  data!
-
-Patrick Monnerat (18 Feb 2009)
-- FTP downloads (i.e.: RETR) ending with code 550 now return error
-  CURLE_REMOTE_FILE_NOT_FOUND instead of CURLE_FTP_COULDNT_RETR_FILE.
-
-Daniel Stenberg (17 Feb 2009)
-- Kamil Dudka made NSS-powered builds compile and run again!
-
-- A second follow-up change by Andre Guibert de Bruet to fix a related memory
-  leak like that fixed on the 14th. When zlib returns failure, we need to
-  cleanup properly before returning error.
-
-- CURLOPT_FTP_CREATE_MISSING_DIRS can now be set to 2 in addition to 1 for
-  plain FTP connections, and it will then allow MKD to fail once and retry the
-  CWD afterwards. This is especially useful if you're doing many simultanoes
-  connections against the same server and they all have this option enabled,
-  as then CWD may first fail but then another connection does MKD before this
-  connection and thus MKD fails but trying CWD works! The numbers can
-  (should?) now be set with the convenience enums now called
-  CURLFTP_CREATE_DIR and CURLFTP_CREATE_DIR_RETRY.
-
-  Tests has proven that if you're making an application that uploads a set of
-  files to an ftp server, you will get a noticable gain in speed if you're
-  using multiple connections and this option will be then be very useful.
-
-Daniel Stenberg (14 Feb 2009)
-- Andre Guibert de Bruet found and fixed a memory leak in the content encoding
-  code, which could happen on libz errors.
-
-Daniel Fandrich (12 Feb 2009)
-- Added support for Digest and NTLM authentication using GnuTLS.
-
-Daniel Stenberg (11 Feb 2009)
-- CURLINFO_CONDITION_UNMET was added to allow an application to get to know if
-  the condition in the previous request was unmet. This is typically a time
-  condition set with CURLOPT_TIMECONDITION and was previously not possible to
-  reliably figure out. From bug report #2565128
-  (http://curl.haxx.se/bug/view.cgi?id=2565128) filed by Jocelyn Jaubert.
-
-Daniel Fandrich (4 Feb 2009)
-- Don't add the standard /usr/lib or /usr/include paths to LDFLAGS and CPPFLAGS
-  (respectively) when --with-ssl=/usr is used (patch based on FreeBSD).
-
-- Added an explicit buffer limit check in msdosify() (patch based on FreeBSD).
-  This couldn't ever overflow in curl, but might if the code were used
-  elsewhere or under different conditions.
-
-Daniel Stenberg (3 Feb 2009)
-- Hidemoto Nakada provided a small fix that makes it possible to get the
-  CURLINFO_CONTENT_LENGTH_DOWNLOAD size from file:// "transfers" with
-  CURLOPT_NOBODY set true.
-
-Daniel Stenberg (2 Feb 2009)
-- Patrick Scott found a rather large memory leak when using the multi
-  interface and setting CURLMOPT_MAXCONNECTS to something less than the number
-  of handles you add to the multi handle. All the connections that didn't fit
-  in the cache would not be properly disconnected nor freed!
-
-- Craig A West brought us: libcurl now defaults to do CONNECT with HTTP
-  version 1.1 instead of 1.0 like before. This change also introduces the new
-  proxy type for libcurl called 'CURLPROXY_HTTP_1_0' that then allows apps to
-  switch (back) to CONNECT 1.0 requests. The curl tool also got a --proxy1.0
-  option that works exactly like --proxy but sets CURLPROXY_HTTP_1_0.
-
-  I updated all test cases cases that use CONNECT and I tried to do some using
-  --proxy1.0 and some updated to do CONNECT 1.1 to get both versions run.
-
-Daniel Stenberg (31 Jan 2009)
-- When building with c-ares 1.6.1 (not yet released) or later and IPv6 support
-  enabled, we can now take advantage of its brand new AF_UNSPEC support in
-  ares_gethostbyname(). This makes test case 241 finally run fine for me with
-  this setup since it now parses the "::1 ip6-localhost" line fine in my
-  /etc/hosts file!
-
-Daniel Stenberg (30 Jan 2009)
-- Scott Cantor filed bug report #2550061
-  (http://curl.haxx.se/bug/view.cgi?id=2550061) mentioning that I failed to
-  properly make sure that the VC9 makefiles got included in the latest
-  release. I've now fixed the release script and verified it so next release
-  will hopefully include them properly!
-
-Daniel Fandrich (30 Jan 2009)
-- Fixed --disable-proxy for FTP and SOCKS. Thanks to Daniel Egger for
-  reporting.
-
-Yang Tse (29 Jan 2009)
-- Introduced curl_sspi.c and curl_sspi.h for the implementation of functions
-  Curl_sspi_global_init() and Curl_sspi_global_cleanup() which previously were
-  named Curl_ntlm_global_init() and Curl_ntlm_global_cleanup() in http_ntlm.c
-  Also adjusted socks_sspi.c to remove the link-time dependency on the Windows
-  SSPI library using it now in the same way as it was done in http_ntlm.c.
-
-Daniel Stenberg (28 Jan 2009)
-- Markus Moeller introduced two new options to libcurl:
-  CURLOPT_SOCKS5_GSSAPI_SERVICE and CURLOPT_SOCKS5_GSSAPI_NEC to allow libcurl
-  to do GSS-style authentication with SOCKS5 proxies. The curl tool got the
-  options called --socks5-gssapi-service and --socks5-gssapi-nec to enable
-  these.
-
-Daniel Stenberg (26 Jan 2009)
-- Chad Monroe provided the new CURLOPT_TFTP_BLKSIZE option that allows an app
-  to set desired block size to use for TFTP transfers instead of the default
-  512 bytes.
-
-- The "-no_ticket" option was introduced in Openssl0.9.8j. It's a flag to
-  disable "rfc4507bis session ticket support".  rfc4507bis was later turned
-  into the proper RFC5077 it seems: http://tools.ietf.org/html/rfc5077
-
-  The enabled extension concerns the session management. I wonder how often
-  libcurl stops a connection and then resumes a TLS session. also, sending the
-  session data is some overhead. .I suggest that you just use your proposed
-  patch (which explicitly disables TICKET).
-
-  If someone writes an application with libcurl and openssl who wants to
-  enable the feature, one can do this in the SSL callback.
-
-  Sharad Gupta brought this to my attention. Peter Sylvester helped me decide
-  on the proper action.
-
-- Alexey Borzov filed bug report #2535504
-  (http://curl.haxx.se/bug/view.cgi?id=2535504) pointing out that realms with
-  quoted quotation marks in HTTP Digest headers didn't work. I've now added
-  test case 1095 that verifies my fix.
-
-- Craig A West brought CURLOPT_NOPROXY and the corresponding --noproxy option.
-  They basically offer the same thing the NO_PROXY environment variable only
-  offered previously: list a set of host names that shall not use the proxy
-  even if one is specified.
-
-Daniel Fandrich (20 Jan 2009)
-- Call setlocale() for libtest tests to test the effects of locale-induced
-  libc changes on libcurl.
-
-- Fixed a couple more locale-dependent toupper conversions, mainly for
-  clarity.  This does fix one problem that causes ;type=i FTP URLs
-  to fail in the Turkish locale when CURLOPT_PROXY_TRANSFER_MODE is
-  used (test case 561)
-
-- Added tests 561 and 1091 through 1094 to test various combinations
-  of ;type= and ;mode= URLs that could potentially fail in the Turkish
-  locale.
-
-Daniel Stenberg (20 Jan 2009)
-- Lisa Xu pointed out that the ssh.obj file was missing from the
-  lib/Makefile.vc6 file (and thus from the vc8 and vc9 ones too).
-
-Version 7.19.3 (19 January 2009)
-
-Daniel Stenberg (16 Jan 2009)
-- Andrew de los Reyes fixed curlbuild.h for "generic" gcc builds on PPC, both
-  32 bit and 64 bit.
-
-Daniel Stenberg (15 Jan 2009)
-- Tim Ansell fixed a compiler warning in lib/cookie.c
-
-Daniel Stenberg (14 Jan 2009)
-- Grant Erickson fixed timeouts for TFTP such that specifying a
-  connect-timeout, a max-time or both options work correctly and as expected
-  by passing the correct boolean value to Curl_timeleft via the
-  'duringconnect' parameter.
-
-  With this small change, curl TFTP now behaves as expected (and likely as
-  originally-designed):
-
-  1) For non-existent or unreachable dotted IP addresses:
-
-   a) With no options, follows the default curl 300s timeout...
-   b) With --connect-timeout only, follows that value...
-   c) With --max-time only, follows that value...
-   d) With both --connect-timeout and --max-time, follows the smaller value...
-
-   and times out with a "curl: (7) Couldn't connect to server" error.
-
-  2) For transfers to/from a valid host:
-
-   a) With no options, follows default curl 300s timeout for the
-      first XRQ/DATA/ACK transaction and the default TFTP 3600s
-      timeout for the remainder of the transfer...
-
-   b) With --connect-time only, follows that value for the
-      first XRQ/DATA/ACK transaction and the default TFTP 3600s
-      timeout for the remainder of the transfer...
-
-   c) With --max-time only, follows that value for the first
-      XRQ/DATA/ACK transaction and for the remainder of the
-      transfer...
-
-   d) With both --connect-timeout and --max-time, follows the former
-      for the first XRQ/DATA/ACK transaction and the latter for the
-      remainder of the transfer...
-
-   and times out with a "curl: (28) Timeout was reached" error as
-   appropriate.
-
-Daniel Stenberg (13 Jan 2009)
-- Michael Wallner fixed a NULL pointer deref when calling
-  curl_easy_setup(curl, CURLOPT_COOKIELIST, "SESS") on a CURL handle with no
-  cookies data.
-
-- Stefan Teleman brought a patch to fix the default curlbuild.h file for the
-  SunPro compilers.
-
-Daniel Stenberg (12 Jan 2009)
-- Based on bug report #2498665 (http://curl.haxx.se/bug/view.cgi?id=2498665)
-  by Daniel Black, I've now added magic to the configure script that makes it
-  use pkg-config to detect gnutls details as well if the existing method
-  (using libgnutls-config) fails. While doing this, I cleaned up and unified
-  the pkg-config usage when detecting openssl and nss as well.
-
-Daniel Stenberg (11 Jan 2009)
-- Karl Moerder brought the patch that creates vc9 Makefiles, and I made
-  'maketgz' now use the actual makefile targets to do the VC8 and VC9
-  makefiles.
-
-Daniel Stenberg (10 Jan 2009)
-- Emil Romanus fixed:
-
-  When using the multi interface over HTTP and the server returns a Location
-  header, the running easy handle will get stuck in the CURLM_STATE_PERFORM
-  state, leaving the external event loop stuck waiting for data from the
-  ingoing socket (when using the curl_multi_socket_action stuff). While this
-  bug was pretty hard to find, it seems to require only a one-line fix. The
-  break statement on line 1374 in multi.c caused the function to skip the call
-  to multistate().
-
-  How to reproduce this bug? Well, that's another question.  evhiperfifo.c in
-  the examples directory chokes on this bug only _sometimes_, probably
-  depending on how fast the URLs are added. One way of testing the bug out is
-  writing to hiper.fifo from more than one source at the same time.
-
-Daniel Fandrich (7 Jan 2009)
-- Unified much of the SessionHandle initialization done in Curl_open() and
-  curl_easy_reset() by creating Curl_init_userdefined(). This had the side
-  effect of fixing curl_easy_reset() so it now also resets
-  CURLOPT_FTP_FILEMETHOD and CURLOPT_SSL_SESSIONID_CACHE
-
-Daniel Stenberg (7 Jan 2009)
-- Rob Crittenden did once again provide an NSS update:
-
-  I have to jump through a few hoops now with the NSS library initialization
-  since another part of an application may have already initialized NSS by the
-  time Curl gets invoked. This patch is more careful to only shutdown the NSS
-  library if Curl did the initialization.
-
-  It also adds in a bit of code to set the default ciphers if the app that
-  call NSS_Init* did not call NSS_SetDomesticPolicy() or set specific
-  ciphers. One might argue that this lets other application developers get
-  lazy and/or they aren't using the NSS API correctly, and you'd be right.
-  But still, this will avoid terribly difficult-to-trace crashes and is
-  generally helpful.
-
-Daniel Stenberg (1 Jan 2009)
-- 'reconf' is removed since we rather have users use 'buildconf'
-
-Daniel Stenberg (31 Dec 2008)
-- Bas Mevissen reported http://curl.haxx.se/bug/view.cgi?id=2479030 pointing
-  out that 'reconf' didn't properly point out the m4 subdirectory when running
-  aclocal.
-
-Daniel Stenberg (29 Dec 2008)
- - Phil Lisiecki filed bug report #2413067
-  (http://curl.haxx.se/bug/view.cgi?id=2413067) that identified a problem that
-  would cause libcurl to mark a DNS cache entry "in use" eternally if the
-  subsequence TCP connect failed. It would thus never get pruned and refreshed
-  as it should've been.
-
-  Phil provided his own patch to this problem that while it seemed to work
-  wasn't complete and thus I wrote my own fix to the problem.
-
-Daniel Stenberg (28 Dec 2008)
-- Peter Korsgaard fixed building libcurl with "configure --with-ssl
-  --disable-verbose".
-
-- Anthony Bryan fixed more language and spelling flaws in man pages.
-
-Daniel Stenberg (22 Dec 2008)
-- Given a recent enough libssh2, libcurl can now seek/resume with SFTP even
-  on file indexes beyond 2 or 4GB.
-
-- Anthony Bryan provided a set of patches that cleaned up manual language,
-  corrected spellings and more.
-
-Daniel Stenberg (20 Dec 2008)
-- Igor Novoseltsev fixed a bad situation for the multi_socket() API when doing
-  pipelining, as libcurl could then easily get confused and A) work on the
-  handle that was not "first in queue" on a pipeline, or even B) tell the app
-  to REMOVE a socket while it was in use by a second handle in a pipeline. Both
-  errors caused hanging or stalling applications.
-
-Daniel Stenberg (19 Dec 2008)
-- curl_multi_timeout() could return a timeout value of 0 even though nothing
-  was actually ready to get done, as the internal time resolution is higher
-  than the returned millisecond timer. Therefore it could cause applications
-  running on fast processors to do short bursts of busy-loops.
-  curl_multi_timeout() will now only return 0 if the timeout is actually
-  alreay triggered.
-
-- Using the libssh2 0.19 function libssh2_session_block_directions(), libcurl
-  now has an improved ability to do right when the multi interface (both
-  "regular" and multi_socket) is used for SCP and SFTP transfers. This should
-  result in (much) less busy-loop situations and thus less CPU usage with no
-  speed loss.
-
-Daniel Stenberg (17 Dec 2008)
-- SCP and SFTP with the multi interface had the same flaw: the 'DONE'
-  operation didn't complete properly if the EAGAIN equivalent was returned but
-  libcurl would simply continue with a half-completed close operation
-  performed. This ruined persistent connection re-use and cause some
-  SSH-protocol errors in general. The correction is unfortunately adding a
-  blocking function - doing it entirely non-blocking should be considered for
-  a better fix.
-
-Gisle Vanem (16 Dec 2008)
-- Added the possibility to use the Watt-32 tcp/ip stack under Windows.
-  The change simply involved adding a USE_WATT32 section in the
-  config-win32.h files (under ./lib and ./src). This section disables
-  the use of any Winsock headers.
-
-Daniel Stenberg (16 Dec 2008)
-- libssh2_sftp_last_error() was wrongly used at some places in libcurl which
-  made libcurl sometimes not properly abort problematic SFTP transfers.
-
-Daniel Stenberg (12 Dec 2008)
-- More work with Igor Novoseltsev to first fix the remaining stuff for
-  removing easy handles from multi handles when the easy handle is/was within
-  a HTTP pipeline. His bug report #2351653
-  (http://curl.haxx.se/bug/view.cgi?id=2351653) was also related and was
-  eventually fixed by a patch by Igor himself.
-
-Yang Tse (12 Dec 2008)
-- Patrick Monnerat fixed a build regression, introduced in 7.19.2, affecting
-  OS/400 compilations with IPv6 enabled.
-
-Daniel Stenberg (12 Dec 2008)
-- Mark Karpeles filed bug report #2416182 titled "crash in ConnectionExists
-  when using duphandle+curl_mutli"
-  (http://curl.haxx.se/bug/view.cgi?id=2416182) which showed that
-  curl_easy_duphandle() wrongly also copied the pointer to the connection
-  cache, which was plain wrong and caused a segfault if the handle would be
-  used in a different multi handle than the handle it was duplicated from.
-
-Daniel Stenberg (11 Dec 2008)
-- Keshav Krity found out that libcurl failed to deal with dotted IPv6
-  addresses if they were very long (>39 letters) due to a too strict address
-  validity parser. It now accepts addresses up to 45 bytes long.
-
-Daniel Stenberg (11 Dec 2008)
-- Internet Explorer had a broken HTTP digest authentication before v7 and
-  there are servers "out there" that relies on the client doing this broken
-  Digest authentication. Apache even comes with an option to work with such
-  broken clients.
-
-  The difference is only for URLs that contain a query-part (a '?'-letter and
-  text to the right of it).
-
-  libcurl now supports this quirk, and you enable it by setting the
-  CURLAUTH_DIGEST_IE bit in the bitmask you pass to the CURLOPT_HTTPAUTH or
-  CURLOPT_PROXYAUTH options. They are thus individually controlled to server
-  and proxy.
-
-  (note that there's no way to activate this with the curl tool yet)
-
-Daniel Fandrich (9 Dec 2008)
-- Added test cases 1089 and 1090 to test --write-out after a redirect to
-  test a report that the size didn't work, but these test cases pass.
-
-- Documented CURLOPT_CONNECT_ONLY as being useful only on HTTP URLs.
-
-Daniel Stenberg (9 Dec 2008)
-- Ken Hirsch simplified how libcurl does FTPS: now it doesn't assume any
-  particular state for the control connection like it did before for implicit
-  FTPS (libcurl assumed such control connections to be encrypted while some
-  FTPS servers such as FileZilla assumes such connections to be clear
-  mode). Use the CURLOPT_USE_SSL option to set your desired level.
-
-Daniel Stenberg (8 Dec 2008)
-- Fred Machado posted about a weird FTP problem on the curl-users list and when
-  researching it, it turned out he got a 550 response back from a SIZE command
-  and then I fell over the text in RFC3659 that says:
-
-   The presence of the 550 error response to a SIZE command MUST NOT be taken
-   by the client as an indication that the file cannot be transferred in the
-   current MODE and TYPE.
-
-  In other words: the change I did on September 30th 2008 and that has been
-  included in the last two releases were a regression and a bad idea. We MUST
-  NOT take a 550 response from SIZE as a hint that the file doesn't exist.
-
-- Christian Krause filed bug #2221237
-  (http://curl.haxx.se/bug/view.cgi?id=2221237) that identified an infinite
-  loop during GSS authentication given some specific conditions. With his
-  patience and great feedback I managed to narrow down the problem and
-  eventually fix it although I can't test any of this myself!
-
-Daniel Fandrich (3 Dec 2008)
-- Fixed the getifaddrs version of Curl_if2ip to work on systems without IPv6
-  support (e.g. Minix)
-
-Daniel Stenberg (3 Dec 2008)
-- Igor Novoseltsev filed bug #2351645
-  (http://curl.haxx.se/bug/view.cgi?id=2351645) that identified a problem with
-  the multi interface that occured if you removed an easy handle while in
-  progress and the handle was used in a HTTP pipeline.
-
-- Pawel Kierski pointed out a mistake in the cookie code that could lead to a
-  bad fclose() after a fatal error had occured.
-  (http://curl.haxx.se/bug/view.cgi?id=2382219)
-
-Daniel Fandrich (25 Nov 2008)
-- If a HTTP request is Basic and num is already >=1000, the HTTP test
-  server adds 1 to num to get the data section to return. This allows
-  testing authentication negotiations using the Basic authentication
-  method.
-
-- Added tests 1087 and 1088 to test Basic authentication on a redirect
-  with and without --location-trusted
-
-Daniel Stenberg (24 Nov 2008)
-- Based on a patch by Vlad Grachov, libcurl now uses a new libssh2 0.19
-  function when built to support SCP and SFTP that helps the library to know
-  in which direction a particular libssh2 operation would return EAGAIN so
-  that libcurl knows what socket conditions to wait for before trying the
-  function call again. Previously (and still when using libssh2 0.18 or
-  earlier), libcurl will busy-loop in this situation when the easy interface
-  is used!
-
-Daniel Fandrich (20 Nov 2008)
-- Automatically detect OpenBSD's CA cert bundle.
-
-Daniel Stenberg (19 Nov 2008)
-- I removed the default use of "Pragma: no-cache" from libcurl when a proxy is
-  used. It has been used since forever but it was never a good idea to use
-  unless explicitly asked for.
-
-- Josef Wolf's extension that allows a $TESTDIR/gdbinit$testnum file that when
-  you use runtests.pl -g, will be sourced by gdb to allow additional fancy or
-  whatever you see fit
-
-- Christian Krause reported and fixed a memory leak that would occur with HTTP
-  GSS/kerberos authentication (http://curl.haxx.se/bug/view.cgi?id=2284386)
-
-- Andreas Wurf and Markus Koetter helped me analyze a problem that Andreas got
-  when uploading files to a single FTP server using multiple easy handle
-  handles with the multi interface. Occasionally a handle would stall in
-  mysterious ways.
-
-  The problem turned out to be a side-effect of the ConnectionExists()
-  function's eagerness to re-use a handle for HTTP pipelining so it would
-  select it even if already being in use, due to an inadequate check for its
-  chances of being used for pipelnining.
-
-Daniel Fandrich (17 Nov 2008)
-- Added more compiler warning options for gcc 4.3
-
-Yang Tse (17 Nov 2008)
-- Fix a remaining problem in the inet_pton() runtime configure check. And
-  fix internal Curl_inet_pton() failures to reject certain malformed literals.
-
-- Make configure script check if ioctl with the SIOCGIFADDR command can be
-  used, and define HAVE_IOCTL_SIOCGIFADDR if appropriate.
-
-Daniel Stenberg (16 Nov 2008)
-- Christian Krause fixed a build failure when building with gss support
-  enabled and FTP disabled.
-
-- Added check for NULL returns from strdup() in src/main.c and lib/formdata.c
-  - reported by Jim Meyering also prevent buffer overflow on MSDOS when you do
-  for example -O on a url with a file name part longer than PATH_MAX letters
-
-- lib/nss.c fixes based on the report by Jim Meyering: I went over and added
-  checks for return codes for all calls to malloc and strdup that were
-  missing. I also changed a few malloc(13) to use arrays on the stack and a
-  few malloc(PATH_MAX) to instead use aprintf() to lower memory use.
-
-- I fixed a memory leak in Curl_nss_connect() when CURLOPT_ISSUERCERT is
-  in use.
-
-Daniel Fandrich (14 Nov 2008)
-- Added .xml as one of the few common file extensions known by the multipart
-  form generator.
-
-- Added some #ifdefs around header files and change the EAGAIN test to
-  fix compilation on Cell (reported by Jeff Curley).
-
-Yang Tse (14 Nov 2008)
-- Fixed several configure script issues affecting checks for inet_ntoa_r(),
-  inet_ntop(), inet_pton(), getifaddrs(), fcntl() and getaddrinfo().
-
-Yang Tse (13 Nov 2008)
-- Refactored configure script detection of functions used to set sockets into
-  non-blocking mode, and decouple function detection from function capability.
-
diff --git a/src/other/curl/CMake/CMakeConfigurableFile.in b/src/other/curl/CMake/CMakeConfigurableFile.in
deleted file mode 100644
index 4cf74a1..0000000
--- a/src/other/curl/CMake/CMakeConfigurableFile.in
+++ /dev/null
@@ -1,2 +0,0 @@
- at CMAKE_CONFIGURABLE_FILE_CONTENT@
-
diff --git a/src/other/curl/CMake/CheckTypeSize.c.in b/src/other/curl/CMake/CheckTypeSize.c.in
deleted file mode 100644
index 8ff07bf..0000000
--- a/src/other/curl/CMake/CheckTypeSize.c.in
+++ /dev/null
@@ -1,44 +0,0 @@
-#cmakedefine CHECK_TYPE_SIZE_TYPE @CHECK_TYPE_SIZE_TYPE@
-#ifdef CHECK_TYPE_SIZE_TYPE
-
- at CHECK_TYPE_SIZE_PREINCLUDE@
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif /* HAVE_SYS_TYPES_H */
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-
-#ifdef _WIN32
-#  include <winsock2.h>
-#  include <ws2tcpip.h>
-#endif
-
-
-#ifdef HAVE_STDINT_H
-#  include <stdint.h>
-#endif /* HAVE_STDINT_H */
-
-#ifdef HAVE_STDDEF_H
-#  include <stddef.h>
-#endif /* HAVE_STDDEF_H */
-
- at CHECK_TYPE_SIZE_PREMAIN@
-
-#ifdef __CLASSIC_C__
-int main(){
-  int ac;
-  char*av[];
-#else
-int main(int ac, char*av[]){
-#endif
-  if(ac > 1000){return *av[0];}
-  return sizeof(CHECK_TYPE_SIZE_TYPE);
-}
-
-#else  /* CHECK_TYPE_SIZE_TYPE */
-
-#  error "CHECK_TYPE_SIZE_TYPE has to specify the type"
-
-#endif /* CHECK_TYPE_SIZE_TYPE */
diff --git a/src/other/curl/CMake/CheckTypeSize.cmake b/src/other/curl/CMake/CheckTypeSize.cmake
deleted file mode 100644
index 2c2ceab..0000000
--- a/src/other/curl/CMake/CheckTypeSize.cmake
+++ /dev/null
@@ -1,57 +0,0 @@
-# - Check sizeof a type
-#  CHECK_TYPE_SIZE(TYPE VARIABLE)
-# Check if the type exists and determine size of type.  if the type
-# exists, the size will be stored to the variable.
-#
-#  VARIABLE - variable to store size if the type exists.
-#  HAVE_${VARIABLE} - does the variable exists or not
-
-macro(CHECK_TYPE_SIZE TYPE VARIABLE)
-  set(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1)
-  if(NOT DEFINED ${VARIABLE})
-    if("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$")
-      set(CHECK_TYPE_SIZE_TYPE "${TYPE}")
-      set(MACRO_CHECK_TYPE_SIZE_FLAGS
-        "${CMAKE_REQUIRED_FLAGS}")
-      foreach(def HAVE_SYS_TYPES_H 
-         HAVE_STDINT_H HAVE_STDDEF_H HAVE_SYS_SOCKET_H)
-        if("${def}")
-          set(MACRO_CHECK_TYPE_SIZE_FLAGS
-            "${MACRO_CHECK_TYPE_SIZE_FLAGS} -D${def}")
-        endif("${def}")
-      endforeach(def)
-      set(CHECK_TYPE_SIZE_PREMAIN)
-      foreach(def ${CMAKE_EXTRA_INCLUDE_FILES})
-        set(CHECK_TYPE_SIZE_PREMAIN "${CHECK_TYPE_SIZE_PREMAIN}#include \"${def}\"\n")
-      endforeach(def)
-      configure_file(
-        "${CMAKE_CURRENT_SOURCE_DIR}/CMake/CheckTypeSize.c.in"
-        "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckTypeSize.c"
-        IMMEDIATE @ONLY)
-      file(READ
-        "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckTypeSize.c"
-        CHECK_TYPE_SIZE_FILE_CONTENT)
-      message(STATUS "Check size of ${TYPE}")
-      if(CMAKE_REQUIRED_LIBRARIES)
-        set(CHECK_TYPE_SIZE_ADD_LIBRARIES
-          "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}")
-      endif(CMAKE_REQUIRED_LIBRARIES)
-      try_run(${VARIABLE} HAVE_${VARIABLE}
-        ${CMAKE_BINARY_DIR}
-        "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckTypeSize.c"
-        CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_TYPE_SIZE_FLAGS}
-        "${CHECK_TYPE_SIZE_ADD_LIBRARIES}"
-        OUTPUT_VARIABLE OUTPUT)
-      if(HAVE_${VARIABLE})
-        message(STATUS "Check size of ${TYPE} - done")
-        file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
-          "Determining size of ${TYPE} passed with the following output:\n${OUTPUT}\n\n")
-      else(HAVE_${VARIABLE})
-        message(STATUS "Check size of ${TYPE} - failed")
-        file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
-          "Determining size of ${TYPE} failed with the following output:\n${OUTPUT}\nCheckTypeSize.c:\n${CHECK_TYPE_SIZE_FILE_CONTENT}\n\n")
-      endif(HAVE_${VARIABLE})
-    endif("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$")
-  endif(NOT DEFINED ${VARIABLE})
-  set(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS )
-endmacro(CHECK_TYPE_SIZE)
diff --git a/src/other/curl/CMake/CurlCheckCSourceCompiles.cmake b/src/other/curl/CMake/CurlCheckCSourceCompiles.cmake
deleted file mode 100644
index b632768..0000000
--- a/src/other/curl/CMake/CurlCheckCSourceCompiles.cmake
+++ /dev/null
@@ -1,75 +0,0 @@
-# - Check if the source code provided in the SOURCE argument compiles.
-# CURL_CHECK_C_SOURCE_COMPILES(SOURCE VAR)
-# - macro which checks if the source code compiles
-#  SOURCE   - source code to try to compile
-#  VAR      - variable to store whether the source code compiled
-#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
-#
-#  CMAKE_REQUIRED_FLAGS = string of compile command line flags
-#  CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-#  CMAKE_REQUIRED_INCLUDES = list of include directories
-#  CMAKE_REQUIRED_LIBRARIES = list of libraries to link
-
-macro(CURL_CHECK_C_SOURCE_COMPILES SOURCE VAR)
-  if("${VAR}" MATCHES "^${VAR}$" OR "${VAR}" MATCHES "UNKNOWN")
-    set(message "${VAR}")
-    # If the number of arguments is greater than 2 (SOURCE VAR)
-    if(${ARGC} GREATER 2)
-      # then add the third argument as a message
-      set(message "${ARGV2} (${VAR})")
-    endif(${ARGC} GREATER 2)
-    set(MACRO_CHECK_FUNCTION_DEFINITIONS
-      "-D${VAR} ${CMAKE_REQUIRED_FLAGS}")
-    if(CMAKE_REQUIRED_LIBRARIES)
-      set(CURL_CHECK_C_SOURCE_COMPILES_ADD_LIBRARIES
-        "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}")
-    else(CMAKE_REQUIRED_LIBRARIES)
-      set(CURL_CHECK_C_SOURCE_COMPILES_ADD_LIBRARIES)
-    endif(CMAKE_REQUIRED_LIBRARIES)
-    if(CMAKE_REQUIRED_INCLUDES)
-      set(CURL_CHECK_C_SOURCE_COMPILES_ADD_INCLUDES
-        "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}")
-    else(CMAKE_REQUIRED_INCLUDES)
-      set(CURL_CHECK_C_SOURCE_COMPILES_ADD_INCLUDES)
-    endif(CMAKE_REQUIRED_INCLUDES)
-    set(src "")
-    foreach(def ${EXTRA_DEFINES})
-      set(src "${src}#define ${def} 1\n")
-    endforeach(def)
-    foreach(inc ${HEADER_INCLUDES})
-      set(src "${src}#include <${inc}>\n")
-    endforeach(inc)
-
-    set(src "${src}\nint main() { ${SOURCE} ; return 0; }")
-    set(CMAKE_CONFIGURABLE_FILE_CONTENT "${src}")
-    configure_file(${CMAKE_CURRENT_SOURCE_DIR}/CMake/CMakeConfigurableFile.in
-      "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.c"
-      IMMEDIATE)
-    message(STATUS "Performing Test ${message}")
-    try_compile(${VAR}
-      ${CMAKE_BINARY_DIR}
-      ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.c
-      COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS}
-      CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FUNCTION_DEFINITIONS}
-      "${CURL_CHECK_C_SOURCE_COMPILES_ADD_LIBRARIES}"
-      "${CURL_CHECK_C_SOURCE_COMPILES_ADD_INCLUDES}"
-      OUTPUT_VARIABLE OUTPUT)
-    if(${VAR})
-      set(${VAR} 1 CACHE INTERNAL "Test ${message}")
-      message(STATUS "Performing Test ${message} - Success")
-      file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
-        "Performing C SOURCE FILE Test ${message} succeded with the following output:\n"
-        "${OUTPUT}\n"
-        "Source file was:\n${src}\n")
-    else(${VAR})
-      message(STATUS "Performing Test ${message} - Failed")
-      set(${VAR} "" CACHE INTERNAL "Test ${message}")
-      file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
-        "Performing C SOURCE FILE Test ${message} failed with the following output:\n"
-        "${OUTPUT}\n"
-        "Source file was:\n${src}\n")
-    endif(${VAR})
-  endif("${VAR}" MATCHES "^${VAR}$" OR "${VAR}" MATCHES "UNKNOWN")
-endmacro(CURL_CHECK_C_SOURCE_COMPILES)
diff --git a/src/other/curl/CMake/CurlCheckCSourceRuns.cmake b/src/other/curl/CMake/CurlCheckCSourceRuns.cmake
deleted file mode 100644
index 6b14af8..0000000
--- a/src/other/curl/CMake/CurlCheckCSourceRuns.cmake
+++ /dev/null
@@ -1,83 +0,0 @@
-# - Check if the source code provided in the SOURCE argument compiles and runs.
-# CURL_CHECK_C_SOURCE_RUNS(SOURCE VAR)
-# - macro which checks if the source code runs
-#  SOURCE   - source code to try to compile
-#  VAR - variable to store size if the type exists.
-#
-# The following variables may be set before calling this macro to
-# modify the way the check is run:
-#
-#  CMAKE_REQUIRED_FLAGS = string of compile command line flags
-#  CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
-#  CMAKE_REQUIRED_INCLUDES = list of include directories
-#  CMAKE_REQUIRED_LIBRARIES = list of libraries to link
-
-macro(CURL_CHECK_C_SOURCE_RUNS SOURCE VAR)
-  if("${VAR}" MATCHES "^${VAR}$" OR "${VAR}" MATCHES "UNKNOWN")
-    set(message "${VAR}")
-    # If the number of arguments is greater than 2 (SOURCE VAR)
-    if(${ARGC} GREATER 2)
-      # then add the third argument as a message
-      set(message "${ARGV2} (${VAR})")
-    endif(${ARGC} GREATER 2)
-    set(MACRO_CHECK_FUNCTION_DEFINITIONS
-      "-D${VAR} ${CMAKE_REQUIRED_FLAGS}")
-    if(CMAKE_REQUIRED_LIBRARIES)
-      set(CURL_CHECK_C_SOURCE_COMPILES_ADD_LIBRARIES
-        "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}")
-    else(CMAKE_REQUIRED_LIBRARIES)
-      set(CURL_CHECK_C_SOURCE_COMPILES_ADD_LIBRARIES)
-    endif(CMAKE_REQUIRED_LIBRARIES)
-    if(CMAKE_REQUIRED_INCLUDES)
-      set(CURL_CHECK_C_SOURCE_COMPILES_ADD_INCLUDES
-        "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}")
-    else(CMAKE_REQUIRED_INCLUDES)
-      set(CURL_CHECK_C_SOURCE_COMPILES_ADD_INCLUDES)
-    endif(CMAKE_REQUIRED_INCLUDES)
-    set(src "")
-    foreach(def ${EXTRA_DEFINES})
-      set(src "${src}#define ${def} 1\n")
-    endforeach(def)
-    foreach(inc ${HEADER_INCLUDES})
-      set(src "${src}#include <${inc}>\n")
-    endforeach(inc)
-
-    set(src "${src}\nint main() { ${SOURCE} ; return 0; }")
-    set(CMAKE_CONFIGURABLE_FILE_CONTENT "${src}")
-    configure_file(${CMAKE_CURRENT_SOURCE_DIR}/CMake/CMakeConfigurableFile.in
-      "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.c"
-      IMMEDIATE)
-    message(STATUS "Performing Test ${message}")
-    try_run(${VAR} ${VAR}_COMPILED
-      ${CMAKE_BINARY_DIR}
-      ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.c
-      COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS}
-      CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FUNCTION_DEFINITIONS}
-      "${CURL_CHECK_C_SOURCE_COMPILES_ADD_LIBRARIES}"
-      "${CURL_CHECK_C_SOURCE_COMPILES_ADD_INCLUDES}"
-      OUTPUT_VARIABLE OUTPUT)
-    # if it did not compile make the return value fail code of 1
-    if(NOT ${VAR}_COMPILED)
-      set(${VAR} 1)
-    endif(NOT ${VAR}_COMPILED)
-    # if the return value was 0 then it worked
-    set(result_var ${${VAR}})
-    if("${result_var}" EQUAL 0)
-      set(${VAR} 1 CACHE INTERNAL "Test ${message}")
-      message(STATUS "Performing Test ${message} - Success")
-      file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
-        "Performing C SOURCE FILE Test ${message} succeded with the following output:\n"
-        "${OUTPUT}\n"
-        "Return value: ${${VAR}}\n"
-        "Source file was:\n${src}\n")
-    else("${result_var}" EQUAL 0)
-      message(STATUS "Performing Test ${message} - Failed")
-      set(${VAR} "" CACHE INTERNAL "Test ${message}")
-      file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
-        "Performing C SOURCE FILE Test ${message} failed with the following output:\n"
-        "${OUTPUT}\n"
-        "Return value: ${result_var}\n"
-        "Source file was:\n${src}\n")
-    endif("${result_var}" EQUAL 0)
-  endif("${VAR}" MATCHES "^${VAR}$" OR "${VAR}" MATCHES "UNKNOWN")
-endmacro(CURL_CHECK_C_SOURCE_RUNS)
diff --git a/src/other/curl/CMake/CurlTests.c b/src/other/curl/CMake/CurlTests.c
deleted file mode 100644
index 0943458..0000000
--- a/src/other/curl/CMake/CurlTests.c
+++ /dev/null
@@ -1,690 +0,0 @@
-#ifdef TIME_WITH_SYS_TIME
-/* Time with sys/time test */
-
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-
-int
-main ()
-{
-if ((struct tm *) 0)
-return 0;
-  ;
-  return 0;
-}
-
-#endif
-
-#ifdef HAVE_FCNTL_O_NONBLOCK
-
-/* headers for FCNTL_O_NONBLOCK test */
-#include <sys/types.h>
-#include <unistd.h>
-#include <fcntl.h>
-/* */
-#if defined(sun) || defined(__sun__) || \
-    defined(__SUNPRO_C) || defined(__SUNPRO_CC)
-# if defined(__SVR4) || defined(__srv4__)
-#  define PLATFORM_SOLARIS
-# else
-#  define PLATFORM_SUNOS4
-# endif
-#endif
-#if (defined(_AIX) || defined(__xlC__)) && !defined(_AIX41)
-# define PLATFORM_AIX_V3
-#endif
-/* */
-#if defined(PLATFORM_SUNOS4) || defined(PLATFORM_AIX_V3) || defined(__BEOS__)
-#error "O_NONBLOCK does not work on this platform"
-#endif
-
-int
-main ()
-{
-      /* O_NONBLOCK source test */
-      int flags = 0;
-      if(0 != fcntl(0, F_SETFL, flags | O_NONBLOCK))
-          return 1;
-      return 0;
-}
-#endif
-
-#ifdef HAVE_GETHOSTBYADDR_R_5
-#include <sys/types.h>
-#include <netdb.h>
-int
-main ()
-{
-
-char * address;
-int length;
-int type;
-struct hostent h;
-struct hostent_data hdata;
-int rc;
-#ifndef gethostbyaddr_r
-  (void)gethostbyaddr_r;
-#endif
-rc = gethostbyaddr_r(address, length, type, &h, &hdata);
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GETHOSTBYADDR_R_5_REENTRANT
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-int
-main ()
-{
-
-char * address;
-int length;q
-int type;
-struct hostent h;
-struct hostent_data hdata;
-int rc;
-#ifndef gethostbyaddr_r
-  (void)gethostbyaddr_r;
-#endif
-rc = gethostbyaddr_r(address, length, type, &h, &hdata);
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GETHOSTBYADDR_R_7
-#include <sys/types.h>
-#include <netdb.h>
-int
-main ()
-{
-
-char * address;
-int length;
-int type;
-struct hostent h;
-char buffer[8192];
-int h_errnop;
-struct hostent * hp;
-
-#ifndef gethostbyaddr_r
-  (void)gethostbyaddr_r;
-#endif
-hp = gethostbyaddr_r(address, length, type, &h,
-                     buffer, 8192, &h_errnop);
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GETHOSTBYADDR_R_7_REENTRANT
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-int
-main ()
-{
-
-char * address;
-int length;
-int type;
-struct hostent h;
-char buffer[8192];
-int h_errnop;
-struct hostent * hp;
-
-#ifndef gethostbyaddr_r
-  (void)gethostbyaddr_r;
-#endif
-hp = gethostbyaddr_r(address, length, type, &h,
-                     buffer, 8192, &h_errnop);
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GETHOSTBYADDR_R_8
-#include <sys/types.h>
-#include <netdb.h>
-int
-main ()
-{
-
-char * address;
-int length;
-int type;
-struct hostent h;
-char buffer[8192];
-int h_errnop;
-struct hostent * hp;
-int rc;
-
-#ifndef gethostbyaddr_r
-  (void)gethostbyaddr_r;
-#endif
-rc = gethostbyaddr_r(address, length, type, &h,
-                     buffer, 8192, &hp, &h_errnop);
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GETHOSTBYADDR_R_8_REENTRANT
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-int
-main ()
-{
-
-char * address;
-int length;
-int type;
-struct hostent h;
-char buffer[8192];
-int h_errnop;
-struct hostent * hp;
-int rc;
-
-#ifndef gethostbyaddr_r
-  (void)gethostbyaddr_r;
-#endif
-rc = gethostbyaddr_r(address, length, type, &h,
-                     buffer, 8192, &hp, &h_errnop);
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GETHOSTBYNAME_R_3
-#include <string.h>
-#include <sys/types.h>
-#include <netdb.h>
-#undef NULL
-#define NULL (void *)0
-
-int
-main ()
-{
-
-struct hostent_data data;
-#ifndef gethostbyname_r
-  (void)gethostbyname_r;
-#endif
-gethostbyname_r(NULL, NULL, NULL);
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GETHOSTBYNAME_R_3_REENTRANT
-#define _REENTRANT
-#include <string.h>
-#include <sys/types.h>
-#include <netdb.h>
-#undef NULL
-#define NULL (void *)0
-
-int
-main ()
-{
-
-struct hostent_data data;
-#ifndef gethostbyname_r
-  (void)gethostbyname_r;
-#endif
-gethostbyname_r(NULL, NULL, NULL);
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GETHOSTBYNAME_R_5
-#include <sys/types.h>
-#include <netinet/in.h>
-#include <netdb.h>
-#undef NULL
-#define NULL (void *)0
-
-int
-main ()
-{
-#ifndef gethostbyname_r
-  (void)gethostbyname_r;
-#endif
-gethostbyname_r(NULL, NULL, NULL, 0, NULL);
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GETHOSTBYNAME_R_5_REENTRANT
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-#undef NULL
-#define NULL (void *)0
-
-int
-main ()
-{
-
-#ifndef gethostbyname_r
-  (void)gethostbyname_r;
-#endif
-gethostbyname_r(NULL, NULL, NULL, 0, NULL);
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GETHOSTBYNAME_R_6
-#include <sys/types.h>
-#include <netdb.h>
-#undef NULL
-#define NULL (void *)0
-
-int
-main ()
-{
-
-#ifndef gethostbyname_r
-  (void)gethostbyname_r;
-#endif
-gethostbyname_r(NULL, NULL, NULL, 0, NULL, NULL);
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GETHOSTBYNAME_R_6_REENTRANT
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-#undef NULL
-#define NULL (void *)0
-
-int
-main ()
-{
-
-#ifndef gethostbyname_r
-  (void)gethostbyname_r;
-#endif
-gethostbyname_r(NULL, NULL, NULL, 0, NULL, NULL);
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_SOCKLEN_T
-#ifdef _WIN32
-#include <ws2tcpip.h>
-#else
-#include <sys/types.h>
-#include <sys/socket.h>
-#endif
-int
-main ()
-{
-if ((socklen_t *) 0)
-  return 0;
-if (sizeof (socklen_t))
-  return 0;
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_IN_ADDR_T
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <arpa/inet.h>
-
-int
-main ()
-{
-if ((in_addr_t *) 0)
-  return 0;
-if (sizeof (in_addr_t))
-  return 0;
-  ;
-  return 0;
-}
-#endif
-
-#ifdef HAVE_BOOL_T
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_STDBOOL_H
-#include <stdbool.h>
-#endif
-int
-main ()
-{
-if (sizeof (bool *) )
-  return 0;
-  ;
-  return 0;
-}
-#endif
-
-#ifdef STDC_HEADERS
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-int main() { return 0; }
-#endif
-#ifdef RETSIGTYPE_TEST
-#include <sys/types.h>
-#include <signal.h>
-#ifdef signal
-# undef signal
-#endif
-#ifdef __cplusplus
-extern "C" void (*signal (int, void (*)(int)))(int);
-#else
-void (*signal ()) ();
-#endif
-
-int
-main ()
-{
-  return 0;
-}
-#endif
-#ifdef HAVE_INET_NTOA_R_DECL
-#include <arpa/inet.h>
-
-typedef void (*func_type)();
-
-int main()
-{
-#ifndef inet_ntoa_r
-  func_type func;
-  func = (func_type)inet_ntoa_r;
-#endif
-  return 0;
-}
-#endif
-#ifdef HAVE_INET_NTOA_R_DECL_REENTRANT
-#define _REENTRANT
-#include <arpa/inet.h>
-
-typedef void (*func_type)();
-
-int main()
-{
-#ifndef inet_ntoa_r
-  func_type func;
-  func = (func_type)&inet_ntoa_r;
-#endif
-  return 0;
-}
-#endif
-#ifdef HAVE_GETADDRINFO
-#include <netdb.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-
-int main(void) {
-    struct addrinfo hints, *ai;
-    int error;
-
-    memset(&hints, 0, sizeof(hints));
-    hints.ai_family = AF_UNSPEC;
-    hints.ai_socktype = SOCK_STREAM;
-#ifndef getaddrinfo
-    (void)getaddrinfo;
-#endif
-    error = getaddrinfo("127.0.0.1", "8080", &hints, &ai);
-    if (error) {
-        return 1;
-    }
-    return 0;
-}
-#endif
-#ifdef HAVE_FILE_OFFSET_BITS
-#ifdef _FILE_OFFSET_BITS
-#undef _FILE_OFFSET_BITS
-#endif
-#define _FILE_OFFSET_BITS 64
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                       && LARGE_OFF_T % 2147483647 == 1)
-                      ? 1 : -1];
-int main () { ; return 0; }
-#endif
-#ifdef HAVE_IOCTLSOCKET
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
-#  endif
-#endif
-
-int
-main ()
-{
-
-/* ioctlsocket source code */
- int socket;
- unsigned long flags = ioctlsocket(socket, FIONBIO, &flags);
-
-  ;
-  return 0;
-}
-
-#endif
-#ifdef HAVE_IOCTLSOCKET_CAMEL
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
-#  endif
-#endif
-
-int
-main ()
-{
-
-/* IoctlSocket source code */
-    if(0 != IoctlSocket(0, 0, 0))
-      return 1;
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_IOCTLSOCKET_CAMEL_FIONBIO
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
-#  endif
-#endif
-
-int
-main ()
-{
-
-/* IoctlSocket source code */
-        long flags = 0;
-        if(0 != ioctlsocket(0, FIONBIO, &flags))
-          return 1;
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_IOCTLSOCKET_FIONBIO
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
-#  endif
-#endif
-
-int
-main ()
-{
-
-        int flags = 0;
-        if(0 != ioctlsocket(0, FIONBIO, &flags))
-          return 1;
-
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_IOCTL_FIONBIO
-/* headers for FIONBIO test */
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#  include <sys/ioctl.h>
-#endif
-#ifdef HAVE_STROPTS_H
-#  include <stropts.h>
-#endif
-
-int
-main ()
-{
-
-        int flags = 0;
-        if(0 != ioctl(0, FIONBIO, &flags))
-          return 1;
-
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_IOCTL_SIOCGIFADDR
-/* headers for FIONBIO test */
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#  include <sys/ioctl.h>
-#endif
-#ifdef HAVE_STROPTS_H
-#  include <stropts.h>
-#endif
-#include <net/if.h>
-
-int
-main ()
-{
-        struct ifreq ifr;
-        if(0 != ioctl(0, SIOCGIFADDR, &ifr))
-          return 1;
-
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_SETSOCKOPT_SO_NONBLOCK
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
-#  endif
-#endif
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-/* includes end */
-
-int
-main ()
-{
-        if(0 != setsockopt(0, SOL_SOCKET, SO_NONBLOCK, 0, 0))
-          return 1;
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GLIBC_STRERROR_R
-#include <string.h>
-#include <errno.h>
-int
-main () {
-  char buffer[1024]; /* big enough to play with */
-  char *string =
-    strerror_r(EACCES, buffer, sizeof(buffer));
-    /* this should've returned a string */
-    if(!string || !string[0])
-      return 99;
-    return 0;
-}
-#endif
-#ifdef HAVE_POSIX_STRERROR_R
-#include <string.h>
-#include <errno.h>
-int
-main () {
-  char buffer[1024]; /* big enough to play with */
-  int error =
-    strerror_r(EACCES, buffer, sizeof(buffer));
-    /* This should've returned zero, and written an error string in the
-       buffer.*/
-    if(!buffer[0] || error)
-      return 99;
-    return 0;
-}
-#endif
diff --git a/src/other/curl/CMake/FindOpenSSL.cmake b/src/other/curl/CMake/FindOpenSSL.cmake
deleted file mode 100644
index 63a9d60..0000000
--- a/src/other/curl/CMake/FindOpenSSL.cmake
+++ /dev/null
@@ -1,19 +0,0 @@
-# Extension of the standard FindOpenSSL.cmake
-# Adds OPENSSL_INCLUDE_DIRS and libeay32
-include("${CMAKE_ROOT}/Modules/FindOpenSSL.cmake")
-
-# Bill Hoffman told that libeay32 is necessary for him:
-find_library(SSL_LIBEAY NAMES libeay32)
-
-if(OPENSSL_FOUND)
-  if(SSL_LIBEAY)
-    list(APPEND OPENSSL_LIBRARIES ${SSL_LIBEAY})
-  else()
-    set(OPENSSL_FOUND FALSE)
-  endif()
-endif()
-
-
-if(OPENSSL_FOUND)
-  set(OPENSSL_INCLUDE_DIRS ${OPENSSL_INCLUDE_DIR})
-endif()
diff --git a/src/other/curl/CMake/FindZLIB.cmake b/src/other/curl/CMake/FindZLIB.cmake
deleted file mode 100644
index 87f1d4f..0000000
--- a/src/other/curl/CMake/FindZLIB.cmake
+++ /dev/null
@@ -1,8 +0,0 @@
-# Locate zlib
-include("${CMAKE_ROOT}/Modules/FindZLIB.cmake")
-
-find_library(ZLIB_LIBRARY_DEBUG NAMES zd zlibd zdlld zlib1d )
-
-if(ZLIB_FOUND AND ZLIB_LIBRARY_DEBUG)
-  set( ZLIB_LIBRARIES optimized "${ZLIB_LIBRARY}" debug ${ZLIB_LIBRARY_DEBUG})
-endif()
diff --git a/src/other/curl/CMake/OtherTests.cmake b/src/other/curl/CMake/OtherTests.cmake
deleted file mode 100644
index 89d0048..0000000
--- a/src/other/curl/CMake/OtherTests.cmake
+++ /dev/null
@@ -1,250 +0,0 @@
-include(CurlCheckCSourceCompiles)
-set(EXTRA_DEFINES "__unused1\n#undef inline\n#define __unused2")
-set(HEADER_INCLUDES)
-set(headers_hack)
-
-macro(add_header_include check header)
-  if(${check})
-    set(headers_hack
-      "${headers_hack}\n#include <${header}>")
-    #SET(HEADER_INCLUDES
-    #  ${HEADER_INCLUDES}
-    #  "${header}")
-  endif(${check})
-endmacro(add_header_include)
-
-set(signature_call_conv)
-if(HAVE_WINDOWS_H)
-  add_header_include(HAVE_WINDOWS_H "windows.h")
-  add_header_include(HAVE_WINSOCK2_H "winsock2.h")
-  add_header_include(HAVE_WINSOCK_H "winsock.h")
-  set(EXTRA_DEFINES ${EXTRA_DEFINES}
-    "__unused7\n#ifndef WIN32_LEAN_AND_MEAN\n#define WIN32_LEAN_AND_MEAN\n#endif\n#define __unused3")
-  set(signature_call_conv "PASCAL")
-else(HAVE_WINDOWS_H)
-  add_header_include(HAVE_SYS_TYPES_H "sys/types.h")
-  add_header_include(HAVE_SYS_SOCKET_H "sys/socket.h")
-endif(HAVE_WINDOWS_H)
-
-set(EXTRA_DEFINES_BACKUP "${EXTRA_DEFINES}")
-set(EXTRA_DEFINES "${EXTRA_DEFINES_BACKUP}\n${headers_hack}\n${extern_line}\n#define __unused5")
-curl_check_c_source_compiles("recv(0, 0, 0, 0)" curl_cv_recv)
-if(curl_cv_recv)
-  #    AC_CACHE_CHECK([types of arguments and return type for recv],
-  #[curl_cv_func_recv_args], [
-  #SET(curl_cv_func_recv_args "unknown")
-  #for recv_retv in 'int' 'ssize_t'; do
-  if(NOT DEFINED curl_cv_func_recv_args OR "${curl_cv_func_recv_args}" STREQUAL "unknown")
-    foreach(recv_retv "int" "ssize_t" )
-      foreach(recv_arg1 "int" "ssize_t" "SOCKET")
-        foreach(recv_arg2 "void *" "char *")
-          foreach(recv_arg3 "size_t" "int" "socklen_t" "unsigned int")
-            foreach(recv_arg4 "int" "unsigned int")
-              if(NOT curl_cv_func_recv_done)
-                set(curl_cv_func_recv_test "UNKNOWN")
-                set(extern_line "extern ${recv_retv} ${signature_call_conv} recv(${recv_arg1}, ${recv_arg2}, ${recv_arg3}, ${recv_arg4})\;")
-                set(EXTRA_DEFINES "${EXTRA_DEFINES_BACKUP}\n${headers_hack}\n${extern_line}\n#define __unused5")
-                curl_check_c_source_compiles("
-                    ${recv_arg1} s=0;
-                    ${recv_arg2} buf=0;
-                    ${recv_arg3} len=0;
-                    ${recv_arg4} flags=0;
-                    ${recv_retv} res = recv(s, buf, len, flags)"
-                  curl_cv_func_recv_test
-                  "${recv_retv} recv(${recv_arg1}, ${recv_arg2}, ${recv_arg3}, ${recv_arg4})")
-                if(curl_cv_func_recv_test)
-                  set(curl_cv_func_recv_args
-                    "${recv_arg1},${recv_arg2},${recv_arg3},${recv_arg4},${recv_retv}")
-                  set(RECV_TYPE_ARG1 "${recv_arg1}")
-                  set(RECV_TYPE_ARG2 "${recv_arg2}")
-                  set(RECV_TYPE_ARG3 "${recv_arg3}")
-                  set(RECV_TYPE_ARG4 "${recv_arg4}")
-                  set(RECV_TYPE_RETV "${recv_retv}")
-                  set(HAVE_RECV 1)
-                  set(curl_cv_func_recv_done 1)
-                endif(curl_cv_func_recv_test)
-              endif(NOT curl_cv_func_recv_done)
-            endforeach(recv_arg4)
-          endforeach(recv_arg3)
-        endforeach(recv_arg2)
-      endforeach(recv_arg1)
-    endforeach(recv_retv)
-  else(NOT DEFINED curl_cv_func_recv_args OR "${curl_cv_func_recv_args}" STREQUAL "unknown")
-    string(REGEX REPLACE "^([^,]*),[^,]*,[^,]*,[^,]*,[^,]*$" "\\1" RECV_TYPE_ARG1 "${curl_cv_func_recv_args}")
-    string(REGEX REPLACE "^[^,]*,([^,]*),[^,]*,[^,]*,[^,]*$" "\\1" RECV_TYPE_ARG2 "${curl_cv_func_recv_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,([^,]*),[^,]*,[^,]*$" "\\1" RECV_TYPE_ARG3 "${curl_cv_func_recv_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,[^,]*,([^,]*),[^,]*$" "\\1" RECV_TYPE_ARG4 "${curl_cv_func_recv_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,[^,]*,[^,]*,([^,]*)$" "\\1" RECV_TYPE_RETV "${curl_cv_func_recv_args}")
-    #MESSAGE("RECV_TYPE_ARG1 ${RECV_TYPE_ARG1}")
-    #MESSAGE("RECV_TYPE_ARG2 ${RECV_TYPE_ARG2}")
-    #MESSAGE("RECV_TYPE_ARG3 ${RECV_TYPE_ARG3}")
-    #MESSAGE("RECV_TYPE_ARG4 ${RECV_TYPE_ARG4}")
-    #MESSAGE("RECV_TYPE_RETV ${RECV_TYPE_RETV}")
-  endif(NOT DEFINED curl_cv_func_recv_args OR "${curl_cv_func_recv_args}" STREQUAL "unknown")
-
-  if("${curl_cv_func_recv_args}" STREQUAL "unknown")
-    message(FATAL_ERROR "Cannot find proper types to use for recv args")
-  endif("${curl_cv_func_recv_args}" STREQUAL "unknown")
-else(curl_cv_recv)
-  message(FATAL_ERROR "Unable to link function recv")
-endif(curl_cv_recv)
-set(curl_cv_func_recv_args "${curl_cv_func_recv_args}" CACHE INTERNAL "Arguments for recv")
-set(HAVE_RECV 1)
-
-curl_check_c_source_compiles("send(0, 0, 0, 0)" curl_cv_send)
-if(curl_cv_send)
-  #    AC_CACHE_CHECK([types of arguments and return type for send],
-  #[curl_cv_func_send_args], [
-  #SET(curl_cv_func_send_args "unknown")
-  #for send_retv in 'int' 'ssize_t'; do
-  if(NOT DEFINED curl_cv_func_send_args OR "${curl_cv_func_send_args}" STREQUAL "unknown")
-    foreach(send_retv "int" "ssize_t" )
-      foreach(send_arg1 "int" "ssize_t" "SOCKET")
-        foreach(send_arg2 "const void *" "void *" "char *" "const char *")
-          foreach(send_arg3 "size_t" "int" "socklen_t" "unsigned int")
-            foreach(send_arg4 "int" "unsigned int")
-              if(NOT curl_cv_func_send_done)
-                set(curl_cv_func_send_test "UNKNOWN")
-                set(extern_line "extern ${send_retv} ${signature_call_conv} send(${send_arg1}, ${send_arg2}, ${send_arg3}, ${send_arg4})\;")
-                set(EXTRA_DEFINES "${EXTRA_DEFINES_BACKUP}\n${headers_hack}\n${extern_line}\n#define __unused5")
-                curl_check_c_source_compiles("
-                    ${send_arg1} s=0;
-                    ${send_arg2} buf=0;
-                    ${send_arg3} len=0;
-                    ${send_arg4} flags=0;
-                    ${send_retv} res = send(s, buf, len, flags)"
-                  curl_cv_func_send_test
-                  "${send_retv} send(${send_arg1}, ${send_arg2}, ${send_arg3}, ${send_arg4})")
-                if(curl_cv_func_send_test)
-                  #MESSAGE("Found arguments: ${curl_cv_func_send_test}")
-                  string(REGEX REPLACE "(const) .*" "\\1" send_qual_arg2 "${send_arg2}")
-                  string(REGEX REPLACE "const (.*)" "\\1" send_arg2 "${send_arg2}")
-                  set(curl_cv_func_send_args
-                    "${send_arg1},${send_arg2},${send_arg3},${send_arg4},${send_retv},${send_qual_arg2}")
-                  set(SEND_TYPE_ARG1 "${send_arg1}")
-                  set(SEND_TYPE_ARG2 "${send_arg2}")
-                  set(SEND_TYPE_ARG3 "${send_arg3}")
-                  set(SEND_TYPE_ARG4 "${send_arg4}")
-                  set(SEND_TYPE_RETV "${send_retv}")
-                  set(HAVE_SEND 1)
-                  set(curl_cv_func_send_done 1)
-                endif(curl_cv_func_send_test)
-              endif(NOT curl_cv_func_send_done)
-            endforeach(send_arg4)
-          endforeach(send_arg3)
-        endforeach(send_arg2)
-      endforeach(send_arg1)
-    endforeach(send_retv)
-  else(NOT DEFINED curl_cv_func_send_args OR "${curl_cv_func_send_args}" STREQUAL "unknown")
-    string(REGEX REPLACE "^([^,]*),[^,]*,[^,]*,[^,]*,[^,]*,[^,]*$" "\\1" SEND_TYPE_ARG1 "${curl_cv_func_send_args}")
-    string(REGEX REPLACE "^[^,]*,([^,]*),[^,]*,[^,]*,[^,]*,[^,]*$" "\\1" SEND_TYPE_ARG2 "${curl_cv_func_send_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,([^,]*),[^,]*,[^,]*,[^,]*$" "\\1" SEND_TYPE_ARG3 "${curl_cv_func_send_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,[^,]*,([^,]*),[^,]*,[^,]*$" "\\1" SEND_TYPE_ARG4 "${curl_cv_func_send_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,[^,]*,[^,]*,([^,]*),[^,]*$" "\\1" SEND_TYPE_RETV "${curl_cv_func_send_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,[^,]*,[^,]*,[^,]*,([^,]*)$" "\\1" SEND_QUAL_ARG2 "${curl_cv_func_send_args}")
-    #MESSAGE("SEND_TYPE_ARG1 ${SEND_TYPE_ARG1}")
-    #MESSAGE("SEND_TYPE_ARG2 ${SEND_TYPE_ARG2}")
-    #MESSAGE("SEND_TYPE_ARG3 ${SEND_TYPE_ARG3}")
-    #MESSAGE("SEND_TYPE_ARG4 ${SEND_TYPE_ARG4}")
-    #MESSAGE("SEND_TYPE_RETV ${SEND_TYPE_RETV}")
-    #MESSAGE("SEND_QUAL_ARG2 ${SEND_QUAL_ARG2}")
-  endif(NOT DEFINED curl_cv_func_send_args OR "${curl_cv_func_send_args}" STREQUAL "unknown")
-
-  if("${curl_cv_func_send_args}" STREQUAL "unknown")
-    message(FATAL_ERROR "Cannot find proper types to use for send args")
-  endif("${curl_cv_func_send_args}" STREQUAL "unknown")
-  set(SEND_QUAL_ARG2 "const")
-else(curl_cv_send)
-  message(FATAL_ERROR "Unable to link function send")
-endif(curl_cv_send)
-set(curl_cv_func_send_args "${curl_cv_func_send_args}" CACHE INTERNAL "Arguments for send")
-set(HAVE_SEND 1)
-
-set(EXTRA_DEFINES "${EXTRA_DEFINES}\n${headers_hack}\n#define __unused5")
-curl_check_c_source_compiles("int flag = MSG_NOSIGNAL" HAVE_MSG_NOSIGNAL)
-
-set(EXTRA_DEFINES "__unused1\n#undef inline\n#define __unused2")
-set(HEADER_INCLUDES)
-set(headers_hack)
-
-macro(add_header_include check header)
-  if(${check})
-    set(headers_hack
-      "${headers_hack}\n#include <${header}>")
-    #SET(HEADER_INCLUDES
-    #  ${HEADER_INCLUDES}
-    #  "${header}")
-  endif(${check})
-endmacro(add_header_include header)
-
-if(HAVE_WINDOWS_H)
-  set(EXTRA_DEFINES ${EXTRA_DEFINES}
-    "__unused7\n#ifndef WIN32_LEAN_AND_MEAN\n#define WIN32_LEAN_AND_MEAN\n#endif\n#define __unused3")
-  add_header_include(HAVE_WINDOWS_H "windows.h")
-  add_header_include(HAVE_WINSOCK2_H "winsock2.h")
-  add_header_include(HAVE_WINSOCK_H "winsock.h")
-else(HAVE_WINDOWS_H)
-  add_header_include(HAVE_SYS_TYPES_H "sys/types.h")
-  add_header_include(HAVE_SYS_TIME_H "sys/time.h")
-  add_header_include(TIME_WITH_SYS_TIME "time.h")
-  add_header_include(HAVE_TIME_H "time.h")
-endif(HAVE_WINDOWS_H)
-set(EXTRA_DEFINES "${EXTRA_DEFINES}\n${headers_hack}\n#define __unused5")
-curl_check_c_source_compiles("struct timeval ts;\nts.tv_sec  = 0;\nts.tv_usec = 0" HAVE_STRUCT_TIMEVAL)
-
-
-include(CurlCheckCSourceRuns)
-set(EXTRA_DEFINES)
-set(HEADER_INCLUDES)
-if(HAVE_SYS_POLL_H)
-  set(HEADER_INCLUDES "sys/poll.h")
-endif(HAVE_SYS_POLL_H)
-curl_check_c_source_runs("return poll((void *)0, 0, 10 /*ms*/)" HAVE_POLL_FINE)
-
-set(HAVE_SIG_ATOMIC_T 1)
-set(EXTRA_DEFINES)
-set(HEADER_INCLUDES)
-if(HAVE_SIGNAL_H)
-  set(HEADER_INCLUDES "signal.h")
-  set(CMAKE_EXTRA_INCLUDE_FILES "signal.h")
-endif(HAVE_SIGNAL_H)
-check_type_size("sig_atomic_t" SIZEOF_SIG_ATOMIC_T)
-if(HAVE_SIZEOF_SIG_ATOMIC_T)
-  curl_check_c_source_compiles("static volatile sig_atomic_t dummy = 0" HAVE_SIG_ATOMIC_T_NOT_VOLATILE)
-  if(NOT HAVE_SIG_ATOMIC_T_NOT_VOLATILE)
-    set(HAVE_SIG_ATOMIC_T_VOLATILE 1)
-  endif(NOT HAVE_SIG_ATOMIC_T_NOT_VOLATILE)
-endif(HAVE_SIZEOF_SIG_ATOMIC_T)
-
-set(CHECK_TYPE_SIZE_PREINCLUDE
-  "#undef inline")
-
-if(HAVE_WINDOWS_H)
-  set(CHECK_TYPE_SIZE_PREINCLUDE "${CHECK_TYPE_SIZE_PREINCLUDE}
-  #ifndef WIN32_LEAN_AND_MEAN
-  #define WIN32_LEAN_AND_MEAN
-  #endif
-  #include <windows.h>")
-  if(HAVE_WINSOCK2_H)
-    set(CHECK_TYPE_SIZE_PREINCLUDE "${CHECK_TYPE_SIZE_PREINCLUDE}\n#include <winsock2.h>")
-  endif(HAVE_WINSOCK2_H)
-else(HAVE_WINDOWS_H)
-  if(HAVE_SYS_SOCKET_H)
-    set(CMAKE_EXTRA_INCLUDE_FILES ${CMAKE_EXTRA_INCLUDE_FILES}
-      "sys/socket.h")
-  endif(HAVE_SYS_SOCKET_H)
-  if(HAVE_NETINET_IN_H)
-    set(CMAKE_EXTRA_INCLUDE_FILES ${CMAKE_EXTRA_INCLUDE_FILES}
-      "netinet/in.h")
-  endif(HAVE_NETINET_IN_H)
-  if(HAVE_ARPA_INET_H)
-    set(CMAKE_EXTRA_INCLUDE_FILES ${CMAKE_EXTRA_INCLUDE_FILES}
-      "arpa/inet.h")
-  endif(HAVE_ARPA_INET_H)
-endif(HAVE_WINDOWS_H)
-
-check_type_size("struct sockaddr_storage" SIZEOF_STRUCT_SOCKADDR_STORAGE)
-if(HAVE_SIZEOF_STRUCT_SOCKADDR_STORAGE)
-  set(HAVE_STRUCT_SOCKADDR_STORAGE 1)
-endif(HAVE_SIZEOF_STRUCT_SOCKADDR_STORAGE)
-
diff --git a/src/other/curl/CMake/Platforms/WindowsCache.cmake b/src/other/curl/CMake/Platforms/WindowsCache.cmake
deleted file mode 100644
index 49161f8..0000000
--- a/src/other/curl/CMake/Platforms/WindowsCache.cmake
+++ /dev/null
@@ -1,121 +0,0 @@
-if(NOT UNIX)
-  if(WIN32)
-    set(HAVE_LIBDL 0)
-    set(HAVE_LIBUCB 0)
-    set(HAVE_LIBSOCKET 0)
-    set(NOT_NEED_LIBNSL 0)
-    set(HAVE_LIBNSL 0)
-    set(HAVE_LIBZ 0)
-    set(HAVE_LIBCRYPTO 0)
-
-    set(HAVE_DLOPEN 0)
-
-    set(HAVE_ALLOCA_H 0)
-    set(HAVE_ARPA_INET_H 0)
-    set(HAVE_DLFCN_H 0)
-    set(HAVE_FCNTL_H 1)
-    set(HAVE_FEATURES_H 0)
-    set(HAVE_INTTYPES_H 0)
-    set(HAVE_IO_H 1)
-    set(HAVE_MALLOC_H 1)
-    set(HAVE_MEMORY_H 1)
-    set(HAVE_NETDB_H 0)
-    set(HAVE_NETINET_IF_ETHER_H 0)
-    set(HAVE_NETINET_IN_H 0)
-    set(HAVE_NET_IF_H 0)
-    set(HAVE_PROCESS_H 1)
-    set(HAVE_PWD_H 0)
-    set(HAVE_SETJMP_H 1)
-    set(HAVE_SGTTY_H 0)
-    set(HAVE_SIGNAL_H 1)
-    set(HAVE_SOCKIO_H 0)
-    set(HAVE_STDINT_H 0)
-    set(HAVE_STDLIB_H 1)
-    set(HAVE_STRINGS_H 0)
-    set(HAVE_STRING_H 1)
-    set(HAVE_SYS_PARAM_H 0)
-    set(HAVE_SYS_POLL_H 0)
-    set(HAVE_SYS_SELECT_H 0)
-    set(HAVE_SYS_SOCKET_H 0)
-    set(HAVE_SYS_SOCKIO_H 0)
-    set(HAVE_SYS_STAT_H 1)
-    set(HAVE_SYS_TIME_H 0)
-    set(HAVE_SYS_TYPES_H 1)
-    set(HAVE_SYS_UTIME_H 1)
-    set(HAVE_TERMIOS_H 0)
-    set(HAVE_TERMIO_H 0)
-    set(HAVE_TIME_H 1)
-    set(HAVE_UNISTD_H 0)
-    set(HAVE_UTIME_H 0)
-    set(HAVE_X509_H 0)
-    set(HAVE_ZLIB_H 0)
-
-    set(HAVE_SIZEOF_LONG_DOUBLE 1)
-    set(SIZEOF_LONG_DOUBLE 8)
-
-    set(HAVE_SOCKET 1)
-    set(HAVE_POLL 0)
-    set(HAVE_SELECT 1)
-    set(HAVE_STRDUP 1)
-    set(HAVE_STRSTR 1)
-    set(HAVE_STRTOK_R 0)
-    set(HAVE_STRFTIME 1)
-    set(HAVE_UNAME 0)
-    set(HAVE_STRCASECMP 0)
-    set(HAVE_STRICMP 1)
-    set(HAVE_STRCMPI 1)
-    set(HAVE_GETHOSTBYADDR 1)
-    set(HAVE_GETTIMEOFDAY 0)
-    set(HAVE_INET_ADDR 1)
-    set(HAVE_INET_NTOA 1)
-    set(HAVE_INET_NTOA_R 0)
-    set(HAVE_TCGETATTR 0)
-    set(HAVE_TCSETATTR 0)
-    set(HAVE_PERROR 1)
-    set(HAVE_CLOSESOCKET 1)
-    set(HAVE_SETVBUF 0)
-    set(HAVE_SIGSETJMP 0)
-    set(HAVE_GETPASS_R 0)
-    set(HAVE_STRLCAT 0)
-    set(HAVE_GETPWUID 0)
-    set(HAVE_GETEUID 0)
-    set(HAVE_UTIME 1)
-    set(HAVE_RAND_EGD 0)
-    set(HAVE_RAND_SCREEN 0)
-    set(HAVE_RAND_STATUS 0)
-    set(HAVE_GMTIME_R 0)
-    set(HAVE_LOCALTIME_R 0)
-    set(HAVE_GETHOSTBYADDR_R 0)
-    set(HAVE_GETHOSTBYNAME_R 0)
-    set(HAVE_SIGNAL_FUNC 1)
-    set(HAVE_SIGNAL_MACRO 0)
-
-    set(HAVE_GETHOSTBYADDR_R_5 0)
-    set(HAVE_GETHOSTBYADDR_R_5_REENTRANT 0)
-    set(HAVE_GETHOSTBYADDR_R_7 0)
-    set(HAVE_GETHOSTBYADDR_R_7_REENTRANT 0)
-    set(HAVE_GETHOSTBYADDR_R_8 0)
-    set(HAVE_GETHOSTBYADDR_R_8_REENTRANT 0)
-    set(HAVE_GETHOSTBYNAME_R_3 0)
-    set(HAVE_GETHOSTBYNAME_R_3_REENTRANT 0)
-    set(HAVE_GETHOSTBYNAME_R_5 0)
-    set(HAVE_GETHOSTBYNAME_R_5_REENTRANT 0)
-    set(HAVE_GETHOSTBYNAME_R_6 0)
-    set(HAVE_GETHOSTBYNAME_R_6_REENTRANT 0)
-
-    set(TIME_WITH_SYS_TIME 0)
-    set(HAVE_O_NONBLOCK 0)
-    set(HAVE_IN_ADDR_T 0)
-    set(HAVE_INET_NTOA_R_DECL 0)
-    set(HAVE_INET_NTOA_R_DECL_REENTRANT 0)
-    set(HAVE_GETADDRINFO 0)
-    set(STDC_HEADERS 1)
-    set(RETSIGTYPE_TEST 1)
-
-    set(HAVE_SIGACTION 0)
-    set(HAVE_MACRO_SIGSETJMP 0)
-  else(WIN32)
-    message("This file should be included on Windows platform only")
-  endif(WIN32)
-endif(NOT UNIX)
-
diff --git a/src/other/curl/CMake/Utilities.cmake b/src/other/curl/CMake/Utilities.cmake
deleted file mode 100644
index 37cdfe3..0000000
--- a/src/other/curl/CMake/Utilities.cmake
+++ /dev/null
@@ -1,31 +0,0 @@
-# File containing various utilities
-
-# Converts a CMake list to a string containing elements separated by spaces
-function(TO_LIST_SPACES _LIST_NAME OUTPUT_VAR)
-  set(NEW_LIST_SPACE)
-  foreach(ITEM ${${_LIST_NAME}})
-    set(NEW_LIST_SPACE "${NEW_LIST_SPACE} ${ITEM}")
-  endforeach()
-  string(STRIP ${NEW_LIST_SPACE} NEW_LIST_SPACE)
-  set(${OUTPUT_VAR} "${NEW_LIST_SPACE}" PARENT_SCOPE)
-endfunction()
-
-# Appends a lis of item to a string which is a space-separated list, if they don't already exist.
-function(LIST_SPACES_APPEND_ONCE LIST_NAME)
-  string(REPLACE " " ";" _LIST ${${LIST_NAME}})
-  list(APPEND _LIST ${ARGN})
-  list(REMOVE_DUPLICATES _LIST)
-  to_list_spaces(_LIST NEW_LIST_SPACE)
-  set(${LIST_NAME} "${NEW_LIST_SPACE}" PARENT_SCOPE)
-endfunction()
-
-# Convinience function that does the same as LIST(FIND ...) but with a TRUE/FALSE return value.
-# Ex: IN_STR_LIST(MY_LIST "Searched item" WAS_FOUND)
-function(IN_STR_LIST LIST_NAME ITEM_SEARCHED RETVAL)
-  list(FIND ${LIST_NAME} ${ITEM_SEARCHED} FIND_POS)
-  if(${FIND_POS} EQUAL -1)
-    set(${RETVAL} FALSE PARENT_SCOPE)
-  else()
-    set(${RETVAL} TRUE PARENT_SCOPE)
-  endif()
-endfunction()
diff --git a/src/other/curl/CMakeLists.txt b/src/other/curl/CMakeLists.txt
deleted file mode 100644
index 56c4278..0000000
--- a/src/other/curl/CMakeLists.txt
+++ /dev/null
@@ -1,859 +0,0 @@
-# cURL/libcurl CMake script
-# by Tetetest and Sukender (Benoit Neil)
-
-# TODO:
-# The output .so file lacks the soname number which we currently have within the lib/Makefile.am file
-# Add full (4 or 5 libs) SSL support
-# Add INSTALL target (EXTRA_DIST variables in Makefile.am may be moved to Makefile.inc so that CMake/CPack is aware of what's to include).
-# Add CTests(?)
-# Check on all possible platforms
-# Test with as many configurations possible (With or without any option)
-# Create scripts that help keeping the CMake build system up to date (to reduce maintenance). According to Tetetest:
-#  - lists of headers that 'configure' checks for;
-#  - curl-specific tests (the ones that are in m4/curl-*.m4 files);
-#  - (most obvious thing:) curl version numbers.
-# Add documentation subproject
-#
-# To check:
-# (From Daniel Stenberg) The cmake build selected to run gcc with -fPIC on my box while the plain configure script did not.
-# (From Daniel Stenberg) The gcc command line use neither -g nor any -O options. As a developer, I also treasure our configure scripts's --enable-debug option that sets a long range of "picky" compiler options.
-cmake_minimum_required(VERSION 2.6.2 FATAL_ERROR)
-set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake;${CMAKE_MODULE_PATH}")
-include(Utilities)
-
-project( CURL C )
-
-
-file (READ ${CURL_SOURCE_DIR}/include/curl/curlver.h CURL_VERSION_H_CONTENTS)
-string (REGEX MATCH "LIBCURL_VERSION_MAJOR[ \t]+([0-9]+)"
-  LIBCURL_VERSION_MJ ${CURL_VERSION_H_CONTENTS})
-string (REGEX MATCH "([0-9]+)"
-  LIBCURL_VERSION_MJ ${LIBCURL_VERSION_MJ})
-string (REGEX MATCH
-  "LIBCURL_VERSION_MINOR[ \t]+([0-9]+)"
-  LIBCURL_VERSION_MI ${CURL_VERSION_H_CONTENTS})
-string (REGEX MATCH "([0-9]+)" LIBCURL_VERSION_MI ${LIBCURL_VERSION_MI})
-string (REGEX MATCH
-  "LIBCURL_VERSION_PATCH[ \t]+([0-9]+)"
-  LIBCURL_VERSION_PT ${CURL_VERSION_H_CONTENTS})
-string (REGEX MATCH "([0-9]+)" LIBCURL_VERSION_PT ${LIBCURL_VERSION_PT})
-set (CURL_MAJOR_VERSION ${LIBCURL_VERSION_MJ})
-set (CURL_MINOR_VERSION ${LIBCURL_VERSION_MI})
-set (CURL_PATCH_VERSION ${LIBCURL_VERSION_PT})
-
-include_regular_expression("^.*$")    # Sukender: Is it necessary?
-
-# Setup package meta-data
-# SET(PACKAGE "curl")
-set(CURL_VERSION ${CURL_MAJOR_VERSION}.${CURL_MINOR_VERSION}.${CURL_PATCH_VERSION})
-message(STATUS "curl version=[${CURL_VERSION}]")
-# SET(PACKAGE_TARNAME "curl")
-# SET(PACKAGE_NAME "curl")
-# SET(PACKAGE_VERSION "-")
-# SET(PACKAGE_STRING "curl-")
-# SET(PACKAGE_BUGREPORT "a suitable curl mailing list => http://curl.haxx.se/mail/")
-set(OPERATING_SYSTEM "${CMAKE_SYSTEM_NAME}")
-set(OS "\"${CMAKE_SYSTEM_NAME}\"")
-
-include_directories(${PROJECT_BINARY_DIR}/include/curl)
-include_directories( ${CURL_SOURCE_DIR}/include )
-
-if(WIN32)
-  set(NATIVE_WINDOWS ON)
-endif()
-
-option(BUILD_CURL_EXE "Set to ON to build cURL executable." ON)
-option(BUILD_CURL_TESTS "Set to ON to build cURL tests." ON)
-option(CURL_STATICLIB "Set to ON to build libcurl with static linking." OFF)
-option(CURL_USE_ARES "Set to ON to enable c-ares support" OFF)
-# initialize CURL_LIBS
-set(CURL_LIBS "")
-
-if(CURL_USE_ARES)
-  set(USE_ARES ${CURL_USE_ARES})
-  find_package(CARES REQUIRED)
-  list(APPEND CURL_LIBS ${CARES_LIBRARY} )
-  set(CURL_LIBS ${CURL_LIBS} ${CARES_LIBRARY})
-endif()
-
-option(BUILD_DASHBOARD_REPORTS "Set to ON to activate reporting of cURL builds here http://www.cdash.org/CDashPublic/index.php?project=CURL" OFF)
-if(BUILD_DASHBOARD_REPORTS)
-  #INCLUDE(Dart)
-  include(CTest)
-endif(BUILD_DASHBOARD_REPORTS)
-
-if(MSVC)
-  option(BUILD_RELEASE_DEBUG_DIRS "Set OFF to build each configuration to a separate directory" OFF)
-  mark_as_advanced(BUILD_RELEASE_DEBUG_DIRS)
-endif()
-
-option(CURL_HIDDEN_SYMBOLS "Set to ON to hide libcurl internal symbols (=hide all symbols that aren't officially external)." ON)
-mark_as_advanced(CURL_HIDDEN_SYMBOLS)
-
-# IF(WIN32)
-# OPTION(CURL_WINDOWS_SSPI "Use windows libraries to allow NTLM authentication without openssl" ON)
-# MARK_AS_ADVANCED(CURL_WINDOWS_SSPI)
-# ENDIF()
-
-option(HTTP_ONLY "disables all protocols except HTTP (This overrides all CURL_DISABLE_* options)" OFF)
-mark_as_advanced(HTTP_ONLY)
-option(CURL_DISABLE_FTP "disables FTP" OFF)
-mark_as_advanced(CURL_DISABLE_FTP)
-option(CURL_DISABLE_LDAP "disables LDAP" OFF)
-mark_as_advanced(CURL_DISABLE_LDAP)
-option(CURL_DISABLE_TELNET "disables Telnet" OFF)
-mark_as_advanced(CURL_DISABLE_TELNET)
-option(CURL_DISABLE_DICT "disables DICT" OFF)
-mark_as_advanced(CURL_DISABLE_DICT)
-option(CURL_DISABLE_FILE "disables FILE" OFF)
-mark_as_advanced(CURL_DISABLE_FILE)
-option(CURL_DISABLE_TFTP "disables TFTP" OFF)
-mark_as_advanced(CURL_DISABLE_TFTP)
-option(CURL_DISABLE_HTTP "disables HTTP" OFF)
-mark_as_advanced(CURL_DISABLE_HTTP)
-
-option(CURL_DISABLE_LDAPS "to disable LDAPS" OFF)
-mark_as_advanced(CURL_DISABLE_LDAPS)
-if(WIN32)
-  set(CURL_DEFAULT_DISABLE_LDAP OFF)
-  # some windows compilers do not have wldap32
-  if( NOT HAVE_WLDAP32)
-    set(CURL_DISABLE_LDAP ON CACHE BOOL "" FORCE)
-    message(STATUS "wldap32 not found CURL_DISABLE_LDAP set ON")
-    option(CURL_LDAP_WIN "Use W$ LDAP implementation" OFF)
-  else()
-    option(CURL_LDAP_WIN "Use W$ LDAP implementation" ON)
-  endif()
-  mark_as_advanced(CURL_LDAP_WIN)
-  set(CURL_LDAP_HYBRID OFF)
-else()
-  option(CURL_LDAP_HYBRID "W$ LDAP with non-W$ compiler" OFF)
-  mark_as_advanced(CURL_LDAP_HYBRID)
-  set(CURL_LDAP_WIN OFF)
-endif()
-
-if(HTTP_ONLY)
-  set(CURL_DISABLE_FTP ON)
-  set(CURL_DISABLE_LDAP ON)
-  set(CURL_DISABLE_TELNET ON)
-  set(CURL_DISABLE_DICT ON)
-  set(CURL_DISABLE_FILE ON)
-  set(CURL_DISABLE_TFTP ON)
-endif()
-
-option(CURL_DISABLE_COOKIES "to disable cookies support" OFF)
-mark_as_advanced(CURL_DISABLE_COOKIES)
-
-option(CURL_DISABLE_CRYPTO_AUTH "to disable cryptographic authentication" OFF)
-mark_as_advanced(CURL_DISABLE_CRYPTO_AUTH)
-option(CURL_DISABLE_VERBOSE_STRINGS "to disable verbose strings" OFF)
-mark_as_advanced(CURL_DISABLE_VERBOSE_STRINGS)
-option(DISABLED_THREADSAFE "Set to explicitly specify we don't want to use thread-safe functions" OFF)
-mark_as_advanced(DISABLED_THREADSAFE)
-option(ENABLE_IPV6 "Define if you want to enable IPv6 support" OFF)
-mark_as_advanced(ENABLE_IPV6)
-
-if(WIN32)
-  list_spaces_append_once(CMAKE_C_STANDARD_LIBRARIES wsock32.lib ws2_32.lib)  # bufferoverflowu.lib
-  if(CURL_DISABLE_LDAP)
-    # Remove wldap32.lib from space-separated list
-    string(REPLACE " " ";" _LIST ${CMAKE_C_STANDARD_LIBRARIES})
-    list(REMOVE_ITEM _LIST "wldap32.lib")
-    to_list_spaces(_LIST CMAKE_C_STANDARD_LIBRARIES)
-  else()
-    # Append wldap32.lib
-    list_spaces_append_once(CMAKE_C_STANDARD_LIBRARIES wldap32.lib)
-  endif()
-  set(CMAKE_C_STANDARD_LIBRARIES "${CMAKE_C_STANDARD_LIBRARIES}"   CACHE STRING "" FORCE)
-endif()
-
-
-# We need ansi c-flags, especially on HP
-set(CMAKE_C_FLAGS "${CMAKE_ANSI_CFLAGS} ${CMAKE_C_FLAGS}")
-set(CMAKE_REQUIRED_FLAGS ${CMAKE_ANSI_CFLAGS})
-
-# Disable warnings on Borland to avoid changing 3rd party code.
-if(BORLAND)
-  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w-")
-endif(BORLAND)
-
-# If we are on AIX, do the _ALL_SOURCE magic
-if(${CMAKE_SYSTEM_NAME} MATCHES AIX)
-  set(_ALL_SOURCE 1)
-endif(${CMAKE_SYSTEM_NAME} MATCHES AIX)
-
-# Include all the necessary files for macros
-include (CheckFunctionExists)
-include (CheckIncludeFile)
-include (CheckIncludeFiles)
-include (CheckLibraryExists)
-include (CheckSymbolExists)
-# if crosscompiling is on, the CHECK_TYPE_SIZE macro coming with cmake uses
-# TRY_COMPILE instead of TRY_RUN which makes crosscompiling easier, Alex
-if(CMAKE_CROSSCOMPILING)
-  include ("${CMAKE_MODULE_PATH}/CheckTypeSize.cmake")
-else(CMAKE_CROSSCOMPILING)
-  include (CheckTypeSize)
-endif(CMAKE_CROSSCOMPILING)
-
-# On windows preload settings
-if(WIN32)
-  include(${CMAKE_CURRENT_SOURCE_DIR}/CMake/Platforms/WindowsCache.cmake)
-endif(WIN32)
-
-# This macro checks if the symbol exists in the library and if it
-# does, it appends library to the list.
-macro(CHECK_LIBRARY_EXISTS_CONCAT LIBRARY SYMBOL VARIABLE)
-  check_library_exists("${LIBRARY};${CURL_LIBS}" ${SYMBOL} ""
-    ${VARIABLE})
-  if(${VARIABLE})
-    set(CURL_LIBS ${CURL_LIBS} ${LIBRARY})
-  endif(${VARIABLE})
-endmacro(CHECK_LIBRARY_EXISTS_CONCAT)
-
-# Check for all needed libraries
-check_library_exists_concat("dl"     dlopen       HAVE_LIBDL)
-check_library_exists_concat("socket" connect      HAVE_LIBSOCKET)
-check_library_exists("c" gethostbyname "" NOT_NEED_LIBNSL)
-
-# Yellowtab Zeta needs different libraries than BeOS 5.
-if(BEOS)
-  set(NOT_NEED_LIBNSL 1)
-  check_library_exists_concat("bind" gethostbyname HAVE_LIBBIND)
-  check_library_exists_concat("bnetapi" closesocket HAVE_LIBBNETAPI)
-endif(BEOS)
-
-if(NOT NOT_NEED_LIBNSL)
-  check_library_exists_concat("nsl"    gethostbyname  HAVE_LIBNSL)
-endif(NOT NOT_NEED_LIBNSL)
-
-check_library_exists_concat("ws2_32" getch        HAVE_LIBWS2_32)
-check_library_exists_concat("winmm"  getch        HAVE_LIBWINMM)
-check_library_exists("wldap32" cldap_open "" HAVE_WLDAP32)
-
-# IF(NOT CURL_SPECIAL_LIBZ)
-#  CHECK_LIBRARY_EXISTS_CONCAT("z"      inflateEnd   HAVE_LIBZ)
-# ENDIF(NOT CURL_SPECIAL_LIBZ)
-
-option(CMAKE_USE_OPENSSL "Use OpenSSL code. Experimental" ON)
-mark_as_advanced(CMAKE_USE_OPENSSL)
-if(CMAKE_USE_OPENSSL)
-  if(WIN32)
-    find_package(OpenSSL)
-    if(OPENSSL_FOUND)
-      set(USE_SSLEAY TRUE)
-      set(USE_OPENSSL TRUE)
-      list(APPEND CURL_LIBS ${OPENSSL_LIBRARIES} )
-    else()
-      set(CMAKE_USE_OPENSSL FALSE)
-      message(STATUS "OpenSSL NOT Found, disabling CMAKE_USE_OPENSSL")
-    endif()
-  else(WIN32)
-    check_library_exists_concat("crypto" CRYPTO_lock  HAVE_LIBCRYPTO)
-    check_library_exists_concat("ssl"    SSL_connect  HAVE_LIBSSL)
-  endif(WIN32)
-endif(CMAKE_USE_OPENSSL)
-
-# Check for idn
-check_library_exists_concat("idn" idna_to_ascii_lz HAVE_LIBIDN)
-
-# Check for LDAP
-check_library_exists_concat("ldap" ldap_init HAVE_LIBLDAP)
-# if(NOT HAVE_LIBLDAP)
-# SET(CURL_DISABLE_LDAP ON)
-# endif(NOT HAVE_LIBLDAP)
-
-# Check for symbol dlopen (same as HAVE_LIBDL)
-check_library_exists("${CURL_LIBS}" dlopen "" HAVE_DLOPEN)
-
-# For other tests to use the same libraries
-set(CMAKE_REQUIRED_LIBRARIES ${CURL_LIBS})
-
-option(CURL_ZLIB "Set to ON to enable building cURL with zlib support." ON)
-set(HAVE_LIBZ OFF)
-set(HAVE_ZLIB_H OFF)
-set(HAVE_ZLIB OFF)
-if(CURL_ZLIB)  # AND CURL_CONFIG_HAS_BEEN_RUN_BEFORE
-  find_package(ZLIB QUIET)
-  if(ZLIB_FOUND)
-    set(HAVE_ZLIB_H ON)
-    set(HAVE_ZLIB ON)
-    set(HAVE_LIBZ ON)
-  endif()
-endif()
-
-# If we have features.h, then do the _BSD_SOURCE magic
-check_include_file("features.h"       HAVE_FEATURES_H)
-
-# Check if header file exists and add it to the list.
-macro(CHECK_INCLUDE_FILE_CONCAT FILE VARIABLE)
-  check_include_files("${CURL_INCLUDES};${FILE}" ${VARIABLE})
-  if(${VARIABLE})
-    set(CURL_INCLUDES ${CURL_INCLUDES} ${FILE})
-    set(CURL_TEST_DEFINES "${CURL_TEST_DEFINES} -D${VARIABLE}")
-  endif(${VARIABLE})
-endmacro(CHECK_INCLUDE_FILE_CONCAT)
-
-
-# Check for header files
-if(NOT UNIX)
-  check_include_file_concat("ws2tcpip.h"     HAVE_WS2TCPIP_H)
-  check_include_file_concat("winsock2.h"     HAVE_WINSOCK2_H)
-endif(NOT UNIX)
-check_include_file_concat("stdio.h"          HAVE_STDIO_H)
-if(NOT UNIX)
-  check_include_file_concat("windows.h"      HAVE_WINDOWS_H)
-  check_include_file_concat("winsock.h"      HAVE_WINSOCK_H)
-endif(NOT UNIX)
-
-check_include_file_concat("inttypes.h"       HAVE_INTTYPES_H)
-check_include_file_concat("sys/filio.h"      HAVE_SYS_FILIO_H)
-check_include_file_concat("sys/ioctl.h"      HAVE_SYS_IOCTL_H)
-check_include_file_concat("sys/param.h"      HAVE_SYS_PARAM_H)
-check_include_file_concat("sys/poll.h"       HAVE_SYS_POLL_H)
-check_include_file_concat("sys/resource.h"   HAVE_SYS_RESOURCE_H)
-check_include_file_concat("sys/select.h"     HAVE_SYS_SELECT_H)
-check_include_file_concat("sys/socket.h"     HAVE_SYS_SOCKET_H)
-check_include_file_concat("sys/sockio.h"     HAVE_SYS_SOCKIO_H)
-check_include_file_concat("sys/stat.h"       HAVE_SYS_STAT_H)
-check_include_file_concat("sys/time.h"       HAVE_SYS_TIME_H)
-check_include_file_concat("sys/types.h"      HAVE_SYS_TYPES_H)
-check_include_file_concat("sys/uio.h"        HAVE_SYS_UIO_H)
-check_include_file_concat("sys/un.h"         HAVE_SYS_UN_H)
-check_include_file_concat("sys/utime.h"      HAVE_SYS_UTIME_H)
-check_include_file_concat("alloca.h"         HAVE_ALLOCA_H)
-check_include_file_concat("arpa/inet.h"      HAVE_ARPA_INET_H)
-check_include_file_concat("arpa/tftp.h"      HAVE_ARPA_TFTP_H)
-check_include_file_concat("assert.h"         HAVE_ASSERT_H)
-check_include_file_concat("crypto.h"         HAVE_CRYPTO_H)
-check_include_file_concat("des.h"            HAVE_DES_H)
-check_include_file_concat("err.h"            HAVE_ERR_H)
-check_include_file_concat("errno.h"          HAVE_ERRNO_H)
-check_include_file_concat("fcntl.h"          HAVE_FCNTL_H)
-check_include_file_concat("gssapi/gssapi.h"  HAVE_GSSAPI_GSSAPI_H)
-check_include_file_concat("gssapi/gssapi_generic.h" HAVE_GSSAPI_GSSAPI_GENERIC_H)
-check_include_file_concat("gssapi/gssapi_krb5.h" HAVE_GSSAPI_GSSAPI_KRB5_H)
-check_include_file_concat("idn-free.h"       HAVE_IDN_FREE_H)
-check_include_file_concat("ifaddrs.h"        HAVE_IFADDRS_H)
-check_include_file_concat("io.h"             HAVE_IO_H)
-check_include_file_concat("krb.h"            HAVE_KRB_H)
-check_include_file_concat("libgen.h"         HAVE_LIBGEN_H)
-check_include_file_concat("libssh2.h"        HAVE_LIBSSH2_H)
-check_include_file_concat("limits.h"         HAVE_LIMITS_H)
-check_include_file_concat("locale.h"         HAVE_LOCALE_H)
-check_include_file_concat("net/if.h"         HAVE_NET_IF_H)
-check_include_file_concat("netdb.h"          HAVE_NETDB_H)
-check_include_file_concat("netinet/in.h"     HAVE_NETINET_IN_H)
-check_include_file_concat("netinet/tcp.h"    HAVE_NETINET_TCP_H)
-check_include_file_concat("openssl/crypto.h" HAVE_OPENSSL_CRYPTO_H)
-check_include_file_concat("openssl/engine.h" HAVE_OPENSSL_ENGINE_H)
-check_include_file_concat("openssl/err.h"    HAVE_OPENSSL_ERR_H)
-check_include_file_concat("openssl/pem.h"    HAVE_OPENSSL_PEM_H)
-check_include_file_concat("openssl/pkcs12.h" HAVE_OPENSSL_PKCS12_H)
-check_include_file_concat("openssl/rsa.h"    HAVE_OPENSSL_RSA_H)
-check_include_file_concat("openssl/ssl.h"    HAVE_OPENSSL_SSL_H)
-check_include_file_concat("openssl/x509.h"   HAVE_OPENSSL_X509_H)
-check_include_file_concat("pem.h"            HAVE_PEM_H)
-check_include_file_concat("poll.h"           HAVE_POLL_H)
-check_include_file_concat("pwd.h"            HAVE_PWD_H)
-check_include_file_concat("rsa.h"            HAVE_RSA_H)
-check_include_file_concat("setjmp.h"         HAVE_SETJMP_H)
-check_include_file_concat("sgtty.h"          HAVE_SGTTY_H)
-check_include_file_concat("signal.h"         HAVE_SIGNAL_H)
-check_include_file_concat("ssl.h"            HAVE_SSL_H)
-check_include_file_concat("stdbool.h"        HAVE_STDBOOL_H)
-check_include_file_concat("stdint.h"         HAVE_STDINT_H)
-check_include_file_concat("stdio.h"          HAVE_STDIO_H)
-check_include_file_concat("stdlib.h"         HAVE_STDLIB_H)
-check_include_file_concat("string.h"         HAVE_STRING_H)
-check_include_file_concat("strings.h"        HAVE_STRINGS_H)
-check_include_file_concat("stropts.h"        HAVE_STROPTS_H)
-check_include_file_concat("termio.h"         HAVE_TERMIO_H)
-check_include_file_concat("termios.h"        HAVE_TERMIOS_H)
-check_include_file_concat("time.h"           HAVE_TIME_H)
-check_include_file_concat("tld.h"            HAVE_TLD_H)
-check_include_file_concat("unistd.h"         HAVE_UNISTD_H)
-check_include_file_concat("utime.h"          HAVE_UTIME_H)
-check_include_file_concat("x509.h"           HAVE_X509_H)
-
-check_include_file_concat("process.h"        HAVE_PROCESS_H)
-check_include_file_concat("stddef.h"         HAVE_STDDEF_H)
-check_include_file_concat("dlfcn.h"          HAVE_DLFCN_H)
-check_include_file_concat("malloc.h"         HAVE_MALLOC_H)
-check_include_file_concat("memory.h"         HAVE_MEMORY_H)
-check_include_file_concat("ldap.h"           HAVE_LDAP_H)
-check_include_file_concat("netinet/if_ether.h" HAVE_NETINET_IF_ETHER_H)
-check_include_file_concat("stdint.h"        HAVE_STDINT_H)
-check_include_file_concat("sockio.h"        HAVE_SOCKIO_H)
-check_include_file_concat("sys/utsname.h"   HAVE_SYS_UTSNAME_H)
-check_include_file_concat("idna.h"          HAVE_IDNA_H)
-
-if(CMAKE_USE_OPENSSL)
-  check_include_file_concat("openssl/rand.h"   HAVE_OPENSSL_RAND_H)
-endif(CMAKE_USE_OPENSSL)
-
-if(NOT HAVE_LDAP_H) 
-  message(STATUS "LDAP_H not found CURL_DISABLE_LDAP set ON")
-  set(CURL_DISABLE_LDAP ON CACHE BOOL "" FORCE)
-endif()
-
-
-check_type_size(size_t  SIZEOF_SIZE_T)
-check_type_size(ssize_t  SIZEOF_SSIZE_T)
-check_type_size("long long"  SIZEOF_LONG_LONG)
-check_type_size("long"  SIZEOF_LONG)
-check_type_size("short"  SIZEOF_SHORT)
-check_type_size("int"  SIZEOF_INT)
-check_type_size("__int64"  SIZEOF___INT64)
-check_type_size("long double"  SIZEOF_LONG_DOUBLE)
-check_type_size("time_t"  SIZEOF_TIME_T)
-if(NOT HAVE_SIZEOF_SSIZE_T)
-  if(SIZEOF_LONG EQUAL SIZEOF_SIZE_T)
-    set(ssize_t long)
-  endif(SIZEOF_LONG EQUAL SIZEOF_SIZE_T)
-  if(NOT ssize_t AND SIZEOF___INT64 EQUAL SIZEOF_SIZE_T)
-    set(ssize_t __int64)
-  endif(NOT ssize_t AND SIZEOF___INT64 EQUAL SIZEOF_SIZE_T)
-endif(NOT HAVE_SIZEOF_SSIZE_T)
-
-# Different sizeofs, etc.
-
-#    define CURL_SIZEOF_LONG        4
-#    define CURL_TYPEOF_CURL_OFF_T  long long
-#    define CURL_FORMAT_CURL_OFF_T  "lld"
-#    define CURL_FORMAT_CURL_OFF_TU "llu"
-#    define CURL_FORMAT_OFF_T       "%lld"
-#    define CURL_SIZEOF_CURL_OFF_T  8
-#    define CURL_SUFFIX_CURL_OFF_T  LL
-#    define CURL_SUFFIX_CURL_OFF_TU ULL
-
-set(CURL_SIZEOF_LONG ${SIZEOF_LONG})
-
-if(SIZEOF_LONG EQUAL 8)
-  set(CURL_TYPEOF_CURL_OFF_T long)
-  set(CURL_SIZEOF_CURL_OFF_T 8)
-  set(CURL_FORMAT_CURL_OFF_T "ld")
-  set(CURL_FORMAT_CURL_OFF_TU "lu")
-  set(CURL_FORMAT_OFF_T "%ld")
-  set(CURL_SUFFIX_CURL_OFF_T L)
-  set(CURL_SUFFIX_CURL_OFF_TU LU)
-endif(SIZEOF_LONG EQUAL 8)
-
-if(SIZEOF_LONG_LONG EQUAL 8)
-  set(CURL_TYPEOF_CURL_OFF_T "long long")
-  set(CURL_SIZEOF_CURL_OFF_T 8)
-  set(CURL_FORMAT_CURL_OFF_T "lld")
-  set(CURL_FORMAT_CURL_OFF_TU "llu")
-  set(CURL_FORMAT_OFF_T "%lld")
-  set(CURL_SUFFIX_CURL_OFF_T LL)
-  set(CURL_SUFFIX_CURL_OFF_TU LLU)
-endif(SIZEOF_LONG_LONG EQUAL 8)
-
-if(NOT CURL_TYPEOF_CURL_OFF_T)
-  set(CURL_TYPEOF_CURL_OFF_T ${ssize_t})
-  set(CURL_SIZEOF_CURL_OFF_T ${SIZEOF_SSIZE_T})
-  # TODO: need adjustment here.
-  set(CURL_FORMAT_CURL_OFF_T "ld")
-  set(CURL_FORMAT_CURL_OFF_TU "lu")
-  set(CURL_FORMAT_OFF_T "%ld")
-  set(CURL_SUFFIX_CURL_OFF_T L)
-  set(CURL_SUFFIX_CURL_OFF_TU LU)
-endif(NOT CURL_TYPEOF_CURL_OFF_T)
-
-if(HAVE_SIZEOF_LONG_LONG)
-  set(HAVE_LONGLONG 1)
-  set(HAVE_LL 1)
-endif(HAVE_SIZEOF_LONG_LONG)
-
-find_file(RANDOM_FILE urandom /dev)
-mark_as_advanced(RANDOM_FILE)
-
-# Check for some functions that are used
-check_symbol_exists(basename      "${CURL_INCLUDES}" HAVE_BASENAME)
-check_symbol_exists(socket        "${CURL_INCLUDES}" HAVE_SOCKET)
-check_symbol_exists(poll          "${CURL_INCLUDES}" HAVE_POLL)
-check_symbol_exists(select        "${CURL_INCLUDES}" HAVE_SELECT)
-check_symbol_exists(strdup        "${CURL_INCLUDES}" HAVE_STRDUP)
-check_symbol_exists(strstr        "${CURL_INCLUDES}" HAVE_STRSTR)
-check_symbol_exists(strtok_r      "${CURL_INCLUDES}" HAVE_STRTOK_R)
-check_symbol_exists(strftime      "${CURL_INCLUDES}" HAVE_STRFTIME)
-check_symbol_exists(uname         "${CURL_INCLUDES}" HAVE_UNAME)
-check_symbol_exists(strcasecmp    "${CURL_INCLUDES}" HAVE_STRCASECMP)
-check_symbol_exists(stricmp       "${CURL_INCLUDES}" HAVE_STRICMP)
-check_symbol_exists(strcmpi       "${CURL_INCLUDES}" HAVE_STRCMPI)
-check_symbol_exists(strncmpi      "${CURL_INCLUDES}" HAVE_STRNCMPI)
-check_symbol_exists(alarm         "${CURL_INCLUDES}" HAVE_ALARM)
-if(NOT HAVE_STRNCMPI)
-  set(HAVE_STRCMPI)
-endif(NOT HAVE_STRNCMPI)
-check_symbol_exists(gethostbyaddr "${CURL_INCLUDES}" HAVE_GETHOSTBYADDR)
-check_symbol_exists(gethostbyaddr_r "${CURL_INCLUDES}" HAVE_GETHOSTBYADDR_R)
-check_symbol_exists(gettimeofday  "${CURL_INCLUDES}" HAVE_GETTIMEOFDAY)
-check_symbol_exists(inet_addr     "${CURL_INCLUDES}" HAVE_INET_ADDR)
-check_symbol_exists(inet_ntoa     "${CURL_INCLUDES}" HAVE_INET_NTOA)
-check_symbol_exists(inet_ntoa_r   "${CURL_INCLUDES}" HAVE_INET_NTOA_R)
-check_symbol_exists(tcsetattr     "${CURL_INCLUDES}" HAVE_TCSETATTR)
-check_symbol_exists(tcgetattr     "${CURL_INCLUDES}" HAVE_TCGETATTR)
-check_symbol_exists(perror        "${CURL_INCLUDES}" HAVE_PERROR)
-check_symbol_exists(closesocket   "${CURL_INCLUDES}" HAVE_CLOSESOCKET)
-check_symbol_exists(setvbuf       "${CURL_INCLUDES}" HAVE_SETVBUF)
-check_symbol_exists(sigsetjmp     "${CURL_INCLUDES}" HAVE_SIGSETJMP)
-check_symbol_exists(getpass_r     "${CURL_INCLUDES}" HAVE_GETPASS_R)
-check_symbol_exists(strlcat       "${CURL_INCLUDES}" HAVE_STRLCAT)
-check_symbol_exists(getpwuid      "${CURL_INCLUDES}" HAVE_GETPWUID)
-check_symbol_exists(geteuid       "${CURL_INCLUDES}" HAVE_GETEUID)
-check_symbol_exists(utime         "${CURL_INCLUDES}" HAVE_UTIME)
-if(CMAKE_USE_OPENSSL)
-  check_symbol_exists(RAND_status   "${CURL_INCLUDES}" HAVE_RAND_STATUS)
-  check_symbol_exists(RAND_screen   "${CURL_INCLUDES}" HAVE_RAND_SCREEN)
-  check_symbol_exists(RAND_egd      "${CURL_INCLUDES}" HAVE_RAND_EGD)
-  check_symbol_exists(CRYPTO_cleanup_all_ex_data "${CURL_INCLUDES}"
-    HAVE_CRYPTO_CLEANUP_ALL_EX_DATA)
-  if(HAVE_LIBCRYPTO AND HAVE_LIBSSL)
-    set(USE_OPENSSL 1)
-    set(USE_SSLEAY 1)
-  endif(HAVE_LIBCRYPTO AND HAVE_LIBSSL)
-endif(CMAKE_USE_OPENSSL)
-check_symbol_exists(gmtime_r      "${CURL_INCLUDES}" HAVE_GMTIME_R)
-check_symbol_exists(localtime_r   "${CURL_INCLUDES}" HAVE_LOCALTIME_R)
-
-check_symbol_exists(gethostbyname   "${CURL_INCLUDES}" HAVE_GETHOSTBYNAME)
-check_symbol_exists(gethostbyname_r "${CURL_INCLUDES}" HAVE_GETHOSTBYNAME_R)
-
-check_symbol_exists(signal        "${CURL_INCLUDES}" HAVE_SIGNAL_FUNC)
-check_symbol_exists(SIGALRM       "${CURL_INCLUDES}" HAVE_SIGNAL_MACRO)
-if(HAVE_SIGNAL_FUNC AND HAVE_SIGNAL_MACRO)
-  set(HAVE_SIGNAL 1)
-endif(HAVE_SIGNAL_FUNC AND HAVE_SIGNAL_MACRO)
-check_symbol_exists(uname          "${CURL_INCLUDES}" HAVE_UNAME)
-check_symbol_exists(strtoll        "${CURL_INCLUDES}" HAVE_STRTOLL)
-check_symbol_exists(_strtoi64      "${CURL_INCLUDES}" HAVE__STRTOI64)
-check_symbol_exists(strerror_r     "${CURL_INCLUDES}" HAVE_STRERROR_R)
-check_symbol_exists(siginterrupt   "${CURL_INCLUDES}" HAVE_SIGINTERRUPT)
-check_symbol_exists(perror         "${CURL_INCLUDES}" HAVE_PERROR)
-check_symbol_exists(fork           "${CURL_INCLUDES}" HAVE_FORK)
-check_symbol_exists(freeaddrinfo   "${CURL_INCLUDES}" HAVE_FREEADDRINFO)
-check_symbol_exists(freeifaddrs    "${CURL_INCLUDES}" HAVE_FREEIFADDRS)
-check_symbol_exists(pipe           "${CURL_INCLUDES}" HAVE_PIPE)
-check_symbol_exists(ftruncate      "${CURL_INCLUDES}" HAVE_FTRUNCATE)
-check_symbol_exists(getprotobyname "${CURL_INCLUDES}" HAVE_GETPROTOBYNAME)
-check_symbol_exists(getrlimit      "${CURL_INCLUDES}" HAVE_GETRLIMIT)
-check_symbol_exists(idn_free       "${CURL_INCLUDES}" HAVE_IDN_FREE)
-check_symbol_exists(idna_strerror  "${CURL_INCLUDES}" HAVE_IDNA_STRERROR)
-check_symbol_exists(tld_strerror   "${CURL_INCLUDES}" HAVE_TLD_STRERROR)
-check_symbol_exists(setlocale      "${CURL_INCLUDES}" HAVE_SETLOCALE)
-check_symbol_exists(setrlimit      "${CURL_INCLUDES}" HAVE_SETRLIMIT)
-check_symbol_exists(fcntl          "${CURL_INCLUDES}" HAVE_FCNTL)
-check_symbol_exists(ioctl          "${CURL_INCLUDES}" HAVE_IOCTL)
-check_symbol_exists(setsockopt     "${CURL_INCLUDES}" HAVE_SETSOCKOPT)
-
-# symbol exists in win32, but function does not.
-check_function_exists(inet_pton HAVE_INET_PTON)
-
-# sigaction and sigsetjmp are special. Use special mechanism for
-# detecting those, but only if previous attempt failed.
-if(HAVE_SIGNAL_H)
-  check_symbol_exists(sigaction "signal.h" HAVE_SIGACTION)
-endif(HAVE_SIGNAL_H)
-
-if(NOT HAVE_SIGSETJMP)
-  if(HAVE_SETJMP_H)
-    check_symbol_exists(sigsetjmp "setjmp.h" HAVE_MACRO_SIGSETJMP)
-    if(HAVE_MACRO_SIGSETJMP)
-      set(HAVE_SIGSETJMP 1)
-    endif(HAVE_MACRO_SIGSETJMP)
-  endif(HAVE_SETJMP_H)
-endif(NOT HAVE_SIGSETJMP)
-
-# If there is no stricmp(), do not allow LDAP to parse URLs
-if(NOT HAVE_STRICMP)
-  set(HAVE_LDAP_URL_PARSE 1)
-endif(NOT HAVE_STRICMP)
-
-# For other curl specific tests, use this macro.
-macro(CURL_INTERNAL_TEST CURL_TEST)
-  if("${CURL_TEST}" MATCHES "^${CURL_TEST}$")
-    set(MACRO_CHECK_FUNCTION_DEFINITIONS
-      "-D${CURL_TEST} ${CURL_TEST_DEFINES} ${CMAKE_REQUIRED_FLAGS}")
-    if(CMAKE_REQUIRED_LIBRARIES)
-      set(CURL_TEST_ADD_LIBRARIES
-        "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}")
-    endif(CMAKE_REQUIRED_LIBRARIES)
-
-    message(STATUS "Performing Curl Test ${CURL_TEST}")
-    try_compile(${CURL_TEST}
-      ${CMAKE_BINARY_DIR}
-      ${CMAKE_CURRENT_SOURCE_DIR}/CMake/CurlTests.c
-      CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FUNCTION_DEFINITIONS}
-      "${CURL_TEST_ADD_LIBRARIES}"
-      OUTPUT_VARIABLE OUTPUT)
-    if(${CURL_TEST})
-      set(${CURL_TEST} 1 CACHE INTERNAL "Curl test ${FUNCTION}")
-      message(STATUS "Performing Curl Test ${CURL_TEST} - Success")
-      file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
-        "Performing Curl Test ${CURL_TEST} passed with the following output:\n"
-        "${OUTPUT}\n")
-    else(${CURL_TEST})
-      message(STATUS "Performing Curl Test ${CURL_TEST} - Failed")
-      set(${CURL_TEST} "" CACHE INTERNAL "Curl test ${FUNCTION}")
-      file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
-        "Performing Curl Test ${CURL_TEST} failed with the following output:\n"
-        "${OUTPUT}\n")
-    endif(${CURL_TEST})
-  endif("${CURL_TEST}" MATCHES "^${CURL_TEST}$")
-endmacro(CURL_INTERNAL_TEST)
-
-macro(CURL_INTERNAL_TEST_RUN CURL_TEST)
-  if("${CURL_TEST}_COMPILE" MATCHES "^${CURL_TEST}_COMPILE$")
-    set(MACRO_CHECK_FUNCTION_DEFINITIONS
-      "-D${CURL_TEST} ${CMAKE_REQUIRED_FLAGS}")
-    if(CMAKE_REQUIRED_LIBRARIES)
-      set(CURL_TEST_ADD_LIBRARIES
-        "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}")
-    endif(CMAKE_REQUIRED_LIBRARIES)
-
-    message(STATUS "Performing Curl Test ${CURL_TEST}")
-    try_run(${CURL_TEST} ${CURL_TEST}_COMPILE
-      ${CMAKE_BINARY_DIR}
-      ${CMAKE_CURRENT_SOURCE_DIR}/CMake/CurlTests.c
-      CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FUNCTION_DEFINITIONS}
-      "${CURL_TEST_ADD_LIBRARIES}"
-      OUTPUT_VARIABLE OUTPUT)
-    if(${CURL_TEST}_COMPILE AND NOT ${CURL_TEST})
-      set(${CURL_TEST} 1 CACHE INTERNAL "Curl test ${FUNCTION}")
-      message(STATUS "Performing Curl Test ${CURL_TEST} - Success")
-    else(${CURL_TEST}_COMPILE AND NOT ${CURL_TEST})
-      message(STATUS "Performing Curl Test ${CURL_TEST} - Failed")
-      set(${CURL_TEST} "" CACHE INTERNAL "Curl test ${FUNCTION}")
-      file(APPEND "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log"
-        "Performing Curl Test ${CURL_TEST} failed with the following output:\n"
-        "${OUTPUT}")
-      if(${CURL_TEST}_COMPILE)
-        file(APPEND
-          "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log"
-          "There was a problem running this test\n")
-      endif(${CURL_TEST}_COMPILE)
-      file(APPEND "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log"
-        "\n\n")
-    endif(${CURL_TEST}_COMPILE AND NOT ${CURL_TEST})
-  endif("${CURL_TEST}_COMPILE" MATCHES "^${CURL_TEST}_COMPILE$")
-endmacro(CURL_INTERNAL_TEST_RUN)
-
-# Do curl specific tests
-foreach(CURL_TEST
-    HAVE_FCNTL_O_NONBLOCK
-    HAVE_IOCTLSOCKET
-    HAVE_IOCTLSOCKET_CAMEL
-    HAVE_IOCTLSOCKET_CAMEL_FIONBIO
-    HAVE_IOCTLSOCKET_FIONBIO
-    HAVE_IOCTL_FIONBIO
-    HAVE_IOCTL_SIOCGIFADDR
-    HAVE_SETSOCKOPT_SO_NONBLOCK
-    HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
-    TIME_WITH_SYS_TIME
-    HAVE_O_NONBLOCK
-    HAVE_GETHOSTBYADDR_R_5
-    HAVE_GETHOSTBYADDR_R_7
-    HAVE_GETHOSTBYADDR_R_8
-    HAVE_GETHOSTBYADDR_R_5_REENTRANT
-    HAVE_GETHOSTBYADDR_R_7_REENTRANT
-    HAVE_GETHOSTBYADDR_R_8_REENTRANT
-    HAVE_GETHOSTBYNAME_R_3
-    HAVE_GETHOSTBYNAME_R_5
-    HAVE_GETHOSTBYNAME_R_6
-    HAVE_GETHOSTBYNAME_R_3_REENTRANT
-    HAVE_GETHOSTBYNAME_R_5_REENTRANT
-    HAVE_GETHOSTBYNAME_R_6_REENTRANT
-    HAVE_SOCKLEN_T
-    HAVE_IN_ADDR_T
-    HAVE_BOOL_T
-    STDC_HEADERS
-    RETSIGTYPE_TEST
-    HAVE_INET_NTOA_R_DECL
-    HAVE_INET_NTOA_R_DECL_REENTRANT
-    HAVE_GETADDRINFO
-    HAVE_FILE_OFFSET_BITS
-    )
-  curl_internal_test(${CURL_TEST})
-endforeach(CURL_TEST)
-if(HAVE_FILE_OFFSET_BITS)
-  set(_FILE_OFFSET_BITS 64)
-endif(HAVE_FILE_OFFSET_BITS)
-foreach(CURL_TEST
-    HAVE_GLIBC_STRERROR_R
-    HAVE_POSIX_STRERROR_R
-    )
-  curl_internal_test_run(${CURL_TEST})
-endforeach(CURL_TEST)
-
-# Check for reentrant
-foreach(CURL_TEST
-    HAVE_GETHOSTBYADDR_R_5
-    HAVE_GETHOSTBYADDR_R_7
-    HAVE_GETHOSTBYADDR_R_8
-    HAVE_GETHOSTBYNAME_R_3
-    HAVE_GETHOSTBYNAME_R_5
-    HAVE_GETHOSTBYNAME_R_6
-    HAVE_INET_NTOA_R_DECL_REENTRANT)
-  if(NOT ${CURL_TEST})
-    if(${CURL_TEST}_REENTRANT)
-      set(NEED_REENTRANT 1)
-    endif(${CURL_TEST}_REENTRANT)
-  endif(NOT ${CURL_TEST})
-endforeach(CURL_TEST)
-
-if(NEED_REENTRANT)
-  foreach(CURL_TEST
-      HAVE_GETHOSTBYADDR_R_5
-      HAVE_GETHOSTBYADDR_R_7
-      HAVE_GETHOSTBYADDR_R_8
-      HAVE_GETHOSTBYNAME_R_3
-      HAVE_GETHOSTBYNAME_R_5
-      HAVE_GETHOSTBYNAME_R_6)
-    set(${CURL_TEST} 0)
-    if(${CURL_TEST}_REENTRANT)
-      set(${CURL_TEST} 1)
-    endif(${CURL_TEST}_REENTRANT)
-  endforeach(CURL_TEST)
-endif(NEED_REENTRANT)
-
-if(HAVE_INET_NTOA_R_DECL_REENTRANT)
-  set(HAVE_INET_NTOA_R_DECL 1)
-  set(NEED_REENTRANT 1)
-endif(HAVE_INET_NTOA_R_DECL_REENTRANT)
-
-# Some other minor tests
-
-if(NOT HAVE_IN_ADDR_T)
-  set(in_addr_t "unsigned long")
-endif(NOT HAVE_IN_ADDR_T)
-
-# Fix libz / zlib.h
-
-if(NOT CURL_SPECIAL_LIBZ)
-  if(NOT HAVE_LIBZ)
-    set(HAVE_ZLIB_H 0)
-  endif(NOT HAVE_LIBZ)
-
-  if(NOT HAVE_ZLIB_H)
-    set(HAVE_LIBZ 0)
-  endif(NOT HAVE_ZLIB_H)
-endif(NOT CURL_SPECIAL_LIBZ)
-
-if(_FILE_OFFSET_BITS)
-  set(_FILE_OFFSET_BITS 64)
-endif(_FILE_OFFSET_BITS)
-set(CMAKE_REQUIRED_FLAGS "-D_FILE_OFFSET_BITS=64")
-set(CMAKE_EXTRA_INCLUDE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/curl/curl.h")
-check_type_size("curl_off_t" SIZEOF_CURL_OFF_T)
-set(CMAKE_EXTRA_INCLUDE_FILES)
-set(CMAKE_REQUIRED_FLAGS)
-
-
-# Check for nonblocking
-set(HAVE_DISABLED_NONBLOCKING 1)
-if(HAVE_FIONBIO OR
-    HAVE_IOCTLSOCKET OR
-    HAVE_IOCTLSOCKET_CASE OR
-    HAVE_O_NONBLOCK)
-  set(HAVE_DISABLED_NONBLOCKING)
-endif(HAVE_FIONBIO OR
-  HAVE_IOCTLSOCKET OR
-  HAVE_IOCTLSOCKET_CASE OR
-  HAVE_O_NONBLOCK)
-
-if(RETSIGTYPE_TEST)
-  set(RETSIGTYPE void)
-else(RETSIGTYPE_TEST)
-  set(RETSIGTYPE int)
-endif(RETSIGTYPE_TEST)
-
-if(CMAKE_COMPILER_IS_GNUCC AND APPLE)
-  include(CheckCCompilerFlag)
-  check_c_compiler_flag(-Wno-long-double HAVE_C_FLAG_Wno_long_double)
-  if(HAVE_C_FLAG_Wno_long_double)
-    # The Mac version of GCC warns about use of long double.  Disable it.
-    get_source_file_property(MPRINTF_COMPILE_FLAGS mprintf.c COMPILE_FLAGS)
-    if(MPRINTF_COMPILE_FLAGS)
-      set(MPRINTF_COMPILE_FLAGS "${MPRINTF_COMPILE_FLAGS} -Wno-long-double")
-    else(MPRINTF_COMPILE_FLAGS)
-      set(MPRINTF_COMPILE_FLAGS "-Wno-long-double")
-    endif(MPRINTF_COMPILE_FLAGS)
-    set_source_files_properties(mprintf.c PROPERTIES
-      COMPILE_FLAGS ${MPRINTF_COMPILE_FLAGS})
-  endif(HAVE_C_FLAG_Wno_long_double)
-endif(CMAKE_COMPILER_IS_GNUCC AND APPLE)
-
-if(HAVE_SOCKLEN_T)
-  set(CURL_TYPEOF_CURL_SOCKLEN_T "socklen_t")
-  check_type_size("socklen_t" CURL_SIZEOF_CURL_SOCKLEN_T)
-  if(NOT HAVE_CURL_SIZEOF_CURL_SOCKLEN_T)
-    message(FATAL_ERROR 
-     "Check for sizeof socklen_t failed, see CMakeFiles/CMakerror.log")
-  endif()
-else()
-  set(CURL_TYPEOF_CURL_SOCKLEN_T int)
-  set(CURL_SIZEOF_CURL_SOCKLEN_T ${SIZEOF_INT})
-endif()
-
-include(CMake/OtherTests.cmake)
-
-add_definitions(-DHAVE_CONFIG_H)
-
-# For windows, do not allow the compiler to use default target (Vista).
-if(WIN32)
-  add_definitions(-D_WIN32_WINNT=0x0501)
-endif(WIN32)
-
-if(MSVC)
-  add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE)
-endif(MSVC)
-
-# Sets up the dependencies (zlib, OpenSSL, etc.) of a cURL subproject according to options.
-# TODO This is far to be complete!
-function(SETUP_CURL_DEPENDENCIES TARGET_NAME)
-  if(CURL_ZLIB AND ZLIB_FOUND)
-    include_directories(${ZLIB_INCLUDE_DIR})
-  endif()
-  if(CURL_ZLIB AND ZLIB_FOUND)
-    target_link_libraries(${TARGET_NAME} ${ZLIB_LIBRARIES})
-    #ADD_DEFINITIONS( -DHAVE_ZLIB_H -DHAVE_ZLIB -DHAVE_LIBZ )
-  endif()
-
-  if(CMAKE_USE_OPENSSL AND OPENSSL_FOUND)
-    include_directories(${OPENSSL_INCLUDE_DIR})
-  endif()
-  if(CMAKE_USE_OPENSSL AND CURL_CONFIG_HAS_BEEN_RUN_BEFORE)
-    target_link_libraries(${TARGET_NAME} ${OPENSSL_LIBRARIES})
-    #ADD_DEFINITIONS( -DUSE_SSLEAY )
-  endif()
-endfunction()
-
-# Ugly (but functional) way to include "Makefile.inc" by transforming it (= regenerate it).
-function(TRANSFORM_MAKEFILE_INC INPUT_FILE OUTPUT_FILE)
-  file(READ ${INPUT_FILE} MAKEFILE_INC_TEXT)
-  string(REPLACE "$(top_srcdir)"   "\${CURL_SOURCE_DIR}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
-  string(REPLACE "$(top_builddir)" "\${CURL_BINARY_DIR}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
-
-  string(REGEX REPLACE "\\\\\n" "§!§" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
-  string(REGEX REPLACE "([a-zA-Z_][a-zA-Z0-9_]*)[\t ]*=[\t ]*([^\n]*\n)" "SET(\\1 \\2)\n" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
-  string(REPLACE "§!§" "\n" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
-
-  string(REGEX REPLACE "\\$\\(([a-zA-Z_][a-zA-Z0-9_]*)\\)" "\${\\1}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})    # Replace $() with ${}
-  string(REGEX REPLACE "@([a-zA-Z_][a-zA-Z0-9_]*)@" "\${\\1}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})    # Replace @@ with ${}, even if that may not be read by CMake scripts.
-  file(WRITE ${OUTPUT_FILE} ${MAKEFILE_INC_TEXT})
-
-endfunction()
-
-add_subdirectory(lib)
-if(BUILD_CURL_EXE)
-  add_subdirectory(src)
-endif()
-if(BUILD_CURL_TESTS)
-  add_subdirectory(tests)
-endif()
-
-# This needs to be run very last so other parts of the scripts can take advantage of this.
-if(NOT CURL_CONFIG_HAS_BEEN_RUN_BEFORE)
-  set(CURL_CONFIG_HAS_BEEN_RUN_BEFORE 1 CACHE INTERNAL "Flag to track whether this is the first time running CMake or if CMake has been configured before")
-endif()
diff --git a/src/other/curl/COPYING b/src/other/curl/COPYING
deleted file mode 100644
index 163b299..0000000
--- a/src/other/curl/COPYING
+++ /dev/null
@@ -1,21 +0,0 @@
-COPYRIGHT AND PERMISSION NOTICE
-
-Copyright (c) 1996 - 2010, Daniel Stenberg, <daniel at haxx.se>.
-
-All rights reserved.
-
-Permission to use, copy, modify, and distribute this software for any purpose
-with or without fee is hereby granted, provided that the above copyright
-notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN
-NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
-OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the name of a copyright holder shall not
-be used in advertising or otherwise to promote the sale, use or other dealings
-in this Software without prior written authorization of the copyright holder.
diff --git a/src/other/curl/MacOSX-Framework b/src/other/curl/MacOSX-Framework
deleted file mode 100755
index 032d5df..0000000
--- a/src/other/curl/MacOSX-Framework
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/bin/bash
-# This script performs all of the steps needed to build a
-# universal binary libcurl.framework for Mac OS X 10.4 or greater.
-
-VERSION=`/usr/bin/sed -ne 's/^#define LIBCURL_VERSION "\(.*\)"/\1/p' include/curl/curlver.h`
-
-SDK32='/Developer/SDKs/MacOSX10.4u.sdk'
-
-MINVER32='-mmacosx-version-min=10.4'
-
-ARCHES32='-arch ppc -arch i386'
-
-SDK64='/Developer/SDKs/MacOSX10.5.sdk'
-
-MINVER64='-mmacosx-version-min=10.5'
-
-ARCHES64='-arch ppc64 -arch x86_64'
-
-if test -d $SDK32; then
-  echo "----Configuring libcurl for 32 bit universal framework..."
-  ./configure --disable-dependency-tracking --disable-static --with-gssapi \
-    CFLAGS="-Os -isysroot $SDK32 $ARCHES32 $MINVER32" \
-    LDFLAGS="-Wl,-syslibroot,$SDK32 $ARCHES32 $MINVER32 -Wl,-headerpad_max_install_names" \
-    CC=$CC
-
-  echo "----Building 32 bit libcurl..."
-  make
-
-  echo "----Creating 32 bit framework..."
-  rm -r libcurl.framework
-  mkdir -p libcurl.framework/Versions/A/Resources
-  cp lib/.libs/libcurl.dylib libcurl.framework/Versions/A/libcurl
-  install_name_tool -id @executable_path/../Frameworks/libcurl.framework/Versions/A/libcurl libcurl.framework/Versions/A/libcurl
-  /usr/bin/sed -e "s/7\.12\.3/$VERSION/" lib/libcurl.plist >libcurl.framework/Versions/A/Resources/Info.plist
-  mkdir -p libcurl.framework/Versions/A/Headers/curl
-  cp include/curl/*.h libcurl.framework/Versions/A/Headers/curl
-  pushd libcurl.framework
-  ln -fs Versions/A/libcurl libcurl
-  ln -fs Versions/A/Resources Resources
-  ln -fs Versions/A/Headers Headers
-  cd Versions
-  ln -fs A Current
-
-  if test -d $SDK64; then
-    popd
-    make clean
-    echo "----Configuring libcurl for 64 bit universal framework..."
-    ./configure --disable-dependency-tracking --disable-static --with-gssapi \
-      CFLAGS="-Os -isysroot $SDK64 $ARCHES64 $MINVER64" \
-      LDFLAGS="-Wl,-syslibroot,$SDK64 $ARCHES64 $MINVER64 -Wl,-headerpad_max_install_names" \
-      CC=$CC
-
-    echo "----Building 64 bit libcurl..."
-    make
-
-    echo "----Appending 64 bit framework to 32 bit framework..."
-    cp lib/.libs/libcurl.dylib libcurl.framework/Versions/A/libcurl64
-    install_name_tool -id @executable_path/../Frameworks/libcurl.framework/Versions/A/libcurl libcurl.framework/Versions/A/libcurl64
-    cp libcurl.framework/Versions/A/libcurl libcurl.framework/Versions/A/libcurl32
-    lipo libcurl.framework/Versions/A/libcurl32 libcurl.framework/Versions/A/libcurl64 -create -output libcurl.framework/Versions/A/libcurl
-    rm libcurl.framework/Versions/A/libcurl32 libcurl.framework/Versions/A/libcurl64
-    cp libcurl.framework/Versions/A/Headers/curl/curlbuild.h libcurl.framework/Versions/A/Headers/curl/curlbuild32.h
-    cp include/curl/curlbuild.h libcurl.framework/Versions/A/Headers/curl/curlbuild64.h
-    cat >libcurl.framework/Versions/A/Headers/curl/curlbuild.h <<EOF
-#ifdef __LP64__
-#include "curl/curlbuild64.h"
-#else
-#include "curl/curlbuild32.h"
-#endif
-EOF
-  fi
-
-  lipo -info libcurl.framework/Versions/A/libcurl
-  echo "libcurl.framework is built and can now be included in other projects."
-  echo "Copy libcurl.framework to your bundle's Contents/Frameworks folder, ~/Library/Frameworks or /Library/Frameworks."
-else
-  echo "Building libcurl.framework requires Mac OS X 10.4 or later with the MacOSX10.4u SDK installed."
-fi
diff --git a/src/other/curl/Makefile.am b/src/other/curl/Makefile.am
deleted file mode 100644
index 0341fc8..0000000
--- a/src/other/curl/Makefile.am
+++ /dev/null
@@ -1,153 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-###########################################################################
-
-AUTOMAKE_OPTIONS = foreign
-
-ACLOCAL_AMFLAGS = -I m4
-
-CMAKE_DIST = CMakeLists.txt CMake/CheckTypeSize.c.in CMake/CheckTypeSize.cmake \
-CMake/CMakeConfigurableFile.in CMake/CurlCheckCSourceCompiles.cmake	       \
-CMake/CurlCheckCSourceRuns.cmake CMake/CurlTests.c CMake/FindOpenSSL.cmake     \
-CMake/FindZLIB.cmake CMake/OtherTests.cmake CMake/Platforms/WindowsCache.cmake \
-CMake/Utilities.cmake include/curl/curlbuild.h.cmake
-
-EXTRA_DIST = CHANGES COPYING maketgz curl-config.in	\
- curl-style.el sample.emacs RELEASE-NOTES buildconf 	\
- libcurl.pc.in vc6curl.dsw MacOSX-Framework Android.mk $(CMAKE_DIST)
-
-noinst_SCRIPTS = curl-config
-
-SUBDIRS = lib src
-DIST_SUBDIRS = $(SUBDIRS) include docs
-
-pkgconfigdir = $(libdir)/pkgconfig
-noinst_DATA = libcurl.pc
-
-dist-hook:
-	rm -rf $(top_builddir)/tests/log
-	find $(distdir) -name "*.dist" -exec rm {} \;
-	(distit=`find $(srcdir) -name "*.dist" | grep -v ./ares/`; \
-	for file in $$distit; do \
-	  strip=`echo $$file | sed -e s/^$(srcdir)// -e s/\.dist//`; \
-	  cp $$file $(distdir)$$strip; \
-	done)
-
-html:
-	cd docs; make html
-
-pdf:
-	cd docs; make pdf
-
-check: test examples
-
-if CROSSCOMPILING
-test-full: test
-test-torture: test
-
-test:
-	@echo "NOTICE: we can't run the tests when cross-compiling!"
-
-else
-
-test:
-#	@(cd tests; $(MAKE) all quiet-test)
-
-#test-full:
-#	@(cd tests; $(MAKE) all full-test)
-
-#test-torture:
-#	@(cd tests; $(MAKE) all torture-test)
-
-endif
-
-examples:
-	@(cd docs/examples; $(MAKE) check)
-
-#clean-local:
-#	@(cd tests; $(MAKE) clean)
-#	@(cd docs; $(MAKE) clean)
-
-#
-# Build source and binary rpms. For rpm-3.0 and above, the ~/.rpmmacros
-# must contain the following line:
-# %_topdir /home/loic/local/rpm
-# and that /home/loic/local/rpm contains the directory SOURCES, BUILD etc.
-#
-# cd /home/loic/local/rpm ; mkdir -p SOURCES BUILD RPMS/i386 SPECS SRPMS
-#
-# If additional configure flags are needed to build the package, add the
-# following in ~/.rpmmacros
-# %configure CFLAGS="%{optflags}" ./configure %{_target_platform} --prefix=%{_prefix} ${AM_CONFIGFLAGS}
-# and run make rpm in the following way:
-# AM_CONFIGFLAGS='--with-uri=/home/users/loic/local/RedHat-6.2' make rpm
-#
-
-rpms:
-	$(MAKE) RPMDIST=curl rpm
-	$(MAKE) RPMDIST=curl-ssl rpm
-
-rpm:
-	RPM_TOPDIR=`rpm --showrc | $(PERL) -n -e 'print if(s/.*_topdir\s+(.*)/$$1/)'` ; \
-	cp $(srcdir)/packages/Linux/RPM/$(RPMDIST).spec $$RPM_TOPDIR/SPECS ; \
-	cp $(PACKAGE)-$(VERSION).tar.gz $$RPM_TOPDIR/SOURCES ; \
-	rpm -ba --clean --rmsource $$RPM_TOPDIR/SPECS/$(RPMDIST).spec ; \
-	mv $$RPM_TOPDIR/RPMS/i386/$(RPMDIST)-*.rpm . ; \
-	mv $$RPM_TOPDIR/SRPMS/$(RPMDIST)-*.src.rpm .
-
-#
-# Build a Solaris pkgadd format file
-# run 'make pkgadd' once you've done './configure' and 'make' to make a Solaris pkgadd format
-# file (which ends up back in this directory).
-# The pkgadd file is in 'pkgtrans' format, so to install on Solaris, do
-# pkgadd -d ./HAXXcurl-*
-#
-
-# gak - libtool requires an absoulte directory, hence the pwd below...
-pkgadd:
-	umask 022 ; \
-	make install DESTDIR=`/bin/pwd`/packages/Solaris/root ; \
-	cat COPYING > $(srcdir)/packages/Solaris/copyright ; \
-	cd $(srcdir)/packages/Solaris && $(MAKE) package
-
-#
-# Build a cygwin binary tarball installation file
-# resulting .tar.bz2 file will end up at packages/Win32/cygwin
-cygwinbin:
-	$(MAKE) -C packages/Win32/cygwin cygwinbin
-
-# We extend the standard install with a custom hook:
-install-data-hook:
-	cd include && $(MAKE) install
-	cd docs && $(MAKE) install
-
-# We extend the standard uninstall with a custom hook:
-uninstall-hook:
-	cd include && $(MAKE) uninstall
-	cd docs && $(MAKE) uninstall
-
-ca-bundle: lib/mk-ca-bundle.pl
-	@echo "generate a fresh ca-bundle.crt"
-	@perl $< -b -l -u lib/ca-bundle.crt
-
-ca-firefox: lib/firefox-db2pem.sh
-	@echo "generate a fresh ca-bundle.crt"
-	./lib/firefox-db2pem.sh lib/ca-bundle.crt
diff --git a/src/other/curl/Makefile.in b/src/other/curl/Makefile.in
deleted file mode 100644
index 6057406..0000000
--- a/src/other/curl/Makefile.in
+++ /dev/null
@@ -1,906 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-###########################################################################
-
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = .
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
-	$(srcdir)/Makefile.in $(srcdir)/curl-config.in \
-	$(srcdir)/libcurl.pc.in $(top_srcdir)/configure COPYING \
-	config.guess config.sub depcomp install-sh ltmain.sh missing
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
-	$(top_srcdir)/m4/curl-confopts.m4 \
-	$(top_srcdir)/m4/curl-functions.m4 \
-	$(top_srcdir)/m4/curl-override.m4 \
-	$(top_srcdir)/m4/curl-reentrant.m4 \
-	$(top_srcdir)/m4/curl-system.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
- configure.lineno config.status.lineno
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
-	$(top_builddir)/src/curl_config.h \
-	$(top_builddir)/include/curl/curlbuild.h
-CONFIG_CLEAN_FILES = curl-config libcurl.pc
-CONFIG_CLEAN_VPATH_FILES =
-SCRIPTS = $(noinst_SCRIPTS)
-SOURCES =
-DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
-	html-recursive info-recursive install-data-recursive \
-	install-dvi-recursive install-exec-recursive \
-	install-html-recursive install-info-recursive \
-	install-pdf-recursive install-ps-recursive install-recursive \
-	installcheck-recursive installdirs-recursive pdf-recursive \
-	ps-recursive uninstall-recursive
-DATA = $(noinst_DATA)
-RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
-  distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
-	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
-	distdir dist dist-all distcheck
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
-  { test ! -d "$(distdir)" \
-    || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
-         && rm -fr "$(distdir)"; }; }
-am__relativize = \
-  dir0=`pwd`; \
-  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
-  sed_rest='s,^[^/]*/*,,'; \
-  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
-  sed_butlast='s,/*[^/]*$$,,'; \
-  while test -n "$$dir1"; do \
-    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
-    if test "$$first" != "."; then \
-      if test "$$first" = ".."; then \
-        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
-        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
-      else \
-        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
-        if test "$$first2" = "$$first"; then \
-          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
-        else \
-          dir2="../$$dir2"; \
-        fi; \
-        dir0="$$dir0"/"$$first"; \
-      fi; \
-    fi; \
-    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
-  done; \
-  reldir="$$dir2"
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
-CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
-CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
-CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
-CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
-CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
-CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
-CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
-CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
-CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
-CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
-CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
-CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
-CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
-CURL_LIBS = @CURL_LIBS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
-IDN_ENABLED = @IDN_ENABLED@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-IPV6_ENABLED = @IPV6_ENABLED@
-KRB4_ENABLED = @KRB4_ENABLED@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCURL_LIBS = @LIBCURL_LIBS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MANOPT = @MANOPT@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-NROFF = @NROFF@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH = @PATH@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PERL = @PERL@
-PKGADD_NAME = @PKGADD_NAME@
-PKGADD_PKG = @PKGADD_PKG@
-PKGADD_VENDOR = @PKGADD_VENDOR@
-PKGCONFIG = @PKGCONFIG@
-RANDOM_FILE = @RANDOM_FILE@
-RANLIB = @RANLIB@
-REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-SSL_ENABLED = @SSL_ENABLED@
-STRIP = @STRIP@
-SUPPORT_FEATURES = @SUPPORT_FEATURES@
-SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
-TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
-USE_ARES = @USE_ARES@
-USE_GNUTLS = @USE_GNUTLS@
-USE_LIBSSH2 = @USE_LIBSSH2@
-USE_NSS = @USE_NSS@
-USE_SSLEAY = @USE_SSLEAY@
-USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
-VERSION = @VERSION@
-VERSIONNUM = @VERSIONNUM@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-libext = @libext@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-AUTOMAKE_OPTIONS = foreign
-ACLOCAL_AMFLAGS = -I m4
-CMAKE_DIST = CMakeLists.txt CMake/CheckTypeSize.c.in CMake/CheckTypeSize.cmake \
-CMake/CMakeConfigurableFile.in CMake/CurlCheckCSourceCompiles.cmake	       \
-CMake/CurlCheckCSourceRuns.cmake CMake/CurlTests.c CMake/FindOpenSSL.cmake     \
-CMake/FindZLIB.cmake CMake/OtherTests.cmake CMake/Platforms/WindowsCache.cmake \
-CMake/Utilities.cmake include/curl/curlbuild.h.cmake
-
-EXTRA_DIST = CHANGES COPYING maketgz curl-config.in	\
- curl-style.el sample.emacs RELEASE-NOTES buildconf 	\
- libcurl.pc.in vc6curl.dsw MacOSX-Framework Android.mk $(CMAKE_DIST)
-
-noinst_SCRIPTS = curl-config
-SUBDIRS = lib src
-DIST_SUBDIRS = $(SUBDIRS) include docs
-pkgconfigdir = $(libdir)/pkgconfig
-noinst_DATA = libcurl.pc
-all: all-recursive
-
-.SUFFIXES:
-am--refresh:
-	@:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
-	@for dep in $?; do \
-	  case '$(am__configure_deps)' in \
-	    *$$dep*) \
-	      echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
-	      $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
-		&& exit 0; \
-	      exit 1;; \
-	  esac; \
-	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    echo ' $(SHELL) ./config.status'; \
-	    $(SHELL) ./config.status;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	$(SHELL) ./config.status --recheck
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	$(am__cd) $(srcdir) && $(AUTOCONF)
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
-$(am__aclocal_m4_deps):
-curl-config: $(top_builddir)/config.status $(srcdir)/curl-config.in
-	cd $(top_builddir) && $(SHELL) ./config.status $@
-libcurl.pc: $(top_builddir)/config.status $(srcdir)/libcurl.pc.in
-	cd $(top_builddir) && $(SHELL) ./config.status $@
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-
-distclean-libtool:
-	-rm -f libtool config.lt
-
-# This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-#     (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
-	@fail= failcom='exit 1'; \
-	for f in x $$MAKEFLAGS; do \
-	  case $$f in \
-	    *=* | --[!k]*);; \
-	    *k*) failcom='fail=yes';; \
-	  esac; \
-	done; \
-	dot_seen=no; \
-	target=`echo $@ | sed s/-recursive//`; \
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  echo "Making $$target in $$subdir"; \
-	  if test "$$subdir" = "."; then \
-	    dot_seen=yes; \
-	    local_target="$$target-am"; \
-	  else \
-	    local_target="$$target"; \
-	  fi; \
-	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	  || eval $$failcom; \
-	done; \
-	if test "$$dot_seen" = "no"; then \
-	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
-	fi; test -z "$$fail"
-
-$(RECURSIVE_CLEAN_TARGETS):
-	@fail= failcom='exit 1'; \
-	for f in x $$MAKEFLAGS; do \
-	  case $$f in \
-	    *=* | --[!k]*);; \
-	    *k*) failcom='fail=yes';; \
-	  esac; \
-	done; \
-	dot_seen=no; \
-	case "$@" in \
-	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
-	  *) list='$(SUBDIRS)' ;; \
-	esac; \
-	rev=''; for subdir in $$list; do \
-	  if test "$$subdir" = "."; then :; else \
-	    rev="$$subdir $$rev"; \
-	  fi; \
-	done; \
-	rev="$$rev ."; \
-	target=`echo $@ | sed s/-recursive//`; \
-	for subdir in $$rev; do \
-	  echo "Making $$target in $$subdir"; \
-	  if test "$$subdir" = "."; then \
-	    local_target="$$target-am"; \
-	  else \
-	    local_target="$$target"; \
-	  fi; \
-	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	  || eval $$failcom; \
-	done && test -z "$$fail"
-tags-recursive:
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
-	done
-ctags-recursive:
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
-	done
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	set x; \
-	here=`pwd`; \
-	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
-	  include_option=--etags-include; \
-	  empty_fix=.; \
-	else \
-	  include_option=--include; \
-	  empty_fix=; \
-	fi; \
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    test ! -f $$subdir/TAGS || \
-	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
-	  fi; \
-	done; \
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
-	$(am__remove_distdir)
-	test -d "$(distdir)" || mkdir "$(distdir)"
-	@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
-	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    test -d "$(distdir)/$$subdir" \
-	    || $(MKDIR_P) "$(distdir)/$$subdir" \
-	    || exit 1; \
-	  fi; \
-	done
-	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
-	    $(am__relativize); \
-	    new_distdir=$$reldir; \
-	    dir1=$$subdir; dir2="$(top_distdir)"; \
-	    $(am__relativize); \
-	    new_top_distdir=$$reldir; \
-	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
-	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
-	    ($(am__cd) $$subdir && \
-	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$new_top_distdir" \
-	        distdir="$$new_distdir" \
-		am__remove_distdir=: \
-		am__skip_length_check=: \
-		am__skip_mode_fix=: \
-	        distdir) \
-	      || exit 1; \
-	  fi; \
-	done
-	$(MAKE) $(AM_MAKEFLAGS) \
-	  top_distdir="$(top_distdir)" distdir="$(distdir)" \
-	  dist-hook
-	-test -n "$(am__skip_mode_fix)" \
-	|| find "$(distdir)" -type d ! -perm -755 \
-		-exec chmod u+rwx,go+rx {} \; -o \
-	  ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
-	  ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
-	  ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
-	|| chmod -R a+r "$(distdir)"
-dist-gzip: distdir
-	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
-	$(am__remove_distdir)
-
-dist-bzip2: distdir
-	tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
-	$(am__remove_distdir)
-
-dist-lzma: distdir
-	tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
-	$(am__remove_distdir)
-
-dist-xz: distdir
-	tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
-	$(am__remove_distdir)
-
-dist-tarZ: distdir
-	tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
-	$(am__remove_distdir)
-
-dist-shar: distdir
-	shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
-	$(am__remove_distdir)
-
-dist-zip: distdir
-	-rm -f $(distdir).zip
-	zip -rq $(distdir).zip $(distdir)
-	$(am__remove_distdir)
-
-dist dist-all: distdir
-	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
-	$(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration.  Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
-	case '$(DIST_ARCHIVES)' in \
-	*.tar.gz*) \
-	  GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
-	*.tar.bz2*) \
-	  bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
-	*.tar.lzma*) \
-	  lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
-	*.tar.xz*) \
-	  xz -dc $(distdir).tar.xz | $(am__untar) ;;\
-	*.tar.Z*) \
-	  uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
-	*.shar.gz*) \
-	  GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
-	*.zip*) \
-	  unzip $(distdir).zip ;;\
-	esac
-	chmod -R a-w $(distdir); chmod a+w $(distdir)
-	mkdir $(distdir)/_build
-	mkdir $(distdir)/_inst
-	chmod a-w $(distdir)
-	test -d $(distdir)/_build || exit 0; \
-	dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
-	  && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
-	  && am__cwd=`pwd` \
-	  && $(am__cd) $(distdir)/_build \
-	  && ../configure --srcdir=.. --prefix="$$dc_install_base" \
-	    $(DISTCHECK_CONFIGURE_FLAGS) \
-	  && $(MAKE) $(AM_MAKEFLAGS) \
-	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
-	  && $(MAKE) $(AM_MAKEFLAGS) check \
-	  && $(MAKE) $(AM_MAKEFLAGS) install \
-	  && $(MAKE) $(AM_MAKEFLAGS) installcheck \
-	  && $(MAKE) $(AM_MAKEFLAGS) uninstall \
-	  && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
-	        distuninstallcheck \
-	  && chmod -R a-w "$$dc_install_base" \
-	  && ({ \
-	       (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
-	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
-	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
-	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
-	            distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
-	      } || { rm -rf "$$dc_destdir"; exit 1; }) \
-	  && rm -rf "$$dc_destdir" \
-	  && $(MAKE) $(AM_MAKEFLAGS) dist \
-	  && rm -rf $(DIST_ARCHIVES) \
-	  && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
-	  && cd "$$am__cwd" \
-	  || exit 1
-	$(am__remove_distdir)
-	@(echo "$(distdir) archives ready for distribution: "; \
-	  list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
-	  sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
-distuninstallcheck:
-	@$(am__cd) '$(distuninstallcheck_dir)' \
-	&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
-	   || { echo "ERROR: files left after uninstall:" ; \
-	        if test -n "$(DESTDIR)"; then \
-	          echo "  (check DESTDIR support)"; \
-	        fi ; \
-	        $(distuninstallcheck_listfiles) ; \
-	        exit 1; } >&2
-distcleancheck: distclean
-	@if test '$(srcdir)' = . ; then \
-	  echo "ERROR: distcleancheck can only run from a VPATH build" ; \
-	  exit 1 ; \
-	fi
-	@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
-	  || { echo "ERROR: files left in build directory after distclean:" ; \
-	       $(distcleancheck_listfiles) ; \
-	       exit 1; } >&2
-check-am: all-am
-check: check-recursive
-all-am: Makefile $(SCRIPTS) $(DATA)
-installdirs: installdirs-recursive
-installdirs-am:
-install: install-recursive
-install-exec: install-exec-recursive
-install-data: install-data-recursive
-uninstall: uninstall-recursive
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-recursive
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-clean: clean-recursive
-
-clean-am: clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-recursive
-	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-	-rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-libtool \
-	distclean-tags
-
-dvi: dvi-recursive
-
-dvi-am:
-
-html-am:
-
-info: info-recursive
-
-info-am:
-
-install-data-am:
-	@$(NORMAL_INSTALL)
-	$(MAKE) $(AM_MAKEFLAGS) install-data-hook
-install-dvi: install-dvi-recursive
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-recursive
-
-install-html-am:
-
-install-info: install-info-recursive
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-recursive
-
-install-pdf-am:
-
-install-ps: install-ps-recursive
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-recursive
-	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-	-rm -rf $(top_srcdir)/autom4te.cache
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-recursive
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf-am:
-
-ps: ps-recursive
-
-ps-am:
-
-uninstall-am:
-	@$(NORMAL_INSTALL)
-	$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
-	install-am install-data-am install-strip tags-recursive \
-	uninstall-am
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
-	all all-am am--refresh check check-am clean clean-generic \
-	clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
-	dist-gzip dist-hook dist-lzma dist-shar dist-tarZ dist-xz \
-	dist-zip distcheck distclean distclean-generic \
-	distclean-libtool distclean-tags distcleancheck distdir \
-	distuninstallcheck dvi dvi-am html html-am info info-am \
-	install install-am install-data install-data-am \
-	install-data-hook 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 installdirs-am maintainer-clean \
-	maintainer-clean-generic mostlyclean mostlyclean-generic \
-	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
-	uninstall uninstall-am uninstall-hook
-
-
-dist-hook:
-	rm -rf $(top_builddir)/tests/log
-	find $(distdir) -name "*.dist" -exec rm {} \;
-	(distit=`find $(srcdir) -name "*.dist" | grep -v ./ares/`; \
-	for file in $$distit; do \
-	  strip=`echo $$file | sed -e s/^$(srcdir)// -e s/\.dist//`; \
-	  cp $$file $(distdir)$$strip; \
-	done)
-
-html:
-	cd docs; make html
-
-pdf:
-	cd docs; make pdf
-
-check: test examples
-
- at CROSSCOMPILING_TRUE@test-full: test
- at CROSSCOMPILING_TRUE@test-torture: test
-
- at CROSSCOMPILING_TRUE@test:
- at CROSSCOMPILING_TRUE@	@echo "NOTICE: we can't run the tests when cross-compiling!"
-
- at CROSSCOMPILING_FALSE@test:
-#	@(cd tests; $(MAKE) all quiet-test)
-
-#test-full:
-#	@(cd tests; $(MAKE) all full-test)
-
-#test-torture:
-#	@(cd tests; $(MAKE) all torture-test)
-
-examples:
-	@(cd docs/examples; $(MAKE) check)
-
-#clean-local:
-#	@(cd tests; $(MAKE) clean)
-#	@(cd docs; $(MAKE) clean)
-
-#
-# Build source and binary rpms. For rpm-3.0 and above, the ~/.rpmmacros
-# must contain the following line:
-# %_topdir /home/loic/local/rpm
-# and that /home/loic/local/rpm contains the directory SOURCES, BUILD etc.
-#
-# cd /home/loic/local/rpm ; mkdir -p SOURCES BUILD RPMS/i386 SPECS SRPMS
-#
-# If additional configure flags are needed to build the package, add the
-# following in ~/.rpmmacros
-# %configure CFLAGS="%{optflags}" ./configure %{_target_platform} --prefix=%{_prefix} ${AM_CONFIGFLAGS}
-# and run make rpm in the following way:
-# AM_CONFIGFLAGS='--with-uri=/home/users/loic/local/RedHat-6.2' make rpm
-#
-
-rpms:
-	$(MAKE) RPMDIST=curl rpm
-	$(MAKE) RPMDIST=curl-ssl rpm
-
-rpm:
-	RPM_TOPDIR=`rpm --showrc | $(PERL) -n -e 'print if(s/.*_topdir\s+(.*)/$$1/)'` ; \
-	cp $(srcdir)/packages/Linux/RPM/$(RPMDIST).spec $$RPM_TOPDIR/SPECS ; \
-	cp $(PACKAGE)-$(VERSION).tar.gz $$RPM_TOPDIR/SOURCES ; \
-	rpm -ba --clean --rmsource $$RPM_TOPDIR/SPECS/$(RPMDIST).spec ; \
-	mv $$RPM_TOPDIR/RPMS/i386/$(RPMDIST)-*.rpm . ; \
-	mv $$RPM_TOPDIR/SRPMS/$(RPMDIST)-*.src.rpm .
-
-#
-# Build a Solaris pkgadd format file
-# run 'make pkgadd' once you've done './configure' and 'make' to make a Solaris pkgadd format
-# file (which ends up back in this directory).
-# The pkgadd file is in 'pkgtrans' format, so to install on Solaris, do
-# pkgadd -d ./HAXXcurl-*
-#
-
-# gak - libtool requires an absoulte directory, hence the pwd below...
-pkgadd:
-	umask 022 ; \
-	make install DESTDIR=`/bin/pwd`/packages/Solaris/root ; \
-	cat COPYING > $(srcdir)/packages/Solaris/copyright ; \
-	cd $(srcdir)/packages/Solaris && $(MAKE) package
-
-#
-# Build a cygwin binary tarball installation file
-# resulting .tar.bz2 file will end up at packages/Win32/cygwin
-cygwinbin:
-	$(MAKE) -C packages/Win32/cygwin cygwinbin
-
-# We extend the standard install with a custom hook:
-install-data-hook:
-	cd include && $(MAKE) install
-	cd docs && $(MAKE) install
-
-# We extend the standard uninstall with a custom hook:
-uninstall-hook:
-	cd include && $(MAKE) uninstall
-	cd docs && $(MAKE) uninstall
-
-ca-bundle: lib/mk-ca-bundle.pl
-	@echo "generate a fresh ca-bundle.crt"
-	@perl $< -b -l -u lib/ca-bundle.crt
-
-ca-firefox: lib/firefox-db2pem.sh
-	@echo "generate a fresh ca-bundle.crt"
-	./lib/firefox-db2pem.sh lib/ca-bundle.crt
-
-# 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/src/other/curl/README b/src/other/curl/README
deleted file mode 100644
index 2ffacc3..0000000
--- a/src/other/curl/README
+++ /dev/null
@@ -1,49 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-README
-
-  Curl is a command line tool for transferring data specified with URL
-  syntax. Find out how to use curl by reading the curl.1 man page or the
-  MANUAL document. Find out how to install Curl by reading the INSTALL
-  document.
-
-  libcurl is the library curl is using to do its job. It is readily
-  available to be used by your software. Read the libcurl.3 man page to
-  learn how!
-
-  You find answers to the most frequent questions we get in the FAQ document.
-
-  Study the COPYING file for distribution terms and similar. If you distribute
-  curl binaries or other binaries that involve libcurl, you might enjoy the
-  LICENSE-MIXING document.
-
-CONTACT
-
-  If you have problems, questions, ideas or suggestions, please contact us
-  by posting to a suitable mailing list. See http://curl.haxx.se/mail/
-
-  All contributors to the project are listed in the THANKS document.
-
-WEB SITE
-
-  Visit the curl web site for the latest news and downloads:
-
-        http://curl.haxx.se/
-
-GIT
-
-  To download the very latest source off the GIT server do this:
-
-    git clone git://github.com/bagder/curl.git
-
-  (you'll get a directory named curl created, filled with the source code)
-
-NOTICE
-
-  Curl contains pieces of source code that is Copyright (c) 1998, 1999
-  Kungliga Tekniska Högskolan. This notice is included here to comply with the
-  distribution terms.
diff --git a/src/other/curl/RELEASE-NOTES b/src/other/curl/RELEASE-NOTES
deleted file mode 100644
index cac8b06..0000000
--- a/src/other/curl/RELEASE-NOTES
+++ /dev/null
@@ -1,64 +0,0 @@
-Curl and libcurl 7.20.1
-
- Public curl releases:         115
- Command line options:         136
- curl_easy_setopt() options:   174
- Public functions in libcurl:  58
- Known libcurl bindings:       39
- Contributors:                 776
-
-This release includes the following changes:
-
- o The 'ares' subtree has been removed from the source repository
- o smoother rate limiting
- o allow user+password in the URL for all protocols
- o POP3: Get message listing if no mailbox in URL
-
-This release includes the following bugfixes:
-
- o VMS builder bad behavior when used in a batch job
- o multiple recepients with SMTP
- o fixed the CURL_FORMAT_* defines when building with cmake
- o missing quote in libcurl.m4
- o SMTP: now waits for 250 after the DATA transfer
- o SMTP: use angle brackets in RCPT TO
- o curl --trace-time not using local time
- o off-by-one in the chunked encoding trailer parser
- o superfluous blocking for OpenSSL-based SSL connects and multi interface
- o TFTP upload
- o FTP timeouts after file transferred completely
- o skip poll() on Interix
- o CURLOPT_CERTINFO memory leak
- o sub-second timeouts improvements
- o configure fixes for GSSAPI
- o threaded resolver double free when closing curl handle
- o configure fixes for building with the clang compiler
- o easy interix rate limiting logic
- o curl_multi_remove_handle() caused use after free
- o TFTP improved error codes
- o TFTP fixed TSIZE handling for uploads
- o SSL possible double free when reusing curl handle
- o alarm()-based DNS timeout bug
- o re-used FTP connection multi interface crash
- o chunked-encoding with Content-Length: header problem
- o multi interface HTTP POST over a proxy using PROXYTUNNEL
- o RTSP GET_PARAMETER
- o timeout after last data chunk was handled
- o SFTP download hang
- o FTP quote commands prefixed with '*' now can fail without aborting
-
-This release includes the following known bugs:
-
- o see docs/KNOWN_BUGS (http://curl.haxx.se/docs/knownbugs.html)
-
-This release would not have looked like this without help, code, reports and
-advice from friends like these:
-
- Steven M. Schweda, Yang Tse, Jack Zhang, Tom Donovan, Martin Hager,
- Daniel Fandrich, Patrick Monnerat, Pat Ray, Wesley Miaw, Ben Greear,
- Ryan Chan, Markus Duft, Andrei Benea, Jacob Moshenko, Daniel Johnson,
- Constantine Sapuntzakis, Douglas Steinwand, Thomas Lopatic, Hauke Duden,
- Akos Pasztory, Kenny To, Christopher Conroy, Massimo Callegari,
- Bob Richmond, Matt Wixson
-
-        Thanks! (and sorry if I forgot to mention someone)
diff --git a/src/other/curl/acinclude.m4 b/src/other/curl/acinclude.m4
deleted file mode 100644
index 31e31cf..0000000
--- a/src/other/curl/acinclude.m4
+++ /dev/null
@@ -1,3229 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-#***************************************************************************
-
-
-dnl CURL_CHECK_DEF (SYMBOL, [INCLUDES], [SILENT])
-dnl -------------------------------------------------
-dnl Use the C preprocessor to find out if the given object-style symbol
-dnl is defined and get its expansion. This macro will not use default
-dnl includes even if no INCLUDES argument is given. This macro will run
-dnl silently when invoked with three arguments. If the expansion would
-dnl result in a set of double-quoted strings the returned expansion will
-dnl actually be a single double-quoted string concatenating all them.
-
-AC_DEFUN([CURL_CHECK_DEF], [
-  AS_VAR_PUSHDEF([ac_HaveDef], [curl_cv_have_def_$1])dnl
-  AS_VAR_PUSHDEF([ac_Def], [curl_cv_def_$1])dnl
-  if test -z "$SED"; then
-    AC_MSG_ERROR([SED not set. Cannot continue without SED being set.])
-  fi
-  if test -z "$GREP"; then
-    AC_MSG_ERROR([GREP not set. Cannot continue without GREP being set.])
-  fi
-  ifelse($3,,[AC_MSG_CHECKING([for preprocessor definition of $1])])
-  tmp_exp=""
-  AC_PREPROC_IFELSE([
-    AC_LANG_SOURCE(
-ifelse($2,,,[$2])[[
-#ifdef $1
-CURL_DEF_TOKEN $1
-#endif
-    ]])
-  ],[
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[[ ]]//' 2>/dev/null | \
-      "$SED" 's/[["]][[ ]]*[["]]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "$1"; then
-      tmp_exp=""
-    fi
-  ])
-  if test -z "$tmp_exp"; then
-    AS_VAR_SET(ac_HaveDef, no)
-    ifelse($3,,[AC_MSG_RESULT([no])])
-  else
-    AS_VAR_SET(ac_HaveDef, yes)
-    AS_VAR_SET(ac_Def, $tmp_exp)
-    ifelse($3,,[AC_MSG_RESULT([$tmp_exp])])
-  fi
-  AS_VAR_POPDEF([ac_Def])dnl
-  AS_VAR_POPDEF([ac_HaveDef])dnl
-])
-
-
-dnl CURL_CHECK_DEF_CC (SYMBOL, [INCLUDES], [SILENT])
-dnl -------------------------------------------------
-dnl Use the C compiler to find out only if the given symbol is defined
-dnl or not, this can not find out its expansion. This macro will not use
-dnl default includes even if no INCLUDES argument is given. This macro
-dnl will run silently when invoked with three arguments.
-
-AC_DEFUN([CURL_CHECK_DEF_CC], [
-  AS_VAR_PUSHDEF([ac_HaveDef], [curl_cv_have_def_$1])dnl
-  ifelse($3,,[AC_MSG_CHECKING([for compiler definition of $1])])
-  AC_COMPILE_IFELSE([
-    AC_LANG_SOURCE(
-ifelse($2,,,[$2])[[
-int main (void)
-{
-#ifdef $1
-  return 0;
-#else
-  force compilation error
-#endif
-}
-    ]])
-  ],[
-    tst_symbol_defined="yes"
-  ],[
-    tst_symbol_defined="no"
-  ])
-  if test "$tst_symbol_defined" = "yes"; then
-    AS_VAR_SET(ac_HaveDef, yes)
-    ifelse($3,,[AC_MSG_RESULT([yes])])
-  else
-    AS_VAR_SET(ac_HaveDef, no)
-    ifelse($3,,[AC_MSG_RESULT([no])])
-  fi
-  AS_VAR_POPDEF([ac_HaveDef])dnl
-])
-
-
-dnl CURL_CHECK_LIB_XNET
-dnl -------------------------------------------------
-dnl Verify if X/Open network library is required.
-
-AC_DEFUN([CURL_CHECK_LIB_XNET], [
-  AC_MSG_CHECKING([if X/Open network library is required])
-  tst_lib_xnet_required="no"
-  AC_COMPILE_IFELSE([
-    AC_LANG_SOURCE([[
-int main (void)
-{
-#if defined(__hpux) && defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 600)
-  return 0;
-#elif defined(__hpux) && defined(_XOPEN_SOURCE_EXTENDED)
-  return 0;
-#else
-  force compilation error
-#endif
-}
-    ]])
-  ],[
-    tst_lib_xnet_required="yes"
-    LIBS="$LIBS -lxnet"
-  ])
-  AC_MSG_RESULT([$tst_lib_xnet_required])
-])
-
-
-dnl CURL_CHECK_AIX_ALL_SOURCE
-dnl -------------------------------------------------
-dnl Provides a replacement of traditional AC_AIX with
-dnl an uniform behaviour across all autoconf versions,
-dnl and with our own placement rules.
-
-AC_DEFUN([CURL_CHECK_AIX_ALL_SOURCE], [
-  AH_VERBATIM([_ALL_SOURCE],
-    [/* Define to 1 if OS is AIX. */
-#ifndef _ALL_SOURCE
-#  undef _ALL_SOURCE
-#endif])
-  AC_BEFORE([$0], [AC_SYS_LARGEFILE])dnl
-  AC_BEFORE([$0], [CURL_CONFIGURE_REENTRANT])dnl
-  AC_MSG_CHECKING([if OS is AIX (to define _ALL_SOURCE)])
-  AC_EGREP_CPP([yes_this_is_aix],[
-#ifdef _AIX
-   yes_this_is_aix
-#endif
-  ],[
-    AC_MSG_RESULT([yes])
-    AC_DEFINE(_ALL_SOURCE)
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-])
-
-
-dnl CURL_CHECK_HEADER_WINDOWS
-dnl -------------------------------------------------
-dnl Check for compilable and valid windows.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINDOWS], [
-  AC_CACHE_CHECK([for windows.h], [ac_cv_header_windows_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINDOWS_H shall not be defined.
-#else
-        int dummy=2*WINVER;
-#endif
-      ]])
-    ],[
-      ac_cv_header_windows_h="yes"
-    ],[
-      ac_cv_header_windows_h="no"
-    ])
-  ])
-  case "$ac_cv_header_windows_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINDOWS_H, 1,
-        [Define to 1 if you have the windows.h header file.])
-      AC_DEFINE_UNQUOTED(WIN32_LEAN_AND_MEAN, 1,
-        [Define to avoid automatic inclusion of winsock.h])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_NATIVE_WINDOWS
-dnl -------------------------------------------------
-dnl Check if building a native Windows target
-
-AC_DEFUN([CURL_CHECK_NATIVE_WINDOWS], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([whether build target is a native Windows one], [ac_cv_native_windows], [
-    if test "$ac_cv_header_windows_h" = "no"; then
-      ac_cv_native_windows="no"
-    else
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-        ]],[[
-#if defined(__MINGW32__) || defined(__MINGW32CE__) || \
-   (defined(_MSC_VER) && (defined(_WIN32) || defined(_WIN64)))
-          int dummy=1;
-#else
-          Not a native Windows build target.
-#endif
-        ]])
-      ],[
-        ac_cv_native_windows="yes"
-      ],[
-        ac_cv_native_windows="no"
-      ])
-    fi
-  ])
-  case "$ac_cv_native_windows" in
-    yes)
-      AC_DEFINE_UNQUOTED(NATIVE_WINDOWS, 1,
-        [Define to 1 if you are building a native Windows target.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_WINSOCK
-dnl -------------------------------------------------
-dnl Check for compilable and valid winsock.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINSOCK], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([for winsock.h], [ac_cv_header_winsock_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINSOCK_H shall not be defined.
-#else
-        int dummy=WSACleanup();
-#endif
-      ]])
-    ],[
-      ac_cv_header_winsock_h="yes"
-    ],[
-      ac_cv_header_winsock_h="no"
-    ])
-  ])
-  case "$ac_cv_header_winsock_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINSOCK_H, 1,
-        [Define to 1 if you have the winsock.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_WINSOCK2
-dnl -------------------------------------------------
-dnl Check for compilable and valid winsock2.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINSOCK2], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([for winsock2.h], [ac_cv_header_winsock2_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WINSOCK2_H shall not be defined.
-#else
-        int dummy=2*IPPROTO_ESP;
-#endif
-      ]])
-    ],[
-      ac_cv_header_winsock2_h="yes"
-    ],[
-      ac_cv_header_winsock2_h="no"
-    ])
-  ])
-  case "$ac_cv_header_winsock2_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINSOCK2_H, 1,
-        [Define to 1 if you have the winsock2.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_WS2TCPIP
-dnl -------------------------------------------------
-dnl Check for compilable and valid ws2tcpip.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WS2TCPIP], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CACHE_CHECK([for ws2tcpip.h], [ac_cv_header_ws2tcpip_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-#include <ws2tcpip.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WS2TCPIP_H shall not be defined.
-#else
-        int dummy=2*IP_PKTINFO;
-#endif
-      ]])
-    ],[
-      ac_cv_header_ws2tcpip_h="yes"
-    ],[
-      ac_cv_header_ws2tcpip_h="no"
-    ])
-  ])
-  case "$ac_cv_header_ws2tcpip_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WS2TCPIP_H, 1,
-        [Define to 1 if you have the ws2tcpip.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_WINLDAP
-dnl -------------------------------------------------
-dnl Check for compilable and valid winldap.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINLDAP], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([for winldap.h], [ac_cv_header_winldap_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#endif
-#include <winldap.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINLDAP_H shall not be defined.
-#else
-        LDAP *ldp = ldap_init("dummy", LDAP_PORT);
-        ULONG res = ldap_unbind(ldp);
-#endif
-      ]])
-    ],[
-      ac_cv_header_winldap_h="yes"
-    ],[
-      ac_cv_header_winldap_h="no"
-    ])
-  ])
-  case "$ac_cv_header_winldap_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINLDAP_H, 1,
-        [Define to 1 if you have the winldap.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_WINBER
-dnl -------------------------------------------------
-dnl Check for compilable and valid winber.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINBER], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINLDAP])dnl
-  AC_CACHE_CHECK([for winber.h], [ac_cv_header_winber_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#endif
-#include <winldap.h>
-#include <winber.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINBER_H shall not be defined.
-#else
-        BERVAL *bvp = NULL;
-        BerElement *bep = ber_init(bvp);
-        ber_free(bep, 1);
-#endif
-      ]])
-    ],[
-      ac_cv_header_winber_h="yes"
-    ],[
-      ac_cv_header_winber_h="no"
-    ])
-  ])
-  case "$ac_cv_header_winber_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINBER_H, 1,
-        [Define to 1 if you have the winber.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_LBER
-dnl -------------------------------------------------
-dnl Check for compilable and valid lber.h header,
-dnl and check if it is needed even with ldap.h
-
-AC_DEFUN([CURL_CHECK_HEADER_LBER], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([for lber.h], [ac_cv_header_lber_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef NULL
-#define NULL (void *)0
-#endif
-#include <lber.h>
-      ]],[[
-        BerValue *bvp = NULL;
-        BerElement *bep = ber_init(bvp);
-        ber_free(bep, 1);
-      ]])
-    ],[
-      ac_cv_header_lber_h="yes"
-    ],[
-      ac_cv_header_lber_h="no"
-    ])
-  ])
-  if test "$ac_cv_header_lber_h" = "yes"; then
-    AC_DEFINE_UNQUOTED(HAVE_LBER_H, 1,
-      [Define to 1 if you have the lber.h header file.])
-    #
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef NULL
-#define NULL (void *)0
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#include <ldap.h>
-      ]],[[
-        BerValue *bvp = NULL;
-        BerElement *bep = ber_init(bvp);
-        ber_free(bep, 1);
-      ]])
-    ],[
-      curl_cv_need_header_lber_h="no"
-    ],[
-      curl_cv_need_header_lber_h="yes"
-    ])
-    #
-    case "$curl_cv_need_header_lber_h" in
-      yes)
-        AC_DEFINE_UNQUOTED(NEED_LBER_H, 1,
-          [Define to 1 if you need the lber.h header file even with ldap.h])
-        ;;
-    esac
-  fi
-])
-
-
-dnl CURL_CHECK_HEADER_LDAP
-dnl -------------------------------------------------
-dnl Check for compilable and valid ldap.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_LDAP], [
-  AC_REQUIRE([CURL_CHECK_HEADER_LBER])dnl
-  AC_CACHE_CHECK([for ldap.h], [ac_cv_header_ldap_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#ifdef NEED_LBER_H
-#include <lber.h>
-#endif
-#include <ldap.h>
-      ]],[[
-        LDAP *ldp = ldap_init("dummy", LDAP_PORT);
-        int res = ldap_unbind(ldp);
-      ]])
-    ],[
-      ac_cv_header_ldap_h="yes"
-    ],[
-      ac_cv_header_ldap_h="no"
-    ])
-  ])
-  case "$ac_cv_header_ldap_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_LDAP_H, 1,
-        [Define to 1 if you have the ldap.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_LDAP_SSL
-dnl -------------------------------------------------
-dnl Check for compilable and valid ldap_ssl.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_LDAP_SSL], [
-  AC_REQUIRE([CURL_CHECK_HEADER_LDAP])dnl
-  AC_CACHE_CHECK([for ldap_ssl.h], [ac_cv_header_ldap_ssl_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#ifdef NEED_LBER_H
-#include <lber.h>
-#endif
-#ifdef HAVE_LDAP_H
-#include <ldap.h>
-#endif
-#include <ldap_ssl.h>
-      ]],[[
-        LDAP *ldp = ldapssl_init("dummy", LDAPS_PORT, 1);
-      ]])
-    ],[
-      ac_cv_header_ldap_ssl_h="yes"
-    ],[
-      ac_cv_header_ldap_ssl_h="no"
-    ])
-  ])
-  case "$ac_cv_header_ldap_ssl_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_LDAP_SSL_H, 1,
-        [Define to 1 if you have the ldap_ssl.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_LDAPSSL
-dnl -------------------------------------------------
-dnl Check for compilable and valid ldapssl.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_LDAPSSL], [
-  AC_REQUIRE([CURL_CHECK_HEADER_LDAP])dnl
-  AC_CACHE_CHECK([for ldapssl.h], [ac_cv_header_ldapssl_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef NULL
-#define NULL (void *)0
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#ifdef NEED_LBER_H
-#include <lber.h>
-#endif
-#ifdef HAVE_LDAP_H
-#include <ldap.h>
-#endif
-#include <ldapssl.h>
-      ]],[[
-        char *cert_label = NULL;
-        LDAP *ldp = ldap_ssl_init("dummy", LDAPS_PORT, cert_label);
-      ]])
-    ],[
-      ac_cv_header_ldapssl_h="yes"
-    ],[
-      ac_cv_header_ldapssl_h="no"
-    ])
-  ])
-  case "$ac_cv_header_ldapssl_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_LDAPSSL_H, 1,
-        [Define to 1 if you have the ldapssl.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_LIBS_WINLDAP
-dnl -------------------------------------------------
-dnl Check for libraries needed for WINLDAP support,
-dnl and prepended to LIBS any needed libraries.
-dnl This macro can take an optional parameter with a
-dnl white space separated list of libraries to check
-dnl before the WINLDAP default ones.
-
-AC_DEFUN([CURL_CHECK_LIBS_WINLDAP], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINBER])dnl
-  #
-  AC_MSG_CHECKING([for WINLDAP libraries])
-  #
-  u_libs=""
-  #
-  ifelse($1,,,[
-    for x_lib in $1; do
-      case "$x_lib" in
-        -l*)
-          l_lib="$x_lib"
-          ;;
-        *)
-          l_lib="-l$x_lib"
-          ;;
-      esac
-      if test -z "$u_libs"; then
-        u_libs="$l_lib"
-      else
-        u_libs="$u_libs $l_lib"
-      fi
-    done
-  ])
-  #
-  curl_cv_save_LIBS="$LIBS"
-  curl_cv_ldap_LIBS="unknown"
-  #
-  for x_nlibs in '' "$u_libs" \
-    '-lwldap32' ; do
-    if test "$curl_cv_ldap_LIBS" = "unknown"; then
-      if test -z "$x_nlibs"; then
-        LIBS="$curl_cv_save_LIBS"
-      else
-        LIBS="$x_nlibs $curl_cv_save_LIBS"
-      fi
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINLDAP_H
-#include <winldap.h>
-#endif
-#ifdef HAVE_WINBER_H
-#include <winber.h>
-#endif
-#endif
-        ]],[[
-          BERVAL *bvp = NULL;
-          BerElement *bep = ber_init(bvp);
-          LDAP *ldp = ldap_init("dummy", LDAP_PORT);
-          ULONG res = ldap_unbind(ldp);
-          ber_free(bep, 1);
-        ]])
-      ],[
-        curl_cv_ldap_LIBS="$x_nlibs"
-      ])
-    fi
-  done
-  #
-  LIBS="$curl_cv_save_LIBS"
-  #
-  case X-"$curl_cv_ldap_LIBS" in
-    X-unknown)
-      AC_MSG_RESULT([cannot find WINLDAP libraries])
-      ;;
-    X-)
-      AC_MSG_RESULT([no additional lib required])
-      ;;
-    *)
-      if test -z "$curl_cv_save_LIBS"; then
-        LIBS="$curl_cv_ldap_LIBS"
-      else
-        LIBS="$curl_cv_ldap_LIBS $curl_cv_save_LIBS"
-      fi
-      AC_MSG_RESULT([$curl_cv_ldap_LIBS])
-      ;;
-  esac
-  #
-])
-
-
-dnl CURL_CHECK_LIBS_LDAP
-dnl -------------------------------------------------
-dnl Check for libraries needed for LDAP support,
-dnl and prepended to LIBS any needed libraries.
-dnl This macro can take an optional parameter with a
-dnl white space separated list of libraries to check
-dnl before the default ones.
-
-AC_DEFUN([CURL_CHECK_LIBS_LDAP], [
-  AC_REQUIRE([CURL_CHECK_HEADER_LDAP])dnl
-  #
-  AC_MSG_CHECKING([for LDAP libraries])
-  #
-  u_libs=""
-  #
-  ifelse($1,,,[
-    for x_lib in $1; do
-      case "$x_lib" in
-        -l*)
-          l_lib="$x_lib"
-          ;;
-        *)
-          l_lib="-l$x_lib"
-          ;;
-      esac
-      if test -z "$u_libs"; then
-        u_libs="$l_lib"
-      else
-        u_libs="$u_libs $l_lib"
-      fi
-    done
-  ])
-  #
-  curl_cv_save_LIBS="$LIBS"
-  curl_cv_ldap_LIBS="unknown"
-  #
-  for x_nlibs in '' "$u_libs" \
-    '-lldap' \
-    '-llber -lldap' \
-    '-lldap -llber' \
-    '-lldapssl -lldapx -lldapsdk' \
-    '-lldapsdk -lldapx -lldapssl' ; do
-    if test "$curl_cv_ldap_LIBS" = "unknown"; then
-      if test -z "$x_nlibs"; then
-        LIBS="$curl_cv_save_LIBS"
-      else
-        LIBS="$x_nlibs $curl_cv_save_LIBS"
-      fi
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef NULL
-#define NULL (void *)0
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#ifdef NEED_LBER_H
-#include <lber.h>
-#endif
-#ifdef HAVE_LDAP_H
-#include <ldap.h>
-#endif
-        ]],[[
-          BerValue *bvp = NULL;
-          BerElement *bep = ber_init(bvp);
-          LDAP *ldp = ldap_init("dummy", LDAP_PORT);
-          int res = ldap_unbind(ldp);
-          ber_free(bep, 1);
-        ]])
-      ],[
-        curl_cv_ldap_LIBS="$x_nlibs"
-      ])
-    fi
-  done
-  #
-  LIBS="$curl_cv_save_LIBS"
-  #
-  case X-"$curl_cv_ldap_LIBS" in
-    X-unknown)
-      AC_MSG_RESULT([cannot find LDAP libraries])
-      ;;
-    X-)
-      AC_MSG_RESULT([no additional lib required])
-      ;;
-    *)
-      if test -z "$curl_cv_save_LIBS"; then
-        LIBS="$curl_cv_ldap_LIBS"
-      else
-        LIBS="$curl_cv_ldap_LIBS $curl_cv_save_LIBS"
-      fi
-      AC_MSG_RESULT([$curl_cv_ldap_LIBS])
-      ;;
-  esac
-  #
-])
-
-
-dnl CURL_CHECK_HEADER_MALLOC
-dnl -------------------------------------------------
-dnl Check for compilable and valid malloc.h header,
-dnl and check if it is needed even with stdlib.h
-
-AC_DEFUN([CURL_CHECK_HEADER_MALLOC], [
-  AC_CACHE_CHECK([for malloc.h], [ac_cv_header_malloc_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <malloc.h>
-      ]],[[
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-      ]])
-    ],[
-      ac_cv_header_malloc_h="yes"
-    ],[
-      ac_cv_header_malloc_h="no"
-    ])
-  ])
-  if test "$ac_cv_header_malloc_h" = "yes"; then
-    AC_DEFINE_UNQUOTED(HAVE_MALLOC_H, 1,
-      [Define to 1 if you have the malloc.h header file.])
-    #
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <stdlib.h>
-      ]],[[
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-      ]])
-    ],[
-      curl_cv_need_header_malloc_h="no"
-    ],[
-      curl_cv_need_header_malloc_h="yes"
-    ])
-    #
-    case "$curl_cv_need_header_malloc_h" in
-      yes)
-        AC_DEFINE_UNQUOTED(NEED_MALLOC_H, 1,
-          [Define to 1 if you need the malloc.h header file even with stdlib.h])
-        ;;
-    esac
-  fi
-])
-
-
-dnl CURL_CHECK_HEADER_MEMORY
-dnl -------------------------------------------------
-dnl Check for compilable and valid memory.h header,
-dnl and check if it is needed even with stdlib.h for
-dnl memory related functions.
-
-AC_DEFUN([CURL_CHECK_HEADER_MEMORY], [
-  AC_CACHE_CHECK([for memory.h], [ac_cv_header_memory_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <memory.h>
-      ]],[[
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-      ]])
-    ],[
-      ac_cv_header_memory_h="yes"
-    ],[
-      ac_cv_header_memory_h="no"
-    ])
-  ])
-  if test "$ac_cv_header_memory_h" = "yes"; then
-    AC_DEFINE_UNQUOTED(HAVE_MEMORY_H, 1,
-      [Define to 1 if you have the memory.h header file.])
-    #
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <stdlib.h>
-      ]],[[
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-      ]])
-    ],[
-      curl_cv_need_header_memory_h="no"
-    ],[
-      curl_cv_need_header_memory_h="yes"
-    ])
-    #
-    case "$curl_cv_need_header_memory_h" in
-      yes)
-        AC_DEFINE_UNQUOTED(NEED_MEMORY_H, 1,
-          [Define to 1 if you need the memory.h header file even with stdlib.h])
-        ;;
-    esac
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_GETNAMEINFO
-dnl -------------------------------------------------
-dnl Test if the getnameinfo function is available,
-dnl and check the types of five of its arguments.
-dnl If the function succeeds HAVE_GETNAMEINFO will be
-dnl defined, defining the types of the arguments in
-dnl GETNAMEINFO_TYPE_ARG1, GETNAMEINFO_TYPE_ARG2,
-dnl GETNAMEINFO_TYPE_ARG46 and GETNAMEINFO_TYPE_ARG7,
-dnl and also defining the type qualifier of first
-dnl argument in GETNAMEINFO_QUAL_ARG1.
-
-AC_DEFUN([CURL_CHECK_FUNC_GETNAMEINFO], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WS2TCPIP])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h netdb.h)
-  #
-  AC_MSG_CHECKING([for getnameinfo])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([getnameinfo])
-  ],[
-    AC_MSG_RESULT([yes])
-    curl_cv_getnameinfo="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    curl_cv_getnameinfo="no"
-  ])
-  #
-  if test "$curl_cv_getnameinfo" != "yes"; then
-    AC_MSG_CHECKING([deeper for getnameinfo])
-    AC_LINK_IFELSE([
-      AC_LANG_PROGRAM([[
-      ]],[[
-        getnameinfo();
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      curl_cv_getnameinfo="yes"
-    ],[
-      AC_MSG_RESULT([but still no])
-      curl_cv_getnameinfo="no"
-    ])
-  fi
-  #
-  if test "$curl_cv_getnameinfo" != "yes"; then
-    AC_MSG_CHECKING([deeper and deeper for getnameinfo])
-    AC_LINK_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#endif
-      ]],[[
-        getnameinfo(0, 0, 0, 0, 0, 0, 0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      curl_cv_getnameinfo="yes"
-    ],[
-      AC_MSG_RESULT([but still no])
-      curl_cv_getnameinfo="no"
-    ])
-  fi
-  #
-  if test "$curl_cv_getnameinfo" = "yes"; then
-    AC_CACHE_CHECK([types of arguments for getnameinfo],
-      [curl_cv_func_getnameinfo_args], [
-      curl_cv_func_getnameinfo_args="unknown"
-      for gni_arg1 in 'struct sockaddr *' 'const struct sockaddr *' 'void *'; do
-        for gni_arg2 in 'socklen_t' 'size_t' 'int'; do
-          for gni_arg46 in 'size_t' 'int' 'socklen_t' 'unsigned int' 'DWORD'; do
-            for gni_arg7 in 'int' 'unsigned int'; do
-              if test "$curl_cv_func_getnameinfo_args" = "unknown"; then
-                AC_COMPILE_IFELSE([
-                  AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#if (!defined(_WIN32_WINNT)) || (_WIN32_WINNT < 0x0501)
-#undef _WIN32_WINNT
-#define _WIN32_WINNT 0x0501
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#define GNICALLCONV WSAAPI
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#define GNICALLCONV
-#endif
-                    extern int GNICALLCONV getnameinfo($gni_arg1, $gni_arg2,
-                                           char *, $gni_arg46,
-                                           char *, $gni_arg46,
-                                           $gni_arg7);
-                  ]],[[
-                    $gni_arg2 salen=0;
-                    $gni_arg46 hostlen=0;
-                    $gni_arg46 servlen=0;
-                    $gni_arg7 flags=0;
-                    int res = getnameinfo(0, salen, 0, hostlen, 0, servlen, flags);
-                  ]])
-                ],[
-                  curl_cv_func_getnameinfo_args="$gni_arg1,$gni_arg2,$gni_arg46,$gni_arg7"
-                ])
-              fi
-            done
-          done
-        done
-      done
-    ]) # AC-CACHE-CHECK
-    if test "$curl_cv_func_getnameinfo_args" = "unknown"; then
-      AC_MSG_WARN([Cannot find proper types to use for getnameinfo args])
-      AC_MSG_WARN([HAVE_GETNAMEINFO will not be defined])
-    else
-      gni_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_getnameinfo_args" | sed 's/\*/\*/g'`
-      IFS=$gni_prev_IFS
-      shift
-      #
-      gni_qual_type_arg1=$[1]
-      #
-      AC_DEFINE_UNQUOTED(GETNAMEINFO_TYPE_ARG2, $[2],
-        [Define to the type of arg 2 for getnameinfo.])
-      AC_DEFINE_UNQUOTED(GETNAMEINFO_TYPE_ARG46, $[3],
-        [Define to the type of args 4 and 6 for getnameinfo.])
-      AC_DEFINE_UNQUOTED(GETNAMEINFO_TYPE_ARG7, $[4],
-        [Define to the type of arg 7 for getnameinfo.])
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      case "$gni_qual_type_arg1" in
-        const*)
-          gni_qual_arg1=const
-          gni_type_arg1=`echo $gni_qual_type_arg1 | sed 's/^const //'`
-        ;;
-        *)
-          gni_qual_arg1=
-          gni_type_arg1=$gni_qual_type_arg1
-        ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(GETNAMEINFO_QUAL_ARG1, $gni_qual_arg1,
-        [Define to the type qualifier of arg 1 for getnameinfo.])
-      AC_DEFINE_UNQUOTED(GETNAMEINFO_TYPE_ARG1, $gni_type_arg1,
-        [Define to the type of arg 1 for getnameinfo.])
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(HAVE_GETNAMEINFO, 1,
-        [Define to 1 if you have the getnameinfo function.])
-      ac_cv_func_getnameinfo="yes"
-    fi
-  fi
-])
-
-
-dnl TYPE_SOCKADDR_STORAGE
-dnl -------------------------------------------------
-dnl Check for struct sockaddr_storage. Most IPv6-enabled
-dnl hosts have it, but AIX 4.3 is one known exception.
-
-AC_DEFUN([TYPE_SOCKADDR_STORAGE],
-[
-   AC_CHECK_TYPE([struct sockaddr_storage],
-        AC_DEFINE(HAVE_STRUCT_SOCKADDR_STORAGE, 1,
-                  [if struct sockaddr_storage is defined]), ,
-   [
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-   ])
-])
-
-
-dnl CURL_CHECK_NI_WITHSCOPEID
-dnl -------------------------------------------------
-dnl Check for working NI_WITHSCOPEID in getnameinfo()
-
-AC_DEFUN([CURL_CHECK_NI_WITHSCOPEID], [
-  AC_REQUIRE([CURL_CHECK_FUNC_GETNAMEINFO])dnl
-  AC_REQUIRE([TYPE_SOCKADDR_STORAGE])dnl
-  AC_CHECK_HEADERS(stdio.h sys/types.h sys/socket.h \
-                   netdb.h netinet/in.h arpa/inet.h)
-  #
-  AC_CACHE_CHECK([for working NI_WITHSCOPEID],
-    [ac_cv_working_ni_withscopeid], [
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_STDIO_H
-#include <stdio.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-      ]],[[
-#if defined(NI_WITHSCOPEID) && defined(HAVE_GETNAMEINFO)
-#ifdef HAVE_STRUCT_SOCKADDR_STORAGE
-        struct sockaddr_storage sa;
-#else
-        unsigned char sa[256];
-#endif
-        char hostbuf[NI_MAXHOST];
-        int rc;
-        GETNAMEINFO_TYPE_ARG2 salen = (GETNAMEINFO_TYPE_ARG2)sizeof(sa);
-        GETNAMEINFO_TYPE_ARG46 hostlen = (GETNAMEINFO_TYPE_ARG46)sizeof(hostbuf);
-        GETNAMEINFO_TYPE_ARG7 flags = NI_NUMERICHOST | NI_NUMERICSERV | NI_WITHSCOPEID;
-        int fd = socket(AF_INET6, SOCK_STREAM, 0);
-        if(fd < 0) {
-          perror("socket()");
-          return 1; /* Error creating socket */
-        }
-        rc = getsockname(fd, (GETNAMEINFO_TYPE_ARG1)&sa, &salen);
-        if(rc) {
-          perror("getsockname()");
-          return 2; /* Error retrieving socket name */
-        }
-        rc = getnameinfo((GETNAMEINFO_TYPE_ARG1)&sa, salen, hostbuf, hostlen, NULL, 0, flags);
-        if(rc) {
-          printf("rc = %s\n", gai_strerror(rc));
-          return 3; /* Error translating socket address */
-        }
-        return 0; /* Ok, NI_WITHSCOPEID works */
-#else
-        return 4; /* Error, NI_WITHSCOPEID not defined or no getnameinfo() */
-#endif
-      ]]) # AC-LANG-PROGRAM
-    ],[
-      # Exit code == 0. Program worked.
-      ac_cv_working_ni_withscopeid="yes"
-    ],[
-      # Exit code != 0. Program failed.
-      ac_cv_working_ni_withscopeid="no"
-    ],[
-      # Program is not run when cross-compiling. So we assume
-      # NI_WITHSCOPEID will work if we are able to compile it.
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netdb.h>
-        ]],[[
-          unsigned int dummy= NI_NUMERICHOST | NI_NUMERICSERV | NI_WITHSCOPEID;
-        ]])
-      ],[
-        ac_cv_working_ni_withscopeid="yes"
-      ],[
-        ac_cv_working_ni_withscopeid="no"
-      ]) # AC-COMPILE-IFELSE
-    ]) # AC-RUN-IFELSE
-  ]) # AC-CACHE-CHECK
-  case "$ac_cv_working_ni_withscopeid" in
-    yes)
-      AC_DEFINE(HAVE_NI_WITHSCOPEID, 1,
-        [Define to 1 if NI_WITHSCOPEID exists and works.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_FUNC_RECV
-dnl -------------------------------------------------
-dnl Test if the socket recv() function is available,
-dnl and check its return type and the types of its
-dnl arguments. If the function succeeds HAVE_RECV
-dnl will be defined, defining the types of the arguments
-dnl in RECV_TYPE_ARG1, RECV_TYPE_ARG2, RECV_TYPE_ARG3
-dnl and RECV_TYPE_ARG4, defining the type of the function
-dnl return value in RECV_TYPE_RETV.
-
-AC_DEFUN([CURL_CHECK_FUNC_RECV], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK])dnl
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h)
-  #
-  AC_MSG_CHECKING([for recv])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-    ]],[[
-      recv(0, 0, 0, 0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    curl_cv_recv="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    curl_cv_recv="no"
-  ])
-  #
-  if test "$curl_cv_recv" = "yes"; then
-    AC_CACHE_CHECK([types of args and return type for recv],
-      [curl_cv_func_recv_args], [
-      curl_cv_func_recv_args="unknown"
-      for recv_retv in 'int' 'ssize_t'; do
-        for recv_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for recv_arg2 in 'char *' 'void *'; do
-            for recv_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for recv_arg4 in 'int' 'unsigned int'; do
-                if test "$curl_cv_func_recv_args" = "unknown"; then
-                  AC_COMPILE_IFELSE([
-                    AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define RECVCALLCONV PASCAL
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define RECVCALLCONV
-#endif
-                      extern $recv_retv RECVCALLCONV
-                      recv($recv_arg1, $recv_arg2, $recv_arg3, $recv_arg4);
-                    ]],[[
-                      $recv_arg1 s=0;
-                      $recv_arg2 buf=0;
-                      $recv_arg3 len=0;
-                      $recv_arg4 flags=0;
-                      $recv_retv res = recv(s, buf, len, flags);
-                    ]])
-                  ],[
-                    curl_cv_func_recv_args="$recv_arg1,$recv_arg2,$recv_arg3,$recv_arg4,$recv_retv"
-                  ])
-                fi
-              done
-            done
-          done
-        done
-      done
-    ]) # AC-CACHE-CHECK
-    if test "$curl_cv_func_recv_args" = "unknown"; then
-      AC_MSG_ERROR([Cannot find proper types to use for recv args])
-    else
-      recv_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_recv_args" | sed 's/\*/\*/g'`
-      IFS=$recv_prev_IFS
-      shift
-      #
-      AC_DEFINE_UNQUOTED(RECV_TYPE_ARG1, $[1],
-        [Define to the type of arg 1 for recv.])
-      AC_DEFINE_UNQUOTED(RECV_TYPE_ARG2, $[2],
-        [Define to the type of arg 2 for recv.])
-      AC_DEFINE_UNQUOTED(RECV_TYPE_ARG3, $[3],
-        [Define to the type of arg 3 for recv.])
-      AC_DEFINE_UNQUOTED(RECV_TYPE_ARG4, $[4],
-        [Define to the type of arg 4 for recv.])
-      AC_DEFINE_UNQUOTED(RECV_TYPE_RETV, $[5],
-        [Define to the function return type for recv.])
-      #
-      AC_DEFINE_UNQUOTED(HAVE_RECV, 1,
-        [Define to 1 if you have the recv function.])
-      ac_cv_func_recv="yes"
-    fi
-  else
-    AC_MSG_ERROR([Unable to link function recv])
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_SEND
-dnl -------------------------------------------------
-dnl Test if the socket send() function is available,
-dnl and check its return type and the types of its
-dnl arguments. If the function succeeds HAVE_SEND
-dnl will be defined, defining the types of the arguments
-dnl in SEND_TYPE_ARG1, SEND_TYPE_ARG2, SEND_TYPE_ARG3
-dnl and SEND_TYPE_ARG4, defining the type of the function
-dnl return value in SEND_TYPE_RETV, and also defining the
-dnl type qualifier of second argument in SEND_QUAL_ARG2.
-
-AC_DEFUN([CURL_CHECK_FUNC_SEND], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK])dnl
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h)
-  #
-  AC_MSG_CHECKING([for send])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-    ]],[[
-      send(0, 0, 0, 0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    curl_cv_send="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    curl_cv_send="no"
-  ])
-  #
-  if test "$curl_cv_send" = "yes"; then
-    AC_CACHE_CHECK([types of args and return type for send],
-      [curl_cv_func_send_args], [
-      curl_cv_func_send_args="unknown"
-      for send_retv in 'int' 'ssize_t'; do
-        for send_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for send_arg2 in 'char *' 'void *' 'const char *' 'const void *'; do
-            for send_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for send_arg4 in 'int' 'unsigned int'; do
-                if test "$curl_cv_func_send_args" = "unknown"; then
-                  AC_COMPILE_IFELSE([
-                    AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define SENDCALLCONV PASCAL
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define SENDCALLCONV
-#endif
-                      extern $send_retv SENDCALLCONV
-                      send($send_arg1, $send_arg2, $send_arg3, $send_arg4);
-                    ]],[[
-                      $send_arg1 s=0;
-                      $send_arg3 len=0;
-                      $send_arg4 flags=0;
-                      $send_retv res = send(s, 0, len, flags);
-                    ]])
-                  ],[
-                    curl_cv_func_send_args="$send_arg1,$send_arg2,$send_arg3,$send_arg4,$send_retv"
-                  ])
-                fi
-              done
-            done
-          done
-        done
-      done
-    ]) # AC-CACHE-CHECK
-    if test "$curl_cv_func_send_args" = "unknown"; then
-      AC_MSG_ERROR([Cannot find proper types to use for send args])
-    else
-      send_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_send_args" | sed 's/\*/\*/g'`
-      IFS=$send_prev_IFS
-      shift
-      #
-      send_qual_type_arg2=$[2]
-      #
-      AC_DEFINE_UNQUOTED(SEND_TYPE_ARG1, $[1],
-        [Define to the type of arg 1 for send.])
-      AC_DEFINE_UNQUOTED(SEND_TYPE_ARG3, $[3],
-        [Define to the type of arg 3 for send.])
-      AC_DEFINE_UNQUOTED(SEND_TYPE_ARG4, $[4],
-        [Define to the type of arg 4 for send.])
-      AC_DEFINE_UNQUOTED(SEND_TYPE_RETV, $[5],
-        [Define to the function return type for send.])
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      case "$send_qual_type_arg2" in
-        const*)
-          send_qual_arg2=const
-          send_type_arg2=`echo $send_qual_type_arg2 | sed 's/^const //'`
-        ;;
-        *)
-          send_qual_arg2=
-          send_type_arg2=$send_qual_type_arg2
-        ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(SEND_QUAL_ARG2, $send_qual_arg2,
-        [Define to the type qualifier of arg 2 for send.])
-      AC_DEFINE_UNQUOTED(SEND_TYPE_ARG2, $send_type_arg2,
-        [Define to the type of arg 2 for send.])
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(HAVE_SEND, 1,
-        [Define to 1 if you have the send function.])
-      ac_cv_func_send="yes"
-    fi
-  else
-    AC_MSG_ERROR([Unable to link function send])
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_RECVFROM
-dnl -------------------------------------------------
-dnl Test if the socket recvfrom() function is available,
-dnl and check its return type and the types of its
-dnl arguments. If the function succeeds HAVE_RECVFROM
-dnl will be defined, defining the types of the arguments
-dnl in RECVFROM_TYPE_ARG1, RECVFROM_TYPE_ARG2, and so on
-dnl to RECVFROM_TYPE_ARG6, defining also the type of the
-dnl function return value in RECVFROM_TYPE_RETV.
-dnl Notice that the types returned for pointer arguments
-dnl will actually be the type pointed by the pointer.
-
-AC_DEFUN([CURL_CHECK_FUNC_RECVFROM], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK])dnl
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h)
-  #
-  AC_MSG_CHECKING([for recvfrom])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-    ]],[[
-      recvfrom(0, 0, 0, 0, 0, 0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    curl_cv_recvfrom="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    curl_cv_recvfrom="no"
-  ])
-  #
-  if test "$curl_cv_recvfrom" = "yes"; then
-    AC_CACHE_CHECK([types of args and return type for recvfrom],
-      [curl_cv_func_recvfrom_args], [
-      curl_cv_func_recvfrom_args="unknown"
-      for recvfrom_retv in 'int' 'ssize_t'; do
-        for recvfrom_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for recvfrom_arg2 in 'char *' 'void *'; do
-            for recvfrom_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for recvfrom_arg4 in 'int' 'unsigned int'; do
-                for recvfrom_arg5 in 'struct sockaddr *' 'void *'; do
-                  for recvfrom_arg6 in 'socklen_t *' 'int *' 'unsigned int *' 'size_t *' 'void *'; do
-                    if test "$curl_cv_func_recvfrom_args" = "unknown"; then
-                      AC_COMPILE_IFELSE([
-                        AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define RECVFROMCALLCONV PASCAL
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define RECVFROMCALLCONV
-#endif
-                          extern $recvfrom_retv RECVFROMCALLCONV
-                          recvfrom($recvfrom_arg1, $recvfrom_arg2,
-                                   $recvfrom_arg3, $recvfrom_arg4,
-                                   $recvfrom_arg5, $recvfrom_arg6);
-                        ]],[[
-                          $recvfrom_arg1 s=0;
-                          $recvfrom_arg2 buf=0;
-                          $recvfrom_arg3 len=0;
-                          $recvfrom_arg4 flags=0;
-                          $recvfrom_arg5 addr=0;
-                          $recvfrom_arg6 addrlen=0;
-                          $recvfrom_retv res=0;
-                          res = recvfrom(s, buf, len, flags, addr, addrlen);
-                        ]])
-                      ],[
-                        curl_cv_func_recvfrom_args="$recvfrom_arg1,$recvfrom_arg2,$recvfrom_arg3,$recvfrom_arg4,$recvfrom_arg5,$recvfrom_arg6,$recvfrom_retv"
-                      ])
-                    fi
-                  done
-                done
-              done
-            done
-          done
-        done
-      done
-    ]) # AC-CACHE-CHECK
-    # Nearly last minute change for this release starts here
-    AC_DEFINE_UNQUOTED(HAVE_RECVFROM, 1,
-      [Define to 1 if you have the recvfrom function.])
-    ac_cv_func_recvfrom="yes"
-    # Nearly last minute change for this release ends here
-    if test "$curl_cv_func_recvfrom_args" = "unknown"; then
-      AC_MSG_WARN([Cannot find proper types to use for recvfrom args])
-    else
-      recvfrom_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_recvfrom_args" | sed 's/\*/\*/g'`
-      IFS=$recvfrom_prev_IFS
-      shift
-      #
-      recvfrom_ptrt_arg2=$[2]
-      recvfrom_ptrt_arg5=$[5]
-      recvfrom_ptrt_arg6=$[6]
-      #
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG1, $[1],
-        [Define to the type of arg 1 for recvfrom.])
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG3, $[3],
-        [Define to the type of arg 3 for recvfrom.])
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG4, $[4],
-        [Define to the type of arg 4 for recvfrom.])
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_RETV, $[7],
-        [Define to the function return type for recvfrom.])
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      recvfrom_type_arg2=`echo $recvfrom_ptrt_arg2 | sed 's/ \*//'`
-      recvfrom_type_arg5=`echo $recvfrom_ptrt_arg5 | sed 's/ \*//'`
-      recvfrom_type_arg6=`echo $recvfrom_ptrt_arg6 | sed 's/ \*//'`
-      #
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG2, $recvfrom_type_arg2,
-        [Define to the type pointed by arg 2 for recvfrom.])
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG5, $recvfrom_type_arg5,
-        [Define to the type pointed by arg 5 for recvfrom.])
-      AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG6, $recvfrom_type_arg6,
-        [Define to the type pointed by arg 6 for recvfrom.])
-      #
-      if test "$recvfrom_type_arg2" = "void"; then
-        AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG2_IS_VOID, 1,
-          [Define to 1 if the type pointed by arg 2 for recvfrom is void.])
-      fi
-      if test "$recvfrom_type_arg5" = "void"; then
-        AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG5_IS_VOID, 1,
-          [Define to 1 if the type pointed by arg 5 for recvfrom is void.])
-      fi
-      if test "$recvfrom_type_arg6" = "void"; then
-        AC_DEFINE_UNQUOTED(RECVFROM_TYPE_ARG6_IS_VOID, 1,
-          [Define to 1 if the type pointed by arg 6 for recvfrom is void.])
-      fi
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(HAVE_RECVFROM, 1,
-        [Define to 1 if you have the recvfrom function.])
-      ac_cv_func_recvfrom="yes"
-    fi
-  else
-    AC_MSG_WARN([Unable to link function recvfrom])
-  fi
-])
-
-
-dnl CURL_CHECK_MSG_NOSIGNAL
-dnl -------------------------------------------------
-dnl Check for MSG_NOSIGNAL
-
-AC_DEFUN([CURL_CHECK_MSG_NOSIGNAL], [
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h)
-  AC_CACHE_CHECK([for MSG_NOSIGNAL], [ac_cv_msg_nosignal], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-      ]],[[
-        int flag=MSG_NOSIGNAL;
-      ]])
-    ],[
-      ac_cv_msg_nosignal="yes"
-    ],[
-      ac_cv_msg_nosignal="no"
-    ])
-  ])
-  case "$ac_cv_msg_nosignal" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_MSG_NOSIGNAL, 1,
-        [Define to 1 if you have the MSG_NOSIGNAL flag.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_STRUCT_TIMEVAL
-dnl -------------------------------------------------
-dnl Check for timeval struct
-
-AC_DEFUN([CURL_CHECK_STRUCT_TIMEVAL], [
-  AC_REQUIRE([AC_HEADER_TIME])dnl
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK])dnl
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/time.h time.h sys/socket.h)
-  AC_CACHE_CHECK([for struct timeval], [ac_cv_struct_timeval], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-      ]],[[
-        struct timeval ts;
-        ts.tv_sec  = 0;
-        ts.tv_usec = 0;
-      ]])
-    ],[
-      ac_cv_struct_timeval="yes"
-    ],[
-      ac_cv_struct_timeval="no"
-    ])
-  ])
-  case "$ac_cv_struct_timeval" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_STRUCT_TIMEVAL, 1,
-        [Define to 1 if you have the timeval struct.])
-      ;;
-  esac
-])
-
-
-dnl TYPE_SIG_ATOMIC_T
-dnl -------------------------------------------------
-dnl Check if the sig_atomic_t type is available, and
-dnl verify if it is already defined as volatile.
-
-AC_DEFUN([TYPE_SIG_ATOMIC_T], [
-  AC_CHECK_HEADERS(signal.h)
-  AC_CHECK_TYPE([sig_atomic_t],[
-    AC_DEFINE(HAVE_SIG_ATOMIC_T, 1,
-      [Define to 1 if sig_atomic_t is an available typedef.])
-  ], ,[
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-  ])
-  case "$ac_cv_type_sig_atomic_t" in
-    yes)
-      #
-      AC_MSG_CHECKING([if sig_atomic_t is already defined as volatile])
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-        ]],[[
-          static volatile sig_atomic_t dummy = 0;
-        ]])
-      ],[
-        AC_MSG_RESULT([no])
-        ac_cv_sig_atomic_t_volatile="no"
-      ],[
-        AC_MSG_RESULT([yes])
-        ac_cv_sig_atomic_t_volatile="yes"
-      ])
-      #
-      if test "$ac_cv_sig_atomic_t_volatile" = "yes"; then
-        AC_DEFINE(HAVE_SIG_ATOMIC_T_VOLATILE, 1,
-          [Define to 1 if sig_atomic_t is already defined as volatile.])
-      fi
-      ;;
-  esac
-])
-
-
-dnl TYPE_IN_ADDR_T
-dnl -------------------------------------------------
-dnl Check for in_addr_t: it is used to receive the return code of inet_addr()
-dnl and a few other things.
-
-AC_DEFUN([TYPE_IN_ADDR_T], [
-  AC_CHECK_TYPE([in_addr_t], ,[
-    dnl in_addr_t not available
-    AC_CACHE_CHECK([for in_addr_t equivalent],
-      [curl_cv_in_addr_t_equiv], [
-      curl_cv_in_addr_t_equiv="unknown"
-      for t in "unsigned long" int size_t unsigned long; do
-        if test "$curl_cv_in_addr_t_equiv" = "unknown"; then
-          AC_LINK_IFELSE([
-            AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-            ]],[[
-              $t data = inet_addr ("1.2.3.4");
-            ]])
-          ],[
-            curl_cv_in_addr_t_equiv="$t"
-          ])
-        fi
-      done
-    ])
-    case "$curl_cv_in_addr_t_equiv" in
-      unknown)
-        AC_MSG_ERROR([Cannot find a type to use in place of in_addr_t])
-        ;;
-      *)
-        AC_DEFINE_UNQUOTED(in_addr_t, $curl_cv_in_addr_t_equiv,
-          [Type to use in place of in_addr_t when system does not provide it.])
-        ;;
-    esac
-  ],[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-  ])
-])
-
-
-dnl CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC
-dnl -------------------------------------------------
-dnl Check if monotonic clock_gettime is available.
-
-AC_DEFUN([CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC], [
-  AC_REQUIRE([AC_HEADER_TIME])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/time.h time.h)
-  AC_MSG_CHECKING([for monotonic clock_gettime])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-    ]],[[
-      struct timespec ts;
-      (void)clock_gettime(CLOCK_MONOTONIC, &ts);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    ac_cv_func_clock_gettime="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    ac_cv_func_clock_gettime="no"
-  ])
-  dnl Definition of HAVE_CLOCK_GETTIME_MONOTONIC is intentionally postponed
-  dnl until library linking and run-time checks for clock_gettime succeed.
-])
-
-
-dnl CURL_CHECK_LIBS_CLOCK_GETTIME_MONOTONIC
-dnl -------------------------------------------------
-dnl If monotonic clock_gettime is available then,
-dnl check and prepended to LIBS any needed libraries.
-
-AC_DEFUN([CURL_CHECK_LIBS_CLOCK_GETTIME_MONOTONIC], [
-  AC_REQUIRE([CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC])dnl
-  #
-  if test "$ac_cv_func_clock_gettime" = "yes"; then
-    #
-    AC_MSG_CHECKING([for clock_gettime in libraries])
-    #
-    curl_cv_save_LIBS="$LIBS"
-    curl_cv_gclk_LIBS="unknown"
-    #
-    for x_xlibs in '' '-lrt' '-lposix4' ; do
-      if test "$curl_cv_gclk_LIBS" = "unknown"; then
-        if test -z "$x_xlibs"; then
-          LIBS="$curl_cv_save_LIBS"
-        else
-          LIBS="$x_xlibs $curl_cv_save_LIBS"
-        fi
-        AC_LINK_IFELSE([
-          AC_LANG_PROGRAM([[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-          ]],[[
-            struct timespec ts;
-            (void)clock_gettime(CLOCK_MONOTONIC, &ts);
-          ]])
-        ],[
-          curl_cv_gclk_LIBS="$x_xlibs"
-        ])
-      fi
-    done
-    #
-    LIBS="$curl_cv_save_LIBS"
-    #
-    case X-"$curl_cv_gclk_LIBS" in
-      X-unknown)
-        AC_MSG_RESULT([cannot find clock_gettime])
-        AC_MSG_WARN([HAVE_CLOCK_GETTIME_MONOTONIC will not be defined])
-        ac_cv_func_clock_gettime="no"
-        ;;
-      X-)
-        AC_MSG_RESULT([no additional lib required])
-        ac_cv_func_clock_gettime="yes"
-        ;;
-      *)
-        if test -z "$curl_cv_save_LIBS"; then
-          LIBS="$curl_cv_gclk_LIBS"
-        else
-          LIBS="$curl_cv_gclk_LIBS $curl_cv_save_LIBS"
-        fi
-        AC_MSG_RESULT([$curl_cv_gclk_LIBS])
-        ac_cv_func_clock_gettime="yes"
-        ;;
-    esac
-    #
-    dnl only do runtime verification when not cross-compiling
-    if test "x$cross_compiling" != "xyes" &&
-      test "$ac_cv_func_clock_gettime" = "yes"; then
-      AC_MSG_CHECKING([if monotonic clock_gettime works])
-      AC_RUN_IFELSE([
-        AC_LANG_PROGRAM([[
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-        ]],[[
-          struct timespec ts;
-          if (0 == clock_gettime(CLOCK_MONOTONIC, &ts))
-            exit(0);
-          else
-            exit(1);
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-      ],[
-        AC_MSG_RESULT([no])
-        AC_MSG_WARN([HAVE_CLOCK_GETTIME_MONOTONIC will not be defined])
-        ac_cv_func_clock_gettime="no"
-        LIBS="$curl_cv_save_LIBS"
-      ])
-    fi
-    #
-    case "$ac_cv_func_clock_gettime" in
-      yes)
-        AC_DEFINE_UNQUOTED(HAVE_CLOCK_GETTIME_MONOTONIC, 1,
-          [Define to 1 if you have the clock_gettime function and monotonic timer.])
-        ;;
-    esac
-    #
-  fi
-  #
-])
-
-
-dnl CURL_CHECK_LIBS_CONNECT
-dnl -------------------------------------------------
-dnl Verify if network connect function is already available
-dnl using current libraries or if another one is required.
-
-AC_DEFUN([CURL_CHECK_LIBS_CONNECT], [
-  AC_REQUIRE([CURL_INCLUDES_WINSOCK2])dnl
-  AC_MSG_CHECKING([for connect in libraries])
-  tst_connect_save_LIBS="$LIBS"
-  tst_connect_need_LIBS="unknown"
-  for tst_lib in '' '-lsocket' ; do
-    if test "$tst_connect_need_LIBS" = "unknown"; then
-      LIBS="$tst_lib $tst_connect_save_LIBS"
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_winsock2
-          #ifndef HAVE_WINDOWS_H
-            int connect(int, void*, int);
-          #endif
-        ]],[[
-          if(0 != connect(0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        tst_connect_need_LIBS="$tst_lib"
-      ])
-    fi
-  done
-  LIBS="$tst_connect_save_LIBS"
-  #
-  case X-"$tst_connect_need_LIBS" in
-    X-unknown)
-      AC_MSG_RESULT([cannot find connect])
-      AC_MSG_ERROR([cannot find connect function in libraries.])
-      ;;
-    X-)
-      AC_MSG_RESULT([yes])
-      ;;
-    *)
-      AC_MSG_RESULT([$tst_connect_need_LIBS])
-      LIBS="$tst_connect_need_LIBS $tst_connect_save_LIBS"
-      ;;
-  esac
-])
-
-
-dnl CURL_DEFINE_UNQUOTED (VARIABLE, [VALUE])
-dnl -------------------------------------------------
-dnl Like AC_DEFINE_UNQUOTED this macro will define a C preprocessor
-dnl symbol that can be further used in custom template configuration
-dnl files. This macro, unlike AC_DEFINE_UNQUOTED, does not use a third
-dnl argument for the description. Symbol definitions done with this
-dnl macro are intended to be exclusively used in handcrafted *.h.in
-dnl template files. Contrary to what AC_DEFINE_UNQUOTED does, this one
-dnl prevents autoheader generation and insertion of symbol template
-dnl stub and definition into the first configuration header file. Do
-dnl not use this macro as a replacement for AC_DEFINE_UNQUOTED, each
-dnl one serves different functional needs.
-
-AC_DEFUN([CURL_DEFINE_UNQUOTED], [
-cat >>confdefs.h <<_EOF
-[@%:@define] $1 ifelse($#, 2, [$2], 1)
-_EOF
-])
-
-
-dnl CURL_CONFIGURE_LONG
-dnl -------------------------------------------------
-dnl Find out the size of long as reported by sizeof() and define
-dnl CURL_SIZEOF_LONG as appropriate to be used in template file
-dnl include/curl/curlbuild.h.in to properly configure the library.
-dnl The size of long is a build time characteristic and as such
-dnl must be recorded in curlbuild.h
-
-AC_DEFUN([CURL_CONFIGURE_LONG], [
-  if test -z "$ac_cv_sizeof_long" ||
-    test "$ac_cv_sizeof_long" -eq "0"; then
-    AC_MSG_ERROR([cannot find out size of long.])
-  fi
-  CURL_DEFINE_UNQUOTED([CURL_SIZEOF_LONG], [$ac_cv_sizeof_long])
-])
-
-
-dnl CURL_CONFIGURE_CURL_SOCKLEN_T
-dnl -------------------------------------------------
-dnl Find out suitable curl_socklen_t data type definition and size, making
-dnl appropriate definitions for template file include/curl/curlbuild.h.in
-dnl to properly configure and use the library.
-dnl
-dnl The need for the curl_socklen_t definition arises mainly to properly
-dnl interface HP-UX systems which on one hand have a typedef'ed socklen_t
-dnl data type which is 32 or 64-Bit wide depending on the data model being
-dnl used, and that on the other hand is only actually used when interfacing
-dnl the X/Open sockets provided in the xnet library.
-
-AC_DEFUN([CURL_CONFIGURE_CURL_SOCKLEN_T], [
-  AC_REQUIRE([CURL_INCLUDES_WS2TCPIP])dnl
-  AC_REQUIRE([CURL_INCLUDES_SYS_SOCKET])dnl
-  AC_REQUIRE([CURL_PREPROCESS_CALLCONV])dnl
-  #
-  AC_MSG_CHECKING([for curl_socklen_t data type])
-  curl_typeof_curl_socklen_t="unknown"
-  for arg1 in int SOCKET; do
-    for arg2 in 'struct sockaddr' void; do
-      for t in socklen_t int size_t 'unsigned int' long 'unsigned long' void; do
-        if test "$curl_typeof_curl_socklen_t" = "unknown"; then
-          AC_COMPILE_IFELSE([
-            AC_LANG_PROGRAM([[
-              $curl_includes_ws2tcpip
-              $curl_includes_sys_socket
-              $curl_preprocess_callconv
-              extern int FUNCALLCONV getpeername($arg1, $arg2 *, $t *);
-            ]],[[
-              $t *lenptr = 0;
-              if(0 != getpeername(0, 0, lenptr))
-                return 1;
-            ]])
-          ],[
-            curl_typeof_curl_socklen_t="$t"
-          ])
-        fi
-      done
-    done
-  done
-  for t in socklen_t int; do
-    if test "$curl_typeof_curl_socklen_t" = "void"; then
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_sys_socket
-          typedef $t curl_socklen_t;
-        ]],[[
-          curl_socklen_t dummy;
-        ]])
-      ],[
-        curl_typeof_curl_socklen_t="$t"
-      ])
-    fi
-  done
-  AC_MSG_RESULT([$curl_typeof_curl_socklen_t])
-  if test "$curl_typeof_curl_socklen_t" = "void" ||
-    test "$curl_typeof_curl_socklen_t" = "unknown"; then
-    AC_MSG_ERROR([cannot find data type for curl_socklen_t.])
-  fi
-  #
-  AC_MSG_CHECKING([size of curl_socklen_t])
-  curl_sizeof_curl_socklen_t="unknown"
-  curl_pull_headers_socklen_t="unknown"
-  if test "$ac_cv_header_ws2tcpip_h" = "yes"; then
-    tst_pull_header_checks='none ws2tcpip'
-    tst_size_checks='4'
-  else
-    tst_pull_header_checks='none systypes syssocket'
-    tst_size_checks='4 8 2'
-  fi
-  for tst_size in $tst_size_checks; do
-    for tst_pull_headers in $tst_pull_header_checks; do
-      if test "$curl_sizeof_curl_socklen_t" = "unknown"; then
-        case $tst_pull_headers in
-          ws2tcpip)
-            tmp_includes="$curl_includes_ws2tcpip"
-            ;;
-          systypes)
-            tmp_includes="$curl_includes_sys_types"
-            ;;
-          syssocket)
-            tmp_includes="$curl_includes_sys_socket"
-            ;;
-          *)
-            tmp_includes=""
-            ;;
-        esac
-        AC_COMPILE_IFELSE([
-          AC_LANG_PROGRAM([[
-            $tmp_includes
-            typedef $curl_typeof_curl_socklen_t curl_socklen_t;
-            typedef char dummy_arr[sizeof(curl_socklen_t) == $tst_size ? 1 : -1];
-          ]],[[
-            curl_socklen_t dummy;
-          ]])
-        ],[
-          curl_sizeof_curl_socklen_t="$tst_size"
-          curl_pull_headers_socklen_t="$tst_pull_headers"
-        ])
-      fi
-    done
-  done
-  AC_MSG_RESULT([$curl_sizeof_curl_socklen_t])
-  if test "$curl_sizeof_curl_socklen_t" = "unknown"; then
-    AC_MSG_ERROR([cannot find out size of curl_socklen_t.])
-  fi
-  #
-  case $curl_pull_headers_socklen_t in
-    ws2tcpip)
-      CURL_DEFINE_UNQUOTED([CURL_PULL_WS2TCPIP_H])
-      ;;
-    systypes)
-      CURL_DEFINE_UNQUOTED([CURL_PULL_SYS_TYPES_H])
-      ;;
-    syssocket)
-      CURL_DEFINE_UNQUOTED([CURL_PULL_SYS_TYPES_H])
-      CURL_DEFINE_UNQUOTED([CURL_PULL_SYS_SOCKET_H])
-      ;;
-  esac
-  CURL_DEFINE_UNQUOTED([CURL_TYPEOF_CURL_SOCKLEN_T], [$curl_typeof_curl_socklen_t])
-  CURL_DEFINE_UNQUOTED([CURL_SIZEOF_CURL_SOCKLEN_T], [$curl_sizeof_curl_socklen_t])
-])
-
-
-dnl CURL_CHECK_FUNC_SELECT
-dnl -------------------------------------------------
-dnl Test if the socket select() function is available,
-dnl and check its return type and the types of its
-dnl arguments. If the function succeeds HAVE_SELECT
-dnl will be defined, defining the types of the
-dnl arguments in SELECT_TYPE_ARG1, SELECT_TYPE_ARG234
-dnl and SELECT_TYPE_ARG5, defining the type of the
-dnl function return value in SELECT_TYPE_RETV, and
-dnl also defining the type qualifier of fifth argument
-dnl in SELECT_QUAL_ARG5.
-
-AC_DEFUN([CURL_CHECK_FUNC_SELECT], [
-  AC_REQUIRE([CURL_CHECK_STRUCT_TIMEVAL])dnl
-  AC_CHECK_HEADERS(sys/select.h sys/socket.h)
-  #
-  AC_MSG_CHECKING([for select])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-#ifndef HAVE_WINDOWS_H
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-    ]],[[
-      select(0, 0, 0, 0, 0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    curl_cv_select="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    curl_cv_select="no"
-  ])
-  #
-  if test "$curl_cv_select" = "yes"; then
-    AC_CACHE_CHECK([types of args and return type for select],
-      [curl_cv_func_select_args], [
-      curl_cv_func_select_args="unknown"
-      for sel_retv in 'int' 'ssize_t'; do
-        for sel_arg1 in 'int' 'ssize_t' 'size_t' 'unsigned long int' 'unsigned int'; do
-          for sel_arg234 in 'fd_set *' 'int *' 'void *'; do
-            for sel_arg5 in 'struct timeval *' 'const struct timeval *'; do
-              if test "$curl_cv_func_select_args" = "unknown"; then
-                AC_COMPILE_IFELSE([
-                  AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define SELECTCALLCONV PASCAL
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-#ifndef HAVE_WINDOWS_H
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define SELECTCALLCONV
-#endif
-#ifndef HAVE_STRUCT_TIMEVAL
-                    struct timeval {
-                      long tv_sec;
-                      long tv_usec;
-                    };
-#endif
-                    extern $sel_retv SELECTCALLCONV select($sel_arg1,
-                                                           $sel_arg234,
-                                                           $sel_arg234,
-                                                           $sel_arg234,
-                                                           $sel_arg5);
-                  ]],[[
-                    $sel_arg1   nfds=0;
-                    $sel_arg234 rfds=0;
-                    $sel_arg234 wfds=0;
-                    $sel_arg234 efds=0;
-                    $sel_retv res = select(nfds, rfds, wfds, efds, 0);
-                  ]])
-                ],[
-                  curl_cv_func_select_args="$sel_arg1,$sel_arg234,$sel_arg5,$sel_retv"
-                ])
-              fi
-            done
-          done
-        done
-      done
-    ]) # AC-CACHE-CHECK
-    if test "$curl_cv_func_select_args" = "unknown"; then
-      AC_MSG_WARN([Cannot find proper types to use for select args])
-      AC_MSG_WARN([HAVE_SELECT will not be defined])
-    else
-      select_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_select_args" | sed 's/\*/\*/g'`
-      IFS=$select_prev_IFS
-      shift
-      #
-      sel_qual_type_arg5=$[3]
-      #
-      AC_DEFINE_UNQUOTED(SELECT_TYPE_ARG1, $[1],
-        [Define to the type of arg 1 for select.])
-      AC_DEFINE_UNQUOTED(SELECT_TYPE_ARG234, $[2],
-        [Define to the type of args 2, 3 and 4 for select.])
-      AC_DEFINE_UNQUOTED(SELECT_TYPE_RETV, $[4],
-        [Define to the function return type for select.])
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      case "$sel_qual_type_arg5" in
-        const*)
-          sel_qual_arg5=const
-          sel_type_arg5=`echo $sel_qual_type_arg5 | sed 's/^const //'`
-        ;;
-        *)
-          sel_qual_arg5=
-          sel_type_arg5=$sel_qual_type_arg5
-        ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(SELECT_QUAL_ARG5, $sel_qual_arg5,
-        [Define to the type qualifier of arg 5 for select.])
-      AC_DEFINE_UNQUOTED(SELECT_TYPE_ARG5, $sel_type_arg5,
-        [Define to the type of arg 5 for select.])
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(HAVE_SELECT, 1,
-        [Define to 1 if you have the select function.])
-      ac_cv_func_select="yes"
-    fi
-  fi
-])
-
-dnl CURL_VERIFY_RUNTIMELIBS
-dnl -------------------------------------------------
-dnl Verify that the shared libs found so far can be used when running
-dnl programs, since otherwise the situation will create odd configure errors
-dnl that are misleading people.
-dnl
-dnl Make sure this test is run BEFORE the first test in the script that
-dnl runs anything, which at the time of this writing is the AC_CHECK_SIZEOF
-dnl macro. It must also run AFTER all lib-checking macros are complete.
-
-AC_DEFUN([CURL_VERIFY_RUNTIMELIBS], [
-
-  dnl this test is of course not sensible if we are cross-compiling!
-  if test "x$cross_compiling" != xyes; then
-
-    dnl just run a program to verify that the libs checked for previous to this
-    dnl point also is available run-time!
-    AC_MSG_CHECKING([run-time libs availability])
-    AC_TRY_RUN([
-main()
-{
-  return 0;
-}
-],
-    AC_MSG_RESULT([fine]),
-    AC_MSG_RESULT([failed])
-    AC_MSG_ERROR([one or more libs available at link-time are not available run-time. Libs used at link-time: $LIBS])
-    )
-
-    dnl if this test fails, configure has already stopped
-  fi
-])
-
-
-dnl CURL_CHECK_VARIADIC_MACROS
-dnl -------------------------------------------------
-dnl Check compiler support of variadic macros
-
-AC_DEFUN([CURL_CHECK_VARIADIC_MACROS], [
-  AC_CACHE_CHECK([for compiler support of C99 variadic macro style],
-    [curl_cv_variadic_macros_c99], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#define c99_vmacro3(first, ...) fun3(first, __VA_ARGS__)
-#define c99_vmacro2(first, ...) fun2(first, __VA_ARGS__)
-        int fun3(int arg1, int arg2, int arg3);
-        int fun2(int arg1, int arg2);
-        int fun3(int arg1, int arg2, int arg3)
-        { return arg1 + arg2 + arg3; }
-        int fun2(int arg1, int arg2)
-        { return arg1 + arg2; }
-      ]],[[
-        int res3 = c99_vmacro3(1, 2, 3);
-        int res2 = c99_vmacro2(1, 2);
-      ]])
-    ],[
-      curl_cv_variadic_macros_c99="yes"
-    ],[
-      curl_cv_variadic_macros_c99="no"
-    ])
-  ])
-  case "$curl_cv_variadic_macros_c99" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_VARIADIC_MACROS_C99, 1,
-        [Define to 1 if compiler supports C99 variadic macro style.])
-      ;;
-  esac
-  AC_CACHE_CHECK([for compiler support of old gcc variadic macro style],
-    [curl_cv_variadic_macros_gcc], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#define gcc_vmacro3(first, args...) fun3(first, args)
-#define gcc_vmacro2(first, args...) fun2(first, args)
-        int fun3(int arg1, int arg2, int arg3);
-        int fun2(int arg1, int arg2);
-        int fun3(int arg1, int arg2, int arg3)
-        { return arg1 + arg2 + arg3; }
-        int fun2(int arg1, int arg2)
-        { return arg1 + arg2; }
-      ]],[[
-        int res3 = gcc_vmacro3(1, 2, 3);
-        int res2 = gcc_vmacro2(1, 2);
-      ]])
-    ],[
-      curl_cv_variadic_macros_gcc="yes"
-    ],[
-      curl_cv_variadic_macros_gcc="no"
-    ])
-  ])
-  case "$curl_cv_variadic_macros_gcc" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_VARIADIC_MACROS_GCC, 1,
-        [Define to 1 if compiler supports old gcc variadic macro style.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_CA_BUNDLE
-dnl -------------------------------------------------
-dnl Check if a default ca-bundle should be used
-dnl
-dnl regarding the paths this will scan:
-dnl /etc/ssl/certs/ca-certificates.crt Debian systems
-dnl /etc/pki/tls/certs/ca-bundle.crt Redhat and Mandriva
-dnl /usr/share/ssl/certs/ca-bundle.crt old(er) Redhat
-dnl /usr/local/share/certs/ca-root.crt FreeBSD
-dnl /etc/ssl/cert.pem OpenBSD
-dnl /etc/ssl/certs/ (ca path) SUSE
-
-AC_DEFUN([CURL_CHECK_CA_BUNDLE], [
-
-  AC_MSG_CHECKING([default CA cert bundle/path])
-
-  AC_ARG_WITH(ca-bundle,
-AC_HELP_STRING([--with-ca-bundle=FILE], [File name to use as CA bundle])
-AC_HELP_STRING([--without-ca-bundle], [Don't use a default CA bundle]),
-  [
-    want_ca="$withval"
-    if test "x$want_ca" = "xyes"; then
-      AC_MSG_ERROR([--with-ca-bundle=FILE requires a path to the CA bundle])
-    fi
-  ],
-  [ want_ca="unset" ])
-  AC_ARG_WITH(ca-path,
-AC_HELP_STRING([--with-ca-path=DIRECTORY], [Directory to use as CA path])
-AC_HELP_STRING([--without-ca-path], [Don't use a default CA path]),
-  [
-    want_capath="$withval"
-    if test "x$want_capath" = "xyes"; then
-      AC_MSG_ERROR([--with-ca-path=DIRECTORY requires a path to the CA path directory])
-    fi
-  ],
-  [ want_capath="unset"])
-
-  if test "x$want_ca" != "xno" -a "x$want_ca" != "xunset" -a \
-          "x$want_capath" != "xno" -a "x$want_capath" != "xunset"; then
-    dnl both given
-    AC_MSG_ERROR([Can't specify both --with-ca-bundle and --with-ca-path.])
-  elif test "x$want_ca" != "xno" -a "x$want_ca" != "xunset"; then
-    dnl --with-ca-bundle given
-    ca="$want_ca"
-    capath="no"
-  elif test "x$want_capath" != "xno" -a "x$want_capath" != "xunset"; then
-    dnl --with-ca-path given
-    if test "x$OPENSSL_ENABLED" != "x1"; then
-      AC_MSG_ERROR([--with-ca-path only works with openSSL])
-    fi
-    capath="$want_capath"
-    ca="no"
-  else
-    dnl neither of --with-ca-* given
-    dnl first try autodetecting a CA bundle , then a CA path
-    dnl both autodetections can be skipped by --without-ca-*
-    ca="no"
-    capath="no"
-    if test "x$want_ca" = "xunset"; then
-      dnl the path we previously would have installed the curl ca bundle
-      dnl to, and thus we now check for an already existing cert in that place
-      dnl in case we find no other
-      if test "x$prefix" != xNONE; then
-        cac="${prefix}/share/curl/curl-ca-bundle.crt"
-      else
-        cac="$ac_default_prefix/share/curl/curl-ca-bundle.crt"
-      fi
-
-      for a in /etc/ssl/certs/ca-certificates.crt \
-               /etc/pki/tls/certs/ca-bundle.crt \
-               /usr/share/ssl/certs/ca-bundle.crt \
-               /usr/local/share/certs/ca-root.crt \
-               /etc/ssl/cert.pem \
-               "$cac"; do
-        if test -f "$a"; then
-          ca="$a"
-          break
-        fi
-      done
-    fi
-    if test "x$want_capath" = "xunset" -a "x$ca" = "xno" -a \
-            "x$OPENSSL_ENABLED" = "x1"; then
-      for a in /etc/ssl/certs/; do
-        if test -d "$a" && ls "$a"/[[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]].0 >/dev/null 2>/dev/null; then
-          capath="$a"
-          break
-        fi
-      done
-    fi
-  fi
-
-
-
-  if test "x$ca" != "xno"; then
-    CURL_CA_BUNDLE='"'$ca'"'
-    AC_DEFINE_UNQUOTED(CURL_CA_BUNDLE, "$ca", [Location of default ca bundle])
-    AC_SUBST(CURL_CA_BUNDLE)
-    AC_MSG_RESULT([$ca])
-  elif test "x$capath" != "xno"; then
-    CURL_CA_PATH="\"$capath\""
-    AC_DEFINE_UNQUOTED(CURL_CA_PATH, "$capath", [Location of default ca path])
-    AC_MSG_RESULT([$capath (capath)])
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl DO_CURL_OFF_T_CHECK (TYPE, SIZE)
-dnl -------------------------------------------------
-dnl Internal macro for CURL_CONFIGURE_CURL_OFF_T
-
-AC_DEFUN([DO_CURL_OFF_T_CHECK], [
-  AC_REQUIRE([CURL_INCLUDES_INTTYPES])dnl
-  if test "$curl_typeof_curl_off_t" = "unknown" && test ! -z "$1"; then
-    tmp_includes=""
-    tmp_source=""
-    tmp_fmt=""
-    case AS_TR_SH([$1]) in
-      int64_t)
-        tmp_includes="$curl_includes_inttypes"
-        tmp_source="char f@<:@@:>@ = PRId64;"
-        tmp_fmt="PRId64"
-        ;;
-      int32_t)
-        tmp_includes="$curl_includes_inttypes"
-        tmp_source="char f@<:@@:>@ = PRId32;"
-        tmp_fmt="PRId32"
-        ;;
-      int16_t)
-        tmp_includes="$curl_includes_inttypes"
-        tmp_source="char f@<:@@:>@ = PRId16;"
-        tmp_fmt="PRId16"
-        ;;
-    esac
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $tmp_includes
-        typedef $1 curl_off_t;
-        typedef char dummy_arr[sizeof(curl_off_t) == $2 ? 1 : -1];
-      ]],[[
-        $tmp_source
-        curl_off_t dummy;
-      ]])
-    ],[
-      if test -z "$tmp_fmt"; then
-        curl_typeof_curl_off_t="$1"
-        curl_sizeof_curl_off_t="$2"
-      else
-        CURL_CHECK_DEF([$tmp_fmt], [$curl_includes_inttypes], [silent])
-        AS_VAR_PUSHDEF([tmp_HaveFmtDef], [curl_cv_have_def_$tmp_fmt])dnl
-        AS_VAR_PUSHDEF([tmp_FmtDef], [curl_cv_def_$tmp_fmt])dnl
-        if test AS_VAR_GET(tmp_HaveFmtDef) = "yes"; then
-          curl_format_curl_off_t=AS_VAR_GET(tmp_FmtDef)
-          curl_typeof_curl_off_t="$1"
-          curl_sizeof_curl_off_t="$2"
-        fi
-        AS_VAR_POPDEF([tmp_FmtDef])dnl
-        AS_VAR_POPDEF([tmp_HaveFmtDef])dnl
-      fi
-    ])
-  fi
-])
-
-
-dnl DO_CURL_OFF_T_SUFFIX_CHECK (TYPE)
-dnl -------------------------------------------------
-dnl Internal macro for CURL_CONFIGURE_CURL_OFF_T
-
-AC_DEFUN([DO_CURL_OFF_T_SUFFIX_CHECK], [
-  AC_REQUIRE([CURL_INCLUDES_INTTYPES])dnl
-  AC_MSG_CHECKING([constant suffix string for curl_off_t])
-  #
-  curl_suffix_curl_off_t="unknown"
-  curl_suffix_curl_off_tu="unknown"
-  #
-  case AS_TR_SH([$1]) in
-    long_long | __longlong | __longlong_t)
-      tst_suffixes="LL::"
-      ;;
-    long)
-      tst_suffixes="L::"
-      ;;
-    int)
-      tst_suffixes="::"
-      ;;
-    __int64 | int64_t)
-      tst_suffixes="LL:i64::"
-      ;;
-    __int32 | int32_t)
-      tst_suffixes="L:i32::"
-      ;;
-    __int16 | int16_t)
-      tst_suffixes="L:i16::"
-      ;;
-    *)
-      AC_MSG_ERROR([unexpected data type $1])
-      ;;
-  esac
-  #
-  old_IFS=$IFS; IFS=':'
-  for tmp_ssuf in $tst_suffixes ; do
-    IFS=$old_IFS
-    if test "x$curl_suffix_curl_off_t" = "xunknown"; then
-      case $tmp_ssuf in
-        i64 | i32 | i16)
-          tmp_usuf="u$tmp_ssuf"
-          ;;
-        LL | L)
-          tmp_usuf="U$tmp_ssuf"
-          ;;
-        *)
-          tmp_usuf=""
-          ;;
-      esac
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_inttypes
-          typedef $1 new_t;
-        ]],[[
-          new_t s1;
-          new_t s2;
-          s1 = -10$tmp_ssuf ;
-          s2 =  20$tmp_ssuf ;
-          if(s1 > s2)
-            return 1;
-        ]])
-      ],[
-        curl_suffix_curl_off_t="$tmp_ssuf"
-        curl_suffix_curl_off_tu="$tmp_usuf"
-      ])
-    fi
-  done
-  IFS=$old_IFS
-  #
-  if test "x$curl_suffix_curl_off_t" = "xunknown"; then
-    AC_MSG_ERROR([cannot find constant suffix string for curl_off_t.])
-  else
-    AC_MSG_RESULT([$curl_suffix_curl_off_t])
-    AC_MSG_CHECKING([constant suffix string for unsigned curl_off_t])
-    AC_MSG_RESULT([$curl_suffix_curl_off_tu])
-  fi
-  #
-])
-
-
-dnl CURL_CONFIGURE_CURL_OFF_T
-dnl -------------------------------------------------
-dnl Find out suitable curl_off_t data type definition and associated
-dnl items, and make the appropriate definitions used in template file
-dnl include/curl/curlbuild.h.in to properly configure the library.
-
-AC_DEFUN([CURL_CONFIGURE_CURL_OFF_T], [
-  AC_REQUIRE([CURL_INCLUDES_INTTYPES])dnl
-  #
-  AC_BEFORE([$0],[AC_SYS_LARGEFILE])dnl
-  AC_BEFORE([$0],[CURL_CONFIGURE_REENTRANT])dnl
-  AC_BEFORE([$0],[CURL_CHECK_AIX_ALL_SOURCE])dnl
-  #
-  if test -z "$SED"; then
-    AC_MSG_ERROR([SED not set. Cannot continue without SED being set.])
-  fi
-  #
-  AC_CHECK_SIZEOF(long)
-  AC_CHECK_SIZEOF(void*)
-  #
-  if test -z "$ac_cv_sizeof_long" ||
-    test "$ac_cv_sizeof_long" -eq "0"; then
-    AC_MSG_ERROR([cannot find out size of long.])
-  fi
-  if test -z "$ac_cv_sizeof_voidp" ||
-     test "$ac_cv_sizeof_voidp" -eq "0"; then
-    AC_MSG_ERROR([cannot find out size of void*.])
-  fi
-  #
-  x_LP64_long=""
-  x_LP32_long=""
-  x_LP16_long=""
-  #
-  if test "$ac_cv_sizeof_long" -eq "8" &&
-     test "$ac_cv_sizeof_voidp" -ge "8"; then
-    x_LP64_long="long"
-  elif test "$ac_cv_sizeof_long" -eq "4" &&
-       test "$ac_cv_sizeof_voidp" -ge "4"; then
-    x_LP32_long="long"
-  elif test "$ac_cv_sizeof_long" -eq "2" &&
-       test "$ac_cv_sizeof_voidp" -ge "2"; then
-    x_LP16_long="long"
-  fi
-  #
-  dnl DO_CURL_OFF_T_CHECK results are stored in next 3 vars
-  #
-  curl_typeof_curl_off_t="unknown"
-  curl_sizeof_curl_off_t="unknown"
-  curl_format_curl_off_t="unknown"
-  curl_format_curl_off_tu="unknown"
-  #
-  if test "$curl_typeof_curl_off_t" = "unknown"; then
-    AC_MSG_CHECKING([for 64-bit curl_off_t data type])
-    for t8 in          \
-      "$x_LP64_long"   \
-      'int64_t'        \
-      '__int64'        \
-      'long long'      \
-      '__longlong'     \
-      '__longlong_t'   ; do
-      DO_CURL_OFF_T_CHECK([$t8], [8])
-    done
-    AC_MSG_RESULT([$curl_typeof_curl_off_t])
-  fi
-  if test "$curl_typeof_curl_off_t" = "unknown"; then
-    AC_MSG_CHECKING([for 32-bit curl_off_t data type])
-    for t4 in          \
-      "$x_LP32_long"   \
-      'int32_t'        \
-      '__int32'        \
-      'int'            ; do
-      DO_CURL_OFF_T_CHECK([$t4], [4])
-    done
-    AC_MSG_RESULT([$curl_typeof_curl_off_t])
-  fi
-  if test "$curl_typeof_curl_off_t" = "unknown"; then
-    AC_MSG_CHECKING([for 16-bit curl_off_t data type])
-    for t2 in          \
-      "$x_LP16_long"   \
-      'int16_t'        \
-      '__int16'        \
-      'int'            ; do
-      DO_CURL_OFF_T_CHECK([$t2], [2])
-    done
-    AC_MSG_RESULT([$curl_typeof_curl_off_t])
-  fi
-  if test "$curl_typeof_curl_off_t" = "unknown"; then
-    AC_MSG_ERROR([cannot find data type for curl_off_t.])
-  fi
-  #
-  AC_MSG_CHECKING([size of curl_off_t])
-  AC_MSG_RESULT([$curl_sizeof_curl_off_t])
-  #
-  AC_MSG_CHECKING([formatting string directive for curl_off_t])
-  if test "$curl_format_curl_off_t" != "unknown"; then
-    x_pull_headers="yes"
-    curl_format_curl_off_t=`echo "$curl_format_curl_off_t" | "$SED" 's/[["]]//g'`
-    curl_format_curl_off_tu=`echo "$curl_format_curl_off_t" | "$SED" 's/i$/u/'`
-    curl_format_curl_off_tu=`echo "$curl_format_curl_off_tu" | "$SED" 's/d$/u/'`
-    curl_format_curl_off_tu=`echo "$curl_format_curl_off_tu" | "$SED" 's/D$/U/'`
-  else
-    x_pull_headers="no"
-    case AS_TR_SH([$curl_typeof_curl_off_t]) in
-      long_long | __longlong | __longlong_t)
-        curl_format_curl_off_t="lld"
-        curl_format_curl_off_tu="llu"
-        ;;
-      long)
-        curl_format_curl_off_t="ld"
-        curl_format_curl_off_tu="lu"
-        ;;
-      int)
-        curl_format_curl_off_t="d"
-        curl_format_curl_off_tu="u"
-        ;;
-      __int64)
-        curl_format_curl_off_t="I64d"
-        curl_format_curl_off_tu="I64u"
-        ;;
-      __int32)
-        curl_format_curl_off_t="I32d"
-        curl_format_curl_off_tu="I32u"
-        ;;
-      __int16)
-        curl_format_curl_off_t="I16d"
-        curl_format_curl_off_tu="I16u"
-        ;;
-      *)
-        AC_MSG_ERROR([cannot find print format string for curl_off_t.])
-        ;;
-    esac
-  fi
-  AC_MSG_RESULT(["$curl_format_curl_off_t"])
-  #
-  AC_MSG_CHECKING([formatting string directive for unsigned curl_off_t])
-  AC_MSG_RESULT(["$curl_format_curl_off_tu"])
-  #
-  DO_CURL_OFF_T_SUFFIX_CHECK([$curl_typeof_curl_off_t])
-  #
-  if test "$x_pull_headers" = "yes"; then
-    if test "x$ac_cv_header_sys_types_h" = "xyes"; then
-      CURL_DEFINE_UNQUOTED([CURL_PULL_SYS_TYPES_H])
-    fi
-    if test "x$ac_cv_header_stdint_h" = "xyes"; then
-      CURL_DEFINE_UNQUOTED([CURL_PULL_STDINT_H])
-    fi
-    if test "x$ac_cv_header_inttypes_h" = "xyes"; then
-      CURL_DEFINE_UNQUOTED([CURL_PULL_INTTYPES_H])
-    fi
-  fi
-  #
-  CURL_DEFINE_UNQUOTED([CURL_TYPEOF_CURL_OFF_T], [$curl_typeof_curl_off_t])
-  CURL_DEFINE_UNQUOTED([CURL_FORMAT_CURL_OFF_T], ["$curl_format_curl_off_t"])
-  CURL_DEFINE_UNQUOTED([CURL_FORMAT_CURL_OFF_TU], ["$curl_format_curl_off_tu"])
-  CURL_DEFINE_UNQUOTED([CURL_FORMAT_OFF_T], ["%$curl_format_curl_off_t"])
-  CURL_DEFINE_UNQUOTED([CURL_SIZEOF_CURL_OFF_T], [$curl_sizeof_curl_off_t])
-  CURL_DEFINE_UNQUOTED([CURL_SUFFIX_CURL_OFF_T], [$curl_suffix_curl_off_t])
-  CURL_DEFINE_UNQUOTED([CURL_SUFFIX_CURL_OFF_TU], [$curl_suffix_curl_off_tu])
-  #
-])
-
-
-dnl CURL_CHECK_WIN32_LARGEFILE
-dnl -------------------------------------------------
-dnl Check if curl's WIN32 large file will be used
-
-AC_DEFUN([CURL_CHECK_WIN32_LARGEFILE], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_MSG_CHECKING([whether build target supports WIN32 file API])
-  curl_win32_file_api="no"
-  if test "$ac_cv_header_windows_h" = "yes"; then
-    if test x"$enable_largefile" != "xno"; then
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-        ]],[[
-#if !defined(_WIN32_WCE) && \
-    (defined(__MINGW32__) || \
-    (defined(_MSC_VER) && (defined(_WIN32) || defined(_WIN64))))
-          int dummy=1;
-#else
-          WIN32 large file API not supported.
-#endif
-        ]])
-      ],[
-        curl_win32_file_api="win32_large_files"
-      ])
-    fi
-    if test "$curl_win32_file_api" = "no"; then
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-        ]],[[
-#if defined(_WIN32_WCE) || defined(__MINGW32__) || defined(_MSC_VER)
-          int dummy=1;
-#else
-          WIN32 small file API not supported.
-#endif
-        ]])
-      ],[
-        curl_win32_file_api="win32_small_files"
-      ])
-    fi
-  fi
-  case "$curl_win32_file_api" in
-    win32_large_files)
-      AC_MSG_RESULT([yes (large file enabled)])
-      AC_DEFINE_UNQUOTED(USE_WIN32_LARGE_FILES, 1,
-        [Define to 1 if you are building a Windows target with large file support.])
-      ;;
-    win32_small_files)
-      AC_MSG_RESULT([yes (large file disabled)])
-      AC_DEFINE_UNQUOTED(USE_WIN32_LARGE_FILES, 1,
-        [Define to 1 if you are building a Windows target without large file support.])
-      ;;
-    *)
-      AC_MSG_RESULT([no])
-      ;;
-  esac
-])
-
-dnl CURL_EXPORT_PCDIR ($pcdir)
-dnl ------------------------
-dnl if $pcdir is not empty, set PKG_CONFIG_LIBDIR to $pcdir and export
-dnl
-dnl we need this macro since pkg-config distinguishes among empty and unset
-dnl variable while checking PKG_CONFIG_LIBDIR
-dnl
-
-AC_DEFUN([CURL_EXPORT_PCDIR], [
-    if test -n "$1"; then
-      PKG_CONFIG_LIBDIR="$1"
-      export PKG_CONFIG_LIBDIR
-    fi
-])
-
-dnl CURL_CHECK_PKGCONFIG ($module, [$pcdir])
-dnl ------------------------
-dnl search for the pkg-config tool (if not cross-compiling). Set the PKGCONFIG
-dnl variable to hold the path to it, or 'no' if not found/present.
-dnl
-dnl If pkg-config is present, check that it has info about the $module or
-dnl return "no" anyway!
-dnl
-dnl Optionally PKG_CONFIG_LIBDIR may be given as $pcdir.
-dnl
-
-AC_DEFUN([CURL_CHECK_PKGCONFIG], [
-
-    PKGCONFIG="no"
-
-    if test x$cross_compiling = xyes; then
-      dnl see if there's a pkg-specific for this host setup
-      AC_PATH_PROG( PKGCONFIG, ${host}-pkg-config, no,
-                    $PATH:/usr/bin:/usr/local/bin)
-    fi
-
-    if test x$PKGCONFIG = xno; then
-      AC_PATH_PROG( PKGCONFIG, pkg-config, no, $PATH:/usr/bin:/usr/local/bin)
-    fi
-
-    if test x$PKGCONFIG != xno; then
-      AC_MSG_CHECKING([for $1 options with pkg-config])
-      dnl ask pkg-config about $1
-      itexists=`CURL_EXPORT_PCDIR([$2]) dnl
-        $PKGCONFIG --exists $1 >/dev/null 2>&1 && echo 1`
-
-      if test -z "$itexists"; then
-        dnl pkg-config does not have info about the given module! set the
-        dnl variable to 'no'
-        PKGCONFIG="no"
-        AC_MSG_RESULT([no])
-      else
-        AC_MSG_RESULT([found])
-      fi
-    fi
-])
diff --git a/src/other/curl/aclocal.m4 b/src/other/curl/aclocal.m4
deleted file mode 100644
index 2035d80..0000000
--- a/src/other/curl/aclocal.m4
+++ /dev/null
@@ -1,1015 +0,0 @@
-# generated automatically by aclocal 1.11.1 -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2007, 2008, 2009  Free Software Foundation, Inc.
-# This file 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.
-
-m4_ifndef([AC_AUTOCONF_VERSION],
-  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],,
-[m4_warning([this file was generated for autoconf 2.68.
-You have another version of autoconf.  It may work, but is not guaranteed to.
-If you have problems, you may need to regenerate the build system entirely.
-To do so, use the procedure documented by the package, typically `autoreconf'.])])
-
-# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# AM_AUTOMAKE_VERSION(VERSION)
-# ----------------------------
-# Automake X.Y traces this macro to ensure aclocal.m4 has been
-# generated from the m4 files accompanying Automake X.Y.
-# (This private macro should not be called outside this file.)
-AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.11'
-dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
-dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.11.1], [],
-      [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
-])
-
-# _AM_AUTOCONF_VERSION(VERSION)
-# -----------------------------
-# aclocal traces this macro to find the Autoconf version.
-# This is a private macro too.  Using m4_define simplifies
-# the logic in aclocal, which can simply ignore this definition.
-m4_define([_AM_AUTOCONF_VERSION], [])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
-# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.11.1])dnl
-m4_ifndef([AC_AUTOCONF_VERSION],
-  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
-
-# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
-
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
-# $ac_aux_dir to `$srcdir/foo'.  In other projects, it is set to
-# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
-#
-# Of course, Automake must honor this variable whenever it calls a
-# tool from the auxiliary directory.  The problem is that $srcdir (and
-# therefore $ac_aux_dir as well) can be either absolute or relative,
-# depending on how configure is run.  This is pretty annoying, since
-# it makes $ac_aux_dir quite unusable in subdirectories: in the top
-# source directory, any form will work fine, but in subdirectories a
-# relative path needs to be adjusted first.
-#
-# $ac_aux_dir/missing
-#    fails when called from a subdirectory if $ac_aux_dir is relative
-# $top_srcdir/$ac_aux_dir/missing
-#    fails if $ac_aux_dir is absolute,
-#    fails when called from a subdirectory in a VPATH build with
-#          a relative $ac_aux_dir
-#
-# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
-# are both prefixed by $srcdir.  In an in-source build this is usually
-# harmless because $srcdir is `.', but things will broke when you
-# start a VPATH build or use an absolute $srcdir.
-#
-# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
-# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:
-#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
-# and then we would define $MISSING as
-#   MISSING="\${SHELL} $am_aux_dir/missing"
-# This will work as long as MISSING is not called from configure, because
-# unfortunately $(top_srcdir) has no meaning in configure.
-# However there are other variables, like CC, which are often used in
-# configure, and could therefore not use this "fixed" $ac_aux_dir.
-#
-# Another solution, used here, is to always expand $ac_aux_dir to an
-# absolute PATH.  The drawback is that using absolute paths prevent a
-# configured tree to be moved without reconfiguration.
-
-AC_DEFUN([AM_AUX_DIR_EXPAND],
-[dnl Rely on autoconf to set up CDPATH properly.
-AC_PREREQ([2.50])dnl
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-])
-
-# AM_CONDITIONAL                                            -*- Autoconf -*-
-
-# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 9
-
-# AM_CONDITIONAL(NAME, SHELL-CONDITION)
-# -------------------------------------
-# Define a conditional.
-AC_DEFUN([AM_CONDITIONAL],
-[AC_PREREQ(2.52)dnl
- ifelse([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
-	[$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
-AC_SUBST([$1_TRUE])dnl
-AC_SUBST([$1_FALSE])dnl
-_AM_SUBST_NOTMAKE([$1_TRUE])dnl
-_AM_SUBST_NOTMAKE([$1_FALSE])dnl
-m4_define([_AM_COND_VALUE_$1], [$2])dnl
-if $2; then
-  $1_TRUE=
-  $1_FALSE='#'
-else
-  $1_TRUE='#'
-  $1_FALSE=
-fi
-AC_CONFIG_COMMANDS_PRE(
-[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
-  AC_MSG_ERROR([[conditional "$1" was never defined.
-Usually this means the macro was only invoked conditionally.]])
-fi])])
-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 10
-
-# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
-# written in clear, in which case automake, when reading aclocal.m4,
-# will think it sees a *use*, and therefore will trigger all it's
-# C support machinery.  Also note that it means that autoscan, seeing
-# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
-
-
-# _AM_DEPENDENCIES(NAME)
-# ----------------------
-# See how the compiler implements dependency checking.
-# NAME is "CC", "CXX", "GCJ", or "OBJC".
-# We try a few techniques and use that to set a single cache variable.
-#
-# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
-# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
-# dependency, and given that the user is not expected to run this macro,
-# just rely on AC_PROG_CC.
-AC_DEFUN([_AM_DEPENDENCIES],
-[AC_REQUIRE([AM_SET_DEPDIR])dnl
-AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
-AC_REQUIRE([AM_MAKE_INCLUDE])dnl
-AC_REQUIRE([AM_DEP_TRACK])dnl
-
-ifelse([$1], CC,   [depcc="$CC"   am_compiler_list=],
-       [$1], CXX,  [depcc="$CXX"  am_compiler_list=],
-       [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
-       [$1], UPC,  [depcc="$UPC"  am_compiler_list=],
-       [$1], GCJ,  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
-                   [depcc="$$1"   am_compiler_list=])
-
-AC_CACHE_CHECK([dependency style of $depcc],
-               [am_cv_$1_dependencies_compiler_type],
-[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
-  # We make a subdir and do the tests there.  Otherwise we can end up
-  # making bogus files that we don't know about and never remove.  For
-  # instance it was reported that on HP-UX the gcc test will end up
-  # making a dummy file named `D' -- because `-MD' means `put the output
-  # in D'.
-  mkdir conftest.dir
-  # Copy depcomp to subdir because otherwise we won't find it if we're
-  # using a relative directory.
-  cp "$am_depcomp" conftest.dir
-  cd conftest.dir
-  # We will build objects and dependencies in a subdirectory because
-  # it helps to detect inapplicable dependency modes.  For instance
-  # both Tru64's cc and ICC support -MD to output dependencies as a
-  # side effect of compilation, but ICC will put the dependencies in
-  # the current directory while Tru64 will put them in the object
-  # directory.
-  mkdir sub
-
-  am_cv_$1_dependencies_compiler_type=none
-  if test "$am_compiler_list" = ""; then
-     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
-  fi
-  am__universal=false
-  m4_case([$1], [CC],
-    [case " $depcc " in #(
-     *\ -arch\ *\ -arch\ *) am__universal=true ;;
-     esac],
-    [CXX],
-    [case " $depcc " in #(
-     *\ -arch\ *\ -arch\ *) am__universal=true ;;
-     esac])
-
-  for depmode in $am_compiler_list; do
-    # Setup a source with many dependencies, because some compilers
-    # like to wrap large dependency lists on column 80 (with \), and
-    # we should not choose a depcomp mode which is confused by this.
-    #
-    # We need to recreate these files for each test, as the compiler may
-    # overwrite some of them when testing with obscure command lines.
-    # This happens at least with the AIX C compiler.
-    : > sub/conftest.c
-    for i in 1 2 3 4 5 6; do
-      echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
-      # Solaris 8's {/usr,}/bin/sh.
-      touch sub/conftst$i.h
-    done
-    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
-    # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.  Also, some Intel
-    # versions had trouble with output in subdirs
-    am__obj=sub/conftest.${OBJEXT-o}
-    am__minus_obj="-o $am__obj"
-    case $depmode in
-    gcc)
-      # This depmode causes a compiler race in universal mode.
-      test "$am__universal" = false || continue
-      ;;
-    nosideeffect)
-      # after this tag, mechanisms are not by side-effect, so they'll
-      # only be used when explicitly requested
-      if test "x$enable_dependency_tracking" = xyes; then
-	continue
-      else
-	break
-      fi
-      ;;
-    msvisualcpp | msvcmsys)
-      # This compiler won't grok `-c -o', but also, the minuso test has
-      # not run yet.  These depmodes are late enough in the game, and
-      # so weak that their functioning should not be impacted.
-      am__obj=conftest.${OBJEXT-o}
-      am__minus_obj=
-      ;;
-    none) break ;;
-    esac
-    if depmode=$depmode \
-       source=sub/conftest.c object=$am__obj \
-       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
-         >/dev/null 2>conftest.err &&
-       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
-       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
-      # icc doesn't choke on unknown options, it will just issue warnings
-      # or remarks (even with -Werror).  So we grep stderr for any message
-      # that says an option was ignored or not supported.
-      # When given -MP, icc 7.0 and 7.1 complain thusly:
-      #   icc: Command line warning: ignoring option '-M'; no argument required
-      # The diagnosis changed in icc 8.0:
-      #   icc: Command line remark: option '-MP' not supported
-      if (grep 'ignoring option' conftest.err ||
-          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
-        am_cv_$1_dependencies_compiler_type=$depmode
-        break
-      fi
-    fi
-  done
-
-  cd ..
-  rm -rf conftest.dir
-else
-  am_cv_$1_dependencies_compiler_type=none
-fi
-])
-AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
-AM_CONDITIONAL([am__fastdep$1], [
-  test "x$enable_dependency_tracking" != xno \
-  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
-])
-
-
-# AM_SET_DEPDIR
-# -------------
-# Choose a directory name for dependency files.
-# This macro is AC_REQUIREd in _AM_DEPENDENCIES
-AC_DEFUN([AM_SET_DEPDIR],
-[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
-])
-
-
-# AM_DEP_TRACK
-# ------------
-AC_DEFUN([AM_DEP_TRACK],
-[AC_ARG_ENABLE(dependency-tracking,
-[  --disable-dependency-tracking  speeds up one-time build
-  --enable-dependency-tracking   do not reject slow dependency extractors])
-if test "x$enable_dependency_tracking" != xno; then
-  am_depcomp="$ac_aux_dir/depcomp"
-  AMDEPBACKSLASH='\'
-fi
-AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
-AC_SUBST([AMDEPBACKSLASH])dnl
-_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
-])
-
-# Generate code to set up dependency tracking.              -*- Autoconf -*-
-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-#serial 5
-
-# _AM_OUTPUT_DEPENDENCY_COMMANDS
-# ------------------------------
-AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
-[{
-  # Autoconf 2.62 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.
-  case $CONFIG_FILES in
-  *\'*) eval set x "$CONFIG_FILES" ;;
-  *)   set x $CONFIG_FILES ;;
-  esac
-  shift
-  for mf
-  do
-    # Strip MF so we end up with the name of the file.
-    mf=`echo "$mf" | sed -e 's/:.*$//'`
-    # Check whether this is an Automake generated Makefile or not.
-    # We used to match only the files named `Makefile.in', but
-    # some people rename them; so instead we look at the file content.
-    # Grep'ing the first line is not enough: some people post-process
-    # each Makefile.in and add a new line on top of each file to say so.
-    # Grep'ing the whole file is not good either: AIX grep has a line
-    # limit of 2048, but all sed's we know have understand at least 4000.
-    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
-      dirpart=`AS_DIRNAME("$mf")`
-    else
-      continue
-    fi
-    # Extract the definition of DEPDIR, am__include, and am__quote
-    # from the Makefile without running `make'.
-    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
-    test -z "$DEPDIR" && continue
-    am__include=`sed -n 's/^am__include = //p' < "$mf"`
-    test -z "am__include" && continue
-    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-    # When using ansi2knr, U may be empty or an underscore; expand it
-    U=`sed -n 's/^U = //p' < "$mf"`
-    # Find all dependency output files, they are included files with
-    # $(DEPDIR) in their names.  We invoke sed twice because it is the
-    # simplest approach to changing $(DEPDIR) to its actual value in the
-    # expansion.
-    for file in `sed -n "
-      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
-      # Make sure the directory exists.
-      test -f "$dirpart/$file" && continue
-      fdir=`AS_DIRNAME(["$file"])`
-      AS_MKDIR_P([$dirpart/$fdir])
-      # echo "creating $dirpart/$file"
-      echo '# dummy' > "$dirpart/$file"
-    done
-  done
-}
-])# _AM_OUTPUT_DEPENDENCY_COMMANDS
-
-
-# AM_OUTPUT_DEPENDENCY_COMMANDS
-# -----------------------------
-# This macro should only be invoked once -- use via AC_REQUIRE.
-#
-# This code is only required when automatic dependency tracking
-# is enabled.  FIXME.  This creates each `.P' file that we will
-# need in order to bootstrap the dependency handling code.
-AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
-[AC_CONFIG_COMMANDS([depfiles],
-     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
-     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
-])
-
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 8
-
-# AM_CONFIG_HEADER is obsolete.  It has been replaced by AC_CONFIG_HEADERS.
-AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
-
-# Do all the work for Automake.                             -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 16
-
-# This macro actually does too much.  Some checks are only needed if
-# your package does certain things.  But this isn't really a big deal.
-
-# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
-# AM_INIT_AUTOMAKE([OPTIONS])
-# -----------------------------------------------
-# The call with PACKAGE and VERSION arguments is the old style
-# call (pre autoconf-2.50), which is being phased out.  PACKAGE
-# and VERSION should now be passed to AC_INIT and removed from
-# the call to AM_INIT_AUTOMAKE.
-# We support both call styles for the transition.  After
-# the next Automake release, Autoconf can make the AC_INIT
-# arguments mandatory, and then we can depend on a new Autoconf
-# release and drop the old call support.
-AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.62])dnl
-dnl Autoconf wants to disallow AM_ names.  We explicitly allow
-dnl the ones we care about.
-m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
-AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])dnl
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
-  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
-  # is not polluted with repeated "-I."
-  AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
-  # test to see if srcdir already configured
-  if test -f $srcdir/config.status; then
-    AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
-  fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
-  if (cygpath --version) >/dev/null 2>/dev/null; then
-    CYGPATH_W='cygpath -w'
-  else
-    CYGPATH_W=echo
-  fi
-fi
-AC_SUBST([CYGPATH_W])
-
-# Define the identity of the package.
-dnl Distinguish between old-style and new-style calls.
-m4_ifval([$2],
-[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
- AC_SUBST([PACKAGE], [$1])dnl
- AC_SUBST([VERSION], [$2])],
-[_AM_SET_OPTIONS([$1])dnl
-dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
-m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
-  [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
-
-_AM_IF_OPTION([no-define],,
-[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
- AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
-
-# Some tools Automake needs.
-AC_REQUIRE([AM_SANITY_CHECK])dnl
-AC_REQUIRE([AC_ARG_PROGRAM])dnl
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
-AM_MISSING_PROG(AUTOCONF, autoconf)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
-AM_MISSING_PROG(AUTOHEADER, autoheader)
-AM_MISSING_PROG(MAKEINFO, makeinfo)
-AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
-AC_REQUIRE([AM_PROG_MKDIR_P])dnl
-# We need awk for the "check" target.  The system "awk" is bad on
-# some platforms.
-AC_REQUIRE([AC_PROG_AWK])dnl
-AC_REQUIRE([AC_PROG_MAKE_SET])dnl
-AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
-	      [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
-			     [_AM_PROG_TAR([v7])])])
-_AM_IF_OPTION([no-dependencies],,
-[AC_PROVIDE_IFELSE([AC_PROG_CC],
-		  [_AM_DEPENDENCIES(CC)],
-		  [define([AC_PROG_CC],
-			  defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_CXX],
-		  [_AM_DEPENDENCIES(CXX)],
-		  [define([AC_PROG_CXX],
-			  defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_OBJC],
-		  [_AM_DEPENDENCIES(OBJC)],
-		  [define([AC_PROG_OBJC],
-			  defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
-])
-_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
-dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
-dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This macro
-dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
-AC_CONFIG_COMMANDS_PRE(dnl
-[m4_provide_if([_AM_COMPILER_EXEEXT],
-  [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
-])
-
-dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
-dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
-dnl mangled by Autoconf and run in a shell conditional statement.
-m4_define([_AC_COMPILER_EXEEXT],
-m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
-
-
-# When config.status generates a header, we must update the stamp-h file.
-# This file resides in the same directory as the config header
-# that is generated.  The stamp files are numbered to have different names.
-
-# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
-# loop where config.status creates the headers, so we can generate
-# our stamp files there.
-AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
-[# Compute $1's index in $config_headers.
-_am_arg=$1
-_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"])`/stamp-h[]$_am_stamp_count])
-
-# Copyright (C) 2001, 2003, 2005, 2008  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# AM_PROG_INSTALL_SH
-# ------------------
-# Define $install_sh.
-AC_DEFUN([AM_PROG_INSTALL_SH],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\	*)
-    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
-  *)
-    install_sh="\${SHELL} $am_aux_dir/install-sh"
-  esac
-fi
-AC_SUBST(install_sh)])
-
-# Copyright (C) 2003, 2005  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 2
-
-# Check whether the underlying file-system supports filenames
-# with a leading dot.  For instance MS-DOS doesn't.
-AC_DEFUN([AM_SET_LEADING_DOT],
-[rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
-  am__leading_dot=.
-else
-  am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-AC_SUBST([am__leading_dot])])
-
-# Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
-# From Jim Meyering
-
-# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 5
-
-# AM_MAINTAINER_MODE([DEFAULT-MODE])
-# ----------------------------------
-# Control maintainer-specific portions of Makefiles.
-# Default is to disable them, unless `enable' is passed literally.
-# For symmetry, `disable' may be passed as well.  Anyway, the user
-# can override the default with the --enable/--disable switch.
-AC_DEFUN([AM_MAINTAINER_MODE],
-[m4_case(m4_default([$1], [disable]),
-       [enable], [m4_define([am_maintainer_other], [disable])],
-       [disable], [m4_define([am_maintainer_other], [enable])],
-       [m4_define([am_maintainer_other], [enable])
-        m4_warn([syntax], [unexpected argument to AM@&t at _MAINTAINER_MODE: $1])])
-AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles])
-  dnl maintainer-mode's default is 'disable' unless 'enable' is passed
-  AC_ARG_ENABLE([maintainer-mode],
-[  --][am_maintainer_other][-maintainer-mode  am_maintainer_other make rules and dependencies not useful
-			  (and sometimes confusing) to the casual installer],
-      [USE_MAINTAINER_MODE=$enableval],
-      [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
-  AC_MSG_RESULT([$USE_MAINTAINER_MODE])
-  AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
-  MAINT=$MAINTAINER_MODE_TRUE
-  AC_SUBST([MAINT])dnl
-]
-)
-
-AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
-
-# Check to see how 'make' treats includes.	            -*- Autoconf -*-
-
-# Copyright (C) 2001, 2002, 2003, 2005, 2009  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 4
-
-# AM_MAKE_INCLUDE()
-# -----------------
-# Check to see how make treats includes.
-AC_DEFUN([AM_MAKE_INCLUDE],
-[am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
-	@echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-AC_MSG_CHECKING([for style of include used by $am_make])
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
-  am__include=include
-  am__quote=
-  _am_result=GNU
-  ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
-   echo '.include "confinc"' > confmf
-   case `$am_make -s -f confmf 2> /dev/null` in #(
-   *the\ am__doit\ target*)
-     am__include=.include
-     am__quote="\""
-     _am_result=BSD
-     ;;
-   esac
-fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
-rm -f confinc confmf
-])
-
-# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
-
-# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 6
-
-# AM_MISSING_PROG(NAME, PROGRAM)
-# ------------------------------
-AC_DEFUN([AM_MISSING_PROG],
-[AC_REQUIRE([AM_MISSING_HAS_RUN])
-$1=${$1-"${am_missing_run}$2"}
-AC_SUBST($1)])
-
-
-# AM_MISSING_HAS_RUN
-# ------------------
-# Define MISSING if not defined so far and test if it supports --run.
-# If it does, set am_missing_run to use it, otherwise, to nothing.
-AC_DEFUN([AM_MISSING_HAS_RUN],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([missing])dnl
-if test x"${MISSING+set}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\	*)
-    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
-  *)
-    MISSING="\${SHELL} $am_aux_dir/missing" ;;
-  esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
-  am_missing_run="$MISSING --run "
-else
-  am_missing_run=
-  AC_MSG_WARN([`missing' script is too old or missing])
-fi
-])
-
-# Copyright (C) 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# AM_PROG_MKDIR_P
-# ---------------
-# Check for `mkdir -p'.
-AC_DEFUN([AM_PROG_MKDIR_P],
-[AC_PREREQ([2.60])dnl
-AC_REQUIRE([AC_PROG_MKDIR_P])dnl
-dnl Automake 1.8 to 1.9.6 used to define mkdir_p.  We now use MKDIR_P,
-dnl while keeping a definition of mkdir_p for backward compatibility.
-dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
-dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
-dnl Makefile.ins that do not define MKDIR_P, so we do our own
-dnl adjustment using top_builddir (which is defined more often than
-dnl MKDIR_P).
-AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
-case $mkdir_p in
-  [[\\/$]]* | ?:[[\\/]]*) ;;
-  */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-])
-
-# Helper functions for option handling.                     -*- Autoconf -*-
-
-# Copyright (C) 2001, 2002, 2003, 2005, 2008  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 4
-
-# _AM_MANGLE_OPTION(NAME)
-# -----------------------
-AC_DEFUN([_AM_MANGLE_OPTION],
-[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
-
-# _AM_SET_OPTION(NAME)
-# ------------------------------
-# Set option NAME.  Presently that only means defining a flag for this option.
-AC_DEFUN([_AM_SET_OPTION],
-[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
-
-# _AM_SET_OPTIONS(OPTIONS)
-# ----------------------------------
-# OPTIONS is a space-separated list of Automake options.
-AC_DEFUN([_AM_SET_OPTIONS],
-[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
-
-# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
-# -------------------------------------------
-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
-AC_DEFUN([_AM_IF_OPTION],
-[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-
-# Check to make sure that the build environment is sane.    -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 5
-
-# AM_SANITY_CHECK
-# ---------------
-AC_DEFUN([AM_SANITY_CHECK],
-[AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftest.file
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name.  Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
-  *[[\\\"\#\$\&\'\`$am_lf]]*)
-    AC_MSG_ERROR([unsafe absolute working directory name]);;
-esac
-case $srcdir in
-  *[[\\\"\#\$\&\'\`$am_lf\ \	]]*)
-    AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
-esac
-
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments.  Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
-   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
-   if test "$[*]" = "X"; then
-      # -L didn't work.
-      set X `ls -t "$srcdir/configure" conftest.file`
-   fi
-   rm -f conftest.file
-   if test "$[*]" != "X $srcdir/configure conftest.file" \
-      && test "$[*]" != "X conftest.file $srcdir/configure"; then
-
-      # If neither matched, then we have a broken ls.  This can happen
-      # if, for instance, CONFIG_SHELL is bash and it inherits a
-      # broken ls alias from the environment.  This has actually
-      # happened.  Such a system could not be considered "sane".
-      AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
-alias in your environment])
-   fi
-
-   test "$[2]" = conftest.file
-   )
-then
-   # Ok.
-   :
-else
-   AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-AC_MSG_RESULT(yes)])
-
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# AM_PROG_INSTALL_STRIP
-# ---------------------
-# One issue with vendor `install' (even GNU) is that you can't
-# specify the program used to strip binaries.  This is especially
-# annoying in cross-compiling environments, where the build's strip
-# is unlikely to handle the host's binaries.
-# Fortunately install-sh will honor a STRIPPROG variable, so we
-# always use install-sh in `make install-strip', and initialize
-# STRIPPROG with the value of the STRIP variable (set by the user).
-AC_DEFUN([AM_PROG_INSTALL_STRIP],
-[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'.  However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
-if test "$cross_compiling" != no; then
-  AC_CHECK_TOOL([STRIP], [strip], :)
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-AC_SUBST([INSTALL_STRIP_PROGRAM])])
-
-# Copyright (C) 2006, 2008  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 2
-
-# _AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
-# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
-# This macro is traced by Automake.
-AC_DEFUN([_AM_SUBST_NOTMAKE])
-
-# AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
-# Public sister of _AM_SUBST_NOTMAKE.
-AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
-
-# Check how to create a tarball.                            -*- Autoconf -*-
-
-# Copyright (C) 2004, 2005  Free Software Foundation, Inc.
-#
-# This file 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.
-
-# serial 2
-
-# _AM_PROG_TAR(FORMAT)
-# --------------------
-# Check how to create a tarball in format FORMAT.
-# FORMAT should be one of `v7', `ustar', or `pax'.
-#
-# Substitute a variable $(am__tar) that is a command
-# writing to stdout a FORMAT-tarball containing the directory
-# $tardir.
-#     tardir=directory && $(am__tar) > result.tar
-#
-# Substitute a variable $(am__untar) that extract such
-# a tarball read from stdin.
-#     $(am__untar) < result.tar
-AC_DEFUN([_AM_PROG_TAR],
-[# Always define AMTAR for backward compatibility.
-AM_MISSING_PROG([AMTAR], [tar])
-m4_if([$1], [v7],
-     [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
-     [m4_case([$1], [ustar],, [pax],,
-              [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
-_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of `-'.
-for _am_tool in $_am_tools
-do
-  case $_am_tool in
-  gnutar)
-    for _am_tar in tar gnutar gtar;
-    do
-      AM_RUN_LOG([$_am_tar --version]) && break
-    done
-    am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
-    am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
-    am__untar="$_am_tar -xf -"
-    ;;
-  plaintar)
-    # Must skip GNU tar: if it does not support --format= it doesn't create
-    # ustar tarball either.
-    (tar --version) >/dev/null 2>&1 && continue
-    am__tar='tar chf - "$$tardir"'
-    am__tar_='tar chf - "$tardir"'
-    am__untar='tar xf -'
-    ;;
-  pax)
-    am__tar='pax -L -x $1 -w "$$tardir"'
-    am__tar_='pax -L -x $1 -w "$tardir"'
-    am__untar='pax -r'
-    ;;
-  cpio)
-    am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
-    am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
-    am__untar='cpio -i -H $1 -d'
-    ;;
-  none)
-    am__tar=false
-    am__tar_=false
-    am__untar=false
-    ;;
-  esac
-
-  # If the value was cached, stop now.  We just wanted to have am__tar
-  # and am__untar set.
-  test -n "${am_cv_prog_tar_$1}" && break
-
-  # tar/untar a dummy directory, and stop if the command works
-  rm -rf conftest.dir
-  mkdir conftest.dir
-  echo GrepMe > conftest.dir/file
-  AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
-  rm -rf conftest.dir
-  if test -s conftest.tar; then
-    AM_RUN_LOG([$am__untar <conftest.tar])
-    grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
-  fi
-done
-rm -rf conftest.dir
-
-AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-AC_MSG_RESULT([$am_cv_prog_tar_$1])])
-AC_SUBST([am__tar])
-AC_SUBST([am__untar])
-]) # _AM_PROG_TAR
-
-m4_include([m4/curl-compilers.m4])
-m4_include([m4/curl-confopts.m4])
-m4_include([m4/curl-functions.m4])
-m4_include([m4/curl-override.m4])
-m4_include([m4/curl-reentrant.m4])
-m4_include([m4/curl-system.m4])
-m4_include([m4/libtool.m4])
-m4_include([m4/ltoptions.m4])
-m4_include([m4/ltsugar.m4])
-m4_include([m4/ltversion.m4])
-m4_include([m4/lt~obsolete.m4])
-m4_include([acinclude.m4])
diff --git a/src/other/curl/buildconf b/src/other/curl/buildconf
deleted file mode 100755
index b6d70a6..0000000
--- a/src/other/curl/buildconf
+++ /dev/null
@@ -1,396 +0,0 @@
-#!/bin/sh
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-###########################################################################
-
-die(){
-	echo "$@"
-	exit
-}
-
-#--------------------------------------------------------------------------
-# findtool works as 'which' but we use a different name to make it more
-# obvious we aren't using 'which'! ;-)
-#
-findtool(){
-  file="$1"
-
-  old_IFS=$IFS; IFS=':'
-  for path in $PATH
-  do
-    IFS=$old_IFS
-    # echo "checks for $file in $path" >&2
-    if test -f "$path/$file"; then
-      echo "$path/$file"
-      return
-    fi
-  done
-  IFS=$old_IFS
-}
-
-#--------------------------------------------------------------------------
-# removethis() removes all files and subdirectories with the given name,
-# inside and below the current subdirectory at invocation time.
-#
-removethis(){
-  if test "$#" = "1"; then
-    find . -depth -name $1 -print > buildconf.tmp.$$
-    while read fdname
-    do
-      if test -f "$fdname"; then
-        rm -f "$fdname"
-      elif test -d "$fdname"; then
-        rm -f -r "$fdname"
-      fi
-    done < buildconf.tmp.$$
-    rm -f buildconf.tmp.$$
-  fi
-}
-
-#--------------------------------------------------------------------------
-# Ensure that buildconf runs from the subdirectory where configure.ac lives
-#
-if test ! -f configure.ac ||
-  test ! -f src/main.c ||
-  test ! -f lib/urldata.h ||
-  test ! -f include/curl/curl.h; then
-  echo "Can not run buildconf from outside of curl's source subdirectory!"
-  echo "Change to the subdirectory where buildconf is found, and try again."
-  exit 1
-fi
-
-#--------------------------------------------------------------------------
-# autoconf 2.57 or newer
-#
-need_autoconf="2.57"
-ac_version=`${AUTOCONF:-autoconf} --version 2>/dev/null|head -n 1| sed -e 's/^[^0-9]*//' -e 's/[a-z]* *$//'`
-if test -z "$ac_version"; then
-  echo "buildconf: autoconf not found."
-  echo "            You need autoconf version $need_autoconf or newer installed."
-  exit 1
-fi
-old_IFS=$IFS; IFS='.'; set $ac_version; IFS=$old_IFS
-if test "$1" = "2" -a "$2" -lt "57" || test "$1" -lt "2"; then
-  echo "buildconf: autoconf version $ac_version found."
-  echo "            You need autoconf version $need_autoconf or newer installed."
-  echo "            If you have a sufficient autoconf installed, but it"
-  echo "            is not named 'autoconf', then try setting the"
-  echo "            AUTOCONF environment variable."
-  exit 1
-fi
-
-echo "buildconf: autoconf version $ac_version (ok)"
-
-am4te_version=`${AUTOM4TE:-autom4te} --version 2>/dev/null|head -n 1| sed -e 's/autom4te\(.*\)/\1/' -e 's/^[^0-9]*//' -e 's/[a-z]* *$//'`
-if test -z "$am4te_version"; then
-  echo "buildconf: autom4te not found. Weird autoconf installation!"
-  exit 1
-fi
-if test "$am4te_version" = "$ac_version"; then
-  echo "buildconf: autom4te version $am4te_version (ok)"
-else
-  echo "buildconf: autom4te version $am4te_version (ERROR: does not match autoconf version)"
-  exit 1
-fi
-
-#--------------------------------------------------------------------------
-# autoheader 2.50 or newer
-#
-ah_version=`${AUTOHEADER:-autoheader} --version 2>/dev/null|head -n 1| sed -e 's/^[^0-9]*//' -e 's/[a-z]* *$//'`
-if test -z "$ah_version"; then
-  echo "buildconf: autoheader not found."
-  echo "            You need autoheader version 2.50 or newer installed."
-  exit 1
-fi
-old_IFS=$IFS; IFS='.'; set $ah_version; IFS=$old_IFS
-if test "$1" = "2" -a "$2" -lt "50" || test "$1" -lt "2"; then
-  echo "buildconf: autoheader version $ah_version found."
-  echo "            You need autoheader version 2.50 or newer installed."
-  echo "            If you have a sufficient autoheader installed, but it"
-  echo "            is not named 'autoheader', then try setting the"
-  echo "            AUTOHEADER environment variable."
-  exit 1
-fi
-
-echo "buildconf: autoheader version $ah_version (ok)"
-
-#--------------------------------------------------------------------------
-# automake 1.7 or newer
-#
-need_automake="1.7"
-am_version=`${AUTOMAKE:-automake} --version 2>/dev/null|head -n 1| sed -e 's/^.* \([0-9]\)/\1/' -e 's/[a-z]* *$//' -e 's/\(.*\)\(-p.*\)/\1/'`
-if test -z "$am_version"; then
-  echo "buildconf: automake not found."
-  echo "            You need automake version $need_automake or newer installed."
-  exit 1
-fi
-old_IFS=$IFS; IFS='.'; set $am_version; IFS=$old_IFS
-if test "$1" = "1" -a "$2" -lt "7" || test "$1" -lt "1"; then
-  echo "buildconf: automake version $am_version found."
-  echo "            You need automake version $need_automake or newer installed."
-  echo "            If you have a sufficient automake installed, but it"
-  echo "            is not named 'automake', then try setting the"
-  echo "            AUTOMAKE environment variable."
-  exit 1
-fi
-
-echo "buildconf: automake version $am_version (ok)"
-
-acloc_version=`${ACLOCAL:-aclocal} --version 2>/dev/null|head -n 1| sed -e 's/^.* \([0-9]\)/\1/' -e 's/[a-z]* *$//' -e 's/\(.*\)\(-p.*\)/\1/'`
-if test -z "$acloc_version"; then
-  echo "buildconf: aclocal not found. Weird automake installation!"
-  exit 1
-fi
-if test "$acloc_version" = "$am_version"; then
-  echo "buildconf: aclocal version $acloc_version (ok)"
-else
-  echo "buildconf: aclocal version $acloc_version (ERROR: does not match automake version)"
-  exit 1
-fi
-
-#--------------------------------------------------------------------------
-# libtool check
-#
-LIBTOOL_WANTED_MAJOR=1
-LIBTOOL_WANTED_MINOR=4
-LIBTOOL_WANTED_PATCH=2
-LIBTOOL_WANTED_VERSION=1.4.2
-
-# this approach that tries 'glibtool' first is some kind of work-around for
-# some BSD-systems I believe that use to provide the GNU libtool named
-# glibtool, with 'libtool' being something completely different.
-libtool=`findtool glibtool 2>/dev/null`
-if test ! -x "$libtool"; then
-  libtool=`findtool ${LIBTOOL:-libtool}`
-fi
-
-if test -z "$LIBTOOLIZE"; then
-  # set the LIBTOOLIZE here so that glibtoolize is used if glibtool was found
-  # $libtool is already the full path
-  libtoolize="${libtool}ize"
-else
-  libtoolize=`findtool $LIBTOOLIZE`
-fi
-
-lt_pver=`$libtool --version 2>/dev/null|head -n 1`
-lt_qver=`echo $lt_pver|sed -e "s/([^)]*)//g" -e "s/^[^0-9]*//g"`
-lt_version=`echo $lt_qver|sed -e "s/[- ].*//" -e "s/\([a-z]*\)$//"`
-if test -z "$lt_version"; then
-  echo "buildconf: libtool not found."
-  echo "            You need libtool version $LIBTOOL_WANTED_VERSION or newer installed"
-  exit 1
-fi
-old_IFS=$IFS; IFS='.'; set $lt_version; IFS=$old_IFS
-lt_major=$1
-lt_minor=$2
-lt_patch=$3
-lt_status="good"
-
-if test "$lt_major" = "$LIBTOOL_WANTED_MAJOR"; then
-   if test "$lt_minor" -lt "$LIBTOOL_WANTED_MINOR"; then
-      lt_status="bad"
-   elif test -n "$LIBTOOL_WANTED_PATCH"; then
-       if test "$lt_minor" -gt "$LIBTOOL_WANTED_MINOR"; then
-         lt_status="good"
-       elif test -n "$lt_patch"; then
-          if test "$lt_patch" -lt "$LIBTOOL_WANTED_PATCH"; then
-             lt_status="bad"
-          fi
-       else
-          lt_status="bad"
-       fi
-   fi
-fi
-if test $lt_status != "good"; then
-  echo "buildconf: libtool version $lt_version found."
-  echo "            You need libtool version $LIBTOOL_WANTED_VERSION or newer installed"
-  exit 1
-fi
-
-echo "buildconf: libtool version $lt_version (ok)"
-
-if test -f "$libtoolize"; then
-  echo "buildconf: libtoolize found"
-else
-  echo "buildconf: libtoolize not found. Weird libtool installation!"
-  exit 1
-fi
-
-#--------------------------------------------------------------------------
-# m4 check
-#
-m4=`${M4:-m4} --version 2>/dev/null|head -n 1`;
-m4_version=`echo $m4 | sed -e 's/^.* \([0-9]\)/\1/' -e 's/[a-z]* *$//'`
-
-if { echo $m4 | grep "GNU" >/dev/null 2>&1; } then
-  echo "buildconf: GNU m4 version $m4_version (ok)"
-else
-  echo "buildconf: m4 version $m4 found. You need a GNU m4 installed!"
-  exit 1
-fi
-
-#--------------------------------------------------------------------------
-# perl check
-#
-PERL=`findtool ${PERL:-perl}`
-
-#--------------------------------------------------------------------------
-# Remove files generated on previous buildconf/configure run.
-#
-for fname in .deps \
-    .libs \
-    *.la \
-    *.lo \
-    *.a \
-    *.o \
-    Makefile \
-    Makefile.in \
-    aclocal.m4 \
-    aclocal.m4.bak \
-    ares_build.h \
-    ares_config.h \
-    ares_config.h.in \
-    autom4te.cache \
-    compile \
-    config.guess \
-    curl_config.h \
-    curl_config.h.in \
-    config.log \
-    config.lt \
-    config.status \
-    config.sub \
-    configure \
-    curl-config \
-    curlbuild.h \
-    depcomp \
-    libcares.pc \
-    libcurl.pc \
-    libtool \
-    libtool.m4 \
-    ltmain.sh \
-    ltoptions.m4 \
-    ltsugar.m4 \
-    ltversion.m4 \
-    lt~obsolete.m4 \
-    stamp-h1 \
-    stamp-h2 \
-    stamp-h3 ; do
-  removethis "$fname"
-done
-
-#--------------------------------------------------------------------------
-# run the correct scripts now
-#
-
-echo "buildconf: running libtoolize"
-$libtoolize --copy --automake --force || die "The libtoolize command failed"
-
-if test ! -f m4/curl-functions.m4; then
-  echo "buildconf: cURL m4 macros not found"
-  exit 1
-fi
-
-echo "buildconf: running aclocal"
-${ACLOCAL:-aclocal} -I m4 $ACLOCAL_FLAGS || die "The aclocal command line failed"
-
-if test -n "$PERL"; then
-  echo "buildconf: running aclocal hack to convert all mv to mv -f"
-  $PERL -i.bak -pe 's/\bmv +([^-\s])/mv -f $1/g' aclocal.m4
-else
-  echo "buildconf: perl not found"
-  exit 1
-fi
-
-echo "buildconf: running autoheader"
-${AUTOHEADER:-autoheader} || die "The autoheader command failed"
-
-echo "buildconf: cp lib/curl_config.h.in src/curl_config.h.in"
-cp lib/curl_config.h.in src/curl_config.h.in
-
-echo "buildconf: running autoconf"
-${AUTOCONF:-autoconf}     || die "The autoconf command failed"
-
-if test -d ares; then
-  cd ares
-  echo "buildconf: running in ares"
-  ./buildconf
-  cd ..
-fi
-
-echo "buildconf: running automake"
-${AUTOMAKE:-automake} -a -c  || die "The automake command failed"
-
-#--------------------------------------------------------------------------
-# Depending on the libtool and automake versions being used, config.guess
-# might not be installed in the subdirectory until automake has finished.
-# So we can not attempt to use it until this very last buildconf stage.
-#
-
-if test ! -f ./config.guess; then
-  echo "buildconf: config.guess not found"
-else
-  buildhost=`./config.guess 2>/dev/null|head -n 1`
-  case $buildhost in
-    *-*-hpux*)
-      need_lt_major=1
-      need_lt_minor=5
-      need_lt_patch=24
-      need_lt_check="yes"
-      ;;
-  esac
-  if test ! -z "$need_lt_check"; then
-    if test -z "$lt_major"; then
-      lt_status="bad"
-    elif test "$lt_major" -gt "$need_lt_major"; then
-      lt_status="good"
-    elif test "$lt_major" -lt "$need_lt_major"; then
-      lt_status="bad"
-    elif test -z "$lt_minor"; then
-      lt_status="bad"
-    elif test "$lt_minor" -gt "$need_lt_minor"; then
-      lt_status="good"
-    elif test "$lt_minor" -lt "$need_lt_minor"; then
-      lt_status="bad"
-    elif test -z "$lt_patch"; then
-      lt_status="bad"
-    elif test "$lt_patch" -gt "$need_lt_patch"; then
-      lt_status="good"
-    elif test "$lt_patch" -lt "$need_lt_patch"; then
-      lt_status="bad"
-    else
-      lt_status="good"
-    fi
-    if test "$lt_status" != "good"; then
-      need_lt_version="$need_lt_major.$need_lt_minor.$need_lt_patch"
-      echo "buildconf: libtool version $lt_version found."
-      echo "            $buildhost requires libtool $need_lt_version or newer installed."
-      rm -f configure
-      exit 1
-    fi
-  fi
-fi
-
-#--------------------------------------------------------------------------
-# Finished succesfully.
-#
-
-echo "buildconf: OK"
-exit 0
diff --git a/src/other/curl/config.guess b/src/other/curl/config.guess
deleted file mode 100755
index dc84c68..0000000
--- a/src/other/curl/config.guess
+++ /dev/null
@@ -1,1501 +0,0 @@
-#! /bin/sh
-# Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
-#   Free Software Foundation, Inc.
-
-timestamp='2009-11-20'
-
-# 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 2 of the License, 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
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner.  Please send patches (context
-# diff format) to <config-patches at gnu.org> and include a ChangeLog
-# entry.
-#
-# This script attempts to guess a canonical system name similar to
-# config.sub.  If it succeeds, it prints the system name on stdout, and
-# exits with 0.  Otherwise, it exits with 1.
-#
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION]
-
-Output the configuration name of the system \`$me' is run on.
-
-Operation modes:
-  -h, --help         print this help, then exit
-  -t, --time-stamp   print date of last modification, then exit
-  -v, --version      print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.guess ($timestamp)
-
-Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 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."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
-  case $1 in
-    --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit ;;
-    --version | -v )
-       echo "$version" ; exit ;;
-    --help | --h* | -h )
-       echo "$usage"; exit ;;
-    -- )     # Stop option processing
-       shift; break ;;
-    - )	# Use stdin as input.
-       break ;;
-    -* )
-       echo "$me: invalid option $1$help" >&2
-       exit 1 ;;
-    * )
-       break ;;
-  esac
-done
-
-if test $# != 0; then
-  echo "$me: too many arguments$help" >&2
-  exit 1
-fi
-
-trap 'exit 1' 1 2 15
-
-# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
-# compiler to aid in system detection is discouraged as it requires
-# temporary files to be created and, as you can see below, it is a
-# headache to deal with in a portable fashion.
-
-# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-# use `HOST_CC' if defined, but it is deprecated.
-
-# Portable tmp directory creation inspired by the Autoconf team.
-
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,)    echo "int x;" > $dummy.c ;
-	for c in cc gcc c89 c99 ; do
-	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
-	     CC_FOR_BUILD="$c"; break ;
-	  fi ;
-	done ;
-	if test x"$CC_FOR_BUILD" = x ; then
-	  CC_FOR_BUILD=no_compiler_found ;
-	fi
-	;;
- ,,*)   CC_FOR_BUILD=$CC ;;
- ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
-
-# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi at noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
-	PATH=$PATH:/.attbin ; export PATH
-fi
-
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-# Note: order is significant - the case branches are not exclusive.
-
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
-    *:NetBSD:*:*)
-	# NetBSD (nbsd) targets should (where applicable) match one or
-	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
-	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
-	# switched to ELF, *-*-netbsd* would select the old
-	# object file format.  This provides both forward
-	# compatibility and a consistent mechanism for selecting the
-	# object file format.
-	#
-	# Note: NetBSD doesn't particularly care about the vendor
-	# portion of the name.  We always set it to "unknown".
-	sysctl="sysctl -n hw.machine_arch"
-	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
-	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
-	case "${UNAME_MACHINE_ARCH}" in
-	    armeb) machine=armeb-unknown ;;
-	    arm*) machine=arm-unknown ;;
-	    sh3el) machine=shl-unknown ;;
-	    sh3eb) machine=sh-unknown ;;
-	    sh5el) machine=sh5le-unknown ;;
-	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
-	esac
-	# The Operating System including object format, if it has switched
-	# to ELF recently, or will in the future.
-	case "${UNAME_MACHINE_ARCH}" in
-	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
-		eval $set_cc_for_build
-		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-			| grep -q __ELF__
-		then
-		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
-		    # Return netbsd for either.  FIX?
-		    os=netbsd
-		else
-		    os=netbsdelf
-		fi
-		;;
-	    *)
-	        os=netbsd
-		;;
-	esac
-	# The OS release
-	# Debian GNU/NetBSD machines have a different userland, and
-	# thus, need a distinct triplet. However, they do not need
-	# kernel version information, so it can be replaced with a
-	# suitable tag, in the style of linux-gnu.
-	case "${UNAME_VERSION}" in
-	    Debian*)
-		release='-gnu'
-		;;
-	    *)
-		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-		;;
-	esac
-	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
-	# contains redundant information, the shorter form:
-	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-	echo "${machine}-${os}${release}"
-	exit ;;
-    *:OpenBSD:*:*)
-	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
-	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
-	exit ;;
-    *:ekkoBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
-	exit ;;
-    *:SolidBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
-	exit ;;
-    macppc:MirBSD:*:*)
-	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
-	exit ;;
-    *:MirBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
-	exit ;;
-    alpha:OSF1:*:*)
-	case $UNAME_RELEASE in
-	*4.0)
-		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
-		;;
-	*5.*)
-	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
-		;;
-	esac
-	# According to Compaq, /usr/sbin/psrinfo has been available on
-	# OSF/1 and Tru64 systems produced since 1995.  I hope that
-	# covers most systems running today.  This code pipes the CPU
-	# types through head -n 1, so we only detect the type of CPU 0.
-	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
-	case "$ALPHA_CPU_TYPE" in
-	    "EV4 (21064)")
-		UNAME_MACHINE="alpha" ;;
-	    "EV4.5 (21064)")
-		UNAME_MACHINE="alpha" ;;
-	    "LCA4 (21066/21068)")
-		UNAME_MACHINE="alpha" ;;
-	    "EV5 (21164)")
-		UNAME_MACHINE="alphaev5" ;;
-	    "EV5.6 (21164A)")
-		UNAME_MACHINE="alphaev56" ;;
-	    "EV5.6 (21164PC)")
-		UNAME_MACHINE="alphapca56" ;;
-	    "EV5.7 (21164PC)")
-		UNAME_MACHINE="alphapca57" ;;
-	    "EV6 (21264)")
-		UNAME_MACHINE="alphaev6" ;;
-	    "EV6.7 (21264A)")
-		UNAME_MACHINE="alphaev67" ;;
-	    "EV6.8CB (21264C)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.8AL (21264B)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.8CX (21264D)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.9A (21264/EV69A)")
-		UNAME_MACHINE="alphaev69" ;;
-	    "EV7 (21364)")
-		UNAME_MACHINE="alphaev7" ;;
-	    "EV7.9 (21364A)")
-		UNAME_MACHINE="alphaev79" ;;
-	esac
-	# A Pn.n version is a patched version.
-	# A Vn.n version is a released version.
-	# A Tn.n version is a released field test version.
-	# A Xn.n version is an unreleased experimental baselevel.
-	# 1.2 uses "1.2" for uname -r.
-	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-	exit ;;
-    Alpha\ *:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# Should we change UNAME_MACHINE based on the output of uname instead
-	# of the specific Alpha model?
-	echo alpha-pc-interix
-	exit ;;
-    21064:Windows_NT:50:3)
-	echo alpha-dec-winnt3.5
-	exit ;;
-    Amiga*:UNIX_System_V:4.0:*)
-	echo m68k-unknown-sysv4
-	exit ;;
-    *:[Aa]miga[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-amigaos
-	exit ;;
-    *:[Mm]orph[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-morphos
-	exit ;;
-    *:OS/390:*:*)
-	echo i370-ibm-openedition
-	exit ;;
-    *:z/VM:*:*)
-	echo s390-ibm-zvmoe
-	exit ;;
-    *:OS400:*:*)
-        echo powerpc-ibm-os400
-	exit ;;
-    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
-	echo arm-acorn-riscix${UNAME_RELEASE}
-	exit ;;
-    arm:riscos:*:*|arm:RISCOS:*:*)
-	echo arm-unknown-riscos
-	exit ;;
-    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
-	echo hppa1.1-hitachi-hiuxmpp
-	exit ;;
-    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
-	# akee at wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
-	if test "`(/bin/universe) 2>/dev/null`" = att ; then
-		echo pyramid-pyramid-sysv3
-	else
-		echo pyramid-pyramid-bsd
-	fi
-	exit ;;
-    NILE*:*:*:dcosx)
-	echo pyramid-pyramid-svr4
-	exit ;;
-    DRS?6000:unix:4.0:6*)
-	echo sparc-icl-nx6
-	exit ;;
-    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
-	case `/usr/bin/uname -p` in
-	    sparc) echo sparc-icl-nx7; exit ;;
-	esac ;;
-    s390x:SunOS:*:*)
-	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4H:SunOS:5.*:*)
-	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
-	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
-	echo i386-pc-auroraux${UNAME_RELEASE}
-	exit ;;
-    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
-	eval $set_cc_for_build
-	SUN_ARCH="i386"
-	# If there is a compiler, see if it is configured for 64-bit objects.
-	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
-	# This test works for both compilers.
-	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
-		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		grep IS_64BIT_ARCH >/dev/null
-	    then
-		SUN_ARCH="x86_64"
-	    fi
-	fi
-	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:6*:*)
-	# According to config.sub, this is the proper way to canonicalize
-	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
-	# it's likely to be more like Solaris than SunOS4.
-	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:*:*)
-	case "`/usr/bin/arch -k`" in
-	    Series*|S4*)
-		UNAME_RELEASE=`uname -v`
-		;;
-	esac
-	# Japanese Language versions have a version number like `4.1.3-JL'.
-	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
-	exit ;;
-    sun3*:SunOS:*:*)
-	echo m68k-sun-sunos${UNAME_RELEASE}
-	exit ;;
-    sun*:*:4.2BSD:*)
-	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
-	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
-	case "`/bin/arch`" in
-	    sun3)
-		echo m68k-sun-sunos${UNAME_RELEASE}
-		;;
-	    sun4)
-		echo sparc-sun-sunos${UNAME_RELEASE}
-		;;
-	esac
-	exit ;;
-    aushp:SunOS:*:*)
-	echo sparc-auspex-sunos${UNAME_RELEASE}
-	exit ;;
-    # The situation for MiNT is a little confusing.  The machine name
-    # can be virtually everything (everything which is not
-    # "atarist" or "atariste" at least should have a processor
-    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
-    # to the lowercase version "mint" (or "freemint").  Finally
-    # the system name "TOS" denotes a system which is actually not
-    # MiNT.  But MiNT is downward compatible to TOS, so this should
-    # be no problem.
-    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
-        echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
-    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
-        exit ;;
-    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
-        echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
-    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
-        echo m68k-milan-mint${UNAME_RELEASE}
-        exit ;;
-    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
-        echo m68k-hades-mint${UNAME_RELEASE}
-        exit ;;
-    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-        echo m68k-unknown-mint${UNAME_RELEASE}
-        exit ;;
-    m68k:machten:*:*)
-	echo m68k-apple-machten${UNAME_RELEASE}
-	exit ;;
-    powerpc:machten:*:*)
-	echo powerpc-apple-machten${UNAME_RELEASE}
-	exit ;;
-    RISC*:Mach:*:*)
-	echo mips-dec-mach_bsd4.3
-	exit ;;
-    RISC*:ULTRIX:*:*)
-	echo mips-dec-ultrix${UNAME_RELEASE}
-	exit ;;
-    VAX*:ULTRIX*:*:*)
-	echo vax-dec-ultrix${UNAME_RELEASE}
-	exit ;;
-    2020:CLIX:*:* | 2430:CLIX:*:*)
-	echo clipper-intergraph-clix${UNAME_RELEASE}
-	exit ;;
-    mips:*:*:UMIPS | mips:*:*:RISCos)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-#ifdef __cplusplus
-#include <stdio.h>  /* for printf() prototype */
-	int main (int argc, char *argv[]) {
-#else
-	int main (argc, argv) int argc; char *argv[]; {
-#endif
-	#if defined (host_mips) && defined (MIPSEB)
-	#if defined (SYSTYPE_SYSV)
-	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
-	#endif
-	#if defined (SYSTYPE_SVR4)
-	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
-	#endif
-	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
-	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
-	#endif
-	#endif
-	  exit (-1);
-	}
-EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c &&
-	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
-	  SYSTEM_NAME=`$dummy $dummyarg` &&
-	    { echo "$SYSTEM_NAME"; exit; }
-	echo mips-mips-riscos${UNAME_RELEASE}
-	exit ;;
-    Motorola:PowerMAX_OS:*:*)
-	echo powerpc-motorola-powermax
-	exit ;;
-    Motorola:*:4.3:PL8-*)
-	echo powerpc-harris-powermax
-	exit ;;
-    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
-	echo powerpc-harris-powermax
-	exit ;;
-    Night_Hawk:Power_UNIX:*:*)
-	echo powerpc-harris-powerunix
-	exit ;;
-    m88k:CX/UX:7*:*)
-	echo m88k-harris-cxux7
-	exit ;;
-    m88k:*:4*:R4*)
-	echo m88k-motorola-sysv4
-	exit ;;
-    m88k:*:3*:R3*)
-	echo m88k-motorola-sysv3
-	exit ;;
-    AViiON:dgux:*:*)
-        # DG/UX returns AViiON for all architectures
-        UNAME_PROCESSOR=`/usr/bin/uname -p`
-	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
-	then
-	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
-	       [ ${TARGET_BINARY_INTERFACE}x = x ]
-	    then
-		echo m88k-dg-dgux${UNAME_RELEASE}
-	    else
-		echo m88k-dg-dguxbcs${UNAME_RELEASE}
-	    fi
-	else
-	    echo i586-dg-dgux${UNAME_RELEASE}
-	fi
- 	exit ;;
-    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
-	echo m88k-dolphin-sysv3
-	exit ;;
-    M88*:*:R3*:*)
-	# Delta 88k system running SVR3
-	echo m88k-motorola-sysv3
-	exit ;;
-    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
-	echo m88k-tektronix-sysv3
-	exit ;;
-    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
-	echo m68k-tektronix-bsd
-	exit ;;
-    *:IRIX*:*:*)
-	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
-	exit ;;
-    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
-	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
-	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
-    i*86:AIX:*:*)
-	echo i386-ibm-aix
-	exit ;;
-    ia64:AIX:*:*)
-	if [ -x /usr/bin/oslevel ] ; then
-		IBM_REV=`/usr/bin/oslevel`
-	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-	fi
-	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
-	exit ;;
-    *:AIX:2:3)
-	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
-		eval $set_cc_for_build
-		sed 's/^		//' << EOF >$dummy.c
-		#include <sys/systemcfg.h>
-
-		main()
-			{
-			if (!__power_pc())
-				exit(1);
-			puts("powerpc-ibm-aix3.2.5");
-			exit(0);
-			}
-EOF
-		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
-		then
-			echo "$SYSTEM_NAME"
-		else
-			echo rs6000-ibm-aix3.2.5
-		fi
-	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
-		echo rs6000-ibm-aix3.2.4
-	else
-		echo rs6000-ibm-aix3.2
-	fi
-	exit ;;
-    *:AIX:*:[456])
-	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
-	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
-		IBM_ARCH=rs6000
-	else
-		IBM_ARCH=powerpc
-	fi
-	if [ -x /usr/bin/oslevel ] ; then
-		IBM_REV=`/usr/bin/oslevel`
-	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-	fi
-	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
-	exit ;;
-    *:AIX:*:*)
-	echo rs6000-ibm-aix
-	exit ;;
-    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
-	echo romp-ibm-bsd4.4
-	exit ;;
-    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
-	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
-	exit ;;                             # report: romp-ibm BSD 4.3
-    *:BOSX:*:*)
-	echo rs6000-bull-bosx
-	exit ;;
-    DPX/2?00:B.O.S.:*:*)
-	echo m68k-bull-sysv3
-	exit ;;
-    9000/[34]??:4.3bsd:1.*:*)
-	echo m68k-hp-bsd
-	exit ;;
-    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
-	echo m68k-hp-bsd4.4
-	exit ;;
-    9000/[34678]??:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	case "${UNAME_MACHINE}" in
-	    9000/31? )            HP_ARCH=m68000 ;;
-	    9000/[34]?? )         HP_ARCH=m68k ;;
-	    9000/[678][0-9][0-9])
-		if [ -x /usr/bin/getconf ]; then
-		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
-                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
-                    case "${sc_cpu_version}" in
-                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
-                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
-                      532)                      # CPU_PA_RISC2_0
-                        case "${sc_kernel_bits}" in
-                          32) HP_ARCH="hppa2.0n" ;;
-                          64) HP_ARCH="hppa2.0w" ;;
-			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
-                        esac ;;
-                    esac
-		fi
-		if [ "${HP_ARCH}" = "" ]; then
-		    eval $set_cc_for_build
-		    sed 's/^              //' << EOF >$dummy.c
-
-              #define _HPUX_SOURCE
-              #include <stdlib.h>
-              #include <unistd.h>
-
-              int main ()
-              {
-              #if defined(_SC_KERNEL_BITS)
-                  long bits = sysconf(_SC_KERNEL_BITS);
-              #endif
-                  long cpu  = sysconf (_SC_CPU_VERSION);
-
-                  switch (cpu)
-              	{
-              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
-              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
-              	case CPU_PA_RISC2_0:
-              #if defined(_SC_KERNEL_BITS)
-              	    switch (bits)
-              		{
-              		case 64: puts ("hppa2.0w"); break;
-              		case 32: puts ("hppa2.0n"); break;
-              		default: puts ("hppa2.0"); break;
-              		} break;
-              #else  /* !defined(_SC_KERNEL_BITS) */
-              	    puts ("hppa2.0"); break;
-              #endif
-              	default: puts ("hppa1.0"); break;
-              	}
-                  exit (0);
-              }
-EOF
-		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
-		    test -z "$HP_ARCH" && HP_ARCH=hppa
-		fi ;;
-	esac
-	if [ ${HP_ARCH} = "hppa2.0w" ]
-	then
-	    eval $set_cc_for_build
-
-	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
-	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
-	    # generating 64-bit code.  GNU and HP use different nomenclature:
-	    #
-	    # $ CC_FOR_BUILD=cc ./config.guess
-	    # => hppa2.0w-hp-hpux11.23
-	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
-	    # => hppa64-hp-hpux11.23
-
-	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
-		grep -q __LP64__
-	    then
-		HP_ARCH="hppa2.0w"
-	    else
-		HP_ARCH="hppa64"
-	    fi
-	fi
-	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
-	exit ;;
-    ia64:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	echo ia64-hp-hpux${HPUX_REV}
-	exit ;;
-    3050*:HI-UX:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#include <unistd.h>
-	int
-	main ()
-	{
-	  long cpu = sysconf (_SC_CPU_VERSION);
-	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
-	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
-	     results, however.  */
-	  if (CPU_IS_PA_RISC (cpu))
-	    {
-	      switch (cpu)
-		{
-		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
-		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
-		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
-		  default: puts ("hppa-hitachi-hiuxwe2"); break;
-		}
-	    }
-	  else if (CPU_IS_HP_MC68K (cpu))
-	    puts ("m68k-hitachi-hiuxwe2");
-	  else puts ("unknown-hitachi-hiuxwe2");
-	  exit (0);
-	}
-EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
-		{ echo "$SYSTEM_NAME"; exit; }
-	echo unknown-hitachi-hiuxwe2
-	exit ;;
-    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
-	echo hppa1.1-hp-bsd
-	exit ;;
-    9000/8??:4.3bsd:*:*)
-	echo hppa1.0-hp-bsd
-	exit ;;
-    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
-	echo hppa1.0-hp-mpeix
-	exit ;;
-    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
-	echo hppa1.1-hp-osf
-	exit ;;
-    hp8??:OSF1:*:*)
-	echo hppa1.0-hp-osf
-	exit ;;
-    i*86:OSF1:*:*)
-	if [ -x /usr/sbin/sysversion ] ; then
-	    echo ${UNAME_MACHINE}-unknown-osf1mk
-	else
-	    echo ${UNAME_MACHINE}-unknown-osf1
-	fi
-	exit ;;
-    parisc*:Lites*:*:*)
-	echo hppa1.1-hp-lites
-	exit ;;
-    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
-	echo c1-convex-bsd
-        exit ;;
-    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
-	if getsysinfo -f scalar_acc
-	then echo c32-convex-bsd
-	else echo c2-convex-bsd
-	fi
-        exit ;;
-    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
-	echo c34-convex-bsd
-        exit ;;
-    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
-	echo c38-convex-bsd
-        exit ;;
-    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
-	echo c4-convex-bsd
-        exit ;;
-    CRAY*Y-MP:*:*:*)
-	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*[A-Z]90:*:*:*)
-	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
-	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-	      -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*TS:*:*:*)
-	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*T3E:*:*:*)
-	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*SV1:*:*:*)
-	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    *:UNICOS/mp:*:*)
-	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
-	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
-        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-        exit ;;
-    5000:UNIX_System_V:4.*:*)
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
-        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-	exit ;;
-    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
-	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
-	exit ;;
-    sparc*:BSD/OS:*:*)
-	echo sparc-unknown-bsdi${UNAME_RELEASE}
-	exit ;;
-    *:BSD/OS:*:*)
-	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
-	exit ;;
-    *:FreeBSD:*:*)
-	case ${UNAME_MACHINE} in
-	    pc98)
-		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	    amd64)
-		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	    *)
-		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	esac
-	exit ;;
-    i*:CYGWIN*:*)
-	echo ${UNAME_MACHINE}-pc-cygwin
-	exit ;;
-    *:MINGW*:*)
-	echo ${UNAME_MACHINE}-pc-mingw32
-	exit ;;
-    i*:windows32*:*)
-    	# uname -m includes "-pc" on this system.
-    	echo ${UNAME_MACHINE}-mingw32
-	exit ;;
-    i*:PW*:*)
-	echo ${UNAME_MACHINE}-pc-pw32
-	exit ;;
-    *:Interix*:*)
-    	case ${UNAME_MACHINE} in
-	    x86)
-		echo i586-pc-interix${UNAME_RELEASE}
-		exit ;;
-	    authenticamd | genuineintel | EM64T)
-		echo x86_64-unknown-interix${UNAME_RELEASE}
-		exit ;;
-	    IA64)
-		echo ia64-unknown-interix${UNAME_RELEASE}
-		exit ;;
-	esac ;;
-    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
-	echo i${UNAME_MACHINE}-pc-mks
-	exit ;;
-    8664:Windows_NT:*)
-	echo x86_64-pc-mks
-	exit ;;
-    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
-	# UNAME_MACHINE based on the output of uname instead of i386?
-	echo i586-pc-interix
-	exit ;;
-    i*:UWIN*:*)
-	echo ${UNAME_MACHINE}-pc-uwin
-	exit ;;
-    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
-	echo x86_64-unknown-cygwin
-	exit ;;
-    p*:CYGWIN*:*)
-	echo powerpcle-unknown-cygwin
-	exit ;;
-    prep*:SunOS:5.*:*)
-	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    *:GNU:*:*)
-	# the GNU system
-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
-	exit ;;
-    *:GNU/*:*:*)
-	# other systems with GNU libc and userland
-	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
-	exit ;;
-    i*86:Minix:*:*)
-	echo ${UNAME_MACHINE}-pc-minix
-	exit ;;
-    alpha:Linux:*:*)
-	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-	  EV5)   UNAME_MACHINE=alphaev5 ;;
-	  EV56)  UNAME_MACHINE=alphaev56 ;;
-	  PCA56) UNAME_MACHINE=alphapca56 ;;
-	  PCA57) UNAME_MACHINE=alphapca56 ;;
-	  EV6)   UNAME_MACHINE=alphaev6 ;;
-	  EV67)  UNAME_MACHINE=alphaev67 ;;
-	  EV68*) UNAME_MACHINE=alphaev68 ;;
-        esac
-	objdump --private-headers /bin/sh | grep -q ld.so.1
-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
-	exit ;;
-    arm*:Linux:*:*)
-	eval $set_cc_for_build
-	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
-	    | grep -q __ARM_EABI__
-	then
-	    echo ${UNAME_MACHINE}-unknown-linux-gnu
-	else
-	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
-	fi
-	exit ;;
-    avr32*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    cris:Linux:*:*)
-	echo cris-axis-linux-gnu
-	exit ;;
-    crisv32:Linux:*:*)
-	echo crisv32-axis-linux-gnu
-	exit ;;
-    frv:Linux:*:*)
-    	echo frv-unknown-linux-gnu
-	exit ;;
-    i*86:Linux:*:*)
-	LIBC=gnu
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#ifdef __dietlibc__
-	LIBC=dietlibc
-	#endif
-EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
-	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
-	exit ;;
-    ia64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    m32r*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    m68*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    mips:Linux:*:* | mips64:Linux:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#undef CPU
-	#undef ${UNAME_MACHINE}
-	#undef ${UNAME_MACHINE}el
-	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=${UNAME_MACHINE}el
-	#else
-	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=${UNAME_MACHINE}
-	#else
-	CPU=
-	#endif
-	#endif
-EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-	;;
-    or32:Linux:*:*)
-	echo or32-unknown-linux-gnu
-	exit ;;
-    padre:Linux:*:*)
-	echo sparc-unknown-linux-gnu
-	exit ;;
-    parisc64:Linux:*:* | hppa64:Linux:*:*)
-	echo hppa64-unknown-linux-gnu
-	exit ;;
-    parisc:Linux:*:* | hppa:Linux:*:*)
-	# Look for CPU level
-	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
-	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
-	  *)    echo hppa-unknown-linux-gnu ;;
-	esac
-	exit ;;
-    ppc64:Linux:*:*)
-	echo powerpc64-unknown-linux-gnu
-	exit ;;
-    ppc:Linux:*:*)
-	echo powerpc-unknown-linux-gnu
-	exit ;;
-    s390:Linux:*:* | s390x:Linux:*:*)
-	echo ${UNAME_MACHINE}-ibm-linux
-	exit ;;
-    sh64*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    sh*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    sparc:Linux:*:* | sparc64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    vax:Linux:*:*)
-	echo ${UNAME_MACHINE}-dec-linux-gnu
-	exit ;;
-    x86_64:Linux:*:*)
-	echo x86_64-unknown-linux-gnu
-	exit ;;
-    xtensa*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    i*86:DYNIX/ptx:4*:*)
-	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
-	# earlier versions are messed up and put the nodename in both
-	# sysname and nodename.
-	echo i386-sequent-sysv4
-	exit ;;
-    i*86:UNIX_SV:4.2MP:2.*)
-        # Unixware is an offshoot of SVR4, but it has its own version
-        # number series starting with 2...
-        # I am not positive that other SVR4 systems won't match this,
-	# I just have to hope.  -- rms.
-        # Use sysv4.2uw... so that sysv4* matches it.
-	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
-	exit ;;
-    i*86:OS/2:*:*)
-	# If we were able to find `uname', then EMX Unix compatibility
-	# is probably installed.
-	echo ${UNAME_MACHINE}-pc-os2-emx
-	exit ;;
-    i*86:XTS-300:*:STOP)
-	echo ${UNAME_MACHINE}-unknown-stop
-	exit ;;
-    i*86:atheos:*:*)
-	echo ${UNAME_MACHINE}-unknown-atheos
-	exit ;;
-    i*86:syllable:*:*)
-	echo ${UNAME_MACHINE}-pc-syllable
-	exit ;;
-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
-	echo i386-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    i*86:*DOS:*:*)
-	echo ${UNAME_MACHINE}-pc-msdosdjgpp
-	exit ;;
-    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
-	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
-	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
-		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
-	else
-		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
-	fi
-	exit ;;
-    i*86:*:5:[678]*)
-    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
-	case `/bin/uname -X | grep "^Machine"` in
-	    *486*)	     UNAME_MACHINE=i486 ;;
-	    *Pentium)	     UNAME_MACHINE=i586 ;;
-	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
-	esac
-	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
-	exit ;;
-    i*86:*:3.2:*)
-	if test -f /usr/options/cb.name; then
-		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
-		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
-	elif /bin/uname -X 2>/dev/null >/dev/null ; then
-		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
-		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
-		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
-			&& UNAME_MACHINE=i586
-		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
-			&& UNAME_MACHINE=i686
-		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
-			&& UNAME_MACHINE=i686
-		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
-	else
-		echo ${UNAME_MACHINE}-pc-sysv32
-	fi
-	exit ;;
-    pc:*:*:*)
-	# Left here for compatibility:
-        # uname -m prints for DJGPP always 'pc', but it prints nothing about
-        # the processor, so we play safe by assuming i586.
-	# Note: whatever this is, it MUST be the same as what config.sub
-	# prints for the "djgpp" host, or else GDB configury will decide that
-	# this is a cross-build.
-	echo i586-pc-msdosdjgpp
-        exit ;;
-    Intel:Mach:3*:*)
-	echo i386-pc-mach3
-	exit ;;
-    paragon:*:*:*)
-	echo i860-intel-osf1
-	exit ;;
-    i860:*:4.*:*) # i860-SVR4
-	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
-	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
-	else # Add other i860-SVR4 vendors below as they are discovered.
-	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
-	fi
-	exit ;;
-    mini*:CTIX:SYS*5:*)
-	# "miniframe"
-	echo m68010-convergent-sysv
-	exit ;;
-    mc68k:UNIX:SYSTEM5:3.51m)
-	echo m68k-convergent-sysv
-	exit ;;
-    M680?0:D-NIX:5.3:*)
-	echo m68k-diab-dnix
-	exit ;;
-    M68*:*:R3V[5678]*:*)
-	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
-    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
-	OS_REL=''
-	test -r /etc/.relid \
-	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
-	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
-    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
-        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-          && { echo i486-ncr-sysv4; exit; } ;;
-    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
-	OS_REL='.3'
-	test -r /etc/.relid \
-	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
-	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
-    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
-	echo m68k-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    mc68030:UNIX_System_V:4.*:*)
-	echo m68k-atari-sysv4
-	exit ;;
-    TSUNAMI:LynxOS:2.*:*)
-	echo sparc-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    rs6000:LynxOS:2.*:*)
-	echo rs6000-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
-	echo powerpc-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    SM[BE]S:UNIX_SV:*:*)
-	echo mips-dde-sysv${UNAME_RELEASE}
-	exit ;;
-    RM*:ReliantUNIX-*:*:*)
-	echo mips-sni-sysv4
-	exit ;;
-    RM*:SINIX-*:*:*)
-	echo mips-sni-sysv4
-	exit ;;
-    *:SINIX-*:*:*)
-	if uname -p 2>/dev/null >/dev/null ; then
-		UNAME_MACHINE=`(uname -p) 2>/dev/null`
-		echo ${UNAME_MACHINE}-sni-sysv4
-	else
-		echo ns32k-sni-sysv
-	fi
-	exit ;;
-    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-                      # says <Richard.M.Bartel at ccMail.Census.GOV>
-        echo i586-unisys-sysv4
-        exit ;;
-    *:UNIX_System_V:4*:FTX*)
-	# From Gerald Hewes <hewes at openmarket.com>.
-	# How about differentiating between stratus architectures? -djm
-	echo hppa1.1-stratus-sysv4
-	exit ;;
-    *:*:*:FTX*)
-	# From seanf at swdc.stratus.com.
-	echo i860-stratus-sysv4
-	exit ;;
-    i*86:VOS:*:*)
-	# From Paul.Green at stratus.com.
-	echo ${UNAME_MACHINE}-stratus-vos
-	exit ;;
-    *:VOS:*:*)
-	# From Paul.Green at stratus.com.
-	echo hppa1.1-stratus-vos
-	exit ;;
-    mc68*:A/UX:*:*)
-	echo m68k-apple-aux${UNAME_RELEASE}
-	exit ;;
-    news*:NEWS-OS:6*:*)
-	echo mips-sony-newsos6
-	exit ;;
-    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
-	if [ -d /usr/nec ]; then
-	        echo mips-nec-sysv${UNAME_RELEASE}
-	else
-	        echo mips-unknown-sysv${UNAME_RELEASE}
-	fi
-        exit ;;
-    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
-	echo powerpc-be-beos
-	exit ;;
-    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
-	echo powerpc-apple-beos
-	exit ;;
-    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
-	echo i586-pc-beos
-	exit ;;
-    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
-	echo i586-pc-haiku
-	exit ;;
-    SX-4:SUPER-UX:*:*)
-	echo sx4-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-5:SUPER-UX:*:*)
-	echo sx5-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-6:SUPER-UX:*:*)
-	echo sx6-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-7:SUPER-UX:*:*)
-	echo sx7-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-8:SUPER-UX:*:*)
-	echo sx8-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-8R:SUPER-UX:*:*)
-	echo sx8r-nec-superux${UNAME_RELEASE}
-	exit ;;
-    Power*:Rhapsody:*:*)
-	echo powerpc-apple-rhapsody${UNAME_RELEASE}
-	exit ;;
-    *:Rhapsody:*:*)
-	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
-	exit ;;
-    *:Darwin:*:*)
-	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-	case $UNAME_PROCESSOR in
-	    i386)
-		eval $set_cc_for_build
-		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
-		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		      grep IS_64BIT_ARCH >/dev/null
-		  then
-		      UNAME_PROCESSOR="x86_64"
-		  fi
-		fi ;;
-	    unknown) UNAME_PROCESSOR=powerpc ;;
-	esac
-	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
-	exit ;;
-    *:procnto*:*:* | *:QNX:[0123456789]*:*)
-	UNAME_PROCESSOR=`uname -p`
-	if test "$UNAME_PROCESSOR" = "x86"; then
-		UNAME_PROCESSOR=i386
-		UNAME_MACHINE=pc
-	fi
-	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
-	exit ;;
-    *:QNX:*:4*)
-	echo i386-pc-qnx
-	exit ;;
-    NSE-?:NONSTOP_KERNEL:*:*)
-	echo nse-tandem-nsk${UNAME_RELEASE}
-	exit ;;
-    NSR-?:NONSTOP_KERNEL:*:*)
-	echo nsr-tandem-nsk${UNAME_RELEASE}
-	exit ;;
-    *:NonStop-UX:*:*)
-	echo mips-compaq-nonstopux
-	exit ;;
-    BS2000:POSIX*:*:*)
-	echo bs2000-siemens-sysv
-	exit ;;
-    DS/*:UNIX_System_V:*:*)
-	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
-	exit ;;
-    *:Plan9:*:*)
-	# "uname -m" is not consistent, so use $cputype instead. 386
-	# is converted to i386 for consistency with other x86
-	# operating systems.
-	if test "$cputype" = "386"; then
-	    UNAME_MACHINE=i386
-	else
-	    UNAME_MACHINE="$cputype"
-	fi
-	echo ${UNAME_MACHINE}-unknown-plan9
-	exit ;;
-    *:TOPS-10:*:*)
-	echo pdp10-unknown-tops10
-	exit ;;
-    *:TENEX:*:*)
-	echo pdp10-unknown-tenex
-	exit ;;
-    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
-	echo pdp10-dec-tops20
-	exit ;;
-    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
-	echo pdp10-xkl-tops20
-	exit ;;
-    *:TOPS-20:*:*)
-	echo pdp10-unknown-tops20
-	exit ;;
-    *:ITS:*:*)
-	echo pdp10-unknown-its
-	exit ;;
-    SEI:*:*:SEIUX)
-        echo mips-sei-seiux${UNAME_RELEASE}
-	exit ;;
-    *:DragonFly:*:*)
-	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-	exit ;;
-    *:*VMS:*:*)
-    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
-	case "${UNAME_MACHINE}" in
-	    A*) echo alpha-dec-vms ; exit ;;
-	    I*) echo ia64-dec-vms ; exit ;;
-	    V*) echo vax-dec-vms ; exit ;;
-	esac ;;
-    *:XENIX:*:SysV)
-	echo i386-pc-xenix
-	exit ;;
-    i*86:skyos:*:*)
-	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
-	exit ;;
-    i*86:rdos:*:*)
-	echo ${UNAME_MACHINE}-pc-rdos
-	exit ;;
-    i*86:AROS:*:*)
-	echo ${UNAME_MACHINE}-pc-aros
-	exit ;;
-esac
-
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
-  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
-     I don't know....  */
-  printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
-  printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
-          "4"
-#else
-	  ""
-#endif
-         ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
-  printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
-  printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
-  int version;
-  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
-  if (version < 4)
-    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
-  else
-    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
-  exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
-  printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
-  printf ("ns32k-encore-mach\n"); exit (0);
-#else
-  printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
-  printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
-  printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
-  printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
-    struct utsname un;
-
-    uname(&un);
-
-    if (strncmp(un.version, "V2", 2) == 0) {
-	printf ("i386-sequent-ptx2\n"); exit (0);
-    }
-    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
-	printf ("i386-sequent-ptx1\n"); exit (0);
-    }
-    printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-#  include <sys/param.h>
-#  if defined (BSD)
-#   if BSD == 43
-      printf ("vax-dec-bsd4.3\n"); exit (0);
-#   else
-#    if BSD == 199006
-      printf ("vax-dec-bsd4.3reno\n"); exit (0);
-#    else
-      printf ("vax-dec-bsd\n"); exit (0);
-#    endif
-#   endif
-#  else
-    printf ("vax-dec-bsd\n"); exit (0);
-#  endif
-# else
-    printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
-  printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
-  exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
-	{ echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
-    case `getsysinfo -f cpu_type` in
-    c1*)
-	echo c1-convex-bsd
-	exit ;;
-    c2*)
-	if getsysinfo -f scalar_acc
-	then echo c32-convex-bsd
-	else echo c2-convex-bsd
-	fi
-	exit ;;
-    c34*)
-	echo c34-convex-bsd
-	exit ;;
-    c38*)
-	echo c38-convex-bsd
-	exit ;;
-    c4*)
-	echo c4-convex-bsd
-	exit ;;
-    esac
-fi
-
-cat >&2 <<EOF
-$0: unable to guess system type
-
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
-
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-and
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patches at gnu.org> in order to provide the needed
-information to handle your system.
-
-config.guess timestamp = $timestamp
-
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
-
-hostinfo               = `(hostinfo) 2>/dev/null`
-/bin/universe          = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch              = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM  = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
-EOF
-
-exit 1
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/src/other/curl/config.sub b/src/other/curl/config.sub
deleted file mode 100755
index 2a55a50..0000000
--- a/src/other/curl/config.sub
+++ /dev/null
@@ -1,1705 +0,0 @@
-#! /bin/sh
-# Configuration validation subroutine script.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
-#   Free Software Foundation, Inc.
-
-timestamp='2009-11-20'
-
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine.  It does not imply ALL GNU software can.
-#
-# 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 2 of the License, 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 General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Please send patches to <config-patches at gnu.org>.  Submit a context
-# diff and a properly formatted GNU ChangeLog entry.
-#
-# Configuration subroutine to validate and canonicalize a configuration type.
-# Supply the specified configuration type as an argument.
-# If it is invalid, we print an error message on stderr and exit with code 1.
-# Otherwise, we print the canonical config type on stdout and succeed.
-
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-# This file is supposed to be the same for all GNU packages
-# and recognize all the CPU types, system types and aliases
-# that are meaningful with *any* GNU software.
-# Each package is responsible for reporting which valid configurations
-# it does not support.  The user should be able to distinguish
-# a failure to support a valid configuration from a meaningless
-# configuration.
-
-# The goal of this file is to map all the various variations of a given
-# machine specification into a single specification in the form:
-#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
-# or in some cases, the newer four-part form:
-#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
-# It is wrong to echo any other type of specification.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
-       $0 [OPTION] ALIAS
-
-Canonicalize a configuration name.
-
-Operation modes:
-  -h, --help         print this help, then exit
-  -t, --time-stamp   print date of last modification, then exit
-  -v, --version      print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.sub ($timestamp)
-
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 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."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
-  case $1 in
-    --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit ;;
-    --version | -v )
-       echo "$version" ; exit ;;
-    --help | --h* | -h )
-       echo "$usage"; exit ;;
-    -- )     # Stop option processing
-       shift; break ;;
-    - )	# Use stdin as input.
-       break ;;
-    -* )
-       echo "$me: invalid option $1$help"
-       exit 1 ;;
-
-    *local*)
-       # First pass through any local machine types.
-       echo $1
-       exit ;;
-
-    * )
-       break ;;
-  esac
-done
-
-case $# in
- 0) echo "$me: missing argument$help" >&2
-    exit 1;;
- 1) ;;
- *) echo "$me: too many arguments$help" >&2
-    exit 1;;
-esac
-
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
-  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
-  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
-  kopensolaris*-gnu* | \
-  storm-chaos* | os2-emx* | rtmk-nova*)
-    os=-$maybe_os
-    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
-    ;;
-  *)
-    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
-    if [ $basic_machine != $1 ]
-    then os=`echo $1 | sed 's/.*-/-/'`
-    else os=; fi
-    ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work.  We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
-	-sun*os*)
-		# Prevent following clause from handling this invalid input.
-		;;
-	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
-	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
-	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
-	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-	-apple | -axis | -knuth | -cray | -microblaze)
-		os=
-		basic_machine=$1
-		;;
-        -bluegene*)
-	        os=-cnk
-		;;
-	-sim | -cisco | -oki | -wec | -winbond)
-		os=
-		basic_machine=$1
-		;;
-	-scout)
-		;;
-	-wrs)
-		os=-vxworks
-		basic_machine=$1
-		;;
-	-chorusos*)
-		os=-chorusos
-		basic_machine=$1
-		;;
- 	-chorusrdb)
- 		os=-chorusrdb
-		basic_machine=$1
- 		;;
-	-hiux*)
-		os=-hiuxwe2
-		;;
-	-sco6)
-		os=-sco5v6
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco5)
-		os=-sco3.2v5
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco4)
-		os=-sco3.2v4
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco3.2.[4-9]*)
-		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco3.2v[4-9]*)
-		# Don't forget version if it is 3.2v4 or newer.
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco5v6*)
-		# Don't forget version if it is 3.2v4 or newer.
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco*)
-		os=-sco3.2v2
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-udk*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-isc)
-		os=-isc2.2
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-clix*)
-		basic_machine=clipper-intergraph
-		;;
-	-isc*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-lynx*)
-		os=-lynxos
-		;;
-	-ptx*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
-		;;
-	-windowsnt*)
-		os=`echo $os | sed -e 's/windowsnt/winnt/'`
-		;;
-	-psos*)
-		os=-psos
-		;;
-	-mint | -mint[0-9]*)
-		basic_machine=m68k-atari
-		os=-mint
-		;;
-esac
-
-# Decode aliases for certain CPU-COMPANY combinations.
-case $basic_machine in
-	# Recognize the basic CPU types without company name.
-	# Some are omitted here because they have special meanings below.
-	1750a | 580 \
-	| a29k \
-	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
-	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
-	| am33_2.0 \
-	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
-	| bfin \
-	| c4x | clipper \
-	| d10v | d30v | dlx | dsp16xx \
-	| fido | fr30 | frv \
-	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
-	| i370 | i860 | i960 | ia64 \
-	| ip2k | iq2000 \
-	| lm32 \
-	| m32c | m32r | m32rle | m68000 | m68k | m88k \
-	| maxq | mb | microblaze | mcore | mep | metag \
-	| mips | mipsbe | mipseb | mipsel | mipsle \
-	| mips16 \
-	| mips64 | mips64el \
-	| mips64octeon | mips64octeonel \
-	| mips64orion | mips64orionel \
-	| mips64r5900 | mips64r5900el \
-	| mips64vr | mips64vrel \
-	| mips64vr4100 | mips64vr4100el \
-	| mips64vr4300 | mips64vr4300el \
-	| mips64vr5000 | mips64vr5000el \
-	| mips64vr5900 | mips64vr5900el \
-	| mipsisa32 | mipsisa32el \
-	| mipsisa32r2 | mipsisa32r2el \
-	| mipsisa64 | mipsisa64el \
-	| mipsisa64r2 | mipsisa64r2el \
-	| mipsisa64sb1 | mipsisa64sb1el \
-	| mipsisa64sr71k | mipsisa64sr71kel \
-	| mipstx39 | mipstx39el \
-	| mn10200 | mn10300 \
-	| moxie \
-	| mt \
-	| msp430 \
-	| nios | nios2 \
-	| ns16k | ns32k \
-	| or32 \
-	| pdp10 | pdp11 | pj | pjl \
-	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
-	| pyramid \
-	| rx \
-	| score \
-	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
-	| sh64 | sh64le \
-	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
-	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
-	| spu | strongarm \
-	| tahoe | thumb | tic4x | tic80 | tron \
-	| ubicom32 \
-	| v850 | v850e \
-	| we32k \
-	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
-	| z8k | z80)
-		basic_machine=$basic_machine-unknown
-		;;
-	m6811 | m68hc11 | m6812 | m68hc12 | picochip)
-		# Motorola 68HC11/12.
-		basic_machine=$basic_machine-unknown
-		os=-none
-		;;
-	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
-		;;
-	ms1)
-		basic_machine=mt-unknown
-		;;
-
-	# We use `pc' rather than `unknown'
-	# because (1) that's what they normally are, and
-	# (2) the word "unknown" tends to confuse beginning users.
-	i*86 | x86_64)
-	  basic_machine=$basic_machine-pc
-	  ;;
-	# Object if more than one company name word.
-	*-*-*)
-		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-		exit 1
-		;;
-	# Recognize the basic CPU types with company name.
-	580-* \
-	| a29k-* \
-	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
-	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
-	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
-	| avr-* | avr32-* \
-	| bfin-* | bs2000-* \
-	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
-	| clipper-* | craynv-* | cydra-* \
-	| d10v-* | d30v-* | dlx-* \
-	| elxsi-* \
-	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
-	| h8300-* | h8500-* \
-	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
-	| i*86-* | i860-* | i960-* | ia64-* \
-	| ip2k-* | iq2000-* \
-	| lm32-* \
-	| m32c-* | m32r-* | m32rle-* \
-	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
-	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
-	| mips16-* \
-	| mips64-* | mips64el-* \
-	| mips64octeon-* | mips64octeonel-* \
-	| mips64orion-* | mips64orionel-* \
-	| mips64r5900-* | mips64r5900el-* \
-	| mips64vr-* | mips64vrel-* \
-	| mips64vr4100-* | mips64vr4100el-* \
-	| mips64vr4300-* | mips64vr4300el-* \
-	| mips64vr5000-* | mips64vr5000el-* \
-	| mips64vr5900-* | mips64vr5900el-* \
-	| mipsisa32-* | mipsisa32el-* \
-	| mipsisa32r2-* | mipsisa32r2el-* \
-	| mipsisa64-* | mipsisa64el-* \
-	| mipsisa64r2-* | mipsisa64r2el-* \
-	| mipsisa64sb1-* | mipsisa64sb1el-* \
-	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
-	| mipstx39-* | mipstx39el-* \
-	| mmix-* \
-	| mt-* \
-	| msp430-* \
-	| nios-* | nios2-* \
-	| none-* | np1-* | ns16k-* | ns32k-* \
-	| orion-* \
-	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
-	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
-	| pyramid-* \
-	| romp-* | rs6000-* | rx-* \
-	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
-	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
-	| sparclite-* \
-	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
-	| tahoe-* | thumb-* \
-	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
-	| tron-* \
-	| ubicom32-* \
-	| v850-* | v850e-* | vax-* \
-	| we32k-* \
-	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
-	| xstormy16-* | xtensa*-* \
-	| ymp-* \
-	| z8k-* | z80-*)
-		;;
-	# Recognize the basic CPU types without company name, with glob match.
-	xtensa*)
-		basic_machine=$basic_machine-unknown
-		;;
-	# Recognize the various machine names and aliases which stand
-	# for a CPU type and a company and sometimes even an OS.
-	386bsd)
-		basic_machine=i386-unknown
-		os=-bsd
-		;;
-	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
-		basic_machine=m68000-att
-		;;
-	3b*)
-		basic_machine=we32k-att
-		;;
-	a29khif)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-    	abacus)
-		basic_machine=abacus-unknown
-		;;
-	adobe68k)
-		basic_machine=m68010-adobe
-		os=-scout
-		;;
-	alliant | fx80)
-		basic_machine=fx80-alliant
-		;;
-	altos | altos3068)
-		basic_machine=m68k-altos
-		;;
-	am29k)
-		basic_machine=a29k-none
-		os=-bsd
-		;;
-	amd64)
-		basic_machine=x86_64-pc
-		;;
-	amd64-*)
-		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	amdahl)
-		basic_machine=580-amdahl
-		os=-sysv
-		;;
-	amiga | amiga-*)
-		basic_machine=m68k-unknown
-		;;
-	amigaos | amigados)
-		basic_machine=m68k-unknown
-		os=-amigaos
-		;;
-	amigaunix | amix)
-		basic_machine=m68k-unknown
-		os=-sysv4
-		;;
-	apollo68)
-		basic_machine=m68k-apollo
-		os=-sysv
-		;;
-	apollo68bsd)
-		basic_machine=m68k-apollo
-		os=-bsd
-		;;
-	aros)
-		basic_machine=i386-pc
-		os=-aros
-		;;
-	aux)
-		basic_machine=m68k-apple
-		os=-aux
-		;;
-	balance)
-		basic_machine=ns32k-sequent
-		os=-dynix
-		;;
-	blackfin)
-		basic_machine=bfin-unknown
-		os=-linux
-		;;
-	blackfin-*)
-		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
-	bluegene*)
-		basic_machine=powerpc-ibm
-		os=-cnk
-		;;
-	c90)
-		basic_machine=c90-cray
-		os=-unicos
-		;;
-        cegcc)
-		basic_machine=arm-unknown
-		os=-cegcc
-		;;
-	convex-c1)
-		basic_machine=c1-convex
-		os=-bsd
-		;;
-	convex-c2)
-		basic_machine=c2-convex
-		os=-bsd
-		;;
-	convex-c32)
-		basic_machine=c32-convex
-		os=-bsd
-		;;
-	convex-c34)
-		basic_machine=c34-convex
-		os=-bsd
-		;;
-	convex-c38)
-		basic_machine=c38-convex
-		os=-bsd
-		;;
-	cray | j90)
-		basic_machine=j90-cray
-		os=-unicos
-		;;
-	craynv)
-		basic_machine=craynv-cray
-		os=-unicosmp
-		;;
-	cr16)
-		basic_machine=cr16-unknown
-		os=-elf
-		;;
-	crds | unos)
-		basic_machine=m68k-crds
-		;;
-	crisv32 | crisv32-* | etraxfs*)
-		basic_machine=crisv32-axis
-		;;
-	cris | cris-* | etrax*)
-		basic_machine=cris-axis
-		;;
-	crx)
-		basic_machine=crx-unknown
-		os=-elf
-		;;
-	da30 | da30-*)
-		basic_machine=m68k-da30
-		;;
-	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
-		basic_machine=mips-dec
-		;;
-	decsystem10* | dec10*)
-		basic_machine=pdp10-dec
-		os=-tops10
-		;;
-	decsystem20* | dec20*)
-		basic_machine=pdp10-dec
-		os=-tops20
-		;;
-	delta | 3300 | motorola-3300 | motorola-delta \
-	      | 3300-motorola | delta-motorola)
-		basic_machine=m68k-motorola
-		;;
-	delta88)
-		basic_machine=m88k-motorola
-		os=-sysv3
-		;;
-	dicos)
-		basic_machine=i686-pc
-		os=-dicos
-		;;
-	djgpp)
-		basic_machine=i586-pc
-		os=-msdosdjgpp
-		;;
-	dpx20 | dpx20-*)
-		basic_machine=rs6000-bull
-		os=-bosx
-		;;
-	dpx2* | dpx2*-bull)
-		basic_machine=m68k-bull
-		os=-sysv3
-		;;
-	ebmon29k)
-		basic_machine=a29k-amd
-		os=-ebmon
-		;;
-	elxsi)
-		basic_machine=elxsi-elxsi
-		os=-bsd
-		;;
-	encore | umax | mmax)
-		basic_machine=ns32k-encore
-		;;
-	es1800 | OSE68k | ose68k | ose | OSE)
-		basic_machine=m68k-ericsson
-		os=-ose
-		;;
-	fx2800)
-		basic_machine=i860-alliant
-		;;
-	genix)
-		basic_machine=ns32k-ns
-		;;
-	gmicro)
-		basic_machine=tron-gmicro
-		os=-sysv
-		;;
-	go32)
-		basic_machine=i386-pc
-		os=-go32
-		;;
-	h3050r* | hiux*)
-		basic_machine=hppa1.1-hitachi
-		os=-hiuxwe2
-		;;
-	h8300hms)
-		basic_machine=h8300-hitachi
-		os=-hms
-		;;
-	h8300xray)
-		basic_machine=h8300-hitachi
-		os=-xray
-		;;
-	h8500hms)
-		basic_machine=h8500-hitachi
-		os=-hms
-		;;
-	harris)
-		basic_machine=m88k-harris
-		os=-sysv3
-		;;
-	hp300-*)
-		basic_machine=m68k-hp
-		;;
-	hp300bsd)
-		basic_machine=m68k-hp
-		os=-bsd
-		;;
-	hp300hpux)
-		basic_machine=m68k-hp
-		os=-hpux
-		;;
-	hp3k9[0-9][0-9] | hp9[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hp9k2[0-9][0-9] | hp9k31[0-9])
-		basic_machine=m68000-hp
-		;;
-	hp9k3[2-9][0-9])
-		basic_machine=m68k-hp
-		;;
-	hp9k6[0-9][0-9] | hp6[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hp9k7[0-79][0-9] | hp7[0-79][0-9])
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k78[0-9] | hp78[0-9])
-		# FIXME: really hppa2.0-hp
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
-		# FIXME: really hppa2.0-hp
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k8[0-9][13679] | hp8[0-9][13679])
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k8[0-9][0-9] | hp8[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hppa-next)
-		os=-nextstep3
-		;;
-	hppaosf)
-		basic_machine=hppa1.1-hp
-		os=-osf
-		;;
-	hppro)
-		basic_machine=hppa1.1-hp
-		os=-proelf
-		;;
-	i370-ibm* | ibm*)
-		basic_machine=i370-ibm
-		;;
-# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
-	i*86v32)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv32
-		;;
-	i*86v4*)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv4
-		;;
-	i*86v)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv
-		;;
-	i*86sol2)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-solaris2
-		;;
-	i386mach)
-		basic_machine=i386-mach
-		os=-mach
-		;;
-	i386-vsta | vsta)
-		basic_machine=i386-unknown
-		os=-vsta
-		;;
-	iris | iris4d)
-		basic_machine=mips-sgi
-		case $os in
-		    -irix*)
-			;;
-		    *)
-			os=-irix4
-			;;
-		esac
-		;;
-	isi68 | isi)
-		basic_machine=m68k-isi
-		os=-sysv
-		;;
-	m68knommu)
-		basic_machine=m68k-unknown
-		os=-linux
-		;;
-	m68knommu-*)
-		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
-	m88k-omron*)
-		basic_machine=m88k-omron
-		;;
-	magnum | m3230)
-		basic_machine=mips-mips
-		os=-sysv
-		;;
-	merlin)
-		basic_machine=ns32k-utek
-		os=-sysv
-		;;
-        microblaze)
-		basic_machine=microblaze-xilinx
-		;;
-	mingw32)
-		basic_machine=i386-pc
-		os=-mingw32
-		;;
-	mingw32ce)
-		basic_machine=arm-unknown
-		os=-mingw32ce
-		;;
-	miniframe)
-		basic_machine=m68000-convergent
-		;;
-	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
-		basic_machine=m68k-atari
-		os=-mint
-		;;
-	mips3*-*)
-		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
-		;;
-	mips3*)
-		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
-		;;
-	monitor)
-		basic_machine=m68k-rom68k
-		os=-coff
-		;;
-	morphos)
-		basic_machine=powerpc-unknown
-		os=-morphos
-		;;
-	msdos)
-		basic_machine=i386-pc
-		os=-msdos
-		;;
-	ms1-*)
-		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
-		;;
-	mvs)
-		basic_machine=i370-ibm
-		os=-mvs
-		;;
-	ncr3000)
-		basic_machine=i486-ncr
-		os=-sysv4
-		;;
-	netbsd386)
-		basic_machine=i386-unknown
-		os=-netbsd
-		;;
-	netwinder)
-		basic_machine=armv4l-rebel
-		os=-linux
-		;;
-	news | news700 | news800 | news900)
-		basic_machine=m68k-sony
-		os=-newsos
-		;;
-	news1000)
-		basic_machine=m68030-sony
-		os=-newsos
-		;;
-	news-3600 | risc-news)
-		basic_machine=mips-sony
-		os=-newsos
-		;;
-	necv70)
-		basic_machine=v70-nec
-		os=-sysv
-		;;
-	next | m*-next )
-		basic_machine=m68k-next
-		case $os in
-		    -nextstep* )
-			;;
-		    -ns2*)
-		      os=-nextstep2
-			;;
-		    *)
-		      os=-nextstep3
-			;;
-		esac
-		;;
-	nh3000)
-		basic_machine=m68k-harris
-		os=-cxux
-		;;
-	nh[45]000)
-		basic_machine=m88k-harris
-		os=-cxux
-		;;
-	nindy960)
-		basic_machine=i960-intel
-		os=-nindy
-		;;
-	mon960)
-		basic_machine=i960-intel
-		os=-mon960
-		;;
-	nonstopux)
-		basic_machine=mips-compaq
-		os=-nonstopux
-		;;
-	np1)
-		basic_machine=np1-gould
-		;;
-	nsr-tandem)
-		basic_machine=nsr-tandem
-		;;
-	op50n-* | op60c-*)
-		basic_machine=hppa1.1-oki
-		os=-proelf
-		;;
-	openrisc | openrisc-*)
-		basic_machine=or32-unknown
-		;;
-	os400)
-		basic_machine=powerpc-ibm
-		os=-os400
-		;;
-	OSE68000 | ose68000)
-		basic_machine=m68000-ericsson
-		os=-ose
-		;;
-	os68k)
-		basic_machine=m68k-none
-		os=-os68k
-		;;
-	pa-hitachi)
-		basic_machine=hppa1.1-hitachi
-		os=-hiuxwe2
-		;;
-	paragon)
-		basic_machine=i860-intel
-		os=-osf
-		;;
-	parisc)
-		basic_machine=hppa-unknown
-		os=-linux
-		;;
-	parisc-*)
-		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
-	pbd)
-		basic_machine=sparc-tti
-		;;
-	pbb)
-		basic_machine=m68k-tti
-		;;
-	pc532 | pc532-*)
-		basic_machine=ns32k-pc532
-		;;
-	pc98)
-		basic_machine=i386-pc
-		;;
-	pc98-*)
-		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentium | p5 | k5 | k6 | nexgen | viac3)
-		basic_machine=i586-pc
-		;;
-	pentiumpro | p6 | 6x86 | athlon | athlon_*)
-		basic_machine=i686-pc
-		;;
-	pentiumii | pentium2 | pentiumiii | pentium3)
-		basic_machine=i686-pc
-		;;
-	pentium4)
-		basic_machine=i786-pc
-		;;
-	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
-		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentiumpro-* | p6-* | 6x86-* | athlon-*)
-		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
-		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentium4-*)
-		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pn)
-		basic_machine=pn-gould
-		;;
-	power)	basic_machine=power-ibm
-		;;
-	ppc)	basic_machine=powerpc-unknown
-		;;
-	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ppcle | powerpclittle | ppc-le | powerpc-little)
-		basic_machine=powerpcle-unknown
-		;;
-	ppcle-* | powerpclittle-*)
-		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ppc64)	basic_machine=powerpc64-unknown
-		;;
-	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
-		basic_machine=powerpc64le-unknown
-		;;
-	ppc64le-* | powerpc64little-*)
-		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ps2)
-		basic_machine=i386-ibm
-		;;
-	pw32)
-		basic_machine=i586-unknown
-		os=-pw32
-		;;
-	rdos)
-		basic_machine=i386-pc
-		os=-rdos
-		;;
-	rom68k)
-		basic_machine=m68k-rom68k
-		os=-coff
-		;;
-	rm[46]00)
-		basic_machine=mips-siemens
-		;;
-	rtpc | rtpc-*)
-		basic_machine=romp-ibm
-		;;
-	s390 | s390-*)
-		basic_machine=s390-ibm
-		;;
-	s390x | s390x-*)
-		basic_machine=s390x-ibm
-		;;
-	sa29200)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-	sb1)
-		basic_machine=mipsisa64sb1-unknown
-		;;
-	sb1el)
-		basic_machine=mipsisa64sb1el-unknown
-		;;
-	sde)
-		basic_machine=mipsisa32-sde
-		os=-elf
-		;;
-	sei)
-		basic_machine=mips-sei
-		os=-seiux
-		;;
-	sequent)
-		basic_machine=i386-sequent
-		;;
-	sh)
-		basic_machine=sh-hitachi
-		os=-hms
-		;;
-	sh5el)
-		basic_machine=sh5le-unknown
-		;;
-	sh64)
-		basic_machine=sh64-unknown
-		;;
-	sparclite-wrs | simso-wrs)
-		basic_machine=sparclite-wrs
-		os=-vxworks
-		;;
-	sps7)
-		basic_machine=m68k-bull
-		os=-sysv2
-		;;
-	spur)
-		basic_machine=spur-unknown
-		;;
-	st2000)
-		basic_machine=m68k-tandem
-		;;
-	stratus)
-		basic_machine=i860-stratus
-		os=-sysv4
-		;;
-	sun2)
-		basic_machine=m68000-sun
-		;;
-	sun2os3)
-		basic_machine=m68000-sun
-		os=-sunos3
-		;;
-	sun2os4)
-		basic_machine=m68000-sun
-		os=-sunos4
-		;;
-	sun3os3)
-		basic_machine=m68k-sun
-		os=-sunos3
-		;;
-	sun3os4)
-		basic_machine=m68k-sun
-		os=-sunos4
-		;;
-	sun4os3)
-		basic_machine=sparc-sun
-		os=-sunos3
-		;;
-	sun4os4)
-		basic_machine=sparc-sun
-		os=-sunos4
-		;;
-	sun4sol2)
-		basic_machine=sparc-sun
-		os=-solaris2
-		;;
-	sun3 | sun3-*)
-		basic_machine=m68k-sun
-		;;
-	sun4)
-		basic_machine=sparc-sun
-		;;
-	sun386 | sun386i | roadrunner)
-		basic_machine=i386-sun
-		;;
-	sv1)
-		basic_machine=sv1-cray
-		os=-unicos
-		;;
-	symmetry)
-		basic_machine=i386-sequent
-		os=-dynix
-		;;
-	t3e)
-		basic_machine=alphaev5-cray
-		os=-unicos
-		;;
-	t90)
-		basic_machine=t90-cray
-		os=-unicos
-		;;
-	tic54x | c54x*)
-		basic_machine=tic54x-unknown
-		os=-coff
-		;;
-	tic55x | c55x*)
-		basic_machine=tic55x-unknown
-		os=-coff
-		;;
-	tic6x | c6x*)
-		basic_machine=tic6x-unknown
-		os=-coff
-		;;
-	tile*)
-		basic_machine=tile-unknown
-		os=-linux-gnu
-		;;
-	tx39)
-		basic_machine=mipstx39-unknown
-		;;
-	tx39el)
-		basic_machine=mipstx39el-unknown
-		;;
-	toad1)
-		basic_machine=pdp10-xkl
-		os=-tops20
-		;;
-	tower | tower-32)
-		basic_machine=m68k-ncr
-		;;
-	tpf)
-		basic_machine=s390x-ibm
-		os=-tpf
-		;;
-	udi29k)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-	ultra3)
-		basic_machine=a29k-nyu
-		os=-sym1
-		;;
-	v810 | necv810)
-		basic_machine=v810-nec
-		os=-none
-		;;
-	vaxv)
-		basic_machine=vax-dec
-		os=-sysv
-		;;
-	vms)
-		basic_machine=vax-dec
-		os=-vms
-		;;
-	vpp*|vx|vx-*)
-		basic_machine=f301-fujitsu
-		;;
-	vxworks960)
-		basic_machine=i960-wrs
-		os=-vxworks
-		;;
-	vxworks68)
-		basic_machine=m68k-wrs
-		os=-vxworks
-		;;
-	vxworks29k)
-		basic_machine=a29k-wrs
-		os=-vxworks
-		;;
-	w65*)
-		basic_machine=w65-wdc
-		os=-none
-		;;
-	w89k-*)
-		basic_machine=hppa1.1-winbond
-		os=-proelf
-		;;
-	xbox)
-		basic_machine=i686-pc
-		os=-mingw32
-		;;
-	xps | xps100)
-		basic_machine=xps100-honeywell
-		;;
-	ymp)
-		basic_machine=ymp-cray
-		os=-unicos
-		;;
-	z8k-*-coff)
-		basic_machine=z8k-unknown
-		os=-sim
-		;;
-	z80-*-coff)
-		basic_machine=z80-unknown
-		os=-sim
-		;;
-	none)
-		basic_machine=none-none
-		os=-none
-		;;
-
-# Here we handle the default manufacturer of certain CPU types.  It is in
-# some cases the only manufacturer, in others, it is the most popular.
-	w89k)
-		basic_machine=hppa1.1-winbond
-		;;
-	op50n)
-		basic_machine=hppa1.1-oki
-		;;
-	op60c)
-		basic_machine=hppa1.1-oki
-		;;
-	romp)
-		basic_machine=romp-ibm
-		;;
-	mmix)
-		basic_machine=mmix-knuth
-		;;
-	rs6000)
-		basic_machine=rs6000-ibm
-		;;
-	vax)
-		basic_machine=vax-dec
-		;;
-	pdp10)
-		# there are many clones, so DEC is not a safe bet
-		basic_machine=pdp10-unknown
-		;;
-	pdp11)
-		basic_machine=pdp11-dec
-		;;
-	we32k)
-		basic_machine=we32k-att
-		;;
-	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
-		basic_machine=sh-unknown
-		;;
-	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
-		basic_machine=sparc-sun
-		;;
-	cydra)
-		basic_machine=cydra-cydrome
-		;;
-	orion)
-		basic_machine=orion-highlevel
-		;;
-	orion105)
-		basic_machine=clipper-highlevel
-		;;
-	mac | mpw | mac-mpw)
-		basic_machine=m68k-apple
-		;;
-	pmac | pmac-mpw)
-		basic_machine=powerpc-apple
-		;;
-	*-unknown)
-		# Make sure to match an already-canonicalized machine name.
-		;;
-	*)
-		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-		exit 1
-		;;
-esac
-
-# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
-	*-digital*)
-		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
-		;;
-	*-commodore*)
-		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
-		;;
-	*)
-		;;
-esac
-
-# Decode manufacturer-specific aliases for certain operating systems.
-
-if [ x"$os" != x"" ]
-then
-case $os in
-        # First match some system type aliases
-        # that might get confused with valid system types.
-	# -solaris* is a basic system type, with this one exception.
-        -auroraux)
-	        os=-auroraux
-		;;
-	-solaris1 | -solaris1.*)
-		os=`echo $os | sed -e 's|solaris1|sunos4|'`
-		;;
-	-solaris)
-		os=-solaris2
-		;;
-	-svr4*)
-		os=-sysv4
-		;;
-	-unixware*)
-		os=-sysv4.2uw
-		;;
-	-gnu/linux*)
-		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
-		;;
-	# First accept the basic system types.
-	# The portable systems comes first.
-	# Each alternative MUST END IN A *, to match a version number.
-	# -sysv* is not here because it comes later, after sysvr4.
-	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
-	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
-	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
-	      | -sym* | -kopensolaris* \
-	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-	      | -aos* | -aros* \
-	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
-	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
-	      | -openbsd* | -solidbsd* \
-	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
-	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
-	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
-	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-	      | -chorusos* | -chorusrdb* | -cegcc* \
-	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
-	      | -uxpv* | -beos* | -mpeix* | -udk* \
-	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
-	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
-	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
-	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
-	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
-	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
-	# Remember, each alternative MUST END IN *, to match a version number.
-		;;
-	-qnx*)
-		case $basic_machine in
-		    x86-* | i*86-*)
-			;;
-		    *)
-			os=-nto$os
-			;;
-		esac
-		;;
-	-nto-qnx*)
-		;;
-	-nto*)
-		os=`echo $os | sed -e 's|nto|nto-qnx|'`
-		;;
-	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
-	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
-	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
-		;;
-	-mac*)
-		os=`echo $os | sed -e 's|mac|macos|'`
-		;;
-	-linux-dietlibc)
-		os=-linux-dietlibc
-		;;
-	-linux*)
-		os=`echo $os | sed -e 's|linux|linux-gnu|'`
-		;;
-	-sunos5*)
-		os=`echo $os | sed -e 's|sunos5|solaris2|'`
-		;;
-	-sunos6*)
-		os=`echo $os | sed -e 's|sunos6|solaris3|'`
-		;;
-	-opened*)
-		os=-openedition
-		;;
-        -os400*)
-		os=-os400
-		;;
-	-wince*)
-		os=-wince
-		;;
-	-osfrose*)
-		os=-osfrose
-		;;
-	-osf*)
-		os=-osf
-		;;
-	-utek*)
-		os=-bsd
-		;;
-	-dynix*)
-		os=-bsd
-		;;
-	-acis*)
-		os=-aos
-		;;
-	-atheos*)
-		os=-atheos
-		;;
-	-syllable*)
-		os=-syllable
-		;;
-	-386bsd)
-		os=-bsd
-		;;
-	-ctix* | -uts*)
-		os=-sysv
-		;;
-	-nova*)
-		os=-rtmk-nova
-		;;
-	-ns2 )
-		os=-nextstep2
-		;;
-	-nsk*)
-		os=-nsk
-		;;
-	# Preserve the version number of sinix5.
-	-sinix5.*)
-		os=`echo $os | sed -e 's|sinix|sysv|'`
-		;;
-	-sinix*)
-		os=-sysv4
-		;;
-        -tpf*)
-		os=-tpf
-		;;
-	-triton*)
-		os=-sysv3
-		;;
-	-oss*)
-		os=-sysv3
-		;;
-	-svr4)
-		os=-sysv4
-		;;
-	-svr3)
-		os=-sysv3
-		;;
-	-sysvr4)
-		os=-sysv4
-		;;
-	# This must come after -sysvr4.
-	-sysv*)
-		;;
-	-ose*)
-		os=-ose
-		;;
-	-es1800*)
-		os=-ose
-		;;
-	-xenix)
-		os=-xenix
-		;;
-	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-		os=-mint
-		;;
-	-aros*)
-		os=-aros
-		;;
-	-kaos*)
-		os=-kaos
-		;;
-	-zvmoe)
-		os=-zvmoe
-		;;
-	-dicos*)
-		os=-dicos
-		;;
-	-none)
-		;;
-	*)
-		# Get rid of the `-' at the beginning of $os.
-		os=`echo $os | sed 's/[^-]*-//'`
-		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
-		exit 1
-		;;
-esac
-else
-
-# Here we handle the default operating systems that come with various machines.
-# The value should be what the vendor currently ships out the door with their
-# machine or put another way, the most popular os provided with the machine.
-
-# Note that if you're going to try to match "-MANUFACTURER" here (say,
-# "-sun"), then you have to tell the case statement up towards the top
-# that MANUFACTURER isn't an operating system.  Otherwise, code above
-# will signal an error saying that MANUFACTURER isn't an operating
-# system, and we'll never get to this point.
-
-case $basic_machine in
-        score-*)
-		os=-elf
-		;;
-        spu-*)
-		os=-elf
-		;;
-	*-acorn)
-		os=-riscix1.2
-		;;
-	arm*-rebel)
-		os=-linux
-		;;
-	arm*-semi)
-		os=-aout
-		;;
-        c4x-* | tic4x-*)
-        	os=-coff
-		;;
-	# This must come before the *-dec entry.
-	pdp10-*)
-		os=-tops20
-		;;
-	pdp11-*)
-		os=-none
-		;;
-	*-dec | vax-*)
-		os=-ultrix4.2
-		;;
-	m68*-apollo)
-		os=-domain
-		;;
-	i386-sun)
-		os=-sunos4.0.2
-		;;
-	m68000-sun)
-		os=-sunos3
-		# This also exists in the configure program, but was not the
-		# default.
-		# os=-sunos4
-		;;
-	m68*-cisco)
-		os=-aout
-		;;
-        mep-*)
-		os=-elf
-		;;
-	mips*-cisco)
-		os=-elf
-		;;
-	mips*-*)
-		os=-elf
-		;;
-	or32-*)
-		os=-coff
-		;;
-	*-tti)	# must be before sparc entry or we get the wrong os.
-		os=-sysv3
-		;;
-	sparc-* | *-sun)
-		os=-sunos4.1.1
-		;;
-	*-be)
-		os=-beos
-		;;
-	*-haiku)
-		os=-haiku
-		;;
-	*-ibm)
-		os=-aix
-		;;
-    	*-knuth)
-		os=-mmixware
-		;;
-	*-wec)
-		os=-proelf
-		;;
-	*-winbond)
-		os=-proelf
-		;;
-	*-oki)
-		os=-proelf
-		;;
-	*-hp)
-		os=-hpux
-		;;
-	*-hitachi)
-		os=-hiux
-		;;
-	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
-		os=-sysv
-		;;
-	*-cbm)
-		os=-amigaos
-		;;
-	*-dg)
-		os=-dgux
-		;;
-	*-dolphin)
-		os=-sysv3
-		;;
-	m68k-ccur)
-		os=-rtu
-		;;
-	m88k-omron*)
-		os=-luna
-		;;
-	*-next )
-		os=-nextstep
-		;;
-	*-sequent)
-		os=-ptx
-		;;
-	*-crds)
-		os=-unos
-		;;
-	*-ns)
-		os=-genix
-		;;
-	i370-*)
-		os=-mvs
-		;;
-	*-next)
-		os=-nextstep3
-		;;
-	*-gould)
-		os=-sysv
-		;;
-	*-highlevel)
-		os=-bsd
-		;;
-	*-encore)
-		os=-bsd
-		;;
-	*-sgi)
-		os=-irix
-		;;
-	*-siemens)
-		os=-sysv4
-		;;
-	*-masscomp)
-		os=-rtu
-		;;
-	f30[01]-fujitsu | f700-fujitsu)
-		os=-uxpv
-		;;
-	*-rom68k)
-		os=-coff
-		;;
-	*-*bug)
-		os=-coff
-		;;
-	*-apple)
-		os=-macos
-		;;
-	*-atari*)
-		os=-mint
-		;;
-	*)
-		os=-none
-		;;
-esac
-fi
-
-# Here we handle the case where we know the os, and the CPU type, but not the
-# manufacturer.  We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
-	*-unknown)
-		case $os in
-			-riscix*)
-				vendor=acorn
-				;;
-			-sunos*)
-				vendor=sun
-				;;
-			-cnk*|-aix*)
-				vendor=ibm
-				;;
-			-beos*)
-				vendor=be
-				;;
-			-hpux*)
-				vendor=hp
-				;;
-			-mpeix*)
-				vendor=hp
-				;;
-			-hiux*)
-				vendor=hitachi
-				;;
-			-unos*)
-				vendor=crds
-				;;
-			-dgux*)
-				vendor=dg
-				;;
-			-luna*)
-				vendor=omron
-				;;
-			-genix*)
-				vendor=ns
-				;;
-			-mvs* | -opened*)
-				vendor=ibm
-				;;
-			-os400*)
-				vendor=ibm
-				;;
-			-ptx*)
-				vendor=sequent
-				;;
-			-tpf*)
-				vendor=ibm
-				;;
-			-vxsim* | -vxworks* | -windiss*)
-				vendor=wrs
-				;;
-			-aux*)
-				vendor=apple
-				;;
-			-hms*)
-				vendor=hitachi
-				;;
-			-mpw* | -macos*)
-				vendor=apple
-				;;
-			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-				vendor=atari
-				;;
-			-vos*)
-				vendor=stratus
-				;;
-		esac
-		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
-		;;
-esac
-
-echo $basic_machine$os
-exit
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/src/other/curl/configure b/src/other/curl/configure
deleted file mode 100755
index 0dc7f21..0000000
--- a/src/other/curl/configure
+++ /dev/null
@@ -1,37413 +0,0 @@
-#! /bin/sh
-# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for curl -.
-#
-# Report bugs to <a suitable curl mailing list => http://curl.haxx.se/mail/>.
-#
-#
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-# Foundation, Inc.
-#
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-#
-# Copyright (c) 1998 - 2010 Daniel Stenberg, <daniel at haxx.se>
-# This configure script may be copied, distributed and modified under the
-# terms of the curl license; see COPYING for more details
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-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
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in #(
-      *"$as_nl"*)
-	expr "X$arg" : "X\\(.*\\)$as_nl";
-	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
-
-
-  if test -z "$curl_cv_PATH_SEPARATOR"; then
-    if test -z "$PATH"; then
-      as_fn_error $? "PATH not set. Cannot continue without PATH being set."
-    fi
-        tst_dirs_col=0
-    tst_save_IFS=$IFS; IFS=':'
-    for tst_dir in $PATH; do
-      IFS=$tst_save_IFS
-      test -d "$tst_dir" && tst_dirs_col=`expr $tst_dirs_col + 1`
-    done
-    IFS=$tst_save_IFS
-        tst_dirs_sem=0
-    tst_save_IFS=$IFS; IFS=';'
-    for tst_dir in $PATH; do
-      IFS=$tst_save_IFS
-      test -d "$tst_dir" && tst_dirs_sem=`expr $tst_dirs_sem + 1`
-    done
-    IFS=$tst_save_IFS
-    if test $tst_dirs_sem -eq $tst_dirs_col; then
-                  if test -z "$PATH_SEPARATOR"; then
-                as_fn_error $? "PATH_SEPARATOR not set. Cannot continue without it."
-      fi
-    else
-            if test $tst_dirs_sem -gt $tst_dirs_col; then
-        tst_auto_separator=';'
-      else
-        tst_auto_separator=':'
-      fi
-      if test -z "$PATH_SEPARATOR"; then
-                PATH_SEPARATOR="$tst_auto_separator"
-      fi
-    fi
-    curl_cv_PATH_SEPARATOR="$PATH_SEPARATOR"
-  fi
-
-
-
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""	$as_nl"
-
-# 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
-  test -z "$as_dir" && as_dir=.
-    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
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test "x$CONFIG_SHELL" = x; then
-  as_bourne_compatible="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
-"
-  as_required="as_fn_return () { (exit \$1); }
-as_fn_success () { as_fn_return 0; }
-as_fn_failure () { as_fn_return 1; }
-as_fn_ret_success () { return 0; }
-as_fn_ret_failure () { return 1; }
-
-exitcode=0
-as_fn_success || { exitcode=1; echo as_fn_success failed.; }
-as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
-as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
-as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
-
-else
-  exitcode=1; echo positional parameters were not saved.
-fi
-test x\$exitcode = x0 || exit 1"
-  as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
-  as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
-  eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
-  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
-test \$(( 1 + 1 )) = 2 || exit 1
-
-  test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || (
-    ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-    ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO
-    ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO
-    PATH=/empty FPATH=/empty; export PATH FPATH
-    test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\
-      || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1"
-  if (eval "$as_required") 2>/dev/null; then :
-  as_have_required=yes
-else
-  as_have_required=no
-fi
-  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_found=false
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  as_found=:
-  case $as_dir in #(
-	 /*)
-	   for as_base in sh bash ksh sh5; do
-	     # Try only shells that exist, to save several forks.
-	     as_shell=$as_dir/$as_base
-	     if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-		    { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
-  CONFIG_SHELL=$as_shell as_have_required=yes
-		   if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
-  break 2
-fi
-fi
-	   done;;
-       esac
-  as_found=false
-done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
-	      { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
-  CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
-IFS=$as_save_IFS
-
-
-      if test "x$CONFIG_SHELL" != x; then :
-  # We cannot yet assume a decent shell, so we have to provide a
-	# neutralization value for shells without unset; and this also
-	# works around shells that cannot unset nonexistent variables.
-	# Preserve -v and -x to the replacement shell.
-	BASH_ENV=/dev/null
-	ENV=/dev/null
-	(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-	export CONFIG_SHELL
-	case $- in # ((((
-	  *v*x* | *x*v* ) as_opts=-vx ;;
-	  *v* ) as_opts=-v ;;
-	  *x* ) as_opts=-x ;;
-	  * ) as_opts= ;;
-	esac
-	exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
-fi
-
-    if test x$as_have_required = xno; then :
-  $as_echo "$0: This script requires a shell more modern than all"
-  $as_echo "$0: the shells that I found on your system."
-  if test x${ZSH_VERSION+set} = xset ; then
-    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
-    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
-  else
-    $as_echo "$0: Please tell bug-autoconf at gnu.org and a suitable curl
-$0: mailing list => http://curl.haxx.se/mail/ about your
-$0: system, including any error possibly output before this
-$0: message. Then install a modern shell, or manually run
-$0: the script under such a shell if you do have one."
-  fi
-  exit 1
-fi
-fi
-fi
-SHELL=${CONFIG_SHELL-/bin/sh}
-export SHELL
-# Unset more variables known to interfere with behavior of common tools.
-CLICOLOR_FORCE= GREP_OPTIONS=
-unset CLICOLOR_FORCE GREP_OPTIONS
-
-## --------------------- ##
-## M4sh Shell Functions. ##
-## --------------------- ##
-# as_fn_unset VAR
-# ---------------
-# Portably unset VAR.
-as_fn_unset ()
-{
-  { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-
-# 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_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=`$as_echo "$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 ||
-$as_echo 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
-# 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_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_fn_arith ()
-  {
-    as_val=`expr "$@" || test $? -eq 1`
-  }
-fi # as_fn_arith
-
-
-# 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
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
-  fi
-  $as_echo "$as_me: error: $2" >&2
-  as_fn_exit $as_status
-} # as_fn_error
-
-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 ||
-$as_echo 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
-
-
-  as_lineno_1=$LINENO as_lineno_1a=$LINENO
-  as_lineno_2=$LINENO as_lineno_2a=$LINENO
-  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
-  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
-  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
-  sed -n '
-    p
-    /[$]LINENO/=
-  ' <$as_myself |
-    sed '
-      s/[$]LINENO.*/&-/
-      t lineno
-      b
-      :lineno
-      N
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$as_me.lineno &&
-  chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
-  # Don't try to exec as it changes $[0], causing all sort of problems
-  # (the dirname of $[0] is not the place where we might find the
-  # original and so on.  Autoconf is especially sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-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
-
-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 -p'.
-    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
-  elif ln conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s=ln
-  else
-    as_ln_s='cp -p'
-  fi
-else
-  as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-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
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-	test -d "$1/.";
-      else
-	case $1 in #(
-	-*)set "./$1";;
-	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-	???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# 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'"
-
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-
-test -n "$DJDIR" || exec 7<&0 </dev/null
-exec 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIBOBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-
-# Identity of this package.
-PACKAGE_NAME='curl'
-PACKAGE_TARNAME='curl'
-PACKAGE_VERSION='-'
-PACKAGE_STRING='curl -'
-PACKAGE_BUGREPORT='a suitable curl mailing list => http://curl.haxx.se/mail/'
-PACKAGE_URL=''
-
-ac_unique_file="lib/urldata.h"
-# Factoring default headers for most tests.
-ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-# endif
-#endif
-#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-#  include <memory.h>
-# endif
-# include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif"
-
-ac_subst_vars='am__EXEEXT_FALSE
-am__EXEEXT_TRUE
-LTLIBOBJS
-LIBOBJS
-SUPPORT_PROTOCOLS
-SUPPORT_FEATURES
-CROSSCOMPILING_FALSE
-CROSSCOMPILING_TRUE
-TEST_SERVER_LIBS
-CURL_LIBS
-LIBCURL_LIBS
-SONAME_BUMP_FALSE
-SONAME_BUMP_TRUE
-USE_WINDOWS_SSPI
-USE_EMBEDDED_ARES_FALSE
-USE_EMBEDDED_ARES_TRUE
-USE_ARES
-USE_MANUAL_FALSE
-USE_MANUAL_TRUE
-MANOPT
-NROFF
-PERL
-IPV6_ENABLED
-IDN_ENABLED
-USE_LIBSSH2
-CURL_CA_BUNDLE
-SSL_ENABLED
-USE_NSS
-HAVE_PK11_CREATEGENERICOBJECT
-USE_GNUTLS
-RANDOM_FILE
-HAVE_LIBZ_FALSE
-HAVE_LIBZ_TRUE
-HAVE_LIBZ
-USE_SSLEAY
-PKGCONFIG
-KRB4_ENABLED
-CURL_DISABLE_SMTP
-CURL_DISABLE_IMAP
-CURL_DISABLE_POP3
-CURL_DISABLE_TFTP
-CURL_DISABLE_TELNET
-CURL_DISABLE_DICT
-CURL_DISABLE_PROXY
-CURL_DISABLE_LDAPS
-CURL_DISABLE_LDAP
-CURL_DISABLE_FILE
-CURL_DISABLE_FTP
-CURL_DISABLE_RTSP
-CURL_DISABLE_HTTP
-CURLDEBUG_FALSE
-CURLDEBUG_TRUE
-NO_UNDEFINED_FALSE
-NO_UNDEFINED_TRUE
-REQUIRE_LIB_DEPS
-STATICLIB_FALSE
-STATICLIB_TRUE
-MIMPURE_FALSE
-MIMPURE_TRUE
-OTOOL64
-OTOOL
-LIPO
-NMEDIT
-DSYMUTIL
-MANIFEST_TOOL
-RANLIB
-ac_ct_AR
-LN_S
-NM
-ac_ct_DUMPBIN
-DUMPBIN
-LD
-FGREP
-LIBTOOL
-OBJDUMP
-DLLTOOL
-AS
-CPP
-am__fastdepCC_FALSE
-am__fastdepCC_TRUE
-CCDEPMODE
-AMDEPBACKSLASH
-AMDEP_FALSE
-AMDEP_TRUE
-am__quote
-am__include
-DEPDIR
-OBJEXT
-EXEEXT
-ac_ct_CC
-CPPFLAGS
-LDFLAGS
-CFLAGS
-CC
-host_os
-host_vendor
-host_cpu
-host
-build_os
-build_vendor
-build_cpu
-build
-PKGADD_VENDOR
-PKGADD_NAME
-PKGADD_PKG
-VERSIONNUM
-am__untar
-am__tar
-AMTAR
-am__leading_dot
-SET_MAKE
-AWK
-mkdir_p
-MKDIR_P
-INSTALL_STRIP_PROGRAM
-STRIP
-install_sh
-MAKEINFO
-AUTOHEADER
-AUTOMAKE
-AUTOCONF
-ACLOCAL
-VERSION
-PACKAGE
-CYGPATH_W
-am__isrc
-INSTALL_DATA
-INSTALL_SCRIPT
-INSTALL_PROGRAM
-libext
-AR
-EGREP
-GREP
-SED
-CONFIGURE_OPTIONS
-MAINT
-MAINTAINER_MODE_FALSE
-MAINTAINER_MODE_TRUE
-target_alias
-host_alias
-build_alias
-LIBS
-ECHO_T
-ECHO_N
-ECHO_C
-DEFS
-mandir
-localedir
-libdir
-psdir
-pdfdir
-dvidir
-htmldir
-infodir
-docdir
-oldincludedir
-includedir
-localstatedir
-sharedstatedir
-sysconfdir
-datadir
-datarootdir
-libexecdir
-sbindir
-bindir
-program_transform_name
-prefix
-exec_prefix
-PACKAGE_URL
-PACKAGE_BUGREPORT
-PACKAGE_STRING
-PACKAGE_VERSION
-PACKAGE_TARNAME
-PACKAGE_NAME
-SHELL
-PATH
-PATH_SEPARATOR'
-ac_subst_files=''
-ac_user_opts='
-enable_option_checking
-enable_maintainer_mode
-enable_debug
-enable_optimize
-enable_warnings
-enable_curldebug
-enable_ares
-enable_dependency_tracking
-enable_largefile
-enable_shared
-enable_static
-with_pic
-enable_fast_install
-with_gnu_ld
-with_sysroot
-enable_libtool_lock
-enable_http
-enable_ftp
-enable_file
-enable_ldap
-enable_ldaps
-enable_rtsp
-enable_proxy
-enable_dict
-enable_telnet
-enable_tftp
-enable_pop3
-enable_imap
-enable_smtp
-enable_manual
-enable_libgcc
-with_ldap_lib
-with_lber_lib
-enable_ipv6
-with_krb4_includes
-with_krb4_libs
-with_krb4
-with_spnego
-with_gssapi_includes
-with_gssapi_libs
-with_gssapi
-with_ssl
-with_zlib
-with_egd_socket
-with_random
-with_gnutls
-with_nss
-with_ca_bundle
-with_ca_path
-with_libssh2
-with_libidn
-enable_nonblocking
-enable_verbose
-enable_sspi
-enable_crypto_auth
-enable_cookies
-enable_hidden_symbols
-enable_soname_bump
-'
-      ac_precious_vars='build_alias
-host_alias
-target_alias
-CC
-CFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS
-CPP'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-ac_unrecognized_opts=
-ac_unrecognized_sep=
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
-  # If the previous option needs an argument, assign it.
-  if test -n "$ac_prev"; then
-    eval $ac_prev=\$ac_option
-    ac_prev=
-    continue
-  fi
-
-  case $ac_option in
-  *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
-  *=)   ac_optarg= ;;
-  *)    ac_optarg=yes ;;
-  esac
-
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
-  case $ac_dashdash$ac_option in
-  --)
-    ac_dashdash=yes ;;
-
-  -bindir | --bindir | --bindi | --bind | --bin | --bi)
-    ac_prev=bindir ;;
-  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
-    bindir=$ac_optarg ;;
-
-  -build | --build | --buil | --bui | --bu)
-    ac_prev=build_alias ;;
-  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
-    build_alias=$ac_optarg ;;
-
-  -cache-file | --cache-file | --cache-fil | --cache-fi \
-  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
-    ac_prev=cache_file ;;
-  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
-  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
-    cache_file=$ac_optarg ;;
-
-  --config-cache | -C)
-    cache_file=config.cache ;;
-
-  -datadir | --datadir | --datadi | --datad)
-    ac_prev=datadir ;;
-  -datadir=* | --datadir=* | --datadi=* | --datad=*)
-    datadir=$ac_optarg ;;
-
-  -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
-  | --dataroo | --dataro | --datar)
-    ac_prev=datarootdir ;;
-  -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
-  | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
-    datarootdir=$ac_optarg ;;
-
-  -disable-* | --disable-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"enable_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
-	 ac_unrecognized_sep=', ';;
-    esac
-    eval enable_$ac_useropt=no ;;
-
-  -docdir | --docdir | --docdi | --doc | --do)
-    ac_prev=docdir ;;
-  -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
-    docdir=$ac_optarg ;;
-
-  -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
-    ac_prev=dvidir ;;
-  -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
-    dvidir=$ac_optarg ;;
-
-  -enable-* | --enable-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"enable_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
-	 ac_unrecognized_sep=', ';;
-    esac
-    eval enable_$ac_useropt=\$ac_optarg ;;
-
-  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
-  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
-  | --exec | --exe | --ex)
-    ac_prev=exec_prefix ;;
-  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
-  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
-  | --exec=* | --exe=* | --ex=*)
-    exec_prefix=$ac_optarg ;;
-
-  -gas | --gas | --ga | --g)
-    # Obsolete; use --with-gas.
-    with_gas=yes ;;
-
-  -help | --help | --hel | --he | -h)
-    ac_init_help=long ;;
-  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
-    ac_init_help=recursive ;;
-  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
-    ac_init_help=short ;;
-
-  -host | --host | --hos | --ho)
-    ac_prev=host_alias ;;
-  -host=* | --host=* | --hos=* | --ho=*)
-    host_alias=$ac_optarg ;;
-
-  -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
-    ac_prev=htmldir ;;
-  -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
-  | --ht=*)
-    htmldir=$ac_optarg ;;
-
-  -includedir | --includedir | --includedi | --included | --include \
-  | --includ | --inclu | --incl | --inc)
-    ac_prev=includedir ;;
-  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
-  | --includ=* | --inclu=* | --incl=* | --inc=*)
-    includedir=$ac_optarg ;;
-
-  -infodir | --infodir | --infodi | --infod | --info | --inf)
-    ac_prev=infodir ;;
-  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
-    infodir=$ac_optarg ;;
-
-  -libdir | --libdir | --libdi | --libd)
-    ac_prev=libdir ;;
-  -libdir=* | --libdir=* | --libdi=* | --libd=*)
-    libdir=$ac_optarg ;;
-
-  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
-  | --libexe | --libex | --libe)
-    ac_prev=libexecdir ;;
-  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
-  | --libexe=* | --libex=* | --libe=*)
-    libexecdir=$ac_optarg ;;
-
-  -localedir | --localedir | --localedi | --localed | --locale)
-    ac_prev=localedir ;;
-  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
-    localedir=$ac_optarg ;;
-
-  -localstatedir | --localstatedir | --localstatedi | --localstated \
-  | --localstate | --localstat | --localsta | --localst | --locals)
-    ac_prev=localstatedir ;;
-  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
-  | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
-    localstatedir=$ac_optarg ;;
-
-  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
-    ac_prev=mandir ;;
-  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
-    mandir=$ac_optarg ;;
-
-  -nfp | --nfp | --nf)
-    # Obsolete; use --without-fp.
-    with_fp=no ;;
-
-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-  | --no-cr | --no-c | -n)
-    no_create=yes ;;
-
-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
-    no_recursion=yes ;;
-
-  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
-  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
-  | --oldin | --oldi | --old | --ol | --o)
-    ac_prev=oldincludedir ;;
-  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
-  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
-  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
-    oldincludedir=$ac_optarg ;;
-
-  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
-    ac_prev=prefix ;;
-  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
-    prefix=$ac_optarg ;;
-
-  -program-prefix | --program-prefix | --program-prefi | --program-pref \
-  | --program-pre | --program-pr | --program-p)
-    ac_prev=program_prefix ;;
-  -program-prefix=* | --program-prefix=* | --program-prefi=* \
-  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
-    program_prefix=$ac_optarg ;;
-
-  -program-suffix | --program-suffix | --program-suffi | --program-suff \
-  | --program-suf | --program-su | --program-s)
-    ac_prev=program_suffix ;;
-  -program-suffix=* | --program-suffix=* | --program-suffi=* \
-  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
-    program_suffix=$ac_optarg ;;
-
-  -program-transform-name | --program-transform-name \
-  | --program-transform-nam | --program-transform-na \
-  | --program-transform-n | --program-transform- \
-  | --program-transform | --program-transfor \
-  | --program-transfo | --program-transf \
-  | --program-trans | --program-tran \
-  | --progr-tra | --program-tr | --program-t)
-    ac_prev=program_transform_name ;;
-  -program-transform-name=* | --program-transform-name=* \
-  | --program-transform-nam=* | --program-transform-na=* \
-  | --program-transform-n=* | --program-transform-=* \
-  | --program-transform=* | --program-transfor=* \
-  | --program-transfo=* | --program-transf=* \
-  | --program-trans=* | --program-tran=* \
-  | --progr-tra=* | --program-tr=* | --program-t=*)
-    program_transform_name=$ac_optarg ;;
-
-  -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
-    ac_prev=pdfdir ;;
-  -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
-    pdfdir=$ac_optarg ;;
-
-  -psdir | --psdir | --psdi | --psd | --ps)
-    ac_prev=psdir ;;
-  -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
-    psdir=$ac_optarg ;;
-
-  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-  | -silent | --silent | --silen | --sile | --sil)
-    silent=yes ;;
-
-  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
-    ac_prev=sbindir ;;
-  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
-  | --sbi=* | --sb=*)
-    sbindir=$ac_optarg ;;
-
-  -sharedstatedir | --sharedstatedir | --sharedstatedi \
-  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
-  | --sharedst | --shareds | --shared | --share | --shar \
-  | --sha | --sh)
-    ac_prev=sharedstatedir ;;
-  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
-  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
-  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
-  | --sha=* | --sh=*)
-    sharedstatedir=$ac_optarg ;;
-
-  -site | --site | --sit)
-    ac_prev=site ;;
-  -site=* | --site=* | --sit=*)
-    site=$ac_optarg ;;
-
-  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
-    ac_prev=srcdir ;;
-  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
-    srcdir=$ac_optarg ;;
-
-  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
-  | --syscon | --sysco | --sysc | --sys | --sy)
-    ac_prev=sysconfdir ;;
-  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
-  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
-    sysconfdir=$ac_optarg ;;
-
-  -target | --target | --targe | --targ | --tar | --ta | --t)
-    ac_prev=target_alias ;;
-  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
-    target_alias=$ac_optarg ;;
-
-  -v | -verbose | --verbose | --verbos | --verbo | --verb)
-    verbose=yes ;;
-
-  -version | --version | --versio | --versi | --vers | -V)
-    ac_init_version=: ;;
-
-  -with-* | --with-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"with_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
-	 ac_unrecognized_sep=', ';;
-    esac
-    eval with_$ac_useropt=\$ac_optarg ;;
-
-  -without-* | --without-*)
-    ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
-    # Reject names that are not valid shell variable names.
-    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
-    ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
-    case $ac_user_opts in
-      *"
-"with_$ac_useropt"
-"*) ;;
-      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
-	 ac_unrecognized_sep=', ';;
-    esac
-    eval with_$ac_useropt=no ;;
-
-  --x)
-    # Obsolete; use --with-x.
-    with_x=yes ;;
-
-  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
-  | --x-incl | --x-inc | --x-in | --x-i)
-    ac_prev=x_includes ;;
-  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
-  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
-    x_includes=$ac_optarg ;;
-
-  -x-libraries | --x-libraries | --x-librarie | --x-librari \
-  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
-    ac_prev=x_libraries ;;
-  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
-  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
-    x_libraries=$ac_optarg ;;
-
-  -*) as_fn_error $? "unrecognized option: \`$ac_option'
-Try \`$0 --help' for more information"
-    ;;
-
-  *=*)
-    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
-    # Reject names that are not valid shell variable names.
-    case $ac_envvar in #(
-      '' | [0-9]* | *[!_$as_cr_alnum]* )
-      as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
-    esac
-    eval $ac_envvar=\$ac_optarg
-    export $ac_envvar ;;
-
-  *)
-    # FIXME: should be removed in autoconf 3.0.
-    $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
-    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
-    : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
-    ;;
-
-  esac
-done
-
-if test -n "$ac_prev"; then
-  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
-  as_fn_error $? "missing argument to $ac_option"
-fi
-
-if test -n "$ac_unrecognized_opts"; then
-  case $enable_option_checking in
-    no) ;;
-    fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
-    *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
-  esac
-fi
-
-# Check all directory arguments for consistency.
-for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
-		datadir sysconfdir sharedstatedir localstatedir includedir \
-		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-		libdir localedir mandir
-do
-  eval ac_val=\$$ac_var
-  # Remove trailing slashes.
-  case $ac_val in
-    */ )
-      ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
-      eval $ac_var=\$ac_val;;
-  esac
-  # Be sure to have absolute directory names.
-  case $ac_val in
-    [\\/$]* | ?:[\\/]* )  continue;;
-    NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
-  esac
-  as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
-  if test "x$build_alias" = x; then
-    cross_compiling=maybe
-    $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used" >&2
-  elif test "x$build_alias" != "x$host_alias"; then
-    cross_compiling=yes
-  fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
-  as_fn_error $? "working directory cannot be determined"
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
-  as_fn_error $? "pwd does not report name of working directory"
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
-  ac_srcdir_defaulted=yes
-  # Try the directory containing this script, then the parent directory.
-  ac_confdir=`$as_dirname -- "$as_myself" ||
-$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$as_myself" : 'X\(//\)[^/]' \| \
-	 X"$as_myself" : 'X\(//\)$' \| \
-	 X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-  srcdir=$ac_confdir
-  if test ! -r "$srcdir/$ac_unique_file"; then
-    srcdir=..
-  fi
-else
-  ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
-  test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
-  as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
-	cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
-	pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
-  srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
-  eval ac_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_env_${ac_var}_value=\$${ac_var}
-  eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
-  eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
-  # Omit some internal or obsolete options to make the list less imposing.
-  # This message is too long to be a string in the A/UX 3.1 sh.
-  cat <<_ACEOF
-\`configure' configures curl - to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE.  See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
-  -h, --help              display this help and exit
-      --help=short        display options specific to this package
-      --help=recursive    display the short help of all the included packages
-  -V, --version           display version information and exit
-  -q, --quiet, --silent   do not print \`checking ...' messages
-      --cache-file=FILE   cache test results in FILE [disabled]
-  -C, --config-cache      alias for \`--cache-file=config.cache'
-  -n, --no-create         do not create output files
-      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
-
-Installation directories:
-  --prefix=PREFIX         install architecture-independent files in PREFIX
-                          [$ac_default_prefix]
-  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
-                          [PREFIX]
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
-  --bindir=DIR            user executables [EPREFIX/bin]
-  --sbindir=DIR           system admin executables [EPREFIX/sbin]
-  --libexecdir=DIR        program executables [EPREFIX/libexec]
-  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
-  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
-  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
-  --libdir=DIR            object code libraries [EPREFIX/lib]
-  --includedir=DIR        C header files [PREFIX/include]
-  --oldincludedir=DIR     C header files for non-gcc [/usr/include]
-  --datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]
-  --datadir=DIR           read-only architecture-independent data [DATAROOTDIR]
-  --infodir=DIR           info documentation [DATAROOTDIR/info]
-  --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]
-  --mandir=DIR            man documentation [DATAROOTDIR/man]
-  --docdir=DIR            documentation root [DATAROOTDIR/doc/curl]
-  --htmldir=DIR           html documentation [DOCDIR]
-  --dvidir=DIR            dvi documentation [DOCDIR]
-  --pdfdir=DIR            pdf documentation [DOCDIR]
-  --psdir=DIR             ps documentation [DOCDIR]
-_ACEOF
-
-  cat <<\_ACEOF
-
-Program names:
-  --program-prefix=PREFIX            prepend PREFIX to installed program names
-  --program-suffix=SUFFIX            append SUFFIX to installed program names
-  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names
-
-System types:
-  --build=BUILD     configure for building on BUILD [guessed]
-  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
-  case $ac_init_help in
-     short | recursive ) echo "Configuration of curl -:";;
-   esac
-  cat <<\_ACEOF
-
-Optional Features:
-  --disable-option-checking  ignore unrecognized --enable/--with options
-  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
-  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-  --enable-maintainer-mode  enable make rules and dependencies not useful
-			  (and sometimes confusing) to the casual installer
-  --enable-debug          Enable debug build options
-  --disable-debug         Disable debug build options
-  --enable-optimize       Enable compiler optimizations
-  --disable-optimize      Disable compiler optimizations
-  --enable-warnings       Enable strict compiler warnings
-  --disable-warnings      Disable strict compiler warnings
-  --enable-curldebug      Enable curl debug memory tracking
-  --disable-curldebug     Disable curl debug memory tracking
-  --enable-ares[=PATH]    Enable c-ares for DNS lookups
-  --disable-ares          Disable c-ares for DNS lookups
-  --disable-dependency-tracking  speeds up one-time build
-  --enable-dependency-tracking   do not reject slow dependency extractors
-  --disable-largefile     omit support for large files
-  --enable-shared[=PKGS]  build shared libraries [default=yes]
-  --enable-static[=PKGS]  build static libraries [default=yes]
-  --enable-fast-install[=PKGS]
-                          optimize for fast installation [default=yes]
-  --disable-libtool-lock  avoid locking (might break parallel builds)
-  --enable-http           Enable HTTP support
-  --disable-http          Disable HTTP support
-  --enable-ftp            Enable FTP support
-  --disable-ftp           Disable FTP support
-  --enable-file           Enable FILE support
-  --disable-file          Disable FILE support
-  --enable-ldap           Enable LDAP support
-  --disable-ldap          Disable LDAP support
-  --enable-ldaps          Enable LDAPS support
-  --disable-ldaps         Disable LDAPS support
-  --enable-rtsp           Enable RTSP support
-  --disable-rtsp          Disable RTSP support
-  --enable-proxy          Enable proxy support
-  --disable-proxy         Disable proxy support
-  --enable-dict           Enable DICT support
-  --disable-dict          Disable DICT support
-  --enable-telnet         Enable TELNET support
-  --disable-telnet        Disable TELNET support
-  --enable-tftp           Enable TFTP support
-  --disable-tftp          Disable TFTP support
-  --enable-pop3           Enable POP3 support
-  --disable-pop3          Disable POP3 support
-  --enable-imap           Enable IMAP support
-  --disable-imap          Disable IMAP support
-  --enable-smtp           Enable SMTP support
-  --disable-smtp          Disable SMTP support
-  --enable-manual         Enable built-in manual
-  --disable-manual        Disable built-in manual
-  --enable-libgcc         use libgcc when linking
-  --enable-ipv6           Enable ipv6 (with ipv4) support
-  --disable-ipv6          Disable ipv6 support
-  --enable-nonblocking    Enable non-blocking communications
-  --disable-nonblocking   Disable non-blocking communications
-  --enable-verbose        Enable verbose strings
-  --disable-verbose       Disable verbose strings
-  --enable-sspi           Enable SSPI
-  --disable-sspi          Disable SSPI
-  --enable-crypto-auth    Enable cryptographic authentication
-  --disable-crypto-auth   Disable cryptographic authentication
-  --enable-cookies        Enable cookies support
-  --disable-cookies       Disable cookies support
-  --enable-hidden-symbols Hide internal symbols in library
-  --disable-hidden-symbols
-                          Leave all symbols with default visibility in library
-  --enable-soname-bump    Enable enforced SONAME bump
-  --disable-soname-bump   Disable enforced SONAME bump
-
-Optional Packages:
-  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
-  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
-  --with-pic              try to use only PIC/non-PIC objects [default=use
-                          both]
-  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
-  --with-sysroot=DIR Search for dependent libraries within DIR
-                        (or the compiler's sysroot if not specified).
-  --with-ldap-lib=libname Specify name of ldap lib file
-  --with-lber-lib=libname Specify name of lber lib file
-  --with-krb4-includes=DIR
-                          Specify location of kerberos4 headers
-  --with-krb4-libs=DIR    Specify location of kerberos4 libs
-  --with-krb4=DIR         where to look for Kerberos4
-  --with-spnego=DIR       Specify location of SPNEGO library fbopenssl
-  --with-gssapi-includes=DIR
-                          Specify location of GSSAPI header
-  --with-gssapi-libs=DIR  Specify location of GSSAPI libs
-  --with-gssapi=DIR       Where to look for GSSAPI
-  --with-ssl=PATH         Where to look for OpenSSL, PATH points to the SSL
-                          installation (default: /usr/local/ssl); when
-                          possible, set the PKG_CONFIG_PATH environment
-                          variable instead of using this option
-  --without-ssl           disable OpenSSL
-  --with-zlib=PATH        search for zlib in PATH
-  --without-zlib          disable use of zlib
-  --with-egd-socket=FILE  Entropy Gathering Daemon socket pathname
-  --with-random=FILE      read randomness from FILE (default=/dev/urandom)
-  --with-gnutls=PATH      where to look for GnuTLS, PATH points to the
-                          installation root (default: /usr/local/)
-  --without-gnutls        disable GnuTLS detection
-  --with-nss=PATH         where to look for NSS, PATH points to the
-                          installation root (default: /usr/local/)
-  --without-nss           disable NSS detection
-  --with-ca-bundle=FILE   File name to use as CA bundle
-  --without-ca-bundle     Don't use a default CA bundle
-  --with-ca-path=DIRECTORY
-                          Directory to use as CA path
-  --without-ca-path       Don't use a default CA path
-  --with-libssh2=PATH     Where to look for libssh2, PATH points to the
-                          LIBSSH2 installation (default: /usr/local/lib); when
-                          possible, set the PKG_CONFIG_PATH environment
-                          variable instead of using this option
-  --without-libssh2       disable LIBSSH2
-  --with-libidn=PATH      Enable libidn usage
-  --without-libidn        Disable libidn usage
-
-Some influential environment variables:
-  CC          C compiler command
-  CFLAGS      C compiler flags
-  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
-              nonstandard directory <lib dir>
-  LIBS        libraries to pass to the linker, e.g. -l<library>
-  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
-              you have headers in a nonstandard directory <include dir>
-  CPP         C preprocessor
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <a suitable curl mailing list => http://curl.haxx.se/mail/>.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
-  # If there are subdirs, report their specific --help.
-  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
-    test -d "$ac_dir" ||
-      { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
-      continue
-    ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$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
-
-    cd "$ac_dir" || { ac_status=$?; continue; }
-    # Check for guested configure.
-    if test -f "$ac_srcdir/configure.gnu"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure.gnu" --help=recursive
-    elif test -f "$ac_srcdir/configure"; then
-      echo &&
-      $SHELL "$ac_srcdir/configure" --help=recursive
-    else
-      $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
-    fi || ac_status=$?
-    cd "$ac_pwd" || { ac_status=$?; break; }
-  done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
-  cat <<\_ACEOF
-curl configure -
-generated by GNU Autoconf 2.68
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-
-Copyright (c) 1998 - 2010 Daniel Stenberg, <daniel at haxx.se>
-This configure script may be copied, distributed and modified under the
-terms of the curl license; see COPYING for more details
-_ACEOF
-  exit
-fi
-
-## ------------------------ ##
-## Autoconf initialization. ##
-## ------------------------ ##
-
-# ac_fn_c_try_compile LINENO
-# --------------------------
-# Try to compile conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_compile ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext
-  if { { ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compile") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_compile
-
-# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists and can be compiled using the include files in
-# INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_compile
-
-# ac_fn_c_try_run LINENO
-# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-       $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=$ac_status
-fi
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_run
-
-# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
-# --------------------------------------------
-# Tries to find the compile-time value of EXPR in a program that includes
-# INCLUDES, setting VAR accordingly. Returns whether the value could be
-# computed
-ac_fn_c_compute_int ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if test "$cross_compiling" = yes; then
-    # Depending upon the size, compute the lo and hi bounds.
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-static int test_array [1 - 2 * !(($2) >= 0)];
-test_array [0] = 0
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_lo=0 ac_mid=0
-  while :; do
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-static int test_array [1 - 2 * !(($2) <= $ac_mid)];
-test_array [0] = 0
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=$ac_mid; break
-else
-  as_fn_arith $ac_mid + 1 && ac_lo=$as_val
-			if test $ac_lo -le $ac_mid; then
-			  ac_lo= ac_hi=
-			  break
-			fi
-			as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-static int test_array [1 - 2 * !(($2) < 0)];
-test_array [0] = 0
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=-1 ac_mid=-1
-  while :; do
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-static int test_array [1 - 2 * !(($2) >= $ac_mid)];
-test_array [0] = 0
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_lo=$ac_mid; break
-else
-  as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val
-			if test $ac_mid -le $ac_hi; then
-			  ac_lo= ac_hi=
-			  break
-			fi
-			as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  done
-else
-  ac_lo= ac_hi=
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
-  as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-static int test_array [1 - 2 * !(($2) <= $ac_mid)];
-test_array [0] = 0
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_hi=$ac_mid
-else
-  as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in #((
-?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
-'') ac_retval=1 ;;
-esac
-  else
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-static long int longval () { return $2; }
-static unsigned long int ulongval () { return $2; }
-#include <stdio.h>
-#include <stdlib.h>
-int main (void)
-{
-
-  FILE *f = fopen ("conftest.val", "w");
-  if (! f)
-    return 1;
-  if (($2) < 0)
-    {
-      long int i = longval ();
-      if (i != ($2))
-	return 1;
-      fprintf (f, "%ld", i);
-    }
-  else
-    {
-      unsigned long int i = ulongval ();
-      if (i != ($2))
-	return 1;
-      fprintf (f, "%lu", i);
-    }
-  /* Do not output a trailing newline, as this causes \r\n confusion
-     on some platforms.  */
-  return ferror (f) || fclose (f) != 0;
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  echo >>conftest.val; read $3 <conftest.val; ac_retval=0
-else
-  ac_retval=1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-rm -f conftest.val
-
-  fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_compute_int
-
-# ac_fn_c_try_cpp LINENO
-# ----------------------
-# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } > conftest.i && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-    ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_cpp
-
-# ac_fn_c_try_link LINENO
-# -----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_link ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext conftest$ac_exeext
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext && {
-	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	ac_retval=1
-fi
-  # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
-  # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
-  # interfere with the next link command; also delete a directory that is
-  # left behind by Apple's compiler.  We do this before executing the actions.
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_link
-
-# ac_fn_c_check_func LINENO FUNC VAR
-# ----------------------------------
-# Tests whether FUNC exists, setting the cache variable VAR accordingly
-ac_fn_c_check_func ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define $2 innocuous_$2
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef $2
-#ifdef __cplusplus
-extern "C"
-#endif
-char $2 ();
-#if defined __stub_$2 || defined __stub___$2
-choke me
-#endif
-
-int main (void)
-{
-return $2 ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  eval "$3=yes"
-else
-  eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_func
-
-# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists, giving a warning if it cannot be compiled using
-# the include files in INCLUDES and setting the cache variable VAR
-# accordingly.
-ac_fn_c_check_header_mongrel ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if eval \${$3+:} false; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_header_compiler=yes
-else
-  ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  ac_header_preproc=yes
-else
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
-  yes:no: )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-    ;;
-  no:yes:* )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( $as_echo "## ------------------------------------------------------------------------ ##
-## Report this to a suitable curl mailing list => http://curl.haxx.se/mail/ ##
-## ------------------------------------------------------------------------ ##"
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_mongrel
-
-# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
-# -------------------------------------------
-# Tests whether TYPE exists after having included INCLUDES, setting cache
-# variable VAR accordingly.
-ac_fn_c_check_type ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=no"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-if (sizeof ($2))
-	 return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-int main (void)
-{
-if (sizeof (($2)))
-	    return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
-  eval "$3=yes"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_type
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by curl $as_me -, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
-
-  $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
-
-/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`
-/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
-/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    $as_echo "PATH: $as_dir"
-  done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
-  for ac_arg
-  do
-    case $ac_arg in
-    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
-    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-    | -silent | --silent | --silen | --sile | --sil)
-      continue ;;
-    *\'*)
-      ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-    esac
-    case $ac_pass in
-    1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
-    2)
-      as_fn_append ac_configure_args1 " '$ac_arg'"
-      if test $ac_must_keep_next = true; then
-	ac_must_keep_next=false # Got value, back to normal.
-      else
-	case $ac_arg in
-	  *=* | --config-cache | -C | -disable-* | --disable-* \
-	  | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
-	  | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
-	  | -with-* | --with-* | -without-* | --without-* | --x)
-	    case "$ac_configure_args0 " in
-	      "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
-	    esac
-	    ;;
-	  -* ) ac_must_keep_next=true ;;
-	esac
-      fi
-      as_fn_append ac_configure_args " '$ac_arg'"
-      ;;
-    esac
-  done
-done
-{ ac_configure_args0=; unset ac_configure_args0;}
-{ ac_configure_args1=; unset ac_configure_args1;}
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log.  We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
-  # Save into config.log some information that might help in debugging.
-  {
-    echo
-
-    $as_echo "## ---------------- ##
-## Cache variables. ##
-## ---------------- ##"
-    echo
-    # The following way of writing the cache mishandles newlines in values,
-(
-  for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
-      *) { eval $ac_var=; unset $ac_var;} ;;
-      esac ;;
-    esac
-  done
-  (set) 2>&1 |
-    case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      sed -n \
-	"s/'\''/'\''\\\\'\'''\''/g;
-	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
-      ;; #(
-    *)
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-)
-    echo
-
-    $as_echo "## ----------------- ##
-## Output variables. ##
-## ----------------- ##"
-    echo
-    for ac_var in $ac_subst_vars
-    do
-      eval ac_val=\$$ac_var
-      case $ac_val in
-      *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-      esac
-      $as_echo "$ac_var='\''$ac_val'\''"
-    done | sort
-    echo
-
-    if test -n "$ac_subst_files"; then
-      $as_echo "## ------------------- ##
-## File substitutions. ##
-## ------------------- ##"
-      echo
-      for ac_var in $ac_subst_files
-      do
-	eval ac_val=\$$ac_var
-	case $ac_val in
-	*\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
-	esac
-	$as_echo "$ac_var='\''$ac_val'\''"
-      done | sort
-      echo
-    fi
-
-    if test -s confdefs.h; then
-      $as_echo "## ----------- ##
-## confdefs.h. ##
-## ----------- ##"
-      echo
-      cat confdefs.h
-      echo
-    fi
-    test "$ac_signal" != 0 &&
-      $as_echo "$as_me: caught signal $ac_signal"
-    $as_echo "$as_me: exit $exit_status"
-  } >&5
-  rm -f core *.core core.conftest.* &&
-    rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
-    exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
-  trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-$as_echo "/* confdefs.h */" > confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
-if test -n "$CONFIG_SITE"; then
-  # We do not want a PATH search for config.site.
-  case $CONFIG_SITE in #((
-    -*)  ac_site_file1=./$CONFIG_SITE;;
-    */*) ac_site_file1=$CONFIG_SITE;;
-    *)   ac_site_file1=./$CONFIG_SITE;;
-  esac
-elif test "x$prefix" != xNONE; then
-  ac_site_file1=$prefix/share/config.site
-  ac_site_file2=$prefix/etc/config.site
-else
-  ac_site_file1=$ac_default_prefix/share/config.site
-  ac_site_file2=$ac_default_prefix/etc/config.site
-fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
-do
-  test "x$ac_site_file" = xNONE && continue
-  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
-    sed 's/^/| /' "$ac_site_file" >&5
-    . "$ac_site_file" \
-      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5; }
-  fi
-done
-
-if test -r "$cache_file"; then
-  # Some versions of bash will fail to source /dev/null (special files
-  # actually), so we avoid doing that.  DJGPP emulates it as a regular file.
-  if test /dev/null != "$cache_file" && test -f "$cache_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
-    case $cache_file in
-      [\\/]* | ?:[\\/]* ) . "$cache_file";;
-      *)                      . "./$cache_file";;
-    esac
-  fi
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
-  >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
-  eval ac_old_set=\$ac_cv_env_${ac_var}_set
-  eval ac_new_set=\$ac_env_${ac_var}_set
-  eval ac_old_val=\$ac_cv_env_${ac_var}_value
-  eval ac_new_val=\$ac_env_${ac_var}_value
-  case $ac_old_set,$ac_new_set in
-    set,)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,set)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,);;
-    *)
-      if test "x$ac_old_val" != "x$ac_new_val"; then
-	# differences in whitespace do not lead to failure.
-	ac_old_val_w=`echo x $ac_old_val`
-	ac_new_val_w=`echo x $ac_new_val`
-	if test "$ac_old_val_w" != "$ac_new_val_w"; then
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-	  ac_cache_corrupted=:
-	else
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
-	  eval $ac_var=\$ac_old_val
-	fi
-	{ $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
-$as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}
-	{ $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
-$as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
-      fi;;
-  esac
-  # Pass precious variables to config.status.
-  if test "$ac_new_set" = set; then
-    case $ac_new_val in
-    *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
-    *) ac_arg=$ac_var=$ac_new_val ;;
-    esac
-    case " $ac_configure_args " in
-      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
-      *) as_fn_append ac_configure_args " '$ac_arg'" ;;
-    esac
-  fi
-done
-if $ac_cache_corrupted; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
-fi
-## -------------------- ##
-## Main body of script. ##
-## -------------------- ##
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-
-# using curl-override.m4
-
-
-
-
-
-ac_config_headers="$ac_config_headers lib/curl_config.h src/curl_config.h include/curl/curlbuild.h"
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
-$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
-    # Check whether --enable-maintainer-mode was given.
-if test "${enable_maintainer_mode+set}" = set; then :
-  enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval
-else
-  USE_MAINTAINER_MODE=no
-fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5
-$as_echo "$USE_MAINTAINER_MODE" >&6; }
-   if test $USE_MAINTAINER_MODE = yes; then
-  MAINTAINER_MODE_TRUE=
-  MAINTAINER_MODE_FALSE='#'
-else
-  MAINTAINER_MODE_TRUE='#'
-  MAINTAINER_MODE_FALSE=
-fi
-
-  MAINT=$MAINTAINER_MODE_TRUE
-
-
-
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable debug build options" >&5
-$as_echo_n "checking whether to enable debug build options... " >&6; }
-  OPT_DEBUG_BUILD="default"
-  # Check whether --enable-debug was given.
-if test "${enable_debug+set}" = set; then :
-  enableval=$enable_debug; OPT_DEBUG_BUILD=$enableval
-fi
-
-  case "$OPT_DEBUG_BUILD" in
-    no)
-            want_debug="no"
-      ;;
-    default)
-            want_debug="no"
-      ;;
-    *)
-            want_debug="yes"
-      ;;
-  esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_debug" >&5
-$as_echo "$want_debug" >&6; }
-
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable compiler optimizer" >&5
-$as_echo_n "checking whether to enable compiler optimizer... " >&6; }
-  OPT_COMPILER_OPTIMIZE="default"
-  # Check whether --enable-optimize was given.
-if test "${enable_optimize+set}" = set; then :
-  enableval=$enable_optimize; OPT_COMPILER_OPTIMIZE=$enableval
-fi
-
-  case "$OPT_COMPILER_OPTIMIZE" in
-    no)
-                              want_optimize="no"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      ;;
-    default)
-                                                                        if test "$want_debug" = "yes"; then
-        want_optimize="assume_no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: (assumed) no" >&5
-$as_echo "(assumed) no" >&6; }
-      else
-        want_optimize="assume_yes"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: (assumed) yes" >&5
-$as_echo "(assumed) yes" >&6; }
-      fi
-      ;;
-    *)
-                              want_optimize="yes"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      ;;
-  esac
-
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable strict compiler warnings" >&5
-$as_echo_n "checking whether to enable strict compiler warnings... " >&6; }
-  OPT_COMPILER_WARNINGS="default"
-  # Check whether --enable-warnings was given.
-if test "${enable_warnings+set}" = set; then :
-  enableval=$enable_warnings; OPT_COMPILER_WARNINGS=$enableval
-fi
-
-  case "$OPT_COMPILER_WARNINGS" in
-    no)
-            want_warnings="no"
-      ;;
-    default)
-                  want_warnings="$want_debug"
-      ;;
-    *)
-            want_warnings="yes"
-      ;;
-  esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_warnings" >&5
-$as_echo "$want_warnings" >&6; }
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable curl debug memory tracking" >&5
-$as_echo_n "checking whether to enable curl debug memory tracking... " >&6; }
-  OPT_CURLDEBUG_BUILD="default"
-  # Check whether --enable-curldebug was given.
-if test "${enable_curldebug+set}" = set; then :
-  enableval=$enable_curldebug; OPT_CURLDEBUG_BUILD=$enableval
-fi
-
-  case "$OPT_CURLDEBUG_BUILD" in
-    no)
-            want_curldebug="no"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      ;;
-    default)
-                                          if test "$want_debug" = "yes"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: (assumed) yes" >&5
-$as_echo "(assumed) yes" >&6; }
-      else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      fi
-      want_curldebug_assumed="yes"
-      want_curldebug="$want_debug"
-      ;;
-    *)
-                                                      want_curldebug="yes"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable c-ares for DNS lookups" >&5
-$as_echo_n "checking whether to enable c-ares for DNS lookups... " >&6; }
-  OPT_ARES="default"
-  # Check whether --enable-ares was given.
-if test "${enable_ares+set}" = set; then :
-  enableval=$enable_ares; OPT_ARES=$enableval
-fi
-
-  case "$OPT_ARES" in
-    no)
-            want_ares="no"
-      ;;
-    default)
-            want_ares="no"
-      ;;
-    *)
-            want_ares="yes"
-      if test -n "$enableval" && test "$enableval" != "yes"; then
-        want_ares_path="$enableval"
-      fi
-      ;;
-  esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_ares" >&5
-$as_echo "$want_ares" >&6; }
-
-
-
-
-
-#
-# save the configure arguments
-#
-CONFIGURE_OPTIONS="\"$ac_configure_args\""
-
-
-# Extract the first word of "sed", so it can be a program name with args.
-set dummy sed; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_SED+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $SED in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_SED="$SED" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_SED" && ac_cv_path_SED="not_found"
-  ;;
-esac
-fi
-SED=$ac_cv_path_SED
-if test -n "$SED"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SED" >&5
-$as_echo "$SED" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-if test -z "$SED" || test "$SED" = "not_found"; then
-  as_fn_error $? "sed not found in PATH. Cannot continue without sed." "$LINENO" 5
-fi
-
-
-# Extract the first word of "grep", so it can be a program name with args.
-set dummy grep; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $GREP in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_GREP="$GREP" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_GREP="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_GREP" && ac_cv_path_GREP="not_found"
-  ;;
-esac
-fi
-GREP=$ac_cv_path_GREP
-if test -n "$GREP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GREP" >&5
-$as_echo "$GREP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-if test -z "$GREP" || test "$GREP" = "not_found"; then
-  as_fn_error $? "grep not found in PATH. Cannot continue without grep." "$LINENO" 5
-fi
-
-
-if echo a | ($GREP -E '(a|b)') >/dev/null 2>&1; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-  EGREP="$GREP -E"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $EGREP" >&5
-$as_echo "$EGREP" >&6; }
-else
-  # Extract the first word of "egrep", so it can be a program name with args.
-set dummy egrep; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $EGREP in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_EGREP="$EGREP" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_EGREP="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_EGREP" && ac_cv_path_EGREP="not_found"
-  ;;
-esac
-fi
-EGREP=$ac_cv_path_EGREP
-if test -n "$EGREP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $EGREP" >&5
-$as_echo "$EGREP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$EGREP" || test "$EGREP" = "not_found"; then
-  as_fn_error $? "egrep not found in PATH. Cannot continue without egrep." "$LINENO" 5
-fi
-
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $AR in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_AR="$AR" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_AR="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  ;;
-esac
-fi
-AR=$ac_cv_path_AR
-if test -n "$AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_path_AR"; then
-  ac_pt_AR=$AR
-  # Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $ac_pt_AR in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_ac_pt_AR="$ac_pt_AR" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_ac_pt_AR="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  ;;
-esac
-fi
-ac_pt_AR=$ac_cv_path_ac_pt_AR
-if test -n "$ac_pt_AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_AR" >&5
-$as_echo "$ac_pt_AR" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_pt_AR" = x; then
-    AR="not_found"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    AR=$ac_pt_AR
-  fi
-else
-  AR="$ac_cv_path_AR"
-fi
-
-if test -z "$AR" || test "$AR" = "not_found"; then
-  as_fn_error $? "ar not found in PATH. Cannot continue without ar." "$LINENO" 5
-fi
-
-
-
-
-if test -f ${srcdir}/include/curl/curlbuild.h; then
-  rm -f ${srcdir}/include/curl/curlbuild.h
-fi
-
-VERSION=`$SED -ne 's/^#define LIBCURL_VERSION "\(.*\)"/\1/p' ${srcdir}/include/curl/curlver.h`
-am__api_version='1.11'
-
-ac_aux_dir=
-for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
-  if test -f "$ac_dir/install-sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f "$ac_dir/install.sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  elif test -f "$ac_dir/shtool"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/shtool install -c"
-    break
-  fi
-done
-if test -z "$ac_aux_dir"; then
-  as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
-
-
-# Find a good install program.  We prefer a C program (faster),
-# so one script is as good as another.  But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
-if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in #((
-  ./ | .// | /[cC]/* | \
-  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-  ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
-  /usr/ucb/* ) ;;
-  *)
-    # OSF1 and SCO ODT 3.0 have their own names for install.
-    # Don't use installbsd from OSF since it installs stuff as root
-    # by default.
-    for ac_prog in ginstall scoinst install; do
-      for ac_exec_ext in '' $ac_executable_extensions; do
-	if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
-	  if test $ac_prog = install &&
-	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-	    # AIX install.  It has an incompatible calling convention.
-	    :
-	  elif test $ac_prog = install &&
-	    grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-	    # program-specific install script used by HP pwplus--don't use.
-	    :
-	  else
-	    rm -rf conftest.one conftest.two conftest.dir
-	    echo one > conftest.one
-	    echo two > conftest.two
-	    mkdir conftest.dir
-	    if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
-	      test -s conftest.one && test -s conftest.two &&
-	      test -s conftest.dir/conftest.one &&
-	      test -s conftest.dir/conftest.two
-	    then
-	      ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-	      break 3
-	    fi
-	  fi
-	fi
-      done
-    done
-    ;;
-esac
-
-  done
-IFS=$as_save_IFS
-
-rm -rf conftest.one conftest.two conftest.dir
-
-fi
-  if test "${ac_cv_path_install+set}" = set; then
-    INSTALL=$ac_cv_path_install
-  else
-    # As a last resort, use the slow shell script.  Don't cache a
-    # value for INSTALL within a source directory, because that will
-    # break other packages using the cache if that directory is
-    # removed, or if the value is a relative name.
-    INSTALL=$ac_install_sh
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
-$as_echo_n "checking whether build environment is sane... " >&6; }
-# Just in case
-sleep 1
-echo timestamp > conftest.file
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name.  Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
-  *[\\\"\#\$\&\'\`$am_lf]*)
-    as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;;
-esac
-case $srcdir in
-  *[\\\"\#\$\&\'\`$am_lf\ \	]*)
-    as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;;
-esac
-
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments.  Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
-   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
-   if test "$*" = "X"; then
-      # -L didn't work.
-      set X `ls -t "$srcdir/configure" conftest.file`
-   fi
-   rm -f conftest.file
-   if test "$*" != "X $srcdir/configure conftest.file" \
-      && test "$*" != "X conftest.file $srcdir/configure"; then
-
-      # If neither matched, then we have a broken ls.  This can happen
-      # if, for instance, CONFIG_SHELL is bash and it inherits a
-      # broken ls alias from the environment.  This has actually
-      # happened.  Such a system could not be considered "sane".
-      as_fn_error $? "ls -t appears to fail.  Make sure there is not a broken
-alias in your environment" "$LINENO" 5
-   fi
-
-   test "$2" = conftest.file
-   )
-then
-   # Ok.
-   :
-else
-   as_fn_error $? "newly created file is older than distributed files!
-Check your system clock" "$LINENO" 5
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-test "$program_prefix" != NONE &&
-  program_transform_name="s&^&$program_prefix&;$program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
-  program_transform_name="s&\$&$program_suffix&;$program_transform_name"
-# Double any \ or $.
-# By default was `s,x,x', remove it if useless.
-ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
-program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
-
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-
-if test x"${MISSING+set}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\	*)
-    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
-  *)
-    MISSING="\${SHELL} $am_aux_dir/missing" ;;
-  esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
-  am_missing_run="$MISSING --run "
-else
-  am_missing_run=
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
-fi
-
-if test x"${install_sh}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\	*)
-    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
-  *)
-    install_sh="\${SHELL} $am_aux_dir/install-sh"
-  esac
-fi
-
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'.  However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-if test "$cross_compiling" != no; then
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$STRIP"; then
-  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
-  ac_ct_STRIP=$STRIP
-  # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_STRIP"; then
-  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_STRIP="strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_STRIP" = x; then
-    STRIP=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    STRIP=$ac_ct_STRIP
-  fi
-else
-  STRIP="$ac_cv_prog_STRIP"
-fi
-
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
-$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
-if test -z "$MKDIR_P"; then
-  if ${ac_cv_path_mkdir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in mkdir gmkdir; do
-	 for ac_exec_ext in '' $ac_executable_extensions; do
-	   { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
-	   case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
-	     'mkdir (GNU coreutils) '* | \
-	     'mkdir (coreutils) '* | \
-	     'mkdir (fileutils) '4.1*)
-	       ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
-	       break 3;;
-	   esac
-	 done
-       done
-  done
-IFS=$as_save_IFS
-
-fi
-
-  test -d ./--version && rmdir ./--version
-  if test "${ac_cv_path_mkdir+set}" = set; then
-    MKDIR_P="$ac_cv_path_mkdir -p"
-  else
-    # As a last resort, use the slow shell script.  Don't cache a
-    # value for MKDIR_P within a source directory, because that will
-    # break other packages using the cache if that directory is
-    # removed, or if the value is a relative name.
-    MKDIR_P="$ac_install_sh -d"
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
-$as_echo "$MKDIR_P" >&6; }
-
-mkdir_p="$MKDIR_P"
-case $mkdir_p in
-  [\\/$]* | ?:[\\/]*) ;;
-  */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-
-for ac_prog in gawk mawk nawk awk
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AWK+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$AWK"; then
-  ac_cv_prog_AWK="$AWK" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_AWK="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-AWK=$ac_cv_prog_AWK
-if test -n "$AWK"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$AWK" && break
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
-	@echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
-  *@@@%%%=?*=@@@%%%*)
-    eval ac_cv_prog_make_${ac_make}_set=yes;;
-  *)
-    eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  SET_MAKE=
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
-  am__leading_dot=.
-else
-  am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
-  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
-  # is not polluted with repeated "-I."
-  am__isrc=' -I$(srcdir)'
-  # test to see if srcdir already configured
-  if test -f $srcdir/config.status; then
-    as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
-  fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
-  if (cygpath --version) >/dev/null 2>/dev/null; then
-    CYGPATH_W='cygpath -w'
-  else
-    CYGPATH_W=echo
-  fi
-fi
-
-
-# Define the identity of the package.
- PACKAGE=curl
- VERSION=$VERSION
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE "$PACKAGE"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define VERSION "$VERSION"
-_ACEOF
-
-# Some tools Automake needs.
-
-ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
-
-
-AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
-
-
-AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
-
-
-AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
-
-
-MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
-
-# We need awk for the "check" target.  The system "awk" is bad on
-# some platforms.
-# Always define AMTAR for backward compatibility.
-
-AMTAR=${AMTAR-"${am_missing_run}tar"}
-
-am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking curl version" >&5
-$as_echo_n "checking curl version... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $VERSION" >&5
-$as_echo "$VERSION" >&6; }
-
-VERSIONNUM=`$SED -ne 's/^#define LIBCURL_VERSION_NUM 0x\(.*\)/\1/p' ${srcdir}/include/curl/curlver.h`
-
-
-PKGADD_PKG="HAXXcurl"
-PKGADD_NAME="cURL - a client that groks URLs"
-PKGADD_VENDOR="curl.haxx.se"
-
-
-
-
-    curl_ssl_msg="no      (--with-ssl / --with-gnutls / --with-nss)"
-    curl_ssh_msg="no      (--with-libssh2)"
-   curl_zlib_msg="no      (--with-zlib)"
-   curl_krb4_msg="no      (--with-krb4*)"
-    curl_gss_msg="no      (--with-gssapi)"
- curl_spnego_msg="no      (--with-spnego)"
-   curl_ares_msg="no      (--enable-ares)"
-   curl_ipv6_msg="no      (--enable-ipv6)"
-    curl_idn_msg="no      (--with-libidn)"
- curl_manual_msg="no      (--enable-manual)"
-curl_verbose_msg="enabled (--disable-verbose)"
-   curl_sspi_msg="no      (--enable-sspi)"
-   curl_ldap_msg="no      (--enable-ldap / --with-ldap-lib / --with-lber-lib)"
-  curl_ldaps_msg="no      (--enable-ldaps)"
-   curl_rtsp_msg="no      (--enable-rtsp)"
-
-ALL_LIBS=$LIBS
-
-
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
-  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
-  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
-  as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
-  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "x$host_alias" = x; then
-  ac_cv_host=$ac_cv_build
-else
-  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
-    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define OS "${host}"
-_ACEOF
-
-
-DEPDIR="${am__leading_dot}deps"
-
-ac_config_commands="$ac_config_commands depfiles"
-
-
-am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
-	@echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
-$as_echo_n "checking for style of include used by $am_make... " >&6; }
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
-  am__include=include
-  am__quote=
-  _am_result=GNU
-  ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
-   echo '.include "confinc"' > confmf
-   case `$am_make -s -f confmf 2> /dev/null` in #(
-   *the\ am__doit\ target*)
-     am__include=.include
-     am__quote="\""
-     _am_result=BSD
-     ;;
-   esac
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
-$as_echo "$_am_result" >&6; }
-rm -f confinc confmf
-
-# Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then :
-  enableval=$enable_dependency_tracking;
-fi
-
-if test "x$enable_dependency_tracking" != xno; then
-  am_depcomp="$ac_aux_dir/depcomp"
-  AMDEPBACKSLASH='\'
-fi
- if test "x$enable_dependency_tracking" != xno; then
-  AMDEP_TRUE=
-  AMDEP_FALSE='#'
-else
-  AMDEP_TRUE='#'
-  AMDEP_FALSE=
-fi
-
-
-
-  ac_save_CFLAGS="$CFLAGS"
-  ac_save_CPPFLAGS="$CPPFLAGS"
-  ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
-  ac_ct_CC=$CC
-  # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-else
-  CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
-          if test -n "$ac_tool_prefix"; then
-    # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="${ac_tool_prefix}cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  fi
-fi
-if test -z "$CC"; then
-  # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-  ac_prog_rejected=no
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
-       ac_prog_rejected=yes
-       continue
-     fi
-    ac_cv_prog_CC="cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
-  # We found a bogon in the path, so make sure we never use it.
-  set dummy $ac_cv_prog_CC
-  shift
-  if test $# != 0; then
-    # We chose a different compiler from the bogus one.
-    # However, it has the same basename, so the bogon will be chosen
-    # first if we set CC to just the basename; use the full file name.
-    shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
-  fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
-  if test -n "$ac_tool_prefix"; then
-  for ac_prog in cl.exe
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    test -n "$CC" && break
-  done
-fi
-if test -z "$CC"; then
-  ac_ct_CC=$CC
-  for ac_prog in cl.exe
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_CC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$ac_ct_CC" && break
-done
-
-  if test "x$ac_ct_CC" = x; then
-    CC=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    CC=$ac_ct_CC
-  fi
-fi
-
-fi
-
-
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5; }
-
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
-  { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compiler $ac_option >&5") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    sed '10a\
-... rest of stderr output deleted ...
-         10q' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-  fi
-  rm -f conftest.er1 conftest.err
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-done
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-
-# The possible output files:
-ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
-
-ac_rmfiles=
-for ac_file in $ac_files
-do
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
-    * ) ac_rmfiles="$ac_rmfiles $ac_file";;
-  esac
-done
-rm -f $ac_rmfiles
-
-if { { ac_try="$ac_link_default"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link_default") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile.  We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
-	;;
-    [ab].out )
-	# We found the default executable, but exeext='' is most
-	# certainly right.
-	break;;
-    *.* )
-	if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
-	then :; else
-	   ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-	fi
-	# We set ac_cv_exeext here because the later test for it is not
-	# safe: cross compilers may not add the suffix if given an `-o'
-	# argument, so we may need to know it at that point already.
-	# Even if this section looks crufty: it has the advantage of
-	# actually working.
-	break;;
-    * )
-	break;;
-  esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
-  ac_file=''
-fi
-if test -z "$ac_file"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "C compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-ac_exeext=$ac_cv_exeext
-
-rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
-if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
-  test -f "$ac_file" || continue
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
-    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-	  break;;
-    * ) break;;
-  esac
-done
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdio.h>
-int main (void)
-{
-FILE *f = fopen ("conftest.out", "w");
- return ferror (f) || fclose (f) != 0;
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files="$ac_clean_files conftest.out"
-# Check that the compiler produces executables we can run.  If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-if test "$cross_compiling" != yes; then
-  { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-  if { ac_try='./conftest$ac_cv_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then
-    cross_compiling=no
-  else
-    if test "$cross_compiling" = maybe; then
-	cross_compiling=yes
-    else
-	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5; }
-    fi
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { { ac_try="$ac_compile"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_compile") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
-  for ac_file in conftest.o conftest.obj conftest.*; do
-  test -f "$ac_file" || continue;
-  case $ac_file in
-    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
-    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
-       break;;
-  esac
-done
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-#ifndef __GNUC__
-       choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_compiler_gnu=yes
-else
-  ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
-  GCC=yes
-else
-  GCC=
-fi
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_save_c_werror_flag=$ac_c_werror_flag
-   ac_c_werror_flag=yes
-   ac_cv_prog_cc_g=no
-   CFLAGS="-g"
-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_g=yes
-else
-  CFLAGS=""
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
-  ac_c_werror_flag=$ac_save_c_werror_flag
-	 CFLAGS="-g"
-	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-   ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
-  CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
-  if test "$GCC" = yes; then
-    CFLAGS="-g -O2"
-  else
-    CFLAGS="-g"
-  fi
-else
-  if test "$GCC" = yes; then
-    CFLAGS="-O2"
-  else
-    CFLAGS=
-  fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
-   inside strings and character constants.  */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int main (void)
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
- ;
- return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-	-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
-  CC="$ac_save_CC $ac_arg"
-  if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_prog_cc_c89=$ac_arg
-fi
-rm -f core conftest.err conftest.$ac_objext
-  test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
-  x)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
-  xno)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
-  *)
-    CC="$CC $ac_cv_prog_cc_c89"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
-
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-depcc="$CC"   am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if ${am_cv_CC_dependencies_compiler_type+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
-  # We make a subdir and do the tests there.  Otherwise we can end up
-  # making bogus files that we don't know about and never remove.  For
-  # instance it was reported that on HP-UX the gcc test will end up
-  # making a dummy file named `D' -- because `-MD' means `put the output
-  # in D'.
-  mkdir conftest.dir
-  # Copy depcomp to subdir because otherwise we won't find it if we're
-  # using a relative directory.
-  cp "$am_depcomp" conftest.dir
-  cd conftest.dir
-  # We will build objects and dependencies in a subdirectory because
-  # it helps to detect inapplicable dependency modes.  For instance
-  # both Tru64's cc and ICC support -MD to output dependencies as a
-  # side effect of compilation, but ICC will put the dependencies in
-  # the current directory while Tru64 will put them in the object
-  # directory.
-  mkdir sub
-
-  am_cv_CC_dependencies_compiler_type=none
-  if test "$am_compiler_list" = ""; then
-     am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
-  fi
-  am__universal=false
-  case " $depcc " in #(
-     *\ -arch\ *\ -arch\ *) am__universal=true ;;
-     esac
-
-  for depmode in $am_compiler_list; do
-    # Setup a source with many dependencies, because some compilers
-    # like to wrap large dependency lists on column 80 (with \), and
-    # we should not choose a depcomp mode which is confused by this.
-    #
-    # We need to recreate these files for each test, as the compiler may
-    # overwrite some of them when testing with obscure command lines.
-    # This happens at least with the AIX C compiler.
-    : > sub/conftest.c
-    for i in 1 2 3 4 5 6; do
-      echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
-      # Solaris 8's {/usr,}/bin/sh.
-      touch sub/conftst$i.h
-    done
-    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
-    # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.  Also, some Intel
-    # versions had trouble with output in subdirs
-    am__obj=sub/conftest.${OBJEXT-o}
-    am__minus_obj="-o $am__obj"
-    case $depmode in
-    gcc)
-      # This depmode causes a compiler race in universal mode.
-      test "$am__universal" = false || continue
-      ;;
-    nosideeffect)
-      # after this tag, mechanisms are not by side-effect, so they'll
-      # only be used when explicitly requested
-      if test "x$enable_dependency_tracking" = xyes; then
-	continue
-      else
-	break
-      fi
-      ;;
-    msvisualcpp | msvcmsys)
-      # This compiler won't grok `-c -o', but also, the minuso test has
-      # not run yet.  These depmodes are late enough in the game, and
-      # so weak that their functioning should not be impacted.
-      am__obj=conftest.${OBJEXT-o}
-      am__minus_obj=
-      ;;
-    none) break ;;
-    esac
-    if depmode=$depmode \
-       source=sub/conftest.c object=$am__obj \
-       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
-         >/dev/null 2>conftest.err &&
-       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
-       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
-      # icc doesn't choke on unknown options, it will just issue warnings
-      # or remarks (even with -Werror).  So we grep stderr for any message
-      # that says an option was ignored or not supported.
-      # When given -MP, icc 7.0 and 7.1 complain thusly:
-      #   icc: Command line warning: ignoring option '-M'; no argument required
-      # The diagnosis changed in icc 8.0:
-      #   icc: Command line remark: option '-MP' not supported
-      if (grep 'ignoring option' conftest.err ||
-          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
-        am_cv_CC_dependencies_compiler_type=$depmode
-        break
-      fi
-    fi
-  done
-
-  cd ..
-  rm -rf conftest.dir
-else
-  am_cv_CC_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
-CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
-
- if
-  test "x$enable_dependency_tracking" != xno \
-  && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
-  am__fastdepCC_TRUE=
-  am__fastdepCC_FALSE='#'
-else
-  am__fastdepCC_TRUE='#'
-  am__fastdepCC_FALSE=
-fi
-
-
-  CFLAGS="$ac_save_CFLAGS"
-  CPPFLAGS="$ac_save_CPPFLAGS"
-
-
-
-
-curl_includes_inttypes="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-/* includes end */"
-  case $host_os in
-    irix*)
-      ac_cv_header_stdint_h="no"
-      ;;
-  esac
-  for ac_header in sys/types.h stdint.h inttypes.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_inttypes
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-  if ${ac_cv_prog_CPP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-		     Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-  break
-fi
-
-    done
-    ac_cv_prog_CPP=$CPP
-
-fi
-  CPP=$ac_cv_prog_CPP
-else
-  ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-		     Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$GREP"; then
-  ac_path_GREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in grep ggrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
-# Check for GNU ac_path_GREP and select it if it is found.
-  # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'GREP' >> "conftest.nl"
-    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_GREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_GREP="$ac_path_GREP"
-      ac_path_GREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_GREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_GREP"; then
-    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_GREP=$GREP
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
-   then ac_cv_path_EGREP="$GREP -E"
-   else
-     if test -z "$EGREP"; then
-  ac_path_EGREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in egrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
-  # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'EGREP' >> "conftest.nl"
-    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_EGREP="$ac_path_EGREP"
-      ac_path_EGREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_EGREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_EGREP"; then
-    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_EGREP=$EGREP
-fi
-
-   fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-		   (('a' <= (c) && (c) <= 'i') \
-		     || ('j' <= (c) && (c) <= 'r') \
-		     || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-	|| toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-		  inttypes.h stdint.h unistd.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-        #
-  if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  #
-  # The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long" >&5
-$as_echo_n "checking size of long... " >&6; }
-if ${ac_cv_sizeof_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long"        "$ac_includes_default"; then :
-
-else
-  if test "$ac_cv_type_long" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (long)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_long=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
-$as_echo "$ac_cv_sizeof_long" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_LONG $ac_cv_sizeof_long
-_ACEOF
-
-
-  # The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of void*" >&5
-$as_echo_n "checking size of void*... " >&6; }
-if ${ac_cv_sizeof_voidp+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (void*))" "ac_cv_sizeof_voidp"        "$ac_includes_default"; then :
-
-else
-  if test "$ac_cv_type_voidp" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (void*)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_voidp=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_voidp" >&5
-$as_echo "$ac_cv_sizeof_voidp" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_VOIDP $ac_cv_sizeof_voidp
-_ACEOF
-
-
-  #
-  if test -z "$ac_cv_sizeof_long" ||
-    test "$ac_cv_sizeof_long" -eq "0"; then
-    as_fn_error $? "cannot find out size of long." "$LINENO" 5
-  fi
-  if test -z "$ac_cv_sizeof_voidp" ||
-     test "$ac_cv_sizeof_voidp" -eq "0"; then
-    as_fn_error $? "cannot find out size of void*." "$LINENO" 5
-  fi
-  #
-  x_LP64_long=""
-  x_LP32_long=""
-  x_LP16_long=""
-  #
-  if test "$ac_cv_sizeof_long" -eq "8" &&
-     test "$ac_cv_sizeof_voidp" -ge "8"; then
-    x_LP64_long="long"
-  elif test "$ac_cv_sizeof_long" -eq "4" &&
-       test "$ac_cv_sizeof_voidp" -ge "4"; then
-    x_LP32_long="long"
-  elif test "$ac_cv_sizeof_long" -eq "2" &&
-       test "$ac_cv_sizeof_voidp" -ge "2"; then
-    x_LP16_long="long"
-  fi
-  #
-    #
-  curl_typeof_curl_off_t="unknown"
-  curl_sizeof_curl_off_t="unknown"
-  curl_format_curl_off_t="unknown"
-  curl_format_curl_off_tu="unknown"
-  #
-  if test "$curl_typeof_curl_off_t" = "unknown"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit curl_off_t data type" >&5
-$as_echo_n "checking for 64-bit curl_off_t data type... " >&6; }
-    for t8 in          \
-      "$x_LP64_long"   \
-      'int64_t'        \
-      '__int64'        \
-      'long long'      \
-      '__longlong'     \
-      '__longlong_t'   ; do
-
-    if test "$curl_typeof_curl_off_t" = "unknown" && test ! -z "$t8"; then
-    tmp_includes=""
-    tmp_source=""
-    tmp_fmt=""
-    case `$as_echo "$t8" | $as_tr_sh` in
-      int64_t)
-        tmp_includes="$curl_includes_inttypes"
-        tmp_source="char f[] = PRId64;"
-        tmp_fmt="PRId64"
-        ;;
-      int32_t)
-        tmp_includes="$curl_includes_inttypes"
-        tmp_source="char f[] = PRId32;"
-        tmp_fmt="PRId32"
-        ;;
-      int16_t)
-        tmp_includes="$curl_includes_inttypes"
-        tmp_source="char f[] = PRId16;"
-        tmp_fmt="PRId16"
-        ;;
-    esac
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $tmp_includes
-        typedef $t8 curl_off_t;
-        typedef char dummy_arr[sizeof(curl_off_t) == 8 ? 1 : -1];
-
-int main (void)
-{
-
-        $tmp_source
-        curl_off_t dummy;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      if test -z "$tmp_fmt"; then
-        curl_typeof_curl_off_t="$t8"
-        curl_sizeof_curl_off_t="8"
-      else
-
-  as_ac_HaveDef=`$as_echo "curl_cv_have_def_$tmp_fmt" | $as_tr_sh`
-  as_ac_Def=`$as_echo "curl_cv_def_$tmp_fmt" | $as_tr_sh`
-  if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-    $curl_includes_inttypes
-#ifdef $tmp_fmt
-CURL_DEF_TOKEN $tmp_fmt
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "$tmp_fmt"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    eval "$as_ac_HaveDef=no"
-
-  else
-    eval "$as_ac_HaveDef=yes"
-    eval "$as_ac_Def=\$tmp_exp"
-
-  fi
-
-        as_tmp_HaveFmtDef=`$as_echo "curl_cv_have_def_$tmp_fmt" | $as_tr_sh`
-        as_tmp_FmtDef=`$as_echo "curl_cv_def_$tmp_fmt" | $as_tr_sh`
-        if test `eval 'as_val=${'$as_tmp_HaveFmtDef'};$as_echo "$as_val"'` = "yes"; then
-          curl_format_curl_off_t=`eval 'as_val=${'$as_tmp_FmtDef'};$as_echo "$as_val"'`
-          curl_typeof_curl_off_t="$t8"
-          curl_sizeof_curl_off_t="8"
-        fi
-                      fi
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-
-    done
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_typeof_curl_off_t" >&5
-$as_echo "$curl_typeof_curl_off_t" >&6; }
-  fi
-  if test "$curl_typeof_curl_off_t" = "unknown"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 32-bit curl_off_t data type" >&5
-$as_echo_n "checking for 32-bit curl_off_t data type... " >&6; }
-    for t4 in          \
-      "$x_LP32_long"   \
-      'int32_t'        \
-      '__int32'        \
-      'int'            ; do
-
-    if test "$curl_typeof_curl_off_t" = "unknown" && test ! -z "$t4"; then
-    tmp_includes=""
-    tmp_source=""
-    tmp_fmt=""
-    case `$as_echo "$t4" | $as_tr_sh` in
-      int64_t)
-        tmp_includes="$curl_includes_inttypes"
-        tmp_source="char f[] = PRId64;"
-        tmp_fmt="PRId64"
-        ;;
-      int32_t)
-        tmp_includes="$curl_includes_inttypes"
-        tmp_source="char f[] = PRId32;"
-        tmp_fmt="PRId32"
-        ;;
-      int16_t)
-        tmp_includes="$curl_includes_inttypes"
-        tmp_source="char f[] = PRId16;"
-        tmp_fmt="PRId16"
-        ;;
-    esac
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $tmp_includes
-        typedef $t4 curl_off_t;
-        typedef char dummy_arr[sizeof(curl_off_t) == 4 ? 1 : -1];
-
-int main (void)
-{
-
-        $tmp_source
-        curl_off_t dummy;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      if test -z "$tmp_fmt"; then
-        curl_typeof_curl_off_t="$t4"
-        curl_sizeof_curl_off_t="4"
-      else
-
-  as_ac_HaveDef=`$as_echo "curl_cv_have_def_$tmp_fmt" | $as_tr_sh`
-  as_ac_Def=`$as_echo "curl_cv_def_$tmp_fmt" | $as_tr_sh`
-  if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-    $curl_includes_inttypes
-#ifdef $tmp_fmt
-CURL_DEF_TOKEN $tmp_fmt
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "$tmp_fmt"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    eval "$as_ac_HaveDef=no"
-
-  else
-    eval "$as_ac_HaveDef=yes"
-    eval "$as_ac_Def=\$tmp_exp"
-
-  fi
-
-        as_tmp_HaveFmtDef=`$as_echo "curl_cv_have_def_$tmp_fmt" | $as_tr_sh`
-        as_tmp_FmtDef=`$as_echo "curl_cv_def_$tmp_fmt" | $as_tr_sh`
-        if test `eval 'as_val=${'$as_tmp_HaveFmtDef'};$as_echo "$as_val"'` = "yes"; then
-          curl_format_curl_off_t=`eval 'as_val=${'$as_tmp_FmtDef'};$as_echo "$as_val"'`
-          curl_typeof_curl_off_t="$t4"
-          curl_sizeof_curl_off_t="4"
-        fi
-                      fi
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-
-    done
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_typeof_curl_off_t" >&5
-$as_echo "$curl_typeof_curl_off_t" >&6; }
-  fi
-  if test "$curl_typeof_curl_off_t" = "unknown"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 16-bit curl_off_t data type" >&5
-$as_echo_n "checking for 16-bit curl_off_t data type... " >&6; }
-    for t2 in          \
-      "$x_LP16_long"   \
-      'int16_t'        \
-      '__int16'        \
-      'int'            ; do
-
-    if test "$curl_typeof_curl_off_t" = "unknown" && test ! -z "$t2"; then
-    tmp_includes=""
-    tmp_source=""
-    tmp_fmt=""
-    case `$as_echo "$t2" | $as_tr_sh` in
-      int64_t)
-        tmp_includes="$curl_includes_inttypes"
-        tmp_source="char f[] = PRId64;"
-        tmp_fmt="PRId64"
-        ;;
-      int32_t)
-        tmp_includes="$curl_includes_inttypes"
-        tmp_source="char f[] = PRId32;"
-        tmp_fmt="PRId32"
-        ;;
-      int16_t)
-        tmp_includes="$curl_includes_inttypes"
-        tmp_source="char f[] = PRId16;"
-        tmp_fmt="PRId16"
-        ;;
-    esac
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $tmp_includes
-        typedef $t2 curl_off_t;
-        typedef char dummy_arr[sizeof(curl_off_t) == 2 ? 1 : -1];
-
-int main (void)
-{
-
-        $tmp_source
-        curl_off_t dummy;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      if test -z "$tmp_fmt"; then
-        curl_typeof_curl_off_t="$t2"
-        curl_sizeof_curl_off_t="2"
-      else
-
-  as_ac_HaveDef=`$as_echo "curl_cv_have_def_$tmp_fmt" | $as_tr_sh`
-  as_ac_Def=`$as_echo "curl_cv_def_$tmp_fmt" | $as_tr_sh`
-  if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-    $curl_includes_inttypes
-#ifdef $tmp_fmt
-CURL_DEF_TOKEN $tmp_fmt
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "$tmp_fmt"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    eval "$as_ac_HaveDef=no"
-
-  else
-    eval "$as_ac_HaveDef=yes"
-    eval "$as_ac_Def=\$tmp_exp"
-
-  fi
-
-        as_tmp_HaveFmtDef=`$as_echo "curl_cv_have_def_$tmp_fmt" | $as_tr_sh`
-        as_tmp_FmtDef=`$as_echo "curl_cv_def_$tmp_fmt" | $as_tr_sh`
-        if test `eval 'as_val=${'$as_tmp_HaveFmtDef'};$as_echo "$as_val"'` = "yes"; then
-          curl_format_curl_off_t=`eval 'as_val=${'$as_tmp_FmtDef'};$as_echo "$as_val"'`
-          curl_typeof_curl_off_t="$t2"
-          curl_sizeof_curl_off_t="2"
-        fi
-                      fi
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-
-    done
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_typeof_curl_off_t" >&5
-$as_echo "$curl_typeof_curl_off_t" >&6; }
-  fi
-  if test "$curl_typeof_curl_off_t" = "unknown"; then
-    as_fn_error $? "cannot find data type for curl_off_t." "$LINENO" 5
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of curl_off_t" >&5
-$as_echo_n "checking size of curl_off_t... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_sizeof_curl_off_t" >&5
-$as_echo "$curl_sizeof_curl_off_t" >&6; }
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking formatting string directive for curl_off_t" >&5
-$as_echo_n "checking formatting string directive for curl_off_t... " >&6; }
-  if test "$curl_format_curl_off_t" != "unknown"; then
-    x_pull_headers="yes"
-    curl_format_curl_off_t=`echo "$curl_format_curl_off_t" | "$SED" 's/["]//g'`
-    curl_format_curl_off_tu=`echo "$curl_format_curl_off_t" | "$SED" 's/i$/u/'`
-    curl_format_curl_off_tu=`echo "$curl_format_curl_off_tu" | "$SED" 's/d$/u/'`
-    curl_format_curl_off_tu=`echo "$curl_format_curl_off_tu" | "$SED" 's/D$/U/'`
-  else
-    x_pull_headers="no"
-    case `$as_echo "$curl_typeof_curl_off_t" | $as_tr_sh` in
-      long_long | __longlong | __longlong_t)
-        curl_format_curl_off_t="lld"
-        curl_format_curl_off_tu="llu"
-        ;;
-      long)
-        curl_format_curl_off_t="ld"
-        curl_format_curl_off_tu="lu"
-        ;;
-      int)
-        curl_format_curl_off_t="d"
-        curl_format_curl_off_tu="u"
-        ;;
-      __int64)
-        curl_format_curl_off_t="I64d"
-        curl_format_curl_off_tu="I64u"
-        ;;
-      __int32)
-        curl_format_curl_off_t="I32d"
-        curl_format_curl_off_tu="I32u"
-        ;;
-      __int16)
-        curl_format_curl_off_t="I16d"
-        curl_format_curl_off_tu="I16u"
-        ;;
-      *)
-        as_fn_error $? "cannot find print format string for curl_off_t." "$LINENO" 5
-        ;;
-    esac
-  fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: \"$curl_format_curl_off_t\"" >&5
-$as_echo "\"$curl_format_curl_off_t\"" >&6; }
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking formatting string directive for unsigned curl_off_t" >&5
-$as_echo_n "checking formatting string directive for unsigned curl_off_t... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: \"$curl_format_curl_off_tu\"" >&5
-$as_echo "\"$curl_format_curl_off_tu\"" >&6; }
-  #
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking constant suffix string for curl_off_t" >&5
-$as_echo_n "checking constant suffix string for curl_off_t... " >&6; }
-  #
-  curl_suffix_curl_off_t="unknown"
-  curl_suffix_curl_off_tu="unknown"
-  #
-  case `$as_echo "$curl_typeof_curl_off_t" | $as_tr_sh` in
-    long_long | __longlong | __longlong_t)
-      tst_suffixes="LL::"
-      ;;
-    long)
-      tst_suffixes="L::"
-      ;;
-    int)
-      tst_suffixes="::"
-      ;;
-    __int64 | int64_t)
-      tst_suffixes="LL:i64::"
-      ;;
-    __int32 | int32_t)
-      tst_suffixes="L:i32::"
-      ;;
-    __int16 | int16_t)
-      tst_suffixes="L:i16::"
-      ;;
-    *)
-      as_fn_error $? "unexpected data type $curl_typeof_curl_off_t" "$LINENO" 5
-      ;;
-  esac
-  #
-  old_IFS=$IFS; IFS=':'
-  for tmp_ssuf in $tst_suffixes ; do
-    IFS=$old_IFS
-    if test "x$curl_suffix_curl_off_t" = "xunknown"; then
-      case $tmp_ssuf in
-        i64 | i32 | i16)
-          tmp_usuf="u$tmp_ssuf"
-          ;;
-        LL | L)
-          tmp_usuf="U$tmp_ssuf"
-          ;;
-        *)
-          tmp_usuf=""
-          ;;
-      esac
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_inttypes
-          typedef $curl_typeof_curl_off_t new_t;
-
-int main (void)
-{
-
-          new_t s1;
-          new_t s2;
-          s1 = -10$tmp_ssuf ;
-          s2 =  20$tmp_ssuf ;
-          if(s1 > s2)
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        curl_suffix_curl_off_t="$tmp_ssuf"
-        curl_suffix_curl_off_tu="$tmp_usuf"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-  done
-  IFS=$old_IFS
-  #
-  if test "x$curl_suffix_curl_off_t" = "xunknown"; then
-    as_fn_error $? "cannot find constant suffix string for curl_off_t." "$LINENO" 5
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_suffix_curl_off_t" >&5
-$as_echo "$curl_suffix_curl_off_t" >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking constant suffix string for unsigned curl_off_t" >&5
-$as_echo_n "checking constant suffix string for unsigned curl_off_t... " >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_suffix_curl_off_tu" >&5
-$as_echo "$curl_suffix_curl_off_tu" >&6; }
-  fi
-  #
-
-  #
-  if test "$x_pull_headers" = "yes"; then
-    if test "x$ac_cv_header_sys_types_h" = "xyes"; then
-
-cat >>confdefs.h <<_EOF
-#define CURL_PULL_SYS_TYPES_H 1
-_EOF
-
-    fi
-    if test "x$ac_cv_header_stdint_h" = "xyes"; then
-
-cat >>confdefs.h <<_EOF
-#define CURL_PULL_STDINT_H 1
-_EOF
-
-    fi
-    if test "x$ac_cv_header_inttypes_h" = "xyes"; then
-
-cat >>confdefs.h <<_EOF
-#define CURL_PULL_INTTYPES_H 1
-_EOF
-
-    fi
-  fi
-  #
-
-cat >>confdefs.h <<_EOF
-#define CURL_TYPEOF_CURL_OFF_T $curl_typeof_curl_off_t
-_EOF
-
-
-cat >>confdefs.h <<_EOF
-#define CURL_FORMAT_CURL_OFF_T "$curl_format_curl_off_t"
-_EOF
-
-
-cat >>confdefs.h <<_EOF
-#define CURL_FORMAT_CURL_OFF_TU "$curl_format_curl_off_tu"
-_EOF
-
-
-cat >>confdefs.h <<_EOF
-#define CURL_FORMAT_OFF_T "%$curl_format_curl_off_t"
-_EOF
-
-
-cat >>confdefs.h <<_EOF
-#define CURL_SIZEOF_CURL_OFF_T $curl_sizeof_curl_off_t
-_EOF
-
-
-cat >>confdefs.h <<_EOF
-#define CURL_SUFFIX_CURL_OFF_T $curl_suffix_curl_off_t
-_EOF
-
-
-cat >>confdefs.h <<_EOF
-#define CURL_SUFFIX_CURL_OFF_TU $curl_suffix_curl_off_tu
-_EOF
-
-  #
-
-
-
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if OS is AIX (to define _ALL_SOURCE)" >&5
-$as_echo_n "checking if OS is AIX (to define _ALL_SOURCE)... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#ifdef _AIX
-   yes_this_is_aix
-#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes_this_is_aix" >/dev/null 2>&1; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    $as_echo "#define _ALL_SOURCE 1" >>confdefs.h
-
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-rm -f conftest*
-
-
-
-
-    #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _THREAD_SAFE is already defined" >&5
-$as_echo_n "checking if _THREAD_SAFE is already defined... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-#ifdef _THREAD_SAFE
-      int dummy=1;
-#else
-      force compilation error
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tmp_thread_safe_initially_defined="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tmp_thread_safe_initially_defined="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  #
-  if test "$tmp_thread_safe_initially_defined" = "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _THREAD_SAFE is actually needed" >&5
-$as_echo_n "checking if _THREAD_SAFE is actually needed... " >&6; }
-
-  case $host_os in
-    aix[123].* | aix4.[012].*)
-            tmp_need_thread_safe="no"
-      ;;
-    aix*)
-            tmp_need_thread_safe="yes"
-      ;;
-    *)
-      tmp_need_thread_safe="no"
-      ;;
-  esac
-
-    if test "$tmp_need_thread_safe" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _THREAD_SAFE is onwards defined" >&5
-$as_echo_n "checking if _THREAD_SAFE is onwards defined... " >&6; }
-  if test "$tmp_thread_safe_initially_defined" = "yes" ||
-    test "$tmp_need_thread_safe" = "yes"; then
-
-
-$as_echo "#define NEED_THREAD_SAFE 1" >>confdefs.h
-
-cat >>confdefs.h <<_EOF
-#ifndef _THREAD_SAFE
-#  define _THREAD_SAFE
-#endif
-_EOF
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-  #
-
-
-    #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _REENTRANT is already defined" >&5
-$as_echo_n "checking if _REENTRANT is already defined... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-#ifdef _REENTRANT
-      int dummy=1;
-#else
-      force compilation error
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tmp_reentrant_initially_defined="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tmp_reentrant_initially_defined="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  #
-  if test "$tmp_reentrant_initially_defined" = "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _REENTRANT is actually needed" >&5
-$as_echo_n "checking if _REENTRANT is actually needed... " >&6; }
-
-  case $host_os in
-    solaris*)
-      tmp_need_reentrant="yes"
-      ;;
-    *)
-      tmp_need_reentrant="no"
-      ;;
-  esac
-
-    if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <errno.h>
-
-int main (void)
-{
-
-      if(0 != errno)
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tmp_errno="yes"
-
-else
-
-    tmp_errno="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  if test "$tmp_errno" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <errno.h>
-
-int main (void)
-{
-
-#ifdef errno
-        int dummy=1;
-#else
-        force compilation error
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      tmp_errno="errno_macro_defined"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define _REENTRANT
-#include <errno.h>
-
-int main (void)
-{
-
-#ifdef errno
-          int dummy=1;
-#else
-          force compilation error
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        tmp_errno="errno_macro_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-
-    fi
-    if test "$tmp_need_reentrant" = "no"; then
-
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define gmtime_r innocuous_gmtime_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef gmtime_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char gmtime_r ();
-#if defined __stub_gmtime_r || defined __stub___gmtime_r
-choke me
-#endif
-
-int main (void)
-{
-return gmtime_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_gmtime_r="yes"
-
-else
-
-    tmp_gmtime_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_gmtime_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gmtime_r" >/dev/null 2>&1; then :
-
-      tmp_gmtime_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gmtime_r" >/dev/null 2>&1; then :
-
-        tmp_gmtime_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define localtime_r innocuous_localtime_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef localtime_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char localtime_r ();
-#if defined __stub_localtime_r || defined __stub___localtime_r
-choke me
-#endif
-
-int main (void)
-{
-return localtime_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_localtime_r="yes"
-
-else
-
-    tmp_localtime_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_localtime_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "localtime_r" >/dev/null 2>&1; then :
-
-      tmp_localtime_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <time.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "localtime_r" >/dev/null 2>&1; then :
-
-        tmp_localtime_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strerror_r innocuous_strerror_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strerror_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char strerror_r ();
-#if defined __stub_strerror_r || defined __stub___strerror_r
-choke me
-#endif
-
-int main (void)
-{
-return strerror_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_strerror_r="yes"
-
-else
-
-    tmp_strerror_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_strerror_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strerror_r" >/dev/null 2>&1; then :
-
-      tmp_strerror_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strerror_r" >/dev/null 2>&1; then :
-
-        tmp_strerror_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strtok_r innocuous_strtok_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strtok_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char strtok_r ();
-#if defined __stub_strtok_r || defined __stub___strtok_r
-choke me
-#endif
-
-int main (void)
-{
-return strtok_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_strtok_r="yes"
-
-else
-
-    tmp_strtok_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_strtok_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strtok_r" >/dev/null 2>&1; then :
-
-      tmp_strtok_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strtok_r" >/dev/null 2>&1; then :
-
-        tmp_strtok_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define inet_ntoa_r innocuous_inet_ntoa_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef inet_ntoa_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char inet_ntoa_r ();
-#if defined __stub_inet_ntoa_r || defined __stub___inet_ntoa_r
-choke me
-#endif
-
-int main (void)
-{
-return inet_ntoa_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_inet_ntoa_r="yes"
-
-else
-
-    tmp_inet_ntoa_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_inet_ntoa_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "inet_ntoa_r" >/dev/null 2>&1; then :
-
-      tmp_inet_ntoa_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "inet_ntoa_r" >/dev/null 2>&1; then :
-
-        tmp_inet_ntoa_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define gethostbyaddr_r innocuous_gethostbyaddr_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef gethostbyaddr_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyaddr_r ();
-#if defined __stub_gethostbyaddr_r || defined __stub___gethostbyaddr_r
-choke me
-#endif
-
-int main (void)
-{
-return gethostbyaddr_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_gethostbyaddr_r="yes"
-
-else
-
-    tmp_gethostbyaddr_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_gethostbyaddr_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyaddr_r" >/dev/null 2>&1; then :
-
-      tmp_gethostbyaddr_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyaddr_r" >/dev/null 2>&1; then :
-
-        tmp_gethostbyaddr_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define gethostbyname_r innocuous_gethostbyname_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef gethostbyname_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyname_r ();
-#if defined __stub_gethostbyname_r || defined __stub___gethostbyname_r
-choke me
-#endif
-
-int main (void)
-{
-return gethostbyname_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_gethostbyname_r="yes"
-
-else
-
-    tmp_gethostbyname_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_gethostbyname_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyname_r" >/dev/null 2>&1; then :
-
-      tmp_gethostbyname_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyname_r" >/dev/null 2>&1; then :
-
-        tmp_gethostbyname_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define getprotobyname_r innocuous_getprotobyname_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef getprotobyname_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char getprotobyname_r ();
-#if defined __stub_getprotobyname_r || defined __stub___getprotobyname_r
-choke me
-#endif
-
-int main (void)
-{
-return getprotobyname_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_getprotobyname_r="yes"
-
-else
-
-    tmp_getprotobyname_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_getprotobyname_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getprotobyname_r" >/dev/null 2>&1; then :
-
-      tmp_getprotobyname_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getprotobyname_r" >/dev/null 2>&1; then :
-
-        tmp_getprotobyname_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define getservbyport_r innocuous_getservbyport_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef getservbyport_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char getservbyport_r ();
-#if defined __stub_getservbyport_r || defined __stub___getservbyport_r
-choke me
-#endif
-
-int main (void)
-{
-return getservbyport_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    tmp_getservbyport_r="yes"
-
-else
-
-    tmp_getservbyport_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test "$tmp_getservbyport_r" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getservbyport_r" >/dev/null 2>&1; then :
-
-      tmp_getservbyport_r="proto_declared"
-
-else
-
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getservbyport_r" >/dev/null 2>&1; then :
-
-        tmp_getservbyport_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-
-fi
-rm -f conftest*
-
-
-fi
-rm -f conftest*
-
-  fi
-
-  fi
-
-    fi
-    if test "$tmp_need_reentrant" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _REENTRANT is onwards defined" >&5
-$as_echo_n "checking if _REENTRANT is onwards defined... " >&6; }
-  if test "$tmp_reentrant_initially_defined" = "yes" ||
-    test "$tmp_need_reentrant" = "yes"; then
-
-
-$as_echo "#define NEED_REENTRANT 1" >>confdefs.h
-
-cat >>confdefs.h <<_EOF
-#ifndef _REENTRANT
-#  define _REENTRANT
-#endif
-_EOF
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-  #
-
-
-# Check whether --enable-largefile was given.
-if test "${enable_largefile+set}" = set; then :
-  enableval=$enable_largefile;
-fi
-
-if test "$enable_largefile" != no; then
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
-$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
-if ${ac_cv_sys_largefile_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_sys_largefile_CC=no
-     if test "$GCC" != yes; then
-       ac_save_CC=$CC
-       while :; do
-	 # IRIX 6.2 and later do not support large files by default,
-	 # so use the C compiler's -n32 option if that helps.
-	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-		       && LARGE_OFF_T % 2147483647 == 1)
-		      ? 1 : -1];
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-	 if ac_fn_c_try_compile "$LINENO"; then :
-  break
-fi
-rm -f core conftest.err conftest.$ac_objext
-	 CC="$CC -n32"
-	 if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_largefile_CC=' -n32'; break
-fi
-rm -f core conftest.err conftest.$ac_objext
-	 break
-       done
-       CC=$ac_save_CC
-       rm -f conftest.$ac_ext
-    fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
-$as_echo "$ac_cv_sys_largefile_CC" >&6; }
-  if test "$ac_cv_sys_largefile_CC" != no; then
-    CC=$CC$ac_cv_sys_largefile_CC
-  fi
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
-if ${ac_cv_sys_file_offset_bits+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  while :; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-		       && LARGE_OFF_T % 2147483647 == 1)
-		      ? 1 : -1];
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_file_offset_bits=no; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#define _FILE_OFFSET_BITS 64
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-		       && LARGE_OFF_T % 2147483647 == 1)
-		      ? 1 : -1];
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_file_offset_bits=64; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  ac_cv_sys_file_offset_bits=unknown
-  break
-done
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
-$as_echo "$ac_cv_sys_file_offset_bits" >&6; }
-case $ac_cv_sys_file_offset_bits in #(
-  no | unknown) ;;
-  *)
-cat >>confdefs.h <<_ACEOF
-#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
-_ACEOF
-;;
-esac
-rm -rf conftest*
-  if test $ac_cv_sys_file_offset_bits = unknown; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
-$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
-if ${ac_cv_sys_large_files+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  while :; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-		       && LARGE_OFF_T % 2147483647 == 1)
-		      ? 1 : -1];
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_large_files=no; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#define _LARGE_FILES 1
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-		       && LARGE_OFF_T % 2147483647 == 1)
-		      ? 1 : -1];
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_sys_large_files=1; break
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  ac_cv_sys_large_files=unknown
-  break
-done
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
-$as_echo "$ac_cv_sys_large_files" >&6; }
-case $ac_cv_sys_large_files in #(
-  no | unknown) ;;
-  *)
-cat >>confdefs.h <<_ACEOF
-#define _LARGE_FILES $ac_cv_sys_large_files
-_ACEOF
-;;
-esac
-rm -rf conftest*
-  fi
-fi
-
-
-enable_win32_dll=yes
-
-case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
-set dummy ${ac_tool_prefix}as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AS+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$AS"; then
-  ac_cv_prog_AS="$AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_AS="${ac_tool_prefix}as"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-AS=$ac_cv_prog_AS
-if test -n "$AS"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
-$as_echo "$AS" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_AS"; then
-  ac_ct_AS=$AS
-  # Extract the first word of "as", so it can be a program name with args.
-set dummy as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AS+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_AS"; then
-  ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_AS="as"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_AS=$ac_cv_prog_ac_ct_AS
-if test -n "$ac_ct_AS"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
-$as_echo "$ac_ct_AS" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_AS" = x; then
-    AS="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    AS=$ac_ct_AS
-  fi
-else
-  AS="$ac_cv_prog_AS"
-fi
-
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$DLLTOOL"; then
-  ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-DLLTOOL=$ac_cv_prog_DLLTOOL
-if test -n "$DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_DLLTOOL"; then
-  ac_ct_DLLTOOL=$DLLTOOL
-  # Extract the first word of "dlltool", so it can be a program name with args.
-set dummy dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_DLLTOOL"; then
-  ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_DLLTOOL="dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
-if test -n "$ac_ct_DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_DLLTOOL" = x; then
-    DLLTOOL="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    DLLTOOL=$ac_ct_DLLTOOL
-  fi
-else
-  DLLTOOL="$ac_cv_prog_DLLTOOL"
-fi
-
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
-set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$OBJDUMP"; then
-  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-OBJDUMP=$ac_cv_prog_OBJDUMP
-if test -n "$OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OBJDUMP"; then
-  ac_ct_OBJDUMP=$OBJDUMP
-  # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_OBJDUMP"; then
-  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_OBJDUMP="objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
-if test -n "$ac_ct_OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_OBJDUMP" = x; then
-    OBJDUMP="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    OBJDUMP=$ac_ct_OBJDUMP
-  fi
-else
-  OBJDUMP="$ac_cv_prog_OBJDUMP"
-fi
-
-  ;;
-esac
-
-test -z "$AS" && AS=as
-
-
-
-
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-
-
-
-
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if arch-OS host is AMD64-Linux/FreeBSD (to build static libraries with PIC)" >&5
-$as_echo_n "checking if arch-OS host is AMD64-Linux/FreeBSD (to build static libraries with PIC)... " >&6; }
-case $host in
-  x86_64*linux*|amd64*freebsd*|ia64*freebsd*)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    with_pic=yes
-    ;;
-  *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ;;
-esac
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is icc (to build with PIC)" >&5
-$as_echo_n "checking if compiler is icc (to build with PIC)... " >&6; }
-case $CC in
-  icc | */icc)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    with_pic=yes
-    ;;
-  *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ;;
-esac
-
-case `pwd` in
-  *\ * | *\	*)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
-$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
-esac
-
-
-
-macro_version='2.4'
-macro_revision='1.3293'
-
-
-
-
-
-
-
-
-
-
-
-
-
-ltmain="$ac_aux_dir/ltmain.sh"
-
-# Backslashify metacharacters that are still active within
-# double-quoted strings.
-sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\(["`\\]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# Sed substitution to delay expansion of an escaped single quote.
-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
-
-# Sed substitution to avoid accidental globbing in evaled expressions
-no_glob_subst='s/\*/\\\*/g'
-
-ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
-ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
-$as_echo_n "checking how to print strings... " >&6; }
-# Test print first, because it will be a builtin if present.
-if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
-   test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
-  ECHO='print -r --'
-elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-  ECHO='printf %s\n'
-else
-  # Use this function as a fallback that always works.
-  func_fallback_echo ()
-  {
-    eval 'cat <<_LTECHO_EOF
-$1
-_LTECHO_EOF'
-  }
-  ECHO='func_fallback_echo'
-fi
-
-# func_echo_all arg...
-# Invoke $ECHO with all args, space-separated.
-func_echo_all ()
-{
-    $ECHO ""
-}
-
-case "$ECHO" in
-  printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5
-$as_echo "printf" >&6; } ;;
-  print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
-$as_echo "print -r" >&6; } ;;
-  *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5
-$as_echo "cat" >&6; } ;;
-esac
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if ${ac_cv_path_SED+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-            ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
-     for ac_i in 1 2 3 4 5 6 7; do
-       ac_script="$ac_script$as_nl$ac_script"
-     done
-     echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
-     { ac_script=; unset ac_script;}
-     if test -z "$SED"; then
-  ac_path_SED_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in sed gsed; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
-# Check for GNU ac_path_SED and select it if it is found.
-  # Check for GNU $ac_path_SED
-case `"$ac_path_SED" --version 2>&1` in
-*GNU*)
-  ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo '' >> "conftest.nl"
-    "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_SED_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_SED="$ac_path_SED"
-      ac_path_SED_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_SED_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_SED"; then
-    as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5
-  fi
-else
-  ac_cv_path_SED=$SED
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
- SED="$ac_cv_path_SED"
-  rm -f conftest.sed
-
-test -z "$SED" && SED=sed
-Xsed="$SED -e 1s/^X//"
-
-
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
-$as_echo_n "checking for fgrep... " >&6; }
-if ${ac_cv_path_FGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
-   then ac_cv_path_FGREP="$GREP -F"
-   else
-     if test -z "$FGREP"; then
-  ac_path_FGREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in fgrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_FGREP" && $as_test_x "$ac_path_FGREP"; } || continue
-# Check for GNU ac_path_FGREP and select it if it is found.
-  # Check for GNU $ac_path_FGREP
-case `"$ac_path_FGREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'FGREP' >> "conftest.nl"
-    "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_FGREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_FGREP="$ac_path_FGREP"
-      ac_path_FGREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_FGREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_FGREP"; then
-    as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_FGREP=$FGREP
-fi
-
-   fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
-$as_echo "$ac_cv_path_FGREP" >&6; }
- FGREP="$ac_cv_path_FGREP"
-
-
-test -z "$GREP" && GREP=grep
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-# Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
-  withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
-  with_gnu_ld=no
-fi
-
-ac_prog=ld
-if test "$GCC" = yes; then
-  # Check if gcc -print-prog-name=ld gives a path.
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
-  case $host in
-  *-*-mingw*)
-    # gcc leaves a trailing carriage return which upsets mingw
-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-  *)
-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-  esac
-  case $ac_prog in
-    # Accept absolute paths.
-    [\\/]* | ?:[\\/]*)
-      re_direlt='/[^/][^/]*/\.\./'
-      # Canonicalize the pathname of ld
-      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
-      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
-	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
-      done
-      test -z "$LD" && LD="$ac_prog"
-      ;;
-  "")
-    # If it fails, then pretend we aren't using GCC.
-    ac_prog=ld
-    ;;
-  *)
-    # If it is relative, then search for the first ld in PATH.
-    with_gnu_ld=unknown
-    ;;
-  esac
-elif test "$with_gnu_ld" = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
-fi
-if ${lt_cv_path_LD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$LD"; then
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-  for ac_dir in $PATH; do
-    IFS="$lt_save_ifs"
-    test -z "$ac_dir" && ac_dir=.
-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      lt_cv_path_LD="$ac_dir/$ac_prog"
-      # Check to see if the program is GNU ld.  I'd rather use --version,
-      # but apparently some variants of GNU ld only accept -v.
-      # Break only if it was the GNU/non-GNU ld that we prefer.
-      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
-      *GNU* | *'with BFD'*)
-	test "$with_gnu_ld" != no && break
-	;;
-      *)
-	test "$with_gnu_ld" != yes && break
-	;;
-      esac
-    fi
-  done
-  IFS="$lt_save_ifs"
-else
-  lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi
-fi
-
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${lt_cv_prog_gnu_ld+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  # I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
-  lt_cv_prog_gnu_ld=yes
-  ;;
-*)
-  lt_cv_prog_gnu_ld=no
-  ;;
-esac
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
-with_gnu_ld=$lt_cv_prog_gnu_ld
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
-$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
-if ${lt_cv_path_NM+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$NM"; then
-  # Let the user override the test.
-  lt_cv_path_NM="$NM"
-else
-  lt_nm_to_check="${ac_tool_prefix}nm"
-  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
-    lt_nm_to_check="$lt_nm_to_check nm"
-  fi
-  for lt_tmp_nm in $lt_nm_to_check; do
-    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
-      IFS="$lt_save_ifs"
-      test -z "$ac_dir" && ac_dir=.
-      tmp_nm="$ac_dir/$lt_tmp_nm"
-      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
-	# Check to see if the nm accepts a BSD-compat flag.
-	# Adding the `sed 1q' prevents false positives on HP-UX, which says:
-	#   nm: unknown option "B" ignored
-	# Tru64's nm complains that /dev/null is an invalid object file
-	case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
-	*/dev/null* | *'Invalid file or object type'*)
-	  lt_cv_path_NM="$tmp_nm -B"
-	  break
-	  ;;
-	*)
-	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
-	  */dev/null*)
-	    lt_cv_path_NM="$tmp_nm -p"
-	    break
-	    ;;
-	  *)
-	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
-	    continue # so that we can try to find one that supports BSD flags
-	    ;;
-	  esac
-	  ;;
-	esac
-      fi
-    done
-    IFS="$lt_save_ifs"
-  done
-  : ${lt_cv_path_NM=no}
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
-$as_echo "$lt_cv_path_NM" >&6; }
-if test "$lt_cv_path_NM" != "no"; then
-  NM="$lt_cv_path_NM"
-else
-  # Didn't find any BSD compatible name lister, look for dumpbin.
-  if test -n "$DUMPBIN"; then :
-    # Let the user override the test.
-  else
-    if test -n "$ac_tool_prefix"; then
-  for ac_prog in dumpbin "link -dump"
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DUMPBIN+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$DUMPBIN"; then
-  ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-DUMPBIN=$ac_cv_prog_DUMPBIN
-if test -n "$DUMPBIN"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
-$as_echo "$DUMPBIN" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    test -n "$DUMPBIN" && break
-  done
-fi
-if test -z "$DUMPBIN"; then
-  ac_ct_DUMPBIN=$DUMPBIN
-  for ac_prog in dumpbin "link -dump"
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_DUMPBIN"; then
-  ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
-if test -n "$ac_ct_DUMPBIN"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
-$as_echo "$ac_ct_DUMPBIN" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$ac_ct_DUMPBIN" && break
-done
-
-  if test "x$ac_ct_DUMPBIN" = x; then
-    DUMPBIN=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    DUMPBIN=$ac_ct_DUMPBIN
-  fi
-fi
-
-    case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
-    *COFF*)
-      DUMPBIN="$DUMPBIN -symbols"
-      ;;
-    *)
-      DUMPBIN=:
-      ;;
-    esac
-  fi
-
-  if test "$DUMPBIN" != ":"; then
-    NM="$DUMPBIN"
-  fi
-fi
-test -z "$NM" && NM=nm
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
-$as_echo_n "checking the name lister ($NM) interface... " >&6; }
-if ${lt_cv_nm_interface+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_nm_interface="BSD nm"
-  echo "int some_variable = 0;" > conftest.$ac_ext
-  (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5)
-  (eval "$ac_compile" 2>conftest.err)
-  cat conftest.err >&5
-  (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
-  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
-  cat conftest.err >&5
-  (eval echo "\"\$as_me:$LINENO: output\"" >&5)
-  cat conftest.out >&5
-  if $GREP 'External.*some_variable' conftest.out > /dev/null; then
-    lt_cv_nm_interface="MS dumpbin"
-  fi
-  rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
-$as_echo "$lt_cv_nm_interface" >&6; }
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
-$as_echo_n "checking whether ln -s works... " >&6; }
-LN_S=$as_ln_s
-if test "$LN_S" = "ln -s"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
-$as_echo "no, using $LN_S" >&6; }
-fi
-
-# find the maximum length of command line arguments
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
-$as_echo_n "checking the maximum length of command line arguments... " >&6; }
-if ${lt_cv_sys_max_cmd_len+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-    i=0
-  teststring="ABCD"
-
-  case $build_os in
-  msdosdjgpp*)
-    # On DJGPP, this test can blow up pretty badly due to problems in libc
-    # (any single argument exceeding 2000 bytes causes a buffer overrun
-    # during glob expansion).  Even if it were fixed, the result of this
-    # check would be larger than it should be.
-    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
-    ;;
-
-  gnu*)
-    # Under GNU Hurd, this test is not required because there is
-    # no limit to the length of command line arguments.
-    # Libtool will interpret -1 as no limit whatsoever
-    lt_cv_sys_max_cmd_len=-1;
-    ;;
-
-  cygwin* | mingw* | cegcc*)
-    # On Win9x/ME, this test blows up -- it succeeds, but takes
-    # about 5 minutes as the teststring grows exponentially.
-    # Worse, since 9x/ME are not pre-emptively multitasking,
-    # you end up with a "frozen" computer, even though with patience
-    # the test eventually succeeds (with a max line length of 256k).
-    # Instead, let's just punt: use the minimum linelength reported by
-    # all of the supported platforms: 8192 (on NT/2K/XP).
-    lt_cv_sys_max_cmd_len=8192;
-    ;;
-
-  mint*)
-    # On MiNT this can take a long time and run out of memory.
-    lt_cv_sys_max_cmd_len=8192;
-    ;;
-
-  amigaos*)
-    # On AmigaOS with pdksh, this test takes hours, literally.
-    # So we just punt and use a minimum line length of 8192.
-    lt_cv_sys_max_cmd_len=8192;
-    ;;
-
-  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
-    # This has been around since 386BSD, at least.  Likely further.
-    if test -x /sbin/sysctl; then
-      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
-    elif test -x /usr/sbin/sysctl; then
-      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
-    else
-      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs
-    fi
-    # And add a safety zone
-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
-    ;;
-
-  interix*)
-    # We know the value 262144 and hardcode it with a safety zone (like BSD)
-    lt_cv_sys_max_cmd_len=196608
-    ;;
-
-  osf*)
-    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
-    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
-    # nice to cause kernel panics so lets avoid the loop below.
-    # First set a reasonable default.
-    lt_cv_sys_max_cmd_len=16384
-    #
-    if test -x /sbin/sysconfig; then
-      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
-        *1*) lt_cv_sys_max_cmd_len=-1 ;;
-      esac
-    fi
-    ;;
-  sco3.2v5*)
-    lt_cv_sys_max_cmd_len=102400
-    ;;
-  sysv5* | sco5v6* | sysv4.2uw2*)
-    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
-    if test -n "$kargmax"; then
-      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[	 ]//'`
-    else
-      lt_cv_sys_max_cmd_len=32768
-    fi
-    ;;
-  *)
-    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
-    if test -n "$lt_cv_sys_max_cmd_len"; then
-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
-    else
-      # Make teststring a little bigger before we do anything with it.
-      # a 1K string should be a reasonable start.
-      for i in 1 2 3 4 5 6 7 8 ; do
-        teststring=$teststring$teststring
-      done
-      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
-      # If test is not a shell built-in, we'll probably end up computing a
-      # maximum length that is only half of the actual maximum length, but
-      # we can't tell.
-      while { test "X"`func_fallback_echo "$teststring$teststring" 2>/dev/null` \
-	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&
-	      test $i != 17 # 1/2 MB should be enough
-      do
-        i=`expr $i + 1`
-        teststring=$teststring$teststring
-      done
-      # Only check the string length outside the loop.
-      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
-      teststring=
-      # Add a significant safety factor because C++ compilers can tack on
-      # massive amounts of additional arguments before passing them to the
-      # linker.  It appears as though 1/2 is a usable value.
-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
-    fi
-    ;;
-  esac
-
-fi
-
-if test -n $lt_cv_sys_max_cmd_len ; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
-$as_echo "$lt_cv_sys_max_cmd_len" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
-$as_echo "none" >&6; }
-fi
-max_cmd_len=$lt_cv_sys_max_cmd_len
-
-
-
-
-
-
-: ${CP="cp -f"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5
-$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; }
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
-  test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,b/c, \
-    && eval 'test $(( 1 + 1 )) -eq 2 \
-    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
-  && xsi_shell=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5
-$as_echo "$xsi_shell" >&6; }
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5
-$as_echo_n "checking whether the shell understands \"+=\"... " >&6; }
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \
-    >/dev/null 2>&1 \
-  && lt_shell_append=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5
-$as_echo "$lt_shell_append" >&6; }
-
-
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  lt_unset=unset
-else
-  lt_unset=false
-fi
-
-
-
-
-
-# test EBCDIC or ASCII
-case `echo X|tr X '\101'` in
- A) # ASCII based system
-    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
-  lt_SP2NL='tr \040 \012'
-  lt_NL2SP='tr \015\012 \040\040'
-  ;;
- *) # EBCDIC based system
-  lt_SP2NL='tr \100 \n'
-  lt_NL2SP='tr \r\n \100\100'
-  ;;
-esac
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
-$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-if ${lt_cv_to_host_file_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $host in
-  *-*-mingw* )
-    case $build in
-      *-*-mingw* ) # actually msys
-        lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
-        ;;
-      *-*-cygwin* )
-        lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
-        ;;
-      * ) # otherwise, assume *nix
-        lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
-        ;;
-    esac
-    ;;
-  *-*-cygwin* )
-    case $build in
-      *-*-mingw* ) # actually msys
-        lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
-        ;;
-      *-*-cygwin* )
-        lt_cv_to_host_file_cmd=func_convert_file_noop
-        ;;
-      * ) # otherwise, assume *nix
-        lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
-        ;;
-    esac
-    ;;
-  * ) # unhandled hosts (and "normal" native builds)
-    lt_cv_to_host_file_cmd=func_convert_file_noop
-    ;;
-esac
-
-fi
-
-to_host_file_cmd=$lt_cv_to_host_file_cmd
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
-$as_echo "$lt_cv_to_host_file_cmd" >&6; }
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
-$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-if ${lt_cv_to_tool_file_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  #assume ordinary cross tools, or native build.
-lt_cv_to_tool_file_cmd=func_convert_file_noop
-case $host in
-  *-*-mingw* )
-    case $build in
-      *-*-mingw* ) # actually msys
-        lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
-        ;;
-    esac
-    ;;
-esac
-
-fi
-
-to_tool_file_cmd=$lt_cv_to_tool_file_cmd
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
-$as_echo "$lt_cv_to_tool_file_cmd" >&6; }
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
-$as_echo_n "checking for $LD option to reload object files... " >&6; }
-if ${lt_cv_ld_reload_flag+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_ld_reload_flag='-r'
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
-$as_echo "$lt_cv_ld_reload_flag" >&6; }
-reload_flag=$lt_cv_ld_reload_flag
-case $reload_flag in
-"" | " "*) ;;
-*) reload_flag=" $reload_flag" ;;
-esac
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-case $host_os in
-  cygwin* | mingw* | pw32* | cegcc*)
-    if test "$GCC" != yes; then
-      reload_cmds=false
-    fi
-    ;;
-  darwin*)
-    if test "$GCC" = yes; then
-      reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-    else
-      reload_cmds='$LD$reload_flag -o $output$reload_objs'
-    fi
-    ;;
-esac
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
-set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$OBJDUMP"; then
-  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-OBJDUMP=$ac_cv_prog_OBJDUMP
-if test -n "$OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OBJDUMP"; then
-  ac_ct_OBJDUMP=$OBJDUMP
-  # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_OBJDUMP"; then
-  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_OBJDUMP="objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
-if test -n "$ac_ct_OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_OBJDUMP" = x; then
-    OBJDUMP="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    OBJDUMP=$ac_ct_OBJDUMP
-  fi
-else
-  OBJDUMP="$ac_cv_prog_OBJDUMP"
-fi
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
-$as_echo_n "checking how to recognize dependent libraries... " >&6; }
-if ${lt_cv_deplibs_check_method+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_file_magic_cmd='$MAGIC_CMD'
-lt_cv_file_magic_test_file=
-lt_cv_deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-
-case $host_os in
-aix[4-9]*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-beos*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-bsdi[45]*)
-  lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
-  lt_cv_file_magic_cmd='/usr/bin/file -L'
-  lt_cv_file_magic_test_file=/shlib/libc.so
-  ;;
-
-cygwin*)
-  # func_win32_libid is a shell function defined in ltmain.sh
-  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
-  lt_cv_file_magic_cmd='func_win32_libid'
-  ;;
-
-mingw* | pw32*)
-  # Base MSYS/MinGW do not provide the 'file' command needed by
-  # func_win32_libid shell function, so use a weaker test based on 'objdump',
-  # unless we find 'file', for example because we are cross-compiling.
-  # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
-  if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
-    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
-    lt_cv_file_magic_cmd='func_win32_libid'
-  else
-    # Keep this pattern in sync with the one in func_win32_libid.
-    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
-    lt_cv_file_magic_cmd='$OBJDUMP -f'
-  fi
-  ;;
-
-cegcc*)
-  # use the weaker test based on 'objdump'. See mingw*.
-  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
-  lt_cv_file_magic_cmd='$OBJDUMP -f'
-  ;;
-
-darwin* | rhapsody*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-freebsd* | dragonfly*)
-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
-    case $host_cpu in
-    i*86 )
-      # Not sure whether the presence of OpenBSD here was a mistake.
-      # Let's accept both of them until this is cleared up.
-      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
-      lt_cv_file_magic_cmd=/usr/bin/file
-      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
-      ;;
-    esac
-  else
-    lt_cv_deplibs_check_method=pass_all
-  fi
-  ;;
-
-gnu*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-haiku*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-hpux10.20* | hpux11*)
-  lt_cv_file_magic_cmd=/usr/bin/file
-  case $host_cpu in
-  ia64*)
-    lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
-    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
-    ;;
-  hppa*64*)
-    lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]'
-    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
-    ;;
-  *)
-    lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library'
-    lt_cv_file_magic_test_file=/usr/lib/libc.sl
-    ;;
-  esac
-  ;;
-
-interix[3-9]*)
-  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
-  lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'
-  ;;
-
-irix5* | irix6* | nonstopux*)
-  case $LD in
-  *-32|*"-32 ") libmagic=32-bit;;
-  *-n32|*"-n32 ") libmagic=N32;;
-  *-64|*"-64 ") libmagic=64-bit;;
-  *) libmagic=never-match;;
-  esac
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-netbsd*)
-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
-  else
-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'
-  fi
-  ;;
-
-newos6*)
-  lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
-  lt_cv_file_magic_cmd=/usr/bin/file
-  lt_cv_file_magic_test_file=/usr/lib/libnls.so
-  ;;
-
-*nto* | *qnx*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-openbsd*)
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
-  else
-    lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
-  fi
-  ;;
-
-osf3* | osf4* | osf5*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-rdos*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-solaris*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-sysv4 | sysv4.3*)
-  case $host_vendor in
-  motorola)
-    lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
-    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
-    ;;
-  ncr)
-    lt_cv_deplibs_check_method=pass_all
-    ;;
-  sequent)
-    lt_cv_file_magic_cmd='/bin/file'
-    lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
-    ;;
-  sni)
-    lt_cv_file_magic_cmd='/bin/file'
-    lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"
-    lt_cv_file_magic_test_file=/lib/libc.so
-    ;;
-  siemens)
-    lt_cv_deplibs_check_method=pass_all
-    ;;
-  pc)
-    lt_cv_deplibs_check_method=pass_all
-    ;;
-  esac
-  ;;
-
-tpf*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
-$as_echo "$lt_cv_deplibs_check_method" >&6; }
-
-file_magic_glob=
-want_nocaseglob=no
-if test "$build" = "$host"; then
-  case $host_os in
-  mingw* | pw32*)
-    if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
-      want_nocaseglob=yes
-    else
-      file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"`
-    fi
-    ;;
-  esac
-fi
-
-file_magic_cmd=$lt_cv_file_magic_cmd
-deplibs_check_method=$lt_cv_deplibs_check_method
-test -z "$deplibs_check_method" && deplibs_check_method=unknown
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$DLLTOOL"; then
-  ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-DLLTOOL=$ac_cv_prog_DLLTOOL
-if test -n "$DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_DLLTOOL"; then
-  ac_ct_DLLTOOL=$DLLTOOL
-  # Extract the first word of "dlltool", so it can be a program name with args.
-set dummy dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_DLLTOOL"; then
-  ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_DLLTOOL="dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
-if test -n "$ac_ct_DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_DLLTOOL" = x; then
-    DLLTOOL="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    DLLTOOL=$ac_ct_DLLTOOL
-  fi
-else
-  DLLTOOL="$ac_cv_prog_DLLTOOL"
-fi
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
-$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_sharedlib_from_linklib_cmd='unknown'
-
-case $host_os in
-cygwin* | mingw* | pw32* | cegcc*)
-  # two different shell functions defined in ltmain.sh
-  # decide which to use based on capabilities of $DLLTOOL
-  case `$DLLTOOL --help 2>&1` in
-  *--identify-strict*)
-    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
-    ;;
-  *)
-    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
-    ;;
-  esac
-  ;;
-*)
-  # fallback: assume linklib IS sharedlib
-  lt_cv_sharedlib_from_linklib_cmd="$ECHO"
-  ;;
-esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
-$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
-sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
-test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
-  for ac_prog in ar
-  do
-    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$AR"; then
-  ac_cv_prog_AR="$AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-AR=$ac_cv_prog_AR
-if test -n "$AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    test -n "$AR" && break
-  done
-fi
-if test -z "$AR"; then
-  ac_ct_AR=$AR
-  for ac_prog in ar
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_AR"; then
-  ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_AR="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_AR=$ac_cv_prog_ac_ct_AR
-if test -n "$ac_ct_AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
-$as_echo "$ac_ct_AR" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$ac_ct_AR" && break
-done
-
-  if test "x$ac_ct_AR" = x; then
-    AR="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    AR=$ac_ct_AR
-  fi
-fi
-
-: ${AR=ar}
-: ${AR_FLAGS=cru}
-
-
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
-$as_echo_n "checking for archiver @FILE support... " >&6; }
-if ${lt_cv_ar_at_file+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_ar_at_file=no
-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  echo conftest.$ac_objext > conftest.lst
-      lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'
-      { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
-  (eval $lt_ar_try) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-      if test "$ac_status" -eq 0; then
-	# Ensure the archiver fails upon bogus file names.
-	rm -f conftest.$ac_objext libconftest.a
-	{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
-  (eval $lt_ar_try) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-	if test "$ac_status" -ne 0; then
-          lt_cv_ar_at_file=@
-        fi
-      fi
-      rm -f conftest.* libconftest.a
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
-$as_echo "$lt_cv_ar_at_file" >&6; }
-
-if test "x$lt_cv_ar_at_file" = xno; then
-  archiver_list_spec=
-else
-  archiver_list_spec=$lt_cv_ar_at_file
-fi
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$STRIP"; then
-  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
-  ac_ct_STRIP=$STRIP
-  # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_STRIP"; then
-  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_STRIP="strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_STRIP" = x; then
-    STRIP=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    STRIP=$ac_ct_STRIP
-  fi
-else
-  STRIP="$ac_cv_prog_STRIP"
-fi
-
-test -z "$STRIP" && STRIP=:
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$RANLIB"; then
-  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
-  ac_ct_RANLIB=$RANLIB
-  # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_RANLIB"; then
-  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_RANLIB="ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_RANLIB" = x; then
-    RANLIB=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    RANLIB=$ac_ct_RANLIB
-  fi
-else
-  RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-test -z "$RANLIB" && RANLIB=:
-
-
-
-
-
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-if test -n "$RANLIB"; then
-  case $host_os in
-  openbsd*)
-    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
-    ;;
-  *)
-    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
-    ;;
-  esac
-  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-fi
-
-case $host_os in
-  darwin*)
-    lock_old_archive_extraction=yes ;;
-  *)
-    lock_old_archive_extraction=no ;;
-esac
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
-$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
-if ${lt_cv_sys_global_symbol_pipe+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[BCDEGRST]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
-
-# Define system-specific variables.
-case $host_os in
-aix*)
-  symcode='[BCDT]'
-  ;;
-cygwin* | mingw* | pw32* | cegcc*)
-  symcode='[ABCDGISTW]'
-  ;;
-hpux*)
-  if test "$host_cpu" = ia64; then
-    symcode='[ABCDEGRST]'
-  fi
-  ;;
-irix* | nonstopux*)
-  symcode='[BCDEGRST]'
-  ;;
-osf*)
-  symcode='[BCDEGQRST]'
-  ;;
-solaris*)
-  symcode='[BDRT]'
-  ;;
-sco3.2v5*)
-  symcode='[DT]'
-  ;;
-sysv4.2uw2*)
-  symcode='[DT]'
-  ;;
-sysv5* | sco5v6* | unixware* | OpenUNIX*)
-  symcode='[ABDT]'
-  ;;
-sysv4)
-  symcode='[DFNSTU]'
-  ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-case `$NM -V 2>&1` in
-*GNU* | *'with BFD'*)
-  symcode='[ABCDGIRSTW]' ;;
-esac
-
-# Transform an extracted symbol line into a proper C declaration.
-# Some systems (esp. on ia64) link data and code symbols differently,
-# so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-
-# Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\)[ ]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\)[ ]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
-
-# Handle CRLF in mingw tool chain
-opt_cr=
-case $build_os in
-mingw*)
-  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
-  ;;
-esac
-
-# Try without a prefix underscore, then with it.
-for ac_symprfx in "" "_"; do
-
-  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
-  symxfrm="\\1 $ac_symprfx\\2 \\2"
-
-  # Write the raw and C identifiers.
-  if test "$lt_cv_nm_interface" = "MS dumpbin"; then
-    # Fake it for dumpbin and say T for any non-static function
-    # and D for any global variable.
-    # Also find C++ and __fastcall symbols from MSVC++,
-    # which start with @ or ?.
-    lt_cv_sys_global_symbol_pipe="$AWK '"\
-"     {last_section=section; section=\$ 3};"\
-"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
-"     \$ 0!~/External *\|/{next};"\
-"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
-"     {if(hide[section]) next};"\
-"     {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-"     {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-"     s[1]~/^[@?]/{print s[1], s[1]; next};"\
-"     s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
-"     ' prfx=^$ac_symprfx"
-  else
-    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
-  fi
-  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
-
-  # Check to see that the pipe works correctly.
-  pipe_works=no
-
-  rm -f conftest*
-  cat > conftest.$ac_ext <<_LT_EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(void);
-void nm_test_func(void){}
-#ifdef __cplusplus
-}
-#endif
-int main(){nm_test_var='a';nm_test_func();return(0);}
-_LT_EOF
-
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-    # Now try to grab the symbols.
-    nlist=conftest.nm
-    if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5
-  (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s "$nlist"; then
-      # Try sorting and uniquifying the output.
-      if sort "$nlist" | uniq > "$nlist"T; then
-	mv -f "$nlist"T "$nlist"
-      else
-	rm -f "$nlist"T
-      fi
-
-      # Make sure that we snagged all the symbols we need.
-      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
-	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
-	  cat <<_LT_EOF > conftest.$ac_ext
-/* 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 con'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
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-_LT_EOF
-	  # Now generate the symbol file.
-	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
-
-	  cat <<_LT_EOF >> conftest.$ac_ext
-
-/* The mapping between symbol names and symbols.  */
-LT_DLSYM_CONST struct {
-  const char *name;
-  void       *address;
-}
-lt__PROGRAM__LTX_preloaded_symbols[] =
-{
-  { "@PROGRAM@", (void *) 0 },
-_LT_EOF
-	  $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
-	  cat <<\_LT_EOF >> conftest.$ac_ext
-  {0, (void *) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
-  return lt__PROGRAM__LTX_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-_LT_EOF
-	  # Now try linking the two files.
-	  mv conftest.$ac_objext conftstm.$ac_objext
-	  lt_globsym_save_LIBS=$LIBS
-	  lt_globsym_save_CFLAGS=$CFLAGS
-	  LIBS="conftstm.$ac_objext"
-	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
-	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s conftest${ac_exeext}; then
-	    pipe_works=yes
-	  fi
-	  LIBS=$lt_globsym_save_LIBS
-	  CFLAGS=$lt_globsym_save_CFLAGS
-	else
-	  echo "cannot find nm_test_func in $nlist" >&5
-	fi
-      else
-	echo "cannot find nm_test_var in $nlist" >&5
-      fi
-    else
-      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
-    fi
-  else
-    echo "$progname: failed program was:" >&5
-    cat conftest.$ac_ext >&5
-  fi
-  rm -rf conftest* conftst*
-
-  # Do not use the global_symbol_pipe unless it works.
-  if test "$pipe_works" = yes; then
-    break
-  else
-    lt_cv_sys_global_symbol_pipe=
-  fi
-done
-
-fi
-
-if test -z "$lt_cv_sys_global_symbol_pipe"; then
-  lt_cv_sys_global_symbol_to_cdecl=
-fi
-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
-$as_echo "ok" >&6; }
-fi
-
-# Response file support.
-if test "$lt_cv_nm_interface" = "MS dumpbin"; then
-  nm_file_list_spec='@'
-elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then
-  nm_file_list_spec='@'
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
-$as_echo_n "checking for sysroot... " >&6; }
-
-# Check whether --with-sysroot was given.
-if test "${with_sysroot+set}" = set; then :
-  withval=$with_sysroot;
-else
-  with_sysroot=no
-fi
-
-
-lt_sysroot=
-case ${with_sysroot} in #(
- yes)
-   if test "$GCC" = yes; then
-     lt_sysroot=`$CC --print-sysroot 2>/dev/null`
-   fi
-   ;; #(
- /*)
-   lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
-   ;; #(
- no|'')
-   ;; #(
- *)
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
-$as_echo "${with_sysroot}" >&6; }
-   as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
-   ;;
-esac
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
-$as_echo "${lt_sysroot:-no}" >&6; }
-
-
-
-
-
-# Check whether --enable-libtool-lock was given.
-if test "${enable_libtool_lock+set}" = set; then :
-  enableval=$enable_libtool_lock;
-fi
-
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-
-# Some flags need to be propagated to the compiler or linker for good
-# libtool support.
-case $host in
-ia64-*-hpux*)
-  # Find out which ABI we are using.
-  echo 'int i;' > conftest.$ac_ext
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-    case `/usr/bin/file conftest.$ac_objext` in
-      *ELF-32*)
-	HPUX_IA64_MODE="32"
-	;;
-      *ELF-64*)
-	HPUX_IA64_MODE="64"
-	;;
-    esac
-  fi
-  rm -rf conftest*
-  ;;
-*-*-irix6*)
-  # Find out which ABI we are using.
-  echo '#line '$LINENO' "configure"' > conftest.$ac_ext
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-    if test "$lt_cv_prog_gnu_ld" = yes; then
-      case `/usr/bin/file conftest.$ac_objext` in
-	*32-bit*)
-	  LD="${LD-ld} -melf32bsmip"
-	  ;;
-	*N32*)
-	  LD="${LD-ld} -melf32bmipn32"
-	  ;;
-	*64-bit*)
-	  LD="${LD-ld} -melf64bmip"
-	;;
-      esac
-    else
-      case `/usr/bin/file conftest.$ac_objext` in
-	*32-bit*)
-	  LD="${LD-ld} -32"
-	  ;;
-	*N32*)
-	  LD="${LD-ld} -n32"
-	  ;;
-	*64-bit*)
-	  LD="${LD-ld} -64"
-	  ;;
-      esac
-    fi
-  fi
-  rm -rf conftest*
-  ;;
-
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
-  # Find out which ABI we are using.
-  echo 'int i;' > conftest.$ac_ext
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-    case `/usr/bin/file conftest.o` in
-      *32-bit*)
-	case $host in
-	  x86_64-*kfreebsd*-gnu)
-	    LD="${LD-ld} -m elf_i386_fbsd"
-	    ;;
-	  x86_64-*linux*)
-	    LD="${LD-ld} -m elf_i386"
-	    ;;
-	  ppc64-*linux*|powerpc64-*linux*)
-	    LD="${LD-ld} -m elf32ppclinux"
-	    ;;
-	  s390x-*linux*)
-	    LD="${LD-ld} -m elf_s390"
-	    ;;
-	  sparc64-*linux*)
-	    LD="${LD-ld} -m elf32_sparc"
-	    ;;
-	esac
-	;;
-      *64-bit*)
-	case $host in
-	  x86_64-*kfreebsd*-gnu)
-	    LD="${LD-ld} -m elf_x86_64_fbsd"
-	    ;;
-	  x86_64-*linux*)
-	    LD="${LD-ld} -m elf_x86_64"
-	    ;;
-	  ppc*-*linux*|powerpc*-*linux*)
-	    LD="${LD-ld} -m elf64ppc"
-	    ;;
-	  s390*-*linux*|s390*-*tpf*)
-	    LD="${LD-ld} -m elf64_s390"
-	    ;;
-	  sparc*-*linux*)
-	    LD="${LD-ld} -m elf64_sparc"
-	    ;;
-	esac
-	;;
-    esac
-  fi
-  rm -rf conftest*
-  ;;
-
-*-*-sco3.2v5*)
-  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-  SAVE_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS -belf"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
-$as_echo_n "checking whether the C compiler needs -belf... " >&6; }
-if ${lt_cv_cc_needs_belf+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  lt_cv_cc_needs_belf=yes
-else
-  lt_cv_cc_needs_belf=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-     ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
-$as_echo "$lt_cv_cc_needs_belf" >&6; }
-  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-    CFLAGS="$SAVE_CFLAGS"
-  fi
-  ;;
-sparc*-*solaris*)
-  # Find out which ABI we are using.
-  echo 'int i;' > conftest.$ac_ext
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-    case `/usr/bin/file conftest.o` in
-    *64-bit*)
-      case $lt_cv_prog_gnu_ld in
-      yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)
-	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
-	  LD="${LD-ld} -64"
-	fi
-	;;
-      esac
-      ;;
-    esac
-  fi
-  rm -rf conftest*
-  ;;
-esac
-
-need_locks="$enable_libtool_lock"
-
-if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.
-set dummy ${ac_tool_prefix}mt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$MANIFEST_TOOL"; then
-  ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL
-if test -n "$MANIFEST_TOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
-$as_echo "$MANIFEST_TOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_MANIFEST_TOOL"; then
-  ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL
-  # Extract the first word of "mt", so it can be a program name with args.
-set dummy mt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_MANIFEST_TOOL"; then
-  ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL
-if test -n "$ac_ct_MANIFEST_TOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
-$as_echo "$ac_ct_MANIFEST_TOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_MANIFEST_TOOL" = x; then
-    MANIFEST_TOOL=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL
-  fi
-else
-  MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL"
-fi
-
-test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
-$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-if ${lt_cv_path_mainfest_tool+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_path_mainfest_tool=no
-  echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5
-  $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
-  cat conftest.err >&5
-  if $GREP 'Manifest Tool' conftest.out > /dev/null; then
-    lt_cv_path_mainfest_tool=yes
-  fi
-  rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
-$as_echo "$lt_cv_path_mainfest_tool" >&6; }
-if test "x$lt_cv_path_mainfest_tool" != xyes; then
-  MANIFEST_TOOL=:
-fi
-
-
-
-
-
-
-  case $host_os in
-    rhapsody* | darwin*)
-    if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DSYMUTIL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$DSYMUTIL"; then
-  ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-DSYMUTIL=$ac_cv_prog_DSYMUTIL
-if test -n "$DSYMUTIL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
-$as_echo "$DSYMUTIL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_DSYMUTIL"; then
-  ac_ct_DSYMUTIL=$DSYMUTIL
-  # Extract the first word of "dsymutil", so it can be a program name with args.
-set dummy dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_DSYMUTIL"; then
-  ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
-if test -n "$ac_ct_DSYMUTIL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
-$as_echo "$ac_ct_DSYMUTIL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_DSYMUTIL" = x; then
-    DSYMUTIL=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    DSYMUTIL=$ac_ct_DSYMUTIL
-  fi
-else
-  DSYMUTIL="$ac_cv_prog_DSYMUTIL"
-fi
-
-    if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
-set dummy ${ac_tool_prefix}nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_NMEDIT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$NMEDIT"; then
-  ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-NMEDIT=$ac_cv_prog_NMEDIT
-if test -n "$NMEDIT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
-$as_echo "$NMEDIT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_NMEDIT"; then
-  ac_ct_NMEDIT=$NMEDIT
-  # Extract the first word of "nmedit", so it can be a program name with args.
-set dummy nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_NMEDIT"; then
-  ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_NMEDIT="nmedit"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
-if test -n "$ac_ct_NMEDIT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
-$as_echo "$ac_ct_NMEDIT" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_NMEDIT" = x; then
-    NMEDIT=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    NMEDIT=$ac_ct_NMEDIT
-  fi
-else
-  NMEDIT="$ac_cv_prog_NMEDIT"
-fi
-
-    if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
-set dummy ${ac_tool_prefix}lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_LIPO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$LIPO"; then
-  ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-LIPO=$ac_cv_prog_LIPO
-if test -n "$LIPO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
-$as_echo "$LIPO" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_LIPO"; then
-  ac_ct_LIPO=$LIPO
-  # Extract the first word of "lipo", so it can be a program name with args.
-set dummy lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_LIPO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_LIPO"; then
-  ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_LIPO="lipo"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
-if test -n "$ac_ct_LIPO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
-$as_echo "$ac_ct_LIPO" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_LIPO" = x; then
-    LIPO=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    LIPO=$ac_ct_LIPO
-  fi
-else
-  LIPO="$ac_cv_prog_LIPO"
-fi
-
-    if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$OTOOL"; then
-  ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-OTOOL=$ac_cv_prog_OTOOL
-if test -n "$OTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
-$as_echo "$OTOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OTOOL"; then
-  ac_ct_OTOOL=$OTOOL
-  # Extract the first word of "otool", so it can be a program name with args.
-set dummy otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_OTOOL"; then
-  ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_OTOOL="otool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
-if test -n "$ac_ct_OTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
-$as_echo "$ac_ct_OTOOL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_OTOOL" = x; then
-    OTOOL=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    OTOOL=$ac_ct_OTOOL
-  fi
-else
-  OTOOL="$ac_cv_prog_OTOOL"
-fi
-
-    if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
-set dummy ${ac_tool_prefix}otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OTOOL64+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$OTOOL64"; then
-  ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-OTOOL64=$ac_cv_prog_OTOOL64
-if test -n "$OTOOL64"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
-$as_echo "$OTOOL64" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OTOOL64"; then
-  ac_ct_OTOOL64=$OTOOL64
-  # Extract the first word of "otool64", so it can be a program name with args.
-set dummy otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_OTOOL64"; then
-  ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_prog_ac_ct_OTOOL64="otool64"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
-if test -n "$ac_ct_OTOOL64"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
-$as_echo "$ac_ct_OTOOL64" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_OTOOL64" = x; then
-    OTOOL64=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    OTOOL64=$ac_ct_OTOOL64
-  fi
-else
-  OTOOL64="$ac_cv_prog_OTOOL64"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
-$as_echo_n "checking for -single_module linker flag... " >&6; }
-if ${lt_cv_apple_cc_single_mod+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_apple_cc_single_mod=no
-      if test -z "${LT_MULTI_MODULE}"; then
-	# By default we will add the -single_module flag. You can override
-	# by either setting the environment variable LT_MULTI_MODULE
-	# non-empty at configure time, or by adding -multi_module to the
-	# link flags.
-	rm -rf libconftest.dylib*
-	echo "int foo(void){return 1;}" > conftest.c
-	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
--dynamiclib -Wl,-single_module conftest.c" >&5
-	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
-        _lt_result=$?
-	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
-	  lt_cv_apple_cc_single_mod=yes
-	else
-	  cat conftest.err >&5
-	fi
-	rm -rf libconftest.dylib*
-	rm -f conftest.*
-      fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
-$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
-$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
-if ${lt_cv_ld_exported_symbols_list+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_ld_exported_symbols_list=no
-      save_LDFLAGS=$LDFLAGS
-      echo "_main" > conftest.sym
-      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  lt_cv_ld_exported_symbols_list=yes
-else
-  lt_cv_ld_exported_symbols_list=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-	LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
-$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
-$as_echo_n "checking for -force_load linker flag... " >&6; }
-if ${lt_cv_ld_force_load+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_ld_force_load=no
-      cat > conftest.c << _LT_EOF
-int forced_loaded() { return 2;}
-_LT_EOF
-      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5
-      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
-      echo "$AR cru libconftest.a conftest.o" >&5
-      $AR cru libconftest.a conftest.o 2>&5
-      echo "$RANLIB libconftest.a" >&5
-      $RANLIB libconftest.a 2>&5
-      cat > conftest.c << _LT_EOF
-int main() { return 0;}
-_LT_EOF
-      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5
-      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
-      _lt_result=$?
-      if test -f conftest && test ! -s conftest.err && test $_lt_result = 0 && $GREP forced_load conftest 2>&1 >/dev/null; then
-	lt_cv_ld_force_load=yes
-      else
-	cat conftest.err >&5
-      fi
-        rm -f conftest.err libconftest.a conftest conftest.c
-        rm -rf conftest.dSYM
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
-$as_echo "$lt_cv_ld_force_load" >&6; }
-    case $host_os in
-    rhapsody* | darwin1.[012])
-      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
-    darwin1.*)
-      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
-    darwin*) # darwin 5.x on
-      # if running on 10.5 or later, the deployment target defaults
-      # to the OS version, if on x86, and 10.4, the deployment
-      # target defaults to 10.4. Don't you love it?
-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
-	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-	10.[012]*)
-	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
-	10.*)
-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-      esac
-    ;;
-  esac
-    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
-      _lt_dar_single_mod='$single_module'
-    fi
-    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
-      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
-    else
-      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
-    fi
-    if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
-      _lt_dsymutil='~$DSYMUTIL $lib || :'
-    else
-      _lt_dsymutil=
-    fi
-    ;;
-  esac
-
-for ac_header in dlfcn.h
-do :
-  ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
-"
-if test "x$ac_cv_header_dlfcn_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_DLFCN_H 1
-_ACEOF
-
-fi
-
-done
-
-
-
-
-
-# Set options
-
-
-
-        enable_dlopen=no
-
-
-
-            # Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then :
-  enableval=$enable_shared; p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_shared=yes ;;
-    no) enable_shared=no ;;
-    *)
-      enable_shared=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_shared=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_shared=yes
-fi
-
-
-
-
-
-
-
-
-
-  # Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then :
-  enableval=$enable_static; p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_static=yes ;;
-    no) enable_static=no ;;
-    *)
-     enable_static=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_static=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_static=yes
-fi
-
-
-
-
-
-
-
-
-
-
-# Check whether --with-pic was given.
-if test "${with_pic+set}" = set; then :
-  withval=$with_pic; pic_mode="$withval"
-else
-  pic_mode=default
-fi
-
-
-test -z "$pic_mode" && pic_mode=default
-
-
-
-
-
-
-
-  # Check whether --enable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then :
-  enableval=$enable_fast_install; p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_fast_install=yes ;;
-    no) enable_fast_install=no ;;
-    *)
-      enable_fast_install=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_fast_install=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_fast_install=yes
-fi
-
-
-
-
-
-
-
-
-
-
-
-# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
-
-# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-test -z "$LN_S" && LN_S="ln -s"
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-if test -n "${ZSH_VERSION+set}" ; then
-   setopt NO_GLOB_SUBST
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
-$as_echo_n "checking for objdir... " >&6; }
-if ${lt_cv_objdir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
-  lt_cv_objdir=.libs
-else
-  # MS-DOS does not allow filenames that begin with a dot.
-  lt_cv_objdir=_libs
-fi
-rmdir .libs 2>/dev/null
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
-$as_echo "$lt_cv_objdir" >&6; }
-objdir=$lt_cv_objdir
-
-
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define LT_OBJDIR "$lt_cv_objdir/"
-_ACEOF
-
-
-
-
-case $host_os in
-aix3*)
-  # 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 "X${COLLECT_NAMES+set}" != Xset; then
-    COLLECT_NAMES=
-    export COLLECT_NAMES
-  fi
-  ;;
-esac
-
-# Global variables:
-ofile=libtool
-can_build_shared=yes
-
-# All known linkers require a `.a' archive for static linking (except MSVC,
-# which needs '.lib').
-libext=a
-
-with_gnu_ld="$lt_cv_prog_gnu_ld"
-
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
-
-# Set sane defaults for various variables
-test -z "$CC" && CC=cc
-test -z "$LTCC" && LTCC=$CC
-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
-test -z "$LD" && LD=ld
-test -z "$ac_objext" && ac_objext=o
-
-for cc_temp in $compiler""; do
-  case $cc_temp in
-    compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
-    distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
-    \-*) ;;
-    *) break;;
-  esac
-done
-cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
-
-
-# Only perform the check for file, if the check method requires it
-test -z "$MAGIC_CMD" && MAGIC_CMD=file
-case $deplibs_check_method in
-file_magic*)
-  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
-$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
-if ${lt_cv_path_MAGIC_CMD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $MAGIC_CMD in
-[\\/*] |  ?:[\\/]*)
-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
-  ;;
-*)
-  lt_save_MAGIC_CMD="$MAGIC_CMD"
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-  ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
-  for ac_dir in $ac_dummy; do
-    IFS="$lt_save_ifs"
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/${ac_tool_prefix}file; then
-      lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
-      if test -n "$file_magic_test_file"; then
-	case $deplibs_check_method in
-	"file_magic "*)
-	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
-	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-	    $EGREP "$file_magic_regex" > /dev/null; then
-	    :
-	  else
-	    cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such.  This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem.  Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
-	  fi ;;
-	esac
-      fi
-      break
-    fi
-  done
-  IFS="$lt_save_ifs"
-  MAGIC_CMD="$lt_save_MAGIC_CMD"
-  ;;
-esac
-fi
-
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
-
-
-if test -z "$lt_cv_path_MAGIC_CMD"; then
-  if test -n "$ac_tool_prefix"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
-$as_echo_n "checking for file... " >&6; }
-if ${lt_cv_path_MAGIC_CMD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $MAGIC_CMD in
-[\\/*] |  ?:[\\/]*)
-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
-  ;;
-*)
-  lt_save_MAGIC_CMD="$MAGIC_CMD"
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-  ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
-  for ac_dir in $ac_dummy; do
-    IFS="$lt_save_ifs"
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/file; then
-      lt_cv_path_MAGIC_CMD="$ac_dir/file"
-      if test -n "$file_magic_test_file"; then
-	case $deplibs_check_method in
-	"file_magic "*)
-	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
-	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-	    $EGREP "$file_magic_regex" > /dev/null; then
-	    :
-	  else
-	    cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such.  This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem.  Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
-	  fi ;;
-	esac
-      fi
-      break
-    fi
-  done
-  IFS="$lt_save_ifs"
-  MAGIC_CMD="$lt_save_MAGIC_CMD"
-  ;;
-esac
-fi
-
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  else
-    MAGIC_CMD=:
-  fi
-fi
-
-  fi
-  ;;
-esac
-
-# Use C for the default configuration in the libtool script
-
-lt_save_CC="$CC"
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-# Source file extension for C test sources.
-ac_ext=c
-
-# Object file extension for compiled C test sources.
-objext=o
-objext=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='int main(){return(0);}'
-
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-# Save the default compiler, since it gets overwritten when the other
-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
-compiler_DEFAULT=$CC
-
-# save warnings/boilerplate of simple test code
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-
-
-## CAVEAT EMPTOR:
-## There is no encapsulation within the following macros, do not change
-## the running order or otherwise move them around unless you know exactly
-## what you are doing...
-if test -n "$compiler"; then
-
-lt_prog_compiler_no_builtin_flag=
-
-if test "$GCC" = yes; then
-  case $cc_basename in
-  nvcc*)
-    lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;;
-  *)
-    lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;
-  esac
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
-$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
-if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler_rtti_exceptions=no
-   ac_outfile=conftest.$ac_objext
-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-   lt_compiler_flag="-fno-rtti -fno-exceptions"
-   # Insert the option either (1) after the last *FLAGS variable, or
-   # (2) before a word containing "conftest.", or (3) at the end.
-   # Note that $ac_compile itself does not contain backslashes and begins
-   # with a dollar sign (not a hyphen), so the echo should work correctly.
-   # The option is referenced via a variable to avoid confusing sed.
-   lt_compile=`echo "$ac_compile" | $SED \
-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-   -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
-   (eval "$lt_compile" 2>conftest.err)
-   ac_status=$?
-   cat conftest.err >&5
-   echo "$as_me:$LINENO: \$? = $ac_status" >&5
-   if (exit $ac_status) && test -s "$ac_outfile"; then
-     # The compiler can only warn and ignore the option if not recognized
-     # So say no if there are warnings other than the usual output.
-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_cv_prog_compiler_rtti_exceptions=yes
-     fi
-   fi
-   $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
-$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
-
-if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then
-    lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
-else
-    :
-fi
-
-fi
-
-
-
-
-
-
-  lt_prog_compiler_wl=
-lt_prog_compiler_pic=
-lt_prog_compiler_static=
-
-
-  if test "$GCC" = yes; then
-    lt_prog_compiler_wl='-Wl,'
-    lt_prog_compiler_static='-static'
-
-    case $host_os in
-      aix*)
-      # All AIX code is PIC.
-      if test "$host_cpu" = ia64; then
-	# AIX 5 now supports IA64 processor
-	lt_prog_compiler_static='-Bstatic'
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            lt_prog_compiler_pic='-fPIC'
-        ;;
-      m68k)
-            # FIXME: we need at least 68020 code to build shared libraries, but
-            # adding the `-m68020' flag to GCC prevents building anything better,
-            # like `-m68040'.
-            lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
-        ;;
-      esac
-      ;;
-
-    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
-      # PIC is the default for these OSes.
-      ;;
-
-    mingw* | cygwin* | pw32* | os2* | cegcc*)
-      # This hack is so that the source file can tell whether it is being
-      # built for inclusion in a dll (and should export symbols for example).
-      # Although the cygwin gcc ignores -fPIC, still need this for old-style
-      # (--disable-auto-import) libraries
-      lt_prog_compiler_pic='-DDLL_EXPORT'
-      ;;
-
-    darwin* | rhapsody*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      lt_prog_compiler_pic='-fno-common'
-      ;;
-
-    haiku*)
-      # PIC is the default for Haiku.
-      # The "-static" flag exists, but is broken.
-      lt_prog_compiler_static=
-      ;;
-
-    hpux*)
-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
-      # sets the default TLS model and affects inlining.
-      case $host_cpu in
-      hppa*64*)
-	# +Z the default
-	;;
-      *)
-	lt_prog_compiler_pic='-fPIC'
-	;;
-      esac
-      ;;
-
-    interix[3-9]*)
-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
-      # Instead, we relocate shared libraries at runtime.
-      ;;
-
-    msdosdjgpp*)
-      # Just because we use GCC doesn't mean we suddenly get shared libraries
-      # on systems that don't support them.
-      lt_prog_compiler_can_build_shared=no
-      enable_shared=no
-      ;;
-
-    *nto* | *qnx*)
-      # QNX uses GNU C++, but need to define -shared option too, otherwise
-      # it will coredump.
-      lt_prog_compiler_pic='-fPIC -shared'
-      ;;
-
-    sysv4*MP*)
-      if test -d /usr/nec; then
-	lt_prog_compiler_pic=-Kconform_pic
-      fi
-      ;;
-
-    *)
-      lt_prog_compiler_pic='-fPIC'
-      ;;
-    esac
-
-    case $cc_basename in
-    nvcc*) # Cuda Compiler Driver 2.2
-      lt_prog_compiler_wl='-Xlinker '
-      lt_prog_compiler_pic='-Xcompiler -fPIC'
-      ;;
-    esac
-  else
-    # PORTME Check for flag to pass linker flags through the system compiler.
-    case $host_os in
-    aix*)
-      lt_prog_compiler_wl='-Wl,'
-      if test "$host_cpu" = ia64; then
-	# AIX 5 now supports IA64 processor
-	lt_prog_compiler_static='-Bstatic'
-      else
-	lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
-      fi
-      ;;
-
-    mingw* | cygwin* | pw32* | os2* | cegcc*)
-      # This hack is so that the source file can tell whether it is being
-      # built for inclusion in a dll (and should export symbols for example).
-      lt_prog_compiler_pic='-DDLL_EXPORT'
-      ;;
-
-    hpux9* | hpux10* | hpux11*)
-      lt_prog_compiler_wl='-Wl,'
-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
-      # not for PA HP-UX.
-      case $host_cpu in
-      hppa*64*|ia64*)
-	# +Z the default
-	;;
-      *)
-	lt_prog_compiler_pic='+Z'
-	;;
-      esac
-      # Is there a better lt_prog_compiler_static that works with the bundled CC?
-      lt_prog_compiler_static='${wl}-a ${wl}archive'
-      ;;
-
-    irix5* | irix6* | nonstopux*)
-      lt_prog_compiler_wl='-Wl,'
-      # PIC (with -KPIC) is the default.
-      lt_prog_compiler_static='-non_shared'
-      ;;
-
-    linux* | k*bsd*-gnu | kopensolaris*-gnu)
-      case $cc_basename in
-      # old Intel for x86_64 which still supported -KPIC.
-      ecc*)
-	lt_prog_compiler_wl='-Wl,'
-	lt_prog_compiler_pic='-KPIC'
-	lt_prog_compiler_static='-static'
-        ;;
-      # icc used to be incompatible with GCC.
-      # ICC 10 doesn't accept -KPIC any more.
-      icc* | ifort*)
-	lt_prog_compiler_wl='-Wl,'
-	lt_prog_compiler_pic='-fPIC'
-	lt_prog_compiler_static='-static'
-        ;;
-      # Lahey Fortran 8.1.
-      lf95*)
-	lt_prog_compiler_wl='-Wl,'
-	lt_prog_compiler_pic='--shared'
-	lt_prog_compiler_static='--static'
-	;;
-      nagfor*)
-	# NAG Fortran compiler
-	lt_prog_compiler_wl='-Wl,-Wl,,'
-	lt_prog_compiler_pic='-PIC'
-	lt_prog_compiler_static='-Bstatic'
-	;;
-      pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
-        # Portland Group compilers (*not* the Pentium gcc compiler,
-	# which looks to be a dead project)
-	lt_prog_compiler_wl='-Wl,'
-	lt_prog_compiler_pic='-fpic'
-	lt_prog_compiler_static='-Bstatic'
-        ;;
-      ccc*)
-        lt_prog_compiler_wl='-Wl,'
-        # All Alpha code is PIC.
-        lt_prog_compiler_static='-non_shared'
-        ;;
-      xl* | bgxl* | bgf* | mpixl*)
-	# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
-	lt_prog_compiler_wl='-Wl,'
-	lt_prog_compiler_pic='-qpic'
-	lt_prog_compiler_static='-qstaticlink'
-	;;
-      *)
-	case `$CC -V 2>&1 | sed 5q` in
-	*Sun\ F* | *Sun*Fortran*)
-	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
-	  lt_prog_compiler_pic='-KPIC'
-	  lt_prog_compiler_static='-Bstatic'
-	  lt_prog_compiler_wl=''
-	  ;;
-	*Sun\ C*)
-	  # Sun C 5.9
-	  lt_prog_compiler_pic='-KPIC'
-	  lt_prog_compiler_static='-Bstatic'
-	  lt_prog_compiler_wl='-Wl,'
-	  ;;
-	esac
-	;;
-      esac
-      ;;
-
-    newsos6)
-      lt_prog_compiler_pic='-KPIC'
-      lt_prog_compiler_static='-Bstatic'
-      ;;
-
-    *nto* | *qnx*)
-      # QNX uses GNU C++, but need to define -shared option too, otherwise
-      # it will coredump.
-      lt_prog_compiler_pic='-fPIC -shared'
-      ;;
-
-    osf3* | osf4* | osf5*)
-      lt_prog_compiler_wl='-Wl,'
-      # All OSF/1 code is PIC.
-      lt_prog_compiler_static='-non_shared'
-      ;;
-
-    rdos*)
-      lt_prog_compiler_static='-non_shared'
-      ;;
-
-    solaris*)
-      lt_prog_compiler_pic='-KPIC'
-      lt_prog_compiler_static='-Bstatic'
-      case $cc_basename in
-      f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
-	lt_prog_compiler_wl='-Qoption ld ';;
-      *)
-	lt_prog_compiler_wl='-Wl,';;
-      esac
-      ;;
-
-    sunos4*)
-      lt_prog_compiler_wl='-Qoption ld '
-      lt_prog_compiler_pic='-PIC'
-      lt_prog_compiler_static='-Bstatic'
-      ;;
-
-    sysv4 | sysv4.2uw2* | sysv4.3*)
-      lt_prog_compiler_wl='-Wl,'
-      lt_prog_compiler_pic='-KPIC'
-      lt_prog_compiler_static='-Bstatic'
-      ;;
-
-    sysv4*MP*)
-      if test -d /usr/nec ;then
-	lt_prog_compiler_pic='-Kconform_pic'
-	lt_prog_compiler_static='-Bstatic'
-      fi
-      ;;
-
-    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
-      lt_prog_compiler_wl='-Wl,'
-      lt_prog_compiler_pic='-KPIC'
-      lt_prog_compiler_static='-Bstatic'
-      ;;
-
-    unicos*)
-      lt_prog_compiler_wl='-Wl,'
-      lt_prog_compiler_can_build_shared=no
-      ;;
-
-    uts4*)
-      lt_prog_compiler_pic='-pic'
-      lt_prog_compiler_static='-Bstatic'
-      ;;
-
-    *)
-      lt_prog_compiler_can_build_shared=no
-      ;;
-    esac
-  fi
-
-case $host_os in
-  # For platforms which do not support PIC, -DPIC is meaningless:
-  *djgpp*)
-    lt_prog_compiler_pic=
-    ;;
-  *)
-    lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
-    ;;
-esac
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-if ${lt_cv_prog_compiler_pic+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
-$as_echo "$lt_cv_prog_compiler_pic" >&6; }
-lt_prog_compiler_pic=$lt_cv_prog_compiler_pic
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$lt_prog_compiler_pic"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
-if ${lt_cv_prog_compiler_pic_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler_pic_works=no
-   ac_outfile=conftest.$ac_objext
-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-   lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
-   # Insert the option either (1) after the last *FLAGS variable, or
-   # (2) before a word containing "conftest.", or (3) at the end.
-   # Note that $ac_compile itself does not contain backslashes and begins
-   # with a dollar sign (not a hyphen), so the echo should work correctly.
-   # The option is referenced via a variable to avoid confusing sed.
-   lt_compile=`echo "$ac_compile" | $SED \
-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-   -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
-   (eval "$lt_compile" 2>conftest.err)
-   ac_status=$?
-   cat conftest.err >&5
-   echo "$as_me:$LINENO: \$? = $ac_status" >&5
-   if (exit $ac_status) && test -s "$ac_outfile"; then
-     # The compiler can only warn and ignore the option if not recognized
-     # So say no if there are warnings other than the usual output.
-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       lt_cv_prog_compiler_pic_works=yes
-     fi
-   fi
-   $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
-
-if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
-    case $lt_prog_compiler_pic in
-     "" | " "*) ;;
-     *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
-     esac
-else
-    lt_prog_compiler_pic=
-     lt_prog_compiler_can_build_shared=no
-fi
-
-fi
-
-
-
-
-
-
-
-
-
-
-
-#
-# Check to make sure the static flag actually works.
-#
-wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if ${lt_cv_prog_compiler_static_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler_static_works=no
-   save_LDFLAGS="$LDFLAGS"
-   LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
-   echo "$lt_simple_link_test_code" > conftest.$ac_ext
-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
-     # The linker can only warn and ignore the option if not recognized
-     # So say no if there are warnings
-     if test -s conftest.err; then
-       # Append any errors to the config.log.
-       cat conftest.err 1>&5
-       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
-       if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_cv_prog_compiler_static_works=yes
-       fi
-     else
-       lt_cv_prog_compiler_static_works=yes
-     fi
-   fi
-   $RM -r conftest*
-   LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
-$as_echo "$lt_cv_prog_compiler_static_works" >&6; }
-
-if test x"$lt_cv_prog_compiler_static_works" = xyes; then
-    :
-else
-    lt_prog_compiler_static=
-fi
-
-
-
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler_c_o=no
-   $RM -r conftest 2>/dev/null
-   mkdir conftest
-   cd conftest
-   mkdir out
-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
-   lt_compiler_flag="-o out/conftest2.$ac_objext"
-   # Insert the option either (1) after the last *FLAGS variable, or
-   # (2) before a word containing "conftest.", or (3) at the end.
-   # Note that $ac_compile itself does not contain backslashes and begins
-   # with a dollar sign (not a hyphen), so the echo should work correctly.
-   lt_compile=`echo "$ac_compile" | $SED \
-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-   -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
-   (eval "$lt_compile" 2>out/conftest.err)
-   ac_status=$?
-   cat out/conftest.err >&5
-   echo "$as_me:$LINENO: \$? = $ac_status" >&5
-   if (exit $ac_status) && test -s out/conftest2.$ac_objext
-   then
-     # The compiler can only warn and ignore the option if not recognized
-     # So say no if there are warnings
-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
-     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
-     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
-       lt_cv_prog_compiler_c_o=yes
-     fi
-   fi
-   chmod u+w . 2>&5
-   $RM conftest*
-   # SGI C++ compiler will create directory out/ii_files/ for
-   # template instantiation
-   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
-   $RM out/* && rmdir out
-   cd ..
-   $RM -r conftest
-   $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
-
-
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler_c_o=no
-   $RM -r conftest 2>/dev/null
-   mkdir conftest
-   cd conftest
-   mkdir out
-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
-   lt_compiler_flag="-o out/conftest2.$ac_objext"
-   # Insert the option either (1) after the last *FLAGS variable, or
-   # (2) before a word containing "conftest.", or (3) at the end.
-   # Note that $ac_compile itself does not contain backslashes and begins
-   # with a dollar sign (not a hyphen), so the echo should work correctly.
-   lt_compile=`echo "$ac_compile" | $SED \
-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-   -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
-   (eval "$lt_compile" 2>out/conftest.err)
-   ac_status=$?
-   cat out/conftest.err >&5
-   echo "$as_me:$LINENO: \$? = $ac_status" >&5
-   if (exit $ac_status) && test -s out/conftest2.$ac_objext
-   then
-     # The compiler can only warn and ignore the option if not recognized
-     # So say no if there are warnings
-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
-     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
-     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
-       lt_cv_prog_compiler_c_o=yes
-     fi
-   fi
-   chmod u+w . 2>&5
-   $RM conftest*
-   # SGI C++ compiler will create directory out/ii_files/ for
-   # template instantiation
-   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
-   $RM out/* && rmdir out
-   cd ..
-   $RM -r conftest
-   $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
-
-
-
-
-hard_links="nottested"
-if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then
-  # do not overwrite the value of need_locks provided by the user
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
-  hard_links=yes
-  $RM conftest*
-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  touch conftest.a
-  ln conftest.a conftest.b 2>&5 || hard_links=no
-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
-  if test "$hard_links" = no; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
-    need_locks=warn
-  fi
-else
-  need_locks=no
-fi
-
-
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
-
-  runpath_var=
-  allow_undefined_flag=
-  always_export_symbols=no
-  archive_cmds=
-  archive_expsym_cmds=
-  compiler_needs_object=no
-  enable_shared_with_static_runtimes=no
-  export_dynamic_flag_spec=
-  export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
-  hardcode_automatic=no
-  hardcode_direct=no
-  hardcode_direct_absolute=no
-  hardcode_libdir_flag_spec=
-  hardcode_libdir_flag_spec_ld=
-  hardcode_libdir_separator=
-  hardcode_minus_L=no
-  hardcode_shlibpath_var=unsupported
-  inherit_rpath=no
-  link_all_deplibs=unknown
-  module_cmds=
-  module_expsym_cmds=
-  old_archive_from_new_cmds=
-  old_archive_from_expsyms_cmds=
-  thread_safe_flag_spec=
-  whole_archive_flag_spec=
-  # include_expsyms should be a list of space-separated symbols to be *always*
-  # included in the symbol list
-  include_expsyms=
-  # exclude_expsyms can be an extended regexp of symbols to exclude
-  # it will be wrapped by ` (' and `)$', so one must not match beginning or
-  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-  # as well as any symbol that contains `d'.
-  exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
-  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
-  # platforms (ab)use it in PIC code, but their linkers get confused if
-  # the symbol is explicitly referenced.  Since portable code cannot
-  # rely on this symbol name, it's probably fine to never include it in
-  # preloaded symbol tables.
-  # Exclude shared library initialization/finalization symbols.
-  extract_expsyms_cmds=
-
-  case $host_os in
-  cygwin* | mingw* | pw32* | cegcc*)
-    # FIXME: the MSVC++ port hasn't been tested in a loooong time
-    # When not using gcc, we currently assume that we are using
-    # Microsoft Visual C++.
-    if test "$GCC" != yes; then
-      with_gnu_ld=no
-    fi
-    ;;
-  interix*)
-    # we just hope/assume this is gcc and not c89 (= MSVC++)
-    with_gnu_ld=yes
-    ;;
-  openbsd*)
-    with_gnu_ld=no
-    ;;
-  esac
-
-  ld_shlibs=yes
-
-  # On some targets, GNU ld is compatible enough with the native linker
-  # that we're better off using the native interface for both.
-  lt_use_gnu_ld_interface=no
-  if test "$with_gnu_ld" = yes; then
-    case $host_os in
-      aix*)
-	# The AIX port of GNU ld has always aspired to compatibility
-	# with the native linker.  However, as the warning in the GNU ld
-	# block says, versions before 2.19.5* couldn't really create working
-	# shared libraries, regardless of the interface used.
-	case `$LD -v 2>&1` in
-	  *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
-	  *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;;
-	  *\ \(GNU\ Binutils\)\ [3-9]*) ;;
-	  *)
-	    lt_use_gnu_ld_interface=yes
-	    ;;
-	esac
-	;;
-      *)
-	lt_use_gnu_ld_interface=yes
-	;;
-    esac
-  fi
-
-  if test "$lt_use_gnu_ld_interface" = yes; then
-    # If archive_cmds runs LD, not CC, wlarc should be empty
-    wlarc='${wl}'
-
-    # Set some defaults for GNU ld with shared library support. These
-    # are reset later if shared libraries are not supported. Putting them
-    # here allows them to be overridden if necessary.
-    runpath_var=LD_RUN_PATH
-    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-    export_dynamic_flag_spec='${wl}--export-dynamic'
-    # ancient GNU ld didn't support --whole-archive et. al.
-    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
-      whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-    else
-      whole_archive_flag_spec=
-    fi
-    supports_anon_versioning=no
-    case `$LD -v 2>&1` in
-      *GNU\ gold*) supports_anon_versioning=yes ;;
-      *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
-      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
-      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
-      *\ 2.11.*) ;; # other 2.11 versions
-      *) supports_anon_versioning=yes ;;
-    esac
-
-    # See if GNU ld supports shared libraries.
-    case $host_os in
-    aix[3-9]*)
-      # On AIX/PPC, the GNU linker is very broken
-      if test "$host_cpu" != ia64; then
-	ld_shlibs=no
-	cat <<_LT_EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.19, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support.  If you
-*** really care for shared libraries, you may want to install binutils
-*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
-*** You will then need to restart the configuration process.
-
-_LT_EOF
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-            archive_expsym_cmds=''
-        ;;
-      m68k)
-            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-            hardcode_libdir_flag_spec='-L$libdir'
-            hardcode_minus_L=yes
-        ;;
-      esac
-      ;;
-
-    beos*)
-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	allow_undefined_flag=unsupported
-	# Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
-	# support --undefined.  This deserves some investigation.  FIXME
-	archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-      else
-	ld_shlibs=no
-      fi
-      ;;
-
-    cygwin* | mingw* | pw32* | cegcc*)
-      # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
-      # as there is no search path for DLLs.
-      hardcode_libdir_flag_spec='-L$libdir'
-      export_dynamic_flag_spec='${wl}--export-all-symbols'
-      allow_undefined_flag=unsupported
-      always_export_symbols=no
-      enable_shared_with_static_runtimes=yes
-      export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'
-      exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'
-
-      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
-        archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-	# If the export-symbols file already is a .def file (1st line
-	# is EXPORTS), use it as is; otherwise, prepend...
-	archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	  cp $export_symbols $output_objdir/$soname.def;
-	else
-	  echo EXPORTS > $output_objdir/$soname.def;
-	  cat $export_symbols >> $output_objdir/$soname.def;
-	fi~
-	$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-      else
-	ld_shlibs=no
-      fi
-      ;;
-
-    haiku*)
-      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-      link_all_deplibs=yes
-      ;;
-
-    interix[3-9]*)
-      hardcode_direct=no
-      hardcode_shlibpath_var=no
-      hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-      export_dynamic_flag_spec='${wl}-E'
-      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
-      # Instead, shared libraries are loaded at an image base (0x10000000 by
-      # default) and relocated if they conflict, which is a slow very memory
-      # consuming and fragmenting process.  To avoid this, we pick a random,
-      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
-      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
-      archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      ;;
-
-    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
-      tmp_diet=no
-      if test "$host_os" = linux-dietlibc; then
-	case $cc_basename in
-	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
-	esac
-      fi
-      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
-	 && test "$tmp_diet" = no
-      then
-	tmp_addflag=' $pic_flag'
-	tmp_sharedflag='-shared'
-	case $cc_basename,$host_cpu in
-        pgcc*)				# Portland Group C compiler
-	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  tmp_addflag=' $pic_flag'
-	  ;;
-	pgf77* | pgf90* | pgf95* | pgfortran*)
-					# Portland Group f77 and f90 compilers
-	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  tmp_addflag=' $pic_flag -Mnomain' ;;
-	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
-	  tmp_addflag=' -i_dynamic' ;;
-	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64
-	  tmp_addflag=' -i_dynamic -nofor_main' ;;
-	ifc* | ifort*)			# Intel Fortran compiler
-	  tmp_addflag=' -nofor_main' ;;
-	lf95*)				# Lahey Fortran 8.1
-	  whole_archive_flag_spec=
-	  tmp_sharedflag='--shared' ;;
-	xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)
-	  tmp_sharedflag='-qmkshrobj'
-	  tmp_addflag= ;;
-	nvcc*)	# Cuda Compiler Driver 2.2
-	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  compiler_needs_object=yes
-	  ;;
-	esac
-	case `$CC -V 2>&1 | sed 5q` in
-	*Sun\ C*)			# Sun C 5.9
-	  whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  compiler_needs_object=yes
-	  tmp_sharedflag='-G' ;;
-	*Sun\ F*)			# Sun Fortran 8.3
-	  tmp_sharedflag='-G' ;;
-	esac
-	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-
-        if test "x$supports_anon_versioning" = xyes; then
-          archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
-	    cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-	    echo "local: *; };" >> $output_objdir/$libname.ver~
-	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
-        fi
-
-	case $cc_basename in
-	xlf* | bgf* | bgxlf* | mpixlf*)
-	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
-	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
-	  hardcode_libdir_flag_spec=
-	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
-	  archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
-	  if test "x$supports_anon_versioning" = xyes; then
-	    archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
-	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-	      echo "local: *; };" >> $output_objdir/$libname.ver~
-	      $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
-	  fi
-	  ;;
-	esac
-      else
-        ld_shlibs=no
-      fi
-      ;;
-
-    netbsd*)
-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
-	wlarc=
-      else
-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-      fi
-      ;;
-
-    solaris*)
-      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
-	ld_shlibs=no
-	cat <<_LT_EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems.  Therefore, libtool
-*** is disabling shared libraries support.  We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer.  Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
-      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-      else
-	ld_shlibs=no
-      fi
-      ;;
-
-    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
-      case `$LD -v 2>&1` in
-        *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
-	ld_shlibs=no
-	cat <<_LT_EOF 1>&2
-
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
-*** reliably create shared libraries on SCO systems.  Therefore, libtool
-*** is disabling shared libraries support.  We urge you to upgrade GNU
-*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
-	;;
-	*)
-	  # For security reasons, it is highly recommended that you always
-	  # use absolute paths for naming shared libraries, and exclude the
-	  # DT_RUNPATH tag from executables and libraries.  But doing so
-	  # requires that you compile everything twice, which is a pain.
-	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-	    archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	    archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-	  else
-	    ld_shlibs=no
-	  fi
-	;;
-      esac
-      ;;
-
-    sunos4*)
-      archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-      wlarc=
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      ;;
-
-    *)
-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-      else
-	ld_shlibs=no
-      fi
-      ;;
-    esac
-
-    if test "$ld_shlibs" = no; then
-      runpath_var=
-      hardcode_libdir_flag_spec=
-      export_dynamic_flag_spec=
-      whole_archive_flag_spec=
-    fi
-  else
-    # PORTME fill in a description of your system's linker (not GNU ld)
-    case $host_os in
-    aix3*)
-      allow_undefined_flag=unsupported
-      always_export_symbols=yes
-      archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
-      # Note: this linker hardcodes the directories in LIBPATH if there
-      # are no directories specified by -L.
-      hardcode_minus_L=yes
-      if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
-	# Neither direct hardcoding nor static linking is supported with a
-	# broken collect2.
-	hardcode_direct=unsupported
-      fi
-      ;;
-
-    aix[4-9]*)
-      if test "$host_cpu" = ia64; then
-	# On IA64, the linker does run time linking by default, so we don't
-	# have to do anything special.
-	aix_use_runtimelinking=no
-	exp_sym_flag='-Bexport'
-	no_entry_flag=""
-      else
-	# If we're using GNU nm, then we don't want the "-C" option.
-	# -C means demangle to AIX nm, but means don't demangle with GNU nm
-	# Also, AIX nm treats weak defined symbols like other global
-	# defined symbols, whereas GNU nm marks them as "W".
-	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
-	  export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
-	else
-	  export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
-	fi
-	aix_use_runtimelinking=no
-
-	# Test if we are trying to use run time linking or normal
-	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
-	# need to do runtime linking.
-	case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
-	  for ld_flag in $LDFLAGS; do
-	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
-	    aix_use_runtimelinking=yes
-	    break
-	  fi
-	  done
-	  ;;
-	esac
-
-	exp_sym_flag='-bexport'
-	no_entry_flag='-bnoentry'
-      fi
-
-      # When large executables or shared objects are built, AIX ld can
-      # have problems creating the table of contents.  If linking a library
-      # or program results in "error TOC overflow" add -mminimal-toc to
-      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
-      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
-      archive_cmds=''
-      hardcode_direct=yes
-      hardcode_direct_absolute=yes
-      hardcode_libdir_separator=':'
-      link_all_deplibs=yes
-      file_list_spec='${wl}-f,'
-
-      if test "$GCC" = yes; then
-	case $host_os in aix4.[012]|aix4.[012].*)
-	# We only want to do this on AIX 4.2 and lower, the check
-	# below for broken collect2 doesn't work under 4.3+
-	  collect2name=`${CC} -print-prog-name=collect2`
-	  if test -f "$collect2name" &&
-	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
-	  then
-	  # We have reworked collect2
-	  :
-	  else
-	  # We have old collect2
-	  hardcode_direct=unsupported
-	  # It fails to find uninstalled libraries when the uninstalled
-	  # path is not listed in the libpath.  Setting hardcode_minus_L
-	  # to unsupported forces relinking
-	  hardcode_minus_L=yes
-	  hardcode_libdir_flag_spec='-L$libdir'
-	  hardcode_libdir_separator=
-	  fi
-	  ;;
-	esac
-	shared_flag='-shared'
-	if test "$aix_use_runtimelinking" = yes; then
-	  shared_flag="$shared_flag "'${wl}-G'
-	fi
-      else
-	# not using gcc
-	if test "$host_cpu" = ia64; then
-	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
-	# chokes on -Wl,-G. The following line is correct:
-	  shared_flag='-G'
-	else
-	  if test "$aix_use_runtimelinking" = yes; then
-	    shared_flag='${wl}-G'
-	  else
-	    shared_flag='${wl}-bM:SRE'
-	  fi
-	fi
-      fi
-
-      export_dynamic_flag_spec='${wl}-bexpall'
-      # It seems that -bexpall does not export symbols beginning with
-      # underscore (_), so it is better to generate a list of symbols to export.
-      always_export_symbols=yes
-      if test "$aix_use_runtimelinking" = yes; then
-	# Warning - without using the other runtime loading flags (-brtl),
-	# -berok will link without error, but may produce a broken library.
-	allow_undefined_flag='-berok'
-        # Determine the default libpath from the value encoded in an
-        # empty executable.
-        if test "${lt_cv_aix_libpath+set}" = set; then
-  aix_libpath=$lt_cv_aix_libpath
-else
-  if ${lt_cv_aix_libpath_+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-  lt_aix_libpath_sed='
-      /Import File Strings/,/^$/ {
-	  /^0/ {
-	      s/^0  *\([^ ]*\) *$/\1/
-	      p
-	  }
-      }'
-  lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-  # Check for a 64-bit object if we didn't find anything.
-  if test -z "$lt_cv_aix_libpath_"; then
-    lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-  fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test -z "$lt_cv_aix_libpath_"; then
-    lt_cv_aix_libpath_="/usr/lib:/lib"
-  fi
-
-fi
-
-  aix_libpath=$lt_cv_aix_libpath_
-fi
-
-        hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
-        archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-      else
-	if test "$host_cpu" = ia64; then
-	  hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
-	  allow_undefined_flag="-z nodefs"
-	  archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
-	else
-	 # Determine the default libpath from the value encoded in an
-	 # empty executable.
-	 if test "${lt_cv_aix_libpath+set}" = set; then
-  aix_libpath=$lt_cv_aix_libpath
-else
-  if ${lt_cv_aix_libpath_+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-  lt_aix_libpath_sed='
-      /Import File Strings/,/^$/ {
-	  /^0/ {
-	      s/^0  *\([^ ]*\) *$/\1/
-	      p
-	  }
-      }'
-  lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-  # Check for a 64-bit object if we didn't find anything.
-  if test -z "$lt_cv_aix_libpath_"; then
-    lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-  fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  if test -z "$lt_cv_aix_libpath_"; then
-    lt_cv_aix_libpath_="/usr/lib:/lib"
-  fi
-
-fi
-
-  aix_libpath=$lt_cv_aix_libpath_
-fi
-
-	 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
-	  # Warning - without using the other run time loading flags,
-	  # -berok will link without error, but may produce a broken library.
-	  no_undefined_flag=' ${wl}-bernotok'
-	  allow_undefined_flag=' ${wl}-berok'
-	  if test "$with_gnu_ld" = yes; then
-	    # We only use this code for GNU lds that support --whole-archive.
-	    whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
-	  else
-	    # Exported symbols can be pulled into shared objects from archives
-	    whole_archive_flag_spec='$convenience'
-	  fi
-	  archive_cmds_need_lc=yes
-	  # This is similar to how AIX traditionally builds its shared libraries.
-	  archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
-	fi
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-            archive_expsym_cmds=''
-        ;;
-      m68k)
-            archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-            hardcode_libdir_flag_spec='-L$libdir'
-            hardcode_minus_L=yes
-        ;;
-      esac
-      ;;
-
-    bsdi[45]*)
-      export_dynamic_flag_spec=-rdynamic
-      ;;
-
-    cygwin* | mingw* | pw32* | cegcc*)
-      # When not using gcc, we currently assume that we are using
-      # Microsoft Visual C++.
-      # hardcode_libdir_flag_spec is actually meaningless, as there is
-      # no search path for DLLs.
-      case $cc_basename in
-      cl*)
-	# Native MSVC
-	hardcode_libdir_flag_spec=' '
-	allow_undefined_flag=unsupported
-	always_export_symbols=yes
-	file_list_spec='@'
-	# Tell ltmain to make .lib files, not .a files.
-	libext=lib
-	# Tell ltmain to make .dll files, not .so files.
-	shrext_cmds=".dll"
-	# FIXME: Setting linknames here is a bad hack.
-	archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
-	archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	    sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
-	  else
-	    sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
-	  fi~
-	  $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
-	  linknames='
-	# The linker will not automatically build a static lib if we build a DLL.
-	# _LT_TAGVAR(old_archive_from_new_cmds, )='true'
-	enable_shared_with_static_runtimes=yes
-	export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
-	# Don't use ranlib
-	old_postinstall_cmds='chmod 644 $oldlib'
-	postlink_cmds='lt_outputfile="@OUTPUT@"~
-	  lt_tool_outputfile="@TOOL_OUTPUT@"~
-	  case $lt_outputfile in
-	    *.exe|*.EXE) ;;
-	    *)
-	      lt_outputfile="$lt_outputfile.exe"
-	      lt_tool_outputfile="$lt_tool_outputfile.exe"
-	      ;;
-	  esac~
-	  if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
-	    $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
-	    $RM "$lt_outputfile.manifest";
-	  fi'
-	;;
-      *)
-	# Assume MSVC wrapper
-	hardcode_libdir_flag_spec=' '
-	allow_undefined_flag=unsupported
-	# Tell ltmain to make .lib files, not .a files.
-	libext=lib
-	# Tell ltmain to make .dll files, not .so files.
-	shrext_cmds=".dll"
-	# FIXME: Setting linknames here is a bad hack.
-	archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
-	# The linker will automatically build a .lib file if we build a DLL.
-	old_archive_from_new_cmds='true'
-	# FIXME: Should let the user specify the lib program.
-	old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
-	enable_shared_with_static_runtimes=yes
-	;;
-      esac
-      ;;
-
-    darwin* | rhapsody*)
-
-
-  archive_cmds_need_lc=no
-  hardcode_direct=no
-  hardcode_automatic=yes
-  hardcode_shlibpath_var=unsupported
-  if test "$lt_cv_ld_force_load" = "yes"; then
-    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\"`'
-  else
-    whole_archive_flag_spec=''
-  fi
-  link_all_deplibs=yes
-  allow_undefined_flag="$_lt_dar_allow_undefined"
-  case $cc_basename in
-     ifort*) _lt_dar_can_shared=yes ;;
-     *) _lt_dar_can_shared=$GCC ;;
-  esac
-  if test "$_lt_dar_can_shared" = "yes"; then
-    output_verbose_link_cmd=func_echo_all
-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
-    archive_expsym_cmds="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 ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
-
-  else
-  ld_shlibs=no
-  fi
-
-      ;;
-
-    dgux*)
-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      hardcode_libdir_flag_spec='-L$libdir'
-      hardcode_shlibpath_var=no
-      ;;
-
-    freebsd1*)
-      ld_shlibs=no
-      ;;
-
-    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
-    # support.  Future versions do this automatically, but an explicit c++rt0.o
-    # does not break anything, and helps significantly (at the cost of a little
-    # extra space).
-    freebsd2.2*)
-      archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
-      hardcode_libdir_flag_spec='-R$libdir'
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      ;;
-
-    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
-    freebsd2*)
-      archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-      hardcode_direct=yes
-      hardcode_minus_L=yes
-      hardcode_shlibpath_var=no
-      ;;
-
-    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-    freebsd* | dragonfly*)
-      archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-      hardcode_libdir_flag_spec='-R$libdir'
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      ;;
-
-    hpux9*)
-      if test "$GCC" = yes; then
-	archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
-      else
-	archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
-      fi
-      hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
-      hardcode_libdir_separator=:
-      hardcode_direct=yes
-
-      # hardcode_minus_L: Not really in the search PATH,
-      # but as the default location of the library.
-      hardcode_minus_L=yes
-      export_dynamic_flag_spec='${wl}-E'
-      ;;
-
-    hpux10*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
-	archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
-      fi
-      if test "$with_gnu_ld" = no; then
-	hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
-	hardcode_libdir_flag_spec_ld='+b $libdir'
-	hardcode_libdir_separator=:
-	hardcode_direct=yes
-	hardcode_direct_absolute=yes
-	export_dynamic_flag_spec='${wl}-E'
-	# hardcode_minus_L: Not really in the search PATH,
-	# but as the default location of the library.
-	hardcode_minus_L=yes
-      fi
-      ;;
-
-    hpux11*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
-	case $host_cpu in
-	hppa*64*)
-	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	ia64*)
-	  archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	*)
-	  archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	esac
-      else
-	case $host_cpu in
-	hppa*64*)
-	  archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	ia64*)
-	  archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	*)
-
-	  # Older versions of the 11.00 compiler do not understand -b yet
-	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
-$as_echo_n "checking if $CC understands -b... " >&6; }
-if ${lt_cv_prog_compiler__b+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_prog_compiler__b=no
-   save_LDFLAGS="$LDFLAGS"
-   LDFLAGS="$LDFLAGS -b"
-   echo "$lt_simple_link_test_code" > conftest.$ac_ext
-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
-     # The linker can only warn and ignore the option if not recognized
-     # So say no if there are warnings
-     if test -s conftest.err; then
-       # Append any errors to the config.log.
-       cat conftest.err 1>&5
-       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
-       if diff conftest.exp conftest.er2 >/dev/null; then
-         lt_cv_prog_compiler__b=yes
-       fi
-     else
-       lt_cv_prog_compiler__b=yes
-     fi
-   fi
-   $RM -r conftest*
-   LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
-$as_echo "$lt_cv_prog_compiler__b" >&6; }
-
-if test x"$lt_cv_prog_compiler__b" = xyes; then
-    archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
-else
-    archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
-fi
-
-	  ;;
-	esac
-      fi
-      if test "$with_gnu_ld" = no; then
-	hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
-	hardcode_libdir_separator=:
-
-	case $host_cpu in
-	hppa*64*|ia64*)
-	  hardcode_direct=no
-	  hardcode_shlibpath_var=no
-	  ;;
-	*)
-	  hardcode_direct=yes
-	  hardcode_direct_absolute=yes
-	  export_dynamic_flag_spec='${wl}-E'
-
-	  # hardcode_minus_L: Not really in the search PATH,
-	  # but as the default location of the library.
-	  hardcode_minus_L=yes
-	  ;;
-	esac
-      fi
-      ;;
-
-    irix5* | irix6* | nonstopux*)
-      if test "$GCC" = yes; then
-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-	# Try to use the -exported_symbol ld option, if it does not
-	# work, assume that -exports_file does not work either and
-	# implicitly export all symbols.
-	# This should be the same for all languages, so no per-tag cache variable.
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
-$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-if ${lt_cv_irix_exported_symbol+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  save_LDFLAGS="$LDFLAGS"
-	   LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
-	   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-int foo (void) { return 0; }
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  lt_cv_irix_exported_symbol=yes
-else
-  lt_cv_irix_exported_symbol=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-           LDFLAGS="$save_LDFLAGS"
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
-$as_echo "$lt_cv_irix_exported_symbol" >&6; }
-	if test "$lt_cv_irix_exported_symbol" = yes; then
-          archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
-	fi
-      else
-	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-      fi
-      archive_cmds_need_lc='no'
-      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-      hardcode_libdir_separator=:
-      inherit_rpath=yes
-      link_all_deplibs=yes
-      ;;
-
-    netbsd*)
-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-	archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
-      else
-	archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
-      fi
-      hardcode_libdir_flag_spec='-R$libdir'
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      ;;
-
-    newsos6)
-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      hardcode_direct=yes
-      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-      hardcode_libdir_separator=:
-      hardcode_shlibpath_var=no
-      ;;
-
-    *nto* | *qnx*)
-      ;;
-
-    openbsd*)
-      if test -f /usr/libexec/ld.so; then
-	hardcode_direct=yes
-	hardcode_shlibpath_var=no
-	hardcode_direct_absolute=yes
-	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	  hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	  export_dynamic_flag_spec='${wl}-E'
-	else
-	  case $host_os in
-	   openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-	     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	     hardcode_libdir_flag_spec='-R$libdir'
-	     ;;
-	   *)
-	     archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	     hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	     ;;
-	  esac
-	fi
-      else
-	ld_shlibs=no
-      fi
-      ;;
-
-    os2*)
-      hardcode_libdir_flag_spec='-L$libdir'
-      hardcode_minus_L=yes
-      allow_undefined_flag=unsupported
-      archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
-      old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
-      ;;
-
-    osf3*)
-      if test "$GCC" = yes; then
-	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-	archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-      else
-	allow_undefined_flag=' -expect_unresolved \*'
-	archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-      fi
-      archive_cmds_need_lc='no'
-      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-      hardcode_libdir_separator=:
-      ;;
-
-    osf4* | osf5*)	# as osf3* with the addition of -msym flag
-      if test "$GCC" = yes; then
-	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-	archive_cmds='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-	hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-      else
-	allow_undefined_flag=' -expect_unresolved \*'
-	archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
-	$CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
-
-	# Both c and cxx compiler support -rpath directly
-	hardcode_libdir_flag_spec='-rpath $libdir'
-      fi
-      archive_cmds_need_lc='no'
-      hardcode_libdir_separator=:
-      ;;
-
-    solaris*)
-      no_undefined_flag=' -z defs'
-      if test "$GCC" = yes; then
-	wlarc='${wl}'
-	archive_cmds='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
-      else
-	case `$CC -V 2>&1` in
-	*"Compilers 5.0"*)
-	  wlarc=''
-	  archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	  archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
-	  ;;
-	*)
-	  wlarc='${wl}'
-	  archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
-	  archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
-	  ;;
-	esac
-      fi
-      hardcode_libdir_flag_spec='-R$libdir'
-      hardcode_shlibpath_var=no
-      case $host_os in
-      solaris2.[0-5] | solaris2.[0-5].*) ;;
-      *)
-	# The compiler driver will combine and reorder linker options,
-	# but understands `-z linker_flag'.  GCC discards it without `$wl',
-	# but is careful enough not to reorder.
-	# Supported since Solaris 2.6 (maybe 2.5.1?)
-	if test "$GCC" = yes; then
-	  whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
-	else
-	  whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
-	fi
-	;;
-      esac
-      link_all_deplibs=yes
-      ;;
-
-    sunos4*)
-      if test "x$host_vendor" = xsequent; then
-	# Use $CC to link under sequent, because it throws in some extra .o
-	# files that make .init and .fini sections work.
-	archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
-      fi
-      hardcode_libdir_flag_spec='-L$libdir'
-      hardcode_direct=yes
-      hardcode_minus_L=yes
-      hardcode_shlibpath_var=no
-      ;;
-
-    sysv4)
-      case $host_vendor in
-	sni)
-	  archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	  hardcode_direct=yes # is this really true???
-	;;
-	siemens)
-	  ## LD is ld it makes a PLAMLIB
-	  ## CC just makes a GrossModule.
-	  archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
-	  reload_cmds='$CC -r -o $output$reload_objs'
-	  hardcode_direct=no
-        ;;
-	motorola)
-	  archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	  hardcode_direct=no #Motorola manual says yes, but my tests say they lie
-	;;
-      esac
-      runpath_var='LD_RUN_PATH'
-      hardcode_shlibpath_var=no
-      ;;
-
-    sysv4.3*)
-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      hardcode_shlibpath_var=no
-      export_dynamic_flag_spec='-Bexport'
-      ;;
-
-    sysv4*MP*)
-      if test -d /usr/nec; then
-	archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	hardcode_shlibpath_var=no
-	runpath_var=LD_RUN_PATH
-	hardcode_runpath_var=yes
-	ld_shlibs=yes
-      fi
-      ;;
-
-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
-      no_undefined_flag='${wl}-z,text'
-      archive_cmds_need_lc=no
-      hardcode_shlibpath_var=no
-      runpath_var='LD_RUN_PATH'
-
-      if test "$GCC" = yes; then
-	archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      fi
-      ;;
-
-    sysv5* | sco3.2v5* | sco5v6*)
-      # Note: We can NOT use -z defs as we might desire, because we do not
-      # link with -lc, and that would cause any symbols used from libc to
-      # always be unresolved, which means just about no library would
-      # ever link correctly.  If we're not using GNU ld we use -z text
-      # though, which does catch some bad symbols but isn't as heavy-handed
-      # as -z defs.
-      no_undefined_flag='${wl}-z,text'
-      allow_undefined_flag='${wl}-z,nodefs'
-      archive_cmds_need_lc=no
-      hardcode_shlibpath_var=no
-      hardcode_libdir_flag_spec='${wl}-R,$libdir'
-      hardcode_libdir_separator=':'
-      link_all_deplibs=yes
-      export_dynamic_flag_spec='${wl}-Bexport'
-      runpath_var='LD_RUN_PATH'
-
-      if test "$GCC" = yes; then
-	archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      fi
-      ;;
-
-    uts4*)
-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      hardcode_libdir_flag_spec='-L$libdir'
-      hardcode_shlibpath_var=no
-      ;;
-
-    *)
-      ld_shlibs=no
-      ;;
-    esac
-
-    if test x$host_vendor = xsni; then
-      case $host in
-      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-	export_dynamic_flag_spec='${wl}-Blargedynsym'
-	;;
-      esac
-    fi
-  fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
-$as_echo "$ld_shlibs" >&6; }
-test "$ld_shlibs" = no && can_build_shared=no
-
-with_gnu_ld=$with_gnu_ld
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$archive_cmds_need_lc" in
-x|xyes)
-  # Assume -lc should be added
-  archive_cmds_need_lc=yes
-
-  if test "$enable_shared" = yes && test "$GCC" = yes; then
-    case $archive_cmds in
-    *'~'*)
-      # FIXME: we may have to deal with multi-command sequences.
-      ;;
-    '$CC '*)
-      # Test whether the compiler implicitly links with -lc since on some
-      # systems, -lgcc has to come before -lc. If gcc already passes -lc
-      # to ld, don't add -lc before -lgcc.
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
-if ${lt_cv_archive_cmds_need_lc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  $RM conftest*
-	echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
-	if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } 2>conftest.err; then
-	  soname=conftest
-	  lib=conftest
-	  libobjs=conftest.$ac_objext
-	  deplibs=
-	  wl=$lt_prog_compiler_wl
-	  pic_flag=$lt_prog_compiler_pic
-	  compiler_flags=-v
-	  linker_flags=-v
-	  verstring=
-	  output_objdir=.
-	  libname=conftest
-	  lt_save_allow_undefined_flag=$allow_undefined_flag
-	  allow_undefined_flag=
-	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
-  (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }
-	  then
-	    lt_cv_archive_cmds_need_lc=no
-	  else
-	    lt_cv_archive_cmds_need_lc=yes
-	  fi
-	  allow_undefined_flag=$lt_save_allow_undefined_flag
-	else
-	  cat conftest.err 1>&5
-	fi
-	$RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
-$as_echo "$lt_cv_archive_cmds_need_lc" >&6; }
-      archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc
-      ;;
-    esac
-  fi
-  ;;
-esac
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
-
-if test "$GCC" = yes; then
-  case $host_os in
-    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
-    *) lt_awk_arg="/^libraries:/" ;;
-  esac
-  case $host_os in
-    mingw* | cegcc*) lt_sed_strip_eq="s,=\([A-Za-z]:\),\1,g" ;;
-    *) lt_sed_strip_eq="s,=/,/,g" ;;
-  esac
-  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
-  case $lt_search_path_spec in
-  *\;*)
-    # if the path contains ";" then we assume it to be the separator
-    # otherwise default to the standard path separator (i.e. ":") - it is
-    # assumed that no part of a normal pathname contains ";" but that should
-    # okay in the real world where ";" in dirpaths is itself problematic.
-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
-    ;;
-  *)
-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
-    ;;
-  esac
-  # Ok, now we have the path, separated by spaces, we can step through it
-  # and add multilib dir if necessary.
-  lt_tmp_lt_search_path_spec=
-  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
-  for lt_sys_path in $lt_search_path_spec; do
-    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
-      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
-    else
-      test -d "$lt_sys_path" && \
-	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
-    fi
-  done
-  lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
-BEGIN {RS=" "; FS="/|\n";} {
-  lt_foo="";
-  lt_count=0;
-  for (lt_i = NF; lt_i > 0; lt_i--) {
-    if ($lt_i != "" && $lt_i != ".") {
-      if ($lt_i == "..") {
-        lt_count++;
-      } else {
-        if (lt_count == 0) {
-          lt_foo="/" $lt_i lt_foo;
-        } else {
-          lt_count--;
-        }
-      }
-    }
-  }
-  if (lt_foo != "") { lt_freq[lt_foo]++; }
-  if (lt_freq[lt_foo] == 1) { print lt_foo; }
-}'`
-  # AWK program above erroneously prepends '/' to C:/dos/paths
-  # for these hosts.
-  case $host_os in
-    mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
-      $SED 's,/\([A-Za-z]:\),\1,g'` ;;
-  esac
-  sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
-else
-  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=".so"
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-case $host_os in
-aix3*)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
-  shlibpath_var=LIBPATH
-
-  # AIX 3 has no versioning support, so we append a major version to the name.
-  soname_spec='${libname}${release}${shared_ext}$major'
-  ;;
-
-aix[4-9]*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  hardcode_into_libs=yes
-  if test "$host_cpu" = ia64; then
-    # AIX 5 supports IA64
-    library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
-    shlibpath_var=LD_LIBRARY_PATH
-  else
-    # With GCC up to 2.95.x, collect2 would create an import file
-    # for dependence libraries.  The import file would start with
-    # the line `#! .'.  This would cause the generated library to
-    # depend on `.', always an invalid library.  This was fixed in
-    # development snapshots of GCC prior to 3.0.
-    case $host_os in
-      aix4 | aix4.[01] | aix4.[01].*)
-      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
-	   echo ' yes '
-	   echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
-	:
-      else
-	can_build_shared=no
-      fi
-      ;;
-    esac
-    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
-    # soname into executable. Probably we can add versioning support to
-    # collect2, so additional links can be useful in future.
-    if test "$aix_use_runtimelinking" = yes; then
-      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
-      # instead of lib<name>.a to let people know that these are not
-      # typical AIX shared libraries.
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    else
-      # We preserve .a as extension for shared libraries through AIX4.2
-      # and later when we are not doing run time linking.
-      library_names_spec='${libname}${release}.a $libname.a'
-      soname_spec='${libname}${release}${shared_ext}$major'
-    fi
-    shlibpath_var=LIBPATH
-  fi
-  ;;
-
-amigaos*)
-  case $host_cpu in
-  powerpc)
-    # Since July 2007 AmigaOS4 officially supports .so libraries.
-    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    ;;
-  m68k)
-    library_names_spec='$libname.ixlibrary $libname.a'
-    # Create ${libname}_ixlibrary.a entries in /sys/libs.
-    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
-    ;;
-  esac
-  ;;
-
-beos*)
-  library_names_spec='${libname}${shared_ext}'
-  dynamic_linker="$host_os ld.so"
-  shlibpath_var=LIBRARY_PATH
-  ;;
-
-bsdi[45]*)
-  version_type=linux
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
-  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
-  # the default ld.so.conf also contains /usr/contrib/lib and
-  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
-  # libtool to hard-code these into programs
-  ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
-  version_type=windows
-  shrext_cmds=".dll"
-  need_version=no
-  need_lib_prefix=no
-
-  case $GCC,$cc_basename in
-  yes,*)
-    # gcc
-    library_names_spec='$libname.dll.a'
-    # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
-      dldir=$destdir/`dirname \$dlpath`~
-      test -d \$dldir || mkdir -p \$dldir~
-      $install_prog $dir/$dlname \$dldir/$dlname~
-      chmod a+x \$dldir/$dlname~
-      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
-        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
-      fi'
-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
-      dlpath=$dir/\$dldll~
-       $RM \$dlpath'
-    shlibpath_overrides_runpath=yes
-
-    case $host_os in
-    cygwin*)
-      # Cygwin DLLs use 'cyg' prefix rather than 'lib'
-      soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
-
-      sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"
-      ;;
-    mingw* | cegcc*)
-      # MinGW DLLs use traditional 'lib' prefix
-      soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
-      ;;
-    pw32*)
-      # pw32 DLLs use 'pw' prefix rather than 'lib'
-      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
-      ;;
-    esac
-    dynamic_linker='Win32 ld.exe'
-    ;;
-
-  *,cl*)
-    # Native MSVC
-    libname_spec='$name'
-    soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
-    library_names_spec='${libname}.dll.lib'
-
-    case $build_os in
-    mingw*)
-      sys_lib_search_path_spec=
-      lt_save_ifs=$IFS
-      IFS=';'
-      for lt_path in $LIB
-      do
-        IFS=$lt_save_ifs
-        # Let DOS variable expansion print the short 8.3 style file name.
-        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
-        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
-      done
-      IFS=$lt_save_ifs
-      # Convert to MSYS style.
-      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
-      ;;
-    cygwin*)
-      # Convert to unix form, then to dos form, then back to unix form
-      # but this time dos style (no spaces!) so that the unix form looks
-      # like /cygdrive/c/PROGRA~1:/cygdr...
-      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
-      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
-      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
-      ;;
-    *)
-      sys_lib_search_path_spec="$LIB"
-      if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
-        # It is most probably a Windows format PATH.
-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
-      else
-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
-      fi
-      # FIXME: find the short name or the path components, as spaces are
-      # common. (e.g. "Program Files" -> "PROGRA~1")
-      ;;
-    esac
-
-    # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
-      dldir=$destdir/`dirname \$dlpath`~
-      test -d \$dldir || mkdir -p \$dldir~
-      $install_prog $dir/$dlname \$dldir/$dlname'
-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
-      dlpath=$dir/\$dldll~
-       $RM \$dlpath'
-    shlibpath_overrides_runpath=yes
-    dynamic_linker='Win32 link.exe'
-    ;;
-
-  *)
-    # Assume MSVC wrapper
-    library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
-    dynamic_linker='Win32 ld.exe'
-    ;;
-  esac
-  # FIXME: first we should search . and the directory the executable is in
-  shlibpath_var=PATH
-  ;;
-
-darwin* | rhapsody*)
-  dynamic_linker="$host_os dyld"
-  version_type=darwin
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
-  soname_spec='${libname}${release}${major}$shared_ext'
-  shlibpath_overrides_runpath=yes
-  shlibpath_var=DYLD_LIBRARY_PATH
-  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-
-  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
-  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
-  ;;
-
-dgux*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-freebsd1*)
-  dynamic_linker=no
-  ;;
-
-freebsd* | dragonfly*)
-  # DragonFly does not have aout.  When/if they implement a new
-  # versioning mechanism, adjust this.
-  if test -x /usr/bin/objformat; then
-    objformat=`/usr/bin/objformat`
-  else
-    case $host_os in
-    freebsd[123]*) objformat=aout ;;
-    *) objformat=elf ;;
-    esac
-  fi
-  version_type=freebsd-$objformat
-  case $version_type in
-    freebsd-elf*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-      need_version=no
-      need_lib_prefix=no
-      ;;
-    freebsd-*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
-      need_version=yes
-      ;;
-  esac
-  shlibpath_var=LD_LIBRARY_PATH
-  case $host_os in
-  freebsd2*)
-    shlibpath_overrides_runpath=yes
-    ;;
-  freebsd3.[01]* | freebsdelf3.[01]*)
-    shlibpath_overrides_runpath=yes
-    hardcode_into_libs=yes
-    ;;
-  freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
-  freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
-    shlibpath_overrides_runpath=no
-    hardcode_into_libs=yes
-    ;;
-  *) # from 4.6 on, and DragonFly
-    shlibpath_overrides_runpath=yes
-    hardcode_into_libs=yes
-    ;;
-  esac
-  ;;
-
-gnu*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  hardcode_into_libs=yes
-  ;;
-
-haiku*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  dynamic_linker="$host_os runtime_loader"
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
-  hardcode_into_libs=yes
-  ;;
-
-hpux9* | hpux10* | hpux11*)
-  # Give a soname corresponding to the major version so that dld.sl refuses to
-  # link against other versions.
-  version_type=sunos
-  need_lib_prefix=no
-  need_version=no
-  case $host_cpu in
-  ia64*)
-    shrext_cmds='.so'
-    hardcode_into_libs=yes
-    dynamic_linker="$host_os dld.so"
-    shlibpath_var=LD_LIBRARY_PATH
-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    if test "X$HPUX_IA64_MODE" = X32; then
-      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
-    else
-      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
-    fi
-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
-    ;;
-  hppa*64*)
-    shrext_cmds='.sl'
-    hardcode_into_libs=yes
-    dynamic_linker="$host_os dld.sl"
-    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
-    ;;
-  *)
-    shrext_cmds='.sl'
-    dynamic_linker="$host_os dld.sl"
-    shlibpath_var=SHLIB_PATH
-    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    ;;
-  esac
-  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
-  postinstall_cmds='chmod 555 $lib'
-  # or fails outright, so override atomically:
-  install_override_mode=555
-  ;;
-
-interix[3-9]*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  ;;
-
-irix5* | irix6* | nonstopux*)
-  case $host_os in
-    nonstopux*) version_type=nonstopux ;;
-    *)
-	if test "$lt_cv_prog_gnu_ld" = yes; then
-		version_type=linux
-	else
-		version_type=irix
-	fi ;;
-  esac
-  need_lib_prefix=no
-  need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
-  case $host_os in
-  irix5* | nonstopux*)
-    libsuff= shlibsuff=
-    ;;
-  *)
-    case $LD in # libtool.m4 will add one of these switches to LD
-    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
-      libsuff= shlibsuff= libmagic=32-bit;;
-    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
-      libsuff=32 shlibsuff=N32 libmagic=N32;;
-    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
-      libsuff=64 shlibsuff=64 libmagic=64-bit;;
-    *) libsuff= shlibsuff= libmagic=never-match;;
-    esac
-    ;;
-  esac
-  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
-  shlibpath_overrides_runpath=no
-  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
-  hardcode_into_libs=yes
-  ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
-  dynamic_linker=no
-  ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-
-  # Some binutils ld are patched to set DT_RUNPATH
-  if ${lt_cv_shlibpath_overrides_runpath+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  lt_cv_shlibpath_overrides_runpath=no
-    save_LDFLAGS=$LDFLAGS
-    save_libdir=$libdir
-    eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \
-	 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
-  lt_cv_shlibpath_overrides_runpath=yes
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    LDFLAGS=$save_LDFLAGS
-    libdir=$save_libdir
-
-fi
-
-  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
-
-  # This implies no fast_install, which is unacceptable.
-  # Some rework will be needed to allow for fast_install
-  # before this can be enabled.
-  hardcode_into_libs=yes
-
-  # Add ABI-specific directories to the system library path.
-  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
-
-  # Append ld.so.conf contents to the search path
-  if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
-
-  fi
-
-  # We used to test for /lib/ld.so.1 and disable shared libraries on
-  # powerpc, because MkLinux only supported shared libraries with the
-  # GNU dynamic linker.  Since this was broken with cross compilers,
-  # most powerpc-linux boxes support dynamic linking these days and
-  # people can always --disable-shared, the test was removed, and we
-  # assume the GNU/Linux dynamic linker is in use.
-  dynamic_linker='GNU/Linux ld.so'
-  ;;
-
-netbsd*)
-  version_type=sunos
-  need_lib_prefix=no
-  need_version=no
-  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-    dynamic_linker='NetBSD (a.out) ld.so'
-  else
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    dynamic_linker='NetBSD ld.elf_so'
-  fi
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  hardcode_into_libs=yes
-  ;;
-
-newsos6)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  ;;
-
-*nto* | *qnx*)
-  version_type=qnx
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  dynamic_linker='ldqnx.so'
-  ;;
-
-openbsd*)
-  version_type=sunos
-  sys_lib_dlsearch_path_spec="/usr/lib"
-  need_lib_prefix=no
-  # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
-  case $host_os in
-    openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
-    *)				need_version=no  ;;
-  esac
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-    case $host_os in
-      openbsd2.[89] | openbsd2.[89].*)
-	shlibpath_overrides_runpath=no
-	;;
-      *)
-	shlibpath_overrides_runpath=yes
-	;;
-      esac
-  else
-    shlibpath_overrides_runpath=yes
-  fi
-  ;;
-
-os2*)
-  libname_spec='$name'
-  shrext_cmds=".dll"
-  need_lib_prefix=no
-  library_names_spec='$libname${shared_ext} $libname.a'
-  dynamic_linker='OS/2 ld.exe'
-  shlibpath_var=LIBPATH
-  ;;
-
-osf3* | osf4* | osf5*)
-  version_type=osf
-  need_lib_prefix=no
-  need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
-  ;;
-
-rdos*)
-  dynamic_linker=no
-  ;;
-
-solaris*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  hardcode_into_libs=yes
-  # ldd complains unless libraries are executable
-  postinstall_cmds='chmod +x $lib'
-  ;;
-
-sunos4*)
-  version_type=sunos
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  if test "$with_gnu_ld" = yes; then
-    need_lib_prefix=no
-  fi
-  need_version=yes
-  ;;
-
-sysv4 | sysv4.3*)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  case $host_vendor in
-    sni)
-      shlibpath_overrides_runpath=no
-      need_lib_prefix=no
-      runpath_var=LD_RUN_PATH
-      ;;
-    siemens)
-      need_lib_prefix=no
-      ;;
-    motorola)
-      need_lib_prefix=no
-      need_version=no
-      shlibpath_overrides_runpath=no
-      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
-      ;;
-  esac
-  ;;
-
-sysv4*MP*)
-  if test -d /usr/nec ;then
-    version_type=linux
-    library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
-    soname_spec='$libname${shared_ext}.$major'
-    shlibpath_var=LD_LIBRARY_PATH
-  fi
-  ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  version_type=freebsd-elf
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  hardcode_into_libs=yes
-  if test "$with_gnu_ld" = yes; then
-    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
-  else
-    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
-    case $host_os in
-      sco3.2v5*)
-        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
-	;;
-    esac
-  fi
-  sys_lib_dlsearch_path_spec='/usr/lib'
-  ;;
-
-tpf*)
-  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  ;;
-
-uts4*)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-*)
-  dynamic_linker=no
-  ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
-test "$dynamic_linker" = no && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
-  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
-  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
-fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
-  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
-hardcode_action=
-if test -n "$hardcode_libdir_flag_spec" ||
-   test -n "$runpath_var" ||
-   test "X$hardcode_automatic" = "Xyes" ; then
-
-  # We can hardcode non-existent directories.
-  if test "$hardcode_direct" != no &&
-     # If the only mechanism to avoid hardcoding is shlibpath_var, we
-     # have to relink, otherwise we might link with an installed library
-     # when we should be linking with a yet-to-be-installed one
-     ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no &&
-     test "$hardcode_minus_L" != no; then
-    # Linking always hardcodes the temporary library directory.
-    hardcode_action=relink
-  else
-    # We can link without hardcoding, and we can hardcode nonexisting dirs.
-    hardcode_action=immediate
-  fi
-else
-  # We cannot hardcode anything, or else we can only hardcode existing
-  # directories.
-  hardcode_action=unsupported
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
-$as_echo "$hardcode_action" >&6; }
-
-if test "$hardcode_action" = relink ||
-   test "$inherit_rpath" = yes; then
-  # Fast installation is not supported
-  enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
-     test "$enable_shared" = no; then
-  # Fast installation is not necessary
-  enable_fast_install=needless
-fi
-
-
-
-
-
-
-  if test "x$enable_dlopen" != xyes; then
-  enable_dlopen=unknown
-  enable_dlopen_self=unknown
-  enable_dlopen_self_static=unknown
-else
-  lt_cv_dlopen=no
-  lt_cv_dlopen_libs=
-
-  case $host_os in
-  beos*)
-    lt_cv_dlopen="load_add_on"
-    lt_cv_dlopen_libs=
-    lt_cv_dlopen_self=yes
-    ;;
-
-  mingw* | pw32* | cegcc*)
-    lt_cv_dlopen="LoadLibrary"
-    lt_cv_dlopen_libs=
-    ;;
-
-  cygwin*)
-    lt_cv_dlopen="dlopen"
-    lt_cv_dlopen_libs=
-    ;;
-
-  darwin*)
-  # if libdl is installed we need to link against it
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int main (void)
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_dl_dlopen=yes
-else
-  ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-else
-
-    lt_cv_dlopen="dyld"
-    lt_cv_dlopen_libs=
-    lt_cv_dlopen_self=yes
-
-fi
-
-    ;;
-
-  *)
-    ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
-if test "x$ac_cv_func_shl_load" = xyes; then :
-  lt_cv_dlopen="shl_load"
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
-$as_echo_n "checking for shl_load in -ldld... " >&6; }
-if ${ac_cv_lib_dld_shl_load+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldld  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char shl_load ();
-int main (void)
-{
-return shl_load ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_dld_shl_load=yes
-else
-  ac_cv_lib_dld_shl_load=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
-$as_echo "$ac_cv_lib_dld_shl_load" >&6; }
-if test "x$ac_cv_lib_dld_shl_load" = xyes; then :
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
-else
-  ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
-if test "x$ac_cv_func_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen"
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int main (void)
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_dl_dlopen=yes
-else
-  ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
-$as_echo_n "checking for dlopen in -lsvld... " >&6; }
-if ${ac_cv_lib_svld_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsvld  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int main (void)
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_svld_dlopen=yes
-else
-  ac_cv_lib_svld_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
-$as_echo "$ac_cv_lib_svld_dlopen" >&6; }
-if test "x$ac_cv_lib_svld_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
-$as_echo_n "checking for dld_link in -ldld... " >&6; }
-if ${ac_cv_lib_dld_dld_link+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldld  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char dld_link ();
-int main (void)
-{
-return dld_link ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_dld_dld_link=yes
-else
-  ac_cv_lib_dld_dld_link=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
-$as_echo "$ac_cv_lib_dld_dld_link" >&6; }
-if test "x$ac_cv_lib_dld_dld_link" = xyes; then :
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-    ;;
-  esac
-
-  if test "x$lt_cv_dlopen" != xno; then
-    enable_dlopen=yes
-  else
-    enable_dlopen=no
-  fi
-
-  case $lt_cv_dlopen in
-  dlopen)
-    save_CPPFLAGS="$CPPFLAGS"
-    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-
-    save_LDFLAGS="$LDFLAGS"
-    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-
-    save_LIBS="$LIBS"
-    LIBS="$lt_cv_dlopen_libs $LIBS"
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
-$as_echo_n "checking whether a program can dlopen itself... " >&6; }
-if ${lt_cv_dlopen_self+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  	  if test "$cross_compiling" = yes; then :
-  lt_cv_dlopen_self=cross
-else
-  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
-  lt_status=$lt_dlunknown
-  cat > conftest.$ac_ext <<_LT_EOF
-#line $LINENO "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-#  define LT_DLGLOBAL		RTLD_GLOBAL
-#else
-#  ifdef DL_GLOBAL
-#    define LT_DLGLOBAL		DL_GLOBAL
-#  else
-#    define LT_DLGLOBAL		0
-#  endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
-   find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-#  ifdef RTLD_LAZY
-#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
-#  else
-#    ifdef DL_LAZY
-#      define LT_DLLAZY_OR_NOW		DL_LAZY
-#    else
-#      ifdef RTLD_NOW
-#        define LT_DLLAZY_OR_NOW	RTLD_NOW
-#      else
-#        ifdef DL_NOW
-#          define LT_DLLAZY_OR_NOW	DL_NOW
-#        else
-#          define LT_DLLAZY_OR_NOW	0
-#        endif
-#      endif
-#    endif
-#  endif
-#endif
-
-/* When -fvisbility=hidden is used, assume the code has been annotated
-   correspondingly for the symbols needed.  */
-#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
-int fnord () __attribute__((visibility("default")));
-#endif
-
-int fnord () { return 42; }
-int main ()
-{
-  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-  int status = $lt_dlunknown;
-
-  if (self)
-    {
-      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
-      else
-        {
-	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
-          else puts (dlerror ());
-	}
-      /* dlclose (self); */
-    }
-  else
-    puts (dlerror ());
-
-  return status;
-}
-_LT_EOF
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
-    (./conftest; exit; ) >&5 2>/dev/null
-    lt_status=$?
-    case x$lt_status in
-      x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
-      x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
-      x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;
-    esac
-  else :
-    # compilation failed
-    lt_cv_dlopen_self=no
-  fi
-fi
-rm -fr conftest*
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
-$as_echo "$lt_cv_dlopen_self" >&6; }
-
-    if test "x$lt_cv_dlopen_self" = xyes; then
-      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
-$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
-if ${lt_cv_dlopen_self_static+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  	  if test "$cross_compiling" = yes; then :
-  lt_cv_dlopen_self_static=cross
-else
-  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
-  lt_status=$lt_dlunknown
-  cat > conftest.$ac_ext <<_LT_EOF
-#line $LINENO "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-#  define LT_DLGLOBAL		RTLD_GLOBAL
-#else
-#  ifdef DL_GLOBAL
-#    define LT_DLGLOBAL		DL_GLOBAL
-#  else
-#    define LT_DLGLOBAL		0
-#  endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
-   find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-#  ifdef RTLD_LAZY
-#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
-#  else
-#    ifdef DL_LAZY
-#      define LT_DLLAZY_OR_NOW		DL_LAZY
-#    else
-#      ifdef RTLD_NOW
-#        define LT_DLLAZY_OR_NOW	RTLD_NOW
-#      else
-#        ifdef DL_NOW
-#          define LT_DLLAZY_OR_NOW	DL_NOW
-#        else
-#          define LT_DLLAZY_OR_NOW	0
-#        endif
-#      endif
-#    endif
-#  endif
-#endif
-
-/* When -fvisbility=hidden is used, assume the code has been annotated
-   correspondingly for the symbols needed.  */
-#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
-int fnord () __attribute__((visibility("default")));
-#endif
-
-int fnord () { return 42; }
-int main ()
-{
-  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-  int status = $lt_dlunknown;
-
-  if (self)
-    {
-      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
-      else
-        {
-	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
-          else puts (dlerror ());
-	}
-      /* dlclose (self); */
-    }
-  else
-    puts (dlerror ());
-
-  return status;
-}
-_LT_EOF
-  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-  (eval $ac_link) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
-    (./conftest; exit; ) >&5 2>/dev/null
-    lt_status=$?
-    case x$lt_status in
-      x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
-      x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
-      x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;
-    esac
-  else :
-    # compilation failed
-    lt_cv_dlopen_self_static=no
-  fi
-fi
-rm -fr conftest*
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
-$as_echo "$lt_cv_dlopen_self_static" >&6; }
-    fi
-
-    CPPFLAGS="$save_CPPFLAGS"
-    LDFLAGS="$save_LDFLAGS"
-    LIBS="$save_LIBS"
-    ;;
-  esac
-
-  case $lt_cv_dlopen_self in
-  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
-  *) enable_dlopen_self=unknown ;;
-  esac
-
-  case $lt_cv_dlopen_self_static in
-  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
-  *) enable_dlopen_self_static=unknown ;;
-  esac
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-striplib=
-old_striplib=
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
-$as_echo_n "checking whether stripping libraries is possible... " >&6; }
-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
-  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
-  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-# FIXME - insert some real tests, host_os isn't really good enough
-  case $host_os in
-  darwin*)
-    if test -n "$STRIP" ; then
-      striplib="$STRIP -x"
-      old_striplib="$STRIP -S"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-    ;;
-  *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ;;
-  esac
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-  # Report which library types will actually be built
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
-$as_echo_n "checking if libtool supports shared libraries... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
-$as_echo "$can_build_shared" >&6; }
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
-$as_echo_n "checking whether to build shared libraries... " >&6; }
-  test "$can_build_shared" = "no" && enable_shared=no
-
-  # On AIX, shared libraries and static libraries use the same namespace, and
-  # are all built from PIC.
-  case $host_os in
-  aix3*)
-    test "$enable_shared" = yes && enable_static=no
-    if test -n "$RANLIB"; then
-      archive_cmds="$archive_cmds~\$RANLIB \$lib"
-      postinstall_cmds='$RANLIB $lib'
-    fi
-    ;;
-
-  aix[4-9]*)
-    if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-      test "$enable_shared" = yes && enable_static=no
-    fi
-    ;;
-  esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
-$as_echo "$enable_shared" >&6; }
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
-$as_echo_n "checking whether to build static libraries... " >&6; }
-  # Make sure either enable_shared or enable_static is yes.
-  test "$enable_shared" = yes || enable_static=yes
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
-$as_echo "$enable_static" >&6; }
-
-
-
-
-fi
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-CC="$lt_save_CC"
-
-
-
-
-
-
-
-
-
-
-
-
-
-        ac_config_commands="$ac_config_commands libtool"
-
-
-
-
-# Only expand once:
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we need -mimpure-text" >&5
-$as_echo_n "checking if we need -mimpure-text... " >&6; }
-mimpure=no
-case $host in
-  *-*-solaris2*)
-    if test "$GCC" = "yes"; then
-      mimpure="yes"
-    fi
-    ;;
-  *)
-    ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $mimpure" >&5
-$as_echo "$mimpure" >&6; }
- if test x$mimpure = xyes; then
-  MIMPURE_TRUE=
-  MIMPURE_FALSE='#'
-else
-  MIMPURE_TRUE='#'
-  MIMPURE_FALSE=
-fi
-
- if false; then
-  STATICLIB_TRUE=
-  STATICLIB_FALSE='#'
-else
-  STATICLIB_TRUE='#'
-  STATICLIB_FALSE=
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if we need BUILDING_LIBCURL" >&5
-$as_echo_n "checking if we need BUILDING_LIBCURL... " >&6; }
-case $host in
-  *-*-mingw*)
-
-$as_echo "#define BUILDING_LIBCURL 1" >>confdefs.h
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we need CURL_STATICLIB" >&5
-$as_echo_n "checking if we need CURL_STATICLIB... " >&6; }
-    if test "X$enable_shared" = "Xno"
-    then
-
-$as_echo "#define CURL_STATICLIB 1" >>confdefs.h
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       if true; then
-  STATICLIB_TRUE=
-  STATICLIB_FALSE='#'
-else
-  STATICLIB_TRUE='#'
-  STATICLIB_FALSE=
-fi
-
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-    ;;
-  *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ;;
-esac
-
-# Determine whether all dependent libraries must be specified when linking
-if test "X$enable_shared" = "Xyes" -a "X$link_all_deplibs" = "Xno"
-then
-    REQUIRE_LIB_DEPS=no
-else
-    REQUIRE_LIB_DEPS=yes
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
-	@echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
-  *@@@%%%=?*=@@@%%%*)
-    eval ac_cv_prog_make_${ac_make}_set=yes;;
-  *)
-    eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  SET_MAKE=
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
-$as_echo_n "checking for inline... " >&6; }
-if ${ac_cv_c_inline+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_c_inline=no
-for ac_kw in inline __inline__ __inline; do
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifndef __cplusplus
-typedef int foo_t;
-static $ac_kw foo_t static_foo () {return 0; }
-$ac_kw foo_t foo () {return 0; }
-#endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_inline=$ac_kw
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  test "$ac_cv_c_inline" != no && break
-done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
-$as_echo "$ac_cv_c_inline" >&6; }
-
-case $ac_cv_c_inline in
-  inline | yes) ;;
-  *)
-    case $ac_cv_c_inline in
-      no) ac_val=;;
-      *) ac_val=$ac_cv_c_inline;;
-    esac
-    cat >>confdefs.h <<_ACEOF
-#ifndef __cplusplus
-#define inline $ac_val
-#endif
-_ACEOF
-    ;;
-esac
-
-
-
-
-  #
-  compiler_id="unknown"
-  compiler_num="0"
-  #
-  flags_dbg_all="unknown"
-  flags_dbg_yes="unknown"
-  flags_dbg_off="unknown"
-  flags_opt_all="unknown"
-  flags_opt_yes="unknown"
-  flags_opt_off="unknown"
-  #
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is DEC/Compaq/HP C" >&5
-$as_echo_n "checking if compiler is DEC/Compaq/HP C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __DECC
-CURL_DEF_TOKEN __DECC
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__DECC"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___DECC=no
-
-  else
-    curl_cv_have_def___DECC=yes
-    curl_cv_def___DECC=$tmp_exp
-
-  fi
-
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __DECC_VER
-CURL_DEF_TOKEN __DECC_VER
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__DECC_VER"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___DECC_VER=no
-
-  else
-    curl_cv_have_def___DECC_VER=yes
-    curl_cv_def___DECC_VER=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___DECC" = "yes" &&
-    test "$curl_cv_have_def___DECC_VER" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="DEC_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g2"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -O4"
-    flags_opt_yes="-O1"
-    flags_opt_off="-O0"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is HP-UX C" >&5
-$as_echo_n "checking if compiler is HP-UX C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __HP_cc
-CURL_DEF_TOKEN __HP_cc
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__HP_cc"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___HP_cc=no
-
-  else
-    curl_cv_have_def___HP_cc=yes
-    curl_cv_def___HP_cc=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___HP_cc" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="HP_UX_C"
-    flags_dbg_all="-g -s"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-s"
-    flags_opt_all="-O +O0 +O1 +O2 +O3 +O4"
-    flags_opt_yes="+O2"
-    flags_opt_off="+O0"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is IBM C" >&5
-$as_echo_n "checking if compiler is IBM C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __IBMC__
-CURL_DEF_TOKEN __IBMC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__IBMC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___IBMC__=no
-
-  else
-    curl_cv_have_def___IBMC__=yes
-    curl_cv_def___IBMC__=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___IBMC__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="IBM_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g"
-    flags_dbg_off=""
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -O4 -O5"
-    flags_opt_all="$flags_opt_all -qnooptimize"
-    flags_opt_all="$flags_opt_all -qoptimize=0"
-    flags_opt_all="$flags_opt_all -qoptimize=1"
-    flags_opt_all="$flags_opt_all -qoptimize=2"
-    flags_opt_all="$flags_opt_all -qoptimize=3"
-    flags_opt_all="$flags_opt_all -qoptimize=4"
-    flags_opt_all="$flags_opt_all -qoptimize=5"
-    flags_opt_yes="-O2"
-    flags_opt_off="-qnooptimize"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is Intel C" >&5
-$as_echo_n "checking if compiler is Intel C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __INTEL_COMPILER
-CURL_DEF_TOKEN __INTEL_COMPILER
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__INTEL_COMPILER"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___INTEL_COMPILER=no
-
-  else
-    curl_cv_have_def___INTEL_COMPILER=yes
-    curl_cv_def___INTEL_COMPILER=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___INTEL_COMPILER" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_num="$curl_cv_def___INTEL_COMPILER"
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __unix__
-CURL_DEF_TOKEN __unix__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = ""; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___unix__=no
-
-  else
-    curl_cv_have_def___unix__=yes
-    curl_cv_def___unix__=$tmp_exp
-
-  fi
-
-    if test "$curl_cv_have_def___unix__" = "yes"; then
-      compiler_id="INTEL_UNIX_C"
-      flags_dbg_all="-g -g0"
-      flags_dbg_yes="-g"
-      flags_dbg_off="-g0"
-      flags_opt_all="-O -O0 -O1 -O2 -O3 -Os"
-      flags_opt_yes="-O2"
-      flags_opt_off="-O0"
-    else
-      compiler_id="INTEL_WINDOWS_C"
-      flags_dbg_all="/ZI /Zi /zI /zi /ZD /Zd /zD /zd /Z7 /z7 /Oy /Oy-"
-      flags_dbg_all="$flags_dbg_all /debug"
-      flags_dbg_all="$flags_dbg_all /debug:none"
-      flags_dbg_all="$flags_dbg_all /debug:minimal"
-      flags_dbg_all="$flags_dbg_all /debug:partial"
-      flags_dbg_all="$flags_dbg_all /debug:full"
-      flags_dbg_all="$flags_dbg_all /debug:semantic_stepping"
-      flags_dbg_all="$flags_dbg_all /debug:extended"
-      flags_dbg_yes="/Zi /Oy-"
-      flags_dbg_off="/debug:none /Oy-"
-      flags_opt_all="/O /O0 /O1 /O2 /O3 /Od /Og /Og- /Oi /Oi-"
-      flags_opt_yes="/O2"
-      flags_opt_off="/Od"
-    fi
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is clang" >&5
-$as_echo_n "checking if compiler is clang... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __clang__
-CURL_DEF_TOKEN __clang__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__clang__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___clang__=no
-
-  else
-    curl_cv_have_def___clang__=yes
-    curl_cv_def___clang__=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___clang__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="CLANG"
-    clangver=`$CC -dumpversion`
-    clangvhi=`echo $clangver | cut -d . -f1`
-    clangvlo=`echo $clangver | cut -d . -f2`
-    compiler_num=`(expr $clangvhi "*" 100 + $clangvlo) 2>/dev/null`
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_all="$flags_dbg_all -ggdb"
-    flags_dbg_all="$flags_dbg_all -gstabs"
-    flags_dbg_all="$flags_dbg_all -gstabs+"
-    flags_dbg_all="$flags_dbg_all -gcoff"
-    flags_dbg_all="$flags_dbg_all -gxcoff"
-    flags_dbg_all="$flags_dbg_all -gdwarf-2"
-    flags_dbg_all="$flags_dbg_all -gvms"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -Os -O3 -O4"
-    flags_opt_yes="-Os"
-    flags_opt_off="-O0"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is GNU C" >&5
-$as_echo_n "checking if compiler is GNU C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __GNUC__
-CURL_DEF_TOKEN __GNUC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__GNUC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___GNUC__=no
-
-  else
-    curl_cv_have_def___GNUC__=yes
-    curl_cv_def___GNUC__=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___GNUC__" = "yes" &&
-    test "$compiler_id" = "unknown"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="GNU_C"
-    gccver=`$CC -dumpversion`
-    gccvhi=`echo $gccver | cut -d . -f1`
-    gccvlo=`echo $gccver | cut -d . -f2`
-    compiler_num=`(expr $gccvhi "*" 100 + $gccvlo) 2>/dev/null`
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_all="$flags_dbg_all -ggdb"
-    flags_dbg_all="$flags_dbg_all -gstabs"
-    flags_dbg_all="$flags_dbg_all -gstabs+"
-    flags_dbg_all="$flags_dbg_all -gcoff"
-    flags_dbg_all="$flags_dbg_all -gxcoff"
-    flags_dbg_all="$flags_dbg_all -gdwarf-2"
-    flags_dbg_all="$flags_dbg_all -gvms"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -Os"
-    flags_opt_yes="-O2"
-    flags_opt_off="-O0"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is LCC" >&5
-$as_echo_n "checking if compiler is LCC... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __LCC__
-CURL_DEF_TOKEN __LCC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__LCC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___LCC__=no
-
-  else
-    curl_cv_have_def___LCC__=yes
-    curl_cv_def___LCC__=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___LCC__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="LCC"
-    flags_dbg_all="-g"
-    flags_dbg_yes="-g"
-    flags_dbg_off=""
-    flags_opt_all=""
-    flags_opt_yes=""
-    flags_opt_off=""
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is SGI MIPSpro C" >&5
-$as_echo_n "checking if compiler is SGI MIPSpro C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __GNUC__
-CURL_DEF_TOKEN __GNUC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__GNUC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___GNUC__=no
-
-  else
-    curl_cv_have_def___GNUC__=yes
-    curl_cv_def___GNUC__=$tmp_exp
-
-  fi
-
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef _COMPILER_VERSION
-CURL_DEF_TOKEN _COMPILER_VERSION
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "_COMPILER_VERSION"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def__COMPILER_VERSION=no
-
-  else
-    curl_cv_have_def__COMPILER_VERSION=yes
-    curl_cv_def__COMPILER_VERSION=$tmp_exp
-
-  fi
-
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef _SGI_COMPILER_VERSION
-CURL_DEF_TOKEN _SGI_COMPILER_VERSION
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "_SGI_COMPILER_VERSION"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def__SGI_COMPILER_VERSION=no
-
-  else
-    curl_cv_have_def__SGI_COMPILER_VERSION=yes
-    curl_cv_def__SGI_COMPILER_VERSION=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___GNUC__" = "no" &&
-    (test "$curl_cv_have_def__SGI_COMPILER_VERSION" = "yes" ||
-     test "$curl_cv_have_def__COMPILER_VERSION" = "yes"); then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="SGI_MIPSPRO_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -Ofast"
-    flags_opt_yes="-O2"
-    flags_opt_off="-O0"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is SGI MIPS C" >&5
-$as_echo_n "checking if compiler is SGI MIPS C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __GNUC__
-CURL_DEF_TOKEN __GNUC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__GNUC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___GNUC__=no
-
-  else
-    curl_cv_have_def___GNUC__=yes
-    curl_cv_def___GNUC__=$tmp_exp
-
-  fi
-
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __sgi
-CURL_DEF_TOKEN __sgi
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__sgi"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___sgi=no
-
-  else
-    curl_cv_have_def___sgi=yes
-    curl_cv_def___sgi=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___GNUC__" = "no" &&
-    test "$curl_cv_have_def___sgi" = "yes" &&
-    test "$compiler_id" = "unknown"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="SGI_MIPS_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -Ofast"
-    flags_opt_yes="-O2"
-    flags_opt_off="-O0"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is SunPro C" >&5
-$as_echo_n "checking if compiler is SunPro C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __SUNPRO_C
-CURL_DEF_TOKEN __SUNPRO_C
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__SUNPRO_C"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___SUNPRO_C=no
-
-  else
-    curl_cv_have_def___SUNPRO_C=yes
-    curl_cv_def___SUNPRO_C=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___SUNPRO_C" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="SUNPRO_C"
-    flags_dbg_all="-g -s"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-s"
-    flags_opt_all="-O -xO -xO1 -xO2 -xO3 -xO4 -xO5"
-    flags_opt_yes="-xO2"
-    flags_opt_off=""
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is Tiny C" >&5
-$as_echo_n "checking if compiler is Tiny C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __TINYC__
-CURL_DEF_TOKEN __TINYC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__TINYC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___TINYC__=no
-
-  else
-    curl_cv_have_def___TINYC__=yes
-    curl_cv_def___TINYC__=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___TINYC__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    compiler_id="TINY_C"
-    flags_dbg_all="-g -b"
-    flags_dbg_yes="-g"
-    flags_dbg_off=""
-    flags_opt_all=""
-    flags_opt_yes=""
-    flags_opt_off=""
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is Watcom C" >&5
-$as_echo_n "checking if compiler is Watcom C... " >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __WATCOMC__
-CURL_DEF_TOKEN __WATCOMC__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__WATCOMC__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___WATCOMC__=no
-
-  else
-    curl_cv_have_def___WATCOMC__=yes
-    curl_cv_def___WATCOMC__=$tmp_exp
-
-  fi
-
-  if test "$curl_cv_have_def___WATCOMC__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-      if test -z "$SED"; then
-    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
-  fi
-  if test -z "$GREP"; then
-    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
-  fi
-
-  tmp_exp=""
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __UNIX__
-CURL_DEF_TOKEN __UNIX__
-#endif
-
-
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[ ]//' 2>/dev/null | \
-      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "__UNIX__"; then
-      tmp_exp=""
-    fi
-
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-  if test -z "$tmp_exp"; then
-    curl_cv_have_def___UNIX__=no
-
-  else
-    curl_cv_have_def___UNIX__=yes
-    curl_cv_def___UNIX__=$tmp_exp
-
-  fi
-
-    if test "$curl_cv_have_def___UNIX__" = "yes"; then
-      compiler_id="WATCOM_UNIX_C"
-      flags_dbg_all="-g1 -g1+ -g2 -g3"
-      flags_dbg_yes="-g2"
-      flags_dbg_off=""
-      flags_opt_all="-O0 -O1 -O2 -O3"
-      flags_opt_yes="-O2"
-      flags_opt_off="-O0"
-    else
-      compiler_id="WATCOM_WINDOWS_C"
-      flags_dbg_all=""
-      flags_dbg_yes=""
-      flags_dbg_off=""
-      flags_opt_all=""
-      flags_opt_yes=""
-      flags_opt_off=""
-    fi
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-  #
-  if test "$compiler_id" = "unknown"; then
-  cat <<_EOF 1>&2
-***
-*** Warning: This configure script does not have information about the
-*** compiler you are using, relative to the flags required to enable or
-*** disable generation of debug info, optimization options or warnings.
-***
-*** Whatever settings are present in CFLAGS will be used for this run.
-***
-*** If you wish to help the cURL project to better support your compiler
-*** you can report this and the required info on the libcurl development
-*** mailing list: http://cool.haxx.se/mailman/listinfo/curl-library/
-***
-_EOF
-  fi
-
-
-squeeze() {
-  _sqz_result=""
-  eval _sqz_input=\$$1
-  for _sqz_token in $_sqz_input; do
-    if test -z "$_sqz_result"; then
-      _sqz_result="$_sqz_token"
-    else
-      _sqz_result="$_sqz_result $_sqz_token"
-    fi
-  done
-  eval $1=\$_sqz_result
-  return 0
-}
-
-
-      #
-  if test "$compiler_id" != "unknown"; then
-    #
-    if test "$compiler_id" = "GNU_C" ||
-      test "$compiler_id" = "CLANG"; then
-
-    tmp_has_include="no"
-  tmp_chg_FLAGS="$CFLAGS"
-  for word1 in $tmp_chg_FLAGS; do
-    case "$word1" in
-      -I*)
-        tmp_has_include="yes"
-        ;;
-    esac
-  done
-  if test "$tmp_has_include" = "yes"; then
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/^-I/ -isystem /g'`
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/ -I/ -isystem /g'`
-    CFLAGS="$tmp_chg_FLAGS"
-    squeeze CFLAGS
-  fi
-  tmp_has_include="no"
-  tmp_chg_FLAGS="$CPPFLAGS"
-  for word1 in $tmp_chg_FLAGS; do
-    case "$word1" in
-      -I*)
-        tmp_has_include="yes"
-        ;;
-    esac
-  done
-  if test "$tmp_has_include" = "yes"; then
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/^-I/ -isystem /g'`
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/ -I/ -isystem /g'`
-    CPPFLAGS="$tmp_chg_FLAGS"
-    squeeze CPPFLAGS
-  fi
-
-    fi
-    #
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS=""
-    tmp_CFLAGS=""
-    #
-    case "$compiler_id" in
-        #
-      CLANG)
-        #
-                                tmp_CFLAGS="$tmp_CFLAGS -Qunused-arguments"
-        ;;
-        #
-      DEC_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS -std1"
-                tmp_CFLAGS="$tmp_CFLAGS -noansi_alias"
-                tmp_CFLAGS="$tmp_CFLAGS -warnprotos"
-                tmp_CFLAGS="$tmp_CFLAGS -msg_fatal toofewargs,toomanyargs"
-        ;;
-        #
-      GNU_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      HP_UX_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS -z"
-                                tmp_CFLAGS="$tmp_CFLAGS +W 4227,4255"
-        ;;
-        #
-      IBM_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS -qthreaded"
-                                        tmp_CFLAGS="$tmp_CFLAGS -qnoansialias"
-                        tmp_CFLAGS="$tmp_CFLAGS -qhalt=e"
-        ;;
-        #
-      INTEL_UNIX_C)
-        #
-                        tmp_CFLAGS="$tmp_CFLAGS -std=gnu89"
-                                                tmp_CPPFLAGS="$tmp_CPPFLAGS -we 140,147,165,266"
-                                        tmp_CPPFLAGS="$tmp_CPPFLAGS -wd 279,981,1469"
-        ;;
-        #
-      INTEL_WINDOWS_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      LCC)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS -n"
-        ;;
-        #
-      SGI_MIPS_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      SGI_MIPSPRO_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      SUNPRO_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      TINY_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      WATCOM_UNIX_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      WATCOM_WINDOWS_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-    esac
-    #
-    squeeze tmp_CPPFLAGS
-    squeeze tmp_CFLAGS
-    #
-    if test ! -z "$tmp_CFLAGS" || test ! -z "$tmp_CPPFLAGS"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts some basic options" >&5
-$as_echo_n "checking if compiler accepts some basic options... " >&6; }
-      CPPFLAGS="$tmp_save_CPPFLAGS $tmp_CPPFLAGS"
-      CFLAGS="$tmp_save_CFLAGS $tmp_CFLAGS"
-      squeeze CPPFLAGS
-      squeeze CFLAGS
-
-    tmp_compiler_works="unknown"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      int i = 1;
-      return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tmp_compiler_works="yes"
-
-else
-
-    tmp_compiler_works="no"
-    echo " " >&6
-    sed 's/^/cc-fail: /' conftest.err >&6
-    echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test "$tmp_compiler_works" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-        int i = 1;
-        return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      sed 's/^/link-fail: /' conftest.err >&6
-      echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tmp_compiler_works" = "yes"; then
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#       ifdef __STDC__
-#         include <stdlib.h>
-#       endif
-
-int main (void)
-{
-
-        int i = 0;
-        exit(i);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      echo "run-fail: test program exited with status $ac_status" >&6
-      echo " " >&6
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-    if test "$tmp_compiler_works" = "yes"; then
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
-$as_echo "$as_me: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&6;}
-
-  else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
-$as_echo "$as_me: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&2;}
-                CPPFLAGS="$tmp_save_CPPFLAGS"
-        CFLAGS="$tmp_save_CFLAGS"
-
-  fi
-
-    fi
-    #
-  fi
-
-
-        #
-  if test "$compiler_id" != "unknown"; then
-    #
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    #
-    tmp_options=""
-    tmp_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS="$CPPFLAGS"
-
-    ac_var_stripped=""
-  for word1 in $tmp_CFLAGS; do
-    ac_var_strip_word="no"
-    for word2 in $flags_dbg_all; do
-      if test "$word1" = "$word2"; then
-        ac_var_strip_word="yes"
-      fi
-    done
-    if test "$ac_var_strip_word" = "no"; then
-      ac_var_stripped="$ac_var_stripped $word1"
-    fi
-  done
-    tmp_CFLAGS="$ac_var_stripped"
-  squeeze tmp_CFLAGS
-
-
-    ac_var_stripped=""
-  for word1 in $tmp_CPPFLAGS; do
-    ac_var_strip_word="no"
-    for word2 in $flags_dbg_all; do
-      if test "$word1" = "$word2"; then
-        ac_var_strip_word="yes"
-      fi
-    done
-    if test "$ac_var_strip_word" = "no"; then
-      ac_var_stripped="$ac_var_stripped $word1"
-    fi
-  done
-    tmp_CPPFLAGS="$ac_var_stripped"
-  squeeze tmp_CPPFLAGS
-
-    #
-    if test "$want_debug" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts debug enabling options" >&5
-$as_echo_n "checking if compiler accepts debug enabling options... " >&6; }
-      tmp_options="$flags_dbg_yes"
-    fi
-    if test "$want_debug" = "no"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts debug disabling options" >&5
-$as_echo_n "checking if compiler accepts debug disabling options... " >&6; }
-      tmp_options="$flags_dbg_off"
-    fi
-    #
-    CPPFLAGS="$tmp_CPPFLAGS"
-    CFLAGS="$tmp_CFLAGS $tmp_options"
-    squeeze CPPFLAGS
-    squeeze CFLAGS
-
-    tmp_compiler_works="unknown"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      int i = 1;
-      return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tmp_compiler_works="yes"
-
-else
-
-    tmp_compiler_works="no"
-    echo " " >&6
-    sed 's/^/cc-fail: /' conftest.err >&6
-    echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test "$tmp_compiler_works" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-        int i = 1;
-        return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      sed 's/^/link-fail: /' conftest.err >&6
-      echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tmp_compiler_works" = "yes"; then
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#       ifdef __STDC__
-#         include <stdlib.h>
-#       endif
-
-int main (void)
-{
-
-        int i = 0;
-        exit(i);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      echo "run-fail: test program exited with status $ac_status" >&6
-      echo " " >&6
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-    if test "$tmp_compiler_works" = "yes"; then
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      { $as_echo "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_options" >&5
-$as_echo "$as_me: compiler options added: $tmp_options" >&6;}
-
-  else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_options" >&5
-$as_echo "$as_me: WARNING: compiler options rejected: $tmp_options" >&2;}
-            CPPFLAGS="$tmp_save_CPPFLAGS"
-      CFLAGS="$tmp_save_CFLAGS"
-
-  fi
-
-    #
-  fi
-
-
-        #
-  if test "$compiler_id" != "unknown"; then
-    #
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    #
-    tmp_options=""
-    tmp_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS="$CPPFLAGS"
-    honor_optimize_option="yes"
-    #
-                        #
-    if test "$want_optimize" = "assume_no" ||
-       test "$want_optimize" = "assume_yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler optimizer assumed setting might be used" >&5
-$as_echo_n "checking if compiler optimizer assumed setting might be used... " >&6; }
-
-
-  ac_var_match_word="no"
-  for word1 in $tmp_CFLAGS; do
-    for word2 in $flags_opt_all; do
-      if test "$word1" = "$word2"; then
-        ac_var_match_word="yes"
-      fi
-    done
-  done
-
-  if test "$ac_var_match_word" = "yes"; then
-
-        honor_optimize_option="no"
-
-
-  fi
-
-
-
-  ac_var_match_word="no"
-  for word1 in $tmp_CPPFLAGS; do
-    for word2 in $flags_opt_all; do
-      if test "$word1" = "$word2"; then
-        ac_var_match_word="yes"
-      fi
-    done
-  done
-
-  if test "$ac_var_match_word" = "yes"; then
-
-        honor_optimize_option="no"
-
-
-  fi
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $honor_optimize_option" >&5
-$as_echo "$honor_optimize_option" >&6; }
-      if test "$honor_optimize_option" = "yes"; then
-        if test "$want_optimize" = "assume_yes"; then
-          want_optimize="yes"
-        fi
-        if test "$want_optimize" = "assume_no"; then
-          want_optimize="no"
-        fi
-      fi
-    fi
-    #
-    if test "$honor_optimize_option" = "yes"; then
-
-    ac_var_stripped=""
-  for word1 in $tmp_CFLAGS; do
-    ac_var_strip_word="no"
-    for word2 in $flags_opt_all; do
-      if test "$word1" = "$word2"; then
-        ac_var_strip_word="yes"
-      fi
-    done
-    if test "$ac_var_strip_word" = "no"; then
-      ac_var_stripped="$ac_var_stripped $word1"
-    fi
-  done
-    tmp_CFLAGS="$ac_var_stripped"
-  squeeze tmp_CFLAGS
-
-
-    ac_var_stripped=""
-  for word1 in $tmp_CPPFLAGS; do
-    ac_var_strip_word="no"
-    for word2 in $flags_opt_all; do
-      if test "$word1" = "$word2"; then
-        ac_var_strip_word="yes"
-      fi
-    done
-    if test "$ac_var_strip_word" = "no"; then
-      ac_var_stripped="$ac_var_stripped $word1"
-    fi
-  done
-    tmp_CPPFLAGS="$ac_var_stripped"
-  squeeze tmp_CPPFLAGS
-
-      if test "$want_optimize" = "yes"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts optimizer enabling options" >&5
-$as_echo_n "checking if compiler accepts optimizer enabling options... " >&6; }
-        tmp_options="$flags_opt_yes"
-      fi
-      if test "$want_optimize" = "no"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts optimizer disabling options" >&5
-$as_echo_n "checking if compiler accepts optimizer disabling options... " >&6; }
-        tmp_options="$flags_opt_off"
-      fi
-      CPPFLAGS="$tmp_CPPFLAGS"
-      CFLAGS="$tmp_CFLAGS $tmp_options"
-      squeeze CPPFLAGS
-      squeeze CFLAGS
-
-    tmp_compiler_works="unknown"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      int i = 1;
-      return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tmp_compiler_works="yes"
-
-else
-
-    tmp_compiler_works="no"
-    echo " " >&6
-    sed 's/^/cc-fail: /' conftest.err >&6
-    echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test "$tmp_compiler_works" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-        int i = 1;
-        return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      sed 's/^/link-fail: /' conftest.err >&6
-      echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tmp_compiler_works" = "yes"; then
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#       ifdef __STDC__
-#         include <stdlib.h>
-#       endif
-
-int main (void)
-{
-
-        int i = 0;
-        exit(i);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      echo "run-fail: test program exited with status $ac_status" >&6
-      echo " " >&6
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-    if test "$tmp_compiler_works" = "yes"; then
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_options" >&5
-$as_echo "$as_me: compiler options added: $tmp_options" >&6;}
-
-  else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_options" >&5
-$as_echo "$as_me: WARNING: compiler options rejected: $tmp_options" >&2;}
-                CPPFLAGS="$tmp_save_CPPFLAGS"
-        CFLAGS="$tmp_save_CFLAGS"
-
-  fi
-
-    fi
-    #
-  fi
-
-
-        #
-  if test "$compiler_id" != "unknown"; then
-    #
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS=""
-    tmp_CFLAGS=""
-    #
-    case "$compiler_id" in
-        #
-      CLANG)
-        #
-        if test "$want_warnings" = "yes"; then
-                              tmp_CFLAGS="$tmp_CFLAGS -pedantic"
-          tmp_CFLAGS="$tmp_CFLAGS -Wall -Wextra"
-          tmp_CFLAGS="$tmp_CFLAGS -Wpointer-arith -Wwrite-strings"
-          tmp_CFLAGS="$tmp_CFLAGS -Wshadow"
-          tmp_CFLAGS="$tmp_CFLAGS -Winline -Wnested-externs"
-          tmp_CFLAGS="$tmp_CFLAGS -Wmissing-declarations"
-          tmp_CFLAGS="$tmp_CFLAGS -Wmissing-prototypes"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-long-long"
-          tmp_CFLAGS="$tmp_CFLAGS -Wfloat-equal"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-multichar -Wsign-compare"
-          tmp_CFLAGS="$tmp_CFLAGS -Wundef"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-format-nonliteral"
-          tmp_CFLAGS="$tmp_CFLAGS -Wendif-labels -Wstrict-prototypes"
-          tmp_CFLAGS="$tmp_CFLAGS -Wdeclaration-after-statement"
-          tmp_CFLAGS="$tmp_CFLAGS -Wcast-align"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-system-headers"
-          tmp_CFLAGS="$tmp_CFLAGS -Wshorten-64-to-32"
-          #
-                    if test "$compiler_num" -ge "101"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wunused"
-          fi
-        fi
-        ;;
-        #
-      DEC_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -msg_enable level3"
-        fi
-        ;;
-        #
-      GNU_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          #
-                              if test "x$cross_compiling" != "xyes" ||
-            test "$compiler_num" -ge "300"; then
-            tmp_CFLAGS="$tmp_CFLAGS -pedantic"
-          fi
-          #
-                    tmp_CFLAGS="$tmp_CFLAGS -Wall -W"
-          #
-                    if test "$compiler_num" -ge "104"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wpointer-arith -Wwrite-strings"
-                        if test "x$cross_compiling" != "xyes" ||
-              test "$compiler_num" -ge "300"; then
-              tmp_CFLAGS="$tmp_CFLAGS -Wunused -Wshadow"
-            fi
-          fi
-          #
-                    if test "$compiler_num" -ge "207"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Winline -Wnested-externs"
-                        if test "x$cross_compiling" != "xyes" ||
-              test "$compiler_num" -ge "300"; then
-              tmp_CFLAGS="$tmp_CFLAGS -Wmissing-declarations"
-              tmp_CFLAGS="$tmp_CFLAGS -Wmissing-prototypes"
-            fi
-          fi
-          #
-                    if test "$compiler_num" -ge "295"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wno-long-long"
-          fi
-          #
-                    if test "$compiler_num" -ge "296"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wfloat-equal"
-            tmp_CFLAGS="$tmp_CFLAGS -Wno-multichar -Wsign-compare"
-                                                tmp_CFLAGS="$tmp_CFLAGS -Wundef"
-          fi
-          #
-                    if test "$compiler_num" -ge "297"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wno-format-nonliteral"
-          fi
-          #
-                    if test "$compiler_num" -ge "300"; then
-                                                            tmp_CFLAGS="$tmp_CFLAGS"
-          fi
-          #
-                    if test "$compiler_num" -ge "303"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wendif-labels -Wstrict-prototypes"
-          fi
-          #
-                    if test "$compiler_num" -ge "304"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wdeclaration-after-statement"
-          fi
-          #
-                    if test "$compiler_num" -ge "402"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wcast-align"
-          fi
-                    if test "$compiler_num" -ge "403"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wtype-limits -Wold-style-declaration"
-            tmp_CFLAGS="$tmp_CFLAGS -Wmissing-parameter-type -Wempty-body"
-            tmp_CFLAGS="$tmp_CFLAGS -Wclobbered -Wignored-qualifiers"
-            tmp_CFLAGS="$tmp_CFLAGS -Wconversion -Wno-sign-conversion -Wvla"
-          fi
-          #
-        fi
-        #
-                if test "$compiler_num" -ge "300"; then
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-system-headers"
-        else
-                              if test "x$cross_compiling" = "xyes"; then
-            if test "$compiler_num" -ge "104"; then
-                            tmp_CFLAGS="$tmp_CFLAGS -Wno-unused -Wno-shadow"
-            fi
-            if test "$compiler_num" -ge "207"; then
-                            tmp_CFLAGS="$tmp_CFLAGS -Wno-missing-declarations"
-              tmp_CFLAGS="$tmp_CFLAGS -Wno-missing-prototypes"
-            fi
-          fi
-        fi
-        ;;
-        #
-      HP_UX_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS +w1"
-        fi
-        ;;
-        #
-      IBM_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      INTEL_UNIX_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          if test "$compiler_num" -gt "600"; then
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wall -w2"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wcheck"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wcomment"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wdeprecated"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wmissing-prototypes"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wp64"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wpointer-arith"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wreturn-type"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wshadow"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wuninitialized"
-                        tmp_CPPFLAGS="$tmp_CPPFLAGS -Wunused-function"
-          fi
-        fi
-                tmp_CFLAGS="$tmp_CFLAGS -fno-omit-frame-pointer"
-                tmp_CFLAGS="$tmp_CFLAGS -fno-strict-aliasing"
-                tmp_CFLAGS="$tmp_CFLAGS -fp-model precise"
-                if test "$compiler_num" -ge "1000"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -vec-report0"
-        fi
-        ;;
-        #
-      INTEL_WINDOWS_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      LCC)
-        #
-        if test "$want_warnings" = "yes"; then
-                                                  tmp_CFLAGS="$tmp_CFLAGS"
-        fi
-        ;;
-        #
-      SGI_MIPS_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -fullwarn"
-        fi
-        ;;
-        #
-      SGI_MIPSPRO_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -fullwarn"
-                              tmp_CFLAGS="$tmp_CFLAGS -woff 1209"
-        fi
-        ;;
-        #
-      SUNPRO_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -v"
-        fi
-        ;;
-        #
-      TINY_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -Wall"
-                    tmp_CFLAGS="$tmp_CFLAGS -Wwrite-strings"
-                    tmp_CFLAGS="$tmp_CFLAGS -Wunsupported"
-        fi
-        ;;
-        #
-      WATCOM_UNIX_C)
-        #
-        if test "$want_warnings" = "yes"; then
-                    tmp_CFLAGS="$tmp_CFLAGS -Wall -Wextra"
-        fi
-        ;;
-        #
-      WATCOM_WINDOWS_C)
-        #
-                tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-    esac
-    #
-    squeeze tmp_CPPFLAGS
-    squeeze tmp_CFLAGS
-    #
-    if test ! -z "$tmp_CFLAGS" || test ! -z "$tmp_CPPFLAGS"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts strict warning options" >&5
-$as_echo_n "checking if compiler accepts strict warning options... " >&6; }
-      CPPFLAGS="$tmp_save_CPPFLAGS $tmp_CPPFLAGS"
-      CFLAGS="$tmp_save_CFLAGS $tmp_CFLAGS"
-      squeeze CPPFLAGS
-      squeeze CFLAGS
-
-    tmp_compiler_works="unknown"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      int i = 1;
-      return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tmp_compiler_works="yes"
-
-else
-
-    tmp_compiler_works="no"
-    echo " " >&6
-    sed 's/^/cc-fail: /' conftest.err >&6
-    echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test "$tmp_compiler_works" = "yes"; then
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-        int i = 1;
-        return i;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      sed 's/^/link-fail: /' conftest.err >&6
-      echo " " >&6
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tmp_compiler_works" = "yes"; then
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#       ifdef __STDC__
-#         include <stdlib.h>
-#       endif
-
-int main (void)
-{
-
-        int i = 0;
-        exit(i);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      tmp_compiler_works="yes"
-
-else
-
-      tmp_compiler_works="no"
-      echo " " >&6
-      echo "run-fail: test program exited with status $ac_status" >&6
-      echo " " >&6
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-    if test "$tmp_compiler_works" = "yes"; then
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
-$as_echo "$as_me: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&6;}
-
-  else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
-$as_echo "$as_me: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&2;}
-                CPPFLAGS="$tmp_save_CPPFLAGS"
-        CFLAGS="$tmp_save_CFLAGS"
-
-  fi
-
-    fi
-    #
-  fi
-
-
-if test "$compiler_id" = "INTEL_UNIX_C"; then
-  #
-  if test "$compiler_num" -ge "1000"; then
-        CFLAGS="$CFLAGS -shared-intel"
-  elif test "$compiler_num" -ge "900"; then
-        CFLAGS="$CFLAGS -i-dynamic"
-  fi
-  #
-fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler halts on compilation errors" >&5
-$as_echo_n "checking if compiler halts on compilation errors... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      force compilation error
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    as_fn_error $? "compiler does not halt on compilation errors." "$LINENO" 5
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler halts on negative sized arrays" >&5
-$as_echo_n "checking if compiler halts on negative sized arrays... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      typedef char bad_t[sizeof(char) == sizeof(int) ? -1 : -1 ];
-
-int main (void)
-{
-
-      bad_t dummy;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    as_fn_error $? "compiler does not halt on negative sized arrays." "$LINENO" 5
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if shared libraries need -no-undefined" >&5
-$as_echo_n "checking if shared libraries need -no-undefined... " >&6; }
-  need_no_undefined="no"
-  case $host in
-    *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc* | *-*-aix*)
-      need_no_undefined="yes"
-      ;;
-  esac
-  if test "x$allow_undefined" = "xno"; then
-    need_no_undefined="yes"
-  elif test "x$allow_undefined_flag" = "xunsupported"; then
-    need_no_undefined="yes"
-  fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $need_no_undefined" >&5
-$as_echo "$need_no_undefined" >&6; }
-
- if test x$need_no_undefined = xyes; then
-  NO_UNDEFINED_TRUE=
-  NO_UNDEFINED_FALSE='#'
-else
-  NO_UNDEFINED_TRUE='#'
-  NO_UNDEFINED_FALSE=
-fi
-
-
-
-    supports_curldebug="unknown"
-  if test "$want_curldebug" = "yes"; then
-    if test "x$enable_shared" != "xno" &&
-      test "x$enable_shared" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unknown enable_shared setting." >&5
-$as_echo "$as_me: WARNING: unknown enable_shared setting." >&2;}
-      supports_curldebug="no"
-    fi
-    if test "x$enable_static" != "xno" &&
-      test "x$enable_static" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unknown enable_static setting." >&5
-$as_echo "$as_me: WARNING: unknown enable_static setting." >&2;}
-      supports_curldebug="no"
-    fi
-    if test "$supports_curldebug" != "no"; then
-      if test "$enable_shared" = "yes" &&
-        test "$need_no_undefined" = "yes"; then
-        supports_curldebug="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: shared library does not support undefined symbols." >&5
-$as_echo "$as_me: WARNING: shared library does not support undefined symbols." >&2;}
-      fi
-    fi
-  fi
-  #
-  if test "$want_curldebug" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if curl debug memory tracking can be enabled" >&5
-$as_echo_n "checking if curl debug memory tracking can be enabled... " >&6; }
-    test "$supports_curldebug" = "no" || supports_curldebug="yes"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $supports_curldebug" >&5
-$as_echo "$supports_curldebug" >&6; }
-    if test "$supports_curldebug" = "no"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot enable curl debug memory tracking." >&5
-$as_echo "$as_me: WARNING: cannot enable curl debug memory tracking." >&2;}
-      want_curldebug="no"
-    fi
-  fi
-  #
-  if test "$want_curldebug" = "yes"; then
-    CPPFLAGS="$CPPFLAGS -DCURLDEBUG"
-    squeeze CPPFLAGS
-  fi
-  if test "$want_debug" = "yes"; then
-    CPPFLAGS="$CPPFLAGS -DDEBUGBUILD"
-    squeeze CPPFLAGS
-  fi
-
- if test x$want_curldebug = xyes; then
-  CURLDEBUG_TRUE=
-  CURLDEBUG_FALSE='#'
-else
-  CURLDEBUG_TRUE='#'
-  CURLDEBUG_FALSE=
-fi
-
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for windows.h" >&5
-$as_echo_n "checking for windows.h... " >&6; }
-if ${ac_cv_header_windows_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINDOWS_H shall not be defined.
-#else
-        int dummy=2*WINVER;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_windows_h="yes"
-
-else
-
-      ac_cv_header_windows_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_windows_h" >&5
-$as_echo "$ac_cv_header_windows_h" >&6; }
-  case "$ac_cv_header_windows_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINDOWS_H 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define WIN32_LEAN_AND_MEAN 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build target is a native Windows one" >&5
-$as_echo_n "checking whether build target is a native Windows one... " >&6; }
-if ${ac_cv_native_windows+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    if test "$ac_cv_header_windows_h" = "no"; then
-      ac_cv_native_windows="no"
-    else
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-#if defined(__MINGW32__) || defined(__MINGW32CE__) || \
-   (defined(_MSC_VER) && (defined(_WIN32) || defined(_WIN64)))
-          int dummy=1;
-#else
-          Not a native Windows build target.
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        ac_cv_native_windows="yes"
-
-else
-
-        ac_cv_native_windows="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_native_windows" >&5
-$as_echo "$ac_cv_native_windows" >&6; }
-  case "$ac_cv_native_windows" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define NATIVE_WINDOWS 1
-_ACEOF
-
-      ;;
-  esac
-
-case X-"$ac_cv_native_windows" in
-  X-yes)
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock.h" >&5
-$as_echo_n "checking for winsock.h... " >&6; }
-if ${ac_cv_header_winsock_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINSOCK_H shall not be defined.
-#else
-        int dummy=WSACleanup();
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_winsock_h="yes"
-
-else
-
-      ac_cv_header_winsock_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_winsock_h" >&5
-$as_echo "$ac_cv_header_winsock_h" >&6; }
-  case "$ac_cv_header_winsock_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock2.h" >&5
-$as_echo_n "checking for winsock2.h... " >&6; }
-if ${ac_cv_header_winsock2_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WINSOCK2_H shall not be defined.
-#else
-        int dummy=2*IPPROTO_ESP;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_winsock2_h="yes"
-
-else
-
-      ac_cv_header_winsock2_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_winsock2_h" >&5
-$as_echo "$ac_cv_header_winsock2_h" >&6; }
-  case "$ac_cv_header_winsock2_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK2_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ws2tcpip.h" >&5
-$as_echo_n "checking for ws2tcpip.h... " >&6; }
-if ${ac_cv_header_ws2tcpip_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-#include <ws2tcpip.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WS2TCPIP_H shall not be defined.
-#else
-        int dummy=2*IP_PKTINFO;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_ws2tcpip_h="yes"
-
-else
-
-      ac_cv_header_ws2tcpip_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_ws2tcpip_h" >&5
-$as_echo "$ac_cv_header_ws2tcpip_h" >&6; }
-  case "$ac_cv_header_ws2tcpip_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WS2TCPIP_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winldap.h" >&5
-$as_echo_n "checking for winldap.h... " >&6; }
-if ${ac_cv_header_winldap_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#endif
-#include <winldap.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINLDAP_H shall not be defined.
-#else
-        LDAP *ldp = ldap_init("dummy", LDAP_PORT);
-        ULONG res = ldap_unbind(ldp);
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_winldap_h="yes"
-
-else
-
-      ac_cv_header_winldap_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_winldap_h" >&5
-$as_echo "$ac_cv_header_winldap_h" >&6; }
-  case "$ac_cv_header_winldap_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINLDAP_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winber.h" >&5
-$as_echo_n "checking for winber.h... " >&6; }
-if ${ac_cv_header_winber_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#endif
-#include <winldap.h>
-#include <winber.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINBER_H shall not be defined.
-#else
-        BERVAL *bvp = NULL;
-        BerElement *bep = ber_init(bvp);
-        ber_free(bep, 1);
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_winber_h="yes"
-
-else
-
-      ac_cv_header_winber_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_winber_h" >&5
-$as_echo "$ac_cv_header_winber_h" >&6; }
-  case "$ac_cv_header_winber_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINBER_H 1
-_ACEOF
-
-      ;;
-  esac
-
-    ;;
-  *)
-    ac_cv_header_winsock_h="no"
-    ac_cv_header_winsock2_h="no"
-    ac_cv_header_ws2tcpip_h="no"
-    ac_cv_header_winldap_h="no"
-    ac_cv_header_winber_h="no"
-    ;;
-esac
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build target supports WIN32 file API" >&5
-$as_echo_n "checking whether build target supports WIN32 file API... " >&6; }
-  curl_win32_file_api="no"
-  if test "$ac_cv_header_windows_h" = "yes"; then
-    if test x"$enable_largefile" != "xno"; then
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-#if !defined(_WIN32_WCE) && \
-    (defined(__MINGW32__) || \
-    (defined(_MSC_VER) && (defined(_WIN32) || defined(_WIN64))))
-          int dummy=1;
-#else
-          WIN32 large file API not supported.
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        curl_win32_file_api="win32_large_files"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test "$curl_win32_file_api" = "no"; then
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-#if defined(_WIN32_WCE) || defined(__MINGW32__) || defined(_MSC_VER)
-          int dummy=1;
-#else
-          WIN32 small file API not supported.
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        curl_win32_file_api="win32_small_files"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-  fi
-  case "$curl_win32_file_api" in
-    win32_large_files)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (large file enabled)" >&5
-$as_echo "yes (large file enabled)" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define USE_WIN32_LARGE_FILES 1
-_ACEOF
-
-      ;;
-    win32_small_files)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (large file disabled)" >&5
-$as_echo "yes (large file disabled)" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define USE_WIN32_LARGE_FILES 1
-_ACEOF
-
-      ;;
-    *)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      ;;
-  esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support http" >&5
-$as_echo_n "checking whether to support http... " >&6; }
-# Check whether --enable-http was given.
-if test "${enable_http+set}" = set; then :
-  enableval=$enable_http;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_HTTP 1" >>confdefs.h
-
-       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: disable HTTP disables FTP over proxy and RTSP" >&5
-$as_echo "$as_me: WARNING: disable HTTP disables FTP over proxy and RTSP" >&2;}
-       CURL_DISABLE_HTTP=1
-
-
-$as_echo "#define CURL_DISABLE_RTSP 1" >>confdefs.h
-
-       CURL_DISABLE_RTSP=1
-
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support ftp" >&5
-$as_echo_n "checking whether to support ftp... " >&6; }
-# Check whether --enable-ftp was given.
-if test "${enable_ftp+set}" = set; then :
-  enableval=$enable_ftp;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_FTP 1" >>confdefs.h
-
-       CURL_DISABLE_FTP=1
-
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support file" >&5
-$as_echo_n "checking whether to support file... " >&6; }
-# Check whether --enable-file was given.
-if test "${enable_file+set}" = set; then :
-  enableval=$enable_file;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_FILE 1" >>confdefs.h
-
-       CURL_DISABLE_FILE=1
-
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support ldap" >&5
-$as_echo_n "checking whether to support ldap... " >&6; }
-# Check whether --enable-ldap was given.
-if test "${enable_ldap+set}" = set; then :
-  enableval=$enable_ldap;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_LDAP 1" >>confdefs.h
-
-       CURL_DISABLE_LDAP=1
-
-       ;;
-  *)
-       case $host in
-         *-*-cygwin*)
-           # Force no ldap. config/build process is broken for cygwin
-
-$as_echo "#define CURL_DISABLE_LDAP 1" >>confdefs.h
-
-           CURL_DISABLE_LDAP=1
-
-           { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-           ;;
-         *)
-           { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       esac
-       ;;
-  esac
-else
-
-       case $host in
-         *-*-cygwin*)
-           # Force no ldap. config/build process is broken for cygwin
-
-$as_echo "#define CURL_DISABLE_LDAP 1" >>confdefs.h
-
-           CURL_DISABLE_LDAP=1
-
-           { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-           ;;
-         *)
-           { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       esac
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support ldaps" >&5
-$as_echo_n "checking whether to support ldaps... " >&6; }
-# Check whether --enable-ldaps was given.
-if test "${enable_ldaps+set}" = set; then :
-  enableval=$enable_ldaps;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
-
-       CURL_DISABLE_LDAPS=1
-
-       ;;
-  *)   if test x$CURL_DISABLE_LDAP = x1 ; then
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: LDAP support needs to be enabled in order to enable LDAPS support!" >&5
-$as_echo "LDAP support needs to be enabled in order to enable LDAPS support!" >&6; }
-
-$as_echo "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
-
-               CURL_DISABLE_LDAPS=1
-
-       else
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define HAVE_LDAP_SSL 1" >>confdefs.h
-
-               curl_ldaps_msg="enabled"
-       fi
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
-
-       CURL_DISABLE_LDAPS=1
-
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support rtsp" >&5
-$as_echo_n "checking whether to support rtsp... " >&6; }
-# Check whether --enable-rtsp was given.
-if test "${enable_rtsp+set}" = set; then :
-  enableval=$enable_rtsp;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_RTSP 1" >>confdefs.h
-
-       CURL_DISABLE_RTSP=1
-
-       ;;
-  *)   if test x$CURL_DISABLE_HTTP = x1 ; then
-          as_fn_error $? "HTTP support needs to be enabled in order to enable RTSP support!" "$LINENO" 5
-       else
-          { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-          curl_rtsp_msg="enabled"
-       fi
-       ;;
-  esac
-else
-  if test "x$CURL_DISABLE_HTTP" != "x1"; then
-          { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-          curl_rtsp_msg="enabled"
-       else
-          { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       fi
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support proxies" >&5
-$as_echo_n "checking whether to support proxies... " >&6; }
-# Check whether --enable-proxy was given.
-if test "${enable_proxy+set}" = set; then :
-  enableval=$enable_proxy;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_PROXY 1" >>confdefs.h
-
-       CURL_DISABLE_PROXY=1
-
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support dict" >&5
-$as_echo_n "checking whether to support dict... " >&6; }
-# Check whether --enable-dict was given.
-if test "${enable_dict+set}" = set; then :
-  enableval=$enable_dict;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_DICT 1" >>confdefs.h
-
-       CURL_DISABLE_DICT=1
-
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support telnet" >&5
-$as_echo_n "checking whether to support telnet... " >&6; }
-# Check whether --enable-telnet was given.
-if test "${enable_telnet+set}" = set; then :
-  enableval=$enable_telnet;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_TELNET 1" >>confdefs.h
-
-       CURL_DISABLE_TELNET=1
-
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support tftp" >&5
-$as_echo_n "checking whether to support tftp... " >&6; }
-# Check whether --enable-tftp was given.
-if test "${enable_tftp+set}" = set; then :
-  enableval=$enable_tftp;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_TFTP 1" >>confdefs.h
-
-       CURL_DISABLE_TFTP=1
-
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support pop3" >&5
-$as_echo_n "checking whether to support pop3... " >&6; }
-# Check whether --enable-pop3 was given.
-if test "${enable_pop3+set}" = set; then :
-  enableval=$enable_pop3;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_POP3 1" >>confdefs.h
-
-       CURL_DISABLE_POP3=1
-
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support imap" >&5
-$as_echo_n "checking whether to support imap... " >&6; }
-# Check whether --enable-imap was given.
-if test "${enable_imap+set}" = set; then :
-  enableval=$enable_imap;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_IMAP 1" >>confdefs.h
-
-       CURL_DISABLE_IMAP=1
-
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support smtp" >&5
-$as_echo_n "checking whether to support smtp... " >&6; }
-# Check whether --enable-smtp was given.
-if test "${enable_smtp+set}" = set; then :
-  enableval=$enable_smtp;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_SMTP 1" >>confdefs.h
-
-       CURL_DISABLE_SMTP=1
-
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to provide built-in manual" >&5
-$as_echo_n "checking whether to provide built-in manual... " >&6; }
-# Check whether --enable-manual was given.
-if test "${enable_manual+set}" = set; then :
-  enableval=$enable_manual;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       USE_MANUAL="1"
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       USE_MANUAL="1"
-
-fi
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if X/Open network library is required" >&5
-$as_echo_n "checking if X/Open network library is required... " >&6; }
-  tst_lib_xnet_required="no"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-int main (void)
-{
-#if defined(__hpux) && defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 600)
-  return 0;
-#elif defined(__hpux) && defined(_XOPEN_SOURCE_EXTENDED)
-  return 0;
-#else
-  force compilation error
-#endif
-}
-
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tst_lib_xnet_required="yes"
-    LIBS="$LIBS -lxnet"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_lib_xnet_required" >&5
-$as_echo "$tst_lib_xnet_required" >&6; }
-
-
-ac_fn_c_check_func "$LINENO" "gethostbyname" "ac_cv_func_gethostbyname"
-if test "x$ac_cv_func_gethostbyname" = xyes; then :
-  HAVE_GETHOSTBYNAME="1"
-
-else
-   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5
-$as_echo_n "checking for gethostbyname in -lnsl... " >&6; }
-if ${ac_cv_lib_nsl_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lnsl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyname ();
-int main (void)
-{
-return gethostbyname ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_nsl_gethostbyname=yes
-else
-  ac_cv_lib_nsl_gethostbyname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5
-$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; }
-if test "x$ac_cv_lib_nsl_gethostbyname" = xyes; then :
-  HAVE_GETHOSTBYNAME="1"
-                             LIBS="$LIBS -lnsl"
-
-fi
-
-
-fi
-
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lsocket" >&5
-$as_echo_n "checking for gethostbyname in -lsocket... " >&6; }
-if ${ac_cv_lib_socket_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsocket  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyname ();
-int main (void)
-{
-return gethostbyname ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_socket_gethostbyname=yes
-else
-  ac_cv_lib_socket_gethostbyname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_gethostbyname" >&5
-$as_echo "$ac_cv_lib_socket_gethostbyname" >&6; }
-if test "x$ac_cv_lib_socket_gethostbyname" = xyes; then :
-  HAVE_GETHOSTBYNAME="1"
-               LIBS="$LIBS -lsocket"
-
-fi
-
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname with both nsl and socket libs" >&5
-$as_echo_n "checking for gethostbyname with both nsl and socket libs... " >&6; }
-  my_ac_save_LIBS=$LIBS
-  LIBS="-lnsl -lsocket $LIBS"
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      gethostbyname();
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    HAVE_GETHOSTBYNAME="1"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    LIBS=$my_ac_save_LIBS
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-    if test "$ac_cv_header_windows_h" = "yes"; then
-    if test "$ac_cv_header_winsock_h" = "yes"; then
-      case $host in
-        *-*-mingw32ce*)
-          winsock_LIB="-lwinsock"
-          ;;
-        *)
-          winsock_LIB="-lwsock32"
-          ;;
-      esac
-    fi
-    if test "$ac_cv_header_winsock2_h" = "yes"; then
-      winsock_LIB="-lws2_32"
-    fi
-    if test ! -z "$winsock_LIB"; then
-      my_ac_save_LIBS=$LIBS
-      LIBS="$winsock_LIB $LIBS"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in $winsock_LIB" >&5
-$as_echo_n "checking for gethostbyname in $winsock_LIB... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#endif
-
-int main (void)
-{
-
-          gethostbyname("www.dummysite.com");
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        HAVE_GETHOSTBYNAME="1"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        winsock_LIB=""
-        LIBS=$my_ac_save_LIBS
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    fi
-  fi
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname for Minix 3" >&5
-$as_echo_n "checking for gethostbyname for Minix 3... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-/* Older Minix versions may need <net/gen/netdb.h> here instead */
-#include <netdb.h>
-
-int main (void)
-{
-
-      gethostbyname("www.dummysite.com");
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    HAVE_GETHOSTBYNAME="1"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname for eCos" >&5
-$as_echo_n "checking for gethostbyname for eCos... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <stdio.h>
-#include <netdb.h>
-
-int main (void)
-{
-
-      gethostbyname("www.dummysite.com");
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    HAVE_GETHOSTBYNAME="1"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnetwork" >&5
-$as_echo_n "checking for gethostbyname in -lnetwork... " >&6; }
-if ${ac_cv_lib_network_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lnetwork  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyname ();
-int main (void)
-{
-return gethostbyname ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_network_gethostbyname=yes
-else
-  ac_cv_lib_network_gethostbyname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_network_gethostbyname" >&5
-$as_echo "$ac_cv_lib_network_gethostbyname" >&6; }
-if test "x$ac_cv_lib_network_gethostbyname" = xyes; then :
-  HAVE_GETHOSTBYNAME="1"
-               LIBS="$LIBS -lnetwork"
-
-fi
-
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnet" >&5
-$as_echo_n "checking for gethostbyname in -lnet... " >&6; }
-if ${ac_cv_lib_net_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lnet  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyname ();
-int main (void)
-{
-return gethostbyname ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_net_gethostbyname=yes
-else
-  ac_cv_lib_net_gethostbyname=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_net_gethostbyname" >&5
-$as_echo "$ac_cv_lib_net_gethostbyname" >&6; }
-if test "x$ac_cv_lib_net_gethostbyname" = xyes; then :
-  HAVE_GETHOSTBYNAME="1"
-               LIBS="$LIBS -lnet"
-
-fi
-
-fi
-
-
-if test "$HAVE_GETHOSTBYNAME" != "1"; then
-  as_fn_error $? "couldn't find libraries for gethostbyname()" "$LINENO" 5
-fi
-
-ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp"
-if test "x$ac_cv_func_strcasecmp" = xyes; then :
-
-else
-   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strcasecmp in -lresolve" >&5
-$as_echo_n "checking for strcasecmp in -lresolve... " >&6; }
-if ${ac_cv_lib_resolve_strcasecmp+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lresolve  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char strcasecmp ();
-int main (void)
-{
-return strcasecmp ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_resolve_strcasecmp=yes
-else
-  ac_cv_lib_resolve_strcasecmp=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolve_strcasecmp" >&5
-$as_echo "$ac_cv_lib_resolve_strcasecmp" >&6; }
-if test "x$ac_cv_lib_resolve_strcasecmp" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBRESOLVE 1
-_ACEOF
-
-  LIBS="-lresolve $LIBS"
-
-fi
-
-fi
-
-
-if test "$ac_cv_lib_resolve_strcasecmp" = "$ac_cv_func_strcasecmp"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strcasecmp in -lresolve" >&5
-$as_echo_n "checking for strcasecmp in -lresolve... " >&6; }
-if ${ac_cv_lib_resolve_strcasecmp+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lresolve -lnsl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char strcasecmp ();
-int main (void)
-{
-return strcasecmp ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_resolve_strcasecmp=yes
-else
-  ac_cv_lib_resolve_strcasecmp=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolve_strcasecmp" >&5
-$as_echo "$ac_cv_lib_resolve_strcasecmp" >&6; }
-if test "x$ac_cv_lib_resolve_strcasecmp" = xyes; then :
-  LIBS="-lresolve $LIBS"
-fi
-
-fi
-ac_cv_func_strcasecmp="no"
-
-
-curl_includes_winsock2="\
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
-#  endif
-#endif
-/* includes end */"
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for windows.h" >&5
-$as_echo_n "checking for windows.h... " >&6; }
-if ${ac_cv_header_windows_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINDOWS_H shall not be defined.
-#else
-        int dummy=2*WINVER;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_windows_h="yes"
-
-else
-
-      ac_cv_header_windows_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_windows_h" >&5
-$as_echo "$ac_cv_header_windows_h" >&6; }
-  case "$ac_cv_header_windows_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINDOWS_H 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define WIN32_LEAN_AND_MEAN 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock.h" >&5
-$as_echo_n "checking for winsock.h... " >&6; }
-if ${ac_cv_header_winsock_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINSOCK_H shall not be defined.
-#else
-        int dummy=WSACleanup();
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_winsock_h="yes"
-
-else
-
-      ac_cv_header_winsock_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_winsock_h" >&5
-$as_echo "$ac_cv_header_winsock_h" >&6; }
-  case "$ac_cv_header_winsock_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock2.h" >&5
-$as_echo_n "checking for winsock2.h... " >&6; }
-if ${ac_cv_header_winsock2_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WINSOCK2_H shall not be defined.
-#else
-        int dummy=2*IPPROTO_ESP;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_winsock2_h="yes"
-
-else
-
-      ac_cv_header_winsock2_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_winsock2_h" >&5
-$as_echo "$ac_cv_header_winsock2_h" >&6; }
-  case "$ac_cv_header_winsock2_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK2_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for connect in libraries" >&5
-$as_echo_n "checking for connect in libraries... " >&6; }
-  tst_connect_save_LIBS="$LIBS"
-  tst_connect_need_LIBS="unknown"
-  for tst_lib in '' '-lsocket' ; do
-    if test "$tst_connect_need_LIBS" = "unknown"; then
-      LIBS="$tst_lib $tst_connect_save_LIBS"
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_winsock2
-          #ifndef HAVE_WINDOWS_H
-            int connect(int, void*, int);
-          #endif
-
-int main (void)
-{
-
-          if(0 != connect(0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-        tst_connect_need_LIBS="$tst_lib"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    fi
-  done
-  LIBS="$tst_connect_save_LIBS"
-  #
-  case X-"$tst_connect_need_LIBS" in
-    X-unknown)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: cannot find connect" >&5
-$as_echo "cannot find connect" >&6; }
-      as_fn_error $? "cannot find connect function in libraries." "$LINENO" 5
-      ;;
-    X-)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      ;;
-    *)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_connect_need_LIBS" >&5
-$as_echo "$tst_connect_need_LIBS" >&6; }
-      LIBS="$tst_connect_need_LIBS $tst_connect_save_LIBS"
-      ;;
-  esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5
-$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
-if ${ac_cv_header_time+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-
-int main (void)
-{
-if ((struct tm *) 0)
-return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_time=yes
-else
-  ac_cv_header_time=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5
-$as_echo "$ac_cv_header_time" >&6; }
-if test $ac_cv_header_time = yes; then
-
-$as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h
-
-fi
-
-
-    for ac_header in sys/types.h sys/time.h time.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for monotonic clock_gettime" >&5
-$as_echo_n "checking for monotonic clock_gettime... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-
-int main (void)
-{
-
-      struct timespec ts;
-      (void)clock_gettime(CLOCK_MONOTONIC, &ts);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    ac_cv_func_clock_gettime="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_clock_gettime="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-
-    #
-  if test "$ac_cv_func_clock_gettime" = "yes"; then
-    #
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in libraries" >&5
-$as_echo_n "checking for clock_gettime in libraries... " >&6; }
-    #
-    curl_cv_save_LIBS="$LIBS"
-    curl_cv_gclk_LIBS="unknown"
-    #
-    for x_xlibs in '' '-lrt' '-lposix4' ; do
-      if test "$curl_cv_gclk_LIBS" = "unknown"; then
-        if test -z "$x_xlibs"; then
-          LIBS="$curl_cv_save_LIBS"
-        else
-          LIBS="$x_xlibs $curl_cv_save_LIBS"
-        fi
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-
-int main (void)
-{
-
-            struct timespec ts;
-            (void)clock_gettime(CLOCK_MONOTONIC, &ts);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-          curl_cv_gclk_LIBS="$x_xlibs"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-      fi
-    done
-    #
-    LIBS="$curl_cv_save_LIBS"
-    #
-    case X-"$curl_cv_gclk_LIBS" in
-      X-unknown)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: cannot find clock_gettime" >&5
-$as_echo "cannot find clock_gettime" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&5
-$as_echo "$as_me: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&2;}
-        ac_cv_func_clock_gettime="no"
-        ;;
-      X-)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no additional lib required" >&5
-$as_echo "no additional lib required" >&6; }
-        ac_cv_func_clock_gettime="yes"
-        ;;
-      *)
-        if test -z "$curl_cv_save_LIBS"; then
-          LIBS="$curl_cv_gclk_LIBS"
-        else
-          LIBS="$curl_cv_gclk_LIBS $curl_cv_save_LIBS"
-        fi
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_gclk_LIBS" >&5
-$as_echo "$curl_cv_gclk_LIBS" >&6; }
-        ac_cv_func_clock_gettime="yes"
-        ;;
-    esac
-    #
-        if test "x$cross_compiling" != "xyes" &&
-      test "$ac_cv_func_clock_gettime" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if monotonic clock_gettime works" >&5
-$as_echo_n "checking if monotonic clock_gettime works... " >&6; }
-      if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-
-int main (void)
-{
-
-          struct timespec ts;
-          if (0 == clock_gettime(CLOCK_MONOTONIC, &ts))
-            exit(0);
-          else
-            exit(1);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&5
-$as_echo "$as_me: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&2;}
-        ac_cv_func_clock_gettime="no"
-        LIBS="$curl_cv_save_LIBS"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-    fi
-    #
-    case "$ac_cv_func_clock_gettime" in
-      yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_CLOCK_GETTIME_MONOTONIC 1
-_ACEOF
-
-        ;;
-    esac
-    #
-  fi
-  #
-
-
-TEST_SERVER_LIBS=$LIBS
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use libgcc" >&5
-$as_echo_n "checking whether to use libgcc... " >&6; }
-# Check whether --enable-libgcc was given.
-if test "${enable_libgcc+set}" = set; then :
-  enableval=$enable_libgcc;  case "$enableval" in
-  yes)
-        ALL_LIBS="$ALL_LIBS -lgcc"
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-
-
-
-LDAPLIBNAME=""
-
-# Check whether --with-ldap-lib was given.
-if test "${with_ldap_lib+set}" = set; then :
-  withval=$with_ldap_lib; LDAPLIBNAME="$withval"
-fi
-
-
-LBERLIBNAME=""
-
-# Check whether --with-lber-lib was given.
-if test "${with_lber_lib+set}" = set; then :
-  withval=$with_lber_lib; LBERLIBNAME="$withval"
-fi
-
-
-if test x$CURL_DISABLE_LDAP != x1 ; then
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lber.h" >&5
-$as_echo_n "checking for lber.h... " >&6; }
-if ${ac_cv_header_lber_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef NULL
-#define NULL (void *)0
-#endif
-#include <lber.h>
-
-int main (void)
-{
-
-        BerValue *bvp = NULL;
-        BerElement *bep = ber_init(bvp);
-        ber_free(bep, 1);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_lber_h="yes"
-
-else
-
-      ac_cv_header_lber_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_lber_h" >&5
-$as_echo "$ac_cv_header_lber_h" >&6; }
-  if test "$ac_cv_header_lber_h" = "yes"; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_LBER_H 1
-_ACEOF
-
-    #
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef NULL
-#define NULL (void *)0
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#include <ldap.h>
-
-int main (void)
-{
-
-        BerValue *bvp = NULL;
-        BerElement *bep = ber_init(bvp);
-        ber_free(bep, 1);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      curl_cv_need_header_lber_h="no"
-
-else
-
-      curl_cv_need_header_lber_h="yes"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    #
-    case "$curl_cv_need_header_lber_h" in
-      yes)
-
-cat >>confdefs.h <<_ACEOF
-#define NEED_LBER_H 1
-_ACEOF
-
-        ;;
-    esac
-  fi
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldap.h" >&5
-$as_echo_n "checking for ldap.h... " >&6; }
-if ${ac_cv_header_ldap_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#ifdef NEED_LBER_H
-#include <lber.h>
-#endif
-#include <ldap.h>
-
-int main (void)
-{
-
-        LDAP *ldp = ldap_init("dummy", LDAP_PORT);
-        int res = ldap_unbind(ldp);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_ldap_h="yes"
-
-else
-
-      ac_cv_header_ldap_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_ldap_h" >&5
-$as_echo "$ac_cv_header_ldap_h" >&6; }
-  case "$ac_cv_header_ldap_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_LDAP_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldapssl.h" >&5
-$as_echo_n "checking for ldapssl.h... " >&6; }
-if ${ac_cv_header_ldapssl_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef NULL
-#define NULL (void *)0
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#ifdef NEED_LBER_H
-#include <lber.h>
-#endif
-#ifdef HAVE_LDAP_H
-#include <ldap.h>
-#endif
-#include <ldapssl.h>
-
-int main (void)
-{
-
-        char *cert_label = NULL;
-        LDAP *ldp = ldap_ssl_init("dummy", LDAPS_PORT, cert_label);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_ldapssl_h="yes"
-
-else
-
-      ac_cv_header_ldapssl_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_ldapssl_h" >&5
-$as_echo "$ac_cv_header_ldapssl_h" >&6; }
-  case "$ac_cv_header_ldapssl_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_LDAPSSL_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldap_ssl.h" >&5
-$as_echo_n "checking for ldap_ssl.h... " >&6; }
-if ${ac_cv_header_ldap_ssl_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#ifdef NEED_LBER_H
-#include <lber.h>
-#endif
-#ifdef HAVE_LDAP_H
-#include <ldap.h>
-#endif
-#include <ldap_ssl.h>
-
-int main (void)
-{
-
-        LDAP *ldp = ldapssl_init("dummy", LDAPS_PORT, 1);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_ldap_ssl_h="yes"
-
-else
-
-      ac_cv_header_ldap_ssl_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_ldap_ssl_h" >&5
-$as_echo "$ac_cv_header_ldap_ssl_h" >&6; }
-  case "$ac_cv_header_ldap_ssl_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_LDAP_SSL_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-  if test -z "$LDAPLIBNAME" ; then
-    case $host in
-      *-*-cygwin* | *-*-mingw* | *-*-pw32*)
-                LDAPLIBNAME="wldap32"
-        LBERLIBNAME="no"
-        ;;
-    esac
-  fi
-
-  if test "$LDAPLIBNAME" ; then
-    as_ac_Lib=`$as_echo "ac_cv_lib_"$LDAPLIBNAME"''_ldap_init" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldap_init in -l\"$LDAPLIBNAME\"" >&5
-$as_echo_n "checking for ldap_init in -l\"$LDAPLIBNAME\"... " >&6; }
-if eval \${$as_ac_Lib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-l"$LDAPLIBNAME"  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char ldap_init ();
-int main (void)
-{
-return ldap_init ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  eval "$as_ac_Lib=yes"
-else
-  eval "$as_ac_Lib=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-eval ac_res=\$$as_ac_Lib
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_LIB"$LDAPLIBNAME"" | $as_tr_cpp` 1
-_ACEOF
-
-  LIBS="-l"$LDAPLIBNAME" $LIBS"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \"$LDAPLIBNAME\" is not an LDAP library: LDAP disabled" >&5
-$as_echo "$as_me: WARNING: \"$LDAPLIBNAME\" is not an LDAP library: LDAP disabled" >&2;}
-
-$as_echo "#define CURL_DISABLE_LDAP 1" >>confdefs.h
-
-      CURL_DISABLE_LDAP=1
-
-fi
-
-
-$as_echo "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
-
-      CURL_DISABLE_LDAPS=1
-
-  else
-
-    #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LDAP libraries" >&5
-$as_echo_n "checking for LDAP libraries... " >&6; }
-  #
-  u_libs=""
-  #
-
-  #
-  curl_cv_save_LIBS="$LIBS"
-  curl_cv_ldap_LIBS="unknown"
-  #
-  for x_nlibs in '' "$u_libs" \
-    '-lldap' \
-    '-llber -lldap' \
-    '-lldap -llber' \
-    '-lldapssl -lldapx -lldapsdk' \
-    '-lldapsdk -lldapx -lldapssl' ; do
-    if test "$curl_cv_ldap_LIBS" = "unknown"; then
-      if test -z "$x_nlibs"; then
-        LIBS="$curl_cv_save_LIBS"
-      else
-        LIBS="$x_nlibs $curl_cv_save_LIBS"
-      fi
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef NULL
-#define NULL (void *)0
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#ifdef NEED_LBER_H
-#include <lber.h>
-#endif
-#ifdef HAVE_LDAP_H
-#include <ldap.h>
-#endif
-
-int main (void)
-{
-
-          BerValue *bvp = NULL;
-          BerElement *bep = ber_init(bvp);
-          LDAP *ldp = ldap_init("dummy", LDAP_PORT);
-          int res = ldap_unbind(ldp);
-          ber_free(bep, 1);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-        curl_cv_ldap_LIBS="$x_nlibs"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    fi
-  done
-  #
-  LIBS="$curl_cv_save_LIBS"
-  #
-  case X-"$curl_cv_ldap_LIBS" in
-    X-unknown)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: cannot find LDAP libraries" >&5
-$as_echo "cannot find LDAP libraries" >&6; }
-      ;;
-    X-)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no additional lib required" >&5
-$as_echo "no additional lib required" >&6; }
-      ;;
-    *)
-      if test -z "$curl_cv_save_LIBS"; then
-        LIBS="$curl_cv_ldap_LIBS"
-      else
-        LIBS="$curl_cv_ldap_LIBS $curl_cv_save_LIBS"
-      fi
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_ldap_LIBS" >&5
-$as_echo "$curl_cv_ldap_LIBS" >&6; }
-      ;;
-  esac
-  #
-
-    case X-"$curl_cv_ldap_LIBS" in
-      X-unknown)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find libraries for LDAP support: LDAP disabled" >&5
-$as_echo "$as_me: WARNING: Cannot find libraries for LDAP support: LDAP disabled" >&2;}
-
-$as_echo "#define CURL_DISABLE_LDAP 1" >>confdefs.h
-
-        CURL_DISABLE_LDAP=1
-
-
-$as_echo "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
-
-        CURL_DISABLE_LDAPS=1
-
-        ;;
-    esac
-  fi
-fi
-
-if test x$CURL_DISABLE_LDAP != x1 ; then
-
-  if test "$LBERLIBNAME" ; then
-            if test "$LBERLIBNAME" != "no" ; then
-      as_ac_Lib=`$as_echo "ac_cv_lib_"$LBERLIBNAME"''_ber_free" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ber_free in -l\"$LBERLIBNAME\"" >&5
-$as_echo_n "checking for ber_free in -l\"$LBERLIBNAME\"... " >&6; }
-if eval \${$as_ac_Lib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-l"$LBERLIBNAME"  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char ber_free ();
-int main (void)
-{
-return ber_free ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  eval "$as_ac_Lib=yes"
-else
-  eval "$as_ac_Lib=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-eval ac_res=\$$as_ac_Lib
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_LIB"$LBERLIBNAME"" | $as_tr_cpp` 1
-_ACEOF
-
-  LIBS="-l"$LBERLIBNAME" $LIBS"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \"$LBERLIBNAME\" is not an LBER library: LDAP disabled" >&5
-$as_echo "$as_me: WARNING: \"$LBERLIBNAME\" is not an LBER library: LDAP disabled" >&2;}
-
-$as_echo "#define CURL_DISABLE_LDAP 1" >>confdefs.h
-
-        CURL_DISABLE_LDAP=1
-
-fi
-
-
-$as_echo "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
-
-        CURL_DISABLE_LDAPS=1
-
-    fi
-  fi
-fi
-
-if test x$CURL_DISABLE_LDAP != x1 ; then
-  for ac_func in ldap_url_parse
-do :
-  ac_fn_c_check_func "$LINENO" "ldap_url_parse" "ac_cv_func_ldap_url_parse"
-if test "x$ac_cv_func_ldap_url_parse" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LDAP_URL_PARSE 1
-_ACEOF
-
-fi
-done
-
-
-  if test "$LDAPLIBNAME" = "wldap32"; then
-    curl_ldap_msg="enabled (winldap)"
-
-$as_echo "#define CURL_LDAP_WIN 1" >>confdefs.h
-
-    case $host in
-      *-*-cygwin* | *-*-pw32*)
-
-$as_echo "#define CURL_LDAP_HYBRID 1" >>confdefs.h
-
-        ;;
-    esac
-  else
-    curl_ldap_msg="enabled (OpenLDAP)"
-  fi
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable ipv6" >&5
-$as_echo_n "checking whether to enable ipv6... " >&6; }
-# Check whether --enable-ipv6 was given.
-if test "${enable_ipv6+set}" = set; then :
-  enableval=$enable_ipv6;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       ipv6=no
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ipv6=yes
-       ;;
-  esac
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  ipv6=no
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
- /* is AF_INET6 available? */
-#include <sys/types.h>
-#include <sys/socket.h>
-main()
-{
- if (socket(AF_INET6, SOCK_STREAM, 0) < 0)
-   exit(1);
- else
-   exit(0);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  ipv6=yes
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  ipv6=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-
-if test "$ipv6" = "yes"; then
-  curl_ipv6_msg="enabled"
-fi
-
-# Check if struct sockaddr_in6 have sin6_scope_id member
-if test "$ipv6" = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if struct sockaddr_in6 has sin6_scope_id member" >&5
-$as_echo_n "checking if struct sockaddr_in6 has sin6_scope_id member... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-#include <sys/types.h>
-#include <netinet/in.h>
-int main (void)
-{
-struct sockaddr_in6 s; s.sin6_scope_id = 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  have_sin6_scope_id=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  if test "$have_sin6_scope_id" = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1" >>confdefs.h
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if argv can be written to" >&5
-$as_echo_n "checking if argv can be written to... " >&6; }
-if ${curl_cv_writable_argv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-if test "$cross_compiling" = yes; then :
-
-  curl_cv_writable_argv=cross
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-int main(int argc, char ** argv) {
-    argv[0][0] = ' ';
-    return (argv[0][0] == ' ')?0:1;
-}
-
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-  curl_cv_writable_argv=yes
-
-else
-
-  curl_cv_writable_argv=no
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-
-fi
-
-case $curl_cv_writable_argv in
-yes)
-
-$as_echo "#define HAVE_WRITABLE_ARGV 1" >>confdefs.h
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        ;;
-no)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        ;;
-*)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: the previous check could not be made default was used" >&5
-$as_echo "$as_me: WARNING: the previous check could not be made default was used" >&2;}
-        ;;
-esac
-
-
-
-# Check whether --with-krb4-includes was given.
-if test "${with_krb4_includes+set}" = set; then :
-  withval=$with_krb4_includes;
- CPPFLAGS="$CPPFLAGS -I$withval"
- KRB4INC="$withval"
- want_krb4=yes
-
-fi
-
-
-
-# Check whether --with-krb4-libs was given.
-if test "${with_krb4_libs+set}" = set; then :
-  withval=$with_krb4_libs;
- LDFLAGS="$LDFLAGS -L$withval"
- KRB4LIB="$withval"
- want_krb4=yes
-
-fi
-
-
-
-OPT_KRB4=off
-
-# Check whether --with-krb4 was given.
-if test "${with_krb4+set}" = set; then :
-  withval=$with_krb4;
-  OPT_KRB4="$withval"
-  if test X"$OPT_KRB4" != Xno; then
-    want_krb4="yes"
-    if test X"$OPT_KRB4" != Xyes; then
-      LDFLAGS="$LDFLAGS -L$OPT_KRB4/lib$libsuff"
-      KRB4LIB="$OPT_KRB4/lib$libsuff"
-      CPPFLAGS="$CPPFLAGS -I$OPT_KRB4/include"
-      KRB4INC="$OPT_KRB4/include"
-    fi
-  fi
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if Kerberos4 support is requested" >&5
-$as_echo_n "checking if Kerberos4 support is requested... " >&6; }
-
-if test "$want_krb4" = yes
-then
-  if test "$ipv6" = "yes"; then
-    echo krb4 is not compatible with IPv6
-    exit 1
-  fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to look for Kerberos4" >&5
-$as_echo_n "checking where to look for Kerberos4... " >&6; }
-  if test X"$OPT_KRB4" = Xyes
-  then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: defaults" >&5
-$as_echo "defaults" >&6; }
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: libs in $KRB4LIB, headers in $KRB4INC" >&5
-$as_echo "libs in $KRB4LIB, headers in $KRB4INC" >&6; }
-  fi
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for des_pcbc_encrypt in -ldes" >&5
-$as_echo_n "checking for des_pcbc_encrypt in -ldes... " >&6; }
-if ${ac_cv_lib_des_des_pcbc_encrypt+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldes  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char des_pcbc_encrypt ();
-int main (void)
-{
-return des_pcbc_encrypt ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_des_des_pcbc_encrypt=yes
-else
-  ac_cv_lib_des_des_pcbc_encrypt=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_des_des_pcbc_encrypt" >&5
-$as_echo "$ac_cv_lib_des_des_pcbc_encrypt" >&6; }
-if test "x$ac_cv_lib_des_des_pcbc_encrypt" = xyes; then :
-
-    for ac_header in des.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "des.h" "ac_cv_header_des_h" "$ac_includes_default"
-if test "x$ac_cv_header_des_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_DES_H 1
-_ACEOF
-
-fi
-
-done
-
-
-        ac_fn_c_check_func "$LINENO" "res_search" "ac_cv_func_res_search"
-if test "x$ac_cv_func_res_search" = xyes; then :
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for res_search in -lresolv" >&5
-$as_echo_n "checking for res_search in -lresolv... " >&6; }
-if ${ac_cv_lib_resolv_res_search+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lresolv  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char res_search ();
-int main (void)
-{
-return res_search ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_resolv_res_search=yes
-else
-  ac_cv_lib_resolv_res_search=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolv_res_search" >&5
-$as_echo "$ac_cv_lib_resolv_res_search" >&6; }
-if test "x$ac_cv_lib_resolv_res_search" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBRESOLV 1
-_ACEOF
-
-  LIBS="-lresolv $LIBS"
-
-fi
-
-fi
-
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for krb_net_read in -lkrb" >&5
-$as_echo_n "checking for krb_net_read in -lkrb... " >&6; }
-if ${ac_cv_lib_krb_krb_net_read+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lkrb  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char krb_net_read ();
-int main (void)
-{
-return krb_net_read ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_krb_krb_net_read=yes
-else
-  ac_cv_lib_krb_krb_net_read=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_krb_krb_net_read" >&5
-$as_echo "$ac_cv_lib_krb_krb_net_read" >&6; }
-if test "x$ac_cv_lib_krb_krb_net_read" = xyes; then :
-
-            for ac_header in krb.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "krb.h" "ac_cv_header_krb_h" "$ac_includes_default"
-if test "x$ac_cv_header_krb_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_KRB_H 1
-_ACEOF
-
-fi
-
-done
-
-
-            LIBS="-lkrb -lcom_err -ldes $LIBS"
-
-                  for ac_func in krb_get_our_ip_for_realm
-do :
-  ac_fn_c_check_func "$LINENO" "krb_get_our_ip_for_realm" "ac_cv_func_krb_get_our_ip_for_realm"
-if test "x$ac_cv_func_krb_get_our_ip_for_realm" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_KRB_GET_OUR_IP_FOR_REALM 1
-_ACEOF
-
-fi
-done
-
-
-
-$as_echo "#define HAVE_KRB4 1" >>confdefs.h
-
-
-            KRB4_ENABLED=1
-
-
-      curl_krb4_msg="enabled"
-
-            for ac_func in strlcpy
-do :
-  ac_fn_c_check_func "$LINENO" "strlcpy" "ac_cv_func_strlcpy"
-if test "x$ac_cv_func_strlcpy" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_STRLCPY 1
-_ACEOF
-
-fi
-done
-
-
-
-fi
-
-
-fi
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
-# Check whether --with-spnego was given.
-if test "${with_spnego+set}" = set; then :
-  withval=$with_spnego;
-  SPNEGO_ROOT="$withval"
-  if test x"$SPNEGO_ROOT" != xno; then
-    want_spnego="yes"
-  fi
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if SPNEGO support is requested" >&5
-$as_echo_n "checking if SPNEGO support is requested... " >&6; }
-if test x"$want_spnego" = xyes; then
-
-  if test X"$SPNEGO_ROOT" = Xyes; then
-     as_fn_error $? "FBOpenSSL libs and/or directories were not found where specified!" "$LINENO" 5
-     { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  else
-     if test -z "$SPNEGO_LIB_DIR"; then
-        LDFLAGS="$LDFLAGS -L$SPNEGO_ROOT -lfbopenssl"
-     else
-        LDFLAGS="$LDFLAGS $SPNEGO_LIB_DIR"
-     fi
-
-     { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define HAVE_SPNEGO 1" >>confdefs.h
-
-     curl_spnego_msg="enabled"
-  fi
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
-GSSAPI_ROOT="/usr"
-
-# Check whether --with-gssapi-includes was given.
-if test "${with_gssapi_includes+set}" = set; then :
-  withval=$with_gssapi_includes;  GSSAPI_INCS="-I$withval"
-    want_gss="yes"
-
-fi
-
-
-
-# Check whether --with-gssapi-libs was given.
-if test "${with_gssapi_libs+set}" = set; then :
-  withval=$with_gssapi_libs;  GSSAPI_LIB_DIR="-L$withval"
-    want_gss="yes"
-
-fi
-
-
-
-# Check whether --with-gssapi was given.
-if test "${with_gssapi+set}" = set; then :
-  withval=$with_gssapi;
-  GSSAPI_ROOT="$withval"
-  if test x"$GSSAPI_ROOT" != xno; then
-    want_gss="yes"
-    if test x"$GSSAPI_ROOT" = xyes; then
-            GSSAPI_ROOT="/usr"
-    fi
-  fi
-
-fi
-
-
-save_CPPFLAGS="$CPPFLAGS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if GSSAPI support is requested" >&5
-$as_echo_n "checking if GSSAPI support is requested... " >&6; }
-if test x"$want_gss" = xyes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-  if test -z "$GSSAPI_INCS"; then
-     if test -f "$GSSAPI_ROOT/bin/krb5-config"; then
-        GSSAPI_INCS=`$GSSAPI_ROOT/bin/krb5-config --cflags gssapi`
-     elif test "$GSSAPI_ROOT" != "yes"; then
-        GSSAPI_INCS="-I$GSSAPI_ROOT/include"
-     fi
-  fi
-
-  CPPFLAGS="$CPPFLAGS $GSSAPI_INCS"
-
-  ac_fn_c_check_header_mongrel "$LINENO" "gss.h" "ac_cv_header_gss_h" "$ac_includes_default"
-if test "x$ac_cv_header_gss_h" = xyes; then :
-
-
-$as_echo "#define HAVE_GSSGNU 1" >>confdefs.h
-
-      gnu_gss=yes
-
-else
-
-            for ac_header in gssapi/gssapi.h gssapi/gssapi_generic.h gssapi/gssapi_krb5.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-else
-  not_mit=1
-fi
-
-done
-
-      if test "x$not_mit" = "x1"; then
-                ac_fn_c_check_header_mongrel "$LINENO" "gssapi.h" "ac_cv_header_gssapi_h" "$ac_includes_default"
-if test "x$ac_cv_header_gssapi_h" = xyes; then :
-
-
-$as_echo "#define HAVE_GSSHEIMDAL 1" >>confdefs.h
-
-
-else
-
-                            want_gss=no
-              { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: disabling GSSAPI since no header files was found" >&5
-$as_echo "$as_me: WARNING: disabling GSSAPI since no header files was found" >&2;}
-
-
-fi
-
-
-      else
-
-$as_echo "#define HAVE_GSSMIT 1" >>confdefs.h
-
-                { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gssapi headers declare GSS_C_NT_HOSTBASED_SERVICE" >&5
-$as_echo_n "checking if gssapi headers declare GSS_C_NT_HOSTBASED_SERVICE... " >&6; }
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <gssapi/gssapi.h>
-#include <gssapi/gssapi_generic.h>
-#include <gssapi/gssapi_krb5.h>
-
-int main (void)
-{
-
-            gss_import_name(
-                            (OM_uint32 *)0,
-                            (gss_buffer_t)0,
-                            GSS_C_NT_HOSTBASED_SERVICE,
-                            (gss_name_t *)0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-          { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-else
-
-          { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define HAVE_OLD_GSSMIT 1" >>confdefs.h
-
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-      fi
-
-
-fi
-
-
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-if test x"$want_gss" = xyes; then
-
-$as_echo "#define HAVE_GSSAPI 1" >>confdefs.h
-
-
-  curl_gss_msg="enabled (MIT/Heimdal)"
-
-  if test -n "$gnu_gss"; then
-    curl_gss_msg="enabled (GNU GSS)"
-    LDFLAGS="$LDFLAGS $GSSAPI_LIB_DIR"
-    LIBS="$LIBS -lgss"
-  elif test -z "$GSSAPI_LIB_DIR"; then
-     case $host in
-     *-*-darwin*)
-        LIBS="$LIBS -lgssapi_krb5 -lresolv"
-        ;;
-     *)
-        if test -f "$GSSAPI_ROOT/bin/krb5-config"; then
-                                 gss_libs=`$GSSAPI_ROOT/bin/krb5-config --libs gssapi`
-           LIBS="$LIBS $gss_libs"
-        elif test "$GSSAPI_ROOT" != "yes"; then
-           LDFLAGS="$LDFLAGS -L$GSSAPI_ROOT/lib$libsuff"
-           LIBS="$LIBS -lgssapi"
-        else
-           LIBS="$LIBS -lgssapi"
-        fi
-        ;;
-     esac
-  else
-     LDFLAGS="$LDFLAGS $GSSAPI_LIB_DIR"
-     LIBS="$LIBS -lgssapi"
-  fi
-else
-  CPPFLAGS="$save_CPPFLAGS"
-fi
-
-
-OPT_SSL=off
-ca="no"
-
-# Check whether --with-ssl was given.
-if test "${with_ssl+set}" = set; then :
-  withval=$with_ssl; OPT_SSL=$withval
-fi
-
-
-if test X"$OPT_SSL" != Xno; then
-    CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  case "$OPT_SSL" in
-  yes)
-        if test x$cross_compiling != xyes; then
-            PKGTEST="yes"
-    fi
-    PREFIX_OPENSSL=/usr/local/ssl
-    LIB_OPENSSL="$PREFIX_OPENSSL/lib$libsuff"
-    ;;
-  off)
-        if test x$cross_compiling != xyes; then
-            PKGTEST="yes"
-    fi
-    PREFIX_OPENSSL=
-    ;;
-  *)
-        PKGTEST="no"
-    PREFIX_OPENSSL=$OPT_SSL
-
-                OPENSSL_PCDIR="$OPT_SSL/lib/pkgconfig"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: PKG_CONFIG_LIBDIR will be set to \"$OPENSSL_PCDIR\"" >&5
-$as_echo "$as_me: PKG_CONFIG_LIBDIR will be set to \"$OPENSSL_PCDIR\"" >&6;}
-    if test -e "$OPENSSL_PCDIR/openssl.pc"; then
-      PKGTEST="yes"
-    fi
-
-            LIB_OPENSSL="$PREFIX_OPENSSL/lib$libsuff"
-    if test "$PREFIX_OPENSSL" != "/usr" ; then
-      SSL_LDFLAGS="-L$LIB_OPENSSL"
-      SSL_CPPFLAGS="-I$PREFIX_OPENSSL/include"
-    fi
-    SSL_CPPFLAGS="$SSL_CPPFLAGS -I$PREFIX_OPENSSL/include/openssl"
-    ;;
-  esac
-
-  if test "$PKGTEST" = "yes"; then
-
-
-
-    PKGCONFIG="no"
-
-    if test x$cross_compiling = xyes; then
-            # Extract the first word of "${host}-pkg-config", so it can be a program name with args.
-set dummy ${host}-pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $PKGCONFIG in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_PKGCONFIG" && ac_cv_path_PKGCONFIG="no"
-  ;;
-esac
-fi
-PKGCONFIG=$ac_cv_path_PKGCONFIG
-if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    fi
-
-    if test x$PKGCONFIG = xno; then
-      # Extract the first word of "pkg-config", so it can be a program name with args.
-set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $PKGCONFIG in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_PKGCONFIG" && ac_cv_path_PKGCONFIG="no"
-  ;;
-esac
-fi
-PKGCONFIG=$ac_cv_path_PKGCONFIG
-if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    fi
-
-    if test x$PKGCONFIG != xno; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for openssl options with pkg-config" >&5
-$as_echo_n "checking for openssl options with pkg-config... " >&6; }
-            itexists=`
-    if test -n "$OPENSSL_PCDIR"; then
-      PKG_CONFIG_LIBDIR="$OPENSSL_PCDIR"
-      export PKG_CONFIG_LIBDIR
-    fi
-         $PKGCONFIG --exists openssl >/dev/null 2>&1 && echo 1`
-
-      if test -z "$itexists"; then
-                        PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
-      fi
-    fi
-
-
-    if test "$PKGCONFIG" != "no" ; then
-      SSL_LIBS=`
-    if test -n "$OPENSSL_PCDIR"; then
-      PKG_CONFIG_LIBDIR="$OPENSSL_PCDIR"
-      export PKG_CONFIG_LIBDIR
-    fi
-         $PKGCONFIG --libs-only-l openssl 2>/dev/null`
-
-      SSL_LDFLAGS=`
-    if test -n "$OPENSSL_PCDIR"; then
-      PKG_CONFIG_LIBDIR="$OPENSSL_PCDIR"
-      export PKG_CONFIG_LIBDIR
-    fi
-         $PKGCONFIG --libs-only-L openssl 2>/dev/null`
-
-      SSL_CPPFLAGS=`
-    if test -n "$OPENSSL_PCDIR"; then
-      PKG_CONFIG_LIBDIR="$OPENSSL_PCDIR"
-      export PKG_CONFIG_LIBDIR
-    fi
-         $PKGCONFIG --cflags-only-I openssl 2>/dev/null`
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: SSL_LIBS: \"$SSL_LIBS\"" >&5
-$as_echo "$as_me: pkg-config: SSL_LIBS: \"$SSL_LIBS\"" >&6;}
-      { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: SSL_LDFLAGS: \"$SSL_LDFLAGS\"" >&5
-$as_echo "$as_me: pkg-config: SSL_LDFLAGS: \"$SSL_LDFLAGS\"" >&6;}
-      { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: SSL_CPPFLAGS: \"$SSL_CPPFLAGS\"" >&5
-$as_echo "$as_me: pkg-config: SSL_CPPFLAGS: \"$SSL_CPPFLAGS\"" >&6;}
-
-      LIB_OPENSSL=`echo $SSL_LDFLAGS | sed -e 's/-L//g'`
-
-                                          LIBS="$LIBS $SSL_LIBS"
-    fi
-  fi
-
-    CPPFLAGS="$CPPFLAGS $SSL_CPPFLAGS"
-  LDFLAGS="$LDFLAGS $SSL_LDFLAGS"
-
-    case $host in
-    *-*-msys* | *-*-mingw*)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gdi32" >&5
-$as_echo_n "checking for gdi32... " >&6; }
-      my_ac_save_LIBS=$LIBS
-      LIBS="-lgdi32 $LIBS"
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <windef.h>
-                   #include <wingdi.h>
-int main (void)
-{
-GdiFlush();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-                      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-                      LIBS=$my_ac_save_LIBS
-                   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-      ;;
-  esac
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CRYPTO_lock in -lcrypto" >&5
-$as_echo_n "checking for CRYPTO_lock in -lcrypto... " >&6; }
-if ${ac_cv_lib_crypto_CRYPTO_lock+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcrypto  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char CRYPTO_lock ();
-int main (void)
-{
-return CRYPTO_lock ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_crypto_CRYPTO_lock=yes
-else
-  ac_cv_lib_crypto_CRYPTO_lock=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypto_CRYPTO_lock" >&5
-$as_echo "$ac_cv_lib_crypto_CRYPTO_lock" >&6; }
-if test "x$ac_cv_lib_crypto_CRYPTO_lock" = xyes; then :
-
-     HAVECRYPTO="yes"
-     LIBS="-lcrypto $LIBS"
-
-else
-
-     LDFLAGS="$CLEANLDFLAGS -L$LIB_OPENSSL"
-     CPPFLAGS="$CLEANCPPFLAGS -I$PREFIX_OPENSSL/include/openssl -I$PREFIX_OPENSSL/include"
-     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CRYPTO_add_lock in -lcrypto" >&5
-$as_echo_n "checking for CRYPTO_add_lock in -lcrypto... " >&6; }
-if ${ac_cv_lib_crypto_CRYPTO_add_lock+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lcrypto  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char CRYPTO_add_lock ();
-int main (void)
-{
-return CRYPTO_add_lock ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_crypto_CRYPTO_add_lock=yes
-else
-  ac_cv_lib_crypto_CRYPTO_add_lock=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypto_CRYPTO_add_lock" >&5
-$as_echo "$ac_cv_lib_crypto_CRYPTO_add_lock" >&6; }
-if test "x$ac_cv_lib_crypto_CRYPTO_add_lock" = xyes; then :
-
-       HAVECRYPTO="yes"
-       LIBS="-lcrypto $LIBS"
-else
-
-       LDFLAGS="$CLEANLDFLAGS"
-       CPPFLAGS="$CLEANCPPFLAGS"
-       LIBS="$CLEANLIBS"
-
-fi
-
-
-fi
-
-
-
-  if test X"$HAVECRYPTO" = X"yes"; then
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSL_connect in -lssl" >&5
-$as_echo_n "checking for SSL_connect in -lssl... " >&6; }
-if ${ac_cv_lib_ssl_SSL_connect+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lssl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char SSL_connect ();
-int main (void)
-{
-return SSL_connect ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_ssl_SSL_connect=yes
-else
-  ac_cv_lib_ssl_SSL_connect=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ssl_SSL_connect" >&5
-$as_echo "$ac_cv_lib_ssl_SSL_connect" >&6; }
-if test "x$ac_cv_lib_ssl_SSL_connect" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBSSL 1
-_ACEOF
-
-  LIBS="-lssl $LIBS"
-
-fi
-
-
-    if test "$ac_cv_lib_ssl_SSL_connect" != yes; then
-                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ssl with RSAglue/rsaref libs in use" >&5
-$as_echo_n "checking for ssl with RSAglue/rsaref libs in use... " >&6; };
-        OLIBS=$LIBS
-        LIBS="$LIBS -lRSAglue -lrsaref"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSL_connect in -lssl" >&5
-$as_echo_n "checking for SSL_connect in -lssl... " >&6; }
-if ${ac_cv_lib_ssl_SSL_connect+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lssl  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char SSL_connect ();
-int main (void)
-{
-return SSL_connect ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_ssl_SSL_connect=yes
-else
-  ac_cv_lib_ssl_SSL_connect=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ssl_SSL_connect" >&5
-$as_echo "$ac_cv_lib_ssl_SSL_connect" >&6; }
-if test "x$ac_cv_lib_ssl_SSL_connect" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBSSL 1
-_ACEOF
-
-  LIBS="-lssl $LIBS"
-
-fi
-
-        if test "$ac_cv_lib_ssl_SSL_connect" != yes; then
-                        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-            LIBS=$OLIBS
-        else
-            { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        fi
-
-    else
-
-            for ac_header in openssl/x509.h openssl/rsa.h openssl/crypto.h \
-                       openssl/pem.h openssl/ssl.h openssl/err.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
- curl_ssl_msg="enabled (OpenSSL)"
-        OPENSSL_ENABLED=1
-
-$as_echo "#define USE_OPENSSL 1" >>confdefs.h
-
-fi
-
-done
-
-
-      if test $ac_cv_header_openssl_x509_h = no; then
-                                for ac_header in x509.h rsa.h crypto.h pem.h ssl.h err.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-        if test $ac_cv_header_x509_h = yes &&
-           test $ac_cv_header_crypto_h = yes &&
-           test $ac_cv_header_ssl_h = yes; then
-                    curl_ssl_msg="enabled (OpenSSL)"
-          OPENSSL_ENABLED=1
-        fi
-      fi
-    fi
-
-    if test X"$OPENSSL_ENABLED" = X"1"; then
-
-$as_echo "#define USE_SSLEAY 1" >>confdefs.h
-
-
-              for ac_header in openssl/pkcs12.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "openssl/pkcs12.h" "ac_cv_header_openssl_pkcs12_h" "$ac_includes_default"
-if test "x$ac_cv_header_openssl_pkcs12_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_OPENSSL_PKCS12_H 1
-_ACEOF
-
-fi
-
-done
-
-    else
-       LIBS="$CLEANLIBS"
-    fi
-            USE_SSLEAY="$OPENSSL_ENABLED"
-
-
-    if test X"$OPT_SSL" != Xoff &&
-       test "$OPENSSL_ENABLED" != "1"; then
-      as_fn_error $? "OpenSSL libs and/or directories were not found where specified!" "$LINENO" 5
-    fi
-  fi
-
-  if test X"$OPENSSL_ENABLED" = X"1"; then
-            ac_fn_c_check_func "$LINENO" "ENGINE_init" "ac_cv_func_ENGINE_init"
-if test "x$ac_cv_func_ENGINE_init" = xyes; then :
-
-                for ac_header in openssl/engine.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "openssl/engine.h" "ac_cv_header_openssl_engine_h" "$ac_includes_default"
-if test "x$ac_cv_header_openssl_engine_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_OPENSSL_ENGINE_H 1
-_ACEOF
-
-fi
-
-done
-
-                for ac_func in ENGINE_load_builtin_engines
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-done
-
-
-fi
-
-
-
-    for ac_func in RAND_status \
-                    RAND_screen \
-                    RAND_egd \
-                    ENGINE_cleanup \
-                    CRYPTO_cleanup_all_ex_data \
-                    SSL_get_shutdown
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-done
-
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for yaSSL using OpenSSL compatibility mode" >&5
-$as_echo_n "checking for yaSSL using OpenSSL compatibility mode... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <openssl/ssl.h>
-
-int main (void)
-{
-
-#if defined(YASSL_VERSION) && defined(OPENSSL_VERSION_NUMBER)
-        int dummy = SSL_ERROR_NONE;
-#else
-        Not the yaSSL OpenSSL compatibility header.
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define USE_YASSLEMUL 1
-_ACEOF
-
-      curl_ssl_msg="enabled (OpenSSL emulation by yaSSL)"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-
-  if test "$OPENSSL_ENABLED" = "1"; then
-    if test -n "$LIB_OPENSSL"; then
-
-       LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$LIB_OPENSSL"
-       export LD_LIBRARY_PATH
-       { $as_echo "$as_me:${as_lineno-$LINENO}: Added $LIB_OPENSSL to LD_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $LIB_OPENSSL to LD_LIBRARY_PATH" >&6;}
-    fi
-  fi
-
-fi
-
-
-
-_cppflags=$CPPFLAGS
-_ldflags=$LDFLAGS
-
-# Check whether --with-zlib was given.
-if test "${with_zlib+set}" = set; then :
-  withval=$with_zlib; OPT_ZLIB="$withval"
-fi
-
-
-if test "$OPT_ZLIB" = "no" ; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: zlib disabled" >&5
-$as_echo "$as_me: WARNING: zlib disabled" >&2;}
-else
-  if test "$OPT_ZLIB" = "yes" ; then
-     OPT_ZLIB=""
-  fi
-
-  if test -z "$OPT_ZLIB" ; then
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inflateEnd in -lz" >&5
-$as_echo_n "checking for inflateEnd in -lz... " >&6; }
-if ${ac_cv_lib_z_inflateEnd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lz  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char inflateEnd ();
-int main (void)
-{
-return inflateEnd ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_z_inflateEnd=yes
-else
-  ac_cv_lib_z_inflateEnd=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_inflateEnd" >&5
-$as_echo "$ac_cv_lib_z_inflateEnd" >&6; }
-if test "x$ac_cv_lib_z_inflateEnd" = xyes; then :
-                     HAVE_LIBZ="1"
-else
-                     OPT_ZLIB="/usr/local"
-fi
-
-
-  fi
-
-    if test -n "$OPT_ZLIB"; then
-     CPPFLAGS="$CPPFLAGS -I$OPT_ZLIB/include"
-     LDFLAGS="$LDFLAGS -L$OPT_ZLIB/lib$libsuff"
-  fi
-
-  ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_zlib_h" = xyes; then :
-
-        HAVE_ZLIB_H="1"
-        if test "$HAVE_LIBZ" != "1"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gzread in -lz" >&5
-$as_echo_n "checking for gzread in -lz... " >&6; }
-if ${ac_cv_lib_z_gzread+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lz  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char gzread ();
-int main (void)
-{
-return gzread ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_z_gzread=yes
-else
-  ac_cv_lib_z_gzread=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_gzread" >&5
-$as_echo "$ac_cv_lib_z_gzread" >&6; }
-if test "x$ac_cv_lib_z_gzread" = xyes; then :
-
-                                      HAVE_LIBZ="1"
-
-else
-   CPPFLAGS=$_cppflags
-                   LDFLAGS=$_ldflags
-fi
-
-    fi
-
-else
-
-            CPPFLAGS=$_cppflags
-      LDFLAGS=$_ldflags
-
-fi
-
-
-
-  if test "$HAVE_LIBZ" = "1" && test "$HAVE_ZLIB_H" != "1"
-  then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: configure found only the libz lib, not the header file!" >&5
-$as_echo "$as_me: WARNING: configure found only the libz lib, not the header file!" >&2;}
-    HAVE_LIBZ=""
-  elif test "$HAVE_LIBZ" != "1" && test "$HAVE_ZLIB_H" = "1"
-  then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: configure found only the libz header file, not the lib!" >&5
-$as_echo "$as_me: WARNING: configure found only the libz header file, not the lib!" >&2;}
-  elif test "$HAVE_LIBZ" = "1" && test "$HAVE_ZLIB_H" = "1"
-  then
-
-
-$as_echo "#define HAVE_ZLIB_H 1" >>confdefs.h
-
-
-$as_echo "#define HAVE_LIBZ 1" >>confdefs.h
-
-
-    CURL_LIBS="$CURL_LIBS -lz"
-    LIBS="$LIBS -lz"
-
-        AMFIXLIB="1"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: found both libz and libz.h header" >&5
-$as_echo "$as_me: found both libz and libz.h header" >&6;}
-    curl_zlib_msg="enabled"
-  fi
-fi
-
- if test x"$AMFIXLIB" = x1; then
-  HAVE_LIBZ_TRUE=
-  HAVE_LIBZ_FALSE='#'
-else
-  HAVE_LIBZ_TRUE='#'
-  HAVE_LIBZ_FALSE=
-fi
-
-
-
-if test X"$OPENSSL_ENABLED" = X"1"; then
-
-# Check whether --with-egd-socket was given.
-if test "${with_egd_socket+set}" = set; then :
-  withval=$with_egd_socket;  EGD_SOCKET="$withval"
-
-fi
-
-  if test -n "$EGD_SOCKET" ; then
-
-cat >>confdefs.h <<_ACEOF
-#define EGD_SOCKET "$EGD_SOCKET"
-_ACEOF
-
-  fi
-
-
-# Check whether --with-random was given.
-if test "${with_random+set}" = set; then :
-  withval=$with_random;  RANDOM_FILE="$withval"
-else
-
-                    as_ac_File=`$as_echo "ac_cv_file_"/dev/urandom"" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/dev/urandom\"" >&5
-$as_echo_n "checking for \"/dev/urandom\"... " >&6; }
-if eval \${$as_ac_File+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  test "$cross_compiling" = yes &&
-  as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5
-if test -r ""/dev/urandom""; then
-  eval "$as_ac_File=yes"
-else
-  eval "$as_ac_File=no"
-fi
-fi
-eval ac_res=\$$as_ac_File
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_File"\" = x"yes"; then :
-   RANDOM_FILE="/dev/urandom"
-fi
-
-
-
-fi
-
-  if test -n "$RANDOM_FILE" && test X"$RANDOM_FILE" != Xno ; then
-
-
-cat >>confdefs.h <<_ACEOF
-#define RANDOM_FILE "$RANDOM_FILE"
-_ACEOF
-
-  fi
-fi
-
-
-OPT_GNUTLS=no
-
-
-# Check whether --with-gnutls was given.
-if test "${with_gnutls+set}" = set; then :
-  withval=$with_gnutls; OPT_GNUTLS=$withval
-fi
-
-
-if test "$OPENSSL_ENABLED" != "1"; then
-
-  if test X"$OPT_GNUTLS" != Xno; then
-
-    addld=""
-    if test "x$OPT_GNUTLS" = "xyes"; then
-
-
-    PKGCONFIG="no"
-
-    if test x$cross_compiling = xyes; then
-            # Extract the first word of "${host}-pkg-config", so it can be a program name with args.
-set dummy ${host}-pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $PKGCONFIG in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_PKGCONFIG" && ac_cv_path_PKGCONFIG="no"
-  ;;
-esac
-fi
-PKGCONFIG=$ac_cv_path_PKGCONFIG
-if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    fi
-
-    if test x$PKGCONFIG = xno; then
-      # Extract the first word of "pkg-config", so it can be a program name with args.
-set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $PKGCONFIG in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_PKGCONFIG" && ac_cv_path_PKGCONFIG="no"
-  ;;
-esac
-fi
-PKGCONFIG=$ac_cv_path_PKGCONFIG
-if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    fi
-
-    if test x$PKGCONFIG != xno; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gnutls options with pkg-config" >&5
-$as_echo_n "checking for gnutls options with pkg-config... " >&6; }
-            itexists=`
-    if test -n ""; then
-      PKG_CONFIG_LIBDIR=""
-      export PKG_CONFIG_LIBDIR
-    fi
-         $PKGCONFIG --exists gnutls >/dev/null 2>&1 && echo 1`
-
-      if test -z "$itexists"; then
-                        PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
-      fi
-    fi
-
-
-      if test "$PKGCONFIG" != "no" ; then
-        addlib=`$PKGCONFIG --libs-only-l gnutls`
-        addld=`$PKGCONFIG --libs-only-L gnutls`
-        addcflags=`$PKGCONFIG --cflags-only-I gnutls`
-        version=`$PKGCONFIG --modversion gnutls`
-        gtlslib=`echo $addld | $SED -e 's/-L//'`
-      else
-                        check=`libgnutls-config --version 2>/dev/null`
-        if test -n "$check"; then
-          addlib=`libgnutls-config --libs`
-          addcflags=`libgnutls-config --cflags`
-          version=`libgnutls-config --version`
-          gtlslib=`libgnutls-config --prefix`/lib$libsuff
-        fi
-      fi
-    else
-                  cfg=$OPT_GNUTLS/bin/libgnutls-config
-      check=`$cfg --version 2>/dev/null`
-      if test -n "$check"; then
-        addlib=`$cfg --libs`
-        addcflags=`$cfg --cflags`
-        version=`$cfg --version`
-        gtlslib=`$cfg --prefix`/lib$libsuff
-      else
-                addlib=-lgnutls
-        addld=-L$OPT_GNUTLS/lib$libsuff
-        addcflags=-I$OPT_GNUTLS/include
-        version="" # we just don't know
-        gtlslib=$OPT_GNUTLS/lib$libsuff
-      fi
-    fi
-
-    if test -z "$version"; then
-            version="unknown"
-    fi
-
-    if test -n "$addlib"; then
-
-      CLEANLIBS="$LIBS"
-      CLEANCPPFLAGS="$CPPFLAGS"
-      CLEADLDFLAGS="$LDFLAGS"
-
-      LIBS="$LIBS $addlib"
-      LDFLAGS="$LDFLAGS $addld"
-      if test "$addcflags" != "-I/usr/include"; then
-         CPPFLAGS="$CPPFLAGS $addcflags"
-      fi
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gnutls_check_version in -lgnutls" >&5
-$as_echo_n "checking for gnutls_check_version in -lgnutls... " >&6; }
-if ${ac_cv_lib_gnutls_gnutls_check_version+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lgnutls  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char gnutls_check_version ();
-int main (void)
-{
-return gnutls_check_version ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_gnutls_gnutls_check_version=yes
-else
-  ac_cv_lib_gnutls_gnutls_check_version=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gnutls_gnutls_check_version" >&5
-$as_echo "$ac_cv_lib_gnutls_gnutls_check_version" >&6; }
-if test "x$ac_cv_lib_gnutls_gnutls_check_version" = xyes; then :
-
-
-$as_echo "#define USE_GNUTLS 1" >>confdefs.h
-
-       USE_GNUTLS=1
-
-       GNUTLS_ENABLED=1
-       USE_GNUTLS="yes"
-       curl_ssl_msg="enabled (GnuTLS)"
-
-else
-
-         LIBS="$CLEANLIBS"
-         CPPFLAGS="$CLEANCPPFLAGS"
-
-fi
-
-
-      if test "x$USE_GNUTLS" = "xyes"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: detected GnuTLS version $version" >&5
-$as_echo "$as_me: detected GnuTLS version $version" >&6;}
-
-        if test -n "$gtlslib"; then
-
-          LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$gtlslib"
-          export LD_LIBRARY_PATH
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Added $gtlslib to LD_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $gtlslib to LD_LIBRARY_PATH" >&6;}
-        fi
-      fi
-
-    fi
-
-  fi
-fi
-
-OPT_NSS=no
-
-
-# Check whether --with-nss was given.
-if test "${with_nss+set}" = set; then :
-  withval=$with_nss; OPT_NSS=$withval
-fi
-
-
-if test "$OPENSSL_ENABLED" != "1" -a "$GNUTLS_ENABLED" != "1"; then
-
-  if test X"$OPT_NSS" != Xno; then
-    if test "x$OPT_NSS" = "xyes"; then
-
-
-
-    PKGCONFIG="no"
-
-    if test x$cross_compiling = xyes; then
-            # Extract the first word of "${host}-pkg-config", so it can be a program name with args.
-set dummy ${host}-pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $PKGCONFIG in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_PKGCONFIG" && ac_cv_path_PKGCONFIG="no"
-  ;;
-esac
-fi
-PKGCONFIG=$ac_cv_path_PKGCONFIG
-if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    fi
-
-    if test x$PKGCONFIG = xno; then
-      # Extract the first word of "pkg-config", so it can be a program name with args.
-set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $PKGCONFIG in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_PKGCONFIG" && ac_cv_path_PKGCONFIG="no"
-  ;;
-esac
-fi
-PKGCONFIG=$ac_cv_path_PKGCONFIG
-if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    fi
-
-    if test x$PKGCONFIG != xno; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nss options with pkg-config" >&5
-$as_echo_n "checking for nss options with pkg-config... " >&6; }
-            itexists=`
-    if test -n ""; then
-      PKG_CONFIG_LIBDIR=""
-      export PKG_CONFIG_LIBDIR
-    fi
-         $PKGCONFIG --exists nss >/dev/null 2>&1 && echo 1`
-
-      if test -z "$itexists"; then
-                        PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
-      fi
-    fi
-
-
-      if test "$PKGCONFIG" != "no" ; then
-        addlib=`$PKGCONFIG --libs nss`
-        addcflags=`$PKGCONFIG --cflags nss`
-        version=`$PKGCONFIG --modversion nss`
-        nssprefix=`$PKGCONFIG --variable=prefix nss`
-      else
-
-        check=`nss-config --version 2>/dev/null`
-        if test -n "$check"; then
-          addlib=`nss-config --libs`
-          addcflags=`nss-config --cflags`
-          version=`nss-config --version`
-          nssprefix=`nss-config --prefix`
-        else
-          addlib="-lnss3"
-          addcflags=""
-          version="unknown"
-        fi
-      fi
-    else
-        # Without pkg-config, we'll kludge in some defaults
-        addlib="-L$OPT_NSS/lib -lssl3 -lsmime3 -lnss3 -lplds4 -lplc4 -lnspr4 -lpthread -ldl"
-        addcflags="-I$OPT_NSS/include"
-        version="unknown"
-        nssprefix=$OPT_NSS
-    fi
-
-            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PK11_CreateGenericObject in -lnss3" >&5
-$as_echo_n "checking for PK11_CreateGenericObject in -lnss3... " >&6; }
-if ${ac_cv_lib_nss3_PK11_CreateGenericObject+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lnss3  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char PK11_CreateGenericObject ();
-int main (void)
-{
-return PK11_CreateGenericObject ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_nss3_PK11_CreateGenericObject=yes
-else
-  ac_cv_lib_nss3_PK11_CreateGenericObject=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nss3_PK11_CreateGenericObject" >&5
-$as_echo "$ac_cv_lib_nss3_PK11_CreateGenericObject" >&6; }
-if test "x$ac_cv_lib_nss3_PK11_CreateGenericObject" = xyes; then :
-
-
-$as_echo "#define HAVE_PK11_CREATEGENERICOBJECT 1" >>confdefs.h
-
-     HAVE_PK11_CREATEGENERICOBJECT=1
-
-
-fi
-
-    if test -n "$addlib"; then
-
-      CLEANLIBS="$LIBS"
-      CLEANCPPFLAGS="$CPPFLAGS"
-
-      LIBS="$LIBS $addlib"
-      if test "$addcflags" != "-I/usr/include"; then
-         CPPFLAGS="$CPPFLAGS $addcflags"
-      fi
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for NSS_Initialize in -lnss3" >&5
-$as_echo_n "checking for NSS_Initialize in -lnss3... " >&6; }
-if ${ac_cv_lib_nss3_NSS_Initialize+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lnss3  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char NSS_Initialize ();
-int main (void)
-{
-return NSS_Initialize ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_nss3_NSS_Initialize=yes
-else
-  ac_cv_lib_nss3_NSS_Initialize=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nss3_NSS_Initialize" >&5
-$as_echo "$ac_cv_lib_nss3_NSS_Initialize" >&6; }
-if test "x$ac_cv_lib_nss3_NSS_Initialize" = xyes; then :
-
-
-$as_echo "#define USE_NSS 1" >>confdefs.h
-
-       USE_NSS=1
-
-       USE_NSS="yes"
-       NSS_ENABLED=1
-       curl_ssl_msg="enabled (NSS)"
-
-else
-
-         LIBS="$CLEANLIBS"
-         CPPFLAGS="$CLEANCPPFLAGS"
-
-fi
-
-
-      if test "x$USE_NSS" = "xyes"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: detected NSS version $version" >&5
-$as_echo "$as_me: detected NSS version $version" >&6;}
-
-
-        LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$nssprefix/lib$libsuff"
-        export LD_LIBRARY_PATH
-        { $as_echo "$as_me:${as_lineno-$LINENO}: Added $nssprefix/lib$libsuff to LD_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $nssprefix/lib$libsuff to LD_LIBRARY_PATH" >&6;}
-      fi
-
-    fi
-
-  fi
-fi
-if test "x$OPENSSL_ENABLED$GNUTLS_ENABLED$NSS_ENABLED" = "x"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more." >&5
-$as_echo "$as_me: WARNING: SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more." >&2;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Use --with-ssl, --with-gnutls or --with-nss to address this." >&5
-$as_echo "$as_me: WARNING: Use --with-ssl, --with-gnutls or --with-nss to address this." >&2;}
-else
-  # SSL is enabled, genericly
-
-  SSL_ENABLED="1"
-fi
-
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking default CA cert bundle/path" >&5
-$as_echo_n "checking default CA cert bundle/path... " >&6; }
-
-
-# Check whether --with-ca-bundle was given.
-if test "${with_ca_bundle+set}" = set; then :
-  withval=$with_ca_bundle;
-    want_ca="$withval"
-    if test "x$want_ca" = "xyes"; then
-      as_fn_error $? "--with-ca-bundle=FILE requires a path to the CA bundle" "$LINENO" 5
-    fi
-
-else
-   want_ca="unset"
-fi
-
-
-# Check whether --with-ca-path was given.
-if test "${with_ca_path+set}" = set; then :
-  withval=$with_ca_path;
-    want_capath="$withval"
-    if test "x$want_capath" = "xyes"; then
-      as_fn_error $? "--with-ca-path=DIRECTORY requires a path to the CA path directory" "$LINENO" 5
-    fi
-
-else
-   want_capath="unset"
-fi
-
-
-  if test "x$want_ca" != "xno" -a "x$want_ca" != "xunset" -a \
-          "x$want_capath" != "xno" -a "x$want_capath" != "xunset"; then
-        as_fn_error $? "Can't specify both --with-ca-bundle and --with-ca-path." "$LINENO" 5
-  elif test "x$want_ca" != "xno" -a "x$want_ca" != "xunset"; then
-        ca="$want_ca"
-    capath="no"
-  elif test "x$want_capath" != "xno" -a "x$want_capath" != "xunset"; then
-        if test "x$OPENSSL_ENABLED" != "x1"; then
-      as_fn_error $? "--with-ca-path only works with openSSL" "$LINENO" 5
-    fi
-    capath="$want_capath"
-    ca="no"
-  else
-                ca="no"
-    capath="no"
-    if test "x$want_ca" = "xunset"; then
-                        if test "x$prefix" != xNONE; then
-        cac="${prefix}/share/curl/curl-ca-bundle.crt"
-      else
-        cac="$ac_default_prefix/share/curl/curl-ca-bundle.crt"
-      fi
-
-      for a in /etc/ssl/certs/ca-certificates.crt \
-               /etc/pki/tls/certs/ca-bundle.crt \
-               /usr/share/ssl/certs/ca-bundle.crt \
-               /usr/local/share/certs/ca-root.crt \
-               /etc/ssl/cert.pem \
-               "$cac"; do
-        if test -f "$a"; then
-          ca="$a"
-          break
-        fi
-      done
-    fi
-    if test "x$want_capath" = "xunset" -a "x$ca" = "xno" -a \
-            "x$OPENSSL_ENABLED" = "x1"; then
-      for a in /etc/ssl/certs/; do
-        if test -d "$a" && ls "$a"/[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f].0 >/dev/null 2>/dev/null; then
-          capath="$a"
-          break
-        fi
-      done
-    fi
-  fi
-
-
-
-  if test "x$ca" != "xno"; then
-    CURL_CA_BUNDLE='"'$ca'"'
-
-cat >>confdefs.h <<_ACEOF
-#define CURL_CA_BUNDLE "$ca"
-_ACEOF
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ca" >&5
-$as_echo "$ca" >&6; }
-  elif test "x$capath" != "xno"; then
-    CURL_CA_PATH="\"$capath\""
-
-cat >>confdefs.h <<_ACEOF
-#define CURL_CA_PATH "$capath"
-_ACEOF
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $capath (capath)" >&5
-$as_echo "$capath (capath)" >&6; }
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  fi
-
-
-
-OPT_LIBSSH2=off
-
-# Check whether --with-libssh2 was given.
-if test "${with_libssh2+set}" = set; then :
-  withval=$with_libssh2; OPT_LIBSSH2=$withval
-fi
-
-
-if test X"$OPT_LIBSSH2" != Xno; then
-    CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  case "$OPT_LIBSSH2" in
-  yes)
-
-
-    PKGCONFIG="no"
-
-    if test x$cross_compiling = xyes; then
-            # Extract the first word of "${host}-pkg-config", so it can be a program name with args.
-set dummy ${host}-pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $PKGCONFIG in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_PKGCONFIG" && ac_cv_path_PKGCONFIG="no"
-  ;;
-esac
-fi
-PKGCONFIG=$ac_cv_path_PKGCONFIG
-if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    fi
-
-    if test x$PKGCONFIG = xno; then
-      # Extract the first word of "pkg-config", so it can be a program name with args.
-set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $PKGCONFIG in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_PKGCONFIG" && ac_cv_path_PKGCONFIG="no"
-  ;;
-esac
-fi
-PKGCONFIG=$ac_cv_path_PKGCONFIG
-if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-    fi
-
-    if test x$PKGCONFIG != xno; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libssh2 options with pkg-config" >&5
-$as_echo_n "checking for libssh2 options with pkg-config... " >&6; }
-            itexists=`
-    if test -n ""; then
-      PKG_CONFIG_LIBDIR=""
-      export PKG_CONFIG_LIBDIR
-    fi
-         $PKGCONFIG --exists libssh2 >/dev/null 2>&1 && echo 1`
-
-      if test -z "$itexists"; then
-                        PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
-      fi
-    fi
-
-
-    if test "$PKGCONFIG" != "no" ; then
-      LIB_SSH2=`$PKGCONFIG --libs-only-l libssh2`
-      LD_SSH2=`$PKGCONFIG --libs-only-L libssh2`
-      CPP_SSH2=`$PKGCONFIG --cflags-only-I libssh2`
-      version=`$PKGCONFIG --modversion libssh2`
-      DIR_SSH2=`echo $LD_SSH2 | $SED -e 's/-L//'`
-    fi
-
-    ;;
-  off)
-        ;;
-  *)
-        PREFIX_SSH2=$OPT_LIBSSH2
-    ;;
-  esac
-
-    if test -n "$PREFIX_SSH2"; then
-    LD_SSH2=-L${PREFIX_SSH2}/lib$libsuff
-    CPP_SSH2=-I${PREFIX_SSH2}/include
-    DIR_SSH2=${PREFIX_SSH2}/lib$libsuff
-  fi
-
-  LDFLAGS="$LDFLAGS $LD_SSH2"
-  CPPFLAGS="$CPPFLAGS $CPP_SSH2"
-  LIBS="$LIBS $LIB_SSH2"
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libssh2_channel_open_ex in -lssh2" >&5
-$as_echo_n "checking for libssh2_channel_open_ex in -lssh2... " >&6; }
-if ${ac_cv_lib_ssh2_libssh2_channel_open_ex+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lssh2  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char libssh2_channel_open_ex ();
-int main (void)
-{
-return libssh2_channel_open_ex ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_ssh2_libssh2_channel_open_ex=yes
-else
-  ac_cv_lib_ssh2_libssh2_channel_open_ex=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ssh2_libssh2_channel_open_ex" >&5
-$as_echo "$ac_cv_lib_ssh2_libssh2_channel_open_ex" >&6; }
-if test "x$ac_cv_lib_ssh2_libssh2_channel_open_ex" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBSSH2 1
-_ACEOF
-
-  LIBS="-lssh2 $LIBS"
-
-fi
-
-
-  for ac_header in libssh2.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "libssh2.h" "ac_cv_header_libssh2_h" "$ac_includes_default"
-if test "x$ac_cv_header_libssh2_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBSSH2_H 1
-_ACEOF
- curl_ssh_msg="enabled (libSSH2)"
-    LIBSSH2_ENABLED=1
-
-$as_echo "#define USE_LIBSSH2 1" >>confdefs.h
-
-    USE_LIBSSH2=1
-
-
-fi
-
-done
-
-
-  if test X"$OPT_LIBSSH2" != Xoff &&
-     test "$LIBSSH2_ENABLED" != "1"; then
-    as_fn_error $? "libSSH2 libs and/or directories were not found where specified!" "$LINENO" 5
-  fi
-
-  if test "$LIBSSH2_ENABLED" = "1"; then
-    if test -n "$DIR_SSH2"; then
-
-              for ac_func in libssh2_version
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-done
-
-
-       LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DIR_SSH2"
-       export LD_LIBRARY_PATH
-       { $as_echo "$as_me:${as_lineno-$LINENO}: Added $DIR_SSH2 to LD_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $DIR_SSH2 to LD_LIBRARY_PATH" >&6;}
-    fi
-  else
-        LDFLAGS=$CLEANLDFLAGS
-    CPPFLAGS=$CLEANCPPFLAGS
-    LIBS=$CLEANLIBS
-  fi
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build with libidn" >&5
-$as_echo_n "checking whether to build with libidn... " >&6; }
-
-# Check whether --with-libidn was given.
-if test "${with_libidn+set}" = set; then :
-  withval=$with_libidn; LIBIDN="$withval"
-fi
-
-
-case "$LIBIDN" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-       idn=""
-              if test -n "$LIBIDN"; then
-         if test "x$LIBIDN" != "xyes"; then
-            oldLDFLAGS=$LDFLAGS
-            oldCPPFLAGS=$CPPFLAGS
-            LDFLAGS="$LDFLAGS -L$LIBIDN/lib"
-            CPPFLAGS="$CPPFLAGS -I$LIBIDN/include"
-            idn="yes"
-            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for idna_to_ascii_4i in -lidn" >&5
-$as_echo_n "checking for idna_to_ascii_4i in -lidn... " >&6; }
-if ${ac_cv_lib_idn_idna_to_ascii_4i+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lidn  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char idna_to_ascii_4i ();
-int main (void)
-{
-return idna_to_ascii_4i ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_idn_idna_to_ascii_4i=yes
-else
-  ac_cv_lib_idn_idna_to_ascii_4i=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_idn_idna_to_ascii_4i" >&5
-$as_echo "$ac_cv_lib_idn_idna_to_ascii_4i" >&6; }
-if test "x$ac_cv_lib_idn_idna_to_ascii_4i" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBIDN 1
-_ACEOF
-
-  LIBS="-lidn $LIBS"
-
-else
-  idn=""
-                         LDFLAGS=$oldLDFLAGS
-                         CPPFLAGS=$oldCPPFLAGS
-fi
-
-         fi
-       fi
-
-       if test "x$idn" != "xyes"; then
-                    idn="yes"
-          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for idna_to_ascii_lz in -lidn" >&5
-$as_echo_n "checking for idna_to_ascii_lz in -lidn... " >&6; }
-if ${ac_cv_lib_idn_idna_to_ascii_lz+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lidn  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef __cplusplus
-extern "C"
-#endif
-char idna_to_ascii_lz ();
-int main (void)
-{
-return idna_to_ascii_lz ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_idn_idna_to_ascii_lz=yes
-else
-  ac_cv_lib_idn_idna_to_ascii_lz=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_idn_idna_to_ascii_lz" >&5
-$as_echo "$ac_cv_lib_idn_idna_to_ascii_lz" >&6; }
-if test "x$ac_cv_lib_idn_idna_to_ascii_lz" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBIDN 1
-_ACEOF
-
-  LIBS="-lidn $LIBS"
-
-else
-  idn=""
-fi
-
-       fi
-
-       if test "x$idn" = "xyes"; then
-         curl_idn_msg="enabled"
-         IDN_ENABLED=1
-
-                  for ac_func in idn_free idna_strerror tld_strerror
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-done
-
-         for ac_header in idn-free.h tld.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-       fi
-
-       ;;
-esac
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-		   (('a' <= (c) && (c) <= 'i') \
-		     || ('j' <= (c) && (c) <= 'r') \
-		     || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-	|| toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for malloc.h" >&5
-$as_echo_n "checking for malloc.h... " >&6; }
-if ${ac_cv_header_malloc_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <malloc.h>
-
-int main (void)
-{
-
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_malloc_h="yes"
-
-else
-
-      ac_cv_header_malloc_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_malloc_h" >&5
-$as_echo "$ac_cv_header_malloc_h" >&6; }
-  if test "$ac_cv_header_malloc_h" = "yes"; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_MALLOC_H 1
-_ACEOF
-
-    #
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <stdlib.h>
-
-int main (void)
-{
-
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      curl_cv_need_header_malloc_h="no"
-
-else
-
-      curl_cv_need_header_malloc_h="yes"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    #
-    case "$curl_cv_need_header_malloc_h" in
-      yes)
-
-cat >>confdefs.h <<_ACEOF
-#define NEED_MALLOC_H 1
-_ACEOF
-
-        ;;
-    esac
-  fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for memory.h" >&5
-$as_echo_n "checking for memory.h... " >&6; }
-if ${ac_cv_header_memory_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <memory.h>
-
-int main (void)
-{
-
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_memory_h="yes"
-
-else
-
-      ac_cv_header_memory_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_memory_h" >&5
-$as_echo "$ac_cv_header_memory_h" >&6; }
-  if test "$ac_cv_header_memory_h" = "yes"; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_MEMORY_H 1
-_ACEOF
-
-    #
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <stdlib.h>
-
-int main (void)
-{
-
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      curl_cv_need_header_memory_h="no"
-
-else
-
-      curl_cv_need_header_memory_h="yes"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    #
-    case "$curl_cv_need_header_memory_h" in
-      yes)
-
-cat >>confdefs.h <<_ACEOF
-#define NEED_MEMORY_H 1
-_ACEOF
-
-        ;;
-    esac
-  fi
-
-
-for ac_header in sys/types.h \
-        sys/time.h \
-        sys/select.h \
-        sys/socket.h \
-        sys/ioctl.h \
-        sys/uio.h \
-        assert.h \
-        unistd.h \
-        stdlib.h \
-        limits.h \
-        arpa/inet.h \
-        net/if.h \
-        netinet/in.h \
-        sys/un.h \
-        netinet/tcp.h \
-        netdb.h \
-        sys/sockio.h \
-        sys/stat.h \
-        sys/param.h \
-        termios.h \
-        termio.h \
-        sgtty.h \
-        fcntl.h \
-        alloca.h \
-        time.h \
-        io.h \
-        pwd.h \
-        utime.h \
-        sys/utime.h \
-        sys/poll.h \
-        poll.h \
-        socket.h \
-        sys/resource.h \
-        libgen.h \
-        locale.h \
-        errno.h \
-        stdbool.h \
-        arpa/tftp.h \
-        sys/filio.h \
-        setjmp.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_SYS_UN_H
-#include <sys/un.h>
-#endif
-
-
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
-$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
-if ${ac_cv_c_const+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int main (void)
-{
-/* FIXME: Include the comments suggested by Paul. */
-#ifndef __cplusplus
-  /* Ultrix mips cc rejects this.  */
-  typedef int charset[2];
-  const charset cs;
-  /* SunOS 4.1.1 cc rejects this.  */
-  char const *const *pcpcc;
-  char **ppc;
-  /* NEC SVR4.0.2 mips cc rejects this.  */
-  struct point {int x, y;};
-  static struct point const zero = {0,0};
-  /* AIX XL C 1.02.0.0 rejects this.
-     It does not let you subtract one const X* pointer from another in
-     an arm of an if-expression whose if-part is not a constant
-     expression */
-  const char *g = "string";
-  pcpcc = &g + (g ? g-g : 0);
-  /* HPUX 7.0 cc rejects these. */
-  ++pcpcc;
-  ppc = (char**) pcpcc;
-  pcpcc = (char const *const *) ppc;
-  { /* SCO 3.2v4 cc rejects this.  */
-    char *t;
-    char const *s = 0 ? (char *) 0 : (char const *) 0;
-
-    *t++ = 0;
-    if (s) return 0;
-  }
-  { /* Someone thinks the Sun supposedly-ANSI compiler will reject this.  */
-    int x[] = {25, 17};
-    const int *foo = &x[0];
-    ++foo;
-  }
-  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
-    typedef const int *iptr;
-    iptr p = 0;
-    ++p;
-  }
-  { /* AIX XL C 1.02.0.0 rejects this saying
-       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
-    struct s { int j; const int *ap[3]; };
-    struct s *b; b->j = 5;
-  }
-  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
-    const int foo = 10;
-    if (!foo) return 0;
-  }
-  return !cs[0] && !zero.x;
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_c_const=yes
-else
-  ac_cv_c_const=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
-$as_echo "$ac_cv_c_const" >&6; }
-if test $ac_cv_c_const = no; then
-
-$as_echo "#define const /**/" >>confdefs.h
-
-fi
-
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for compiler support of C99 variadic macro style" >&5
-$as_echo_n "checking for compiler support of C99 variadic macro style... " >&6; }
-if ${curl_cv_variadic_macros_c99+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define c99_vmacro3(first, ...) fun3(first, __VA_ARGS__)
-#define c99_vmacro2(first, ...) fun2(first, __VA_ARGS__)
-        int fun3(int arg1, int arg2, int arg3);
-        int fun2(int arg1, int arg2);
-        int fun3(int arg1, int arg2, int arg3)
-        { return arg1 + arg2 + arg3; }
-        int fun2(int arg1, int arg2)
-        { return arg1 + arg2; }
-
-int main (void)
-{
-
-        int res3 = c99_vmacro3(1, 2, 3);
-        int res2 = c99_vmacro2(1, 2);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      curl_cv_variadic_macros_c99="yes"
-
-else
-
-      curl_cv_variadic_macros_c99="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_variadic_macros_c99" >&5
-$as_echo "$curl_cv_variadic_macros_c99" >&6; }
-  case "$curl_cv_variadic_macros_c99" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_VARIADIC_MACROS_C99 1
-_ACEOF
-
-      ;;
-  esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for compiler support of old gcc variadic macro style" >&5
-$as_echo_n "checking for compiler support of old gcc variadic macro style... " >&6; }
-if ${curl_cv_variadic_macros_gcc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define gcc_vmacro3(first, args...) fun3(first, args)
-#define gcc_vmacro2(first, args...) fun2(first, args)
-        int fun3(int arg1, int arg2, int arg3);
-        int fun2(int arg1, int arg2);
-        int fun3(int arg1, int arg2, int arg3)
-        { return arg1 + arg2 + arg3; }
-        int fun2(int arg1, int arg2)
-        { return arg1 + arg2; }
-
-int main (void)
-{
-
-        int res3 = gcc_vmacro3(1, 2, 3);
-        int res2 = gcc_vmacro2(1, 2);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      curl_cv_variadic_macros_gcc="yes"
-
-else
-
-      curl_cv_variadic_macros_gcc="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_variadic_macros_gcc" >&5
-$as_echo "$curl_cv_variadic_macros_gcc" >&6; }
-  case "$curl_cv_variadic_macros_gcc" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_VARIADIC_MACROS_GCC 1
-_ACEOF
-
-      ;;
-  esac
-
-ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
-
-else
-
-cat >>confdefs.h <<_ACEOF
-#define size_t unsigned int
-_ACEOF
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5
-$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
-if ${ac_cv_header_time+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-
-int main (void)
-{
-if ((struct tm *) 0)
-return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_time=yes
-else
-  ac_cv_header_time=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5
-$as_echo "$ac_cv_header_time" >&6; }
-if test $ac_cv_header_time = yes; then
-
-$as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h
-
-fi
-
-
-        for ac_header in sys/types.h sys/time.h time.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timeval" >&5
-$as_echo_n "checking for struct timeval... " >&6; }
-if ${ac_cv_struct_timeval+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-int main (void)
-{
-
-        struct timeval ts;
-        ts.tv_sec  = 0;
-        ts.tv_usec = 0;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_struct_timeval="yes"
-
-else
-
-      ac_cv_struct_timeval="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_struct_timeval" >&5
-$as_echo "$ac_cv_struct_timeval" >&6; }
-  case "$ac_cv_struct_timeval" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_TIMEVAL 1
-_ACEOF
-
-      ;;
-  esac
-
-
-
-    if test "x$cross_compiling" != xyes; then
-
-            { $as_echo "$as_me:${as_lineno-$LINENO}: checking run-time libs availability" >&5
-$as_echo_n "checking run-time libs availability... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-main()
-{
-  return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: fine" >&5
-$as_echo "fine" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
-    as_fn_error $? "one or more libs available at link-time are not available run-time. Libs used at link-time: $LIBS" "$LINENO" 5
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-
-      fi
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of size_t" >&5
-$as_echo_n "checking size of size_t... " >&6; }
-if ${ac_cv_sizeof_size_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (size_t))" "ac_cv_sizeof_size_t"        "$ac_includes_default"; then :
-
-else
-  if test "$ac_cv_type_size_t" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (size_t)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_size_t=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_size_t" >&5
-$as_echo "$ac_cv_sizeof_size_t" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_SIZE_T $ac_cv_sizeof_size_t
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long" >&5
-$as_echo_n "checking size of long... " >&6; }
-if ${ac_cv_sizeof_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long"        "$ac_includes_default"; then :
-
-else
-  if test "$ac_cv_type_long" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (long)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_long=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
-$as_echo "$ac_cv_sizeof_long" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_LONG $ac_cv_sizeof_long
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5
-$as_echo_n "checking size of int... " >&6; }
-if ${ac_cv_sizeof_int+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int"        "$ac_includes_default"; then :
-
-else
-  if test "$ac_cv_type_int" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (int)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_int=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
-$as_echo "$ac_cv_sizeof_int" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_INT $ac_cv_sizeof_int
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of short" >&5
-$as_echo_n "checking size of short... " >&6; }
-if ${ac_cv_sizeof_short+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short))" "ac_cv_sizeof_short"        "$ac_includes_default"; then :
-
-else
-  if test "$ac_cv_type_short" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (short)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_short=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short" >&5
-$as_echo "$ac_cv_sizeof_short" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_SHORT $ac_cv_sizeof_short
-_ACEOF
-
-
-
-  if test -z "$ac_cv_sizeof_long" ||
-    test "$ac_cv_sizeof_long" -eq "0"; then
-    as_fn_error $? "cannot find out size of long." "$LINENO" 5
-  fi
-
-cat >>confdefs.h <<_EOF
-#define CURL_SIZEOF_LONG $ac_cv_sizeof_long
-_EOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of time_t" >&5
-$as_echo_n "checking size of time_t... " >&6; }
-if ${ac_cv_sizeof_time_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (time_t))" "ac_cv_sizeof_time_t"        "$ac_includes_default"; then :
-
-else
-  if test "$ac_cv_type_time_t" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (time_t)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_time_t=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_time_t" >&5
-$as_echo "$ac_cv_sizeof_time_t" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_TIME_T $ac_cv_sizeof_time_t
-_ACEOF
-
-
-# The cast to long int works around a bug in the HP C Compiler
-# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
-# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-# This bug is HP SR number 8606223364.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of off_t" >&5
-$as_echo_n "checking size of off_t... " >&6; }
-if ${ac_cv_sizeof_off_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (off_t))" "ac_cv_sizeof_off_t"        "$ac_includes_default"; then :
-
-else
-  if test "$ac_cv_type_off_t" = yes; then
-     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "cannot compute sizeof (off_t)
-See \`config.log' for more details" "$LINENO" 5; }
-   else
-     ac_cv_sizeof_off_t=0
-   fi
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_off_t" >&5
-$as_echo "$ac_cv_sizeof_off_t" >&6; }
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_OFF_T $ac_cv_sizeof_off_t
-_ACEOF
-
-
-
-soname_bump=no
-if test x"$ac_cv_native_windows" != "xyes" &&
-   test $ac_cv_sizeof_off_t -ne $curl_sizeof_curl_off_t; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: This libcurl built is probably not ABI compatible with previous" >&5
-$as_echo "$as_me: WARNING: This libcurl built is probably not ABI compatible with previous" >&2;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: builds! You MUST read lib/README.curl_off_t to figure it out." >&5
-$as_echo "$as_me: WARNING: builds! You MUST read lib/README.curl_off_t to figure it out." >&2;}
-  soname_bump=yes
-fi
-
-
-ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "$ac_includes_default"
-if test "x$ac_cv_type_long_long" = xyes; then :
-
-$as_echo "#define HAVE_LONGLONG 1" >>confdefs.h
-
-   longlong="yes"
-
-fi
-
-
-if test "xyes" = "x$longlong"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if numberLL works" >&5
-$as_echo_n "checking if numberLL works... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-      long long val = 1000LL;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define HAVE_LL 1" >>confdefs.h
-
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-
-# check for ssize_t
-ac_fn_c_check_type "$LINENO" "ssize_t" "ac_cv_type_ssize_t" "$ac_includes_default"
-if test "x$ac_cv_type_ssize_t" = xyes; then :
-
-else
-
-$as_echo "#define ssize_t int" >>confdefs.h
-
-fi
-
-
-# check for bool type
-ac_fn_c_check_type "$LINENO" "bool" "ac_cv_type_bool" "
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_STDBOOL_H
-#include <stdbool.h>
-#endif
-
-"
-if test "x$ac_cv_type_bool" = xyes; then :
-
-
-$as_echo "#define HAVE_BOOL_T 1" >>confdefs.h
-
-
-fi
-
-
-
-curl_includes_ws2tcpip="\
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#    ifdef HAVE_WS2TCPIP_H
-#       include <ws2tcpip.h>
-#    endif
-#  endif
-#endif
-/* includes end */"
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for windows.h" >&5
-$as_echo_n "checking for windows.h... " >&6; }
-if ${ac_cv_header_windows_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINDOWS_H shall not be defined.
-#else
-        int dummy=2*WINVER;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_windows_h="yes"
-
-else
-
-      ac_cv_header_windows_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_windows_h" >&5
-$as_echo "$ac_cv_header_windows_h" >&6; }
-  case "$ac_cv_header_windows_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINDOWS_H 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define WIN32_LEAN_AND_MEAN 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock2.h" >&5
-$as_echo_n "checking for winsock2.h... " >&6; }
-if ${ac_cv_header_winsock2_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WINSOCK2_H shall not be defined.
-#else
-        int dummy=2*IPPROTO_ESP;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_winsock2_h="yes"
-
-else
-
-      ac_cv_header_winsock2_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_winsock2_h" >&5
-$as_echo "$ac_cv_header_winsock2_h" >&6; }
-  case "$ac_cv_header_winsock2_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK2_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ws2tcpip.h" >&5
-$as_echo_n "checking for ws2tcpip.h... " >&6; }
-if ${ac_cv_header_ws2tcpip_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-#include <ws2tcpip.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WS2TCPIP_H shall not be defined.
-#else
-        int dummy=2*IP_PKTINFO;
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_header_ws2tcpip_h="yes"
-
-else
-
-      ac_cv_header_ws2tcpip_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_ws2tcpip_h" >&5
-$as_echo "$ac_cv_header_ws2tcpip_h" >&6; }
-  case "$ac_cv_header_ws2tcpip_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WS2TCPIP_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-
-curl_includes_sys_socket="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_sys_socket
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-curl_preprocess_callconv="\
-/* preprocess start */
-#ifdef HAVE_WINDOWS_H
-#  define FUNCALLCONV __stdcall
-#else
-#  define FUNCALLCONV
-#endif
-/* preprocess end */"
-
-
-        #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for curl_socklen_t data type" >&5
-$as_echo_n "checking for curl_socklen_t data type... " >&6; }
-  curl_typeof_curl_socklen_t="unknown"
-  for arg1 in int SOCKET; do
-    for arg2 in 'struct sockaddr' void; do
-      for t in socklen_t int size_t 'unsigned int' long 'unsigned long' void; do
-        if test "$curl_typeof_curl_socklen_t" = "unknown"; then
-          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-              $curl_includes_ws2tcpip
-              $curl_includes_sys_socket
-              $curl_preprocess_callconv
-              extern int FUNCALLCONV getpeername($arg1, $arg2 *, $t *);
-
-int main (void)
-{
-
-              $t *lenptr = 0;
-              if(0 != getpeername(0, 0, lenptr))
-                return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-            curl_typeof_curl_socklen_t="$t"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-        fi
-      done
-    done
-  done
-  for t in socklen_t int; do
-    if test "$curl_typeof_curl_socklen_t" = "void"; then
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_sys_socket
-          typedef $t curl_socklen_t;
-
-int main (void)
-{
-
-          curl_socklen_t dummy;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        curl_typeof_curl_socklen_t="$t"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-  done
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_typeof_curl_socklen_t" >&5
-$as_echo "$curl_typeof_curl_socklen_t" >&6; }
-  if test "$curl_typeof_curl_socklen_t" = "void" ||
-    test "$curl_typeof_curl_socklen_t" = "unknown"; then
-    as_fn_error $? "cannot find data type for curl_socklen_t." "$LINENO" 5
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of curl_socklen_t" >&5
-$as_echo_n "checking size of curl_socklen_t... " >&6; }
-  curl_sizeof_curl_socklen_t="unknown"
-  curl_pull_headers_socklen_t="unknown"
-  if test "$ac_cv_header_ws2tcpip_h" = "yes"; then
-    tst_pull_header_checks='none ws2tcpip'
-    tst_size_checks='4'
-  else
-    tst_pull_header_checks='none systypes syssocket'
-    tst_size_checks='4 8 2'
-  fi
-  for tst_size in $tst_size_checks; do
-    for tst_pull_headers in $tst_pull_header_checks; do
-      if test "$curl_sizeof_curl_socklen_t" = "unknown"; then
-        case $tst_pull_headers in
-          ws2tcpip)
-            tmp_includes="$curl_includes_ws2tcpip"
-            ;;
-          systypes)
-            tmp_includes="$curl_includes_sys_types"
-            ;;
-          syssocket)
-            tmp_includes="$curl_includes_sys_socket"
-            ;;
-          *)
-            tmp_includes=""
-            ;;
-        esac
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-            $tmp_includes
-            typedef $curl_typeof_curl_socklen_t curl_socklen_t;
-            typedef char dummy_arr[sizeof(curl_socklen_t) == $tst_size ? 1 : -1];
-
-int main (void)
-{
-
-            curl_socklen_t dummy;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-          curl_sizeof_curl_socklen_t="$tst_size"
-          curl_pull_headers_socklen_t="$tst_pull_headers"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-      fi
-    done
-  done
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_sizeof_curl_socklen_t" >&5
-$as_echo "$curl_sizeof_curl_socklen_t" >&6; }
-  if test "$curl_sizeof_curl_socklen_t" = "unknown"; then
-    as_fn_error $? "cannot find out size of curl_socklen_t." "$LINENO" 5
-  fi
-  #
-  case $curl_pull_headers_socklen_t in
-    ws2tcpip)
-
-cat >>confdefs.h <<_EOF
-#define CURL_PULL_WS2TCPIP_H 1
-_EOF
-
-      ;;
-    systypes)
-
-cat >>confdefs.h <<_EOF
-#define CURL_PULL_SYS_TYPES_H 1
-_EOF
-
-      ;;
-    syssocket)
-
-cat >>confdefs.h <<_EOF
-#define CURL_PULL_SYS_TYPES_H 1
-_EOF
-
-
-cat >>confdefs.h <<_EOF
-#define CURL_PULL_SYS_SOCKET_H 1
-_EOF
-
-      ;;
-  esac
-
-cat >>confdefs.h <<_EOF
-#define CURL_TYPEOF_CURL_SOCKLEN_T $curl_typeof_curl_socklen_t
-_EOF
-
-
-cat >>confdefs.h <<_EOF
-#define CURL_SIZEOF_CURL_SOCKLEN_T $curl_sizeof_curl_socklen_t
-_EOF
-
-
-
-
-  ac_fn_c_check_type "$LINENO" "in_addr_t" "ac_cv_type_in_addr_t" "
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-
-"
-if test "x$ac_cv_type_in_addr_t" = xyes; then :
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for in_addr_t equivalent" >&5
-$as_echo_n "checking for in_addr_t equivalent... " >&6; }
-if ${curl_cv_in_addr_t_equiv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-      curl_cv_in_addr_t_equiv="unknown"
-      for t in "unsigned long" int size_t unsigned long; do
-        if test "$curl_cv_in_addr_t_equiv" = "unknown"; then
-          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-
-int main (void)
-{
-
-              $t data = inet_addr ("1.2.3.4");
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-            curl_cv_in_addr_t_equiv="$t"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-        fi
-      done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_in_addr_t_equiv" >&5
-$as_echo "$curl_cv_in_addr_t_equiv" >&6; }
-    case "$curl_cv_in_addr_t_equiv" in
-      unknown)
-        as_fn_error $? "Cannot find a type to use in place of in_addr_t" "$LINENO" 5
-        ;;
-      *)
-
-cat >>confdefs.h <<_ACEOF
-#define in_addr_t $curl_cv_in_addr_t_equiv
-_ACEOF
-
-        ;;
-    esac
-
-fi
-
-
-
-
-   ac_fn_c_check_type "$LINENO" "struct sockaddr_storage" "ac_cv_type_struct_sockaddr_storage" "
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-
-"
-if test "x$ac_cv_type_struct_sockaddr_storage" = xyes; then :
-
-$as_echo "#define HAVE_STRUCT_SOCKADDR_STORAGE 1" >>confdefs.h
-
-fi
-
-
-
-
-  for ac_header in signal.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "signal.h" "ac_cv_header_signal_h" "$ac_includes_default"
-if test "x$ac_cv_header_signal_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGNAL_H 1
-_ACEOF
-
-fi
-
-done
-
-  ac_fn_c_check_type "$LINENO" "sig_atomic_t" "ac_cv_type_sig_atomic_t" "
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-
-"
-if test "x$ac_cv_type_sig_atomic_t" = xyes; then :
-
-
-$as_echo "#define HAVE_SIG_ATOMIC_T 1" >>confdefs.h
-
-
-fi
-
-  case "$ac_cv_type_sig_atomic_t" in
-    yes)
-      #
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sig_atomic_t is already defined as volatile" >&5
-$as_echo_n "checking if sig_atomic_t is already defined as volatile... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-
-int main (void)
-{
-
-          static volatile sig_atomic_t dummy = 0;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        ac_cv_sig_atomic_t_volatile="no"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        ac_cv_sig_atomic_t_volatile="yes"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-      #
-      if test "$ac_cv_sig_atomic_t_volatile" = "yes"; then
-
-$as_echo "#define HAVE_SIG_ATOMIC_T_VOLATILE 1" >>confdefs.h
-
-      fi
-      ;;
-  esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
-$as_echo_n "checking return type of signal handlers... " >&6; }
-if ${ac_cv_type_signal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <signal.h>
-
-int main (void)
-{
-return *(signal (0, 0)) (0) == 1;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_type_signal=int
-else
-  ac_cv_type_signal=void
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5
-$as_echo "$ac_cv_type_signal" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define RETSIGTYPE $ac_cv_type_signal
-_ACEOF
-
-
-
-
-    for ac_header in sys/select.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for select" >&5
-$as_echo_n "checking for select... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-#ifndef HAVE_WINDOWS_H
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-
-int main (void)
-{
-
-      select(0, 0, 0, 0, 0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    curl_cv_select="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    curl_cv_select="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$curl_cv_select" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking types of args and return type for select" >&5
-$as_echo_n "checking types of args and return type for select... " >&6; }
-if ${curl_cv_func_select_args+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-      curl_cv_func_select_args="unknown"
-      for sel_retv in 'int' 'ssize_t'; do
-        for sel_arg1 in 'int' 'ssize_t' 'size_t' 'unsigned long int' 'unsigned int'; do
-          for sel_arg234 in 'fd_set *' 'int *' 'void *'; do
-            for sel_arg5 in 'struct timeval *' 'const struct timeval *'; do
-              if test "$curl_cv_func_select_args" = "unknown"; then
-                cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define SELECTCALLCONV PASCAL
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-#ifndef HAVE_WINDOWS_H
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define SELECTCALLCONV
-#endif
-#ifndef HAVE_STRUCT_TIMEVAL
-                    struct timeval {
-                      long tv_sec;
-                      long tv_usec;
-                    };
-#endif
-                    extern $sel_retv SELECTCALLCONV select($sel_arg1,
-                                                           $sel_arg234,
-                                                           $sel_arg234,
-                                                           $sel_arg234,
-                                                           $sel_arg5);
-
-int main (void)
-{
-
-                    $sel_arg1   nfds=0;
-                    $sel_arg234 rfds=0;
-                    $sel_arg234 wfds=0;
-                    $sel_arg234 efds=0;
-                    $sel_retv res = select(nfds, rfds, wfds, efds, 0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-                  curl_cv_func_select_args="$sel_arg1,$sel_arg234,$sel_arg5,$sel_retv"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-              fi
-            done
-          done
-        done
-      done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_select_args" >&5
-$as_echo "$curl_cv_func_select_args" >&6; } # AC-CACHE-CHECK
-    if test "$curl_cv_func_select_args" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find proper types to use for select args" >&5
-$as_echo "$as_me: WARNING: Cannot find proper types to use for select args" >&2;}
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_SELECT will not be defined" >&5
-$as_echo "$as_me: WARNING: HAVE_SELECT will not be defined" >&2;}
-    else
-      select_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_select_args" | sed 's/\*/\*/g'`
-      IFS=$select_prev_IFS
-      shift
-      #
-      sel_qual_type_arg5=$3
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define SELECT_TYPE_ARG1 $1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define SELECT_TYPE_ARG234 $2
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define SELECT_TYPE_RETV $4
-_ACEOF
-
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      case "$sel_qual_type_arg5" in
-        const*)
-          sel_qual_arg5=const
-          sel_type_arg5=`echo $sel_qual_type_arg5 | sed 's/^const //'`
-        ;;
-        *)
-          sel_qual_arg5=
-          sel_type_arg5=$sel_qual_type_arg5
-        ;;
-      esac
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define SELECT_QUAL_ARG5 $sel_qual_arg5
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define SELECT_TYPE_ARG5 $sel_type_arg5
-_ACEOF
-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SELECT 1
-_ACEOF
-
-      ac_cv_func_select="yes"
-    fi
-  fi
-
-
-
-      for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for recv" >&5
-$as_echo_n "checking for recv... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-
-int main (void)
-{
-
-      recv(0, 0, 0, 0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    curl_cv_recv="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    curl_cv_recv="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$curl_cv_recv" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking types of args and return type for recv" >&5
-$as_echo_n "checking types of args and return type for recv... " >&6; }
-if ${curl_cv_func_recv_args+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-      curl_cv_func_recv_args="unknown"
-      for recv_retv in 'int' 'ssize_t'; do
-        for recv_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for recv_arg2 in 'char *' 'void *'; do
-            for recv_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for recv_arg4 in 'int' 'unsigned int'; do
-                if test "$curl_cv_func_recv_args" = "unknown"; then
-                  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define RECVCALLCONV PASCAL
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define RECVCALLCONV
-#endif
-                      extern $recv_retv RECVCALLCONV
-                      recv($recv_arg1, $recv_arg2, $recv_arg3, $recv_arg4);
-
-int main (void)
-{
-
-                      $recv_arg1 s=0;
-                      $recv_arg2 buf=0;
-                      $recv_arg3 len=0;
-                      $recv_arg4 flags=0;
-                      $recv_retv res = recv(s, buf, len, flags);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-                    curl_cv_func_recv_args="$recv_arg1,$recv_arg2,$recv_arg3,$recv_arg4,$recv_retv"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-                fi
-              done
-            done
-          done
-        done
-      done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_recv_args" >&5
-$as_echo "$curl_cv_func_recv_args" >&6; } # AC-CACHE-CHECK
-    if test "$curl_cv_func_recv_args" = "unknown"; then
-      as_fn_error $? "Cannot find proper types to use for recv args" "$LINENO" 5
-    else
-      recv_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_recv_args" | sed 's/\*/\*/g'`
-      IFS=$recv_prev_IFS
-      shift
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_ARG1 $1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_ARG2 $2
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_ARG3 $3
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_ARG4 $4
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_RETV $5
-_ACEOF
-
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_RECV 1
-_ACEOF
-
-      ac_cv_func_recv="yes"
-    fi
-  else
-    as_fn_error $? "Unable to link function recv" "$LINENO" 5
-  fi
-
-
-      for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for recvfrom" >&5
-$as_echo_n "checking for recvfrom... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-
-int main (void)
-{
-
-      recvfrom(0, 0, 0, 0, 0, 0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    curl_cv_recvfrom="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    curl_cv_recvfrom="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$curl_cv_recvfrom" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking types of args and return type for recvfrom" >&5
-$as_echo_n "checking types of args and return type for recvfrom... " >&6; }
-if ${curl_cv_func_recvfrom_args+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-      curl_cv_func_recvfrom_args="unknown"
-      for recvfrom_retv in 'int' 'ssize_t'; do
-        for recvfrom_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for recvfrom_arg2 in 'char *' 'void *'; do
-            for recvfrom_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for recvfrom_arg4 in 'int' 'unsigned int'; do
-                for recvfrom_arg5 in 'struct sockaddr *' 'void *'; do
-                  for recvfrom_arg6 in 'socklen_t *' 'int *' 'unsigned int *' 'size_t *' 'void *'; do
-                    if test "$curl_cv_func_recvfrom_args" = "unknown"; then
-                      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define RECVFROMCALLCONV PASCAL
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define RECVFROMCALLCONV
-#endif
-                          extern $recvfrom_retv RECVFROMCALLCONV
-                          recvfrom($recvfrom_arg1, $recvfrom_arg2,
-                                   $recvfrom_arg3, $recvfrom_arg4,
-                                   $recvfrom_arg5, $recvfrom_arg6);
-
-int main (void)
-{
-
-                          $recvfrom_arg1 s=0;
-                          $recvfrom_arg2 buf=0;
-                          $recvfrom_arg3 len=0;
-                          $recvfrom_arg4 flags=0;
-                          $recvfrom_arg5 addr=0;
-                          $recvfrom_arg6 addrlen=0;
-                          $recvfrom_retv res=0;
-                          res = recvfrom(s, buf, len, flags, addr, addrlen);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-                        curl_cv_func_recvfrom_args="$recvfrom_arg1,$recvfrom_arg2,$recvfrom_arg3,$recvfrom_arg4,$recvfrom_arg5,$recvfrom_arg6,$recvfrom_retv"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-                    fi
-                  done
-                done
-              done
-            done
-          done
-        done
-      done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_recvfrom_args" >&5
-$as_echo "$curl_cv_func_recvfrom_args" >&6; } # AC-CACHE-CHECK
-    # Nearly last minute change for this release starts here
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_RECVFROM 1
-_ACEOF
-
-    ac_cv_func_recvfrom="yes"
-    # Nearly last minute change for this release ends here
-    if test "$curl_cv_func_recvfrom_args" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find proper types to use for recvfrom args" >&5
-$as_echo "$as_me: WARNING: Cannot find proper types to use for recvfrom args" >&2;}
-    else
-      recvfrom_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_recvfrom_args" | sed 's/\*/\*/g'`
-      IFS=$recvfrom_prev_IFS
-      shift
-      #
-      recvfrom_ptrt_arg2=$2
-      recvfrom_ptrt_arg5=$5
-      recvfrom_ptrt_arg6=$6
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG1 $1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG3 $3
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG4 $4
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_RETV $7
-_ACEOF
-
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      recvfrom_type_arg2=`echo $recvfrom_ptrt_arg2 | sed 's/ \*//'`
-      recvfrom_type_arg5=`echo $recvfrom_ptrt_arg5 | sed 's/ \*//'`
-      recvfrom_type_arg6=`echo $recvfrom_ptrt_arg6 | sed 's/ \*//'`
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG2 $recvfrom_type_arg2
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG5 $recvfrom_type_arg5
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG6 $recvfrom_type_arg6
-_ACEOF
-
-      #
-      if test "$recvfrom_type_arg2" = "void"; then
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG2_IS_VOID 1
-_ACEOF
-
-      fi
-      if test "$recvfrom_type_arg5" = "void"; then
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG5_IS_VOID 1
-_ACEOF
-
-      fi
-      if test "$recvfrom_type_arg6" = "void"; then
-
-cat >>confdefs.h <<_ACEOF
-#define RECVFROM_TYPE_ARG6_IS_VOID 1
-_ACEOF
-
-      fi
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_RECVFROM 1
-_ACEOF
-
-      ac_cv_func_recvfrom="yes"
-    fi
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to link function recvfrom" >&5
-$as_echo "$as_me: WARNING: Unable to link function recvfrom" >&2;}
-  fi
-
-
-      for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for send" >&5
-$as_echo_n "checking for send... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-
-int main (void)
-{
-
-      send(0, 0, 0, 0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    curl_cv_send="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    curl_cv_send="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$curl_cv_send" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking types of args and return type for send" >&5
-$as_echo_n "checking types of args and return type for send... " >&6; }
-if ${curl_cv_func_send_args+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-      curl_cv_func_send_args="unknown"
-      for send_retv in 'int' 'ssize_t'; do
-        for send_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for send_arg2 in 'char *' 'void *' 'const char *' 'const void *'; do
-            for send_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for send_arg4 in 'int' 'unsigned int'; do
-                if test "$curl_cv_func_send_args" = "unknown"; then
-                  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#define SENDCALLCONV PASCAL
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define SENDCALLCONV
-#endif
-                      extern $send_retv SENDCALLCONV
-                      send($send_arg1, $send_arg2, $send_arg3, $send_arg4);
-
-int main (void)
-{
-
-                      $send_arg1 s=0;
-                      $send_arg3 len=0;
-                      $send_arg4 flags=0;
-                      $send_retv res = send(s, 0, len, flags);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-                    curl_cv_func_send_args="$send_arg1,$send_arg2,$send_arg3,$send_arg4,$send_retv"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-                fi
-              done
-            done
-          done
-        done
-      done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_send_args" >&5
-$as_echo "$curl_cv_func_send_args" >&6; } # AC-CACHE-CHECK
-    if test "$curl_cv_func_send_args" = "unknown"; then
-      as_fn_error $? "Cannot find proper types to use for send args" "$LINENO" 5
-    else
-      send_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_send_args" | sed 's/\*/\*/g'`
-      IFS=$send_prev_IFS
-      shift
-      #
-      send_qual_type_arg2=$2
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_ARG1 $1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_ARG3 $3
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_ARG4 $4
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_RETV $5
-_ACEOF
-
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      case "$send_qual_type_arg2" in
-        const*)
-          send_qual_arg2=const
-          send_type_arg2=`echo $send_qual_type_arg2 | sed 's/^const //'`
-        ;;
-        *)
-          send_qual_arg2=
-          send_type_arg2=$send_qual_type_arg2
-        ;;
-      esac
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define SEND_QUAL_ARG2 $send_qual_arg2
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_ARG2 $send_type_arg2
-_ACEOF
-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SEND 1
-_ACEOF
-
-      ac_cv_func_send="yes"
-    fi
-  else
-    as_fn_error $? "Unable to link function send" "$LINENO" 5
-  fi
-
-
-  for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MSG_NOSIGNAL" >&5
-$as_echo_n "checking for MSG_NOSIGNAL... " >&6; }
-if ${ac_cv_msg_nosignal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-
-int main (void)
-{
-
-        int flag=MSG_NOSIGNAL;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      ac_cv_msg_nosignal="yes"
-
-else
-
-      ac_cv_msg_nosignal="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_msg_nosignal" >&5
-$as_echo "$ac_cv_msg_nosignal" >&6; }
-  case "$ac_cv_msg_nosignal" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_MSG_NOSIGNAL 1
-_ACEOF
-
-      ;;
-  esac
-
-
-
-curl_includes_unistd="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h unistd.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_unistd
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-  tst_links_alarm="unknown"
-  tst_proto_alarm="unknown"
-  tst_compi_alarm="unknown"
-  tst_allow_alarm="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if alarm can be linked" >&5
-$as_echo_n "checking if alarm can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define alarm innocuous_alarm
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef alarm
-#ifdef __cplusplus
-extern "C"
-#endif
-char alarm ();
-#if defined __stub_alarm || defined __stub___alarm
-choke me
-#endif
-
-int main (void)
-{
-return alarm ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_alarm="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_alarm="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_alarm" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if alarm is prototyped" >&5
-$as_echo_n "checking if alarm is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_unistd
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "alarm" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_alarm="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_alarm="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_alarm" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if alarm is compilable" >&5
-$as_echo_n "checking if alarm is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_unistd
-
-int main (void)
-{
-
-        if(0 != alarm(0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_alarm="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_alarm="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_alarm" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if alarm usage allowed" >&5
-$as_echo_n "checking if alarm usage allowed... " >&6; }
-    if test "x$curl_disallow_alarm" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_alarm="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_alarm="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if alarm might be used" >&5
-$as_echo_n "checking if alarm might be used... " >&6; }
-  if test "$tst_links_alarm" = "yes" &&
-     test "$tst_proto_alarm" = "yes" &&
-     test "$tst_compi_alarm" = "yes" &&
-     test "$tst_allow_alarm" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_ALARM 1
-_ACEOF
-
-    ac_cv_func_alarm="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_alarm="no"
-  fi
-
-
-curl_includes_string="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_STRING_H
-#  include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-#  include <strings.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h string.h strings.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_string
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-curl_includes_libgen="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_LIBGEN_H
-#  include <libgen.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h libgen.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_libgen
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-        #
-  tst_links_basename="unknown"
-  tst_proto_basename="unknown"
-  tst_compi_basename="unknown"
-  tst_allow_basename="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if basename can be linked" >&5
-$as_echo_n "checking if basename can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define basename innocuous_basename
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef basename
-#ifdef __cplusplus
-extern "C"
-#endif
-char basename ();
-#if defined __stub_basename || defined __stub___basename
-choke me
-#endif
-
-int main (void)
-{
-return basename ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_basename="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_basename="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_basename" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if basename is prototyped" >&5
-$as_echo_n "checking if basename is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-      $curl_includes_libgen
-      $curl_includes_unistd
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "basename" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_basename="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_basename="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_basename" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if basename is compilable" >&5
-$as_echo_n "checking if basename is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-        $curl_includes_libgen
-        $curl_includes_unistd
-
-int main (void)
-{
-
-        if(0 != basename(0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_basename="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_basename="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_basename" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if basename usage allowed" >&5
-$as_echo_n "checking if basename usage allowed... " >&6; }
-    if test "x$curl_disallow_basename" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_basename="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_basename="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if basename might be used" >&5
-$as_echo_n "checking if basename might be used... " >&6; }
-  if test "$tst_links_basename" = "yes" &&
-     test "$tst_proto_basename" = "yes" &&
-     test "$tst_compi_basename" = "yes" &&
-     test "$tst_allow_basename" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_BASENAME 1
-_ACEOF
-
-    ac_cv_func_basename="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_basename="no"
-  fi
-
-
-curl_includes_socket="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SOCKET_H
-#  include <socket.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_socket
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-      #
-  tst_links_closesocket="unknown"
-  tst_proto_closesocket="unknown"
-  tst_compi_closesocket="unknown"
-  tst_allow_closesocket="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket can be linked" >&5
-$as_echo_n "checking if closesocket can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $curl_includes_winsock2
-      $curl_includes_socket
-
-int main (void)
-{
-
-      if(0 != closesocket(0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_closesocket="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_closesocket="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_closesocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket is prototyped" >&5
-$as_echo_n "checking if closesocket is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_winsock2
-      $curl_includes_socket
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "closesocket" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_closesocket="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_closesocket="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_closesocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket is compilable" >&5
-$as_echo_n "checking if closesocket is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_winsock2
-        $curl_includes_socket
-
-int main (void)
-{
-
-        if(0 != closesocket(0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_closesocket="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_closesocket="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_closesocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket usage allowed" >&5
-$as_echo_n "checking if closesocket usage allowed... " >&6; }
-    if test "x$curl_disallow_closesocket" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_closesocket="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_closesocket="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket might be used" >&5
-$as_echo_n "checking if closesocket might be used... " >&6; }
-  if test "$tst_links_closesocket" = "yes" &&
-     test "$tst_proto_closesocket" = "yes" &&
-     test "$tst_compi_closesocket" = "yes" &&
-     test "$tst_allow_closesocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_CLOSESOCKET 1
-_ACEOF
-
-    ac_cv_func_closesocket="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_closesocket="no"
-  fi
-
-
-    #
-  tst_links_closesocket_camel="unknown"
-  tst_proto_closesocket_camel="unknown"
-  tst_compi_closesocket_camel="unknown"
-  tst_allow_closesocket_camel="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket can be linked" >&5
-$as_echo_n "checking if CloseSocket can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $curl_includes_sys_socket
-
-int main (void)
-{
-
-      if(0 != CloseSocket(0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_closesocket_camel="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_closesocket_camel="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_closesocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket is prototyped" >&5
-$as_echo_n "checking if CloseSocket is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_sys_socket
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "CloseSocket" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_closesocket_camel="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_closesocket_camel="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_closesocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket is compilable" >&5
-$as_echo_n "checking if CloseSocket is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_sys_socket
-
-int main (void)
-{
-
-        if(0 != CloseSocket(0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_closesocket_camel="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_closesocket_camel="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_closesocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket usage allowed" >&5
-$as_echo_n "checking if CloseSocket usage allowed... " >&6; }
-    if test "x$curl_disallow_closesocket_camel" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_closesocket_camel="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_closesocket_camel="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket might be used" >&5
-$as_echo_n "checking if CloseSocket might be used... " >&6; }
-  if test "$tst_links_closesocket_camel" = "yes" &&
-     test "$tst_proto_closesocket_camel" = "yes" &&
-     test "$tst_compi_closesocket_camel" = "yes" &&
-     test "$tst_allow_closesocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_CLOSESOCKET_CAMEL 1
-_ACEOF
-
-    ac_cv_func_closesocket_camel="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_closesocket_camel="no"
-  fi
-
-
-        #
-  tst_links_connect="unknown"
-  tst_proto_connect="unknown"
-  tst_compi_connect="unknown"
-  tst_allow_connect="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect can be linked" >&5
-$as_echo_n "checking if connect can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $curl_includes_winsock2
-      $curl_includes_sys_socket
-      $curl_includes_socket
-
-int main (void)
-{
-
-      if(0 != connect(0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_connect="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_connect="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_connect" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect is prototyped" >&5
-$as_echo_n "checking if connect is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_winsock2
-      $curl_includes_sys_socket
-      $curl_includes_socket
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "connect" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_connect="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_connect="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_connect" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect is compilable" >&5
-$as_echo_n "checking if connect is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_winsock2
-        $curl_includes_sys_socket
-        $curl_includes_socket
-
-int main (void)
-{
-
-        if(0 != connect(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_connect="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_connect="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_connect" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect usage allowed" >&5
-$as_echo_n "checking if connect usage allowed... " >&6; }
-    if test "x$curl_disallow_connect" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_connect="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_connect="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect might be used" >&5
-$as_echo_n "checking if connect might be used... " >&6; }
-  if test "$tst_links_connect" = "yes" &&
-     test "$tst_proto_connect" = "yes" &&
-     test "$tst_compi_connect" = "yes" &&
-     test "$tst_allow_connect" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_CONNECT 1
-_ACEOF
-
-    ac_cv_func_connect="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_connect="no"
-  fi
-
-
-curl_includes_fcntl="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_FCNTL_H
-#  include <fcntl.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h unistd.h fcntl.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_fcntl
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-  tst_links_fcntl="unknown"
-  tst_proto_fcntl="unknown"
-  tst_compi_fcntl="unknown"
-  tst_allow_fcntl="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl can be linked" >&5
-$as_echo_n "checking if fcntl can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define fcntl innocuous_fcntl
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef fcntl
-#ifdef __cplusplus
-extern "C"
-#endif
-char fcntl ();
-#if defined __stub_fcntl || defined __stub___fcntl
-choke me
-#endif
-
-int main (void)
-{
-return fcntl ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_fcntl="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_fcntl="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl is prototyped" >&5
-$as_echo_n "checking if fcntl is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_fcntl
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "fcntl" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_fcntl="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_fcntl="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl is compilable" >&5
-$as_echo_n "checking if fcntl is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_fcntl
-
-int main (void)
-{
-
-        if(0 != fcntl(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_fcntl="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_fcntl="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl usage allowed" >&5
-$as_echo_n "checking if fcntl usage allowed... " >&6; }
-    if test "x$curl_disallow_fcntl" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_fcntl="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_fcntl="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl might be used" >&5
-$as_echo_n "checking if fcntl might be used... " >&6; }
-  if test "$tst_links_fcntl" = "yes" &&
-     test "$tst_proto_fcntl" = "yes" &&
-     test "$tst_compi_fcntl" = "yes" &&
-     test "$tst_allow_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FCNTL 1
-_ACEOF
-
-    ac_cv_func_fcntl="yes"
-
-  #
-  tst_compi_fcntl_o_nonblock="unknown"
-  tst_allow_fcntl_o_nonblock="unknown"
-  #
-  case $host_os in
-    sunos4* | aix3* | beos*)
-            curl_disallow_fcntl_o_nonblock="yes"
-      ;;
-  esac
-  #
-  if test "$ac_cv_func_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl O_NONBLOCK is compilable" >&5
-$as_echo_n "checking if fcntl O_NONBLOCK is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_fcntl
-
-int main (void)
-{
-
-        int flags = 0;
-        if(0 != fcntl(0, F_SETFL, flags | O_NONBLOCK))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_fcntl_o_nonblock="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_fcntl_o_nonblock="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_fcntl_o_nonblock" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl O_NONBLOCK usage allowed" >&5
-$as_echo_n "checking if fcntl O_NONBLOCK usage allowed... " >&6; }
-    if test "x$curl_disallow_fcntl_o_nonblock" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_fcntl_o_nonblock="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_fcntl_o_nonblock="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl O_NONBLOCK might be used" >&5
-$as_echo_n "checking if fcntl O_NONBLOCK might be used... " >&6; }
-  if test "$tst_compi_fcntl_o_nonblock" = "yes" &&
-     test "$tst_allow_fcntl_o_nonblock" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FCNTL_O_NONBLOCK 1
-_ACEOF
-
-    ac_cv_func_fcntl_o_nonblock="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_fcntl_o_nonblock="no"
-  fi
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_fcntl="no"
-  fi
-
-
-curl_includes_stdio="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_STDIO_H
-#  include <stdio.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h stdio.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_stdio
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-  tst_links_fdopen="unknown"
-  tst_proto_fdopen="unknown"
-  tst_compi_fdopen="unknown"
-  tst_allow_fdopen="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fdopen can be linked" >&5
-$as_echo_n "checking if fdopen can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define fdopen innocuous_fdopen
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef fdopen
-#ifdef __cplusplus
-extern "C"
-#endif
-char fdopen ();
-#if defined __stub_fdopen || defined __stub___fdopen
-choke me
-#endif
-
-int main (void)
-{
-return fdopen ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_fdopen="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_fdopen="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_fdopen" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fdopen is prototyped" >&5
-$as_echo_n "checking if fdopen is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_stdio
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "fdopen" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_fdopen="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_fdopen="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_fdopen" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fdopen is compilable" >&5
-$as_echo_n "checking if fdopen is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stdio
-
-int main (void)
-{
-
-        if(0 != fdopen(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_fdopen="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_fdopen="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_fdopen" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fdopen usage allowed" >&5
-$as_echo_n "checking if fdopen usage allowed... " >&6; }
-    if test "x$curl_disallow_fdopen" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_fdopen="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_fdopen="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fdopen might be used" >&5
-$as_echo_n "checking if fdopen might be used... " >&6; }
-  if test "$tst_links_fdopen" = "yes" &&
-     test "$tst_proto_fdopen" = "yes" &&
-     test "$tst_compi_fdopen" = "yes" &&
-     test "$tst_allow_fdopen" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FDOPEN 1
-_ACEOF
-
-    ac_cv_func_fdopen="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_fdopen="no"
-  fi
-
-
-curl_includes_netdb="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h netdb.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_netdb
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-        #
-  tst_links_freeaddrinfo="unknown"
-  tst_proto_freeaddrinfo="unknown"
-  tst_compi_freeaddrinfo="unknown"
-  tst_allow_freeaddrinfo="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo can be linked" >&5
-$as_echo_n "checking if freeaddrinfo can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $curl_includes_ws2tcpip
-      $curl_includes_sys_socket
-      $curl_includes_netdb
-
-int main (void)
-{
-
-      freeaddrinfo(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_freeaddrinfo="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_freeaddrinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_freeaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo is prototyped" >&5
-$as_echo_n "checking if freeaddrinfo is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_ws2tcpip
-      $curl_includes_sys_socket
-      $curl_includes_netdb
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "freeaddrinfo" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_freeaddrinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_freeaddrinfo="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_freeaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo is compilable" >&5
-$as_echo_n "checking if freeaddrinfo is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_ws2tcpip
-        $curl_includes_sys_socket
-        $curl_includes_netdb
-
-int main (void)
-{
-
-        freeaddrinfo(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_freeaddrinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_freeaddrinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_freeaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo usage allowed" >&5
-$as_echo_n "checking if freeaddrinfo usage allowed... " >&6; }
-    if test "x$curl_disallow_freeaddrinfo" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_freeaddrinfo="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_freeaddrinfo="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo might be used" >&5
-$as_echo_n "checking if freeaddrinfo might be used... " >&6; }
-  if test "$tst_links_freeaddrinfo" = "yes" &&
-     test "$tst_proto_freeaddrinfo" = "yes" &&
-     test "$tst_compi_freeaddrinfo" = "yes" &&
-     test "$tst_allow_freeaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FREEADDRINFO 1
-_ACEOF
-
-    ac_cv_func_freeaddrinfo="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_freeaddrinfo="no"
-  fi
-
-
-curl_includes_ifaddrs="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_IFADDRS_H
-#  include <ifaddrs.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h sys/socket.h netinet/in.h ifaddrs.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_ifaddrs
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-  tst_links_freeifaddrs="unknown"
-  tst_proto_freeifaddrs="unknown"
-  tst_compi_freeifaddrs="unknown"
-  tst_allow_freeifaddrs="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeifaddrs can be linked" >&5
-$as_echo_n "checking if freeifaddrs can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define freeifaddrs innocuous_freeifaddrs
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef freeifaddrs
-#ifdef __cplusplus
-extern "C"
-#endif
-char freeifaddrs ();
-#if defined __stub_freeifaddrs || defined __stub___freeifaddrs
-choke me
-#endif
-
-int main (void)
-{
-return freeifaddrs ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_freeifaddrs="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_freeifaddrs="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_freeifaddrs" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeifaddrs is prototyped" >&5
-$as_echo_n "checking if freeifaddrs is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_ifaddrs
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "freeifaddrs" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_freeifaddrs="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_freeifaddrs="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_freeifaddrs" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeifaddrs is compilable" >&5
-$as_echo_n "checking if freeifaddrs is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_ifaddrs
-
-int main (void)
-{
-
-        freeifaddrs(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_freeifaddrs="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_freeifaddrs="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_freeifaddrs" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeifaddrs usage allowed" >&5
-$as_echo_n "checking if freeifaddrs usage allowed... " >&6; }
-    if test "x$curl_disallow_freeifaddrs" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_freeifaddrs="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_freeifaddrs="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeifaddrs might be used" >&5
-$as_echo_n "checking if freeifaddrs might be used... " >&6; }
-  if test "$tst_links_freeifaddrs" = "yes" &&
-     test "$tst_proto_freeifaddrs" = "yes" &&
-     test "$tst_compi_freeifaddrs" = "yes" &&
-     test "$tst_allow_freeifaddrs" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FREEIFADDRS 1
-_ACEOF
-
-    ac_cv_func_freeifaddrs="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_freeifaddrs="no"
-  fi
-
-
-    #
-  tst_links_ftruncate="unknown"
-  tst_proto_ftruncate="unknown"
-  tst_compi_ftruncate="unknown"
-  tst_allow_ftruncate="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ftruncate can be linked" >&5
-$as_echo_n "checking if ftruncate can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define ftruncate innocuous_ftruncate
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef ftruncate
-#ifdef __cplusplus
-extern "C"
-#endif
-char ftruncate ();
-#if defined __stub_ftruncate || defined __stub___ftruncate
-choke me
-#endif
-
-int main (void)
-{
-return ftruncate ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_ftruncate="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_ftruncate="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_ftruncate" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ftruncate is prototyped" >&5
-$as_echo_n "checking if ftruncate is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_unistd
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "ftruncate" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_ftruncate="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_ftruncate="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_ftruncate" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ftruncate is compilable" >&5
-$as_echo_n "checking if ftruncate is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_unistd
-
-int main (void)
-{
-
-        if(0 != ftruncate(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ftruncate="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ftruncate="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ftruncate" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ftruncate usage allowed" >&5
-$as_echo_n "checking if ftruncate usage allowed... " >&6; }
-    if test "x$curl_disallow_ftruncate" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ftruncate="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ftruncate="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ftruncate might be used" >&5
-$as_echo_n "checking if ftruncate might be used... " >&6; }
-  if test "$tst_links_ftruncate" = "yes" &&
-     test "$tst_proto_ftruncate" = "yes" &&
-     test "$tst_compi_ftruncate" = "yes" &&
-     test "$tst_allow_ftruncate" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FTRUNCATE 1
-_ACEOF
-
-    ac_cv_func_ftruncate="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ftruncate="no"
-  fi
-
-
-curl_includes_stdlib="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h stdlib.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_stdlib
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-            #
-  tst_links_getaddrinfo="unknown"
-  tst_proto_getaddrinfo="unknown"
-  tst_compi_getaddrinfo="unknown"
-  tst_works_getaddrinfo="unknown"
-  tst_allow_getaddrinfo="unknown"
-  tst_tsafe_getaddrinfo="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo can be linked" >&5
-$as_echo_n "checking if getaddrinfo can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $curl_includes_ws2tcpip
-      $curl_includes_sys_socket
-      $curl_includes_netdb
-
-int main (void)
-{
-
-      if(0 != getaddrinfo(0, 0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_getaddrinfo="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_getaddrinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_getaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo is prototyped" >&5
-$as_echo_n "checking if getaddrinfo is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_ws2tcpip
-      $curl_includes_sys_socket
-      $curl_includes_netdb
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getaddrinfo" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_getaddrinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_getaddrinfo="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_getaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo is compilable" >&5
-$as_echo_n "checking if getaddrinfo is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_ws2tcpip
-        $curl_includes_sys_socket
-        $curl_includes_netdb
-
-int main (void)
-{
-
-        if(0 != getaddrinfo(0, 0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_getaddrinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_getaddrinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_getaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo seems to work" >&5
-$as_echo_n "checking if getaddrinfo seems to work... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_ws2tcpip
-        $curl_includes_stdlib
-        $curl_includes_string
-        $curl_includes_sys_socket
-        $curl_includes_netdb
-
-int main (void)
-{
-
-        struct addrinfo hints;
-        struct addrinfo *ai = 0;
-        int error;
-
-        memset(&hints, 0, sizeof(hints));
-        hints.ai_flags = AI_NUMERICHOST;
-        hints.ai_family = AF_UNSPEC;
-        hints.ai_socktype = SOCK_STREAM;
-        error = getaddrinfo("127.0.0.1", 0, &hints, &ai);
-        if(error || !ai)
-          exit(1); /* fail */
-        else
-          exit(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_works_getaddrinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_works_getaddrinfo="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-  #
-  if test "$tst_compi_getaddrinfo" = "yes" &&
-    test "$tst_works_getaddrinfo" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo usage allowed" >&5
-$as_echo_n "checking if getaddrinfo usage allowed... " >&6; }
-    if test "x$curl_disallow_getaddrinfo" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_getaddrinfo="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_getaddrinfo="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo might be used" >&5
-$as_echo_n "checking if getaddrinfo might be used... " >&6; }
-  if test "$tst_links_getaddrinfo" = "yes" &&
-     test "$tst_proto_getaddrinfo" = "yes" &&
-     test "$tst_compi_getaddrinfo" = "yes" &&
-     test "$tst_allow_getaddrinfo" = "yes" &&
-     test "$tst_works_getaddrinfo" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETADDRINFO 1
-_ACEOF
-
-    ac_cv_func_getaddrinfo="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_getaddrinfo="no"
-    ac_cv_func_getaddrinfo_threadsafe="no"
-  fi
-  #
-  if test "$ac_cv_func_getaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo is threadsafe" >&5
-$as_echo_n "checking if getaddrinfo is threadsafe... " >&6; }
-    case $host_os in
-      aix[1234].* | aix5.[01].*)
-                tst_tsafe_getaddrinfo="no"
-        ;;
-      aix*)
-                tst_tsafe_getaddrinfo="yes"
-        ;;
-      darwin[12345].*)
-                tst_tsafe_getaddrinfo="no"
-        ;;
-      darwin*)
-                tst_tsafe_getaddrinfo="yes"
-        ;;
-      freebsd[1234].* | freebsd5.[1234]*)
-                tst_tsafe_getaddrinfo="no"
-        ;;
-      freebsd*)
-                tst_tsafe_getaddrinfo="yes"
-        ;;
-      hpux[123456789].* | hpux10.* | hpux11.0* | hpux11.10*)
-                tst_tsafe_getaddrinfo="no"
-        ;;
-      hpux*)
-                tst_tsafe_getaddrinfo="yes"
-        ;;
-      netbsd[123].*)
-                tst_tsafe_getaddrinfo="no"
-        ;;
-      netbsd*)
-                tst_tsafe_getaddrinfo="yes"
-        ;;
-      *bsd*)
-                tst_tsafe_getaddrinfo="no"
-        ;;
-      solaris2*)
-                tst_tsafe_getaddrinfo="yes"
-        ;;
-    esac
-    if test "$tst_tsafe_getaddrinfo" = "unknown"; then
-
-
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_ws2tcpip
-        $curl_includes_sys_socket
-        $curl_includes_netdb
-
-int main (void)
-{
-#ifdef h_errno
-  return 0;
-#else
-  force compilation error
-#endif
-}
-
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-    tst_symbol_defined="yes"
-
-else
-
-    tst_symbol_defined="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  if test "$tst_symbol_defined" = "yes"; then
-    curl_cv_have_def_h_errno=yes
-
-  else
-    curl_cv_have_def_h_errno=no
-
-  fi
-
-      if test "$curl_cv_have_def_h_errno" = "no"; then
-        tst_tsafe_getaddrinfo="no"
-      fi
-    fi
-    if test "$tst_tsafe_getaddrinfo" = "unknown"; then
-      tst_tsafe_getaddrinfo="yes"
-    fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_tsafe_getaddrinfo" >&5
-$as_echo "$tst_tsafe_getaddrinfo" >&6; }
-    if test "$tst_tsafe_getaddrinfo" = "yes"; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETADDRINFO_THREADSAFE 1
-_ACEOF
-
-      ac_cv_func_getaddrinfo_threadsafe="yes"
-    else
-      ac_cv_func_getaddrinfo_threadsafe="no"
-    fi
-  fi
-
-
-      #
-  tst_links_gethostbyaddr="unknown"
-  tst_proto_gethostbyaddr="unknown"
-  tst_compi_gethostbyaddr="unknown"
-  tst_allow_gethostbyaddr="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr can be linked" >&5
-$as_echo_n "checking if gethostbyaddr can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $curl_includes_winsock2
-      $curl_includes_netdb
-
-int main (void)
-{
-
-      if(0 != gethostbyaddr(0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_gethostbyaddr="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_gethostbyaddr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_gethostbyaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr is prototyped" >&5
-$as_echo_n "checking if gethostbyaddr is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_winsock2
-      $curl_includes_netdb
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyaddr" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_gethostbyaddr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_gethostbyaddr="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_gethostbyaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr is compilable" >&5
-$as_echo_n "checking if gethostbyaddr is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_winsock2
-        $curl_includes_netdb
-
-int main (void)
-{
-
-        if(0 != gethostbyaddr(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_gethostbyaddr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_gethostbyaddr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_gethostbyaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr usage allowed" >&5
-$as_echo_n "checking if gethostbyaddr usage allowed... " >&6; }
-    if test "x$curl_disallow_gethostbyaddr" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_gethostbyaddr="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_gethostbyaddr="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr might be used" >&5
-$as_echo_n "checking if gethostbyaddr might be used... " >&6; }
-  if test "$tst_links_gethostbyaddr" = "yes" &&
-     test "$tst_proto_gethostbyaddr" = "yes" &&
-     test "$tst_compi_gethostbyaddr" = "yes" &&
-     test "$tst_allow_gethostbyaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETHOSTBYADDR 1
-_ACEOF
-
-    ac_cv_func_gethostbyaddr="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_gethostbyaddr="no"
-  fi
-
-
-    #
-  tst_links_gethostbyaddr_r="unknown"
-  tst_proto_gethostbyaddr_r="unknown"
-  tst_compi_gethostbyaddr_r="unknown"
-  tst_allow_gethostbyaddr_r="unknown"
-  tst_nargs_gethostbyaddr_r="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr_r can be linked" >&5
-$as_echo_n "checking if gethostbyaddr_r can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define gethostbyaddr_r innocuous_gethostbyaddr_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef gethostbyaddr_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyaddr_r ();
-#if defined __stub_gethostbyaddr_r || defined __stub___gethostbyaddr_r
-choke me
-#endif
-
-int main (void)
-{
-return gethostbyaddr_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_gethostbyaddr_r="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_gethostbyaddr_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_gethostbyaddr_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr_r is prototyped" >&5
-$as_echo_n "checking if gethostbyaddr_r is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_netdb
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyaddr_r" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_gethostbyaddr_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_gethostbyaddr_r="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_gethostbyaddr_r" = "yes"; then
-    if test "$tst_nargs_gethostbyaddr_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr_r takes 5 args." >&5
-$as_echo_n "checking if gethostbyaddr_r takes 5 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_netdb
-
-int main (void)
-{
-
-          if(0 != gethostbyaddr_r(0, 0, 0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_gethostbyaddr_r="yes"
-        tst_nargs_gethostbyaddr_r="5"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_gethostbyaddr_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test "$tst_nargs_gethostbyaddr_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr_r takes 7 args." >&5
-$as_echo_n "checking if gethostbyaddr_r takes 7 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_netdb
-
-int main (void)
-{
-
-          if(0 != gethostbyaddr_r(0, 0, 0, 0, 0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_gethostbyaddr_r="yes"
-        tst_nargs_gethostbyaddr_r="7"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_gethostbyaddr_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test "$tst_nargs_gethostbyaddr_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr_r takes 8 args." >&5
-$as_echo_n "checking if gethostbyaddr_r takes 8 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_netdb
-
-int main (void)
-{
-
-          if(0 != gethostbyaddr_r(0, 0, 0, 0, 0, 0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_gethostbyaddr_r="yes"
-        tst_nargs_gethostbyaddr_r="8"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_gethostbyaddr_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr_r is compilable" >&5
-$as_echo_n "checking if gethostbyaddr_r is compilable... " >&6; }
-    if test "$tst_compi_gethostbyaddr_r" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-  fi
-  #
-  if test "$tst_compi_gethostbyaddr_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr_r usage allowed" >&5
-$as_echo_n "checking if gethostbyaddr_r usage allowed... " >&6; }
-    if test "x$curl_disallow_gethostbyaddr_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_gethostbyaddr_r="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_gethostbyaddr_r="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyaddr_r might be used" >&5
-$as_echo_n "checking if gethostbyaddr_r might be used... " >&6; }
-  if test "$tst_links_gethostbyaddr_r" = "yes" &&
-     test "$tst_proto_gethostbyaddr_r" = "yes" &&
-     test "$tst_compi_gethostbyaddr_r" = "yes" &&
-     test "$tst_allow_gethostbyaddr_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETHOSTBYADDR_R 1
-_ACEOF
-
-            #
-    if test "$tst_nargs_gethostbyaddr_r" -eq "5"; then
-
-$as_echo "#define HAVE_GETHOSTBYADDR_R_5 1" >>confdefs.h
-
-    elif test "$tst_nargs_gethostbyaddr_r" -eq "7"; then
-
-$as_echo "#define HAVE_GETHOSTBYADDR_R_7 1" >>confdefs.h
-
-    elif test "$tst_nargs_gethostbyaddr_r" -eq "8"; then
-
-$as_echo "#define HAVE_GETHOSTBYADDR_R_8 1" >>confdefs.h
-
-    fi
-    #
-    ac_cv_func_gethostbyaddr_r="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_gethostbyaddr_r="no"
-  fi
-
-
-      #
-  tst_links_gethostbyname="unknown"
-  tst_proto_gethostbyname="unknown"
-  tst_compi_gethostbyname="unknown"
-  tst_allow_gethostbyname="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname can be linked" >&5
-$as_echo_n "checking if gethostbyname can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $curl_includes_winsock2
-      $curl_includes_netdb
-
-int main (void)
-{
-
-      if(0 != gethostbyname(0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_gethostbyname="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_gethostbyname="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_gethostbyname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname is prototyped" >&5
-$as_echo_n "checking if gethostbyname is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_winsock2
-      $curl_includes_netdb
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyname" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_gethostbyname="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_gethostbyname="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_gethostbyname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname is compilable" >&5
-$as_echo_n "checking if gethostbyname is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_winsock2
-        $curl_includes_netdb
-
-int main (void)
-{
-
-        if(0 != gethostbyname(0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_gethostbyname="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_gethostbyname="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_gethostbyname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname usage allowed" >&5
-$as_echo_n "checking if gethostbyname usage allowed... " >&6; }
-    if test "x$curl_disallow_gethostbyname" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_gethostbyname="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_gethostbyname="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname might be used" >&5
-$as_echo_n "checking if gethostbyname might be used... " >&6; }
-  if test "$tst_links_gethostbyname" = "yes" &&
-     test "$tst_proto_gethostbyname" = "yes" &&
-     test "$tst_compi_gethostbyname" = "yes" &&
-     test "$tst_allow_gethostbyname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETHOSTBYNAME 1
-_ACEOF
-
-    ac_cv_func_gethostbyname="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_gethostbyname="no"
-  fi
-
-
-    #
-  tst_links_gethostbyname_r="unknown"
-  tst_proto_gethostbyname_r="unknown"
-  tst_compi_gethostbyname_r="unknown"
-  tst_allow_gethostbyname_r="unknown"
-  tst_nargs_gethostbyname_r="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r can be linked" >&5
-$as_echo_n "checking if gethostbyname_r can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define gethostbyname_r innocuous_gethostbyname_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef gethostbyname_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyname_r ();
-#if defined __stub_gethostbyname_r || defined __stub___gethostbyname_r
-choke me
-#endif
-
-int main (void)
-{
-return gethostbyname_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_gethostbyname_r="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_gethostbyname_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_gethostbyname_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r is prototyped" >&5
-$as_echo_n "checking if gethostbyname_r is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_netdb
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyname_r" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_gethostbyname_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_gethostbyname_r="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_gethostbyname_r" = "yes"; then
-    if test "$tst_nargs_gethostbyname_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r takes 3 args." >&5
-$as_echo_n "checking if gethostbyname_r takes 3 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_netdb
-
-int main (void)
-{
-
-          if(0 != gethostbyname_r(0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_gethostbyname_r="yes"
-        tst_nargs_gethostbyname_r="3"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_gethostbyname_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test "$tst_nargs_gethostbyname_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r takes 5 args." >&5
-$as_echo_n "checking if gethostbyname_r takes 5 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_netdb
-
-int main (void)
-{
-
-          if(0 != gethostbyname_r(0, 0, 0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_gethostbyname_r="yes"
-        tst_nargs_gethostbyname_r="5"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_gethostbyname_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test "$tst_nargs_gethostbyname_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r takes 6 args." >&5
-$as_echo_n "checking if gethostbyname_r takes 6 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_netdb
-
-int main (void)
-{
-
-          if(0 != gethostbyname_r(0, 0, 0, 0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_gethostbyname_r="yes"
-        tst_nargs_gethostbyname_r="6"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_gethostbyname_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r is compilable" >&5
-$as_echo_n "checking if gethostbyname_r is compilable... " >&6; }
-    if test "$tst_compi_gethostbyname_r" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-  fi
-  #
-  if test "$tst_compi_gethostbyname_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r usage allowed" >&5
-$as_echo_n "checking if gethostbyname_r usage allowed... " >&6; }
-    if test "x$curl_disallow_gethostbyname_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_gethostbyname_r="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_gethostbyname_r="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r might be used" >&5
-$as_echo_n "checking if gethostbyname_r might be used... " >&6; }
-  if test "$tst_links_gethostbyname_r" = "yes" &&
-     test "$tst_proto_gethostbyname_r" = "yes" &&
-     test "$tst_compi_gethostbyname_r" = "yes" &&
-     test "$tst_allow_gethostbyname_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETHOSTBYNAME_R 1
-_ACEOF
-
-            #
-    if test "$tst_nargs_gethostbyname_r" -eq "3"; then
-
-$as_echo "#define HAVE_GETHOSTBYNAME_R_3 1" >>confdefs.h
-
-    elif test "$tst_nargs_gethostbyname_r" -eq "5"; then
-
-$as_echo "#define HAVE_GETHOSTBYNAME_R_5 1" >>confdefs.h
-
-    elif test "$tst_nargs_gethostbyname_r" -eq "6"; then
-
-$as_echo "#define HAVE_GETHOSTBYNAME_R_6 1" >>confdefs.h
-
-    fi
-    #
-    ac_cv_func_gethostbyname_r="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_gethostbyname_r="no"
-  fi
-
-
-      #
-  tst_links_gethostname="unknown"
-  tst_proto_gethostname="unknown"
-  tst_compi_gethostname="unknown"
-  tst_allow_gethostname="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname can be linked" >&5
-$as_echo_n "checking if gethostname can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $curl_includes_winsock2
-      $curl_includes_unistd
-
-int main (void)
-{
-
-      if(0 != gethostname(0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_gethostname="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_gethostname="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname is prototyped" >&5
-$as_echo_n "checking if gethostname is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_winsock2
-      $curl_includes_unistd
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostname" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_gethostname="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_gethostname="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname is compilable" >&5
-$as_echo_n "checking if gethostname is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_winsock2
-        $curl_includes_unistd
-
-int main (void)
-{
-
-        if(0 != gethostname(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_gethostname="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_gethostname="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname usage allowed" >&5
-$as_echo_n "checking if gethostname usage allowed... " >&6; }
-    if test "x$curl_disallow_gethostname" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_gethostname="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_gethostname="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname might be used" >&5
-$as_echo_n "checking if gethostname might be used... " >&6; }
-  if test "$tst_links_gethostname" = "yes" &&
-     test "$tst_proto_gethostname" = "yes" &&
-     test "$tst_compi_gethostname" = "yes" &&
-     test "$tst_allow_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETHOSTNAME 1
-_ACEOF
-
-    ac_cv_func_gethostname="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_gethostname="no"
-  fi
-
-
-      #
-  tst_links_getifaddrs="unknown"
-  tst_proto_getifaddrs="unknown"
-  tst_compi_getifaddrs="unknown"
-  tst_works_getifaddrs="unknown"
-  tst_allow_getifaddrs="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getifaddrs can be linked" >&5
-$as_echo_n "checking if getifaddrs can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define getifaddrs innocuous_getifaddrs
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef getifaddrs
-#ifdef __cplusplus
-extern "C"
-#endif
-char getifaddrs ();
-#if defined __stub_getifaddrs || defined __stub___getifaddrs
-choke me
-#endif
-
-int main (void)
-{
-return getifaddrs ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_getifaddrs="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_getifaddrs="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_getifaddrs" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getifaddrs is prototyped" >&5
-$as_echo_n "checking if getifaddrs is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_ifaddrs
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getifaddrs" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_getifaddrs="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_getifaddrs="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_getifaddrs" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getifaddrs is compilable" >&5
-$as_echo_n "checking if getifaddrs is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_ifaddrs
-
-int main (void)
-{
-
-        if(0 != getifaddrs(0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_getifaddrs="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_getifaddrs="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_getifaddrs" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getifaddrs seems to work" >&5
-$as_echo_n "checking if getifaddrs seems to work... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stdlib
-        $curl_includes_ifaddrs
-
-int main (void)
-{
-
-        struct ifaddrs *ifa = 0;
-        int error;
-
-        error = getifaddrs(&ifa);
-        if(error || !ifa)
-          exit(1); /* fail */
-        else
-          exit(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_works_getifaddrs="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_works_getifaddrs="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-  #
-  if test "$tst_compi_getifaddrs" = "yes" &&
-    test "$tst_works_getifaddrs" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getifaddrs usage allowed" >&5
-$as_echo_n "checking if getifaddrs usage allowed... " >&6; }
-    if test "x$curl_disallow_getifaddrs" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_getifaddrs="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_getifaddrs="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getifaddrs might be used" >&5
-$as_echo_n "checking if getifaddrs might be used... " >&6; }
-  if test "$tst_links_getifaddrs" = "yes" &&
-     test "$tst_proto_getifaddrs" = "yes" &&
-     test "$tst_compi_getifaddrs" = "yes" &&
-     test "$tst_allow_getifaddrs" = "yes" &&
-     test "$tst_works_getifaddrs" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETIFADDRS 1
-_ACEOF
-
-    ac_cv_func_getifaddrs="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_getifaddrs="no"
-  fi
-
-
-    #
-  tst_links_getservbyport_r="unknown"
-  tst_proto_getservbyport_r="unknown"
-  tst_compi_getservbyport_r="unknown"
-  tst_allow_getservbyport_r="unknown"
-  tst_nargs_getservbyport_r="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r can be linked" >&5
-$as_echo_n "checking if getservbyport_r can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define getservbyport_r innocuous_getservbyport_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef getservbyport_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char getservbyport_r ();
-#if defined __stub_getservbyport_r || defined __stub___getservbyport_r
-choke me
-#endif
-
-int main (void)
-{
-return getservbyport_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_getservbyport_r="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_getservbyport_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_getservbyport_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r is prototyped" >&5
-$as_echo_n "checking if getservbyport_r is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_netdb
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getservbyport_r" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_getservbyport_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_getservbyport_r="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_getservbyport_r" = "yes"; then
-    if test "$tst_nargs_getservbyport_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r takes 4 args." >&5
-$as_echo_n "checking if getservbyport_r takes 4 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_netdb
-
-int main (void)
-{
-
-          if(0 != getservbyport_r(0, 0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_getservbyport_r="yes"
-        tst_nargs_getservbyport_r="4"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_getservbyport_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test "$tst_nargs_getservbyport_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r takes 5 args." >&5
-$as_echo_n "checking if getservbyport_r takes 5 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_netdb
-
-int main (void)
-{
-
-          if(0 != getservbyport_r(0, 0, 0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_getservbyport_r="yes"
-        tst_nargs_getservbyport_r="5"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_getservbyport_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test "$tst_nargs_getservbyport_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r takes 6 args." >&5
-$as_echo_n "checking if getservbyport_r takes 6 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_netdb
-
-int main (void)
-{
-
-          if(0 != getservbyport_r(0, 0, 0, 0, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_getservbyport_r="yes"
-        tst_nargs_getservbyport_r="6"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_getservbyport_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r is compilable" >&5
-$as_echo_n "checking if getservbyport_r is compilable... " >&6; }
-    if test "$tst_compi_getservbyport_r" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-  fi
-  #
-  if test "$tst_compi_getservbyport_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r usage allowed" >&5
-$as_echo_n "checking if getservbyport_r usage allowed... " >&6; }
-    if test "x$curl_disallow_getservbyport_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_getservbyport_r="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_getservbyport_r="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getservbyport_r might be used" >&5
-$as_echo_n "checking if getservbyport_r might be used... " >&6; }
-  if test "$tst_links_getservbyport_r" = "yes" &&
-     test "$tst_proto_getservbyport_r" = "yes" &&
-     test "$tst_compi_getservbyport_r" = "yes" &&
-     test "$tst_allow_getservbyport_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETSERVBYPORT_R 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define GETSERVBYPORT_R_ARGS $tst_nargs_getservbyport_r
-_ACEOF
-
-    if test "$tst_nargs_getservbyport_r" -eq "4"; then
-
-$as_echo "#define GETSERVBYPORT_R_BUFSIZE sizeof(struct servent_data)" >>confdefs.h
-
-    else
-
-$as_echo "#define GETSERVBYPORT_R_BUFSIZE 4096" >>confdefs.h
-
-    fi
-    ac_cv_func_getservbyport_r="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_getservbyport_r="no"
-  fi
-
-
-curl_includes_time="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#  include <sys/time.h>
-#  ifdef TIME_WITH_SYS_TIME
-#    include <time.h>
-#  endif
-#else
-#  ifdef HAVE_TIME_H
-#    include <time.h>
-#  endif
-#endif
-/* includes end */"
-  for ac_header in sys/types.h sys/time.h time.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_time
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-      #
-  tst_links_gmtime_r="unknown"
-  tst_proto_gmtime_r="unknown"
-  tst_compi_gmtime_r="unknown"
-  tst_works_gmtime_r="unknown"
-  tst_allow_gmtime_r="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gmtime_r can be linked" >&5
-$as_echo_n "checking if gmtime_r can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define gmtime_r innocuous_gmtime_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef gmtime_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char gmtime_r ();
-#if defined __stub_gmtime_r || defined __stub___gmtime_r
-choke me
-#endif
-
-int main (void)
-{
-return gmtime_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_gmtime_r="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_gmtime_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_gmtime_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gmtime_r is prototyped" >&5
-$as_echo_n "checking if gmtime_r is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_time
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gmtime_r" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_gmtime_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_gmtime_r="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_gmtime_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gmtime_r is compilable" >&5
-$as_echo_n "checking if gmtime_r is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_time
-
-int main (void)
-{
-
-        if(0 != gmtime_r(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_gmtime_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_gmtime_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_gmtime_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gmtime_r seems to work" >&5
-$as_echo_n "checking if gmtime_r seems to work... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stdlib
-        $curl_includes_time
-
-int main (void)
-{
-
-        time_t local = 1170352587;
-        struct tm *gmt = 0;
-        struct tm result;
-        gmt = gmtime_r(&local, &result);
-        if(gmt)
-          exit(0);
-        else
-          exit(1);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_works_gmtime_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_works_gmtime_r="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-  #
-  if test "$tst_compi_gmtime_r" = "yes" &&
-    test "$tst_works_gmtime_r" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gmtime_r usage allowed" >&5
-$as_echo_n "checking if gmtime_r usage allowed... " >&6; }
-    if test "x$curl_disallow_gmtime_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_gmtime_r="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_gmtime_r="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gmtime_r might be used" >&5
-$as_echo_n "checking if gmtime_r might be used... " >&6; }
-  if test "$tst_links_gmtime_r" = "yes" &&
-     test "$tst_proto_gmtime_r" = "yes" &&
-     test "$tst_compi_gmtime_r" = "yes" &&
-     test "$tst_allow_gmtime_r" = "yes" &&
-     test "$tst_works_gmtime_r" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GMTIME_R 1
-_ACEOF
-
-    ac_cv_func_gmtime_r="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_gmtime_r="no"
-  fi
-
-
-curl_includes_arpa_inet="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h sys/socket.h netinet/in.h arpa/inet.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_arpa_inet
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-  tst_links_inet_ntoa_r="unknown"
-  tst_proto_inet_ntoa_r="unknown"
-  tst_compi_inet_ntoa_r="unknown"
-  tst_allow_inet_ntoa_r="unknown"
-  tst_nargs_inet_ntoa_r="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntoa_r can be linked" >&5
-$as_echo_n "checking if inet_ntoa_r can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define inet_ntoa_r innocuous_inet_ntoa_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef inet_ntoa_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char inet_ntoa_r ();
-#if defined __stub_inet_ntoa_r || defined __stub___inet_ntoa_r
-choke me
-#endif
-
-int main (void)
-{
-return inet_ntoa_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_inet_ntoa_r="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_inet_ntoa_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_inet_ntoa_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntoa_r is prototyped" >&5
-$as_echo_n "checking if inet_ntoa_r is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_arpa_inet
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "inet_ntoa_r" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_inet_ntoa_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_inet_ntoa_r="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_inet_ntoa_r" = "yes"; then
-    if test "$tst_nargs_inet_ntoa_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntoa_r takes 2 args." >&5
-$as_echo_n "checking if inet_ntoa_r takes 2 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_arpa_inet
-
-int main (void)
-{
-
-          struct in_addr addr;
-          if(0 != inet_ntoa_r(addr, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_inet_ntoa_r="yes"
-        tst_nargs_inet_ntoa_r="2"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_inet_ntoa_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    if test "$tst_nargs_inet_ntoa_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntoa_r takes 3 args." >&5
-$as_echo_n "checking if inet_ntoa_r takes 3 args.... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-          $curl_includes_arpa_inet
-
-int main (void)
-{
-
-          struct in_addr addr;
-          if(0 != inet_ntoa_r(addr, 0, 0))
-            return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_compi_inet_ntoa_r="yes"
-        tst_nargs_inet_ntoa_r="3"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_compi_inet_ntoa_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntoa_r is compilable" >&5
-$as_echo_n "checking if inet_ntoa_r is compilable... " >&6; }
-    if test "$tst_compi_inet_ntoa_r" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    fi
-  fi
-  #
-  if test "$tst_compi_inet_ntoa_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntoa_r usage allowed" >&5
-$as_echo_n "checking if inet_ntoa_r usage allowed... " >&6; }
-    if test "x$curl_disallow_inet_ntoa_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_inet_ntoa_r="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_inet_ntoa_r="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntoa_r might be used" >&5
-$as_echo_n "checking if inet_ntoa_r might be used... " >&6; }
-  if test "$tst_links_inet_ntoa_r" = "yes" &&
-     test "$tst_proto_inet_ntoa_r" = "yes" &&
-     test "$tst_compi_inet_ntoa_r" = "yes" &&
-     test "$tst_allow_inet_ntoa_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_INET_NTOA_R 1
-_ACEOF
-
-            #
-    if test "$tst_nargs_inet_ntoa_r" -eq "2"; then
-
-$as_echo "#define HAVE_INET_NTOA_R_2 1" >>confdefs.h
-
-    elif test "$tst_nargs_inet_ntoa_r" -eq "3"; then
-
-$as_echo "#define HAVE_INET_NTOA_R_3 1" >>confdefs.h
-
-    fi
-    #
-    ac_cv_func_inet_ntoa_r="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_inet_ntoa_r="no"
-  fi
-
-
-        #
-  tst_links_inet_ntop="unknown"
-  tst_proto_inet_ntop="unknown"
-  tst_compi_inet_ntop="unknown"
-  tst_works_inet_ntop="unknown"
-  tst_allow_inet_ntop="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop can be linked" >&5
-$as_echo_n "checking if inet_ntop can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define inet_ntop innocuous_inet_ntop
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef inet_ntop
-#ifdef __cplusplus
-extern "C"
-#endif
-char inet_ntop ();
-#if defined __stub_inet_ntop || defined __stub___inet_ntop
-choke me
-#endif
-
-int main (void)
-{
-return inet_ntop ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_inet_ntop="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_inet_ntop="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_inet_ntop" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop is prototyped" >&5
-$as_echo_n "checking if inet_ntop is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_arpa_inet
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "inet_ntop" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_inet_ntop="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_inet_ntop="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_inet_ntop" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop is compilable" >&5
-$as_echo_n "checking if inet_ntop is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_arpa_inet
-
-int main (void)
-{
-
-        if(0 != inet_ntop(0, 0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_inet_ntop="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_inet_ntop="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_inet_ntop" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop seems to work" >&5
-$as_echo_n "checking if inet_ntop seems to work... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stdlib
-        $curl_includes_arpa_inet
-        $curl_includes_string
-
-int main (void)
-{
-
-        char ipv6res[sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255")];
-        char ipv4res[sizeof "255.255.255.255"];
-        unsigned char ipv6a[26];
-        unsigned char ipv4a[5];
-        char *ipv6ptr = 0;
-        char *ipv4ptr = 0;
-        /* - */
-        ipv4res[0] = '\0';
-        ipv4a[0] = 0xc0;
-        ipv4a[1] = 0xa8;
-        ipv4a[2] = 0x64;
-        ipv4a[3] = 0x01;
-        ipv4a[4] = 0x01;
-        /* - */
-        ipv4ptr = inet_ntop(AF_INET, ipv4a, ipv4res, sizeof(ipv4res));
-        if(!ipv4ptr)
-          exit(1); /* fail */
-        if(ipv4ptr != ipv4res)
-          exit(1); /* fail */
-        if(!ipv4ptr[0])
-          exit(1); /* fail */
-        if(memcmp(ipv4res, "192.168.100.1", 13) != 0)
-          exit(1); /* fail */
-        /* - */
-        ipv6res[0] = '\0';
-        memset(ipv6a, 0, sizeof(ipv6a));
-        ipv6a[0] = 0xfe;
-        ipv6a[1] = 0x80;
-        ipv6a[8] = 0x02;
-        ipv6a[9] = 0x14;
-        ipv6a[10] = 0x4f;
-        ipv6a[11] = 0xff;
-        ipv6a[12] = 0xfe;
-        ipv6a[13] = 0x0b;
-        ipv6a[14] = 0x76;
-        ipv6a[15] = 0xc8;
-        ipv6a[25] = 0x01;
-        /* - */
-        ipv6ptr = inet_ntop(AF_INET6, ipv6a, ipv6res, sizeof(ipv6res));
-        if(!ipv6ptr)
-          exit(1); /* fail */
-        if(ipv6ptr != ipv6res)
-          exit(1); /* fail */
-        if(!ipv6ptr[0])
-          exit(1); /* fail */
-        if(memcmp(ipv6res, "fe80::214:4fff:fe0b:76c8", 24) != 0)
-          exit(1); /* fail */
-        /* - */
-        exit(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_works_inet_ntop="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_works_inet_ntop="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-  #
-  if test "$tst_compi_inet_ntop" = "yes" &&
-    test "$tst_works_inet_ntop" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop usage allowed" >&5
-$as_echo_n "checking if inet_ntop usage allowed... " >&6; }
-    if test "x$curl_disallow_inet_ntop" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_inet_ntop="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_inet_ntop="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop might be used" >&5
-$as_echo_n "checking if inet_ntop might be used... " >&6; }
-  if test "$tst_links_inet_ntop" = "yes" &&
-     test "$tst_proto_inet_ntop" = "yes" &&
-     test "$tst_compi_inet_ntop" = "yes" &&
-     test "$tst_allow_inet_ntop" = "yes" &&
-     test "$tst_works_inet_ntop" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_INET_NTOP 1
-_ACEOF
-
-    ac_cv_func_inet_ntop="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_inet_ntop="no"
-  fi
-
-
-        #
-  tst_links_inet_pton="unknown"
-  tst_proto_inet_pton="unknown"
-  tst_compi_inet_pton="unknown"
-  tst_works_inet_pton="unknown"
-  tst_allow_inet_pton="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton can be linked" >&5
-$as_echo_n "checking if inet_pton can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define inet_pton innocuous_inet_pton
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef inet_pton
-#ifdef __cplusplus
-extern "C"
-#endif
-char inet_pton ();
-#if defined __stub_inet_pton || defined __stub___inet_pton
-choke me
-#endif
-
-int main (void)
-{
-return inet_pton ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_inet_pton="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_inet_pton="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_inet_pton" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton is prototyped" >&5
-$as_echo_n "checking if inet_pton is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_arpa_inet
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "inet_pton" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_inet_pton="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_inet_pton="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_inet_pton" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton is compilable" >&5
-$as_echo_n "checking if inet_pton is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_arpa_inet
-
-int main (void)
-{
-
-        if(0 != inet_pton(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_inet_pton="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_inet_pton="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_inet_pton" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton seems to work" >&5
-$as_echo_n "checking if inet_pton seems to work... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stdlib
-        $curl_includes_arpa_inet
-        $curl_includes_string
-
-int main (void)
-{
-
-        unsigned char ipv6a[16+1];
-        unsigned char ipv4a[4+1];
-        const char *ipv6src = "fe80::214:4fff:fe0b:76c8";
-        const char *ipv4src = "192.168.100.1";
-        /* - */
-        memset(ipv4a, 1, sizeof(ipv4a));
-        if(1 != inet_pton(AF_INET, ipv4src, ipv4a))
-          exit(1); /* fail */
-        /* - */
-        if( (ipv4a[0] != 0xc0) ||
-            (ipv4a[1] != 0xa8) ||
-            (ipv4a[2] != 0x64) ||
-            (ipv4a[3] != 0x01) ||
-            (ipv4a[4] != 0x01) )
-          exit(1); /* fail */
-        /* - */
-        memset(ipv6a, 1, sizeof(ipv6a));
-        if(1 != inet_pton(AF_INET6, ipv6src, ipv6a))
-          exit(1); /* fail */
-        /* - */
-        if( (ipv6a[0]  != 0xfe) ||
-            (ipv6a[1]  != 0x80) ||
-            (ipv6a[8]  != 0x02) ||
-            (ipv6a[9]  != 0x14) ||
-            (ipv6a[10] != 0x4f) ||
-            (ipv6a[11] != 0xff) ||
-            (ipv6a[12] != 0xfe) ||
-            (ipv6a[13] != 0x0b) ||
-            (ipv6a[14] != 0x76) ||
-            (ipv6a[15] != 0xc8) ||
-            (ipv6a[16] != 0x01) )
-          exit(1); /* fail */
-        /* - */
-        if( (ipv6a[2]  != 0x0) ||
-            (ipv6a[3]  != 0x0) ||
-            (ipv6a[4]  != 0x0) ||
-            (ipv6a[5]  != 0x0) ||
-            (ipv6a[6]  != 0x0) ||
-            (ipv6a[7]  != 0x0) )
-          exit(1); /* fail */
-        /* - */
-        exit(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_works_inet_pton="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_works_inet_pton="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-  #
-  if test "$tst_compi_inet_pton" = "yes" &&
-    test "$tst_works_inet_pton" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton usage allowed" >&5
-$as_echo_n "checking if inet_pton usage allowed... " >&6; }
-    if test "x$curl_disallow_inet_pton" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_inet_pton="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_inet_pton="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton might be used" >&5
-$as_echo_n "checking if inet_pton might be used... " >&6; }
-  if test "$tst_links_inet_pton" = "yes" &&
-     test "$tst_proto_inet_pton" = "yes" &&
-     test "$tst_compi_inet_pton" = "yes" &&
-     test "$tst_allow_inet_pton" = "yes" &&
-     test "$tst_works_inet_pton" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_INET_PTON 1
-_ACEOF
-
-    ac_cv_func_inet_pton="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_inet_pton="no"
-  fi
-
-
-curl_includes_stropts="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#  include <sys/ioctl.h>
-#endif
-#ifdef HAVE_STROPTS_H
-#  include <stropts.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h unistd.h sys/socket.h sys/ioctl.h stropts.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_stropts
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-  tst_links_ioctl="unknown"
-  tst_proto_ioctl="unknown"
-  tst_compi_ioctl="unknown"
-  tst_allow_ioctl="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl can be linked" >&5
-$as_echo_n "checking if ioctl can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define ioctl innocuous_ioctl
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef ioctl
-#ifdef __cplusplus
-extern "C"
-#endif
-char ioctl ();
-#if defined __stub_ioctl || defined __stub___ioctl
-choke me
-#endif
-
-int main (void)
-{
-return ioctl ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_ioctl="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_ioctl="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl is prototyped" >&5
-$as_echo_n "checking if ioctl is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_stropts
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "ioctl" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_ioctl="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_ioctl="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl is compilable" >&5
-$as_echo_n "checking if ioctl is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stropts
-
-int main (void)
-{
-
-        if(0 != ioctl(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctl="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctl="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl usage allowed" >&5
-$as_echo_n "checking if ioctl usage allowed... " >&6; }
-    if test "x$curl_disallow_ioctl" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctl="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctl="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl might be used" >&5
-$as_echo_n "checking if ioctl might be used... " >&6; }
-  if test "$tst_links_ioctl" = "yes" &&
-     test "$tst_proto_ioctl" = "yes" &&
-     test "$tst_compi_ioctl" = "yes" &&
-     test "$tst_allow_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTL 1
-_ACEOF
-
-    ac_cv_func_ioctl="yes"
-
-  #
-  tst_compi_ioctl_fionbio="unknown"
-  tst_allow_ioctl_fionbio="unknown"
-  #
-  if test "$ac_cv_func_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl FIONBIO is compilable" >&5
-$as_echo_n "checking if ioctl FIONBIO is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stropts
-
-int main (void)
-{
-
-        int flags = 0;
-        if(0 != ioctl(0, FIONBIO, &flags))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctl_fionbio="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctl_fionbio="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctl_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl FIONBIO usage allowed" >&5
-$as_echo_n "checking if ioctl FIONBIO usage allowed... " >&6; }
-    if test "x$curl_disallow_ioctl_fionbio" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctl_fionbio="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctl_fionbio="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl FIONBIO might be used" >&5
-$as_echo_n "checking if ioctl FIONBIO might be used... " >&6; }
-  if test "$tst_compi_ioctl_fionbio" = "yes" &&
-     test "$tst_allow_ioctl_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTL_FIONBIO 1
-_ACEOF
-
-    ac_cv_func_ioctl_fionbio="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctl_fionbio="no"
-  fi
-
-
-  #
-  tst_compi_ioctl_siocgifaddr="unknown"
-  tst_allow_ioctl_siocgifaddr="unknown"
-  #
-  if test "$ac_cv_func_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl SIOCGIFADDR is compilable" >&5
-$as_echo_n "checking if ioctl SIOCGIFADDR is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stropts
-        #include <net/if.h>
-
-int main (void)
-{
-
-        struct ifreq ifr;
-        if(0 != ioctl(0, SIOCGIFADDR, &ifr))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctl_siocgifaddr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctl_siocgifaddr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctl_siocgifaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl SIOCGIFADDR usage allowed" >&5
-$as_echo_n "checking if ioctl SIOCGIFADDR usage allowed... " >&6; }
-    if test "x$curl_disallow_ioctl_siocgifaddr" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctl_siocgifaddr="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctl_siocgifaddr="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl SIOCGIFADDR might be used" >&5
-$as_echo_n "checking if ioctl SIOCGIFADDR might be used... " >&6; }
-  if test "$tst_compi_ioctl_siocgifaddr" = "yes" &&
-     test "$tst_allow_ioctl_siocgifaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTL_SIOCGIFADDR 1
-_ACEOF
-
-    ac_cv_func_ioctl_siocgifaddr="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctl_siocgifaddr="no"
-  fi
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctl="no"
-  fi
-
-
-    #
-  tst_links_ioctlsocket="unknown"
-  tst_proto_ioctlsocket="unknown"
-  tst_compi_ioctlsocket="unknown"
-  tst_allow_ioctlsocket="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket can be linked" >&5
-$as_echo_n "checking if ioctlsocket can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $curl_includes_winsock2
-
-int main (void)
-{
-
-      if(0 != ioctlsocket(0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_ioctlsocket="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_ioctlsocket="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket is prototyped" >&5
-$as_echo_n "checking if ioctlsocket is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_winsock2
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "ioctlsocket" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_ioctlsocket="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_ioctlsocket="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket is compilable" >&5
-$as_echo_n "checking if ioctlsocket is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_winsock2
-
-int main (void)
-{
-
-        if(0 != ioctlsocket(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctlsocket="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctlsocket="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket usage allowed" >&5
-$as_echo_n "checking if ioctlsocket usage allowed... " >&6; }
-    if test "x$curl_disallow_ioctlsocket" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctlsocket="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctlsocket="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket might be used" >&5
-$as_echo_n "checking if ioctlsocket might be used... " >&6; }
-  if test "$tst_links_ioctlsocket" = "yes" &&
-     test "$tst_proto_ioctlsocket" = "yes" &&
-     test "$tst_compi_ioctlsocket" = "yes" &&
-     test "$tst_allow_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTLSOCKET 1
-_ACEOF
-
-    ac_cv_func_ioctlsocket="yes"
-
-  #
-  tst_compi_ioctlsocket_fionbio="unknown"
-  tst_allow_ioctlsocket_fionbio="unknown"
-  #
-  if test "$ac_cv_func_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket FIONBIO is compilable" >&5
-$as_echo_n "checking if ioctlsocket FIONBIO is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_winsock2
-
-int main (void)
-{
-
-        int flags = 0;
-        if(0 != ioctlsocket(0, FIONBIO, &flags))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctlsocket_fionbio="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctlsocket_fionbio="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctlsocket_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket FIONBIO usage allowed" >&5
-$as_echo_n "checking if ioctlsocket FIONBIO usage allowed... " >&6; }
-    if test "x$curl_disallow_ioctlsocket_fionbio" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctlsocket_fionbio="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctlsocket_fionbio="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket FIONBIO might be used" >&5
-$as_echo_n "checking if ioctlsocket FIONBIO might be used... " >&6; }
-  if test "$tst_compi_ioctlsocket_fionbio" = "yes" &&
-     test "$tst_allow_ioctlsocket_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTLSOCKET_FIONBIO 1
-_ACEOF
-
-    ac_cv_func_ioctlsocket_fionbio="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctlsocket_fionbio="no"
-  fi
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctlsocket="no"
-  fi
-
-
-    #
-  tst_links_ioctlsocket_camel="unknown"
-  tst_proto_ioctlsocket_camel="unknown"
-  tst_compi_ioctlsocket_camel="unknown"
-  tst_allow_ioctlsocket_camel="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket can be linked" >&5
-$as_echo_n "checking if IoctlSocket can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define IoctlSocket innocuous_IoctlSocket
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef IoctlSocket
-#ifdef __cplusplus
-extern "C"
-#endif
-char IoctlSocket ();
-#if defined __stub_IoctlSocket || defined __stub___IoctlSocket
-choke me
-#endif
-
-int main (void)
-{
-return IoctlSocket ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_ioctlsocket_camel="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_ioctlsocket_camel="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket is prototyped" >&5
-$as_echo_n "checking if IoctlSocket is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_stropts
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "IoctlSocket" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_ioctlsocket_camel="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_ioctlsocket_camel="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket is compilable" >&5
-$as_echo_n "checking if IoctlSocket is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stropts
-
-int main (void)
-{
-
-        if(0 != IoctlSocket(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctlsocket_camel="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctlsocket_camel="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket usage allowed" >&5
-$as_echo_n "checking if IoctlSocket usage allowed... " >&6; }
-    if test "x$curl_disallow_ioctlsocket_camel" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctlsocket_camel="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctlsocket_camel="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket might be used" >&5
-$as_echo_n "checking if IoctlSocket might be used... " >&6; }
-  if test "$tst_links_ioctlsocket_camel" = "yes" &&
-     test "$tst_proto_ioctlsocket_camel" = "yes" &&
-     test "$tst_compi_ioctlsocket_camel" = "yes" &&
-     test "$tst_allow_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTLSOCKET_CAMEL 1
-_ACEOF
-
-    ac_cv_func_ioctlsocket_camel="yes"
-
-  #
-  tst_compi_ioctlsocket_camel_fionbio="unknown"
-  tst_allow_ioctlsocket_camel_fionbio="unknown"
-  #
-  if test "$ac_cv_func_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket FIONBIO is compilable" >&5
-$as_echo_n "checking if IoctlSocket FIONBIO is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stropts
-
-int main (void)
-{
-
-        long flags = 0;
-        if(0 != ioctlsocket(0, FIONBIO, &flags))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_ioctlsocket_camel_fionbio="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_ioctlsocket_camel_fionbio="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_ioctlsocket_camel_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket FIONBIO usage allowed" >&5
-$as_echo_n "checking if IoctlSocket FIONBIO usage allowed... " >&6; }
-    if test "x$curl_disallow_ioctlsocket_camel_fionbio" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_ioctlsocket_camel_fionbio="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_ioctlsocket_camel_fionbio="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket FIONBIO might be used" >&5
-$as_echo_n "checking if IoctlSocket FIONBIO might be used... " >&6; }
-  if test "$tst_compi_ioctlsocket_camel_fionbio" = "yes" &&
-     test "$tst_allow_ioctlsocket_camel_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTLSOCKET_CAMEL_FIONBIO 1
-_ACEOF
-
-    ac_cv_func_ioctlsocket_camel_fionbio="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctlsocket_camel_fionbio="no"
-  fi
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_ioctlsocket_camel="no"
-  fi
-
-
-      #
-  tst_links_localtime_r="unknown"
-  tst_proto_localtime_r="unknown"
-  tst_compi_localtime_r="unknown"
-  tst_works_localtime_r="unknown"
-  tst_allow_localtime_r="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if localtime_r can be linked" >&5
-$as_echo_n "checking if localtime_r can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define localtime_r innocuous_localtime_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef localtime_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char localtime_r ();
-#if defined __stub_localtime_r || defined __stub___localtime_r
-choke me
-#endif
-
-int main (void)
-{
-return localtime_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_localtime_r="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_localtime_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_localtime_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if localtime_r is prototyped" >&5
-$as_echo_n "checking if localtime_r is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_time
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "localtime_r" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_localtime_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_localtime_r="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_localtime_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if localtime_r is compilable" >&5
-$as_echo_n "checking if localtime_r is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_time
-
-int main (void)
-{
-
-        if(0 != localtime_r(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_localtime_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_localtime_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_localtime_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if localtime_r seems to work" >&5
-$as_echo_n "checking if localtime_r seems to work... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stdlib
-        $curl_includes_time
-
-int main (void)
-{
-
-        time_t clock = 1170352587;
-        struct tm *tmp = 0;
-        struct tm result;
-        tmp = localtime_r(&clock, &result);
-        if(tmp)
-          exit(0);
-        else
-          exit(1);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_works_localtime_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_works_localtime_r="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-  #
-  if test "$tst_compi_localtime_r" = "yes" &&
-    test "$tst_works_localtime_r" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if localtime_r usage allowed" >&5
-$as_echo_n "checking if localtime_r usage allowed... " >&6; }
-    if test "x$curl_disallow_localtime_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_localtime_r="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_localtime_r="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if localtime_r might be used" >&5
-$as_echo_n "checking if localtime_r might be used... " >&6; }
-  if test "$tst_links_localtime_r" = "yes" &&
-     test "$tst_proto_localtime_r" = "yes" &&
-     test "$tst_compi_localtime_r" = "yes" &&
-     test "$tst_allow_localtime_r" = "yes" &&
-     test "$tst_works_localtime_r" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_LOCALTIME_R 1
-_ACEOF
-
-    ac_cv_func_localtime_r="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_localtime_r="no"
-  fi
-
-
-    #
-  tst_links_memrchr="unknown"
-  tst_macro_memrchr="unknown"
-  tst_proto_memrchr="unknown"
-  tst_compi_memrchr="unknown"
-  tst_allow_memrchr="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if memrchr can be linked" >&5
-$as_echo_n "checking if memrchr can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define memrchr innocuous_memrchr
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef memrchr
-#ifdef __cplusplus
-extern "C"
-#endif
-char memrchr ();
-#if defined __stub_memrchr || defined __stub___memrchr
-choke me
-#endif
-
-int main (void)
-{
-return memrchr ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_memrchr="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_memrchr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_memrchr" = "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if memrchr seems a macro" >&5
-$as_echo_n "checking if memrchr seems a macro... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != memrchr(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_macro_memrchr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_macro_memrchr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_links_memrchr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if memrchr is prototyped" >&5
-$as_echo_n "checking if memrchr is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memrchr" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_memrchr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_memrchr="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_memrchr" = "yes" ||
-     test "$tst_macro_memrchr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if memrchr is compilable" >&5
-$as_echo_n "checking if memrchr is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != memrchr(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_memrchr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_memrchr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_memrchr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if memrchr usage allowed" >&5
-$as_echo_n "checking if memrchr usage allowed... " >&6; }
-    if test "x$curl_disallow_memrchr" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_memrchr="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_memrchr="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if memrchr might be used" >&5
-$as_echo_n "checking if memrchr might be used... " >&6; }
-  if (test "$tst_proto_memrchr" = "yes" ||
-      test "$tst_macro_memrchr" = "yes") &&
-     test "$tst_compi_memrchr" = "yes" &&
-     test "$tst_allow_memrchr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_MEMRCHR 1
-_ACEOF
-
-    ac_cv_func_memrchr="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_memrchr="no"
-  fi
-
-
-curl_includes_poll="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_POLL_H
-#  include <poll.h>
-#endif
-#ifdef HAVE_SYS_POLL_H
-#  include <sys/poll.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h poll.h sys/poll.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_poll
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-      #
-  tst_links_poll="unknown"
-  tst_proto_poll="unknown"
-  tst_compi_poll="unknown"
-  tst_works_poll="unknown"
-  tst_allow_poll="unknown"
-  #
-  case $host_os in
-    darwin*|interix*)
-                              curl_disallow_poll="yes"
-      ;;
-  esac
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if poll can be linked" >&5
-$as_echo_n "checking if poll can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $curl_includes_poll
-
-int main (void)
-{
-
-      if(0 != poll(0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_poll="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_poll="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_poll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if poll is prototyped" >&5
-$as_echo_n "checking if poll is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_poll
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "poll" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_poll="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_poll="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_poll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if poll is compilable" >&5
-$as_echo_n "checking if poll is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_poll
-
-int main (void)
-{
-
-        if(0 != poll(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_poll="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_poll="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_poll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if poll seems to work" >&5
-$as_echo_n "checking if poll seems to work... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stdlib
-        $curl_includes_poll
-
-int main (void)
-{
-
-        if(0 != poll(0, 0, 10))
-          exit(1); /* fail */
-        else
-          exit(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_works_poll="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_works_poll="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-  #
-  if test "$tst_compi_poll" = "yes" &&
-    test "$tst_works_poll" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if poll usage allowed" >&5
-$as_echo_n "checking if poll usage allowed... " >&6; }
-    if test "x$curl_disallow_poll" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_poll="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_poll="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if poll might be used" >&5
-$as_echo_n "checking if poll might be used... " >&6; }
-  if test "$tst_links_poll" = "yes" &&
-     test "$tst_proto_poll" = "yes" &&
-     test "$tst_compi_poll" = "yes" &&
-     test "$tst_allow_poll" = "yes" &&
-     test "$tst_works_poll" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_POLL 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_POLL_FINE 1
-_ACEOF
-
-    ac_cv_func_poll="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_poll="no"
-  fi
-
-
-      #
-  tst_links_setsockopt="unknown"
-  tst_proto_setsockopt="unknown"
-  tst_compi_setsockopt="unknown"
-  tst_allow_setsockopt="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt can be linked" >&5
-$as_echo_n "checking if setsockopt can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $curl_includes_winsock2
-      $curl_includes_sys_socket
-
-int main (void)
-{
-
-      if(0 != setsockopt(0, 0, 0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_setsockopt="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_setsockopt="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt is prototyped" >&5
-$as_echo_n "checking if setsockopt is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_winsock2
-      $curl_includes_sys_socket
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "setsockopt" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_setsockopt="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_setsockopt="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt is compilable" >&5
-$as_echo_n "checking if setsockopt is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_winsock2
-        $curl_includes_sys_socket
-
-int main (void)
-{
-
-        if(0 != setsockopt(0, 0, 0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_setsockopt="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_setsockopt="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt usage allowed" >&5
-$as_echo_n "checking if setsockopt usage allowed... " >&6; }
-    if test "x$curl_disallow_setsockopt" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_setsockopt="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_setsockopt="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt might be used" >&5
-$as_echo_n "checking if setsockopt might be used... " >&6; }
-  if test "$tst_links_setsockopt" = "yes" &&
-     test "$tst_proto_setsockopt" = "yes" &&
-     test "$tst_compi_setsockopt" = "yes" &&
-     test "$tst_allow_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SETSOCKOPT 1
-_ACEOF
-
-    ac_cv_func_setsockopt="yes"
-
-  #
-  tst_compi_setsockopt_so_nonblock="unknown"
-  tst_allow_setsockopt_so_nonblock="unknown"
-  #
-  if test "$ac_cv_func_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt SO_NONBLOCK is compilable" >&5
-$as_echo_n "checking if setsockopt SO_NONBLOCK is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_winsock2
-        $curl_includes_sys_socket
-
-int main (void)
-{
-
-        if(0 != setsockopt(0, SOL_SOCKET, SO_NONBLOCK, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_setsockopt_so_nonblock="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_setsockopt_so_nonblock="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_setsockopt_so_nonblock" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt SO_NONBLOCK usage allowed" >&5
-$as_echo_n "checking if setsockopt SO_NONBLOCK usage allowed... " >&6; }
-    if test "x$curl_disallow_setsockopt_so_nonblock" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_setsockopt_so_nonblock="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_setsockopt_so_nonblock="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt SO_NONBLOCK might be used" >&5
-$as_echo_n "checking if setsockopt SO_NONBLOCK might be used... " >&6; }
-  if test "$tst_compi_setsockopt_so_nonblock" = "yes" &&
-     test "$tst_allow_setsockopt_so_nonblock" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SETSOCKOPT_SO_NONBLOCK 1
-_ACEOF
-
-    ac_cv_func_setsockopt_so_nonblock="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_setsockopt_so_nonblock="no"
-  fi
-
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_setsockopt="no"
-  fi
-
-
-curl_includes_signal="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SIGNAL_H
-#  include <signal.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h signal.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_signal
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-  tst_links_sigaction="unknown"
-  tst_proto_sigaction="unknown"
-  tst_compi_sigaction="unknown"
-  tst_allow_sigaction="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigaction can be linked" >&5
-$as_echo_n "checking if sigaction can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define sigaction innocuous_sigaction
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef sigaction
-#ifdef __cplusplus
-extern "C"
-#endif
-char sigaction ();
-#if defined __stub_sigaction || defined __stub___sigaction
-choke me
-#endif
-
-int main (void)
-{
-return sigaction ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_sigaction="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_sigaction="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_sigaction" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigaction is prototyped" >&5
-$as_echo_n "checking if sigaction is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_signal
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "sigaction" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_sigaction="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_sigaction="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_sigaction" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigaction is compilable" >&5
-$as_echo_n "checking if sigaction is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_signal
-
-int main (void)
-{
-
-        if(0 != sigaction(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_sigaction="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_sigaction="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_sigaction" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigaction usage allowed" >&5
-$as_echo_n "checking if sigaction usage allowed... " >&6; }
-    if test "x$curl_disallow_sigaction" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_sigaction="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_sigaction="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigaction might be used" >&5
-$as_echo_n "checking if sigaction might be used... " >&6; }
-  if test "$tst_links_sigaction" = "yes" &&
-     test "$tst_proto_sigaction" = "yes" &&
-     test "$tst_compi_sigaction" = "yes" &&
-     test "$tst_allow_sigaction" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGACTION 1
-_ACEOF
-
-    ac_cv_func_sigaction="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_sigaction="no"
-  fi
-
-
-    #
-  tst_links_siginterrupt="unknown"
-  tst_proto_siginterrupt="unknown"
-  tst_compi_siginterrupt="unknown"
-  tst_allow_siginterrupt="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if siginterrupt can be linked" >&5
-$as_echo_n "checking if siginterrupt can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define siginterrupt innocuous_siginterrupt
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef siginterrupt
-#ifdef __cplusplus
-extern "C"
-#endif
-char siginterrupt ();
-#if defined __stub_siginterrupt || defined __stub___siginterrupt
-choke me
-#endif
-
-int main (void)
-{
-return siginterrupt ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_siginterrupt="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_siginterrupt="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_siginterrupt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if siginterrupt is prototyped" >&5
-$as_echo_n "checking if siginterrupt is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_signal
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "siginterrupt" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_siginterrupt="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_siginterrupt="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_siginterrupt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if siginterrupt is compilable" >&5
-$as_echo_n "checking if siginterrupt is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_signal
-
-int main (void)
-{
-
-        if(0 != siginterrupt(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_siginterrupt="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_siginterrupt="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_siginterrupt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if siginterrupt usage allowed" >&5
-$as_echo_n "checking if siginterrupt usage allowed... " >&6; }
-    if test "x$curl_disallow_siginterrupt" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_siginterrupt="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_siginterrupt="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if siginterrupt might be used" >&5
-$as_echo_n "checking if siginterrupt might be used... " >&6; }
-  if test "$tst_links_siginterrupt" = "yes" &&
-     test "$tst_proto_siginterrupt" = "yes" &&
-     test "$tst_compi_siginterrupt" = "yes" &&
-     test "$tst_allow_siginterrupt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGINTERRUPT 1
-_ACEOF
-
-    ac_cv_func_siginterrupt="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_siginterrupt="no"
-  fi
-
-
-    #
-  tst_links_signal="unknown"
-  tst_proto_signal="unknown"
-  tst_compi_signal="unknown"
-  tst_allow_signal="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal can be linked" >&5
-$as_echo_n "checking if signal can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define signal innocuous_signal
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef signal
-#ifdef __cplusplus
-extern "C"
-#endif
-char signal ();
-#if defined __stub_signal || defined __stub___signal
-choke me
-#endif
-
-int main (void)
-{
-return signal ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_signal="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_signal="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_signal" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal is prototyped" >&5
-$as_echo_n "checking if signal is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_signal
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "signal" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_signal="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_signal="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_signal" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal is compilable" >&5
-$as_echo_n "checking if signal is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_signal
-
-int main (void)
-{
-
-        if(0 != signal(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_signal="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_signal="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_signal" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal usage allowed" >&5
-$as_echo_n "checking if signal usage allowed... " >&6; }
-    if test "x$curl_disallow_signal" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_signal="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_signal="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal might be used" >&5
-$as_echo_n "checking if signal might be used... " >&6; }
-  if test "$tst_links_signal" = "yes" &&
-     test "$tst_proto_signal" = "yes" &&
-     test "$tst_compi_signal" = "yes" &&
-     test "$tst_allow_signal" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGNAL 1
-_ACEOF
-
-    ac_cv_func_signal="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_signal="no"
-  fi
-
-
-curl_includes_setjmp="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SETJMP_H
-#  include <setjmp.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h setjmp.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_setjmp
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-  tst_links_sigsetjmp="unknown"
-  tst_macro_sigsetjmp="unknown"
-  tst_proto_sigsetjmp="unknown"
-  tst_compi_sigsetjmp="unknown"
-  tst_allow_sigsetjmp="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp can be linked" >&5
-$as_echo_n "checking if sigsetjmp can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define sigsetjmp innocuous_sigsetjmp
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef sigsetjmp
-#ifdef __cplusplus
-extern "C"
-#endif
-char sigsetjmp ();
-#if defined __stub_sigsetjmp || defined __stub___sigsetjmp
-choke me
-#endif
-
-int main (void)
-{
-return sigsetjmp ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_sigsetjmp="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_sigsetjmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_sigsetjmp" = "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp seems a macro" >&5
-$as_echo_n "checking if sigsetjmp seems a macro... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_setjmp
-
-int main (void)
-{
-
-        sigjmp_buf env;
-        if(0 != sigsetjmp(env, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_macro_sigsetjmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_macro_sigsetjmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_links_sigsetjmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp is prototyped" >&5
-$as_echo_n "checking if sigsetjmp is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_setjmp
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "sigsetjmp" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_sigsetjmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_sigsetjmp="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_sigsetjmp" = "yes" ||
-     test "$tst_macro_sigsetjmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp is compilable" >&5
-$as_echo_n "checking if sigsetjmp is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_setjmp
-
-int main (void)
-{
-
-        sigjmp_buf env;
-        if(0 != sigsetjmp(env, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_sigsetjmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_sigsetjmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_sigsetjmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp usage allowed" >&5
-$as_echo_n "checking if sigsetjmp usage allowed... " >&6; }
-    if test "x$curl_disallow_sigsetjmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_sigsetjmp="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_sigsetjmp="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp might be used" >&5
-$as_echo_n "checking if sigsetjmp might be used... " >&6; }
-  if (test "$tst_proto_sigsetjmp" = "yes" ||
-      test "$tst_macro_sigsetjmp" = "yes") &&
-     test "$tst_compi_sigsetjmp" = "yes" &&
-     test "$tst_allow_sigsetjmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGSETJMP 1
-_ACEOF
-
-    ac_cv_func_sigsetjmp="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_sigsetjmp="no"
-  fi
-
-
-        #
-  tst_links_socket="unknown"
-  tst_proto_socket="unknown"
-  tst_compi_socket="unknown"
-  tst_allow_socket="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket can be linked" >&5
-$as_echo_n "checking if socket can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-      $curl_includes_winsock2
-      $curl_includes_sys_socket
-      $curl_includes_socket
-
-int main (void)
-{
-
-      if(0 != socket(0, 0, 0))
-        return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_socket="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_socket="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_socket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket is prototyped" >&5
-$as_echo_n "checking if socket is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_winsock2
-      $curl_includes_sys_socket
-      $curl_includes_socket
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "socket" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_socket="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_socket="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_socket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket is compilable" >&5
-$as_echo_n "checking if socket is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_winsock2
-        $curl_includes_sys_socket
-        $curl_includes_socket
-
-int main (void)
-{
-
-        if(0 != socket(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_socket="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_socket="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_socket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket usage allowed" >&5
-$as_echo_n "checking if socket usage allowed... " >&6; }
-    if test "x$curl_disallow_socket" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_socket="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_socket="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket might be used" >&5
-$as_echo_n "checking if socket might be used... " >&6; }
-  if test "$tst_links_socket" = "yes" &&
-     test "$tst_proto_socket" = "yes" &&
-     test "$tst_compi_socket" = "yes" &&
-     test "$tst_allow_socket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SOCKET 1
-_ACEOF
-
-    ac_cv_func_socket="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_socket="no"
-  fi
-
-
-    #
-  tst_links_strcasecmp="unknown"
-  tst_proto_strcasecmp="unknown"
-  tst_compi_strcasecmp="unknown"
-  tst_allow_strcasecmp="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp can be linked" >&5
-$as_echo_n "checking if strcasecmp can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strcasecmp innocuous_strcasecmp
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strcasecmp
-#ifdef __cplusplus
-extern "C"
-#endif
-char strcasecmp ();
-#if defined __stub_strcasecmp || defined __stub___strcasecmp
-choke me
-#endif
-
-int main (void)
-{
-return strcasecmp ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strcasecmp="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strcasecmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strcasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp is prototyped" >&5
-$as_echo_n "checking if strcasecmp is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strcasecmp" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strcasecmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strcasecmp="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strcasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp is compilable" >&5
-$as_echo_n "checking if strcasecmp is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != strcasecmp(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strcasecmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strcasecmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strcasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp usage allowed" >&5
-$as_echo_n "checking if strcasecmp usage allowed... " >&6; }
-    if test "x$curl_disallow_strcasecmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strcasecmp="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strcasecmp="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp might be used" >&5
-$as_echo_n "checking if strcasecmp might be used... " >&6; }
-  if test "$tst_links_strcasecmp" = "yes" &&
-     test "$tst_proto_strcasecmp" = "yes" &&
-     test "$tst_compi_strcasecmp" = "yes" &&
-     test "$tst_allow_strcasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRCASECMP 1
-_ACEOF
-
-    ac_cv_func_strcasecmp="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strcasecmp="no"
-  fi
-
-
-    #
-  tst_links_strcasestr="unknown"
-  tst_proto_strcasestr="unknown"
-  tst_compi_strcasestr="unknown"
-  tst_allow_strcasestr="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasestr can be linked" >&5
-$as_echo_n "checking if strcasestr can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strcasestr innocuous_strcasestr
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strcasestr
-#ifdef __cplusplus
-extern "C"
-#endif
-char strcasestr ();
-#if defined __stub_strcasestr || defined __stub___strcasestr
-choke me
-#endif
-
-int main (void)
-{
-return strcasestr ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strcasestr="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strcasestr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strcasestr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasestr is prototyped" >&5
-$as_echo_n "checking if strcasestr is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strcasestr" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strcasestr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strcasestr="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strcasestr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasestr is compilable" >&5
-$as_echo_n "checking if strcasestr is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != strcasestr(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strcasestr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strcasestr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strcasestr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasestr usage allowed" >&5
-$as_echo_n "checking if strcasestr usage allowed... " >&6; }
-    if test "x$curl_disallow_strcasestr" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strcasestr="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strcasestr="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasestr might be used" >&5
-$as_echo_n "checking if strcasestr might be used... " >&6; }
-  if test "$tst_links_strcasestr" = "yes" &&
-     test "$tst_proto_strcasestr" = "yes" &&
-     test "$tst_compi_strcasestr" = "yes" &&
-     test "$tst_allow_strcasestr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRCASESTR 1
-_ACEOF
-
-    ac_cv_func_strcasestr="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strcasestr="no"
-  fi
-
-
-    #
-  tst_links_strcmpi="unknown"
-  tst_proto_strcmpi="unknown"
-  tst_compi_strcmpi="unknown"
-  tst_allow_strcmpi="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi can be linked" >&5
-$as_echo_n "checking if strcmpi can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strcmpi innocuous_strcmpi
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strcmpi
-#ifdef __cplusplus
-extern "C"
-#endif
-char strcmpi ();
-#if defined __stub_strcmpi || defined __stub___strcmpi
-choke me
-#endif
-
-int main (void)
-{
-return strcmpi ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strcmpi="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strcmpi="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strcmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi is prototyped" >&5
-$as_echo_n "checking if strcmpi is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strcmpi" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strcmpi="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strcmpi="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strcmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi is compilable" >&5
-$as_echo_n "checking if strcmpi is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != strcmpi(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strcmpi="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strcmpi="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strcmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi usage allowed" >&5
-$as_echo_n "checking if strcmpi usage allowed... " >&6; }
-    if test "x$curl_disallow_strcmpi" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strcmpi="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strcmpi="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi might be used" >&5
-$as_echo_n "checking if strcmpi might be used... " >&6; }
-  if test "$tst_links_strcmpi" = "yes" &&
-     test "$tst_proto_strcmpi" = "yes" &&
-     test "$tst_compi_strcmpi" = "yes" &&
-     test "$tst_allow_strcmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRCMPI 1
-_ACEOF
-
-    ac_cv_func_strcmpi="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strcmpi="no"
-  fi
-
-
-    #
-  tst_links_strdup="unknown"
-  tst_proto_strdup="unknown"
-  tst_compi_strdup="unknown"
-  tst_allow_strdup="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup can be linked" >&5
-$as_echo_n "checking if strdup can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strdup innocuous_strdup
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strdup
-#ifdef __cplusplus
-extern "C"
-#endif
-char strdup ();
-#if defined __stub_strdup || defined __stub___strdup
-choke me
-#endif
-
-int main (void)
-{
-return strdup ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strdup="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strdup="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strdup" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup is prototyped" >&5
-$as_echo_n "checking if strdup is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strdup" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strdup="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strdup="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strdup" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup is compilable" >&5
-$as_echo_n "checking if strdup is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != strdup(0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strdup="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strdup="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strdup" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup usage allowed" >&5
-$as_echo_n "checking if strdup usage allowed... " >&6; }
-    if test "x$curl_disallow_strdup" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strdup="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strdup="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup might be used" >&5
-$as_echo_n "checking if strdup might be used... " >&6; }
-  if test "$tst_links_strdup" = "yes" &&
-     test "$tst_proto_strdup" = "yes" &&
-     test "$tst_compi_strdup" = "yes" &&
-     test "$tst_allow_strdup" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRDUP 1
-_ACEOF
-
-    ac_cv_func_strdup="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strdup="no"
-  fi
-
-
-      #
-  tst_links_strerror_r="unknown"
-  tst_proto_strerror_r="unknown"
-  tst_compi_strerror_r="unknown"
-  tst_glibc_strerror_r="unknown"
-  tst_posix_strerror_r="unknown"
-  tst_allow_strerror_r="unknown"
-  tst_works_glibc_strerror_r="unknown"
-  tst_works_posix_strerror_r="unknown"
-  tst_glibc_strerror_r_type_arg3="unknown"
-  tst_posix_strerror_r_type_arg3="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r can be linked" >&5
-$as_echo_n "checking if strerror_r can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strerror_r innocuous_strerror_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strerror_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char strerror_r ();
-#if defined __stub_strerror_r || defined __stub___strerror_r
-choke me
-#endif
-
-int main (void)
-{
-return strerror_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strerror_r="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strerror_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strerror_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r is prototyped" >&5
-$as_echo_n "checking if strerror_r is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strerror_r" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strerror_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strerror_r="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strerror_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r is compilable" >&5
-$as_echo_n "checking if strerror_r is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != strerror_r(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strerror_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strerror_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strerror_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r is glibc like" >&5
-$as_echo_n "checking if strerror_r is glibc like... " >&6; }
-    tst_glibc_strerror_r_type_arg3="unknown"
-    for arg3 in 'size_t' 'int' 'unsigned int'; do
-      if test "$tst_glibc_strerror_r_type_arg3" = "unknown"; then
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-            $curl_includes_string
-
-int main (void)
-{
-
-            char *strerror_r(int errnum, char *workbuf, $arg3 bufsize);
-            if(0 != strerror_r(0, 0, 0))
-              return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-          tst_glibc_strerror_r_type_arg3="$arg3"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-      fi
-    done
-    case "$tst_glibc_strerror_r_type_arg3" in
-      unknown)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_glibc_strerror_r="no"
-        ;;
-      *)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_glibc_strerror_r="yes"
-        ;;
-    esac
-  fi
-  #
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tst_glibc_strerror_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r seems to work" >&5
-$as_echo_n "checking if strerror_r seems to work... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stdlib
-        $curl_includes_string
-#       include <errno.h>
-
-int main (void)
-{
-
-        char buffer[1024];
-        char *string = 0;
-        buffer[0] = '\0';
-        string = strerror_r(EACCES, buffer, sizeof(buffer));
-        if(!string)
-          exit(1); /* fail */
-        if(!string[0])
-          exit(1); /* fail */
-        else
-          exit(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_works_glibc_strerror_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_works_glibc_strerror_r="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-  #
-  if test "$tst_compi_strerror_r" = "yes" &&
-    test "$tst_works_glibc_strerror_r" != "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r is POSIX like" >&5
-$as_echo_n "checking if strerror_r is POSIX like... " >&6; }
-    tst_posix_strerror_r_type_arg3="unknown"
-    for arg3 in 'size_t' 'int' 'unsigned int'; do
-      if test "$tst_posix_strerror_r_type_arg3" = "unknown"; then
-        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-            $curl_includes_string
-
-int main (void)
-{
-
-            int strerror_r(int errnum, char *resultbuf, $arg3 bufsize);
-            if(0 != strerror_r(0, 0, 0))
-              return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-          tst_posix_strerror_r_type_arg3="$arg3"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-      fi
-    done
-    case "$tst_posix_strerror_r_type_arg3" in
-      unknown)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        tst_posix_strerror_r="no"
-        ;;
-      *)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        tst_posix_strerror_r="yes"
-        ;;
-    esac
-  fi
-  #
-    if test "x$cross_compiling" != "xyes" &&
-    test "$tst_posix_strerror_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r seems to work" >&5
-$as_echo_n "checking if strerror_r seems to work... " >&6; }
-    if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run test program while cross compiling
-See \`config.log' for more details" "$LINENO" 5; }
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stdlib
-        $curl_includes_string
-#       include <errno.h>
-
-int main (void)
-{
-
-        char buffer[1024];
-        int error = 1;
-        buffer[0] = '\0';
-        error = strerror_r(EACCES, buffer, sizeof(buffer));
-        if(error)
-          exit(1); /* fail */
-        if(buffer[0] == '\0')
-          exit(1); /* fail */
-        else
-          exit(0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_works_posix_strerror_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_works_posix_strerror_r="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-  fi
-  #
-  if test "$tst_works_glibc_strerror_r" = "yes"; then
-    tst_posix_strerror_r="no"
-  fi
-  if test "$tst_works_posix_strerror_r" = "yes"; then
-    tst_glibc_strerror_r="no"
-  fi
-  if test "$tst_glibc_strerror_r" = "yes" &&
-    test "$tst_works_glibc_strerror_r" != "no" &&
-    test "$tst_posix_strerror_r" != "yes"; then
-    tst_allow_strerror_r="check"
-  fi
-  if test "$tst_posix_strerror_r" = "yes" &&
-    test "$tst_works_posix_strerror_r" != "no" &&
-    test "$tst_glibc_strerror_r" != "yes"; then
-    tst_allow_strerror_r="check"
-  fi
-  if test "$tst_allow_strerror_r" = "check"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r usage allowed" >&5
-$as_echo_n "checking if strerror_r usage allowed... " >&6; }
-    if test "x$curl_disallow_strerror_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strerror_r="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strerror_r="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r might be used" >&5
-$as_echo_n "checking if strerror_r might be used... " >&6; }
-  if test "$tst_links_strerror_r" = "yes" &&
-     test "$tst_proto_strerror_r" = "yes" &&
-     test "$tst_compi_strerror_r" = "yes" &&
-     test "$tst_allow_strerror_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    if test "$tst_glibc_strerror_r" = "yes"; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRERROR_R 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GLIBC_STRERROR_R 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define STRERROR_R_TYPE_ARG3 $tst_glibc_strerror_r_type_arg3
-_ACEOF
-
-    fi
-    if test "$tst_posix_strerror_r" = "yes"; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRERROR_R 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_POSIX_STRERROR_R 1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define STRERROR_R_TYPE_ARG3 $tst_posix_strerror_r_type_arg3
-_ACEOF
-
-    fi
-    ac_cv_func_strerror_r="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strerror_r="no"
-  fi
-  #
-  if test "$tst_compi_strerror_r" = "yes" &&
-     test "$tst_allow_strerror_r" = "unknown"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot determine strerror_r() style: edit lib/curl_config.h manually." >&5
-$as_echo "$as_me: WARNING: cannot determine strerror_r() style: edit lib/curl_config.h manually." >&2;}
-  fi
-  #
-
-
-    #
-  tst_links_stricmp="unknown"
-  tst_proto_stricmp="unknown"
-  tst_compi_stricmp="unknown"
-  tst_allow_stricmp="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp can be linked" >&5
-$as_echo_n "checking if stricmp can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define stricmp innocuous_stricmp
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef stricmp
-#ifdef __cplusplus
-extern "C"
-#endif
-char stricmp ();
-#if defined __stub_stricmp || defined __stub___stricmp
-choke me
-#endif
-
-int main (void)
-{
-return stricmp ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_stricmp="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_stricmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_stricmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp is prototyped" >&5
-$as_echo_n "checking if stricmp is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "stricmp" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_stricmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_stricmp="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_stricmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp is compilable" >&5
-$as_echo_n "checking if stricmp is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != stricmp(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_stricmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_stricmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_stricmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp usage allowed" >&5
-$as_echo_n "checking if stricmp usage allowed... " >&6; }
-    if test "x$curl_disallow_stricmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_stricmp="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_stricmp="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp might be used" >&5
-$as_echo_n "checking if stricmp might be used... " >&6; }
-  if test "$tst_links_stricmp" = "yes" &&
-     test "$tst_proto_stricmp" = "yes" &&
-     test "$tst_compi_stricmp" = "yes" &&
-     test "$tst_allow_stricmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRICMP 1
-_ACEOF
-
-    ac_cv_func_stricmp="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_stricmp="no"
-  fi
-
-
-    #
-  tst_links_strlcat="unknown"
-  tst_proto_strlcat="unknown"
-  tst_compi_strlcat="unknown"
-  tst_allow_strlcat="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strlcat can be linked" >&5
-$as_echo_n "checking if strlcat can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strlcat innocuous_strlcat
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strlcat
-#ifdef __cplusplus
-extern "C"
-#endif
-char strlcat ();
-#if defined __stub_strlcat || defined __stub___strlcat
-choke me
-#endif
-
-int main (void)
-{
-return strlcat ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strlcat="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strlcat="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strlcat" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strlcat is prototyped" >&5
-$as_echo_n "checking if strlcat is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strlcat" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strlcat="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strlcat="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strlcat" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strlcat is compilable" >&5
-$as_echo_n "checking if strlcat is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != strlcat(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strlcat="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strlcat="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strlcat" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strlcat usage allowed" >&5
-$as_echo_n "checking if strlcat usage allowed... " >&6; }
-    if test "x$curl_disallow_strlcat" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strlcat="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strlcat="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strlcat might be used" >&5
-$as_echo_n "checking if strlcat might be used... " >&6; }
-  if test "$tst_links_strlcat" = "yes" &&
-     test "$tst_proto_strlcat" = "yes" &&
-     test "$tst_compi_strlcat" = "yes" &&
-     test "$tst_allow_strlcat" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRLCAT 1
-_ACEOF
-
-    ac_cv_func_strlcat="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strlcat="no"
-  fi
-
-
-    #
-  tst_links_strncasecmp="unknown"
-  tst_proto_strncasecmp="unknown"
-  tst_compi_strncasecmp="unknown"
-  tst_allow_strncasecmp="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncasecmp can be linked" >&5
-$as_echo_n "checking if strncasecmp can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strncasecmp innocuous_strncasecmp
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strncasecmp
-#ifdef __cplusplus
-extern "C"
-#endif
-char strncasecmp ();
-#if defined __stub_strncasecmp || defined __stub___strncasecmp
-choke me
-#endif
-
-int main (void)
-{
-return strncasecmp ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strncasecmp="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strncasecmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strncasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncasecmp is prototyped" >&5
-$as_echo_n "checking if strncasecmp is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strncasecmp" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strncasecmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strncasecmp="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strncasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncasecmp is compilable" >&5
-$as_echo_n "checking if strncasecmp is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != strncasecmp(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strncasecmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strncasecmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strncasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncasecmp usage allowed" >&5
-$as_echo_n "checking if strncasecmp usage allowed... " >&6; }
-    if test "x$curl_disallow_strncasecmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strncasecmp="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strncasecmp="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncasecmp might be used" >&5
-$as_echo_n "checking if strncasecmp might be used... " >&6; }
-  if test "$tst_links_strncasecmp" = "yes" &&
-     test "$tst_proto_strncasecmp" = "yes" &&
-     test "$tst_compi_strncasecmp" = "yes" &&
-     test "$tst_allow_strncasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRNCASECMP 1
-_ACEOF
-
-    ac_cv_func_strncasecmp="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strncasecmp="no"
-  fi
-
-
-    #
-  tst_links_strncmpi="unknown"
-  tst_proto_strncmpi="unknown"
-  tst_compi_strncmpi="unknown"
-  tst_allow_strncmpi="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi can be linked" >&5
-$as_echo_n "checking if strncmpi can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strncmpi innocuous_strncmpi
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strncmpi
-#ifdef __cplusplus
-extern "C"
-#endif
-char strncmpi ();
-#if defined __stub_strncmpi || defined __stub___strncmpi
-choke me
-#endif
-
-int main (void)
-{
-return strncmpi ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strncmpi="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strncmpi="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strncmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi is prototyped" >&5
-$as_echo_n "checking if strncmpi is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strncmpi" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strncmpi="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strncmpi="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strncmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi is compilable" >&5
-$as_echo_n "checking if strncmpi is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != strncmpi(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strncmpi="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strncmpi="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strncmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi usage allowed" >&5
-$as_echo_n "checking if strncmpi usage allowed... " >&6; }
-    if test "x$curl_disallow_strncmpi" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strncmpi="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strncmpi="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi might be used" >&5
-$as_echo_n "checking if strncmpi might be used... " >&6; }
-  if test "$tst_links_strncmpi" = "yes" &&
-     test "$tst_proto_strncmpi" = "yes" &&
-     test "$tst_compi_strncmpi" = "yes" &&
-     test "$tst_allow_strncmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRNCMPI 1
-_ACEOF
-
-    ac_cv_func_strncmpi="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strncmpi="no"
-  fi
-
-
-    #
-  tst_links_strnicmp="unknown"
-  tst_proto_strnicmp="unknown"
-  tst_compi_strnicmp="unknown"
-  tst_allow_strnicmp="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp can be linked" >&5
-$as_echo_n "checking if strnicmp can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strnicmp innocuous_strnicmp
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strnicmp
-#ifdef __cplusplus
-extern "C"
-#endif
-char strnicmp ();
-#if defined __stub_strnicmp || defined __stub___strnicmp
-choke me
-#endif
-
-int main (void)
-{
-return strnicmp ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strnicmp="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strnicmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strnicmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp is prototyped" >&5
-$as_echo_n "checking if strnicmp is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strnicmp" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strnicmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strnicmp="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strnicmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp is compilable" >&5
-$as_echo_n "checking if strnicmp is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != strnicmp(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strnicmp="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strnicmp="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strnicmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp usage allowed" >&5
-$as_echo_n "checking if strnicmp usage allowed... " >&6; }
-    if test "x$curl_disallow_strnicmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strnicmp="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strnicmp="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp might be used" >&5
-$as_echo_n "checking if strnicmp might be used... " >&6; }
-  if test "$tst_links_strnicmp" = "yes" &&
-     test "$tst_proto_strnicmp" = "yes" &&
-     test "$tst_compi_strnicmp" = "yes" &&
-     test "$tst_allow_strnicmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRNICMP 1
-_ACEOF
-
-    ac_cv_func_strnicmp="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strnicmp="no"
-  fi
-
-
-    #
-  tst_links_strstr="unknown"
-  tst_proto_strstr="unknown"
-  tst_compi_strstr="unknown"
-  tst_allow_strstr="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strstr can be linked" >&5
-$as_echo_n "checking if strstr can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strstr innocuous_strstr
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strstr
-#ifdef __cplusplus
-extern "C"
-#endif
-char strstr ();
-#if defined __stub_strstr || defined __stub___strstr
-choke me
-#endif
-
-int main (void)
-{
-return strstr ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strstr="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strstr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strstr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strstr is prototyped" >&5
-$as_echo_n "checking if strstr is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strstr" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strstr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strstr="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strstr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strstr is compilable" >&5
-$as_echo_n "checking if strstr is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != strstr(0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strstr="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strstr="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strstr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strstr usage allowed" >&5
-$as_echo_n "checking if strstr usage allowed... " >&6; }
-    if test "x$curl_disallow_strstr" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strstr="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strstr="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strstr might be used" >&5
-$as_echo_n "checking if strstr might be used... " >&6; }
-  if test "$tst_links_strstr" = "yes" &&
-     test "$tst_proto_strstr" = "yes" &&
-     test "$tst_compi_strstr" = "yes" &&
-     test "$tst_allow_strstr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRSTR 1
-_ACEOF
-
-    ac_cv_func_strstr="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strstr="no"
-  fi
-
-
-    #
-  tst_links_strtok_r="unknown"
-  tst_proto_strtok_r="unknown"
-  tst_compi_strtok_r="unknown"
-  tst_allow_strtok_r="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtok_r can be linked" >&5
-$as_echo_n "checking if strtok_r can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strtok_r innocuous_strtok_r
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strtok_r
-#ifdef __cplusplus
-extern "C"
-#endif
-char strtok_r ();
-#if defined __stub_strtok_r || defined __stub___strtok_r
-choke me
-#endif
-
-int main (void)
-{
-return strtok_r ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strtok_r="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strtok_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strtok_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtok_r is prototyped" >&5
-$as_echo_n "checking if strtok_r is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_string
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strtok_r" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strtok_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strtok_r="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strtok_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtok_r is compilable" >&5
-$as_echo_n "checking if strtok_r is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_string
-
-int main (void)
-{
-
-        if(0 != strtok_r(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strtok_r="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strtok_r="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strtok_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtok_r usage allowed" >&5
-$as_echo_n "checking if strtok_r usage allowed... " >&6; }
-    if test "x$curl_disallow_strtok_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strtok_r="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strtok_r="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtok_r might be used" >&5
-$as_echo_n "checking if strtok_r might be used... " >&6; }
-  if test "$tst_links_strtok_r" = "yes" &&
-     test "$tst_proto_strtok_r" = "yes" &&
-     test "$tst_compi_strtok_r" = "yes" &&
-     test "$tst_allow_strtok_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRTOK_R 1
-_ACEOF
-
-    ac_cv_func_strtok_r="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strtok_r="no"
-  fi
-
-
-    #
-  tst_links_strtoll="unknown"
-  tst_proto_strtoll="unknown"
-  tst_compi_strtoll="unknown"
-  tst_allow_strtoll="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtoll can be linked" >&5
-$as_echo_n "checking if strtoll can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define strtoll innocuous_strtoll
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef strtoll
-#ifdef __cplusplus
-extern "C"
-#endif
-char strtoll ();
-#if defined __stub_strtoll || defined __stub___strtoll
-choke me
-#endif
-
-int main (void)
-{
-return strtoll ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_strtoll="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_strtoll="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_strtoll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtoll is prototyped" >&5
-$as_echo_n "checking if strtoll is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_stdlib
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strtoll" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_strtoll="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_strtoll="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_strtoll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtoll is compilable" >&5
-$as_echo_n "checking if strtoll is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_stdlib
-
-int main (void)
-{
-
-        if(0 != strtoll(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_strtoll="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_strtoll="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_strtoll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtoll usage allowed" >&5
-$as_echo_n "checking if strtoll usage allowed... " >&6; }
-    if test "x$curl_disallow_strtoll" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_strtoll="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_strtoll="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtoll might be used" >&5
-$as_echo_n "checking if strtoll might be used... " >&6; }
-  if test "$tst_links_strtoll" = "yes" &&
-     test "$tst_proto_strtoll" = "yes" &&
-     test "$tst_compi_strtoll" = "yes" &&
-     test "$tst_allow_strtoll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRTOLL 1
-_ACEOF
-
-    ac_cv_func_strtoll="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_strtoll="no"
-  fi
-
-
-curl_includes_sys_uio="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_UIO_H
-#  include <sys/uio.h>
-#endif
-/* includes end */"
-  for ac_header in sys/types.h sys/uio.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_sys_uio
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-
-    #
-  tst_links_writev="unknown"
-  tst_proto_writev="unknown"
-  tst_compi_writev="unknown"
-  tst_allow_writev="unknown"
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev can be linked" >&5
-$as_echo_n "checking if writev can be linked... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define writev innocuous_writev
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef writev
-#ifdef __cplusplus
-extern "C"
-#endif
-char writev ();
-#if defined __stub_writev || defined __stub___writev
-choke me
-#endif
-
-int main (void)
-{
-return writev ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    tst_links_writev="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    tst_links_writev="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$tst_links_writev" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev is prototyped" >&5
-$as_echo_n "checking if writev is prototyped... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-      $curl_includes_sys_uio
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "writev" >/dev/null 2>&1; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_proto_writev="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_proto_writev="no"
-
-fi
-rm -f conftest*
-
-  fi
-  #
-  if test "$tst_proto_writev" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev is compilable" >&5
-$as_echo_n "checking if writev is compilable... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-        $curl_includes_sys_uio
-
-int main (void)
-{
-
-        if(0 != writev(0, 0, 0))
-          return 1;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_compi_writev="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_compi_writev="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  fi
-  #
-  if test "$tst_compi_writev" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev usage allowed" >&5
-$as_echo_n "checking if writev usage allowed... " >&6; }
-    if test "x$curl_disallow_writev" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      tst_allow_writev="yes"
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-      tst_allow_writev="no"
-    fi
-  fi
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev might be used" >&5
-$as_echo_n "checking if writev might be used... " >&6; }
-  if test "$tst_links_writev" = "yes" &&
-     test "$tst_proto_writev" = "yes" &&
-     test "$tst_compi_writev" = "yes" &&
-     test "$tst_allow_writev" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WRITEV 1
-_ACEOF
-
-    ac_cv_func_writev="yes"
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    ac_cv_func_writev="no"
-  fi
-
-
-
-case $host in
-  *msdosdjgpp)
-     ac_cv_func_pipe=no
-     skipcheck_pipe=yes
-     { $as_echo "$as_me:${as_lineno-$LINENO}: skip check for pipe on msdosdjgpp" >&5
-$as_echo "$as_me: skip check for pipe on msdosdjgpp" >&6;}
-    ;;
-esac
-
-for ac_func in fork \
-  geteuid \
-  getpass_r \
-  getppid \
-  getprotobyname \
-  getpwuid \
-  getrlimit \
-  gettimeofday \
-  inet_addr \
-  perror \
-  pipe \
-  setlocale \
-  setmode \
-  setrlimit \
-  uname \
-  utime
-
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-
-
-else
-
-  func="$ac_func"
-  eval skipcheck=\$skipcheck_$func
-  if test "x$skipcheck" != "xyes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking deeper for $func" >&5
-$as_echo_n "checking deeper for $func... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-        $func ();
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      eval "ac_cv_func_$func=yes"
-
-cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$func" | $as_tr_cpp` 1
-_ACEOF
-
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: but still no" >&5
-$as_echo "but still no" >&6; }
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-
-fi
-done
-
-
-
-    for ac_header in sys/types.h sys/socket.h netdb.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getnameinfo" >&5
-$as_echo_n "checking for getnameinfo... " >&6; }
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#define getnameinfo innocuous_getnameinfo
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef getnameinfo
-#ifdef __cplusplus
-extern "C"
-#endif
-char getnameinfo ();
-#if defined __stub_getnameinfo || defined __stub___getnameinfo
-choke me
-#endif
-
-int main (void)
-{
-return getnameinfo ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    curl_cv_getnameinfo="yes"
-
-else
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-    curl_cv_getnameinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  #
-  if test "$curl_cv_getnameinfo" != "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking deeper for getnameinfo" >&5
-$as_echo_n "checking deeper for getnameinfo... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-
-int main (void)
-{
-
-        getnameinfo();
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      curl_cv_getnameinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: but still no" >&5
-$as_echo "but still no" >&6; }
-      curl_cv_getnameinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-  #
-  if test "$curl_cv_getnameinfo" != "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking deeper and deeper for getnameinfo" >&5
-$as_echo_n "checking deeper and deeper for getnameinfo... " >&6; }
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#endif
-
-int main (void)
-{
-
-        getnameinfo(0, 0, 0, 0, 0, 0, 0);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-      curl_cv_getnameinfo="yes"
-
-else
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: but still no" >&5
-$as_echo "but still no" >&6; }
-      curl_cv_getnameinfo="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-  fi
-  #
-  if test "$curl_cv_getnameinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking types of arguments for getnameinfo" >&5
-$as_echo_n "checking types of arguments for getnameinfo... " >&6; }
-if ${curl_cv_func_getnameinfo_args+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-      curl_cv_func_getnameinfo_args="unknown"
-      for gni_arg1 in 'struct sockaddr *' 'const struct sockaddr *' 'void *'; do
-        for gni_arg2 in 'socklen_t' 'size_t' 'int'; do
-          for gni_arg46 in 'size_t' 'int' 'socklen_t' 'unsigned int' 'DWORD'; do
-            for gni_arg7 in 'int' 'unsigned int'; do
-              if test "$curl_cv_func_getnameinfo_args" = "unknown"; then
-                cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#if (!defined(_WIN32_WINNT)) || (_WIN32_WINNT < 0x0501)
-#undef _WIN32_WINNT
-#define _WIN32_WINNT 0x0501
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#ifdef HAVE_WS2TCPIP_H
-#include <ws2tcpip.h>
-#endif
-#endif
-#define GNICALLCONV WSAAPI
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#define GNICALLCONV
-#endif
-                    extern int GNICALLCONV getnameinfo($gni_arg1, $gni_arg2,
-                                           char *, $gni_arg46,
-                                           char *, $gni_arg46,
-                                           $gni_arg7);
-
-int main (void)
-{
-
-                    $gni_arg2 salen=0;
-                    $gni_arg46 hostlen=0;
-                    $gni_arg46 servlen=0;
-                    $gni_arg7 flags=0;
-                    int res = getnameinfo(0, salen, 0, hostlen, 0, servlen, flags);
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-                  curl_cv_func_getnameinfo_args="$gni_arg1,$gni_arg2,$gni_arg46,$gni_arg7"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-              fi
-            done
-          done
-        done
-      done
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_getnameinfo_args" >&5
-$as_echo "$curl_cv_func_getnameinfo_args" >&6; } # AC-CACHE-CHECK
-    if test "$curl_cv_func_getnameinfo_args" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find proper types to use for getnameinfo args" >&5
-$as_echo "$as_me: WARNING: Cannot find proper types to use for getnameinfo args" >&2;}
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_GETNAMEINFO will not be defined" >&5
-$as_echo "$as_me: WARNING: HAVE_GETNAMEINFO will not be defined" >&2;}
-    else
-      gni_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_getnameinfo_args" | sed 's/\*/\*/g'`
-      IFS=$gni_prev_IFS
-      shift
-      #
-      gni_qual_type_arg1=$1
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define GETNAMEINFO_TYPE_ARG2 $2
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define GETNAMEINFO_TYPE_ARG46 $3
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define GETNAMEINFO_TYPE_ARG7 $4
-_ACEOF
-
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      case "$gni_qual_type_arg1" in
-        const*)
-          gni_qual_arg1=const
-          gni_type_arg1=`echo $gni_qual_type_arg1 | sed 's/^const //'`
-        ;;
-        *)
-          gni_qual_arg1=
-          gni_type_arg1=$gni_qual_type_arg1
-        ;;
-      esac
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define GETNAMEINFO_QUAL_ARG1 $gni_qual_arg1
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define GETNAMEINFO_TYPE_ARG1 $gni_type_arg1
-_ACEOF
-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETNAMEINFO 1
-_ACEOF
-
-      ac_cv_func_getnameinfo="yes"
-    fi
-  fi
-
-
-if test "$ipv6" = "yes"; then
-  if test "$ac_cv_func_getaddrinfo" = "yes"; then
-
-$as_echo "#define ENABLE_IPV6 1" >>confdefs.h
-
-    IPV6_ENABLED=1
-
-  fi
-
-      for ac_header in stdio.h sys/types.h sys/socket.h \
-                   netdb.h netinet/in.h arpa/inet.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-  #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working NI_WITHSCOPEID" >&5
-$as_echo_n "checking for working NI_WITHSCOPEID... " >&6; }
-if ${ac_cv_working_ni_withscopeid+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    if test "$cross_compiling" = yes; then :
-
-      # Program is not run when cross-compiling. So we assume
-      # NI_WITHSCOPEID will work if we are able to compile it.
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netdb.h>
-
-int main (void)
-{
-
-          unsigned int dummy= NI_NUMERICHOST | NI_NUMERICSERV | NI_WITHSCOPEID;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-        ac_cv_working_ni_withscopeid="yes"
-
-else
-
-        ac_cv_working_ni_withscopeid="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext # AC-COMPILE-IFELSE
-
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_STDIO_H
-#include <stdio.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-
-int main (void)
-{
-
-#if defined(NI_WITHSCOPEID) && defined(HAVE_GETNAMEINFO)
-#ifdef HAVE_STRUCT_SOCKADDR_STORAGE
-        struct sockaddr_storage sa;
-#else
-        unsigned char sa[256];
-#endif
-        char hostbuf[NI_MAXHOST];
-        int rc;
-        GETNAMEINFO_TYPE_ARG2 salen = (GETNAMEINFO_TYPE_ARG2)sizeof(sa);
-        GETNAMEINFO_TYPE_ARG46 hostlen = (GETNAMEINFO_TYPE_ARG46)sizeof(hostbuf);
-        GETNAMEINFO_TYPE_ARG7 flags = NI_NUMERICHOST | NI_NUMERICSERV | NI_WITHSCOPEID;
-        int fd = socket(AF_INET6, SOCK_STREAM, 0);
-        if(fd < 0) {
-          perror("socket()");
-          return 1; /* Error creating socket */
-        }
-        rc = getsockname(fd, (GETNAMEINFO_TYPE_ARG1)&sa, &salen);
-        if(rc) {
-          perror("getsockname()");
-          return 2; /* Error retrieving socket name */
-        }
-        rc = getnameinfo((GETNAMEINFO_TYPE_ARG1)&sa, salen, hostbuf, hostlen, NULL, 0, flags);
-        if(rc) {
-          printf("rc = %s\n", gai_strerror(rc));
-          return 3; /* Error translating socket address */
-        }
-        return 0; /* Ok, NI_WITHSCOPEID works */
-#else
-        return 4; /* Error, NI_WITHSCOPEID not defined or no getnameinfo() */
-#endif
-
- ;
- return 0;
-} # AC-LANG-PROGRAM
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-      # Exit code == 0. Program worked.
-      ac_cv_working_ni_withscopeid="yes"
-
-else
-
-      # Exit code != 0. Program failed.
-      ac_cv_working_ni_withscopeid="no"
-
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
- # AC-RUN-IFELSE
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_ni_withscopeid" >&5
-$as_echo "$ac_cv_working_ni_withscopeid" >&6; } # AC-CACHE-CHECK
-  case "$ac_cv_working_ni_withscopeid" in
-    yes)
-
-$as_echo "#define HAVE_NI_WITHSCOPEID 1" >>confdefs.h
-
-      ;;
-  esac
-
-fi
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable non-blocking communications" >&5
-$as_echo_n "checking whether to enable non-blocking communications... " >&6; }
-  OPT_NONBLOCKING="default"
-  # Check whether --enable-nonblocking was given.
-if test "${enable_nonblocking+set}" = set; then :
-  enableval=$enable_nonblocking; OPT_NONBLOCKING=$enableval
-fi
-
-  case "$OPT_NONBLOCKING" in
-    no)
-            want_nonblocking="no"
-      ;;
-    default)
-            want_nonblocking="yes"
-      ;;
-    *)
-            want_nonblocking="yes"
-      ;;
-  esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_nonblocking" >&5
-$as_echo "$want_nonblocking" >&6; }
-
-
-              #
-  tst_method="unknown"
-  if test "$want_nonblocking" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to set a socket into non-blocking mode" >&5
-$as_echo_n "checking how to set a socket into non-blocking mode... " >&6; }
-    if test "x$ac_cv_func_fcntl_o_nonblock" = "xyes"; then
-      tst_method="fcntl O_NONBLOCK"
-    elif test "x$ac_cv_func_ioctl_fionbio" = "xyes"; then
-      tst_method="ioctl FIONBIO"
-    elif test "x$ac_cv_func_ioctlsocket_fionbio" = "xyes"; then
-      tst_method="ioctlsocket FIONBIO"
-    elif test "x$ac_cv_func_ioctlsocket_camel_fionbio" = "xyes"; then
-      tst_method="IoctlSocket FIONBIO"
-    elif test "x$ac_cv_func_setsockopt_so_nonblock" = "xyes"; then
-      tst_method="setsockopt SO_NONBLOCK"
-    fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_method" >&5
-$as_echo "$tst_method" >&6; }
-    if test "$tst_method" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot determine non-blocking socket method." >&5
-$as_echo "$as_me: WARNING: cannot determine non-blocking socket method." >&2;}
-    fi
-  fi
-  if test "$tst_method" = "unknown"; then
-
-cat >>confdefs.h <<_ACEOF
-#define USE_BLOCKING_SOCKETS 1
-_ACEOF
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: non-blocking sockets disabled." >&5
-$as_echo "$as_me: WARNING: non-blocking sockets disabled." >&2;}
-  fi
-
-
-
-# Extract the first word of "perl", so it can be a program name with args.
-set dummy perl; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PERL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $PERL in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_PERL="$PERL" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/local/bin/perl:/usr/bin/:/usr/local/bin "
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  ;;
-esac
-fi
-PERL=$ac_cv_path_PERL
-if test -n "$PERL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5
-$as_echo "$PERL" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
-
-for ac_prog in gnroff nroff
-do
-  # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_NROFF+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $NROFF in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_NROFF="$NROFF" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin/:/usr/local/bin "
-for as_dir in $as_dummy
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_NROFF="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  ;;
-esac
-fi
-NROFF=$ac_cv_path_NROFF
-if test -n "$NROFF"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NROFF" >&5
-$as_echo "$NROFF" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-  test -n "$NROFF" && break
-done
-
-
-
-if test -n "$NROFF"; then
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to use *nroff to get plain text from man pages" >&5
-$as_echo_n "checking how to use *nroff to get plain text from man pages... " >&6; }
-  MANOPT="-man"
-  mancheck=`echo foo | $NROFF $MANOPT 2>/dev/null`
-  if test -z "$mancheck"; then
-    MANOPT="-mandoc"
-   mancheck=`echo foo | $NROFF $MANOPT 2>/dev/null`
-    if test -z "$mancheck"; then
-      MANOPT=""
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: found no *nroff option to get plaintext from man pages" >&5
-$as_echo "$as_me: WARNING: found no *nroff option to get plaintext from man pages" >&2;}
-    else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANOPT" >&5
-$as_echo "$MANOPT" >&6; }
-    fi
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANOPT" >&5
-$as_echo "$MANOPT" >&6; }
-  fi
-
-fi
-
-if test -z "$MANOPT"
-then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: disabling built-in manual" >&5
-$as_echo "$as_me: WARNING: disabling built-in manual" >&2;}
-  USE_MANUAL="no";
-fi
-
-
-if test "$USE_MANUAL" = "1"; then
-
-$as_echo "#define USE_MANUAL 1" >>confdefs.h
-
-  curl_manual_msg="enabled"
-fi
-
- if test x"$USE_MANUAL" = x1; then
-  USE_MANUAL_TRUE=
-  USE_MANUAL_FALSE='#'
-else
-  USE_MANUAL_TRUE='#'
-  USE_MANUAL_FALSE=
-fi
-
-
-
-  #
-  if test "$want_ares" = "yes"; then
-        clean_CPPFLAGS="$CPPFLAGS"
-    clean_LDFLAGS="$LDFLAGS"
-    clean_LIBS="$LIBS"
-    embedded_ares="unknown"
-    configure_runpath=`pwd`
-    embedded_ares_builddir="$configure_runpath/../ares"	# BZFlag location
-    if test -n "$want_ares_path"; then
-            ares_CPPFLAGS="-I$want_ares_path/include"
-      ares_LDFLAGS="-L$want_ares_path/lib"
-      ares_LIBS="-lcares"
-    else
-            if test -d "$srcdir/../ares"; then		# BZFlag location
-                embedded_ares="yes"
-                        ares_CPPFLAGS="-I$embedded_ares_builddir"	# BZFlag location
-        ares_LDFLAGS="-L$embedded_ares_builddir"
-        ares_LIBS="-lcares"
-      else
-                ares_CPPFLAGS=""
-        ares_LDFLAGS=""
-        ares_LIBS="-lcares"
-      fi
-    fi
-    #
-    CPPFLAGS="$ares_CPPFLAGS $clean_CPPFLAGS"
-    LDFLAGS="$ares_LDFLAGS $clean_LDFLAGS"
-    LIBS="$ares_LIBS $clean_LIBS"
-    #
-    if test "$embedded_ares" != "yes"; then
-                  { $as_echo "$as_me:${as_lineno-$LINENO}: checking that c-ares is good and recent enough" >&5
-$as_echo_n "checking that c-ares is good and recent enough... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#include <ares.h>
-          /* set of dummy functions in case c-ares was built with debug */
-          void curl_dofree() { }
-          void curl_sclose() { }
-          void curl_domalloc() { }
-          void curl_docalloc() { }
-          void curl_socket() { }
-
-int main (void)
-{
-
-          ares_channel channel;
-          ares_cancel(channel); /* added in 1.2.0 */
-          ares_process_fd(channel, 0, 0); /* added in 1.4.0 */
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        as_fn_error $? "c-ares library defective or too old" "$LINENO" 5
-                CPPFLAGS="$clean_CPPFLAGS"
-        LDFLAGS="$clean_LDFLAGS"
-        LIBS="$clean_LIBS"
-        # prevent usage
-        want_ares="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-    fi
-    if test "$want_ares" = "yes"; then
-
-$as_echo "#define USE_ARES 1" >>confdefs.h
-
-      USE_ARES=1
-
-      curl_ares_msg="enabled"
-    fi
-  fi
-
- if test x$embedded_ares = xyes; then
-  USE_EMBEDDED_ARES_TRUE=
-  USE_EMBEDDED_ARES_FALSE='#'
-else
-  USE_EMBEDDED_ARES_TRUE='#'
-  USE_EMBEDDED_ARES_FALSE=
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable verbose strings" >&5
-$as_echo_n "checking whether to enable verbose strings... " >&6; }
-# Check whether --enable-verbose was given.
-if test "${enable_verbose+set}" = set; then :
-  enableval=$enable_verbose;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_VERBOSE_STRINGS 1" >>confdefs.h
-
-       curl_verbose_msg="no"
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable SSPI support (Windows native builds only)" >&5
-$as_echo_n "checking whether to enable SSPI support (Windows native builds only)... " >&6; }
-# Check whether --enable-sspi was given.
-if test "${enable_sspi+set}" = set; then :
-  enableval=$enable_sspi;  case "$enableval" in
-  yes)
-       if test "$ac_cv_native_windows" = "yes"; then
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define USE_WINDOWS_SSPI 1" >>confdefs.h
-
-         USE_WINDOWS_SSPI=1
-
-         curl_sspi_msg="enabled"
-       else
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-         { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --enable-sspi Ignored. Only supported on native Windows builds." >&5
-$as_echo "$as_me: WARNING: --enable-sspi Ignored. Only supported on native Windows builds." >&2;}
-       fi
-       ;;
-  *)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable cryptographic authentication methods" >&5
-$as_echo_n "checking whether to enable cryptographic authentication methods... " >&6; }
-# Check whether --enable-crypto-auth was given.
-if test "${enable_crypto_auth+set}" = set; then :
-  enableval=$enable_crypto_auth;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_CRYPTO_AUTH 1" >>confdefs.h
-
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable support for cookies" >&5
-$as_echo_n "checking whether to enable support for cookies... " >&6; }
-# Check whether --enable-cookies was given.
-if test "${enable_cookies+set}" = set; then :
-  enableval=$enable_cookies;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-$as_echo "#define CURL_DISABLE_COOKIES 1" >>confdefs.h
-
-       ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable hidden symbols in the library" >&5
-$as_echo_n "checking whether to enable hidden symbols in the library... " >&6; }
-# Check whether --enable-hidden-symbols was given.
-if test "${enable_hidden_symbols+set}" = set; then :
-  enableval=$enable_hidden_symbols;  case "$enableval" in
-  no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       ;;
-  *)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports it" >&5
-$as_echo_n "checking whether $CC supports it... " >&6; }
-       if test "$GCC" = yes ; then
-         if $CC --help --verbose 2>&1 | grep fvisibility= > /dev/null ||
-                                 test "$compiler_id" = "CLANG"; then
-           { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define CURL_HIDDEN_SYMBOLS 1" >>confdefs.h
-
-
-$as_echo "#define CURL_EXTERN_SYMBOL __attribute__ ((visibility (\"default\")))" >>confdefs.h
-
-           CFLAGS="$CFLAGS -fvisibility=hidden"
-         else
-            { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-          fi
-
-       else
-                  if $CC 2>&1 | grep flags >/dev/null && $CC -flags | grep xldscope= >/dev/null ; then
-           { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define CURL_HIDDEN_SYMBOLS 1" >>confdefs.h
-
-
-$as_echo "#define CURL_EXTERN_SYMBOL __global" >>confdefs.h
-
-           CFLAGS="$CFLAGS -xldscope=hidden"
-         else
-           { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-         fi
-       fi
-       ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enforce SONAME bump" >&5
-$as_echo_n "checking whether to enforce SONAME bump... " >&6; }
-# Check whether --enable-soname-bump was given.
-if test "${enable_soname_bump+set}" = set; then :
-  enableval=$enable_soname_bump;  case "$enableval" in
-  yes)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-         soname_bump=yes
-         ;;
-  *)
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-         ;;
-  esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $soname_bump" >&5
-$as_echo "$soname_bump" >&6; }
-
-fi
-
- if test x$soname_bump = xyes; then
-  SONAME_BUMP_TRUE=
-  SONAME_BUMP_FALSE='#'
-else
-  SONAME_BUMP_TRUE='#'
-  SONAME_BUMP_FALSE=
-fi
-
-
-
-if test ! -z "$winsock_LIB"; then
-
-
-  LIBS="$LIBS $winsock_LIB"
-  TEST_SERVER_LIBS="$TEST_SERVER_LIBS $winsock_LIB"
-
-fi
-
-LIBCURL_LIBS=$LIBS
-
-
-
-
-LIBS=$ALL_LIBS
- if test x$cross_compiling = xyes; then
-  CROSSCOMPILING_TRUE=
-  CROSSCOMPILING_FALSE='#'
-else
-  CROSSCOMPILING_TRUE='#'
-  CROSSCOMPILING_FALSE=
-fi
-
-
-
-if test "x$USE_SSLEAY" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES SSL"
-elif test -n "$SSL_ENABLED"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES SSL"
-fi
-if test "@KRB4_ENABLED@" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES KRB4"
-fi
-if test "x$IPV6_ENABLED" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES IPv6"
-fi
-if test "x$HAVE_LIBZ" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES libz"
-fi
-if test "x$USE_ARES" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES AsynchDNS"
-fi
-if test "x$IDN_ENABLED" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES IDN"
-fi
-if test "x$USE_WINDOWS_SSPI" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES SSPI"
-fi
-if test "x$USE_SSLEAY" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" -o "x$GNUTLS_ENABLED" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES NTLM"
-fi
-
-
-
-if test "x$CURL_DISABLE_HTTP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS HTTP"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS HTTPS"
-  fi
-fi
-if test "x$CURL_DISABLE_FTP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS FTP"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS FTPS"
-  fi
-fi
-if test "x$CURL_DISABLE_FILE" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS FILE"
-fi
-if test "x$CURL_DISABLE_TELNET" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS TELNET"
-fi
-if test "x$CURL_DISABLE_LDAP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS LDAP"
-fi
-if test "x$CURL_DISABLE_LDAPS" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS LDAPS"
-fi
-if test "x$CURL_DISABLE_DICT" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS DICT"
-fi
-if test "x$CURL_DISABLE_TFTP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS TFTP"
-fi
-if test "x$CURL_DISABLE_POP3" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS POP3"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS POP3S"
-  fi
-fi
-if test "x$CURL_DISABLE_IMAP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS IMAP"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS IMAPS"
-  fi
-fi
-if test "x$CURL_DISABLE_SMTP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SMTP"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SMTPS"
-  fi
-fi
-if test "x$USE_LIBSSH2" = "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SCP"
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SFTP"
-fi
-if test "x$CURL_DISABLE_RTSP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS RTSP"
-fi
-
-SUPPORT_PROTOCOLS=`echo $SUPPORT_PROTOCOLS | tr ' ' '\012' | sort | tr '\012' ' '`
-
-
-
-
-squeeze CFLAGS
-squeeze CPPFLAGS
-squeeze DEFS
-squeeze LDFLAGS
-squeeze LIBS
-
-squeeze CURL_LIBS
-squeeze LIBCURL_LIBS
-squeeze TEST_SERVER_LIBS
-
-squeeze SUPPORT_FEATURES
-squeeze SUPPORT_PROTOCOLS
-
-if test "x$want_curldebug_assumed" = "xyes" &&
-  test "x$want_curldebug" = "xyes" && test "x$USE_ARES" = "x1"; then
-  ac_configure_args="$ac_configure_args --enable-curldebug"
-fi
-
-ac_config_files="$ac_config_files Makefile docs/Makefile docs/examples/Makefile docs/libcurl/Makefile include/Makefile include/curl/Makefile src/Makefile lib/Makefile curl-config libcurl.pc"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems.  If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
-  for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
-    eval ac_val=\$$ac_var
-    case $ac_val in #(
-    *${as_nl}*)
-      case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
-      esac
-      case $ac_var in #(
-      _ | IFS | as_nl) ;; #(
-      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
-      *) { eval $ac_var=; unset $ac_var;} ;;
-      esac ;;
-    esac
-  done
-
-  (set) 2>&1 |
-    case $as_nl`(ac_space=' '; set) 2>&1` in #(
-    *${as_nl}ac_space=\ *)
-      # `set' does not quote correctly, so add quotes: double-quote
-      # substitution turns \\\\ into \\, and sed turns \\ into \.
-      sed -n \
-	"s/'/'\\\\''/g;
-	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
-      ;; #(
-    *)
-      # `set' quotes correctly as required by POSIX, so do not add quotes.
-      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
-      ;;
-    esac |
-    sort
-) |
-  sed '
-     /^ac_cv_env_/b end
-     t clear
-     :clear
-     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
-     t end
-     s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
-     :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
-  if test -w "$cache_file"; then
-    if test "x$cache_file" != "x/dev/null"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
-      if test ! -f "$cache_file" || test -h "$cache_file"; then
-	cat confcache >"$cache_file"
-      else
-        case $cache_file in #(
-        */* | ?:*)
-	  mv -f confcache "$cache_file"$$ &&
-	  mv -f "$cache_file"$$ "$cache_file" ;; #(
-        *)
-	  mv -f confcache "$cache_file" ;;
-	esac
-      fi
-    fi
-  else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
-  fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-DEFS=-DHAVE_CONFIG_H
-
-ac_libobjs=
-ac_ltlibobjs=
-U=
-for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
-  # 1. Remove the extension, and $U if already installed.
-  ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
-  ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
-  # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
-  #    will be set to the directory where LIBOBJS objects are built.
-  as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
-  as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIBOBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
-  as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
- if test -n "$EXEEXT"; then
-  am__EXEEXT_TRUE=
-  am__EXEEXT_FALSE='#'
-else
-  am__EXEEXT_TRUE='#'
-  am__EXEEXT_FALSE=
-fi
-
-if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
-  as_fn_error $? "conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
-  as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${MIMPURE_TRUE}" && test -z "${MIMPURE_FALSE}"; then
-  as_fn_error $? "conditional \"MIMPURE\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${STATICLIB_TRUE}" && test -z "${STATICLIB_FALSE}"; then
-  as_fn_error $? "conditional \"STATICLIB\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${STATICLIB_TRUE}" && test -z "${STATICLIB_FALSE}"; then
-  as_fn_error $? "conditional \"STATICLIB\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${NO_UNDEFINED_TRUE}" && test -z "${NO_UNDEFINED_FALSE}"; then
-  as_fn_error $? "conditional \"NO_UNDEFINED\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${CURLDEBUG_TRUE}" && test -z "${CURLDEBUG_FALSE}"; then
-  as_fn_error $? "conditional \"CURLDEBUG\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${HAVE_LIBZ_TRUE}" && test -z "${HAVE_LIBZ_FALSE}"; then
-  as_fn_error $? "conditional \"HAVE_LIBZ\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_MANUAL_TRUE}" && test -z "${USE_MANUAL_FALSE}"; then
-  as_fn_error $? "conditional \"USE_MANUAL\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_EMBEDDED_ARES_TRUE}" && test -z "${USE_EMBEDDED_ARES_FALSE}"; then
-  as_fn_error $? "conditional \"USE_EMBEDDED_ARES\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${SONAME_BUMP_TRUE}" && test -z "${SONAME_BUMP_FALSE}"; then
-  as_fn_error $? "conditional \"SONAME_BUMP\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${CROSSCOMPILING_TRUE}" && test -z "${CROSSCOMPILING_FALSE}"; then
-  as_fn_error $? "conditional \"CROSSCOMPILING\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-
-: "${CONFIG_STATUS=./config.status}"
-ac_write_fail=0
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-as_write_fail=0
-cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-# 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-$SHELL}
-export SHELL
-_ASEOF
-cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-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
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in #(
-      *"$as_nl"*)
-	expr "X$arg" : "X\\(.*\\)$as_nl";
-	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
-
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""	$as_nl"
-
-# 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
-  test -z "$as_dir" && as_dir=.
-    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
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
-  exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-
-# 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
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
-  fi
-  $as_echo "$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_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_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 ||
-$as_echo 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
-
-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
-
-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 -p'.
-    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
-  elif ln conf$$.file conf$$ 2>/dev/null; then
-    as_ln_s=ln
-  else
-    as_ln_s='cp -p'
-  fi
-else
-  as_ln_s='cp -p'
-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=`$as_echo "$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 ||
-$as_echo 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
-
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-	test -d "$1/.";
-      else
-	case $1 in #(
-	-*)set "./$1";;
-	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-	???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
-
-# 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. ##
-## ----------------------------------- ##
-_ASEOF
-test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# 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 curl $as_me -, which was
-generated by GNU Autoconf 2.68.  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`
-"
-
-_ACEOF
-
-case $ac_config_files in *"
-"*) set x $ac_config_files; shift; ac_config_files=$*;;
-esac
-
-case $ac_config_headers in *"
-"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
-esac
-
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-# Files that config.status was made for.
-config_files="$ac_config_files"
-config_headers="$ac_config_headers"
-config_commands="$ac_config_commands"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-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 <a suitable curl mailing list => http://curl.haxx.se/mail/>."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
-ac_cs_version="\\
-curl config.status -
-configured by $0, generated by GNU Autoconf 2.68,
-  with options \\"\$ac_cs_config\\"
-
-Copyright (C) 2010 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='$ac_pwd'
-srcdir='$srcdir'
-INSTALL='$INSTALL'
-MKDIR_P='$MKDIR_P'
-AWK='$AWK'
-test -n "\$AWK" || AWK=awk
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# 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 )
-    $as_echo "$ac_cs_version"; exit ;;
-  --config | --confi | --conf | --con | --co | --c )
-    $as_echo "$ac_cs_config"; exit ;;
-  --debug | --debu | --deb | --de | --d | -d )
-    debug=: ;;
-  --file | --fil | --fi | --f )
-    $ac_shift
-    case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$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=`$as_echo "$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 )
-    $as_echo "$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
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-if \$ac_cs_recheck; then
-  set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
-  shift
-  \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
-  CONFIG_SHELL='$SHELL'
-  export CONFIG_SHELL
-  exec "\$@"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-exec 5>>config.log
-{
-  echo
-  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
-_ASBOX
-  $as_echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-#
-# INIT-COMMANDS
-#
-AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
-
-
-# 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='$sed_quote_subst'
-double_quote_subst='$double_quote_subst'
-delay_variable_subst='$delay_variable_subst'
-AS='`$ECHO "$AS" | $SED "$delay_single_quote_subst"`'
-DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'
-OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'
-macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'
-macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'
-enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'
-enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'
-pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'
-enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'
-SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'
-ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`'
-host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`'
-host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`'
-host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`'
-build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`'
-build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`'
-build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`'
-SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`'
-Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`'
-GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`'
-EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`'
-FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`'
-LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`'
-NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`'
-LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`'
-max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`'
-ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`'
-exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
-lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
-lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
-lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
-lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`'
-lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'
-reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'
-reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'
-deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'
-file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'
-file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`'
-want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'
-sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'
-AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'
-AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'
-archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'
-STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
-RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
-old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`'
-old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`'
-lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`'
-CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`'
-CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`'
-compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`'
-GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
-nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'
-lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'
-objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'
-MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'
-lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'
-lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`'
-lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`'
-lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`'
-lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`'
-need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`'
-MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`'
-DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
-NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
-LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`'
-OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`'
-libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`'
-shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`'
-extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`'
-archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`'
-enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`'
-export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`'
-whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`'
-compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`'
-old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`'
-old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`'
-archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`'
-archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`'
-module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`'
-module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`'
-with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`'
-allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`'
-no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec_ld='`$ECHO "$hardcode_libdir_flag_spec_ld" | $SED "$delay_single_quote_subst"`'
-hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`'
-hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`'
-hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`'
-hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`'
-hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`'
-hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
-inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
-link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
-always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`'
-export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`'
-exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`'
-include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`'
-prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`'
-postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`'
-file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
-variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
-need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`'
-version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`'
-runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`'
-shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`'
-shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`'
-libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`'
-library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`'
-soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`'
-install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`'
-postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`'
-finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`'
-finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`'
-hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`'
-sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`'
-sys_lib_dlsearch_path_spec='`$ECHO "$sys_lib_dlsearch_path_spec" | $SED "$delay_single_quote_subst"`'
-hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`'
-enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`'
-enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`'
-enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`'
-old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`'
-striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`'
-
-LTCC='$LTCC'
-LTCFLAGS='$LTCFLAGS'
-compiler='$compiler_DEFAULT'
-
-# 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 \
-SED \
-GREP \
-EGREP \
-FGREP \
-LD \
-NM \
-LN_S \
-lt_SP2NL \
-lt_NL2SP \
-reload_flag \
-deplibs_check_method \
-file_magic_cmd \
-file_magic_glob \
-want_nocaseglob \
-sharedlib_from_linklib_cmd \
-AR \
-AR_FLAGS \
-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_c_name_address \
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
-nm_file_list_spec \
-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_flag_spec_ld \
-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\\"\\\`\\\\\\""
-      ;;
-    *)
-      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 \
-sys_lib_dlsearch_path_spec; do
-    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
-    *[\\\\\\\`\\"\\\$]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
-      ;;
-    *)
-      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
-      ;;
-    esac
-done
-
-ac_aux_dir='$ac_aux_dir'
-xsi_shell='$xsi_shell'
-lt_shell_append='$lt_shell_append'
-
-# See if we are running on zsh, and set the options which allow our
-# commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
-   setopt NO_GLOB_SUBST
-fi
-
-
-    PACKAGE='$PACKAGE'
-    VERSION='$VERSION'
-    TIMESTAMP='$TIMESTAMP'
-    RM='$RM'
-    ofile='$ofile'
-
-
-
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-
-# Handling of arguments.
-for ac_config_target in $ac_config_targets
-do
-  case $ac_config_target in
-    "lib/curl_config.h") CONFIG_HEADERS="$CONFIG_HEADERS lib/curl_config.h" ;;
-    "src/curl_config.h") CONFIG_HEADERS="$CONFIG_HEADERS src/curl_config.h" ;;
-    "include/curl/curlbuild.h") CONFIG_HEADERS="$CONFIG_HEADERS include/curl/curlbuild.h" ;;
-    "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
-    "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
-    "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
-    "docs/Makefile") CONFIG_FILES="$CONFIG_FILES docs/Makefile" ;;
-    "docs/examples/Makefile") CONFIG_FILES="$CONFIG_FILES docs/examples/Makefile" ;;
-    "docs/libcurl/Makefile") CONFIG_FILES="$CONFIG_FILES docs/libcurl/Makefile" ;;
-    "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;;
-    "include/curl/Makefile") CONFIG_FILES="$CONFIG_FILES include/curl/Makefile" ;;
-    "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
-    "lib/Makefile") CONFIG_FILES="$CONFIG_FILES lib/Makefile" ;;
-    "curl-config") CONFIG_FILES="$CONFIG_FILES curl-config" ;;
-    "libcurl.pc") CONFIG_FILES="$CONFIG_FILES libcurl.pc" ;;
-
-  *) 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+set}" = set || CONFIG_FILES=$config_files
-  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
-  test "${CONFIG_COMMANDS+set}" = set || 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 2>/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" &&
-_ACEOF
-
-
-{
-  echo "cat >conf$$subs.awk <<_ACEOF" &&
-  echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
-  echo "_ACEOF"
-} >conf$$subs.sh ||
-  as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
-  . ./conf$$subs.sh ||
-    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-
-  ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
-  if test $ac_delim_n = $ac_delim_num; then
-    break
-  elif $ac_last_try; then
-    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-  else
-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
-  fi
-done
-rm -f conf$$subs.sh
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
-_ACEOF
-sed -n '
-h
-s/^/S["/; s/!.*/"]=/
-p
-g
-s/^[^!]*!//
-:repl
-t repl
-s/'"$ac_delim"'$//
-t delim
-:nl
-h
-s/\(.\{148\}\)..*/\1/
-t more1
-s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
-p
-n
-b repl
-:more1
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t nl
-:delim
-h
-s/\(.\{148\}\)..*/\1/
-t more2
-s/["\\]/\\&/g; s/^/"/; s/$/"/
-p
-b
-:more2
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t delim
-' <conf$$subs.awk | sed '
-/^[^""]/{
-  N
-  s/\n//
-}
-' >>$CONFIG_STATUS || ac_write_fail=1
-rm -f conf$$subs.awk
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-_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
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-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
-_ACEOF
-
-# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
-# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
-  ac_vpsub='/^[	 ]*VPATH[	 ]*=[	 ]*/{
-h
-s///
-s/^/:/
-s/[	 ]*$/:/
-s/:\$(srcdir):/:/g
-s/:\${srcdir}:/:/g
-s/:@srcdir@:/:/g
-s/^:*//
-s/:*$//
-x
-s/\(=[	 ]*\).*/\1/
-G
-s/\n//
-s/^[^=]*=[	 ]*$//
-}'
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-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 {
-_ACEOF
-
-# Transform confdefs.h into an awk script `defines.awk', embedded as
-# here-document in config.status, that substitutes the proper values into
-# config.h.in to produce config.h.
-
-# Create a delimiter string that does not exist in confdefs.h, to ease
-# handling of long lines.
-ac_delim='%!_!# '
-for ac_last_try in false false :; do
-  ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
-  if test -z "$ac_tt"; then
-    break
-  elif $ac_last_try; then
-    as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
-  else
-    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
-  fi
-done
-
-# For the awk script, D is an array of macro values keyed by name,
-# likewise P contains macro parameters if any.  Preserve backslash
-# newline sequences.
-
-ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
-sed -n '
-s/.\{148\}/&'"$ac_delim"'/g
-t rset
-:rset
-s/^[	 ]*#[	 ]*define[	 ][	 ]*/ /
-t def
-d
-:def
-s/\\$//
-t bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[	 ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3"/p
-s/^ \('"$ac_word_re"'\)[	 ]*\(.*\)/D["\1"]=" \2"/p
-d
-:bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[	 ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3\\\\\\n"\\/p
-t cont
-s/^ \('"$ac_word_re"'\)[	 ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
-t cont
-d
-:cont
-n
-s/.\{148\}/&'"$ac_delim"'/g
-t clear
-:clear
-s/\\$//
-t bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/"/p
-d
-:bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
-b cont
-' <confdefs.h | sed '
-s/'"$ac_delim"'/"\\\
-"/g' >>$CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-  for (key in D) D_is_set[key] = 1
-  FS = ""
-}
-/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\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
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-  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=`$as_echo "$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 '`
-	  $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
-	`' by configure.'
-    if test x"$ac_file" != x-; then
-      configure_input="$ac_file.  $configure_input"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
-    fi
-    # Neutralize special characters interpreted by sed in replacement strings.
-    case $configure_input in #(
-    *\&* | *\|* | *\\* )
-       ac_sed_conf_input=`$as_echo "$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 ||
-$as_echo 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=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
-  # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$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
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# 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@*)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-  ac_datarootdir_hack='
-  s&@datadir@&$datadir&g
-  s&@docdir@&$docdir&g
-  s&@infodir@&$infodir&g
-  s&@localedir@&$localedir&g
-  s&@mandir@&$mandir&g
-  s&\\\${datarootdir}&$datarootdir&g' ;;
-esac
-_ACEOF
-
-# Neutralize VPATH when `$srcdir' = `.'.
-# Shell code in configure.ac might set extrasub.
-# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_sed_extra="$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-: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"; } &&
-  { $as_echo "$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
-$as_echo "$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
-    {
-      $as_echo "/* $configure_input  */" \
-      && 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
-      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$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
-    $as_echo "/* $configure_input  */" \
-      && 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 ||
-$as_echo 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)  { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
- ;;
-  esac
-
-
-  case $ac_file$ac_mode in
-    "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
-  # Autoconf 2.62 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.
-  case $CONFIG_FILES in
-  *\'*) eval set x "$CONFIG_FILES" ;;
-  *)   set x $CONFIG_FILES ;;
-  esac
-  shift
-  for mf
-  do
-    # Strip MF so we end up with the name of the file.
-    mf=`echo "$mf" | sed -e 's/:.*$//'`
-    # Check whether this is an Automake generated Makefile or not.
-    # We used to match only the files named `Makefile.in', but
-    # some people rename them; so instead we look at the file content.
-    # Grep'ing the first line is not enough: some people post-process
-    # each Makefile.in and add a new line on top of each file to say so.
-    # Grep'ing the whole file is not good either: AIX grep has a line
-    # limit of 2048, but all sed's we know have understand at least 4000.
-    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
-      dirpart=`$as_dirname -- "$mf" ||
-$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$mf" : 'X\(//\)[^/]' \| \
-	 X"$mf" : 'X\(//\)$' \| \
-	 X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$mf" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-    else
-      continue
-    fi
-    # Extract the definition of DEPDIR, am__include, and am__quote
-    # from the Makefile without running `make'.
-    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
-    test -z "$DEPDIR" && continue
-    am__include=`sed -n 's/^am__include = //p' < "$mf"`
-    test -z "am__include" && continue
-    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-    # When using ansi2knr, U may be empty or an underscore; expand it
-    U=`sed -n 's/^U = //p' < "$mf"`
-    # Find all dependency output files, they are included files with
-    # $(DEPDIR) in their names.  We invoke sed twice because it is the
-    # simplest approach to changing $(DEPDIR) to its actual value in the
-    # expansion.
-    for file in `sed -n "
-      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
-      # Make sure the directory exists.
-      test -f "$dirpart/$file" && continue
-      fdir=`$as_dirname -- "$file" ||
-$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$file" : 'X\(//\)[^/]' \| \
-	 X"$file" : 'X\(//\)$' \| \
-	 X"$file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$file" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\).*/{
-	    s//\1/
-	    q
-	  }
-	  s/.*/./; q'`
-      as_dir=$dirpart/$fdir; as_fn_mkdir_p
-      # echo "creating $dirpart/$file"
-      echo '# dummy' > "$dirpart/$file"
-    done
-  done
-}
- ;;
-    "libtool":C)
-
-    # See if we are running on zsh, and set the options which 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
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $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.
-#
-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-#                 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
-#                 Inc.
-#   Written by Gordon Matzigkeit, 1996
-#
-#   This file is part of GNU Libtool.
-#
-# 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 GNU Libtool; see the file COPYING.  If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-
-# The names of the tagged configurations supported by this script.
-available_tags=""
-
-# ### BEGIN LIBTOOL CONFIG
-
-# Assembler program.
-AS=$lt_AS
-
-# DLL creation program.
-DLLTOOL=$lt_DLLTOOL
-
-# Object dumper program.
-OBJDUMP=$lt_OBJDUMP
-
-# Which release of libtool.m4 was used?
-macro_version=$macro_version
-macro_revision=$macro_revision
-
-# 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
-
-# Shell to use when invoking shell scripts.
-SHELL=$lt_SHELL
-
-# An echo program that protects backslashes.
-ECHO=$lt_ECHO
-
-# 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
-
-# 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.
-AR_FLAGS=$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 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
-
-# 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 in which our libraries should be installed.
-lt_sysroot=$lt_sysroot
-
-# 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
-
-# Run-time system search path for libraries.
-sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
-
-# 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
-
-# If ld is used when linking, flag to hardcode \$libdir into a binary
-# during linking.  This must work even if \$libdir does not exist.
-hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld
-
-# 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
-
-  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 "X${COLLECT_NAMES+set}" != Xset; 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)
-
-  if test x"$xsi_shell" = xyes; then
-  sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
-func_dirname ()\
-{\
-\    case ${1} in\
-\      */*) func_dirname_result="${1%/*}${2}" ;;\
-\      *  ) func_dirname_result="${3}" ;;\
-\    esac\
-} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_basename ()$/,/^} # func_basename /c\
-func_basename ()\
-{\
-\    func_basename_result="${1##*/}"\
-} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\
-func_dirname_and_basename ()\
-{\
-\    case ${1} in\
-\      */*) func_dirname_result="${1%/*}${2}" ;;\
-\      *  ) func_dirname_result="${3}" ;;\
-\    esac\
-\    func_basename_result="${1##*/}"\
-} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_stripname ()$/,/^} # func_stripname /c\
-func_stripname ()\
-{\
-\    # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\
-\    # positional parameters, so assign one to ordinary parameter first.\
-\    func_stripname_result=${3}\
-\    func_stripname_result=${func_stripname_result#"${1}"}\
-\    func_stripname_result=${func_stripname_result%"${2}"}\
-} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\
-func_split_long_opt ()\
-{\
-\    func_split_long_opt_name=${1%%=*}\
-\    func_split_long_opt_arg=${1#*=}\
-} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\
-func_split_short_opt ()\
-{\
-\    func_split_short_opt_arg=${1#??}\
-\    func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\
-} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\
-func_lo2o ()\
-{\
-\    case ${1} in\
-\      *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\
-\      *)    func_lo2o_result=${1} ;;\
-\    esac\
-} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_xform ()$/,/^} # func_xform /c\
-func_xform ()\
-{\
-    func_xform_result=${1%.*}.lo\
-} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_arith ()$/,/^} # func_arith /c\
-func_arith ()\
-{\
-    func_arith_result=$(( $* ))\
-} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_len ()$/,/^} # func_len /c\
-func_len ()\
-{\
-    func_len_result=${#1}\
-} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-fi
-
-if test x"$lt_shell_append" = xyes; then
-  sed -e '/^func_append ()$/,/^} # func_append /c\
-func_append ()\
-{\
-    eval "${1}+=\\${2}"\
-} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\
-func_append_quoted ()\
-{\
-\    func_quote_for_eval "${2}"\
-\    eval "${1}+=\\\\ \\$func_quote_for_eval_result"\
-} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  # Save a `func_append' function call where possible by direct use of '+='
-  sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-else
-  # Save a `func_append' function call even when '+=' is not available
-  sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-fi
-
-if test x"$_lt_function_replace_fail" = x":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
-$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
-fi
-
-
-   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
-_ACEOF
-ac_clean_files=$ac_clean_files_save
-
-test $ac_write_fail = 0 ||
-  as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded.  So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status.  When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
-  ac_cs_success=:
-  ac_config_status_args=
-  test "$silent" = yes &&
-    ac_config_status_args="$ac_config_status_args --quiet"
-  exec 5>/dev/null
-  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
-  exec 5>>config.log
-  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
-  # would make configure fail if this is the last instruction.
-  $ac_cs_success || as_fn_exit 1
-fi
-if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: Configured to build curl/libcurl:
-
-  curl version:    ${VERSION}
-  Host setup:      ${host}
-  Install prefix:  ${prefix}
-  Compiler:        ${CC}
-  SSL support:     ${curl_ssl_msg}
-  SSH support:     ${curl_ssh_msg}
-  zlib support:    ${curl_zlib_msg}
-  krb4 support:    ${curl_krb4_msg}
-  GSSAPI support:  ${curl_gss_msg}
-  SPNEGO support:  ${curl_spnego_msg}
-  c-ares support:  ${curl_ares_msg}
-  ipv6 support:    ${curl_ipv6_msg}
-  IDN support:     ${curl_idn_msg}
-  Build libcurl:   Shared=${enable_shared}, Static=${enable_static}
-  Built-in manual: ${curl_manual_msg}
-  Verbose errors:  ${curl_verbose_msg}
-  SSPI support:    ${curl_sspi_msg}
-  ca cert bundle:  ${ca}
-  ca cert path:    ${capath}
-  LDAP support:    ${curl_ldap_msg}
-  LDAPS support:   ${curl_ldaps_msg}
-  RTSP support:    ${curl_rtsp_msg}
-  Protocols:       ${SUPPORT_PROTOCOLS}
-" >&5
-$as_echo "$as_me: Configured to build curl/libcurl:
-
-  curl version:    ${VERSION}
-  Host setup:      ${host}
-  Install prefix:  ${prefix}
-  Compiler:        ${CC}
-  SSL support:     ${curl_ssl_msg}
-  SSH support:     ${curl_ssh_msg}
-  zlib support:    ${curl_zlib_msg}
-  krb4 support:    ${curl_krb4_msg}
-  GSSAPI support:  ${curl_gss_msg}
-  SPNEGO support:  ${curl_spnego_msg}
-  c-ares support:  ${curl_ares_msg}
-  ipv6 support:    ${curl_ipv6_msg}
-  IDN support:     ${curl_idn_msg}
-  Build libcurl:   Shared=${enable_shared}, Static=${enable_static}
-  Built-in manual: ${curl_manual_msg}
-  Verbose errors:  ${curl_verbose_msg}
-  SSPI support:    ${curl_sspi_msg}
-  ca cert bundle:  ${ca}
-  ca cert path:    ${capath}
-  LDAP support:    ${curl_ldap_msg}
-  LDAPS support:   ${curl_ldaps_msg}
-  RTSP support:    ${curl_rtsp_msg}
-  Protocols:       ${SUPPORT_PROTOCOLS}
-" >&6;}
-
-if test "x$soname_bump" = "xyes"; then
-
-cat <<EOM
-  SONAME bump:     yes - WARNING: this library will be built with the SONAME
-                   number bumped due to (a detected) ABI breakage.
-                   See lib/README.curl_off_t for details on this.
-EOM
-
-fi
-
diff --git a/src/other/curl/configure.ac b/src/other/curl/configure.ac
deleted file mode 100644
index 63a306e..0000000
--- a/src/other/curl/configure.ac
+++ /dev/null
@@ -1,2638 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-#***************************************************************************
-dnl Process this file with autoconf to produce a configure script.
-
-AC_PREREQ(2.57)
-
-dnl We don't know the version number "statically" so we use a dash here
-AC_INIT([curl], [-], [a suitable curl mailing list => http://curl.haxx.se/mail/])
-
-CURL_OVERRIDE_AUTOCONF
-
-dnl configure script copyright
-AC_COPYRIGHT([Copyright (c) 1998 - 2010 Daniel Stenberg, <daniel at haxx.se>
-This configure script may be copied, distributed and modified under the
-terms of the curl license; see COPYING for more details])
-
-AC_CONFIG_SRCDIR([lib/urldata.h])
-AM_CONFIG_HEADER(lib/curl_config.h src/curl_config.h include/curl/curlbuild.h)
-AC_CONFIG_MACRO_DIR([m4])
-AM_MAINTAINER_MODE
-
-CURL_CHECK_OPTION_DEBUG
-CURL_CHECK_OPTION_OPTIMIZE
-CURL_CHECK_OPTION_WARNINGS
-CURL_CHECK_OPTION_CURLDEBUG
-CURL_CHECK_OPTION_ARES
-
-CURL_CHECK_PATH_SEPARATOR_REQUIRED
-
-#
-# save the configure arguments
-#
-CONFIGURE_OPTIONS="\"$ac_configure_args\""
-AC_SUBST(CONFIGURE_OPTIONS)
-
-dnl SED is mandatory for configure process and libtool.
-dnl Set it now, allowing it to be changed later.
-AC_PATH_PROG([SED], [sed], [not_found],
-  [$PATH:/usr/bin:/usr/local/bin])
-if test -z "$SED" || test "$SED" = "not_found"; then
-  AC_MSG_ERROR([sed not found in PATH. Cannot continue without sed.])
-fi
-AC_SUBST([SED])
-
-dnl GREP is mandatory for configure process and libtool.
-dnl Set it now, allowing it to be changed later.
-AC_PATH_PROG([GREP], [grep], [not_found],
-  [$PATH:/usr/bin:/usr/local/bin])
-if test -z "$GREP" || test "$GREP" = "not_found"; then
-  AC_MSG_ERROR([grep not found in PATH. Cannot continue without grep.])
-fi
-AC_SUBST([GREP])
-
-dnl EGREP is mandatory for configure process and libtool.
-dnl Set it now, allowing it to be changed later.
-if echo a | ($GREP -E '(a|b)') >/dev/null 2>&1; then
-  AC_MSG_CHECKING([for egrep])
-  EGREP="$GREP -E"
-  AC_MSG_RESULT([$EGREP])
-else
-  AC_PATH_PROG([EGREP], [egrep], [not_found],
-    [$PATH:/usr/bin:/usr/local/bin])
-fi
-if test -z "$EGREP" || test "$EGREP" = "not_found"; then
-  AC_MSG_ERROR([egrep not found in PATH. Cannot continue without egrep.])
-fi
-AC_SUBST([EGREP])
-
-dnl AR is mandatory for configure process and libtool.
-dnl This is target dependent, so check it as a tool.
-AC_PATH_TOOL([AR], [ar], [not_found],
-  [$PATH:/usr/bin:/usr/local/bin])
-if test -z "$AR" || test "$AR" = "not_found"; then
-  AC_MSG_ERROR([ar not found in PATH. Cannot continue without ar.])
-fi
-AC_SUBST([AR])
-
-AC_SUBST(libext)
-
-dnl Remove non-configure distributed curlbuild.h
-if test -f ${srcdir}/include/curl/curlbuild.h; then
-  rm -f ${srcdir}/include/curl/curlbuild.h
-fi
-
-dnl figure out the libcurl version
-VERSION=`$SED -ne 's/^#define LIBCURL_VERSION "\(.*\)"/\1/p' ${srcdir}/include/curl/curlver.h`
-AM_INIT_AUTOMAKE(curl,$VERSION)
-AC_MSG_CHECKING([curl version])
-AC_MSG_RESULT($VERSION)
-
-dnl
-dnl we extract the numerical version for curl-config only
-VERSIONNUM=`$SED -ne 's/^#define LIBCURL_VERSION_NUM 0x\(.*\)/\1/p' ${srcdir}/include/curl/curlver.h`
-AC_SUBST(VERSIONNUM)
-
-dnl Solaris pkgadd support definitions
-PKGADD_PKG="HAXXcurl"
-PKGADD_NAME="cURL - a client that groks URLs"
-PKGADD_VENDOR="curl.haxx.se"
-AC_SUBST(PKGADD_PKG)
-AC_SUBST(PKGADD_NAME)
-AC_SUBST(PKGADD_VENDOR)
-
-dnl
-dnl initialize all the info variables
-    curl_ssl_msg="no      (--with-ssl / --with-gnutls / --with-nss)"
-    curl_ssh_msg="no      (--with-libssh2)"
-   curl_zlib_msg="no      (--with-zlib)"
-   curl_krb4_msg="no      (--with-krb4*)"
-    curl_gss_msg="no      (--with-gssapi)"
- curl_spnego_msg="no      (--with-spnego)"
-   curl_ares_msg="no      (--enable-ares)"
-   curl_ipv6_msg="no      (--enable-ipv6)"
-    curl_idn_msg="no      (--with-libidn)"
- curl_manual_msg="no      (--enable-manual)"
-curl_verbose_msg="enabled (--disable-verbose)"
-   curl_sspi_msg="no      (--enable-sspi)"
-   curl_ldap_msg="no      (--enable-ldap / --with-ldap-lib / --with-lber-lib)"
-  curl_ldaps_msg="no      (--enable-ldaps)"
-   curl_rtsp_msg="no      (--enable-rtsp)"
-
-dnl
-dnl Save anything in $LIBS for later
-dnl
-ALL_LIBS=$LIBS
-
-dnl
-dnl Detect the canonical host and target build environment
-dnl
-
-AC_CANONICAL_HOST
-dnl Get system canonical name
-AC_DEFINE_UNQUOTED(OS, "${host}", [cpu-machine-OS])
-
-dnl Checks for programs.
-CURL_CHECK_PROG_CC
-
-dnl Our curl_off_t internal and external configure settings
-CURL_CONFIGURE_CURL_OFF_T
-
-dnl This defines _ALL_SOURCE for AIX
-CURL_CHECK_AIX_ALL_SOURCE
-
-dnl Our configure and build reentrant settings
-CURL_CONFIGURE_THREAD_SAFE
-CURL_CONFIGURE_REENTRANT
-
-dnl check for how to do large files
-AC_SYS_LARGEFILE
-
-dnl support building of Windows DLLs
-AC_LIBTOOL_WIN32_DLL
-
-dnl force libtool to build static libraries with PIC on AMD64-Linux & FreeBSD
-AC_MSG_CHECKING([if arch-OS host is AMD64-Linux/FreeBSD (to build static libraries with PIC)])
-case $host in
-  x86_64*linux*|amd64*freebsd*|ia64*freebsd*)
-    AC_MSG_RESULT([yes])
-    with_pic=yes
-    ;;
-  *)
-    AC_MSG_RESULT([no])
-    ;;
-esac
-
-AC_MSG_CHECKING([if compiler is icc (to build with PIC)])
-case $CC in
-  icc | */icc)
-    AC_MSG_RESULT([yes])
-    with_pic=yes
-    ;;
-  *)
-    AC_MSG_RESULT([no])
-    ;;
-esac
-
-dnl libtool setup
-AC_PROG_LIBTOOL
-
-AC_MSG_CHECKING([if we need -mimpure-text])
-mimpure=no
-case $host in
-  *-*-solaris2*)
-    if test "$GCC" = "yes"; then
-      mimpure="yes"
-    fi
-    ;;
-  *)
-    ;;
-esac
-AC_MSG_RESULT($mimpure)
-AM_CONDITIONAL(MIMPURE, test x$mimpure = xyes)
-AM_CONDITIONAL(STATICLIB, false)
-
-AC_MSG_CHECKING([if we need BUILDING_LIBCURL])
-case $host in
-  *-*-mingw*)
-    AC_DEFINE(BUILDING_LIBCURL, 1, [when building libcurl itself])
-    AC_MSG_RESULT(yes)
-    AC_MSG_CHECKING([if we need CURL_STATICLIB])
-    if test "X$enable_shared" = "Xno"
-    then
-      AC_DEFINE(CURL_STATICLIB, 1, [when not building a shared library])
-      AC_MSG_RESULT(yes)
-      AM_CONDITIONAL(STATICLIB, true)
-    else
-      AC_MSG_RESULT(no)
-    fi
-    ;;
-  *)
-    AC_MSG_RESULT(no)
-    ;;
-esac
-
-# Determine whether all dependent libraries must be specified when linking
-if test "X$enable_shared" = "Xyes" -a "X$link_all_deplibs" = "Xno"
-then
-    REQUIRE_LIB_DEPS=no
-else
-    REQUIRE_LIB_DEPS=yes
-fi
-AC_SUBST(REQUIRE_LIB_DEPS)
-
-dnl The install stuff has already been taken care of by the automake stuff
-dnl AC_PROG_INSTALL
-AC_PROG_MAKE_SET
-
-dnl check if there's a way to force code inline
-AC_C_INLINE
-
-dnl **********************************************************************
-dnl platform/compiler/architecture specific checks/flags
-dnl **********************************************************************
-
-CURL_CHECK_COMPILER
-CURL_SET_COMPILER_BASIC_OPTS
-CURL_SET_COMPILER_DEBUG_OPTS
-CURL_SET_COMPILER_OPTIMIZE_OPTS
-CURL_SET_COMPILER_WARNING_OPTS
-
-if test "$compiler_id" = "INTEL_UNIX_C"; then
-  #
-  if test "$compiler_num" -ge "1000"; then
-    dnl icc 10.X or later
-    CFLAGS="$CFLAGS -shared-intel"
-  elif test "$compiler_num" -ge "900"; then
-    dnl icc 9.X specific
-    CFLAGS="$CFLAGS -i-dynamic"
-  fi
-  #
-fi
-
-CURL_CHECK_COMPILER_HALT_ON_ERROR
-CURL_CHECK_COMPILER_ARRAY_SIZE_NEGATIVE
-
-CURL_CHECK_NO_UNDEFINED
-AM_CONDITIONAL(NO_UNDEFINED, test x$need_no_undefined = xyes)
-
-CURL_CHECK_CURLDEBUG
-AM_CONDITIONAL(CURLDEBUG, test x$want_curldebug = xyes)
-
-dnl **********************************************************************
-dnl Compilation based checks should not be done before this point.
-dnl **********************************************************************
-
-dnl **********************************************************************
-dnl Make sure that our checks for headers windows.h winsock.h winsock2.h
-dnl and ws2tcpip.h take precedence over any other further checks which
-dnl could be done later using AC_CHECK_HEADER or AC_CHECK_HEADERS for
-dnl this specific header files. And do them before its results are used.
-dnl **********************************************************************
-
-CURL_CHECK_HEADER_WINDOWS
-CURL_CHECK_NATIVE_WINDOWS
-case X-"$ac_cv_native_windows" in
-  X-yes)
-    CURL_CHECK_HEADER_WINSOCK
-    CURL_CHECK_HEADER_WINSOCK2
-    CURL_CHECK_HEADER_WS2TCPIP
-    CURL_CHECK_HEADER_WINLDAP
-    CURL_CHECK_HEADER_WINBER
-    ;;
-  *)
-    ac_cv_header_winsock_h="no"
-    ac_cv_header_winsock2_h="no"
-    ac_cv_header_ws2tcpip_h="no"
-    ac_cv_header_winldap_h="no"
-    ac_cv_header_winber_h="no"
-    ;;
-esac
-CURL_CHECK_WIN32_LARGEFILE
-
-dnl ************************************************************
-dnl switch off particular protocols
-dnl
-AC_MSG_CHECKING([whether to support http])
-AC_ARG_ENABLE(http,
-AC_HELP_STRING([--enable-http],[Enable HTTP support])
-AC_HELP_STRING([--disable-http],[Disable HTTP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_HTTP, 1, [to disable HTTP])
-       AC_MSG_WARN([disable HTTP disables FTP over proxy and RTSP])
-       AC_SUBST(CURL_DISABLE_HTTP, [1])
-       AC_DEFINE(CURL_DISABLE_RTSP, 1, [to disable RTSP])
-       AC_SUBST(CURL_DISABLE_RTSP, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-AC_MSG_CHECKING([whether to support ftp])
-AC_ARG_ENABLE(ftp,
-AC_HELP_STRING([--enable-ftp],[Enable FTP support])
-AC_HELP_STRING([--disable-ftp],[Disable FTP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_FTP, 1, [to disable FTP])
-       AC_SUBST(CURL_DISABLE_FTP, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-AC_MSG_CHECKING([whether to support file])
-AC_ARG_ENABLE(file,
-AC_HELP_STRING([--enable-file],[Enable FILE support])
-AC_HELP_STRING([--disable-file],[Disable FILE support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_FILE, 1, [to disable FILE])
-       AC_SUBST(CURL_DISABLE_FILE, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-AC_MSG_CHECKING([whether to support ldap])
-AC_ARG_ENABLE(ldap,
-AC_HELP_STRING([--enable-ldap],[Enable LDAP support])
-AC_HELP_STRING([--disable-ldap],[Disable LDAP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_LDAP, 1, [to disable LDAP])
-       AC_SUBST(CURL_DISABLE_LDAP, [1])
-       ;;
-  *)
-       case $host in
-         *-*-cygwin*)
-           # Force no ldap. config/build process is broken for cygwin
-           AC_DEFINE(CURL_DISABLE_LDAP, 1, [to disable LDAP])
-           AC_SUBST(CURL_DISABLE_LDAP, [1])
-           AC_MSG_RESULT(no)
-           ;;
-         *)
-           AC_MSG_RESULT(yes)
-       esac
-       ;;
-  esac ],[
-       case $host in
-         *-*-cygwin*)
-           # Force no ldap. config/build process is broken for cygwin
-           AC_DEFINE(CURL_DISABLE_LDAP, 1, [to disable LDAP])
-           AC_SUBST(CURL_DISABLE_LDAP, [1])
-           AC_MSG_RESULT(no)
-           ;;
-         *)
-           AC_MSG_RESULT(yes)
-       esac ]
-)
-AC_MSG_CHECKING([whether to support ldaps])
-AC_ARG_ENABLE(ldaps,
-AC_HELP_STRING([--enable-ldaps],[Enable LDAPS support])
-AC_HELP_STRING([--disable-ldaps],[Disable LDAPS support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_LDAPS, 1, [to disable LDAPS])
-       AC_SUBST(CURL_DISABLE_LDAPS, [1])
-       ;;
-  *)   if test x$CURL_DISABLE_LDAP = x1 ; then
-               AC_MSG_RESULT(LDAP support needs to be enabled in order to enable LDAPS support!)
-               AC_DEFINE(CURL_DISABLE_LDAPS, 1, [to disable LDAPS])
-               AC_SUBST(CURL_DISABLE_LDAPS, [1])
-       else
-               AC_MSG_RESULT(yes)
-               AC_DEFINE(HAVE_LDAP_SSL, 1, [Use LDAPS implementation])
-               curl_ldaps_msg="enabled"
-       fi
-       ;;
-  esac ],
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_LDAPS, 1, [to disable LDAPS])
-       AC_SUBST(CURL_DISABLE_LDAPS, [1])
-)
-
-AC_MSG_CHECKING([whether to support rtsp])
-AC_ARG_ENABLE(rtsp,
-AC_HELP_STRING([--enable-rtsp],[Enable RTSP support])
-AC_HELP_STRING([--disable-rtsp],[Disable RTSP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_RTSP, 1, [to disable RTSP])
-       AC_SUBST(CURL_DISABLE_RTSP, [1])
-       ;;
-  *)   if test x$CURL_DISABLE_HTTP = x1 ; then
-          AC_MSG_ERROR(HTTP support needs to be enabled in order to enable RTSP support!)
-       else
-          AC_MSG_RESULT(yes)
-          curl_rtsp_msg="enabled"
-       fi
-       ;;
-  esac ],
-       if test "x$CURL_DISABLE_HTTP" != "x1"; then
-          AC_MSG_RESULT(yes)
-          curl_rtsp_msg="enabled"
-       else
-          AC_MSG_RESULT(no)
-       fi
-)
-
-AC_MSG_CHECKING([whether to support proxies])
-AC_ARG_ENABLE(proxy,
-AC_HELP_STRING([--enable-proxy],[Enable proxy support])
-AC_HELP_STRING([--disable-proxy],[Disable proxy support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_PROXY, 1, [to disable proxies])
-       AC_SUBST(CURL_DISABLE_PROXY, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-AC_MSG_CHECKING([whether to support dict])
-AC_ARG_ENABLE(dict,
-AC_HELP_STRING([--enable-dict],[Enable DICT support])
-AC_HELP_STRING([--disable-dict],[Disable DICT support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_DICT, 1, [to disable DICT])
-       AC_SUBST(CURL_DISABLE_DICT, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-AC_MSG_CHECKING([whether to support telnet])
-AC_ARG_ENABLE(telnet,
-AC_HELP_STRING([--enable-telnet],[Enable TELNET support])
-AC_HELP_STRING([--disable-telnet],[Disable TELNET support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_TELNET, 1, [to disable TELNET])
-       AC_SUBST(CURL_DISABLE_TELNET, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-AC_MSG_CHECKING([whether to support tftp])
-AC_ARG_ENABLE(tftp,
-AC_HELP_STRING([--enable-tftp],[Enable TFTP support])
-AC_HELP_STRING([--disable-tftp],[Disable TFTP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_TFTP, 1, [to disable TFTP])
-       AC_SUBST(CURL_DISABLE_TFTP, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-AC_MSG_CHECKING([whether to support pop3])
-AC_ARG_ENABLE(pop3,
-AC_HELP_STRING([--enable-pop3],[Enable POP3 support])
-AC_HELP_STRING([--disable-pop3],[Disable POP3 support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_POP3, 1, [to disable POP3])
-       AC_SUBST(CURL_DISABLE_POP3, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-
-AC_MSG_CHECKING([whether to support imap])
-AC_ARG_ENABLE(imap,
-AC_HELP_STRING([--enable-imap],[Enable IMAP support])
-AC_HELP_STRING([--disable-imap],[Disable IMAP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_IMAP, 1, [to disable IMAP])
-       AC_SUBST(CURL_DISABLE_IMAP, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-
-AC_MSG_CHECKING([whether to support smtp])
-AC_ARG_ENABLE(smtp,
-AC_HELP_STRING([--enable-smtp],[Enable SMTP support])
-AC_HELP_STRING([--disable-smtp],[Disable SMTP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_SMTP, 1, [to disable SMTP])
-       AC_SUBST(CURL_DISABLE_SMTP, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-
-dnl **********************************************************************
-dnl Check for built-in manual
-dnl **********************************************************************
-
-AC_MSG_CHECKING([whether to provide built-in manual])
-AC_ARG_ENABLE(manual,
-AC_HELP_STRING([--enable-manual],[Enable built-in manual])
-AC_HELP_STRING([--disable-manual],[Disable built-in manual]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       USE_MANUAL="1"
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-       USE_MANUAL="1"
-)
-dnl The actual use of the USE_MANUAL variable is done much later in this
-dnl script to allow other actions to disable it as well.
-
-dnl **********************************************************************
-dnl Checks for libraries.
-dnl **********************************************************************
-
-CURL_CHECK_LIB_XNET
-
-dnl gethostbyname without lib or in the nsl lib?
-AC_CHECK_FUNC(gethostbyname,
-              [HAVE_GETHOSTBYNAME="1"
-              ],
-              [ AC_CHECK_LIB(nsl, gethostbyname,
-                             [HAVE_GETHOSTBYNAME="1"
-                             LIBS="$LIBS -lnsl"
-                             ])
-              ])
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl gethostbyname in the socket lib?
-  AC_CHECK_LIB(socket, gethostbyname,
-               [HAVE_GETHOSTBYNAME="1"
-               LIBS="$LIBS -lsocket"
-               ])
-fi
-
-dnl At least one system has been identified to require BOTH nsl and socket
-dnl libs at the same time to link properly.
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  AC_MSG_CHECKING([for gethostbyname with both nsl and socket libs])
-  my_ac_save_LIBS=$LIBS
-  LIBS="-lnsl -lsocket $LIBS"
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-      gethostbyname();
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    HAVE_GETHOSTBYNAME="1"
-  ],[
-    AC_MSG_RESULT([no])
-    LIBS=$my_ac_save_LIBS
-  ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl This is for winsock systems
-  if test "$ac_cv_header_windows_h" = "yes"; then
-    if test "$ac_cv_header_winsock_h" = "yes"; then
-      case $host in
-        *-*-mingw32ce*)
-          winsock_LIB="-lwinsock"
-          ;;
-        *)
-          winsock_LIB="-lwsock32"
-          ;;
-      esac
-    fi
-    if test "$ac_cv_header_winsock2_h" = "yes"; then
-      winsock_LIB="-lws2_32"
-    fi
-    if test ! -z "$winsock_LIB"; then
-      my_ac_save_LIBS=$LIBS
-      LIBS="$winsock_LIB $LIBS"
-      AC_MSG_CHECKING([for gethostbyname in $winsock_LIB])
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-#endif
-#endif
-        ]],[[
-          gethostbyname("www.dummysite.com");
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        HAVE_GETHOSTBYNAME="1"
-      ],[
-        AC_MSG_RESULT([no])
-        winsock_LIB=""
-        LIBS=$my_ac_save_LIBS
-      ])
-    fi
-  fi
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl This is for Minix 3.1
-  AC_MSG_CHECKING([for gethostbyname for Minix 3])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-/* Older Minix versions may need <net/gen/netdb.h> here instead */
-#include <netdb.h>
-    ]],[[
-      gethostbyname("www.dummysite.com");
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    HAVE_GETHOSTBYNAME="1"
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl This is for eCos with a stubbed DNS implementation
-  AC_MSG_CHECKING([for gethostbyname for eCos])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#include <stdio.h>
-#include <netdb.h>
-    ]],[[
-      gethostbyname("www.dummysite.com");
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    HAVE_GETHOSTBYNAME="1"
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl gethostbyname in the network lib - for Haiku OS
-  AC_CHECK_LIB(network, gethostbyname,
-               [HAVE_GETHOSTBYNAME="1"
-               LIBS="$LIBS -lnetwork"
-               ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl gethostbyname in the net lib - for BeOS
-  AC_CHECK_LIB(net, gethostbyname,
-               [HAVE_GETHOSTBYNAME="1"
-               LIBS="$LIBS -lnet"
-               ])
-fi
-
-
-if test "$HAVE_GETHOSTBYNAME" != "1"; then
-  AC_MSG_ERROR([couldn't find libraries for gethostbyname()])
-fi
-
-dnl resolve lib?
-AC_CHECK_FUNC(strcasecmp, , [ AC_CHECK_LIB(resolve, strcasecmp) ])
-
-if test "$ac_cv_lib_resolve_strcasecmp" = "$ac_cv_func_strcasecmp"; then
-  AC_CHECK_LIB(resolve, strcasecmp,
-              [LIBS="-lresolve $LIBS"],
-               ,
-               -lnsl)
-fi
-ac_cv_func_strcasecmp="no"
-
-CURL_CHECK_LIBS_CONNECT
-
-dnl **********************************************************************
-dnl In case that function clock_gettime with monotonic timer is available,
-dnl check for additional required libraries.
-dnl **********************************************************************
-CURL_CHECK_LIBS_CLOCK_GETTIME_MONOTONIC
-
-dnl **********************************************************************
-dnl The preceding library checks are all potentially useful for test
-dnl servers (for providing networking support).  Save the list of required
-dnl libraries at this point for use while linking those test servers.
-dnl **********************************************************************
-TEST_SERVER_LIBS=$LIBS
-
-dnl **********************************************************************
-AC_MSG_CHECKING([whether to use libgcc])
-AC_ARG_ENABLE(libgcc,
-AC_HELP_STRING([--enable-libgcc],[use libgcc when linking]),
-[ case "$enableval" in
-  yes)
-        ALL_LIBS="$ALL_LIBS -lgcc"
-       AC_MSG_RESULT(yes)
-       ;;
-  *)   AC_MSG_RESULT(no)
-       ;;
-  esac ],
-       AC_MSG_RESULT(no)
-)
-
-dnl **********************************************************************
-dnl Check for LDAP
-dnl **********************************************************************
-
-LDAPLIBNAME=""
-AC_ARG_WITH(ldap-lib,
-AC_HELP_STRING([--with-ldap-lib=libname],[Specify name of ldap lib file]),
- [LDAPLIBNAME="$withval"])
-
-LBERLIBNAME=""
-AC_ARG_WITH(lber-lib,
-AC_HELP_STRING([--with-lber-lib=libname],[Specify name of lber lib file]),
- [LBERLIBNAME="$withval"])
-
-if test x$CURL_DISABLE_LDAP != x1 ; then
-
-  CURL_CHECK_HEADER_LBER
-  CURL_CHECK_HEADER_LDAP
-  CURL_CHECK_HEADER_LDAPSSL
-  CURL_CHECK_HEADER_LDAP_SSL
-
-  if test -z "$LDAPLIBNAME" ; then
-    case $host in
-      *-*-cygwin* | *-*-mingw* | *-*-pw32*)
-        dnl Windows uses a single and unique OpenLDAP DLL name
-        LDAPLIBNAME="wldap32"
-        LBERLIBNAME="no"
-        ;;
-    esac
-  fi
-
-  if test "$LDAPLIBNAME" ; then
-    AC_CHECK_LIB("$LDAPLIBNAME", ldap_init,, [
-      AC_MSG_WARN(["$LDAPLIBNAME" is not an LDAP library: LDAP disabled])
-      AC_DEFINE(CURL_DISABLE_LDAP, 1, [to disable LDAP])
-      AC_SUBST(CURL_DISABLE_LDAP, [1])])
-      AC_DEFINE(CURL_DISABLE_LDAPS, 1, [to disable LDAPS])
-      AC_SUBST(CURL_DISABLE_LDAPS, [1])
-  else
-    dnl Try to find the right ldap libraries for this system
-    CURL_CHECK_LIBS_LDAP
-    case X-"$curl_cv_ldap_LIBS" in
-      X-unknown)
-        AC_MSG_WARN([Cannot find libraries for LDAP support: LDAP disabled])
-        AC_DEFINE(CURL_DISABLE_LDAP, 1, [to disable LDAP])
-        AC_SUBST(CURL_DISABLE_LDAP, [1])
-        AC_DEFINE(CURL_DISABLE_LDAPS, 1, [to disable LDAPS])
-        AC_SUBST(CURL_DISABLE_LDAPS, [1])
-        ;;
-    esac
-  fi
-fi
-
-if test x$CURL_DISABLE_LDAP != x1 ; then
-
-  if test "$LBERLIBNAME" ; then
-    dnl If name is "no" then don't define this library at all
-    dnl (it's only needed if libldap.so's dependencies are broken).
-    if test "$LBERLIBNAME" != "no" ; then
-      AC_CHECK_LIB("$LBERLIBNAME", ber_free,, [
-        AC_MSG_WARN(["$LBERLIBNAME" is not an LBER library: LDAP disabled])
-        AC_DEFINE(CURL_DISABLE_LDAP, 1, [to disable LDAP])
-        AC_SUBST(CURL_DISABLE_LDAP, [1])])
-        AC_DEFINE(CURL_DISABLE_LDAPS, 1, [to disable LDAPS])
-        AC_SUBST(CURL_DISABLE_LDAPS, [1])
-    fi
-  fi
-fi
-
-if test x$CURL_DISABLE_LDAP != x1 ; then
-  AC_CHECK_FUNCS([ldap_url_parse])
-
-  if test "$LDAPLIBNAME" = "wldap32"; then
-    curl_ldap_msg="enabled (winldap)"
-    AC_DEFINE(CURL_LDAP_WIN, 1, [Use W$ LDAP implementation])
-    case $host in
-      *-*-cygwin* | *-*-pw32*)
-        AC_DEFINE(CURL_LDAP_HYBRID, 1, [W$ LDAP with non-W$ compiler])
-        ;;
-    esac
-  else
-    curl_ldap_msg="enabled (OpenLDAP)"
-  fi
-fi
-
-dnl **********************************************************************
-dnl Checks for IPv6
-dnl **********************************************************************
-
-AC_MSG_CHECKING([whether to enable ipv6])
-AC_ARG_ENABLE(ipv6,
-AC_HELP_STRING([--enable-ipv6],[Enable ipv6 (with ipv4) support])
-AC_HELP_STRING([--disable-ipv6],[Disable ipv6 support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       ipv6=no
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ipv6=yes
-       ;;
-  esac ],
-
-  AC_TRY_RUN([ /* is AF_INET6 available? */
-#include <sys/types.h>
-#include <sys/socket.h>
-main()
-{
- if (socket(AF_INET6, SOCK_STREAM, 0) < 0)
-   exit(1);
- else
-   exit(0);
-}
-],
-  AC_MSG_RESULT(yes)
-  ipv6=yes,
-  AC_MSG_RESULT(no)
-  ipv6=no,
-  AC_MSG_RESULT(no)
-  ipv6=no
-))
-
-if test "$ipv6" = "yes"; then
-  curl_ipv6_msg="enabled"
-fi
-
-# Check if struct sockaddr_in6 have sin6_scope_id member
-if test "$ipv6" = yes; then
-  AC_MSG_CHECKING([if struct sockaddr_in6 has sin6_scope_id member])
-  AC_TRY_COMPILE([
-#include <sys/types.h>
-#include <netinet/in.h>] ,
-  struct sockaddr_in6 s; s.sin6_scope_id = 0; , have_sin6_scope_id=yes)
-  if test "$have_sin6_scope_id" = yes; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE(HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID, 1, [Define to 1 if struct sockaddr_in6 has the sin6_scope_id member])
-  else
-    AC_MSG_RESULT([no])
-  fi
-fi
-
-dnl **********************************************************************
-dnl Check if the operating system allows programs to write to their own argv[]
-dnl **********************************************************************
-
-AC_MSG_CHECKING([if argv can be written to])
-AC_CACHE_VAL(curl_cv_writable_argv, [
-AC_RUN_IFELSE([
-  AC_LANG_SOURCE([[
-int main(int argc, char ** argv) {
-    argv[0][0] = ' ';
-    return (argv[0][0] == ' ')?0:1;
-}
-  ]])
-],[
-  curl_cv_writable_argv=yes
-],[
-  curl_cv_writable_argv=no
-],[
-  curl_cv_writable_argv=cross
-])
-])
-case $curl_cv_writable_argv in
-yes)
-        AC_DEFINE(HAVE_WRITABLE_ARGV, 1, [Define this symbol if your OS supports changing the contents of argv])
-        AC_MSG_RESULT(yes)
-        ;;
-no)
-        AC_MSG_RESULT(no)
-        ;;
-*)
-        AC_MSG_RESULT(no)
-        AC_MSG_WARN([the previous check could not be made default was used])
-        ;;
-esac
-
-dnl **********************************************************************
-dnl Check for the presence of Kerberos4 libraries and headers
-dnl **********************************************************************
-
-AC_ARG_WITH(krb4-includes,
-AC_HELP_STRING([--with-krb4-includes=DIR],
-               [Specify location of kerberos4 headers]),[
- CPPFLAGS="$CPPFLAGS -I$withval"
- KRB4INC="$withval"
- want_krb4=yes
- ])
-
-AC_ARG_WITH(krb4-libs,
-AC_HELP_STRING([--with-krb4-libs=DIR],[Specify location of kerberos4 libs]),[
- LDFLAGS="$LDFLAGS -L$withval"
- KRB4LIB="$withval"
- want_krb4=yes
- ])
-
-
-OPT_KRB4=off
-AC_ARG_WITH(krb4,dnl
-AC_HELP_STRING([--with-krb4=DIR],[where to look for Kerberos4]),[
-  OPT_KRB4="$withval"
-  if test X"$OPT_KRB4" != Xno; then
-    want_krb4="yes"
-    if test X"$OPT_KRB4" != Xyes; then
-      LDFLAGS="$LDFLAGS -L$OPT_KRB4/lib$libsuff"
-      KRB4LIB="$OPT_KRB4/lib$libsuff"
-      CPPFLAGS="$CPPFLAGS -I$OPT_KRB4/include"
-      KRB4INC="$OPT_KRB4/include"
-    fi
-  fi
- ])
-
-AC_MSG_CHECKING([if Kerberos4 support is requested])
-
-if test "$want_krb4" = yes
-then
-  if test "$ipv6" = "yes"; then
-    echo krb4 is not compatible with IPv6
-    exit 1
-  fi
-  AC_MSG_RESULT(yes)
-
-  dnl Check for & handle argument to --with-krb4
-
-  AC_MSG_CHECKING(where to look for Kerberos4)
-  if test X"$OPT_KRB4" = Xyes
-  then
-    AC_MSG_RESULT([defaults])
-  else
-    AC_MSG_RESULT([libs in $KRB4LIB, headers in $KRB4INC])
-  fi
-
-  dnl Check for DES library
-  AC_CHECK_LIB(des, des_pcbc_encrypt,
-  [
-    AC_CHECK_HEADERS(des.h)
-
-    dnl resolv lib?
-    AC_CHECK_FUNC(res_search, , [AC_CHECK_LIB(resolv, res_search)])
-
-    dnl Check for the Kerberos4 library
-    AC_CHECK_LIB(krb, krb_net_read,
-    [
-      dnl Check for header files
-      AC_CHECK_HEADERS(krb.h)
-
-      dnl we found the required libraries, add to LIBS
-      LIBS="-lkrb -lcom_err -ldes $LIBS"
-
-      dnl Check for function krb_get_our_ip_for_realm
-      dnl this is needed for NAT networks
-      AC_CHECK_FUNCS(krb_get_our_ip_for_realm)
-
-      dnl add define KRB4
-      AC_DEFINE(HAVE_KRB4, 1,
-      [if you have the Kerberos4 libraries (including -ldes)])
-
-      dnl substitute it too!
-      KRB4_ENABLED=1
-      AC_SUBST(KRB4_ENABLED)
-
-      curl_krb4_msg="enabled"
-
-      dnl the krb4 stuff needs a strlcpy()
-      AC_CHECK_FUNCS(strlcpy)
-
-    ])
-  ])
-else
-  AC_MSG_RESULT(no)
-fi
-
-dnl **********************************************************************
-dnl Check for FBopenssl(SPNEGO) libraries
-dnl **********************************************************************
-
-AC_ARG_WITH(spnego,
-  AC_HELP_STRING([--with-spnego=DIR],
-                 [Specify location of SPNEGO library fbopenssl]), [
-  SPNEGO_ROOT="$withval"
-  if test x"$SPNEGO_ROOT" != xno; then
-    want_spnego="yes"
-  fi
-])
-
-AC_MSG_CHECKING([if SPNEGO support is requested])
-if test x"$want_spnego" = xyes; then
-
-  if test X"$SPNEGO_ROOT" = Xyes; then
-     AC_MSG_ERROR([FBOpenSSL libs and/or directories were not found where specified!])
-     AC_MSG_RESULT(no)
-  else
-     if test -z "$SPNEGO_LIB_DIR"; then
-        LDFLAGS="$LDFLAGS -L$SPNEGO_ROOT -lfbopenssl"
-     else
-        LDFLAGS="$LDFLAGS $SPNEGO_LIB_DIR"
-     fi
-
-     AC_MSG_RESULT(yes)
-     AC_DEFINE(HAVE_SPNEGO, 1,
-               [Define this if you have the SPNEGO library fbopenssl])
-     curl_spnego_msg="enabled"
-  fi
-else
-  AC_MSG_RESULT(no)
-fi
-
-dnl **********************************************************************
-dnl Check for GSS-API libraries
-dnl **********************************************************************
-
-dnl check for gss stuff in the /usr as default
-
-GSSAPI_ROOT="/usr"
-AC_ARG_WITH(gssapi-includes,
-  AC_HELP_STRING([--with-gssapi-includes=DIR],
-                 [Specify location of GSSAPI header]),
-  [ GSSAPI_INCS="-I$withval"
-    want_gss="yes" ]
-)
-
-AC_ARG_WITH(gssapi-libs,
-  AC_HELP_STRING([--with-gssapi-libs=DIR],
-                 [Specify location of GSSAPI libs]),
-  [ GSSAPI_LIB_DIR="-L$withval"
-    want_gss="yes" ]
-)
-
-AC_ARG_WITH(gssapi,
-  AC_HELP_STRING([--with-gssapi=DIR],
-                 [Where to look for GSSAPI]), [
-  GSSAPI_ROOT="$withval"
-  if test x"$GSSAPI_ROOT" != xno; then
-    want_gss="yes"
-    if test x"$GSSAPI_ROOT" = xyes; then
-      dnl if yes, then use default root
-      GSSAPI_ROOT="/usr"
-    fi
-  fi
-])
-
-save_CPPFLAGS="$CPPFLAGS"
-AC_MSG_CHECKING([if GSSAPI support is requested])
-if test x"$want_gss" = xyes; then
-  AC_MSG_RESULT(yes)
-
-  if test -z "$GSSAPI_INCS"; then
-     if test -f "$GSSAPI_ROOT/bin/krb5-config"; then
-        GSSAPI_INCS=`$GSSAPI_ROOT/bin/krb5-config --cflags gssapi`
-     elif test "$GSSAPI_ROOT" != "yes"; then
-        GSSAPI_INCS="-I$GSSAPI_ROOT/include"
-     fi
-  fi
-
-  CPPFLAGS="$CPPFLAGS $GSSAPI_INCS"
-
-  AC_CHECK_HEADER(gss.h,
-    [
-      dnl found in the given dirs
-      AC_DEFINE(HAVE_GSSGNU, 1, [if you have the GNU gssapi libraries])
-      gnu_gss=yes
-    ],
-    [
-      dnl not found, check Heimdal or MIT
-      AC_CHECK_HEADERS(
-        [gssapi/gssapi.h gssapi/gssapi_generic.h gssapi/gssapi_krb5.h],
-        [],
-        [not_mit=1])
-      if test "x$not_mit" = "x1"; then
-        dnl MIT not found, check for Heimdal
-        AC_CHECK_HEADER(gssapi.h,
-            [
-              dnl found
-              AC_DEFINE(HAVE_GSSHEIMDAL, 1, [if you have the Heimdal gssapi libraries])
-            ],
-            [
-              dnl no header found, disabling GSS
-              want_gss=no
-              AC_MSG_WARN(disabling GSSAPI since no header files was found)
-            ]
-          )
-      else
-        dnl MIT found
-        AC_DEFINE(HAVE_GSSMIT, 1, [if you have the MIT gssapi libraries])
-        dnl check if we have a really old MIT kerberos (<= 1.2)
-        AC_MSG_CHECKING([if gssapi headers declare GSS_C_NT_HOSTBASED_SERVICE])
-        AC_COMPILE_IFELSE([
-          AC_LANG_PROGRAM([[
-#include <gssapi/gssapi.h>
-#include <gssapi/gssapi_generic.h>
-#include <gssapi/gssapi_krb5.h>
-          ]],[[
-            gss_import_name(
-                            (OM_uint32 *)0,
-                            (gss_buffer_t)0,
-                            GSS_C_NT_HOSTBASED_SERVICE,
-                            (gss_name_t *)0);
-          ]])
-        ],[
-          AC_MSG_RESULT([yes])
-        ],[
-          AC_MSG_RESULT([no])
-          AC_DEFINE(HAVE_OLD_GSSMIT, 1,
-            [if you have an old MIT gssapi library, lacking GSS_C_NT_HOSTBASED_SERVICE])
-        ])
-      fi
-    ]
-  )
-else
-  AC_MSG_RESULT(no)
-fi
-if test x"$want_gss" = xyes; then
-  AC_DEFINE(HAVE_GSSAPI, 1, [if you have the gssapi libraries])
-
-  curl_gss_msg="enabled (MIT/Heimdal)"
-
-  if test -n "$gnu_gss"; then
-    curl_gss_msg="enabled (GNU GSS)"
-    LDFLAGS="$LDFLAGS $GSSAPI_LIB_DIR"
-    LIBS="$LIBS -lgss"
-  elif test -z "$GSSAPI_LIB_DIR"; then
-     case $host in
-     *-*-darwin*)
-        LIBS="$LIBS -lgssapi_krb5 -lresolv"
-        ;;
-     *)
-        if test -f "$GSSAPI_ROOT/bin/krb5-config"; then
-           dnl krb5-config doesn't have --libs-only-L or similar, put everything
-           dnl into LIBS
-           gss_libs=`$GSSAPI_ROOT/bin/krb5-config --libs gssapi`
-           LIBS="$LIBS $gss_libs"
-        elif test "$GSSAPI_ROOT" != "yes"; then
-           LDFLAGS="$LDFLAGS -L$GSSAPI_ROOT/lib$libsuff"
-           LIBS="$LIBS -lgssapi"
-        else
-           LIBS="$LIBS -lgssapi"
-        fi
-        ;;
-     esac
-  else
-     LDFLAGS="$LDFLAGS $GSSAPI_LIB_DIR"
-     LIBS="$LIBS -lgssapi"
-  fi
-else
-  CPPFLAGS="$save_CPPFLAGS"
-fi
-
-dnl **********************************************************************
-dnl Check for the presence of SSL libraries and headers
-dnl **********************************************************************
-
-dnl Default to compiler & linker defaults for SSL files & libraries.
-OPT_SSL=off
-dnl Default to no CA bundle
-ca="no"
-AC_ARG_WITH(ssl,dnl
-AC_HELP_STRING([--with-ssl=PATH],[Where to look for OpenSSL, PATH points to the SSL installation (default: /usr/local/ssl); when possible, set the PKG_CONFIG_PATH environment variable instead of using this option])
-AC_HELP_STRING([--without-ssl], [disable OpenSSL]),
-  OPT_SSL=$withval)
-
-if test X"$OPT_SSL" != Xno; then
-  dnl backup the pre-ssl variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  case "$OPT_SSL" in
-  yes)
-    dnl --with-ssl (without path) used
-    if test x$cross_compiling != xyes; then
-      dnl only do pkg-config magic when not cross-compiling
-      PKGTEST="yes"
-    fi
-    PREFIX_OPENSSL=/usr/local/ssl
-    LIB_OPENSSL="$PREFIX_OPENSSL/lib$libsuff"
-    ;;
-  off)
-    dnl no --with-ssl option given, just check default places
-    if test x$cross_compiling != xyes; then
-      dnl only do pkg-config magic when not cross-compiling
-      PKGTEST="yes"
-    fi
-    PREFIX_OPENSSL=
-    ;;
-  *)
-    dnl check the given --with-ssl spot
-    PKGTEST="no"
-    PREFIX_OPENSSL=$OPT_SSL
-
-    dnl Try pkg-config even when cross-compiling.  Since we
-    dnl specify PKG_CONFIG_LIBDIR we're only looking where
-    dnl the user told us to look
-    OPENSSL_PCDIR="$OPT_SSL/lib/pkgconfig"
-    AC_MSG_NOTICE([PKG_CONFIG_LIBDIR will be set to "$OPENSSL_PCDIR"])
-    if test -e "$OPENSSL_PCDIR/openssl.pc"; then
-      PKGTEST="yes"
-    fi
-
-    dnl in case pkg-config comes up empty, use what we got
-    dnl via --with-ssl
-    LIB_OPENSSL="$PREFIX_OPENSSL/lib$libsuff"
-    if test "$PREFIX_OPENSSL" != "/usr" ; then
-      SSL_LDFLAGS="-L$LIB_OPENSSL"
-      SSL_CPPFLAGS="-I$PREFIX_OPENSSL/include"
-    fi
-    SSL_CPPFLAGS="$SSL_CPPFLAGS -I$PREFIX_OPENSSL/include/openssl"
-    ;;
-  esac
-
-  if test "$PKGTEST" = "yes"; then
-
-    CURL_CHECK_PKGCONFIG(openssl, [$OPENSSL_PCDIR])
-
-    if test "$PKGCONFIG" != "no" ; then
-      SSL_LIBS=`CURL_EXPORT_PCDIR([$OPENSSL_PCDIR]) dnl
-        $PKGCONFIG --libs-only-l openssl 2>/dev/null`
-
-      SSL_LDFLAGS=`CURL_EXPORT_PCDIR([$OPENSSL_PCDIR]) dnl
-        $PKGCONFIG --libs-only-L openssl 2>/dev/null`
-
-      SSL_CPPFLAGS=`CURL_EXPORT_PCDIR([$OPENSSL_PCDIR]) dnl
-        $PKGCONFIG --cflags-only-I openssl 2>/dev/null`
-
-      AC_MSG_NOTICE([pkg-config: SSL_LIBS: "$SSL_LIBS"])
-      AC_MSG_NOTICE([pkg-config: SSL_LDFLAGS: "$SSL_LDFLAGS"])
-      AC_MSG_NOTICE([pkg-config: SSL_CPPFLAGS: "$SSL_CPPFLAGS"])
-
-      LIB_OPENSSL=`echo $SSL_LDFLAGS | sed -e 's/-L//g'`
-
-      dnl use the values pkg-config reported.  This is here
-      dnl instead of below with CPPFLAGS and LDFLAGS because we only
-      dnl learn about this via pkg-config.  If we only have
-      dnl the argument to --with-ssl we don't know what
-      dnl additional libs may be necessary.  Hope that we
-      dnl don't need any.
-      LIBS="$LIBS $SSL_LIBS"
-    fi
-  fi
-
-  dnl finally, set flags to use SSL
-  CPPFLAGS="$CPPFLAGS $SSL_CPPFLAGS"
-  LDFLAGS="$LDFLAGS $SSL_LDFLAGS"
-
-  dnl This is for Msys/Mingw
-  case $host in
-    *-*-msys* | *-*-mingw*)
-      AC_MSG_CHECKING([for gdi32])
-      my_ac_save_LIBS=$LIBS
-      LIBS="-lgdi32 $LIBS"
-      AC_TRY_LINK([#include <windef.h>
-                   #include <wingdi.h>],
-                   [GdiFlush();],
-                   [ dnl worked!
-                   AC_MSG_RESULT([yes])],
-                   [ dnl failed, restore LIBS
-                   LIBS=$my_ac_save_LIBS
-                   AC_MSG_RESULT(no)]
-                  )
-      ;;
-  esac
-
-  AC_CHECK_LIB(crypto, CRYPTO_lock,[
-     HAVECRYPTO="yes"
-     LIBS="-lcrypto $LIBS"
-     ],[
-     LDFLAGS="$CLEANLDFLAGS -L$LIB_OPENSSL"
-     CPPFLAGS="$CLEANCPPFLAGS -I$PREFIX_OPENSSL/include/openssl -I$PREFIX_OPENSSL/include"
-     AC_CHECK_LIB(crypto, CRYPTO_add_lock,[
-       HAVECRYPTO="yes"
-       LIBS="-lcrypto $LIBS"], [
-       LDFLAGS="$CLEANLDFLAGS"
-       CPPFLAGS="$CLEANCPPFLAGS"
-       LIBS="$CLEANLIBS"
-       ])
-    ])
-
-
-  if test X"$HAVECRYPTO" = X"yes"; then
-    dnl This is only reasonable to do if crypto actually is there: check for
-    dnl SSL libs NOTE: it is important to do this AFTER the crypto lib
-
-    AC_CHECK_LIB(ssl, SSL_connect)
-
-    if test "$ac_cv_lib_ssl_SSL_connect" != yes; then
-        dnl we didn't find the SSL lib, try the RSAglue/rsaref stuff
-        AC_MSG_CHECKING(for ssl with RSAglue/rsaref libs in use);
-        OLIBS=$LIBS
-        LIBS="$LIBS -lRSAglue -lrsaref"
-        AC_CHECK_LIB(ssl, SSL_connect)
-        if test "$ac_cv_lib_ssl_SSL_connect" != yes; then
-            dnl still no SSL_connect
-            AC_MSG_RESULT(no)
-            LIBS=$OLIBS
-        else
-            AC_MSG_RESULT(yes)
-        fi
-
-    else
-
-      dnl Have the libraries--check for SSLeay/OpenSSL headers
-      AC_CHECK_HEADERS(openssl/x509.h openssl/rsa.h openssl/crypto.h \
-                       openssl/pem.h openssl/ssl.h openssl/err.h,
-        curl_ssl_msg="enabled (OpenSSL)"
-        OPENSSL_ENABLED=1
-        AC_DEFINE(USE_OPENSSL, 1, [if OpenSSL is in use]))
-
-      if test $ac_cv_header_openssl_x509_h = no; then
-        dnl we don't use the "action" part of the AC_CHECK_HEADERS macro
-        dnl since 'err.h' might in fact find a krb4 header with the same
-        dnl name
-        AC_CHECK_HEADERS(x509.h rsa.h crypto.h pem.h ssl.h err.h)
-
-        if test $ac_cv_header_x509_h = yes &&
-           test $ac_cv_header_crypto_h = yes &&
-           test $ac_cv_header_ssl_h = yes; then
-          dnl three matches
-          curl_ssl_msg="enabled (OpenSSL)"
-          OPENSSL_ENABLED=1
-        fi
-      fi
-    fi
-
-    if test X"$OPENSSL_ENABLED" = X"1"; then
-       AC_DEFINE(USE_SSLEAY, 1, [if SSL is enabled])
-
-       dnl is there a pkcs12.h header present?
-       AC_CHECK_HEADERS(openssl/pkcs12.h)
-    else
-       LIBS="$CLEANLIBS"
-    fi
-    dnl USE_SSLEAY is the historical name for what configure calls
-    dnl OPENSSL_ENABLED; the names should really be unified
-    USE_SSLEAY="$OPENSSL_ENABLED"
-    AC_SUBST(USE_SSLEAY)
-
-    if test X"$OPT_SSL" != Xoff &&
-       test "$OPENSSL_ENABLED" != "1"; then
-      AC_MSG_ERROR([OpenSSL libs and/or directories were not found where specified!])
-    fi
-  fi
-
-  if test X"$OPENSSL_ENABLED" = X"1"; then
-    dnl If the ENGINE library seems to be around, check for the OpenSSL engine
-    dnl stuff, it is kind of "separated" from the main SSL check
-    AC_CHECK_FUNC(ENGINE_init,
-              [
-                AC_CHECK_HEADERS(openssl/engine.h)
-                AC_CHECK_FUNCS( ENGINE_load_builtin_engines )
-              ])
-
-    dnl these can only exist if openssl exists
-    dnl yassl doesn't have SSL_get_shutdown
-
-    AC_CHECK_FUNCS( RAND_status \
-                    RAND_screen \
-                    RAND_egd \
-                    ENGINE_cleanup \
-                    CRYPTO_cleanup_all_ex_data \
-                    SSL_get_shutdown )
-
-    dnl Make an attempt to detect if this is actually yassl's headers and
-    dnl OpenSSL emulation layer. We still leave everything else believing
-    dnl and acting like OpenSSL.
-
-    AC_MSG_CHECKING([for yaSSL using OpenSSL compatibility mode])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <openssl/ssl.h>
-      ]],[[
-#if defined(YASSL_VERSION) && defined(OPENSSL_VERSION_NUMBER)
-        int dummy = SSL_ERROR_NONE;
-#else
-        Not the yaSSL OpenSSL compatibility header.
-#endif
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      AC_DEFINE_UNQUOTED(USE_YASSLEMUL, 1,
-        [Define to 1 if using yaSSL in OpenSSL compatibility mode.])
-      curl_ssl_msg="enabled (OpenSSL emulation by yaSSL)"
-    ],[
-      AC_MSG_RESULT([no])
-    ])
-  fi
-
-  if test "$OPENSSL_ENABLED" = "1"; then
-    if test -n "$LIB_OPENSSL"; then
-       dnl when the ssl shared libs were found in a path that the run-time
-       dnl linker doesn't search through, we need to add it to LD_LIBRARY_PATH
-       dnl to prevent further configure tests to fail due to this
-
-       LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$LIB_OPENSSL"
-       export LD_LIBRARY_PATH
-       AC_MSG_NOTICE([Added $LIB_OPENSSL to LD_LIBRARY_PATH])
-    fi
-  fi
-
-fi
-
-dnl **********************************************************************
-dnl Check for the presence of ZLIB libraries and headers
-dnl **********************************************************************
-
-dnl Check for & handle argument to --with-zlib.
-
-_cppflags=$CPPFLAGS
-_ldflags=$LDFLAGS
-AC_ARG_WITH(zlib,
-AC_HELP_STRING([--with-zlib=PATH],[search for zlib in PATH])
-AC_HELP_STRING([--without-zlib],[disable use of zlib]),
-               [OPT_ZLIB="$withval"])
-
-if test "$OPT_ZLIB" = "no" ; then
-    AC_MSG_WARN([zlib disabled])
-else
-  if test "$OPT_ZLIB" = "yes" ; then
-     OPT_ZLIB=""
-  fi
-
-  if test -z "$OPT_ZLIB" ; then
-    dnl check for the lib first without setting any new path, since many
-    dnl people have it in the default path
-
-    AC_CHECK_LIB(z, inflateEnd,
-                   dnl libz found, set the variable
-                   [HAVE_LIBZ="1"],
-                   dnl if no lib found, try /usr/local
-                   [OPT_ZLIB="/usr/local"])
-
-  fi
-
-  dnl Add a nonempty path to the compiler flags
-  if test -n "$OPT_ZLIB"; then
-     CPPFLAGS="$CPPFLAGS -I$OPT_ZLIB/include"
-     LDFLAGS="$LDFLAGS -L$OPT_ZLIB/lib$libsuff"
-  fi
-
-  AC_CHECK_HEADER(zlib.h,
-    [
-    dnl zlib.h was found
-    HAVE_ZLIB_H="1"
-    dnl if the lib wasn't found already, try again with the new paths
-    if test "$HAVE_LIBZ" != "1"; then
-      AC_CHECK_LIB(z, gzread,
-                   [
-                   dnl the lib was found!
-                   HAVE_LIBZ="1"
-                   ],
-                   [ CPPFLAGS=$_cppflags
-                   LDFLAGS=$_ldflags])
-    fi
-    ],
-    [
-      dnl zlib.h was not found, restore the flags
-      CPPFLAGS=$_cppflags
-      LDFLAGS=$_ldflags]
-    )
-
-  if test "$HAVE_LIBZ" = "1" && test "$HAVE_ZLIB_H" != "1"
-  then
-    AC_MSG_WARN([configure found only the libz lib, not the header file!])
-    HAVE_LIBZ=""
-  elif test "$HAVE_LIBZ" != "1" && test "$HAVE_ZLIB_H" = "1"
-  then
-    AC_MSG_WARN([configure found only the libz header file, not the lib!])
-  elif test "$HAVE_LIBZ" = "1" && test "$HAVE_ZLIB_H" = "1"
-  then
-    dnl both header and lib were found!
-    AC_SUBST(HAVE_LIBZ)
-    AC_DEFINE(HAVE_ZLIB_H, 1, [if you have the zlib.h header file])
-    AC_DEFINE(HAVE_LIBZ, 1, [if zlib is available])
-
-    CURL_LIBS="$CURL_LIBS -lz"
-    LIBS="$LIBS -lz"
-
-    dnl replace 'HAVE_LIBZ' in the automake makefile.ams
-    AMFIXLIB="1"
-    AC_MSG_NOTICE([found both libz and libz.h header])
-    curl_zlib_msg="enabled"
-  fi
-fi
-
-dnl set variable for use in automakefile(s)
-AM_CONDITIONAL(HAVE_LIBZ, test x"$AMFIXLIB" = x1)
-
-dnl **********************************************************************
-dnl Check for the random seed preferences
-dnl **********************************************************************
-
-if test X"$OPENSSL_ENABLED" = X"1"; then
-  AC_ARG_WITH(egd-socket,
-  AC_HELP_STRING([--with-egd-socket=FILE],
-                 [Entropy Gathering Daemon socket pathname]),
-      [ EGD_SOCKET="$withval" ]
-  )
-  if test -n "$EGD_SOCKET" ; then
-          AC_DEFINE_UNQUOTED(EGD_SOCKET, "$EGD_SOCKET",
-          [your Entropy Gathering Daemon socket pathname] )
-  fi
-
-  dnl Check for user-specified random device
-  AC_ARG_WITH(random,
-  AC_HELP_STRING([--with-random=FILE],
-                 [read randomness from FILE (default=/dev/urandom)]),
-      [ RANDOM_FILE="$withval" ],
-      [
-          dnl Check for random device
-          AC_CHECK_FILE("/dev/urandom", [ RANDOM_FILE="/dev/urandom"] )
-      ]
-  )
-  if test -n "$RANDOM_FILE" && test X"$RANDOM_FILE" != Xno ; then
-          AC_SUBST(RANDOM_FILE)
-          AC_DEFINE_UNQUOTED(RANDOM_FILE, "$RANDOM_FILE",
-          [a suitable file to read random data from])
-  fi
-fi
-
-dnl ----------------------------------------------------
-dnl check for GnuTLS
-dnl ----------------------------------------------------
-
-dnl Default to compiler & linker defaults for GnuTLS files & libraries.
-OPT_GNUTLS=no
-
-AC_ARG_WITH(gnutls,dnl
-AC_HELP_STRING([--with-gnutls=PATH],[where to look for GnuTLS, PATH points to the installation root (default: /usr/local/)])
-AC_HELP_STRING([--without-gnutls], [disable GnuTLS detection]),
-  OPT_GNUTLS=$withval)
-
-if test "$OPENSSL_ENABLED" != "1"; then
-
-  if test X"$OPT_GNUTLS" != Xno; then
-
-    addld=""
-    if test "x$OPT_GNUTLS" = "xyes"; then
-      dnl this is with no partiular path given
-      CURL_CHECK_PKGCONFIG(gnutls)
-
-      if test "$PKGCONFIG" != "no" ; then
-        addlib=`$PKGCONFIG --libs-only-l gnutls`
-        addld=`$PKGCONFIG --libs-only-L gnutls`
-        addcflags=`$PKGCONFIG --cflags-only-I gnutls`
-        version=`$PKGCONFIG --modversion gnutls`
-        gtlslib=`echo $addld | $SED -e 's/-L//'`
-      else
-        dnl without pkg-config, we try libgnutls-config as that was how it
-        dnl used to be done
-        check=`libgnutls-config --version 2>/dev/null`
-        if test -n "$check"; then
-          addlib=`libgnutls-config --libs`
-          addcflags=`libgnutls-config --cflags`
-          version=`libgnutls-config --version`
-          gtlslib=`libgnutls-config --prefix`/lib$libsuff
-        fi
-      fi
-    else
-      dnl this is with a given path, first check if there's a libgnutls-config
-      dnl there and if not, make an educated guess
-      cfg=$OPT_GNUTLS/bin/libgnutls-config
-      check=`$cfg --version 2>/dev/null`
-      if test -n "$check"; then
-        addlib=`$cfg --libs`
-        addcflags=`$cfg --cflags`
-        version=`$cfg --version`
-        gtlslib=`$cfg --prefix`/lib$libsuff
-      else
-        dnl without pkg-config and libgnutls-config, we guess a lot!
-        addlib=-lgnutls
-        addld=-L$OPT_GNUTLS/lib$libsuff
-        addcflags=-I$OPT_GNUTLS/include
-        version="" # we just don't know
-        gtlslib=$OPT_GNUTLS/lib$libsuff
-      fi
-    fi
-
-    if test -z "$version"; then
-      dnl lots of efforts, still no go
-      version="unknown"
-    fi
-
-    if test -n "$addlib"; then
-
-      CLEANLIBS="$LIBS"
-      CLEANCPPFLAGS="$CPPFLAGS"
-      CLEADLDFLAGS="$LDFLAGS"
-
-      LIBS="$LIBS $addlib"
-      LDFLAGS="$LDFLAGS $addld"
-      if test "$addcflags" != "-I/usr/include"; then
-         CPPFLAGS="$CPPFLAGS $addcflags"
-      fi
-
-      AC_CHECK_LIB(gnutls, gnutls_check_version,
-       [
-       AC_DEFINE(USE_GNUTLS, 1, [if GnuTLS is enabled])
-       AC_SUBST(USE_GNUTLS, [1])
-       GNUTLS_ENABLED=1
-       USE_GNUTLS="yes"
-       curl_ssl_msg="enabled (GnuTLS)"
-       ],
-       [
-         LIBS="$CLEANLIBS"
-         CPPFLAGS="$CLEANCPPFLAGS"
-       ])
-
-      if test "x$USE_GNUTLS" = "xyes"; then
-        AC_MSG_NOTICE([detected GnuTLS version $version])
-
-        if test -n "$gtlslib"; then
-          dnl when shared libs were found in a path that the run-time
-          dnl linker doesn't search through, we need to add it to
-          dnl LD_LIBRARY_PATH to prevent further configure tests to fail
-          dnl due to this
-
-          LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$gtlslib"
-          export LD_LIBRARY_PATH
-          AC_MSG_NOTICE([Added $gtlslib to LD_LIBRARY_PATH])
-        fi
-      fi
-
-    fi
-
-  fi dnl GNUTLS not disabled
-
-fi dnl OPENSSL != 1
-
-dnl ----------------------------------------------------
-dnl NSS. Only check if GnuTLS and OpenSSL are not enabled
-dnl ----------------------------------------------------
-
-dnl Default to compiler & linker defaults for NSS files & libraries.
-OPT_NSS=no
-
-AC_ARG_WITH(nss,dnl
-AC_HELP_STRING([--with-nss=PATH],[where to look for NSS, PATH points to the installation root (default: /usr/local/)])
-AC_HELP_STRING([--without-nss], [disable NSS detection]),
-  OPT_NSS=$withval)
-
-if test "$OPENSSL_ENABLED" != "1" -a "$GNUTLS_ENABLED" != "1"; then
-
-  if test X"$OPT_NSS" != Xno; then
-    if test "x$OPT_NSS" = "xyes"; then
-
-      CURL_CHECK_PKGCONFIG(nss)
-
-      if test "$PKGCONFIG" != "no" ; then
-        addlib=`$PKGCONFIG --libs nss`
-        addcflags=`$PKGCONFIG --cflags nss`
-        version=`$PKGCONFIG --modversion nss`
-        nssprefix=`$PKGCONFIG --variable=prefix nss`
-      else
-        dnl Without pkg-config, we check for nss-config
-
-        check=`nss-config --version 2>/dev/null`
-        if test -n "$check"; then
-          addlib=`nss-config --libs`
-          addcflags=`nss-config --cflags`
-          version=`nss-config --version`
-          nssprefix=`nss-config --prefix`
-        else
-          addlib="-lnss3"
-          addcflags=""
-          version="unknown"
-        fi
-      fi
-    else
-        # Without pkg-config, we'll kludge in some defaults
-        addlib="-L$OPT_NSS/lib -lssl3 -lsmime3 -lnss3 -lplds4 -lplc4 -lnspr4 -lpthread -ldl"
-        addcflags="-I$OPT_NSS/include"
-        version="unknown"
-        nssprefix=$OPT_NSS
-    fi
-
-    dnl Check for functionPK11_CreateGenericObject
-    dnl this is needed for using the PEM PKCS#11 module
-    AC_CHECK_LIB(nss3, PK11_CreateGenericObject,
-     [
-     AC_DEFINE(HAVE_PK11_CREATEGENERICOBJECT, 1, [if you have the function PK11_CreateGenericObject])
-     AC_SUBST(HAVE_PK11_CREATEGENERICOBJECT, [1])
-     ])
-    if test -n "$addlib"; then
-
-      CLEANLIBS="$LIBS"
-      CLEANCPPFLAGS="$CPPFLAGS"
-
-      LIBS="$LIBS $addlib"
-      if test "$addcflags" != "-I/usr/include"; then
-         CPPFLAGS="$CPPFLAGS $addcflags"
-      fi
-
-      AC_CHECK_LIB(nss3, NSS_Initialize,
-       [
-       AC_DEFINE(USE_NSS, 1, [if NSS is enabled])
-       AC_SUBST(USE_NSS, [1])
-       USE_NSS="yes"
-       NSS_ENABLED=1
-       curl_ssl_msg="enabled (NSS)"
-       ],
-       [
-         LIBS="$CLEANLIBS"
-         CPPFLAGS="$CLEANCPPFLAGS"
-       ])
-
-      if test "x$USE_NSS" = "xyes"; then
-        AC_MSG_NOTICE([detected NSS version $version])
-
-        dnl when shared libs were found in a path that the run-time
-        dnl linker doesn't search through, we need to add it to
-        dnl LD_LIBRARY_PATH to prevent further configure tests to fail
-        dnl due to this
-
-        LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$nssprefix/lib$libsuff"
-        export LD_LIBRARY_PATH
-        AC_MSG_NOTICE([Added $nssprefix/lib$libsuff to LD_LIBRARY_PATH])
-      fi
-
-    fi
-
-  fi dnl NSS not disabled
-
-fi dnl OPENSSL != 1 -a GNUTLS_ENABLED != 1
-
-if test "x$OPENSSL_ENABLED$GNUTLS_ENABLED$NSS_ENABLED" = "x"; then
-  AC_MSG_WARN([SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more.])
-  AC_MSG_WARN([Use --with-ssl, --with-gnutls or --with-nss to address this.])
-else
-  # SSL is enabled, genericly
-  AC_SUBST(SSL_ENABLED)
-  SSL_ENABLED="1"
-fi
-
-dnl **********************************************************************
-dnl Check for the CA bundle
-dnl **********************************************************************
-
-CURL_CHECK_CA_BUNDLE
-
-dnl **********************************************************************
-dnl Check for the presence of LIBSSH2 libraries and headers
-dnl **********************************************************************
-
-dnl Default to compiler & linker defaults for LIBSSH2 files & libraries.
-OPT_LIBSSH2=off
-AC_ARG_WITH(libssh2,dnl
-AC_HELP_STRING([--with-libssh2=PATH],[Where to look for libssh2, PATH points to the LIBSSH2 installation (default: /usr/local/lib); when possible, set the PKG_CONFIG_PATH environment variable instead of using this option])
-AC_HELP_STRING([--without-libssh2], [disable LIBSSH2]),
-  OPT_LIBSSH2=$withval)
-
-if test X"$OPT_LIBSSH2" != Xno; then
-  dnl backup the pre-libssh2 variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  case "$OPT_LIBSSH2" in
-  yes)
-    dnl --with-libssh2 (without path) used
-    CURL_CHECK_PKGCONFIG(libssh2)
-
-    if test "$PKGCONFIG" != "no" ; then
-      LIB_SSH2=`$PKGCONFIG --libs-only-l libssh2`
-      LD_SSH2=`$PKGCONFIG --libs-only-L libssh2`
-      CPP_SSH2=`$PKGCONFIG --cflags-only-I libssh2`
-      version=`$PKGCONFIG --modversion libssh2`
-      DIR_SSH2=`echo $LD_SSH2 | $SED -e 's/-L//'`
-    fi
-
-    ;;
-  off)
-    dnl no --with-libssh2 option given, just check default places
-    ;;
-  *)
-    dnl use the given --with-libssh2 spot
-    PREFIX_SSH2=$OPT_LIBSSH2
-    ;;
-  esac
-
-  dnl if given with a prefix, we set -L and -I based on that
-  if test -n "$PREFIX_SSH2"; then
-    LD_SSH2=-L${PREFIX_SSH2}/lib$libsuff
-    CPP_SSH2=-I${PREFIX_SSH2}/include
-    DIR_SSH2=${PREFIX_SSH2}/lib$libsuff
-  fi
-
-  LDFLAGS="$LDFLAGS $LD_SSH2"
-  CPPFLAGS="$CPPFLAGS $CPP_SSH2"
-  LIBS="$LIBS $LIB_SSH2"
-
-  AC_CHECK_LIB(ssh2, libssh2_channel_open_ex)
-
-  AC_CHECK_HEADERS(libssh2.h,
-    curl_ssh_msg="enabled (libSSH2)"
-    LIBSSH2_ENABLED=1
-    AC_DEFINE(USE_LIBSSH2, 1, [if libSSH2 is in use])
-    AC_SUBST(USE_LIBSSH2, [1])
-  )
-
-  if test X"$OPT_LIBSSH2" != Xoff &&
-     test "$LIBSSH2_ENABLED" != "1"; then
-    AC_MSG_ERROR([libSSH2 libs and/or directories were not found where specified!])
-  fi
-
-  if test "$LIBSSH2_ENABLED" = "1"; then
-    if test -n "$DIR_SSH2"; then
-       dnl when the libssh2 shared libs were found in a path that the run-time
-       dnl linker doesn't search through, we need to add it to LD_LIBRARY_PATH
-       dnl to prevent further configure tests to fail due to this
-
-       dnl libssh2_version is a post 1.0 addition
-       AC_CHECK_FUNCS( libssh2_version )
-
-       LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DIR_SSH2"
-       export LD_LIBRARY_PATH
-       AC_MSG_NOTICE([Added $DIR_SSH2 to LD_LIBRARY_PATH])
-    fi
-  else
-    dnl no libssh2, revert back to clean variables
-    LDFLAGS=$CLEANLDFLAGS
-    CPPFLAGS=$CLEANCPPFLAGS
-    LIBS=$CLEANLIBS
-  fi
-fi
-
-dnl **********************************************************************
-dnl Check for the presence of IDN libraries and headers
-dnl **********************************************************************
-
-AC_MSG_CHECKING([whether to build with libidn])
-AC_ARG_WITH(libidn,
-AC_HELP_STRING([--with-libidn=PATH],[Enable libidn usage])
-AC_HELP_STRING([--without-libidn],[Disable libidn usage]),
-  [LIBIDN="$withval"])
-
-case "$LIBIDN" in
-  no)
-       AC_MSG_RESULT(no)
-       ;;
-  *)   AC_MSG_RESULT(yes)
-
-       idn=""
-       dnl if there is a given path, check that FIRST
-       if test -n "$LIBIDN"; then
-         if test "x$LIBIDN" != "xyes"; then
-            oldLDFLAGS=$LDFLAGS
-            oldCPPFLAGS=$CPPFLAGS
-            LDFLAGS="$LDFLAGS -L$LIBIDN/lib"
-            CPPFLAGS="$CPPFLAGS -I$LIBIDN/include"
-            idn="yes"
-            AC_CHECK_LIB(idn, idna_to_ascii_4i, ,
-                         idn=""
-                         LDFLAGS=$oldLDFLAGS
-                         CPPFLAGS=$oldCPPFLAGS)
-         fi
-       fi
-
-       if test "x$idn" != "xyes"; then
-          dnl check with default paths
-          idn="yes"
-          AC_CHECK_LIB(idn, idna_to_ascii_lz, ,
-                       idn="")
-       fi
-
-       if test "x$idn" = "xyes"; then
-         curl_idn_msg="enabled"
-         AC_SUBST(IDN_ENABLED, [1])
-         dnl different versions of libidn have different setups of these:
-         AC_CHECK_FUNCS( idn_free idna_strerror tld_strerror)
-         AC_CHECK_HEADERS( idn-free.h tld.h )
-       fi
-
-       ;;
-esac
-
-
-dnl Let's hope this split URL remains working:
-dnl http://publibn.boulder.ibm.com/doc_link/en_US/a_doc_lib/aixprggd/ \
-dnl genprogc/thread_quick_ref.htm
-
-
-dnl **********************************************************************
-dnl Back to "normal" configuring
-dnl **********************************************************************
-
-dnl Checks for header files.
-AC_HEADER_STDC
-
-CURL_CHECK_HEADER_MALLOC
-CURL_CHECK_HEADER_MEMORY
-
-dnl Now check for the very most basic headers. Then we can use these
-dnl ones as default-headers when checking for the rest!
-AC_CHECK_HEADERS(
-        sys/types.h \
-        sys/time.h \
-        sys/select.h \
-        sys/socket.h \
-        sys/ioctl.h \
-        sys/uio.h \
-        assert.h \
-        unistd.h \
-        stdlib.h \
-        limits.h \
-        arpa/inet.h \
-        net/if.h \
-        netinet/in.h \
-        sys/un.h \
-        netinet/tcp.h \
-        netdb.h \
-        sys/sockio.h \
-        sys/stat.h \
-        sys/param.h \
-        termios.h \
-        termio.h \
-        sgtty.h \
-        fcntl.h \
-        alloca.h \
-        time.h \
-        io.h \
-        pwd.h \
-        utime.h \
-        sys/utime.h \
-        sys/poll.h \
-        poll.h \
-        socket.h \
-        sys/resource.h \
-        libgen.h \
-        locale.h \
-        errno.h \
-        stdbool.h \
-        arpa/tftp.h \
-        sys/filio.h \
-        setjmp.h,
-dnl to do if not found
-[],
-dnl to do if found
-[],
-dnl default includes
-[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_SYS_UN_H
-#include <sys/un.h>
-#endif
-]
-)
-
-dnl Checks for typedefs, structures, and compiler characteristics.
-AC_C_CONST
-CURL_CHECK_VARIADIC_MACROS
-AC_TYPE_SIZE_T
-AC_HEADER_TIME
-CURL_CHECK_STRUCT_TIMEVAL
-CURL_VERIFY_RUNTIMELIBS
-
-AC_CHECK_SIZEOF(size_t)
-AC_CHECK_SIZEOF(long)
-AC_CHECK_SIZEOF(int)
-AC_CHECK_SIZEOF(short)
-CURL_CONFIGURE_LONG
-AC_CHECK_SIZEOF(time_t)
-AC_CHECK_SIZEOF(off_t)
-
-soname_bump=no
-if test x"$ac_cv_native_windows" != "xyes" &&
-   test $ac_cv_sizeof_off_t -ne $curl_sizeof_curl_off_t; then
-  AC_MSG_WARN([This libcurl built is probably not ABI compatible with previous])
-  AC_MSG_WARN([builds! You MUST read lib/README.curl_off_t to figure it out.])
-  soname_bump=yes
-fi
-
-
-AC_CHECK_TYPE(long long,
-   [AC_DEFINE(HAVE_LONGLONG, 1,
-      [Define to 1 if the compiler supports the 'long long' data type.])]
-   longlong="yes"
-)
-
-if test "xyes" = "x$longlong"; then
-  AC_MSG_CHECKING([if numberLL works])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-      long long val = 1000LL;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    AC_DEFINE(HAVE_LL, 1, [if your compiler supports LL])
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-fi
-
-
-# check for ssize_t
-AC_CHECK_TYPE(ssize_t, ,
-   AC_DEFINE(ssize_t, int, [the signed version of size_t]))
-
-# check for bool type
-AC_CHECK_TYPE([bool],[
-  AC_DEFINE(HAVE_BOOL_T, 1,
-    [Define to 1 if bool is an available type.])
-], ,[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_STDBOOL_H
-#include <stdbool.h>
-#endif
-])
-
-CURL_CONFIGURE_CURL_SOCKLEN_T
-
-TYPE_IN_ADDR_T
-
-TYPE_SOCKADDR_STORAGE
-
-TYPE_SIG_ATOMIC_T
-
-AC_TYPE_SIGNAL
-
-CURL_CHECK_FUNC_SELECT
-
-CURL_CHECK_FUNC_RECV
-CURL_CHECK_FUNC_RECVFROM
-CURL_CHECK_FUNC_SEND
-CURL_CHECK_MSG_NOSIGNAL
-
-CURL_CHECK_FUNC_ALARM
-CURL_CHECK_FUNC_BASENAME
-CURL_CHECK_FUNC_CLOSESOCKET
-CURL_CHECK_FUNC_CLOSESOCKET_CAMEL
-CURL_CHECK_FUNC_CONNECT
-CURL_CHECK_FUNC_FCNTL
-CURL_CHECK_FUNC_FDOPEN
-CURL_CHECK_FUNC_FREEADDRINFO
-CURL_CHECK_FUNC_FREEIFADDRS
-CURL_CHECK_FUNC_FTRUNCATE
-CURL_CHECK_FUNC_GETADDRINFO
-CURL_CHECK_FUNC_GETHOSTBYADDR
-CURL_CHECK_FUNC_GETHOSTBYADDR_R
-CURL_CHECK_FUNC_GETHOSTBYNAME
-CURL_CHECK_FUNC_GETHOSTBYNAME_R
-CURL_CHECK_FUNC_GETHOSTNAME
-CURL_CHECK_FUNC_GETIFADDRS
-CURL_CHECK_FUNC_GETSERVBYPORT_R
-CURL_CHECK_FUNC_GMTIME_R
-CURL_CHECK_FUNC_INET_NTOA_R
-CURL_CHECK_FUNC_INET_NTOP
-CURL_CHECK_FUNC_INET_PTON
-CURL_CHECK_FUNC_IOCTL
-CURL_CHECK_FUNC_IOCTLSOCKET
-CURL_CHECK_FUNC_IOCTLSOCKET_CAMEL
-CURL_CHECK_FUNC_LOCALTIME_R
-CURL_CHECK_FUNC_MEMRCHR
-CURL_CHECK_FUNC_POLL
-CURL_CHECK_FUNC_SETSOCKOPT
-CURL_CHECK_FUNC_SIGACTION
-CURL_CHECK_FUNC_SIGINTERRUPT
-CURL_CHECK_FUNC_SIGNAL
-CURL_CHECK_FUNC_SIGSETJMP
-CURL_CHECK_FUNC_SOCKET
-CURL_CHECK_FUNC_STRCASECMP
-CURL_CHECK_FUNC_STRCASESTR
-CURL_CHECK_FUNC_STRCMPI
-CURL_CHECK_FUNC_STRDUP
-CURL_CHECK_FUNC_STRERROR_R
-CURL_CHECK_FUNC_STRICMP
-CURL_CHECK_FUNC_STRLCAT
-CURL_CHECK_FUNC_STRNCASECMP
-CURL_CHECK_FUNC_STRNCMPI
-CURL_CHECK_FUNC_STRNICMP
-CURL_CHECK_FUNC_STRSTR
-CURL_CHECK_FUNC_STRTOK_R
-CURL_CHECK_FUNC_STRTOLL
-CURL_CHECK_FUNC_WRITEV
-
-dnl Checks for library functions.
-dnl AC_PROG_GCC_TRADITIONAL
-
-dnl AC_FUNC_VPRINTF
-case $host in
-  *msdosdjgpp)
-     ac_cv_func_pipe=no
-     skipcheck_pipe=yes
-     AC_MSG_NOTICE([skip check for pipe on msdosdjgpp])
-    ;;
-esac
-
-AC_CHECK_FUNCS([fork \
-  geteuid \
-  getpass_r \
-  getppid \
-  getprotobyname \
-  getpwuid \
-  getrlimit \
-  gettimeofday \
-  inet_addr \
-  perror \
-  pipe \
-  setlocale \
-  setmode \
-  setrlimit \
-  uname \
-  utime
-],[
-],[
-  func="$ac_func"
-  eval skipcheck=\$skipcheck_$func
-  if test "x$skipcheck" != "xyes"; then
-    AC_MSG_CHECKING([deeper for $func])
-    AC_LINK_IFELSE([
-      AC_LANG_PROGRAM([[
-      ]],[[
-        $func ();
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      eval "ac_cv_func_$func=yes"
-      AC_DEFINE_UNQUOTED(AS_TR_CPP([HAVE_$func]), [1],
-        [Define to 1 if you have the $func function.])
-    ],[
-      AC_MSG_RESULT([but still no])
-    ])
-  fi
-])
-
-dnl Check if the getnameinfo function is available
-dnl and get the types of five of its arguments.
-CURL_CHECK_FUNC_GETNAMEINFO
-
-if test "$ipv6" = "yes"; then
-  if test "$ac_cv_func_getaddrinfo" = "yes"; then
-    AC_DEFINE(ENABLE_IPV6, 1, [Define if you want to enable IPv6 support])
-    IPV6_ENABLED=1
-    AC_SUBST(IPV6_ENABLED)
-  fi
-  CURL_CHECK_NI_WITHSCOPEID
-fi
-
-dnl ************************************************************
-dnl enable non-blocking communications
-dnl
-CURL_CHECK_OPTION_NONBLOCKING
-CURL_CHECK_NONBLOCKING_SOCKET
-
-dnl ************************************************************
-dnl nroff tool stuff
-dnl
-
-AC_PATH_PROG( PERL, perl, ,
-  $PATH:/usr/local/bin/perl:/usr/bin/:/usr/local/bin )
-AC_SUBST(PERL)
-
-AC_PATH_PROGS( NROFF, gnroff nroff, ,
-  $PATH:/usr/bin/:/usr/local/bin )
-AC_SUBST(NROFF)
-
-if test -n "$NROFF"; then
-  dnl only check for nroff options if an nroff command was found
-
-  AC_MSG_CHECKING([how to use *nroff to get plain text from man pages])
-  MANOPT="-man"
-  mancheck=`echo foo | $NROFF $MANOPT 2>/dev/null`
-  if test -z "$mancheck"; then
-    MANOPT="-mandoc"
-   mancheck=`echo foo | $NROFF $MANOPT 2>/dev/null`
-    if test -z "$mancheck"; then
-      MANOPT=""
-      AC_MSG_RESULT([failed])
-      AC_MSG_WARN([found no *nroff option to get plaintext from man pages])
-    else
-      AC_MSG_RESULT([$MANOPT])
-    fi
-  else
-    AC_MSG_RESULT([$MANOPT])
-  fi
-  AC_SUBST(MANOPT)
-fi
-
-if test -z "$MANOPT"
-then
-  dnl if no nroff tool was found, or no option that could convert man pages
-  dnl was found, then disable the built-in manual stuff
-  AC_MSG_WARN([disabling built-in manual])
-  USE_MANUAL="no";
-fi
-
-dnl *************************************************************************
-dnl If the manual variable still is set, then we go with providing a built-in
-dnl manual
-
-if test "$USE_MANUAL" = "1"; then
-  AC_DEFINE(USE_MANUAL, 1, [If you want to build curl with the built-in manual])
-  curl_manual_msg="enabled"
-fi
-
-dnl set variable for use in automakefile(s)
-AM_CONDITIONAL(USE_MANUAL, test x"$USE_MANUAL" = x1)
-
-CURL_CHECK_LIB_ARES
-AM_CONDITIONAL(USE_EMBEDDED_ARES, test x$embedded_ares = xyes)
-
-dnl ************************************************************
-dnl disable verbose text strings
-dnl
-AC_MSG_CHECKING([whether to enable verbose strings])
-AC_ARG_ENABLE(verbose,
-AC_HELP_STRING([--enable-verbose],[Enable verbose strings])
-AC_HELP_STRING([--disable-verbose],[Disable verbose strings]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_VERBOSE_STRINGS, 1, [to disable verbose strings])
-       curl_verbose_msg="no"
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl enable SSPI support
-dnl
-AC_MSG_CHECKING([whether to enable SSPI support (Windows native builds only)])
-AC_ARG_ENABLE(sspi,
-AC_HELP_STRING([--enable-sspi],[Enable SSPI])
-AC_HELP_STRING([--disable-sspi],[Disable SSPI]),
-[ case "$enableval" in
-  yes)
-       if test "$ac_cv_native_windows" = "yes"; then
-         AC_MSG_RESULT(yes)
-         AC_DEFINE(USE_WINDOWS_SSPI, 1, [to enable SSPI support])
-         AC_SUBST(USE_WINDOWS_SSPI, [1])
-         curl_sspi_msg="enabled"
-       else
-         AC_MSG_RESULT(no)
-         AC_MSG_WARN([--enable-sspi Ignored. Only supported on native Windows builds.])
-       fi
-       ;;
-  *)
-       AC_MSG_RESULT(no)
-       ;;
-  esac ],
-       AC_MSG_RESULT(no)
-)
-
-dnl ************************************************************
-dnl disable cryptographic authentication
-dnl
-AC_MSG_CHECKING([whether to enable cryptographic authentication methods])
-AC_ARG_ENABLE(crypto-auth,
-AC_HELP_STRING([--enable-crypto-auth],[Enable cryptographic authentication])
-AC_HELP_STRING([--disable-crypto-auth],[Disable cryptographic authentication]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_CRYPTO_AUTH, 1, [to disable cryptographic authentication])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl disable cookies support
-dnl
-AC_MSG_CHECKING([whether to enable support for cookies])
-AC_ARG_ENABLE(cookies,
-AC_HELP_STRING([--enable-cookies],[Enable cookies support])
-AC_HELP_STRING([--disable-cookies],[Disable cookies support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_COOKIES, 1, [to disable cookies support])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl Enable hiding of internal symbols in library to reduce its size and
-dnl speed dynamic linking of applications.  This currently is only supported
-dnl on gcc >= 4.0 and SunPro C.
-dnl
-AC_MSG_CHECKING([whether to enable hidden symbols in the library])
-AC_ARG_ENABLE(hidden-symbols,
-AC_HELP_STRING([--enable-hidden-symbols],[Hide internal symbols in library])
-AC_HELP_STRING([--disable-hidden-symbols],[Leave all symbols with default visibility in library]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       ;;
-  *)
-       AC_MSG_CHECKING([whether $CC supports it])
-       if test "$GCC" = yes ; then
-         if $CC --help --verbose 2>&1 | grep fvisibility= > /dev/null ||
-           dnl clang always supports -fvisibility= but it doesn't show up
-           dnl under --help.
-           test "$compiler_id" = "CLANG"; then
-           AC_MSG_RESULT(yes)
-           AC_DEFINE(CURL_HIDDEN_SYMBOLS, 1, [to enable hidden symbols])
-           AC_DEFINE(CURL_EXTERN_SYMBOL, [__attribute__ ((visibility ("default")))], [to make a symbol visible])
-           CFLAGS="$CFLAGS -fvisibility=hidden"
-         else
-            AC_MSG_RESULT(no)
-          fi
-
-       else
-         dnl Test for SunPro cc
-         if $CC 2>&1 | grep flags >/dev/null && $CC -flags | grep xldscope= >/dev/null ; then
-           AC_MSG_RESULT(yes)
-           AC_DEFINE(CURL_HIDDEN_SYMBOLS, 1, [to enable hidden symbols])
-           AC_DEFINE(CURL_EXTERN_SYMBOL, [__global], [to make a symbol visible])
-           CFLAGS="$CFLAGS -xldscope=hidden"
-         else
-           AC_MSG_RESULT(no)
-         fi
-       fi
-       ;;
-  esac ],
-       AC_MSG_RESULT(no)
-)
-
-dnl ************************************************************
-dnl enforce SONAME bump
-dnl
-
-AC_MSG_CHECKING([whether to enforce SONAME bump])
-AC_ARG_ENABLE(soname-bump,
-AC_HELP_STRING([--enable-soname-bump],[Enable enforced SONAME bump])
-AC_HELP_STRING([--disable-soname-bump],[Disable enforced SONAME bump]),
-[ case "$enableval" in
-  yes)   AC_MSG_RESULT(yes)
-         soname_bump=yes
-         ;;
-  *)
-         AC_MSG_RESULT(no)
-         ;;
-  esac ],
-        AC_MSG_RESULT($soname_bump)
-)
-AM_CONDITIONAL(SONAME_BUMP, test x$soname_bump = xyes)
-
-
-dnl ************************************************************
-if test ! -z "$winsock_LIB"; then
-
-  dnl If ws2_32 is wanted, make sure it is the _last_ lib in LIBS (makes
-  dnl things work when built with c-ares). But we can't just move it last
-  dnl since then other stuff (SSL) won't build. So we simply append it to the
-  dnl end.
-
-  LIBS="$LIBS $winsock_LIB"
-  TEST_SERVER_LIBS="$TEST_SERVER_LIBS $winsock_LIB"
-
-fi
-
-dnl
-dnl All the library dependencies put into $LIB apply to libcurl only.
-dnl Those in $CURL_LIBS apply to the curl command-line client only.
-dnl Those in $TEST_SERVER_LIBS apply to test servers only.
-dnl Those in $ALL_LIBS apply to all targets, including test targets.
-dnl
-LIBCURL_LIBS=$LIBS
-
-AC_SUBST(LIBCURL_LIBS)
-AC_SUBST(CURL_LIBS)
-AC_SUBST(TEST_SERVER_LIBS)
-LIBS=$ALL_LIBS  dnl LIBS is a magic variable that's used for every link
-
-AM_CONDITIONAL(CROSSCOMPILING, test x$cross_compiling = xyes)
-
-dnl
-dnl For keeping supported features and protocols also in pkg-config file
-dnl since it is more cross-compile frient than curl-config
-dnl
-
-if test "x$USE_SSLEAY" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES SSL"
-elif test -n "$SSL_ENABLED"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES SSL"
-fi
-if test "@KRB4_ENABLED@" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES KRB4"
-fi
-if test "x$IPV6_ENABLED" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES IPv6"
-fi
-if test "x$HAVE_LIBZ" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES libz"
-fi
-if test "x$USE_ARES" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES AsynchDNS"
-fi
-if test "x$IDN_ENABLED" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES IDN"
-fi
-if test "x$USE_WINDOWS_SSPI" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES SSPI"
-fi
-if test "x$USE_SSLEAY" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" -o "x$GNUTLS_ENABLED" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES NTLM"
-fi
-
-AC_SUBST(SUPPORT_FEATURES)
-
-dnl For supported protocols in pkg-config file
-if test "x$CURL_DISABLE_HTTP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS HTTP"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS HTTPS"
-  fi
-fi
-if test "x$CURL_DISABLE_FTP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS FTP"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS FTPS"
-  fi
-fi
-if test "x$CURL_DISABLE_FILE" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS FILE"
-fi
-if test "x$CURL_DISABLE_TELNET" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS TELNET"
-fi
-if test "x$CURL_DISABLE_LDAP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS LDAP"
-fi
-if test "x$CURL_DISABLE_LDAPS" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS LDAPS"
-fi
-if test "x$CURL_DISABLE_DICT" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS DICT"
-fi
-if test "x$CURL_DISABLE_TFTP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS TFTP"
-fi
-if test "x$CURL_DISABLE_POP3" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS POP3"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS POP3S"
-  fi
-fi
-if test "x$CURL_DISABLE_IMAP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS IMAP"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS IMAPS"
-  fi
-fi
-if test "x$CURL_DISABLE_SMTP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SMTP"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SMTPS"
-  fi
-fi
-if test "x$USE_LIBSSH2" = "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SCP"
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SFTP"
-fi
-if test "x$CURL_DISABLE_RTSP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS RTSP"
-fi
-
-dnl replace spaces with newlines
-dnl sort the lines
-dnl replace the newlines back to spaces
-SUPPORT_PROTOCOLS=`echo $SUPPORT_PROTOCOLS | tr ' ' '\012' | sort | tr '\012' ' '`
-
-AC_SUBST(SUPPORT_PROTOCOLS)
-
-dnl squeeze whitespace out of some variables
-
-squeeze CFLAGS
-squeeze CPPFLAGS
-squeeze DEFS
-squeeze LDFLAGS
-squeeze LIBS
-
-squeeze CURL_LIBS
-squeeze LIBCURL_LIBS
-squeeze TEST_SERVER_LIBS
-
-squeeze SUPPORT_FEATURES
-squeeze SUPPORT_PROTOCOLS
-
-if test "x$want_curldebug_assumed" = "xyes" &&
-  test "x$want_curldebug" = "xyes" && test "x$USE_ARES" = "x1"; then
-  ac_configure_args="$ac_configure_args --enable-curldebug"
-fi
-
-AC_CONFIG_FILES([Makefile \
-           docs/Makefile \
-           docs/examples/Makefile \
-           docs/libcurl/Makefile \
-           include/Makefile \
-           include/curl/Makefile \
-           src/Makefile \
-           lib/Makefile \
-           curl-config \
-           libcurl.pc
-])
-AC_OUTPUT
-
-AC_MSG_NOTICE([Configured to build curl/libcurl:
-
-  curl version:    ${VERSION}
-  Host setup:      ${host}
-  Install prefix:  ${prefix}
-  Compiler:        ${CC}
-  SSL support:     ${curl_ssl_msg}
-  SSH support:     ${curl_ssh_msg}
-  zlib support:    ${curl_zlib_msg}
-  krb4 support:    ${curl_krb4_msg}
-  GSSAPI support:  ${curl_gss_msg}
-  SPNEGO support:  ${curl_spnego_msg}
-  c-ares support:  ${curl_ares_msg}
-  ipv6 support:    ${curl_ipv6_msg}
-  IDN support:     ${curl_idn_msg}
-  Build libcurl:   Shared=${enable_shared}, Static=${enable_static}
-  Built-in manual: ${curl_manual_msg}
-  Verbose errors:  ${curl_verbose_msg}
-  SSPI support:    ${curl_sspi_msg}
-  ca cert bundle:  ${ca}
-  ca cert path:    ${capath}
-  LDAP support:    ${curl_ldap_msg}
-  LDAPS support:   ${curl_ldaps_msg}
-  RTSP support:    ${curl_rtsp_msg}
-  Protocols:       ${SUPPORT_PROTOCOLS}
-])
-
-if test "x$soname_bump" = "xyes"; then
-
-cat <<EOM
-  SONAME bump:     yes - WARNING: this library will be built with the SONAME
-                   number bumped due to (a detected) ABI breakage.
-                   See lib/README.curl_off_t for details on this.
-EOM
-
-fi
-
diff --git a/src/other/curl/curl-config.in b/src/other/curl/curl-config.in
deleted file mode 100644
index ebda129..0000000
--- a/src/other/curl/curl-config.in
+++ /dev/null
@@ -1,161 +0,0 @@
-#! /bin/sh
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 2001 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-###########################################################################
-
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-includedir=@includedir@
-
-usage()
-{
-    cat <<EOF
-Usage: curl-config [OPTION]
-
-Available values for OPTION include:
-
-  --ca        ca bundle install path
-  --cc        compiler
-  --cflags    pre-processor and compiler flags
-  --checkfor [version] check for (lib)curl of the specified version
-  --configure the arguments given to configure when building curl
-  --features  newline separated list of enabled features
-  --help      display this help and exit
-  --libs      library linking information
-  --prefix    curl install prefix
-  --protocols newline separated list of enabled protocols
-  --static-libs static libcurl library linking information
-  --version   output version information
-  --vernum    output the version information as a number (hexadecimal)
-EOF
-
-    exit $1
-}
-
-if test $# -eq 0; then
-    usage 1
-fi
-
-while test $# -gt 0; do
-    case "$1" in
-    # this deals with options in the style
-    # --option=value and extracts the value part
-    # [not currently used]
-    -*=*) value=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
-    *) value= ;;
-    esac
-
-    case "$1" in
-    --ca)
-	echo "@CURL_CA_BUNDLE@"
-	;;
-
-    --cc)
-	echo "@CC@"
-	;;
-
-    --prefix)
-	echo "$prefix"
-	;;
-
-    --feature|--features)
-        for feature in @SUPPORT_FEATURES@ ""; do
-            test -n "$feature" && echo "$feature"
-        done
-	;;
-
-    --protocols)
-        for protocol in @SUPPORT_PROTOCOLS@; do
-            echo "$protocol"
-        done
-	;;
-    --version)
-	echo libcurl @VERSION@
-	exit 0
-	;;
-
-    --checkfor)
-        checkfor=$2
-        cmajor=`echo $checkfor | cut -d. -f1`
-        cminor=`echo $checkfor | cut -d. -f2`
-        # when extracting the patch part we strip off everything after a
-	# dash as that's used for things like version 1.2.3-CVS
-	cpatch=`echo $checkfor | cut -d. -f3 | cut -d- -f1`
-        checknum=`echo "$cmajor*256*256 + $cminor*256 + ${cpatch:-0}" | bc`
-        numuppercase=`echo @VERSIONNUM@ | tr 'a-f' 'A-F'`
-        nownum=`echo "obase=10; ibase=16; $numuppercase" | bc`
-
-	if test "$nownum" -ge "$checknum"; then
-	  # silent success
-	  exit 0
-	else
-	  echo "requested version $checkfor is newer than existing @VERSION@"
-	  exit 1
-	fi
-	;;
-
-    --vernum)
-	echo @VERSIONNUM@
-	exit 0
-	;;
-
-    --help)
-	usage 0
-	;;
-
-    --cflags)
-       	if test "X at includedir@" = "X/usr/include"; then
-          echo ""
-        else
-          echo "-I at includedir@"
-        fi
-       	;;
-
-    --libs)
-	if test "X at libdir@" != "X/usr/lib" -a "X at libdir@" != "X/usr/lib64"; then
-	   CURLLIBDIR="-L at libdir@ "
-	else
-	   CURLLIBDIR=""
-	fi
-	if test "X at REQUIRE_LIB_DEPS@" = "Xyes"; then
-	  echo ${CURLLIBDIR}-lcurl @LDFLAGS@ @LIBCURL_LIBS@ @LIBS@
-	else
-	  echo ${CURLLIBDIR}-lcurl @LDFLAGS@ @LIBS@
-	fi
-	;;
-
-    --static-libs)
-	echo @libdir@/libcurl. at libext@ @LDFLAGS@ @LIBCURL_LIBS@ @LIBS@
-	;;
-
-    --configure)
-      echo @CONFIGURE_OPTIONS@
-    ;;
-
-    *)
-        echo "unknown option: $1"
-	usage 1
-	;;
-    esac
-    shift
-done
-
-exit 0
diff --git a/src/other/curl/curl-style.el b/src/other/curl/curl-style.el
deleted file mode 100644
index 83cf8cc..0000000
--- a/src/other/curl/curl-style.el
+++ /dev/null
@@ -1,50 +0,0 @@
-;;;; Emacs Lisp help for writing curl code. ;;;;
-
-;;; The curl hacker's C conventions.
-;;; See the sample.emacs file on how this file can be made to take
-;;; effect automatically when editing curl source files.
-
-(defconst curl-c-style
-  '((c-basic-offset . 2)
-    (c-comment-only-line-offset . 0)
-    (c-hanging-braces-alist     . ((substatement-open before after)))
-    (c-offsets-alist . ((topmost-intro        . 0)
-			(topmost-intro-cont   . 0)
-			(substatement         . +)
-			(substatement-open    . 0)
-			(statement-case-intro . +)
-			(statement-case-open  . 0)
-			(case-label           . 0)
-			))
-    )
-  "Curl C Programming Style")
-
-(defun curl-code-cleanup ()
-  "no docs"
-  (interactive)
-  (untabify (point-min) (point-max))
-  (delete-trailing-whitespace)
-)
-
-;; Customizations for all of c-mode, c++-mode, and objc-mode
-(defun curl-c-mode-common-hook ()
-  "Curl C mode hook"
-  ;; add curl style and set it for the current buffer
-  (c-add-style "curl" curl-c-style t)
-  (setq tab-width 8
-	indent-tabs-mode nil		; Use spaces. Not tabs.
-	comment-column 40
-	c-font-lock-extra-types (append '("bool" "CURL" "CURLcode" "ssize_t" "size_t" "curl_socklen_t" "fd_set" "time_t" "curl_off_t" "curl_socket_t" "in_addr_t" "CURLSHcode" "CURLMcode" "Curl_addrinfo"))
-	)
-  ;; keybindings for C, C++, and Objective-C.  We can put these in
-  ;; c-mode-base-map because of inheritance ...
-  (define-key c-mode-base-map "\M-q" 'c-fill-paragraph)
-  (define-key c-mode-base-map "\M-m" 'curl-code-cleanup)
-  (setq c-recognize-knr-p nil)
-  ;;; (add-hook 'write-file-hooks 'delete-trailing-whitespace t)
-  (setq show-trailing-whitespace t)
-  )
-
-;; Set this is in your .emacs if you want to use the c-mode-hook as
-;; defined here right out of the box.
-; (add-hook 'c-mode-common-hook 'curl-c-mode-common-hook)
diff --git a/src/other/curl/depcomp b/src/other/curl/depcomp
deleted file mode 100755
index df8eea7..0000000
--- a/src/other/curl/depcomp
+++ /dev/null
@@ -1,630 +0,0 @@
-#! /bin/sh
-# depcomp - compile a program generating dependencies as side-effects
-
-scriptversion=2009-04-28.21; # UTC
-
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
-# Software Foundation, Inc.
-
-# This program 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, 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 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 <http://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Originally written by Alexandre Oliva <oliva at dcc.unicamp.br>.
-
-case $1 in
-  '')
-     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
-     exit 1;
-     ;;
-  -h | --h*)
-    cat <<\EOF
-Usage: depcomp [--help] [--version] PROGRAM [ARGS]
-
-Run PROGRAMS ARGS to compile a file, generating dependencies
-as side-effects.
-
-Environment variables:
-  depmode     Dependency tracking mode.
-  source      Source file read by `PROGRAMS ARGS'.
-  object      Object file output by `PROGRAMS ARGS'.
-  DEPDIR      directory where to store dependencies.
-  depfile     Dependency file to output.
-  tmpdepfile  Temporary file to use when outputing dependencies.
-  libtool     Whether libtool is used (yes/no).
-
-Report bugs to <bug-automake at gnu.org>.
-EOF
-    exit $?
-    ;;
-  -v | --v*)
-    echo "depcomp $scriptversion"
-    exit $?
-    ;;
-esac
-
-if test -z "$depmode" || test -z "$source" || test -z "$object"; then
-  echo "depcomp: Variables source, object and depmode must be set" 1>&2
-  exit 1
-fi
-
-# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
-depfile=${depfile-`echo "$object" |
-  sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
-tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
-
-rm -f "$tmpdepfile"
-
-# Some modes work just like other modes, but use different flags.  We
-# parameterize here, but still list the modes in the big case below,
-# to make depend.m4 easier to write.  Note that we *cannot* use a case
-# here, because this file can only contain one case statement.
-if test "$depmode" = hp; then
-  # HP compiler uses -M and no extra arg.
-  gccflag=-M
-  depmode=gcc
-fi
-
-if test "$depmode" = dashXmstdout; then
-   # This is just like dashmstdout with a different argument.
-   dashmflag=-xM
-   depmode=dashmstdout
-fi
-
-cygpath_u="cygpath -u -f -"
-if test "$depmode" = msvcmsys; then
-   # This is just like msvisualcpp but w/o cygpath translation.
-   # Just convert the backslash-escaped backslashes to single forward
-   # slashes to satisfy depend.m4
-   cygpath_u="sed s,\\\\\\\\,/,g"
-   depmode=msvisualcpp
-fi
-
-case "$depmode" in
-gcc3)
-## gcc 3 implements dependency tracking that does exactly what
-## we want.  Yay!  Note: for some reason libtool 1.4 doesn't like
-## it if -MD -MP comes after the -MF stuff.  Hmm.
-## Unfortunately, FreeBSD c89 acceptance of flags depends upon
-## the command line argument order; so add the flags where they
-## appear in depend2.am.  Note that the slowdown incurred here
-## affects only configure: in makefiles, %FASTDEP% shortcuts this.
-  for arg
-  do
-    case $arg in
-    -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
-    *)  set fnord "$@" "$arg" ;;
-    esac
-    shift # fnord
-    shift # $arg
-  done
-  "$@"
-  stat=$?
-  if test $stat -eq 0; then :
-  else
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  mv "$tmpdepfile" "$depfile"
-  ;;
-
-gcc)
-## There are various ways to get dependency output from gcc.  Here's
-## why we pick this rather obscure method:
-## - Don't want to use -MD because we'd like the dependencies to end
-##   up in a subdir.  Having to rename by hand is ugly.
-##   (We might end up doing this anyway to support other compilers.)
-## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
-##   -MM, not -M (despite what the docs say).
-## - Using -M directly means running the compiler twice (even worse
-##   than renaming).
-  if test -z "$gccflag"; then
-    gccflag=-MD,
-  fi
-  "$@" -Wp,"$gccflag$tmpdepfile"
-  stat=$?
-  if test $stat -eq 0; then :
-  else
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  rm -f "$depfile"
-  echo "$object : \\" > "$depfile"
-  alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
-## The second -e expression handles DOS-style file names with drive letters.
-  sed -e 's/^[^:]*: / /' \
-      -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
-## This next piece of magic avoids the `deleted header file' problem.
-## The problem is that when a header file which appears in a .P file
-## is deleted, the dependency causes make to die (because there is
-## typically no way to rebuild the header).  We avoid this by adding
-## dummy dependencies for each header file.  Too bad gcc doesn't do
-## this for us directly.
-  tr ' ' '
-' < "$tmpdepfile" |
-## Some versions of gcc put a space before the `:'.  On the theory
-## that the space means something, we add a space to the output as
-## well.
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-hp)
-  # This case exists only to let depend.m4 do its work.  It works by
-  # looking at the text of this script.  This case will never be run,
-  # since it is checked for above.
-  exit 1
-  ;;
-
-sgi)
-  if test "$libtool" = yes; then
-    "$@" "-Wp,-MDupdate,$tmpdepfile"
-  else
-    "$@" -MDupdate "$tmpdepfile"
-  fi
-  stat=$?
-  if test $stat -eq 0; then :
-  else
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  rm -f "$depfile"
-
-  if test -f "$tmpdepfile"; then  # yes, the sourcefile depend on other files
-    echo "$object : \\" > "$depfile"
-
-    # Clip off the initial element (the dependent).  Don't try to be
-    # clever and replace this with sed code, as IRIX sed won't handle
-    # lines with more than a fixed number of characters (4096 in
-    # IRIX 6.2 sed, 8192 in IRIX 6.5).  We also remove comment lines;
-    # the IRIX cc adds comments like `#:fec' to the end of the
-    # dependency line.
-    tr ' ' '
-' < "$tmpdepfile" \
-    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
-    tr '
-' ' ' >> "$depfile"
-    echo >> "$depfile"
-
-    # The second pass generates a dummy entry for each header file.
-    tr ' ' '
-' < "$tmpdepfile" \
-   | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
-   >> "$depfile"
-  else
-    # The sourcefile does not contain any dependencies, so just
-    # store a dummy comment line, to avoid errors with the Makefile
-    # "include basename.Plo" scheme.
-    echo "#dummy" > "$depfile"
-  fi
-  rm -f "$tmpdepfile"
-  ;;
-
-aix)
-  # The C for AIX Compiler uses -M and outputs the dependencies
-  # in a .u file.  In older versions, this file always lives in the
-  # current directory.  Also, the AIX compiler puts `$object:' at the
-  # start of each line; $object doesn't have directory information.
-  # Version 6 uses the directory in both cases.
-  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-  test "x$dir" = "x$object" && dir=
-  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-  if test "$libtool" = yes; then
-    tmpdepfile1=$dir$base.u
-    tmpdepfile2=$base.u
-    tmpdepfile3=$dir.libs/$base.u
-    "$@" -Wc,-M
-  else
-    tmpdepfile1=$dir$base.u
-    tmpdepfile2=$dir$base.u
-    tmpdepfile3=$dir$base.u
-    "$@" -M
-  fi
-  stat=$?
-
-  if test $stat -eq 0; then :
-  else
-    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
-    exit $stat
-  fi
-
-  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
-  do
-    test -f "$tmpdepfile" && break
-  done
-  if test -f "$tmpdepfile"; then
-    # Each line is of the form `foo.o: dependent.h'.
-    # Do two passes, one to just change these to
-    # `$object: dependent.h' and one to simply `dependent.h:'.
-    sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
-    # That's a tab and a space in the [].
-    sed -e 's,^.*\.[a-z]*:[	 ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
-  else
-    # The sourcefile does not contain any dependencies, so just
-    # store a dummy comment line, to avoid errors with the Makefile
-    # "include basename.Plo" scheme.
-    echo "#dummy" > "$depfile"
-  fi
-  rm -f "$tmpdepfile"
-  ;;
-
-icc)
-  # Intel's C compiler understands `-MD -MF file'.  However on
-  #    icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
-  # ICC 7.0 will fill foo.d with something like
-  #    foo.o: sub/foo.c
-  #    foo.o: sub/foo.h
-  # which is wrong.  We want:
-  #    sub/foo.o: sub/foo.c
-  #    sub/foo.o: sub/foo.h
-  #    sub/foo.c:
-  #    sub/foo.h:
-  # ICC 7.1 will output
-  #    foo.o: sub/foo.c sub/foo.h
-  # and will wrap long lines using \ :
-  #    foo.o: sub/foo.c ... \
-  #     sub/foo.h ... \
-  #     ...
-
-  "$@" -MD -MF "$tmpdepfile"
-  stat=$?
-  if test $stat -eq 0; then :
-  else
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  rm -f "$depfile"
-  # Each line is of the form `foo.o: dependent.h',
-  # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
-  # Do two passes, one to just change these to
-  # `$object: dependent.h' and one to simply `dependent.h:'.
-  sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
-  # Some versions of the HPUX 10.20 sed can't process this invocation
-  # correctly.  Breaking it into two sed invocations is a workaround.
-  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
-    sed -e 's/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-hp2)
-  # The "hp" stanza above does not work with aCC (C++) and HP's ia64
-  # compilers, which have integrated preprocessors.  The correct option
-  # to use with these is +Maked; it writes dependencies to a file named
-  # 'foo.d', which lands next to the object file, wherever that
-  # happens to be.
-  # Much of this is similar to the tru64 case; see comments there.
-  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-  test "x$dir" = "x$object" && dir=
-  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-  if test "$libtool" = yes; then
-    tmpdepfile1=$dir$base.d
-    tmpdepfile2=$dir.libs/$base.d
-    "$@" -Wc,+Maked
-  else
-    tmpdepfile1=$dir$base.d
-    tmpdepfile2=$dir$base.d
-    "$@" +Maked
-  fi
-  stat=$?
-  if test $stat -eq 0; then :
-  else
-     rm -f "$tmpdepfile1" "$tmpdepfile2"
-     exit $stat
-  fi
-
-  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
-  do
-    test -f "$tmpdepfile" && break
-  done
-  if test -f "$tmpdepfile"; then
-    sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
-    # Add `dependent.h:' lines.
-    sed -ne '2,${
-	       s/^ *//
-	       s/ \\*$//
-	       s/$/:/
-	       p
-	     }' "$tmpdepfile" >> "$depfile"
-  else
-    echo "#dummy" > "$depfile"
-  fi
-  rm -f "$tmpdepfile" "$tmpdepfile2"
-  ;;
-
-tru64)
-   # The Tru64 compiler uses -MD to generate dependencies as a side
-   # effect.  `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
-   # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
-   # dependencies in `foo.d' instead, so we check for that too.
-   # Subdirectories are respected.
-   dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-   test "x$dir" = "x$object" && dir=
-   base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-
-   if test "$libtool" = yes; then
-      # With Tru64 cc, shared objects can also be used to make a
-      # static library.  This mechanism is used in libtool 1.4 series to
-      # handle both shared and static libraries in a single compilation.
-      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
-      #
-      # With libtool 1.5 this exception was removed, and libtool now
-      # generates 2 separate objects for the 2 libraries.  These two
-      # compilations output dependencies in $dir.libs/$base.o.d and
-      # in $dir$base.o.d.  We have to check for both files, because
-      # one of the two compilations can be disabled.  We should prefer
-      # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
-      # automatically cleaned when .libs/ is deleted, while ignoring
-      # the former would cause a distcleancheck panic.
-      tmpdepfile1=$dir.libs/$base.lo.d   # libtool 1.4
-      tmpdepfile2=$dir$base.o.d          # libtool 1.5
-      tmpdepfile3=$dir.libs/$base.o.d    # libtool 1.5
-      tmpdepfile4=$dir.libs/$base.d      # Compaq CCC V6.2-504
-      "$@" -Wc,-MD
-   else
-      tmpdepfile1=$dir$base.o.d
-      tmpdepfile2=$dir$base.d
-      tmpdepfile3=$dir$base.d
-      tmpdepfile4=$dir$base.d
-      "$@" -MD
-   fi
-
-   stat=$?
-   if test $stat -eq 0; then :
-   else
-      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
-      exit $stat
-   fi
-
-   for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
-   do
-     test -f "$tmpdepfile" && break
-   done
-   if test -f "$tmpdepfile"; then
-      sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
-      # That's a tab and a space in the [].
-      sed -e 's,^.*\.[a-z]*:[	 ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
-   else
-      echo "#dummy" > "$depfile"
-   fi
-   rm -f "$tmpdepfile"
-   ;;
-
-#nosideeffect)
-  # This comment above is used by automake to tell side-effect
-  # dependency tracking mechanisms from slower ones.
-
-dashmstdout)
-  # Important note: in order to support this mode, a compiler *must*
-  # always write the preprocessed file to stdout, regardless of -o.
-  "$@" || exit $?
-
-  # Remove the call to Libtool.
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-
-  # Remove `-o $object'.
-  IFS=" "
-  for arg
-  do
-    case $arg in
-    -o)
-      shift
-      ;;
-    $object)
-      shift
-      ;;
-    *)
-      set fnord "$@" "$arg"
-      shift # fnord
-      shift # $arg
-      ;;
-    esac
-  done
-
-  test -z "$dashmflag" && dashmflag=-M
-  # Require at least two characters before searching for `:'
-  # in the target name.  This is to cope with DOS-style filenames:
-  # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
-  "$@" $dashmflag |
-    sed 's:^[  ]*[^: ][^:][^:]*\:[    ]*:'"$object"'\: :' > "$tmpdepfile"
-  rm -f "$depfile"
-  cat < "$tmpdepfile" > "$depfile"
-  tr ' ' '
-' < "$tmpdepfile" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-dashXmstdout)
-  # This case only exists to satisfy depend.m4.  It is never actually
-  # run, as this mode is specially recognized in the preamble.
-  exit 1
-  ;;
-
-makedepend)
-  "$@" || exit $?
-  # Remove any Libtool call
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-  # X makedepend
-  shift
-  cleared=no eat=no
-  for arg
-  do
-    case $cleared in
-    no)
-      set ""; shift
-      cleared=yes ;;
-    esac
-    if test $eat = yes; then
-      eat=no
-      continue
-    fi
-    case "$arg" in
-    -D*|-I*)
-      set fnord "$@" "$arg"; shift ;;
-    # Strip any option that makedepend may not understand.  Remove
-    # the object too, otherwise makedepend will parse it as a source file.
-    -arch)
-      eat=yes ;;
-    -*|$object)
-      ;;
-    *)
-      set fnord "$@" "$arg"; shift ;;
-    esac
-  done
-  obj_suffix=`echo "$object" | sed 's/^.*\././'`
-  touch "$tmpdepfile"
-  ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
-  rm -f "$depfile"
-  cat < "$tmpdepfile" > "$depfile"
-  sed '1,2d' "$tmpdepfile" | tr ' ' '
-' | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile" "$tmpdepfile".bak
-  ;;
-
-cpp)
-  # Important note: in order to support this mode, a compiler *must*
-  # always write the preprocessed file to stdout.
-  "$@" || exit $?
-
-  # Remove the call to Libtool.
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-
-  # Remove `-o $object'.
-  IFS=" "
-  for arg
-  do
-    case $arg in
-    -o)
-      shift
-      ;;
-    $object)
-      shift
-      ;;
-    *)
-      set fnord "$@" "$arg"
-      shift # fnord
-      shift # $arg
-      ;;
-    esac
-  done
-
-  "$@" -E |
-    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-       -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
-    sed '$ s: \\$::' > "$tmpdepfile"
-  rm -f "$depfile"
-  echo "$object : \\" > "$depfile"
-  cat < "$tmpdepfile" >> "$depfile"
-  sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-msvisualcpp)
-  # Important note: in order to support this mode, a compiler *must*
-  # always write the preprocessed file to stdout.
-  "$@" || exit $?
-
-  # Remove the call to Libtool.
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-
-  IFS=" "
-  for arg
-  do
-    case "$arg" in
-    -o)
-      shift
-      ;;
-    $object)
-      shift
-      ;;
-    "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
-	set fnord "$@"
-	shift
-	shift
-	;;
-    *)
-	set fnord "$@" "$arg"
-	shift
-	shift
-	;;
-    esac
-  done
-  "$@" -E 2>/dev/null |
-  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
-  rm -f "$depfile"
-  echo "$object : \\" > "$depfile"
-  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::	\1 \\:p' >> "$depfile"
-  echo "	" >> "$depfile"
-  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-msvcmsys)
-  # This case exists only to let depend.m4 do its work.  It works by
-  # looking at the text of this script.  This case will never be run,
-  # since it is checked for above.
-  exit 1
-  ;;
-
-none)
-  exec "$@"
-  ;;
-
-*)
-  echo "Unknown depmode $depmode" 1>&2
-  exit 1
-  ;;
-esac
-
-exit 0
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/src/other/curl/docs/BINDINGS b/src/other/curl/docs/BINDINGS
deleted file mode 100644
index 5cf07fe..0000000
--- a/src/other/curl/docs/BINDINGS
+++ /dev/null
@@ -1,228 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-                               libcurl bindings
-
-Creative people have written bindings or interfaces for various environments
-and programming languages. Using one of these allows you to take advantage of
-curl powers from within your favourite language or system.
-
-This is a list of all known interfaces as of this writing.
-
-The bindings listed below are not part of the curl/libcurl distribution
-archives, but must be downloaded and installed separately.
-
-Ada95
-
-  Writtten by Andreas Almroth
-  http://www.almroth.com/adacurl/index.html
-
-Basic
-
-  ScriptBasic bindings to libcurl. Writtten by Peter Verhas
-  http://scriptbasic.com/
-
-C
-  libcurl is a C library in itself!
-  http://curl.haxx.se/libcurl/
-
-C++
-
-  Written by Jean-Philippe Barrette-LaPierre
-  http://curlpp.org/
-
-Ch
-
-  Written by Stephen Nestinger and Jonathan Rogado
-  http://chcurl.sourceforge.net/
-
-Cocoa
-
-  Written by Dan Wood
-  http://curlhandle.sourceforge.net/
-
-D
-
-  Written by Kenneth Bogert
-  http://curl.haxx.se/libcurl/d/
-
-Dylan
-
-  Written by Chris Double
-  http://dylanlibs.sourceforge.net/
-
-Eiffel
-  Written by Eiffel Software
-  http://curl.haxx.se/libcurl/eiffel/
-
-Euphoria
-
-  Written by Ray Smith
-  http://rays-web.com/eulibcurl.htm
-
-Falcon
-
-  http://www.falconpl.org/index.ftd?page_id=prjs&prj_id=curl
-
-Ferite
-
-  Written by Paul Querna
-  http://www.ferite.org/
-
-Gambas
-
-  http://gambas.sourceforge.net
-
-glib/GTK+
-
-  Written by Richard Atterer
-  http://atterer.net/glibcurl/
-
-Haskell
-
-  Written by Galois, Inc
-  http://hackage.haskell.org/cgi-bin/hackage-scripts/package/curl
-
-Java
-
-  Maintained by [blank]
-  http://curl.haxx.se/libcurl/java/
-
-Lisp
-
-  Written by Liam Healy
-  http://common-lisp.net/project/cl-curl/
-
-Lua
-
-  luacurl by Alexander Marinov
-  http://luacurl.luaforge.net/
-
-  Lua-cURL by Jürgen Hötzel
-  http://luaforge.net/projects/lua-curl/
-
-Mono
-
-  Written by Jeffrey Phillips
-  http://forge.novell.com/modules/xfmod/project/?libcurl-mono
-
-.NET
-
-  libcurl-net by Jeffrey Phillips
-  http://sourceforge.net/projects/libcurl-net/
-
-Object-Pascal
-
-  Free Pascal, Delphi and Kylix binding written by Christophe Espern.
-  http://www.tekool.com/opcurl
-
-O'Caml
-
-  Written by Lars Nilsson
-  http://sourceforge.net/projects/ocurl/
-
-Pascal
-
-  Free Pascal, Delphi and Kylix binding written by Jeffrey Pohlmeyer.
-  http://houston.quik.com/jkp/curlpas/
-
-Perl
-
-  Maintained by Cris Bailiff
-  http://curl.haxx.se/libcurl/perl/
-
-PHP
-
-  Written by Sterling Hughes
-  http://curl.haxx.se/libcurl/php/
-
-PostgreSQL
-
-  Written by Gian Paolo Ciceri
-  http://gborg.postgresql.org/project/pgcurl/projdisplay.php
-
-Python
-
-  PycURL by Kjetil Jacobsen
-  http://pycurl.sourceforge.net/
-
-R
-
-  RCurl by Duncan Temple Lang
-  http://www.omegahat.org/RCurl/
-
-Rexx
-
-  Written Mark Hessling
-  http://rexxcurl.sourceforge.net/
-
-RPG
-
-  Support for ILE/RPG on OS/400 is included in source distribution
-  http://curl.haxx.se/libcurl/
-  See packages/OS400/README.OS400 and packages/OS400/curl.inc.in
-
-Ruby
-
-  curb - written by Ross Bamford
-  http://curb.rubyforge.org/
-
-  ruby-curl-multi - written by Kristjan Petursson and Keith Rarick
-  http://curl-multi.rubyforge.org/
-
-Scheme
-
-  Bigloo binding by Kirill Lisovsky
-  http://curl.haxx.se/libcurl/scheme/
-
-S-Lang
-
-  S-Lang binding by John E Davis
-  http://www.jedsoft.org/slang/modules/curl.html
-
-Smalltalk
-
-  Smalltalk binding by Danil Osipchuk
-  http://www.squeaksource.com/CurlPlugin/
-
-SP-Forth
-
-  SP-Forth binding by ygrek
-  http://www.forth.org.ru/~ac/lib/lin/curl/
-
-SPL
-
-  SPL binding by Clifford Wolf
-  http://www.clifford.at/spl/
-
-Tcl
-
-  Tclcurl by Andrés García
-  http://personal1.iddeo.es/andresgarci/tclcurl/english/docs.html
-
-Visual Basic
-
-  libcurl-vb by Jeffrey Phillips
-  http://sourceforge.net/projects/libcurl-vb/
-
-Visual Foxpro
-
-  by Carlos Alloatti
-  http://www.ctl32.com.ar/libcurl.asp
-
-Q
-  The libcurl module is part of the default install
-  http://q-lang.sourceforge.net/
-
-wxWidgets
-
-  Written by Casey O'Donnell
-  http://wxcode.sourceforge.net/components/wxcurl/
-
-XBLite
-
-  Written by David Szafranski
-  http://perso.wanadoo.fr/xblite/libraries.html
diff --git a/src/other/curl/docs/BUGS b/src/other/curl/docs/BUGS
deleted file mode 100644
index 8cbad04..0000000
--- a/src/other/curl/docs/BUGS
+++ /dev/null
@@ -1,81 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-BUGS
-
-  Curl and libcurl have grown substantially since the beginning. At the time
-  of writing (July 2007), there are about 47000 lines of source code, and by
-  the time you read this it has probably grown even more.
-
-  Of course there are lots of bugs left. And lots of misfeatures.
-
-  To help us make curl the stable and solid product we want it to be, we need
-  bug reports and bug fixes.
-
-WHERE TO REPORT
-
-  If you can't fix a bug yourself and submit a fix for it, try to report an as
-  detailed report as possible to a curl mailing list to allow one of us to
-  have a go at a solution. You should also post your bug/problem at curl's bug
-  tracking system over at
-
-        http://sourceforge.net/bugs/?group_id=976
-
-  (but please read the sections below first before doing that)
-
-  If you feel you need to ask around first, find a suitable mailing list and
-  post there. The lists are available on http://curl.haxx.se/mail/
-
-WHAT TO REPORT
-
-  When reporting a bug, you should include all information that will help us
-  understand what's wrong, what you expected to happen and how to repeat the
-  bad behavior. You therefore need to tell us:
-
-   - your operating system's name and version number (uname -a under a unix
-     is fine)
-   - what version of curl you're using (curl -V is fine)
-   - versions of the used libraries that libcurl is built to use
-   - what URL you were working with (if possible), at least which protocol
-
-  and anything and everything else you think matters. Tell us what you
-  expected to happen, tell use what did happen, tell us how you could make it
-  work another way. Dig around, try out, test. Then include all the tiny bits
-  and pieces in your report. You will benefit from this yourself, as it will
-  enable us to help you quicker and more accurately.
-
-  Since curl deals with networks, it often helps us if you include a protocol
-  debug dump with your bug report. The output you get by using the -v or
-  --trace options.
-
-  If curl crashed, causing a core dump (in unix), there is hardly any use to
-  send that huge file to anyone of us. Unless we have an exact same system
-  setup as you, we can't do much with it. Instead we ask you to get a stack
-  trace and send that (much smaller) output to us instead!
-
-  The address and how to subscribe to the mailing lists are detailed in the
-  MANUAL file.
-
-HOW TO GET A STACK TRACE
-
-  First, you must make sure that you compile all sources with -g and that you
-  don't 'strip' the final executable. Try to avoid optimizing the code as
-  well, remove -O, -O2 etc from the compiler options.
-
-  Run the program until it cores.
-
-  Run your debugger on the core file, like '<debugger> curl core'. <debugger>
-  should be replaced with the name of your debugger, in most cases that will
-  be 'gdb', but 'dbx' and others also occur.
-
-  When the debugger has finished loading the core file and presents you a
-  prompt, enter 'where' (without the quotes) and press return.
-
-  The list that is presented is the stack trace. If everything worked, it is
-  supposed to contain the chain of functions that were called when curl
-  crashed. Include the stack trace with your detailed bug report. It'll help a
-  lot.
-
diff --git a/src/other/curl/docs/CONTRIBUTE b/src/other/curl/docs/CONTRIBUTE
deleted file mode 100644
index c6ecee7..0000000
--- a/src/other/curl/docs/CONTRIBUTE
+++ /dev/null
@@ -1,257 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-                        When Contributing Source Code
-
- This document is intended to offer guidelines that can be useful to keep in
- mind when you decide to contribute to the project. This concerns new features
- as well as corrections to existing flaws or bugs.
-
- 1. Learning cURL
- 1.1 Join the Community
- 1.2 License
- 1.3 What To Read
-
- 2. cURL Coding Standards
- 2.1 Naming
- 2.2 Indenting
- 2.3 Commenting
- 2.4 Line Lengths
- 2.5 General Style
- 2.6 Non-clobbering All Over
- 2.7 Platform Dependent Code
- 2.8 Write Separate Patches
- 2.9 Patch Against Recent Sources
- 2.10 Document
- 2.11 Test Cases
-
- 3. Pushing Out Your Changes
- 3.2 How To Make a Patch with git
- 3.3 How To Make a Patch without git
- 3.4 How to get your changes into the main sources
-
-==============================================================================
-
-1. Learning cURL
-
-1.1 Join the Community
-
- Skip over to http://curl.haxx.se/mail/ and join the appropriate mailing
- list(s).  Read up on details before you post questions. Read this file before
- you start sending patches! We prefer patches and discussions being held on
- the mailing list(s), not sent to individuals.
-
- Before posting to one of the curl mailing lists, please read up on the mailing
- list etiquette: http://curl.haxx.se/mail/etiquette.html
-
- We also hang out on IRC in #curl on irc.freenode.net
-
-1.2. License
-
- When contributing with code, you agree to put your changes and new code under
- the same license curl and libcurl is already using unless stated and agreed
- otherwise.
-
- If you add a larger piece of code, you can opt to make that file or set of
- files to use a different license as long as they don't enforce any changes to
- the rest of the package and they make sense. Such "separate parts" can not be
- GPL licensed (as we don't want copyleft to affect users of libcurl) but they
- must use "GPL compatible" licenses (as we want to allow users to use libcurl
- properly in GPL licensed environments).
-
- When changing existing source code, you do not alter the copyright of the
- original file(s). The copyright will still be owned by the original
- creator(s) or those who have been assigned copyright by the original
- author(s).
-
- By submitting a patch to the curl project, you are assumed to have the right
- to the code and to be allowed by your employer or whatever to hand over that
- patch/code to us. We will credit you for your changes as far as possible, to
- give credit but also to keep a trace back to who made what changes. Please
- always provide us with your full real name when contributing!
-
-1.3 What To Read
-
- Source code, the man pages, the INTERNALS document, TODO, KNOWN_BUGS, the
- most recent CHANGES. Just lurking on the libcurl mailing list is gonna give
- you a lot of insights on what's going on right now. Asking there is a good
- idea too.
-
-2. cURL Coding Standards
-
-2.1 Naming
-
- Try using a non-confusing naming scheme for your new functions and variable
- names. It doesn't necessarily have to mean that you should use the same as in
- other places of the code, just that the names should be logical,
- understandable and be named according to what they're used for. File-local
- functions should be made static. We like lower case names.
-
- See the INTERNALS document on how we name non-exported library-global
- symbols.
-
-2.2 Indenting
-
- Please try using the same indenting levels and bracing method as all the
- other code already does. It makes the source code a lot easier to follow if
- all of it is written using the same style. We don't ask you to like it, we
- just ask you to follow the tradition! ;-) This mainly means: 2-level indents,
- using spaces only (no tabs) and having the opening brace ({) on the same line
- as the if() or while().
-
- Also note that we use if() and while() with no space before the parenthesis.
-
-2.3 Commenting
-
- Comment your source code extensively using C comments (/* comment */), DO NOT
- use C++ comments (// this style). Commented code is quality code and enables
- future modifications much more. Uncommented code risk having to be completely
- replaced when someone wants to extend things, since other persons' source
- code can get quite hard to read.
-
-2.4 Line Lengths
-
- We try to keep source lines shorter than 80 columns.
-
-2.5 General Style
-
- Keep your functions small. If they're small you avoid a lot of mistakes and
- you don't accidentally mix up variables etc.
-
-2.6 Non-clobbering All Over
-
- When you write new functionality or fix bugs, it is important that you don't
- fiddle all over the source files and functions. Remember that it is likely
- that other people have done changes in the same source files as you have and
- possibly even in the same functions. If you bring completely new
- functionality, try writing it in a new source file. If you fix bugs, try to
- fix one bug at a time and send them as separate patches.
-
-2.7 Platform Dependent Code
-
- Use #ifdef HAVE_FEATURE to do conditional code. We avoid checking for
- particular operating systems or hardware in the #ifdef lines. The
- HAVE_FEATURE shall be generated by the configure script for unix-like systems
- and they are hard-coded in the config-[system].h files for the others.
-
-2.8 Write Separate Patches
-
- It is annoying when you get a huge patch from someone that is said to fix 511
- odd problems, but discussions and opinions don't agree with 510 of them - or
- 509 of them were already fixed in a different way. Then the patcher needs to
- extract the single interesting patch from somewhere within the huge pile of
- source, and that gives a lot of extra work. Preferably, all fixes that
- correct different problems should be in their own patch with an attached
- description exactly what they correct so that all patches can be selectively
- applied by the maintainer or other interested parties.
-
-2.9 Patch Against Recent Sources
-
- Please try to get the latest available sources to make your patches
- against. It makes the life of the developers so much easier. The very best is
- if you get the most up-to-date sources from the git repository, but the
- latest release archive is quite OK as well!
-
-2.10 Document
-
- Writing docs is dead boring and one of the big problems with many open source
- projects. Someone's gotta do it. It makes it a lot easier if you submit a
- small description of your fix or your new features with every contribution so
- that it can be swiftly added to the package documentation.
-
- The documentation is always made in man pages (nroff formatted) or plain
- ASCII files. All HTML files on the web site and in the release archives are
- generated from the nroff/ASCII versions.
-
-2.11 Test Cases
-
- Since the introduction of the test suite, we can quickly verify that the main
- features are working as they're supposed to. To maintain this situation and
- improve it, all new features and functions that are added need to be tested
- in the test suite. Every feature that is added should get at least one valid
- test case that verifies that it works as documented. If every submitter also
- posts a few test cases, it won't end up as a heavy burden on a single person!
-
-3. Pushing Out Your Changes
-
-3.1 Write Access to git Repository
-
- If you are a frequent contributor, or have another good reason, you can of
- course get write access to the git repository and then you'll be able to push
- your changes straight into the git repo instead of sending changes by mail as
- patches. Just ask if this is what you'd want. You will be required to have
- posted a few quality patches first, before you can be granted push access.
-
-3.2 How To Make a Patch with git
-
- You need to first checkout the respository:
-
-     git clone git://github.com/bagder/curl.git
-
- You then proceed and edit all the files you like and you commit them to your
- local repository:
-
-     git commit [file]
-
- As usual, group your commits so that you commit all changes that at once that
- constitutes a logical change.
-
- Once you have done all your commits and you're happy with what you see, you
- can make patches out of your changes that are suitable for mailing:
-
-     git format-patch remotes/origin/master
-
- This creates files in your local directory named NNNN-[name].patch for each
- commit.
-
- Now send those patches off to the curl-library list. You can of course opt to
- do that with the 'get send-email' command.
-
-3.3 How To Make a Patch without git
-
- Keep a copy of the unmodified curl sources. Make your changes in a separate
- source tree. When you think you have something that you want to offer the
- curl community, use GNU diff to generate patches.
-
- If you have modified a single file, try something like:
-
-     diff -u unmodified-file.c my-changed-one.c > my-fixes.diff
-
- If you have modified several files, possibly in different directories, you
- can use diff recursively:
-
-     diff -ur curl-original-dir curl-modified-sources-dir > my-fixes.diff
-
- The GNU diff and GNU patch tools exist for virtually all platforms, including
- all kinds of Unixes and Windows:
-
- For unix-like operating systems:
-
-   http://www.gnu.org/software/patch/patch.html
-   http://www.gnu.org/directory/diffutils.html
-
- For Windows:
-
-   http://gnuwin32.sourceforge.net/packages/patch.htm
-   http://gnuwin32.sourceforge.net/packages/diffutils.htm
-
-3.4 How to get your changes into the main sources
-
- 1. Submit your patch to the curl-library mailing list
-
- 2. Make the patch against as recent sources as possible.
-
- 3. Make sure your patch adheres to the source indent and coding style of
-    already existing source code. Failing to do so just adds more work for me.
-
- 4. Respond to replies on the list about the patch and answer questions and/or
-    fix nits/flaws. This is very important. I will take lack of replies as a
-    sign that you're not very anxious to get your patch accepted and I tend to
-    simply drop such patches from my TODO list.
-
- 5. If you've followed the above mentioned paragraphs and your patch still
-    hasn't been incorporated after some weeks, consider resubmitting it to the
-    list.
diff --git a/src/other/curl/docs/DISTRO-DILEMMA b/src/other/curl/docs/DISTRO-DILEMMA
deleted file mode 100644
index 108e6ba..0000000
--- a/src/other/curl/docs/DISTRO-DILEMMA
+++ /dev/null
@@ -1,176 +0,0 @@
-  Date: February 11, 2007
-  Author: Daniel Stenberg <daniel at haxx.se>
-  URL: http://curl.haxx.se/legal/distro-dilemma.html
-
-Condition
-
- This document is written to describe the situation as it is right now.
- libcurl 7.16.1 is currently the latest version available. Things may of
- course change in the future.
-
- This document reflects my view and understanding of these things. Please tell
- me where and how you think I'm wrong, and I'll try to correct my mistakes.
-
-Background
-
- The Free Software Foundation has deemed the Original BSD license[1] to be
- "incompatible"[2] with GPL[3]. I'd rather say it is the other way around, but
- the point is the same: if you distribute a binary version of a GPL program,
- it MUST NOT be linked with any Original BSD-licensed parts or libraries.
- Doing so will violate the GPL license. For a long time, very many GPL
- licensed programs have avoided this license mess by adding an exception[8] to
- their license. And many others have just closed their eyes for this problem.
-
- libcurl is MIT-style[4] licensed - how on earth did this dilemma fall onto
- our plates?
-
- libcurl is only a little library. libcurl can be built to use OpenSSL for its
- SSL/TLS capabilities. OpenSSL is basically Original BSD licensed[5].
-
- If libcurl built to use OpenSSL is used by a GPL-licensed application and you
- decide to distribute a binary version of it (Linux distros - for example -
- tend to), you have a clash. GPL vs Original BSD.
-
- This dilemma is not libcurl-specific nor is it specific to any particular
- Linux distro. (This article mentions and refers to Debian several times, but
- only because Debian seems to be the only Linux distro to have faced this
- issue yet since no other distro is shipping libcurl built with two SSL
- libraries.)
-
-Part of the Operating System
-
- This would not be a problem if the used lib would be considered part of the
- underlying operating system, as then the GPL license has an exception
- clause[6] that allows applications to use such libs without having to be
- allowed to distribute it or its sources. Possibly some distros will claim
- that OpenSSL is part of their operating system.
-
- Debian does however not take this stance and has officially(?) claimed that
- OpenSSL is not a required part of the Debian operating system
-
- Some people claim that this paragraph cannot be exploited this way by a Linux
- distro, but I am not a lawyer and that is a discussion left outside of this
- document.
-
-GnuTLS
-
- Since May 2005 libcurl can get built to use GnuTLS instead of OpenSSL. GnuTLS
- is an LGPL[7] licensed library that offers a matching set of features as
- OpenSSL does. Now, you can build and distribute an TLS/SSL capable libcurl
- without including any Original BSD licensed code.
-
- I believe Debian is the first (only?) distro that provides libcurl/GnutTLS
- packages.
-
-yassl
-
- libcurl can get also get built to use yassl for the TLS/SSL layer. yassl is a
- GPL[3] licensed library.
-
-
-GnuTLS vs OpenSSL vs yassl
-
- While these three libraries offer similar features, they are not equal.
- libcurl does not (yet) offer a standardized stable ABI if you decide to
- switch from using libcurl-openssl to libcurl-gnutls or vice versa. The GnuTLS
- and yassl support is very recent in libcurl and it has not been tested nor
- used very extensively, while the OpenSSL equivalent code has been used and
- thus matured since 1999.
-
- GnuTLS
-   - LGPL licensened
-   - supports SRP
-   - lacks SSLv2 support
-   - lacks MD2 support (used by at least some CA certs)
-   - lacks the crypto functions libcurl uses for NTLM
-
- OpenSSL
-   - Original BSD licensened
-   - lacks SRP
-   - supports SSLv2
-   - older and more widely used
-   - provides crypto functions libcurl uses for NTLM
-   - libcurl can do non-blocking connects with it in 7.15.4 and later
-
- yassl
-   - GPL licensed
-   - much untested and unproven in the real work by (lib)curl users so we don't
-     know a lot about restrictions or benefits from using this
-
-The Better License, Original BSD, GPL or LGPL?
-
- It isn't obvious or without debate to any objective interested party that
- either of these licenses are the "better" or even the "preferred" one in a
- generic situation.
-
- Instead, I think we should accept the fact that the SSL/TLS libraries and
- their different licenses will fit different applications and their authors
- differently depending on the applications' licenses and their general usage
- pattern (considering how GPL and LGPL libraries for example can be burdensome
- for embedded systems usage).
-
- In Debian land, there seems to be a common opinion that LGPL is "maximally
- compatible" with apps while Original BSD is not. Like this:
-
-        http://lists.debian.org/debian-devel/2005/09/msg01417.html
-
-More SSL Libraries
-
- In libcurl, there's no stopping us here. There are more Open Source/Free
- SSL/TLS libraries out there and we would very much like to support them as
- well, to offer application authors an even wider scope of choice.
-
-Application Angle of this Problem
-
- libcurl is built to use one SSL/TLS library. It uses a single fixed name (by
- default) on the built/created lib file, and applications are built/linked to
- use that single lib. Replacing one libcurl instance with another one that
- uses the other SSL/TLS library might break one or more applications (due to
- ABI differences and/or different feature set). You want your application to
- use the libcurl it was built for.
-
-Project cURL Angle of this Problem
-
- We distribute libcurl and everyone may build libcurl with either library at
- their choice. This problem is not directly a problem of ours. It merely
- affects users - GPL application authors only - of our lib as it comes
- included and delivered on some distros.
-
- libcurl has different ABI when built with different SSL/TLS libraries due to
- these reasons:
-
- 1. No one has worked on fixing this. The mutex/lock callbacks should be set
-    with a generic libcurl function that should use the proper underlying
-    functions.
-
- 2. The CURLOPT_SSL_CTX_FUNCTION option is not possible to "emulate" on GnuTLS
-    but simply requires OpenSSL.
-
- 3. There might be some other subtle differences just because nobody has yet
-    tried to make a fixed ABI like this.
-
-Distro Angle of this Problem
-
- To my knowledge there is only one distro that ships libcurl built with either
- OpenSSL or GnuTLS.
-
- Debian Linux is now (since mid September 2005) providing two different
- libcurl packages, one for libcurl built with OpenSSL and one built with
- GnuTLS. They use different .so names and can this both be installed in a
- single system simultaneously. This has been said to be a transitional system
- not desired to keep in the long run.
-
-Footnotes
-
- [1] = http://www.xfree86.org/3.3.6/COPYRIGHT2.html#6
- [2] = http://www.fsf.org/licensing/essays/bsd.html
- [3] = http://www.fsf.org/licensing/licenses/gpl.html
- [4] = http://curl.haxx.se/docs/copyright.html
- [5] = http://www.openssl.org/source/license.html
- [6] = http://www.fsf.org/licensing/licenses/gpl.html end of section 3
- [7] = http://www.fsf.org/licensing/licenses/lgpl.html
- [8] = http://en.wikipedia.org/wiki/OpenSSL_exception
-
-Feedback/Updates provided by
-
- Eric Cooper
diff --git a/src/other/curl/docs/FAQ b/src/other/curl/docs/FAQ
deleted file mode 100644
index dfde766..0000000
--- a/src/other/curl/docs/FAQ
+++ /dev/null
@@ -1,1288 +0,0 @@
-Updated: Nov 7, 2009 (http://curl.haxx.se/docs/faq.html)
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-FAQ
-
- 1. Philosophy
-  1.1 What is cURL?
-  1.2 What is libcurl?
-  1.3 What is curl not?
-  1.4 When will you make curl do XXXX ?
-  1.5 Who makes curl?
-  1.6 What do you get for making curl?
-  1.7 What about CURL from curl.com?
-  1.8 I have a problem who do I mail?
-  1.9 Where do I buy commercial support for curl?
-  1.10 How many are using curl?
-  1.11 Why don't you update ca-bundle.crt
-  1.12 I have a problem who can I chat with?
-
- 2. Install Related Problems
-  2.1 configure doesn't find OpenSSL even when it is installed
-   2.1.1 native linker doesn't find OpenSSL
-   2.1.2 only the libssl lib is missing
-  2.2 Does curl work/build with other SSL libraries?
-  2.3 Where can I find a copy of LIBEAY32.DLL?
-  2.4 Does curl support SOCKS (RFC 1928) ?
-
- 3. Usage Problems
-  3.1 curl: (1) SSL is disabled, https: not supported
-  3.2 How do I tell curl to resume a transfer?
-  3.3 Why doesn't my posting using -F work?
-  3.4 How do I tell curl to run custom FTP commands?
-  3.5 How can I disable the Pragma: nocache header?
-  3.6 Does curl support ASP, XML, XHTML or HTML version Y?
-  3.7 Can I use curl to delete/rename a file through FTP?
-  3.8 How do I tell curl to follow HTTP redirects?
-  3.9 How do I use curl in my favorite programming language?
-  3.10 What about SOAP, WebDAV, XML-RPC or similar protocols over HTTP?
-  3.11 How do I POST with a different Content-Type?
-  3.12 Why do FTP specific features over HTTP proxy fail?
-  3.13 Why does my single/double quotes fail?
-  3.14 Does curl support Javascript or PAC (automated proxy config)?
-  3.15 Can I do recursive fetches with curl?
-  3.16 What certificates do I need when I use SSL?
-  3.17 How do I list the root dir of an FTP server?
-  3.18 Can I use curl to send a POST/PUT and not wait for a response?
-
- 4. Running Problems
-  4.1 Problems connecting to SSL servers.
-  4.2 Why do I get problems when I use & or % in the URL?
-  4.3 How can I use {, }, [ or ] to specify multiple URLs?
-  4.4 Why do I get downloaded data even though the web page doesn't exist?
-  4.5 Why do I get return code XXX from a HTTP server?
-   4.5.1 "400 Bad Request"
-   4.5.2 "401 Unauthorized"
-   4.5.3 "403 Forbidden"
-   4.5.4 "404 Not Found"
-   4.5.5 "405 Method Not Allowed"
-   4.5.6 "301 Moved Permanently"
-  4.6 Can you tell me what error code 142 means?
-  4.7 How do I keep user names and passwords secret in Curl command lines?
-  4.8 I found a bug!
-  4.9 Curl can't authenticate to the server that requires NTLM?
-  4.10 My HTTP request using HEAD, PUT or DELETE doesn't work!
-  4.11 Why does my HTTP range requests return the full document?
-  4.12 Why do I get "certificate verify failed" ?
-  4.13 Why is curl -R on Windows one hour off?
-  4.14 Redirects work in browser but not with curl!
-  4.15 FTPS doesn't work
-  4.16 My HTTP POST or PUT requests are slow!
-  4.17 Non-functional connect timeouts on Windows
-  4.18 file:// URLs containing drive letters (Windows, NetWare)
-
- 5. libcurl Issues
-  5.1 Is libcurl thread-safe?
-  5.2 How can I receive all data into a large memory chunk?
-  5.3 How do I fetch multiple files with libcurl?
-  5.4 Does libcurl do Winsock initing on win32 systems?
-  5.5 Does CURLOPT_WRITEDATA and CURLOPT_READDATA work on win32 ?
-  5.6 What about Keep-Alive or persistent connections?
-  5.7 Link errors when building libcurl on Windows!
-  5.8 libcurl.so.3: open failed: No such file or directory
-  5.9 How does libcurl resolve host names?
-  5.10 How do I prevent libcurl from writing the response to stdout?
-  5.11 How do I make libcurl not receive the whole HTTP response?
-  5.12 Can I make libcurl fake or hide my real IP address?
-  5.13 How do I stop an ongoing transfer?
-  5.14 Using C++ non-static functions for callbacks?
-  5.15 How do I get an FTP directory listing?
-
- 6. License Issues
-  6.1 I have a GPL program, can I use the libcurl library?
-  6.2 I have a closed-source program, can I use the libcurl library?
-  6.3 I have a BSD licensed program, can I use the libcurl library?
-  6.4 I have a program that uses LGPL libraries, can I use libcurl?
-  6.5 Can I modify curl/libcurl for my program and keep the changes secret?
-  6.6 Can you please change the curl/libcurl license to XXXX?
-  6.7 What are my obligations when using libcurl in my commercial apps?
-
- 7. PHP/CURL Issues
-  7.1 What is PHP/CURL?
-  7.2 Who write PHP/CURL?
-  7.3 Can I perform multiple requests using the same handle?
-
-==============================================================================
-
-1. Philosophy
-
-  1.1 What is cURL?
-
-  cURL is the name of the project. The name is a play on 'Client for URLs',
-  originally with URL spelled in uppercase to make it obvious it deals with
-  URLs. The fact it can also be pronounced 'see URL' also helped, it works as
-  an abbreviation for "Client URL Request Library" or why not the recursive
-  version: "Curl URL Request Library".
-
-  The cURL project produces two products:
-
-  libcurl
-
-    A free and easy-to-use client-side URL transfer library, supporting FTP,
-    FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, FILE, LDAP and LDAPS.
-    libcurl supports HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading,
-    kerberos, HTTP form based upload, proxies, cookies, user+password
-    authentication, file transfer resume, http proxy tunneling and more!
-
-    libcurl is highly portable, it builds and works identically on numerous
-    platforms, including Solaris, NetBSD, FreeBSD, OpenBSD, Darwin, HPUX,
-    IRIX, AIX, Tru64, Linux, UnixWare, HURD, Windows, Amiga, OS/2, BeOs, Mac
-    OS X, Ultrix, QNX, OpenVMS, RISC OS, Novell NetWare, DOS, Symbian, OSF,
-    Android, Minix, IBM TPF and more...
-
-    libcurl is free, thread-safe, IPv6 compatible, feature rich, well
-    supported and fast.
-
-  curl
-
-    A command line tool for getting or sending files using URL syntax.
-
-    Since curl uses libcurl, it supports a range of common Internet protocols,
-    currently including HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, LDAP, LDAPS,
-    DICT, TELNET and FILE.
-
-  We pronounce curl and cURL with an initial k sound: [kurl].
-
-  There are numerous sub-projects and related projects that also use the word
-  curl in the project names in various combinations, but you should take
-  notice that this FAQ is directed at the command-line tool named curl (and
-  libcurl the library), and may therefore not be valid for other curl-related
-  projects. (There is however a small section for the PHP/CURL in this FAQ.)
-
-  1.2 What is libcurl?
-
-  libcurl is a reliable and portable library which provides you with an easy
-  interface to a range of common Internet protocols.
-
-  You can use libcurl for free in your application, be it open source,
-  commercial or closed-source.
-
-  libcurl is most probably the most portable, most powerful and most often
-  used C-based multi-platform file transfer library on this planet - be it
-  open source or commercial.
-
-  1.3 What is curl not?
-
-  Curl is not a wget clone. That is a common misconception.  Never, during
-  curl's development, have we intended curl to replace wget or compete on its
-  market. Curl is targeted at single-shot file transfers.
-
-  Curl is not a web site mirroring program. If you want to use curl to mirror
-  something: fine, go ahead and write a script that wraps around curl to make
-  it reality (like curlmirror.pl does).
-
-  Curl is not an FTP site mirroring program. Sure, get and send FTP with curl
-  but if you want systematic and sequential behavior you should write a
-  script (or write a new program that interfaces libcurl) and do it.
-
-  Curl is not a PHP tool, even though it works perfectly well when used from
-  or with PHP (when using the PHP/CURL module).
-
-  Curl is not a program for a single operating system. Curl exists, compiles,
-  builds and runs under a wide range of operating systems, including all
-  modern Unixes (and a bunch of older ones too), Windows, Amiga, BeOS, OS/2,
-  OS X, QNX etc.
-
-  1.4 When will you make curl do XXXX ?
-
-  We love suggestions of what to change in order to make curl and libcurl
-  better. We do however believe in a few rules when it comes to the future of
-  curl:
-
-  * Curl -- the command line tool -- is to remain a non-graphical command line
-    tool. If you want GUIs or fancy scripting capabilities, you should look
-    for another tool that uses libcurl.
-
-  * We do not add things to curl that other small and available tools already
-    do very fine at the side. Curl's output is fine to pipe into another
-    program or redirect to another file for the next program to interpret.
-
-  * We focus on protocol related issues and improvements. If you wanna do more
-    magic with the supported protocols than curl currently does, chances are
-    big we will agree. If you wanna add more protocols, we may very well
-    agree.
-
-  * If you want someone else to make all the work while you wait for us to
-    implement it for you, that is not a very friendly attitude. We spend a
-    considerable time already on maintaining and developing curl. In order to
-    get more out of us, you should consider trading in some of your time and
-    efforts in return.
-
-  * If you write the code, chances are bigger that it will get into curl
-    faster.
-
-  1.5 Who makes curl?
-
-  curl and libcurl are not made by any single individual. Daniel Stenberg is
-  project leader and main developer, but other persons' submissions are
-  important and crucial. Anyone can contribute and post their changes and
-  improvements and have them inserted in the main sources (of course on the
-  condition that developers agree on that the fixes are good).
-
-  The full list of all contributors is found in the docs/THANKS file.
-
-  curl is developed by a community, with Daniel at the wheel.
-
-  1.6 What do you get for making curl?
-
-  Project cURL is entirely free and open. No person gets paid for developing
-  (lib)curl on full or even part time. We do this voluntarily on our spare
-  time. Occasionally companies pay individual developers to work on curl, but
-  that's up to each company and developer. It is not controlled by nor
-  supervised in any way by the project.
-
-  We still get help from companies. Haxx provides web site, bandwidth, mailing
-  lists etc and sourceforge.net hosts project services we take advantage from,
-  like the bug tracker. Also again, some companies have sponsored certain
-  parts of the development in the past and I hope some will continue to do so
-  in the future.
-
-  If you want to support our project, consider a donation or a banner-program
-  or even better: by helping us coding, documenting, testing etc.
-
-  1.7 What about CURL from curl.com?
-
-  During the summer 2001, curl.com was busy advertising their client-side
-  programming language for the web, named CURL.
-
-  We are in no way associated with curl.com or their CURL programming
-  language.
-
-  Our project name curl has been in effective use since 1998. We were not the
-  first computer related project to use the name "curl" and do not claim any
-  first-hand rights to the name.
-
-  We recognize that we will be living in parallel with curl.com and wish them
-  every success.
-
-  1.8 I have a problem who do I mail?
-
-  Please do not mail any single individual unless you really need to. Keep
-  curl-related questions on a suitable mailing list. All available mailing
-  lists are listed in the MANUAL document and online at
-  http://curl.haxx.se/mail/
-
-  Keeping curl-related questions and discussions on mailing lists allows
-  others to join in and help, to share their ideas, contribute their
-  suggestions and spread their wisdom. Keeping discussions on public mailing
-  lists also allows for others to learn from this (both current and future
-  users thanks to the web based archives of the mailing lists), thus saving us
-  from having to repeat ourselves even more. Thanks for respecting this.
-
-  If you have found or simply suspect a security problem in curl or libcurl,
-  mail curl-security at haxx.se (closed list of receivers, mails are not
-  disclosed) and tell. Then we can produce a fix in a timely manner before the
-  flaw is announced to the world, thus lessen the impact the problem will have
-  on existing users.
-
-  1.9 Where do I buy commercial support for curl?
-
-  curl is fully open source. It means you can hire any skilled engineer to fix
-  your curl-related problems.
-
-  We list available alternatives on the curl web site:
-  http://curl.haxx.se/support.html
-
-  1.10 How many are using curl?
-
-  It is impossible to tell.
-
-  We don't know how many users that knowingly have installed and use curl.
-
-  We don't know how many users that use curl without knowing that they are in
-  fact using it.
-
-  We don't know how many users that downloaded or installed curl and then
-  never use it.
-
-  Some facts to use as input to the math:
-
-  curl packages are downloaded from the curl.haxx.se and mirrors over a
-  million times per year. curl is installed by default with most Linux
-  distributions. curl is installed by default with Mac OS X. curl and libcurl
-  as used by numerous applications that include libcurl binaries in their
-  distribution packages (like Adobe Acrobat Reader and Google Earth).
-
-  More than 90 known named companies use curl in commercial environments and
-  products. More than 100 known named open source projects depend on
-  (lib)curl.
-
-  In a poll on the curl web site mid-2005, more than 50% of the 300+ answers
-  estimated a user base of one million users or more.
-
-  In March 2005, the "Linux Counter project" estimated a total Linux user base
-  of some 29 millions, while Netcraft detected some 4 million "active" Linux
-  based web servers. A guess is that a fair amount of these Linux
-  installations have curl installed.
-
-  All this taken together, there is no doubt that there are millions of
-  (lib)curl users.
-
-  http://curl.haxx.se/docs/companies.html
-  http://curl.haxx.se/docs/programs.html
-  http://curl.haxx.se/libcurl/using/apps.html
-  http://counter.li.org/estimates.php
-  http://news.netcraft.com/archives/2005/03/14/fedora_makes_rapid_progress.html
-
-  1.11 Why don't you update ca-bundle.crt
-
-  The ca-bundle.crt file that used to be bundled with curl was very outdated
-  (it being last modified year 2000 should tell) and must be replaced with a
-  much more modern and up-to-date version by anyone who wants to verify peers
-  anyway. It is no longer provided, the last curl release that shipped it was
-  curl 7.18.0.
-
-  In the cURL project we've decided not to attempt to keep this file updated
-  (or even present anymore) since deciding what to add to a ca cert bundle is
-  an undertaking we've not been ready to accept, and the one we can get from
-  Mozilla is perfectly fine so there's no need to duplicate that work.
-
-  Today, with many services performed over HTTPS, every operating system
-  should come with a default ca cert bundle that can be deemed somewhat
-  trustworthy and that collection (if reasonably updated) should be deemed to
-  be a lot better than a private curl version.
-
-  If you want the most recent collection of ca certs that Mozilla Firefox
-  uses, we recommend that you extract the collection yourself from Mozilla
-  Firefox (by running 'make ca-bundle), or by using our online service setup
-  for this purpose: http://curl.haxx.se/docs/caextract.html
-
-  1.12 I have a problem who can I chat with?
-
-  There's a bunch of friendly people hanging out in the #curl channel on the
-  IRC network irc.freenode.net. If you're polite and nice, chances are big
-  that you can get -- or provide -- help instantly.
-
-
-2. Install Related Problems
-
-  2.1 configure doesn't find OpenSSL even when it is installed
-
-  This may be because of several reasons.
-
-    2.1.1 native linker doesn't find openssl
-
-    Affected platforms:
-      Solaris (native cc compiler)
-      HPUX (native cc compiler)
-      SGI IRIX (native cc compiler)
-      SCO UNIX (native cc compiler)
-
-    When configuring curl, I specify --with-ssl. OpenSSL is installed in
-    /usr/local/ssl Configure reports SSL in /usr/local/ssl, but fails to find
-    CRYPTO_lock in -lcrypto
-
-    Cause: The cc for this test places the -L/usr/local/ssl/lib AFTER
-    -lcrypto, so ld can't find the library. This is due to a bug in the GNU
-    autoconf tool.
-
-    Workaround: Specifying "LDFLAGS=-L/usr/local/ssl/lib" in front of
-    ./configure places the -L/usr/local/ssl/lib early enough in the command
-    line to make things work
-
-    2.1.2 only the libssl lib is missing
-
-    If all include files and the libcrypto lib is present, with only the
-    libssl being missing according to configure, this is mostly likely because
-    a few functions are left out from the libssl.
-
-    If the function names missing include RSA or RSAREF you can be certain
-    that this is because libssl requires the RSA and RSAREF libs to build.
-
-    See the INSTALL file section that explains how to add those libs to
-    configure. Make sure that you remove the config.cache file before you
-    rerun configure with the new flags.
-
-  2.2 Does curl work/build with other SSL libraries?
-
-  Curl has been written to use OpenSSL, GnuTLS, yassl or NSS, although there
-  should not be many problems using a different library. If anyone does "port"
-  curl to use a different SSL library, we are of course very interested in
-  getting the patch!
-
-  2.3 Where can I find a copy of LIBEAY32.DLL?
-
-  That is an OpenSSL binary built for Windows.
-
-  Curl uses OpenSSL to do the SSL stuff. The LIBEAY32.DLL is what curl needs
-  on a windows machine to do https://. Check out the curl web site to find
-  accurate and up-to-date pointers to recent OpenSSL DLLs and other binary
-  packages.
-
-  2.4 Does curl support SOCKS (RFC 1928) ?
-
-  Yes, SOCKS 4 and 5 are supported.
-
-
-3. Usage problems
-
-  3.1 curl: (1) SSL is disabled, https: not supported
-
-  If you get this output when trying to get anything from a https:// server,
-  it means that the configure script couldn't find all libs and include files
-  it requires for SSL to work. If the configure script fails to find them,
-  curl is simply built without SSL support.
-
-  To get the https:// support into a curl that was previously built but that
-  reports that https:// is not supported, you should dig through the document
-  and logs and check out why the configure script doesn't find the SSL libs
-  and/or include files.
-
-  Also, check out the other paragraph in this FAQ labelled "configure doesn't
-  find OpenSSL even when it is installed".
-
-  3.2 How do I tell curl to resume a transfer?
-
-  Curl supports resumed transfers both ways on both FTP and HTTP.
-
-  Try the -C option.
-
-  3.3 Why doesn't my posting using -F work?
-
-  You can't simply use -F or -d at your choice. The web server that will
-  receive your post assumes one of the formats. If the form you're trying to
-  "fake" sets the type to 'multipart/form-data', then and only then you must
-  use the -F type. In all the most common cases, you should use -d which then
-  causes a posting with the type 'application/x-www-form-urlencoded'.
-
-  This is described in some detail in the MANUAL and TheArtOfHttpScripting
-  documents, and if you don't understand it the first time, read it again
-  before you post questions about this to the mailing list. Also, try reading
-  through the mailing list archives for old postings and questions regarding
-  this.
-
-  3.4 How do I tell curl to run custom FTP commands?
-
-  You can tell curl to perform optional commands both before and/or after a
-  file transfer. Study the -Q/--quote option.
-
-  Since curl is used for file transfers, you don't use curl to just perform
-  FTP commands without transferring anything. Therefore you must always specify
-  a URL to transfer to/from even when doing custom FTP commands.
-
-  3.5 How can I disable the Pragma: nocache header?
-
-  You can change all internally generated headers by adding a replacement with
-  the -H/--header option. By adding a header with empty contents you safely
-  disable that one. Use -H "Pragma:" to disable that specific header.
-
-  3.6 Does curl support ASP, XML, XHTML or HTML version Y?
-
-  To curl, all contents are alike. It doesn't matter how the page was
-  generated. It may be ASP, PHP, Perl, shell-script, SSI or plain
-  HTML-files. There's no difference to curl and it doesn't even know what kind
-  of language that generated the page.
-
-  See also item 3.14 regarding javascript.
-
-  3.7 Can I use curl to delete/rename a file through FTP?
-
-  Yes. You specify custom FTP commands with -Q/--quote.
-
-  One example would be to delete a file after you have downloaded it:
-
-     curl -O ftp://download.com/coolfile -Q '-DELE coolfile'
-
-  or rename a file after upload:
-
-     curl -T infile ftp://upload.com/dir/ -Q "-RNFR infile" -Q "-RNTO newname"
-
-  3.8 How do I tell curl to follow HTTP redirects?
-
-  Curl does not follow so-called redirects by default. The Location: header
-  that informs the client about this is only interpreted if you're using the
-  -L/--location option. As in:
-
-     curl -L http://redirector.com
-
-  Not all redirects are HTTP ones, see 4.14
-
-  3.9 How do I use curl in my favorite programming language?
-
-  There exist many language interfaces/bindings for curl that integrates it
-  better with various languages. If you are fluid in a script language, you
-  may very well opt to use such an interface instead of using the command line
-  tool.
-
-  Find out more about which languages that support curl directly, and how to
-  install and use them, in the libcurl section of the curl web site:
-  http://curl.haxx.se/libcurl/
-
-  In October 2009, there were interfaces available for the following
-  languages: Ada95, Basic, C, C++, Ch, Cocoa, D, Dylan, Eiffel, Euphoria,
-  Ferite, Gambas, glib/GTK+, Haskell, ILE/RPG, Java, Lisp, Lua, Mono, .NET,
-  Object-Pascal, O'Caml, Pascal, Perl, PHP, PostgreSQL, Python, R, Rexx, Ruby,
-  Scheme, S-Lang, Smalltalk, SP-Forth, SPL, Tcl, Visual Basic, Visual FoxPro,
-  Q, wxwidgets and XBLite. By the time you read this, additional ones may have
-  appeared!
-
-  3.10 What about SOAP, WebDAV, XML-RPC or similar protocols over HTTP?
-
-  Curl adheres to the HTTP spec, which basically means you can play with *any*
-  protocol that is built on top of HTTP. Protocols such as SOAP, WEBDAV and
-  XML-RPC are all such ones. You can use -X to set custom requests and -H to
-  set custom headers (or replace internally generated ones).
-
-  Using libcurl is of course just as fine and you'd just use the proper
-  library options to do the same.
-
-  3.11 How do I POST with a different Content-Type?
-
-  You can always replace the internally generated headers with -H/--header.
-  To make a simple HTTP POST with text/xml as content-type, do something like:
-
-        curl -d "datatopost" -H "Content-Type: text/xml" [URL]
-
-  3.12 Why do FTP specific features over HTTP proxy fail?
-
-  Because when you use a HTTP proxy, the protocol spoken on the network will
-  be HTTP, even if you specify a FTP URL. This effectively means that you
-  normally can't use FTP specific features such as FTP upload and FTP quote
-  etc.
-
-  There is one exception to this rule, and that is if you can "tunnel through"
-  the given HTTP proxy. Proxy tunneling is enabled with a special option (-p)
-  and is generally not available as proxy admins usually disable tunneling to
-  other ports than 443 (which is used for HTTPS access through proxies).
-
-  3.13 Why does my single/double quotes fail?
-
-  To specify a command line option that includes spaces, you might need to
-  put the entire option within quotes. Like in:
-
-   curl -d " with spaces " url.com
-
-  or perhaps
-
-   curl -d ' with spaces ' url.com
-
-  Exactly what kind of quotes and how to do this is entirely up to the shell
-  or command line interpreter that you are using. For most unix shells, you
-  can more or less pick either single (') or double (") quotes. For
-  Windows/DOS prompts I believe you're forced to use double (") quotes.
-
-  Please study the documentation for your particular environment. Examples in
-  the curl docs will use a mix of both these ones as shown above. You must
-  adjust them to work in your environment.
-
-  Remember that curl works and runs on more operating systems than most single
-  individuals have ever tried.
-
-  3.14 Does curl support Javascript or PAC (automated proxy config)?
-
-  Many web pages do magic stuff using embedded Javascript. Curl and libcurl
-  have no built-in support for that, so it will be treated just like any other
-  contents.
-
-  .pac files are a netscape invention and are sometimes used by organizations
-  to allow them to differentiate which proxies to use. The .pac contents is
-  just a Javascript program that gets invoked by the browser and that returns
-  the name of the proxy to connect to. Since curl doesn't support Javascript,
-  it can't support .pac proxy configuration either.
-
-  Some workarounds usually suggested to overcome this Javascript dependency:
-
-  - Depending on the Javascript complexity, write up a script that
-    translates it to another language and execute that.
-
-  - Read the Javascript code and rewrite the same logic in another language.
-
-  - Implement a Javascript interpreter, people have successfully used the
-    Mozilla Javascript engine in the past.
-
-  - Ask your admins to stop this, for a static proxy setup or similar.
-
-  3.15 Can I do recursive fetches with curl?
-
-  No. curl itself has no code that performs recursive operations, such as
-  those performed by wget and similar tools.
-
-  There exist wrapper scripts with that functionality (for example the
-  curlmirror perl script), and you can write programs based on libcurl to do
-  it, but the command line tool curl itself cannot.
-
-  3.16 What certificates do I need when I use SSL?
-
-  There are three different kinds of "certificates" to keep track of when we
-  talk about using SSL-based protocols (HTTPS or FTPS) using curl or libcurl.
-
-  - Client certificate. The server you communicate may require that you can
-    provide this in order to prove that you actually are who you claim to be.
-    If the server doesn't require this, you don't need a client certificate.
-
-  - Server certificate. The server you communicate with has a server
-    certificate. You can and should verify this certificate to make sure that
-    you are truly talking to the real server and not a server impersonating
-    it.
-
-  - Certificate Authority certificate ("CA cert"). You often have several CA
-    certs in a CA cert bundle that can be used to verify a server certificate
-    that was signed by one of the authorities in the bundle. curl comes with a
-    default CA cert bundle. You can override the default.
-
-    The server certificate verification process is made by using a Certificate
-    Authority certificate ("CA cert") that was used to sign the server
-    certificate. Server certificate verification is enabled by default in curl
-    and libcurl and is often the reason for problems as explained in FAQ entry
-    4.12 and the SSLCERTS document
-    (http://curl.haxx.se/docs/sslcerts.html). Server certificates that are
-    "self-signed" or otherwise signed by a CA that you do not have a CA cert
-    for, cannot be verified. If the verification during a connect fails, you
-    are refused access. You then need to explicitly disable the verification
-    to connect to the server.
-
-  3.17 How do I list the root dir of an FTP server?
-
-  There are two ways. The way defined in the RFC is to use an encoded slash
-  in the first path part. List the "/tmp" dir like this:
-
-     curl ftp://ftp.sunet.se/%2ftmp/
-
-  or the not-quite-kosher-but-more-readable way, by simply starting the path
-  section of the URL with a slash:
-
-     curl ftp://ftp.sunet.se//tmp/
-
-  3.18 Can I use curl to send a POST/PUT and not wait for a response?
-
-  No.
-
-  But you could easily write your own program using libcurl to do such stunts.
-
-
-4. Running Problems
-
-  4.1 Problems connecting to SSL servers.
-
-  It took a very long time before we could sort out why curl had problems to
-  connect to certain SSL servers when using SSLeay or OpenSSL v0.9+.  The
-  error sometimes showed up similar to:
-
-  16570:error:1407D071:SSL routines:SSL2_READ:bad mac decode:s2_pkt.c:233:
-
-  It turned out to be because many older SSL servers don't deal with SSLv3
-  requests properly. To correct this problem, tell curl to select SSLv2 from
-  the command line (-2/--sslv2).
-
-  There have also been examples where the remote server didn't like the SSLv2
-  request and instead you had to force curl to use SSLv3 with -3/--sslv3.
-
-  4.2 Why do I get problems when I use & or % in the URL?
-
-  In general unix shells, the & symbol is treated specially and when used, it
-  runs the specified command in the background. To safely send the & as a part
-  of a URL, you should quote the entire URL by using single (') or double (")
-  quotes around it. Similar problems can also occur on some shells with other
-  characters, including ?*!$~(){}<>\|;`.  When in doubt, quote the URL.
-
-  An example that would invoke a remote CGI that uses &-symbols could be:
-
-     curl 'http://www.altavista.com/cgi-bin/query?text=yes&q=curl'
-
-  In Windows, the standard DOS shell treats the %-symbol specially and you
-  need to use TWO %-symbols for each single one you want to use in the URL.
-
-  Also note that if you want the literal %-symbol to be part of the data you
-  pass in a POST using -d/--data you must encode it as '%25' (which then also
-  needs the %-symbol doubled on Windows machines).
-
-  4.3 How can I use {, }, [ or ] to specify multiple URLs?
-
-  Because those letters have a special meaning to the shell, and to be used in
-  a URL specified to curl you must quote them.
-
-  An example that downloads two URLs (sequentially) would do:
-
-    curl '{curl,www}.haxx.se'
-
-  To be able to use those letters as actual parts of the URL (without using
-  them for the curl URL "globbing" system), use the -g/--globoff option:
-
-    curl -g 'www.site.com/weirdname[].html'
-
-  4.4 Why do I get downloaded data even though the web page doesn't exist?
-
-  Curl asks remote servers for the page you specify. If the page doesn't exist
-  at the server, the HTTP protocol defines how the server should respond and
-  that means that headers and a "page" will be returned. That's simply how
-  HTTP works.
-
-  By using the --fail option you can tell curl explicitly to not get any data
-  if the HTTP return code doesn't say success.
-
-  4.5 Why do I get return code XXX from a HTTP server?
-
-  RFC2616 clearly explains the return codes. This is a short transcript. Go
-  read the RFC for exact details:
-
-    4.5.1 "400 Bad Request"
-
-    The request could not be understood by the server due to malformed
-    syntax. The client SHOULD NOT repeat the request without modifications.
-
-    4.5.2 "401 Unauthorized"
-
-    The request requires user authentication.
-
-    4.5.3 "403 Forbidden"
-
-    The server understood the request, but is refusing to fulfill it.
-    Authorization will not help and the request SHOULD NOT be repeated.
-
-    4.5.4 "404 Not Found"
-
-    The server has not found anything matching the Request-URI. No indication
-    is given of whether the condition is temporary or permanent.
-
-    4.5.5 "405 Method Not Allowed"
-
-    The method specified in the Request-Line is not allowed for the resource
-    identified by the Request-URI. The response MUST include an Allow header
-    containing a list of valid methods for the requested resource.
-
-    4.5.6 "301 Moved Permanently"
-
-    If you get this return code and an HTML output similar to this:
-
-       <H1>Moved Permanently</H1> The document has moved <A
-       HREF="http://same_url_now_with_a_trailing_slash/">here</A>.
-
-    it might be because you request a directory URL but without the trailing
-    slash. Try the same operation again _with_ the trailing URL, or use the
-    -L/--location option to follow the redirection.
-
-  4.6 Can you tell me what error code 142 means?
-
-  All curl error codes are described at the end of the man page, in the
-  section called "EXIT CODES".
-
-  Error codes that are larger than the highest documented error code means
-  that curl has exited due to a crash. This is a serious error, and we
-  appreciate a detailed bug report from you that describes how we could go
-  ahead and repeat this!
-
-  4.7 How do I keep user names and passwords secret in Curl command lines?
-
-  This problem has two sides:
-
-  The first part is to avoid having clear-text passwords in the command line
-  so that they don't appear in 'ps' outputs and similar. That is easily
-  avoided by using the "-K" option to tell curl to read parameters from a file
-  or stdin to which you can pass the secret info. curl itself will also
-  attempt to "hide" the given password by blanking out the option - this
-  doesn't work on all platforms.
-
-  To keep the passwords in your account secret from the rest of the world is
-  not a task that curl addresses. You could of course encrypt them somehow to
-  at least hide them from being read by human eyes, but that is not what
-  anyone would call security.
-
-  Also note that regular HTTP (using Basic authentication) and FTP passwords
-  are sent in clear across the network. All it takes for anyone to fetch them
-  is to listen on the network.  Eavesdropping is very easy. Use more secure
-  authentication methods (like Digest, Negotiate or even NTLM) or consider the
-  SSL-based alternatives HTTPS and FTPS.
-
-  4.8 I found a bug!
-
-  It is not a bug if the behavior is documented. Read the docs first.
-  Especially check out the KNOWN_BUGS file, it may be a documented bug!
-
-  If it is a problem with a binary you've downloaded or a package for your
-  particular platform, try contacting the person who built the package/archive
-  you have.
-
-  If there is a bug, read the BUGS document first. Then report it as described
-  in there.
-
-  4.9 Curl can't authenticate to the server that requires NTLM?
-
-  This is supported in curl 7.10.6 or later. No earlier curl version knows
-  of this magic. Later versions require the OpenSSL, GnuTLS or Microsoft
-  Windows libraries to provide this functionality. Using the NSS library
-  will not provide NTLM authentication functionality in curl.
-
-  NTLM is a Microsoft proprietary protocol. Proprietary formats are evil. You
-  should not use such ones.
-
-  4.10 My HTTP request using HEAD, PUT or DELETE doesn't work!
-
-  Many web servers allow or demand that the administrator configures the
-  server properly for these requests to work on the web server.
-
-  Some servers seem to support HEAD only on certain kinds of URLs.
-
-  To fully grasp this, try the documentation for the particular server
-  software you're trying to interact with. This is not anything curl can do
-  anything about.
-
-  4.11 Why does my HTTP range requests return the full document?
-
-  Because the range may not be supported by the server, or the server may
-  choose to ignore it and return the full document anyway.
-
-  4.12 Why do I get "certificate verify failed" ?
-
-  You invoke curl 7.10 or later to communicate on a https:// URL and get an
-  error back looking something similar to this:
-
-      curl: (35) SSL: error:14090086:SSL routines:
-      SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
-
-  Then it means that curl couldn't verify that the server's certificate was
-  good. Curl verifies the certificate using the CA cert bundle that comes with
-  the curl installation.
-
-  To disable the verification (which makes it act like curl did before 7.10),
-  use -k. This does however enable man-in-the-middle attacks.
-
-  If you get this failure but are having a CA cert bundle installed and used,
-  the server's certificate is not signed by one of the CA's in the bundle. It
-  might for example be self-signed. You then correct this problem by obtaining
-  a valid CA cert for the server. Or again, decrease the security by disabling
-  this check.
-
-  Details are also in the SSLCERTS file in the release archives, found online
-  here: http://curl.haxx.se/docs/sslcerts.html
-
-  4.13 Why is curl -R on Windows one hour off?
-
-  During daylight savings time, when -R is used, curl will set a time that
-  appears one hour off. This happens due to a flaw in how Windows stores and
-  uses file modification times and it is not easily worked around. For details
-  on this problem, read this: http://www.codeproject.com/datetime/dstbugs.asp
-
-  4.14 Redirects work in browser but not with curl!
-
-  curl supports HTTP redirects fine (see item 3.8). Browsers generally support
-  at least two other ways to perform directs that curl does not:
-
-  - Meta tags. You can write a HTML tag that will cause the browser to
-    redirect to another given URL after a certain time.
-
-  - Javascript. You can write a Javascript program embedded in a HTML page
-    that redirects the browser to another given URL.
-
-  There is no way to make curl follow these redirects. You must either
-  manually figure out what the page is set to do, or you write a script that
-  parses the results and fetches the new URL.
-
-  4.15 FTPS doesn't work
-
-  curl supports FTPS (sometimes known as FTP-SSL) both implicit and explicit
-  mode.
-
-  When a URL is used that starts with FTPS://, curl assumes implicit SSL on
-  the control connection and will therefore immediately connect and try to
-  speak SSL. FTPS:// connections default to port 990.
-
-  To use explicit FTPS, you use a FTP:// URL and the --ftp-ssl option (or one
-  of its related flavours). This is the most common method, and the one
-  mandated by RFC4217. This kind of connection then of course uses the
-  standard FTP port 21 by default.
-
-  4.16 My HTTP POST or PUT requests are slow!
-
-  libcurl makes all POST and PUT requests (except for POST requests with a
-  very tiny request body) use the "Expect: 100-continue" header. This header
-  allows the server to deny the operation early so that libcurl can bail out
-  already before having to send any data. This is useful in authentication
-  cases and others.
-
-  However, many servers don't implement the Expect: stuff properly and if the
-  server doesn't respond (positively) within 1 second libcurl will continue
-  and send off the data anyway.
-
-  You can disable libcurl's use of the Expect: header the same way you disable
-  any header, using -H / CURLOPT_HTTPHEADER, or by forcing it to use HTTP 1.0.
-
-  4.17 Non-functional connect timeouts
-
-  In most Windows setups having a timeout longer than 21 seconds make no
-  difference, as it will only send 3 TCP SYN packets and no more. The second
-  packet sent three seconds after the first and the third six seconds after
-  the second.  No more than three packets are sent, no matter how long the
-  timeout is set.
-
-  See option TcpMaxConnectRetransmissions on this page:
-  http://support.microsoft.com/?scid=kb%3Ben-us%3B175523&x=6&y=7
-
-  Also, even on non-Windows systems there may run a firewall or anti-virus
-  software or similar that accepts the connection but does not actually do
-  anything else. This will make (lib)curl to consider the connection connected
-  and thus the connect timeout won't trigger.
-
-  4.18 file:// URLs containing drive letters (Windows, NetWare)
-
-  When using cURL to try to download a local file, one might use a URL
-  in this format:
-
-  file://D:/blah.txt
-
-  You'll find that even if D:\blah.txt does exist, cURL returns a 'file
-  not found' error.
-
-  According to RFC 1738 (http://www.faqs.org/rfcs/rfc1738.html),
-  file:// URLs must contain a host component, but it is ignored by
-  most implementations. In the above example, 'D:' is treated as the
-  host component, and is taken away. Thus, cURL tries to open '/blah.txt'.
-  If your system is installed to drive C:, that will resolve to 'C:\blah.txt',
-  and if that doesn't exist you will get the not found error.
-
-  To fix this problem, use file:// URLs with *three* leading slashes:
-
-  file:///D:/blah.txt
-
-  Alternatively, if it makes more sense, specify 'localhost' as the host
-  component:
-
-  file://localhost/D:/blah.txt
-
-  In either case, cURL should now be looking for the correct file.
-
-5. libcurl Issues
-
-  5.1 Is libcurl thread-safe?
-
-  Yes.
-
-  We have written the libcurl code specifically adjusted for multi-threaded
-  programs. libcurl will use thread-safe functions instead of non-safe ones if
-  your system has such.
-
-  If you use a OpenSSL-powered libcurl in a multi-threaded environment, you
-  need to provide one or two locking functions:
-
-    http://www.openssl.org/docs/crypto/threads.html
-
-  If you use a GnuTLS-powered libcurl in a multi-threaded environment, you
-  need to provide locking function(s) for libgcrypt (which is used by GnuTLS
-  for the crypto functions).
-
-    http://www.gnu.org/software/gnutls/manual/html_node/Multi_002dthreaded-applications.html
-
-  No special locking is needed with a NSS-powered libcurl. NSS is thread-safe.
-
-  5.2 How can I receive all data into a large memory chunk?
-
-  [ See also the examples/getinmemory.c source ]
-
-  You are in full control of the callback function that gets called every time
-  there is data received from the remote server. You can make that callback do
-  whatever you want. You do not have to write the received data to a file.
-
-  One solution to this problem could be to have a pointer to a struct that you
-  pass to the callback function. You set the pointer using the
-  CURLOPT_WRITEDATA option. Then that pointer will be passed to the callback
-  instead of a FILE * to a file:
-
-        /* imaginary struct */
-        struct MemoryStruct {
-          char *memory;
-          size_t size;
-        };
-
-        /* imaginary callback function */
-        size_t
-        WriteMemoryCallback(void *ptr, size_t size, size_t nmemb, void *data)
-        {
-          size_t realsize = size * nmemb;
-          struct MemoryStruct *mem = (struct MemoryStruct *)data;
-
-          mem->memory = (char *)realloc(mem->memory, mem->size + realsize + 1);
-          if (mem->memory) {
-            memcpy(&(mem->memory[mem->size]), ptr, realsize);
-            mem->size += realsize;
-            mem->memory[mem->size] = 0;
-          }
-          return realsize;
-        }
-
-  5.3 How do I fetch multiple files with libcurl?
-
-  libcurl has excellent support for transferring multiple files. You should
-  just repeatedly set new URLs with curl_easy_setopt() and then transfer it
-  with curl_easy_perform(). The handle you get from curl_easy_init() is not
-  only reusable, but you're even encouraged to reuse it if you can, as that
-  will enable libcurl to use persistent connections.
-
-  5.4 Does libcurl do Winsock initialization on win32 systems?
-
-  Yes, if told to in the curl_global_init() call.
-
-  5.5 Does CURLOPT_WRITEDATA and CURLOPT_READDATA work on win32 ?
-
-  Yes, but you cannot open a FILE * and pass the pointer to a DLL and have
-  that DLL use the FILE * (as the DLL and the client application cannot access
-  each others' variable memory areas). If you set CURLOPT_WRITEDATA you must
-  also use CURLOPT_WRITEFUNCTION as well to set a function that writes the
-  file, even if that simply writes the data to the specified FILE *.
-  Similarly, if you use CURLOPT_READDATA you must also specify
-  CURLOPT_READFUNCTION.
-
-  5.6 What about Keep-Alive or persistent connections?
-
-  curl and libcurl have excellent support for persistent connections when
-  transferring several files from the same server.  Curl will attempt to reuse
-  connections for all URLs specified on the same command line/config file, and
-  libcurl will reuse connections for all transfers that are made using the
-  same libcurl handle.
-
-  5.7 Link errors when building libcurl on Windows!
-
-  You need to make sure that your project, and all the libraries (both static
-  and dynamic) that it links against, are compiled/linked against the same run
-  time library.
-
-  This is determined by the /MD, /ML, /MT (and their corresponding /M?d)
-  options to the command line compiler. /MD (linking against MSVCRT dll) seems
-  to be the most commonly used option.
-
-  When building an application that uses the static libcurl library, you must
-  add -DCURL_STATICLIB to your CFLAGS. Otherwise the linker will look for
-  dynamic import symbols. If you get linker error like "unknown symbol
-  __imp__curl_easy_init ..." you have linked against the wrong (static)
-  library.  If you want to use the libcurl.dll and import lib, you don't need
-  any extra CFLAGS, but use one of the import libraries below. These are the
-  libraries produced by the various lib/Makefile.* files:
-
-  Target:          static lib.   import lib for libcurl*.dll.
-  -----------------------------------------------------------
-  MingW:           libcurl.a     libcurldll.a
-  MSVC (release):  libcurl.lib   libcurl_imp.lib
-  MSVC (debug):    libcurld.lib  libcurld_imp.lib
-  Borland:         libcurl.lib   libcurl_imp.lib
-
-
-  5.8 libcurl.so.3: open failed: No such file or directory
-
-  This is an error message you might get when you try to run a program linked
-  with a shared version of libcurl and your run-time linker (ld.so) couldn't
-  find the shared library named libcurl.so.3.
-
-  You need to make sure that ld.so finds libcurl.so.3. You can do that
-  multiple ways, and it differs somewhat between different operating systems,
-  but they are usually:
-
-  * Add an option to the linker command line that specify the hard-coded path
-    the run-time linker should check for the lib (usually -R)
-
-  * Set an environment variable (LD_LIBRARY_PATH for example) where ld.so
-    should check for libs
-
-  * Adjust the system's config to check for libs in the directory where you've
-    put the dir (like Linux's /etc/ld.so.conf)
-
-  'man ld.so' and 'man ld' will tell you more details
-
-  5.9 How does libcurl resolve host names?
-
-  libcurl supports a large a number of different name resolve functions. One
-  of them is picked at build-time and will be used unconditionally. Thus, if
-  you want to change name resolver function you must rebuild libcurl and tell
-  it to use a different function.
-
-  - The non-ipv6 resolver that can use one out of four host name resolve calls
-    (depending on what your system supports):
-
-    A - gethostbyname()
-    B - gethostbyname_r() with 3 arguments
-    C - gethostbyname_r() with 5 arguments
-    D - gethostbyname_r() with 6 arguments
-
-  - The ipv6-resolver that uses getaddrinfo()
-
-  - The c-ares based name resolver that uses the c-ares library for resolves.
-    Using this offers asynchronous name resolves but it currently has no IPv6
-    support.
-
-  - The Windows threaded resolver. It use:
-
-    A - gethostbyname() on plain ipv4 windows hosts
-    B - getaddrinfo() on ipv6-enabled windows hosts
-
-  Also note that libcurl never resolves or reverse-lookups addresses given as
-  pure numbers, such as 127.0.0.1 or ::1.
-
-  5.10 How do I prevent libcurl from writing the response to stdout?
-
-  libcurl provides a default built-in write function that writes received data
-  to stdout. Set the CURLOPT_WRITEFUNCTION to receive the data, or possibly
-  set CURLOPT_WRITEDATA to a different FILE * handle.
-
-  5.11 How do I make libcurl not receive the whole HTTP response?
-
-  You make the write callback (or progress callback) return an error and
-  libcurl will then abort the transfer.
-
-  5.12 Can I make libcurl fake or hide my real IP address?
-
-  No. libcurl operates on a higher level than so. Besides, faking IP address
-  would imply sending IP packages with a made-up source address, and then you
-  normally get a problem with intercepting the packages sent back as they
-  would then not be routed to you!
-
-  If you use a proxy to access remote sites, the sites will not see your local
-  IP address but instead the address of the proxy.
-
-  Also note that on many networks NATs or other IP-munging techniques are used
-  that makes you see and use a different IP address locally than what the
-  remote server will see you coming from.
-
-  5.13 How do I stop an ongoing transfer?
-
-  There are several ways, but none of them are instant. There is no function
-  you can call from another thread or similar that will stop it immediately.
-  Instead you need to make sure that one of the callbacks you use return an
-  appropriate value that will stop the transfer.
-
-  Suitable callbacks that you can do this with include the progress callback,
-  the read callback and the write callback.
-
-  If you're using the multi interface, you also stop a transfer by removing
-  the particular easy handle from the multi stack.
-
-  5.14 Using C++ non-static functions for callbacks?
-
-  libcurl is a C library, it doesn't know anything about C++ member functions.
-
-  You can overcome this "limitation" with a relative ease using a static
-  member function that is passed a pointer to the class:
-
-     // f is the pointer to your object.
-     static YourClass::staticFunction(void *buffer, size_t sz, size_t n, void *f)
-     {
-       // Call non-static member function.
-       static_cast<YourClass*>(f)->nonStaticFunction();
-     }
-
-     // This is how you pass pointer to the static function:
-     curl_easy_setopt(hcurl, CURLOPT_WRITEFUNCTION, YourClass:staticFunction);
-     curl_easy_setopt(hcurl, CURLOPT_WRITEDATA, this);
-
-  5.15 How do I get an FTP directory listing?
-
-  If you end the FTP URL you request with a slash, libcurl will provide you
-  with a directory listing of that given directory. You can also set
-  CURLOPT_CUSTOMREQUEST to alter what exact listing command libcurl would use
-  to list the files.
-
-  The follow-up question that tend to follow the previous one, is how a
-  program is supposed to parse the directory listing. How does it know what's
-  a file and what's a dir and what's a symlink etc. The harsh reality is that
-  FTP provides no such fine and easy-to-parse output. The output format FTP
-  servers respond to LIST commands are entirely at the server's own liking and
-  the NLST output doesn't reveal any types and in many cases don't even
-  include all the directory entries. Also, both LIST and NLST tend to hide
-  unix-style hidden files (those that start with a dot) by default so you need
-  to do "LIST -a" or similar to see them.
-
-  The application thus needs to parse the LIST output. One such existing
-  list parser is available at http://cr.yp.to/ftpparse.html
-
-
-6. License Issues
-
-  Curl and libcurl are released under a MIT/X derivate license. The license is
-  very liberal and should not impose a problem for your project. This section
-  is just a brief summary for the cases we get the most questions. (Parts of
-  this section was much enhanced by Bjorn Reese.)
-
-  We are not lawyers and this is not legal advice. You should probably consult
-  one if you want true and accurate legal insights without our prejudice.
-
-  6.1 I have a GPL program, can I use the libcurl library?
-
-  Yes!
-
-  Since libcurl may be distributed under the MIT/X derivate license, it can be
-  used together with GPL in any software.
-
-  6.2 I have a closed-source program, can I use the libcurl library?
-
-  Yes!
-
-  libcurl does not put any restrictions on the program that uses the library.
-
-  6.3 I have a BSD licensed program, can I use the libcurl library?
-
-  Yes!
-
-  libcurl does not put any restrictions on the program that uses the library.
-
-  6.4 I have a program that uses LGPL libraries, can I use libcurl?
-
-  Yes!
-
-  The LGPL license doesn't clash with other licenses.
-
-  6.5 Can I modify curl/libcurl for my program and keep the changes secret?
-
-  Yes!
-
-  The MIT/X derivate license practically allows you to do almost anything with
-  the sources, on the condition that the copyright texts in the sources are
-  left intact.
-
-  6.6 Can you please change the curl/libcurl license to XXXX?
-
-  No.
-
-  We have carefully picked this license after years of development and
-  discussions and a large amount of people have contributed with source code
-  knowing that this is the license we use. This license puts the restrictions
-  we want on curl/libcurl and it does not spread to other programs or
-  libraries that use it. It should be possible for everyone to use libcurl or
-  curl in their projects, no matter what license they already have in use.
-
-  6.7 What are my obligations when using libcurl in my commercial apps?
-
-  Next to none. All you need to adhere to is the MIT-style license (stated in
-  the COPYING file) which basically says you have to include the copyright
-  notice in "all copies" and that you may not use the copyright holder's name
-  when promoting your software.
-
-  You do not have to release any of your source code.
-
-  You do not have to reveal or make public any changes to the libcurl source
-  code.
-
-  You do not have to reveal or make public that you are using libcurl within
-  your app.
-
-  As can be seen here: http://curl.haxx.se/docs/companies.html and
-  elsewhere, more and more companies are discovering the power
-  of libcurl and take advantage of it even in commercial environments.
-
-
-7. PHP/CURL Issues
-
-  7.1 What is PHP/CURL?
-
-  The module for PHP that makes it possible for PHP programs to access curl-
-  functions from within PHP.
-
-  In the cURL project we call this module PHP/CURL to differentiate it from
-  curl the command line tool and libcurl the library. The PHP team however
-  does not refer to it like this (for unknown reasons). They call it plain
-  CURL (often using all caps) or sometimes ext/curl, but both cause much
-  confusion to users which in turn gives us a higher question load.
-
-  7.2 Who write PHP/CURL?
-
-  PHP/CURL is a module that comes with the regular PHP package. It depends and
-  uses libcurl, so you need to have libcurl installed properly first before
-  PHP/CURL can be used. PHP/CURL was initially written by Sterling Hughes.
-
-  7.3 Can I perform multiple requests using the same handle?
-
-  Yes - at least in PHP version 4.3.8 and later (this has been known to not
-  work in earlier versions, but the exact version when it started to work is
-  unknown to me).
-
-  After a transfer, you just set new options in the handle and make another
-  transfer. This will make libcurl to re-use the same connection if it can.
diff --git a/src/other/curl/docs/FEATURES b/src/other/curl/docs/FEATURES
deleted file mode 100644
index bc95aac..0000000
--- a/src/other/curl/docs/FEATURES
+++ /dev/null
@@ -1,135 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-FEATURES
-
-curl tool
- - config file support
- - multiple URLs in a single command line
- - range "globbing" support: [0-13], {one,two,three}
- - multiple file upload on a single command line
- - custom maximum transfer rate
- - redirectable stderr
-
-libcurl supports
- - full URL syntax with no length limit
- - custom maximum download time
- - custom least download speed acceptable
- - custom output result after completion
- - guesses protocol from host name unless specified
- - uses .netrc
- - progress bar/time specs while downloading
- - "standard" proxy environment variables support
- - compiles on win32 (reported builds on 40+ operating systems)
- - selectable network interface for outgoing traffic
- - IPv6 support on unix and Windows
- - persistant connections
- - socks5 support
- - supports user name + password in proxy environment variables
- - operations through proxy "tunnel" (using CONNECT)
- - supports large files (>2GB and >4GB) both upload/download
- - replacable memory functions (malloc, free, realloc, etc)
- - asynchronous name resolving (*6)
- - both a push and a pull style interface
-
-HTTP
- - HTTP/1.1 compliant (optionally uses 1.0)
- - GET
- - PUT
- - HEAD
- - POST
- - Pipelining
- - multipart formpost (RFC1867-style)
- - authentication: Basic, Digest, NTLM(*1), GSS-Negotiate/Negotiate(*3) and
-   SPNEGO (*4) to server and proxy
- - resume (both GET and PUT)
- - follow redirects
- - maximum amount of redirects to follow
- - custom HTTP request
- - cookie get/send fully parsed
- - reads/writes the netscape cookie file format
- - custom headers (replace/remove internally generated headers)
- - custom user-agent string
- - custom referer string
- - range
- - proxy authentication
- - time conditions
- - via http-proxy
- - retrieve file modification date
- - Content-Encoding support for deflate and gzip
- - "Transfer-Encoding: chunked" support for "uploads"
-
-HTTPS (*1)
- - (all the HTTP features)
- - using client certificates
- - verify server certificate
- - via http-proxy
- - select desired encryption
- - force usage of a specific SSL version (SSLv2(*7), SSLv3 or TLSv1)
-
-FTP
- - download
- - authentication
- - kerberos4 (*5), kerberos5 (*3)
- - active/passive using PORT, EPRT, PASV or EPSV
- - single file size information (compare to HTTP HEAD)
- - 'type=' URL support
- - dir listing
- - dir listing names-only
- - upload
- - upload append
- - upload via http-proxy as HTTP PUT
- - download resume
- - upload resume
- - custom ftp commands (before and/or after the transfer)
- - simple "range" support
- - via http-proxy
- - all operations can be tunneled through a http-proxy
- - customizable to retrieve file modification date
- - no dir depth limit
-
-FTPS (*1)
- - implicit ftps:// support that use SSL on both connections
- - explicit "AUTH TSL" and "AUTH SSL" usage to "upgrade" plain ftp://
-   connection to use SSL for both or one of the connections
-
-SCP (*8)
- - both password and public key auth
-
-SFTP (*8)
- - both password and public key auth
- - with custom commands sent before/after the transfer
-
-TFTP
- - download / upload
-
-TELNET
- - connection negotiation
- - custom telnet options
- - stdin/stdout I/O
-
-LDAP (*2)
- - full LDAP URL support
-
-DICT
- - extended DICT URL support
-
-FILE
- - URL support
- - "uploads"
- - resume
-
-FOOTNOTES
-=========
-
-  *1 = requires OpenSSL, GnuTLS, NSS or yassl
-  *2 = requires OpenLDAP
-  *3 = requires a GSSAPI-compliant library, such as Heimdal or similar.
-  *4 = requires FBopenssl
-  *5 = requires a krb4 library, such as the MIT one or similar.
-  *6 = requires c-ares
-  *7 = requires OpenSSL or NSS, as GnuTLS only supports SSLv3 and TLSv1
-  *8 = requires libssh2
diff --git a/src/other/curl/docs/HISTORY b/src/other/curl/docs/HISTORY
deleted file mode 100644
index d429cec..0000000
--- a/src/other/curl/docs/HISTORY
+++ /dev/null
@@ -1,186 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-                          How cURL Became Like This
-
-
-In the second half of 1997, Daniel Stenberg came up with the idea to make
-currency-exchange calculations available to Internet Relay Chat (IRC)
-users. All the necessary data are published on the Web; he just needed to
-automate their retrieval.
-
-Daniel simply adopted an existing command-line open-source tool, httpget, that
-Brazilian Rafael Sagula had written. After a few minor adjustments, it did
-just what he needed.
-
-Soon, he found currencies on a GOPHER site, so support for that had to go in,
-and not before long FTP download support was added as well. The name of the
-project was changed to urlget to better fit what it actually did now, since
-the http-only days were already passed.
-
-The project slowly grew bigger. When upload capabilities were added and the
-name once again was misleading, a second name change was made and on March 20,
-1998 curl 4 was released. (The version numbering from the previous names was
-kept.)
-
-(Unrelated to this project a company called Curl Corporation registered a US
-trademark on the name "CURL" on May 18 1998. That company had then already
-registered the curl.com domain back in November of the previous year. All this
-was revealed to us much later.)
-
-SSL support was added, powered by the SSLeay library.
-
-August 1998, first announcement of curl on freshmeat.net.
-
-October 1998, with the curl 4.9 release and the introduction of cookie
-support, curl was no longer released under the GPL license. Now we're at 4000
-lines of code, we switched over to the MPL license to restrict the effects of
-"copyleft".
-
-November 1998, configure script and reported successful compiles on several
-major operating systems. The never-quite-understood -F option was added and
-curl could now simulate quite a lot of a browser. TELNET support was added.
-
-Curl 5 was released in December 1998 and introduced the first ever curl man
-page. People started making Linux RPM packages out of it.
-
-January 1999, DICT support added.
-
-OpenSSL took over where SSLeay was abandoned.
-
-May 1999, first Debian package.
-
-August 1999, LDAP:// and FILE:// support added. The curl web site gets 1300
-visits weekly.
-
-Released curl 6.0 in September. 15000 lines of code.
-
-December 28 1999, added the project on Sourceforge and started using its
-services for managing the project.
-
-Spring 2000, major internal overhaul to provide a suitable library interface.
-The first non-beta release was named 7.1 and arrived in August. This offered
-the easy interface and turned out to be the beginning of actually getting
-other software and programs to get based on and powered by libcurl. Almost
-20000 lines of code.
-
-August 2000, the curl web site gets 4000 visits weekly.
-
-The PHP guys adopted libcurl already the same month, when the first ever third
-party libcurl binding showed up. CURL has been a supported module in PHP since
-the release of PHP 4.0.2. This would soon get followers. More than 16
-different bindings exist at the time of this writing.
-
-September 2000, kerberos4 support was added.
-
-In November 2000 started the work on a test suite for curl. It was later
-re-written from scratch again. The libcurl major SONAME number was set to 1.
-
-January 2001, Daniel released curl 7.5.2 under a new license again: MIT (or
-MPL). The MIT license is extremely liberal and can be used combined with GPL
-in other projects. This would finally put an end to the "complaints" from
-people involved in GPLed projects that previously were prohibited from using
-libcurl while it was released under MPL only. (Due to the fact that MPL is
-deemed "GPL incompatible".)
-
-curl supports HTTP 1.1 starting with the release of 7.7, March 22 2001. This
-also introduced libcurl's ability to do persistent connections. 24000 lines of
-code. The libcurl major SONAME number was bumped to 2 due to this overhaul.
-
-The first experimental ftps:// support was added in March 2001.
-
-August 2001. curl is bundled in Mac OS X, 10.1. It was already becoming more
-and more of a standard utility of Linux distributions and a regular in the BSD
-ports collections. The curl web site gets 8000 visits weekly. Curl Corporation
-contacted Daniel to discuss "the name issue". After Daniel's reply, they have
-never since got in touch again.
-
-September 2001, libcurl 7.9 introduces cookie jar and curl_formadd(). During
-the forthcoming 7.9.x releases, we introduced the multi interface slowly and
-without much whistles.
-
-June 2002, the curl web site gets 13000 visits weekly. curl and libcurl is
-35000 lines of code. Reported successful compiles on more than 40 combinations
-of CPUs and operating systems.
-
-To estimate number of users of the curl tool or libcurl library is next to
-impossible. Around 5000 downloaded packages each week from the main site gives
-a hint, but the packages are mirrored extensively, bundled with numerous OS
-distributions and otherwise retrieved as part of other software.
-
-September 2002, with the release of curl 7.10 it is released under the MIT
-license only.
-
-January 2003. Started working on the distributed curl tests. The autobuilds.
-
-February 2003, the curl site averages at 20000 visits weekly. At any given
-moment, there's an average of 3 people browsing the curl.haxx.se site.
-
-Multiple new authentication schemes are supported: Digest (May), NTLM (June)
-and Negotiate (June).
-
-November 2003: curl 7.10.8 is released. 45000 lines of code. ~55000 unique
-visitors to the curl.haxx.se site. Five official web mirrors.
-
-December 2003, full-fledged SSL for FTP is supported.
-
-January 2004: curl 7.11.0 introduced large file support.
-
-June 2004:
-
-  curl 7.12.0 introduced IDN support. 10 official web mirrors.
-
-  This release bumped the major SONAME to 3 due to the removal of the
-  curl_formparse() function
-
-August 2004:
- Curl and libcurl 7.12.1
-
- Public curl release number:               82
- Releases counted from the very beginning: 109
- Available command line options:           96
- Available curl_easy_setopt() options:     120
- Number of public functions in libcurl:    36
- Amount of public web site mirrors:        12
- Number of known libcurl bindings:         26
-
-April 2005:
-
- GnuTLS can now optionally be used for the secure layer when curl is built.
-
-September 2005:
-
- TFTP support was added.
-
- More than 100,000 unique visitors of the curl web site. 25 mirrors.
-
-April 2006:
-
- Added the multi_socket() API
-
-September 2006:
-
- The major SONAME number for libcurl was bumped to 4 due to the removal of
- ftp third party transfer support.
-
-November 2006:
-
- Added SCP and SFTP support
-
-February 2007:
-
- Added support for the Mozilla NSS library to do the SSL/TLS stuff
-
-November 2008:
-
- Command line options:         128
- curl_easy_setopt() options:   158
- Public functions in libcurl:  58
- Known libcurl bindings:       37
- Contributors:                 683
-
- 145,000 unique visitors. >100 GB downloaded.
-
diff --git a/src/other/curl/docs/INSTALL b/src/other/curl/docs/INSTALL
deleted file mode 100644
index 575d000..0000000
--- a/src/other/curl/docs/INSTALL
+++ /dev/null
@@ -1,981 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-                                How To Compile
-
-Installing Binary Packages
-==========================
-
-   Lots of people download binary distributions of curl and libcurl. This
-   document does not describe how to install curl or libcurl using such a
-   binary package. This document describes how to compile, build and install
-   curl and libcurl from source code.
-
-UNIX
-====
-   A normal unix installation is made in three or four steps (after you've
-   unpacked the source archive):
-
-        ./configure
-        make
-        make test (optional)
-        make install
-
-   You probably need to be root when doing the last command.
-
-   If you have checked out the sources from the git repository, read the
-   GIT-INFO on how to proceed.
-
-   Get a full listing of all available configure options by invoking it like:
-
-        ./configure --help
-
-   If you want to install curl in a different file hierarchy than /usr/local,
-   you need to specify that already when running configure:
-
-        ./configure --prefix=/path/to/curl/tree
-
-   If you happen to have write permission in that directory, you can do 'make
-   install' without being root. An example of this would be to make a local
-   install in your own home directory:
-
-        ./configure --prefix=$HOME
-        make
-        make install
-
-   The configure script always tries to find a working SSL library unless
-   explicitly told not to. If you have OpenSSL installed in the default search
-   path for your compiler/linker, you don't need to do anything special. If
-   you have OpenSSL installed in /usr/local/ssl, you can run configure like:
-
-        ./configure --with-ssl
-
-   If you have OpenSSL installed somewhere else (for example, /opt/OpenSSL)
-   and you have pkg-config installed, set the pkg-config path first, like this:
-
-        env PKG_CONFIG_PATH=/opt/OpenSSL/lib/pkgconfig ./configure --with-ssl
-
-   Without pkg-config installed, use this:
-
-        ./configure --with-ssl=/opt/OpenSSL
-
-   If you insist on forcing a build without SSL support, even though you may
-   have OpenSSL installed in your system, you can run configure like this:
-
-        ./configure --without-ssl
-
-   If you have OpenSSL installed, but with the libraries in one place and the
-   header files somewhere else, you have to set the LDFLAGS and CPPFLAGS
-   environment variables prior to running configure.  Something like this
-   should work:
-
-     (with the Bourne shell and its clones):
-
-        CPPFLAGS="-I/path/to/ssl/include" LDFLAGS="-L/path/to/ssl/lib" \
-           ./configure
-
-     (with csh, tcsh and their clones):
-
-        env CPPFLAGS="-I/path/to/ssl/include" LDFLAGS="-L/path/to/ssl/lib" \
-           ./configure
-
-   If you have shared SSL libs installed in a directory where your run-time
-   linker doesn't find them (which usually causes configure failures), you can
-   provide the -R option to ld on some operating systems to set a hard-coded
-   path to the run-time linker:
-
-        env LDFLAGS=-R/usr/local/ssl/lib ./configure --with-ssl
-
-   MORE OPTIONS
-   ------------
-
-     To force configure to use the standard cc compiler if both cc and gcc are
-     present, run configure like
-
-       CC=cc ./configure
-         or
-       env CC=cc ./configure
-
-     To force a static library compile, disable the shared library creation
-     by running configure like:
-
-       ./configure --disable-shared
-
-     To tell the configure script to skip searching for thread-safe functions,
-     add an option like:
-
-       ./configure --disable-thread
-
-     To build curl with kerberos4 support enabled, curl requires the krb4 libs
-     and headers installed. You can then use a set of options to tell
-     configure where those are:
-
-          --with-krb4-includes[=DIR]   Specify location of kerberos4 headers
-          --with-krb4-libs[=DIR]       Specify location of kerberos4 libs
-          --with-krb4[=DIR]            where to look for Kerberos4
-
-     In most cases, /usr/athena is the install prefix and then it works with
-
-       ./configure --with-krb4=/usr/athena
-
-     If you're a curl developer and use gcc, you might want to enable more
-     debug options with the --enable-debug option.
-
-     curl can be built to use a whole range of libraries to provide various
-     useful services, and configure will try to auto-detect a decent
-     default. But if you want to alter it, you can select how to deal with
-     each individual library.
-
-     To build with GnuTLS support instead of OpenSSL for SSL/TLS, note that
-     you need to use both --without-ssl and --with-gnutls.
-
-     To build with yassl support instead of OpenSSL or GnuTLS, you must build
-     yassl with its OpenSSL emulation enabled and point to that directory root
-     with configure --with-ssl.
-
-     To build with NSS support instead of OpenSSL for SSL/TLS, note that
-     you need to use both --without-ssl and --with-nss.
-
-     To get GSSAPI support, build with --with-gssapi and have the MIT or
-     Heimdal Kerberos 5 packages installed.
-
-     To get support for SCP and SFTP, build with --with-libssh2 and have
-     libssh2 0.16 or later installed.
-
-   SPECIAL CASES
-   -------------
-   Some versions of uClibc require configuring with CPPFLAGS=-D_GNU_SOURCE=1
-   to get correct large file support.
-
-   The Open Watcom C compiler on Linux requires configuring with the variables:
-
-       ./configure CC=owcc AR="$WATCOM/binl/wlib" AR_FLAGS=-q \
-           RANLIB=/bin/true STRIP="$WATCOM/binl/wstrip" CFLAGS=-Wextra
-
-
-Win32
-=====
-
-   Building Windows DLLs and C run-time (CRT) linkage issues
-   ---------------------------------------------------------
-
-   As a general rule, building a DLL with static CRT linkage is highly
-   discouraged, and intermixing CRTs in the same app is something to
-   avoid at any cost.
-
-   Reading and comprehension of Microsoft Knowledge Base articles
-   KB94248 and KB140584 is a must for any Windows developer. Especially
-   important is full understanding if you are not going to follow the
-   advice given above.
-
-   KB94248  - How To Use the C Run-Time
-              http://support.microsoft.com/kb/94248/en-us
-
-   KB140584 - How to link with the correct C Run-Time (CRT) library
-              http://support.microsoft.com/kb/140584/en-us
-
-   KB190799 - Potential Errors Passing CRT Objects Across DLL Boundaries
-              http://msdn.microsoft.com/en-us/library/ms235460
-
-   If your app is misbehaving in some strange way, or it is suffering
-   from memory corruption, before asking for further help, please try
-   first to rebuild every single library your app uses as well as your
-   app using the debug multithreaded dynamic C runtime.
-
-   MingW32
-   -------
-
-   Make sure that MinGW32's bin dir is in the search path, for example:
-
-     set PATH=c:\mingw32\bin;%PATH%
-
-   then run 'mingw32-make mingw32' in the root dir. There are other
-   make targets available to build libcurl with more features, use:
-   'mingw32-make mingw32-zlib' to build with Zlib support;
-   'mingw32-make mingw32-ssl-zlib' to build with SSL and Zlib enabled;
-   'mingw32-make mingw32-ssh2-ssl-zlib' to build with SSH2, SSL, Zlib;
-   'mingw32-make mingw32-ssh2-ssl-sspi-zlib' to build with SSH2, SSL, Zlib
-   and SSPI support.
-
-   If you have any problems linking libraries or finding header files, be sure
-   to verify that the provided "Makefile.m32" files use the proper paths, and
-   adjust as necessary. It is also possible to override these paths with
-   environment variables, for example:
-
-     set ZLIB_PATH=c:\zlib-1.2.3
-     set OPENSSL_PATH=c:\openssl-0.9.8k
-     set LIBSSH2_PATH=c:\libssh2-1.1
-
-   ATTENTION: if you want to build with libssh2 support you have to use latest
-   version 0.17 - previous versions will NOT work with 7.17.0 and later!
-   Use 'mingw32-make mingw32-ssh2-ssl-zlib' to build with SSH2 and SSL enabled.
-
-   It is now also possible to build with other LDAP SDKs than MS LDAP;
-   currently it is possible to build with native Win32 OpenLDAP, or with the
-   Novell CLDAP SDK. If you want to use these you need to set these vars:
-
-     set LDAP_SDK=c:\openldap
-     set USE_LDAP_OPENLDAP=1
-
-   or for using the Novell SDK:
-
-     set USE_LDAP_NOVELL=1
-
-   If you want to enable LDAPS support then set LDAPS=1.
-
-   - optional MingW32-built OpenlDAP SDK available from:
-     http://www.gknw.net/mirror/openldap/
-   - optional recent Novell CLDAP SDK available from:
-     http://developer.novell.com/ndk/cldap.htm
-
-
-   Cygwin
-   ------
-
-   Almost identical to the unix installation. Run the configure script in the
-   curl root with 'sh configure'. Make sure you have the sh executable in
-   /bin/ or you'll see the configure fail toward the end.
-
-   Run 'make'
-
-   Dev-Cpp
-   -------
-
-   See the separate INSTALL.devcpp file for details.
-
-   MSVC 6 caveats
-   --------------
-
-   If you use MSVC 6 it is required that you use the February 2003 edition PSDK:
-   http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
-
-   Building any software with MSVC 6 without having PSDK installed is just
-   asking for trouble down the road once you have released it, you might notice
-   the problems in the first corner or ten miles ahead, depending mostly on your
-   choice of static vs dynamic runtime and third party libraries. Anyone using
-   software built in such way will at some point regret having done so.
-
-   When someone uses MSVC 6 without PSDK he is using a compiler back from 1998.
-
-   If the compiler has been updated with the installation of a service pack as
-   those mentioned in http://support.microsoft.com/kb/194022 the compiler can be
-   safely used to read source code, translate and make it object code.
-
-   But, even with the service packs mentioned above installed, the resulting
-   software generated in such an environment will be using outdated system
-   header files and libraries with bugs and security issues which have already
-   been addressed and fixed long time ago.
-
-   In order to make use of the updated system headers and fixed libraries
-   for MSVC 6, it is required that 'Platform SDK', PSDK from now onwards,
-   is installed. The specific PSDK that must be installed for MSVC 6 is the
-   February 2003 edition, which is the latest one supporting the MSVC 6 compiler,
-   this PSDK is also known as 'Windows Server 2003 PSDK' and can be downloaded
-   from http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
-
-   So, building curl and libcurl with MSVC 6 without PSDK is absolutely
-   discouraged for the benefit of anyone using software built in such
-   environment. And it will not be supported in any way, as we could just
-   be hunting bugs which have already been fixed way back in 2003.
-
-   When building with MSVC 6 we attempt to detect if PSDK is not being used,
-   and if this is the case the build process will fail hard with an error
-   message stating that the February 2003 PSDK is required. This is done to
-   protect the unsuspecting and avoid PEBKAC issues.
-
-   Additionally it might happen that a die hard MSVC hacker still wants to
-   build curl and libcurl with MSVC 6 without PSDK installed, even knowing
-   that this is a highly discouraged and unsupported build environment. In
-   this case the brave of heart will be able to build in such an environment
-   with the requisite of defining preprocessor symbol ALLOW_MSVC6_WITHOUT_PSDK
-   in lib/config-win32.h and knowing that LDAP and IPv6 support will be missing.
-
-   MSVC from command line
-   ----------------------
-
-   Run the 'vcvars32.bat' file to get a proper environment. The
-   vcvars32.bat file is part of the Microsoft development environment and
-   you may find it in 'C:\Program Files\Microsoft Visual Studio\vc98\bin'
-   provided that you installed Visual C/C++ 6 in the default directory.
-
-   Then run 'nmake vc' in curl's root directory.
-
-   If you want to compile with zlib support, you will need to build
-   zlib (http://www.gzip.org/zlib/) as well. Please read the zlib
-   documentation on how to compile zlib. Define the ZLIB_PATH environment
-   variable to the location of zlib.h and zlib.lib, for example:
-
-     set ZLIB_PATH=c:\zlib-1.2.3
-
-   Then run 'nmake vc-zlib' in curl's root directory.
-
-   If you want to compile with SSL support you need the OpenSSL package.
-   Please read the OpenSSL documentation on how to compile and install
-   the OpenSSL libraries.  The build process of OpenSSL generates the
-   libeay32.dll and ssleay32.dll files in the out32dll subdirectory in
-   the OpenSSL home directory.  OpenSSL static libraries (libeay32.lib,
-   ssleay32.lib, RSAglue.lib) are created in the out32 subdirectory.
-
-   Before running nmake define the OPENSSL_PATH environment variable with
-   the root/base directory of OpenSSL, for example:
-
-     set OPENSSL_PATH=c:\openssl-0.9.8k
-
-   Then run 'nmake vc-ssl' or 'nmake vc-ssl-dll' in curl's root
-   directory.  'nmake vc-ssl' will create a libcurl static and dynamic
-   libraries in the lib subdirectory, as well as a statically linked
-   version of curl.exe in the src subdirectory.  This statically linked
-   version is a standalone executable not requiring any DLL at
-   runtime. This make method requires that you have the static OpenSSL
-   libraries available in OpenSSL's out32 subdirectory.
-   'nmake vc-ssl-dll' creates the libcurl dynamic library and
-   links curl.exe against libcurl and OpenSSL dynamically.
-   This executable requires libcurl.dll and the OpenSSL DLLs
-   at runtime.
-   Run 'nmake vc-ssl-zlib' to build with both ssl and zlib support.
-
-   MSVC 6 IDE
-   ----------
-
-   A minimal VC++ 6.0 reference workspace (vc6curl.dsw) is available with the
-   source distribution archive to allow proper building of the two included
-   projects, the libcurl library and the curl tool.
-
-   1) Open the vc6curl.dsw workspace with MSVC6's IDE.
-   2) Select 'Build' from top menu.
-   3) Select 'Batch Build' from dropdown menu.
-   4) Make sure that the eight project configurations are 'checked'.
-   5) Click on the 'Build' button.
-   6) Once the eight project configurations are built you are done.
-
-   Dynamic and static libcurl libraries are built in debug and release flavours,
-   and can be located each one in its own subdirectory, DLL-Debug, DLL-Release,
-   LIB-Debug and LIB-Release, all of them below the 'lib' subdirectory.
-
-   In the same way four curl executables are created, each using its respective
-   library. The resulting curl executables are located in its own subdirectory,
-   DLL-Debug, DLL-Release, LIB-Debug and LIB-Release, below the 'src' subdir.
-
-   These reference VC++ 6.0 configurations are generated using the dynamic CRT.
-
-   Intentionally, these reference VC++ 6.0 projects and configurations don't use
-   third party libraries, such as OpenSSL or Zlib, to allow proper compilation
-   and configuration for all new users without further requirements.
-
-   If you need something more 'involved' you might adjust them for your own use,
-   or explore the world of makefiles described above 'MSVC from command line'.
-
-   Borland C++ compiler
-   ---------------------
-
-   compile openssl
-
-   Make sure you include the paths to curl/include and openssl/inc32 in
-   your bcc32.cnf file
-
-   eg : -I"c:\Bcc55\include;c:\path_curl\include;c:\path_openssl\inc32"
-
-   Check to make sure that all of the sources listed in lib/Makefile.b32
-   are present in the /path_to_curl/lib directory. (Check the src
-   directory for missing ones.)
-
-   Make sure the environment variable "BCCDIR" is set to the install
-   location for the compiler eg : c:\Borland\BCC55
-
-   command line:
-   make -f /path_to_curl/lib/Makefile-ssl.b32
-
-   compile simplessl.c with appropriate links
-
-   c:\curl\docs\examples\> bcc32 -L c:\path_to_curl\lib\libcurl.lib
-                                 -L c:\borland\bcc55\lib\psdk\ws2_32.lib
-                                 -L c:\openssl\out32\libeay32.lib
-                                 -L c:\openssl\out32\ssleay32.lib
-                                 simplessl.c
-
-   OTHER MSVC IDEs
-   ---------------
-
-   If you use VC++, Borland or similar compilers. Include all lib source
-   files in a static lib "project" (all .c and .h files that is).
-   (you should name it libcurl or similar)
-
-   Make the sources in the src/ drawer be a "win32 console application"
-   project. Name it curl.
-
-
-   Disabling Specific Protocols in Win32 builds
-   --------------------------------------------
-
-   The configure utility, unfortunately, is not available for the Windows
-   environment, therefore, you cannot use the various disable-protocol
-   options of the configure utility on this platform.
-
-   However, you can use the following defines to disable specific
-   protocols:
-
-   HTTP_ONLY             disables all protocols except HTTP
-   CURL_DISABLE_FTP      disables FTP
-   CURL_DISABLE_LDAP     disables LDAP
-   CURL_DISABLE_TELNET   disables TELNET
-   CURL_DISABLE_DICT     disables DICT
-   CURL_DISABLE_FILE     disables FILE
-   CURL_DISABLE_TFTP     disables TFTP
-   CURL_DISABLE_HTTP     disables HTTP
-
-   If you want to set any of these defines you have the following
-   possibilities:
-
-   - Modify lib/config-win32.h
-   - Modify lib/setup.h
-   - Modify lib/Makefile.vc6
-   - Add defines to Project/Settings/C/C++/General/Preprocessor Definitions
-     in the vc6libcurl.dsw/vc6libcurl.dsp Visual C++ 6 IDE project.
-
-
-   Important static libcurl usage note
-   -----------------------------------
-
-   When building an application that uses the static libcurl library, you must
-   add '-DCURL_STATICLIB' to your CFLAGS.  Otherwise the linker will look for
-   dynamic import symbols.
-
-
-IBM OS/2
-========
-   Building under OS/2 is not much different from building under unix.
-   You need:
-
-      - emx 0.9d
-      - GNU make
-      - GNU patch
-      - ksh
-      - GNU bison
-      - GNU file utilities
-      - GNU sed
-      - autoconf 2.13
-
-   If you want to build with OpenSSL or OpenLDAP support, you'll need to
-   download those libraries, too. Dirk Ohme has done some work to port SSL
-   libraries under OS/2, but it looks like he doesn't care about emx.  You'll
-   find his patches on: http://come.to/Dirk_Ohme
-
-   If during the linking you get an error about _errno being an undefined
-   symbol referenced from the text segment, you need to add -D__ST_MT_ERRNO__
-   in your definitions.
-
-   If everything seems to work fine but there's no curl.exe, you need to add
-   -Zexe to your linker flags.
-
-   If you're getting huge binaries, probably your makefiles have the -g in
-   CFLAGS.
-
-
-VMS
-===
-   (The VMS section is in whole contributed by the friendly Nico Baggus)
-
-   Curl seems to work with FTP & HTTP other protocols are not tested.  (the
-   perl http/ftp testing server supplied as testing too cannot work on VMS
-   because vms has no concept of fork(). [ I tried to give it a whack, but
-   thats of no use.
-
-   SSL stuff has not been ported.
-
-   Telnet has about the same issues as for Win32. When the changes for Win32
-   are clear maybe they'll work for VMS too. The basic problem is that select
-   ONLY works for sockets.
-
-   Marked instances of fopen/[f]stat that might become a problem, especially
-   for non stream files. In this regard, the files opened for writing will be
-   created stream/lf and will thus be safe. Just keep in mind that non-binary
-   read/wring from/to files will have a records size limit of 32767 bytes
-   imposed.
-
-   Stat to get the size of the files is again only safe for stream files &
-   fixed record files without implied CC.
-
-   -- My guess is that only allowing access to stream files is the quickest
-   way to get around the most issues. Therefore all files need to to be
-   checked to be sure they will be stream/lf before processing them.  This is
-   the easiest way out, I know. The reason for this is that code that needs to
-   report the filesize will become a pain in the ass otherwise.
-
-   Exit status.... Well we needed something done here,
-
-   VMS has a structured exist status:
-   | 3  |       2    |     1       |  0|
-   |1098|765432109876|5432109876543|210|
-   +----+------------+-------------+---+
-   |Ctrl|  Facility  | Error code  |sev|
-   +----+------------+-------------+---+
-
-   With the Ctrl-bits an application can tell if part or the whole message has
-   already been printed from the program, DCL doesn't need to print it again.
-
-   Facility - basically the program ID. A code assigned to the program
-   the name can be fetched from external or internal message libraries
-   Error code - the err codes assigned by the application
-   Sev. - severity: Even = error, off = non error
-      0 = Warning
-      1 = Success
-      2 = Error
-      3 = Information
-      4 = Fatal
-      <5-7> reserved.
-
-   This all presents itself with:
-   %<FACILITY>-<Sev>-<Errorname>, <Error message>
-
-   See also the src/curlmsg.msg file, it has the source for the messages In
-   src/main.c a section is devoted to message status values, the globalvalues
-   create symbols with certain values, referenced from a compiled message
-   file. Have all exit function use a exit status derived from a translation
-   table with the compiled message codes.
-
-   This was all compiled with:
-
-      Compaq C V6.2-003 on OpenVMS Alpha V7.1-1H2
-
-   So far for porting notes as of:
-   13-jul-2001
-   N. Baggus
-
-
-QNX
-===
-   (This section was graciously brought to us by David Bentham)
-
-   As QNX is targeted for resource constrained environments, the QNX headers
-   set conservative limits. This includes the FD_SETSIZE macro, set by default
-   to 32. Socket descriptors returned within the CURL library may exceed this,
-   resulting in memory faults/SIGSEGV crashes when passed into select(..)
-   calls using fd_set macros.
-
-   A good all-round solution to this is to override the default when building
-   libcurl, by overriding CFLAGS during configure, example
-   #  configure CFLAGS='-DFD_SETSIZE=64 -g -O2'
-
-
-RISC OS
-=======
-   The library can be cross-compiled using gccsdk as follows:
-
-        CC=riscos-gcc AR=riscos-ar RANLIB='riscos-ar -s' ./configure \
-             --host=arm-riscos-aof --without-random --disable-shared
-        make
-
-   where riscos-gcc and riscos-ar are links to the gccsdk tools.
-   You can then link your program with curl/lib/.libs/libcurl.a
-
-
-AmigaOS
-=======
-   (This section was graciously brought to us by Diego Casorran)
-
-   To build cURL/libcurl on AmigaOS just type 'make amiga' ...
-
-   What you need is:    (not tested with others versions)
-
-        GeekGadgets / gcc 2.95.3 (http://www.geekgadgets.org/)
-
-        AmiTCP SDK v4.3 (http://www.aminet.net/comm/tcp/AmiTCP-SDK-4.3.lha)
-
-        Native Developer Kit (http://www.amiga.com/3.9/download/NDK3.9.lha)
-
-   As no ixemul.library is required you will be able to build it for
-   WarpOS/PowerPC (not tested by me), as well a MorphOS version should be
-   possible with no problems.
-
-   To enable SSL support, you need a OpenSSL native version (without ixemul),
-   you can find a precompiled package at http://amiga.sourceforge.net/OpenSSL/
-
-
-NetWare
-=======
-   To compile curl.nlm / libcurl.nlm you need:
-   - either any gcc / nlmconv, or CodeWarrior 7 PDK 4 or later.
-   - gnu make and awk running on the platform you compile on;
-     native Win32 versions can be downloaded from:
-     http://www.gknw.net/development/prgtools/
-   - recent Novell LibC SDK available from:
-     http://developer.novell.com/ndk/libc.htm
-   - or recent Novell CLib SDK available from:
-     http://developer.novell.com/ndk/clib.htm
-   - optional recent Novell CLDAP SDK available from:
-     http://developer.novell.com/ndk/cldap.htm
-   - optional zlib sources (static or dynamic linking with zlib.imp);
-     sources with NetWare Makefile can be obtained from:
-     http://www.gknw.net/mirror/zlib/
-   - optional OpenSSL sources (version 0.9.8 or later build with BSD sockets);
-     you can find precompiled packages at:
-     http://www.gknw.net/development/ossl/netware/
-     for CLIB-based builds OpenSSL 0.9.8h or later is required  - earlier versions
-     dont support buildunf with CLIB BSD sockets.
-   - optional SSH2 sources (version 0.17 or later);
-
-   Set a search path to your compiler, linker and tools; on Linux make
-   sure that the var OSTYPE contains the string 'linux'; set the var
-   NDKBASE to point to the base of your Novell NDK; and then type
-   'make netware' from the top source directory; other targets available
-   are 'netware-ssl', 'netware-ssl-zlib', 'netware-zlib' and 'netware-ares';
-   if you need other combinations you can control the build with the
-   environment variables WITH_SSL, WITH_ZLIB, WITH_ARES, WITH_SSH2, and
-   ENABLE_IPV6; you can set LINK_STATIC=1 to link curl.nlm statically.
-   By default LDAP support is enabled, however currently you will need a patch
-   in order to use the CLDAP NDK with BSD sockets (Novell Bug 300237):
-   http://www.gknw.net/test/curl/cldap_ndk/ldap_ndk.diff
-   I found on some Linux systems (RH9) that OS detection didn't work although
-   a 'set | grep OSTYPE' shows the var present and set; I simply overwrote it
-   with 'OSTYPE=linux-rh9-gnu' and the detection in the Makefile worked...
-   Any help in testing appreciated!
-   Builds automatically created 8 times a day from current git are here:
-   http://www.gknw.net/mirror/curl/autobuilds/
-   the status of these builds can be viewed at the autobuild table:
-   http://curl.haxx.se/auto/
-
-
-eCos
-====
-   curl does not use the eCos build system, so you must first build eCos
-   separately, then link curl to the resulting eCos library.  Here's a sample
-   configure line to do so on an x86 Linux box targeting x86:
-
-   GCCLIB=`gcc -print-libgcc-file-name` && \
-   CFLAGS="-D__ECOS=1 -nostdinc -I$ECOS_INSTALL/include \
-    -I`dirname $GCCLIB`/include" \
-   LDFLAGS="-nostdlib -Wl,--gc-sections -Wl,-static \
-    -L$ECOS_INSTALL/lib -Ttarget.ld -ltarget" \
-   ./configure --host=i386 --disable-shared \
-    --without-ssl --without-zlib --disable-manual --disable-ldap
-
-   In most cases, eCos users will be using libcurl from within a custom
-   embedded application.  Using the standard 'curl' executable from
-   within eCos means facing the limitation of the standard eCos C
-   startup code which does not allow passing arguments in main().  To
-   run 'curl' from eCos and have it do something useful, you will need
-   to either modify the eCos startup code to pass in some arguments, or
-   modify the curl application itself to retrieve its arguments from
-   some location set by the bootloader or hard-code them.
-
-   Something like the following patch could be used to hard-code some
-   arguments.  The MTAB_ENTRY line mounts a RAM disk as the root filesystem
-   (without mounting some kind of filesystem, eCos errors out all file
-   operations which curl does not take to well).  The next section synthesizes
-   some command-line arguments for curl to use, in this case to direct curl
-   to read further arguments from a file.  It then creates that file on the
-   RAM disk and places within it a URL to download: a file: URL that
-   just happens to point to the configuration file itself.  The results
-   of running curl in this way is the contents of the configuration file
-   printed to the console.
-
---- src/main.c  19 Jul 2006 19:09:56 -0000    1.363
-+++ src/main.c  24 Jul 2006 21:37:23 -0000
-@@ -4286,11 +4286,31 @@
- }
-
-
-+#ifdef __ECOS
-+#include <cyg/fileio/fileio.h>
-+MTAB_ENTRY( testfs_mte1,
-+                   "/",
-+                   "ramfs",
-+                   "",
-+                   0);
-+#endif
-
- int main(int argc, char *argv[])
- {
-   int res;
-   struct Configurable config;
-+#ifdef __ECOS
-+  char *args[] = {"ecos-curl", "-K", "curlconf.txt"};
-+  FILE *f;
-+  argc = sizeof(args)/sizeof(args[0]);
-+  argv = args;
-+
-+  f = fopen("curlconf.txt", "w");
-+  if (f) {
-+    fprintf(f, "--url file:curlconf.txt");
-+    fclose(f);
-+  }
-+#endif
-   memset(&config, 0, sizeof(struct Configurable));
-
-   config.errors = stderr; /* default errors to stderr */
-
-
-Minix
-=====
-   curl can be compiled on Minix 3 using gcc or ACK (starting with
-   ver. 3.1.3).  Ensure that GNU gawk and bash are both installed and
-   available in the PATH.
-
-   ACK
-   ---
-   Increase the heap sizes of the compiler with the command:
-
-     binsizes xxl
-
-   then configure and compile curl with:
-
-     ./configure CC=cc LD=cc AR=/usr/bin/aal GREP=grep \
-      CPPFLAGS='-D_POSIX_SOURCE=1 -I/usr/local/include'
-     make
-     chmem =256000 src/curl
-
-   GCC
-   ---
-   Make sure gcc is in your PATH with the command:
-
-     export PATH=/usr/gnu/bin:$PATH
-
-   then configure and compile curl with:
-
-     ./configure CC=gcc AR=/usr/gnu/bin/gar GREP=grep
-     make
-     chmem =256000 src/curl
-
-
-Symbian OS
-==========
-   The Symbian OS port uses the Symbian build system to compile.  From the
-   packages/Symbian/group/ directory, run:
-
-      bldmake bldfiles
-      abld build
-
-   to compile and install curl and libcurl using SBSv1. If your Symbian
-   SDK doesn't include support for P.I.P.S., you will need to contact
-   your SDK vendor to obtain that first.
-
-
-VxWorks
-========
-   Build for VxWorks is performed using cross compilation.
-   That means you build on Windows machine using VxWorks tools and
-   run the built image on the VxWorks device.
-
-   To build libcurl for VxWorks you need:
-
-      - CYGWIN (free, http://cygwin.com/)
-      - Wind River Workbench (commercial)
-
-   If you have CYGWIN and Workbench installed on you machine
-   follow after next steps:
-
-    1. Open the Command Prompt window and change directory ('cd')
-       to the libcurl 'lib' folder.
-    2. Add CYGWIN 'bin' folder to the PATH environment variable.
-       For example, type 'set PATH=C:/embedded/cygwin/bin;%PATH%'.
-    3. Adjust environment variables defined in 'Environment' section
-       of the Makefile.vxworks file to point to your software folders.
-    4. Build the libcurl by typing 'make -f ./Makefile.vxworks'
-
-   As a result the libcurl.a library should be created in the 'lib' folder.
-   To clean the build results type 'make -f ./Makefile.vxworks clean'.
-
-
-CROSS COMPILE
-=============
-   (This section was graciously brought to us by Jim Duey, with additions by
-   Dan Fandrich)
-
-   Download and unpack the cURL package.
-
-   'cd' to the new directory. (e.g. cd curl-7.12.3)
-
-   Set environment variables to point to the cross-compile toolchain and call
-   configure with any options you need.  Be sure and specify the '--host' and
-   '--build' parameters at configuration time.  The following script is an
-   example of cross-compiling for the IBM 405GP PowerPC processor using the
-   toolchain from MonteVista for Hardhat Linux.
-
-   (begin script)
-
-   #! /bin/sh
-
-   export PATH=$PATH:/opt/hardhat/devkit/ppc/405/bin
-   export CPPFLAGS="-I/opt/hardhat/devkit/ppc/405/target/usr/include"
-   export AR=ppc_405-ar
-   export AS=ppc_405-as
-   export LD=ppc_405-ld
-   export RANLIB=ppc_405-ranlib
-   export CC=ppc_405-gcc
-   export NM=ppc_405-nm
-
-   ./configure --target=powerpc-hardhat-linux \
-        --host=powerpc-hardhat-linux \
-        --build=i586-pc-linux-gnu \
-        --prefix=/opt/hardhat/devkit/ppc/405/target/usr/local \
-        --exec-prefix=/usr/local
-
-   (end script)
-
-   You may also need to provide a parameter like '--with-random=/dev/urandom'
-   to configure as it cannot detect the presence of a random number
-   generating device for a target system.  The '--prefix' parameter
-   specifies where cURL will be installed.  If 'configure' completes
-   successfully, do 'make' and 'make install' as usual.
-
-   In some cases, you may be able to simplify the above commands to as
-   little as:
-
-       ./configure --host=ARCH-OS
-
-
-REDUCING SIZE
-=============
-   There are a number of configure options that can be used to reduce the
-   size of libcurl for embedded applications where binary size is an
-   important factor.  First, be sure to set the CFLAGS variable when
-   configuring with any relevant compiler optimization flags to reduce the
-   size of the binary.  For gcc, this would mean at minimum the -Os option,
-   and potentially the -march=X and -mdynamic-no-pic options as well, e.g.
-
-      ./configure CFLAGS='-Os' ...
-
-   Note that newer compilers often produce smaller code than older versions
-   due to improved optimization.
-
-   Be sure to specify as many --disable- and --without- flags on the configure
-   command-line as you can to disable all the libcurl features that you
-   know your application is not going to need.  Besides specifying the
-   --disable-PROTOCOL flags for all the types of URLs your application
-   will not use, here are some other flags that can reduce the size of the
-   library:
-
-     --disable-ares (disables support for the C-ARES DNS library)
-     --disable-cookies (disables support for HTTP cookies)
-     --disable-crypto-auth (disables HTTP cryptographic authentication)
-     --disable-ipv6 (disables support for IPv6)
-     --disable-manual (disables support for the built-in documentation)
-     --disable-proxy (disables support for HTTP and SOCKS proxies)
-     --disable-verbose (eliminates debugging strings and error code strings)
-     --enable-hidden-symbols (eliminates unneeded symbols in the shared library)
-     --without-libidn (disables support for the libidn DNS library)
-     --without-ssl (disables support for SSL/TLS)
-     --without-zlib (disables support for on-the-fly decompression)
-
-   The GNU compiler and linker have a number of options that can reduce the
-   size of the libcurl dynamic libraries on some platforms even further.
-   Specify them by providing appropriate CFLAGS and LDFLAGS variables on the
-   configure command-line:
-     CFLAGS="-ffunction-sections -fdata-sections" \
-     LDFLAGS="-Wl,-s -Wl,-Bsymbolic -Wl,--gc-sections"
-
-   Be sure also to strip debugging symbols from your binaries after
-   compiling using 'strip' (or the appropriate variant if cross-compiling).
-   If space is really tight, you may be able to remove some unneeded
-   sections of the shared library using the -R option to objcopy (e.g. the
-   .comment section).
-
-   Using these techniques it is possible to create a basic HTTP-only shared
-   libcurl library for i386 Linux platforms that is only 98 KiB in size, and
-   an FTP-only library that is 94 KiB in size (as of libcurl version 7.20.0,
-   using gcc 4.3.3).
-
-   You may find that statically linking libcurl to your application will
-   result in a lower total size than dynamically linking.
-
-   Note that the curl test harness can detect the use of some, but not all, of
-   the --disable statements suggested above. Use will cause tests relying on
-   those features to fail.  The test harness can be manually forced to skip
-   the relevant tests by specifying certain key words on the runtests.pl
-   command line.  Following is a list of appropriate key words:
-
-     --disable-cookies          !cookies
-     --disable-crypto-auth      !HTTP\ Digest\ auth !HTTP\ proxy\ Digest\ auth
-     --disable-manual           !--manual
-     --disable-proxy            !HTTP\ proxy !proxytunnel !SOCKS4 !SOCKS5
-
-
-PORTS
-=====
-   This is a probably incomplete list of known hardware and operating systems
-   that curl has been compiled for. If you know a system curl compiles and
-   runs on, that isn't listed, please let us know!
-
-        - Alpha DEC OSF 4
-        - Alpha Digital UNIX v3.2
-        - Alpha FreeBSD 4.1, 4.5
-        - Alpha Linux 2.2, 2.4
-        - Alpha NetBSD 1.5.2
-        - Alpha OpenBSD 3.0
-        - Alpha OpenVMS V7.1-1H2
-        - Alpha Tru64 v5.0 5.1
-        - AVR32 Linux
-        - ARM Android 1.5
-        - ARM INTEGRITY
-        - ARM iPhone OS
-        - Cell Linux
-        - Cell Cell OS
-        - HP-PA HP-UX 9.X 10.X 11.X
-        - HP-PA Linux
-        - HP3000 MPE/iX
-        - MicroBlaze uClinux
-        - MIPS IRIX 6.2, 6.5
-        - MIPS Linux
-        - OS/400
-        - Pocket PC/Win CE 3.0
-        - Power AIX 3.2.5, 4.2, 4.3.1, 4.3.2, 5.1, 5.2
-        - PowerPC Darwin 1.0
-        - PowerPC INTEGRITY
-        - PowerPC Linux
-        - PowerPC Mac OS 9
-        - PowerPC Mac OS X
-        - SH4 Linux 2.6.X
-        - SH4 OS21
-        - SINIX-Z v5
-        - Sparc Linux
-        - Sparc Solaris 2.4, 2.5, 2.5.1, 2.6, 7, 8, 9, 10
-        - Sparc SunOS 4.1.X
-        - StrongARM (and other ARM) RISC OS 3.1, 4.02
-        - StrongARM/ARM7/ARM9 Linux 2.4, 2.6
-        - StrongARM NetBSD 1.4.1
-        - Symbian OS (P.I.P.S.) 9.x
-        - TPF
-        - Ultrix 4.3a
-        - UNICOS 9.0
-        - i386 BeOS
-        - i386 DOS
-        - i386 eCos 1.3.1
-        - i386 Esix 4.1
-        - i386 FreeBSD
-        - i386 HURD
-        - i386 Haiku OS
-        - i386 Linux 1.3, 2.0, 2.2, 2.3, 2.4, 2.6
-        - i386 MINIX 3.1
-        - i386 NetBSD
-        - i386 Novell NetWare
-        - i386 OS/2
-        - i386 OpenBSD
-        - i386 QNX 6
-        - i386 SCO unix
-        - i386 Solaris 2.7
-        - i386 Windows 95, 98, ME, NT, 2000, XP, 2003
-        - i486 ncr-sysv4.3.03 (NCR MP-RAS)
-        - ia64 Linux 2.3.99
-        - m68k AmigaOS 3
-        - m68k Linux
-        - m68k uClinux
-        - m68k OpenBSD
-        - m88k dg-dgux5.4R3.00
-        - s390 Linux
-        - x86_64 Linux
-        - XScale/PXA250 Linux 2.4
-        - Nios II uClinux
-
-Useful URLs
-===========
-
-OpenSSL   http://www.openssl.org
-MingW     http://www.mingw.org
-OpenLDAP  http://www.openldap.org
-Zlib      http://www.gzip.org/zlib/
-libssh2   http://www.libssh2.org
-
-
diff --git a/src/other/curl/docs/INSTALL.devcpp b/src/other/curl/docs/INSTALL.devcpp
deleted file mode 100644
index 7f58e4b..0000000
--- a/src/other/curl/docs/INSTALL.devcpp
+++ /dev/null
@@ -1,302 +0,0 @@
-DevCpp-Mingw Install & Compilation                                   Sept 2005
-==================================
-
-Reference Emails available at curl at haxx.se:
-
-  Libcurl Install and Use Issues
-  Awaiting an Answer for Win 32 Install
-  res = curl_easy_perform(curl); Error
-  Makefile Issues
-
-
-Having previously done a thorough review of what was available that met my
-requirements under GPL, I settled for Libcurl as the software of choice for
-many reasons not the least of which was the support.
-
-Background
-----------
-
-This quest started when I innocently tried to incorporate the libcurl library
-into my simple source code. I figured that a few easy steps would accomplish
-this without major headaches. I had no idea that I would be facing an almost
-insurmountable challenge.
-
-The main problem lies in two areas. First the bulk of support for libcurl
-exists for a Unix/linux command line environments. This is of little help when
-it comes to Windows O/S.
-
-Secondly the help that does exist for the Windows O/S focused around mingw
-thru a command line argument environment.
-
-You may ask "Why is this a problem?"
-
-I'm using a Windows O/S with DevCpp. For those of you who are unfamiliar with
-DevCpp, it is a window shell GUI that replaces the command line environment
-for gcc. A definite improvement that I am unwilling to give up. However using
-DevCpp presented its own set of issues. Inadvertently I also made some
-careless errors such as compiling the 7.14 version of Makefile with an older
-version of source code. Thanks to Dan Fandrich for picking this up.
-
-I did eventually with the help of Daniel, Phillipe and others manage to
-implement successfully (the only mingw available version)
-curl-7.13.0-win32-ssl-devel-mingw32 into the DevCpp environment. Only the
-dynamic libcurl.dll libcurldll.a libraries worked. The static library which I
-was interested in did not. Furthermore when I tried to implement one of the
-examples included with the curl package (get info.c) it caused the executable
-to crash. Tracing the bug I found it in the code and function res =
-curl_easy_perform(curl);.
-
-At this point I had to make a choice as to whether invest my limited
-time-energy resource to fixing the bug or to compile the new version
-available. After searching the archives I found a very similar or the same bug
-reported from version 7.12x on. Daniel did inform me that he thought that this
-bug had been fixed with the latest version. So I proceeded to compile the
-latest SSL version where I faced other challenges.
-
-In order to make this process unremarkable for others using the same
-environment I decided to document the process so that others will find it
-routine. It would be a shame if newbies could not implement this excellent
-package for their use.
-
-I would like to thank the many others in this forum and in the DevCpp forum
-for their help. Without your help I may either have given up or it would have
-taken me many times longer to achieve success.
-
-The Cookbook Approach
----------------------
-
-This discussion will be confined to a SSL static library compilation and
-installation. Limited mention and comments will be inserted where appropriate
-to help with non-SSL, dynamic libraries and executables.
-
-
-   Using Makefile from DevCpp to compile Libcurl libraries
-
-Preamble
---------
-
-Using the latest version release - curl-7.14.0.tar.gz. Curl source code is
-platform independent. This simply means that the source code can be compiled
-for any Operating System (Linux/Unix Windows etc. and variations of thereof).
-
-The first thing to note is that inside curl-7.14.0 you will find two folders
-lib and src. Both contain Makefile.m32 (required for win mingw library or exe
-compilation) files which are different. The main difference between these two
-folders and the makefiles is that the src folder contents are used to compile
-an executable file(curl.exe) while the lib folder contents are used to compile
-a static (libcurl.a) and dynamic (libcurl.dll & libcurldll.a) file that can be
-used to compile libcurl with your own source code so that one can use and
-access all libcurl functions.
-
-Before we start please make sure that DevCpp is installed properly. In
-particular make sure you have no spaces in the name of any of the directories
-and subdirectories where DevCpp is installed. Failure to comply with the
-install instructions may produce erratic behaviour in DevCpp. For further info
-check the following sites
-
-http://aditsu.freeunixhost.com/dev-cpp-faq.html
-http://sourceforge.net/forum/message.php?msg_id=3252213
-
-As I have mentioned before I will confine this to the SSL Library compilations
-but the process is very similar for compilation of the executable - curl.exe;
-just substitute the src folder makefile in its stead.
-
-First use a text processor Notepad, or your own favourite text processor. To
-engage your favourite text processor, select Makefile.m32 click once with your
-mouse on file icon; icon turns blue, press the shift key and right-click on
-mouse, menu appears select "Open with", select your favourite text processor.
-
-Next read the contents of Makefile.m32. It includes instructions on its use.
-
-Method I - DOS Command Line
----------------------------
-
-Note - The only reason I have included this method is that Method II which is
-the preferred method for compiling does not allow for the setting of option
-switches (e.g. SSL = 1 or SSL =0). At least that's what they tell me at the
-Dev-Cpp forum.
-
-1 - Make a copy of (D:\Dev-Cpp\bin) bin folder and name it "bin Original"
-place it in the Dev-Cpp installed directory (D:\Dev-Cpp\ for this example)
-
-2 - Copy the entire contents of the LIB folder of curl-7.14.0.tar.gz or zip
-version into the bin folder above (D:\Dev-Cpp\bin). The reason being is that
-the make.exe file resides in this folder. Make.exe will use - Makefile.m32,
-Makefile.inc, and the source code included in the lib folder to compile the
-source code. There is a PATH issue with make.exe that remains unresolved at
-least for me. Unless the entire source code to be compiled is placed entirely
-within the directory of make.exe an error message will be generated - "file
-xxxx.yyy not available".
-
-3- Go to Dev-Cpp\bin and double click on make .exe. You will see a DOS window
-quickly pop up and close very quickly. Not to worry! Please do not skip this
-step.
-
-4- Click on the start button\Programs\MS-DOS Prompt.Once the DOS Window is up
-Type the disk drive letter (e.g. E: ) engage the enter button. The path should
-automatically take you to the directory of the make.exe file.
-
-5- To compile the source code simply type at the DOS prompt make -f
-Makefile.m32 as per instructions contained in the Makefile.m32 file (use any
-text processor to read instructions). I don't believe that this makefile
-allows for the option of non SSL. Ignore any warnings.
-
-6- Collect and make copies of libcurl.a, libcurl.dll, libcurldll.a and any *.o
-compilations you might need in another directory outside of the bin directory
-as you will need this files shortly to set up libcurl for use with
-Dev-cpp. For most apps *.o is not required. Later on we will show what to do
-with these files.
-
-7- You are finished but before closing we need to do cleanup - erase the bin
-folder and rename the "bin Original" folder created in step 1 to bin.
-
-Note to compile a curl executable the process is probably similar but instead
-of using the LIB folder contents use the SRC folder contents and Makefiles in
-curl-7.14.0.tar.gz. File directories relative placements must be respected for
-compiling to take place successfully. This may not be possible with the PATH
-problem that make.exe experiences. If anyone has solved this PATH issue and
-please make sure it actually works on Win 9x/2000/XP before letting me
-know. Then please let me or Daniel in on the solution so that it can be
-included with these instructions. Thanks.
-
-or
-
-Method II - Dev-Cpp GUI
------------------------
-
-1- Copy the entire contents of the LIB folder of curl-7.14.0.tar.gz or zip
-version into any folder outside of (Dev-Cpp\bin).
-
-2- Drop the File/New/click on Project.
-
-3- New Project Dialogue box appears. Double click on the Static Library.
-
-4- Create Project Dialogue box appears. Select the LIB folder location to
-place and locate your Project File Name. Placing the Project File Name
-elsewhere may cause problems (PATH issue problem again).
-
-5- Drop down the Project/Project Options. Project Options Dialogue box
-appears.
-
-6- Select the Makefile tab in the Project Options Dialogue Box. Check Box -
-Use Custom Makefile. Click on the Folder icon at the extreme right of the
-Check Box. Select Makefile.m32 in the folder wherever you have placed the
-contents of the LIB Folder. Press OK and close the Dialogue Box.
-
-7- Drop the Menu Project/Click on Add to Project. Open File Dialogue Box
-appears.  The Dialogue Box should open in the folder wherever you have placed
-the contents of the LIB Folder. If not go there.
-
-8- Select Crtl-A to select all files in the LIB folder. Click on open to add
-files and close box. Wait till all files are added. This may take 30 seconds
-or longer.
-
-9- Drop the Menu Execute/Click on Compile.
-
-10- That's it.
-
-
-   The following steps must be completed if Curl is to work properly
-   =================================================================
-
-LIB folder inclusions (*.a placement)
--------------------------------------
-
-1- Refer to Method I - DOS Command Line point # 6 Take libcurl.a, libcurldll.a
-and install it in the directory C( or whichever drive Dev is installed)
-:\Dev-Cpp\lib.
-
-
-Include Folder
---------------
-
-1- Create a new folder by the name of curl (do not change the name curl to
-some other name as it will cause major issues) in the directory
-C:\Dev-Cpp\include.
-
-2- Copy the entire contents of the curl folder of curl-7.14.0.tar.gz or zip
- version into the newly created curl directory - C:\Dev-Cpp\include\curl.
-
-Links To Include And Lib Folder
--------------------------------
-
-1- Drop the Menu - Tools\Compiler Options\Directories\Libraries. Make sure
-that C( or whichever drive Dev is installed):\DEV-CPP\lib is included.
-
-2- Next select the Menu - Tools\Compiler Options\Directories\C Includes. Make
-sure that C:\DEV-CPP\include and C:\Dev-Cpp\include\curl are included.
-
-3- Next select the Menu - Tools\Compiler Options\Directories\C++
-Includes. Make sure that C:\DEV-CPP\include and C:\Dev-Cpp\include\curl are
-included.
-
-Linker Links
-------------
-
-1- Drop the Menu - Tools\Compiler Options\Directories\Compiler.
-
-2- Make sure that the box "Add these commands to the linker command line" is
-checked.
-
-3- Include in the white space immediately below the box referred in 2 -lcurl
--lws2_32.
-
-SSL Files
----------
-
-1- Get the latest openSSL (as of time of this writing)
-openssl-0.9.7e-win32-bin.zip for the minimalist package of the openssl-0.9.7e
-binaries ported to MS Windows 95/98/NT/XP using the MingW32/GCC-3.1
-development environment. The file may be downloaded at
-http://curl.haxx.se/download/.
-
-2- Open the above zip file. You will find two files - SDL.dll,
-SDL_mixer.dll. Install them in the directory C:\WINDOWS\SYSTEM32 for Win 9x
-users and c:\winnt\system32 for NT-family users.
-
-Multithreading Files
---------------------
-
-To be completed
-
-#define
--------
-
-1- Make sure that your program includes the following - #define CURL_STATICLIB
-must be declared FIRST before any other define functions may be
-added. Otherwise you may experience link errors.
-
-2- Don't forget to include   #include "curl/curl.h".
-
-e.g.
-    #define CURL_STATICLIB
-#include <windows.h>
-    #include "curl/curl.h"
-#include <fstream>
-#include <iostream>
-#include <vector>
-etc...
-
-
-Static or Dynamic Library
--------------------------
-
-The above steps apply for the use by a static library. Should you choose to
-use a dynamic library you will be required to perform these additional steps.
-
-1- Refer to Method I - DOS Command Line point # 6. Install libcurl.dll in the
-directory C:\WINDOWS\SYSTEM32 for Win 9x users and c:\winnt\system32 for
-NT-family users.
-
-2- Refer to Linker Links point 3 - Replace -lcurl with -lcurldll.
-
-Voila you're done.
-
-The non-SSL static Library build may not be possible to use at least as of the
-time of this writing - v7.14. Check reference emails - Phillipe and I found it
-impossible to fully compile as certain files were missing for linking. No big
-loss as SSL is a major plus.
-
-Hope this Helps
-
-Tom
diff --git a/src/other/curl/docs/INTERNALS b/src/other/curl/docs/INTERNALS
deleted file mode 100644
index 630b72b..0000000
--- a/src/other/curl/docs/INTERNALS
+++ /dev/null
@@ -1,488 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-INTERNALS
-
- The project is split in two. The library and the client. The client part uses
- the library, but the library is designed to allow other applications to use
- it.
-
- The largest amount of code and complexity is in the library part.
-
-GIT
-===
- All changes to the sources are committed to the git repository as soon as
- they're somewhat verified to work. Changes shall be commited as independently
- as possible so that individual changes can be easier spotted and tracked
- afterwards.
-
- Tagging shall be used extensively, and by the time we release new archives we
- should tag the sources with a name similar to the released version number.
-
-Portability
-===========
-
- We write curl and libcurl to compile with C89 compilers.  On 32bit and up
- machines. Most of libcurl assumes more or less POSIX compliance but that's
- not a requirement.
-
- We write libcurl to build and work with lots of third party tools, and we
- want it to remain functional and buildable with these and later versions
- (older versions may still work but is not what we work hard to maintain):
-
- OpenSSL      0.9.6
- GnuTLS       1.2
- zlib         1.1.4
- libssh2      0.16
- c-ares       1.5.0
- libidn       0.4.1
- *yassl       1.4.0 (http://curl.haxx.se/mail/lib-2008-02/0093.html)
- openldap     2.0
- MIT krb5 lib 1.2.4
- qsossl       V5R2M0
- NSS          3.11.x
- Heimdal      ?
-
- * = only partly functional, but that's due to bugs in the third party lib, not
-     because of libcurl code
-
- On systems where configure runs, we aim at working on them all - if they have
- a suitable C compiler. On systems that don't run configure, we strive to keep
- curl running fine on:
-
- Windows      98
- AS/400       V5R2M0
- Symbian      9.1
- Windows CE   ?
- TPF          ?
-
- When writing code (mostly for generating stuff included in release tarballs)
- we use a few "build tools" and we make sure that we remain functional with
- these versions:
-
- GNU Libtool  1.4.2
- GNU Autoconf 2.57
- GNU Automake 1.7 (we currently avoid 1.10 due to Solaris-related bugs)
- GNU M4       1.4
- perl         4
- roffit       0.5
- groff        ? (any version that supports "groff -Tps -man [in] [out]")
- ps2pdf (gs)  ?
-
-Windows vs Unix
-===============
-
- There are a few differences in how to program curl the unix way compared to
- the Windows way. The four perhaps most notable details are:
-
- 1. Different function names for socket operations.
-
-   In curl, this is solved with defines and macros, so that the source looks
-   the same at all places except for the header file that defines them. The
-   macros in use are sclose(), sread() and swrite().
-
- 2. Windows requires a couple of init calls for the socket stuff.
-
-   That's taken care of by the curl_global_init() call, but if other libs also
-   do it etc there might be reasons for applications to alter that behaviour.
-
- 3. The file descriptors for network communication and file operations are
-    not easily interchangable as in unix.
-
-   We avoid this by not trying any funny tricks on file descriptors.
-
- 4. When writing data to stdout, Windows makes end-of-lines the DOS way, thus
-    destroying binary data, although you do want that conversion if it is
-    text coming through... (sigh)
-
-   We set stdout to binary under windows
-
- Inside the source code, We make an effort to avoid '#ifdef [Your OS]'. All
- conditionals that deal with features *should* instead be in the format
- '#ifdef HAVE_THAT_WEIRD_FUNCTION'. Since Windows can't run configure scripts,
- we maintain two curl_config-win32.h files (one in lib/ and one in src/) that
- are supposed to look exactly as a curl_config.h file would have looked like on
- a Windows machine!
-
- Generally speaking: always remember that this will be compiled on dozens of
- operating systems. Don't walk on the edge.
-
-Library
-=======
-
- There are plenty of entry points to the library, namely each publicly defined
- function that libcurl offers to applications. All of those functions are
- rather small and easy-to-follow. All the ones prefixed with 'curl_easy' are
- put in the lib/easy.c file.
-
- curl_global_init_() and curl_global_cleanup() should be called by the
- application to initialize and clean up global stuff in the library. As of
- today, it can handle the global SSL initing if SSL is enabled and it can init
- the socket layer on windows machines. libcurl itself has no "global" scope.
-
- All printf()-style functions use the supplied clones in lib/mprintf.c. This
- makes sure we stay absolutely platform independent.
-
- curl_easy_init() allocates an internal struct and makes some initializations.
- The returned handle does not reveal internals. This is the 'SessionHandle'
- struct which works as an "anchor" struct for all curl_easy functions. All
- connections performed will get connect-specific data allocated that should be
- used for things related to particular connections/requests.
-
- curl_easy_setopt() takes three arguments, where the option stuff must be
- passed in pairs: the parameter-ID and the parameter-value. The list of
- options is documented in the man page. This function mainly sets things in
- the 'SessionHandle' struct.
-
- curl_easy_perform() does a whole lot of things:
-
- It starts off in the lib/easy.c file by calling Curl_perform() and the main
- work then continues in lib/url.c. The flow continues with a call to
- Curl_connect() to connect to the remote site.
-
- o Curl_connect()
-
-   ... analyzes the URL, it separates the different components and connects to
-   the remote host. This may involve using a proxy and/or using SSL. The
-   Curl_resolv() function in lib/hostip.c is used for looking up host names
-   (it does then use the proper underlying method, which may vary between
-   platforms and builds).
-
-   When Curl_connect is done, we are connected to the remote site. Then it is
-   time to tell the server to get a document/file. Curl_do() arranges this.
-
-   This function makes sure there's an allocated and initiated 'connectdata'
-   struct that is used for this particular connection only (although there may
-   be several requests performed on the same connect). A bunch of things are
-   inited/inherited from the SessionHandle struct.
-
- o Curl_do()
-
-   Curl_do() makes sure the proper protocol-specific function is called. The
-   functions are named after the protocols they handle. Curl_ftp(),
-   Curl_http(), Curl_dict(), etc. They all reside in their respective files
-   (ftp.c, http.c and dict.c). HTTPS is handled by Curl_http() and FTPS by
-   Curl_ftp().
-
-   The protocol-specific functions of course deal with protocol-specific
-   negotiations and setup. They have access to the Curl_sendf() (from
-   lib/sendf.c) function to send printf-style formatted data to the remote
-   host and when they're ready to make the actual file transfer they call the
-   Curl_Transfer() function (in lib/transfer.c) to setup the transfer and
-   returns.
-
-   If this DO function fails and the connection is being re-used, libcurl will
-   then close this connection, setup a new connection and re-issue the DO
-   request on that. This is because there is no way to be perfectly sure that
-   we have discovered a dead connection before the DO function and thus we
-   might wrongly be re-using a connection that was closed by the remote peer.
-
-   Some time during the DO function, the Curl_setup_transfer() function must
-   be called with some basic info about the upcoming transfer: what socket(s)
-   to read/write and the expected file tranfer sizes (if known).
-
- o Transfer()
-
-   Curl_perform() then calls Transfer() in lib/transfer.c that performs the
-   entire file transfer.
-
-   During transfer, the progress functions in lib/progress.c are called at a
-   frequent interval (or at the user's choice, a specified callback might get
-   called). The speedcheck functions in lib/speedcheck.c are also used to
-   verify that the transfer is as fast as required.
-
- o Curl_done()
-
-   Called after a transfer is done. This function takes care of everything
-   that has to be done after a transfer. This function attempts to leave
-   matters in a state so that Curl_do() should be possible to call again on
-   the same connection (in a persistent connection case). It might also soon
-   be closed with Curl_disconnect().
-
- o Curl_disconnect()
-
-   When doing normal connections and transfers, no one ever tries to close any
-   connections so this is not normally called when curl_easy_perform() is
-   used. This function is only used when we are certain that no more transfers
-   is going to be made on the connection. It can be also closed by force, or
-   it can be called to make sure that libcurl doesn't keep too many
-   connections alive at the same time (there's a default amount of 5 but that
-   can be changed with the CURLOPT_MAXCONNECTS option).
-
-   This function cleans up all resources that are associated with a single
-   connection.
-
- Curl_perform() is the function that does the main "connect - do - transfer -
- done" loop. It loops if there's a Location: to follow.
-
- When completed, the curl_easy_cleanup() should be called to free up used
- resources. It runs Curl_disconnect() on all open connectons.
-
- A quick roundup on internal function sequences (many of these call
- protocol-specific function-pointers):
-
-  curl_connect - connects to a remote site and does initial connect fluff
-   This also checks for an existing connection to the requested site and uses
-   that one if it is possible.
-
-   curl_do - starts a transfer
-    curl_transfer() - transfers data
-   curl_done - ends a transfer
-
-  curl_disconnect - disconnects from a remote site. This is called when the
-   disconnect is really requested, which doesn't necessarily have to be
-   exactly after curl_done in case we want to keep the connection open for
-   a while.
-
- HTTP(S)
-
- HTTP offers a lot and is the protocol in curl that uses the most lines of
- code. There is a special file (lib/formdata.c) that offers all the multipart
- post functions.
-
- base64-functions for user+password stuff (and more) is in (lib/base64.c) and
- all functions for parsing and sending cookies are found in (lib/cookie.c).
-
- HTTPS uses in almost every means the same procedure as HTTP, with only two
- exceptions: the connect procedure is different and the function used to read
- or write from the socket is different, although the latter fact is hidden in
- the source by the use of curl_read() for reading and curl_write() for writing
- data to the remote server.
-
- http_chunks.c contains functions that understands HTTP 1.1 chunked transfer
- encoding.
-
- An interesting detail with the HTTP(S) request, is the add_buffer() series of
- functions we use. They append data to one single buffer, and when the
- building is done the entire request is sent off in one single write. This is
- done this way to overcome problems with flawed firewalls and lame servers.
-
- FTP
-
- The Curl_if2ip() function can be used for getting the IP number of a
- specified network interface, and it resides in lib/if2ip.c.
-
- Curl_ftpsendf() is used for sending FTP commands to the remote server. It was
- made a separate function to prevent us programmers from forgetting that they
- must be CRLF terminated. They must also be sent in one single write() to make
- firewalls and similar happy.
-
- Kerberos
-
- The kerberos support is mainly in lib/krb4.c and lib/security.c.
-
- TELNET
-
- Telnet is implemented in lib/telnet.c.
-
- FILE
-
- The file:// protocol is dealt with in lib/file.c.
-
- LDAP
-
- Everything LDAP is in lib/ldap.c.
-
- GENERAL
-
- URL encoding and decoding, called escaping and unescaping in the source code,
- is found in lib/escape.c.
-
- While transfering data in Transfer() a few functions might get used.
- curl_getdate() in lib/parsedate.c is for HTTP date comparisons (and more).
-
- lib/getenv.c offers curl_getenv() which is for reading environment variables
- in a neat platform independent way. That's used in the client, but also in
- lib/url.c when checking the proxy environment variables. Note that contrary
- to the normal unix getenv(), this returns an allocated buffer that must be
- free()ed after use.
-
- lib/netrc.c holds the .netrc parser
-
- lib/timeval.c features replacement functions for systems that don't have
- gettimeofday() and a few support functions for timeval convertions.
-
- A function named curl_version() that returns the full curl version string is
- found in lib/version.c.
-
-Persistent Connections
-======================
-
- The persistent connection support in libcurl requires some considerations on
- how to do things inside of the library.
-
- o The 'SessionHandle' struct returned in the curl_easy_init() call must never
-   hold connection-oriented data. It is meant to hold the root data as well as
-   all the options etc that the library-user may choose.
- o The 'SessionHandle' struct holds the "connection cache" (an array of
-   pointers to 'connectdata' structs). There's one connectdata struct
-   allocated for each connection that libcurl knows about. Note that when you
-   use the multi interface, the multi handle will hold the connection cache
-   and not the particular easy handle. This of course to allow all easy handles
-   in a multi stack to be able to share and re-use connections.
- o This enables the 'curl handle' to be reused on subsequent transfers.
- o When we are about to perform a transfer with curl_easy_perform(), we first
-   check for an already existing connection in the cache that we can use,
-   otherwise we create a new one and add to the cache. If the cache is full
-   already when we add a new connection, we close one of the present ones. We
-   select which one to close dependent on the close policy that may have been
-   previously set.
- o When the transfer operation is complete, we try to leave the connection
-   open. Particular options may tell us not to, and protocols may signal
-   closure on connections and then we don't keep it open of course.
- o When curl_easy_cleanup() is called, we close all still opened connections,
-   unless of course the multi interface "owns" the connections.
-
- You do realize that the curl handle must be re-used in order for the
- persistent connections to work.
-
-multi interface/non-blocking
-============================
-
- We make an effort to provide a non-blocking interface to the library, the
- multi interface. To make that interface work as good as possible, no
- low-level functions within libcurl must be written to work in a blocking
- manner.
-
- One of the primary reasons we introduced c-ares support was to allow the name
- resolve phase to be perfectly non-blocking as well.
-
- The ultimate goal is to provide the easy interface simply by wrapping the
- multi interface functions and thus treat everything internally as the multi
- interface is the single interface we have.
-
- The FTP and the SFTP/SCP protocols are thus perfect examples of how we adapt
- and adjust the code to allow non-blocking operations even on multi-stage
- protocols. The DICT, TELNET and TFTP are crappy examples and they are subject
- for rewrite in the future to better fit the libcurl protocol family.
-
-SSL libraries
-=============
-
- Originally libcurl supported SSLeay for SSL/TLS transports, but that was then
- extended to its successor OpenSSL but has since also been extended to several
- other SSL/TLS libraries and we expect and hope to further extend the support
- in future libcurl versions.
-
- To deal with this internally in the best way possible, we have a generic SSL
- function API as provided by the sslgen.[ch] system, and they are the only SSL
- functions we must use from within libcurl. sslgen is then crafted to use the
- appropriate lower-level function calls to whatever SSL library that is in
- use.
-
-Library Symbols
-===============
-
- All symbols used internally in libcurl must use a 'Curl_' prefix if they're
- used in more than a single file. Single-file symbols must be made static.
- Public ("exported") symbols must use a 'curl_' prefix. (There are exceptions,
- but they are to be changed to follow this pattern in future versions.)
-
-Return Codes and Informationals
-===============================
-
- I've made things simple. Almost every function in libcurl returns a CURLcode,
- that must be CURLE_OK if everything is OK or otherwise a suitable error code
- as the curl/curl.h include file defines. The very spot that detects an error
- must use the Curl_failf() function to set the human-readable error
- description.
-
- In aiding the user to understand what's happening and to debug curl usage, we
- must supply a fair amount of informational messages by using the Curl_infof()
- function. Those messages are only displayed when the user explicitly asks for
- them. They are best used when revealing information that isn't otherwise
- obvious.
-
-API/ABI
-=======
-
- We make an effort to not export or show internals or how internals work, as
- that makes it easier to keep a solid API/ABI over time. See docs/libcurl/ABI
- for our promise to users.
-
-Client
-======
-
- main() resides in src/main.c together with most of the client code.
-
- src/hugehelp.c is automatically generated by the mkhelp.pl perl script to
- display the complete "manual" and the src/urlglob.c file holds the functions
- used for the URL-"globbing" support. Globbing in the sense that the {} and []
- expansion stuff is there.
-
- The client mostly messes around to setup its 'config' struct properly, then
- it calls the curl_easy_*() functions of the library and when it gets back
- control after the curl_easy_perform() it cleans up the library, checks status
- and exits.
-
- When the operation is done, the ourWriteOut() function in src/writeout.c may
- be called to report about the operation. That function is using the
- curl_easy_getinfo() function to extract useful information from the curl
- session.
-
- Recent versions may loop and do all this several times if many URLs were
- specified on the command line or config file.
-
-Memory Debugging
-================
-
- The file lib/memdebug.c contains debug-versions of a few functions. Functions
- such as malloc, free, fopen, fclose, etc that somehow deal with resources
- that might give us problems if we "leak" them. The functions in the memdebug
- system do nothing fancy, they do their normal function and then log
- information about what they just did. The logged data can then be analyzed
- after a complete session,
-
- memanalyze.pl is the perl script present in tests/ that analyzes a log file
- generated by the memory tracking system. It detects if resources are
- allocated but never freed and other kinds of errors related to resource
- management.
-
- Internally, definition of preprocessor symbol DEBUGBUILD restricts code which
- is only compiled for debug enabled builds. And symbol CURLDEBUG is used to
- differentiate code which is _only_ used for memory tracking/debugging.
-
- Use -DCURLDEBUG when compiling to enable memory debugging, this is also
- switched on by running configure with --enable-curldebug. Use -DDEBUGBUILD
- when compiling to enable a debug build or run configure with --enable-debug.
-
- curl --version will list 'Debug' feature for debug enabled builds, and
- will list 'TrackMemory' feature for curl debug memory tracking capable
- builds. These features are independent and can be controlled when running
- the configure script. When --enable-debug is given both features will be
- enabled, unless some restriction prevents memory tracking from being used.
-
-Test Suite
-==========
-
- Since November 2000, a test suite has evolved. It is placed in its own
- subdirectory directly off the root in the curl archive tree, and it contains
- a bunch of scripts and a lot of test case data.
-
- The main test script is runtests.pl that will invoke the two servers
- httpserver.pl and ftpserver.pl before all the test cases are performed. The
- test suite currently only runs on unix-like platforms.
-
- You'll find a complete description of the test case data files in the
- tests/README file.
-
- The test suite automatically detects if curl was built with the memory
- debugging enabled, and if it was it will detect memory leaks too.
-
-Building Releases
-=================
-
- There's no magic to this. When you consider everything stable enough to be
- released, run the 'maketgz' script (using 'make distcheck' will give you a
- pretty good view on the status of the current sources). maketgz prompts for
- version number of the client and the library before it creates a release
- archive. maketgz uses 'make dist' for the actual archive building, why you
- need to fill in the Makefile.am files properly for which files that should
- be included in the release archives.
-
- NOTE: you need to have curl checked out from git to be able to do a proper
- release build. The release tarballs do not have everything setup in order to
- do releases properly.
diff --git a/src/other/curl/docs/KNOWN_BUGS b/src/other/curl/docs/KNOWN_BUGS
deleted file mode 100644
index 92b92ff..0000000
--- a/src/other/curl/docs/KNOWN_BUGS
+++ /dev/null
@@ -1,235 +0,0 @@
-These are problems known to exist at the time of this release. Feel free to
-join in and help us correct one or more of these! Also be sure to check the
-changelog of the current development status, as one or more of these problems
-may have been fixed since this was written!
-
-75. NTLM authentication involving unicode user name or password.
-  http://curl.haxx.se/mail/lib-2009-10/0024.html
-  http://curl.haxx.se/bug/view.cgi?id=2944325
-
-74. The HTTP spec allows headers to be merged and become comma-separated
-  instead of being repeated several times. This also include Authenticate: and
-  Proxy-Authenticate: headers and while this hardly every happens in real life
-  it will confuse libcurl which does not properly support it for all headers -
-  like those Authenticate headers.
-
-73. if a connection is made to a FTP server but the server then just never
-  sends the 220 response or otherwise is dead slow, libcurl will not
-  acknowledge the connection timeout during that phase but only the "real"
-  timeout - which may surprise users as it is probably considered to be the
-  connect phase to most people. Brought up (and is being misunderstood) in:
-  http://curl.haxx.se/bug/view.cgi?id=2844077
-
-72. "Pausing pipeline problems."
-  http://curl.haxx.se/mail/lib-2009-07/0214.html
-
-70. Problem re-using easy handle after call to curl_multi_remove_handle
-  http://curl.haxx.se/mail/lib-2009-07/0249.html
-
-68. "More questions about ares behavior".
-  http://curl.haxx.se/mail/lib-2009-08/0012.html
-
-67. When creating multipart formposts. The file name part can be encoded with
-  something beyond ascii but currently libcurl will only pass in the verbatim
-  string the app provides. There are several browsers that already do this
-  encoding. The key seems to be the updated draft to RFC2231:
-  http://tools.ietf.org/html/draft-reschke-rfc2231-in-http-02
-
-66. When using telnet, the time limitation options don't work.
-  http://curl.haxx.se/bug/view.cgi?id=2818950
-
-65. When doing FTP over a socks proxy or CONNECT through HTTP proxy and the
-  multi interface is used, libcurl will fail if the (passive) TCP connection
-  for the data transfer isn't more or less instant as the code does not
-  properly wait for the connect to be confirmed. See test case 564 for a first
-  shot at a test case.
-
-63. When CURLOPT_CONNECT_ONLY is used, the handle cannot reliably be re-used
-  for any further requests or transfers. The work-around is then to close that
-  handle with curl_easy_cleanup() and create a new. Some more details:
-  http://curl.haxx.se/mail/lib-2009-04/0300.html
-
-62. CURLOPT_TIMEOUT does not work properly with the regular multi and
-  multi_socket interfaces. The work-around for apps is to simply remove the
-  easy handle once the time is up. See also:
-  http://curl.haxx.se/bug/view.cgi?id=2501457
-
-61. If an upload using Expect: 100-continue receives an HTTP 417 response,
-  it ought to be automatically resent without the Expect:.  A workaround is
-  for the client application to redo the transfer after disabling Expect:.
-  http://curl.haxx.se/mail/archive-2008-02/0043.html
-
-60. libcurl closes the connection if an HTTP 401 reply is received while it
-  is waiting for the the 100-continue response.
-  http://curl.haxx.se/mail/lib-2008-08/0462.html
-
-59. If the CURLOPT_PORT option is used on an FTP URL like
-  "ftp://example.com/file;type=A" using a proxy, the ";type=A" is stripped off.
-  See the comment in parse_remote_port()
-
-58. It seems sensible to be able to use CURLOPT_NOBODY and
-  CURLOPT_FAILONERROR with FTP to detect if a file exists or not, but it is
-  not working: http://curl.haxx.se/mail/lib-2008-07/0295.html
-
-57. On VMS-Alpha: When using an http-file-upload the file is not sent to the
-  Server with the correct content-length.  Sending a file with 511 or less
-  bytes, content-length 512 is used.  Sending a file with 513 - 1023 bytes,
-  content-length 1024 is used.  Files with a length of a multiple of 512 Bytes
-  show the correct content-length. Only these files work for upload.
-  http://curl.haxx.se/bug/view.cgi?id=2057858
-
-56. When libcurl sends CURLOPT_POSTQUOTE commands when connected to a SFTP
-  server using the multi interface, the commands are not being sent correctly
-  and instead the connection is "cancelled" (the operation is considered done)
-  prematurely. There is a half-baked (busy-looping) patch provided in the bug
-  report but it cannot be accepted as-is. See
-  http://curl.haxx.se/bug/view.cgi?id=2006544
-
-55. libcurl fails to build with MIT Kerberos for Windows (KfW) due to KfW's
-  library header files exporting symbols/macros that should be kept private
-  to the KfW library. See ticket #5601 at http://krbdev.mit.edu/rt/
-
-52. Gautam Kachroo's issue that identifies a problem with the multi interface
-  where a connection can be re-used without actually being properly
-  SSL-negoatiated:
-  http://curl.haxx.se/mail/lib-2008-01/0277.html
-
-49. If using --retry and the transfer timeouts (possibly due to using -m or
-  -y/-Y) the next attempt doesn't resume the transfer properly from what was
-  downloaded in the previous attempt but will truncate and restart at the
-  original position where it was at before the previous failed attempt. See
-  http://curl.haxx.se/mail/lib-2008-01/0080.html and Mandriva bug report
-  https://qa.mandriva.com/show_bug.cgi?id=22565
-
-48. If a CONNECT response-headers are larger than BUFSIZE (16KB) when the
-  connection is meant to be kept alive (like for NTLM proxy auth), the
-  function will return prematurely and will confuse the rest of the HTTP
-  protocol code. This should be very rare.
-
-43. There seems to be a problem when connecting to the Microsoft telnet server.
-  http://curl.haxx.se/bug/view.cgi?id=1720605
-
-41. When doing an operation over FTP that requires the ACCT command (but not
-  when logging in), the operation will fail since libcurl doesn't detect this
-  and thus fails to issue the correct command:
-  http://curl.haxx.se/bug/view.cgi?id=1693337
-
-39. Steffen Rumler's Race Condition in Curl_proxyCONNECT:
-  http://curl.haxx.se/mail/lib-2007-01/0045.html
-
-38. Kumar Swamy Bhatt's problem in ftp/ssl "LIST" operation:
-  http://curl.haxx.se/mail/lib-2007-01/0103.html
-
-37. Having more than one connection to the same host when doing NTLM
-  authentication (with performs multiple "passes" and authenticates a
-  connection rather than a HTTP request), and particularly when using the
-  multi interface, there's a risk that libcurl will re-use a wrong connection
-  when doing the different passes in the NTLM negotiation and thus fail to
-  negotiate (in seemingly mysterious ways).
-
-35. Both SOCKS5 and SOCKS4 proxy connections are done blocking, which is very
-  bad when used with the multi interface.
-
-34. The SOCKS4 connection codes don't properly acknowledge (connect) timeouts.
-  Also see #12. According to bug #1556528, even the SOCKS5 connect code does
-  not do it right: http://curl.haxx.se/bug/view.cgi?id=1556528,
-
-31. "curl-config --libs" will include details set in LDFLAGS when configure is
-  run that might be needed only for building libcurl. Further, curl-config
-  --cflags suffers from the same effects with CFLAGS/CPPFLAGS.
-
-30. You need to use -g to the command line tool in order to use RFC2732-style
-  IPv6 numerical addresses in URLs.
-
-29. IPv6 URLs with zone ID is not supported.
-  http://www.ietf.org/internet-drafts/draft-fenner-literal-zone-02.txt (expired)
-  specifies the use of a plus sign instead of a percent when specifying zone
-  IDs in URLs to get around the problem of percent signs being
-  special. According to the reporter, Firefox deals with the URL _with_ a
-  percent letter (which seems like a blatant URL spec violation).
-
-   See http://curl.haxx.se/bug/view.cgi?id=1371118
-
-26. NTLM authentication using SSPI (on Windows) when (lib)curl is running in
-  "system context" will make it use wrong(?) user name - at least when compared
-  to what winhttp does. See http://curl.haxx.se/bug/view.cgi?id=1281867
-
-23. SOCKS-related problems:
-  A) libcurl doesn't support SOCKS for IPv6.
-  B) libcurl doesn't support FTPS over a SOCKS proxy.
-  E) libcurl doesn't support active FTP over a SOCKS proxy
-
-  We probably have even more bugs and lack of features when a SOCKS proxy is
-  used.
-
-22. Sending files to a FTP server using curl on VMS, might lead to curl
-  complaining on "unaligned file size" on completion. The problem is related
-  to VMS file structures and the perceived file sizes stat() returns. A
-  possible fix would involve sending a "STRU VMS" command.
-  http://curl.haxx.se/bug/view.cgi?id=1156287
-
-21. FTP ASCII transfers do not follow RFC959. They don't convert the data
-   accordingly (not for sending nor for receiving). RFC 959 section 3.1.1.1
-   clearly describes how this should be done:
-
-     The sender converts the data from an internal character representation to
-     the standard 8-bit NVT-ASCII representation (see the Telnet
-     specification).  The receiver will convert the data from the standard
-     form to his own internal form.
-
-   Since 7.15.4 at least line endings are converted.
-
-16. FTP URLs passed to curl may contain NUL (0x00) in the RFC 1738 <user>,
-  <password>, and <fpath> components, encoded as "%00".  The problem is that
-  curl_unescape does not detect this, but instead returns a shortened C
-  string.  From a strict FTP protocol standpoint, NUL is a valid character
-  within RFC 959 <string>, so the way to handle this correctly in curl would
-  be to use a data structure other than a plain C string, one that can handle
-  embedded NUL characters.  From a practical standpoint, most FTP servers
-  would not meaningfully support NUL characters within RFC 959 <string>,
-  anyway (e.g., UNIX pathnames may not contain NUL).
-
-14. Test case 165 might fail on system which has libidn present, but with an
-  old iconv version (2.1.3 is a known bad version), since it doesn't recognize
-  the charset when named ISO8859-1. Changing the name to ISO-8859-1 makes the
-  test pass, but instead makes it fail on Solaris hosts that use its native
-  iconv.
-
-13. curl version 7.12.2 fails on AIX if compiled with --enable-ares.
-  The workaround is to combine --enable-ares with --disable-shared
-
-12. When connecting to a SOCKS proxy, the (connect) timeout is not properly
-  acknowledged after the actual TCP connect (during the SOCKS "negotiate"
-  phase).
-
-10. To get HTTP Negotiate authentication to work fine, you need to provide a
-  (fake) user name (this concerns both curl and the lib) because the code
-  wrongly only considers authentication if there's a user name provided.
-  http://curl.haxx.se/bug/view.cgi?id=1004841. How?
-  http://curl.haxx.se/mail/lib-2004-08/0182.html
-
-8. Doing resumed upload over HTTP does not work with '-C -', because curl
-  doesn't do a HEAD first to get the initial size. This needs to be done
-  manually for HTTP PUT resume to work, and then '-C [index]'.
-
-6. libcurl ignores empty path parts in FTP URLs, whereas RFC1738 states that
-  such parts should be sent to the server as 'CWD ' (without an argument).
-  The only exception to this rule, is that we knowingly break this if the
-  empty part is first in the path, as then we use the double slashes to
-  indicate that the user wants to reach the root dir (this exception SHALL
-  remain even when this bug is fixed).
-
-5. libcurl doesn't treat the content-length of compressed data properly, as
-  it seems HTTP servers send the *uncompressed* length in that header and
-  libcurl thinks of it as the *compressed* length. Some explanations are here:
-  http://curl.haxx.se/mail/lib-2003-06/0146.html
-
-2. If a HTTP server responds to a HEAD request and includes a body (thus
-  violating the RFC2616), curl won't wait to read the response but just stop
-  reading and return back. If a second request (let's assume a GET) is then
-  immediately made to the same server again, the connection will be re-used
-  fine of course, and the second request will be sent off but when the
-  response is to get read, the previous response-body is what curl will read
-  and havoc is what happens.
-  More details on this is found in this libcurl mailing list thread:
-  http://curl.haxx.se/mail/lib-2002-08/0000.html
diff --git a/src/other/curl/docs/LICENSE-MIXING b/src/other/curl/docs/LICENSE-MIXING
deleted file mode 100644
index 3db1a3d..0000000
--- a/src/other/curl/docs/LICENSE-MIXING
+++ /dev/null
@@ -1,126 +0,0 @@
-         License Mixing with apps, libcurl and Third Party Libraries
-         ===========================================================
-
-libcurl can be built to use a fair amount of various third party libraries,
-libraries that are written and provided by other parties that are distributed
-using their own licenses. Even libcurl itself contains code that may cause
-problems to some. This document attempts to describe what licenses libcurl and
-the other libraries use and what possible dilemmas linking and mixing them all
-can lead to for end users.
-
-I am not a lawyer and this is not legal advice!
-
-One common dilemma is that GPL[1]-licensed code is not allowed to be linked
-with code licensed under the Original BSD license (with the announcement
-clause). You may still build your own copies that use them all, but
-distributing them as binaries would be to violate the GPL license - unless you
-accompany your license with an exception[2]. This particular problem was
-addressed when the Modified BSD license was created, which does not have the
-announcement clause that collides with GPL.
-
-libcurl http://curl.haxx.se/docs/copyright.html
-
-        Uses an MIT (or Modified BSD)-style license that is as liberal as
-        possible.  Some of the source files that deal with KRB4 have Original
-        BSD-style announce-clause licenses. You may not distribute binaries
-        with krb4-enabled libcurl that also link with GPL-licensed code!
-
-OpenSSL http://www.openssl.org/source/license.html
-
-        (May be used for SSL/TLS support) Uses an Original BSD-style license
-        with an announcement clause that makes it "incompatible" with GPL. You
-        are not allowed to ship binaries that link with OpenSSL that includes
-        GPL code (unless that specific GPL code includes an exception for
-        OpenSSL - a habit that is growing more and more common). If OpenSSL's
-        licensing is a problem for you, consider using GnuTLS or yassl
-        instead.
-
-GnuTLS  http://www.gnutls.org/
-
-        (May be used for SSL/TLS support) Uses the LGPL[3] license. If this is
-        a problem for you, consider using OpenSSL instead. Also note that
-        GnuTLS itself depends on and uses other libs (libgcrypt and
-        libgpg-error) and they too are LGPL- or GPL-licensed.
-
-yassl   http://www.yassl.com/
-
-        (May be used for SSL/TLS support) Uses the GPL[1] license. If this is
-        a problem for you, consider using OpenSSL or GnuTLS instead.
-
-NSS     http://www.mozilla.org/projects/security/pki/nss/
-
-        (May be used for SSL/TLS support) Is covered by the MPL[4] license,
-        the GPL[1] license and the LGPL[3] license. You may choose to license
-        the code under MPL terms, GPL terms, or LGPL terms. These licenses
-        grant you different permissions and impose different obligations. You
-        should select the license that best meets your needs.
-
-c-ares  http://daniel.haxx.se/projects/c-ares/license.html
-
-        (Used for asynchronous name resolves) Uses an MIT license that is very
-        liberal and imposes no restrictions on any other library or part you
-        may link with.
-
-zlib    http://www.gzip.org/zlib/zlib_license.html
-
-        (Used for compressed Transfer-Encoding support) Uses an MIT-style
-        license that shouldn't collide with any other library.
-
-krb4
-
-        While nothing in particular says that a Kerberos4 library must use any
-        particular license, the one I've tried and used successfully so far
-        (kth-krb4) is partly Original BSD-licensed with the announcement
-        clause. Some of the code in libcurl that is written to deal with
-        Kerberos4 is Modified BSD-licensed.
-
-MIT Kerberos http://web.mit.edu/kerberos/www/dist/
-
-        (May be used for GSS support) MIT licensed, that shouldn't collide
-        with any other parts.
-
-Heimdal http://www.pdc.kth.se/heimdal/
-
-        (May be used for GSS support) Heimdal is Original BSD licensed with
-        the announcement clause.
-
-GNU GSS http://www.gnu.org/software/gss/
-
-        (May be used for GSS support) GNU GSS is GPL licensed. Note that you
-        may not distribute binary curl packages that uses this if you build
-        curl to also link and use any Original BSD licensed libraries!
-
-fbopenssl
-
-        (Used for SPNEGO support) Unclear license. Based on its name, I assume
-        that it uses the OpenSSL license and thus shares the same issues as
-        described for OpenSSL above.
-
-libidn  http://josefsson.org/libidn/
-
-        (Used for IDNA support) Uses the GNU Lesser General Public
-        License [3]. LGPL is a variation of GPL with slightly less aggressive
-        "copyleft". This license requires more requirements to be met when
-        distributing binaries, see the license for details. Also note that if
-        you distribute a binary that includes this library, you must also
-        include the full LGPL license text. Please properly point out what
-        parts of the distributed package that the license addresses.
-
-OpenLDAP http://www.openldap.org/software/release/license.html
-
-        (Used for LDAP support) Uses a Modified BSD-style license. Since
-        libcurl uses OpenLDAP as a shared library only, I have not heard of
-        anyone that ships OpenLDAP linked with libcurl in an app.
-
-libssh2 http://www.libssh2.org/
-
-        (Used for scp and sftp support) libssh2 uses a Modified BSD-style
-        license.
-
-[1] = GPL - GNU General Public License: http://www.gnu.org/licenses/gpl.html
-[2] = http://www.fsf.org/licenses/gpl-faq.html#GPLIncompatibleLibs details on
-      how to write such an exception to the GPL
-[3] = LGPL - GNU Lesser General Public License:
-      http://www.gnu.org/licenses/lgpl.html
-[4] = MPL - Mozilla Public License:
-      http://www.mozilla.org/MPL/
diff --git a/src/other/curl/docs/MANUAL b/src/other/curl/docs/MANUAL
deleted file mode 100644
index d7085b7..0000000
--- a/src/other/curl/docs/MANUAL
+++ /dev/null
@@ -1,971 +0,0 @@
-LATEST VERSION
-
-  You always find news about what's going on as well as the latest versions
-  from the curl web pages, located at:
-
-        http://curl.haxx.se
-
-SIMPLE USAGE
-
-  Get the main page from Netscape's web-server:
-
-        curl http://www.netscape.com/
-
-  Get the README file the user's home directory at funet's ftp-server:
-
-        curl ftp://ftp.funet.fi/README
-
-  Get a web page from a server using port 8000:
-
-        curl http://www.weirdserver.com:8000/
-
-  Get a list of a directory of an FTP site:
-
-        curl ftp://cool.haxx.se/
-
-  Get the definition of curl from a dictionary:
-
-        curl dict://dict.org/m:curl
-
-  Fetch two documents at once:
-
-        curl ftp://cool.haxx.se/ http://www.weirdserver.com:8000/
-
-  Get a file off an FTPS server:
-
-        curl ftps://files.are.secure.com/secrets.txt
-
-  or use the more appropriate FTPS way to get the same file:
-
-        curl --ftp-ssl ftp://files.are.secure.com/secrets.txt
-
-  Get a file from an SSH server using SFTP:
-
-        curl -u username sftp://shell.example.com/etc/issue
-
-  Get a file from an SSH server using SCP using a private key to authenticate:
-
-        curl -u username: --key ~/.ssh/id_dsa --pubkey ~/.ssh/id_dsa.pub \
-            scp://shell.example.com/~/personal.txt
-
-  Get the main page from an IPv6 web server:
-
-        curl -g "http://[2001:1890:1112:1::20]/"
-
-DOWNLOAD TO A FILE
-
-  Get a web page and store in a local file:
-
-        curl -o thatpage.html http://www.netscape.com/
-
-  Get a web page and store in a local file, make the local file get the name
-  of the remote document (if no file name part is specified in the URL, this
-  will fail):
-
-        curl -O http://www.netscape.com/index.html
-
-  Fetch two files and store them with their remote names:
-
-        curl -O www.haxx.se/index.html -O curl.haxx.se/download.html
-
-USING PASSWORDS
-
- FTP
-
-   To ftp files using name+passwd, include them in the URL like:
-
-        curl ftp://name:passwd@machine.domain:port/full/path/to/file
-
-   or specify them with the -u flag like
-
-        curl -u name:passwd ftp://machine.domain:port/full/path/to/file
-
- FTPS
-
-   It is just like for FTP, but you may also want to specify and use
-   SSL-specific options for certificates etc.
-
-   Note that using FTPS:// as prefix is the "implicit" way as described in the
-   standards while the recommended "explicit" way is done by using FTP:// and
-   the --ftp-ssl option.
-
- SFTP / SCP
-
-   This is similar to FTP, but you can specify a private key to use instead of
-   a password. Note that the private key may itself be protected by a password
-   that is unrelated to the login password of the remote system.  If you
-   provide a private key file you must also provide a public key file.
-
- HTTP
-
-   Curl also supports user and password in HTTP URLs, thus you can pick a file
-   like:
-
-        curl http://name:passwd@machine.domain/full/path/to/file
-
-   or specify user and password separately like in
-
-        curl -u name:passwd http://machine.domain/full/path/to/file
-
-   HTTP offers many different methods of authentication and curl supports
-   several: Basic, Digest, NTLM and Negotiate. Without telling which method to
-   use, curl defaults to Basic. You can also ask curl to pick the most secure
-   ones out of the ones that the server accepts for the given URL, by using
-   --anyauth.
-
-   NOTE! Since HTTP URLs don't support user and password, you can't use that
-   style when using Curl via a proxy. You _must_ use the -u style fetch
-   during such circumstances.
-
- HTTPS
-
-   Probably most commonly used with private certificates, as explained below.
-
-PROXY
-
- Get an ftp file using a proxy named my-proxy that uses port 888:
-
-        curl -x my-proxy:888 ftp://ftp.leachsite.com/README
-
- Get a file from a HTTP server that requires user and password, using the
- same proxy as above:
-
-        curl -u user:passwd -x my-proxy:888 http://www.get.this/
-
- Some proxies require special authentication. Specify by using -U as above:
-
-        curl -U user:passwd -x my-proxy:888 http://www.get.this/
-
- A comma-separated list of hosts and domains which do not use the proxy can
- be specified as:
-
-        curl --noproxy localhost,get.this -x my-proxy:888 http://www.get.this/
-
- If the proxy is specified with --proxy1.0 instead of --proxy or -x, then
- curl will use HTTP/1.0 instead of HTTP/1.1 for any CONNECT attempts.
-
- curl also supports SOCKS4 and SOCKS5 proxies with --socks4 and --socks5.
-
- See also the environment variables Curl support that offer further proxy
- control.
-
-RANGES
-
-  With HTTP 1.1 byte-ranges were introduced. Using this, a client can request
-  to get only one or more subparts of a specified document. Curl supports
-  this with the -r flag.
-
-  Get the first 100 bytes of a document:
-
-        curl -r 0-99 http://www.get.this/
-
-  Get the last 500 bytes of a document:
-
-        curl -r -500 http://www.get.this/
-
-  Curl also supports simple ranges for FTP files as well. Then you can only
-  specify start and stop position.
-
-  Get the first 100 bytes of a document using FTP:
-
-        curl -r 0-99 ftp://www.get.this/README
-
-UPLOADING
-
- FTP / FTPS / SFTP / SCP
-
-  Upload all data on stdin to a specified server:
-
-        curl -T - ftp://ftp.upload.com/myfile
-
-  Upload data from a specified file, login with user and password:
-
-        curl -T uploadfile -u user:passwd ftp://ftp.upload.com/myfile
-
-  Upload a local file to the remote site, and use the local file name remote
-  too:
-
-        curl -T uploadfile -u user:passwd ftp://ftp.upload.com/
-
-  Upload a local file to get appended to the remote file:
-
-        curl -T localfile -a ftp://ftp.upload.com/remotefile
-
-  Curl also supports ftp upload through a proxy, but only if the proxy is
-  configured to allow that kind of tunneling. If it does, you can run curl in
-  a fashion similar to:
-
-        curl --proxytunnel -x proxy:port -T localfile ftp.upload.com
-
- HTTP
-
-  Upload all data on stdin to a specified http site:
-
-        curl -T - http://www.upload.com/myfile
-
-  Note that the http server must have been configured to accept PUT before
-  this can be done successfully.
-
-  For other ways to do http data upload, see the POST section below.
-
-VERBOSE / DEBUG
-
-  If curl fails where it isn't supposed to, if the servers don't let you in,
-  if you can't understand the responses: use the -v flag to get verbose
-  fetching. Curl will output lots of info and what it sends and receives in
-  order to let the user see all client-server interaction (but it won't show
-  you the actual data).
-
-        curl -v ftp://ftp.upload.com/
-
-  To get even more details and information on what curl does, try using the
-  --trace or --trace-ascii options with a given file name to log to, like
-  this:
-
-        curl --trace trace.txt www.haxx.se
-
-
-DETAILED INFORMATION
-
-  Different protocols provide different ways of getting detailed information
-  about specific files/documents. To get curl to show detailed information
-  about a single file, you should use -I/--head option. It displays all
-  available info on a single file for HTTP and FTP. The HTTP information is a
-  lot more extensive.
-
-  For HTTP, you can get the header information (the same as -I would show)
-  shown before the data by using -i/--include. Curl understands the
-  -D/--dump-header option when getting files from both FTP and HTTP, and it
-  will then store the headers in the specified file.
-
-  Store the HTTP headers in a separate file (headers.txt in the example):
-
-        curl --dump-header headers.txt curl.haxx.se
-
-  Note that headers stored in a separate file can be very useful at a later
-  time if you want curl to use cookies sent by the server. More about that in
-  the cookies section.
-
-POST (HTTP)
-
-  It's easy to post data using curl. This is done using the -d <data>
-  option.  The post data must be urlencoded.
-
-  Post a simple "name" and "phone" guestbook.
-
-        curl -d "name=Rafael%20Sagula&phone=3320780" \
-                http://www.where.com/guest.cgi
-
-  How to post a form with curl, lesson #1:
-
-  Dig out all the <input> tags in the form that you want to fill in. (There's
-  a perl program called formfind.pl on the curl site that helps with this).
-
-  If there's a "normal" post, you use -d to post. -d takes a full "post
-  string", which is in the format
-
-        <variable1>=<data1>&<variable2>=<data2>&...
-
-  The 'variable' names are the names set with "name=" in the <input> tags, and
-  the data is the contents you want to fill in for the inputs. The data *must*
-  be properly URL encoded. That means you replace space with + and that you
-  write weird letters with %XX where XX is the hexadecimal representation of
-  the letter's ASCII code.
-
-  Example:
-
-  (page located at http://www.formpost.com/getthis/
-
-        <form action="post.cgi" method="post">
-        <input name=user size=10>
-        <input name=pass type=password size=10>
-        <input name=id type=hidden value="blablabla">
-        <input name=ding value="submit">
-        </form>
-
-  We want to enter user 'foobar' with password '12345'.
-
-  To post to this, you enter a curl command line like:
-
-        curl -d "user=foobar&pass=12345&id=blablabla&ding=submit"  (continues)
-          http://www.formpost.com/getthis/post.cgi
-
-
-  While -d uses the application/x-www-form-urlencoded mime-type, generally
-  understood by CGI's and similar, curl also supports the more capable
-  multipart/form-data type. This latter type supports things like file upload.
-
-  -F accepts parameters like -F "name=contents". If you want the contents to
-  be read from a file, use <@filename> as contents. When specifying a file,
-  you can also specify the file content type by appending ';type=<mime type>'
-  to the file name. You can also post the contents of several files in one
-  field.  For example, the field name 'coolfiles' is used to send three files,
-  with different content types using the following syntax:
-
-        curl -F "coolfiles=@fil1.gif;type=image/gif,fil2.txt,fil3.html" \
-        http://www.post.com/postit.cgi
-
-  If the content-type is not specified, curl will try to guess from the file
-  extension (it only knows a few), or use the previously specified type (from
-  an earlier file if several files are specified in a list) or else it will
-  using the default type 'text/plain'.
-
-  Emulate a fill-in form with -F. Let's say you fill in three fields in a
-  form. One field is a file name which to post, one field is your name and one
-  field is a file description. We want to post the file we have written named
-  "cooltext.txt". To let curl do the posting of this data instead of your
-  favourite browser, you have to read the HTML source of the form page and
-  find the names of the input fields. In our example, the input field names
-  are 'file', 'yourname' and 'filedescription'.
-
-        curl -F "file=@cooltext.txt" -F "yourname=Daniel" \
-             -F "filedescription=Cool text file with cool text inside" \
-             http://www.post.com/postit.cgi
-
-  To send two files in one post you can do it in two ways:
-
-  1. Send multiple files in a single "field" with a single field name:
-
-        curl -F "pictures=@dog.gif,cat.gif"
-
-  2. Send two fields with two field names:
-
-        curl -F "docpicture=@dog.gif" -F "catpicture=@cat.gif"
-
-  To send a field value literally without interpreting a leading '@'
-  or '<', or an embedded ';type=', use --form-string instead of
-  -F. This is recommended when the value is obtained from a user or
-  some other unpredictable source. Under these circumstances, using
-  -F instead of --form-string would allow a user to trick curl into
-  uploading a file.
-
-REFERRER
-
-  A HTTP request has the option to include information about which address
-  that referred to actual page.  Curl allows you to specify the
-  referrer to be used on the command line. It is especially useful to
-  fool or trick stupid servers or CGI scripts that rely on that information
-  being available or contain certain data.
-
-        curl -e www.coolsite.com http://www.showme.com/
-
-  NOTE: The Referer: [sic] field is defined in the HTTP spec to be a full URL.
-
-USER AGENT
-
-  A HTTP request has the option to include information about the browser
-  that generated the request. Curl allows it to be specified on the command
-  line. It is especially useful to fool or trick stupid servers or CGI
-  scripts that only accept certain browsers.
-
-  Example:
-
-  curl -A 'Mozilla/3.0 (Win95; I)' http://www.nationsbank.com/
-
-  Other common strings:
-    'Mozilla/3.0 (Win95; I)'     Netscape Version 3 for Windows 95
-    'Mozilla/3.04 (Win95; U)'    Netscape Version 3 for Windows 95
-    'Mozilla/2.02 (OS/2; U)'     Netscape Version 2 for OS/2
-    'Mozilla/4.04 [en] (X11; U; AIX 4.2; Nav)'           NS for AIX
-    'Mozilla/4.05 [en] (X11; U; Linux 2.0.32 i586)'      NS for Linux
-
-  Note that Internet Explorer tries hard to be compatible in every way:
-    'Mozilla/4.0 (compatible; MSIE 4.01; Windows 95)'    MSIE for W95
-
-  Mozilla is not the only possible User-Agent name:
-    'Konqueror/1.0'             KDE File Manager desktop client
-    'Lynx/2.7.1 libwww-FM/2.14' Lynx command line browser
-
-COOKIES
-
-  Cookies are generally used by web servers to keep state information at the
-  client's side. The server sets cookies by sending a response line in the
-  headers that looks like 'Set-Cookie: <data>' where the data part then
-  typically contains a set of NAME=VALUE pairs (separated by semicolons ';'
-  like "NAME1=VALUE1; NAME2=VALUE2;"). The server can also specify for what
-  path the "cookie" should be used for (by specifying "path=value"), when the
-  cookie should expire ("expire=DATE"), for what domain to use it
-  ("domain=NAME") and if it should be used on secure connections only
-  ("secure").
-
-  If you've received a page from a server that contains a header like:
-        Set-Cookie: sessionid=boo123; path="/foo";
-
-  it means the server wants that first pair passed on when we get anything in
-  a path beginning with "/foo".
-
-  Example, get a page that wants my name passed in a cookie:
-
-        curl -b "name=Daniel" www.sillypage.com
-
-  Curl also has the ability to use previously received cookies in following
-  sessions. If you get cookies from a server and store them in a file in a
-  manner similar to:
-
-        curl --dump-header headers www.example.com
-
-  ... you can then in a second connect to that (or another) site, use the
-  cookies from the 'headers' file like:
-
-        curl -b headers www.example.com
-
-  While saving headers to a file is a working way to store cookies, it is
-  however error-prone and not the preferred way to do this. Instead, make curl
-  save the incoming cookies using the well-known netscape cookie format like
-  this:
-
-        curl -c cookies.txt www.example.com
-
-  Note that by specifying -b you enable the "cookie awareness" and with -L
-  you can make curl follow a location: (which often is used in combination
-  with cookies). So that if a site sends cookies and a location, you can
-  use a non-existing file to trigger the cookie awareness like:
-
-        curl -L -b empty.txt www.example.com
-
-  The file to read cookies from must be formatted using plain HTTP headers OR
-  as netscape's cookie file. Curl will determine what kind it is based on the
-  file contents.  In the above command, curl will parse the header and store
-  the cookies received from www.example.com.  curl will send to the server the
-  stored cookies which match the request as it follows the location.  The
-  file "empty.txt" may be a nonexistent file.
-
-  Alas, to both read and write cookies from a netscape cookie file, you can
-  set both -b and -c to use the same file:
-
-        curl -b cookies.txt -c cookies.txt www.example.com
-
-PROGRESS METER
-
-  The progress meter exists to show a user that something actually is
-  happening. The different fields in the output have the following meaning:
-
-  % Total    % Received % Xferd  Average Speed          Time             Curr.
-                                 Dload  Upload Total    Current  Left    Speed
-  0  151M    0 38608    0     0   9406      0  4:41:43  0:00:04  4:41:39  9287
-
-  From left-to-right:
-   %             - percentage completed of the whole transfer
-   Total         - total size of the whole expected transfer
-   %             - percentage completed of the download
-   Received      - currently downloaded amount of bytes
-   %             - percentage completed of the upload
-   Xferd         - currently uploaded amount of bytes
-   Average Speed
-   Dload         - the average transfer speed of the download
-   Average Speed
-   Upload        - the average transfer speed of the upload
-   Time Total    - expected time to complete the operation
-   Time Current  - time passed since the invoke
-   Time Left     - expected time left to completion
-   Curr.Speed    - the average transfer speed the last 5 seconds (the first
-                   5 seconds of a transfer is based on less time of course.)
-
-  The -# option will display a totally different progress bar that doesn't
-  need much explanation!
-
-SPEED LIMIT
-
-  Curl allows the user to set the transfer speed conditions that must be met
-  to let the transfer keep going. By using the switch -y and -Y you
-  can make curl abort transfers if the transfer speed is below the specified
-  lowest limit for a specified time.
-
-  To have curl abort the download if the speed is slower than 3000 bytes per
-  second for 1 minute, run:
-
-        curl -Y 3000 -y 60 www.far-away-site.com
-
-  This can very well be used in combination with the overall time limit, so
-  that the above operation must be completed in whole within 30 minutes:
-
-        curl -m 1800 -Y 3000 -y 60 www.far-away-site.com
-
-  Forcing curl not to transfer data faster than a given rate is also possible,
-  which might be useful if you're using a limited bandwidth connection and you
-  don't want your transfer to use all of it (sometimes referred to as
-  "bandwidth throttle").
-
-  Make curl transfer data no faster than 10 kilobytes per second:
-
-        curl --limit-rate 10K www.far-away-site.com
-
-    or
-
-        curl --limit-rate 10240 www.far-away-site.com
-
-  Or prevent curl from uploading data faster than 1 megabyte per second:
-
-        curl -T upload --limit-rate 1M ftp://uploadshereplease.com
-
-  When using the --limit-rate option, the transfer rate is regulated on a
-  per-second basis, which will cause the total transfer speed to become lower
-  than the given number. Sometimes of course substantially lower, if your
-  transfer stalls during periods.
-
-CONFIG FILE
-
-  Curl automatically tries to read the .curlrc file (or _curlrc file on win32
-  systems) from the user's home dir on startup.
-
-  The config file could be made up with normal command line switches, but you
-  can also specify the long options without the dashes to make it more
-  readable. You can separate the options and the parameter with spaces, or
-  with = or :. Comments can be used within the file. If the first letter on a
-  line is a '#'-symbol the rest of the line is treated as a comment.
-
-  If you want the parameter to contain spaces, you must enclose the entire
-  parameter within double quotes ("). Within those quotes, you specify a
-  quote as \".
-
-  NOTE: You must specify options and their arguments on the same line.
-
-  Example, set default time out and proxy in a config file:
-
-        # We want a 30 minute timeout:
-        -m 1800
-        # ... and we use a proxy for all accesses:
-        proxy = proxy.our.domain.com:8080
-
-  White spaces ARE significant at the end of lines, but all white spaces
-  leading up to the first characters of each line are ignored.
-
-  Prevent curl from reading the default file by using -q as the first command
-  line parameter, like:
-
-        curl -q www.thatsite.com
-
-  Force curl to get and display a local help page in case it is invoked
-  without URL by making a config file similar to:
-
-        # default url to get
-        url = "http://help.with.curl.com/curlhelp.html"
-
-  You can specify another config file to be read by using the -K/--config
-  flag. If you set config file name to "-" it'll read the config from stdin,
-  which can be handy if you want to hide options from being visible in process
-  tables etc:
-
-        echo "user = user:passwd" | curl -K - http://that.secret.site.com
-
-EXTRA HEADERS
-
-  When using curl in your own very special programs, you may end up needing
-  to pass on your own custom headers when getting a web page. You can do
-  this by using the -H flag.
-
-  Example, send the header "X-you-and-me: yes" to the server when getting a
-  page:
-
-        curl -H "X-you-and-me: yes" www.love.com
-
-  This can also be useful in case you want curl to send a different text in a
-  header than it normally does. The -H header you specify then replaces the
-  header curl would normally send. If you replace an internal header with an
-  empty one, you prevent that header from being sent. To prevent the Host:
-  header from being used:
-
-        curl -H "Host:" www.server.com
-
-FTP and PATH NAMES
-
-  Do note that when getting files with the ftp:// URL, the given path is
-  relative the directory you enter. To get the file 'README' from your home
-  directory at your ftp site, do:
-
-        curl ftp://user:passwd@my.site.com/README
-
-  But if you want the README file from the root directory of that very same
-  site, you need to specify the absolute file name:
-
-        curl ftp://user:passwd@my.site.com//README
-
-  (I.e with an extra slash in front of the file name.)
-
-SFTP and SCP and PATH NAMES
-
-  With sftp: and scp: URLs, the path name given is the absolute name on the
-  server. To access a file relative to the remote user's home directory,
-  prefix the file with /~/ , such as:
-
-        curl -u $USER sftp://home.example.com/~/.bashrc
-
-FTP and firewalls
-
-  The FTP protocol requires one of the involved parties to open a second
-  connection as soon as data is about to get transfered. There are two ways to
-  do this.
-
-  The default way for curl is to issue the PASV command which causes the
-  server to open another port and await another connection performed by the
-  client. This is good if the client is behind a firewall that don't allow
-  incoming connections.
-
-        curl ftp.download.com
-
-  If the server for example, is behind a firewall that don't allow connections
-  on other ports than 21 (or if it just doesn't support the PASV command), the
-  other way to do it is to use the PORT command and instruct the server to
-  connect to the client on the given (as parameters to the PORT command) IP
-  number and port.
-
-  The -P flag to curl supports a few different options. Your machine may have
-  several IP-addresses and/or network interfaces and curl allows you to select
-  which of them to use. Default address can also be used:
-
-        curl -P - ftp.download.com
-
-  Download with PORT but use the IP address of our 'le0' interface (this does
-  not work on windows):
-
-        curl -P le0 ftp.download.com
-
-  Download with PORT but use 192.168.0.10 as our IP address to use:
-
-        curl -P 192.168.0.10 ftp.download.com
-
-NETWORK INTERFACE
-
-  Get a web page from a server using a specified port for the interface:
-
-        curl --interface eth0:1 http://www.netscape.com/
-
-  or
-
-        curl --interface 192.168.1.10 http://www.netscape.com/
-
-HTTPS
-
-  Secure HTTP requires SSL libraries to be installed and used when curl is
-  built. If that is done, curl is capable of retrieving and posting documents
-  using the HTTPS protocol.
-
-  Example:
-
-        curl https://www.secure-site.com
-
-  Curl is also capable of using your personal certificates to get/post files
-  from sites that require valid certificates. The only drawback is that the
-  certificate needs to be in PEM-format. PEM is a standard and open format to
-  store certificates with, but it is not used by the most commonly used
-  browsers (Netscape and MSIE both use the so called PKCS#12 format). If you
-  want curl to use the certificates you use with your (favourite) browser, you
-  may need to download/compile a converter that can convert your browser's
-  formatted certificates to PEM formatted ones. This kind of converter is
-  included in recent versions of OpenSSL, and for older versions Dr Stephen
-  N. Henson has written a patch for SSLeay that adds this functionality. You
-  can get his patch (that requires an SSLeay installation) from his site at:
-  http://www.drh-consultancy.demon.co.uk/
-
-  Example on how to automatically retrieve a document using a certificate with
-  a personal password:
-
-        curl -E /path/to/cert.pem:password https://secure.site.com/
-
-  If you neglect to specify the password on the command line, you will be
-  prompted for the correct password before any data can be received.
-
-  Many older SSL-servers have problems with SSLv3 or TLS, that newer versions
-  of OpenSSL etc is using, therefore it is sometimes useful to specify what
-  SSL-version curl should use. Use -3, -2 or -1 to specify that exact SSL
-  version to use (for SSLv3, SSLv2 or TLSv1 respectively):
-
-        curl -2 https://secure.site.com/
-
-  Otherwise, curl will first attempt to use v3 and then v2.
-
-  To use OpenSSL to convert your favourite browser's certificate into a PEM
-  formatted one that curl can use, do something like this (assuming netscape,
-  but IE is likely to work similarly):
-
-    You start with hitting the 'security' menu button in netscape.
-
-    Select 'certificates->yours' and then pick a certificate in the list
-
-    Press the 'export' button
-
-    enter your PIN code for the certs
-
-    select a proper place to save it
-
-    Run the 'openssl' application to convert the certificate. If you cd to the
-    openssl installation, you can do it like:
-
-     # ./apps/openssl pkcs12 -in [file you saved] -clcerts -out [PEMfile]
-
-
-RESUMING FILE TRANSFERS
-
- To continue a file transfer where it was previously aborted, curl supports
- resume on http(s) downloads as well as ftp uploads and downloads.
-
- Continue downloading a document:
-
-        curl -C - -o file ftp://ftp.server.com/path/file
-
- Continue uploading a document(*1):
-
-        curl -C - -T file ftp://ftp.server.com/path/file
-
- Continue downloading a document from a web server(*2):
-
-        curl -C - -o file http://www.server.com/
-
- (*1) = This requires that the ftp server supports the non-standard command
-        SIZE. If it doesn't, curl will say so.
-
- (*2) = This requires that the web server supports at least HTTP/1.1. If it
-        doesn't, curl will say so.
-
-TIME CONDITIONS
-
- HTTP allows a client to specify a time condition for the document it
- requests. It is If-Modified-Since or If-Unmodified-Since. Curl allow you to
- specify them with the -z/--time-cond flag.
-
- For example, you can easily make a download that only gets performed if the
- remote file is newer than a local copy. It would be made like:
-
-        curl -z local.html http://remote.server.com/remote.html
-
- Or you can download a file only if the local file is newer than the remote
- one. Do this by prepending the date string with a '-', as in:
-
-        curl -z -local.html http://remote.server.com/remote.html
-
- You can specify a "free text" date as condition. Tell curl to only download
- the file if it was updated since January 12, 2012:
-
-        curl -z "Jan 12 2012" http://remote.server.com/remote.html
-
- Curl will then accept a wide range of date formats. You always make the date
- check the other way around by prepending it with a dash '-'.
-
-DICT
-
-  For fun try
-
-        curl dict://dict.org/m:curl
-        curl dict://dict.org/d:heisenbug:jargon
-        curl dict://dict.org/d:daniel:web1913
-
-  Aliases for 'm' are 'match' and 'find', and aliases for 'd' are 'define'
-  and 'lookup'. For example,
-
-        curl dict://dict.org/find:curl
-
-  Commands that break the URL description of the RFC (but not the DICT
-  protocol) are
-
-        curl dict://dict.org/show:db
-        curl dict://dict.org/show:strat
-
-  Authentication is still missing (but this is not required by the RFC)
-
-LDAP
-
-  If you have installed the OpenLDAP library, curl can take advantage of it
-  and offer ldap:// support.
-
-  LDAP is a complex thing and writing an LDAP query is not an easy task. I do
-  advice you to dig up the syntax description for that elsewhere. Two places
-  that might suit you are:
-
-  Netscape's "Netscape Directory SDK 3.0 for C Programmer's Guide Chapter 10:
-  Working with LDAP URLs":
-  http://developer.netscape.com/docs/manuals/dirsdk/csdk30/url.htm
-
-  RFC 2255, "The LDAP URL Format" http://curl.haxx.se/rfc/rfc2255.txt
-
-  To show you an example, this is now I can get all people from my local LDAP
-  server that has a certain sub-domain in their email address:
-
-        curl -B "ldap://ldap.frontec.se/o=frontec??sub?mail=*sth.frontec.se"
-
-  If I want the same info in HTML format, I can get it by not using the -B
-  (enforce ASCII) flag.
-
-ENVIRONMENT VARIABLES
-
-  Curl reads and understands the following environment variables:
-
-        http_proxy, HTTPS_PROXY, FTP_PROXY
-
-  They should be set for protocol-specific proxies. General proxy should be
-  set with
-
-        ALL_PROXY
-
-  A comma-separated list of host names that shouldn't go through any proxy is
-  set in (only an asterisk, '*' matches all hosts)
-
-        NO_PROXY
-
-  If the host name matches one of these strings, or the host is within the
-  domain of one of these strings, transactions with that node will not be
-  proxied.
-
-
-  The usage of the -x/--proxy flag overrides the environment variables.
-
-NETRC
-
-  Unix introduced the .netrc concept a long time ago. It is a way for a user
-  to specify name and password for commonly visited ftp sites in a file so
-  that you don't have to type them in each time you visit those sites. You
-  realize this is a big security risk if someone else gets hold of your
-  passwords, so therefore most unix programs won't read this file unless it is
-  only readable by yourself (curl doesn't care though).
-
-  Curl supports .netrc files if told so (using the -n/--netrc and
-  --netrc-optional options). This is not restricted to only ftp,
-  but curl can use it for all protocols where authentication is used.
-
-  A very simple .netrc file could look something like:
-
-        machine curl.haxx.se login iamdaniel password mysecret
-
-CUSTOM OUTPUT
-
-  To better allow script programmers to get to know about the progress of
-  curl, the -w/--write-out option was introduced. Using this, you can specify
-  what information from the previous transfer you want to extract.
-
-  To display the amount of bytes downloaded together with some text and an
-  ending newline:
-
-        curl -w 'We downloaded %{size_download} bytes\n' www.download.com
-
-KERBEROS FTP TRANSFER
-
-  Curl supports kerberos4 and kerberos5/GSSAPI for FTP transfers. You need
-  the kerberos package installed and used at curl build time for it to be
-  used.
-
-  First, get the krb-ticket the normal way, like with the kinit/kauth tool.
-  Then use curl in way similar to:
-
-        curl --krb private ftp://krb4site.com -u username:fakepwd
-
-  There's no use for a password on the -u switch, but a blank one will make
-  curl ask for one and you already entered the real password to kinit/kauth.
-
-TELNET
-
-  The curl telnet support is basic and very easy to use. Curl passes all data
-  passed to it on stdin to the remote server. Connect to a remote telnet
-  server using a command line similar to:
-
-        curl telnet://remote.server.com
-
-  And enter the data to pass to the server on stdin. The result will be sent
-  to stdout or to the file you specify with -o.
-
-  You might want the -N/--no-buffer option to switch off the buffered output
-  for slow connections or similar.
-
-  Pass options to the telnet protocol negotiation, by using the -t option. To
-  tell the server we use a vt100 terminal, try something like:
-
-        curl -tTTYPE=vt100 telnet://remote.server.com
-
-  Other interesting options for it -t include:
-
-   - XDISPLOC=<X display> Sets the X display location.
-
-   - NEW_ENV=<var,val> Sets an environment variable.
-
-  NOTE: the telnet protocol does not specify any way to login with a specified
-  user and password so curl can't do that automatically. To do that, you need
-  to track when the login prompt is received and send the username and
-  password accordingly.
-
-PERSISTENT CONNECTIONS
-
-  Specifying multiple files on a single command line will make curl transfer
-  all of them, one after the other in the specified order.
-
-  libcurl will attempt to use persistent connections for the transfers so that
-  the second transfer to the same host can use the same connection that was
-  already initiated and was left open in the previous transfer. This greatly
-  decreases connection time for all but the first transfer and it makes a far
-  better use of the network.
-
-  Note that curl cannot use persistent connections for transfers that are used
-  in subsequence curl invokes. Try to stuff as many URLs as possible on the
-  same command line if they are using the same host, as that'll make the
-  transfers faster. If you use a http proxy for file transfers, practically
-  all transfers will be persistent.
-
-MULTIPLE TRANSFERS WITH A SINGLE COMMAND LINE
-
-  As is mentioned above, you can download multiple files with one command line
-  by simply adding more URLs. If you want those to get saved to a local file
-  instead of just printed to stdout, you need to add one save option for each
-  URL you specify. Note that this also goes for the -O option (but not
-  --remote-name-all).
-
-  For example: get two files and use -O for the first and a custom file
-  name for the second:
-
-    curl -O http://url.com/file.txt ftp://ftp.com/moo.exe -o moo.jpg
-
-  You can also upload multiple files in a similar fashion:
-
-    curl -T local1 ftp://ftp.com/moo.exe -T local2 ftp://ftp.com/moo2.txt
-
-IPv6
-
-  curl will connect to a server with IPv6 when a host lookup returns an IPv6
-  address and fall back to IPv4 if the connection fails. The --ipv4 and --ipv6
-  options can specify which address to use when both are available. IPv6
-  addresses can also be specified directly in URLs using the syntax:
-
-    http://[2001:1890:1112:1::20]/overview.html
-
-  When this style is used, the -g option must be given to stop curl from
-  interpreting the square brackets as special globbing characters.  Link local
-  and site local addresses including a scope identifier, such as fe80::1234%1,
-  may also be used, but the scope portion must be numeric and the percent
-  character must be URL escaped. The previous example in an SFTP URL might
-  look like:
-
-    sftp://[fe80::1234%251]/
-
-  IPv6 addresses provided other than in URLs (e.g. to the --proxy, --interface
-  or --ftp-port options) should not be URL encoded.
-
-
-MAILING LISTS
-
-  For your convenience, we have several open mailing lists to discuss curl,
-  its development and things relevant to this. Get all info at
-  http://curl.haxx.se/mail/. Some of the lists available are:
-
-  curl-users
-
-    Users of the command line tool. How to use it, what doesn't work, new
-    features, related tools, questions, news, installations, compilations,
-    running, porting etc.
-
-  curl-library
-
-    Developers using or developing libcurl. Bugs, extensions, improvements.
-
-  curl-announce
-
-    Low-traffic. Only receives announcements of new public versions. At worst,
-    that makes something like one or two mails per month, but usually only one
-    mail every second month.
-
-  curl-and-php
-
-    Using the curl functions in PHP. Everything curl with a PHP angle. Or PHP
-    with a curl angle.
-
-  curl-and-python
-
-    Python hackers using curl with or without the python binding pycurl.
-
-  Please direct curl questions, feature requests and trouble reports to one of
-  these mailing lists instead of mailing any individual.
diff --git a/src/other/curl/docs/Makefile.am b/src/other/curl/docs/Makefile.am
deleted file mode 100644
index aee44ea..0000000
--- a/src/other/curl/docs/Makefile.am
+++ /dev/null
@@ -1,40 +0,0 @@
-#
-#
-
-AUTOMAKE_OPTIONS = foreign no-dependencies
-
-noinst_MANS = curl.1 curl-config.1
-GENHTMLPAGES = curl.html curl-config.html
-PDFPAGES = curl.pdf curl-config.pdf
-
-HTMLPAGES = $(GENHTMLPAGES) index.html
-
-SUBDIRS = examples libcurl
-
-CLEANFILES = $(GENHTMLPAGES) $(PDFPAGES)
-
-EXTRA_DIST = MANUAL BUGS CONTRIBUTE FAQ FEATURES INTERNALS SSLCERTS	 \
- README.win32 RESOURCES TODO TheArtOfHttpScripting THANKS VERSIONS	 \
- KNOWN_BUGS BINDINGS $(man_MANS) $(HTMLPAGES) HISTORY INSTALL curl.1	 \
- $(PDFPAGES) LICENSE-MIXING README.netware DISTRO-DILEMMA INSTALL.devcpp
-
-MAN2HTML= groff -Thtml -man $< > $@
-
-SUFFIXES = .1 .html .pdf
-
-html: $(HTMLPAGES)
-	cd libcurl; make html
-
-pdf: $(PDFPAGES)
-	cd libcurl; make pdf
-
-.1.html:
-	$(MAN2HTML)
-
-.1.pdf:
-	@(foo=`echo $@ | sed -e 's/\.[0-9]$$//g'`; \
-	groff -Tps -man $< >$$foo.ps; \
-	ps2pdf $$foo.ps $@; \
-	rm $$foo.ps; \
-	echo "converted $< to $@")
-
diff --git a/src/other/curl/docs/Makefile.in b/src/other/curl/docs/Makefile.in
deleted file mode 100644
index 780e289..0000000
--- a/src/other/curl/docs/Makefile.in
+++ /dev/null
@@ -1,641 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-#
-#
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = docs
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in INSTALL \
-	THANKS TODO
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
-	$(top_srcdir)/m4/curl-confopts.m4 \
-	$(top_srcdir)/m4/curl-functions.m4 \
-	$(top_srcdir)/m4/curl-override.m4 \
-	$(top_srcdir)/m4/curl-reentrant.m4 \
-	$(top_srcdir)/m4/curl-system.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
-	$(top_builddir)/src/curl_config.h \
-	$(top_builddir)/include/curl/curlbuild.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-depcomp =
-am__depfiles_maybe =
-SOURCES =
-DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
-	html-recursive info-recursive install-data-recursive \
-	install-dvi-recursive install-exec-recursive \
-	install-html-recursive install-info-recursive \
-	install-pdf-recursive install-ps-recursive install-recursive \
-	installcheck-recursive installdirs-recursive pdf-recursive \
-	ps-recursive uninstall-recursive
-RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
-  distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
-	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
-	distdir
-ETAGS = etags
-CTAGS = ctags
-DIST_SUBDIRS = $(SUBDIRS)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-am__relativize = \
-  dir0=`pwd`; \
-  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
-  sed_rest='s,^[^/]*/*,,'; \
-  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
-  sed_butlast='s,/*[^/]*$$,,'; \
-  while test -n "$$dir1"; do \
-    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
-    if test "$$first" != "."; then \
-      if test "$$first" = ".."; then \
-        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
-        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
-      else \
-        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
-        if test "$$first2" = "$$first"; then \
-          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
-        else \
-          dir2="../$$dir2"; \
-        fi; \
-        dir0="$$dir0"/"$$first"; \
-      fi; \
-    fi; \
-    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
-  done; \
-  reldir="$$dir2"
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
-CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
-CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
-CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
-CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
-CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
-CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
-CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
-CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
-CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
-CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
-CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
-CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
-CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
-CURL_LIBS = @CURL_LIBS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
-IDN_ENABLED = @IDN_ENABLED@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-IPV6_ENABLED = @IPV6_ENABLED@
-KRB4_ENABLED = @KRB4_ENABLED@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCURL_LIBS = @LIBCURL_LIBS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MANOPT = @MANOPT@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-NROFF = @NROFF@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH = @PATH@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PERL = @PERL@
-PKGADD_NAME = @PKGADD_NAME@
-PKGADD_PKG = @PKGADD_PKG@
-PKGADD_VENDOR = @PKGADD_VENDOR@
-PKGCONFIG = @PKGCONFIG@
-RANDOM_FILE = @RANDOM_FILE@
-RANLIB = @RANLIB@
-REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-SSL_ENABLED = @SSL_ENABLED@
-STRIP = @STRIP@
-SUPPORT_FEATURES = @SUPPORT_FEATURES@
-SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
-TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
-USE_ARES = @USE_ARES@
-USE_GNUTLS = @USE_GNUTLS@
-USE_LIBSSH2 = @USE_LIBSSH2@
-USE_NSS = @USE_NSS@
-USE_SSLEAY = @USE_SSLEAY@
-USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
-VERSION = @VERSION@
-VERSIONNUM = @VERSIONNUM@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-libext = @libext@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-AUTOMAKE_OPTIONS = foreign no-dependencies
-noinst_MANS = curl.1 curl-config.1
-GENHTMLPAGES = curl.html curl-config.html
-PDFPAGES = curl.pdf curl-config.pdf
-HTMLPAGES = $(GENHTMLPAGES) index.html
-SUBDIRS = examples libcurl
-CLEANFILES = $(GENHTMLPAGES) $(PDFPAGES)
-EXTRA_DIST = MANUAL BUGS CONTRIBUTE FAQ FEATURES INTERNALS SSLCERTS	 \
- README.win32 RESOURCES TODO TheArtOfHttpScripting THANKS VERSIONS	 \
- KNOWN_BUGS BINDINGS $(man_MANS) $(HTMLPAGES) HISTORY INSTALL curl.1	 \
- $(PDFPAGES) LICENSE-MIXING README.netware DISTRO-DILEMMA INSTALL.devcpp
-
-MAN2HTML = groff -Thtml -man $< > $@
-SUFFIXES = .1 .html .pdf
-all: all-recursive
-
-.SUFFIXES:
-.SUFFIXES: .1 .html .pdf
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
-	@for dep in $?; do \
-	  case '$(am__configure_deps)' in \
-	    *$$dep*) \
-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
-	        && { if test -f $@; then exit 0; else break; fi; }; \
-	      exit 1;; \
-	  esac; \
-	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign docs/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-
-# This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-#     (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
-	@fail= failcom='exit 1'; \
-	for f in x $$MAKEFLAGS; do \
-	  case $$f in \
-	    *=* | --[!k]*);; \
-	    *k*) failcom='fail=yes';; \
-	  esac; \
-	done; \
-	dot_seen=no; \
-	target=`echo $@ | sed s/-recursive//`; \
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  echo "Making $$target in $$subdir"; \
-	  if test "$$subdir" = "."; then \
-	    dot_seen=yes; \
-	    local_target="$$target-am"; \
-	  else \
-	    local_target="$$target"; \
-	  fi; \
-	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	  || eval $$failcom; \
-	done; \
-	if test "$$dot_seen" = "no"; then \
-	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
-	fi; test -z "$$fail"
-
-$(RECURSIVE_CLEAN_TARGETS):
-	@fail= failcom='exit 1'; \
-	for f in x $$MAKEFLAGS; do \
-	  case $$f in \
-	    *=* | --[!k]*);; \
-	    *k*) failcom='fail=yes';; \
-	  esac; \
-	done; \
-	dot_seen=no; \
-	case "$@" in \
-	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
-	  *) list='$(SUBDIRS)' ;; \
-	esac; \
-	rev=''; for subdir in $$list; do \
-	  if test "$$subdir" = "."; then :; else \
-	    rev="$$subdir $$rev"; \
-	  fi; \
-	done; \
-	rev="$$rev ."; \
-	target=`echo $@ | sed s/-recursive//`; \
-	for subdir in $$rev; do \
-	  echo "Making $$target in $$subdir"; \
-	  if test "$$subdir" = "."; then \
-	    local_target="$$target-am"; \
-	  else \
-	    local_target="$$target"; \
-	  fi; \
-	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	  || eval $$failcom; \
-	done && test -z "$$fail"
-tags-recursive:
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
-	done
-ctags-recursive:
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
-	done
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	set x; \
-	here=`pwd`; \
-	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
-	  include_option=--etags-include; \
-	  empty_fix=.; \
-	else \
-	  include_option=--include; \
-	  empty_fix=; \
-	fi; \
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    test ! -f $$subdir/TAGS || \
-	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
-	  fi; \
-	done; \
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(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
-	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    test -d "$(distdir)/$$subdir" \
-	    || $(MKDIR_P) "$(distdir)/$$subdir" \
-	    || exit 1; \
-	  fi; \
-	done
-	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
-	    $(am__relativize); \
-	    new_distdir=$$reldir; \
-	    dir1=$$subdir; dir2="$(top_distdir)"; \
-	    $(am__relativize); \
-	    new_top_distdir=$$reldir; \
-	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
-	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
-	    ($(am__cd) $$subdir && \
-	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$new_top_distdir" \
-	        distdir="$$new_distdir" \
-		am__remove_distdir=: \
-		am__skip_length_check=: \
-		am__skip_mode_fix=: \
-	        distdir) \
-	      || exit 1; \
-	  fi; \
-	done
-check-am: all-am
-check: check-recursive
-all-am: Makefile
-installdirs: installdirs-recursive
-installdirs-am:
-install: install-recursive
-install-exec: install-exec-recursive
-install-data: install-data-recursive
-uninstall: uninstall-recursive
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-recursive
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-clean: clean-recursive
-
-clean-am: clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-recursive
-	-rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-tags
-
-dvi: dvi-recursive
-
-dvi-am:
-
-html-am:
-
-info: info-recursive
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-recursive
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-recursive
-
-install-html-am:
-
-install-info: install-info-recursive
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-recursive
-
-install-pdf-am:
-
-install-ps: install-ps-recursive
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-recursive
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-recursive
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf-am:
-
-ps: ps-recursive
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
-	install-am install-strip tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
-	all all-am check check-am clean clean-generic clean-libtool \
-	ctags ctags-recursive distclean distclean-generic \
-	distclean-libtool 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 installdirs-am maintainer-clean \
-	maintainer-clean-generic mostlyclean mostlyclean-generic \
-	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
-	uninstall uninstall-am
-
-
-html: $(HTMLPAGES)
-	cd libcurl; make html
-
-pdf: $(PDFPAGES)
-	cd libcurl; make pdf
-
-.1.html:
-	$(MAN2HTML)
-
-.1.pdf:
-	@(foo=`echo $@ | sed -e 's/\.[0-9]$$//g'`; \
-	groff -Tps -man $< >$$foo.ps; \
-	ps2pdf $$foo.ps $@; \
-	rm $$foo.ps; \
-	echo "converted $< to $@")
-
-# 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/src/other/curl/docs/README.netware b/src/other/curl/docs/README.netware
deleted file mode 100644
index 41da2e8..0000000
--- a/src/other/curl/docs/README.netware
+++ /dev/null
@@ -1,27 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-README.netware
-
-  Read the README file first.
-
-  Curl has been successfully compiled with gcc / nlmconv on different flavours
-  of Linux as well as with the official Metrowerks CodeWarrior compiler.
-  While not being the main development target, a continously growing share of
-  curl users are NetWare-based, specially also consuming the lib from PHP.
-
-  The unix-style man pages are tricky to read on windows, so therefore are all
-  those pages converted to HTML as well as pdf, and included in the release
-  archives.
-
-  The main curl.1 man page is also "built-in" in the command line tool. Use a
-  command line similar to this in order to extract a separate text file:
-
-        curl -M >manual.txt
-
-  Read the INSTALL file for instructions how to compile curl self.
-
-
diff --git a/src/other/curl/docs/README.win32 b/src/other/curl/docs/README.win32
deleted file mode 100644
index cfd45dd..0000000
--- a/src/other/curl/docs/README.win32
+++ /dev/null
@@ -1,26 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-README.win32
-
-  Read the README file first.
-
-  Curl has been compiled, built and run on all sorts of Windows and win32
-  systems. While not being the main develop target, a fair share of curl users
-  are win32-based.
-
-  The unix-style man pages are tricky to read on windows, so therefore are all
-  those pages converted to HTML as well as pdf, and included in the release
-  archives.
-
-  The main curl.1 man page is also "built-in" in the command line tool. Use a
-  command line similar to this in order to extract a separate text file:
-
-        curl -M >manual.txt
-
-  Read the INSTALL file for instructions how to compile curl self.
-
-
diff --git a/src/other/curl/docs/RESOURCES b/src/other/curl/docs/RESOURCES
deleted file mode 100644
index 4d6465d..0000000
--- a/src/other/curl/docs/RESOURCES
+++ /dev/null
@@ -1,75 +0,0 @@
-                                  _   _ ____  _
-  Project                     ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-
-This document lists documents and standards used by curl.
-
-  RFC 959  - The FTP protocol
-
-  RFC 1635 - How to Use Anonymous FTP
-
-  RFC 1738 - Uniform Resource Locators
-
-  RFC 1777 - defines the LDAP protocol
-
-  RFC 1808 - Relative Uniform Resource Locators
-
-  RFC 1867 - Form-based File Upload in HTML
-
-  RFC 1950 - ZLIB Compressed Data Format Specification
-
-  RFC 1951 - DEFLATE Compressed Data Format Specification
-
-  RFC 1952 - gzip compression format
-
-  RFC 1959 - LDAP URL syntax
-
-  RFC 2045-2049 - Everything you need to know about MIME! (needed for form
-                  based upload)
-
-  RFC 2068 - HTTP 1.1 (obsoleted by RFC 2616)
-
-  RFC 2109 - HTTP State Management Mechanism (cookie stuff)
-           - Also, read Netscape's specification at
-             http://curl.haxx.se/rfc/cookie_spec.html
-
-  RFC 2183 - The Content-Disposition Header Field
-
-  RFC 2229 - A Dictionary Server Protocol
-
-  RFC 2255 - Newer LDAP URL syntax document.
-
-  RFC 2231 - MIME Parameter Value and Encoded Word Extensions:
-             Character Sets, Languages, and Continuations
-
-  RFC 2388 - "Returning Values from Forms: multipart/form-data"
-             Use this as an addition to the RFC1867
-
-  RFC 2396 - "Uniform Resource Identifiers: Generic Syntax and Semantics" This
-             one obsoletes RFC 1738, but since RFC 1738 is often mentioned
-             I've left it in this list.
-
-  RFC 2428 - FTP Extensions for IPv6 and NATs
-
-  RFC 2577 - FTP Security Considerations
-
-  RFC 2616 - HTTP 1.1, the latest
-
-  RFC 2617 - HTTP Authentication
-
-  RFC 2718 - Guidelines for new URL Schemes
-
-  RFC 2732 - Format for Literal IPv6 Addresses in URL's
-
-  RFC 2818 - HTTP Over TLS (TLS is the successor to SSL)
-
-  RFC 2821 - SMTP protocol
-
-  RFC 2964 - Use of HTTP State Management
-
-  RFC 2965 - HTTP State Management Mechanism. Cookies. Obsoletes RFC2109
-
-  RFC 3207 - SMTP over TLS
diff --git a/src/other/curl/docs/SSLCERTS b/src/other/curl/docs/SSLCERTS
deleted file mode 100644
index 0d1414c..0000000
--- a/src/other/curl/docs/SSLCERTS
+++ /dev/null
@@ -1,116 +0,0 @@
-                      Peer SSL Certificate Verification
-                      =================================
-
-libcurl performs peer SSL certificate verification by default.  This is done
-by using CA cert bundle that the SSL library can use to make sure the peer's
-server certificate is valid.
-
-If you communicate with HTTPS or FTPS servers using certificates that are
-signed by CAs present in the bundle, you can be sure that the remote server
-really is the one it claims to be.
-
-Until 7.18.0, curl bundled a severely outdated ca bundle file that was
-installed by default. These days, the curl archives include no ca certs at
-all. You need to get them elsewhere. See below for example.
-
-If the remote server uses a self-signed certificate, if you don't install a CA
-cert bundle, if the server uses a certificate signed by a CA that isn't
-included in the bundle you use or if the remote host is an impostor
-impersonating your favorite site, and you want to transfer files from this
-server, do one of the following:
-
- 1. Tell libcurl to *not* verify the peer. With libcurl you disable this with
-    curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, FALSE);
-
-    With the curl command line tool, you disable this with -k/--insecure.
-
- 2. Get a CA certificate that can verify the remote server and use the proper
-    option to point out this CA cert for verification when connecting. For
-    libcurl hackers: curl_easy_setopt(curl, CURLOPT_CAPATH, capath);
-
-    With the curl command line tool: --cacert [file]
-
- 3. Add the CA cert for your server to the existing default CA cert bundle.
-    The default path of the CA bundle used can be changed by running configure
-    with the --with-ca-bundle option pointing out the path of your choice.
-
-    To do this, you need to get the CA cert for your server in PEM format and
-    then append that to your CA cert bundle.
-
-    If you use Internet Explorer, this is one way to get extract the CA cert
-    for a particular server:
-
-     o View the certificate by double-clicking the padlock
-     o Find out where the CA certificate is kept (Certificate>
-       Authority Information Access>URL)
-     o Get a copy of the crt file using curl
-     o Convert it from crt to PEM using the openssl tool:
-       openssl x509 -inform DES -in yourdownloaded.crt \
-       -out outcert.pem -text
-     o Append the 'outcert.pem' to the CA cert bundle or use it stand-alone
-       as described below.
-
-    If you use the 'openssl' tool, this is one way to get extract the CA cert
-    for a particular server:
-
-     o openssl s_client -connect xxxxx.com:443 |tee logfile
-     o type "QUIT", followed by the "ENTER" key
-     o The certificate will have "BEGIN CERTIFICATE" and "END CERTIFICATE"
-       markers.
-     o If you want to see the data in the certificate, you can do: "openssl
-       x509 -inform PEM -in certfile -text -out certdata" where certfile is
-       the cert you extracted from logfile. Look in certdata.
-     o If you want to trust the certificate, you can append it to your
-       cert_bundle or use it stand-alone as described. Just remember that the
-       security is no better than the way you obtained the certificate.
-
- 4. If you're using the curl command line tool, you can specify your own CA
-    cert path by setting the environment variable CURL_CA_BUNDLE to the path
-    of your choice.
-
-    If you're using the curl command line tool on Windows, curl will search
-    for a CA cert file named "curl-ca-bundle.crt" in these directories and in
-    this order:
-      1. application's directory
-      2. current working directory
-      3. Windows System directory (e.g. C:\windows\system32)
-      4. Windows Directory (e.g. C:\windows)
-      5. all directories along %PATH%
-
- 5. Get a better/different/newer CA cert bundle! One option is to extract the
-    one a recent Firefox browser uses by running 'make ca-bundle' in the curl
-    build tree root, or possibly download a version that was generated this
-    way for you:
-
-        http://curl.haxx.se/docs/caextract.html
-
-Neglecting to use one of the above methods when dealing with a server using a
-certificate that isn't signed by one of the certificates in the installed CA
-cert bundle, will cause SSL to report an error ("certificate verify failed")
-during the handshake and SSL will then refuse further communication with that
-server.
-
-                      Peer SSL Certificate Verification with NSS
-                      ==========================================
-
-If libcurl is build with NSS support then depending on the OS distribution it
-is probably required to take some additional steps to use the system-wide CA
-cert db. RedHat ships with an additional module libnsspem.so which enables NSS
-to read the OpenSSL PEM CA bundle. With OpenSuSE this lib is missing, and NSS
-can only work with its own internal formats. Also NSS got a new database
-format:
-https://wiki.mozilla.org/NSS_Shared_DB
-Starting with version 7.19.7 libcurl will check for the NSS version it runs,
-and add automatically the 'sql:' prefix to the certdb directory (either the
-hardcoded default /etc/pki/nssdb or the directory configured with SSL_DIR
-environment variable) if a version 3.12.0 or later is detected.
-To check which certdb format your distribution provides examine the default
-certdb location /etc/pki/nssdb; the new certdb format can be identified by
-the filenames cert9.db, key4.db, pkcs11.txt; filenames of older versions are
-cert8.db, key3.db, modsec.db.
-Usually these cert databases are empty; but NSS also has built-in CAs which are
-provided through a shared library libnssckbi.so; if you want to use these
-built-in CAs then create a symlink to libnssckbi.so in /etc/pki/nssdb:
-ln -s /usr/lib[64]/libnssckbi.so /etc/pki/nssdb/libnssckbi.so
-
-
diff --git a/src/other/curl/docs/THANKS b/src/other/curl/docs/THANKS
deleted file mode 100644
index dadb3e8..0000000
--- a/src/other/curl/docs/THANKS
+++ /dev/null
@@ -1,782 +0,0 @@
- This project has been alive for many years. Countless people have provided
- feedback that have improved curl. Here follows a list of people that have
- contributed (a-z order).
-
- If you have contributed but are missing here, please let us know!
-
-Aaron Oneal
-Adam D. Moss
-Adam Piggott
-Adrian Schuur
-Alan Pinstein
-Albert Chin-A-Young
-Albert Choy
-Ale Vesely
-Aleksandar Milivojevic
-Alessandro Vesely
-Alex Fishman
-Alex Neblett
-Alex Suykov
-Alex aka WindEagle
-Alexander Beedie
-Alexander Kourakos
-Alexander Krasnostavsky
-Alexander Lazic
-Alexander Zhuravlev
-Alexey Borzov
-Alexey Pesternikov
-Alexey Simak
-Alexis Carvalho
-Allen Pulsifer
-Amol Pattekar
-Anatoli Tubman
-Anders Gustafsson
-Andi Jahja
-Andre Guibert de Bruet
-Andreas Damm
-Andreas Faerber
-Andreas Farber
-Andreas Ntaflos
-Andreas Olsson
-Andreas Rieke
-Andreas Schuldei
-Andreas Wurf
-Andres Garcia
-Andrew Benham
-Andrew Biggs
-Andrew Bushnell
-Andrew Francis
-Andrew Fuller
-Andrew Moise
-Andrew Wansink
-Andrew de los Reyes
-Andrés García
-Andy Cedilnik
-Andy Serpa
-Andy Tsouladze
-Angus Mackay
-Anthony Bryan
-Antoine Calando
-Anton Kalmykov
-Arkadiusz Miskiewicz
-Armel Asselin
-Arnaud Ebalard
-Arve Knudsen
-Ates Goral
-Augustus Saunders
-Avery Fay
-Axel Tillequin
-Balint Szilakszi
-Bart Whiteley
-Bas Mevissen
-Ben Greear
-Ben Madsen
-Ben Van Hof
-Benbuck Nason
-Benjamin Gerard
-Bernard Leak
-Bertrand Demiddelaer
-Bill Egert
-Bill Hoffman
-Bjorn Augustsson
-Bjorn Reese
-Björn Stenberg
-Bob Schader
-Bogdan Nicula
-Brad Burdick
-Bradford Bruce
-Brendan Jurd
-Brent Beardsley
-Brian Akins
-Brian Dessent
-Brian J. Murrell
-Brian R Duffy
-Brian Ulm
-Brock Noland
-Bruce Mitchener
-Bryan Henderson
-Bryan Kemp
-Camille Moncelier
-Caolan McNamara
-Carsten Lange
-Casey O'Donnell
-Chad Monroe
-Charles Kerr
-Chih-Chung Chang
-Chris "Bob Bob"
-Chris Combes
-Chris Conroy
-Chris Deidun
-Chris Flerackers
-Chris Gaukroger
-Chris Maltby
-Chris Mumford
-Christian Krause
-Christian Kurz
-Christian Robottom Reis
-Christian Schmitz
-Christian Vogt
-Christophe Demory
-Christophe Legry
-Christopher Palow
-Christopher R. Palmer
-Ciprian Badescu
-Claes Jakobsson
-Clarence Gardner
-Clifford Wolf
-Cody Jones
-Colin Hogben
-Colin Watson
-Colm Buckley
-Constantine Sapuntzakis
-Cory Nelson
-Craig A West
-Craig Davison
-Craig Markwardt
-Cris Bailiff
-Curt Bogmine
-Cyrill Osterwalder
-Damien Adant
-Dan Becker
-Dan C
-Dan Fandrich
-Dan Nelson
-Dan Petitt
-Dan Torop
-Dan Zitter
-Daniel Black
-Daniel Cater
-Daniel Egger
-Daniel Fandrich
-Daniel Johnson
-Daniel Steinberg
-Daniel Stenberg
-Daniel at touchtunes
-Darryl House
-Dave Dribin
-Dave Halbakken
-Dave Hamilton
-Dave May
-Dave Vasilevsky
-David Bau
-David Binderman
-David Byron
-David Cohen
-David Eriksson
-David Houlder
-David Hull
-David J Meyer
-David James
-David Kierznowski
-David Kimdon
-David Lang
-David LeBlanc
-David McCreedy
-David Odin
-David Phillips
-David Rosenstrauch
-David Shaw
-David Tarendash
-David Thiel
-David Wright
-David Yan
-Dengminwen
-Detlef Schmier
-Didier Brisebourg
-Diego Casorran
-Dima Barsky
-Dimitris Sarris
-Dinar
-Dirk Eddelbuettel
-Dirk Manske
-Dmitriy Sergeyev
-Dmitry Bartsevich
-Dmitry Kurochkin
-Dmitry Popov
-Dmitry Rechkin
-Dolbneff A.V
-Domenico Andreoli
-Dominick Meglio
-Doug Kaufman
-Doug Porter
-Douglas E. Wegscheid
-Douglas R. Horner
-Dov Murik
-Duane Cathey
-Duncan Mac-Vicar Prett
-Dustin Boswell
-Dylan Ellicott
-Dylan Salisbury
-Early Ehlinger
-Ebenezer Ikonne
-Edin Kadribasic
-Eduard Bloch
-Eetu Ojanen
-Ellis Pritchard
-Emanuele Bovisio
-Emil Romanus
-Emiliano Ida
-Enrico Scholz
-Enrik Berkhan
-Eric Cooper
-Eric Landes
-Eric Lavigne
-Eric Melville
-Eric Rautman
-Eric Thelin
-Eric Vergnaud
-Eric Wong
-Eric Young
-Erick Nuwendam
-Erwan Legrand
-Erwin Authried
-Eugene Kotlyarov
-Evan Jordan
-Eygene Ryabinkin
-Fabian Keil
-Fabrizio Ammollo
-Fedor Karpelevitch
-Felix von Leitner
-Feng Tu
-Florian Schoppmann
-Forrest Cahoon
-Frank Hempel
-Frank Keeney
-Frank McGeough
-Frank Ticheler
-Fred Machado
-Fred New
-Fred Noz
-Frederic Lepied
-Gabriel Kuri
-Gary Maxwell
-Gautam Kachroo
-Gautam Mani
-Gavrie Philipson
-Gaz Iqbal
-Georg Horn
-Georg Huettenegger
-Georg Lippitsch
-Georg Wicherski
-Gerd v. Egidy
-Gerhard Herre
-Gerrit Bruchhäuser
-Giancarlo Formicuccia
-Giaslas Georgios
-Gil Weber
-Gilad
-Gilbert Ramirez Jr.
-Gilles Blanc
-Gisle Vanem
-Giuseppe Attardi
-Giuseppe D'Ambrosio
-Glen Nakamura
-Glen Scott
-Grant Erickson
-Greg Hewgill
-Greg Morse
-Greg Onufer
-Greg Zavertnik
-Grigory Entin
-Guenole Bescon
-Guenter Knauf
-Guillaume Arluison
-Gustaf Hui
-Gwenole Beauchesne
-Götz Babin-Ebell
-Hamish Mackenzie
-Hang Kin Lau
-Hanno Kranzhoff
-Hans Steegers
-Hans-Jurgen May
-Hardeep Singh
-Harshal Pradhan
-Heikki Korpela
-Henrik Storner
-Hidemoto Nakada
-Hzhijun
-Ian Ford
-Ian Gulliver
-Ian Lynagh
-Ian Turner
-Ian Wilkes
-Ignacio Vazquez-Abrams
-Igor Franchuk
-Igor Novoseltsev
-Igor Polyakov
-Ilguiz Latypov
-Ilja van Sprundel
-Immanuel Gregoire
-Ingmar Runge
-Ingo Ralf Blum
-Ingo Wilken
-Jacky Lam
-Jacob Meuser
-Jad Chamcham
-James Bursa
-James Cheng
-James Clancy
-James Cone
-James Gallagher
-James Griffiths
-James Housley
-James MacMillan
-Jamie Lokier
-Jamie Newton
-Jamie Wilkinson
-Jan Kunder
-Jared Lundell
-Jari Sundell
-Jason S. Priebe
-Jay Austin
-Jayesh A Shah
-Jaz Fresh
-Jean Jacques Drouin
-Jean-Claude Chauve
-Jean-Francois Bertrand
-Jean-Louis Lemaire
-Jean-Marc Ranger
-Jean-Philippe Barrette-LaPierre
-Jeff Johnson
-Jeff Lawson
-Jeff Phillips
-Jeff Pohlmeyer
-Jeff Weber
-Jeffrey Pohlmeyer
-Jeremy Friesner
-Jerome Muffat-Meridol
-Jes Badwal
-Jesper Jensen
-Jesse Noller
-Jim Drash
-Jim Freeman
-Jim Meyering
-Jocelyn Jaubert
-Joe Halpin
-Joe Malicki
-Joel Chen
-Jofell Gallardo
-Johan Anderson
-Johan Nilsson
-Johan van Selst
-John Crow
-John Dennis
-John E. Malmberg
-John Janssen
-John Kelly
-John Lask
-John Lightsey
-John McGowan
-John P. McCaskey
-John Wilkinson
-Johnny Luong
-Jon Grubbs
-Jon Nelson
-Jon Travis
-Jon Turner
-Jonas Forsman
-Jonatan Lander
-Jonathan Hseu
-Jongki Suwandi
-Jose Kahan
-Josef Wolf
-Josh Kapell
-Joshua Kwan
-Juan F. Codagnone
-Juan Ignacio Hervás
-Judson Bishop
-Juergen Wilke
-Jukka Pihl
-Julian Noble
-Julien Chaffraix
-Jun-ichiro itojun Hagino
-Jurij Smakov
-Justin Fletcher
-Jörg Mueller-Tolk
-Jörn Hartroth
-Kai Sommerfeld
-Kai-Uwe Rommel
-Kamil Dudka
-Kang-Jin Lee
-Karl Moerder
-Karol Pietrzak
-Kaspar Brand
-Katie Wang
-Kees Cook
-Keith MacDonald
-Keith McGuigan
-Keith Mok
-Ken Hirsch
-Ken Rastatter
-Kent Boortz
-Keshav Krity
-Kevin Baughman
-Kevin Fisk
-Kevin Lussier
-Kevin Reed
-Kevin Roth
-Kim Rinnewitz
-Kimmo Kinnunen
-Kjell Ericson
-Kjetil Jacobsen
-Klevtsov Vadim
-Kris Kennaway
-Krishnendu Majumdar
-Krister Johansen
-Kristian Gunstone
-Kristian Köhntopp
-Kyle Sallee
-Lachlan O'Dea
-Larry Campbell
-Larry Fahnoe
-Lars Gustafsson
-Lars J. Aas
-Lars Nilsson
-Lars Torben Wilson
-Lau Hang Kin
-Laurent Rabret
-Legoff Vincent
-Lehel Bernadt
-Len Krause
-Lenaic Lefever
-Lenny Rachitsky
-Liam Healy
-Linas Vepstas
-Ling Thio
-Linus Nielsen Feltzing
-Lisa Xu
-Liza Alenchery
-Loic Dachary
-Loren Kirkby
-Luca Altea
-Luca Alteas
-Lucas Adamski
-Lukasz Czekierda
-Luke Call
-Luong Dinh Dung
-Maciej Karpiuk
-Maciej W. Rozycki
-Manfred Schwarb
-Marc Boucher
-Marc Kleine-Budde
-Marcelo Juchem
-Marcin Konicki
-Marco G. Salvagno
-Marco Maggi
-Marcus Webster
-Mario Schroeder
-Mark Butler
-Mark Davies
-Mark Eichin
-Mark Incley
-Mark Karpeles
-Mark Lentczner
-Markus Koetter
-Markus Moeller
-Markus Oberhumer
-Martijn Koster
-Martin C. Martin
-Martin Drasar
-Martin Hedenfalk
-Martin Skinner
-Martin Storsjo
-Marty Kuhrt
-Maruko
-Massimiliano Ziccardi
-Mateusz Loskot
-Mathias Axelsson
-Mats Lidell
-Matt Kraai
-Matt Veenstra
-Matt Witherspoon
-Matthew Blain
-Matthew Clarke
-Maurice Barnum
-Max Katsev
-Maxim Ivanov
-Maxim Perenesenko
-Mekonikum
-Mettgut Jamalla
-Michael Benedict
-Michael Calmer
-Michael Cronenworth
-Michael Curtis
-Michael Goffioul
-Michael Jahn
-Michael Jerris
-Michael Mealling
-Michael Smith
-Michael Stillwell
-Michael Wallner
-Michal Bonino
-Michal Marek
-Michele Bini
-Mihai Ionescu
-Mikael Sennerholm
-Mike Bytnar
-Mike Crowe
-Mike Dobbs
-Mike Hommey
-Mike Protts
-Mike Revi
-Miklos Nemeth
-Mitz Wark
-Mohamed Lrhazi
-Mohun Biswas
-Moonesamy
-Nathan Coulter
-Nathan O'Sullivan
-Nathanael Nerode
-Naveen Noel
-Neil Dunbar
-Neil Spring
-Nic Roets
-Nick Gimbrone
-Nick Humfrey
-Nick Zitzmann
-Nico Baggus
-Nicolas Berloquin
-Nicolas Croiset
-Nicolas François
-Niels van Tongeren
-Nikita Schmidt
-Nikitinskit Dmitriy
-Niklas Angebrand
-Nikolai Kondrashov
-Nir Soffer
-Nis Jorgensen
-Nodak Sodak
-Norbert Frese
-Norbert Novotny
-Ofer
-Olaf Stueben
-Olaf Stüben
-Oren Tirosh
-P R Schaffner
-Pascal Terjan
-Patrick Bihan-Faou
-Patrick Monnerat
-Patrick Scott
-Patrick Smith
-Patrik Thunstrom
-Paul Harrington
-Paul Marquis
-Paul Moore
-Paul Nolan
-Paul Querna
-Pavel Cenek
-Pavel Orehov
-Pawel A. Gajda
-Pawel Kierski
-Pedro Neves
-Pete Su
-Peter Bray
-Peter Forret
-Peter Heuchert
-Peter Korsgaard
-Peter Lamberg
-Peter O'Gorman
-Peter Pentchev
-Peter Silva
-Peter Su
-Peter Sylvester
-Peter Todd
-Peter Verhas
-Peter Wullinger
-Peteris Krumins
-Phil Blundell
-Phil Karn
-Phil Lisiecki
-Phil Pellouchoud
-Philip Gladstone
-Philip Langdale
-Philippe Hameau
-Philippe Raoult
-Philippe Vaucher
-Pierre
-Pierre Brico
-Pooyan McSporran
-Pramod Sharma
-Puneet Pawaia
-Quagmire
-Rafa Muyo
-Rafael Sagula
-Rainer Koenig
-Ralf S. Engelschall
-Ralph Beckmann
-Ralph Mitchell
-Ramana Mokkapati
-Randy McMurchy
-Ravi Pratap
-Ray Dassen
-Ray Pekowski
-Reinout van Schouwen
-Renato Botelho
-Renaud Chaillat
-Renaud Duhaut
-Rene Bernhardt
-Rene Rebe
-Reuven Wachtfogel
-Ricardo Cadime
-Rich Gray
-Rich Rauenzahn
-Richard Archer
-Richard Atterer
-Richard Bramante
-Richard Clayton
-Richard Cooper
-Richard Gorton
-Richard Prescott
-Rick Jones
-Rick Richardson
-Rob Crittenden
-Rob Jones
-Rob Stanzel
-Robert A. Monat
-Robert D. Young
-Robert Foreman
-Robert Iakobashvili
-Robert Olson
-Robert Weaver
-Robin Johnson
-Robin Kay
-Robson Braga Araujo
-Rodney Simmons
-Roland Blom
-Roland Krikava
-Roland Zimmermann
-Rolland Dudemaine
-Roman Koifman
-Ron Zapp
-Rosimildo da Silva
-Roy Shan
-Rune Kleveland
-Ryan Nelson
-S. Moonesamy
-Salvador Dávila
-Salvatore Sorrentino
-Sam Listopad
-Sampo Kellomaki
-Samuel Díaz García
-Samuel Listopad
-Sander Gates
-Sandor Feldi
-Saul good
-Scott Barrett
-Scott Cantor
-Scott Davis
-Scott McCreary
-Sebastien Willemijns
-Senthil Raja Velu
-Sergio Ballestrero
-Seshubabu Pasam
-Sh Diao
-Sharad Gupta
-Shard
-Shawn Poulson
-Shmulik Regev
-Siddhartha Prakash Jain
-Siegfried Gyuricsko
-Simon Dick
-Simon Josefsson
-Simon Liu
-Song Ma
-Sonia Subramanian
-Spacen Jasset
-Spiridonoff A.V
-Stadler Stephan
-Stan van de Burgt
-Stefan Esser
-Stefan Krause
-Stefan Teleman
-Stefan Ulrich
-Stephan Bergmann
-Stephen Collyer
-Stephen Kick
-Stephen More
-Sterling Hughes
-Steve Green
-Steve Lhomme
-Steve Little
-Steve Marx
-Steve Oliphant
-Steve Roskowski
-Steven Bazyl
-Steven G. Johnson
-Stoned Elipot
-Sven Anders
-Sven Neuhaus
-Sven Wegener
-Sébastien Willemijns
-T. Bharath
-T. Yamada
-Tanguy Fautre
-Temprimus
-Thomas J. Moore
-Thomas Klausner
-Thomas Schwinge
-Thomas Tonino
-Tim Ansell
-Tim Baker
-Tim Bartley
-Tim Chen
-Tim Costello
-Tim Sneddon
-Tobias Rundström
-Toby Peterson
-Todd Kulesza
-Todd Vierling
-Tom Benoist
-Tom Lee
-Tom Mattison
-Tom Moers
-Tom Mueller
-Tom Regner
-Tom Zerucha
-Tomas Pospisek
-Tomas Szepe
-Tomasz Lacki
-Tommy Tam
-Ton Voon
-Toon Verwaest
-Tor Arntsen
-Torsten Foertsch
-Toshio Kuratomi
-Toshiyuki Maezawa
-Traian Nicolescu
-Troels Walsted Hansen
-Troy Engel
-Tupone Alfredo
-Ulf Härnhammar
-Ulrich Zadow
-Venkat Akella
-Victor Snezhko
-Vikram Saxena
-Vilmos Nebehaj
-Vincent Bronner
-Vincent Le Normand
-Vincent Penquerc'h
-Vincent Sanders
-Vlad Grachov
-Vladimir Lazarenko
-Vojtech Janota
-Vojtech Minarik
-Walter J. Mack
-Wayne Haigh
-Werner Koch
-Wesley Laxton
-Wesley Miaw
-Wez Furlong
-Wilfredo Sanchez
-Wojciech Zwiefka
-Xavier Bouchoux
-Yang Tse
-Yarram Sunil
-Yehoshua Hershberg
-Yuriy Sosov
-Yves Lejeune
-Zmey Petroff
-Zvi Har'El
-nk
-swalkaus at yahoo.com
-tommink[at]post.pl
diff --git a/src/other/curl/docs/TODO b/src/other/curl/docs/TODO
deleted file mode 100644
index fbf64c7..0000000
--- a/src/other/curl/docs/TODO
+++ /dev/null
@@ -1,601 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-                Things that could be nice to do in the future
-
- Things to do in project cURL. Please tell us what you think, contribute and
- send us patches that improve things!
-
- All bugs documented in the KNOWN_BUGS document are subject for fixing!
-
- 1. libcurl
- 1.1 Zero-copy interface
- 1.2 More data sharing
- 1.3 struct lifreq
- 1.4 signal-based resolver timeouts
-
- 2. libcurl - multi interface
- 2.1 More non-blocking
- 2.2 Remove easy interface internally
- 2.3 Avoid having to remove/readd handles
- 2.4 Fix HTTP Pipelining for PUT
-
- 3. Documentation
- 3.1  More and better
-
- 4. FTP
- 4.1 PRET
- 4.2 Alter passive/active on failure and retry
- 4.3 Earlier bad letter detection
- 4.4 REST for large files
- 4.5 FTP proxy support
- 4.6 ASCII support
-
- 5. HTTP
- 5.1 Better persistency for HTTP 1.0
- 5.2 support FF3 sqlite cookie files
- 5.3 Rearrange request header order
-
- 6. TELNET
- 6.1 ditch stdin
- 6.2 ditch telnet-specific select
- 6.3 feature negotiation debug data
- 6.4 send data in chunks
-
- 7. SSL
- 7.1 Disable specific versions
- 7.2 Provide mutex locking API
- 7.3 Evaluate SSL patches
- 7.4 Cache OpenSSL contexts
- 7.5 Export session ids
- 7.6 Provide callback for cert verification
- 7.7 Support other SSL libraries
- 7.8  Support SRP on the TLS layer
- 7.9 improve configure --with-ssl
- 7.10 Make NTLM work with other crypto functions
-
- 8. GnuTLS
- 8.1 SSL engine stuff
- 8.2 SRP
- 8.3 non-blocking
- 8.4 check connection
-
- 9. Other protocols
- 9.1 ditch ldap-specific select
-
- 10. New protocols
- 10.1 RTSP
- 10.2 RSYNC
- 10.3 RTMP
-
- 11. Client
- 11.1 Content-Disposition
- 11.2 sync
- 11.3 glob posts
- 11.4 prevent file overwriting
- 11.5 ftp wildcard download
- 11.6 simultaneous parallel transfers
- 11.7 provide formpost headers
- 11.8 url-specific options
- 11.9 metalink support
- 11.10 warning when setting an option
-
- 12. Build
- 12.1 roffit
-
- 13. Test suite
- 13.1 SSL tunnel
- 13.2 nicer lacking perl message
- 13.3 more protocols supported
- 13.4 more platforms supported
-
- 14. Next SONAME bump
- 14.1 http-style HEAD output for ftp
- 14.2 combine error codes
- 14.3 extend CURLOPT_SOCKOPTFUNCTION prototype
-
- 15. Next major release
- 15.1 cleanup return codes
- 15.2 remove obsolete defines
- 15.3 size_t
- 15.4 remove several functions
- 15.5 remove CURLOPT_FAILONERROR
- 15.6 remove CURLOPT_DNS_USE_GLOBAL_CACHE
- 15.7 remove progress meter from libcurl
-
-==============================================================================
-
-1. libcurl
-
-1.1 Zero-copy interface
-
- Introduce another callback interface for upload/download that makes one less
- copy of data and thus a faster operation.
- [http://curl.haxx.se/dev/no_copy_callbacks.txt]
-
-1.2 More data sharing
-
- curl_share_* functions already exist and work, and they can be extended to
- share more. For example, enable sharing of the ares channel and the
- connection cache.
-
-1.3 struct lifreq
-
- Use 'struct lifreq' and SIOCGLIFADDR instead of 'struct ifreq' and
- SIOCGIFADDR on newer Solaris versions as they claim the latter is obsolete.
- To support ipv6 interface addresses for network interfaces properly.
-
-1.4 signal-based resolver timeouts
-
- libcurl built without an asynchronous resolver library uses alarm() to time
- out DNS lookups. When a timeout occurs, this causes libcurl to jump from the
- signal handler back into the library with a sigsetjmp, which effectively
- causes libcurl to continue running within the signal handler. This is
- non-portable and could cause problems on some platforms. A discussion on the
- problem is available at http://curl.haxx.se/mail/lib-2008-09/0197.html
-
- Also, alarm() provides timeout resolution only to the nearest second. alarm
- ought to be replaced by setitimer on systems that support it.
-
-2. libcurl - multi interface
-
-2.1 More non-blocking
-
- Make sure we don't ever loop because of non-blocking sockets returning
- EWOULDBLOCK or similar. Blocking cases include:
-
- - Name resolves on non-windows unless c-ares is used
- - GnuTLS SSL connections
- - NSS SSL connections
- - Active FTP connections
- - HTTP proxy CONNECT operations
- - SOCKS proxy handshakes
- - file:// transfers
- - TELNET transfers
- - The "DONE" operation (post transfer protocol-specific actions) for the
-   protocols SFTP, SMTP, FTP. Fixing Curl_done() for this is a worthy task.
-
-2.2 Remove easy interface internally
-
- Make curl_easy_perform() a wrapper-function that simply creates a multi
- handle, adds the easy handle to it, runs curl_multi_perform() until the
- transfer is done, then detach the easy handle, destroy the multi handle and
- return the easy handle's return code. This will thus make everything
- internally use and assume the multi interface. The select()-loop should use
- curl_multi_socket().
-
-2.3 Avoid having to remove/readd handles
-
- curl_multi_handle_control() - this can control the easy handle (while) added
- to a multi handle in various ways:
-
- o RESTART, unconditionally restart this easy handle's transfer from the
-   start, re-init the state
-
- o RESTART_COMPLETED, restart this easy handle's transfer but only if the
-   existing transfer has already completed and it is in a "finished state".
-
- o STOP, just stop this transfer and consider it completed
-
- o PAUSE?
-
- o RESUME?
-
-2.4 Fix HTTP Pipelining for PUT
-
- HTTP Pipelining can be a way to greatly enhance performance for multiple
- serial requests and currently libcurl only supports that for HEAD and GET
- requests but it should also be possible for PUT.
-
-
-3. Documentation
-
-3.1  More and better
-
- Exactly
-
-4. FTP
-
-4.1 PRET
-
- PRET is a command that primarily "drftpd" supports, which could be useful
- when using libcurl against such a server. It is a non-standard and a rather
- oddly designed command, but...
- http://curl.haxx.se/bug/feature.cgi?id=1729967
-
-4.2 Alter passive/active on failure and retry
-
- When trying to connect passively to a server which only supports active
- connections, libcurl returns CURLE_FTP_WEIRD_PASV_REPLY and closes the
- connection. There could be a way to fallback to an active connection (and
- vice versa). http://curl.haxx.se/bug/feature.cgi?id=1754793
-
-4.3 Earlier bad letter detection
-
- Make the detection of (bad) %0d and %0a codes in FTP url parts earlier in the
- process to avoid doing a resolve and connect in vain.
-
-4.4 REST for large files
-
- REST fix for servers not behaving well on >2GB requests. This should fail if
- the server doesn't set the pointer to the requested index. The tricky
- (impossible?) part is to figure out if the server did the right thing or not.
-
-4.5 FTP proxy support
-
- Support the most common FTP proxies, Philip Newton provided a list allegedly
- from ncftp. This is not a subject without debate, and is probably not really
- suitable for libcurl.  http://curl.haxx.se/mail/archive-2003-04/0126.html
-
-4.6 ASCII support
-
- FTP ASCII transfers do not follow RFC959. They don't convert the data
- accordingly.
-
-5. HTTP
-
-5.1 Better persistency for HTTP 1.0
-
- "Better" support for persistent connections over HTTP 1.0
- http://curl.haxx.se/bug/feature.cgi?id=1089001
-
-5.2 support FF3 sqlite cookie files
-
- Firefox 3 is changing from its former format to a a sqlite database instead.
- We should consider how (lib)curl can/should support this.
- http://curl.haxx.se/bug/feature.cgi?id=1871388
-
-5.3 Rearrange request header order
-
- Server implementors often make an effort to detect browser and to reject
- clients it can detect to not match. One of the last details we cannot yet
- control in libcurl's HTTP requests, which also can be exploited to detect
- that libcurl is in fact used even when it tries to impersonate a browser, is
- the order of the request headers. I propose that we introduce a new option in
- which you give headers a value, and then when the HTTP request is built it
- sorts the headers based on that number. We could then have internally created
- headers use a default value so only headers that need to be moved have to be
- specified.
-
-
-6. TELNET
-
-6.1 ditch stdin
-
-Reading input (to send to the remote server) on stdin is a crappy solution for
-library purposes. We need to invent a good way for the application to be able
-to provide the data to send.
-
-6.2 ditch telnet-specific select
-
- Move the telnet support's network select() loop go away and merge the code
- into the main transfer loop. Until this is done, the multi interface won't
- work for telnet.
-
-6.3 feature negotiation debug data
-
-  Add telnet feature negotiation data to the debug callback as header data.
-
-6.4 send data in chunks
-
-  Currently, telnet sends data one byte at a time.  This is fine for interactive
-  use, but inefficient for any other.  Sent data should be sent in larger
-  chunks.
-
-7. SSL
-
-7.1 Disable specific versions
-
- Provide an option that allows for disabling specific SSL versions, such as
- SSLv2 http://curl.haxx.se/bug/feature.cgi?id=1767276
-
-7.2 Provide mutex locking API
-
- Provide a libcurl API for setting mutex callbacks in the underlying SSL
- library, so that the same application code can use mutex-locking
- independently of OpenSSL or GnutTLS being used.
-
-7.3 Evaluate SSL patches
-
- Evaluate/apply Gertjan van Wingerde's SSL patches:
- http://curl.haxx.se/mail/lib-2004-03/0087.html
-
-7.4 Cache OpenSSL contexts
-
- "Look at SSL cafile - quick traces look to me like these are done on every
- request as well, when they should only be necessary once per ssl context (or
- once per handle)". The major improvement we can rather easily do is to make
- sure we don't create and kill a new SSL "context" for every request, but
- instead make one for every connection and re-use that SSL context in the same
- style connections are re-used. It will make us use slightly more memory but
- it will libcurl do less creations and deletions of SSL contexts.
-
-7.5 Export session ids
-
- Add an interface to libcurl that enables "session IDs" to get
- exported/imported. Cris Bailiff said: "OpenSSL has functions which can
- serialise the current SSL state to a buffer of your choice, and recover/reset
- the state from such a buffer at a later date - this is used by mod_ssl for
- apache to implement and SSL session ID cache".
-
-7.6 Provide callback for cert verification
-
- OpenSSL supports a callback for customised verification of the peer
- certificate, but this doesn't seem to be exposed in the libcurl APIs. Could
- it be? There's so much that could be done if it were!
-
-7.7 Support other SSL libraries
-
- Make curl's SSL layer capable of using other free SSL libraries.  Such as
- MatrixSSL (http://www.matrixssl.org/).
-
-7.8  Support SRP on the TLS layer
-
- Peter Sylvester's patch for SRP on the TLS layer.  Awaits OpenSSL support for
- this, no need to support this in libcurl before there's an OpenSSL release
- that does it.
-
-7.9 improve configure --with-ssl
-
- make the configure --with-ssl option first check for OpenSSL, then GnuTLS,
- then NSS...
-
-7.10 Make NTLM work with other crypto functions
-
- Get NTLM working using the functions provided by NSS etc. Not strictly
- SSL/TLS related, but hey... Another option is to get available DES and MD4
- source code from the cryptopp library. They are fine license-wise, but are
- C++. NTLM currenly only works when libcurl is built with OpenSSL or GnuTLS
- support.
-
-8. GnuTLS
-
-8.1 SSL engine stuff
-
- Is this even possible?
-
-8.2 SRP
-
- Work out a common method with Peter Sylvester's OpenSSL-patch for SRP on the
- TLS to provide name and password. GnuTLS already supports it...
-
-8.3 non-blocking
-
- Fix the connection phase to be non-blocking when multi interface is used
-
-8.4 check connection
-
- Add a way to check if the connection seems to be alive, to correspond to the
- SSL_peak() way we use with OpenSSL.
-
-9. Other protocols
-
-9.1 ditch ldap-specific select
-
- * Look over the implementation. The looping will have to "go away" from the
-   lib/ldap.c source file and get moved to the main network code so that the
-   multi interface and friends will work for LDAP as well.
-
-9.2 stop TFTP blocking
-
-  Stop TFTP from being blocking and doing its own read loop in tftp_do.
-
-10. New protocols
-
-10.1 RTSP
-
- RFC2326 (protocol - very HTTP-like, also contains URL description)
-
-10.2 RSYNC
-
- There's no RFC for protocol nor URI/URL format.  An implementation should
- most probably use an existing rsync library, such as librsync.
-
-10.3 RTMP
-
- There exists a patch that claims to introduce this protocol:
- http://osdir.com/ml/gnu.gnash.devel2/2006-11/msg00278.html, further details
- in the feature-request: http://curl.haxx.se/bug/feature.cgi?id=1843469
-
-11. Client
-
-11.1 Content-Disposition
-
- Add option that is similar to -O but that takes the output file name from the
- Content-Disposition: header, and/or uses the local file name used in
- redirections for the cases the server bounces the request further to a
- different file (name): http://curl.haxx.se/bug/feature.cgi?id=1364676
-
-11.2 sync
-
- "curl --sync http://example.com/feed[1-100].rss" or
- "curl --sync http://example.net/{index,calendar,history}.html"
-
- Downloads a range or set of URLs using the remote name, but only if the
- remote file is newer than the local file. A Last-Modified HTTP date header
- should also be used to set the mod date on the downloaded file.
-
-11.3 glob posts
-
- Globbing support for -d and -F, as in 'curl -d "name=foo[0-9]" URL'.
- This is easily scripted though.
-
-11.4 prevent file overwriting
-
- Add an option that prevents cURL from overwriting existing local files. When
- used, and there already is an existing file with the target file name
- (either -O or -o), a number should be appended (and increased if already
- existing). So that index.html becomes first index.html.1 and then
- index.html.2 etc.
-
-11.5 ftp wildcard download
-
- "curl ftp://site.com/*.txt"
-
-11.6 simultaneous parallel transfers
-
- The client could be told to use maximum N simultaneous parallel transfers and
- then just make sure that happens. It should of course not make more than one
- connection to the same remote host. This would require the client to use the
- multi interface. http://curl.haxx.se/bug/feature.cgi?id=1558595
-
-11.7 provide formpost headers
-
- Extending the capabilities of the multipart formposting. How about leaving
- the ';type=foo' syntax as it is and adding an extra tag (headers) which
- works like this: curl -F "coolfiles=@fil1.txt;headers=@fil1.hdr" where
- fil1.hdr contains extra headers like
-
-   Content-Type: text/plain; charset=KOI8-R"
-   Content-Transfer-Encoding: base64
-   X-User-Comment: Please don't use browser specific HTML code
-
- which should overwrite the program reasonable defaults (plain/text,
- 8bit...)
-
-11.8 url-specific options
-
- Provide a way to make options bound to a specific URL among several on the
- command line. Possibly by letting ':' separate options between URLs,
- similar to this:
-
-    curl --data foo --url url.com : \
-        --url url2.com : \
-        --url url3.com --data foo3
-
- (More details: http://curl.haxx.se/mail/archive-2004-07/0133.html)
-
- The example would do a POST-GET-POST combination on a single command line.
-
-11.9 metalink support
-
- Add metalink support to curl (http://www.metalinker.org/). This is most useful
- with simultaneous parallel transfers (11.6) but not necessary.
-
-11.10 warning when setting an option
-
-  Display a warning when libcurl returns an error when setting an option.
-  This can be useful to tell when support for a particular feature hasn't been
-  compiled into the library.
-
-12. Build
-
-12.1 roffit
-
- Consider extending 'roffit' to produce decent ASCII output, and use that
- instead of (g)nroff when building src/hugehelp.c
-
-13. Test suite
-
-13.1 SSL tunnel
-
- Make our own version of stunnel for simple port forwarding to enable HTTPS
- and FTP-SSL tests without the stunnel dependency, and it could allow us to
- provide test tools built with either OpenSSL or GnuTLS
-
-13.2 nicer lacking perl message
-
- If perl wasn't found by the configure script, don't attempt to run the tests
- but explain something nice why it doesn't.
-
-13.3 more protocols supported
-
- Extend the test suite to include more protocols. The telnet could just do ftp
- or http operations (for which we have test servers).
-
-13.4 more platforms supported
-
- Make the test suite work on more platforms. OpenBSD and Mac OS. Remove
- fork()s and it should become even more portable.
-
-14. Next SONAME bump
-
-14.1 http-style HEAD output for ftp
-
- #undef CURL_FTP_HTTPSTYLE_HEAD in lib/ftp.c to remove the HTTP-style headers
- from being output in NOBODY requests over ftp
-
-14.2 combine error codes
-
- Combine some of the error codes to remove duplicates.  The original
- numbering should not be changed, and the old identifiers would be
- macroed to the new ones in an CURL_NO_OLDIES section to help with
- backward compatibility.
-
- Candidates for removal and their replacements:
-
-    CURLE_FILE_COULDNT_READ_FILE => CURLE_REMOTE_FILE_NOT_FOUND
-    CURLE_FTP_COULDNT_RETR_FILE => CURLE_REMOTE_FILE_NOT_FOUND
-    CURLE_FTP_COULDNT_USE_REST => CURLE_RANGE_ERROR
-    CURLE_FUNCTION_NOT_FOUND => CURLE_FAILED_INIT
-    CURLE_LDAP_INVALID_URL => CURLE_URL_MALFORMAT
-    CURLE_TFTP_NOSUCHUSER => CURLE_TFTP_ILLEGAL
-    CURLE_TFTP_NOTFOUND => CURLE_REMOTE_FILE_NOT_FOUND
-    CURLE_TFTP_PERM => CURLE_REMOTE_ACCESS_DENIED
-
-14.3 extend CURLOPT_SOCKOPTFUNCTION prototype
-
- The current prototype only provides 'purpose' that tells what the
- connection/socket is for, but not any protocol or similar. It makes it hard
- for applications to differentiate on TCP vs UDP and even HTTP vs FTP and
- similar.
-
-15. Next major release
-
-15.1 cleanup return codes
-
- curl_easy_cleanup() returns void, but curl_multi_cleanup() returns a
- CURLMcode. These should be changed to be the same.
-
-15.2 remove obsolete defines
-
- remove obsolete defines from curl/curl.h
-
-15.3 size_t
-
- make several functions use size_t instead of int in their APIs
-
-15.4 remove several functions
-
- remove the following functions from the public API:
-
- curl_getenv
-
- curl_mprintf (and variations)
-
- curl_strequal
-
- curl_strnequal
-
- They will instead become curlx_ - alternatives. That makes the curl app
- still capable of using them, by building with them from source.
-
- These functions have no purpose anymore:
-
- curl_multi_socket
-
- curl_multi_socket_all
-
-15.5 remove CURLOPT_FAILONERROR
-
- Remove support for CURLOPT_FAILONERROR, it has gotten too kludgy and weird
- internally. Let the app judge success or not for itself.
-
-15.6 remove CURLOPT_DNS_USE_GLOBAL_CACHE
-
- Remove support for a global DNS cache. Anything global is silly, and we
- already offer the share interface for the same functionality but done
- "right".
-
-15.7 remove progress meter from libcurl
-
- The internally provided progress meter output doesn't belong in the library.
- Basically no application wants it (apart from curl) but instead applications
- can and should do their own progress meters using the progress callback.
-
- The progress callback should then be bumped as well to get proper 64bit
- variable types passed to it instead of doubles so that big files work
- correctly.
diff --git a/src/other/curl/docs/TheArtOfHttpScripting b/src/other/curl/docs/TheArtOfHttpScripting
deleted file mode 100644
index 47eb522..0000000
--- a/src/other/curl/docs/TheArtOfHttpScripting
+++ /dev/null
@@ -1,490 +0,0 @@
-Online:  http://curl.haxx.se/docs/httpscripting.html
-Date:    May 28, 2008
-
-                The Art Of Scripting HTTP Requests Using Curl
-                =============================================
-
- This document will assume that you're familiar with HTML and general
- networking.
-
- The possibility to write scripts is essential to make a good computer
- system. Unix' capability to be extended by shell scripts and various tools to
- run various automated commands and scripts is one reason why it has succeeded
- so well.
-
- The increasing amount of applications moving to the web has made "HTTP
- Scripting" more frequently requested and wanted. To be able to automatically
- extract information from the web, to fake users, to post or upload data to
- web servers are all important tasks today.
-
- Curl is a command line tool for doing all sorts of URL manipulations and
- transfers, but this particular document will focus on how to use it when
- doing HTTP requests for fun and profit. I'll assume that you know how to
- invoke 'curl --help' or 'curl --manual' to get basic information about it.
-
- Curl is not written to do everything for you. It makes the requests, it gets
- the data, it sends data and it retrieves the information. You probably need
- to glue everything together using some kind of script language or repeated
- manual invokes.
-
-1. The HTTP Protocol
-
- HTTP is the protocol used to fetch data from web servers. It is a very simple
- protocol that is built upon TCP/IP. The protocol also allows information to
- get sent to the server from the client using a few different methods, as will
- be shown here.
-
- HTTP is plain ASCII text lines being sent by the client to a server to
- request a particular action, and then the server replies a few text lines
- before the actual requested content is sent to the client.
-
- Using curl's option -v will display what kind of commands curl sends to the
- server, as well as a few other informational texts. -v is the single most
- useful option when it comes to debug or even understand the curl<->server
- interaction.
-
-2. URL
-
- The Uniform Resource Locator format is how you specify the address of a
- particular resource on the Internet. You know these, you've seen URLs like
- http://curl.haxx.se or https://yourbank.com a million times.
-
-3. GET a page
-
- The simplest and most common request/operation made using HTTP is to get a
- URL. The URL could itself refer to a web page, an image or a file. The client
- issues a GET request to the server and receives the document it asked for.
- If you issue the command line
-
-        curl http://curl.haxx.se
-
- you get a web page returned in your terminal window. The entire HTML document
- that that URL holds.
-
- All HTTP replies contain a set of headers that are normally hidden, use
- curl's -i option to display them as well as the rest of the document. You can
- also ask the remote server for ONLY the headers by using the -I option (which
- will make curl issue a HEAD request).
-
-4. Forms
-
- Forms are the general way a web site can present a HTML page with fields for
- the user to enter data in, and then press some kind of 'OK' or 'submit'
- button to get that data sent to the server. The server then typically uses
- the posted data to decide how to act. Like using the entered words to search
- in a database, or to add the info in a bug track system, display the entered
- address on a map or using the info as a login-prompt verifying that the user
- is allowed to see what it is about to see.
-
- Of course there has to be some kind of program in the server end to receive
- the data you send. You cannot just invent something out of the air.
-
- 4.1 GET
-
-  A GET-form uses the method GET, as specified in HTML like:
-
-        <form method="GET" action="junk.cgi">
-          <input type=text name="birthyear">
-          <input type=submit name=press value="OK">
-        </form>
-
-  In your favorite browser, this form will appear with a text box to fill in
-  and a press-button labeled "OK". If you fill in '1905' and press the OK
-  button, your browser will then create a new URL to get for you. The URL will
-  get "junk.cgi?birthyear=1905&press=OK" appended to the path part of the
-  previous URL.
-
-  If the original form was seen on the page "www.hotmail.com/when/birth.html",
-  the second page you'll get will become
-  "www.hotmail.com/when/junk.cgi?birthyear=1905&press=OK".
-
-  Most search engines work this way.
-
-  To make curl do the GET form post for you, just enter the expected created
-  URL:
-
-        curl "www.hotmail.com/when/junk.cgi?birthyear=1905&press=OK"
-
- 4.2 POST
-
-  The GET method makes all input field names get displayed in the URL field of
-  your browser. That's generally a good thing when you want to be able to
-  bookmark that page with your given data, but it is an obvious disadvantage
-  if you entered secret information in one of the fields or if there are a
-  large amount of fields creating a very long and unreadable URL.
-
-  The HTTP protocol then offers the POST method. This way the client sends the
-  data separated from the URL and thus you won't see any of it in the URL
-  address field.
-
-  The form would look very similar to the previous one:
-
-        <form method="POST" action="junk.cgi">
-          <input type=text name="birthyear">
-          <input type=submit name=press value=" OK ">
-        </form>
-
-  And to use curl to post this form with the same data filled in as before, we
-  could do it like:
-
-        curl -d "birthyear=1905&press=%20OK%20" www.hotmail.com/when/junk.cgi
-
-  This kind of POST will use the Content-Type
-  application/x-www-form-urlencoded and is the most widely used POST kind.
-
-  The data you send to the server MUST already be properly encoded, curl will
-  not do that for you. For example, if you want the data to contain a space,
-  you need to replace that space with %20 etc. Failing to comply with this
-  will most likely cause your data to be received wrongly and messed up.
-
-  Recent curl versions can in fact url-encode POST data for you, like this:
-
-        curl --data-urlencode "name=I am Daniel" www.example.com
-
- 4.3 File Upload POST
-
-  Back in late 1995 they defined an additional way to post data over HTTP. It
-  is documented in the RFC 1867, why this method sometimes is referred to as
-  RFC1867-posting.
-
-  This method is mainly designed to better support file uploads. A form that
-  allows a user to upload a file could be written like this in HTML:
-
-    <form method="POST" enctype='multipart/form-data' action="upload.cgi">
-      <input type=file name=upload>
-      <input type=submit name=press value="OK">
-    </form>
-
-  This clearly shows that the Content-Type about to be sent is
-  multipart/form-data.
-
-  To post to a form like this with curl, you enter a command line like:
-
-        curl -F upload=@localfilename -F press=OK [URL]
-
- 4.4 Hidden Fields
-
-  A very common way for HTML based application to pass state information
-  between pages is to add hidden fields to the forms. Hidden fields are
-  already filled in, they aren't displayed to the user and they get passed
-  along just as all the other fields.
-
-  A similar example form with one visible field, one hidden field and one
-  submit button could look like:
-
-    <form method="POST" action="foobar.cgi">
-      <input type=text name="birthyear">
-      <input type=hidden name="person" value="daniel">
-      <input type=submit name="press" value="OK">
-    </form>
-
-  To post this with curl, you won't have to think about if the fields are
-  hidden or not. To curl they're all the same:
-
-        curl -d "birthyear=1905&press=OK&person=daniel" [URL]
-
- 4.5 Figure Out What A POST Looks Like
-
-  When you're about fill in a form and send to a server by using curl instead
-  of a browser, you're of course very interested in sending a POST exactly the
-  way your browser does.
-
-  An easy way to get to see this, is to save the HTML page with the form on
-  your local disk, modify the 'method' to a GET, and press the submit button
-  (you could also change the action URL if you want to).
-
-  You will then clearly see the data get appended to the URL, separated with a
-  '?'-letter as GET forms are supposed to.
-
-5. PUT
-
- The perhaps best way to upload data to a HTTP server is to use PUT. Then
- again, this of course requires that someone put a program or script on the
- server end that knows how to receive a HTTP PUT stream.
-
- Put a file to a HTTP server with curl:
-
-        curl -T uploadfile www.uploadhttp.com/receive.cgi
-
-6. HTTP Authentication
-
- HTTP Authentication is the ability to tell the server your username and
- password so that it can verify that you're allowed to do the request you're
- doing. The Basic authentication used in HTTP (which is the type curl uses by
- default) is *plain* *text* based, which means it sends username and password
- only slightly obfuscated, but still fully readable by anyone that sniffs on
- the network between you and the remote server.
-
- To tell curl to use a user and password for authentication:
-
-        curl -u name:password www.secrets.com
-
- The site might require a different authentication method (check the headers
- returned by the server), and then --ntlm, --digest, --negotiate or even
- --anyauth might be options that suit you.
-
- Sometimes your HTTP access is only available through the use of a HTTP
- proxy. This seems to be especially common at various companies. A HTTP proxy
- may require its own user and password to allow the client to get through to
- the Internet. To specify those with curl, run something like:
-
-        curl -U proxyuser:proxypassword curl.haxx.se
-
- If your proxy requires the authentication to be done using the NTLM method,
- use --proxy-ntlm, if it requires Digest use --proxy-digest.
-
- If you use any one these user+password options but leave out the password
- part, curl will prompt for the password interactively.
-
- Do note that when a program is run, its parameters might be possible to see
- when listing the running processes of the system. Thus, other users may be
- able to watch your passwords if you pass them as plain command line
- options. There are ways to circumvent this.
-
- It is worth noting that while this is how HTTP Authentication works, very
- many web sites will not use this concept when they provide logins etc. See
- the Web Login chapter further below for more details on that.
-
-7. Referer
-
- A HTTP request may include a 'referer' field (yes it is misspelled), which
- can be used to tell from which URL the client got to this particular
- resource. Some programs/scripts check the referer field of requests to verify
- that this wasn't arriving from an external site or an unknown page. While
- this is a stupid way to check something so easily forged, many scripts still
- do it. Using curl, you can put anything you want in the referer-field and
- thus more easily be able to fool the server into serving your request.
-
- Use curl to set the referer field with:
-
-        curl -e http://curl.haxx.se daniel.haxx.se
-
-8. User Agent
-
- Very similar to the referer field, all HTTP requests may set the User-Agent
- field. It names what user agent (client) that is being used. Many
- applications use this information to decide how to display pages. Silly web
- programmers try to make different pages for users of different browsers to
- make them look the best possible for their particular browsers. They usually
- also do different kinds of javascript, vbscript etc.
-
- At times, you will see that getting a page with curl will not return the same
- page that you see when getting the page with your browser. Then you know it
- is time to set the User Agent field to fool the server into thinking you're
- one of those browsers.
-
- To make curl look like Internet Explorer on a Windows 2000 box:
-
-        curl -A "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)" [URL]
-
- Or why not look like you're using Netscape 4.73 on a Linux (PIII) box:
-
-        curl -A "Mozilla/4.73 [en] (X11; U; Linux 2.2.15 i686)" [URL]
-
-9. Redirects
-
- When a resource is requested from a server, the reply from the server may
- include a hint about where the browser should go next to find this page, or a
- new page keeping newly generated output. The header that tells the browser
- to redirect is Location:.
-
- Curl does not follow Location: headers by default, but will simply display
- such pages in the same manner it display all HTTP replies. It does however
- feature an option that will make it attempt to follow the Location: pointers.
-
- To tell curl to follow a Location:
-
-        curl -L www.sitethatredirects.com
-
- If you use curl to POST to a site that immediately redirects you to another
- page, you can safely use -L and -d/-F together. Curl will only use POST in
- the first request, and then revert to GET in the following operations.
-
-10. Cookies
-
- The way the web browsers do "client side state control" is by using
- cookies. Cookies are just names with associated contents. The cookies are
- sent to the client by the server. The server tells the client for what path
- and host name it wants the cookie sent back, and it also sends an expiration
- date and a few more properties.
-
- When a client communicates with a server with a name and path as previously
- specified in a received cookie, the client sends back the cookies and their
- contents to the server, unless of course they are expired.
-
- Many applications and servers use this method to connect a series of requests
- into a single logical session. To be able to use curl in such occasions, we
- must be able to record and send back cookies the way the web application
- expects them. The same way browsers deal with them.
-
- The simplest way to send a few cookies to the server when getting a page with
- curl is to add them on the command line like:
-
-        curl -b "name=Daniel" www.cookiesite.com
-
- Cookies are sent as common HTTP headers. This is practical as it allows curl
- to record cookies simply by recording headers. Record cookies with curl by
- using the -D option like:
-
-        curl -D headers_and_cookies www.cookiesite.com
-
- (Take note that the -c option described below is a better way to store
- cookies.)
-
- Curl has a full blown cookie parsing engine built-in that comes to use if you
- want to reconnect to a server and use cookies that were stored from a
- previous connection (or handicrafted manually to fool the server into
- believing you had a previous connection). To use previously stored cookies,
- you run curl like:
-
-        curl -b stored_cookies_in_file www.cookiesite.com
-
- Curl's "cookie engine" gets enabled when you use the -b option. If you only
- want curl to understand received cookies, use -b with a file that doesn't
- exist. Example, if you want to let curl understand cookies from a page and
- follow a location (and thus possibly send back cookies it received), you can
- invoke it like:
-
-        curl -b nada -L www.cookiesite.com
-
- Curl has the ability to read and write cookie files that use the same file
- format that Netscape and Mozilla do. It is a convenient way to share cookies
- between browsers and automatic scripts. The -b switch automatically detects
- if a given file is such a cookie file and parses it, and by using the
- -c/--cookie-jar option you'll make curl write a new cookie file at the end of
- an operation:
-
-        curl -b cookies.txt -c newcookies.txt www.cookiesite.com
-
-11. HTTPS
-
- There are a few ways to do secure HTTP transfers. The by far most common
- protocol for doing this is what is generally known as HTTPS, HTTP over
- SSL. SSL encrypts all the data that is sent and received over the network and
- thus makes it harder for attackers to spy on sensitive information.
-
- SSL (or TLS as the latest version of the standard is called) offers a
- truckload of advanced features to allow all those encryptions and key
- infrastructure mechanisms encrypted HTTP requires.
-
- Curl supports encrypted fetches thanks to the freely available OpenSSL
- libraries. To get a page from a HTTPS server, simply run curl like:
-
-        curl https://that.secure.server.com
-
- 11.1 Certificates
-
-  In the HTTPS world, you use certificates to validate that you are the one
-  you claim to be, as an addition to normal passwords. Curl supports client-
-  side certificates. All certificates are locked with a pass phrase, which you
-  need to enter before the certificate can be used by curl. The pass phrase
-  can be specified on the command line or if not, entered interactively when
-  curl queries for it. Use a certificate with curl on a HTTPS server like:
-
-        curl -E mycert.pem https://that.secure.server.com
-
-  curl also tries to verify that the server is who it claims to be, by
-  verifying the server's certificate against a locally stored CA cert
-  bundle. Failing the verification will cause curl to deny the connection. You
-  must then use -k in case you want to tell curl to ignore that the server
-  can't be verified.
-
-  More about server certificate verification and ca cert bundles can be read
-  in the SSLCERTS document, available online here:
-
-        http://curl.haxx.se/docs/sslcerts.html
-
-12. Custom Request Elements
-
- Doing fancy stuff, you may need to add or change elements of a single curl
- request.
-
- For example, you can change the POST request to a PROPFIND and send the data
- as "Content-Type: text/xml" (instead of the default Content-Type) like this:
-
-        curl -d "<xml>" -H "Content-Type: text/xml" -X PROPFIND url.com
-
- You can delete a default header by providing one without content. Like you
- can ruin the request by chopping off the Host: header:
-
-        curl -H "Host:" http://mysite.com
-
- You can add headers the same way. Your server may want a "Destination:"
- header, and you can add it:
-
-        curl -H "Destination: http://moo.com/nowhere" http://url.com
-
-13. Web Login
-
- While not strictly just HTTP related, it still cause a lot of people problems
- so here's the executive run-down of how the vast majority of all login forms
- work and how to login to them using curl.
-
- It can also be noted that to do this properly in an automated fashion, you
- will most certainly need to script things and do multiple curl invokes etc.
-
- First, servers mostly use cookies to track the logged-in status of the
- client, so you will need to capture the cookies you receive in the
- responses. Then, many sites also set a special cookie on the login page (to
- make sure you got there through their login page) so you should make a habit
- of first getting the login-form page to capture the cookies set there.
-
- Some web-based login systems features various amounts of javascript, and
- sometimes they use such code to set or modify cookie contents. Possibly they
- do that to prevent programmed logins, like this manual describes how to...
- Anyway, if reading the code isn't enough to let you repeat the behavior
- manually, capturing the HTTP requests done by your browers and analyzing the
- sent cookies is usually a working method to work out how to shortcut the
- javascript need.
-
- In the actual <form> tag for the login, lots of sites fill-in random/session
- or otherwise secretly generated hidden tags and you may need to first capture
- the HTML code for the login form and extract all the hidden fields to be able
- to do a proper login POST. Remember that the contents need to be URL encoded
- when sent in a normal POST.
-
-
-14. Debug
-
- Many times when you run curl on a site, you'll notice that the site doesn't
- seem to respond the same way to your curl requests as it does to your
- browser's.
-
- Then you need to start making your curl requests more similar to your
- browser's requests:
-
- * Use the --trace-ascii option to store fully detailed logs of the requests
-   for easier analyzing and better understanding
-
- * Make sure you check for and use cookies when needed (both reading with -b
-   and writing with -c)
-
- * Set user-agent to one like a recent popular browser does
-
- * Set referer like it is set by the browser
-
- * If you use POST, make sure you send all the fields and in the same order as
-   the browser does it. (See chapter 4.5 above)
-
- A very good helper to make sure you do this right, is the LiveHTTPHeader tool
- that lets you view all headers you send and receive with Mozilla/Firefox
- (even when using HTTPS).
-
- A more raw approach is to capture the HTTP traffic on the network with tools
- such as ethereal or tcpdump and check what headers that were sent and
- received by the browser. (HTTPS makes this technique inefficient.)
-
-15. References
-
- RFC 2616 is a must to read if you want in-depth understanding of the HTTP
- protocol.
-
- RFC 2396 explains the URL syntax.
-
- RFC 2109 defines how cookies are supposed to work.
-
- RFC 1867 defines the HTTP post upload format.
-
- http://www.openssl.org is the home of the OpenSSL project
-
- http://curl.haxx.se is the home of the cURL project
diff --git a/src/other/curl/docs/VERSIONS b/src/other/curl/docs/VERSIONS
deleted file mode 100644
index 21c0d90..0000000
--- a/src/other/curl/docs/VERSIONS
+++ /dev/null
@@ -1,67 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-Version Numbers and Releases
-
- Curl is not only curl. Curl is also libcurl. They're actually individually
- versioned, but they mostly follow each other rather closely.
-
- The version numbering is always built up using the same system:
-
-        X.Y[.Z][-preN]
-
- Where
-   X is main version number
-   Y is release number
-   Z is patch number
-   N is pre-release number
-
- One of these numbers will get bumped in each new release. The numbers to the
- right of a bumped number will be reset to zero. If Z is zero, it may not be
- included in the version number. The pre release number is only included in
- pre releases (they're never used in public, official, releases).
-
- The main version number will get bumped when *really* big, world colliding
- changes are made. The release number is bumped when big changes are
- performed. The patch number is bumped when the changes are mere bugfixes and
- only minor feature changes. The pre-release is a counter, to identify which
- pre-release a certain release is.
-
- When reaching the end of a pre-release period, the version without the
- pre-release part will be released as a public release.
-
- It means that after release 1.2.3, we can release 2.0 if something really big
- has been made, 1.3 if not that big changes were made or 1.2.4 if mostly bugs
- were fixed. Before 1.2.4 is released, we might release a 1.2.4-pre1 release
- for the brave people to try before the actual release.
-
- Bumping, as in increasing the number with 1, is unconditionally only
- affecting one of the numbers (except the ones to the right of it, that may be
- set to zero). 1 becomes 2, 3 becomes 4, 9 becomes 10, 88 becomes 89 and 99
- becomes 100. So, after 1.2.9 comes 1.2.10. After 3.99.3, 3.100 might come.
-
- All original curl source release archives are named according to the libcurl
- version (not according to the curl client version that, as said before, might
- differ).
-
- As a service to any application that might want to support new libcurl
- features while still being able to build with older versions, all releases
- have the libcurl version stored in the curl/curlver.h file using a static
- numbering scheme that can be used for comparison. The version number is
- defined as:
-
-        #define LIBCURL_VERSION_NUM 0xXXYYZZ
-
- Where XX, YY and ZZ are the main version, release and patch numbers in
- hexadecimal. All three numbers are always represented using two digits.  1.2
- would appear as "0x010200" while version 9.11.7 appears as "0x090b07".
-
- This 6-digit hexadecimal number does not show pre-release number, and it is
- always a greater number in a more recent release. It makes comparisons with
- greater than and less than work.
-
- This number is also available as three separate defines:
- LIBCURL_VERSION_MAJOR, LIBCURL_VERSION_MINOR and LIBCURL_VERSION_PATCH.
diff --git a/src/other/curl/docs/curl-config.html b/src/other/curl/docs/curl-config.html
deleted file mode 100644
index 2fb7359..0000000
--- a/src/other/curl/docs/curl-config.html
+++ /dev/null
@@ -1,233 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:08 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl-config</title>
-
-</head>
-<body>
-
-<h1 align="center">curl-config</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#OPTIONS">OPTIONS</a><br>
-<a href="#EXAMPLES">EXAMPLES</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl-config
-− Get information about a libcurl installation</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl-config
-[options]</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl-config</b>
-displays information about the curl and libcurl
-installation.</p>
-
-<h2>OPTIONS
-<a name="OPTIONS"></a>
-</h2>
-
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="6%">
-
-
-<p style="margin-top: 1em">--ca</p></td>
-<td width="5%"></td>
-<td width="78%">
-
-
-<p style="margin-top: 1em">Displays the built-in path to
-the CA cert bundle this libcurl uses.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="6%">
-
-
-<p>--cc</p></td>
-<td width="5%"></td>
-<td width="78%">
-
-
-<p>Displays the compiler used to build libcurl.</p></td></tr>
-</table>
-
-<p style="margin-left:11%;">--cflags</p>
-
-<p style="margin-left:22%;">Set of compiler options
-(CFLAGS) to use when compiling files that use libcurl.
-Currently that is only the include path to the curl include
-files.</p>
-
-<p style="margin-left:11%;">--checkfor [version]</p>
-
-<p style="margin-left:22%;">Specify the oldest possible
-libcurl version string you want, and this script will return
-0 if the current installation is new enough or it returns 1
-and outputs a text saying that the current version is not
-new enough. (Added in 7.15.4)</p>
-
-<p style="margin-left:11%;">--configure</p>
-
-<p style="margin-left:22%;">Displays the arguments given to
-configure when building curl.</p>
-
-<p style="margin-left:11%;">--feature</p>
-
-<p style="margin-left:22%;">Lists what particular main
-features the installed libcurl was built with. At the time
-of writing, this list may include SSL, KRB4 or IPv6. Do not
-assume any particular order. The keywords will be separated
-by newlines. There may be none, one, or several keywords in
-the list.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="9%">
-
-
-<p>--help</p></td>
-<td width="2%"></td>
-<td width="78%">
-
-
-<p>Displays the available options.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="9%">
-
-
-<p>--libs</p></td>
-<td width="2%"></td>
-<td width="78%">
-
-
-<p>Shows the complete set of libs and other linker options
-you will need in order to link your application with
-libcurl.</p> </td></tr>
-</table>
-
-<p style="margin-left:11%;">--prefix</p>
-
-<p style="margin-left:22%;">This is the prefix used when
-libcurl was installed. Libcurl is then installed in
-$prefix/lib and its header files are installed in
-$prefix/include and so on. The prefix is set with
-"configure --prefix".</p>
-
-<p style="margin-left:11%;">--protocols</p>
-
-<p style="margin-left:22%;">Lists what particular protocols
-the installed libcurl was built to support. At the time of
-writing, this list may include HTTP, HTTPS, FTP, FTPS, FILE,
-TELNET, LDAP, DICT. Do not assume any particular order. The
-protocols will be listed using uppercase and are separated
-by newlines. There may be none, one, or several protocols in
-the list. (Added in 7.13.0)</p>
-
-<p style="margin-left:11%;">--static-libs</p>
-
-<p style="margin-left:22%;">Shows the complete set of libs
-and other linker options you will need in order to link your
-application with libcurl statically. (Added in 7.17.1)</p>
-
-<p style="margin-left:11%;">--version</p>
-
-<p style="margin-left:22%;">Outputs version information
-about the installed libcurl.</p>
-
-<p style="margin-left:11%;">--vernum</p>
-
-<p style="margin-left:22%;">Outputs version information
-about the installed libcurl, in numerical mode. This outputs
-the version number, in hexadecimal, with 8 bits for each
-part; major, minor, patch. So that libcurl 7.7.4 would
-appear as 070704 and libcurl 12.13.14 would appear as
-0c0d0e... Note that the initial zero might be omitted. (This
-option was broken in the 7.15.0 release.)</p>
-
-<h2>EXAMPLES
-<a name="EXAMPLES"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">What linker
-options do I need when I link with libcurl?</p>
-
-<p style="margin-left:11%; margin-top: 1em">$ curl-config
---libs</p>
-
-<p style="margin-left:11%; margin-top: 1em">What compiler
-options do I need when I compile using libcurl
-functions?</p>
-
-<p style="margin-left:11%; margin-top: 1em">$ curl-config
---cflags</p>
-
-<p style="margin-left:11%; margin-top: 1em">How do I know
-if libcurl was built with SSL support?</p>
-
-<p style="margin-left:11%; margin-top: 1em">$ curl-config
---feature | grep SSL</p>
-
-<p style="margin-left:11%; margin-top: 1em">What’s
-the installed libcurl version?</p>
-
-<p style="margin-left:11%; margin-top: 1em">$ curl-config
---version</p>
-
-<p style="margin-left:11%; margin-top: 1em">How do I build
-a single file with a one-line command?</p>
-
-<p style="margin-left:11%; margin-top: 1em">$
-‘curl-config --cc --cflags --libs‘ -o example
-example.c</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl</b>(1)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/curl-config.pdf b/src/other/curl/docs/curl-config.pdf
deleted file mode 100644
index 38a773e..0000000
Binary files a/src/other/curl/docs/curl-config.pdf and /dev/null differ
diff --git a/src/other/curl/docs/curl.1 b/src/other/curl/docs/curl.1
deleted file mode 100644
index 02cc3fb..0000000
--- a/src/other/curl/docs/curl.1
+++ /dev/null
@@ -1,1720 +0,0 @@
-.\" **************************************************************************
-.\" *                                  _   _ ____  _
-.\" *  Project                     ___| | | |  _ \| |
-.\" *                             / __| | | | |_) | |
-.\" *                            | (__| |_| |  _ <| |___
-.\" *                             \___|\___/|_| \_\_____|
-.\" *
-.\" * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
-.\" *
-.\" * This software is licensed as described in the file COPYING, which
-.\" * you should have received as part of this distribution. The terms
-.\" * are also available at http://curl.haxx.se/docs/copyright.html.
-.\" *
-.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
-.\" * copies of the Software, and permit persons to whom the Software is
-.\" * furnished to do so, under the terms of the COPYING file.
-.\" *
-.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-.\" * KIND, either express or implied.
-.\" *
-.\" **************************************************************************
-.\"
-.TH curl 1 "28 November 2009" "Curl 7.20.0" "Curl Manual"
-.SH NAME
-curl \- transfer a URL
-.SH SYNOPSIS
-.B curl [options]
-.I [URL...]
-.SH DESCRIPTION
-.B curl
-is a tool to transfer data from or to a server, using one of the supported
-protocols (HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, DICT, TELNET, LDAP or
-FILE).  The command is designed to work without user interaction.
-
-curl offers a busload of useful tricks like proxy support, user
-authentication, FTP upload, HTTP post, SSL connections, cookies, file transfer
-resume and more. As you will see below, the number of features will make your
-head spin!
-
-curl is powered by libcurl for all transfer-related features. See
-.BR libcurl (3)
-for details.
-.SH URL
-The URL syntax is protocol-dependent. You'll find a detailed description in
-RFC 3986.
-
-You can specify multiple URLs or parts of URLs by writing part sets within
-braces as in:
-
- http://site.{one,two,three}.com
-
-or you can get sequences of alphanumeric series by using [] as in:
-
- ftp://ftp.numericals.com/file[1-100].txt
- ftp://ftp.numericals.com/file[001-100].txt    (with leading zeros)
- ftp://ftp.letters.com/file[a-z].txt
-
-No nesting of the sequences is supported at the moment, but you can use
-several ones next to each other:
-
- http://any.org/archive[1996-1999]/vol[1-4]/part{a,b,c}.html
-
-You can specify any amount of URLs on the command line. They will be fetched
-in a sequential manner in the specified order.
-
-Since curl 7.15.1 you can also specify a step counter for the ranges, so that
-you can get every Nth number or letter:
-
- http://www.numericals.com/file[1-100:10].txt
- http://www.letters.com/file[a-z:2].txt
-
-If you specify URL without protocol:// prefix, curl will attempt to guess what
-protocol you might want. It will then default to HTTP but try other protocols
-based on often-used host name prefixes. For example, for host names starting
-with "ftp." curl will assume you want to speak FTP.
-
-curl will do its best to use what you pass to it as a URL. It is not trying to
-validate it as a syntactically correct URL by any means but is instead
-\fBvery\fP liberal with what it accepts.
-
-Curl will attempt to re-use connections for multiple file transfers, so that
-getting many files from the same server will not do multiple connects /
-handshakes. This improves speed. Of course this is only done on files
-specified on a single command line and cannot be used between separate curl
-invokes.
-.SH "PROGRESS METER"
-curl normally displays a progress meter during operations, indicating the amount
-of transferred data, transfer speeds and estimated time left, etc.
-
-However, since curl displays this data to the terminal by default, if you invoke
-curl to do an operation and it is about to write data to the terminal, it
-\fIdisables\fP the progress meter as otherwise it would mess up the output
-mixing progress meter and response data.
-
-If you want a progress meter for HTTP POST or PUT requests, you need to
-redirect the response output to a file, using shell redirect (>), -o [file] or
-similar.
-
-It is not the same case for FTP upload as that operation does not spit out
-any response data to the terminal.
-
-If you prefer a progress "bar" instead of the regular meter, \fI-#\fP is your
-friend.
-.SH OPTIONS
-In general, all boolean options are enabled with --option and yet again
-disabled with --\fBno-\fPoption. That is, you use the exact same option name
-but prefix it with "no-". However, in this list we mostly only list and show
-the --option version of them. (This concept with --no options was added in
-7.19.0. Previously most options were toggled on/off on repeated use of the
-same command line option.)
-.IP "-a/--append"
-(FTP/SFTP) When used in an upload, this will tell curl to append to the target
-file instead of overwriting it. If the file doesn't exist, it will be created.
-Note that this flag is ignored by some SSH servers (including OpenSSH).
-.IP "-A/--user-agent <agent string>"
-(HTTP) Specify the User-Agent string to send to the HTTP server. Some badly
-done CGIs fail if this field isn't set to "Mozilla/4.0". To encode blanks in
-the string, surround the string with single quote marks. This can also be set
-with the \fI-H/--header\fP option of course.
-
-If this option is set more than once, the last one will be the one that's
-used.
-.IP "--anyauth"
-(HTTP) Tells curl to figure out authentication method by itself, and use the
-most secure one the remote site claims to support. This is done by first
-doing a request and checking the response-headers, thus possibly inducing an
-extra network round-trip. This is used instead of setting a specific
-authentication method, which you can do with \fI--basic\fP, \fI--digest\fP,
-\fI--ntlm\fP, and \fI--negotiate\fP.
-
-Note that using --anyauth is not recommended if you do uploads from stdin,
-since it may require data to be sent twice and then the client must be able to
-rewind. If the need should arise when uploading from stdin, the upload
-operation will fail.
-.IP "-b/--cookie <name=data>"
-(HTTP)
-Pass the data to the HTTP server as a cookie. It is supposedly the
-data previously received from the server in a "Set-Cookie:" line.
-The data should be in the format "NAME1=VALUE1; NAME2=VALUE2".
-
-If no '=' symbol is used in the line, it is treated as a filename to use to
-read previously stored cookie lines from, which should be used in this session
-if they match. Using this method also activates the "cookie parser" which will
-make curl record incoming cookies too, which may be handy if you're using this
-in combination with the \fI-L/--location\fP option. The file format of the
-file to read cookies from should be plain HTTP headers or the Netscape/Mozilla
-cookie file format.
-
-\fBNOTE\fP that the file specified with \fI-b/--cookie\fP is only used as
-input. No cookies will be stored in the file. To store cookies, use the
-\fI-c/--cookie-jar\fP option or you could even save the HTTP headers to a file
-using \fI-D/--dump-header\fP!
-
-If this option is set more than once, the last one will be the one that's
-used.
-.IP "-B/--use-ascii"
-Enable ASCII transfer when using FTP or LDAP. For FTP, this can also be
-enforced by using an URL that ends with ";type=A". This option causes data
-sent to stdout to be in text mode for win32 systems.
-.IP "--basic"
-(HTTP) Tells curl to use HTTP Basic authentication. This is the default and
-this option is usually pointless, unless you use it to override a previously
-set option that sets a different authentication method (such as \fI--ntlm\fP,
-\fI--digest\fP, or \fI--negotiate\fP).
-.IP "--ciphers <list of ciphers>"
-(SSL) Specifies which ciphers to use in the connection. The list of ciphers
-must specify valid ciphers. Read up on SSL cipher list details on this URL:
-\fIhttp://www.openssl.org/docs/apps/ciphers.html\fP
-
-NSS ciphers are done differently than OpenSSL and GnuTLS. The full list of
-NSS ciphers is in the NSSCipherSuite entry at this URL:
-\fIhttp://directory.fedora.redhat.com/docs/mod_nss.html#Directives\fP
-
-If this option is used several times, the last one will override the others.
-.IP "--compressed"
-(HTTP) Request a compressed response using one of the algorithms libcurl
-supports, and return the uncompressed document.  If this option is used and
-the server sends an unsupported encoding, curl will report an error.
-.IP "--connect-timeout <seconds>"
-Maximum time in seconds that you allow the connection to the server to take.
-This only limits the connection phase, once curl has connected this option is
-of no more use. See also the \fI-m/--max-time\fP option.
-
-If this option is used several times, the last one will be used.
-.IP "-c/--cookie-jar <file name>"
-Specify to which file you want curl to write all cookies after a completed
-operation. Curl writes all cookies previously read from a specified file as
-well as all cookies received from remote server(s). If no cookies are known,
-no file will be written. The file will be written using the Netscape cookie
-file format. If you set the file name to a single dash, "-", the cookies will
-be written to stdout.
-
-.B NOTE
-If the cookie jar can't be created or written to, the whole curl operation
-won't fail or even report an error clearly. Using -v will get a warning
-displayed, but that is the only visible feedback you get about this possibly
-lethal situation.
-
-If this option is used several times, the last specified file name will be
-used.
-.IP "-C/--continue-at <offset>"
-Continue/Resume a previous file transfer at the given offset. The given offset
-is the exact number of bytes that will be skipped, counting from the beginning
-of the source file before it is transferred to the destination.  If used with
-uploads, the FTP server command SIZE will not be used by curl.
-
-Use "-C -" to tell curl to automatically find out where/how to resume the
-transfer. It then uses the given output/input files to figure that out.
-
-If this option is used several times, the last one will be used.
-.IP "--create-dirs"
-When used in conjunction with the -o option, curl will create the necessary
-local directory hierarchy as needed. This option creates the dirs mentioned
-with the -o option, nothing else. If the -o file name uses no dir or if the
-dirs it mentions already exist, no dir will be created.
-
-To create remote directories when using FTP or SFTP, try
-\fI--ftp-create-dirs\fP.
-.IP "--crlf"
-(FTP) Convert LF to CRLF in upload. Useful for MVS (OS/390).
-.IP "--crlfile <file>"
-(HTTPS/FTPS) Provide a file using PEM format with a Certificate Revocation
-List that may specify peer certificates that are to be considered revoked.
-
-If this option is used several times, the last one will be used.
-
-(Added in 7.19.7)
-.IP "-d/--data <data>"
-(HTTP) Sends the specified data in a POST request to the HTTP server, in the
-same way that a browser does when a user has filled in an HTML form and
-presses the submit button. This will cause curl to pass the data to the server
-using the content-type application/x-www-form-urlencoded.  Compare to
-\fI-F/--form\fP.
-
-\fI-d/--data\fP is the same as \fI--data-ascii\fP. To post data purely binary,
-you should instead use the \fI--data-binary\fP option. To URL-encode the value
-of a form field you may use \fI--data-urlencode\fP.
-
-If any of these options is used more than once on the same command line, the
-data pieces specified will be merged together with a separating
-&-symbol. Thus, using '-d name=daniel -d skill=lousy' would generate a post
-chunk that looks like \&'name=daniel&skill=lousy'.
-
-If you start the data with the letter @, the rest should be a file name to
-read the data from, or - if you want curl to read the data from stdin.  The
-contents of the file must already be URL-encoded. Multiple files can also be
-specified. Posting data from a file named 'foobar' would thus be done with
-\fI--data @foobar\fP.
-.IP "--data-binary <data>"
-(HTTP) This posts data exactly as specified with no extra processing
-whatsoever.
-
-If you start the data with the letter @, the rest should be a filename.  Data
-is posted in a similar manner as \fI--data-ascii\fP does, except that newlines
-are preserved and conversions are never done.
-
-If this option is used several times, the ones following the first will append
-data as described in \fI-d/--data\fP.
-.IP "--data-urlencode <data>"
-(HTTP) This posts data, similar to the other --data options with the exception
-that this performs URL-encoding. (Added in 7.18.0)
-
-To be CGI-compliant, the <data> part should begin with a \fIname\fP followed
-by a separator and a content specification. The <data> part can be passed to
-curl using one of the following syntaxes:
-.RS
-.IP "content"
-This will make curl URL-encode the content and pass that on. Just be careful
-so that the content doesn't contain any = or @ symbols, as that will then make
-the syntax match one of the other cases below!
-.IP "=content"
-This will make curl URL-encode the content and pass that on. The preceding =
-symbol is not included in the data.
-.IP "name=content"
-This will make curl URL-encode the content part and pass that on. Note that
-the name part is expected to be URL-encoded already.
-.IP "@filename"
-This will make curl load data from the given file (including any newlines),
-URL-encode that data and pass it on in the POST.
-.IP "name at filename"
-This will make curl load data from the given file (including any newlines),
-URL-encode that data and pass it on in the POST. The name part gets an equal
-sign appended, resulting in \fIname=urlencoded-file-content\fP. Note that the
-name is expected to be URL-encoded already.
-.RE
-.IP "--digest"
-(HTTP) Enables HTTP Digest authentication. This is a authentication that
-prevents the password from being sent over the wire in clear text. Use this in
-combination with the normal \fI-u/--user\fP option to set user name and
-password. See also \fI--ntlm\fP, \fI--negotiate\fP and \fI--anyauth\fP for
-related options.
-
-If this option is used several times, the following occurrences make no
-difference.
-.IP "--disable-eprt"
-(FTP) Tell curl to disable the use of the EPRT and LPRT commands when doing
-active FTP transfers. Curl will normally always first attempt to use EPRT,
-then LPRT before using PORT, but with this option, it will use PORT right
-away. EPRT and LPRT are extensions to the original FTP protocol, and may not work
-on all servers, but they enable more functionality in a better way than the
-traditional PORT command.
-
-Since curl 7.19.0, \fB--eprt\fP can be used to explicitly enable EPRT again
-and \fB--no-eprt\fP is an alias for \fB--disable-eprt\fP.
-
-Disabling EPRT only changes the active behavior. If you want to switch to
-passive mode you need to not use \fI-P/--ftp-port\fP or force it with
-\fI--ftp-pasv\fP.
-.IP "--disable-epsv"
-(FTP) Tell curl to disable the use of the EPSV command when doing passive FTP
-transfers. Curl will normally always first attempt to use EPSV before PASV,
-but with this option, it will not try using EPSV.
-
-Since curl 7.19.0, \fB--epsv\fP can be used to explicitly enable EPRT again
-and \fB--no-epsv\fP is an alias for \fB--disable-epsv\fP.
-
-Disabling EPSV only changes the passive behavior. If you want to switch to
-active mode you need to use \fI-P/--ftp-port\fP.
-.IP "-D/--dump-header <file>"
-Write the protocol headers to the specified file.
-
-This option is handy to use when you want to store the headers that a HTTP
-site sends to you. Cookies from the headers could then be read in a second
-curl invocation by using the \fI-b/--cookie\fP option! The \fI-c/--cookie-jar\fP
-option is however a better way to store cookies.
-
-When used in FTP, the FTP server response lines are considered being "headers"
-and thus are saved there.
-
-If this option is used several times, the last one will be used.
-.IP "-e/--referer <URL>"
-(HTTP) Sends the "Referer Page" information to the HTTP server. This can also
-be set with the \fI-H/--header\fP flag of course.  When used with
-\fI-L/--location\fP you can append ";auto" to the --referer URL to make curl
-automatically set the previous URL when it follows a Location: header. The
-\&";auto" string can be used alone, even if you don't set an initial --referer.
-
-If this option is used several times, the last one will be used.
-.IP "--engine <name>"
-Select the OpenSSL crypto engine to use for cipher
-operations. Use \fI--engine list\fP to print a list of build-time supported
-engines. Note that not all (or none) of the engines may be available at
-run-time.
-.IP "--environment"
-(RISC OS ONLY) Sets a range of environment variables, using the names the -w
-option supports, to allow easier extraction of useful information after having
-run curl.
-.IP "--egd-file <file>"
-(SSL) Specify the path name to the Entropy Gathering Daemon socket. The socket
-is used to seed the random engine for SSL connections. See also the
-\fI--random-file\fP option.
-.IP "-E/--cert <certificate[:password]>"
-(SSL) Tells curl to use the specified certificate file when getting a file
-with HTTPS or FTPS. The certificate must be in PEM format.  If the optional
-password isn't specified, it will be queried for on the terminal. Note that
-this option assumes a \&"certificate" file that is the private key and the
-private certificate concatenated! See \fI--cert\fP and \fI--key\fP to specify
-them independently.
-
-If curl is built against the NSS SSL library then this option tells
-curl the nickname of the certificate to use within the NSS database defined
-by the environment variable SSL_DIR (or by default /etc/pki/nssdb). If the
-NSS PEM PKCS#11 module (libnsspem.so) is available then PEM files may be
-loaded.
-
-If this option is used several times, the last one will be used.
-.IP "--cert-type <type>"
-(SSL) Tells curl what certificate type the provided certificate is in. PEM,
-DER and ENG are recognized types.  If not specified, PEM is assumed.
-
-If this option is used several times, the last one will be used.
-.IP "--cacert <CA certificate>"
-(SSL) Tells curl to use the specified certificate file to verify the peer. The
-file may contain multiple CA certificates. The certificate(s) must be in PEM
-format. Normally curl is built to use a default file for this, so this option
-is typically used to alter that default file.
-
-curl recognizes the environment variable named 'CURL_CA_BUNDLE' if it is
-set, and uses the given path as a path to a CA cert bundle. This option
-overrides that variable.
-
-The windows version of curl will automatically look for a CA certs file named
-\'curl-ca-bundle.crt\', either in the same directory as curl.exe, or in the
-Current Working Directory, or in any folder along your PATH.
-
-If curl is built against the NSS SSL library then this option tells
-curl the nickname of the CA certificate to use within the NSS database
-defined by the environment variable SSL_DIR (or by default /etc/pki/nssdb).
-If the NSS PEM PKCS#11 module (libnsspem.so) is available then PEM files
-may be loaded.
-
-If this option is used several times, the last one will be used.
-.IP "--capath <CA certificate directory>"
-(SSL) Tells curl to use the specified certificate directory to verify the
-peer. The certificates must be in PEM format, and the directory must have been
-processed using the c_rehash utility supplied with openssl. Using
-\fI--capath\fP can allow curl to make SSL-connections much more efficiently
-than using \fI--cacert\fP if the \fI--cacert\fP file contains many CA
-certificates.
-
-If this option is used several times, the last one will be used.
-.IP "-f/--fail"
-(HTTP) Fail silently (no output at all) on server errors. This is mostly done
-to better enable scripts etc to better deal with failed attempts. In
-normal cases when a HTTP server fails to deliver a document, it returns an
-HTML document stating so (which often also describes why and more). This flag
-will prevent curl from outputting that and return error 22.
-
-This method is not fail-safe and there are occasions where non-successful
-response codes will slip through, especially when authentication is involved
-(response codes 401 and 407).
-.IP "--ftp-account [data]"
-(FTP) When an FTP server asks for "account data" after user name and password
-has been provided, this data is sent off using the ACCT command. (Added in
-7.13.0)
-
-If this option is used twice, the second will override the previous use.
-.IP "--ftp-create-dirs"
-(FTP/SFTP) When an FTP or SFTP URL/operation uses a path that doesn't
-currently exist on the server, the standard behavior of curl is to
-fail. Using this option, curl will instead attempt to create missing
-directories.
-.IP "--ftp-method [method]"
-(FTP) Control what method curl should use to reach a file on a FTP(S)
-server. The method argument should be one of the following alternatives:
-.RS
-.IP multicwd
-curl does a single CWD operation for each path part in the given URL. For deep
-hierarchies this means very many commands. This is how RFC1738 says it should
-be done. This is the default but the slowest behavior.
-.IP nocwd
-curl does no CWD at all. curl will do SIZE, RETR, STOR etc and give a full
-path to the server for all these commands. This is the fastest behavior.
-.IP singlecwd
-curl does one CWD with the full target directory and then operates on the file
-\&"normally" (like in the multicwd case). This is somewhat more standards
-compliant than 'nocwd' but without the full penalty of 'multicwd'.
-.RE
-(Added in 7.15.1)
-.IP "--ftp-pasv"
-(FTP) Use passive mode for the data conection. Passive is the internal default
-behavior, but using this option can be used to override a previous
-\fI-P/-ftp-port\fP option. (Added in 7.11.0)
-
-If this option is used several times, the following occurrences make no
-difference. Undoing an enforced passive really isn't doable but you must then
-instead enforce the correct \fI-P/--ftp-port\fP again.
-
-Passive mode means that curl will try the EPSV command first and then PASV,
-unless \fI--disable-epsv\fP is used.
-.IP "--ftp-alternative-to-user <command>"
-(FTP) If authenticating with the USER and PASS commands fails, send this
-command.  When connecting to Tumbleweed's Secure Transport server over FTPS
-using a client certificate, using "SITE AUTH" will tell the server to retrieve
-the username from the certificate. (Added in 7.15.5)
-.IP "--ftp-skip-pasv-ip"
-(FTP) Tell curl to not use the IP address the server suggests in its response
-to curl's PASV command when curl connects the data connection. Instead curl
-will re-use the same IP address it already uses for the control
-connection. (Added in 7.14.2)
-
-This option has no effect if PORT, EPRT or EPSV is used instead of PASV.
-.IP "--ftp-pret"
-(FTP) Tell curl to send a PRET command before PASV (and EPSV). Certain
-FTP servers, mainly drftpd, require this non-standard command for
-directory listings as well as up and downloads in PASV mode.
-(Added in 7.20.x)
-.IP "--ssl"
-(FTP, POP3, IMAP, SMTP) Try to use SSL/TLS for the connection.  Reverts to a
-non-secure connection if the server doesn't support SSL/TLS.  See also
-\fI--ftp-ssl-control\fP and \fI--ssl-reqd\fP for different levels of
-encryption required. (Added in 7.20.0)
-
-This option was formerly known as \fI--ftp-ssl\fP (Added in 7.11.0) and that
-can still be used but will be removed in a future version.
-.IP "--ftp-ssl-control"
-(FTP) Require SSL/TLS for the FTP login, clear for transfer.  Allows secure
-authentication, but non-encrypted data transfers for efficiency.  Fails the
-transfer if the server doesn't support SSL/TLS.  (Added in 7.16.0)
-.IP "--ssl-reqd"
-(FTP, POP3, IMAP, SMTP) Require SSL/TLS for the connection.  Terminates the
-connection if the server doesn't support SSL/TLS. (Added in 7.20.0)
-
-This option was formerly known as \fI--ftp-ssl-reqd\fP (added in 7.15.5) and
-that can still be used but will be removed in a future version.
-.IP "--ftp-ssl-ccc"
-(FTP) Use CCC (Clear Command Channel)
-Shuts down the SSL/TLS layer after authenticating. The rest of the
-control channel communication will be unencrypted. This allows
-NAT routers to follow the FTP transaction. The default mode is
-passive. See --ftp-ssl-ccc-mode for other modes.
-(Added in 7.16.1)
-.IP "--ftp-ssl-ccc-mode [active/passive]"
-(FTP) Use CCC (Clear Command Channel)
-Sets the CCC mode. The passive mode will not initiate the shutdown, but
-instead wait for the server to do it, and will not reply to the
-shutdown from the server. The active mode initiates the shutdown and
-waits for a reply from the server.
-(Added in 7.16.2)
-.IP "-F/--form <name=content>"
-(HTTP) This lets curl emulate a filled-in form in which a user has pressed the
-submit button. This causes curl to POST data using the Content-Type
-multipart/form-data according to RFC2388. This enables uploading of binary
-files etc. To force the 'content' part to be a file, prefix the file name
-with an @ sign. To just get the content part from a file, prefix the file name
-with the symbol <. The difference between @ and < is then that @ makes a file
-get attached in the post as a file upload, while the < makes a text field and
-just get the contents for that text field from a file.
-
-Example, to send your password file to the server, where
-\&'password' is the name of the form-field to which /etc/passwd will be the
-input:
-
-\fBcurl\fP -F password=@/etc/passwd www.mypasswords.com
-
-To read the file's content from stdin instead of a file, use - where the file
-name should've been. This goes for both @ and < constructs.
-
-You can also tell curl what Content-Type to use by using 'type=', in a manner
-similar to:
-
-\fBcurl\fP -F "web=@index.html;type=text/html" url.com
-
-or
-
-\fBcurl\fP -F "name=daniel;type=text/foo" url.com
-
-You can also explicitly change the name field of an file upload part by
-setting filename=, like this:
-
-\fBcurl\fP -F "file=@localfile;filename=nameinpost" url.com
-
-See further examples and details in the MANUAL.
-
-This option can be used multiple times.
-.IP "--form-string <name=string>"
-(HTTP) Similar to \fI--form\fP except that the value string for the named
-parameter is used literally. Leading \&'@' and \&'<' characters, and the
-\&';type=' string in the value have no special meaning. Use this in preference
-to \fI--form\fP if there's any possibility that the string value may
-accidentally trigger the \&'@' or \&'<' features of \fI--form\fP.
-.IP "-g/--globoff"
-This option switches off the "URL globbing parser". When you set this option,
-you can specify URLs that contain the letters {}[] without having them being
-interpreted by curl itself. Note that these letters are not normal legal URL
-contents but they should be encoded according to the URI standard.
-.IP "-G/--get"
-When used, this option will make all data specified with \fI-d/--data\fP or
-\fI--data-binary\fP to be used in a HTTP GET request instead of the POST
-request that otherwise would be used. The data will be appended to the URL
-with a '?' separator.
-
-If used in combination with -I, the POST data will instead be appended to the
-URL with a HEAD request.
-
-If this option is used several times, the following occurrences make no
-difference. This is because undoing a GET doesn't make sense, but you should
-then instead enforce the alternative method you prefer.
-.IP "-h/--help"
-Usage help.
-.IP "-H/--header <header>"
-(HTTP) Extra header to use when getting a web page. You may specify any number
-of extra headers. Note that if you should add a custom header that has the
-same name as one of the internal ones curl would use, your externally set
-header will be used instead of the internal one. This allows you to make even
-trickier stuff than curl would normally do. You should not replace internally
-set headers without knowing perfectly well what you're doing. Remove an
-internal header by giving a replacement without content on the right side of
-the colon, as in: -H \&"Host:".
-
-curl will make sure that each header you add/replace is sent with the proper
-end-of-line marker, you should thus \fBnot\fP add that as a part of the header
-content: do not add newlines or carriage returns, they will only mess things up
-for you.
-
-See also the \fI-A/--user-agent\fP and \fI-e/--referer\fP options.
-
-This option can be used multiple times to add/replace/remove multiple headers.
-.IP "--hostpubmd5 <md5>"
-Pass a string containing 32 hexadecimal digits. The string should be the 128
-bit MD5 checksum of the remote host's public key, curl will refuse the
-connection with the host unless the md5sums match. This option is only for SCP
-and SFTP transfers. (Added in 7.17.1)
-.IP "--ignore-content-length"
-(HTTP)
-Ignore the Content-Length header. This is particularly useful for servers
-running Apache 1.x, which will report incorrect Content-Length for files
-larger than 2 gigabytes.
-.IP "-i/--include"
-(HTTP) Include the HTTP-header in the output. The HTTP-header includes things
-like server-name, date of the document, HTTP-version and more...
-.IP "--interface <name>"
-Perform an operation using a specified interface. You can enter interface
-name, IP address or host name. An example could look like:
-
- curl --interface eth0:1 http://www.netscape.com/
-
-If this option is used several times, the last one will be used.
-.IP "-I/--head"
-(HTTP/FTP/FILE)
-Fetch the HTTP-header only! HTTP-servers feature the command HEAD
-which this uses to get nothing but the header of a document. When used
-on a FTP or FILE file, curl displays the file size and last modification
-time only.
-.IP "-j/--junk-session-cookies"
-(HTTP) When curl is told to read cookies from a given file, this option will
-make it discard all "session cookies". This will basically have the same effect
-as if a new session is started. Typical browsers always discard session
-cookies when they're closed down.
-.IP "-J/--remote-header-name"
-(HTTP) This option tells the -O/--remote-name option to use the server-specified
-Content-Disposition filename instead of extracting a filename from the URL.
-.IP "-k/--insecure"
-(SSL) This option explicitly allows curl to perform "insecure" SSL connections
-and transfers. All SSL connections are attempted to be made secure by using
-the CA certificate bundle installed by default. This makes all connections
-considered "insecure" fail unless \fI-k/--insecure\fP is used.
-
-See this online resource for further details:
-\fBhttp://curl.haxx.se/docs/sslcerts.html\fP
-.IP "--keepalive-time <seconds>"
-This option sets the time a connection needs to remain idle before sending
-keepalive probes and the time between individual keepalive probes. It is
-currently effective on operating systems offering the TCP_KEEPIDLE and
-TCP_KEEPINTVL socket options (meaning Linux, recent AIX, HP-UX and more). This
-option has no effect if \fI--no-keepalive\fP is used. (Added in 7.18.0)
-
-If this option is used multiple times, the last occurrence sets the amount.
-.IP "--key <key>"
-(SSL/SSH) Private key file name. Allows you to provide your private key in this
-separate file.
-
-If this option is used several times, the last one will be used.
-.IP "--key-type <type>"
-(SSL) Private key file type. Specify which type your \fI--key\fP provided
-private key is. DER, PEM, and ENG are supported. If not specified, PEM is
-assumed.
-
-If this option is used several times, the last one will be used.
-.IP "--krb <level>"
-(FTP) Enable Kerberos authentication and use. The level must be entered and
-should be one of 'clear', 'safe', 'confidential', or 'private'. Should you use
-a level that is not one of these, 'private' will instead be used.
-
-This option requires a library built with kerberos4 or GSSAPI
-(GSS-Negotiate) support. This is not very common. Use \fI-V/--version\fP to
-see if your curl supports it.
-
-If this option is used several times, the last one will be used.
-.IP "-K/--config <config file>"
-Specify which config file to read curl arguments from. The config file is a
-text file in which command line arguments can be written which then will be
-used as if they were written on the actual command line. Options and their
-parameters must be specified on the same config file line, separated by
-whitespace, colon, the equals sign or any combination thereof (however,
-the preferred separator is the equals sign). If the parameter is to contain
-whitespace, the parameter must be enclosed within quotes. Within double
-quotes, the following escape sequences are available: \\\\, \\", \\t, \\n,
-\\r and \\v. A backslash preceding any other letter is ignored. If the
-first column of a config line is a '#' character, the rest of the line will be
-treated as a comment. Only write one option per physical line in the config
-file.
-
-Specify the filename to -K/--config as '-' to make curl read the file from
-stdin.
-
-Note that to be able to specify a URL in the config file, you need to specify
-it using the \fI--url\fP option, and not by simply writing the URL on its own
-line. So, it could look similar to this:
-
-url = "http://curl.haxx.se/docs/"
-
-Long option names can optionally be given in the config file without the
-initial double dashes.
-
-When curl is invoked, it always (unless \fI-q\fP is used) checks for a default
-config file and uses it if found. The default config file is checked for in
-the following places in this order:
-
-1) curl tries to find the "home dir": It first checks for the CURL_HOME and
-then the HOME environment variables. Failing that, it uses getpwuid() on
-UNIX-like systems (which returns the home dir given the current user in your
-system). On Windows, it then checks for the APPDATA variable, or as a last
-resort the '%USERPROFILE%\\Application Data'.
-
-2) On windows, if there is no _curlrc file in the home dir, it checks for one
-in the same dir the curl executable is placed. On UNIX-like systems, it will
-simply try to load .curlrc from the determined home dir.
-
-.nf
-# --- Example file ---
-# this is a comment
-url = "curl.haxx.se"
-output = "curlhere.html"
-user-agent = "superagent/1.0"
-
-# and fetch another URL too
-url = "curl.haxx.se/docs/manpage.html"
--O
-referer = "http://nowhereatall.com/"
-# --- End of example file ---
-.fi
-
-This option can be used multiple times to load multiple config files.
-.IP "--libcurl <file>"
-Append this option to any ordinary curl command line, and you will get a
-libcurl-using source code written to the file that does the equivalent
-of what your command-line operation does!
-
-NOTE: this does not properly support -F and the sending of multipart
-formposts, so in those cases the output program will be missing necessary
-calls to \fIcurl_formadd(3)\fP, and possibly more.
-
-If this option is used several times, the last given file name will be
-used. (Added in 7.16.1)
-.IP "--limit-rate <speed>"
-Specify the maximum transfer rate you want curl to use. This feature is useful
-if you have a limited pipe and you'd like your transfer not to use your entire
-bandwidth.
-
-The given speed is measured in bytes/second, unless a suffix is appended.
-Appending 'k' or 'K' will count the number as kilobytes, 'm' or M' makes it
-megabytes, while 'g' or 'G' makes it gigabytes. Examples: 200K, 3m and 1G.
-
-The given rate is the average speed counted during the entire transfer. It
-means that curl might use higher transfer speeds in short bursts, but over
-time it uses no more than the given rate.
-
-If you also use the \fI-Y/--speed-limit\fP option, that option will take
-precedence and might cripple the rate-limiting slightly, to help keeping the
-speed-limit logic working.
-
-If this option is used several times, the last one will be used.
-.IP "-l/--list-only"
-(FTP)
-When listing an FTP directory, this switch forces a name-only view.
-Especially useful if you want to machine-parse the contents of an FTP
-directory since the normal directory view doesn't use a standard look
-or format.
-
-This option causes an FTP NLST command to be sent.  Some FTP servers
-list only files in their response to NLST; they do not include
-subdirectories and symbolic links.
-
-.IP "--local-port <num>[-num]"
-Set a preferred number or range of local port numbers to use for the
-connection(s).  Note that port numbers by nature are a scarce resource that
-will be busy at times so setting this range to something too narrow might
-cause unnecessary connection setup failures. (Added in 7.15.2)
-.IP "-L/--location"
-(HTTP/HTTPS) If the server reports that the requested page has moved to a
-different location (indicated with a Location: header and a 3XX response code),
-this option will make curl redo the request on the new place. If used together
-with \fI-i/--include\fP or \fI-I/--head\fP, headers from all requested pages
-will be shown. When authentication is used, curl only sends its credentials to
-the initial host. If a redirect takes curl to a different host, it won't be
-able to intercept the user+password. See also \fI--location-trusted\fP on how
-to change this. You can limit the amount of redirects to follow by using the
-\fI--max-redirs\fP option.
-
-When curl follows a redirect and the request is not a plain GET (for example
-POST or PUT), it will do the following request with a GET if the HTTP response
-was 301, 302, or 303. If the response code was any other 3xx code, curl will
-re-send the following request using the same unmodified method.
-.IP "--location-trusted"
-(HTTP/HTTPS) Like \fI-L/--location\fP, but will allow sending the name +
-password to all hosts that the site may redirect to. This may or may not
-introduce a security breach if the site redirects you to a site to which
-you'll send your authentication info (which is plaintext in the case of HTTP
-Basic authentication).
-.IP "--mail-rcpt <address>"
-(SMTP) Specify a single address that the given mail should get sent to. This
-option can be used multiple times to specify many recipients.
-
-(Added in 7.20.0)
-.IP "--mail-from <address>"
-(SMTP) Specify a single address that the given mail should get sent from.
-
-(Added in 7.20.0)
-.IP "--max-filesize <bytes>"
-Specify the maximum size (in bytes) of a file to download. If the file
-requested is larger than this value, the transfer will not start and curl will
-return with exit code 63.
-
-\fBNOTE:\fP The file size is not always known prior to download, and for such files
-this option has no effect even if the file transfer ends up being larger than
-this given limit. This concerns both FTP and HTTP transfers.
-.IP "-m/--max-time <seconds>"
-Maximum time in seconds that you allow the whole operation to take.  This is
-useful for preventing your batch jobs from hanging for hours due to slow
-networks or links going down.  See also the \fI--connect-timeout\fP option.
-
-If this option is used several times, the last one will be used.
-.IP "-M/--manual"
-Manual. Display the huge help text.
-.IP "-n/--netrc"
-Makes curl scan the \fI.netrc\fP (\fI_netrc\fP on Windows) file in the user's
-home directory for login name and password. This is typically used for FTP on
-UNIX. If used with HTTP, curl will enable user authentication. See
-.BR netrc(4)
-or
-.BR ftp(1)
-for details on the file format. Curl will not complain if that file
-doesn't have the right permissions (it should not be either world- or
-group-readable). The environment variable "HOME" is used to find the home
-directory.
-
-A quick and very simple example of how to setup a \fI.netrc\fP to allow curl
-to FTP to the machine host.domain.com with user name \&'myself' and password
-\&'secret' should look similar to:
-
-.B "machine host.domain.com login myself password secret"
-.IP "--netrc-optional"
-Very similar to \fI--netrc\fP, but this option makes the .netrc usage
-\fBoptional\fP and not mandatory as the \fI--netrc\fP option does.
-.IP "--negotiate"
-(HTTP) Enables GSS-Negotiate authentication. The GSS-Negotiate method was
-designed by Microsoft and is used in their web applications. It is primarily
-meant as a support for Kerberos5 authentication but may be also used along
-with another authentication method. For more information see IETF draft
-draft-brezak-spnego-http-04.txt.
-
-If you want to enable Negotiate for your proxy authentication, then use
-\fI--proxy-negotiate\fP.
-
-This option requires a library built with GSSAPI support. This is
-not very common. Use \fI-V/--version\fP to see if your version supports
-GSS-Negotiate.
-
-When using this option, you must also provide a fake -u/--user option to
-activate the authentication code properly. Sending a '-u :' is enough as the
-user name and password from the -u option aren't actually used.
-
-If this option is used several times, the following occurrences make no
-difference.
-.IP "-N/--no-buffer"
-Disables the buffering of the output stream. In normal work situations, curl
-will use a standard buffered output stream that will have the effect that it
-will output the data in chunks, not necessarily exactly when the data arrives.
-Using this option will disable that buffering.
-
-Note that this is the negated option name documented. You can thus use
-\fI--buffer\fP to enforce the buffering.
-.IP "--no-keepalive"
-Disables the use of keepalive messages on the TCP connection, as by default
-curl enables them.
-
-Note that this is the negated option name documented. You can thus use
-\fI--keepalive\fP to enforce keepalive.
-.IP "--no-sessionid"
-(SSL) Disable curl's use of SSL session-ID caching.  By default all transfers
-are done using the cache. Note that while nothing should ever get hurt by
-attempting to reuse SSL session-IDs, there seem to be broken SSL
-implementations in the wild that may require you to disable this in order for
-you to succeed. (Added in 7.16.0)
-
-Note that this is the negated option name documented. You can thus use
-\fI--sessionid\fP to enforce session-ID caching.
-.IP "--noproxy <no-proxy-list>"
-Comma-separated list of hosts which do not use a proxy, if one is specified.
-The only wildcard is a single * character, which matches all hosts, and
-effectively disables the proxy. Each name in this list is matched as either
-a domain which contains the hostname, or the hostname itself. For example,
-local.com would match local.com, local.com:80, and www.local.com, but not
-www.notlocal.com.  (Added in 7.19.4).
-.IP "--ntlm"
-(HTTP) Enables NTLM authentication. The NTLM authentication method was
-designed by Microsoft and is used by IIS web servers. It is a proprietary
-protocol, reverse-engineered by clever people and implemented in curl based
-on their efforts. This kind of behavior should not be endorsed, you should
-encourage everyone who uses NTLM to switch to a public and documented
-authentication method instead, such as Digest.
-
-If you want to enable NTLM for your proxy authentication, then use
-\fI--proxy-ntlm\fP.
-
-This option requires a library built with SSL support. Use
-\fI-V/--version\fP to see if your curl supports NTLM.
-
-If this option is used several times, the following occurrences make no
-difference.
-.IP "-o/--output <file>"
-Write output to <file> instead of stdout. If you are using {} or [] to fetch
-multiple documents, you can use '#' followed by a number in the <file>
-specifier. That variable will be replaced with the current string for the URL
-being fetched. Like in:
-
-  curl http://{one,two}.site.com -o "file_#1.txt"
-
-or use several variables like:
-
-  curl http://{site,host}.host[1-5].com -o "#1_#2"
-
-You may use this option as many times as the number of URLs you have.
-
-See also the \fI--create-dirs\fP option to create the local directories
-dynamically. Specifying the output as '-' (a single dash) will force the
-output to be done to stdout.
-.IP "-O/--remote-name"
-Write output to a local file named like the remote file we get. (Only the file
-part of the remote file is used, the path is cut off.)
-
-The remote file name to use for saving is extracted from the given URL,
-nothing else.
-
-You may use this option as many times as the number of URLs you have.
-.IP "--remote-name-all"
-This option changes the default action for all given URLs to be dealt with as
-if \fI-O/--remote-name\fP were used for each one. So if you want to disable
-that for a specific URL after \fI--remote-name-all\fP has been used, you must
-use "-o -" or \fI--no-remote-name\fP. (Added in 7.19.0)
-.IP "--pass <phrase>"
-(SSL/SSH) Passphrase for the private key
-
-If this option is used several times, the last one will be used.
-.IP "--post301"
-Tells curl to respect RFC 2616/10.3.2 and not convert POST requests into GET
-requests when following a 301 redirection. The non-RFC behaviour is ubiquitous
-in web browsers, so curl does the conversion by default to maintain
-consistency. However, a server may require a POST to remain a POST after such
-a redirection. This option is meaningful only when using \fI-L/--location\fP
-(Added in 7.17.1)
-.IP "--post302"
-Tells curl to respect RFC 2616/10.3.2 and not convert POST requests into GET
-requests when following a 302 redirection. The non-RFC behaviour is ubiquitous
-in web browsers, so curl does the conversion by default to maintain
-consistency. However, a server may require a POST to remain a POST after such
-a redirection. This option is meaningful only when using \fI-L/--location\fP
-(Added in 7.19.1)
-.IP "--proxy-anyauth"
-Tells curl to pick a suitable authentication method when communicating with
-the given proxy. This might cause an extra request/response round-trip. (Added
-in 7.13.2)
-.IP "--proxy-basic"
-Tells curl to use HTTP Basic authentication when communicating with the given
-proxy. Use \fI--basic\fP for enabling HTTP Basic with a remote host. Basic is
-the default authentication method curl uses with proxies.
-.IP "--proxy-digest"
-Tells curl to use HTTP Digest authentication when communicating with the given
-proxy. Use \fI--digest\fP for enabling HTTP Digest with a remote host.
-.IP "--proxy-negotiate"
-Tells curl to use HTTP Negotiate authentication when communicating
-with the given proxy. Use \fI--negotiate\fP for enabling HTTP Negotiate
-with a remote host. (Added in 7.17.1)
-.IP "--proxy-ntlm"
-Tells curl to use HTTP NTLM authentication when communicating with the given
-proxy. Use \fI--ntlm\fP for enabling NTLM with a remote host.
-.IP "--proxy1.0 <proxyhost[:port]>"
-Use the specified HTTP 1.0 proxy. If the port number is not specified, it is
-assumed at port 1080.
-
-The only difference between this and the HTTP proxy option (\fI-x/--proxy\fP),
-is that attempts to use CONNECT through the proxy will specify an HTTP 1.0
-protocol instead of the default HTTP 1.1.
-.IP "-p/--proxytunnel"
-When an HTTP proxy is used (\fI-x/--proxy\fP), this option will cause non-HTTP
-protocols to attempt to tunnel through the proxy instead of merely using it to
-do HTTP-like operations. The tunnel approach is made with the HTTP proxy
-CONNECT request and requires that the proxy allows direct connect to the
-remote port number curl wants to tunnel through to.
-.IP "--pubkey <key>"
-(SSH) Public key file name. Allows you to provide your public key in this
-separate file.
-
-If this option is used several times, the last one will be used.
-.IP "-P/--ftp-port <address>"
-(FTP) Reverses the default initiator/listener roles when connecting with
-FTP. This switch makes curl use active mode. In practice, curl then tells the
-server to connect back to the client's specified address and port, while
-passive mode asks the server to setup an IP address and port for it to connect
-to. <address> should be one of:
-.RS
-.IP interface
-i.e "eth0" to specify which interface's IP address you want to use (Unix only)
-.IP "IP address"
-i.e "192.168.10.1" to specify the exact IP address
-.IP "host name"
-i.e "my.host.domain" to specify the machine
-.IP "-"
-make curl pick the same IP address that is already used for the control
-connection
-.RE
-
-If this option is used several times, the last one will be used. Disable the
-use of PORT with \fI--ftp-pasv\fP. Disable the attempt to use the EPRT command
-instead of PORT by using \fI--disable-eprt\fP. EPRT is really PORT++.
-
-Starting in 7.19.5, you can append \&":[start]-[end]\&" to the right of the
-address, to tell curl what TCP port range to use. That means you specify a
-port range, from a lower to a higher number. A single number works as well,
-but do note that it increases the risk of failure since the port may not be
-available.
-.IP "-q"
-If used as the first parameter on the command line, the \fIcurlrc\fP config
-file will not be read and used. See the \fI-K/--config\fP for details on the
-default config file search path.
-.IP "-Q/--quote <command>"
-(FTP/SFTP) Send an arbitrary command to the remote FTP or SFTP server. Quote
-commands are sent BEFORE the transfer takes place (just after the
-initial PWD command in an FTP transfer, to be exact). To make commands
-take place after a successful transfer, prefix them with a dash '-'.
-To make commands be sent after libcurl has changed the working directory,
-just before the transfer command(s), prefix the command with a '+' (this
-is only supported for FTP). You may specify any number of commands. If
-the server returns failure for one of the commands, the entire operation
-will be aborted. You must send syntactically correct FTP commands as
-RFC959 defines to FTP servers, or one of the commands listed below to
-SFTP servers.  This option can be used multiple times.
-
-SFTP is a binary protocol. Unlike for FTP, libcurl interprets SFTP quote
-commands before sending them to the server.  Following is the list of
-all supported SFTP quote commands:
-.RS
-.IP "chgrp group file"
-The chgrp command sets the group ID of the file named by the file operand to the
-group ID specified by the group operand. The group operand is a decimal
-integer group ID.
-.IP "chmod mode file"
-The chmod command modifies the file mode bits of the specified file. The
-mode operand is an octal integer mode number.
-.IP "chown user file"
-The chown command sets the owner of the file named by the file operand to the
-user ID specified by the user operand. The user operand is a decimal
-integer user ID.
-.IP "ln source_file target_file"
-The ln and symlink commands create a symbolic link at the target_file location
-pointing to the source_file location.
-.IP "mkdir directory_name"
-The mkdir command creates the directory named by the directory_name operand.
-.IP "pwd"
-The pwd command returns the absolute pathname of the current working directory.
-.IP "rename source target"
-The rename command renames the file or directory named by the source
-operand to the destination path named by the target operand.
-.IP "rm file"
-The rm command removes the file specified by the file operand.
-.IP "rmdir directory"
-The rmdir command removes the directory entry specified by the directory
-operand, provided it is empty.
-.IP "symlink source_file target_file"
-See ln.
-.RE
-.IP "--random-file <file>"
-(SSL) Specify the path name to file containing what will be considered as
-random data. The data is used to seed the random engine for SSL connections.
-See also the \fI--egd-file\fP option.
-.IP "-r/--range <range>"
-(HTTP/FTP/SFTP/FILE) Retrieve a byte range (i.e a partial document) from a
-HTTP/1.1, FTP or SFTP server or a local FILE. Ranges can be specified
-in a number of ways.
-.RS
-.TP 10
-.B 0-499
-specifies the first 500 bytes
-.TP
-.B 500-999
-specifies the second 500 bytes
-.TP
-.B -500
-specifies the last 500 bytes
-.TP
-.B 9500-
-specifies the bytes from offset 9500 and forward
-.TP
-.B 0-0,-1
-specifies the first and last byte only(*)(H)
-.TP
-.B 500-700,600-799
-specifies 300 bytes from offset 500(H)
-.TP
-.B 100-199,500-599
-specifies two separate 100-byte ranges(*)(H)
-.RE
-
-(*) = NOTE that this will cause the server to reply with a multipart
-response!
-
-Only digit characters (0-9) are valid in the 'start' and 'stop' fields of
-the \&'start-stop' range syntax. If a non-digit character is given in the range, the server's
-response will be unspecified, depending on the server's configuration.
-
-You should also be aware that many HTTP/1.1 servers do not have this feature
-enabled, so that when you attempt to get a range, you'll instead get the whole
-document.
-
-FTP and SFTP range downloads only support the simple 'start-stop' syntax
-(optionally with one of the numbers omitted). FTP use depends on the extended
-FTP command SIZE.
-
-If this option is used several times, the last one will be used.
-.IP "--raw"
-When used, it disables all internal HTTP decoding of content or transfer
-encodings and instead makes them passed on unaltered, raw. (Added in 7.16.2)
-.IP "-R/--remote-time"
-When used, this will make libcurl attempt to figure out the timestamp of the
-remote file, and if that is available make the local file get that same
-timestamp.
-.IP "--retry <num>"
-If a transient error is returned when curl tries to perform a transfer, it
-will retry this number of times before giving up. Setting the number to 0
-makes curl do no retries (which is the default). Transient error means either:
-a timeout, an FTP 4xx response code or an HTTP 5xx response code.
-
-When curl is about to retry a transfer, it will first wait one second and then
-for all forthcoming retries it will double the waiting time until it reaches
-10 minutes which then will be the delay between the rest of the retries.  By
-using \fI--retry-delay\fP you disable this exponential backoff algorithm. See
-also \fI--retry-max-time\fP to limit the total time allowed for
-retries. (Added in 7.12.3)
-
-If this option is used multiple times, the last occurrence decide the amount.
-.IP "--retry-delay <seconds>"
-Make curl sleep this amount of time before each retry when a transfer has
-failed with a transient error (it changes the default backoff time algorithm
-between retries). This option is only interesting if \fI--retry\fP is also
-used. Setting this delay to zero will make curl use the default backoff time.
-(Added in 7.12.3)
-
-If this option is used multiple times, the last occurrence determines the amount.
-.IP "--retry-max-time <seconds>"
-The retry timer is reset before the first transfer attempt. Retries will be
-done as usual (see \fI--retry\fP) as long as the timer hasn't reached this
-given limit. Notice that if the timer hasn't reached the limit, the request
-will be made and while performing, it may take longer than this given time
-period. To limit a single request\'s maximum time, use \fI-m/--max-time\fP.
-Set this option to zero to not timeout retries. (Added in 7.12.3)
-
-If this option is used multiple times, the last occurrence determines the
-amount.
-.IP "-s/--silent"
-Silent or quiet mode. Don't show progress meter or error messages.  Makes
-Curl mute.
-.IP "-S/--show-error"
-When used with -s it makes curl show an error message if it fails.
-.IP "--socks4 <host[:port]>"
-Use the specified SOCKS4 proxy. If the port number is not specified, it is
-assumed at port 1080. (Added in 7.15.2)
-
-This option overrides any previous use of \fI-x/--proxy\fP, as they are
-mutually exclusive.
-
-If this option is used several times, the last one will be used.
-.IP "--socks4a <host[:port]>"
-Use the specified SOCKS4a proxy. If the port number is not specified, it is
-assumed at port 1080. (Added in 7.18.0)
-
-This option overrides any previous use of \fI-x/--proxy\fP, as they are
-mutually exclusive.
-
-If this option is used several times, the last one will be used.
-.IP "--socks5-hostname <host[:port]>"
-Use the specified SOCKS5 proxy (and let the proxy resolve the host name). If
-the port number is not specified, it is assumed at port 1080. (Added in
-7.18.0)
-
-This option overrides any previous use of \fI-x/--proxy\fP, as they are
-mutually exclusive.
-
-If this option is used several times, the last one will be used. (This option
-was previously wrongly documented and used as --socks without the number
-appended.)
-.IP "--socks5 <host[:port]>"
-Use the specified SOCKS5 proxy - but resolve the host name locally. If the
-port number is not specified, it is assumed at port 1080.
-
-This option overrides any previous use of \fI-x/--proxy\fP, as they are
-mutually exclusive.
-
-If this option is used several times, the last one will be used. (This option
-was previously wrongly documented and used as --socks without the number
-appended.)
-
-This option (as well as \fI--socks4\fP) does not work with IPV6, FTPS or LDAP.
-.IP "--socks5-gssapi-service <servicename>"
-The default service name for a socks server is rcmd/server-fqdn. This option
-allows you to change it.
-
-Examples:
- --socks5 proxy-name \fI--socks5-gssapi-service\fP sockd   would use
-sockd/proxy-name
- --socks5 proxy-name \fI--socks5-gssapi-service\fP sockd/real-name   would use
-sockd/real-name for cases where the proxy-name does not match the princpal name.
- (Added in 7.19.4).
-.IP "--socks5-gssapi-nec"
-As part of the gssapi negotiation a protection mode is negotiated. The rfc1961
-says in section 4.3/4.4 it should be protected, but the NEC reference
-implementation does not.  The option \fI--socks5-gssapi-nec\fP allows the
-unprotected exchange of the protection mode negotiation. (Added in 7.19.4).
-.IP "--stderr <file>"
-Redirect all writes to stderr to the specified file instead. If the file name
-is a plain '-', it is instead written to stdout. This option has no point when
-you're using a shell with decent redirecting capabilities.
-
-If this option is used several times, the last one will be used.
-.IP "--tcp-nodelay"
-Turn on the TCP_NODELAY option. See the \fIcurl_easy_setopt(3)\fP man page for
-details about this option. (Added in 7.11.2)
-.IP "-t/--telnet-option <OPT=val>"
-Pass options to the telnet protocol. Supported options are:
-
-TTYPE=<term> Sets the terminal type.
-
-XDISPLOC=<X display> Sets the X display location.
-
-NEW_ENV=<var,val> Sets an environment variable.
-.IP "--tftp-blksize <value>"
-(TFTP) Set TFTP BLKSIZE option (must be >512). This is the block size that
-curl will try to use when tranferring data to or from a TFTP server. By
-default 512 bytes will be used.
-
-If this option is used several times, the last one will be used.
-
-(Added in 7.20.0)
-.IP "-T/--upload-file <file>"
-This transfers the specified local file to the remote URL. If there is no file
-part in the specified URL, Curl will append the local file name. NOTE that you
-must use a trailing / on the last directory to really prove to Curl that there
-is no file name or curl will think that your last directory name is the remote
-file name to use. That will most likely cause the upload operation to fail. If
-this is used on a HTTP(S) server, the PUT command will be used.
-
-Use the file name "-" (a single dash) to use stdin instead of a given file.
-Alternately, the file name "." (a single period) may be specified instead
-of "-" to use stdin in non-blocking mode to allow reading server output
-while stdin is being uploaded.
-
-You can specify one -T for each URL on the command line. Each -T + URL pair
-specifies what to upload and to where. curl also supports "globbing" of the -T
-argument, meaning that you can upload multiple files to a single URL by using
-the same URL globbing style supported in the URL, like this:
-
-curl -T "{file1,file2}" http://www.uploadtothissite.com
-
-or even
-
-curl -T "img[1-1000].png" ftp://ftp.picturemania.com/upload/
-.IP "--trace <file>"
-Enables a full trace dump of all incoming and outgoing data, including
-descriptive information, to the given output file. Use "-" as filename to have
-the output sent to stdout.
-
-This option overrides previous uses of \fI-v/--verbose\fP or
-\fI--trace-ascii\fP.
-
-If this option is used several times, the last one will be used.
-.IP "--trace-ascii <file>"
-Enables a full trace dump of all incoming and outgoing data, including
-descriptive information, to the given output file. Use "-" as filename to have
-the output sent to stdout.
-
-This is very similar to \fI--trace\fP, but leaves out the hex part and only
-shows the ASCII part of the dump. It makes smaller output that might be easier
-to read for untrained humans.
-
-This option overrides previous uses of \fI-v/--verbose\fP or \fI--trace\fP.
-
-If this option is used several times, the last one will be used.
-.IP "--trace-time"
-Prepends a time stamp to each trace or verbose line that curl displays.
-(Added in 7.14.0)
-.IP "-u/--user <user:password>"
-Specify the user name and password to use for server authentication. Overrides
-\fI-n/--netrc\fP and \fI--netrc-optional\fP.
-
-If you just give the user name (without entering a colon) curl will prompt for
-a password.
-
-If you use an SSPI-enabled curl binary and do NTLM authentication, you can
-force curl to pick up the user name and password from your environment by
-simply specifying a single colon with this option: "-u :".
-
-If this option is used several times, the last one will be used.
-.IP "-U/--proxy-user <user:password>"
-Specify the user name and password to use for proxy authentication.
-
-If you use an SSPI-enabled curl binary and do NTLM authentication, you can
-force curl to pick up the user name and password from your environment by
-simply specifying a single colon with this option: "-U :".
-
-If this option is used several times, the last one will be used.
-.IP "--url <URL>"
-Specify a URL to fetch. This option is mostly handy when you want to specify
-URL(s) in a config file.
-
-This option may be used any number of times. To control where this URL is
-written, use the \fI-o/--output\fP or the \fI-O/--remote-name\fP options.
-.IP "-v/--verbose"
-Makes the fetching more verbose/talkative. Mostly useful for debugging. A line
-starting with '>' means "header data" sent by curl, '<' means "header data"
-received by curl that is hidden in normal cases, and a line starting with '*'
-means additional info provided by curl.
-
-Note that if you only want HTTP headers in the output, \fI-i/--include\fP
-might be the option you're looking for.
-
-If you think this option still doesn't give you enough details, consider using
-\fI--trace\fP or \fI--trace-ascii\fP instead.
-
-This option overrides previous uses of \fI--trace-ascii\fP or \fI--trace\fP.
-
-Use \fI-S/--silent\fP to make curl quiet.
-.IP "-V/--version"
-Displays information about curl and the libcurl version it uses.
-
-The first line includes the full version of curl, libcurl and other 3rd party
-libraries linked with the executable.
-
-The second line (starts with "Protocols:") shows all protocols that libcurl
-reports to support.
-
-The third line (starts with "Features:") shows specific features libcurl
-reports to offer. Available features include:
-.RS
-.IP "IPv6"
-You can use IPv6 with this.
-.IP "krb4"
-Krb4 for FTP is supported.
-.IP "SSL"
-HTTPS and FTPS are supported.
-.IP "libz"
-Automatic decompression of compressed files over HTTP is supported.
-.IP "NTLM"
-NTLM authentication is supported.
-.IP "GSS-Negotiate"
-Negotiate authentication and krb5 for FTP is supported.
-.IP "Debug"
-This curl uses a libcurl built with Debug. This enables more error-tracking
-and memory debugging etc. For curl-developers only!
-.IP "AsynchDNS"
-This curl uses asynchronous name resolves.
-.IP "SPNEGO"
-SPNEGO Negotiate authentication is supported.
-.IP "Largefile"
-This curl supports transfers of large files, files larger than 2GB.
-.IP "IDN"
-This curl supports IDN - international domain names.
-.IP "SSPI"
-SSPI is supported. If you use NTLM and set a blank user name, curl will
-authenticate with your current user and password.
-.RE
-.IP "-w/--write-out <format>"
-Defines what to display on stdout after a completed and successful
-operation. The format is a string that may contain plain text mixed with any
-number of variables. The string can be specified as "string", to get read from
-a particular file you specify it "@filename" and to tell curl to read the
-format from stdin you write "@-".
-
-The variables present in the output format will be substituted by the value or
-text that curl thinks fit, as described below. All variables are specified
-as %{variable_name} and to output a normal % you just write them as
-%%. You can output a newline by using \\n, a carriage return with \\r and a tab
-space with \\t.
-
-.B NOTE:
-The %-symbol is a special symbol in the win32-environment, where all
-occurrences of % must be doubled when using this option.
-
-The variables available at this point are:
-.RS
-.TP 15
-.B url_effective
-The URL that was fetched last. This is most meaningful if you've told curl
-to follow location: headers.
-.TP
-.B http_code
-The numerical response code that was found in the last retrieved HTTP(S) or
-FTP(s) transfer. In 7.18.2 the alias \fBresponse_code\fP was added to show the
-same info.
-.TP
-.B http_connect
-The numerical code that was found in the last response (from a proxy) to a
-curl CONNECT request. (Added in 7.12.4)
-.TP
-.B time_total
-The total time, in seconds, that the full operation lasted. The time will be
-displayed with millisecond resolution.
-.TP
-.B time_namelookup
-The time, in seconds, it took from the start until the name resolving was
-completed.
-.TP
-.B time_connect
-The time, in seconds, it took from the start until the TCP connect to the
-remote host (or proxy) was completed.
-.TP
-.B time_appconnect
-The time, in seconds, it took from the start until the SSL/SSH/etc
-connect/handshake to the remote host was completed. (Added in 7.19.0)
-.TP
-.B time_pretransfer
-The time, in seconds, it took from the start until the file transfer was just
-about to begin. This includes all pre-transfer commands and negotiations that
-are specific to the particular protocol(s) involved.
-.TP
-.B time_redirect
-The time, in seconds, it took for all redirection steps include name lookup,
-connect, pretransfer and transfer before the final transaction was
-started. time_redirect shows the complete execution time for multiple
-redirections. (Added in 7.12.3)
-.TP
-.B time_starttransfer
-The time, in seconds, it took from the start until the first byte was just about
-to be transferred. This includes time_pretransfer and also the time the
-server needed to calculate the result.
-.TP
-.B size_download
-The total amount of bytes that were downloaded.
-.TP
-.B size_upload
-The total amount of bytes that were uploaded.
-.TP
-.B size_header
-The total amount of bytes of the downloaded headers.
-.TP
-.B size_request
-The total amount of bytes that were sent in the HTTP request.
-.TP
-.B speed_download
-The average download speed that curl measured for the complete download. Bytes
-per second.
-.TP
-.B speed_upload
-The average upload speed that curl measured for the complete upload. Bytes per
-second.
-.TP
-.B content_type
-The Content-Type of the requested document, if there was any.
-.TP
-.B num_connects
-Number of new connects made in the recent transfer. (Added in 7.12.3)
-.TP
-.B num_redirects
-Number of redirects that were followed in the request. (Added in 7.12.3)
-.TP
-.B redirect_url
-When a HTTP request was made without -L to follow redirects, this variable
-will show the actual URL a redirect \fIwould\fP take you to. (Added in 7.18.2)
-.TP
-.B ftp_entry_path
-The initial path libcurl ended up in when logging on to the remote FTP
-server. (Added in 7.15.4)
-.TP
-.B ssl_verify_result
-The result of the SSL peer certificate verification that was requested. 0
-means the verification was successful. (Added in 7.19.0)
-.RE
-
-If this option is used several times, the last one will be used.
-.IP "-x/--proxy <proxyhost[:port]>"
-Use the specified HTTP proxy. If the port number is not specified, it is assumed
-at port 1080.
-
-This option overrides existing environment variables that set the proxy to
-use. If there's an environment variable setting a proxy, you can set proxy to
-\&"" to override it.
-
-\fBNote\fP that all operations that are performed over a HTTP proxy will
-transparently be converted to HTTP. It means that certain protocol specific
-operations might not be available. This is not the case if you can tunnel
-through the proxy, as done with the \fI-p/--proxytunnel\fP option.
-
-Starting with 7.14.1, the proxy host can be specified the exact same way as
-the proxy environment variables, including the protocol prefix (http://) and
-the embedded user + password.
-
-If this option is used several times, the last one will be used.
-.IP "-X/--request <command>"
-(HTTP) Specifies a custom request method to use when communicating with the
-HTTP server.  The specified request will be used instead of the method
-otherwise used (which defaults to GET). Read the HTTP 1.1 specification for
-details and explanations. Common additional HTTP requests include PUT and
-DELETE, but related technologies like WebDAV offers PROPFIND, COPY, MOVE and
-more.
-
-(FTP)
-Specifies a custom FTP command to use instead of LIST when doing file lists
-with FTP.
-
-If this option is used several times, the last one will be used.
-.IP "-y/--speed-time <time>"
-If a download is slower than speed-limit bytes per second during a speed-time
-period, the download gets aborted. If speed-time is used, the default
-speed-limit will be 1 unless set with -Y.
-
-This option controls transfers and thus will not affect slow connects etc. If
-this is a concern for you, try the \fI--connect-timeout\fP option.
-
-If this option is used several times, the last one will be used.
-.IP "-Y/--speed-limit <speed>"
-If a download is slower than this given speed (in bytes per second) for
-speed-time seconds it gets aborted. speed-time is set with -y and is 30 if
-not set.
-
-If this option is used several times, the last one will be used.
-.IP "-z/--time-cond <date expression>"
-(HTTP/FTP) Request a file that has been modified later than the given time and
-date, or one that has been modified before that time. The date expression can
-be all sorts of date strings or if it doesn't match any internal ones, it
-tries to get the time from a given file name instead! See the
-\fIcurl_getdate(3)\fP man pages for date expression details.
-
-Start the date expression with a dash (-) to make it request for a document
-that is older than the given date/time, default is a document that is newer
-than the specified date/time.
-
-If this option is used several times, the last one will be used.
-.IP "--max-redirs <num>"
-Set maximum number of redirection-followings allowed. If \fI-L/--location\fP
-is used, this option can be used to prevent curl from following redirections
-\&"in absurdum". By default, the limit is set to 50 redirections. Set this
-option to -1 to make it limitless.
-
-If this option is used several times, the last one will be used.
-.IP "-0/--http1.0"
-(HTTP) Forces curl to issue its requests using HTTP 1.0 instead of using its
-internally preferred: HTTP 1.1.
-.IP "-1/--tlsv1"
-(SSL)
-Forces curl to use TLS version 1 when negotiating with a remote TLS server.
-.IP "-2/--sslv2"
-(SSL)
-Forces curl to use SSL version 2 when negotiating with a remote SSL server.
-.IP "-3/--sslv3"
-(SSL)
-Forces curl to use SSL version 3 when negotiating with a remote SSL server.
-.IP "-4/--ipv4"
-If libcurl is capable of resolving an address to multiple IP versions (which
-it is if it is IPv6-capable), this option tells libcurl to resolve names to
-IPv4 addresses only.
-.IP "-6/--ipv6"
-If libcurl is capable of resolving an address to multiple IP versions (which
-it is if it is IPv6-capable), this option tells libcurl to resolve names to
-IPv6 addresses only.
-.IP "-#/--progress-bar"
-Make curl display progress information as a progress bar instead of the
-default statistics.
-.SH FILES
-.I ~/.curlrc
-.RS
-Default config file, see \fI-K/--config\fP for details.
-.SH ENVIRONMENT
-The environment variables can be specified in lower case or upper case. The
-lower case version has precedence. http_proxy is an exception as it is only
-available in lower case.
-.IP "http_proxy [protocol://]<host>[:port]"
-Sets the proxy server to use for HTTP.
-.IP "HTTPS_PROXY [protocol://]<host>[:port]"
-Sets the proxy server to use for HTTPS.
-.IP "FTP_PROXY [protocol://]<host>[:port]"
-Sets the proxy server to use for FTP.
-.IP "ALL_PROXY [protocol://]<host>[:port]"
-Sets the proxy server to use if no protocol-specific proxy is set.
-.IP "NO_PROXY <comma-separated list of hosts>"
-list of host names that shouldn't go through any proxy. If set to a asterisk
-\&'*' only, it matches all hosts.
-.SH EXIT CODES
-There are a bunch of different error codes and their corresponding error
-messages that may appear during bad conditions. At the time of this writing,
-the exit codes are:
-.IP 1
-Unsupported protocol. This build of curl has no support for this protocol.
-.IP 2
-Failed to initialize.
-.IP 3
-URL malformed. The syntax was not correct.
-.IP 5
-Couldn't resolve proxy. The given proxy host could not be resolved.
-.IP 6
-Couldn't resolve host. The given remote host was not resolved.
-.IP 7
-Failed to connect to host.
-.IP 8
-FTP weird server reply. The server sent data curl couldn't parse.
-.IP 9
-FTP access denied. The server denied login or denied access to the particular
-resource or directory you wanted to reach. Most often you tried to change to a
-directory that doesn't exist on the server.
-.IP 11
-FTP weird PASS reply. Curl couldn't parse the reply sent to the PASS request.
-.IP 13
-FTP weird PASV reply, Curl couldn't parse the reply sent to the PASV request.
-.IP 14
-FTP weird 227 format. Curl couldn't parse the 227-line the server sent.
-.IP 15
-FTP can't get host. Couldn't resolve the host IP we got in the 227-line.
-.IP 17
-FTP couldn't set binary. Couldn't change transfer method to binary.
-.IP 18
-Partial file. Only a part of the file was transferred.
-.IP 19
-FTP couldn't download/access the given file, the RETR (or similar) command
-failed.
-.IP 21
-FTP quote error. A quote command returned error from the server.
-.IP 22
-HTTP page not retrieved. The requested url was not found or returned another
-error with the HTTP error code being 400 or above. This return code only
-appears if \fI-f/--fail\fP is used.
-.IP 23
-Write error. Curl couldn't write data to a local filesystem or similar.
-.IP 25
-FTP couldn't STOR file. The server denied the STOR operation, used for FTP
-uploading.
-.IP 26
-Read error. Various reading problems.
-.IP 27
-Out of memory. A memory allocation request failed.
-.IP 28
-Operation timeout. The specified time-out period was reached according to the
-conditions.
-.IP 30
-FTP PORT failed. The PORT command failed. Not all FTP servers support the PORT
-command, try doing a transfer using PASV instead!
-.IP 31
-FTP couldn't use REST. The REST command failed. This command is used for
-resumed FTP transfers.
-.IP 33
-HTTP range error. The range "command" didn't work.
-.IP 34
-HTTP post error. Internal post-request generation error.
-.IP 35
-SSL connect error. The SSL handshaking failed.
-.IP 36
-FTP bad download resume. Couldn't continue an earlier aborted download.
-.IP 37
-FILE couldn't read file. Failed to open the file. Permissions?
-.IP 38
-LDAP cannot bind. LDAP bind operation failed.
-.IP 39
-LDAP search failed.
-.IP 41
-Function not found. A required LDAP function was not found.
-.IP 42
-Aborted by callback. An application told curl to abort the operation.
-.IP 43
-Internal error. A function was called with a bad parameter.
-.IP 45
-Interface error. A specified outgoing interface could not be used.
-.IP 47
-Too many redirects. When following redirects, curl hit the maximum amount.
-.IP 48
-Unknown TELNET option specified.
-.IP 49
-Malformed telnet option.
-.IP 51
-The peer's SSL certificate or SSH MD5 fingerprint was not ok.
-.IP 52
-The server didn't reply anything, which here is considered an error.
-.IP 53
-SSL crypto engine not found.
-.IP 54
-Cannot set SSL crypto engine as default.
-.IP 55
-Failed sending network data.
-.IP 56
-Failure in receiving network data.
-.IP 58
-Problem with the local certificate.
-.IP 59
-Couldn't use specified SSL cipher.
-.IP 60
-Peer certificate cannot be authenticated with known CA certificates.
-.IP 61
-Unrecognized transfer encoding.
-.IP 62
-Invalid LDAP URL.
-.IP 63
-Maximum file size exceeded.
-.IP 64
-Requested FTP SSL level failed.
-.IP 65
-Sending the data requires a rewind that failed.
-.IP 66
-Failed to initialise SSL Engine.
-.IP 67
-The user name, password, or similar was not accepted and curl failed to log in.
-.IP 68
-File not found on TFTP server.
-.IP 69
-Permission problem on TFTP server.
-.IP 70
-Out of disk space on TFTP server.
-.IP 71
-Illegal TFTP operation.
-.IP 72
-Unknown TFTP transfer ID.
-.IP 73
-File already exists (TFTP).
-.IP 74
-No such user (TFTP).
-.IP 75
-Character conversion failed.
-.IP 76
-Character conversion functions required.
-.IP 77
-Problem with reading the SSL CA cert (path? access rights?).
-.IP 78
-The resource referenced in the URL does not exist.
-.IP 79
-An unspecified error occurred during the SSH session.
-.IP 80
-Failed to shut down the SSL connection.
-.IP 82
-Could not load CRL file, missing or wrong format (added in 7.19.0).
-.IP 83
-Issuer check failed (added in 7.19.0).
-.IP XX
-More error codes will appear here in future releases. The existing ones
-are meant to never change.
-.SH AUTHORS / CONTRIBUTORS
-Daniel Stenberg is the main author, but the whole list of contributors is
-found in the separate THANKS file.
-.SH WWW
-http://curl.haxx.se
-.SH FTP
-ftp://ftp.sunet.se/pub/www/utilities/curl/
-.SH "SEE ALSO"
-.BR ftp (1),
-.BR wget (1)
-
diff --git a/src/other/curl/docs/curl.html b/src/other/curl/docs/curl.html
deleted file mode 100644
index dc99d04..0000000
--- a/src/other/curl/docs/curl.html
+++ /dev/null
@@ -1,3759 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:08 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl</title>
-
-</head>
-<body>
-
-<h1 align="center">curl</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#URL">URL</a><br>
-<a href="#PROGRESS METER">PROGRESS METER</a><br>
-<a href="#OPTIONS">OPTIONS</a><br>
-<a href="#FILES">FILES</a><br>
-<a href="#ENVIRONMENT">ENVIRONMENT</a><br>
-<a href="#EXIT CODES">EXIT CODES</a><br>
-<a href="#AUTHORS / CONTRIBUTORS">AUTHORS / CONTRIBUTORS</a><br>
-<a href="#WWW">WWW</a><br>
-<a href="#FTP">FTP</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl −
-transfer a URL</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl
-[options]</b> <i>[URL...]</i></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><i><b>curl</b></i>
-is a tool to transfer data from or to a server, using one of
-the supported protocols (HTTP, HTTPS, FTP, FTPS, SCP, SFTP,
-TFTP, DICT, TELNET, LDAP or FILE). The command is designed
-to work without user interaction.</p>
-
-<p style="margin-left:11%; margin-top: 1em">curl offers a
-busload of useful tricks like proxy support, user
-authentication, FTP upload, HTTP post, SSL connections,
-cookies, file transfer resume and more. As you will see
-below, the number of features will make your head spin!</p>
-
-<p style="margin-left:11%; margin-top: 1em">curl is powered
-by libcurl for all transfer-related features. See
-<b>libcurl</b>(3) for details.</p>
-
-<h2>URL
-<a name="URL"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The URL syntax
-is protocol-dependent. You’ll find a detailed
-description in RFC 3986.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You can specify
-multiple URLs or parts of URLs by writing part sets within
-braces as in:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">http://site.{one,two,three}.com</p>
-
-<p style="margin-left:11%; margin-top: 1em">or you can get
-sequences of alphanumeric series by using [] as in:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">ftp://ftp.numericals.com/file[1-100].txt
-<br>
-ftp://ftp.numericals.com/file[001-100].txt (with leading
-zeros) <br>
-ftp://ftp.letters.com/file[a-z].txt</p>
-
-<p style="margin-left:11%; margin-top: 1em">No nesting of
-the sequences is supported at the moment, but you can use
-several ones next to each other:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">http://any.org/archive[1996-1999]/vol[1-4]/part{a,b,c}.html</p>
-
-<p style="margin-left:11%; margin-top: 1em">You can specify
-any amount of URLs on the command line. They will be fetched
-in a sequential manner in the specified order.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Since curl
-7.15.1 you can also specify a step counter for the ranges,
-so that you can get every Nth number or letter:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">http://www.numericals.com/file[1-100:10].txt
-<br>
-http://www.letters.com/file[a-z:2].txt</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you specify
-URL without protocol:// prefix, curl will attempt to guess
-what protocol you might want. It will then default to HTTP
-but try other protocols based on often-used host name
-prefixes. For example, for host names starting with
-"ftp." curl will assume you want to speak FTP.</p>
-
-<p style="margin-left:11%; margin-top: 1em">curl will do
-its best to use what you pass to it as a URL. It is not
-trying to validate it as a syntactically correct URL by any
-means but is instead <b>very</b> liberal with what it
-accepts.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Curl will
-attempt to re-use connections for multiple file transfers,
-so that getting many files from the same server will not do
-multiple connects / handshakes. This improves speed. Of
-course this is only done on files specified on a single
-command line and cannot be used between separate curl
-invokes.</p>
-
-<h2>PROGRESS METER
-<a name="PROGRESS METER"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl normally
-displays a progress meter during operations, indicating the
-amount of transferred data, transfer speeds and estimated
-time left, etc.</p>
-
-<p style="margin-left:11%; margin-top: 1em">However, since
-curl displays this data to the terminal by default, if you
-invoke curl to do an operation and it is about to write data
-to the terminal, it <i>disables</i> the progress meter as
-otherwise it would mess up the output mixing progress meter
-and response data.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you want a
-progress meter for HTTP POST or PUT requests, you need to
-redirect the response output to a file, using shell redirect
-(>), -o [file] or similar.</p>
-
-<p style="margin-left:11%; margin-top: 1em">It is not the
-same case for FTP upload as that operation does not spit out
-any response data to the terminal.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you prefer a
-progress "bar" instead of the regular meter,
-<i>-#</i> is your friend.</p>
-
-<h2>OPTIONS
-<a name="OPTIONS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">In general, all
-boolean options are enabled with --option and yet again
-disabled with --<b>no-</b>option. That is, you use the exact
-same option name but prefix it with "no-".
-However, in this list we mostly only list and show the
---option version of them. (This concept with --no options
-was added in 7.19.0. Previously most options were toggled
-on/off on repeated use of the same command line option.)
-<br>
--a/--append</p>
-
-<p style="margin-left:22%;">(FTP/SFTP) When used in an
-upload, this will tell curl to append to the target file
-instead of overwriting it. If the file doesn’t exist,
-it will be created. Note that this flag is ignored by some
-SSH servers (including OpenSSH).</p>
-
-<p style="margin-left:11%;">-A/--user-agent <agent
-string></p>
-
-<p style="margin-left:22%;">(HTTP) Specify the User-Agent
-string to send to the HTTP server. Some badly done CGIs fail
-if this field isn’t set to "Mozilla/4.0". To
-encode blanks in the string, surround the string with single
-quote marks. This can also be set with the
-<i>-H/--header</i> option of course.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is set more than once, the last one will be the one
-that’s used.</p>
-
-<p style="margin-left:11%;">--anyauth</p>
-
-<p style="margin-left:22%;">(HTTP) Tells curl to figure out
-authentication method by itself, and use the most secure one
-the remote site claims to support. This is done by first
-doing a request and checking the response-headers, thus
-possibly inducing an extra network round-trip. This is used
-instead of setting a specific authentication method, which
-you can do with <i>--basic</i>, <i>--digest</i>,
-<i>--ntlm</i>, and <i>--negotiate</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Note that using
---anyauth is not recommended if you do uploads from stdin,
-since it may require data to be sent twice and then the
-client must be able to rewind. If the need should arise when
-uploading from stdin, the upload operation will fail.</p>
-
-<p style="margin-left:11%;">-b/--cookie
-<name=data></p>
-
-<p style="margin-left:22%;">(HTTP) Pass the data to the
-HTTP server as a cookie. It is supposedly the data
-previously received from the server in a
-"Set-Cookie:" line. The data should be in the
-format "NAME1=VALUE1; NAME2=VALUE2".</p>
-
-<p style="margin-left:22%; margin-top: 1em">If no
-’=’ symbol is used in the line, it is treated as
-a filename to use to read previously stored cookie lines
-from, which should be used in this session if they match.
-Using this method also activates the "cookie
-parser" which will make curl record incoming cookies
-too, which may be handy if you’re using this in
-combination with the <i>-L/--location</i> option. The file
-format of the file to read cookies from should be plain HTTP
-headers or the Netscape/Mozilla cookie file format.</p>
-
-<p style="margin-left:22%; margin-top: 1em"><b>NOTE</b>
-that the file specified with <i>-b/--cookie</i> is only used
-as input. No cookies will be stored in the file. To store
-cookies, use the <i>-c/--cookie-jar</i> option or you could
-even save the HTTP headers to a file using
-<i>-D/--dump-header</i>!</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is set more than once, the last one will be the one
-that’s used.</p>
-
-<p style="margin-left:11%;">-B/--use-ascii</p>
-
-<p style="margin-left:22%;">Enable ASCII transfer when
-using FTP or LDAP. For FTP, this can also be enforced by
-using an URL that ends with ";type=A". This option
-causes data sent to stdout to be in text mode for win32
-systems.</p>
-
-<p style="margin-left:11%;">--basic</p>
-
-<p style="margin-left:22%;">(HTTP) Tells curl to use HTTP
-Basic authentication. This is the default and this option is
-usually pointless, unless you use it to override a
-previously set option that sets a different authentication
-method (such as <i>--ntlm</i>, <i>--digest</i>, or
-<i>--negotiate</i>).</p>
-
-<p style="margin-left:11%;">--ciphers <list of
-ciphers></p>
-
-<p style="margin-left:22%;">(SSL) Specifies which ciphers
-to use in the connection. The list of ciphers must specify
-valid ciphers. Read up on SSL cipher list details on this
-URL:
-<i>http://www.openssl.org/docs/apps/ciphers.html</i></p>
-
-<p style="margin-left:22%; margin-top: 1em">NSS ciphers are
-done differently than OpenSSL and GnuTLS. The full list of
-NSS ciphers is in the NSSCipherSuite entry at this URL:
-<i>http://directory.fedora.redhat.com/docs/mod_nss.html#Directives</i></p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will override the
-others.</p>
-
-<p style="margin-left:11%;">--compressed</p>
-
-<p style="margin-left:22%;">(HTTP) Request a compressed
-response using one of the algorithms libcurl supports, and
-return the uncompressed document. If this option is used and
-the server sends an unsupported encoding, curl will report
-an error.</p>
-
-<p style="margin-left:11%;">--connect-timeout
-<seconds></p>
-
-<p style="margin-left:22%;">Maximum time in seconds that
-you allow the connection to the server to take. This only
-limits the connection phase, once curl has connected this
-option is of no more use. See also the <i>-m/--max-time</i>
-option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-c/--cookie-jar <file
-name></p>
-
-<p style="margin-left:22%;">Specify to which file you want
-curl to write all cookies after a completed operation. Curl
-writes all cookies previously read from a specified file as
-well as all cookies received from remote server(s). If no
-cookies are known, no file will be written. The file will be
-written using the Netscape cookie file format. If you set
-the file name to a single dash, "-", the cookies
-will be written to stdout.</p>
-
-<p style="margin-left:22%; margin-top: 1em"><b>NOTE</b> If
-the cookie jar can’t be created or written to, the
-whole curl operation won’t fail or even report an
-error clearly. Using -v will get a warning displayed, but
-that is the only visible feedback you get about this
-possibly lethal situation.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last specified file name will be
-used.</p>
-
-<p style="margin-left:11%;">-C/--continue-at
-<offset></p>
-
-<p style="margin-left:22%;">Continue/Resume a previous file
-transfer at the given offset. The given offset is the exact
-number of bytes that will be skipped, counting from the
-beginning of the source file before it is transferred to the
-destination. If used with uploads, the FTP server command
-SIZE will not be used by curl.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Use "-C
--" to tell curl to automatically find out where/how to
-resume the transfer. It then uses the given output/input
-files to figure that out.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--create-dirs</p>
-
-<p style="margin-left:22%;">When used in conjunction with
-the -o option, curl will create the necessary local
-directory hierarchy as needed. This option creates the dirs
-mentioned with the -o option, nothing else. If the -o file
-name uses no dir or if the dirs it mentions already exist,
-no dir will be created.</p>
-
-<p style="margin-left:22%; margin-top: 1em">To create
-remote directories when using FTP or SFTP, try
-<i>--ftp-create-dirs</i>.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="9%">
-
-
-<p>--crlf</p></td>
-<td width="2%"></td>
-<td width="78%">
-
-
-<p>(FTP) Convert LF to CRLF in upload. Useful for MVS
-(OS/390).</p> </td></tr>
-</table>
-
-<p style="margin-left:11%;">--crlfile <file></p>
-
-<p style="margin-left:22%;">(HTTPS/FTPS) Provide a file
-using PEM format with a Certificate Revocation List that may
-specify peer certificates that are to be considered
-revoked.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:22%; margin-top: 1em">(Added in
-7.19.7)</p>
-
-<p style="margin-left:11%;">-d/--data <data></p>
-
-<p style="margin-left:22%;">(HTTP) Sends the specified data
-in a POST request to the HTTP server, in the same way that a
-browser does when a user has filled in an HTML form and
-presses the submit button. This will cause curl to pass the
-data to the server using the content-type
-application/x-www-form-urlencoded. Compare to
-<i>-F/--form</i>.</p>
-
-
-<p style="margin-left:22%; margin-top: 1em"><i>-d/--data</i>
-is the same as <i>--data-ascii</i>. To post data purely
-binary, you should instead use the <i>--data-binary</i>
-option. To URL-encode the value of a form field you may use
-<i>--data-urlencode</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If any of these
-options is used more than once on the same command line, the
-data pieces specified will be merged together with a
-separating &-symbol. Thus, using ’-d name=daniel
--d skill=lousy’ would generate a post chunk that looks
-like ’name=daniel&skill=lousy’.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you start
-the data with the letter @, the rest should be a file name
-to read the data from, or - if you want curl to read the
-data from stdin. The contents of the file must already be
-URL-encoded. Multiple files can also be specified. Posting
-data from a file named ’foobar’ would thus be
-done with <i>--data @foobar</i>.</p>
-
-<p style="margin-left:11%;">--data-binary <data></p>
-
-<p style="margin-left:22%;">(HTTP) This posts data exactly
-as specified with no extra processing whatsoever.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you start
-the data with the letter @, the rest should be a filename.
-Data is posted in a similar manner as <i>--data-ascii</i>
-does, except that newlines are preserved and conversions are
-never done.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the ones following the first will
-append data as described in <i>-d/--data</i>.</p>
-
-<p style="margin-left:11%;">--data-urlencode
-<data></p>
-
-<p style="margin-left:22%;">(HTTP) This posts data, similar
-to the other --data options with the exception that this
-performs URL-encoding. (Added in 7.18.0)</p>
-
-<p style="margin-left:22%; margin-top: 1em">To be
-CGI-compliant, the <data> part should begin with a
-<i>name</i> followed by a separator and a content
-specification. The <data> part can be passed to curl
-using one of the following syntaxes: <br>
-content</p>
-
-<p style="margin-left:32%;">This will make curl URL-encode
-the content and pass that on. Just be careful so that the
-content doesn’t contain any = or @ symbols, as that
-will then make the syntax match one of the other cases
-below!</p>
-
-<p style="margin-left:22%;">=content</p>
-
-<p style="margin-left:32%;">This will make curl URL-encode
-the content and pass that on. The preceding = symbol is not
-included in the data.</p>
-
-<p style="margin-left:22%;">name=content</p>
-
-<p style="margin-left:32%;">This will make curl URL-encode
-the content part and pass that on. Note that the name part
-is expected to be URL-encoded already.</p>
-
-<p style="margin-left:22%;">@filename</p>
-
-<p style="margin-left:32%;">This will make curl load data
-from the given file (including any newlines), URL-encode
-that data and pass it on in the POST.</p>
-
-<p style="margin-left:22%;">name at filename</p>
-
-<p style="margin-left:32%;">This will make curl load data
-from the given file (including any newlines), URL-encode
-that data and pass it on in the POST. The name part gets an
-equal sign appended, resulting in
-<i>name=urlencoded-file-content</i>. Note that the name is
-expected to be URL-encoded already.</p>
-
-<p style="margin-left:11%;">--digest</p>
-
-<p style="margin-left:22%;">(HTTP) Enables HTTP Digest
-authentication. This is a authentication that prevents the
-password from being sent over the wire in clear text. Use
-this in combination with the normal <i>-u/--user</i> option
-to set user name and password. See also <i>--ntlm</i>,
-<i>--negotiate</i> and <i>--anyauth</i> for related
-options.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the following occurrences make no
-difference.</p>
-
-<p style="margin-left:11%;">--disable-eprt</p>
-
-<p style="margin-left:22%;">(FTP) Tell curl to disable the
-use of the EPRT and LPRT commands when doing active FTP
-transfers. Curl will normally always first attempt to use
-EPRT, then LPRT before using PORT, but with this option, it
-will use PORT right away. EPRT and LPRT are extensions to
-the original FTP protocol, and may not work on all servers,
-but they enable more functionality in a better way than the
-traditional PORT command.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Since curl
-7.19.0, <b>--eprt</b> can be used to explicitly enable EPRT
-again and <b>--no-eprt</b> is an alias for
-<b>--disable-eprt</b>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Disabling EPRT
-only changes the active behavior. If you want to switch to
-passive mode you need to not use <i>-P/--ftp-port</i> or
-force it with <i>--ftp-pasv</i>.</p>
-
-<p style="margin-left:11%;">--disable-epsv</p>
-
-<p style="margin-left:22%;">(FTP) Tell curl to disable the
-use of the EPSV command when doing passive FTP transfers.
-Curl will normally always first attempt to use EPSV before
-PASV, but with this option, it will not try using EPSV.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Since curl
-7.19.0, <b>--epsv</b> can be used to explicitly enable EPRT
-again and <b>--no-epsv</b> is an alias for
-<b>--disable-epsv</b>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Disabling EPSV
-only changes the passive behavior. If you want to switch to
-active mode you need to use <i>-P/--ftp-port</i>.</p>
-
-<p style="margin-left:11%;">-D/--dump-header
-<file></p>
-
-<p style="margin-left:22%;">Write the protocol headers to
-the specified file.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option is
-handy to use when you want to store the headers that a HTTP
-site sends to you. Cookies from the headers could then be
-read in a second curl invocation by using the
-<i>-b/--cookie</i> option! The <i>-c/--cookie-jar</i> option
-is however a better way to store cookies.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When used in
-FTP, the FTP server response lines are considered being
-"headers" and thus are saved there.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-e/--referer <URL></p>
-
-<p style="margin-left:22%;">(HTTP) Sends the "Referer
-Page" information to the HTTP server. This can also be
-set with the <i>-H/--header</i> flag of course. When used
-with <i>-L/--location</i> you can append ";auto"
-to the --referer URL to make curl automatically set the
-previous URL when it follows a Location: header. The
-";auto" string can be used alone, even if you
-don’t set an initial --referer.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--engine <name></p>
-
-<p style="margin-left:22%;">Select the OpenSSL crypto
-engine to use for cipher operations. Use <i>--engine
-list</i> to print a list of build-time supported engines.
-Note that not all (or none) of the engines may be available
-at run-time.</p>
-
-<p style="margin-left:11%;">--environment</p>
-
-<p style="margin-left:22%;">(RISC OS ONLY) Sets a range of
-environment variables, using the names the -w option
-supports, to allow easier extraction of useful information
-after having run curl.</p>
-
-<p style="margin-left:11%;">--egd-file <file></p>
-
-<p style="margin-left:22%;">(SSL) Specify the path name to
-the Entropy Gathering Daemon socket. The socket is used to
-seed the random engine for SSL connections. See also the
-<i>--random-file</i> option.</p>
-
-<p style="margin-left:11%;">-E/--cert
-<certificate[:password]></p>
-
-<p style="margin-left:22%;">(SSL) Tells curl to use the
-specified certificate file when getting a file with HTTPS or
-FTPS. The certificate must be in PEM format. If the optional
-password isn’t specified, it will be queried for on
-the terminal. Note that this option assumes a
-"certificate" file that is the private key and the
-private certificate concatenated! See <i>--cert</i> and
-<i>--key</i> to specify them independently.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If curl is
-built against the NSS SSL library then this option tells
-curl the nickname of the certificate to use within the NSS
-database defined by the environment variable SSL_DIR (or by
-default /etc/pki/nssdb). If the NSS PEM PKCS#11 module
-(libnsspem.so) is available then PEM files may be
-loaded.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--cert-type <type></p>
-
-<p style="margin-left:22%;">(SSL) Tells curl what
-certificate type the provided certificate is in. PEM, DER
-and ENG are recognized types. If not specified, PEM is
-assumed.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--cacert <CA
-certificate></p>
-
-<p style="margin-left:22%;">(SSL) Tells curl to use the
-specified certificate file to verify the peer. The file may
-contain multiple CA certificates. The certificate(s) must be
-in PEM format. Normally curl is built to use a default file
-for this, so this option is typically used to alter that
-default file.</p>
-
-<p style="margin-left:22%; margin-top: 1em">curl recognizes
-the environment variable named ’CURL_CA_BUNDLE’
-if it is set, and uses the given path as a path to a CA cert
-bundle. This option overrides that variable.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The windows
-version of curl will automatically look for a CA certs file
-named ´curl-ca-bundle.crt´, either in the same
-directory as curl.exe, or in the Current Working Directory,
-or in any folder along your PATH.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If curl is
-built against the NSS SSL library then this option tells
-curl the nickname of the CA certificate to use within the
-NSS database defined by the environment variable SSL_DIR (or
-by default /etc/pki/nssdb). If the NSS PEM PKCS#11 module
-(libnsspem.so) is available then PEM files may be
-loaded.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--capath <CA certificate
-directory></p>
-
-<p style="margin-left:22%;">(SSL) Tells curl to use the
-specified certificate directory to verify the peer. The
-certificates must be in PEM format, and the directory must
-have been processed using the c_rehash utility supplied with
-openssl. Using <i>--capath</i> can allow curl to make
-SSL-connections much more efficiently than using
-<i>--cacert</i> if the <i>--cacert</i> file contains many CA
-certificates.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-f/--fail</p>
-
-<p style="margin-left:22%;">(HTTP) Fail silently (no output
-at all) on server errors. This is mostly done to better
-enable scripts etc to better deal with failed attempts. In
-normal cases when a HTTP server fails to deliver a document,
-it returns an HTML document stating so (which often also
-describes why and more). This flag will prevent curl from
-outputting that and return error 22.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This method is
-not fail-safe and there are occasions where non-successful
-response codes will slip through, especially when
-authentication is involved (response codes 401 and 407).</p>
-
-<p style="margin-left:11%;">--ftp-account [data]</p>
-
-<p style="margin-left:22%;">(FTP) When an FTP server asks
-for "account data" after user name and password
-has been provided, this data is sent off using the ACCT
-command. (Added in 7.13.0)</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used twice, the second will override the previous
-use.</p>
-
-<p style="margin-left:11%;">--ftp-create-dirs</p>
-
-<p style="margin-left:22%;">(FTP/SFTP) When an FTP or SFTP
-URL/operation uses a path that doesn’t currently exist
-on the server, the standard behavior of curl is to fail.
-Using this option, curl will instead attempt to create
-missing directories.</p>
-
-<p style="margin-left:11%;">--ftp-method [method]</p>
-
-<p style="margin-left:22%;">(FTP) Control what method curl
-should use to reach a file on a FTP(S) server. The method
-argument should be one of the following alternatives: <br>
-multicwd</p>
-
-<p style="margin-left:32%;">curl does a single CWD
-operation for each path part in the given URL. For deep
-hierarchies this means very many commands. This is how
-RFC1738 says it should be done. This is the default but the
-slowest behavior.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="7%">
-
-
-<p>nocwd</p></td>
-<td width="3%"></td>
-<td width="68%">
-
-
-<p>curl does no CWD at all. curl will do SIZE, RETR, STOR
-etc and give a full path to the server for all these
-commands. This is the fastest behavior.</p></td></tr>
-</table>
-
-<p style="margin-left:22%;">singlecwd</p>
-
-<p style="margin-left:32%;">curl does one CWD with the full
-target directory and then operates on the file
-"normally" (like in the multicwd case). This is
-somewhat more standards compliant than ’nocwd’
-but without the full penalty of ’multicwd’.</p>
-
-<p style="margin-left:11%;">(Added in 7.15.1) <br>
---ftp-pasv</p>
-
-<p style="margin-left:22%;">(FTP) Use passive mode for the
-data conection. Passive is the internal default behavior,
-but using this option can be used to override a previous
-<i>-P/-ftp-port</i> option. (Added in 7.11.0)</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the following occurrences make no
-difference. Undoing an enforced passive really isn’t
-doable but you must then instead enforce the correct
-<i>-P/--ftp-port</i> again.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Passive mode
-means that curl will try the EPSV command first and then
-PASV, unless <i>--disable-epsv</i> is used.</p>
-
-<p style="margin-left:11%;">--ftp-alternative-to-user
-<command></p>
-
-<p style="margin-left:22%;">(FTP) If authenticating with
-the USER and PASS commands fails, send this command. When
-connecting to Tumbleweed’s Secure Transport server
-over FTPS using a client certificate, using "SITE
-AUTH" will tell the server to retrieve the username
-from the certificate. (Added in 7.15.5)</p>
-
-<p style="margin-left:11%;">--ftp-skip-pasv-ip</p>
-
-<p style="margin-left:22%;">(FTP) Tell curl to not use the
-IP address the server suggests in its response to
-curl’s PASV command when curl connects the data
-connection. Instead curl will re-use the same IP address it
-already uses for the control connection. (Added in
-7.14.2)</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option has
-no effect if PORT, EPRT or EPSV is used instead of PASV.</p>
-
-<p style="margin-left:11%;">--ftp-pret</p>
-
-<p style="margin-left:22%;">(FTP) Tell curl to send a PRET
-command before PASV (and EPSV). Certain FTP servers, mainly
-drftpd, require this non-standard command for directory
-listings as well as up and downloads in PASV mode. (Added in
-7.20.x)</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="7%">
-
-
-<p>--ssl</p></td>
-<td width="4%"></td>
-<td width="78%">
-
-
-<p>(FTP, POP3, IMAP, SMTP) Try to use SSL/TLS for the
-connection. Reverts to a non-secure connection if the server
-doesn’t support SSL/TLS. See also
-<i>--ftp-ssl-control</i> and <i>--ssl-reqd</i> for different
-levels of encryption required. (Added in 7.20.0)</p></td></tr>
-</table>
-
-<p style="margin-left:22%; margin-top: 1em">This option was
-formerly known as <i>--ftp-ssl</i> (Added in 7.11.0) and
-that can still be used but will be removed in a future
-version.</p>
-
-<p style="margin-left:11%;">--ftp-ssl-control</p>
-
-<p style="margin-left:22%;">(FTP) Require SSL/TLS for the
-FTP login, clear for transfer. Allows secure authentication,
-but non-encrypted data transfers for efficiency. Fails the
-transfer if the server doesn’t support SSL/TLS. (Added
-in 7.16.0)</p>
-
-<p style="margin-left:11%;">--ssl-reqd</p>
-
-<p style="margin-left:22%;">(FTP, POP3, IMAP, SMTP) Require
-SSL/TLS for the connection. Terminates the connection if the
-server doesn’t support SSL/TLS. (Added in 7.20.0)</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option was
-formerly known as <i>--ftp-ssl-reqd</i> (added in 7.15.5)
-and that can still be used but will be removed in a future
-version.</p>
-
-<p style="margin-left:11%;">--ftp-ssl-ccc</p>
-
-<p style="margin-left:22%;">(FTP) Use CCC (Clear Command
-Channel) Shuts down the SSL/TLS layer after authenticating.
-The rest of the control channel communication will be
-unencrypted. This allows NAT routers to follow the FTP
-transaction. The default mode is passive. See
---ftp-ssl-ccc-mode for other modes. (Added in 7.16.1)</p>
-
-<p style="margin-left:11%;">--ftp-ssl-ccc-mode
-[active/passive]</p>
-
-<p style="margin-left:22%;">(FTP) Use CCC (Clear Command
-Channel) Sets the CCC mode. The passive mode will not
-initiate the shutdown, but instead wait for the server to do
-it, and will not reply to the shutdown from the server. The
-active mode initiates the shutdown and waits for a reply
-from the server. (Added in 7.16.2)</p>
-
-<p style="margin-left:11%;">-F/--form
-<name=content></p>
-
-<p style="margin-left:22%;">(HTTP) This lets curl emulate a
-filled-in form in which a user has pressed the submit
-button. This causes curl to POST data using the Content-Type
-multipart/form-data according to RFC2388. This enables
-uploading of binary files etc. To force the
-’content’ part to be a file, prefix the file
-name with an @ sign. To just get the content part from a
-file, prefix the file name with the symbol <. The
-difference between @ and < is then that @ makes a file
-get attached in the post as a file upload, while the <
-makes a text field and just get the contents for that text
-field from a file.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Example, to
-send your password file to the server, where
-’password’ is the name of the form-field to
-which /etc/passwd will be the input:</p>
-
-<p style="margin-left:22%; margin-top: 1em"><b>curl</b> -F
-password=@/etc/passwd www.mypasswords.com</p>
-
-<p style="margin-left:22%; margin-top: 1em">To read the
-file’s content from stdin instead of a file, use -
-where the file name should’ve been. This goes for both
-@ and < constructs.</p>
-
-<p style="margin-left:22%; margin-top: 1em">You can also
-tell curl what Content-Type to use by using
-’type=’, in a manner similar to:</p>
-
-<p style="margin-left:22%; margin-top: 1em"><b>curl</b> -F
-"web=@index.html;type=text/html" url.com</p>
-
-<p style="margin-left:22%; margin-top: 1em">or</p>
-
-<p style="margin-left:22%; margin-top: 1em"><b>curl</b> -F
-"name=daniel;type=text/foo" url.com</p>
-
-<p style="margin-left:22%; margin-top: 1em">You can also
-explicitly change the name field of an file upload part by
-setting filename=, like this:</p>
-
-<p style="margin-left:22%; margin-top: 1em"><b>curl</b> -F
-"file=@localfile;filename=nameinpost" url.com</p>
-
-<p style="margin-left:22%; margin-top: 1em">See further
-examples and details in the MANUAL.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option can
-be used multiple times.</p>
-
-<p style="margin-left:11%;">--form-string
-<name=string></p>
-
-<p style="margin-left:22%;">(HTTP) Similar to <i>--form</i>
-except that the value string for the named parameter is used
-literally. Leading ’@’ and ’<’
-characters, and the ’;type=’ string in the value
-have no special meaning. Use this in preference to
-<i>--form</i> if there’s any possibility that the
-string value may accidentally trigger the ’@’ or
-’<’ features of <i>--form</i>.</p>
-
-<p style="margin-left:11%;">-g/--globoff</p>
-
-<p style="margin-left:22%;">This option switches off the
-"URL globbing parser". When you set this option,
-you can specify URLs that contain the letters {}[] without
-having them being interpreted by curl itself. Note that
-these letters are not normal legal URL contents but they
-should be encoded according to the URI standard.</p>
-
-<p style="margin-left:11%;">-G/--get</p>
-
-<p style="margin-left:22%;">When used, this option will
-make all data specified with <i>-d/--data</i> or
-<i>--data-binary</i> to be used in a HTTP GET request
-instead of the POST request that otherwise would be used.
-The data will be appended to the URL with a ’?’
-separator.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If used in
-combination with -I, the POST data will instead be appended
-to the URL with a HEAD request.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the following occurrences make no
-difference. This is because undoing a GET doesn’t make
-sense, but you should then instead enforce the alternative
-method you prefer.</p>
-
-<p style="margin-left:11%;">-h/--help</p>
-
-<p style="margin-left:22%;">Usage help.</p>
-
-<p style="margin-left:11%;">-H/--header <header></p>
-
-<p style="margin-left:22%;">(HTTP) Extra header to use when
-getting a web page. You may specify any number of extra
-headers. Note that if you should add a custom header that
-has the same name as one of the internal ones curl would
-use, your externally set header will be used instead of the
-internal one. This allows you to make even trickier stuff
-than curl would normally do. You should not replace
-internally set headers without knowing perfectly well what
-you’re doing. Remove an internal header by giving a
-replacement without content on the right side of the colon,
-as in: -H "Host:".</p>
-
-<p style="margin-left:22%; margin-top: 1em">curl will make
-sure that each header you add/replace is sent with the
-proper end-of-line marker, you should thus <b>not</b> add
-that as a part of the header content: do not add newlines or
-carriage returns, they will only mess things up for you.</p>
-
-<p style="margin-left:22%; margin-top: 1em">See also the
-<i>-A/--user-agent</i> and <i>-e/--referer</i> options.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option can
-be used multiple times to add/replace/remove multiple
-headers.</p>
-
-<p style="margin-left:11%;">--hostpubmd5 <md5></p>
-
-<p style="margin-left:22%;">Pass a string containing 32
-hexadecimal digits. The string should be the 128 bit MD5
-checksum of the remote host’s public key, curl will
-refuse the connection with the host unless the md5sums
-match. This option is only for SCP and SFTP transfers.
-(Added in 7.17.1)</p>
-
-<p style="margin-left:11%;">--ignore-content-length</p>
-
-<p style="margin-left:22%;">(HTTP) Ignore the
-Content-Length header. This is particularly useful for
-servers running Apache 1.x, which will report incorrect
-Content-Length for files larger than 2 gigabytes.</p>
-
-<p style="margin-left:11%;">-i/--include</p>
-
-<p style="margin-left:22%;">(HTTP) Include the HTTP-header
-in the output. The HTTP-header includes things like
-server-name, date of the document, HTTP-version and
-more...</p>
-
-<p style="margin-left:11%;">--interface <name></p>
-
-<p style="margin-left:22%;">Perform an operation using a
-specified interface. You can enter interface name, IP
-address or host name. An example could look like:</p>
-
-<p style="margin-left:22%; margin-top: 1em">curl
---interface eth0:1 http://www.netscape.com/</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-I/--head</p>
-
-<p style="margin-left:22%;">(HTTP/FTP/FILE) Fetch the
-HTTP-header only! HTTP-servers feature the command HEAD
-which this uses to get nothing but the header of a document.
-When used on a FTP or FILE file, curl displays the file size
-and last modification time only.</p>
-
-<p style="margin-left:11%;">-j/--junk-session-cookies</p>
-
-<p style="margin-left:22%;">(HTTP) When curl is told to
-read cookies from a given file, this option will make it
-discard all "session cookies". This will basically
-have the same effect as if a new session is started. Typical
-browsers always discard session cookies when they’re
-closed down.</p>
-
-<p style="margin-left:11%;">-J/--remote-header-name</p>
-
-<p style="margin-left:22%;">(HTTP) This option tells the
--O/--remote-name option to use the server-specified
-Content-Disposition filename instead of extracting a
-filename from the URL.</p>
-
-<p style="margin-left:11%;">-k/--insecure</p>
-
-<p style="margin-left:22%;">(SSL) This option explicitly
-allows curl to perform "insecure" SSL connections
-and transfers. All SSL connections are attempted to be made
-secure by using the CA certificate bundle installed by
-default. This makes all connections considered
-"insecure" fail unless <i>-k/--insecure</i> is
-used.</p>
-
-<p style="margin-left:22%; margin-top: 1em">See this online
-resource for further details:
-<b>http://curl.haxx.se/docs/sslcerts.html</b></p>
-
-<p style="margin-left:11%;">--keepalive-time
-<seconds></p>
-
-<p style="margin-left:22%;">This option sets the time a
-connection needs to remain idle before sending keepalive
-probes and the time between individual keepalive probes. It
-is currently effective on operating systems offering the
-TCP_KEEPIDLE and TCP_KEEPINTVL socket options (meaning
-Linux, recent AIX, HP-UX and more). This option has no
-effect if <i>--no-keepalive</i> is used. (Added in
-7.18.0)</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used multiple times, the last occurrence sets the
-amount.</p>
-
-<p style="margin-left:11%;">--key <key></p>
-
-<p style="margin-left:22%;">(SSL/SSH) Private key file
-name. Allows you to provide your private key in this
-separate file.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--key-type <type></p>
-
-<p style="margin-left:22%;">(SSL) Private key file type.
-Specify which type your <i>--key</i> provided private key
-is. DER, PEM, and ENG are supported. If not specified, PEM
-is assumed.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--krb <level></p>
-
-<p style="margin-left:22%;">(FTP) Enable Kerberos
-authentication and use. The level must be entered and should
-be one of ’clear’, ’safe’,
-’confidential’, or ’private’. Should
-you use a level that is not one of these,
-’private’ will instead be used.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-requires a library built with kerberos4 or GSSAPI
-(GSS-Negotiate) support. This is not very common. Use
-<i>-V/--version</i> to see if your curl supports it.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-K/--config <config
-file></p>
-
-<p style="margin-left:22%;">Specify which config file to
-read curl arguments from. The config file is a text file in
-which command line arguments can be written which then will
-be used as if they were written on the actual command line.
-Options and their parameters must be specified on the same
-config file line, separated by whitespace, colon, the equals
-sign or any combination thereof (however, the preferred
-separator is the equals sign). If the parameter is to
-contain whitespace, the parameter must be enclosed within
-quotes. Within double quotes, the following escape sequences
-are available: \\, \", \t, \n, \r and \v. A backslash
-preceding any other letter is ignored. If the first column
-of a config line is a ’#’ character, the rest of
-the line will be treated as a comment. Only write one option
-per physical line in the config file.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Specify the
-filename to -K/--config as ’-’ to make curl read
-the file from stdin.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Note that to be
-able to specify a URL in the config file, you need to
-specify it using the <i>--url</i> option, and not by simply
-writing the URL on its own line. So, it could look similar
-to this:</p>
-
-<p style="margin-left:22%; margin-top: 1em">url =
-"http://curl.haxx.se/docs/"</p>
-
-<p style="margin-left:22%; margin-top: 1em">Long option
-names can optionally be given in the config file without the
-initial double dashes.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When curl is
-invoked, it always (unless <i>-q</i> is used) checks for a
-default config file and uses it if found. The default config
-file is checked for in the following places in this
-order:</p>
-
-<p style="margin-left:22%; margin-top: 1em">1) curl tries
-to find the "home dir": It first checks for the
-CURL_HOME and then the HOME environment variables. Failing
-that, it uses getpwuid() on UNIX-like systems (which returns
-the home dir given the current user in your system). On
-Windows, it then checks for the APPDATA variable, or as a
-last resort the ’%USERPROFILE%\Application
-Data’.</p>
-
-<p style="margin-left:22%; margin-top: 1em">2) On windows,
-if there is no _curlrc file in the home dir, it checks for
-one in the same dir the curl executable is placed. On
-UNIX-like systems, it will simply try to load .curlrc from
-the determined home dir.</p>
-
-<p style="margin-left:22%; margin-top: 1em"># --- Example
-file --- <br>
-# this is a comment <br>
-url = "curl.haxx.se" <br>
-output = "curlhere.html" <br>
-user-agent = "superagent/1.0"</p>
-
-<p style="margin-left:22%; margin-top: 1em"># and fetch
-another URL too <br>
-url = "curl.haxx.se/docs/manpage.html" <br>
--O <br>
-referer = "http://nowhereatall.com/" <br>
-# --- End of example file ---</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option can
-be used multiple times to load multiple config files.</p>
-
-<p style="margin-left:11%;">--libcurl <file></p>
-
-<p style="margin-left:22%;">Append this option to any
-ordinary curl command line, and you will get a libcurl-using
-source code written to the file that does the equivalent of
-what your command-line operation does!</p>
-
-<p style="margin-left:22%; margin-top: 1em">NOTE: this does
-not properly support -F and the sending of multipart
-formposts, so in those cases the output program will be
-missing necessary calls to <i>curl_formadd(3)</i>, and
-possibly more.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last given file name will be
-used. (Added in 7.16.1)</p>
-
-<p style="margin-left:11%;">--limit-rate <speed></p>
-
-<p style="margin-left:22%;">Specify the maximum transfer
-rate you want curl to use. This feature is useful if you
-have a limited pipe and you’d like your transfer not
-to use your entire bandwidth.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The given speed
-is measured in bytes/second, unless a suffix is appended.
-Appending ’k’ or ’K’ will count the
-number as kilobytes, ’m’ or M’ makes it
-megabytes, while ’g’ or ’G’ makes it
-gigabytes. Examples: 200K, 3m and 1G.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The given rate
-is the average speed counted during the entire transfer. It
-means that curl might use higher transfer speeds in short
-bursts, but over time it uses no more than the given
-rate.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you also use
-the <i>-Y/--speed-limit</i> option, that option will take
-precedence and might cripple the rate-limiting slightly, to
-help keeping the speed-limit logic working.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-l/--list-only</p>
-
-<p style="margin-left:22%;">(FTP) When listing an FTP
-directory, this switch forces a name-only view. Especially
-useful if you want to machine-parse the contents of an FTP
-directory since the normal directory view doesn’t use
-a standard look or format.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-causes an FTP NLST command to be sent. Some FTP servers list
-only files in their response to NLST; they do not include
-subdirectories and symbolic links.</p>
-
-<p style="margin-left:11%;">--local-port
-<num>[-num]</p>
-
-<p style="margin-left:22%;">Set a preferred number or range
-of local port numbers to use for the connection(s). Note
-that port numbers by nature are a scarce resource that will
-be busy at times so setting this range to something too
-narrow might cause unnecessary connection setup failures.
-(Added in 7.15.2)</p>
-
-<p style="margin-left:11%;">-L/--location</p>
-
-<p style="margin-left:22%;">(HTTP/HTTPS) If the server
-reports that the requested page has moved to a different
-location (indicated with a Location: header and a 3XX
-response code), this option will make curl redo the request
-on the new place. If used together with <i>-i/--include</i>
-or <i>-I/--head</i>, headers from all requested pages will
-be shown. When authentication is used, curl only sends its
-credentials to the initial host. If a redirect takes curl to
-a different host, it won’t be able to intercept the
-user+password. See also <i>--location-trusted</i> on how to
-change this. You can limit the amount of redirects to follow
-by using the <i>--max-redirs</i> option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When curl
-follows a redirect and the request is not a plain GET (for
-example POST or PUT), it will do the following request with
-a GET if the HTTP response was 301, 302, or 303. If the
-response code was any other 3xx code, curl will re-send the
-following request using the same unmodified method.</p>
-
-<p style="margin-left:11%;">--location-trusted</p>
-
-<p style="margin-left:22%;">(HTTP/HTTPS) Like
-<i>-L/--location</i>, but will allow sending the name +
-password to all hosts that the site may redirect to. This
-may or may not introduce a security breach if the site
-redirects you to a site to which you’ll send your
-authentication info (which is plaintext in the case of HTTP
-Basic authentication).</p>
-
-<p style="margin-left:11%;">--mail-rcpt <address></p>
-
-<p style="margin-left:22%;">(SMTP) Specify a single address
-that the given mail should get sent to. This option can be
-used multiple times to specify many recipients.</p>
-
-<p style="margin-left:22%; margin-top: 1em">(Added in
-7.20.0)</p>
-
-<p style="margin-left:11%;">--mail-from <address></p>
-
-<p style="margin-left:22%;">(SMTP) Specify a single address
-that the given mail should get sent from.</p>
-
-<p style="margin-left:22%; margin-top: 1em">(Added in
-7.20.0)</p>
-
-<p style="margin-left:11%;">--max-filesize
-<bytes></p>
-
-<p style="margin-left:22%;">Specify the maximum size (in
-bytes) of a file to download. If the file requested is
-larger than this value, the transfer will not start and curl
-will return with exit code 63.</p>
-
-<p style="margin-left:22%; margin-top: 1em"><b>NOTE:</b>
-The file size is not always known prior to download, and for
-such files this option has no effect even if the file
-transfer ends up being larger than this given limit. This
-concerns both FTP and HTTP transfers.</p>
-
-<p style="margin-left:11%;">-m/--max-time
-<seconds></p>
-
-<p style="margin-left:22%;">Maximum time in seconds that
-you allow the whole operation to take. This is useful for
-preventing your batch jobs from hanging for hours due to
-slow networks or links going down. See also the
-<i>--connect-timeout</i> option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-M/--manual</p>
-
-<p style="margin-left:22%;">Manual. Display the huge help
-text.</p>
-
-<p style="margin-left:11%;">-n/--netrc</p>
-
-<p style="margin-left:22%;">Makes curl scan the
-<i>.netrc</i> (<i>_netrc</i> on Windows) file in the
-user’s home directory for login name and password.
-This is typically used for FTP on UNIX. If used with HTTP,
-curl will enable user authentication. See <b>netrc(4)</b> or
-<b>ftp(1)</b> for details on the file format. Curl will not
-complain if that file doesn’t have the right
-permissions (it should not be either world- or
-group-readable). The environment variable "HOME"
-is used to find the home directory.</p>
-
-<p style="margin-left:22%; margin-top: 1em">A quick and
-very simple example of how to setup a <i>.netrc</i> to allow
-curl to FTP to the machine host.domain.com with user name
-’myself’ and password ’secret’
-should look similar to:</p>
-
-<p style="margin-left:22%; margin-top: 1em"><b>machine
-host.domain.com login myself password secret</b></p>
-
-<p style="margin-left:11%;">--netrc-optional</p>
-
-<p style="margin-left:22%;">Very similar to <i>--netrc</i>,
-but this option makes the .netrc usage <b>optional</b> and
-not mandatory as the <i>--netrc</i> option does.</p>
-
-<p style="margin-left:11%;">--negotiate</p>
-
-<p style="margin-left:22%;">(HTTP) Enables GSS-Negotiate
-authentication. The GSS-Negotiate method was designed by
-Microsoft and is used in their web applications. It is
-primarily meant as a support for Kerberos5 authentication
-but may be also used along with another authentication
-method. For more information see IETF draft
-draft-brezak-spnego-http-04.txt.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you want to
-enable Negotiate for your proxy authentication, then use
-<i>--proxy-negotiate</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-requires a library built with GSSAPI support. This is not
-very common. Use <i>-V/--version</i> to see if your version
-supports GSS-Negotiate.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When using this
-option, you must also provide a fake -u/--user option to
-activate the authentication code properly. Sending a
-’-u :’ is enough as the user name and password
-from the -u option aren’t actually used.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the following occurrences make no
-difference.</p>
-
-<p style="margin-left:11%;">-N/--no-buffer</p>
-
-<p style="margin-left:22%;">Disables the buffering of the
-output stream. In normal work situations, curl will use a
-standard buffered output stream that will have the effect
-that it will output the data in chunks, not necessarily
-exactly when the data arrives. Using this option will
-disable that buffering.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Note that this
-is the negated option name documented. You can thus use
-<i>--buffer</i> to enforce the buffering.</p>
-
-<p style="margin-left:11%;">--no-keepalive</p>
-
-<p style="margin-left:22%;">Disables the use of keepalive
-messages on the TCP connection, as by default curl enables
-them.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Note that this
-is the negated option name documented. You can thus use
-<i>--keepalive</i> to enforce keepalive.</p>
-
-<p style="margin-left:11%;">--no-sessionid</p>
-
-<p style="margin-left:22%;">(SSL) Disable curl’s use
-of SSL session-ID caching. By default all transfers are done
-using the cache. Note that while nothing should ever get
-hurt by attempting to reuse SSL session-IDs, there seem to
-be broken SSL implementations in the wild that may require
-you to disable this in order for you to succeed. (Added in
-7.16.0)</p>
-
-<p style="margin-left:22%; margin-top: 1em">Note that this
-is the negated option name documented. You can thus use
-<i>--sessionid</i> to enforce session-ID caching.</p>
-
-<p style="margin-left:11%;">--noproxy
-<no-proxy-list></p>
-
-<p style="margin-left:22%;">Comma-separated list of hosts
-which do not use a proxy, if one is specified. The only
-wildcard is a single * character, which matches all hosts,
-and effectively disables the proxy. Each name in this list
-is matched as either a domain which contains the hostname,
-or the hostname itself. For example, local.com would match
-local.com, local.com:80, and www.local.com, but not
-www.notlocal.com. (Added in 7.19.4).</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="9%">
-
-
-<p>--ntlm</p></td>
-<td width="2%"></td>
-<td width="78%">
-
-
-<p>(HTTP) Enables NTLM authentication. The NTLM
-authentication method was designed by Microsoft and is used
-by IIS web servers. It is a proprietary protocol,
-reverse-engineered by clever people and implemented in curl
-based on their efforts. This kind of behavior should not be
-endorsed, you should encourage everyone who uses NTLM to
-switch to a public and documented authentication method
-instead, such as Digest.</p></td></tr>
-</table>
-
-<p style="margin-left:22%; margin-top: 1em">If you want to
-enable NTLM for your proxy authentication, then use
-<i>--proxy-ntlm</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-requires a library built with SSL support. Use
-<i>-V/--version</i> to see if your curl supports NTLM.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the following occurrences make no
-difference.</p>
-
-<p style="margin-left:11%;">-o/--output <file></p>
-
-<p style="margin-left:22%;">Write output to <file>
-instead of stdout. If you are using {} or [] to fetch
-multiple documents, you can use ’#’ followed by
-a number in the <file> specifier. That variable will
-be replaced with the current string for the URL being
-fetched. Like in:</p>
-
-<p style="margin-left:22%; margin-top: 1em">curl
-http://{one,two}.site.com -o "file_#1.txt"</p>
-
-<p style="margin-left:22%; margin-top: 1em">or use several
-variables like:</p>
-
-<p style="margin-left:22%; margin-top: 1em">curl
-http://{site,host}.host[1-5].com -o "#1_#2"</p>
-
-<p style="margin-left:22%; margin-top: 1em">You may use
-this option as many times as the number of URLs you
-have.</p>
-
-<p style="margin-left:22%; margin-top: 1em">See also the
-<i>--create-dirs</i> option to create the local directories
-dynamically. Specifying the output as ’-’ (a
-single dash) will force the output to be done to stdout.</p>
-
-<p style="margin-left:11%;">-O/--remote-name</p>
-
-<p style="margin-left:22%;">Write output to a local file
-named like the remote file we get. (Only the file part of
-the remote file is used, the path is cut off.)</p>
-
-<p style="margin-left:22%; margin-top: 1em">The remote file
-name to use for saving is extracted from the given URL,
-nothing else.</p>
-
-<p style="margin-left:22%; margin-top: 1em">You may use
-this option as many times as the number of URLs you
-have.</p>
-
-<p style="margin-left:11%;">--remote-name-all</p>
-
-<p style="margin-left:22%;">This option changes the default
-action for all given URLs to be dealt with as if
-<i>-O/--remote-name</i> were used for each one. So if you
-want to disable that for a specific URL after
-<i>--remote-name-all</i> has been used, you must use
-"-o -" or <i>--no-remote-name</i>. (Added in
-7.19.0)</p>
-
-<p style="margin-left:11%;">--pass <phrase></p>
-
-<p style="margin-left:22%;">(SSL/SSH) Passphrase for the
-private key</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--post301</p>
-
-<p style="margin-left:22%;">Tells curl to respect RFC
-2616/10.3.2 and not convert POST requests into GET requests
-when following a 301 redirection. The non-RFC behaviour is
-ubiquitous in web browsers, so curl does the conversion by
-default to maintain consistency. However, a server may
-require a POST to remain a POST after such a redirection.
-This option is meaningful only when using
-<i>-L/--location</i> (Added in 7.17.1)</p>
-
-<p style="margin-left:11%;">--post302</p>
-
-<p style="margin-left:22%;">Tells curl to respect RFC
-2616/10.3.2 and not convert POST requests into GET requests
-when following a 302 redirection. The non-RFC behaviour is
-ubiquitous in web browsers, so curl does the conversion by
-default to maintain consistency. However, a server may
-require a POST to remain a POST after such a redirection.
-This option is meaningful only when using
-<i>-L/--location</i> (Added in 7.19.1)</p>
-
-<p style="margin-left:11%;">--proxy-anyauth</p>
-
-<p style="margin-left:22%;">Tells curl to pick a suitable
-authentication method when communicating with the given
-proxy. This might cause an extra request/response
-round-trip. (Added in 7.13.2)</p>
-
-<p style="margin-left:11%;">--proxy-basic</p>
-
-<p style="margin-left:22%;">Tells curl to use HTTP Basic
-authentication when communicating with the given proxy. Use
-<i>--basic</i> for enabling HTTP Basic with a remote host.
-Basic is the default authentication method curl uses with
-proxies.</p>
-
-<p style="margin-left:11%;">--proxy-digest</p>
-
-<p style="margin-left:22%;">Tells curl to use HTTP Digest
-authentication when communicating with the given proxy. Use
-<i>--digest</i> for enabling HTTP Digest with a remote
-host.</p>
-
-<p style="margin-left:11%;">--proxy-negotiate</p>
-
-<p style="margin-left:22%;">Tells curl to use HTTP
-Negotiate authentication when communicating with the given
-proxy. Use <i>--negotiate</i> for enabling HTTP Negotiate
-with a remote host. (Added in 7.17.1)</p>
-
-<p style="margin-left:11%;">--proxy-ntlm</p>
-
-<p style="margin-left:22%;">Tells curl to use HTTP NTLM
-authentication when communicating with the given proxy. Use
-<i>--ntlm</i> for enabling NTLM with a remote host.</p>
-
-<p style="margin-left:11%;">--proxy1.0
-<proxyhost[:port]></p>
-
-<p style="margin-left:22%;">Use the specified HTTP 1.0
-proxy. If the port number is not specified, it is assumed at
-port 1080.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The only
-difference between this and the HTTP proxy option
-(<i>-x/--proxy</i>), is that attempts to use CONNECT through
-the proxy will specify an HTTP 1.0 protocol instead of the
-default HTTP 1.1.</p>
-
-<p style="margin-left:11%;">-p/--proxytunnel</p>
-
-<p style="margin-left:22%;">When an HTTP proxy is used
-(<i>-x/--proxy</i>), this option will cause non-HTTP
-protocols to attempt to tunnel through the proxy instead of
-merely using it to do HTTP-like operations. The tunnel
-approach is made with the HTTP proxy CONNECT request and
-requires that the proxy allows direct connect to the remote
-port number curl wants to tunnel through to.</p>
-
-<p style="margin-left:11%;">--pubkey <key></p>
-
-<p style="margin-left:22%;">(SSH) Public key file name.
-Allows you to provide your public key in this separate
-file.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-P/--ftp-port
-<address></p>
-
-<p style="margin-left:22%;">(FTP) Reverses the default
-initiator/listener roles when connecting with FTP. This
-switch makes curl use active mode. In practice, curl then
-tells the server to connect back to the client’s
-specified address and port, while passive mode asks the
-server to setup an IP address and port for it to connect to.
-<address> should be one of: <br>
-interface</p>
-
-<p style="margin-left:32%;">i.e "eth0" to specify
-which interface’s IP address you want to use (Unix
-only)</p>
-
-<p style="margin-left:22%;">IP address</p>
-
-<p style="margin-left:32%;">i.e "192.168.10.1" to
-specify the exact IP address</p>
-
-<p style="margin-left:22%;">host name</p>
-
-<p style="margin-left:32%;">i.e "my.host.domain"
-to specify the machine</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="1%">
-
-
-<p>-</p></td>
-<td width="9%"></td>
-<td width="68%">
-
-
-<p>make curl pick the same IP address that is already used
-for the control connection</p></td></tr>
-</table>
-
-<p style="margin-left:11%; margin-top: 1em">If this option
-is used several times, the last one will be used. Disable
-the use of PORT with <i>--ftp-pasv</i>. Disable the attempt
-to use the EPRT command instead of PORT by using
-<i>--disable-eprt</i>. EPRT is really PORT++.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Starting in
-7.19.5, you can append ":[start]-[end]" to the
-right of the address, to tell curl what TCP port range to
-use. That means you specify a port range, from a lower to a
-higher number. A single number works as well, but do note
-that it increases the risk of failure since the port may not
-be available.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p style="margin-top: 1em">-q</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p style="margin-top: 1em">If used as the first parameter
-on the command line, the <i>curlrc</i> config file will not
-be read and used. See the <i>-K/--config</i> for details on
-the default config file search path.</p></td></tr>
-</table>
-
-<p style="margin-left:11%;">-Q/--quote <command></p>
-
-<p style="margin-left:22%;">(FTP/SFTP) Send an arbitrary
-command to the remote FTP or SFTP server. Quote commands are
-sent BEFORE the transfer takes place (just after the initial
-PWD command in an FTP transfer, to be exact). To make
-commands take place after a successful transfer, prefix them
-with a dash ’-’. To make commands be sent after
-libcurl has changed the working directory, just before the
-transfer command(s), prefix the command with a
-’+’ (this is only supported for FTP). You may
-specify any number of commands. If the server returns
-failure for one of the commands, the entire operation will
-be aborted. You must send syntactically correct FTP commands
-as RFC959 defines to FTP servers, or one of the commands
-listed below to SFTP servers. This option can be used
-multiple times.</p>
-
-<p style="margin-left:22%; margin-top: 1em">SFTP is a
-binary protocol. Unlike for FTP, libcurl interprets SFTP
-quote commands before sending them to the server. Following
-is the list of all supported SFTP quote commands: <br>
-chgrp group file</p>
-
-<p style="margin-left:32%;">The chgrp command sets the
-group ID of the file named by the file operand to the group
-ID specified by the group operand. The group operand is a
-decimal integer group ID.</p>
-
-<p style="margin-left:22%;">chmod mode file</p>
-
-<p style="margin-left:32%;">The chmod command modifies the
-file mode bits of the specified file. The mode operand is an
-octal integer mode number.</p>
-
-<p style="margin-left:22%;">chown user file</p>
-
-<p style="margin-left:32%;">The chown command sets the
-owner of the file named by the file operand to the user ID
-specified by the user operand. The user operand is a decimal
-integer user ID.</p>
-
-<p style="margin-left:22%;">ln source_file target_file</p>
-
-<p style="margin-left:32%;">The ln and symlink commands
-create a symbolic link at the target_file location pointing
-to the source_file location.</p>
-
-<p style="margin-left:22%;">mkdir directory_name</p>
-
-<p style="margin-left:32%;">The mkdir command creates the
-directory named by the directory_name operand.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="4%">
-
-
-<p>pwd</p></td>
-<td width="6%"></td>
-<td width="68%">
-
-
-<p>The pwd command returns the absolute pathname of the
-current working directory.</p></td></tr>
-</table>
-
-<p style="margin-left:22%;">rename source target</p>
-
-<p style="margin-left:32%;">The rename command renames the
-file or directory named by the source operand to the
-destination path named by the target operand.</p>
-
-<p style="margin-left:22%;">rm file</p>
-
-<p style="margin-left:32%;">The rm command removes the file
-specified by the file operand.</p>
-
-<p style="margin-left:22%;">rmdir directory</p>
-
-<p style="margin-left:32%;">The rmdir command removes the
-directory entry specified by the directory operand, provided
-it is empty.</p>
-
-<p style="margin-left:22%;">symlink source_file
-target_file</p>
-
-<p style="margin-left:32%;">See ln.</p>
-
-<p style="margin-left:11%;">--random-file <file></p>
-
-<p style="margin-left:22%;">(SSL) Specify the path name to
-file containing what will be considered as random data. The
-data is used to seed the random engine for SSL connections.
-See also the <i>--egd-file</i> option.</p>
-
-<p style="margin-left:11%;">-r/--range <range></p>
-
-<p style="margin-left:22%;">(HTTP/FTP/SFTP/FILE) Retrieve a
-byte range (i.e a partial document) from a HTTP/1.1, FTP or
-SFTP server or a local FILE. Ranges can be specified in a
-number of ways.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="10%">
-
-
-<p><b>0-499</b></p></td>
-<td width="5%"></td>
-<td width="63%">
-
-
-<p>specifies the first 500 bytes</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="10%">
-
-
-<p><b>500-999</b></p></td>
-<td width="5%"></td>
-<td width="63%">
-
-
-<p>specifies the second 500 bytes</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="10%">
-
-
-<p><b>-500</b></p></td>
-<td width="5%"></td>
-<td width="63%">
-
-
-<p>specifies the last 500 bytes</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="10%">
-
-
-<p><b>9500-</b></p></td>
-<td width="5%"></td>
-<td width="63%">
-
-
-<p>specifies the bytes from offset 9500 and forward</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="10%">
-
-
-<p><b>0-0,-1</b></p></td>
-<td width="5%"></td>
-<td width="63%">
-
-
-<p>specifies the first and last byte only(*)(H)</p></td></tr>
-</table>
-
-<p style="margin-left:22%;"><b>500-700,600-799</b></p>
-
-<p style="margin-left:37%;">specifies 300 bytes from offset
-500(H)</p>
-
-<p style="margin-left:22%;"><b>100-199,500-599</b></p>
-
-<p style="margin-left:37%;">specifies two separate 100-byte
-ranges(*)(H)</p>
-
-<p style="margin-left:11%; margin-top: 1em">(*) = NOTE that
-this will cause the server to reply with a multipart
-response!</p>
-
-<p style="margin-left:11%; margin-top: 1em">Only digit
-characters (0-9) are valid in the ’start’ and
-’stop’ fields of the ’start-stop’
-range syntax. If a non-digit character is given in the
-range, the server’s response will be unspecified,
-depending on the server’s configuration.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You should also
-be aware that many HTTP/1.1 servers do not have this feature
-enabled, so that when you attempt to get a range,
-you’ll instead get the whole document.</p>
-
-<p style="margin-left:11%; margin-top: 1em">FTP and SFTP
-range downloads only support the simple
-’start-stop’ syntax (optionally with one of the
-numbers omitted). FTP use depends on the extended FTP
-command SIZE.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="7%">
-
-
-<p>--raw</p></td>
-<td width="4%"></td>
-<td width="78%">
-
-
-<p>When used, it disables all internal HTTP decoding of
-content or transfer encodings and instead makes them passed
-on unaltered, raw. (Added in 7.16.2)</p></td></tr>
-</table>
-
-<p style="margin-left:11%;">-R/--remote-time</p>
-
-<p style="margin-left:22%;">When used, this will make
-libcurl attempt to figure out the timestamp of the remote
-file, and if that is available make the local file get that
-same timestamp.</p>
-
-<p style="margin-left:11%;">--retry <num></p>
-
-<p style="margin-left:22%;">If a transient error is
-returned when curl tries to perform a transfer, it will
-retry this number of times before giving up. Setting the
-number to 0 makes curl do no retries (which is the default).
-Transient error means either: a timeout, an FTP 4xx response
-code or an HTTP 5xx response code.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When curl is
-about to retry a transfer, it will first wait one second and
-then for all forthcoming retries it will double the waiting
-time until it reaches 10 minutes which then will be the
-delay between the rest of the retries. By using
-<i>--retry-delay</i> you disable this exponential backoff
-algorithm. See also <i>--retry-max-time</i> to limit the
-total time allowed for retries. (Added in 7.12.3)</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used multiple times, the last occurrence decide the
-amount.</p>
-
-<p style="margin-left:11%;">--retry-delay
-<seconds></p>
-
-<p style="margin-left:22%;">Make curl sleep this amount of
-time before each retry when a transfer has failed with a
-transient error (it changes the default backoff time
-algorithm between retries). This option is only interesting
-if <i>--retry</i> is also used. Setting this delay to zero
-will make curl use the default backoff time. (Added in
-7.12.3)</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used multiple times, the last occurrence determines the
-amount.</p>
-
-<p style="margin-left:11%;">--retry-max-time
-<seconds></p>
-
-<p style="margin-left:22%;">The retry timer is reset before
-the first transfer attempt. Retries will be done as usual
-(see <i>--retry</i>) as long as the timer hasn’t
-reached this given limit. Notice that if the timer
-hasn’t reached the limit, the request will be made and
-while performing, it may take longer than this given time
-period. To limit a single request´s maximum time, use
-<i>-m/--max-time</i>. Set this option to zero to not timeout
-retries. (Added in 7.12.3)</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used multiple times, the last occurrence determines the
-amount.</p>
-
-<p style="margin-left:11%;">-s/--silent</p>
-
-<p style="margin-left:22%;">Silent or quiet mode.
-Don’t show progress meter or error messages. Makes
-Curl mute.</p>
-
-<p style="margin-left:11%;">-S/--show-error</p>
-
-<p style="margin-left:22%;">When used with -s it makes curl
-show an error message if it fails.</p>
-
-<p style="margin-left:11%;">--socks4
-<host[:port]></p>
-
-<p style="margin-left:22%;">Use the specified SOCKS4 proxy.
-If the port number is not specified, it is assumed at port
-1080. (Added in 7.15.2)</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-overrides any previous use of <i>-x/--proxy</i>, as they are
-mutually exclusive.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--socks4a
-<host[:port]></p>
-
-<p style="margin-left:22%;">Use the specified SOCKS4a
-proxy. If the port number is not specified, it is assumed at
-port 1080. (Added in 7.18.0)</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-overrides any previous use of <i>-x/--proxy</i>, as they are
-mutually exclusive.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--socks5-hostname
-<host[:port]></p>
-
-<p style="margin-left:22%;">Use the specified SOCKS5 proxy
-(and let the proxy resolve the host name). If the port
-number is not specified, it is assumed at port 1080. (Added
-in 7.18.0)</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-overrides any previous use of <i>-x/--proxy</i>, as they are
-mutually exclusive.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used. (This
-option was previously wrongly documented and used as --socks
-without the number appended.)</p>
-
-<p style="margin-left:11%;">--socks5
-<host[:port]></p>
-
-<p style="margin-left:22%;">Use the specified SOCKS5 proxy
-- but resolve the host name locally. If the port number is
-not specified, it is assumed at port 1080.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-overrides any previous use of <i>-x/--proxy</i>, as they are
-mutually exclusive.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used. (This
-option was previously wrongly documented and used as --socks
-without the number appended.)</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option (as
-well as <i>--socks4</i>) does not work with IPV6, FTPS or
-LDAP.</p>
-
-<p style="margin-left:11%;">--socks5-gssapi-service
-<servicename></p>
-
-<p style="margin-left:22%;">The default service name for a
-socks server is rcmd/server-fqdn. This option allows you to
-change it.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Examples: <br>
---socks5 proxy-name <i>--socks5-gssapi-service</i> sockd
-would use sockd/proxy-name <br>
---socks5 proxy-name <i>--socks5-gssapi-service</i>
-sockd/real-name would use sockd/real-name for cases where
-the proxy-name does not match the princpal name. <br>
-(Added in 7.19.4).</p>
-
-<p style="margin-left:11%;">--socks5-gssapi-nec</p>
-
-<p style="margin-left:22%;">As part of the gssapi
-negotiation a protection mode is negotiated. The rfc1961
-says in section 4.3/4.4 it should be protected, but the NEC
-reference implementation does not. The option
-<i>--socks5-gssapi-nec</i> allows the unprotected exchange
-of the protection mode negotiation. (Added in 7.19.4).</p>
-
-<p style="margin-left:11%;">--stderr <file></p>
-
-<p style="margin-left:22%;">Redirect all writes to stderr
-to the specified file instead. If the file name is a plain
-’-’, it is instead written to stdout. This
-option has no point when you’re using a shell with
-decent redirecting capabilities.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--tcp-nodelay</p>
-
-<p style="margin-left:22%;">Turn on the TCP_NODELAY option.
-See the <i>curl_easy_setopt(3)</i> man page for details
-about this option. (Added in 7.11.2)</p>
-
-<p style="margin-left:11%;">-t/--telnet-option
-<OPT=val></p>
-
-<p style="margin-left:22%;">Pass options to the telnet
-protocol. Supported options are:</p>
-
-
-<p style="margin-left:22%; margin-top: 1em">TTYPE=<term>
-Sets the terminal type.</p>
-
-<p style="margin-left:22%; margin-top: 1em">XDISPLOC=<X
-display> Sets the X display location.</p>
-
-
-<p style="margin-left:22%; margin-top: 1em">NEW_ENV=<var,val>
-Sets an environment variable.</p>
-
-<p style="margin-left:11%;">--tftp-blksize
-<value></p>
-
-<p style="margin-left:22%;">(TFTP) Set TFTP BLKSIZE option
-(must be >512). This is the block size that curl will try
-to use when tranferring data to or from a TFTP server. By
-default 512 bytes will be used.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:22%; margin-top: 1em">(Added in
-7.20.0)</p>
-
-<p style="margin-left:11%;">-T/--upload-file
-<file></p>
-
-<p style="margin-left:22%;">This transfers the specified
-local file to the remote URL. If there is no file part in
-the specified URL, Curl will append the local file name.
-NOTE that you must use a trailing / on the last directory to
-really prove to Curl that there is no file name or curl will
-think that your last directory name is the remote file name
-to use. That will most likely cause the upload operation to
-fail. If this is used on a HTTP(S) server, the PUT command
-will be used.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Use the file
-name "-" (a single dash) to use stdin instead of a
-given file. Alternately, the file name "." (a
-single period) may be specified instead of "-" to
-use stdin in non-blocking mode to allow reading server
-output while stdin is being uploaded.</p>
-
-<p style="margin-left:22%; margin-top: 1em">You can specify
-one -T for each URL on the command line. Each -T + URL pair
-specifies what to upload and to where. curl also supports
-"globbing" of the -T argument, meaning that you
-can upload multiple files to a single URL by using the same
-URL globbing style supported in the URL, like this:</p>
-
-<p style="margin-left:22%; margin-top: 1em">curl -T
-"{file1,file2}"
-http://www.uploadtothissite.com</p>
-
-<p style="margin-left:22%; margin-top: 1em">or even</p>
-
-<p style="margin-left:22%; margin-top: 1em">curl -T
-"img[1-1000].png"
-ftp://ftp.picturemania.com/upload/</p>
-
-<p style="margin-left:11%;">--trace <file></p>
-
-<p style="margin-left:22%;">Enables a full trace dump of
-all incoming and outgoing data, including descriptive
-information, to the given output file. Use "-" as
-filename to have the output sent to stdout.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-overrides previous uses of <i>-v/--verbose</i> or
-<i>--trace-ascii</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--trace-ascii <file></p>
-
-<p style="margin-left:22%;">Enables a full trace dump of
-all incoming and outgoing data, including descriptive
-information, to the given output file. Use "-" as
-filename to have the output sent to stdout.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This is very
-similar to <i>--trace</i>, but leaves out the hex part and
-only shows the ASCII part of the dump. It makes smaller
-output that might be easier to read for untrained
-humans.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-overrides previous uses of <i>-v/--verbose</i> or
-<i>--trace</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--trace-time</p>
-
-<p style="margin-left:22%;">Prepends a time stamp to each
-trace or verbose line that curl displays. (Added in
-7.14.0)</p>
-
-<p style="margin-left:11%;">-u/--user
-<user:password></p>
-
-<p style="margin-left:22%;">Specify the user name and
-password to use for server authentication. Overrides
-<i>-n/--netrc</i> and <i>--netrc-optional</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you just
-give the user name (without entering a colon) curl will
-prompt for a password.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you use an
-SSPI-enabled curl binary and do NTLM authentication, you can
-force curl to pick up the user name and password from your
-environment by simply specifying a single colon with this
-option: "-u :".</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-U/--proxy-user
-<user:password></p>
-
-<p style="margin-left:22%;">Specify the user name and
-password to use for proxy authentication.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you use an
-SSPI-enabled curl binary and do NTLM authentication, you can
-force curl to pick up the user name and password from your
-environment by simply specifying a single colon with this
-option: "-U :".</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--url <URL></p>
-
-<p style="margin-left:22%;">Specify a URL to fetch. This
-option is mostly handy when you want to specify URL(s) in a
-config file.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option may
-be used any number of times. To control where this URL is
-written, use the <i>-o/--output</i> or the
-<i>-O/--remote-name</i> options.</p>
-
-<p style="margin-left:11%;">-v/--verbose</p>
-
-<p style="margin-left:22%;">Makes the fetching more
-verbose/talkative. Mostly useful for debugging. A line
-starting with ’>’ means "header
-data" sent by curl, ’<’ means
-"header data" received by curl that is hidden in
-normal cases, and a line starting with ’*’ means
-additional info provided by curl.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Note that if
-you only want HTTP headers in the output,
-<i>-i/--include</i> might be the option you’re looking
-for.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you think
-this option still doesn’t give you enough details,
-consider using <i>--trace</i> or <i>--trace-ascii</i>
-instead.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-overrides previous uses of <i>--trace-ascii</i> or
-<i>--trace</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Use
-<i>-S/--silent</i> to make curl quiet.</p>
-
-<p style="margin-left:11%;">-V/--version</p>
-
-<p style="margin-left:22%;">Displays information about curl
-and the libcurl version it uses.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The first line
-includes the full version of curl, libcurl and other 3rd
-party libraries linked with the executable.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The second line
-(starts with "Protocols:") shows all protocols
-that libcurl reports to support.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The third line
-(starts with "Features:") shows specific features
-libcurl reports to offer. Available features include:</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="6%">
-
-
-<p>IPv6</p></td>
-<td width="4%"></td>
-<td width="68%">
-
-
-<p>You can use IPv6 with this.</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="6%">
-
-
-<p>krb4</p></td>
-<td width="4%"></td>
-<td width="68%">
-
-
-<p>Krb4 for FTP is supported.</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="6%">
-
-
-<p>SSL</p></td>
-<td width="4%"></td>
-<td width="68%">
-
-
-<p>HTTPS and FTPS are supported.</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="6%">
-
-
-<p>libz</p></td>
-<td width="4%"></td>
-<td width="68%">
-
-
-<p>Automatic decompression of compressed files over HTTP is
-supported.</p> </td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="6%">
-
-
-<p>NTLM</p></td>
-<td width="4%"></td>
-<td width="68%">
-
-
-<p>NTLM authentication is supported.</p></td></tr>
-</table>
-
-<p style="margin-left:22%;">GSS-Negotiate</p>
-
-<p style="margin-left:32%;">Negotiate authentication and
-krb5 for FTP is supported.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="7%">
-
-
-<p>Debug</p></td>
-<td width="3%"></td>
-<td width="68%">
-
-
-<p>This curl uses a libcurl built with Debug. This enables
-more error-tracking and memory debugging etc. For
-curl-developers only!</p></td></tr>
-</table>
-
-<p style="margin-left:22%;">AsynchDNS</p>
-
-<p style="margin-left:32%;">This curl uses asynchronous
-name resolves.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="9%">
-
-
-<p>SPNEGO</p></td>
-<td width="1%"></td>
-<td width="68%">
-
-
-<p>SPNEGO Negotiate authentication is supported.</p></td></tr>
-</table>
-
-<p style="margin-left:22%;">Largefile</p>
-
-<p style="margin-left:32%;">This curl supports transfers of
-large files, files larger than 2GB.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="6%">
-
-
-<p>IDN</p></td>
-<td width="4%"></td>
-<td width="68%">
-
-
-<p>This curl supports IDN - international domain names.</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="6%">
-
-
-<p>SSPI</p></td>
-<td width="4%"></td>
-<td width="68%">
-
-
-<p>SSPI is supported. If you use NTLM and set a blank user
-name, curl will authenticate with your current user and
-password.</p> </td></tr>
-</table>
-
-<p style="margin-left:11%;">-w/--write-out
-<format></p>
-
-<p style="margin-left:22%;">Defines what to display on
-stdout after a completed and successful operation. The
-format is a string that may contain plain text mixed with
-any number of variables. The string can be specified as
-"string", to get read from a particular file you
-specify it "@filename" and to tell curl to read
-the format from stdin you write "@-".</p>
-
-<p style="margin-left:22%; margin-top: 1em">The variables
-present in the output format will be substituted by the
-value or text that curl thinks fit, as described below. All
-variables are specified as %{variable_name} and to output a
-normal % you just write them as %%. You can output a newline
-by using \n, a carriage return with \r and a tab space with
-\t.</p>
-
-<p style="margin-left:22%; margin-top: 1em"><b>NOTE:</b>
-The %-symbol is a special symbol in the win32-environment,
-where all occurrences of % must be doubled when using this
-option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The variables
-available at this point are:</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="20%">
-
-
-<p><b>url_effective</b></p></td>
-<td width="3%"></td>
-<td width="55%">
-
-
-<p>The URL that was fetched last. This is most meaningful
-if you’ve told curl to follow location: headers.</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="20%">
-
-
-<p><b>http_code</b></p></td>
-<td width="3%"></td>
-<td width="55%">
-
-
-<p>The numerical response code that was found in the last
-retrieved HTTP(S) or FTP(s) transfer. In 7.18.2 the alias
-<b>response_code</b> was added to show the same info.</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="20%">
-
-
-<p><b>http_connect</b></p></td>
-<td width="3%"></td>
-<td width="55%">
-
-
-<p>The numerical code that was found in the last response
-(from a proxy) to a curl CONNECT request. (Added in
-7.12.4)</p> </td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="20%">
-
-
-<p><b>time_total</b></p></td>
-<td width="3%"></td>
-<td width="55%">
-
-
-<p>The total time, in seconds, that the full operation
-lasted. The time will be displayed with millisecond
-resolution.</p> </td></tr>
-</table>
-
-<p style="margin-left:22%;"><b>time_namelookup</b></p>
-
-<p style="margin-left:45%;">The time, in seconds, it took
-from the start until the name resolving was completed.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="18%">
-
-
-<p><b>time_connect</b></p></td>
-<td width="5%"></td>
-<td width="55%">
-
-
-<p>The time, in seconds, it took from the start until the
-TCP connect to the remote host (or proxy) was completed.</p></td></tr>
-</table>
-
-<p style="margin-left:22%;"><b>time_appconnect</b></p>
-
-<p style="margin-left:45%;">The time, in seconds, it took
-from the start until the SSL/SSH/etc connect/handshake to
-the remote host was completed. (Added in 7.19.0)</p>
-
-<p style="margin-left:22%;"><b>time_pretransfer</b></p>
-
-<p style="margin-left:45%;">The time, in seconds, it took
-from the start until the file transfer was just about to
-begin. This includes all pre-transfer commands and
-negotiations that are specific to the particular protocol(s)
-involved.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="20%">
-
-
-<p><b>time_redirect</b></p></td>
-<td width="3%"></td>
-<td width="55%">
-
-
-<p>The time, in seconds, it took for all redirection steps
-include name lookup, connect, pretransfer and transfer
-before the final transaction was started. time_redirect
-shows the complete execution time for multiple redirections.
-(Added in 7.12.3)</p></td></tr>
-</table>
-
-<p style="margin-left:22%;"><b>time_starttransfer</b></p>
-
-<p style="margin-left:45%;">The time, in seconds, it took
-from the start until the first byte was just about to be
-transferred. This includes time_pretransfer and also the
-time the server needed to calculate the result.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="21%">
-
-
-<p><b>size_download</b></p></td>
-<td width="2%"></td>
-<td width="55%">
-
-
-<p>The total amount of bytes that were downloaded.</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="21%">
-
-
-<p><b>size_upload</b></p></td>
-<td width="2%"></td>
-<td width="55%">
-
-
-<p>The total amount of bytes that were uploaded.</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="21%">
-
-
-<p><b>size_header</b></p></td>
-<td width="2%"></td>
-<td width="55%">
-
-
-<p>The total amount of bytes of the downloaded headers.</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="21%">
-
-
-<p><b>size_request</b></p></td>
-<td width="2%"></td>
-<td width="55%">
-
-
-<p>The total amount of bytes that were sent in the HTTP
-request.</p> </td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="21%">
-
-
-<p><b>speed_download</b></p></td>
-<td width="2%"></td>
-<td width="55%">
-
-
-<p>The average download speed that curl measured for the
-complete download. Bytes per second.</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="21%">
-
-
-<p><b>speed_upload</b></p></td>
-<td width="2%"></td>
-<td width="55%">
-
-
-<p>The average upload speed that curl measured for the
-complete upload. Bytes per second.</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="21%">
-
-
-<p><b>content_type</b></p></td>
-<td width="2%"></td>
-<td width="55%">
-
-
-<p>The Content-Type of the requested document, if there was
-any.</p> </td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="21%">
-
-
-<p><b>num_connects</b></p></td>
-<td width="2%"></td>
-<td width="55%">
-
-
-<p>Number of new connects made in the recent transfer.
-(Added in 7.12.3)</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="21%">
-
-
-<p><b>num_redirects</b></p></td>
-<td width="2%"></td>
-<td width="55%">
-
-
-<p>Number of redirects that were followed in the request.
-(Added in 7.12.3)</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="21%">
-
-
-<p><b>redirect_url</b></p></td>
-<td width="2%"></td>
-<td width="55%">
-
-
-<p>When a HTTP request was made without -L to follow
-redirects, this variable will show the actual URL a redirect
-<i>would</i> take you to. (Added in 7.18.2)</p></td></tr>
-<tr valign="top" align="left">
-<td width="22%"></td>
-<td width="21%">
-
-
-<p><b>ftp_entry_path</b></p></td>
-<td width="2%"></td>
-<td width="55%">
-
-
-<p>The initial path libcurl ended up in when logging on to
-the remote FTP server. (Added in 7.15.4)</p></td></tr>
-</table>
-
-<p style="margin-left:22%;"><b>ssl_verify_result</b></p>
-
-<p style="margin-left:45%;">The result of the SSL peer
-certificate verification that was requested. 0 means the
-verification was successful. (Added in 7.19.0)</p>
-
-<p style="margin-left:11%; margin-top: 1em">If this option
-is used several times, the last one will be used. <br>
--x/--proxy <proxyhost[:port]></p>
-
-<p style="margin-left:22%;">Use the specified HTTP proxy.
-If the port number is not specified, it is assumed at port
-1080.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-overrides existing environment variables that set the proxy
-to use. If there’s an environment variable setting a
-proxy, you can set proxy to "" to override it.</p>
-
-<p style="margin-left:22%; margin-top: 1em"><b>Note</b>
-that all operations that are performed over a HTTP proxy
-will transparently be converted to HTTP. It means that
-certain protocol specific operations might not be available.
-This is not the case if you can tunnel through the proxy, as
-done with the <i>-p/--proxytunnel</i> option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Starting with
-7.14.1, the proxy host can be specified the exact same way
-as the proxy environment variables, including the protocol
-prefix (http://) and the embedded user + password.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-X/--request
-<command></p>
-
-<p style="margin-left:22%;">(HTTP) Specifies a custom
-request method to use when communicating with the HTTP
-server. The specified request will be used instead of the
-method otherwise used (which defaults to GET). Read the HTTP
-1.1 specification for details and explanations. Common
-additional HTTP requests include PUT and DELETE, but related
-technologies like WebDAV offers PROPFIND, COPY, MOVE and
-more.</p>
-
-<p style="margin-left:22%; margin-top: 1em">(FTP) Specifies
-a custom FTP command to use instead of LIST when doing file
-lists with FTP.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-y/--speed-time
-<time></p>
-
-<p style="margin-left:22%;">If a download is slower than
-speed-limit bytes per second during a speed-time period, the
-download gets aborted. If speed-time is used, the default
-speed-limit will be 1 unless set with -Y.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-controls transfers and thus will not affect slow connects
-etc. If this is a concern for you, try the
-<i>--connect-timeout</i> option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-Y/--speed-limit
-<speed></p>
-
-<p style="margin-left:22%;">If a download is slower than
-this given speed (in bytes per second) for speed-time
-seconds it gets aborted. speed-time is set with -y and is 30
-if not set.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-z/--time-cond <date
-expression></p>
-
-<p style="margin-left:22%;">(HTTP/FTP) Request a file that
-has been modified later than the given time and date, or one
-that has been modified before that time. The date expression
-can be all sorts of date strings or if it doesn’t
-match any internal ones, it tries to get the time from a
-given file name instead! See the <i>curl_getdate(3)</i> man
-pages for date expression details.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Start the date
-expression with a dash (-) to make it request for a document
-that is older than the given date/time, default is a
-document that is newer than the specified date/time.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">--max-redirs <num></p>
-
-<p style="margin-left:22%;">Set maximum number of
-redirection-followings allowed. If <i>-L/--location</i> is
-used, this option can be used to prevent curl from following
-redirections "in absurdum". By default, the limit
-is set to 50 redirections. Set this option to -1 to make it
-limitless.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is used several times, the last one will be used.</p>
-
-<p style="margin-left:11%;">-0/--http1.0</p>
-
-<p style="margin-left:22%;">(HTTP) Forces curl to issue its
-requests using HTTP 1.0 instead of using its internally
-preferred: HTTP 1.1.</p>
-
-<p style="margin-left:11%;">-1/--tlsv1</p>
-
-<p style="margin-left:22%;">(SSL) Forces curl to use TLS
-version 1 when negotiating with a remote TLS server.</p>
-
-<p style="margin-left:11%;">-2/--sslv2</p>
-
-<p style="margin-left:22%;">(SSL) Forces curl to use SSL
-version 2 when negotiating with a remote SSL server.</p>
-
-<p style="margin-left:11%;">-3/--sslv3</p>
-
-<p style="margin-left:22%;">(SSL) Forces curl to use SSL
-version 3 when negotiating with a remote SSL server.</p>
-
-<p style="margin-left:11%;">-4/--ipv4</p>
-
-<p style="margin-left:22%;">If libcurl is capable of
-resolving an address to multiple IP versions (which it is if
-it is IPv6-capable), this option tells libcurl to resolve
-names to IPv4 addresses only.</p>
-
-<p style="margin-left:11%;">-6/--ipv6</p>
-
-<p style="margin-left:22%;">If libcurl is capable of
-resolving an address to multiple IP versions (which it is if
-it is IPv6-capable), this option tells libcurl to resolve
-names to IPv6 addresses only.</p>
-
-<p style="margin-left:11%;">-#/--progress-bar</p>
-
-<p style="margin-left:22%;">Make curl display progress
-information as a progress bar instead of the default
-statistics.</p>
-
-<h2>FILES
-<a name="FILES"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>~/.curlrc</i></p>
-
-<p style="margin-left:22%;">Default config file, see
-<i>-K/--config</i> for details.</p>
-
-<h2>ENVIRONMENT
-<a name="ENVIRONMENT"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The environment
-variables can be specified in lower case or upper case. The
-lower case version has precedence. http_proxy is an
-exception as it is only available in lower case. <br>
-http_proxy [protocol://]<host>[:port]</p>
-
-<p style="margin-left:22%;">Sets the proxy server to use
-for HTTP.</p>
-
-<p style="margin-left:11%;">HTTPS_PROXY
-[protocol://]<host>[:port]</p>
-
-<p style="margin-left:22%;">Sets the proxy server to use
-for HTTPS.</p>
-
-<p style="margin-left:11%;">FTP_PROXY
-[protocol://]<host>[:port]</p>
-
-<p style="margin-left:22%;">Sets the proxy server to use
-for FTP.</p>
-
-<p style="margin-left:11%;">ALL_PROXY
-[protocol://]<host>[:port]</p>
-
-<p style="margin-left:22%;">Sets the proxy server to use if
-no protocol-specific proxy is set.</p>
-
-<p style="margin-left:11%;">NO_PROXY <comma-separated
-list of hosts></p>
-
-<p style="margin-left:22%;">list of host names that
-shouldn’t go through any proxy. If set to a asterisk
-’*’ only, it matches all hosts.</p>
-
-<h2>EXIT CODES
-<a name="EXIT CODES"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">There are a
-bunch of different error codes and their corresponding error
-messages that may appear during bad conditions. At the time
-of this writing, the exit codes are:</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>1</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Unsupported protocol. This build of curl has no support
-for this protocol.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>2</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Failed to initialize.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>3</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>URL malformed. The syntax was not correct.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>5</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Couldn’t resolve proxy. The given proxy host could
-not be resolved.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>6</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Couldn’t resolve host. The given remote host was
-not resolved.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>7</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Failed to connect to host.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>8</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP weird server reply. The server sent data curl
-couldn’t parse.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>9</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP access denied. The server denied login or denied
-access to the particular resource or directory you wanted to
-reach. Most often you tried to change to a directory that
-doesn’t exist on the server.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>11</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP weird PASS reply. Curl couldn’t parse the
-reply sent to the PASS request.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>13</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP weird PASV reply, Curl couldn’t parse the
-reply sent to the PASV request.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>14</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP weird 227 format. Curl couldn’t parse the
-227-line the server sent.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>15</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP can’t get host. Couldn’t resolve the
-host IP we got in the 227-line.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>17</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP couldn’t set binary. Couldn’t change
-transfer method to binary.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>18</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Partial file. Only a part of the file was
-transferred.</p> </td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>19</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP couldn’t download/access the given file, the
-RETR (or similar) command failed.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>21</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP quote error. A quote command returned error from the
-server.</p> </td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>22</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>HTTP page not retrieved. The requested url was not found
-or returned another error with the HTTP error code being 400
-or above. This return code only appears if <i>-f/--fail</i>
-is used.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>23</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Write error. Curl couldn’t write data to a local
-filesystem or similar.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>25</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP couldn’t STOR file. The server denied the STOR
-operation, used for FTP uploading.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>26</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Read error. Various reading problems.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>27</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Out of memory. A memory allocation request failed.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>28</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Operation timeout. The specified time-out period was
-reached according to the conditions.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>30</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP PORT failed. The PORT command failed. Not all FTP
-servers support the PORT command, try doing a transfer using
-PASV instead!</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>31</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP couldn’t use REST. The REST command failed.
-This command is used for resumed FTP transfers.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>33</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>HTTP range error. The range "command"
-didn’t work.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>34</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>HTTP post error. Internal post-request generation
-error.</p> </td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>35</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>SSL connect error. The SSL handshaking failed.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>36</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FTP bad download resume. Couldn’t continue an
-earlier aborted download.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>37</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>FILE couldn’t read file. Failed to open the file.
-Permissions?</p> </td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>38</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>LDAP cannot bind. LDAP bind operation failed.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>39</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>LDAP search failed.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>41</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Function not found. A required LDAP function was not
-found.</p> </td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>42</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Aborted by callback. An application told curl to abort
-the operation.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>43</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Internal error. A function was called with a bad
-parameter.</p> </td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>45</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Interface error. A specified outgoing interface could
-not be used.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>47</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Too many redirects. When following redirects, curl hit
-the maximum amount.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>48</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Unknown TELNET option specified.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>49</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Malformed telnet option.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>51</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>The peer’s SSL certificate or SSH MD5 fingerprint
-was not ok.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>52</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>The server didn’t reply anything, which here is
-considered an error.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>53</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>SSL crypto engine not found.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>54</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Cannot set SSL crypto engine as default.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>55</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Failed sending network data.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>56</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Failure in receiving network data.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>58</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Problem with the local certificate.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>59</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Couldn’t use specified SSL cipher.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>60</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Peer certificate cannot be authenticated with known CA
-certificates.</p> </td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>61</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Unrecognized transfer encoding.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>62</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Invalid LDAP URL.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>63</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Maximum file size exceeded.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>64</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Requested FTP SSL level failed.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>65</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Sending the data requires a rewind that failed.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>66</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Failed to initialise SSL Engine.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>67</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>The user name, password, or similar was not accepted and
-curl failed to log in.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>68</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>File not found on TFTP server.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>69</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Permission problem on TFTP server.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>70</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Out of disk space on TFTP server.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>71</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Illegal TFTP operation.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>72</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Unknown TFTP transfer ID.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>73</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>File already exists (TFTP).</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>74</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>No such user (TFTP).</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>75</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Character conversion failed.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>76</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Character conversion functions required.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>77</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Problem with reading the SSL CA cert (path? access
-rights?).</p> </td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>78</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>The resource referenced in the URL does not exist.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>79</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>An unspecified error occurred during the SSH
-session.</p> </td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>80</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Failed to shut down the SSL connection.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>82</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Could not load CRL file, missing or wrong format (added
-in 7.19.0).</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>83</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>Issuer check failed (added in 7.19.0).</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="3%">
-
-
-<p>XX</p></td>
-<td width="8%"></td>
-<td width="78%">
-
-
-<p>More error codes will appear here in future releases.
-The existing ones are meant to never change.</p></td></tr>
-</table>
-
-<h2>AUTHORS / CONTRIBUTORS
-<a name="AUTHORS / CONTRIBUTORS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Daniel Stenberg
-is the main author, but the whole list of contributors is
-found in the separate THANKS file.</p>
-
-<h2>WWW
-<a name="WWW"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">http://curl.haxx.se</p>
-
-<h2>FTP
-<a name="FTP"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">ftp://ftp.sunet.se/pub/www/utilities/curl/</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>ftp</b>(1),
-<b>wget</b>(1)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/curl.pdf b/src/other/curl/docs/curl.pdf
deleted file mode 100644
index 15d00d1..0000000
Binary files a/src/other/curl/docs/curl.pdf and /dev/null differ
diff --git a/src/other/curl/docs/examples/10-at-a-time.c b/src/other/curl/docs/examples/10-at-a-time.c
deleted file mode 100644
index 5132642..0000000
--- a/src/other/curl/docs/examples/10-at-a-time.c
+++ /dev/null
@@ -1,184 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * Example application source code using the multi interface to download many
- * files, but with a capped maximum amount of simultaneous transfers.
- *
- * Written by Michael Wallner
- */
-
-#include <errno.h>
-#include <stdlib.h>
-#include <string.h>
-#ifndef WIN32
-#  include <unistd.h>
-#endif
-#include <curl/multi.h>
-
-static const char *urls[] = {
-  "http://www.microsoft.com",
-  "http://www.opensource.org",
-  "http://www.google.com",
-  "http://www.yahoo.com",
-  "http://www.ibm.com",
-  "http://www.mysql.com",
-  "http://www.oracle.com",
-  "http://www.ripe.net",
-  "http://www.iana.org",
-  "http://www.amazon.com",
-  "http://www.netcraft.com",
-  "http://www.heise.de",
-  "http://www.chip.de",
-  "http://www.ca.com",
-  "http://www.cnet.com",
-  "http://www.news.com",
-  "http://www.cnn.com",
-  "http://www.wikipedia.org",
-  "http://www.dell.com",
-  "http://www.hp.com",
-  "http://www.cert.org",
-  "http://www.mit.edu",
-  "http://www.nist.gov",
-  "http://www.ebay.com",
-  "http://www.playstation.com",
-  "http://www.uefa.com",
-  "http://www.ieee.org",
-  "http://www.apple.com",
-  "http://www.sony.com",
-  "http://www.symantec.com",
-  "http://www.zdnet.com",
-  "http://www.fujitsu.com",
-  "http://www.supermicro.com",
-  "http://www.hotmail.com",
-  "http://www.ecma.com",
-  "http://www.bbc.co.uk",
-  "http://news.google.com",
-  "http://www.foxnews.com",
-  "http://www.msn.com",
-  "http://www.wired.com",
-  "http://www.sky.com",
-  "http://www.usatoday.com",
-  "http://www.cbs.com",
-  "http://www.nbc.com",
-  "http://slashdot.org",
-  "http://www.bloglines.com",
-  "http://www.techweb.com",
-  "http://www.newslink.org",
-  "http://www.un.org",
-};
-
-#define MAX 10 /* number of simultaneous transfers */
-#define CNT sizeof(urls)/sizeof(char*) /* total number of transfers to do */
-
-static size_t cb(char *d, size_t n, size_t l, void *p)
-{
-  /* take care of the data here, ignored in this example */
-  (void)d;
-  (void)p;
-  return n*l;
-}
-
-static void init(CURLM *cm, int i)
-{
-  CURL *eh = curl_easy_init();
-
-  curl_easy_setopt(eh, CURLOPT_WRITEFUNCTION, cb);
-  curl_easy_setopt(eh, CURLOPT_HEADER, 0L);
-  curl_easy_setopt(eh, CURLOPT_URL, urls[i]);
-  curl_easy_setopt(eh, CURLOPT_PRIVATE, urls[i]);
-  curl_easy_setopt(eh, CURLOPT_VERBOSE, 0L);
-
-  curl_multi_add_handle(cm, eh);
-}
-
-int main(void)
-{
-  CURLM *cm;
-  CURLMsg *msg;
-  long L;
-  unsigned int C=0;
-  int M, Q, U = -1;
-  fd_set R, W, E;
-  struct timeval T;
-
-  curl_global_init(CURL_GLOBAL_ALL);
-
-  cm = curl_multi_init();
-
-  /* we can optionally limit the total amount of connections this multi handle
-     uses */
-  curl_multi_setopt(cm, CURLMOPT_MAXCONNECTS, (long)MAX);
-
-  for (C = 0; C < MAX; ++C) {
-    init(cm, C);
-  }
-
-  while (U) {
-    while (CURLM_CALL_MULTI_PERFORM == curl_multi_perform(cm, &U));
-
-    if (U) {
-      FD_ZERO(&R);
-      FD_ZERO(&W);
-      FD_ZERO(&E);
-
-      if (curl_multi_fdset(cm, &R, &W, &E, &M)) {
-        fprintf(stderr, "E: curl_multi_fdset\n");
-        return EXIT_FAILURE;
-      }
-
-      if (curl_multi_timeout(cm, &L)) {
-        fprintf(stderr, "E: curl_multi_timeout\n");
-        return EXIT_FAILURE;
-      }
-      if (L == -1)
-        L = 100;
-
-      if (M == -1) {
-#ifdef WIN32
-        Sleep(L);
-#else
-        sleep(L / 1000);
-#endif
-      } else {
-        T.tv_sec = L/1000;
-        T.tv_usec = (L%1000)*1000;
-
-        if (0 > select(M+1, &R, &W, &E, &T)) {
-          fprintf(stderr, "E: select(%i,,,,%li): %i: %s\n",
-              M+1, L, errno, strerror(errno));
-          return EXIT_FAILURE;
-        }
-      }
-    }
-
-    while ((msg = curl_multi_info_read(cm, &Q))) {
-      if (msg->msg == CURLMSG_DONE) {
-        char *url;
-        CURL *e = msg->easy_handle;
-        curl_easy_getinfo(msg->easy_handle, CURLINFO_PRIVATE, &url);
-        fprintf(stderr, "R: %d - %s <%s>\n",
-                msg->data.result, curl_easy_strerror(msg->data.result), url);
-        curl_multi_remove_handle(cm, e);
-        curl_easy_cleanup(e);
-      }
-      else {
-        fprintf(stderr, "E: CURLMsg (%d)\n", msg->msg);
-      }
-      if (C < CNT) {
-        init(cm, C++);
-        U++; /* just to prevent it from remaining at 0 if there are more
-                URLs to get */
-      }
-    }
-  }
-
-  curl_multi_cleanup(cm);
-  curl_global_cleanup();
-
-  return EXIT_SUCCESS;
-}
diff --git a/src/other/curl/docs/examples/Makefile.am b/src/other/curl/docs/examples/Makefile.am
deleted file mode 100644
index 8d92f73..0000000
--- a/src/other/curl/docs/examples/Makefile.am
+++ /dev/null
@@ -1,37 +0,0 @@
-#
-#
-
-AUTOMAKE_OPTIONS = foreign nostdinc
-
-EXTRA_DIST = README Makefile.example Makefile.inc Makefile.m32 \
-	makefile.dj $(COMPLICATED_EXAMPLES)
-
-# Specify our include paths here, and do it relative to $(top_srcdir) and
-# $(top_builddir), to ensure that these paths which belong to the library
-# being currently built and tested are searched before the library which
-# might possibly already be installed in the system.
-#
-# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h
-# $(top_builddir)/include for generated curlbuild.h included from lib/setup.h
-# $(top_srcdir)/include is for libcurl's external include files
-
-INCLUDES = -I$(top_builddir)/include/curl \
-           -I$(top_builddir)/include      \
-           -I$(top_srcdir)/include
-
-LIBDIR = $(top_builddir)/lib
-
-if STATICLIB
-# we need this define when building with a static lib on Windows
-STATICCPPFLAGS = -DCURL_STATICLIB
-endif
-
-CPPFLAGS = -DCURL_NO_OLDIES $(STATICCPPFLAGS)
-
-# Dependencies
-LDADD = $(LIBDIR)/libcurl.la
-
-# Makefile.inc provides the check_PROGRAMS and COMPLICATED_EXAMPLES defines
-include Makefile.inc
-
-
diff --git a/src/other/curl/docs/examples/Makefile.example b/src/other/curl/docs/examples/Makefile.example
deleted file mode 100644
index 29ca0d7..0000000
--- a/src/other/curl/docs/examples/Makefile.example
+++ /dev/null
@@ -1,40 +0,0 @@
-#############################################################################
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-#
-
-# What to call the final executable
-TARGET = example
-
-# Which object files that the executable consists of
-OBJS= ftpget.o
-
-# What compiler to use
-CC = gcc
-
-# Compiler flags, -g for debug, -c to make an object file
-CFLAGS = -c -g
-
-# This should point to a directory that holds libcurl, if it isn't
-# in the system's standard lib dir
-# We also set a -L to include the directory where we have the openssl
-# libraries
-LDFLAGS = -L/home/dast/lib -L/usr/local/ssl/lib
-
-# We need -lcurl for the curl stuff
-# We need -lsocket and -lnsl when on Solaris
-# We need -lssl and -lcrypto when using libcurl with SSL support
-# We need -lpthread for the pthread example
-LIBS = -lcurl -lsocket -lnsl -lssl -lcrypto
-
-# Link the target with all objects and libraries
-$(TARGET) : $(OBJS)
-	$(CC)  -o $(TARGET) $(OBJS) $(LDFLAGS) $(LIBS)
-
-# Compile the source files into object files
-ftpget.o : ftpget.c
-	$(CC) $(CFLAGS) $<
diff --git a/src/other/curl/docs/examples/Makefile.in b/src/other/curl/docs/examples/Makefile.in
deleted file mode 100644
index 19fb8d5..0000000
--- a/src/other/curl/docs/examples/Makefile.in
+++ /dev/null
@@ -1,823 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-#
-#
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
-	$(srcdir)/Makefile.inc
-check_PROGRAMS = 10-at-a-time$(EXEEXT) anyauthput$(EXEEXT) \
-	cookie_interface$(EXEEXT) debug$(EXEEXT) fileupload$(EXEEXT) \
-	fopen$(EXEEXT) ftpget$(EXEEXT) ftpgetresp$(EXEEXT) \
-	ftpupload$(EXEEXT) getinfo$(EXEEXT) getinmemory$(EXEEXT) \
-	http-post$(EXEEXT) httpput$(EXEEXT) https$(EXEEXT) \
-	multi-app$(EXEEXT) multi-debugcallback$(EXEEXT) \
-	multi-double$(EXEEXT) multi-post$(EXEEXT) \
-	multi-single$(EXEEXT) persistant$(EXEEXT) \
-	post-callback$(EXEEXT) postit2$(EXEEXT) sepheaders$(EXEEXT) \
-	simple$(EXEEXT) simplepost$(EXEEXT) simplessl$(EXEEXT) \
-	sendrecv$(EXEEXT) httpcustomheader$(EXEEXT) certinfo$(EXEEXT) \
-	chkspeed$(EXEEXT) ftpgetinfo$(EXEEXT)
-subdir = docs/examples
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
-	$(top_srcdir)/m4/curl-confopts.m4 \
-	$(top_srcdir)/m4/curl-functions.m4 \
-	$(top_srcdir)/m4/curl-override.m4 \
-	$(top_srcdir)/m4/curl-reentrant.m4 \
-	$(top_srcdir)/m4/curl-system.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
-	$(top_builddir)/src/curl_config.h \
-	$(top_builddir)/include/curl/curlbuild.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-10_at_a_time_SOURCES = 10-at-a-time.c
-10_at_a_time_OBJECTS = 10-at-a-time.$(OBJEXT)
-10_at_a_time_LDADD = $(LDADD)
-10_at_a_time_DEPENDENCIES = $(LIBDIR)/libcurl.la
-anyauthput_SOURCES = anyauthput.c
-anyauthput_OBJECTS = anyauthput.$(OBJEXT)
-anyauthput_LDADD = $(LDADD)
-anyauthput_DEPENDENCIES = $(LIBDIR)/libcurl.la
-certinfo_SOURCES = certinfo.c
-certinfo_OBJECTS = certinfo.$(OBJEXT)
-certinfo_LDADD = $(LDADD)
-certinfo_DEPENDENCIES = $(LIBDIR)/libcurl.la
-chkspeed_SOURCES = chkspeed.c
-chkspeed_OBJECTS = chkspeed.$(OBJEXT)
-chkspeed_LDADD = $(LDADD)
-chkspeed_DEPENDENCIES = $(LIBDIR)/libcurl.la
-cookie_interface_SOURCES = cookie_interface.c
-cookie_interface_OBJECTS = cookie_interface.$(OBJEXT)
-cookie_interface_LDADD = $(LDADD)
-cookie_interface_DEPENDENCIES = $(LIBDIR)/libcurl.la
-debug_SOURCES = debug.c
-debug_OBJECTS = debug.$(OBJEXT)
-debug_LDADD = $(LDADD)
-debug_DEPENDENCIES = $(LIBDIR)/libcurl.la
-fileupload_SOURCES = fileupload.c
-fileupload_OBJECTS = fileupload.$(OBJEXT)
-fileupload_LDADD = $(LDADD)
-fileupload_DEPENDENCIES = $(LIBDIR)/libcurl.la
-fopen_SOURCES = fopen.c
-fopen_OBJECTS = fopen.$(OBJEXT)
-fopen_LDADD = $(LDADD)
-fopen_DEPENDENCIES = $(LIBDIR)/libcurl.la
-ftpget_SOURCES = ftpget.c
-ftpget_OBJECTS = ftpget.$(OBJEXT)
-ftpget_LDADD = $(LDADD)
-ftpget_DEPENDENCIES = $(LIBDIR)/libcurl.la
-ftpgetinfo_SOURCES = ftpgetinfo.c
-ftpgetinfo_OBJECTS = ftpgetinfo.$(OBJEXT)
-ftpgetinfo_LDADD = $(LDADD)
-ftpgetinfo_DEPENDENCIES = $(LIBDIR)/libcurl.la
-ftpgetresp_SOURCES = ftpgetresp.c
-ftpgetresp_OBJECTS = ftpgetresp.$(OBJEXT)
-ftpgetresp_LDADD = $(LDADD)
-ftpgetresp_DEPENDENCIES = $(LIBDIR)/libcurl.la
-ftpupload_SOURCES = ftpupload.c
-ftpupload_OBJECTS = ftpupload.$(OBJEXT)
-ftpupload_LDADD = $(LDADD)
-ftpupload_DEPENDENCIES = $(LIBDIR)/libcurl.la
-getinfo_SOURCES = getinfo.c
-getinfo_OBJECTS = getinfo.$(OBJEXT)
-getinfo_LDADD = $(LDADD)
-getinfo_DEPENDENCIES = $(LIBDIR)/libcurl.la
-getinmemory_SOURCES = getinmemory.c
-getinmemory_OBJECTS = getinmemory.$(OBJEXT)
-getinmemory_LDADD = $(LDADD)
-getinmemory_DEPENDENCIES = $(LIBDIR)/libcurl.la
-http_post_SOURCES = http-post.c
-http_post_OBJECTS = http-post.$(OBJEXT)
-http_post_LDADD = $(LDADD)
-http_post_DEPENDENCIES = $(LIBDIR)/libcurl.la
-httpcustomheader_SOURCES = httpcustomheader.c
-httpcustomheader_OBJECTS = httpcustomheader.$(OBJEXT)
-httpcustomheader_LDADD = $(LDADD)
-httpcustomheader_DEPENDENCIES = $(LIBDIR)/libcurl.la
-httpput_SOURCES = httpput.c
-httpput_OBJECTS = httpput.$(OBJEXT)
-httpput_LDADD = $(LDADD)
-httpput_DEPENDENCIES = $(LIBDIR)/libcurl.la
-https_SOURCES = https.c
-https_OBJECTS = https.$(OBJEXT)
-https_LDADD = $(LDADD)
-https_DEPENDENCIES = $(LIBDIR)/libcurl.la
-multi_app_SOURCES = multi-app.c
-multi_app_OBJECTS = multi-app.$(OBJEXT)
-multi_app_LDADD = $(LDADD)
-multi_app_DEPENDENCIES = $(LIBDIR)/libcurl.la
-multi_debugcallback_SOURCES = multi-debugcallback.c
-multi_debugcallback_OBJECTS = multi-debugcallback.$(OBJEXT)
-multi_debugcallback_LDADD = $(LDADD)
-multi_debugcallback_DEPENDENCIES = $(LIBDIR)/libcurl.la
-multi_double_SOURCES = multi-double.c
-multi_double_OBJECTS = multi-double.$(OBJEXT)
-multi_double_LDADD = $(LDADD)
-multi_double_DEPENDENCIES = $(LIBDIR)/libcurl.la
-multi_post_SOURCES = multi-post.c
-multi_post_OBJECTS = multi-post.$(OBJEXT)
-multi_post_LDADD = $(LDADD)
-multi_post_DEPENDENCIES = $(LIBDIR)/libcurl.la
-multi_single_SOURCES = multi-single.c
-multi_single_OBJECTS = multi-single.$(OBJEXT)
-multi_single_LDADD = $(LDADD)
-multi_single_DEPENDENCIES = $(LIBDIR)/libcurl.la
-persistant_SOURCES = persistant.c
-persistant_OBJECTS = persistant.$(OBJEXT)
-persistant_LDADD = $(LDADD)
-persistant_DEPENDENCIES = $(LIBDIR)/libcurl.la
-post_callback_SOURCES = post-callback.c
-post_callback_OBJECTS = post-callback.$(OBJEXT)
-post_callback_LDADD = $(LDADD)
-post_callback_DEPENDENCIES = $(LIBDIR)/libcurl.la
-postit2_SOURCES = postit2.c
-postit2_OBJECTS = postit2.$(OBJEXT)
-postit2_LDADD = $(LDADD)
-postit2_DEPENDENCIES = $(LIBDIR)/libcurl.la
-sendrecv_SOURCES = sendrecv.c
-sendrecv_OBJECTS = sendrecv.$(OBJEXT)
-sendrecv_LDADD = $(LDADD)
-sendrecv_DEPENDENCIES = $(LIBDIR)/libcurl.la
-sepheaders_SOURCES = sepheaders.c
-sepheaders_OBJECTS = sepheaders.$(OBJEXT)
-sepheaders_LDADD = $(LDADD)
-sepheaders_DEPENDENCIES = $(LIBDIR)/libcurl.la
-simple_SOURCES = simple.c
-simple_OBJECTS = simple.$(OBJEXT)
-simple_LDADD = $(LDADD)
-simple_DEPENDENCIES = $(LIBDIR)/libcurl.la
-simplepost_SOURCES = simplepost.c
-simplepost_OBJECTS = simplepost.$(OBJEXT)
-simplepost_LDADD = $(LDADD)
-simplepost_DEPENDENCIES = $(LIBDIR)/libcurl.la
-simplessl_SOURCES = simplessl.c
-simplessl_OBJECTS = simplessl.$(OBJEXT)
-simplessl_LDADD = $(LDADD)
-simplessl_DEPENDENCIES = $(LIBDIR)/libcurl.la
-DEFAULT_INCLUDES = 
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
-	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
-	$(LDFLAGS) -o $@
-SOURCES = 10-at-a-time.c anyauthput.c certinfo.c chkspeed.c \
-	cookie_interface.c debug.c fileupload.c fopen.c ftpget.c \
-	ftpgetinfo.c ftpgetresp.c ftpupload.c getinfo.c getinmemory.c \
-	http-post.c httpcustomheader.c httpput.c https.c multi-app.c \
-	multi-debugcallback.c multi-double.c multi-post.c \
-	multi-single.c persistant.c post-callback.c postit2.c \
-	sendrecv.c sepheaders.c simple.c simplepost.c simplessl.c
-DIST_SOURCES = 10-at-a-time.c anyauthput.c certinfo.c chkspeed.c \
-	cookie_interface.c debug.c fileupload.c fopen.c ftpget.c \
-	ftpgetinfo.c ftpgetresp.c ftpupload.c getinfo.c getinmemory.c \
-	http-post.c httpcustomheader.c httpput.c https.c multi-app.c \
-	multi-debugcallback.c multi-double.c multi-post.c \
-	multi-single.c persistant.c post-callback.c postit2.c \
-	sendrecv.c sepheaders.c simple.c simplepost.c simplessl.c
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
-CPP = @CPP@
-CPPFLAGS = -DCURL_NO_OLDIES $(STATICCPPFLAGS)
-CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
-CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
-CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
-CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
-CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
-CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
-CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
-CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
-CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
-CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
-CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
-CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
-CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
-CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
-CURL_LIBS = @CURL_LIBS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
-IDN_ENABLED = @IDN_ENABLED@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-IPV6_ENABLED = @IPV6_ENABLED@
-KRB4_ENABLED = @KRB4_ENABLED@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCURL_LIBS = @LIBCURL_LIBS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MANOPT = @MANOPT@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-NROFF = @NROFF@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH = @PATH@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PERL = @PERL@
-PKGADD_NAME = @PKGADD_NAME@
-PKGADD_PKG = @PKGADD_PKG@
-PKGADD_VENDOR = @PKGADD_VENDOR@
-PKGCONFIG = @PKGCONFIG@
-RANDOM_FILE = @RANDOM_FILE@
-RANLIB = @RANLIB@
-REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-SSL_ENABLED = @SSL_ENABLED@
-STRIP = @STRIP@
-SUPPORT_FEATURES = @SUPPORT_FEATURES@
-SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
-TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
-USE_ARES = @USE_ARES@
-USE_GNUTLS = @USE_GNUTLS@
-USE_LIBSSH2 = @USE_LIBSSH2@
-USE_NSS = @USE_NSS@
-USE_SSLEAY = @USE_SSLEAY@
-USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
-VERSION = @VERSION@
-VERSIONNUM = @VERSIONNUM@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-libext = @libext@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-AUTOMAKE_OPTIONS = foreign nostdinc
-EXTRA_DIST = README Makefile.example Makefile.inc Makefile.m32 \
-	makefile.dj $(COMPLICATED_EXAMPLES)
-
-
-# Specify our include paths here, and do it relative to $(top_srcdir) and
-# $(top_builddir), to ensure that these paths which belong to the library
-# being currently built and tested are searched before the library which
-# might possibly already be installed in the system.
-#
-# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h
-# $(top_builddir)/include for generated curlbuild.h included from lib/setup.h
-# $(top_srcdir)/include is for libcurl's external include files
-INCLUDES = -I$(top_builddir)/include/curl \
-           -I$(top_builddir)/include      \
-           -I$(top_srcdir)/include
-
-LIBDIR = $(top_builddir)/lib
-
-# we need this define when building with a static lib on Windows
- at STATICLIB_TRUE@STATICCPPFLAGS = -DCURL_STATICLIB
-
-# Dependencies
-LDADD = $(LIBDIR)/libcurl.la
-
-# These examples require external dependencies that may not be commonly
-# available on POSIX systems, so don't bother attempting to compile them here.
-COMPLICATED_EXAMPLES = \
- curlgtk.c curlx.c htmltitle.cc cacertinmem.c ftpuploadresume.c \
- ghiper.c hiperfifo.c htmltidy.c multithread.c \
- opensslthreadlock.c sampleconv.c synctime.c threaded-ssl.c evhiperfifo.c
-
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .c .lo .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Makefile.inc $(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) --foreign docs/examples/Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign docs/examples/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-clean-checkPROGRAMS:
-	@list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \
-	echo " rm -f" $$list; \
-	rm -f $$list || exit $$?; \
-	test -n "$(EXEEXT)" || exit 0; \
-	list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
-	echo " rm -f" $$list; \
-	rm -f $$list
-10-at-a-time$(EXEEXT): $(10_at_a_time_OBJECTS) $(10_at_a_time_DEPENDENCIES) 
-	@rm -f 10-at-a-time$(EXEEXT)
-	$(LINK) $(10_at_a_time_OBJECTS) $(10_at_a_time_LDADD) $(LIBS)
-anyauthput$(EXEEXT): $(anyauthput_OBJECTS) $(anyauthput_DEPENDENCIES) 
-	@rm -f anyauthput$(EXEEXT)
-	$(LINK) $(anyauthput_OBJECTS) $(anyauthput_LDADD) $(LIBS)
-certinfo$(EXEEXT): $(certinfo_OBJECTS) $(certinfo_DEPENDENCIES) 
-	@rm -f certinfo$(EXEEXT)
-	$(LINK) $(certinfo_OBJECTS) $(certinfo_LDADD) $(LIBS)
-chkspeed$(EXEEXT): $(chkspeed_OBJECTS) $(chkspeed_DEPENDENCIES) 
-	@rm -f chkspeed$(EXEEXT)
-	$(LINK) $(chkspeed_OBJECTS) $(chkspeed_LDADD) $(LIBS)
-cookie_interface$(EXEEXT): $(cookie_interface_OBJECTS) $(cookie_interface_DEPENDENCIES) 
-	@rm -f cookie_interface$(EXEEXT)
-	$(LINK) $(cookie_interface_OBJECTS) $(cookie_interface_LDADD) $(LIBS)
-debug$(EXEEXT): $(debug_OBJECTS) $(debug_DEPENDENCIES) 
-	@rm -f debug$(EXEEXT)
-	$(LINK) $(debug_OBJECTS) $(debug_LDADD) $(LIBS)
-fileupload$(EXEEXT): $(fileupload_OBJECTS) $(fileupload_DEPENDENCIES) 
-	@rm -f fileupload$(EXEEXT)
-	$(LINK) $(fileupload_OBJECTS) $(fileupload_LDADD) $(LIBS)
-fopen$(EXEEXT): $(fopen_OBJECTS) $(fopen_DEPENDENCIES) 
-	@rm -f fopen$(EXEEXT)
-	$(LINK) $(fopen_OBJECTS) $(fopen_LDADD) $(LIBS)
-ftpget$(EXEEXT): $(ftpget_OBJECTS) $(ftpget_DEPENDENCIES) 
-	@rm -f ftpget$(EXEEXT)
-	$(LINK) $(ftpget_OBJECTS) $(ftpget_LDADD) $(LIBS)
-ftpgetinfo$(EXEEXT): $(ftpgetinfo_OBJECTS) $(ftpgetinfo_DEPENDENCIES) 
-	@rm -f ftpgetinfo$(EXEEXT)
-	$(LINK) $(ftpgetinfo_OBJECTS) $(ftpgetinfo_LDADD) $(LIBS)
-ftpgetresp$(EXEEXT): $(ftpgetresp_OBJECTS) $(ftpgetresp_DEPENDENCIES) 
-	@rm -f ftpgetresp$(EXEEXT)
-	$(LINK) $(ftpgetresp_OBJECTS) $(ftpgetresp_LDADD) $(LIBS)
-ftpupload$(EXEEXT): $(ftpupload_OBJECTS) $(ftpupload_DEPENDENCIES) 
-	@rm -f ftpupload$(EXEEXT)
-	$(LINK) $(ftpupload_OBJECTS) $(ftpupload_LDADD) $(LIBS)
-getinfo$(EXEEXT): $(getinfo_OBJECTS) $(getinfo_DEPENDENCIES) 
-	@rm -f getinfo$(EXEEXT)
-	$(LINK) $(getinfo_OBJECTS) $(getinfo_LDADD) $(LIBS)
-getinmemory$(EXEEXT): $(getinmemory_OBJECTS) $(getinmemory_DEPENDENCIES) 
-	@rm -f getinmemory$(EXEEXT)
-	$(LINK) $(getinmemory_OBJECTS) $(getinmemory_LDADD) $(LIBS)
-http-post$(EXEEXT): $(http_post_OBJECTS) $(http_post_DEPENDENCIES) 
-	@rm -f http-post$(EXEEXT)
-	$(LINK) $(http_post_OBJECTS) $(http_post_LDADD) $(LIBS)
-httpcustomheader$(EXEEXT): $(httpcustomheader_OBJECTS) $(httpcustomheader_DEPENDENCIES) 
-	@rm -f httpcustomheader$(EXEEXT)
-	$(LINK) $(httpcustomheader_OBJECTS) $(httpcustomheader_LDADD) $(LIBS)
-httpput$(EXEEXT): $(httpput_OBJECTS) $(httpput_DEPENDENCIES) 
-	@rm -f httpput$(EXEEXT)
-	$(LINK) $(httpput_OBJECTS) $(httpput_LDADD) $(LIBS)
-https$(EXEEXT): $(https_OBJECTS) $(https_DEPENDENCIES) 
-	@rm -f https$(EXEEXT)
-	$(LINK) $(https_OBJECTS) $(https_LDADD) $(LIBS)
-multi-app$(EXEEXT): $(multi_app_OBJECTS) $(multi_app_DEPENDENCIES) 
-	@rm -f multi-app$(EXEEXT)
-	$(LINK) $(multi_app_OBJECTS) $(multi_app_LDADD) $(LIBS)
-multi-debugcallback$(EXEEXT): $(multi_debugcallback_OBJECTS) $(multi_debugcallback_DEPENDENCIES) 
-	@rm -f multi-debugcallback$(EXEEXT)
-	$(LINK) $(multi_debugcallback_OBJECTS) $(multi_debugcallback_LDADD) $(LIBS)
-multi-double$(EXEEXT): $(multi_double_OBJECTS) $(multi_double_DEPENDENCIES) 
-	@rm -f multi-double$(EXEEXT)
-	$(LINK) $(multi_double_OBJECTS) $(multi_double_LDADD) $(LIBS)
-multi-post$(EXEEXT): $(multi_post_OBJECTS) $(multi_post_DEPENDENCIES) 
-	@rm -f multi-post$(EXEEXT)
-	$(LINK) $(multi_post_OBJECTS) $(multi_post_LDADD) $(LIBS)
-multi-single$(EXEEXT): $(multi_single_OBJECTS) $(multi_single_DEPENDENCIES) 
-	@rm -f multi-single$(EXEEXT)
-	$(LINK) $(multi_single_OBJECTS) $(multi_single_LDADD) $(LIBS)
-persistant$(EXEEXT): $(persistant_OBJECTS) $(persistant_DEPENDENCIES) 
-	@rm -f persistant$(EXEEXT)
-	$(LINK) $(persistant_OBJECTS) $(persistant_LDADD) $(LIBS)
-post-callback$(EXEEXT): $(post_callback_OBJECTS) $(post_callback_DEPENDENCIES) 
-	@rm -f post-callback$(EXEEXT)
-	$(LINK) $(post_callback_OBJECTS) $(post_callback_LDADD) $(LIBS)
-postit2$(EXEEXT): $(postit2_OBJECTS) $(postit2_DEPENDENCIES) 
-	@rm -f postit2$(EXEEXT)
-	$(LINK) $(postit2_OBJECTS) $(postit2_LDADD) $(LIBS)
-sendrecv$(EXEEXT): $(sendrecv_OBJECTS) $(sendrecv_DEPENDENCIES) 
-	@rm -f sendrecv$(EXEEXT)
-	$(LINK) $(sendrecv_OBJECTS) $(sendrecv_LDADD) $(LIBS)
-sepheaders$(EXEEXT): $(sepheaders_OBJECTS) $(sepheaders_DEPENDENCIES) 
-	@rm -f sepheaders$(EXEEXT)
-	$(LINK) $(sepheaders_OBJECTS) $(sepheaders_LDADD) $(LIBS)
-simple$(EXEEXT): $(simple_OBJECTS) $(simple_DEPENDENCIES) 
-	@rm -f simple$(EXEEXT)
-	$(LINK) $(simple_OBJECTS) $(simple_LDADD) $(LIBS)
-simplepost$(EXEEXT): $(simplepost_OBJECTS) $(simplepost_DEPENDENCIES) 
-	@rm -f simplepost$(EXEEXT)
-	$(LINK) $(simplepost_OBJECTS) $(simplepost_LDADD) $(LIBS)
-simplessl$(EXEEXT): $(simplessl_OBJECTS) $(simplessl_DEPENDENCIES) 
-	@rm -f simplessl$(EXEEXT)
-	$(LINK) $(simplessl_OBJECTS) $(simplessl_LDADD) $(LIBS)
-
-mostlyclean-compile:
-	-rm -f *.$(OBJEXT)
-
-distclean-compile:
-	-rm -f *.tab.c
-
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/10-at-a-time.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/anyauthput.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/certinfo.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/chkspeed.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/cookie_interface.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/debug.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/fileupload.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/fopen.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ftpget.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ftpgetinfo.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ftpgetresp.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ftpupload.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/getinfo.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/getinmemory.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/http-post.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/httpcustomheader.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/httpput.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/https.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/multi-app.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/multi-debugcallback.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/multi-double.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/multi-post.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/multi-single.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/persistant.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/post-callback.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/postit2.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sendrecv.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sepheaders.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/simple.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/simplepost.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/simplessl.Po at am__quote@
-
-.c.o:
- at am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c $<
-
-.c.obj:
- at am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-.c.lo:
- at am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	set x; \
-	here=`pwd`; \
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(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
-	$(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
-check: check-am
-all-am: Makefile
-installdirs:
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-checkPROGRAMS clean-generic clean-libtool \
-	mostlyclean-am
-
-distclean: distclean-am
-	-rm -rf ./$(DEPDIR)
-	-rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
-	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 -rf ./$(DEPDIR)
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
-	mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: check-am install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean \
-	clean-checkPROGRAMS clean-generic clean-libtool ctags \
-	distclean distclean-compile distclean-generic \
-	distclean-libtool 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 mostlyclean mostlyclean-compile \
-	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
-	tags uninstall uninstall-am
-
-
-# Makefile.inc provides the check_PROGRAMS and COMPLICATED_EXAMPLES defines
-
-# 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/src/other/curl/docs/examples/Makefile.inc b/src/other/curl/docs/examples/Makefile.inc
deleted file mode 100644
index c104368..0000000
--- a/src/other/curl/docs/examples/Makefile.inc
+++ /dev/null
@@ -1,16 +0,0 @@
-# These are all libcurl example programs to be test compiled
-check_PROGRAMS = 10-at-a-time anyauthput cookie_interface \
-  debug fileupload fopen ftpget ftpgetresp ftpupload \
-  getinfo getinmemory http-post httpput \
-  https multi-app multi-debugcallback multi-double \
-  multi-post multi-single persistant post-callback \
-  postit2 sepheaders simple simplepost simplessl \
-  sendrecv httpcustomheader certinfo chkspeed ftpgetinfo
-
-# These examples require external dependencies that may not be commonly
-# available on POSIX systems, so don't bother attempting to compile them here.
-COMPLICATED_EXAMPLES = \
- curlgtk.c curlx.c htmltitle.cc cacertinmem.c ftpuploadresume.c \
- ghiper.c hiperfifo.c htmltidy.c multithread.c \
- opensslthreadlock.c sampleconv.c synctime.c threaded-ssl.c evhiperfifo.c
-
diff --git a/src/other/curl/docs/examples/Makefile.m32 b/src/other/curl/docs/examples/Makefile.m32
deleted file mode 100644
index 15750d0..0000000
--- a/src/other/curl/docs/examples/Makefile.m32
+++ /dev/null
@@ -1,133 +0,0 @@
-#########################################################################
-#
-## Makefile for building curl examples with MingW32
-## and optionally OpenSSL (0.9.8), libssh2 (0.18), zlib (1.2.3)
-##
-## Usage:
-## mingw32-make -f Makefile.m32 [SSL=1] [SSH2=1] [ZLIB=1] [SSPI=1] [IPV6=1] [DYN=1]
-##
-## Hint: you can also set environment vars to control the build, f.e.:
-## set ZLIB_PATH=c:/zlib-1.2.3
-## set ZLIB=1
-##
-#########################################################################
-
-# Edit the path below to point to the base of your Zlib sources.
-ifndef ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.3
-endif
-# Edit the path below to point to the base of your OpenSSL package.
-ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-0.9.8k
-endif
-# Edit the path below to point to the base of your LibSSH2 package.
-ifndef LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.2
-endif
-# Edit the path below to point to the base of your Novell LDAP NDK.
-ifndef LDAP_SDK
-LDAP_SDK = c:/novell/ndk/cldapsdk/win32
-endif
-
-PROOT = ../..
-ARES_LIB = $(PROOT)/ares
-
-SSL = 1
-ZLIB = 1
-
-CC = gcc
-CFLAGS = -g -O2 -Wall
-# comment LDFLAGS below to keep debug info
-LDFLAGS = -s
-RC = windres
-RCFLAGS = --include-dir=$(PROOT)/include -O COFF -i
-RM = del /q /f > NUL 2>&1
-CP = copy
-
-########################################################
-## Nothing more to do below this line!
-
-INCLUDES = -I. -I$(PROOT) -I$(PROOT)/include -I$(PROOT)/lib
-LINK = $(CC) $(LDFLAGS) -o $@
-
-ifdef DYN
-  curl_DEPENDENCIES = $(PROOT)/lib/libcurldll.a $(PROOT)/lib/libcurl.dll
-  curl_LDADD = -L$(PROOT)/lib -lcurldll
-else
-  curl_DEPENDENCIES = $(PROOT)/lib/libcurl.a
-  curl_LDADD = -L$(PROOT)/lib -lcurl
-  CFLAGS += -DCURL_STATICLIB
-endif
-ifdef ARES
-  ifndef DYN
-    curl_DEPENDENCIES += $(ARES_LIB)/libcares.a
-  endif
-  CFLAGS += -DUSE_ARES
-  curl_LDADD += -L$(ARES_LIB) -lcares
-endif
-ifdef SSH2
-  CFLAGS += -DUSE_LIBSSH2 -DHAVE_LIBSSH2_H
-  curl_LDADD += -L$(LIBSSH2_PATH)/win32 -lssh2
-endif
-ifdef SSL
-  INCLUDES += -I"$(OPENSSL_PATH)/outinc"
-  CFLAGS += -DUSE_SSLEAY -DHAVE_OPENSSL_ENGINE_H
-  ifdef DYN
-    curl_LDADD += -L$(OPENSSL_PATH)/out -leay32 -lssl32
-  else
-    curl_LDADD += -L$(OPENSSL_PATH)/out -lssl -lcrypto -lgdi32
-  endif
-endif
-ifdef ZLIB
-  INCLUDES += -I"$(ZLIB_PATH)"
-  CFLAGS += -DHAVE_LIBZ -DHAVE_ZLIB_H
-  curl_LDADD += -L$(ZLIB_PATH) -lz
-endif
-ifdef SSPI
-  CFLAGS += -DUSE_WINDOWS_SSPI
-endif
-ifdef IPV6
-  CFLAGS += -DENABLE_IPV6
-endif
-ifdef LDAPS
-  CFLAGS += -DHAVE_LDAP_SSL
-endif
-ifdef USE_LDAP_NOVELL
-  CFLAGS += -DCURL_HAS_NOVELL_LDAPSDK
-  curl_LDADD += -L"$(LDAP_SDK)/lib/mscvc" -lldapsdk -lldapssl -lldapx
-endif
-ifdef USE_LDAP_OPENLDAP
-  CFLAGS += -DCURL_HAS_OPENLDAP_LDAPSDK
-  curl_LDADD += -L"$(LDAP_SDK)/lib" -lldap -llber
-endif
-ifndef USE_LDAP_NOVELL
-ifndef USE_LDAP_OPENLDAP
-curl_LDADD += -lwldap32
-endif
-endif
-curl_LDADD += -lws2_32
-COMPILE = $(CC) $(INCLUDES) $(CFLAGS)
-
-# Makefile.inc provides the check_PROGRAMS and COMPLICATED_EXAMPLES defines
-include Makefile.inc
-
-example_PROGRAMS := $(patsubst %,%.exe,$(strip $(check_PROGRAMS)))
-
-.SUFFIXES: .rc .res .o .exe
-
-
-all: $(example_PROGRAMS)
-
-.o.exe: $(curl_DEPENDENCIES)
-	$(LINK) $< $(curl_LDADD)
-
-.c.o:
-	$(COMPILE) -c $<
-
-.rc.res:
-	$(RC) $(RCFLAGS) $< -o $@
-
-clean:
-	$(RM) $(example_PROGRAMS)
-
-
diff --git a/src/other/curl/docs/examples/README b/src/other/curl/docs/examples/README
deleted file mode 100644
index d6c4785..0000000
--- a/src/other/curl/docs/examples/README
+++ /dev/null
@@ -1,76 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-This directory is for libcurl programming examples. They are meant to show
-some simple steps on how you can build your own application to take full
-advantage of libcurl.
-
-If you end up with other small but still useful example sources, please mail
-them for submission in future packages and on the web site.
-
-BUILDING
-
-The Makefile.example is an example makefile that could be used to build these
-examples. Just edit the file according to your system and requirements first.
-
-Most examples should build fine using a command line like this:
-
-  $ `curl-config --cc --cflags --libs` -o example example.c
-
-Some compilers don't like having the arguments in this order but instead
-want you do reorganize them like:
-
-  $ `curl-config --cc` -o example example.c `curl-config --cflags --libs`
-
-*PLEASE* do not use the curl.haxx.se site as a test target for your libcurl
-applications/experiments. Even if some of the examples use that site as a URL
-at some places, it doesn't mean that the URLs work or that we expect you to
-actually torture our web site with your tests!  Thanks.
-
-EXAMPLES
-
-anyauthput.c   - HTTP PUT using "any" authentication method
-cacertinmem.c  - Use a built-in PEM certificate to retrieve a https page
-cookie_interface.c - shows usage of simple cookie interface
-curlgtk.c      - download using a GTK progress bar
-curlx.c        - getting file info from the remote cert data
-debug.c        - showing how to use the debug callback
-fileupload.c   - uploading to a file:// URL
-fopen.c        - fopen() layer that supports opening URLs and files
-ftpget.c       - simple getting a file from FTP
-ftpgetresp.c   - get the response strings from the FTP server
-ftpupload.c    - upload a file to an FTP server
-ftpuploadresume.c - resume an upload to an FTP server
-getinfo.c      - get the Content-Type from the recent transfer
-getinmemory.c  - download a file to memory only
-ghiper.c       - curl_multi_socket() using code with glib-2
-hiperfifo.c    - downloads all URLs written to the fifo, using
-                 curl_multi_socket() and libevent
-htmltidy.c     - download a document and use libtidy to parse the HTML
-htmltitle.cc   - download a HTML file and extract the <title> tag from a HTML
-                 page using libxml
-http-post.c    - HTTP POST
-httpput.c      - HTTP PUT a local file
-https.c        - simple HTTPS transfer
-multi-app.c    - a multi-interface app
-multi-debugcallback.c - a multi-interface app using the debug callback
-multi-double.c - a multi-interface app doing two simultaneous transfers
-multi-post.c   - a multi-interface app doing a multipart formpost
-multi-single.c - a multi-interface app getting a single file
-multithread.c  - an example using multi-treading transferring multiple files
-opensslthreadlock.c - show how to do locking when using OpenSSL multi-threaded
-persistant.c   - request two URLs with a persistent connection
-post-callback.c - send a HTTP POST using a callback
-postit2.c      - send a HTTP multipart formpost
-sampleconv.c   - showing how a program on a non-ASCII platform would invoke
-                 callbacks to do its own codeset conversions instead of using
-                 the built-in iconv functions in libcurl
-sepheaders.c   - download headers to a separate file
-simple.c       - the most simple download a URL source
-simplepost.c   - HTTP POST
-simplessl.c    - HTTPS example with certificates many options set
-synctime.c     - Sync local time by extracting date from remote HTTP servers
-10-at-a-time.c - Download many files simultaneously, 10 at a time.
diff --git a/src/other/curl/docs/examples/anyauthput.c b/src/other/curl/docs/examples/anyauthput.c
deleted file mode 100644
index cec9fed..0000000
--- a/src/other/curl/docs/examples/anyauthput.c
+++ /dev/null
@@ -1,158 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <fcntl.h>
-#ifdef WIN32
-#  include <io.h>
-#else
-#  ifdef __VMS
-     typedef int intptr_t;
-#  else
-#    include <stdint.h>
-#  endif
-#  include <unistd.h>
-#endif
-#include <sys/types.h>
-#include <sys/stat.h>
-
-#ifdef _MSC_VER
-#  ifdef _WIN64
-     typedef __int64 intptr_t;
-#  else
-     typedef int intptr_t;
-#  endif
-#endif
-
-#include <curl/curl.h>
-
-#if LIBCURL_VERSION_NUM < 0x070c03
-#error "upgrade your libcurl to no less than 7.12.3"
-#endif
-
-#ifndef TRUE
-#define TRUE 1
-#endif
-
-/*
- * This example shows a HTTP PUT operation with authentiction using "any"
- * type. It PUTs a file given as a command line argument to the URL also given
- * on the command line.
- *
- * Since libcurl 7.12.3, using "any" auth and POST/PUT requires a set ioctl
- * function.
- *
- * This example also uses its own read callback.
- */
-
-/* ioctl callback function */
-static curlioerr my_ioctl(CURL *handle, curliocmd cmd, void *userp)
-{
-  intptr_t fd = (intptr_t)userp;
-
-  (void)handle; /* not used in here */
-
-  switch(cmd) {
-  case CURLIOCMD_RESTARTREAD:
-    /* mr libcurl kindly asks as to rewind the read data stream to start */
-    if(-1 == lseek(fd, 0, SEEK_SET))
-      /* couldn't rewind */
-      return CURLIOE_FAILRESTART;
-
-    break;
-
-  default: /* ignore unknown commands */
-    return CURLIOE_UNKNOWNCMD;
-  }
-  return CURLIOE_OK; /* success! */
-}
-
-/* read callback function, fread() look alike */
-static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *stream)
-{
-  size_t retcode;
-
-  intptr_t fd = (intptr_t)stream;
-
-  retcode = read(fd, ptr, size * nmemb);
-
-  fprintf(stderr, "*** We read %d bytes from file\n", retcode);
-
-  return retcode;
-}
-
-int main(int argc, char **argv)
-{
-  CURL *curl;
-  CURLcode res;
-  intptr_t hd ;
-  struct stat file_info;
-
-  char *file;
-  char *url;
-
-  if(argc < 3)
-    return 1;
-
-  file= argv[1];
-  url = argv[2];
-
-  /* get the file size of the local file */
-  hd = open(file, O_RDONLY) ;
-  fstat(hd, &file_info);
-
-  /* In windows, this will init the winsock stuff */
-  curl_global_init(CURL_GLOBAL_ALL);
-
-  /* get a curl handle */
-  curl = curl_easy_init();
-  if(curl) {
-    /* we want to use our own read function */
-    curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback);
-
-    /* which file to upload */
-    curl_easy_setopt(curl, CURLOPT_READDATA, (void*)hd);
-
-    /* set the ioctl function */
-    curl_easy_setopt(curl, CURLOPT_IOCTLFUNCTION, my_ioctl);
-
-    /* pass the file descriptor to the ioctl callback as well */
-    curl_easy_setopt(curl, CURLOPT_IOCTLDATA, (void*)hd);
-
-    /* enable "uploading" (which means PUT when doing HTTP) */
-    curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L) ;
-
-    /* specify target URL, and note that this URL should also include a file
-       name, not only a directory (as you can do with GTP uploads) */
-    curl_easy_setopt(curl,CURLOPT_URL, url);
-
-    /* and give the size of the upload, this supports large file sizes
-       on systems that have general support for it */
-    curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE,
-                     (curl_off_t)file_info.st_size);
-
-    /* tell libcurl we can use "any" auth, which lets the lib pick one, but it
-       also costs one extra round-trip and possibly sending of all the PUT
-       data twice!!! */
-    curl_easy_setopt(curl, CURLOPT_HTTPAUTH, (long)CURLAUTH_ANY);
-
-    /* set user name and password for the authentication */
-    curl_easy_setopt(curl, CURLOPT_USERPWD, "user:password");
-
-    /* Now run off and do what you've been told! */
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  close(hd); /* close the local file */
-
-  curl_global_cleanup();
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/cacertinmem.c b/src/other/curl/docs/examples/cacertinmem.c
deleted file mode 100644
index fc3c9b1..0000000
--- a/src/other/curl/docs/examples/cacertinmem.c
+++ /dev/null
@@ -1,138 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * Example using a "in core" PEM certificate to retrieve a https page.
- * Written by Theo Borm
- */
-
-/* on a netBSD system with OPENSSL& LIBCURL installed from
- * pkgsrc (using default paths) this program can be compiled using:
- * gcc -I/usr/pkg/include -L/usr/pkg/lib -lcurl -Wl,-R/usr/pkg/lib -lssl
- * -lcrypto -lz -o curlcacerttest curlcacerttest.c
- * on other operating systems you may want to change paths to headers
- * and libraries
-*/
-#include <openssl/ssl.h>
-#include <curl/curl.h>
-#include <stdio.h>
-
-size_t writefunction( void *ptr, size_t size, size_t nmemb, void *stream)
-{
-  fwrite(ptr,size,nmemb,stream);
-  return(nmemb*size);
-}
-
-static CURLcode sslctx_function(CURL * curl, void * sslctx, void * parm)
-{
-  X509_STORE * store;
-  X509 * cert=NULL;
-  BIO * bio;
-  char * mypem = /* www.cacert.org */
-    "-----BEGIN CERTIFICATE-----\n"\
-    "MIIHPTCCBSWgAwIBAgIBADANBgkqhkiG9w0BAQQFADB5MRAwDgYDVQQKEwdSb290\n"\
-    "IENBMR4wHAYDVQQLExVodHRwOi8vd3d3LmNhY2VydC5vcmcxIjAgBgNVBAMTGUNB\n"\
-    "IENlcnQgU2lnbmluZyBBdXRob3JpdHkxITAfBgkqhkiG9w0BCQEWEnN1cHBvcnRA\n"\
-    "Y2FjZXJ0Lm9yZzAeFw0wMzAzMzAxMjI5NDlaFw0zMzAzMjkxMjI5NDlaMHkxEDAO\n"\
-    "BgNVBAoTB1Jvb3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEi\n"\
-    "MCAGA1UEAxMZQ0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJ\n"\
-    "ARYSc3VwcG9ydEBjYWNlcnQub3JnMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC\n"\
-    "CgKCAgEAziLA4kZ97DYoB1CW8qAzQIxL8TtmPzHlawI229Z89vGIj053NgVBlfkJ\n"\
-    "8BLPRoZzYLdufujAWGSuzbCtRRcMY/pnCujW0r8+55jE8Ez64AO7NV1sId6eINm6\n"\
-    "zWYyN3L69wj1x81YyY7nDl7qPv4coRQKFWyGhFtkZip6qUtTefWIonvuLwphK42y\n"\
-    "fk1WpRPs6tqSnqxEQR5YYGUFZvjARL3LlPdCfgv3ZWiYUQXw8wWRBB0bF4LsyFe7\n"\
-    "w2t6iPGwcswlWyCR7BYCEo8y6RcYSNDHBS4CMEK4JZwFaz+qOqfrU0j36NK2B5jc\n"\
-    "G8Y0f3/JHIJ6BVgrCFvzOKKrF11myZjXnhCLotLddJr3cQxyYN/Nb5gznZY0dj4k\n"\
-    "epKwDpUeb+agRThHqtdB7Uq3EvbXG4OKDy7YCbZZ16oE/9KTfWgu3YtLq1i6L43q\n"\
-    "laegw1SJpfvbi1EinbLDvhG+LJGGi5Z4rSDTii8aP8bQUWWHIbEZAWV/RRyH9XzQ\n"\
-    "QUxPKZgh/TMfdQwEUfoZd9vUFBzugcMd9Zi3aQaRIt0AUMyBMawSB3s42mhb5ivU\n"\
-    "fslfrejrckzzAeVLIL+aplfKkQABi6F1ITe1Yw1nPkZPcCBnzsXWWdsC4PDSy826\n"\
-    "YreQQejdIOQpvGQpQsgi3Hia/0PsmBsJUUtaWsJx8cTLc6nloQsCAwEAAaOCAc4w\n"\
-    "ggHKMB0GA1UdDgQWBBQWtTIb1Mfz4OaO873SsDrusjkY0TCBowYDVR0jBIGbMIGY\n"\
-    "gBQWtTIb1Mfz4OaO873SsDrusjkY0aF9pHsweTEQMA4GA1UEChMHUm9vdCBDQTEe\n"\
-    "MBwGA1UECxMVaHR0cDovL3d3dy5jYWNlcnQub3JnMSIwIAYDVQQDExlDQSBDZXJ0\n"\
-    "IFNpZ25pbmcgQXV0aG9yaXR5MSEwHwYJKoZIhvcNAQkBFhJzdXBwb3J0QGNhY2Vy\n"\
-    "dC5vcmeCAQAwDwYDVR0TAQH/BAUwAwEB/zAyBgNVHR8EKzApMCegJaAjhiFodHRw\n"\
-    "czovL3d3dy5jYWNlcnQub3JnL3Jldm9rZS5jcmwwMAYJYIZIAYb4QgEEBCMWIWh0\n"\
-    "dHBzOi8vd3d3LmNhY2VydC5vcmcvcmV2b2tlLmNybDA0BglghkgBhvhCAQgEJxYl\n"\
-    "aHR0cDovL3d3dy5jYWNlcnQub3JnL2luZGV4LnBocD9pZD0xMDBWBglghkgBhvhC\n"\
-    "AQ0ESRZHVG8gZ2V0IHlvdXIgb3duIGNlcnRpZmljYXRlIGZvciBGUkVFIGhlYWQg\n"\
-    "b3ZlciB0byBodHRwOi8vd3d3LmNhY2VydC5vcmcwDQYJKoZIhvcNAQEEBQADggIB\n"\
-    "ACjH7pyCArpcgBLKNQodgW+JapnM8mgPf6fhjViVPr3yBsOQWqy1YPaZQwGjiHCc\n"\
-    "nWKdpIevZ1gNMDY75q1I08t0AoZxPuIrA2jxNGJARjtT6ij0rPtmlVOKTV39O9lg\n"\
-    "18p5aTuxZZKmxoGCXJzN600BiqXfEVWqFcofN8CCmHBh22p8lqOOLlQ+TyGpkO/c\n"\
-    "gr/c6EWtTZBzCDyUZbAEmXZ/4rzCahWqlwQ3JNgelE5tDlG+1sSPypZt90Pf6DBl\n"\
-    "Jzt7u0NDY8RD97LsaMzhGY4i+5jhe1o+ATc7iwiwovOVThrLm82asduycPAtStvY\n"\
-    "sONvRUgzEv/+PDIqVPfE94rwiCPCR/5kenHA0R6mY7AHfqQv0wGP3J8rtsYIqQ+T\n"\
-    "SCX8Ev2fQtzzxD72V7DX3WnRBnc0CkvSyqD/HMaMyRa+xMwyN2hzXwj7UfdJUzYF\n"\
-    "CpUCTPJ5GhD22Dp1nPMd8aINcGeGG7MW9S/lpOt5hvk9C8JzC6WZrG/8Z7jlLwum\n"\
-    "GCSNe9FINSkYQKyTYOGWhlC0elnYjyELn8+CkcY7v2vcB5G5l1YjqrZslMZIBjzk\n"\
-    "zk6q5PYvCdxTby78dOs6Y5nCpqyJvKeyRKANihDjbPIky/qbn3BHLt4Ui9SyIAmW\n"\
-    "omTxJBzcoTWcFbLUvFUufQb1nA5V9FrWk9p2rSVzTMVD\n"\
-    "-----END CERTIFICATE-----\n";
-  /* get a BIO */
-  bio=BIO_new_mem_buf(mypem, -1);
-  /* use it to read the PEM formatted certificate from memory into an X509
-   * structure that SSL can use
-   */
-  PEM_read_bio_X509(bio, &cert, 0, NULL);
-  if (cert == NULL)
-    printf("PEM_read_bio_X509 failed...\n");
-
-  /* get a pointer to the X509 certificate store (which may be empty!) */
-  store=SSL_CTX_get_cert_store((SSL_CTX *)sslctx);
-
-  /* add our certificate to this store */
-  if (X509_STORE_add_cert(store, cert)==0)
-    printf("error adding certificate\n");
-
-  /* all set to go */
-  return CURLE_OK ;
-}
-
-int main(void)
-{
-  CURL * ch;
-  CURLcode rv;
-
-  rv=curl_global_init(CURL_GLOBAL_ALL);
-  ch=curl_easy_init();
-  rv=curl_easy_setopt(ch,CURLOPT_VERBOSE, 0L);
-  rv=curl_easy_setopt(ch,CURLOPT_HEADER, 0L);
-  rv=curl_easy_setopt(ch,CURLOPT_NOPROGRESS, 1L);
-  rv=curl_easy_setopt(ch,CURLOPT_NOSIGNAL, 1L);
-  rv=curl_easy_setopt(ch,CURLOPT_WRITEFUNCTION, *writefunction);
-  rv=curl_easy_setopt(ch,CURLOPT_WRITEDATA, stdout);
-  rv=curl_easy_setopt(ch,CURLOPT_HEADERFUNCTION, *writefunction);
-  rv=curl_easy_setopt(ch,CURLOPT_WRITEHEADER, stderr);
-  rv=curl_easy_setopt(ch,CURLOPT_SSLCERTTYPE,"PEM");
-  rv=curl_easy_setopt(ch,CURLOPT_SSL_VERIFYPEER,1L);
-  rv=curl_easy_setopt(ch, CURLOPT_URL, "https://www.cacert.org/");
-
-  /* first try: retrieve page without cacerts' certificate -> will fail
-   */
-  rv=curl_easy_perform(ch);
-  if (rv==CURLE_OK)
-    printf("*** transfer succeeded ***\n");
-  else
-    printf("*** transfer failed ***\n");
-
-  /* second try: retrieve page using cacerts' certificate -> will succeed
-   * load the certificate by installing a function doing the nescessary
-   * "modifications" to the SSL CONTEXT just before link init
-   */
-  rv=curl_easy_setopt(ch,CURLOPT_SSL_CTX_FUNCTION, *sslctx_function);
-  rv=curl_easy_perform(ch);
-  if (rv==CURLE_OK)
-    printf("*** transfer succeeded ***\n");
-  else
-    printf("*** transfer failed ***\n");
-
-  curl_easy_cleanup(ch);
-  curl_global_cleanup();
-  return rv;
-}
diff --git a/src/other/curl/docs/examples/certinfo.c b/src/other/curl/docs/examples/certinfo.c
deleted file mode 100644
index b0e9759..0000000
--- a/src/other/curl/docs/examples/certinfo.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/*****************************************************************************
- */
-
-#include <stdio.h>
-
-#include <curl/curl.h>
-#include <curl/types.h>
-#include <curl/easy.h>
-
-static size_t wrfu(void *ptr,  size_t  size,  size_t  nmemb,  void *stream)
-{
-  return size * nmemb;
-}
-int main(int argc, char **argv)
-{
-  CURL *curl;
-  CURLcode res;
-
-  curl_global_init(CURL_GLOBAL_DEFAULT);
-
-  curl = curl_easy_init();
-  if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, "https://www.networking4all.com/");
-
-    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, wrfu);
-
-    curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
-    curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
-
-    curl_easy_setopt(curl, CURLOPT_VERBOSE, 0L);
-    curl_easy_setopt(curl, CURLOPT_CERTINFO, 1L);
-
-    res = curl_easy_perform(curl);
-
-    if(!res) {
-      struct curl_certinfo *ci = NULL;
-
-      res = curl_easy_getinfo(curl, CURLINFO_CERTINFO, &ci);
-
-      if(!res && ci) {
-        int i;
-        printf("%d certs!\n", ci->num_of_certs);
-
-        for(i=0; i<ci->num_of_certs; i++) {
-          struct curl_slist *slist;
-
-          for(slist = ci->certinfo[i]; slist; slist = slist->next)
-            printf("%s\n", slist->data);
-
-        }
-      }
-
-    }
-
-
-    curl_easy_cleanup(curl);
-  }
-
-  curl_global_cleanup();
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/chkspeed.c b/src/other/curl/docs/examples/chkspeed.c
deleted file mode 100644
index c56fe3c..0000000
--- a/src/other/curl/docs/examples/chkspeed.c
+++ /dev/null
@@ -1,163 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * Example source code to show how the callback function can be used to
- * download data into a chunk of memory instead of storing it in a file.
- * After successful download we use curl_easy_getinfo() calls to get the
- * amount of downloaded bytes, the time used for the whole download, and
- * the average download speed.
- * On Linux you can create the download test files with:
- * dd if=/dev/urandom of=file_1M.bin bs=1M count=1
- *
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-
-#include <curl/curl.h>
-#include <curl/types.h>
-#include <curl/easy.h>
-
-#define URL_BASE "http://speedtest.your.domain/"
-#define URL_1M   URL_BASE "file_1M.bin"
-#define URL_2M   URL_BASE "file_2M.bin"
-#define URL_5M   URL_BASE "file_5M.bin"
-#define URL_10M  URL_BASE "file_10M.bin"
-#define URL_20M  URL_BASE "file_20M.bin"
-#define URL_50M  URL_BASE "file_50M.bin"
-#define URL_100M URL_BASE "file_100M.bin"
-
-#define CHKSPEED_VERSION "1.0"
-
-static size_t WriteCallback(void *ptr, size_t size, size_t nmemb, void *data)
-{
-  /* we are not interested in the downloaded bytes itself,
-     so we only return the size we would have saved ... */
-  return (size_t)(size * nmemb);
-}
-
-int main(int argc, char *argv[])
-{
-  CURL *curl_handle;
-  CURLcode res;
-  int prtsep = 0, prttime = 0;
-  char *url = URL_1M;
-  char *appname = argv[0];
-
-  if (argc > 1) {
-    /* parse input parameters */
-    for (argc--, argv++; *argv; argc--, argv++) {
-      if (strncasecmp(*argv, "-", 1) == 0) {
-        if (strncasecmp(*argv, "-H", 2) == 0) {
-          fprintf(stderr,
-                  "\rUsage: %s [-m=1|2|5|10|20|50|100] [-t] [-x] [url]\n",
-                  appname);
-          exit(1);
-        } else if (strncasecmp(*argv, "-V", 2) == 0) {
-          fprintf(stderr, "\r%s %s - %s\n",
-                  appname, CHKSPEED_VERSION, curl_version());
-          exit(1);
-        } else if (strncasecmp(*argv, "-X", 2) == 0) {
-          prtsep = 1;
-        } else if (strncasecmp(*argv, "-T", 2) == 0) {
-          prttime = 1;
-        } else if (strncasecmp(*argv, "-M=", 3) == 0) {
-          int m = atoi(*argv + 3);
-          switch(m) {
-            case   1: url = URL_1M;
-                      break;
-            case   2: url = URL_2M;
-                      break;
-            case   5: url = URL_5M;
-                      break;
-            case  10: url = URL_10M;
-                      break;
-            case  20: url = URL_20M;
-                      break;
-            case  50: url = URL_50M;
-                      break;
-            case 100: url = URL_100M;
-                      break;
-            default:  fprintf(stderr, "\r%s: invalid parameter %s\n",
-                              appname, *argv + 3);
-                      exit(1);
-          }
-        } else {
-          fprintf(stderr, "\r%s: invalid or unknown option %s\n",
-                  appname, *argv);
-          exit(1);
-        }
-      } else {
-        url = *argv;
-      }
-    }
-  }
-
-  /* print separator line */
-  if (prtsep) {
-    printf("-------------------------------------------------\n");
-  }
-  /* print localtime */
-  if (prttime) {
-    time_t t = time(NULL);
-    printf("Localtime: %s", ctime(&t));
-  }
-
-  /* init libcurl */
-  curl_global_init(CURL_GLOBAL_ALL);
-
-  /* init the curl session */
-  curl_handle = curl_easy_init();
-
-  /* specify URL to get */
-  curl_easy_setopt(curl_handle, CURLOPT_URL, url);
-
-  /* send all data to this function  */
-  curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, WriteCallback);
-
-  /* some servers don't like requests that are made without a user-agent
-     field, so we provide one */
-  curl_easy_setopt(curl_handle, CURLOPT_USERAGENT,
-                   "libcurl-speedchecker/" CHKSPEED_VERSION);
-
-  /* get it! */
-  res = curl_easy_perform(curl_handle);
-
-  if(CURLE_OK == res) {
-    double val;
-
-    /* check for bytes downloaded */
-    res = curl_easy_getinfo(curl_handle, CURLINFO_SIZE_DOWNLOAD, &val);
-    if((CURLE_OK == res) && val)
-      printf("Data downloaded: %0.0f bytes.\n", val);
-
-    /* check for total download time */
-    res = curl_easy_getinfo(curl_handle, CURLINFO_TOTAL_TIME, &val);
-    if((CURLE_OK == res) && val)
-      printf("Total download time: %0.3f sec.\n", val);
-
-    /* check for average download speed */
-    res = curl_easy_getinfo(curl_handle, CURLINFO_SPEED_DOWNLOAD, &val);
-    if((CURLE_OK == res) && val)
-      printf("Average download speed: %0.3f kbyte/sec.\n", val / 1024);
-
-  } else {
-    fprintf(stderr, "Error while fetching '%s' : %s\n",
-            url, curl_easy_strerror(res));
-  }
-
-  /* cleanup curl stuff */
-  curl_easy_cleanup(curl_handle);
-
-  /* we're done with libcurl, so clean it up */
-  curl_global_cleanup();
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/cookie_interface.c b/src/other/curl/docs/examples/cookie_interface.c
deleted file mode 100644
index 27bfa39..0000000
--- a/src/other/curl/docs/examples/cookie_interface.c
+++ /dev/null
@@ -1,111 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *  This example shows usage of simple cookie interface.
- */
-
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <errno.h>
-#include <time.h>
-
-#include <curl/curl.h>
-
-static void
-print_cookies(CURL *curl)
-{
-  CURLcode res;
-  struct curl_slist *cookies;
-  struct curl_slist *nc;
-  int i;
-
-  printf("Cookies, curl knows:\n");
-  res = curl_easy_getinfo(curl, CURLINFO_COOKIELIST, &cookies);
-  if (res != CURLE_OK) {
-    fprintf(stderr, "Curl curl_easy_getinfo failed: %s\n", curl_easy_strerror(res));
-    exit(1);
-  }
-  nc = cookies, i = 1;
-  while (nc) {
-    printf("[%d]: %s\n", i, nc->data);
-    nc = nc->next;
-    i++;
-  }
-  if (i == 1) {
-    printf("(none)\n");
-  }
-  curl_slist_free_all(cookies);
-}
-
-int
-main(void)
-{
-  CURL *curl;
-  CURLcode res;
-
-  curl_global_init(CURL_GLOBAL_ALL);
-  curl = curl_easy_init();
-  if (curl) {
-    char nline[256];
-
-    curl_easy_setopt(curl, CURLOPT_URL, "http://www.google.com/"); /* google.com sets "PREF" cookie */
-    curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
-    curl_easy_setopt(curl, CURLOPT_COOKIEFILE, ""); /* just to start the cookie engine */
-    res = curl_easy_perform(curl);
-    if (res != CURLE_OK) {
-      fprintf(stderr, "Curl perform failed: %s\n", curl_easy_strerror(res));
-      return 1;
-    }
-
-    print_cookies(curl);
-
-    printf("Erasing curl's knowledge of cookies!\n");
-    curl_easy_setopt(curl, CURLOPT_COOKIELIST, "ALL");
-
-    print_cookies(curl);
-
-    printf("-----------------------------------------------\n"
-           "Setting a cookie \"PREF\" via cookie interface:\n");
-#ifdef WIN32
-#define snprintf _snprintf
-#endif
-    /* Netscape format cookie */
-    snprintf(nline, sizeof(nline), "%s\t%s\t%s\t%s\t%lu\t%s\t%s",
-      ".google.com", "TRUE", "/", "FALSE", time(NULL) + 31337, "PREF", "hello google, i like you very much!");
-    res = curl_easy_setopt(curl, CURLOPT_COOKIELIST, nline);
-    if (res != CURLE_OK) {
-      fprintf(stderr, "Curl curl_easy_setopt failed: %s\n", curl_easy_strerror(res));
-      return 1;
-    }
-
-    /* HTTP-header style cookie */
-    snprintf(nline, sizeof(nline),
-      "Set-Cookie: OLD_PREF=3d141414bf4209321; "
-      "expires=Sun, 17-Jan-2038 19:14:07 GMT; path=/; domain=.google.com");
-    res = curl_easy_setopt(curl, CURLOPT_COOKIELIST, nline);
-    if (res != CURLE_OK) {
-      fprintf(stderr, "Curl curl_easy_setopt failed: %s\n", curl_easy_strerror(res));
-      return 1;
-    }
-
-    print_cookies(curl);
-
-    res = curl_easy_perform(curl);
-    if (res != CURLE_OK) {
-      fprintf(stderr, "Curl perform failed: %s\n", curl_easy_strerror(res));
-      return 1;
-    }
-  }
-  else {
-    fprintf(stderr, "Curl init failed!\n");
-    return 1;
-  }
-
-  curl_global_cleanup();
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/curlgtk.c b/src/other/curl/docs/examples/curlgtk.c
deleted file mode 100644
index 2c44280..0000000
--- a/src/other/curl/docs/examples/curlgtk.c
+++ /dev/null
@@ -1,108 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-/* Copyright (c) 2000 David Odin (aka DindinX) for MandrakeSoft */
-/* an attempt to use the curl library in concert with a gtk-threaded application */
-
-#include <stdio.h>
-#include <gtk/gtk.h>
-
-#include <curl/curl.h>
-#include <curl/types.h> /* new for v7 */
-#include <curl/easy.h> /* new for v7 */
-
-GtkWidget *Bar;
-
-size_t my_write_func(void *ptr, size_t size, size_t nmemb, FILE *stream)
-{
-  return fwrite(ptr, size, nmemb, stream);
-}
-
-size_t my_read_func(void *ptr, size_t size, size_t nmemb, FILE *stream)
-{
-  return fread(ptr, size, nmemb, stream);
-}
-
-int my_progress_func(GtkWidget *bar,
-                     double t, /* dltotal */
-                     double d, /* dlnow */
-                     double ultotal,
-                     double ulnow)
-{
-/*  printf("%d / %d (%g %%)\n", d, t, d*100.0/t);*/
-  gdk_threads_enter();
-  gtk_progress_set_value(GTK_PROGRESS(bar), d*100.0/t);
-  gdk_threads_leave();
-  return 0;
-}
-
-void *my_thread(void *ptr)
-{
-  CURL *curl;
-  CURLcode res;
-  FILE *outfile;
-  gchar *url = ptr;
-
-  curl = curl_easy_init();
-  if(curl)
-  {
-    outfile = fopen("test.curl", "w");
-
-    curl_easy_setopt(curl, CURLOPT_URL, url);
-    curl_easy_setopt(curl, CURLOPT_WRITEDATA, outfile);
-    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, my_write_func);
-    curl_easy_setopt(curl, CURLOPT_READFUNCTION, my_read_func);
-    curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 0L);
-    curl_easy_setopt(curl, CURLOPT_PROGRESSFUNCTION, my_progress_func);
-    curl_easy_setopt(curl, CURLOPT_PROGRESSDATA, Bar);
-
-    res = curl_easy_perform(curl);
-
-    fclose(outfile);
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-
-  return NULL;
-}
-
-int main(int argc, char **argv)
-{
-  GtkWidget *Window, *Frame, *Frame2;
-  GtkAdjustment *adj;
-
-  /* Must initialize libcurl before any threads are started */
-  curl_global_init(CURL_GLOBAL_ALL);
-
-  /* Init thread */
-  g_thread_init(NULL);
-
-  gtk_init(&argc, &argv);
-  Window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
-  Frame = gtk_frame_new(NULL);
-  gtk_frame_set_shadow_type(GTK_FRAME(Frame), GTK_SHADOW_OUT);
-  gtk_container_add(GTK_CONTAINER(Window), Frame);
-  Frame2 = gtk_frame_new(NULL);
-  gtk_frame_set_shadow_type(GTK_FRAME(Frame2), GTK_SHADOW_IN);
-  gtk_container_add(GTK_CONTAINER(Frame), Frame2);
-  gtk_container_set_border_width(GTK_CONTAINER(Frame2), 5);
-  adj = (GtkAdjustment*)gtk_adjustment_new(0, 0, 100, 0, 0, 0);
-  Bar = gtk_progress_bar_new_with_adjustment(adj);
-  gtk_container_add(GTK_CONTAINER(Frame2), Bar);
-  gtk_widget_show_all(Window);
-
-  if (!g_thread_create(&my_thread, argv[1], FALSE, NULL) != 0)
-    g_warning("can't create the thread");
-
-
-  gdk_threads_enter();
-  gtk_main();
-  gdk_threads_leave();
-  return 0;
-}
-
diff --git a/src/other/curl/docs/examples/curlx.c b/src/other/curl/docs/examples/curlx.c
deleted file mode 100644
index 62bdfe4..0000000
--- a/src/other/curl/docs/examples/curlx.c
+++ /dev/null
@@ -1,514 +0,0 @@
-/*
-  curlx.c  Authors: Peter Sylvester, Jean-Paul Merlin
-
-  This is a little program to demonstrate the usage of
-
-  - an ssl initialisation callback setting a user key and trustbases
-  coming from a pkcs12 file
-  - using an ssl application callback to find a URI in the
-  certificate presented during ssl session establishment.
-
-*/
-
-
-/*
- * Copyright (c) 2003 The OpenEvidence Project.  All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions, the following disclaimer,
- *    and the original OpenSSL and SSLeay Licences below.
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions, the following disclaimer
- *    and the original OpenSSL and SSLeay Licences below in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * 3. All advertising materials mentioning features or use of this
- *    software must display the following acknowledgments:
- *    "This product includes software developed by the Openevidence Project
- *    for use in the OpenEvidence Toolkit. (http://www.openevidence.org/)"
- *    This product includes software developed by the OpenSSL Project
- *    for use in the OpenSSL Toolkit (http://www.openssl.org/)"
- *    This product includes cryptographic software written by Eric Young
- *    (eay at cryptsoft.com).  This product includes software written by Tim
- *    Hudson (tjh at cryptsoft.com)."
- *
- * 4. The names "OpenEvidence Toolkit" and "OpenEvidence Project" must not be
- *    used to endorse or promote products derived from this software without
- *    prior written permission. For written permission, please contact
- *    openevidence-core at openevidence.org.
- *
- * 5. Products derived from this software may not be called "OpenEvidence"
- *    nor may "OpenEvidence" appear in their names without prior written
- *    permission of the OpenEvidence Project.
- *
- * 6. Redistributions of any form whatsoever must retain the following
- *    acknowledgments:
- *    "This product includes software developed by the OpenEvidence Project
- *    for use in the OpenEvidence Toolkit (http://www.openevidence.org/)
- *    This product includes software developed by the OpenSSL Project
- *    for use in the OpenSSL Toolkit (http://www.openssl.org/)"
- *    This product includes cryptographic software written by Eric Young
- *    (eay at cryptsoft.com).  This product includes software written by Tim
- *    Hudson (tjh at cryptsoft.com)."
- *
- * THIS SOFTWARE IS PROVIDED BY THE OpenEvidence PROJECT ``AS IS'' AND ANY
- * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE OpenEvidence PROJECT OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- * ====================================================================
- *
- * This product includes software developed by the OpenSSL Project
- * for use in the OpenSSL Toolkit (http://www.openssl.org/)
- * This product includes cryptographic software written by Eric Young
- * (eay at cryptsoft.com).  This product includes software written by Tim
- * Hudson (tjh at cryptsoft.com).
- *
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <curl/curl.h>
-#include <openssl/x509v3.h>
-#include <openssl/x509_vfy.h>
-#include <openssl/crypto.h>
-#include <openssl/lhash.h>
-#include <openssl/objects.h>
-#include <openssl/err.h>
-#include <openssl/evp.h>
-#include <openssl/x509.h>
-#include <openssl/pkcs12.h>
-#include <openssl/bio.h>
-#include <openssl/ssl.h>
-
-static const char *curlx_usage[]={
-  "usage: curlx args\n",
-  " -p12 arg         - tia  file ",
-  " -envpass arg     - environement variable which content the tia private key password",
-  " -out arg         - output file (response)- default stdout",
-  " -in arg          - input file (request)- default stdin",
-  " -connect arg     - URL of the server for the connection ex: www.openevidence.org",
-  " -mimetype arg    - MIME type for data in ex : application/timestamp-query or application/dvcs -default application/timestamp-query",
-  " -acceptmime arg  - MIME type acceptable for the response ex : application/timestamp-response or application/dvcs -default none",
-  " -accesstype arg  - an Object identifier in an AIA/SIA method, e.g. AD_DVCS or ad_timestamping",
-  NULL
-};
-
-/*
-
-./curlx -p12 psy.p12 -envpass XX -in request -verbose -accesstype AD_DVCS
--mimetype application/dvcs -acceptmime application/dvcs -out response
-
-*/
-
-/*
- * We use this ZERO_NULL to avoid picky compiler warnings,
- * when assigning a NULL pointer to a function pointer var.
- */
-
-#define ZERO_NULL 0
-
-/* This is a context that we pass to all callbacks */
-
-typedef struct sslctxparm_st {
-  unsigned char * p12file ;
-  const char * pst ;
-  PKCS12 * p12 ;
-  EVP_PKEY * pkey ;
-  X509 * usercert ;
-  STACK_OF(X509) * ca ;
-  CURL * curl;
-  BIO * errorbio;
-  int accesstype ;
-  int verbose;
-
-} sslctxparm;
-
-/* some helper function. */
-
-static char *i2s_ASN1_IA5STRING( ASN1_IA5STRING *ia5)
-{
-  char *tmp;
-  if(!ia5 || !ia5->length)
-    return NULL;
-  tmp = OPENSSL_malloc(ia5->length + 1);
-  memcpy(tmp, ia5->data, ia5->length);
-  tmp[ia5->length] = 0;
-  return tmp;
-}
-
-/* A conveniance routine to get an access URI. */
-
-static unsigned char *my_get_ext(X509 * cert, const int type, int extensiontype) {
-
-  int i;
-  STACK_OF(ACCESS_DESCRIPTION) * accessinfo ;
-  accessinfo =  X509_get_ext_d2i(cert, extensiontype, NULL, NULL) ;
-
-  if (!sk_ACCESS_DESCRIPTION_num(accessinfo))
-    return NULL;
-  for (i = 0; i < sk_ACCESS_DESCRIPTION_num(accessinfo); i++) {
-    ACCESS_DESCRIPTION * ad = sk_ACCESS_DESCRIPTION_value(accessinfo, i);
-    if (OBJ_obj2nid(ad->method) == type) {
-      if (ad->location->type == GEN_URI) {
-        return i2s_ASN1_IA5STRING(ad->location->d.ia5);
-      }
-      return NULL;
-    }
-  }
-  return NULL;
-}
-
-/* This is an application verification call back, it does not
-   perform any addition verification but tries to find a URL
-   in the presented certificat. If found, this will become
-   the URL to be used in the POST.
-*/
-
-static int ssl_app_verify_callback(X509_STORE_CTX *ctx, void *arg)
-{
-  sslctxparm * p = (sslctxparm *) arg;
-  int ok;
-
-  if (p->verbose > 2)
-    BIO_printf(p->errorbio,"entering ssl_app_verify_callback\n");
-
-  if ((ok= X509_verify_cert(ctx)) && ctx->cert) {
-    unsigned char * accessinfo ;
-    if (p->verbose > 1)
-      X509_print_ex(p->errorbio,ctx->cert,0,0);
-
-    if (accessinfo = my_get_ext(ctx->cert,p->accesstype ,NID_sinfo_access)) {
-      if (p->verbose)
-        BIO_printf(p->errorbio,"Setting URL from SIA to: %s\n", accessinfo);
-
-      curl_easy_setopt(p->curl, CURLOPT_URL,accessinfo);
-    }
-    else if (accessinfo = my_get_ext(ctx->cert,p->accesstype,
-                                     NID_info_access)) {
-      if (p->verbose)
-        BIO_printf(p->errorbio,"Setting URL from AIA to: %s\n", accessinfo);
-
-      curl_easy_setopt(p->curl, CURLOPT_URL,accessinfo);
-    }
-  }
-  if (p->verbose > 2)
-    BIO_printf(p->errorbio,"leaving ssl_app_verify_callback with %d\n", ok);
-  return(ok);
-}
-
-
-/* This is an example of an curl SSL initialisation call back. The callback sets:
-   - a private key and certificate
-   - a trusted ca certificate
-   - a preferred cipherlist
-   - an application verification callback (the function above)
-*/
-
-static CURLcode sslctxfun(CURL * curl, void * sslctx, void * parm) {
-
-  sslctxparm * p = (sslctxparm *) parm;
-  SSL_CTX * ctx = (SSL_CTX *) sslctx ;
-
-  if (!SSL_CTX_use_certificate(ctx,p->usercert)) {
-    BIO_printf(p->errorbio, "SSL_CTX_use_certificate problem\n"); goto err;
-  }
-  if (!SSL_CTX_use_PrivateKey(ctx,p->pkey)) {
-    BIO_printf(p->errorbio, "SSL_CTX_use_PrivateKey\n"); goto err;
-  }
-
-  if (!SSL_CTX_check_private_key(ctx)) {
-    BIO_printf(p->errorbio, "SSL_CTX_check_private_key\n"); goto err;
-  }
-
-  SSL_CTX_set_quiet_shutdown(ctx,1);
-  SSL_CTX_set_cipher_list(ctx,"RC4-MD5");
-  SSL_CTX_set_mode(ctx, SSL_MODE_AUTO_RETRY);
-
-  X509_STORE_add_cert(ctx->cert_store,sk_X509_value(p->ca,
-                                                    sk_X509_num(p->ca)-1));
-
-  SSL_CTX_set_verify_depth(ctx,2);
-
-  SSL_CTX_set_verify(ctx,SSL_VERIFY_PEER,ZERO_NULL);
-
-  SSL_CTX_set_cert_verify_callback(ctx, ssl_app_verify_callback, parm);
-
-
-  return CURLE_OK ;
-  err:
-  ERR_print_errors(p->errorbio);
-  return CURLE_SSL_CERTPROBLEM;
-
-}
-
-int main(int argc, char **argv) {
-
-  BIO* in=NULL;
-  BIO* out=NULL;
-
-  char * outfile = NULL;
-  char * infile = NULL ;
-
-  int tabLength=100;
-  char *binaryptr;
-  char* mimetype;
-  char* mimetypeaccept=NULL;
-  char* contenttype;
-  const char** pp;
-  unsigned char* hostporturl = NULL;
-  BIO * p12bio ;
-  char **args = argv + 1;
-  unsigned char * serverurl;
-  sslctxparm p;
-  char *response;
-
-  CURLcode res;
-  struct curl_slist * headers=NULL;
-  int badarg=0;
-
-  binaryptr = malloc(tabLength);
-
-  p.verbose = 0;
-  p.errorbio = BIO_new_fp (stderr, BIO_NOCLOSE);
-
-  curl_global_init(CURL_GLOBAL_DEFAULT);
-
-  /* we need some more for the P12 decoding */
-
-  OpenSSL_add_all_ciphers();
-  OpenSSL_add_all_digests();
-  ERR_load_crypto_strings();
-
-
-
-  while (*args && *args[0] == '-') {
-    if (!strcmp (*args, "-in")) {
-      if (args[1]) {
-        infile=*(++args);
-      } else badarg=1;
-    } else if (!strcmp (*args, "-out")) {
-      if (args[1]) {
-        outfile=*(++args);
-      } else badarg=1;
-    } else if (!strcmp (*args, "-p12")) {
-      if (args[1]) {
-        p.p12file = *(++args);
-      } else badarg=1;
-    } else if (strcmp(*args,"-envpass") == 0) {
-      if (args[1]) {
-        p.pst = getenv(*(++args));
-      } else badarg=1;
-    } else if (strcmp(*args,"-connect") == 0) {
-      if (args[1]) {
-        hostporturl = *(++args);
-      } else badarg=1;
-    } else if (strcmp(*args,"-mimetype") == 0) {
-      if (args[1]) {
-        mimetype = *(++args);
-      } else badarg=1;
-    } else if (strcmp(*args,"-acceptmime") == 0) {
-      if (args[1]) {
-        mimetypeaccept = *(++args);
-      } else badarg=1;
-    } else if (strcmp(*args,"-accesstype") == 0) {
-      if (args[1]) {
-        if ((p.accesstype = OBJ_obj2nid(OBJ_txt2obj(*++args,0))) == 0) badarg=1;
-      } else badarg=1;
-    } else if (strcmp(*args,"-verbose") == 0) {
-      p.verbose++;
-    } else badarg=1;
-    args++;
-  }
-
-  if (mimetype==NULL || mimetypeaccept == NULL) badarg = 1;
-
-  if (badarg) {
-    for (pp=curlx_usage; (*pp != NULL); pp++)
-      BIO_printf(p.errorbio,"%s\n",*pp);
-    BIO_printf(p.errorbio,"\n");
-    goto err;
-  }
-
-
-
-  /* set input */
-
-  if ((in=BIO_new(BIO_s_file())) == NULL) {
-    BIO_printf(p.errorbio, "Error setting input bio\n");
-    goto err;
-  } else if (infile == NULL)
-    BIO_set_fp(in,stdin,BIO_NOCLOSE|BIO_FP_TEXT);
-  else if (BIO_read_filename(in,infile) <= 0) {
-    BIO_printf(p.errorbio, "Error opening input file %s\n", infile);
-    BIO_free(in);
-    goto err;
-  }
-
-  /* set output  */
-
-  if ((out=BIO_new(BIO_s_file())) == NULL) {
-    BIO_printf(p.errorbio, "Error setting output bio.\n");
-    goto err;
-  } else if (outfile == NULL)
-    BIO_set_fp(out,stdout,BIO_NOCLOSE|BIO_FP_TEXT);
-  else if (BIO_write_filename(out,outfile) <= 0) {
-    BIO_printf(p.errorbio, "Error opening output file %s\n", outfile);
-    BIO_free(out);
-    goto err;
-  }
-
-
-  p.errorbio = BIO_new_fp (stderr, BIO_NOCLOSE);
-
-  if (!(p.curl = curl_easy_init())) {
-    BIO_printf(p.errorbio, "Cannot init curl lib\n");
-    goto err;
-  }
-
-
-
-  if (!(p12bio = BIO_new_file(p.p12file , "rb"))) {
-    BIO_printf(p.errorbio, "Error opening P12 file %s\n", p.p12file); goto err;
-  }
-  if (!(p.p12 = d2i_PKCS12_bio (p12bio, NULL))) {
-    BIO_printf(p.errorbio, "Cannot decode P12 structure %s\n", p.p12file); goto err;
-  }
-
-  p.ca= NULL;
-  if (!(PKCS12_parse (p.p12, p.pst, &(p.pkey), &(p.usercert), &(p.ca) ) )) {
-    BIO_printf(p.errorbio,"Invalid P12 structure in %s\n", p.p12file); goto err;
-  }
-
-  if (sk_X509_num(p.ca) <= 0) {
-    BIO_printf(p.errorbio,"No trustworthy CA given.%s\n", p.p12file); goto err;
-  }
-
-  if (p.verbose > 1)
-    X509_print_ex(p.errorbio,p.usercert,0,0);
-
-  /* determine URL to go */
-
-  if (hostporturl) {
-    serverurl = malloc(9+strlen(hostporturl));
-    sprintf(serverurl,"https://%s",hostporturl);
-  }
-  else if (p.accesstype != 0) { /* see whether we can find an AIA or SIA for a given access type */
-    if (!(serverurl = my_get_ext(p.usercert,p.accesstype,NID_info_access))) {
-      int j=0;
-      BIO_printf(p.errorbio,"no service URL in user cert "
-                 "cherching in others certificats\n");
-      for (j=0;j<sk_X509_num(p.ca);j++) {
-        if ((serverurl = my_get_ext(sk_X509_value(p.ca,j),p.accesstype,
-                                    NID_info_access)))
-          break;
-        if ((serverurl = my_get_ext(sk_X509_value(p.ca,j),p.accesstype,
-                                    NID_sinfo_access)))
-          break;
-      }
-    }
-  }
-
-  if (!serverurl) {
-    BIO_printf(p.errorbio, "no service URL in certificats,"
-               " check '-accesstype (AD_DVCS | ad_timestamping)'"
-               " or use '-connect'\n");
-    goto err;
-  }
-
-  if (p.verbose)
-    BIO_printf(p.errorbio, "Service URL: <%s>\n", serverurl);
-
-  curl_easy_setopt(p.curl, CURLOPT_URL, serverurl);
-
-  /* Now specify the POST binary data */
-
-  curl_easy_setopt(p.curl, CURLOPT_POSTFIELDS, binaryptr);
-  curl_easy_setopt(p.curl, CURLOPT_POSTFIELDSIZE,(long)tabLength);
-
-  /* pass our list of custom made headers */
-
-  contenttype = malloc(15+strlen(mimetype));
-  sprintf(contenttype,"Content-type: %s",mimetype);
-  headers = curl_slist_append(headers,contenttype);
-  curl_easy_setopt(p.curl, CURLOPT_HTTPHEADER, headers);
-
-  if (p.verbose)
-    BIO_printf(p.errorbio, "Service URL: <%s>\n", serverurl);
-
-  {
-    FILE *outfp;
-    BIO_get_fp(out,&outfp);
-    curl_easy_setopt(p.curl, CURLOPT_WRITEDATA, outfp);
-  }
-
-  res = curl_easy_setopt(p.curl, CURLOPT_SSL_CTX_FUNCTION, sslctxfun)  ;
-
-  if (res != CURLE_OK)
-    BIO_printf(p.errorbio,"%d %s=%d %d\n", __LINE__, "CURLOPT_SSL_CTX_FUNCTION",CURLOPT_SSL_CTX_FUNCTION,res);
-
-  curl_easy_setopt(p.curl, CURLOPT_SSL_CTX_DATA, &p);
-
-  {
-    int lu; int i=0;
-    while ((lu = BIO_read (in,&binaryptr[i],tabLength-i)) >0 ) {
-      i+=lu;
-      if (i== tabLength) {
-        tabLength+=100;
-        binaryptr=realloc(binaryptr,tabLength); /* should be more careful */
-      }
-    }
-    tabLength = i;
-  }
-  /* Now specify the POST binary data */
-
-  curl_easy_setopt(p.curl, CURLOPT_POSTFIELDS, binaryptr);
-  curl_easy_setopt(p.curl, CURLOPT_POSTFIELDSIZE,(long)tabLength);
-
-
-  /* Perform the request, res will get the return code */
-
-  BIO_printf(p.errorbio,"%d %s %d\n", __LINE__, "curl_easy_perform",
-             res = curl_easy_perform(p.curl));
-  {
-    int result =curl_easy_getinfo(p.curl,CURLINFO_CONTENT_TYPE,&response);
-    if( mimetypeaccept && p.verbose)
-      if(!strcmp(mimetypeaccept,response))
-        BIO_printf(p.errorbio,"the response has a correct mimetype : %s\n",
-                   response);
-      else
-        BIO_printf(p.errorbio,"the reponse doesn\'t has an acceptable "
-                   "mime type, it is %s instead of %s\n",
-                   response,mimetypeaccept);
-  }
-
-  /*** code d'erreur si accept mime ***, egalement code return HTTP != 200 ***/
-
-/* free the header list*/
-
-  curl_slist_free_all(headers);
-
-  /* always cleanup */
-  curl_easy_cleanup(p.curl);
-
-  BIO_free(in);
-  BIO_free(out);
-  return (EXIT_SUCCESS);
-
-  err: BIO_printf(p.errorbio,"error");
-  exit(1);
-}
diff --git a/src/other/curl/docs/examples/debug.c b/src/other/curl/docs/examples/debug.c
deleted file mode 100644
index d5bf750..0000000
--- a/src/other/curl/docs/examples/debug.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <curl/curl.h>
-
-struct data {
-  char trace_ascii; /* 1 or 0 */
-};
-
-static
-void dump(const char *text,
-          FILE *stream, unsigned char *ptr, size_t size,
-          char nohex)
-{
-  size_t i;
-  size_t c;
-
-  unsigned int width=0x10;
-
-  if(nohex)
-    /* without the hex output, we can fit more on screen */
-    width = 0x40;
-
-  fprintf(stream, "%s, %010.10ld bytes (0x%08.8lx)\n",
-          text, (long)size, (long)size);
-
-  for(i=0; i<size; i+= width) {
-
-    fprintf(stream, "%04.4lx: ", (long)i);
-
-    if(!nohex) {
-      /* hex not disabled, show it */
-      for(c = 0; c < width; c++)
-        if(i+c < size)
-          fprintf(stream, "%02x ", ptr[i+c]);
-        else
-          fputs("   ", stream);
-    }
-
-    for(c = 0; (c < width) && (i+c < size); c++) {
-      /* check for 0D0A; if found, skip past and start a new line of output */
-      if (nohex && (i+c+1 < size) && ptr[i+c]==0x0D && ptr[i+c+1]==0x0A) {
-        i+=(c+2-width);
-        break;
-      }
-      fprintf(stream, "%c",
-              (ptr[i+c]>=0x20) && (ptr[i+c]<0x80)?ptr[i+c]:'.');
-      /* check again for 0D0A, to avoid an extra \n if it's at width */
-      if (nohex && (i+c+2 < size) && ptr[i+c+1]==0x0D && ptr[i+c+2]==0x0A) {
-        i+=(c+3-width);
-        break;
-      }
-    }
-    fputc('\n', stream); /* newline */
-  }
-  fflush(stream);
-}
-
-static
-int my_trace(CURL *handle, curl_infotype type,
-             char *data, size_t size,
-             void *userp)
-{
-  struct data *config = (struct data *)userp;
-  const char *text;
-  (void)handle; /* prevent compiler warning */
-
-  switch (type) {
-  case CURLINFO_TEXT:
-    fprintf(stderr, "== Info: %s", data);
-  default: /* in case a new one is introduced to shock us */
-    return 0;
-
-  case CURLINFO_HEADER_OUT:
-    text = "=> Send header";
-    break;
-  case CURLINFO_DATA_OUT:
-    text = "=> Send data";
-    break;
-  case CURLINFO_SSL_DATA_OUT:
-    text = "=> Send SSL data";
-    break;
-  case CURLINFO_HEADER_IN:
-    text = "<= Recv header";
-    break;
-  case CURLINFO_DATA_IN:
-    text = "<= Recv data";
-    break;
-  case CURLINFO_SSL_DATA_IN:
-    text = "<= Recv SSL data";
-    break;
-  }
-
-  dump(text, stderr, (unsigned char *)data, size, config->trace_ascii);
-  return 0;
-}
-
-int main(void)
-{
-  CURL *curl;
-  CURLcode res;
-  struct data config;
-
-  config.trace_ascii = 1; /* enable ascii tracing */
-
-  curl = curl_easy_init();
-  if(curl) {
-    curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace);
-    curl_easy_setopt(curl, CURLOPT_DEBUGDATA, &config);
-
-    /* the DEBUGFUNCTION has no effect until we enable VERBOSE */
-    curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
-
-    curl_easy_setopt(curl, CURLOPT_URL, "curl.haxx.se");
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/evhiperfifo.c b/src/other/curl/docs/examples/evhiperfifo.c
deleted file mode 100644
index 8695ffa..0000000
--- a/src/other/curl/docs/examples/evhiperfifo.c
+++ /dev/null
@@ -1,459 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * Example application source code using the multi socket interface to
- * download many files at once.
- *
- * This example features the same basic functionality as hiperfifo.c does,
- * but this uses libev instead of libevent.
- *
- * Written by Jeff Pohlmeyer, converted to use libev by Markus Koetter
-
-Requires libev and a (POSIX?) system that has mkfifo().
-
-This is an adaptation of libcurl's "hipev.c" and libevent's "event-test.c"
-sample programs.
-
-When running, the program creates the named pipe "hiper.fifo"
-
-Whenever there is input into the fifo, the program reads the input as a list
-of URL's and creates some new easy handles to fetch each URL via the
-curl_multi "hiper" API.
-
-
-Thus, you can try a single URL:
-  % echo http://www.yahoo.com > hiper.fifo
-
-Or a whole bunch of them:
-  % cat my-url-list > hiper.fifo
-
-The fifo buffer is handled almost instantly, so you can even add more URL's
-while the previous requests are still being downloaded.
-
-Note:
-  For the sake of simplicity, URL length is limited to 1023 char's !
-
-This is purely a demo app, all retrieved data is simply discarded by the write
-callback.
-
-*/
-
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <sys/time.h>
-#include <time.h>
-#include <unistd.h>
-#include <sys/poll.h>
-#include <curl/curl.h>
-#include <ev.h>
-#include <fcntl.h>
-#include <sys/stat.h>
-#include <errno.h>
-
-#define DPRINT(x...) printf(x)
-
-#define MSG_OUT stdout /* Send info to stdout, change to stderr if you want */
-
-
-/* Global information, common to all connections */
-typedef struct _GlobalInfo
-{
-  struct ev_loop *loop;
-  struct ev_io fifo_event;
-  struct ev_timer timer_event;
-  CURLM *multi;
-  int prev_running;
-  int still_running;
-  FILE* input;
-} GlobalInfo;
-
-
-/* Information associated with a specific easy handle */
-typedef struct _ConnInfo
-{
-  CURL *easy;
-  char *url;
-  GlobalInfo *global;
-  char error[CURL_ERROR_SIZE];
-} ConnInfo;
-
-
-/* Information associated with a specific socket */
-typedef struct _SockInfo
-{
-  curl_socket_t sockfd;
-  CURL *easy;
-  int action;
-  long timeout;
-  struct ev_io ev;
-  int evset;
-  GlobalInfo *global;
-} SockInfo;
-
-static void timer_cb(EV_P_ struct ev_timer *w, int revents);
-
-/* Update the event timer after curl_multi library calls */
-static int multi_timer_cb(CURLM *multi, long timeout_ms, GlobalInfo *g)
-{
-  DPRINT("%s %li\n", __PRETTY_FUNCTION__,  timeout_ms);
-  ev_timer_stop(g->loop, &g->timer_event);
-  if (timeout_ms > 0)
-  {
-    double  t = timeout_ms / 1000;
-    ev_timer_init(&g->timer_event, timer_cb, t, 0.);
-    ev_timer_start(g->loop, &g->timer_event);
-  }else
-    timer_cb(g->loop, &g->timer_event, 0);
-  return 0;
-}
-
-/* Die if we get a bad CURLMcode somewhere */
-static void mcode_or_die(const char *where, CURLMcode code)
-{
-  if ( CURLM_OK != code )
-  {
-    const char *s;
-    switch ( code )
-    {
-    case CURLM_CALL_MULTI_PERFORM: s="CURLM_CALL_MULTI_PERFORM"; break;
-    case CURLM_OK:                 s="CURLM_OK";                 break;
-    case CURLM_BAD_HANDLE:         s="CURLM_BAD_HANDLE";         break;
-    case CURLM_BAD_EASY_HANDLE:    s="CURLM_BAD_EASY_HANDLE";    break;
-    case CURLM_OUT_OF_MEMORY:      s="CURLM_OUT_OF_MEMORY";      break;
-    case CURLM_INTERNAL_ERROR:     s="CURLM_INTERNAL_ERROR";     break;
-    case CURLM_UNKNOWN_OPTION:     s="CURLM_UNKNOWN_OPTION";     break;
-    case CURLM_LAST:               s="CURLM_LAST";               break;
-    default: s="CURLM_unknown";
-      break;
-    case     CURLM_BAD_SOCKET:         s="CURLM_BAD_SOCKET";
-      fprintf(MSG_OUT, "ERROR: %s returns %s\n", where, s);
-      /* ignore this error */
-      return;
-    }
-    fprintf(MSG_OUT, "ERROR: %s returns %s\n", where, s);
-    exit(code);
-  }
-}
-
-
-
-/* Check for completed transfers, and remove their easy handles */
-static void check_run_count(GlobalInfo *g)
-{
-  DPRINT("%s prev %i still %i\n", __PRETTY_FUNCTION__,
-         g->prev_running, g->still_running);
-  if ( g->prev_running > g->still_running )
-  {
-    char *eff_url=NULL;
-    CURLMsg *msg;
-    int msgs_left;
-    ConnInfo *conn=NULL;
-    CURL*easy;
-    CURLcode res;
-
-    fprintf(MSG_OUT, "REMAINING: %d\n", g->still_running);
-    /*
-      I am still uncertain whether it is safe to remove an easy
-      handle from inside the curl_multi_info_read loop, so here I
-      will search for completed transfers in the inner "while"
-      loop, and then remove them in the outer "do-while" loop...
-    */
-    do
-    {
-      easy=NULL;
-      while ( (msg = curl_multi_info_read(g->multi, &msgs_left)) )
-      {
-        if ( msg->msg == CURLMSG_DONE )
-        {
-          easy=msg->easy_handle;
-          res=msg->data.result;
-        }
-
-        if ( easy )
-        {
-          curl_easy_getinfo(easy, CURLINFO_PRIVATE, &conn);
-          curl_easy_getinfo(easy, CURLINFO_EFFECTIVE_URL, &eff_url);
-          fprintf(MSG_OUT, "DONE: %s => (%d) %s\n", eff_url, res, conn->error);
-          curl_multi_remove_handle(g->multi, easy);
-          free(conn->url);
-          curl_easy_cleanup(easy);
-          free(conn);
-        }
-      }
-    } while ( easy );
-  }
-  g->prev_running = g->still_running;
-}
-
-
-/* Called by libevent when we get action on a multi socket */
-static void event_cb(EV_P_ struct ev_io *w, int revents)
-{
-  DPRINT("%s  w %p revents %i\n", __PRETTY_FUNCTION__, w, revents);
-  GlobalInfo *g = (GlobalInfo*) w->data;
-  CURLMcode rc;
-
-  int action = (revents&EV_READ?CURL_POLL_IN:0)|
-    (revents&EV_WRITE?CURL_POLL_OUT:0);
-  do
-  {
-    rc = curl_multi_socket_action(g->multi, w->fd, action, &g->still_running);
-  } while ( rc == CURLM_CALL_MULTI_PERFORM );
-  mcode_or_die("event_cb: curl_multi_socket", rc);
-  check_run_count(g);
-  if ( g->still_running <= 0 )
-  {
-    fprintf(MSG_OUT, "last transfer done, kill timeout\n");
-    ev_timer_stop(g->loop, &g->timer_event);
-  }
-}
-
-/* Called by libevent when our timeout expires */
-static void timer_cb(EV_P_ struct ev_timer *w, int revents)
-{
-  DPRINT("%s  w %p revents %i\n", __PRETTY_FUNCTION__, w, revents);
-
-  GlobalInfo *g = (GlobalInfo *)w->data;
-  CURLMcode rc;
-
-  do
-  {
-    rc = curl_multi_socket_action(g->multi, CURL_SOCKET_TIMEOUT, 0, &g->still_running);
-  } while ( rc == CURLM_CALL_MULTI_PERFORM );
-  mcode_or_die("timer_cb: curl_multi_socket", rc);
-  check_run_count(g);
-}
-
-/* Clean up the SockInfo structure */
-static void remsock(SockInfo *f, GlobalInfo *g)
-{
-  printf("%s  \n", __PRETTY_FUNCTION__);
-  if ( f )
-  {
-    if ( f->evset )
-      ev_io_stop(g->loop, &f->ev);
-    free(f);
-  }
-}
-
-
-
-/* Assign information to a SockInfo structure */
-static void setsock(SockInfo*f, curl_socket_t s, CURL*e, int act, GlobalInfo*g)
-{
-  printf("%s  \n", __PRETTY_FUNCTION__);
-
-  int kind = (act&CURL_POLL_IN?EV_READ:0)|(act&CURL_POLL_OUT?EV_WRITE:0);
-
-  f->sockfd = s;
-  f->action = act;
-  f->easy = e;
-  if ( f->evset )
-    ev_io_stop(g->loop, &f->ev);
-  ev_io_init(&f->ev, event_cb, f->sockfd, kind);
-  f->ev.data = g;
-  f->evset=1;
-  ev_io_start(g->loop, &f->ev);
-}
-
-
-
-/* Initialize a new SockInfo structure */
-static void addsock(curl_socket_t s, CURL *easy, int action, GlobalInfo *g)
-{
-  SockInfo *fdp = calloc(sizeof(SockInfo), 1);
-
-  fdp->global = g;
-  setsock(fdp, s, easy, action, g);
-  curl_multi_assign(g->multi, s, fdp);
-}
-
-/* CURLMOPT_SOCKETFUNCTION */
-static int sock_cb(CURL *e, curl_socket_t s, int what, void *cbp, void *sockp)
-{
-  DPRINT("%s e %p s %i what %i cbp %p sockp %p\n",
-         __PRETTY_FUNCTION__, e, s, what, cbp, sockp);
-
-  GlobalInfo *g = (GlobalInfo*) cbp;
-  SockInfo *fdp = (SockInfo*) sockp;
-  const char *whatstr[]={ "none", "IN", "OUT", "INOUT", "REMOVE"};
-
-  fprintf(MSG_OUT,
-          "socket callback: s=%d e=%p what=%s ", s, e, whatstr[what]);
-  if ( what == CURL_POLL_REMOVE )
-  {
-    fprintf(MSG_OUT, "\n");
-    remsock(fdp, g);
-  } else
-  {
-    if ( !fdp )
-    {
-      fprintf(MSG_OUT, "Adding data: %s\n", whatstr[what]);
-      addsock(s, e, what, g);
-    } else
-    {
-      fprintf(MSG_OUT,
-              "Changing action from %s to %s\n",
-              whatstr[fdp->action], whatstr[what]);
-      setsock(fdp, s, e, what, g);
-    }
-  }
-  return 0;
-}
-
-
-/* CURLOPT_WRITEFUNCTION */
-static size_t write_cb(void *ptr, size_t size, size_t nmemb, void *data)
-{
-  size_t realsize = size * nmemb;
-  ConnInfo *conn = (ConnInfo*) data;
-  (void)ptr;
-  (void)conn;
-  return realsize;
-}
-
-
-/* CURLOPT_PROGRESSFUNCTION */
-static int prog_cb (void *p, double dltotal, double dlnow, double ult,
-                    double uln)
-{
-  ConnInfo *conn = (ConnInfo *)p;
-  (void)ult;
-  (void)uln;
-
-  fprintf(MSG_OUT, "Progress: %s (%g/%g)\n", conn->url, dlnow, dltotal);
-  return 0;
-}
-
-
-/* Create a new easy handle, and add it to the global curl_multi */
-static void new_conn(char *url, GlobalInfo *g )
-{
-  ConnInfo *conn;
-  CURLMcode rc;
-
-  conn = calloc(1, sizeof(ConnInfo));
-  memset(conn, 0, sizeof(ConnInfo));
-  conn->error[0]='\0';
-
-  conn->easy = curl_easy_init();
-  if ( !conn->easy )
-  {
-    fprintf(MSG_OUT, "curl_easy_init() failed, exiting!\n");
-    exit(2);
-  }
-  conn->global = g;
-  conn->url = strdup(url);
-  curl_easy_setopt(conn->easy, CURLOPT_URL, conn->url);
-  curl_easy_setopt(conn->easy, CURLOPT_WRITEFUNCTION, write_cb);
-  curl_easy_setopt(conn->easy, CURLOPT_WRITEDATA, &conn);
-  curl_easy_setopt(conn->easy, CURLOPT_VERBOSE, 1L);
-  curl_easy_setopt(conn->easy, CURLOPT_ERRORBUFFER, conn->error);
-  curl_easy_setopt(conn->easy, CURLOPT_PRIVATE, conn);
-  curl_easy_setopt(conn->easy, CURLOPT_NOPROGRESS, 0L);
-  curl_easy_setopt(conn->easy, CURLOPT_PROGRESSFUNCTION, prog_cb);
-  curl_easy_setopt(conn->easy, CURLOPT_PROGRESSDATA, conn);
-  curl_easy_setopt(conn->easy, CURLOPT_LOW_SPEED_TIME, 3L);
-  curl_easy_setopt(conn->easy, CURLOPT_LOW_SPEED_LIMIT, 10L);
-
-  fprintf(MSG_OUT,
-          "Adding easy %p to multi %p (%s)\n", conn->easy, g->multi, url);
-  rc =curl_multi_add_handle(g->multi, conn->easy);
-  mcode_or_die("new_conn: curl_multi_add_handle", rc);
-
-  mcode_or_die("new_conn: curl_multi_socket_all", rc);
-  check_run_count(g);
-}
-
-/* This gets called whenever data is received from the fifo */
-static void fifo_cb(EV_P_ struct ev_io *w, int revents)
-{
-  char s[1024];
-  long int rv=0;
-  int n=0;
-  GlobalInfo *g = (GlobalInfo *)w->data;
-
-  do
-  {
-    s[0]='\0';
-    rv=fscanf(g->input, "%1023s%n", s, &n);
-    s[n]='\0';
-    if ( n && s[0] )
-    {
-      new_conn(s,g);  /* if we read a URL, go get it! */
-    } else break;
-  } while ( rv != EOF );
-}
-
-/* Create a named pipe and tell libevent to monitor it */
-static int init_fifo (GlobalInfo *g)
-{
-  struct stat st;
-  static const char *fifo = "hiper.fifo";
-  int sockfd;
-
-  fprintf(MSG_OUT, "Creating named pipe \"%s\"\n", fifo);
-  if ( lstat (fifo, &st) == 0 )
-  {
-    if ( (st.st_mode & S_IFMT) == S_IFREG )
-    {
-      errno = EEXIST;
-      perror("lstat");
-      exit (1);
-    }
-  }
-  unlink(fifo);
-  if ( mkfifo (fifo, 0600) == -1 )
-  {
-    perror("mkfifo");
-    exit (1);
-  }
-  sockfd = open(fifo, O_RDWR | O_NONBLOCK, 0);
-  if ( sockfd == -1 )
-  {
-    perror("open");
-    exit (1);
-  }
-  g->input = fdopen(sockfd, "r");
-
-  fprintf(MSG_OUT, "Now, pipe some URL's into > %s\n", fifo);
-  ev_io_init(&g->fifo_event, fifo_cb, sockfd, EV_READ);
-  ev_io_start(g->loop, &g->fifo_event);
-  return(0);
-}
-
-int main(int argc, char **argv)
-{
-  GlobalInfo g;
-  CURLMcode rc;
-  (void)argc;
-  (void)argv;
-
-  memset(&g, 0, sizeof(GlobalInfo));
-  g.loop = ev_default_loop(0);
-
-  init_fifo(&g);
-  g.multi = curl_multi_init();
-
-  ev_timer_init(&g.timer_event, timer_cb, 0., 0.);
-  g.timer_event.data = &g;
-  g.fifo_event.data = &g;
-  curl_multi_setopt(g.multi, CURLMOPT_SOCKETFUNCTION, sock_cb);
-  curl_multi_setopt(g.multi, CURLMOPT_SOCKETDATA, &g);
-  curl_multi_setopt(g.multi, CURLMOPT_TIMERFUNCTION, multi_timer_cb);
-  curl_multi_setopt(g.multi, CURLMOPT_TIMERDATA, &g);
-  do
-  {
-    rc = curl_multi_socket_all(g.multi, &g.still_running);
-  } while ( CURLM_CALL_MULTI_PERFORM == rc );
-
-  ev_loop(g.loop, 0);
-  curl_multi_cleanup(g.multi);
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/fileupload.c b/src/other/curl/docs/examples/fileupload.c
deleted file mode 100644
index cdec751..0000000
--- a/src/other/curl/docs/examples/fileupload.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <curl/curl.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-
-int main(void)
-{
-  CURL *curl;
-  CURLcode res;
-  struct stat file_info;
-  double speed_upload, total_time;
-  FILE *fd;
-
-  fd = fopen("debugit", "rb"); /* open file to upload */
-  if(!fd) {
-
-    return 1; /* can't continue */
-  }
-
-  /* to get the file size */
-  if(fstat(fileno(fd), &file_info) != 0) {
-
-    return 1; /* can't continue */
-  }
-
-  curl = curl_easy_init();
-  if(curl) {
-    /* upload to this place */
-    curl_easy_setopt(curl, CURLOPT_URL,
-                     "file:///home/dast/src/curl/debug/new");
-
-    /* tell it to "upload" to the URL */
-    curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
-
-    /* set where to read from (on Windows you need to use READFUNCTION too) */
-    curl_easy_setopt(curl, CURLOPT_READDATA, fd);
-
-    /* and give the size of the upload (optional) */
-    curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE,
-                     (curl_off_t)file_info.st_size);
-
-    /* enable verbose for easier tracing */
-    curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
-
-    res = curl_easy_perform(curl);
-
-    /* now extract transfer info */
-    curl_easy_getinfo(curl, CURLINFO_SPEED_UPLOAD, &speed_upload);
-    curl_easy_getinfo(curl, CURLINFO_TOTAL_TIME, &total_time);
-
-    fprintf(stderr, "Speed: %.3f bytes/sec during %.3f seconds\n",
-            speed_upload, total_time);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/fopen.c b/src/other/curl/docs/examples/fopen.c
deleted file mode 100644
index e3814e6..0000000
--- a/src/other/curl/docs/examples/fopen.c
+++ /dev/null
@@ -1,566 +0,0 @@
-/*****************************************************************************
- *
- * This example source code introduces a c library buffered I/O interface to
- * URL reads it supports fopen(), fread(), fgets(), feof(), fclose(),
- * rewind(). Supported functions have identical prototypes to their normal c
- * lib namesakes and are preceaded by url_ .
- *
- * Using this code you can replace your program's fopen() with url_fopen()
- * and fread() with url_fread() and it become possible to read remote streams
- * instead of (only) local files. Local files (ie those that can be directly
- * fopened) will drop back to using the underlying clib implementations
- *
- * See the main() function at the bottom that shows an app that retrives from a
- * specified url using fgets() and fread() and saves as two output files.
- *
- * Copyright (c) 2003 Simtec Electronics
- *
- * Re-implemented by Vincent Sanders <vince at kyllikki.org> with extensive
- * reference to original curl example code
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. The name of the author may not be used to endorse or promote products
- *    derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This example requires libcurl 7.9.7 or later.
- */
-
-#include <stdio.h>
-#include <string.h>
-#ifndef WIN32
-#  include <sys/time.h>
-#endif
-#include <stdlib.h>
-#include <errno.h>
-
-#include <curl/curl.h>
-
-enum fcurl_type_e { CFTYPE_NONE=0, CFTYPE_FILE=1, CFTYPE_CURL=2 };
-
-struct fcurl_data
-{
-    enum fcurl_type_e type;     /* type of handle */
-    union {
-        CURL *curl;
-        FILE *file;
-    } handle;                   /* handle */
-
-    char *buffer;               /* buffer to store cached data*/
-    int buffer_len;             /* currently allocated buffers length */
-    int buffer_pos;             /* end of data in buffer*/
-    int still_running;          /* Is background url fetch still in progress */
-};
-
-typedef struct fcurl_data URL_FILE;
-
-/* exported functions */
-URL_FILE *url_fopen(const char *url,const char *operation);
-int url_fclose(URL_FILE *file);
-int url_feof(URL_FILE *file);
-size_t url_fread(void *ptr, size_t size, size_t nmemb, URL_FILE *file);
-char * url_fgets(char *ptr, int size, URL_FILE *file);
-void url_rewind(URL_FILE *file);
-
-/* we use a global one for convenience */
-CURLM *multi_handle;
-
-/* curl calls this routine to get more data */
-static size_t
-write_callback(char *buffer,
-               size_t size,
-               size_t nitems,
-               void *userp)
-{
-    char *newbuff;
-    int rembuff;
-
-    URL_FILE *url = (URL_FILE *)userp;
-    size *= nitems;
-
-    rembuff=url->buffer_len - url->buffer_pos; /* remaining space in buffer */
-
-    if(size > rembuff)
-    {
-        /* not enough space in buffer */
-        newbuff=realloc(url->buffer,url->buffer_len + (size - rembuff));
-        if(newbuff==NULL)
-        {
-            fprintf(stderr,"callback buffer grow failed\n");
-            size=rembuff;
-        }
-        else
-        {
-            /* realloc suceeded increase buffer size*/
-            url->buffer_len+=size - rembuff;
-            url->buffer=newbuff;
-
-            /*printf("Callback buffer grown to %d bytes\n",url->buffer_len);*/
-        }
-    }
-
-    memcpy(&url->buffer[url->buffer_pos], buffer, size);
-    url->buffer_pos += size;
-
-    /*fprintf(stderr, "callback %d size bytes\n", size);*/
-
-    return size;
-}
-
-/* use to attempt to fill the read buffer up to requested number of bytes */
-static int
-fill_buffer(URL_FILE *file,int want,int waittime)
-{
-    fd_set fdread;
-    fd_set fdwrite;
-    fd_set fdexcep;
-    int maxfd;
-    struct timeval timeout;
-    int rc;
-
-    /* only attempt to fill buffer if transactions still running and buffer
-     * doesnt exceed required size already
-     */
-    if((!file->still_running) || (file->buffer_pos > want))
-        return 0;
-
-    /* attempt to fill buffer */
-    do
-    {
-        FD_ZERO(&fdread);
-        FD_ZERO(&fdwrite);
-        FD_ZERO(&fdexcep);
-
-        /* set a suitable timeout to fail on */
-        timeout.tv_sec = 60; /* 1 minute */
-        timeout.tv_usec = 0;
-
-        /* get file descriptors from the transfers */
-        curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-
-        /* In a real-world program you OF COURSE check the return code of the
-           function calls, *and* you make sure that maxfd is bigger than -1
-           so that the call to select() below makes sense! */
-
-        rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
-
-        switch(rc) {
-        case -1:
-            /* select error */
-            break;
-
-        case 0:
-            break;
-
-        default:
-            /* timeout or readable/writable sockets */
-            /* note we *could* be more efficient and not wait for
-             * CURLM_CALL_MULTI_PERFORM to clear here and check it on re-entry
-             * but that gets messy */
-            while(curl_multi_perform(multi_handle, &file->still_running) ==
-                  CURLM_CALL_MULTI_PERFORM);
-
-            break;
-        }
-    } while(file->still_running && (file->buffer_pos < want));
-    return 1;
-}
-
-/* use to remove want bytes from the front of a files buffer */
-static int
-use_buffer(URL_FILE *file,int want)
-{
-    /* sort out buffer */
-    if((file->buffer_pos - want) <=0)
-    {
-        /* ditch buffer - write will recreate */
-        if(file->buffer)
-            free(file->buffer);
-
-        file->buffer=NULL;
-        file->buffer_pos=0;
-        file->buffer_len=0;
-    }
-    else
-    {
-        /* move rest down make it available for later */
-        memmove(file->buffer,
-                &file->buffer[want],
-                (file->buffer_pos - want));
-
-        file->buffer_pos -= want;
-    }
-    return 0;
-}
-
-
-
-URL_FILE *
-url_fopen(const char *url,const char *operation)
-{
-    /* this code could check for URLs or types in the 'url' and
-       basicly use the real fopen() for standard files */
-
-    URL_FILE *file;
-    (void)operation;
-
-    file = malloc(sizeof(URL_FILE));
-    if(!file)
-        return NULL;
-
-    memset(file, 0, sizeof(URL_FILE));
-
-    if((file->handle.file=fopen(url,operation)))
-    {
-        file->type = CFTYPE_FILE; /* marked as URL */
-    }
-    else
-    {
-        file->type = CFTYPE_CURL; /* marked as URL */
-        file->handle.curl = curl_easy_init();
-
-        curl_easy_setopt(file->handle.curl, CURLOPT_URL, url);
-        curl_easy_setopt(file->handle.curl, CURLOPT_WRITEDATA, file);
-        curl_easy_setopt(file->handle.curl, CURLOPT_VERBOSE, 0L);
-        curl_easy_setopt(file->handle.curl, CURLOPT_WRITEFUNCTION, write_callback);
-
-        if(!multi_handle)
-            multi_handle = curl_multi_init();
-
-        curl_multi_add_handle(multi_handle, file->handle.curl);
-
-        /* lets start the fetch */
-        while(curl_multi_perform(multi_handle, &file->still_running) ==
-              CURLM_CALL_MULTI_PERFORM );
-
-        if((file->buffer_pos == 0) && (!file->still_running))
-        {
-            /* if still_running is 0 now, we should return NULL */
-
-            /* make sure the easy handle is not in the multi handle anymore */
-            curl_multi_remove_handle(multi_handle, file->handle.curl);
-
-            /* cleanup */
-            curl_easy_cleanup(file->handle.curl);
-
-            free(file);
-
-            file = NULL;
-        }
-    }
-    return file;
-}
-
-int
-url_fclose(URL_FILE *file)
-{
-    int ret=0;/* default is good return */
-
-    switch(file->type)
-    {
-    case CFTYPE_FILE:
-        ret=fclose(file->handle.file); /* passthrough */
-        break;
-
-    case CFTYPE_CURL:
-        /* make sure the easy handle is not in the multi handle anymore */
-        curl_multi_remove_handle(multi_handle, file->handle.curl);
-
-        /* cleanup */
-        curl_easy_cleanup(file->handle.curl);
-        break;
-
-    default: /* unknown or supported type - oh dear */
-        ret=EOF;
-        errno=EBADF;
-        break;
-
-    }
-
-    if(file->buffer)
-        free(file->buffer);/* free any allocated buffer space */
-
-    free(file);
-
-    return ret;
-}
-
-int
-url_feof(URL_FILE *file)
-{
-    int ret=0;
-
-    switch(file->type)
-    {
-    case CFTYPE_FILE:
-        ret=feof(file->handle.file);
-        break;
-
-    case CFTYPE_CURL:
-        if((file->buffer_pos == 0) && (!file->still_running))
-            ret = 1;
-        break;
-    default: /* unknown or supported type - oh dear */
-        ret=-1;
-        errno=EBADF;
-        break;
-    }
-    return ret;
-}
-
-size_t
-url_fread(void *ptr, size_t size, size_t nmemb, URL_FILE *file)
-{
-    size_t want;
-
-    switch(file->type)
-    {
-    case CFTYPE_FILE:
-        want=fread(ptr,size,nmemb,file->handle.file);
-        break;
-
-    case CFTYPE_CURL:
-        want = nmemb * size;
-
-        fill_buffer(file,want,1);
-
-        /* check if theres data in the buffer - if not fill_buffer()
-         * either errored or EOF */
-        if(!file->buffer_pos)
-            return 0;
-
-        /* ensure only available data is considered */
-        if(file->buffer_pos < want)
-            want = file->buffer_pos;
-
-        /* xfer data to caller */
-        memcpy(ptr, file->buffer, want);
-
-        use_buffer(file,want);
-
-        want = want / size;     /* number of items - nb correct op - checked
-                                 * with glibc code*/
-
-        /*printf("(fread) return %d bytes %d left\n", want,file->buffer_pos);*/
-        break;
-
-    default: /* unknown or supported type - oh dear */
-        want=0;
-        errno=EBADF;
-        break;
-
-    }
-    return want;
-}
-
-char *
-url_fgets(char *ptr, int size, URL_FILE *file)
-{
-    int want = size - 1;/* always need to leave room for zero termination */
-    int loop;
-
-    switch(file->type)
-    {
-    case CFTYPE_FILE:
-        ptr = fgets(ptr,size,file->handle.file);
-        break;
-
-    case CFTYPE_CURL:
-        fill_buffer(file,want,1);
-
-        /* check if theres data in the buffer - if not fill either errored or
-         * EOF */
-        if(!file->buffer_pos)
-            return NULL;
-
-        /* ensure only available data is considered */
-        if(file->buffer_pos < want)
-            want = file->buffer_pos;
-
-        /*buffer contains data */
-        /* look for newline or eof */
-        for(loop=0;loop < want;loop++)
-        {
-            if(file->buffer[loop] == '\n')
-            {
-                want=loop+1;/* include newline */
-                break;
-            }
-        }
-
-        /* xfer data to caller */
-        memcpy(ptr, file->buffer, want);
-        ptr[want]=0;/* allways null terminate */
-
-        use_buffer(file,want);
-
-        /*printf("(fgets) return %d bytes %d left\n", want,file->buffer_pos);*/
-        break;
-
-    default: /* unknown or supported type - oh dear */
-        ptr=NULL;
-        errno=EBADF;
-        break;
-    }
-
-    return ptr;/*success */
-}
-
-void
-url_rewind(URL_FILE *file)
-{
-    switch(file->type)
-    {
-    case CFTYPE_FILE:
-        rewind(file->handle.file); /* passthrough */
-        break;
-
-    case CFTYPE_CURL:
-        /* halt transaction */
-        curl_multi_remove_handle(multi_handle, file->handle.curl);
-
-        /* restart */
-        curl_multi_add_handle(multi_handle, file->handle.curl);
-
-        /* ditch buffer - write will recreate - resets stream pos*/
-        if(file->buffer)
-            free(file->buffer);
-
-        file->buffer=NULL;
-        file->buffer_pos=0;
-        file->buffer_len=0;
-
-        break;
-
-    default: /* unknown or supported type - oh dear */
-        break;
-
-    }
-
-}
-
-
-/* Small main program to retrive from a url using fgets and fread saving the
- * output to two test files (note the fgets method will corrupt binary files if
- * they contain 0 chars */
-int
-main(int argc, char *argv[])
-{
-    URL_FILE *handle;
-    FILE *outf;
-
-    int nread;
-    char buffer[256];
-    const char *url;
-
-    if(argc < 2)
-    {
-        url="http://192.168.7.3/testfile";/* default to testurl */
-    }
-    else
-    {
-        url=argv[1];/* use passed url */
-    }
-
-    /* copy from url line by line with fgets */
-    outf=fopen("fgets.test","w+");
-    if(!outf)
-    {
-        perror("couldn't open fgets output file\n");
-        return 1;
-    }
-
-    handle = url_fopen(url, "r");
-    if(!handle)
-    {
-        printf("couldn't url_fopen() %s\n", url);
-        fclose(outf);
-        return 2;
-    }
-
-    while(!url_feof(handle))
-    {
-        url_fgets(buffer,sizeof(buffer),handle);
-        fwrite(buffer,1,strlen(buffer),outf);
-    }
-
-    url_fclose(handle);
-
-    fclose(outf);
-
-
-    /* Copy from url with fread */
-    outf=fopen("fread.test","w+");
-    if(!outf)
-    {
-        perror("couldn't open fread output file\n");
-        return 1;
-    }
-
-    handle = url_fopen("testfile", "r");
-    if(!handle) {
-        printf("couldn't url_fopen() testfile\n");
-        fclose(outf);
-        return 2;
-    }
-
-    do {
-        nread = url_fread(buffer, 1,sizeof(buffer), handle);
-        fwrite(buffer,1,nread,outf);
-    } while(nread);
-
-    url_fclose(handle);
-
-    fclose(outf);
-
-
-    /* Test rewind */
-    outf=fopen("rewind.test","w+");
-    if(!outf)
-    {
-        perror("couldn't open fread output file\n");
-        return 1;
-    }
-
-    handle = url_fopen("testfile", "r");
-    if(!handle) {
-        printf("couldn't url_fopen() testfile\n");
-        fclose(outf);
-        return 2;
-    }
-
-        nread = url_fread(buffer, 1,sizeof(buffer), handle);
-        fwrite(buffer,1,nread,outf);
-        url_rewind(handle);
-
-        buffer[0]='\n';
-        fwrite(buffer,1,1,outf);
-
-        nread = url_fread(buffer, 1,sizeof(buffer), handle);
-        fwrite(buffer,1,nread,outf);
-
-
-    url_fclose(handle);
-
-    fclose(outf);
-
-
-    return 0;/* all done */
-}
diff --git a/src/other/curl/docs/examples/ftpget.c b/src/other/curl/docs/examples/ftpget.c
deleted file mode 100644
index 78727e7..0000000
--- a/src/other/curl/docs/examples/ftpget.c
+++ /dev/null
@@ -1,86 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-
-#include <curl/curl.h>
-#include <curl/types.h>
-#include <curl/easy.h>
-
-/*
- * This is an example showing how to get a single file from an FTP server.
- * It delays the actual destination file creation until the first write
- * callback so that it won't create an empty file in case the remote file
- * doesn't exist or something else fails.
- */
-
-struct FtpFile {
-  const char *filename;
-  FILE *stream;
-};
-
-static size_t my_fwrite(void *buffer, size_t size, size_t nmemb, void *stream)
-{
-  struct FtpFile *out=(struct FtpFile *)stream;
-  if(out && !out->stream) {
-    /* open file for writing */
-    out->stream=fopen(out->filename, "wb");
-    if(!out->stream)
-      return -1; /* failure, can't open file to write */
-  }
-  return fwrite(buffer, size, nmemb, out->stream);
-}
-
-
-int main(void)
-{
-  CURL *curl;
-  CURLcode res;
-  struct FtpFile ftpfile={
-    "curl.tar.gz", /* name to store the file as if succesful */
-    NULL
-  };
-
-  curl_global_init(CURL_GLOBAL_DEFAULT);
-
-  curl = curl_easy_init();
-  if(curl) {
-    /*
-     * Get curl 7.9.2 from sunet.se's FTP site. curl 7.9.2 is most likely not
-     * present there by the time you read this, so you'd better replace the
-     * URL with one that works!
-     */
-    curl_easy_setopt(curl, CURLOPT_URL,
-                     "ftp://ftp.sunet.se/pub/www/utilities/curl/curl-7.9.2.tar.gz");
-    /* Define our callback to get called when there's data to be written */
-    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, my_fwrite);
-    /* Set a pointer to our struct to pass to the callback */
-    curl_easy_setopt(curl, CURLOPT_WRITEDATA, &ftpfile);
-
-    /* Switch on full protocol/debug output */
-    curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
-
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-
-    if(CURLE_OK != res) {
-      /* we failed */
-      fprintf(stderr, "curl told us %d\n", res);
-    }
-  }
-
-  if(ftpfile.stream)
-    fclose(ftpfile.stream); /* close the local file */
-
-  curl_global_cleanup();
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/ftpgetinfo.c b/src/other/curl/docs/examples/ftpgetinfo.c
deleted file mode 100644
index f30974b..0000000
--- a/src/other/curl/docs/examples/ftpgetinfo.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <string.h>
-
-#include <curl/curl.h>
-#include <curl/types.h>
-#include <curl/easy.h>
-
-/*
- * This is an example showing how to check a single file's size and mtime
- * from an FTP server.
- */
-
-static size_t throw_away(void *ptr, size_t size, size_t nmemb, void *data)
-{
-  /* we are not interested in the headers itself,
-     so we only return the size we would have saved ... */
-  return (size_t)(size * nmemb);
-}
-
-int main(void)
-{
-  /* Check for binutils 2.19.1 from ftp.gnu.org's FTP site. */
-  char ftpurl[] = "ftp://ftp.gnu.org/gnu/binutils/binutils-2.19.1.tar.bz2";
-  CURL *curl;
-  CURLcode res;
-  const time_t filetime;
-  const double filesize;
-  const char *filename = strrchr(ftpurl, '/') + 1;
-
-  curl_global_init(CURL_GLOBAL_DEFAULT);
-
-  curl = curl_easy_init();
-  if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, ftpurl);
-    /* No download if the file */
-    curl_easy_setopt(curl, CURLOPT_NOBODY, 1L);
-    /* Ask for filetime */
-    curl_easy_setopt(curl, CURLOPT_FILETIME, 1L);
-    /* No header output: TODO 14.1 http-style HEAD output for ftp */
-    curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, throw_away);
-    curl_easy_setopt(curl, CURLOPT_HEADER, 0L);
-    /* Switch on full protocol/debug output */
-    /* curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); */
-
-    res = curl_easy_perform(curl);
-
-    if(CURLE_OK == res) {
-      /* http://curl.haxx.se/libcurl/c/curl_easy_getinfo.html */
-      res = curl_easy_getinfo(curl, CURLINFO_FILETIME, &filetime);
-      if((CURLE_OK == res) && filetime)
-        printf("filetime %s: %s", filename, ctime(&filetime));
-      res = curl_easy_getinfo(curl, CURLINFO_CONTENT_LENGTH_DOWNLOAD, &filesize);
-      if((CURLE_OK == res) && filesize)
-        printf("filesize %s: %0.0f bytes\n", filename, filesize);
-    } else {
-      /* we failed */
-      fprintf(stderr, "curl told us %d\n", res);
-    }
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-
-  curl_global_cleanup();
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/ftpgetresp.c b/src/other/curl/docs/examples/ftpgetresp.c
deleted file mode 100644
index 8d837f3..0000000
--- a/src/other/curl/docs/examples/ftpgetresp.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-
-#include <curl/curl.h>
-#include <curl/types.h>
-#include <curl/easy.h>
-
-/*
- * Similar to ftpget.c but this also stores the received response-lines
- * in a separate file using our own callback!
- *
- * This functionality was introduced in libcurl 7.9.3.
- */
-
-static size_t
-write_response(void *ptr, size_t size, size_t nmemb, void *data)
-{
-  FILE *writehere = (FILE *)data;
-  return fwrite(ptr, size, nmemb, writehere);
-}
-
-int main(int argc, char **argv)
-{
-  CURL *curl;
-  CURLcode res;
-  FILE *ftpfile;
-  FILE *respfile;
-
-  /* local file name to store the file as */
-  ftpfile = fopen("ftp-list", "wb"); /* b is binary, needed on win32 */
-
-  /* local file name to store the FTP server's response lines in */
-  respfile = fopen("ftp-responses", "wb"); /* b is binary, needed on win32 */
-
-  curl = curl_easy_init();
-  if(curl) {
-    /* Get a file listing from sunet */
-    curl_easy_setopt(curl, CURLOPT_URL, "ftp://ftp.sunet.se/");
-    curl_easy_setopt(curl, CURLOPT_WRITEDATA, ftpfile);
-    /* If you intend to use this on windows with a libcurl DLL, you must use
-       CURLOPT_WRITEFUNCTION as well */
-    curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, write_response);
-    curl_easy_setopt(curl, CURLOPT_WRITEHEADER, respfile);
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-
-  fclose(ftpfile); /* close the local file */
-  fclose(respfile); /* close the response file */
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/ftpupload.c b/src/other/curl/docs/examples/ftpupload.c
deleted file mode 100644
index d553850..0000000
--- a/src/other/curl/docs/examples/ftpupload.c
+++ /dev/null
@@ -1,120 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <string.h>
-
-#include <curl/curl.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <errno.h>
-#ifdef WIN32
-#include <io.h>
-#else
-#include <unistd.h>
-#endif
-
-/*
- * This example shows an FTP upload, with a rename of the file just after
- * a successful upload.
- *
- * Example based on source code provided by Erick Nuwendam. Thanks!
- */
-
-#define LOCAL_FILE      "/tmp/uploadthis.txt"
-#define UPLOAD_FILE_AS  "while-uploading.txt"
-#define REMOTE_URL      "ftp://localhost/"  UPLOAD_FILE_AS
-#define RENAME_FILE_TO  "renamed-and-fine.txt"
-
-/* NOTE: if you want this example to work on Windows with libcurl as a
-   DLL, you MUST also provide a read callback with CURLOPT_READFUNCTION.
-   Failing to do so will give you a crash since a DLL may not use the
-   variable's memory when passed in to it from an app like this. */
-static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *stream)
-{
-  /* in real-world cases, this would probably get this data differently
-     as this fread() stuff is exactly what the library already would do
-     by default internally */
-  size_t retcode = fread(ptr, size, nmemb, stream);
-
-  fprintf(stderr, "*** We read %d bytes from file\n", retcode);
-  return retcode;
-}
-
-int main(int argc, char **argv)
-{
-  CURL *curl;
-  CURLcode res;
-  FILE *hd_src;
-  struct stat file_info;
-  curl_off_t fsize;
-
-  struct curl_slist *headerlist=NULL;
-  static const char buf_1 [] = "RNFR " UPLOAD_FILE_AS;
-  static const char buf_2 [] = "RNTO " RENAME_FILE_TO;
-
-  /* get the file size of the local file */
-  if(stat(LOCAL_FILE, &file_info)) {
-    printf("Couldnt open '%s': %s\n", LOCAL_FILE, strerror(errno));
-    return 1;
-  }
-  fsize = (curl_off_t)file_info.st_size;
-
-  printf("Local file size: %" CURL_FORMAT_CURL_OFF_T " bytes.\n", fsize);
-
-  /* get a FILE * of the same file */
-  hd_src = fopen(LOCAL_FILE, "rb");
-
-  /* In windows, this will init the winsock stuff */
-  curl_global_init(CURL_GLOBAL_ALL);
-
-  /* get a curl handle */
-  curl = curl_easy_init();
-  if(curl) {
-    /* build a list of commands to pass to libcurl */
-    headerlist = curl_slist_append(headerlist, buf_1);
-    headerlist = curl_slist_append(headerlist, buf_2);
-
-    /* we want to use our own read function */
-    curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback);
-
-    /* enable uploading */
-    curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
-
-    /* specify target */
-    curl_easy_setopt(curl,CURLOPT_URL, REMOTE_URL);
-
-    /* pass in that last of FTP commands to run after the transfer */
-    curl_easy_setopt(curl, CURLOPT_POSTQUOTE, headerlist);
-
-    /* now specify which file to upload */
-    curl_easy_setopt(curl, CURLOPT_READDATA, hd_src);
-
-    /* Set the size of the file to upload (optional).  If you give a *_LARGE
-       option you MUST make sure that the type of the passed-in argument is a
-       curl_off_t. If you use CURLOPT_INFILESIZE (without _LARGE) you must
-       make sure that to pass in a type 'long' argument. */
-    curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE,
-                     (curl_off_t)fsize);
-
-    /* Now run off and do what you've been told! */
-    res = curl_easy_perform(curl);
-
-    /* clean up the FTP commands list */
-    curl_slist_free_all (headerlist);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  fclose(hd_src); /* close the local file */
-
-  curl_global_cleanup();
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/ftpuploadresume.c b/src/other/curl/docs/examples/ftpuploadresume.c
deleted file mode 100644
index 3dda067..0000000
--- a/src/other/curl/docs/examples/ftpuploadresume.c
+++ /dev/null
@@ -1,158 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * Upload to FTP, resuming failed transfers
- *
- * Compile for MinGW like this:
- *  gcc -Wall -pedantic -std=c99 ftpuploadwithresume.c -o ftpuploadresume.exe
- *  -lcurl -lmsvcr70
- *
- * Written by Philip Bock
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-
-#include <curl/curl.h>
-
-#if defined(_MSC_VER) && (_MSC_VER < 1300)
-#  error _snscanf requires MSVC 7.0 or later.
-#endif
-
-/* The MinGW headers are missing a few Win32 function definitions,
-   you shouldn't need this if you use VC++ */
-#ifdef __MINGW32__
-int __cdecl _snscanf(const char * input, size_t length, const char * format, ...);
-#endif
-
-
-/* parse headers for Content-Length */
-size_t getcontentlengthfunc(void *ptr, size_t size, size_t nmemb, void *stream) {
-  int r;
-  long len = 0;
-
-  /* _snscanf() is Win32 specific */
-  r = _snscanf(ptr, size * nmemb, "Content-Length: %ld\n", &len);
-
-  if (r) /* Microsoft: we don't read the specs */
-    *((long *) stream) = len;
-
-  return size * nmemb;
-}
-
-/* discard downloaded data */
-size_t discardfunc(void *ptr, size_t size, size_t nmemb, void *stream) {
-  return size * nmemb;
-}
-
-/* read data to upload */
-size_t readfunc(void *ptr, size_t size, size_t nmemb, void *stream)
-{
-  FILE *f = stream;
-  size_t n;
-
-  if (ferror(f))
-    return CURL_READFUNC_ABORT;
-
-  n = fread(ptr, size, nmemb, f) * size;
-
-  return n;
-}
-
-
-int upload(CURL *curlhandle, const char * remotepath, const char * localpath,
-           long timeout, long tries)
-{
-  FILE *f;
-  long uploaded_len = 0;
-  CURLcode r = CURLE_GOT_NOTHING;
-  int c;
-
-  f = fopen(localpath, "rb");
-  if (f == NULL) {
-    perror(NULL);
-    return 0;
-  }
-
-  curl_easy_setopt(curlhandle, CURLOPT_UPLOAD, 1L);
-
-  curl_easy_setopt(curlhandle, CURLOPT_URL, remotepath);
-
-  if (timeout)
-    curl_easy_setopt(curlhandle, CURLOPT_FTP_RESPONSE_TIMEOUT, timeout);
-
-  curl_easy_setopt(curlhandle, CURLOPT_HEADERFUNCTION, getcontentlengthfunc);
-  curl_easy_setopt(curlhandle, CURLOPT_HEADERDATA, &uploaded_len);
-
-  curl_easy_setopt(curlhandle, CURLOPT_WRITEFUNCTION, discardfunc);
-
-  curl_easy_setopt(curlhandle, CURLOPT_READFUNCTION, readfunc);
-  curl_easy_setopt(curlhandle, CURLOPT_READDATA, f);
-
-  curl_easy_setopt(curlhandle, CURLOPT_FTPPORT, "-"); /* disable passive mode */
-  curl_easy_setopt(curlhandle, CURLOPT_FTP_CREATE_MISSING_DIRS, 1L);
-
-  curl_easy_setopt(curlhandle, CURLOPT_VERBOSE, 1L);
-
-  for (c = 0; (r != CURLE_OK) && (c < tries); c++) {
-    /* are we resuming? */
-    if (c) { /* yes */
-      /* determine the length of the file already written */
-
-      /*
-       * With NOBODY and NOHEADER, libcurl will issue a SIZE
-       * command, but the only way to retrieve the result is
-       * to parse the returned Content-Length header. Thus,
-       * getcontentlengthfunc(). We need discardfunc() above
-       * because HEADER will dump the headers to stdout
-       * without it.
-       */
-      curl_easy_setopt(curlhandle, CURLOPT_NOBODY, 1L);
-      curl_easy_setopt(curlhandle, CURLOPT_HEADER, 1L);
-
-      r = curl_easy_perform(curlhandle);
-      if (r != CURLE_OK)
-        continue;
-
-      curl_easy_setopt(curlhandle, CURLOPT_NOBODY, 0L);
-      curl_easy_setopt(curlhandle, CURLOPT_HEADER, 0L);
-
-      fseek(f, uploaded_len, SEEK_SET);
-
-      curl_easy_setopt(curlhandle, CURLOPT_APPEND, 1L);
-    }
-    else { /* no */
-      curl_easy_setopt(curlhandle, CURLOPT_APPEND, 0L);
-    }
-
-    r = curl_easy_perform(curlhandle);
-  }
-
-  fclose(f);
-
-  if (r == CURLE_OK)
-    return 1;
-  else {
-    fprintf(stderr, "%s\n", curl_easy_strerror(r));
-    return 0;
-  }
-}
-
-int main(int c, char **argv) {
-  CURL *curlhandle = NULL;
-
-  curl_global_init(CURL_GLOBAL_ALL);
-  curlhandle = curl_easy_init();
-
-  upload(curlhandle, "ftp://user:pass@host/path/file", "C:\\file", 0, 3);
-
-  curl_easy_cleanup(curlhandle);
-  curl_global_cleanup();
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/getinfo.c b/src/other/curl/docs/examples/getinfo.c
deleted file mode 100644
index a963019..0000000
--- a/src/other/curl/docs/examples/getinfo.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <curl/curl.h>
-
-int main(void)
-{
-  CURL *curl;
-  CURLcode res;
-
-  /* http://curl.haxx.se/libcurl/c/curl_easy_init.html */
-  curl = curl_easy_init();
-  if(curl) {
-    /* http://curl.haxx.se/libcurl/c/curl_easy_setopt.html#CURLOPTURL */
-    curl_easy_setopt(curl, CURLOPT_URL, "curl.haxx.se");
-    /* http://curl.haxx.se/libcurl/c/curl_easy_perform.html */
-    res = curl_easy_perform(curl);
-
-    if(CURLE_OK == res) {
-      char *ct;
-      /* ask for the content-type */
-      /* http://curl.haxx.se/libcurl/c/curl_easy_getinfo.html */
-      res = curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &ct);
-
-      if((CURLE_OK == res) && ct)
-        printf("We received Content-Type: %s\n", ct);
-    }
-
-    /* always cleanup */
-    /* http://curl.haxx.se/libcurl/c/curl_easy_cleanup.html */
-    curl_easy_cleanup(curl);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/getinmemory.c b/src/other/curl/docs/examples/getinmemory.c
deleted file mode 100644
index 5a66a04..0000000
--- a/src/other/curl/docs/examples/getinmemory.c
+++ /dev/null
@@ -1,106 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * Example source code to show how the callback function can be used to
- * download data into a chunk of memory instead of storing it in a file.
- *
- * This exact source code has not been verified to work.
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include <curl/curl.h>
-#include <curl/types.h>
-#include <curl/easy.h>
-
-struct MemoryStruct {
-  char *memory;
-  size_t size;
-};
-
-static void *myrealloc(void *ptr, size_t size);
-
-static void *myrealloc(void *ptr, size_t size)
-{
-  /* There might be a realloc() out there that doesn't like reallocing
-     NULL pointers, so we take care of it here */
-  if(ptr)
-    return realloc(ptr, size);
-  else
-    return malloc(size);
-}
-
-static size_t
-WriteMemoryCallback(void *ptr, size_t size, size_t nmemb, void *data)
-{
-  size_t realsize = size * nmemb;
-  struct MemoryStruct *mem = (struct MemoryStruct *)data;
-
-  mem->memory = myrealloc(mem->memory, mem->size + realsize + 1);
-  if (mem->memory) {
-    memcpy(&(mem->memory[mem->size]), ptr, realsize);
-    mem->size += realsize;
-    mem->memory[mem->size] = 0;
-  }
-  return realsize;
-}
-
-int main(int argc, char **argv)
-{
-  CURL *curl_handle;
-
-  struct MemoryStruct chunk;
-
-  chunk.memory=NULL; /* we expect realloc(NULL, size) to work */
-  chunk.size = 0;    /* no data at this point */
-
-  curl_global_init(CURL_GLOBAL_ALL);
-
-  /* init the curl session */
-  curl_handle = curl_easy_init();
-
-  /* specify URL to get */
-  curl_easy_setopt(curl_handle, CURLOPT_URL, "http://cool.haxx.se/");
-
-  /* send all data to this function  */
-  curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, WriteMemoryCallback);
-
-  /* we pass our 'chunk' struct to the callback function */
-  curl_easy_setopt(curl_handle, CURLOPT_WRITEDATA, (void *)&chunk);
-
-  /* some servers don't like requests that are made without a user-agent
-     field, so we provide one */
-  curl_easy_setopt(curl_handle, CURLOPT_USERAGENT, "libcurl-agent/1.0");
-
-  /* get it! */
-  curl_easy_perform(curl_handle);
-
-  /* cleanup curl stuff */
-  curl_easy_cleanup(curl_handle);
-
-  /*
-   * Now, our chunk.memory points to a memory block that is chunk.size
-   * bytes big and contains the remote file.
-   *
-   * Do something nice with it!
-   *
-   * You should be aware of the fact that at this point we might have an
-   * allocated data block, and nothing has yet deallocated that data. So when
-   * you're done with it, you should free() it as a nice application.
-   */
-
-  if(chunk.memory)
-    free(chunk.memory);
-
-  /* we're done with libcurl, so clean it up */
-  curl_global_cleanup();
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/ghiper.c b/src/other/curl/docs/examples/ghiper.c
deleted file mode 100644
index 4f3913d..0000000
--- a/src/other/curl/docs/examples/ghiper.c
+++ /dev/null
@@ -1,460 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * Example application source code using the multi socket interface to
- * download many files at once.
- *
- * Written by Jeff Pohlmeyer
-
-Requires glib-2.x and a (POSIX?) system that has mkfifo().
-
-This is an adaptation of libcurl's "hipev.c" and libevent's "event-test.c"
-sample programs, adapted to use glib's g_io_channel in place of libevent.
-
-When running, the program creates the named pipe "hiper.fifo"
-
-Whenever there is input into the fifo, the program reads the input as a list
-of URL's and creates some new easy handles to fetch each URL via the
-curl_multi "hiper" API.
-
-
-Thus, you can try a single URL:
-  % echo http://www.yahoo.com > hiper.fifo
-
-Or a whole bunch of them:
-  % cat my-url-list > hiper.fifo
-
-The fifo buffer is handled almost instantly, so you can even add more URL's
-while the previous requests are still being downloaded.
-
-This is purely a demo app, all retrieved data is simply discarded by the write
-callback.
-
-*/
-
-
-#include <glib.h>
-#include <sys/stat.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <errno.h>
-#include <curl/curl.h>
-
-
-#define MSG_OUT g_print   /* Change to "g_error" to write to stderr */
-#define SHOW_VERBOSE 0    /* Set to non-zero for libcurl messages */
-#define SHOW_PROGRESS 0   /* Set to non-zero to enable progress callback */
-
-
-
-/* Global information, common to all connections */
-typedef struct _GlobalInfo {
-  CURLM *multi;
-  guint timer_event;
-  int prev_running;
-  int still_running;
-  int requested; /* count: curl_easy_init() */
-  int completed; /* count: curl_easy_cleanup() */
-} GlobalInfo;
-
-
-
-/* Information associated with a specific easy handle */
-typedef struct _ConnInfo {
-  CURL *easy;
-  char *url;
-  GlobalInfo *global;
-  char error[CURL_ERROR_SIZE];
-} ConnInfo;
-
-
-/* Information associated with a specific socket */
-typedef struct _SockInfo {
-  curl_socket_t sockfd;
-  CURL *easy;
-  int action;
-  long timeout;
-  GIOChannel *ch;
-  guint ev;
-  GlobalInfo *global;
-} SockInfo;
-
-
-
-
-/* Die if we get a bad CURLMcode somewhere */
-static void mcode_or_die(const char *where, CURLMcode code) {
-  if ( CURLM_OK != code ) {
-    const char *s;
-    switch (code) {
-      case     CURLM_CALL_MULTI_PERFORM: s="CURLM_CALL_MULTI_PERFORM"; break;
-      case     CURLM_OK:                 s="CURLM_OK";                 break;
-      case     CURLM_BAD_HANDLE:         s="CURLM_BAD_HANDLE";         break;
-      case     CURLM_BAD_EASY_HANDLE:    s="CURLM_BAD_EASY_HANDLE";    break;
-      case     CURLM_OUT_OF_MEMORY:      s="CURLM_OUT_OF_MEMORY";      break;
-      case     CURLM_INTERNAL_ERROR:     s="CURLM_INTERNAL_ERROR";     break;
-      case     CURLM_BAD_SOCKET:         s="CURLM_BAD_SOCKET";         break;
-      case     CURLM_UNKNOWN_OPTION:     s="CURLM_UNKNOWN_OPTION";     break;
-      case     CURLM_LAST:               s="CURLM_LAST";               break;
-      default: s="CURLM_unknown";
-    }
-    MSG_OUT("ERROR: %s returns %s\n", where, s);
-    exit(code);
-  }
-}
-
-
-
-/* Check for completed transfers, and remove their easy handles */
-static void check_run_count(GlobalInfo *g)
-{
-  if (g->prev_running > g->still_running) {
-    char *eff_url=NULL;
-    CURLMsg *msg;
-    int msgs_left;
-    ConnInfo *conn=NULL;
-    CURL*easy;
-    CURLcode res;
-
-    MSG_OUT("REMAINING: %d\n", g->still_running);
-    /*
-      I am still uncertain whether it is safe to remove an easy handle
-      from inside the curl_multi_info_read loop, so here I will search
-      for completed transfers in the inner "while" loop, and then remove
-      them in the outer "do-while" loop...
-   */
-    do {
-      easy=NULL;
-      while ((msg = curl_multi_info_read(g->multi, &msgs_left))) {
-        if (msg->msg == CURLMSG_DONE) {
-          easy=msg->easy_handle;
-          res=msg->data.result;
-          break;
-        }
-      }
-      if (easy) {
-          curl_easy_getinfo(easy, CURLINFO_PRIVATE, &conn);
-          curl_easy_getinfo(easy, CURLINFO_EFFECTIVE_URL, &eff_url);
-          MSG_OUT("DONE: %s => (%d) %s\n", eff_url, res, conn->error);
-          curl_multi_remove_handle(g->multi, easy);
-          g_free(conn->url);
-          curl_easy_cleanup(easy);
-          g_free(conn);
-          g->completed++;
-      }
-    } while ( easy );
-    MSG_OUT("Requested: %d Completed:%d\n", g->requested, g->completed);
-  }
-  g->prev_running = g->still_running;
-}
-
-
-
-
-/* Called by glib when our timeout expires */
-static gboolean timer_cb(gpointer data)
-{
-  GlobalInfo *g = (GlobalInfo *)data;
-  CURLMcode rc;
-
-  do {
-    rc = curl_multi_socket(g->multi, CURL_SOCKET_TIMEOUT, &g->still_running);
-  } while (rc == CURLM_CALL_MULTI_PERFORM);
-  mcode_or_die("timer_cb: curl_multi_socket", rc);
-  check_run_count(g);
-  return FALSE;
-}
-
-
-
-/* Update the event timer after curl_multi library calls */
-static int update_timeout_cb(CURLM *multi, long timeout_ms, void *userp)
-{
-  struct timeval timeout;
-  GlobalInfo *g=(GlobalInfo *)userp;
-  timeout.tv_sec = timeout_ms/1000;
-  timeout.tv_usec = (timeout_ms%1000)*1000;
-
-  MSG_OUT("*** update_timeout_cb %ld => %ld:%ld ***\n",
-              timeout_ms, timeout.tv_sec, timeout.tv_usec);
-
-  g->timer_event = g_timeout_add(timeout_ms, timer_cb, g);
-  return 0;
-}
-
-
-
-
-/* Called by glib when we get action on a multi socket */
-static gboolean event_cb(GIOChannel *ch, GIOCondition condition, gpointer data)
-{
-  GlobalInfo *g = (GlobalInfo*) data;
-  CURLMcode rc;
-  int fd=g_io_channel_unix_get_fd(ch);
-  do {
-    rc = curl_multi_socket(g->multi, fd, &g->still_running);
-  } while (rc == CURLM_CALL_MULTI_PERFORM);
-  mcode_or_die("event_cb: curl_multi_socket", rc);
-  check_run_count(g);
-  if(g->still_running) {
-    return TRUE;
-  } else {
-    MSG_OUT("last transfer done, kill timeout\n");
-    if (g->timer_event) { g_source_remove(g->timer_event); }
-    return FALSE;
-  }
-}
-
-
-
-/* Clean up the SockInfo structure */
-static void remsock(SockInfo *f)
-{
-  if (!f) { return; }
-  if (f->ev) { g_source_remove(f->ev); }
-  g_free(f);
-}
-
-
-
-/* Assign information to a SockInfo structure */
-static void setsock(SockInfo*f, curl_socket_t s, CURL*e, int act, GlobalInfo*g)
-{
-  GIOCondition kind =
-     (act&CURL_POLL_IN?G_IO_IN:0)|(act&CURL_POLL_OUT?G_IO_OUT:0);
-
-  f->sockfd = s;
-  f->action = act;
-  f->easy = e;
-  if (f->ev) { g_source_remove(f->ev); }
-  f->ev=g_io_add_watch(f->ch, kind, event_cb,g);
-
-}
-
-
-
-/* Initialize a new SockInfo structure */
-static void addsock(curl_socket_t s, CURL *easy, int action, GlobalInfo *g)
-{
-  SockInfo *fdp = g_malloc0(sizeof(SockInfo));
-
-  fdp->global = g;
-  fdp->ch=g_io_channel_unix_new(s);
-  setsock(fdp, s, easy, action, g);
-  curl_multi_assign(g->multi, s, fdp);
-}
-
-
-
-/* CURLMOPT_SOCKETFUNCTION */
-static int sock_cb(CURL *e, curl_socket_t s, int what, void *cbp, void *sockp)
-{
-  GlobalInfo *g = (GlobalInfo*) cbp;
-  SockInfo *fdp = (SockInfo*) sockp;
-  static const char *whatstr[]={ "none", "IN", "OUT", "INOUT", "REMOVE" };
-
-  MSG_OUT("socket callback: s=%d e=%p what=%s ", s, e, whatstr[what]);
-  if (what == CURL_POLL_REMOVE) {
-    MSG_OUT("\n");
-    remsock(fdp);
-  } else {
-    if (!fdp) {
-      MSG_OUT("Adding data: %s%s\n",
-             what&CURL_POLL_IN?"READ":"",
-             what&CURL_POLL_OUT?"WRITE":"" );
-      addsock(s, e, what, g);
-    }
-    else {
-      MSG_OUT(
-        "Changing action from %d to %d\n", fdp->action, what);
-      setsock(fdp, s, e, what, g);
-    }
-  }
-  return 0;
-}
-
-
-
-/* CURLOPT_WRITEFUNCTION */
-static size_t write_cb(void *ptr, size_t size, size_t nmemb, void *data)
-{
-  size_t realsize = size * nmemb;
-  ConnInfo *conn = (ConnInfo*) data;
-  (void)ptr;
-  (void)conn;
-  return realsize;
-}
-
-
-
-/* CURLOPT_PROGRESSFUNCTION */
-static int prog_cb (void *p, double dltotal, double dlnow, double ult, double uln)
-{
-  ConnInfo *conn = (ConnInfo *)p;
-  MSG_OUT("Progress: %s (%g/%g)\n", conn->url, dlnow, dltotal);
-  return 0;
-}
-
-
-
-/* Create a new easy handle, and add it to the global curl_multi */
-static void new_conn(char *url, GlobalInfo *g )
-{
-  ConnInfo *conn;
-  CURLMcode rc;
-
-  conn = g_malloc0(sizeof(ConnInfo));
-
-  conn->error[0]='\0';
-
-  conn->easy = curl_easy_init();
-  if (!conn->easy) {
-    MSG_OUT("curl_easy_init() failed, exiting!\n");
-    exit(2);
-  }
-  conn->global = g;
-  conn->url = g_strdup(url);
-  curl_easy_setopt(conn->easy, CURLOPT_URL, conn->url);
-  curl_easy_setopt(conn->easy, CURLOPT_WRITEFUNCTION, write_cb);
-  curl_easy_setopt(conn->easy, CURLOPT_WRITEDATA, &conn);
-  curl_easy_setopt(conn->easy, CURLOPT_VERBOSE, (long)SHOW_VERBOSE);
-  curl_easy_setopt(conn->easy, CURLOPT_ERRORBUFFER, conn->error);
-  curl_easy_setopt(conn->easy, CURLOPT_PRIVATE, conn);
-  curl_easy_setopt(conn->easy, CURLOPT_NOPROGRESS, SHOW_PROGRESS?0L:1L);
-  curl_easy_setopt(conn->easy, CURLOPT_PROGRESSFUNCTION, prog_cb);
-  curl_easy_setopt(conn->easy, CURLOPT_PROGRESSDATA, conn);
-  curl_easy_setopt(conn->easy, CURLOPT_FOLLOWLOCATION, 1L);
-  curl_easy_setopt(conn->easy, CURLOPT_CONNECTTIMEOUT, 30L);
-  curl_easy_setopt(conn->easy, CURLOPT_LOW_SPEED_LIMIT, 1L);
-  curl_easy_setopt(conn->easy, CURLOPT_LOW_SPEED_TIME, 30L);
-
-  MSG_OUT("Adding easy %p to multi %p (%s)\n", conn->easy, g->multi, url);
-  rc =curl_multi_add_handle(g->multi, conn->easy);
-  mcode_or_die("new_conn: curl_multi_add_handle", rc);
-  g->requested++;
-  do {
-    rc = curl_multi_socket_all(g->multi, &g->still_running);
-  } while (CURLM_CALL_MULTI_PERFORM == rc);
-  mcode_or_die("new_conn: curl_multi_socket_all", rc);
-  check_run_count(g);
-}
-
-
-/* This gets called by glib whenever data is received from the fifo */
-static gboolean fifo_cb (GIOChannel *ch, GIOCondition condition, gpointer data)
-{
-  #define BUF_SIZE 1024
-  gsize len, tp;
-  gchar *buf, *tmp, *all=NULL;
-  GIOStatus rv;
-
-  do {
-    GError *err=NULL;
-    rv = g_io_channel_read_line (ch,&buf,&len,&tp,&err);
-    if ( buf ) {
-      if (tp) { buf[tp]='\0'; }
-      new_conn(buf,(GlobalInfo*)data);
-      g_free(buf);
-    } else {
-      buf = g_malloc(BUF_SIZE+1);
-      while (TRUE) {
-        buf[BUF_SIZE]='\0';
-        g_io_channel_read_chars(ch,buf,BUF_SIZE,&len,&err);
-        if (len) {
-          buf[len]='\0';
-          if (all) {
-            tmp=all;
-            all=g_strdup_printf("%s%s", tmp, buf);
-            g_free(tmp);
-          } else {
-            all = g_strdup(buf);
-          }
-        } else {
-           break;
-        }
-      }
-      if (all) {
-        new_conn(all,(GlobalInfo*)data);
-        g_free(all);
-      }
-      g_free(buf);
-    }
-    if ( err ) {
-      g_error("fifo_cb: %s", err->message);
-      g_free(err);
-      break;
-    }
-  } while ( (len) && (rv == G_IO_STATUS_NORMAL) );
-  return TRUE;
-}
-
-
-
-
-int init_fifo(void)
-{
- struct stat st;
- const char *fifo = "hiper.fifo";
- int socket;
-
- if (lstat (fifo, &st) == 0) {
-  if ((st.st_mode & S_IFMT) == S_IFREG) {
-   errno = EEXIST;
-   perror("lstat");
-   exit (1);
-  }
- }
-
- unlink (fifo);
- if (mkfifo (fifo, 0600) == -1) {
-  perror("mkfifo");
-  exit (1);
- }
-
- socket = open (fifo, O_RDWR | O_NONBLOCK, 0);
-
- if (socket == -1) {
-  perror("open");
-  exit (1);
- }
- MSG_OUT("Now, pipe some URL's into > %s\n", fifo);
-
- return socket;
-
-}
-
-
-
-
-int main(int argc, char **argv)
-{
-  GlobalInfo *g;
-  CURLMcode rc;
-  GMainLoop*gmain;
-  int fd;
-  GIOChannel* ch;
-  g=g_malloc0(sizeof(GlobalInfo));
-
-  fd=init_fifo();
-  ch=g_io_channel_unix_new(fd);
-  g_io_add_watch(ch,G_IO_IN,fifo_cb,g);
-  gmain=g_main_loop_new(NULL,FALSE);
-  g->multi = curl_multi_init();
-  curl_multi_setopt(g->multi, CURLMOPT_SOCKETFUNCTION, sock_cb);
-  curl_multi_setopt(g->multi, CURLMOPT_SOCKETDATA, g);
-  curl_multi_setopt(g->multi, CURLMOPT_TIMERFUNCTION, update_timeout_cb);
-  curl_multi_setopt(g->multi, CURLMOPT_TIMERDATA, g);
-  do {
-    rc = curl_multi_socket_all(g->multi, &g->still_running);
-  } while (CURLM_CALL_MULTI_PERFORM == rc);
-  g_main_loop_run(gmain);
-  curl_multi_cleanup(g->multi);
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/hiperfifo.c b/src/other/curl/docs/examples/hiperfifo.c
deleted file mode 100644
index f5b422b..0000000
--- a/src/other/curl/docs/examples/hiperfifo.c
+++ /dev/null
@@ -1,427 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * Example application source code using the multi socket interface to
- * download many files at once.
- *
- * Written by Jeff Pohlmeyer
-
-Requires libevent and a (POSIX?) system that has mkfifo().
-
-This is an adaptation of libcurl's "hipev.c" and libevent's "event-test.c"
-sample programs.
-
-When running, the program creates the named pipe "hiper.fifo"
-
-Whenever there is input into the fifo, the program reads the input as a list
-of URL's and creates some new easy handles to fetch each URL via the
-curl_multi "hiper" API.
-
-
-Thus, you can try a single URL:
-  % echo http://www.yahoo.com > hiper.fifo
-
-Or a whole bunch of them:
-  % cat my-url-list > hiper.fifo
-
-The fifo buffer is handled almost instantly, so you can even add more URL's
-while the previous requests are still being downloaded.
-
-Note:
-  For the sake of simplicity, URL length is limited to 1023 char's !
-
-This is purely a demo app, all retrieved data is simply discarded by the write
-callback.
-
-*/
-
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <sys/time.h>
-#include <time.h>
-#include <unistd.h>
-#include <sys/poll.h>
-#include <curl/curl.h>
-#include <event.h>
-#include <fcntl.h>
-#include <sys/stat.h>
-#include <errno.h>
-
-
-#define MSG_OUT stdout /* Send info to stdout, change to stderr if you want */
-
-
-/* Global information, common to all connections */
-typedef struct _GlobalInfo {
-  struct event fifo_event;
-  struct event timer_event;
-  CURLM *multi;
-  int prev_running;
-  int still_running;
-  FILE* input;
-} GlobalInfo;
-
-
-/* Information associated with a specific easy handle */
-typedef struct _ConnInfo {
-  CURL *easy;
-  char *url;
-  GlobalInfo *global;
-  char error[CURL_ERROR_SIZE];
-} ConnInfo;
-
-
-/* Information associated with a specific socket */
-typedef struct _SockInfo {
-  curl_socket_t sockfd;
-  CURL *easy;
-  int action;
-  long timeout;
-  struct event ev;
-  int evset;
-  GlobalInfo *global;
-} SockInfo;
-
-
-
-/* Update the event timer after curl_multi library calls */
-static int multi_timer_cb(CURLM *multi, long timeout_ms, GlobalInfo *g)
-{
-  struct timeval timeout;
-  (void)multi; /* unused */
-
-  timeout.tv_sec = timeout_ms/1000;
-  timeout.tv_usec = (timeout_ms%1000)*1000;
-  fprintf(MSG_OUT, "multi_timer_cb: Setting timeout to %ld ms\n", timeout_ms);
-  evtimer_add(&g->timer_event, &timeout);
-  return 0;
-}
-
-/* Die if we get a bad CURLMcode somewhere */
-static void mcode_or_die(const char *where, CURLMcode code)
-{
-  if ( CURLM_OK != code ) {
-    const char *s;
-    switch (code) {
-      case     CURLM_CALL_MULTI_PERFORM: s="CURLM_CALL_MULTI_PERFORM"; break;
-      case     CURLM_OK:                 s="CURLM_OK";                 break;
-      case     CURLM_BAD_HANDLE:         s="CURLM_BAD_HANDLE";         break;
-      case     CURLM_BAD_EASY_HANDLE:    s="CURLM_BAD_EASY_HANDLE";    break;
-      case     CURLM_OUT_OF_MEMORY:      s="CURLM_OUT_OF_MEMORY";      break;
-      case     CURLM_INTERNAL_ERROR:     s="CURLM_INTERNAL_ERROR";     break;
-      case     CURLM_UNKNOWN_OPTION:     s="CURLM_UNKNOWN_OPTION";     break;
-      case     CURLM_LAST:               s="CURLM_LAST";               break;
-      default: s="CURLM_unknown";
-        break;
-    case     CURLM_BAD_SOCKET:         s="CURLM_BAD_SOCKET";
-      fprintf(MSG_OUT, "ERROR: %s returns %s\n", where, s);
-      /* ignore this error */
-      return;
-    }
-    fprintf(MSG_OUT, "ERROR: %s returns %s\n", where, s);
-    exit(code);
-  }
-}
-
-
-
-/* Check for completed transfers, and remove their easy handles */
-static void check_run_count(GlobalInfo *g)
-{
-  if (g->prev_running > g->still_running) {
-    char *eff_url=NULL;
-    CURLMsg *msg;
-    int msgs_left;
-    ConnInfo *conn=NULL;
-    CURL*easy;
-    CURLcode res;
-
-    fprintf(MSG_OUT, "REMAINING: %d\n", g->still_running);
-    /*
-      I am still uncertain whether it is safe to remove an easy handle
-      from inside the curl_multi_info_read loop, so here I will search
-      for completed transfers in the inner "while" loop, and then remove
-      them in the outer "do-while" loop...
-   */
-    do {
-      easy=NULL;
-      while ((msg = curl_multi_info_read(g->multi, &msgs_left))) {
-        if (msg->msg == CURLMSG_DONE) {
-          easy=msg->easy_handle;
-          res=msg->data.result;
-          break;
-        }
-      }
-      if (easy) {
-          curl_easy_getinfo(easy, CURLINFO_PRIVATE, &conn);
-          curl_easy_getinfo(easy, CURLINFO_EFFECTIVE_URL, &eff_url);
-          fprintf(MSG_OUT, "DONE: %s => (%d) %s\n", eff_url, res, conn->error);
-          curl_multi_remove_handle(g->multi, easy);
-          free(conn->url);
-          curl_easy_cleanup(easy);
-          free(conn);
-      }
-    } while ( easy );
-  }
-  g->prev_running = g->still_running;
-}
-
-
-
-/* Called by libevent when we get action on a multi socket */
-static void event_cb(int fd, short kind, void *userp)
-{
-  GlobalInfo *g = (GlobalInfo*) userp;
-  CURLMcode rc;
-
-  int action =
-    (kind&EV_READ?CURL_CSELECT_IN:0)|
-    (kind&EV_WRITE?CURL_CSELECT_OUT:0);
-
-  do {
-    rc = curl_multi_socket_action(g->multi, fd, action, &g->still_running);
-  } while (rc == CURLM_CALL_MULTI_PERFORM);
-
-  mcode_or_die("event_cb: curl_multi_socket_action", rc);
-
-  check_run_count(g);
-  if ( g->still_running <= 0 ) {
-    fprintf(MSG_OUT, "last transfer done, kill timeout\n");
-    if (evtimer_pending(&g->timer_event, NULL)) {
-      evtimer_del(&g->timer_event);
-    }
-  }
-}
-
-
-
-/* Called by libevent when our timeout expires */
-static void timer_cb(int fd, short kind, void *userp)
-{
-  GlobalInfo *g = (GlobalInfo *)userp;
-  CURLMcode rc;
-  (void)fd;
-  (void)kind;
-
-  do {
-    rc = curl_multi_socket_action(g->multi,
-                                  CURL_SOCKET_TIMEOUT, 0, &g->still_running);
-  } while (rc == CURLM_CALL_MULTI_PERFORM);
-  mcode_or_die("timer_cb: curl_multi_socket_action", rc);
-  check_run_count(g);
-}
-
-
-
-/* Clean up the SockInfo structure */
-static void remsock(SockInfo *f)
-{
-  if (f) {
-    if (f->evset)
-      event_del(&f->ev);
-    free(f);
-  }
-}
-
-
-
-/* Assign information to a SockInfo structure */
-static void setsock(SockInfo*f, curl_socket_t s, CURL*e, int act, GlobalInfo*g)
-{
-  int kind =
-     (act&CURL_POLL_IN?EV_READ:0)|(act&CURL_POLL_OUT?EV_WRITE:0)|EV_PERSIST;
-
-  f->sockfd = s;
-  f->action = act;
-  f->easy = e;
-  if (f->evset)
-    event_del(&f->ev);
-  event_set(&f->ev, f->sockfd, kind, event_cb, g);
-  f->evset=1;
-  event_add(&f->ev, NULL);
-}
-
-
-
-/* Initialize a new SockInfo structure */
-static void addsock(curl_socket_t s, CURL *easy, int action, GlobalInfo *g) {
-  SockInfo *fdp = calloc(sizeof(SockInfo), 1);
-
-  fdp->global = g;
-  setsock(fdp, s, easy, action, g);
-  curl_multi_assign(g->multi, s, fdp);
-}
-
-/* CURLMOPT_SOCKETFUNCTION */
-static int sock_cb(CURL *e, curl_socket_t s, int what, void *cbp, void *sockp)
-{
-  GlobalInfo *g = (GlobalInfo*) cbp;
-  SockInfo *fdp = (SockInfo*) sockp;
-  const char *whatstr[]={ "none", "IN", "OUT", "INOUT", "REMOVE" };
-
-  fprintf(MSG_OUT,
-          "socket callback: s=%d e=%p what=%s ", s, e, whatstr[what]);
-  if (what == CURL_POLL_REMOVE) {
-    fprintf(MSG_OUT, "\n");
-    remsock(fdp);
-  }
-  else {
-    if (!fdp) {
-      fprintf(MSG_OUT, "Adding data: %s\n", whatstr[what]);
-      addsock(s, e, what, g);
-    }
-    else {
-      fprintf(MSG_OUT,
-              "Changing action from %s to %s\n",
-              whatstr[fdp->action], whatstr[what]);
-      setsock(fdp, s, e, what, g);
-    }
-  }
-  return 0;
-}
-
-
-
-/* CURLOPT_WRITEFUNCTION */
-static size_t write_cb(void *ptr, size_t size, size_t nmemb, void *data)
-{
-  size_t realsize = size * nmemb;
-  ConnInfo *conn = (ConnInfo*) data;
-  (void)ptr;
-  (void)conn;
-  return realsize;
-}
-
-
-/* CURLOPT_PROGRESSFUNCTION */
-static int prog_cb (void *p, double dltotal, double dlnow, double ult,
-                    double uln)
-{
-  ConnInfo *conn = (ConnInfo *)p;
-  (void)ult;
-  (void)uln;
-
-  fprintf(MSG_OUT, "Progress: %s (%g/%g)\n", conn->url, dlnow, dltotal);
-  return 0;
-}
-
-
-/* Create a new easy handle, and add it to the global curl_multi */
-static void new_conn(char *url, GlobalInfo *g )
-{
-  ConnInfo *conn;
-  CURLMcode rc;
-
-  conn = calloc(1, sizeof(ConnInfo));
-  memset(conn, 0, sizeof(ConnInfo));
-  conn->error[0]='\0';
-
-  conn->easy = curl_easy_init();
-  if (!conn->easy) {
-    fprintf(MSG_OUT, "curl_easy_init() failed, exiting!\n");
-    exit(2);
-  }
-  conn->global = g;
-  conn->url = strdup(url);
-  curl_easy_setopt(conn->easy, CURLOPT_URL, conn->url);
-  curl_easy_setopt(conn->easy, CURLOPT_WRITEFUNCTION, write_cb);
-  curl_easy_setopt(conn->easy, CURLOPT_WRITEDATA, &conn);
-  curl_easy_setopt(conn->easy, CURLOPT_VERBOSE, 1L);
-  curl_easy_setopt(conn->easy, CURLOPT_ERRORBUFFER, conn->error);
-  curl_easy_setopt(conn->easy, CURLOPT_PRIVATE, conn);
-  curl_easy_setopt(conn->easy, CURLOPT_NOPROGRESS, 0L);
-  curl_easy_setopt(conn->easy, CURLOPT_PROGRESSFUNCTION, prog_cb);
-  curl_easy_setopt(conn->easy, CURLOPT_PROGRESSDATA, conn);
-  fprintf(MSG_OUT,
-          "Adding easy %p to multi %p (%s)\n", conn->easy, g->multi, url);
-  rc =curl_multi_add_handle(g->multi, conn->easy);
-  mcode_or_die("new_conn: curl_multi_add_handle", rc);
-
-  /* note that the add_handle() will set a time-out to trigger very soon so
-     that the necessary socket_action() call will be called by this app */
-}
-
-/* This gets called whenever data is received from the fifo */
-static void fifo_cb(int fd, short event, void *arg)
-{
-  char s[1024];
-  long int rv=0;
-  int n=0;
-  GlobalInfo *g = (GlobalInfo *)arg;
-  (void)fd; /* unused */
-  (void)event; /* unused */
-
-  do {
-    s[0]='\0';
-    rv=fscanf(g->input, "%1023s%n", s, &n);
-    s[n]='\0';
-    if ( n && s[0] ) {
-      new_conn(s,arg);  /* if we read a URL, go get it! */
-    } else break;
-  } while ( rv != EOF);
-}
-
-/* Create a named pipe and tell libevent to monitor it */
-static int init_fifo (GlobalInfo *g)
-{
-  struct stat st;
-  static const char *fifo = "hiper.fifo";
-  int sockfd;
-
-  fprintf(MSG_OUT, "Creating named pipe \"%s\"\n", fifo);
-  if (lstat (fifo, &st) == 0) {
-    if ((st.st_mode & S_IFMT) == S_IFREG) {
-      errno = EEXIST;
-      perror("lstat");
-      exit (1);
-    }
-  }
-  unlink(fifo);
-  if (mkfifo (fifo, 0600) == -1) {
-    perror("mkfifo");
-    exit (1);
-  }
-  sockfd = open(fifo, O_RDWR | O_NONBLOCK, 0);
-  if (sockfd == -1) {
-    perror("open");
-    exit (1);
-  }
-  g->input = fdopen(sockfd, "r");
-
-  fprintf(MSG_OUT, "Now, pipe some URL's into > %s\n", fifo);
-  event_set(&g->fifo_event, sockfd, EV_READ | EV_PERSIST, fifo_cb, g);
-  event_add(&g->fifo_event, NULL);
-  return (0);
-}
-
-int main(int argc, char **argv)
-{
-  GlobalInfo g;
-  (void)argc;
-  (void)argv;
-
-  memset(&g, 0, sizeof(GlobalInfo));
-  event_init();
-  init_fifo(&g);
-  g.multi = curl_multi_init();
-  evtimer_set(&g.timer_event, timer_cb, &g);
-
-  /* setup the generic multi interface options we want */
-  curl_multi_setopt(g.multi, CURLMOPT_SOCKETFUNCTION, sock_cb);
-  curl_multi_setopt(g.multi, CURLMOPT_SOCKETDATA, &g);
-  curl_multi_setopt(g.multi, CURLMOPT_TIMERFUNCTION, multi_timer_cb);
-  curl_multi_setopt(g.multi, CURLMOPT_TIMERDATA, &g);
-
-  /* we don't call any curl_multi_socket*() function yet as we have no handles
-     added! */
-
-  event_dispatch();
-  curl_multi_cleanup(g.multi);
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/htmltidy.c b/src/other/curl/docs/examples/htmltidy.c
deleted file mode 100644
index 9a46955..0000000
--- a/src/other/curl/docs/examples/htmltidy.c
+++ /dev/null
@@ -1,117 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * Download a document and use libtidy to parse the HTML.
- * Written by Jeff Pohlmeyer
- *
- * LibTidy => http://tidy.sourceforge.net
- *
- * gcc -Wall -I/usr/local/include tidycurl.c -lcurl -ltidy -o tidycurl
- *
- */
-
-#include <stdio.h>
-#include <tidy/tidy.h>
-#include <tidy/buffio.h>
-#include <curl/curl.h>
-
-/* curl write callback, to fill tidy's input buffer...  */
-uint write_cb(char *in, uint size, uint nmemb, TidyBuffer *out)
-{
-  uint r;
-  r = size * nmemb;
-  tidyBufAppend( out, in, r );
-  return(r);
-}
-
-/* Traverse the document tree */
-void dumpNode(TidyDoc doc, TidyNode tnod, int indent )
-{
-  TidyNode child;
-  for ( child = tidyGetChild(tnod); child; child = tidyGetNext(child) )
-  {
-    ctmbstr name = tidyNodeGetName( child );
-    if ( name )
-    {
-      /* if it has a name, then it's an HTML tag ... */
-      TidyAttr attr;
-      printf( "%*.*s%s ", indent, indent, "<", name);
-      /* walk the attribute list */
-      for ( attr=tidyAttrFirst(child); attr; attr=tidyAttrNext(attr) ) {
-        printf(tidyAttrName(attr));
-        tidyAttrValue(attr)?printf("=\"%s\" ",
-                                   tidyAttrValue(attr)):printf(" ");
-      }
-      printf( ">\n");
-    }
-    else {
-      /* if it doesn't have a name, then it's probably text, cdata, etc... */
-      TidyBuffer buf;
-      tidyBufInit(&buf);
-      tidyNodeGetText(doc, child, &buf);
-      printf("%*.*s\n", indent, indent, buf.bp?(char *)buf.bp:"");
-      tidyBufFree(&buf);
-    }
-    dumpNode( doc, child, indent + 4 ); /* recursive */
-  }
-}
-
-
-int main(int argc, char **argv )
-{
-  CURL *curl;
-  char curl_errbuf[CURL_ERROR_SIZE];
-  TidyDoc tdoc;
-  TidyBuffer docbuf = {0};
-  TidyBuffer tidy_errbuf = {0};
-  int err;
-  if ( argc == 2) {
-    curl = curl_easy_init();
-    curl_easy_setopt(curl, CURLOPT_URL, argv[1]);
-    curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, curl_errbuf);
-    curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 0L);
-    curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
-    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb);
-
-    tdoc = tidyCreate();
-    tidyOptSetBool(tdoc, TidyForceOutput, yes); /* try harder */
-    tidyOptSetInt(tdoc, TidyWrapLen, 4096);
-    tidySetErrorBuffer( tdoc, &tidy_errbuf );
-    tidyBufInit(&docbuf);
-
-    curl_easy_setopt(curl, CURLOPT_WRITEDATA, &docbuf);
-    err=curl_easy_perform(curl);
-    if ( !err ) {
-      err = tidyParseBuffer(tdoc, &docbuf); /* parse the input */
-      if ( err >= 0 ) {
-        err = tidyCleanAndRepair(tdoc); /* fix any problems */
-        if ( err >= 0 ) {
-          err = tidyRunDiagnostics(tdoc); /* load tidy error buffer */
-          if ( err >= 0 ) {
-            dumpNode( tdoc, tidyGetRoot(tdoc), 0 ); /* walk the tree */
-            fprintf(stderr, "%s\n", tidy_errbuf.bp); /* show errors */
-          }
-        }
-      }
-    }
-    else
-      fprintf(stderr, "%s\n", curl_errbuf);
-
-    /* clean-up */
-    curl_easy_cleanup(curl);
-    tidyBufFree(&docbuf);
-    tidyBufFree(&tidy_errbuf);
-    tidyRelease(tdoc);
-    return(err);
-
-  }
-  else
-    printf( "usage: %s <url>\n", argv[0] );
-
-  return(0);
-}
diff --git a/src/other/curl/docs/examples/htmltitle.cc b/src/other/curl/docs/examples/htmltitle.cc
deleted file mode 100644
index da3354a..0000000
--- a/src/other/curl/docs/examples/htmltitle.cc
+++ /dev/null
@@ -1,301 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-// Get a web page, parse it with libxml.
-//
-// Written by Lars Nilsson
-//
-// GNU C++ compile command line suggestion (edit paths accordingly):
-//
-// g++ -Wall -I/opt/curl/include -I/opt/libxml/include/libxml2 htmltitle.cc \
-// -o htmltitle -L/opt/curl/lib -L/opt/libxml/lib -lcurl -lxml2
-
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <string>
-#include <curl/curl.h>
-#include <libxml/HTMLparser.h>
-
-//
-//  Case-insensitive string comparison
-//
-
-#ifdef _MSC_VER
-#define COMPARE(a, b) (!stricmp((a), (b)))
-#else
-#define COMPARE(a, b) (!strcasecmp((a), (b)))
-#endif
-
-//
-//  libxml callback context structure
-//
-
-struct Context
-{
-  Context(): addTitle(false) { }
-
-  bool addTitle;
-  std::string title;
-};
-
-//
-//  libcurl variables for error strings and returned data
-
-static char errorBuffer[CURL_ERROR_SIZE];
-static std::string buffer;
-
-//
-//  libcurl write callback function
-//
-
-static int writer(char *data, size_t size, size_t nmemb,
-                  std::string *writerData)
-{
-  if (writerData == NULL)
-    return 0;
-
-  writerData->append(data, size*nmemb);
-
-  return size * nmemb;
-}
-
-//
-//  libcurl connection initialization
-//
-
-static bool init(CURL *&conn, char *url)
-{
-  CURLcode code;
-
-  conn = curl_easy_init();
-
-  if (conn == NULL)
-  {
-    fprintf(stderr, "Failed to create CURL connection\n");
-
-    exit(EXIT_FAILURE);
-  }
-
-  code = curl_easy_setopt(conn, CURLOPT_ERRORBUFFER, errorBuffer);
-  if (code != CURLE_OK)
-  {
-    fprintf(stderr, "Failed to set error buffer [%d]\n", code);
-
-    return false;
-  }
-
-  code = curl_easy_setopt(conn, CURLOPT_URL, url);
-  if (code != CURLE_OK)
-  {
-    fprintf(stderr, "Failed to set URL [%s]\n", errorBuffer);
-
-    return false;
-  }
-
-  code = curl_easy_setopt(conn, CURLOPT_FOLLOWLOCATION, 1L);
-  if (code != CURLE_OK)
-  {
-    fprintf(stderr, "Failed to set redirect option [%s]\n", errorBuffer);
-
-    return false;
-  }
-
-  code = curl_easy_setopt(conn, CURLOPT_WRITEFUNCTION, writer);
-  if (code != CURLE_OK)
-  {
-    fprintf(stderr, "Failed to set writer [%s]\n", errorBuffer);
-
-    return false;
-  }
-
-  code = curl_easy_setopt(conn, CURLOPT_WRITEDATA, &buffer);
-  if (code != CURLE_OK)
-  {
-    fprintf(stderr, "Failed to set write data [%s]\n", errorBuffer);
-
-    return false;
-  }
-
-  return true;
-}
-
-//
-//  libxml start element callback function
-//
-
-static void StartElement(void *voidContext,
-                         const xmlChar *name,
-                         const xmlChar **attributes)
-{
-  Context *context = (Context *)voidContext;
-
-  if (COMPARE((char *)name, "TITLE"))
-  {
-    context->title = "";
-    context->addTitle = true;
-  }
-  (void) attributes;
-}
-
-//
-//  libxml end element callback function
-//
-
-static void EndElement(void *voidContext,
-                       const xmlChar *name)
-{
-  Context *context = (Context *)voidContext;
-
-  if (COMPARE((char *)name, "TITLE"))
-    context->addTitle = false;
-}
-
-//
-//  Text handling helper function
-//
-
-static void handleCharacters(Context *context,
-                             const xmlChar *chars,
-                             int length)
-{
-  if (context->addTitle)
-    context->title.append((char *)chars, length);
-}
-
-//
-//  libxml PCDATA callback function
-//
-
-static void Characters(void *voidContext,
-                       const xmlChar *chars,
-                       int length)
-{
-  Context *context = (Context *)voidContext;
-
-  handleCharacters(context, chars, length);
-}
-
-//
-//  libxml CDATA callback function
-//
-
-static void cdata(void *voidContext,
-                  const xmlChar *chars,
-                  int length)
-{
-  Context *context = (Context *)voidContext;
-
-  handleCharacters(context, chars, length);
-}
-
-//
-//  libxml SAX callback structure
-//
-
-static htmlSAXHandler saxHandler =
-{
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  StartElement,
-  EndElement,
-  NULL,
-  Characters,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  NULL,
-  cdata,
-  NULL
-};
-
-//
-//  Parse given (assumed to be) HTML text and return the title
-//
-
-static void parseHtml(const std::string &html,
-                      std::string &title)
-{
-  htmlParserCtxtPtr ctxt;
-  Context context;
-
-  ctxt = htmlCreatePushParserCtxt(&saxHandler, &context, "", 0, "",
-                                  XML_CHAR_ENCODING_NONE);
-
-  htmlParseChunk(ctxt, html.c_str(), html.size(), 0);
-  htmlParseChunk(ctxt, "", 0, 1);
-
-  htmlFreeParserCtxt(ctxt);
-
-  title = context.title;
-}
-
-int main(int argc, char *argv[])
-{
-  CURL *conn = NULL;
-  CURLcode code;
-  std::string title;
-
-  // Ensure one argument is given
-
-  if (argc != 2)
-  {
-    fprintf(stderr, "Usage: %s <url>\n", argv[0]);
-
-    exit(EXIT_FAILURE);
-  }
-
-  curl_global_init(CURL_GLOBAL_DEFAULT);
-
-  // Initialize CURL connection
-
-  if (!init(conn, argv[1]))
-  {
-    fprintf(stderr, "Connection initializion failed\n");
-
-    exit(EXIT_FAILURE);
-  }
-
-  // Retrieve content for the URL
-
-  code = curl_easy_perform(conn);
-  curl_easy_cleanup(conn);
-
-  if (code != CURLE_OK)
-  {
-    fprintf(stderr, "Failed to get '%s' [%s]\n", argv[1], errorBuffer);
-
-    exit(EXIT_FAILURE);
-  }
-
-  // Parse the (assumed) HTML code
-
-  parseHtml(buffer, title);
-
-  // Display the extracted title
-
-  printf("Title: %s\n", title.c_str());
-
-  return EXIT_SUCCESS;
-}
diff --git a/src/other/curl/docs/examples/http-post.c b/src/other/curl/docs/examples/http-post.c
deleted file mode 100644
index 523177d..0000000
--- a/src/other/curl/docs/examples/http-post.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <curl/curl.h>
-
-int main(void)
-{
-  CURL *curl;
-  CURLcode res;
-
-  curl = curl_easy_init();
-  if(curl) {
-    /* First set the URL that is about to receive our POST. This URL can
-       just as well be a https:// URL if that is what should receive the
-       data. */
-    curl_easy_setopt(curl, CURLOPT_URL, "http://postit.example.com/moo.cgi");
-    /* Now specify the POST data */
-    curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "name=daniel&project=curl");
-
-    /* Perform the request, res will get the return code */
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/httpcustomheader.c b/src/other/curl/docs/examples/httpcustomheader.c
deleted file mode 100644
index 599b84f..0000000
--- a/src/other/curl/docs/examples/httpcustomheader.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <curl/curl.h>
-
-int main(void)
-{
-  CURL *curl;
-  CURLcode res;
-
-  curl = curl_easy_init();
-  if(curl) {
-    struct curl_slist *chunk = NULL;
-
-    chunk = curl_slist_append(chunk, "Accept: moo");
-    chunk = curl_slist_append(chunk, "Another: yes");
-
-    /* request with the built-in Accept: */
-    curl_easy_setopt(curl, CURLOPT_URL, "localhost");
-    curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
-    res = curl_easy_perform(curl);
-
-    /* redo request with our own custom Accept: */
-    res = curl_easy_setopt(curl, CURLOPT_HTTPHEADER, chunk);
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/httpput.c b/src/other/curl/docs/examples/httpput.c
deleted file mode 100644
index 821e95f..0000000
--- a/src/other/curl/docs/examples/httpput.c
+++ /dev/null
@@ -1,105 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <fcntl.h>
-#include <sys/stat.h>
-#include <unistd.h>
-
-#include <curl/curl.h>
-
-/*
- * This example shows a HTTP PUT operation. PUTs a file given as a command
- * line argument to the URL also given on the command line.
- *
- * This example also uses its own read callback.
- *
- * Here's an article on how to setup a PUT handler for Apache:
- * http://www.apacheweek.com/features/put
- */
-
-static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *stream)
-{
-  size_t retcode;
-
-  /* in real-world cases, this would probably get this data differently
-     as this fread() stuff is exactly what the library already would do
-     by default internally */
-  retcode = fread(ptr, size, nmemb, stream);
-
-  fprintf(stderr, "*** We read %d bytes from file\n", retcode);
-
-  return retcode;
-}
-
-int main(int argc, char **argv)
-{
-  CURL *curl;
-  CURLcode res;
-  FILE * hd_src ;
-  int hd ;
-  struct stat file_info;
-
-  char *file;
-  char *url;
-
-  if(argc < 3)
-    return 1;
-
-  file= argv[1];
-  url = argv[2];
-
-  /* get the file size of the local file */
-  hd = open(file, O_RDONLY) ;
-  fstat(hd, &file_info);
-  close(hd) ;
-
-  /* get a FILE * of the same file, could also be made with
-     fdopen() from the previous descriptor, but hey this is just
-     an example! */
-  hd_src = fopen(file, "rb");
-
-  /* In windows, this will init the winsock stuff */
-  curl_global_init(CURL_GLOBAL_ALL);
-
-  /* get a curl handle */
-  curl = curl_easy_init();
-  if(curl) {
-    /* we want to use our own read function */
-    curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback);
-
-    /* enable uploading */
-    curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
-
-    /* HTTP PUT please */
-    curl_easy_setopt(curl, CURLOPT_PUT, 1L);
-
-    /* specify target URL, and note that this URL should include a file
-       name, not only a directory */
-    curl_easy_setopt(curl, CURLOPT_URL, url);
-
-    /* now specify which file to upload */
-    curl_easy_setopt(curl, CURLOPT_READDATA, hd_src);
-
-    /* provide the size of the upload, we specicially typecast the value
-       to curl_off_t since we must be sure to use the correct data size */
-    curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE,
-                     (curl_off_t)file_info.st_size);
-
-    /* Now run off and do what you've been told! */
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  fclose(hd_src); /* close the local file */
-
-  curl_global_cleanup();
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/https.c b/src/other/curl/docs/examples/https.c
deleted file mode 100644
index 29b50be..0000000
--- a/src/other/curl/docs/examples/https.c
+++ /dev/null
@@ -1,52 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <curl/curl.h>
-
-int main(void)
-{
-  CURL *curl;
-  CURLcode res;
-
-  curl = curl_easy_init();
-  if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, "https://sourceforge.net/");
-
-#ifdef SKIP_PEER_VERIFICATION
-    /*
-     * If you want to connect to a site who isn't using a certificate that is
-     * signed by one of the certs in the CA bundle you have, you can skip the
-     * verification of the server's certificate. This makes the connection
-     * A LOT LESS SECURE.
-     *
-     * If you have a CA cert for the server stored someplace else than in the
-     * default bundle, then the CURLOPT_CAPATH option might come handy for
-     * you.
-     */
-    curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
-#endif
-
-#ifdef SKIP_HOSTNAME_VERFICATION
-    /*
-     * If the site you're connecting to uses a different host name that what
-     * they have mentioned in their server certificate's commonName (or
-     * subjectAltName) fields, libcurl will refuse to connect. You can skip
-     * this check, but this will make the connection less secure.
-     */
-    curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
-#endif
-
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/makefile.dj b/src/other/curl/docs/examples/makefile.dj
deleted file mode 100644
index 8736e6e..0000000
--- a/src/other/curl/docs/examples/makefile.dj
+++ /dev/null
@@ -1,39 +0,0 @@
-#
-#  Adapted for djgpp / Watt-32 / DOS by
-#  Gisle Vanem <giva at bgnett.no>
-#
-
-TOPDIR = ../..
-
-include $(TOPDIR)/packages/DOS/common.dj
-
-CFLAGS += -DFALSE=0 -DTRUE=1
-
-LIBS = $(TOPDIR)/lib/libcurl.a
-
-ifeq ($(USE_SSL),1)
-  LIBS += $(OPENSSL_ROOT)/lib/libssl.a $(OPENSSL_ROOT)/lib/libcrypt.a
-endif
-
-ifeq ($(USE_IDNA),1)
-  LIBS += $(LIBIDN_ROOT)/lib/dj_obj/libidn.a -liconv
-endif
-
-LIBS += $(WATT32_ROOT)/lib/libwatt.a $(ZLIB_ROOT)/libz.a
-
-include Makefile.inc
-
-PROGRAMS = $(patsubst %,%.exe,$(check_PROGRAMS))
-
-all: $(PROGRAMS)
-	@echo Welcome to libcurl example program
-
-%.exe: %.c
-	$(CC) $(CFLAGS) -o $@ $^ $(LIBS)
-	@echo
-
-clean vclean realclean:
-	- rm -f $(PROGRAMS) depend.dj
-
--include depend.dj
-
diff --git a/src/other/curl/docs/examples/multi-app.c b/src/other/curl/docs/examples/multi-app.c
deleted file mode 100644
index a86dd0e..0000000
--- a/src/other/curl/docs/examples/multi-app.c
+++ /dev/null
@@ -1,134 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * This is an example application source code using the multi interface.
- */
-
-#include <stdio.h>
-#include <string.h>
-
-/* somewhat unix-specific */
-#include <sys/time.h>
-#include <unistd.h>
-
-/* curl stuff */
-#include <curl/curl.h>
-
-/*
- * Download a HTTP file and upload an FTP file simultaneously.
- */
-
-#define HANDLECOUNT 2   /* Number of simultaneous transfers */
-#define HTTP_HANDLE 0   /* Index for the HTTP transfer */
-#define FTP_HANDLE 1    /* Index for the FTP transfer */
-
-int main(int argc, char **argv)
-{
-  CURL *handles[HANDLECOUNT];
-  CURLM *multi_handle;
-
-  int still_running; /* keep number of running handles */
-  int i;
-
-  CURLMsg *msg; /* for picking up messages with the transfer status */
-  int msgs_left; /* how many messages are left */
-
-  /* Allocate one CURL handle per transfer */
-  for (i=0; i<HANDLECOUNT; i++)
-      handles[i] = curl_easy_init();
-
-  /* set the options (I left out a few, you'll get the point anyway) */
-  curl_easy_setopt(handles[HTTP_HANDLE], CURLOPT_URL, "http://website.com");
-
-  curl_easy_setopt(handles[FTP_HANDLE], CURLOPT_URL, "ftp://ftpsite.com");
-  curl_easy_setopt(handles[FTP_HANDLE], CURLOPT_UPLOAD, 1L);
-
-  /* init a multi stack */
-  multi_handle = curl_multi_init();
-
-  /* add the individual transfers */
-  for (i=0; i<HANDLECOUNT; i++)
-      curl_multi_add_handle(multi_handle, handles[i]);
-
-  /* we start some action by calling perform right away */
-  while(CURLM_CALL_MULTI_PERFORM ==
-        curl_multi_perform(multi_handle, &still_running));
-
-  while(still_running) {
-    struct timeval timeout;
-    int rc; /* select() return code */
-
-    fd_set fdread;
-    fd_set fdwrite;
-    fd_set fdexcep;
-    int maxfd;
-
-    FD_ZERO(&fdread);
-    FD_ZERO(&fdwrite);
-    FD_ZERO(&fdexcep);
-
-    /* set a suitable timeout to play around with */
-    timeout.tv_sec = 1;
-    timeout.tv_usec = 0;
-
-    /* get file descriptors from the transfers */
-    curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-
-    /* In a real-world program you OF COURSE check the return code of the
-       function calls, *and* you make sure that maxfd is bigger than -1 so
-       that the call to select() below makes sense! */
-
-    rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
-
-    switch(rc) {
-    case -1:
-      /* select error */
-      break;
-    case 0:
-      /* timeout, do something else */
-      break;
-    default:
-      /* one or more of curl's file descriptors say there's data to read
-         or write */
-      while(CURLM_CALL_MULTI_PERFORM ==
-            curl_multi_perform(multi_handle, &still_running));
-      break;
-    }
-  }
-
-  /* See how the transfers went */
-  while ((msg = curl_multi_info_read(multi_handle, &msgs_left))) {
-    if (msg->msg == CURLMSG_DONE) {
-      int idx, found = 0;
-
-      /* Find out which handle this message is about */
-      for (idx=0; idx<HANDLECOUNT; idx++) {
-        found = (msg->easy_handle == handles[idx]);
-        if(found)
-          break;
-      }
-
-      switch (idx) {
-      case HTTP_HANDLE:
-        printf("HTTP transfer completed with status %d\n", msg->data.result);
-        break;
-      case FTP_HANDLE:
-        printf("FTP transfer completed with status %d\n", msg->data.result);
-        break;
-      }
-    }
-  }
-
-  curl_multi_cleanup(multi_handle);
-
-  /* Free the CURL handles */
-  for (i=0; i<HANDLECOUNT; i++)
-      curl_easy_cleanup(handles[i]);
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/multi-debugcallback.c b/src/other/curl/docs/examples/multi-debugcallback.c
deleted file mode 100644
index b10b47c..0000000
--- a/src/other/curl/docs/examples/multi-debugcallback.c
+++ /dev/null
@@ -1,182 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * This is a very simple example using the multi interface and the debug
- * callback.
- */
-
-#include <stdio.h>
-#include <string.h>
-
-/* somewhat unix-specific */
-#include <sys/time.h>
-#include <unistd.h>
-
-/* curl stuff */
-#include <curl/curl.h>
-
-typedef char bool;
-#define TRUE 1
-
-static
-void dump(const char *text,
-          FILE *stream, unsigned char *ptr, size_t size,
-          bool nohex)
-{
-  size_t i;
-  size_t c;
-
-  unsigned int width=0x10;
-
-  if(nohex)
-    /* without the hex output, we can fit more on screen */
-    width = 0x40;
-
-  fprintf(stream, "%s, %010.10ld bytes (0x%08.8lx)\n",
-          text, (long)size, (long)size);
-
-  for(i=0; i<size; i+= width) {
-
-    fprintf(stream, "%04.4lx: ", (long)i);
-
-    if(!nohex) {
-      /* hex not disabled, show it */
-      for(c = 0; c < width; c++)
-        if(i+c < size)
-          fprintf(stream, "%02x ", ptr[i+c]);
-        else
-          fputs("   ", stream);
-    }
-
-    for(c = 0; (c < width) && (i+c < size); c++) {
-      /* check for 0D0A; if found, skip past and start a new line of output */
-      if (nohex && (i+c+1 < size) && ptr[i+c]==0x0D && ptr[i+c+1]==0x0A) {
-        i+=(c+2-width);
-        break;
-      }
-      fprintf(stream, "%c",
-              (ptr[i+c]>=0x20) && (ptr[i+c]<0x80)?ptr[i+c]:'.');
-      /* check again for 0D0A, to avoid an extra \n if it's at width */
-      if (nohex && (i+c+2 < size) && ptr[i+c+1]==0x0D && ptr[i+c+2]==0x0A) {
-        i+=(c+3-width);
-        break;
-      }
-    }
-    fputc('\n', stream); /* newline */
-  }
-  fflush(stream);
-}
-
-static
-int my_trace(CURL *handle, curl_infotype type,
-             unsigned char *data, size_t size,
-             void *userp)
-{
-  const char *text;
-
-  (void)handle; /* prevent compiler warning */
-
-  switch (type) {
-  case CURLINFO_TEXT:
-    fprintf(stderr, "== Info: %s", data);
-  default: /* in case a new one is introduced to shock us */
-    return 0;
-
-  case CURLINFO_HEADER_OUT:
-    text = "=> Send header";
-    break;
-  case CURLINFO_DATA_OUT:
-    text = "=> Send data";
-    break;
-  case CURLINFO_HEADER_IN:
-    text = "<= Recv header";
-    break;
-  case CURLINFO_DATA_IN:
-    text = "<= Recv data";
-    break;
-  }
-
-  dump(text, stderr, data, size, TRUE);
-  return 0;
-}
-
-/*
- * Simply download a HTTP file.
- */
-int main(int argc, char **argv)
-{
-  CURL *http_handle;
-  CURLM *multi_handle;
-
-  int still_running; /* keep number of running handles */
-
-  http_handle = curl_easy_init();
-
-  /* set the options (I left out a few, you'll get the point anyway) */
-  curl_easy_setopt(http_handle, CURLOPT_URL, "http://www.haxx.se/");
-
-  curl_easy_setopt(http_handle, CURLOPT_DEBUGFUNCTION, my_trace);
-  curl_easy_setopt(http_handle, CURLOPT_VERBOSE, 1L);
-
-  /* init a multi stack */
-  multi_handle = curl_multi_init();
-
-  /* add the individual transfers */
-  curl_multi_add_handle(multi_handle, http_handle);
-
-  /* we start some action by calling perform right away */
-  while(CURLM_CALL_MULTI_PERFORM ==
-        curl_multi_perform(multi_handle, &still_running));
-
-  while(still_running) {
-    struct timeval timeout;
-    int rc; /* select() return code */
-
-    fd_set fdread;
-    fd_set fdwrite;
-    fd_set fdexcep;
-    int maxfd;
-
-    FD_ZERO(&fdread);
-    FD_ZERO(&fdwrite);
-    FD_ZERO(&fdexcep);
-
-    /* set a suitable timeout to play around with */
-    timeout.tv_sec = 1;
-    timeout.tv_usec = 0;
-
-    /* get file descriptors from the transfers */
-    curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-
-    /* In a real-world program you OF COURSE check the return code of the
-       function calls, *and* you make sure that maxfd is bigger than -1
-       so that the call to select() below makes sense! */
-
-    rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
-
-    switch(rc) {
-    case -1:
-      /* select error */
-      still_running = 0;
-      printf("select() returns error, this is badness\n");
-      break;
-    case 0:
-    default:
-      /* timeout or readable/writable sockets */
-      while(CURLM_CALL_MULTI_PERFORM ==
-            curl_multi_perform(multi_handle, &still_running));
-      break;
-    }
-  }
-
-  curl_multi_cleanup(multi_handle);
-
-  curl_easy_cleanup(http_handle);
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/multi-double.c b/src/other/curl/docs/examples/multi-double.c
deleted file mode 100644
index ef3bf92..0000000
--- a/src/other/curl/docs/examples/multi-double.c
+++ /dev/null
@@ -1,98 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * This is a very simple example using the multi interface.
- */
-
-#include <stdio.h>
-#include <string.h>
-
-/* somewhat unix-specific */
-#include <sys/time.h>
-#include <unistd.h>
-
-/* curl stuff */
-#include <curl/curl.h>
-
-/*
- * Simply download two HTTP files!
- */
-int main(int argc, char **argv)
-{
-  CURL *http_handle;
-  CURL *http_handle2;
-  CURLM *multi_handle;
-
-  int still_running; /* keep number of running handles */
-
-  http_handle = curl_easy_init();
-  http_handle2 = curl_easy_init();
-
-  /* set options */
-  curl_easy_setopt(http_handle, CURLOPT_URL, "http://www.haxx.se/");
-
-  /* set options */
-  curl_easy_setopt(http_handle2, CURLOPT_URL, "http://localhost/");
-
-  /* init a multi stack */
-  multi_handle = curl_multi_init();
-
-  /* add the individual transfers */
-  curl_multi_add_handle(multi_handle, http_handle);
-  curl_multi_add_handle(multi_handle, http_handle2);
-
-  /* we start some action by calling perform right away */
-  while(CURLM_CALL_MULTI_PERFORM ==
-        curl_multi_perform(multi_handle, &still_running));
-
-  while(still_running) {
-    struct timeval timeout;
-    int rc; /* select() return code */
-
-    fd_set fdread;
-    fd_set fdwrite;
-    fd_set fdexcep;
-    int maxfd;
-
-    FD_ZERO(&fdread);
-    FD_ZERO(&fdwrite);
-    FD_ZERO(&fdexcep);
-
-    /* set a suitable timeout to play around with */
-    timeout.tv_sec = 1;
-    timeout.tv_usec = 0;
-
-    /* get file descriptors from the transfers */
-    curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-
-    /* In a real-world program you OF COURSE check the return code of the
-       function calls, *and* you make sure that maxfd is bigger than -1 so
-       that the call to select() below makes sense! */
-
-    rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
-
-    switch(rc) {
-    case -1:
-      /* select error */
-      break;
-    case 0:
-    default:
-      /* timeout or readable/writable sockets */
-      while(CURLM_CALL_MULTI_PERFORM ==
-            curl_multi_perform(multi_handle, &still_running));
-      break;
-    }
-  }
-
-  curl_multi_cleanup(multi_handle);
-
-  curl_easy_cleanup(http_handle);
-  curl_easy_cleanup(http_handle2);
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/multi-post.c b/src/other/curl/docs/examples/multi-post.c
deleted file mode 100644
index 229e843..0000000
--- a/src/other/curl/docs/examples/multi-post.c
+++ /dev/null
@@ -1,127 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * This is an example application source code using the multi interface
- * to do a multipart formpost without "blocking".
- */
-#include <stdio.h>
-#include <string.h>
-#include <sys/time.h>
-
-#include <curl/curl.h>
-
-int main(int argc, char *argv[])
-{
-  CURL *curl;
-
-  CURLM *multi_handle;
-  int still_running;
-
-  struct curl_httppost *formpost=NULL;
-  struct curl_httppost *lastptr=NULL;
-  struct curl_slist *headerlist=NULL;
-  static const char buf[] = "Expect:";
-
-  /* Fill in the file upload field. This makes libcurl load data from
-     the given file name when curl_easy_perform() is called. */
-  curl_formadd(&formpost,
-               &lastptr,
-               CURLFORM_COPYNAME, "sendfile",
-               CURLFORM_FILE, "postit2.c",
-               CURLFORM_END);
-
-  /* Fill in the filename field */
-  curl_formadd(&formpost,
-               &lastptr,
-               CURLFORM_COPYNAME, "filename",
-               CURLFORM_COPYCONTENTS, "postit2.c",
-               CURLFORM_END);
-
-  /* Fill in the submit field too, even if this is rarely needed */
-  curl_formadd(&formpost,
-               &lastptr,
-               CURLFORM_COPYNAME, "submit",
-               CURLFORM_COPYCONTENTS, "send",
-               CURLFORM_END);
-
-  curl = curl_easy_init();
-  multi_handle = curl_multi_init();
-
-  /* initalize custom header list (stating that Expect: 100-continue is not
-     wanted */
-  headerlist = curl_slist_append(headerlist, buf);
-  if(curl && multi_handle) {
-
-    /* what URL that receives this POST */
-    curl_easy_setopt(curl, CURLOPT_URL,
-                     "http://www.fillinyoururl.com/upload.cgi");
-    curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
-
-    curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headerlist);
-    curl_easy_setopt(curl, CURLOPT_HTTPPOST, formpost);
-
-    curl_multi_add_handle(multi_handle, curl);
-
-    while(CURLM_CALL_MULTI_PERFORM ==
-          curl_multi_perform(multi_handle, &still_running));
-
-    while(still_running) {
-      struct timeval timeout;
-      int rc; /* select() return code */
-
-      fd_set fdread;
-      fd_set fdwrite;
-      fd_set fdexcep;
-      int maxfd;
-
-      FD_ZERO(&fdread);
-      FD_ZERO(&fdwrite);
-      FD_ZERO(&fdexcep);
-
-      /* set a suitable timeout to play around with */
-      timeout.tv_sec = 1;
-      timeout.tv_usec = 0;
-
-      /* get file descriptors from the transfers */
-      curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-
-      /* In a real-world program you OF COURSE check the return code of the
-         function calls, *and* you make sure that maxfd is bigger than -1
-         so that the call to select() below makes sense! */
-
-      rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
-
-      switch(rc) {
-      case -1:
-        /* select error */
-        break;
-      case 0:
-        printf("timeout!\n");
-      default:
-        /* timeout or readable/writable sockets */
-        printf("perform!\n");
-        while(CURLM_CALL_MULTI_PERFORM ==
-              curl_multi_perform(multi_handle, &still_running));
-        printf("running: %d!\n", still_running);
-        break;
-      }
-    }
-
-    curl_multi_cleanup(multi_handle);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-
-    /* then cleanup the formpost chain */
-    curl_formfree(formpost);
-
-    /* free slist */
-    curl_slist_free_all (headerlist);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/multi-single.c b/src/other/curl/docs/examples/multi-single.c
deleted file mode 100644
index 3e236f3..0000000
--- a/src/other/curl/docs/examples/multi-single.c
+++ /dev/null
@@ -1,93 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * This is a very simple example using the multi interface.
- */
-
-#include <stdio.h>
-#include <string.h>
-
-/* somewhat unix-specific */
-#include <sys/time.h>
-#include <unistd.h>
-
-/* curl stuff */
-#include <curl/curl.h>
-
-/*
- * Simply download a HTTP file.
- */
-int main(int argc, char **argv)
-{
-  CURL *http_handle;
-  CURLM *multi_handle;
-
-  int still_running; /* keep number of running handles */
-
-  http_handle = curl_easy_init();
-
-  /* set the options (I left out a few, you'll get the point anyway) */
-  curl_easy_setopt(http_handle, CURLOPT_URL, "http://www.haxx.se/");
-
-  /* init a multi stack */
-  multi_handle = curl_multi_init();
-
-  /* add the individual transfers */
-  curl_multi_add_handle(multi_handle, http_handle);
-
-  /* we start some action by calling perform right away */
-  while(CURLM_CALL_MULTI_PERFORM ==
-        curl_multi_perform(multi_handle, &still_running));
-
-  while(still_running) {
-    struct timeval timeout;
-    int rc; /* select() return code */
-
-    fd_set fdread;
-    fd_set fdwrite;
-    fd_set fdexcep;
-    int maxfd;
-
-    FD_ZERO(&fdread);
-    FD_ZERO(&fdwrite);
-    FD_ZERO(&fdexcep);
-
-    /* set a suitable timeout to play around with */
-    timeout.tv_sec = 1;
-    timeout.tv_usec = 0;
-
-    /* get file descriptors from the transfers */
-    curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-
-    /* In a real-world program you OF COURSE check the return code of the
-       function calls, *and* you make sure that maxfd is bigger than -1 so
-       that the call to select() below makes sense! */
-
-    rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
-
-    switch(rc) {
-    case -1:
-      /* select error */
-      still_running = 0;
-      printf("select() returns error, this is badness\n");
-      break;
-    case 0:
-    default:
-      /* timeout or readable/writable sockets */
-      while(CURLM_CALL_MULTI_PERFORM ==
-            curl_multi_perform(multi_handle, &still_running));
-      break;
-    }
-  }
-
-  curl_multi_cleanup(multi_handle);
-
-  curl_easy_cleanup(http_handle);
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/multithread.c b/src/other/curl/docs/examples/multithread.c
deleted file mode 100644
index 5f59a99..0000000
--- a/src/other/curl/docs/examples/multithread.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-/* A multi-threaded example that uses pthreads extensively to fetch
- * X remote files at once */
-
-#include <stdio.h>
-#include <pthread.h>
-#include <curl/curl.h>
-
-#define NUMT 4
-
-/*
-  List of URLs to fetch.
-
-  If you intend to use a SSL-based protocol here you MUST setup the OpenSSL
-  callback functions as described here:
-
-  http://www.openssl.org/docs/crypto/threads.html#DESCRIPTION
-
-*/
-const char * const urls[NUMT]= {
-  "http://curl.haxx.se/",
-  "ftp://cool.haxx.se/",
-  "http://www.contactor.se/",
-  "www.haxx.se"
-};
-
-static void *pull_one_url(void *url)
-{
-  CURL *curl;
-
-  curl = curl_easy_init();
-  curl_easy_setopt(curl, CURLOPT_URL, url);
-  curl_easy_perform(curl); /* ignores error */
-  curl_easy_cleanup(curl);
-
-  return NULL;
-}
-
-
-/*
-   int pthread_create(pthread_t *new_thread_ID,
-   const pthread_attr_t *attr,
-   void * (*start_func)(void *), void *arg);
-*/
-
-int main(int argc, char **argv)
-{
-  pthread_t tid[NUMT];
-  int i;
-  int error;
-
-  /* Must initialize libcurl before any threads are started */
-  curl_global_init(CURL_GLOBAL_ALL);
-
-  for(i=0; i< NUMT; i++) {
-    error = pthread_create(&tid[i],
-                           NULL, /* default attributes please */
-                           pull_one_url,
-                           (void *)urls[i]);
-    if(0 != error)
-      fprintf(stderr, "Couldn't run thread number %d, errno %d\n", i, error);
-    else
-      fprintf(stderr, "Thread %d, gets %s\n", i, urls[i]);
-  }
-
-  /* now wait for all threads to terminate */
-  for(i=0; i< NUMT; i++) {
-    error = pthread_join(tid[i], NULL);
-    fprintf(stderr, "Thread %d terminated\n", i);
-  }
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/opensslthreadlock.c b/src/other/curl/docs/examples/opensslthreadlock.c
deleted file mode 100644
index 706e901..0000000
--- a/src/other/curl/docs/examples/opensslthreadlock.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * Example source code to show one way to set the necessary OpenSSL locking
- * callbacks if you want to do multi-threaded transfers with HTTPS/FTPS with
- * libcurl built to use OpenSSL.
- *
- * This is not a complete stand-alone example.
- *
- * Author: Jeremy Brown
- */
-
-
-#include <stdio.h>
-#include <pthread.h>
-#include <openssl/err.h>
-
-#define MUTEX_TYPE       pthread_mutex_t
-#define MUTEX_SETUP(x)   pthread_mutex_init(&(x), NULL)
-#define MUTEX_CLEANUP(x) pthread_mutex_destroy(&(x))
-#define MUTEX_LOCK(x)    pthread_mutex_lock(&(x))
-#define MUTEX_UNLOCK(x)  pthread_mutex_unlock(&(x))
-#define THREAD_ID        pthread_self(  )
-
-
-void handle_error(const char *file, int lineno, const char *msg){
-     fprintf(stderr, "** %s:%d %s\n", file, lineno, msg);
-     ERR_print_errors_fp(stderr);
-     /* exit(-1); */
- }
-
-/* This array will store all of the mutexes available to OpenSSL. */
-static MUTEX_TYPE *mutex_buf= NULL;
-
-
-static void locking_function(int mode, int n, const char * file, int line)
-{
-  if (mode & CRYPTO_LOCK)
-    MUTEX_LOCK(mutex_buf[n]);
-  else
-    MUTEX_UNLOCK(mutex_buf[n]);
-}
-
-static unsigned long id_function(void)
-{
-  return ((unsigned long)THREAD_ID);
-}
-
-int thread_setup(void)
-{
-  int i;
-
-  mutex_buf = malloc(CRYPTO_num_locks(  ) * sizeof(MUTEX_TYPE));
-  if (!mutex_buf)
-    return 0;
-  for (i = 0;  i < CRYPTO_num_locks(  );  i++)
-    MUTEX_SETUP(mutex_buf[i]);
-  CRYPTO_set_id_callback(id_function);
-  CRYPTO_set_locking_callback(locking_function);
-  return 1;
-}
-
-int thread_cleanup(void)
-{
-  int i;
-
-  if (!mutex_buf)
-    return 0;
-  CRYPTO_set_id_callback(NULL);
-  CRYPTO_set_locking_callback(NULL);
-  for (i = 0;  i < CRYPTO_num_locks(  );  i++)
-    MUTEX_CLEANUP(mutex_buf[i]);
-  free(mutex_buf);
-  mutex_buf = NULL;
-  return 1;
-}
diff --git a/src/other/curl/docs/examples/persistant.c b/src/other/curl/docs/examples/persistant.c
deleted file mode 100644
index 0e65dd8..0000000
--- a/src/other/curl/docs/examples/persistant.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <unistd.h>
-#include <curl/curl.h>
-
-int main(int argc, char **argv)
-{
-  CURL *curl;
-  CURLcode res;
-
-  curl_global_init(CURL_GLOBAL_ALL);
-
-  curl = curl_easy_init();
-  if(curl) {
-    curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
-    curl_easy_setopt(curl, CURLOPT_HEADER, 1L);
-
-    /* get the first document */
-    curl_easy_setopt(curl, CURLOPT_URL, "http://curl.haxx.se/");
-    res = curl_easy_perform(curl);
-
-    /* get another document from the same server using the same
-       connection */
-    curl_easy_setopt(curl, CURLOPT_URL, "http://curl.haxx.se/docs/");
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/post-callback.c b/src/other/curl/docs/examples/post-callback.c
deleted file mode 100644
index 1e688a1..0000000
--- a/src/other/curl/docs/examples/post-callback.c
+++ /dev/null
@@ -1,116 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * An example source code that issues a HTTP POST and we provide the actual
- * data through a read callback.
- *
- */
-#include <stdio.h>
-#include <string.h>
-#include <curl/curl.h>
-
-const char data[]="this is what we post to the silly web server";
-
-struct WriteThis {
-  const char *readptr;
-  int sizeleft;
-};
-
-static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *userp)
-{
-  struct WriteThis *pooh = (struct WriteThis *)userp;
-
-  if(size*nmemb < 1)
-    return 0;
-
-  if(pooh->sizeleft) {
-    *(char *)ptr = pooh->readptr[0]; /* copy one single byte */
-    pooh->readptr++;                 /* advance pointer */
-    pooh->sizeleft--;                /* less data left */
-    return 1;                        /* we return 1 byte at a time! */
-  }
-
-  return 0;                          /* no more data left to deliver */
-}
-
-int main(void)
-{
-  CURL *curl;
-  CURLcode res;
-
-  struct WriteThis pooh;
-
-  pooh.readptr = data;
-  pooh.sizeleft = strlen(data);
-
-  curl = curl_easy_init();
-  if(curl) {
-    /* First set the URL that is about to receive our POST. */
-    curl_easy_setopt(curl, CURLOPT_URL,
-                     "http://receivingsite.com.pooh/index.cgi");
-    /* Now specify we want to POST data */
-    curl_easy_setopt(curl, CURLOPT_POST, 1L);
-
-    /* we want to use our own read function */
-    curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback);
-
-    /* pointer to pass to our read function */
-    curl_easy_setopt(curl, CURLOPT_READDATA, &pooh);
-
-    /* get verbose debug output please */
-    curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
-
-    /*
-      If you use POST to a HTTP 1.1 server, you can send data without knowing
-      the size before starting the POST if you use chunked encoding. You
-      enable this by adding a header like "Transfer-Encoding: chunked" with
-      CURLOPT_HTTPHEADER. With HTTP 1.0 or without chunked transfer, you must
-      specify the size in the request.
-    */
-#ifdef USE_CHUNKED
-    {
-      struct curl_slist *chunk = NULL;
-
-      chunk = curl_slist_append(chunk, "Transfer-Encoding: chunked");
-      res = curl_easy_setopt(curl, CURLOPT_HTTPHEADER, chunk);
-      /* use curl_slist_free_all() after the *perform() call to free this
-         list again */
-    }
-#else
-    /* Set the expected POST size. If you want to POST large amounts of data,
-       consider CURLOPT_POSTFIELDSIZE_LARGE */
-    curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, (curl_off_t)pooh.sizeleft);
-#endif
-
-#ifdef DISABLE_EXPECT
-    /*
-      Using POST with HTTP 1.1 implies the use of a "Expect: 100-continue"
-      header.  You can disable this header with CURLOPT_HTTPHEADER as usual.
-      NOTE: if you want chunked transfer too, you need to combine these two
-      since you can only set one list of headers with CURLOPT_HTTPHEADER. */
-
-    /* A less good option would be to enforce HTTP 1.0, but that might also
-       have other implications. */
-    {
-      struct curl_slist *chunk = NULL;
-
-      chunk = curl_slist_append(chunk, "Expect:");
-      res = curl_easy_setopt(curl, CURLOPT_HTTPHEADER, chunk);
-      /* use curl_slist_free_all() after the *perform() call to free this
-         list again */
-    }
-#endif
-
-    /* Perform the request, res will get the return code */
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/postit2.c b/src/other/curl/docs/examples/postit2.c
deleted file mode 100644
index 7268fcb..0000000
--- a/src/other/curl/docs/examples/postit2.c
+++ /dev/null
@@ -1,86 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * Example code that uploads a file name 'foo' to a remote script that accepts
- * "HTML form based" (as described in RFC1738) uploads using HTTP POST.
- *
- * The imaginary form we'll fill in looks like:
- *
- * <form method="post" enctype="multipart/form-data" action="examplepost.cgi">
- * Enter file: <input type="file" name="sendfile" size="40">
- * Enter file name: <input type="text" name="filename" size="30">
- * <input type="submit" value="send" name="submit">
- * </form>
- *
- * This exact source code has not been verified to work.
- */
-
-#include <stdio.h>
-#include <string.h>
-
-#include <curl/curl.h>
-#include <curl/types.h>
-#include <curl/easy.h>
-
-int main(int argc, char *argv[])
-{
-  CURL *curl;
-  CURLcode res;
-
-  struct curl_httppost *formpost=NULL;
-  struct curl_httppost *lastptr=NULL;
-  struct curl_slist *headerlist=NULL;
-  static const char buf[] = "Expect:";
-
-  curl_global_init(CURL_GLOBAL_ALL);
-
-  /* Fill in the file upload field */
-  curl_formadd(&formpost,
-               &lastptr,
-               CURLFORM_COPYNAME, "sendfile",
-               CURLFORM_FILE, "postit2.c",
-               CURLFORM_END);
-
-  /* Fill in the filename field */
-  curl_formadd(&formpost,
-               &lastptr,
-               CURLFORM_COPYNAME, "filename",
-               CURLFORM_COPYCONTENTS, "postit2.c",
-               CURLFORM_END);
-
-
-  /* Fill in the submit field too, even if this is rarely needed */
-  curl_formadd(&formpost,
-               &lastptr,
-               CURLFORM_COPYNAME, "submit",
-               CURLFORM_COPYCONTENTS, "send",
-               CURLFORM_END);
-
-  curl = curl_easy_init();
-  /* initalize custom header list (stating that Expect: 100-continue is not
-     wanted */
-  headerlist = curl_slist_append(headerlist, buf);
-  if(curl) {
-    /* what URL that receives this POST */
-    curl_easy_setopt(curl, CURLOPT_URL, "http://curl.haxx.se/examplepost.cgi");
-    if ( (argc == 2) && (!strcmp(argv[1], "noexpectheader")) )
-      /* only disable 100-continue header if explicitly requested */
-      curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headerlist);
-    curl_easy_setopt(curl, CURLOPT_HTTPPOST, formpost);
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-
-    /* then cleanup the formpost chain */
-    curl_formfree(formpost);
-    /* free slist */
-    curl_slist_free_all (headerlist);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/sampleconv.c b/src/other/curl/docs/examples/sampleconv.c
deleted file mode 100644
index 3a31a60..0000000
--- a/src/other/curl/docs/examples/sampleconv.c
+++ /dev/null
@@ -1,94 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-/*
-   This is a simple example showing how a program on a non-ASCII platform
-   would invoke callbacks to do its own codeset conversions instead of
-   using the built-in iconv functions in libcurl.
-
-   The IBM-1047 EBCDIC codeset is used for this example but the code
-   would be similar for other non-ASCII codesets.
-
-   Three callback functions are created below:
-        my_conv_from_ascii_to_ebcdic,
-        my_conv_from_ebcdic_to_ascii, and
-        my_conv_from_utf8_to_ebcdic
-
-   The "platform_xxx" calls represent platform-specific conversion routines.
-
- */
-
-#include <stdio.h>
-#include <curl/curl.h>
-
-CURLcode my_conv_from_ascii_to_ebcdic(char *buffer, size_t length)
-{
-    char *tempptrin, *tempptrout;
-    size_t bytes = length;
-    int rc;
-    tempptrin = tempptrout = buffer;
-    rc = platform_a2e(&tempptrin, &bytes, &tempptrout, &bytes);
-    if (rc == PLATFORM_CONV_OK) {
-      return(CURLE_OK);
-    } else {
-      return(CURLE_CONV_FAILED);
-    }
-}
-
-CURLcode my_conv_from_ebcdic_to_ascii(char *buffer, size_t length)
-{
-    char *tempptrin, *tempptrout;
-    size_t bytes = length;
-    int rc;
-    tempptrin = tempptrout = buffer;
-    rc = platform_e2a(&tempptrin, &bytes, &tempptrout, &bytes);
-    if (rc == PLATFORM_CONV_OK) {
-      return(CURLE_OK);
-    } else {
-      return(CURLE_CONV_FAILED);
-    }
-}
-
-CURLcode my_conv_from_utf8_to_ebcdic(char *buffer, size_t length)
-{
-    char *tempptrin, *tempptrout;
-    size_t bytes = length;
-    int rc;
-    tempptrin = tempptrout = buffer;
-    rc = platform_u2e(&tempptrin, &bytes, &tempptrout, &bytes);
-    if (rc == PLATFORM_CONV_OK) {
-      return(CURLE_OK);
-    } else {
-      return(CURLE_CONV_FAILED);
-    }
-}
-
-int main(void)
-{
-  CURL *curl;
-  CURLcode res;
-
-  curl = curl_easy_init();
-  if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, "curl.haxx.se");
-
-    /* use platform-specific functions for codeset conversions */
-    curl_easy_setopt(curl, CURLOPT_CONV_FROM_NETWORK_FUNCTION,
-                     my_conv_from_ascii_to_ebcdic);
-    curl_easy_setopt(curl, CURLOPT_CONV_TO_NETWORK_FUNCTION,
-                     my_conv_from_ebcdic_to_ascii);
-    curl_easy_setopt(curl, CURLOPT_CONV_FROM_UTF8_FUNCTION,
-                     my_conv_from_utf8_to_ebcdic);
-
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/sendrecv.c b/src/other/curl/docs/examples/sendrecv.c
deleted file mode 100644
index 6cba1db..0000000
--- a/src/other/curl/docs/examples/sendrecv.c
+++ /dev/null
@@ -1,115 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * An example of curl_easy_send() and curl_easy_recv() usage.
- *
- */
-
-#include <stdio.h>
-#include <string.h>
-#include <curl/curl.h>
-
-/* Auxiliary function that waits on the socket. */
-static int wait_on_socket(int sockfd, int for_recv, long timeout_ms)
-{
-  struct timeval tv;
-  fd_set infd, outfd, errfd;
-  int res;
-
-  tv.tv_sec = timeout_ms / 1000;
-  tv.tv_usec= (timeout_ms % 1000) * 1000;
-
-  FD_ZERO(&infd);
-  FD_ZERO(&outfd);
-  FD_ZERO(&errfd);
-
-  FD_SET(sockfd, &errfd); /* always check for error */
-
-  if(for_recv)
-  {
-    FD_SET(sockfd, &infd);
-  }
-  else
-  {
-    FD_SET(sockfd, &outfd);
-  }
-
-  /* select() returns the number of signalled sockets or -1 */
-  res = select(sockfd + 1, &infd, &outfd, &errfd, &tv);
-  return res;
-}
-
-int main(void)
-{
-  CURL *curl;
-  CURLcode res;
-  /* Minimalistic http request */
-  const char *request = "GET / HTTP/1.0\r\nHost: curl.haxx.se\r\n\r\n";
-  int sockfd; /* socket */
-  size_t iolen;
-
-  curl = curl_easy_init();
-  if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, "curl.haxx.se");
-    /* Do not do the transfer - only connect to host */
-    curl_easy_setopt(curl, CURLOPT_CONNECT_ONLY, 1L);
-    res = curl_easy_perform(curl);
-
-    if(CURLE_OK != res)
-    {
-      printf("Error: %s\n", strerror(res));
-      return 1;
-    }
-
-    /* Extract the socket from the curl handle - we'll need it
-     * for waiting */
-    res = curl_easy_getinfo(curl, CURLINFO_LASTSOCKET, &sockfd);
-
-    if(CURLE_OK != res)
-    {
-      printf("Error: %s\n", curl_easy_strerror(res));
-      return 1;
-    }
-
-    /* wait for the socket to become ready for sending */
-    if(!wait_on_socket(sockfd, 0, 60000L))
-    {
-      printf("Error: timeout.\n");
-      return 1;
-    }
-
-    puts("Sending request.");
-    /* Send the request. Real applications should check the iolen
-     * to see if all the request has been sent */
-    res = curl_easy_send(curl, request, strlen(request), &iolen);
-
-    if(CURLE_OK != res)
-    {
-      printf("Error: %s\n", curl_easy_strerror(res));
-      return 1;
-    }
-    puts("Reading response.");
-
-    /* read the response */
-    for(;;)
-    {
-      char buf[1024];
-
-      wait_on_socket(sockfd, 1, 60000L);
-      res = curl_easy_recv(curl, buf, 1024, &iolen);
-
-      if(CURLE_OK != res)
-        break;
-
-      printf("Received %u bytes.\n", iolen);
-    }
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/sepheaders.c b/src/other/curl/docs/examples/sepheaders.c
deleted file mode 100644
index f2a659d..0000000
--- a/src/other/curl/docs/examples/sepheaders.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-
-#include <curl/curl.h>
-#include <curl/types.h>
-#include <curl/easy.h>
-
-static size_t write_data(void *ptr, size_t size, size_t nmemb, void *stream)
-{
-  int written = fwrite(ptr, size, nmemb, (FILE *)stream);
-  return written;
-}
-
-int main(int argc, char **argv)
-{
-  CURL *curl_handle;
-  static const char *headerfilename = "head.out";
-  FILE *headerfile;
-  static const char *bodyfilename = "body.out";
-  FILE *bodyfile;
-
-  curl_global_init(CURL_GLOBAL_ALL);
-
-  /* init the curl session */
-  curl_handle = curl_easy_init();
-
-  /* set URL to get */
-  curl_easy_setopt(curl_handle, CURLOPT_URL, "http://curl.haxx.se");
-
-  /* no progress meter please */
-  curl_easy_setopt(curl_handle, CURLOPT_NOPROGRESS, 1L);
-
-  /* send all data to this function  */
-  curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, write_data);
-
-  /* open the files */
-  headerfile = fopen(headerfilename,"w");
-  if (headerfile == NULL) {
-    curl_easy_cleanup(curl_handle);
-    return -1;
-  }
-  bodyfile = fopen(bodyfilename,"w");
-  if (bodyfile == NULL) {
-    curl_easy_cleanup(curl_handle);
-    return -1;
-  }
-
-  /* we want the headers to this file handle */
-  curl_easy_setopt(curl_handle,   CURLOPT_WRITEHEADER, headerfile);
-
-  /*
-   * Notice here that if you want the actual data sent anywhere else but
-   * stdout, you should consider using the CURLOPT_WRITEDATA option.  */
-
-  /* get it! */
-  curl_easy_perform(curl_handle);
-
-  /* close the header file */
-  fclose(headerfile);
-
-  /* cleanup curl stuff */
-  curl_easy_cleanup(curl_handle);
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/simple.c b/src/other/curl/docs/examples/simple.c
deleted file mode 100644
index 582c624..0000000
--- a/src/other/curl/docs/examples/simple.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <curl/curl.h>
-
-int main(void)
-{
-  CURL *curl;
-  CURLcode res;
-
-  curl = curl_easy_init();
-  if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, "curl.haxx.se");
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/simplepost.c b/src/other/curl/docs/examples/simplepost.c
deleted file mode 100644
index d68435b..0000000
--- a/src/other/curl/docs/examples/simplepost.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-#include <string.h>
-#include <curl/curl.h>
-
-int main(void)
-{
-  CURL *curl;
-  CURLcode res;
-
-  static const char *postthis="moo mooo moo moo";
-
-  curl = curl_easy_init();
-  if(curl) {
-    curl_easy_setopt(curl, CURLOPT_URL, "http://posthere.com");
-    curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postthis);
-
-    /* if we don't provide POSTFIELDSIZE, libcurl will strlen() by
-       itself */
-    curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, (long)strlen(postthis));
-
-    res = curl_easy_perform(curl);
-
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/simplessl.c b/src/other/curl/docs/examples/simplessl.c
deleted file mode 100644
index db3acca..0000000
--- a/src/other/curl/docs/examples/simplessl.c
+++ /dev/null
@@ -1,122 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- */
-
-#include <stdio.h>
-
-#include <curl/curl.h>
-#include <curl/types.h>
-#include <curl/easy.h>
-
-
-/* some requirements for this to work:
-   1.   set pCertFile to the file with the client certificate
-   2.   if the key is passphrase protected, set pPassphrase to the
-        passphrase you use
-   3.   if you are using a crypto engine:
-   3.1. set a #define USE_ENGINE
-   3.2. set pEngine to the name of the crypto engine you use
-   3.3. set pKeyName to the key identifier you want to use
-   4.   if you don't use a crypto engine:
-   4.1. set pKeyName to the file name of your client key
-   4.2. if the format of the key file is DER, set pKeyType to "DER"
-
-   !! verify of the server certificate is not implemented here !!
-
-   **** This example only works with libcurl 7.9.3 and later! ****
-
-*/
-
-int main(int argc, char **argv)
-{
-  CURL *curl;
-  CURLcode res;
-  FILE *headerfile;
-  const char *pPassphrase = NULL;
-
-  static const char *pCertFile = "testcert.pem";
-  static const char *pCACertFile="cacert.pem";
-
-  const char *pKeyName;
-  const char *pKeyType;
-
-  const char *pEngine;
-
-#if USE_ENGINE
-  pKeyName  = "rsa_test";
-  pKeyType  = "ENG";
-  pEngine   = "chil";            /* for nChiper HSM... */
-#else
-  pKeyName  = "testkey.pem";
-  pKeyType  = "PEM";
-  pEngine   = NULL;
-#endif
-
-  headerfile = fopen("dumpit", "w");
-
-  curl_global_init(CURL_GLOBAL_DEFAULT);
-
-  curl = curl_easy_init();
-  if(curl) {
-    /* what call to write: */
-    curl_easy_setopt(curl, CURLOPT_URL, "HTTPS://your.favourite.ssl.site");
-    curl_easy_setopt(curl, CURLOPT_WRITEHEADER, headerfile);
-
-    while(1)                    /* do some ugly short cut... */
-    {
-      if (pEngine)             /* use crypto engine */
-      {
-        if (curl_easy_setopt(curl, CURLOPT_SSLENGINE,pEngine) != CURLE_OK)
-        {                     /* load the crypto engine */
-          fprintf(stderr,"can't set crypto engine\n");
-          break;
-        }
-        if (curl_easy_setopt(curl, CURLOPT_SSLENGINE_DEFAULT,1L) != CURLE_OK)
-        { /* set the crypto engine as default */
-          /* only needed for the first time you load
-             a engine in a curl object... */
-          fprintf(stderr,"can't set crypto engine as default\n");
-          break;
-        }
-      }
-      /* cert is stored PEM coded in file... */
-      /* since PEM is default, we needn't set it for PEM */
-      curl_easy_setopt(curl,CURLOPT_SSLCERTTYPE,"PEM");
-
-      /* set the cert for client authentication */
-      curl_easy_setopt(curl,CURLOPT_SSLCERT,pCertFile);
-
-      /* sorry, for engine we must set the passphrase
-         (if the key has one...) */
-      if (pPassphrase)
-        curl_easy_setopt(curl,CURLOPT_KEYPASSWD,pPassphrase);
-
-      /* if we use a key stored in a crypto engine,
-         we must set the key type to "ENG" */
-      curl_easy_setopt(curl,CURLOPT_SSLKEYTYPE,pKeyType);
-
-      /* set the private key (file or ID in engine) */
-      curl_easy_setopt(curl,CURLOPT_SSLKEY,pKeyName);
-
-      /* set the file with the certs vaildating the server */
-      curl_easy_setopt(curl,CURLOPT_CAINFO,pCACertFile);
-
-      /* disconnect if we can't validate server's cert */
-      curl_easy_setopt(curl,CURLOPT_SSL_VERIFYPEER,1L);
-
-      res = curl_easy_perform(curl);
-      break;                   /* we are done... */
-    }
-    /* always cleanup */
-    curl_easy_cleanup(curl);
-  }
-
-  curl_global_cleanup();
-
-  return 0;
-}
diff --git a/src/other/curl/docs/examples/synctime.c b/src/other/curl/docs/examples/synctime.c
deleted file mode 100644
index 4ed031a..0000000
--- a/src/other/curl/docs/examples/synctime.c
+++ /dev/null
@@ -1,353 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * This example code only builds as-is on Windows.
- *
- * While Unix/Linux user, you do not need this software.
- * You can achieve the same result as synctime using curl, awk and date.
- * Set proxy as according to your network, but beware of proxy Cache-Control.
- *
- * To set your system clock, root access is required.
- * # date -s "`curl -sI http://nist.time.gov/timezone.cgi?UTC/s/0 \
- *        | awk -F': ' '/Date: / {print $2}'`"
- *
- * To view remote webserver date and time.
- * $ curl -sI http://nist.time.gov/timezone.cgi?UTC/s/0 \
- *        | awk -F': ' '/Date: / {print $2}'
- *
- * Synchronising your computer clock via Internet time server usually relies
- * on DAYTIME, TIME, or NTP protocols. These protocols provide good accurate
- * time synchronisation but it does not work very well through a
- * firewall/proxy. Some adjustment has to be made to the firewall/proxy for
- * these protocols to work properly.
- *
- * There is an indirect method. Since most webserver provide server time in
- * their HTTP header, therefore you could synchronise your computer clock
- * using HTTP protocol which has no problem with firewall/proxy.
- *
- * For this software to work, you should take note of these items.
- * 1. Your firewall/proxy must allow your computer to surf internet.
- * 2. Webserver system time must in sync with the NTP time server,
- *    or at least provide an accurate time keeping.
- * 3. Webserver HTTP header does not provide the milliseconds units,
- *    so there is no way to get very accurate time.
- * 4. This software could only provide an accuracy of +- a few seconds,
- *    as Round-Trip delay time is not taken into consideration.
- *    Compensation of network, firewall/proxy delay cannot be simply divide
- *    the Round-Trip delay time by half.
- * 5. Win32 SetSystemTime() API will set your computer clock according to
- *    GMT/UTC time. Therefore your computer timezone must be properly set.
- * 6. Webserver data should not be cached by the proxy server. Some
- *    webserver provide Cache-Control to prevent caching.
- *
- * References:
- * http://tf.nist.gov/timefreq/service/its.htm
- * http://tf.nist.gov/timefreq/service/firewall.htm
- *
- * Usage:
- * This software will synchronise your computer clock only when you issue
- * it with --synctime. By default, it only display the webserver's clock.
- *
- * Written by: Frank (contributed to libcurl)
- *
- * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
- * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
- *
- * IN NO EVENT SHALL THE AUTHOR OF THIS SOFTWARE BE LIABLE FOR
- * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
- * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
- * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
- * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
- * OF THIS SOFTWARE.
- *
- */
-
-#include <stdio.h>
-#include <time.h>
-#ifndef __CYGWIN__
-#include <windows.h>
-#endif
-#include <curl/curl.h>
-
-
-#define MAX_STRING              256
-#define MAX_STRING1             MAX_STRING+1
-
-typedef struct
-{
-  char http_proxy[MAX_STRING1];
-  char proxy_user[MAX_STRING1];
-  char timeserver[MAX_STRING1];
-} conf_t;
-
-const char DefaultTimeServer[4][MAX_STRING1] =
-{
-  "http://nist.time.gov/timezone.cgi?UTC/s/0",
-  "http://www.google.com/",
-  "http://www.worldtimeserver.com/current_time_in_UTC.aspx",
-  "http://www.worldtime.com/cgi-bin/wt.cgi"
-};
-
-const char *DayStr[] = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};
-const char *MthStr[] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun",
-                        "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
-
-int  ShowAllHeader;
-int  AutoSyncTime;
-SYSTEMTIME SYSTime;
-SYSTEMTIME LOCALTime;
-
-#define HTTP_COMMAND_HEAD       0
-#define HTTP_COMMAND_GET        1
-
-
-size_t SyncTime_CURL_WriteOutput(void *ptr, size_t size, size_t nmemb,
-                                 void *stream)
-{
-  fwrite(ptr, size, nmemb, stream);
-  return(nmemb*size);
-}
-
-size_t SyncTime_CURL_WriteHeader(void *ptr, size_t size, size_t nmemb,
-                                 void *stream)
-{
-  int   i, RetVal;
-  char  TmpStr1[26], TmpStr2[26];
-
-  if (ShowAllHeader == 1)
-    fprintf(stderr, "%s", (char *)(ptr));
-
-  if (strncmp((char *)(ptr), "Date:", 5) == 0) {
-    if (ShowAllHeader == 0)
-      fprintf(stderr, "HTTP Server. %s", (char *)(ptr));
-
-    if (AutoSyncTime == 1) {
-      *TmpStr1 = 0;
-      *TmpStr2 = 0;
-      if (strlen((char *)(ptr)) > 50) /* Can prevent buffer overflow to
-                                         TmpStr1 & 2? */
-        AutoSyncTime = 0;
-      else {
-        RetVal = sscanf ((char *)(ptr), "Date: %s %d %s %d %d:%d:%d",
-                         TmpStr1, &SYSTime.wDay, TmpStr2, &SYSTime.wYear,
-                         &SYSTime.wHour, &SYSTime.wMinute, &SYSTime.wSecond);
-
-        if (RetVal == 7) {
-
-          SYSTime.wMilliseconds = 500;    /* adjust to midpoint, 0.5 sec */
-          for (i=0; i<12; i++) {
-            if (strcmp(MthStr[i], TmpStr2) == 0) {
-              SYSTime.wMonth = i+1;
-              break;
-            }
-          }
-          AutoSyncTime = 3;       /* Computer clock will be adjusted */
-        }
-        else {
-          AutoSyncTime = 0;       /* Error in sscanf() fields conversion */
-        }
-      }
-    }
-  }
-
-  if (strncmp((char *)(ptr), "X-Cache: HIT", 12) == 0) {
-    fprintf(stderr, "ERROR: HTTP Server data is cached."
-            " Server Date is no longer valid.\n");
-    AutoSyncTime = 0;
-  }
-  return(nmemb*size);
-}
-
-void SyncTime_CURL_Init(CURL *curl, char *proxy_port,
-                        char *proxy_user_password)
-{
-  if (strlen(proxy_port) > 0)
-    curl_easy_setopt(curl, CURLOPT_PROXY, proxy_port);
-
-  if (strlen(proxy_user_password) > 0)
-    curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, proxy_user_password);
-
-  /* Trick Webserver by claiming that you are using Microsoft WinXP SP2, IE6 */
-  curl_easy_setopt(curl, CURLOPT_USERAGENT,
-                   "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
-  curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, *SyncTime_CURL_WriteOutput);
-  curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, *SyncTime_CURL_WriteHeader);
-}
-
-int SyncTime_CURL_Fetch(CURL *curl, char *URL_Str, char *OutFileName,
-                        int HttpGetBody)
-{
-  FILE *outfile;
-  CURLcode res;
-
-  outfile = NULL;
-  if (HttpGetBody == HTTP_COMMAND_HEAD)
-    curl_easy_setopt(curl, CURLOPT_NOBODY, 1L);
-  else {
-    outfile = fopen(OutFileName, "wb");
-    curl_easy_setopt(curl, CURLOPT_WRITEDATA, outfile);
-  }
-
-  curl_easy_setopt(curl, CURLOPT_URL, URL_Str);
-  res = curl_easy_perform(curl);
-  if (outfile != NULL)
-    fclose(outfile);
-  return res;  /* (CURLE_OK) */
-}
-
-void showUsage(void)
-{
-  fprintf(stderr, "SYNCTIME: Synchronising computer clock with time server"
-          " using HTTP protocol.\n");
-  fprintf(stderr, "Usage   : SYNCTIME [Option]\n");
-  fprintf(stderr, "Options :\n");
-  fprintf(stderr, " --server=WEBSERVER        Use this time server instead"
-          " of default.\n");
-  fprintf(stderr, " --showall                 Show all HTTP header.\n");
-  fprintf(stderr, " --synctime                Synchronising computer clock"
-          " with time server.\n");
-  fprintf(stderr, " --proxy-user=USER[:PASS]  Set proxy username and"
-          " password.\n");
-  fprintf(stderr, " --proxy=HOST[:PORT]       Use HTTP proxy on given"
-          " port.\n");
-  fprintf(stderr, " --help                    Print this help.\n");
-  fprintf(stderr, "\n");
-  return;
-}
-
-int conf_init(conf_t *conf)
-{
-  int i;
-
-  *conf->http_proxy       = 0;
-  for (i=0; i<MAX_STRING1; i++)
-    conf->proxy_user[i]     = 0;    /* Clean up password from memory */
-  *conf->timeserver       = 0;
-  return 1;
-}
-
-int main(int argc, char *argv[])
-{
-  CURL    *curl;
-  conf_t  conf[1];
-  int     OptionIndex;
-  struct  tm *lt;
-  struct  tm *gmt;
-  time_t  tt;
-  time_t  tt_local;
-  time_t  tt_gmt;
-  double  tzonediffFloat;
-  int     tzonediffWord;
-  char    timeBuf[61];
-  char    tzoneBuf[16];
-  int     RetValue;
-
-  OptionIndex     = 0;
-  ShowAllHeader   = 0;    /* Do not show HTTP Header */
-  AutoSyncTime    = 0;    /* Do not synchronise computer clock */
-  RetValue        = 0;    /* Successful Exit */
-  conf_init(conf);
-
-  if (argc > 1) {
-    while (OptionIndex < argc) {
-      if (strncmp(argv[OptionIndex], "--server=", 9) == 0)
-        snprintf(conf->timeserver, MAX_STRING, "%s", &argv[OptionIndex][9]);
-
-      if (strcmp(argv[OptionIndex], "--showall") == 0)
-        ShowAllHeader = 1;
-
-      if (strcmp(argv[OptionIndex], "--synctime") == 0)
-        AutoSyncTime = 1;
-
-      if (strncmp(argv[OptionIndex], "--proxy-user=", 13) == 0)
-        snprintf(conf->proxy_user, MAX_STRING, "%s", &argv[OptionIndex][13]);
-
-      if (strncmp(argv[OptionIndex], "--proxy=", 8) == 0)
-        snprintf(conf->http_proxy, MAX_STRING, "%s", &argv[OptionIndex][8]);
-
-      if ((strcmp(argv[OptionIndex], "--help") == 0) ||
-          (strcmp(argv[OptionIndex], "/?") == 0)) {
-        showUsage();
-        return 0;
-      }
-      OptionIndex++;
-    }
-  }
-
-  if (*conf->timeserver == 0)     /* Use default server for time information */
-    snprintf(conf->timeserver, MAX_STRING, "%s", DefaultTimeServer[0]);
-
-  /* Init CURL before usage */
-  curl_global_init(CURL_GLOBAL_ALL);
-  curl = curl_easy_init();
-  if (curl) {
-    SyncTime_CURL_Init(curl, conf->http_proxy, conf->proxy_user);
-
-    /* Calculating time diff between GMT and localtime */
-    tt       = time(0);
-    lt       = localtime(&tt);
-    tt_local = mktime(lt);
-    gmt      = gmtime(&tt);
-    tt_gmt   = mktime(gmt);
-    tzonediffFloat = difftime(tt_local, tt_gmt);
-    tzonediffWord  = (int)(tzonediffFloat/3600.0);
-
-    if ((double)(tzonediffWord * 3600) == tzonediffFloat)
-      snprintf(tzoneBuf, 15, "%+03d'00'", tzonediffWord);
-    else
-      snprintf(tzoneBuf, 15, "%+03d'30'", tzonediffWord);
-
-    /* Get current system time and local time */
-    GetSystemTime(&SYSTime);
-    GetLocalTime(&LOCALTime);
-    snprintf(timeBuf, 60, "%s, %02d %s %04d %02d:%02d:%02d.%03d, ",
-             DayStr[LOCALTime.wDayOfWeek], LOCALTime.wDay,
-             MthStr[LOCALTime.wMonth-1], LOCALTime.wYear,
-             LOCALTime.wHour, LOCALTime.wMinute, LOCALTime.wSecond,
-             LOCALTime.wMilliseconds);
-
-    fprintf(stderr, "Fetch: %s\n\n", conf->timeserver);
-    fprintf(stderr, "Before HTTP. Date: %s%s\n\n", timeBuf, tzoneBuf);
-
-    /* HTTP HEAD command to the Webserver */
-    SyncTime_CURL_Fetch(curl, conf->timeserver, "index.htm",
-                        HTTP_COMMAND_HEAD);
-
-    GetLocalTime(&LOCALTime);
-    snprintf(timeBuf, 60, "%s, %02d %s %04d %02d:%02d:%02d.%03d, ",
-             DayStr[LOCALTime.wDayOfWeek], LOCALTime.wDay,
-             MthStr[LOCALTime.wMonth-1], LOCALTime.wYear,
-             LOCALTime.wHour, LOCALTime.wMinute, LOCALTime.wSecond,
-             LOCALTime.wMilliseconds);
-    fprintf(stderr, "\nAfter  HTTP. Date: %s%s\n", timeBuf, tzoneBuf);
-
-    if (AutoSyncTime == 3) {
-      /* Synchronising computer clock */
-      if (!SetSystemTime(&SYSTime)) {  /* Set system time */
-        fprintf(stderr, "ERROR: Unable to set system time.\n");
-        RetValue = 1;
-      }
-      else {
-        /* Successfully re-adjusted computer clock */
-        GetLocalTime(&LOCALTime);
-        snprintf(timeBuf, 60, "%s, %02d %s %04d %02d:%02d:%02d.%03d, ",
-                 DayStr[LOCALTime.wDayOfWeek], LOCALTime.wDay,
-                 MthStr[LOCALTime.wMonth-1], LOCALTime.wYear,
-                 LOCALTime.wHour, LOCALTime.wMinute, LOCALTime.wSecond,
-                 LOCALTime.wMilliseconds);
-        fprintf(stderr, "\nNew System's Date: %s%s\n", timeBuf, tzoneBuf);
-      }
-    }
-
-    /* Cleanup before exit */
-    conf_init(conf);
-    curl_easy_cleanup(curl);
-  }
-  return RetValue;
-}
diff --git a/src/other/curl/docs/examples/threaded-ssl.c b/src/other/curl/docs/examples/threaded-ssl.c
deleted file mode 100644
index 438ddaa..0000000
--- a/src/other/curl/docs/examples/threaded-ssl.c
+++ /dev/null
@@ -1,149 +0,0 @@
-/*****************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- *
- * A multi-threaded example that uses pthreads and fetches 4 remote files at
- * once over HTTPS. The lock callbacks and stuff assume OpenSSL or GnuTLS
- * (libgcrypt) so far.
- *
- * OpenSSL docs for this:
- *   http://www.openssl.org/docs/crypto/threads.html
- * gcrypt docs for this:
- *   http://gnupg.org/documentation/manuals/gcrypt/Multi_002dThreading.html
- */
-
-#define USE_OPENSSL /* or USE_GNUTLS accordingly */
-
-#include <stdio.h>
-#include <pthread.h>
-#include <curl/curl.h>
-
-#define NUMT 4
-
-/* we have this global to let the callback get easy access to it */
-static pthread_mutex_t *lockarray;
-
-#ifdef USE_OPENSSL
-#include <openssl/crypto.h>
-static void lock_callback(int mode, int type, char *file, int line)
-{
-  (void)file;
-  (void)line;
-  if (mode & CRYPTO_LOCK) {
-    pthread_mutex_lock(&(lockarray[type]));
-  }
-  else {
-    pthread_mutex_unlock(&(lockarray[type]));
-  }
-}
-
-static unsigned long thread_id(void)
-{
-  unsigned long ret;
-
-  ret=(unsigned long)pthread_self();
-  return(ret);
-}
-
-static void init_locks(void)
-{
-  int i;
-
-  lockarray=(pthread_mutex_t *)OPENSSL_malloc(CRYPTO_num_locks() *
-                                            sizeof(pthread_mutex_t));
-  for (i=0; i<CRYPTO_num_locks(); i++) {
-    pthread_mutex_init(&(lockarray[i]),NULL);
-  }
-
-  CRYPTO_set_id_callback((unsigned long (*)())thread_id);
-  CRYPTO_set_locking_callback((void (*)())lock_callback);
-}
-
-static void kill_locks(void)
-{
-  int i;
-
-  CRYPTO_set_locking_callback(NULL);
-  for (i=0; i<CRYPTO_num_locks(); i++)
-    pthread_mutex_destroy(&(lockarray[i]));
-
-  OPENSSL_free(lockarray);
-}
-#endif
-
-#ifdef USE_GNUTLS
-#include <gcrypt.h>
-#include <errno.h>
-
-GCRY_THREAD_OPTION_PTHREAD_IMPL;
-
-void init_locks(void)
-{
-  gcry_control(GCRYCTL_SET_THREAD_CBS);
-}
-
-#define kill_locks()
-#endif
-
-/* List of URLs to fetch.*/
-const char * const urls[]= {
-  "https://www.sf.net/",
-  "https://www.openssl.org/",
-  "https://www.sf.net/",
-  "https://www.openssl.org/",
-};
-
-static void *pull_one_url(void *url)
-{
-  CURL *curl;
-
-  curl = curl_easy_init();
-  curl_easy_setopt(curl, CURLOPT_URL, url);
-  /* this example doesn't verify the server's certificate, which means we
-     might be downloading stuff from an impostor */
-  curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
-  curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
-  curl_easy_perform(curl); /* ignores error */
-  curl_easy_cleanup(curl);
-
-  return NULL;
-}
-
-int main(int argc, char **argv)
-{
-  pthread_t tid[NUMT];
-  int i;
-  int error;
-  (void)argc; /* we don't use any arguments in this example */
-  (void)argv;
-
-  /* Must initialize libcurl before any threads are started */
-  curl_global_init(CURL_GLOBAL_ALL);
-
-  init_locks();
-
-  for(i=0; i< NUMT; i++) {
-    error = pthread_create(&tid[i],
-                           NULL, /* default attributes please */
-                           pull_one_url,
-                           (void *)urls[i]);
-    if(0 != error)
-      fprintf(stderr, "Couldn't run thread number %d, errno %d\n", i, error);
-    else
-      fprintf(stderr, "Thread %d, gets %s\n", i, urls[i]);
-  }
-
-  /* now wait for all threads to terminate */
-  for(i=0; i< NUMT; i++) {
-    error = pthread_join(tid[i], NULL);
-    fprintf(stderr, "Thread %d terminated\n", i);
-  }
-
-  kill_locks();
-
-  return 0;
-}
diff --git a/src/other/curl/docs/index.html b/src/other/curl/docs/index.html
deleted file mode 100644
index 4390378..0000000
--- a/src/other/curl/docs/index.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<title>Index to Curl documentation</title>
-</head>
-
-<body>
-<h1 align="center">Index to Curl documentation</h1>
-
-<h2>Programs</h2>
-<a href="curl-config.html">curl-config</A>
-<br><a href="curl.html">curl</A>
-
-<h2>Tutorial</h2>
-<a href="TheArtOfHttpScripting">The Art Of Scripting HTTP Requests Using Curl</a> (plain text)
-
-<h2>libcurl</h2>
-See the <a href="libcurl/index.html">libcurl section</a>
-
-</body></html>
diff --git a/src/other/curl/docs/libcurl/ABI b/src/other/curl/docs/libcurl/ABI
deleted file mode 100644
index 3ec0e04..0000000
--- a/src/other/curl/docs/libcurl/ABI
+++ /dev/null
@@ -1,69 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-                          libcurl's binary interface
-
-ABI - Application Binary Interface
-
-  First, allow me to define the word for this context: ABI describes the
-  low-level interface between an application program and a library. Calling
-  conventions, function arguments, return values, struct sizes/defines and
-  more.
-
-  For a longer description, see
-  http://en.wikipedia.org/wiki/Application_binary_interface
-
-Upgrades
-
-  In the vast majority of all cases, a typical libcurl upgrade does not break
-  the ABI at all. Your application can remain using libcurl just as before,
-  only with less bugs and possibly with added new features. You need to read
-  the release notes, and if they mention an ABI break/soname bump, you may
-  have to verify that your application still builds fine and uses libcurl as
-  it now is defined to work.
-
-Version Numbers
-
-  In libcurl land, you really can't tell by the libcurl version number if that
-  libcurl is binary compatible or not with another libcurl version.
-
-Soname Bumps
-
-  Whenever there are changes done to the library that will cause an ABI
-  breakage, that may require your application to get attention or possibly be
-  changed to adhere to new things, we will bump the soname. Then the library
-  will get a different output name and thus can in fact be installed in
-  parallel with an older installed lib (on most systems). Thus, old
-  applications built against the previous ABI version will remain working and
-  using the older lib, while newer applications build and use the newer one.
-
-  During the first seven years of libcurl releases, there have only been four
-  ABI breakages.
-
-Downgrades
-
-  Going to an older libcurl version from one you're currently using can be a
-  tricky thing. Mostly we add features and options to newer libcurls as that
-  won't break ABI or hamper existing applications. This has the implication
-  that going backwards may get you in a situation where you pick a libcurl
-  that doesn't support the options your application needs. Or possibly you
-  even downgrade so far so you cross an ABI break border and thus a different
-  soname, and then your application may need to adapt to the modified ABI.
-
-History
-
-  The previous major library soname number bumps (breaking backwards
-  compatibility) have happened the following times:
-
-  0 - libcurl 7.1,   August 2000
-
-  1 - libcurl 7.5    December 2000
-
-  2 - libcurl 7.7    March 2001
-
-  3 - libcurl 7.12.0 June 2004
-
-  4 - libcurl 7.16.0 October 2006
diff --git a/src/other/curl/docs/libcurl/Makefile.am b/src/other/curl/docs/libcurl/Makefile.am
deleted file mode 100644
index 4b301bf..0000000
--- a/src/other/curl/docs/libcurl/Makefile.am
+++ /dev/null
@@ -1,83 +0,0 @@
-#
-#
-
-AUTOMAKE_OPTIONS = foreign no-dependencies
-
-noinst_MANS = curl_easy_cleanup.3 curl_easy_getinfo.3 curl_easy_init.3	 \
- curl_easy_perform.3 curl_easy_setopt.3 curl_easy_duphandle.3		 \
- curl_formadd.3 curl_formfree.3 curl_getdate.3 curl_getenv.3		 \
- curl_slist_append.3 curl_slist_free_all.3 curl_version.3		 \
- curl_version_info.3 curl_escape.3 curl_unescape.3 curl_free.3		 \
- curl_strequal.3 curl_mprintf.3 curl_global_init.3 curl_global_cleanup.3 \
- curl_multi_add_handle.3 curl_multi_cleanup.3 curl_multi_fdset.3	 \
- curl_multi_info_read.3 curl_multi_init.3 curl_multi_perform.3		 \
- curl_multi_remove_handle.3 curl_share_cleanup.3 curl_share_init.3	 \
- curl_share_setopt.3 libcurl.3 libcurl-easy.3 libcurl-multi.3		 \
- libcurl-share.3 libcurl-errors.3 curl_easy_strerror.3			 \
- curl_multi_strerror.3 curl_share_strerror.3 curl_global_init_mem.3	 \
- libcurl-tutorial.3 curl_easy_reset.3 curl_easy_escape.3		 \
- curl_easy_unescape.3 curl_multi_setopt.3 curl_multi_socket.3		 \
- curl_multi_timeout.3 curl_formget.3 curl_multi_assign.3		 \
- curl_easy_pause.3 curl_easy_recv.3 curl_easy_send.3			 \
- curl_multi_socket_action.3
-
-HTMLPAGES = curl_easy_cleanup.html curl_easy_getinfo.html		\
- curl_easy_init.html curl_easy_perform.html curl_easy_setopt.html	\
- curl_easy_duphandle.html curl_formadd.html curl_formfree.html		\
- curl_getdate.html curl_getenv.html curl_slist_append.html		\
- curl_slist_free_all.html curl_version.html curl_version_info.html	\
- curl_escape.html curl_unescape.html curl_free.html curl_strequal.html	\
- curl_mprintf.html curl_global_init.html curl_global_cleanup.html	\
- curl_multi_add_handle.html curl_multi_cleanup.html			\
- curl_multi_fdset.html curl_multi_info_read.html curl_multi_init.html	\
- curl_multi_perform.html curl_multi_remove_handle.html			\
- curl_share_cleanup.html curl_share_init.html curl_share_setopt.html	\
- libcurl.html libcurl-multi.html libcurl-easy.html libcurl-share.html	\
- libcurl-errors.html curl_easy_strerror.html curl_multi_strerror.html	\
- curl_share_strerror.html curl_global_init_mem.html			\
- libcurl-tutorial.html curl_easy_reset.html curl_easy_escape.html	\
- curl_easy_unescape.html curl_multi_setopt.html curl_multi_socket.html	\
- curl_multi_timeout.html curl_formget.html curl_multi_assign.html	\
- curl_easy_pause.html curl_easy_recv.html curl_easy_send.html		\
- curl_multi_socket_action.html
-
-PDFPAGES = curl_easy_cleanup.pdf curl_easy_getinfo.pdf			 \
- curl_easy_init.pdf curl_easy_perform.pdf curl_easy_setopt.pdf		 \
- curl_easy_duphandle.pdf curl_formadd.pdf curl_formfree.pdf		 \
- curl_getdate.pdf curl_getenv.pdf curl_slist_append.pdf			 \
- curl_slist_free_all.pdf curl_version.pdf curl_version_info.pdf		 \
- curl_escape.pdf curl_unescape.pdf curl_free.pdf curl_strequal.pdf	 \
- curl_mprintf.pdf curl_global_init.pdf curl_global_cleanup.pdf		 \
- curl_multi_add_handle.pdf curl_multi_cleanup.pdf curl_multi_fdset.pdf	 \
- curl_multi_info_read.pdf curl_multi_init.pdf curl_multi_perform.pdf	 \
- curl_multi_remove_handle.pdf curl_share_cleanup.pdf curl_share_init.pdf \
- curl_share_setopt.pdf libcurl.pdf libcurl-multi.pdf libcurl-easy.pdf	 \
- libcurl-share.pdf libcurl-errors.pdf curl_easy_strerror.pdf		 \
- curl_multi_strerror.pdf curl_share_strerror.pdf			 \
- curl_global_init_mem.pdf libcurl-tutorial.pdf curl_easy_reset.pdf	 \
- curl_easy_escape.pdf curl_easy_unescape.pdf curl_multi_setopt.pdf	 \
- curl_multi_socket.pdf curl_multi_timeout.pdf curl_formget.pdf		 \
- curl_multi_assign.pdf curl_easy_pause.pdf curl_easy_recv.pdf		 \
- curl_easy_send.pdf curl_multi_socket_action.pdf
-
-CLEANFILES = $(HTMLPAGES) $(PDFPAGES)
-
-EXTRA_DIST = $(man_MANS) $(HTMLPAGES) index.html $(PDFPAGES) libcurl.m4 ABI \
-  symbols-in-versions
-MAN2HTML= groff -Thtml -man $< > $@
-
-SUFFIXES = .3 .html
-
-html: $(HTMLPAGES)
-
-.3.html:
-	$(MAN2HTML)
-
-pdf: $(PDFPAGES)
-
-.3.pdf:
-	@(foo=`echo $@ | sed -e 's/\.[0-9]$$//g'`; \
-	groff -Tps -man $< >$$foo.ps; \
-	ps2pdf $$foo.ps $@; \
-	rm $$foo.ps; \
-	echo "converted $< to $@")
diff --git a/src/other/curl/docs/libcurl/Makefile.in b/src/other/curl/docs/libcurl/Makefile.in
deleted file mode 100644
index 1ce041f..0000000
--- a/src/other/curl/docs/libcurl/Makefile.in
+++ /dev/null
@@ -1,486 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-#
-#
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = docs/libcurl
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
-	$(top_srcdir)/m4/curl-confopts.m4 \
-	$(top_srcdir)/m4/curl-functions.m4 \
-	$(top_srcdir)/m4/curl-override.m4 \
-	$(top_srcdir)/m4/curl-reentrant.m4 \
-	$(top_srcdir)/m4/curl-system.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
-	$(top_builddir)/src/curl_config.h \
-	$(top_builddir)/include/curl/curlbuild.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-depcomp =
-am__depfiles_maybe =
-SOURCES =
-DIST_SOURCES =
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
-CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
-CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
-CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
-CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
-CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
-CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
-CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
-CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
-CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
-CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
-CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
-CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
-CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
-CURL_LIBS = @CURL_LIBS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
-IDN_ENABLED = @IDN_ENABLED@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-IPV6_ENABLED = @IPV6_ENABLED@
-KRB4_ENABLED = @KRB4_ENABLED@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCURL_LIBS = @LIBCURL_LIBS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MANOPT = @MANOPT@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-NROFF = @NROFF@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH = @PATH@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PERL = @PERL@
-PKGADD_NAME = @PKGADD_NAME@
-PKGADD_PKG = @PKGADD_PKG@
-PKGADD_VENDOR = @PKGADD_VENDOR@
-PKGCONFIG = @PKGCONFIG@
-RANDOM_FILE = @RANDOM_FILE@
-RANLIB = @RANLIB@
-REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-SSL_ENABLED = @SSL_ENABLED@
-STRIP = @STRIP@
-SUPPORT_FEATURES = @SUPPORT_FEATURES@
-SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
-TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
-USE_ARES = @USE_ARES@
-USE_GNUTLS = @USE_GNUTLS@
-USE_LIBSSH2 = @USE_LIBSSH2@
-USE_NSS = @USE_NSS@
-USE_SSLEAY = @USE_SSLEAY@
-USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
-VERSION = @VERSION@
-VERSIONNUM = @VERSIONNUM@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-libext = @libext@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-AUTOMAKE_OPTIONS = foreign no-dependencies
-noinst_MANS = curl_easy_cleanup.3 curl_easy_getinfo.3 curl_easy_init.3	 \
- curl_easy_perform.3 curl_easy_setopt.3 curl_easy_duphandle.3		 \
- curl_formadd.3 curl_formfree.3 curl_getdate.3 curl_getenv.3		 \
- curl_slist_append.3 curl_slist_free_all.3 curl_version.3		 \
- curl_version_info.3 curl_escape.3 curl_unescape.3 curl_free.3		 \
- curl_strequal.3 curl_mprintf.3 curl_global_init.3 curl_global_cleanup.3 \
- curl_multi_add_handle.3 curl_multi_cleanup.3 curl_multi_fdset.3	 \
- curl_multi_info_read.3 curl_multi_init.3 curl_multi_perform.3		 \
- curl_multi_remove_handle.3 curl_share_cleanup.3 curl_share_init.3	 \
- curl_share_setopt.3 libcurl.3 libcurl-easy.3 libcurl-multi.3		 \
- libcurl-share.3 libcurl-errors.3 curl_easy_strerror.3			 \
- curl_multi_strerror.3 curl_share_strerror.3 curl_global_init_mem.3	 \
- libcurl-tutorial.3 curl_easy_reset.3 curl_easy_escape.3		 \
- curl_easy_unescape.3 curl_multi_setopt.3 curl_multi_socket.3		 \
- curl_multi_timeout.3 curl_formget.3 curl_multi_assign.3		 \
- curl_easy_pause.3 curl_easy_recv.3 curl_easy_send.3			 \
- curl_multi_socket_action.3
-
-HTMLPAGES = curl_easy_cleanup.html curl_easy_getinfo.html		\
- curl_easy_init.html curl_easy_perform.html curl_easy_setopt.html	\
- curl_easy_duphandle.html curl_formadd.html curl_formfree.html		\
- curl_getdate.html curl_getenv.html curl_slist_append.html		\
- curl_slist_free_all.html curl_version.html curl_version_info.html	\
- curl_escape.html curl_unescape.html curl_free.html curl_strequal.html	\
- curl_mprintf.html curl_global_init.html curl_global_cleanup.html	\
- curl_multi_add_handle.html curl_multi_cleanup.html			\
- curl_multi_fdset.html curl_multi_info_read.html curl_multi_init.html	\
- curl_multi_perform.html curl_multi_remove_handle.html			\
- curl_share_cleanup.html curl_share_init.html curl_share_setopt.html	\
- libcurl.html libcurl-multi.html libcurl-easy.html libcurl-share.html	\
- libcurl-errors.html curl_easy_strerror.html curl_multi_strerror.html	\
- curl_share_strerror.html curl_global_init_mem.html			\
- libcurl-tutorial.html curl_easy_reset.html curl_easy_escape.html	\
- curl_easy_unescape.html curl_multi_setopt.html curl_multi_socket.html	\
- curl_multi_timeout.html curl_formget.html curl_multi_assign.html	\
- curl_easy_pause.html curl_easy_recv.html curl_easy_send.html		\
- curl_multi_socket_action.html
-
-PDFPAGES = curl_easy_cleanup.pdf curl_easy_getinfo.pdf			 \
- curl_easy_init.pdf curl_easy_perform.pdf curl_easy_setopt.pdf		 \
- curl_easy_duphandle.pdf curl_formadd.pdf curl_formfree.pdf		 \
- curl_getdate.pdf curl_getenv.pdf curl_slist_append.pdf			 \
- curl_slist_free_all.pdf curl_version.pdf curl_version_info.pdf		 \
- curl_escape.pdf curl_unescape.pdf curl_free.pdf curl_strequal.pdf	 \
- curl_mprintf.pdf curl_global_init.pdf curl_global_cleanup.pdf		 \
- curl_multi_add_handle.pdf curl_multi_cleanup.pdf curl_multi_fdset.pdf	 \
- curl_multi_info_read.pdf curl_multi_init.pdf curl_multi_perform.pdf	 \
- curl_multi_remove_handle.pdf curl_share_cleanup.pdf curl_share_init.pdf \
- curl_share_setopt.pdf libcurl.pdf libcurl-multi.pdf libcurl-easy.pdf	 \
- libcurl-share.pdf libcurl-errors.pdf curl_easy_strerror.pdf		 \
- curl_multi_strerror.pdf curl_share_strerror.pdf			 \
- curl_global_init_mem.pdf libcurl-tutorial.pdf curl_easy_reset.pdf	 \
- curl_easy_escape.pdf curl_easy_unescape.pdf curl_multi_setopt.pdf	 \
- curl_multi_socket.pdf curl_multi_timeout.pdf curl_formget.pdf		 \
- curl_multi_assign.pdf curl_easy_pause.pdf curl_easy_recv.pdf		 \
- curl_easy_send.pdf curl_multi_socket_action.pdf
-
-CLEANFILES = $(HTMLPAGES) $(PDFPAGES)
-EXTRA_DIST = $(man_MANS) $(HTMLPAGES) index.html $(PDFPAGES) libcurl.m4 ABI \
-  symbols-in-versions
-
-MAN2HTML = groff -Thtml -man $< > $@
-SUFFIXES = .3 .html
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .3 .html .pdf
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
-	@for dep in $?; do \
-	  case '$(am__configure_deps)' in \
-	    *$$dep*) \
-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
-	        && { if test -f $@; then exit 0; else break; fi; }; \
-	      exit 1;; \
-	  esac; \
-	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/libcurl/Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign docs/libcurl/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-tags: TAGS
-TAGS:
-
-ctags: CTAGS
-CTAGS:
-
-
-distdir: $(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: check-am
-all-am: Makefile
-installdirs:
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-am
-	-rm -f Makefile
-distclean-am: clean-am distclean-generic
-
-dvi: dvi-am
-
-dvi-am:
-
-html-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
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: install-am install-strip
-
-.PHONY: all all-am check check-am clean clean-generic clean-libtool \
-	distclean distclean-generic distclean-libtool distdir dvi \
-	dvi-am html html-am info info-am install install-am \
-	install-data install-data-am install-dvi install-dvi-am \
-	install-exec install-exec-am install-html install-html-am \
-	install-info install-info-am install-man install-pdf \
-	install-pdf-am install-ps install-ps-am install-strip \
-	installcheck installcheck-am installdirs maintainer-clean \
-	maintainer-clean-generic mostlyclean mostlyclean-generic \
-	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am
-
-
-html: $(HTMLPAGES)
-
-.3.html:
-	$(MAN2HTML)
-
-pdf: $(PDFPAGES)
-
-.3.pdf:
-	@(foo=`echo $@ | sed -e 's/\.[0-9]$$//g'`; \
-	groff -Tps -man $< >$$foo.ps; \
-	ps2pdf $$foo.ps $@; \
-	rm $$foo.ps; \
-	echo "converted $< to $@")
-
-# 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/src/other/curl/docs/libcurl/curl_easy_cleanup.html b/src/other/curl/docs/libcurl/curl_easy_cleanup.html
deleted file mode 100644
index 21d4a85..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_cleanup.html
+++ /dev/null
@@ -1,95 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:10 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_cleanup</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_cleanup</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_cleanup
-- End a libcurl easy session</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>void
-curl_easy_cleanup(CURL *</b><i>handle</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-must be the last function to call for an easy session. It is
-the opposite of the <i>curl_easy_init(3)</i> function and
-must be called with the same <i>handle</i> as input that the
-curl_easy_init call returned.</p>
-
-<p style="margin-left:11%; margin-top: 1em">This will
-effectively close all connections this handle has used and
-possibly has kept open until now. Don’t call this
-function if you intend to transfer more files.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Any uses of the
-<b>handle</b> after this function has been called are
-illegal. This kills the handle and all memory associated
-with it!</p>
-
-<p style="margin-left:11%; margin-top: 1em">With libcurl
-versions prior to 7.17.: when you’ve called this, you
-can safely remove all the strings you’ve previously
-told libcurl to use, as it won’t use them anymore
-now.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">None</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_easy_init</b>(3),</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_cleanup.pdf b/src/other/curl/docs/libcurl/curl_easy_cleanup.pdf
deleted file mode 100644
index 6b47f84..0000000
Binary files a/src/other/curl/docs/libcurl/curl_easy_cleanup.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_easy_duphandle.html b/src/other/curl/docs/libcurl/curl_easy_duphandle.html
deleted file mode 100644
index 0b33bd0..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_duphandle.html
+++ /dev/null
@@ -1,97 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:12 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_duphandle</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_duphandle</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_duphandle
-- Clone a libcurl session handle</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURL
-*curl_easy_duphandle(CURL *</b><i>handle</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-will return a new curl handle, a duplicate, using all the
-options previously set in the input curl <i>handle</i>. Both
-handles can subsequently be used independently and they must
-both be freed with <i>curl_easy_cleanup(3)</i>.</p>
-
-<p style="margin-left:11%; margin-top: 1em">All strings
-that the input handle has been told to point to (as opposed
-to copy) with previous calls to <i>curl_easy_setopt(3)</i>
-using char * inputs, will be pointed to by the new handle as
-well. You must therefore make sure to keep the data around
-until both handles have been cleaned up.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The new handle
-will <b>not</b> inherit any state information, no
-connections, no SSL sessions and no cookies.</p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>Note</b>
-that even in multi-threaded programs, this function must be
-called in a synchronous way, the input handle may not be in
-use when cloned.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">If this
-function returns NULL, something went wrong and no valid
-handle was returned.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_easy_init</b>(3),<b>curl_easy_cleanup</b>(3),<b>curl_global_init</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_duphandle.pdf b/src/other/curl/docs/libcurl/curl_easy_duphandle.pdf
deleted file mode 100644
index 7e860eb..0000000
Binary files a/src/other/curl/docs/libcurl/curl_easy_duphandle.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_easy_escape.html b/src/other/curl/docs/libcurl/curl_easy_escape.html
deleted file mode 100644
index e4c0522..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_escape.html
+++ /dev/null
@@ -1,101 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:19 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_escape</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_escape</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_escape
-- URL encodes the given string</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>char
-*curl_easy_escape( CURL *</b><i>curl</i><b>, char
-*</b><i>url</i><b>, int</b> <i>length</i> <b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-converts the given input string to an URL encoded string and
-returns that as a new allocated string. All input characters
-that are not a-z, A-Z or 0-9 are converted to their
-"URL escaped" version (%NN where NN is a two-digit
-hexadecimal number).</p>
-
-<p style="margin-left:11%; margin-top: 1em">If the
-<b>length</b> argument is set to 0 (zero),
-<i>curl_easy_escape(3)</i> uses strlen() on the input
-<b>url</b> to find out the size.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You must
-<i>curl_free(3)</i> the returned string when you’re
-done with it.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Added in 7.15.4
-and replaces the old <i>curl_escape(3)</i> function.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A pointer to a
-zero terminated string or NULL if it failed.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_easy_unescape</b>(3),
-<b>curl_free</b>(3), <b>RFC</b>2396</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_escape.pdf b/src/other/curl/docs/libcurl/curl_easy_escape.pdf
deleted file mode 100644
index 0050c98..0000000
Binary files a/src/other/curl/docs/libcurl/curl_easy_escape.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_easy_getinfo.html b/src/other/curl/docs/libcurl/curl_easy_getinfo.html
deleted file mode 100644
index 30c2aec..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_getinfo.html
+++ /dev/null
@@ -1,513 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:10 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_getinfo</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_getinfo</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABLE INFORMATION">AVAILABLE INFORMATION</a><br>
-<a href="#TIMES">TIMES</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_getinfo
-- extract information from a curl handle</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURLcode
-curl_easy_getinfo(CURL *curl, CURLINFO info, ... );</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Request
-internal information from the curl session with this
-function. The third argument <b>MUST</b> be a pointer to a
-long, a pointer to a char *, a pointer to a struct
-curl_slist * or a pointer to a double (as this documentation
-describes further down). The data pointed-to will be filled
-in accordingly and can be relied upon only if the function
-returns CURLE_OK. Use this function AFTER a performed
-transfer if you want to get transfer- oriented data.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You should not
-free the memory returned by this function unless it is
-explicitly mentioned below.</p>
-
-<h2>AVAILABLE INFORMATION
-<a name="AVAILABLE INFORMATION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The following
-information can be extracted: <br>
-CURLINFO_EFFECTIVE_URL</p>
-
-<p style="margin-left:22%;">Pass a pointer to a char
-pointer to receive the last used effective URL.</p>
-
-<p style="margin-left:11%;">CURLINFO_RESPONSE_CODE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the last received HTTP or FTP code. This option was
-known as CURLINFO_HTTP_CODE in libcurl 7.10.7 and earlier.
-This will be zero if no server response code has been
-received. Note that a proxy’s CONNECT response should
-be read with <i>CURLINFO_HTTP_CONNECTCODE</i> and not
-this.</p>
-
-<p style="margin-left:11%;">CURLINFO_HTTP_CONNECTCODE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the last received proxy response code to a CONNECT
-request.</p>
-
-<p style="margin-left:11%;">CURLINFO_FILETIME</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the remote time of the retrieved document (in number
-of seconds since 1 jan 1970 in the GMT/UTC time zone). If
-you get -1, it can be because of many reasons (unknown, the
-server hides it or the server doesn’t support the
-command that tells document time etc) and the time of the
-document is unknown. Note that you must tell the server to
-collect this information before the transfer is made, by
-using the CURLOPT_FILETIME option to
-<i>curl_easy_setopt(3)</i> or you will unconditionally get a
--1 back. (Added in 7.5)</p>
-
-<p style="margin-left:11%;">CURLINFO_TOTAL_TIME</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the total time in seconds for the previous transfer,
-including name resolving, TCP connect etc.</p>
-
-<p style="margin-left:11%;">CURLINFO_NAMELOOKUP_TIME</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the time, in seconds, it took from the start until
-the name resolving was completed.</p>
-
-<p style="margin-left:11%;">CURLINFO_CONNECT_TIME</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the time, in seconds, it took from the start until
-the connect to the remote host (or proxy) was completed.</p>
-
-<p style="margin-left:11%;">CURLINFO_APPCONNECT_TIME</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the time, in seconds, it took from the start until
-the SSL/SSH connect/handshake to the remote host was
-completed. This time is most often very near to the
-PRETRANSFER time, except for cases such as HTTP pippelining
-where the pretransfer time can be delayed due to waits in
-line for the pipeline and more. (Added in 7.19.0)</p>
-
-<p style="margin-left:11%;">CURLINFO_PRETRANSFER_TIME</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the time, in seconds, it took from the start until
-the file transfer is just about to begin. This includes all
-pre-transfer commands and negotiations that are specific to
-the particular protocol(s) involved.</p>
-
-
-<p style="margin-left:11%;">CURLINFO_STARTTRANSFER_TIME</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the time, in seconds, it took from the start until
-the first byte is just about to be transferred. This
-includes CURLINFO_PRETRANSFER_TIME and also the time the
-server needs to calculate the result.</p>
-
-<p style="margin-left:11%;">CURLINFO_REDIRECT_TIME</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the total time, in seconds, it took for all
-redirection steps include name lookup, connect, pretransfer
-and transfer before final transaction was started.
-CURLINFO_REDIRECT_TIME contains the complete execution time
-for multiple redirections. (Added in 7.9.7)</p>
-
-<p style="margin-left:11%;">CURLINFO_REDIRECT_COUNT</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the total number of redirections that were actually
-followed. (Added in 7.9.7)</p>
-
-<p style="margin-left:11%;">CURLINFO_REDIRECT_URL</p>
-
-<p style="margin-left:22%;">Pass a pointer to a char
-pointer to receive the URL a redirect <i>would</i> take you
-to if you would enable CURLOPT_FOLLOWLOCATION. This can come
-very handy if you think using the built-in libcurl redirect
-logic isn’t good enough for you but you would still
-prefer to avoid implementing all the magic of figuring out
-the new URL. (Added in 7.18.2)</p>
-
-<p style="margin-left:11%;">CURLINFO_SIZE_UPLOAD</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the total amount of bytes that were uploaded.</p>
-
-<p style="margin-left:11%;">CURLINFO_SIZE_DOWNLOAD</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the total amount of bytes that were downloaded. The
-amount is only for the latest transfer and will be reset
-again for each new transfer.</p>
-
-<p style="margin-left:11%;">CURLINFO_SPEED_DOWNLOAD</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the average download speed that curl measured for
-the complete download. Measured in bytes/second.</p>
-
-<p style="margin-left:11%;">CURLINFO_SPEED_UPLOAD</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the average upload speed that curl measured for the
-complete upload. Measured in bytes/second.</p>
-
-<p style="margin-left:11%;">CURLINFO_HEADER_SIZE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the total size of all the headers received. Measured
-in number of bytes.</p>
-
-<p style="margin-left:11%;">CURLINFO_REQUEST_SIZE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the total size of the issued requests. This is so
-far only for HTTP requests. Note that this may be more than
-one request if FOLLOWLOCATION is true.</p>
-
-<p style="margin-left:11%;">CURLINFO_SSL_VERIFYRESULT</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the result of the certification verification that
-was requested (using the CURLOPT_SSL_VERIFYPEER option to
-<i>curl_easy_setopt(3)</i>).</p>
-
-<p style="margin-left:11%;">CURLINFO_SSL_ENGINES</p>
-
-<p style="margin-left:22%;">Pass the address of a
-’struct curl_slist *’ to receive a linked-list
-of OpenSSL crypto-engines supported. Note that engines are
-normally implemented in separate dynamic libraries. Hence
-not all the returned engines may be available at run-time.
-<b>NOTE:</b> you must call <i>curl_slist_free_all(3)</i> on
-the list pointer once you’re done with it, as libcurl
-will not free the data for you. (Added in 7.12.3)</p>
-
-
-<p style="margin-left:11%;">CURLINFO_CONTENT_LENGTH_DOWNLOAD</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the content-length of the download. This is the
-value read from the Content-Length: field. Since 7.19.4,
-this returns -1 if the size isn’t known.</p>
-
-
-<p style="margin-left:11%;">CURLINFO_CONTENT_LENGTH_UPLOAD</p>
-
-<p style="margin-left:22%;">Pass a pointer to a double to
-receive the specified size of the upload. Since 7.19.4, this
-returns -1 if the size isn’t known.</p>
-
-<p style="margin-left:11%;">CURLINFO_CONTENT_TYPE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a char
-pointer to receive the content-type of the downloaded
-object. This is the value read from the Content-Type: field.
-If you get NULL, it means that the server didn’t send
-a valid Content-Type header or that the protocol used
-doesn’t support this.</p>
-
-<p style="margin-left:11%;">CURLINFO_PRIVATE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a char
-pointer to receive the pointer to the private data
-associated with the curl handle (set with the
-CURLOPT_PRIVATE option to <i>curl_easy_setopt(3)</i>).
-Please note that for internal reasons, the value is returned
-as a char pointer, although effectively being a ’void
-*’. (Added in 7.10.3)</p>
-
-<p style="margin-left:11%;">CURLINFO_HTTPAUTH_AVAIL</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive a bitmask indicating the authentication method(s)
-available. The meaning of the bits is explained in the
-CURLOPT_HTTPAUTH option for <i>curl_easy_setopt(3)</i>.
-(Added in 7.10.8)</p>
-
-<p style="margin-left:11%;">CURLINFO_PROXYAUTH_AVAIL</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive a bitmask indicating the authentication method(s)
-available for your proxy authentication. (Added in
-7.10.8)</p>
-
-<p style="margin-left:11%;">CURLINFO_OS_ERRNO</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the errno variable from a connect failure. Note that
-the value is only set on failure, it is not reset upon a
-successfull operation. (Added in 7.12.2)</p>
-
-<p style="margin-left:11%;">CURLINFO_NUM_CONNECTS</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive how many new connections libcurl had to create to
-achieve the previous transfer (only the successful connects
-are counted). Combined with <i>CURLINFO_REDIRECT_COUNT</i>
-you are able to know how many times libcurl successfully
-reused existing connection(s) or not. See the Connection
-Options of <i>curl_easy_setopt(3)</i> to see how libcurl
-tries to make persistent connections to save time. (Added in
-7.12.3)</p>
-
-<p style="margin-left:11%;">CURLINFO_PRIMARY_IP</p>
-
-<p style="margin-left:22%;">Pass a pointer to a char
-pointer to receive the pointer to a zero-terminated string
-holding the IP address of the most recent connection done
-with this <b>curl</b> handle. This string may be IPv6 if
-that’s enabled. Note that you get a pointer to a
-memory area that will be re-used at next request so you need
-to copy the string if you want to keep the information.
-(Added in 7.19.0)</p>
-
-<p style="margin-left:11%;">CURLINFO_COOKIELIST</p>
-
-<p style="margin-left:22%;">Pass a pointer to a
-’struct curl_slist *’ to receive a linked-list
-of all cookies cURL knows (expired ones, too). Don’t
-forget to <i>curl_slist_free_all(3)</i> the list after it
-has been used. If there are no cookies (cookies for the
-handle have not been enabled or simply none have been
-received) ’struct curl_slist *’ will be set to
-point to NULL. (Added in 7.14.1)</p>
-
-<p style="margin-left:11%;">CURLINFO_LASTSOCKET</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the last socket used by this curl session. If the
-socket is no longer valid, -1 is returned. When you finish
-working with the socket, you must call curl_easy_cleanup()
-as usual and let libcurl close the socket and cleanup other
-resources associated with the handle. This is typically used
-in combination with <i>CURLOPT_CONNECT_ONLY</i>. (Added in
-7.15.2)</p>
-
-<p style="margin-left:11%;">CURLINFO_FTP_ENTRY_PATH</p>
-
-<p style="margin-left:22%;">Pass a pointer to a char
-pointer to receive a pointer to a string holding the path of
-the entry path. That is the initial path libcurl ended up in
-when logging on to the remote FTP server. This stores a NULL
-as pointer if something is wrong. (Added in 7.15.4)</p>
-
-<p style="margin-left:11%;">CURLINFO_CERTINFO</p>
-
-<p style="margin-left:22%;">Pass a pointer to a
-’struct curl_certinfo *’ and you’ll get it
-set to point to struct that holds a number of linked lists
-with info about the certificate chain, assuming you had
-CURLOPT_CERTINFO enabled when the previous request was done.
-The struct reports how many certs it found and then you can
-extract info for each of those certs by following the linked
-lists. The info chain is provided in a series of data in the
-format "name:content" where the content is for the
-specific named data. See also the certinfo.c example. NOTE:
-this option is only available in libcurl built with OpenSSL
-support. (Added in 7.19.1)</p>
-
-<p style="margin-left:11%;">CURLINFO_CONDITION_UNMET</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the number 1 if the condition provided in the
-previous request didn’t match (see
-<i>CURLOPT_TIMECONDITION</i>). Alas, if this returns a 1 you
-know that the reason you didn’t get data in return is
-because it didn’t fulfill the condition. The long ths
-argument points to will get a zero stored if the condition
-instead was met. (Added in 7.19.4)</p>
-
-<p style="margin-left:11%;">CURLINFO_RTSP_SESSION_ID</p>
-
-<p style="margin-left:22%;">Pass a pointer to a char
-pointer to receive a pointer to a string holding the most
-recent RTSP Session ID.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Applications
-wishing to resume an RTSP session on another connection
-should retreive this info before closing the active
-connection.</p>
-
-<p style="margin-left:11%;">CURLINFO_RTSP_CLIENT_CSEQ</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the next CSeq that will be used by the
-application.</p>
-
-<p style="margin-left:11%;">CURLINFO_RTSP_SERVER_CSEQ</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the next server CSeq that will be expected by the
-application.</p>
-
-<p style="margin-left:22%; margin-top: 1em"><i>(NOTE:
-listening for server initiated requests is currently
-unimplemented).</i></p>
-
-<p style="margin-left:22%; margin-top: 1em">Applications
-wishing to resume an RTSP session on another connection
-should retreive this info before closing the active
-connection.</p>
-
-<p style="margin-left:11%;">CURLINFO_RTSP_CSEQ_RECV</p>
-
-<p style="margin-left:22%;">Pass a pointer to a long to
-receive the most recently received CSeq from the server. If
-your application encounters a <i>CURLE_RTSP_CSEQ_ERROR</i>
-then you may wish to troubleshoot and/or fix the CSeq
-mismatch by peeking at this value.</p>
-
-<h2>TIMES
-<a name="TIMES"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">An overview of
-the six time values available from curl_easy_getinfo()</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_perform()
-<br>
-| <br>
-|--NAMELOOKUP <br>
-|--|--CONNECT <br>
-|--|--|--APPCONNECT <br>
-|--|--|--|--PRETRANSFER <br>
-|--|--|--|--|--STARTTRANSFER <br>
-|--|--|--|--|--|--TOTAL <br>
-|--|--|--|--|--|--REDIRECT <br>
-NAMELOOKUP</p>
-
-
-<p style="margin-left:22%;"><i>CURLINFO_NAMELOOKUP_TIME</i>.
-The time it took from the start until the name resolving was
-completed.</p>
-
-<p style="margin-left:11%;">CONNECT</p>
-
-<p style="margin-left:22%;"><i>CURLINFO_CONNECT_TIME</i>.
-The time it took from the start until the connect to the
-remote host (or proxy) was completed.</p>
-
-<p style="margin-left:11%;">APPCONNECT</p>
-
-
-<p style="margin-left:22%;"><i>CURLINFO_APPCONNECT_TIME</i>.
-The time it took from the start until the SSL
-connect/handshake with the remote host was completed. (Added
-in in 7.19.0)</p>
-
-<p style="margin-left:11%;">PRETRANSFER</p>
-
-
-<p style="margin-left:22%;"><i>CURLINFO_PRETRANSFER_TIME</i>.
-The time it took from the start until the file transfer is
-just about to begin. This includes all pre-transfer commands
-and negotiations that are specific to the particular
-protocol(s) involved.</p>
-
-<p style="margin-left:11%;">STARTTRANSFER</p>
-
-
-<p style="margin-left:22%;"><i>CURLINFO_STARTTRANSFER_TIME</i>.
-The time it took from the start until the first byte is just
-about to be transferred.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="7%">
-
-
-<p>TOTAL</p></td>
-<td width="4%"></td>
-<td width="78%">
-
-
-<p><i>CURLINFO_TOTAL_TIME</i>. Total time of the previous
-request.</p> </td></tr>
-</table>
-
-<p style="margin-left:11%;">REDIRECT</p>
-
-<p style="margin-left:22%;"><i>CURLINFO_REDIRECT_TIME</i>.
-The time it took for all redirection steps include name
-lookup, connect, pretransfer and transfer before final
-transaction was started. So, this is zero if no redirection
-took place.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">If the
-operation was successful, CURLE_OK is returned. Otherwise an
-appropriate error code will be returned.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_easy_setopt</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_getinfo.pdf b/src/other/curl/docs/libcurl/curl_easy_getinfo.pdf
deleted file mode 100644
index 157e6b0..0000000
Binary files a/src/other/curl/docs/libcurl/curl_easy_getinfo.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_easy_init.html b/src/other/curl/docs/libcurl/curl_easy_init.html
deleted file mode 100644
index 3322f53..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_init.html
+++ /dev/null
@@ -1,97 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:10 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_init</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_init</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_init
-- Start a libcurl easy session</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURL
-*curl_easy_init( );</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-must be the first function to call, and it returns a CURL
-easy handle that you must use as input to other
-easy-functions. curl_easy_init initializes curl and this
-call <b>MUST</b> have a corresponding call to
-<i>curl_easy_cleanup(3)</i> when the operation is
-complete.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you did not
-already call <i>curl_global_init(3)</i>,
-<i>curl_easy_init(3)</i> does it automatically. This may be
-lethal in multi-threaded cases, since
-<i>curl_global_init(3)</i> is not thread-safe, and it may
-result in resource problems because there is no
-corresponding cleanup.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You are
-strongly advised to not allow this automatic behaviour, by
-calling <i>curl_global_init(3)</i> yourself properly. See
-the description in <b>libcurl</b>(3) of global environment
-requirements for details of how to use this function.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">If this
-function returns NULL, something went wrong and you cannot
-use the other curl functions.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_easy_cleanup</b>(3),
-<b>curl_global_init</b>(3), <b>curl_easy_reset</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_init.pdf b/src/other/curl/docs/libcurl/curl_easy_init.pdf
deleted file mode 100644
index 19142eb..0000000
Binary files a/src/other/curl/docs/libcurl/curl_easy_init.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_easy_pause.html b/src/other/curl/docs/libcurl/curl_easy_pause.html
deleted file mode 100644
index 7e9ebfe..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_pause.html
+++ /dev/null
@@ -1,171 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:20 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_pause</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_pause</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#MEMORY USE">MEMORY USE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_pause
-- pause and unpause a connection</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURLcode
-curl_easy_pause(CURL *</b><i>handle</i><b>, int</b>
-<i>bitmask</i> <b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Using this
-function, you can explicitly mark a running connection to
-get paused, and you can unpause a connection that was
-previously paused.</p>
-
-<p style="margin-left:11%; margin-top: 1em">A connection
-can be paused by using this function or by letting the read
-or the write callbacks return the proper magic return code
-(<i>CURL_READFUNC_PAUSE</i> and
-<i>CURL_WRITEFUNC_PAUSE</i>). A write callback that returns
-pause signals to the library that it couldn’t take
-care of any data at all, and that data will then be
-delivered again to the callback when the writing is later
-unpaused.</p>
-
-<p style="margin-left:11%; margin-top: 1em">NOTE: while it
-may feel tempting, take care and notice that you cannot call
-this function from another thread.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When this
-function is called to unpause reading, the chance is high
-that you will get your write callback called before this
-function returns.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-<b>handle</b> argument is of course identifying the handle
-that operates on the connection you want to pause or
-unpause.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-<b>bitmask</b> argument is a set of bits that sets the new
-state of the connection. The following bits can be used:
-<br>
-CURLPAUSE_RECV</p>
-
-<p style="margin-left:22%;">Pause receiving data. There
-will be no data received on this connection until this
-function is called again without this bit set. Thus, the
-write callback (<i>CURLOPT_WRITEFUNCTION</i>) won’t be
-called.</p>
-
-<p style="margin-left:11%;">CURLPAUSE_SEND</p>
-
-<p style="margin-left:22%;">Pause sending data. There will
-be no data sent on this connection until this function is
-called again without this bit set. Thus, the read callback
-(<i>CURLOPT_READFUNCTION</i>) won’t be called.</p>
-
-<p style="margin-left:11%;">CURLPAUSE_ALL</p>
-
-<p style="margin-left:22%;">Convenience define that pauses
-both directions.</p>
-
-<p style="margin-left:11%;">CURLPAUSE_CONT</p>
-
-<p style="margin-left:22%;">Convenience define that
-unpauses both directions</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLE_OK (zero)
-means that the option was set properly, and a non-zero
-return code means something wrong occurred after the new
-state was set. See the <i>libcurl-errors(3)</i> man page for
-the full list with descriptions.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-was added in libcurl 7.18.0. Before this version, there was
-no explicit support for pausing transfers.</p>
-
-<h2>MEMORY USE
-<a name="MEMORY USE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">When pausing a
-read by returning the magic return code from a write
-callback, the read data is already in libcurl’s
-internal buffers so it’ll have to keep it in an
-allocated buffer until the reading is again unpaused using
-this function.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If the
-downloaded data is compressed and is asked to get
-uncompressed automatically on download, libcurl will
-continue to uncompress the entire downloaded chunk and it
-will cache the data uncompressed. This has the side- effect
-that if you download something that is compressed a lot, it
-can result in a very large data amount needing to be
-allocated to save the data during the pause. This said, you
-should probably consider not using paused reading if you
-allow libcurl to uncompress data automatically.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_easy_cleanup</b>(3),
-<b>curl_easy_reset</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_pause.pdf b/src/other/curl/docs/libcurl/curl_easy_pause.pdf
deleted file mode 100644
index 0e44716..0000000
Binary files a/src/other/curl/docs/libcurl/curl_easy_pause.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_easy_perform.html b/src/other/curl/docs/libcurl/curl_easy_perform.html
deleted file mode 100644
index 299510c..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_perform.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:11 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_perform</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_perform</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_perform
-- Perform a file transfer</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURLcode
-curl_easy_perform(CURL *</b><i>handle</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-is called after the init and all the
-<i>curl_easy_setopt(3)</i> calls are made, and will perform
-the transfer as described in the options. It must be called
-with the same <i>handle</i> as input as the curl_easy_init
-call returned.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You can do any
-amount of calls to <i>curl_easy_perform(3)</i> while using
-the same handle. If you intend to transfer more than one
-file, you are even encouraged to do so. libcurl will then
-attempt to re-use the same connection for the following
-transfers, thus making the operations faster, less CPU
-intense and using less network resources. Just note that you
-will have to use <i>curl_easy_setopt(3)</i> between the
-invokes to set options for the following
-curl_easy_perform.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You must never
-call this function simultaneously from two places using the
-same handle. Let the function return first before invoking
-it another time. If you want parallel transfers, you must
-use several curl handles.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">0 means
-everything was ok, non-zero means an error occurred as
-<i><curl/curl.h></i> defines. If the
-CURLOPT_ERRORBUFFER was set with <i>curl_easy_setopt</i>
-there will be a readable error message in the error buffer
-when non-zero is returned.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_easy_init</b>(3),
-<b>curl_easy_setopt</b>(3),</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_perform.pdf b/src/other/curl/docs/libcurl/curl_easy_perform.pdf
deleted file mode 100644
index bb4f4bd..0000000
Binary files a/src/other/curl/docs/libcurl/curl_easy_perform.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_easy_recv.html b/src/other/curl/docs/libcurl/curl_easy_recv.html
deleted file mode 100644
index 1751bc7..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_recv.html
+++ /dev/null
@@ -1,135 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:21 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_recv</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_recv</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#EXAMPLE">EXAMPLE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_recv
-- receives raw data on an "easy" connection</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/easy.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURLcode
-curl_easy_recv( CURL *</b><i>curl</i><b>, void
-*</b><i>buffer</i><b>, size_t</b> <i>buflen</i><b>, size_t
-*</b><i>n</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-receives raw data from the established connection. You may
-use it together with <i>curl_easy_send(3)</i> to implement
-custom protocols using libcurl. This functionality can be
-particularly useful if you use proxies and/or SSL
-encryption: libcurl will take care of proxy negotiation and
-connection set-up.</p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>buffer</b>
-is a pointer to your buffer that will get the received data.
-<b>buflen</b> is the maximum amount of data you can get in
-that buffer. The variable <b>n</b> points to will receive
-the number of received bytes.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To establish
-the connection, set <b>CURLOPT_CONNECT_ONLY</b> option
-before calling <i>curl_easy_perform(3)</i>. Note that
-<i>curl_easy_recv(3)</i> does not work on connections that
-were created without this option.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You must ensure
-that the socket has data to read before calling
-<i>curl_easy_recv(3)</i>, otherwise the call will return
-<b>CURLE_AGAIN</b> - the socket is used in non-blocking mode
-internally. Use <i>curl_easy_getinfo(3)</i> with
-<b>CURLINFO_LASTSOCKET</b> to obtain the socket; use your
-operating system facilities like <i>select(2)</i> to check
-if it has any data you can read.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Added in
-7.18.2.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">On success,
-returns <b>CURLE_OK</b>, stores the received data into
-<b>buffer</b>, and the number of bytes it actually read into
-<b>*n</b>.</p>
-
-<p style="margin-left:11%; margin-top: 1em">On failure,
-returns the appropriate error code.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If there is no
-data to read, the function returns <b>CURLE_AGAIN</b>. Use
-your operating system facilities to wait until the data is
-ready, and retry.</p>
-
-<h2>EXAMPLE
-<a name="EXAMPLE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">See
-<b>sendrecv.c</b> in <b>docs/examples</b> directory for
-usage example.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_easy_setopt</b>(3),
-<b>curl_easy_perform</b>(3), <b>curl_easy_getinfo</b>(3),
-<b>curl_easy_send</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_recv.pdf b/src/other/curl/docs/libcurl/curl_easy_recv.pdf
deleted file mode 100644
index 6ce8ded..0000000
Binary files a/src/other/curl/docs/libcurl/curl_easy_recv.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_easy_reset.html b/src/other/curl/docs/libcurl/curl_easy_reset.html
deleted file mode 100644
index 927d268..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_reset.html
+++ /dev/null
@@ -1,93 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:19 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_reset</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_reset</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_reset
-- reset all options of a libcurl session handle</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>void
-curl_easy_reset(CURL *</b><i>handle</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Re-initializes
-all options previously set on a specified CURL handle to the
-default values. This puts back the handle to the same state
-as it was in when it was just created with
-<i>curl_easy_init(3)</i>.</p>
-
-<p style="margin-left:11%; margin-top: 1em">It does not
-change the following information kept in the handle: live
-connections, the Session ID cache, the DNS cache, the
-cookies and shares.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-was added in libcurl 7.12.1</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Nothing</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_easy_init</b>(3),<b>curl_easy_cleanup</b>(3),<b>curl_easy_setopt</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_reset.pdf b/src/other/curl/docs/libcurl/curl_easy_reset.pdf
deleted file mode 100644
index 0292fde..0000000
Binary files a/src/other/curl/docs/libcurl/curl_easy_reset.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_easy_send.html b/src/other/curl/docs/libcurl/curl_easy_send.html
deleted file mode 100644
index 7085c98..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_send.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:21 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_send</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_send</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#EXAMPLE">EXAMPLE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_send
-- sends raw data over an "easy" connection</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/easy.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURLcode
-curl_easy_send( CURL *</b><i>curl</i><b>, const void
-*</b><i>buffer</i><b>, size_t</b> <i>buflen</i><b>, size_t
-*</b><i>n</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-sends arbitrary data over the established connection. You
-may use it together with <i>curl_easy_recv(3)</i> to
-implement custom protocols using libcurl. This functionality
-can be particularly useful if you use proxies and/or SSL
-encryption: libcurl will take care of proxy negotiation and
-connection set-up.</p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>buffer</b>
-is a pointer to the data of length <b>buflen</b> that you
-want sent. The variable <b>n</b> points to will receive the
-number of sent bytes.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To establish
-the connection, set <b>CURLOPT_CONNECT_ONLY</b> option
-before calling <i>curl_easy_perform(3)</i>. Note that
-<i>curl_easy_send(3)</i> will not work on connections that
-were created without this option.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You must ensure
-that the socket is writable before calling
-<i>curl_easy_send(3)</i>, otherwise the call will return
-<b>CURLE_AGAIN</b> - the socket is used in non-blocking mode
-internally. Use <i>curl_easy_getinfo(3)</i> with
-<b>CURLINFO_LASTSOCKET</b> to obtain the socket; use your
-operating system facilities like <i>select(2)</i> to check
-if it can be written to.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Added in
-7.18.2.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">On success,
-returns <b>CURLE_OK</b> and stores the number of bytes
-actually sent into <b>*n</b>. Note that this may very well
-be less than the amount you wanted to send.</p>
-
-<p style="margin-left:11%; margin-top: 1em">On failure,
-returns the appropriate error code.</p>
-
-<h2>EXAMPLE
-<a name="EXAMPLE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">See
-<b>sendrecv.c</b> in <b>docs/examples</b> directory for
-usage example.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_easy_setopt</b>(3),
-<b>curl_easy_perform</b>(3), <b>curl_easy_getinfo</b>(3),
-<b>curl_easy_recv</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_send.pdf b/src/other/curl/docs/libcurl/curl_easy_send.pdf
deleted file mode 100644
index 3f52aab..0000000
Binary files a/src/other/curl/docs/libcurl/curl_easy_send.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_easy_setopt.html b/src/other/curl/docs/libcurl/curl_easy_setopt.html
deleted file mode 100644
index 80811f0..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_setopt.html
+++ /dev/null
@@ -1,3270 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:12 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_setopt</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_setopt</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#BEHAVIOR OPTIONS">BEHAVIOR OPTIONS</a><br>
-<a href="#CALLBACK OPTIONS">CALLBACK OPTIONS</a><br>
-<a href="#ERROR OPTIONS">ERROR OPTIONS</a><br>
-<a href="#NETWORK OPTIONS">NETWORK OPTIONS</a><br>
-<a href="#NAMES and PASSWORDS OPTIONS (Authentication)">NAMES and PASSWORDS OPTIONS (Authentication)</a><br>
-<a href="#HTTP OPTIONS">HTTP OPTIONS</a><br>
-<a href="#SMTP OPTIONS">SMTP OPTIONS</a><br>
-<a href="#TFTP OPTIONS">TFTP OPTIONS</a><br>
-<a href="#FTP OPTIONS">FTP OPTIONS</a><br>
-<a href="#RTSP OPTIONS">RTSP OPTIONS</a><br>
-<a href="#PROTOCOL OPTIONS">PROTOCOL OPTIONS</a><br>
-<a href="#CONNECTION OPTIONS">CONNECTION OPTIONS</a><br>
-<a href="#SSL and SECURITY OPTIONS">SSL and SECURITY OPTIONS</a><br>
-<a href="#SSH OPTIONS">SSH OPTIONS</a><br>
-<a href="#OTHER OPTIONS">OTHER OPTIONS</a><br>
-<a href="#TELNET OPTIONS">TELNET OPTIONS</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt
-− set options for a curl easy handle</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">#include
-<curl/curl.h></p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLcode
-curl_easy_setopt(CURL *handle, CURLoption option,
-parameter);</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt()
-is used to tell libcurl how to behave. By using the
-appropriate options to <i>curl_easy_setopt</i>, you can
-change libcurl’s behavior. All options are set with
-the <i>option</i> followed by a <i>parameter</i>. That
-parameter can be a <b>long</b>, a <b>function pointer</b>,
-an <b>object pointer</b> or a <b>curl_off_t</b>, depending
-on what the specific option expects. Read this manual
-carefully as bad input values may cause libcurl to behave
-badly! You can only set one option in each function call. A
-typical application uses many curl_easy_setopt() calls in
-the setup phase.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Options set
-with this function call are valid for all forthcoming
-transfers performed using this <i>handle</i>. The options
-are not in any way reset between transfers, so if you want
-subsequent transfers with different options, you must change
-them between the transfers. You can optionally reset all
-options back to internal default with
-<i>curl_easy_reset(3)</i>.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Strings passed
-to libcurl as ’char *’ arguments, are copied by
-the library; thus the string storage associated to the
-pointer argument may be overwritten after curl_easy_setopt()
-returns. Exceptions to this rule are described in the option
-details below.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Before version
-7.17.0, strings were not copied. Instead the user was forced
-keep them available until libcurl no longer needed them.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-<i>handle</i> is the return code from a
-<i>curl_easy_init(3)</i> or <i>curl_easy_duphandle(3)</i>
-call.</p>
-
-<h2>BEHAVIOR OPTIONS
-<a name="BEHAVIOR OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_VERBOSE</p>
-
-<p style="margin-left:22%;">Set the parameter to 1 to get
-the library to display a lot of verbose information about
-its operations. Very useful for libcurl and/or protocol
-debugging and understanding. The verbose information will be
-sent to stderr, or the stream set with
-<i>CURLOPT_STDERR</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">You hardly ever
-want this set in production use, you will almost always want
-this when you debug/report problems. Another neat option for
-debugging is the <i>CURLOPT_DEBUGFUNCTION</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_HEADER</p>
-
-<p style="margin-left:22%;">A parameter set to 1 tells the
-library to include the header in the body output. This is
-only relevant for protocols that actually have headers
-preceding the data (like HTTP).</p>
-
-<p style="margin-left:11%;">CURLOPT_NOPROGRESS</p>
-
-<p style="margin-left:22%;">A parameter set to 1 tells the
-library to shut off the built-in progress meter
-completely.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Future versions
-of libcurl are likely to not have any built-in progress
-meter at all.</p>
-
-<p style="margin-left:11%;">CURLOPT_NOSIGNAL</p>
-
-<p style="margin-left:22%;">Pass a long. If it is 1,
-libcurl will not use any functions that install signal
-handlers or any functions that cause signals to be sent to
-the process. This option is mainly here to allow
-multi-threaded unix applications to still set/use all
-timeout options etc, without risking getting signals. (Added
-in 7.10)</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is set and libcurl has been built with the standard name
-resolver, timeouts will not occur while the name resolve
-takes place. Consider building libcurl with c-ares support
-to enable asynchronous DNS lookups, which enables nice
-timeouts for name resolves without signals.</p>
-
-<h2>CALLBACK OPTIONS
-<a name="CALLBACK OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_WRITEFUNCTION</p>
-
-<p style="margin-left:22%;">Function pointer that should
-match the following prototype: <b>size_t function( void
-*ptr, size_t size, size_t nmemb, void *stream);</b> This
-function gets called by libcurl as soon as there is data
-received that needs to be saved. The size of the data
-pointed to by <i>ptr</i> is <i>size</i> multiplied with
-<i>nmemb</i>, it will not be zero terminated. Return the
-number of bytes actually taken care of. If that amount
-differs from the amount passed to your function, it’ll
-signal an error to the library. This will abort the transfer
-and return <i>CURLE_WRITE_ERROR</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">From 7.18.0,
-the function can return CURL_WRITEFUNC_PAUSE which then will
-cause writing to this connection to become paused. See
-<i>curl_easy_pause(3)</i> for further details.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This function
-may be called with zero bytes data if the transferred file
-is empty.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Set this option
-to NULL to get the internal default function. The internal
-default function will write the data to the FILE * given
-with <i>CURLOPT_WRITEDATA</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Set the
-<i>stream</i> argument with the <i>CURLOPT_WRITEDATA</i>
-option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The callback
-function will be passed as much data as possible in all
-invokes, but you cannot possibly make any assumptions. It
-may be one byte, it may be thousands. The maximum amount of
-data that can be passed to the write callback is defined in
-the curl.h header file: CURL_MAX_WRITE_SIZE.</p>
-
-<p style="margin-left:11%;">CURLOPT_WRITEDATA</p>
-
-<p style="margin-left:22%;">Data pointer to pass to the
-file write function. If you use the
-<i>CURLOPT_WRITEFUNCTION</i> option, this is the pointer
-you’ll get as input. If you don’t use a
-callback, you must pass a ’FILE *’ as libcurl
-will pass this to fwrite() when writing data.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The internal
-<i>CURLOPT_WRITEFUNCTION</i> will write the data to the FILE
-* given with this option, or to stdout if this option
-hasn’t been set.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you’re
-using libcurl as a win32 DLL, you <b>MUST</b> use the
-<i>CURLOPT_WRITEFUNCTION</i> if you set this option or you
-will experience crashes.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option is
-also known with the older name <i>CURLOPT_FILE</i>, the name
-<i>CURLOPT_WRITEDATA</i> was introduced in 7.9.7.</p>
-
-<p style="margin-left:11%;">CURLOPT_READFUNCTION</p>
-
-<p style="margin-left:22%;">Function pointer that should
-match the following prototype: <b>size_t function( void
-*ptr, size_t size, size_t nmemb, void *stream);</b> This
-function gets called by libcurl as soon as it needs to read
-data in order to send it to the peer. The data area pointed
-at by the pointer <i>ptr</i> may be filled with at most
-<i>size</i> multiplied with <i>nmemb</i> number of bytes.
-Your function must return the actual number of bytes that
-you stored in that memory area. Returning 0 will signal
-end-of-file to the library and cause it to stop the current
-transfer.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you stop the
-current transfer by returning 0 "pre-maturely"
-(i.e before the server expected it, like when you’ve
-said you will upload N bytes and you upload less than N
-bytes), you may experience that the server "hangs"
-waiting for the rest of the data that won’t come.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The read
-callback may return <i>CURL_READFUNC_ABORT</i> to stop the
-current operation immediately, resulting in a
-<i>CURLE_ABORTED_BY_CALLBACK</i> error code from the
-transfer (Added in 7.12.1)</p>
-
-<p style="margin-left:22%; margin-top: 1em">From 7.18.0,
-the function can return CURL_READFUNC_PAUSE which then will
-cause reading from this connection to become paused. See
-<i>curl_easy_pause(3)</i> for further details.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you set the
-callback pointer to NULL, or don’t set it at all, the
-default internal read function will be used. It is simply
-doing an fread() on the FILE * stream set with
-<i>CURLOPT_READDATA</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_READDATA</p>
-
-<p style="margin-left:22%;">Data pointer to pass to the
-file read function. If you use the
-<i>CURLOPT_READFUNCTION</i> option, this is the pointer
-you’ll get as input. If you don’t specify a read
-callback but instead rely on the default internal read
-function, this data must be a valid readable FILE *.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you’re
-using libcurl as a win32 DLL, you MUST use a
-<i>CURLOPT_READFUNCTION</i> if you set this option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option was
-also known by the older name <i>CURLOPT_INFILE</i>, the name
-<i>CURLOPT_READDATA</i> was introduced in 7.9.7.</p>
-
-<p style="margin-left:11%;">CURLOPT_IOCTLFUNCTION</p>
-
-<p style="margin-left:22%;">Function pointer that should
-match the <i>curl_ioctl_callback</i> prototype found in
-<i><curl/curl.h></i>. This function gets called by
-libcurl when something special I/O-related needs to be done
-that the library can’t do by itself. For now,
-rewinding the read data stream is the only action it can
-request. The rewinding of the read data stream may be
-necessary when doing a HTTP PUT or POST with a multi-pass
-authentication method. (Option added in 7.12.3).</p>
-
-<p style="margin-left:22%; margin-top: 1em">Use
-<i>CURLOPT_SEEKFUNCTION</i> instead to provide seeking!</p>
-
-<p style="margin-left:11%;">CURLOPT_IOCTLDATA</p>
-
-<p style="margin-left:22%;">Pass a pointer that will be
-untouched by libcurl and passed as the 3rd argument in the
-ioctl callback set with <i>CURLOPT_IOCTLFUNCTION</i>.
-(Option added in 7.12.3)</p>
-
-<p style="margin-left:11%;">CURLOPT_SEEKFUNCTION</p>
-
-<p style="margin-left:22%;">Function pointer that should
-match the following prototype: <i>int function(void
-*instream, curl_off_t offset, int origin);</i> This function
-gets called by libcurl to seek to a certain position in the
-input stream and can be used to fast forward a file in a
-resumed upload (instead of reading all uploaded bytes with
-the normal read function/callback). It is also called to
-rewind a stream when doing a HTTP PUT or POST with a
-multi-pass authentication method. The function shall work
-like "fseek" or "lseek" and accepted
-SEEK_SET, SEEK_CUR and SEEK_END as argument for origin,
-although (in 7.18.0) libcurl only passes SEEK_SET. The
-callback must return 0 (CURL_SEEKFUNC_OK) on success, 1
-(CURL_SEEKFUNC_FAIL) to cause the upload operation to fail
-or 2 (CURL_SEEKFUNC_CANTSEEK) to indicate that while the
-seek failed, libcurl is free to work around the problem if
-possible. The latter can sometimes be done by instead
-reading from the input or similar.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you forward
-the input arguments directly to "fseek" or
-"lseek", note that the data type for <i>offset</i>
-is not the same as defined for curl_off_t on many systems!
-(Option added in 7.18.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_SEEKDATA</p>
-
-<p style="margin-left:22%;">Data pointer to pass to the
-file read function. If you use the
-<i>CURLOPT_SEEKFUNCTION</i> option, this is the pointer
-you’ll get as input. If you don’t specify a seek
-callback, NULL is passed. (Option added in 7.18.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_SOCKOPTFUNCTION</p>
-
-<p style="margin-left:22%;">Function pointer that should
-match the <i>curl_sockopt_callback</i> prototype found in
-<i><curl/curl.h></i>. This function gets called by
-libcurl after the socket() call but before the connect()
-call. The callback’s <i>purpose</i> argument
-identifies the exact purpose for this particular socket, and
-currently only one value is supported:
-<i>CURLSOCKTYPE_IPCXN</i> for the primary connection
-(meaning the control connection in the FTP case). Future
-versions of libcurl may support more purposes. It passes the
-newly created socket descriptor so additional setsockopt()
-calls can be done at the user’s discretion. Return 0
-(zero) from the callback on success. Return 1 from the
-callback function to signal an unrecoverable error to the
-library and it will close the socket and return
-<i>CURLE_COULDNT_CONNECT</i>. (Option added in 7.15.6.)</p>
-
-<p style="margin-left:11%;">CURLOPT_SOCKOPTDATA</p>
-
-<p style="margin-left:22%;">Pass a pointer that will be
-untouched by libcurl and passed as the first argument in the
-sockopt callback set with <i>CURLOPT_SOCKOPTFUNCTION</i>.
-(Option added in 7.15.6.)</p>
-
-<p style="margin-left:11%;">CURLOPT_OPENSOCKETFUNCTION</p>
-
-<p style="margin-left:22%;">Function pointer that should
-match the <i>curl_opensocket_callback</i> prototype found in
-<i><curl/curl.h></i>. This function gets called by
-libcurl instead of the <i>socket(2)</i> call. The
-callback’s <i>purpose</i> argument identifies the
-exact purpose for this particular socket, and currently only
-one value is supported: <i>CURLSOCKTYPE_IPCXN</i> for the
-primary connection (meaning the control connection in the
-FTP case). Future versions of libcurl may support more
-purposes. It passes the resolved peer address as a
-<i>address</i> argument so the callback can modify the
-address or refuse to connect at all. The callback function
-should return the socket or <i>CURL_SOCKET_BAD</i> in case
-no connection should be established or any error detected.
-Any additional <i>setsockopt(2)</i> calls can be done on the
-socket at the user’s discretion.
-<i>CURL_SOCKET_BAD</i> return value from the callback
-function will signal an unrecoverable error to the library
-and it will return <i>CURLE_COULDNT_CONNECT</i>. This return
-code can be used for IP address blacklisting. The default
-behavior is: <br>
-return socket(addr->family, addr->socktype,
-addr->protocol); <br>
-(Option added in 7.17.1.)</p>
-
-<p style="margin-left:11%;">CURLOPT_OPENSOCKETDATA</p>
-
-<p style="margin-left:22%;">Pass a pointer that will be
-untouched by libcurl and passed as the first argument in the
-opensocket callback set with
-<i>CURLOPT_OPENSOCKETFUNCTION</i>. (Option added in
-7.17.1.)</p>
-
-<p style="margin-left:11%;">CURLOPT_PROGRESSFUNCTION</p>
-
-<p style="margin-left:22%;">Function pointer that should
-match the <i>curl_progress_callback</i> prototype found in
-<i><curl/curl.h></i>. This function gets called by
-libcurl instead of its internal equivalent with a frequent
-interval during operation (roughly once per second) no
-matter if data is being transfered or not. Unknown/unused
-argument values passed to the callback will be set to zero
-(like if you only download data, the upload size will remain
-0). Returning a non-zero value from this callback will cause
-libcurl to abort the transfer and return
-<i>CURLE_ABORTED_BY_CALLBACK</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you transfer
-data with the multi interface, this function will not be
-called during periods of idleness unless you call the
-appropriate libcurl function that performs transfers.</p>
-
-
-<p style="margin-left:22%; margin-top: 1em"><i>CURLOPT_NOPROGRESS</i>
-must be set to 0 to make this function actually get
-called.</p>
-
-<p style="margin-left:11%;">CURLOPT_PROGRESSDATA</p>
-
-<p style="margin-left:22%;">Pass a pointer that will be
-untouched by libcurl and passed as the first argument in the
-progress callback set with
-<i>CURLOPT_PROGRESSFUNCTION</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_HEADERFUNCTION</p>
-
-<p style="margin-left:22%;">Function pointer that should
-match the following prototype: <i>size_t function( void
-*ptr, size_t size, size_t nmemb, void *stream);</i>. This
-function gets called by libcurl as soon as it has received
-header data. The header callback will be called once for
-each header and only complete header lines are passed on to
-the callback. Parsing headers should be easy enough using
-this. The size of the data pointed to by <i>ptr</i> is
-<i>size</i> multiplied with <i>nmemb</i>. Do not assume that
-the header line is zero terminated! The pointer named
-<i>stream</i> is the one you set with the
-<i>CURLOPT_WRITEHEADER</i> option. The callback function
-must return the number of bytes actually taken care of. If
-that amount differs from the amount passed to your function,
-it’ll signal an error to the library. This will abort
-the transfer and return <i>CURL_WRITE_ERROR</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If this option
-is not set, or if it is set to NULL, but
-<i>CURLOPT_HEADERDATA</i> (<i>CURLOPT_WRITEHEADER</i>) is
-set to anything but NULL, the function used to accept
-response data will be used instead. That is, it will be the
-function specified with <i>CURLOPT_WRITEFUNCTION</i>, or if
-it is not specified or NULL - the default, stream-writing
-function.</p>
-
-<p style="margin-left:22%; margin-top: 1em">It’s
-important to note that the callback will be invoked for the
-headers of all responses received after initiating a request
-and not just the final response. This includes all responses
-which occur during authentication negotiation. If you need
-to operate on only the headers from the final response, you
-will need to collect headers in the callback yourself and
-use HTTP status lines, for example, to delimit response
-boundaries.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Since 7.14.1:
-When a server sends a chunked encoded transfer, it may
-contain a trailer. That trailer is identical to a HTTP
-header and if such a trailer is received it is passed to the
-application using this callback as well. There are several
-ways to detect it being a trailer and not an ordinary
-header: 1) it comes after the response-body. 2) it comes
-after the final header line (CR LF) 3) a Trailer: header
-among the response-headers mention what header to expect in
-the trailer.</p>
-
-<p style="margin-left:11%;">CURLOPT_WRITEHEADER</p>
-
-<p style="margin-left:22%;">(This option is also known as
-<b>CURLOPT_HEADERDATA</b>) Pass a pointer to be used to
-write the header part of the received data to. If you
-don’t use your own callback to take care of the
-writing, this must be a valid FILE *. See also the
-<i>CURLOPT_HEADERFUNCTION</i> option above on how to set a
-custom get-all-headers callback.</p>
-
-<p style="margin-left:11%;">CURLOPT_DEBUGFUNCTION</p>
-
-<p style="margin-left:22%;">Function pointer that should
-match the following prototype: <i>int curl_debug_callback
-(CURL *, curl_infotype, char *, size_t, void *);
-CURLOPT_DEBUGFUNCTION</i> replaces the standard debug
-function used when <i>CURLOPT_VERBOSE</i> is in effect. This
-callback receives debug information, as specified with the
-<b>curl_infotype</b> argument. This function must return 0.
-The data pointed to by the char * passed to this function
-WILL NOT be zero terminated, but will be exactly of the size
-as told by the size_t argument.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Available
-curl_infotype values: <br>
-CURLINFO_TEXT</p>
-
-<p style="margin-left:32%;">The data is informational
-text.</p>
-
-<p style="margin-left:22%;">CURLINFO_HEADER_IN</p>
-
-<p style="margin-left:32%;">The data is header (or
-header-like) data received from the peer.</p>
-
-<p style="margin-left:22%;">CURLINFO_HEADER_OUT</p>
-
-<p style="margin-left:32%;">The data is header (or
-header-like) data sent to the peer.</p>
-
-<p style="margin-left:22%;">CURLINFO_DATA_IN</p>
-
-<p style="margin-left:32%;">The data is protocol data
-received from the peer.</p>
-
-<p style="margin-left:22%;">CURLINFO_DATA_OUT</p>
-
-<p style="margin-left:32%;">The data is protocol data sent
-to the peer.</p>
-
-<p style="margin-left:11%;">CURLOPT_DEBUGDATA</p>
-
-<p style="margin-left:22%;">Pass a pointer to whatever you
-want passed in to your <i>CURLOPT_DEBUGFUNCTION</i> in the
-last void * argument. This pointer is not used by libcurl,
-it is only passed to the callback.</p>
-
-<p style="margin-left:11%;">CURLOPT_SSL_CTX_FUNCTION</p>
-
-<p style="margin-left:22%;">This option does only function
-for libcurl powered by OpenSSL. If libcurl was built against
-another SSL library, this functionality is absent.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Function
-pointer that should match the following prototype:
-<b>CURLcode sslctxfun(CURL *curl, void *sslctx, void
-*parm);</b> This function gets called by libcurl just before
-the initialization of an SSL connection after having
-processed all other SSL related options to give a last
-chance to an application to modify the behaviour of
-openssl’s ssl initialization. The <i>sslctx</i>
-parameter is actually a pointer to an openssl
-<i>SSL_CTX</i>. If an error is returned no attempt to
-establish a connection is made and the perform operation
-will return the error code from this callback function. Set
-the <i>parm</i> argument with the
-<i>CURLOPT_SSL_CTX_DATA</i> option. This option was
-introduced in 7.11.0.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This function
-will get called on all new connections made to a server,
-during the SSL negotiation. The SSL_CTX pointer will be a
-new one every time.</p>
-
-<p style="margin-left:22%; margin-top: 1em">To use this
-properly, a non-trivial amount of knowledge of the openssl
-libraries is necessary. For example, using this function
-allows you to use openssl callbacks to add additional
-validation code for certificates, and even to change the
-actual URI of an HTTPS request (example used in the lib509
-test case). See also the example section for a replacement
-of the key, certificate and trust file settings.</p>
-
-<p style="margin-left:11%;">CURLOPT_SSL_CTX_DATA</p>
-
-<p style="margin-left:22%;">Data pointer to pass to the ssl
-context callback set by the option
-<i>CURLOPT_SSL_CTX_FUNCTION</i>, this is the pointer
-you’ll get as third parameter, otherwise <b>NULL</b>.
-(Added in 7.11.0)</p>
-
-
-<p style="margin-left:11%;">CURLOPT_CONV_TO_NETWORK_FUNCTION
-<br>
-CURLOPT_CONV_FROM_NETWORK_FUNCTION <br>
-CURLOPT_CONV_FROM_UTF8_FUNCTION</p>
-
-<p style="margin-left:22%;">Function pointers that should
-match the following prototype: CURLcode function(char *ptr,
-size_t length);</p>
-
-<p style="margin-left:22%; margin-top: 1em">These three
-options apply to non-ASCII platforms only. They are
-available only if <b>CURL_DOES_CONVERSIONS</b> was defined
-when libcurl was built. When this is the case,
-<i>curl_version_info(3)</i> will return the
-CURL_VERSION_CONV feature bit set.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The data to be
-converted is in a buffer pointed to by the ptr parameter.
-The amount of data to convert is indicated by the length
-parameter. The converted data overlays the input data in the
-buffer pointed to by the ptr parameter. CURLE_OK should be
-returned upon successful conversion. A CURLcode return value
-defined by curl.h, such as CURLE_CONV_FAILED, should be
-returned if an error was encountered.</p>
-
-
-<p style="margin-left:22%; margin-top: 1em"><b>CURLOPT_CONV_TO_NETWORK_FUNCTION</b>
-and <b>CURLOPT_CONV_FROM_NETWORK_FUNCTION</b> convert
-between the host encoding and the network encoding. They are
-used when commands or ASCII data are sent/received over the
-network.</p>
-
-
-<p style="margin-left:22%; margin-top: 1em"><b>CURLOPT_CONV_FROM_UTF8_FUNCTION</b>
-is called to convert from UTF8 into the host encoding. It is
-required only for SSL processing.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you set a
-callback pointer to NULL, or don’t set it at all, the
-built-in libcurl iconv functions will be used. If HAVE_ICONV
-was not defined when libcurl was built, and no callback has
-been established, conversion will return the CURLE_CONV_REQD
-error code.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If HAVE_ICONV
-is defined, CURL_ICONV_CODESET_OF_HOST must also be defined.
-For example:</p>
-
-<p style="margin-left:22%; margin-top: 1em">#define
-CURL_ICONV_CODESET_OF_HOST "IBM-1047"</p>
-
-<p style="margin-left:22%; margin-top: 1em">The iconv code
-in libcurl will default the network and UTF8 codeset names
-as follows:</p>
-
-<p style="margin-left:22%; margin-top: 1em">#define
-CURL_ICONV_CODESET_OF_NETWORK "ISO8859-1"</p>
-
-<p style="margin-left:22%; margin-top: 1em">#define
-CURL_ICONV_CODESET_FOR_UTF8 "UTF-8"</p>
-
-<p style="margin-left:22%; margin-top: 1em">You will need
-to override these definitions if they are different on your
-system.</p>
-
-<p style="margin-left:11%;">CURLOPT_INTERLEAVEFUNCTION</p>
-
-<p style="margin-left:22%;">Function pointer that should
-match the following prototype: <i>size_t function( void
-*ptr, size_t size, size_t nmemb, void *stream)</i>. This
-function gets called by libcurl as soon as it has received
-interleaved RTP data. This function gets called for each $
-block and therefore contains exactly one upper-layer
-protocol unit (e.g. one RTP packet). Curl writes the
-interleaved header as well as the included data for each
-call. The first byte is always an ASCII dollar sign. The
-dollar sign is followed by a one byte channel identifier and
-then a 2 byte integer length in network byte order. See
-<i>RFC 2326 Section 10.12</i> for more information on how
-RTP interleaving behaves. If unset or set to NULL, curl will
-use the default write function.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Interleaved RTP
-poses some challeneges for the client application. Since the
-stream data is sharing the RTSP control connection, it is
-critical to service the RTP in a timely fashion. If the RTP
-data is not handled quickly, subsequent response processing
-may become unreasonably delayed and the connection may
-close. The application may use <i>CURL_RTSPREQ_RECEIVE</i>
-to service RTP data when no requests are desired. If the
-application makes a request, (e.g.
-<i>CURL_RTSPREQ_PAUSE</i>) then the response handler will
-process any pending RTP data before marking the request as
-finished. (Added in 7.20.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_INTERLEAVEDATA</p>
-
-<p style="margin-left:22%;">This is the stream that will be
-passed to <i>CURLOPT_INTERLEAVEFUNCTION</i> when interleaved
-RTP data is received. (Added in 7.20.0)</p>
-
-<h2>ERROR OPTIONS
-<a name="ERROR OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_ERRORBUFFER</p>
-
-<p style="margin-left:22%;">Pass a char * to a buffer that
-the libcurl may store human readable error messages in. This
-may be more helpful than just the return code from
-<i>curl_easy_perform</i>. The buffer must be at least
-CURL_ERROR_SIZE big. Although this argument is a ’char
-*’, it does not describe an input string. Therefore
-the (probably undefined) contents of the buffer is NOT
-copied by the library. You should keep the associated
-storage available until libcurl no longer needs it. Failing
-to do so will cause very odd behavior or even crashes.
-libcurl will need it until you call
-<i>curl_easy_cleanup(3)</i> or you set the same option again
-to use a different pointer.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Use
-<i>CURLOPT_VERBOSE</i> and <i>CURLOPT_DEBUGFUNCTION</i> to
-better debug/trace why errors happen.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If the library
-does not return an error, the buffer may not have been
-touched. Do not rely on the contents in those cases.</p>
-
-<p style="margin-left:11%;">CURLOPT_STDERR</p>
-
-<p style="margin-left:22%;">Pass a FILE * as parameter.
-Tell libcurl to use this stream instead of stderr when
-showing the progress meter and displaying
-<i>CURLOPT_VERBOSE</i> data.</p>
-
-<p style="margin-left:11%;">CURLOPT_FAILONERROR</p>
-
-<p style="margin-left:22%;">A parameter set to 1 tells the
-library to fail silently if the HTTP code returned is equal
-to or larger than 400. The default action would be to return
-the page normally, ignoring that code.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This method is
-not fail-safe and there are occasions where non-successful
-response codes will slip through, especially when
-authentication is involved (response codes 401 and 407).</p>
-
-<p style="margin-left:22%; margin-top: 1em">You might get
-some amounts of headers transferred before this situation is
-detected, like when a "100-continue" is received
-as a response to a POST/PUT and a 401 or 407 is received
-immediately afterwards.</p>
-
-<h2>NETWORK OPTIONS
-<a name="NETWORK OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_URL</p>
-
-<p style="margin-left:22%;">The actual URL to deal with.
-The parameter should be a char * to a zero terminated
-string.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If the given
-URL lacks the protocol part ("http://" or
-"ftp://" etc), it will attempt to guess which
-protocol to use based on the given host name. If the given
-protocol of the set URL is not supported, libcurl will
-return on error (<i>CURLE_UNSUPPORTED_PROTOCOL</i>) when you
-call <i>curl_easy_perform(3)</i> or
-<i>curl_multi_perform(3)</i>. Use
-<i>curl_version_info(3)</i> for detailed info on which
-protocols are supported.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The string
-given to CURLOPT_URL must be url-encoded and follow RFC 2396
-(http://curl.haxx.se/rfc/rfc2396.txt).</p>
-
-<p style="margin-left:22%; margin-top: 1em">Starting with
-version 7.20.0, the fragment part of the URI will not be
-send as part of the path, which was the case previously.</p>
-
-
-<p style="margin-left:22%; margin-top: 1em"><i>CURLOPT_URL</i>
-is the only option that <b>must</b> be set before
-<i>curl_easy_perform(3)</i> is called.</p>
-
-
-<p style="margin-left:22%; margin-top: 1em"><i>CURLOPT_PROTOCOLS</i>
-can be used to limit what protocols libcurl will use for
-this transfer, independent of what libcurl has been compiled
-to support. That may be useful if you accept the URL from an
-external source and want to limit the accessibility.</p>
-
-<p style="margin-left:11%;">CURLOPT_PROTOCOLS</p>
-
-<p style="margin-left:22%;">Pass a long that holds a
-bitmask of CURLPROTO_* defines. If used, this bitmask limits
-what protocols libcurl may use in the transfer. This allows
-you to have a libcurl built to support a wide range of
-protocols but still limit specific transfers to only be
-allowed to use a subset of them. By default libcurl will
-accept all protocols it supports. See also
-<i>CURLOPT_REDIR_PROTOCOLS</i>. (Added in 7.19.4)</p>
-
-<p style="margin-left:11%;">CURLOPT_REDIR_PROTOCOLS</p>
-
-<p style="margin-left:22%;">Pass a long that holds a
-bitmask of CURLPROTO_* defines. If used, this bitmask limits
-what protocols libcurl may use in a transfer that it follows
-to in a redirect when <i>CURLOPT_FOLLOWLOCATION</i> is
-enabled. This allows you to limit specific transfers to only
-be allowed to use a subset of protocols in redirections. By
-default libcurl will allow all protocols except for FILE and
-SCP. This is a difference compared to pre-7.19.4 versions
-which unconditionally would follow to all protocols
-supported. (Added in 7.19.4)</p>
-
-<p style="margin-left:11%;">CURLOPT_PROXY</p>
-
-<p style="margin-left:22%;">Set HTTP proxy to use. The
-parameter should be a char * to a zero terminated string
-holding the host name or dotted IP address. To specify port
-number in this string, append :[port] to the end of the host
-name. The proxy string may be prefixed with [protocol]://
-since any such prefix will be ignored. The proxy’s
-port number may optionally be specified with the separate
-option. If not specified, libcurl will default to using port
-1080 for proxies. <i>CURLOPT_PROXYPORT</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When you tell
-the library to use an HTTP proxy, libcurl will transparently
-convert operations to HTTP even if you specify an FTP URL
-etc. This may have an impact on what other features of the
-library you can use, such as <i>CURLOPT_QUOTE</i> and
-similar FTP specifics that don’t work unless you
-tunnel through the HTTP proxy. Such tunneling is activated
-with <i>CURLOPT_HTTPPROXYTUNNEL</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">libcurl
-respects the environment variables <b>http_proxy</b>,
-<b>ftp_proxy</b>, <b>all_proxy</b> etc, if any of those are
-set. The <i>CURLOPT_PROXY</i> option does however override
-any possibly set environment variables.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Setting the
-proxy string to "" (an empty string) will
-explicitly disable the use of a proxy, even if there is an
-environment variable set for it.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Since 7.14.1,
-the proxy host string given in environment variables can be
-specified the exact same way as the proxy can be set with
-<i>CURLOPT_PROXY</i>, include protocol prefix (http://) and
-embedded user + password.</p>
-
-<p style="margin-left:11%;">CURLOPT_PROXYPORT</p>
-
-<p style="margin-left:22%;">Pass a long with this option to
-set the proxy port to connect to unless it is specified in
-the proxy string <i>CURLOPT_PROXY</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_PROXYTYPE</p>
-
-<p style="margin-left:22%;">Pass a long with this option to
-set type of the proxy. Available options for this are
-<i>CURLPROXY_HTTP</i>, <i>CURLPROXY_HTTP_1_0</i> (added in
-7.19.4), <i>CURLPROXY_SOCKS4</i> (added in 7.15.2),
-<i>CURLPROXY_SOCKS5</i>, <i>CURLPROXY_SOCKS4A</i> (added in
-7.18.0) and <i>CURLPROXY_SOCKS5_HOSTNAME</i> (added in
-7.18.0). The HTTP type is default. (Added in 7.10)</p>
-
-<p style="margin-left:11%;">CURLOPT_NOPROXY</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string. The should be a comma- separated list of
-hosts which do not use a proxy, if one is specified. The
-only wildcard is a single * character, which matches all
-hosts, and effectively disables the proxy. Each name in this
-list is matched as either a domain which contains the
-hostname, or the hostname itself. For example, local.com
-would match local.com, local.com:80, and www.local.com, but
-not www.notlocal.com. (Added in 7.19.4)</p>
-
-<p style="margin-left:11%;">CURLOPT_HTTPPROXYTUNNEL</p>
-
-<p style="margin-left:22%;">Set the parameter to 1 to make
-the library tunnel all operations through a given HTTP
-proxy. There is a big difference between using a proxy and
-to tunnel through it. If you don’t know what this
-means, you probably don’t want this tunneling
-option.</p>
-
-
-<p style="margin-left:11%;">CURLOPT_SOCKS5_GSSAPI_SERVICE</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter to a
-string holding the name of the service. The default service
-name for a SOCKS5 server is rcmd/server-fqdn. This option
-allows you to change it. (Added in 7.19.4)</p>
-
-<p style="margin-left:11%;">CURLOPT_SOCKS5_GSSAPI_NEC</p>
-
-<p style="margin-left:22%;">Pass a long set to 1 to enable
-or 0 to disable. As part of the gssapi negotiation a
-protection mode is negotiated. The rfc1961 says in section
-4.3/4.4 it should be protected, but the NEC reference
-implementation does not. If enabled, this option allows the
-unprotected exchange of the protection mode negotiation.
-(Added in 7.19.4).</p>
-
-<p style="margin-left:11%;">CURLOPT_INTERFACE</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter.
-This sets the interface name to use as outgoing network
-interface. The name can be an interface name, an IP address,
-or a host name.</p>
-
-<p style="margin-left:11%;">CURLOPT_LOCALPORT</p>
-
-<p style="margin-left:22%;">Pass a long. This sets the
-local port number of the socket used for connection. This
-can be used in combination with <i>CURLOPT_INTERFACE</i> and
-you are recommended to use <i>CURLOPT_LOCALPORTRANGE</i> as
-well when this is set. Valid port numbers are 1 - 65535.
-(Added in 7.15.2)</p>
-
-<p style="margin-left:11%;">CURLOPT_LOCALPORTRANGE</p>
-
-<p style="margin-left:22%;">Pass a long. This is the number
-of attempts libcurl should make to find a working local port
-number. It starts with the given <i>CURLOPT_LOCALPORT</i>
-and adds one to the number for each retry. Setting this to 1
-or below will make libcurl do only one try for the exact
-port number. Port numbers by nature are scarce resources
-that will be busy at times so setting this value to
-something too low might cause unnecessary connection setup
-failures. (Added in 7.15.2)</p>
-
-<p style="margin-left:11%;">CURLOPT_DNS_CACHE_TIMEOUT</p>
-
-<p style="margin-left:22%;">Pass a long, this sets the
-timeout in seconds. Name resolves will be kept in memory for
-this number of seconds. Set to zero to completely disable
-caching, or set to -1 to make the cached entries remain
-forever. By default, libcurl caches this info for 60
-seconds.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The name
-resolve functions of various libc implementations
-don’t re-read name server information unless
-explicitly told so (for example, by calling
-<i>res_init(3)</i>). This may cause libcurl to keep using
-the older server even if DHCP has updated the server info,
-and this may look like a DNS cache issue to the casual
-libcurl-app user.</p>
-
-
-<p style="margin-left:11%;">CURLOPT_DNS_USE_GLOBAL_CACHE</p>
-
-<p style="margin-left:22%;">Pass a long. If the value is 1,
-it tells curl to use a global DNS cache that will survive
-between easy handle creations and deletions. This is not
-thread-safe and this will use a global variable.</p>
-
-
-<p style="margin-left:22%; margin-top: 1em"><b>WARNING:</b>
-this option is considered obsolete. Stop using it. Switch
-over to using the share interface instead! See
-<i>CURLOPT_SHARE</i> and <i>curl_share_init(3)</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_BUFFERSIZE</p>
-
-<p style="margin-left:22%;">Pass a long specifying your
-preferred size (in bytes) for the receive buffer in libcurl.
-The main point of this would be that the write callback gets
-called more often and with smaller chunks. This is just
-treated as a request, not an order. You cannot be guaranteed
-to actually get the given size. (Added in 7.10)</p>
-
-<p style="margin-left:22%; margin-top: 1em">This size is by
-default set as big as possible (CURL_MAX_WRITE_SIZE), so it
-only makes sense to use this option if you want it
-smaller.</p>
-
-<p style="margin-left:11%;">CURLOPT_PORT</p>
-
-<p style="margin-left:22%;">Pass a long specifying what
-remote port number to connect to, instead of the one
-specified in the URL or the default port for the used
-protocol.</p>
-
-<p style="margin-left:11%;">CURLOPT_TCP_NODELAY</p>
-
-<p style="margin-left:22%;">Pass a long specifying whether
-the TCP_NODELAY option should be set or cleared (1 = set, 0
-= clear). The option is cleared by default. This will have
-no effect after the connection has been established.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Setting this
-option will disable TCP’s Nagle algorithm. The purpose
-of this algorithm is to try to minimize the number of small
-packets on the network (where "small packets"
-means TCP segments less than the Maximum Segment Size (MSS)
-for the network).</p>
-
-<p style="margin-left:22%; margin-top: 1em">Maximizing the
-amount of data sent per TCP segment is good because it
-amortizes the overhead of the send. However, in some cases
-(most notably telnet or rlogin) small segments may need to
-be sent without delay. This is less efficient than sending
-larger amounts of data at a time, and can contribute to
-congestion on the network if overdone.</p>
-
-<p style="margin-left:11%;">CURLOPT_ADDRESS_SCOPE</p>
-
-<p style="margin-left:22%;">Pass a long specifying the
-scope_id value to use when connecting to IPv6 link-local or
-site-local addresses. (Added in 7.19.0)</p>
-
-<h2>NAMES and PASSWORDS OPTIONS (Authentication)
-<a name="NAMES and PASSWORDS OPTIONS (Authentication)"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_NETRC</p>
-
-<p style="margin-left:22%;">This parameter controls the
-preference of libcurl between using user names and passwords
-from your <i>~/.netrc</i> file, relative to user names and
-passwords in the URL supplied with <i>CURLOPT_URL</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">libcurl uses a
-user name (and supplied or prompted password) supplied with
-<i>CURLOPT_USERPWD</i> in preference to any of the options
-controlled by this parameter.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Pass a long,
-set to one of the values described below. <br>
-CURL_NETRC_OPTIONAL</p>
-
-<p style="margin-left:32%;">The use of your <i>~/.netrc</i>
-file is optional, and information in the URL is to be
-preferred. The file will be scanned for the host and user
-name (to find the password only) or for the host only, to
-find the first user name and password after that
-<i>machine</i>, which ever information is not specified in
-the URL.</p>
-
-<p style="margin-left:32%; margin-top: 1em">Undefined
-values of the option will have this effect.</p>
-
-<p style="margin-left:22%;">CURL_NETRC_IGNORED</p>
-
-<p style="margin-left:32%;">The library will ignore the
-file and use only the information in the URL.</p>
-
-<p style="margin-left:32%; margin-top: 1em">This is the
-default.</p>
-
-<p style="margin-left:22%;">CURL_NETRC_REQUIRED</p>
-
-<p style="margin-left:32%;">This value tells the library
-that use of the file is required, to ignore the information
-in the URL, and to search the file for the host only.</p>
-
-<p style="margin-left:11%;">Only machine name, user name
-and password are taken into account (init macros and similar
-things aren’t supported).</p>
-
-<p style="margin-left:11%; margin-top: 1em">libcurl does
-not verify that the file has the correct properties set (as
-the standard Unix ftp client does). It should only be
-readable by user. <br>
-CURLOPT_NETRC_FILE</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter,
-pointing to a zero terminated string containing the full
-path name to the file you want libcurl to use as .netrc
-file. If this option is omitted, and <i>CURLOPT_NETRC</i> is
-set, libcurl will attempt to find a .netrc file in the
-current user’s home directory. (Added in 7.10.9)</p>
-
-<p style="margin-left:11%;">CURLOPT_USERPWD</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter,
-which should be [user name]:[password] to use for the
-connection. Use <i>CURLOPT_HTTPAUTH</i> to decide the
-authentication method.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When using
-NTLM, you can set the domain by prepending it to the user
-name and separating the domain and name with a forward (/)
-or backward slash (\). Like this:
-"domain/user:password" or
-"domain\user:password". Some HTTP servers (on
-Windows) support this style even for Basic
-authentication.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When using HTTP
-and <i>CURLOPT_FOLLOWLOCATION</i>, libcurl might perform
-several requests to possibly different hosts. libcurl will
-only send this user and password information to hosts using
-the initial host name (unless
-<i>CURLOPT_UNRESTRICTED_AUTH</i> is set), so if libcurl
-follows locations to other hosts it will not send the user
-and password to those. This is enforced to prevent
-accidental information leakage.</p>
-
-<p style="margin-left:11%;">CURLOPT_PROXYUSERPWD</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter,
-which should be [user name]:[password] to use for the
-connection to the HTTP proxy. Use <i>CURLOPT_PROXYAUTH</i>
-to decide the authentication method.</p>
-
-<p style="margin-left:11%;">CURLOPT_USERNAME</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter,
-which should be pointing to the zero terminated user name to
-use for the transfer.</p>
-
-
-<p style="margin-left:22%; margin-top: 1em"><b>CURLOPT_USERNAME</b>
-sets the user name to be used in protocol authentication.
-You should not use this option together with the (older)
-CURLOPT_USERPWD option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">In order to
-specify the password to be used in conjunction with the user
-name use the <i>CURLOPT_PASSWORD</i> option. (Added in
-7.19.1)</p>
-
-<p style="margin-left:11%;">CURLOPT_PASSWORD</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter,
-which should be pointing to the zero terminated password to
-use for the transfer.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The
-CURLOPT_PASSWORD option should be used in conjunction with
-the <i>CURLOPT_USERNAME</i> option. (Added in 7.19.1)</p>
-
-<p style="margin-left:11%;">CURLOPT_PROXYUSERNAME</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter,
-which should be pointing to the zero terminated user name to
-use for the transfer while connecting to Proxy.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The
-CURLOPT_PROXYUSERNAME option should be used in same way as
-the <i>CURLOPT_PROXYUSERPWD</i> is used. In comparison to
-<i>CURLOPT_PROXYUSERPWD</i> the CURLOPT_PROXYUSERNAME allows
-the username to contain a colon, like in the following
-example: "sip:user at example.com". The
-CURLOPT_PROXYUSERNAME option is an alternative way to set
-the user name while connecting to Proxy. There is no meaning
-to use it together with the <i>CURLOPT_PROXYUSERPWD</i>
-option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">In order to
-specify the password to be used in conjunction with the user
-name use the <i>CURLOPT_PROXYPASSWORD</i> option. (Added in
-7.19.1)</p>
-
-<p style="margin-left:11%;">CURLOPT_PROXYPASSWORD</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter,
-which should be pointing to the zero terminated password to
-use for the transfer while connecting to Proxy.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The
-CURLOPT_PROXYPASSWORD option should be used in conjunction
-with the <i>CURLOPT_PROXYUSERNAME</i> option. (Added in
-7.19.1)</p>
-
-<p style="margin-left:11%;">CURLOPT_HTTPAUTH</p>
-
-<p style="margin-left:22%;">Pass a long as parameter, which
-is set to a bitmask, to tell libcurl which authentication
-method(s) you want it to use. The available bits are listed
-below. If more than one bit is set, libcurl will first query
-the site to see which authentication methods it supports and
-then pick the best one you allow it to use. For some
-methods, this will induce an extra network round-trip. Set
-the actual name and password with the <i>CURLOPT_USERPWD</i>
-option or with the <i>CURLOPT_USERNAME</i> and the
-<i>CURLOPT_USERPASSWORD</i> options. (Added in 7.10.6) <br>
-CURLAUTH_BASIC</p>
-
-<p style="margin-left:32%;">HTTP Basic authentication. This
-is the default choice, and the only method that is in
-wide-spread use and supported virtually everywhere. This
-sends the user name and password over the network in plain
-text, easily captured by others.</p>
-
-<p style="margin-left:22%;">CURLAUTH_DIGEST</p>
-
-<p style="margin-left:32%;">HTTP Digest authentication.
-Digest authentication is defined in RFC2617 and is a more
-secure way to do authentication over public networks than
-the regular old-fashioned Basic method.</p>
-
-<p style="margin-left:22%;">CURLAUTH_DIGEST_IE</p>
-
-<p style="margin-left:32%;">HTTP Digest authentication with
-an IE flavor. Digest authentication is defined in RFC2617
-and is a more secure way to do authentication over public
-networks than the regular old-fashioned Basic method. The IE
-flavor is simply that libcurl will use a special
-"quirk" that IE is known to have used before
-version 7 and that some servers require the client to use.
-(This define was added in 7.19.3)</p>
-
-<p style="margin-left:22%;">CURLAUTH_GSSNEGOTIATE</p>
-
-<p style="margin-left:32%;">HTTP GSS-Negotiate
-authentication. The GSS-Negotiate (also known as plain
-"Negotiate") method was designed by Microsoft and
-is used in their web applications. It is primarily meant as
-a support for Kerberos5 authentication but may also be used
-along with other authentication methods. For more
-information see IETF draft
-draft-brezak-spnego-http-04.txt.</p>
-
-<p style="margin-left:32%; margin-top: 1em">You need to
-build libcurl with a suitable GSS-API library for this to
-work.</p>
-
-<p style="margin-left:22%;">CURLAUTH_NTLM</p>
-
-<p style="margin-left:32%;">HTTP NTLM authentication. A
-proprietary protocol invented and used by Microsoft. It uses
-a challenge-response and hash concept similar to Digest, to
-prevent the password from being eavesdropped.</p>
-
-<p style="margin-left:32%; margin-top: 1em">You need to
-build libcurl with OpenSSL support for this option to work,
-or build libcurl on Windows.</p>
-
-<p style="margin-left:22%;">CURLAUTH_ANY</p>
-
-<p style="margin-left:32%;">This is a convenience macro
-that sets all bits and thus makes libcurl pick any it finds
-suitable. libcurl will automatically select the one it finds
-most secure.</p>
-
-<p style="margin-left:22%;">CURLAUTH_ANYSAFE</p>
-
-<p style="margin-left:32%;">This is a convenience macro
-that sets all bits except Basic and thus makes libcurl pick
-any it finds suitable. libcurl will automatically select the
-one it finds most secure.</p>
-
-<p style="margin-left:11%;">CURLOPT_PROXYAUTH</p>
-
-<p style="margin-left:22%;">Pass a long as parameter, which
-is set to a bitmask, to tell libcurl which authentication
-method(s) you want it to use for your proxy authentication.
-If more than one bit is set, libcurl will first query the
-site to see what authentication methods it supports and then
-pick the best one you allow it to use. For some methods,
-this will induce an extra network round-trip. Set the actual
-name and password with the <i>CURLOPT_PROXYUSERPWD</i>
-option. The bitmask can be constructed by or’ing
-together the bits listed above for the
-<i>CURLOPT_HTTPAUTH</i> option. As of this writing, only
-Basic, Digest and NTLM work. (Added in 7.10.7)</p>
-
-<h2>HTTP OPTIONS
-<a name="HTTP OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_AUTOREFERER</p>
-
-<p style="margin-left:22%;">Pass a parameter set to 1 to
-enable this. When enabled, libcurl will automatically set
-the Referer: field in requests where it follows a Location:
-redirect.</p>
-
-<p style="margin-left:11%;">CURLOPT_ENCODING</p>
-
-<p style="margin-left:22%;">Sets the contents of the
-Accept-Encoding: header sent in an HTTP request, and enables
-decoding of a response when a Content-Encoding: header is
-received. Three encodings are supported: <i>identity</i>,
-which does nothing, <i>deflate</i> which requests the server
-to compress its response using the zlib algorithm, and
-<i>gzip</i> which requests the gzip algorithm. If a
-zero-length string is set, then an Accept-Encoding: header
-containing all supported encodings is sent.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This is a
-request, not an order; the server may or may not do it. This
-option must be set (to any non-NULL value) or else any
-unsolicited encoding done by the server is ignored. See the
-special file lib/README.encoding for details.</p>
-
-<p style="margin-left:11%;">CURLOPT_FOLLOWLOCATION</p>
-
-<p style="margin-left:22%;">A parameter set to 1 tells the
-library to follow any Location: header that the server sends
-as part of an HTTP header.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This means that
-the library will re-send the same request on the new
-location and follow new Location: headers all the way until
-no more such headers are returned. <i>CURLOPT_MAXREDIRS</i>
-can be used to limit the number of redirects libcurl will
-follow.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Since 7.19.4,
-libcurl can limit what protocols it will automatically
-follow. The accepted protocols are set with
-<i>CURLOPT_REDIR_PROTOCOLS</i> and it excludes the FILE
-protocol by default.</p>
-
-<p style="margin-left:11%;">CURLOPT_UNRESTRICTED_AUTH</p>
-
-<p style="margin-left:22%;">A parameter set to 1 tells the
-library it can continue to send authentication
-(user+password) when following locations, even when hostname
-changed. This option is meaningful only when setting
-<i>CURLOPT_FOLLOWLOCATION</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_MAXREDIRS</p>
-
-<p style="margin-left:22%;">Pass a long. The set number
-will be the redirection limit. If that many redirections
-have been followed, the next redirect will cause an error
-(<i>CURLE_TOO_MANY_REDIRECTS</i>). This option only makes
-sense if the <i>CURLOPT_FOLLOWLOCATION</i> is used at the
-same time. Added in 7.15.1: Setting the limit to 0 will make
-libcurl refuse any redirect. Set it to -1 for an infinite
-number of redirects (which is the default)</p>
-
-<p style="margin-left:11%;">CURLOPT_POSTREDIR</p>
-
-<p style="margin-left:22%;">Pass a bitmask to control how
-libcurl acts on redirects after POSTs that get a 301 or 302
-response back. A parameter with bit 0 set (value
-<b>CURL_REDIR_POST_301</b>) tells the library to respect RFC
-2616/10.3.2 and not convert POST requests into GET requests
-when following a 301 redirection. Setting bit 1 (value
-CURL_REDIR_POST_302) makes libcurl maintain the request
-method after a 302 redirect. CURL_REDIR_POST_ALL is a
-convenience define that sets both bits.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The non-RFC
-behaviour is ubiquitous in web browsers, so the library does
-the conversion by default to maintain consistency. However,
-a server may require a POST to remain a POST after such a
-redirection. This option is meaningful only when setting
-<i>CURLOPT_FOLLOWLOCATION</i>. (Added in 7.17.1) (This
-option was known as CURLOPT_POST301 up to 7.19.0 as it only
-supported the 301 way before then)</p>
-
-<p style="margin-left:11%;">CURLOPT_PUT</p>
-
-<p style="margin-left:22%;">A parameter set to 1 tells the
-library to use HTTP PUT to transfer data. The data should be
-set with <i>CURLOPT_READDATA</i> and
-<i>CURLOPT_INFILESIZE</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option is
-deprecated and starting with version 7.12.1 you should
-instead use <i>CURLOPT_UPLOAD</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_POST</p>
-
-<p style="margin-left:22%;">A parameter set to 1 tells the
-library to do a regular HTTP post. This will also make the
-library use a "Content-Type:
-application/x-www-form-urlencoded" header. (This is by
-far the most commonly used POST method).</p>
-
-<p style="margin-left:22%; margin-top: 1em">Use one of
-<i>CURLOPT_POSTFIELDS</i> or <i>CURLOPT_COPYPOSTFIELDS</i>
-options to specify what data to post and
-<i>CURLOPT_POSTFIELDSIZE</i> or
-<i>CURLOPT_POSTFIELDSIZE_LARGE</i> to set the data size.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Optionally, you
-can provide data to POST using the
-<i>CURLOPT_READFUNCTION</i> and <i>CURLOPT_READDATA</i>
-options but then you must make sure to not set
-<i>CURLOPT_POSTFIELDS</i> to anything but NULL. When
-providing data with a callback, you must transmit it using
-chunked transfer-encoding or you must set the size of the
-data with the <i>CURLOPT_POSTFIELDSIZE</i> or
-<i>CURLOPT_POSTFIELDSIZE_LARGE</i> option. To enable chunked
-encoding, you simply pass in the appropriate
-Transfer-Encoding header, see the post-callback.c
-example.</p>
-
-<p style="margin-left:22%; margin-top: 1em">You can
-override the default POST Content-Type: header by setting
-your own with <i>CURLOPT_HTTPHEADER</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Using POST with
-HTTP 1.1 implies the use of a "Expect:
-100-continue" header. You can disable this header with
-<i>CURLOPT_HTTPHEADER</i> as usual.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you use POST
-to a HTTP 1.1 server, you can send data without knowing the
-size before starting the POST if you use chunked encoding.
-You enable this by adding a header like
-"Transfer-Encoding: chunked" with
-<i>CURLOPT_HTTPHEADER</i>. With HTTP 1.0 or without chunked
-transfer, you must specify the size in the request.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When setting
-<i>CURLOPT_POST</i> to 1, it will automatically set
-<i>CURLOPT_NOBODY</i> to 0 (since 7.14.1).</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you issue a
-POST request and then want to make a HEAD or GET using the
-same re-used handle, you must explicitly set the new request
-type using <i>CURLOPT_NOBODY</i> or <i>CURLOPT_HTTPGET</i>
-or similar.</p>
-
-<p style="margin-left:11%;">CURLOPT_POSTFIELDS</p>
-
-<p style="margin-left:22%;">Pass a void * as parameter,
-which should be the full data to post in an HTTP POST
-operation. You must make sure that the data is formatted the
-way you want the server to receive it. libcurl will not
-convert or encode it for you. Most web servers will assume
-this data to be url-encoded.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The pointed
-data are NOT copied by the library: as a consequence, they
-must be preserved by the calling application until the
-transfer finishes.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This POST is a
-normal application/x-www-form-urlencoded kind (and libcurl
-will set that Content-Type by default when this option is
-used), which is the most commonly used one by HTML forms.
-See also the <i>CURLOPT_POST</i>. Using
-<i>CURLOPT_POSTFIELDS</i> implies <i>CURLOPT_POST</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you want to
-do a zero-byte POST, you need to set
-<i>CURLOPT_POSTFIELDSIZE</i> explicitly to zero, as simply
-setting <i>CURLOPT_POSTFIELDS</i> to NULL or ""
-just effectively disables the sending of the specified
-string. libcurl will instead assume that you’ll send
-the POST data using the read callback!</p>
-
-<p style="margin-left:22%; margin-top: 1em">Using POST with
-HTTP 1.1 implies the use of a "Expect:
-100-continue" header. You can disable this header with
-<i>CURLOPT_HTTPHEADER</i> as usual.</p>
-
-<p style="margin-left:22%; margin-top: 1em">To make
-multipart/formdata posts (aka RFC2388-posts), check out the
-<i>CURLOPT_HTTPPOST</i> option.</p>
-
-<p style="margin-left:11%;">CURLOPT_POSTFIELDSIZE</p>
-
-<p style="margin-left:22%;">If you want to post data to the
-server without letting libcurl do a strlen() to measure the
-data size, this option must be used. When this option is
-used you can post fully binary data, which otherwise is
-likely to fail. If this size is set to -1, the library will
-use strlen() to get the size.</p>
-
-
-<p style="margin-left:11%;">CURLOPT_POSTFIELDSIZE_LARGE</p>
-
-<p style="margin-left:22%;">Pass a curl_off_t as parameter.
-Use this to set the size of the <i>CURLOPT_POSTFIELDS</i>
-data to prevent libcurl from doing strlen() on the data to
-figure out the size. This is the large file version of the
-<i>CURLOPT_POSTFIELDSIZE</i> option. (Added in 7.11.1)</p>
-
-<p style="margin-left:11%;">CURLOPT_COPYPOSTFIELDS</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter,
-which should be the full data to post in an HTTP POST
-operation. It behaves as the <i>CURLOPT_POSTFIELDS</i>
-option, but the original data are copied by the library,
-allowing the application to overwrite the original data
-after setting this option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Because data
-are copied, care must be taken when using this option in
-conjunction with <i>CURLOPT_POSTFIELDSIZE</i> or
-<i>CURLOPT_POSTFIELDSIZE_LARGE</i>: If the size has not been
-set prior to <i>CURLOPT_COPYPOSTFIELDS</i>, the data are
-assumed to be a NUL-terminated string; else the stored size
-informs the library about the data byte count to copy. In
-any case, the size must not be changed after
-<i>CURLOPT_COPYPOSTFIELDS</i>, unless another
-<i>CURLOPT_POSTFIELDS</i> or <i>CURLOPT_COPYPOSTFIELDS</i>
-option is issued. (Added in 7.17.1)</p>
-
-<p style="margin-left:11%;">CURLOPT_HTTPPOST</p>
-
-<p style="margin-left:22%;">Tells libcurl you want a
-multipart/formdata HTTP POST to be made and you instruct
-what data to pass on to the server. Pass a pointer to a
-linked list of curl_httppost structs as parameter. The
-easiest way to create such a list, is to use
-<i>curl_formadd(3)</i> as documented. The data in this list
-must remain intact until you close this curl handle again
-with <i>curl_easy_cleanup(3)</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Using POST with
-HTTP 1.1 implies the use of a "Expect:
-100-continue" header. You can disable this header with
-<i>CURLOPT_HTTPHEADER</i> as usual.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When setting
-<i>CURLOPT_HTTPPOST</i>, it will automatically set
-<i>CURLOPT_NOBODY</i> to 0 (since 7.14.1).</p>
-
-<p style="margin-left:11%;">CURLOPT_REFERER</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. It will be used to set the
-Referer: header in the http request sent to the remote
-server. This can be used to fool servers or scripts. You can
-also set any custom header with
-<i>CURLOPT_HTTPHEADER</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_USERAGENT</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. It will be used to set the
-User-Agent: header in the http request sent to the remote
-server. This can be used to fool servers or scripts. You can
-also set any custom header with
-<i>CURLOPT_HTTPHEADER</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_HTTPHEADER</p>
-
-<p style="margin-left:22%;">Pass a pointer to a linked list
-of HTTP headers to pass to the server in your HTTP request.
-The linked list should be a fully valid list of <b>struct
-curl_slist</b> structs properly filled in. Use
-<i>curl_slist_append(3)</i> to create the list and
-<i>curl_slist_free_all(3)</i> to clean up an entire list. If
-you add a header that is otherwise generated and used by
-libcurl internally, your added one will be used instead. If
-you add a header with no content as in ’Accept:’
-(no data on the right side of the colon), the internally
-used header will get disabled. Thus, using this option you
-can add new headers, replace internal headers and remove
-internal headers. To add a header with no content, make the
-content be two quotes: "". The headers included in
-the linked list must not be CRLF-terminated, because curl
-adds CRLF after each header item. Failure to comply with
-this will result in strange bugs because the server will
-most likely ignore part of the headers you specified.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The first line
-in a request (containing the method, usually a GET or POST)
-is not a header and cannot be replaced using this option.
-Only the lines following the request-line are headers.
-Adding this method line in this list of headers will only
-cause your request to send an invalid header.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Pass a NULL to
-this to reset back to no custom headers.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The most
-commonly replaced headers have "shortcuts" in the
-options <i>CURLOPT_COOKIE</i>, <i>CURLOPT_USERAGENT</i> and
-<i>CURLOPT_REFERER</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_HTTP200ALIASES</p>
-
-<p style="margin-left:22%;">Pass a pointer to a linked list
-of aliases to be treated as valid HTTP 200 responses. Some
-servers respond with a custom header response line. For
-example, IceCast servers respond with "ICY 200
-OK". By including this string in your list of aliases,
-the response will be treated as a valid HTTP header line
-such as "HTTP/1.0 200 OK". (Added in 7.10.3)</p>
-
-<p style="margin-left:22%; margin-top: 1em">The linked list
-should be a fully valid list of struct curl_slist structs,
-and be properly filled in. Use <i>curl_slist_append(3)</i>
-to create the list and <i>curl_slist_free_all(3)</i> to
-clean up an entire list.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The alias
-itself is not parsed for any version strings. Before libcurl
-7.16.3, Libcurl used the value set by option
-<i>CURLOPT_HTTP_VERSION</i>, but starting with 7.16.3 the
-protocol is assumed to match HTTP 1.0 when an alias
-matched.</p>
-
-<p style="margin-left:11%;">CURLOPT_COOKIE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. It will be used to set a
-cookie in the http request. The format of the string should
-be NAME=CONTENTS, where NAME is the cookie name and CONTENTS
-is what the cookie should contain.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you need to
-set multiple cookies, you need to set them all using a
-single option and thus you need to concatenate them all in
-one single string. Set multiple cookies in one string like
-this: "name1=content1; name2=content2;" etc.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-sets the cookie header explictly in the outgoing request(s).
-If multiple requests are done due to authentication,
-followed redirections or similar, they will all get this
-cookie passed on.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Using this
-option multiple times will only make the latest string
-override the previous ones.</p>
-
-<p style="margin-left:11%;">CURLOPT_COOKIEFILE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. It should contain the name
-of your file holding cookie data to read. The cookie data
-may be in Netscape / Mozilla cookie data format or just
-regular HTTP-style headers dumped to a file.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Given an empty
-or non-existing file or by passing the empty string
-(""), this option will enable cookies for this
-curl handle, making it understand and parse received cookies
-and then use matching cookies in future requests.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you use this
-option multiple times, you just add more files to read.
-Subsequent files will add more cookies.</p>
-
-<p style="margin-left:11%;">CURLOPT_COOKIEJAR</p>
-
-<p style="margin-left:22%;">Pass a file name as char *,
-zero terminated. This will make libcurl write all internally
-known cookies to the specified file when
-<i>curl_easy_cleanup(3)</i> is called. If no cookies are
-known, no file will be created. Specify "-" to
-instead have the cookies written to stdout. Using this
-option also enables cookies for this session, so if you for
-example follow a location it will make matching cookies get
-sent accordingly.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If the cookie
-jar file can’t be created or written to (when the
-<i>curl_easy_cleanup(3)</i> is called), libcurl will not and
-cannot report an error for this. Using
-<i>CURLOPT_VERBOSE</i> or <i>CURLOPT_DEBUGFUNCTION</i> will
-get a warning to display, but that is the only visible
-feedback you get about this possibly lethal situation.</p>
-
-<p style="margin-left:11%;">CURLOPT_COOKIESESSION</p>
-
-<p style="margin-left:22%;">Pass a long set to 1 to mark
-this as a new cookie "session". It will force
-libcurl to ignore all cookies it is about to load that are
-"session cookies" from the previous session. By
-default, libcurl always stores and loads all cookies,
-independent if they are session cookies or not. Session
-cookies are cookies without expiry date and they are meant
-to be alive and existing for this "session"
-only.</p>
-
-<p style="margin-left:11%;">CURLOPT_COOKIELIST</p>
-
-<p style="margin-left:22%;">Pass a char * to a cookie
-string. Cookie can be either in Netscape / Mozilla format or
-just regular HTTP-style header (Set-Cookie: ...) format. If
-cURL cookie engine was not enabled it will enable its cookie
-engine. Passing a magic string "ALL" will erase
-all cookies known by cURL. (Added in 7.14.1) Passing the
-special string "SESS" will only erase all session
-cookies known by cURL. (Added in 7.15.4) Passing the special
-string "FLUSH" will write all cookies known by
-cURL to the file specified by <i>CURLOPT_COOKIEJAR</i>.
-(Added in 7.17.1)</p>
-
-<p style="margin-left:11%;">CURLOPT_HTTPGET</p>
-
-<p style="margin-left:22%;">Pass a long. If the long is 1,
-this forces the HTTP request to get back to GET. Usable if a
-POST, HEAD, PUT, or a custom request has been used
-previously using the same curl handle.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When setting
-<i>CURLOPT_HTTPGET</i> to 1, it will automatically set
-<i>CURLOPT_NOBODY</i> to 0 (since 7.14.1).</p>
-
-<p style="margin-left:11%;">CURLOPT_HTTP_VERSION</p>
-
-<p style="margin-left:22%;">Pass a long, set to one of the
-values described below. They force libcurl to use the
-specific HTTP versions. This is not sensible to do unless
-you have a good reason. <br>
-CURL_HTTP_VERSION_NONE</p>
-
-<p style="margin-left:32%;">We don’t care about what
-version the library uses. libcurl will use whatever it
-thinks fit.</p>
-
-<p style="margin-left:22%;">CURL_HTTP_VERSION_1_0</p>
-
-<p style="margin-left:32%;">Enforce HTTP 1.0 requests.</p>
-
-<p style="margin-left:22%;">CURL_HTTP_VERSION_1_1</p>
-
-<p style="margin-left:32%;">Enforce HTTP 1.1 requests.</p>
-
-
-<p style="margin-left:11%;">CURLOPT_IGNORE_CONTENT_LENGTH</p>
-
-<p style="margin-left:22%;">Ignore the Content-Length
-header. This is useful for Apache 1.x (and similar servers)
-which will report incorrect content length for files over 2
-gigabytes. If this option is used, curl will not be able to
-accurately report progress, and will simply stop the
-download when the server ends the connection. (added in
-7.14.1)</p>
-
-
-<p style="margin-left:11%;">CURLOPT_HTTP_CONTENT_DECODING</p>
-
-<p style="margin-left:22%;">Pass a long to tell libcurl how
-to act on content decoding. If set to zero, content decoding
-will be disabled. If set to 1 it is enabled. Libcurl has no
-default content decoding but requires you to use
-<i>CURLOPT_ENCODING</i> for that. (added in 7.16.2)</p>
-
-
-<p style="margin-left:11%;">CURLOPT_HTTP_TRANSFER_DECODING</p>
-
-<p style="margin-left:22%;">Pass a long to tell libcurl how
-to act on transfer decoding. If set to zero, transfer
-decoding will be disabled, if set to 1 it is enabled
-(default). libcurl does chunked transfer decoding by default
-unless this option is set to zero. (added in 7.16.2)</p>
-
-<h2>SMTP OPTIONS
-<a name="SMTP OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_MAIL_FROM</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. It will be used to specify
-the sender address in a mail when sending an SMTP mail with
-libcurl.</p>
-
-<p style="margin-left:22%; margin-top: 1em">(Added in
-7.20.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_MAIL_RCPT</p>
-
-<p style="margin-left:22%;">Pass a pointer to a linked list
-of recipients to pass to the server in your SMTP mail
-request. The linked list should be a fully valid list of
-<b>struct curl_slist</b> structs properly filled in. Use
-<i>curl_slist_append(3)</i> to create the list and
-<i>curl_slist_free_all(3)</i> to clean up an entire
-list.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Each recipient
-in SMTP lingo is specified with angle brackets (<>),
-but should you not use an angle bracket as first letter
-libcurl will assume you provide a single email address only
-and enclose that with angle brackets for you.</p>
-
-<p style="margin-left:22%; margin-top: 1em">(Added in
-7.20.0)</p>
-
-<h2>TFTP OPTIONS
-<a name="TFTP OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_TFTP_BLKSIZE</p>
-
-<p style="margin-left:22%;">Specify block size to use for
-TFTP data transmission. Valid range as per RFC 2348 is
-8-65464 bytes. The default of 512 bytes will be used if this
-option is not specified. The specified block size will only
-be used pending support by the remote server. If the server
-does not return an option acknowledgement or returns an
-option acknowledgement with no blksize, the default of 512
-bytes will be used. (added in 7.19.4)</p>
-
-<h2>FTP OPTIONS
-<a name="FTP OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_FTPPORT</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. It will be used to get the
-IP address to use for the FTP PORT instruction. The PORT
-instruction tells the remote server to connect to our
-specified IP address. The string may be a plain IP address,
-a host name, a network interface name (under Unix) or just a
-’-’ symbol to let the library use your
-system’s default IP address. Default FTP operations
-are passive, and thus won’t use PORT.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The address can
-be followed by a ’:’ to specify a port,
-optionally followed by a ’-’ to specify a port
-range. If the port specified is 0, the operating system will
-pick a free port. If a range is provided and all ports in
-the range are not available, libcurl will report
-CURLE_FTP_PORT_FAILED for the handle. Invalid port/range
-settings are ignored. IPv6 addresses followed by a port or
-portrange have to be in brackets. IPv6 addresses without
-port/range specifier can be in brackets. (added in
-7.19.5)</p>
-
-<p style="margin-left:22%; margin-top: 1em">Examples with
-specified ports:</p>
-
-<p style="margin-left:22%; margin-top: 1em">eth0:0 <br>
-192.168.1.2:32000-33000 <br>
-curl.se:32123 <br>
-[::1]:1234-4567</p>
-
-<p style="margin-left:22%; margin-top: 1em">You disable
-PORT again and go back to using the passive version by
-setting this option to NULL.</p>
-
-<p style="margin-left:11%;">CURLOPT_QUOTE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a linked list
-of FTP or SFTP commands to pass to the server prior to your
-FTP request. This will be done before any other commands are
-issued (even before the CWD command for FTP). The linked
-list should be a fully valid list of ’struct
-curl_slist’ structs properly filled in with text
-strings. Use <i>curl_slist_append(3)</i> to append strings
-(commands) to the list, and clear the entire list afterwards
-with <i>curl_slist_free_all(3)</i>. Disable this operation
-again by setting a NULL to this option. The set of valid FTP
-commands depends on the server (see RFC959 for a list of
-mandatory commands). The valid SFTP commands are: chgrp,
-chmod, chown, ln, mkdir, pwd, rename, rm, rmdir, symlink
-(see <b>curl</b>(1)) (SFTP support added in 7.16.3)</p>
-
-<p style="margin-left:11%;">CURLOPT_POSTQUOTE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a linked list
-of FTP or SFTP commands to pass to the server after your FTP
-transfer request. The commands will only be run if no error
-occurred. The linked list should be a fully valid list of
-struct curl_slist structs properly filled in as described
-for <i>CURLOPT_QUOTE</i>. Disable this operation again by
-setting a NULL to this option.</p>
-
-<p style="margin-left:11%;">CURLOPT_PREQUOTE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a linked list
-of FTP commands to pass to the server after the transfer
-type is set. The linked list should be a fully valid list of
-struct curl_slist structs properly filled in as described
-for <i>CURLOPT_QUOTE</i>. Disable this operation again by
-setting a NULL to this option. Before version 7.15.6, if you
-also set <i>CURLOPT_NOBODY</i> to 1, this option
-didn’t work.</p>
-
-<p style="margin-left:11%;">CURLOPT_DIRLISTONLY</p>
-
-<p style="margin-left:22%;">A parameter set to 1 tells the
-library to just list the names of files in a directory,
-instead of doing a full directory listing that would include
-file sizes, dates etc. This works for FTP and SFTP URLs.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This causes an
-FTP NLST command to be sent on an FTP server. Beware that
-some FTP servers list only files in their response to NLST;
-they might not include subdirectories and symbolic
-links.</p>
-
-<p style="margin-left:22%; margin-top: 1em">(This option
-was known as CURLOPT_FTPLISTONLY up to 7.16.4)</p>
-
-<p style="margin-left:11%;">CURLOPT_APPEND</p>
-
-<p style="margin-left:22%;">A parameter set to 1 tells the
-library to append to the remote file instead of overwrite
-it. This is only useful when uploading to an FTP site.</p>
-
-<p style="margin-left:22%; margin-top: 1em">(This option
-was known as CURLOPT_FTPAPPEND up to 7.16.4)</p>
-
-<p style="margin-left:11%;">CURLOPT_FTP_USE_EPRT</p>
-
-<p style="margin-left:22%;">Pass a long. If the value is 1,
-it tells curl to use the EPRT (and LPRT) command when doing
-active FTP downloads (which is enabled by
-<i>CURLOPT_FTPPORT</i>). Using EPRT means that it will first
-attempt to use EPRT and then LPRT before using PORT, but if
-you pass zero to this option, it will not try using EPRT or
-LPRT, only plain PORT. (Added in 7.10.5)</p>
-
-<p style="margin-left:22%; margin-top: 1em">If the server
-is an IPv6 host, this option will have no effect as of
-7.12.3.</p>
-
-<p style="margin-left:11%;">CURLOPT_FTP_USE_EPSV</p>
-
-<p style="margin-left:22%;">Pass a long. If the value is 1,
-it tells curl to use the EPSV command when doing passive FTP
-downloads (which it always does by default). Using EPSV
-means that it will first attempt to use EPSV before using
-PASV, but if you pass zero to this option, it will not try
-using EPSV, only plain PASV.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If the server
-is an IPv6 host, this option will have no effect as of
-7.12.3.</p>
-
-<p style="margin-left:11%;">CURLOPT_FTP_USE_PRET</p>
-
-<p style="margin-left:22%;">Pass a long. If the value is 1,
-it tells curl to send a PRET command before PASV (and EPSV).
-Certain FTP servers, mainly drftpd, require this
-non-standard command for directory listings as well as up
-and downloads in PASV mode. Has no effect when using the
-active FTP transfers mode. (Added in 7.20.0)</p>
-
-
-<p style="margin-left:11%;">CURLOPT_FTP_CREATE_MISSING_DIRS</p>
-
-<p style="margin-left:22%;">Pass a long. If the value is 1,
-curl will attempt to create any remote directory that it
-fails to CWD into. CWD is the command that changes working
-directory. (Added in 7.10.7)</p>
-
-<p style="margin-left:22%; margin-top: 1em">This setting
-also applies to SFTP-connections. curl will attempt to
-create the remote directory if it can’t obtain a
-handle to the target-location. The creation will fail if a
-file of the same name as the directory to create already
-exists or lack of permissions prevents creation. (Added in
-7.16.3)</p>
-
-<p style="margin-left:22%; margin-top: 1em">Starting with
-7.19.4, you can also set this value to 2, which will make
-libcurl retry the CWD command again if the subsequent MKD
-command fails. This is especially useful if you’re
-doing many simultanoes connections against the same server
-and they all have this option enabled, as then CWD may first
-fail but then another connection does MKD before this
-connection and thus MKD fails but trying CWD works! 7.19.4
-also introduced the <i>CURLFTP_CREATE_DIR</i> and
-<i>CURLFTP_CREATE_DIR_RETRY</i> enum names for these
-arguments.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Before version
-7.19.4, libcurl will simply ignore arguments set to 2 and
-act as if 1 was selected.</p>
-
-
-<p style="margin-left:11%;">CURLOPT_FTP_RESPONSE_TIMEOUT</p>
-
-<p style="margin-left:22%;">Pass a long. Causes curl to set
-a timeout period (in seconds) on the amount of time that the
-server is allowed to take in order to generate a response
-message for a command before the session is considered hung.
-While curl is waiting for a response, this value overrides
-<i>CURLOPT_TIMEOUT</i>. It is recommended that if used in
-conjunction with <i>CURLOPT_TIMEOUT</i>, you set
-<i>CURLOPT_FTP_RESPONSE_TIMEOUT</i> to a value smaller than
-<i>CURLOPT_TIMEOUT</i>. (Added in 7.10.8)</p>
-
-
-<p style="margin-left:11%;">CURLOPT_FTP_ALTERNATIVE_TO_USER</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter,
-pointing to a string which will be used to authenticate if
-the usual FTP "USER user" and "PASS
-password" negotiation fails. This is currently only
-known to be required when connecting to Tumbleweed’s
-Secure Transport FTPS server using client certificates for
-authentication. (Added in 7.15.5)</p>
-
-<p style="margin-left:11%;">CURLOPT_FTP_SKIP_PASV_IP</p>
-
-<p style="margin-left:22%;">Pass a long. If set to 1, it
-instructs libcurl to not use the IP address the server
-suggests in its 227-response to libcurl’s PASV command
-when libcurl connects the data connection. Instead libcurl
-will re-use the same IP address it already uses for the
-control connection. But it will use the port number from the
-227-response. (Added in 7.14.2)</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option has
-no effect if PORT, EPRT or EPSV is used instead of PASV.</p>
-
-<p style="margin-left:11%;">CURLOPT_USE_SSL</p>
-
-<p style="margin-left:22%;">Pass a long using one of the
-values from below, to make libcurl use your desired level of
-SSL for the FTP transfer. (Added in 7.11.0)</p>
-
-<p style="margin-left:22%; margin-top: 1em">(This option
-was known as CURLOPT_FTP_SSL up to 7.16.4, and the constants
-were known as CURLFTPSSL_*) <br>
-CURLUSESSL_NONE</p>
-
-<p style="margin-left:32%;">Don’t attempt to use
-SSL.</p>
-
-<p style="margin-left:22%;">CURLUSESSL_TRY</p>
-
-<p style="margin-left:32%;">Try using SSL, proceed as
-normal otherwise.</p>
-
-<p style="margin-left:22%;">CURLUSESSL_CONTROL</p>
-
-<p style="margin-left:32%;">Require SSL for the control
-connection or fail with <i>CURLE_USE_SSL_FAILED</i>.</p>
-
-<p style="margin-left:22%;">CURLUSESSL_ALL</p>
-
-<p style="margin-left:32%;">Require SSL for all
-communication or fail with <i>CURLE_USE_SSL_FAILED</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_FTPSSLAUTH</p>
-
-<p style="margin-left:22%;">Pass a long using one of the
-values from below, to alter how libcurl issues "AUTH
-TLS" or "AUTH SSL" when FTP over SSL is
-activated (see <i>CURLOPT_USE_SSL</i>). (Added in 7.12.2)
-<br>
-CURLFTPAUTH_DEFAULT</p>
-
-<p style="margin-left:32%;">Allow libcurl to decide.</p>
-
-<p style="margin-left:22%;">CURLFTPAUTH_SSL</p>
-
-<p style="margin-left:32%;">Try "AUTH SSL" first,
-and only if that fails try "AUTH TLS".</p>
-
-<p style="margin-left:22%;">CURLFTPAUTH_TLS</p>
-
-<p style="margin-left:32%;">Try "AUTH TLS" first,
-and only if that fails try "AUTH SSL".</p>
-
-<p style="margin-left:11%;">CURLOPT_FTP_SSL_CCC</p>
-
-<p style="margin-left:22%;">If enabled, this option makes
-libcurl use CCC (Clear Command Channel). It shuts down the
-SSL/TLS layer after authenticating. The rest of the control
-channel communication will be unencrypted. This allows NAT
-routers to follow the FTP transaction. Pass a long using one
-of the values below. (Added in 7.16.1) <br>
-CURLFTPSSL_CCC_NONE</p>
-
-<p style="margin-left:32%;">Don’t attempt to use
-CCC.</p>
-
-<p style="margin-left:22%;">CURLFTPSSL_CCC_PASSIVE</p>
-
-<p style="margin-left:32%;">Do not initiate the shutdown,
-but wait for the server to do it. Do not send a reply.</p>
-
-<p style="margin-left:22%;">CURLFTPSSL_CCC_ACTIVE</p>
-
-<p style="margin-left:32%;">Initiate the shutdown and wait
-for a reply.</p>
-
-<p style="margin-left:11%;">CURLOPT_FTP_ACCOUNT</p>
-
-<p style="margin-left:22%;">Pass a pointer to a
-zero-terminated string (or NULL to disable). When an FTP
-server asks for "account data" after user name and
-password has been provided, this data is sent off using the
-ACCT command. (Added in 7.13.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_FTP_FILEMETHOD</p>
-
-<p style="margin-left:22%;">Pass a long that should have
-one of the following values. This option controls what
-method libcurl should use to reach a file on a FTP(S)
-server. The argument should be one of the following
-alternatives: <br>
-CURLFTPMETHOD_MULTICWD</p>
-
-<p style="margin-left:32%;">libcurl does a single CWD
-operation for each path part in the given URL. For deep
-hierarchies this means many commands. This is how RFC1738
-says it should be done. This is the default but the slowest
-behavior.</p>
-
-<p style="margin-left:22%;">CURLFTPMETHOD_NOCWD</p>
-
-<p style="margin-left:32%;">libcurl does no CWD at all.
-libcurl will do SIZE, RETR, STOR etc and give a full path to
-the server for all these commands. This is the fastest
-behavior.</p>
-
-<p style="margin-left:22%;">CURLFTPMETHOD_SINGLECWD</p>
-
-<p style="margin-left:32%;">libcurl does one CWD with the
-full target directory and then operates on the file
-"normally" (like in the multicwd case). This is
-somewhat more standards compliant than ’nocwd’
-but without the full penalty of ’multicwd’.</p>
-
-<p style="margin-left:11%;">(Added in 7.15.1)</p>
-
-<h2>RTSP OPTIONS
-<a name="RTSP OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_RTSP_REQUEST</p>
-
-<p style="margin-left:22%;">Tell libcurl what kind of RTSP
-request to make. Pass one of the following RTSP enum values.
-Unless noted otherwise, commands require the Session ID to
-be initialized. (Added in 7.20.0) <br>
-CURL_RTSPREQ_OPTIONS</p>
-
-<p style="margin-left:32%;">Used to retrieve the available
-methods of the server. The application is responsbile for
-parsing and obeying the response. <b>(The session ID is not
-needed for this method.)</b> (Added in 7.20.0)</p>
-
-<p style="margin-left:22%;">CURL_RTSPREQ_DESCRIBE</p>
-
-<p style="margin-left:32%;">Used to get the low level
-description of a stream. The application should note what
-formats it understands in the <i>’Accept:’</i>
-header. Unless set manually, libcurl will automatically fill
-in <i>’Accept: application/sdp’</i>.
-Time-condition headers will be added to Describe requests if
-the <i>CURLOPT_TIMECONDITION</i> option is active. <b>(The
-session ID is not needed for this method)</b> (Added in
-7.20.0)</p>
-
-<p style="margin-left:22%;">CURL_RTSPREQ_ANNOUNCE</p>
-
-<p style="margin-left:32%;">When sent by a client, this
-method changes the description of the session. For example,
-if a client is using the server to record a meeting, the
-client can use Announce to inform the server of all the
-meta-information about the session. ANNOUNCE acts like an
-HTTP PUT or POST just like <i>CURL_RTSPREQ_SET_PARAMETER</i>
-(Added in 7.20.0)</p>
-
-<p style="margin-left:22%;">CURL_RTSPREQ_SETUP</p>
-
-<p style="margin-left:32%;">Setup is used to initialize the
-transport layer for the session. The application must set
-the desired Transport options for a session by using the
-<i>CURLOPT_RTSP_TRANSPORT</i> option prior to calling setup.
-If no session ID is currently set with
-<i>CURLOPT_RTSP_SESSION_ID</i>, libcurl will extract and use
-the session ID in the response to this request. <b>(The
-session ID is not needed for this method).</b> (Added in
-7.20.0)</p>
-
-<p style="margin-left:22%;">CURL_RTSPREQ_PLAY</p>
-
-<p style="margin-left:32%;">Send a Play command to the
-server. Use the <i>CURLOPT_RANGE</i> option to modify the
-playback time (e.g. ’npt=10-15’). (Added in
-7.20.0)</p>
-
-<p style="margin-left:22%;">CURL_RTSPREQ_PAUSE</p>
-
-<p style="margin-left:32%;">Send a Pause command to the
-server. Use the <i>CURLOPT_RANGE</i> option with a single
-value to indicate when the stream should be halted. (e.g.
-npt=’25’) (Added in 7.20.0)</p>
-
-<p style="margin-left:22%;">CURL_RTSPREQ_TEARDOWN</p>
-
-<p style="margin-left:32%;">This command terminates an RTSP
-session. Simply closing a connection does not terminate the
-RTSP session since it is valid to control an RTSP session
-over different connections. (Added in 7.20.0)</p>
-
-<p style="margin-left:22%;">CURL_RTSPREQ_GET_PARAMETER</p>
-
-<p style="margin-left:32%;">Retrieve a parameter from the
-server. By default, libcurl will automatically include a
-<i>Content-Type: text/parameters</i> header on all non-empty
-requests unless a custom one is set. GET_PARAMETER acts just
-like an HTTP PUT or POST (see
-<i>CURL_RTSPREQ_SET_PARAMETER</i>). Applications wishing to
-send a heartbeat message (e.g. in the presence of a
-server-specified timeout) should send use an empty
-GET_PARAMETER request. (Added in 7.20.0)</p>
-
-<p style="margin-left:22%;">CURL_RTSPREQ_SET_PARAMETER</p>
-
-<p style="margin-left:32%;">Set a parameter on the server.
-By default, libcurl will automatically include a
-<i>Content-Type: text/parameters</i> header unless a custom
-one is set. The interaction with SET_PARAMTER is much like
-an HTTP PUT or POST. An application may either use
-<i>CURLOPT_UPLOAD</i> with <i>CURLOPT_READDATA</i> like an
-HTTP PUT, or it may use <i>CURLOPT_POSTFIELDS</i> like an
-HTTP POST. No chunked transfers are allowed, so the
-application must set the <i>CURLOPT_INFILESIZE</i> in the
-former and <i>CURLOPT_POSTFIELDSIZE</i> in the latter. Also,
-there is no use of multi-part POSTs within RTSP. (Added in
-7.20.0)</p>
-
-<p style="margin-left:22%;">CURL_RTSPREQ_RECORD</p>
-
-<p style="margin-left:32%;">Used to tell the server to
-record a session. Use the <i>CURLOPT_RANGE</i> option to
-modify the record time. (Added in 7.20.0)</p>
-
-<p style="margin-left:22%;">CURL_RTSPREQ_RECEIVE</p>
-
-<p style="margin-left:32%;">This is a special request
-because it does not send any data to the server. The
-application may call this function in order to receive
-interleaved RTP data. It will return after processing one
-read buffer of data in order to give the application a
-chance to run. (Added in 7.20.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_RTSP_SESSION_ID</p>
-
-<p style="margin-left:22%;">Pass a char * as a parameter to
-set the value of the current RTSP Session ID for the handle.
-Useful for resuming an in-progress session. Once this value
-is set to any non-NULL value, libcurl will return
-<i>CURLE_RTSP_SESSION_ERROR</i> if ID received from the
-server does not match. If unset (or set to NULL), libcurl
-will automatically set the ID the first time the server sets
-it in a response. (Added in 7.20.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_RTSP_STREAM_URI</p>
-
-<p style="margin-left:22%;">Set the stream URI to operate
-on by passing a char * . For example, a single session may
-be controlling <i>rtsp://foo/twister/audio</i> and
-<i>rtsp://foo/twister/video</i> and the application can
-switch to the appropriate stream using this option. If
-unset, libcurl will default to operating on generic server
-options by passing ’*’ in the place of the RTSP
-Stream URI. This option is distinct from <i>CURLOPT_URL</i>.
-When working with RTSP, the <i>CURLOPT_STREAM_URI</i>
-indicates what URL to send to the server in the request
-header while the <i>CURLOPT_URL</i> indicates where to make
-the connection to. (e.g. the <i>CURLOPT_URL</i> for the
-above examples might be set to <i>rtsp://foo/twister</i>
-(Added in 7.20.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_RTSP_TRANSPORT</p>
-
-<p style="margin-left:22%;">Pass a char * to tell libcurl
-what to pass for the Transport: header for this RTSP
-session. This is mainly a convenience method to avoid
-needing to set a custom Transport: header for every SETUP
-request. The application must set a Transport: header before
-issuing a SETUP request. (Added in 7.20.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_RTSP_HEADER</p>
-
-<p style="margin-left:22%;">This option is simply an alias
-for <i>CURLOPT_HTTP_HEADER</i>. Use this to replace the
-standard headers that RTSP and HTTP share. It is also valid
-to use the shortcuts such as <i>CURLOPT_USERAGENT</i>.
-(Added in 7.20.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_RTSP_CLIENT_CSEQ</p>
-
-<p style="margin-left:22%;">Manually set the the CSEQ
-number to issue for the next RTSP request. Useful if the
-application is resuming a previously broken connection. The
-CSEQ will increment from this new number henceforth. (Added
-in 7.20.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_RTSP_SERVER_CSEQ</p>
-
-<p style="margin-left:22%;">Manually set the CSEQ number to
-expect for the next RTSP Server->Client request. At the
-moment, this feature (listening for Server requests) is
-unimplemented. (Added in 7.20.0)</p>
-
-<h2>PROTOCOL OPTIONS
-<a name="PROTOCOL OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_TRANSFERTEXT</p>
-
-<p style="margin-left:22%;">A parameter set to 1 tells the
-library to use ASCII mode for FTP transfers, instead of the
-default binary transfer. For win32 systems it does not set
-the stdout to binary mode. This option can be usable when
-transferring text data between systems with different views
-on certain characters, such as newlines or similar.</p>
-
-<p style="margin-left:22%; margin-top: 1em">libcurl does
-not do a complete ASCII conversion when doing ASCII
-transfers over FTP. This is a known limitation/flaw that
-nobody has rectified. libcurl simply sets the mode to ASCII
-and performs a standard transfer.</p>
-
-
-<p style="margin-left:11%;">CURLOPT_PROXY_TRANSFER_MODE</p>
-
-<p style="margin-left:22%;">Pass a long. If the value is
-set to 1 (one), it tells libcurl to set the transfer mode
-(binary or ASCII) for FTP transfers done via an HTTP proxy,
-by appending ;type=a or ;type=i to the URL. Without this
-setting, or it being set to 0 (zero, the default),
-<i>CURLOPT_TRANSFERTEXT</i> has no effect when doing FTP via
-a proxy. Beware that not all proxies support this feature.
-(Added in 7.18.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_CRLF</p>
-
-<p style="margin-left:22%;">Convert Unix newlines to CRLF
-newlines on transfers.</p>
-
-<p style="margin-left:11%;">CURLOPT_RANGE</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter,
-which should contain the specified range you want. It should
-be in the format "X-Y", where X or Y may be left
-out. HTTP transfers also support several intervals,
-separated with commas as in <i>"X-Y,N-M"</i>.
-Using this kind of multiple intervals will cause the HTTP
-server to send the response document in pieces (using
-standard MIME separation techniques). For RTSP, the
-formatting of a range should follow RFC 2326 Section 12.29.
-For RTSP, byte ranges are <b>not</b> permitted. Instead,
-ranges should be given in npt, utc, or smpte formats.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Pass a NULL to
-this option to disable the use of ranges.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Ranges work on
-HTTP, FTP, FILE (since 7.18.0), and RTSP (since 7.20.0)
-transfers only.</p>
-
-<p style="margin-left:11%;">CURLOPT_RESUME_FROM</p>
-
-<p style="margin-left:22%;">Pass a long as parameter. It
-contains the offset in number of bytes that you want the
-transfer to start from. Set this option to 0 to make the
-transfer start from the beginning (effectively disabling
-resume). For FTP, set this option to -1 to make the transfer
-start from the end of the target file (useful to continue an
-interrupted upload).</p>
-
-<p style="margin-left:11%;">CURLOPT_RESUME_FROM_LARGE</p>
-
-<p style="margin-left:22%;">Pass a curl_off_t as parameter.
-It contains the offset in number of bytes that you want the
-transfer to start from. (Added in 7.11.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_CUSTOMREQUEST</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. It will be used instead of
-GET or HEAD when doing an HTTP request, or instead of LIST
-or NLST when doing a FTP directory listing. This is useful
-for doing DELETE or other more or less obscure HTTP
-requests. Don’t do this at will, make sure your server
-supports the command first.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When you change
-the request method by setting <b>CURLOPT_CUSTOMREQUEST</b>
-to something, you don’t actually change how libcurl
-behaves or acts in regards to the particular request method,
-it will only change the actual string sent in the
-request.</p>
-
-<p style="margin-left:22%; margin-top: 1em">For example: if
-you tell libcurl to do a HEAD request, but then change the
-request to a "GET" with
-<b>CURLOPT_CUSTOMREQUEST</b> you’ll still see libcurl
-act as if it sent a HEAD even when it does send a GET.</p>
-
-<p style="margin-left:22%; margin-top: 1em">To switch to a
-proper HEAD, use <i>CURLOPT_NOBODY</i>, to switch to a
-proper POST, use <i>CURLOPT_POST</i> or
-<i>CURLOPT_POSTFIELDS</i> and so on.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Restore to the
-internal default by setting this to NULL.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Many people
-have wrongly used this option to replace the entire request
-with their own, including multiple headers and POST
-contents. While that might work in many cases, it will cause
-libcurl to send invalid requests and it could possibly
-confuse the remote server badly. Use <i>CURLOPT_POST</i> and
-<i>CURLOPT_POSTFIELDS</i> to set POST data. Use
-<i>CURLOPT_HTTPHEADER</i> to replace or extend the set of
-headers sent by libcurl. Use <i>CURLOPT_HTTP_VERSION</i> to
-change HTTP version.</p>
-
-<p style="margin-left:11%;">CURLOPT_FILETIME</p>
-
-<p style="margin-left:22%;">Pass a long. If it is 1,
-libcurl will attempt to get the modification date of the
-remote document in this operation. This requires that the
-remote server sends the time or replies to a time querying
-command. The <i>curl_easy_getinfo(3)</i> function with the
-<i>CURLINFO_FILETIME</i> argument can be used after a
-transfer to extract the received time (if any).</p>
-
-<p style="margin-left:11%;">CURLOPT_NOBODY</p>
-
-<p style="margin-left:22%;">A parameter set to 1 tells the
-library to not include the body-part in the output. This is
-only relevant for protocols that have separate header and
-body parts. On HTTP(S) servers, this will make libcurl do a
-HEAD request.</p>
-
-<p style="margin-left:22%; margin-top: 1em">To change
-request to GET, you should use <i>CURLOPT_HTTPGET</i>.
-Change request to POST with <i>CURLOPT_POST</i> etc.</p>
-
-<p style="margin-left:11%;">CURLOPT_INFILESIZE</p>
-
-<p style="margin-left:22%;">When uploading a file to a
-remote site, this option should be used to tell libcurl what
-the expected size of the infile is. This value should be
-passed as a long. See also
-<i>CURLOPT_INFILESIZE_LARGE</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">For uploading
-using SCP, this option or <i>CURLOPT_INFILESIZE_LARGE</i> is
-mandatory.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-does not limit how much data libcurl will actually send, as
-that is controlled entirely by what the read callback
-returns.</p>
-
-<p style="margin-left:11%;">CURLOPT_INFILESIZE_LARGE</p>
-
-<p style="margin-left:22%;">When uploading a file to a
-remote site, this option should be used to tell libcurl what
-the expected size of the infile is. This value should be
-passed as a curl_off_t. (Added in 7.11.0)</p>
-
-<p style="margin-left:22%; margin-top: 1em">For uploading
-using SCP, this option or <i>CURLOPT_INFILESIZE</i> is
-mandatory.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-does not limit how much data libcurl will actually send, as
-that is controlled entirely by what the read callback
-returns.</p>
-
-<p style="margin-left:11%;">CURLOPT_UPLOAD</p>
-
-<p style="margin-left:22%;">A parameter set to 1 tells the
-library to prepare for an upload. The
-<i>CURLOPT_READDATA</i> and <i>CURLOPT_INFILESIZE</i> or
-<i>CURLOPT_INFILESIZE_LARGE</i> options are also interesting
-for uploads. If the protocol is HTTP, uploading means using
-the PUT request unless you tell libcurl otherwise.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Using PUT with
-HTTP 1.1 implies the use of a "Expect:
-100-continue" header. You can disable this header with
-<i>CURLOPT_HTTPHEADER</i> as usual.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you use PUT
-to a HTTP 1.1 server, you can upload data without knowing
-the size before starting the transfer if you use chunked
-encoding. You enable this by adding a header like
-"Transfer-Encoding: chunked" with
-<i>CURLOPT_HTTPHEADER</i>. With HTTP 1.0 or without chunked
-transfer, you must specify the size.</p>
-
-<p style="margin-left:11%;">CURLOPT_MAXFILESIZE</p>
-
-<p style="margin-left:22%;">Pass a long as parameter. This
-allows you to specify the maximum size (in bytes) of a file
-to download. If the file requested is larger than this
-value, the transfer will not start and
-CURLE_FILESIZE_EXCEEDED will be returned.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The file size
-is not always known prior to download, and for such files
-this option has no effect even if the file transfer ends up
-being larger than this given limit. This concerns both FTP
-and HTTP transfers.</p>
-
-<p style="margin-left:11%;">CURLOPT_MAXFILESIZE_LARGE</p>
-
-<p style="margin-left:22%;">Pass a curl_off_t as parameter.
-This allows you to specify the maximum size (in bytes) of a
-file to download. If the file requested is larger than this
-value, the transfer will not start and
-<i>CURLE_FILESIZE_EXCEEDED</i> will be returned. (Added in
-7.11.0)</p>
-
-<p style="margin-left:22%; margin-top: 1em">The file size
-is not always known prior to download, and for such files
-this option has no effect even if the file transfer ends up
-being larger than this given limit. This concerns both FTP
-and HTTP transfers.</p>
-
-<p style="margin-left:11%;">CURLOPT_TIMECONDITION</p>
-
-<p style="margin-left:22%;">Pass a long as parameter. This
-defines how the <i>CURLOPT_TIMEVALUE</i> time value is
-treated. You can set this parameter to
-<i>CURL_TIMECOND_IFMODSINCE</i> or
-<i>CURL_TIMECOND_IFUNMODSINCE</i>. This feature applies to
-HTTP, FTP, and RTSP.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The last
-modification time of a file is not always known and in such
-instances this feature will have no effect even if the given
-time condition would not have been met.
-<i>curl_easy_getinfo(3)</i> with the
-<i>CURLINFO_CONDITION_UNMET</i> option can be used after a
-transfer to learn if a zero-byte successful
-"transfer" was due to this condition not
-matching.</p>
-
-<p style="margin-left:11%;">CURLOPT_TIMEVALUE</p>
-
-<p style="margin-left:22%;">Pass a long as parameter. This
-should be the time in seconds since 1 Jan 1970, and the time
-will be used in a condition as specified with
-<i>CURLOPT_TIMECONDITION</i>.</p>
-
-<h2>CONNECTION OPTIONS
-<a name="CONNECTION OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_TIMEOUT</p>
-
-<p style="margin-left:22%;">Pass a long as parameter
-containing the maximum time in seconds that you allow the
-libcurl transfer operation to take. Normally, name lookups
-can take a considerable time and limiting operations to less
-than a few minutes risk aborting perfectly normal
-operations. This option will cause curl to use the SIGALRM
-to enable time-outing system calls.</p>
-
-<p style="margin-left:22%; margin-top: 1em">In unix-like
-systems, this might cause signals to be used unless
-<i>CURLOPT_NOSIGNAL</i> is set.</p>
-
-<p style="margin-left:11%;">CURLOPT_TIMEOUT_MS</p>
-
-<p style="margin-left:22%;">Like <i>CURLOPT_TIMEOUT</i> but
-takes number of milliseconds instead. If libcurl is built to
-use the standard system name resolver, that portion of the
-transfer will still use full-second resolution for timeouts
-with a minimum timeout allowed of one second. (Added in
-7.16.2)</p>
-
-<p style="margin-left:11%;">CURLOPT_LOW_SPEED_LIMIT</p>
-
-<p style="margin-left:22%;">Pass a long as parameter. It
-contains the transfer speed in bytes per second that the
-transfer should be below during
-<i>CURLOPT_LOW_SPEED_TIME</i> seconds for the library to
-consider it too slow and abort.</p>
-
-<p style="margin-left:11%;">CURLOPT_LOW_SPEED_TIME</p>
-
-<p style="margin-left:22%;">Pass a long as parameter. It
-contains the time in seconds that the transfer should be
-below the <i>CURLOPT_LOW_SPEED_LIMIT</i> for the library to
-consider it too slow and abort.</p>
-
-
-<p style="margin-left:11%;">CURLOPT_MAX_SEND_SPEED_LARGE</p>
-
-<p style="margin-left:22%;">Pass a curl_off_t as parameter.
-If an upload exceeds this speed (counted in bytes per
-second) on cumulative average during the transfer, the
-transfer will pause to keep the average rate less than or
-equal to the parameter value. Defaults to unlimited speed.
-(Added in 7.15.5)</p>
-
-
-<p style="margin-left:11%;">CURLOPT_MAX_RECV_SPEED_LARGE</p>
-
-<p style="margin-left:22%;">Pass a curl_off_t as parameter.
-If a download exceeds this speed (counted in bytes per
-second) on cumulative average during the transfer, the
-transfer will pause to keep the average rate less than or
-equal to the parameter value. Defaults to unlimited speed.
-(Added in 7.15.5)</p>
-
-<p style="margin-left:11%;">CURLOPT_MAXCONNECTS</p>
-
-<p style="margin-left:22%;">Pass a long. The set number
-will be the persistent connection cache size. The set amount
-will be the maximum amount of simultaneously open
-connections that libcurl may cache in this easy handle.
-Default is 5, and there isn’t much point in changing
-this value unless you are perfectly aware of how this works
-and changes libcurl’s behaviour. This concerns
-connections using any of the protocols that support
-persistent connections.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When reaching
-the maximum limit, curl closes the oldest one in the cache
-to prevent increasing the number of open connections.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you already
-have performed transfers with this curl handle, setting a
-smaller MAXCONNECTS than before may cause open connections
-to get closed unnecessarily.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you add this
-easy handle to a multi handle, this setting is not
-acknowledged, and you must instead use
-<i>curl_multi_setopt(3)</i> and the
-<i>CURLMOPT_MAXCONNECTS</i> option.</p>
-
-<p style="margin-left:11%;">CURLOPT_CLOSEPOLICY</p>
-
-<p style="margin-left:22%;">(Obsolete) This option does
-nothing.</p>
-
-<p style="margin-left:11%;">CURLOPT_FRESH_CONNECT</p>
-
-<p style="margin-left:22%;">Pass a long. Set to 1 to make
-the next transfer use a new (fresh) connection by force. If
-the connection cache is full before this connection, one of
-the existing connections will be closed as according to the
-selected or default policy. This option should be used with
-caution and only if you understand what it does. Set this to
-0 to have libcurl attempt re-using an existing connection
-(default behavior).</p>
-
-<p style="margin-left:11%;">CURLOPT_FORBID_REUSE</p>
-
-<p style="margin-left:22%;">Pass a long. Set to 1 to make
-the next transfer explicitly close the connection when done.
-Normally, libcurl keeps all connections alive when done with
-one transfer in case a succeeding one follows that can
-re-use them. This option should be used with caution and
-only if you understand what it does. Set to 0 to have
-libcurl keep the connection open for possible later re-use
-(default behavior).</p>
-
-<p style="margin-left:11%;">CURLOPT_CONNECTTIMEOUT</p>
-
-<p style="margin-left:22%;">Pass a long. It should contain
-the maximum time in seconds that you allow the connection to
-the server to take. This only limits the connection phase,
-once it has connected, this option is of no more use. Set to
-zero to disable connection timeout (it will then only
-timeout on the system’s internal timeouts). See also
-the <i>CURLOPT_TIMEOUT</i> option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">In unix-like
-systems, this might cause signals to be used unless
-<i>CURLOPT_NOSIGNAL</i> is set.</p>
-
-<p style="margin-left:11%;">CURLOPT_CONNECTTIMEOUT_MS</p>
-
-<p style="margin-left:22%;">Like
-<i>CURLOPT_CONNECTTIMEOUT</i> but takes the number of
-milliseconds instead. If libcurl is built to use the
-standard system name resolver, that portion of the connect
-will still use full-second resolution for timeouts with a
-minimum timeout allowed of one second. (Added in 7.16.2)</p>
-
-<p style="margin-left:11%;">CURLOPT_IPRESOLVE</p>
-
-<p style="margin-left:22%;">Allows an application to select
-what kind of IP addresses to use when resolving host names.
-This is only interesting when using host names that resolve
-addresses using more than one version of IP. The allowed
-values are: <br>
-CURL_IPRESOLVE_WHATEVER</p>
-
-<p style="margin-left:32%;">Default, resolves addresses to
-all IP versions that your system allows.</p>
-
-<p style="margin-left:22%;">CURL_IPRESOLVE_V4</p>
-
-<p style="margin-left:32%;">Resolve to IPv4 addresses.</p>
-
-<p style="margin-left:22%;">CURL_IPRESOLVE_V6</p>
-
-<p style="margin-left:32%;">Resolve to IPv6 addresses.</p>
-
-<p style="margin-left:11%;">CURLOPT_CONNECT_ONLY</p>
-
-<p style="margin-left:22%;">Pass a long. If the parameter
-equals 1, it tells the library to perform all the required
-proxy authentication and connection setup, but no data
-transfer. This option is useful only on HTTP URLs.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option is
-useful with the <i>CURLINFO_LASTSOCKET</i> option to
-<i>curl_easy_getinfo(3)</i>. The library can set up the
-connection and then the application can obtain the most
-recently used socket for special data transfers. (Added in
-7.15.2)</p>
-
-<h2>SSL and SECURITY OPTIONS
-<a name="SSL and SECURITY OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_SSLCERT</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. The string should be the
-file name of your certificate. The default format is
-"PEM" and can be changed with
-<i>CURLOPT_SSLCERTTYPE</i>.</p>
-
-<p style="margin-left:22%; margin-top: 1em">With NSS this
-is the nickname of the certificate you wish to authenticate
-with.</p>
-
-<p style="margin-left:11%;">CURLOPT_SSLCERTTYPE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. The string should be the
-format of your certificate. Supported formats are
-"PEM" and "DER". (Added in 7.9.3)</p>
-
-<p style="margin-left:11%;">CURLOPT_SSLKEY</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. The string should be the
-file name of your private key. The default format is
-"PEM" and can be changed with
-<i>CURLOPT_SSLKEYTYPE</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_SSLKEYTYPE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. The string should be the
-format of your private key. Supported formats are
-"PEM", "DER" and "ENG".</p>
-
-<p style="margin-left:22%; margin-top: 1em">The format
-"ENG" enables you to load the private key from a
-crypto engine. In this case <i>CURLOPT_SSLKEY</i> is used as
-an identifier passed to the engine. You have to set the
-crypto engine with <i>CURLOPT_SSLENGINE</i>. "DER"
-format key file currently does not work because of a bug in
-OpenSSL.</p>
-
-<p style="margin-left:11%;">CURLOPT_KEYPASSWD</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. It will be used as the
-password required to use the <i>CURLOPT_SSLKEY</i> or
-<i>CURLOPT_SSH_PRIVATE_KEYFILE</i> private key. You never
-needed a pass phrase to load a certificate but you need one
-to load your private key.</p>
-
-<p style="margin-left:22%; margin-top: 1em">(This option
-was known as CURLOPT_SSLKEYPASSWD up to 7.16.4 and
-CURLOPT_SSLCERTPASSWD up to 7.9.2)</p>
-
-<p style="margin-left:11%;">CURLOPT_SSLENGINE</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string as parameter. It will be used as the
-identifier for the crypto engine you want to use for your
-private key.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If the crypto
-device cannot be loaded, <i>CURLE_SSL_ENGINE_NOTFOUND</i> is
-returned.</p>
-
-<p style="margin-left:11%;">CURLOPT_SSLENGINE_DEFAULT</p>
-
-<p style="margin-left:22%;">Sets the actual crypto engine
-as the default for (asymmetric) crypto operations.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If the crypto
-device cannot be set, <i>CURLE_SSL_ENGINE_SETFAILED</i> is
-returned.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Even though
-this option doesn’t need any parameter, in some
-configurations <i>curl_easy_setopt</i> might be defined as a
-macro taking exactly three arguments. Therefore, it’s
-recommended to pass 1 as parameter to this option.</p>
-
-<p style="margin-left:11%;">CURLOPT_SSLVERSION</p>
-
-<p style="margin-left:22%;">Pass a long as parameter to
-control what version of SSL/TLS to attempt to use. The
-available options are: <br>
-CURL_SSLVERSION_DEFAULT</p>
-
-<p style="margin-left:32%;">The default action. This will
-attempt to figure out the remote SSL protocol version, i.e.
-either SSLv3 or TLSv1 (but not SSLv2, which became disabled
-by default with 7.18.1).</p>
-
-<p style="margin-left:22%;">CURL_SSLVERSION_TLSv1</p>
-
-<p style="margin-left:32%;">Force TLSv1</p>
-
-<p style="margin-left:22%;">CURL_SSLVERSION_SSLv2</p>
-
-<p style="margin-left:32%;">Force SSLv2</p>
-
-<p style="margin-left:22%;">CURL_SSLVERSION_SSLv3</p>
-
-<p style="margin-left:32%;">Force SSLv3</p>
-
-<p style="margin-left:11%;">CURLOPT_SSL_VERIFYPEER</p>
-
-<p style="margin-left:22%;">Pass a long as parameter.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-determines whether curl verifies the authenticity of the
-peer’s certificate. A value of 1 means curl verifies;
-zero means it doesn’t. The default is nonzero, but
-before 7.10, it was zero.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When
-negotiating an SSL connection, the server sends a
-certificate indicating its identity. Curl verifies whether
-the certificate is authentic, i.e. that you can trust that
-the server is who the certificate says it is. This trust is
-based on a chain of digital signatures, rooted in
-certification authority (CA) certificates you supply. As of
-7.10, curl installs a default bundle of CA certificates and
-you can specify alternate certificates with the
-<i>CURLOPT_CAINFO</i> option or the <i>CURLOPT_CAPATH</i>
-option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When
-<i>CURLOPT_SSL_VERIFYPEER</i> is nonzero, and the
-verification fails to prove that the certificate is
-authentic, the connection fails. When the option is zero,
-the connection succeeds regardless.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Authenticating
-the certificate is not by itself very useful. You typically
-want to ensure that the server, as authentically identified
-by its certificate, is the server you mean to be talking to.
-Use <i>CURLOPT_SSL_VERIFYHOST</i> to control that.</p>
-
-<p style="margin-left:11%;">CURLOPT_CAINFO</p>
-
-<p style="margin-left:22%;">Pass a char * to a zero
-terminated string naming a file holding one or more
-certificates to verify the peer with. This makes sense only
-when used in combination with the
-<i>CURLOPT_SSL_VERIFYPEER</i> option. If
-<i>CURLOPT_SSL_VERIFYPEER</i> is zero, <i>CURLOPT_CAINFO</i>
-need not even indicate an accessible file.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option is
-by default set to the system path where libcurl’s
-cacert bundle is assumed to be stored, as established at
-build time.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When built
-against NSS, this is the directory that the NSS certificate
-database resides in.</p>
-
-<p style="margin-left:11%;">CURLOPT_ISSUERCERT</p>
-
-<p style="margin-left:22%;">Pass a char * to a zero
-terminated string naming a file holding a CA certificate in
-PEM format. If the option is set, an additional check
-against the peer certificate is performed to verify the
-issuer is indeed the one associated with the certificate
-provided by the option. This additional check is useful in
-multi-level PKI where one needs to enforce that the peer
-certificate is from a specific branch of the tree.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-makes sense only when used in combination with the
-<i>CURLOPT_SSL_VERIFYPEER</i> option. Otherwise, the result
-of the check is not considered as failure.</p>
-
-<p style="margin-left:22%; margin-top: 1em">A specific
-error code (CURLE_SSL_ISSUER_ERROR) is defined with the
-option, which is returned if the setup of the SSL/TLS
-session has failed due to a mismatch with the issuer of peer
-certificate (<i>CURLOPT_SSL_VERIFYPEER</i> has to be set too
-for the check to fail). (Added in 7.19.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_CAPATH</p>
-
-<p style="margin-left:22%;">Pass a char * to a zero
-terminated string naming a directory holding multiple CA
-certificates to verify the peer with. The certificate
-directory must be prepared using the openssl c_rehash
-utility. This makes sense only when used in combination with
-the <i>CURLOPT_SSL_VERIFYPEER</i> option. If
-<i>CURLOPT_SSL_VERIFYPEER</i> is zero, <i>CURLOPT_CAPATH</i>
-need not even indicate an accessible path. The
-<i>CURLOPT_CAPATH</i> function apparently does not work in
-Windows due to some limitation in openssl. This option is
-OpenSSL-specific and does nothing if libcurl is built to use
-GnuTLS.</p>
-
-<p style="margin-left:11%;">CURLOPT_CRLFILE</p>
-
-<p style="margin-left:22%;">Pass a char * to a zero
-terminated string naming a file with the concatenation of
-CRL (in PEM format) to use in the certificate validation
-that occurs during the SSL exchange.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When curl is
-built to use NSS or GnuTLS, there is no way to influence the
-use of CRL passed to help in the verification process. When
-libcurl is built with OpenSSL support, X509_V_FLAG_CRL_CHECK
-and X509_V_FLAG_CRL_CHECK_ALL are both set, requiring CRL
-check against all the elements of the certificate chain if a
-CRL file is passed.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-makes sense only when used in combination with the
-<i>CURLOPT_SSL_VERIFYPEER</i> option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">A specific
-error code (CURLE_SSL_CRL_BADFILE) is defined with the
-option. It is returned when the SSL exchange fails because
-the CRL file cannot be loaded. A failure in certificate
-verification due to a revocation information found in the
-CRL does not trigger this specific error. (Added in
-7.19.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_CERTINFO</p>
-
-<p style="margin-left:22%;">Pass a long set to 1 to enable
-libcurl’s certificate chain info gatherer. With this
-enabled, libcurl (if built with OpenSSL) will extract lots
-of information and data about the certificates in the
-certificate chain used in the SSL connection. This data is
-then possible to extract after a transfer using
-<i>curl_easy_getinfo(3)</i> and its option
-<i>CURLINFO_CERTINFO</i>. (Added in 7.19.1)</p>
-
-<p style="margin-left:11%;">CURLOPT_RANDOM_FILE</p>
-
-<p style="margin-left:22%;">Pass a char * to a zero
-terminated file name. The file will be used to read from to
-seed the random engine for SSL. The more random the
-specified file is, the more secure the SSL connection will
-become.</p>
-
-<p style="margin-left:11%;">CURLOPT_EGDSOCKET</p>
-
-<p style="margin-left:22%;">Pass a char * to the zero
-terminated path name to the Entropy Gathering Daemon socket.
-It will be used to seed the random engine for SSL.</p>
-
-<p style="margin-left:11%;">CURLOPT_SSL_VERIFYHOST</p>
-
-<p style="margin-left:22%;">Pass a long as parameter.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-determines whether libcurl verifies that the server cert is
-for the server it is known as.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When
-negotiating a SSL connection, the server sends a certificate
-indicating its identity.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When
-<i>CURLOPT_SSL_VERIFYHOST</i> is 2, that certificate must
-indicate that the server is the server to which you meant to
-connect, or the connection fails.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Curl considers
-the server the intended one when the Common Name field or a
-Subject Alternate Name field in the certificate matches the
-host name in the URL to which you told Curl to connect.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When the value
-is 1, the certificate must contain a Common Name field, but
-it doesn’t matter what name it says. (This is not
-ordinarily a useful setting).</p>
-
-<p style="margin-left:22%; margin-top: 1em">When the value
-is 0, the connection succeeds regardless of the names in the
-certificate.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The default,
-since 7.10, is 2.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option
-controls checking the server’s claimed identity. The
-server could be lying. To control lying, see
-<i>CURLOPT_SSL_VERIFYPEER</i>.</p>
-
-<p style="margin-left:11%;">CURLOPT_SSL_CIPHER_LIST</p>
-
-<p style="margin-left:22%;">Pass a char *, pointing to a
-zero terminated string holding the list of ciphers to use
-for the SSL connection. The list must be syntactically
-correct, it consists of one or more cipher strings separated
-by colons. Commas or spaces are also acceptable separators
-but colons are normally used, !, - and + can be used as
-operators.</p>
-
-<p style="margin-left:22%; margin-top: 1em">For OpenSSL and
-GnuTLS valid examples of cipher lists include
-’RC4-SHA’, ´SHA1+DES´,
-’TLSv1’ and ’DEFAULT’. The default
-list is normally set when you compile OpenSSL.</p>
-
-<p style="margin-left:22%; margin-top: 1em">You’ll
-find more details about cipher lists on this URL:
-<i>http://www.openssl.org/docs/apps/ciphers.html</i></p>
-
-<p style="margin-left:22%; margin-top: 1em">For NSS, valid
-examples of cipher lists include
-’rsa_rc4_128_md5’,
-´rsa_aes_128_sha´, etc. With NSS you don’t
-add/remove ciphers. If one uses this option then all known
-ciphers are disabled and only those passed in are
-enabled.</p>
-
-<p style="margin-left:22%; margin-top: 1em">You’ll
-find more details about the NSS cipher lists on this URL:
-<i>http://directory.fedora.redhat.com/docs/mod_nss.html#Directives</i></p>
-
-
-<p style="margin-left:11%;">CURLOPT_SSL_SESSIONID_CACHE</p>
-
-<p style="margin-left:22%;">Pass a long set to 0 to disable
-libcurl’s use of SSL session-ID caching. Set this to 1
-to enable it. By default all transfers are done using the
-cache. While nothing ever should get hurt by attempting to
-reuse SSL session-IDs, there seem to be broken SSL
-implementations in the wild that may require you to disable
-this in order for you to succeed. (Added in 7.16.0)</p>
-
-<p style="margin-left:11%;">CURLOPT_KRBLEVEL</p>
-
-<p style="margin-left:22%;">Pass a char * as parameter. Set
-the kerberos security level for FTP; this also enables
-kerberos awareness. This is a string, ’clear’,
-’safe’, ’confidential’ or
-’private’. If the string is set but
-doesn’t match one of these, ’private’ will
-be used. Set the string to NULL to disable kerberos support
-for FTP.</p>
-
-<p style="margin-left:22%; margin-top: 1em">(This option
-was known as CURLOPT_KRB4LEVEL up to 7.16.3)</p>
-
-<h2>SSH OPTIONS
-<a name="SSH OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_SSH_AUTH_TYPES</p>
-
-<p style="margin-left:22%;">Pass a long set to a bitmask
-consisting of one or more of CURLSSH_AUTH_PUBLICKEY,
-CURLSSH_AUTH_PASSWORD, CURLSSH_AUTH_HOST,
-CURLSSH_AUTH_KEYBOARD. Set CURLSSH_AUTH_ANY to let libcurl
-pick one. (Added in 7.16.1)</p>
-
-
-<p style="margin-left:11%;">CURLOPT_SSH_HOST_PUBLIC_KEY_MD5</p>
-
-<p style="margin-left:22%;">Pass a char * pointing to a
-string containing 32 hexadecimal digits. The string should
-be the 128 bit MD5 checksum of the remote host’s
-public key, and libcurl will reject the connection to the
-host unless the md5sums match. This option is only for SCP
-and SFTP transfers. (Added in 7.17.1)</p>
-
-<p style="margin-left:11%;">CURLOPT_SSH_PUBLIC_KEYFILE</p>
-
-<p style="margin-left:22%;">Pass a char * pointing to a
-file name for your public key. If not used, libcurl defaults
-to using <b>~/.ssh/id_dsa.pub</b>. (Added in 7.16.1)</p>
-
-
-<p style="margin-left:11%;">CURLOPT_SSH_PRIVATE_KEYFILE</p>
-
-<p style="margin-left:22%;">Pass a char * pointing to a
-file name for your private key. If not used, libcurl
-defaults to using <b>~/.ssh/id_dsa</b>. If the file is
-password-protected, set the password with
-<i>CURLOPT_KEYPASSWD</i>. (Added in 7.16.1)</p>
-
-<p style="margin-left:11%;">CURLOPT_SSH_KNOWNHOSTS</p>
-
-<p style="margin-left:22%;">Pass a pointer to a zero
-terminated string holding the file name of the known_host
-file to use. The known_hosts file should use the OpenSSH
-file format as supported by libssh2. If this file is
-specified, libcurl will only accept connections with hosts
-that are known and present in that file, with a matching
-public key. Use <i>CURLOPT_SSH_KEYFUNCTION</i> to alter the
-default behavior on host and key (mis)matching. (Added in
-7.19.6)</p>
-
-<p style="margin-left:11%;">CURLOPT_SSH_KEYFUNCTION</p>
-
-<p style="margin-left:22%;">Pass a pointer to a
-curl_sshkeycallback function. It gets called when the
-known_host matching has been done, to allow the application
-to act and decide for libcurl how to proceed. It gets passed
-the CURL handle, the key from the known_hosts file, the key
-from the remote site, info from libcurl on the matching
-status and a custom pointer (set with
-<i>CURLOPT_SSH_KEYDATA</i>). It MUST return one of the
-following return codes to tell libcurl how to act: <br>
-CURLKHSTAT_FINE_ADD_TO_FILE</p>
-
-<p style="margin-left:32%;">The host+key is accepted and
-libcurl will append it to the known_hosts file before
-continuing with the connection. This will also add the
-host+key combo to the known_host pool kept in memory if it
-wasn’t already present there. The adding of data to
-the file is done by completely replacing the file with a new
-copy, so the permissions of the file must allow this.</p>
-
-<p style="margin-left:22%;">CURLKHSTAT_FINE</p>
-
-<p style="margin-left:32%;">The host+key is accepted
-libcurl will continue with the connection. This will also
-add the host+key combo to the known_host pool kept in memory
-if it wasn’t already present there.</p>
-
-<p style="margin-left:22%;">CURLKHSTAT_REJECT</p>
-
-<p style="margin-left:32%;">The host+key is rejected.
-libcurl will deny the connection to continue and it will be
-closed.</p>
-
-<p style="margin-left:22%;">CURLKHSTAT_DEFER</p>
-
-<p style="margin-left:32%;">The host+key is rejected, but
-the SSH connection is asked to be kept alive. This feature
-could be used when the app wants to somehow return back and
-act on the host+key situation and then retry without needing
-the overhead of setting it up from scratch again.</p>
-
-<p style="margin-left:11%;">(Added in 7.19.6) <br>
-CURLOPT_SSH_KEYDATA</p>
-
-<p style="margin-left:22%;">Pass a void * as parameter.
-This pointer will be passed along verbatim to the callback
-set with <i>CURLOPT_SSH_KEYFUNCTION</i>. (Added in
-7.19.6)</p>
-
-<h2>OTHER OPTIONS
-<a name="OTHER OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_PRIVATE</p>
-
-<p style="margin-left:22%;">Pass a void * as parameter,
-pointing to data that should be associated with this curl
-handle. The pointer can subsequently be retrieved using
-<i>curl_easy_getinfo(3)</i> with the CURLINFO_PRIVATE
-option. libcurl itself does nothing with this data. (Added
-in 7.10.3)</p>
-
-<p style="margin-left:11%;">CURLOPT_SHARE</p>
-
-<p style="margin-left:22%;">Pass a share handle as a
-parameter. The share handle must have been created by a
-previous call to <i>curl_share_init(3)</i>. Setting this
-option, will make this curl handle use the data from the
-shared handle instead of keeping the data to itself. This
-enables several curl handles to share data. If the curl
-handles are used simultaneously in multiple threads, you
-<b>MUST</b> use the locking methods in the share handle. See
-<i>curl_share_setopt(3)</i> for details.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you add a
-share that is set to share cookies, your easy handle will
-use that cookie cache and get the cookie engine enabled. If
-you unshare an object that was using cookies (or change to
-another object that doesn’t share cookies), the easy
-handle will get its cookie engine disabled.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Data that the
-share object is not set to share will be dealt with the
-usual way, as if no share was used.</p>
-
-<p style="margin-left:11%;">CURLOPT_NEW_FILE_PERMS</p>
-
-<p style="margin-left:22%;">Pass a long as a parameter,
-containing the value of the permissions that will be
-assigned to newly created files on the remote server. The
-default value is <i>0644</i>, but any valid value can be
-used. The only protocols that can use this are
-<i>sftp://</i>, <i>scp://</i>, and <i>file://</i>. (Added in
-7.16.4)</p>
-
-
-<p style="margin-left:11%;">CURLOPT_NEW_DIRECTORY_PERMS</p>
-
-<p style="margin-left:22%;">Pass a long as a parameter,
-containing the value of the permissions that will be
-assigned to newly created directories on the remote server.
-The default value is <i>0755</i>, but any valid value can be
-used. The only protocols that can use this are
-<i>sftp://</i>, <i>scp://</i>, and <i>file://</i>. (Added in
-7.16.4)</p>
-
-<h2>TELNET OPTIONS
-<a name="TELNET OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLOPT_TELNETOPTIONS</p>
-
-<p style="margin-left:22%;">Provide a pointer to a
-curl_slist with variables to pass to the telnet
-negotiations. The variables should be in the format
-<option=value>. libcurl supports the options
-’TTYPE’, ’XDISPLOC’ and
-’NEW_ENV’. See the TELNET standard for
-details.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLE_OK (zero)
-means that the option was set properly, non-zero means an
-error occurred as <i><curl/curl.h></i> defines. See
-the <i>libcurl-errors(3)</i> man page for the full list with
-descriptions.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you try to
-set an option that libcurl doesn’t know about, perhaps
-because the library is too old to support it or the option
-was removed in a recent version, this function will return
-<i>CURLE_FAILED_INIT</i>.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_easy_init</b>(3),
-<b>curl_easy_cleanup</b>(3), <b>curl_easy_reset</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_setopt.pdf b/src/other/curl/docs/libcurl/curl_easy_setopt.pdf
deleted file mode 100644
index 3cfa473..0000000
Binary files a/src/other/curl/docs/libcurl/curl_easy_setopt.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_easy_strerror.html b/src/other/curl/docs/libcurl/curl_easy_strerror.html
deleted file mode 100644
index 1cfb73b..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_strerror.html
+++ /dev/null
@@ -1,89 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:18 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_strerror</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_strerror</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_strerror
-- return string describing error code</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h> <br>
-const char *curl_easy_strerror(CURLcode</b>
-<i>errornum</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The
-curl_easy_strerror() function returns a string describing
-the CURLcode error code passed in the argument
-<i>errornum</i>.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-was added in libcurl 7.12.0</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A pointer to a
-zero terminated string.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>libcurl-errors</b>(3),
-<b>curl_multi_strerror</b>(3),
-<b>curl_share_strerror</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_strerror.pdf b/src/other/curl/docs/libcurl/curl_easy_strerror.pdf
deleted file mode 100644
index 0470b2f..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_strerror.pdf
+++ /dev/null
@@ -1,108 +0,0 @@
-%PDF-1.4
-%Ç쏢
-5 0 obj
-<</Length 6 0 R/Filter /FlateDecode>>
-stream
-xœ•Tmo›0þί8iÕpmc^¬M“hM™Ò¤Kh¥**JhÊ”–UÛ¯ßÙBšTÕ„Äœïyîyîü”0 êjŸÉÚ8ú°,
-ßñ^ÏÓÐ>’5œE¨…èÁhö1ð9øB@´6ó‰Ë z1æfR«»4.ÿÜ•U‘Ŧ¸5[VÙ½údÙÜ¥„Rß¼ˆó:^ÁñÖ¯è‡aS™„(At‰èDºŠ€ãA42Ìqh}DÂø•¹Ä•’Š†y1°¢ß=ºœA}°WŸ©by„$ØP¤U]ä€+Y¾„EZ&Ev¯^›€d³H›Ì=*6r±™G
=»O.gÃÙ.¬¥Û‚›²<YÕ‹¾(§ê‡<~Uá*`dD'(à&/+HãNöxZ, ”¹ÌD>Ý»’ëüj:Òì”f§SF·F.¡^#Ë\ï®’ÞÁ]y½nÃ;šá­„·ÖçÃJ¹+	ïWûm0;Ÿ/£ád¼¯ø®`J<­wô˜5ûâ¡Î“*Ûä­ü%ÄG¨pÿ¶Êžð—eº€,×q¡x”ÆóÛJ–µ­ÖìvqëÃ:Í«†s'çÄ}Oª®@Ÿe-ÑŒ¸ApЪ¶ôˆ£B;Ù0
--Jx
¡Úª[»ÔsÙÖ€á(<Ž†Ñ;°ØçŽ@”~/ÏQܬÜÉøbI"%÷3F-‹FžvúÀ'ŒÚsþXÏÍé ºšŽáÚbŽ Òcf8ºè]J%]ä¡ÙføÔ•Ãñ™”m9›,¯Òª
šû7-6€ÿÖYWH®1›ö:Eo¼G³É[ã57Û2m=!>‘ðÐÀò•}n@˜ ]³«ãæÓ~N„ô¼mD{¦­ëU•5sˆ™¥Ã_Íá+@êÊà?AJû]þnꩼ‹&¸ôûhº+¹t•ž(¦ØSH7‚…Òr×ĹŸ
-à”
-XxÛÓ”©4ƒÈø‰×?­…›endstream
-endobj
-6 0 obj
-721
-endobj
-4 0 obj
-<</Type/Page/MediaBox [0 0 612 792]
-/Rotate 0/Parent 3 0 R
-/Resources<</ProcSet[/PDF /Text]
-/ExtGState 11 0 R
-/Font 12 0 R
->>
-/Contents 5 0 R
->>
-endobj
-3 0 obj
-<< /Type /Pages /Kids [
-4 0 R
-] /Count 1
->>
-endobj
-1 0 obj
-<</Type /Catalog /Pages 3 0 R
-/Metadata 13 0 R
->>
-endobj
-7 0 obj
-<</Type/ExtGState
-/OPM 1>>endobj
-11 0 obj
-<</R7
-7 0 R>>
-endobj
-12 0 obj
-<</R10
-10 0 R/R9
-9 0 R/R8
-8 0 R>>
-endobj
-10 0 obj
-<</BaseFont/Times-Italic/Type/Font
-/Subtype/Type1>>
-endobj
-9 0 obj
-<</BaseFont/Times-Bold/Type/Font
-/Subtype/Type1>>
-endobj
-8 0 obj
-<</BaseFont/Times-Roman/Type/Font
-/Subtype/Type1>>
-endobj
-13 0 obj
-<</Type/Metadata
-/Subtype/XML/Length 1332>>stream
-<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d'?>
-<?adobe-xap-filters esc="CRLF"?>
-<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
-<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='4b544cb9-112b-11ed-0000-1db77fb63b0' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.04'/>
-<rdf:Description rdf:about='4b544cb9-112b-11ed-0000-1db77fb63b0' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2012-07-28T16:48:35-07:00</xmp:ModifyDate>
-<xmp:CreateDate>2012-07-28T16:48:35-07:00</xmp:CreateDate>
-<xmp:CreatorTool>groff version 1.21</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='4b544cb9-112b-11ed-0000-1db77fb63b0' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:4b544cb9-112b-11ed-0000-1db77fb63b0à3'/>
-<rdf:Description rdf:about='4b544cb9-112b-11ed-0000-1db77fb63b0' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
-</rdf:RDF>
-</x:xmpmeta>
-                                                                        
-                                                                        
-<?xpacket end='w'?>
-endstream
-endobj
-2 0 obj
-<</Producer(GPL Ghostscript 9.04)
-/CreationDate(D:20120728164835-07'00')
-/ModDate(D:20120728164835-07'00')
-/Creator(groff version 1.21)>>endobj
-xref
-0 14
-0000000000 65535 f 
-0000001044 00000 n 
-0000002838 00000 n 
-0000000985 00000 n 
-0000000825 00000 n 
-0000000015 00000 n 
-0000000806 00000 n 
-0000001109 00000 n 
-0000001363 00000 n 
-0000001298 00000 n 
-0000001230 00000 n 
-0000001150 00000 n 
-0000001180 00000 n 
-0000001429 00000 n 
-trailer
-<< /Size 14 /Root 1 0 R /Info 2 0 R
-/ID [<B9E92D124090516ED027926F9A2E29D7><B9E92D124090516ED027926F9A2E29D7>]
->>
-startxref
-2990
-%%EOF
diff --git a/src/other/curl/docs/libcurl/curl_easy_unescape.html b/src/other/curl/docs/libcurl/curl_easy_unescape.html
deleted file mode 100644
index 2d966b4..0000000
--- a/src/other/curl/docs/libcurl/curl_easy_unescape.html
+++ /dev/null
@@ -1,108 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:19 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_easy_unescape</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_easy_unescape</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_unescape
-- URL decodes the given string</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>char
-*curl_easy_unescape( CURL *</b><i>curl</i><b>, char
-*</b><i>url</i><b>, int</b> <i>inlength</i> <b>, int
-*</b><i>outlength</i> <b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-converts the given URL encoded input string to a "plain
-string" and returns that in an allocated memory area.
-All input characters that are URL encoded (%XX where XX is a
-two-digit hexadecimal number) are converted to their binary
-versions.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If the
-<b>length</b> argument is set to 0 (zero),
-<i>curl_easy_unescape(3)</i> will use strlen() on the input
-<i>url</i> string to find out the size.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If
-<b>outlength</b> is non-NULL, the function will write the
-length of the returned string in the integer it points to.
-This allows an escaped string containing %00 to still get
-used properly after unescaping.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You must
-<i>curl_free(3)</i> the returned string when you’re
-done with it.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Added in 7.15.4
-and replaces the old <i>curl_unescape(3)</i> function.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A pointer to a
-zero terminated string or NULL if it failed.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>curl_easy_escape(3),
-curl_free(3), RFC 2396</i></p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_easy_unescape.pdf b/src/other/curl/docs/libcurl/curl_easy_unescape.pdf
deleted file mode 100644
index 0f0ed96..0000000
Binary files a/src/other/curl/docs/libcurl/curl_easy_unescape.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_escape.html b/src/other/curl/docs/libcurl/curl_escape.html
deleted file mode 100644
index bec8be8..0000000
--- a/src/other/curl/docs/libcurl/curl_escape.html
+++ /dev/null
@@ -1,104 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:14 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_escape</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_escape</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_escape -
-URL encodes the given string</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>char
-*curl_escape( char *</b><i>url</i><b>, int</b> <i>length</i>
-<b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Obsolete
-function. Use <i>curl_easy_escape(3)</i> instead!</p>
-
-<p style="margin-left:11%; margin-top: 1em">This function
-will convert the given input string to an URL encoded string
-and return that as a new allocated string. All input
-characters that are not a-z, A-Z or 0-9 will be converted to
-their "URL escaped" version (%NN where NN is a
-two-digit hexadecimal number).</p>
-
-<p style="margin-left:11%; margin-top: 1em">If the
-’length’ argument is set to 0, curl_escape()
-will use strlen() on the input ’url’ string to
-find out the size.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You must
-curl_free() the returned string when you’re done with
-it.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Since 7.15.4,
-<i>curl_easy_escape(3)</i> should be used. This function
-will be removed in a future release.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A pointer to a
-zero terminated string or NULL if it failed.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_unescape</b>(3),
-<b>curl_free</b>(3), <b>RFC</b>2396</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_escape.pdf b/src/other/curl/docs/libcurl/curl_escape.pdf
deleted file mode 100644
index 06ed9cb..0000000
Binary files a/src/other/curl/docs/libcurl/curl_escape.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_formadd.html b/src/other/curl/docs/libcurl/curl_formadd.html
deleted file mode 100644
index bdb3dd6..0000000
--- a/src/other/curl/docs/libcurl/curl_formadd.html
+++ /dev/null
@@ -1,389 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:13 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_formadd</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_formadd</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#OPTIONS">OPTIONS</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#EXAMPLE">EXAMPLE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_formadd -
-add a section to a multipart/formdata HTTP POST</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURLFORMcode
-curl_formadd(struct curl_httppost **</b> <i>firstitem,</i>
-<b>struct curl_httppost **</b> <i>lastitem,</i>
-<b>...);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_formadd()
-is used to append sections when building a
-multipart/formdata HTTP POST (sometimes referred to as
-RFC2388-style posts). Append one section at a time until
-you’ve added all the sections you want included and
-then you pass the <i>firstitem</i> pointer as parameter to
-<b>CURLOPT_HTTPPOST</b>. <i>lastitem</i> is set after each
-call and on repeated invokes it should be left as set to
-allow repeated invokes to find the end of the list
-faster.</p>
-
-<p style="margin-left:11%; margin-top: 1em">After the
-<i>lastitem</i> pointer follow the real arguments.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The pointers
-<i>*firstitem</i> and <i>*lastitem</i> should both be
-pointing to NULL in the first call to this function. All
-list-data will be allocated by the function itself. You must
-call <i>curl_formfree(3)</i> after the form post has been
-done to free the resources.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Using POST with
-HTTP 1.1 implies the use of a "Expect:
-100-continue" header. You can disable this header with
-<i>CURLOPT_HTTPHEADER</i> as usual.</p>
-
-<p style="margin-left:11%; margin-top: 1em">First, there
-are some basics you need to understand about
-multipart/formdata posts. Each part consists of at least a
-NAME and a CONTENTS part. If the part is made for file
-upload, there are also a stored CONTENT-TYPE and a FILENAME.
-Below, we’ll discuss what options you use to set these
-properties in the parts you want to add to your post.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The options
-listed first are for making normal parts. The options from
-<i>CURLFORM_FILE</i> through <i>CURLFORM_BUFFERLENGTH</i>
-are for file upload parts.</p>
-
-<h2>OPTIONS
-<a name="OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLFORM_COPYNAME</p>
-
-<p style="margin-left:22%;">followed by a string which
-provides the <i>name</i> of this part. libcurl copies the
-string so your application doesn’t need to keep it
-around after this function call. If the name isn’t
-NUL-terminated, or if you’d like it to contain zero
-bytes, you must set its length with
-<b>CURLFORM_NAMELENGTH</b>. The copied data will be freed by
-<i>curl_formfree(3)</i>.</p>
-
-<p style="margin-left:11%;">CURLFORM_PTRNAME</p>
-
-<p style="margin-left:22%;">followed by a string which
-provides the <i>name</i> of this part. libcurl will use the
-pointer and refer to the data in your application, so you
-must make sure it remains until curl no longer needs it. If
-the name isn’t NUL-terminated, or if you’d like
-it to contain zero bytes, you must set its length with
-<b>CURLFORM_NAMELENGTH</b>.</p>
-
-<p style="margin-left:11%;">CURLFORM_COPYCONTENTS</p>
-
-<p style="margin-left:22%;">followed by a pointer to the
-contents of this part, the actual data to send away. libcurl
-copies the provided data, so your application doesn’t
-need to keep it around after this function call. If the data
-isn’t null terminated, or if you’d like it to
-contain zero bytes, you must set the length of the name with
-<b>CURLFORM_CONTENTSLENGTH</b>. The copied data will be
-freed by <i>curl_formfree(3)</i>.</p>
-
-<p style="margin-left:11%;">CURLFORM_PTRCONTENTS</p>
-
-<p style="margin-left:22%;">followed by a pointer to the
-contents of this part, the actual data to send away. libcurl
-will use the pointer and refer to the data in your
-application, so you must make sure it remains until curl no
-longer needs it. If the data isn’t NUL-terminated, or
-if you’d like it to contain zero bytes, you must set
-its length with <b>CURLFORM_CONTENTSLENGTH</b>.</p>
-
-<p style="margin-left:11%;">CURLFORM_CONTENTSLENGTH</p>
-
-<p style="margin-left:22%;">followed by a long giving the
-length of the contents. Note that for <i>CURLFORM_STREAM</i>
-contents, this option is mandatory.</p>
-
-<p style="margin-left:11%;">CURLFORM_FILECONTENT</p>
-
-<p style="margin-left:22%;">followed by a filename, causes
-that file to be read and its contents used as data in this
-part. This part does <i>not</i> automatically become a file
-upload part simply because its data was read from a
-file.</p>
-
-<p style="margin-left:11%;">CURLFORM_FILE</p>
-
-<p style="margin-left:22%;">followed by a filename, makes
-this part a file upload part. It sets the <i>filename</i>
-field to the basename of the provided filename, it reads the
-contents of the file and passes them as data and sets the
-content-type if the given file match one of the internally
-known file extensions. For <b>CURLFORM_FILE</b> the user may
-send one or more files in one part by providing multiple
-<b>CURLFORM_FILE</b> arguments each followed by the filename
-(and each <i>CURLFORM_FILE</i> is allowed to have a
-<i>CURLFORM_CONTENTTYPE</i>).</p>
-
-<p style="margin-left:11%;">CURLFORM_CONTENTTYPE</p>
-
-<p style="margin-left:22%;">is used in combination with
-<i>CURLFORM_FILE</i>. Followed by a pointer to a string
-which provides the content-type for this part, possibly
-instead of an internally chosen one.</p>
-
-<p style="margin-left:11%;">CURLFORM_FILENAME</p>
-
-<p style="margin-left:22%;">is used in combination with
-<i>CURLFORM_FILE</i>. Followed by a pointer to a string, it
-tells libcurl to use the given string as the <i>filename</i>
-in the file upload part instead of the actual file name.</p>
-
-<p style="margin-left:11%;">CURLFORM_BUFFER</p>
-
-<p style="margin-left:22%;">is used for custom file upload
-parts without use of <i>CURLFORM_FILE</i>. It tells libcurl
-that the file contents are already present in a buffer. The
-parameter is a string which provides the <i>filename</i>
-field in the content header.</p>
-
-<p style="margin-left:11%;">CURLFORM_BUFFERPTR</p>
-
-<p style="margin-left:22%;">is used in combination with
-<i>CURLFORM_BUFFER</i>. The parameter is a pointer to the
-buffer to be uploaded. This buffer must not be freed until
-after <i>curl_easy_cleanup(3)</i> is called. You must also
-use <i>CURLFORM_BUFFERLENGTH</i> to set the number of bytes
-in the buffer.</p>
-
-<p style="margin-left:11%;">CURLFORM_BUFFERLENGTH</p>
-
-<p style="margin-left:22%;">is used in combination with
-<i>CURLFORM_BUFFER</i>. The parameter is a long which gives
-the length of the buffer.</p>
-
-<p style="margin-left:11%;">CURLFORM_STREAM</p>
-
-<p style="margin-left:22%;">Tells libcurl to use the
-<i>CURLOPT_READFUNCTION</i> callback to get data. The
-parameter you pass to <i>CURLFORM_STREAM</i> is the pointer
-passed on to the read callback’s fourth argument. If
-you want the part to look like a file upload one, set the
-<i>CURLFORM_FILENAME</i> parameter as well. Note that when
-using <i>CURLFORM_STREAM</i>, <i>CURLFORM_CONTENTSLENGTH</i>
-must also be set with the total expected length of the part.
-(Option added in libcurl 7.18.2)</p>
-
-<p style="margin-left:11%;">CURLFORM_ARRAY</p>
-
-<p style="margin-left:22%;">Another possibility to send
-options to curl_formadd() is the <b>CURLFORM_ARRAY</b>
-option, that passes a struct curl_forms array pointer as its
-value. Each curl_forms structure element has a
-CURLformoption and a char pointer. The final element in the
-array must be a CURLFORM_END. All available options can be
-used in an array, except the CURLFORM_ARRAY option itself!
-The last argument in such an array must always be
-<b>CURLFORM_END</b>.</p>
-
-<p style="margin-left:11%;">CURLFORM_CONTENTHEADER</p>
-
-<p style="margin-left:22%;">specifies extra headers for the
-form POST section. This takes a curl_slist prepared in the
-usual way using <b>curl_slist_append</b> and appends the
-list of headers to those libcurl automatically generates.
-The list must exist while the POST occurs, if you free it
-before the post completes you may experience problems.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When
-you’ve passed the HttpPost pointer to
-<i>curl_easy_setopt(3)</i> (using the
-<i>CURLOPT_HTTPPOST</i> option), you must not free the list
-until after you’ve called <i>curl_easy_cleanup(3)</i>
-for the curl handle.</p>
-
-<p style="margin-left:22%; margin-top: 1em">See example
-below.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">0 means
-everything was ok, non-zero means an error occurred
-corresponding to a CURL_FORMADD_* constant defined in
-<i><curl/curl.h></i></p>
-
-<h2>EXAMPLE
-<a name="EXAMPLE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">struct
-curl_httppost* post = NULL; <br>
-struct curl_httppost* last = NULL; <br>
-char namebuffer[] = "name buffer"; <br>
-long namelength = strlen(namebuffer); <br>
-char buffer[] = "test buffer"; <br>
-char htmlbuffer[] = "<HTML>test
-buffer</HTML>"; <br>
-long htmlbufferlength = strlen(htmlbuffer); <br>
-struct curl_forms forms[3]; <br>
-char file1[] = "my-face.jpg"; <br>
-char file2[] = "your-face.jpg"; <br>
-/* add null character into htmlbuffer, to demonstrate that
-<br>
-transfers of buffers containing null characters actually
-work <br>
-*/ <br>
-htmlbuffer[8] = ’\0’;</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* Add simple
-name/content section */ <br>
-curl_formadd(&post, &last, CURLFORM_COPYNAME,
-"name", <br>
-CURLFORM_COPYCONTENTS, "content",
-CURLFORM_END);</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* Add simple
-name/content/contenttype section */ <br>
-curl_formadd(&post, &last, CURLFORM_COPYNAME,
-"htmlcode", <br>
-CURLFORM_COPYCONTENTS,
-"<HTML></HTML>", <br>
-CURLFORM_CONTENTTYPE, "text/html",
-CURLFORM_END);</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* Add
-name/ptrcontent section */ <br>
-curl_formadd(&post, &last, CURLFORM_COPYNAME,
-"name_for_ptrcontent", <br>
-CURLFORM_PTRCONTENTS, buffer, CURLFORM_END);</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* Add
-ptrname/ptrcontent section */ <br>
-curl_formadd(&post, &last, CURLFORM_PTRNAME,
-namebuffer, <br>
-CURLFORM_PTRCONTENTS, buffer, CURLFORM_NAMELENGTH, <br>
-namelength, CURLFORM_END);</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* Add
-name/ptrcontent/contenttype section */ <br>
-curl_formadd(&post, &last, CURLFORM_COPYNAME,
-"html_code_with_hole", <br>
-CURLFORM_PTRCONTENTS, htmlbuffer, <br>
-CURLFORM_CONTENTSLENGTH, htmlbufferlength, <br>
-CURLFORM_CONTENTTYPE, "text/html",
-CURLFORM_END);</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* Add simple
-file section */ <br>
-curl_formadd(&post, &last, CURLFORM_COPYNAME,
-"picture", <br>
-CURLFORM_FILE, "my-face.jpg", CURLFORM_END);</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* Add
-file/contenttype section */ <br>
-curl_formadd(&post, &last, CURLFORM_COPYNAME,
-"picture", <br>
-CURLFORM_FILE, "my-face.jpg", <br>
-CURLFORM_CONTENTTYPE, "image/jpeg",
-CURLFORM_END);</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* Add two file
-section */ <br>
-curl_formadd(&post, &last, CURLFORM_COPYNAME,
-"pictures", <br>
-CURLFORM_FILE, "my-face.jpg", <br>
-CURLFORM_FILE, "your-face.jpg", CURLFORM_END);</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* Add two file
-section using CURLFORM_ARRAY */ <br>
-forms[0].option = CURLFORM_FILE; <br>
-forms[0].value = file1; <br>
-forms[1].option = CURLFORM_FILE; <br>
-forms[1].value = file2; <br>
-forms[2].option = CURLFORM_END;</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* Add a buffer
-to upload */ <br>
-curl_formadd(&post, &last, <br>
-CURLFORM_COPYNAME, "name", <br>
-CURLFORM_BUFFER, "data", <br>
-CURLFORM_BUFFERPTR, record, <br>
-CURLFORM_BUFFERLENGTH, record_length, <br>
-CURLFORM_END);</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* no option
-needed for the end marker */ <br>
-curl_formadd(&post, &last, CURLFORM_COPYNAME,
-"pictures", <br>
-CURLFORM_ARRAY, forms, CURLFORM_END); <br>
-/* Add the content of a file as a normal post text value */
-<br>
-curl_formadd(&post, &last, CURLFORM_COPYNAME,
-"filecontent", <br>
-CURLFORM_FILECONTENT, ".bashrc", CURLFORM_END);
-<br>
-/* Set the form info */ <br>
-curl_easy_setopt(curl, CURLOPT_HTTPPOST, post);</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_easy_setopt</b>(3),
-<b>curl_formfree</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_formadd.pdf b/src/other/curl/docs/libcurl/curl_formadd.pdf
deleted file mode 100644
index 82a1c2e..0000000
Binary files a/src/other/curl/docs/libcurl/curl_formadd.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_formfree.html b/src/other/curl/docs/libcurl/curl_formfree.html
deleted file mode 100644
index c1a3d6f..0000000
--- a/src/other/curl/docs/libcurl/curl_formfree.html
+++ /dev/null
@@ -1,80 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:13 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_formfree</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_formfree</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_formfree -
-free a previously build multipart/formdata HTTP POST
-chain</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>void
-curl_formfree(struct curl_httppost *</b><i>form);</i></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_formfree()
-is used to clean up data previously built/appended with
-<i>curl_formadd(3)</i>. This must be called when the data
-has been used, which typically means after
-<i>curl_easy_perform(3)</i> has been called.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">None</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_formadd</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_formfree.pdf b/src/other/curl/docs/libcurl/curl_formfree.pdf
deleted file mode 100644
index 331b3e2..0000000
Binary files a/src/other/curl/docs/libcurl/curl_formfree.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_formget.html b/src/other/curl/docs/libcurl/curl_formget.html
deleted file mode 100644
index f033410..0000000
--- a/src/other/curl/docs/libcurl/curl_formget.html
+++ /dev/null
@@ -1,130 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:20 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_formget</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_formget</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#EXAMPLE">EXAMPLE</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_formget -
-serialize a previously built multipart/formdata HTTP POST
-chain</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>void
-curl_formget(struct curl_httppost *</b><i>form,</i> <b>void
-*</b><i>arg,</i> <b>curl_formget_callback</b>
-<i>append</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_formget()
-is used to serialize data previously built/appended with
-<i>curl_formadd(3)</i>. Accepts a void pointer as second
-argument which will be passed to the curl_formget_callback
-function.</p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>typedef
-size_t (*curl_formget_callback)(void *</b><i>arg,</i>
-<b>const char *</b><i>buf,</i> <b>size_t</b>
-<i>len</i><b>);</b></p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-curl_formget_callback will be executed for each part of the
-HTTP POST <br>
-chain. The void *arg pointer will be the one passed as
-second argument to <br>
-curl_formget(). The character buffer passed to it must not
-be freed. The <br>
-callback should return the buffer length passed to it on
-success.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">0 means
-everything was ok, non-zero means an error occurred</p>
-
-<h2>EXAMPLE
-<a name="EXAMPLE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">size_t
-print_httppost_callback(void *arg, const char *buf, size_t
-len) <br>
-{ <br>
-fwrite(buf, len, 1, stdout); <br>
-(*(size_t *) arg) += len; <br>
-return len; <br>
-} <br>
-size_t print_httppost(struct curl_httppost *post) <br>
-{ <br>
-size_t total_size = 0; <br>
-if(curl_formget(post, &total_size,
-print_httppost_callback)) { <br>
-return (size_t) -1; <br>
-} <br>
-return total_size; <br>
-}</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-was added in libcurl 7.15.5</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_formadd</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_formget.pdf b/src/other/curl/docs/libcurl/curl_formget.pdf
deleted file mode 100644
index be57a1b..0000000
Binary files a/src/other/curl/docs/libcurl/curl_formget.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_free.html b/src/other/curl/docs/libcurl/curl_free.html
deleted file mode 100644
index 91a8518..0000000
--- a/src/other/curl/docs/libcurl/curl_free.html
+++ /dev/null
@@ -1,71 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:14 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_free</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_free</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_free -
-reclaim memory that has been obtained through a libcurl
-call</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>void
-curl_free( char *</b><i>ptr</i> <b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_free
-reclaims memory that has been obtained through a libcurl
-call. Use curl_free() instead of free() to avoid anomalies
-that can result from differences in memory management
-between your application and libcurl.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>curl_unescape(3)</i></p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_free.pdf b/src/other/curl/docs/libcurl/curl_free.pdf
deleted file mode 100644
index 1714ca3..0000000
Binary files a/src/other/curl/docs/libcurl/curl_free.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_getdate.html b/src/other/curl/docs/libcurl/curl_getdate.html
deleted file mode 100644
index c65090b..0000000
--- a/src/other/curl/docs/libcurl/curl_getdate.html
+++ /dev/null
@@ -1,200 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:13 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_getdate</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_getdate</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#PARSING DATES AND TIMES">PARSING DATES AND TIMES</a><br>
-<a href="#EXAMPLES">EXAMPLES</a><br>
-<a href="#STANDARDS">STANDARDS</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#REWRITE">REWRITE</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_getdate -
-Convert a date string to number of seconds since January 1,
-1970</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>time_t
-curl_getdate(char *</b><i>datestring</i><b>, time_t
-*</b><i>now</i> <b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-returns the number of seconds since January 1st 1970 in the
-UTC time zone, for the date and time that the
-<i>datestring</i> parameter specifies. The <i>now</i>
-parameter is not used, pass a NULL there.</p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>NOTE:</b>
-This function was rewritten for the 7.12.2 release and this
-documentation covers the functionality of the new one. The
-new one is not feature-complete with the old one, but most
-of the formats supported by the new one was supported by the
-old too.</p>
-
-<h2>PARSING DATES AND TIMES
-<a name="PARSING DATES AND TIMES"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A
-"date" is a string containing several items
-separated by whitespace. The order of the items is
-immaterial. A date string may contain many flavors of items:
-<b><br>
-calendar date items</b></p>
-
-<p style="margin-left:23%;">Can be specified several ways.
-Month names can only be three-letter english abbreviations,
-numbers can be zero-prefixed and the year may use 2 or 4
-digits. Examples: 06 Nov 1994, 06-Nov-94 and Nov-94 6.</p>
-
-<p style="margin-left:11%;"><b>time of the day
-items</b></p>
-
-<p style="margin-left:23%;">This string specifies the time
-on a given day. You must specify it with 6 digits with two
-colons: HH:MM:SS. To not include the time in a date string,
-will make the function assume 00:00:00. Example:
-18:19:21.</p>
-
-<p style="margin-left:11%;"><b>time zone items</b></p>
-
-<p style="margin-left:23%;">Specifies international time
-zone. There are a few acronyms supported, but in general you
-should instead use the specific relative time compared to
-UTC. Supported formats include: -1200, MST, +0100.</p>
-
-<p style="margin-left:11%;"><b>day of the week
-items</b></p>
-
-<p style="margin-left:23%;">Specifies a day of the week.
-Days of the week may be spelled out in full (using english):
-‘Sunday’, ‘Monday’, etc or they may
-be abbreviated to their first three letters. This is usually
-not info that adds anything.</p>
-
-<p style="margin-left:11%;"><b>pure numbers</b></p>
-
-<p style="margin-left:23%;">If a decimal number of the form
-YYYYMMDD appears, then YYYY is read as the year, MM as the
-month number and DD as the day of the month, for the
-specified calendar date.</p>
-
-<h2>EXAMPLES
-<a name="EXAMPLES"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Sun, 06 Nov
-1994 08:49:37 GMT <br>
-Sunday, 06-Nov-94 08:49:37 GMT <br>
-Sun Nov 6 08:49:37 1994 <br>
-06 Nov 1994 08:49:37 GMT <br>
-06-Nov-94 08:49:37 GMT <br>
-Nov 6 08:49:37 1994 <br>
-06 Nov 1994 08:49:37 <br>
-06-Nov-94 08:49:37 <br>
-1994 Nov 6 08:49:37 <br>
-GMT 08:49:37 06-Nov-94 Sunday <br>
-94 6 Nov 08:49:37 <br>
-1994 Nov 6 <br>
-06-Nov-94 <br>
-Sun Nov 6 94 <br>
-1994.Nov.6 <br>
-Sun/Nov/6/94/GMT <br>
-Sun, 06 Nov 1994 08:49:37 CET <br>
-06 Nov 1994 08:49:37 EST <br>
-Sun, 12 Sep 2004 15:05:58 -0700 <br>
-Sat, 11 Sep 2004 21:32:11 +0200 <br>
-20040912 15:05:58 -0700 <br>
-20040911 +0200</p>
-
-<h2>STANDARDS
-<a name="STANDARDS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This parser was
-written to handle date formats specified in RFC 822
-(including the update in RFC 1123) using time zone name or
-time zone delta and RFC 850 (obsoleted by RFC 1036) and ANSI
-C’s asctime() format. These formats are the only ones
-RFC2616 says HTTP applications may use.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-returns -1 when it fails to parse the date string. Otherwise
-it returns the number of seconds as described.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If the year is
-larger than 2037 on systems with 32 bit time_t, this
-function will return 0x7fffffff (since that is the largest
-possible signed 32 bit number).</p>
-
-<p style="margin-left:11%; margin-top: 1em">Having a 64 bit
-time_t is not a guarantee that dates beyond 03:14:07 UTC,
-January 19, 2038 will work fine. On systems with a 64 bit
-time_t but with a crippled mktime(), <i>curl_getdate</i>
-will return -1 in this case.</p>
-
-<h2>REWRITE
-<a name="REWRITE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The former
-version of this function was built with yacc and was not
-only very large, it was also never quite understood and it
-wasn’t possible to build with non-GNU tools since only
-GNU Bison could make it thread-safe!</p>
-
-<p style="margin-left:11%; margin-top: 1em">The rewrite was
-done for 7.12.2. The new one is much smaller and uses
-simpler code.</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_getdate.pdf b/src/other/curl/docs/libcurl/curl_getdate.pdf
deleted file mode 100644
index 7630c98..0000000
Binary files a/src/other/curl/docs/libcurl/curl_getdate.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_getenv.html b/src/other/curl/docs/libcurl/curl_getenv.html
deleted file mode 100644
index f2d6f87..0000000
--- a/src/other/curl/docs/libcurl/curl_getenv.html
+++ /dev/null
@@ -1,107 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:13 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_getenv</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_getenv</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#NOTE">NOTE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_getenv -
-return value for environment name</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>char
-*curl_getenv(const char *</b><i>name</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_getenv()
-is a portable wrapper for the getenv() function, meant to
-emulate its behaviour and provide an identical interface for
-all operating systems libcurl builds on (including
-win32).</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-will be removed from the public libcurl API in a near
-future. It will instead be made "available" by
-source code access only, and then as curlx_getenv().</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">If successful,
-curl_getenv() returns a pointer to the value of the
-specified environment. The memory it refers to is malloc()ed
-so the application must free() this when the data is no
-longer needed. When <i>curl_getenv(3)</i> fails to find the
-specified name, it returns a null pointer.</p>
-
-<h2>NOTE
-<a name="NOTE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Under unix
-operating systems, there isn’t any point in returning
-an allocated memory, although other systems won’t work
-properly if this isn’t done. The unix implementation
-thus has to suffer slightly from the drawbacks of other
-systems.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>getenv</b>(3C),</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_getenv.pdf b/src/other/curl/docs/libcurl/curl_getenv.pdf
deleted file mode 100644
index a98f006..0000000
Binary files a/src/other/curl/docs/libcurl/curl_getenv.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_global_cleanup.html b/src/other/curl/docs/libcurl/curl_global_cleanup.html
deleted file mode 100644
index 2a417da..0000000
--- a/src/other/curl/docs/libcurl/curl_global_cleanup.html
+++ /dev/null
@@ -1,89 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:15 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_global_cleanup</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_global_cleanup</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_global_cleanup
-- global libcurl cleanup</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>void
-curl_global_cleanup(void);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-releases resources acquired by
-<b>curl_global_init(3)</b>.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You should call
-<i>curl_global_cleanup(3)</i> once for each call you make to
-<i>curl_global_init(3)</i>, after you are done using
-libcurl.</p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>This
-function is not thread safe.</b> You must not call it when
-any other thread in the program (i.e. a thread sharing the
-same memory) is running. This doesn’t just mean no
-other thread that is using libcurl. Because
-<b>curl_global_cleanup(3)</b> calls functions of other
-libraries that are similarly thread unsafe, it could
-conflict with any other thread that uses these other
-libraries.</p>
-
-<p style="margin-left:11%; margin-top: 1em">See the
-description in <b>libcurl(3)</b> of global environment
-requirements for details of how to use this function.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_global_init</b>(3),
-<b>libcurl</b>(3),</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_global_cleanup.pdf b/src/other/curl/docs/libcurl/curl_global_cleanup.pdf
deleted file mode 100644
index cea901f..0000000
Binary files a/src/other/curl/docs/libcurl/curl_global_cleanup.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_global_init.html b/src/other/curl/docs/libcurl/curl_global_init.html
deleted file mode 100644
index ed663df..0000000
--- a/src/other/curl/docs/libcurl/curl_global_init.html
+++ /dev/null
@@ -1,136 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:15 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_global_init</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_global_init</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#FLAGS">FLAGS</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_global_init
-- Global libcurl initialisation</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURLcode
-curl_global_init(long</b> <i>flags</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-sets up the program environment that libcurl needs. Think of
-it as an extension of the library loader.</p>
-
-<p style="margin-left:11%; margin-top: 1em">This function
-must be called at least once within a program (a program is
-all the code that shares a memory space) before the program
-calls any other function in libcurl. The environment it sets
-up is constant for the life of the program and is the same
-for every program, so multiple calls have the same effect as
-one call.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The flags
-option is a bit pattern that tells libcurl exactly what
-features to init, as described below. Set the desired bits
-by ORing the values together. In normal operation, you must
-specify CURL_GLOBAL_ALL. Don’t use any other value
-unless you are familiar with it and mean to control internal
-operations of libcurl.</p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>This
-function is not thread safe.</b> You must not call it when
-any other thread in the program (i.e. a thread sharing the
-same memory) is running. This doesn’t just mean no
-other thread that is using libcurl. Because
-<i>curl_global_init()</i> calls functions of other libraries
-that are similarly thread unsafe, it could conflict with any
-other thread that uses these other libraries.</p>
-
-<p style="margin-left:11%; margin-top: 1em">See the
-description in <b>libcurl</b>(3) of global environment
-requirements for details of how to use this function.</p>
-
-<h2>FLAGS
-<a name="FLAGS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURL_GLOBAL_ALL</b></p>
-
-<p style="margin-left:18%;">Initialize everything possible.
-This sets all known bits.</p>
-
-<p style="margin-left:11%;"><b>CURL_GLOBAL_SSL</b></p>
-
-<p style="margin-left:18%;">Initialize SSL</p>
-
-<p style="margin-left:11%;"><b>CURL_GLOBAL_WIN32</b></p>
-
-<p style="margin-left:18%;">Initialize the Win32 socket
-libraries.</p>
-
-<p style="margin-left:11%;"><b>CURL_GLOBAL_NOTHING</b></p>
-
-<p style="margin-left:18%;">Initialise nothing extra. This
-sets no bit.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">If this
-function returns non-zero, something went wrong and you
-cannot use the other curl functions.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_global_init_mem</b>(3),
-<b>curl_global_cleanup</b>(3), <b>curl_easy_init</b>(3)
-<b>libcurl</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_global_init.pdf b/src/other/curl/docs/libcurl/curl_global_init.pdf
deleted file mode 100644
index dc1aa85..0000000
Binary files a/src/other/curl/docs/libcurl/curl_global_init.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_global_init_mem.html b/src/other/curl/docs/libcurl/curl_global_init_mem.html
deleted file mode 100644
index f818ad6..0000000
--- a/src/other/curl/docs/libcurl/curl_global_init_mem.html
+++ /dev/null
@@ -1,116 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:18 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_global_init_mem</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_global_init_mem</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#CAUTION">CAUTION</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_global_init_mem
-- Global libcurl initialisation with memory callbacks</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h> <br>
-CURLcode curl_global_init_mem(long flags, <br>
-curl_malloc_callback m, <br>
-curl_free_callback f, <br>
-curl_realloc_callback r, <br>
-curl_strdup_callback s, <br>
-curl_calloc_callback c );</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-works exactly as <i>curl_global_init(3)</i> with one
-addition: it allows the application to set callbacks to
-replace the otherwise used internal memory functions.</p>
-
-<p style="margin-left:11%; margin-top: 1em">This man page
-only adds documentation for the callbacks, see the
-<i>curl_global_init(3)</i> man page for all the rest. When
-you use this function, all callback arguments must be set to
-valid function pointers.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The prototypes
-for the given callbacks should match these: <br>
-void *malloc_callback(size_t size);</p>
-
-<p style="margin-left:22%;">To replace malloc()</p>
-
-<p style="margin-left:11%;">void free_callback(void
-*ptr);</p>
-
-<p style="margin-left:22%;">To replace free()</p>
-
-<p style="margin-left:11%;">void *realloc_callback(void
-*ptr, size_t size);</p>
-
-<p style="margin-left:22%;">To replace realloc()</p>
-
-<p style="margin-left:11%;">char *strdup_callback(const
-char *str);</p>
-
-<p style="margin-left:22%;">To replace strdup()</p>
-
-<p style="margin-left:11%;">void *calloc_callback(size_t
-nmemb, size_t size);</p>
-
-<p style="margin-left:22%;">To replace calloc()</p>
-
-<h2>CAUTION
-<a name="CAUTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Manipulating
-these gives considerable powers to the application to
-severly screw things up for libcurl. Take care!</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_global_init</b>(3),
-<b>curl_global_cleanup</b>(3),</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_global_init_mem.pdf b/src/other/curl/docs/libcurl/curl_global_init_mem.pdf
deleted file mode 100644
index 5ee4c4b..0000000
Binary files a/src/other/curl/docs/libcurl/curl_global_init_mem.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_mprintf.html b/src/other/curl/docs/libcurl/curl_mprintf.html
deleted file mode 100644
index 8329d4e..0000000
--- a/src/other/curl/docs/libcurl/curl_mprintf.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:15 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_printf</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_printf</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_maprintf,
-curl_mfprintf, curl_mprintf, curl_msnprintf, curl_msprintf
-curl_mvaprintf, curl_mvfprintf, curl_mvprintf,
-curl_mvsnprintf, curl_mvsprintf - formatted output
-conversion</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/mprintf.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>int
-curl_mprintf(const char *</b><i>format</i><b>, ...); <br>
-int curl_mfprintf(FILE *</b><i>fd</i><b>, const char
-*</b><i>format</i><b>, ...); <br>
-int curl_msprintf(char *</b><i>buffer</i><b>, const char
-*</b><i>format</i><b>, ...); <br>
-int curl_msnprintf(char *</b><i>buffer</i><b>, size_t</b>
-<i>maxlength</i><b>, const char *</b><i>format</i><b>, ...);
-<br>
-int curl_mvprintf(const char *</b><i>format</i><b>,
-va_list</b> <i>args</i><b>); <br>
-int curl_mvfprintf(FILE *</b><i>fd</i><b>, const char
-*</b><i>format</i><b>, va_list</b> <i>args</i><b>); <br>
-int curl_mvsprintf(char *</b><i>buffer</i><b>, const char
-*</b><i>format</i><b>, va_list</b> <i>args</i><b>); <br>
-int curl_mvsnprintf(char *</b><i>buffer</i><b>, size_t</b>
-<i>maxlength</i><b>, const char *</b><i>format</i><b>,
-va_list</b> <i>args</i><b>); <br>
-char *curl_maprintf(const char *</b><i>format</i><b>, ...);
-<br>
-char *curl_mvaprintf(const char *</b><i>format</i><b>,
-va_list</b> <i>args</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">These are all
-functions that produce output according to a format string
-and given arguments. These are mostly clones of the
-well-known C-style functions and there will be no detailed
-explanation of all available formatting rules and usage
-here.</p>
-
-<p style="margin-left:11%; margin-top: 1em">See this table
-for notable exceptions.</p>
-
-<p style="margin-left:22%;"><b>curl_mprintf()</b></p>
-
-<p style="margin-left:32%;">Normal printf() clone.</p>
-
-<p style="margin-left:22%;"><b>curl_mfprintf()</b></p>
-
-<p style="margin-left:32%;">Normal fprintf() clone.</p>
-
-<p style="margin-left:22%;"><b>curl_msprintf()</b></p>
-
-<p style="margin-left:32%;">Normal sprintf() clone.</p>
-
-<p style="margin-left:22%;"><b>curl_msnprintf()</b></p>
-
-<p style="margin-left:32%;">snprintf() clone. Many systems
-don’t have this. It is just like <b>sprintf</b> but
-with an extra argument after the buffer that specifies the
-length of the target buffer.</p>
-
-<p style="margin-left:22%;"><b>curl_mvprintf()</b></p>
-
-<p style="margin-left:32%;">Normal vprintf() clone.</p>
-
-<p style="margin-left:22%;"><b>curl_mvfprintf()</b></p>
-
-<p style="margin-left:32%;">Normal vfprintf() clone.</p>
-
-<p style="margin-left:22%;"><b>curl_mvsprintf()</b></p>
-
-<p style="margin-left:32%;">Normal vsprintf() clone.</p>
-
-<p style="margin-left:22%;"><b>curl_mvsnprintf()</b></p>
-
-<p style="margin-left:32%;">vsnprintf() clone. Many systems
-don’t have this. It is just like <b>vsprintf</b> but
-with an extra argument after the buffer that specifies the
-length of the target buffer.</p>
-
-<p style="margin-left:22%;"><b>curl_maprintf()</b></p>
-
-<p style="margin-left:32%;">Like printf() but returns the
-output string as a malloc()ed string. The returned string
-must be free()ed by the receiver.</p>
-
-<p style="margin-left:22%;"><b>curl_mvaprintf()</b></p>
-
-<p style="margin-left:32%;">Like curl_maprintf() but takes
-a va_list pointer argument instead of a variable amount of
-arguments.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To easily use
-all these cloned functions instead of the normal ones,
-#define _MPRINTF_REPLACE before you include the
-<curl/mprintf.h> file. Then all the normal names like
-printf, fprintf, sprintf etc will use the curl-functions
-instead.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">These function
-will be removed from the public libcurl API in a near
-future. They will instead be made "available" by
-source code access only, and then as curlx_-prefixed
-functions. See lib/README.curlx for further details.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The
-<b>curl_maprintf</b> and <b>curl_mvaprintf</b> functions
-return a pointer to a newly allocated string, or NULL if it
-failed.</p>
-
-<p style="margin-left:11%; margin-top: 1em">All other
-functions return the number of characters they actually
-outputted.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>printf</b>(3),
-<b>sprintf</b>(3), <b>fprintf</b>(3), <b>vprintf</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_mprintf.pdf b/src/other/curl/docs/libcurl/curl_mprintf.pdf
deleted file mode 100644
index 6519617..0000000
Binary files a/src/other/curl/docs/libcurl/curl_mprintf.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_multi_add_handle.html b/src/other/curl/docs/libcurl/curl_multi_add_handle.html
deleted file mode 100644
index 01c07cb..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_add_handle.html
+++ /dev/null
@@ -1,108 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:15 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_add_handle</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_add_handle</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_add_handle
-- add an easy handle to a multi session</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">#include
-<curl/curl.h></p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode
-curl_multi_add_handle(CURLM *multi_handle, CURL
-*easy_handle);</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Adds a standard
-easy handle to the multi stack. This function call will make
-this <i>multi_handle</i> control the specified
-<i>easy_handle</i>. Furthermore, libcurl now initiates the
-connection associated with the specified
-<i>easy_handle</i>.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When an easy
-handle has been added to a multi stack, you can not and you
-must not use <i>curl_easy_perform(3)</i> on that handle!</p>
-
-<p style="margin-left:11%; margin-top: 1em">If the easy
-handle is not set to use a shared (CURLOPT_SHARE) or global
-DNS cache (CURLOPT_DNS_USE_GLOBAL_CACHE), it will be made to
-use the DNS cache that is shared between all easy handles
-within the multi handle when <i>curl_multi_add_handle(3)</i>
-is called.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The easy handle
-will remain added until you remove it again with
-<i>curl_multi_remove_handle(3)</i>. You should remove the
-easy handle from the multi stack before you terminate first
-the easy handle and then the multi handle:</p>
-
-<p style="margin-left:11%; margin-top: 1em">1 -
-<i>curl_multi_remove_handle(3)</i></p>
-
-<p style="margin-left:11%; margin-top: 1em">2 -
-<i>curl_easy_cleanup(3)</i></p>
-
-<p style="margin-left:11%; margin-top: 1em">3 -
-<i>curl_multi_cleanup(3)</i></p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode type,
-general libcurl multi interface error code.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_multi_cleanup</b>(3),<b>curl_multi_init</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_add_handle.pdf b/src/other/curl/docs/libcurl/curl_multi_add_handle.pdf
deleted file mode 100644
index 9dc3ad9..0000000
Binary files a/src/other/curl/docs/libcurl/curl_multi_add_handle.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_multi_assign.html b/src/other/curl/docs/libcurl/curl_multi_assign.html
deleted file mode 100644
index d22089d..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_assign.html
+++ /dev/null
@@ -1,131 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:20 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_assign</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_assign</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#TYPICAL USAGE">TYPICAL USAGE</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_assign
-− set data to association with an internal socket</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">#include
-<curl/curl.h></p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode
-curl_multi_assign(CURLM *multi_handle, curl_socket_t sockfd,
-<br>
-void *sockptr);</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-assigns an association in the multi handle between the given
-socket and a private pointer of the application. This is
-(only) useful for <i>curl_multi_socket(3)</i> uses.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When set, the
-<i>sockptr</i> pointer will be passed to all future socket
-callbacks for the specific <i>sockfd</i> socket.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If the given
-<i>sockfd</i> isn’t already in use by libcurl, this
-function will return an error.</p>
-
-<p style="margin-left:11%; margin-top: 1em">libcurl only
-keeps one single pointer associated with a socket, so
-calling this function several times for the same socket will
-make the last set pointer get used.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The idea here
-being that this association (socket to private pointer) is
-something that just about every application that uses this
-API will need and then libcurl can just as well do it since
-it already has an internal hash table lookup for this.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The standard
-CURLMcode for multi interface error codes.</p>
-
-<h2>TYPICAL USAGE
-<a name="TYPICAL USAGE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">In a typical
-application you allocate a struct or at least use some kind
-of semi-dynamic data for each socket that we must wait for
-action on when using the <i>curl_multi_socket(3)</i>
-approach.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When our
-socket-callback gets called by libcurl and we get to know
-about yet another socket to wait for, we can use
-<i>curl_multi_assign(3)</i> to point out the particular data
-so that when we get updates about this same socket again, we
-don’t have to find the struct associated with this
-socket by ourselves.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-was added in libcurl 7.15.5, although not deemed stable
-yet.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_multi_setopt</b>(3),
-<b>curl_multi_socket</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_assign.pdf b/src/other/curl/docs/libcurl/curl_multi_assign.pdf
deleted file mode 100644
index 0aeb5f7..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_assign.pdf
+++ /dev/null
@@ -1,117 +0,0 @@
-%PDF-1.4
-%Ç쏢
-5 0 obj
-<</Length 6 0 R/Filter /FlateDecode>>
-stream
-xœ½WÛnÛH}×W4°¡«ÓÍ;1‹4Yc s[É °M¶$Ž)RÃKýÃüÊüãœê&)Šq’·…Kf7YU§Î9Õü“	.™ Ÿî3ÙÏ^Ýl[Ïûÿ·³?gRo`ÝG²g?¯±)¤ëÍÌÜ'Y`³ÀuÙz?“2ä^ÄÖÇÙ½•´UþyßæMö9®ël[<XÎÃœåÙ#­Ì¶'¸õ&.Ú8gÏoŸÿoýël!¸-ñÔ±#Äæ‘G៭ofÖÛåüÒŪôÜAJëtf½¹ž¯ÿ%k-¤MËâ9²¿Y­–ÆMÌš’áb™dq“•;fÍŽÅËŠFU2ÆÒÓ\
-K5:Ë‹ÜHn!}ê\î>½}÷þnuw™‘Þ¢³±þ•IÞ¦Šý›2zE¿øî?´Ýv©ÈõË{ëõ‡Û›7I‰MÏ@¥ÙKsqi®®Ì>eÄ£Ðs<¤ú¹ÑyoÒ«Z‚.C._JŠ«¿A3KÙKºïÐTóŸLãr%°Gÿ÷úîõíêýzõîí·Š<š*Öz—ÕlÓ‰ÆÙ”TÔcø³‚5;Åt…ÌTÈUsTÊ,l3
-„z¤G©Û¾9Q—þE‹NO£ˆÛaºÝbQK›KÑßDÀaAºÜq¢±YÌUÐÖ]ŸûJèÆ#å9ê¢Å¥æ+7úIN(¹zµ¨´øpȳDÃÀ™ÿ¬²ÈOT[«M›³MY¤¥èåéãy^—Ј3À´‡ŠòóÎ]~RCÖ!B!ú…ƈñ¢“èutÆYÔ\?Öv.!4b.~ß¡AÐÔui’¡ #¢ÃìÞ¢Ä$¨فELëd5PGòÀ=ïîÑ;fy&°Ø¢R­Z\Ø´M[)Ö³?²ýz—`í1NžjÂKó¦>¨$û+éb
©a?¢}•™°-hg’˜ðÐm5…í "72sBx“+TV›çH‹
-ݏŽ´âÂN`¸÷,„ßKÔÊêâ…6®Cƒå¡Œzê7cúB¦Ñ€z^©8=‘ÑqöxêýœÚ;V±îJ¥Ð„‚”¬ª
-üô<«ÃC
-Aƒ¢ƒÖìCîžÆˆÛŒÜ•éE–R‡×Э¬Øægåô¾{ž6ü
-tÓqß$ÃZõ؁6þ°¯`üM¶WŒtý€o2\êxÿ55.ûøIÇî°}X„ƒÃ<½¾äqÝèÕ°Åw4"5Ò‹<>ÂTF¾Id;³TÅl§*2MƒEÜ@Æ&û0¥/ɉœ®ŸÆ[%éÖýÕ.…@u¹WˆØÿ£E-ñcÙ6L]¨€|+ò~¤ªO“ƪNÆ!¦QÀ}w4e„ëèmÆ@Mlr+SýòýÊô¤P Y{C†Õó0wM¢5;*lKK–5DÃDÑ—¸ÓÃ.®/Îø{§‡‡M㻳òøÔÍËò©=tìÉà™/¾sr¸·n¯×nß²sé¸<ò¥µ¼ùp=5Æ¡ZÓëºAq•²ó‘Â™Ñ©SÜ'‚uhq2ÚWóeàÓûÕëå
ûp·œ{H)°#ë—ogDG·@—¿‚°ætÀ$ËÇ#Ê–,»ÄŸŠÜTmÒ0d„FåŠOVCìaOTn }¶HOE¼ÏsX£UœìŒà€¼k»<œQ-ú‹—BÕ”8ÒÙ±ŽƒZcô—¿ S#j´µ¡°šŽpŸ‡áÿiÞÀªD½ÝÌ
<îž•ßQþÞß²­
-íHŒE?É@jm`ÿÙ͵€ÈÖ8ÀSQö~EO†ø.·ÜãÙ0FláÈ~ZhuŸô™©bUf†«G^g/Gýh)8¨×k[ÐûHÓõ TtÁŠáhwuŸÞØà£]Ç1iÒ‡N/ìì@°É(uؾýuÇï$m	qÚq‡¾•ÆòÕMþWM–´y\šb¶Qc:€Û–àGƵ+ÑèÐéK¼¶„8‡L&Ëd¨ÄÛ9”ºÒ`Å=8-1Þ/gLˆ¾cÍ®?»jÜð9ÌŸ…­]ž°ÿÂÎüû„ÓïéuS²¿Œaö¢ÎcSÌÐsקlA3P²Vù—¹¤´=×êg!¹	MßôÒ¥Ñr¶!ì† ˏl9$	°|OöÝ[Ý,^ݬ֟&:ò¸ã†áÒËw‘	 /iŠz²óP@Çqš»‚i5»²ÝîÈÍR¥öØV—?õ'¿ï½^_³åÍÝ»óÛÔä­pì!ª)Íe!Ð|/KóêòIäûçóò¥#;21ïÀ'Å„ã'“džp8˜Ipè1:MÚP³Þ=¢_Ï4’Ü	Ï/
9³…ðõNÈ]·¿CÒ¥ëõì7üükEˆ9endstream
-endobj
-6 0 obj
-1774
-endobj
-4 0 obj
-<</Type/Page/MediaBox [0 0 612 792]
-/Rotate 0/Parent 3 0 R
-/Resources<</ProcSet[/PDF /Text]
-/ExtGState 11 0 R
-/Font 12 0 R
->>
-/Contents 5 0 R
->>
-endobj
-3 0 obj
-<< /Type /Pages /Kids [
-4 0 R
-] /Count 1
->>
-endobj
-1 0 obj
-<</Type /Catalog /Pages 3 0 R
-/Metadata 14 0 R
->>
-endobj
-7 0 obj
-<</Type/ExtGState
-/OPM 1>>endobj
-11 0 obj
-<</R7
-7 0 R>>
-endobj
-12 0 obj
-<</R10
-10 0 R/R9
-9 0 R/R8
-8 0 R>>
-endobj
-10 0 obj
-<</BaseFont/Times-Italic/Type/Font
-/Subtype/Type1>>
-endobj
-9 0 obj
-<</BaseFont/Times-Bold/Type/Font
-/Subtype/Type1>>
-endobj
-8 0 obj
-<</BaseFont/Times-Roman/Type/Font
-/Encoding 13 0 R/Subtype/Type1>>
-endobj
-13 0 obj
-<</Type/Encoding/Differences[
-140/fi
-173/minus]>>
-endobj
-14 0 obj
-<</Type/Metadata
-/Subtype/XML/Length 1325>>stream
-<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d'?>
-<?adobe-xap-filters esc="CRLF"?>
-<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
-<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='4e4f3d39-112b-11ed-0000-cb573b64c62' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.04'/>
-<rdf:Description rdf:about='4e4f3d39-112b-11ed-0000-cb573b64c62' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2012-07-28T16:48:40-07:00</xmp:ModifyDate>
-<xmp:CreateDate>2012-07-28T16:48:40-07:00</xmp:CreateDate>
-<xmp:CreatorTool>groff version 1.21</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='4e4f3d39-112b-11ed-0000-cb573b64c62' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:4e4f3d39-112b-11ed-0000-cb573b64c62 '/>
-<rdf:Description rdf:about='4e4f3d39-112b-11ed-0000-cb573b64c62' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
-</rdf:RDF>
-</x:xmpmeta>
-                                                                        
-                                                                        
-<?xpacket end='w'?>
-endstream
-endobj
-2 0 obj
-<</Producer(GPL Ghostscript 9.04)
-/CreationDate(D:20120728164840-07'00')
-/ModDate(D:20120728164840-07'00')
-/Creator(groff version 1.21)>>endobj
-xref
-0 15
-0000000000 65535 f 
-0000002098 00000 n 
-0000003967 00000 n 
-0000002039 00000 n 
-0000001879 00000 n 
-0000000015 00000 n 
-0000001859 00000 n 
-0000002163 00000 n 
-0000002417 00000 n 
-0000002352 00000 n 
-0000002284 00000 n 
-0000002204 00000 n 
-0000002234 00000 n 
-0000002499 00000 n 
-0000002565 00000 n 
-trailer
-<< /Size 15 /Root 1 0 R /Info 2 0 R
-/ID [<7F34F637F6B8A848F56652CBE78F904F><7F34F637F6B8A848F56652CBE78F904F>]
->>
-startxref
-4119
-%%EOF
diff --git a/src/other/curl/docs/libcurl/curl_multi_cleanup.html b/src/other/curl/docs/libcurl/curl_multi_cleanup.html
deleted file mode 100644
index 9439c79..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_cleanup.html
+++ /dev/null
@@ -1,94 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:15 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_cleanup</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_cleanup</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_cleanup
-- close down a multi session</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURLMcode
-curl_multi_cleanup( CURLM *multi_handle );</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Cleans up and
-removes a whole multi stack. It does not free or touch any
-individual easy handles in any way - they still need to be
-closed individually, using the usual
-<i>curl_easy_cleanup(3)</i> way. The order of cleaning up
-should be:</p>
-
-<p style="margin-left:11%; margin-top: 1em">1 -
-<i>curl_multi_remove_handle(3)</i> before any easy handles
-are cleaned up</p>
-
-<p style="margin-left:11%; margin-top: 1em">2 -
-<i>curl_easy_cleanup(3)</i> can now be called independently
-since the easy handle is no longer connected to the multi
-handle</p>
-
-<p style="margin-left:11%; margin-top: 1em">3 -
-<i>curl_multi_cleanup(3)</i> should be called when all easy
-handles are removed</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode type,
-general libcurl multi interface error code.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_multi_init</b>(3),<b>curl_easy_cleanup</b>(3),<b>curl_easy_init</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_cleanup.pdf b/src/other/curl/docs/libcurl/curl_multi_cleanup.pdf
deleted file mode 100644
index b22797e..0000000
Binary files a/src/other/curl/docs/libcurl/curl_multi_cleanup.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_multi_fdset.html b/src/other/curl/docs/libcurl/curl_multi_fdset.html
deleted file mode 100644
index 62a95ab..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_fdset.html
+++ /dev/null
@@ -1,113 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:15 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_fdset</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_fdset</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_fdset
-- extracts file descriptor information from a multi
-handle</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">#include
-<curl/curl.h></p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode
-curl_multi_fdset(CURLM *multi_handle, <br>
-fd_set *read_fd_set, <br>
-fd_set *write_fd_set, <br>
-fd_set *exc_fd_set, <br>
-int *max_fd);</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-extracts file descriptor information from a given
-multi_handle. libcurl returns its fd_set sets. The
-application can use these to select() on, but be sure to
-FD_ZERO them before calling this function as
-<i>curl_multi_fdset(3)</i> only adds its own descriptors, it
-doesn’t zero or otherwise remove any others. The
-<i>curl_multi_perform(3)</i> function should be called as
-soon as one of them is ready to be read from or written
-to.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To be sure to
-have up-to-date results, you should call
-<i>curl_multi_perform</i> until it does not return
-CURLM_CALL_MULTI_PERFORM prior to calling
-<i>curl_multi_fdset</i>. This will make sure that libcurl
-has updated the handles’ socket states.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If no file
-descriptors are set by libcurl, <i>max_fd</i> will contain
--1 when this function returns. Otherwise it will contain the
-higher descriptor number libcurl set.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When doing
-select(), you should use <b>curl_multi_timeout</b> to figure
-out how long to wait for action. Call
-<i>curl_multi_perform</i> even if no activity has been seen
-on the fd_sets after the timeout expires as otherwise
-internal retries and timeouts may not work as you’d
-think and want.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode type,
-general libcurl multi interface error code. See
-<i>libcurl-errors(3)</i></p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><i><b>curl_multi_cleanup</b></i>(3),
-<b>curl_multi_init</b>(3), <b>curl_multi_timeout</b>(3),
-<b>curl_multi_perform</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_fdset.pdf b/src/other/curl/docs/libcurl/curl_multi_fdset.pdf
deleted file mode 100644
index b0f19dd..0000000
Binary files a/src/other/curl/docs/libcurl/curl_multi_fdset.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_multi_info_read.html b/src/other/curl/docs/libcurl/curl_multi_info_read.html
deleted file mode 100644
index 3aa4c0b..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_info_read.html
+++ /dev/null
@@ -1,131 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:15 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_info_read</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_info_read</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_info_read
-- read multi stack informationals</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">#include
-<curl/curl.h></p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLMsg
-*curl_multi_info_read( CURLM *multi_handle, <br>
-int *msgs_in_queue);</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Ask the multi
-handle if there are any messages/informationals from the
-individual transfers. Messages may include informationals
-such as an error code from the transfer or just the fact
-that a transfer is completed. More details on these should
-be written down as well.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Repeated calls
-to this function will return a new struct each time, until a
-NULL is returned as a signal that there is no more to get at
-this point. The integer pointed to with <i>msgs_in_queue</i>
-will contain the number of remaining messages after this
-function was called.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When you fetch
-a message using this function, it is removed from the
-internal queue so calling this function again will not
-return the same message again. It will instead return new
-messages at each new invoke until the queue is emptied.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>WARNING:</b>
-The data the returned pointer points to will not survive
-calling <i>curl_multi_cleanup(3)</i>,
-<i>curl_multi_remove_handle(3)</i> or
-<i>curl_easy_cleanup(3)</i>.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-’CURLMsg’ struct is very simple and only
-contains very basic information. If more involved
-information is wanted, the particular "easy
-handle" in present in that struct and can thus be used
-in subsequent regular <i>curl_easy_getinfo(3)</i> calls (or
-similar):</p>
-
-<p style="margin-left:11%; margin-top: 1em">struct CURLMsg
-{ <br>
-CURLMSG msg; /* what this message means */ <br>
-CURL *easy_handle; /* the handle it concerns */ <br>
-union { <br>
-void *whatever; /* message-specific data */ <br>
-CURLcode result; /* return code for transfer */ <br>
-} data; <br>
-}; <br>
-When <b>msg</b> is <i>CURLMSG_DONE</i>, the message
-identifies a transfer that is done, and then <b>result</b>
-contains the return code for the easy handle that just
-completed.</p>
-
-<p style="margin-left:11%; margin-top: 1em">At this point,
-there are no other <b>msg</b> types defined.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A pointer to a
-filled-in struct, or NULL if it failed or ran out of
-structs. It also writes the number of messages left in the
-queue (after this read) in the integer the second argument
-points to.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_multi_cleanup</b>(3),
-<b>curl_multi_init</b>(3), <b>curl_multi_perform</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_info_read.pdf b/src/other/curl/docs/libcurl/curl_multi_info_read.pdf
deleted file mode 100644
index 283867f..0000000
Binary files a/src/other/curl/docs/libcurl/curl_multi_info_read.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_multi_init.html b/src/other/curl/docs/libcurl/curl_multi_init.html
deleted file mode 100644
index cf10433..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_init.html
+++ /dev/null
@@ -1,82 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:16 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_init</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_init</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_init
-- create a multi handle</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURLM
-*curl_multi_init( );</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-returns a CURLM handle to be used as input to all the other
-multi-functions, sometimes referred to as a multi handle in
-some places in the documentation. This init call MUST have a
-corresponding call to <i>curl_multi_cleanup(3)</i> when the
-operation is complete.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">If this
-function returns NULL, something went wrong and you cannot
-use the other curl functions.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_multi_cleanup</b>(3),<b>curl_global_init</b>(3),<b>curl_easy_init</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_init.pdf b/src/other/curl/docs/libcurl/curl_multi_init.pdf
deleted file mode 100644
index 60267db..0000000
Binary files a/src/other/curl/docs/libcurl/curl_multi_init.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_multi_perform.html b/src/other/curl/docs/libcurl/curl_multi_perform.html
deleted file mode 100644
index 0e62a6f..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_perform.html
+++ /dev/null
@@ -1,137 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:16 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_perform</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_perform</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#TYPICAL USAGE">TYPICAL USAGE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_perform
-- reads/writes available data from each easy handle</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">#include
-<curl/curl.h></p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode
-curl_multi_perform(CURLM *multi_handle, int
-*running_handles);</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">When the app
-thinks there’s data available for the multi_handle, it
-should call this function to read/write whatever there is to
-read or write right now. curl_multi_perform() returns as
-soon as the reads/writes are done. This function does not
-require that there actually is any data available for
-reading or that data can be written, it can be called just
-in case. It will write the number of handles that still
-transfer data in the second argument’s
-integer-pointer.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When you call
-curl_multi_perform() and the amount of
-<i>running_handles</i> is changed from the previous call (or
-is less than the amount of easy handles you’ve added
-to the multi handle), you know that there is one or more
-transfers less "running". You can then call
-<i>curl_multi_info_read(3)</i> to get information about each
-individual completed transfer, and that returned info
-includes CURLcode and more. If an added handle fails very
-quickly, it may never be counted as a running_handle.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When
-<i>running_handles</i> is set to zero (0) on the return of
-this function, there is no longer any transfers in
-progress.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode type,
-general libcurl multi interface error code.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Before version
-7.20.0: If you receive <i>CURLM_CALL_MULTI_PERFORM</i>, this
-basically means that you should call
-<i>curl_multi_perform</i> again, before you select() on more
-actions. You don’t have to do it immediately, but the
-return code means that libcurl may have more data available
-to return or that there may be more data to send off before
-it is "satisfied". Do note that
-<i>curl_multi_perform(3)</i> will return
-<i>CURLM_CALL_MULTI_PERFORM</i> only when it wants to be
-called again <b>immediately</b>. When things are fine and
-there is nothing immediate it wants done, it’ll return
-<i>CURLM_OK</i> and you need to wait for "action"
-and then call this function again.</p>
-
-<p style="margin-left:11%; margin-top: 1em">This function
-only returns errors etc regarding the whole multi stack.
-Problems still might have occurred on individual transfers
-even when this function returns <i>CURLM_OK</i>.</p>
-
-<h2>TYPICAL USAGE
-<a name="TYPICAL USAGE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Most
-applications will use <i>curl_multi_fdset(3)</i> to get the
-multi_handle’s file descriptors, then it’ll wait
-for action on them using <b>select(3)</b> and as soon as one
-or more of them are ready, <i>curl_multi_perform(3)</i> gets
-called.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_multi_cleanup</b>(3),
-<b>curl_multi_init</b>(3), <b>curl_multi_fdset</b>(3),
-<b>curl_multi_info_read</b>(3), <b>libcurl-errors</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_perform.pdf b/src/other/curl/docs/libcurl/curl_multi_perform.pdf
deleted file mode 100644
index 9fd59cd..0000000
Binary files a/src/other/curl/docs/libcurl/curl_multi_perform.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_multi_remove_handle.html b/src/other/curl/docs/libcurl/curl_multi_remove_handle.html
deleted file mode 100644
index c3d33ec..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_remove_handle.html
+++ /dev/null
@@ -1,90 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:16 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_remove_handle</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_remove_handle</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_remove_handle
-- remove an easy handle from a multi session</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">#include
-<curl/curl.h></p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode
-curl_multi_remove_handle(CURLM *multi_handle, CURL
-*easy_handle);</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Removes a given
-easy_handle from the multi_handle. This will make the
-specified easy handle be removed from this multi
-handle’s control.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When the easy
-handle has been removed from a multi stack, it is again
-perfectly legal to invoke <i>curl_easy_perform()</i> on this
-easy handle.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Removing an
-easy handle while being used, will effectively halt the
-transfer in progress involving that easy handle. All other
-easy handles and transfers will remain unaffected.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode type,
-general libcurl multi interface error code.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_multi_cleanup</b>(3),<b>curl_multi_init</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_remove_handle.pdf b/src/other/curl/docs/libcurl/curl_multi_remove_handle.pdf
deleted file mode 100644
index d2283a5..0000000
Binary files a/src/other/curl/docs/libcurl/curl_multi_remove_handle.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_multi_setopt.html b/src/other/curl/docs/libcurl/curl_multi_setopt.html
deleted file mode 100644
index 60ec263..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_setopt.html
+++ /dev/null
@@ -1,193 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:20 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_setopt</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_setopt</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#OPTIONS">OPTIONS</a><br>
-<a href="#RETURNS">RETURNS</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_setopt
-− set options for a curl multi handle</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">#include
-<curl/curl.h></p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode
-curl_multi_setopt(CURLM * multi_handle, CURLMoption option,
-param);</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_setopt()
-is used to tell a libcurl multi handle how to behave. By
-using the appropriate options to
-<i>curl_multi_setopt(3)</i>, you can change libcurl’s
-behaviour when using that multi handle. All options are set
-with the <i>option</i> followed by the parameter
-<i>param</i>. That parameter can be a <b>long</b>, a
-<b>function pointer</b>, an <b>object pointer</b> or a
-<b>curl_off_t</b> type, depending on what the specific
-option expects. Read this manual carefully as bad input
-values may cause libcurl to behave badly! You can only set
-one option in each function call.</p>
-
-<h2>OPTIONS
-<a name="OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLMOPT_SOCKETFUNCTION</p>
-
-<p style="margin-left:22%;">Pass a pointer to a function
-matching the <b>curl_socket_callback</b> prototype. The
-<i>curl_multi_socket_action(3)</i> function informs the
-application about updates in the socket (file descriptor)
-status by doing none, one, or multiple calls to the
-curl_socket_callback given in the <b>param</b> argument.
-They update the status with changes since the previous time
-a <i>curl_multi_socket(3)</i> function was called. If the
-given callback pointer is NULL, no callback will be called.
-Set the callback’s <b>userp</b> argument with
-<i>CURLMOPT_SOCKETDATA</i>. See <i>curl_multi_socket(3)</i>
-for more callback details.</p>
-
-<p style="margin-left:11%;">CURLMOPT_SOCKETDATA</p>
-
-<p style="margin-left:22%;">Pass a pointer to whatever you
-want passed to the <b>curl_socket_callback</b>’s forth
-argument, the userp pointer. This is not used by libcurl but
-only passed-thru as-is. Set the callback pointer with
-<i>CURLMOPT_SOCKETFUNCTION</i>.</p>
-
-<p style="margin-left:11%;">CURLMOPT_PIPELINING</p>
-
-<p style="margin-left:22%;">Pass a long set to 1 to enable
-or 0 to disable. Enabling pipelining on a multi handle will
-make it attempt to perform HTTP Pipelining as far as
-possible for transfers using this handle. This means that if
-you add a second request that can use an already existing
-connection, the second request will be "piped" on
-the same connection rather than being executed in parallel.
-(Added in 7.16.0)</p>
-
-<p style="margin-left:11%;">CURLMOPT_TIMERFUNCTION</p>
-
-<p style="margin-left:22%;">Pass a pointer to a function
-matching the <b>curl_multi_timer_callback</b> prototype.
-This function will then be called when the timeout value
-changes. The timeout value is at what latest time the
-application should call one of the "performing"
-functions of the multi interface
-(<i>curl_multi_socket_action(3)</i> and
-<i>curl_multi_perform(3)</i>) - to allow libcurl to keep
-timeouts and retries etc to work. A timeout value of -1
-means that there is no timeout at all, and 0 means that the
-timeout is already reached. Libcurl attempts to limit
-calling this only when the fixed future timeout time
-actually changes. See also <i>CURLMOPT_TIMERDATA</i>. This
-callback can be used instead of, or in addition to,
-<i>curl_multi_timeout(3)</i>. (Added in 7.16.0)</p>
-
-<p style="margin-left:11%;">CURLMOPT_TIMERDATA</p>
-
-<p style="margin-left:22%;">Pass a pointer to whatever you
-want passed to the <b>curl_multi_timer_callback</b>’s
-third argument, the userp pointer. This is not used by
-libcurl but only passed-thru as-is. Set the callback pointer
-with <i>CURLMOPT_TIMERFUNCTION</i>. (Added in 7.16.0)</p>
-
-<p style="margin-left:11%;">CURLMOPT_MAXCONNECTS</p>
-
-<p style="margin-left:22%;">Pass a long. The set number
-will be used as the maximum amount of simultaneously open
-connections that libcurl may cache. Default is 10, and
-libcurl will enlarge the size for each added easy handle to
-make it fit 4 times the number of added easy handles.</p>
-
-<p style="margin-left:22%; margin-top: 1em">By setting this
-option, you can prevent the cache size from growing beyond
-the limit set by you.</p>
-
-<p style="margin-left:22%; margin-top: 1em">When the cache
-is full, curl closes the oldest one in the cache to prevent
-the number of open connections from increasing.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This option is
-for the multi handle’s use only, when using the easy
-interface you should instead use the
-<i>CURLOPT_MAXCONNECTS</i> option.</p>
-
-<p style="margin-left:22%; margin-top: 1em">(Added in
-7.16.3)</p>
-
-<h2>RETURNS
-<a name="RETURNS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The standard
-CURLMcode for multi interface error codes. Note that it
-returns a CURLM_UNKNOWN_OPTION if you try setting an option
-that this version of libcurl doesn’t know of.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-was added in libcurl 7.15.4.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_multi_cleanup</b>(3),
-<b>curl_multi_init</b>(3), <b>curl_multi_socket</b>(3),
-<b>curl_multi_info_read</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_setopt.pdf b/src/other/curl/docs/libcurl/curl_multi_setopt.pdf
deleted file mode 100644
index f3baed6..0000000
Binary files a/src/other/curl/docs/libcurl/curl_multi_setopt.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_multi_socket.html b/src/other/curl/docs/libcurl/curl_multi_socket.html
deleted file mode 100644
index a4838a8..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_socket.html
+++ /dev/null
@@ -1,272 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:20 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_socket</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_socket</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#CALLBACK DETAILS">CALLBACK DETAILS</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#TYPICAL USAGE">TYPICAL USAGE</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_socket
-− reads/writes available data</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">#include
-<curl/curl.h> <br>
-CURLMcode curl_multi_socket(CURLM * multi_handle,
-curl_socket_t sockfd, <br>
-int *running_handles);</p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode
-curl_multi_socket_all(CURLM *multi_handle, <br>
-int *running_handles);</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">These functions
-are deprecated. Do not use! See
-<i>curl_multi_socket_action(3)</i> instead!</p>
-
-<p style="margin-left:11%; margin-top: 1em">At return, the
-integer <b>running_handles</b> points to will contain the
-number of still running easy handles within the multi
-handle. When this number reaches zero, all transfers are
-complete/done. Note that when you call
-<i>curl_multi_socket_action(3)</i> on a specific socket and
-the counter decreases by one, it DOES NOT necessarily mean
-that this exact socket/transfer is the one that completed.
-Use <i>curl_multi_info_read(3)</i> to figure out which easy
-handle that completed.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-<b>curl_multi_socket_action(3)</b> functions inform the
-application about updates in the socket (file descriptor)
-status by doing none, one, or multiple calls to the socket
-callback function set with the CURLMOPT_SOCKETFUNCTION
-option to <i>curl_multi_setopt(3)</i>. They update the
-status with changes since the previous time the callback was
-called.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Get the timeout
-time by setting the <i>CURLMOPT_TIMERFUNCTION</i> option
-with <i>curl_multi_setopt(3)</i>. Your application will then
-get called with information on how long to wait for socket
-actions at most before doing the timeout action: call the
-<b>curl_multi_socket_action(3)</b> function with the
-<b>sockfd</b> argument set to CURL_SOCKET_TIMEOUT. You can
-also use the <i>curl_multi_timeout(3)</i> function to poll
-the value at any given time, but for an event-based system
-using the callback is far better than relying on polling the
-timeout value.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Usage of
-<i>curl_multi_socket(3)</i> is deprecated, whereas the
-function is equivalent to <i>curl_multi_socket_action(3)</i>
-with <b>ev_bitmask</b> set to 0.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Force libcurl
-to (re-)check all its internal sockets and transfers instead
-of just a single one by calling
-<b>curl_multi_socket_all(3)</b>. Note that there should not
-be any reason to use this function!</p>
-
-<h2>CALLBACK DETAILS
-<a name="CALLBACK DETAILS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The socket
-<b>callback</b> function uses a prototype like this</p>
-
-<p style="margin-left:11%; margin-top: 1em">int
-curl_socket_callback(CURL *easy, /* easy handle */ <br>
-curl_socket_t s, /* socket */ <br>
-int action, /* see values below */ <br>
-void *userp, /* private callback pointer */ <br>
-void *socketp); /* private socket pointer */</p>
-
-<p style="margin-left:11%; margin-top: 1em">The callback
-MUST return 0.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The <i>easy</i>
-argument is a pointer to the easy handle that deals with
-this particular socket. Note that a single handle may work
-with several sockets simultaneously.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The <i>s</i>
-argument is the actual socket value as you use it within
-your system.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-<i>action</i> argument to the callback has one of five
-values:</p>
-
-<p style="margin-left:22%;">CURL_POLL_NONE (0)</p>
-
-<p style="margin-left:32%;">register, not interested in
-readiness (yet)</p>
-
-<p style="margin-left:22%;">CURL_POLL_IN (1)</p>
-
-<p style="margin-left:32%;">register, interested in read
-readiness</p>
-
-<p style="margin-left:22%;">CURL_POLL_OUT (2)</p>
-
-<p style="margin-left:32%;">register, interested in write
-readiness</p>
-
-<p style="margin-left:22%;">CURL_POLL_INOUT (3)</p>
-
-<p style="margin-left:32%;">register, interested in both
-read and write readiness</p>
-
-<p style="margin-left:22%;">CURL_POLL_REMOVE (4)</p>
-
-<p style="margin-left:32%;">unregister</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-<i>socketp</i> argument is a private pointer you have
-previously set with <i>curl_multi_assign(3)</i> to be
-associated with the <i>s</i> socket. If no pointer has been
-set, socketp will be NULL. This argument is of course a
-service to applications that want to keep certain data or
-structs that are strictly associated to the given
-socket.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-<i>userp</i> argument is a private pointer you have
-previously set with <i>curl_multi_setopt(3)</i> and the
-CURLMOPT_SOCKETDATA option.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode type,
-general libcurl multi interface error code.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Legacy: If you
-receive <i>CURLM_CALL_MULTI_PERFORM</i>, this basically
-means that you should call <i>curl_multi_socket(3)</i>
-again, before you wait for more actions on libcurl’s
-sockets. You don’t have to do it immediately, but the
-return code means that libcurl may have more data available
-to return or that there may be more data to send off before
-it is "satisfied".</p>
-
-<p style="margin-left:11%; margin-top: 1em">In modern
-libcurls, <i>CURLM_CALL_MULTI_PERFORM</i> or
-<i>CURLM_CALL_MULTI_SOKCET</i> should not be returned and no
-application needs to care about them.</p>
-
-<p style="margin-left:11%; margin-top: 1em">NOTE that the
-return code is for the whole multi stack. Problems still
-might have occurred on individual transfers even when one of
-these functions return OK.</p>
-
-<h2>TYPICAL USAGE
-<a name="TYPICAL USAGE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">1. Create a
-multi handle</p>
-
-<p style="margin-left:11%; margin-top: 1em">2. Set the
-socket callback with CURLMOPT_SOCKETFUNCTION</p>
-
-<p style="margin-left:11%; margin-top: 1em">3. Set the
-timeout callback with CURLMOPT_TIMERFUNCTION, to get to know
-what timeout value to use when waiting for socket
-activities.</p>
-
-<p style="margin-left:11%; margin-top: 1em">4. Add easy
-handles with curl_multi_add_handle()</p>
-
-<p style="margin-left:11%; margin-top: 1em">5. Provide some
-means to manage the sockets libcurl is using, so you can
-check them for activity. This can be done through your
-application code, or by way of an external library such as
-libevent or glib.</p>
-
-<p style="margin-left:11%; margin-top: 1em">6. Wait for
-activity on any of libcurl’s sockets, use the timeout
-value your callback has been told</p>
-
-<p style="margin-left:11%; margin-top: 1em">7, When
-activity is detected, call curl_multi_socket_action() for
-the socket(s) that got action. If no activity is detected
-and the timeout expires, call
-<i>curl_multi_socket_action(3)</i> with
-<i>CURL_SOCKET_TIMEOUT</i></p>
-
-<p style="margin-left:11%; margin-top: 1em">8. Go back to
-step 6.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-was added in libcurl 7.15.4, and is deemed stable since
-7.16.0.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>curl_multi_socket(3)</i>
-is deprecated, use <i>curl_multi_socket_action(3)</i>
-instead!</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_multi_cleanup</b>(3),
-<b>curl_multi_init</b>(3), <b>curl_multi_fdset</b>(3),
-<b>curl_multi_info_read</b>(3), <b>the hiperfifo.c
-example</b></p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_socket.pdf b/src/other/curl/docs/libcurl/curl_multi_socket.pdf
deleted file mode 100644
index ecfc39d..0000000
Binary files a/src/other/curl/docs/libcurl/curl_multi_socket.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_multi_socket_action.html b/src/other/curl/docs/libcurl/curl_multi_socket_action.html
deleted file mode 100644
index 74b2322..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_socket_action.html
+++ /dev/null
@@ -1,257 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:21 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_socket_action</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_socket_action</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#CALLBACK DETAILS">CALLBACK DETAILS</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#TYPICAL USAGE">TYPICAL USAGE</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_socket_action
-− reads/writes available data given an action</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">#include
-<curl/curl.h></p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode
-curl_multi_socket_action(CURLM * multi_handle, <br>
-curl_socket_t sockfd, int ev_bitmask, <br>
-int *running_handles);</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">When the
-application has detected action on a socket handled by
-libcurl, it should call <i>curl_multi_socket_action(3)</i>
-with the <b>sockfd</b> argument set to the socket with the
-action. When the events on a socket are known, they can be
-passed as an events bitmask <b>ev_bitmask</b> by first
-setting <b>ev_bitmask</b> to 0, and then adding using
-bitwise OR (|) any combination of events to be chosen from
-CURL_CSELECT_IN, CURL_CSELECT_OUT or CURL_CSELECT_ERR. When
-the events on a socket are unknown, pass 0 instead, and
-libcurl will test the descriptor internally.</p>
-
-<p style="margin-left:11%; margin-top: 1em">At return, the
-integer <b>running_handles</b> points to will contain the
-number of running easy handles within the multi handle. When
-this number reaches zero, all transfers are complete/done.
-When you call <i>curl_multi_socket_action(3)</i> on a
-specific socket and the counter decreases by one, it DOES
-NOT necessarily mean that this exact socket/transfer is the
-one that completed. Use <i>curl_multi_info_read(3)</i> to
-figure out which easy handle that completed.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-<b>curl_multi_socket_action(3)</b> functions inform the
-application about updates in the socket (file descriptor)
-status by doing none, one, or multiple calls to the socket
-callback function set with the CURLMOPT_SOCKETFUNCTION
-option to <i>curl_multi_setopt(3)</i>. They update the
-status with changes since the previous time the callback was
-called.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Get the timeout
-time by setting the <i>CURLMOPT_TIMERFUNCTION</i> option
-with <i>curl_multi_setopt(3)</i>. Your application will then
-get called with information on how long to wait for socket
-actions at most before doing the timeout action: call the
-<b>curl_multi_socket_action(3)</b> function with the
-<b>sockfd</b> argument set to CURL_SOCKET_TIMEOUT. You can
-also use the <i>curl_multi_timeout(3)</i> function to poll
-the value at any given time, but for an event-based system
-using the callback is far better than relying on polling the
-timeout value.</p>
-
-<h2>CALLBACK DETAILS
-<a name="CALLBACK DETAILS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The socket
-<b>callback</b> function uses a prototype like this</p>
-
-<p style="margin-left:11%; margin-top: 1em">int
-curl_socket_callback(CURL *easy, /* easy handle */ <br>
-curl_socket_t s, /* socket */ <br>
-int action, /* see values below */ <br>
-void *userp, /* private callback pointer */ <br>
-void *socketp); /* private socket pointer */</p>
-
-<p style="margin-left:11%; margin-top: 1em">The callback
-MUST return 0.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The <i>easy</i>
-argument is a pointer to the easy handle that deals with
-this particular socket. Note that a single handle may work
-with several sockets simultaneously.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The <i>s</i>
-argument is the actual socket value as you use it within
-your system.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-<i>action</i> argument to the callback has one of five
-values:</p>
-
-<p style="margin-left:22%;">CURL_POLL_NONE (0)</p>
-
-<p style="margin-left:32%;">register, not interested in
-readiness (yet)</p>
-
-<p style="margin-left:22%;">CURL_POLL_IN (1)</p>
-
-<p style="margin-left:32%;">register, interested in read
-readiness</p>
-
-<p style="margin-left:22%;">CURL_POLL_OUT (2)</p>
-
-<p style="margin-left:32%;">register, interested in write
-readiness</p>
-
-<p style="margin-left:22%;">CURL_POLL_INOUT (3)</p>
-
-<p style="margin-left:32%;">register, interested in both
-read and write readiness</p>
-
-<p style="margin-left:22%;">CURL_POLL_REMOVE (4)</p>
-
-<p style="margin-left:32%;">unregister</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-<i>socketp</i> argument is a private pointer you have
-previously set with <i>curl_multi_assign(3)</i> to be
-associated with the <i>s</i> socket. If no pointer has been
-set, socketp will be NULL. This argument is of course a
-service to applications that want to keep certain data or
-structs that are strictly associated to the given
-socket.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-<i>userp</i> argument is a private pointer you have
-previously set with <i>curl_multi_setopt(3)</i> and the
-CURLMOPT_SOCKETDATA option.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode type,
-general libcurl multi interface error code.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Before version
-7.20.0: If you receive <i>CURLM_CALL_MULTI_PERFORM</i>, this
-basically means that you should call
-<i>curl_multi_socket_action(3)</i> again before you wait for
-more actions on libcurl’s sockets. You don’t
-have to do it immediately, but the return code means that
-libcurl may have more data available to return or that there
-may be more data to send off before it is
-"satisfied".</p>
-
-<p style="margin-left:11%; margin-top: 1em">The return code
-from this function is for the whole multi stack. Problems
-still might have occurred on individual transfers even when
-one of these functions return OK.</p>
-
-<h2>TYPICAL USAGE
-<a name="TYPICAL USAGE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">1. Create a
-multi handle</p>
-
-<p style="margin-left:11%; margin-top: 1em">2. Set the
-socket callback with CURLMOPT_SOCKETFUNCTION</p>
-
-<p style="margin-left:11%; margin-top: 1em">3. Set the
-timeout callback with CURLMOPT_TIMERFUNCTION, to get to know
-what timeout value to use when waiting for socket
-activities.</p>
-
-<p style="margin-left:11%; margin-top: 1em">4. Add easy
-handles with curl_multi_add_handle()</p>
-
-<p style="margin-left:11%; margin-top: 1em">5. Provide some
-means to manage the sockets libcurl is using, so you can
-check them for activity. This can be done through your
-application code, or by way of an external library such as
-libevent or glib.</p>
-
-<p style="margin-left:11%; margin-top: 1em">6. Wait for
-activity on any of libcurl’s sockets, use the timeout
-value your callback has been told</p>
-
-<p style="margin-left:11%; margin-top: 1em">7, When
-activity is detected, call curl_multi_socket_action() for
-the socket(s) that got action. If no activity is detected
-and the timeout expires, call
-<i>curl_multi_socket_action(3)</i> with
-<i>CURL_SOCKET_TIMEOUT</i></p>
-
-<p style="margin-left:11%; margin-top: 1em">8. Go back to
-step 6.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-was added in libcurl 7.15.4, and is deemed stable since
-7.16.0.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_multi_cleanup</b>(3),
-<b>curl_multi_init</b>(3), <b>curl_multi_fdset</b>(3),
-<b>curl_multi_info_read</b>(3), <b>the hiperfifo.c
-example</b></p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_socket_action.pdf b/src/other/curl/docs/libcurl/curl_multi_socket_action.pdf
deleted file mode 100644
index 40ea7ee..0000000
Binary files a/src/other/curl/docs/libcurl/curl_multi_socket_action.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_multi_strerror.html b/src/other/curl/docs/libcurl/curl_multi_strerror.html
deleted file mode 100644
index 968e51e..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_strerror.html
+++ /dev/null
@@ -1,89 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:18 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_strerror</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_strerror</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_strerror
-- return string describing error code</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h> <br>
-const char *curl_multi_strerror(CURLMcode</b>
-<i>errornum</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The
-curl_multi_strerror() function returns a string describing
-the CURLMcode error code passed in the argument
-<i>errornum</i>.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-was added in libcurl 7.12.0</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A pointer to a
-zero terminated string.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>libcurl-errors</b>(3),
-<b>curl_easy_strerror</b>(3),
-<b>curl_share_strerror</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_strerror.pdf b/src/other/curl/docs/libcurl/curl_multi_strerror.pdf
deleted file mode 100644
index a3abdf5..0000000
Binary files a/src/other/curl/docs/libcurl/curl_multi_strerror.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_multi_timeout.html b/src/other/curl/docs/libcurl/curl_multi_timeout.html
deleted file mode 100644
index 04aa286..0000000
--- a/src/other/curl/docs/libcurl/curl_multi_timeout.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:20 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_multi_timeout</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_multi_timeout</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#TYPICAL USAGE">TYPICAL USAGE</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_multi_timeout
-− how long to wait for action before proceeding</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">#include
-<curl/curl.h></p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLMcode
-curl_multi_timeout(CURLM *multi_handle, long *timeout);</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">An application
-using the libcurl multi interface should call
-<b>curl_multi_timeout(3)</b> to figure out how long it
-should wait for socket actions − at most −
-before proceeding.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Proceeding
-means either doing the socket-style timeout action: call the
-<b>curl_multi_socket_action(3)</b> function with the
-<b>sockfd</b> argument set to CURL_SOCKET_TIMEOUT, or call
-<b>curl_multi_perform(3)</b> if you’re using the
-simpler and older multi interface approach.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The timeout
-value returned in the long <b>timeout</b> points to, is in
-number of milliseconds at this very moment. If 0, it means
-you should proceed immediately without waiting for anything.
-If it returns -1, there’s no timeout at all set.</p>
-
-<p style="margin-left:11%; margin-top: 1em">An application
-that uses the multi_socket API SHOULD not use this function,
-but SHOULD instead use <i>curl_multi_setopt(3)</i> and its
-<i>CURLMOPT_TIMERFUNCTION</i> option for proper and desired
-behavior.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Note: if
-libcurl returns a -1 timeout here, it just means that
-libcurl currently has no stored timeout value. You must not
-wait too long (more than a few seconds perhaps) before you
-call curl_multi_perform() again.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The standard
-CURLMcode for multi interface error codes.</p>
-
-<h2>TYPICAL USAGE
-<a name="TYPICAL USAGE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Call
-<b>curl_multi_timeout(3)</b>, then wait for action on the
-sockets. You figure out which sockets to wait for by calling
-<b>curl_multi_fdset(3)</b> or by a previous call to
-<b>curl_multi_socket(3)</b>.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-was added in libcurl 7.15.4.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_multi_fdset</b>(3),
-<b>curl_multi_info_read</b>(3), <b>curl_multi_socket</b>(3),
-<b>curl_multi_setopt</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_multi_timeout.pdf b/src/other/curl/docs/libcurl/curl_multi_timeout.pdf
deleted file mode 100644
index ddf8e18..0000000
Binary files a/src/other/curl/docs/libcurl/curl_multi_timeout.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_share_cleanup.html b/src/other/curl/docs/libcurl/curl_share_cleanup.html
deleted file mode 100644
index d7884a4..0000000
--- a/src/other/curl/docs/libcurl/curl_share_cleanup.html
+++ /dev/null
@@ -1,84 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:16 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_share_cleanup</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_share_cleanup</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_share_cleanup
-- Clean up a shared object</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURLSHcode
-curl_share_cleanup(CURLSH
-*</b><i>share_handle</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-deletes a shared object. The share handle cannot be used
-anymore when this function has been called.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLSHE_OK
-(zero) means that the option was set properly, non-zero
-means an error occurred as <i><curl/curl.h></i>
-defines. See the <i>libcurl-errors.3</i> man page for the
-full list with descriptions. If an error occurs, then the
-share object will not be deleted.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_share_init</b>(3),
-<b>curl_share_setopt</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_share_cleanup.pdf b/src/other/curl/docs/libcurl/curl_share_cleanup.pdf
deleted file mode 100644
index ac35c52..0000000
Binary files a/src/other/curl/docs/libcurl/curl_share_cleanup.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_share_init.html b/src/other/curl/docs/libcurl/curl_share_init.html
deleted file mode 100644
index 19baefd..0000000
--- a/src/other/curl/docs/libcurl/curl_share_init.html
+++ /dev/null
@@ -1,89 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:16 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_share_init</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_share_init</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_share_init
-- Create a shared object</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>CURLSH
-*curl_share_init( );</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-returns a CURLSH handle to be used as input to all the other
-share-functions, sometimes referred to as a share handle in
-some places in the documentation. This init call MUST have a
-corresponding call to <i>curl_share_cleanup</i> when all
-operations using the share are complete.</p>
-
-<p style="margin-left:11%; margin-top: 1em">This <i>share
-handle</i> is what you pass to curl using the
-<i>CURLOPT_SHARE</i> option with <i>curl_easy_setopt(3)</i>,
-to make that specific curl handle use the data in this
-share.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">If this
-function returns NULL, something went wrong (out of memory,
-etc.) and therefore the share object was not created.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_share_cleanup</b>(3),
-<b>curl_share_setopt</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_share_init.pdf b/src/other/curl/docs/libcurl/curl_share_init.pdf
deleted file mode 100644
index 5f7a9a2..0000000
Binary files a/src/other/curl/docs/libcurl/curl_share_init.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_share_setopt.html b/src/other/curl/docs/libcurl/curl_share_setopt.html
deleted file mode 100644
index 874c43f..0000000
--- a/src/other/curl/docs/libcurl/curl_share_setopt.html
+++ /dev/null
@@ -1,160 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:16 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_share_setopt</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_share_setopt</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#OPTIONS">OPTIONS</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_share_setopt
-- Set options for a shared object</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLSHcode
-curl_share_setopt(CURLSH *share, CURLSHoption option,
-parameter);</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Set the
-<i>option</i> to <i>parameter</i> for the given
-<i>share</i>.</p>
-
-<h2>OPTIONS
-<a name="OPTIONS"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLSHOPT_LOCKFUNC</p>
-
-<p style="margin-left:22%;">The <i>parameter</i> must be a
-pointer to a function matching the following prototype:</p>
-
-<p style="margin-left:22%; margin-top: 1em">void
-lock_function(CURL *handle, curl_lock_data data,
-curl_lock_access access, void *userptr);</p>
-
-<p style="margin-left:22%; margin-top: 1em"><i>data</i>
-defines what data libcurl wants to lock, and you must make
-sure that only one lock is given at any time for each kind
-of data.</p>
-
-<p style="margin-left:22%; margin-top: 1em"><i>access</i>
-defines what access type libcurl wants, shared or
-single.</p>
-
-<p style="margin-left:22%; margin-top: 1em"><i>userptr</i>
-is the pointer you set with <i>CURLSHOPT_USERDATA</i>.</p>
-
-<p style="margin-left:11%;">CURLSHOPT_UNLOCKFUNC</p>
-
-<p style="margin-left:22%;">The <i>parameter</i> must be a
-pointer to a function matching the following prototype:</p>
-
-<p style="margin-left:22%; margin-top: 1em">void
-unlock_function(CURL *handle, curl_lock_data data, void
-*userptr);</p>
-
-<p style="margin-left:22%; margin-top: 1em"><i>data</i>
-defines what data libcurl wants to unlock, and you must make
-sure that only one lock is given at any time for each kind
-of data.</p>
-
-<p style="margin-left:22%; margin-top: 1em"><i>userptr</i>
-is the pointer you set with <i>CURLSHOPT_USERDATA</i>.</p>
-
-<p style="margin-left:11%;">CURLSHOPT_SHARE</p>
-
-<p style="margin-left:22%;">The <i>parameter</i> specifies
-a type of data that should be shared. This may be set to one
-of the values described below. <br>
-CURL_LOCK_DATA_COOKIE</p>
-
-<p style="margin-left:32%;">Cookie data will be shared
-across the easy handles using this shared object.</p>
-
-<p style="margin-left:22%;">CURL_LOCK_DATA_DNS</p>
-
-<p style="margin-left:32%;">Cached DNS hosts will be shared
-across the easy handles using this shared object. Note that
-when you use the multi interface, all easy handles added to
-the same multi handle will share DNS cache by default
-without this having to be used!</p>
-
-<p style="margin-left:11%;">CURLSHOPT_UNSHARE</p>
-
-<p style="margin-left:22%;">This option does the opposite
-of <i>CURLSHOPT_SHARE</i>. It specifies that the specified
-<i>parameter</i> will no longer be shared. Valid values are
-the same as those for <i>CURLSHOPT_SHARE</i>.</p>
-
-<p style="margin-left:11%;">CURLSHOPT_USERDATA</p>
-
-<p style="margin-left:22%;">The <i>parameter</i> allows you
-to specify a pointer to data that will be passed to the
-lock_function and unlock_function each time it is
-called.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">CURLSHE_OK
-(zero) means that the option was set properly, non-zero
-means an error occurred as <i><curl/curl.h></i>
-defines. See the <i>libcurl-errors.3</i> man page for the
-full list with descriptions.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_share_cleanup</b>(3),
-<b>curl_share_init</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_share_setopt.pdf b/src/other/curl/docs/libcurl/curl_share_setopt.pdf
deleted file mode 100644
index 2ac2202..0000000
Binary files a/src/other/curl/docs/libcurl/curl_share_setopt.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_share_strerror.html b/src/other/curl/docs/libcurl/curl_share_strerror.html
deleted file mode 100644
index 0006a63..0000000
--- a/src/other/curl/docs/libcurl/curl_share_strerror.html
+++ /dev/null
@@ -1,89 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:18 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_share_strerror</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_share_strerror</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_share_strerror
-- return string describing error code</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h> <br>
-const char *curl_share_strerror(CURLSHcode</b>
-<i>errornum</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The
-curl_share_strerror() function returns a string describing
-the CURLSHcode error code passed in the argument
-<i>errornum</i>.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This function
-was added in libcurl 7.12.0</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A pointer to a
-zero terminated string.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>libcurl-errors</b>(3),
-<b>curl_multi_strerror</b>(3),
-<b>curl_easy_strerror</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_share_strerror.pdf b/src/other/curl/docs/libcurl/curl_share_strerror.pdf
deleted file mode 100644
index 5bad57a..0000000
Binary files a/src/other/curl/docs/libcurl/curl_share_strerror.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_slist_append.html b/src/other/curl/docs/libcurl/curl_slist_append.html
deleted file mode 100644
index 8108bab..0000000
--- a/src/other/curl/docs/libcurl/curl_slist_append.html
+++ /dev/null
@@ -1,110 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:13 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_slist_append</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_slist_append</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#EXAMPLE">EXAMPLE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_slist_append
-- add a string to an slist</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>struct
-curl_slist *curl_slist_append(struct curl_slist
-*</b><i>list,</i> <b>const char *</b>
-<i>string</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_slist_append()
-appends a specified string to a linked list of strings. The
-existing <i>list</i> should be passed as the first argument
-while the new list is returned from this function. The
-specified <i>string</i> has been appended when this function
-returns. curl_slist_append() copies the string.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The list should
-be freed again (after usage) with
-<b>curl_slist_free_all(3)</b>.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A null pointer
-is returned if anything went wrong, otherwise the new list
-pointer is returned.</p>
-
-<h2>EXAMPLE
-<a name="EXAMPLE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">CURL handle;
-<br>
-struct curl_slist *slist=NULL;</p>
-
-<p style="margin-left:11%; margin-top: 1em">slist =
-curl_slist_append(slist, "pragma:"); <br>
-curl_easy_setopt(handle, CURLOPT_HTTPHEADER, slist);</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_perform(handle);</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_slist_free_all(slist);
-/* free the list again */</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_slist_free_all</b>(3),</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_slist_append.pdf b/src/other/curl/docs/libcurl/curl_slist_append.pdf
deleted file mode 100644
index 09d2b06..0000000
Binary files a/src/other/curl/docs/libcurl/curl_slist_append.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_slist_free_all.html b/src/other/curl/docs/libcurl/curl_slist_free_all.html
deleted file mode 100644
index ca9358e..0000000
--- a/src/other/curl/docs/libcurl/curl_slist_free_all.html
+++ /dev/null
@@ -1,78 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:13 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_slist_free_all</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_slist_free_all</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_slist_free_all
-- free an entire curl_slist list</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>void
-curl_slist_free_all(struct curl_slist *</b><i>list);</i></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_slist_free_all()
-removes all traces of a previously built curl_slist linked
-list.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Nothing.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_slist_append</b>(3),</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_slist_free_all.pdf b/src/other/curl/docs/libcurl/curl_slist_free_all.pdf
deleted file mode 100644
index 999e040..0000000
--- a/src/other/curl/docs/libcurl/curl_slist_free_all.pdf
+++ /dev/null
@@ -1,107 +0,0 @@
-%PDF-1.4
-%Ç쏢
-5 0 obj
-<</Length 6 0 R/Filter /FlateDecode>>
-stream
-xœ…Së‹Ó@ÿž¿bÀnÄlg7Ù<P„ªAîèãls‚´RriÚFÓ´—GÅÿÞÝdKSì!K6agfç÷˜<R¨–~'{c0ó`[_ä³5ž
Ö&€~%{øÉ$_D£«càqð¢½Á˜OQ@ôÛX¤)óU•gU½Ú”iºŠó|Iì¥	yö¤b¦ÅRDŒã¢‰sx©ÀüÝRΈÙ?ýi Û…hdÉÐ|-!Ë(T¶„­
2Íèg0Gê ã*Œ
-ç-˜`ú„¸€´¨³2íAµu·ö`X‡Å\ê·mçß'Ó‡ùÝü’¦¡êÆäUV$y³Nὺx 6ºû Ò-冤Á–×épæР#µ ÙúZ*S‰ŽžOΚUuÙ$uô›VÃÁŒáÙ:סèj™TÊÒ|÷/+Ž²mŸÙçpþiv÷ÝM'×ÊöÈÝ´QÚ^¦ûÙ¢h­BF=Oc8¥*Æ©èÈr?ðªbêÜEêÛÈÎJH«ê2NÒ
-ˆáX¦&J›œ²CSåàÉäHš,¯¯=,~™»ÌtÝzJµD}þLxÔ.üdF³	|3™íHiŽC]yC‹É¡ÞeÅ–þo`†£ùôŁéii±¾Vß“Cïz at HûÓ¼m¥fŒQ!^Ø\·Ò?x{‚s
-XW/ƽ]jK't .“pDÖV:HÝóµ'ad|•ë/zëÏendstream
-endobj
-6 0 obj
-547
-endobj
-4 0 obj
-<</Type/Page/MediaBox [0 0 612 792]
-/Rotate 0/Parent 3 0 R
-/Resources<</ProcSet[/PDF /Text]
-/ExtGState 11 0 R
-/Font 12 0 R
->>
-/Contents 5 0 R
->>
-endobj
-3 0 obj
-<< /Type /Pages /Kids [
-4 0 R
-] /Count 1
->>
-endobj
-1 0 obj
-<</Type /Catalog /Pages 3 0 R
-/Metadata 13 0 R
->>
-endobj
-7 0 obj
-<</Type/ExtGState
-/OPM 1>>endobj
-11 0 obj
-<</R7
-7 0 R>>
-endobj
-12 0 obj
-<</R10
-10 0 R/R9
-9 0 R/R8
-8 0 R>>
-endobj
-10 0 obj
-<</BaseFont/Times-Italic/Type/Font
-/Subtype/Type1>>
-endobj
-9 0 obj
-<</BaseFont/Times-Bold/Type/Font
-/Subtype/Type1>>
-endobj
-8 0 obj
-<</BaseFont/Times-Roman/Type/Font
-/Subtype/Type1>>
-endobj
-13 0 obj
-<</Type/Metadata
-/Subtype/XML/Length 1335>>stream
-<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d'?>
-<?adobe-xap-filters esc="CRLF"?>
-<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
-<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='45f70239-112b-11ed-0000-0d90648fa89' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.04'/>
-<rdf:Description rdf:about='45f70239-112b-11ed-0000-0d90648fa89' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2012-07-28T16:48:26-07:00</xmp:ModifyDate>
-<xmp:CreateDate>2012-07-28T16:48:26-07:00</xmp:CreateDate>
-<xmp:CreatorTool>groff version 1.21</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='45f70239-112b-11ed-0000-0d90648fa89' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:45f70239-112b-11ed-0000-0d90648fa89À''/>
-<rdf:Description rdf:about='45f70239-112b-11ed-0000-0d90648fa89' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
-</rdf:RDF>
-</x:xmpmeta>
-                                                                        
-                                                                        
-<?xpacket end='w'?>
-endstream
-endobj
-2 0 obj
-<</Producer(GPL Ghostscript 9.04)
-/CreationDate(D:20120728164826-07'00')
-/ModDate(D:20120728164826-07'00')
-/Creator(groff version 1.21)>>endobj
-xref
-0 14
-0000000000 65535 f 
-0000000870 00000 n 
-0000002667 00000 n 
-0000000811 00000 n 
-0000000651 00000 n 
-0000000015 00000 n 
-0000000632 00000 n 
-0000000935 00000 n 
-0000001189 00000 n 
-0000001124 00000 n 
-0000001056 00000 n 
-0000000976 00000 n 
-0000001006 00000 n 
-0000001255 00000 n 
-trailer
-<< /Size 14 /Root 1 0 R /Info 2 0 R
-/ID [<EAE174CEC9B381FD4EB8D11565FEA305><EAE174CEC9B381FD4EB8D11565FEA305>]
->>
-startxref
-2819
-%%EOF
diff --git a/src/other/curl/docs/libcurl/curl_strequal.html b/src/other/curl/docs/libcurl/curl_strequal.html
deleted file mode 100644
index f2e61d5..0000000
--- a/src/other/curl/docs/libcurl/curl_strequal.html
+++ /dev/null
@@ -1,107 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:14 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_strequal</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_strequal</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_strequal,
-curl_strnequal - case insensitive string comparisons</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>int
-curl_strequal(char *</b><i>str1</i><b>, char
-*</b><i>str2</i><b>);</b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>int
-curl_strenqual(char *</b><i>str1</i><b>, char
-*</b><i>str2</i><b>, size_t</b> <i>len</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The
-<b>curl_strequal()</b> function compares the two strings
-<i>str1</i> and <i>str2</i>, ignoring the case of the
-characters. It returns a non-zero (TRUE) integer if the
-strings are identical.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-<b>curl_strnequal()</b> function is similar, except it only
-compares the first <i>len</i> characters of <i>str1</i>.</p>
-
-<p style="margin-left:11%; margin-top: 1em">These functions
-are provided by libcurl to enable applications to compare
-strings in a truly portable manner. There are no standard
-portable case insensitive string comparison functions. These
-two work on all platforms.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">These functions
-will be removed from the public libcurl API in a near
-future. They will instead be made "available" by
-source code access only, and then as curlx_strequal() and
-curlx_strenqual().</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Non-zero if the
-strings are identical. Zero if they’re not.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>strcmp</b>(3),
-<b>strcasecmp</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_strequal.pdf b/src/other/curl/docs/libcurl/curl_strequal.pdf
deleted file mode 100644
index 2570c78..0000000
Binary files a/src/other/curl/docs/libcurl/curl_strequal.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_unescape.html b/src/other/curl/docs/libcurl/curl_unescape.html
deleted file mode 100644
index cc60c2f..0000000
--- a/src/other/curl/docs/libcurl/curl_unescape.html
+++ /dev/null
@@ -1,104 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:14 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_unescape</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_unescape</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#AVAILABILITY">AVAILABILITY</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_unescape -
-URL decodes the given string</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>char
-*curl_unescape( char *</b><i>url</i><b>, int</b>
-<i>length</i> <b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Obsolete
-function. Use <i>curl_easy_unescape(3)</i> instead!</p>
-
-<p style="margin-left:11%; margin-top: 1em">This function
-will convert the given URL encoded input string to a
-"plain string" and return that as a new allocated
-string. All input characters that are URL encoded (%XX where
-XX is a two-digit hexadecimal number) will be converted to
-their plain text versions.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If the
-’length’ argument is set to 0, curl_unescape()
-will use strlen() on the input ’url’ string to
-find out the size.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You must
-curl_free() the returned string when you’re done with
-it.</p>
-
-<h2>AVAILABILITY
-<a name="AVAILABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Since 7.15.4,
-<i>curl_easy_unescape(3)</i> should be used. This function
-will be removed in a future release.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A pointer to a
-zero terminated string or NULL if it failed.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>curl_easy_escape(3),
-curl_easy_unescape(3), curl_free(3), RFC 2396</i></p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_unescape.pdf b/src/other/curl/docs/libcurl/curl_unescape.pdf
deleted file mode 100644
index 9a662a1..0000000
Binary files a/src/other/curl/docs/libcurl/curl_unescape.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_version.html b/src/other/curl/docs/libcurl/curl_version.html
deleted file mode 100644
index 21d35af..0000000
--- a/src/other/curl/docs/libcurl/curl_version.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:13 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_version</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_version</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_version -
-returns the libcurl version string</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-<p style="margin-left:11%; margin-top: 1em"><b>char
-*curl_version( );</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Returns a human
-readable string with the version number of libcurl and some
-of its important components (like OpenSSL version).</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A pointer to a
-zero terminated string.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_version_info</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_version.pdf b/src/other/curl/docs/libcurl/curl_version.pdf
deleted file mode 100644
index 334d9af..0000000
Binary files a/src/other/curl/docs/libcurl/curl_version.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/curl_version_info.html b/src/other/curl/docs/libcurl/curl_version_info.html
deleted file mode 100644
index ee58d05..0000000
--- a/src/other/curl/docs/libcurl/curl_version_info.html
+++ /dev/null
@@ -1,264 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:14 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>curl_version_info</title>
-
-</head>
-<body>
-
-<h1 align="center">curl_version_info</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#SYNOPSIS">SYNOPSIS</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#RETURN VALUE">RETURN VALUE</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_version_info
-- returns run-time libcurl version info</p>
-
-<h2>SYNOPSIS
-<a name="SYNOPSIS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>#include
-<curl/curl.h></b></p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_version_info_data
-*curl_version_info( CURLversion</b> <i>type</i><b>);</b></p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Returns a
-pointer to a filled in struct with information about various
-run-time features in libcurl. <i>type</i> should be set to
-the version of this functionality by the time you write your
-program. This way, libcurl will always return a proper
-struct that your program understands, while programs in the
-future might get a different struct. CURLVERSION_NOW will be
-the most recent one for the library you have installed:</p>
-
-<p style="margin-left:11%; margin-top: 1em">data =
-curl_version_info(CURLVERSION_NOW);</p>
-
-<p style="margin-left:11%; margin-top: 1em">Applications
-should use this information to judge if things are possible
-to do or not, instead of using compile-time checks, as
-dynamic/DLL libraries can be changed independent of
-applications.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-curl_version_info_data struct looks like this</p>
-
-<p style="margin-left:11%; margin-top: 1em">typedef struct
-{ <br>
-CURLversion age; /* see description below */</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* when
-’age’ is 0 or higher, the members below also
-exist: */ <br>
-const char *version; /* human readable string */ <br>
-unsigned int version_num; /* numeric representation */ <br>
-const char *host; /* human readable string */ <br>
-int features; /* bitmask, see below */ <br>
-char *ssl_version; /* human readable string */ <br>
-long ssl_version_num; /* not used, always zero */ <br>
-const char *libz_version; /* human readable string */ <br>
-const char **protocols; /* list of protocols */</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* when
-’age’ is 1 or higher, the members below also
-exist: */ <br>
-const char *ares; /* human readable string */ <br>
-int ares_num; /* number */</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* when
-’age’ is 2 or higher, the member below also
-exists: */ <br>
-const char *libidn; /* human readable string */</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* when
-’age’ is 3 or higher, the members below also
-exist: */ <br>
-int iconv_ver_num; /* ’_libiconv_version’ if
-iconv support enabled */</p>
-
-<p style="margin-left:11%; margin-top: 1em">const char
-*libssh_version; /* human readable string */</p>
-
-<p style="margin-left:11%; margin-top: 1em">}
-curl_version_info_data;</p>
-
-<p style="margin-left:11%; margin-top: 1em"><i>age</i>
-describes what the age of this struct is. The number depends
-on how new the libcurl you’re using is. You are
-however guaranteed to get a struct that you have a matching
-struct for in the header, as you tell libcurl your
-"age" with the input argument.</p>
-
-<p style="margin-left:11%; margin-top: 1em"><i>version</i>
-is just an ascii string for the libcurl version.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>version_num</i>
-is a 24 bit number created like this: <8 bits major
-number> | <8 bits minor number> | <8 bits patch
-number>. Version 7.9.8 is therefore returned as
-0x070908.</p>
-
-<p style="margin-left:11%; margin-top: 1em"><i>host</i> is
-an ascii string showing what host information that this
-libcurl was built for. As discovered by a configure script
-or set by the build environment.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>features</i>
-can have none, one or more bits set, and the currently
-defined bits are:</p>
-
-<p style="margin-left:22%;">CURL_VERSION_IPV6</p>
-
-<p style="margin-left:32%;">supports IPv6</p>
-
-<p style="margin-left:22%;">CURL_VERSION_KERBEROS4</p>
-
-<p style="margin-left:32%;">supports kerberos4 (when using
-FTP)</p>
-
-<p style="margin-left:22%;">CURL_VERSION_SSL</p>
-
-<p style="margin-left:32%;">supports SSL (HTTPS/FTPS)
-(Added in 7.10)</p>
-
-<p style="margin-left:22%;">CURL_VERSION_LIBZ</p>
-
-<p style="margin-left:32%;">supports HTTP deflate using
-libz (Added in 7.10)</p>
-
-<p style="margin-left:22%;">CURL_VERSION_NTLM</p>
-
-<p style="margin-left:32%;">supports HTTP NTLM (added in
-7.10.6)</p>
-
-<p style="margin-left:22%;">CURL_VERSION_GSSNEGOTIATE</p>
-
-<p style="margin-left:32%;">supports HTTP GSS-Negotiate
-(added in 7.10.6)</p>
-
-<p style="margin-left:22%;">CURL_VERSION_DEBUG</p>
-
-<p style="margin-left:32%;">libcurl was built with debug
-capabilities (added in 7.10.6)</p>
-
-<p style="margin-left:22%;">CURL_VERSION_CURLDEBUG</p>
-
-<p style="margin-left:32%;">libcurl was built with memory
-tracking debug capabilities. This is mainly of interest for
-libcurl hackers. (added in 7.19.6)</p>
-
-<p style="margin-left:22%;">CURL_VERSION_ASYNCHDNS</p>
-
-<p style="margin-left:32%;">libcurl was built with support
-for asynchronous name lookups, which allows more exact
-timeouts (even on Windows) and less blocking when using the
-multi interface. (added in 7.10.7)</p>
-
-<p style="margin-left:22%;">CURL_VERSION_SPNEGO</p>
-
-<p style="margin-left:32%;">libcurl was built with support
-for SPNEGO authentication (Simple and Protected GSS-API
-Negotiation Mechanism, defined in RFC 2478.) (added in
-7.10.8)</p>
-
-<p style="margin-left:22%;">CURL_VERSION_LARGEFILE</p>
-
-<p style="margin-left:32%;">libcurl was built with support
-for large files. (Added in 7.11.1)</p>
-
-<p style="margin-left:22%;">CURL_VERSION_IDN</p>
-
-<p style="margin-left:32%;">libcurl was built with support
-for IDNA, domain names with international letters. (Added in
-7.12.0)</p>
-
-<p style="margin-left:22%;">CURL_VERSION_SSPI</p>
-
-<p style="margin-left:32%;">libcurl was built with support
-for SSPI. This is only available on Windows and makes
-libcurl use Windows-provided functions for NTLM
-authentication. It also allows libcurl to use the current
-user and the current user’s password without the app
-having to pass them on. (Added in 7.13.2)</p>
-
-<p style="margin-left:22%;">CURL_VERSION_CONV</p>
-
-<p style="margin-left:32%;">libcurl was built with support
-for character conversions, as provided by the CURLOPT_CONV_*
-callbacks. (Added in 7.15.4)</p>
-
-<p style="margin-left:11%;"><i>ssl_version</i> is an ASCII
-string for the OpenSSL version used. If libcurl has no SSL
-support, this is NULL.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>ssl_version_num</i>
-is the numerical OpenSSL version value as defined by the
-OpenSSL project. If libcurl has no SSL support, this is
-0.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>libz_version</i>
-is an ASCII string (there is no numerical version). If
-libcurl has no libz support, this is NULL.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>protocols</i>
-is a pointer to an array of char * pointers, containing the
-names protocols that libcurl supports (using lowercase
-letters). The protocol names are the same as would be used
-in URLs. The array is terminated by a NULL entry.</p>
-
-<h2>RETURN VALUE
-<a name="RETURN VALUE"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A pointer to a
-curl_version_info_data struct.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>curl_version(3)</i></p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/curl_version_info.pdf b/src/other/curl/docs/libcurl/curl_version_info.pdf
deleted file mode 100644
index 55d7ec8..0000000
Binary files a/src/other/curl/docs/libcurl/curl_version_info.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/index.html b/src/other/curl/docs/libcurl/index.html
deleted file mode 100644
index 287a2dd..0000000
--- a/src/other/curl/docs/libcurl/index.html
+++ /dev/null
@@ -1,61 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<title>Index to libcurl documentation</title>
-</head>
-
-<body>
-<h1 align="center">Index to libcurl documentation</h1>
-
-<h2>Programs</h2>
-<p><a href="../index.html">curl and tools</a>
-
-<h2>Overviews</h2>
-<A HREF="libcurl.html">libcurl</A>
-<br><a href="libcurl-easy.html">libcurl-easy</a>
-<br><a href="libcurl-multi.html">libcurl-multi</a>
-<br><a href="libcurl-share.html">libcurl-share</a>
-<br><a href="libcurl-errors.html">libcurl-errors</a>
-<br><a href="libcurl-tutorial.html">libcurl-tutorial</a>
-
-<H2>Library Functions (A-Z)</H2>
-<a href="curl_easy_cleanup.html">curl_easy_cleanup</A>
-<br><a href="curl_easy_duphandle.html">curl_easy_duphandle</A>
-<br><a href="curl_easy_getinfo.html">curl_easy_getinfo</A>
-<br><a href="curl_easy_init.html">curl_easy_init</A>
-<br><a href="curl_easy_perform.html">curl_easy_perform</A>
-<br><a href="curl_easy_recv.html">curl_easy_recv</A>
-<br><a href="curl_easy_reset.html">curl_easy_reset</A>
-<br><a href="curl_easy_send.html">curl_easy_send</A>
-<br><a href="curl_easy_setopt.html">curl_easy_setopt</A>
-<br><a href="curl_easy_strerror.html">curl_easy_strerror</A>
-<br><a href="curl_escape.html">curl_escape</A>
-<br><a href="curl_formadd.html">curl_formadd</A>
-<br><a href="curl_formfree.html">curl_formfree</A>
-<br><a href="curl_free.html">curl_free</A>
-<br><a href="curl_getdate.html">curl_getdate</A>
-<br><a href="curl_getenv.html">curl_getenv</A>
-<br><a href="curl_global_cleanup.html">curl_global_cleanup</A>
-<br><a href="curl_global_init.html">curl_global_init</A>
-<br><a href="curl_global_init_mem.html">curl_global_init_mem</A>
-<br><a href="curl_mprintf.html">curl_mprintf</A>
-<br><a href="curl_multi_add_handle.html">curl_multi_add_handle</a>
-<br><a href="curl_multi_cleanup.html">curl_multi_cleanup</a>
-<br><a href="curl_multi_fdset.html">curl_multi_fdset</a>
-<br><a href="curl_multi_info_read.html">curl_multi_info_read</a>
-<br><a href="curl_multi_init.html">curl_multi_init</a>
-<br><a href="curl_multi_perform.html">curl_multi_perform</a>
-<br><a href="curl_multi_remove_handle.html">curl_multi_remove_handle</a>
-<br><a href="curl_multi_strerror.html">curl_multi_strerror.html</a>
-<br><a href="curl_share_cleanup.html">curl_share_cleanup</A>
-<br><a href="curl_share_init.html">curl_share_init</A>
-<br><a href="curl_share_setopt.html">curl_share_setopt</A>
-<br><a href="curl_share_strerror.html">curl_share_strerror.html</a>
-<br><a href="curl_slist_append.html">curl_slist_append</A>
-<br><a href="curl_slist_free_all.html">curl_slist_free_all</A>
-<br><a href="curl_strequal.html">curl_strequal and curl_strnequal</A>
-<br><a href="curl_unescape.html">curl_unescape</A>
-<br><a href="curl_version.html">curl_version</A>
-<br><a href="curl_version_info.html">curl_version_info</A>
-
-</body></html>
diff --git a/src/other/curl/docs/libcurl/libcurl-easy.html b/src/other/curl/docs/libcurl/libcurl-easy.html
deleted file mode 100644
index fbd8373..0000000
--- a/src/other/curl/docs/libcurl/libcurl-easy.html
+++ /dev/null
@@ -1,73 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:17 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>libcurl</title>
-
-</head>
-<body>
-
-<h1 align="center">libcurl</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">libcurl-easy
-− easy interface overview</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">When using
-libcurl’s "easy" interface you init your
-session and get a handle (often referred to as an "easy
-handle"), which you use as input to the easy interface
-functions you use. Use <i>curl_easy_init(3)</i> to get the
-handle.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You continue by
-setting all the options you want in the upcoming transfer,
-the most important among them is the URL itself (you
-can’t transfer anything without a specified URL as you
-may have figured out yourself). You might want to set some
-callbacks as well that will be called from the library when
-data is available etc. <i>curl_easy_setopt(3)</i> is used
-for all this.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When all is
-setup, you tell libcurl to perform the transfer using
-<i>curl_easy_perform(3)</i>. It will then do the entire
-operation and won’t return until it is done
-(successfully or not).</p>
-
-<p style="margin-left:11%; margin-top: 1em">After the
-transfer has been made, you can set new options and make
-another transfer, or if you’re done, cleanup the
-session by calling <i>curl_easy_cleanup(3)</i>. If you want
-persistent connections, you don’t cleanup immediately,
-but instead run ahead and perform other transfers using the
-same easy handle.</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/libcurl-easy.pdf b/src/other/curl/docs/libcurl/libcurl-easy.pdf
deleted file mode 100644
index 2da1ea1..0000000
Binary files a/src/other/curl/docs/libcurl/libcurl-easy.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/libcurl-errors.html b/src/other/curl/docs/libcurl/libcurl-errors.html
deleted file mode 100644
index f1e5e44..0000000
--- a/src/other/curl/docs/libcurl/libcurl-errors.html
+++ /dev/null
@@ -1,587 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:17 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>libcurl-errors</title>
-
-</head>
-<body>
-
-<h1 align="center">libcurl-errors</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#CURLcode">CURLcode</a><br>
-<a href="#CURLMcode">CURLMcode</a><br>
-<a href="#CURLSHcode">CURLSHcode</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">libcurl-errors
-− error codes in libcurl</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This man page
-includes most, if not all, available error codes in libcurl.
-Why they occur and possibly what you can do to fix the
-problem are also included.</p>
-
-<h2>CURLcode
-<a name="CURLcode"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Almost all
-"easy" interface functions return a CURLcode error
-code. No matter what, using the <i>curl_easy_setopt(3)</i>
-option <i>CURLOPT_ERRORBUFFER</i> is a good idea as it will
-give you a human readable error string that may offer more
-details about the cause of the error than just the error
-code. <i>curl_easy_strerror(3)</i> can be called to get an
-error string from a given CURLcode number.</p>
-
-<p style="margin-left:11%; margin-top: 1em">CURLcode is one
-of the following: <br>
-CURLE_OK (0)</p>
-
-<p style="margin-left:22%;">All fine. Proceed as usual.</p>
-
-<p style="margin-left:11%;">CURLE_UNSUPPORTED_PROTOCOL
-(1)</p>
-
-<p style="margin-left:22%;">The URL you passed to libcurl
-used a protocol that this libcurl does not support. The
-support might be a compile-time option that you didn’t
-use, it can be a misspelled protocol string or just a
-protocol libcurl has no code for.</p>
-
-<p style="margin-left:11%;">CURLE_FAILED_INIT (2)</p>
-
-<p style="margin-left:22%;">Very early initialization code
-failed. This is likely to be an internal error or
-problem.</p>
-
-<p style="margin-left:11%;">CURLE_URL_MALFORMAT (3)</p>
-
-<p style="margin-left:22%;">The URL was not properly
-formatted.</p>
-
-<p style="margin-left:11%;">CURLE_COULDNT_RESOLVE_PROXY
-(5)</p>
-
-<p style="margin-left:22%;">Couldn’t resolve proxy.
-The given proxy host could not be resolved.</p>
-
-<p style="margin-left:11%;">CURLE_COULDNT_RESOLVE_HOST
-(6)</p>
-
-<p style="margin-left:22%;">Couldn’t resolve host.
-The given remote host was not resolved.</p>
-
-<p style="margin-left:11%;">CURLE_COULDNT_CONNECT (7)</p>
-
-<p style="margin-left:22%;">Failed to connect() to host or
-proxy.</p>
-
-<p style="margin-left:11%;">CURLE_FTP_WEIRD_SERVER_REPLY
-(8)</p>
-
-<p style="margin-left:22%;">After connecting to a FTP
-server, libcurl expects to get a certain reply back. This
-error code implies that it got a strange or bad reply. The
-given remote server is probably not an OK FTP server.</p>
-
-<p style="margin-left:11%;">CURLE_REMOTE_ACCESS_DENIED
-(9)</p>
-
-<p style="margin-left:22%;">We were denied access to the
-resource given in the URL. For FTP, this occurs while trying
-to change to the remote directory.</p>
-
-<p style="margin-left:11%;">CURLE_FTP_WEIRD_PASS_REPLY
-(11)</p>
-
-<p style="margin-left:22%;">After having sent the FTP
-password to the server, libcurl expects a proper reply. This
-error code indicates that an unexpected code was
-returned.</p>
-
-<p style="margin-left:11%;">CURLE_FTP_WEIRD_PASV_REPLY
-(13)</p>
-
-<p style="margin-left:22%;">libcurl failed to get a
-sensible result back from the server as a response to either
-a PASV or a EPSV command. The server is flawed.</p>
-
-<p style="margin-left:11%;">CURLE_FTP_WEIRD_227_FORMAT
-(14)</p>
-
-<p style="margin-left:22%;">FTP servers return a 227-line
-as a response to a PASV command. If libcurl fails to parse
-that line, this return code is passed back.</p>
-
-<p style="margin-left:11%;">CURLE_FTP_PRET_FAILED (84)</p>
-
-<p style="margin-left:22%;">The FTP server does not
-understand the PRET command at all or does not support the
-given argument. Be careful when using
-<i>CURLOPT_CUSTOMREQUEST</i>, a custom LIST command will be
-sent with PRET CMD before PASV as well. (Added in
-7.20.0)</p>
-
-<p style="margin-left:11%;">CURLE_FTP_CANT_GET_HOST
-(15)</p>
-
-<p style="margin-left:22%;">An internal failure to lookup
-the host used for the new connection.</p>
-
-<p style="margin-left:11%;">CURLE_FTP_COULDNT_SET_TYPE
-(17)</p>
-
-<p style="margin-left:22%;">Received an error when trying
-to set the transfer mode to binary or ASCII.</p>
-
-<p style="margin-left:11%;">CURLE_PARTIAL_FILE (18)</p>
-
-<p style="margin-left:22%;">A file transfer was shorter or
-larger than expected. This happens when the server first
-reports an expected transfer size, and then delivers data
-that doesn’t match the previously given size.</p>
-
-<p style="margin-left:11%;">CURLE_FTP_COULDNT_RETR_FILE
-(19)</p>
-
-<p style="margin-left:22%;">This was either a weird reply
-to a ’RETR’ command or a zero byte transfer
-complete.</p>
-
-<p style="margin-left:11%;">CURLE_QUOTE_ERROR (21)</p>
-
-<p style="margin-left:22%;">When sending custom
-"QUOTE" commands to the remote server, one of the
-commands returned an error code that was 400 or higher (for
-FTP) or otherwise indicated unsuccessful completion of the
-command.</p>
-
-<p style="margin-left:11%;">CURLE_HTTP_RETURNED_ERROR
-(22)</p>
-
-<p style="margin-left:22%;">This is returned if
-CURLOPT_FAILONERROR is set TRUE and the HTTP server returns
-an error code that is >= 400.</p>
-
-<p style="margin-left:11%;">CURLE_WRITE_ERROR (23)</p>
-
-<p style="margin-left:22%;">An error occurred when writing
-received data to a local file, or an error was returned to
-libcurl from a write callback.</p>
-
-<p style="margin-left:11%;">CURLE_UPLOAD_FAILED (25)</p>
-
-<p style="margin-left:22%;">Failed starting the upload. For
-FTP, the server typically denied the STOR command. The error
-buffer usually contains the server’s explanation for
-this.</p>
-
-<p style="margin-left:11%;">CURLE_READ_ERROR (26)</p>
-
-<p style="margin-left:22%;">There was a problem reading a
-local file or an error returned by the read callback.</p>
-
-<p style="margin-left:11%;">CURLE_OUT_OF_MEMORY (27)</p>
-
-<p style="margin-left:22%;">A memory allocation request
-failed. This is serious badness and things are severely
-screwed up if this ever occurs.</p>
-
-<p style="margin-left:11%;">CURLE_OPERATION_TIMEDOUT
-(28)</p>
-
-<p style="margin-left:22%;">Operation timeout. The
-specified time-out period was reached according to the
-conditions.</p>
-
-<p style="margin-left:11%;">CURLE_FTP_PORT_FAILED (30)</p>
-
-<p style="margin-left:22%;">The FTP PORT command returned
-error. This mostly happens when you haven’t specified
-a good enough address for libcurl to use. See
-<i>CURLOPT_FTPPORT</i>.</p>
-
-<p style="margin-left:11%;">CURLE_FTP_COULDNT_USE_REST
-(31)</p>
-
-<p style="margin-left:22%;">The FTP REST command returned
-error. This should never happen if the server is sane.</p>
-
-<p style="margin-left:11%;">CURLE_RANGE_ERROR (33)</p>
-
-<p style="margin-left:22%;">The server does not support or
-accept range requests.</p>
-
-<p style="margin-left:11%;">CURLE_HTTP_POST_ERROR (34)</p>
-
-<p style="margin-left:22%;">This is an odd error that
-mainly occurs due to internal confusion.</p>
-
-<p style="margin-left:11%;">CURLE_SSL_CONNECT_ERROR
-(35)</p>
-
-<p style="margin-left:22%;">A problem occurred somewhere in
-the SSL/TLS handshake. You really want the error buffer and
-read the message there as it pinpoints the problem slightly
-more. Could be certificates (file formats, paths,
-permissions), passwords, and others.</p>
-
-<p style="margin-left:11%;">CURLE_BAD_DOWNLOAD_RESUME
-(36)</p>
-
-<p style="margin-left:22%;">The download could not be
-resumed because the specified offset was out of the file
-boundary.</p>
-
-<p style="margin-left:11%;">CURLE_FILE_COULDNT_READ_FILE
-(37)</p>
-
-<p style="margin-left:22%;">A file given with FILE://
-couldn’t be opened. Most likely because the file path
-doesn’t identify an existing file. Did you check file
-permissions?</p>
-
-<p style="margin-left:11%;">CURLE_LDAP_CANNOT_BIND (38)</p>
-
-<p style="margin-left:22%;">LDAP cannot bind. LDAP bind
-operation failed.</p>
-
-<p style="margin-left:11%;">CURLE_LDAP_SEARCH_FAILED
-(39)</p>
-
-<p style="margin-left:22%;">LDAP search failed.</p>
-
-<p style="margin-left:11%;">CURLE_FUNCTION_NOT_FOUND
-(41)</p>
-
-<p style="margin-left:22%;">Function not found. A required
-zlib function was not found.</p>
-
-<p style="margin-left:11%;">CURLE_ABORTED_BY_CALLBACK
-(42)</p>
-
-<p style="margin-left:22%;">Aborted by callback. A callback
-returned "abort" to libcurl.</p>
-
-<p style="margin-left:11%;">CURLE_BAD_FUNCTION_ARGUMENT
-(43)</p>
-
-<p style="margin-left:22%;">Internal error. A function was
-called with a bad parameter.</p>
-
-<p style="margin-left:11%;">CURLE_INTERFACE_FAILED (45)</p>
-
-<p style="margin-left:22%;">Interface error. A specified
-outgoing interface could not be used. Set which interface to
-use for outgoing connections’ source IP address with
-CURLOPT_INTERFACE.</p>
-
-<p style="margin-left:11%;">CURLE_TOO_MANY_REDIRECTS
-(47)</p>
-
-<p style="margin-left:22%;">Too many redirects. When
-following redirects, libcurl hit the maximum amount. Set
-your limit with CURLOPT_MAXREDIRS.</p>
-
-<p style="margin-left:11%;">CURLE_UNKNOWN_TELNET_OPTION
-(48)</p>
-
-<p style="margin-left:22%;">An option set with
-CURLOPT_TELNETOPTIONS was not recognized/known. Refer to the
-appropriate documentation.</p>
-
-<p style="margin-left:11%;">CURLE_TELNET_OPTION_SYNTAX
-(49)</p>
-
-<p style="margin-left:22%;">A telnet option string was
-Illegally formatted.</p>
-
-<p style="margin-left:11%;">CURLE_PEER_FAILED_VERIFICATION
-(51)</p>
-
-<p style="margin-left:22%;">The remote server’s SSL
-certificate or SSH md5 fingerprint was deemed not OK.</p>
-
-<p style="margin-left:11%;">CURLE_GOT_NOTHING (52)</p>
-
-<p style="margin-left:22%;">Nothing was returned from the
-server, and under the circumstances, getting nothing is
-considered an error.</p>
-
-<p style="margin-left:11%;">CURLE_SSL_ENGINE_NOTFOUND
-(53)</p>
-
-<p style="margin-left:22%;">The specified crypto engine
-wasn’t found.</p>
-
-<p style="margin-left:11%;">CURLE_SSL_ENGINE_SETFAILED
-(54)</p>
-
-<p style="margin-left:22%;">Failed setting the selected SSL
-crypto engine as default!</p>
-
-<p style="margin-left:11%;">CURLE_SEND_ERROR (55)</p>
-
-<p style="margin-left:22%;">Failed sending network
-data.</p>
-
-<p style="margin-left:11%;">CURLE_RECV_ERROR (56)</p>
-
-<p style="margin-left:22%;">Failure with receiving network
-data.</p>
-
-<p style="margin-left:11%;">CURLE_SSL_CERTPROBLEM (58)</p>
-
-<p style="margin-left:22%;">problem with the local client
-certificate.</p>
-
-<p style="margin-left:11%;">CURLE_SSL_CIPHER (59)</p>
-
-<p style="margin-left:22%;">Couldn’t use specified
-cipher.</p>
-
-<p style="margin-left:11%;">CURLE_SSL_CACERT (60)</p>
-
-<p style="margin-left:22%;">Peer certificate cannot be
-authenticated with known CA certificates.</p>
-
-<p style="margin-left:11%;">CURLE_BAD_CONTENT_ENCODING
-(61)</p>
-
-<p style="margin-left:22%;">Unrecognized transfer
-encoding.</p>
-
-<p style="margin-left:11%;">CURLE_LDAP_INVALID_URL (62)</p>
-
-<p style="margin-left:22%;">Invalid LDAP URL.</p>
-
-<p style="margin-left:11%;">CURLE_FILESIZE_EXCEEDED
-(63)</p>
-
-<p style="margin-left:22%;">Maximum file size exceeded.</p>
-
-<p style="margin-left:11%;">CURLE_USE_SSL_FAILED (64)</p>
-
-<p style="margin-left:22%;">Requested FTP SSL level
-failed.</p>
-
-<p style="margin-left:11%;">CURLE_SEND_FAIL_REWIND (65)</p>
-
-<p style="margin-left:22%;">When doing a send operation
-curl had to rewind the data to retransmit, but the rewinding
-operation failed.</p>
-
-<p style="margin-left:11%;">CURLE_SSL_ENGINE_INITFAILED
-(66)</p>
-
-<p style="margin-left:22%;">Initiating the SSL Engine
-failed.</p>
-
-<p style="margin-left:11%;">CURLE_LOGIN_DENIED (67)</p>
-
-<p style="margin-left:22%;">The remote server denied curl
-to login (Added in 7.13.1)</p>
-
-<p style="margin-left:11%;">CURLE_TFTP_NOTFOUND (68)</p>
-
-<p style="margin-left:22%;">File not found on TFTP
-server.</p>
-
-<p style="margin-left:11%;">CURLE_TFTP_PERM (69)</p>
-
-<p style="margin-left:22%;">Permission problem on TFTP
-server.</p>
-
-<p style="margin-left:11%;">CURLE_REMOTE_DISK_FULL (70)</p>
-
-<p style="margin-left:22%;">Out of disk space on the
-server.</p>
-
-<p style="margin-left:11%;">CURLE_TFTP_ILLEGAL (71)</p>
-
-<p style="margin-left:22%;">Illegal TFTP operation.</p>
-
-<p style="margin-left:11%;">CURLE_TFTP_UNKNOWNID (72)</p>
-
-<p style="margin-left:22%;">Unknown TFTP transfer ID.</p>
-
-<p style="margin-left:11%;">CURLE_REMOTE_FILE_EXISTS
-(73)</p>
-
-<p style="margin-left:22%;">File already exists and will
-not be overwritten.</p>
-
-<p style="margin-left:11%;">CURLE_TFTP_NOSUCHUSER (74)</p>
-
-<p style="margin-left:22%;">This error should never be
-returned by a properly functioning TFTP server.</p>
-
-<p style="margin-left:11%;">CURLE_CONV_FAILED (75)</p>
-
-<p style="margin-left:22%;">Character conversion
-failed.</p>
-
-<p style="margin-left:11%;">CURLE_CONV_REQD (76)</p>
-
-<p style="margin-left:22%;">Caller must register conversion
-callbacks.</p>
-
-<p style="margin-left:11%;">CURLE_SSL_CACERT_BADFILE
-(77)</p>
-
-<p style="margin-left:22%;">Problem with reading the SSL CA
-cert (path? access rights?)</p>
-
-<p style="margin-left:11%;">CURLE_REMOTE_FILE_NOT_FOUND
-(78)</p>
-
-<p style="margin-left:22%;">The resource referenced in the
-URL does not exist.</p>
-
-<p style="margin-left:11%;">CURLE_SSH (79)</p>
-
-<p style="margin-left:22%;">An unspecified error occurred
-during the SSH session.</p>
-
-<p style="margin-left:11%;">CURLE_SSL_SHUTDOWN_FAILED
-(80)</p>
-
-<p style="margin-left:22%;">Failed to shut down the SSL
-connection.</p>
-
-<p style="margin-left:11%;">CURLE_AGAIN (81)</p>
-
-<p style="margin-left:22%;">Socket is not ready for
-send/recv wait till it’s ready and try again. This
-return code is only returned from <i>curl_easy_recv(3)</i>
-and <i>curl_easy_send(3)</i> (Added in 7.18.2)</p>
-
-<p style="margin-left:11%;">CURLE_SSL_CRL_BADFILE (82)</p>
-
-<p style="margin-left:22%;">Failed to load CRL file (Added
-in 7.19.0)</p>
-
-<p style="margin-left:11%;">CURLE_SSL_ISSUER_ERROR (83)</p>
-
-<p style="margin-left:22%;">Issuer check failed (Added in
-7.19.0)</p>
-
-<p style="margin-left:11%;">CURLE_OBSOLETE*</p>
-
-<p style="margin-left:22%;">These error codes will never be
-returned. They were used in an old libcurl version and are
-currently unused.</p>
-
-<h2>CURLMcode
-<a name="CURLMcode"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This is the
-generic return code used by functions in the libcurl multi
-interface. Also consider <i>curl_multi_strerror(3)</i>. <br>
-CURLM_CALL_MULTI_PERFORM (-1)</p>
-
-<p style="margin-left:22%;">This is not really an error. It
-means you should call <i>curl_multi_perform(3)</i> again
-without doing select() or similar in between.</p>
-
-<p style="margin-left:11%;">CURLM_OK (0)</p>
-
-<p style="margin-left:22%;">Things are fine.</p>
-
-<p style="margin-left:11%;">CURLM_BAD_HANDLE (1)</p>
-
-<p style="margin-left:22%;">The passed-in handle is not a
-valid CURLM handle.</p>
-
-<p style="margin-left:11%;">CURLM_BAD_EASY_HANDLE (2)</p>
-
-<p style="margin-left:22%;">An easy handle was not
-good/valid. It could mean that it isn’t an easy handle
-at all, or possibly that the handle already is in used by
-this or another multi handle.</p>
-
-<p style="margin-left:11%;">CURLM_OUT_OF_MEMORY (3)</p>
-
-<p style="margin-left:22%;">You are doomed.</p>
-
-<p style="margin-left:11%;">CURLM_INTERNAL_ERROR (4)</p>
-
-<p style="margin-left:22%;">This can only be returned if
-libcurl bugs. Please report it to us!</p>
-
-<p style="margin-left:11%;">CURLM_BAD_SOCKET (5)</p>
-
-<p style="margin-left:22%;">The passed-in socket is not a
-valid one that libcurl already knows about. (Added in
-7.15.4)</p>
-
-<p style="margin-left:11%;">CURLM_UNKNOWN_OPTION (6)</p>
-
-<p style="margin-left:22%;">curl_multi_setopt() with
-unsupported option (Added in 7.15.4)</p>
-
-<h2>CURLSHcode
-<a name="CURLSHcode"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The
-"share" interface will return a CURLSHcode to
-indicate when an error has occurred. Also consider
-<i>curl_share_strerror(3)</i>. <br>
-CURLSHE_OK (0)</p>
-
-<p style="margin-left:22%;">All fine. Proceed as usual.</p>
-
-<p style="margin-left:11%;">CURLSHE_BAD_OPTION (1)</p>
-
-<p style="margin-left:22%;">An invalid option was passed to
-the function.</p>
-
-<p style="margin-left:11%;">CURLSHE_IN_USE (2)</p>
-
-<p style="margin-left:22%;">The share object is currently
-in use.</p>
-
-<p style="margin-left:11%;">CURLSHE_INVALID (3)</p>
-
-<p style="margin-left:22%;">An invalid share object was
-passed to the function.</p>
-
-<p style="margin-left:11%;">CURLSHE_NOMEM (4)</p>
-
-<p style="margin-left:22%;">Not enough memory was
-available. (Added in 7.12.0)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/libcurl-errors.pdf b/src/other/curl/docs/libcurl/libcurl-errors.pdf
deleted file mode 100644
index 613f127..0000000
Binary files a/src/other/curl/docs/libcurl/libcurl-errors.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/libcurl-multi.html b/src/other/curl/docs/libcurl/libcurl-multi.html
deleted file mode 100644
index 38bf703..0000000
--- a/src/other/curl/docs/libcurl/libcurl-multi.html
+++ /dev/null
@@ -1,227 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:17 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>libcurl-multi</title>
-
-</head>
-<body>
-
-<h1 align="center">libcurl-multi</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#OBJECTIVES">OBJECTIVES</a><br>
-<a href="#ONE MULTI HANDLE MANY EASY HANDLES">ONE MULTI HANDLE MANY EASY HANDLES</a><br>
-<a href="#MULTI_SOCKET">MULTI_SOCKET</a><br>
-<a href="#BLOCKING">BLOCKING</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">libcurl-multi
-− how to use the multi interface</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This is an
-overview on how to use the libcurl multi interface in your C
-programs. There are specific man pages for each function
-mentioned in here. There’s also the
-<i>libcurl-tutorial(3)</i> man page for a complete tutorial
-to programming with libcurl and the <i>libcurl-easy(3)</i>
-man page for an overview of the libcurl easy interface.</p>
-
-<p style="margin-left:11%; margin-top: 1em">All functions
-in the multi interface are prefixed with curl_multi.</p>
-
-<h2>OBJECTIVES
-<a name="OBJECTIVES"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The multi
-interface offers several abilities that the easy interface
-doesn’t. They are mainly:</p>
-
-<p style="margin-left:11%; margin-top: 1em">1. Enable a
-"pull" interface. The application that uses
-libcurl decides where and when to ask libcurl to get/send
-data.</p>
-
-<p style="margin-left:11%; margin-top: 1em">2. Enable
-multiple simultaneous transfers in the same thread without
-making it complicated for the application.</p>
-
-<p style="margin-left:11%; margin-top: 1em">3. Enable the
-application to wait for action on its own file descriptors
-and curl’s file descriptors simultaneous easily.</p>
-
-<h2>ONE MULTI HANDLE MANY EASY HANDLES
-<a name="ONE MULTI HANDLE MANY EASY HANDLES"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">To use the
-multi interface, you must first create a ’multi
-handle’ with <i>curl_multi_init(3)</i>. This handle is
-then used as input to all further curl_multi_*
-functions.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Each single
-transfer is built up with an easy handle. You must create
-them, and setup the appropriate options for each easy
-handle, as outlined in the <i>libcurl(3)</i> man page, using
-<i>curl_easy_setopt(3)</i>.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When the easy
-handle is setup for a transfer, then instead of using
-<i>curl_easy_perform(3)</i> (as when using the easy
-interface for transfers), you should instead add the easy
-handle to the multi handle using
-<i>curl_multi_add_handle(3)</i>. The multi handle is
-sometimes referred to as a ´multi stack´ because
-of the fact that it may hold a large amount of easy
-handles.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Should you
-change your mind, the easy handle is again removed from the
-multi stack using <i>curl_multi_remove_handle(3)</i>. Once
-removed from the multi handle, you can again use other easy
-interface functions like <i>curl_easy_perform(3)</i> on the
-handle or whatever you think is necessary.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Adding the easy
-handle to the multi handle does not start the transfer.
-Remember that one of the main ideas with this interface is
-to let your application drive. You drive the transfers by
-invoking <i>curl_multi_perform(3)</i>. libcurl will then
-transfer data if there is anything available to transfer.
-It’ll use the callbacks and everything else you have
-setup in the individual easy handles. It’ll transfer
-data on all current transfers in the multi stack that are
-ready to transfer anything. It may be all, it may be
-none.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Your
-application can acquire knowledge from libcurl when it would
-like to get invoked to transfer data, so that you
-don’t have to busy-loop and call that
-<i>curl_multi_perform(3)</i> like crazy.
-<i>curl_multi_fdset(3)</i> offers an interface using which
-you can extract fd_sets from libcurl to use in select() or
-poll() calls in order to get to know when the transfers in
-the multi stack might need attention. This also makes it
-very easy for your program to wait for input on your own
-private file descriptors at the same time or perhaps timeout
-every now and then, should you want that.</p>
-
-<p style="margin-left:11%; margin-top: 1em">A little note
-here about the return codes from the multi functions, and
-especially the <i>curl_multi_perform(3)</i>: if you receive
-<i>CURLM_CALL_MULTI_PERFORM</i>, this basically means that
-you should call <i>curl_multi_perform(3)</i> again, before
-you select() on more actions. You don’t have to do it
-immediately, but the return code means that libcurl may have
-more data available to return or that there may be more data
-to send off before it is "satisfied".</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>curl_multi_perform(3)</i>
-stores the number of still running transfers in one of its
-input arguments, and by reading that you can figure out when
-all the transfers in the multi handles are done.
-’done’ does not mean successful. One or more of
-the transfers may have failed. Tracking when this number
-changes, you know when one or more transfers are done.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To get
-information about completed transfers, to figure out success
-or not and similar, <i>curl_multi_info_read(3)</i> should be
-called. It can return a message about a current or previous
-transfer. Repeated invokes of the function get more messages
-until the message queue is empty. The information you
-receive there includes an easy handle pointer which you may
-use to identify which easy handle the information
-regards.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When a single
-transfer is completed, the easy handle is still left added
-to the multi stack. You need to first remove the easy handle
-with <i>curl_multi_remove_handle(3)</i> and then close it
-with <i>curl_easy_cleanup(3)</i>, or possibly set new
-options to it and add it again with
-<i>curl_multi_add_handle(3)</i> to start another
-transfer.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When all
-transfers in the multi stack are done, cleanup the multi
-handle with <i>curl_multi_cleanup(3)</i>. Be careful and
-please note that you <b>MUST</b> invoke separate
-<i>curl_easy_cleanup(3)</i> calls on every single easy
-handle to clean them up properly.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you want to
-re-use an easy handle that was added to the multi handle for
-transfer, you must first remove it from the multi stack and
-then re-add it again (possibly after having altered some
-options at your own choice).</p>
-
-<h2>MULTI_SOCKET
-<a name="MULTI_SOCKET"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Since 7.16.0,
-the <i>curl_multi_socket_action(3)</i> function offers a way
-for applications to not only avoid being forced to use
-select(), but it also offers a much more high-performance
-API that will make a significant difference for applications
-using large numbers of simultaneous connections.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>curl_multi_socket_action(3)</i>
-is then used instead of <i>curl_multi_perform(3)</i>.</p>
-
-<h2>BLOCKING
-<a name="BLOCKING"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">A few areas in
-the code are still using blocking code, even when used from
-the multi interface. While we certainly want and intend for
-these to get fixed in the future, you should be aware of the
-following current restrictions:</p>
-
-<p style="margin-left:11%; margin-top: 1em">- Name resolves
-on non-windows unless c-ares is used <br>
-- GnuTLS SSL connections <br>
-- NSS SSL connections <br>
-- Active FTP connections <br>
-- HTTP proxy CONNECT operations <br>
-- SOCKS proxy handshakes <br>
-- file:// transfers <br>
-- TELNET transfers</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/libcurl-multi.pdf b/src/other/curl/docs/libcurl/libcurl-multi.pdf
deleted file mode 100644
index 4fd8348..0000000
Binary files a/src/other/curl/docs/libcurl/libcurl-multi.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/libcurl-share.html b/src/other/curl/docs/libcurl/libcurl-share.html
deleted file mode 100644
index ced82c1..0000000
--- a/src/other/curl/docs/libcurl/libcurl-share.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:17 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>libcurl-share</title>
-
-</head>
-<body>
-
-<h1 align="center">libcurl-share</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#OBJECTIVES">OBJECTIVES</a><br>
-<a href="#ONE SET OF DATA - MANY TRANSFERS">ONE SET OF DATA - MANY TRANSFERS</a><br>
-<a href="#SHARE OBJECT">SHARE OBJECT</a><br>
-<a href="#SEE ALSO">SEE ALSO</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">libcurl-share
-− how to use the share interface</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This is an
-overview on how to use the libcurl share interface in your C
-programs. There are specific man pages for each function
-mentioned in here.</p>
-
-<p style="margin-left:11%; margin-top: 1em">All functions
-in the share interface are prefixed with curl_share.</p>
-
-<h2>OBJECTIVES
-<a name="OBJECTIVES"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The share
-interface was added to enable sharing of data between curl
-"handles".</p>
-
-<h2>ONE SET OF DATA - MANY TRANSFERS
-<a name="ONE SET OF DATA - MANY TRANSFERS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">You can have
-multiple easy handles share data between them. Have them
-update and use the <b>same</b> cookie database or DNS cache!
-This way, each single transfer will take advantage from data
-updates made by the other transfer(s).</p>
-
-<h2>SHARE OBJECT
-<a name="SHARE OBJECT"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">You create a
-shared object with <i>curl_share_init(3)</i>. It returns a
-handle for a newly created one.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You tell the
-shared object what data you want it to share by using
-<i>curl_share_setopt(3)</i>. Currently you can only share
-DNS and/or COOKIE data.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Since you can
-use this share from multiple threads, and libcurl has no
-internal thread synchronization, you must provide mutex
-callbacks if you’re using this multi-threaded. You set
-lock and unlock functions with <i>curl_share_setopt(3)</i>
-too.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Then, you make
-an easy handle to use this share, you set the
-<i>CURLOPT_SHARE</i> option with <i>curl_easy_setopt(3)</i>,
-and pass in share handle. You can make any number of easy
-handles share the same share handle.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To make an easy
-handle stop using that particular share, you set
-<i>CURLOPT_SHARE</i> to NULL for that easy handle. To make a
-handle stop sharing a particular data, you can
-<i>CURLSHOPT_UNSHARE</i> it.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When
-you’re done using the share, make sure that no easy
-handle is still using it, and call
-<i>curl_share_cleanup(3)</i> on the handle.</p>
-
-<h2>SEE ALSO
-<a name="SEE ALSO"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em"><b>curl_share_init</b>(3),
-<b>curl_share_setopt</b>(3),
-<b>curl_share_cleanup</b>(3)</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/libcurl-share.pdf b/src/other/curl/docs/libcurl/libcurl-share.pdf
deleted file mode 100644
index 797686a..0000000
Binary files a/src/other/curl/docs/libcurl/libcurl-share.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/libcurl-tutorial.html b/src/other/curl/docs/libcurl/libcurl-tutorial.html
deleted file mode 100644
index 4de4fb4..0000000
--- a/src/other/curl/docs/libcurl/libcurl-tutorial.html
+++ /dev/null
@@ -1,2084 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:19 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>libcurl-tutorial</title>
-
-</head>
-<body>
-
-<h1 align="center">libcurl-tutorial</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#Objective">Objective</a><br>
-<a href="#Building">Building</a><br>
-<a href="#Portable Code in a Portable World">Portable Code in a Portable World</a><br>
-<a href="#Global Preparation">Global Preparation</a><br>
-<a href="#Features libcurl Provides">Features libcurl Provides</a><br>
-<a href="#Handle the Easy libcurl">Handle the Easy libcurl</a><br>
-<a href="#Multi-threading Issues">Multi-threading Issues</a><br>
-<a href="#When It Doesn’t Work">When It Doesn’t Work</a><br>
-<a href="#Upload Data to a Remote Site">Upload Data to a Remote Site</a><br>
-<a href="#Passwords">Passwords</a><br>
-<a href="#HTTP Authentication">HTTP Authentication</a><br>
-<a href="#HTTP POSTing">HTTP POSTing</a><br>
-<a href="#Showing Progress">Showing Progress</a><br>
-<a href="#libcurl with C++">libcurl with C++</a><br>
-<a href="#Proxies">Proxies</a><br>
-<a href="#Persistence Is The Way to Happiness">Persistence Is The Way to Happiness</a><br>
-<a href="#HTTP Headers Used by libcurl">HTTP Headers Used by libcurl</a><br>
-<a href="#Customizing Operations">Customizing Operations</a><br>
-<a href="#Cookies Without Chocolate Chips">Cookies Without Chocolate Chips</a><br>
-<a href="#FTP Peculiarities We Need">FTP Peculiarities We Need</a><br>
-<a href="#Headers Equal Fun">Headers Equal Fun</a><br>
-<a href="#Post Transfer Information">Post Transfer Information</a><br>
-<a href="#Security Considerations">Security Considerations</a><br>
-<a href="#Multiple Transfers Using the multi Interface">Multiple Transfers Using the multi Interface</a><br>
-<a href="#SSL, Certificates and Other Tricks">SSL, Certificates and Other Tricks</a><br>
-<a href="#Sharing Data Between Easy Handles">Sharing Data Between Easy Handles</a><br>
-<a href="#Footnotes">Footnotes</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-
-<p style="margin-left:11%; margin-top: 1em">libcurl-tutorial
-− libcurl programming tutorial</p>
-
-<h2>Objective
-<a name="Objective"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This document
-attempts to describe the general principles and some basic
-approaches to consider when programming with libcurl. The
-text will focus mainly on the C interface but might apply
-fairly well on other interfaces as well as they usually
-follow the C one pretty closely.</p>
-
-<p style="margin-left:11%; margin-top: 1em">This document
-will refer to ’the user’ as the person writing
-the source code that uses libcurl. That would probably be
-you or someone in your position. What will be generally
-referred to as ’the program’ will be the
-collected source code that you write that is using libcurl
-for transfers. The program is outside libcurl and libcurl is
-outside of the program.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To get more
-details on all options and functions described herein,
-please refer to their respective man pages.</p>
-
-<h2>Building
-<a name="Building"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">There are many
-different ways to build C programs. This chapter will assume
-a UNIX-style build process. If you use a different build
-system, you can still read this to get general information
-that may apply to your environment as well. <br>
-Compiling the Program</p>
-
-<p style="margin-left:22%;">Your compiler needs to know
-where the libcurl headers are located. Therefore you must
-set your compiler’s include path to point to the
-directory where you installed them. The
-’curl-config’[3] tool can be used to get this
-information:</p>
-
-<p style="margin-left:22%; margin-top: 1em">$ curl-config
---cflags</p>
-
-<p style="margin-left:11%;">Linking the Program with
-libcurl</p>
-
-<p style="margin-left:22%;">When having compiled the
-program, you need to link your object files to create a
-single executable. For that to succeed, you need to link
-with libcurl and possibly also with other libraries that
-libcurl itself depends on. Like the OpenSSL libraries, but
-even some standard OS libraries may be needed on the command
-line. To figure out which flags to use, once again the
-’curl-config’ tool comes to the rescue:</p>
-
-<p style="margin-left:22%; margin-top: 1em">$ curl-config
---libs</p>
-
-<p style="margin-left:11%;">SSL or Not</p>
-
-<p style="margin-left:22%;">libcurl can be built and
-customized in many ways. One of the things that varies from
-different libraries and builds is the support for SSL-based
-transfers, like HTTPS and FTPS. If a supported SSL library
-was detected properly at build-time, libcurl will be built
-with SSL support. To figure out if an installed libcurl has
-been built with SSL support enabled, use
-’curl-config’ like this:</p>
-
-<p style="margin-left:22%; margin-top: 1em">$ curl-config
---feature</p>
-
-<p style="margin-left:22%; margin-top: 1em">And if SSL is
-supported, the keyword ’SSL’ will be written to
-stdout, possibly together with a few other features that
-could be either on or off on for different libcurls.</p>
-
-<p style="margin-left:22%; margin-top: 1em">See also the
-"Features libcurl Provides" further down.</p>
-
-<p style="margin-left:11%;">autoconf macro</p>
-
-<p style="margin-left:22%;">When you write your configure
-script to detect libcurl and setup variables accordingly, we
-offer a prewritten macro that probably does everything you
-need in this area. See docs/libcurl/libcurl.m4 file - it
-includes docs on how to use it.</p>
-
-<h2>Portable Code in a Portable World
-<a name="Portable Code in a Portable World"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The people
-behind libcurl have put a considerable effort to make
-libcurl work on a large amount of different operating
-systems and environments.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You program
-libcurl the same way on all platforms that libcurl runs on.
-There are only very few minor considerations that differ. If
-you just make sure to write your code portable enough, you
-may very well create yourself a very portable program.
-libcurl shouldn’t stop you from that.</p>
-
-<h2>Global Preparation
-<a name="Global Preparation"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The program
-must initialize some of the libcurl functionality globally.
-That means it should be done exactly once, no matter how
-many times you intend to use the library. Once for your
-program’s entire life time. This is done using</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_global_init()</p>
-
-<p style="margin-left:11%; margin-top: 1em">and it takes
-one parameter which is a bit pattern that tells libcurl what
-to initialize. Using <i>CURL_GLOBAL_ALL</i> will make it
-initialize all known internal sub modules, and might be a
-good default option. The current two bits that are specified
-are:</p>
-
-<p style="margin-left:22%;">CURL_GLOBAL_WIN32</p>
-
-<p style="margin-left:32%;">which only does anything on
-Windows machines. When used on a Windows machine,
-it’ll make libcurl initialize the win32 socket stuff.
-Without having that initialized properly, your program
-cannot use sockets properly. You should only do this once
-for each application, so if your program already does this
-or of another library in use does it, you should not tell
-libcurl to do this as well.</p>
-
-<p style="margin-left:22%;">CURL_GLOBAL_SSL</p>
-
-<p style="margin-left:32%;">which only does anything on
-libcurls compiled and built SSL-enabled. On these systems,
-this will make libcurl initialize the SSL library properly
-for this application. This only needs to be done once for
-each application so if your program or another library
-already does this, this bit should not be needed.</p>
-
-<p style="margin-left:11%; margin-top: 1em">libcurl has a
-default protection mechanism that detects if
-<i>curl_global_init(3)</i> hasn’t been called by the
-time <i>curl_easy_perform(3)</i> is called and if that is
-the case, libcurl runs the function itself with a guessed
-bit pattern. Please note that depending solely on this is
-not considered nice nor very good.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When the
-program no longer uses libcurl, it should call
-<i>curl_global_cleanup(3)</i>, which is the opposite of the
-init call. It will then do the reversed operations to
-cleanup the resources the <i>curl_global_init(3)</i> call
-initialized.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Repeated calls
-to <i>curl_global_init(3)</i> and
-<i>curl_global_cleanup(3)</i> should be avoided. They should
-only be called once each.</p>
-
-<h2>Features libcurl Provides
-<a name="Features libcurl Provides"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">It is
-considered best-practice to determine libcurl features at
-run-time rather than at build-time (if possible of course).
-By calling <i>curl_version_info(3)</i> and checking out the
-details of the returned struct, your program can figure out
-exactly what the currently running libcurl supports.</p>
-
-<h2>Handle the Easy libcurl
-<a name="Handle the Easy libcurl"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">libcurl first
-introduced the so called easy interface. All operations in
-the easy interface are prefixed with
-’curl_easy’.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Recent libcurl
-versions also offer the multi interface. More about that
-interface, what it is targeted for and how to use it is
-detailed in a separate chapter further down. You still need
-to understand the easy interface first, so please continue
-reading for better understanding.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To use the easy
-interface, you must first create yourself an easy handle.
-You need one handle for each easy session you want to
-perform. Basically, you should use one handle for every
-thread you plan to use for transferring. You must never
-share the same handle in multiple threads.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Get an easy
-handle with</p>
-
-<p style="margin-left:11%; margin-top: 1em">easyhandle =
-curl_easy_init();</p>
-
-<p style="margin-left:11%; margin-top: 1em">It returns an
-easy handle. Using that you proceed to the next step:
-setting up your preferred actions. A handle is just a logic
-entity for the upcoming transfer or series of transfers.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You set
-properties and options for this handle using
-<i>curl_easy_setopt(3)</i>. They control how the subsequent
-transfer or transfers will be made. Options remain set in
-the handle until set again to something different. Alas,
-multiple requests using the same handle will use the same
-options.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Many of the
-options you set in libcurl are "strings", pointers
-to data terminated with a zero byte. When you set strings
-with <i>curl_easy_setopt(3)</i>, libcurl makes its own copy
-so that they don’t need to be kept around in your
-application after being set[4].</p>
-
-<p style="margin-left:11%; margin-top: 1em">One of the most
-basic properties to set in the handle is the URL. You set
-your preferred URL to transfer with CURLOPT_URL in a manner
-similar to:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(handle,
-CURLOPT_URL, "http://domain.com/");</p>
-
-<p style="margin-left:11%; margin-top: 1em">Let’s
-assume for a while that you want to receive data as the URL
-identifies a remote resource you want to get here. Since you
-write a sort of application that needs this transfer, I
-assume that you would like to get the data passed to you
-directly instead of simply getting it passed to stdout. So,
-you write your own function that matches this prototype:</p>
-
-<p style="margin-left:11%; margin-top: 1em">size_t
-write_data(void *buffer, size_t size, size_t nmemb, void
-*userp);</p>
-
-<p style="margin-left:11%; margin-top: 1em">You tell
-libcurl to pass all data to this function by issuing a
-function similar to this:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_WRITEFUNCTION, write_data);</p>
-
-<p style="margin-left:11%; margin-top: 1em">You can control
-what data your callback function gets in the fourth argument
-by setting another property:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_WRITEDATA, &internal_struct);</p>
-
-<p style="margin-left:11%; margin-top: 1em">Using that
-property, you can easily pass local data between your
-application and the function that gets invoked by libcurl.
-libcurl itself won’t touch the data you pass with
-<i>CURLOPT_WRITEDATA</i>.</p>
-
-<p style="margin-left:11%; margin-top: 1em">libcurl offers
-its own default internal callback that will take care of the
-data if you don’t set the callback with
-<i>CURLOPT_WRITEFUNCTION</i>. It will then simply output the
-received data to stdout. You can have the default callback
-write the data to a different file handle by passing a
-’FILE *’ to a file opened for writing with the
-<i>CURLOPT_WRITEDATA</i> option.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Now, we need to
-take a step back and have a deep breath. Here’s one of
-those rare platform-dependent nitpicks. Did you spot it? On
-some platforms[2], libcurl won’t be able to operate on
-files opened by the program. Thus, if you use the default
-callback and pass in an open file with
-<i>CURLOPT_WRITEDATA</i>, it will crash. You should
-therefore avoid this to make your program run fine virtually
-everywhere.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">(<i>CURLOPT_WRITEDATA</i>
-was formerly known as <i>CURLOPT_FILE</i>. Both names still
-work and do the same thing).</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you’re
-using libcurl as a win32 DLL, you MUST use the
-<i>CURLOPT_WRITEFUNCTION</i> if you set
-<i>CURLOPT_WRITEDATA</i> - or you will experience
-crashes.</p>
-
-<p style="margin-left:11%; margin-top: 1em">There are of
-course many more options you can set, and we’ll get
-back to a few of them later. Let’s instead continue to
-the actual transfer:</p>
-
-<p style="margin-left:11%; margin-top: 1em">success =
-curl_easy_perform(easyhandle);</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>curl_easy_perform(3)</i>
-will connect to the remote site, do the necessary commands
-and receive the transfer. Whenever it receives data, it
-calls the callback function we previously set. The function
-may get one byte at a time, or it may get many kilobytes at
-once. libcurl delivers as much as possible as often as
-possible. Your callback function should return the number of
-bytes it "took care of". If that is not the exact
-same amount of bytes that was passed to it, libcurl will
-abort the operation and return with an error code.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When the
-transfer is complete, the function returns a return code
-that informs you if it succeeded in its mission or not. If a
-return code isn’t enough for you, you can use the
-CURLOPT_ERRORBUFFER to point libcurl to a buffer of yours
-where it’ll store a human readable error message as
-well.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you then
-want to transfer another file, the handle is ready to be
-used again. Mind you, it is even preferred that you re-use
-an existing handle if you intend to make another transfer.
-libcurl will then attempt to re-use the previous
-connection.</p>
-
-<p style="margin-left:11%; margin-top: 1em">For some
-protocols, downloading a file can involve a complicated
-process of logging in, setting the transfer mode, changing
-the current directory and finally transferring the file
-data. libcurl takes care of all that complication for you.
-Given simply the URL to a file, libcurl will take care of
-all the details needed to get the file moved from one
-machine to another.</p>
-
-<h2>Multi-threading Issues
-<a name="Multi-threading Issues"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The first basic
-rule is that you must <b>never</b> share a libcurl handle
-(be it easy or multi or whatever) between multiple threads.
-Only use one handle in one thread at a time.</p>
-
-<p style="margin-left:11%; margin-top: 1em">libcurl is
-completely thread safe, except for two issues: signals and
-SSL/TLS handlers. Signals are used for timing out name
-resolves (during DNS lookup) - when built without c-ares
-support and not on Windows.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you are
-accessing HTTPS or FTPS URLs in a multi-threaded manner, you
-are then of course using the underlying SSL library
-multi-threaded and those libs might have their own
-requirements on this issue. Basically, you need to provide
-one or two functions to allow it to function properly. For
-all details, see this:</p>
-
-<p style="margin-left:11%; margin-top: 1em">OpenSSL</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">http://www.openssl.org/docs/crypto/threads.html#DESCRIPTION</p>
-
-<p style="margin-left:11%; margin-top: 1em">GnuTLS</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">http://www.gnu.org/software/gnutls/manual/html_node/Multi_002dthreaded-applications.html</p>
-
-<p style="margin-left:11%; margin-top: 1em">NSS</p>
-
-<p style="margin-left:11%; margin-top: 1em">is claimed to
-be thread-safe already without anything required.</p>
-
-<p style="margin-left:11%; margin-top: 1em">yassl</p>
-
-<p style="margin-left:11%; margin-top: 1em">Required
-actions unknown.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When using
-multiple threads you should set the CURLOPT_NOSIGNAL option
-to 1 for all handles. Everything will or might work fine
-except that timeouts are not honored during the DNS lookup -
-which you can work around by building libcurl with c-ares
-support. c-ares is a library that provides asynchronous name
-resolves. On some platforms, libcurl simply will not
-function properly multi-threaded unless this option is
-set.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Also, note that
-CURLOPT_DNS_USE_GLOBAL_CACHE is not thread-safe.</p>
-
-<h2>When It Doesn’t Work
-<a name="When It Doesn’t Work"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">There will
-always be times when the transfer fails for some reason. You
-might have set the wrong libcurl option or misunderstood
-what the libcurl option actually does, or the remote server
-might return non-standard replies that confuse the library
-which then confuses your program.</p>
-
-<p style="margin-left:11%; margin-top: 1em">There’s
-one golden rule when these things occur: set the
-CURLOPT_VERBOSE option to 1. It’ll cause the library
-to spew out the entire protocol details it sends, some
-internal info and some received protocol data as well
-(especially when using FTP). If you’re using HTTP,
-adding the headers in the received output to study is also a
-clever way to get a better understanding why the server
-behaves the way it does. Include headers in the normal body
-output with CURLOPT_HEADER set 1.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Of course,
-there are bugs left. We need to know about them to be able
-to fix them, so we’re quite dependent on your bug
-reports! When you do report suspected bugs in libcurl,
-please include as many details as you possibly can: a
-protocol dump that CURLOPT_VERBOSE produces, library
-version, as much as possible of your code that uses libcurl,
-operating system name and version, compiler name and version
-etc.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If
-CURLOPT_VERBOSE is not enough, you increase the level of
-debug data your application receive by using the
-CURLOPT_DEBUGFUNCTION.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Getting some
-in-depth knowledge about the protocols involved is never
-wrong, and if you’re trying to do funny things, you
-might very well understand libcurl and how to use it better
-if you study the appropriate RFC documents at least
-briefly.</p>
-
-<h2>Upload Data to a Remote Site
-<a name="Upload Data to a Remote Site"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">libcurl tries
-to keep a protocol independent approach to most transfers,
-thus uploading to a remote FTP site is very similar to
-uploading data to a HTTP server with a PUT request.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Of course,
-first you either create an easy handle or you re-use one
-existing one. Then you set the URL to operate on just like
-before. This is the remote URL, that we now will upload.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Since we write
-an application, we most likely want libcurl to get the
-upload data by asking us for it. To make it do that, we set
-the read callback and the custom pointer libcurl will pass
-to our read callback. The read callback should have a
-prototype similar to:</p>
-
-<p style="margin-left:11%; margin-top: 1em">size_t
-function(char *bufptr, size_t size, size_t nitems, void
-*userp);</p>
-
-<p style="margin-left:11%; margin-top: 1em">Where bufptr is
-the pointer to a buffer we fill in with data to upload and
-size*nitems is the size of the buffer and therefore also the
-maximum amount of data we can return to libcurl in this
-call. The ’userp’ pointer is the custom pointer
-we set to point to a struct of ours to pass private data
-between the application and the callback.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_READFUNCTION, read_function);</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_READDATA, &filedata);</p>
-
-<p style="margin-left:11%; margin-top: 1em">Tell libcurl
-that we want to upload:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_UPLOAD, 1L);</p>
-
-<p style="margin-left:11%; margin-top: 1em">A few protocols
-won’t behave properly when uploads are done without
-any prior knowledge of the expected file size. So, set the
-upload file size using the CURLOPT_INFILESIZE_LARGE for all
-known file sizes like this[1]:</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* in this
-example, file_size must be an curl_off_t variable */ <br>
-curl_easy_setopt(easyhandle, CURLOPT_INFILESIZE_LARGE,
-file_size);</p>
-
-<p style="margin-left:11%; margin-top: 1em">When you call
-<i>curl_easy_perform(3)</i> this time, it’ll perform
-all the necessary operations and when it has invoked the
-upload it’ll call your supplied callback to get the
-data to upload. The program should return as much data as
-possible in every invoke, as that is likely to make the
-upload perform as fast as possible. The callback should
-return the number of bytes it wrote in the buffer. Returning
-0 will signal the end of the upload.</p>
-
-<h2>Passwords
-<a name="Passwords"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Many protocols
-use or even require that user name and password are provided
-to be able to download or upload the data of your choice.
-libcurl offers several ways to specify them.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Most protocols
-support that you specify the name and password in the URL
-itself. libcurl will detect this and use them accordingly.
-This is written like this:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">protocol://user:password@example.com/path/</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you need any
-odd letters in your user name or password, you should enter
-them URL encoded, as %XX where XX is a two-digit hexadecimal
-number.</p>
-
-<p style="margin-left:11%; margin-top: 1em">libcurl also
-provides options to set various passwords. The user name and
-password as shown embedded in the URL can instead get set
-with the CURLOPT_USERPWD option. The argument passed to
-libcurl should be a char * to a string in the format
-"user:password". In a manner like this:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_USERPWD, "myname:thesecret");</p>
-
-<p style="margin-left:11%; margin-top: 1em">Another case
-where name and password might be needed at times, is for
-those users who need to authenticate themselves to a proxy
-they use. libcurl offers another option for this, the
-CURLOPT_PROXYUSERPWD. It is used quite similar to the
-CURLOPT_USERPWD option like this:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_PROXYUSERPWD, "myname:thesecret");</p>
-
-<p style="margin-left:11%; margin-top: 1em">There’s a
-long time UNIX "standard" way of storing ftp user
-names and passwords, namely in the $HOME/.netrc file. The
-file should be made private so that only the user may read
-it (see also the "Security Considerations"
-chapter), as it might contain the password in plain text.
-libcurl has the ability to use this file to figure out what
-set of user name and password to use for a particular host.
-As an extension to the normal functionality, libcurl also
-supports this file for non-FTP protocols such as HTTP. To
-make curl use this file, use the CURLOPT_NETRC option:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_NETRC, 1L);</p>
-
-<p style="margin-left:11%; margin-top: 1em">And a very
-basic example of how such a .netrc file may look like:</p>
-
-<p style="margin-left:11%; margin-top: 1em">machine
-myhost.mydomain.com <br>
-login userlogin <br>
-password secretword</p>
-
-<p style="margin-left:11%; margin-top: 1em">All these
-examples have been cases where the password has been
-optional, or at least you could leave it out and have
-libcurl attempt to do its job without it. There are times
-when the password isn’t optional, like when
-you’re using an SSL private key for secure
-transfers.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To pass the
-known private key password to libcurl:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_KEYPASSWD, "keypassword");</p>
-
-<h2>HTTP Authentication
-<a name="HTTP Authentication"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The previous
-chapter showed how to set user name and password for getting
-URLs that require authentication. When using the HTTP
-protocol, there are many different ways a client can provide
-those credentials to the server and you can control which
-way libcurl will (attempt to) use them. The default HTTP
-authentication method is called ’Basic’, which
-is sending the name and password in clear-text in the HTTP
-request, base64-encoded. This is insecure.</p>
-
-<p style="margin-left:11%; margin-top: 1em">At the time of
-this writing, libcurl can be built to use: Basic, Digest,
-NTLM, Negotiate, GSS-Negotiate and SPNEGO. You can tell
-libcurl which one to use with CURLOPT_HTTPAUTH as in:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_HTTPAUTH, CURLAUTH_DIGEST);</p>
-
-<p style="margin-left:11%; margin-top: 1em">And when you
-send authentication to a proxy, you can also set
-authentication type the same way but instead with
-CURLOPT_PROXYAUTH:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_PROXYAUTH, CURLAUTH_NTLM);</p>
-
-<p style="margin-left:11%; margin-top: 1em">Both these
-options allow you to set multiple types (by ORing them
-together), to make libcurl pick the most secure one out of
-the types the server/proxy claims to support. This method
-does however add a round-trip since libcurl must first ask
-the server what it supports:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_HTTPAUTH, <br>
-CURLAUTH_DIGEST|CURLAUTH_BASIC);</p>
-
-<p style="margin-left:11%; margin-top: 1em">For
-convenience, you can use the ’CURLAUTH_ANY’
-define (instead of a list with specific types) which allows
-libcurl to use whatever method it wants.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When asking for
-multiple types, libcurl will pick the available one it
-considers "best" in its own internal order of
-preference.</p>
-
-<h2>HTTP POSTing
-<a name="HTTP POSTing"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">We get many
-questions regarding how to issue HTTP POSTs with libcurl the
-proper way. This chapter will thus include examples using
-both different versions of HTTP POST that libcurl
-supports.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The first
-version is the simple POST, the most common version, that
-most HTML pages using the <form> tag uses. We provide
-a pointer to the data and tell libcurl to post it all to the
-remote site:</p>
-
-<p style="margin-left:11%; margin-top: 1em">char
-*data="name=daniel&project=curl"; <br>
-curl_easy_setopt(easyhandle, CURLOPT_POSTFIELDS, data); <br>
-curl_easy_setopt(easyhandle, CURLOPT_URL,
-"http://posthere.com/");</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_perform(easyhandle);
-/* post away! */</p>
-
-<p style="margin-left:11%; margin-top: 1em">Simple enough,
-huh? Since you set the POST options with the
-CURLOPT_POSTFIELDS, this automatically switches the handle
-to use POST in the upcoming request.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Ok, so what if
-you want to post binary data that also requires you to set
-the Content-Type: header of the post? Well, binary posts
-prevent libcurl from being able to do strlen() on the data
-to figure out the size, so therefore we must tell libcurl
-the size of the post data. Setting headers in libcurl
-requests are done in a generic way, by building a list of
-our own headers and then passing that list to libcurl.</p>
-
-<p style="margin-left:11%; margin-top: 1em">struct
-curl_slist *headers=NULL; <br>
-headers = curl_slist_append(headers, "Content-Type:
-text/xml");</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* post binary
-data */ <br>
-curl_easy_setopt(easyhandle, CURLOPT_POSTFIELDS,
-binaryptr);</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* set the size
-of the postfields data */ <br>
-curl_easy_setopt(easyhandle, CURLOPT_POSTFIELDSIZE,
-23L);</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* pass our
-list of custom made headers */ <br>
-curl_easy_setopt(easyhandle, CURLOPT_HTTPHEADER,
-headers);</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_perform(easyhandle);
-/* post away! */</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_slist_free_all(headers);
-/* free the header list */</p>
-
-<p style="margin-left:11%; margin-top: 1em">While the
-simple examples above cover the majority of all cases where
-HTTP POST operations are required, they don’t do
-multi-part formposts. Multi-part formposts were introduced
-as a better way to post (possibly large) binary data and
-were first documented in the RFC1867 (updated in RFC2388).
-They’re called multi-part because they’re built
-by a chain of parts, each part being a single unit of data.
-Each part has its own name and contents. You can in fact
-create and post a multi-part formpost with the regular
-libcurl POST support described above, but that would require
-that you build a formpost yourself and provide to libcurl.
-To make that easier, libcurl provides
-<i>curl_formadd(3)</i>. Using this function, you add parts
-to the form. When you’re done adding parts, you post
-the whole form.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The following
-example sets two simple text parts with plain textual
-contents, and then a file with binary contents and uploads
-the whole thing.</p>
-
-<p style="margin-left:11%; margin-top: 1em">struct
-curl_httppost *post=NULL; <br>
-struct curl_httppost *last=NULL; <br>
-curl_formadd(&post, &last, <br>
-CURLFORM_COPYNAME, "name", <br>
-CURLFORM_COPYCONTENTS, "daniel", CURLFORM_END);
-<br>
-curl_formadd(&post, &last, <br>
-CURLFORM_COPYNAME, "project", <br>
-CURLFORM_COPYCONTENTS, "curl", CURLFORM_END); <br>
-curl_formadd(&post, &last, <br>
-CURLFORM_COPYNAME, "logotype-image", <br>
-CURLFORM_FILECONTENT, "curl.png",
-CURLFORM_END);</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* Set the form
-info */ <br>
-curl_easy_setopt(easyhandle, CURLOPT_HTTPPOST, post);</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_perform(easyhandle);
-/* post away! */</p>
-
-<p style="margin-left:11%; margin-top: 1em">/* free the
-post data again */ <br>
-curl_formfree(post);</p>
-
-<p style="margin-left:11%; margin-top: 1em">Multipart
-formposts are chains of parts using MIME-style separators
-and headers. It means that each one of these separate parts
-get a few headers set that describe the individual
-content-type, size etc. To enable your application to
-handicraft this formpost even more, libcurl allows you to
-supply your own set of custom headers to such an individual
-form part. You can of course supply headers to as many parts
-as you like, but this little example will show how you set
-headers to one specific part when you add that to the post
-handle:</p>
-
-<p style="margin-left:11%; margin-top: 1em">struct
-curl_slist *headers=NULL; <br>
-headers = curl_slist_append(headers, "Content-Type:
-text/xml");</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_formadd(&post,
-&last, <br>
-CURLFORM_COPYNAME, "logotype-image", <br>
-CURLFORM_FILECONTENT, "curl.xml", <br>
-CURLFORM_CONTENTHEADER, headers, <br>
-CURLFORM_END);</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_perform(easyhandle);
-/* post away! */</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_formfree(post);
-/* free post */ <br>
-curl_slist_free_all(headers); /* free custom header list
-*/</p>
-
-<p style="margin-left:11%; margin-top: 1em">Since all
-options on an easyhandle are "sticky", they remain
-the same until changed even if you do call
-<i>curl_easy_perform(3)</i>, you may need to tell curl to go
-back to a plain GET request if you intend to do one as your
-next request. You force an easyhandle to go back to GET by
-using the CURLOPT_HTTPGET option:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_HTTPGET, 1L);</p>
-
-<p style="margin-left:11%; margin-top: 1em">Just setting
-CURLOPT_POSTFIELDS to "" or NULL will *not* stop
-libcurl from doing a POST. It will just make it POST without
-any data to send!</p>
-
-<h2>Showing Progress
-<a name="Showing Progress"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">For historical
-and traditional reasons, libcurl has a built-in progress
-meter that can be switched on and then makes it present a
-progress meter in your terminal.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Switch on the
-progress meter by, oddly enough, setting CURLOPT_NOPROGRESS
-to zero. This option is set to 1 by default.</p>
-
-<p style="margin-left:11%; margin-top: 1em">For most
-applications however, the built-in progress meter is useless
-and what instead is interesting is the ability to specify a
-progress callback. The function pointer you pass to libcurl
-will then be called on irregular intervals with information
-about the current transfer.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Set the
-progress callback by using CURLOPT_PROGRESSFUNCTION. And
-pass a pointer to a function that matches this
-prototype:</p>
-
-<p style="margin-left:11%; margin-top: 1em">int
-progress_callback(void *clientp, <br>
-double dltotal, <br>
-double dlnow, <br>
-double ultotal, <br>
-double ulnow);</p>
-
-<p style="margin-left:11%; margin-top: 1em">If any of the
-input arguments is unknown, a 0 will be passed. The first
-argument, the ’clientp’ is the pointer you pass
-to libcurl with CURLOPT_PROGRESSDATA. libcurl won’t
-touch it.</p>
-
-<h2>libcurl with C++
-<a name="libcurl with C++"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">There’s
-basically only one thing to keep in mind when using C++
-instead of C when interfacing libcurl:</p>
-
-<p style="margin-left:11%; margin-top: 1em">The callbacks
-CANNOT be non-static class member functions</p>
-
-<p style="margin-left:11%; margin-top: 1em">Example C++
-code:</p>
-
-<p style="margin-left:11%; margin-top: 1em">class AClass {
-<br>
-static size_t write_data(void *ptr, size_t size, size_t
-nmemb, <br>
-void *ourpointer) <br>
-{ <br>
-/* do what you want with the data */ <br>
-} <br>
-}</p>
-
-<h2>Proxies
-<a name="Proxies"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">What
-"proxy" means according to Merriam-Webster:
-"a person authorized to act for another" but also
-"the agency, function, or office of a deputy who acts
-as a substitute for another".</p>
-
-<p style="margin-left:11%; margin-top: 1em">Proxies are
-exceedingly common these days. Companies often only offer
-Internet access to employees through their proxies. Network
-clients or user-agents ask the proxy for documents, the
-proxy does the actual request and then it returns them.</p>
-
-<p style="margin-left:11%; margin-top: 1em">libcurl
-supports SOCKS and HTTP proxies. When a given URL is wanted,
-libcurl will ask the proxy for it instead of trying to
-connect to the actual host identified in the URL.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you’re
-using a SOCKS proxy, you may find that libcurl doesn’t
-quite support all operations through it.</p>
-
-<p style="margin-left:11%; margin-top: 1em">For HTTP
-proxies: the fact that the proxy is a HTTP proxy puts
-certain restrictions on what can actually happen. A
-requested URL that might not be a HTTP URL will be still be
-passed to the HTTP proxy to deliver back to libcurl. This
-happens transparently, and an application may not need to
-know. I say "may", because at times it is very
-important to understand that all operations over a HTTP
-proxy use the HTTP protocol. For example, you can’t
-invoke your own custom FTP commands or even proper FTP
-directory listings. <br>
-Proxy Options</p>
-
-<p style="margin-left:22%; margin-top: 1em">To tell libcurl
-to use a proxy at a given port number:</p>
-
-
-<p style="margin-left:22%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_PROXY, "proxy-host.com:8080");</p>
-
-<p style="margin-left:22%; margin-top: 1em">Some proxies
-require user authentication before allowing a request, and
-you pass that information similar to this:</p>
-
-
-<p style="margin-left:22%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_PROXYUSERPWD, "user:password");</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you want to,
-you can specify the host name only in the CURLOPT_PROXY
-option, and set the port number separately with
-CURLOPT_PROXYPORT.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Tell libcurl
-what kind of proxy it is with CURLOPT_PROXYTYPE (if not, it
-will default to assume a HTTP proxy):</p>
-
-
-<p style="margin-left:22%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_PROXYTYPE, CURLPROXY_SOCKS4);</p>
-
-<p style="margin-left:11%;">Environment Variables</p>
-
-<p style="margin-left:22%; margin-top: 1em">libcurl
-automatically checks and uses a set of environment variables
-to know what proxies to use for certain protocols. The names
-of the variables are following an ancient de facto standard
-and are built up as "[protocol]_proxy" (note the
-lower casing). Which makes the variable
-’http_proxy’ checked for a name of a proxy to
-use when the input URL is HTTP. Following the same rule, the
-variable named ’ftp_proxy’ is checked for FTP
-URLs. Again, the proxies are always HTTP proxies, the
-different names of the variables simply allows different
-HTTP proxies to be used.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The proxy
-environment variable contents should be in the format
-"[protocol://][user:password@]machine[:port]".
-Where the protocol:// part is simply ignored if present (so
-http://proxy and bluerk://proxy will do the same) and the
-optional port number specifies on which port the proxy
-operates on the host. If not specified, the internal default
-port number will be used and that is most likely *not* the
-one you would like it to be.</p>
-
-<p style="margin-left:22%; margin-top: 1em">There are two
-special environment variables. ’all_proxy’ is
-what sets proxy for any URL in case the protocol specific
-variable wasn’t set, and ’no_proxy’
-defines a list of hosts that should not use a proxy even
-though a variable may say so. If ’no_proxy’ is a
-plain asterisk ("*") it matches all hosts.</p>
-
-<p style="margin-left:22%; margin-top: 1em">To explicitly
-disable libcurl’s checking for and using the proxy
-environment variables, set the proxy name to "" -
-an empty string - with CURLOPT_PROXY.</p>
-
-<p style="margin-left:11%;">SSL and Proxies</p>
-
-<p style="margin-left:22%; margin-top: 1em">SSL is for
-secure point-to-point connections. This involves strong
-encryption and similar things, which effectively makes it
-impossible for a proxy to operate as a "man in
-between" which the proxy’s task is, as previously
-discussed. Instead, the only way to have SSL work over a
-HTTP proxy is to ask the proxy to tunnel trough everything
-without being able to check or fiddle with the traffic.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Opening an SSL
-connection over a HTTP proxy is therefor a matter of asking
-the proxy for a straight connection to the target host on a
-specified port. This is made with the HTTP request CONNECT.
-("please mr proxy, connect me to that remote
-host").</p>
-
-<p style="margin-left:22%; margin-top: 1em">Because of the
-nature of this operation, where the proxy has no idea what
-kind of data that is passed in and out through this tunnel,
-this breaks some of the very few advantages that come from
-using a proxy, such as caching. Many organizations prevent
-this kind of tunneling to other destination port numbers
-than 443 (which is the default HTTPS port number).</p>
-
-<p style="margin-left:11%;">Tunneling Through Proxy</p>
-
-<p style="margin-left:22%;">As explained above, tunneling
-is required for SSL to work and often even restricted to the
-operation intended for SSL; HTTPS.</p>
-
-<p style="margin-left:22%; margin-top: 1em">This is however
-not the only time proxy-tunneling might offer benefits to
-you or your application.</p>
-
-<p style="margin-left:22%; margin-top: 1em">As tunneling
-opens a direct connection from your application to the
-remote machine, it suddenly also re-introduces the ability
-to do non-HTTP operations over a HTTP proxy. You can in fact
-use things such as FTP upload or FTP custom commands this
-way.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Again, this is
-often prevented by the administrators of proxies and is
-rarely allowed.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Tell libcurl to
-use proxy tunneling like this:</p>
-
-
-<p style="margin-left:22%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_HTTPPROXYTUNNEL, 1L);</p>
-
-<p style="margin-left:22%; margin-top: 1em">In fact, there
-might even be times when you want to do plain HTTP
-operations using a tunnel like this, as it then enables you
-to operate on the remote server instead of asking the proxy
-to do so. libcurl will not stand in the way for such
-innovative actions either!</p>
-
-<p style="margin-left:11%;">Proxy Auto-Config</p>
-
-<p style="margin-left:22%; margin-top: 1em">Netscape first
-came up with this. It is basically a web page (usually using
-a .pac extension) with a Javascript that when executed by
-the browser with the requested URL as input, returns
-information to the browser on how to connect to the URL. The
-returned information might be "DIRECT" (which
-means no proxy should be used), "PROXY host:port"
-(to tell the browser where the proxy for this particular URL
-is) or "SOCKS host:port" (to direct the browser to
-a SOCKS proxy).</p>
-
-<p style="margin-left:22%; margin-top: 1em">libcurl has no
-means to interpret or evaluate Javascript and thus it
-doesn’t support this. If you get yourself in a
-position where you face this nasty invention, the following
-advice have been mentioned and used in the past:</p>
-
-<p style="margin-left:22%; margin-top: 1em">- Depending on
-the Javascript complexity, write up a script that translates
-it to another language and execute that.</p>
-
-<p style="margin-left:22%; margin-top: 1em">- Read the
-Javascript code and rewrite the same logic in another
-language.</p>
-
-<p style="margin-left:22%; margin-top: 1em">- Implement a
-Javascript interpreter; people have successfully used the
-Mozilla Javascript engine in the past.</p>
-
-<p style="margin-left:22%; margin-top: 1em">- Ask your
-admins to stop this, for a static proxy setup or
-similar.</p>
-
-<h2>Persistence Is The Way to Happiness
-<a name="Persistence Is The Way to Happiness"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Re-cycling the
-same easy handle several times when doing multiple requests
-is the way to go.</p>
-
-<p style="margin-left:11%; margin-top: 1em">After each
-single <i>curl_easy_perform(3)</i> operation, libcurl will
-keep the connection alive and open. A subsequent request
-using the same easy handle to the same host might just be
-able to use the already open connection! This reduces
-network impact a lot.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Even if the
-connection is dropped, all connections involving SSL to the
-same host again, will benefit from libcurl’s session
-ID cache that drastically reduces re-connection time.</p>
-
-<p style="margin-left:11%; margin-top: 1em">FTP connections
-that are kept alive save a lot of time, as the command-
-response round-trips are skipped, and also you don’t
-risk getting blocked without permission to login again like
-on many FTP servers only allowing N persons to be logged in
-at the same time.</p>
-
-<p style="margin-left:11%; margin-top: 1em">libcurl caches
-DNS name resolving results, to make lookups of a previously
-looked up name a lot faster.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Other
-interesting details that improve performance for subsequent
-requests may also be added in the future.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Each easy
-handle will attempt to keep the last few connections alive
-for a while in case they are to be used again. You can set
-the size of this "cache" with the
-CURLOPT_MAXCONNECTS option. Default is 5. There is very
-seldom any point in changing this value, and if you think of
-changing this it is often just a matter of thinking
-again.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To force your
-upcoming request to not use an already existing connection
-(it will even close one first if there happens to be one
-alive to the same host you’re about to operate on),
-you can do that by setting CURLOPT_FRESH_CONNECT to 1. In a
-similar spirit, you can also forbid the upcoming request to
-be "lying" around and possibly get re-used after
-the request by setting CURLOPT_FORBID_REUSE to 1.</p>
-
-<h2>HTTP Headers Used by libcurl
-<a name="HTTP Headers Used by libcurl"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">When you use
-libcurl to do HTTP requests, it’ll pass along a series
-of headers automatically. It might be good for you to know
-and understand these. You can replace or remove them by
-using the CURLOPT_HTTPHEADER option.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="9%">
-
-
-<p>Host</p></td>
-<td width="2%"></td>
-<td width="78%">
-
-
-<p>This header is required by HTTP 1.1 and even many 1.0
-servers and should be the name of the server we want to talk
-to. This includes the port number if anything but
-default.</p> </td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="9%">
-
-
-<p>Pragma</p></td>
-<td width="2%"></td>
-<td width="78%">
-
-
-<p>"no-cache". Tells a possible proxy to not grab
-a copy from the cache but to fetch a fresh one.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="9%">
-
-
-<p>Accept</p></td>
-<td width="2%"></td>
-<td width="78%">
-
-
-<p>"*/*".</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="9%">
-
-
-<p>Expect</p></td>
-<td width="2%"></td>
-<td width="78%">
-
-
-<p>When doing POST requests, libcurl sets this header to
-"100-continue" to ask the server for an
-"OK" message before it proceeds with sending the
-data part of the post. If the POSTed data amount is deemed
-"small", libcurl will not use this header.</p></td></tr>
-</table>
-
-<h2>Customizing Operations
-<a name="Customizing Operations"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">There is an
-ongoing development today where more and more protocols are
-built upon HTTP for transport. This has obvious benefits as
-HTTP is a tested and reliable protocol that is widely
-deployed and has excellent proxy-support.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When you use
-one of these protocols, and even when doing other kinds of
-programming you may need to change the traditional HTTP (or
-FTP or...) manners. You may need to change words, headers or
-various data.</p>
-
-<p style="margin-left:11%; margin-top: 1em">libcurl is your
-friend here too. <br>
-CUSTOMREQUEST</p>
-
-<p style="margin-left:22%;">If just changing the actual
-HTTP request keyword is what you want, like when GET, HEAD
-or POST is not good enough for you, CURLOPT_CUSTOMREQUEST is
-there for you. It is very simple to use:</p>
-
-
-<p style="margin-left:22%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_CUSTOMREQUEST, "MYOWNREQUEST");</p>
-
-<p style="margin-left:22%; margin-top: 1em">When using the
-custom request, you change the request keyword of the actual
-request you are performing. Thus, by default you make a GET
-request but you can also make a POST operation (as described
-before) and then replace the POST keyword if you want to.
-You’re the boss.</p>
-
-<p style="margin-left:11%;">Modify Headers</p>
-
-<p style="margin-left:22%;">HTTP-like protocols pass a
-series of headers to the server when doing the request, and
-you’re free to pass any amount of extra headers that
-you think fit. Adding headers is this easy:</p>
-
-<p style="margin-left:22%; margin-top: 1em">struct
-curl_slist *headers=NULL; /* init to NULL is important
-*/</p>
-
-<p style="margin-left:22%; margin-top: 1em">headers =
-curl_slist_append(headers, "Hey-server-hey: how are
-you?"); <br>
-headers = curl_slist_append(headers, "X-silly-content:
-yes");</p>
-
-<p style="margin-left:22%; margin-top: 1em">/* pass our
-list of custom made headers */ <br>
-curl_easy_setopt(easyhandle, CURLOPT_HTTPHEADER,
-headers);</p>
-
-
-<p style="margin-left:22%; margin-top: 1em">curl_easy_perform(easyhandle);
-/* transfer http */</p>
-
-
-<p style="margin-left:22%; margin-top: 1em">curl_slist_free_all(headers);
-/* free the header list */</p>
-
-<p style="margin-left:22%; margin-top: 1em">... and if you
-think some of the internally generated headers, such as
-Accept: or Host: don’t contain the data you want them
-to contain, you can replace them by simply setting them
-too:</p>
-
-<p style="margin-left:22%; margin-top: 1em">headers =
-curl_slist_append(headers, "Accept: Agent-007");
-<br>
-headers = curl_slist_append(headers, "Host:
-munged.host.line");</p>
-
-<p style="margin-left:11%;">Delete Headers</p>
-
-<p style="margin-left:22%;">If you replace an existing
-header with one with no contents, you will prevent the
-header from being sent. For instance, if you want to
-completely prevent the "Accept:" header from being
-sent, you can disable it with code similar to this:</p>
-
-<p style="margin-left:22%; margin-top: 1em">headers =
-curl_slist_append(headers, "Accept:");</p>
-
-<p style="margin-left:22%; margin-top: 1em">Both replacing
-and canceling internal headers should be done with careful
-consideration and you should be aware that you may violate
-the HTTP protocol when doing so.</p>
-
-<p style="margin-left:11%;">Enforcing chunked
-transfer-encoding</p>
-
-<p style="margin-left:22%; margin-top: 1em">By making sure
-a request uses the custom header "Transfer-Encoding:
-chunked" when doing a non-GET HTTP operation, libcurl
-will switch over to "chunked" upload, even though
-the size of the data to upload might be known. By default,
-libcurl usually switches over to chunked upload
-automatically if the upload data size is unknown.</p>
-
-<p style="margin-left:11%;">HTTP Version</p>
-
-<p style="margin-left:22%; margin-top: 1em">All HTTP
-requests includes the version number to tell the server
-which version we support. libcurl speaks HTTP 1.1 by
-default. Some very old servers don’t like getting
-1.1-requests and when dealing with stubborn old things like
-that, you can tell libcurl to use 1.0 instead by doing
-something like this:</p>
-
-
-<p style="margin-left:22%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);</p>
-
-<p style="margin-left:11%;">FTP Custom Commands</p>
-
-<p style="margin-left:22%; margin-top: 1em">Not all
-protocols are HTTP-like, and thus the above may not help you
-when you want to make, for example, your FTP transfers to
-behave differently.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Sending custom
-commands to a FTP server means that you need to send the
-commands exactly as the FTP server expects them (RFC959 is a
-good guide here), and you can only use commands that work on
-the control-connection alone. All kinds of commands that
-require data interchange and thus need a data-connection
-must be left to libcurl’s own judgement. Also be aware
-that libcurl will do its very best to change directory to
-the target directory before doing any transfer, so if you
-change directory (with CWD or similar) you might confuse
-libcurl and then it might not attempt to transfer the file
-in the correct remote directory.</p>
-
-<p style="margin-left:22%; margin-top: 1em">A little
-example that deletes a given file before an operation:</p>
-
-<p style="margin-left:22%; margin-top: 1em">headers =
-curl_slist_append(headers, "DELE
-file-to-remove");</p>
-
-<p style="margin-left:22%; margin-top: 1em">/* pass the
-list of custom commands to the handle */ <br>
-curl_easy_setopt(easyhandle, CURLOPT_QUOTE, headers);</p>
-
-
-<p style="margin-left:22%; margin-top: 1em">curl_easy_perform(easyhandle);
-/* transfer ftp data! */</p>
-
-
-<p style="margin-left:22%; margin-top: 1em">curl_slist_free_all(headers);
-/* free the header list */</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you would
-instead want this operation (or chain of operations) to
-happen _after_ the data transfer took place the option to
-<i>curl_easy_setopt(3)</i> would instead be called
-CURLOPT_POSTQUOTE and used the exact same way.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The custom FTP
-command will be issued to the server in the same order they
-are added to the list, and if a command gets an error code
-returned back from the server, no more commands will be
-issued and libcurl will bail out with an error code
-(CURLE_QUOTE_ERROR). Note that if you use CURLOPT_QUOTE to
-send commands before a transfer, no transfer will actually
-take place when a quote command has failed.</p>
-
-<p style="margin-left:22%; margin-top: 1em">If you set the
-CURLOPT_HEADER to 1, you will tell libcurl to get
-information about the target file and output
-"headers" about it. The headers will be in
-"HTTP-style", looking like they do in HTTP.</p>
-
-<p style="margin-left:22%; margin-top: 1em">The option to
-enable headers or to run custom FTP commands may be useful
-to combine with CURLOPT_NOBODY. If this option is set, no
-actual file content transfer will be performed.</p>
-
-<p style="margin-left:11%;">FTP Custom CUSTOMREQUEST</p>
-
-<p style="margin-left:22%;">If you do want to list the
-contents of a FTP directory using your own defined FTP
-command, CURLOPT_CUSTOMREQUEST will do just that.
-"NLST" is the default one for listing directories
-but you’re free to pass in your idea of a good
-alternative.</p>
-
-<h2>Cookies Without Chocolate Chips
-<a name="Cookies Without Chocolate Chips"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">In the HTTP
-sense, a cookie is a name with an associated value. A server
-sends the name and value to the client, and expects it to
-get sent back on every subsequent request to the server that
-matches the particular conditions set. The conditions
-include that the domain name and path match and that the
-cookie hasn’t become too old.</p>
-
-<p style="margin-left:11%; margin-top: 1em">In real-world
-cases, servers send new cookies to replace existing ones to
-update them. Server use cookies to "track" users
-and to keep "sessions".</p>
-
-<p style="margin-left:11%; margin-top: 1em">Cookies are
-sent from server to clients with the header Set-Cookie: and
-they’re sent from clients to servers with the Cookie:
-header.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To just send
-whatever cookie you want to a server, you can use
-CURLOPT_COOKIE to set a cookie string like this:</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">curl_easy_setopt(easyhandle,
-CURLOPT_COOKIE, "name1=var1; name2=var2;");</p>
-
-<p style="margin-left:11%; margin-top: 1em">In many cases,
-that is not enough. You might want to dynamically save
-whatever cookies the remote server passes to you, and make
-sure those cookies are then used accordingly on later
-requests.</p>
-
-<p style="margin-left:11%; margin-top: 1em">One way to do
-this, is to save all headers you receive in a plain file and
-when you make a request, you tell libcurl to read the
-previous headers to figure out which cookies to use. Set the
-header file to read cookies from with
-CURLOPT_COOKIEFILE.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The
-CURLOPT_COOKIEFILE option also automatically enables the
-cookie parser in libcurl. Until the cookie parser is
-enabled, libcurl will not parse or understand incoming
-cookies and they will just be ignored. However, when the
-parser is enabled the cookies will be understood and the
-cookies will be kept in memory and used properly in
-subsequent requests when the same handle is used. Many times
-this is enough, and you may not have to save the cookies to
-disk at all. Note that the file you specify to
-CURLOPT_COOKIEFILE doesn’t have to exist to enable the
-parser, so a common way to just enable the parser and not
-read any cookies is to use the name of a file you know
-doesn’t exist.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you would
-rather use existing cookies that you’ve previously
-received with your Netscape or Mozilla browsers, you can
-make libcurl use that cookie file as input. The
-CURLOPT_COOKIEFILE is used for that too, as libcurl will
-automatically find out what kind of file it is and act
-accordingly.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Perhaps the
-most advanced cookie operation libcurl offers, is saving the
-entire internal cookie state back into a Netscape/Mozilla
-formatted cookie file. We call that the cookie-jar. When you
-set a file name with CURLOPT_COOKIEJAR, that file name will
-be created and all received cookies will be stored in it
-when <i>curl_easy_cleanup(3)</i> is called. This enables
-cookies to get passed on properly between multiple handles
-without any information getting lost.</p>
-
-<h2>FTP Peculiarities We Need
-<a name="FTP Peculiarities We Need"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">FTP transfers
-use a second TCP/IP connection for the data transfer. This
-is usually a fact you can forget and ignore but at times
-this fact will come back to haunt you. libcurl offers
-several different ways to customize how the second
-connection is being made.</p>
-
-<p style="margin-left:11%; margin-top: 1em">libcurl can
-either connect to the server a second time or tell the
-server to connect back to it. The first option is the
-default and it is also what works best for all the people
-behind firewalls, NATs or IP-masquerading setups. libcurl
-then tells the server to open up a new port and wait for a
-second connection. This is by default attempted with EPSV
-first, and if that doesn’t work it tries PASV instead.
-(EPSV is an extension to the original FTP spec and does not
-exist nor work on all FTP servers.)</p>
-
-<p style="margin-left:11%; margin-top: 1em">You can prevent
-libcurl from first trying the EPSV command by setting
-CURLOPT_FTP_USE_EPSV to zero.</p>
-
-<p style="margin-left:11%; margin-top: 1em">In some cases,
-you will prefer to have the server connect back to you for
-the second connection. This might be when the server is
-perhaps behind a firewall or something and only allows
-connections on a single port. libcurl then informs the
-remote server which IP address and port number to connect
-to. This is made with the CURLOPT_FTPPORT option. If you set
-it to "-", libcurl will use your system’s
-"default IP address". If you want to use a
-particular IP, you can set the full IP address, a host name
-to resolve to an IP address or even a local network
-interface name that libcurl will get the IP address
-from.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When doing the
-"PORT" approach, libcurl will attempt to use the
-EPRT and the LPRT before trying PORT, as they work with more
-protocols. You can disable this behavior by setting
-CURLOPT_FTP_USE_EPRT to zero.</p>
-
-<h2>Headers Equal Fun
-<a name="Headers Equal Fun"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Some protocols
-provide "headers", meta-data separated from the
-normal data. These headers are by default not included in
-the normal data stream, but you can make them appear in the
-data stream by setting CURLOPT_HEADER to 1.</p>
-
-<p style="margin-left:11%; margin-top: 1em">What might be
-even more useful, is libcurl’s ability to separate the
-headers from the data and thus make the callbacks differ.
-You can for example set a different pointer to pass to the
-ordinary write callback by setting CURLOPT_WRITEHEADER.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Or, you can set
-an entirely separate function to receive the headers, by
-using CURLOPT_HEADERFUNCTION.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The headers are
-passed to the callback function one by one, and you can
-depend on that fact. It makes it easier for you to add
-custom header parsers etc.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em">"Headers"
-for FTP transfers equal all the FTP server responses. They
-aren’t actually true headers, but in this case we
-pretend they are! ;-)</p>
-
-<h2>Post Transfer Information
-<a name="Post Transfer Information"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">[
-curl_easy_getinfo ]</p>
-
-<h2>Security Considerations
-<a name="Security Considerations"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The libcurl
-project takes security seriously. The library is written
-with caution and precautions are taken to mitigate many
-kinds of risks encountered while operating with potentially
-malicious servers on the Internet. It is a powerful library,
-however, which allows application writers to make trade offs
-between ease of writing and exposure to potential risky
-operations. If used the right way, you can use libcurl to
-transfer data pretty safely.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Many
-applications are used in closed networks where users and
-servers can be trusted, but many others are used on
-arbitrary servers and are fed input from potentially
-untrusted users. Following is a discussion about some risks
-in the ways in which applications commonly use libcurl and
-potential mitigations of those risks. It is by no means
-comprehensive, but shows classes of attacks that robust
-applications should consider. The Common Weakness
-Enumeration project at http://cwe.mitre.org/ is a good
-reference for many of these and similar types of weaknesses
-of which application writers should be aware. <br>
-Command Lines</p>
-
-<p style="margin-left:22%;">If you use a command line tool
-(such as curl) that uses libcurl, and you give options to
-the tool on the command line those options can very likely
-get read by other users of your system when they use
-’ps’ or other tools to list currently running
-processes.</p>
-
-<p style="margin-left:22%; margin-top: 1em">To avoid this
-problem, never feed sensitive things to programs using
-command line options. Write them to a protected file and use
-the −K option to avoid this.</p>
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="9%">
-
-
-<p>.netrc</p></td>
-<td width="2%"></td>
-<td width="78%">
-
-
-<p>.netrc is a pretty handy file/feature that allows you to
-login quickly and automatically to frequently visited sites.
-The file contains passwords in clear text and is a real
-security risk. In some cases, your .netrc is also stored in
-a home directory that is NFS mounted or used on another
-network based file system, so the clear text password will
-fly through your network every time anyone reads that
-file!</p> </td></tr>
-</table>
-
-<p style="margin-left:22%; margin-top: 1em">To avoid this
-problem, don’t use .netrc files and never store
-passwords in plain text anywhere.</p>
-
-<p style="margin-left:11%;">Clear Text Passwords</p>
-
-<p style="margin-left:22%;">Many of the protocols libcurl
-supports send name and password unencrypted as clear text
-(HTTP Basic authentication, FTP, TELNET etc). It is very
-easy for anyone on your network or a network nearby yours to
-just fire up a network analyzer tool and eavesdrop on your
-passwords. Don’t let the fact that HTTP Basic uses
-base64 encoded passwords fool you. They may not look
-readable at a first glance, but they very easily
-"deciphered" by anyone within seconds.</p>
-
-<p style="margin-left:22%; margin-top: 1em">To avoid this
-problem, use HTTP authentication methods or other protocols
-that don’t let snoopers see your password: HTTP with
-Digest, NTLM or GSS authentication, HTTPS, FTPS, SCP, SFTP
-and FTP-Kerberos are a few examples.</p>
-
-<p style="margin-left:11%;">Redirects</p>
-
-<p style="margin-left:22%;">The CURLOPT_FOLLOWLOCATION
-option automatically follows HTTP redirects sent by a remote
-server. These redirects can refer to any kind of URL, not
-just HTTP. A redirect to a file: URL would cause the libcurl
-to read (or write) arbitrary files from the local
-filesystem. If the application returns the data back to the
-user (as would happen in some kinds of CGI scripts), an
-attacker could leverage this to read otherwise forbidden
-data (e.g. file://localhost/etc/passwd).</p>
-
-<p style="margin-left:22%; margin-top: 1em">If
-authentication credentials are stored in the ~/.netrc file,
-or Kerberos is in use, any other URL type (not just file:)
-that requires authentication is also at risk. A redirect
-such as ftp://some-internal-server/private-file would then
-return data even when the server is password protected.</p>
-
-<p style="margin-left:22%; margin-top: 1em">In the same
-way, if an unencrypted SSH private key has been configured
-for the user running the libcurl application, SCP: or SFTP:
-URLs could access password or private-key protected
-resources, e.g.
-sftp://user@some-internal-server/etc/passwd</p>
-
-<p style="margin-left:22%; margin-top: 1em">The
-CURLOPT_REDIR_PROTOCOLS and CURLOPT_NETRC options can be
-used to mitigate against this kind of attack.</p>
-
-<p style="margin-left:22%; margin-top: 1em">A redirect can
-also specify a location available only on the machine
-running libcurl, including servers hidden behind a firewall
-from the attacker. e.g. http://127.0.0.1/ or
-http://intranet/delete-stuff.cgi?delete=all or
-tftp://bootp-server/pc-config-data</p>
-
-<p style="margin-left:22%; margin-top: 1em">Apps can
-mitigate against this by disabling CURLOPT_FOLLOWLOCATION
-and handling redirects itself, sanitizing URLs as necessary.
-Alternately, an app could leave CURLOPT_FOLLOWLOCATION
-enabled but set CURLOPT_REDIR_PROTOCOLS and install a
-CURLOPT_OPENSOCKETFUNCTION callback function in which
-addresses are sanitized before use.</p>
-
-<p style="margin-left:11%;">Private Resources</p>
-
-<p style="margin-left:22%;">A user who can control the DNS
-server of a domain being passed in within a URL can change
-the address of the host to a local, private address which
-the libcurl application will then use. e.g. The innocuous
-URL http://fuzzybunnies.example.com/ could actually resolve
-to the IP address of a server behind a firewall, such as
-127.0.0.1 or 10.1.2.3 Apps can mitigate against this by
-setting a CURLOPT_OPENSOCKETFUNCTION and checking the
-address before a connection.</p>
-
-<p style="margin-left:22%; margin-top: 1em">All the
-malicious scenarios regarding redirected URLs apply just as
-well to non-redirected URLs, if the user is allowed to
-specify an arbitrary URL that could point to a private
-resource. For example, a web app providing a translation
-service might happily translate file://localhost/etc/passwd
-and display the result. Apps can mitigate against this with
-the CURLOPT_PROTOCOLS option as well as by similar
-mitigation techniques for redirections.</p>
-
-<p style="margin-left:22%; margin-top: 1em">A malicious FTP
-server could in response to the PASV command return an IP
-address and port number for a server local to the app
-running libcurl but behind a firewall. Apps can mitigate
-against this by using the CURLOPT_FTP_SKIP_PASV_IP option or
-CURLOPT_FTPPORT.</p>
-
-<p style="margin-left:11%;">Uploads</p>
-
-<p style="margin-left:22%;">When uploading, a redirect can
-cause a local (or remote) file to be overwritten. Apps must
-not allow any unsanitized URL to be passed in for uploads.
-Also, CURLOPT_FOLLOWLOCATION should not be used on uploads.
-Instead, the app should handle redirects itself, sanitizing
-each URL first.</p>
-
-<p style="margin-left:11%;">Authentication</p>
-
-<p style="margin-left:22%;">Use of
-CURLOPT_UNRESTRICTED_AUTH could cause authentication
-information to be sent to an unknown second server. Apps can
-mitigate against this by disabling CURLOPT_FOLLOWLOCATION
-and handling redirects itself, sanitizing where
-necessary.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Use of the
-CURLAUTH_ANY option to CURLOPT_HTTPAUTH could result in user
-name and password being sent in clear text to an HTTP
-server. Instead, use CURLAUTH_ANYSAFE which ensures that the
-password is encrypted over the network, or else fail the
-request.</p>
-
-<p style="margin-left:22%; margin-top: 1em">Use of the
-CURLUSESSL_TRY option to CURLOPT_USE_SSL could result in
-user name and password being sent in clear text to an FTP
-server. Instead, use CURLUSESSL_CONTROL to ensure that an
-encrypted connection is used or else fail the request.</p>
-
-<p style="margin-left:11%;">Cookies</p>
-
-<p style="margin-left:22%;">If cookies are enabled and
-cached, then a user could craft a URL which performs some
-malicious action to a site whose authentication is already
-stored in a cookie. e.g.
-http://mail.example.com/delete-stuff.cgi?delete=all Apps can
-mitigate against this by disabling cookies or clearing them
-between requests.</p>
-
-<p style="margin-left:11%;">Dangerous URLs</p>
-
-<p style="margin-left:22%;">SCP URLs can contain raw
-commands within the scp: URL, which is a side effect of how
-the SCP protocol is designed. e.g.
-scp://user:pass@host/a;date >/tmp/test; Apps must not
-allow unsanitized SCP: URLs to be passed in for
-downloads.</p>
-
-<p style="margin-left:11%;">Denial of Service</p>
-
-<p style="margin-left:22%;">A malicious server could cause
-libcurl to effectively hang by sending a trickle of data
-through, or even no data at all but just keeping the TCP
-connection open. This could result in a denial-of-service
-attack. The CURLOPT_TIMEOUT and/or CURLOPT_LOW_SPEED_LIMIT
-options can be used to mitigate against this.</p>
-
-<p style="margin-left:22%; margin-top: 1em">A malicious
-server could cause libcurl to effectively hang by starting
-to send data, then severing the connection without cleanly
-closing the TCP connection. The app could install a
-CURLOPT_SOCKOPTFUNCTION callback function and set the TCP
-SO_KEEPALIVE option to mitigate against this. Setting one of
-the timeout options would also work against this attack.</p>
-
-<p style="margin-left:22%; margin-top: 1em">A malicious
-server could cause libcurl to download an infinite amount of
-data, potentially causing all of memory or disk to be
-filled. Setting the CURLOPT_MAXFILESIZE_LARGE option is not
-sufficient to guard against this. Instead, the app should
-monitor the amount of data received within the write or
-progress callback and abort once the limit is reached.</p>
-
-<p style="margin-left:22%; margin-top: 1em">A malicious
-HTTP server could cause an infinite redirection loop,
-causing a denial-of-service. This can be mitigated by using
-the CURLOPT_MAXREDIRS option.</p>
-
-<p style="margin-left:11%;">Arbitrary Headers</p>
-
-<p style="margin-left:22%;">User-supplied data must be
-sanitized when used in options like CURLOPT_USERAGENT,
-CURLOPT_HTTPHEADER, CURLOPT_POSTFIELDS and others that are
-used to generate structured data. Characters like embedded
-carriage returns or ampersands could allow the user to
-create additional headers or fields that could cause
-malicious transactions.</p>
-
-<p style="margin-left:11%;">Server Certificates</p>
-
-<p style="margin-left:22%;">A secure application should
-never use the CURLOPT_SSL_VERIFYPEER option to disable
-certificate validation. There are numerous attacks that are
-enabled by apps that fail to properly validate server
-TLS/SSL certificates, thus enabling a malicious server to
-spoof a legitimate one. HTTPS without validated certificates
-is potentially as insecure as a plain HTTP connection.</p>
-
-<p style="margin-left:11%;">Showing What You Do</p>
-
-<p style="margin-left:22%;">On a related issue, be aware
-that even in situations like when you have problems with
-libcurl and ask someone for help, everything you reveal in
-order to get best possible help might also impose certain
-security related risks. Host names, user names, paths,
-operating system specifics, etc (not to mention passwords of
-course) may in fact be used by intruders to gain additional
-information of a potential target.</p>
-
-<p style="margin-left:22%; margin-top: 1em">To avoid this
-problem, you must of course use your common sense. Often,
-you can just edit out the sensitive data or just
-search/replace your true information with faked data.</p>
-
-<h2>Multiple Transfers Using the multi Interface
-<a name="Multiple Transfers Using the multi Interface"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">The easy
-interface as described in detail in this document is a
-synchronous interface that transfers one file at a time and
-doesn’t return until it is done.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The multi
-interface, on the other hand, allows your program to
-transfer multiple files in both directions at the same time,
-without forcing you to use multiple threads. The name might
-make it seem that the multi interface is for multi-threaded
-programs, but the truth is almost the reverse. The multi
-interface can allow a single-threaded application to perform
-the same kinds of multiple, simultaneous transfers that
-multi-threaded programs can perform. It allows many of the
-benefits of multi-threaded transfers without the complexity
-of managing and synchronizing many threads.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To use this
-interface, you are better off if you first understand the
-basics of how to use the easy interface. The multi interface
-is simply a way to make multiple transfers at the same time
-by adding up multiple easy handles into a "multi
-stack".</p>
-
-<p style="margin-left:11%; margin-top: 1em">You create the
-easy handles you want and you set all the options just like
-you have been told above, and then you create a multi handle
-with <i>curl_multi_init(3)</i> and add all those easy
-handles to that multi handle with
-<i>curl_multi_add_handle(3)</i>.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When
-you’ve added the handles you have for the moment (you
-can still add new ones at any time), you start the transfers
-by calling <i>curl_multi_perform(3)</i>.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>curl_multi_perform(3)</i>
-is asynchronous. It will only execute as little as possible
-and then return back control to your program. It is designed
-to never block. If it returns CURLM_CALL_MULTI_PERFORM you
-better call it again soon, as that is a signal that it still
-has local data to send or remote data to receive.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The best usage
-of this interface is when you do a select() on all possible
-file descriptors or sockets to know when to call libcurl
-again. This also makes it easy for you to wait and respond
-to actions on your own application’s sockets/handles.
-You figure out what to select() for by using
-<i>curl_multi_fdset(3)</i>, that fills in a set of fd_set
-variables for you with the particular file descriptors
-libcurl uses for the moment.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When you then
-call select(), it’ll return when one of the file
-handles signal action and you then call
-<i>curl_multi_perform(3)</i> to allow libcurl to do what it
-wants to do. Take note that libcurl does also feature some
-time-out code so we advise you to never use very long
-timeouts on select() before you call
-<i>curl_multi_perform(3)</i>, which thus should be called
-unconditionally every now and then even if none of its file
-descriptors have signaled ready. Another precaution you
-should use: always call <i>curl_multi_fdset(3)</i>
-immediately before the select() call since the current set
-of file descriptors may change when calling a curl
-function.</p>
-
-<p style="margin-left:11%; margin-top: 1em">If you want to
-stop the transfer of one of the easy handles in the stack,
-you can use <i>curl_multi_remove_handle(3)</i> to remove
-individual easy handles. Remember that easy handles should
-be <i>curl_easy_cleanup(3)</i>ed.</p>
-
-<p style="margin-left:11%; margin-top: 1em">When a transfer
-within the multi stack has finished, the counter of running
-transfers (as filled in by <i>curl_multi_perform(3)</i>)
-will decrease. When the number reaches zero, all transfers
-are done.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>curl_multi_info_read(3)</i>
-can be used to get information about completed transfers. It
-then returns the CURLcode for each easy transfer, to allow
-you to figure out success on each individual transfer.</p>
-
-<h2>SSL, Certificates and Other Tricks
-<a name="SSL, Certificates and Other Tricks"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">[ seeding,
-passwords, keys, certificates, ENGINE, ca certs ]</p>
-
-<h2>Sharing Data Between Easy Handles
-<a name="Sharing Data Between Easy Handles"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">[ fill in ]</p>
-
-<h2>Footnotes
-<a name="Footnotes"></a>
-</h2>
-
-
-<table width="100%" border="0" rules="none" frame="void"
-       cellspacing="0" cellpadding="0">
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="4%">
-
-
-<p style="margin-top: 1em">[1]</p></td>
-<td width="7%"></td>
-<td width="78%">
-
-
-<p style="margin-top: 1em">libcurl 7.10.3 and later have
-the ability to switch over to chunked Transfer-Encoding in
-cases where HTTP uploads are done with data of an unknown
-size.</p> </td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="4%">
-
-
-<p>[2]</p></td>
-<td width="7%"></td>
-<td width="78%">
-
-
-<p>This happens on Windows machines when libcurl is built
-and used as a DLL. However, you can still do this on Windows
-if you link with a static library.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="4%">
-
-
-<p>[3]</p></td>
-<td width="7%"></td>
-<td width="78%">
-
-
-<p>The curl-config tool is generated at build-time (on
-UNIX-like systems) and should be installed with the
-’make install’ or similar instruction that
-installs the library, header files, man pages etc.</p></td></tr>
-<tr valign="top" align="left">
-<td width="11%"></td>
-<td width="4%">
-
-
-<p>[4]</p></td>
-<td width="7%"></td>
-<td width="78%">
-
-
-<p>This behavior was different in versions before 7.17.0,
-where strings had to remain valid past the end of the
-<i>curl_easy_setopt(3)</i> call.</p></td></tr>
- </table>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/libcurl-tutorial.pdf b/src/other/curl/docs/libcurl/libcurl-tutorial.pdf
deleted file mode 100644
index b81613b..0000000
Binary files a/src/other/curl/docs/libcurl/libcurl-tutorial.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/libcurl.html b/src/other/curl/docs/libcurl/libcurl.html
deleted file mode 100644
index 722f988..0000000
--- a/src/other/curl/docs/libcurl/libcurl.html
+++ /dev/null
@@ -1,357 +0,0 @@
-<!-- Creator     : groff version 1.21 -->
-<!-- CreationDate: Sat Jul 28 16:48:17 2012 -->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta name="generator" content="groff -Thtml, see www.gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
-<meta name="Content-Style" content="text/css">
-<style type="text/css">
-       p       { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       pre     { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       table   { margin-top: 0; margin-bottom: 0; vertical-align: top }
-       h1      { text-align: center }
-</style>
-<title>libcurl</title>
-
-</head>
-<body>
-
-<h1 align="center">libcurl</h1>
-
-<a href="#NAME">NAME</a><br>
-<a href="#DESCRIPTION">DESCRIPTION</a><br>
-<a href="#LINKING WITH LIBCURL">LINKING WITH LIBCURL</a><br>
-<a href="#LIBCURL SYMBOL NAMES">LIBCURL SYMBOL NAMES</a><br>
-<a href="#PORTABILITY">PORTABILITY</a><br>
-<a href="#THREADS">THREADS</a><br>
-<a href="#PERSISTENT CONNECTIONS">PERSISTENT CONNECTIONS</a><br>
-<a href="#GLOBAL CONSTANTS">GLOBAL CONSTANTS</a><br>
-
-<hr>
-
-
-<h2>NAME
-<a name="NAME"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">libcurl −
-client-side URL transfers</p>
-
-<h2>DESCRIPTION
-<a name="DESCRIPTION"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">This is a short
-overview on how to use libcurl in your C programs. There are
-specific man pages for each function mentioned in here.
-There are also the <i>libcurl-easy(3)</i> man page, the
-<i>libcurl-multi(3)</i> man page, the
-<i>libcurl-share(3)</i> man page and the
-<i>libcurl-tutorial(3)</i> man page for in-depth
-understanding on how to program with libcurl.</p>
-
-<p style="margin-left:11%; margin-top: 1em">There are more
-than thirty custom bindings available that bring libcurl
-access to your favourite language. Look elsewhere for
-documentation on those.</p>
-
-<p style="margin-left:11%; margin-top: 1em">libcurl has a
-global constant environment that you must set up and
-maintain while using libcurl. This essentially means you
-call <i>curl_global_init(3)</i> at the start of your program
-and <i>curl_global_cleanup(3)</i> at the end. See GLOBAL
-CONSTANTS below for details.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To transfer
-files, you always set up an "easy handle" using
-<i>curl_easy_init(3)</i>, but when you want the file(s)
-transferred you have the option of using the
-"easy" interface, or the "multi"
-interface.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The easy
-interface is a synchronous interface with which you call
-<i>curl_easy_perform(3)</i> and let it perform the transfer.
-When it is completed, the function returns and you can
-continue. More details are found in the
-<i>libcurl-easy(3)</i> man page.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The multi
-interface on the other hand is an asynchronous interface,
-that you call and that performs only a little piece of the
-transfer on each invoke. It is perfect if you want to do
-things while the transfer is in progress, or similar. The
-multi interface allows you to select() on libcurl action,
-and even to easily download multiple files simultaneously
-using a single thread. See further details in the
-<i>libcurl-multi(3)</i> man page.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You can have
-multiple easy handles share certain data, even if they are
-used in different threads. This magic is setup using the
-share interface, as described in the <i>libcurl-share(3)</i>
-man page.</p>
-
-<p style="margin-left:11%; margin-top: 1em">There is also a
-series of other helpful functions to use, including
-these:</p>
-
-<p style="margin-left:22%;">curl_version_info()</p>
-
-<p style="margin-left:32%;">gets detailed libcurl (and
-other used libraries) version info</p>
-
-<p style="margin-left:22%;">curl_getdate()</p>
-
-<p style="margin-left:32%;">converts a date string to
-time_t</p>
-
-<p style="margin-left:22%;">curl_easy_getinfo()</p>
-
-<p style="margin-left:32%;">get information about a
-performed transfer</p>
-
-<p style="margin-left:22%;">curl_formadd()</p>
-
-<p style="margin-left:32%;">helps building an HTTP form
-POST</p>
-
-<p style="margin-left:22%;">curl_formfree()</p>
-
-<p style="margin-left:32%;">free a list built with
-<i>curl_formadd(3)</i></p>
-
-<p style="margin-left:22%;">curl_slist_append()</p>
-
-<p style="margin-left:32%;">builds a linked list</p>
-
-<p style="margin-left:22%;">curl_slist_free_all()</p>
-
-<p style="margin-left:32%;">frees a whole curl_slist</p>
-
-<h2>LINKING WITH LIBCURL
-<a name="LINKING WITH LIBCURL"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">On unix-like
-machines, there’s a tool named curl-config that gets
-installed with the rest of the curl stuff when ’make
-install’ is performed.</p>
-
-<p style="margin-left:11%; margin-top: 1em">curl-config is
-added to make it easier for applications to link with
-libcurl and developers to learn about libcurl and how to use
-it.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Run
-’curl-config --libs’ to get the (additional)
-linker options you need to link with the particular version
-of libcurl you’ve installed. See the
-<i>curl-config(1)</i> man page for further details.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Unix-like
-operating system that ship libcurl as part of their
-distributions often don’t provide the curl-config
-tool, but simply install the library and headers in the
-common path for this purpose.</p>
-
-<h2>LIBCURL SYMBOL NAMES
-<a name="LIBCURL SYMBOL NAMES"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">All public
-functions in the libcurl interface are prefixed with
-’curl_’ (with a lowercase c). You can find other
-functions in the library source code, but other prefixes
-indicate that the functions are private and may change
-without further notice in the next release.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Only use
-documented functions and functionality!</p>
-
-<h2>PORTABILITY
-<a name="PORTABILITY"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">libcurl works
-<b>exactly</b> the same, on any of the platforms it compiles
-and builds on.</p>
-
-<h2>THREADS
-<a name="THREADS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Never ever call
-curl-functions simultaneously using the same handle from
-several threads. libcurl is thread-safe and can be used in
-any number of threads, but you must use separate curl
-handles if you want to use libcurl in more than one thread
-simultaneously.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The global
-environment functions are not thread-safe. See GLOBAL
-CONSTANTS below for details.</p>
-
-<h2>PERSISTENT CONNECTIONS
-<a name="PERSISTENT CONNECTIONS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">Persistent
-connections means that libcurl can re-use the same
-connection for several transfers, if the conditions are
-right.</p>
-
-<p style="margin-left:11%; margin-top: 1em">libcurl will
-<b>always</b> attempt to use persistent connections.
-Whenever you use <i>curl_easy_perform(3)</i> or
-<i>curl_multi_perform(3)</i>, libcurl will attempt to use an
-existing connection to do the transfer, and if none exists
-it’ll open a new one that will be subject for re-use
-on a possible following call to <i>curl_easy_perform(3)</i>
-or <i>curl_multi_perform(3)</i>.</p>
-
-<p style="margin-left:11%; margin-top: 1em">To allow
-libcurl to take full advantage of persistent connections,
-you should do as many of your file transfers as possible
-using the same curl handle. When you call
-<i>curl_easy_cleanup(3)</i>, all the possibly open
-connections held by libcurl will be closed and
-forgotten.</p>
-
-<p style="margin-left:11%; margin-top: 1em">Note that the
-options set with <i>curl_easy_setopt(3)</i> will be used on
-every repeated <i>curl_easy_perform(3)</i> call.</p>
-
-<h2>GLOBAL CONSTANTS
-<a name="GLOBAL CONSTANTS"></a>
-</h2>
-
-
-<p style="margin-left:11%; margin-top: 1em">There are a
-variety of constants that libcurl uses, mainly through its
-internal use of other libraries, which are too complicated
-for the library loader to set up. Therefore, a program must
-call a library function after the program is loaded and
-running to finish setting up the library code. For example,
-when libcurl is built for SSL capability via the GNU TLS
-library, there is an elaborate tree inside that library that
-describes the SSL protocol.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>curl_global_init()</i>
-is the function that you must call. This may allocate
-resources (e.g. the memory for the GNU TLS tree mentioned
-above), so the companion function
-<i>curl_global_cleanup()</i> releases them.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The basic rule
-for constructing a program that uses libcurl is this: Call
-<i>curl_global_init()</i>, with a <i>CURL_GLOBAL_ALL</i>
-argument, immediately after the program starts, while it is
-still only one thread and before it uses libcurl at all.
-Call <i>curl_global_cleanup()</i> immediately before the
-program exits, when the program is again only one thread and
-after its last use of libcurl.</p>
-
-<p style="margin-left:11%; margin-top: 1em">You can call
-both of these multiple times, as long as all calls meet
-these requirements and the number of calls to each is the
-same.</p>
-
-<p style="margin-left:11%; margin-top: 1em">It isn’t
-actually required that the functions be called at the
-beginning and end of the program -- that’s just
-usually the easiest way to do it. It <i>is</i> required that
-the functions be called when no other thread in the program
-is running.</p>
-
-<p style="margin-left:11%; margin-top: 1em">These global
-constant functions are <i>not thread safe</i>, so you must
-not call them when any other thread in the program is
-running. It isn’t good enough that no other thread is
-using libcurl at the time, because these functions
-internally call similar functions of other libraries, and
-those functions are similarly thread-unsafe. You can’t
-generally know what these libraries are, or whether other
-threads are using them.</p>
-
-<p style="margin-left:11%; margin-top: 1em">The global
-constant situation merits special consideration when the
-code you are writing to use libcurl is not the main program,
-but rather a modular piece of a program, e.g. another
-library. As a module, your code doesn’t know about
-other parts of the program -- it doesn’t know whether
-they use libcurl or not. And its code doesn’t
-necessarily run at the start and end of the whole
-program.</p>
-
-<p style="margin-left:11%; margin-top: 1em">A module like
-this must have global constant functions of its own, just
-like <i>curl_global_init()</i> and
-<i>curl_global_cleanup()</i>. The module thus has control at
-the beginning and end of the program and has a place to call
-the libcurl functions. Note that if multiple modules in the
-program use libcurl, they all will separately call the
-libcurl functions, and that’s OK because only the
-first <i>curl_global_init()</i> and the last
-<i>curl_global_cleanup()</i> in a program change anything.
-(libcurl uses a reference count in static memory).</p>
-
-<p style="margin-left:11%; margin-top: 1em">In a C++
-module, it is common to deal with the global constant
-situation by defining a special class that represents the
-global constant environment of the module. A program always
-has exactly one object of the class, in static storage. That
-way, the program automatically calls the constructor of the
-object as the program starts up and the destructor as it
-terminates. As the author of this libcurl-using module, you
-can make the constructor call <i>curl_global_init()</i> and
-the destructor call <i>curl_global_cleanup()</i> and satisfy
-libcurl’s requirements without your user having to
-think about it.</p>
-
-
-<p style="margin-left:11%; margin-top: 1em"><i>curl_global_init()</i>
-has an argument that tells what particular parts of the
-global constant environment to set up. In order to
-successfully use any value except <i>CURL_GLOBAL_ALL</i>
-(which says to set up the whole thing), you must have
-specific knowledge of internal workings of libcurl and all
-other parts of the program of which it is part.</p>
-
-<p style="margin-left:11%; margin-top: 1em">A special part
-of the global constant environment is the identity of the
-memory allocator. <i>curl_global_init()</i> selects the
-system default memory allocator, but you can use
-<i>curl_global_init_mem()</i> to supply one of your own.
-However, there is no way to use
-<i>curl_global_init_mem()</i> in a modular program -- all
-modules in the program that might use libcurl would have to
-agree on one allocator.</p>
-
-<p style="margin-left:11%; margin-top: 1em">There is a
-failsafe in libcurl that makes it usable in simple
-situations without you having to worry about the global
-constant environment at all: <i>curl_easy_init()</i> sets up
-the environment itself if it hasn’t been done yet. The
-resources it acquires to do so get released by the operating
-system automatically when the program exits.</p>
-
-<p style="margin-left:11%; margin-top: 1em">This failsafe
-feature exists mainly for backward compatibility because
-there was a time when the global functions didn’t
-exist. Because it is sufficient only in the simplest of
-programs, it is not recommended for any program to rely on
-it.</p>
-<hr>
-</body>
-</html>
diff --git a/src/other/curl/docs/libcurl/libcurl.m4 b/src/other/curl/docs/libcurl/libcurl.m4
deleted file mode 100644
index f551e30..0000000
--- a/src/other/curl/docs/libcurl/libcurl.m4
+++ /dev/null
@@ -1,250 +0,0 @@
-# LIBCURL_CHECK_CONFIG ([DEFAULT-ACTION], [MINIMUM-VERSION],
-#                       [ACTION-IF-YES], [ACTION-IF-NO])
-# ----------------------------------------------------------
-#      David Shaw <dshaw at jabberwocky.com>   May-09-2006
-#
-# Checks for libcurl.  DEFAULT-ACTION is the string yes or no to
-# specify whether to default to --with-libcurl or --without-libcurl.
-# If not supplied, DEFAULT-ACTION is yes.  MINIMUM-VERSION is the
-# minimum version of libcurl to accept.  Pass the version as a regular
-# version number like 7.10.1. If not supplied, any version is
-# accepted.  ACTION-IF-YES is a list of shell commands to run if
-# libcurl was successfully found and passed the various tests.
-# ACTION-IF-NO is a list of shell commands that are run otherwise.
-# Note that using --without-libcurl does run ACTION-IF-NO.
-#
-# This macro #defines HAVE_LIBCURL if a working libcurl setup is
-# found, and sets @LIBCURL@ and @LIBCURL_CPPFLAGS@ to the necessary
-# values.  Other useful defines are LIBCURL_FEATURE_xxx where xxx are
-# the various features supported by libcurl, and LIBCURL_PROTOCOL_yyy
-# where yyy are the various protocols supported by libcurl.  Both xxx
-# and yyy are capitalized.  See the list of AH_TEMPLATEs at the top of
-# the macro for the complete list of possible defines.  Shell
-# variables $libcurl_feature_xxx and $libcurl_protocol_yyy are also
-# defined to 'yes' for those features and protocols that were found.
-# Note that xxx and yyy keep the same capitalization as in the
-# curl-config list (e.g. it's "HTTP" and not "http").
-#
-# Users may override the detected values by doing something like:
-# LIBCURL="-lcurl" LIBCURL_CPPFLAGS="-I/usr/myinclude" ./configure
-#
-# For the sake of sanity, this macro assumes that any libcurl that is
-# found is after version 7.7.2, the first version that included the
-# curl-config script.  Note that it is very important for people
-# packaging binary versions of libcurl to include this script!
-# Without curl-config, we can only guess what protocols are available,
-# or use curl_version_info to figure it out at runtime.
-
-AC_DEFUN([LIBCURL_CHECK_CONFIG],
-[
-  AH_TEMPLATE([LIBCURL_FEATURE_SSL],[Defined if libcurl supports SSL])
-  AH_TEMPLATE([LIBCURL_FEATURE_KRB4],[Defined if libcurl supports KRB4])
-  AH_TEMPLATE([LIBCURL_FEATURE_IPV6],[Defined if libcurl supports IPv6])
-  AH_TEMPLATE([LIBCURL_FEATURE_LIBZ],[Defined if libcurl supports libz])
-  AH_TEMPLATE([LIBCURL_FEATURE_ASYNCHDNS],[Defined if libcurl supports AsynchDNS])
-  AH_TEMPLATE([LIBCURL_FEATURE_IDN],[Defined if libcurl supports IDN])
-  AH_TEMPLATE([LIBCURL_FEATURE_SSPI],[Defined if libcurl supports SSPI])
-  AH_TEMPLATE([LIBCURL_FEATURE_NTLM],[Defined if libcurl supports NTLM])
-
-  AH_TEMPLATE([LIBCURL_PROTOCOL_HTTP],[Defined if libcurl supports HTTP])
-  AH_TEMPLATE([LIBCURL_PROTOCOL_HTTPS],[Defined if libcurl supports HTTPS])
-  AH_TEMPLATE([LIBCURL_PROTOCOL_FTP],[Defined if libcurl supports FTP])
-  AH_TEMPLATE([LIBCURL_PROTOCOL_FTPS],[Defined if libcurl supports FTPS])
-  AH_TEMPLATE([LIBCURL_PROTOCOL_FILE],[Defined if libcurl supports FILE])
-  AH_TEMPLATE([LIBCURL_PROTOCOL_TELNET],[Defined if libcurl supports TELNET])
-  AH_TEMPLATE([LIBCURL_PROTOCOL_LDAP],[Defined if libcurl supports LDAP])
-  AH_TEMPLATE([LIBCURL_PROTOCOL_DICT],[Defined if libcurl supports DICT])
-  AH_TEMPLATE([LIBCURL_PROTOCOL_TFTP],[Defined if libcurl supports TFTP])
-  AH_TEMPLATE([LIBCURL_PROTOCOL_RTSP],[Defined if libcurl supports RTSP])
-  AH_TEMPLATE([LIBCURL_PROTOCOL_POP3],[Defined if libcurl supports POP3])
-  AH_TEMPLATE([LIBCURL_PROTOCOL_IMAP],[Defined if libcurl supports IMAP])
-  AH_TEMPLATE([LIBCURL_PROTOCOL_SMTP],[Defined if libcurl supports SMTP])
-
-  AC_ARG_WITH(libcurl,
-     AC_HELP_STRING([--with-libcurl=DIR],[look for the curl library in DIR]),
-     [_libcurl_with=$withval],[_libcurl_with=ifelse([$1],,[yes],[$1])])
-
-  if test "$_libcurl_with" != "no" ; then
-
-     AC_PROG_AWK
-
-     _libcurl_version_parse="eval $AWK '{split(\$NF,A,\".\"); X=256*256*A[[1]]+256*A[[2]]+A[[3]]; print X;}'"
-
-     _libcurl_try_link=yes
-
-     if test -d "$_libcurl_with" ; then
-        LIBCURL_CPPFLAGS="-I$withval/include"
-        _libcurl_ldflags="-L$withval/lib"
-        AC_PATH_PROG([_libcurl_config],[curl-config],["$withval/bin"],
-                     ["$withval/bin"])
-     else
-        AC_PATH_PROG([_libcurl_config],[curl-config])
-     fi
-
-     if test x$_libcurl_config != "x" ; then
-        AC_CACHE_CHECK([for the version of libcurl],
-           [libcurl_cv_lib_curl_version],
-           [libcurl_cv_lib_curl_version=`$_libcurl_config --version | $AWK '{print $[]2}'`])
-
-        _libcurl_version=`echo $libcurl_cv_lib_curl_version | $_libcurl_version_parse`
-        _libcurl_wanted=`echo ifelse([$2],,[0],[$2]) | $_libcurl_version_parse`
-
-        if test $_libcurl_wanted -gt 0 ; then
-           AC_CACHE_CHECK([for libcurl >= version $2],
-              [libcurl_cv_lib_version_ok],
-              [
-              if test $_libcurl_version -ge $_libcurl_wanted ; then
-                 libcurl_cv_lib_version_ok=yes
-              else
-                 libcurl_cv_lib_version_ok=no
-              fi
-              ])
-        fi
-
-        if test $_libcurl_wanted -eq 0 || test x$libcurl_cv_lib_version_ok = xyes ; then
-           if test x"$LIBCURL_CPPFLAGS" = "x" ; then
-              LIBCURL_CPPFLAGS=`$_libcurl_config --cflags`
-           fi
-           if test x"$LIBCURL" = "x" ; then
-              LIBCURL=`$_libcurl_config --libs`
-
-              # This is so silly, but Apple actually has a bug in their
-              # curl-config script.  Fixed in Tiger, but there are still
-              # lots of Panther installs around.
-              case "${host}" in
-                 powerpc-apple-darwin7*)
-                    LIBCURL=`echo $LIBCURL | sed -e 's|-arch i386||g'`
-                 ;;
-              esac
-           fi
-
-           # All curl-config scripts support --feature
-           _libcurl_features=`$_libcurl_config --feature`
-
-           # Is it modern enough to have --protocols? (7.12.4)
-           if test $_libcurl_version -ge 461828 ; then
-              _libcurl_protocols=`$_libcurl_config --protocols`
-           fi
-        else
-           _libcurl_try_link=no
-        fi
-
-        unset _libcurl_wanted
-     fi
-
-     if test $_libcurl_try_link = yes ; then
-
-        # we didn't find curl-config, so let's see if the user-supplied
-        # link line (or failing that, "-lcurl") is enough.
-        LIBCURL=${LIBCURL-"$_libcurl_ldflags -lcurl"}
-
-        AC_CACHE_CHECK([whether libcurl is usable],
-           [libcurl_cv_lib_curl_usable],
-           [
-           _libcurl_save_cppflags=$CPPFLAGS
-           CPPFLAGS="$LIBCURL_CPPFLAGS $CPPFLAGS"
-           _libcurl_save_libs=$LIBS
-           LIBS="$LIBCURL $LIBS"
-
-           AC_LINK_IFELSE(AC_LANG_PROGRAM([#include <curl/curl.h>],[
-/* Try and use a few common options to force a failure if we are
-   missing symbols or can't link. */
-int x;
-curl_easy_setopt(NULL,CURLOPT_URL,NULL);
-x=CURL_ERROR_SIZE;
-x=CURLOPT_WRITEFUNCTION;
-x=CURLOPT_FILE;
-x=CURLOPT_ERRORBUFFER;
-x=CURLOPT_STDERR;
-x=CURLOPT_VERBOSE;
-]),libcurl_cv_lib_curl_usable=yes,libcurl_cv_lib_curl_usable=no)
-
-           CPPFLAGS=$_libcurl_save_cppflags
-           LIBS=$_libcurl_save_libs
-           unset _libcurl_save_cppflags
-           unset _libcurl_save_libs
-           ])
-
-        if test $libcurl_cv_lib_curl_usable = yes ; then
-
-           # Does curl_free() exist in this version of libcurl?
-           # If not, fake it with free()
-
-           _libcurl_save_cppflags=$CPPFLAGS
-           CPPFLAGS="$CPPFLAGS $LIBCURL_CPPFLAGS"
-           _libcurl_save_libs=$LIBS
-           LIBS="$LIBS $LIBCURL"
-
-           AC_CHECK_FUNC(curl_free,,
-              AC_DEFINE(curl_free,free,
-                [Define curl_free() as free() if our version of curl lacks curl_free.]))
-
-           CPPFLAGS=$_libcurl_save_cppflags
-           LIBS=$_libcurl_save_libs
-           unset _libcurl_save_cppflags
-           unset _libcurl_save_libs
-
-           AC_DEFINE(HAVE_LIBCURL,1,
-             [Define to 1 if you have a functional curl library.])
-           AC_SUBST(LIBCURL_CPPFLAGS)
-           AC_SUBST(LIBCURL)
-
-           for _libcurl_feature in $_libcurl_features ; do
-              AC_DEFINE_UNQUOTED(AS_TR_CPP(libcurl_feature_$_libcurl_feature),[1])
-              eval AS_TR_SH(libcurl_feature_$_libcurl_feature)=yes
-           done
-
-           if test "x$_libcurl_protocols" = "x" ; then
-
-              # We don't have --protocols, so just assume that all
-              # protocols are available
-              _libcurl_protocols="HTTP FTP FILE TELNET LDAP DICT TFTP"
-
-              if test x$libcurl_feature_SSL = xyes ; then
-                 _libcurl_protocols="$_libcurl_protocols HTTPS"
-
-                 # FTPS wasn't standards-compliant until version
-                 # 7.11.0 (0x070b00 == 461568)
-                 if test $_libcurl_version -ge 461568; then
-                    _libcurl_protocols="$_libcurl_protocols FTPS"
-                 fi
-              fi
-
-              # RTSP, IMAP, POP3 and SMTP were added in
-              # 7.20.0 (0x071400 == 463872)
-              if test $_libcurl_version -ge 463872; then
-                 _libcurl_protocols="$_libcurl_protocols RTSP IMAP POP3 SMTP"
-              fi
-           fi
-
-           for _libcurl_protocol in $_libcurl_protocols ; do
-              AC_DEFINE_UNQUOTED(AS_TR_CPP(libcurl_protocol_$_libcurl_protocol),[1])
-              eval AS_TR_SH(libcurl_protocol_$_libcurl_protocol)=yes
-           done
-        else
-           unset LIBCURL
-           unset LIBCURL_CPPFLAGS
-        fi
-     fi
-
-     unset _libcurl_try_link
-     unset _libcurl_version_parse
-     unset _libcurl_config
-     unset _libcurl_feature
-     unset _libcurl_features
-     unset _libcurl_protocol
-     unset _libcurl_protocols
-     unset _libcurl_version
-     unset _libcurl_ldflags
-  fi
-
-  if test x$_libcurl_with = xno || test x$libcurl_cv_lib_curl_usable != xyes ; then
-     # This is the IF-NO path
-     ifelse([$4],,:,[$4])
-  else
-     # This is the IF-YES path
-     ifelse([$3],,:,[$3])
-  fi
-
-  unset _libcurl_with
-])dnl
diff --git a/src/other/curl/docs/libcurl/libcurl.pdf b/src/other/curl/docs/libcurl/libcurl.pdf
deleted file mode 100644
index 48115eb..0000000
Binary files a/src/other/curl/docs/libcurl/libcurl.pdf and /dev/null differ
diff --git a/src/other/curl/docs/libcurl/symbols-in-versions b/src/other/curl/docs/libcurl/symbols-in-versions
deleted file mode 100644
index 9cc6e5c..0000000
--- a/src/other/curl/docs/libcurl/symbols-in-versions
+++ /dev/null
@@ -1,462 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
- This document lists defines and other symbols present in libcurl, together
- with exact information about the first libcurl version that provides the
- symbol, the first version in which the symbol was marked as deprecated and
- for a few symbols the last version that featured it. The names appear in
- alphabetical order.
-
- Name                           Introduced  Deprecated  Removed
-
-CURLAUTH_ANY                    7.10.6
-CURLAUTH_ANYSAFE                7.10.6
-CURLAUTH_BASIC                  7.10.6
-CURLAUTH_DIGEST                 7.10.6
-CURLAUTH_DIGEST_IE              7.19.3
-CURLAUTH_GSSNEGOTIATE           7.10.6
-CURLAUTH_NTLM                   7.10.6
-CURLCLOSEPOLICY_CALLBACK        7.7
-CURLCLOSEPOLICY_LEAST_RECENTLY_USED 7.7
-CURLCLOSEPOLICY_LEAST_TRAFFIC   7.7
-CURLCLOSEPOLICY_OLDEST          7.7
-CURLCLOSEPOLICY_SLOWEST         7.7
-CURLE_ABORTED_BY_CALLBACK       7.1
-CURLE_AGAIN                     7.18.2
-CURLE_BAD_CALLING_ORDER         7.1           7.17.0
-CURLE_BAD_CONTENT_ENCODING      7.10
-CURLE_BAD_FUNCTION_ARGUMENT     7.1
-CURLE_BAD_PASSWORD_ENTERED      -             7.17.0
-CURLE_COULDNT_CONNECT           7.1
-CURLE_COULDNT_RESOLVE_HOST      7.1
-CURLE_COULDNT_RESOLVE_PROXY     7.1
-CURLE_FAILED_INIT               7.1
-CURLE_FILESIZE_EXCEEDED         7.10.8
-CURLE_FILE_COULDNT_READ_FILE    7.1
-CURLE_FTP_ACCESS_DENIED         7.1
-CURLE_FTP_BAD_DOWNLOAD_RESUME   7.1           7.1
-CURLE_FTP_CANT_GET_HOST         7.1
-CURLE_FTP_CANT_RECONNECT        7.1           7.17.0
-CURLE_FTP_COULDNT_GET_SIZE      7.1           7.17.0
-CURLE_FTP_COULDNT_RETR_FILE     7.1
-CURLE_FTP_COULDNT_SET_ASCII     7.1           7.17.0
-CURLE_FTP_COULDNT_SET_BINARY    7.1           7.17.0
-CURLE_FTP_COULDNT_SET_TYPE      7.17.0
-CURLE_FTP_COULDNT_STOR_FILE     7.1
-CURLE_FTP_COULDNT_USE_REST      7.1
-CURLE_FTP_PARTIAL_FILE          7.1           7.1
-CURLE_FTP_PORT_FAILED           7.1
-CURLE_FTP_PRET_FAILED           7.20.0
-CURLE_FTP_QUOTE_ERROR           7.1           7.17.0
-CURLE_FTP_SSL_FAILED            -             7.17.0
-CURLE_FTP_USER_PASSWORD_INCORRECT 7.1         7.17.0
-CURLE_FTP_WEIRD_227_FORMAT      7.1
-CURLE_FTP_WEIRD_PASS_REPLY      7.1
-CURLE_FTP_WEIRD_PASV_REPLY      7.1
-CURLE_FTP_WEIRD_SERVER_REPLY    7.1
-CURLE_FTP_WEIRD_USER_REPLY      7.1           7.17.0
-CURLE_FTP_WRITE_ERROR           7.1           7.17.0
-CURLE_FUNCTION_NOT_FOUND        7.1
-CURLE_GOT_NOTHING               7.9.1
-CURLE_HTTP_NOT_FOUND            7.1
-CURLE_HTTP_PORT_FAILED          -             7.12.0
-CURLE_HTTP_POST_ERROR           7.1
-CURLE_HTTP_RANGE_ERROR          7.1           7.17.0
-CURLE_INTERFACE_FAILED          7.12.0
-CURLE_LDAP_CANNOT_BIND          7.1
-CURLE_LDAP_INVALID_URL          7.10.8
-CURLE_LDAP_SEARCH_FAILED        7.1
-CURLE_LIBRARY_NOT_FOUND         7.1           7.17.0
-CURLE_MALFORMAT_USER            7.1           7.17.0
-CURLE_OK                        7.1
-CURLE_OPERATION_TIMEDOUT        7.17.0
-CURLE_OPERATION_TIMEOUTED       7.1           7.17.0
-CURLE_OUT_OF_MEMORY             7.1
-CURLE_PARTIAL_FILE              7.1
-CURLE_PEER_FAILED_VERIFICATION  7.17.1
-CURLE_QUOTE_ERROR               7.17.0
-CURLE_RANGE_ERROR               7.17.0
-CURLE_READ_ERROR                7.1
-CURLE_RECV_ERROR                7.13.0
-CURLE_REMOTE_ACCESS_DENIED      7.17.0
-CURLE_REMOTE_DISK_FULL          7.17.0
-CURLE_RTSP_CSEQ_ERROR           7.20.0
-CURLE_RTSP_SESSION_ERROR        7.20.0
-CURLE_SEND_ERROR                7.13.0
-CURLE_SHARE_IN_USE              -             7.17.0
-CURLE_SSH                       7.16.1
-CURLE_SSL_CACERT                7.10
-CURLE_SSL_CERTPROBLEM           7.10
-CURLE_SSL_CIPHER                7.10
-CURLE_SSL_CONNECT_ERROR         7.1
-CURLE_SSL_CRL_BADFILE           7.19.0
-CURLE_SSL_ENGINE_INITFAILED     7.13.0
-CURLE_SSL_ENGINE_NOTFOUND       7.9.3
-CURLE_SSL_ENGINE_SETFAILED      7.9.3
-CURLE_SSL_ISSUER_ERROR          7.19.0
-CURLE_SSL_PEER_CERTIFICATE      -             7.17.1
-CURLE_SSL_SHUTDOWN_FAILED       7.16.1
-CURLE_TELNET_OPTION_SYNTAX      7.7
-CURLE_TFTP_DISKFULL             7.15.0        7.17.0
-CURLE_TFTP_EXISTS               7.15.0        7.17.0
-CURLE_TFTP_ILLEGAL              7.15.0
-CURLE_TFTP_NOSUCHUSER           7.15.0
-CURLE_TFTP_UNKNOWNID            7.15.0
-CURLE_TOO_MANY_REDIRECTS        7.5
-CURLE_UNKNOWN_TELNET_OPTION     7.7
-CURLE_UNSUPPORTED_PROTOCOL      7.1
-CURLE_URL_MALFORMAT             7.1
-CURLE_URL_MALFORMAT_USER        7.1           7.17.0
-CURLE_USE_SSL_FAILED            7.17.0
-CURLE_WRITE_ERROR               7.1
-CURLFTPAUTH_DEFAULT             7.12.2
-CURLFTPAUTH_DEFAULT             7.12.2
-CURLFTPAUTH_SSL                 7.12.2
-CURLFTPAUTH_SSL                 7.12.2
-CURLFTPAUTH_TLS                 7.12.2
-CURLFTPAUTH_TLS                 7.12.2
-CURLFTPMETHOD_MULTICWD          7.15.1
-CURLFTPMETHOD_NOCWD             7.15.1
-CURLFTPMETHOD_SINGLECWD         7.15.1
-CURLFTPSSL_ALL                  -             7.17.0
-CURLFTPSSL_CCC_ACTIVE           7.16.1
-CURLFTPSSL_CCC_NONE             7.16.1
-CURLFTPSSL_CCC_PASSIVE          7.16.1
-CURLFTPSSL_CONTROL              7.11.0        7.17.0
-CURLFTPSSL_NONE                 7.11.0        7.17.0
-CURLFTPSSL_TRY                  7.11.0        7.17.0
-CURLFTP_CREATE_DIR              7.19.4
-CURLFTP_CREATE_DIR_NONE         7.19.4
-CURLFTP_CREATE_DIR_RETRY        7.19.4
-CURLINFO_APPCONNECT_TIME        7.19.0
-CURLINFO_CERTINFO               7.19.1
-CURLINFO_CONDITION_UNMET        7.19.4
-CURLINFO_CONNECT_TIME           7.4.1
-CURLINFO_CONTENT_LENGTH_DOWNLOAD 7.6.1
-CURLINFO_CONTENT_LENGTH_UPLOAD  7.6.1
-CURLINFO_CONTENT_TYPE           7.9.4
-CURLINFO_COOKIELIST             7.14.1
-CURLINFO_DATA_IN                7.9.6
-CURLINFO_DATA_OUT               7.9.6
-CURLINFO_EFFECTIVE_URL          7.3
-CURLINFO_FILETIME               7.5
-CURLINFO_FTP_ENTRY_PATH         7.15.4
-CURLINFO_HEADER_IN              7.9.6
-CURLINFO_HEADER_OUT             7.9.6
-CURLINFO_HEADER_SIZE            7.4.1
-CURLINFO_HTTPAUTH_AVAIL         7.10.8
-CURLINFO_HTTP_CODE              7.4.1         7.10.8
-CURLINFO_HTTP_CONNECTCODE       7.10.7
-CURLINFO_LASTSOCKET             7.15.2
-CURLINFO_NAMELOOKUP_TIME        7.4.1
-CURLINFO_NUM_CONNECTS           7.12.3
-CURLINFO_OS_ERRNO               7.12.2
-CURLINFO_PRETRANSFER_TIME       7.4.1
-CURLINFO_PRIMARY_IP             7.19.0
-CURLINFO_PRIVATE                7.10.3
-CURLINFO_PRIVATE                7.10.3
-CURLINFO_PROXYAUTH_AVAIL        7.10.8
-CURLINFO_REDIRECT_COUNT         7.9.7
-CURLINFO_REDIRECT_TIME          7.9.7
-CURLINFO_REDIRECT_URL           7.18.2
-CURLINFO_REQUEST_SIZE           7.4.1
-CURLINFO_RESPONSE_CODE          7.10.8
-CURLINFO_SIZE_DOWNLOAD          7.4.1
-CURLINFO_SIZE_UPLOAD            7.4.1
-CURLINFO_SPEED_DOWNLOAD         7.4.1
-CURLINFO_SPEED_UPLOAD           7.4.1
-CURLINFO_SSL_ENGINES            7.12.3
-CURLINFO_SSL_VERIFYRESULT       7.5
-CURLINFO_STARTTRANSFER_TIME     7.9.2
-CURLINFO_TEXT                   7.9.6
-CURLINFO_TOTAL_TIME             7.4.1
-CURLMSG_DONE                    7.9.6
-CURLM_BAD_EASY_HANDLE           7.9.6
-CURLM_BAD_HANDLE                7.9.6
-CURLM_CALL_MULTI_PERFORM        7.9.6
-CURLM_CALL_MULTI_SOCKET         7.15.5
-CURLM_INTERNAL_ERROR            7.9.6
-CURLM_OK                        7.9.6
-CURLM_OUT_OF_MEMORY             7.9.6
-CURLOPT_ADDRESS_SCOPE           7.19.0
-CURLOPT_APPEND                  7.16.4
-CURLOPT_AUTOREFERER             7.1
-CURLOPT_BUFFERSIZE              7.10
-CURLOPT_CAINFO                  7.4.2
-CURLOPT_CAPATH                  7.9.8
-CURLOPT_CERTINFO                7.19.1
-CURLOPT_CLOSEFUNCTION           7.7           7.11.1      7.15.4
-CURLOPT_CLOSEPOLICY             7.7           7.16.1
-CURLOPT_CONNECTTIMEOUT          7.7
-CURLOPT_CONNECTTIMEOUT_MS       7.16.2
-CURLOPT_CONNECT_ONLY            7.15.2
-CURLOPT_CONV_FROM_NETWORK_FUNCTION 7.15.4
-CURLOPT_CONV_FROM_UTF8_FUNCTION 7.15.4
-CURLOPT_CONV_TO_NETWORK_FUNCTION 7.15.4
-CURLOPT_COOKIE                  7.1
-CURLOPT_COOKIEFILE              7.1
-CURLOPT_COOKIEJAR               7.9
-CURLOPT_COOKIELIST              7.17.1
-CURLOPT_COOKIESESSION           7.9.7
-CURLOPT_COPYPOSTFIELDS          7.17.1
-CURLOPT_CRLF                    7.1
-CURLOPT_CRLFILE                 7.19.0
-CURLOPT_CUSTOMREQUEST           7.1
-CURLOPT_DEBUGDATA               7.9.6
-CURLOPT_DEBUGFUNCTION           7.9.6
-CURLOPT_DIRLISTONLY             7.16.4
-CURLOPT_DNS_CACHE_TIMEOUT       7.9.3
-CURLOPT_DNS_USE_GLOBAL_CACHE    7.9.3         7.11.1
-CURLOPT_EGDSOCKET               7.7
-CURLOPT_ENCODING                7.12.2
-CURLOPT_ERRORBUFFER             7.1
-CURLOPT_FAILONERROR             7.1
-CURLOPT_FILE                    7.1           7.9.7
-CURLOPT_FILETIME                7.5
-CURLOPT_FLAGS                   7.1           -           7.9.2
-CURLOPT_FOLLOWLOCATION          7.1
-CURLOPT_FORBID_REUSE            7.7
-CURLOPT_FRESH_CONNECT           7.7
-CURLOPT_FTPAPPEND               7.1           7.16.4
-CURLOPT_FTPASCII                7.1           7.11.1      7.15.4
-CURLOPT_FTPLISTONLY             7.1           7.16.4
-CURLOPT_FTPPORT                 7.1
-CURLOPT_FTPSSLAUTH              7.12.2
-CURLOPT_FTP_ACCOUNT             7.13.1
-CURLOPT_FTP_ALTERNATIVE_TO_USER 7.15.5
-CURLOPT_FTP_CREATE_MISSING_DIRS 7.10.7
-CURLOPT_FTP_FILEMETHOD          7.15.1
-CURLOPT_FTP_RESPONSE_TIMEOUT    7.10.8
-CURLOPT_FTP_SKIP_PASV_IP        7.15.0
-CURLOPT_FTP_SSL                 7.11.0        7.16.4
-CURLOPT_FTP_SSL_CCC             7.16.1
-CURLOPT_FTP_USE_EPRT            7.10.5
-CURLOPT_FTP_USE_EPSV            7.9.2
-CURLOPT_FTP_USE_PRET            7.20.0
-CURLOPT_RTSP_REQUEST            7.20.0
-CURLOPT_RTSP_SESSION_ID         7.20.0
-CURLOPT_RTSP_STREAM_URI         7.20.0
-CURLOPT_RTSP_TRANSPORT          7.20.0
-CURLOPT_RTSP_CLIENT_CSEQ        7.20.0
-CURLOPT_RTSP_SERVER_CSEQ        7.20.0
-CURLOPT_INTERLEAVEDATA          7.20.0
-CURLOPT_INTERLEAVEFUNCTION      7.20.0
-CURLOPT_HEADER                  7.1
-CURLOPT_HEADERDATA              7.10
-CURLOPT_HEADERFUNCTION          7.7.2
-CURLOPT_HTTP200ALIASES          7.10.3
-CURLOPT_HTTPAUTH                7.10.6
-CURLOPT_HTTPGET                 7.8.1
-CURLOPT_HTTPHEADER              7.1
-CURLOPT_HTTPPOST                7.1
-CURLOPT_HTTPPROXYTUNNEL         7.3
-CURLOPT_HTTPREQUEST             7.1           -           7.15.4
-CURLOPT_HTTP_CONTENT_DECODING   7.16.2
-CURLOPT_HTTP_TRANSFER_DECODING  7.16.2
-CURLOPT_HTTP_VERSION            7.9.1
-CURLOPT_IGNORE_CONTENT_LENGTH   7.14.1
-CURLOPT_INFILE                  7.1           7.9.7
-CURLOPT_INFILESIZE              7.1
-CURLOPT_INFILESIZE_LARGE        7.11.0
-CURLOPT_INTERFACE               7.3
-CURLOPT_IOCTLDATA               7.12.3
-CURLOPT_IOCTLFUNCTION           7.12.3
-CURLOPT_IPRESOLVE               7.10.8
-CURLOPT_ISSUERCERT              7.19.0
-CURLOPT_KEYPASSWD               -             7.17.0
-CURLOPT_KRB4LEVEL               7.3           7.17.0
-CURLOPT_KRBLEVEL                7.17.0
-CURLOPT_LOCALPORT               7.15.2
-CURLOPT_LOCALPORTRANGE          7.15.2
-CURLOPT_LOW_SPEED_LIMIT         7.1
-CURLOPT_LOW_SPEED_TIME          7.1
-CURLOPT_MAIL_FROM               7.20.0
-CURLOPT_MAIL_RCPT               7.20.0
-CURLOPT_MAXCONNECTS             7.7
-CURLOPT_MAXFILESIZE             7.10.8
-CURLOPT_MAXFILESIZE_LARGE       7.11.0
-CURLOPT_MAXREDIRS               7.5
-CURLOPT_MAX_RECV_SPEED_LARGE    7.15.5
-CURLOPT_MAX_SEND_SPEED_LARGE    7.15.5
-CURLOPT_MUTE                    7.1           7.8         7.15.4
-CURLOPT_NETRC                   7.1
-CURLOPT_NETRC_FILE              7.11.0
-CURLOPT_NEW_DIRECTORY_PERMS     7.16.4
-CURLOPT_NEW_FILE_PERMS          7.16.4
-CURLOPT_NOBODY                  7.1
-CURLOPT_NOPROGRESS              7.1
-CURLOPT_NOPROXY                 7.19.4
-CURLOPT_NOSIGNAL                7.10
-CURLOPT_OPENSOCKETDATA          7.17.1
-CURLOPT_OPENSOCKETFUNCTION      7.17.1
-CURLOPT_PASSWDDATA              7.1           7.11.1      7.15.4
-CURLOPT_PASSWDFUNCTION          7.1           7.11.1      7.15.4
-CURLOPT_PASSWORD                7.19.1
-CURLOPT_PASV_POST               7.12.1        -           7.13.0
-CURLOPT_PORT                    7.1
-CURLOPT_POST                    7.1
-CURLOPT_POST301                 7.17.1        7.19.1
-CURLOPT_POSTFIELDS              7.1
-CURLOPT_POSTFIELDSIZE           7.2
-CURLOPT_POSTFIELDSIZE_LARGE     7.11.1
-CURLOPT_POSTQUOTE               7.1
-CURLOPT_POSTREDIR               7.19.1
-CURLOPT_PREQUOTE                7.9.5
-CURLOPT_PRIVATE                 7.10.3
-CURLOPT_PROGRESSDATA            7.1
-CURLOPT_PROGRESSFUNCTION        7.1
-CURLOPT_PROGRESSMODE            7.1           -           7.9.2
-CURLOPT_PROTOCOLS               7.19.4
-CURLOPT_PROXY                   7.1
-CURLOPT_PROXYAUTH               7.10.7
-CURLOPT_PROXYPASSWORD           7.19.1
-CURLOPT_PROXYPORT               7.1
-CURLOPT_PROXYTYPE               7.10
-CURLOPT_PROXYUSERNAME           7.19.1
-CURLOPT_PROXYUSERPWD            7.1
-CURLOPT_PROXY_TRANSFER_MODE     7.18.0
-CURLOPT_PUT                     7.1
-CURLOPT_QUOTE                   7.1
-CURLOPT_RANDOM_FILE             7.7
-CURLOPT_RANGE                   7.1
-CURLOPT_READDATA                7.9.7
-CURLOPT_READFUNCTION            7.1
-CURLOPT_REDIR_PROTOCOLS         7.19.4
-CURLOPT_REFERER                 7.1
-CURLOPT_RESUME_FROM             7.1
-CURLOPT_RESUME_FROM_LARGE       7.11.0
-CURLOPT_SEEKDATA                7.18.1
-CURLOPT_SEEKFUNCTION            7.18.1
-CURLOPT_SHARE                   7.10
-CURLOPT_SOCKOPTDATA             7.16.0
-CURLOPT_SOCKOPTFUNCTION         7.16.0
-CURLOPT_SOCKS5_GSSAPI_NEC       7.19.4
-CURLOPT_SOCKS5_GSSAPI_SERVICE   7.19.4
-CURLOPT_SOURCE_HOST             7.12.1        -           7.13.0
-CURLOPT_SOURCE_PATH             7.12.1        -           7.13.0
-CURLOPT_SOURCE_PORT             7.12.1        -           7.13.0
-CURLOPT_SOURCE_POSTQUOTE        7.12.1        -           7.15.4
-CURLOPT_SOURCE_PREQUOTE         7.12.1        -           7.15.4
-CURLOPT_SOURCE_QUOTE            7.13.0        -           7.15.4
-CURLOPT_SOURCE_URL              7.13.0        -           7.15.4
-CURLOPT_SOURCE_USERPWD          7.12.1        -           7.15.4
-CURLOPT_SSH_AUTH_TYPES          7.16.1
-CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 7.17.1
-CURLOPT_SSH_PRIVATE_KEYFILE     7.16.1
-CURLOPT_SSH_PUBLIC_KEYFILE      7.16.1
-CURLOPT_SSLCERT                 7.1
-CURLOPT_SSLCERTPASSWD           7.17.0
-CURLOPT_SSLCERTTYPE             7.9.3
-CURLOPT_SSLENGINE               7.9.3
-CURLOPT_SSLENGINE_DEFAULT       7.9.3
-CURLOPT_SSLKEY                  7.9.3
-CURLOPT_SSLKEYPASSWD            7.17.0
-CURLOPT_SSLKEYPASSWD            7.17.0
-CURLOPT_SSLKEYTYPE              7.9.3
-CURLOPT_SSLVERSION              7.1
-CURLOPT_SSL_CIPHER_LIST         7.9
-CURLOPT_SSL_CTX_DATA            7.10.6
-CURLOPT_SSL_CTX_FUNCTION        7.10.6
-CURLOPT_SSL_SESSIONID_CACHE     7.16.0
-CURLOPT_SSL_VERIFYHOST          7.8.1
-CURLOPT_SSL_VERIFYPEER          7.4.2
-CURLOPT_STDERR                  7.1
-CURLOPT_TCP_NODELAY             7.11.2
-CURLOPT_TELNETOPTIONS           7.7
-CURLOPT_TFTPBLKSIZE             7.19.4
-CURLOPT_TIMECONDITION           7.1
-CURLOPT_TIMEOUT                 7.1
-CURLOPT_TIMEOUT_MS              7.16.2
-CURLOPT_TIMEVALUE               7.1
-CURLOPT_TRANSFERTEXT            7.11.1
-CURLOPT_UNRESTRICTED_AUTH       7.10.4
-CURLOPT_UPLOAD                  7.1
-CURLOPT_URL                     7.1
-CURLOPT_USERAGENT               7.1
-CURLOPT_USERNAME                7.19.1
-CURLOPT_USERPWD                 7.1
-CURLOPT_USE_SSL                 7.17.0
-CURLOPT_VERBOSE                 7.1
-CURLOPT_WRITEDATA               7.9.7
-CURLOPT_WRITEFUNCTION           7.1
-CURLOPT_WRITEHEADER             7.1
-CURLPROTO_ALL                   7.19.4
-CURLPROTO_DICT                  7.19.4
-CURLPROTO_FILE                  7.19.4
-CURLPROTO_FTP                   7.19.4
-CURLPROTO_FTPS                  7.19.4
-CURLPROTO_HTTP                  7.19.4
-CURLPROTO_HTTPS                 7.19.4
-CURLPROTO_IMAP                  7.20.0
-CURLPROTO_IMAPS                 7.20.0
-CURLPROTO_LDAP                  7.19.4
-CURLPROTO_LDAPS                 7.19.4
-CURLPROTO_POP3                  7.20.0
-CURLPROTO_POP3S                 7.20.0
-CURLPROTO_RTSP                  7.20.0
-CURLPROTO_SCP                   7.19.4
-CURLPROTO_SFTP                  7.19.4
-CURLPROTO_SMTP                  7.20.0
-CURLPROTO_SMTPS                 7.20.0
-CURLPROTO_TELNET                7.19.4
-CURLPROTO_TFTP                  7.19.4
-CURLPROXY_HTTP                  7.10
-CURLPROXY_HTTP_1_0              7.19.4
-CURLPROXY_SOCKS4                7.10
-CURLPROXY_SOCKS4A               7.18.0
-CURLPROXY_SOCKS5                7.10
-CURLPROXY_SOCKS5_HOSTNAME       7.18.0
-CURLSSH_AUTH_DEFAULT            7.16.1
-CURLSSH_AUTH_HOST               7.16.1
-CURLSSH_AUTH_KEYBOARD           7.16.1
-CURLSSH_AUTH_NONE               7.16.1
-CURLSSH_AUTH_PASSWORD           7.16.1
-CURLSSH_AUTH_PUBLICKEY          7.16.1
-CURLUSESSL_ALL                  7.17.0
-CURLUSESSL_ALL                  7.17.0
-CURLUSESSL_CONTROL              7.17.0
-CURLUSESSL_CONTROL              7.17.0
-CURLUSESSL_NONE                 7.17.0
-CURLUSESSL_NONE                 7.17.0
-CURLUSESSL_TRY                  7.17.0
-CURLUSESSL_TRY                  7.17.0
-CURLVERSION_FIRST               7.10
-CURLVERSION_NOW                 7.10
-CURLVERSION_SECOND              7.11.1
-CURLVERSION_THIRD               7.12.0
-CURL_HTTP_VERSION_1_0           7.9.1
-CURL_HTTP_VERSION_1_1           7.9.1
-CURL_HTTP_VERSION_NONE          7.9.1
-CURL_IPRESOLVE_V4               7.10.8
-CURL_IPRESOLVE_V6               7.10.8
-CURL_IPRESOLVE_WHATEVER         7.10.8
-CURL_NETRC_IGNORED              7.9.8
-CURL_NETRC_OPTIONAL             7.9.8
-CURL_NETRC_REQUIRED             7.9.8
-CURL_SEEKFUNC_CANTSEEK          7.19.5
-CURL_SEEKFUNC_FAIL              7.19.5
-CURL_SEEKFUNC_OK                7.19.5
-CURL_SSLVERSION_DEFAULT         7.9.2
-CURL_SSLVERSION_SSLv2           7.9.2
-CURL_SSLVERSION_SSLv3           7.9.2
-CURL_SSLVERSION_TLSv1           7.9.2
-CURL_TIMECOND_IFMODSINCE        7.9.7
-CURL_TIMECOND_IFUNMODSINCE      7.9.7
-CURL_TIMECOND_LASTMOD           7.9.7
-CURL_VERSION_ASYNCHDNS          7.10.7
-CURL_VERSION_CONV               7.15.4
-CURL_VERSION_CURLDEBUG          7.19.6
-CURL_VERSION_DEBUG              7.10.6
-CURL_VERSION_GSSNEGOTIATE       7.10.6
-CURL_VERSION_IDN                7.12.0
-CURL_VERSION_IPV6               7.10
-CURL_VERSION_KERBEROS4          7.10
-CURL_VERSION_LARGEFILE          7.11.1
-CURL_VERSION_LIBZ               7.10
-CURL_VERSION_NTLM               7.10.6
-CURL_VERSION_SPNEGO             7.10.8
-CURL_VERSION_SSL                7.10
-CURL_VERSION_SSPI               7.13.2
diff --git a/src/other/curl/include/Makefile.am b/src/other/curl/include/Makefile.am
deleted file mode 100644
index 3b24860..0000000
--- a/src/other/curl/include/Makefile.am
+++ /dev/null
@@ -1,5 +0,0 @@
-SUBDIRS = curl
-
-EXTRA_DIST = README
-
-AUTOMAKE_OPTIONS = foreign no-dependencies
diff --git a/src/other/curl/include/Makefile.in b/src/other/curl/include/Makefile.in
deleted file mode 100644
index 5d76ca1..0000000
--- a/src/other/curl/include/Makefile.in
+++ /dev/null
@@ -1,612 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = include
-DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
-	$(top_srcdir)/m4/curl-confopts.m4 \
-	$(top_srcdir)/m4/curl-functions.m4 \
-	$(top_srcdir)/m4/curl-override.m4 \
-	$(top_srcdir)/m4/curl-reentrant.m4 \
-	$(top_srcdir)/m4/curl-system.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
-	$(top_builddir)/src/curl_config.h \
-	$(top_builddir)/include/curl/curlbuild.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-depcomp =
-am__depfiles_maybe =
-SOURCES =
-DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
-	html-recursive info-recursive install-data-recursive \
-	install-dvi-recursive install-exec-recursive \
-	install-html-recursive install-info-recursive \
-	install-pdf-recursive install-ps-recursive install-recursive \
-	installcheck-recursive installdirs-recursive pdf-recursive \
-	ps-recursive uninstall-recursive
-RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
-  distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
-	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
-	distdir
-ETAGS = etags
-CTAGS = ctags
-DIST_SUBDIRS = $(SUBDIRS)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-am__relativize = \
-  dir0=`pwd`; \
-  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
-  sed_rest='s,^[^/]*/*,,'; \
-  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
-  sed_butlast='s,/*[^/]*$$,,'; \
-  while test -n "$$dir1"; do \
-    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
-    if test "$$first" != "."; then \
-      if test "$$first" = ".."; then \
-        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
-        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
-      else \
-        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
-        if test "$$first2" = "$$first"; then \
-          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
-        else \
-          dir2="../$$dir2"; \
-        fi; \
-        dir0="$$dir0"/"$$first"; \
-      fi; \
-    fi; \
-    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
-  done; \
-  reldir="$$dir2"
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
-CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
-CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
-CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
-CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
-CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
-CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
-CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
-CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
-CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
-CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
-CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
-CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
-CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
-CURL_LIBS = @CURL_LIBS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
-IDN_ENABLED = @IDN_ENABLED@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-IPV6_ENABLED = @IPV6_ENABLED@
-KRB4_ENABLED = @KRB4_ENABLED@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCURL_LIBS = @LIBCURL_LIBS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MANOPT = @MANOPT@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-NROFF = @NROFF@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH = @PATH@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PERL = @PERL@
-PKGADD_NAME = @PKGADD_NAME@
-PKGADD_PKG = @PKGADD_PKG@
-PKGADD_VENDOR = @PKGADD_VENDOR@
-PKGCONFIG = @PKGCONFIG@
-RANDOM_FILE = @RANDOM_FILE@
-RANLIB = @RANLIB@
-REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-SSL_ENABLED = @SSL_ENABLED@
-STRIP = @STRIP@
-SUPPORT_FEATURES = @SUPPORT_FEATURES@
-SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
-TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
-USE_ARES = @USE_ARES@
-USE_GNUTLS = @USE_GNUTLS@
-USE_LIBSSH2 = @USE_LIBSSH2@
-USE_NSS = @USE_NSS@
-USE_SSLEAY = @USE_SSLEAY@
-USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
-VERSION = @VERSION@
-VERSIONNUM = @VERSIONNUM@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-libext = @libext@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-SUBDIRS = curl
-EXTRA_DIST = README
-AUTOMAKE_OPTIONS = foreign no-dependencies
-all: all-recursive
-
-.SUFFIXES:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
-	@for dep in $?; do \
-	  case '$(am__configure_deps)' in \
-	    *$$dep*) \
-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
-	        && { if test -f $@; then exit 0; else break; fi; }; \
-	      exit 1;; \
-	  esac; \
-	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign include/Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign include/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-
-# This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-#     (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
-	@fail= failcom='exit 1'; \
-	for f in x $$MAKEFLAGS; do \
-	  case $$f in \
-	    *=* | --[!k]*);; \
-	    *k*) failcom='fail=yes';; \
-	  esac; \
-	done; \
-	dot_seen=no; \
-	target=`echo $@ | sed s/-recursive//`; \
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  echo "Making $$target in $$subdir"; \
-	  if test "$$subdir" = "."; then \
-	    dot_seen=yes; \
-	    local_target="$$target-am"; \
-	  else \
-	    local_target="$$target"; \
-	  fi; \
-	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	  || eval $$failcom; \
-	done; \
-	if test "$$dot_seen" = "no"; then \
-	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
-	fi; test -z "$$fail"
-
-$(RECURSIVE_CLEAN_TARGETS):
-	@fail= failcom='exit 1'; \
-	for f in x $$MAKEFLAGS; do \
-	  case $$f in \
-	    *=* | --[!k]*);; \
-	    *k*) failcom='fail=yes';; \
-	  esac; \
-	done; \
-	dot_seen=no; \
-	case "$@" in \
-	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
-	  *) list='$(SUBDIRS)' ;; \
-	esac; \
-	rev=''; for subdir in $$list; do \
-	  if test "$$subdir" = "."; then :; else \
-	    rev="$$subdir $$rev"; \
-	  fi; \
-	done; \
-	rev="$$rev ."; \
-	target=`echo $@ | sed s/-recursive//`; \
-	for subdir in $$rev; do \
-	  echo "Making $$target in $$subdir"; \
-	  if test "$$subdir" = "."; then \
-	    local_target="$$target-am"; \
-	  else \
-	    local_target="$$target"; \
-	  fi; \
-	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	  || eval $$failcom; \
-	done && test -z "$$fail"
-tags-recursive:
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
-	done
-ctags-recursive:
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
-	done
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	set x; \
-	here=`pwd`; \
-	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
-	  include_option=--etags-include; \
-	  empty_fix=.; \
-	else \
-	  include_option=--include; \
-	  empty_fix=; \
-	fi; \
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    test ! -f $$subdir/TAGS || \
-	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
-	  fi; \
-	done; \
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(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
-	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    test -d "$(distdir)/$$subdir" \
-	    || $(MKDIR_P) "$(distdir)/$$subdir" \
-	    || exit 1; \
-	  fi; \
-	done
-	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
-	    $(am__relativize); \
-	    new_distdir=$$reldir; \
-	    dir1=$$subdir; dir2="$(top_distdir)"; \
-	    $(am__relativize); \
-	    new_top_distdir=$$reldir; \
-	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
-	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
-	    ($(am__cd) $$subdir && \
-	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$new_top_distdir" \
-	        distdir="$$new_distdir" \
-		am__remove_distdir=: \
-		am__skip_length_check=: \
-		am__skip_mode_fix=: \
-	        distdir) \
-	      || exit 1; \
-	  fi; \
-	done
-check-am: all-am
-check: check-recursive
-all-am: Makefile
-installdirs: installdirs-recursive
-installdirs-am:
-install: install-recursive
-install-exec: install-exec-recursive
-install-data: install-data-recursive
-uninstall: uninstall-recursive
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-recursive
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-clean: clean-recursive
-
-clean-am: clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-recursive
-	-rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-tags
-
-dvi: dvi-recursive
-
-dvi-am:
-
-html: html-recursive
-
-html-am:
-
-info: info-recursive
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-recursive
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-recursive
-
-install-html-am:
-
-install-info: install-info-recursive
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-recursive
-
-install-pdf-am:
-
-install-ps: install-ps-recursive
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-recursive
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-recursive
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf: pdf-recursive
-
-pdf-am:
-
-ps: ps-recursive
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
-	install-am install-strip tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
-	all all-am check check-am clean clean-generic clean-libtool \
-	ctags ctags-recursive distclean distclean-generic \
-	distclean-libtool 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 installdirs-am maintainer-clean \
-	maintainer-clean-generic mostlyclean mostlyclean-generic \
-	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
-	uninstall uninstall-am
-
-
-# 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/src/other/curl/include/README b/src/other/curl/include/README
deleted file mode 100644
index 205f9f7..0000000
--- a/src/other/curl/include/README
+++ /dev/null
@@ -1,55 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-Include files for libcurl, external users.
-
-They're all placed in the curl subdirectory here for better fit in any kind
-of environment. You must include files from here using...
-
-        #include <curl/curl.h>
-
-... style and point the compiler's include path to the directory holding the
-curl subdirectory. It makes it more likely to survive future modifications.
-
-NOTE FOR LIBCURL HACKERS
-
-The following notes apply to libcurl version 7.19.0 and later.
-
-* The distributed curl/curlbuild.h file is only intended to be used on systems
-  which can not run the also distributed configure script.
-
-* The distributed curlbuild.h file is generated as a copy of curlbuild.h.dist
-  when the libcurl source code distribution archive file is originally created.
-
-* If you check out from git on a non-configure platform, you must run the
-  appropriate buildconf* script to set up curlbuild.h and other local files
-  before being able of compiling the library.
-
-* On systems capable of running the configure script, the configure process
-  will overwrite the distributed include/curl/curlbuild.h file with one that
-  is suitable and specific to the library being configured and built, which
-  is generated from the include/curl/curlbuild.h.in template file.
-
-* If you intend to distribute an already compiled libcurl library you _MUST_
-  also distribute along with it the generated curl/curlbuild.h which has been
-  used to compile it. Otherwise the library will be of no use for the users of
-  the library that you have built. It is _your_ responsability to provide this
-  file. No one at the cURL project can know how you have built the library.
-
-* File curl/curlbuild.h includes platform and configuration dependent info,
-  and must not be modified by anyone. Configure script generates it for you.
-
-* We cannot assume anything else but very basic compiler features being
-  present. While libcurl requires an ANSI C compiler to build, some of the
-  earlier ANSI compilers clearly can't deal with some preprocessor operators.
-
-* Newlines must remain unix-style for older compilers' sake.
-
-* Comments must be written in the old-style /* unnested C-fashion */
-
-To figure out how to do good and portable checks for features, operating
-systems or specific hardwarare, a very good resource is Bjorn Reese's
-collection at http://predef.sf.net/
diff --git a/src/other/curl/include/curl/Makefile.am b/src/other/curl/include/curl/Makefile.am
deleted file mode 100644
index 3acf90d..0000000
--- a/src/other/curl/include/curl/Makefile.am
+++ /dev/null
@@ -1,25 +0,0 @@
-noinst_HEADERS = \
-	curl.h curlver.h easy.h mprintf.h stdcheaders.h types.h multi.h \
-	typecheck-gcc.h curlbuild.h curlrules.h
-
-pkgincludedir= $(includedir)/curl
-
-# curlbuild.h does not exist in the git tree. When the original libcurl
-# source code distribution archive file is created, curlbuild.h.dist is
-# renamed to curlbuild.h and included in the tarball so that it can be
-# used directly on non-configure systems.
-#
-# The distributed curlbuild.h will be overwritten on configure systems
-# when the configure script runs, with one that is suitable and specific
-# to the library being configured and built.
-#
-# curlbuild.h.in is the distributed template file from which the configure
-# script creates curlbuild.h at library configuration time, overwiting the
-# one included in the distribution archive.
-#
-# curlbuild.h.dist is not included in the source code distribution archive.
-
-EXTRA_DIST = curlbuild.h.in
-
-DISTCLEANFILES = curlbuild.h
-
diff --git a/src/other/curl/include/curl/Makefile.in b/src/other/curl/include/curl/Makefile.in
deleted file mode 100644
index fb51f7f..0000000
--- a/src/other/curl/include/curl/Makefile.in
+++ /dev/null
@@ -1,497 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = include/curl
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
-	$(srcdir)/Makefile.in $(srcdir)/curlbuild.h.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
-	$(top_srcdir)/m4/curl-confopts.m4 \
-	$(top_srcdir)/m4/curl-functions.m4 \
-	$(top_srcdir)/m4/curl-override.m4 \
-	$(top_srcdir)/m4/curl-reentrant.m4 \
-	$(top_srcdir)/m4/curl-system.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
-	$(top_builddir)/src/curl_config.h curlbuild.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-SOURCES =
-DIST_SOURCES =
-HEADERS = $(noinst_HEADERS)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-pkgincludedir = $(includedir)/curl
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
-CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
-CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
-CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
-CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
-CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
-CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
-CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
-CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
-CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
-CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
-CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
-CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
-CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
-CURL_LIBS = @CURL_LIBS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
-IDN_ENABLED = @IDN_ENABLED@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-IPV6_ENABLED = @IPV6_ENABLED@
-KRB4_ENABLED = @KRB4_ENABLED@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCURL_LIBS = @LIBCURL_LIBS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MANOPT = @MANOPT@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-NROFF = @NROFF@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH = @PATH@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PERL = @PERL@
-PKGADD_NAME = @PKGADD_NAME@
-PKGADD_PKG = @PKGADD_PKG@
-PKGADD_VENDOR = @PKGADD_VENDOR@
-PKGCONFIG = @PKGCONFIG@
-RANDOM_FILE = @RANDOM_FILE@
-RANLIB = @RANLIB@
-REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-SSL_ENABLED = @SSL_ENABLED@
-STRIP = @STRIP@
-SUPPORT_FEATURES = @SUPPORT_FEATURES@
-SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
-TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
-USE_ARES = @USE_ARES@
-USE_GNUTLS = @USE_GNUTLS@
-USE_LIBSSH2 = @USE_LIBSSH2@
-USE_NSS = @USE_NSS@
-USE_SSLEAY = @USE_SSLEAY@
-USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
-VERSION = @VERSION@
-VERSIONNUM = @VERSIONNUM@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-libext = @libext@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-noinst_HEADERS = \
-	curl.h curlver.h easy.h mprintf.h stdcheaders.h types.h multi.h \
-	typecheck-gcc.h curlbuild.h curlrules.h
-
-
-# curlbuild.h does not exist in the git tree. When the original libcurl
-# source code distribution archive file is created, curlbuild.h.dist is
-# renamed to curlbuild.h and included in the tarball so that it can be
-# used directly on non-configure systems.
-#
-# The distributed curlbuild.h will be overwritten on configure systems
-# when the configure script runs, with one that is suitable and specific
-# to the library being configured and built.
-#
-# curlbuild.h.in is the distributed template file from which the configure
-# script creates curlbuild.h at library configuration time, overwiting the
-# one included in the distribution archive.
-#
-# curlbuild.h.dist is not included in the source code distribution archive.
-EXTRA_DIST = curlbuild.h.in
-DISTCLEANFILES = curlbuild.h
-all: curlbuild.h
-	$(MAKE) $(AM_MAKEFLAGS) all-am
-
-.SUFFIXES:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
-	@for dep in $?; do \
-	  case '$(am__configure_deps)' in \
-	    *$$dep*) \
-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
-	        && { if test -f $@; then exit 0; else break; fi; }; \
-	      exit 1;; \
-	  esac; \
-	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu include/curl/Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --gnu include/curl/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-curlbuild.h: stamp-h3
-	@if test ! -f $@; then \
-	  rm -f stamp-h3; \
-	  $(MAKE) $(AM_MAKEFLAGS) stamp-h3; \
-	else :; fi
-
-stamp-h3: $(srcdir)/curlbuild.h.in $(top_builddir)/config.status
-	@rm -f stamp-h3
-	cd $(top_builddir) && $(SHELL) ./config.status include/curl/curlbuild.h
-$(srcdir)/curlbuild.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) 
-	($(am__cd) $(top_srcdir) && $(AUTOHEADER))
-	rm -f stamp-h3
-	touch $@
-
-distclean-hdr:
-	-rm -f curlbuild.h stamp-h3
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES) curlbuild.h.in $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	set x; \
-	here=`pwd`; \
-	list='$(SOURCES) $(HEADERS) curlbuild.h.in $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES) curlbuild.h.in $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	list='$(SOURCES) $(HEADERS) curlbuild.h.in $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(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: check-am
-all-am: Makefile $(HEADERS) curlbuild.h
-installdirs:
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-am
-	-rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-hdr 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
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: all install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-	clean-libtool ctags distclean distclean-generic distclean-hdr \
-	distclean-libtool 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 mostlyclean mostlyclean-generic \
-	mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
-	uninstall-am
-
-
-# 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/src/other/curl/include/curl/curl.h b/src/other/curl/include/curl/curl.h
deleted file mode 100644
index e635968..0000000
--- a/src/other/curl/include/curl/curl.h
+++ /dev/null
@@ -1,1996 +0,0 @@
-#ifndef __CURL_CURL_H
-#define __CURL_CURL_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * If you have libcurl problems, all docs and details are found here:
- *   http://curl.haxx.se/libcurl/
- *
- * curl-library mailing list subscription and unsubscription web interface:
- *   http://cool.haxx.se/mailman/listinfo/curl-library/
- */
-
-#include "curlver.h"         /* libcurl version defines   */
-#include "curlbuild.h"       /* libcurl build definitions */
-#include "curlrules.h"       /* libcurl rules enforcement */
-
-/*
- * Define WIN32 when build target is Win32 API
- */
-
-#if (defined(_WIN32) || defined(__WIN32__)) && \
-     !defined(WIN32) && !defined(__SYMBIAN32__)
-#define WIN32
-#endif
-
-#include <stdio.h>
-#include <limits.h>
-
-#if defined(__FreeBSD__) && (__FreeBSD__ >= 2)
-/* Needed for __FreeBSD_version symbol definition */
-#include <osreldate.h>
-#endif
-
-/* The include stuff here below is mainly for time_t! */
-#include <sys/types.h>
-#include <time.h>
-
-#if defined(WIN32) && !defined(_WIN32_WCE) && !defined(__GNUC__) && \
-  !defined(__CYGWIN__) || defined(__MINGW32__)
-#if !(defined(_WINSOCKAPI_) || defined(_WINSOCK_H))
-/* The check above prevents the winsock2 inclusion if winsock.h already was
-   included, since they can't co-exist without problems */
-#include <winsock2.h>
-#include <ws2tcpip.h>
-#endif
-#else
-
-/* HP-UX systems version 9, 10 and 11 lack sys/select.h and so does oldish
-   libc5-based Linux systems. Only include it on system that are known to
-   require it! */
-#if defined(_AIX) || defined(__NOVELL_LIBC__) || defined(__NetBSD__) || \
-    defined(__minix) || defined(__SYMBIAN32__) || defined(__INTEGRITY) || \
-    defined(ANDROID) || \
-   (defined(__FreeBSD_version) && (__FreeBSD_version < 800000))
-#include <sys/select.h>
-#endif
-
-#ifndef _WIN32_WCE
-#include <sys/socket.h>
-#endif
-#if !defined(WIN32) && !defined(__WATCOMC__) && !defined(__VXWORKS__)
-#include <sys/time.h>
-#endif
-#include <sys/types.h>
-#endif
-
-#ifdef __BEOS__
-#include <support/SupportDefs.h>
-#endif
-
-#ifdef  __cplusplus
-extern "C" {
-#endif
-
-typedef void CURL;
-
-/*
- * Decorate exportable functions for Win32 and Symbian OS DLL linking.
- * This avoids using a .def file for building libcurl.dll.
- */
-#if (defined(WIN32) || defined(_WIN32) || defined(__SYMBIAN32__)) && \
-     !defined(CURL_STATICLIB)
-#if defined(BUILDING_LIBCURL)
-#define CURL_EXTERN  __declspec(dllexport)
-#else
-#define CURL_EXTERN  __declspec(dllimport)
-#endif
-#else
-
-#ifdef CURL_HIDDEN_SYMBOLS
-/*
- * This definition is used to make external definitions visible in the
- * shared library when symbols are hidden by default.  It makes no
- * difference when compiling applications whether this is set or not,
- * only when compiling the library.
- */
-#define CURL_EXTERN CURL_EXTERN_SYMBOL
-#else
-#define CURL_EXTERN
-#endif
-#endif
-
-#ifndef curl_socket_typedef
-/* socket typedef */
-#ifdef WIN32
-typedef SOCKET curl_socket_t;
-#define CURL_SOCKET_BAD INVALID_SOCKET
-#else
-typedef int curl_socket_t;
-#define CURL_SOCKET_BAD -1
-#endif
-#define curl_socket_typedef
-#endif /* curl_socket_typedef */
-
-struct curl_httppost {
-  struct curl_httppost *next;       /* next entry in the list */
-  char *name;                       /* pointer to allocated name */
-  long namelength;                  /* length of name length */
-  char *contents;                   /* pointer to allocated data contents */
-  long contentslength;              /* length of contents field */
-  char *buffer;                     /* pointer to allocated buffer contents */
-  long bufferlength;                /* length of buffer field */
-  char *contenttype;                /* Content-Type */
-  struct curl_slist* contentheader; /* list of extra headers for this form */
-  struct curl_httppost *more;       /* if one field name has more than one
-                                       file, this link should link to following
-                                       files */
-  long flags;                       /* as defined below */
-#define HTTPPOST_FILENAME (1<<0)    /* specified content is a file name */
-#define HTTPPOST_READFILE (1<<1)    /* specified content is a file name */
-#define HTTPPOST_PTRNAME (1<<2)     /* name is only stored pointer
-                                       do not free in formfree */
-#define HTTPPOST_PTRCONTENTS (1<<3) /* contents is only stored pointer
-                                       do not free in formfree */
-#define HTTPPOST_BUFFER (1<<4)      /* upload file from buffer */
-#define HTTPPOST_PTRBUFFER (1<<5)   /* upload file from pointer contents */
-#define HTTPPOST_CALLBACK (1<<6)    /* upload file contents by using the
-                                       regular read callback to get the data
-                                       and pass the given pointer as custom
-                                       pointer */
-
-  char *showfilename;               /* The file name to show. If not set, the
-                                       actual file name will be used (if this
-                                       is a file part) */
-  void *userp;                      /* custom pointer used for
-                                       HTTPPOST_CALLBACK posts */
-};
-
-typedef int (*curl_progress_callback)(void *clientp,
-                                      double dltotal,
-                                      double dlnow,
-                                      double ultotal,
-                                      double ulnow);
-
-#ifndef CURL_MAX_WRITE_SIZE
-  /* Tests have proven that 20K is a very bad buffer size for uploads on
-     Windows, while 16K for some odd reason performed a lot better.
-     We do the ifndef check to allow this value to easier be changed at build
-     time for those who feel adventurous. The practical minimum is about
-     400 bytes since libcurl uses a buffer of this size as a scratch area
-     (unrelated to network send operations). */
-#define CURL_MAX_WRITE_SIZE 16384
-#endif
-
-#ifndef CURL_MAX_HTTP_HEADER
-/* The only reason to have a max limit for this is to avoid the risk of a bad
-   server feeding libcurl with a never-ending header that will cause reallocs
-   infinitely */
-#define CURL_MAX_HTTP_HEADER (100*1024)
-#endif
-
-
-/* This is a magic return code for the write callback that, when returned,
-   will signal libcurl to pause receiving on the current transfer. */
-#define CURL_WRITEFUNC_PAUSE 0x10000001
-typedef size_t (*curl_write_callback)(char *buffer,
-                                      size_t size,
-                                      size_t nitems,
-                                      void *outstream);
-
-/* These are the return codes for the seek callbacks */
-#define CURL_SEEKFUNC_OK       0
-#define CURL_SEEKFUNC_FAIL     1 /* fail the entire transfer */
-#define CURL_SEEKFUNC_CANTSEEK 2 /* tell libcurl seeking can't be done, so
-                                    libcurl might try other means instead */
-typedef int (*curl_seek_callback)(void *instream,
-                                  curl_off_t offset,
-                                  int origin); /* 'whence' */
-
-/* This is a return code for the read callback that, when returned, will
-   signal libcurl to immediately abort the current transfer. */
-#define CURL_READFUNC_ABORT 0x10000000
-/* This is a return code for the read callback that, when returned, will
-   signal libcurl to pause sending data on the current transfer. */
-#define CURL_READFUNC_PAUSE 0x10000001
-
-typedef size_t (*curl_read_callback)(char *buffer,
-                                      size_t size,
-                                      size_t nitems,
-                                      void *instream);
-
-typedef enum  {
-  CURLSOCKTYPE_IPCXN, /* socket created for a specific IP connection */
-  CURLSOCKTYPE_LAST   /* never use */
-} curlsocktype;
-
-typedef int (*curl_sockopt_callback)(void *clientp,
-                                     curl_socket_t curlfd,
-                                     curlsocktype purpose);
-
-struct curl_sockaddr {
-  int family;
-  int socktype;
-  int protocol;
-  unsigned int addrlen; /* addrlen was a socklen_t type before 7.18.0 but it
-                           turned really ugly and painful on the systems that
-                           lack this type */
-  struct sockaddr addr;
-};
-
-typedef curl_socket_t
-(*curl_opensocket_callback)(void *clientp,
-                            curlsocktype purpose,
-                            struct curl_sockaddr *address);
-
-typedef enum {
-  CURLIOE_OK,            /* I/O operation successful */
-  CURLIOE_UNKNOWNCMD,    /* command was unknown to callback */
-  CURLIOE_FAILRESTART,   /* failed to restart the read */
-  CURLIOE_LAST           /* never use */
-} curlioerr;
-
-typedef enum  {
-  CURLIOCMD_NOP,         /* no operation */
-  CURLIOCMD_RESTARTREAD, /* restart the read stream from start */
-  CURLIOCMD_LAST         /* never use */
-} curliocmd;
-
-typedef curlioerr (*curl_ioctl_callback)(CURL *handle,
-                                         int cmd,
-                                         void *clientp);
-
-/*
- * The following typedef's are signatures of malloc, free, realloc, strdup and
- * calloc respectively.  Function pointers of these types can be passed to the
- * curl_global_init_mem() function to set user defined memory management
- * callback routines.
- */
-typedef void *(*curl_malloc_callback)(size_t size);
-typedef void (*curl_free_callback)(void *ptr);
-typedef void *(*curl_realloc_callback)(void *ptr, size_t size);
-typedef char *(*curl_strdup_callback)(const char *str);
-typedef void *(*curl_calloc_callback)(size_t nmemb, size_t size);
-
-/* the kind of data that is passed to information_callback*/
-typedef enum {
-  CURLINFO_TEXT = 0,
-  CURLINFO_HEADER_IN,    /* 1 */
-  CURLINFO_HEADER_OUT,   /* 2 */
-  CURLINFO_DATA_IN,      /* 3 */
-  CURLINFO_DATA_OUT,     /* 4 */
-  CURLINFO_SSL_DATA_IN,  /* 5 */
-  CURLINFO_SSL_DATA_OUT, /* 6 */
-  CURLINFO_END
-} curl_infotype;
-
-typedef int (*curl_debug_callback)
-       (CURL *handle,      /* the handle/transfer this concerns */
-        curl_infotype type, /* what kind of data */
-        char *data,        /* points to the data */
-        size_t size,       /* size of the data pointed to */
-        void *userptr);    /* whatever the user please */
-
-/* All possible error codes from all sorts of curl functions. Future versions
-   may return other values, stay prepared.
-
-   Always add new return codes last. Never *EVER* remove any. The return
-   codes must remain the same!
- */
-
-typedef enum {
-  CURLE_OK = 0,
-  CURLE_UNSUPPORTED_PROTOCOL,    /* 1 */
-  CURLE_FAILED_INIT,             /* 2 */
-  CURLE_URL_MALFORMAT,           /* 3 */
-  CURLE_OBSOLETE4,               /* 4 - NOT USED */
-  CURLE_COULDNT_RESOLVE_PROXY,   /* 5 */
-  CURLE_COULDNT_RESOLVE_HOST,    /* 6 */
-  CURLE_COULDNT_CONNECT,         /* 7 */
-  CURLE_FTP_WEIRD_SERVER_REPLY,  /* 8 */
-  CURLE_REMOTE_ACCESS_DENIED,    /* 9 a service was denied by the server
-                                    due to lack of access - when login fails
-                                    this is not returned. */
-  CURLE_OBSOLETE10,              /* 10 - NOT USED */
-  CURLE_FTP_WEIRD_PASS_REPLY,    /* 11 */
-  CURLE_OBSOLETE12,              /* 12 - NOT USED */
-  CURLE_FTP_WEIRD_PASV_REPLY,    /* 13 */
-  CURLE_FTP_WEIRD_227_FORMAT,    /* 14 */
-  CURLE_FTP_CANT_GET_HOST,       /* 15 */
-  CURLE_OBSOLETE16,              /* 16 - NOT USED */
-  CURLE_FTP_COULDNT_SET_TYPE,    /* 17 */
-  CURLE_PARTIAL_FILE,            /* 18 */
-  CURLE_FTP_COULDNT_RETR_FILE,   /* 19 */
-  CURLE_OBSOLETE20,              /* 20 - NOT USED */
-  CURLE_QUOTE_ERROR,             /* 21 - quote command failure */
-  CURLE_HTTP_RETURNED_ERROR,     /* 22 */
-  CURLE_WRITE_ERROR,             /* 23 */
-  CURLE_OBSOLETE24,              /* 24 - NOT USED */
-  CURLE_UPLOAD_FAILED,           /* 25 - failed upload "command" */
-  CURLE_READ_ERROR,              /* 26 - couldn't open/read from file */
-  CURLE_OUT_OF_MEMORY,           /* 27 */
-  /* Note: CURLE_OUT_OF_MEMORY may sometimes indicate a conversion error
-           instead of a memory allocation error if CURL_DOES_CONVERSIONS
-           is defined
-  */
-  CURLE_OPERATION_TIMEDOUT,      /* 28 - the timeout time was reached */
-  CURLE_OBSOLETE29,              /* 29 - NOT USED */
-  CURLE_FTP_PORT_FAILED,         /* 30 - FTP PORT operation failed */
-  CURLE_FTP_COULDNT_USE_REST,    /* 31 - the REST command failed */
-  CURLE_OBSOLETE32,              /* 32 - NOT USED */
-  CURLE_RANGE_ERROR,             /* 33 - RANGE "command" didn't work */
-  CURLE_HTTP_POST_ERROR,         /* 34 */
-  CURLE_SSL_CONNECT_ERROR,       /* 35 - wrong when connecting with SSL */
-  CURLE_BAD_DOWNLOAD_RESUME,     /* 36 - couldn't resume download */
-  CURLE_FILE_COULDNT_READ_FILE,  /* 37 */
-  CURLE_LDAP_CANNOT_BIND,        /* 38 */
-  CURLE_LDAP_SEARCH_FAILED,      /* 39 */
-  CURLE_OBSOLETE40,              /* 40 - NOT USED */
-  CURLE_FUNCTION_NOT_FOUND,      /* 41 */
-  CURLE_ABORTED_BY_CALLBACK,     /* 42 */
-  CURLE_BAD_FUNCTION_ARGUMENT,   /* 43 */
-  CURLE_OBSOLETE44,              /* 44 - NOT USED */
-  CURLE_INTERFACE_FAILED,        /* 45 - CURLOPT_INTERFACE failed */
-  CURLE_OBSOLETE46,              /* 46 - NOT USED */
-  CURLE_TOO_MANY_REDIRECTS ,     /* 47 - catch endless re-direct loops */
-  CURLE_UNKNOWN_TELNET_OPTION,   /* 48 - User specified an unknown option */
-  CURLE_TELNET_OPTION_SYNTAX ,   /* 49 - Malformed telnet option */
-  CURLE_OBSOLETE50,              /* 50 - NOT USED */
-  CURLE_PEER_FAILED_VERIFICATION, /* 51 - peer's certificate or fingerprint
-                                     wasn't verified fine */
-  CURLE_GOT_NOTHING,             /* 52 - when this is a specific error */
-  CURLE_SSL_ENGINE_NOTFOUND,     /* 53 - SSL crypto engine not found */
-  CURLE_SSL_ENGINE_SETFAILED,    /* 54 - can not set SSL crypto engine as
-                                    default */
-  CURLE_SEND_ERROR,              /* 55 - failed sending network data */
-  CURLE_RECV_ERROR,              /* 56 - failure in receiving network data */
-  CURLE_OBSOLETE57,              /* 57 - NOT IN USE */
-  CURLE_SSL_CERTPROBLEM,         /* 58 - problem with the local certificate */
-  CURLE_SSL_CIPHER,              /* 59 - couldn't use specified cipher */
-  CURLE_SSL_CACERT,              /* 60 - problem with the CA cert (path?) */
-  CURLE_BAD_CONTENT_ENCODING,    /* 61 - Unrecognized transfer encoding */
-  CURLE_LDAP_INVALID_URL,        /* 62 - Invalid LDAP URL */
-  CURLE_FILESIZE_EXCEEDED,       /* 63 - Maximum file size exceeded */
-  CURLE_USE_SSL_FAILED,          /* 64 - Requested FTP SSL level failed */
-  CURLE_SEND_FAIL_REWIND,        /* 65 - Sending the data requires a rewind
-                                    that failed */
-  CURLE_SSL_ENGINE_INITFAILED,   /* 66 - failed to initialise ENGINE */
-  CURLE_LOGIN_DENIED,            /* 67 - user, password or similar was not
-                                    accepted and we failed to login */
-  CURLE_TFTP_NOTFOUND,           /* 68 - file not found on server */
-  CURLE_TFTP_PERM,               /* 69 - permission problem on server */
-  CURLE_REMOTE_DISK_FULL,        /* 70 - out of disk space on server */
-  CURLE_TFTP_ILLEGAL,            /* 71 - Illegal TFTP operation */
-  CURLE_TFTP_UNKNOWNID,          /* 72 - Unknown transfer ID */
-  CURLE_REMOTE_FILE_EXISTS,      /* 73 - File already exists */
-  CURLE_TFTP_NOSUCHUSER,         /* 74 - No such user */
-  CURLE_CONV_FAILED,             /* 75 - conversion failed */
-  CURLE_CONV_REQD,               /* 76 - caller must register conversion
-                                    callbacks using curl_easy_setopt options
-                                    CURLOPT_CONV_FROM_NETWORK_FUNCTION,
-                                    CURLOPT_CONV_TO_NETWORK_FUNCTION, and
-                                    CURLOPT_CONV_FROM_UTF8_FUNCTION */
-  CURLE_SSL_CACERT_BADFILE,      /* 77 - could not load CACERT file, missing
-                                    or wrong format */
-  CURLE_REMOTE_FILE_NOT_FOUND,   /* 78 - remote file not found */
-  CURLE_SSH,                     /* 79 - error from the SSH layer, somewhat
-                                    generic so the error message will be of
-                                    interest when this has happened */
-
-  CURLE_SSL_SHUTDOWN_FAILED,     /* 80 - Failed to shut down the SSL
-                                    connection */
-  CURLE_AGAIN,                   /* 81 - socket is not ready for send/recv,
-                                    wait till it's ready and try again (Added
-                                    in 7.18.2) */
-  CURLE_SSL_CRL_BADFILE,         /* 82 - could not load CRL file, missing or
-                                    wrong format (Added in 7.19.0) */
-  CURLE_SSL_ISSUER_ERROR,        /* 83 - Issuer check failed.  (Added in
-                                    7.19.0) */
-  CURLE_FTP_PRET_FAILED,         /* 84 - a PRET command failed */
-  CURLE_RTSP_CSEQ_ERROR,         /* 85 - mismatch of RTSP CSeq numbers */
-  CURLE_RTSP_SESSION_ERROR,      /* 86 - mismatch of RTSP Session Identifiers */
-
-  CURL_LAST /* never use! */
-} CURLcode;
-
-#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all
-                          the obsolete stuff removed! */
-
-/* Backwards compatibility with older names */
-
-/* The following were added in 7.17.1 */
-/* These are scheduled to disappear by 2009 */
-#define CURLE_SSL_PEER_CERTIFICATE CURLE_PEER_FAILED_VERIFICATION
-
-/* The following were added in 7.17.0 */
-/* These are scheduled to disappear by 2009 */
-#define CURLE_OBSOLETE CURLE_OBSOLETE50 /* noone should be using this! */
-#define CURLE_BAD_PASSWORD_ENTERED CURLE_OBSOLETE46
-#define CURLE_BAD_CALLING_ORDER CURLE_OBSOLETE44
-#define CURLE_FTP_USER_PASSWORD_INCORRECT CURLE_OBSOLETE10
-#define CURLE_FTP_CANT_RECONNECT CURLE_OBSOLETE16
-#define CURLE_FTP_COULDNT_GET_SIZE CURLE_OBSOLETE32
-#define CURLE_FTP_COULDNT_SET_ASCII CURLE_OBSOLETE29
-#define CURLE_FTP_WEIRD_USER_REPLY CURLE_OBSOLETE12
-#define CURLE_FTP_WRITE_ERROR CURLE_OBSOLETE20
-#define CURLE_LIBRARY_NOT_FOUND CURLE_OBSOLETE40
-#define CURLE_MALFORMAT_USER CURLE_OBSOLETE24
-#define CURLE_SHARE_IN_USE CURLE_OBSOLETE57
-#define CURLE_URL_MALFORMAT_USER CURLE_OBSOLETE4
-
-#define CURLE_FTP_ACCESS_DENIED CURLE_REMOTE_ACCESS_DENIED
-#define CURLE_FTP_COULDNT_SET_BINARY CURLE_FTP_COULDNT_SET_TYPE
-#define CURLE_FTP_QUOTE_ERROR CURLE_QUOTE_ERROR
-#define CURLE_TFTP_DISKFULL CURLE_REMOTE_DISK_FULL
-#define CURLE_TFTP_EXISTS CURLE_REMOTE_FILE_EXISTS
-#define CURLE_HTTP_RANGE_ERROR CURLE_RANGE_ERROR
-#define CURLE_FTP_SSL_FAILED CURLE_USE_SSL_FAILED
-
-/* The following were added earlier */
-
-#define CURLE_OPERATION_TIMEOUTED CURLE_OPERATION_TIMEDOUT
-
-#define CURLE_HTTP_NOT_FOUND CURLE_HTTP_RETURNED_ERROR
-#define CURLE_HTTP_PORT_FAILED CURLE_INTERFACE_FAILED
-#define CURLE_FTP_COULDNT_STOR_FILE CURLE_UPLOAD_FAILED
-
-#define CURLE_FTP_PARTIAL_FILE CURLE_PARTIAL_FILE
-#define CURLE_FTP_BAD_DOWNLOAD_RESUME CURLE_BAD_DOWNLOAD_RESUME
-
-/* This was the error code 50 in 7.7.3 and a few earlier versions, this
-   is no longer used by libcurl but is instead #defined here only to not
-   make programs break */
-#define CURLE_ALREADY_COMPLETE 99999
-
-#endif /*!CURL_NO_OLDIES*/
-
-/* This prototype applies to all conversion callbacks */
-typedef CURLcode (*curl_conv_callback)(char *buffer, size_t length);
-
-typedef CURLcode (*curl_ssl_ctx_callback)(CURL *curl,    /* easy handle */
-                                          void *ssl_ctx, /* actually an
-                                                            OpenSSL SSL_CTX */
-                                          void *userptr);
-
-typedef enum {
-  CURLPROXY_HTTP = 0,   /* added in 7.10, new in 7.19.4 default is to use
-                           CONNECT HTTP/1.1 */
-  CURLPROXY_HTTP_1_0 = 1,   /* added in 7.19.4, force to use CONNECT
-                               HTTP/1.0  */
-  CURLPROXY_SOCKS4 = 4, /* support added in 7.15.2, enum existed already
-                           in 7.10 */
-  CURLPROXY_SOCKS5 = 5, /* added in 7.10 */
-  CURLPROXY_SOCKS4A = 6, /* added in 7.18.0 */
-  CURLPROXY_SOCKS5_HOSTNAME = 7 /* Use the SOCKS5 protocol but pass along the
-                                   host name rather than the IP address. added
-                                   in 7.18.0 */
-} curl_proxytype;  /* this enum was added in 7.10 */
-
-#define CURLAUTH_NONE         0       /* nothing */
-#define CURLAUTH_BASIC        (1<<0)  /* Basic (default) */
-#define CURLAUTH_DIGEST       (1<<1)  /* Digest */
-#define CURLAUTH_GSSNEGOTIATE (1<<2)  /* GSS-Negotiate */
-#define CURLAUTH_NTLM         (1<<3)  /* NTLM */
-#define CURLAUTH_DIGEST_IE    (1<<4)  /* Digest with IE flavour */
-#define CURLAUTH_ANY (~CURLAUTH_DIGEST_IE)  /* all fine types set */
-#define CURLAUTH_ANYSAFE (~(CURLAUTH_BASIC|CURLAUTH_DIGEST_IE))
-
-#define CURLSSH_AUTH_ANY       ~0     /* all types supported by the server */
-#define CURLSSH_AUTH_NONE      0      /* none allowed, silly but complete */
-#define CURLSSH_AUTH_PUBLICKEY (1<<0) /* public/private key files */
-#define CURLSSH_AUTH_PASSWORD  (1<<1) /* password */
-#define CURLSSH_AUTH_HOST      (1<<2) /* host key files */
-#define CURLSSH_AUTH_KEYBOARD  (1<<3) /* keyboard interactive */
-#define CURLSSH_AUTH_DEFAULT CURLSSH_AUTH_ANY
-
-#define CURL_ERROR_SIZE 256
-
-struct curl_khkey {
-  const char *key; /* points to a zero-terminated string encoded with base64
-                      if len is zero, otherwise to the "raw" data */
-  size_t len;
-  enum type {
-    CURLKHTYPE_UNKNOWN,
-    CURLKHTYPE_RSA1,
-    CURLKHTYPE_RSA,
-    CURLKHTYPE_DSS
-  } keytype;
-};
-
-/* this is the set of return values expected from the curl_sshkeycallback
-   callback */
-enum curl_khstat {
-  CURLKHSTAT_FINE_ADD_TO_FILE,
-  CURLKHSTAT_FINE,
-  CURLKHSTAT_REJECT, /* reject the connection, return an error */
-  CURLKHSTAT_DEFER,  /* do not accept it, but we can't answer right now so
-                        this causes a CURLE_DEFER error but otherwise the
-                        connection will be left intact etc */
-  CURLKHSTAT_LAST    /* not for use, only a marker for last-in-list */
-};
-
-/* this is the set of status codes pass in to the callback */
-enum curl_khmatch {
-  CURLKHMATCH_OK,       /* match */
-  CURLKHMATCH_MISMATCH, /* host found, key mismatch! */
-  CURLKHMATCH_MISSING,  /* no matching host/key found */
-  CURLKHMATCH_LAST      /* not for use, only a marker for last-in-list */
-};
-
-typedef int
-  (*curl_sshkeycallback) (CURL *easy,     /* easy handle */
-                          const struct curl_khkey *knownkey, /* known */
-                          const struct curl_khkey *foundkey, /* found */
-                          enum curl_khmatch, /* libcurl's view on the keys */
-                          void *clientp); /* custom pointer passed from app */
-
-/* parameter for the CURLOPT_USE_SSL option */
-typedef enum {
-  CURLUSESSL_NONE,    /* do not attempt to use SSL */
-  CURLUSESSL_TRY,     /* try using SSL, proceed anyway otherwise */
-  CURLUSESSL_CONTROL, /* SSL for the control connection or fail */
-  CURLUSESSL_ALL,     /* SSL for all communication or fail */
-  CURLUSESSL_LAST     /* not an option, never use */
-} curl_usessl;
-
-#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all
-                          the obsolete stuff removed! */
-
-/* Backwards compatibility with older names */
-/* These are scheduled to disappear by 2009 */
-
-#define CURLFTPSSL_NONE CURLUSESSL_NONE
-#define CURLFTPSSL_TRY CURLUSESSL_TRY
-#define CURLFTPSSL_CONTROL CURLUSESSL_CONTROL
-#define CURLFTPSSL_ALL CURLUSESSL_ALL
-#define CURLFTPSSL_LAST CURLUSESSL_LAST
-#define curl_ftpssl curl_usessl
-#endif /*!CURL_NO_OLDIES*/
-
-/* parameter for the CURLOPT_FTP_SSL_CCC option */
-typedef enum {
-  CURLFTPSSL_CCC_NONE,    /* do not send CCC */
-  CURLFTPSSL_CCC_PASSIVE, /* Let the server initiate the shutdown */
-  CURLFTPSSL_CCC_ACTIVE,  /* Initiate the shutdown */
-  CURLFTPSSL_CCC_LAST     /* not an option, never use */
-} curl_ftpccc;
-
-/* parameter for the CURLOPT_FTPSSLAUTH option */
-typedef enum {
-  CURLFTPAUTH_DEFAULT, /* let libcurl decide */
-  CURLFTPAUTH_SSL,     /* use "AUTH SSL" */
-  CURLFTPAUTH_TLS,     /* use "AUTH TLS" */
-  CURLFTPAUTH_LAST /* not an option, never use */
-} curl_ftpauth;
-
-/* parameter for the CURLOPT_FTP_CREATE_MISSING_DIRS option */
-typedef enum {
-  CURLFTP_CREATE_DIR_NONE,  /* do NOT create missing dirs! */
-  CURLFTP_CREATE_DIR,       /* (FTP/SFTP) if CWD fails, try MKD and then CWD
-                               again if MKD succeeded, for SFTP this does
-                               similar magic */
-  CURLFTP_CREATE_DIR_RETRY, /* (FTP only) if CWD fails, try MKD and then CWD
-                               again even if MKD failed! */
-  CURLFTP_CREATE_DIR_LAST   /* not an option, never use */
-} curl_ftpcreatedir;
-
-/* parameter for the CURLOPT_FTP_FILEMETHOD option */
-typedef enum {
-  CURLFTPMETHOD_DEFAULT,   /* let libcurl pick */
-  CURLFTPMETHOD_MULTICWD,  /* single CWD operation for each path part */
-  CURLFTPMETHOD_NOCWD,     /* no CWD at all */
-  CURLFTPMETHOD_SINGLECWD, /* one CWD to full dir, then work on file */
-  CURLFTPMETHOD_LAST       /* not an option, never use */
-} curl_ftpmethod;
-
-/* CURLPROTO_ defines are for the CURLOPT_*PROTOCOLS options */
-#define CURLPROTO_HTTP   (1<<0)
-#define CURLPROTO_HTTPS  (1<<1)
-#define CURLPROTO_FTP    (1<<2)
-#define CURLPROTO_FTPS   (1<<3)
-#define CURLPROTO_SCP    (1<<4)
-#define CURLPROTO_SFTP   (1<<5)
-#define CURLPROTO_TELNET (1<<6)
-#define CURLPROTO_LDAP   (1<<7)
-#define CURLPROTO_LDAPS  (1<<8)
-#define CURLPROTO_DICT   (1<<9)
-#define CURLPROTO_FILE   (1<<10)
-#define CURLPROTO_TFTP   (1<<11)
-#define CURLPROTO_IMAP   (1<<12)
-#define CURLPROTO_IMAPS  (1<<13)
-#define CURLPROTO_POP3   (1<<14)
-#define CURLPROTO_POP3S  (1<<15)
-#define CURLPROTO_SMTP   (1<<16)
-#define CURLPROTO_SMTPS  (1<<17)
-#define CURLPROTO_RTSP   (1<<18)
-#define CURLPROTO_ALL    (~0) /* enable everything */
-
-/* long may be 32 or 64 bits, but we should never depend on anything else
-   but 32 */
-#define CURLOPTTYPE_LONG          0
-#define CURLOPTTYPE_OBJECTPOINT   10000
-#define CURLOPTTYPE_FUNCTIONPOINT 20000
-#define CURLOPTTYPE_OFF_T         30000
-
-/* name is uppercase CURLOPT_<name>,
-   type is one of the defined CURLOPTTYPE_<type>
-   number is unique identifier */
-#ifdef CINIT
-#undef CINIT
-#endif
-
-#ifdef CURL_ISOCPP
-#define CINIT(name,type,number) CURLOPT_ ## name = CURLOPTTYPE_ ## type + number
-#else
-/* The macro "##" is ISO C, we assume pre-ISO C doesn't support it. */
-#define LONG          CURLOPTTYPE_LONG
-#define OBJECTPOINT   CURLOPTTYPE_OBJECTPOINT
-#define FUNCTIONPOINT CURLOPTTYPE_FUNCTIONPOINT
-#define OFF_T         CURLOPTTYPE_OFF_T
-#define CINIT(name,type,number) CURLOPT_/**/name = type + number
-#endif
-
-/*
- * This macro-mania below setups the CURLOPT_[what] enum, to be used with
- * curl_easy_setopt(). The first argument in the CINIT() macro is the [what]
- * word.
- */
-
-typedef enum {
-  /* This is the FILE * or void * the regular output should be written to. */
-  CINIT(FILE, OBJECTPOINT, 1),
-
-  /* The full URL to get/put */
-  CINIT(URL,  OBJECTPOINT, 2),
-
-  /* Port number to connect to, if other than default. */
-  CINIT(PORT, LONG, 3),
-
-  /* Name of proxy to use. */
-  CINIT(PROXY, OBJECTPOINT, 4),
-
-  /* "name:password" to use when fetching. */
-  CINIT(USERPWD, OBJECTPOINT, 5),
-
-  /* "name:password" to use with proxy. */
-  CINIT(PROXYUSERPWD, OBJECTPOINT, 6),
-
-  /* Range to get, specified as an ASCII string. */
-  CINIT(RANGE, OBJECTPOINT, 7),
-
-  /* not used */
-
-  /* Specified file stream to upload from (use as input): */
-  CINIT(INFILE, OBJECTPOINT, 9),
-
-  /* Buffer to receive error messages in, must be at least CURL_ERROR_SIZE
-   * bytes big. If this is not used, error messages go to stderr instead: */
-  CINIT(ERRORBUFFER, OBJECTPOINT, 10),
-
-  /* Function that will be called to store the output (instead of fwrite). The
-   * parameters will use fwrite() syntax, make sure to follow them. */
-  CINIT(WRITEFUNCTION, FUNCTIONPOINT, 11),
-
-  /* Function that will be called to read the input (instead of fread). The
-   * parameters will use fread() syntax, make sure to follow them. */
-  CINIT(READFUNCTION, FUNCTIONPOINT, 12),
-
-  /* Time-out the read operation after this amount of seconds */
-  CINIT(TIMEOUT, LONG, 13),
-
-  /* If the CURLOPT_INFILE is used, this can be used to inform libcurl about
-   * how large the file being sent really is. That allows better error
-   * checking and better verifies that the upload was successful. -1 means
-   * unknown size.
-   *
-   * For large file support, there is also a _LARGE version of the key
-   * which takes an off_t type, allowing platforms with larger off_t
-   * sizes to handle larger files.  See below for INFILESIZE_LARGE.
-   */
-  CINIT(INFILESIZE, LONG, 14),
-
-  /* POST static input fields. */
-  CINIT(POSTFIELDS, OBJECTPOINT, 15),
-
-  /* Set the referrer page (needed by some CGIs) */
-  CINIT(REFERER, OBJECTPOINT, 16),
-
-  /* Set the FTP PORT string (interface name, named or numerical IP address)
-     Use i.e '-' to use default address. */
-  CINIT(FTPPORT, OBJECTPOINT, 17),
-
-  /* Set the User-Agent string (examined by some CGIs) */
-  CINIT(USERAGENT, OBJECTPOINT, 18),
-
-  /* If the download receives less than "low speed limit" bytes/second
-   * during "low speed time" seconds, the operations is aborted.
-   * You could i.e if you have a pretty high speed connection, abort if
-   * it is less than 2000 bytes/sec during 20 seconds.
-   */
-
-  /* Set the "low speed limit" */
-  CINIT(LOW_SPEED_LIMIT, LONG, 19),
-
-  /* Set the "low speed time" */
-  CINIT(LOW_SPEED_TIME, LONG, 20),
-
-  /* Set the continuation offset.
-   *
-   * Note there is also a _LARGE version of this key which uses
-   * off_t types, allowing for large file offsets on platforms which
-   * use larger-than-32-bit off_t's.  Look below for RESUME_FROM_LARGE.
-   */
-  CINIT(RESUME_FROM, LONG, 21),
-
-  /* Set cookie in request: */
-  CINIT(COOKIE, OBJECTPOINT, 22),
-
-  /* This points to a linked list of headers, struct curl_slist kind */
-  CINIT(HTTPHEADER, OBJECTPOINT, 23),
-
-  /* This points to a linked list of post entries, struct curl_httppost */
-  CINIT(HTTPPOST, OBJECTPOINT, 24),
-
-  /* name of the file keeping your private SSL-certificate */
-  CINIT(SSLCERT, OBJECTPOINT, 25),
-
-  /* password for the SSL or SSH private key */
-  CINIT(KEYPASSWD, OBJECTPOINT, 26),
-
-  /* send TYPE parameter? */
-  CINIT(CRLF, LONG, 27),
-
-  /* send linked-list of QUOTE commands */
-  CINIT(QUOTE, OBJECTPOINT, 28),
-
-  /* send FILE * or void * to store headers to, if you use a callback it
-     is simply passed to the callback unmodified */
-  CINIT(WRITEHEADER, OBJECTPOINT, 29),
-
-  /* point to a file to read the initial cookies from, also enables
-     "cookie awareness" */
-  CINIT(COOKIEFILE, OBJECTPOINT, 31),
-
-  /* What version to specifically try to use.
-     See CURL_SSLVERSION defines below. */
-  CINIT(SSLVERSION, LONG, 32),
-
-  /* What kind of HTTP time condition to use, see defines */
-  CINIT(TIMECONDITION, LONG, 33),
-
-  /* Time to use with the above condition. Specified in number of seconds
-     since 1 Jan 1970 */
-  CINIT(TIMEVALUE, LONG, 34),
-
-  /* 35 = OBSOLETE */
-
-  /* Custom request, for customizing the get command like
-     HTTP: DELETE, TRACE and others
-     FTP: to use a different list command
-     */
-  CINIT(CUSTOMREQUEST, OBJECTPOINT, 36),
-
-  /* HTTP request, for odd commands like DELETE, TRACE and others */
-  CINIT(STDERR, OBJECTPOINT, 37),
-
-  /* 38 is not used */
-
-  /* send linked-list of post-transfer QUOTE commands */
-  CINIT(POSTQUOTE, OBJECTPOINT, 39),
-
-  /* Pass a pointer to string of the output using full variable-replacement
-     as described elsewhere. */
-  CINIT(WRITEINFO, OBJECTPOINT, 40),
-
-  CINIT(VERBOSE, LONG, 41),      /* talk a lot */
-  CINIT(HEADER, LONG, 42),       /* throw the header out too */
-  CINIT(NOPROGRESS, LONG, 43),   /* shut off the progress meter */
-  CINIT(NOBODY, LONG, 44),       /* use HEAD to get http document */
-  CINIT(FAILONERROR, LONG, 45),  /* no output on http error codes >= 300 */
-  CINIT(UPLOAD, LONG, 46),       /* this is an upload */
-  CINIT(POST, LONG, 47),         /* HTTP POST method */
-  CINIT(DIRLISTONLY, LONG, 48),  /* return bare names when listing directories */
-
-  CINIT(APPEND, LONG, 50),       /* Append instead of overwrite on upload! */
-
-  /* Specify whether to read the user+password from the .netrc or the URL.
-   * This must be one of the CURL_NETRC_* enums below. */
-  CINIT(NETRC, LONG, 51),
-
-  CINIT(FOLLOWLOCATION, LONG, 52),  /* use Location: Luke! */
-
-  CINIT(TRANSFERTEXT, LONG, 53), /* transfer data in text/ASCII format */
-  CINIT(PUT, LONG, 54),          /* HTTP PUT */
-
-  /* 55 = OBSOLETE */
-
-  /* Function that will be called instead of the internal progress display
-   * function. This function should be defined as the curl_progress_callback
-   * prototype defines. */
-  CINIT(PROGRESSFUNCTION, FUNCTIONPOINT, 56),
-
-  /* Data passed to the progress callback */
-  CINIT(PROGRESSDATA, OBJECTPOINT, 57),
-
-  /* We want the referrer field set automatically when following locations */
-  CINIT(AUTOREFERER, LONG, 58),
-
-  /* Port of the proxy, can be set in the proxy string as well with:
-     "[host]:[port]" */
-  CINIT(PROXYPORT, LONG, 59),
-
-  /* size of the POST input data, if strlen() is not good to use */
-  CINIT(POSTFIELDSIZE, LONG, 60),
-
-  /* tunnel non-http operations through a HTTP proxy */
-  CINIT(HTTPPROXYTUNNEL, LONG, 61),
-
-  /* Set the interface string to use as outgoing network interface */
-  CINIT(INTERFACE, OBJECTPOINT, 62),
-
-  /* Set the krb4/5 security level, this also enables krb4/5 awareness.  This
-   * is a string, 'clear', 'safe', 'confidential' or 'private'.  If the string
-   * is set but doesn't match one of these, 'private' will be used.  */
-  CINIT(KRBLEVEL, OBJECTPOINT, 63),
-
-  /* Set if we should verify the peer in ssl handshake, set 1 to verify. */
-  CINIT(SSL_VERIFYPEER, LONG, 64),
-
-  /* The CApath or CAfile used to validate the peer certificate
-     this option is used only if SSL_VERIFYPEER is true */
-  CINIT(CAINFO, OBJECTPOINT, 65),
-
-  /* 66 = OBSOLETE */
-  /* 67 = OBSOLETE */
-
-  /* Maximum number of http redirects to follow */
-  CINIT(MAXREDIRS, LONG, 68),
-
-  /* Pass a long set to 1 to get the date of the requested document (if
-     possible)! Pass a zero to shut it off. */
-  CINIT(FILETIME, LONG, 69),
-
-  /* This points to a linked list of telnet options */
-  CINIT(TELNETOPTIONS, OBJECTPOINT, 70),
-
-  /* Max amount of cached alive connections */
-  CINIT(MAXCONNECTS, LONG, 71),
-
-  /* What policy to use when closing connections when the cache is filled
-     up */
-  CINIT(CLOSEPOLICY, LONG, 72),
-
-  /* 73 = OBSOLETE */
-
-  /* Set to explicitly use a new connection for the upcoming transfer.
-     Do not use this unless you're absolutely sure of this, as it makes the
-     operation slower and is less friendly for the network. */
-  CINIT(FRESH_CONNECT, LONG, 74),
-
-  /* Set to explicitly forbid the upcoming transfer's connection to be re-used
-     when done. Do not use this unless you're absolutely sure of this, as it
-     makes the operation slower and is less friendly for the network. */
-  CINIT(FORBID_REUSE, LONG, 75),
-
-  /* Set to a file name that contains random data for libcurl to use to
-     seed the random engine when doing SSL connects. */
-  CINIT(RANDOM_FILE, OBJECTPOINT, 76),
-
-  /* Set to the Entropy Gathering Daemon socket pathname */
-  CINIT(EGDSOCKET, OBJECTPOINT, 77),
-
-  /* Time-out connect operations after this amount of seconds, if connects
-     are OK within this time, then fine... This only aborts the connect
-     phase. [Only works on unix-style/SIGALRM operating systems] */
-  CINIT(CONNECTTIMEOUT, LONG, 78),
-
-  /* Function that will be called to store headers (instead of fwrite). The
-   * parameters will use fwrite() syntax, make sure to follow them. */
-  CINIT(HEADERFUNCTION, FUNCTIONPOINT, 79),
-
-  /* Set this to force the HTTP request to get back to GET. Only really usable
-     if POST, PUT or a custom request have been used first.
-   */
-  CINIT(HTTPGET, LONG, 80),
-
-  /* Set if we should verify the Common name from the peer certificate in ssl
-   * handshake, set 1 to check existence, 2 to ensure that it matches the
-   * provided hostname. */
-  CINIT(SSL_VERIFYHOST, LONG, 81),
-
-  /* Specify which file name to write all known cookies in after completed
-     operation. Set file name to "-" (dash) to make it go to stdout. */
-  CINIT(COOKIEJAR, OBJECTPOINT, 82),
-
-  /* Specify which SSL ciphers to use */
-  CINIT(SSL_CIPHER_LIST, OBJECTPOINT, 83),
-
-  /* Specify which HTTP version to use! This must be set to one of the
-     CURL_HTTP_VERSION* enums set below. */
-  CINIT(HTTP_VERSION, LONG, 84),
-
-  /* Specifically switch on or off the FTP engine's use of the EPSV command. By
-     default, that one will always be attempted before the more traditional
-     PASV command. */
-  CINIT(FTP_USE_EPSV, LONG, 85),
-
-  /* type of the file keeping your SSL-certificate ("DER", "PEM", "ENG") */
-  CINIT(SSLCERTTYPE, OBJECTPOINT, 86),
-
-  /* name of the file keeping your private SSL-key */
-  CINIT(SSLKEY, OBJECTPOINT, 87),
-
-  /* type of the file keeping your private SSL-key ("DER", "PEM", "ENG") */
-  CINIT(SSLKEYTYPE, OBJECTPOINT, 88),
-
-  /* crypto engine for the SSL-sub system */
-  CINIT(SSLENGINE, OBJECTPOINT, 89),
-
-  /* set the crypto engine for the SSL-sub system as default
-     the param has no meaning...
-   */
-  CINIT(SSLENGINE_DEFAULT, LONG, 90),
-
-  /* Non-zero value means to use the global dns cache */
-  CINIT(DNS_USE_GLOBAL_CACHE, LONG, 91), /* To become OBSOLETE soon */
-
-  /* DNS cache timeout */
-  CINIT(DNS_CACHE_TIMEOUT, LONG, 92),
-
-  /* send linked-list of pre-transfer QUOTE commands */
-  CINIT(PREQUOTE, OBJECTPOINT, 93),
-
-  /* set the debug function */
-  CINIT(DEBUGFUNCTION, FUNCTIONPOINT, 94),
-
-  /* set the data for the debug function */
-  CINIT(DEBUGDATA, OBJECTPOINT, 95),
-
-  /* mark this as start of a cookie session */
-  CINIT(COOKIESESSION, LONG, 96),
-
-  /* The CApath directory used to validate the peer certificate
-     this option is used only if SSL_VERIFYPEER is true */
-  CINIT(CAPATH, OBJECTPOINT, 97),
-
-  /* Instruct libcurl to use a smaller receive buffer */
-  CINIT(BUFFERSIZE, LONG, 98),
-
-  /* Instruct libcurl to not use any signal/alarm handlers, even when using
-     timeouts. This option is useful for multi-threaded applications.
-     See libcurl-the-guide for more background information. */
-  CINIT(NOSIGNAL, LONG, 99),
-
-  /* Provide a CURLShare for mutexing non-ts data */
-  CINIT(SHARE, OBJECTPOINT, 100),
-
-  /* indicates type of proxy. accepted values are CURLPROXY_HTTP (default),
-     CURLPROXY_SOCKS4, CURLPROXY_SOCKS4A and CURLPROXY_SOCKS5. */
-  CINIT(PROXYTYPE, LONG, 101),
-
-  /* Set the Accept-Encoding string. Use this to tell a server you would like
-     the response to be compressed. */
-  CINIT(ENCODING, OBJECTPOINT, 102),
-
-  /* Set pointer to private data */
-  CINIT(PRIVATE, OBJECTPOINT, 103),
-
-  /* Set aliases for HTTP 200 in the HTTP Response header */
-  CINIT(HTTP200ALIASES, OBJECTPOINT, 104),
-
-  /* Continue to send authentication (user+password) when following locations,
-     even when hostname changed. This can potentially send off the name
-     and password to whatever host the server decides. */
-  CINIT(UNRESTRICTED_AUTH, LONG, 105),
-
-  /* Specifically switch on or off the FTP engine's use of the EPRT command ( it
-     also disables the LPRT attempt). By default, those ones will always be
-     attempted before the good old traditional PORT command. */
-  CINIT(FTP_USE_EPRT, LONG, 106),
-
-  /* Set this to a bitmask value to enable the particular authentications
-     methods you like. Use this in combination with CURLOPT_USERPWD.
-     Note that setting multiple bits may cause extra network round-trips. */
-  CINIT(HTTPAUTH, LONG, 107),
-
-  /* Set the ssl context callback function, currently only for OpenSSL ssl_ctx
-     in second argument. The function must be matching the
-     curl_ssl_ctx_callback proto. */
-  CINIT(SSL_CTX_FUNCTION, FUNCTIONPOINT, 108),
-
-  /* Set the userdata for the ssl context callback function's third
-     argument */
-  CINIT(SSL_CTX_DATA, OBJECTPOINT, 109),
-
-  /* FTP Option that causes missing dirs to be created on the remote server.
-     In 7.19.4 we introduced the convenience enums for this option using the
-     CURLFTP_CREATE_DIR prefix.
-  */
-  CINIT(FTP_CREATE_MISSING_DIRS, LONG, 110),
-
-  /* Set this to a bitmask value to enable the particular authentications
-     methods you like. Use this in combination with CURLOPT_PROXYUSERPWD.
-     Note that setting multiple bits may cause extra network round-trips. */
-  CINIT(PROXYAUTH, LONG, 111),
-
-  /* FTP option that changes the timeout, in seconds, associated with
-     getting a response.  This is different from transfer timeout time and
-     essentially places a demand on the FTP server to acknowledge commands
-     in a timely manner. */
-  CINIT(FTP_RESPONSE_TIMEOUT, LONG, 112),
-#define CURLOPT_SERVER_RESPONSE_TIMEOUT CURLOPT_FTP_RESPONSE_TIMEOUT
-
-  /* Set this option to one of the CURL_IPRESOLVE_* defines (see below) to
-     tell libcurl to resolve names to those IP versions only. This only has
-     affect on systems with support for more than one, i.e IPv4 _and_ IPv6. */
-  CINIT(IPRESOLVE, LONG, 113),
-
-  /* Set this option to limit the size of a file that will be downloaded from
-     an HTTP or FTP server.
-
-     Note there is also _LARGE version which adds large file support for
-     platforms which have larger off_t sizes.  See MAXFILESIZE_LARGE below. */
-  CINIT(MAXFILESIZE, LONG, 114),
-
-  /* See the comment for INFILESIZE above, but in short, specifies
-   * the size of the file being uploaded.  -1 means unknown.
-   */
-  CINIT(INFILESIZE_LARGE, OFF_T, 115),
-
-  /* Sets the continuation offset.  There is also a LONG version of this;
-   * look above for RESUME_FROM.
-   */
-  CINIT(RESUME_FROM_LARGE, OFF_T, 116),
-
-  /* Sets the maximum size of data that will be downloaded from
-   * an HTTP or FTP server.  See MAXFILESIZE above for the LONG version.
-   */
-  CINIT(MAXFILESIZE_LARGE, OFF_T, 117),
-
-  /* Set this option to the file name of your .netrc file you want libcurl
-     to parse (using the CURLOPT_NETRC option). If not set, libcurl will do
-     a poor attempt to find the user's home directory and check for a .netrc
-     file in there. */
-  CINIT(NETRC_FILE, OBJECTPOINT, 118),
-
-  /* Enable SSL/TLS for FTP, pick one of:
-     CURLFTPSSL_TRY     - try using SSL, proceed anyway otherwise
-     CURLFTPSSL_CONTROL - SSL for the control connection or fail
-     CURLFTPSSL_ALL     - SSL for all communication or fail
-  */
-  CINIT(USE_SSL, LONG, 119),
-
-  /* The _LARGE version of the standard POSTFIELDSIZE option */
-  CINIT(POSTFIELDSIZE_LARGE, OFF_T, 120),
-
-  /* Enable/disable the TCP Nagle algorithm */
-  CINIT(TCP_NODELAY, LONG, 121),
-
-  /* 122 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
-  /* 123 OBSOLETE. Gone in 7.16.0 */
-  /* 124 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
-  /* 125 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
-  /* 126 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
-  /* 127 OBSOLETE. Gone in 7.16.0 */
-  /* 128 OBSOLETE. Gone in 7.16.0 */
-
-  /* When FTP over SSL/TLS is selected (with CURLOPT_USE_SSL), this option
-     can be used to change libcurl's default action which is to first try
-     "AUTH SSL" and then "AUTH TLS" in this order, and proceed when a OK
-     response has been received.
-
-     Available parameters are:
-     CURLFTPAUTH_DEFAULT - let libcurl decide
-     CURLFTPAUTH_SSL     - try "AUTH SSL" first, then TLS
-     CURLFTPAUTH_TLS     - try "AUTH TLS" first, then SSL
-  */
-  CINIT(FTPSSLAUTH, LONG, 129),
-
-  CINIT(IOCTLFUNCTION, FUNCTIONPOINT, 130),
-  CINIT(IOCTLDATA, OBJECTPOINT, 131),
-
-  /* 132 OBSOLETE. Gone in 7.16.0 */
-  /* 133 OBSOLETE. Gone in 7.16.0 */
-
-  /* zero terminated string for pass on to the FTP server when asked for
-     "account" info */
-  CINIT(FTP_ACCOUNT, OBJECTPOINT, 134),
-
-  /* feed cookies into cookie engine */
-  CINIT(COOKIELIST, OBJECTPOINT, 135),
-
-  /* ignore Content-Length */
-  CINIT(IGNORE_CONTENT_LENGTH, LONG, 136),
-
-  /* Set to non-zero to skip the IP address received in a 227 PASV FTP server
-     response. Typically used for FTP-SSL purposes but is not restricted to
-     that. libcurl will then instead use the same IP address it used for the
-     control connection. */
-  CINIT(FTP_SKIP_PASV_IP, LONG, 137),
-
-  /* Select "file method" to use when doing FTP, see the curl_ftpmethod
-     above. */
-  CINIT(FTP_FILEMETHOD, LONG, 138),
-
-  /* Local port number to bind the socket to */
-  CINIT(LOCALPORT, LONG, 139),
-
-  /* Number of ports to try, including the first one set with LOCALPORT.
-     Thus, setting it to 1 will make no additional attempts but the first.
-  */
-  CINIT(LOCALPORTRANGE, LONG, 140),
-
-  /* no transfer, set up connection and let application use the socket by
-     extracting it with CURLINFO_LASTSOCKET */
-  CINIT(CONNECT_ONLY, LONG, 141),
-
-  /* Function that will be called to convert from the
-     network encoding (instead of using the iconv calls in libcurl) */
-  CINIT(CONV_FROM_NETWORK_FUNCTION, FUNCTIONPOINT, 142),
-
-  /* Function that will be called to convert to the
-     network encoding (instead of using the iconv calls in libcurl) */
-  CINIT(CONV_TO_NETWORK_FUNCTION, FUNCTIONPOINT, 143),
-
-  /* Function that will be called to convert from UTF8
-     (instead of using the iconv calls in libcurl)
-     Note that this is used only for SSL certificate processing */
-  CINIT(CONV_FROM_UTF8_FUNCTION, FUNCTIONPOINT, 144),
-
-  /* if the connection proceeds too quickly then need to slow it down */
-  /* limit-rate: maximum number of bytes per second to send or receive */
-  CINIT(MAX_SEND_SPEED_LARGE, OFF_T, 145),
-  CINIT(MAX_RECV_SPEED_LARGE, OFF_T, 146),
-
-  /* Pointer to command string to send if USER/PASS fails. */
-  CINIT(FTP_ALTERNATIVE_TO_USER, OBJECTPOINT, 147),
-
-  /* callback function for setting socket options */
-  CINIT(SOCKOPTFUNCTION, FUNCTIONPOINT, 148),
-  CINIT(SOCKOPTDATA, OBJECTPOINT, 149),
-
-  /* set to 0 to disable session ID re-use for this transfer, default is
-     enabled (== 1) */
-  CINIT(SSL_SESSIONID_CACHE, LONG, 150),
-
-  /* allowed SSH authentication methods */
-  CINIT(SSH_AUTH_TYPES, LONG, 151),
-
-  /* Used by scp/sftp to do public/private key authentication */
-  CINIT(SSH_PUBLIC_KEYFILE, OBJECTPOINT, 152),
-  CINIT(SSH_PRIVATE_KEYFILE, OBJECTPOINT, 153),
-
-  /* Send CCC (Clear Command Channel) after authentication */
-  CINIT(FTP_SSL_CCC, LONG, 154),
-
-  /* Same as TIMEOUT and CONNECTTIMEOUT, but with ms resolution */
-  CINIT(TIMEOUT_MS, LONG, 155),
-  CINIT(CONNECTTIMEOUT_MS, LONG, 156),
-
-  /* set to zero to disable the libcurl's decoding and thus pass the raw body
-     data to the application even when it is encoded/compressed */
-  CINIT(HTTP_TRANSFER_DECODING, LONG, 157),
-  CINIT(HTTP_CONTENT_DECODING, LONG, 158),
-
-  /* Permission used when creating new files and directories on the remote
-     server for protocols that support it, SFTP/SCP/FILE */
-  CINIT(NEW_FILE_PERMS, LONG, 159),
-  CINIT(NEW_DIRECTORY_PERMS, LONG, 160),
-
-  /* Set the behaviour of POST when redirecting. Values must be set to one
-     of CURL_REDIR* defines below. This used to be called CURLOPT_POST301 */
-  CINIT(POSTREDIR, LONG, 161),
-
-  /* used by scp/sftp to verify the host's public key */
-  CINIT(SSH_HOST_PUBLIC_KEY_MD5, OBJECTPOINT, 162),
-
-  /* Callback function for opening socket (instead of socket(2)). Optionally,
-     callback is able change the address or refuse to connect returning
-     CURL_SOCKET_BAD.  The callback should have type
-     curl_opensocket_callback */
-  CINIT(OPENSOCKETFUNCTION, FUNCTIONPOINT, 163),
-  CINIT(OPENSOCKETDATA, OBJECTPOINT, 164),
-
-  /* POST volatile input fields. */
-  CINIT(COPYPOSTFIELDS, OBJECTPOINT, 165),
-
-  /* set transfer mode (;type=<a|i>) when doing FTP via an HTTP proxy */
-  CINIT(PROXY_TRANSFER_MODE, LONG, 166),
-
-  /* Callback function for seeking in the input stream */
-  CINIT(SEEKFUNCTION, FUNCTIONPOINT, 167),
-  CINIT(SEEKDATA, OBJECTPOINT, 168),
-
-  /* CRL file */
-  CINIT(CRLFILE, OBJECTPOINT, 169),
-
-  /* Issuer certificate */
-  CINIT(ISSUERCERT, OBJECTPOINT, 170),
-
-  /* (IPv6) Address scope */
-  CINIT(ADDRESS_SCOPE, LONG, 171),
-
-  /* Collect certificate chain info and allow it to get retrievable with
-     CURLINFO_CERTINFO after the transfer is complete. (Unfortunately) only
-     working with OpenSSL-powered builds. */
-  CINIT(CERTINFO, LONG, 172),
-
-  /* "name" and "pwd" to use when fetching. */
-  CINIT(USERNAME, OBJECTPOINT, 173),
-  CINIT(PASSWORD, OBJECTPOINT, 174),
-
-    /* "name" and "pwd" to use with Proxy when fetching. */
-  CINIT(PROXYUSERNAME, OBJECTPOINT, 175),
-  CINIT(PROXYPASSWORD, OBJECTPOINT, 176),
-
-  /* Comma separated list of hostnames defining no-proxy zones. These should
-     match both hostnames directly, and hostnames within a domain. For
-     example, local.com will match local.com and www.local.com, but NOT
-     notlocal.com or www.notlocal.com. For compatibility with other
-     implementations of this, .local.com will be considered to be the same as
-     local.com. A single * is the only valid wildcard, and effectively
-     disables the use of proxy. */
-  CINIT(NOPROXY, OBJECTPOINT, 177),
-
-  /* block size for TFTP transfers */
-  CINIT(TFTP_BLKSIZE, LONG, 178),
-
-  /* Socks Service */
-  CINIT(SOCKS5_GSSAPI_SERVICE, OBJECTPOINT, 179),
-
-  /* Socks Service */
-  CINIT(SOCKS5_GSSAPI_NEC, LONG, 180),
-
-  /* set the bitmask for the protocols that are allowed to be used for the
-     transfer, which thus helps the app which takes URLs from users or other
-     external inputs and want to restrict what protocol(s) to deal
-     with. Defaults to CURLPROTO_ALL. */
-  CINIT(PROTOCOLS, LONG, 181),
-
-  /* set the bitmask for the protocols that libcurl is allowed to follow to,
-     as a subset of the CURLOPT_PROTOCOLS ones. That means the protocol needs
-     to be set in both bitmasks to be allowed to get redirected to. Defaults
-     to all protocols except FILE and SCP. */
-  CINIT(REDIR_PROTOCOLS, LONG, 182),
-
-  /* set the SSH knownhost file name to use */
-  CINIT(SSH_KNOWNHOSTS, OBJECTPOINT, 183),
-
-  /* set the SSH host key callback, must point to a curl_sshkeycallback
-     function */
-  CINIT(SSH_KEYFUNCTION, FUNCTIONPOINT, 184),
-
-  /* set the SSH host key callback custom pointer */
-  CINIT(SSH_KEYDATA, OBJECTPOINT, 185),
-
-  /* set the SMTP mail originator */
-  CINIT(MAIL_FROM, OBJECTPOINT, 186),
-
-  /* set the SMTP mail receiver(s) */
-  CINIT(MAIL_RCPT, OBJECTPOINT, 187),
-
-  /* FTP: send PRET before PASV */
-  CINIT(FTP_USE_PRET, LONG, 188),
-
-  /* RTSP request method (OPTIONS, SETUP, PLAY, etc...) */
-  CINIT(RTSP_REQUEST, LONG, 189),
-
-  /* The RTSP session identifier */
-  CINIT(RTSP_SESSION_ID, OBJECTPOINT, 190),
-
-  /* The RTSP stream URI */
-  CINIT(RTSP_STREAM_URI, OBJECTPOINT, 191),
-
-  /* The Transport: header to use in RTSP requests */
-  CINIT(RTSP_TRANSPORT, OBJECTPOINT, 192),
-
-  /* Manually initialize the client RTSP CSeq for this handle */
-  CINIT(RTSP_CLIENT_CSEQ, LONG, 193),
-
-  /* Manually initialize the server RTSP CSeq for this handle */
-  CINIT(RTSP_SERVER_CSEQ, LONG, 194),
-
-  /* The stream to pass to INTERLEAVEFUNCTION. */
-  CINIT(INTERLEAVEDATA, OBJECTPOINT, 195),
-
-  /* Let the application define a custom write method for RTP data */
-  CINIT(INTERLEAVEFUNCTION, FUNCTIONPOINT, 196),
-
-  CURLOPT_LASTENTRY /* the last unused */
-} CURLoption;
-
-#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all
-                          the obsolete stuff removed! */
-
-/* Backwards compatibility with older names */
-/* These are scheduled to disappear by 2011 */
-
-/* This was added in version 7.19.1 */
-#define CURLOPT_POST301 CURLOPT_POSTREDIR
-
-/* These are scheduled to disappear by 2009 */
-
-/* The following were added in 7.17.0 */
-#define CURLOPT_SSLKEYPASSWD CURLOPT_KEYPASSWD
-#define CURLOPT_FTPAPPEND CURLOPT_APPEND
-#define CURLOPT_FTPLISTONLY CURLOPT_DIRLISTONLY
-#define CURLOPT_FTP_SSL CURLOPT_USE_SSL
-
-/* The following were added earlier */
-
-#define CURLOPT_SSLCERTPASSWD CURLOPT_KEYPASSWD
-#define CURLOPT_KRB4LEVEL CURLOPT_KRBLEVEL
-
-#else
-/* This is set if CURL_NO_OLDIES is defined at compile-time */
-#undef CURLOPT_DNS_USE_GLOBAL_CACHE /* soon obsolete */
-#endif
-
-
-  /* Below here follows defines for the CURLOPT_IPRESOLVE option. If a host
-     name resolves addresses using more than one IP protocol version, this
-     option might be handy to force libcurl to use a specific IP version. */
-#define CURL_IPRESOLVE_WHATEVER 0 /* default, resolves addresses to all IP
-                                     versions that your system allows */
-#define CURL_IPRESOLVE_V4       1 /* resolve to ipv4 addresses */
-#define CURL_IPRESOLVE_V6       2 /* resolve to ipv6 addresses */
-
-  /* three convenient "aliases" that follow the name scheme better */
-#define CURLOPT_WRITEDATA CURLOPT_FILE
-#define CURLOPT_READDATA  CURLOPT_INFILE
-#define CURLOPT_HEADERDATA CURLOPT_WRITEHEADER
-#define CURLOPT_RTSPHEADER CURLOPT_HTTPHEADER
-
-  /* These enums are for use with the CURLOPT_HTTP_VERSION option. */
-enum {
-  CURL_HTTP_VERSION_NONE, /* setting this means we don't care, and that we'd
-                             like the library to choose the best possible
-                             for us! */
-  CURL_HTTP_VERSION_1_0,  /* please use HTTP 1.0 in the request */
-  CURL_HTTP_VERSION_1_1,  /* please use HTTP 1.1 in the request */
-
-  CURL_HTTP_VERSION_LAST /* *ILLEGAL* http version */
-};
-
-/*
- * Public API enums for RTSP requests
- */
-enum {
-    CURL_RTSPREQ_NONE, /* first in list */
-    CURL_RTSPREQ_OPTIONS,
-    CURL_RTSPREQ_DESCRIBE,
-    CURL_RTSPREQ_ANNOUNCE,
-    CURL_RTSPREQ_SETUP,
-    CURL_RTSPREQ_PLAY,
-    CURL_RTSPREQ_PAUSE,
-    CURL_RTSPREQ_TEARDOWN,
-    CURL_RTSPREQ_GET_PARAMETER,
-    CURL_RTSPREQ_SET_PARAMETER,
-    CURL_RTSPREQ_RECORD,
-    CURL_RTSPREQ_RECEIVE,
-    CURL_RTSPREQ_LAST /* last in list */
-};
-
-  /* These enums are for use with the CURLOPT_NETRC option. */
-enum CURL_NETRC_OPTION {
-  CURL_NETRC_IGNORED,     /* The .netrc will never be read.
-                           * This is the default. */
-  CURL_NETRC_OPTIONAL,    /* A user:password in the URL will be preferred
-                           * to one in the .netrc. */
-  CURL_NETRC_REQUIRED,    /* A user:password in the URL will be ignored.
-                           * Unless one is set programmatically, the .netrc
-                           * will be queried. */
-  CURL_NETRC_LAST
-};
-
-enum {
-  CURL_SSLVERSION_DEFAULT,
-  CURL_SSLVERSION_TLSv1,
-  CURL_SSLVERSION_SSLv2,
-  CURL_SSLVERSION_SSLv3,
-
-  CURL_SSLVERSION_LAST /* never use, keep last */
-};
-
-/* symbols to use with CURLOPT_POSTREDIR.
-   CURL_REDIR_POST_301 and CURL_REDIR_POST_302 can be bitwise ORed so that
-   CURL_REDIR_POST_301 | CURL_REDIR_POST_302 == CURL_REDIR_POST_ALL */
-
-#define CURL_REDIR_GET_ALL  0
-#define CURL_REDIR_POST_301 1
-#define CURL_REDIR_POST_302 2
-#define CURL_REDIR_POST_ALL (CURL_REDIR_POST_301|CURL_REDIR_POST_302)
-
-typedef enum {
-  CURL_TIMECOND_NONE,
-
-  CURL_TIMECOND_IFMODSINCE,
-  CURL_TIMECOND_IFUNMODSINCE,
-  CURL_TIMECOND_LASTMOD,
-
-  CURL_TIMECOND_LAST
-} curl_TimeCond;
-
-
-/* curl_strequal() and curl_strnequal() are subject for removal in a future
-   libcurl, see lib/README.curlx for details */
-CURL_EXTERN int (curl_strequal)(const char *s1, const char *s2);
-CURL_EXTERN int (curl_strnequal)(const char *s1, const char *s2, size_t n);
-
-/* name is uppercase CURLFORM_<name> */
-#ifdef CFINIT
-#undef CFINIT
-#endif
-
-#ifdef CURL_ISOCPP
-#define CFINIT(name) CURLFORM_ ## name
-#else
-/* The macro "##" is ISO C, we assume pre-ISO C doesn't support it. */
-#define CFINIT(name) CURLFORM_/**/name
-#endif
-
-typedef enum {
-  CFINIT(NOTHING),        /********* the first one is unused ************/
-
-  /*  */
-  CFINIT(COPYNAME),
-  CFINIT(PTRNAME),
-  CFINIT(NAMELENGTH),
-  CFINIT(COPYCONTENTS),
-  CFINIT(PTRCONTENTS),
-  CFINIT(CONTENTSLENGTH),
-  CFINIT(FILECONTENT),
-  CFINIT(ARRAY),
-  CFINIT(OBSOLETE),
-  CFINIT(FILE),
-
-  CFINIT(BUFFER),
-  CFINIT(BUFFERPTR),
-  CFINIT(BUFFERLENGTH),
-
-  CFINIT(CONTENTTYPE),
-  CFINIT(CONTENTHEADER),
-  CFINIT(FILENAME),
-  CFINIT(END),
-  CFINIT(OBSOLETE2),
-
-  CFINIT(STREAM),
-
-  CURLFORM_LASTENTRY /* the last unused */
-} CURLformoption;
-
-#undef CFINIT /* done */
-
-/* structure to be used as parameter for CURLFORM_ARRAY */
-struct curl_forms {
-  CURLformoption option;
-  const char     *value;
-};
-
-/* use this for multipart formpost building */
-/* Returns code for curl_formadd()
- *
- * Returns:
- * CURL_FORMADD_OK             on success
- * CURL_FORMADD_MEMORY         if the FormInfo allocation fails
- * CURL_FORMADD_OPTION_TWICE   if one option is given twice for one Form
- * CURL_FORMADD_NULL           if a null pointer was given for a char
- * CURL_FORMADD_MEMORY         if the allocation of a FormInfo struct failed
- * CURL_FORMADD_UNKNOWN_OPTION if an unknown option was used
- * CURL_FORMADD_INCOMPLETE     if the some FormInfo is not complete (or error)
- * CURL_FORMADD_MEMORY         if a curl_httppost struct cannot be allocated
- * CURL_FORMADD_MEMORY         if some allocation for string copying failed.
- * CURL_FORMADD_ILLEGAL_ARRAY  if an illegal option is used in an array
- *
- ***************************************************************************/
-typedef enum {
-  CURL_FORMADD_OK, /* first, no error */
-
-  CURL_FORMADD_MEMORY,
-  CURL_FORMADD_OPTION_TWICE,
-  CURL_FORMADD_NULL,
-  CURL_FORMADD_UNKNOWN_OPTION,
-  CURL_FORMADD_INCOMPLETE,
-  CURL_FORMADD_ILLEGAL_ARRAY,
-  CURL_FORMADD_DISABLED, /* libcurl was built with this disabled */
-
-  CURL_FORMADD_LAST /* last */
-} CURLFORMcode;
-
-/*
- * NAME curl_formadd()
- *
- * DESCRIPTION
- *
- * Pretty advanced function for building multi-part formposts. Each invoke
- * adds one part that together construct a full post. Then use
- * CURLOPT_HTTPPOST to send it off to libcurl.
- */
-CURL_EXTERN CURLFORMcode curl_formadd(struct curl_httppost **httppost,
-                                      struct curl_httppost **last_post,
-                                      ...);
-
-/*
- * callback function for curl_formget()
- * The void *arg pointer will be the one passed as second argument to
- *   curl_formget().
- * The character buffer passed to it must not be freed.
- * Should return the buffer length passed to it as the argument "len" on
- *   success.
- */
-typedef size_t (*curl_formget_callback)(void *arg, const char *buf, size_t len);
-
-/*
- * NAME curl_formget()
- *
- * DESCRIPTION
- *
- * Serialize a curl_httppost struct built with curl_formadd().
- * Accepts a void pointer as second argument which will be passed to
- * the curl_formget_callback function.
- * Returns 0 on success.
- */
-CURL_EXTERN int curl_formget(struct curl_httppost *form, void *arg,
-                             curl_formget_callback append);
-/*
- * NAME curl_formfree()
- *
- * DESCRIPTION
- *
- * Free a multipart formpost previously built with curl_formadd().
- */
-CURL_EXTERN void curl_formfree(struct curl_httppost *form);
-
-/*
- * NAME curl_getenv()
- *
- * DESCRIPTION
- *
- * Returns a malloc()'ed string that MUST be curl_free()ed after usage is
- * complete. DEPRECATED - see lib/README.curlx
- */
-CURL_EXTERN char *curl_getenv(const char *variable);
-
-/*
- * NAME curl_version()
- *
- * DESCRIPTION
- *
- * Returns a static ascii string of the libcurl version.
- */
-CURL_EXTERN char *curl_version(void);
-
-/*
- * NAME curl_easy_escape()
- *
- * DESCRIPTION
- *
- * Escapes URL strings (converts all letters consider illegal in URLs to their
- * %XX versions). This function returns a new allocated string or NULL if an
- * error occurred.
- */
-CURL_EXTERN char *curl_easy_escape(CURL *handle,
-                                   const char *string,
-                                   int length);
-
-/* the previous version: */
-CURL_EXTERN char *curl_escape(const char *string,
-                              int length);
-
-
-/*
- * NAME curl_easy_unescape()
- *
- * DESCRIPTION
- *
- * Unescapes URL encoding in strings (converts all %XX codes to their 8bit
- * versions). This function returns a new allocated string or NULL if an error
- * occurred.
- * Conversion Note: On non-ASCII platforms the ASCII %XX codes are
- * converted into the host encoding.
- */
-CURL_EXTERN char *curl_easy_unescape(CURL *handle,
-                                     const char *string,
-                                     int length,
-                                     int *outlength);
-
-/* the previous version */
-CURL_EXTERN char *curl_unescape(const char *string,
-                                int length);
-
-/*
- * NAME curl_free()
- *
- * DESCRIPTION
- *
- * Provided for de-allocation in the same translation unit that did the
- * allocation. Added in libcurl 7.10
- */
-CURL_EXTERN void curl_free(void *p);
-
-/*
- * NAME curl_global_init()
- *
- * DESCRIPTION
- *
- * curl_global_init() should be invoked exactly once for each application that
- * uses libcurl and before any call of other libcurl functions.
- *
- * This function is not thread-safe!
- */
-CURL_EXTERN CURLcode curl_global_init(long flags);
-
-/*
- * NAME curl_global_init_mem()
- *
- * DESCRIPTION
- *
- * curl_global_init() or curl_global_init_mem() should be invoked exactly once
- * for each application that uses libcurl.  This function can be used to
- * initialize libcurl and set user defined memory management callback
- * functions.  Users can implement memory management routines to check for
- * memory leaks, check for mis-use of the curl library etc.  User registered
- * callback routines with be invoked by this library instead of the system
- * memory management routines like malloc, free etc.
- */
-CURL_EXTERN CURLcode curl_global_init_mem(long flags,
-                                          curl_malloc_callback m,
-                                          curl_free_callback f,
-                                          curl_realloc_callback r,
-                                          curl_strdup_callback s,
-                                          curl_calloc_callback c);
-
-/*
- * NAME curl_global_cleanup()
- *
- * DESCRIPTION
- *
- * curl_global_cleanup() should be invoked exactly once for each application
- * that uses libcurl
- */
-CURL_EXTERN void curl_global_cleanup(void);
-
-/* linked-list structure for the CURLOPT_QUOTE option (and other) */
-struct curl_slist {
-  char *data;
-  struct curl_slist *next;
-};
-
-/*
- * NAME curl_slist_append()
- *
- * DESCRIPTION
- *
- * Appends a string to a linked list. If no list exists, it will be created
- * first. Returns the new list, after appending.
- */
-CURL_EXTERN struct curl_slist *curl_slist_append(struct curl_slist *,
-                                                 const char *);
-
-/*
- * NAME curl_slist_free_all()
- *
- * DESCRIPTION
- *
- * free a previously built curl_slist.
- */
-CURL_EXTERN void curl_slist_free_all(struct curl_slist *);
-
-/*
- * NAME curl_getdate()
- *
- * DESCRIPTION
- *
- * Returns the time, in seconds since 1 Jan 1970 of the time string given in
- * the first argument. The time argument in the second parameter is unused
- * and should be set to NULL.
- */
-CURL_EXTERN time_t curl_getdate(const char *p, const time_t *unused);
-
-/* info about the certificate chain, only for OpenSSL builds. Asked
-   for with CURLOPT_CERTINFO / CURLINFO_CERTINFO */
-struct curl_certinfo {
-  int num_of_certs;             /* number of certificates with information */
-  struct curl_slist **certinfo; /* for each index in this array, there's a
-                                   linked list with textual information in the
-                                   format "name: value" */
-};
-
-#define CURLINFO_STRING   0x100000
-#define CURLINFO_LONG     0x200000
-#define CURLINFO_DOUBLE   0x300000
-#define CURLINFO_SLIST    0x400000
-#define CURLINFO_MASK     0x0fffff
-#define CURLINFO_TYPEMASK 0xf00000
-
-typedef enum {
-  CURLINFO_NONE, /* first, never use this */
-  CURLINFO_EFFECTIVE_URL    = CURLINFO_STRING + 1,
-  CURLINFO_RESPONSE_CODE    = CURLINFO_LONG   + 2,
-  CURLINFO_TOTAL_TIME       = CURLINFO_DOUBLE + 3,
-  CURLINFO_NAMELOOKUP_TIME  = CURLINFO_DOUBLE + 4,
-  CURLINFO_CONNECT_TIME     = CURLINFO_DOUBLE + 5,
-  CURLINFO_PRETRANSFER_TIME = CURLINFO_DOUBLE + 6,
-  CURLINFO_SIZE_UPLOAD      = CURLINFO_DOUBLE + 7,
-  CURLINFO_SIZE_DOWNLOAD    = CURLINFO_DOUBLE + 8,
-  CURLINFO_SPEED_DOWNLOAD   = CURLINFO_DOUBLE + 9,
-  CURLINFO_SPEED_UPLOAD     = CURLINFO_DOUBLE + 10,
-  CURLINFO_HEADER_SIZE      = CURLINFO_LONG   + 11,
-  CURLINFO_REQUEST_SIZE     = CURLINFO_LONG   + 12,
-  CURLINFO_SSL_VERIFYRESULT = CURLINFO_LONG   + 13,
-  CURLINFO_FILETIME         = CURLINFO_LONG   + 14,
-  CURLINFO_CONTENT_LENGTH_DOWNLOAD   = CURLINFO_DOUBLE + 15,
-  CURLINFO_CONTENT_LENGTH_UPLOAD     = CURLINFO_DOUBLE + 16,
-  CURLINFO_STARTTRANSFER_TIME = CURLINFO_DOUBLE + 17,
-  CURLINFO_CONTENT_TYPE     = CURLINFO_STRING + 18,
-  CURLINFO_REDIRECT_TIME    = CURLINFO_DOUBLE + 19,
-  CURLINFO_REDIRECT_COUNT   = CURLINFO_LONG   + 20,
-  CURLINFO_PRIVATE          = CURLINFO_STRING + 21,
-  CURLINFO_HTTP_CONNECTCODE = CURLINFO_LONG   + 22,
-  CURLINFO_HTTPAUTH_AVAIL   = CURLINFO_LONG   + 23,
-  CURLINFO_PROXYAUTH_AVAIL  = CURLINFO_LONG   + 24,
-  CURLINFO_OS_ERRNO         = CURLINFO_LONG   + 25,
-  CURLINFO_NUM_CONNECTS     = CURLINFO_LONG   + 26,
-  CURLINFO_SSL_ENGINES      = CURLINFO_SLIST  + 27,
-  CURLINFO_COOKIELIST       = CURLINFO_SLIST  + 28,
-  CURLINFO_LASTSOCKET       = CURLINFO_LONG   + 29,
-  CURLINFO_FTP_ENTRY_PATH   = CURLINFO_STRING + 30,
-  CURLINFO_REDIRECT_URL     = CURLINFO_STRING + 31,
-  CURLINFO_PRIMARY_IP       = CURLINFO_STRING + 32,
-  CURLINFO_APPCONNECT_TIME  = CURLINFO_DOUBLE + 33,
-  CURLINFO_CERTINFO         = CURLINFO_SLIST  + 34,
-  CURLINFO_CONDITION_UNMET  = CURLINFO_LONG   + 35,
-  CURLINFO_RTSP_SESSION_ID  = CURLINFO_STRING + 36,
-  CURLINFO_RTSP_CLIENT_CSEQ = CURLINFO_LONG   + 37,
-  CURLINFO_RTSP_SERVER_CSEQ = CURLINFO_LONG   + 38,
-  CURLINFO_RTSP_CSEQ_RECV   = CURLINFO_LONG   + 39,
-  /* Fill in new entries below here! */
-
-  CURLINFO_LASTONE          = 39
-} CURLINFO;
-
-/* CURLINFO_RESPONSE_CODE is the new name for the option previously known as
-   CURLINFO_HTTP_CODE */
-#define CURLINFO_HTTP_CODE CURLINFO_RESPONSE_CODE
-
-typedef enum {
-  CURLCLOSEPOLICY_NONE, /* first, never use this */
-
-  CURLCLOSEPOLICY_OLDEST,
-  CURLCLOSEPOLICY_LEAST_RECENTLY_USED,
-  CURLCLOSEPOLICY_LEAST_TRAFFIC,
-  CURLCLOSEPOLICY_SLOWEST,
-  CURLCLOSEPOLICY_CALLBACK,
-
-  CURLCLOSEPOLICY_LAST /* last, never use this */
-} curl_closepolicy;
-
-#define CURL_GLOBAL_SSL (1<<0)
-#define CURL_GLOBAL_WIN32 (1<<1)
-#define CURL_GLOBAL_ALL (CURL_GLOBAL_SSL|CURL_GLOBAL_WIN32)
-#define CURL_GLOBAL_NOTHING 0
-#define CURL_GLOBAL_DEFAULT CURL_GLOBAL_ALL
-
-
-/*****************************************************************************
- * Setup defines, protos etc for the sharing stuff.
- */
-
-/* Different data locks for a single share */
-typedef enum {
-  CURL_LOCK_DATA_NONE = 0,
-  /*  CURL_LOCK_DATA_SHARE is used internally to say that
-   *  the locking is just made to change the internal state of the share
-   *  itself.
-   */
-  CURL_LOCK_DATA_SHARE,
-  CURL_LOCK_DATA_COOKIE,
-  CURL_LOCK_DATA_DNS,
-  CURL_LOCK_DATA_SSL_SESSION,
-  CURL_LOCK_DATA_CONNECT,
-  CURL_LOCK_DATA_LAST
-} curl_lock_data;
-
-/* Different lock access types */
-typedef enum {
-  CURL_LOCK_ACCESS_NONE = 0,   /* unspecified action */
-  CURL_LOCK_ACCESS_SHARED = 1, /* for read perhaps */
-  CURL_LOCK_ACCESS_SINGLE = 2, /* for write perhaps */
-  CURL_LOCK_ACCESS_LAST        /* never use */
-} curl_lock_access;
-
-typedef void (*curl_lock_function)(CURL *handle,
-                                   curl_lock_data data,
-                                   curl_lock_access locktype,
-                                   void *userptr);
-typedef void (*curl_unlock_function)(CURL *handle,
-                                     curl_lock_data data,
-                                     void *userptr);
-
-typedef void CURLSH;
-
-typedef enum {
-  CURLSHE_OK,  /* all is fine */
-  CURLSHE_BAD_OPTION, /* 1 */
-  CURLSHE_IN_USE,     /* 2 */
-  CURLSHE_INVALID,    /* 3 */
-  CURLSHE_NOMEM,      /* out of memory */
-  CURLSHE_LAST /* never use */
-} CURLSHcode;
-
-typedef enum {
-  CURLSHOPT_NONE,  /* don't use */
-  CURLSHOPT_SHARE,   /* specify a data type to share */
-  CURLSHOPT_UNSHARE, /* specify which data type to stop sharing */
-  CURLSHOPT_LOCKFUNC,   /* pass in a 'curl_lock_function' pointer */
-  CURLSHOPT_UNLOCKFUNC, /* pass in a 'curl_unlock_function' pointer */
-  CURLSHOPT_USERDATA,   /* pass in a user data pointer used in the lock/unlock
-                           callback functions */
-  CURLSHOPT_LAST  /* never use */
-} CURLSHoption;
-
-CURL_EXTERN CURLSH *curl_share_init(void);
-CURL_EXTERN CURLSHcode curl_share_setopt(CURLSH *, CURLSHoption option, ...);
-CURL_EXTERN CURLSHcode curl_share_cleanup(CURLSH *);
-
-/****************************************************************************
- * Structures for querying information about the curl library at runtime.
- */
-
-typedef enum {
-  CURLVERSION_FIRST,
-  CURLVERSION_SECOND,
-  CURLVERSION_THIRD,
-  CURLVERSION_FOURTH,
-  CURLVERSION_LAST /* never actually use this */
-} CURLversion;
-
-/* The 'CURLVERSION_NOW' is the symbolic name meant to be used by
-   basically all programs ever that want to get version information. It is
-   meant to be a built-in version number for what kind of struct the caller
-   expects. If the struct ever changes, we redefine the NOW to another enum
-   from above. */
-#define CURLVERSION_NOW CURLVERSION_FOURTH
-
-typedef struct {
-  CURLversion age;          /* age of the returned struct */
-  const char *version;      /* LIBCURL_VERSION */
-  unsigned int version_num; /* LIBCURL_VERSION_NUM */
-  const char *host;         /* OS/host/cpu/machine when configured */
-  int features;             /* bitmask, see defines below */
-  const char *ssl_version;  /* human readable string */
-  long ssl_version_num;     /* not used anymore, always 0 */
-  const char *libz_version; /* human readable string */
-  /* protocols is terminated by an entry with a NULL protoname */
-  const char * const *protocols;
-
-  /* The fields below this were added in CURLVERSION_SECOND */
-  const char *ares;
-  int ares_num;
-
-  /* This field was added in CURLVERSION_THIRD */
-  const char *libidn;
-
-  /* These field were added in CURLVERSION_FOURTH */
-
-  /* Same as '_libiconv_version' if built with HAVE_ICONV */
-  int iconv_ver_num;
-
-  const char *libssh_version; /* human readable string */
-
-} curl_version_info_data;
-
-#define CURL_VERSION_IPV6      (1<<0)  /* IPv6-enabled */
-#define CURL_VERSION_KERBEROS4 (1<<1)  /* kerberos auth is supported */
-#define CURL_VERSION_SSL       (1<<2)  /* SSL options are present */
-#define CURL_VERSION_LIBZ      (1<<3)  /* libz features are present */
-#define CURL_VERSION_NTLM      (1<<4)  /* NTLM auth is supported */
-#define CURL_VERSION_GSSNEGOTIATE (1<<5) /* Negotiate auth support */
-#define CURL_VERSION_DEBUG     (1<<6)  /* built with debug capabilities */
-#define CURL_VERSION_ASYNCHDNS (1<<7)  /* asynchronous dns resolves */
-#define CURL_VERSION_SPNEGO    (1<<8)  /* SPNEGO auth */
-#define CURL_VERSION_LARGEFILE (1<<9)  /* supports files bigger than 2GB */
-#define CURL_VERSION_IDN       (1<<10) /* International Domain Names support */
-#define CURL_VERSION_SSPI      (1<<11) /* SSPI is supported */
-#define CURL_VERSION_CONV      (1<<12) /* character conversions supported */
-#define CURL_VERSION_CURLDEBUG (1<<13) /* debug memory tracking supported */
-
-/*
- * NAME curl_version_info()
- *
- * DESCRIPTION
- *
- * This function returns a pointer to a static copy of the version info
- * struct. See above.
- */
-CURL_EXTERN curl_version_info_data *curl_version_info(CURLversion);
-
-/*
- * NAME curl_easy_strerror()
- *
- * DESCRIPTION
- *
- * The curl_easy_strerror function may be used to turn a CURLcode value
- * into the equivalent human readable error string.  This is useful
- * for printing meaningful error messages.
- */
-CURL_EXTERN const char *curl_easy_strerror(CURLcode);
-
-/*
- * NAME curl_share_strerror()
- *
- * DESCRIPTION
- *
- * The curl_share_strerror function may be used to turn a CURLSHcode value
- * into the equivalent human readable error string.  This is useful
- * for printing meaningful error messages.
- */
-CURL_EXTERN const char *curl_share_strerror(CURLSHcode);
-
-/*
- * NAME curl_easy_pause()
- *
- * DESCRIPTION
- *
- * The curl_easy_pause function pauses or unpauses transfers. Select the new
- * state by setting the bitmask, use the convenience defines below.
- *
- */
-CURL_EXTERN CURLcode curl_easy_pause(CURL *handle, int bitmask);
-
-#define CURLPAUSE_RECV      (1<<0)
-#define CURLPAUSE_RECV_CONT (0)
-
-#define CURLPAUSE_SEND      (1<<2)
-#define CURLPAUSE_SEND_CONT (0)
-
-#define CURLPAUSE_ALL       (CURLPAUSE_RECV|CURLPAUSE_SEND)
-#define CURLPAUSE_CONT      (CURLPAUSE_RECV_CONT|CURLPAUSE_SEND_CONT)
-
-#ifdef  __cplusplus
-}
-#endif
-
-/* unfortunately, the easy.h and multi.h include files need options and info
-  stuff before they can be included! */
-#include "easy.h" /* nothing in curl is fun without the easy stuff */
-#include "multi.h"
-
-/* the typechecker doesn't work in C++ (yet) */
-#if defined(__GNUC__) && defined(__GNUC_MINOR__) && \
-    ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) && \
-    !defined(__cplusplus) && !defined(CURL_DISABLE_TYPECHECK)
-#include "typecheck-gcc.h"
-#else
-#if defined(__STDC__) && (__STDC__ >= 1)
-/* This preprocessor magic that replaces a call with the exact same call is
-   only done to make sure application authors pass exactly three arguments
-   to these functions. */
-#define curl_easy_setopt(handle,opt,param) curl_easy_setopt(handle,opt,param)
-#define curl_easy_getinfo(handle,info,arg) curl_easy_getinfo(handle,info,arg)
-#define curl_share_setopt(share,opt,param) curl_share_setopt(share,opt,param)
-#define curl_multi_setopt(handle,opt,param) curl_multi_setopt(handle,opt,param)
-#endif /* __STDC__ >= 1 */
-#endif /* gcc >= 4.3 && !__cplusplus */
-
-#endif /* __CURL_CURL_H */
diff --git a/src/other/curl/include/curl/curlbuild.h.cmake b/src/other/curl/include/curl/curlbuild.h.cmake
deleted file mode 100644
index 3aa772f..0000000
--- a/src/other/curl/include/curl/curlbuild.h.cmake
+++ /dev/null
@@ -1,180 +0,0 @@
-#ifndef __CURL_CURLBUILD_H
-#define __CURL_CURLBUILD_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* ================================================================ */
-/*               NOTES FOR CONFIGURE CAPABLE SYSTEMS                */
-/* ================================================================ */
-
-/*
- * NOTE 1:
- * -------
- *
- * Nothing in this file is intended to be modified or adjusted by the
- * curl library user nor by the curl library builder.
- *
- * If you think that something actually needs to be changed, adjusted
- * or fixed in this file, then, report it on the libcurl development
- * mailing list: http://cool.haxx.se/mailman/listinfo/curl-library/
- *
- * This header file shall only export symbols which are 'curl' or 'CURL'
- * prefixed, otherwise public name space would be polluted.
- *
- * NOTE 2:
- * -------
- *
- * Right now you might be staring at file include/curl/curlbuild.h.in or
- * at file include/curl/curlbuild.h, this is due to the following reason:
- *
- * On systems capable of running the configure script, the configure process
- * will overwrite the distributed include/curl/curlbuild.h file with one that
- * is suitable and specific to the library being configured and built, which
- * is generated from the include/curl/curlbuild.h.in template file.
- *
- */
-
-/* ================================================================ */
-/*  DEFINITION OF THESE SYMBOLS SHALL NOT TAKE PLACE ANYWHERE ELSE  */
-/* ================================================================ */
-
-#ifdef CURL_SIZEOF_LONG
-#  error "CURL_SIZEOF_LONG shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_SIZEOF_LONG_already_defined
-#endif
-
-#ifdef CURL_TYPEOF_CURL_SOCKLEN_T
-#  error "CURL_TYPEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_TYPEOF_CURL_SOCKLEN_T_already_defined
-#endif
-
-#ifdef CURL_SIZEOF_CURL_SOCKLEN_T
-#  error "CURL_SIZEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_SIZEOF_CURL_SOCKLEN_T_already_defined
-#endif
-#ifdef CURL_TYPEOF_CURL_OFF_T
-#  error "CURL_TYPEOF_CURL_OFF_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_TYPEOF_CURL_OFF_T_already_defined
-#endif
-
-#ifdef CURL_FORMAT_CURL_OFF_T
-#  error "CURL_FORMAT_CURL_OFF_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_FORMAT_CURL_OFF_T_already_defined
-#endif
-
-#ifdef CURL_FORMAT_CURL_OFF_TU
-#  error "CURL_FORMAT_CURL_OFF_TU shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_FORMAT_CURL_OFF_TU_already_defined
-#endif
-
-#ifdef CURL_FORMAT_OFF_T
-#  error "CURL_FORMAT_OFF_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_FORMAT_OFF_T_already_defined
-#endif
-
-#ifdef CURL_SIZEOF_CURL_OFF_T
-#  error "CURL_SIZEOF_CURL_OFF_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_SIZEOF_CURL_OFF_T_already_defined
-#endif
-
-#ifdef CURL_SUFFIX_CURL_OFF_T
-#  error "CURL_SUFFIX_CURL_OFF_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_T_already_defined
-#endif
-
-#ifdef CURL_SUFFIX_CURL_OFF_TU
-#  error "CURL_SUFFIX_CURL_OFF_TU shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_TU_already_defined
-#endif
-
-/* ================================================================ */
-/*  EXTERNAL INTERFACE SETTINGS FOR CONFIGURE CAPABLE SYSTEMS ONLY  */
-/* ================================================================ */
-
-/* Configure process defines this to 1 when it finds out that system   */
-/* header file sys/types.h must be included by the external interface. */
-#cmakedefine CURL_PULL_SYS_TYPES_H ${CURL_PULL_SYS_TYPES_H}
-#ifdef CURL_PULL_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-
-/* Configure process defines this to 1 when it finds out that system */
-/* header file stdint.h must be included by the external interface.  */
-#cmakedefine CURL_PULL_STDINT_H ${CURL_PULL_STDINT_H}
-#ifdef CURL_PULL_STDINT_H
-#  include <stdint.h>
-#endif
-
-/* Configure process defines this to 1 when it finds out that system  */
-/* header file inttypes.h must be included by the external interface. */
-#cmakedefine CURL_PULL_INTTYPES_H ${CURL_PULL_INTTYPES_H}
-#ifdef CURL_PULL_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-/* The size of `long', as computed by sizeof. */
-#cmakedefine CURL_SIZEOF_LONG ${CURL_SIZEOF_LONG}
-
-/* Integral data type used for curl_socklen_t. */
-#cmakedefine CURL_TYPEOF_CURL_SOCKLEN_T ${CURL_TYPEOF_CURL_SOCKLEN_T}
-
-/* on windows socklen_t is in here */
-#ifdef _WIN32
-#  include <winsock2.h>
-#  include <ws2tcpip.h>
-#endif
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-
-/* Data type definition of curl_socklen_t. */
-typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t;
-
-/* The size of `curl_socklen_t', as computed by sizeof. */
-#cmakedefine CURL_SIZEOF_CURL_SOCKLEN_T ${CURL_SIZEOF_CURL_SOCKLEN_T}
-
-/* Signed integral data type used for curl_off_t. */
-#cmakedefine CURL_TYPEOF_CURL_OFF_T ${CURL_TYPEOF_CURL_OFF_T}
-
-/* Data type definition of curl_off_t. */
-typedef CURL_TYPEOF_CURL_OFF_T curl_off_t;
-
-/* curl_off_t formatting string directive without "%" conversion specifier. */
-#cmakedefine CURL_FORMAT_CURL_OFF_T "${CURL_FORMAT_CURL_OFF_T}"
-
-/* unsigned curl_off_t formatting string without "%" conversion specifier. */
-#cmakedefine CURL_FORMAT_CURL_OFF_TU "${CURL_FORMAT_CURL_OFF_TU}"
-
-/* curl_off_t formatting string directive with "%" conversion specifier. */
-#cmakedefine CURL_FORMAT_OFF_T "${CURL_FORMAT_OFF_T}"
-
-/* The size of `curl_off_t', as computed by sizeof. */
-#cmakedefine CURL_SIZEOF_CURL_OFF_T ${CURL_SIZEOF_CURL_OFF_T}
-
-/* curl_off_t constant suffix. */
-#cmakedefine CURL_SUFFIX_CURL_OFF_T ${CURL_SUFFIX_CURL_OFF_T}
-
-/* unsigned curl_off_t constant suffix. */
-#cmakedefine CURL_SUFFIX_CURL_OFF_TU ${CURL_SUFFIX_CURL_OFF_TU}
-
-#endif /* __CURL_CURLBUILD_H */
diff --git a/src/other/curl/include/curl/curlbuild.h.in b/src/other/curl/include/curl/curlbuild.h.in
deleted file mode 100644
index cb1de80..0000000
--- a/src/other/curl/include/curl/curlbuild.h.in
+++ /dev/null
@@ -1,190 +0,0 @@
-#ifndef __CURL_CURLBUILD_H
-#define __CURL_CURLBUILD_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* ================================================================ */
-/*               NOTES FOR CONFIGURE CAPABLE SYSTEMS                */
-/* ================================================================ */
-
-/*
- * NOTE 1:
- * -------
- *
- * Nothing in this file is intended to be modified or adjusted by the
- * curl library user nor by the curl library builder.
- *
- * If you think that something actually needs to be changed, adjusted
- * or fixed in this file, then, report it on the libcurl development
- * mailing list: http://cool.haxx.se/mailman/listinfo/curl-library/
- *
- * This header file shall only export symbols which are 'curl' or 'CURL'
- * prefixed, otherwise public name space would be polluted.
- *
- * NOTE 2:
- * -------
- *
- * Right now you might be staring at file include/curl/curlbuild.h.in or
- * at file include/curl/curlbuild.h, this is due to the following reason:
- *
- * On systems capable of running the configure script, the configure process
- * will overwrite the distributed include/curl/curlbuild.h file with one that
- * is suitable and specific to the library being configured and built, which
- * is generated from the include/curl/curlbuild.h.in template file.
- *
- */
-
-/* ================================================================ */
-/*  DEFINITION OF THESE SYMBOLS SHALL NOT TAKE PLACE ANYWHERE ELSE  */
-/* ================================================================ */
-
-#ifdef CURL_SIZEOF_LONG
-#  error "CURL_SIZEOF_LONG shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_SIZEOF_LONG_already_defined
-#endif
-
-#ifdef CURL_TYPEOF_CURL_SOCKLEN_T
-#  error "CURL_TYPEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_TYPEOF_CURL_SOCKLEN_T_already_defined
-#endif
-
-#ifdef CURL_SIZEOF_CURL_SOCKLEN_T
-#  error "CURL_SIZEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_SIZEOF_CURL_SOCKLEN_T_already_defined
-#endif
-
-#ifdef CURL_TYPEOF_CURL_OFF_T
-#  error "CURL_TYPEOF_CURL_OFF_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_TYPEOF_CURL_OFF_T_already_defined
-#endif
-
-#ifdef CURL_FORMAT_CURL_OFF_T
-#  error "CURL_FORMAT_CURL_OFF_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_FORMAT_CURL_OFF_T_already_defined
-#endif
-
-#ifdef CURL_FORMAT_CURL_OFF_TU
-#  error "CURL_FORMAT_CURL_OFF_TU shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_FORMAT_CURL_OFF_TU_already_defined
-#endif
-
-#ifdef CURL_FORMAT_OFF_T
-#  error "CURL_FORMAT_OFF_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_FORMAT_OFF_T_already_defined
-#endif
-
-#ifdef CURL_SIZEOF_CURL_OFF_T
-#  error "CURL_SIZEOF_CURL_OFF_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_SIZEOF_CURL_OFF_T_already_defined
-#endif
-
-#ifdef CURL_SUFFIX_CURL_OFF_T
-#  error "CURL_SUFFIX_CURL_OFF_T shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_T_already_defined
-#endif
-
-#ifdef CURL_SUFFIX_CURL_OFF_TU
-#  error "CURL_SUFFIX_CURL_OFF_TU shall not be defined except in curlbuild.h"
-   Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_TU_already_defined
-#endif
-
-/* ================================================================ */
-/*  EXTERNAL INTERFACE SETTINGS FOR CONFIGURE CAPABLE SYSTEMS ONLY  */
-/* ================================================================ */
-
-/* Configure process defines this to 1 when it finds out that system  */
-/* header file ws2tcpip.h must be included by the external interface. */
-#undef CURL_PULL_WS2TCPIP_H
-#ifdef CURL_PULL_WS2TCPIP_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  include <winsock2.h>
-#  include <ws2tcpip.h>
-#endif
-
-/* Configure process defines this to 1 when it finds out that system   */
-/* header file sys/types.h must be included by the external interface. */
-#undef CURL_PULL_SYS_TYPES_H
-#ifdef CURL_PULL_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-
-/* Configure process defines this to 1 when it finds out that system */
-/* header file stdint.h must be included by the external interface.  */
-#undef CURL_PULL_STDINT_H
-#ifdef CURL_PULL_STDINT_H
-#  include <stdint.h>
-#endif
-
-/* Configure process defines this to 1 when it finds out that system  */
-/* header file inttypes.h must be included by the external interface. */
-#undef CURL_PULL_INTTYPES_H
-#ifdef CURL_PULL_INTTYPES_H
-#  include <inttypes.h>
-#endif
-
-/* Configure process defines this to 1 when it finds out that system    */
-/* header file sys/socket.h must be included by the external interface. */
-#undef CURL_PULL_SYS_SOCKET_H
-#ifdef CURL_PULL_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-
-/* The size of `long', as computed by sizeof. */
-#undef CURL_SIZEOF_LONG
-
-/* Integral data type used for curl_socklen_t. */
-#undef CURL_TYPEOF_CURL_SOCKLEN_T
-
-/* The size of `curl_socklen_t', as computed by sizeof. */
-#undef CURL_SIZEOF_CURL_SOCKLEN_T
-
-/* Data type definition of curl_socklen_t. */
-typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t;
-
-/* Signed integral data type used for curl_off_t. */
-#undef CURL_TYPEOF_CURL_OFF_T
-
-/* Data type definition of curl_off_t. */
-typedef CURL_TYPEOF_CURL_OFF_T curl_off_t;
-
-/* curl_off_t formatting string directive without "%" conversion specifier. */
-#undef CURL_FORMAT_CURL_OFF_T
-
-/* unsigned curl_off_t formatting string without "%" conversion specifier. */
-#undef CURL_FORMAT_CURL_OFF_TU
-
-/* curl_off_t formatting string directive with "%" conversion specifier. */
-#undef CURL_FORMAT_OFF_T
-
-/* The size of `curl_off_t', as computed by sizeof. */
-#undef CURL_SIZEOF_CURL_OFF_T
-
-/* curl_off_t constant suffix. */
-#undef CURL_SUFFIX_CURL_OFF_T
-
-/* unsigned curl_off_t constant suffix. */
-#undef CURL_SUFFIX_CURL_OFF_TU
-
-#endif /* __CURL_CURLBUILD_H */
diff --git a/src/other/curl/include/curl/curlrules.h b/src/other/curl/include/curl/curlrules.h
deleted file mode 100644
index 8aad1df..0000000
--- a/src/other/curl/include/curl/curlrules.h
+++ /dev/null
@@ -1,252 +0,0 @@
-#ifndef __CURL_CURLRULES_H
-#define __CURL_CURLRULES_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* ================================================================ */
-/*                    COMPILE TIME SANITY CHECKS                    */
-/* ================================================================ */
-
-/*
- * NOTE 1:
- * -------
- *
- * All checks done in this file are intentionally placed in a public
- * header file which is pulled by curl/curl.h when an application is
- * being built using an already built libcurl library. Additionally
- * this file is also included and used when building the library.
- *
- * If compilation fails on this file it is certainly sure that the
- * problem is elsewhere. It could be a problem in the curlbuild.h
- * header file, or simply that you are using different compilation
- * settings than those used to build the library.
- *
- * Nothing in this file is intended to be modified or adjusted by the
- * curl library user nor by the curl library builder.
- *
- * Do not deactivate any check, these are done to make sure that the
- * library is properly built and used.
- *
- * You can find further help on the libcurl development mailing list:
- * http://cool.haxx.se/mailman/listinfo/curl-library/
- *
- * NOTE 2
- * ------
- *
- * Some of the following compile time checks are based on the fact
- * that the dimension of a constant array can not be a negative one.
- * In this way if the compile time verification fails, the compilation
- * will fail issuing an error. The error description wording is compiler
- * dependent but it will be quite similar to one of the following:
- *
- *   "negative subscript or subscript is too large"
- *   "array must have at least one element"
- *   "-1 is an illegal array size"
- *   "size of array is negative"
- *
- * If you are building an application which tries to use an already
- * built libcurl library and you are getting this kind of errors on
- * this file, it is a clear indication that there is a mismatch between
- * how the library was built and how you are trying to use it for your
- * application. Your already compiled or binary library provider is the
- * only one who can give you the details you need to properly use it.
- */
-
-/*
- * Verify that some macros are actually defined.
- */
-
-#ifndef CURL_SIZEOF_LONG
-#  error "CURL_SIZEOF_LONG definition is missing!"
-   Error Compilation_aborted_CURL_SIZEOF_LONG_is_missing
-#endif
-
-#ifndef CURL_TYPEOF_CURL_SOCKLEN_T
-#  error "CURL_TYPEOF_CURL_SOCKLEN_T definition is missing!"
-   Error Compilation_aborted_CURL_TYPEOF_CURL_SOCKLEN_T_is_missing
-#endif
-
-#ifndef CURL_SIZEOF_CURL_SOCKLEN_T
-#  error "CURL_SIZEOF_CURL_SOCKLEN_T definition is missing!"
-   Error Compilation_aborted_CURL_SIZEOF_CURL_SOCKLEN_T_is_missing
-#endif
-
-#ifndef CURL_TYPEOF_CURL_OFF_T
-#  error "CURL_TYPEOF_CURL_OFF_T definition is missing!"
-   Error Compilation_aborted_CURL_TYPEOF_CURL_OFF_T_is_missing
-#endif
-
-#ifndef CURL_FORMAT_CURL_OFF_T
-#  error "CURL_FORMAT_CURL_OFF_T definition is missing!"
-   Error Compilation_aborted_CURL_FORMAT_CURL_OFF_T_is_missing
-#endif
-
-#ifndef CURL_FORMAT_CURL_OFF_TU
-#  error "CURL_FORMAT_CURL_OFF_TU definition is missing!"
-   Error Compilation_aborted_CURL_FORMAT_CURL_OFF_TU_is_missing
-#endif
-
-#ifndef CURL_FORMAT_OFF_T
-#  error "CURL_FORMAT_OFF_T definition is missing!"
-   Error Compilation_aborted_CURL_FORMAT_OFF_T_is_missing
-#endif
-
-#ifndef CURL_SIZEOF_CURL_OFF_T
-#  error "CURL_SIZEOF_CURL_OFF_T definition is missing!"
-   Error Compilation_aborted_CURL_SIZEOF_CURL_OFF_T_is_missing
-#endif
-
-#ifndef CURL_SUFFIX_CURL_OFF_T
-#  error "CURL_SUFFIX_CURL_OFF_T definition is missing!"
-   Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_T_is_missing
-#endif
-
-#ifndef CURL_SUFFIX_CURL_OFF_TU
-#  error "CURL_SUFFIX_CURL_OFF_TU definition is missing!"
-   Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_TU_is_missing
-#endif
-
-/*
- * Macros private to this header file.
- */
-
-#define CurlchkszEQ(t, s) sizeof(t) == s ? 1 : -1
-
-#define CurlchkszGE(t1, t2) sizeof(t1) >= sizeof(t2) ? 1 : -1
-
-/*
- * Verify that the size previously defined and expected for long
- * is the same as the one reported by sizeof() at compile time.
- */
-
-typedef char
-  __curl_rule_01__
-    [CurlchkszEQ(long, CURL_SIZEOF_LONG)];
-
-/*
- * Verify that the size previously defined and expected for
- * curl_off_t is actually the the same as the one reported
- * by sizeof() at compile time.
- */
-
-typedef char
-  __curl_rule_02__
-    [CurlchkszEQ(curl_off_t, CURL_SIZEOF_CURL_OFF_T)];
-
-/*
- * Verify at compile time that the size of curl_off_t as reported
- * by sizeof() is greater or equal than the one reported for long
- * for the current compilation.
- */
-
-typedef char
-  __curl_rule_03__
-    [CurlchkszGE(curl_off_t, long)];
-
-/*
- * Verify that the size previously defined and expected for
- * curl_socklen_t is actually the the same as the one reported
- * by sizeof() at compile time.
- */
-
-typedef char
-  __curl_rule_04__
-    [CurlchkszEQ(curl_socklen_t, CURL_SIZEOF_CURL_SOCKLEN_T)];
-
-/*
- * Verify at compile time that the size of curl_socklen_t as reported
- * by sizeof() is greater or equal than the one reported for int for
- * the current compilation.
- */
-
-typedef char
-  __curl_rule_05__
-    [CurlchkszGE(curl_socklen_t, int)];
-
-/* ================================================================ */
-/*          EXTERNALLY AND INTERNALLY VISIBLE DEFINITIONS           */
-/* ================================================================ */
-
-/*
- * CURL_ISOCPP and CURL_OFF_T_C definitions are done here in order to allow
- * these to be visible and exported by the external libcurl interface API,
- * while also making them visible to the library internals, simply including
- * setup.h, without actually needing to include curl.h internally.
- * If some day this section would grow big enough, all this should be moved
- * to its own header file.
- */
-
-/*
- * Figure out if we can use the ## preprocessor operator, which is supported
- * by ISO/ANSI C and C++. Some compilers support it without setting __STDC__
- * or  __cplusplus so we need to carefully check for them too.
- */
-
-#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) || \
-  defined(__HP_aCC) || defined(__BORLANDC__) || defined(__LCC__) || \
-  defined(__POCC__) || defined(__SALFORDC__) || defined(__HIGHC__) || \
-  defined(__ILEC400__)
-  /* This compiler is believed to have an ISO compatible preprocessor */
-#define CURL_ISOCPP
-#else
-  /* This compiler is believed NOT to have an ISO compatible preprocessor */
-#undef CURL_ISOCPP
-#endif
-
-/*
- * Macros for minimum-width signed and unsigned curl_off_t integer constants.
- */
-
-#ifdef CURL_ISOCPP
-#  define __CURL_OFF_T_C_HELPER2(Val,Suffix) Val ## Suffix
-#else
-#  define __CURL_OFF_T_C_HELPER2(Val,Suffix) Val/**/Suffix
-#endif
-#define __CURL_OFF_T_C_HELPER1(Val,Suffix) __CURL_OFF_T_C_HELPER2(Val,Suffix)
-#define CURL_OFF_T_C(Val)  __CURL_OFF_T_C_HELPER1(Val,CURL_SUFFIX_CURL_OFF_T)
-#define CURL_OFF_TU_C(Val) __CURL_OFF_T_C_HELPER1(Val,CURL_SUFFIX_CURL_OFF_TU)
-
-/*
- * Get rid of macros private to this header file.
- */
-
-#undef CurlchkszEQ
-#undef CurlchkszGE
-
-/*
- * Get rid of macros not intended to exist beyond this point.
- */
-
-#undef CURL_PULL_WS2TCPIP_H
-#undef CURL_PULL_SYS_TYPES_H
-#undef CURL_PULL_SYS_SOCKET_H
-#undef CURL_PULL_STDINT_H
-#undef CURL_PULL_INTTYPES_H
-
-#undef CURL_TYPEOF_CURL_SOCKLEN_T
-#undef CURL_TYPEOF_CURL_OFF_T
-
-#ifdef CURL_NO_OLDIES
-#undef CURL_FORMAT_OFF_T /* not required since 7.19.0 - obsoleted in 7.20.0 */
-#endif
-
-#endif /* __CURL_CURLRULES_H */
diff --git a/src/other/curl/include/curl/curlver.h b/src/other/curl/include/curl/curlver.h
deleted file mode 100644
index 35ca9a8..0000000
--- a/src/other/curl/include/curl/curlver.h
+++ /dev/null
@@ -1,69 +0,0 @@
-#ifndef __CURL_CURLVER_H
-#define __CURL_CURLVER_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* This header file contains nothing but libcurl version info, generated by
-   a script at release-time. This was made its own header file in 7.11.2 */
-
-/* This is the global package copyright */
-#define LIBCURL_COPYRIGHT "1996 - 2010 Daniel Stenberg, <daniel at haxx.se>."
-
-/* This is the version number of the libcurl package from which this header
-   file origins: */
-#define LIBCURL_VERSION "7.20.1"
-
-/* The numeric version number is also available "in parts" by using these
-   defines: */
-#define LIBCURL_VERSION_MAJOR 7
-#define LIBCURL_VERSION_MINOR 20
-#define LIBCURL_VERSION_PATCH 1
-
-/* This is the numeric version of the libcurl version number, meant for easier
-   parsing and comparions by programs. The LIBCURL_VERSION_NUM define will
-   always follow this syntax:
-
-         0xXXYYZZ
-
-   Where XX, YY and ZZ are the main version, release and patch numbers in
-   hexadecimal (using 8 bits each). All three numbers are always represented
-   using two digits.  1.2 would appear as "0x010200" while version 9.11.7
-   appears as "0x090b07".
-
-   This 6-digit (24 bits) hexadecimal number does not show pre-release number,
-   and it is always a greater number in a more recent release. It makes
-   comparisons with greater than and less than work.
-*/
-#define LIBCURL_VERSION_NUM 0x071401
-
-/*
- * This is the date and time when the full source package was created. The
- * timestamp is not stored in git, as the timestamp is properly set in the
- * tarballs by the maketgz script.
- *
- * The format of the date should follow this template:
- *
- * "Mon Feb 12 11:35:33 UTC 2007"
- */
-#define LIBCURL_TIMESTAMP "Wed Apr 14 14:55:20 UTC 2010"
-
-#endif /* __CURL_CURLVER_H */
diff --git a/src/other/curl/include/curl/easy.h b/src/other/curl/include/curl/easy.h
deleted file mode 100644
index 1ddb4fe..0000000
--- a/src/other/curl/include/curl/easy.h
+++ /dev/null
@@ -1,102 +0,0 @@
-#ifndef __CURL_EASY_H
-#define __CURL_EASY_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#ifdef  __cplusplus
-extern "C" {
-#endif
-
-CURL_EXTERN CURL *curl_easy_init(void);
-CURL_EXTERN CURLcode curl_easy_setopt(CURL *curl, CURLoption option, ...);
-CURL_EXTERN CURLcode curl_easy_perform(CURL *curl);
-CURL_EXTERN void curl_easy_cleanup(CURL *curl);
-
-/*
- * NAME curl_easy_getinfo()
- *
- * DESCRIPTION
- *
- * Request internal information from the curl session with this function.  The
- * third argument MUST be a pointer to a long, a pointer to a char * or a
- * pointer to a double (as the documentation describes elsewhere).  The data
- * pointed to will be filled in accordingly and can be relied upon only if the
- * function returns CURLE_OK.  This function is intended to get used *AFTER* a
- * performed transfer, all results from this function are undefined until the
- * transfer is completed.
- */
-CURL_EXTERN CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ...);
-
-
-/*
- * NAME curl_easy_duphandle()
- *
- * DESCRIPTION
- *
- * Creates a new curl session handle with the same options set for the handle
- * passed in. Duplicating a handle could only be a matter of cloning data and
- * options, internal state info and things like persistant connections cannot
- * be transfered. It is useful in multithreaded applications when you can run
- * curl_easy_duphandle() for each new thread to avoid a series of identical
- * curl_easy_setopt() invokes in every thread.
- */
-CURL_EXTERN CURL* curl_easy_duphandle(CURL *curl);
-
-/*
- * NAME curl_easy_reset()
- *
- * DESCRIPTION
- *
- * Re-initializes a CURL handle to the default values. This puts back the
- * handle to the same state as it was in when it was just created.
- *
- * It does keep: live connections, the Session ID cache, the DNS cache and the
- * cookies.
- */
-CURL_EXTERN void curl_easy_reset(CURL *curl);
-
-/*
- * NAME curl_easy_recv()
- *
- * DESCRIPTION
- *
- * Receives data from the connected socket. Use after successful
- * curl_easy_perform() with CURLOPT_CONNECT_ONLY option.
- */
-CURL_EXTERN CURLcode curl_easy_recv(CURL *curl, void *buffer, size_t buflen,
-                                    size_t *n);
-
-/*
- * NAME curl_easy_send()
- *
- * DESCRIPTION
- *
- * Sends data over the connected socket. Use after successful
- * curl_easy_perform() with CURLOPT_CONNECT_ONLY option.
- */
-CURL_EXTERN CURLcode curl_easy_send(CURL *curl, const void *buffer,
-                                    size_t buflen, size_t *n);
-
-#ifdef  __cplusplus
-}
-#endif
-
-#endif
diff --git a/src/other/curl/include/curl/mprintf.h b/src/other/curl/include/curl/mprintf.h
deleted file mode 100644
index de7dd2f..0000000
--- a/src/other/curl/include/curl/mprintf.h
+++ /dev/null
@@ -1,81 +0,0 @@
-#ifndef __CURL_MPRINTF_H
-#define __CURL_MPRINTF_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2006, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include <stdarg.h>
-#include <stdio.h> /* needed for FILE */
-
-#include "curl.h"
-
-#ifdef  __cplusplus
-extern "C" {
-#endif
-
-CURL_EXTERN int curl_mprintf(const char *format, ...);
-CURL_EXTERN int curl_mfprintf(FILE *fd, const char *format, ...);
-CURL_EXTERN int curl_msprintf(char *buffer, const char *format, ...);
-CURL_EXTERN int curl_msnprintf(char *buffer, size_t maxlength,
-                               const char *format, ...);
-CURL_EXTERN int curl_mvprintf(const char *format, va_list args);
-CURL_EXTERN int curl_mvfprintf(FILE *fd, const char *format, va_list args);
-CURL_EXTERN int curl_mvsprintf(char *buffer, const char *format, va_list args);
-CURL_EXTERN int curl_mvsnprintf(char *buffer, size_t maxlength,
-                                const char *format, va_list args);
-CURL_EXTERN char *curl_maprintf(const char *format, ...);
-CURL_EXTERN char *curl_mvaprintf(const char *format, va_list args);
-
-#ifdef _MPRINTF_REPLACE
-# undef printf
-# undef fprintf
-# undef sprintf
-# undef vsprintf
-# undef snprintf
-# undef vprintf
-# undef vfprintf
-# undef vsnprintf
-# undef aprintf
-# undef vaprintf
-# define printf curl_mprintf
-# define fprintf curl_mfprintf
-#ifdef CURLDEBUG
-/* When built with CURLDEBUG we define away the sprintf() functions since we
-   don't want internal code to be using them */
-# define sprintf sprintf_was_used
-# define vsprintf vsprintf_was_used
-#else
-# define sprintf curl_msprintf
-# define vsprintf curl_mvsprintf
-#endif
-# define snprintf curl_msnprintf
-# define vprintf curl_mvprintf
-# define vfprintf curl_mvfprintf
-# define vsnprintf curl_mvsnprintf
-# define aprintf curl_maprintf
-# define vaprintf curl_mvaprintf
-#endif
-
-#ifdef  __cplusplus
-}
-#endif
-
-#endif /* __CURL_MPRINTF_H */
diff --git a/src/other/curl/include/curl/multi.h b/src/other/curl/include/curl/multi.h
deleted file mode 100644
index f965666..0000000
--- a/src/other/curl/include/curl/multi.h
+++ /dev/null
@@ -1,345 +0,0 @@
-#ifndef __CURL_MULTI_H
-#define __CURL_MULTI_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-/*
-  This is an "external" header file. Don't give away any internals here!
-
-  GOALS
-
-  o Enable a "pull" interface. The application that uses libcurl decides where
-    and when to ask libcurl to get/send data.
-
-  o Enable multiple simultaneous transfers in the same thread without making it
-    complicated for the application.
-
-  o Enable the application to select() on its own file descriptors and curl's
-    file descriptors simultaneous easily.
-
-*/
-
-/*
- * This header file should not really need to include "curl.h" since curl.h
- * itself includes this file and we expect user applications to do #include
- * <curl/curl.h> without the need for especially including multi.h.
- *
- * For some reason we added this include here at one point, and rather than to
- * break existing (wrongly written) libcurl applications, we leave it as-is
- * but with this warning attached.
- */
-#include "curl.h"
-
-#ifdef  __cplusplus
-extern "C" {
-#endif
-
-typedef void CURLM;
-
-typedef enum {
-  CURLM_CALL_MULTI_PERFORM = -1, /* please call curl_multi_perform() or
-                                    curl_multi_socket*() soon */
-  CURLM_OK,
-  CURLM_BAD_HANDLE,      /* the passed-in handle is not a valid CURLM handle */
-  CURLM_BAD_EASY_HANDLE, /* an easy handle was not good/valid */
-  CURLM_OUT_OF_MEMORY,   /* if you ever get this, you're in deep sh*t */
-  CURLM_INTERNAL_ERROR,  /* this is a libcurl bug */
-  CURLM_BAD_SOCKET,      /* the passed in socket argument did not match */
-  CURLM_UNKNOWN_OPTION,  /* curl_multi_setopt() with unsupported option */
-  CURLM_LAST
-} CURLMcode;
-
-/* just to make code nicer when using curl_multi_socket() you can now check
-   for CURLM_CALL_MULTI_SOCKET too in the same style it works for
-   curl_multi_perform() and CURLM_CALL_MULTI_PERFORM */
-#define CURLM_CALL_MULTI_SOCKET CURLM_CALL_MULTI_PERFORM
-
-typedef enum {
-  CURLMSG_NONE, /* first, not used */
-  CURLMSG_DONE, /* This easy handle has completed. 'result' contains
-                   the CURLcode of the transfer */
-  CURLMSG_LAST /* last, not used */
-} CURLMSG;
-
-struct CURLMsg {
-  CURLMSG msg;       /* what this message means */
-  CURL *easy_handle; /* the handle it concerns */
-  union {
-    void *whatever;    /* message-specific data */
-    CURLcode result;   /* return code for transfer */
-  } data;
-};
-typedef struct CURLMsg CURLMsg;
-
-/*
- * Name:    curl_multi_init()
- *
- * Desc:    inititalize multi-style curl usage
- *
- * Returns: a new CURLM handle to use in all 'curl_multi' functions.
- */
-CURL_EXTERN CURLM *curl_multi_init(void);
-
-/*
- * Name:    curl_multi_add_handle()
- *
- * Desc:    add a standard curl handle to the multi stack
- *
- * Returns: CURLMcode type, general multi error code.
- */
-CURL_EXTERN CURLMcode curl_multi_add_handle(CURLM *multi_handle,
-                                            CURL *curl_handle);
-
- /*
-  * Name:    curl_multi_remove_handle()
-  *
-  * Desc:    removes a curl handle from the multi stack again
-  *
-  * Returns: CURLMcode type, general multi error code.
-  */
-CURL_EXTERN CURLMcode curl_multi_remove_handle(CURLM *multi_handle,
-                                               CURL *curl_handle);
-
- /*
-  * Name:    curl_multi_fdset()
-  *
-  * Desc:    Ask curl for its fd_set sets. The app can use these to select() or
-  *          poll() on. We want curl_multi_perform() called as soon as one of
-  *          them are ready.
-  *
-  * Returns: CURLMcode type, general multi error code.
-  */
-CURL_EXTERN CURLMcode curl_multi_fdset(CURLM *multi_handle,
-                                       fd_set *read_fd_set,
-                                       fd_set *write_fd_set,
-                                       fd_set *exc_fd_set,
-                                       int *max_fd);
-
- /*
-  * Name:    curl_multi_perform()
-  *
-  * Desc:    When the app thinks there's data available for curl it calls this
-  *          function to read/write whatever there is right now. This returns
-  *          as soon as the reads and writes are done. This function does not
-  *          require that there actually is data available for reading or that
-  *          data can be written, it can be called just in case. It returns
-  *          the number of handles that still transfer data in the second
-  *          argument's integer-pointer.
-  *
-  * Returns: CURLMcode type, general multi error code. *NOTE* that this only
-  *          returns errors etc regarding the whole multi stack. There might
-  *          still have occurred problems on invidual transfers even when this
-  *          returns OK.
-  */
-CURL_EXTERN CURLMcode curl_multi_perform(CURLM *multi_handle,
-                                         int *running_handles);
-
- /*
-  * Name:    curl_multi_cleanup()
-  *
-  * Desc:    Cleans up and removes a whole multi stack. It does not free or
-  *          touch any individual easy handles in any way. We need to define
-  *          in what state those handles will be if this function is called
-  *          in the middle of a transfer.
-  *
-  * Returns: CURLMcode type, general multi error code.
-  */
-CURL_EXTERN CURLMcode curl_multi_cleanup(CURLM *multi_handle);
-
-/*
- * Name:    curl_multi_info_read()
- *
- * Desc:    Ask the multi handle if there's any messages/informationals from
- *          the individual transfers. Messages include informationals such as
- *          error code from the transfer or just the fact that a transfer is
- *          completed. More details on these should be written down as well.
- *
- *          Repeated calls to this function will return a new struct each
- *          time, until a special "end of msgs" struct is returned as a signal
- *          that there is no more to get at this point.
- *
- *          The data the returned pointer points to will not survive calling
- *          curl_multi_cleanup().
- *
- *          The 'CURLMsg' struct is meant to be very simple and only contain
- *          very basic informations. If more involved information is wanted,
- *          we will provide the particular "transfer handle" in that struct
- *          and that should/could/would be used in subsequent
- *          curl_easy_getinfo() calls (or similar). The point being that we
- *          must never expose complex structs to applications, as then we'll
- *          undoubtably get backwards compatibility problems in the future.
- *
- * Returns: A pointer to a filled-in struct, or NULL if it failed or ran out
- *          of structs. It also writes the number of messages left in the
- *          queue (after this read) in the integer the second argument points
- *          to.
- */
-CURL_EXTERN CURLMsg *curl_multi_info_read(CURLM *multi_handle,
-                                          int *msgs_in_queue);
-
-/*
- * Name:    curl_multi_strerror()
- *
- * Desc:    The curl_multi_strerror function may be used to turn a CURLMcode
- *          value into the equivalent human readable error string.  This is
- *          useful for printing meaningful error messages.
- *
- * Returns: A pointer to a zero-terminated error message.
- */
-CURL_EXTERN const char *curl_multi_strerror(CURLMcode);
-
-/*
- * Name:    curl_multi_socket() and
- *          curl_multi_socket_all()
- *
- * Desc:    An alternative version of curl_multi_perform() that allows the
- *          application to pass in one of the file descriptors that have been
- *          detected to have "action" on them and let libcurl perform.
- *          See man page for details.
- */
-#define CURL_POLL_NONE   0
-#define CURL_POLL_IN     1
-#define CURL_POLL_OUT    2
-#define CURL_POLL_INOUT  3
-#define CURL_POLL_REMOVE 4
-
-#define CURL_SOCKET_TIMEOUT CURL_SOCKET_BAD
-
-#define CURL_CSELECT_IN   0x01
-#define CURL_CSELECT_OUT  0x02
-#define CURL_CSELECT_ERR  0x04
-
-typedef int (*curl_socket_callback)(CURL *easy,      /* easy handle */
-                                    curl_socket_t s, /* socket */
-                                    int what,        /* see above */
-                                    void *userp,     /* private callback
-                                                        pointer */
-                                    void *socketp);  /* private socket
-                                                        pointer */
-/*
- * Name:    curl_multi_timer_callback
- *
- * Desc:    Called by libcurl whenever the library detects a change in the
- *          maximum number of milliseconds the app is allowed to wait before
- *          curl_multi_socket() or curl_multi_perform() must be called
- *          (to allow libcurl's timed events to take place).
- *
- * Returns: The callback should return zero.
- */
-typedef int (*curl_multi_timer_callback)(CURLM *multi,    /* multi handle */
-                                         long timeout_ms, /* see above */
-                                         void *userp);    /* private callback
-                                                             pointer */
-
-CURL_EXTERN CURLMcode curl_multi_socket(CURLM *multi_handle, curl_socket_t s,
-                                        int *running_handles);
-
-CURL_EXTERN CURLMcode curl_multi_socket_action(CURLM *multi_handle,
-                                               curl_socket_t s,
-                                               int ev_bitmask,
-                                               int *running_handles);
-
-CURL_EXTERN CURLMcode curl_multi_socket_all(CURLM *multi_handle,
-                                            int *running_handles);
-
-#ifndef CURL_ALLOW_OLD_MULTI_SOCKET
-/* This macro below was added in 7.16.3 to push users who recompile to use
-   the new curl_multi_socket_action() instead of the old curl_multi_socket()
-*/
-#define curl_multi_socket(x,y,z) curl_multi_socket_action(x,y,0,z)
-#endif
-
-/*
- * Name:    curl_multi_timeout()
- *
- * Desc:    Returns the maximum number of milliseconds the app is allowed to
- *          wait before curl_multi_socket() or curl_multi_perform() must be
- *          called (to allow libcurl's timed events to take place).
- *
- * Returns: CURLM error code.
- */
-CURL_EXTERN CURLMcode curl_multi_timeout(CURLM *multi_handle,
-                                         long *milliseconds);
-
-#undef CINIT /* re-using the same name as in curl.h */
-
-#ifdef CURL_ISOCPP
-#define CINIT(name,type,num) CURLMOPT_ ## name = CURLOPTTYPE_ ## type + num
-#else
-/* The macro "##" is ISO C, we assume pre-ISO C doesn't support it. */
-#define LONG          CURLOPTTYPE_LONG
-#define OBJECTPOINT   CURLOPTTYPE_OBJECTPOINT
-#define FUNCTIONPOINT CURLOPTTYPE_FUNCTIONPOINT
-#define OFF_T         CURLOPTTYPE_OFF_T
-#define CINIT(name,type,number) CURLMOPT_/**/name = type + number
-#endif
-
-typedef enum {
-  /* This is the socket callback function pointer */
-  CINIT(SOCKETFUNCTION, FUNCTIONPOINT, 1),
-
-  /* This is the argument passed to the socket callback */
-  CINIT(SOCKETDATA, OBJECTPOINT, 2),
-
-    /* set to 1 to enable pipelining for this multi handle */
-  CINIT(PIPELINING, LONG, 3),
-
-   /* This is the timer callback function pointer */
-  CINIT(TIMERFUNCTION, FUNCTIONPOINT, 4),
-
-  /* This is the argument passed to the timer callback */
-  CINIT(TIMERDATA, OBJECTPOINT, 5),
-
-  /* maximum number of entries in the connection cache */
-  CINIT(MAXCONNECTS, LONG, 6),
-
-  CURLMOPT_LASTENTRY /* the last unused */
-} CURLMoption;
-
-
-/*
- * Name:    curl_multi_setopt()
- *
- * Desc:    Sets options for the multi handle.
- *
- * Returns: CURLM error code.
- */
-CURL_EXTERN CURLMcode curl_multi_setopt(CURLM *multi_handle,
-                                        CURLMoption option, ...);
-
-
-/*
- * Name:    curl_multi_assign()
- *
- * Desc:    This function sets an association in the multi handle between the
- *          given socket and a private pointer of the application. This is
- *          (only) useful for curl_multi_socket uses.
- *
- * Returns: CURLM error code.
- */
-CURL_EXTERN CURLMcode curl_multi_assign(CURLM *multi_handle,
-                                        curl_socket_t sockfd, void *sockp);
-
-#ifdef __cplusplus
-} /* end of extern "C" */
-#endif
-
-#endif
diff --git a/src/other/curl/include/curl/stdcheaders.h b/src/other/curl/include/curl/stdcheaders.h
deleted file mode 100644
index ad82ef6..0000000
--- a/src/other/curl/include/curl/stdcheaders.h
+++ /dev/null
@@ -1,33 +0,0 @@
-#ifndef __STDC_HEADERS_H
-#define __STDC_HEADERS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include <sys/types.h>
-
-size_t fread (void *, size_t, size_t, FILE *);
-size_t fwrite (const void *, size_t, size_t, FILE *);
-
-int strcasecmp(const char *, const char *);
-int strncasecmp(const char *, const char *, size_t);
-
-#endif /* __STDC_HEADERS_H */
diff --git a/src/other/curl/include/curl/typecheck-gcc.h b/src/other/curl/include/curl/typecheck-gcc.h
deleted file mode 100644
index c4fad51..0000000
--- a/src/other/curl/include/curl/typecheck-gcc.h
+++ /dev/null
@@ -1,550 +0,0 @@
-#ifndef __CURL_TYPECHECK_GCC_H
-#define __CURL_TYPECHECK_GCC_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* wraps curl_easy_setopt() with typechecking */
-
-/* To add a new kind of warning, add an
- *   if(_curl_is_sometype_option(_curl_opt) && ! _curl_is_sometype(value))
- *     _curl_easy_setopt_err_sometype();
- * block and define _curl_is_sometype_option, _curl_is_sometype and
- * _curl_easy_setopt_err_sometype below
- *
- * To add an option that uses the same type as an existing option, you'll just
- * need to extend the appropriate _curl_*_option macro
- */
-#define curl_easy_setopt(handle, option, value)                               \
-__extension__ ({                                                              \
-  __typeof__ (option) _curl_opt = option;                                     \
-  if (__builtin_constant_p(_curl_opt)) {                                      \
-    if (_curl_is_long_option(_curl_opt) && !_curl_is_long(value))             \
-      _curl_easy_setopt_err_long();                                           \
-    if (_curl_is_off_t_option(_curl_opt) && !_curl_is_off_t(value))           \
-      _curl_easy_setopt_err_curl_off_t();                                     \
-    if (_curl_is_string_option(_curl_opt) && !_curl_is_string(value))         \
-      _curl_easy_setopt_err_string();                                         \
-    if (_curl_is_write_cb_option(_curl_opt) && !_curl_is_write_cb(value))     \
-      _curl_easy_setopt_err_write_callback();                                 \
-    if ((_curl_opt) == CURLOPT_READFUNCTION && !_curl_is_read_cb(value))      \
-      _curl_easy_setopt_err_read_cb();                                        \
-    if ((_curl_opt) == CURLOPT_IOCTLFUNCTION && !_curl_is_ioctl_cb(value))    \
-      _curl_easy_setopt_err_ioctl_cb();                                       \
-    if ((_curl_opt) == CURLOPT_SOCKOPTFUNCTION && !_curl_is_sockopt_cb(value))\
-      _curl_easy_setopt_err_sockopt_cb();                                     \
-    if ((_curl_opt) == CURLOPT_OPENSOCKETFUNCTION &&                          \
-            !_curl_is_opensocket_cb(value))                                   \
-      _curl_easy_setopt_err_opensocket_cb();                                  \
-    if ((_curl_opt) == CURLOPT_PROGRESSFUNCTION &&                            \
-            !_curl_is_progress_cb(value))                                     \
-      _curl_easy_setopt_err_progress_cb();                                    \
-    if ((_curl_opt) == CURLOPT_DEBUGFUNCTION && !_curl_is_debug_cb(value))    \
-      _curl_easy_setopt_err_debug_cb();                                       \
-    if ((_curl_opt) == CURLOPT_SSL_CTX_FUNCTION &&                            \
-            !_curl_is_ssl_ctx_cb(value))                                      \
-      _curl_easy_setopt_err_ssl_ctx_cb();                                     \
-    if (_curl_is_conv_cb_option(_curl_opt) && !_curl_is_conv_cb(value))       \
-      _curl_easy_setopt_err_conv_cb();                                        \
-    if ((_curl_opt) == CURLOPT_SEEKFUNCTION && !_curl_is_seek_cb(value))      \
-      _curl_easy_setopt_err_seek_cb();                                        \
-    if (_curl_is_cb_data_option(_curl_opt) && !_curl_is_cb_data(value))       \
-      _curl_easy_setopt_err_cb_data();                                        \
-    if ((_curl_opt) == CURLOPT_ERRORBUFFER && !_curl_is_error_buffer(value))  \
-      _curl_easy_setopt_err_error_buffer();                                   \
-    if ((_curl_opt) == CURLOPT_STDERR && !_curl_is_FILE(value))               \
-      _curl_easy_setopt_err_FILE();                                           \
-    if (_curl_is_postfields_option(_curl_opt) && !_curl_is_postfields(value)) \
-      _curl_easy_setopt_err_postfields();                                     \
-    if ((_curl_opt) == CURLOPT_HTTPPOST &&                                    \
-            !_curl_is_arr((value), struct curl_httppost))                     \
-      _curl_easy_setopt_err_curl_httpost();                                   \
-    if (_curl_is_slist_option(_curl_opt) &&                                   \
-            !_curl_is_arr((value), struct curl_slist))                        \
-      _curl_easy_setopt_err_curl_slist();                                     \
-    if ((_curl_opt) == CURLOPT_SHARE && !_curl_is_ptr((value), CURLSH))       \
-      _curl_easy_setopt_err_CURLSH();                                         \
-  }                                                                           \
-  curl_easy_setopt(handle, _curl_opt, value);                                 \
-})
-
-/* wraps curl_easy_getinfo() with typechecking */
-/* FIXME: don't allow const pointers */
-#define curl_easy_getinfo(handle, info, arg)                                  \
-__extension__ ({                                                              \
-  __typeof__ (info) _curl_info = info;                                        \
-  if (__builtin_constant_p(_curl_info)) {                                     \
-    if (_curl_is_string_info(_curl_info) && !_curl_is_arr((arg), char *))     \
-      _curl_easy_getinfo_err_string();                                        \
-    if (_curl_is_long_info(_curl_info) && !_curl_is_arr((arg), long))         \
-      _curl_easy_getinfo_err_long();                                          \
-    if (_curl_is_double_info(_curl_info) && !_curl_is_arr((arg), double))     \
-      _curl_easy_getinfo_err_double();                                        \
-    if (_curl_is_slist_info(_curl_info) &&                                    \
-           !_curl_is_arr((arg), struct curl_slist *))                         \
-      _curl_easy_getinfo_err_curl_slist();                                    \
-  }                                                                           \
-  curl_easy_getinfo(handle, _curl_info, arg);                                 \
-})
-
-/* TODO: typechecking for curl_share_setopt() and curl_multi_setopt(),
- * for now just make sure that the functions are called with three
- * arguments
- */
-#define curl_share_setopt(share,opt,param) curl_share_setopt(share,opt,param)
-#define curl_multi_setopt(handle,opt,param) curl_multi_setopt(handle,opt,param)
-
-
-/* the actual warnings, triggered by calling the _curl_easy_setopt_err*
- * functions */
-
-/* To define a new warning, use _CURL_WARNING(identifier, "message") */
-#define _CURL_WARNING(id, message)                                            \
-  static void __attribute__((warning(message))) __attribute__((unused))       \
-  __attribute__((noinline)) id(void) { __asm__(""); }
-
-_CURL_WARNING(_curl_easy_setopt_err_long,
-  "curl_easy_setopt expects a long argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_curl_off_t,
-  "curl_easy_setopt expects a curl_off_t argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_string,
-  "curl_easy_setopt expects a string (char* or char[]) argument for this option"
-  )
-_CURL_WARNING(_curl_easy_setopt_err_write_callback,
-  "curl_easy_setopt expects a curl_write_callback argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_read_cb,
-  "curl_easy_setopt expects a curl_read_callback argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_ioctl_cb,
-  "curl_easy_setopt expects a curl_ioctl_callback argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_sockopt_cb,
-  "curl_easy_setopt expects a curl_sockopt_callback argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_opensocket_cb,
-  "curl_easy_setopt expects a curl_opensocket_callback argument for this option"
-  )
-_CURL_WARNING(_curl_easy_setopt_err_progress_cb,
-  "curl_easy_setopt expects a curl_progress_callback argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_debug_cb,
-  "curl_easy_setopt expects a curl_debug_callback argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_ssl_ctx_cb,
-  "curl_easy_setopt expects a curl_ssl_ctx_callback argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_conv_cb,
-  "curl_easy_setopt expects a curl_conv_callback argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_seek_cb,
-  "curl_easy_setopt expects a curl_seek_callback argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_cb_data,
-  "curl_easy_setopt expects a private data pointer as argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_error_buffer,
-  "curl_easy_setopt expects a char buffer of CURL_ERROR_SIZE as argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_FILE,
-  "curl_easy_setopt expects a FILE* argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_postfields,
-  "curl_easy_setopt expects a void* or char* argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_curl_httpost,
-  "curl_easy_setopt expects a struct curl_httppost* argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_curl_slist,
-  "curl_easy_setopt expects a struct curl_slist* argument for this option")
-_CURL_WARNING(_curl_easy_setopt_err_CURLSH,
-  "curl_easy_setopt expects a CURLSH* argument for this option")
-
-_CURL_WARNING(_curl_easy_getinfo_err_string,
-  "curl_easy_getinfo expects a pointer to char * for this info")
-_CURL_WARNING(_curl_easy_getinfo_err_long,
-  "curl_easy_getinfo expects a pointer to long for this info")
-_CURL_WARNING(_curl_easy_getinfo_err_double,
-  "curl_easy_getinfo expects a pointer to double for this info")
-_CURL_WARNING(_curl_easy_getinfo_err_curl_slist,
-  "curl_easy_getinfo expects a pointer to struct curl_slist * for this info")
-
-/* groups of curl_easy_setops options that take the same type of argument */
-
-/* To add a new option to one of the groups, just add
- *   (option) == CURLOPT_SOMETHING
- * to the or-expression. If the option takes a long or curl_off_t, you don't
- * have to do anything
- */
-
-/* evaluates to true if option takes a long argument */
-#define _curl_is_long_option(option)                                          \
-  (0 < (option) && (option) < CURLOPTTYPE_OBJECTPOINT)
-
-#define _curl_is_off_t_option(option)                                         \
-  ((option) > CURLOPTTYPE_OFF_T)
-
-/* evaluates to true if option takes a char* argument */
-#define _curl_is_string_option(option)                                        \
-  ((option) == CURLOPT_URL ||                                                 \
-   (option) == CURLOPT_PROXY ||                                               \
-   (option) == CURLOPT_INTERFACE ||                                           \
-   (option) == CURLOPT_NETRC_FILE ||                                          \
-   (option) == CURLOPT_USERPWD ||                                             \
-   (option) == CURLOPT_USERNAME ||                                            \
-   (option) == CURLOPT_PASSWORD ||                                            \
-   (option) == CURLOPT_PROXYUSERPWD ||                                        \
-   (option) == CURLOPT_PROXYUSERNAME ||                                       \
-   (option) == CURLOPT_PROXYPASSWORD ||                                       \
-   (option) == CURLOPT_NOPROXY ||                                             \
-   (option) == CURLOPT_ENCODING ||                                            \
-   (option) == CURLOPT_REFERER ||                                             \
-   (option) == CURLOPT_USERAGENT ||                                           \
-   (option) == CURLOPT_COOKIE ||                                              \
-   (option) == CURLOPT_COOKIEFILE ||                                          \
-   (option) == CURLOPT_COOKIEJAR ||                                           \
-   (option) == CURLOPT_COOKIELIST ||                                          \
-   (option) == CURLOPT_FTPPORT ||                                             \
-   (option) == CURLOPT_FTP_ALTERNATIVE_TO_USER ||                             \
-   (option) == CURLOPT_FTP_ACCOUNT ||                                         \
-   (option) == CURLOPT_RANGE ||                                               \
-   (option) == CURLOPT_CUSTOMREQUEST ||                                       \
-   (option) == CURLOPT_SSLCERT ||                                             \
-   (option) == CURLOPT_SSLCERTTYPE ||                                         \
-   (option) == CURLOPT_SSLKEY ||                                              \
-   (option) == CURLOPT_SSLKEYTYPE ||                                          \
-   (option) == CURLOPT_KEYPASSWD ||                                           \
-   (option) == CURLOPT_SSLENGINE ||                                           \
-   (option) == CURLOPT_CAINFO ||                                              \
-   (option) == CURLOPT_CAPATH ||                                              \
-   (option) == CURLOPT_RANDOM_FILE ||                                         \
-   (option) == CURLOPT_EGDSOCKET ||                                           \
-   (option) == CURLOPT_SSL_CIPHER_LIST ||                                     \
-   (option) == CURLOPT_KRBLEVEL ||                                            \
-   (option) == CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 ||                             \
-   (option) == CURLOPT_SSH_PUBLIC_KEYFILE ||                                  \
-   (option) == CURLOPT_SSH_PRIVATE_KEYFILE ||                                 \
-   (option) == CURLOPT_CRLFILE ||                                             \
-   (option) == CURLOPT_ISSUERCERT ||                                          \
-   0)
-
-/* evaluates to true if option takes a curl_write_callback argument */
-#define _curl_is_write_cb_option(option)                                      \
-  ((option) == CURLOPT_HEADERFUNCTION ||                                      \
-   (option) == CURLOPT_WRITEFUNCTION)
-
-/* evaluates to true if option takes a curl_conv_callback argument */
-#define _curl_is_conv_cb_option(option)                                       \
-  ((option) == CURLOPT_CONV_TO_NETWORK_FUNCTION ||                            \
-   (option) == CURLOPT_CONV_FROM_NETWORK_FUNCTION ||                          \
-   (option) == CURLOPT_CONV_FROM_UTF8_FUNCTION)
-
-/* evaluates to true if option takes a data argument to pass to a callback */
-#define _curl_is_cb_data_option(option)                                       \
-  ((option) == CURLOPT_WRITEDATA ||                                           \
-   (option) == CURLOPT_READDATA ||                                            \
-   (option) == CURLOPT_IOCTLDATA ||                                           \
-   (option) == CURLOPT_SOCKOPTDATA ||                                         \
-   (option) == CURLOPT_OPENSOCKETDATA ||                                      \
-   (option) == CURLOPT_PROGRESSDATA ||                                        \
-   (option) == CURLOPT_WRITEHEADER ||                                         \
-   (option) == CURLOPT_DEBUGDATA ||                                           \
-   (option) == CURLOPT_SSL_CTX_DATA ||                                        \
-   (option) == CURLOPT_SEEKDATA ||                                            \
-   (option) == CURLOPT_PRIVATE ||                                             \
-   0)
-
-/* evaluates to true if option takes a POST data argument (void* or char*) */
-#define _curl_is_postfields_option(option)                                    \
-  ((option) == CURLOPT_POSTFIELDS ||                                          \
-   (option) == CURLOPT_COPYPOSTFIELDS ||                                      \
-   0)
-
-/* evaluates to true if option takes a struct curl_slist * argument */
-#define _curl_is_slist_option(option)                                         \
-  ((option) == CURLOPT_HTTPHEADER ||                                          \
-   (option) == CURLOPT_HTTP200ALIASES ||                                      \
-   (option) == CURLOPT_QUOTE ||                                               \
-   (option) == CURLOPT_POSTQUOTE ||                                           \
-   (option) == CURLOPT_PREQUOTE ||                                            \
-   (option) == CURLOPT_TELNETOPTIONS ||                                       \
-   0)
-
-/* groups of curl_easy_getinfo infos that take the same type of argument */
-
-/* evaluates to true if info expects a pointer to char * argument */
-#define _curl_is_string_info(info)                                            \
-  (CURLINFO_STRING < (info) && (info) < CURLINFO_LONG)
-
-/* evaluates to true if info expects a pointer to long argument */
-#define _curl_is_long_info(info)                                              \
-  (CURLINFO_LONG < (info) && (info) < CURLINFO_DOUBLE)
-
-/* evaluates to true if info expects a pointer to double argument */
-#define _curl_is_double_info(info)                                            \
-  (CURLINFO_DOUBLE < (info) && (info) < CURLINFO_SLIST)
-
-/* true if info expects a pointer to struct curl_slist * argument */
-#define _curl_is_slist_info(info)                                             \
-  (CURLINFO_SLIST < (info))
-
-
-/* typecheck helpers -- check whether given expression has requested type*/
-
-/* For pointers, you can use the _curl_is_ptr/_curl_is_arr macros,
- * otherwise define a new macro. Search for __builtin_types_compatible_p
- * in the GCC manual.
- * NOTE: these macros MUST NOT EVALUATE their arguments! The argument is
- * the actual expression passed to the curl_easy_setopt macro. This
- * means that you can only apply the sizeof and __typeof__ operators, no
- * == or whatsoever.
- */
-
-/* XXX: should evaluate to true iff expr is a pointer */
-#define _curl_is_any_ptr(expr)                                                \
-  (sizeof(expr) == sizeof(void*))
-
-/* evaluates to true if expr is NULL */
-/* XXX: must not evaluate expr, so this check is not accurate */
-#define _curl_is_NULL(expr)                                                   \
-  (__builtin_types_compatible_p(__typeof__(expr), __typeof__(NULL)))
-
-/* evaluates to true if expr is type*, const type* or NULL */
-#define _curl_is_ptr(expr, type)                                              \
-  (_curl_is_NULL(expr) ||                                                     \
-   __builtin_types_compatible_p(__typeof__(expr), type *) ||                  \
-   __builtin_types_compatible_p(__typeof__(expr), const type *))
-
-/* evaluates to true if expr is one of type[], type*, NULL or const type* */
-#define _curl_is_arr(expr, type)                                              \
-  (_curl_is_ptr((expr), type) ||                                              \
-   __builtin_types_compatible_p(__typeof__(expr), type []))
-
-/* evaluates to true if expr is a string */
-#define _curl_is_string(expr)                                                 \
-  (_curl_is_arr((expr), char) ||                                              \
-   _curl_is_arr((expr), signed char) ||                                       \
-   _curl_is_arr((expr), unsigned char))
-
-/* evaluates to true if expr is a long (no matter the signedness)
- * XXX: for now, int is also accepted (and therefore short and char, which
- * are promoted to int when passed to a variadic function) */
-#define _curl_is_long(expr)                                                   \
-  (__builtin_types_compatible_p(__typeof__(expr), long) ||                    \
-   __builtin_types_compatible_p(__typeof__(expr), signed long) ||             \
-   __builtin_types_compatible_p(__typeof__(expr), unsigned long) ||           \
-   __builtin_types_compatible_p(__typeof__(expr), int) ||                     \
-   __builtin_types_compatible_p(__typeof__(expr), signed int) ||              \
-   __builtin_types_compatible_p(__typeof__(expr), unsigned int) ||            \
-   __builtin_types_compatible_p(__typeof__(expr), short) ||                   \
-   __builtin_types_compatible_p(__typeof__(expr), signed short) ||            \
-   __builtin_types_compatible_p(__typeof__(expr), unsigned short) ||          \
-   __builtin_types_compatible_p(__typeof__(expr), char) ||                    \
-   __builtin_types_compatible_p(__typeof__(expr), signed char) ||             \
-   __builtin_types_compatible_p(__typeof__(expr), unsigned char))
-
-/* evaluates to true if expr is of type curl_off_t */
-#define _curl_is_off_t(expr)                                                  \
-  (__builtin_types_compatible_p(__typeof__(expr), curl_off_t))
-
-/* evaluates to true if expr is abuffer suitable for CURLOPT_ERRORBUFFER */
-/* XXX: also check size of an char[] array? */
-#define _curl_is_error_buffer(expr)                                           \
-  (__builtin_types_compatible_p(__typeof__(expr), char *) ||                  \
-   __builtin_types_compatible_p(__typeof__(expr), char[]))
-
-/* evaluates to true if expr is of type (const) void* or (const) FILE* */
-#if 0
-#define _curl_is_cb_data(expr)                                                \
-  (_curl_is_ptr((expr), void) ||                                              \
-   _curl_is_ptr((expr), FILE))
-#else /* be less strict */
-#define _curl_is_cb_data(expr)                                                \
-  _curl_is_any_ptr(expr)
-#endif
-
-/* evaluates to true if expr is of type FILE* */
-#define _curl_is_FILE(expr)                                                   \
-  (__builtin_types_compatible_p(__typeof__(expr), FILE *))
-
-/* evaluates to true if expr can be passed as POST data (void* or char*) */
-#define _curl_is_postfields(expr)                                             \
-  (_curl_is_ptr((expr), void) ||                                              \
-   _curl_is_arr((expr), char))
-
-/* FIXME: the whole callback checking is messy...
- * The idea is to tolerate char vs. void and const vs. not const
- * pointers in arguments at least
- */
-/* helper: __builtin_types_compatible_p distinguishes between functions and
- * function pointers, hide it */
-#define _curl_callback_compatible(func, type)                                 \
-  (__builtin_types_compatible_p(__typeof__(func), type) ||                    \
-   __builtin_types_compatible_p(__typeof__(func), type*))
-
-/* evaluates to true if expr is of type curl_read_callback or "similar" */
-#define _curl_is_read_cb(expr)                                          \
-  (_curl_is_NULL(expr) ||                                                     \
-   __builtin_types_compatible_p(__typeof__(expr), __typeof__(fread)) ||       \
-   __builtin_types_compatible_p(__typeof__(expr), curl_read_callback) ||      \
-   _curl_callback_compatible((expr), _curl_read_callback1) ||                 \
-   _curl_callback_compatible((expr), _curl_read_callback2) ||                 \
-   _curl_callback_compatible((expr), _curl_read_callback3) ||                 \
-   _curl_callback_compatible((expr), _curl_read_callback4) ||                 \
-   _curl_callback_compatible((expr), _curl_read_callback5) ||                 \
-   _curl_callback_compatible((expr), _curl_read_callback6))
-typedef size_t (_curl_read_callback1)(char *, size_t, size_t, void*);
-typedef size_t (_curl_read_callback2)(char *, size_t, size_t, const void*);
-typedef size_t (_curl_read_callback3)(char *, size_t, size_t, FILE*);
-typedef size_t (_curl_read_callback4)(void *, size_t, size_t, void*);
-typedef size_t (_curl_read_callback5)(void *, size_t, size_t, const void*);
-typedef size_t (_curl_read_callback6)(void *, size_t, size_t, FILE*);
-
-/* evaluates to true if expr is of type curl_write_callback or "similar" */
-#define _curl_is_write_cb(expr)                                               \
-  (_curl_is_read_cb(expr) ||                                            \
-   __builtin_types_compatible_p(__typeof__(expr), __typeof__(fwrite)) ||      \
-   __builtin_types_compatible_p(__typeof__(expr), curl_write_callback) ||     \
-   _curl_callback_compatible((expr), _curl_write_callback1) ||                \
-   _curl_callback_compatible((expr), _curl_write_callback2) ||                \
-   _curl_callback_compatible((expr), _curl_write_callback3) ||                \
-   _curl_callback_compatible((expr), _curl_write_callback4) ||                \
-   _curl_callback_compatible((expr), _curl_write_callback5) ||                \
-   _curl_callback_compatible((expr), _curl_write_callback6))
-typedef size_t (_curl_write_callback1)(const char *, size_t, size_t, void*);
-typedef size_t (_curl_write_callback2)(const char *, size_t, size_t,
-                                       const void*);
-typedef size_t (_curl_write_callback3)(const char *, size_t, size_t, FILE*);
-typedef size_t (_curl_write_callback4)(const void *, size_t, size_t, void*);
-typedef size_t (_curl_write_callback5)(const void *, size_t, size_t,
-                                       const void*);
-typedef size_t (_curl_write_callback6)(const void *, size_t, size_t, FILE*);
-
-/* evaluates to true if expr is of type curl_ioctl_callback or "similar" */
-#define _curl_is_ioctl_cb(expr)                                         \
-  (_curl_is_NULL(expr) ||                                                     \
-   __builtin_types_compatible_p(__typeof__(expr), curl_ioctl_callback) ||     \
-   _curl_callback_compatible((expr), _curl_ioctl_callback1) ||                \
-   _curl_callback_compatible((expr), _curl_ioctl_callback2) ||                \
-   _curl_callback_compatible((expr), _curl_ioctl_callback3) ||                \
-   _curl_callback_compatible((expr), _curl_ioctl_callback4))
-typedef curlioerr (_curl_ioctl_callback1)(CURL *, int, void*);
-typedef curlioerr (_curl_ioctl_callback2)(CURL *, int, const void*);
-typedef curlioerr (_curl_ioctl_callback3)(CURL *, curliocmd, void*);
-typedef curlioerr (_curl_ioctl_callback4)(CURL *, curliocmd, const void*);
-
-/* evaluates to true if expr is of type curl_sockopt_callback or "similar" */
-#define _curl_is_sockopt_cb(expr)                                       \
-  (_curl_is_NULL(expr) ||                                                     \
-   __builtin_types_compatible_p(__typeof__(expr), curl_sockopt_callback) ||   \
-   _curl_callback_compatible((expr), _curl_sockopt_callback1) ||              \
-   _curl_callback_compatible((expr), _curl_sockopt_callback2))
-typedef int (_curl_sockopt_callback1)(void *, curl_socket_t, curlsocktype);
-typedef int (_curl_sockopt_callback2)(const void *, curl_socket_t,
-                                      curlsocktype);
-
-/* evaluates to true if expr is of type curl_opensocket_callback or "similar" */
-#define _curl_is_opensocket_cb(expr)                                    \
-  (_curl_is_NULL(expr) ||                                                     \
-   __builtin_types_compatible_p(__typeof__(expr), curl_opensocket_callback) ||\
-   _curl_callback_compatible((expr), _curl_opensocket_callback1) ||           \
-   _curl_callback_compatible((expr), _curl_opensocket_callback2) ||           \
-   _curl_callback_compatible((expr), _curl_opensocket_callback3) ||           \
-   _curl_callback_compatible((expr), _curl_opensocket_callback4))
-typedef curl_socket_t (_curl_opensocket_callback1)
-  (void *, curlsocktype, struct curl_sockaddr *);
-typedef curl_socket_t (_curl_opensocket_callback2)
-  (void *, curlsocktype, const struct curl_sockaddr *);
-typedef curl_socket_t (_curl_opensocket_callback3)
-  (const void *, curlsocktype, struct curl_sockaddr *);
-typedef curl_socket_t (_curl_opensocket_callback4)
-  (const void *, curlsocktype, const struct curl_sockaddr *);
-
-/* evaluates to true if expr is of type curl_progress_callback or "similar" */
-#define _curl_is_progress_cb(expr)                                      \
-  (_curl_is_NULL(expr) ||                                                     \
-   __builtin_types_compatible_p(__typeof__(expr), curl_progress_callback) ||  \
-   _curl_callback_compatible((expr), _curl_progress_callback1) ||             \
-   _curl_callback_compatible((expr), _curl_progress_callback2))
-typedef int (_curl_progress_callback1)(void *,
-    double, double, double, double);
-typedef int (_curl_progress_callback2)(const void *,
-    double, double, double, double);
-
-/* evaluates to true if expr is of type curl_debug_callback or "similar" */
-#define _curl_is_debug_cb(expr)                                         \
-  (_curl_is_NULL(expr) ||                                                     \
-   __builtin_types_compatible_p(__typeof__(expr), curl_debug_callback) ||     \
-   _curl_callback_compatible((expr), _curl_debug_callback1) ||                \
-   _curl_callback_compatible((expr), _curl_debug_callback2) ||                \
-   _curl_callback_compatible((expr), _curl_debug_callback3) ||                \
-   _curl_callback_compatible((expr), _curl_debug_callback4))
-typedef int (_curl_debug_callback1) (CURL *,
-    curl_infotype, char *, size_t, void *);
-typedef int (_curl_debug_callback2) (CURL *,
-    curl_infotype, char *, size_t, const void *);
-typedef int (_curl_debug_callback3) (CURL *,
-    curl_infotype, const char *, size_t, void *);
-typedef int (_curl_debug_callback4) (CURL *,
-    curl_infotype, const char *, size_t, const void *);
-
-/* evaluates to true if expr is of type curl_ssl_ctx_callback or "similar" */
-/* this is getting even messier... */
-#define _curl_is_ssl_ctx_cb(expr)                                       \
-  (_curl_is_NULL(expr) ||                                                     \
-   __builtin_types_compatible_p(__typeof__(expr), curl_ssl_ctx_callback) ||   \
-   _curl_callback_compatible((expr), _curl_ssl_ctx_callback1) ||              \
-   _curl_callback_compatible((expr), _curl_ssl_ctx_callback2) ||              \
-   _curl_callback_compatible((expr), _curl_ssl_ctx_callback3) ||              \
-   _curl_callback_compatible((expr), _curl_ssl_ctx_callback4) ||              \
-   _curl_callback_compatible((expr), _curl_ssl_ctx_callback5) ||              \
-   _curl_callback_compatible((expr), _curl_ssl_ctx_callback6) ||              \
-   _curl_callback_compatible((expr), _curl_ssl_ctx_callback7) ||              \
-   _curl_callback_compatible((expr), _curl_ssl_ctx_callback8))
-typedef CURLcode (_curl_ssl_ctx_callback1)(CURL *, void *, void *);
-typedef CURLcode (_curl_ssl_ctx_callback2)(CURL *, void *, const void *);
-typedef CURLcode (_curl_ssl_ctx_callback3)(CURL *, const void *, void *);
-typedef CURLcode (_curl_ssl_ctx_callback4)(CURL *, const void *, const void *);
-#ifdef HEADER_SSL_H
-/* hack: if we included OpenSSL's ssl.h, we know about SSL_CTX
- * this will of course break if we're included before OpenSSL headers...
- */
-typedef CURLcode (_curl_ssl_ctx_callback5)(CURL *, SSL_CTX, void *);
-typedef CURLcode (_curl_ssl_ctx_callback6)(CURL *, SSL_CTX, const void *);
-typedef CURLcode (_curl_ssl_ctx_callback7)(CURL *, const SSL_CTX, void *);
-typedef CURLcode (_curl_ssl_ctx_callback8)(CURL *, const SSL_CTX, const void *);
-#else
-typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback5;
-typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback6;
-typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback7;
-typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback8;
-#endif
-
-/* evaluates to true if expr is of type curl_conv_callback or "similar" */
-#define _curl_is_conv_cb(expr)                                          \
-  (_curl_is_NULL(expr) ||                                                     \
-   __builtin_types_compatible_p(__typeof__(expr), curl_conv_callback) ||      \
-   _curl_callback_compatible((expr), _curl_conv_callback1) ||                 \
-   _curl_callback_compatible((expr), _curl_conv_callback2) ||                 \
-   _curl_callback_compatible((expr), _curl_conv_callback3) ||                 \
-   _curl_callback_compatible((expr), _curl_conv_callback4))
-typedef CURLcode (*_curl_conv_callback1)(char *, size_t length);
-typedef CURLcode (*_curl_conv_callback2)(const char *, size_t length);
-typedef CURLcode (*_curl_conv_callback3)(void *, size_t length);
-typedef CURLcode (*_curl_conv_callback4)(const void *, size_t length);
-
-/* evaluates to true if expr is of type curl_seek_callback or "similar" */
-#define _curl_is_seek_cb(expr)                                          \
-  (_curl_is_NULL(expr) ||                                                     \
-   __builtin_types_compatible_p(__typeof__(expr), curl_seek_callback) ||      \
-   _curl_callback_compatible((expr), _curl_seek_callback1) ||                 \
-   _curl_callback_compatible((expr), _curl_seek_callback2))
-typedef CURLcode (*_curl_seek_callback1)(void *, curl_off_t, int);
-typedef CURLcode (*_curl_seek_callback2)(const void *, curl_off_t, int);
-
-
-#endif /* __CURL_TYPECHECK_GCC_H */
diff --git a/src/other/curl/include/curl/types.h b/src/other/curl/include/curl/types.h
deleted file mode 100644
index d37d6ae..0000000
--- a/src/other/curl/include/curl/types.h
+++ /dev/null
@@ -1 +0,0 @@
-/* not used */
diff --git a/src/other/curl/install-sh b/src/other/curl/install-sh
deleted file mode 100755
index 6781b98..0000000
--- a/src/other/curl/install-sh
+++ /dev/null
@@ -1,520 +0,0 @@
-#!/bin/sh
-# install - install a program, script, or datafile
-
-scriptversion=2009-04-28.21; # UTC
-
-# This originates from X11R5 (mit/util/scripts/install.sh), which was
-# later released in X11R6 (xc/config/util/install.sh) with the
-# following copyright and license.
-#
-# Copyright (C) 1994 X Consortium
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
-# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-#
-# Except as contained in this notice, the name of the X Consortium shall not
-# be used in advertising or otherwise to promote the sale, use or other deal-
-# ings in this Software without prior written authorization from the X Consor-
-# tium.
-#
-#
-# FSF changes to this file are in the public domain.
-#
-# Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
-# when there is no Makefile.
-#
-# This script is compatible with the BSD install script, but was written
-# from scratch.
-
-nl='
-'
-IFS=" ""	$nl"
-
-# set DOITPROG to echo to test this script
-
-# Don't use :- since 4.3BSD and earlier shells don't like it.
-doit=${DOITPROG-}
-if test -z "$doit"; then
-  doit_exec=exec
-else
-  doit_exec=$doit
-fi
-
-# Put in absolute file names if you don't have them in your path;
-# or use environment vars.
-
-chgrpprog=${CHGRPPROG-chgrp}
-chmodprog=${CHMODPROG-chmod}
-chownprog=${CHOWNPROG-chown}
-cmpprog=${CMPPROG-cmp}
-cpprog=${CPPROG-cp}
-mkdirprog=${MKDIRPROG-mkdir}
-mvprog=${MVPROG-mv}
-rmprog=${RMPROG-rm}
-stripprog=${STRIPPROG-strip}
-
-posix_glob='?'
-initialize_posix_glob='
-  test "$posix_glob" != "?" || {
-    if (set -f) 2>/dev/null; then
-      posix_glob=
-    else
-      posix_glob=:
-    fi
-  }
-'
-
-posix_mkdir=
-
-# Desired mode of installed file.
-mode=0755
-
-chgrpcmd=
-chmodcmd=$chmodprog
-chowncmd=
-mvcmd=$mvprog
-rmcmd="$rmprog -f"
-stripcmd=
-
-src=
-dst=
-dir_arg=
-dst_arg=
-
-copy_on_change=false
-no_target_directory=
-
-usage="\
-Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
-   or: $0 [OPTION]... SRCFILES... DIRECTORY
-   or: $0 [OPTION]... -t DIRECTORY SRCFILES...
-   or: $0 [OPTION]... -d DIRECTORIES...
-
-In the 1st form, copy SRCFILE to DSTFILE.
-In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
-In the 4th, create DIRECTORIES.
-
-Options:
-     --help     display this help and exit.
-     --version  display version info and exit.
-
-  -c            (ignored)
-  -C            install only if different (preserve the last data modification time)
-  -d            create directories instead of installing files.
-  -g GROUP      $chgrpprog installed files to GROUP.
-  -m MODE       $chmodprog installed files to MODE.
-  -o USER       $chownprog installed files to USER.
-  -s            $stripprog installed files.
-  -t DIRECTORY  install into DIRECTORY.
-  -T            report an error if DSTFILE is a directory.
-
-Environment variables override the default commands:
-  CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
-  RMPROG STRIPPROG
-"
-
-while test $# -ne 0; do
-  case $1 in
-    -c) ;;
-
-    -C) copy_on_change=true;;
-
-    -d) dir_arg=true;;
-
-    -g) chgrpcmd="$chgrpprog $2"
-	shift;;
-
-    --help) echo "$usage"; exit $?;;
-
-    -m) mode=$2
-	case $mode in
-	  *' '* | *'	'* | *'
-'*	  | *'*'* | *'?'* | *'['*)
-	    echo "$0: invalid mode: $mode" >&2
-	    exit 1;;
-	esac
-	shift;;
-
-    -o) chowncmd="$chownprog $2"
-	shift;;
-
-    -s) stripcmd=$stripprog;;
-
-    -t) dst_arg=$2
-	shift;;
-
-    -T) no_target_directory=true;;
-
-    --version) echo "$0 $scriptversion"; exit $?;;
-
-    --)	shift
-	break;;
-
-    -*)	echo "$0: invalid option: $1" >&2
-	exit 1;;
-
-    *)  break;;
-  esac
-  shift
-done
-
-if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
-  # When -d is used, all remaining arguments are directories to create.
-  # When -t is used, the destination is already specified.
-  # Otherwise, the last argument is the destination.  Remove it from $@.
-  for arg
-  do
-    if test -n "$dst_arg"; then
-      # $@ is not empty: it contains at least $arg.
-      set fnord "$@" "$dst_arg"
-      shift # fnord
-    fi
-    shift # arg
-    dst_arg=$arg
-  done
-fi
-
-if test $# -eq 0; then
-  if test -z "$dir_arg"; then
-    echo "$0: no input file specified." >&2
-    exit 1
-  fi
-  # It's OK to call `install-sh -d' without argument.
-  # This can happen when creating conditional directories.
-  exit 0
-fi
-
-if test -z "$dir_arg"; then
-  trap '(exit $?); exit' 1 2 13 15
-
-  # Set umask so as not to create temps with too-generous modes.
-  # However, 'strip' requires both read and write access to temps.
-  case $mode in
-    # Optimize common cases.
-    *644) cp_umask=133;;
-    *755) cp_umask=22;;
-
-    *[0-7])
-      if test -z "$stripcmd"; then
-	u_plus_rw=
-      else
-	u_plus_rw='% 200'
-      fi
-      cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
-    *)
-      if test -z "$stripcmd"; then
-	u_plus_rw=
-      else
-	u_plus_rw=,u+rw
-      fi
-      cp_umask=$mode$u_plus_rw;;
-  esac
-fi
-
-for src
-do
-  # Protect names starting with `-'.
-  case $src in
-    -*) src=./$src;;
-  esac
-
-  if test -n "$dir_arg"; then
-    dst=$src
-    dstdir=$dst
-    test -d "$dstdir"
-    dstdir_status=$?
-  else
-
-    # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
-    # might cause directories to be created, which would be especially bad
-    # if $src (and thus $dsttmp) contains '*'.
-    if test ! -f "$src" && test ! -d "$src"; then
-      echo "$0: $src does not exist." >&2
-      exit 1
-    fi
-
-    if test -z "$dst_arg"; then
-      echo "$0: no destination specified." >&2
-      exit 1
-    fi
-
-    dst=$dst_arg
-    # Protect names starting with `-'.
-    case $dst in
-      -*) dst=./$dst;;
-    esac
-
-    # If destination is a directory, append the input filename; won't work
-    # if double slashes aren't ignored.
-    if test -d "$dst"; then
-      if test -n "$no_target_directory"; then
-	echo "$0: $dst_arg: Is a directory" >&2
-	exit 1
-      fi
-      dstdir=$dst
-      dst=$dstdir/`basename "$src"`
-      dstdir_status=0
-    else
-      # Prefer dirname, but fall back on a substitute if dirname fails.
-      dstdir=`
-	(dirname "$dst") 2>/dev/null ||
-	expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	     X"$dst" : 'X\(//\)[^/]' \| \
-	     X"$dst" : 'X\(//\)$' \| \
-	     X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
-	echo X"$dst" |
-	    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-		   s//\1/
-		   q
-		 }
-		 /^X\(\/\/\)[^/].*/{
-		   s//\1/
-		   q
-		 }
-		 /^X\(\/\/\)$/{
-		   s//\1/
-		   q
-		 }
-		 /^X\(\/\).*/{
-		   s//\1/
-		   q
-		 }
-		 s/.*/./; q'
-      `
-
-      test -d "$dstdir"
-      dstdir_status=$?
-    fi
-  fi
-
-  obsolete_mkdir_used=false
-
-  if test $dstdir_status != 0; then
-    case $posix_mkdir in
-      '')
-	# Create intermediate dirs using mode 755 as modified by the umask.
-	# This is like FreeBSD 'install' as of 1997-10-28.
-	umask=`umask`
-	case $stripcmd.$umask in
-	  # Optimize common cases.
-	  *[2367][2367]) mkdir_umask=$umask;;
-	  .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-
-	  *[0-7])
-	    mkdir_umask=`expr $umask + 22 \
-	      - $umask % 100 % 40 + $umask % 20 \
-	      - $umask % 10 % 4 + $umask % 2
-	    `;;
-	  *) mkdir_umask=$umask,go-w;;
-	esac
-
-	# With -d, create the new directory with the user-specified mode.
-	# Otherwise, rely on $mkdir_umask.
-	if test -n "$dir_arg"; then
-	  mkdir_mode=-m$mode
-	else
-	  mkdir_mode=
-	fi
-
-	posix_mkdir=false
-	case $umask in
-	  *[123567][0-7][0-7])
-	    # POSIX mkdir -p sets u+wx bits regardless of umask, which
-	    # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
-	    ;;
-	  *)
-	    tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
-	    trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
-
-	    if (umask $mkdir_umask &&
-		exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
-	    then
-	      if test -z "$dir_arg" || {
-		   # Check for POSIX incompatibilities with -m.
-		   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
-		   # other-writeable bit of parent directory when it shouldn't.
-		   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
-		   ls_ld_tmpdir=`ls -ld "$tmpdir"`
-		   case $ls_ld_tmpdir in
-		     d????-?r-*) different_mode=700;;
-		     d????-?--*) different_mode=755;;
-		     *) false;;
-		   esac &&
-		   $mkdirprog -m$different_mode -p -- "$tmpdir" && {
-		     ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
-		     test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
-		   }
-		 }
-	      then posix_mkdir=:
-	      fi
-	      rmdir "$tmpdir/d" "$tmpdir"
-	    else
-	      # Remove any dirs left behind by ancient mkdir implementations.
-	      rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
-	    fi
-	    trap '' 0;;
-	esac;;
-    esac
-
-    if
-      $posix_mkdir && (
-	umask $mkdir_umask &&
-	$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
-      )
-    then :
-    else
-
-      # The umask is ridiculous, or mkdir does not conform to POSIX,
-      # or it failed possibly due to a race condition.  Create the
-      # directory the slow way, step by step, checking for races as we go.
-
-      case $dstdir in
-	/*) prefix='/';;
-	-*) prefix='./';;
-	*)  prefix='';;
-      esac
-
-      eval "$initialize_posix_glob"
-
-      oIFS=$IFS
-      IFS=/
-      $posix_glob set -f
-      set fnord $dstdir
-      shift
-      $posix_glob set +f
-      IFS=$oIFS
-
-      prefixes=
-
-      for d
-      do
-	test -z "$d" && continue
-
-	prefix=$prefix$d
-	if test -d "$prefix"; then
-	  prefixes=
-	else
-	  if $posix_mkdir; then
-	    (umask=$mkdir_umask &&
-	     $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
-	    # Don't fail if two instances are running concurrently.
-	    test -d "$prefix" || exit 1
-	  else
-	    case $prefix in
-	      *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
-	      *) qprefix=$prefix;;
-	    esac
-	    prefixes="$prefixes '$qprefix'"
-	  fi
-	fi
-	prefix=$prefix/
-      done
-
-      if test -n "$prefixes"; then
-	# Don't fail if two instances are running concurrently.
-	(umask $mkdir_umask &&
-	 eval "\$doit_exec \$mkdirprog $prefixes") ||
-	  test -d "$dstdir" || exit 1
-	obsolete_mkdir_used=true
-      fi
-    fi
-  fi
-
-  if test -n "$dir_arg"; then
-    { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
-    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
-    { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
-      test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
-  else
-
-    # Make a couple of temp file names in the proper directory.
-    dsttmp=$dstdir/_inst.$$_
-    rmtmp=$dstdir/_rm.$$_
-
-    # Trap to clean up those temp files at exit.
-    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
-
-    # Copy the file name to the temp name.
-    (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
-
-    # and set any options; do chmod last to preserve setuid bits.
-    #
-    # If any of these fail, we abort the whole thing.  If we want to
-    # ignore errors from any of these, just make sure not to ignore
-    # errors from the above "$doit $cpprog $src $dsttmp" command.
-    #
-    { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
-    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
-    { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
-    { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
-
-    # If -C, don't bother to copy if it wouldn't change the file.
-    if $copy_on_change &&
-       old=`LC_ALL=C ls -dlL "$dst"	2>/dev/null` &&
-       new=`LC_ALL=C ls -dlL "$dsttmp"	2>/dev/null` &&
-
-       eval "$initialize_posix_glob" &&
-       $posix_glob set -f &&
-       set X $old && old=:$2:$4:$5:$6 &&
-       set X $new && new=:$2:$4:$5:$6 &&
-       $posix_glob set +f &&
-
-       test "$old" = "$new" &&
-       $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
-    then
-      rm -f "$dsttmp"
-    else
-      # Rename the file to the real destination.
-      $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
-
-      # The rename failed, perhaps because mv can't rename something else
-      # to itself, or perhaps because mv is so ancient that it does not
-      # support -f.
-      {
-	# Now remove or move aside any old file at destination location.
-	# We try this two ways since rm can't unlink itself on some
-	# systems and the destination file might be busy for other
-	# reasons.  In this case, the final cleanup might fail but the new
-	# file should still install successfully.
-	{
-	  test ! -f "$dst" ||
-	  $doit $rmcmd -f "$dst" 2>/dev/null ||
-	  { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
-	    { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
-	  } ||
-	  { echo "$0: cannot unlink or rename $dst" >&2
-	    (exit 1); exit 1
-	  }
-	} &&
-
-	# Now rename the file to the real destination.
-	$doit $mvcmd "$dsttmp" "$dst"
-      }
-    fi || exit 1
-
-    trap '' 0
-  fi
-done
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/src/other/curl/lib/CMakeLists.txt b/src/other/curl/lib/CMakeLists.txt
deleted file mode 100644
index aec1a3c..0000000
--- a/src/other/curl/lib/CMakeLists.txt
+++ /dev/null
@@ -1,124 +0,0 @@
-set(LIB_NAME libcurl)
-
-configure_file(${CURL_SOURCE_DIR}/include/curl/curlbuild.h.cmake
-  ${CURL_BINARY_DIR}/include/curl/curlbuild.h)
-configure_file(curl_config.h.cmake
-  ${CMAKE_CURRENT_BINARY_DIR}/curl_config.h)
-
-transform_makefile_inc("Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
-include(${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake)
-
-list(APPEND HHEADERS
-  ${CMAKE_CURRENT_BINARY_DIR}/curl_config.h
-  ${CURL_BINARY_DIR}/include/curl/curlbuild.h
-  )
-
-if(MSVC)
-  list(APPEND CSOURCES libcurl.rc)
-endif()
-
-# SET(CSOURCES
-# #  memdebug.c -not used
-# # nwlib.c - Not used
-# # strtok.c - specify later
-# # strtoofft.c - specify later
-# )
-
-# # if we have Kerberos 4, right now this is never on
-# #OPTION(CURL_KRB4 "Use Kerberos 4" OFF)
-# IF(CURL_KRB4)
-# SET(CSOURCES ${CSOURCES}
-# krb4.c
-# security.c
-# )
-# ENDIF(CURL_KRB4)
-
-# #OPTION(CURL_MALLOC_DEBUG "Debug mallocs in Curl" OFF)
-# MARK_AS_ADVANCED(CURL_MALLOC_DEBUG)
-# IF(CURL_MALLOC_DEBUG)
-# SET(CSOURCES ${CSOURCES}
-# memdebug.c
-# )
-# ENDIF(CURL_MALLOC_DEBUG)
-
-# # only build compat strtoofft if we need to
-# IF(NOT HAVE_STRTOLL AND NOT HAVE__STRTOI64)
-# SET(CSOURCES ${CSOURCES}
-# strtoofft.c
-# )
-# ENDIF(NOT HAVE_STRTOLL AND NOT HAVE__STRTOI64)
-
-if(HAVE_FEATURES_H)
-  set_source_files_properties(
-    cookie.c
-    easy.c
-    formdata.c
-    getenv.c
-    nonblock.c
-    hash.c
-    http.c
-    if2ip.c
-    mprintf.c
-    multi.c
-    sendf.c
-    telnet.c
-    transfer.c
-    url.c
-    COMPILE_FLAGS -D_BSD_SOURCE)
-endif(HAVE_FEATURES_H)
-
-
-# The rest of the build
-
-include_directories(${CMAKE_CURRENT_BINARY_DIR}/../include)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/..)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../include)
-include_directories(${CMAKE_CURRENT_BINARY_DIR}/..)
-include_directories(${CMAKE_CURRENT_SOURCE_DIR})
-include_directories(${CMAKE_CURRENT_BINARY_DIR})
-if(CURL_USE_ARES)
-  include_directories(${CARES_INCLUDE_DIR})
-endif()
-
-if(CURL_STATICLIB)
-  # Static lib
-  set(CURL_USER_DEFINED_DYNAMIC_OR_STATIC STATIC)
-else()
-  # DLL / so dynamic lib
-  set(CURL_USER_DEFINED_DYNAMIC_OR_STATIC SHARED)
-endif()
-
-add_library(
-  ${LIB_NAME}
-  ${CURL_USER_DEFINED_DYNAMIC_OR_STATIC}
-  ${HHEADERS} ${CSOURCES}
-  )
-
-target_link_libraries(${LIB_NAME} ${CURL_LIBS})
-
-if(WIN32)
-  add_definitions( -D_USRDLL )
-endif()
-
-set_target_properties(${LIB_NAME} PROPERTIES COMPILE_DEFINITIONS BUILDING_LIBCURL)
-
-setup_curl_dependencies(${LIB_NAME})
-
-# Remove the "lib" prefix since the library is already named "libcurl".
-set_target_properties(${LIB_NAME} PROPERTIES PREFIX "")
-set_target_properties(${LIB_NAME} PROPERTIES IMPORT_PREFIX "")
-
-if(MSVC)
-  if(NOT BUILD_RELEASE_DEBUG_DIRS)
-    # Ugly workaround to remove the "/debug" or "/release" in each output
-    set_target_properties(${LIB_NAME} PROPERTIES PREFIX "../")
-    set_target_properties(${LIB_NAME} PROPERTIES IMPORT_PREFIX "../")
-  endif()
-endif()
-
-if(WIN32)
-  if(NOT CURL_STATICLIB)
-    # Add "_imp" as a suffix before the extension to avoid conflicting with the statically linked "libcurl.lib"
-    set_target_properties(${LIB_NAME} PROPERTIES IMPORT_SUFFIX "_imp.lib")
-  endif()
-endif()
diff --git a/src/other/curl/lib/Makefile.Watcom b/src/other/curl/lib/Makefile.Watcom
deleted file mode 100644
index d881c8c..0000000
--- a/src/other/curl/lib/Makefile.Watcom
+++ /dev/null
@@ -1,565 +0,0 @@
-#
-#  Watcom / OpenWatcom / Win32 makefile for libcurl.
-#  G. Vanem <gvanem at broadpark.no>
-#
-
-TARGETS = libcurl_wc.dll libcurl_wc_imp.lib libcurl_wc.lib
-
-CC = wcc386
-
-CFLAGS = -3s -mf -d3 -hc -zff -zgf -zq -zm -zc -s -fr=con -w2 -fpi -oilrtfm -bt=nt &
-         -bd -d+ -dWIN32 -dCURL_CA_BUNDLE=getenv("CURL_CA_BUNDLE")                 &
-         -dBUILDING_LIBCURL -dHAVE_SPNEGO=1 -dENABLE_IPV6                          &
-         -dDEBUG=1 -dDEBUGBUILD -d_WIN32_WINNT=0x0501 -dWINBERAPI=__declspec(cdecl) &
-         -dWINLDAPAPI=__declspec(cdecl) -I. -I..\include
-
-#
-# Change to suite.
-#
-ZLIB_ROOT  = ..\..\..\zlib-1.2.3
-USE_ZLIB   = 0
-USE_ARES   = 0
-USE_WATT32 = 0
-
-!ifeq USE_ZLIB 1
-CFLAGS += -dHAVE_ZLIB_H -dHAVE_LIBZ -I$(ZLIB_ROOT)
-!endif
-
-!ifeq USE_ARES 1
-CFLAGS += -dUSE_ARES -I..\ares
-!endif
-
-!ifeq USE_WATT32 1
-CFLAGS += -dUSE_WATT32 -I$(%watt_root)\inc
-!endif
-
-OBJ_BASE = WC_Win32.obj
-C_ARG    = $(OBJ_BASE)\wcc386.arg
-LINK_ARG = $(OBJ_BASE)\dyn\wlink.arg
-LIB_ARG  = $(OBJ_BASE)\stat\wlib.arg
-
-# Unfortunately, we can't include Makefile.inc here because wmake doesn't
-# use backslash as the line continuation character by default
-CSOURCES = file.c timeval.c base64.c hostip.c progress.c formdata.c	&
-  cookie.c http.c sendf.c ftp.c url.c dict.c if2ip.c speedcheck.c	&
-  ldap.c ssluse.c version.c getenv.c escape.c mprintf.c telnet.c	&
-  netrc.c getinfo.c transfer.c strequal.c easy.c security.c krb4.c	&
-  krb5.c memdebug.c http_chunks.c strtok.c connect.c llist.c hash.c	&
-  multi.c content_encoding.c share.c http_digest.c md5.c curl_rand.c	&
-  http_negotiate.c http_ntlm.c inet_pton.c strtoofft.c strerror.c	&
-  hostares.c hostasyn.c hostip4.c hostip6.c hostsyn.c hostthre.c	&
-  inet_ntop.c parsedate.c select.c gtls.c sslgen.c tftp.c splay.c	&
-  strdup.c socks.c ssh.c nss.c qssl.c rawstr.c curl_addrinfo.c          &
-  socks_gssapi.c socks_sspi.c curl_sspi.c slist.c nonblock.c		&
-  curl_memrchr.c imap.c pop3.c smtp.c pingpong.c rtsp.c curl_threads.c	&
-  warnless.c
-
-OBJS = $(CSOURCES:.c=.obj)
-OBJS = $OBJ_DIR\$(OBJS: = $OBJ_DIR\)
-
-#
-# Use $(OBJS) as a template to generate $(OBJS_STAT) and $(OBJS_DYN).
-#
-OBJ_DIR   = $(OBJ_BASE)\stat
-OBJS_STAT = $+ $(OBJS) $-
-
-OBJ_DIR  = $(OBJ_BASE)\dyn
-OBJS_DYN = $+ $(OBJS) $-
-
-RESOURCE = $(OBJ_BASE)\dyn\libcurl.res
-
-all: $(OBJ_BASE) $(C_ARG) $(TARGETS) .SYMBOLIC
-	@echo Welcome to libcurl
-
-$(OBJ_BASE):
-	- mkdir $(OBJ_BASE)
-	- mkdir $(OBJ_BASE)\stat
-	- mkdir $(OBJ_BASE)\dyn
-
-libcurl_wc.dll libcurl_wc_imp.lib: $(OBJS_DYN) $(RESOURCE) $(LINK_ARG)
-	wlink name libcurl_wc.dll @$(LINK_ARG)
-
-libcurl_wc.lib: $(OBJS_STAT) $(LIB_ARG)
-	wlib -q -b- c $@ @$(LIB_ARG)
-
-clean: .SYMBOLIC
-	- rm -f $(OBJS_STAT) $(OBJS_DYN) $(RESOURCE) $(C_ARG) $(LINK_ARG) $(LIB_ARG)
-
-vclean realclean: clean .SYMBOLIC
-	- rm -f $(TARGETS) libcurl_wc.map
-	- rmdir $(OBJ_BASE)\stat
-	- rmdir $(OBJ_BASE)\dyn
-	- rmdir $(OBJ_BASE)
-
-.ERASE
-$(RESOURCE): libcurl.rc
-        wrc -dDEBUGBUILD=1 -q -r -zm -I..\include -fo=$@ libcurl.rc
-
-.ERASE
-.c{$(OBJ_BASE)\dyn}.obj:
-	$(CC) $[@ @$(C_ARG) -fo=$@
-
-.ERASE
-.c{$(OBJ_BASE)\stat}.obj:
-	$(CC) $[@ @$(C_ARG) -DCURL_STATICLIB -fo=$@
-
-$(C_ARG): $(__MAKEFILES__)
-	%create $^@
-	%append $^@ $(CFLAGS)
-
-$(LINK_ARG): $(__MAKEFILES__)
-	%create $^@
-	@%append $^@ system nt dll
-	@%append $^@ file { $(OBJS_DYN) }
-	@%append $^@ option quiet, map, caseexact, eliminate, implib=libcurl_wc_imp.lib,
-	@%append $^@ res=$(RESOURCE) libpath $(%watcom)\lib386;$(%watcom)\lib386\nt
-	@%append $^@ library clib3s.lib, wldap32.lib
-!ifeq USE_WATT32 1
-	@%append $^@ library $(%watt_root)\lib\wattcpw_imp.lib
-!else
-	@%append $^@ library ws2_32.lib
-!endif
-!ifeq USE_ZLIB 1
-	@%append $^@ library $(ZLIB_ROOT)\zlib.lib
-!endif
-!ifeq USE_ARES 1
-	@%append $^@ library ..\ares\cares.lib
-!endif
-
-$(LIB_ARG): $(__MAKEFILES__)
-	%create $^@
-	for %f in ($(OBJS_STAT)) do @%append $^@ +- %f
-
-#
-# Dependencies based on "gcc -MM .."
-#
-$(OBJ_DIR)\file.obj: file.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h strtoofft.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h &
-  progress.h sendf.h escape.h file.h speedcheck.h getinfo.h transfer.h &
-  url.h curl_memory.h parsedate.h ..\include\curl\mprintf.h memdebug.h
-$(OBJ_DIR)\timeval.obj: timeval.c timeval.h setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h
-$(OBJ_DIR)\base64.obj: base64.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\mprintf.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h urldata.h cookie.h ..\include\curl\curl.h &
-  formdata.h timeval.h http_chunks.h hostip.h hash.h llist.h &
-  curl_addrinfo.h splay.h easyif.h curl_base64.h curl_memory.h memdebug.h
-$(OBJ_DIR)\hostip.obj: hostip.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  share.h strerror.h url.h inet_ntop.h ..\include\curl\mprintf.h curl_memory.h &
-  memdebug.h
-$(OBJ_DIR)\progress.obj: progress.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  progress.h ..\include\curl\mprintf.h
-$(OBJ_DIR)\formdata.obj: formdata.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  urldata.h cookie.h formdata.h timeval.h http_chunks.h hostip.h hash.h &
-  llist.h curl_addrinfo.h splay.h easyif.h strequal.h curl_memory.h &
-  curl_rand.h ..\include\curl\mprintf.h memdebug.h
-$(OBJ_DIR)\cookie.obj: cookie.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\mprintf.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h urldata.h cookie.h ..\include\curl\curl.h &
-  formdata.h timeval.h http_chunks.h hostip.h hash.h llist.h &
-  curl_addrinfo.h splay.h strequal.h strtok.h sendf.h curl_memory.h share.h &
-  strtoofft.h rawstr.h memdebug.h curl_memrchr.h
-$(OBJ_DIR)\http.obj: http.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h &
-  transfer.h sendf.h easyif.h progress.h curl_base64.h strequal.h &
-  sslgen.h http_digest.h http_ntlm.h http_negotiate.h url.h share.h &
-  http.h curl_memory.h select.h parsedate.h strtoofft.h multiif.h rawstr.h &
-  ..\include\curl\mprintf.h memdebug.h
-$(OBJ_DIR)\sendf.obj: sendf.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  urldata.h cookie.h formdata.h timeval.h http_chunks.h hostip.h hash.h &
-  llist.h curl_addrinfo.h splay.h sendf.h connect.h sslgen.h ssh.h &
-  multiif.h ..\include\curl\mprintf.h curl_memory.h strerror.h easyif.h &
-  memdebug.h
-$(OBJ_DIR)\ftp.obj: ftp.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  urldata.h cookie.h formdata.h timeval.h http_chunks.h hostip.h hash.h &
-  llist.h curl_addrinfo.h splay.h sendf.h easyif.h if2ip.h progress.h &
-  transfer.h escape.h http.h socks.h ftp.h strtoofft.h strequal.h &
-  sslgen.h connect.h strerror.h inet_ntop.h inet_pton.h select.h &
-  parsedate.h sockaddr.h multiif.h url.h ..\include\curl\mprintf.h &
-  curl_memory.h memdebug.h
-$(OBJ_DIR)\url.obj: url.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h netrc.h &
-  sslgen.h transfer.h sendf.h progress.h strequal.h strerror.h escape.h &
-  strtok.h share.h content_encoding.h http_digest.h http_negotiate.h &
-  select.h multiif.h easyif.h speedcheck.h rawstr.h ftp.h dict.h telnet.h &
-  tftp.h http.h file.h curl_ldap.h ssh.h url.h connect.h inet_ntop.h &
-  http_ntlm.h socks.h ..\include\curl\mprintf.h curl_memory.h memdebug.h
-$(OBJ_DIR)\dict.obj: dict.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h &
-  transfer.h sendf.h progress.h strequal.h dict.h rawstr.h &
-  ..\include\curl\mprintf.h memdebug.h
-$(OBJ_DIR)\if2ip.obj: if2ip.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h inet_ntop.h strequal.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h if2ip.h &
-  ..\include\curl\mprintf.h curl_memory.h memdebug.h
-$(OBJ_DIR)\speedcheck.obj: speedcheck.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h urldata.h cookie.h &
-  formdata.h timeval.h http_chunks.h hostip.h hash.h llist.h &
-  curl_addrinfo.h splay.h sendf.h multiif.h speedcheck.h
-$(OBJ_DIR)\ldap.obj: ldap.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h
-$(OBJ_DIR)\ssluse.obj: ssluse.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  url.h inet_pton.h ssluse.h connect.h strequal.h select.h sslgen.h &
-  rawstr.h ..\include\curl\mprintf.h
-$(OBJ_DIR)\version.obj: version.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  urldata.h cookie.h formdata.h timeval.h http_chunks.h hostip.h hash.h &
-  llist.h curl_addrinfo.h splay.h sslgen.h ..\include\curl\mprintf.h
-$(OBJ_DIR)\getenv.obj: getenv.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  curl_memory.h memdebug.h
-$(OBJ_DIR)\escape.obj: escape.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  curl_memory.h urldata.h cookie.h formdata.h timeval.h http_chunks.h hostip.h &
-  hash.h llist.h curl_addrinfo.h splay.h easyif.h &
-  ..\include\curl\mprintf.h memdebug.h
-$(OBJ_DIR)\mprintf.obj: mprintf.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\mprintf.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h curl_memory.h ..\include\curl\curl.h memdebug.h
-$(OBJ_DIR)\telnet.obj: telnet.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h &
-  transfer.h sendf.h telnet.h connect.h ..\include\curl\mprintf.h &
-  arpa_telnet.h curl_memory.h select.h strequal.h rawstr.h memdebug.h
-$(OBJ_DIR)\netrc.obj: netrc.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  netrc.h strequal.h strtok.h curl_memory.h rawstr.h ..\include\curl\mprintf.h &
-  memdebug.h
-$(OBJ_DIR)\getinfo.obj: getinfo.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  urldata.h cookie.h formdata.h timeval.h http_chunks.h hostip.h hash.h &
-  llist.h curl_addrinfo.h splay.h getinfo.h curl_memory.h sslgen.h connect.h &
-  memdebug.h
-$(OBJ_DIR)\transfer.obj: transfer.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h strtoofft.h strequal.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h rawstr.h urldata.h &
-  cookie.h formdata.h timeval.h http_chunks.h hostip.h hash.h llist.h &
-  curl_addrinfo.h splay.h netrc.h content_encoding.h transfer.h sendf.h &
-  speedcheck.h progress.h http.h url.h getinfo.h sslgen.h http_digest.h &
-  http_ntlm.h http_negotiate.h share.h curl_memory.h select.h multiif.h &
-  easyif.h ..\include\curl\mprintf.h memdebug.h
-$(OBJ_DIR)\strequal.obj: strequal.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h strequal.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h
-$(OBJ_DIR)\easy.obj: easy.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h strequal.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h urldata.h cookie.h &
-  formdata.h timeval.h http_chunks.h hostip.h hash.h llist.h &
-  curl_addrinfo.h splay.h transfer.h sslgen.h url.h getinfo.h share.h &
-  strdup.h curl_memory.h progress.h easyif.h select.h sendf.h http_ntlm.h &
-  curl_rand.h connect.h ..\include\curl\mprintf.h memdebug.h
-$(OBJ_DIR)\security.obj: security.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h
-$(OBJ_DIR)\krb4.obj: krb4.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h
-$(OBJ_DIR)\krb5.obj: krb5.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h
-$(OBJ_DIR)\memdebug.obj: memdebug.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  ..\include\curl\mprintf.h urldata.h cookie.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h curl_memory.h &
-  memdebug.h
-$(OBJ_DIR)\http_chunks.obj: http_chunks.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  urldata.h cookie.h ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  content_encoding.h http.h curl_memory.h easyif.h ..\include\curl\mprintf.h &
-  memdebug.h
-$(OBJ_DIR)\strtok.obj: strtok.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h strtok.h
-$(OBJ_DIR)\connect.obj: connect.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\mprintf.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h urldata.h cookie.h ..\include\curl\curl.h &
-  formdata.h timeval.h http_chunks.h hostip.h hash.h llist.h &
-  curl_addrinfo.h splay.h sendf.h if2ip.h strerror.h connect.h curl_memory.h &
-  select.h url.h multiif.h sockaddr.h inet_ntop.h sslgen.h memdebug.h
-$(OBJ_DIR)\llist.obj: llist.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h llist.h curl_memory.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h memdebug.h
-$(OBJ_DIR)\hash.obj: hash.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h hash.h llist.h &
-  ..\include\curl\mprintf.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h curl_memory.h &
-  ..\include\curl\curl.h memdebug.h
-$(OBJ_DIR)\multi.obj: multi.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  urldata.h cookie.h formdata.h timeval.h http_chunks.h hostip.h hash.h &
-  llist.h curl_addrinfo.h splay.h transfer.h url.h connect.h progress.h &
-  easyif.h multiif.h sendf.h http.h ..\include\curl\mprintf.h curl_memory.h &
-  memdebug.h
-$(OBJ_DIR)\content_encoding.obj: content_encoding.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h
-$(OBJ_DIR)\share.obj: share.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  urldata.h cookie.h formdata.h timeval.h http_chunks.h hostip.h hash.h &
-  llist.h curl_addrinfo.h splay.h share.h curl_memory.h memdebug.h
-$(OBJ_DIR)\http_digest.obj: http_digest.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  urldata.h cookie.h ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  rawstr.h curl_base64.h curl_md5.h http_digest.h strtok.h url.h curl_memory.h &
-  easyif.h ..\include\curl\mprintf.h memdebug.h
-$(OBJ_DIR)\md5.obj: md5.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h curl_md5.h
-$(OBJ_DIR)\http_negotiate.obj: http_negotiate.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h
-$(OBJ_DIR)\http_ntlm.obj: http_ntlm.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  urldata.h cookie.h ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h easyif.h &
-  sendf.h rawstr.h curl_base64.h http_ntlm.h url.h curl_memory.h ssluse.h &
-  ..\include\curl\mprintf.h memdebug.h
-$(OBJ_DIR)\inet_pton.obj: inet_pton.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  inet_pton.h
-$(OBJ_DIR)\strtoofft.obj: strtoofft.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  strtoofft.h
-$(OBJ_DIR)\strerror.obj: strerror.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  strerror.h urldata.h cookie.h formdata.h timeval.h http_chunks.h &
-  hostip.h hash.h llist.h curl_addrinfo.h splay.h &
-  ..\include\curl\mprintf.h
-$(OBJ_DIR)\hostares.obj: hostares.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  share.h strerror.h url.h multiif.h inet_pton.h connect.h select.h &
-  ..\include\curl\mprintf.h curl_memory.h memdebug.h
-$(OBJ_DIR)\hostasyn.obj: hostasyn.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  share.h strerror.h url.h ..\include\curl\mprintf.h curl_memory.h memdebug.h
-$(OBJ_DIR)\hostip4.obj: hostip4.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  share.h strerror.h url.h inet_pton.h ..\include\curl\mprintf.h curl_memory.h &
-  memdebug.h
-$(OBJ_DIR)\hostip6.obj: hostip6.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  share.h strerror.h url.h inet_pton.h connect.h &
-  ..\include\curl\mprintf.h curl_memory.h memdebug.h
-$(OBJ_DIR)\hostsyn.obj: hostsyn.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  share.h strerror.h url.h ..\include\curl\mprintf.h curl_memory.h memdebug.h
-$(OBJ_DIR)\hostthre.obj: hostthre.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  share.h strerror.h url.h multiif.h inet_pton.h &
-  ..\include\curl\mprintf.h inet_ntop.h curl_memory.h memdebug.h
-$(OBJ_DIR)\inet_ntop.obj: inet_ntop.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  ..\include\curl\mprintf.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h inet_ntop.h
-$(OBJ_DIR)\parsedate.obj: parsedate.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h rawstr.h parsedate.h
-$(OBJ_DIR)\select.obj: select.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h ..\include\curl\curl.h &
-  ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  urldata.h cookie.h formdata.h timeval.h http_chunks.h hostip.h hash.h &
-  llist.h curl_addrinfo.h splay.h connect.h select.h
-$(OBJ_DIR)\gtls.obj: gtls.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h
-$(OBJ_DIR)\sslgen.obj: sslgen.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sslgen.h &
-  ssluse.h gtls.h nssg.h qssl.h sendf.h rawstr.h url.h curl_memory.h &
-  progress.h memdebug.h
-$(OBJ_DIR)\tftp.obj: tftp.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h &
-  transfer.h sendf.h tftp.h progress.h connect.h strerror.h sockaddr.h &
-  url.h ..\include\curl\mprintf.h curl_memory.h select.h memdebug.h
-$(OBJ_DIR)\splay.obj: splay.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h splay.h
-$(OBJ_DIR)\strdup.obj: strdup.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h strdup.h
-$(OBJ_DIR)\socks.obj: socks.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  strequal.h select.h connect.h socks.h memdebug.h
-$(OBJ_DIR)\ssh.obj: ssh.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h
-$(OBJ_DIR)\nss.obj: nss.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h urldata.h cookie.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h formdata.h timeval.h &
-  http_chunks.h hostip.h hash.h llist.h curl_addrinfo.h splay.h sendf.h &
-  url.h connect.h strequal.h select.h sslgen.h ..\include\curl\mprintf.h
-$(OBJ_DIR)\qssl.obj: qssl.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h
-$(OBJ_DIR)\nonblock.obj: nonblock.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h nonblock.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h
-$(OBJ_DIR)\rawstr.obj: rawstr.c setup.h config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h setup_once.h rawstr.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h
-$(OBJ_DIR)\curl_addrinfo.obj: curl_addrinfo.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h curl_addrinfo.h &
-  ..\include\curl\mprintf.h curl_memory.h memdebug.h
-$(OBJ_DIR)\curl_rand.obj: curl_rand.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h curl_rand.h &
-  ..\include\curl\mprintf.h curl_memory.h memdebug.h
-$(OBJ_DIR)\curl_memrchr.obj: curl_memrchr.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h curl_memrchr.h &
-  ..\include\curl\mprintf.h curl_memory.h memdebug.h
-$(OBJ_DIR)\imap.obj: imap.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h imap.h &
-  ..\include\curl\mprintf.h curl_memory.h memdebug.h
-$(OBJ_DIR)\pop3.obj: pop3.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h pop3.h &
-  ..\include\curl\mprintf.h curl_memory.h memdebug.h
-$(OBJ_DIR)\smtp.obj: smtp.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h smtp.h &
-  ..\include\curl\mprintf.h curl_memory.h memdebug.h
-$(OBJ_DIR)\pingpong.obj: pingpong.c setup.h config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h pingpong.h &
-  ..\include\curl\mprintf.h curl_memory.h memdebug.h
diff --git a/src/other/curl/lib/Makefile.am b/src/other/curl/lib/Makefile.am
deleted file mode 100644
index 32001f1..0000000
--- a/src/other/curl/lib/Makefile.am
+++ /dev/null
@@ -1,171 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-###########################################################################
-AUTOMAKE_OPTIONS = foreign nostdinc
-
-DSP = vc6libcurl.dsp
-VCPROJ = libcurl.vcproj
-
-DOCS = README.encoding README.memoryleak README.ares README.curlx	\
- README.hostip README.multi_socket README.httpauth README.pipelining    \
- README.curl_off_t README.pingpong
-
-CMAKE_DIST = CMakeLists.txt curl_config.h.cmake
-
-EXTRA_DIST = Makefile.b32 Makefile.m32 Makefile.vc6 Makefile.riscos $(DSP) \
- vc6libcurl.dsw config-win32.h config-win32ce.h config-riscos.h            \
- config-mac.h curl_config.h.in makefile.dj config.dos libcurl.plist        \
- libcurl.rc config-amigaos.h amigaos.c amigaos.h makefile.amiga		   \
- Makefile.netware nwlib.c nwos.c libcurl.imp msvcproj.head msvcproj.foot   \
- config-win32ce.h config-os400.h setup-os400.h config-symbian.h		   \
- Makefile.Watcom config-tpf.h $(DOCS) $(VCPROJ) mk-ca-bundle.pl		   \
- firefox-db2pem.sh $(CMAKE_DIST) config-vxworks.h Makefile.vxworks
-
-# CLEANFILES = $(DSP) $(VCPROJ)
-
-noinst_LTLIBRARIES = libcurl.la
-LIBCURL_LIBS = @LIBCURL_LIBS@
-
-# Specify our include paths here, and do it relative to $(top_srcdir) and
-# $(top_builddir), to ensure that these paths which belong to the library
-# being currently built and tested are searched before the library which
-# might possibly already be installed in the system.
-#
-# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h
-# $(top_builddir)/include for generated curlbuild.h included from lib/setup.h
-# $(top_srcdir)/include is for libcurl's external include files
-# $(top_builddir)/lib is for libcurl's generated lib/curl_config.h file
-# $(top_srcdir)/lib is for libcurl's lib/setup.h and other "private" files
-# $(top_builddir)/ares is for in-tree c-ares's generated ares_build.h file
-# $(top_srcdir)/ares is for in-tree c-ares's external include files
-
-if USE_EMBEDDED_ARES
-INCLUDES = -I$(top_builddir)/include/curl \
-           -I$(top_builddir)/include      \
-           -I$(top_srcdir)/include        \
-           -I$(top_builddir)/lib          \
-           -I$(top_srcdir)/lib            \
-           -I$(top_builddir)/ares         \
-           -I$(top_srcdir)/ares
-else
-INCLUDES = -I$(top_builddir)/include/curl \
-           -I$(top_builddir)/include      \
-           -I$(top_srcdir)/include        \
-           -I$(top_builddir)/lib          \
-           -I$(top_srcdir)/lib
-endif
-
-if SONAME_BUMP
-#
-# Bumping of SONAME conditionally may seem like a weird thing to do, and yeah
-# it is. The problem is that we try to avoid the bump as hard as possible, but
-# yet it is still necessary for a few rare situations. The configure script will
-# attempt to figure out these situations, and it can be forced to consider this
-# to be such a case! See README.curl_off_t for further details.
-#
-# This conditional soname bump SHOULD be removed at next "proper" bump.
-#
-VERSIONINFO=-version-info 7:0:2
-else
-VERSIONINFO=-version-info 6:0:2
-endif
-
-# This flag accepts an argument of the form current[:revision[:age]]. So,
-# passing -version-info 3:12:1 sets current to 3, revision to 12, and age to
-# 1.
-#
-# Here's the simplified rule guide on how to change -version-info:
-# (current version is C:R:A)
-#
-# 1. if there are only source changes, use C:R+1:A
-# 2. if interfaces were added use C+1:0:A+1
-# 3. if interfaces were removed, then use C+1:0:0
-#
-# For the full guide on libcurl ABI rules, see docs/libcurl/ABI
-
-if NO_UNDEFINED
-# The -no-undefined flag is CRUCIAL for this to build fine on Cygwin.
-UNDEF = -no-undefined
-endif
-
-if MIMPURE
-# This is for gcc on Solaris (8+ ?) to avoid "relocations remain against
-# allocatable but non-writable sections" problems.
-MIMPURE = -mimpure-text
-endif
-
-libcurl_la_LDFLAGS = $(UNDEF) $(VERSIONINFO) $(MIMPURE) $(LIBCURL_LIBS)
-
-# Makefile.inc provides the CSOURCES and HHEADERS defines
-include Makefile.inc
-
-libcurl_la_SOURCES = $(CSOURCES) $(HHEADERS)
-
-WIN32SOURCES = $(CSOURCES)
-WIN32HEADERS = $(HHEADERS) config-win32.h
-
-DSPOUT = | awk '{printf("%s\r\n", $$0)}' >> $(DSP)
-VCPROJOUT = | awk '{printf("%s\r\n", $$0)}' >> $(VCPROJ)
-
-#$(DSP): msvcproj.head msvcproj.foot Makefile.am
-#	echo "creating $(DSP)"
-#	@(cp $(srcdir)/msvcproj.head $(DSP); \
-#	echo "# Begin Group \"Source Files\"" $(DSPOUT); \
-#        echo "" $(DSPOUT); \
-#        echo "# PROP Default_Filter \"\"" $(DSPOUT); \
-#        win32_srcs='$(WIN32SOURCES)'; \
-#        sorted_srcs=`for file in $$win32_srcs; do echo $$file; done | sort`; \
-#        for file in $$sorted_srcs; do \
-#	echo "# Begin Source File" $(DSPOUT); \
-#	echo "" $(DSPOUT); \
-#	echo "SOURCE=.\\"$$file $(DSPOUT); \
-#	echo "# End Source File" $(DSPOUT); \
-#	done; \
-#	echo "# End Group" $(DSPOUT); \
-#	echo "# Begin Group \"Header Files\"" $(DSPOUT); \
-#        echo "" $(DSPOUT); \
-#        echo "# PROP Default_Filter \"\"" $(DSPOUT); \
-#        win32_hdrs='$(WIN32HEADERS)'; \
-#        sorted_hdrs=`for file in $$win32_hdrs; do echo $$file; done | sort`; \
-#        for file in $$sorted_hdrs; do \
-#	echo "# Begin Source File" $(DSPOUT); \
-#	echo "" $(DSPOUT); \
-#	echo "SOURCE=.\\"$$file $(DSPOUT); \
-#	echo "# End Source File" $(DSPOUT); \
-#	done; \
-#	echo "# End Group" $(DSPOUT); \
-#	cat $(srcdir)/msvcproj.foot $(DSPOUT) )
-
-#$(VCPROJ): vc8proj.head vc8proj.foot Makefile.am
-#	echo "creating $(VCPROJ)"
-#	@(cp $(srcdir)/vc8proj.head $(VCPROJ); \
-#        win32_srcs='$(WIN32SOURCES)'; \
-#        sorted_srcs=`for file in $$win32_srcs; do echo $$file; done | sort`; \
-#        for file in $$sorted_srcs; do \
-#	echo "<File RelativePath=\""$$file"\"></File>" $(VCPROJOUT); \
-#	done; \
-#	echo "</Filter><Filter	Name=\"Header Files\">" $(VCPROJOUT); \
-#        win32_hdrs='$(WIN32HEADERS)'; \
-#        sorted_hdrs=`for file in $$win32_hdrs; do echo $$file; done | sort`; \
-#        for file in $$sorted_hdrs; do \
-#	echo "<File RelativePath=\""$$file"\"></File>" $(VCPROJOUT); \
-#	done; \
-#	cat $(srcdir)/vc8proj.foot $(VCPROJOUT) )
diff --git a/src/other/curl/lib/Makefile.b32 b/src/other/curl/lib/Makefile.b32
deleted file mode 100644
index 509ae27..0000000
--- a/src/other/curl/lib/Makefile.b32
+++ /dev/null
@@ -1,89 +0,0 @@
-############################################################
-#
-#  Makefile.b32 - Borland's C++ Compiler 5.X
-#
-#  'lib' directory
-#
-#  'BCCDIR' has to be set up to point to the base directory
-#  of the compiler, i.e. SET BCCDIR = c:\Borland\BCC55
-#  where c:\Borland\BCC55 is the compiler is installed
-#
-#  Written by Jaepil Kim, pit at paradise.net.nz
-############################################################
-
-# Edit the path below to point to the base of your Zlib sources.
-!ifndef ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.1
-!endif
-
-# Edit the path below to point to the base of your OpenSSL package.
-!ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-0.9.7d
-!endif
-
-# Set libcurl static lib, dll and import lib
-LIBCURL_LIB    = libcurl.lib
-LIBCURL_DLL    = libcurl.dll
-LIBCURL_IMPLIB = libcurl_imp.lib
-
-# Setup environment
-CXX      = bcc32
-LD       = bcc32
-CP       = copy
-RM       = del
-LIB      = tlib
-IMPLIB   = implib
-
-CXXFLAGS = -q -5 -O2 -w-aus -w-ccc -w-csu -w-par -w-pia -w-rch -w-inl -w-ngu -w-pro -tWM
-LIBFLAGS = /C /P32
-LDFLAGS  = -q -lq -laa -tWD
-
-INCDIRS  = -I.;../include
-LINKLIB  = $(BCCDIR)/lib/cw32mt.lib
-
-# If you build with SSL support, set WITH_SSL=1
-DEFINES  = -DNDEBUG -DWIN32 -D_CONSOLE -D_MBCS -DBUILDING_LIBCURL
-
-!ifdef WITH_ZLIB
-DEFINES  = $(DEFINES) -DHAVE_LIBZ -DHAVE_ZLIB_H
-INCDIRS  = $(INCDIRS);$(ZLIB_PATH)
-LINKLIB  = $(LINKLIB) $(ZLIB_PATH)/zlib.lib
-!endif
-
-!ifdef WITH_SSL
-DEFINES  = $(DEFINES) -DUSE_SSLEAY
-INCDIRS  = $(INCDIRS);$(OPENSSL_PATH)/inc32;$(OPENSSL_PATH)/inc32/openssl
-LINKLIB  = $(LINKLIB) $(OPENSSL_PATH)/out32/ssleay32.lib $(OPENSSL_PATH)/out32/libeay32.lib
-!endif
-
-.autodepend
-
-# Makefile.inc provides the CSOURCES and HHEADERS defines
-!include Makefile.inc
-
-OBJECTS = $(CSOURCES:.c=.obj)
-
-.c.obj:
-	$(CXX) -c $(INCDIRS) $(CXXFLAGS) $(DEFINES) $<
-
-all:	$(LIBCURL_LIB) $(LIBCURL_DLL)
-
-clean:
-	-$(RM) $(LIBCURL_LIB)
-	-$(RM) $(LIBCURL_IMPLIB)
-	-$(RM) libcurl.tds
-	-$(RM) *.obj
-
-$(LIBCURL_LIB): $(OBJECTS)
-	@-$(RM) $@
-	$(LIB) $(LIBFLAGS) $@ @&&!
-+$(**: = &^
-+)
-!
-
-$(LIBCURL_DLL) $(LIBCURL_IMPLIB): $(OBJECTS) $(LINKLIB)
-	@-$(RM) $(LIBCURL_DLL)
-	@-$(RM) $(LIBCURL_IMPLIB)
-	$(LD) $(LDFLAGS) -e$(LIBCURL_DLL) $**
-	$(IMPLIB) $(LIBCURL_IMPLIB) $(LIBCURL_DLL)
-
diff --git a/src/other/curl/lib/Makefile.in b/src/other/curl/lib/Makefile.in
deleted file mode 100644
index 22dde28..0000000
--- a/src/other/curl/lib/Makefile.in
+++ /dev/null
@@ -1,818 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-# ./lib/Makefile.inc
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
-	$(srcdir)/Makefile.inc $(srcdir)/curl_config.h.in
-subdir = lib
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
-	$(top_srcdir)/m4/curl-confopts.m4 \
-	$(top_srcdir)/m4/curl-functions.m4 \
-	$(top_srcdir)/m4/curl-override.m4 \
-	$(top_srcdir)/m4/curl-reentrant.m4 \
-	$(top_srcdir)/m4/curl-system.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = curl_config.h $(top_builddir)/src/curl_config.h \
-	$(top_builddir)/include/curl/curlbuild.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-LTLIBRARIES = $(noinst_LTLIBRARIES)
-libcurl_la_LIBADD =
-am__objects_1 = file.lo timeval.lo base64.lo hostip.lo progress.lo \
-	formdata.lo cookie.lo http.lo sendf.lo ftp.lo url.lo dict.lo \
-	if2ip.lo speedcheck.lo ldap.lo ssluse.lo version.lo getenv.lo \
-	escape.lo mprintf.lo telnet.lo netrc.lo getinfo.lo transfer.lo \
-	strequal.lo easy.lo security.lo krb4.lo krb5.lo memdebug.lo \
-	http_chunks.lo strtok.lo connect.lo llist.lo hash.lo multi.lo \
-	content_encoding.lo share.lo http_digest.lo md5.lo \
-	curl_rand.lo http_negotiate.lo http_ntlm.lo inet_pton.lo \
-	strtoofft.lo strerror.lo hostares.lo hostasyn.lo hostip4.lo \
-	hostip6.lo hostsyn.lo hostthre.lo inet_ntop.lo parsedate.lo \
-	select.lo gtls.lo sslgen.lo tftp.lo splay.lo strdup.lo \
-	socks.lo ssh.lo nss.lo qssl.lo rawstr.lo curl_addrinfo.lo \
-	socks_gssapi.lo socks_sspi.lo curl_sspi.lo slist.lo \
-	nonblock.lo curl_memrchr.lo imap.lo pop3.lo smtp.lo \
-	pingpong.lo rtsp.lo curl_threads.lo warnless.lo
-am__objects_2 =
-am_libcurl_la_OBJECTS = $(am__objects_1) $(am__objects_2)
-libcurl_la_OBJECTS = $(am_libcurl_la_OBJECTS)
-libcurl_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
-	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-	$(libcurl_la_LDFLAGS) $(LDFLAGS) -o $@
-DEFAULT_INCLUDES = 
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
-	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
-	$(LDFLAGS) -o $@
-SOURCES = $(libcurl_la_SOURCES)
-DIST_SOURCES = $(libcurl_la_SOURCES)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
-CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
-CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
-CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
-CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
-CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
-CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
-CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
-CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
-CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
-CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
-CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
-CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
-CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
-CURL_LIBS = @CURL_LIBS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
-IDN_ENABLED = @IDN_ENABLED@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-IPV6_ENABLED = @IPV6_ENABLED@
-KRB4_ENABLED = @KRB4_ENABLED@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCURL_LIBS = @LIBCURL_LIBS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MANOPT = @MANOPT@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-NROFF = @NROFF@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH = @PATH@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PERL = @PERL@
-PKGADD_NAME = @PKGADD_NAME@
-PKGADD_PKG = @PKGADD_PKG@
-PKGADD_VENDOR = @PKGADD_VENDOR@
-PKGCONFIG = @PKGCONFIG@
-RANDOM_FILE = @RANDOM_FILE@
-RANLIB = @RANLIB@
-REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-SSL_ENABLED = @SSL_ENABLED@
-STRIP = @STRIP@
-SUPPORT_FEATURES = @SUPPORT_FEATURES@
-SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
-TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
-USE_ARES = @USE_ARES@
-USE_GNUTLS = @USE_GNUTLS@
-USE_LIBSSH2 = @USE_LIBSSH2@
-USE_NSS = @USE_NSS@
-USE_SSLEAY = @USE_SSLEAY@
-USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
-VERSION = @VERSION@
-VERSIONNUM = @VERSIONNUM@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-libext = @libext@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-###########################################################################
-AUTOMAKE_OPTIONS = foreign nostdinc
-DSP = vc6libcurl.dsp
-VCPROJ = libcurl.vcproj
-DOCS = README.encoding README.memoryleak README.ares README.curlx	\
- README.hostip README.multi_socket README.httpauth README.pipelining    \
- README.curl_off_t README.pingpong
-
-CMAKE_DIST = CMakeLists.txt curl_config.h.cmake
-EXTRA_DIST = Makefile.b32 Makefile.m32 Makefile.vc6 Makefile.riscos $(DSP) \
- vc6libcurl.dsw config-win32.h config-win32ce.h config-riscos.h            \
- config-mac.h curl_config.h.in makefile.dj config.dos libcurl.plist        \
- libcurl.rc config-amigaos.h amigaos.c amigaos.h makefile.amiga		   \
- Makefile.netware nwlib.c nwos.c libcurl.imp msvcproj.head msvcproj.foot   \
- config-win32ce.h config-os400.h setup-os400.h config-symbian.h		   \
- Makefile.Watcom config-tpf.h $(DOCS) $(VCPROJ) mk-ca-bundle.pl		   \
- firefox-db2pem.sh $(CMAKE_DIST) config-vxworks.h Makefile.vxworks
-
-
-# CLEANFILES = $(DSP) $(VCPROJ)
-noinst_LTLIBRARIES = libcurl.la
- at USE_EMBEDDED_ARES_FALSE@INCLUDES = -I$(top_builddir)/include/curl \
- at USE_EMBEDDED_ARES_FALSE@           -I$(top_builddir)/include      \
- at USE_EMBEDDED_ARES_FALSE@           -I$(top_srcdir)/include        \
- at USE_EMBEDDED_ARES_FALSE@           -I$(top_builddir)/lib          \
- at USE_EMBEDDED_ARES_FALSE@           -I$(top_srcdir)/lib
-
-
-# Specify our include paths here, and do it relative to $(top_srcdir) and
-# $(top_builddir), to ensure that these paths which belong to the library
-# being currently built and tested are searched before the library which
-# might possibly already be installed in the system.
-#
-# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h
-# $(top_builddir)/include for generated curlbuild.h included from lib/setup.h
-# $(top_srcdir)/include is for libcurl's external include files
-# $(top_builddir)/lib is for libcurl's generated lib/curl_config.h file
-# $(top_srcdir)/lib is for libcurl's lib/setup.h and other "private" files
-# $(top_builddir)/ares is for in-tree c-ares's generated ares_build.h file
-# $(top_srcdir)/ares is for in-tree c-ares's external include files
- at USE_EMBEDDED_ARES_TRUE@INCLUDES = -I$(top_builddir)/include/curl \
- at USE_EMBEDDED_ARES_TRUE@           -I$(top_builddir)/include      \
- at USE_EMBEDDED_ARES_TRUE@           -I$(top_srcdir)/include        \
- at USE_EMBEDDED_ARES_TRUE@           -I$(top_builddir)/lib          \
- at USE_EMBEDDED_ARES_TRUE@           -I$(top_srcdir)/lib            \
- at USE_EMBEDDED_ARES_TRUE@           -I$(top_builddir)/ares         \
- at USE_EMBEDDED_ARES_TRUE@           -I$(top_srcdir)/ares
-
- at SONAME_BUMP_FALSE@VERSIONINFO = -version-info 6:0:2
-
-#
-# Bumping of SONAME conditionally may seem like a weird thing to do, and yeah
-# it is. The problem is that we try to avoid the bump as hard as possible, but
-# yet it is still necessary for a few rare situations. The configure script will
-# attempt to figure out these situations, and it can be forced to consider this
-# to be such a case! See README.curl_off_t for further details.
-#
-# This conditional soname bump SHOULD be removed at next "proper" bump.
-#
- at SONAME_BUMP_TRUE@VERSIONINFO = -version-info 7:0:2
-
-# This flag accepts an argument of the form current[:revision[:age]]. So,
-# passing -version-info 3:12:1 sets current to 3, revision to 12, and age to
-# 1.
-#
-# Here's the simplified rule guide on how to change -version-info:
-# (current version is C:R:A)
-#
-# 1. if there are only source changes, use C:R+1:A
-# 2. if interfaces were added use C+1:0:A+1
-# 3. if interfaces were removed, then use C+1:0:0
-#
-# For the full guide on libcurl ABI rules, see docs/libcurl/ABI
-
-# The -no-undefined flag is CRUCIAL for this to build fine on Cygwin.
- at NO_UNDEFINED_TRUE@UNDEF = -no-undefined
-
-# This is for gcc on Solaris (8+ ?) to avoid "relocations remain against
-# allocatable but non-writable sections" problems.
- at MIMPURE_TRUE@MIMPURE = -mimpure-text
-libcurl_la_LDFLAGS = $(UNDEF) $(VERSIONINFO) $(MIMPURE) $(LIBCURL_LIBS)
-CSOURCES = file.c timeval.c base64.c hostip.c progress.c formdata.c	\
-  cookie.c http.c sendf.c ftp.c url.c dict.c if2ip.c speedcheck.c	\
-  ldap.c ssluse.c version.c getenv.c escape.c mprintf.c telnet.c	\
-  netrc.c getinfo.c transfer.c strequal.c easy.c security.c krb4.c	\
-  krb5.c memdebug.c http_chunks.c strtok.c connect.c llist.c hash.c	\
-  multi.c content_encoding.c share.c http_digest.c md5.c curl_rand.c	\
-  http_negotiate.c http_ntlm.c inet_pton.c strtoofft.c strerror.c	\
-  hostares.c hostasyn.c hostip4.c hostip6.c hostsyn.c hostthre.c	\
-  inet_ntop.c parsedate.c select.c gtls.c sslgen.c tftp.c splay.c	\
-  strdup.c socks.c ssh.c nss.c qssl.c rawstr.c curl_addrinfo.c          \
-  socks_gssapi.c socks_sspi.c curl_sspi.c slist.c nonblock.c		\
-  curl_memrchr.c imap.c pop3.c smtp.c pingpong.c rtsp.c curl_threads.c	\
-  warnless.c
-
-HHEADERS = arpa_telnet.h netrc.h file.h timeval.h qssl.h hostip.h	\
-  progress.h formdata.h cookie.h http.h sendf.h ftp.h url.h dict.h	\
-  if2ip.h speedcheck.h urldata.h curl_ldap.h ssluse.h escape.h telnet.h	\
-  getinfo.h strequal.h krb4.h memdebug.h http_chunks.h curl_rand.h	\
-  strtok.h connect.h llist.h hash.h content_encoding.h share.h		\
-  curl_md5.h http_digest.h http_negotiate.h http_ntlm.h inet_pton.h	\
-  strtoofft.h strerror.h inet_ntop.h curlx.h curl_memory.h setup.h	\
-  transfer.h select.h easyif.h multiif.h parsedate.h sslgen.h gtls.h	\
-  tftp.h sockaddr.h splay.h strdup.h setup_once.h socks.h ssh.h nssg.h	\
-  curl_base64.h rawstr.h curl_addrinfo.h curl_sspi.h slist.h nonblock.h	\
-  curl_memrchr.h imap.h pop3.h smtp.h pingpong.h rtsp.h curl_threads.h	\
-  warnless.h
-
-
-# Makefile.inc provides the CSOURCES and HHEADERS defines
-libcurl_la_SOURCES = $(CSOURCES) $(HHEADERS)
-WIN32SOURCES = $(CSOURCES)
-WIN32HEADERS = $(HHEADERS) config-win32.h
-DSPOUT = | awk '{printf("%s\r\n", $$0)}' >> $(DSP)
-VCPROJOUT = | awk '{printf("%s\r\n", $$0)}' >> $(VCPROJ)
-all: curl_config.h
-	$(MAKE) $(AM_MAKEFLAGS) all-am
-
-.SUFFIXES:
-.SUFFIXES: .c .lo .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Makefile.inc $(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) --foreign lib/Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign lib/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-curl_config.h: stamp-h1
-	@if test ! -f $@; then \
-	  rm -f stamp-h1; \
-	  $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
-	else :; fi
-
-stamp-h1: $(srcdir)/curl_config.h.in $(top_builddir)/config.status
-	@rm -f stamp-h1
-	cd $(top_builddir) && $(SHELL) ./config.status lib/curl_config.h
-$(srcdir)/curl_config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) 
-	($(am__cd) $(top_srcdir) && $(AUTOHEADER))
-	rm -f stamp-h1
-	touch $@
-
-distclean-hdr:
-	-rm -f curl_config.h stamp-h1
-
-clean-noinstLTLIBRARIES:
-	-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
-	@list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
-	  dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
-	  test "$$dir" != "$$p" || dir=.; \
-	  echo "rm -f \"$${dir}/so_locations\""; \
-	  rm -f "$${dir}/so_locations"; \
-	done
-libcurl.la: $(libcurl_la_OBJECTS) $(libcurl_la_DEPENDENCIES) 
-	$(libcurl_la_LINK)  $(libcurl_la_OBJECTS) $(libcurl_la_LIBADD) $(LIBS)
-
-mostlyclean-compile:
-	-rm -f *.$(OBJEXT)
-
-distclean-compile:
-	-rm -f *.tab.c
-
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/base64.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/connect.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/content_encoding.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/cookie.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/curl_addrinfo.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/curl_memrchr.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/curl_rand.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/curl_sspi.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/curl_threads.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/dict.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/easy.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/escape.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/file.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/formdata.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ftp.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/getenv.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/getinfo.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/gtls.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/hash.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/hostares.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/hostasyn.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/hostip.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/hostip4.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/hostip6.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/hostsyn.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/hostthre.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/http.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/http_chunks.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/http_digest.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/http_negotiate.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/http_ntlm.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/if2ip.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/imap.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/inet_ntop.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/inet_pton.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/krb4.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/krb5.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ldap.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/llist.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/md5.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/memdebug.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/mprintf.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/multi.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/netrc.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/nonblock.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/nss.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/parsedate.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/pingpong.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/pop3.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/progress.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/qssl.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/rawstr.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/rtsp.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/security.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/select.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sendf.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/share.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/slist.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/smtp.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/socks.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/socks_gssapi.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/socks_sspi.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/speedcheck.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/splay.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ssh.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sslgen.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ssluse.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/strdup.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/strequal.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/strerror.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/strtok.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/strtoofft.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/telnet.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/tftp.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/timeval.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/transfer.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/url.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/version.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/warnless.Plo at am__quote@
-
-.c.o:
- at am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c $<
-
-.c.obj:
- at am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-.c.lo:
- at am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES) curl_config.h.in $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	set x; \
-	here=`pwd`; \
-	list='$(SOURCES) $(HEADERS) curl_config.h.in $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES) curl_config.h.in $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	list='$(SOURCES) $(HEADERS) curl_config.h.in $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(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: check-am
-all-am: Makefile $(LTLIBRARIES) curl_config.h
-installdirs:
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
-	mostlyclean-am
-
-distclean: distclean-am
-	-rm -rf ./$(DEPDIR)
-	-rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
-	distclean-hdr 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 -rf ./$(DEPDIR)
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
-	mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: all install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-	clean-libtool clean-noinstLTLIBRARIES ctags distclean \
-	distclean-compile distclean-generic distclean-hdr \
-	distclean-libtool 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 mostlyclean mostlyclean-compile \
-	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
-	tags uninstall uninstall-am
-
-
-#$(DSP): msvcproj.head msvcproj.foot Makefile.am
-#	echo "creating $(DSP)"
-#	@(cp $(srcdir)/msvcproj.head $(DSP); \
-#	echo "# Begin Group \"Source Files\"" $(DSPOUT); \
-#        echo "" $(DSPOUT); \
-#        echo "# PROP Default_Filter \"\"" $(DSPOUT); \
-#        win32_srcs='$(WIN32SOURCES)'; \
-#        sorted_srcs=`for file in $$win32_srcs; do echo $$file; done | sort`; \
-#        for file in $$sorted_srcs; do \
-#	echo "# Begin Source File" $(DSPOUT); \
-#	echo "" $(DSPOUT); \
-#	echo "SOURCE=.\\"$$file $(DSPOUT); \
-#	echo "# End Source File" $(DSPOUT); \
-#	done; \
-#	echo "# End Group" $(DSPOUT); \
-#	echo "# Begin Group \"Header Files\"" $(DSPOUT); \
-#        echo "" $(DSPOUT); \
-#        echo "# PROP Default_Filter \"\"" $(DSPOUT); \
-#        win32_hdrs='$(WIN32HEADERS)'; \
-#        sorted_hdrs=`for file in $$win32_hdrs; do echo $$file; done | sort`; \
-#        for file in $$sorted_hdrs; do \
-#	echo "# Begin Source File" $(DSPOUT); \
-#	echo "" $(DSPOUT); \
-#	echo "SOURCE=.\\"$$file $(DSPOUT); \
-#	echo "# End Source File" $(DSPOUT); \
-#	done; \
-#	echo "# End Group" $(DSPOUT); \
-#	cat $(srcdir)/msvcproj.foot $(DSPOUT) )
-
-#$(VCPROJ): vc8proj.head vc8proj.foot Makefile.am
-#	echo "creating $(VCPROJ)"
-#	@(cp $(srcdir)/vc8proj.head $(VCPROJ); \
-#        win32_srcs='$(WIN32SOURCES)'; \
-#        sorted_srcs=`for file in $$win32_srcs; do echo $$file; done | sort`; \
-#        for file in $$sorted_srcs; do \
-#	echo "<File RelativePath=\""$$file"\"></File>" $(VCPROJOUT); \
-#	done; \
-#	echo "</Filter><Filter	Name=\"Header Files\">" $(VCPROJOUT); \
-#        win32_hdrs='$(WIN32HEADERS)'; \
-#        sorted_hdrs=`for file in $$win32_hdrs; do echo $$file; done | sort`; \
-#        for file in $$sorted_hdrs; do \
-#	echo "<File RelativePath=\""$$file"\"></File>" $(VCPROJOUT); \
-#	done; \
-#	cat $(srcdir)/vc8proj.foot $(VCPROJOUT) )
-
-# 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/src/other/curl/lib/Makefile.inc b/src/other/curl/lib/Makefile.inc
deleted file mode 100644
index 9803c8c..0000000
--- a/src/other/curl/lib/Makefile.inc
+++ /dev/null
@@ -1,28 +0,0 @@
-# ./lib/Makefile.inc
-
-CSOURCES = file.c timeval.c base64.c hostip.c progress.c formdata.c	\
-  cookie.c http.c sendf.c ftp.c url.c dict.c if2ip.c speedcheck.c	\
-  ldap.c ssluse.c version.c getenv.c escape.c mprintf.c telnet.c	\
-  netrc.c getinfo.c transfer.c strequal.c easy.c security.c krb4.c	\
-  krb5.c memdebug.c http_chunks.c strtok.c connect.c llist.c hash.c	\
-  multi.c content_encoding.c share.c http_digest.c md5.c curl_rand.c	\
-  http_negotiate.c http_ntlm.c inet_pton.c strtoofft.c strerror.c	\
-  hostares.c hostasyn.c hostip4.c hostip6.c hostsyn.c hostthre.c	\
-  inet_ntop.c parsedate.c select.c gtls.c sslgen.c tftp.c splay.c	\
-  strdup.c socks.c ssh.c nss.c qssl.c rawstr.c curl_addrinfo.c          \
-  socks_gssapi.c socks_sspi.c curl_sspi.c slist.c nonblock.c		\
-  curl_memrchr.c imap.c pop3.c smtp.c pingpong.c rtsp.c curl_threads.c	\
-  warnless.c
-
-HHEADERS = arpa_telnet.h netrc.h file.h timeval.h qssl.h hostip.h	\
-  progress.h formdata.h cookie.h http.h sendf.h ftp.h url.h dict.h	\
-  if2ip.h speedcheck.h urldata.h curl_ldap.h ssluse.h escape.h telnet.h	\
-  getinfo.h strequal.h krb4.h memdebug.h http_chunks.h curl_rand.h	\
-  strtok.h connect.h llist.h hash.h content_encoding.h share.h		\
-  curl_md5.h http_digest.h http_negotiate.h http_ntlm.h inet_pton.h	\
-  strtoofft.h strerror.h inet_ntop.h curlx.h curl_memory.h setup.h	\
-  transfer.h select.h easyif.h multiif.h parsedate.h sslgen.h gtls.h	\
-  tftp.h sockaddr.h splay.h strdup.h setup_once.h socks.h ssh.h nssg.h	\
-  curl_base64.h rawstr.h curl_addrinfo.h curl_sspi.h slist.h nonblock.h	\
-  curl_memrchr.h imap.h pop3.h smtp.h pingpong.h rtsp.h curl_threads.h	\
-  warnless.h
diff --git a/src/other/curl/lib/Makefile.m32 b/src/other/curl/lib/Makefile.m32
deleted file mode 100644
index fff64a8..0000000
--- a/src/other/curl/lib/Makefile.m32
+++ /dev/null
@@ -1,159 +0,0 @@
-#########################################################################
-#
-## Makefile for building libcurl.a with MingW32 (GCC-3.2 or later)
-## and optionally OpenSSL (0.9.8), libssh2 (1.1), zlib (1.2.3)
-##
-## Usage:
-## mingw32-make -f Makefile.m32 [SSL=1] [SSH2=1] [ZLIB=1] [IDN=1] [SSPI=1] [IPV6=1] [LDAPS=1] [DYN=1]
-##
-## Hint: you can also set environment vars to control the build, f.e.:
-## set ZLIB_PATH=c:/zlib-1.2.3
-## set ZLIB=1
-##
-## Comments to: Troy Engel <tengel at sonic.net> or
-##              Joern Hartroth <hartroth at acm.org>
-#########################################################################
-
-# Edit the path below to point to the base of your Zlib sources.
-ifndef ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.4
-endif
-# Edit the path below to point to the base of your OpenSSL package.
-ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-0.9.8n
-endif
-# Edit the path below to point to the base of your LibSSH2 package.
-ifndef LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.2.4
-endif
-# Edit the path below to point to the base of your libidn package.
-ifndef LIBIDN_PATH
-LIBIDN_PATH = ../../libidn-1.18
-endif
-# Edit the path below to point to the base of your Novell LDAP NDK.
-ifndef LDAP_SDK
-LDAP_SDK = c:/novell/ndk/cldapsdk/win32
-endif
-
-# Edit the path below to point to the base of your c-ares package.
-ifndef LIBCARES_PATH
-LIBCARES_PATH = ../ares
-endif
-
-CC = gcc
-AR = ar
-# comment LDFLAGS below to keep debug info
-LDFLAGS = -s
-RANLIB = ranlib
-RC = windres
-RCFLAGS = --include-dir=../include -DDEBUGBUILD=0 -O COFF -i
-RM = del /q /f > NUL 2>&1
-STRIP = strip -g
-
-########################################################
-## Nothing more to do below this line!
-
-INCLUDES = -I. -I../include
-CFLAGS = -g -O2 -DBUILDING_LIBCURL
-ifdef ARES
-  INCLUDES += -I$(LIBCARES_PATH)
-  CFLAGS += -DUSE_ARES
-  DLL_LIBS += -L$(LIBCARES_PATH) -lcares
-  libcurl_dll_DEPENDENCIES = $(LIBCARES_PATH)/libcares.a
-endif
-ifdef SSH2
-  INCLUDES += -I"$(LIBSSH2_PATH)/include" -I"$(LIBSSH2_PATH)/win32"
-  CFLAGS += -DUSE_LIBSSH2 -DHAVE_LIBSSH2_H
-  DLL_LIBS += -L$(LIBSSH2_PATH)/win32 -lssh2
-endif
-ifdef SSL
-  INCLUDES += -I"$(OPENSSL_PATH)/outinc" -I"$(OPENSSL_PATH)/outinc/openssl"
-  CFLAGS += -DUSE_SSLEAY -DUSE_OPENSSL -DHAVE_OPENSSL_ENGINE_H -DHAVE_OPENSSL_PKCS12_H \
-            -DHAVE_ENGINE_LOAD_BUILTIN_ENGINES -DOPENSSL_NO_KRB5 \
-            -DCURL_WANTS_CA_BUNDLE_ENV
-  DLL_LIBS += -L$(OPENSSL_PATH)/out -leay32 -lssl32
-endif
-ifdef ZLIB
-  INCLUDES += -I"$(ZLIB_PATH)"
-  CFLAGS += -DHAVE_LIBZ -DHAVE_ZLIB_H
-  DLL_LIBS += -L$(ZLIB_PATH) -lz
-endif
-ifdef IDN
-  INCLUDES += -I"$(LIBIDN_PATH)/include"
-  CFLAGS += -DUSE_LIBIDN
-  DLL_LIBS += -L$(LIBIDN_PATH)/lib -lidn
-endif
-ifdef SSPI
-  CFLAGS += -DUSE_WINDOWS_SSPI
-endif
-ifdef IPV6
-  CFLAGS += -DENABLE_IPV6
-endif
-ifdef LDAPS
-  CFLAGS += -DHAVE_LDAP_SSL
-endif
-ifdef USE_LDAP_NOVELL
-  INCLUDES += -I"$(LDAP_SDK)/inc"
-  CFLAGS += -DCURL_HAS_NOVELL_LDAPSDK
-  DLL_LIBS += -L"$(LDAP_SDK)/lib/mscvc" -lldapsdk -lldapssl -lldapx
-endif
-ifdef USE_LDAP_OPENLDAP
-  INCLUDES += -I"$(LDAP_SDK)/include"
-  CFLAGS += -DCURL_HAS_OPENLDAP_LDAPSDK
-  DLL_LIBS += -L"$(LDAP_SDK)/lib" -lldap -llber
-endif
-ifndef USE_LDAP_NOVELL
-ifndef USE_LDAP_OPENLDAP
-DLL_LIBS += -lwldap32
-endif
-endif
-DLL_LIBS += -lws2_32
-COMPILE = $(CC) $(INCLUDES) $(CFLAGS)
-
-# Makefile.inc provides the CSOURCES and HHEADERS defines
-include Makefile.inc
-
-libcurl_dll_LIBRARY = libcurl.dll
-libcurl_dll_a_LIBRARY = libcurldll.a
-libcurl_a_LIBRARY = libcurl.a
-
-libcurl_a_OBJECTS := $(patsubst %.c,%.o,$(strip $(CSOURCES)))
-libcurl_a_DEPENDENCIES := $(strip $(CSOURCES) $(HHEADERS))
-
-RESOURCE = libcurl.res
-
-.SUFFIXES: .rc .res
-
-all: $(libcurl_a_LIBRARY) $(libcurl_dll_LIBRARY)
-
-$(libcurl_a_LIBRARY): $(libcurl_a_OBJECTS) $(libcurl_a_DEPENDENCIES)
-	-$(RM) $@
-	$(AR) cru $@ $(libcurl_a_OBJECTS)
-	$(RANLIB) $@
-	$(STRIP) $@
-
-# remove the last line above to keep debug info
-
-$(libcurl_dll_LIBRARY): $(libcurl_a_OBJECTS) $(RESOURCE) $(libcurl_dll_DEPENDENCIES)
-	-$(RM) $@
-	$(CC) $(LDFLAGS) -shared -Wl,--out-implib,$(libcurl_dll_a_LIBRARY) \
-	  -o $@ $(libcurl_a_OBJECTS) $(RESOURCE) $(DLL_LIBS)
-
-.c.o:
-	$(COMPILE) -c $<
-
-.rc.res:
-	$(RC) $(RCFLAGS) $< -o $@
-
-clean:
-	-$(RM) $(libcurl_a_OBJECTS) $(RESOURCE)
-
-distrib: clean
-	-$(RM) $(libcurl_a_LIBRARY) $(libcurl_dll_LIBRARY) $(libcurl_dll_a_LIBRARY)
-
-FORCE: ;
-
-$(LIBCARES_PATH)/libcares.a:
-	$(MAKE) -C $(LIBCARES_PATH) -f Makefile.m32
-
-
diff --git a/src/other/curl/lib/Makefile.netware b/src/other/curl/lib/Makefile.netware
deleted file mode 100644
index 9affd77..0000000
--- a/src/other/curl/lib/Makefile.netware
+++ /dev/null
@@ -1,647 +0,0 @@
-#################################################################
-#
-## Makefile for building libcurl.nlm (NetWare version - gnu make)
-## Use: make -f Makefile.netware
-##
-## Comments to: Guenter Knauf http://www.gknw.net/phpbb
-#
-#################################################################
-
-# Edit the path below to point to the base of your Novell NDK.
-ifndef NDKBASE
-NDKBASE	= c:/novell
-endif
-
-# Edit the path below to point to the base of your Zlib sources.
-ifndef ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.4
-endif
-
-# Edit the path below to point to the base of your OpenSSL package.
-ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-0.9.8n
-endif
-
-# Edit the path below to point to the base of your LibSSH2 package.
-ifndef LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.2.4
-endif
-
-# Edit the path below to point to the base of your libidn package.
-ifndef LIBIDN_PATH
-LIBIDN_PATH = ../../libidn-1.18
-endif
-
-# Edit the path below to point to the base of your c-ares package.
-ifndef LIBCARES_PATH
-LIBCARES_PATH = ../ares
-endif
-
-ifndef INSTDIR
-INSTDIR	= ..$(DS)curl-$(LIBCURL_VERSION_STR)-bin-nw
-endif
-
-# Edit the vars below to change NLM target settings.
-TARGET  = libcurl
-VERSION	= $(LIBCURL_VERSION)
-COPYR	= Copyright (C) $(LIBCURL_COPYRIGHT_STR)
-DESCR	= cURL libcurl $(LIBCURL_VERSION_STR) ($(LIBARCH)) - http://curl.haxx.se
-MTSAFE	= YES
-STACK	= 64000
-SCREEN	= none
-EXPORTS	= @libcurl.imp
-
-# Uncomment the next line to enable linking with POSIX semantics.
-# POSIXFL = 1
-
-# Edit the var below to point to your lib architecture.
-ifndef LIBARCH
-LIBARCH = LIBC
-endif
-
-# must be equal to NDEBUG or DEBUG, CURLDEBUG
-ifndef DB
-DB	= NDEBUG
-endif
-# Optimization: -O<n> or debugging: -g
-ifeq ($(DB),NDEBUG)
-	OPT	= -O2
-	OBJDIR	= release
-else
-	OPT	= -g
-	OBJDIR	= debug
-endif
-
-# The following lines defines your compiler.
-ifdef CWFolder
-	METROWERKS = $(CWFolder)
-endif
-ifdef METROWERKS
-	# MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support
-	MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support/Metrowerks Support
-	CC = mwccnlm
-else
-	CC = gcc
-endif
-PERL	= perl
-# a native win32 awk can be downloaded from here:
-# http://www.gknw.net/development/prgtools/awk-20070501.zip
-AWK	= awk
-YACC	= bison -y
-CP	= cp -afv
-MKDIR	= mkdir
-# RM	= rm -f
-# if you want to mark the target as MTSAFE you will need a tool for
-# generating the xdc data for the linker; here's a minimal tool:
-# http://www.gknw.net/development/prgtools/mkxdc.zip
-MPKXDC	= mkxdc
-
-# LIBARCH_U = $(shell $(AWK) 'BEGIN {print toupper(ARGV[1])}' $(LIBARCH))
-LIBARCH_L = $(shell $(AWK) 'BEGIN {print tolower(ARGV[1])}' $(LIBARCH))
-
-# Include the version info retrieved from curlver.h
--include $(OBJDIR)/version.inc
-
-# Global flags for all compilers
-CFLAGS	+= $(OPT) -D$(DB) -DNETWARE -DHAVE_CONFIG_H -nostdinc
-
-ifeq ($(CC),mwccnlm)
-LD	= mwldnlm
-LDFLAGS	= -nostdlib $(PRELUDE) $(OBJL) -o $@ -commandfile
-AR	= mwldnlm
-ARFLAGS	= -nostdlib -type library -o
-LIBEXT	= lib
-#RANLIB	=
-CFLAGS	+= -msgstyle gcc -gccinc -inline off -opt nointrinsics -proc 586
-CFLAGS	+= -relax_pointers
-#CFLAGS	+= -w on
-ifeq ($(LIBARCH),LIBC)
-ifeq ($(POSIXFL),1)
-	PRELUDE = $(SDK_LIBC)/imports/posixpre.o
-else
-	PRELUDE = $(SDK_LIBC)/imports/libcpre.o
-endif
-	CFLAGS += -align 4
-else
-	# PRELUDE = $(SDK_CLIB)/imports/clibpre.o
-	# to avoid the __init_* / __deinit_* whoes dont use prelude from NDK
-	PRELUDE = "$(MWCW_PATH)/libraries/runtime/prelude.obj"
-	# CFLAGS += -include "$(MWCW_PATH)/headers/nlm_clib_prefix.h"
-	CFLAGS += -align 1
-endif
-else
-LD	= nlmconv
-LDFLAGS	= -T
-AR	= ar
-ARFLAGS	= -cq
-LIBEXT	= a
-RANLIB	= ranlib
-CFLAGS	+= -fno-builtin -fpcc-struct-return -fno-strict-aliasing
-CFLAGS	+= -Wall # -pedantic
-ifeq ($(LIBARCH),LIBC)
-ifeq ($(POSIXFL),1)
-	PRELUDE = $(SDK_LIBC)/imports/posixpre.gcc.o
-else
-	PRELUDE = $(SDK_LIBC)/imports/libcpre.gcc.o
-endif
-else
-	PRELUDE = $(SDK_CLIB)/imports/clibpre.gcc.o
-	# to avoid the __init_* / __deinit_* whoes dont use prelude from NDK
-	# http://www.gknw.net/development/mk_nlm/gcc_pre.zip
-	# PRELUDE = $(NDK_ROOT)/pre/prelude.o
-	CFLAGS += -include $(NDKBASE)/nlmconv/genlm.h
-endif
-endif
-
-NDK_ROOT = $(NDKBASE)/ndk
-SDK_CLIB = $(NDK_ROOT)/nwsdk
-SDK_LIBC = $(NDK_ROOT)/libc
-SDK_LDAP = $(NDK_ROOT)/cldapsdk/netware
-CURL_INC = ../include
-CURL_LIB = ../lib
-
-INCLUDES = -I$(CURL_INC) -I$(CURL_LIB)
-
-ifdef WITH_ARES
-	INCLUDES += -I$(LIBCARES_PATH)
-	LDLIBS += $(LIBCARES_PATH)/libcares.$(LIBEXT)
-endif
-ifdef WITH_SSH2
-	INCLUDES += -I$(LIBSSH2_PATH)/include
-ifdef LINK_STATIC
-	LDLIBS += $(LIBSSH2_PATH)/nw/libssh2.$(LIBEXT)
-else
-	MODULES += libssh2.nlm
-	IMPORTS += @$(LIBSSH2_PATH)/nw/libssh2.imp
-endif
-endif
-ifdef WITH_SSL
-	INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)
-	LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/ssl.$(LIBEXT)
-	LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/crypto.$(LIBEXT)
-	IMPORTS += GetProcessSwitchCount RunningProcess
-	INSTDEP += ca-bundle.crt
-endif
-ifdef WITH_ZLIB
-	INCLUDES += -I$(ZLIB_PATH)
-ifdef LINK_STATIC
-	LDLIBS += $(ZLIB_PATH)/nw/$(LIBARCH)/libz.$(LIBEXT)
-else
-	MODULES += libz.nlm
-	IMPORTS += @$(ZLIB_PATH)/nw/$(LIBARCH)/libz.imp
-endif
-endif
-ifdef WITH_IDN
-	INCLUDES += -I$(LIBIDN_PATH)/include
-	LDLIBS += $(LIBIDN_PATH)/lib/libidn.$(LIBEXT)
-endif
-
-ifeq ($(LIBARCH),LIBC)
-	INCLUDES += -I$(SDK_LIBC)/include
-	# INCLUDES += -I$(SDK_LIBC)/include/nks
-	# INCLUDES += -I$(SDK_LIBC)/include/winsock
-	CFLAGS += -D_POSIX_SOURCE
-else
-	INCLUDES += -I$(SDK_CLIB)/include/nlm
-	# INCLUDES += -I$(SDK_CLIB)/include/nlm/obsolete
-	# INCLUDES += -I$(SDK_CLIB)/include
-endif
-ifndef DISABLE_LDAP
-	INCLUDES += -I$(SDK_LDAP)/$(LIBARCH_L)/inc
-endif
-CFLAGS	+= $(INCLUDES)
-
-ifeq ($(MTSAFE),YES)
-	XDCOPT = -n
-endif
-ifeq ($(MTSAFE),NO)
-	XDCOPT = -u
-endif
-ifdef XDCOPT
-	XDCDATA = $(OBJDIR)/$(TARGET).xdc
-endif
-
-ifeq ($(findstring /sh,$(SHELL)),/sh)
-DL	= '
-DS	= /
-PCT	= %
-#-include $(NDKBASE)/nlmconv/ncpfs.inc
-else
-DS	= \\
-PCT	= %%
-endif
-
-# Makefile.inc provides the CSOURCES and HHEADERS defines
-include Makefile.inc
-
-OBJS	:= $(patsubst %.c,$(OBJDIR)/%.o,$(strip $(CSOURCES))) $(OBJDIR)/nwos.o
-
-OBJL	= $(OBJS) $(OBJDIR)/nwlib.o $(LDLIBS)
-
-all: lib nlm
-
-nlm: prebuild $(TARGET).nlm
-
-lib: prebuild $(TARGET).$(LIBEXT)
-
-prebuild: $(OBJDIR) $(CURL_INC)/curl/curlbuild.h $(OBJDIR)/version.inc curl_config.h
-
-$(OBJDIR)/%.o: %.c
-#	@echo Compiling $<
-	$(CC) $(CFLAGS) -c $< -o $@
-
-$(OBJDIR)/version.inc: ../include/curl/curlver.h $(OBJDIR)
-	@echo Creating $@
-	@$(AWK) -f ../packages/NetWare/get_ver.awk $< > $@
-
-install: $(INSTDIR) all $(INSTDEP)
-	@$(CP) $(TARGET).nlm $(INSTDIR)
-	@$(CP) $(TARGET).$(LIBEXT) $(INSTDIR)
-	@$(CP) ../CHANGES $(INSTDIR)
-	@$(CP) ../COPYING $(INSTDIR)
-	@$(CP) ../README $(INSTDIR)
-	@$(CP) ../RELEASE-NOTES $(INSTDIR)
-ifdef WITH_SSL
-	@-$(CP) ca-bundle.crt $(INSTDIR)/ca-bundle.crt
-endif
-
-clean:
-	-$(RM) curl_config.h
-	-$(RM) -r $(OBJDIR)
-
-distclean: clean
-	-$(RM) $(TARGET).$(LIBEXT) $(TARGET).nlm
-	-$(RM) certdata.txt ca-bundle.crt
-
-$(OBJDIR) $(INSTDIR):
-	@$(MKDIR) $@
-
-$(TARGET).$(LIBEXT): $(OBJS)
-	@echo Creating $@
-	@-$(RM) $@
-	@$(AR) $(ARFLAGS) $@ $^
-ifdef RANLIB
-	@$(RANLIB) $@
-endif
-
-$(TARGET).nlm: $(OBJDIR)/$(TARGET).def $(OBJL) $(XDCDATA)
-	@echo Linking $@
-	@-$(RM) $@
-	@$(LD) $(LDFLAGS) $<
-
-$(OBJDIR)/%.xdc: Makefile.netware
-	@echo Creating $@
-	@$(MPKXDC) $(XDCOPT) $@
-
-$(OBJDIR)/%.def: Makefile.netware
-	@echo $(DL)# DEF file for linking with $(LD)$(DL) > $@
-	@echo $(DL)# Do not edit this file - it is created by make!$(DL) >> $@
-	@echo $(DL)# All your changes will be lost!!$(DL) >> $@
-	@echo $(DL)#$(DL) >> $@
-	@echo $(DL)copyright "$(COPYR)"$(DL) >> $@
-	@echo $(DL)description "$(DESCR)"$(DL) >> $@
-	@echo $(DL)version $(VERSION)$(DL) >> $@
-ifdef NLMTYPE
-	@echo $(DL)type $(NLMTYPE)$(DL) >> $@
-endif
-ifdef STACK
-	@echo $(DL)stack $(STACK)$(DL) >> $@
-endif
-ifdef SCREEN
-	@echo $(DL)screenname "$(SCREEN)"$(DL) >> $@
-else
-	@echo $(DL)screenname "DEFAULT"$(DL) >> $@
-endif
-ifneq ($(DB),NDEBUG)
-	@echo $(DL)debug$(DL) >> $@
-endif
-	@echo $(DL)threadname "$(TARGET)"$(DL) >> $@
-ifdef XDCDATA
-	@echo $(DL)xdcdata $(XDCDATA)$(DL) >> $@
-endif
-	@echo $(DL)flag_on 64$(DL) >> $@
-ifeq ($(LIBARCH),CLIB)
-	@echo $(DL)start _Prelude$(DL) >> $@
-	@echo $(DL)exit _Stop$(DL) >> $@
-	@echo $(DL)import @$(SDK_CLIB)/imports/clib.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_CLIB)/imports/threads.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_CLIB)/imports/nlmlib.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_CLIB)/imports/socklib.imp$(DL) >> $@
-	@echo $(DL)module clib$(DL) >> $@
-ifndef DISABLE_LDAP
-	@echo $(DL)import @$(SDK_LDAP)/clib/imports/ldapsdk.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_LDAP)/clib/imports/ldapssl.imp$(DL) >> $@
-#	@echo $(DL)import @$(SDK_LDAP)/clib/imports/ldapx.imp$(DL) >> $@
-	@echo $(DL)module ldapsdk ldapssl$(DL) >> $@
-endif
-else
-ifeq ($(POSIXFL),1)
-	@echo $(DL)flag_on 4194304$(DL) >> $@
-endif
-	@echo $(DL)pseudopreemption$(DL) >> $@
-ifeq ($(findstring posixpre,$(PRELUDE)),posixpre)
-	@echo $(DL)start POSIX_Start$(DL) >> $@
-	@echo $(DL)exit POSIX_Stop$(DL) >> $@
-	@echo $(DL)check POSIX_CheckUnload$(DL) >> $@
-else
-	@echo $(DL)start _LibCPrelude$(DL) >> $@
-	@echo $(DL)exit _LibCPostlude$(DL) >> $@
-	@echo $(DL)check _LibCCheckUnload$(DL) >> $@
-endif
-	@echo $(DL)import @$(SDK_LIBC)/imports/libc.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_LIBC)/imports/netware.imp$(DL) >> $@
-	@echo $(DL)module libc$(DL) >> $@
-ifndef DISABLE_LDAP
-	@echo $(DL)import @$(SDK_LDAP)/libc/imports/lldapsdk.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_LDAP)/libc/imports/lldapssl.imp$(DL) >> $@
-#	@echo $(DL)import @$(SDK_LDAP)/libc/imports/lldapx.imp$(DL) >> $@
-	@echo $(DL)module lldapsdk lldapssl$(DL) >> $@
-endif
-endif
-ifdef MODULES
-	@echo $(DL)module $(MODULES)$(DL) >> $@
-endif
-ifdef EXPORTS
-	@echo $(DL)export $(EXPORTS)$(DL) >> $@
-endif
-ifdef IMPORTS
-	@echo $(DL)import $(IMPORTS)$(DL) >> $@
-endif
-ifeq ($(findstring nlmconv,$(LD)),nlmconv)
-	@echo $(DL)input $(PRELUDE)$(DL) >> $@
-	@echo $(DL)input $(OBJL)$(DL) >> $@
-#ifdef LDLIBS
-#	@echo $(DL)input $(LDLIBS)$(DL) >> $@
-#endif
-	@echo $(DL)output $(TARGET).nlm$(DL) >> $@
-endif
-
-curl_config.h: Makefile.netware
-	@echo Creating $@
-	@echo $(DL)/* $@ for NetWare target.$(DL) > $@
-	@echo $(DL)** Do not edit this file - it is created by make!$(DL) >> $@
-	@echo $(DL)** All your changes will be lost!!$(DL) >> $@
-	@echo $(DL)*/$(DL) >> $@
-	@echo $(DL)#ifndef NETWARE$(DL) >> $@
-	@echo $(DL)#error This $(notdir $@) is created for NetWare platform!$(DL) >> $@
-	@echo $(DL)#endif$(DL) >> $@
-	@echo $(DL)#define VERSION "$(LIBCURL_VERSION_STR)"$(DL) >> $@
-	@echo $(DL)#define PACKAGE_BUGREPORT "a suitable curl mailing list => http://curl.haxx.se/mail/"$(DL) >> $@
-ifeq ($(LIBARCH),CLIB)
-	@echo $(DL)#define OS "i586-pc-clib-NetWare"$(DL) >> $@
-	@echo $(DL)#define NETDB_USE_INTERNET 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRICMP 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRNICMP 1$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG2 char *$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG3 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_RETV int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG2 char$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG3 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG5 struct sockaddr$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG6 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_RETV int$(DL) >> $@
-	@echo $(DL)#define SEND_QUAL_ARG2$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG2 char *$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG3 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_RETV int$(DL) >> $@
-	@echo $(DL)#define pressanykey PressAnyKeyToContinue$(DL) >> $@
-else
-	@echo $(DL)#define OS "i586-pc-libc-NetWare"$(DL) >> $@
-	@echo $(DL)#define HAVE_FTRUNCATE 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETTIMEOFDAY 1$(DL) >> $@
-	@echo $(DL)#define HAVE_INTTYPES_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LONGLONG 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STDINT_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRCASECMP 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRLCAT 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRLCPY 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRTOLL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_PARAM_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_SELECT_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_TERMIOS_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_AF_INET6 1$(DL) >> $@
-	@echo $(DL)#define HAVE_PF_INET6 1$(DL) >> $@
-	@echo $(DL)#define HAVE_FREEADDRINFO 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETADDRINFO 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRUCT_IN6_ADDR 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRUCT_SOCKADDR_IN6 1$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG2 void *$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG3 size_t$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_RETV ssize_t$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG2 void$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG3 size_t$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG5 struct sockaddr$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG6 size_t$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_RETV ssize_t$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG2_IS_VOID 1$(DL) >> $@
-	@echo $(DL)#define SEND_QUAL_ARG2$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG2 void *$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG3 size_t$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_RETV ssize_t$(DL) >> $@
-	@echo $(DL)#define SIZEOF_STRUCT_IN6_ADDR 16$(DL) >> $@
-	@echo $(DL)#define SIZEOF_OFF_T 8$(DL) >> $@
-	@echo $(DL)#define _LARGEFILE 1$(DL) >> $@
-ifdef ENABLE_IPV6
-	@echo $(DL)#define ENABLE_IPV6 1$(DL) >> $@
-endif
-endif
-	@echo $(DL)#define USE_MANUAL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_ARPA_INET_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_ASSERT_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_ERR_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_FCNTL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETHOSTBYADDR 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETHOSTBYNAME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETPROTOBYNAME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GMTIME_R 1$(DL) >> $@
-	@echo $(DL)#define HAVE_INET_ADDR 1$(DL) >> $@
-	@echo $(DL)#define HAVE_IOCTL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_IOCTL_FIONBIO 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LIMITS_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LOCALE_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LOCALTIME_R 1$(DL) >> $@
-	@echo $(DL)#define HAVE_MALLOC_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_NETINET_IN_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_RECV 1$(DL) >> $@
-	@echo $(DL)#define HAVE_RECVFROM 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SELECT 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SEND 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SETJMP_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SETLOCALE 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SIGNAL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SIGNAL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SIG_ATOMIC_T 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SOCKET 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STDLIB_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRDUP 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRFTIME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRING_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRSTR 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRUCT_ADDRINFO 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRUCT_TIMEVAL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_IOCTL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_STAT_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_TIME_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_TIME_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_UNAME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_UNISTD_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_UTIME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_UTIME_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_WRITEV 1$(DL) >> $@
-	@echo $(DL)#define RETSIGTYPE void$(DL) >> $@
-	@echo $(DL)#define SIZEOF_INT 4$(DL) >> $@
-	@echo $(DL)#define SIZEOF_SHORT 2$(DL) >> $@
-	@echo $(DL)#define SIZEOF_STRUCT_IN_ADDR 4$(DL) >> $@
-	@echo $(DL)#define STDC_HEADERS 1$(DL) >> $@
-	@echo $(DL)#define TIME_WITH_SYS_TIME 1$(DL) >> $@
-ifdef DISABLE_LDAP
-	@echo $(DL)#define CURL_DISABLE_LDAP 1$(DL) >> $@
-else
-	@echo $(DL)#define CURL_HAS_NOVELL_LDAPSDK 1$(DL) >> $@
-ifndef DISABLE_LDAPS
-	@echo $(DL)#define HAVE_LDAP_SSL 1$(DL) >> $@
-endif
-	@echo $(DL)#define HAVE_LDAP_SSL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LDAP_URL_PARSE 1$(DL) >> $@
-endif
-ifdef NW_WINSOCK
-	@echo $(DL)#define HAVE_CLOSESOCKET 1$(DL) >> $@
-else
-	@echo $(DL)#define USE_BSD_SOCKETS 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_TYPES_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_SOCKET_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_SOCKIO_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_NETDB_H 1$(DL) >> $@
-endif
-ifdef WITH_ARES
-	@echo $(DL)#define USE_ARES 1$(DL) >> $@
-endif
-ifdef WITH_ZLIB
-	@echo $(DL)#define HAVE_ZLIB_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LIBZ 1$(DL) >> $@
-endif
-ifdef WITH_SSL
-	@echo $(DL)#define USE_SSLEAY 1$(DL) >> $@
-	@echo $(DL)#define USE_OPENSSL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_X509_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_SSL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_RSA_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_PEM_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_ERR_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_CRYPTO_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_ENGINE_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LIBSSL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LIBCRYPTO 1$(DL) >> $@
-	@echo $(DL)#define OPENSSL_NO_KRB5 1$(DL) >> $@
-endif
-ifdef WITH_SSH2
-	@echo $(DL)#define USE_LIBSSH2 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LIBSSH2_H 1$(DL) >> $@
-endif
-ifdef WITH_IDN
-	@echo $(DL)#define HAVE_LIBIDN 1$(DL) >> $@
-	@echo $(DL)#define HAVE_TLD_H 1$(DL) >> $@
-endif
-	@echo $(DL)#ifdef __GNUC__$(DL) >> $@
-	@echo $(DL)#define HAVE_VARIADIC_MACROS_GCC 1$(DL) >> $@
-	@echo $(DL)#else$(DL) >> $@
-	@echo $(DL)#define HAVE_VARIADIC_MACROS_C99 1$(DL) >> $@
-	@echo $(DL)#endif$(DL) >> $@
-ifdef CABUNDLE
-	@echo $(DL)#define CURL_CA_BUNDLE "$(CABUNDLE)"$(DL) >> $@
-else
-	@echo $(DL)#define CURL_CA_BUNDLE getenv("CURL_CA_BUNDLE")$(DL) >> $@
-endif
-
-FORCE: ;
-
-info: $(OBJDIR)/version.inc
-	@echo Configured to build $(TARGET) with these options:
-	@echo libarchitecture: $(LIBARCH)
-	@echo curl version:    $(LIBCURL_VERSION_STR)
-	@echo compiler/linker: $(CC) / $(LD)
-ifdef CABUNDLE
-	@echo ca-bundle path:  $(CABUNDLE)
-endif
-ifdef WITH_SSL
-	@echo SSL support:     enabled (OpenSSL)
-else
-	@echo SSL support:     no
-endif
-ifdef WITH_SSH2
-	@echo SSH2 support:    enabled (libssh2)
-else
-	@echo SSH2 support:    no
-endif
-ifdef WITH_ZLIB
-	@echo zlib support:    enabled
-else
-	@echo zlib support:    no
-endif
-ifdef WITH_ARES
-	@echo c-ares support:  enabled
-else
-	@echo c-ares support:  no
-endif
-ifdef ENABLE_IPV6
-	@echo ipv6 support:    enabled
-else
-	@echo ipv6 support:    no
-endif
-
-$(LIBCARES_PATH)/libcares.$(LIBEXT):
-	$(MAKE) -C $(LIBCARES_PATH) -f Makefile.netware lib
-
-ca-bundle.crt: mk-ca-bundle.pl
-	@echo Creating $@
-	@-$(PERL) $< -b -n $@
-
-$(CURL_INC)/curl/curlbuild.h: Makefile.netware FORCE
-	@echo Creating $@
-	@echo $(DL)/* $@ intended for NetWare target.$(DL) > $@
-	@echo $(DL)** Do not edit this file - it is created by make!$(DL) >> $@
-	@echo $(DL)** All your changes will be lost!!$(DL) >> $@
-	@echo $(DL)*/$(DL) >> $@
-	@echo $(DL)#ifndef __CURL_CURLBUILD_H$(DL) >> $@
-	@echo $(DL)#define __CURL_CURLBUILD_H$(DL) >> $@
-ifeq ($(LIBARCH),LIBC)
-	@echo $(DL)#define CURL_SIZEOF_LONG 4$(DL) >> $@
-	@echo $(DL)#define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int$(DL) >> $@
-	@echo $(DL)#define CURL_SIZEOF_CURL_SOCKLEN_T 4$(DL) >> $@
-	@echo $(DL)#define CURL_TYPEOF_CURL_OFF_T long long$(DL) >> $@
-	@echo $(DL)#define CURL_FORMAT_CURL_OFF_T "lld"$(DL) >> $@
-	@echo $(DL)#define CURL_FORMAT_CURL_OFF_TU "llu"$(DL) >> $@
-	@echo $(DL)#define CURL_FORMAT_OFF_T "$(PCT)lld"$(DL) >> $@
-	@echo $(DL)#define CURL_SIZEOF_CURL_OFF_T 8$(DL) >> $@
-	@echo $(DL)#define CURL_SUFFIX_CURL_OFF_T LL$(DL) >> $@
-	@echo $(DL)#define CURL_SUFFIX_CURL_OFF_TU ULL$(DL) >> $@
-else
-	@echo $(DL)#define CURL_SIZEOF_LONG 4$(DL) >> $@
-	@echo $(DL)#define CURL_TYPEOF_CURL_SOCKLEN_T int$(DL) >> $@
-	@echo $(DL)#define CURL_SIZEOF_CURL_SOCKLEN_T 4$(DL) >> $@
-	@echo $(DL)#define CURL_TYPEOF_CURL_OFF_T long$(DL) >> $@
-	@echo $(DL)#define CURL_FORMAT_CURL_OFF_T "ld"$(DL) >> $@
-	@echo $(DL)#define CURL_FORMAT_CURL_OFF_TU "lu"$(DL) >> $@
-	@echo $(DL)#define CURL_FORMAT_OFF_T "$(PCT)ld"$(DL) >> $@
-	@echo $(DL)#define CURL_SIZEOF_CURL_OFF_T 4$(DL) >> $@
-	@echo $(DL)#define CURL_SUFFIX_CURL_OFF_T L$(DL) >> $@
-	@echo $(DL)#define CURL_SUFFIX_CURL_OFF_TU UL$(DL) >> $@
-endif
-	@echo $(DL)typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t;$(DL) >> $@
-	@echo $(DL)typedef CURL_TYPEOF_CURL_OFF_T curl_off_t;$(DL) >> $@
-	@echo $(DL)#endif /* __CURL_CURLBUILD_H */$(DL) >> $@
-
diff --git a/src/other/curl/lib/Makefile.riscos b/src/other/curl/lib/Makefile.riscos
deleted file mode 100644
index f7b071f..0000000
--- a/src/other/curl/lib/Makefile.riscos
+++ /dev/null
@@ -1,196 +0,0 @@
-# Makefile for project libcurl
-# Generated on Sun,13 Jan 2002.16:57:00 by EasyGCC (0.1.3 [beta 2] (3 Jan 2002))
-# Contact: easygcc at melotech.co.uk
-
-# Project objects:
-objs =	o.base64 o.connect o.cookie o.dict \
-	o.dllinit o.easy o.escape o.file \
-	o.formdata o.ftp o.getenv \
-	o.getinfo o.getpass o.hostip \
-	o.hostip4 o.hostsyn o.http \
-	o.http_chunks o.inet_ntop o.inet_pton o.if2ip o.krb4 o.ldap \
-	o.memdebug o.mprintf o.netrc o.parsedate o.progress \
-	o.security o.select o.sendf o.speedcheck o.ssluse \
-	o.strequal o.strtok o.telnet o.timeval \
-	o.transfer o.url o.version o.strtoofft o.sslgen o.gtls \
-	o.rawstr o.curl_addrinfo o.slist o.nonblock o.curl_rand \
-	o.curl_memrchr o.imap o.pop3 o.smtp o.pingpong o.rtsp \
-	o.curl_threads o.warnless
-
-
-# Compile options:
-linkopts	= -o libcurl
-compileropts	= -mpoke-function-name -IUtilLib: -mthrowback
-
-# Project target:
-libcurl:		$(objs)
-		makealf $(linkopts) $(objs)
-
-# Static dependancies:
-o.base64:	c.base64
-		gcc $(compileropts) -c -o base64.o c.base64
-
-o.connect:	c.connect
-		gcc $(compileropts) -c -o connect.o c.connect
-
-o.cookie:	c.cookie
-		gcc $(compileropts) -c -o cookie.o c.cookie
-
-o.curl_addrinfo:	c.curl_addrinfo
-		gcc $(compileropts) -c -o curl_addrinfo.o c.curl_addrinfo
-
-o.curl_memrchr:	c.curl_memrchr
-		gcc $(compileropts) -c -o curl_memrchr.o c.curl_memrchr
-
-o.curl_rand:	c.curl_rand
-		gcc $(compileropts) -c -o curl_rand.o c.curl_rand
-
-o.curl_threads:	c.curl_threads
-		gcc $(compileropts) -c -o curl_threads.o c.curl_threads
-
-o.dict:	c.dict
-		gcc $(compileropts) -c -o dict.o c.dict
-
-o.dllinit:	c.dllinit
-		gcc $(compileropts) -c -o dllinit.o c.dllinit
-
-o.easy:	c.easy
-		gcc $(compileropts) -c -o easy.o c.easy
-
-o.escape:	c.escape
-		gcc $(compileropts) -c -o escape.o c.escape
-
-o.file:	c.file
-		gcc $(compileropts) -c -o file.o c.file
-
-o.formdata:	c.formdata
-		gcc $(compileropts) -c -o formdata.o c.formdata
-
-o.ftp:	c.ftp
-		gcc $(compileropts) -c -o ftp.o c.ftp
-
-o.getenv:	c.getenv
-		gcc $(compileropts) -c -o getenv.o c.getenv
-
-o.getinfo:	c.getinfo
-		gcc $(compileropts) -c -o getinfo.o c.getinfo
-
-o.getpass:	c.getpass
-		gcc $(compileropts) -c -o getpass.o c.getpass
-
-o.hostip:	c.hostip
-		gcc $(compileropts) -c -o hostip.o c.hostip
-
-o.hostip4:	c.hostip4
-		gcc $(compileropts) -c -o hostip4.o c.hostip4
-
-o.hostsyn:	c.hostsyn
-		gcc $(compileropts) -c -o hostsyn.o c.hostsyn
-
-o.http:	c.http
-		gcc $(compileropts) -c -o http.o c.http
-
-o.http_chunks:	c.http_chunks
-		gcc $(compileropts) -c -o http_chunks.o c.http_chunks
-
-o.if2ip:	c.if2ip
-		gcc $(compileropts) -c -o if2ip.o c.if2ip
-
-o.imap:		c.imap
-		gcc $(compileropts) -c -o imap.o c.imap
-
-o.inet_ntop:	c.inet_ntop
-		gcc $(compileropts) -c -o inet_ntop.o c.inet_ntop
-
-o.inet_pton:	c.inet_pton
-		gcc $(compileropts) -c -o inet_pton.o c.inet_pton
-
-o.krb4:	c.krb4
-		gcc $(compileropts) -c -o krb4.o c.krb4
-
-o.ldap:	c.ldap
-		gcc $(compileropts) -IOpenLDAP: -c -o ldap.o c.ldap
-
-o.memdebug:	c.memdebug
-		gcc $(compileropts) -c -o memdebug.o c.memdebug
-
-o.mprintf:	c.mprintf
-		gcc $(compileropts) -c -o mprintf.o c.mprintf
-
-o.netrc:	c.netrc
-		gcc $(compileropts) -c -o netrc.o c.netrc
-
-o.parsedate:	c.parsedate
-		gcc $(compileropts) -c -o parsedate.o c.parsedate
-
-o.pingpong:	c.pingpong
-		gcc $(compileropts) -c -o pingpong.o c.pingpong
-
-o.pop3:		c.pop3
-		gcc $(compileropts) -c -o pop3.o c.pop3
-
-o.progress:	c.progress
-		gcc $(compileropts) -c -o progress.o c.progress
-
-o.rtsp:		c.rtsp
-		gcc $(compileropts) -c -o rtsp.o c.rtsp
-
-o.security:	c.security
-		gcc $(compileropts) -c -o security.o c.security
-
-o.select:	c.select
-		gcc $(compileropts) -c -o select.o c.select
-
-o.sendf:	c.sendf
-		gcc $(compileropts) -c -o sendf.o c.sendf
-
-o.slist:	c.slist
-		gcc $(compileropts) -c -o slist.o c.slist
-
-o.smtp:		c.smtp
-		gcc $(compileropts) -c -o smtp.o c.smtp
-
-o.speedcheck:	c.speedcheck
-		gcc $(compileropts) -c -o speedcheck.o c.speedcheck
-
-o.gtls:	c.gtls
-		gcc $(compileropts) -c -o gtls.o c.gtls
-
-o.sslgen:	c.sslgen
-		gcc $(compileropts) -c -o sslgen.o c.sslgen
-
-o.ssluse:	c.ssluse
-		gcc $(compileropts) -c -o ssluse.o c.ssluse
-
-o.nonblock:	c.nonblock
-		gcc $(compileropts) -c -o nonblock.o c.nonblock
-
-o.rawstr:	c.rawstr
-		gcc $(compileropts) -c -o rawstr.o c.rawstr
-
-o.strequal:	c.strequal
-		gcc $(compileropts) -c -o strequal.o c.strequal
-
-o.strtok:	c.strtok
-		gcc $(compileropts) -c -o strtok.o c.strtok
-
-o.strtoofft:	c.strtoofft
-		gcc $(compileropts) -c -o strtoofft.o c.strtoofft
-
-o.telnet:	c.telnet
-		gcc $(compileropts) -c -o telnet.o c.telnet
-
-o.timeval:	c.timeval
-		gcc $(compileropts) -c -o timeval.o c.timeval
-
-o.transfer:	c.transfer
-		gcc $(compileropts) -c -o transfer.o c.transfer
-
-o.url:	c.url
-		gcc $(compileropts) -c -o url.o c.url
-
-o.version:	c.version
-		gcc $(compileropts) -c -o version.o c.version
-
-o.warnless:	c.warnless
-		gcc $(compileropts) -c -o warnless.o c.warnless
diff --git a/src/other/curl/lib/Makefile.vc6 b/src/other/curl/lib/Makefile.vc6
deleted file mode 100644
index 2262444..0000000
--- a/src/other/curl/lib/Makefile.vc6
+++ /dev/null
@@ -1,557 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1999 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-# $Id: Makefile.am,v 1.139 2008-11-03 08:50:58 bagder Exp $
-###########################################################################
-#
-# Makefile for building libcurl with MSVC6
-#
-# Usage: see usage message below
-#        Should be invoked from \lib directory
-#        Edit the paths and desired library name
-#        SSL path is only required if you intend compiling
-#        with SSL.
-#
-# This make file leaves the result either a .lib or .dll file
-# in the \lib directory. It should be called from the \lib
-# directory.
-#
-# An option would have been to allow the source directory to
-# be specified, but I saw no requirement.
-#
-# Another option would have been to leave the .lib and .dll
-# files in the "cfg" directory, but then the make file
-# in \src would need to be changed.
-#
-##############################################################
-
-#
-# Stem for static libs and DLLs
-#
-LIB_NAME       = libcurl
-LIB_NAME_DEBUG = libcurld
-
-#
-# Stem for DLL import libs
-#
-IMPLIB_NAME       = libcurl_imp
-IMPLIB_NAME_DEBUG = libcurld_imp
-
-!IFNDEF OPENSSL_PATH
-OPENSSL_PATH   = ../../openssl-0.9.8g
-!ENDIF
-
-!IFNDEF ZLIB_PATH
-ZLIB_PATH  = ../../zlib-1.2.3
-!ENDIF
-
-!IFNDEF MACHINE
-MACHINE  = X86
-!ENDIF
-
-# USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication
-# without an openssl installation and offers the ability to authenticate
-# using the "current logged in user". Since at least with MSVC6 the sspi.h
-# header is broken it is either required to install the Windows SDK,
-# or to fix sspi.h with adding this define at the beginning of sspi.h:
-# #define FreeCredentialHandle FreeCredentialsHandle
-#
-# If, for some reason the Windows SDK is installed but not installed
-# in the default location, you can specify WINDOWS_SDK_PATH.
-# It can be downloaded from:
-# http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
-
-# WINDOWS_SSPI = 1
-
-!IFDEF WINDOWS_SSPI
-!IFNDEF WINDOWS_SDK_PATH
-WINDOWS_SDK_PATH = "C:\Program Files\Microsoft SDK"
-!ENDIF
-!ENDIF
-
-#############################################################
-## Nothing more to do below this line!
-
-CCNODBG    = cl.exe /O2 /DNDEBUG
-CCDEBUG    = cl.exe /Od /Gm /Zi /D_DEBUG /GZ
-CFLAGSSSL  = /DUSE_SSLEAY /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
-CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
-CFLAGS     = /I. /I../include /nologo /W3 /GX /DWIN32 /YX /FD /c /DBUILDING_LIBCURL
-CFLAGSLIB  = /DCURL_STATICLIB
-LNKDLL     = link.exe /DLL
-LNKLIB     = link.exe /lib
-LFLAGS     = /nologo /machine:$(MACHINE)
-SSLLIBS    = libeay32.lib ssleay32.lib
-ZLIBLIBSDLL= zdll.lib
-ZLIBLIBS   = zlib.lib
-WINLIBS    = wsock32.lib wldap32.lib
-CFLAGS     = $(CFLAGS)
-
-CFGSET     = FALSE
-
-!IFDEF WINDOWS_SSPI
-CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include
-!ENDIF
-
-##############################################################
-# Runtime library configuration
-
-RTLIB   = /MD
-RTLIBD  = /MDd
-
-!IF "$(RTLIBCFG)" == "static"
-RTLIB  = /MT
-RTLIBD = /MTd
-!ENDIF
-
-
-######################
-# release
-
-!IF "$(CFG)" == "release"
-TARGET = $(LIB_NAME).lib
-DIROBJ = $(CFG)
-LNK    = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC     = $(CCNODBG) $(RTLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-zlib
-
-!IF "$(CFG)" == "release-zlib"
-TARGET   = $(LIB_NAME).lib
-DIROBJ   = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK      = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC       = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET   = TRUE
-!ENDIF
-
-######################
-# release-dll
-
-!IF "$(CFG)" == "release-dll"
-TARGET = $(LIB_NAME).dll
-DIROBJ = $(CFG)
-LNK    = $(LNKDLL) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib
-CC     = $(CCNODBG) $(RTLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-ssl
-
-!IF "$(CFG)" == "release-ssl"
-TARGET   = $(LIB_NAME).lib
-DIROBJ   = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK      = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET   = TRUE
-!ENDIF
-
-######################
-# release-ssl-dll
-
-!IF "$(CFG)" == "release-ssl-dll"
-TARGET   = $(LIB_NAME).lib
-DIROBJ   = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK      = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET   = TRUE
-!ENDIF
-
-######################
-# release-ssl-zlib
-
-!IF "$(CFG)" == "release-ssl-zlib"
-TARGET   = $(LIB_NAME).lib
-DIROBJ   = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK      = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET   = TRUE
-!ENDIF
-
-######################
-# release-dll-ssl-dll
-
-!IF "$(CFG)" == "release-dll-ssl-dll"
-TARGET   = $(LIB_NAME).dll
-DIROBJ   = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK      = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib
-CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL)
-CFGSET   = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-zlib-dll
-
-!IF "$(CFG)" == "release-zlib-dll"
-TARGET   = $(LIB_NAME).lib
-DIROBJ   = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK      = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC       = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET   = TRUE
-!ENDIF
-
-######################
-# release-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "release-ssl-dll-zlib-dll"
-TARGET   = $(LIB_NAME).lib
-DIROBJ   = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK      = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET   = TRUE
-!ENDIF
-
-######################
-# release-dll-zlib-dll
-
-!IF "$(CFG)" == "release-dll-zlib-dll"
-TARGET   = $(LIB_NAME).dll
-DIROBJ   = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK      = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib
-CC       = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB)
-CFGSET   = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"
-TARGET   = $(LIB_NAME).dll
-DIROBJ   = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK      = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME).lib
-CC       = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB)
-CFGSET   = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug
-
-!IF "$(CFG)" == "debug"
-TARGET = $(LIB_NAME_DEBUG).lib
-DIROBJ = $(CFG)
-LNK    = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC     = $(CCDEBUG) $(RTLIBD) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl
-
-!IF "$(CFG)" == "debug-ssl"
-TARGET   = $(LIB_NAME_DEBUG).lib
-DIROBJ   = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK      = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET   = TRUE
-!ENDIF
-
-######################
-# debug-zlib
-
-!IF "$(CFG)" == "debug-zlib"
-TARGET   = $(LIB_NAME_DEBUG).lib
-DIROBJ   = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK      = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET   = TRUE
-!ENDIF
-
-######################
-# debug-ssl-dll
-
-!IF "$(CFG)" == "debug-ssl-dll"
-TARGET   = $(LIB_NAME_DEBUG).lib
-DIROBJ   = $(CFG)
-LFLAGSSSL = /LIBPATH:$(OPENSSL_PATH)\out32dll
-LNK      = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET   = TRUE
-!ENDIF
-
-######################
-# debug-ssl-zlib
-
-!IF "$(CFG)" == "debug-ssl-zlib"
-TARGET   = $(LIB_NAME_DEBUG).lib
-DIROBJ   = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK      = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET   = TRUE
-!ENDIF
-
-######################
-# debug-zlib-dll
-
-!IF "$(CFG)" == "debug-zlib-dll"
-TARGET   = $(LIB_NAME_DEBUG).lib
-DIROBJ   = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK      = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET   = TRUE
-!ENDIF
-
-######################
-# debug-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-ssl-dll-zlib-dll"
-TARGET   = $(LIB_NAME_DEBUG).lib
-DIROBJ   = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK      = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET   = TRUE
-!ENDIF
-
-######################
-# debug-dll
-
-!IF "$(CFG)" == "debug-dll"
-TARGET = $(LIB_NAME_DEBUG).dll
-DIROBJ = $(CFG)
-LNK    = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb
-CC     = $(CCDEBUG) $(RTLIBD) 
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-ssl-dll
-
-!IF "$(CFG)" == "debug-dll-ssl-dll"
-TARGET   = $(LIB_NAME_DEBUG).dll
-DIROBJ   = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK      = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb
-CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL)
-CFGSET   = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-dll-zlib-dll"
-TARGET   = $(LIB_NAME_DEBUG).dll
-DIROBJ   = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK      = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb
-CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB)
-CFGSET   = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-dll-ssl-dll-zlib-dll"
-TARGET   = $(LIB_NAME_DEBUG).dll
-DIROBJ   = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK      = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib /PDB:$(DIROBJ)\$(IMPLIB_NAME_DEBUG).pdb
-CC       = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB)
-CFGSET   = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-#######################
-# Usage
-#
-!IF "$(CFGSET)" == "FALSE" && "$(CFG)" != ""
-!MESSAGE Usage: nmake /f makefile.vc6 CFG=<config> <target>
-!MESSAGE where <config> is one of:
-!MESSAGE   release                      - release static library
-!MESSAGE   release-ssl                  - release static library with ssl
-!MESSAGE   release-zlib                 - release static library with zlib
-!MESSAGE   release-ssl-zlib             - release static library with ssl and zlib
-!MESSAGE   release-ssl-dll              - release static library with dynamic ssl
-!MESSAGE   release-zlib-dll             - release static library with dynamic zlib
-!MESSAGE   release-ssl-dll-zlib-dll     - release static library with dynamic ssl and dynamic zlib
-!MESSAGE   release-dll                  - release dynamic library
-!MESSAGE   release-dll-ssl-dll          - release dynamic library with dynamic ssl
-!MESSAGE   release-dll-zlib-dll         - release dynamic library with dynamic zlib
-!MESSAGE   release-dll-ssl-dll-zlib-dll - release dynamic library with dynamic ssl and dynamic zlib
-!MESSAGE   debug                        - debug static library
-!MESSAGE   debug-ssl                    - debug static library with ssl
-!MESSAGE   debug-zlib                   - debug static library with zlib
-!MESSAGE   debug-ssl-zlib               - debug static library with ssl and zlib
-!MESSAGE   debug-ssl-dll                - debug static library with dynamic ssl
-!MESSAGE   debug-zlib-dll               - debug static library with dynamic zlib
-!MESSAGE   debug-ssl-dll-zlib-dll       - debug static library with dynamic ssl and dynamic zlib
-!MESSAGE   debug-dll                    - debug dynamic library
-!MESSAGE   debug-dll-ssl-dll            - debug dynamic library with dynamic ssl
-!MESSAGE   debug-dll-zlib-dll           - debug dynamic library with dynamic zlib1
-!MESSAGE   debug-dll-ssl-dll-zlib-dll   - debug dynamic library with dynamic ssl and dynamic zlib
-!MESSAGE <target> can be left blank in which case all is assumed
-!ERROR please choose a valid configuration "$(CFG)"
-!ENDIF
-
-#######################
-# Only the clean target can be used if a config was not provided.
-#
-!IF "$(CFGSET)" == "FALSE"
-clean:
-	@-erase /s *.dll 2> NUL
-	@-erase /s *.exp 2> NUL
-	@-erase /s *.idb 2> NUL
-	@-erase /s *.lib 2> NUL
-	@-erase /s *.obj 2> NUL
-	@-erase /s *.pch 2> NUL
-	@-erase /s *.pdb 2> NUL
-	@-erase /s *.res 2> NUL
-!ELSE
-# A config was provided, so the library can be built.
-#
-X_OBJS= \
-	$(DIROBJ)\base64.obj \
-	$(DIROBJ)\connect.obj \
-	$(DIROBJ)\content_encoding.obj \
-	$(DIROBJ)\cookie.obj \
-	$(DIROBJ)\curl_addrinfo.obj \
-	$(DIROBJ)\curl_memrchr.obj \
-	$(DIROBJ)\curl_rand.obj \
-	$(DIROBJ)\curl_sspi.obj \
-	$(DIROBJ)\curl_threads.obj \
-	$(DIROBJ)\dict.obj \
-	$(DIROBJ)\easy.obj \
-	$(DIROBJ)\escape.obj \
-	$(DIROBJ)\file.obj \
-	$(DIROBJ)\formdata.obj \
-	$(DIROBJ)\ftp.obj \
-	$(DIROBJ)\getenv.obj \
-	$(DIROBJ)\getinfo.obj \
-	$(DIROBJ)\gtls.obj \
-	$(DIROBJ)\hash.obj \
-	$(DIROBJ)\hostares.obj \
-	$(DIROBJ)\hostasyn.obj \
-	$(DIROBJ)\hostip.obj \
-	$(DIROBJ)\hostip4.obj \
-	$(DIROBJ)\hostip6.obj \
-	$(DIROBJ)\hostsyn.obj \
-	$(DIROBJ)\hostthre.obj \
-	$(DIROBJ)\http.obj \
-	$(DIROBJ)\http_chunks.obj \
-	$(DIROBJ)\http_digest.obj \
-	$(DIROBJ)\http_negotiate.obj \
-	$(DIROBJ)\http_ntlm.obj \
-	$(DIROBJ)\if2ip.obj \
-	$(DIROBJ)\imap.obj \
-	$(DIROBJ)\inet_ntop.obj \
-	$(DIROBJ)\inet_pton.obj \
-	$(DIROBJ)\ldap.obj \
-	$(DIROBJ)\llist.obj \
-	$(DIROBJ)\md5.obj \
-	$(DIROBJ)\memdebug.obj \
-	$(DIROBJ)\mprintf.obj \
-	$(DIROBJ)\multi.obj \
-	$(DIROBJ)\netrc.obj \
-        $(DIROBJ)\nonblock.obj \
-	$(DIROBJ)\parsedate.obj \
-	$(DIROBJ)\pingpong.obj \
-	$(DIROBJ)\pop3.obj \
-	$(DIROBJ)\progress.obj \
-	$(DIROBJ)\rawstr.obj \
-	$(DIROBJ)\rtsp.obj \
-	$(DIROBJ)\select.obj \
-	$(DIROBJ)\sendf.obj \
-	$(DIROBJ)\share.obj \
-	$(DIROBJ)\slist.obj \
-	$(DIROBJ)\smtp.obj \
-	$(DIROBJ)\socks.obj \
-	$(DIROBJ)\socks_gssapi.obj \
-	$(DIROBJ)\socks_sspi.obj \
-	$(DIROBJ)\speedcheck.obj \
-	$(DIROBJ)\splay.obj \
-	$(DIROBJ)\ssh.obj \
-	$(DIROBJ)\sslgen.obj \
-	$(DIROBJ)\ssluse.obj \
-	$(DIROBJ)\strequal.obj \
-	$(DIROBJ)\strerror.obj \
-	$(DIROBJ)\strtok.obj \
-	$(DIROBJ)\strtoofft.obj \
-	$(DIROBJ)\telnet.obj \
-	$(DIROBJ)\tftp.obj \
-	$(DIROBJ)\timeval.obj \
-	$(DIROBJ)\transfer.obj \
-	$(DIROBJ)\url.obj \
-	$(DIROBJ)\version.obj \
-	$(DIROBJ)\warnless.obj \
-	$(RESOURCE)
-
-all : $(TARGET)
-
-$(TARGET): $(X_OBJS)
-	$(LNK) $(LFLAGS) $(X_OBJS)
-	-xcopy $(DIROBJ)\$(LIB_NAME).dll       . /y
-	-xcopy $(DIROBJ)\$(LIB_NAME).lib       . /y
-	-xcopy $(DIROBJ)\$(LIB_NAME_DEBUG).dll . /y
-	-xcopy $(DIROBJ)\$(LIB_NAME_DEBUG).lib . /y
-	-xcopy $(DIROBJ)\$(IMPLIB_NAME).lib    . /y
-	-xcopy $(DIROBJ)\$(IMPLIB_NAME_DEBUG).lib . /y
-	-xcopy $(DIROBJ)\*.exp                 . /y
-	-xcopy $(DIROBJ)\*.pdb                 . /y
-
-$(X_OBJS): $(DIROBJ)
-
-$(DIROBJ):
-	@if not exist "$(DIROBJ)" mkdir $(DIROBJ)
-
-.SUFFIXES: .c .obj .res
-
-{.\}.c{$(DIROBJ)\}.obj:
-	$(CC) $(CFLAGS) /Fo"$@"  $<
-
-debug-dll\libcurl.res \
-debug-dll-ssl-dll\libcurl.res \
-debug-dll-zlib-dll\libcurl.res \
-debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
-	rc /dDEBUGBUILD=1 /Fo $@ libcurl.rc
-
-release-dll\libcurl.res \
-release-dll-ssl-dll\libcurl.res \
-release-dll-zlib-dll\libcurl.res \
-release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
-	rc /dDEBUGBUILD=0 /Fo $@ libcurl.rc
-!ENDIF  # End of case where a config was provided.
diff --git a/src/other/curl/lib/Makefile.vxworks b/src/other/curl/lib/Makefile.vxworks
deleted file mode 100644
index 796d160..0000000
--- a/src/other/curl/lib/Makefile.vxworks
+++ /dev/null
@@ -1,177 +0,0 @@
-#*****************************************************************************
-#
-#
-#Filename   : Makefile.vxworks
-#Description: makefile to be used in order to compile libcurl for VxWoorks 6.3.
-#
-#How to use:
-#             1. Adjust environment variables at the file begining
-#             2. Open the Command Prompt window and change directory ('cd')
-#                into the 'lib' folder
-#             3. Add <CYGWIN>/bin folder to the PATH environment variable
-#                For example type 'set PATH=C:/embedded/cygwin/bin;%PATH%'
-#             4. Build the library by typing 'make -f ./Makefile.vxworks'
-#             As a result the libcurl.a should be created in the 'lib' folder.
-#             To clean package use 'make -f ./Makefile.vxworks clean'
-#Requirements:
-#             1. WinXP machine
-#             2. Full CYGWIN installation (open source) with GNU make version
-#                v3.78 or higher
-#             3. WindRiver Workbench with vxWorks 6.3 (commercial)
-#*****************************************************************************
-
-# ----------------------------------------------------------------------
-# Environment
-# ----------------------------------------------------------------------
-
-export WIND_HOME := C:/embedded/Workbench2.5.0.1
-export WIND_BASE := $(WIND_HOME)/vxworks-6.3
-export WIND_HOST_TYPE := x86-win32
-
-# BUILD_TYE:= <debug>|<release> (build with debugging info or optimized)
-BUILD_TYPE := debug
-USER_CFLAGS:=
-
-# directories where to seek for includes and libraries
-OPENSSL_INC := D:/libraries/openssl/openssl-0.9.8a-vxWorks6.3/include
-OPENSSL_LIB := D:/libraries/openssl/openssl-0.9.8a-vxWorks6.3
-ZLIB_INC    := D:/libraries/zlib/zlib-1.2.3-VxWorks6.3/zlib-1.2.3
-ZLIB_LIB    := D:/libraries/zlib/zlib-1.2.3-VxWorks6.3/binaries/vxworks_3.1_gnu/Debug/lib
-ARES_INC    :=
-ARES_LIB    :=
-
-
-# ----------------------------------------------------------------------
-# Compiler
-# ----------------------------------------------------------------------
-
-CC := ccppc
-AR := arppc
-LINK := ccppc
-CFLAGS := -D__GNUC__ -D__ppc__ -msoft-float -fno-builtin -mcpu=604 -mlongcall -DCPU=PPC604 -D_GNU_TOOL -Wall -W -Winline $(USER_CFLAGS)
-LDFLAGS := -nostdlib -Wl,-i -Wl,-X
-INCLUDE_FLAG := -I
-C_DEBUGFLAG := -g
-C_OPTFLAG := -O2
-COMPILE_ONLY_FLAG := -c
-OBJ_EXTENSION := .o
-CC_OBJ_OUTPUT = -o $@
-ARFLAGS := -rc
-LIBS_FLAG := -l
-LIBS_DIRFLAG:= -L
-LD_DEBUGFLAG := $(C_DEBUGFLAG)
-EXECUTE_EXTENSION := .out
-TOOL_CHAIN_BIN := $(WIND_HOME)/gnu/3.4.4-vxworks-6.3/$(WIND_HOST_TYPE)/bin/
-
-# ----------------------------------------------------------------------
-
-# Add -DINET6 if the OS kernel image was built with IPv6 support
-# CFLAGS += -DINET6
-
-# Set up compiler and linker flags for debug or optimization
-ifeq ($(BUILD_TYPE), debug)
-CFLAGS += $(C_DEBUGFLAG)
-LDFLAGS += $(LD_DEBUGFLAG)
-else
-CFLAGS += $(C_OPTFLAG)
-endif
-
-# ----------------------------------------------------------------------
-
-# Main Makefile and possible sub-make files
-MAKEFILES := Makefile.vxworks
-
-# List of external include directories
-#-----
-# IMPORTANT: include OPENSSL directories before system
-#            in order to prevent WindRiver OpenSSL to be used.
-#-----
-INCLUDE_DIRS := ../include $(OPENSSL_INC) $(ZLIB_INC) $(ARES_INC) $(WIND_BASE)/target/h $(WIND_BASE)/target/h/wrn/coreip
-
-# List of external libraries and their directories
-LIBS_LIST := .
-LIB_DIRS  := .
-ifneq ($(OPENSSL_LIB), )
-LIBS_LIST += crypto ssl
-LIB_DIRS  += $(OPENSSL_LIB)
-endif
-ifneq ($(ZLIB_LIB), )
-LIBS_LIST += z
-LIB_DIRS  += $(ZLIB_LIB)
-endif
-ifneq ($(ARES_LIB), )
-LIBS_LIST += ares
-LIB_DIRS  += $(ARES_LIB)
-endif
-
-# Add include and library directories and libraries
-CFLAGS += $(INCLUDE_DIRS:%=$(INCLUDE_FLAG)%)
-LDFLAGS += $(LIB_DIRS:%=$(LIBS_DIRFLAG)%)
-
-# List of targets to make for libs target
-LIBS_TARGET_LIST := libcurl.a
-
-# List of execuatble applications to make in addition to libs for all target
-EXE_TARGET_LIST :=
-
-# Support for echoing rules
-# If ECHORULES variable was set (for example, using 'make' command line)
-#  some shell commands in the rules will be echoed
-ifneq ($(strip $(findstring $(ECHORULES), yes YES 1 true TRUE)),)
-_ at _ :=
-else
-_ at _ := @
-endif
-
-# Directory to hold compilation intermediate files
-TMP_DIR := tmp
-
-# Get sources and headers to be compiled
-include Makefile.inc
-
-# List of headers
-INCLUDE_FILES := $(HHEADERS)
-INCLUDE_FILES += $(shell find ../include -name \*.h)
-
-# List of sources
-OBJLIST := $(CSOURCES:%.c=$(TMP_DIR)/%$(OBJ_EXTENSION))
-
-
-# ----------------------------------------------------------------------
-
-#### default rule
-# It should be first rule in this file
-.PHONY: default
-default: libcurl.a
-
-#### Compiling C files
-$(TMP_DIR)/%$(OBJ_EXTENSION): %.c $(MAKEFILES)
-	@echo Compiling C file $< $(ECHO_STDOUT)
-	@[ -d $(@D) ] || mkdir -p $(@D)
-	$(_ at _) $(TOOL_CHAIN_BIN)$(CC) $(COMPILE_ONLY_FLAG) $(CFLAGS) $< $(CC_OBJ_OUTPUT)
-
-#### Creating library
-$(LIBS_TARGET_LIST): $(INCLUDE_FILES) $(MAKEFILES) $(OBJLIST)
-	@echo Creating library $@ $(ECHO_STDOUT)
-	$(_ at _) [ -d $(@D) ] || mkdir -p $(@D)
-	$(_ at _) rm -f $@
-	$(_ at _) $(TOOL_CHAIN_BIN)$(AR) $(ARFLAGS) $@ $(filter %$(OBJ_EXTENSION), $^)
-
-#### Creating application
-$(EXE_TARGET_LIST): $(INCLUDE_FILES) $(MAKEFILES) $(LIBS_TARGET_LIST)
-	@echo Creating application $@
-	@[ -d $(@D) ] || mkdir -p $(@D)
-	$(_ at _) $(TOOL_CHAIN_BIN)$(LINK) $(CC_OBJ_OUTPUT) $($(@)_EXE_OBJ_LIST) $(LDFLAGS) $($(@)_EXE_LIBS_NEEDED:%=$(LIBS_FLAG)%) $(LIBS_LIST:%=$(LIBS_FLAG)%) $(USER_LIBS_LIST) $(USER_LIBS_LIST)
-
-#### Master Targets
-libs: $(LIBS_TARGET_LIST)
-	@echo All libs made.
-
-all: $(LIBS_TARGET_LIST) $(EXE_TARGET_LIST) $(INCLUDE_TARGET_LIST)
-	@echo All targets made.
-
-# Clean up
-.PHONY: clean
-clean:
-	$(_ at _) rm -rf $(TMP_DIR)
-	@echo libcurl was cleaned.
diff --git a/src/other/curl/lib/README.ares b/src/other/curl/lib/README.ares
deleted file mode 100644
index d3ee24b..0000000
--- a/src/other/curl/lib/README.ares
+++ /dev/null
@@ -1,69 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-          How To Build libcurl to Use c-ares For Asynch Name Resolves
-          ===========================================================
-
-c-ares:
-  http://c-ares.haxx.se/
-
-NOTE
-  The latest libcurl version requires c-ares 1.4.0 or later.
-
-  Once upon the time libcurl built fine with the "original" ares. That is no
-  longer true. You need to use c-ares.
-
-Build c-ares
-============
-
-1. unpack the c-ares archive
-2. cd c-ares-dir
-3. ./configure
-4. make
-5. make install
-
-Build libcurl to use c-ares in the curl source tree
-===================================================
-
-1. name or symlink the c-ares source directory 'ares' in the curl source
-   directory
-2. ./configure --enable-ares
-
-  Optionally, you can point out the c-ares install tree root with the the
-  --enable-ares option.
-
-3. make
-
-Build libcurl to use an installed c-ares
-========================================
-
-1. ./configure --enable-ares=/path/to/ares/install
-2. make
-
-c-ares on win32
-===============
-(description brought by Dominick Meglio)
-
-First I compiled c-ares. I changed the default C runtime library to be the
-single-threaded rather than the multi-threaded (this seems to be required to
-prevent linking errors later on). Then I simply build the areslib project (the
-other projects adig/ahost seem to fail under MSVC).
-
-Next was libcurl. I opened lib/config-win32.h and I added a:
- #define USE_ARES 1
-
-Next thing I did was I added the path for the ares includes to the include
-path, and the libares.lib to the libraries.
-
-Lastly, I also changed libcurl to be single-threaded rather than
-multi-threaded, again this was to prevent some duplicate symbol errors. I'm
-not sure why I needed to change everything to single-threaded, but when I
-didn't I got redefinition errors for several CRT functions (malloc, stricmp,
-etc.)
-
-I would have modified the MSVC++ project files, but I only have VC.NET and it
-uses a different format than VC6.0 so I didn't want to go and change
-everything and remove VC6.0 support from libcurl.
diff --git a/src/other/curl/lib/README.curl_off_t b/src/other/curl/lib/README.curl_off_t
deleted file mode 100644
index 923b277..0000000
--- a/src/other/curl/lib/README.curl_off_t
+++ /dev/null
@@ -1,68 +0,0 @@
-
-   curl_off_t explained
-   ====================
-
-curl_off_t is a data type provided by the external libcurl include headers. It
-is the type meant to be used for the curl_easy_setopt() options that end with
-LARGE. The type is 64bit large on most modern platforms.
-
-Transition from < 7.19.0 to >= 7.19.0
--------------------------------------
-
-Applications that used libcurl before 7.19.0 that are rebuilt with a libcurl
-that is 7.19.0 or later may or may not have to worry about anything of
-this. We have made a significant effort to make the transition really seamless
-and transparent.
-
-You have have to take notice if you are in one of the following situations:
-
-o Your app is using or will after the transition use a libcurl that is built
-  with LFS (large file support) disabled even though your system otherwise
-  supports it.
-
-o Your app is using or will after the transition use a libcurl that doesn't
-  support LFS at all, but your system and compiler support 64bit data types.
-
-In both these cases, the curl_off_t type will now (after the transition) be
-64bit where it previously was 32bit. This will cause a binary incompatibility
-that you MAY need to deal with.
-
-Benefits
---------
-
-This new way has several benefits:
-
-o Platforms without LFS support can still use libcurl to do >32 bit file
-  transfers and range operations etc as long as they have >32 bit data-types
-  supported.
-
-o Applications will no longer easily build with the curl_off_t size
-  mismatched, which has been a very frequent (and annoying) problem with
-  libcurl <= 7.18.2
-
-Historically
-------------
-
-Previously, before 7.19.0, the curl_off_t type would be rather strongly
-connected to the size of the system off_t type, where currently curl_off_t is
-independent of that.
-
-The strong connection to off_t made it troublesome for application authors
-since when they did mistakes, they could get curl_off_t type of different
-sizes in the app vs libcurl, and that caused strange effects that were hard to
-track and detect by users of libcurl.
-
-SONAME
-------
-
-We opted to not bump the soname for the library unconditionally, simply
-because soname bumping is causing a lot of grief and moaning all over the
-community so we try to keep that at minimum. Also, our selected design path
-should be 100% backwards compatible for the vast majority of all libcurl
-users.
-
-Enforce SONAME bump
--------------------
-
-If configure doesn't detect your case where a bump is necessary, re-run it
-with the --enable-soname-bump command line option!
diff --git a/src/other/curl/lib/README.curlx b/src/other/curl/lib/README.curlx
deleted file mode 100644
index 5375b0d..0000000
--- a/src/other/curl/lib/README.curlx
+++ /dev/null
@@ -1,61 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-                     Source Code Functions Apps Might Use
-                     ====================================
-
-The libcurl source code offers a few functions by source only. They are not
-part of the official libcurl API, but the source files might be useful for
-others so apps can optionally compile/build with these sources to gain
-additional functions.
-
-We provide them through a single header file for easy access for apps:
-"curlx.h"
-
- curlx_strtoofft()
-
-   A macro that converts a string containing a number to a curl_off_t number.
-   This might use the curlx_strtoll() function which is provided as source
-   code in strtoofft.c. Note that the function is only provided if no
-   strtoll() (or equivalent) function exist on your platform. If curl_off_t
-   is only a 32 bit number on your platform, this macro uses strtol().
-
- curlx_tvnow()
-
-   returns a struct timeval for the current time.
-
- curlx_tvdiff()
-
-   returns the difference between two timeval structs, in number of
-   milliseconds.
-
- curlx_tvdiff_secs()
-
-   returns the same as curlx_tvdiff but with full usec resolution (as a
-   double)
-
-FUTURE
-======
-
- Several functions will be removed from the public curl_ name space in a
- future libcurl release. They will then only become available as curlx_
- functions instead. To make the transition easier, we already today provide
- these functions with the curlx_ prefix to allow sources to get built properly
- with the new function names. The functions this concerns are:
-
-      curlx_getenv
-      curlx_strequal
-      curlx_strnequal
-      curlx_mvsnprintf
-      curlx_msnprintf
-      curlx_maprintf
-      curlx_mvaprintf
-      curlx_msprintf
-      curlx_mprintf
-      curlx_mfprintf
-      curlx_mvsprintf
-      curlx_mvprintf
-      curlx_mvfprintf
diff --git a/src/other/curl/lib/README.encoding b/src/other/curl/lib/README.encoding
deleted file mode 100644
index 0d31b36..0000000
--- a/src/other/curl/lib/README.encoding
+++ /dev/null
@@ -1,60 +0,0 @@
-
-                    Content Encoding Support for libcurl
-
-* About content encodings:
-
-HTTP/1.1 [RFC 2616] specifies that a client may request that a server encode
-its response. This is usually used to compress a response using one of a set
-of commonly available compression techniques. These schemes are `deflate' (the
-zlib algorithm), `gzip' and `compress' [sec 3.5, RFC 2616]. A client requests
-that the sever perform an encoding by including an Accept-Encoding header in
-the request document. The value of the header should be one of the recognized
-tokens `deflate', ... (there's a way to register new schemes/tokens, see sec
-3.5 of the spec). A server MAY honor the client's encoding request. When a
-response is encoded, the server includes a Content-Encoding header in the
-response. The value of the Content-Encoding header indicates which scheme was
-used to encode the data.
-
-A client may tell a server that it can understand several different encoding
-schemes. In this case the server may choose any one of those and use it to
-encode the response (indicating which one using the Content-Encoding header).
-It's also possible for a client to attach priorities to different schemes so
-that the server knows which it prefers. See sec 14.3 of RFC 2616 for more
-information on the Accept-Encoding header.
-
-* Current support for content encoding:
-
-Support for the 'deflate' and 'gzip' content encoding are supported by
-libcurl. Both regular and chunked transfers should work fine.  The library
-zlib is required for this feature. 'deflate' support was added by James
-Gallagher, and support for the 'gzip' encoding was added by Dan Fandrich.
-
-* The libcurl interface:
-
-To cause libcurl to request a content encoding use:
-
-    curl_easy_setopt(curl, CURLOPT_ENCODING, <string>)
-
-where <string> is the intended value of the Accept-Encoding header.
-
-Currently, libcurl only understands how to process responses that use the
-"deflate" or "gzip" Content-Encoding, so the only values for CURLOPT_ENCODING
-that will work (besides "identity," which does nothing) are "deflate" and
-"gzip" If a response is encoded using the "compress" or methods, libcurl will
-return an error indicating that the response could not be decoded.  If
-<string> is NULL no Accept-Encoding header is generated.  If <string> is a
-zero-length string, then an Accept-Encoding header containing all supported
-encodings will be generated.
-
-The CURLOPT_ENCODING must be set to any non-NULL value for content to be
-automatically decoded.  If it is not set and the server still sends encoded
-content (despite not having been asked), the data is returned in its raw form
-and the Content-Encoding type is not checked.
-
-* The curl interface:
-
-Use the --compressed option with curl to cause it to ask servers to compress
-responses using any format supported by curl.
-
-James Gallagher <jgallagher at gso.uri.edu>
-Dan Fandrich <dan at coneharvesters.com>
diff --git a/src/other/curl/lib/README.hostip b/src/other/curl/lib/README.hostip
deleted file mode 100644
index 9723b93..0000000
--- a/src/other/curl/lib/README.hostip
+++ /dev/null
@@ -1,35 +0,0 @@
- hostip.c explained
- ==================
-
- The main COMPILE-TIME DEFINES to keep in mind when reading the host*.c
- source file are these:
-
- CURLRES_IPV6 - this host has getaddrinfo() and family, and thus we use
- that. The host may not be able to resolve IPv6, but we don't really have to
- take that into account. Hosts that aren't IPv6-enabled have CURLRES_IPV4
- defined.
-
- CURLRES_ARES - is defined if libcurl is built to use c-ares for asynchronous
- name resolves. It cannot have ENABLE_IPV6 defined at the same time, as c-ares
- has no ipv6 support. This can be Windows or *nix.
-
- CURLRES_THREADED - is defined if libcurl is built to run under (native)
- Windows, and then the name resolve will be done in a new thread, and the
- supported asynch API will be the same as for ares-builds.
-
- If any of the two previous are defined, CURLRES_ASYNCH is defined too. If
- libcurl is not built to use an asynchronous resolver, CURLRES_SYNCH is
- defined.
-
- The host*.c sources files are split up like this:
-
- hostip.c   - method-independent resolver functions and utility functions
- hostasyn.c - functions for asynchronous name resolves
- hostsyn.c  - functions for synchronous name resolves
- hostares.c - functions for ares-using name resolves
- hostthre.c - functions for threaded name resolves
- hostip4.c  - ipv4-specific functions
- hostip6.c  - ipv6-specific functions
-
- The hostip.h is the single united header file for all this. It defines the
- CURLRES_* defines based on the config*.h and setup.h defines.
diff --git a/src/other/curl/lib/README.httpauth b/src/other/curl/lib/README.httpauth
deleted file mode 100644
index 9605045..0000000
--- a/src/other/curl/lib/README.httpauth
+++ /dev/null
@@ -1,74 +0,0 @@
-
-1. PUT/POST without a known auth to use (possibly no auth required):
-
-   (When explicitly set to use a multi-pass auth when doing a POST/PUT,
-   libcurl should immediately go the Content-Length: 0 bytes route to avoid
-   the first send all data phase, step 2. If told to use a single-pass auth,
-   goto step 3.)
-
-   Issue the proper PUT/POST request immediately, with the correct
-   Content-Length and Expect: headers.
-
-   If a 100 response is received or the wait for one times out, start sending
-   the request-body.
-
-   If a 401 (or 407 when talking through a proxy) is received, then:
-
-   If we have "more than just a little" data left to send, close the
-   connection. Exactly what "more than just a little" means will have to be
-   determined. Possibly the current transfer speed should be taken into
-   account as well.
-
-   NOTE: if the size of the POST data is less than MAX_INITIAL_POST_SIZE (when
-   CURLOPT_POSTFIELDS is used), libcurl will send everything in one single
-   write() (all request-headers and request-body) and thus it will
-   unconditionally send the full post data here.
-
-2. PUT/POST with multi-pass auth but not yet completely negotiated:
-
-   Send a PUT/POST request, we know that it will be rejected and thus we claim
-   Content-Length zero to avoid having to send the request-body. (This seems
-   to be what IE does.)
-
-3. PUT/POST as the last step in the auth negotiation, that is when we have
-   what we believe is a completed negotiation:
-
-   Send a full and proper PUT/POST request (again) with the proper
-   Content-Length and a following request-body.
-
-   NOTE: this may very well be the second (or even third) time the whole or at
-   least parts of the request body is sent to the server. Since the data may
-   be provided to libcurl with a callback, we need a way to tell the app that
-   the upload is to be restarted so that the callback will provide data from
-   the start again.  This requires an API method/mechanism that libcurl
-   doesn't have today. See below.
-
-Data Rewind
-
-   It will be troublesome for some apps to deal with a rewind like this in all
-   circumstances. I'm thinking for example when using 'curl' to upload data
-   from stdin. If libcurl ends up having to rewind the reading for a request
-   to succeed, of course a lack of this callback or if it returns failure, will
-   cause the request to fail completely.
-
-   The new callback is set with CURLOPT_IOCTLFUNCTION (in an attempt to add a
-   more generic function that might be used for other IO-related controls in
-   the future):
-
-     curlioerr curl_ioctl(CURL *handle, curliocmd cmd, void *clientp);
-
-   And in the case where the read is to be rewinded, it would be called with a
-   cmd named CURLIOCMD_RESTARTREAD. The callback would then return CURLIOE_OK,
-   if things are fine, or CURLIOE_FAILRESTART if not.
-
-Backwards Compatibility
-
-   The approach used until now, that issues a HEAD on the given URL to trigger
-   the auth negotiation could still be supported and encouraged, but it would
-   be up to the app to first fetch a URL with GET/HEAD to negotiate on, since
-   then a following PUT/POST wouldn't need to negotiate authentication and
-   thus avoid double-sending data.
-
-   Optionally, we keep the current approach if some option is set
-   (CURLOPT_HEADBEFOREAUTH or similar), since it seems to work fairly well for
-   POST on most servers.
diff --git a/src/other/curl/lib/README.memoryleak b/src/other/curl/lib/README.memoryleak
deleted file mode 100644
index 1661777..0000000
--- a/src/other/curl/lib/README.memoryleak
+++ /dev/null
@@ -1,55 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-             How To Track Down Suspected Memory Leaks in libcurl
-             ===================================================
-
-Single-threaded
-
-  Please note that this memory leak system is not adjusted to work in more
-  than one thread. If you want/need to use it in a multi-threaded app. Please
-  adjust accordingly.
-
-
-Build
-
-  Rebuild libcurl with -DCURLDEBUG (usually, rerunning configure with
-  --enable-debug fixes this). 'make clean' first, then 'make' so that all
-  files actually are rebuilt properly. It will also make sense to build
-  libcurl with the debug option (usually -g to the compiler) so that debugging
-  it will be easier if you actually do find a leak in the library.
-
-  This will create a library that has memory debugging enabled.
-
-Modify Your Application
-
-  Add a line in your application code:
-
-       curl_memdebug("dump");
-
-  This will make the malloc debug system output a full trace of all resource
-  using functions to the given file name. Make sure you rebuild your program
-  and that you link with the same libcurl you built for this purpose as
-  described above.
-
-Run Your Application
-
-  Run your program as usual. Watch the specified memory trace file grow.
-
-  Make your program exit and use the proper libcurl cleanup functions etc. So
-  that all non-leaks are returned/freed properly.
-
-Analyze the Flow
-
-  Use the tests/memanalyze.pl perl script to analyze the dump file:
-
-    tests/memanalyze.pl dump
-
-  This now outputs a report on what resources that were allocated but never
-  freed etc. This report is very fine for posting to the list!
-
-  If this doesn't produce any output, no leak was detected in libcurl. Then
-  the leak is mostly likely to be in your code.
diff --git a/src/other/curl/lib/README.multi_socket b/src/other/curl/lib/README.multi_socket
deleted file mode 100644
index d91e1d9..0000000
--- a/src/other/curl/lib/README.multi_socket
+++ /dev/null
@@ -1,53 +0,0 @@
-Implementation of the curl_multi_socket API
-
-  The main ideas of the new API are simply:
-
-   1 - The application can use whatever event system it likes as it gets info
-       from libcurl about what file descriptors libcurl waits for what action
-       on. (The previous API returns fd_sets which is very select()-centric).
-
-   2 - When the application discovers action on a single socket, it calls
-       libcurl and informs that there was action on this particular socket and
-       libcurl can then act on that socket/transfer only and not care about
-       any other transfers. (The previous API always had to scan through all
-       the existing transfers.)
-
-  The idea is that curl_multi_socket_action() calls a given callback with
-  information about what socket to wait for what action on, and the callback
-  only gets called if the status of that socket has changed.
-
-  We also added a timer callback that makes libcurl call the application when
-  the timeout value changes, and you set that with curl_multi_setopt() and the
-  CURLMOPT_TIMERFUNCTION option. To get this to work, Internally, there's an
-  added a struct to each easy handle in which we store an "expire time" (if
-  any). The structs are then "splay sorted" so that we can add and remove
-  times from the linked list and yet somewhat swiftly figure out both how long
-  time there is until the next nearest timer expires and which timer (handle)
-  we should take care of now. Of course, the upside of all this is that we get
-  a curl_multi_timeout() that should also work with old-style applications
-  that use curl_multi_perform().
-
-  We created an internal "socket to easy handles" hash table that given
-  a socket (file descriptor) return the easy handle that waits for action on
-  that socket.  This hash is made using the already existing hash code
-  (previously only used for the DNS cache).
-
-  To make libcurl able to report plain sockets in the socket callback, we had
-  to re-organize the internals of the curl_multi_fdset() etc so that the
-  conversion from sockets to fd_sets for that function is only done in the
-  last step before the data is returned. I also had to extend c-ares to get a
-  function that can return plain sockets, as that library too returned only
-  fd_sets and that is no longer good enough. The changes done to c-ares are
-  available in c-ares 1.3.1 and later.
-
-  We have done a test runs with up to 9000 connections (with a single active
-  one). The curl_multi_socket_action() invoke then takes less than 10
-  microseconds in average (using the read-only-1-byte-at-a-time hack).  We are
-  now below the 60 microseconds "per socket action" goal (the extra 50 is the
-  time libevent needs).
-
-Documentation
-
-    http://curl.haxx.se/libcurl/c/curl_multi_socket_action.html
-    http://curl.haxx.se/libcurl/c/curl_multi_timeout.html
-    http://curl.haxx.se/libcurl/c/curl_multi_setopt.html
diff --git a/src/other/curl/lib/README.pingpong b/src/other/curl/lib/README.pingpong
deleted file mode 100644
index 69ba9aa..0000000
--- a/src/other/curl/lib/README.pingpong
+++ /dev/null
@@ -1,30 +0,0 @@
-Date: December 5, 2009
-
-Pingpong
-========
-
- Pingpong is just my (Daniel's) jestful collective name on the protocols that
- share a very similar kind of back-and-forth procedure with command and
- responses to and from the server. FTP was previously the only protocol in
- that family that libcurl supported, but when POP3, IMAP and SMTP joined the
- team I moved some of the internals into a separate pingpong module to be
- easier to get used by all these protocols to reduce code duplication and ease
- code re-use between these protocols.
-
-FTP
-
- In 7.20.0 we converted code to use the new pingpong code from previously
- having been all "native" FTP code.
-
-POP3
-
- There's no support in the documented URL format to specify the exact mail to
- get, but we support that as the path specified in the URL.
-
-IMAP
-
-SMTP
-
- There's no official URL syntax defined for SMTP, but we use only the generic
- one and we provide two additional libcurl options to specify receivers and
- sender of the actual mail.
diff --git a/src/other/curl/lib/README.pipelining b/src/other/curl/lib/README.pipelining
deleted file mode 100644
index c7b4622..0000000
--- a/src/other/curl/lib/README.pipelining
+++ /dev/null
@@ -1,51 +0,0 @@
-HTTP Pipelining with libcurl
-============================
-
-Background
-
-Since pipelining implies that one or more requests are sent to a server before
-the previous response(s) have been received, we only support it for multi
-interface use.
-
-Considerations
-
-When using the multi interface, you create one easy handle for each transfer.
-Bascially any number of handles can be created, added and used with the multi
-interface - simultaneously. It is an interface designed to allow many
-simultaneous transfers while still using a single thread. Pipelining does not
-change any of these details.
-
-API
-
-We've added a new option to curl_multi_setopt() called CURLMOPT_PIPELINING
-that enables "attempted pipelining" and then all easy handles used on that
-handle will attempt to use an existing pipeline.
-
-Details
-
-- A pipeline is only created if a previous connection exists to the same IP
-  address that the new request is being made to use.
-
-- Pipelines are only supported for HTTP(S) as no other currently supported
-  protocol has features resemembling this, but we still name this feature
-  plain 'pipelining' to possibly one day support it for other protocols as
-  well.
-
-- HTTP Pipelining is for GET and HEAD requests only.
-
-- When a pipeline is in use, we must take precautions so that when used easy
-  handles (i.e those who still wait for a response) are removed from the multi
-  handle, we must deal with the outstanding response nicely.
-
-- Explicitly asking for pipelining handle X and handle Y won't be supported.
-  It isn't easy for an app to do this association. The lib should probably
-  still resolve the second one properly to make sure that they actually _can_
-  be considered for pipelining. Also, asking for explicit pipelining on handle
-  X may be tricky when handle X get a closed connection.
-
-- We need options to control max pipeline length, and probably how to behave
-  if we reach that limit. As was discussed on the list, it can probably be
-  made very complicated, so perhaps we can think of a way to pass all
-  variables involved to a callback and let the application decide how to act
-  in specific situations. Either way, these fancy options are only interesting
-  to work on when everything is working and we have working apps to test with.
diff --git a/src/other/curl/lib/amigaos.c b/src/other/curl/lib/amigaos.c
deleted file mode 100644
index 2055126..0000000
--- a/src/other/curl/lib/amigaos.c
+++ /dev/null
@@ -1,80 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#ifdef __AMIGA__ /* Any AmigaOS flavour */
-
-#include "amigaos.h"
-#include <amitcp/socketbasetags.h>
-
-struct Library *SocketBase = NULL;
-extern int errno, h_errno;
-
-#ifdef __libnix__
-#include <stabs.h>
-void __request(const char *msg);
-#else
-# define __request( msg )       Printf( msg "\n\a")
-#endif
-
-void amiga_cleanup()
-{
-  if(SocketBase) {
-    CloseLibrary(SocketBase);
-    SocketBase = NULL;
-  }
-}
-
-BOOL amiga_init()
-{
-  if(!SocketBase)
-    SocketBase = OpenLibrary("bsdsocket.library", 4);
-
-  if(!SocketBase) {
-    __request("No TCP/IP Stack running!");
-    return FALSE;
-  }
-
-  if(SocketBaseTags(SBTM_SETVAL(SBTC_ERRNOPTR(sizeof(errno))), (ULONG) &errno,
-                    SBTM_SETVAL(SBTC_LOGTAGPTR), (ULONG) "cURL",
-                    TAG_DONE)) {
-    __request("SocketBaseTags ERROR");
-    return FALSE;
-  }
-
-#ifndef __libnix__
-  atexit(amiga_cleanup);
-#endif
-
-  return TRUE;
-}
-
-#ifdef __libnix__
-ADD2EXIT(amiga_cleanup,-50);
-#endif
-
-#else /* __AMIGA__ */
-
-#ifdef __POCC__
-#  pragma warn(disable:2024)  /* Disable warning #2024: Empty input file */
-#endif
-
-#endif /* __AMIGA__ */
diff --git a/src/other/curl/lib/amigaos.h b/src/other/curl/lib/amigaos.h
deleted file mode 100644
index d6ff064..0000000
--- a/src/other/curl/lib/amigaos.h
+++ /dev/null
@@ -1,57 +0,0 @@
-#ifndef LIBCURL_AMIGAOS_H
-#define LIBCURL_AMIGAOS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#ifdef __AMIGA__ /* Any AmigaOS flavour */
-
-#ifndef __ixemul__
-
-#include <exec/types.h>
-#include <exec/execbase.h>
-
-#include <proto/exec.h>
-#include <proto/dos.h>
-
-#include <sys/socket.h>
-
-#include "config-amigaos.h"
-
-#ifndef select
-# define select(args...) WaitSelect( args, NULL)
-#endif
-#ifndef ioctl
-# define ioctl(a,b,c,d)  IoctlSocket( (LONG)a, (ULONG)b, (char*)c)
-#endif
-#define _AMIGASF        1
-
-extern void amiga_cleanup();
-extern BOOL amiga_init();
-
-#else /* __ixemul__ */
-
-#warning compiling with ixemul...
-
-#endif /* __ixemul__ */
-#endif /* __AMIGA__ */
-#endif /* LIBCURL_AMIGAOS_H */
-
diff --git a/src/other/curl/lib/arpa_telnet.h b/src/other/curl/lib/arpa_telnet.h
deleted file mode 100644
index ddb14f6..0000000
--- a/src/other/curl/lib/arpa_telnet.h
+++ /dev/null
@@ -1,102 +0,0 @@
-#ifndef HEADER_CURL_ARPA_TELNET_H
-#define HEADER_CURL_ARPA_TELNET_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#ifndef CURL_DISABLE_TELNET
-/*
- * Telnet option defines. Add more here if in need.
- */
-#define CURL_TELOPT_BINARY   0  /* binary 8bit data */
-#define CURL_TELOPT_SGA      3  /* Supress Go Ahead */
-#define CURL_TELOPT_EXOPL  255  /* EXtended OPtions List */
-#define CURL_TELOPT_TTYPE   24  /* Terminal TYPE */
-#define CURL_TELOPT_XDISPLOC 35 /* X DISPlay LOCation */
-
-#define CURL_TELOPT_NEW_ENVIRON 39  /* NEW ENVIRONment variables */
-#define CURL_NEW_ENV_VAR   0
-#define CURL_NEW_ENV_VALUE 1
-
-/*
- * The telnet options represented as strings
- */
-static const char * const telnetoptions[]=
-{
-  "BINARY",      "ECHO",           "RCP",           "SUPPRESS GO AHEAD",
-  "NAME",        "STATUS",         "TIMING MARK",   "RCTE",
-  "NAOL",        "NAOP",           "NAOCRD",        "NAOHTS",
-  "NAOHTD",      "NAOFFD",         "NAOVTS",        "NAOVTD",
-  "NAOLFD",      "EXTEND ASCII",   "LOGOUT",        "BYTE MACRO",
-  "DE TERMINAL", "SUPDUP",         "SUPDUP OUTPUT", "SEND LOCATION",
-  "TERM TYPE",   "END OF RECORD",  "TACACS UID",    "OUTPUT MARKING",
-  "TTYLOC",      "3270 REGIME",    "X3 PAD",        "NAWS",
-  "TERM SPEED",  "LFLOW",          "LINEMODE",      "XDISPLOC",
-  "OLD-ENVIRON", "AUTHENTICATION", "ENCRYPT",       "NEW-ENVIRON"
-};
-
-#define CURL_TELOPT_MAXIMUM CURL_TELOPT_NEW_ENVIRON
-
-#define CURL_TELOPT_OK(x) ((x) <= CURL_TELOPT_MAXIMUM)
-#define CURL_TELOPT(x)    telnetoptions[x]
-
-#define CURL_NTELOPTS 40
-
-/*
- * First some defines
- */
-#define CURL_xEOF 236 /* End Of File */
-#define CURL_SE   240 /* Sub negotiation End */
-#define CURL_NOP  241 /* No OPeration */
-#define CURL_DM   242 /* Data Mark */
-#define CURL_GA   249 /* Go Ahead, reverse the line */
-#define CURL_SB   250 /* SuBnegotiation */
-#define CURL_WILL 251 /* Our side WILL use this option */
-#define CURL_WONT 252 /* Our side WON'T use this option */
-#define CURL_DO   253 /* DO use this option! */
-#define CURL_DONT 254 /* DON'T use this option! */
-#define CURL_IAC  255 /* Interpret As Command */
-
-/*
- * Then those numbers represented as strings:
- */
-static const char * const telnetcmds[]=
-{
-  "EOF",  "SUSP",  "ABORT", "EOR",  "SE",
-  "NOP",  "DMARK", "BRK",   "IP",   "AO",
-  "AYT",  "EC",    "EL",    "GA",   "SB",
-  "WILL", "WONT",  "DO",    "DONT", "IAC"
-};
-
-#define CURL_TELCMD_MINIMUM CURL_xEOF /* the first one */
-#define CURL_TELCMD_MAXIMUM CURL_IAC  /* surprise, 255 is the last one! ;-) */
-
-#define CURL_TELQUAL_IS   0
-#define CURL_TELQUAL_SEND 1
-#define CURL_TELQUAL_INFO 2
-#define CURL_TELQUAL_NAME 3
-
-#define CURL_TELCMD_OK(x) ( ((unsigned int)(x) >= CURL_TELCMD_MINIMUM) && \
-                       ((unsigned int)(x) <= CURL_TELCMD_MAXIMUM) )
-#define CURL_TELCMD(x)    telnetcmds[(x)-CURL_TELCMD_MINIMUM]
-
-#endif /* CURL_DISABLE_TELNET */
-
-#endif /* HEADER_CURL_ARPA_TELNET_H */
diff --git a/src/other/curl/lib/base64.c b/src/other/curl/lib/base64.c
deleted file mode 100644
index edccf54..0000000
--- a/src/other/curl/lib/base64.c
+++ /dev/null
@@ -1,247 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* Base64 encoding/decoding
- *
- * Test harnesses down the bottom - compile with -DTEST_ENCODE for
- * a program that will read in raw data from stdin and write out
- * a base64-encoded version to stdout, and the length returned by the
- * encoding function to stderr. Compile with -DTEST_DECODE for a program that
- * will go the other way.
- *
- * This code will break if int is smaller than 32 bits
- */
-
-#include "setup.h"
-
-#include <stdlib.h>
-#include <string.h>
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "urldata.h" /* for the SessionHandle definition */
-#include "easyif.h"  /* for Curl_convert_... prototypes */
-#include "warnless.h"
-#include "curl_base64.h"
-#include "curl_memory.h"
-
-/* include memdebug.h last */
-#include "memdebug.h"
-
-/* ---- Base64 Encoding/Decoding Table --- */
-static const char table64[]=
-  "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
-
-static void decodeQuantum(unsigned char *dest, const char *src)
-{
-  const char *s, *p;
-  unsigned long i, v, x = 0;
-
-  for(i = 0, s = src; i < 4; i++, s++) {
-    v = 0;
-    p = table64;
-    while(*p && (*p != *s)) {
-      v++;
-      p++;
-    }
-    if(*p == *s)
-      x = (x << 6) + v;
-    else if(*s == '=')
-      x = (x << 6);
-  }
-
-  dest[2] = curlx_ultouc(x);
-  x >>= 8;
-  dest[1] = curlx_ultouc(x);
-  x >>= 8;
-  dest[0] = curlx_ultouc(x);
-}
-
-/*
- * Curl_base64_decode()
- *
- * Given a base64 string at src, decode it and return an allocated memory in
- * the *outptr. Returns the length of the decoded data.
- */
-size_t Curl_base64_decode(const char *src, unsigned char **outptr)
-{
-  size_t length = 0;
-  size_t equalsTerm = 0;
-  size_t i;
-  size_t numQuantums;
-  unsigned char lastQuantum[3];
-  size_t rawlen = 0;
-  unsigned char *newstr;
-
-  *outptr = NULL;
-
-  while((src[length] != '=') && src[length])
-    length++;
-  /* A maximum of two = padding characters is allowed */
-  if(src[length] == '=') {
-    equalsTerm++;
-    if(src[length+equalsTerm] == '=')
-      equalsTerm++;
-  }
-  numQuantums = (length + equalsTerm) / 4;
-
-  /* Don't allocate a buffer if the decoded length is 0 */
-  if(numQuantums == 0)
-    return 0;
-
-  rawlen = (numQuantums * 3) - equalsTerm;
-
-  /* The buffer must be large enough to make room for the last quantum
-  (which may be partially thrown out) and the zero terminator. */
-  newstr = malloc(rawlen+4);
-  if(!newstr)
-    return 0;
-
-  *outptr = newstr;
-
-  /* Decode all but the last quantum (which may not decode to a
-  multiple of 3 bytes) */
-  for(i = 0; i < numQuantums - 1; i++) {
-    decodeQuantum(newstr, src);
-    newstr += 3; src += 4;
-  }
-
-  /* This final decode may actually read slightly past the end of the buffer
-  if the input string is missing pad bytes.  This will almost always be
-  harmless. */
-  decodeQuantum(lastQuantum, src);
-  for(i = 0; i < 3 - equalsTerm; i++)
-    newstr[i] = lastQuantum[i];
-
-  newstr[i] = '\0'; /* zero terminate */
-  return rawlen;
-}
-
-/*
- * Curl_base64_encode()
- *
- * Returns the length of the newly created base64 string. The third argument
- * is a pointer to an allocated area holding the base64 data. If something
- * went wrong, 0 is returned.
- *
- */
-size_t Curl_base64_encode(struct SessionHandle *data,
-                          const char *inputbuff, size_t insize,
-                          char **outptr)
-{
-  unsigned char ibuf[3];
-  unsigned char obuf[4];
-  int i;
-  int inputparts;
-  char *output;
-  char *base64data;
-#ifdef CURL_DOES_CONVERSIONS
-  char *convbuf = NULL;
-#endif
-
-  const char *indata = inputbuff;
-
-  *outptr = NULL; /* set to NULL in case of failure before we reach the end */
-
-  if(0 == insize)
-    insize = strlen(indata);
-
-  base64data = output = malloc(insize*4/3+4);
-  if(NULL == output)
-    return 0;
-
-#ifdef CURL_DOES_CONVERSIONS
-  /*
-   * The base64 data needs to be created using the network encoding
-   * not the host encoding.  And we can't change the actual input
-   * so we copy it to a buffer, translate it, and use that instead.
-   */
-  if(data) {
-    convbuf = malloc(insize);
-    if(!convbuf) {
-      free(output);
-      return 0;
-    }
-    memcpy(convbuf, indata, insize);
-    if(CURLE_OK != Curl_convert_to_network(data, convbuf, insize)) {
-      free(convbuf);
-      free(output);
-      return 0;
-    }
-    indata = convbuf; /* switch to the converted buffer */
-  }
-#else
-  (void)data;
-#endif
-
-  while(insize > 0) {
-    for (i = inputparts = 0; i < 3; i++) {
-      if(insize > 0) {
-        inputparts++;
-        ibuf[i] = (unsigned char) *indata;
-        indata++;
-        insize--;
-      }
-      else
-        ibuf[i] = 0;
-    }
-
-    obuf[0] = (unsigned char)  ((ibuf[0] & 0xFC) >> 2);
-    obuf[1] = (unsigned char) (((ibuf[0] & 0x03) << 4) | \
-                               ((ibuf[1] & 0xF0) >> 4));
-    obuf[2] = (unsigned char) (((ibuf[1] & 0x0F) << 2) | \
-                               ((ibuf[2] & 0xC0) >> 6));
-    obuf[3] = (unsigned char)   (ibuf[2] & 0x3F);
-
-    switch(inputparts) {
-    case 1: /* only one byte read */
-      snprintf(output, 5, "%c%c==",
-               table64[obuf[0]],
-               table64[obuf[1]]);
-      break;
-    case 2: /* two bytes read */
-      snprintf(output, 5, "%c%c%c=",
-               table64[obuf[0]],
-               table64[obuf[1]],
-               table64[obuf[2]]);
-      break;
-    default:
-      snprintf(output, 5, "%c%c%c%c",
-               table64[obuf[0]],
-               table64[obuf[1]],
-               table64[obuf[2]],
-               table64[obuf[3]] );
-      break;
-    }
-    output += 4;
-  }
-  *output=0;
-  *outptr = base64data; /* make it return the actual data memory */
-
-#ifdef CURL_DOES_CONVERSIONS
-  if(data)
-    free(convbuf);
-#endif
-  return strlen(base64data); /* return the length of the new data */
-}
-/* ---- End of Base64 Encoding ---- */
diff --git a/src/other/curl/lib/config-amigaos.h b/src/other/curl/lib/config-amigaos.h
deleted file mode 100644
index a9fd567..0000000
--- a/src/other/curl/lib/config-amigaos.h
+++ /dev/null
@@ -1,151 +0,0 @@
-#ifndef LIBCURL_CONFIG_AMIGAOS_H
-#define LIBCURL_CONFIG_AMIGAOS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#ifdef __AMIGA__ /* Any AmigaOS flavour */
-
-#define HAVE_ARPA_INET_H 1
-#define HAVE_CLOSESOCKET_CAMEL 1
-#define HAVE_GETHOSTBYADDR 1
-#define HAVE_INET_ADDR 1
-#define HAVE_INTTYPES_H 1
-#define HAVE_IOCTLSOCKET_CAMEL 1
-#define HAVE_IOCTLSOCKET_CAMEL_FIONBIO 1
-#define HAVE_LIBCRYPTO 1
-#define HAVE_LIBSSL 1
-#define HAVE_LIBZ 1
-#define HAVE_LONGLONG 1
-#define HAVE_MALLOC_H 1
-#define HAVE_MEMORY_H 1
-#define HAVE_NETDB_H 1
-#define HAVE_NETINET_IN_H 1
-#define HAVE_NET_IF_H 1
-#define HAVE_OPENSSL_CRYPTO_H 1
-#define HAVE_OPENSSL_ERR_H 1
-#define HAVE_OPENSSL_PEM_H 1
-#define HAVE_OPENSSL_RSA_H 1
-#define HAVE_OPENSSL_SSL_H 1
-#define HAVE_OPENSSL_X509_H 1
-#define HAVE_PERROR 1
-#define HAVE_PWD_H 1
-#define HAVE_RAND_EGD 1
-#define HAVE_RAND_STATUS 1
-#define HAVE_SELECT 1
-#define HAVE_SETJMP_H 1
-#define HAVE_SGTTY_H 1
-#define HAVE_SIGNAL 1
-#define HAVE_SIGNAL_H 1
-#define HAVE_SIG_ATOMIC_T 1
-#define HAVE_SOCKET 1
-#define HAVE_STRCASECMP 1
-#define HAVE_STRDUP 1
-#define HAVE_STRFTIME 1
-#define HAVE_STRICMP 1
-#define HAVE_STRINGS_H 1
-#define HAVE_STRING_H 1
-#define HAVE_STRSTR 1
-#define HAVE_STRUCT_TIMEVAL 1
-#define HAVE_SYS_PARAM_H 1
-#define HAVE_SYS_SOCKET_H 1
-#define HAVE_SYS_SOCKIO_H 1
-#define HAVE_SYS_STAT_H 1
-#define HAVE_SYS_TIME_H 1
-#define HAVE_SYS_TYPES_H 1
-#define HAVE_TERMIOS_H 1
-#define HAVE_TERMIO_H 1
-#define HAVE_TIME_H 1
-#define HAVE_UNAME 1
-#define HAVE_UNISTD_H 1
-#define HAVE_UTIME 1
-#define HAVE_UTIME_H 1
-#define HAVE_WRITABLE_ARGV 1
-#define HAVE_ZLIB_H 1
-#define HAVE_SYS_IOCTL_H 1
-
-#define NEED_MALLOC_H 1
-
-#define SIZEOF_INT 4
-#define SIZEOF_SHORT 2
-
-#define USE_OPENSSL 1
-#define USE_SSLEAY 1
-#define CURL_DISABLE_LDAP 1
-
-
-#define OS "AmigaOS"
-
-#define PACKAGE "curl"
-#define PACKAGE_BUGREPORT "curl-bug at haxx.se"
-#define PACKAGE_NAME "curl"
-#define PACKAGE_STRING "curl -"
-#define PACKAGE_TARNAME "curl"
-#define PACKAGE_VERSION "-"
-#define CURL_CA_BUNDLE "s:curl-ca-bundle.crt"
-
-#define RETSIGTYPE void
-#define SELECT_TYPE_ARG1 int
-#define SELECT_TYPE_ARG234 (fd_set *)
-#define SELECT_TYPE_ARG5 (struct timeval *)
-
-#define STDC_HEADERS 1
-#define TIME_WITH_SYS_TIME 1
-
-#define in_addr_t int
-
-#ifndef O_RDONLY
-# define O_RDONLY 0x0000
-#endif
-
-#define HAVE_GETNAMEINFO 1
-#define GETNAMEINFO_QUAL_ARG1 const
-#define GETNAMEINFO_TYPE_ARG1 struct sockaddr *
-#define GETNAMEINFO_TYPE_ARG2 int
-#define GETNAMEINFO_TYPE_ARG46 size_t
-#define GETNAMEINFO_TYPE_ARG7 int
-
-#define HAVE_RECV 1
-#define RECV_TYPE_ARG1 long
-#define RECV_TYPE_ARG2 char *
-#define RECV_TYPE_ARG3 long
-#define RECV_TYPE_ARG4 long
-#define RECV_TYPE_RETV long
-
-#define HAVE_RECVFROM 1
-#define RECVFROM_TYPE_ARG1 long
-#define RECVFROM_TYPE_ARG2 char
-#define RECVFROM_TYPE_ARG3 long
-#define RECVFROM_TYPE_ARG4 long
-#define RECVFROM_TYPE_ARG5 struct sockaddr
-#define RECVFROM_TYPE_ARG6 long
-#define RECVFROM_TYPE_RETV long
-
-#define HAVE_SEND 1
-#define SEND_TYPE_ARG1 int
-#define SEND_QUAL_ARG2 const
-#define SEND_TYPE_ARG2 char *
-#define SEND_TYPE_ARG3 int
-#define SEND_TYPE_ARG4 int
-#define SEND_TYPE_RETV int
-
-#endif /* __AMIGA__ */
-#endif /* LIBCURL_CONFIG_AMIGAOS_H */
diff --git a/src/other/curl/lib/config-mac.h b/src/other/curl/lib/config-mac.h
deleted file mode 100644
index 740f1d9..0000000
--- a/src/other/curl/lib/config-mac.h
+++ /dev/null
@@ -1,100 +0,0 @@
-#ifndef __LIB_CONFIG_MAC_H
-#define __LIB_CONFIG_MAC_H
-
-/* =================================================================== */
-/*   lib/config-mac.h - Hand crafted config file for Mac OS 9          */
-/* =================================================================== */
-/*  On Mac OS X you must run configure to generate curl_config.h file  */
-/* =================================================================== */
-
-#define OS "mac"
-
-#define HAVE_NETINET_IN_H       1
-#define HAVE_SYS_SOCKET_H       1
-#define HAVE_SYS_SELECT_H       1
-#define HAVE_NETDB_H            1
-#define HAVE_ARPA_INET_H        1
-#define HAVE_UNISTD_H           1
-#define HAVE_NET_IF_H           1
-#define HAVE_SYS_TYPES_H        1
-#define HAVE_GETTIMEOFDAY       1
-#define HAVE_FCNTL_H            1
-#define HAVE_SYS_STAT_H         1
-#define HAVE_ALLOCA_H           1
-#define HAVE_TIME_H             1
-#define HAVE_STDLIB_H           1
-#define HAVE_UTIME_H            1
-#define HAVE_SYS_TIME_H         1
-
-#define TIME_WITH_SYS_TIME      1
-
-#define HAVE_ALARM              1
-#define HAVE_STRDUP             1
-#define HAVE_UTIME              1
-#define HAVE_SETVBUF            1
-#define HAVE_STRFTIME           1
-#define HAVE_INET_ADDR          1
-#define HAVE_MEMCPY             1
-#define HAVE_SELECT             1
-#define HAVE_SOCKET             1
-#define HAVE_STRUCT_TIMEVAL     1
-
-//#define HAVE_STRICMP          1
-#define HAVE_SIGACTION          1
-#define HAVE_SIGNAL_H           1
-#define HAVE_SIG_ATOMIC_T       1
-
-#ifdef MACOS_SSL_SUPPORT
-#       define USE_SSLEAY       1
-#       define USE_OPENSSL      1
-#endif
-
-#define CURL_DISABLE_LDAP       1
-
-#define HAVE_RAND_STATUS        1
-#define HAVE_RAND_EGD           1
-
-#define HAVE_IOCTL              1
-#define HAVE_IOCTL_FIONBIO      1
-
-#define RETSIGTYPE void
-
-#define SIZEOF_INT              4
-#define SIZEOF_SHORT            2
-
-#define HAVE_GETNAMEINFO 1
-#define GETNAMEINFO_QUAL_ARG1 const
-#define GETNAMEINFO_TYPE_ARG1 struct sockaddr *
-#define GETNAMEINFO_TYPE_ARG2 socklen_t
-#define GETNAMEINFO_TYPE_ARG46 size_t
-#define GETNAMEINFO_TYPE_ARG7 int
-
-#define HAVE_RECV 1
-#define RECV_TYPE_ARG1 int
-#define RECV_TYPE_ARG2 void *
-#define RECV_TYPE_ARG3 size_t
-#define RECV_TYPE_ARG4 int
-#define RECV_TYPE_RETV ssize_t
-
-#define HAVE_RECVFROM 1
-#define RECVFROM_TYPE_ARG1 int
-#define RECVFROM_TYPE_ARG2 void
-#define RECVFROM_TYPE_ARG3 size_t
-#define RECVFROM_TYPE_ARG4 int
-#define RECVFROM_TYPE_ARG5 struct sockaddr
-#define RECVFROM_TYPE_ARG6 int
-#define RECVFROM_TYPE_RETV ssize_t
-#define RECVFROM_TYPE_ARG2_IS_VOID 1
-
-#define HAVE_SEND 1
-#define SEND_TYPE_ARG1 int
-#define SEND_QUAL_ARG2 const
-#define SEND_TYPE_ARG2 void *
-#define SEND_TYPE_ARG3 size_T
-#define SEND_TYPE_ARG4 int
-#define SEND_TYPE_RETV ssize_t
-
-#define HAVE_EXTRA_STRICMP_H 1
-#define HAVE_EXTRA_STRDUP_H  1
-
-#endif /* __LIB_CONFIG_MAC_H */
diff --git a/src/other/curl/lib/config-os400.h b/src/other/curl/lib/config-os400.h
deleted file mode 100644
index dad4d0c..0000000
--- a/src/other/curl/lib/config-os400.h
+++ /dev/null
@@ -1,517 +0,0 @@
-/* ================================================================ */
-/*    lib/config-os400.h - Hand crafted config file for OS/400      */
-/* ================================================================ */
-
-#pragma enum(int)
-
-#undef PACKAGE
-
-/* Version number of this archive. */
-#undef VERSION
-
-/* Define if you have the getpass function.  */
-#undef HAVE_GETPASS
-
-/* Define cpu-machine-OS */
-#define OS "OS/400"
-
-/* Define if you have the gethostbyaddr_r() function with 5 arguments */
-#define HAVE_GETHOSTBYADDR_R_5
-
-/* Define if you have the gethostbyaddr_r() function with 7 arguments */
-#undef HAVE_GETHOSTBYADDR_R_7
-
-/* Define if you have the gethostbyaddr_r() function with 8 arguments */
-#undef HAVE_GETHOSTBYADDR_R_8
-
-/* OS400 supports a 3-argument ASCII version of gethostbyaddr_r(), but its
- *  prototype is incompatible with the "standard" one (1st argument is not
- *  const). However, getaddrinfo() is supported (ASCII version defined as
- *  a local wrapper in setup-os400.h) in a threadsafe way: we can then
- *  configure getaddrinfo() as such and get rid of gethostbyname_r() without
- *  loss of threadsafeness. */
-#undef HAVE_GETHOSTBYNAME_R
-#undef HAVE_GETHOSTBYNAME_R_3
-#undef HAVE_GETHOSTBYNAME_R_5
-#undef HAVE_GETHOSTBYNAME_R_6
-#define HAVE_GETADDRINFO
-#define HAVE_GETADDRINFO_THREADSAFE
-
-/* Define if you need the _REENTRANT define for some functions */
-#undef NEED_REENTRANT
-
-/* Define if you have the Kerberos4 libraries (including -ldes) */
-#undef HAVE_KRB4
-
-/* Define if you want to enable IPv6 support */
-#define ENABLE_IPV6
-
-/* Define if struct sockaddr_in6 has the sin6_scope_id member */
-#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
-
-/* Define this to 'int' if ssize_t is not an available typedefed type */
-#undef ssize_t
-
-/* Define this as a suitable file to read random data from */
-#undef RANDOM_FILE
-
-/* Define this to your Entropy Gathering Daemon socket pathname */
-#undef EGD_SOCKET
-
-/* Define to 1 if you have the alarm function. */
-#define HAVE_ALARM 1
-
-/* Define if you have the <alloca.h> header file. */
-#undef HAVE_ALLOCA_H
-
-/* Define if you have the <arpa/inet.h> header file. */
-#define HAVE_ARPA_INET_H
-
-/* Define if you have the `closesocket' function. */
-#undef HAVE_CLOSESOCKET
-
-/* Define if you have the <crypto.h> header file. */
-#undef HAVE_CRYPTO_H
-
-/* Define if you have the <des.h> header file. */
-#undef HAVE_DES_H
-
-/* Define if you have the <err.h> header file. */
-#undef HAVE_ERR_H
-
-/* Define if you have the <fcntl.h> header file. */
-#define HAVE_FCNTL_H
-
-/* Define if you have the `geteuid' function. */
-#define HAVE_GETEUID
-
-/* Define if you have the `gethostbyaddr' function. */
-#define HAVE_GETHOSTBYADDR
-
-/* Define if you have the `gethostbyaddr_r' function. */
-#define HAVE_GETHOSTBYADDR_R
-
-/* Define if you have the `gethostname' function. */
-#define HAVE_GETHOSTNAME
-
-/* Define if you have the <getopt.h> header file. */
-#undef HAVE_GETOPT_H
-
-/* Define if you have the `getpass_r' function. */
-#undef HAVE_GETPASS_R
-
-/* Define if you have the `getpwuid' function. */
-#define HAVE_GETPWUID
-
-/* Define if you have the `getservbyname' function. */
-#define HAVE_GETSERVBYNAME
-
-/* Define if you have the `gettimeofday' function. */
-#define HAVE_GETTIMEOFDAY
-
-/* Define if you have the `timeval' struct. */
-#define HAVE_STRUCT_TIMEVAL
-
-/* Define if you have the `inet_addr' function. */
-#define HAVE_INET_ADDR
-
-/* Define if you have the <inttypes.h> header file. */
-#define HAVE_INTTYPES_H
-
-/* Define if you have the <io.h> header file. */
-#undef HAVE_IO_H
-
-/* Define if you have the `krb_get_our_ip_for_realm' function. */
-#undef HAVE_KRB_GET_OUR_IP_FOR_REALM
-
-/* Define if you have the <krb.h> header file. */
-#undef HAVE_KRB_H
-
-/* Define if you have the `crypto' library (-lcrypto). */
-#undef HAVE_LIBCRYPTO
-
-/* Define if you have the `nsl' library (-lnsl). */
-#undef HAVE_LIBNSL
-
-/* Define if you have the `resolv' library (-lresolv). */
-#undef HAVE_LIBRESOLV
-
-/* Define if you have the `resolve' library (-lresolve). */
-#undef HAVE_LIBRESOLVE
-
-/* Define if you have the `socket' library (-lsocket). */
-#undef HAVE_LIBSOCKET
-
-/* Define if you have the `ssl' library (-lssl). */
-#undef HAVE_LIBSSL
-
-/* Define if you have GSS API. */
-#define HAVE_GSSAPI
-
-/* Define if you have the `ucb' library (-lucb). */
-#undef HAVE_LIBUCB
-
-/* Define if you have the `localtime_r' function. */
-#define HAVE_LOCALTIME_R
-
-/* Define if you have the <malloc.h> header file. */
-#define HAVE_MALLOC_H
-
-/* Define if you need the malloc.h header file even with stdlib.h  */
-/* #define NEED_MALLOC_H 1 */
-
-/* Define if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H
-
-/* Define if you have the <netdb.h> header file. */
-#define HAVE_NETDB_H
-
-/* Define if you have the <netinet/if_ether.h> header file. */
-#undef HAVE_NETINET_IF_ETHER_H
-
-/* Define if you have the <netinet/in.h> header file. */
-#define HAVE_NETINET_IN_H
-
-/* Define if you have the <net/if.h> header file. */
-#define HAVE_NET_IF_H
-
-/* Define if you have the <openssl/crypto.h> header file. */
-#undef HAVE_OPENSSL_CRYPTO_H
-
-/* Define if you have the <openssl/err.h> header file. */
-#undef HAVE_OPENSSL_ERR_H
-
-/* Define if you have the <openssl/pem.h> header file. */
-#undef HAVE_OPENSSL_PEM_H
-
-/* Define if you have the <openssl/rsa.h> header file. */
-#undef HAVE_OPENSSL_RSA_H
-
-/* Define if you have the <openssl/ssl.h> header file. */
-#undef HAVE_OPENSSL_SSL_H
-
-/* Define if you have the <openssl/x509.h> header file. */
-#undef HAVE_OPENSSL_X509_H
-
-/* Define if you have the <pem.h> header file. */
-#undef HAVE_PEM_H
-
-/* Define if you have the `perror' function. */
-#define HAVE_PERROR
-
-/* Define if you have the <pwd.h> header file. */
-#define HAVE_PWD_H
-
-/* Define if you have the `RAND_egd' function. */
-#undef HAVE_RAND_EGD
-
-/* Define if you have the `RAND_screen' function. */
-#undef HAVE_RAND_SCREEN
-
-/* Define if you have the `RAND_status' function. */
-#undef HAVE_RAND_STATUS
-
-/* Define if you have the <rsa.h> header file. */
-#undef HAVE_RSA_H
-
-/* Define if you have the `select' function. */
-#define HAVE_SELECT
-
-/* Define if you have the `setvbuf' function. */
-#define HAVE_SETVBUF
-
-/* Define if you have the <sgtty.h> header file. */
-#undef HAVE_SGTTY_H
-
-/* Define if you have the `sigaction' function. */
-#define HAVE_SIGACTION
-
-/* Define if you have the `signal' function. */
-#undef HAVE_SIGNAL
-
-/* Define if you have the <signal.h> header file. */
-#define HAVE_SIGNAL_H
-
-/* Define if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T
-
-/* Define if sig_atomic_t is already defined as volatile. */
-#undef HAVE_SIG_ATOMIC_T_VOLATILE
-
-/* Define if you have the `socket' function. */
-#define HAVE_SOCKET
-
-/* Define if you have the <ssl.h> header file. */
-#undef HAVE_SSL_H
-
-/* Define if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H
-
-/* Define if you have the <stdlib.h> header file. */
-#define HAVE_STDLIB_H
-
-/* Define if you have the `strcasecmp' function. */
-#undef HAVE_STRCASECMP
-
-/* Define if you have the `strcmpi' function. */
-#undef HAVE_STRCMPI
-
-/* Define if you have the `strdup' function. */
-#undef HAVE_STRDUP
-
-/* Define if you have the `strftime' function. */
-#define HAVE_STRFTIME
-
-/* Define if you have the `stricmp' function. */
-#undef HAVE_STRICMP
-
-/* Define if you have the <strings.h> header file. */
-#define HAVE_STRINGS_H
-
-/* Define if you have the <string.h> header file. */
-#define HAVE_STRING_H
-
-/* Define if you have the `strlcat' function. */
-#undef HAVE_STRLCAT
-
-/* Define if you have the `strlcpy' function. */
-#undef HAVE_STRLCPY
-
-/* Define if you have the <stropts.h> header file. */
-#undef HAVE_STROPTS_H
-
-/* Define if you have the `strstr' function. */
-#define HAVE_STRSTR
-
-/* Define if you have the `strtok_r' function. */
-#define HAVE_STRTOK_R
-
-/* Define if you have the `strtoll' function. */
-#undef HAVE_STRTOLL             /* Allows ASCII compile on V5R1. */
-
-/* Define if you have the <sys/param.h> header file. */
-#define HAVE_SYS_PARAM_H
-
-/* Define if you have the <sys/select.h> header file. */
-#undef HAVE_SYS_SELECT_H
-
-/* Define if you have the <sys/socket.h> header file. */
-#define HAVE_SYS_SOCKET_H
-
-/* Define if you have the <sys/sockio.h> header file. */
-#undef HAVE_SYS_SOCKIO_H
-
-/* Define if you have the <sys/stat.h> header file. */
-#define HAVE_SYS_STAT_H
-
-/* Define if you have the <sys/time.h> header file. */
-#define HAVE_SYS_TIME_H
-
-/* Define if you have the <sys/types.h> header file. */
-#define HAVE_SYS_TYPES_H
-
-/* Define if you have the <sys/un.h> header file. */
-#define HAVE_SYS_UN_H
-
-/* Define if you have the <sys/ioctl.h> header file. */
-#define HAVE_SYS_IOCTL_H
-
-/* Define if you have the `tcgetattr' function. */
-#undef HAVE_TCGETATTR
-
-/* Define if you have the `tcsetattr' function. */
-#undef HAVE_TCSETATTR
-
-/* Define if you have the <termios.h> header file. */
-#undef HAVE_TERMIOS_H
-
-/* Define if you have the <termio.h> header file. */
-#undef HAVE_TERMIO_H
-
-/* Define if you have the <time.h> header file. */
-#define HAVE_TIME_H
-
-/* Define if you have the `uname' function. */
-#undef HAVE_UNAME
-
-/* Define if you have the <unistd.h> header file. */
-#define HAVE_UNISTD_H
-
-/* Define if you have the <winsock.h> header file. */
-#undef HAVE_WINSOCK_H
-
-/* Define if you have the <x509.h> header file. */
-#undef HAVE_X509_H
-
-/* Name of package */
-#undef PACKAGE
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#define RETSIGTYPE void
-
-/* The size of `int', as computed by sizeof. */
-#define SIZEOF_INT              4
-
-/* The size of a `long double', as computed by sizeof. */
-#define SIZEOF_LONG_DOUBLE      8
-
-/* Define if the compiler supports the 'long long' data type. */
-#define HAVE_LONGLONG
-
-/* The size of a `long long', as computed by sizeof. */
-#define SIZEOF_LONG_LONG        8
-
-/* The size of `short', as computed by sizeof. */
-#define SIZEOF_SHORT            2
-
-/* Whether long long constants must be suffixed by LL. */
-
-#define HAVE_LL
-
-/* Define this if you have struct sockaddr_storage */
-#define HAVE_STRUCT_SOCKADDR_STORAGE
-
-/* Define if you have the ANSI C header files. */
-#define STDC_HEADERS
-
-/* Define if you can safely include both <sys/time.h> and <time.h>. */
-#define TIME_WITH_SYS_TIME
-
-/* Version number of package */
-#undef VERSION
-
-/* Number of bits in a file offset, on hosts where this is settable. */
-#undef _FILE_OFFSET_BITS
-
-/* Define for large files, on AIX-style hosts. */
-#define _LARGE_FILES
-
-/* Define to empty if `const' does not conform to ANSI C. */
-#undef const
-
-/* type to use in place of in_addr_t if not defined */
-#define in_addr_t       unsigned long
-
-/* Define to `unsigned' if <sys/types.h> does not define. */
-#undef size_t
-
-/* Define if you have the ioctl function. */
-#define HAVE_IOCTL
-
-/* Define if you have a working ioctl FIONBIO function. */
-#define HAVE_IOCTL_FIONBIO
-
-/* Define if you have a working ioctl SIOCGIFADDR function. */
-#define HAVE_IOCTL_SIOCGIFADDR
-
-/* To disable LDAP */
-#undef CURL_DISABLE_LDAP
-
-/* To avoid external use of library hidden symbols */
-#define CURL_HIDDEN_SYMBOLS
-
-/* External symbols need no special keyword. */
-#define CURL_EXTERN_SYMBOL
-
-/* Define if you have the ldap_url_parse procedure. */
-/* #define HAVE_LDAP_URL_PARSE */    /* Disabled because of an IBM bug. */
-
-/* Define if you have the getnameinfo function. */
-/* OS400 has no ASCII version of this procedure: wrapped in setup-os400.h. */
-#define HAVE_GETNAMEINFO
-
-/* Define to the type qualifier of arg 1 for getnameinfo. */
-#define GETNAMEINFO_QUAL_ARG1 const
-
-/* Define to the type of arg 1 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG1 struct sockaddr *
-
-/* Define to the type of arg 2 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG2 socklen_t
-
-/* Define to the type of args 4 and 6 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG46 socklen_t
-
-/* Define to the type of arg 7 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG7 int
-
-/* Define if you have the recv function. */
-#define HAVE_RECV
-
-/* Define to the type of arg 1 for recv. */
-#define RECV_TYPE_ARG1 int
-
-/* Define to the type of arg 2 for recv. */
-#define RECV_TYPE_ARG2 char *
-
-/* Define to the type of arg 3 for recv. */
-#define RECV_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for recv. */
-#define RECV_TYPE_ARG4 int
-
-/* Define to the function return type for recv. */
-#define RECV_TYPE_RETV int
-
-/* Define if you have the recvfrom function. */
-#define HAVE_RECVFROM
-
-/* Define to the type of arg 1 for recvfrom. */
-#define RECVFROM_TYPE_ARG1 int
-
-/* Define to the type pointed by arg 2 for recvfrom. */
-#define RECVFROM_TYPE_ARG2 char
-
-/* Define to the type of arg 3 for recvfrom. */
-#define RECVFROM_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for recvfrom. */
-#define RECVFROM_TYPE_ARG4 int
-
-/* Define to the type pointed by arg 5 for recvfrom. */
-#define RECVFROM_TYPE_ARG5 struct sockaddr
-
-/* Define to the type pointed by arg 6 for recvfrom. */
-#define RECVFROM_TYPE_ARG6 int
-
-/* Define to the function return type for recvfrom. */
-#define RECVFROM_TYPE_RETV int
-
-/* Define if you have the send function. */
-#define HAVE_SEND
-
-/* Define to the type of arg 1 for send. */
-#define SEND_TYPE_ARG1 int
-
-/* Define to the type qualifier of arg 2 for send. */
-#define SEND_QUAL_ARG2
-
-/* Define to the type of arg 2 for send. */
-#define SEND_TYPE_ARG2 char *
-
-/* Define to the type of arg 3 for send. */
-#define SEND_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for send. */
-#define SEND_TYPE_ARG4 int
-
-/* Define to the function return type for send. */
-#define SEND_TYPE_RETV int
-
-/* Define to use the QsoSSL package. */
-#define USE_QSOSSL
-
-/* Use the system keyring as the default CA bundle. */
-#define CURL_CA_BUNDLE  "/QIBM/UserData/ICSS/Cert/Server/DEFAULT.KDB"
-
-/* ---------------------------------------------------------------- */
-/*                       ADDITIONAL DEFINITIONS                     */
-/* ---------------------------------------------------------------- */
-
-/* The following must be defined BEFORE system header files inclusion. */
-
-#define __ptr128                       /* No teraspace. */
-#define qadrt_use_fputc_inline         /* Generate fputc() wrapper inline. */
-#define qadrt_use_fread_inline         /* Generate fread() wrapper inline. */
-#define qadrt_use_fwrite_inline        /* Generate fwrite() wrapper inline. */
-
diff --git a/src/other/curl/lib/config-riscos.h b/src/other/curl/lib/config-riscos.h
deleted file mode 100644
index 98bb788..0000000
--- a/src/other/curl/lib/config-riscos.h
+++ /dev/null
@@ -1,475 +0,0 @@
-/* curl_config.h.in.  Generated automatically from configure.in by autoheader.  */
-/* Name of this package! */
-#undef PACKAGE
-
-/* Version number of this archive. */
-#undef VERSION
-
-/* Define if you have the getpass function.  */
-#undef HAVE_GETPASS
-
-/* Define cpu-machine-OS */
-#define OS "ARM-RISC OS"
-
-/* Define if you have the gethostbyaddr_r() function with 5 arguments */
-#undef HAVE_GETHOSTBYADDR_R_5
-
-/* Define if you have the gethostbyaddr_r() function with 7 arguments */
-#undef HAVE_GETHOSTBYADDR_R_7
-
-/* Define if you have the gethostbyaddr_r() function with 8 arguments */
-#undef HAVE_GETHOSTBYADDR_R_8
-
-/* Define if you have the gethostbyname_r() function with 3 arguments */
-#undef HAVE_GETHOSTBYNAME_R_3
-
-/* Define if you have the gethostbyname_r() function with 5 arguments */
-#undef HAVE_GETHOSTBYNAME_R_5
-
-/* Define if you have the gethostbyname_r() function with 6 arguments */
-#undef HAVE_GETHOSTBYNAME_R_6
-
-/* Define if you need the _REENTRANT define for some functions */
-#undef NEED_REENTRANT
-
-/* Define if you have the Kerberos4 libraries (including -ldes) */
-#undef HAVE_KRB4
-
-/* Define if you want to enable IPv6 support */
-#undef ENABLE_IPV6
-
-/* Define if struct sockaddr_in6 has the sin6_scope_id member */
-#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
-
-/* Define this to 'int' if ssize_t is not an available typedefed type */
-#undef ssize_t
-
-/* Define this as a suitable file to read random data from */
-#undef RANDOM_FILE
-
-/* Define this to your Entropy Gathering Daemon socket pathname */
-#undef EGD_SOCKET
-
-/* Define if you want to enable IPv6 support */
-#undef ENABLE_IPV6
-
-/* Define to 1 if you have the alarm function. */
-#define HAVE_ALARM 1
-
-/* Define if you have the <alloca.h> header file. */
-#define HAVE_ALLOCA_H
-
-/* Define if you have the <arpa/inet.h> header file. */
-#define HAVE_ARPA_INET_H
-
-/* Define if you have the `closesocket' function. */
-#undef HAVE_CLOSESOCKET
-
-/* Define if you have the <crypto.h> header file. */
-#undef HAVE_CRYPTO_H
-
-/* Define if you have the <des.h> header file. */
-#undef HAVE_DES_H
-
-/* Define if you have the <err.h> header file. */
-#undef HAVE_ERR_H
-
-/* Define if you have the <fcntl.h> header file. */
-#define HAVE_FCNTL_H
-
-/* Define if getaddrinfo exists and works */
-#define HAVE_GETADDRINFO
-
-/* Define if you have the `geteuid' function. */
-#undef HAVE_GETEUID
-
-/* Define if you have the `gethostbyaddr' function. */
-#define HAVE_GETHOSTBYADDR
-
-/* Define if you have the `gethostbyaddr_r' function. */
-#undef HAVE_GETHOSTBYADDR_R
-
-/* Define if you have the `gethostbyname_r' function. */
-#undef HAVE_GETHOSTBYNAME_R
-
-/* Define if you have the `gethostname' function. */
-#define HAVE_GETHOSTNAME
-
-/* Define if you have the <getopt.h> header file. */
-#define HAVE_GETOPT_H
-
-/* Define if you have the `getpass_r' function. */
-#undef HAVE_GETPASS_R
-
-/* Define if you have the `getpwuid' function. */
-#undef HAVE_GETPWUID
-
-/* Define if you have the `getservbyname' function. */
-#undef HAVE_GETSERVBYNAME
-
-/* Define if you have the `gettimeofday' function. */
-#define HAVE_GETTIMEOFDAY
-
-/* Define if you have the `timeval' struct. */
-#define HAVE_STRUCT_TIMEVAL
-
-/* Define if you have the `inet_addr' function. */
-#undef HAVE_INET_ADDR
-
-/* Define if you have the <inttypes.h> header file. */
-#define HAVE_INTTYPES_H
-
-/* Define if you have the <io.h> header file. */
-#define HAVE_IO_H
-
-/* Define if you have the `krb_get_our_ip_for_realm' function. */
-#undef HAVE_KRB_GET_OUR_IP_FOR_REALM
-
-/* Define if you have the <krb.h> header file. */
-#undef HAVE_KRB_H
-
-/* Define if you have the `crypto' library (-lcrypto). */
-#undef HAVE_LIBCRYPTO
-
-/* Define if you have the `nsl' library (-lnsl). */
-#undef HAVE_LIBNSL
-
-/* Define if you have the `resolv' library (-lresolv). */
-#undef HAVE_LIBRESOLV
-
-/* Define if you have the `resolve' library (-lresolve). */
-#undef HAVE_LIBRESOLVE
-
-/* Define if you have the `socket' library (-lsocket). */
-#undef HAVE_LIBSOCKET
-
-/* Define if you have the `ssl' library (-lssl). */
-#undef HAVE_LIBSSL
-
-/* Define if you have the `ucb' library (-lucb). */
-#undef HAVE_LIBUCB
-
-/* Define if you have the `localtime_r' function. */
-#undef HAVE_LOCALTIME_R
-
-/* Define if you have the <malloc.h> header file. */
-#define HAVE_MALLOC_H
-
-/* Define if you need the malloc.h header file even with stdlib.h  */
-/* #define NEED_MALLOC_H 1 */
-
-/* Define if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H
-
-/* Define if you have the <netdb.h> header file. */
-#define HAVE_NETDB_H
-
-/* Define if you have the <netinet/if_ether.h> header file. */
-#undef HAVE_NETINET_IF_ETHER_H
-
-/* Define if you have the <netinet/in.h> header file. */
-#define HAVE_NETINET_IN_H
-
-/* Define if you have the <net/if.h> header file. */
-#define HAVE_NET_IF_H
-
-/* Define if you have the <openssl/crypto.h> header file. */
-#undef HAVE_OPENSSL_CRYPTO_H
-
-/* Define if you have the <openssl/err.h> header file. */
-#undef HAVE_OPENSSL_ERR_H
-
-/* Define if you have the <openssl/pem.h> header file. */
-#undef HAVE_OPENSSL_PEM_H
-
-/* Define if you have the <openssl/rsa.h> header file. */
-#undef HAVE_OPENSSL_RSA_H
-
-/* Define if you have the <openssl/ssl.h> header file. */
-#undef HAVE_OPENSSL_SSL_H
-
-/* Define if you have the <openssl/x509.h> header file. */
-#undef HAVE_OPENSSL_X509_H
-
-/* Define if you have the <pem.h> header file. */
-#undef HAVE_PEM_H
-
-/* Define if you have the `perror' function. */
-#undef HAVE_PERROR
-
-/* Define if you have the <pwd.h> header file. */
-#undef HAVE_PWD_H
-
-/* Define if you have the `RAND_egd' function. */
-#undef HAVE_RAND_EGD
-
-/* Define if you have the `RAND_screen' function. */
-#undef HAVE_RAND_SCREEN
-
-/* Define if you have the `RAND_status' function. */
-#undef HAVE_RAND_STATUS
-
-/* Define if you have the <rsa.h> header file. */
-#undef HAVE_RSA_H
-
-/* Define if you have the `select' function. */
-#define HAVE_SELECT
-
-/* Define if you have the `setvbuf' function. */
-#undef HAVE_SETVBUF
-
-/* Define if you have the <sgtty.h> header file. */
-#define HAVE_SGTTY_H
-
-/* Define if you have the `sigaction' function. */
-#undef HAVE_SIGACTION
-
-/* Define if you have the `signal' function. */
-#define HAVE_SIGNAL
-
-/* Define if you have the <signal.h> header file. */
-#define HAVE_SIGNAL_H
-
-/* Define if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T
-
-/* Define if sig_atomic_t is already defined as volatile. */
-#undef HAVE_SIG_ATOMIC_T_VOLATILE
-
-/* Define if you have the `socket' function. */
-#define HAVE_SOCKET
-
-/* Define if you have the <ssl.h> header file. */
-#undef HAVE_SSL_H
-
-/* Define if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H
-
-/* Define if you have the <stdlib.h> header file. */
-#define HAVE_STDLIB_H
-
-/* Define if you have the `strcasecmp' function. */
-#undef HAVE_STRCASECMP
-
-/* Define if you have the `strcmpi' function. */
-#undef HAVE_STRCMPI
-
-/* Define if you have the `strdup' function. */
-#define HAVE_STRDUP
-
-/* Define if you have the `strftime' function. */
-#define HAVE_STRFTIME
-
-/* Define if you have the `stricmp' function. */
-#define HAVE_STRICMP
-
-/* Define if you have the <strings.h> header file. */
-#undef HAVE_STRINGS_H
-
-/* Define if you have the <string.h> header file. */
-#define HAVE_STRING_H
-
-/* Define if you have the `strlcat' function. */
-#undef HAVE_STRLCAT
-
-/* Define if you have the `strlcpy' function. */
-#undef HAVE_STRLCPY
-
-/* Define if you have the `strstr' function. */
-#define HAVE_STRSTR
-
-/* Define if you have the `strtok_r' function. */
-#undef HAVE_STRTOK_R
-
-/* Define if you have the `strtoll' function. */
-#undef HAVE_STRTOLL
-
-/* Define if you have the <sys/param.h> header file. */
-#undef HAVE_SYS_PARAM_H
-
-/* Define if you have the <sys/select.h> header file. */
-#undef HAVE_SYS_SELECT_H
-
-/* Define if you have the <sys/socket.h> header file. */
-#define HAVE_SYS_SOCKET_H
-
-/* Define if you have the <sys/sockio.h> header file. */
-#undef HAVE_SYS_SOCKIO_H
-
-/* Define if you have the <sys/stat.h> header file. */
-#undef HAVE_SYS_STAT_H
-
-/* Define if you have the <sys/time.h> header file. */
-#define HAVE_SYS_TIME_H
-
-/* Define if you have the <sys/types.h> header file. */
-#define HAVE_SYS_TYPES_H
-
-/* Define if you have the `tcgetattr' function. */
-#define HAVE_TCGETATTR
-
-/* Define if you have the `tcsetattr' function. */
-#define HAVE_TCSETATTR
-
-/* Define if you have the <termios.h> header file. */
-#define HAVE_TERMIOS_H
-
-/* Define if you have the <termio.h> header file. */
-#undef HAVE_TERMIO_H
-
-/* Define if you have the <time.h> header file. */
-#undef HAVE_TIME_H
-
-/* Define if you have the `uname' function. */
-#define HAVE_UNAME
-
-/* Define if you have the <unistd.h> header file. */
-#define HAVE_UNISTD_H
-
-/* Define if you have the <winsock.h> header file. */
-#undef HAVE_WINSOCK_H
-
-/* Define if you have the <x509.h> header file. */
-#undef HAVE_X509_H
-
-/* Name of package */
-#undef PACKAGE
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#define RETSIGTYPE void
-
-/* The size of `int', as computed by sizeof. */
-#define SIZEOF_INT 4
-
-/* The size of `long double', as computed by sizeof. */
-#undef SIZEOF_LONG_DOUBLE
-
-/* The size of `long long', as computed by sizeof. */
-#undef SIZEOF_LONG_LONG
-
-/* The size of `short', as computed by sizeof. */
-#define SIZEOF_SHORT 2
-
-/* Define if you have the ANSI C header files. */
-#undef STDC_HEADERS
-
-/* Define if you can safely include both <sys/time.h> and <time.h>. */
-#undef TIME_WITH_SYS_TIME
-
-/* Version number of package */
-#undef VERSION
-
-/* Define if on AIX 3.
-   System headers sometimes define this.
-   We just want to avoid a redefinition error message.  */
-#ifndef _ALL_SOURCE
-# undef _ALL_SOURCE
-#endif
-
-/* Number of bits in a file offset, on hosts where this is settable. */
-#undef _FILE_OFFSET_BITS
-
-/* Define for large files, on AIX-style hosts. */
-#undef _LARGE_FILES
-
-/* Define to empty if `const' does not conform to ANSI C. */
-#undef const
-
-/* Define to `unsigned' if <sys/types.h> does not define. */
-#undef size_t
-
-/* Define to `int' if <sys/types.h> does not define. */
-#undef ssize_t
-
-/* Define if you have the ioctl function. */
-#define HAVE_IOCTL
-
-/* Define if you have a working ioctl FIONBIO function. */
-#define HAVE_IOCTL_FIONBIO
-
-/* to disable LDAP */
-#define CURL_DISABLE_LDAP
-
-/* Define if you have the getnameinfo function. */
-#define HAVE_GETNAMEINFO 1
-
-/* Define to the type qualifier of arg 1 for getnameinfo. */
-#define GETNAMEINFO_QUAL_ARG1 const
-
-/* Define to the type of arg 1 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG1 struct sockaddr *
-
-/* Define to the type of arg 2 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG2 socklen_t
-
-/* Define to the type of args 4 and 6 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG46 size_t
-
-/* Define to the type of arg 7 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG7 int
-
-/* Define if you have the recv function. */
-#define HAVE_RECV 1
-
-/* Define to the type of arg 1 for recv. */
-#define RECV_TYPE_ARG1 int
-
-/* Define to the type of arg 2 for recv. */
-#define RECV_TYPE_ARG2 void *
-
-/* Define to the type of arg 3 for recv. */
-#define RECV_TYPE_ARG3 size_t
-
-/* Define to the type of arg 4 for recv. */
-#define RECV_TYPE_ARG4 int
-
-/* Define to the function return type for recv. */
-#define RECV_TYPE_RETV ssize_t
-
-/* Define 1 if you have the recvfrom function. */
-#define HAVE_RECVFROM 1
-
-/* Define to the type of arg 1 for recvfrom. */
-#define RECVFROM_TYPE_ARG1 int
-
-/* Define to the type pointed by arg 2 for recvfrom. */
-#define RECVFROM_TYPE_ARG2 void
-
-/* Define to 1 if the type pointed by arg 2 for recvfrom is void. */
-#define RECVFROM_TYPE_ARG2_IS_VOID 1
-
-/* Define to the type of arg 3 for recvfrom. */
-#define RECVFROM_TYPE_ARG3 size_t
-
-/* Define to the type of arg 4 for recvfrom. */
-#define RECVFROM_TYPE_ARG4 int
-
-/* Define to the type pointed by arg 5 for recvfrom. */
-#define RECVFROM_TYPE_ARG5 struct sockaddr
-
-/* Define to the type pointed by arg 6 for recvfrom. */
-#define RECVFROM_TYPE_ARG6 int
-
-/* Define to the function return type for recvfrom. */
-#define RECVFROM_TYPE_RETV ssize_t
-
-/* Define if you have the send function. */
-#define HAVE_SEND 1
-
-/* Define to the type of arg 1 for send. */
-#define SEND_TYPE_ARG1 int
-
-/* Define to the type qualifier of arg 2 for send. */
-#define SEND_QUAL_ARG2 const
-
-/* Define to the type of arg 2 for send. */
-#define SEND_TYPE_ARG2 void *
-
-/* Define to the type of arg 3 for send. */
-#define SEND_TYPE_ARG3 size_t
-
-/* Define to the type of arg 4 for send. */
-#define SEND_TYPE_ARG4 int
-
-/* Define to the function return type for send. */
-#define SEND_TYPE_RETV ssize_t
diff --git a/src/other/curl/lib/config-symbian.h b/src/other/curl/lib/config-symbian.h
deleted file mode 100644
index f5589fe..0000000
--- a/src/other/curl/lib/config-symbian.h
+++ /dev/null
@@ -1,814 +0,0 @@
-/* config-symbian.h.  Manually generated.  */
-
-/* when building libcurl itself */
-/* #undef BUILDING_LIBCURL */
-
-/* Location of default ca bundle */
-/* #define CURL_CA_BUNDLE "/etc/pki/tls/certs/ca-bundle.crt"*/
-
-/* Location of default ca path */
-/* #undef CURL_CA_PATH */
-
-/* to disable cookies support */
-/* #undef CURL_DISABLE_COOKIES */
-
-/* to disable cryptographic authentication */
-/* #undef CURL_DISABLE_CRYPTO_AUTH */
-
-/* to disable DICT */
-/* #undef CURL_DISABLE_DICT */
-
-/* to disable FILE */
-/* #undef CURL_DISABLE_FILE */
-
-/* to disable FTP */
-/* #undef CURL_DISABLE_FTP */
-
-/* to disable HTTP */
-/* #undef CURL_DISABLE_HTTP */
-
-/* to disable LDAP */
-#define CURL_DISABLE_LDAP 1
-
-/* to disable LDAPS */
-#define CURL_DISABLE_LDAPS 1
-
-/* to disable TELNET */
-/* #undef CURL_DISABLE_TELNET */
-
-/* to disable TFTP */
-/* #undef CURL_DISABLE_TFTP */
-
-/* to disable verbose strings */
-/* #define CURL_DISABLE_VERBOSE_STRINGS 1*/
-
-/* to make a symbol visible */
-/*#define CURL_EXTERN_SYMBOL  __declspec(dllexport)*/
-
-/* to enable hidden symbols */
-/*#define CURL_HIDDEN_SYMBOLS 1*/
-
-/* W$ LDAP with non-W$ compiler */
-/* #undef CURL_LDAP_HYBRID */
-
-/* Use W$ LDAP implementation */
-/* #undef CURL_LDAP_WIN */
-
-/* when not building a shared library */
-/* #undef CURL_STATICLIB */
-
-/* your Entropy Gathering Daemon socket pathname */
-/* #undef EGD_SOCKET */
-
-/* Define if you want to enable IPv6 support */
-#define ENABLE_IPV6 1
-
-/* Define if struct sockaddr_in6 has the sin6_scope_id member */
-#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
-
-/* Define to the type qualifier of arg 1 for getnameinfo. */
-#define GETNAMEINFO_QUAL_ARG1 const
-
-/* Define to the type of arg 1 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG1 struct sockaddr *
-
-/* Define to the type of arg 2 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG2 socklen_t
-
-/* Define to the type of args 4 and 6 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG46 size_t
-
-/* Define to the type of arg 7 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG7 int
-
-/* Define to 1 if you have the <alloca.h> header file. */
-/*#define HAVE_ALLOCA_H 1*/
-
-/* Define to 1 if you have the <arpa/inet.h> header file. */
-#define HAVE_ARPA_INET_H 1
-
-/* Define to 1 if you have the <arpa/tftp.h> header file. */
-/*#define HAVE_ARPA_TFTP_H 1*/
-
-/* Define to 1 if you have the <assert.h> header file. */
-#define HAVE_ASSERT_H 1
-
-/* Define to 1 if you have the `basename' function. */
-/*#define HAVE_BASENAME 1*/
-
-/* Define to 1 if bool is an available type. */
-/*#define HAVE_BOOL_T 1*/
-
-/* Define to 1 if you have the `closesocket' function. */
-/* #undef HAVE_CLOSESOCKET */
-
-/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function. */
-/*#define HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 1*/
-
-/* Define to 1 if you have the <crypto.h> header file. */
-/* #undef HAVE_CRYPTO_H */
-
-/* Define to 1 if you have the <des.h> header file. */
-/* #undef HAVE_DES_H */
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#define HAVE_DLFCN_H 1
-
-/* Define to 1 if you have the `ENGINE_load_builtin_engines' function. */
-/*#define HAVE_ENGINE_LOAD_BUILTIN_ENGINES 1*/
-
-/* Define to 1 if you have the <errno.h> header file. */
-#define HAVE_ERRNO_H 1
-
-/* Define to 1 if you have the <err.h> header file. */
-#define HAVE_ERR_H 1
-
-/* Define to 1 if you have the <fcntl.h> header file. */
-#define HAVE_FCNTL_H 1
-
-/* Define to 1 if you have the fcntl function. */
-#define HAVE_FCNTL 1
-
-/* Define to 1 if you have a working fcntl O_NONBLOCK function. */
-#define HAVE_FCNTL_O_NONBLOCK 1
-
-/* Define to 1 if you have the `fork' function. */
-/*#define HAVE_FORK 1*/
-
-/* Define to 1 if you have the `ftruncate' function. */
-#define HAVE_FTRUNCATE 1
-
-/* Define if getaddrinfo exists and works */
-#define HAVE_GETADDRINFO 1
-
-/* Define to 1 if you have the `geteuid' function. */
-#define HAVE_GETEUID 1
-
-/* Define to 1 if you have the `gethostbyaddr' function. */
-#define HAVE_GETHOSTBYADDR 1
-
-/* If you have gethostbyname */
-#define HAVE_GETHOSTBYNAME 1
-
-/* Define to 1 if you have the `gethostbyname_r' function. */
-/* #undef HAVE_GETHOSTBYNAME_R */
-
-/* gethostbyname_r() takes 3 args */
-/* #undef HAVE_GETHOSTBYNAME_R_3 */
-
-/* gethostbyname_r() takes 5 args */
-/* #undef HAVE_GETHOSTBYNAME_R_5 */
-
-/* gethostbyname_r() takes 6 args */
-/* #undef HAVE_GETHOSTBYNAME_R_6 */
-
-/* Define to 1 if you have the getnameinfo function. */
-#define HAVE_GETNAMEINFO 1
-
-/* Define to 1 if you have the `getpass_r' function. */
-/* #undef HAVE_GETPASS_R */
-
-/* Define to 1 if you have the `getppid' function. */
-#define HAVE_GETPPID 1
-
-/* Define to 1 if you have the `getprotobyname' function. */
-#define HAVE_GETPROTOBYNAME 1
-
-/* Define to 1 if you have the `getpwuid' function. */
-#define HAVE_GETPWUID 1
-
-/* Define to 1 if you have the `getrlimit' function. */
-/*#define HAVE_GETRLIMIT 1*/
-
-/* Define to 1 if you have the `gettimeofday' function. */
-#define HAVE_GETTIMEOFDAY 1
-
-/* we have a glibc-style strerror_r() */
-/* #undef HAVE_GLIBC_STRERROR_R */
-
-/* Define to 1 if you have the `gmtime_r' function. */
-#define HAVE_GMTIME_R 1
-
-/* if you have the gssapi libraries */
-/* #undef HAVE_GSSAPI */
-
-/* Define to 1 if you have the <gssapi/gssapi_generic.h> header file. */
-/* #undef HAVE_GSSAPI_GSSAPI_GENERIC_H */
-
-/* Define to 1 if you have the <gssapi/gssapi.h> header file. */
-/* #undef HAVE_GSSAPI_GSSAPI_H */
-
-/* Define to 1 if you have the <gssapi/gssapi_krb5.h> header file. */
-/* #undef HAVE_GSSAPI_GSSAPI_KRB5_H */
-
-/* if you have the GNU gssapi libraries */
-/* #undef HAVE_GSSGNU */
-
-/* if you have the Heimdal gssapi libraries */
-/* #undef HAVE_GSSHEIMDAL */
-
-/* if you have the MIT gssapi libraries */
-/* #undef HAVE_GSSMIT */
-
-/* Define to 1 if you have the `idna_strerror' function. */
-/*#define HAVE_IDNA_STRERROR 1*/
-
-/* Define to 1 if you have the `idn_free' function. */
-/*#define HAVE_IDN_FREE 1*/
-
-/* Define to 1 if you have the <idn-free.h> header file. */
-/*#define HAVE_IDN_FREE_H 1*/
-
-/* Define to 1 if you have the `inet_addr' function. */
-/*#define HAVE_INET_ADDR 1*/
-
-/* Define to 1 if you have a IPv6 capable working inet_ntop function. */
-/*#define HAVE_INET_NTOP 1*/
-
-/* Define to 1 if you have a IPv6 capable working inet_pton function. */
-/*#define HAVE_INET_PTON 1*/
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#define HAVE_INTTYPES_H 1
-
-/* Define to 1 if you have the ioctl function. */
-#define HAVE_IOCTL 1
-
-/* Define to 1 if you have a working ioctl FIONBIO function. */
-#define HAVE_IOCTL_FIONBIO 1
-
-/* Define to 1 if you have the ioctlsocket function. */
-/* #undef HAVE_IOCTLSOCKET */
-
-/* Define to 1 if you have a working ioctlsocket FIONBIO function. */
-/* #undef HAVE_IOCTLSOCKET_FIONBIO */
-
-/* Define to 1 if you have the IoctlSocket camel case function. */
-/* #undef HAVE_IOCTLSOCKET_CAMEL */
-
-/* Define to 1 if you have a working IoctlSocket camel case FIONBIO function. */
-/* #undef HAVE_IOCTLSOCKET_CAMEL_FIONBIO */
-
-/* Define to 1 if you have the <io.h> header file. */
-/* #undef HAVE_IO_H */
-
-/* if you have the Kerberos4 libraries (including -ldes) */
-/* #undef HAVE_KRB4 */
-
-/* Define to 1 if you have the `krb_get_our_ip_for_realm' function. */
-/* #undef HAVE_KRB_GET_OUR_IP_FOR_REALM */
-
-/* Define to 1 if you have the <krb.h> header file. */
-/* #undef HAVE_KRB_H */
-
-/* Define to 1 if you have the lber.h header file. */
-/*#define HAVE_LBER_H 1*/
-
-/* Define to 1 if you have the ldapssl.h header file. */
-/* #undef HAVE_LDAPSSL_H */
-
-/* Define to 1 if you have the ldap.h header file. */
-/*#define HAVE_LDAP_H 1*/
-
-/* Use LDAPS implementation */
-/*#define HAVE_LDAP_SSL 1*/
-
-/* Define to 1 if you have the ldap_ssl.h header file. */
-/* #undef HAVE_LDAP_SSL_H */
-
-/* Define to 1 if you have the `ldap_url_parse' function. */
-/*#define HAVE_LDAP_URL_PARSE 1*/
-
-/* Define to 1 if you have the <libgen.h> header file. */
-/*#define HAVE_LIBGEN_H 1*/
-
-/* Define to 1 if you have the `idn' library (-lidn). */
-/*#define HAVE_LIBIDN 1*/
-
-/* Define to 1 if you have the `resolv' library (-lresolv). */
-/* #undef HAVE_LIBRESOLV */
-
-/* Define to 1 if you have the `resolve' library (-lresolve). */
-/* #undef HAVE_LIBRESOLVE */
-
-/* Define to 1 if you have the `socket' library (-lsocket). */
-/* #undef HAVE_LIBSOCKET */
-
-/* Define to 1 if you have the `ssh2' library (-lssh2). */
-/*#define HAVE_LIBSSH2 1*/
-
-/* Define to 1 if you have the <libssh2.h> header file. */
-/*#define HAVE_LIBSSH2_H 1*/
-
-/* Define to 1 if you have the `ssl' library (-lssl). */
-/*#define HAVE_LIBSSL 1*/
-
-/* Define to 1 if you have the <limits.h> header file. */
-#define HAVE_LIMITS_H 1
-
-/* if your compiler supports LL */
-#define HAVE_LL 1
-
-/* Define to 1 if you have the <locale.h> header file. */
-#define HAVE_LOCALE_H 1
-
-/* Define to 1 if you have the `localtime_r' function. */
-#define HAVE_LOCALTIME_R 1
-
-/* Define to 1 if the compiler supports the 'long long' data type. */
-#define HAVE_LONGLONG 1
-
-/* Define to 1 if you have the malloc.h header file. */
-/*#define HAVE_MALLOC_H 1*/
-
-/* Define to 1 if you have the <memory.h> header file. */
-#define HAVE_MEMORY_H 1
-
-/* Define to 1 if you have the MSG_NOSIGNAL flag. */
-/*#define HAVE_MSG_NOSIGNAL 1*/
-
-/* Define to 1 if you have the <netdb.h> header file. */
-#define HAVE_NETDB_H 1
-
-/* Define to 1 if you have the <netinet/in.h> header file. */
-#define HAVE_NETINET_IN_H 1
-
-/* Define to 1 if you have the <netinet/tcp.h> header file. */
-/*#define HAVE_NETINET_TCP_H 1*/
-
-/* Define to 1 if you have the <net/if.h> header file. */
-#define HAVE_NET_IF_H 1
-
-/* Define to 1 if NI_WITHSCOPEID exists and works. */
-/*#define HAVE_NI_WITHSCOPEID 1*/
-
-/* we have no strerror_r() proto */
-/* #undef HAVE_NO_STRERROR_R_DECL */
-
-/* if you have an old MIT gssapi library, lacking GSS_C_NT_HOSTBASED_SERVICE
-   */
-/* #undef HAVE_OLD_GSSMIT */
-
-/* Define to 1 if you have the <openssl/crypto.h> header file. */
-/*#define HAVE_OPENSSL_CRYPTO_H 1*/
-
-/* Define to 1 if you have the <openssl/engine.h> header file. */
-/*#define HAVE_OPENSSL_ENGINE_H 1*/
-
-/* Define to 1 if you have the <openssl/err.h> header file. */
-/*#define HAVE_OPENSSL_ERR_H 1*/
-
-/* Define to 1 if you have the <openssl/pem.h> header file. */
-/*#define HAVE_OPENSSL_PEM_H 1*/
-
-/* Define to 1 if you have the <openssl/pkcs12.h> header file. */
-/*#define HAVE_OPENSSL_PKCS12_H 1*/
-
-/* Define to 1 if you have the <openssl/rsa.h> header file. */
-/*#define HAVE_OPENSSL_RSA_H 1*/
-
-/* Define to 1 if you have the <openssl/ssl.h> header file. */
-/*#define HAVE_OPENSSL_SSL_H 1*/
-
-/* Define to 1 if you have the <openssl/x509.h> header file. */
-/*#define HAVE_OPENSSL_X509_H 1*/
-
-/* Define to 1 if you have the <pem.h> header file. */
-/* #undef HAVE_PEM_H */
-
-/* Define to 1 if you have the `perror' function. */
-#define HAVE_PERROR 1
-
-/* Define to 1 if you have the `pipe' function. */
-#define HAVE_PIPE 1
-
-/* if you have the function PK11_CreateGenericObject */
-/* #undef HAVE_PK11_CREATEGENERICOBJECT */
-
-/* Define to 1 if you have the `poll' function. */
-/*#define HAVE_POLL 1*/
-
-/* If you have a fine poll */
-/*#define HAVE_POLL_FINE 1*/
-
-/* Define to 1 if you have the <poll.h> header file. */
-/*#define HAVE_POLL_H 1*/
-
-/* we have a POSIX-style strerror_r() */
-#define HAVE_POSIX_STRERROR_R 1
-
-/* Define to 1 if you have the <pwd.h> header file. */
-#define HAVE_PWD_H 1
-
-/* Define to 1 if you have the `RAND_egd' function. */
-#define HAVE_RAND_EGD 1
-
-/* Define to 1 if you have the `RAND_screen' function. */
-/* #undef HAVE_RAND_SCREEN */
-
-/* Define to 1 if you have the `RAND_status' function. */
-/*#define HAVE_RAND_STATUS 1*/
-
-/* Define to 1 if you have the recv function. */
-#define HAVE_RECV 1
-
-/* Define to 1 if you have the recvfrom function. */
-#define HAVE_RECVFROM 1
-
-/* Define to 1 if you have the <rsa.h> header file. */
-/* #undef HAVE_RSA_H */
-
-/* Define to 1 if you have the select function. */
-#define HAVE_SELECT 1
-
-/* Define to 1 if you have the send function. */
-#define HAVE_SEND 1
-
-/* Define to 1 if you have the <setjmp.h> header file. */
-#define HAVE_SETJMP_H 1
-
-/* Define to 1 if you have the `setlocale' function. */
-#define HAVE_SETLOCALE 1
-
-/* Define to 1 if you have the `setmode' function. */
-/* #undef HAVE_SETMODE */
-
-/* Define to 1 if you have the `setrlimit' function. */
-/*#define HAVE_SETRLIMIT 1*/
-
-/* Define to 1 if you have the setsockopt function. */
-/* #undef HAVE_SETSOCKOPT */
-
-/* Define to 1 if you have a working setsockopt SO_NONBLOCK function. */
-/* #undef HAVE_SETSOCKOPT_SO_NONBLOCK */
-
-/* Define to 1 if you have the <sgtty.h> header file. */
-/*#define HAVE_SGTTY_H 1*/
-
-/* Define to 1 if you have the `sigaction' function. */
-/*#define HAVE_SIGACTION 1*/
-
-/* Define to 1 if you have the `siginterrupt' function. */
-/*#define HAVE_SIGINTERRUPT 1*/
-
-/* Define to 1 if you have the `signal' function. */
-/*#define HAVE_SIGNAL 1*/
-
-/* Define to 1 if you have the <signal.h> header file. */
-#define HAVE_SIGNAL_H 1
-
-/* If you have sigsetjmp */
-/*#define HAVE_SIGSETJMP 1*/
-
-/* Define to 1 if sig_atomic_t is an available typedef. */
-/*#define HAVE_SIG_ATOMIC_T 1*/
-
-/* Define to 1 if sig_atomic_t is already defined as volatile. */
-/* #undef HAVE_SIG_ATOMIC_T_VOLATILE */
-
-/* Define to 1 if you have the `socket' function. */
-#define HAVE_SOCKET 1
-
-/* Define this if you have the SPNEGO library fbopenssl */
-/* #undef HAVE_SPNEGO */
-
-/* Define to 1 if you have the `SSL_get_shutdown' function. */
-/*#define HAVE_SSL_GET_SHUTDOWN 1*/
-
-/* Define to 1 if you have the <ssl.h> header file. */
-/* #undef HAVE_SSL_H */
-
-/* Define to 1 if you have the <stdbool.h> header file. */
-#define HAVE_STDBOOL_H 1
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#define HAVE_STDINT_H 1
-
-/* Define to 1 if you have the <stdio.h> header file. */
-#define HAVE_STDIO_H 1
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#define HAVE_STDLIB_H 1
-
-/* Define to 1 if you have the `strcasecmp' function. */
-#define HAVE_STRCASECMP 1
-
-/* Define to 1 if you have the `strcasestr' function. */
-#define HAVE_STRCASESTR 1
-
-/* Define to 1 if you have the `strcmpi' function. */
-/* #undef HAVE_STRCMPI */
-
-/* Define to 1 if you have the `strdup' function. */
-#define HAVE_STRDUP 1
-
-/* Define to 1 if you have the `strerror_r' function. */
-#define HAVE_STRERROR_R 1
-
-/* Define to 1 if you have the `stricmp' function. */
-/* #undef HAVE_STRICMP */
-
-/* Define to 1 if you have the <strings.h> header file. */
-#define HAVE_STRINGS_H 1
-
-/* Define to 1 if you have the <string.h> header file. */
-#define HAVE_STRING_H 1
-
-/* Define to 1 if you have the `strlcat' function. */
-#define HAVE_STRLCAT 1
-
-/* Define to 1 if you have the `strlcpy' function. */
-#define HAVE_STRLCPY 1
-
-/* Define to 1 if you have the `strstr' function. */
-#define HAVE_STRSTR 1
-
-/* Define to 1 if you have the `strtok_r' function. */
-#define HAVE_STRTOK_R 1
-
-/* Define to 1 if you have the `strtoll' function. */
-#define HAVE_STRTOLL 1
-
-/* if struct sockaddr_storage is defined */
-#define HAVE_STRUCT_SOCKADDR_STORAGE 1
-
-/* Define to 1 if you have the timeval struct. */
-#define HAVE_STRUCT_TIMEVAL 1
-
-/* Define to 1 if you have the <sys/filio.h> header file. */
-#define HAVE_SYS_FILIO_H 1
-
-/* Define to 1 if you have the <sys/ioctl.h> header file. */
-#define HAVE_SYS_IOCTL_H 1
-
-/* Define to 1 if you have the <sys/param.h> header file. */
-#define HAVE_SYS_PARAM_H 1
-
-/* Define to 1 if you have the <sys/poll.h> header file. */
-/*#define HAVE_SYS_POLL_H 1*/
-
-/* Define to 1 if you have the <sys/resource.h> header file. */
-#define HAVE_SYS_RESOURCE_H 1
-
-/* Define to 1 if you have the <sys/select.h> header file. */
-#define HAVE_SYS_SELECT_H 1
-
-/* Define to 1 if you have the <sys/socket.h> header file. */
-#define HAVE_SYS_SOCKET_H 1
-
-/* Define to 1 if you have the <sys/sockio.h> header file. */
-#define HAVE_SYS_SOCKIO_H 1
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#define HAVE_SYS_STAT_H 1
-
-/* Define to 1 if you have the <sys/time.h> header file. */
-#define HAVE_SYS_TIME_H 1
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#define HAVE_SYS_TYPES_H 1
-
-/* Define to 1 if you have the <sys/utime.h> header file. */
-/* #undef HAVE_SYS_UTIME_H */
-
-/* Define to 1 if you have the <termios.h> header file. */
-/*#define HAVE_TERMIOS_H 1*/
-
-/* Define to 1 if you have the <termio.h> header file. */
-/*#define HAVE_TERMIO_H 1*/
-
-/* Define to 1 if you have the <time.h> header file. */
-#define HAVE_TIME_H 1
-
-/* Define to 1 if you have the <tld.h> header file. */
-/*#define HAVE_TLD_H 1*/
-
-/* Define to 1 if you have the `tld_strerror' function. */
-/*#define HAVE_TLD_STRERROR 1*/
-
-/* Define to 1 if you have the `uname' function. */
-#define HAVE_UNAME 1
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#define HAVE_UNISTD_H 1
-
-/* Define to 1 if you have the `utime' function. */
-#define HAVE_UTIME 1
-
-/* Define to 1 if you have the <utime.h> header file. */
-#define HAVE_UTIME_H 1
-
-/* Define to 1 if compiler supports C99 variadic macro style. */
-#define HAVE_VARIADIC_MACROS_C99 1
-
-/* Define to 1 if compiler supports old gcc variadic macro style. */
-/*#define HAVE_VARIADIC_MACROS_GCC 1*/
-
-/* Define to 1 if you have the winber.h header file. */
-/* #undef HAVE_WINBER_H */
-
-/* Define to 1 if you have the windows.h header file. */
-/* #undef HAVE_WINDOWS_H */
-
-/* Define to 1 if you have the winldap.h header file. */
-/* #undef HAVE_WINLDAP_H */
-
-/* Define to 1 if you have the winsock2.h header file. */
-/* #undef HAVE_WINSOCK2_H */
-
-/* Define to 1 if you have the winsock.h header file. */
-/* #undef HAVE_WINSOCK_H */
-
-/* Define this symbol if your OS supports changing the contents of argv */
-/*#define HAVE_WRITABLE_ARGV 1*/
-
-/* Define to 1 if you have the ws2tcpip.h header file. */
-/* #undef HAVE_WS2TCPIP_H */
-
-/* Define to 1 if you have the <x509.h> header file. */
-/* #undef HAVE_X509_H */
-
-/* Define to 1 if you are building a native Windows target. */
-/* #undef NATIVE_WINDOWS */
-
-/* Define to 1 if you need the lber.h header file even with ldap.h */
-/* #undef NEED_LBER_H */
-
-/* Define to 1 if you need the malloc.h header file even with stdlib.h */
-/* #undef NEED_MALLOC_H */
-
-/* Define to 1 if _REENTRANT preprocessor symbol must be defined. */
-/* #undef NEED_REENTRANT */
-
-/* Define to 1 if _THREAD_SAFE preprocessor symbol must be defined. */
-/* #undef NEED_THREAD_SAFE */
-
-/* cpu-machine-OS */
-#ifdef __WINS__
-#define OS "i386-pc-epoc32"
-#elif __MARM__
-#define OS "arm-unknown-epoc32"
-#else
-/* This won't happen on any current Symbian version */
-#define OS "unknown-unknown-epoc32"
-#endif
-
-/* Name of package */
-/*#define PACKAGE "curl"*/
-
-/* Define to the address where bug reports for this package should be sent. */
-/*#define PACKAGE_BUGREPORT "a suitable curl mailing list => http://curl.haxx.se/mail/"*/
-
-/* Define to the full name of this package. */
-/*#define PACKAGE_NAME "curl"*/
-
-/* Define to the full name and version of this package. */
-/*#define PACKAGE_STRING "curl -"*/
-
-/* Define to the one symbol short name of this package. */
-/*#define PACKAGE_TARNAME "curl"*/
-
-/* Define to the version of this package. */
-/*#define PACKAGE_VERSION "-"*/
-
-/* a suitable file to read random data from */
-/*#define RANDOM_FILE "/dev/urandom"*/
-
-#define RECV_TYPE_ARG1 int
-#define RECV_TYPE_ARG2 void*
-#define RECV_TYPE_ARG3 size_t
-#define RECV_TYPE_ARG4 int
-#define RECV_TYPE_RETV ssize_t
-
-#define RECVFROM_TYPE_ARG1 int
-#define RECVFROM_TYPE_ARG2 void
-#define RECVFROM_TYPE_ARG3 size_t
-#define RECVFROM_TYPE_ARG4 int
-#define RECVFROM_TYPE_ARG5 struct sockaddr
-#define RECVFROM_TYPE_ARG6 size_t
-#define RECVFROM_TYPE_RETV ssize_t
-#define RECVFROM_TYPE_ARG2_IS_VOID 1
-
-#define SEND_TYPE_ARG1 int
-#define SEND_QUAL_ARG2 const
-#define SEND_TYPE_ARG2 void*
-#define SEND_TYPE_ARG3 size_t
-#define SEND_TYPE_ARG4 int
-#define SEND_TYPE_RETV ssize_t
-
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-/*#define RETSIGTYPE void*/
-
-/* Define to the type of arg 1 for `select'. */
-#define SELECT_TYPE_ARG1 int
-
-/* Define to the type of args 2, 3 and 4 for `select'. */
-#define SELECT_TYPE_ARG234 (fd_set *)
-
-/* Define to the type of arg 5 for `select'. */
-#define SELECT_TYPE_ARG5 (struct timeval *)
-
-/* The size of `int', as computed by sizeof. */
-#define SIZEOF_INT 4
-
-/* The size of `off_t', as computed by sizeof. */
-#define SIZEOF_OFF_T 8
-
-/* The size of `short', as computed by sizeof. */
-#define SIZEOF_SHORT 2
-
-/* The size of `size_t', as computed by sizeof. */
-#define SIZEOF_SIZE_T 4
-
-/* The size of `time_t', as computed by sizeof. */
-#define SIZEOF_TIME_T 4
-
-/* Define to 1 if you have the ANSI C header files. */
-#define STDC_HEADERS 1
-
-/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-#define TIME_WITH_SYS_TIME 1
-
-/* Define if you want to enable c-ares support */
-/* #undef USE_ARES */
-
-/* Define to disable non-blocking sockets */
-/* #undef USE_BLOCKING_SOCKETS */
-
-/* if GnuTLS is enabled */
-/* #undef USE_GNUTLS */
-
-/* if libSSH2 is in use */
-/*#define USE_LIBSSH2 1*/
-
-/* If you want to build curl with the built-in manual */
-/*#define USE_MANUAL 1*/
-
-/* if NSS is enabled */
-/* #undef USE_NSS */
-
-/* to enable SSPI support */
-/* #undef USE_WINDOWS_SSPI */
-
-/* Define to 1 if using yaSSL in OpenSSL compatibility mode. */
-/* #undef USE_YASSLEMUL */
-
-/* Version number of package */
-/*#define VERSION "7.18.2-CVS"*/
-
-/* Define to avoid automatic inclusion of winsock.h */
-/* #undef WIN32_LEAN_AND_MEAN */
-
-/* Define to 1 if on AIX 3.
-   System headers sometimes define this.
-   We just want to avoid a redefinition error message.  */
-#ifndef _ALL_SOURCE
-/* # undef _ALL_SOURCE */
-#endif
-
-/* Number of bits in a file offset, on hosts where this is settable. */
-#define _FILE_OFFSET_BITS 64
-
-/* Define for large files, on AIX-style hosts. */
-/* #undef _LARGE_FILES */
-
-/* Define to empty if `const' does not conform to ANSI C. */
-/* #undef const */
-
-/* type to use in place of in_addr_t if not defined */
-/* #undef in_addr_t */
-
-/* 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 `unsigned int' if <sys/types.h> does not define. */
-/* #undef size_t */
-
-/* the signed version of size_t */
-/* #undef ssize_t */
-
-/* Enabling curl debug mode when building in Symbian debug mode would work */
-/* except that debug mode introduces new exports that must be frozen. */
-#ifdef _DEBUG
-/* #define CURLDEBUG */
-#endif
-
-/* sys/cdefs.h fails to define this for WINSCW prior to Symbian OS ver. 9.4 */
-#ifndef __LONG_LONG_SUPPORTED
-#define __LONG_LONG_SUPPORTED
-#endif
-
-/* Enable appropriate header only when zlib support is enabled */
-#ifdef HAVE_LIBZ
-#define HAVE_ZLIB_H 1
-#endif
-
-/* Enable appropriate definitions only when OpenSSL support is enabled */
-#ifdef USE_SSLEAY
-/* if OpenSSL is in use */
-#define USE_OPENSSL
-#endif
diff --git a/src/other/curl/lib/config-tpf.h b/src/other/curl/lib/config-tpf.h
deleted file mode 100644
index 3e494f7..0000000
--- a/src/other/curl/lib/config-tpf.h
+++ /dev/null
@@ -1,761 +0,0 @@
-#ifndef __LIBCONFIGTPF_H
-#define __LIBCONFIGTPF_H
-
-/* ================================================================ */
-/*    lib/config-tpf.h - Hand crafted config file for TPF           */
-/* ================================================================ */
-
-/* ---------------------------------------------------------------- */
-/*            FEATURES, FUNCTIONS, and DEFINITIONS                  */
-/* ---------------------------------------------------------------- */
-
-/* NOTE: Refer also to the .mak file for some of the flags below */
-
-/* when building libcurl itself */
-/* #undef BUILDING_LIBCURL */
-
-/* to disable cookies support */
-/* #undef CURL_DISABLE_COOKIES */
-
-/* to disable cryptographic authentication */
-/* #undef CURL_DISABLE_CRYPTO_AUTH */
-
-/* to disable DICT */
-/* #undef CURL_DISABLE_DICT */
-
-/* to disable FILE */
-/* #undef CURL_DISABLE_FILE */
-
-/* to disable FTP */
-/* #undef CURL_DISABLE_FTP */
-
-/* to disable HTTP */
-/* #undef CURL_DISABLE_HTTP */
-
-/* to disable LDAP */
-/* #undef CURL_DISABLE_LDAP */
-
-/* to disable TELNET */
-/* #undef CURL_DISABLE_TELNET */
-
-/* to disable TFTP */
-/* #undef CURL_DISABLE_TFTP */
-
-/* to disable verbose strings */
-/* #undef CURL_DISABLE_VERBOSE_STRINGS */
-
-/* when not building a shared library */
-/* #undef CURL_STATICLIB */
-
-/* lber dynamic library file */
-/* #undef DL_LBER_FILE */
-
-/* ldap dynamic library file */
-/* #undef DL_LDAP_FILE */
-
-/* your Entropy Gathering Daemon socket pathname */
-/* #undef EGD_SOCKET */
-
-/* Define if you want to enable IPv6 support */
-/* #undef ENABLE_IPV6 */
-
-/* Define if struct sockaddr_in6 has the sin6_scope_id member */
-/* #undef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID */
-
-/* Define to the type of arg 1 for getnameinfo. */
-/* #undef GETNAMEINFO_TYPE_ARG1 */
-
-/* Define to the type of arg 2 for getnameinfo. */
-/* #undef GETNAMEINFO_TYPE_ARG2 */
-
-/* Define to the type of args 4 and 6 for getnameinfo. */
-/* #undef GETNAMEINFO_TYPE_ARG46 */
-
-/* Define to the type of arg 7 for getnameinfo. */
-/* #undef GETNAMEINFO_TYPE_ARG7 */
-
-/* Define to 1 if you have the alarm function. */
-#define HAVE_ALARM 1
-
-/* Define to 1 if you have the <arpa/inet.h> header file. */
-#define HAVE_ARPA_INET_H 1
-
-/* Define to 1 if you have the <arpa/tftp.h> header file. */
-/* #undef HAVE_ARPA_TFTP_H */
-
-/* Define to 1 if you have the <assert.h> header file. */
-#define HAVE_ASSERT_H 1
-
-/* Define to 1 if you have the `basename' function. */
-#define HAVE_BASENAME 1
-
-/* Define to 1 if you have the `closesocket' function. */
-/* #undef HAVE_CLOSESOCKET */
-
-/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function. */
-/* #undef HAVE_CRYPTO_CLEANUP_ALL_EX_DATA */
-#define HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 1
-
-/* Define to 1 if you have the <crypto.h> header file. */
-/* #undef HAVE_CRYPTO_H */
-#define HAVE_CRYPTO_H 1
-
-/* Define to 1 if you have the <des.h> header file. */
-/* #undef HAVE_DES_H */
-#define HAVE_DES_H 1
-
-/* Define to 1 if you have the `ENGINE_load_builtin_engines' function. */
-/* #undef HAVE_ENGINE_LOAD_BUILTIN_ENGINES */
-#define HAVE_ENGINE_LOAD_BUILTIN_ENGINES 1
-
-/* Define to 1 if you have the <errno.h> header file. */
-#define HAVE_ERRNO_H 1
-
-/* Define to 1 if you have the <err.h> header file. */
-/* #undef HAVE_ERR_H */
-#define HAVE_ERR_H 1
-
-/* Define to 1 if you have the <fcntl.h> header file. */
-#define HAVE_FCNTL_H 1
-
-/* Define to 1 if you have the fcntl function. */
-#define HAVE_FCNTL 1
-
-/* Define to 1 if you have a working fcntl O_NONBLOCK function. */
-#define HAVE_FCNTL_O_NONBLOCK 1
-
-/* Define to 1 if you have the `fork' function. */
-/* #undef HAVE_FORK */
-#define HAVE_FORK 1
-
-/* Define to 1 if you have the `ftruncate' function. */
-#define HAVE_FTRUNCATE 1
-
-/* Define if getaddrinfo exists and works */
-/* #undef HAVE_GETADDRINFO */
-
-/* Define to 1 if you have the `geteuid' function. */
-#define HAVE_GETEUID 1
-
-/* Define to 1 if you have the `gethostbyaddr' function. */
-#define HAVE_GETHOSTBYADDR 1
-
-/* If you have gethostbyname */
-#define HAVE_GETHOSTBYNAME 1
-
-/* Define to 1 if you have the `gethostbyname_r' function. */
-/* #undef HAVE_GETHOSTBYNAME_R */
-
-/* gethostbyname_r() takes 3 args */
-/* #undef HAVE_GETHOSTBYNAME_R_3 */
-
-/* gethostbyname_r() takes 5 args */
-/* #undef HAVE_GETHOSTBYNAME_R_5 */
-
-/* gethostbyname_r() takes 6 args */
-/* #undef HAVE_GETHOSTBYNAME_R_6 1 */
-
-/* Define to 1 if you have the getnameinfo function. */
-/* #undef HAVE_GETNAMEINFO */
-
-/* Define to 1 if you have the `getpass_r' function. */
-/* #undef HAVE_GETPASS_R */
-
-/* Define to 1 if you have the `getprotobyname' function. */
-/* #undef HAVE_GETPROTOBYNAME */
-
-/* Define to 1 if you have the `getpwuid' function. */
-#define HAVE_GETPWUID 1
-
-/* Define to 1 if you have the `getrlimit' function. */
-/* #undef HAVE_GETRLIMIT */
-
-/* Define to 1 if you have the `gettimeofday' function. */
-#define HAVE_GETTIMEOFDAY 1
-
-/* we have a glibc-style strerror_r() */
-/* #undef HAVE_GLIBC_STRERROR_R */
-#define HAVE_GLIBC_STRERROR_R 1
-
-/* Define to 1 if you have the `gmtime_r' function. */
-#define HAVE_GMTIME_R 1
-
-/* if you have the gssapi libraries */
-/* #undef HAVE_GSSAPI */
-
-/* if you have the GNU gssapi libraries */
-/* #undef HAVE_GSSGNU */
-
-/* if you have the Heimdal gssapi libraries */
-/* #undef HAVE_GSSHEIMDAL */
-
-/* if you have the MIT gssapi libraries */
-/* #undef HAVE_GSSMIT */
-
-/* Define to 1 if you have the `iconv' functions. */
-#define HAVE_ICONV 1
-
-/* Define to 1 if you have the `idna_strerror' function. */
-/* #undef HAVE_IDNA_STRERROR */
-
-/* Define to 1 if you have the `idn_free' function. */
-/* #undef HAVE_IDN_FREE */
-
-/* Define to 1 if you have the <idn-free.h> header file. */
-/* #undef HAVE_IDN_FREE_H */
-
-/* Define to 1 if you have the `inet_addr' function. */
-#define HAVE_INET_ADDR 1
-
-/* Define to 1 if you have a IPv6 capable working inet_ntop function. */
-/* #undef HAVE_INET_NTOP */
-
-/* Define to 1 if you have a IPv6 capable working inet_pton function. */
-/* #undef HAVE_INET_PTON */
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#define HAVE_INTTYPES_H 1
-
-/* Define to 1 if you have the ioctl function. */
-#define HAVE_IOCTL 1
-
-/* Define to 1 if you have a working ioctl FIONBIO function. */
-#define HAVE_IOCTL_FIONBIO 1
-
-/* Define to 1 if you have the ioctlsocket function. */
-/* #undef HAVE_IOCTLSOCKET */
-
-/* Define to 1 if you have a working ioctlsocket FIONBIO function. */
-/* #undef HAVE_IOCTLSOCKET_FIONBIO */
-
-/* Define to 1 if you have the IoctlSocket camel case function. */
-/* #undef HAVE_IOCTLSOCKET_CAMEL */
-
-/* Define to 1 if you have a working IoctlSocket camel case FIONBIO function. */
-/* #undef HAVE_IOCTLSOCKET_CAMEL_FIONBIO */
-
-/* Define to 1 if you have the <io.h> header file. */
-/* #undef HAVE_IO_H */
-
-/* if you have the Kerberos4 libraries (including -ldes) */
-/* #undef HAVE_KRB4 */
-
-/* Define to 1 if you have the `krb_get_our_ip_for_realm' function. */
-/* #undef HAVE_KRB_GET_OUR_IP_FOR_REALM */
-
-/* Define to 1 if you have the <krb.h> header file. */
-/* #undef HAVE_KRB_H */
-
-/* Define to 1 if you have the <libgen.h> header file. */
-/* #undef HAVE_LIBGEN_H 1 */
-
-/* Define to 1 if you have the `idn' library (-lidn). */
-/* #undef HAVE_LIBIDN */
-
-/* Define to 1 if you have the `resolv' library (-lresolv). */
-/* #undef HAVE_LIBRESOLV */
-
-/* Define to 1 if you have the `resolve' library (-lresolve). */
-/* #undef HAVE_LIBRESOLVE */
-
-/* Define to 1 if you have the `socket' library (-lsocket). */
-/* #undef HAVE_LIBSOCKET */
-
-/* Define to 1 if you have the `ssl' library (-lssl). */
-/* #undef HAVE_LIBSSL */
-#define HAVE_LIBSSL 1
-
-/* if zlib is available */
-/* #undef HAVE_LIBZ */
-
-/* Define to 1 if you have the <limits.h> header file. */
-#define HAVE_LIMITS_H 1
-
-/* if your compiler supports LL */
-#define HAVE_LL 1
-
-/* Define to 1 if you have the <locale.h> header file. */
-#define HAVE_LOCALE_H 1
-
-/* Define to 1 if you have the `localtime_r' function. */
-#define HAVE_LOCALTIME_R 1
-
-/* Define to 1 if the compiler supports the 'long long' data type. */
-#define HAVE_LONGLONG 1
-
-/* Define to 1 if you need the malloc.h header file even with stdlib.h  */
-/* #undef NEED_MALLOC_H */
-
-/* Define to 1 if you have the <memory.h> header file. */
-#define HAVE_MEMORY_H 1
-
-/* Define to 1 if you have the <netdb.h> header file. */
-#define HAVE_NETDB_H 1
-
-/* Define to 1 if you have the <netinet/in.h> header file. */
-#define HAVE_NETINET_IN_H 1
-
-/* Define to 1 if you have the <netinet/tcp.h> header file. */
-/* undef HAVE_NETINET_TCP_H */
-
-/* Define to 1 if you have the <net/if.h> header file. */
-#define HAVE_NET_IF_H 1
-
-/* Define if NI_WITHSCOPEID exists and works */
-/* #undef HAVE_NI_WITHSCOPEID */
-
-/* we have no strerror_r() proto */
-/* #undef HAVE_NO_STRERROR_R_DECL */
-
-/* Define to 1 if you have the <openssl/crypto.h> header file. */
-/* #undef HAVE_OPENSSL_CRYPTO_H */
-#define HAVE_OPENSSL_CRYPTO_H 1
-
-/* Define to 1 if you have the <openssl/engine.h> header file. */
-/* #undef HAVE_OPENSSL_ENGINE_H */
-#define HAVE_OPENSSL_ENGINE_H 1
-
-/* Define to 1 if you have the <openssl/err.h> header file. */
-/* #undef HAVE_OPENSSL_ERR_H */
-#define HAVE_OPENSSL_ERR_H 1
-
-/* Define to 1 if you have the <openssl/pem.h> header file. */
-/* #undef HAVE_OPENSSL_PEM_H */
-#define HAVE_OPENSSL_PEM_H 1
-
-/* Define to 1 if you have the <openssl/pkcs12.h> header file. */
-/* #undef HAVE_OPENSSL_PKCS12_H */
-#define HAVE_OPENSSL_PKCS12_H 1
-
-/* Define to 1 if you have the <openssl/rsa.h> header file. */
-/* #undef HAVE_OPENSSL_RSA_H */
-#define HAVE_OPENSSL_RSA_H 1
-
-/* Define to 1 if you have the <openssl/ssl.h> header file. */
-/* #undef HAVE_OPENSSL_SSL_H */
-#define HAVE_OPENSSL_SSL_H 1
-
-/* Define to 1 if you have the <openssl/x509.h> header file. */
-/* #undef HAVE_OPENSSL_X509_H */
-#define HAVE_OPENSSL_X509_H 1
-
-/* Define to 1 if you have the <pem.h> header file. */
-/* #undef HAVE_PEM_H */
-#define HAVE_PEM_H 1
-
-/* Define to 1 if you have the `perror' function. */
-#define HAVE_PERROR 1
-
-/* Define to 1 if you have the `pipe' function. */
-#define HAVE_PIPE 1
-
-/* Define to 1 if you have the `poll' function. */
-/* #undef HAVE_POLL */
-
-/* If you have a fine poll */
-/* #undef HAVE_POLL_FINE */
-
-/* we have a POSIX-style strerror_r() */
-/* #undef HAVE_POSIX_STRERROR_R */
-
-/* Define to 1 if you have the <pwd.h> header file. */
-#define HAVE_PWD_H 1
-
-/* Define to 1 if you have the `RAND_egd' function. */
-/* #undef HAVE_RAND_EGD */
-#define HAVE_RAND_EGD 1
-
-/* Define to 1 if you have the `RAND_screen' function. */
-/* #undef HAVE_RAND_SCREEN */
-
-/* Define to 1 if you have the `RAND_status' function. */
-/* #undef HAVE_RAND_STATUS */
-#define HAVE_RAND_STATUS 1
-
-/* Define to 1 if you have the <rsa.h> header file. */
-/* #undef HAVE_RSA_H */
-#define HAVE_RSA_H 1
-
-/* Define to 1 if you have the `select' function. */
-#define HAVE_SELECT 1
-
-/* Define to 1 if you have the <setjmp.h> header file. */
-#define HAVE_SETJMP_H 1
-
-/* Define to 1 if you have the `setlocale' function. */
-#define HAVE_SETLOCALE 1
-
-/* Define to 1 if you have the `setrlimit' function. */
-#define HAVE_SETRLIMIT 1
-
-/* Define to 1 if you have the setsockopt function. */
-/* #undef HAVE_SETSOCKOPT */
-
-/* Define to 1 if you have a working setsockopt SO_NONBLOCK function. */
-/* #undef HAVE_SETSOCKOPT_SO_NONBLOCK */
-
-/* Define to 1 if you have the <sgtty.h> header file. */
-/* #undef HAVE_SGTTY_H 1 */
-
-/* Define to 1 if you have the `sigaction' function. */
-#define HAVE_SIGACTION 1
-
-/* Define to 1 if you have the `siginterrupt' function. */
-/* #undef HAVE_SIGINTERRUPT */
-
-/* Define to 1 if you have the `signal' function. */
-#define HAVE_SIGNAL 1
-
-/* Define to 1 if you have the <signal.h> header file. */
-#define HAVE_SIGNAL_H 1
-
-/* Define to 1 if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T 1
-
-/* Define to 1 if sig_atomic_t is already defined as volatile. */
-/* #undef HAVE_SIG_ATOMIC_T_VOLATILE */
-
-/* If you have sigsetjmp */
-/* #undef HAVE_SIGSETJMP */
-
-/* Define to 1 if you have the `socket' function. */
-#define HAVE_SOCKET 1
-
-/* Define this if you have the SPNEGO library fbopenssl */
-/* #undef HAVE_SPNEGO */
-
-/* Define to 1 if you have the <ssl.h> header file. */
-/* #undef HAVE_SSL_H */
-#define HAVE_SSL_H 1
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#define HAVE_STDINT_H 1
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#define HAVE_STDLIB_H 1
-
-/* Define to 1 if you have the `strcasecmp' function. */
-#define HAVE_STRCASECMP 1
-
-/* Define to 1 if you have the `strcmpi' function. */
-/* #undef HAVE_STRCMPI */
-
-/* Define to 1 if you have the `strdup' function. */
-#define HAVE_STRDUP 1
-
-/* Define to 1 if you have the `strerror_r' function. */
-#define HAVE_STRERROR_R 1
-
-/* Define to 1 if you have the `stricmp' function. */
-/* #undef HAVE_STRICMP */
-#define HAVE_STRICMP 1
-
-/* Define to 1 if you have the <strings.h> header file. */
-#define HAVE_STRINGS_H 1
-
-/* Define to 1 if you have the <string.h> header file. */
-#define HAVE_STRING_H 1
-
-/* Define to 1 if you have the `strlcat' function. */
-/* #undef HAVE_STRLCAT */
-
-/* Define to 1 if you have the `strlcpy' function. */
-/* #undef HAVE_STRLCPY */
-
-/* Define to 1 if you have the `strstr' function. */
-#define HAVE_STRSTR 1
-
-/* Define to 1 if you have the `strtok_r' function. */
-#define HAVE_STRTOK_R 1
-
-/* Define to 1 if you have the `strtoll' function. */
-#define HAVE_STRTOLL 1
-
-/* if struct sockaddr_storage is defined */
-/* #undef HAVE_STRUCT_SOCKADDR_STORAGE */
-
-/* Define this if you have struct timeval */
-#define HAVE_STRUCT_TIMEVAL 1
-
-/* Define to 1 if you have the <sys/filio.h> header file. */
-#define HAVE_SYS_FILIO_H 1
-
-/* Define to 1 if you have the <sys/ioctl.h> header file. */
-#define HAVE_SYS_IOCTL_H 1
-
-/* Define to 1 if you have the <sys/param.h> header file. */
-#define HAVE_SYS_PARAM_H 1
-
-/* Define to 1 if you have the <sys/poll.h> header file. */
-/* #undef HAVE_SYS_POLL_H */
-
-/* Define to 1 if you have the <sys/resource.h> header file. */
-#define HAVE_SYS_RESOURCE_H 1
-
-/* Define to 1 if you have the <sys/select.h> header file. */
-#define HAVE_SYS_SELECT_H 1
-
-/* Define to 1 if you have the <sys/socket.h> header file. */
-#define HAVE_SYS_SOCKET_H 1
-
-/* Define to 1 if you have the <sys/sockio.h> header file. */
-/* #undef HAVE_SYS_SOCKIO_H */
-#define HAVE_SYS_SOCKIO_H 1
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#define HAVE_SYS_STAT_H 1
-
-/* Define to 1 if you have the <sys/time.h> header file. */
-#define HAVE_SYS_TIME_H 1
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#define HAVE_SYS_TYPES_H 1
-
-/* Define to 1 if you have the <sys/utime.h> header file. */
-/* #undef HAVE_SYS_UTIME_H */
-
-/* Define to 1 if you have the <termios.h> header file. */
-/* #undef HAVE_TERMIOS_H */
-
-/* Define to 1 if you have the <termio.h> header file. */
-/* #undef HAVE_TERMIO_H */
-
-/* Define to 1 if you have the <time.h> header file. */
-#define HAVE_TIME_H 1
-
-/* Define to 1 if you have the <tld.h> header file. */
-/* #undef HAVE_TLD_H */
-
-/* Define to 1 if you have the `tld_strerror' function. */
-/* #undef HAVE_TLD_STRERROR */
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#define HAVE_UNISTD_H 1
-
-/* Define to 1 if you have the `utime' function. */
-#define HAVE_UTIME 1
-
-/* Define to 1 if you have the <utime.h> header file. */
-#define HAVE_UTIME_H 1
-
-/* Define to 1 if you have the <winsock2.h> header file. */
-/* #undef HAVE_WINSOCK2_H */
-
-/* Define to 1 if you have the <winsock.h> header file. */
-/* #undef HAVE_WINSOCK_H */
-
-/* Define this symbol if your OS supports changing the contents of argv */
-/* #undef HAVE_WRITABLE_ARGV */
-
-/* Define to 1 if you have the ws2tcpip.h header file. */
-/* #undef HAVE_WS2TCPIP_H */
-
-/* Define to 1 if you have the <x509.h> header file. */
-/* #undef HAVE_X509_H */
-
-/* if you have the zlib.h header file */
-/* #undef HAVE_ZLIB_H */
-
-/* Define to 1 if _REENTRANT preprocessor symbol must be defined. */
-/* #undef NEED_REENTRANT */
-
-/* Define to 1 if _THREAD_SAFE preprocessor symbol must be defined. */
-/* #undef NEED_THREAD_SAFE */
-
-/* cpu-machine-OS */
-#define OS "s390x-ibm-tpf"
-
-/* Name of package */
-#define PACKAGE "curl"
-
-/* Define to the address where bug reports for this package should be sent. */
-#define PACKAGE_BUGREPORT "a suitable curl mailing list => http://curl.haxx.se/mail/"
-
-/* Define to the full name of this package. */
-#define PACKAGE_NAME "curl"
-
-/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "curl -"
-
-/* Define to the one symbol short name of this package. */
-#define PACKAGE_TARNAME "curl"
-
-/* Define to the version of this package. */
-#define PACKAGE_VERSION "-"
-
-/* a suitable file to read random data from */
-/* #undef RANDOM_FILE */
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#define RETSIGTYPE void
-
-/* Define to the type of arg 1 for `select'. */
-#define SELECT_TYPE_ARG1 int
-
-/* Define to the type of args 2, 3 and 4 for `select'. */
-#define SELECT_TYPE_ARG234 (fd_set *)
-
-/* Define to the type of arg 5 for `select'. */
-#define SELECT_TYPE_ARG5 (struct timeval *)
-
-/* The size of `int', as computed by sizeof. */
-#define SIZEOF_INT 4
-
-/* The size of `off_t', as computed by sizeof. */
-#define SIZEOF_OFF_T 8
-
-/* The size of `short', as computed by sizeof. */
-#define SIZEOF_SHORT 2
-
-/* The size of `size_t', as computed by sizeof. */
-#define SIZEOF_SIZE_T 8
-
-/* The size of `time_t', as computed by sizeof. */
-#define SIZEOF_TIME_T 8
-
-/* Define to 1 if you have the ANSI C header files. */
-#define STDC_HEADERS 1
-
-/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-#define TIME_WITH_SYS_TIME 1
-
-/* Define if you want to enable ares support */
-/* #undef USE_ARES */
-
-/* Define to disable non-blocking sockets */
-/* #undef USE_BLOCKING_SOCKETS */
-
-/* if GnuTLS is enabled */
-/* #undef USE_GNUTLS */
-
-/* If you want to build curl with the built-in manual */
-/* #undef USE_MANUAL */
-
-/* if OpenSSL is in use */
-/* #undef USE_OPENSSL */
-
-/* if SSL is enabled */
-/* #undef USE_SSLEAY */
-
-/* to enable SSPI support */
-/* #undef USE_WINDOWS_SSPI */
-
-/* Version number of package */
-#define VERSION "not-used"
-
-/* Define to avoid automatic inclusion of winsock.h */
-/* #undef WIN32_LEAN_AND_MEAN */
-
-/* Define to 1 if on AIX 3.
-   System headers sometimes define this.
-   We just want to avoid a redefinition error message.  */
-#ifndef _ALL_SOURCE
-/* # undef _ALL_SOURCE */
-#endif
-
-/* Number of bits in a file offset, on hosts where this is settable. */
-/* #undef _FILE_OFFSET_BITS */
-
-/* Define for large files, on AIX-style hosts. */
-/* #undef _LARGE_FILES */
-
-/* Define to empty if `const' does not conform to ANSI C. */
-/* #undef const */
-
-/* type to use in place of in_addr_t if not defined */
-/* #undef in_addr_t */
-
-/* Define to `unsigned' if <sys/types.h> does not define. */
-/* #undef size_t */
-
-/* the signed version of size_t */
-/* #undef ssize_t */
-
-/* Define to 1 if you have the getnameinfo function. */
-/* #undef HAVE_GETNAMEINFO 1 */
-
-/* Define to the type qualifier of arg 1 for getnameinfo. */
-/* #undef GETNAMEINFO_QUAL_ARG1 const */
-
-/* Define to the type of arg 1 for getnameinfo. */
-/* #undef GETNAMEINFO_TYPE_ARG1 struct sockaddr * */
-
-/* Define to the type of arg 2 for getnameinfo. */
-/* #undef GETNAMEINFO_TYPE_ARG2 socklen_t */
-
-/* Define to the type of args 4 and 6 for getnameinfo. */
-/* #undef GETNAMEINFO_TYPE_ARG46 size_t */
-
-/* Define to the type of arg 7 for getnameinfo. */
-/* #undef GETNAMEINFO_TYPE_ARG7 int */
-
-/* Define to 1 if you have the recv function. */
-#define HAVE_RECV 1
-
-/* Define to the type of arg 1 for recv. */
-#define RECV_TYPE_ARG1 int
-
-/* Define to the type of arg 2 for recv. */
-#define RECV_TYPE_ARG2 char *
-
-/* Define to the type of arg 3 for recv. */
-#define RECV_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for recv. */
-#define RECV_TYPE_ARG4 int
-
-/* Define to the function return type for recv. */
-#define RECV_TYPE_RETV int
-
-/* Define to 1 if you have the recvfrom function. */
-#define HAVE_RECVFROM 1
-
-/* Define to the type of arg 1 for recvfrom. */
-#define RECVFROM_TYPE_ARG1 int
-
-/* Define to the type pointed by arg 2 for recvfrom. */
-#define RECVFROM_TYPE_ARG2 char
-
-/* Define to the type of arg 3 for recvfrom. */
-#define RECVFROM_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for recvfrom. */
-#define RECVFROM_TYPE_ARG4 int
-
-/* Define to the type pointed by arg 5 for recvfrom. */
-#define RECVFROM_TYPE_ARG5 struct sockaddr
-
-/* Define to the type pointed by arg 6 for recvfrom. */
-#define RECVFROM_TYPE_ARG6 int
-
-/* Define to the function return type for recvfrom. */
-#define RECVFROM_TYPE_RETV int
-
-/* Define to 1 if you have the send function. */
-#define HAVE_SEND 1
-
-/* Define to the type of arg 1 for send. */
-#define SEND_TYPE_ARG1 int
-
-/* Define to the type qualifier of arg 2 for send. */
-#define SEND_QUAL_ARG2 const
-
-/* Define to the type of arg 2 for send. */
-#define SEND_TYPE_ARG2 char *
-
-/* Define to the type of arg 3 for send. */
-#define SEND_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for send. */
-#define SEND_TYPE_ARG4 int
-
-/* Define to the function return type for send. */
-#define SEND_TYPE_RETV int
-
-#define CURL_DOES_CONVERSIONS
-#ifndef CURL_ICONV_CODESET_OF_HOST
-#define CURL_ICONV_CODESET_OF_HOST "IBM-1047"
-#endif
-
-
-#endif /* __LIBCONFIGTPF_H */
diff --git a/src/other/curl/lib/config-vxworks.h b/src/other/curl/lib/config-vxworks.h
deleted file mode 100644
index 3ad36d2..0000000
--- a/src/other/curl/lib/config-vxworks.h
+++ /dev/null
@@ -1,937 +0,0 @@
-#ifndef __LIB_CONFIG_VXWORKS_H
-#define __LIB_CONFIG_VXWORKS_H
-
-/* =============================================================== */
-/*   lib/config-vxworks.h - Hand crafted config file for VxWorks   */
-/* =============================================================== */
-
-/* when building libcurl itself */
-/* #undef BUILDING_LIBCURL */
-
-/* Location of default ca bundle */
-/* #undef CURL_CA_BUNDLE */
-
-/* Location of default ca path */
-/* #undef CURL_CA_PATH */
-
-/* to disable cookies support */
-/* #undef CURL_DISABLE_COOKIES */
-
-/* to disable cryptographic authentication */
-/* #undef CURL_DISABLE_CRYPTO_AUTH */
-
-/* to disable DICT */
-/* #undef CURL_DISABLE_DICT */
-
-/* to disable FILE */
-/* #undef CURL_DISABLE_FILE */
-
-/* to disable FTP */
-#define CURL_DISABLE_FTP 1
-
-/* to disable HTTP */
-/* #undef CURL_DISABLE_HTTP */
-
-/* to disable LDAP */
-#define CURL_DISABLE_LDAP 1
-
-/* to disable LDAPS */
-#define CURL_DISABLE_LDAPS 1
-
-/* to disable NTLM authentication */
-#define CURL_DISABLE_NTLM 1
-
-/* to disable proxies */
-/* #undef CURL_DISABLE_PROXY */
-
-/* to disable TELNET */
-#define CURL_DISABLE_TELNET 1
-
-/* to disable TFTP */
-#define CURL_DISABLE_TFTP 1
-
-/* to disable verbose strings */
-/* #undef CURL_DISABLE_VERBOSE_STRINGS */
-
-/* to make a symbol visible */
-/* #undef CURL_EXTERN_SYMBOL */
-
-/* to enable hidden symbols */
-/* #undef CURL_HIDDEN_SYMBOLS */
-
-/* W$ LDAP with non-W$ compiler */
-/* #undef CURL_LDAP_HYBRID */
-
-/* Use W$ LDAP implementation */
-/* #undef CURL_LDAP_WIN */
-
-/* when not building a shared library */
-/* #undef CURL_STATICLIB */
-
-/* your Entropy Gathering Daemon socket pathname */
-/* #undef EGD_SOCKET */
-
-/* Define if you want to enable IPv6 support */
-#define ENABLE_IPV6 1
-
-/* Define to the type qualifier of arg 1 for getnameinfo. */
-#define GETNAMEINFO_QUAL_ARG1 const
-
-/* Define to the type of arg 1 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG1 struct sockaddr *
-
-/* Define to the type of arg 2 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG2 socklen_t
-
-/* Define to the type of args 4 and 6 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG46 size_t
-
-/* Define to the type of arg 7 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG7 unsigned int
-
-/* Specifies the number of arguments to getservbyport_r */
-#define GETSERVBYPORT_R_ARGS 6
-
-/* Specifies the size of the buffer to pass to getservbyport_r */
-#define GETSERVBYPORT_R_BUFSIZE 4096
-
-/* Define to 1 if you have the alarm function. */
-#define HAVE_ALARM 1
-
-/* Define to 1 if you have the <alloca.h> header file. */
-#define HAVE_ALLOCA_H 1
-
-/* Define to 1 if you have the <arpa/inet.h> header file. */
-#define HAVE_ARPA_INET_H 1
-
-/* Define to 1 if you have the <arpa/tftp.h> header file. */
-/* #undef HAVE_ARPA_TFTP_H */
-
-/* Define to 1 if you have the <assert.h> header file. */
-#define HAVE_ASSERT_H 1
-
-/* Define to 1 if you have the `basename' function. */
-/* #undef HAVE_BASENAME */
-
-/* Define to 1 if bool is an available type. */
-#define HAVE_BOOL_T 1
-
-/* Define to 1 if you have the clock_gettime function and monotonic timer. */
-/* #undef HAVE_CLOCK_GETTIME_MONOTONIC */
-
-/* Define to 1 if you have the `closesocket' function. */
-/* #undef HAVE_CLOSESOCKET */
-
-/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function. */
-#define HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 1
-
-/* Define to 1 if you have the <crypto.h> header file. */
-/* #undef HAVE_CRYPTO_H */
-
-/* Define to 1 if you have the <des.h> header file. */
-/* #undef HAVE_DES_H */
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#define HAVE_DLFCN_H 1
-
-/* Define to 1 if you have the `ENGINE_load_builtin_engines' function. */
-#define HAVE_ENGINE_LOAD_BUILTIN_ENGINES 1
-
-/* Define to 1 if you have the <errno.h> header file. */
-#define HAVE_ERRNO_H 1
-
-/* Define to 1 if you have the <err.h> header file. */
-/* #undef HAVE_ERR_H */
-
-/* Define to 1 if you have the fcntl function. */
-#define HAVE_FCNTL 1
-
-/* Define to 1 if you have the <fcntl.h> header file. */
-#define HAVE_FCNTL_H 1
-
-/* Define to 1 if you have a working fcntl O_NONBLOCK function. */
-#define HAVE_FCNTL_O_NONBLOCK 1
-
-/* Define to 1 if you have the fdopen function. */
-#define HAVE_FDOPEN 1
-
-/* Define to 1 if you have the `fork' function. */
-#define HAVE_FORK 1
-
-/* Define to 1 if you have the freeaddrinfo function. */
-#define HAVE_FREEADDRINFO 1
-
-/* Define to 1 if you have the freeifaddrs function. */
-#define HAVE_FREEIFADDRS 1
-
-/* Define to 1 if you have the ftruncate function. */
-#define HAVE_FTRUNCATE 1
-
-/* Define to 1 if you have a working getaddrinfo function. */
-#define HAVE_GETADDRINFO 1
-
-/* Define to 1 if you have the `geteuid' function. */
-/* #undef HAVE_GETEUID */
-
-/* Define to 1 if you have the gethostbyaddr function. */
-#define HAVE_GETHOSTBYADDR 1
-
-/* Define to 1 if you have the gethostbyaddr_r function. */
-#define HAVE_GETHOSTBYADDR_R 1
-
-/* gethostbyaddr_r() takes 5 args */
-/* #undef HAVE_GETHOSTBYADDR_R_5 */
-
-/* gethostbyaddr_r() takes 7 args */
-/* #undef HAVE_GETHOSTBYADDR_R_7 */
-
-/* gethostbyaddr_r() takes 8 args */
-#define HAVE_GETHOSTBYADDR_R_8 1
-
-/* Define to 1 if you have the gethostbyname function. */
-#define HAVE_GETHOSTBYNAME 1
-
-/* Define to 1 if you have the gethostbyname_r function. */
-/* #undef HAVE_GETHOSTBYNAME_R */
-
-/* gethostbyname_r() takes 3 args */
-/* #undef HAVE_GETHOSTBYNAME_R_3 */
-
-/* gethostbyname_r() takes 5 args */
-/* #undef HAVE_GETHOSTBYNAME_R_5 */
-
-/* gethostbyname_r() takes 6 args */
-/* #undef HAVE_GETHOSTBYNAME_R_6 */
-
-/* Define to 1 if you have the gethostname function. */
-#define HAVE_GETHOSTNAME 1
-
-/* Define to 1 if you have a working getifaddrs function. */
-/* #undef HAVE_GETIFADDRS */
-
-/* Define to 1 if you have the getnameinfo function. */
-#define HAVE_GETNAMEINFO 1
-
-/* Define to 1 if you have the `getpass_r' function. */
-/* #undef HAVE_GETPASS_R */
-
-/* Define to 1 if you have the `getppid' function. */
-#define HAVE_GETPPID 1
-
-/* Define to 1 if you have the `getprotobyname' function. */
-#define HAVE_GETPROTOBYNAME 1
-
-/* Define to 1 if you have the `getpwuid' function. */
-/* #undef HAVE_GETPWUID */
-
-/* Define to 1 if you have the `getrlimit' function. */
-#define HAVE_GETRLIMIT 1
-
-/* Define to 1 if you have the getservbyport_r function. */
-/* #undef HAVE_GETSERVBYPORT_R */
-
-/* Define to 1 if you have the `gettimeofday' function. */
-/* #undef HAVE_GETTIMEOFDAY */
-
-/* Define to 1 if you have a working glibc-style strerror_r function. */
-/* #undef HAVE_GLIBC_STRERROR_R */
-
-/* Define to 1 if you have a working gmtime_r function. */
-#define HAVE_GMTIME_R 1
-
-/* if you have the gssapi libraries */
-/* #undef HAVE_GSSAPI */
-
-/* Define to 1 if you have the <gssapi/gssapi_generic.h> header file. */
-/* #undef HAVE_GSSAPI_GSSAPI_GENERIC_H */
-
-/* Define to 1 if you have the <gssapi/gssapi.h> header file. */
-/* #undef HAVE_GSSAPI_GSSAPI_H */
-
-/* Define to 1 if you have the <gssapi/gssapi_krb5.h> header file. */
-/* #undef HAVE_GSSAPI_GSSAPI_KRB5_H */
-
-/* if you have the GNU gssapi libraries */
-/* #undef HAVE_GSSGNU */
-
-/* if you have the Heimdal gssapi libraries */
-/* #undef HAVE_GSSHEIMDAL */
-
-/* if you have the MIT gssapi libraries */
-/* #undef HAVE_GSSMIT */
-
-/* Define to 1 if you have the `idna_strerror' function. */
-/* #undef HAVE_IDNA_STRERROR */
-
-/* Define to 1 if you have the `idn_free' function. */
-/* #undef HAVE_IDN_FREE */
-
-/* Define to 1 if you have the <idn-free.h> header file. */
-/* #undef HAVE_IDN_FREE_H */
-
-/* Define to 1 if you have the <ifaddrs.h> header file. */
-/* #undef HAVE_IFADDRS_H */
-
-/* Define to 1 if you have the `inet_addr' function. */
-#define HAVE_INET_ADDR 1
-
-/* Define to 1 if you have the inet_ntoa_r function. */
-/* #undef HAVE_INET_NTOA_R */
-
-/* inet_ntoa_r() takes 2 args */
-/* #undef HAVE_INET_NTOA_R_2 */
-
-/* inet_ntoa_r() takes 3 args */
-/* #undef HAVE_INET_NTOA_R_3 */
-
-/* Define to 1 if you have a IPv6 capable working inet_ntop function. */
-/* #undef HAVE_INET_NTOP */
-
-/* Define to 1 if you have a IPv6 capable working inet_pton function. */
-/* #undef HAVE_INET_PTON */
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#define HAVE_INTTYPES_H 1
-
-/* Define to 1 if you have the ioctl function. */
-#define HAVE_IOCTL 1
-
-/* Define to 1 if you have the ioctlsocket function. */
-/* #undef HAVE_IOCTLSOCKET */
-
-/* Define to 1 if you have the IoctlSocket camel case function. */
-/* #undef HAVE_IOCTLSOCKET_CAMEL */
-
-/* Define to 1 if you have a working IoctlSocket camel case FIONBIO function.
-   */
-/* #undef HAVE_IOCTLSOCKET_CAMEL_FIONBIO */
-
-/* Define to 1 if you have a working ioctlsocket FIONBIO function. */
-/* #undef HAVE_IOCTLSOCKET_FIONBIO */
-
-/* Define to 1 if you have a working ioctl FIONBIO function. */
-#define HAVE_IOCTL_FIONBIO 1
-
-/* Define to 1 if you have a working ioctl SIOCGIFADDR function. */
-#define HAVE_IOCTL_SIOCGIFADDR 1
-
-/* Define to 1 if you have the <io.h> header file. */
-#define HAVE_IO_H 1
-
-/* if you have the Kerberos4 libraries (including -ldes) */
-/* #undef HAVE_KRB4 */
-
-/* Define to 1 if you have the `krb_get_our_ip_for_realm' function. */
-/* #undef HAVE_KRB_GET_OUR_IP_FOR_REALM */
-
-/* Define to 1 if you have the <krb.h> header file. */
-/* #undef HAVE_KRB_H */
-
-/* Define to 1 if you have the lber.h header file. */
-/* #undef HAVE_LBER_H */
-
-/* Define to 1 if you have the ldapssl.h header file. */
-/* #undef HAVE_LDAPSSL_H */
-
-/* Define to 1 if you have the ldap.h header file. */
-/* #undef HAVE_LDAP_H */
-
-/* Use LDAPS implementation */
-/* #undef HAVE_LDAP_SSL */
-
-/* Define to 1 if you have the ldap_ssl.h header file. */
-/* #undef HAVE_LDAP_SSL_H */
-
-/* Define to 1 if you have the `ldap_url_parse' function. */
-/* #undef HAVE_LDAP_URL_PARSE */
-
-/* Define to 1 if you have the <libgen.h> header file. */
-/* #undef HAVE_LIBGEN_H */
-
-/* Define to 1 if you have the `idn' library (-lidn). */
-/* #undef HAVE_LIBIDN */
-
-/* Define to 1 if you have the `resolv' library (-lresolv). */
-/* #undef HAVE_LIBRESOLV */
-
-/* Define to 1 if you have the `resolve' library (-lresolve). */
-/* #undef HAVE_LIBRESOLVE */
-
-/* Define to 1 if you have the `socket' library (-lsocket). */
-/* #undef HAVE_LIBSOCKET */
-
-/* Define to 1 if you have the `ssh2' library (-lssh2). */
-/* #undef HAVE_LIBSSH2 */
-
-/* Define to 1 if you have the <libssh2.h> header file. */
-/* #undef HAVE_LIBSSH2_H */
-
-/* Define to 1 if you have the `libssh2_version' function. */
-/* #undef HAVE_LIBSSH2_VERSION */
-
-/* Define to 1 if you have the `ssl' library (-lssl). */
-#define HAVE_LIBSSL 1
-
-/* if zlib is available */
-#define HAVE_LIBZ 1
-
-/* Define to 1 if you have the <limits.h> header file. */
-#define HAVE_LIMITS_H 1
-
-/* if your compiler supports LL */
-#define HAVE_LL 1
-
-/* Define to 1 if you have the <locale.h> header file. */
-#define HAVE_LOCALE_H 1
-
-/* Define to 1 if you have a working localtime_r function. */
-#define HAVE_LOCALTIME_R 1
-
-/* Define to 1 if the compiler supports the 'long long' data type. */
-#define HAVE_LONGLONG 1
-
-/* Define to 1 if you have the malloc.h header file. */
-#define HAVE_MALLOC_H 1
-
-/* Define to 1 if you have the memory.h header file. */
-#define HAVE_MEMORY_H 1
-
-/* Define to 1 if you have the MSG_NOSIGNAL flag. */
-/* #undef HAVE_MSG_NOSIGNAL */
-
-/* Define to 1 if you have the <netdb.h> header file. */
-#define HAVE_NETDB_H 1
-
-/* Define to 1 if you have the <netinet/in.h> header file. */
-#define HAVE_NETINET_IN_H 1
-
-/* Define to 1 if you have the <netinet/tcp.h> header file. */
-#define HAVE_NETINET_TCP_H 1
-
-/* Define to 1 if you have the <net/if.h> header file. */
-#define HAVE_NET_IF_H 1
-
-/* Define to 1 if NI_WITHSCOPEID exists and works. */
-/* #undef HAVE_NI_WITHSCOPEID */
-
-/* if you have an old MIT gssapi library, lacking GSS_C_NT_HOSTBASED_SERVICE
-   */
-/* #undef HAVE_OLD_GSSMIT */
-
-/* Define to 1 if you have the <openssl/crypto.h> header file. */
-#define HAVE_OPENSSL_CRYPTO_H 1
-
-/* Define to 1 if you have the <openssl/engine.h> header file. */
-#define HAVE_OPENSSL_ENGINE_H 1
-
-/* Define to 1 if you have the <openssl/err.h> header file. */
-#define HAVE_OPENSSL_ERR_H 1
-
-/* Define to 1 if you have the <openssl/pem.h> header file. */
-#define HAVE_OPENSSL_PEM_H 1
-
-/* Define to 1 if you have the <openssl/pkcs12.h> header file. */
-#define HAVE_OPENSSL_PKCS12_H 1
-
-/* Define to 1 if you have the <openssl/rsa.h> header file. */
-#define HAVE_OPENSSL_RSA_H 1
-
-/* Define to 1 if you have the <openssl/ssl.h> header file. */
-#define HAVE_OPENSSL_SSL_H 1
-
-/* Define to 1 if you have the <openssl/x509.h> header file. */
-#define HAVE_OPENSSL_X509_H 1
-
-/* Define to 1 if you have the <pem.h> header file. */
-/* #undef HAVE_PEM_H */
-
-/* Define to 1 if you have the `perror' function. */
-#define HAVE_PERROR 1
-
-/* Define to 1 if you have the `pipe' function. */
-#define HAVE_PIPE 1
-
-/* if you have the function PK11_CreateGenericObject */
-/* #undef HAVE_PK11_CREATEGENERICOBJECT */
-
-/* Define to 1 if you have a working poll function. */
-/* #undef HAVE_POLL */
-
-/* If you have a fine poll */
-/* #undef HAVE_POLL_FINE */
-
-/* Define to 1 if you have the <poll.h> header file. */
-/* #undef HAVE_POLL_H */
-
-/* Define to 1 if you have a working POSIX-style strerror_r function. */
-/* #undef HAVE_POSIX_STRERROR_R */
-
-/* Define to 1 if you have the <pwd.h> header file. */
-/* #undef HAVE_PWD_H */
-
-/* Define to 1 if you have the `RAND_egd' function. */
-#define HAVE_RAND_EGD 1
-
-/* Define to 1 if you have the `RAND_screen' function. */
-/* #undef HAVE_RAND_SCREEN */
-
-/* Define to 1 if you have the `RAND_status' function. */
-#define HAVE_RAND_STATUS 1
-
-/* Define to 1 if you have the recv function. */
-#define HAVE_RECV 1
-
-/* Define to 1 if you have the recvfrom function. */
-#define HAVE_RECVFROM 1
-
-/* Define to 1 if you have the <rsa.h> header file. */
-/* #undef HAVE_RSA_H */
-
-/* Define to 1 if you have the select function. */
-#define HAVE_SELECT 1
-
-/* Define to 1 if you have the send function. */
-#define HAVE_SEND 1
-
-/* Define to 1 if you have the <setjmp.h> header file. */
-#define HAVE_SETJMP_H 1
-
-/* Define to 1 if you have the `setlocale' function. */
-#define HAVE_SETLOCALE 1
-
-/* Define to 1 if you have the `setmode' function. */
-#define HAVE_SETMODE 1
-
-/* Define to 1 if you have the `setrlimit' function. */
-#define HAVE_SETRLIMIT 1
-
-/* Define to 1 if you have the setsockopt function. */
-#define HAVE_SETSOCKOPT 1
-
-/* Define to 1 if you have a working setsockopt SO_NONBLOCK function. */
-/* #undef HAVE_SETSOCKOPT_SO_NONBLOCK */
-
-/* Define to 1 if you have the <sgtty.h> header file. */
-/* #undef HAVE_SGTTY_H */
-
-/* Define to 1 if you have the sigaction function. */
-#define HAVE_SIGACTION 1
-
-/* Define to 1 if you have the siginterrupt function. */
-#define HAVE_SIGINTERRUPT 1
-
-/* Define to 1 if you have the signal function. */
-#define HAVE_SIGNAL 1
-
-/* Define to 1 if you have the <signal.h> header file. */
-#define HAVE_SIGNAL_H 1
-
-/* Define to 1 if you have the sigsetjmp function or macro. */
-/* #undef HAVE_SIGSETJMP */
-
-/* Define to 1 if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T 1
-
-/* Define to 1 if sig_atomic_t is already defined as volatile. */
-/* #undef HAVE_SIG_ATOMIC_T_VOLATILE */
-
-/* Define to 1 if struct sockaddr_in6 has the sin6_scope_id member */
-#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
-
-/* Define to 1 if you have the `socket' function. */
-#define HAVE_SOCKET 1
-
-/* Define this if you have the SPNEGO library fbopenssl */
-/* #undef HAVE_SPNEGO */
-
-/* Define to 1 if you have the `SSL_get_shutdown' function. */
-#define HAVE_SSL_GET_SHUTDOWN 1
-
-/* Define to 1 if you have the <ssl.h> header file. */
-/* #undef HAVE_SSL_H */
-
-/* Define to 1 if you have the <stdbool.h> header file. */
-#define HAVE_STDBOOL_H 1
-
-/* Define to 1 if you have the <stdint.h> header file. */
-/* #undef HAVE_STDINT_H */
-
-/* Define to 1 if you have the <stdio.h> header file. */
-#define HAVE_STDIO_H 1
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#define HAVE_STDLIB_H 1
-
-/* Define to 1 if you have the strcasecmp function. */
-#define HAVE_STRCASECMP 1
-
-/* Define to 1 if you have the strcasestr function. */
-/* #undef HAVE_STRCASESTR */
-
-/* Define to 1 if you have the strcmpi function. */
-/* #undef HAVE_STRCMPI */
-
-/* Define to 1 if you have the strdup function. */
-#define HAVE_STRDUP 1
-
-/* Define to 1 if you have the strerror_r function. */
-#define HAVE_STRERROR_R 1
-
-/* Define to 1 if you have the stricmp function. */
-/* #undef HAVE_STRICMP */
-
-/* Define to 1 if you have the <strings.h> header file. */
-#define HAVE_STRINGS_H 1
-
-/* Define to 1 if you have the <string.h> header file. */
-#define HAVE_STRING_H 1
-
-/* Define to 1 if you have the strlcat function. */
-/* #undef HAVE_STRLCAT */
-
-/* Define to 1 if you have the `strlcpy' function. */
-/* #undef HAVE_STRLCPY */
-
-/* Define to 1 if you have the strncasecmp function. */
-#define HAVE_STRNCASECMP 1
-
-/* Define to 1 if you have the strncmpi function. */
-/* #undef HAVE_STRNCMPI */
-
-/* Define to 1 if you have the strnicmp function. */
-/* #undef HAVE_STRNICMP */
-
-/* Define to 1 if you have the <stropts.h> header file. */
-/* #undef HAVE_STROPTS_H */
-
-/* Define to 1 if you have the strstr function. */
-#define HAVE_STRSTR 1
-
-/* Define to 1 if you have the strtok_r function. */
-#define HAVE_STRTOK_R 1
-
-/* Define to 1 if you have the strtoll function. */
-/* #undef HAVE_STRTOLL */
-
-/* if struct sockaddr_storage is defined */
-#define HAVE_STRUCT_SOCKADDR_STORAGE 1
-
-/* Define to 1 if you have the timeval struct. */
-#define HAVE_STRUCT_TIMEVAL 1
-
-/* Define to 1 if you have the <sys/filio.h> header file. */
-/* #undef HAVE_SYS_FILIO_H */
-
-/* Define to 1 if you have the <sys/ioctl.h> header file. */
-#define HAVE_SYS_IOCTL_H 1
-
-/* Define to 1 if you have the <sys/param.h> header file. */
-/* #undef HAVE_SYS_PARAM_H */
-
-/* Define to 1 if you have the <sys/poll.h> header file. */
-/* #undef HAVE_SYS_POLL_H */
-
-/* Define to 1 if you have the <sys/resource.h> header file. */
-#define HAVE_SYS_RESOURCE_H 1
-
-/* Define to 1 if you have the <sys/select.h> header file. */
-/* #undef HAVE_SYS_SELECT_H */
-
-/* Define to 1 if you have the <sys/socket.h> header file. */
-#define HAVE_SYS_SOCKET_H 1
-
-/* Define to 1 if you have the <sys/sockio.h> header file. */
-/* #undef HAVE_SYS_SOCKIO_H */
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#define HAVE_SYS_STAT_H 1
-
-/* Define to 1 if you have the <sys/time.h> header file. */
-/* #undef HAVE_SYS_TIME_H */
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#define HAVE_SYS_TYPES_H 1
-
-/* Define to 1 if you have the <sys/uio.h> header file. */
-#define HAVE_SYS_UIO_H 1
-
-/* Define to 1 if you have the <sys/un.h> header file. */
-#define HAVE_SYS_UN_H 1
-
-/* Define to 1 if you have the <sys/utime.h> header file. */
-#define HAVE_SYS_UTIME_H 1
-
-/* Define to 1 if you have the <termios.h> header file. */
-#define HAVE_TERMIOS_H 1
-
-/* Define to 1 if you have the <termio.h> header file. */
-#define HAVE_TERMIO_H 1
-
-/* Define to 1 if you have the <time.h> header file. */
-#define HAVE_TIME_H 1
-
-/* Define to 1 if you have the <tld.h> header file. */
-/* #undef HAVE_TLD_H */
-
-/* Define to 1 if you have the `tld_strerror' function. */
-/* #undef HAVE_TLD_STRERROR */
-
-/* Define to 1 if you have the `uname' function. */
-#define HAVE_UNAME 1
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#define HAVE_UNISTD_H 1
-
-/* Define to 1 if you have the `utime' function. */
-#define HAVE_UTIME 1
-
-/* Define to 1 if you have the <utime.h> header file. */
-#define HAVE_UTIME_H 1
-
-/* Define to 1 if compiler supports C99 variadic macro style. */
-#define HAVE_VARIADIC_MACROS_C99 1
-
-/* Define to 1 if compiler supports old gcc variadic macro style. */
-#define HAVE_VARIADIC_MACROS_GCC 1
-
-/* Define to 1 if you have a working vxworks-style strerror_r function. */
-#define HAVE_VXWORKS_STRERROR_R 1
-
-/* Define to 1 if you have the winber.h header file. */
-/* #undef HAVE_WINBER_H */
-
-/* Define to 1 if you have the windows.h header file. */
-/* #undef HAVE_WINDOWS_H */
-
-/* Define to 1 if you have the winldap.h header file. */
-/* #undef HAVE_WINLDAP_H */
-
-/* Define to 1 if you have the winsock2.h header file. */
-/* #undef HAVE_WINSOCK2_H */
-
-/* Define to 1 if you have the winsock.h header file. */
-/* #undef HAVE_WINSOCK_H */
-
-/* Define this symbol if your OS supports changing the contents of argv */
-#define HAVE_WRITABLE_ARGV 1
-
-/* Define to 1 if you have the writev function. */
-#define HAVE_WRITEV 1
-
-/* Define to 1 if you have the ws2tcpip.h header file. */
-/* #undef HAVE_WS2TCPIP_H */
-
-/* Define to 1 if you have the <x509.h> header file. */
-/* #undef HAVE_X509_H */
-
-/* if you have the zlib.h header file */
-#define HAVE_ZLIB_H 1
-
-/* Define to 1 if you are building a native Windows target. */
-/* #undef NATIVE_WINDOWS */
-
-/* Define to 1 if you need the lber.h header file even with ldap.h */
-/* #undef NEED_LBER_H */
-
-/* Define to 1 if you need the malloc.h header file even with stdlib.h */
-/* #undef NEED_MALLOC_H */
-
-/* Define to 1 if you need the memory.h header file even with stdlib.h */
-/* #undef NEED_MEMORY_H */
-
-/* Define to 1 if _REENTRANT preprocessor symbol must be defined. */
-/* #undef NEED_REENTRANT */
-
-/* Define to 1 if _THREAD_SAFE preprocessor symbol must be defined. */
-/* #undef NEED_THREAD_SAFE */
-
-/* Define to 1 if the open function requires three arguments. */
-#define OPEN_NEEDS_ARG3 1
-
-/* cpu-machine-OS */
-#define OS "unknown-unknown-vxworks"
-
-/* Name of package */
-#define PACKAGE "curl"
-
-/* a suitable file to read random data from */
-#define RANDOM_FILE "/dev/urandom"
-
-/* Define to the type of arg 1 for recvfrom. */
-#define RECVFROM_TYPE_ARG1 int
-
-/* Define to the type pointed by arg 2 for recvfrom. */
-#define RECVFROM_TYPE_ARG2 void
-
-/* Define to 1 if the type pointed by arg 2 for recvfrom is void. */
-#define RECVFROM_TYPE_ARG2_IS_VOID 1
-
-/* Define to the type of arg 3 for recvfrom. */
-#define RECVFROM_TYPE_ARG3 size_t
-
-/* Define to the type of arg 4 for recvfrom. */
-#define RECVFROM_TYPE_ARG4 int
-
-/* Define to the type pointed by arg 5 for recvfrom. */
-#define RECVFROM_TYPE_ARG5 struct sockaddr
-
-/* Define to 1 if the type pointed by arg 5 for recvfrom is void. */
-/* #undef RECVFROM_TYPE_ARG5_IS_VOID */
-
-/* Define to the type pointed by arg 6 for recvfrom. */
-#define RECVFROM_TYPE_ARG6 socklen_t
-
-/* Define to 1 if the type pointed by arg 6 for recvfrom is void. */
-/* #undef RECVFROM_TYPE_ARG6_IS_VOID */
-
-/* Define to the function return type for recvfrom. */
-#define RECVFROM_TYPE_RETV int
-
-/* Define to the type of arg 1 for recv. */
-#define RECV_TYPE_ARG1 int
-
-/* Define to the type of arg 2 for recv. */
-#define RECV_TYPE_ARG2 void *
-
-/* Define to the type of arg 3 for recv. */
-#define RECV_TYPE_ARG3 size_t
-
-/* Define to the type of arg 4 for recv. */
-#define RECV_TYPE_ARG4 int
-
-/* Define to the function return type for recv. */
-#define RECV_TYPE_RETV int
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#define RETSIGTYPE void
-
-/* Define to the type qualifier of arg 5 for select. */
-#define SELECT_QUAL_ARG5
-
-/* Define to the type of arg 1 for select. */
-#define SELECT_TYPE_ARG1 int
-
-/* Define to the type of args 2, 3 and 4 for select. */
-#define SELECT_TYPE_ARG234 fd_set *
-
-/* Define to the type of arg 5 for select. */
-#define SELECT_TYPE_ARG5 struct timeval *
-
-/* Define to the function return type for select. */
-#define SELECT_TYPE_RETV int
-
-/* Define to the type qualifier of arg 2 for send. */
-#define SEND_QUAL_ARG2 const
-
-/* Define to the type of arg 1 for send. */
-#define SEND_TYPE_ARG1 int
-
-/* Define to the type of arg 2 for send. */
-#define SEND_TYPE_ARG2 void *
-
-/* Define to the type of arg 3 for send. */
-#define SEND_TYPE_ARG3 size_t
-
-/* Define to the type of arg 4 for send. */
-#define SEND_TYPE_ARG4 int
-
-/* Define to the function return type for send. */
-#define SEND_TYPE_RETV int
-
-/* The size of `int', as computed by sizeof. */
-#define SIZEOF_INT 4
-
-/* The size of `long', as computed by sizeof. */
-#define SIZEOF_LONG 4
-
-/* The size of `off_t', as computed by sizeof. */
-#define SIZEOF_OFF_T 8
-
-/* The size of `short', as computed by sizeof. */
-#define SIZEOF_SHORT 2
-
-/* The size of `size_t', as computed by sizeof. */
-#define SIZEOF_SIZE_T 4
-
-/* The size of `time_t', as computed by sizeof. */
-#define SIZEOF_TIME_T 4
-
-/* The size of `void*', as computed by sizeof. */
-#define SIZEOF_VOIDP 4
-
-/* Define to 1 if you have the ANSI C header files. */
-#define STDC_HEADERS 1
-
-/* Define to the type of arg 3 for strerror_r. */
-/* #undef STRERROR_R_TYPE_ARG3 */
-
-/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-/* #undef TIME_WITH_SYS_TIME */
-
-/* Define if you want to enable c-ares support */
-/* #undef USE_ARES */
-
-/* Define to disable non-blocking sockets. */
-/* #undef USE_BLOCKING_SOCKETS */
-
-/* if GnuTLS is enabled */
-/* #undef USE_GNUTLS */
-
-/* if libSSH2 is in use */
-/* #undef USE_LIBSSH2 */
-
-/* If you want to build curl with the built-in manual */
-#define USE_MANUAL 1
-
-/* if NSS is enabled */
-/* #undef USE_NSS */
-
-/* if OpenSSL is in use */
-#define USE_OPENSSL 1
-
-/* if SSL is enabled */
-#define USE_SSLEAY 1
-
-/* Define to 1 if you are building a Windows target without large file
-   support. */
-/* #undef USE_WIN32_LARGE_FILES */
-
-/* to enable SSPI support */
-/* #undef USE_WINDOWS_SSPI */
-
-/* Define to 1 if using yaSSL in OpenSSL compatibility mode. */
-/* #undef USE_YASSLEMUL */
-
-/* Define to avoid automatic inclusion of winsock.h */
-/* #undef WIN32_LEAN_AND_MEAN */
-
-/* Define to 1 if OS is AIX. */
-#ifndef _ALL_SOURCE
-/* #  undef _ALL_SOURCE */
-#endif
-
-/* Number of bits in a file offset, on hosts where this is settable. */
-/* #undef _FILE_OFFSET_BITS */
-
-/* Define for large files, on AIX-style hosts. */
-/* #undef _LARGE_FILES */
-
-/* Define to empty if `const' does not conform to ANSI C. */
-/* #undef const */
-
-/* Type to use in place of in_addr_t when system does not provide it. */
-/* #undef in_addr_t */
-
-/* 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 `unsigned int' if <sys/types.h> does not define. */
-/* #undef size_t */
-
-/* the signed version of size_t */
-/* #undef ssize_t */
-
-#endif /* __LIB_CONFIG_VXWORKS_H */
diff --git a/src/other/curl/lib/config-win32.h b/src/other/curl/lib/config-win32.h
deleted file mode 100644
index aa4a212..0000000
--- a/src/other/curl/lib/config-win32.h
+++ /dev/null
@@ -1,579 +0,0 @@
-#ifndef __LIB_CONFIG_WIN32_H
-#define __LIB_CONFIG_WIN32_H
-
-/* ================================================================ */
-/*    lib/config-win32.h - Hand crafted config file for Windows     */
-/* ================================================================ */
-
-/* ---------------------------------------------------------------- */
-/*                          HEADER FILES                            */
-/* ---------------------------------------------------------------- */
-
-/* Define if you have the <arpa/inet.h> header file.  */
-/* #define HAVE_ARPA_INET_H 1 */
-
-/* Define if you have the <assert.h> header file.  */
-#define HAVE_ASSERT_H 1
-
-/* Define if you have the <crypto.h> header file.  */
-/* #define HAVE_CRYPTO_H 1 */
-
-/* Define if you have the <err.h> header file.  */
-/* #define HAVE_ERR_H 1 */
-
-/* Define if you have the <fcntl.h> header file.  */
-#define HAVE_FCNTL_H 1
-
-/* Define if you have the <getopt.h> header file.  */
-/* #define HAVE_GETOPT_H 1 */
-
-/* Define if you have the <io.h> header file.  */
-#define HAVE_IO_H 1
-
-/* Define if you have the <limits.h> header file.  */
-#define HAVE_LIMITS_H 1
-
-/* Define if you need the malloc.h header file even with stdlib.h  */
-#if !defined(__SALFORDC__) && !defined(__POCC__)
-#define NEED_MALLOC_H 1
-#endif
-
-/* Define if you have the <netdb.h> header file.  */
-/* #define HAVE_NETDB_H 1 */
-
-/* Define if you have the <netinet/in.h> header file.  */
-/* #define HAVE_NETINET_IN_H 1 */
-
-/* Define if you have the <process.h> header file.  */
-#ifndef __SALFORDC__
-#define HAVE_PROCESS_H 1
-#endif
-
-/* Define if you have the <signal.h> header file. */
-#define HAVE_SIGNAL_H 1
-
-/* Define if you have the <sgtty.h> header file.  */
-/* #define HAVE_SGTTY_H 1 */
-
-/* Define if you have the <ssl.h> header file.  */
-/* #define HAVE_SSL_H 1 */
-
-/* Define if you have the <stdlib.h> header file.  */
-#define HAVE_STDLIB_H 1
-
-/* Define if you have the <sys/param.h> header file.  */
-/* #define HAVE_SYS_PARAM_H 1 */
-
-/* Define if you have the <sys/select.h> header file.  */
-/* #define HAVE_SYS_SELECT_H 1 */
-
-/* Define if you have the <sys/socket.h> header file.  */
-/* #define HAVE_SYS_SOCKET_H 1 */
-
-/* Define if you have the <sys/sockio.h> header file.  */
-/* #define HAVE_SYS_SOCKIO_H 1 */
-
-/* Define if you have the <sys/stat.h> header file.  */
-#define HAVE_SYS_STAT_H 1
-
-/* Define if you have the <sys/time.h> header file */
-/* #define HAVE_SYS_TIME_H 1 */
-
-/* Define if you have the <sys/types.h> header file.  */
-#define HAVE_SYS_TYPES_H 1
-
-/* Define if you have the <sys/utime.h> header file.  */
-#ifndef __BORLANDC__
-#define HAVE_SYS_UTIME_H 1
-#endif
-
-/* Define if you have the <termio.h> header file.  */
-/* #define HAVE_TERMIO_H 1 */
-
-/* Define if you have the <termios.h> header file.  */
-/* #define HAVE_TERMIOS_H 1 */
-
-/* Define if you have the <time.h> header file.  */
-#define HAVE_TIME_H 1
-
-/* Define if you have the <unistd.h> header file.  */
-#if defined(__MINGW32__) || defined(__WATCOMC__) || defined(__LCC__) || \
-    defined(__POCC__)
-#define HAVE_UNISTD_H 1
-#endif
-
-/* Define if you have the <windows.h> header file.  */
-#define HAVE_WINDOWS_H 1
-
-/* Define if you have the <winsock.h> header file.  */
-#define HAVE_WINSOCK_H 1
-
-/* Define if you have the <winsock2.h> header file.  */
-#ifndef __SALFORDC__
-#define HAVE_WINSOCK2_H 1
-#endif
-
-/* Define if you have the <ws2tcpip.h> header file.  */
-#ifndef __SALFORDC__
-#define HAVE_WS2TCPIP_H 1
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                        OTHER HEADER INFO                         */
-/* ---------------------------------------------------------------- */
-
-/* Define if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T 1
-
-/* Define if you have the ANSI C header files.  */
-#define STDC_HEADERS 1
-
-/* Define if you can safely include both <sys/time.h> and <time.h>.  */
-/* #define TIME_WITH_SYS_TIME 1 */
-
-/* ---------------------------------------------------------------- */
-/*                             FUNCTIONS                            */
-/* ---------------------------------------------------------------- */
-
-/* Define if you have the closesocket function.  */
-#define HAVE_CLOSESOCKET 1
-
-/* Define if you don't have vprintf but do have _doprnt.  */
-/* #define HAVE_DOPRNT 1 */
-
-/* Define if you have the gethostbyaddr function.  */
-#define HAVE_GETHOSTBYADDR 1
-
-/* Define if you have the gethostname function.  */
-#define HAVE_GETHOSTNAME 1
-
-/* Define if you have the getpass function.  */
-/* #define HAVE_GETPASS 1 */
-
-/* Define if you have the getservbyname function.  */
-#define HAVE_GETSERVBYNAME 1
-
-/* Define if you have the getprotobyname function.  */
-#define HAVE_GETPROTOBYNAME
-
-/* Define if you have the gettimeofday function.  */
-/* #define HAVE_GETTIMEOFDAY 1 */
-
-/* Define if you have the inet_addr function.  */
-#define HAVE_INET_ADDR 1
-
-/* Define if you have the ioctlsocket function. */
-#define HAVE_IOCTLSOCKET 1
-
-/* Define if you have a working ioctlsocket FIONBIO function. */
-#define HAVE_IOCTLSOCKET_FIONBIO 1
-
-/* Define if you have the perror function.  */
-#define HAVE_PERROR 1
-
-/* Define if you have the RAND_screen function when using SSL  */
-#define HAVE_RAND_SCREEN 1
-
-/* Define if you have the `RAND_status' function when using SSL. */
-#define HAVE_RAND_STATUS 1
-
-/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function.
-   This is present in OpenSSL versions after 0.9.6b */
-#define HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 1
-
-/* Define if you have the select function.  */
-#define HAVE_SELECT 1
-
-/* Define if you have the setvbuf function.  */
-#define HAVE_SETVBUF 1
-
-/* Define if you have the socket function.  */
-#define HAVE_SOCKET 1
-
-/* Define if you have the strcasecmp function.  */
-/* #define HAVE_STRCASECMP 1 */
-
-/* Define if you have the strdup function.  */
-#define HAVE_STRDUP 1
-
-/* Define if you have the strftime function.  */
-#define HAVE_STRFTIME 1
-
-/* Define if you have the stricmp function. */
-#define HAVE_STRICMP 1
-
-/* Define if you have the strncasecmp function. */
-/* #define HAVE_STRNCASECMP 1 */
-
-/* Define if you have the strnicmp function. */
-#define HAVE_STRNICMP 1
-
-/* Define if you have the strstr function.  */
-#define HAVE_STRSTR 1
-
-/* Define if you have the strtoll function.  */
-#if defined(__MINGW32__) || defined(__WATCOMC__) || defined(__POCC__)
-#define HAVE_STRTOLL 1
-#endif
-
-/* Define if you have the tcgetattr function.  */
-/* #define HAVE_TCGETATTR 1 */
-
-/* Define if you have the tcsetattr function.  */
-/* #define HAVE_TCSETATTR 1 */
-
-/* Define if you have the utime function */
-#ifndef __BORLANDC__
-#define HAVE_UTIME 1
-#endif
-
-/* Define to the type qualifier of arg 1 for getnameinfo. */
-#define GETNAMEINFO_QUAL_ARG1 const
-
-/* Define to the type of arg 1 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG1 struct sockaddr *
-
-/* Define to the type of arg 2 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG2 socklen_t
-
-/* Define to the type of args 4 and 6 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG46 DWORD
-
-/* Define to the type of arg 7 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG7 int
-
-/* Define if you have the recv function. */
-#define HAVE_RECV 1
-
-/* Define to the type of arg 1 for recv. */
-#define RECV_TYPE_ARG1 SOCKET
-
-/* Define to the type of arg 2 for recv. */
-#define RECV_TYPE_ARG2 char *
-
-/* Define to the type of arg 3 for recv. */
-#define RECV_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for recv. */
-#define RECV_TYPE_ARG4 int
-
-/* Define to the function return type for recv. */
-#define RECV_TYPE_RETV int
-
-/* Define if you have the recvfrom function. */
-#define HAVE_RECVFROM 1
-
-/* Define to the type of arg 1 for recvfrom. */
-#define RECVFROM_TYPE_ARG1 SOCKET
-
-/* Define to the type pointed by arg 2 for recvfrom. */
-#define RECVFROM_TYPE_ARG2 char
-
-/* Define to the type of arg 3 for recvfrom. */
-#define RECVFROM_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for recvfrom. */
-#define RECVFROM_TYPE_ARG4 int
-
-/* Define to the type pointed by arg 5 for recvfrom. */
-#define RECVFROM_TYPE_ARG5 struct sockaddr
-
-/* Define to the type pointed by arg 6 for recvfrom. */
-#define RECVFROM_TYPE_ARG6 int
-
-/* Define to the function return type for recvfrom. */
-#define RECVFROM_TYPE_RETV int
-
-/* Define if you have the send function. */
-#define HAVE_SEND 1
-
-/* Define to the type of arg 1 for send. */
-#define SEND_TYPE_ARG1 SOCKET
-
-/* Define to the type qualifier of arg 2 for send. */
-#define SEND_QUAL_ARG2 const
-
-/* Define to the type of arg 2 for send. */
-#define SEND_TYPE_ARG2 char *
-
-/* Define to the type of arg 3 for send. */
-#define SEND_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for send. */
-#define SEND_TYPE_ARG4 int
-
-/* Define to the function return type for send. */
-#define SEND_TYPE_RETV int
-
-/* ---------------------------------------------------------------- */
-/*                       TYPEDEF REPLACEMENTS                       */
-/* ---------------------------------------------------------------- */
-
-/* Define this if in_addr_t is not an available 'typedefed' type */
-#define in_addr_t unsigned long
-
-/* Define as the return type of signal handlers (int or void).  */
-#define RETSIGTYPE void
-
-/* Define ssize_t if it is not an available 'typedefed' type */
-#ifndef _SSIZE_T_DEFINED
-#  if (defined(__WATCOMC__) && (__WATCOMC__ >= 1240)) || \
-      defined(__POCC__) || \
-      defined(__MINGW32__)
-#  elif defined(_WIN64)
-#    define _SSIZE_T_DEFINED
-#    define ssize_t __int64
-#  else
-#    define _SSIZE_T_DEFINED
-#    define ssize_t int
-#  endif
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                            TYPE SIZES                            */
-/* ---------------------------------------------------------------- */
-
-/* The size of `int', as computed by sizeof. */
-#define SIZEOF_INT 4
-
-/* The size of `long double', as computed by sizeof. */
-#define SIZEOF_LONG_DOUBLE 16
-
-/* The size of `long long', as computed by sizeof. */
-/* #define SIZEOF_LONG_LONG 8 */
-
-/* The size of `short', as computed by sizeof. */
-#define SIZEOF_SHORT 2
-
-/* ---------------------------------------------------------------- */
-/*                          STRUCT RELATED                          */
-/* ---------------------------------------------------------------- */
-
-/* Define this if you have struct sockaddr_storage */
-#ifndef __SALFORDC__
-#define HAVE_STRUCT_SOCKADDR_STORAGE 1
-#endif
-
-/* Define this if you have struct timeval */
-#define HAVE_STRUCT_TIMEVAL 1
-
-/* ---------------------------------------------------------------- */
-/*                        Watt-32 tcp/ip SPECIFIC                   */
-/* ---------------------------------------------------------------- */
-
-#ifdef USE_WATT32
-  #include <tcp.h>
-  #undef byte
-  #undef word
-  #undef USE_WINSOCK
-  #undef HAVE_WINSOCK_H
-  #undef HAVE_WINSOCK2_H
-  #undef HAVE_WS2TCPIP_H
-  #define HAVE_GETADDRINFO
-  #define HAVE_GETNAMEINFO
-  #define HAVE_SYS_IOCTL_H
-  #define HAVE_SYS_SOCKET_H
-  #define HAVE_NETINET_IN_H
-  #define HAVE_NETDB_H
-  #define HAVE_ARPA_INET_H
-  #define HAVE_FREEADDRINFO
-  #define SOCKET int
-#endif
-
-
-/* ---------------------------------------------------------------- */
-/*                        COMPILER SPECIFIC                         */
-/* ---------------------------------------------------------------- */
-
-/* Undef keyword 'const' if it does not work.  */
-/* #undef const */
-
-/* Windows should not have HAVE_GMTIME_R defined */
-/* #undef HAVE_GMTIME_R */
-
-/* Define if the compiler supports C99 variadic macro style. */
-#if defined(_MSC_VER) && (_MSC_VER >= 1400)
-#define HAVE_VARIADIC_MACROS_C99 1
-#endif
-
-/* Define if the compiler supports the 'long long' data type. */
-#if defined(__MINGW32__) || defined(__WATCOMC__)
-#define HAVE_LONGLONG 1
-#endif
-
-/* Define to avoid VS2005 complaining about portable C functions */
-#if defined(_MSC_VER) && (_MSC_VER >= 1400)
-#define _CRT_SECURE_NO_DEPRECATE 1
-#define _CRT_NONSTDC_NO_DEPRECATE 1
-#endif
-
-/* VS2005 and later dafault size for time_t is 64-bit, unless */
-/* _USE_32BIT_TIME_T has been defined to get a 32-bit time_t. */
-#if defined(_MSC_VER) && (_MSC_VER >= 1400)
-#  ifndef _USE_32BIT_TIME_T
-#    define SIZEOF_TIME_T 8
-#  else
-#    define SIZEOF_TIME_T 4
-#  endif
-#endif
-
-/* Officially, Microsoft's Windows SDK versions 6.X do not support Windows
-   2000 as a supported build target. VS2008 default installations provide an
-   embedded Windows SDK v6.0A along with the claim that Windows 2000 is a
-   valid build target for VS2008. Popular belief is that binaries built using
-   Windows SDK versions 6.X and Windows 2000 as a build target are functional */
-#if defined(_MSC_VER) && (_MSC_VER >= 1500)
-#  define VS2008_MINIMUM_TARGET 0x0500
-#endif
-
-/* When no build target is specified VS2008 default build target is Windows
-   Vista, which leaves out even Winsows XP. If no build target has been given
-   for VS2008 we will target the minimum Officially supported build target,
-   which happens to be Windows XP. */
-#if defined(_MSC_VER) && (_MSC_VER >= 1500)
-#  define VS2008_DEFAULT_TARGET  0x0501
-#endif
-
-/* VS2008 default target settings and minimum build target check */
-#if defined(_MSC_VER) && (_MSC_VER >= 1500)
-#  ifndef _WIN32_WINNT
-#    define _WIN32_WINNT VS2008_DEFAULT_TARGET
-#  endif
-#  ifndef WINVER
-#    define WINVER VS2008_DEFAULT_TARGET
-#  endif
-#  if (_WIN32_WINNT < VS2008_MINIMUM_TARGET) || (WINVER < VS2008_MINIMUM_TARGET)
-#    error VS2008 does not support Windows build targets prior to Windows 2000
-#  endif
-#endif
-
-/* When no build target is specified Pelles C 5.00 and later default build
-   target is Windows Vista. We override default target to be Windows 2000. */
-#if defined(__POCC__) && (__POCC__ >= 500)
-#  ifndef _WIN32_WINNT
-#    define _WIN32_WINNT 0x0500
-#  endif
-#  ifndef WINVER
-#    define WINVER 0x0500
-#  endif
-#endif
-
-/* Availability of freeaddrinfo, getaddrinfo and getnameinfo functions is
-   quite convoluted, compiler dependent and even build target dependent. */
-#if defined(HAVE_WS2TCPIP_H)
-#  if defined(__POCC__)
-#    define HAVE_FREEADDRINFO           1
-#    define HAVE_GETADDRINFO            1
-#    define HAVE_GETADDRINFO_THREADSAFE 1
-#    define HAVE_GETNAMEINFO            1
-#  elif defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0501)
-#    define HAVE_FREEADDRINFO           1
-#    define HAVE_GETADDRINFO            1
-#    define HAVE_GETADDRINFO_THREADSAFE 1
-#    define HAVE_GETNAMEINFO            1
-#  elif defined(_MSC_VER) && (_MSC_VER >= 1200)
-#    define HAVE_FREEADDRINFO           1
-#    define HAVE_GETADDRINFO            1
-#    define HAVE_GETADDRINFO_THREADSAFE 1
-#    define HAVE_GETNAMEINFO            1
-#  endif
-#endif
-
-#if defined(__POCC__)
-#  ifndef _MSC_VER
-#    error Microsoft extensions /Ze compiler option is required
-#  endif
-#  ifndef __POCC__OLDNAMES
-#    error Compatibility names /Go compiler option is required
-#  endif
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                        LARGE FILE SUPPORT                        */
-/* ---------------------------------------------------------------- */
-
-#if defined(_MSC_VER) && !defined(_WIN32_WCE)
-#  if (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64)
-#    define USE_WIN32_LARGE_FILES
-#  else
-#    define USE_WIN32_SMALL_FILES
-#  endif
-#endif
-
-#if defined(__MINGW32__) && !defined(USE_WIN32_LARGE_FILES)
-#  define USE_WIN32_LARGE_FILES
-#endif
-
-#if defined(__POCC__)
-#  undef USE_WIN32_LARGE_FILES
-#endif
-
-#if !defined(USE_WIN32_LARGE_FILES) && !defined(USE_WIN32_SMALL_FILES)
-#  define USE_WIN32_SMALL_FILES
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                       DNS RESOLVER SPECIALTY                     */
-/* ---------------------------------------------------------------- */
-
-/*
- * Undefine both USE_ARES and USE_THREADS_WIN32 for synchronous DNS
- */
-
-/* Define USE_ARES to enable c-ares asynchronous DNS lookups */
-/* #define USE_ARES 1 */
-
-/* Define USE_THREADS_WIN32 to enable threaded asynchronous DNS lookups */
-/* #define USE_THREADS_WIN32 1 */
-
-#if defined(USE_ARES) && defined(USE_THREADS_WIN32)
-#  error "Only one DNS lookup specialty may be defined at most"
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                           LDAP SUPPORT                           */
-/* ---------------------------------------------------------------- */
-
-#if defined(CURL_HAS_NOVELL_LDAPSDK) || defined(CURL_HAS_MOZILLA_LDAPSDK)
-#undef CURL_LDAP_HYBRID
-#undef CURL_LDAP_WIN
-#define HAVE_LDAP_SSL_H 1
-#define HAVE_LDAP_URL_PARSE 1
-#elif defined(CURL_HAS_OPENLDAP_LDAPSDK)
-#undef CURL_LDAP_HYBRID
-#undef CURL_LDAP_WIN
-#define HAVE_LDAP_URL_PARSE 1
-#else
-#undef CURL_LDAP_HYBRID
-#undef HAVE_LDAP_URL_PARSE
-#define CURL_LDAP_WIN 1
-#endif
-
-#if defined(__POCC__) && defined(CURL_LDAP_WIN)
-#  define CURL_DISABLE_LDAP 1
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                       ADDITIONAL DEFINITIONS                     */
-/* ---------------------------------------------------------------- */
-
-/* Define cpu-machine-OS */
-#undef OS
-#if defined(_M_IX86) || defined(__i386__) /* x86 (MSVC or gcc) */
-#define OS "i386-pc-win32"
-#elif defined(_M_IA64) /* Itanium */
-#define OS "ia64-pc-win32"
-#elif defined(_M_X64) /* AMD64/EM64T - Not defined until MSVC 2005 */
-#define OS "amd64-pc-win32"
-#else
-#define OS "unknown-pc-win32"
-#endif
-
-/* Name of package */
-#define PACKAGE "curl"
-
-#if defined(__POCC__)
-#  define ENABLE_IPV6 1
-#endif
-
-#endif /* __LIB_CONFIG_WIN32_H */
diff --git a/src/other/curl/lib/config-win32ce.h b/src/other/curl/lib/config-win32ce.h
deleted file mode 100644
index 058fcc0..0000000
--- a/src/other/curl/lib/config-win32ce.h
+++ /dev/null
@@ -1,410 +0,0 @@
-#ifndef __LIB_CONFIG_WIN32CE_H
-#define __LIB_CONFIG_WIN32CE_H
-
-/* ================================================================ */
-/*  lib/config-win32ce.h - Hand crafted config file for windows ce  */
-/* ================================================================ */
-
-/* ---------------------------------------------------------------- */
-/*                          HEADER FILES                            */
-/* ---------------------------------------------------------------- */
-
-/* Define if you have the <arpa/inet.h> header file.  */
-/* #define HAVE_ARPA_INET_H 1 */
-
-/* Define if you have the <assert.h> header file.  */
-/* #define HAVE_ASSERT_H 1 */
-
-/* Define if you have the <crypto.h> header file.  */
-/* #define HAVE_CRYPTO_H 1 */
-
-/* Define if you have the <err.h> header file.  */
-/* #define HAVE_ERR_H 1 */
-
-/* Define if you have the <fcntl.h> header file.  */
-#define HAVE_FCNTL_H 1
-
-/* Define if you have the <getopt.h> header file.  */
-/* #define HAVE_GETOPT_H 1 */
-
-/* Define if you have the <io.h> header file.  */
-#define HAVE_IO_H 1
-
-/* Define if you have the <limits.h> header file.  */
-#define HAVE_LIMITS_H 1
-
-/* Define if you need the malloc.h header header file even with stdlib.h  */
-#define NEED_MALLOC_H 1
-
-/* Define if you have the <netdb.h> header file.  */
-/* #define HAVE_NETDB_H 1 */
-
-/* Define if you have the <netinet/in.h> header file.  */
-/* #define HAVE_NETINET_IN_H 1 */
-
-/* Define if you have the <signal.h> header file. */
-#define HAVE_SIGNAL_H 1
-
-/* Define if you have the <sgtty.h> header file.  */
-/* #define HAVE_SGTTY_H 1 */
-
-/* Define if you have the <ssl.h> header file.  */
-/* #define HAVE_SSL_H 1 */
-
-/* Define if you have the <stdlib.h> header file.  */
-#define HAVE_STDLIB_H 1
-
-/* Define if you have the <process.h> header file.  */
-#define HAVE_PROCESS_H 1
-
-/* Define if you have the <sys/param.h> header file.  */
-/* #define HAVE_SYS_PARAM_H 1 */
-
-/* Define if you have the <sys/select.h> header file.  */
-/* #define HAVE_SYS_SELECT_H 1 */
-
-/* Define if you have the <sys/socket.h> header file.  */
-/* #define HAVE_SYS_SOCKET_H 1 */
-
-/* Define if you have the <sys/sockio.h> header file.  */
-/* #define HAVE_SYS_SOCKIO_H 1 */
-
-/* Define if you have the <sys/stat.h> header file.  */
-#define HAVE_SYS_STAT_H 1
-
-/* Define if you have the <sys/time.h> header file */
-/* #define HAVE_SYS_TIME_H 1 */
-
-/* Define if you have the <sys/types.h> header file.  */
-/* #define HAVE_SYS_TYPES_H 1 */
-
-/* Define if you have the <sys/utime.h> header file */
-#define HAVE_SYS_UTIME_H 1
-
-/* Define if you have the <termio.h> header file.  */
-/* #define HAVE_TERMIO_H 1 */
-
-/* Define if you have the <termios.h> header file.  */
-/* #define HAVE_TERMIOS_H 1 */
-
-/* Define if you have the <time.h> header file.  */
-#define HAVE_TIME_H 1
-
-/* Define if you have the <unistd.h> header file.  */
-#if defined(__MINGW32__) || defined(__WATCOMC__) || defined(__LCC__)
-#define HAVE_UNISTD_H 1
-#endif
-
-/* Define if you have the <windows.h> header file.  */
-#define HAVE_WINDOWS_H 1
-
-/* Define if you have the <winsock.h> header file.  */
-#define HAVE_WINSOCK_H 1
-
-/* Define if you have the <winsock2.h> header file.  */
-/* #define HAVE_WINSOCK2_H 1 */
-
-/* Define if you have the <ws2tcpip.h> header file.  */
-/* #define HAVE_WS2TCPIP_H 1 */
-
-/* ---------------------------------------------------------------- */
-/*                        OTHER HEADER INFO                         */
-/* ---------------------------------------------------------------- */
-
-/* Define if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T 1
-
-/* Define if you have the ANSI C header files.  */
-#define STDC_HEADERS 1
-
-/* Define if you can safely include both <sys/time.h> and <time.h>.  */
-/* #define TIME_WITH_SYS_TIME 1 */
-
-/* ---------------------------------------------------------------- */
-/*                             FUNCTIONS                            */
-/* ---------------------------------------------------------------- */
-
-/* Define if you have the closesocket function.  */
-#define HAVE_CLOSESOCKET 1
-
-/* Define if you don't have vprintf but do have _doprnt.  */
-/* #define HAVE_DOPRNT 1 */
-
-/* Define if you have the gethostbyaddr function.  */
-#define HAVE_GETHOSTBYADDR 1
-
-/* Define if you have the gethostname function.  */
-#define HAVE_GETHOSTNAME 1
-
-/* Define if you have the getpass function.  */
-/* #define HAVE_GETPASS 1 */
-
-/* Define if you have the getservbyname function.  */
-#define HAVE_GETSERVBYNAME 1
-
-/* Define if you have the gettimeofday function.  */
-/*  #define HAVE_GETTIMEOFDAY 1 */
-
-/* Define if you have the inet_addr function.  */
-#define HAVE_INET_ADDR 1
-
-/* Define if you have the ioctlsocket function. */
-#define HAVE_IOCTLSOCKET 1
-
-/* Define if you have a working ioctlsocket FIONBIO function. */
-#define HAVE_IOCTLSOCKET_FIONBIO 1
-
-/* Define if you have the perror function.  */
-#define HAVE_PERROR 1
-
-/* Define if you have the RAND_screen function when using SSL  */
-#define HAVE_RAND_SCREEN 1
-
-/* Define if you have the `RAND_status' function when using SSL. */
-#define HAVE_RAND_STATUS 1
-
-/* Define if you have the select function.  */
-#define HAVE_SELECT 1
-
-/* Define if you have the setvbuf function.  */
-#define HAVE_SETVBUF 1
-
-/* Define if you have the socket function.  */
-#define HAVE_SOCKET 1
-
-/* Define if you have the strcasecmp function.  */
-/* #define HAVE_STRCASECMP 1 */
-
-/* Define if you have the strdup function.  */
-/* #define HAVE_STRDUP 1 */
-
-/* Define if you have the strftime function.  */
-/* #define HAVE_STRFTIME 1 */
-
-/* Define if you have the stricmp function. */
-/* #define HAVE_STRICMP 1 */
-
-/* Define if you have the strncasecmp function. */
-/* #define HAVE_STRNCASECMP 1 */
-
-/* Define if you have the strnicmp function. */
-/* #define HAVE_STRNICMP 1 */
-
-/* Define if you have the strstr function.  */
-#define HAVE_STRSTR 1
-
-/* Define if you have the strtoll function.  */
-#if defined(__MINGW32__) || defined(__WATCOMC__)
-#define HAVE_STRTOLL 1
-#endif
-
-/* Define if you have the tcgetattr function.  */
-/* #define HAVE_TCGETATTR 1 */
-
-/* Define if you have the tcsetattr function.  */
-/* #define HAVE_TCSETATTR 1 */
-
-/* Define if you have the utime function */
-#define HAVE_UTIME 1
-
-/* Define if you have the getnameinfo function. */
-#define HAVE_GETNAMEINFO 1
-
-/* Define to the type qualifier of arg 1 for getnameinfo. */
-#define GETNAMEINFO_QUAL_ARG1 const
-
-/* Define to the type of arg 1 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG1 struct sockaddr *
-
-/* Define to the type of arg 2 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG2 socklen_t
-
-/* Define to the type of args 4 and 6 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG46 DWORD
-
-/* Define to the type of arg 7 for getnameinfo. */
-#define GETNAMEINFO_TYPE_ARG7 int
-
-/* Define if you have the recv function. */
-#define HAVE_RECV 1
-
-/* Define to the type of arg 1 for recv. */
-#define RECV_TYPE_ARG1 SOCKET
-
-/* Define to the type of arg 2 for recv. */
-#define RECV_TYPE_ARG2 char *
-
-/* Define to the type of arg 3 for recv. */
-#define RECV_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for recv. */
-#define RECV_TYPE_ARG4 int
-
-/* Define to the function return type for recv. */
-#define RECV_TYPE_RETV int
-
-/* Define if you have the recvfrom function. */
-#define HAVE_RECVFROM 1
-
-/* Define to the type of arg 1 for recvfrom. */
-#define RECVFROM_TYPE_ARG1 SOCKET
-
-/* Define to the type pointed by arg 2 for recvfrom. */
-#define RECVFROM_TYPE_ARG2 char
-
-/* Define to the type of arg 3 for recvfrom. */
-#define RECVFROM_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for recvfrom. */
-#define RECVFROM_TYPE_ARG4 int
-
-/* Define to the type pointed by arg 5 for recvfrom. */
-#define RECVFROM_TYPE_ARG5 struct sockaddr
-
-/* Define to the type pointed by arg 6 for recvfrom. */
-#define RECVFROM_TYPE_ARG6 int
-
-/* Define to the function return type for recvfrom. */
-#define RECVFROM_TYPE_RETV int
-
-/* Define if you have the send function. */
-#define HAVE_SEND 1
-
-/* Define to the type of arg 1 for send. */
-#define SEND_TYPE_ARG1 SOCKET
-
-/* Define to the type qualifier of arg 2 for send. */
-#define SEND_QUAL_ARG2 const
-
-/* Define to the type of arg 2 for send. */
-#define SEND_TYPE_ARG2 char *
-
-/* Define to the type of arg 3 for send. */
-#define SEND_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for send. */
-#define SEND_TYPE_ARG4 int
-
-/* Define to the function return type for send. */
-#define SEND_TYPE_RETV int
-
-/* ---------------------------------------------------------------- */
-/*                       TYPEDEF REPLACEMENTS                       */
-/* ---------------------------------------------------------------- */
-
-/* Define this if in_addr_t is not an available 'typedefed' type */
-#define in_addr_t unsigned long
-
-/* Define as the return type of signal handlers (int or void).  */
-#define RETSIGTYPE void
-
-/* Define ssize_t if it is not an available 'typedefed' type */
-#if (defined(__WATCOMC__) && (__WATCOMC__ >= 1240)) || defined(__POCC__)
-#elif defined(_WIN64)
-#define ssize_t __int64
-#else
-#define ssize_t int
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                            TYPE SIZES                            */
-/* ---------------------------------------------------------------- */
-
-/* The size of `int', as computed by sizeof. */
-#define SIZEOF_INT 4
-
-/* The size of `long double', as computed by sizeof. */
-#define SIZEOF_LONG_DOUBLE 16
-
-/* The size of `long long', as computed by sizeof. */
-/* #define SIZEOF_LONG_LONG 8 */
-
-/* The size of `short', as computed by sizeof. */
-#define SIZEOF_SHORT 2
-
-/* ---------------------------------------------------------------- */
-/*                          STRUCT RELATED                          */
-/* ---------------------------------------------------------------- */
-
-/* Define this if you have struct sockaddr_storage */
-/* #define HAVE_STRUCT_SOCKADDR_STORAGE 1 */
-
-/* Define this if you have struct timeval */
-#define HAVE_STRUCT_TIMEVAL 1
-
-/* Define this if struct sockaddr_in6 has the sin6_scope_id member */
-#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
-
-/* ---------------------------------------------------------------- */
-/*                        COMPILER SPECIFIC                         */
-/* ---------------------------------------------------------------- */
-
-/* Undef keyword 'const' if it does not work.  */
-/* #undef const */
-
-/* Define to avoid VS2005 complaining about portable C functions */
-#if defined(_MSC_VER) && (_MSC_VER >= 1400)
-#define _CRT_SECURE_NO_DEPRECATE 1
-#define _CRT_NONSTDC_NO_DEPRECATE 1
-#endif
-
-/* VS2005 and later dafault size for time_t is 64-bit, unless */
-/* _USE_32BIT_TIME_T has been defined to get a 32-bit time_t. */
-#if defined(_MSC_VER) && (_MSC_VER >= 1400)
-#  ifndef _USE_32BIT_TIME_T
-#    define SIZEOF_TIME_T 8
-#  else
-#    define SIZEOF_TIME_T 4
-#  endif
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                        LARGE FILE SUPPORT                        */
-/* ---------------------------------------------------------------- */
-
-#if defined(_MSC_VER) && !defined(_WIN32_WCE)
-#  if (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64)
-#    define USE_WIN32_LARGE_FILES
-#  else
-#    define USE_WIN32_SMALL_FILES
-#  endif
-#endif
-
-#if !defined(USE_WIN32_LARGE_FILES) && !defined(USE_WIN32_SMALL_FILES)
-#  define USE_WIN32_SMALL_FILES
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                           LDAP SUPPORT                           */
-/* ---------------------------------------------------------------- */
-
-#define CURL_LDAP_WIN 1
-#undef CURL_LDAP_HYBRID
-#undef HAVE_LDAP_URL_PARSE
-
-/* ---------------------------------------------------------------- */
-/*                       ADDITIONAL DEFINITIONS                     */
-/* ---------------------------------------------------------------- */
-
-/* Define cpu-machine-OS */
-#undef OS
-#define OS "i386-pc-win32ce"
-
-/* Name of package */
-#define PACKAGE "curl"
-
-/* ---------------------------------------------------------------- */
-/*                       WinCE                                      */
-/* ---------------------------------------------------------------- */
-
-#define CURL_DISABLE_FILE 1
-#define CURL_DISABLE_TELNET 1
-#define CURL_DISABLE_LDAP 1
-
-#define ENOSPC 1
-#define ENOMEM 2
-#define EAGAIN 3
-
-extern int stat(const char *path,struct stat *buffer );
-
-#endif /* __LIB_CONFIG_WIN32CE_H */
diff --git a/src/other/curl/lib/config.dos b/src/other/curl/lib/config.dos
deleted file mode 100644
index 78f0c6b..0000000
--- a/src/other/curl/lib/config.dos
+++ /dev/null
@@ -1,169 +0,0 @@
-#ifndef HEADER_CONFIG_DOS_H
-#define HEADER_CONFIG_DOS_H
-
-
-/* ================================================================ */
-/*        lib/config.dos - Hand crafted config file for DOS         */
-/* ================================================================ */
-
-#if defined(DJGPP)
-  #define OS  "MSDOS/djgpp"
-#elif defined(__HIGHC__)
-  #define OS  "MSDOS/HighC"
-#elif defined(__WATCOMC__)
-  #define OS  "MSDOS/Watcom"
-#else
-  #define OS  "MSDOS/?"
-#endif
-
-#define PACKAGE  "curl"
-
-#define HAVE_ARPA_INET_H       1
-#define HAVE_FCNTL_H           1
-#define HAVE_GETADDRINFO       1
-#define HAVE_GETNAMEINFO       1
-#define HAVE_GETPROTOBYNAME    1
-#define HAVE_GETTIMEOFDAY      1
-#define HAVE_IO_H              1
-#define HAVE_IOCTL             1
-#define HAVE_IOCTL_FIONBIO     1
-#define HAVE_IOCTLSOCKET       1
-#define HAVE_IOCTLSOCKET_FIONBIO   1
-#define HAVE_LIMITS_H          1
-#define HAVE_LOCALE_H          1
-#define HAVE_LONGLONG          1
-#define HAVE_MEMORY_H          1
-#define HAVE_NETDB_H           1
-#define HAVE_NETINET_IN_H      1
-#define HAVE_NETINET_TCP_H     1
-#define HAVE_NET_IF_H          1
-#define HAVE_PROCESS_H         1
-#define HAVE_RECV              1
-#define HAVE_RECVFROM          1
-#define HAVE_SELECT            1
-#define HAVE_SEND              1
-#define HAVE_SETJMP_H          1
-#define HAVE_SETLOCALE         1
-#define HAVE_SETMODE           1
-#define HAVE_SIGNAL            1
-#define HAVE_SOCKET            1
-#define HAVE_SPNEGO            1
-#define HAVE_STRDUP            1
-#define HAVE_STRICMP           1
-#define HAVE_STRTOLL           1
-#define HAVE_STRUCT_TIMEVAL    1
-#define HAVE_STRUCT_IN6_ADDR   1
-#define HAVE_SYS_IOCTL_H       1
-#define HAVE_SYS_SOCKET_H      1
-#define HAVE_SYS_STAT_H        1
-#define HAVE_SYS_TYPES_H       1
-#define HAVE_TERMIOS_H         1
-#define HAVE_TIME_H            1
-#define HAVE_UNISTD_H          1
-
-#define NEED_MALLOC_H          1
-
-#define RETSIGTYPE             void
-#define SIZEOF_INT             4
-#define SIZEOF_LONG_DOUBLE     16
-#define SIZEOF_SHORT           2
-#define STDC_HEADERS           1
-#define TIME_WITH_SYS_TIME     1
-
-/* Qualifiers for send(), recv(), recvfrom() and getnameinfo(). */
-
-#define SEND_TYPE_ARG1         int
-#define SEND_QUAL_ARG2         const
-#define SEND_TYPE_ARG2         void *
-#define SEND_TYPE_ARG3         int
-#define SEND_TYPE_ARG4         int
-#define SEND_TYPE_RETV         int
-
-#define RECV_TYPE_ARG1         int
-#define RECV_TYPE_ARG2         void *
-#define RECV_TYPE_ARG3         int
-#define RECV_TYPE_ARG4         int
-#define RECV_TYPE_RETV         int
-
-#define RECVFROM_TYPE_ARG1     int
-#define RECVFROM_TYPE_ARG2     void
-#define RECVFROM_TYPE_ARG3     int
-#define RECVFROM_TYPE_ARG4     int
-#define RECVFROM_TYPE_ARG5     struct sockaddr
-#define RECVFROM_TYPE_ARG6     int
-#define RECVFROM_TYPE_RETV     int
-#define RECVFROM_TYPE_ARG2_IS_VOID 1
-
-#define GETNAMEINFO_QUAL_ARG1  const
-#define GETNAMEINFO_TYPE_ARG1  struct sockaddr *
-#define GETNAMEINFO_TYPE_ARG2  int
-#define GETNAMEINFO_TYPE_ARG46 int
-#define GETNAMEINFO_TYPE_ARG7  int
-
-#define BSD
-
-/* CURLDEBUG definition enables memory tracking */
-/* #define CURLDEBUG */
-
-/* USE_ZLIB on cmd-line */
-#ifdef USE_ZLIB
-  #define HAVE_ZLIB_H            1
-  #define HAVE_LIBZ              1
-#endif
-
-/* USE_SSLEAY on cmd-line */
-#ifdef USE_SSLEAY
-  #define HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 1
-  #define HAVE_OPENSSL_ENGINE_H  1
-  #define OPENSSL_NO_KRB5        1
-  #define USE_OPENSSL            1
-#endif
-
-/* to disable LDAP */
-#define CURL_DISABLE_LDAP        1
-
-#define in_addr_t  u_long
-
-#if defined(__HIGHC__) || \
-    (defined(__GNUC__) && (__GNUC__ < 4))
-#define ssize_t    int
-#endif
-
-#define CURL_CA_BUNDLE  getenv("CURL_CA_BUNDLE")
-
-/* Target HAVE_x section */
-
-#if defined(DJGPP)
-  #define HAVE_BASENAME   1
-  #define HAVE_STRCASECMP 1
-  #define HAVE_SIGACTION  1
-  #define HAVE_SIGSETJMP  1
-  #define HAVE_SYS_TIME_H 1
-  #define HAVE_VARIADIC_MACROS_GCC 1
-
-  #if (DJGPP_MINOR >= 4)
-    #define HAVE_STRLCAT  1
-  #endif
-
-  /* Because djgpp <= 2.03 doesn't have snprintf() etc. */
-  #if (DJGPP_MINOR < 4)
-    #define _MPRINTF_REPLACE
-  #endif
-
-#elif defined(__WATCOMC__)
-  #define HAVE_STRCASECMP 1
-
-#elif defined(__HIGHC__)
-  #define HAVE_SYS_TIME_H 1
-#endif
-
-#ifdef MSDOS  /* Watt-32 */
-  #define HAVE_CLOSESOCKET_CAMEL  1
-  #define CloseSocket(s)          close_s((s))
-#endif
-
-#undef word
-#undef byte
-
-#endif /* HEADER_CONFIG_DOS_H */
-
diff --git a/src/other/curl/lib/connect.c b/src/other/curl/lib/connect.c
deleted file mode 100644
index eb6df71..0000000
--- a/src/other/curl/lib/connect.c
+++ /dev/null
@@ -1,1019 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h> /* <netinet/tcp.h> may need it */
-#endif
-#ifdef HAVE_SYS_UN_H
-#include <sys/un.h> /* for sockaddr_un */
-#endif
-#ifdef HAVE_NETINET_TCP_H
-#include <netinet/tcp.h> /* for TCP_NODELAY */
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_FCNTL_H
-#include <fcntl.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-
-#if (defined(HAVE_IOCTL_FIONBIO) && defined(NETWARE))
-#include <sys/filio.h>
-#endif
-#ifdef NETWARE
-#undef in_addr_t
-#define in_addr_t unsigned long
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#endif
-
-#include <stdio.h>
-#include <errno.h>
-#include <string.h>
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "urldata.h"
-#include "sendf.h"
-#include "if2ip.h"
-#include "strerror.h"
-#include "connect.h"
-#include "curl_memory.h"
-#include "select.h"
-#include "url.h" /* for Curl_safefree() */
-#include "multiif.h"
-#include "sockaddr.h" /* required for Curl_sockaddr_storage */
-#include "inet_ntop.h"
-#include "inet_pton.h"
-#include "sslgen.h" /* for Curl_ssl_check_cxn() */
-#include "progress.h"
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#ifdef __SYMBIAN32__
-/* This isn't actually supported under Symbian OS */
-#undef SO_NOSIGPIPE
-#endif
-
-struct Curl_sockaddr_ex {
-  int family;
-  int socktype;
-  int protocol;
-  unsigned int addrlen;
-  union {
-    struct sockaddr addr;
-    struct Curl_sockaddr_storage buff;
-  } _sa_ex_u;
-};
-#define sa_addr _sa_ex_u.addr
-
-static bool verifyconnect(curl_socket_t sockfd, int *error);
-
-static curl_socket_t
-singleipconnect(struct connectdata *conn,
-                const Curl_addrinfo *ai, /* start connecting to this */
-                long timeout_ms,
-                bool *connected);
-
-/*
- * Curl_timeleft() returns the amount of milliseconds left allowed for the
- * transfer/connection. If the value is negative, the timeout time has already
- * elapsed.
- *
- * If 'nowp' is non-NULL, it points to the current time.
- * 'duringconnect' is FALSE if not during a connect, as then of course the
- * connect timeout is not taken into account!
- */
-long Curl_timeleft(struct connectdata *conn,
-                   struct timeval *nowp,
-                   bool duringconnect)
-{
-  struct SessionHandle *data = conn->data;
-  int timeout_set = 0;
-  long timeout_ms = duringconnect?DEFAULT_CONNECT_TIMEOUT:0;
-  struct timeval now;
-
-  /* if a timeout is set, use the most restrictive one */
-
-  if(data->set.timeout > 0)
-    timeout_set |= 1;
-  if(duringconnect && (data->set.connecttimeout > 0))
-    timeout_set |= 2;
-
-  switch (timeout_set) {
-  case 1:
-    timeout_ms = data->set.timeout;
-    break;
-  case 2:
-    timeout_ms = data->set.connecttimeout;
-    break;
-  case 3:
-    if(data->set.timeout < data->set.connecttimeout)
-      timeout_ms = data->set.timeout;
-    else
-      timeout_ms = data->set.connecttimeout;
-    break;
-  default:
-    /* use the default */
-    if(!duringconnect)
-      /* if we're not during connect, there's no default timeout so if we're
-         at zero we better just return zero and not make it a negative number
-         by the math below */
-      return 0;
-    break;
-  }
-
-  if(!nowp) {
-    now = Curl_tvnow();
-    nowp = &now;
-  }
-
-  /* substract elapsed time */
-  timeout_ms -= Curl_tvdiff(*nowp, data->progress.t_startsingle);
-
-  return timeout_ms;
-}
-
-/*
- * waitconnect() waits for a TCP connect on the given socket for the specified
- * number if milliseconds. It returns:
- * 0    fine connect
- * -1   select() error
- * 1    select() timeout
- * 2    select() returned with an error condition fd_set
- */
-
-#define WAITCONN_CONNECTED     0
-#define WAITCONN_SELECT_ERROR -1
-#define WAITCONN_TIMEOUT       1
-#define WAITCONN_FDSET_ERROR   2
-
-static
-int waitconnect(struct connectdata *conn,
-                curl_socket_t sockfd, /* socket */
-                long timeout_msec)
-{
-  int rc;
-#ifdef mpeix
-  /* Call this function once now, and ignore the results. We do this to
-     "clear" the error state on the socket so that we can later read it
-     reliably. This is reported necessary on the MPE/iX operating system. */
-  (void)verifyconnect(sockfd, NULL);
-#endif
-
-  for(;;) {
-
-    /* now select() until we get connect or timeout */
-    rc = Curl_socket_ready(CURL_SOCKET_BAD, sockfd, (int)(timeout_msec>1000?
-                                                          1000:timeout_msec));
-
-    if(Curl_pgrsUpdate(conn))
-      return CURLE_ABORTED_BY_CALLBACK;
-
-    if(-1 == rc)
-      /* error, no connect here, try next */
-      return WAITCONN_SELECT_ERROR;
-
-    else if(0 == rc) {
-      /* timeout */
-      timeout_msec -= 1000;
-      if(timeout_msec <= 0)
-        return WAITCONN_TIMEOUT;
-
-      continue;
-    }
-
-    if(rc & CURL_CSELECT_ERR)
-      /* error condition caught */
-      return WAITCONN_FDSET_ERROR;
-
-    break;
-  }
-  return WAITCONN_CONNECTED;
-}
-
-static CURLcode bindlocal(struct connectdata *conn,
-                          curl_socket_t sockfd, int af)
-{
-  struct SessionHandle *data = conn->data;
-
-  struct Curl_sockaddr_storage sa;
-  struct sockaddr *sock = (struct sockaddr *)&sa;  /* bind to this address */
-  curl_socklen_t sizeof_sa = 0; /* size of the data sock points to */
-  struct sockaddr_in *si4 = (struct sockaddr_in *)&sa;
-#ifdef ENABLE_IPV6
-  struct sockaddr_in6 *si6 = (struct sockaddr_in6 *)&sa;
-#endif
-
-  struct Curl_dns_entry *h=NULL;
-  unsigned short port = data->set.localport; /* use this port number, 0 for
-                                                "random" */
-  /* how many port numbers to try to bind to, increasing one at a time */
-  int portnum = data->set.localportrange;
-  const char *dev = data->set.str[STRING_DEVICE];
-  int error;
-  char myhost[256] = "";
-  int done = 0; /* -1 for error, 1 for address found */
-
-  /*************************************************************
-   * Select device to bind socket to
-   *************************************************************/
-  if ( !dev && !port )
-    /* no local kind of binding was requested */
-    return CURLE_OK;
-
-  memset(&sa, 0, sizeof(struct Curl_sockaddr_storage));
-
-  if(dev && (strlen(dev)<255) ) {
-
-    /* interface */
-    if(Curl_if2ip(af, dev, myhost, sizeof(myhost))) {
-      /*
-       * We now have the numerical IP address in the 'myhost' buffer
-       */
-      infof(data, "Local Interface %s is ip %s using address family %i\n",
-            dev, myhost, af);
-      done = 1;
-
-#ifdef SO_BINDTODEVICE
-      /* I am not sure any other OSs than Linux that provide this feature, and
-       * at the least I cannot test. --Ben
-       *
-       * This feature allows one to tightly bind the local socket to a
-       * particular interface.  This will force even requests to other local
-       * interfaces to go out the external interface.
-       *
-       *
-       * Only bind to the interface when specified as interface, not just as a
-       * hostname or ip address.
-       */
-      if(setsockopt(sockfd, SOL_SOCKET, SO_BINDTODEVICE,
-                    dev, (curl_socklen_t)strlen(dev)+1) != 0) {
-        error = SOCKERRNO;
-        infof(data, "SO_BINDTODEVICE %s failed with errno %d: %s;"
-              " will do regular bind\n",
-              dev, error, Curl_strerror(conn, error));
-        /* This is typically "errno 1, error: Operation not permitted" if
-           you're not running as root or another suitable privileged user */
-      }
-#endif
-    }
-    else {
-      /*
-       * This was not an interface, resolve the name as a host name
-       * or IP number
-       *
-       * Temporarily force name resolution to use only the address type
-       * of the connection. The resolve functions should really be changed
-       * to take a type parameter instead.
-       */
-      long ipver = data->set.ip_version;
-      int rc;
-
-      if (af == AF_INET)
-        data->set.ip_version = CURL_IPRESOLVE_V4;
-#ifdef ENABLE_IPV6
-      else if (af == AF_INET6)
-        data->set.ip_version = CURL_IPRESOLVE_V6;
-#endif
-
-      rc = Curl_resolv(conn, dev, 0, &h);
-      if(rc == CURLRESOLV_PENDING)
-        (void)Curl_wait_for_resolv(conn, &h);
-      data->set.ip_version = ipver;
-
-      if(h) {
-        /* convert the resolved address, sizeof myhost >= INET_ADDRSTRLEN */
-        Curl_printable_address(h->addr, myhost, sizeof(myhost));
-        infof(data, "Name '%s' family %i resolved to '%s' family %i\n",
-              dev, af, myhost, h->addr->ai_family);
-        Curl_resolv_unlock(data, h);
-        done = 1;
-      }
-      else {
-        /*
-         * provided dev was no interface (or interfaces are not supported
-         * e.g. solaris) no ip address and no domain we fail here
-         */
-        done = -1;
-      }
-    }
-
-    if(done > 0) {
-#ifdef ENABLE_IPV6
-      /* ipv6 address */
-      if((af == AF_INET6) &&
-         (Curl_inet_pton(AF_INET6, myhost, &si6->sin6_addr) > 0)) {
-        si6->sin6_family = AF_INET6;
-        si6->sin6_port = htons(port);
-        sizeof_sa = sizeof(struct sockaddr_in6);
-      }
-      else
-#endif
-      /* ipv4 address */
-      if((af == AF_INET) &&
-         (Curl_inet_pton(AF_INET, myhost, &si4->sin_addr) > 0)) {
-        si4->sin_family = AF_INET;
-        si4->sin_port = htons(port);
-        sizeof_sa = sizeof(struct sockaddr_in);
-      }
-    }
-
-    if(done < 1) {
-      failf(data, "Couldn't bind to '%s'", dev);
-      return CURLE_INTERFACE_FAILED;
-    }
-  }
-  else {
-    /* no device was given, prepare sa to match af's needs */
-#ifdef ENABLE_IPV6
-    if ( af == AF_INET6 ) {
-      si6->sin6_family = AF_INET6;
-      si6->sin6_port = htons(port);
-      sizeof_sa = sizeof(struct sockaddr_in6);
-    }
-    else
-#endif
-    if ( af == AF_INET ) {
-      si4->sin_family = AF_INET;
-      si4->sin_port = htons(port);
-      sizeof_sa = sizeof(struct sockaddr_in);
-    }
-  }
-
-  for(;;) {
-    if( bind(sockfd, sock, sizeof_sa) >= 0) {
-    /* we succeeded to bind */
-      struct Curl_sockaddr_storage add;
-      curl_socklen_t size = sizeof(add);
-      memset(&add, 0, sizeof(struct Curl_sockaddr_storage));
-      if(getsockname(sockfd, (struct sockaddr *) &add, &size) < 0) {
-        data->state.os_errno = error = SOCKERRNO;
-        failf(data, "getsockname() failed with errno %d: %s",
-              error, Curl_strerror(conn, error));
-        return CURLE_INTERFACE_FAILED;
-      }
-      infof(data, "Local port: %hu\n", port);
-      conn->bits.bound = TRUE;
-      return CURLE_OK;
-    }
-
-    if(--portnum > 0) {
-      infof(data, "Bind to local port %hu failed, trying next\n", port);
-      port++; /* try next port */
-      /* We re-use/clobber the port variable here below */
-      if(sock->sa_family == AF_INET)
-        si4->sin_port = ntohs(port);
-#ifdef ENABLE_IPV6
-      else
-        si6->sin6_port = ntohs(port);
-#endif
-    }
-    else
-      break;
-  }
-
-  data->state.os_errno = error = SOCKERRNO;
-  failf(data, "bind failed with errno %d: %s",
-        error, Curl_strerror(conn, error));
-
-  return CURLE_INTERFACE_FAILED;
-}
-
-/*
- * verifyconnect() returns TRUE if the connect really has happened.
- */
-static bool verifyconnect(curl_socket_t sockfd, int *error)
-{
-  bool rc = TRUE;
-#ifdef SO_ERROR
-  int err = 0;
-  curl_socklen_t errSize = sizeof(err);
-
-#ifdef WIN32
-  /*
-   * In October 2003 we effectively nullified this function on Windows due to
-   * problems with it using all CPU in multi-threaded cases.
-   *
-   * In May 2004, we bring it back to offer more info back on connect failures.
-   * Gisle Vanem could reproduce the former problems with this function, but
-   * could avoid them by adding this SleepEx() call below:
-   *
-   *    "I don't have Rational Quantify, but the hint from his post was
-   *    ntdll::NtRemoveIoCompletion(). So I'd assume the SleepEx (or maybe
-   *    just Sleep(0) would be enough?) would release whatever
-   *    mutex/critical-section the ntdll call is waiting on.
-   *
-   *    Someone got to verify this on Win-NT 4.0, 2000."
-   */
-
-#ifdef _WIN32_WCE
-  Sleep(0);
-#else
-  SleepEx(0, FALSE);
-#endif
-
-#endif
-
-  if(0 != getsockopt(sockfd, SOL_SOCKET, SO_ERROR, (void *)&err, &errSize))
-    err = SOCKERRNO;
-#ifdef _WIN32_WCE
-  /* Old WinCE versions don't support SO_ERROR */
-  if(WSAENOPROTOOPT == err) {
-    SET_SOCKERRNO(0);
-    err = 0;
-  }
-#endif
-#ifdef __minix
-  /* Minix 3.1.x doesn't support getsockopt on UDP sockets */
-  if(EBADIOCTL == err) {
-    SET_SOCKERRNO(0);
-    err = 0;
-  }
-#endif
-  if((0 == err) || (EISCONN == err))
-    /* we are connected, awesome! */
-    rc = TRUE;
-  else
-    /* This wasn't a successful connect */
-    rc = FALSE;
-  if(error)
-    *error = err;
-#else
-  (void)sockfd;
-  if(error)
-    *error = SOCKERRNO;
-#endif
-  return rc;
-}
-
-/* Used within the multi interface. Try next IP address, return TRUE if no
-   more address exists or error */
-static bool trynextip(struct connectdata *conn,
-                      int sockindex,
-                      bool *connected)
-{
-  curl_socket_t sockfd;
-  Curl_addrinfo *ai;
-
-  /* first close the failed socket */
-  sclose(conn->sock[sockindex]);
-  conn->sock[sockindex] = CURL_SOCKET_BAD;
-  *connected = FALSE;
-
-  if(sockindex != FIRSTSOCKET)
-    return TRUE; /* no next */
-
-  /* try the next address */
-  ai = conn->ip_addr->ai_next;
-
-  while(ai) {
-    sockfd = singleipconnect(conn, ai, 0L, connected);
-    if(sockfd != CURL_SOCKET_BAD) {
-      /* store the new socket descriptor */
-      conn->sock[sockindex] = sockfd;
-      conn->ip_addr = ai;
-      return FALSE;
-    }
-    ai = ai->ai_next;
-  }
-  return TRUE;
-}
-
-/*
- * Curl_is_connected() is used from the multi interface to check if the
- * firstsocket has connected.
- */
-
-CURLcode Curl_is_connected(struct connectdata *conn,
-                           int sockindex,
-                           bool *connected)
-{
-  int rc;
-  struct SessionHandle *data = conn->data;
-  CURLcode code = CURLE_OK;
-  curl_socket_t sockfd = conn->sock[sockindex];
-  long allow = DEFAULT_CONNECT_TIMEOUT;
-
-  DEBUGASSERT(sockindex >= FIRSTSOCKET && sockindex <= SECONDARYSOCKET);
-
-  *connected = FALSE; /* a very negative world view is best */
-
-  if(conn->bits.tcpconnect) {
-    /* we are connected already! */
-    long allow_total = 0;
-
-    /* subtract the most strict timeout of the ones */
-    if(data->set.timeout)
-      allow_total = data->set.timeout;
-
-    Curl_expire(data, allow_total);
-    *connected = TRUE;
-    return CURLE_OK;
-  }
-
-  /* figure out how long time we have left to connect */
-  allow = Curl_timeleft(conn, NULL, TRUE);
-
-  if(allow < 0) {
-    /* time-out, bail out, go home */
-    failf(data, "Connection time-out");
-    return CURLE_OPERATION_TIMEDOUT;
-  }
-
-  Curl_expire(data, allow);
-
-  /* check for connect without timeout as we want to return immediately */
-  rc = waitconnect(conn, sockfd, 0);
-
-  if(WAITCONN_CONNECTED == rc) {
-    int error;
-    if(verifyconnect(sockfd, &error)) {
-      /* we are connected, awesome! */
-      conn->bits.tcpconnect = TRUE;
-      *connected = TRUE;
-      return CURLE_OK;
-    }
-    /* nope, not connected for real */
-    data->state.os_errno = error;
-    infof(data, "Connection failed\n");
-    if(trynextip(conn, sockindex, connected)) {
-      failf(data, "Failed connect to %s:%ld; %s",
-            conn->host.name, conn->port, Curl_strerror(conn, error));
-      code = CURLE_COULDNT_CONNECT;
-    }
-  }
-  else if(WAITCONN_TIMEOUT != rc) {
-    int error = 0;
-
-    /* nope, not connected  */
-    if(WAITCONN_FDSET_ERROR == rc) {
-      (void)verifyconnect(sockfd, &error);
-      data->state.os_errno = error;
-      infof(data, "%s\n",Curl_strerror(conn,error));
-    }
-    else
-      infof(data, "Connection failed\n");
-
-    if(trynextip(conn, sockindex, connected)) {
-      error = SOCKERRNO;
-      data->state.os_errno = error;
-      failf(data, "Failed connect to %s:%ld; %s",
-            conn->host.name, conn->port, Curl_strerror(conn, error));
-      code = CURLE_COULDNT_CONNECT;
-    }
-  }
-  /*
-   * If the connection failed here, we should attempt to connect to the "next
-   * address" for the given host.
-   */
-
-  return code;
-}
-
-static void tcpnodelay(struct connectdata *conn,
-                       curl_socket_t sockfd)
-{
-#ifdef TCP_NODELAY
-  struct SessionHandle *data= conn->data;
-  curl_socklen_t onoff = (curl_socklen_t) data->set.tcp_nodelay;
-  int proto = IPPROTO_TCP;
-
-#if 0
-  /* The use of getprotobyname() is disabled since it isn't thread-safe on
-     numerous systems. On these getprotobyname_r() should be used instead, but
-     that exists in at least one 4 arg version and one 5 arg version, and
-     since the proto number rarely changes anyway we now just use the hard
-     coded number. The "proper" fix would need a configure check for the
-     correct function much in the same style the gethostbyname_r versions are
-     detected. */
-  struct protoent *pe = getprotobyname("tcp");
-  if(pe)
-    proto = pe->p_proto;
-#endif
-
-  if(setsockopt(sockfd, proto, TCP_NODELAY, (void *)&onoff,
-                sizeof(onoff)) < 0)
-    infof(data, "Could not set TCP_NODELAY: %s\n",
-          Curl_strerror(conn, SOCKERRNO));
-  else
-    infof(data,"TCP_NODELAY set\n");
-#else
-  (void)conn;
-  (void)sockfd;
-#endif
-}
-
-#ifdef SO_NOSIGPIPE
-/* The preferred method on Mac OS X (10.2 and later) to prevent SIGPIPEs when
-   sending data to a dead peer (instead of relying on the 4th argument to send
-   being MSG_NOSIGNAL). Possibly also existing and in use on other BSD
-   systems? */
-static void nosigpipe(struct connectdata *conn,
-                      curl_socket_t sockfd)
-{
-  struct SessionHandle *data= conn->data;
-  int onoff = 1;
-  if(setsockopt(sockfd, SOL_SOCKET, SO_NOSIGPIPE, (void *)&onoff,
-                sizeof(onoff)) < 0)
-    infof(data, "Could not set SO_NOSIGPIPE: %s\n",
-          Curl_strerror(conn, SOCKERRNO));
-}
-#else
-#define nosigpipe(x,y)
-#endif
-
-#ifdef WIN32
-/* When you run a program that uses the Windows Sockets API, you may
-   experience slow performance when you copy data to a TCP server.
-
-   http://support.microsoft.com/kb/823764
-
-   Work-around: Make the Socket Send Buffer Size Larger Than the Program Send
-   Buffer Size
-
-*/
-void Curl_sndbufset(curl_socket_t sockfd)
-{
-  int val = CURL_MAX_WRITE_SIZE + 32;
-  int curval = 0;
-  int curlen = sizeof(curval);
-
-  if (getsockopt(sockfd, SOL_SOCKET, SO_SNDBUF, (char *)&curval, &curlen) == 0)
-    if (curval > val)
-      return;
-
-  setsockopt(sockfd, SOL_SOCKET, SO_SNDBUF, (const char *)&val, sizeof(val));
-}
-#endif
-
-
-/* singleipconnect() connects to the given IP only, and it may return without
-   having connected if used from the multi interface. */
-static curl_socket_t
-singleipconnect(struct connectdata *conn,
-                const Curl_addrinfo *ai,
-                long timeout_ms,
-                bool *connected)
-{
-  struct Curl_sockaddr_ex addr;
-  char addr_buf[128];
-  int rc;
-  int error;
-  bool isconnected;
-  struct SessionHandle *data = conn->data;
-  curl_socket_t sockfd;
-  CURLcode res;
-  const void *iptoprint;
-  struct sockaddr_in * const sa4 = (void *)&addr.sa_addr;
-#ifdef ENABLE_IPV6
-  struct sockaddr_in6 * const sa6 = (void *)&addr.sa_addr;
-#endif
-
-  /*
-   * The Curl_sockaddr_ex structure is basically libcurl's external API
-   * curl_sockaddr structure with enough space available to directly hold
-   * any protocol-specific address structures. The variable declared here
-   * will be used to pass / receive data to/from the fopensocket callback
-   * if this has been set, before that, it is initialized from parameters.
-   */
-
-  addr.family = ai->ai_family;
-  addr.socktype = conn->socktype;
-  addr.protocol = ai->ai_protocol;
-  addr.addrlen = ai->ai_addrlen;
-
-  if(addr.addrlen > sizeof(struct Curl_sockaddr_storage))
-     addr.addrlen = sizeof(struct Curl_sockaddr_storage);
-  memcpy(&addr.sa_addr, ai->ai_addr, addr.addrlen);
-
-  *connected = FALSE; /* default is not connected */
-
-  if(data->set.fopensocket)
-   /*
-    * If the opensocket callback is set, all the destination address
-    * information is passed to the callback. Depending on this information the
-    * callback may opt to abort the connection, this is indicated returning
-    * CURL_SOCKET_BAD; otherwise it will return a not-connected socket. When
-    * the callback returns a valid socket the destination address information
-    * might have been changed and this 'new' address will actually be used
-    * here to connect.
-    */
-    sockfd = data->set.fopensocket(data->set.opensocket_client,
-                                   CURLSOCKTYPE_IPCXN,
-                                   (struct curl_sockaddr *)&addr);
-  else
-    /* opensocket callback not set, so simply create the socket now */
-    sockfd = socket(addr.family, addr.socktype, addr.protocol);
-
-  if(sockfd == CURL_SOCKET_BAD)
-    /* no socket, no connection */
-    return CURL_SOCKET_BAD;
-
-#if defined(ENABLE_IPV6) && defined(HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID)
-  if (conn->scope && (addr.family == AF_INET6))
-    sa6->sin6_scope_id = conn->scope;
-#endif
-
-  /* FIXME: do we have Curl_printable_address-like with struct sockaddr* as
-     argument? */
-#if defined(HAVE_SYS_UN_H) && defined(AF_UNIX)
-  if(addr.family == AF_UNIX) {
-    infof(data, "  Trying %s... ",
-          ((const struct sockaddr_un*)(&addr.sa_addr))->sun_path);
-    snprintf(data->info.ip, MAX_IPADR_LEN, "%s",
-             ((const struct sockaddr_un*)(&addr.sa_addr))->sun_path);
-    strcpy(conn->ip_addr_str, data->info.ip);
-  }
-  else
-#endif
-  {
-#ifdef ENABLE_IPV6
-    if(addr.family == AF_INET6) {
-      iptoprint = &sa6->sin6_addr;
-      conn->bits.ipv6 = TRUE;
-    }
-    else
-#endif
-    {
-      iptoprint = &sa4->sin_addr;
-    }
-
-    if(Curl_inet_ntop(addr.family, iptoprint, addr_buf,
-                      sizeof(addr_buf)) != NULL) {
-      infof(data, "  Trying %s... ", addr_buf);
-      snprintf(data->info.ip, MAX_IPADR_LEN, "%s", addr_buf);
-      strcpy(conn->ip_addr_str, data->info.ip);
-    }
-  }
-
-  if(data->set.tcp_nodelay)
-    tcpnodelay(conn, sockfd);
-
-  nosigpipe(conn, sockfd);
-
-  Curl_sndbufset(sockfd);
-
-  if(data->set.fsockopt) {
-    /* activate callback for setting socket options */
-    error = data->set.fsockopt(data->set.sockopt_client,
-                               sockfd,
-                               CURLSOCKTYPE_IPCXN);
-    if(error) {
-      sclose(sockfd); /* close the socket and bail out */
-      return CURL_SOCKET_BAD;
-    }
-  }
-
-  /* possibly bind the local end to an IP, interface or port */
-  res = bindlocal(conn, sockfd, addr.family);
-  if(res) {
-    sclose(sockfd); /* close socket and bail out */
-    return CURL_SOCKET_BAD;
-  }
-
-  /* set socket non-blocking */
-  curlx_nonblock(sockfd, TRUE);
-
-  /* Connect TCP sockets, bind UDP */
-  if(conn->socktype == SOCK_STREAM)
-    rc = connect(sockfd, &addr.sa_addr, addr.addrlen);
-  else
-    rc = 0;
-
-  if(-1 == rc) {
-    error = SOCKERRNO;
-
-    switch (error) {
-    case EINPROGRESS:
-    case EWOULDBLOCK:
-#if defined(EAGAIN)
-#if (EAGAIN) != (EWOULDBLOCK)
-      /* On some platforms EAGAIN and EWOULDBLOCK are the
-       * same value, and on others they are different, hence
-       * the odd #if
-       */
-    case EAGAIN:
-#endif
-#endif
-      rc = waitconnect(conn, sockfd, timeout_ms);
-      break;
-    default:
-      /* unknown error, fallthrough and try another address! */
-      failf(data, "Failed to connect to %s: %s",
-            addr_buf, Curl_strerror(conn,error));
-      data->state.os_errno = error;
-      break;
-    }
-  }
-
-  /* The 'WAITCONN_TIMEOUT == rc' comes from the waitconnect(), and not from
-     connect(). We can be sure of this since connect() cannot return 1. */
-  if((WAITCONN_TIMEOUT == rc) &&
-     (data->state.used_interface == Curl_if_multi)) {
-    /* Timeout when running the multi interface */
-    return sockfd;
-  }
-
-  isconnected = verifyconnect(sockfd, &error);
-
-  if(!rc && isconnected) {
-    /* we are connected, awesome! */
-    *connected = TRUE; /* this is a true connect */
-    infof(data, "connected\n");
-    return sockfd;
-  }
-  else if(WAITCONN_TIMEOUT == rc)
-    infof(data, "Timeout\n");
-  else {
-    data->state.os_errno = error;
-    infof(data, "%s\n", Curl_strerror(conn, error));
-  }
-
-  /* connect failed or timed out */
-  sclose(sockfd);
-
-  return CURL_SOCKET_BAD;
-}
-
-/*
- * TCP connect to the given host with timeout, proxy or remote doesn't matter.
- * There might be more than one IP address to try out. Fill in the passed
- * pointer with the connected socket.
- */
-
-CURLcode Curl_connecthost(struct connectdata *conn,  /* context */
-                          const struct Curl_dns_entry *remotehost,
-                          curl_socket_t *sockconn,   /* the connected socket */
-                          Curl_addrinfo **addr,      /* the one we used */
-                          bool *connected)           /* really connected? */
-{
-  struct SessionHandle *data = conn->data;
-  curl_socket_t sockfd = CURL_SOCKET_BAD;
-  int aliasindex;
-  int num_addr;
-  Curl_addrinfo *ai;
-  Curl_addrinfo *curr_addr;
-
-  struct timeval after;
-  struct timeval before = Curl_tvnow();
-
-  /*************************************************************
-   * Figure out what maximum time we have left
-   *************************************************************/
-  long timeout_ms;
-  long timeout_per_addr;
-
-  DEBUGASSERT(sockconn);
-  *connected = FALSE; /* default to not connected */
-
-  /* get the timeout left */
-  timeout_ms = Curl_timeleft(conn, &before, TRUE);
-
-  if(timeout_ms < 0) {
-    /* a precaution, no need to continue if time already is up */
-    failf(data, "Connection time-out");
-    return CURLE_OPERATION_TIMEDOUT;
-  }
-  Curl_expire(data, timeout_ms);
-
-  /* Max time for each address */
-  num_addr = Curl_num_addresses(remotehost->addr);
-  timeout_per_addr = timeout_ms / num_addr;
-
-  ai = remotehost->addr;
-
-  /* Below is the loop that attempts to connect to all IP-addresses we
-   * know for the given host. One by one until one IP succeeds.
-   */
-
-  if(data->state.used_interface == Curl_if_multi)
-    /* don't hang when doing multi */
-    timeout_per_addr = 0;
-
-  /*
-   * Connecting with a Curl_addrinfo chain
-   */
-  for (curr_addr = ai, aliasindex=0; curr_addr;
-       curr_addr = curr_addr->ai_next, aliasindex++) {
-
-    /* start connecting to the IP curr_addr points to */
-    sockfd = singleipconnect(conn, curr_addr, timeout_per_addr, connected);
-
-    if(sockfd != CURL_SOCKET_BAD)
-      break;
-
-    /* get a new timeout for next attempt */
-    after = Curl_tvnow();
-    timeout_ms -= Curl_tvdiff(after, before);
-    if(timeout_ms < 0) {
-      failf(data, "connect() timed out!");
-      return CURLE_OPERATION_TIMEDOUT;
-    }
-    before = after;
-  }  /* end of connect-to-each-address loop */
-
-  *sockconn = sockfd;    /* the socket descriptor we've connected */
-
-  if(sockfd == CURL_SOCKET_BAD) {
-    /* no good connect was made */
-    failf(data, "couldn't connect to host");
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  /* leave the socket in non-blocking mode */
-
-  /* store the address we use */
-  if(addr)
-    *addr = curr_addr;
-
-  data->info.numconnects++; /* to track the number of connections made */
-
-  return CURLE_OK;
-}
-
-/*
- * Used to extract socket and connectdata struct for the most recent
- * transfer on the given SessionHandle.
- *
- * The socket 'long' will be -1 in case of failure!
- */
-CURLcode Curl_getconnectinfo(struct SessionHandle *data,
-                             long *param_longp,
-                             struct connectdata **connp)
-{
-  if((data->state.lastconnect != -1) &&
-     (data->state.connc->connects[data->state.lastconnect] != NULL)) {
-    struct connectdata *c =
-      data->state.connc->connects[data->state.lastconnect];
-    if(connp)
-      /* only store this if the caller cares for it */
-      *connp = c;
-    *param_longp = c->sock[FIRSTSOCKET];
-    /* we have a socket connected, let's determine if the server shut down */
-    /* determine if ssl */
-    if(c->ssl[FIRSTSOCKET].use) {
-      /* use the SSL context */
-      if(!Curl_ssl_check_cxn(c))
-        *param_longp = -1;   /* FIN received */
-    }
-/* Minix 3.1 doesn't support any flags on recv; just assume socket is OK */
-#ifdef MSG_PEEK
-    else {
-      /* use the socket */
-      char buf;
-      if(recv((RECV_TYPE_ARG1)c->sock[FIRSTSOCKET], (RECV_TYPE_ARG2)&buf,
-              (RECV_TYPE_ARG3)1, (RECV_TYPE_ARG4)MSG_PEEK) == 0) {
-        *param_longp = -1;   /* FIN received */
-      }
-    }
-#endif
-  }
-  else
-    *param_longp = -1;
-
-  return CURLE_OK;
-}
diff --git a/src/other/curl/lib/connect.h b/src/other/curl/lib/connect.h
deleted file mode 100644
index 36ea4f6..0000000
--- a/src/other/curl/lib/connect.h
+++ /dev/null
@@ -1,71 +0,0 @@
-#ifndef __CONNECT_H
-#define __CONNECT_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "nonblock.h" /* for curlx_nonblock(), formerly Curl_nonblock() */
-
-CURLcode Curl_is_connected(struct connectdata *conn,
-                           int sockindex,
-                           bool *connected);
-
-CURLcode Curl_connecthost(struct connectdata *conn,
-                          const struct Curl_dns_entry *host, /* connect to
-                                                                this */
-                          curl_socket_t *sockconn, /* not set if error */
-                          Curl_addrinfo **addr, /* the one we used */
-                          bool *connected); /* truly connected? */
-
-/* generic function that returns how much time there's left to run, according
-   to the timeouts set */
-long Curl_timeleft(struct connectdata *conn,
-                   struct timeval *nowp,
-                   bool duringconnect);
-
-#define DEFAULT_CONNECT_TIMEOUT 300000 /* milliseconds == five minutes */
-
-/*
- * Used to extract socket and connectdata struct for the most recent
- * transfer on the given SessionHandle.
- *
- * The socket 'long' will be -1 in case of failure!
- */
-CURLcode Curl_getconnectinfo(struct SessionHandle *data,
-                             long *param_longp,
-                             struct connectdata **connp);
-
-#ifdef WIN32
-/* When you run a program that uses the Windows Sockets API, you may
-   experience slow performance when you copy data to a TCP server.
-
-   http://support.microsoft.com/kb/823764
-
-   Work-around: Make the Socket Send Buffer Size Larger Than the Program Send
-   Buffer Size
-
-*/
-void Curl_sndbufset(curl_socket_t sockfd);
-#else
-#define Curl_sndbufset(y)
-#endif
-
-#endif
diff --git a/src/other/curl/lib/content_encoding.c b/src/other/curl/lib/content_encoding.c
deleted file mode 100644
index 69aa7bc..0000000
--- a/src/other/curl/lib/content_encoding.c
+++ /dev/null
@@ -1,426 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef HAVE_LIBZ
-
-#include <stdlib.h>
-#include <string.h>
-
-#include "urldata.h"
-#include <curl/curl.h>
-#include "sendf.h"
-#include "content_encoding.h"
-#include "curl_memory.h"
-
-#include "memdebug.h"
-
-/* Comment this out if zlib is always going to be at least ver. 1.2.0.4
-   (doing so will reduce code size slightly). */
-#define OLD_ZLIB_SUPPORT 1
-
-#define DSIZ CURL_MAX_WRITE_SIZE /* buffer size for decompressed data */
-
-#define GZIP_MAGIC_0 0x1f
-#define GZIP_MAGIC_1 0x8b
-
-/* gzip flag byte */
-#define ASCII_FLAG   0x01 /* bit 0 set: file probably ascii text */
-#define HEAD_CRC     0x02 /* bit 1 set: header CRC present */
-#define EXTRA_FIELD  0x04 /* bit 2 set: extra field present */
-#define ORIG_NAME    0x08 /* bit 3 set: original file name present */
-#define COMMENT      0x10 /* bit 4 set: file comment present */
-#define RESERVED     0xE0 /* bits 5..7: reserved */
-
-static CURLcode
-process_zlib_error(struct connectdata *conn, z_stream *z)
-{
-  struct SessionHandle *data = conn->data;
-  if(z->msg)
-    failf (data, "Error while processing content unencoding: %s",
-           z->msg);
-  else
-    failf (data, "Error while processing content unencoding: "
-           "Unknown failure within decompression software.");
-
-  return CURLE_BAD_CONTENT_ENCODING;
-}
-
-static CURLcode
-exit_zlib(z_stream *z, zlibInitState *zlib_init, CURLcode result)
-{
-  inflateEnd(z);
-  *zlib_init = ZLIB_UNINIT;
-  return result;
-}
-
-static CURLcode
-inflate_stream(struct connectdata *conn,
-               struct SingleRequest *k)
-{
-  int allow_restart = 1;
-  z_stream *z = &k->z;          /* zlib state structure */
-  uInt nread = z->avail_in;
-  Bytef *orig_in = z->next_in;
-  int status;                   /* zlib status */
-  CURLcode result = CURLE_OK;   /* Curl_client_write status */
-  char *decomp;                 /* Put the decompressed data here. */
-
-  /* Dynamically allocate a buffer for decompression because it's uncommonly
-     large to hold on the stack */
-  decomp = malloc(DSIZ);
-  if(decomp == NULL) {
-    return exit_zlib(z, &k->zlib_init, CURLE_OUT_OF_MEMORY);
-  }
-
-  /* because the buffer size is fixed, iteratively decompress and transfer to
-     the client via client_write. */
-  for (;;) {
-    /* (re)set buffer for decompressed output for every iteration */
-    z->next_out = (Bytef *)decomp;
-    z->avail_out = DSIZ;
-
-    status = inflate(z, Z_SYNC_FLUSH);
-    if(status == Z_OK || status == Z_STREAM_END) {
-      allow_restart = 0;
-      if(DSIZ - z->avail_out) {
-        result = Curl_client_write(conn, CLIENTWRITE_BODY, decomp,
-                                   DSIZ - z->avail_out);
-        /* if !CURLE_OK, clean up, return */
-        if(result) {
-          free(decomp);
-          return exit_zlib(z, &k->zlib_init, result);
-        }
-      }
-
-      /* Done? clean up, return */
-      if(status == Z_STREAM_END) {
-        free(decomp);
-        if(inflateEnd(z) == Z_OK)
-          return exit_zlib(z, &k->zlib_init, result);
-        else
-          return exit_zlib(z, &k->zlib_init, process_zlib_error(conn, z));
-      }
-
-      /* Done with these bytes, exit */
-      if(status == Z_OK && z->avail_in == 0) {
-        free(decomp);
-        return result;
-      }
-    }
-    else if(allow_restart && status == Z_DATA_ERROR) {
-      /* some servers seem to not generate zlib headers, so this is an attempt
-         to fix and continue anyway */
-
-      (void) inflateEnd(z);     /* don't care about the return code */
-      if(inflateInit2(z, -MAX_WBITS) != Z_OK) {
-        free(decomp);
-        return exit_zlib(z, &k->zlib_init, process_zlib_error(conn, z));
-      }
-      z->next_in = orig_in;
-      z->avail_in = nread;
-      allow_restart = 0;
-      continue;
-    }
-    else {                      /* Error; exit loop, handle below */
-      free(decomp);
-      return exit_zlib(z, &k->zlib_init, process_zlib_error(conn, z));
-    }
-  }
-  /* Will never get here */
-}
-
-CURLcode
-Curl_unencode_deflate_write(struct connectdata *conn,
-                            struct SingleRequest *k,
-                            ssize_t nread)
-{
-  z_stream *z = &k->z;          /* zlib state structure */
-
-  /* Initialize zlib? */
-  if(k->zlib_init == ZLIB_UNINIT) {
-    z->zalloc = (alloc_func)Z_NULL;
-    z->zfree = (free_func)Z_NULL;
-    z->opaque = 0;
-    z->next_in = NULL;
-    z->avail_in = 0;
-    if(inflateInit(z) != Z_OK)
-      return process_zlib_error(conn, z);
-    k->zlib_init = ZLIB_INIT;
-  }
-
-  /* Set the compressed input when this function is called */
-  z->next_in = (Bytef *)k->str;
-  z->avail_in = (uInt)nread;
-
-  /* Now uncompress the data */
-  return inflate_stream(conn, k);
-}
-
-#ifdef OLD_ZLIB_SUPPORT
-/* Skip over the gzip header */
-static enum {
-  GZIP_OK,
-  GZIP_BAD,
-  GZIP_UNDERFLOW
-} check_gzip_header(unsigned char const *data, ssize_t len, ssize_t *headerlen)
-{
-  int method, flags;
-  const ssize_t totallen = len;
-
-  /* The shortest header is 10 bytes */
-  if(len < 10)
-    return GZIP_UNDERFLOW;
-
-  if((data[0] != GZIP_MAGIC_0) || (data[1] != GZIP_MAGIC_1))
-    return GZIP_BAD;
-
-  method = data[2];
-  flags = data[3];
-
-  if(method != Z_DEFLATED || (flags & RESERVED) != 0) {
-    /* Can't handle this compression method or unknown flag */
-    return GZIP_BAD;
-  }
-
-  /* Skip over time, xflags, OS code and all previous bytes */
-  len -= 10;
-  data += 10;
-
-  if(flags & EXTRA_FIELD) {
-    ssize_t extra_len;
-
-    if(len < 2)
-      return GZIP_UNDERFLOW;
-
-    extra_len = (data[1] << 8) | data[0];
-
-    if(len < (extra_len+2))
-      return GZIP_UNDERFLOW;
-
-    len -= (extra_len + 2);
-    data += (extra_len + 2);
-  }
-
-  if(flags & ORIG_NAME) {
-    /* Skip over NUL-terminated file name */
-    while(len && *data) {
-      --len;
-      ++data;
-    }
-    if(!len || *data)
-      return GZIP_UNDERFLOW;
-
-    /* Skip over the NUL */
-    --len;
-    ++data;
-  }
-
-  if(flags & COMMENT) {
-    /* Skip over NUL-terminated comment */
-    while(len && *data) {
-      --len;
-      ++data;
-    }
-    if(!len || *data)
-      return GZIP_UNDERFLOW;
-
-    /* Skip over the NUL */
-    --len;
-    ++data;
-  }
-
-  if(flags & HEAD_CRC) {
-    if(len < 2)
-      return GZIP_UNDERFLOW;
-
-    len -= 2;
-    data += 2;
-  }
-
-  *headerlen = totallen - len;
-  return GZIP_OK;
-}
-#endif
-
-CURLcode
-Curl_unencode_gzip_write(struct connectdata *conn,
-                         struct SingleRequest *k,
-                         ssize_t nread)
-{
-  z_stream *z = &k->z;          /* zlib state structure */
-
-  /* Initialize zlib? */
-  if(k->zlib_init == ZLIB_UNINIT) {
-    z->zalloc = (alloc_func)Z_NULL;
-    z->zfree = (free_func)Z_NULL;
-    z->opaque = 0;
-    z->next_in = NULL;
-    z->avail_in = 0;
-
-    if(strcmp(zlibVersion(), "1.2.0.4") >= 0) {
-      /* zlib ver. >= 1.2.0.4 supports transparent gzip decompressing */
-      if(inflateInit2(z, MAX_WBITS+32) != Z_OK) {
-        return process_zlib_error(conn, z);
-      }
-      k->zlib_init = ZLIB_INIT_GZIP; /* Transparent gzip decompress state */
-    }
-    else {
-      /* we must parse the gzip header ourselves */
-      if(inflateInit2(z, -MAX_WBITS) != Z_OK) {
-        return process_zlib_error(conn, z);
-      }
-      k->zlib_init = ZLIB_INIT;   /* Initial call state */
-    }
-  }
-
-  if(k->zlib_init == ZLIB_INIT_GZIP) {
-    /* Let zlib handle the gzip decompression entirely */
-    z->next_in = (Bytef *)k->str;
-    z->avail_in = (uInt)nread;
-    /* Now uncompress the data */
-    return inflate_stream(conn, k);
-  }
-
-#ifndef OLD_ZLIB_SUPPORT
-  /* Support for old zlib versions is compiled away and we are running with
-     an old version, so return an error. */
-  return exit_zlib(z, &k->zlib_init, CURLE_FUNCTION_NOT_FOUND);
-
-#else
-  /* This next mess is to get around the potential case where there isn't
-   * enough data passed in to skip over the gzip header.  If that happens, we
-   * malloc a block and copy what we have then wait for the next call.  If
-   * there still isn't enough (this is definitely a worst-case scenario), we
-   * make the block bigger, copy the next part in and keep waiting.
-   *
-   * This is only required with zlib versions < 1.2.0.4 as newer versions
-   * can handle the gzip header themselves.
-   */
-
-  switch (k->zlib_init) {
-  /* Skip over gzip header? */
-  case ZLIB_INIT:
-  {
-    /* Initial call state */
-    ssize_t hlen;
-
-    switch (check_gzip_header((unsigned char *)k->str, nread, &hlen)) {
-    case GZIP_OK:
-      z->next_in = (Bytef *)k->str + hlen;
-      z->avail_in = (uInt)(nread - hlen);
-      k->zlib_init = ZLIB_GZIP_INFLATING; /* Inflating stream state */
-      break;
-
-    case GZIP_UNDERFLOW:
-      /* We need more data so we can find the end of the gzip header.  It's
-       * possible that the memory block we malloc here will never be freed if
-       * the transfer abruptly aborts after this point.  Since it's unlikely
-       * that circumstances will be right for this code path to be followed in
-       * the first place, and it's even more unlikely for a transfer to fail
-       * immediately afterwards, it should seldom be a problem.
-       */
-      z->avail_in = (uInt)nread;
-      z->next_in = malloc(z->avail_in);
-      if(z->next_in == NULL) {
-        return exit_zlib(z, &k->zlib_init, CURLE_OUT_OF_MEMORY);
-      }
-      memcpy(z->next_in, k->str, z->avail_in);
-      k->zlib_init = ZLIB_GZIP_HEADER;   /* Need more gzip header data state */
-      /* We don't have any data to inflate yet */
-      return CURLE_OK;
-
-    case GZIP_BAD:
-    default:
-      return exit_zlib(z, &k->zlib_init, process_zlib_error(conn, z));
-    }
-
-  }
-  break;
-
-  case ZLIB_GZIP_HEADER:
-  {
-    /* Need more gzip header data state */
-    ssize_t hlen;
-    unsigned char *oldblock = z->next_in;
-
-    z->avail_in += (uInt)nread;
-    z->next_in = realloc(z->next_in, z->avail_in);
-    if(z->next_in == NULL) {
-      free(oldblock);
-      return exit_zlib(z, &k->zlib_init, CURLE_OUT_OF_MEMORY);
-    }
-    /* Append the new block of data to the previous one */
-    memcpy(z->next_in + z->avail_in - nread, k->str, nread);
-
-    switch (check_gzip_header(z->next_in, z->avail_in, &hlen)) {
-    case GZIP_OK:
-      /* This is the zlib stream data */
-      free(z->next_in);
-      /* Don't point into the malloced block since we just freed it */
-      z->next_in = (Bytef *)k->str + hlen + nread - z->avail_in;
-      z->avail_in = (uInt)(z->avail_in - hlen);
-      k->zlib_init = ZLIB_GZIP_INFLATING;   /* Inflating stream state */
-      break;
-
-    case GZIP_UNDERFLOW:
-      /* We still don't have any data to inflate! */
-      return CURLE_OK;
-
-    case GZIP_BAD:
-    default:
-      free(z->next_in);
-      return exit_zlib(z, &k->zlib_init, process_zlib_error(conn, z));
-    }
-
-  }
-  break;
-
-  case ZLIB_GZIP_INFLATING:
-  default:
-    /* Inflating stream state */
-    z->next_in = (Bytef *)k->str;
-    z->avail_in = (uInt)nread;
-    break;
-  }
-
-  if(z->avail_in == 0) {
-    /* We don't have any data to inflate; wait until next time */
-    return CURLE_OK;
-  }
-
-  /* We've parsed the header, now uncompress the data */
-  return inflate_stream(conn, k);
-#endif
-}
-
-void Curl_unencode_cleanup(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  struct SingleRequest *k = &data->req;
-  z_stream *z = &k->z;
-  if(k->zlib_init != ZLIB_UNINIT)
-    (void) exit_zlib(z, &k->zlib_init, CURLE_OK);
-}
-
-#endif /* HAVE_LIBZ */
diff --git a/src/other/curl/lib/content_encoding.h b/src/other/curl/lib/content_encoding.h
deleted file mode 100644
index 3aff9d3..0000000
--- a/src/other/curl/lib/content_encoding.h
+++ /dev/null
@@ -1,48 +0,0 @@
-#ifndef __CURL_CONTENT_ENCODING_H
-#define __CURL_CONTENT_ENCODING_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include "setup.h"
-
-/*
- * Comma-separated list all supported Content-Encodings ('identity' is implied)
- */
-#ifdef HAVE_LIBZ
-#define ALL_CONTENT_ENCODINGS "deflate, gzip"
-/* force a cleanup */
-void Curl_unencode_cleanup(struct connectdata *conn);
-#else
-#define ALL_CONTENT_ENCODINGS "identity"
-#define Curl_unencode_cleanup(x)
-#endif
-
-CURLcode Curl_unencode_deflate_write(struct connectdata *conn,
-                                     struct SingleRequest *req,
-                                     ssize_t nread);
-
-CURLcode
-Curl_unencode_gzip_write(struct connectdata *conn,
-                         struct SingleRequest *k,
-                         ssize_t nread);
-
-
-#endif
diff --git a/src/other/curl/lib/cookie.c b/src/other/curl/lib/cookie.c
deleted file mode 100644
index 21617ad..0000000
--- a/src/other/curl/lib/cookie.c
+++ /dev/null
@@ -1,1135 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/***
-
-
-RECEIVING COOKIE INFORMATION
-============================
-
-struct CookieInfo *cookie_init(char *file);
-
-        Inits a cookie struct to store data in a local file. This is always
-        called before any cookies are set.
-
-int cookies_set(struct CookieInfo *cookie, char *cookie_line);
-
-        The 'cookie_line' parameter is a full "Set-cookie:" line as
-        received from a server.
-
-        The function need to replace previously stored lines that this new
-        line superceeds.
-
-        It may remove lines that are expired.
-
-        It should return an indication of success/error.
-
-
-SENDING COOKIE INFORMATION
-==========================
-
-struct Cookies *cookie_getlist(struct CookieInfo *cookie,
-                               char *host, char *path, bool secure);
-
-        For a given host and path, return a linked list of cookies that
-        the client should send to the server if used now. The secure
-        boolean informs the cookie if a secure connection is achieved or
-        not.
-
-        It shall only return cookies that haven't expired.
-
-
-Example set of cookies:
-
-    Set-cookie: PRODUCTINFO=webxpress; domain=.fidelity.com; path=/; secure
-    Set-cookie: PERSONALIZE=none;expires=Monday, 13-Jun-1988 03:04:55 GMT;
-    domain=.fidelity.com; path=/ftgw; secure
-    Set-cookie: FidHist=none;expires=Monday, 13-Jun-1988 03:04:55 GMT;
-    domain=.fidelity.com; path=/; secure
-    Set-cookie: FidOrder=none;expires=Monday, 13-Jun-1988 03:04:55 GMT;
-    domain=.fidelity.com; path=/; secure
-    Set-cookie: DisPend=none;expires=Monday, 13-Jun-1988 03:04:55 GMT;
-    domain=.fidelity.com; path=/; secure
-    Set-cookie: FidDis=none;expires=Monday, 13-Jun-1988 03:04:55 GMT;
-    domain=.fidelity.com; path=/; secure
-    Set-cookie:
-    Session_Key at 6791a9e0-901a-11d0-a1c8-9b012c88aa77=none;expires=Monday,
-    13-Jun-1988 03:04:55 GMT; domain=.fidelity.com; path=/; secure
-****/
-
-
-#include "setup.h"
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
-
-#include <stdlib.h>
-#include <string.h>
-
-#define _MPRINTF_REPLACE /* without this on windows OS we get undefined reference to snprintf */
-#include <curl/mprintf.h>
-
-#include "urldata.h"
-#include "cookie.h"
-#include "strequal.h"
-#include "strtok.h"
-#include "sendf.h"
-#include "curl_memory.h"
-#include "share.h"
-#include "strtoofft.h"
-#include "rawstr.h"
-#include "curl_memrchr.h"
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-
-static void freecookie(struct Cookie *co)
-{
-  if(co->expirestr)
-    free(co->expirestr);
-  if(co->domain)
-    free(co->domain);
-  if(co->path)
-    free(co->path);
-  if(co->name)
-    free(co->name);
-  if(co->value)
-    free(co->value);
-  if(co->maxage)
-    free(co->maxage);
-  if(co->version)
-    free(co->version);
-
-  free(co);
-}
-
-static bool tailmatch(const char *little, const char *bigone)
-{
-  size_t littlelen = strlen(little);
-  size_t biglen = strlen(bigone);
-
-  if(littlelen > biglen)
-    return FALSE;
-
-  return (bool)Curl_raw_equal(little, bigone+biglen-littlelen);
-}
-
-/*
- * Load cookies from all given cookie files (CURLOPT_COOKIEFILE).
- */
-void Curl_cookie_loadfiles(struct SessionHandle *data)
-{
-  struct curl_slist *list = data->change.cookielist;
-  if(list) {
-    Curl_share_lock(data, CURL_LOCK_DATA_COOKIE, CURL_LOCK_ACCESS_SINGLE);
-    while(list) {
-      data->cookies = Curl_cookie_init(data,
-                                       list->data,
-                                       data->cookies,
-                                       data->set.cookiesession);
-      list = list->next;
-    }
-    Curl_share_unlock(data, CURL_LOCK_DATA_COOKIE);
-    curl_slist_free_all(data->change.cookielist); /* clean up list */
-    data->change.cookielist = NULL; /* don't do this again! */
-  }
-}
-
-/*
- * strstore() makes a strdup() on the 'newstr' and if '*str' is non-NULL
- * that will be freed before the allocated string is stored there.
- *
- * It is meant to easily replace strdup()
- */
-static void strstore(char **str, const char *newstr)
-{
-  if(*str)
-    free(*str);
-  *str = strdup(newstr);
-}
-
-
-/****************************************************************************
- *
- * Curl_cookie_add()
- *
- * Add a single cookie line to the cookie keeping object.
- *
- ***************************************************************************/
-
-struct Cookie *
-Curl_cookie_add(struct SessionHandle *data,
-                /* The 'data' pointer here may be NULL at times, and thus
-                   must only be used very carefully for things that can deal
-                   with data being NULL. Such as infof() and similar */
-
-                struct CookieInfo *c,
-                bool httpheader, /* TRUE if HTTP header-style line */
-                char *lineptr,   /* first character of the line */
-                const char *domain, /* default domain */
-                const char *path)   /* full path used when this cookie is set,
-                                       used to get default path for the cookie
-                                       unless set */
-{
-  struct Cookie *clist;
-  char name[MAX_NAME];
-  struct Cookie *co;
-  struct Cookie *lastc=NULL;
-  time_t now = time(NULL);
-  bool replace_old = FALSE;
-  bool badcookie = FALSE; /* cookies are good by default. mmmmm yummy */
-
-#ifdef CURL_DISABLE_VERBOSE_STRINGS
-  (void)data;
-#endif
-
-  /* First, alloc and init a new struct for it */
-  co = calloc(1, sizeof(struct Cookie));
-  if(!co)
-    return NULL; /* bail out if we're this low on memory */
-
-  if(httpheader) {
-    /* This line was read off a HTTP-header */
-    const char *ptr;
-    const char *sep;
-    const char *semiptr;
-    char *what;
-
-    what = malloc(MAX_COOKIE_LINE);
-    if(!what) {
-      free(co);
-      return NULL;
-    }
-
-    semiptr=strchr(lineptr, ';'); /* first, find a semicolon */
-
-    while(*lineptr && ISBLANK(*lineptr))
-      lineptr++;
-
-    ptr = lineptr;
-    do {
-      /* we have a <what>=<this> pair or a 'secure' word here */
-      sep = strchr(ptr, '=');
-      if(sep && (!semiptr || (semiptr>sep)) ) {
-        /*
-         * There is a = sign and if there was a semicolon too, which make sure
-         * that the semicolon comes _after_ the equal sign.
-         */
-
-        name[0]=what[0]=0; /* init the buffers */
-        if(1 <= sscanf(ptr, "%" MAX_NAME_TXT "[^;=]=%"
-                       MAX_COOKIE_LINE_TXT "[^;\r\n]",
-                       name, what)) {
-          /* this is a <name>=<what> pair. We use strstore() below to properly
-             deal with received cookie headers that have the same string
-             property set more than once, and then we use the last one. */
-
-          const char *whatptr;
-
-          /* Strip off trailing whitespace from the 'what' */
-          size_t len=strlen(what);
-          while(len && ISBLANK(what[len-1])) {
-            what[len-1]=0;
-            len--;
-          }
-
-          /* Skip leading whitespace from the 'what' */
-          whatptr=what;
-          while(*whatptr && ISBLANK(*whatptr)) {
-            whatptr++;
-          }
-
-          if(Curl_raw_equal("path", name)) {
-            strstore(&co->path, whatptr);
-            if(!co->path) {
-              badcookie = TRUE; /* out of memory bad */
-              break;
-            }
-          }
-          else if(Curl_raw_equal("domain", name)) {
-            /* note that this name may or may not have a preceeding dot, but
-               we don't care about that, we treat the names the same anyway */
-
-            const char *domptr=whatptr;
-            int dotcount=1;
-
-            /* Count the dots, we need to make sure that there are enough
-               of them. */
-
-            if('.' == whatptr[0])
-              /* don't count the initial dot, assume it */
-              domptr++;
-
-            do {
-              domptr = strchr(domptr, '.');
-              if(domptr) {
-                domptr++;
-                dotcount++;
-              }
-            } while(domptr);
-
-            /* The original Netscape cookie spec defined that this domain name
-               MUST have three dots (or two if one of the seven holy TLDs),
-               but it seems that these kinds of cookies are in use "out there"
-               so we cannot be that strict. I've therefore lowered the check
-               to not allow less than two dots. */
-
-            if(dotcount < 2) {
-              /* Received and skipped a cookie with a domain using too few
-                 dots. */
-              badcookie=TRUE; /* mark this as a bad cookie */
-              infof(data, "skipped cookie with illegal dotcount domain: %s\n",
-                    whatptr);
-            }
-            else {
-              /* Now, we make sure that our host is within the given domain,
-                 or the given domain is not valid and thus cannot be set. */
-
-              if('.' == whatptr[0])
-                whatptr++; /* ignore preceeding dot */
-
-              if(!domain || tailmatch(whatptr, domain)) {
-                const char *tailptr=whatptr;
-                if(tailptr[0] == '.')
-                  tailptr++;
-                strstore(&co->domain, tailptr); /* don't prefix w/dots
-                                                   internally */
-                if(!co->domain) {
-                  badcookie = TRUE;
-                  break;
-                }
-                co->tailmatch=TRUE; /* we always do that if the domain name was
-                                       given */
-              }
-              else {
-                /* we did not get a tailmatch and then the attempted set domain
-                   is not a domain to which the current host belongs. Mark as
-                   bad. */
-                badcookie=TRUE;
-                infof(data, "skipped cookie with bad tailmatch domain: %s\n",
-                      whatptr);
-              }
-            }
-          }
-          else if(Curl_raw_equal("version", name)) {
-            strstore(&co->version, whatptr);
-            if(!co->version) {
-              badcookie = TRUE;
-              break;
-            }
-          }
-          else if(Curl_raw_equal("max-age", name)) {
-            /* Defined in RFC2109:
-
-               Optional.  The Max-Age attribute defines the lifetime of the
-               cookie, in seconds.  The delta-seconds value is a decimal non-
-               negative integer.  After delta-seconds seconds elapse, the
-               client should discard the cookie.  A value of zero means the
-               cookie should be discarded immediately.
-
-             */
-            strstore(&co->maxage, whatptr);
-            if(!co->maxage) {
-              badcookie = TRUE;
-              break;
-            }
-            co->expires =
-              atoi((*co->maxage=='\"')?&co->maxage[1]:&co->maxage[0]) +
-              (long)now;
-          }
-          else if(Curl_raw_equal("expires", name)) {
-            strstore(&co->expirestr, whatptr);
-            if(!co->expirestr) {
-              badcookie = TRUE;
-              break;
-            }
-            /* Note that if the date couldn't get parsed for whatever reason,
-               the cookie will be treated as a session cookie */
-            co->expires = curl_getdate(what, &now);
-
-            /* Session cookies have expires set to 0 so if we get that back
-               from the date parser let's add a second to make it a
-               non-session cookie */
-            if (co->expires == 0)
-              co->expires = 1;
-            else if( co->expires < 0 )
-                co->expires = 0;
-          }
-          else if(!co->name) {
-            co->name = strdup(name);
-            co->value = strdup(whatptr);
-            if(!co->name || !co->value) {
-              badcookie = TRUE;
-              break;
-            }
-          }
-          /*
-            else this is the second (or more) name we don't know
-            about! */
-        }
-        else {
-          /* this is an "illegal" <what>=<this> pair */
-        }
-      }
-      else {
-        if(sscanf(ptr, "%" MAX_COOKIE_LINE_TXT "[^;\r\n]",
-                  what)) {
-          if(Curl_raw_equal("secure", what)) {
-            co->secure = TRUE;
-          }
-          else if (Curl_raw_equal("httponly", what)) {
-            co->httponly = TRUE;
-          }
-          /* else,
-             unsupported keyword without assign! */
-
-        }
-      }
-      if(!semiptr || !*semiptr) {
-        /* we already know there are no more cookies */
-        semiptr = NULL;
-        continue;
-      }
-
-      ptr=semiptr+1;
-      while(*ptr && ISBLANK(*ptr))
-        ptr++;
-      semiptr=strchr(ptr, ';'); /* now, find the next semicolon */
-
-      if(!semiptr && *ptr)
-        /* There are no more semicolons, but there's a final name=value pair
-           coming up */
-        semiptr=strchr(ptr, '\0');
-    } while(semiptr);
-
-    if(!badcookie && !co->domain) {
-      if(domain) {
-        /* no domain was given in the header line, set the default */
-        co->domain=strdup(domain);
-        if(!co->domain)
-          badcookie = TRUE;
-      }
-    }
-
-    if(!badcookie && !co->path && path) {
-      /* No path was given in the header line, set the default.
-         Note that the passed-in path to this function MAY have a '?' and
-         following part that MUST not be stored as part of the path. */
-      char *queryp = strchr(path, '?');
-
-      /* queryp is where the interesting part of the path ends, so now we
-         want to the find the last */
-      char *endslash;
-      if(!queryp)
-        endslash = strrchr(path, '/');
-      else
-        endslash = memrchr(path, '/', (size_t)(queryp - path));
-      if(endslash) {
-        size_t pathlen = (size_t)(endslash-path+1); /* include ending slash */
-        co->path=malloc(pathlen+1); /* one extra for the zero byte */
-        if(co->path) {
-          memcpy(co->path, path, pathlen);
-          co->path[pathlen]=0; /* zero terminate */
-        }
-        else
-          badcookie = TRUE;
-      }
-    }
-
-    free(what);
-
-    if(badcookie || !co->name) {
-      /* we didn't get a cookie name or a bad one,
-         this is an illegal line, bail out */
-      freecookie(co);
-      return NULL;
-    }
-
-  }
-  else {
-    /* This line is NOT a HTTP header style line, we do offer support for
-       reading the odd netscape cookies-file format here */
-    char *ptr;
-    char *firstptr;
-    char *tok_buf=NULL;
-    int fields;
-
-    /* IE introduced HTTP-only cookies to prevent XSS attacks. Cookies
-       marked with httpOnly after the domain name are not accessible
-       from javascripts, but since curl does not operate at javascript
-       level, we include them anyway. In Firefox's cookie files, these
-       lines are preceeded with #HttpOnly_ and then everything is
-       as usual, so we skip 10 characters of the line..
-    */
-    if (strncmp(lineptr, "#HttpOnly_", 10) == 0) {
-      lineptr += 10;
-      co->httponly = TRUE;
-    }
-
-    if(lineptr[0]=='#') {
-      /* don't even try the comments */
-      free(co);
-      return NULL;
-    }
-    /* strip off the possible end-of-line characters */
-    ptr=strchr(lineptr, '\r');
-    if(ptr)
-      *ptr=0; /* clear it */
-    ptr=strchr(lineptr, '\n');
-    if(ptr)
-      *ptr=0; /* clear it */
-
-    firstptr=strtok_r(lineptr, "\t", &tok_buf); /* tokenize it on the TAB */
-
-    /* Here's a quick check to eliminate normal HTTP-headers from this */
-    if(!firstptr || strchr(firstptr, ':')) {
-      free(co);
-      return NULL;
-    }
-
-    /* Now loop through the fields and init the struct we already have
-       allocated */
-    for(ptr=firstptr, fields=0; ptr && !badcookie;
-        ptr=strtok_r(NULL, "\t", &tok_buf), fields++) {
-      switch(fields) {
-      case 0:
-        if(ptr[0]=='.') /* skip preceeding dots */
-          ptr++;
-        co->domain = strdup(ptr);
-        if(!co->domain)
-          badcookie = TRUE;
-        break;
-      case 1:
-        /* This field got its explanation on the 23rd of May 2001 by
-           Andrés García:
-
-           flag: A TRUE/FALSE value indicating if all machines within a given
-           domain can access the variable. This value is set automatically by
-           the browser, depending on the value you set for the domain.
-
-           As far as I can see, it is set to true when the cookie says
-           .domain.com and to false when the domain is complete www.domain.com
-        */
-        co->tailmatch=(bool)Curl_raw_equal(ptr, "TRUE"); /* store information */
-        break;
-      case 2:
-        /* It turns out, that sometimes the file format allows the path
-           field to remain not filled in, we try to detect this and work
-           around it! Andrés García made us aware of this... */
-        if(strcmp("TRUE", ptr) && strcmp("FALSE", ptr)) {
-          /* only if the path doesn't look like a boolean option! */
-          co->path = strdup(ptr);
-          if(!co->path)
-            badcookie = TRUE;
-          break;
-        }
-        /* this doesn't look like a path, make one up! */
-        co->path = strdup("/");
-        if(!co->path)
-          badcookie = TRUE;
-        fields++; /* add a field and fall down to secure */
-        /* FALLTHROUGH */
-      case 3:
-        co->secure = (bool)Curl_raw_equal(ptr, "TRUE");
-        break;
-      case 4:
-        co->expires = curlx_strtoofft(ptr, NULL, 10);
-        break;
-      case 5:
-        co->name = strdup(ptr);
-        if(!co->name)
-          badcookie = TRUE;
-        break;
-      case 6:
-        co->value = strdup(ptr);
-        if(!co->value)
-          badcookie = TRUE;
-        break;
-      }
-    }
-    if(6 == fields) {
-      /* we got a cookie with blank contents, fix it */
-      co->value = strdup("");
-      if(!co->value)
-        badcookie = TRUE;
-      else
-        fields++;
-    }
-
-    if(!badcookie && (7 != fields))
-      /* we did not find the sufficient number of fields */
-      badcookie = TRUE;
-
-    if(badcookie) {
-      freecookie(co);
-      return NULL;
-    }
-
-  }
-
-  if(!c->running &&    /* read from a file */
-     c->newsession &&  /* clean session cookies */
-     !co->expires) {   /* this is a session cookie since it doesn't expire! */
-    freecookie(co);
-    return NULL;
-  }
-
-  co->livecookie = c->running;
-
-  /* now, we have parsed the incoming line, we must now check if this
-     superceeds an already existing cookie, which it may if the previous have
-     the same domain and path as this */
-
-  clist = c->cookies;
-  replace_old = FALSE;
-  while(clist) {
-    if(Curl_raw_equal(clist->name, co->name)) {
-      /* the names are identical */
-
-      if(clist->domain && co->domain) {
-        if(Curl_raw_equal(clist->domain, co->domain))
-          /* The domains are identical */
-          replace_old=TRUE;
-      }
-      else if(!clist->domain && !co->domain)
-        replace_old = TRUE;
-
-      if(replace_old) {
-        /* the domains were identical */
-
-        if(clist->path && co->path) {
-          if(Curl_raw_equal(clist->path, co->path)) {
-            replace_old = TRUE;
-          }
-          else
-            replace_old = FALSE;
-        }
-        else if(!clist->path && !co->path)
-          replace_old = TRUE;
-        else
-          replace_old = FALSE;
-
-      }
-
-      if(replace_old && !co->livecookie && clist->livecookie) {
-        /* Both cookies matched fine, except that the already present
-           cookie is "live", which means it was set from a header, while
-           the new one isn't "live" and thus only read from a file. We let
-           live cookies stay alive */
-
-        /* Free the newcomer and get out of here! */
-        freecookie(co);
-        return NULL;
-      }
-
-      if(replace_old) {
-        co->next = clist->next; /* get the next-pointer first */
-
-        /* then free all the old pointers */
-        free(clist->name);
-        if(clist->value)
-          free(clist->value);
-        if(clist->domain)
-          free(clist->domain);
-        if(clist->path)
-          free(clist->path);
-        if(clist->expirestr)
-          free(clist->expirestr);
-
-        if(clist->version)
-          free(clist->version);
-        if(clist->maxage)
-          free(clist->maxage);
-
-        *clist = *co;  /* then store all the new data */
-
-        free(co);   /* free the newly alloced memory */
-        co = clist; /* point to the previous struct instead */
-
-        /* We have replaced a cookie, now skip the rest of the list but
-           make sure the 'lastc' pointer is properly set */
-        do {
-          lastc = clist;
-          clist = clist->next;
-        } while(clist);
-        break;
-      }
-    }
-    lastc = clist;
-    clist = clist->next;
-  }
-
-  if(c->running)
-    /* Only show this when NOT reading the cookies from a file */
-    infof(data, "%s cookie %s=\"%s\" for domain %s, path %s, "
-          "expire %" FORMAT_OFF_T "\n",
-          replace_old?"Replaced":"Added", co->name, co->value,
-          co->domain, co->path, co->expires);
-
-  if(!replace_old) {
-    /* then make the last item point on this new one */
-    if(lastc)
-      lastc->next = co;
-    else
-      c->cookies = co;
-  }
-
-  c->numcookies++; /* one more cookie in the jar */
-  return co;
-}
-
-/*****************************************************************************
- *
- * Curl_cookie_init()
- *
- * Inits a cookie struct to read data from a local file. This is always
- * called before any cookies are set. File may be NULL.
- *
- * If 'newsession' is TRUE, discard all "session cookies" on read from file.
- *
- ****************************************************************************/
-struct CookieInfo *Curl_cookie_init(struct SessionHandle *data,
-                                    const char *file,
-                                    struct CookieInfo *inc,
-                                    bool newsession)
-{
-  struct CookieInfo *c;
-  FILE *fp;
-  bool fromfile=TRUE;
-
-  if(NULL == inc) {
-    /* we didn't get a struct, create one */
-    c = calloc(1, sizeof(struct CookieInfo));
-    if(!c)
-      return NULL; /* failed to get memory */
-    c->filename = strdup(file?file:"none"); /* copy the name just in case */
-  }
-  else {
-    /* we got an already existing one, use that */
-    c = inc;
-  }
-  c->running = FALSE; /* this is not running, this is init */
-
-  if(file && strequal(file, "-")) {
-    fp = stdin;
-    fromfile=FALSE;
-  }
-  else if(file && !*file) {
-    /* points to a "" string */
-    fp = NULL;
-  }
-  else
-    fp = file?fopen(file, "r"):NULL;
-
-  c->newsession = newsession; /* new session? */
-
-  if(fp) {
-    char *lineptr;
-    bool headerline;
-
-    char *line = malloc(MAX_COOKIE_LINE);
-    if(line) {
-      while(fgets(line, MAX_COOKIE_LINE, fp)) {
-        if(checkprefix("Set-Cookie:", line)) {
-          /* This is a cookie line, get it! */
-          lineptr=&line[11];
-          headerline=TRUE;
-        }
-        else {
-          lineptr=line;
-          headerline=FALSE;
-        }
-        while(*lineptr && ISBLANK(*lineptr))
-          lineptr++;
-
-        Curl_cookie_add(data, c, headerline, lineptr, NULL, NULL);
-      }
-      free(line); /* free the line buffer */
-    }
-    if(fromfile)
-      fclose(fp);
-  }
-
-  c->running = TRUE;          /* now, we're running */
-
-  return c;
-}
-
-/* sort this so that the longest path gets before the shorter path */
-static int cookie_sort(const void *p1, const void *p2)
-{
-  struct Cookie *c1 = *(struct Cookie **)p1;
-  struct Cookie *c2 = *(struct Cookie **)p2;
-
-  size_t l1 = c1->path?strlen(c1->path):0;
-  size_t l2 = c2->path?strlen(c2->path):0;
-
-  return (l2 > l1) ? 1 : (l2 < l1) ? -1 : 0 ;
-}
-
-/*****************************************************************************
- *
- * Curl_cookie_getlist()
- *
- * For a given host and path, return a linked list of cookies that the
- * client should send to the server if used now. The secure boolean informs
- * the cookie if a secure connection is achieved or not.
- *
- * It shall only return cookies that haven't expired.
- *
- ****************************************************************************/
-
-struct Cookie *Curl_cookie_getlist(struct CookieInfo *c,
-                                   const char *host, const char *path,
-                                   bool secure)
-{
-  struct Cookie *newco;
-  struct Cookie *co;
-  time_t now = time(NULL);
-  struct Cookie *mainco=NULL;
-  size_t matches = 0;
-
-  if(!c || !c->cookies)
-    return NULL; /* no cookie struct or no cookies in the struct */
-
-  co = c->cookies;
-
-  while(co) {
-    /* only process this cookie if it is not expired or had no expire
-       date AND that if the cookie requires we're secure we must only
-       continue if we are! */
-    if( (!co->expires || (co->expires > now)) &&
-        (co->secure?secure:TRUE) ) {
-
-      /* now check if the domain is correct */
-      if(!co->domain ||
-         (co->tailmatch && tailmatch(co->domain, host)) ||
-         (!co->tailmatch && Curl_raw_equal(host, co->domain)) ) {
-        /* the right part of the host matches the domain stuff in the
-           cookie data */
-
-        /* now check the left part of the path with the cookies path
-           requirement */
-        if(!co->path ||
-           /* not using checkprefix() because matching should be
-              case-sensitive */
-           !strncmp(co->path, path, strlen(co->path)) ) {
-
-          /* and now, we know this is a match and we should create an
-             entry for the return-linked-list */
-
-          newco = malloc(sizeof(struct Cookie));
-          if(newco) {
-            /* first, copy the whole source cookie: */
-            memcpy(newco, co, sizeof(struct Cookie));
-
-            /* then modify our next */
-            newco->next = mainco;
-
-            /* point the main to us */
-            mainco = newco;
-
-            matches++;
-          }
-          else {
-            fail:
-            /* failure, clear up the allocated chain and return NULL */
-            while(mainco) {
-              co = mainco->next;
-              free(mainco);
-              mainco = co;
-            }
-
-            return NULL;
-          }
-        }
-      }
-    }
-    co = co->next;
-  }
-
-  if(matches) {
-    /* Now we need to make sure that if there is a name appearing more than
-       once, the longest specified path version comes first. To make this
-       the swiftest way, we just sort them all based on path length. */
-    struct Cookie **array;
-    size_t i;
-
-    /* alloc an array and store all cookie pointers */
-    array = (struct Cookie **)malloc(sizeof(struct Cookie *) * matches);
-    if(!array)
-      goto fail;
-
-    co = mainco;
-
-    for(i=0; co; co = co->next)
-      array[i++] = co;
-
-    /* now sort the cookie pointers in path lenth order */
-    qsort(array, matches, sizeof(struct Cookie *), cookie_sort);
-
-    /* remake the linked list order according to the new order */
-
-    mainco = array[0]; /* start here */
-    for(i=0; i<matches-1; i++)
-      array[i]->next = array[i+1];
-    array[matches-1]->next = NULL; /* terminate the list */
-
-    free(array); /* remove the temporary data again */
-  }
-
-  return mainco; /* return the new list */
-}
-
-/*****************************************************************************
- *
- * Curl_cookie_clearall()
- *
- * Clear all existing cookies and reset the counter.
- *
- ****************************************************************************/
-void Curl_cookie_clearall(struct CookieInfo *cookies)
-{
-  if(cookies) {
-    Curl_cookie_freelist(cookies->cookies, TRUE);
-    cookies->cookies = NULL;
-    cookies->numcookies = 0;
-  }
-}
-
-/*****************************************************************************
- *
- * Curl_cookie_freelist()
- *
- * Free a list of cookies previously returned by Curl_cookie_getlist();
- *
- * The 'cookiestoo' argument tells this function whether to just free the
- * list or actually also free all cookies within the list as well.
- *
- ****************************************************************************/
-
-void Curl_cookie_freelist(struct Cookie *co, bool cookiestoo)
-{
-  struct Cookie *next;
-  if(co) {
-    while(co) {
-      next = co->next;
-      if(cookiestoo)
-        freecookie(co);
-      else
-        free(co); /* we only free the struct since the "members" are all just
-                     pointed out in the main cookie list! */
-      co = next;
-    }
-  }
-}
-
-
-/*****************************************************************************
- *
- * Curl_cookie_clearsess()
- *
- * Free all session cookies in the cookies list.
- *
- ****************************************************************************/
-void Curl_cookie_clearsess(struct CookieInfo *cookies)
-{
-  struct Cookie *first, *curr, *next, *prev = NULL;
-
-  if(!cookies || !cookies->cookies)
-    return;
-
-  first = curr = prev = cookies->cookies;
-
-  for(; curr; curr = next) {
-    next = curr->next;
-    if(!curr->expires) {
-      if(first == curr)
-        first = next;
-
-      if(prev == curr)
-        prev = next;
-      else
-        prev->next = next;
-
-      freecookie(curr);
-      cookies->numcookies--;
-    }
-    else
-      prev = curr;
-  }
-
-  cookies->cookies = first;
-}
-
-
-/*****************************************************************************
- *
- * Curl_cookie_cleanup()
- *
- * Free a "cookie object" previous created with cookie_init().
- *
- ****************************************************************************/
-void Curl_cookie_cleanup(struct CookieInfo *c)
-{
-  struct Cookie *co;
-  struct Cookie *next;
-  if(c) {
-    if(c->filename)
-      free(c->filename);
-    co = c->cookies;
-
-    while(co) {
-      next = co->next;
-      freecookie(co);
-      co = next;
-    }
-    free(c); /* free the base struct as well */
-  }
-}
-
-/* get_netscape_format()
- *
- * Formats a string for Netscape output file, w/o a newline at the end.
- *
- * Function returns a char * to a formatted line. Has to be free()d
-*/
-static char *get_netscape_format(const struct Cookie *co)
-{
-  return aprintf(
-    "%s"     /* httponly preamble */
-    "%s%s\t" /* domain */
-    "%s\t"   /* tailmatch */
-    "%s\t"   /* path */
-    "%s\t"   /* secure */
-    "%" FORMAT_OFF_T "\t"   /* expires */
-    "%s\t"   /* name */
-    "%s",    /* value */
-    co->httponly?"#HttpOnly_":"",
-    /* Make sure all domains are prefixed with a dot if they allow
-       tailmatching. This is Mozilla-style. */
-    (co->tailmatch && co->domain && co->domain[0] != '.')? ".":"",
-    co->domain?co->domain:"unknown",
-    co->tailmatch?"TRUE":"FALSE",
-    co->path?co->path:"/",
-    co->secure?"TRUE":"FALSE",
-    co->expires,
-    co->name,
-    co->value?co->value:"");
-}
-
-/*
- * Curl_cookie_output()
- *
- * Writes all internally known cookies to the specified file. Specify
- * "-" as file name to write to stdout.
- *
- * The function returns non-zero on write failure.
- */
-int Curl_cookie_output(struct CookieInfo *c, const char *dumphere)
-{
-  struct Cookie *co;
-  FILE *out;
-  bool use_stdout=FALSE;
-
-  if((NULL == c) || (0 == c->numcookies))
-    /* If there are no known cookies, we don't write or even create any
-       destination file */
-    return 0;
-
-  if(strequal("-", dumphere)) {
-    /* use stdout */
-    out = stdout;
-    use_stdout=TRUE;
-  }
-  else {
-    out = fopen(dumphere, "w");
-    if(!out)
-      return 1; /* failure */
-  }
-
-  if(c) {
-    char *format_ptr;
-
-    fputs("# Netscape HTTP Cookie File\n"
-          "# http://curl.haxx.se/rfc/cookie_spec.html\n"
-          "# This file was generated by libcurl! Edit at your own risk.\n\n",
-          out);
-    co = c->cookies;
-
-    while(co) {
-      format_ptr = get_netscape_format(co);
-      if(format_ptr == NULL) {
-        fprintf(out, "#\n# Fatal libcurl error\n");
-        if(!use_stdout)
-          fclose(out);
-        return 1;
-      }
-      fprintf(out, "%s\n", format_ptr);
-      free(format_ptr);
-      co=co->next;
-    }
-  }
-
-  if(!use_stdout)
-    fclose(out);
-
-  return 0;
-}
-
-struct curl_slist *Curl_cookie_list(struct SessionHandle *data)
-{
-  struct curl_slist *list = NULL;
-  struct curl_slist *beg;
-  struct Cookie *c;
-  char *line;
-
-  if((data->cookies == NULL) ||
-      (data->cookies->numcookies == 0))
-    return NULL;
-
-  c = data->cookies->cookies;
-
-  beg = list;
-  while(c) {
-    /* fill the list with _all_ the cookies we know */
-    line = get_netscape_format(c);
-    if(line == NULL) {
-      curl_slist_free_all(beg);
-      return NULL;
-    }
-    list = curl_slist_append(list, line);
-    free(line);
-    if(list == NULL) {
-      curl_slist_free_all(beg);
-      return NULL;
-    }
-    else if(beg == NULL) {
-      beg = list;
-    }
-    c = c->next;
-  }
-
-  return list;
-}
-
-#endif /* CURL_DISABLE_HTTP || CURL_DISABLE_COOKIES */
diff --git a/src/other/curl/lib/cookie.h b/src/other/curl/lib/cookie.h
deleted file mode 100644
index e8c005f..0000000
--- a/src/other/curl/lib/cookie.h
+++ /dev/null
@@ -1,108 +0,0 @@
-#ifndef __COOKIE_H
-#define __COOKIE_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include <stdio.h>
-#if defined(WIN32)
-#include <time.h>
-#else
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#endif
-
-#include <curl/curl.h>
-
-struct Cookie {
-  struct Cookie *next; /* next in the chain */
-  char *name;        /* <this> = value */
-  char *value;       /* name = <this> */
-  char *path;         /* path = <this> */
-  char *domain;      /* domain = <this> */
-  curl_off_t expires;  /* expires = <this> */
-  char *expirestr;   /* the plain text version */
-  bool tailmatch;    /* weather we do tail-matchning of the domain name */
-
-  /* RFC 2109 keywords. Version=1 means 2109-compliant cookie sending */
-  char *version;     /* Version = <value> */
-  char *maxage;      /* Max-Age = <value> */
-
-  bool secure;       /* whether the 'secure' keyword was used */
-  bool livecookie;   /* updated from a server, not a stored file */
-  bool httponly;     /* true if the httponly directive is present */
-};
-
-struct CookieInfo {
-  /* linked list of cookies we know of */
-  struct Cookie *cookies;
-
-  char *filename;  /* file we read from/write to */
-  bool running;    /* state info, for cookie adding information */
-  long numcookies; /* number of cookies in the "jar" */
-  bool newsession; /* new session, discard session cookies on load */
-};
-
-/* This is the maximum line length we accept for a cookie line. RFC 2109
-   section 6.3 says:
-
-   "at least 4096 bytes per cookie (as measured by the size of the characters
-   that comprise the cookie non-terminal in the syntax description of the
-   Set-Cookie header)"
-
-*/
-#define MAX_COOKIE_LINE 5000
-#define MAX_COOKIE_LINE_TXT "4999"
-
-/* This is the maximum length of a cookie name we deal with: */
-#define MAX_NAME 1024
-#define MAX_NAME_TXT "1023"
-
-struct SessionHandle;
-/*
- * Add a cookie to the internal list of cookies. The domain and path arguments
- * are only used if the header boolean is TRUE.
- */
-
-struct Cookie *Curl_cookie_add(struct SessionHandle *data,
-                               struct CookieInfo *, bool header, char *lineptr,
-                               const char *domain, const char *path);
-
-struct CookieInfo *Curl_cookie_init(struct SessionHandle *data,
-                                    const char *, struct CookieInfo *, bool);
-struct Cookie *Curl_cookie_getlist(struct CookieInfo *, const char *,
-                                   const char *, bool);
-void Curl_cookie_freelist(struct Cookie *cookies, bool cookiestoo);
-void Curl_cookie_clearall(struct CookieInfo *cookies);
-void Curl_cookie_clearsess(struct CookieInfo *cookies);
-void Curl_cookie_cleanup(struct CookieInfo *);
-int Curl_cookie_output(struct CookieInfo *, const char *);
-
-#if defined(CURL_DISABLE_HTTP) || defined(CURL_DISABLE_COOKIES)
-#define Curl_cookie_list(x) NULL
-#define Curl_cookie_loadfiles(x) do { } while (0)
-#else
-struct curl_slist *Curl_cookie_list(struct SessionHandle *data);
-void Curl_cookie_loadfiles(struct SessionHandle *data);
-#endif
-
-#endif
diff --git a/src/other/curl/lib/curl_addrinfo.c b/src/other/curl/lib/curl_addrinfo.c
deleted file mode 100644
index c38a1ed..0000000
--- a/src/other/curl/lib/curl_addrinfo.c
+++ /dev/null
@@ -1,482 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <curl/curl.h>
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-
-#ifdef __VMS
-#  include <in.h>
-#  include <inet.h>
-#  include <stdlib.h>
-#endif
-
-#if defined(NETWARE) && defined(__NOVELL_LIBC__)
-#  undef  in_addr_t
-#  define in_addr_t unsigned long
-#endif
-
-#include "curl_addrinfo.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-
-/*
- * Curl_freeaddrinfo()
- *
- * This is used to free a linked list of Curl_addrinfo structs along
- * with all its associated allocated storage. This function should be
- * called once for each successful call to Curl_getaddrinfo_ex() or to
- * any function call which actually allocates a Curl_addrinfo struct.
- */
-
-#if defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 910) && \
-    defined(__OPTIMIZE__) && defined(__unix__) &&  defined(__i386__)
-  /* workaround icc 9.1 optimizer issue */
-# define vqualifier volatile
-#else
-# define vqualifier
-#endif
-
-void
-Curl_freeaddrinfo(Curl_addrinfo *cahead)
-{
-  Curl_addrinfo *vqualifier canext;
-  Curl_addrinfo *ca;
-
-  for(ca = cahead; ca != NULL; ca = canext) {
-
-    if(ca->ai_addr)
-      free(ca->ai_addr);
-
-    if(ca->ai_canonname)
-      free(ca->ai_canonname);
-
-    canext = ca->ai_next;
-
-    free(ca);
-  }
-}
-
-
-#ifdef HAVE_GETADDRINFO
-/*
- * Curl_getaddrinfo_ex()
- *
- * This is a wrapper function around system's getaddrinfo(), with
- * the only difference that instead of returning a linked list of
- * addrinfo structs this one returns a linked list of Curl_addrinfo
- * ones. The memory allocated by this function *MUST* be free'd with
- * Curl_freeaddrinfo().  For each successful call to this function
- * there must be an associated call later to Curl_freeaddrinfo().
- *
- * There should be no single call to system's getaddrinfo() in the
- * whole library, any such call should be 'routed' through this one.
- */
-
-int
-Curl_getaddrinfo_ex(const char *nodename,
-                    const char *servname,
-                    const struct addrinfo *hints,
-                    Curl_addrinfo **result)
-{
-  const struct addrinfo *ainext;
-  const struct addrinfo *ai;
-  struct addrinfo *aihead;
-  Curl_addrinfo *cafirst = NULL;
-  Curl_addrinfo *calast = NULL;
-  Curl_addrinfo *ca;
-  int error;
-
-  *result = NULL; /* assume failure */
-
-  error = getaddrinfo(nodename, servname, hints, &aihead);
-  if(error)
-    return error;
-
-  for(ai = aihead; ai != NULL; ai = ainext) {
-
-    if((ca = malloc(sizeof(Curl_addrinfo))) == NULL) {
-      error = EAI_MEMORY;
-      break;
-    }
-
-    /* copy each structure member individually, member ordering, */
-    /* size, or padding might be different for each structure.   */
-
-    ca->ai_flags     = ai->ai_flags;
-    ca->ai_family    = ai->ai_family;
-    ca->ai_socktype  = ai->ai_socktype;
-    ca->ai_protocol  = ai->ai_protocol;
-    ca->ai_addrlen   = 0;
-    ca->ai_addr      = NULL;
-    ca->ai_canonname = NULL;
-    ca->ai_next      = NULL;
-
-    if((ai->ai_addrlen > 0) && (ai->ai_addr != NULL)) {
-      ca->ai_addrlen  = ai->ai_addrlen;
-      if((ca->ai_addr = malloc(ca->ai_addrlen)) == NULL) {
-        error = EAI_MEMORY;
-        free(ca);
-        break;
-      }
-      memcpy(ca->ai_addr, ai->ai_addr, ca->ai_addrlen);
-    }
-
-    if(ai->ai_canonname != NULL) {
-      if((ca->ai_canonname = strdup(ai->ai_canonname)) == NULL) {
-        error = EAI_MEMORY;
-        if(ca->ai_addr)
-          free(ca->ai_addr);
-        free(ca);
-        break;
-      }
-    }
-
-    /* if the return list is empty, this becomes the first element */
-    if(!cafirst)
-      cafirst = ca;
-
-    /* add this element last in the return list */
-    if(calast)
-      calast->ai_next = ca;
-    calast = ca;
-
-    /* fetch next element fom the addrinfo list */
-    ainext = ai->ai_next;
-  }
-
-  /* destroy the addrinfo list */
-  if(aihead)
-    freeaddrinfo(aihead);
-
-  /* if we failed, also destroy the Curl_addrinfo list */
-  if(error) {
-    Curl_freeaddrinfo(cafirst);
-    cafirst = NULL;
-  }
-
-  *result = cafirst;
-
-  /* This is not a CURLcode */
-  return error;
-}
-#endif /* HAVE_GETADDRINFO */
-
-
-/*
- * Curl_he2ai()
- *
- * This function returns a pointer to the first element of a newly allocated
- * Curl_addrinfo struct linked list filled with the data of a given hostent.
- * Curl_addrinfo is meant to work like the addrinfo struct does for a IPv6
- * stack, but usable also for IPv4, all hosts and environments.
- *
- * The memory allocated by this function *MUST* be free'd later on calling
- * Curl_freeaddrinfo().  For each successful call to this function there
- * must be an associated call later to Curl_freeaddrinfo().
- *
- *   Curl_addrinfo defined in "lib/curl_addrinfo.h"
- *
- *     struct Curl_addrinfo {
- *       int                   ai_flags;
- *       int                   ai_family;
- *       int                   ai_socktype;
- *       int                   ai_protocol;
- *       curl_socklen_t        ai_addrlen;   * Follow rfc3493 struct addrinfo *
- *       char                 *ai_canonname;
- *       struct sockaddr      *ai_addr;
- *       struct Curl_addrinfo *ai_next;
- *     };
- *     typedef struct Curl_addrinfo Curl_addrinfo;
- *
- *   hostent defined in <netdb.h>
- *
- *     struct hostent {
- *       char    *h_name;
- *       char    **h_aliases;
- *       int     h_addrtype;
- *       int     h_length;
- *       char    **h_addr_list;
- *     };
- *
- *   for backward compatibility:
- *
- *     #define h_addr  h_addr_list[0]
- */
-
-Curl_addrinfo *
-Curl_he2ai(const struct hostent *he, int port)
-{
-  Curl_addrinfo *ai;
-  Curl_addrinfo *prevai = NULL;
-  Curl_addrinfo *firstai = NULL;
-  struct sockaddr_in *addr;
-#ifdef ENABLE_IPV6
-  struct sockaddr_in6 *addr6;
-#endif
-  CURLcode result = CURLE_OK;
-  int i;
-  char *curr;
-
-  if(!he)
-    /* no input == no output! */
-    return NULL;
-
-  DEBUGASSERT((he->h_name != NULL) && (he->h_addr_list != NULL));
-
-  for(i=0; (curr = he->h_addr_list[i]) != NULL; i++) {
-
-    size_t ss_size;
-#ifdef ENABLE_IPV6
-    if (he->h_addrtype == AF_INET6)
-      ss_size = sizeof (struct sockaddr_in6);
-    else
-#endif
-      ss_size = sizeof (struct sockaddr_in);
-
-    if((ai = calloc(1, sizeof(Curl_addrinfo))) == NULL) {
-      result = CURLE_OUT_OF_MEMORY;
-      break;
-    }
-    if((ai->ai_canonname = strdup(he->h_name)) == NULL) {
-      result = CURLE_OUT_OF_MEMORY;
-      free(ai);
-      break;
-    }
-    if((ai->ai_addr = calloc(1, ss_size)) == NULL) {
-      result = CURLE_OUT_OF_MEMORY;
-      free(ai->ai_canonname);
-      free(ai);
-      break;
-    }
-
-    if(!firstai)
-      /* store the pointer we want to return from this function */
-      firstai = ai;
-
-    if(prevai)
-      /* make the previous entry point to this */
-      prevai->ai_next = ai;
-
-    ai->ai_family = he->h_addrtype;
-
-    /* we return all names as STREAM, so when using this address for TFTP
-       the type must be ignored and conn->socktype be used instead! */
-    ai->ai_socktype = SOCK_STREAM;
-
-    ai->ai_addrlen = (curl_socklen_t)ss_size;
-
-    /* leave the rest of the struct filled with zero */
-
-    switch (ai->ai_family) {
-    case AF_INET:
-      addr = (void *)ai->ai_addr; /* storage area for this info */
-
-      memcpy(&addr->sin_addr, curr, sizeof(struct in_addr));
-      addr->sin_family = (unsigned short)(he->h_addrtype);
-      addr->sin_port = htons((unsigned short)port);
-      break;
-
-#ifdef ENABLE_IPV6
-    case AF_INET6:
-      addr6 = (void *)ai->ai_addr; /* storage area for this info */
-
-      memcpy(&addr6->sin6_addr, curr, sizeof(struct in6_addr));
-      addr6->sin6_family = (unsigned short)(he->h_addrtype);
-      addr6->sin6_port = htons((unsigned short)port);
-      break;
-#endif
-    }
-
-    prevai = ai;
-  }
-
-  if(result != CURLE_OK) {
-    Curl_freeaddrinfo(firstai);
-    firstai = NULL;
-  }
-
-  return firstai;
-}
-
-
-struct namebuff {
-  struct hostent hostentry;
-  union {
-    struct in_addr  ina4;
-#ifdef ENABLE_IPV6
-    struct in6_addr ina6;
-#endif
-  } addrentry;
-  char *h_addr_list[2];
-};
-
-
-/*
- * Curl_ip2addr()
- *
- * This function takes an internet address, in binary form, as input parameter
- * along with its address family and the string version of the address, and it
- * returns a Curl_addrinfo chain filled in correctly with information for the
- * given address/host
- */
-
-Curl_addrinfo *
-Curl_ip2addr(int af, const void *inaddr, const char *hostname, int port)
-{
-  Curl_addrinfo *ai;
-
-#if defined(__VMS) && \
-    defined(__INITIAL_POINTER_SIZE) && (__INITIAL_POINTER_SIZE == 64)
-#pragma pointer_size save
-#pragma pointer_size short
-#pragma message disable PTRMISMATCH
-#endif
-
-  struct hostent  *h;
-  struct namebuff *buf;
-  char  *addrentry;
-  char  *hoststr;
-  size_t addrsize;
-
-  DEBUGASSERT(inaddr && hostname);
-
-  buf = malloc(sizeof(struct namebuff));
-  if(!buf)
-    return NULL;
-
-  hoststr = strdup(hostname);
-  if(!hoststr) {
-    free(buf);
-    return NULL;
-  }
-
-  switch(af) {
-  case AF_INET:
-    addrsize = sizeof(struct in_addr);
-    addrentry = (void *)&buf->addrentry.ina4;
-    memcpy(addrentry, inaddr, sizeof(struct in_addr));
-    break;
-#ifdef ENABLE_IPV6
-  case AF_INET6:
-    addrsize = sizeof(struct in6_addr);
-    addrentry = (void *)&buf->addrentry.ina6;
-    memcpy(addrentry, inaddr, sizeof(struct in6_addr));
-    break;
-#endif
-  default:
-    free(hoststr);
-    free(buf);
-    return NULL;
-  }
-
-  h = &buf->hostentry;
-  h->h_name = hoststr;
-  h->h_aliases = NULL;
-  h->h_addrtype = (short)af;
-  h->h_length = (short)addrsize;
-  h->h_addr_list = &buf->h_addr_list[0];
-  h->h_addr_list[0] = addrentry;
-  h->h_addr_list[1] = NULL; /* terminate list of entries */
-
-#if defined(__VMS) && \
-    defined(__INITIAL_POINTER_SIZE) && (__INITIAL_POINTER_SIZE == 64)
-#pragma pointer_size restore
-#pragma message enable PTRMISMATCH
-#endif
-
-  ai = Curl_he2ai(h, port);
-
-  free(hoststr);
-  free(buf);
-
-  return ai;
-}
-
-
-#if defined(CURLDEBUG) && defined(HAVE_FREEADDRINFO)
-/*
- * curl_dofreeaddrinfo()
- *
- * This is strictly for memory tracing and are using the same style as the
- * family otherwise present in memdebug.c. I put these ones here since they
- * require a bunch of structs I didn't wanna include in memdebug.c
- */
-
-void
-curl_dofreeaddrinfo(struct addrinfo *freethis,
-                    int line, const char *source)
-{
-  (freeaddrinfo)(freethis);
-  curl_memlog("ADDR %s:%d freeaddrinfo(%p)\n",
-              source, line, (void *)freethis);
-}
-#endif /* defined(CURLDEBUG) && defined(HAVE_FREEADDRINFO) */
-
-
-#if defined(CURLDEBUG) && defined(HAVE_GETADDRINFO)
-/*
- * curl_dogetaddrinfo()
- *
- * This is strictly for memory tracing and are using the same style as the
- * family otherwise present in memdebug.c. I put these ones here since they
- * require a bunch of structs I didn't wanna include in memdebug.c
- */
-
-int
-curl_dogetaddrinfo(const char *hostname,
-                   const char *service,
-                   const struct addrinfo *hints,
-                   struct addrinfo **result,
-                   int line, const char *source)
-{
-  int res=(getaddrinfo)(hostname, service, hints, result);
-  if(0 == res)
-    /* success */
-    curl_memlog("ADDR %s:%d getaddrinfo() = %p\n",
-                source, line, (void *)*result);
-  else
-    curl_memlog("ADDR %s:%d getaddrinfo() failed\n",
-                source, line);
-  return res;
-}
-#endif /* defined(CURLDEBUG) && defined(HAVE_GETADDRINFO) */
-
diff --git a/src/other/curl/lib/curl_addrinfo.h b/src/other/curl/lib/curl_addrinfo.h
deleted file mode 100644
index 63159cc..0000000
--- a/src/other/curl/lib/curl_addrinfo.h
+++ /dev/null
@@ -1,98 +0,0 @@
-#ifndef HEADER_CURL_ADDRINFO_H
-#define HEADER_CURL_ADDRINFO_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-
-#ifdef __VMS
-#  include <in.h>
-#  include <inet.h>
-#  include <stdlib.h>
-#endif
-
-
-/*
- * Curl_addrinfo is our internal struct definition that we use to allow
- * consistent internal handling of this data. We use this even when the
- * system provides an addrinfo structure definition. And we use this for
- * all sorts of IPv4 and IPV6 builds.
- */
-
-struct Curl_addrinfo {
-  int                   ai_flags;
-  int                   ai_family;
-  int                   ai_socktype;
-  int                   ai_protocol;
-  curl_socklen_t        ai_addrlen;   /* Follow rfc3493 struct addrinfo */
-  char                 *ai_canonname;
-  struct sockaddr      *ai_addr;
-  struct Curl_addrinfo *ai_next;
-};
-typedef struct Curl_addrinfo Curl_addrinfo;
-
-void
-Curl_freeaddrinfo(Curl_addrinfo *cahead);
-
-#ifdef HAVE_GETADDRINFO
-int
-Curl_getaddrinfo_ex(const char *nodename,
-                    const char *servname,
-                    const struct addrinfo *hints,
-                    Curl_addrinfo **result);
-#endif
-
-Curl_addrinfo *
-Curl_he2ai(const struct hostent *he, int port);
-
-Curl_addrinfo *
-Curl_ip2addr(int af, const void *inaddr, const char *hostname, int port);
-
-#if defined(CURLDEBUG) && defined(HAVE_FREEADDRINFO)
-void
-curl_dofreeaddrinfo(struct addrinfo *freethis,
-                    int line, const char *source);
-#endif
-
-#if defined(CURLDEBUG) && defined(HAVE_GETADDRINFO)
-int
-curl_dogetaddrinfo(const char *hostname,
-                   const char *service,
-                   const struct addrinfo *hints,
-                   struct addrinfo **result,
-                   int line, const char *source);
-#endif
-
-#endif /* HEADER_CURL_ADDRINFO_H */
diff --git a/src/other/curl/lib/curl_base64.h b/src/other/curl/lib/curl_base64.h
deleted file mode 100644
index 2498a0a..0000000
--- a/src/other/curl/lib/curl_base64.h
+++ /dev/null
@@ -1,31 +0,0 @@
-#ifndef HEADER_CURL_BASE64_H
-#define HEADER_CURL_BASE64_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-size_t Curl_base64_encode(struct SessionHandle *data,
-                          const char *inputbuff, size_t insize,
-                          char **outptr);
-
-size_t Curl_base64_decode(const char *src, unsigned char **outptr);
-
-#endif /* HEADER_CURL_BASE64_H */
diff --git a/src/other/curl/lib/curl_config.h.cmake b/src/other/curl/lib/curl_config.h.cmake
deleted file mode 100644
index fd6b32a..0000000
--- a/src/other/curl/lib/curl_config.h.cmake
+++ /dev/null
@@ -1,953 +0,0 @@
-/* lib/curl_config.h.in.  Generated from configure.ac by autoheader.  */
-
-/* Define to 1 if you have the $func function. */
-#cmakedefine AS_TR_CPP ${AS_TR_CPP}
-
-/* when building libcurl itself */
-#cmakedefine BUILDING_LIBCURL ${BUILDING_LIBCURL}
-
-/* Location of default ca bundle */
-#cmakedefine CURL_CA_BUNDLE ${CURL_CA_BUNDLE}
-
-/* Location of default ca path */
-#cmakedefine CURL_CA_PATH ${CURL_CA_PATH}
-
-/* to disable cookies support */
-#cmakedefine CURL_DISABLE_COOKIES ${CURL_DISABLE_COOKIES}
-
-/* to disable cryptographic authentication */
-#cmakedefine CURL_DISABLE_CRYPTO_AUTH ${CURL_DISABLE_CRYPTO_AUTH}
-
-/* to disable DICT */
-#cmakedefine CURL_DISABLE_DICT ${CURL_DISABLE_DICT}
-
-/* to disable FILE */
-#cmakedefine CURL_DISABLE_FILE ${CURL_DISABLE_FILE}
-
-/* to disable FTP */
-#cmakedefine CURL_DISABLE_FTP ${CURL_DISABLE_FTP}
-
-/* to disable HTTP */
-#cmakedefine CURL_DISABLE_HTTP ${CURL_DISABLE_HTTP}
-
-/* to disable LDAP */
-#cmakedefine CURL_DISABLE_LDAP ${CURL_DISABLE_LDAP}
-
-/* to disable LDAPS */
-#cmakedefine CURL_DISABLE_LDAPS ${CURL_DISABLE_LDAPS}
-
-/* to disable proxies */
-#cmakedefine CURL_DISABLE_PROXY ${CURL_DISABLE_PROXY}
-
-/* to disable TELNET */
-#cmakedefine CURL_DISABLE_TELNET ${CURL_DISABLE_TELNET}
-
-/* to disable TFTP */
-#cmakedefine CURL_DISABLE_TFTP ${CURL_DISABLE_TFTP}
-
-/* to disable verbose strings */
-#cmakedefine CURL_DISABLE_VERBOSE_STRINGS ${CURL_DISABLE_VERBOSE_STRINGS}
-
-/* to make a symbol visible */
-#cmakedefine CURL_EXTERN_SYMBOL ${CURL_EXTERN_SYMBOL}
-/* Ensure using CURL_EXTERN_SYMBOL is possible */
-#ifndef CURL_EXTERN_SYMBOL
-#define CURL_EXTERN_SYMBOL
-#endif
-
-/* to enable hidden symbols */
-#cmakedefine CURL_HIDDEN_SYMBOLS ${CURL_HIDDEN_SYMBOLS}
-
-/* W$ LDAP with non-W$ compiler */
-#cmakedefine CURL_LDAP_HYBRID ${CURL_LDAP_HYBRID}
-
-/* Use W$ LDAP implementation */
-#cmakedefine CURL_LDAP_WIN ${CURL_LDAP_WIN}
-
-/* when not building a shared library */
-#cmakedefine CURL_STATICLIB ${CURL_STATICLIB}
-
-/* Set to explicitly specify we don't want to use thread-safe functions */
-#cmakedefine DISABLED_THREADSAFE ${DISABLED_THREADSAFE}
-
-/* your Entropy Gathering Daemon socket pathname */
-#cmakedefine EGD_SOCKET ${EGD_SOCKET}
-
-/* Define if you want to enable IPv6 support */
-#cmakedefine ENABLE_IPV6 ${ENABLE_IPV6}
-
-/* Define to the type qualifier of arg 1 for getnameinfo. */
-#cmakedefine GETNAMEINFO_QUAL_ARG1 ${GETNAMEINFO_QUAL_ARG1}
-
-/* Define to the type of arg 1 for getnameinfo. */
-#cmakedefine GETNAMEINFO_TYPE_ARG1 ${GETNAMEINFO_TYPE_ARG1}
-
-/* Define to the type of arg 2 for getnameinfo. */
-#cmakedefine GETNAMEINFO_TYPE_ARG2 ${GETNAMEINFO_TYPE_ARG2}
-
-/* Define to the type of args 4 and 6 for getnameinfo. */
-#cmakedefine GETNAMEINFO_TYPE_ARG46 ${GETNAMEINFO_TYPE_ARG46}
-
-/* Define to the type of arg 7 for getnameinfo. */
-#cmakedefine GETNAMEINFO_TYPE_ARG7 ${GETNAMEINFO_TYPE_ARG7}
-
-/* Specifies the number of arguments to getservbyport_r */
-#cmakedefine GETSERVBYPORT_R_ARGS ${GETSERVBYPORT_R_ARGS}
-
-/* Specifies the size of the buffer to pass to getservbyport_r */
-#cmakedefine GETSERVBYPORT_R_BUFSIZE ${GETSERVBYPORT_R_BUFSIZE}
-
-/* Define to 1 if you have the alarm function. */
-#cmakedefine HAVE_ALARM ${HAVE_ALARM}
-
-/* Define to 1 if you have the <alloca.h> header file. */
-#cmakedefine HAVE_ALLOCA_H ${HAVE_ALLOCA_H}
-
-/* Define to 1 if you have the <arpa/inet.h> header file. */
-#cmakedefine HAVE_ARPA_INET_H ${HAVE_ARPA_INET_H}
-
-/* Define to 1 if you have the <arpa/tftp.h> header file. */
-#cmakedefine HAVE_ARPA_TFTP_H ${HAVE_ARPA_TFTP_H}
-
-/* Define to 1 if you have the <assert.h> header file. */
-#cmakedefine HAVE_ASSERT_H ${HAVE_ASSERT_H}
-
-/* Define to 1 if you have the `basename' function. */
-#cmakedefine HAVE_BASENAME ${HAVE_BASENAME}
-
-/* Define to 1 if bool is an available type. */
-#cmakedefine HAVE_BOOL_T ${HAVE_BOOL_T}
-
-/* Define to 1 if you have the clock_gettime function and monotonic timer. */
-#cmakedefine HAVE_CLOCK_GETTIME_MONOTONIC ${HAVE_CLOCK_GETTIME_MONOTONIC}
-
-/* Define to 1 if you have the `closesocket' function. */
-#cmakedefine HAVE_CLOSESOCKET ${HAVE_CLOSESOCKET}
-
-/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function. */
-#cmakedefine HAVE_CRYPTO_CLEANUP_ALL_EX_DATA ${HAVE_CRYPTO_CLEANUP_ALL_EX_DATA}
-
-/* Define to 1 if you have the <crypto.h> header file. */
-#cmakedefine HAVE_CRYPTO_H ${HAVE_CRYPTO_H}
-
-/* Define to 1 if you have the <des.h> header file. */
-#cmakedefine HAVE_DES_H ${HAVE_DES_H}
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#cmakedefine HAVE_DLFCN_H ${HAVE_DLFCN_H}
-
-/* Define to 1 if you have the `ENGINE_load_builtin_engines' function. */
-#cmakedefine HAVE_ENGINE_LOAD_BUILTIN_ENGINES ${HAVE_ENGINE_LOAD_BUILTIN_ENGINES}
-
-/* Define to 1 if you have the <errno.h> header file. */
-#cmakedefine HAVE_ERRNO_H ${HAVE_ERRNO_H}
-
-/* Define to 1 if you have the <err.h> header file. */
-#cmakedefine HAVE_ERR_H ${HAVE_ERR_H}
-
-/* Define to 1 if you have the fcntl function. */
-#cmakedefine HAVE_FCNTL ${HAVE_FCNTL}
-
-/* Define to 1 if you have the <fcntl.h> header file. */
-#cmakedefine HAVE_FCNTL_H ${HAVE_FCNTL_H}
-
-/* Define to 1 if you have a working fcntl O_NONBLOCK function. */
-#cmakedefine HAVE_FCNTL_O_NONBLOCK ${HAVE_FCNTL_O_NONBLOCK}
-
-/* Define to 1 if you have the fdopen function. */
-#cmakedefine HAVE_FDOPEN ${HAVE_FDOPEN}
-
-/* Define to 1 if you have the `fork' function. */
-#cmakedefine HAVE_FORK ${HAVE_FORK}
-
-/* Define to 1 if you have the freeaddrinfo function. */
-#cmakedefine HAVE_FREEADDRINFO ${HAVE_FREEADDRINFO}
-
-/* Define to 1 if you have the freeifaddrs function. */
-#cmakedefine HAVE_FREEIFADDRS ${HAVE_FREEIFADDRS}
-
-/* Define to 1 if you have the ftruncate function. */
-#cmakedefine HAVE_FTRUNCATE ${HAVE_FTRUNCATE}
-
-/* Define to 1 if you have a working getaddrinfo function. */
-#cmakedefine HAVE_GETADDRINFO ${HAVE_GETADDRINFO}
-
-/* Define to 1 if you have the `geteuid' function. */
-#cmakedefine HAVE_GETEUID ${HAVE_GETEUID}
-
-/* Define to 1 if you have the gethostbyaddr function. */
-#cmakedefine HAVE_GETHOSTBYADDR ${HAVE_GETHOSTBYADDR}
-
-/* Define to 1 if you have the gethostbyaddr_r function. */
-#cmakedefine HAVE_GETHOSTBYADDR_R ${HAVE_GETHOSTBYADDR_R}
-
-/* gethostbyaddr_r() takes 5 args */
-#cmakedefine HAVE_GETHOSTBYADDR_R_5 ${HAVE_GETHOSTBYADDR_R_5}
-
-/* gethostbyaddr_r() takes 7 args */
-#cmakedefine HAVE_GETHOSTBYADDR_R_7 ${HAVE_GETHOSTBYADDR_R_7}
-
-/* gethostbyaddr_r() takes 8 args */
-#cmakedefine HAVE_GETHOSTBYADDR_R_8 ${HAVE_GETHOSTBYADDR_R_8}
-
-/* Define to 1 if you have the gethostbyname function. */
-#cmakedefine HAVE_GETHOSTBYNAME ${HAVE_GETHOSTBYNAME}
-
-/* Define to 1 if you have the gethostbyname_r function. */
-#cmakedefine HAVE_GETHOSTBYNAME_R ${HAVE_GETHOSTBYNAME_R}
-
-/* gethostbyname_r() takes 3 args */
-#cmakedefine HAVE_GETHOSTBYNAME_R_3 ${HAVE_GETHOSTBYNAME_R_3}
-
-/* gethostbyname_r() takes 5 args */
-#cmakedefine HAVE_GETHOSTBYNAME_R_5 ${HAVE_GETHOSTBYNAME_R_5}
-
-/* gethostbyname_r() takes 6 args */
-#cmakedefine HAVE_GETHOSTBYNAME_R_6 ${HAVE_GETHOSTBYNAME_R_6}
-
-/* Define to 1 if you have the gethostname function. */
-#cmakedefine HAVE_GETHOSTNAME ${HAVE_GETHOSTNAME}
-
-/* Define to 1 if you have a working getifaddrs function. */
-#cmakedefine HAVE_GETIFADDRS ${HAVE_GETIFADDRS}
-
-/* Define to 1 if you have the getnameinfo function. */
-#cmakedefine HAVE_GETNAMEINFO ${HAVE_GETNAMEINFO}
-
-/* Define to 1 if you have the `getpass_r' function. */
-#cmakedefine HAVE_GETPASS_R ${HAVE_GETPASS_R}
-
-/* Define to 1 if you have the `getppid' function. */
-#cmakedefine HAVE_GETPPID ${HAVE_GETPPID}
-
-/* Define to 1 if you have the `getprotobyname' function. */
-#cmakedefine HAVE_GETPROTOBYNAME ${HAVE_GETPROTOBYNAME}
-
-/* Define to 1 if you have the `getpwuid' function. */
-#cmakedefine HAVE_GETPWUID ${HAVE_GETPWUID}
-
-/* Define to 1 if you have the `getrlimit' function. */
-#cmakedefine HAVE_GETRLIMIT ${HAVE_GETRLIMIT}
-
-/* Define to 1 if you have the getservbyport_r function. */
-#cmakedefine HAVE_GETSERVBYPORT_R ${HAVE_GETSERVBYPORT_R}
-
-/* Define to 1 if you have the `gettimeofday' function. */
-#cmakedefine HAVE_GETTIMEOFDAY ${HAVE_GETTIMEOFDAY}
-
-/* Define to 1 if you have a working glibc-style strerror_r function. */
-#cmakedefine HAVE_GLIBC_STRERROR_R ${HAVE_GLIBC_STRERROR_R}
-
-/* Define to 1 if you have a working gmtime_r function. */
-#cmakedefine HAVE_GMTIME_R ${HAVE_GMTIME_R}
-
-/* if you have the gssapi libraries */
-#cmakedefine HAVE_GSSAPI ${HAVE_GSSAPI}
-
-/* Define to 1 if you have the <gssapi/gssapi_generic.h> header file. */
-#cmakedefine HAVE_GSSAPI_GSSAPI_GENERIC_H ${HAVE_GSSAPI_GSSAPI_GENERIC_H}
-
-/* Define to 1 if you have the <gssapi/gssapi.h> header file. */
-#cmakedefine HAVE_GSSAPI_GSSAPI_H ${HAVE_GSSAPI_GSSAPI_H}
-
-/* Define to 1 if you have the <gssapi/gssapi_krb5.h> header file. */
-#cmakedefine HAVE_GSSAPI_GSSAPI_KRB5_H ${HAVE_GSSAPI_GSSAPI_KRB5_H}
-
-/* if you have the GNU gssapi libraries */
-#cmakedefine HAVE_GSSGNU ${HAVE_GSSGNU}
-
-/* if you have the Heimdal gssapi libraries */
-#cmakedefine HAVE_GSSHEIMDAL ${HAVE_GSSHEIMDAL}
-
-/* if you have the MIT gssapi libraries */
-#cmakedefine HAVE_GSSMIT ${HAVE_GSSMIT}
-
-/* Define to 1 if you have the `idna_strerror' function. */
-#cmakedefine HAVE_IDNA_STRERROR ${HAVE_IDNA_STRERROR}
-
-/* Define to 1 if you have the `idn_free' function. */
-#cmakedefine HAVE_IDN_FREE ${HAVE_IDN_FREE}
-
-/* Define to 1 if you have the <idn-free.h> header file. */
-#cmakedefine HAVE_IDN_FREE_H ${HAVE_IDN_FREE_H}
-
-/* Define to 1 if you have the <ifaddrs.h> header file. */
-#cmakedefine HAVE_IFADDRS_H ${HAVE_IFADDRS_H}
-
-/* Define to 1 if you have the `inet_addr' function. */
-#cmakedefine HAVE_INET_ADDR ${HAVE_INET_ADDR}
-
-/* Define to 1 if you have the inet_ntoa_r function. */
-#cmakedefine HAVE_INET_NTOA_R ${HAVE_INET_NTOA_R}
-
-/* inet_ntoa_r() takes 2 args */
-#cmakedefine HAVE_INET_NTOA_R_2 ${HAVE_INET_NTOA_R_2}
-
-/* inet_ntoa_r() takes 3 args */
-#cmakedefine HAVE_INET_NTOA_R_3 ${HAVE_INET_NTOA_R_3}
-
-/* Define to 1 if you have a IPv6 capable working inet_ntop function. */
-#cmakedefine HAVE_INET_NTOP ${HAVE_INET_NTOP}
-
-/* Define to 1 if you have a IPv6 capable working inet_pton function. */
-#cmakedefine HAVE_INET_PTON ${HAVE_INET_PTON}
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#cmakedefine HAVE_INTTYPES_H ${HAVE_INTTYPES_H}
-
-/* Define to 1 if you have the ioctl function. */
-#cmakedefine HAVE_IOCTL ${HAVE_IOCTL}
-
-/* Define to 1 if you have the ioctlsocket function. */
-#cmakedefine HAVE_IOCTLSOCKET ${HAVE_IOCTLSOCKET}
-
-/* Define to 1 if you have the IoctlSocket camel case function. */
-#cmakedefine HAVE_IOCTLSOCKET_CAMEL ${HAVE_IOCTLSOCKET_CAMEL}
-
-/* Define to 1 if you have a working IoctlSocket camel case FIONBIO function.
-   */
-#cmakedefine HAVE_IOCTLSOCKET_CAMEL_FIONBIO ${HAVE_IOCTLSOCKET_CAMEL_FIONBIO}
-
-/* Define to 1 if you have a working ioctlsocket FIONBIO function. */
-#cmakedefine HAVE_IOCTLSOCKET_FIONBIO ${HAVE_IOCTLSOCKET_FIONBIO}
-
-/* Define to 1 if you have a working ioctl FIONBIO function. */
-#cmakedefine HAVE_IOCTL_FIONBIO ${HAVE_IOCTL_FIONBIO}
-
-/* Define to 1 if you have a working ioctl SIOCGIFADDR function. */
-#cmakedefine HAVE_IOCTL_SIOCGIFADDR ${HAVE_IOCTL_SIOCGIFADDR}
-
-/* Define to 1 if you have the <io.h> header file. */
-#cmakedefine HAVE_IO_H ${HAVE_IO_H}
-
-/* if you have the Kerberos4 libraries (including -ldes) */
-#cmakedefine HAVE_KRB4 ${HAVE_KRB4}
-
-/* Define to 1 if you have the `krb_get_our_ip_for_realm' function. */
-#cmakedefine HAVE_KRB_GET_OUR_IP_FOR_REALM ${HAVE_KRB_GET_OUR_IP_FOR_REALM}
-
-/* Define to 1 if you have the <krb.h> header file. */
-#cmakedefine HAVE_KRB_H ${HAVE_KRB_H}
-
-/* Define to 1 if you have the lber.h header file. */
-#cmakedefine HAVE_LBER_H ${HAVE_LBER_H}
-
-/* Define to 1 if you have the ldapssl.h header file. */
-#cmakedefine HAVE_LDAPSSL_H ${HAVE_LDAPSSL_H}
-
-/* Define to 1 if you have the ldap.h header file. */
-#cmakedefine HAVE_LDAP_H ${HAVE_LDAP_H}
-
-/* Use LDAPS implementation */
-#cmakedefine HAVE_LDAP_SSL ${HAVE_LDAP_SSL}
-
-/* Define to 1 if you have the ldap_ssl.h header file. */
-#cmakedefine HAVE_LDAP_SSL_H ${HAVE_LDAP_SSL_H}
-
-/* Define to 1 if you have the `ldap_url_parse' function. */
-#cmakedefine HAVE_LDAP_URL_PARSE ${HAVE_LDAP_URL_PARSE}
-
-/* Define to 1 if you have the <libgen.h> header file. */
-#cmakedefine HAVE_LIBGEN_H ${HAVE_LIBGEN_H}
-
-/* Define to 1 if you have the `idn' library (-lidn). */
-#cmakedefine HAVE_LIBIDN ${HAVE_LIBIDN}
-
-/* Define to 1 if you have the `resolv' library (-lresolv). */
-#cmakedefine HAVE_LIBRESOLV ${HAVE_LIBRESOLV}
-
-/* Define to 1 if you have the `resolve' library (-lresolve). */
-#cmakedefine HAVE_LIBRESOLVE ${HAVE_LIBRESOLVE}
-
-/* Define to 1 if you have the `socket' library (-lsocket). */
-#cmakedefine HAVE_LIBSOCKET ${HAVE_LIBSOCKET}
-
-/* Define to 1 if you have the `ssh2' library (-lssh2). */
-#cmakedefine HAVE_LIBSSH2 ${HAVE_LIBSSH2}
-
-/* Define to 1 if you have the <libssh2.h> header file. */
-#cmakedefine HAVE_LIBSSH2_H ${HAVE_LIBSSH2_H}
-
-/* Define to 1 if you have the `ssl' library (-lssl). */
-#cmakedefine HAVE_LIBSSL ${HAVE_LIBSSL}
-
-/* if zlib is available */
-#cmakedefine HAVE_LIBZ ${HAVE_LIBZ}
-
-/* Define to 1 if you have the <limits.h> header file. */
-#cmakedefine HAVE_LIMITS_H ${HAVE_LIMITS_H}
-
-/* if your compiler supports LL */
-#cmakedefine HAVE_LL ${HAVE_LL}
-
-/* Define to 1 if you have the <locale.h> header file. */
-#cmakedefine HAVE_LOCALE_H ${HAVE_LOCALE_H}
-
-/* Define to 1 if you have a working localtime_r function. */
-#cmakedefine HAVE_LOCALTIME_R ${HAVE_LOCALTIME_R}
-
-/* Define to 1 if the compiler supports the 'long long' data type. */
-#cmakedefine HAVE_LONGLONG ${HAVE_LONGLONG}
-
-/* Define to 1 if you have the malloc.h header file. */
-#cmakedefine HAVE_MALLOC_H ${HAVE_MALLOC_H}
-
-/* Define to 1 if you have the <memory.h> header file. */
-#cmakedefine HAVE_MEMORY_H ${HAVE_MEMORY_H}
-
-/* Define to 1 if you have the MSG_NOSIGNAL flag. */
-#cmakedefine HAVE_MSG_NOSIGNAL ${HAVE_MSG_NOSIGNAL}
-
-/* Define to 1 if you have the <netdb.h> header file. */
-#cmakedefine HAVE_NETDB_H ${HAVE_NETDB_H}
-
-/* Define to 1 if you have the <netinet/in.h> header file. */
-#cmakedefine HAVE_NETINET_IN_H ${HAVE_NETINET_IN_H}
-
-/* Define to 1 if you have the <netinet/tcp.h> header file. */
-#cmakedefine HAVE_NETINET_TCP_H ${HAVE_NETINET_TCP_H}
-
-/* Define to 1 if you have the <net/if.h> header file. */
-#cmakedefine HAVE_NET_IF_H ${HAVE_NET_IF_H}
-
-/* Define to 1 if NI_WITHSCOPEID exists and works. */
-#cmakedefine HAVE_NI_WITHSCOPEID ${HAVE_NI_WITHSCOPEID}
-
-/* if you have an old MIT gssapi library, lacking GSS_C_NT_HOSTBASED_SERVICE
-   */
-#cmakedefine HAVE_OLD_GSSMIT ${HAVE_OLD_GSSMIT}
-
-/* Define to 1 if you have the <openssl/crypto.h> header file. */
-#cmakedefine HAVE_OPENSSL_CRYPTO_H ${HAVE_OPENSSL_CRYPTO_H}
-
-/* Define to 1 if you have the <openssl/engine.h> header file. */
-#cmakedefine HAVE_OPENSSL_ENGINE_H ${HAVE_OPENSSL_ENGINE_H}
-
-/* Define to 1 if you have the <openssl/err.h> header file. */
-#cmakedefine HAVE_OPENSSL_ERR_H ${HAVE_OPENSSL_ERR_H}
-
-/* Define to 1 if you have the <openssl/pem.h> header file. */
-#cmakedefine HAVE_OPENSSL_PEM_H ${HAVE_OPENSSL_PEM_H}
-
-/* Define to 1 if you have the <openssl/pkcs12.h> header file. */
-#cmakedefine HAVE_OPENSSL_PKCS12_H ${HAVE_OPENSSL_PKCS12_H}
-
-/* Define to 1 if you have the <openssl/rsa.h> header file. */
-#cmakedefine HAVE_OPENSSL_RSA_H ${HAVE_OPENSSL_RSA_H}
-
-/* Define to 1 if you have the <openssl/ssl.h> header file. */
-#cmakedefine HAVE_OPENSSL_SSL_H ${HAVE_OPENSSL_SSL_H}
-
-/* Define to 1 if you have the <openssl/x509.h> header file. */
-#cmakedefine HAVE_OPENSSL_X509_H ${HAVE_OPENSSL_X509_H}
-
-/* Define to 1 if you have the <pem.h> header file. */
-#cmakedefine HAVE_PEM_H ${HAVE_PEM_H}
-
-/* Define to 1 if you have the `perror' function. */
-#cmakedefine HAVE_PERROR ${HAVE_PERROR}
-
-/* Define to 1 if you have the `pipe' function. */
-#cmakedefine HAVE_PIPE ${HAVE_PIPE}
-
-/* if you have the function PK11_CreateGenericObject */
-#cmakedefine HAVE_PK11_CREATEGENERICOBJECT ${HAVE_PK11_CREATEGENERICOBJECT}
-
-/* Define to 1 if you have a working poll function. */
-#cmakedefine HAVE_POLL ${HAVE_POLL}
-
-/* If you have a fine poll */
-#cmakedefine HAVE_POLL_FINE ${HAVE_POLL_FINE}
-
-/* Define to 1 if you have the <poll.h> header file. */
-#cmakedefine HAVE_POLL_H ${HAVE_POLL_H}
-
-/* Define to 1 if you have a working POSIX-style strerror_r function. */
-#cmakedefine HAVE_POSIX_STRERROR_R ${HAVE_POSIX_STRERROR_R}
-
-/* Define to 1 if you have the <pwd.h> header file. */
-#cmakedefine HAVE_PWD_H ${HAVE_PWD_H}
-
-/* Define to 1 if you have the `RAND_egd' function. */
-#cmakedefine HAVE_RAND_EGD ${HAVE_RAND_EGD}
-
-/* Define to 1 if you have the `RAND_screen' function. */
-#cmakedefine HAVE_RAND_SCREEN ${HAVE_RAND_SCREEN}
-
-/* Define to 1 if you have the `RAND_status' function. */
-#cmakedefine HAVE_RAND_STATUS ${HAVE_RAND_STATUS}
-
-/* Define to 1 if you have the recv function. */
-#cmakedefine HAVE_RECV ${HAVE_RECV}
-
-/* Define to 1 if you have the recvfrom function. */
-#cmakedefine HAVE_RECVFROM ${HAVE_RECVFROM}
-
-/* Define to 1 if you have the <rsa.h> header file. */
-#cmakedefine HAVE_RSA_H ${HAVE_RSA_H}
-
-/* Define to 1 if you have the select function. */
-#cmakedefine HAVE_SELECT ${HAVE_SELECT}
-
-/* Define to 1 if you have the send function. */
-#cmakedefine HAVE_SEND ${HAVE_SEND}
-
-/* Define to 1 if you have the <setjmp.h> header file. */
-#cmakedefine HAVE_SETJMP_H ${HAVE_SETJMP_H}
-
-/* Define to 1 if you have the `setlocale' function. */
-#cmakedefine HAVE_SETLOCALE ${HAVE_SETLOCALE}
-
-/* Define to 1 if you have the `setmode' function. */
-#cmakedefine HAVE_SETMODE ${HAVE_SETMODE}
-
-/* Define to 1 if you have the `setrlimit' function. */
-#cmakedefine HAVE_SETRLIMIT ${HAVE_SETRLIMIT}
-
-/* Define to 1 if you have the setsockopt function. */
-#cmakedefine HAVE_SETSOCKOPT ${HAVE_SETSOCKOPT}
-
-/* Define to 1 if you have a working setsockopt SO_NONBLOCK function. */
-#cmakedefine HAVE_SETSOCKOPT_SO_NONBLOCK ${HAVE_SETSOCKOPT_SO_NONBLOCK}
-
-/* Define to 1 if you have the <sgtty.h> header file. */
-#cmakedefine HAVE_SGTTY_H ${HAVE_SGTTY_H}
-
-/* Define to 1 if you have the sigaction function. */
-#cmakedefine HAVE_SIGACTION ${HAVE_SIGACTION}
-
-/* Define to 1 if you have the siginterrupt function. */
-#cmakedefine HAVE_SIGINTERRUPT ${HAVE_SIGINTERRUPT}
-
-/* Define to 1 if you have the signal function. */
-#cmakedefine HAVE_SIGNAL ${HAVE_SIGNAL}
-
-/* Define to 1 if you have the <signal.h> header file. */
-#cmakedefine HAVE_SIGNAL_H ${HAVE_SIGNAL_H}
-
-/* Define to 1 if you have the sigsetjmp function or macro. */
-#cmakedefine HAVE_SIGSETJMP ${HAVE_SIGSETJMP}
-
-/* Define to 1 if sig_atomic_t is an available typedef. */
-#cmakedefine HAVE_SIG_ATOMIC_T ${HAVE_SIG_ATOMIC_T}
-
-/* Define to 1 if sig_atomic_t is already defined as volatile. */
-#cmakedefine HAVE_SIG_ATOMIC_T_VOLATILE ${HAVE_SIG_ATOMIC_T_VOLATILE}
-
-/* Define to 1 if struct sockaddr_in6 has the sin6_scope_id member */
-#cmakedefine HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID ${HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID}
-
-/* Define to 1 if you have the `socket' function. */
-#cmakedefine HAVE_SOCKET ${HAVE_SOCKET}
-
-/* Define this if you have the SPNEGO library fbopenssl */
-#cmakedefine HAVE_SPNEGO ${HAVE_SPNEGO}
-
-/* Define to 1 if you have the `SSL_get_shutdown' function. */
-#cmakedefine HAVE_SSL_GET_SHUTDOWN ${HAVE_SSL_GET_SHUTDOWN}
-
-/* Define to 1 if you have the <ssl.h> header file. */
-#cmakedefine HAVE_SSL_H ${HAVE_SSL_H}
-
-/* Define to 1 if you have the <stdbool.h> header file. */
-#cmakedefine HAVE_STDBOOL_H ${HAVE_STDBOOL_H}
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#cmakedefine HAVE_STDINT_H ${HAVE_STDINT_H}
-
-/* Define to 1 if you have the <stdio.h> header file. */
-#cmakedefine HAVE_STDIO_H ${HAVE_STDIO_H}
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#cmakedefine HAVE_STDLIB_H ${HAVE_STDLIB_H}
-
-/* Define to 1 if you have the strcasecmp function. */
-#cmakedefine HAVE_STRCASECMP ${HAVE_STRCASECMP}
-
-/* Define to 1 if you have the strcasestr function. */
-#cmakedefine HAVE_STRCASESTR ${HAVE_STRCASESTR}
-
-/* Define to 1 if you have the strcmpi function. */
-#cmakedefine HAVE_STRCMPI ${HAVE_STRCMPI}
-
-/* Define to 1 if you have the strdup function. */
-#cmakedefine HAVE_STRDUP ${HAVE_STRDUP}
-
-/* Define to 1 if you have the strerror_r function. */
-#cmakedefine HAVE_STRERROR_R ${HAVE_STRERROR_R}
-
-/* Define to 1 if you have the stricmp function. */
-#cmakedefine HAVE_STRICMP ${HAVE_STRICMP}
-
-/* Define to 1 if you have the <strings.h> header file. */
-#cmakedefine HAVE_STRINGS_H ${HAVE_STRINGS_H}
-
-/* Define to 1 if you have the <string.h> header file. */
-#cmakedefine HAVE_STRING_H ${HAVE_STRING_H}
-
-/* Define to 1 if you have the strlcat function. */
-#cmakedefine HAVE_STRLCAT ${HAVE_STRLCAT}
-
-/* Define to 1 if you have the `strlcpy' function. */
-#cmakedefine HAVE_STRLCPY ${HAVE_STRLCPY}
-
-/* Define to 1 if you have the strncasecmp function. */
-#cmakedefine HAVE_STRNCASECMP ${HAVE_STRNCASECMP}
-
-/* Define to 1 if you have the strncmpi function. */
-#cmakedefine HAVE_STRNCMPI ${HAVE_STRNCMPI}
-
-/* Define to 1 if you have the strnicmp function. */
-#cmakedefine HAVE_STRNICMP ${HAVE_STRNICMP}
-
-/* Define to 1 if you have the <stropts.h> header file. */
-#cmakedefine HAVE_STROPTS_H ${HAVE_STROPTS_H}
-
-/* Define to 1 if you have the strstr function. */
-#cmakedefine HAVE_STRSTR ${HAVE_STRSTR}
-
-/* Define to 1 if you have the strtok_r function. */
-#cmakedefine HAVE_STRTOK_R ${HAVE_STRTOK_R}
-
-/* Define to 1 if you have the strtoll function. */
-#cmakedefine HAVE_STRTOLL ${HAVE_STRTOLL}
-
-/* if struct sockaddr_storage is defined */
-#cmakedefine HAVE_STRUCT_SOCKADDR_STORAGE ${HAVE_STRUCT_SOCKADDR_STORAGE}
-
-/* Define to 1 if you have the timeval struct. */
-#cmakedefine HAVE_STRUCT_TIMEVAL ${HAVE_STRUCT_TIMEVAL}
-
-/* Define to 1 if you have the <sys/filio.h> header file. */
-#cmakedefine HAVE_SYS_FILIO_H ${HAVE_SYS_FILIO_H}
-
-/* Define to 1 if you have the <sys/ioctl.h> header file. */
-#cmakedefine HAVE_SYS_IOCTL_H ${HAVE_SYS_IOCTL_H}
-
-/* Define to 1 if you have the <sys/param.h> header file. */
-#cmakedefine HAVE_SYS_PARAM_H ${HAVE_SYS_PARAM_H}
-
-/* Define to 1 if you have the <sys/poll.h> header file. */
-#cmakedefine HAVE_SYS_POLL_H ${HAVE_SYS_POLL_H}
-
-/* Define to 1 if you have the <sys/resource.h> header file. */
-#cmakedefine HAVE_SYS_RESOURCE_H ${HAVE_SYS_RESOURCE_H}
-
-/* Define to 1 if you have the <sys/select.h> header file. */
-#cmakedefine HAVE_SYS_SELECT_H ${HAVE_SYS_SELECT_H}
-
-/* Define to 1 if you have the <sys/socket.h> header file. */
-#cmakedefine HAVE_SYS_SOCKET_H ${HAVE_SYS_SOCKET_H}
-
-/* Define to 1 if you have the <sys/sockio.h> header file. */
-#cmakedefine HAVE_SYS_SOCKIO_H ${HAVE_SYS_SOCKIO_H}
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#cmakedefine HAVE_SYS_STAT_H ${HAVE_SYS_STAT_H}
-
-/* Define to 1 if you have the <sys/time.h> header file. */
-#cmakedefine HAVE_SYS_TIME_H ${HAVE_SYS_TIME_H}
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#cmakedefine HAVE_SYS_TYPES_H ${HAVE_SYS_TYPES_H}
-
-/* Define to 1 if you have the <sys/uio.h> header file. */
-#cmakedefine HAVE_SYS_UIO_H ${HAVE_SYS_UIO_H}
-
-/* Define to 1 if you have the <sys/un.h> header file. */
-#cmakedefine HAVE_SYS_UN_H ${HAVE_SYS_UN_H}
-
-/* Define to 1 if you have the <sys/utime.h> header file. */
-#cmakedefine HAVE_SYS_UTIME_H ${HAVE_SYS_UTIME_H}
-
-/* Define to 1 if you have the <termios.h> header file. */
-#cmakedefine HAVE_TERMIOS_H ${HAVE_TERMIOS_H}
-
-/* Define to 1 if you have the <termio.h> header file. */
-#cmakedefine HAVE_TERMIO_H ${HAVE_TERMIO_H}
-
-/* Define to 1 if you have the <time.h> header file. */
-#cmakedefine HAVE_TIME_H ${HAVE_TIME_H}
-
-/* Define to 1 if you have the <tld.h> header file. */
-#cmakedefine HAVE_TLD_H ${HAVE_TLD_H}
-
-/* Define to 1 if you have the `tld_strerror' function. */
-#cmakedefine HAVE_TLD_STRERROR ${HAVE_TLD_STRERROR}
-
-/* Define to 1 if you have the `uname' function. */
-#cmakedefine HAVE_UNAME ${HAVE_UNAME}
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#cmakedefine HAVE_UNISTD_H ${HAVE_UNISTD_H}
-
-/* Define to 1 if you have the `utime' function. */
-#cmakedefine HAVE_UTIME ${HAVE_UTIME}
-
-/* Define to 1 if you have the <utime.h> header file. */
-#cmakedefine HAVE_UTIME_H ${HAVE_UTIME_H}
-
-/* Define to 1 if compiler supports C99 variadic macro style. */
-#cmakedefine HAVE_VARIADIC_MACROS_C99 ${HAVE_VARIADIC_MACROS_C99}
-
-/* Define to 1 if compiler supports old gcc variadic macro style. */
-#cmakedefine HAVE_VARIADIC_MACROS_GCC ${HAVE_VARIADIC_MACROS_GCC}
-
-/* Define to 1 if you have the winber.h header file. */
-#cmakedefine HAVE_WINBER_H ${HAVE_WINBER_H}
-
-/* Define to 1 if you have the windows.h header file. */
-#cmakedefine HAVE_WINDOWS_H ${HAVE_WINDOWS_H}
-
-/* Define to 1 if you have the winldap.h header file. */
-#cmakedefine HAVE_WINLDAP_H ${HAVE_WINLDAP_H}
-
-/* Define to 1 if you have the winsock2.h header file. */
-#cmakedefine HAVE_WINSOCK2_H ${HAVE_WINSOCK2_H}
-
-/* Define to 1 if you have the winsock.h header file. */
-#cmakedefine HAVE_WINSOCK_H ${HAVE_WINSOCK_H}
-
-/* Define this symbol if your OS supports changing the contents of argv */
-#cmakedefine HAVE_WRITABLE_ARGV ${HAVE_WRITABLE_ARGV}
-
-/* Define to 1 if you have the writev function. */
-#cmakedefine HAVE_WRITEV ${HAVE_WRITEV}
-
-/* Define to 1 if you have the ws2tcpip.h header file. */
-#cmakedefine HAVE_WS2TCPIP_H ${HAVE_WS2TCPIP_H}
-
-/* Define to 1 if you have the <x509.h> header file. */
-#cmakedefine HAVE_X509_H ${HAVE_X509_H}
-
-/* Define if you have the <process.h> header file. */
-#cmakedefine HAVE_PROCESS_H ${HAVE_PROCESS_H}
-
-/* if you have the zlib.h header file */
-#cmakedefine HAVE_ZLIB_H ${HAVE_ZLIB_H}
-
-/* Define to the sub-directory in which libtool stores uninstalled libraries.
-   */
-#cmakedefine LT_OBJDIR ${LT_OBJDIR}
-
-/* Define to 1 if you are building a native Windows target. */
-#cmakedefine NATIVE_WINDOWS ${NATIVE_WINDOWS}
-
-/* If you lack a fine basename() prototype */
-#cmakedefine NEED_BASENAME_PROTO ${NEED_BASENAME_PROTO}
-
-/* Define to 1 if you need the lber.h header file even with ldap.h */
-#cmakedefine NEED_LBER_H ${NEED_LBER_H}
-
-/* Define to 1 if you need the malloc.h header file even with stdlib.h */
-#cmakedefine NEED_MALLOC_H ${NEED_MALLOC_H}
-
-/* Define to 1 if _REENTRANT preprocessor symbol must be defined. */
-#cmakedefine NEED_REENTRANT ${NEED_REENTRANT}
-
-/* cpu-machine-OS */
-#cmakedefine OS ${OS}
-
-/* Name of package */
-#cmakedefine PACKAGE ${PACKAGE}
-
-/* Define to the address where bug reports for this package should be sent. */
-#cmakedefine PACKAGE_BUGREPORT ${PACKAGE_BUGREPORT}
-
-/* Define to the full name of this package. */
-#cmakedefine PACKAGE_NAME ${PACKAGE_NAME}
-
-/* Define to the full name and version of this package. */
-#cmakedefine PACKAGE_STRING ${PACKAGE_STRING}
-
-/* Define to the one symbol short name of this package. */
-#cmakedefine PACKAGE_TARNAME ${PACKAGE_TARNAME}
-
-/* Define to the version of this package. */
-#cmakedefine PACKAGE_VERSION ${PACKAGE_VERSION}
-
-/* a suitable file to read random data from */
-#cmakedefine RANDOM_FILE "${RANDOM_FILE}"
-
-/* Define to the type of arg 1 for recvfrom. */
-#cmakedefine RECVFROM_TYPE_ARG1 ${RECVFROM_TYPE_ARG1}
-
-/* Define to the type pointed by arg 2 for recvfrom. */
-#cmakedefine RECVFROM_TYPE_ARG2 ${RECVFROM_TYPE_ARG2}
-
-/* Define to 1 if the type pointed by arg 2 for recvfrom is void. */
-#cmakedefine RECVFROM_TYPE_ARG2_IS_VOID ${RECVFROM_TYPE_ARG2_IS_VOID}
-
-/* Define to the type of arg 3 for recvfrom. */
-#cmakedefine RECVFROM_TYPE_ARG3 ${RECVFROM_TYPE_ARG3}
-
-/* Define to the type of arg 4 for recvfrom. */
-#cmakedefine RECVFROM_TYPE_ARG4 ${RECVFROM_TYPE_ARG4}
-
-/* Define to the type pointed by arg 5 for recvfrom. */
-#cmakedefine RECVFROM_TYPE_ARG5 ${RECVFROM_TYPE_ARG5}
-
-/* Define to 1 if the type pointed by arg 5 for recvfrom is void. */
-#cmakedefine RECVFROM_TYPE_ARG5_IS_VOID ${RECVFROM_TYPE_ARG5_IS_VOID}
-
-/* Define to the type pointed by arg 6 for recvfrom. */
-#cmakedefine RECVFROM_TYPE_ARG6 ${RECVFROM_TYPE_ARG6}
-
-/* Define to 1 if the type pointed by arg 6 for recvfrom is void. */
-#cmakedefine RECVFROM_TYPE_ARG6_IS_VOID ${RECVFROM_TYPE_ARG6_IS_VOID}
-
-/* Define to the function return type for recvfrom. */
-#cmakedefine RECVFROM_TYPE_RETV ${RECVFROM_TYPE_RETV}
-
-/* Define to the type of arg 1 for recv. */
-#cmakedefine RECV_TYPE_ARG1 ${RECV_TYPE_ARG1}
-
-/* Define to the type of arg 2 for recv. */
-#cmakedefine RECV_TYPE_ARG2 ${RECV_TYPE_ARG2}
-
-/* Define to the type of arg 3 for recv. */
-#cmakedefine RECV_TYPE_ARG3 ${RECV_TYPE_ARG3}
-
-/* Define to the type of arg 4 for recv. */
-#cmakedefine RECV_TYPE_ARG4 ${RECV_TYPE_ARG4}
-
-/* Define to the function return type for recv. */
-#cmakedefine RECV_TYPE_RETV ${RECV_TYPE_RETV}
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#cmakedefine RETSIGTYPE ${RETSIGTYPE}
-
-/* Define to the type qualifier of arg 5 for select. */
-#cmakedefine SELECT_QUAL_ARG5 ${SELECT_QUAL_ARG5}
-
-/* Define to the type of arg 1 for select. */
-#cmakedefine SELECT_TYPE_ARG1 ${SELECT_TYPE_ARG1}
-
-/* Define to the type of args 2, 3 and 4 for select. */
-#cmakedefine SELECT_TYPE_ARG234 ${SELECT_TYPE_ARG234}
-
-/* Define to the type of arg 5 for select. */
-#cmakedefine SELECT_TYPE_ARG5 ${SELECT_TYPE_ARG5}
-
-/* Define to the function return type for select. */
-#cmakedefine SELECT_TYPE_RETV ${SELECT_TYPE_RETV}
-
-/* Define to the type qualifier of arg 2 for send. */
-#cmakedefine SEND_QUAL_ARG2 ${SEND_QUAL_ARG2}
-
-/* Define to the type of arg 1 for send. */
-#cmakedefine SEND_TYPE_ARG1 ${SEND_TYPE_ARG1}
-
-/* Define to the type of arg 2 for send. */
-#cmakedefine SEND_TYPE_ARG2 ${SEND_TYPE_ARG2}
-
-/* Define to the type of arg 3 for send. */
-#cmakedefine SEND_TYPE_ARG3 ${SEND_TYPE_ARG3}
-
-/* Define to the type of arg 4 for send. */
-#cmakedefine SEND_TYPE_ARG4 ${SEND_TYPE_ARG4}
-
-/* Define to the function return type for send. */
-#cmakedefine SEND_TYPE_RETV ${SEND_TYPE_RETV}
-
-/* The size of `int', as computed by sizeof. */
-#cmakedefine SIZEOF_INT ${SIZEOF_INT}
-
-/* The size of `short', as computed by sizeof. */
-#cmakedefine SIZEOF_SHORT ${SIZEOF_SHORT}
-
-/* The size of `long', as computed by sizeof. */
-#cmakedefine SIZEOF_LONG ${SIZEOF_LONG}
-
-/* The size of `off_t', as computed by sizeof. */
-#cmakedefine SIZEOF_OFF_T ${SIZEOF_OFF_T}
-
-/* The size of `size_t', as computed by sizeof. */
-#cmakedefine SIZEOF_SIZE_T ${SIZEOF_SIZE_T}
-
-/* The size of `time_t', as computed by sizeof. */
-#cmakedefine SIZEOF_TIME_T ${SIZEOF_TIME_T}
-
-/* The size of `void*', as computed by sizeof. */
-#cmakedefine SIZEOF_VOIDP ${SIZEOF_VOIDP}
-
-/* Define to 1 if you have the ANSI C header files. */
-#cmakedefine STDC_HEADERS ${STDC_HEADERS}
-
-/* Define to the type of arg 3 for strerror_r. */
-#cmakedefine STRERROR_R_TYPE_ARG3 ${STRERROR_R_TYPE_ARG3}
-
-/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-#cmakedefine TIME_WITH_SYS_TIME ${TIME_WITH_SYS_TIME}
-
-/* Define if you want to enable c-ares support */
-#cmakedefine USE_ARES ${USE_ARES}
-
-/* Define to disable non-blocking sockets. */
-#cmakedefine USE_BLOCKING_SOCKETS ${USE_BLOCKING_SOCKETS}
-
-/* if GnuTLS is enabled */
-#cmakedefine USE_GNUTLS ${USE_GNUTLS}
-
-/* if libSSH2 is in use */
-#cmakedefine USE_LIBSSH2 ${USE_LIBSSH2}
-
-/* If you want to build curl with the built-in manual */
-#cmakedefine USE_MANUAL ${USE_MANUAL}
-
-/* if NSS is enabled */
-#cmakedefine USE_NSS ${USE_NSS}
-
-/* if OpenSSL is in use */
-#cmakedefine USE_OPENSSL ${USE_OPENSSL}
-
-/* if SSL is enabled */
-#cmakedefine USE_SSLEAY ${USE_SSLEAY}
-
-/* Define to 1 if you are building a Windows target without large file
-   support. */
-#cmakedefine USE_WIN32_LARGE_FILES ${USE_WIN32_LARGE_FILES}
-
-/* to enable SSPI support */
-#cmakedefine USE_WINDOWS_SSPI ${USE_WINDOWS_SSPI}
-
-/* Define to 1 if using yaSSL in OpenSSL compatibility mode. */
-#cmakedefine USE_YASSLEMUL ${USE_YASSLEMUL}
-
-/* Version number of package */
-#cmakedefine VERSION ${VERSION}
-
-/* Define to avoid automatic inclusion of winsock.h */
-#cmakedefine WIN32_LEAN_AND_MEAN ${WIN32_LEAN_AND_MEAN}
-
-/* Define to 1 if OS is AIX. */
-#ifndef _ALL_SOURCE
-#  undef _ALL_SOURCE
-#endif
-
-/* Number of bits in a file offset, on hosts where this is settable. */
-#cmakedefine _FILE_OFFSET_BITS ${_FILE_OFFSET_BITS}
-
-/* Define for large files, on AIX-style hosts. */
-#cmakedefine _LARGE_FILES ${_LARGE_FILES}
-
-/* define this if you need it to compile thread-safe code */
-#cmakedefine _THREAD_SAFE ${_THREAD_SAFE}
-
-/* Define to empty if `const' does not conform to ANSI C. */
-#cmakedefine const ${const}
-
-/* Type to use in place of in_addr_t when system does not provide it. */
-#cmakedefine in_addr_t ${in_addr_t}
-
-/* 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 `unsigned int' if <sys/types.h> does not define. */
-#cmakedefine size_t ${size_t}
-
-/* the signed version of size_t */
-#cmakedefine ssize_t ${ssize_t}
diff --git a/src/other/curl/lib/curl_config.h.in b/src/other/curl/lib/curl_config.h.in
deleted file mode 100644
index 846fb27..0000000
--- a/src/other/curl/lib/curl_config.h.in
+++ /dev/null
@@ -1,973 +0,0 @@
-/* lib/curl_config.h.in.  Generated from configure.ac by autoheader.  */
-
-/* when building libcurl itself */
-#undef BUILDING_LIBCURL
-
-/* Location of default ca bundle */
-#undef CURL_CA_BUNDLE
-
-/* Location of default ca path */
-#undef CURL_CA_PATH
-
-/* to disable cookies support */
-#undef CURL_DISABLE_COOKIES
-
-/* to disable cryptographic authentication */
-#undef CURL_DISABLE_CRYPTO_AUTH
-
-/* to disable DICT */
-#undef CURL_DISABLE_DICT
-
-/* to disable FILE */
-#undef CURL_DISABLE_FILE
-
-/* to disable FTP */
-#undef CURL_DISABLE_FTP
-
-/* to disable HTTP */
-#undef CURL_DISABLE_HTTP
-
-/* to disable IMAP */
-#undef CURL_DISABLE_IMAP
-
-/* to disable LDAP */
-#undef CURL_DISABLE_LDAP
-
-/* to disable LDAPS */
-#undef CURL_DISABLE_LDAPS
-
-/* to disable POP3 */
-#undef CURL_DISABLE_POP3
-
-/* to disable proxies */
-#undef CURL_DISABLE_PROXY
-
-/* to disable RTSP */
-#undef CURL_DISABLE_RTSP
-
-/* to disable SMTP */
-#undef CURL_DISABLE_SMTP
-
-/* to disable TELNET */
-#undef CURL_DISABLE_TELNET
-
-/* to disable TFTP */
-#undef CURL_DISABLE_TFTP
-
-/* to disable verbose strings */
-#undef CURL_DISABLE_VERBOSE_STRINGS
-
-/* to make a symbol visible */
-#undef CURL_EXTERN_SYMBOL
-
-/* to enable hidden symbols */
-#undef CURL_HIDDEN_SYMBOLS
-
-/* W$ LDAP with non-W$ compiler */
-#undef CURL_LDAP_HYBRID
-
-/* Use W$ LDAP implementation */
-#undef CURL_LDAP_WIN
-
-/* when not building a shared library */
-#undef CURL_STATICLIB
-
-/* your Entropy Gathering Daemon socket pathname */
-#undef EGD_SOCKET
-
-/* Define if you want to enable IPv6 support */
-#undef ENABLE_IPV6
-
-/* Define to the type qualifier of arg 1 for getnameinfo. */
-#undef GETNAMEINFO_QUAL_ARG1
-
-/* Define to the type of arg 1 for getnameinfo. */
-#undef GETNAMEINFO_TYPE_ARG1
-
-/* Define to the type of arg 2 for getnameinfo. */
-#undef GETNAMEINFO_TYPE_ARG2
-
-/* Define to the type of args 4 and 6 for getnameinfo. */
-#undef GETNAMEINFO_TYPE_ARG46
-
-/* Define to the type of arg 7 for getnameinfo. */
-#undef GETNAMEINFO_TYPE_ARG7
-
-/* Specifies the number of arguments to getservbyport_r */
-#undef GETSERVBYPORT_R_ARGS
-
-/* Specifies the size of the buffer to pass to getservbyport_r */
-#undef GETSERVBYPORT_R_BUFSIZE
-
-/* Define to 1 if you have the alarm function. */
-#undef HAVE_ALARM
-
-/* Define to 1 if you have the <alloca.h> header file. */
-#undef HAVE_ALLOCA_H
-
-/* Define to 1 if you have the <arpa/inet.h> header file. */
-#undef HAVE_ARPA_INET_H
-
-/* Define to 1 if you have the <arpa/tftp.h> header file. */
-#undef HAVE_ARPA_TFTP_H
-
-/* Define to 1 if you have the <assert.h> header file. */
-#undef HAVE_ASSERT_H
-
-/* Define to 1 if you have the basename function. */
-#undef HAVE_BASENAME
-
-/* Define to 1 if bool is an available type. */
-#undef HAVE_BOOL_T
-
-/* Define to 1 if you have the clock_gettime function and monotonic timer. */
-#undef HAVE_CLOCK_GETTIME_MONOTONIC
-
-/* Define to 1 if you have the closesocket function. */
-#undef HAVE_CLOSESOCKET
-
-/* Define to 1 if you have the CloseSocket camel case function. */
-#undef HAVE_CLOSESOCKET_CAMEL
-
-/* Define to 1 if you have the connect function. */
-#undef HAVE_CONNECT
-
-/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function. */
-#undef HAVE_CRYPTO_CLEANUP_ALL_EX_DATA
-
-/* Define to 1 if you have the <crypto.h> header file. */
-#undef HAVE_CRYPTO_H
-
-/* Define to 1 if you have the <des.h> header file. */
-#undef HAVE_DES_H
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#undef HAVE_DLFCN_H
-
-/* Define to 1 if you have the `ENGINE_cleanup' function. */
-#undef HAVE_ENGINE_CLEANUP
-
-/* Define to 1 if you have the `ENGINE_load_builtin_engines' function. */
-#undef HAVE_ENGINE_LOAD_BUILTIN_ENGINES
-
-/* Define to 1 if you have the <errno.h> header file. */
-#undef HAVE_ERRNO_H
-
-/* Define to 1 if you have the <err.h> header file. */
-#undef HAVE_ERR_H
-
-/* Define to 1 if you have the fcntl function. */
-#undef HAVE_FCNTL
-
-/* Define to 1 if you have the <fcntl.h> header file. */
-#undef HAVE_FCNTL_H
-
-/* Define to 1 if you have a working fcntl O_NONBLOCK function. */
-#undef HAVE_FCNTL_O_NONBLOCK
-
-/* Define to 1 if you have the fdopen function. */
-#undef HAVE_FDOPEN
-
-/* Define to 1 if you have the `fork' function. */
-#undef HAVE_FORK
-
-/* Define to 1 if you have the freeaddrinfo function. */
-#undef HAVE_FREEADDRINFO
-
-/* Define to 1 if you have the freeifaddrs function. */
-#undef HAVE_FREEIFADDRS
-
-/* Define to 1 if you have the ftruncate function. */
-#undef HAVE_FTRUNCATE
-
-/* Define to 1 if you have a working getaddrinfo function. */
-#undef HAVE_GETADDRINFO
-
-/* Define to 1 if the getaddrinfo function is threadsafe. */
-#undef HAVE_GETADDRINFO_THREADSAFE
-
-/* Define to 1 if you have the `geteuid' function. */
-#undef HAVE_GETEUID
-
-/* Define to 1 if you have the gethostbyaddr function. */
-#undef HAVE_GETHOSTBYADDR
-
-/* Define to 1 if you have the gethostbyaddr_r function. */
-#undef HAVE_GETHOSTBYADDR_R
-
-/* gethostbyaddr_r() takes 5 args */
-#undef HAVE_GETHOSTBYADDR_R_5
-
-/* gethostbyaddr_r() takes 7 args */
-#undef HAVE_GETHOSTBYADDR_R_7
-
-/* gethostbyaddr_r() takes 8 args */
-#undef HAVE_GETHOSTBYADDR_R_8
-
-/* Define to 1 if you have the gethostbyname function. */
-#undef HAVE_GETHOSTBYNAME
-
-/* Define to 1 if you have the gethostbyname_r function. */
-#undef HAVE_GETHOSTBYNAME_R
-
-/* gethostbyname_r() takes 3 args */
-#undef HAVE_GETHOSTBYNAME_R_3
-
-/* gethostbyname_r() takes 5 args */
-#undef HAVE_GETHOSTBYNAME_R_5
-
-/* gethostbyname_r() takes 6 args */
-#undef HAVE_GETHOSTBYNAME_R_6
-
-/* Define to 1 if you have the gethostname function. */
-#undef HAVE_GETHOSTNAME
-
-/* Define to 1 if you have a working getifaddrs function. */
-#undef HAVE_GETIFADDRS
-
-/* Define to 1 if you have the getnameinfo function. */
-#undef HAVE_GETNAMEINFO
-
-/* Define to 1 if you have the `getpass_r' function. */
-#undef HAVE_GETPASS_R
-
-/* Define to 1 if you have the `getppid' function. */
-#undef HAVE_GETPPID
-
-/* Define to 1 if you have the `getprotobyname' function. */
-#undef HAVE_GETPROTOBYNAME
-
-/* Define to 1 if you have the `getpwuid' function. */
-#undef HAVE_GETPWUID
-
-/* Define to 1 if you have the `getrlimit' function. */
-#undef HAVE_GETRLIMIT
-
-/* Define to 1 if you have the getservbyport_r function. */
-#undef HAVE_GETSERVBYPORT_R
-
-/* Define to 1 if you have the `gettimeofday' function. */
-#undef HAVE_GETTIMEOFDAY
-
-/* Define to 1 if you have a working glibc-style strerror_r function. */
-#undef HAVE_GLIBC_STRERROR_R
-
-/* Define to 1 if you have a working gmtime_r function. */
-#undef HAVE_GMTIME_R
-
-/* if you have the gssapi libraries */
-#undef HAVE_GSSAPI
-
-/* Define to 1 if you have the <gssapi/gssapi_generic.h> header file. */
-#undef HAVE_GSSAPI_GSSAPI_GENERIC_H
-
-/* Define to 1 if you have the <gssapi/gssapi.h> header file. */
-#undef HAVE_GSSAPI_GSSAPI_H
-
-/* Define to 1 if you have the <gssapi/gssapi_krb5.h> header file. */
-#undef HAVE_GSSAPI_GSSAPI_KRB5_H
-
-/* if you have the GNU gssapi libraries */
-#undef HAVE_GSSGNU
-
-/* if you have the Heimdal gssapi libraries */
-#undef HAVE_GSSHEIMDAL
-
-/* if you have the MIT gssapi libraries */
-#undef HAVE_GSSMIT
-
-/* Define to 1 if you have the `idna_strerror' function. */
-#undef HAVE_IDNA_STRERROR
-
-/* Define to 1 if you have the `idn_free' function. */
-#undef HAVE_IDN_FREE
-
-/* Define to 1 if you have the <idn-free.h> header file. */
-#undef HAVE_IDN_FREE_H
-
-/* Define to 1 if you have the <ifaddrs.h> header file. */
-#undef HAVE_IFADDRS_H
-
-/* Define to 1 if you have the `inet_addr' function. */
-#undef HAVE_INET_ADDR
-
-/* Define to 1 if you have the inet_ntoa_r function. */
-#undef HAVE_INET_NTOA_R
-
-/* inet_ntoa_r() takes 2 args */
-#undef HAVE_INET_NTOA_R_2
-
-/* inet_ntoa_r() takes 3 args */
-#undef HAVE_INET_NTOA_R_3
-
-/* Define to 1 if you have a IPv6 capable working inet_ntop function. */
-#undef HAVE_INET_NTOP
-
-/* Define to 1 if you have a IPv6 capable working inet_pton function. */
-#undef HAVE_INET_PTON
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#undef HAVE_INTTYPES_H
-
-/* Define to 1 if you have the ioctl function. */
-#undef HAVE_IOCTL
-
-/* Define to 1 if you have the ioctlsocket function. */
-#undef HAVE_IOCTLSOCKET
-
-/* Define to 1 if you have the IoctlSocket camel case function. */
-#undef HAVE_IOCTLSOCKET_CAMEL
-
-/* Define to 1 if you have a working IoctlSocket camel case FIONBIO function.
-   */
-#undef HAVE_IOCTLSOCKET_CAMEL_FIONBIO
-
-/* Define to 1 if you have a working ioctlsocket FIONBIO function. */
-#undef HAVE_IOCTLSOCKET_FIONBIO
-
-/* Define to 1 if you have a working ioctl FIONBIO function. */
-#undef HAVE_IOCTL_FIONBIO
-
-/* Define to 1 if you have a working ioctl SIOCGIFADDR function. */
-#undef HAVE_IOCTL_SIOCGIFADDR
-
-/* Define to 1 if you have the <io.h> header file. */
-#undef HAVE_IO_H
-
-/* if you have the Kerberos4 libraries (including -ldes) */
-#undef HAVE_KRB4
-
-/* Define to 1 if you have the `krb_get_our_ip_for_realm' function. */
-#undef HAVE_KRB_GET_OUR_IP_FOR_REALM
-
-/* Define to 1 if you have the <krb.h> header file. */
-#undef HAVE_KRB_H
-
-/* Define to 1 if you have the lber.h header file. */
-#undef HAVE_LBER_H
-
-/* Define to 1 if you have the ldapssl.h header file. */
-#undef HAVE_LDAPSSL_H
-
-/* Define to 1 if you have the ldap.h header file. */
-#undef HAVE_LDAP_H
-
-/* Use LDAPS implementation */
-#undef HAVE_LDAP_SSL
-
-/* Define to 1 if you have the ldap_ssl.h header file. */
-#undef HAVE_LDAP_SSL_H
-
-/* Define to 1 if you have the `ldap_url_parse' function. */
-#undef HAVE_LDAP_URL_PARSE
-
-/* Define to 1 if you have the <libgen.h> header file. */
-#undef HAVE_LIBGEN_H
-
-/* Define to 1 if you have the `idn' library (-lidn). */
-#undef HAVE_LIBIDN
-
-/* Define to 1 if you have the `resolv' library (-lresolv). */
-#undef HAVE_LIBRESOLV
-
-/* Define to 1 if you have the `resolve' library (-lresolve). */
-#undef HAVE_LIBRESOLVE
-
-/* Define to 1 if you have the `ssh2' library (-lssh2). */
-#undef HAVE_LIBSSH2
-
-/* Define to 1 if you have the <libssh2.h> header file. */
-#undef HAVE_LIBSSH2_H
-
-/* Define to 1 if you have the `libssh2_version' function. */
-#undef HAVE_LIBSSH2_VERSION
-
-/* Define to 1 if you have the `ssl' library (-lssl). */
-#undef HAVE_LIBSSL
-
-/* if zlib is available */
-#undef HAVE_LIBZ
-
-/* Define to 1 if you have the <limits.h> header file. */
-#undef HAVE_LIMITS_H
-
-/* if your compiler supports LL */
-#undef HAVE_LL
-
-/* Define to 1 if you have the <locale.h> header file. */
-#undef HAVE_LOCALE_H
-
-/* Define to 1 if you have a working localtime_r function. */
-#undef HAVE_LOCALTIME_R
-
-/* Define to 1 if the compiler supports the 'long long' data type. */
-#undef HAVE_LONGLONG
-
-/* Define to 1 if you have the malloc.h header file. */
-#undef HAVE_MALLOC_H
-
-/* Define to 1 if you have the memory.h header file. */
-#undef HAVE_MEMORY_H
-
-/* Define to 1 if you have the memrchr function or macro. */
-#undef HAVE_MEMRCHR
-
-/* Define to 1 if you have the MSG_NOSIGNAL flag. */
-#undef HAVE_MSG_NOSIGNAL
-
-/* Define to 1 if you have the <netdb.h> header file. */
-#undef HAVE_NETDB_H
-
-/* Define to 1 if you have the <netinet/in.h> header file. */
-#undef HAVE_NETINET_IN_H
-
-/* Define to 1 if you have the <netinet/tcp.h> header file. */
-#undef HAVE_NETINET_TCP_H
-
-/* Define to 1 if you have the <net/if.h> header file. */
-#undef HAVE_NET_IF_H
-
-/* Define to 1 if NI_WITHSCOPEID exists and works. */
-#undef HAVE_NI_WITHSCOPEID
-
-/* if you have an old MIT gssapi library, lacking GSS_C_NT_HOSTBASED_SERVICE
-   */
-#undef HAVE_OLD_GSSMIT
-
-/* Define to 1 if you have the <openssl/crypto.h> header file. */
-#undef HAVE_OPENSSL_CRYPTO_H
-
-/* Define to 1 if you have the <openssl/engine.h> header file. */
-#undef HAVE_OPENSSL_ENGINE_H
-
-/* Define to 1 if you have the <openssl/err.h> header file. */
-#undef HAVE_OPENSSL_ERR_H
-
-/* Define to 1 if you have the <openssl/pem.h> header file. */
-#undef HAVE_OPENSSL_PEM_H
-
-/* Define to 1 if you have the <openssl/pkcs12.h> header file. */
-#undef HAVE_OPENSSL_PKCS12_H
-
-/* Define to 1 if you have the <openssl/rsa.h> header file. */
-#undef HAVE_OPENSSL_RSA_H
-
-/* Define to 1 if you have the <openssl/ssl.h> header file. */
-#undef HAVE_OPENSSL_SSL_H
-
-/* Define to 1 if you have the <openssl/x509.h> header file. */
-#undef HAVE_OPENSSL_X509_H
-
-/* Define to 1 if you have the <pem.h> header file. */
-#undef HAVE_PEM_H
-
-/* Define to 1 if you have the `perror' function. */
-#undef HAVE_PERROR
-
-/* Define to 1 if you have the `pipe' function. */
-#undef HAVE_PIPE
-
-/* if you have the function PK11_CreateGenericObject */
-#undef HAVE_PK11_CREATEGENERICOBJECT
-
-/* Define to 1 if you have a working poll function. */
-#undef HAVE_POLL
-
-/* If you have a fine poll */
-#undef HAVE_POLL_FINE
-
-/* Define to 1 if you have the <poll.h> header file. */
-#undef HAVE_POLL_H
-
-/* Define to 1 if you have a working POSIX-style strerror_r function. */
-#undef HAVE_POSIX_STRERROR_R
-
-/* Define to 1 if you have the <pwd.h> header file. */
-#undef HAVE_PWD_H
-
-/* Define to 1 if you have the `RAND_egd' function. */
-#undef HAVE_RAND_EGD
-
-/* Define to 1 if you have the `RAND_screen' function. */
-#undef HAVE_RAND_SCREEN
-
-/* Define to 1 if you have the `RAND_status' function. */
-#undef HAVE_RAND_STATUS
-
-/* Define to 1 if you have the recv function. */
-#undef HAVE_RECV
-
-/* Define to 1 if you have the recvfrom function. */
-#undef HAVE_RECVFROM
-
-/* Define to 1 if you have the <rsa.h> header file. */
-#undef HAVE_RSA_H
-
-/* Define to 1 if you have the select function. */
-#undef HAVE_SELECT
-
-/* Define to 1 if you have the send function. */
-#undef HAVE_SEND
-
-/* Define to 1 if you have the <setjmp.h> header file. */
-#undef HAVE_SETJMP_H
-
-/* Define to 1 if you have the `setlocale' function. */
-#undef HAVE_SETLOCALE
-
-/* Define to 1 if you have the `setmode' function. */
-#undef HAVE_SETMODE
-
-/* Define to 1 if you have the `setrlimit' function. */
-#undef HAVE_SETRLIMIT
-
-/* Define to 1 if you have the setsockopt function. */
-#undef HAVE_SETSOCKOPT
-
-/* Define to 1 if you have a working setsockopt SO_NONBLOCK function. */
-#undef HAVE_SETSOCKOPT_SO_NONBLOCK
-
-/* Define to 1 if you have the <sgtty.h> header file. */
-#undef HAVE_SGTTY_H
-
-/* Define to 1 if you have the sigaction function. */
-#undef HAVE_SIGACTION
-
-/* Define to 1 if you have the siginterrupt function. */
-#undef HAVE_SIGINTERRUPT
-
-/* Define to 1 if you have the signal function. */
-#undef HAVE_SIGNAL
-
-/* Define to 1 if you have the <signal.h> header file. */
-#undef HAVE_SIGNAL_H
-
-/* Define to 1 if you have the sigsetjmp function or macro. */
-#undef HAVE_SIGSETJMP
-
-/* Define to 1 if sig_atomic_t is an available typedef. */
-#undef HAVE_SIG_ATOMIC_T
-
-/* Define to 1 if sig_atomic_t is already defined as volatile. */
-#undef HAVE_SIG_ATOMIC_T_VOLATILE
-
-/* Define to 1 if struct sockaddr_in6 has the sin6_scope_id member */
-#undef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
-
-/* Define to 1 if you have the socket function. */
-#undef HAVE_SOCKET
-
-/* Define to 1 if you have the <socket.h> header file. */
-#undef HAVE_SOCKET_H
-
-/* Define this if you have the SPNEGO library fbopenssl */
-#undef HAVE_SPNEGO
-
-/* Define to 1 if you have the `SSL_get_shutdown' function. */
-#undef HAVE_SSL_GET_SHUTDOWN
-
-/* Define to 1 if you have the <ssl.h> header file. */
-#undef HAVE_SSL_H
-
-/* Define to 1 if you have the <stdbool.h> header file. */
-#undef HAVE_STDBOOL_H
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H
-
-/* Define to 1 if you have the <stdio.h> header file. */
-#undef HAVE_STDIO_H
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H
-
-/* Define to 1 if you have the strcasecmp function. */
-#undef HAVE_STRCASECMP
-
-/* Define to 1 if you have the strcasestr function. */
-#undef HAVE_STRCASESTR
-
-/* Define to 1 if you have the strcmpi function. */
-#undef HAVE_STRCMPI
-
-/* Define to 1 if you have the strdup function. */
-#undef HAVE_STRDUP
-
-/* Define to 1 if you have the strerror_r function. */
-#undef HAVE_STRERROR_R
-
-/* Define to 1 if you have the stricmp function. */
-#undef HAVE_STRICMP
-
-/* Define to 1 if you have the <strings.h> header file. */
-#undef HAVE_STRINGS_H
-
-/* Define to 1 if you have the <string.h> header file. */
-#undef HAVE_STRING_H
-
-/* Define to 1 if you have the strlcat function. */
-#undef HAVE_STRLCAT
-
-/* Define to 1 if you have the `strlcpy' function. */
-#undef HAVE_STRLCPY
-
-/* Define to 1 if you have the strncasecmp function. */
-#undef HAVE_STRNCASECMP
-
-/* Define to 1 if you have the strncmpi function. */
-#undef HAVE_STRNCMPI
-
-/* Define to 1 if you have the strnicmp function. */
-#undef HAVE_STRNICMP
-
-/* Define to 1 if you have the <stropts.h> header file. */
-#undef HAVE_STROPTS_H
-
-/* Define to 1 if you have the strstr function. */
-#undef HAVE_STRSTR
-
-/* Define to 1 if you have the strtok_r function. */
-#undef HAVE_STRTOK_R
-
-/* Define to 1 if you have the strtoll function. */
-#undef HAVE_STRTOLL
-
-/* if struct sockaddr_storage is defined */
-#undef HAVE_STRUCT_SOCKADDR_STORAGE
-
-/* Define to 1 if you have the timeval struct. */
-#undef HAVE_STRUCT_TIMEVAL
-
-/* Define to 1 if you have the <sys/filio.h> header file. */
-#undef HAVE_SYS_FILIO_H
-
-/* Define to 1 if you have the <sys/ioctl.h> header file. */
-#undef HAVE_SYS_IOCTL_H
-
-/* Define to 1 if you have the <sys/param.h> header file. */
-#undef HAVE_SYS_PARAM_H
-
-/* Define to 1 if you have the <sys/poll.h> header file. */
-#undef HAVE_SYS_POLL_H
-
-/* Define to 1 if you have the <sys/resource.h> header file. */
-#undef HAVE_SYS_RESOURCE_H
-
-/* Define to 1 if you have the <sys/select.h> header file. */
-#undef HAVE_SYS_SELECT_H
-
-/* Define to 1 if you have the <sys/socket.h> header file. */
-#undef HAVE_SYS_SOCKET_H
-
-/* Define to 1 if you have the <sys/sockio.h> header file. */
-#undef HAVE_SYS_SOCKIO_H
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#undef HAVE_SYS_STAT_H
-
-/* Define to 1 if you have the <sys/time.h> header file. */
-#undef HAVE_SYS_TIME_H
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#undef HAVE_SYS_TYPES_H
-
-/* Define to 1 if you have the <sys/uio.h> header file. */
-#undef HAVE_SYS_UIO_H
-
-/* Define to 1 if you have the <sys/un.h> header file. */
-#undef HAVE_SYS_UN_H
-
-/* Define to 1 if you have the <sys/utime.h> header file. */
-#undef HAVE_SYS_UTIME_H
-
-/* Define to 1 if you have the <termios.h> header file. */
-#undef HAVE_TERMIOS_H
-
-/* Define to 1 if you have the <termio.h> header file. */
-#undef HAVE_TERMIO_H
-
-/* Define to 1 if you have the <time.h> header file. */
-#undef HAVE_TIME_H
-
-/* Define to 1 if you have the <tld.h> header file. */
-#undef HAVE_TLD_H
-
-/* Define to 1 if you have the `tld_strerror' function. */
-#undef HAVE_TLD_STRERROR
-
-/* Define to 1 if you have the `uname' function. */
-#undef HAVE_UNAME
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H
-
-/* Define to 1 if you have the `utime' function. */
-#undef HAVE_UTIME
-
-/* Define to 1 if you have the <utime.h> header file. */
-#undef HAVE_UTIME_H
-
-/* Define to 1 if compiler supports C99 variadic macro style. */
-#undef HAVE_VARIADIC_MACROS_C99
-
-/* Define to 1 if compiler supports old gcc variadic macro style. */
-#undef HAVE_VARIADIC_MACROS_GCC
-
-/* Define to 1 if you have the winber.h header file. */
-#undef HAVE_WINBER_H
-
-/* Define to 1 if you have the windows.h header file. */
-#undef HAVE_WINDOWS_H
-
-/* Define to 1 if you have the winldap.h header file. */
-#undef HAVE_WINLDAP_H
-
-/* Define to 1 if you have the winsock2.h header file. */
-#undef HAVE_WINSOCK2_H
-
-/* Define to 1 if you have the winsock.h header file. */
-#undef HAVE_WINSOCK_H
-
-/* Define this symbol if your OS supports changing the contents of argv */
-#undef HAVE_WRITABLE_ARGV
-
-/* Define to 1 if you have the writev function. */
-#undef HAVE_WRITEV
-
-/* Define to 1 if you have the ws2tcpip.h header file. */
-#undef HAVE_WS2TCPIP_H
-
-/* Define to 1 if you have the <x509.h> header file. */
-#undef HAVE_X509_H
-
-/* if you have the zlib.h header file */
-#undef HAVE_ZLIB_H
-
-/* Define to the sub-directory in which libtool stores uninstalled libraries.
-   */
-#undef LT_OBJDIR
-
-/* Define to 1 if you are building a native Windows target. */
-#undef NATIVE_WINDOWS
-
-/* Define to 1 if you need the lber.h header file even with ldap.h */
-#undef NEED_LBER_H
-
-/* Define to 1 if you need the malloc.h header file even with stdlib.h */
-#undef NEED_MALLOC_H
-
-/* Define to 1 if you need the memory.h header file even with stdlib.h */
-#undef NEED_MEMORY_H
-
-/* Define to 1 if _REENTRANT preprocessor symbol must be defined. */
-#undef NEED_REENTRANT
-
-/* Define to 1 if _THREAD_SAFE preprocessor symbol must be defined. */
-#undef NEED_THREAD_SAFE
-
-/* cpu-machine-OS */
-#undef OS
-
-/* Name of package */
-#undef PACKAGE
-
-/* Define to the address where bug reports for this package should be sent. */
-#undef PACKAGE_BUGREPORT
-
-/* Define to the full name of this package. */
-#undef PACKAGE_NAME
-
-/* Define to the full name and version of this package. */
-#undef PACKAGE_STRING
-
-/* Define to the one symbol short name of this package. */
-#undef PACKAGE_TARNAME
-
-/* Define to the home page for this package. */
-#undef PACKAGE_URL
-
-/* Define to the version of this package. */
-#undef PACKAGE_VERSION
-
-/* a suitable file to read random data from */
-#undef RANDOM_FILE
-
-/* Define to the type of arg 1 for recvfrom. */
-#undef RECVFROM_TYPE_ARG1
-
-/* Define to the type pointed by arg 2 for recvfrom. */
-#undef RECVFROM_TYPE_ARG2
-
-/* Define to 1 if the type pointed by arg 2 for recvfrom is void. */
-#undef RECVFROM_TYPE_ARG2_IS_VOID
-
-/* Define to the type of arg 3 for recvfrom. */
-#undef RECVFROM_TYPE_ARG3
-
-/* Define to the type of arg 4 for recvfrom. */
-#undef RECVFROM_TYPE_ARG4
-
-/* Define to the type pointed by arg 5 for recvfrom. */
-#undef RECVFROM_TYPE_ARG5
-
-/* Define to 1 if the type pointed by arg 5 for recvfrom is void. */
-#undef RECVFROM_TYPE_ARG5_IS_VOID
-
-/* Define to the type pointed by arg 6 for recvfrom. */
-#undef RECVFROM_TYPE_ARG6
-
-/* Define to 1 if the type pointed by arg 6 for recvfrom is void. */
-#undef RECVFROM_TYPE_ARG6_IS_VOID
-
-/* Define to the function return type for recvfrom. */
-#undef RECVFROM_TYPE_RETV
-
-/* Define to the type of arg 1 for recv. */
-#undef RECV_TYPE_ARG1
-
-/* Define to the type of arg 2 for recv. */
-#undef RECV_TYPE_ARG2
-
-/* Define to the type of arg 3 for recv. */
-#undef RECV_TYPE_ARG3
-
-/* Define to the type of arg 4 for recv. */
-#undef RECV_TYPE_ARG4
-
-/* Define to the function return type for recv. */
-#undef RECV_TYPE_RETV
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#undef RETSIGTYPE
-
-/* Define to the type qualifier of arg 5 for select. */
-#undef SELECT_QUAL_ARG5
-
-/* Define to the type of arg 1 for select. */
-#undef SELECT_TYPE_ARG1
-
-/* Define to the type of args 2, 3 and 4 for select. */
-#undef SELECT_TYPE_ARG234
-
-/* Define to the type of arg 5 for select. */
-#undef SELECT_TYPE_ARG5
-
-/* Define to the function return type for select. */
-#undef SELECT_TYPE_RETV
-
-/* Define to the type qualifier of arg 2 for send. */
-#undef SEND_QUAL_ARG2
-
-/* Define to the type of arg 1 for send. */
-#undef SEND_TYPE_ARG1
-
-/* Define to the type of arg 2 for send. */
-#undef SEND_TYPE_ARG2
-
-/* Define to the type of arg 3 for send. */
-#undef SEND_TYPE_ARG3
-
-/* Define to the type of arg 4 for send. */
-#undef SEND_TYPE_ARG4
-
-/* Define to the function return type for send. */
-#undef SEND_TYPE_RETV
-
-/* The size of `int', as computed by sizeof. */
-#undef SIZEOF_INT
-
-/* The size of `long', as computed by sizeof. */
-#undef SIZEOF_LONG
-
-/* The size of `off_t', as computed by sizeof. */
-#undef SIZEOF_OFF_T
-
-/* The size of `short', as computed by sizeof. */
-#undef SIZEOF_SHORT
-
-/* The size of `size_t', as computed by sizeof. */
-#undef SIZEOF_SIZE_T
-
-/* The size of `time_t', as computed by sizeof. */
-#undef SIZEOF_TIME_T
-
-/* The size of `void*', as computed by sizeof. */
-#undef SIZEOF_VOIDP
-
-/* Define to 1 if you have the ANSI C header files. */
-#undef STDC_HEADERS
-
-/* Define to the type of arg 3 for strerror_r. */
-#undef STRERROR_R_TYPE_ARG3
-
-/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-#undef TIME_WITH_SYS_TIME
-
-/* Define to enable c-ares support */
-#undef USE_ARES
-
-/* Define to disable non-blocking sockets. */
-#undef USE_BLOCKING_SOCKETS
-
-/* if GnuTLS is enabled */
-#undef USE_GNUTLS
-
-/* if libSSH2 is in use */
-#undef USE_LIBSSH2
-
-/* If you want to build curl with the built-in manual */
-#undef USE_MANUAL
-
-/* if NSS is enabled */
-#undef USE_NSS
-
-/* if OpenSSL is in use */
-#undef USE_OPENSSL
-
-/* if SSL is enabled */
-#undef USE_SSLEAY
-
-/* Define to 1 if you are building a Windows target without large file
-   support. */
-#undef USE_WIN32_LARGE_FILES
-
-/* to enable SSPI support */
-#undef USE_WINDOWS_SSPI
-
-/* Define to 1 if using yaSSL in OpenSSL compatibility mode. */
-#undef USE_YASSLEMUL
-
-/* Version number of package */
-#undef VERSION
-
-/* Define to avoid automatic inclusion of winsock.h */
-#undef WIN32_LEAN_AND_MEAN
-
-/* Define to 1 if OS is AIX. */
-#ifndef _ALL_SOURCE
-#  undef _ALL_SOURCE
-#endif
-
-/* Number of bits in a file offset, on hosts where this is settable. */
-#undef _FILE_OFFSET_BITS
-
-/* Define for large files, on AIX-style hosts. */
-#undef _LARGE_FILES
-
-/* Define to empty if `const' does not conform to ANSI C. */
-#undef const
-
-/* Type to use in place of in_addr_t when system does not provide it. */
-#undef in_addr_t
-
-/* 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 `unsigned int' if <sys/types.h> does not define. */
-#undef size_t
-
-/* the signed version of size_t */
-#undef ssize_t
diff --git a/src/other/curl/lib/curl_ldap.h b/src/other/curl/lib/curl_ldap.h
deleted file mode 100644
index 1f28afe..0000000
--- a/src/other/curl/lib/curl_ldap.h
+++ /dev/null
@@ -1,33 +0,0 @@
-#ifndef __CURL_LDAP_H
-#define __CURL_LDAP_H
-
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#ifndef CURL_DISABLE_LDAP
-extern const struct Curl_handler Curl_handler_ldap;
-
-#ifdef HAVE_LDAP_SSL
-extern const struct Curl_handler Curl_handler_ldaps;
-#endif
-
-#endif
-#endif /* __CURL_LDAP_H */
diff --git a/src/other/curl/lib/curl_md5.h b/src/other/curl/lib/curl_md5.h
deleted file mode 100644
index cab9915..0000000
--- a/src/other/curl/lib/curl_md5.h
+++ /dev/null
@@ -1,28 +0,0 @@
-#ifndef HEADER_CURL_MD5_H
-#define HEADER_CURL_MD5_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-void Curl_md5it(unsigned char *output,
-                const unsigned char *input);
-
-#endif /* HEADER_CURL_MD5_H */
diff --git a/src/other/curl/lib/curl_memory.h b/src/other/curl/lib/curl_memory.h
deleted file mode 100644
index e119458..0000000
--- a/src/other/curl/lib/curl_memory.h
+++ /dev/null
@@ -1,49 +0,0 @@
-#ifndef HEADER_CURL_MEMORY_H
-#define HEADER_CURL_MEMORY_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include <curl/curl.h> /* for the typedefs */
-
-extern curl_malloc_callback Curl_cmalloc;
-extern curl_free_callback Curl_cfree;
-extern curl_realloc_callback Curl_crealloc;
-extern curl_strdup_callback Curl_cstrdup;
-extern curl_calloc_callback Curl_ccalloc;
-
-#ifndef CURLDEBUG
-/* Only do this define-mania if we're not using the memdebug system, as that
-   has preference on this magic. */
-#undef strdup
-#define strdup(ptr) Curl_cstrdup(ptr)
-#undef malloc
-#define malloc(size) Curl_cmalloc(size)
-#undef calloc
-#define calloc(nbelem,size) Curl_ccalloc(nbelem, size)
-#undef realloc
-#define realloc(ptr,size) Curl_crealloc(ptr, size)
-#undef free
-#define free(ptr) Curl_cfree(ptr)
-
-#endif
-
-#endif /* HEADER_CURL_MEMORY_H */
diff --git a/src/other/curl/lib/curl_memrchr.c b/src/other/curl/lib/curl_memrchr.c
deleted file mode 100644
index a1e2bf0..0000000
--- a/src/other/curl/lib/curl_memrchr.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include "curl_memrchr.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#ifndef HAVE_MEMRCHR
-
-/*
- * Curl_memrchr()
- *
- * Our memrchr() function clone for systems which lack this function. The
- * memrchr() function is like the memchr() function, except that it searches
- * backwards from the end of the n bytes pointed to by s instead of forward
- * from the beginning.
- */
-
-void *
-Curl_memrchr(const void *s, int c, size_t n)
-{
-  const unsigned char *p = s;
-  const unsigned char *q = s;
-
-  p += n - 1;
-
-  while (p >= q) {
-    if (*p == (unsigned char)c)
-      return (void *)p;
-    p--;
-  }
-
-  return NULL;
-}
-
-#endif /* HAVE_MEMRCHR */
diff --git a/src/other/curl/lib/curl_memrchr.h b/src/other/curl/lib/curl_memrchr.h
deleted file mode 100644
index 37061b6..0000000
--- a/src/other/curl/lib/curl_memrchr.h
+++ /dev/null
@@ -1,44 +0,0 @@
-#ifndef HEADER_CURL_MEMRCHR_H
-#define HEADER_CURL_MEMRCHR_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef HAVE_MEMRCHR
-
-#ifdef HAVE_STRING_H
-#  include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-#  include <strings.h>
-#endif
-
-#else /* HAVE_MEMRCHR */
-
-void *Curl_memrchr(const void *s, int c, size_t n);
-
-#define memrchr(x,y,z) Curl_memrchr((x),(y),(z))
-
-#endif /* HAVE_MEMRCHR */
-
-#endif /* HEADER_CURL_MEMRCHR_H */
diff --git a/src/other/curl/lib/curl_rand.c b/src/other/curl/lib/curl_rand.c
deleted file mode 100644
index 047b7f3..0000000
--- a/src/other/curl/lib/curl_rand.c
+++ /dev/null
@@ -1,61 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <curl/curl.h>
-
-#include "curl_rand.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/* Private pseudo-random number seed. Unsigned integer >= 32bit. Threads
-   mutual exclusion is not implemented to acess it since we do not require
-   high quality random numbers (only used in form boudary generation). */
-
-static unsigned int randseed;
-
-/* Pseudo-random number support. */
-
-unsigned int Curl_rand(void)
-{
-  unsigned int r;
-  /* Return an unsigned 32-bit pseudo-random number. */
-  r = randseed = randseed * 1103515245 + 12345;
-  return (r << 16) | ((r >> 16) & 0xFFFF);
-}
-
-void Curl_srand(void)
-{
-  /* Randomize pseudo-random number sequence. */
-
-  randseed = (unsigned int) time(NULL);
-  Curl_rand();
-  Curl_rand();
-  Curl_rand();
-}
-
diff --git a/src/other/curl/lib/curl_rand.h b/src/other/curl/lib/curl_rand.h
deleted file mode 100644
index 26cfb7f..0000000
--- a/src/other/curl/lib/curl_rand.h
+++ /dev/null
@@ -1,29 +0,0 @@
-#ifndef HEADER_CURL_RAND_H
-#define HEADER_CURL_RAND_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-void Curl_srand(void);
-
-unsigned int Curl_rand(void);
-
-#endif /* HEADER_CURL_RAND_H */
diff --git a/src/other/curl/lib/curl_sspi.c b/src/other/curl/lib/curl_sspi.c
deleted file mode 100644
index 6b19b47..0000000
--- a/src/other/curl/lib/curl_sspi.c
+++ /dev/null
@@ -1,118 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef USE_WINDOWS_SSPI
-
-#include <curl/curl.h>
-
-#include "curl_sspi.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-
-/* Handle of security.dll or secur32.dll, depending on Windows version */
-HMODULE s_hSecDll = NULL;
-
-/* Pointer to SSPI dispatch table */
-PSecurityFunctionTableA s_pSecFn = NULL;
-
-
-/*
- * Curl_sspi_global_init()
- *
- * This is used to load the Security Service Provider Interface (SSPI)
- * dynamic link library portably across all Windows versions, without
- * the need to directly link libcurl, nor the application using it, at
- * build time.
- *
- * Once this function has been executed, Windows SSPI functions can be
- * called through the Security Service Provider Interface dispatch table.
- */
-
-CURLcode
-Curl_sspi_global_init(void)
-{
-  OSVERSIONINFO osver;
-  INIT_SECURITY_INTERFACE_A pInitSecurityInterface;
-
-  /* If security interface is not yet initialized try to do this */
-  if(s_hSecDll == NULL) {
-
-    /* Find out Windows version */
-    memset(&osver, 0, sizeof(osver));
-    osver.dwOSVersionInfoSize = sizeof(osver);
-    if(! GetVersionEx(&osver))
-      return CURLE_FAILED_INIT;
-
-    /* Security Service Provider Interface (SSPI) functions are located in
-     * security.dll on WinNT 4.0 and in secur32.dll on Win9x. Win2K and XP
-     * have both these DLLs (security.dll forwards calls to secur32.dll) */
-
-    /* Load SSPI dll into the address space of the calling process */
-    if(osver.dwPlatformId == VER_PLATFORM_WIN32_NT
-      && osver.dwMajorVersion == 4)
-      s_hSecDll = LoadLibrary("security.dll");
-    else
-      s_hSecDll = LoadLibrary("secur32.dll");
-    if(! s_hSecDll)
-      return CURLE_FAILED_INIT;
-
-    /* Get address of the InitSecurityInterfaceA function from the SSPI dll */
-    pInitSecurityInterface = (INIT_SECURITY_INTERFACE_A)
-      GetProcAddress(s_hSecDll, "InitSecurityInterfaceA");
-    if(! pInitSecurityInterface)
-      return CURLE_FAILED_INIT;
-
-    /* Get pointer to Security Service Provider Interface dispatch table */
-    s_pSecFn = pInitSecurityInterface();
-    if(! s_pSecFn)
-      return CURLE_FAILED_INIT;
-
-  }
-  return CURLE_OK;
-}
-
-
-/*
- * Curl_sspi_global_cleanup()
- *
- * This deinitializes the Security Service Provider Interface from libcurl.
- */
-
-void
-Curl_sspi_global_cleanup(void)
-{
-  if(s_hSecDll) {
-    FreeLibrary(s_hSecDll);
-    s_hSecDll = NULL;
-    s_pSecFn = NULL;
-  }
-}
-
-#endif /* USE_WINDOWS_SSPI */
diff --git a/src/other/curl/lib/curl_sspi.h b/src/other/curl/lib/curl_sspi.h
deleted file mode 100644
index 221bce1..0000000
--- a/src/other/curl/lib/curl_sspi.h
+++ /dev/null
@@ -1,73 +0,0 @@
-#ifndef HEADER_CURL_SSPI_H
-#define HEADER_CURL_SSPI_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef USE_WINDOWS_SSPI
-
-#include <curl/curl.h>
-
-/*
- * When including the folowing three headers, it is mandatory to define either
- * SECURITY_WIN32 or SECURITY_KERNEL, indicating who is compiling the code.
- */
-
-#undef SECURITY_WIN32
-#undef SECURITY_KERNEL
-#define SECURITY_WIN32 1
-#include <security.h>
-#include <sspi.h>
-#include <rpc.h>
-
-/* Provide some definitions missing in MinGW's headers */
-
-#ifndef SEC_I_CONTEXT_EXPIRED
-# define SEC_I_CONTEXT_EXPIRED ((HRESULT)0x00090317L)
-#endif
-#ifndef SEC_E_BUFFER_TOO_SMALL
-# define SEC_E_BUFFER_TOO_SMALL ((HRESULT)0x80090321L)
-#endif
-#ifndef SEC_E_CONTEXT_EXPIRED
-# define SEC_E_CONTEXT_EXPIRED ((HRESULT)0x80090317L)
-#endif
-#ifndef SEC_E_CRYPTO_SYSTEM_INVALID
-# define SEC_E_CRYPTO_SYSTEM_INVALID ((HRESULT)0x80090337L)
-#endif
-#ifndef SEC_E_MESSAGE_ALTERED
-# define SEC_E_MESSAGE_ALTERED ((HRESULT)0x8009030FL)
-#endif
-#ifndef SEC_E_OUT_OF_SEQUENCE
-# define SEC_E_OUT_OF_SEQUENCE ((HRESULT)0x80090310L)
-#endif
-
-CURLcode Curl_sspi_global_init(void);
-void Curl_sspi_global_cleanup(void);
-
-/* Forward-declaration of global variables defined in curl_sspi.c */
-
-extern HMODULE s_hSecDll;
-extern PSecurityFunctionTableA s_pSecFn;
-
-#endif /* USE_WINDOWS_SSPI */
-#endif /* HEADER_CURL_SSPI_H */
diff --git a/src/other/curl/lib/curl_threads.c b/src/other/curl/lib/curl_threads.c
deleted file mode 100644
index fd10bd4..0000000
--- a/src/other/curl/lib/curl_threads.c
+++ /dev/null
@@ -1,127 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include "setup.h"
-
-#if defined(USE_THREADS_POSIX)
-#  ifdef HAVE_PTHREAD_H
-#    include <pthread.h>
-#  endif
-#elif defined(USE_THREADS_WIN32)
-#  ifdef HAVE_PROCESS_H
-#    include <process.h>
-#  endif
-#endif
-
-#include "curl_threads.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#if defined(USE_THREADS_POSIX)
-
-struct curl_actual_call {
-  unsigned int (*func)(void *);
-  void *arg;
-};
-
-static void *curl_thread_create_thunk(void *arg)
-{
-  struct curl_actual_call * ac = arg;
-  unsigned int (*func)(void *) = ac->func;
-  void *real_arg = ac->arg;
-
-  free(ac);
-
-  (*func)(real_arg);
-
-  return 0;
-}
-
-curl_thread_t Curl_thread_create(unsigned int (*func) (void*), void *arg)
-{
-  curl_thread_t t;
-  struct curl_actual_call *ac = malloc(sizeof(struct curl_actual_call));
-  if(!ac)
-    return curl_thread_t_null;
-
-  ac->func = func;
-  ac->arg = arg;
-
-  if(pthread_create(&t, NULL, curl_thread_create_thunk, ac) != 0) {
-    free(ac);
-    return curl_thread_t_null;
-  }
-
-  return t;
-}
-
-void Curl_thread_destroy(curl_thread_t hnd)
-{
-  if(hnd != curl_thread_t_null)
-    pthread_detach(hnd);
-}
-
-int Curl_thread_join(curl_thread_t *hnd)
-{
-  int ret = (pthread_join(*hnd, NULL) == 0);
-
-  *hnd = curl_thread_t_null;
-
-  return ret;
-}
-
-#elif defined(USE_THREADS_WIN32)
-
-curl_thread_t Curl_thread_create(unsigned int (CURL_STDCALL *func) (void*), void *arg)
-{
-#ifdef _WIN32_WCE
-  return CreateThread(NULL, 0, func, arg, 0, NULL);
-#else
-  curl_thread_t t;
-  t = (curl_thread_t)_beginthreadex(NULL, 0, func, arg, 0, NULL);
-  if((t == 0) || (t == (curl_thread_t)-1L))
-    return curl_thread_t_null;
-  return t;
-#endif
-}
-
-void Curl_thread_destroy(curl_thread_t hnd)
-{
-  CloseHandle(hnd);
-}
-
-int Curl_thread_join(curl_thread_t *hnd)
-{
-  int ret = (WaitForSingleObject(*hnd, INFINITE) == WAIT_OBJECT_0);
-
-  Curl_thread_destroy(*hnd);
-
-  *hnd = curl_thread_t_null;
-
-  return ret;
-}
-
-#endif /* USE_THREADS_* */
diff --git a/src/other/curl/lib/curl_threads.h b/src/other/curl/lib/curl_threads.h
deleted file mode 100644
index ba81054..0000000
--- a/src/other/curl/lib/curl_threads.h
+++ /dev/null
@@ -1,57 +0,0 @@
-#ifndef HEADER_CURL_THREADS_H
-#define HEADER_CURL_THREADS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include "setup.h"
-
-#if defined(USE_THREADS_POSIX)
-#  define CURL_STDCALL
-#  define curl_mutex_t           pthread_mutex_t
-#  define curl_thread_t          pthread_t
-#  define curl_thread_t_null     (pthread_t)0
-#  define Curl_mutex_init(m)     pthread_mutex_init(m, NULL)
-#  define Curl_mutex_acquire(m)  pthread_mutex_lock(m)
-#  define Curl_mutex_release(m)  pthread_mutex_unlock(m)
-#  define Curl_mutex_destroy(m)  pthread_mutex_destroy(m)
-#elif defined(USE_THREADS_WIN32)
-#  define CURL_STDCALL           __stdcall
-#  define curl_mutex_t           CRITICAL_SECTION
-#  define curl_thread_t          HANDLE
-#  define curl_thread_t_null     (HANDLE)0
-#  define Curl_mutex_init(m)     InitializeCriticalSection(m)
-#  define Curl_mutex_acquire(m)  EnterCriticalSection(m)
-#  define Curl_mutex_release(m)  LeaveCriticalSection(m)
-#  define Curl_mutex_destroy(m)  DeleteCriticalSection(m)
-#endif
-
-#if defined(USE_THREADS_POSIX) || defined(USE_THREADS_WIN32)
-
-curl_thread_t Curl_thread_create(unsigned int (CURL_STDCALL *func) (void*),
-                                 void *arg);
-
-void Curl_thread_destroy(curl_thread_t hnd);
-
-int Curl_thread_join(curl_thread_t *hnd);
-
-#endif /* USE_THREADS_POSIX || USE_THREADS_WIN32 */
-
-#endif /* HEADER_CURL_THREADS_H */
diff --git a/src/other/curl/lib/curlx.h b/src/other/curl/lib/curlx.h
deleted file mode 100644
index 2b7fec5..0000000
--- a/src/other/curl/lib/curlx.h
+++ /dev/null
@@ -1,118 +0,0 @@
-#ifndef __CURLX_H
-#define __CURLX_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * Defines protos and includes all header files that provide the curlx_*
- * functions. The curlx_* functions are not part of the libcurl API, but are
- * stand-alone functions whose sources can be built and linked by apps if need
- * be.
- */
-
-#include <curl/mprintf.h>
-/* this is still a public header file that provides the curl_mprintf()
-   functions while they still are offered publicly. They will be made library-
-   private one day */
-
-#include "strequal.h"
-/* "strequal.h" provides the strequal protos */
-
-#include "strtoofft.h"
-/* "strtoofft.h" provides this function: curlx_strtoofft(), returns a
-   curl_off_t number from a given string.
-*/
-
-#include "timeval.h"
-/*
-  "timeval.h" sets up a 'struct timeval' even for platforms that otherwise
-  don't have one and has protos for these functions:
-
-  curlx_tvnow()
-  curlx_tvdiff()
-  curlx_tvdiff_secs()
-*/
-
-#include "nonblock.h"
-/* "nonblock.h" provides curlx_nonblock() */
-
-#include "warnless.h"
-/* "warnless.h" provides functions:
-
-  curlx_ultous()
-  curlx_ultouc()
-  curlx_uztosi()
-*/
-
-/* Now setup curlx_ * names for the functions that are to become curlx_ and
-   be removed from a future libcurl official API:
-   curlx_getenv
-   curlx_mprintf (and its variations)
-   curlx_strequal
-   curlx_strnequal
-
-*/
-
-#define curlx_getenv curl_getenv
-#define curlx_strequal curl_strequal
-#define curlx_strnequal curl_strnequal
-#define curlx_raw_equal Curl_raw_equal
-#define curlx_mvsnprintf curl_mvsnprintf
-#define curlx_msnprintf curl_msnprintf
-#define curlx_maprintf curl_maprintf
-#define curlx_mvaprintf curl_mvaprintf
-#define curlx_msprintf curl_msprintf
-#define curlx_mprintf curl_mprintf
-#define curlx_mfprintf curl_mfprintf
-#define curlx_mvsprintf curl_mvsprintf
-#define curlx_mvprintf curl_mvprintf
-#define curlx_mvfprintf curl_mvfprintf
-
-#ifdef ENABLE_CURLX_PRINTF
-/* If this define is set, we define all "standard" printf() functions to use
-   the curlx_* version instead. It makes the source code transparant and
-   easier to understand/patch. Undefine them first in case _MPRINTF_REPLACE
-   is set. */
-# undef printf
-# undef fprintf
-# undef sprintf
-# undef snprintf
-# undef vprintf
-# undef vfprintf
-# undef vsprintf
-# undef vsnprintf
-# undef aprintf
-# undef vaprintf
-
-# define printf curlx_mprintf
-# define fprintf curlx_mfprintf
-# define sprintf curlx_msprintf
-# define snprintf curlx_msnprintf
-# define vprintf curlx_mvprintf
-# define vfprintf curlx_mvfprintf
-# define vsprintf curlx_mvsprintf
-# define vsnprintf curlx_mvsnprintf
-# define aprintf curlx_maprintf
-# define vaprintf curlx_mvaprintf
-#endif /* ENABLE_CURLX_PRINTF */
-
-#endif /* __CURLX_H */
diff --git a/src/other/curl/lib/dict.c b/src/other/curl/lib/dict.c
deleted file mode 100644
index 1deab76..0000000
--- a/src/other/curl/lib/dict.c
+++ /dev/null
@@ -1,305 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_DICT
-
-/* -- WIN32 approved -- */
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-
-#ifdef WIN32
-#include <time.h>
-#include <io.h>
-#else
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#include <netinet/in.h>
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#include <netdb.h>
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_NET_IF_H
-#include <net/if.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
-#endif
-
-#ifdef HAVE_SYS_PARAM_H
-#include <sys/param.h>
-#endif
-
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-
-
-#endif
-
-#include "urldata.h"
-#include <curl/curl.h>
-#include "transfer.h"
-#include "sendf.h"
-
-#include "progress.h"
-#include "strequal.h"
-#include "dict.h"
-#include "rawstr.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-
-/*
- * Forward declarations.
- */
-
-static CURLcode dict_do(struct connectdata *conn, bool *done);
-
-/*
- * DICT protocol handler.
- */
-
-const struct Curl_handler Curl_handler_dict = {
-  "DICT",                               /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  dict_do,                              /* do_it */
-  ZERO_NULL,                            /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_DICT,                            /* defport */
-  PROT_DICT                             /* protocol */
-};
-
-static char *unescape_word(struct SessionHandle *data, const char *inputbuff)
-{
-  char *newp;
-  char *dictp;
-  char *ptr;
-  int len;
-  char byte;
-  int olen=0;
-
-  newp = curl_easy_unescape(data, inputbuff, 0, &len);
-  if(!newp)
-    return NULL;
-
-  dictp = malloc(((size_t)len)*2 + 1); /* add one for terminating zero */
-  if(dictp) {
-    /* According to RFC2229 section 2.2, these letters need to be escaped with
-       \[letter] */
-    for(ptr = newp;
-        (byte = *ptr) != 0;
-        ptr++) {
-      if((byte <= 32) || (byte == 127) ||
-          (byte == '\'') || (byte == '\"') || (byte == '\\')) {
-        dictp[olen++] = '\\';
-      }
-      dictp[olen++] = byte;
-    }
-    dictp[olen]=0;
-
-    free(newp);
-  }
-  return dictp;
-}
-
-static CURLcode dict_do(struct connectdata *conn, bool *done)
-{
-  char *word;
-  char *eword;
-  char *ppath;
-  char *database = NULL;
-  char *strategy = NULL;
-  char *nthdef = NULL; /* This is not part of the protocol, but required
-                          by RFC 2229 */
-  CURLcode result=CURLE_OK;
-  struct SessionHandle *data=conn->data;
-  curl_socket_t sockfd = conn->sock[FIRSTSOCKET];
-
-  char *path = data->state.path;
-  curl_off_t *bytecount = &data->req.bytecount;
-
-  *done = TRUE; /* unconditionally */
-
-  if(conn->bits.user_passwd) {
-    /* AUTH is missing */
-  }
-
-  if(Curl_raw_nequal(path, DICT_MATCH, sizeof(DICT_MATCH)-1) ||
-      Curl_raw_nequal(path, DICT_MATCH2, sizeof(DICT_MATCH2)-1) ||
-      Curl_raw_nequal(path, DICT_MATCH3, sizeof(DICT_MATCH3)-1)) {
-
-    word = strchr(path, ':');
-    if(word) {
-      word++;
-      database = strchr(word, ':');
-      if(database) {
-        *database++ = (char)0;
-        strategy = strchr(database, ':');
-        if(strategy) {
-          *strategy++ = (char)0;
-          nthdef = strchr(strategy, ':');
-          if(nthdef) {
-            *nthdef = (char)0;
-          }
-        }
-      }
-    }
-
-    if((word == NULL) || (*word == (char)0)) {
-      infof(data, "lookup word is missing");
-      word=(char *)"default";
-    }
-    if((database == NULL) || (*database == (char)0)) {
-      database = (char *)"!";
-    }
-    if((strategy == NULL) || (*strategy == (char)0)) {
-      strategy = (char *)".";
-    }
-
-    eword = unescape_word(data, word);
-    if(!eword)
-      return CURLE_OUT_OF_MEMORY;
-
-    result = Curl_sendf(sockfd, conn,
-                        "CLIENT " LIBCURL_NAME " " LIBCURL_VERSION "\r\n"
-                        "MATCH "
-                        "%s "    /* database */
-                        "%s "    /* strategy */
-                        "%s\r\n" /* word */
-                        "QUIT\r\n",
-
-                        database,
-                        strategy,
-                        eword
-                        );
-
-    free(eword);
-
-    if(result)
-      failf(data, "Failed sending DICT request");
-    else
-      result = Curl_setup_transfer(conn, FIRSTSOCKET, -1, FALSE, bytecount,
-                                   -1, NULL); /* no upload */
-    if(result)
-      return result;
-  }
-  else if(Curl_raw_nequal(path, DICT_DEFINE, sizeof(DICT_DEFINE)-1) ||
-           Curl_raw_nequal(path, DICT_DEFINE2, sizeof(DICT_DEFINE2)-1) ||
-           Curl_raw_nequal(path, DICT_DEFINE3, sizeof(DICT_DEFINE3)-1)) {
-
-    word = strchr(path, ':');
-    if(word) {
-      word++;
-      database = strchr(word, ':');
-      if(database) {
-        *database++ = (char)0;
-        nthdef = strchr(database, ':');
-        if(nthdef) {
-          *nthdef = (char)0;
-        }
-      }
-    }
-
-    if((word == NULL) || (*word == (char)0)) {
-      infof(data, "lookup word is missing");
-      word=(char *)"default";
-    }
-    if((database == NULL) || (*database == (char)0)) {
-      database = (char *)"!";
-    }
-
-    eword = unescape_word(data, word);
-    if(!eword)
-      return CURLE_OUT_OF_MEMORY;
-
-    result = Curl_sendf(sockfd, conn,
-                        "CLIENT " LIBCURL_NAME " " LIBCURL_VERSION "\r\n"
-                        "DEFINE "
-                        "%s "     /* database */
-                        "%s\r\n"  /* word */
-                        "QUIT\r\n",
-                        database,
-                        eword);
-
-    free(eword);
-
-    if(result)
-      failf(data, "Failed sending DICT request");
-    else
-      result = Curl_setup_transfer(conn, FIRSTSOCKET, -1, FALSE, bytecount,
-                                   -1, NULL); /* no upload */
-
-    if(result)
-      return result;
-
-  }
-  else {
-
-    ppath = strchr(path, '/');
-    if(ppath) {
-      int i;
-
-      ppath++;
-      for (i = 0; ppath[i]; i++) {
-        if(ppath[i] == ':')
-          ppath[i] = ' ';
-      }
-      result = Curl_sendf(sockfd, conn,
-                          "CLIENT " LIBCURL_NAME " " LIBCURL_VERSION "\r\n"
-                          "%s\r\n"
-                          "QUIT\r\n", ppath);
-      if(result)
-        failf(data, "Failed sending DICT request");
-      else
-        result = Curl_setup_transfer(conn, FIRSTSOCKET, -1, FALSE, bytecount,
-                                     -1, NULL);
-      if(result)
-        return result;
-    }
-  }
-
-  return CURLE_OK;
-}
-#endif /*CURL_DISABLE_DICT*/
diff --git a/src/other/curl/lib/dict.h b/src/other/curl/lib/dict.h
deleted file mode 100644
index 44fd9d4..0000000
--- a/src/other/curl/lib/dict.h
+++ /dev/null
@@ -1,29 +0,0 @@
-#ifndef HEADER_CURL_DICT_H
-#define HEADER_CURL_DICT_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#ifndef CURL_DISABLE_DICT
-extern const struct Curl_handler Curl_handler_dict;
-#endif
-
-#endif /* HEADER_CURL_DICT_H */
diff --git a/src/other/curl/lib/easy.c b/src/other/curl/lib/easy.c
deleted file mode 100644
index 35fb018..0000000
--- a/src/other/curl/lib/easy.c
+++ /dev/null
@@ -1,1153 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-/* -- WIN32 approved -- */
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-#include <errno.h>
-
-#include "strequal.h"
-
-#ifdef WIN32
-#include <time.h>
-#include <io.h>
-#else
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_NET_IF_H
-#include <net/if.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
-#endif
-
-#ifdef HAVE_SYS_PARAM_H
-#include <sys/param.h>
-#endif
-
-#endif  /* WIN32 ... */
-
-#include "urldata.h"
-#include <curl/curl.h>
-#include "transfer.h"
-#include "sslgen.h"
-#include "url.h"
-#include "getinfo.h"
-#include "hostip.h"
-#include "share.h"
-#include "strdup.h"
-#include "curl_memory.h"
-#include "progress.h"
-#include "easyif.h"
-#include "select.h"
-#include "sendf.h" /* for failf function prototype */
-#include "http_ntlm.h"
-#include "connect.h" /* for Curl_getconnectinfo */
-#include "slist.h"
-#include "curl_rand.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#if defined(CURL_DOES_CONVERSIONS) && defined(HAVE_ICONV)
-#include <iconv.h>
-/* set default codesets for iconv */
-#ifndef CURL_ICONV_CODESET_OF_NETWORK
-#define CURL_ICONV_CODESET_OF_NETWORK "ISO8859-1"
-#endif
-#ifndef CURL_ICONV_CODESET_FOR_UTF8
-#define CURL_ICONV_CODESET_FOR_UTF8   "UTF-8"
-#endif
-#define ICONV_ERROR  (size_t)-1
-#endif /* CURL_DOES_CONVERSIONS && HAVE_ICONV */
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/* win32_cleanup() is for win32 socket cleanup functionality, the opposite
-   of win32_init() */
-static void win32_cleanup(void)
-{
-#ifdef USE_WINSOCK
-  WSACleanup();
-#endif
-#ifdef USE_WINDOWS_SSPI
-  Curl_sspi_global_cleanup();
-#endif
-}
-
-/* win32_init() performs win32 socket initialization to properly setup the
-   stack to allow networking */
-static CURLcode win32_init(void)
-{
-#ifdef USE_WINSOCK
-  WORD wVersionRequested;
-  WSADATA wsaData;
-  int res;
-
-#if defined(ENABLE_IPV6) && (USE_WINSOCK < 2)
-  Error IPV6_requires_winsock2
-#endif
-
-  wVersionRequested = MAKEWORD(USE_WINSOCK, USE_WINSOCK);
-
-  res = WSAStartup(wVersionRequested, &wsaData);
-
-  if(res != 0)
-    /* Tell the user that we couldn't find a useable */
-    /* winsock.dll.     */
-    return CURLE_FAILED_INIT;
-
-  /* Confirm that the Windows Sockets DLL supports what we need.*/
-  /* Note that if the DLL supports versions greater */
-  /* than wVersionRequested, it will still return */
-  /* wVersionRequested in wVersion. wHighVersion contains the */
-  /* highest supported version. */
-
-  if( LOBYTE( wsaData.wVersion ) != LOBYTE(wVersionRequested) ||
-       HIBYTE( wsaData.wVersion ) != HIBYTE(wVersionRequested) ) {
-    /* Tell the user that we couldn't find a useable */
-
-    /* winsock.dll. */
-    WSACleanup();
-    return CURLE_FAILED_INIT;
-  }
-  /* The Windows Sockets DLL is acceptable. Proceed. */
-#endif
-
-#ifdef USE_WINDOWS_SSPI
-  {
-    CURLcode err = Curl_sspi_global_init();
-    if (err != CURLE_OK)
-      return err;
-  }
-#endif
-
-  return CURLE_OK;
-}
-
-#ifdef USE_LIBIDN
-/*
- * Initialise use of IDNA library.
- * It falls back to ASCII if $CHARSET isn't defined. This doesn't work for
- * idna_to_ascii_lz().
- */
-static void idna_init (void)
-{
-#ifdef WIN32
-  char buf[60];
-  UINT cp = GetACP();
-
-  if(!getenv("CHARSET") && cp > 0) {
-    snprintf(buf, sizeof(buf), "CHARSET=cp%u", cp);
-    putenv(buf);
-  }
-#else
-  /* to do? */
-#endif
-}
-#endif  /* USE_LIBIDN */
-
-/* true globals -- for curl_global_init() and curl_global_cleanup() */
-static unsigned int  initialized;
-static long          init_flags;
-
-/*
- * strdup (and other memory functions) is redefined in complicated
- * ways, but at this point it must be defined as the system-supplied strdup
- * so the callback pointer is initialized correctly.
- */
-#if defined(_WIN32_WCE)
-#define system_strdup _strdup
-#elif !defined(HAVE_STRDUP)
-#define system_strdup curlx_strdup
-#else
-#define system_strdup strdup
-#endif
-
-#if defined(_MSC_VER) && defined(_DLL) && !defined(__POCC__)
-#  pragma warning(disable:4232) /* MSVC extension, dllimport identity */
-#endif
-
-#ifndef __SYMBIAN32__
-/*
- * If a memory-using function (like curl_getenv) is used before
- * curl_global_init() is called, we need to have these pointers set already.
- */
-curl_malloc_callback Curl_cmalloc = (curl_malloc_callback)malloc;
-curl_free_callback Curl_cfree = (curl_free_callback)free;
-curl_realloc_callback Curl_crealloc = (curl_realloc_callback)realloc;
-curl_strdup_callback Curl_cstrdup = (curl_strdup_callback)system_strdup;
-curl_calloc_callback Curl_ccalloc = (curl_calloc_callback)calloc;
-#else
-/*
- * Symbian OS doesn't support initialization to code in writeable static data.
- * Initialization will occur in the curl_global_init() call.
- */
-curl_malloc_callback Curl_cmalloc;
-curl_free_callback Curl_cfree;
-curl_realloc_callback Curl_crealloc;
-curl_strdup_callback Curl_cstrdup;
-curl_calloc_callback Curl_ccalloc;
-#endif
-
-#if defined(_MSC_VER) && defined(_DLL) && !defined(__POCC__)
-#  pragma warning(default:4232) /* MSVC extension, dllimport identity */
-#endif
-
-/**
- * curl_global_init() globally initializes cURL given a bitwise set of the
- * different features of what to initialize.
- */
-CURLcode curl_global_init(long flags)
-{
-  if(initialized++)
-    return CURLE_OK;
-
-  /* Setup the default memory functions here (again) */
-  Curl_cmalloc = (curl_malloc_callback)malloc;
-  Curl_cfree = (curl_free_callback)free;
-  Curl_crealloc = (curl_realloc_callback)realloc;
-  Curl_cstrdup = (curl_strdup_callback)system_strdup;
-  Curl_ccalloc = (curl_calloc_callback)calloc;
-
-  if(flags & CURL_GLOBAL_SSL)
-    if(!Curl_ssl_init()) {
-      DEBUGF(fprintf(stderr, "Error: Curl_ssl_init failed\n"));
-      return CURLE_FAILED_INIT;
-    }
-
-  if(flags & CURL_GLOBAL_WIN32)
-    if(win32_init() != CURLE_OK) {
-      DEBUGF(fprintf(stderr, "Error: win32_init failed\n"));
-      return CURLE_FAILED_INIT;
-    }
-
-#ifdef __AMIGA__
-  if(!amiga_init()) {
-    DEBUGF(fprintf(stderr, "Error: amiga_init failed\n"));
-    return CURLE_FAILED_INIT;
-  }
-#endif
-
-#ifdef NETWARE
-  if(netware_init()) {
-    DEBUGF(fprintf(stderr, "Warning: LONG namespace not available\n"));
-  }
-#endif
-
-#ifdef USE_LIBIDN
-  idna_init();
-#endif
-
-#ifdef CARES_HAVE_ARES_LIBRARY_INIT
-  if(ares_library_init(ARES_LIB_INIT_ALL)) {
-    DEBUGF(fprintf(stderr, "Error: ares_library_init failed\n"));
-    return CURLE_FAILED_INIT;
-  }
-#endif
-
-  init_flags  = flags;
-
-  /* Preset pseudo-random number sequence. */
-
-  Curl_srand();
-
-  return CURLE_OK;
-}
-
-/*
- * curl_global_init_mem() globally initializes cURL and also registers the
- * user provided callback routines.
- */
-CURLcode curl_global_init_mem(long flags, curl_malloc_callback m,
-                              curl_free_callback f, curl_realloc_callback r,
-                              curl_strdup_callback s, curl_calloc_callback c)
-{
-  CURLcode code = CURLE_OK;
-
-  /* Invalid input, return immediately */
-  if(!m || !f || !r || !s || !c)
-    return CURLE_FAILED_INIT;
-
-  /* Already initialized, don't do it again */
-  if( initialized )
-    return CURLE_OK;
-
-  /* Call the actual init function first */
-  code = curl_global_init(flags);
-  if(code == CURLE_OK) {
-    Curl_cmalloc = m;
-    Curl_cfree = f;
-    Curl_cstrdup = s;
-    Curl_crealloc = r;
-    Curl_ccalloc = c;
-  }
-
-  return code;
-}
-
-/**
- * curl_global_cleanup() globally cleanups cURL, uses the value of
- * "init_flags" to determine what needs to be cleaned up and what doesn't.
- */
-void curl_global_cleanup(void)
-{
-  if(!initialized)
-    return;
-
-  if(--initialized)
-    return;
-
-  Curl_global_host_cache_dtor();
-
-  if(init_flags & CURL_GLOBAL_SSL)
-    Curl_ssl_cleanup();
-
-#ifdef CARES_HAVE_ARES_LIBRARY_CLEANUP
-  ares_library_cleanup();
-#endif
-
-  if(init_flags & CURL_GLOBAL_WIN32)
-    win32_cleanup();
-
-#ifdef __AMIGA__
-  amiga_cleanup();
-#endif
-
-  init_flags  = 0;
-}
-
-/*
- * curl_easy_init() is the external interface to alloc, setup and init an
- * easy handle that is returned. If anything goes wrong, NULL is returned.
- */
-CURL *curl_easy_init(void)
-{
-  CURLcode res;
-  struct SessionHandle *data;
-
-  /* Make sure we inited the global SSL stuff */
-  if(!initialized) {
-    res = curl_global_init(CURL_GLOBAL_DEFAULT);
-    if(res) {
-      /* something in the global init failed, return nothing */
-      DEBUGF(fprintf(stderr, "Error: curl_global_init failed\n"));
-      return NULL;
-    }
-  }
-
-  /* We use curl_open() with undefined URL so far */
-  res = Curl_open(&data);
-  if(res != CURLE_OK) {
-    DEBUGF(fprintf(stderr, "Error: Curl_open failed\n"));
-    return NULL;
-  }
-
-  return data;
-}
-
-/*
- * curl_easy_setopt() is the external interface for setting options on an
- * easy handle.
- */
-
-#undef curl_easy_setopt
-CURLcode curl_easy_setopt(CURL *curl, CURLoption tag, ...)
-{
-  va_list arg;
-  struct SessionHandle *data = curl;
-  CURLcode ret;
-
-  if(!curl)
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-
-  va_start(arg, tag);
-
-  ret = Curl_setopt(data, tag, arg);
-
-  va_end(arg);
-  return ret;
-}
-
-#ifdef CURL_MULTIEASY
-/***************************************************************************
- * This function is still only for testing purposes. It makes a great way
- * to run the full test suite on the multi interface instead of the easy one.
- ***************************************************************************
- *
- * The *new* curl_easy_perform() is the external interface that performs a
- * transfer previously setup.
- *
- * Wrapper-function that: creates a multi handle, adds the easy handle to it,
- * runs curl_multi_perform() until the transfer is done, then detaches the
- * easy handle, destroys the multi handle and returns the easy handle's return
- * code. This will make everything internally use and assume multi interface.
- */
-CURLcode curl_easy_perform(CURL *easy)
-{
-  CURLM *multi;
-  CURLMcode mcode;
-  CURLcode code = CURLE_OK;
-  int still_running;
-  struct timeval timeout;
-  int rc;
-  CURLMsg *msg;
-  fd_set fdread;
-  fd_set fdwrite;
-  fd_set fdexcep;
-  int maxfd;
-
-  if(!easy)
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-
-  multi = curl_multi_init();
-  if(!multi)
-    return CURLE_OUT_OF_MEMORY;
-
-  mcode = curl_multi_add_handle(multi, easy);
-  if(mcode) {
-    curl_multi_cleanup(multi);
-    if(mcode == CURLM_OUT_OF_MEMORY)
-      return CURLE_OUT_OF_MEMORY;
-    else
-      return CURLE_FAILED_INIT;
-  }
-
-  /* we start some action by calling perform right away */
-
-  do {
-    while(CURLM_CALL_MULTI_PERFORM ==
-          curl_multi_perform(multi, &still_running));
-
-    if(!still_running)
-      break;
-
-    FD_ZERO(&fdread);
-    FD_ZERO(&fdwrite);
-    FD_ZERO(&fdexcep);
-
-    /* timeout once per second */
-    timeout.tv_sec = 1;
-    timeout.tv_usec = 0;
-
-    /* Old deprecated style: get file descriptors from the transfers */
-    curl_multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd);
-    rc = Curl_select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
-
-    /* The way is to extract the sockets and wait for them without using
-       select. This whole alternative version should probably rather use the
-       curl_multi_socket() approach. */
-
-    if(rc == -1)
-      /* select error */
-      break;
-
-    /* timeout or data to send/receive => loop! */
-  } while(still_running);
-
-  msg = curl_multi_info_read(multi, &rc);
-  if(msg)
-    code = msg->data.result;
-
-  mcode = curl_multi_remove_handle(multi, easy);
-  /* what to do if it fails? */
-
-  mcode = curl_multi_cleanup(multi);
-  /* what to do if it fails? */
-
-  return code;
-}
-#else
-/*
- * curl_easy_perform() is the external interface that performs a transfer
- * previously setup.
- */
-CURLcode curl_easy_perform(CURL *curl)
-{
-  struct SessionHandle *data = (struct SessionHandle *)curl;
-
-  if(!data)
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-
-  if( ! (data->share && data->share->hostcache) ) {
-    /* this handle is not using a shared dns cache */
-
-    if(data->set.global_dns_cache &&
-       (data->dns.hostcachetype != HCACHE_GLOBAL)) {
-      /* global dns cache was requested but still isn't */
-      struct curl_hash *ptr;
-
-      if(data->dns.hostcachetype == HCACHE_PRIVATE) {
-        /* if the current cache is private, kill it first */
-        Curl_hash_destroy(data->dns.hostcache);
-        data->dns.hostcachetype = HCACHE_NONE;
-        data->dns.hostcache = NULL;
-      }
-
-      ptr = Curl_global_host_cache_init();
-      if(ptr) {
-        /* only do this if the global cache init works */
-        data->dns.hostcache = ptr;
-        data->dns.hostcachetype = HCACHE_GLOBAL;
-      }
-    }
-
-    if(!data->dns.hostcache) {
-      data->dns.hostcachetype = HCACHE_PRIVATE;
-      data->dns.hostcache = Curl_mk_dnscache();
-
-      if(!data->dns.hostcache)
-        /* While we possibly could survive and do good without a host cache,
-           the fact that creating it failed indicates that things are truly
-           screwed up and we should bail out! */
-        return CURLE_OUT_OF_MEMORY;
-    }
-
-  }
-
-  if(!data->state.connc) {
-    /* oops, no connection cache, make one up */
-    data->state.connc = Curl_mk_connc(CONNCACHE_PRIVATE, -1L);
-    if(!data->state.connc)
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-  return Curl_perform(data);
-}
-#endif
-
-/*
- * curl_easy_cleanup() is the external interface to cleaning/freeing the given
- * easy handle.
- */
-void curl_easy_cleanup(CURL *curl)
-{
-  struct SessionHandle *data = (struct SessionHandle *)curl;
-
-  if(!data)
-    return;
-
-  Curl_close(data);
-}
-
-/*
- * Store a pointed to the multi handle within the easy handle's data struct.
- */
-void Curl_easy_addmulti(struct SessionHandle *data,
-                        void *multi)
-{
-  data->multi = multi;
-  if(multi == NULL)
-    /* the association is cleared, mark the easy handle as not used by an
-       interface */
-    data->state.used_interface = Curl_if_none;
-}
-
-void Curl_easy_initHandleData(struct SessionHandle *data)
-{
-    memset(&data->req, 0, sizeof(struct SingleRequest));
-
-    data->req.maxdownload = -1;
-}
-
-/*
- * curl_easy_getinfo() is an external interface that allows an app to retrieve
- * information from a performed transfer and similar.
- */
-#undef curl_easy_getinfo
-CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ...)
-{
-  va_list arg;
-  void *paramp;
-  struct SessionHandle *data = (struct SessionHandle *)curl;
-
-  va_start(arg, info);
-  paramp = va_arg(arg, void *);
-
-  return Curl_getinfo(data, info, paramp);
-}
-
-/*
- * curl_easy_duphandle() is an external interface to allow duplication of a
- * given input easy handle. The returned handle will be a new working handle
- * with all options set exactly as the input source handle.
- */
-CURL *curl_easy_duphandle(CURL *incurl)
-{
-  bool fail = TRUE;
-  struct SessionHandle *data=(struct SessionHandle *)incurl;
-
-  struct SessionHandle *outcurl = calloc(1, sizeof(struct SessionHandle));
-
-  if(NULL == outcurl)
-    return NULL; /* failure */
-
-  do {
-
-    /*
-     * We setup a few buffers we need. We should probably make them
-     * get setup on-demand in the code, as that would probably decrease
-     * the likeliness of us forgetting to init a buffer here in the future.
-     */
-    outcurl->state.headerbuff = malloc(HEADERSIZE);
-    if(!outcurl->state.headerbuff) {
-      break;
-    }
-    outcurl->state.headersize=HEADERSIZE;
-
-    /* copy all userdefined values */
-    if(Curl_dupset(outcurl, data) != CURLE_OK)
-      break;
-
-    /* the connection cache is setup on demand */
-    outcurl->state.connc = NULL;
-
-    outcurl->state.lastconnect = -1;
-
-    outcurl->progress.flags    = data->progress.flags;
-    outcurl->progress.callback = data->progress.callback;
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
-    if(data->cookies) {
-      /* If cookies are enabled in the parent handle, we enable them
-         in the clone as well! */
-      outcurl->cookies = Curl_cookie_init(data,
-                                          data->cookies->filename,
-                                          outcurl->cookies,
-                                          data->set.cookiesession);
-      if(!outcurl->cookies) {
-        break;
-      }
-    }
-#endif   /* CURL_DISABLE_HTTP */
-
-    /* duplicate all values in 'change' */
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
-    if(data->change.cookielist) {
-      outcurl->change.cookielist =
-        Curl_slist_duplicate(data->change.cookielist);
-
-      if (!outcurl->change.cookielist)
-        break;
-    }
-#endif   /* CURL_DISABLE_HTTP */
-
-    if(data->change.url) {
-      outcurl->change.url = strdup(data->change.url);
-      if(!outcurl->change.url)
-        break;
-      outcurl->change.url_alloc = TRUE;
-    }
-
-    if(data->change.referer) {
-      outcurl->change.referer = strdup(data->change.referer);
-      if(!outcurl->change.referer)
-        break;
-      outcurl->change.referer_alloc = TRUE;
-    }
-
-#ifdef USE_ARES
-    /* If we use ares, we setup a new ares channel for the new handle */
-    if(ARES_SUCCESS != ares_init(&outcurl->state.areschannel))
-      break;
-#endif
-
-#if defined(CURL_DOES_CONVERSIONS) && defined(HAVE_ICONV)
-    outcurl->inbound_cd = iconv_open(CURL_ICONV_CODESET_OF_HOST,
-                                     CURL_ICONV_CODESET_OF_NETWORK);
-    outcurl->outbound_cd = iconv_open(CURL_ICONV_CODESET_OF_NETWORK,
-                                      CURL_ICONV_CODESET_OF_HOST);
-    outcurl->utf8_cd = iconv_open(CURL_ICONV_CODESET_OF_HOST,
-                                  CURL_ICONV_CODESET_FOR_UTF8);
-#endif
-
-    Curl_easy_initHandleData(outcurl);
-
-    outcurl->magic = CURLEASY_MAGIC_NUMBER;
-
-    fail = FALSE; /* we reach this point and thus we are OK */
-
-  } while(0);
-
-  if(fail) {
-    if(outcurl) {
-      if(outcurl->state.connc &&
-         (outcurl->state.connc->type == CONNCACHE_PRIVATE))
-        Curl_rm_connc(outcurl->state.connc);
-      if(outcurl->state.headerbuff)
-        free(outcurl->state.headerbuff);
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
-      if(outcurl->change.cookielist)
-        curl_slist_free_all(outcurl->change.cookielist);
-#endif
-      if(outcurl->change.url)
-        free(outcurl->change.url);
-      if(outcurl->change.referer)
-        free(outcurl->change.referer);
-      Curl_freeset(outcurl);
-      free(outcurl); /* free the memory again */
-      outcurl = NULL;
-    }
-  }
-
-  return outcurl;
-}
-
-/*
- * curl_easy_reset() is an external interface that allows an app to re-
- * initialize a session handle to the default values.
- */
-void curl_easy_reset(CURL *curl)
-{
-  struct SessionHandle *data = (struct SessionHandle *)curl;
-
-  Curl_safefree(data->state.pathbuffer);
-  data->state.pathbuffer=NULL;
-
-  Curl_safefree(data->state.proto.generic);
-  data->state.proto.generic=NULL;
-
-  /* zero out UserDefined data: */
-  Curl_freeset(data);
-  memset(&data->set, 0, sizeof(struct UserDefined));
-  (void)Curl_init_userdefined(&data->set);
-
-  /* zero out Progress data: */
-  memset(&data->progress, 0, sizeof(struct Progress));
-
-  /* init Handle data */
-  Curl_easy_initHandleData(data);
-
-  data->progress.flags |= PGRS_HIDE;
-  data->state.current_speed = -1; /* init to negative == impossible */
-}
-
-/*
- * curl_easy_pause() allows an application to pause or unpause a specific
- * transfer and direction. This function sets the full new state for the
- * current connection this easy handle operates on.
- *
- * NOTE: if you have the receiving paused and you call this function to remove
- * the pausing, you may get your write callback called at this point.
- *
- * Action is a bitmask consisting of CURLPAUSE_* bits in curl/curl.h
- */
-CURLcode curl_easy_pause(CURL *curl, int action)
-{
-  struct SessionHandle *data = (struct SessionHandle *)curl;
-  struct SingleRequest *k = &data->req;
-  CURLcode result = CURLE_OK;
-
-  /* first switch off both pause bits */
-  int newstate = k->keepon &~ (KEEP_RECV_PAUSE| KEEP_SEND_PAUSE);
-
-  /* set the new desired pause bits */
-  newstate |= ((action & CURLPAUSE_RECV)?KEEP_RECV_PAUSE:0) |
-    ((action & CURLPAUSE_SEND)?KEEP_SEND_PAUSE:0);
-
-  /* put it back in the keepon */
-  k->keepon = newstate;
-
-  if(!(newstate & KEEP_RECV_PAUSE) && data->state.tempwrite) {
-    /* we have a buffer for sending that we now seem to be able to deliver since
-       the receive pausing is lifted! */
-
-    /* get the pointer, type and length in local copies since the function may
-       return PAUSE again and then we'll get a new copy allocted and stored in
-       the tempwrite variables */
-    char *tempwrite = data->state.tempwrite;
-    char *freewrite = tempwrite; /* store this pointer to free it later */
-    size_t tempsize = data->state.tempwritesize;
-    int temptype = data->state.tempwritetype;
-    size_t chunklen;
-
-    /* clear tempwrite here just to make sure it gets cleared if there's no
-       further use of it, and make sure we don't clear it after the function
-       invoke as it may have been set to a new value by then */
-    data->state.tempwrite = NULL;
-
-    /* since the write callback API is define to never exceed
-       CURL_MAX_WRITE_SIZE bytes in a single call, and since we may in fact
-       have more data than that in our buffer here, we must loop sending the
-       data in multiple calls until there's no data left or we get another
-       pause returned.
-
-       A tricky part is that the function we call will "buffer" the data
-       itself when it pauses on a particular buffer, so we may need to do some
-       extra trickery if we get a pause return here.
-    */
-    do {
-      chunklen = (tempsize > CURL_MAX_WRITE_SIZE)?CURL_MAX_WRITE_SIZE:tempsize;
-
-      result = Curl_client_write(data->state.current_conn,
-                                 temptype, tempwrite, chunklen);
-      if(result)
-        /* failures abort the loop at once */
-        break;
-
-      if(data->state.tempwrite && (tempsize - chunklen)) {
-        /* Ouch, the reading is again paused and the block we send is now
-           "cached". If this is the final chunk we can leave it like this, but
-           if we have more chunks that are cached after this, we need to free
-           the newly cached one and put back a version that is truly the entire
-           contents that is saved for later
-        */
-        char *newptr;
-
-        /* note that tempsize is still the size as before the callback was
-           used, and thus the whole piece of data to keep */
-        newptr = realloc(data->state.tempwrite, tempsize);
-
-        if(!newptr) {
-          free(data->state.tempwrite); /* free old area */
-          data->state.tempwrite = NULL;
-          result = CURLE_OUT_OF_MEMORY;
-          /* tempwrite will be freed further down */
-          break;
-        }
-        data->state.tempwrite = newptr; /* store new pointer */
-        memcpy(newptr, tempwrite, tempsize);
-        data->state.tempwritesize = tempsize; /* store new size */
-        /* tempwrite will be freed further down */
-        break; /* go back to pausing until further notice */
-      }
-      else {
-        tempsize -= chunklen;  /* left after the call above */
-        tempwrite += chunklen; /* advance the pointer */
-      }
-
-    } while((result == CURLE_OK) && tempsize);
-
-    free(freewrite); /* this is unconditionally no longer used */
-  }
-
-  return result;
-}
-
-#ifdef CURL_DOES_CONVERSIONS
-/*
- * Curl_convert_to_network() is an internal function
- * for performing ASCII conversions on non-ASCII platforms.
- */
-CURLcode Curl_convert_to_network(struct SessionHandle *data,
-                                 char *buffer, size_t length)
-{
-  CURLcode rc;
-
-  if(data->set.convtonetwork) {
-    /* use translation callback */
-    rc = data->set.convtonetwork(buffer, length);
-    if(rc != CURLE_OK) {
-      failf(data,
-            "CURLOPT_CONV_TO_NETWORK_FUNCTION callback returned %d: %s",
-            (int)rc, curl_easy_strerror(rc));
-    }
-    return(rc);
-  }
-  else {
-#ifdef HAVE_ICONV
-    /* do the translation ourselves */
-    char *input_ptr, *output_ptr;
-    size_t in_bytes, out_bytes, rc;
-    int error;
-
-    /* open an iconv conversion descriptor if necessary */
-    if(data->outbound_cd == (iconv_t)-1) {
-      data->outbound_cd = iconv_open(CURL_ICONV_CODESET_OF_NETWORK,
-                                     CURL_ICONV_CODESET_OF_HOST);
-      if(data->outbound_cd == (iconv_t)-1) {
-        error = ERRNO;
-        failf(data,
-              "The iconv_open(\"%s\", \"%s\") call failed with errno %i: %s",
-               CURL_ICONV_CODESET_OF_NETWORK,
-               CURL_ICONV_CODESET_OF_HOST,
-               error, strerror(error));
-        return CURLE_CONV_FAILED;
-      }
-    }
-    /* call iconv */
-    input_ptr = output_ptr = buffer;
-    in_bytes = out_bytes = length;
-    rc = iconv(data->outbound_cd, (const char**)&input_ptr, &in_bytes,
-               &output_ptr, &out_bytes);
-    if((rc == ICONV_ERROR) || (in_bytes != 0)) {
-      error = ERRNO;
-      failf(data,
-        "The Curl_convert_to_network iconv call failed with errno %i: %s",
-             error, strerror(error));
-      return CURLE_CONV_FAILED;
-    }
-#else
-    failf(data, "CURLOPT_CONV_TO_NETWORK_FUNCTION callback required");
-    return CURLE_CONV_REQD;
-#endif /* HAVE_ICONV */
-  }
-
-  return CURLE_OK;
-}
-
-/*
- * Curl_convert_from_network() is an internal function
- * for performing ASCII conversions on non-ASCII platforms.
- */
-CURLcode Curl_convert_from_network(struct SessionHandle *data,
-                                      char *buffer, size_t length)
-{
-  CURLcode rc;
-
-  if(data->set.convfromnetwork) {
-    /* use translation callback */
-    rc = data->set.convfromnetwork(buffer, length);
-    if(rc != CURLE_OK) {
-      failf(data,
-            "CURLOPT_CONV_FROM_NETWORK_FUNCTION callback returned %d: %s",
-            (int)rc, curl_easy_strerror(rc));
-    }
-    return(rc);
-  }
-  else {
-#ifdef HAVE_ICONV
-    /* do the translation ourselves */
-    char *input_ptr, *output_ptr;
-    size_t in_bytes, out_bytes, rc;
-    int error;
-
-    /* open an iconv conversion descriptor if necessary */
-    if(data->inbound_cd == (iconv_t)-1) {
-      data->inbound_cd = iconv_open(CURL_ICONV_CODESET_OF_HOST,
-                                    CURL_ICONV_CODESET_OF_NETWORK);
-      if(data->inbound_cd == (iconv_t)-1) {
-        error = ERRNO;
-        failf(data,
-              "The iconv_open(\"%s\", \"%s\") call failed with errno %i: %s",
-              CURL_ICONV_CODESET_OF_HOST,
-              CURL_ICONV_CODESET_OF_NETWORK,
-              error, strerror(error));
-        return CURLE_CONV_FAILED;
-      }
-    }
-    /* call iconv */
-    input_ptr = output_ptr = buffer;
-    in_bytes = out_bytes = length;
-    rc = iconv(data->inbound_cd, (const char **)&input_ptr, &in_bytes,
-               &output_ptr, &out_bytes);
-    if((rc == ICONV_ERROR) || (in_bytes != 0)) {
-      error = ERRNO;
-      failf(data,
-            "The Curl_convert_from_network iconv call failed with errno %i: %s",
-            error, strerror(error));
-      return CURLE_CONV_FAILED;
-    }
-#else
-    failf(data, "CURLOPT_CONV_FROM_NETWORK_FUNCTION callback required");
-    return CURLE_CONV_REQD;
-#endif /* HAVE_ICONV */
-  }
-
-  return CURLE_OK;
-}
-
-/*
- * Curl_convert_from_utf8() is an internal function
- * for performing UTF-8 conversions on non-ASCII platforms.
- */
-CURLcode Curl_convert_from_utf8(struct SessionHandle *data,
-                                     char *buffer, size_t length)
-{
-  CURLcode rc;
-
-  if(data->set.convfromutf8) {
-    /* use translation callback */
-    rc = data->set.convfromutf8(buffer, length);
-    if(rc != CURLE_OK) {
-      failf(data,
-            "CURLOPT_CONV_FROM_UTF8_FUNCTION callback returned %d: %s",
-            (int)rc, curl_easy_strerror(rc));
-    }
-    return(rc);
-  }
-  else {
-#ifdef HAVE_ICONV
-    /* do the translation ourselves */
-    const char *input_ptr;
-    char *output_ptr;
-    size_t in_bytes, out_bytes, rc;
-    int error;
-
-    /* open an iconv conversion descriptor if necessary */
-    if(data->utf8_cd == (iconv_t)-1) {
-      data->utf8_cd = iconv_open(CURL_ICONV_CODESET_OF_HOST,
-                                 CURL_ICONV_CODESET_FOR_UTF8);
-      if(data->utf8_cd == (iconv_t)-1) {
-        error = ERRNO;
-        failf(data,
-              "The iconv_open(\"%s\", \"%s\") call failed with errno %i: %s",
-              CURL_ICONV_CODESET_OF_HOST,
-              CURL_ICONV_CODESET_FOR_UTF8,
-              error, strerror(error));
-        return CURLE_CONV_FAILED;
-      }
-    }
-    /* call iconv */
-    input_ptr = output_ptr = buffer;
-    in_bytes = out_bytes = length;
-    rc = iconv(data->utf8_cd, &input_ptr, &in_bytes,
-               &output_ptr, &out_bytes);
-    if((rc == ICONV_ERROR) || (in_bytes != 0)) {
-      error = ERRNO;
-      failf(data,
-            "The Curl_convert_from_utf8 iconv call failed with errno %i: %s",
-            error, strerror(error));
-      return CURLE_CONV_FAILED;
-    }
-    if(output_ptr < input_ptr) {
-      /* null terminate the now shorter output string */
-      *output_ptr = 0x00;
-    }
-#else
-    failf(data, "CURLOPT_CONV_FROM_UTF8_FUNCTION callback required");
-    return CURLE_CONV_REQD;
-#endif /* HAVE_ICONV */
-  }
-
-  return CURLE_OK;
-}
-
-#endif /* CURL_DOES_CONVERSIONS */
-
-static CURLcode easy_connection(struct SessionHandle *data,
-                                curl_socket_t *sfd,
-                                struct connectdata **connp)
-{
-  CURLcode ret;
-  long sockfd;
-
-  if(data == NULL)
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-
-  /* only allow these to be called on handles with CURLOPT_CONNECT_ONLY */
-  if(!data->set.connect_only) {
-    failf(data, "CONNECT_ONLY is required!");
-    return CURLE_UNSUPPORTED_PROTOCOL;
-  }
-
-  ret = Curl_getconnectinfo(data, &sockfd, connp);
-  if(ret != CURLE_OK)
-    return ret;
-
-  if(sockfd == -1) {
-    failf(data, "Failed to get recent socket");
-    return CURLE_UNSUPPORTED_PROTOCOL;
-  }
-
-  *sfd = (curl_socket_t)sockfd; /* we know that this is actually a socket
-                                   descriptor so the typecast is fine here */
-
-  return CURLE_OK;
-}
-
-/*
- * Receives data from the connected socket. Use after successful
- * curl_easy_perform() with CURLOPT_CONNECT_ONLY option.
- * Returns CURLE_OK on success, error code on error.
- */
-CURLcode curl_easy_recv(CURL *curl, void *buffer, size_t buflen, size_t *n)
-{
-  curl_socket_t sfd;
-  CURLcode ret;
-  int ret1;
-  ssize_t n1;
-  struct connectdata *c;
-  struct SessionHandle *data = (struct SessionHandle *)curl;
-
-  ret = easy_connection(data, &sfd, &c);
-  if(ret)
-    return ret;
-
-  *n = 0;
-  ret1 = Curl_read(c, sfd, buffer, buflen, &n1);
-
-  if(ret1 == -1)
-    return CURLE_AGAIN;
-
-  if(ret1 != CURLE_OK)
-    return (CURLcode)ret1;
-
-  *n = (size_t)n1;
-
-  return CURLE_OK;
-}
-
-/*
- * Sends data over the connected socket. Use after successful
- * curl_easy_perform() with CURLOPT_CONNECT_ONLY option.
- */
-CURLcode curl_easy_send(CURL *curl, const void *buffer, size_t buflen,
-                        size_t *n)
-{
-  curl_socket_t sfd;
-  CURLcode ret;
-  ssize_t n1;
-  struct connectdata *c = NULL;
-  struct SessionHandle *data = (struct SessionHandle *)curl;
-
-  ret = easy_connection(data, &sfd, &c);
-  if(ret)
-    return ret;
-
-  *n = 0;
-  ret = Curl_write(c, sfd, buffer, buflen, &n1);
-
-  if(n1 == -1)
-    return CURLE_SEND_ERROR;
-
-  /* detect EAGAIN */
-  if((CURLE_OK == ret) && (0 == n1))
-    return CURLE_AGAIN;
-
-  *n = (size_t)n1;
-
-  return ret;
-}
diff --git a/src/other/curl/lib/easyif.h b/src/other/curl/lib/easyif.h
deleted file mode 100644
index 8a0a51c..0000000
--- a/src/other/curl/lib/easyif.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#ifndef __EASYIF_H
-#define __EASYIF_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2006, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * Prototypes for library-wide functions provided by easy.c
- */
-void Curl_easy_addmulti(struct SessionHandle *data, void *multi);
-
-void Curl_easy_initHandleData(struct SessionHandle *data);
-
-CURLcode Curl_convert_to_network(struct SessionHandle *data,
-                                 char *buffer, size_t length);
-CURLcode Curl_convert_from_network(struct SessionHandle *data,
-                                 char *buffer, size_t length);
-CURLcode Curl_convert_from_utf8(struct SessionHandle *data,
-                                 char *buffer, size_t length);
-
-#endif /* __EASYIF_H */
diff --git a/src/other/curl/lib/escape.c b/src/other/curl/lib/escape.c
deleted file mode 100644
index 37d21e7..0000000
--- a/src/other/curl/lib/escape.c
+++ /dev/null
@@ -1,210 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* Escape and unescape URL encoding in strings. The functions return a new
- * allocated string or NULL if an error occurred.  */
-
-#include "setup.h"
-#include <ctype.h>
-#include <curl/curl.h>
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "curl_memory.h"
-/* urldata.h and easyif.h are included for Curl_convert_... prototypes */
-#include "urldata.h"
-#include "easyif.h"
-#include "warnless.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/* Portable character check (remember EBCDIC). Do not use isalnum() because
-its behavior is altered by the current locale. */
-static bool Curl_isalnum(unsigned char in)
-{
-  switch (in) {
-    case '0': case '1': case '2': case '3': case '4':
-    case '5': case '6': case '7': case '8': case '9':
-    case 'a': case 'b': case 'c': case 'd': case 'e':
-    case 'f': case 'g': case 'h': case 'i': case 'j':
-    case 'k': case 'l': case 'm': case 'n': case 'o':
-    case 'p': case 'q': case 'r': case 's': case 't':
-    case 'u': case 'v': case 'w': case 'x': case 'y': case 'z':
-    case 'A': case 'B': case 'C': case 'D': case 'E':
-    case 'F': case 'G': case 'H': case 'I': case 'J':
-    case 'K': case 'L': case 'M': case 'N': case 'O':
-    case 'P': case 'Q': case 'R': case 'S': case 'T':
-    case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z':
-      return TRUE;
-    default:
-      break;
-  }
-  return FALSE;
-}
-
-/* for ABI-compatibility with previous versions */
-char *curl_escape(const char *string, int inlength)
-{
-  return curl_easy_escape(NULL, string, inlength);
-}
-
-/* for ABI-compatibility with previous versions */
-char *curl_unescape(const char *string, int length)
-{
-  return curl_easy_unescape(NULL, string, length, NULL);
-}
-
-char *curl_easy_escape(CURL *handle, const char *string, int inlength)
-{
-  size_t alloc = (inlength?(size_t)inlength:strlen(string))+1;
-  char *ns;
-  char *testing_ptr = NULL;
-  unsigned char in; /* we need to treat the characters unsigned */
-  size_t newlen = alloc;
-  int strindex=0;
-  size_t length;
-
-#ifndef CURL_DOES_CONVERSIONS
-  /* avoid compiler warnings */
-  (void)handle;
-#endif
-  ns = malloc(alloc);
-  if(!ns)
-    return NULL;
-
-  length = alloc-1;
-  while(length--) {
-    in = *string;
-
-    if (Curl_isalnum(in)) {
-      /* just copy this */
-      ns[strindex++]=in;
-    }
-    else {
-      /* encode it */
-      newlen += 2; /* the size grows with two, since this'll become a %XX */
-      if(newlen > alloc) {
-        alloc *= 2;
-        testing_ptr = realloc(ns, alloc);
-        if(!testing_ptr) {
-          free( ns );
-          return NULL;
-        }
-        else {
-          ns = testing_ptr;
-        }
-      }
-
-#ifdef CURL_DOES_CONVERSIONS
-/* escape sequences are always in ASCII so convert them on non-ASCII hosts */
-      if(!handle ||
-          (Curl_convert_to_network(handle, &in, 1) != CURLE_OK)) {
-        /* Curl_convert_to_network calls failf if unsuccessful */
-        free(ns);
-        return NULL;
-      }
-#endif /* CURL_DOES_CONVERSIONS */
-
-      snprintf(&ns[strindex], 4, "%%%02X", in);
-
-      strindex+=3;
-    }
-    string++;
-  }
-  ns[strindex]=0; /* terminate it */
-  return ns;
-}
-
-/*
- * Unescapes the given URL escaped string of given length. Returns a
- * pointer to a malloced string with length given in *olen.
- * If length == 0, the length is assumed to be strlen(string).
- * If olen == NULL, no output length is stored.
- */
-char *curl_easy_unescape(CURL *handle, const char *string, int length,
-                         int *olen)
-{
-  int alloc = (length?length:(int)strlen(string))+1;
-  char *ns = malloc(alloc);
-  unsigned char in;
-  int strindex=0;
-  unsigned long hex;
-
-#ifndef CURL_DOES_CONVERSIONS
-  /* avoid compiler warnings */
-  (void)handle;
-#endif
-  if( !ns )
-    return NULL;
-
-  while(--alloc > 0) {
-    in = *string;
-    if(('%' == in) && ISXDIGIT(string[1]) && ISXDIGIT(string[2])) {
-      /* this is two hexadecimal digits following a '%' */
-      char hexstr[3];
-      char *ptr;
-      hexstr[0] = string[1];
-      hexstr[1] = string[2];
-      hexstr[2] = 0;
-
-      hex = strtoul(hexstr, &ptr, 16);
-
-      in = curlx_ultouc(hex); /* this long is never bigger than 255 anyway */
-
-#ifdef CURL_DOES_CONVERSIONS
-/* escape sequences are always in ASCII so convert them on non-ASCII hosts */
-      if(!handle ||
-          (Curl_convert_from_network(handle, &in, 1) != CURLE_OK)) {
-        /* Curl_convert_from_network calls failf if unsuccessful */
-        free(ns);
-        return NULL;
-      }
-#endif /* CURL_DOES_CONVERSIONS */
-
-      string+=2;
-      alloc-=2;
-    }
-
-    ns[strindex++] = in;
-    string++;
-  }
-  ns[strindex]=0; /* terminate it */
-
-  if(olen)
-    /* store output size */
-    *olen = strindex;
-  return ns;
-}
-
-/* For operating systems/environments that use different malloc/free
-   systems for the app and for this library, we provide a free that uses
-   the library's memory system */
-void curl_free(void *p)
-{
-  if(p)
-    free(p);
-}
diff --git a/src/other/curl/lib/escape.h b/src/other/curl/lib/escape.h
deleted file mode 100644
index 04b06a9..0000000
--- a/src/other/curl/lib/escape.h
+++ /dev/null
@@ -1,29 +0,0 @@
-#ifndef __ESCAPE_H
-#define __ESCAPE_H
-
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2006, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-/* Escape and unescape URL encoding in strings. The functions return a new
- * allocated string or NULL if an error occurred.  */
-
-
-#endif
diff --git a/src/other/curl/lib/file.c b/src/other/curl/lib/file.c
deleted file mode 100644
index 6c14ee8..0000000
--- a/src/other/curl/lib/file.c
+++ /dev/null
@@ -1,585 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_FILE
-/* -- WIN32 approved -- */
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-
-#ifdef WIN32
-#include <time.h>
-#include <io.h>
-#include <fcntl.h>
-#else
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_NET_IF_H
-#include <net/if.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
-#endif
-
-#ifdef HAVE_SYS_PARAM_H
-#include <sys/param.h>
-#endif
-
-#ifdef HAVE_FCNTL_H
-#include <fcntl.h>
-#endif
-
-#endif /* WIN32 */
-
-#include "strtoofft.h"
-#include "urldata.h"
-#include <curl/curl.h>
-#include "progress.h"
-#include "sendf.h"
-#include "escape.h"
-#include "file.h"
-#include "speedcheck.h"
-#include "getinfo.h"
-#include "transfer.h"
-#include "url.h"
-#include "curl_memory.h"
-#include "parsedate.h" /* for the week day and month names */
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#if defined(WIN32) || defined(MSDOS) || defined(__EMX__) || defined(__SYMBIAN32__)
-#define DOS_FILESYSTEM 1
-#endif
-
-#ifdef OPEN_NEEDS_ARG3
-#  define open_readonly(p,f) open((p),(f),(0))
-#else
-#  define open_readonly(p,f) open((p),(f))
-#endif
-
-/*
- * Forward declarations.
- */
-
-static CURLcode file_do(struct connectdata *, bool *done);
-static CURLcode file_done(struct connectdata *conn,
-                          CURLcode status, bool premature);
-static CURLcode file_connect(struct connectdata *conn, bool *done);
-
-/*
- * FILE scheme handler.
- */
-
-const struct Curl_handler Curl_handler_file = {
-  "FILE",                               /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  file_do,                              /* do_it */
-  file_done,                            /* done */
-  ZERO_NULL,                            /* do_more */
-  file_connect,                         /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  0,                                    /* defport */
-  PROT_FILE                             /* protocol */
-};
-
-
- /*
-  Check if this is a range download, and if so, set the internal variables
-  properly. This code is copied from the FTP implementation and might as
-  well be factored out.
- */
-static CURLcode file_range(struct connectdata *conn)
-{
-  curl_off_t from, to;
-  curl_off_t totalsize=-1;
-  char *ptr;
-  char *ptr2;
-  struct SessionHandle *data = conn->data;
-
-  if(data->state.use_range && data->state.range) {
-    from=curlx_strtoofft(data->state.range, &ptr, 0);
-    while(ptr && *ptr && (isspace((int)*ptr) || (*ptr=='-')))
-      ptr++;
-    to=curlx_strtoofft(ptr, &ptr2, 0);
-    if(ptr == ptr2) {
-      /* we didn't get any digit */
-      to=-1;
-    }
-    if((-1 == to) && (from>=0)) {
-      /* X - */
-      data->state.resume_from = from;
-      DEBUGF(infof(data, "RANGE %" FORMAT_OFF_T " to end of file\n",
-                   from));
-    }
-    else if(from < 0) {
-      /* -Y */
-      totalsize = -from;
-      data->req.maxdownload = -from;
-      data->state.resume_from = from;
-      DEBUGF(infof(data, "RANGE the last %" FORMAT_OFF_T " bytes\n",
-                   totalsize));
-    }
-    else {
-      /* X-Y */
-      totalsize = to-from;
-      data->req.maxdownload = totalsize+1; /* include last byte */
-      data->state.resume_from = from;
-      DEBUGF(infof(data, "RANGE from %" FORMAT_OFF_T
-                   " getting %" FORMAT_OFF_T " bytes\n",
-                   from, data->req.maxdownload));
-    }
-    DEBUGF(infof(data, "range-download from %" FORMAT_OFF_T
-                 " to %" FORMAT_OFF_T ", totally %" FORMAT_OFF_T " bytes\n",
-                 from, to, data->req.maxdownload));
-  }
-  else
-    data->req.maxdownload = -1;
-  return CURLE_OK;
-}
-
-/*
- * file_connect() gets called from Curl_protocol_connect() to allow us to
- * do protocol-specific actions at connect-time.  We emulate a
- * connect-then-transfer protocol and "connect" to the file here
- */
-static CURLcode file_connect(struct connectdata *conn, bool *done)
-{
-  struct SessionHandle *data = conn->data;
-  char *real_path = curl_easy_unescape(data, data->state.path, 0, NULL);
-  struct FILEPROTO *file;
-  int fd;
-#ifdef DOS_FILESYSTEM
-  int i;
-  char *actual_path;
-#endif
-
-  if(!real_path)
-    return CURLE_OUT_OF_MEMORY;
-
-  /* If there already is a protocol-specific struct allocated for this
-     sessionhandle, deal with it */
-  Curl_reset_reqproto(conn);
-
-  if(!data->state.proto.file) {
-    file = calloc(1, sizeof(struct FILEPROTO));
-    if(!file) {
-      free(real_path);
-      return CURLE_OUT_OF_MEMORY;
-    }
-    data->state.proto.file = file;
-  }
-  else {
-    /* file is not a protocol that can deal with "persistancy" */
-    file = data->state.proto.file;
-    Curl_safefree(file->freepath);
-    if(file->fd != -1)
-      close(file->fd);
-    file->path = NULL;
-    file->freepath = NULL;
-    file->fd = -1;
-  }
-
-#ifdef DOS_FILESYSTEM
-  /* If the first character is a slash, and there's
-     something that looks like a drive at the beginning of
-     the path, skip the slash.  If we remove the initial
-     slash in all cases, paths without drive letters end up
-     relative to the current directory which isn't how
-     browsers work.
-
-     Some browsers accept | instead of : as the drive letter
-     separator, so we do too.
-
-     On other platforms, we need the slash to indicate an
-     absolute pathname.  On Windows, absolute paths start
-     with a drive letter.
-  */
-  actual_path = real_path;
-  if((actual_path[0] == '/') &&
-      actual_path[1] &&
-      (actual_path[2] == ':' || actual_path[2] == '|'))
-  {
-    actual_path[2] = ':';
-    actual_path++;
-  }
-
-  /* change path separators from '/' to '\\' for DOS, Windows and OS/2 */
-  for (i=0; actual_path[i] != '\0'; ++i)
-    if(actual_path[i] == '/')
-      actual_path[i] = '\\';
-
-  fd = open_readonly(actual_path, O_RDONLY|O_BINARY); /* no CR/LF translation */
-  file->path = actual_path;
-#else
-  fd = open_readonly(real_path, O_RDONLY);
-  file->path = real_path;
-#endif
-  file->freepath = real_path; /* free this when done */
-
-  file->fd = fd;
-  if(!data->set.upload && (fd == -1)) {
-    failf(data, "Couldn't open file %s", data->state.path);
-    file_done(conn, CURLE_FILE_COULDNT_READ_FILE, FALSE);
-    return CURLE_FILE_COULDNT_READ_FILE;
-  }
-  *done = TRUE;
-
-  return CURLE_OK;
-}
-
-static CURLcode file_done(struct connectdata *conn,
-                               CURLcode status, bool premature)
-{
-  struct FILEPROTO *file = conn->data->state.proto.file;
-  (void)status; /* not used */
-  (void)premature; /* not used */
-  Curl_safefree(file->freepath);
-
-  if(file->fd != -1)
-    close(file->fd);
-
-  return CURLE_OK;
-}
-
-#ifdef DOS_FILESYSTEM
-#define DIRSEP '\\'
-#else
-#define DIRSEP '/'
-#endif
-
-static CURLcode file_upload(struct connectdata *conn)
-{
-  struct FILEPROTO *file = conn->data->state.proto.file;
-  const char *dir = strchr(file->path, DIRSEP);
-  FILE *fp;
-  CURLcode res=CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  char *buf = data->state.buffer;
-  size_t nread;
-  size_t nwrite;
-  curl_off_t bytecount = 0;
-  struct timeval now = Curl_tvnow();
-  struct_stat file_stat;
-  const char* buf2;
-
-  /*
-   * Since FILE: doesn't do the full init, we need to provide some extra
-   * assignments here.
-   */
-  conn->fread_func = data->set.fread_func;
-  conn->fread_in = data->set.in;
-  conn->data->req.upload_fromhere = buf;
-
-  if(!dir)
-    return CURLE_FILE_COULDNT_READ_FILE; /* fix: better error code */
-
-  if(!dir[1])
-     return CURLE_FILE_COULDNT_READ_FILE; /* fix: better error code */
-
-  if(data->state.resume_from)
-    fp = fopen( file->path, "ab" );
-  else {
-    int fd;
-
-#ifdef DOS_FILESYSTEM
-    fd = open(file->path, O_WRONLY|O_CREAT|O_TRUNC|O_BINARY,
-              conn->data->set.new_file_perms);
-#else
-    fd = open(file->path, O_WRONLY|O_CREAT|O_TRUNC,
-              conn->data->set.new_file_perms);
-#endif
-    if(fd < 0) {
-      failf(data, "Can't open %s for writing", file->path);
-      return CURLE_WRITE_ERROR;
-    }
-    close(fd);
-    fp = fopen(file->path, "wb");
-  }
-
-  if(!fp) {
-    failf(data, "Can't open %s for writing", file->path);
-    return CURLE_WRITE_ERROR;
-  }
-
-  if(-1 != data->set.infilesize)
-    /* known size of data to "upload" */
-    Curl_pgrsSetUploadSize(data, data->set.infilesize);
-
-  /* treat the negative resume offset value as the case of "-" */
-  if(data->state.resume_from < 0) {
-    if(fstat(fileno(fp), &file_stat)) {
-      fclose(fp);
-      failf(data, "Can't get the size of %s", file->path);
-      return CURLE_WRITE_ERROR;
-    }
-    else
-      data->state.resume_from = (curl_off_t)file_stat.st_size;
-  }
-
-  while(res == CURLE_OK) {
-    int readcount;
-    res = Curl_fillreadbuffer(conn, BUFSIZE, &readcount);
-    if(res)
-      break;
-
-    if(readcount <= 0)  /* fix questionable compare error. curlvms */
-      break;
-
-    nread = (size_t)readcount;
-
-    /*skip bytes before resume point*/
-    if(data->state.resume_from) {
-      if( (curl_off_t)nread <= data->state.resume_from ) {
-        data->state.resume_from -= nread;
-        nread = 0;
-        buf2 = buf;
-      }
-      else {
-        buf2 = buf + data->state.resume_from;
-        nread -= (size_t)data->state.resume_from;
-        data->state.resume_from = 0;
-      }
-    }
-    else
-      buf2 = buf;
-
-    /* write the data to the target */
-    nwrite = fwrite(buf2, 1, nread, fp);
-    if(nwrite != nread) {
-      res = CURLE_SEND_ERROR;
-      break;
-    }
-
-    bytecount += nread;
-
-    Curl_pgrsSetUploadCounter(data, bytecount);
-
-    if(Curl_pgrsUpdate(conn))
-      res = CURLE_ABORTED_BY_CALLBACK;
-    else
-      res = Curl_speedcheck(data, now);
-  }
-  if(!res && Curl_pgrsUpdate(conn))
-    res = CURLE_ABORTED_BY_CALLBACK;
-
-  fclose(fp);
-
-  return res;
-}
-
-/*
- * file_do() is the protocol-specific function for the do-phase, separated
- * from the connect-phase above. Other protocols merely setup the transfer in
- * the do-phase, to have it done in the main transfer loop but since some
- * platforms we support don't allow select()ing etc on file handles (as
- * opposed to sockets) we instead perform the whole do-operation in this
- * function.
- */
-static CURLcode file_do(struct connectdata *conn, bool *done)
-{
-  /* This implementation ignores the host name in conformance with
-     RFC 1738. Only local files (reachable via the standard file system)
-     are supported. This means that files on remotely mounted directories
-     (via NFS, Samba, NT sharing) can be accessed through a file:// URL
-  */
-  CURLcode res = CURLE_OK;
-  struct_stat statbuf; /* struct_stat instead of struct stat just to allow the
-                          Windows version to have a different struct without
-                          having to redefine the simple word 'stat' */
-  curl_off_t expected_size=0;
-  bool fstated=FALSE;
-  ssize_t nread;
-  size_t bytestoread;
-  struct SessionHandle *data = conn->data;
-  char *buf = data->state.buffer;
-  curl_off_t bytecount = 0;
-  int fd;
-  struct timeval now = Curl_tvnow();
-
-  *done = TRUE; /* unconditionally */
-
-  Curl_initinfo(data);
-  Curl_pgrsStartNow(data);
-
-  if(data->set.upload)
-    return file_upload(conn);
-
-  /* get the fd from the connection phase */
-  fd = conn->data->state.proto.file->fd;
-
-  /* VMS: This only works reliable for STREAMLF files */
-  if( -1 != fstat(fd, &statbuf)) {
-    /* we could stat it, then read out the size */
-    expected_size = statbuf.st_size;
-    /* and store the modification time */
-    data->info.filetime = (long)statbuf.st_mtime;
-    fstated = TRUE;
-  }
-
-  /* If we have selected NOBODY and HEADER, it means that we only want file
-     information. Which for FILE can't be much more than the file size and
-     date. */
-  if(data->set.opt_no_body && data->set.include_header && fstated) {
-    CURLcode result;
-    snprintf(buf, sizeof(data->state.buffer),
-             "Content-Length: %" FORMAT_OFF_T "\r\n", expected_size);
-    result = Curl_client_write(conn, CLIENTWRITE_BOTH, buf, 0);
-    if(result)
-      return result;
-
-    result = Curl_client_write(conn, CLIENTWRITE_BOTH,
-                               (char *)"Accept-ranges: bytes\r\n", 0);
-    if(result)
-      return result;
-
-    if(fstated) {
-      const struct tm *tm;
-      time_t filetime = (time_t)statbuf.st_mtime;
-#ifdef HAVE_GMTIME_R
-      struct tm buffer;
-      tm = (const struct tm *)gmtime_r(&filetime, &buffer);
-#else
-      tm = gmtime(&filetime);
-#endif
-      /* format: "Tue, 15 Nov 1994 12:45:26 GMT" */
-      snprintf(buf, BUFSIZE-1,
-               "Last-Modified: %s, %02d %s %4d %02d:%02d:%02d GMT\r\n",
-               Curl_wkday[tm->tm_wday?tm->tm_wday-1:6],
-               tm->tm_mday,
-               Curl_month[tm->tm_mon],
-               tm->tm_year + 1900,
-               tm->tm_hour,
-               tm->tm_min,
-               tm->tm_sec);
-      result = Curl_client_write(conn, CLIENTWRITE_BOTH, buf, 0);
-    }
-    /* if we fstat()ed the file, set the file size to make it available post-
-       transfer */
-    if(fstated)
-      Curl_pgrsSetDownloadSize(data, expected_size);
-    return result;
-  }
-
-  /* Check whether file range has been specified */
-  file_range(conn);
-
-  /* Adjust the start offset in case we want to get the N last bytes
-   * of the stream iff the filesize could be determined */
-  if(data->state.resume_from < 0) {
-    if(!fstated) {
-      failf(data, "Can't get the size of file.");
-      return CURLE_READ_ERROR;
-    }
-    else
-      data->state.resume_from += (curl_off_t)statbuf.st_size;
-  }
-
-  if(data->state.resume_from <= expected_size)
-    expected_size -= data->state.resume_from;
-  else {
-    failf(data, "failed to resume file:// transfer");
-    return CURLE_BAD_DOWNLOAD_RESUME;
-  }
-
-  /* A high water mark has been specified so we obey... */
-  if (data->req.maxdownload > 0)
-    expected_size = data->req.maxdownload;
-
-  if(fstated && (expected_size == 0))
-    return CURLE_OK;
-
-  /* The following is a shortcut implementation of file reading
-     this is both more efficient than the former call to download() and
-     it avoids problems with select() and recv() on file descriptors
-     in Winsock */
-  if(fstated)
-    Curl_pgrsSetDownloadSize(data, expected_size);
-
-  if(data->state.resume_from) {
-    if(data->state.resume_from !=
-       lseek(fd, data->state.resume_from, SEEK_SET))
-      return CURLE_BAD_DOWNLOAD_RESUME;
-  }
-
-  Curl_pgrsTime(data, TIMER_STARTTRANSFER);
-
-  while(res == CURLE_OK) {
-    /* Don't fill a whole buffer if we want less than all data */
-    bytestoread = (expected_size < BUFSIZE-1)?(size_t)expected_size:BUFSIZE-1;
-    nread = read(fd, buf, bytestoread);
-
-    if( nread > 0)
-      buf[nread] = 0;
-
-    if (nread <= 0 || expected_size == 0)
-      break;
-
-    bytecount += nread;
-    expected_size -= nread;
-
-    res = Curl_client_write(conn, CLIENTWRITE_BODY, buf, nread);
-    if(res)
-      return res;
-
-    Curl_pgrsSetDownloadCounter(data, bytecount);
-
-    if(Curl_pgrsUpdate(conn))
-      res = CURLE_ABORTED_BY_CALLBACK;
-    else
-      res = Curl_speedcheck(data, now);
-  }
-  if(Curl_pgrsUpdate(conn))
-    res = CURLE_ABORTED_BY_CALLBACK;
-
-  return res;
-}
-
-#endif
diff --git a/src/other/curl/lib/file.h b/src/other/curl/lib/file.h
deleted file mode 100644
index 5e3bd75..0000000
--- a/src/other/curl/lib/file.h
+++ /dev/null
@@ -1,40 +0,0 @@
-#ifndef __FILE_H
-#define __FILE_H
-
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-
-/****************************************************************************
- * FILE unique setup
- ***************************************************************************/
-struct FILEPROTO {
-  char *path; /* the path we operate on */
-  char *freepath; /* pointer to the allocated block we must free, this might
-                     differ from the 'path' pointer */
-  int fd;     /* open file descriptor to read from! */
-};
-
-#ifndef CURL_DISABLE_FILE
-extern const struct Curl_handler Curl_handler_file;
-#endif
-#endif
diff --git a/src/other/curl/lib/firefox-db2pem.sh b/src/other/curl/lib/firefox-db2pem.sh
deleted file mode 100755
index 14ac576..0000000
--- a/src/other/curl/lib/firefox-db2pem.sh
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/bin/sh
-# ***************************************************************************
-# *                                  _   _ ____  _
-# *  Project                     ___| | | |  _ \| |
-# *                             / __| | | | |_) | |
-# *                            | (__| |_| |  _ <| |___
-# *                             \___|\___/|_| \_\_____|
-# *
-# * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
-# *
-# * This software is licensed as described in the file COPYING, which
-# * you should have received as part of this distribution. The terms
-# * are also available at http://curl.haxx.se/docs/copyright.html.
-# *
-# * You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# * copies of the Software, and permit persons to whom the Software is
-# * furnished to do so, under the terms of the COPYING file.
-# *
-# * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# * KIND, either express or implied.
-# *
-# ***************************************************************************
-# This shell script creates a fresh ca-bundle.crt file for use with libcurl.
-# It extracts all ca certs it finds in the local Firefox database and converts
-# them all into PEM format.
-#
-db=`ls -1d $HOME/.mozilla/firefox/*default`
-out=$1
-
-if test -z "$out"; then
-  out="ca-bundle.crt" # use a sensible default
-fi
-
-currentdate=`date`
-
-cat >$out <<EOF
-##
-## Bundle of CA Root Certificates
-##
-## Converted at: ${currentdate}
-## These were converted from the local Firefox directory by the db2pem script.
-##
-EOF
-
-
-certutil -L -h 'Builtin Object Token' -d $db | \
-grep ' *[CcGTPpu]*,[CcGTPpu]*,[CcGTPpu]* *$' | \
-sed -e 's/ *[CcGTPpu]*,[CcGTPpu]*,[CcGTPpu]* *$//' -e 's/\(.*\)/"\1"/' | \
-sort | \
-while read nickname; \
- do echo $nickname | sed -e "s/Builtin Object Token://g"; \
-eval certutil -d $db -L -n "$nickname" -a ; \
-done >> $out
-
diff --git a/src/other/curl/lib/formdata.c b/src/other/curl/lib/formdata.c
deleted file mode 100644
index c98246e..0000000
--- a/src/other/curl/lib/formdata.c
+++ /dev/null
@@ -1,1760 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
-  Debug the form generator stand-alone by compiling this source file with:
-
-  gcc -DHAVE_CONFIG_H -I../ -g -D_FORM_DEBUG -DCURLDEBUG -o formdata \
-    -I../include formdata.c strequal.c memdebug.c mprintf.c strerror.c
-
-  (depending on circumstances you may need further externals added)
-
-  run the 'formdata' executable the output should end with:
-  All Tests seem to have worked ...
-  and the following parts should be there:
-
-Content-Disposition: form-data; name="simple_COPYCONTENTS"
-value for simple COPYCONTENTS
-
-Content-Disposition: form-data; name="COPYCONTENTS_+_CONTENTTYPE"
-Content-Type: image/gif
-value for COPYCONTENTS + CONTENTTYPE
-
-Content-Disposition: form-data; name="PRNAME_+_NAMELENGTH_+_COPYNAME_+_CONTENTSLENGTH"
-vlue for PTRNAME + NAMELENGTH + COPYNAME + CONTENTSLENGTH
-(or you might see P^@RNAME and v^@lue at the start)
-
-Content-Disposition: form-data; name="simple_PTRCONTENTS"
-value for simple PTRCONTENTS
-
-Content-Disposition: form-data; name="PTRCONTENTS_+_CONTENTSLENGTH"
-vlue for PTRCONTENTS + CONTENTSLENGTH
-(or you might see v^@lue at the start)
-
-Content-Disposition: form-data; name="PTRCONTENTS_+_CONTENTSLENGTH_+_CONTENTTYPE"
-Content-Type: application/octet-stream
-vlue for PTRCONTENTS + CONTENTSLENGTH + CONTENTTYPE
-(or you might see v^@lue at the start)
-
-Content-Disposition: form-data; name="FILE1_+_CONTENTTYPE"; filename="formdata.h"
-Content-Type: text/html
-...
-
-Content-Disposition: form-data; name="FILE1_+_FILE2"
-Content-Type: multipart/mixed, boundary=curlz1s0dkticx49MV1KGcYP5cvfSsz
-...
-Content-Disposition: attachment; filename="formdata.h"
-Content-Type: application/octet-stream
-...
-Content-Disposition: attachment; filename="Makefile.b32"
-Content-Type: application/octet-stream
-...
-
-Content-Disposition: form-data; name="FILE1_+_FILE2_+_FILE3"
-Content-Type: multipart/mixed, boundary=curlirkYPmPwu6FrJ1vJ1u1BmtIufh1
-...
-Content-Disposition: attachment; filename="formdata.h"
-Content-Type: application/octet-stream
-...
-Content-Disposition: attachment; filename="Makefile.b32"
-Content-Type: application/octet-stream
-...
-Content-Disposition: attachment; filename="formdata.h"
-Content-Type: application/octet-stream
-...
-
-
-Content-Disposition: form-data; name="ARRAY: FILE1_+_FILE2_+_FILE3"
-Content-Type: multipart/mixed, boundary=curlirkYPmPwu6FrJ1vJ1u1BmtIufh1
-...
-Content-Disposition: attachment; filename="formdata.h"
-Content-Type: application/octet-stream
-...
-Content-Disposition: attachment; filename="Makefile.b32"
-Content-Type: application/octet-stream
-...
-Content-Disposition: attachment; filename="formdata.h"
-Content-Type: application/octet-stream
-...
-
-Content-Disposition: form-data; name="FILECONTENT"
-...
-
- */
-
-#include "setup.h"
-#include <curl/curl.h>
-
-/* Length of the random boundary string. */
-#define BOUNDARY_LENGTH 40
-
-#if !defined(CURL_DISABLE_HTTP) || defined(USE_SSLEAY)
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <stdarg.h>
-#include <time.h>
-#if defined(HAVE_LIBGEN_H) && defined(HAVE_BASENAME)
-#include <libgen.h>
-#endif
-#include "urldata.h" /* for struct SessionHandle */
-#include "easyif.h" /* for Curl_convert_... prototypes */
-#include "formdata.h"
-#include "curl_rand.h"
-#include "strequal.h"
-#include "curl_memory.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#endif  /* !defined(CURL_DISABLE_HTTP) || defined(USE_SSLEAY) */
-
-#ifndef CURL_DISABLE_HTTP
-
-#ifndef HAVE_BASENAME
-static char *Curl_basename(char *path);
-#define basename(x)  Curl_basename((x))
-#endif
-
-static size_t readfromfile(struct Form *form, char *buffer, size_t size);
-
-/* What kind of Content-Type to use on un-specified files with unrecognized
-   extensions. */
-#define HTTPPOST_CONTENTTYPE_DEFAULT "application/octet-stream"
-
-#define FORM_FILE_SEPARATOR ','
-#define FORM_TYPE_SEPARATOR ';'
-
-/***************************************************************************
- *
- * AddHttpPost()
- *
- * Adds a HttpPost structure to the list, if parent_post is given becomes
- * a subpost of parent_post instead of a direct list element.
- *
- * Returns newly allocated HttpPost on success and NULL if malloc failed.
- *
- ***************************************************************************/
-static struct curl_httppost *
-AddHttpPost(char *name, size_t namelength,
-            char *value, size_t contentslength,
-            char *buffer, size_t bufferlength,
-            char *contenttype,
-            long flags,
-            struct curl_slist* contentHeader,
-            char *showfilename, char *userp,
-            struct curl_httppost *parent_post,
-            struct curl_httppost **httppost,
-            struct curl_httppost **last_post)
-{
-  struct curl_httppost *post;
-  post = calloc(1, sizeof(struct curl_httppost));
-  if(post) {
-    post->name = name;
-    post->namelength = (long)(name?(namelength?namelength:strlen(name)):0);
-    post->contents = value;
-    post->contentslength = (long)contentslength;
-    post->buffer = buffer;
-    post->bufferlength = (long)bufferlength;
-    post->contenttype = contenttype;
-    post->contentheader = contentHeader;
-    post->showfilename = showfilename;
-    post->userp = userp,
-    post->flags = flags;
-  }
-  else
-    return NULL;
-
-  if(parent_post) {
-    /* now, point our 'more' to the original 'more' */
-    post->more = parent_post->more;
-
-    /* then move the original 'more' to point to ourselves */
-    parent_post->more = post;
-  }
-  else {
-    /* make the previous point to this */
-    if(*last_post)
-      (*last_post)->next = post;
-    else
-      (*httppost) = post;
-
-    (*last_post) = post;
-  }
-  return post;
-}
-
-/***************************************************************************
- *
- * AddFormInfo()
- *
- * Adds a FormInfo structure to the list presented by parent_form_info.
- *
- * Returns newly allocated FormInfo on success and NULL if malloc failed/
- * parent_form_info is NULL.
- *
- ***************************************************************************/
-static FormInfo * AddFormInfo(char *value,
-                              char *contenttype,
-                              FormInfo *parent_form_info)
-{
-  FormInfo *form_info;
-  form_info = calloc(1, sizeof(struct FormInfo));
-  if(form_info) {
-    if(value)
-      form_info->value = value;
-    if(contenttype)
-      form_info->contenttype = contenttype;
-    form_info->flags = HTTPPOST_FILENAME;
-  }
-  else
-    return NULL;
-
-  if(parent_form_info) {
-    /* now, point our 'more' to the original 'more' */
-    form_info->more = parent_form_info->more;
-
-    /* then move the original 'more' to point to ourselves */
-    parent_form_info->more = form_info;
-  }
-  else
-    return NULL;
-
-  return form_info;
-}
-
-/***************************************************************************
- *
- * ContentTypeForFilename()
- *
- * Provides content type for filename if one of the known types (else
- * (either the prevtype or the default is returned).
- *
- * Returns some valid contenttype for filename.
- *
- ***************************************************************************/
-static const char * ContentTypeForFilename (const char *filename,
-                                            const char *prevtype)
-{
-  const char *contenttype = NULL;
-  unsigned int i;
-  /*
-   * No type was specified, we scan through a few well-known
-   * extensions and pick the first we match!
-   */
-  struct ContentType {
-    char extension[6];
-    const char *type;
-  };
-  static const struct ContentType ctts[]={
-    {".gif",  "image/gif"},
-    {".jpg",  "image/jpeg"},
-    {".jpeg", "image/jpeg"},
-    {".txt",  "text/plain"},
-    {".html", "text/html"},
-    {".xml", "application/xml"}
-  };
-
-  if(prevtype)
-    /* default to the previously set/used! */
-    contenttype = prevtype;
-  else
-    contenttype = HTTPPOST_CONTENTTYPE_DEFAULT;
-
-  if(filename) { /* in case a NULL was passed in */
-    for(i=0; i<sizeof(ctts)/sizeof(ctts[0]); i++) {
-      if(strlen(filename) >= strlen(ctts[i].extension)) {
-        if(strequal(filename +
-                    strlen(filename) - strlen(ctts[i].extension),
-                    ctts[i].extension)) {
-          contenttype = ctts[i].type;
-          break;
-        }
-      }
-    }
-  }
-  /* we have a contenttype by now */
-  return contenttype;
-}
-
-/***************************************************************************
- *
- * memdup()
- *
- * Copies the 'source' data to a newly allocated buffer buffer (that is
- * returned). Uses buffer_length if not null, else uses strlen to determine
- * the length of the buffer to be copied
- *
- * Returns the new pointer or NULL on failure.
- *
- ***************************************************************************/
-static char *memdup(const char *src, size_t buffer_length)
-{
-  size_t length;
-  bool add = FALSE;
-  char *buffer;
-
-  if(buffer_length)
-    length = buffer_length;
-  else if(src) {
-    length = strlen(src);
-    add = TRUE;
-  }
-  else
-    /* no length and a NULL src pointer! */
-    return strdup("");
-
-  buffer = malloc(length+add);
-  if(!buffer)
-    return NULL; /* fail */
-
-  memcpy(buffer, src, length);
-
-  /* if length unknown do null termination */
-  if(add)
-    buffer[length] = '\0';
-
-  return buffer;
-}
-
-/***************************************************************************
- *
- * FormAdd()
- *
- * Stores a formpost parameter and builds the appropriate linked list.
- *
- * Has two principal functionalities: using files and byte arrays as
- * post parts. Byte arrays are either copied or just the pointer is stored
- * (as the user requests) while for files only the filename and not the
- * content is stored.
- *
- * While you may have only one byte array for each name, multiple filenames
- * are allowed (and because of this feature CURLFORM_END is needed after
- * using CURLFORM_FILE).
- *
- * Examples:
- *
- * Simple name/value pair with copied contents:
- * curl_formadd (&post, &last, CURLFORM_COPYNAME, "name",
- * CURLFORM_COPYCONTENTS, "value", CURLFORM_END);
- *
- * name/value pair where only the content pointer is remembered:
- * curl_formadd (&post, &last, CURLFORM_COPYNAME, "name",
- * CURLFORM_PTRCONTENTS, ptr, CURLFORM_CONTENTSLENGTH, 10, CURLFORM_END);
- * (if CURLFORM_CONTENTSLENGTH is missing strlen () is used)
- *
- * storing a filename (CONTENTTYPE is optional!):
- * curl_formadd (&post, &last, CURLFORM_COPYNAME, "name",
- * CURLFORM_FILE, "filename1", CURLFORM_CONTENTTYPE, "plain/text",
- * CURLFORM_END);
- *
- * storing multiple filenames:
- * curl_formadd (&post, &last, CURLFORM_COPYNAME, "name",
- * CURLFORM_FILE, "filename1", CURLFORM_FILE, "filename2", CURLFORM_END);
- *
- * Returns:
- * CURL_FORMADD_OK             on success
- * CURL_FORMADD_MEMORY         if the FormInfo allocation fails
- * CURL_FORMADD_OPTION_TWICE   if one option is given twice for one Form
- * CURL_FORMADD_NULL           if a null pointer was given for a char
- * CURL_FORMADD_MEMORY         if the allocation of a FormInfo struct failed
- * CURL_FORMADD_UNKNOWN_OPTION if an unknown option was used
- * CURL_FORMADD_INCOMPLETE     if the some FormInfo is not complete (or an error)
- * CURL_FORMADD_MEMORY         if a HttpPost struct cannot be allocated
- * CURL_FORMADD_MEMORY         if some allocation for string copying failed.
- * CURL_FORMADD_ILLEGAL_ARRAY  if an illegal option is used in an array
- *
- ***************************************************************************/
-
-static
-CURLFORMcode FormAdd(struct curl_httppost **httppost,
-                     struct curl_httppost **last_post,
-                     va_list params)
-{
-  FormInfo *first_form, *current_form, *form = NULL;
-  CURLFORMcode return_value = CURL_FORMADD_OK;
-  const char *prevtype = NULL;
-  struct curl_httppost *post = NULL;
-  CURLformoption option;
-  struct curl_forms *forms = NULL;
-  char *array_value=NULL; /* value read from an array */
-
-  /* This is a state variable, that if TRUE means that we're parsing an
-     array that we got passed to us. If FALSE we're parsing the input
-     va_list arguments. */
-  bool array_state = FALSE;
-
-  /*
-   * We need to allocate the first struct to fill in.
-   */
-  first_form = calloc(1, sizeof(struct FormInfo));
-  if(!first_form)
-    return CURL_FORMADD_MEMORY;
-
-  current_form = first_form;
-
-  /*
-   * Loop through all the options set. Break if we have an error to report.
-   */
-  while(return_value == CURL_FORMADD_OK) {
-
-    /* first see if we have more parts of the array param */
-    if( array_state && forms ) {
-      /* get the upcoming option from the given array */
-      option = forms->option;
-      array_value = (char *)forms->value;
-
-      forms++; /* advance this to next entry */
-      if(CURLFORM_END == option) {
-        /* end of array state */
-        array_state = FALSE;
-        continue;
-      }
-    }
-    else {
-      /* This is not array-state, get next option */
-      option = va_arg(params, CURLformoption);
-      if(CURLFORM_END == option)
-        break;
-    }
-
-    switch (option) {
-    case CURLFORM_ARRAY:
-      if(array_state)
-        /* we don't support an array from within an array */
-        return_value = CURL_FORMADD_ILLEGAL_ARRAY;
-      else {
-        forms = va_arg(params, struct curl_forms *);
-        if(forms)
-          array_state = TRUE;
-        else
-          return_value = CURL_FORMADD_NULL;
-      }
-      break;
-
-      /*
-       * Set the Name property.
-       */
-    case CURLFORM_PTRNAME:
-#ifdef CURL_DOES_CONVERSIONS
-      /* treat CURLFORM_PTR like CURLFORM_COPYNAME so we'll
-         have safe memory for the eventual conversion */
-#else
-      current_form->flags |= HTTPPOST_PTRNAME; /* fall through */
-#endif
-    case CURLFORM_COPYNAME:
-      if(current_form->name)
-        return_value = CURL_FORMADD_OPTION_TWICE;
-      else {
-        char *name = array_state?
-          array_value:va_arg(params, char *);
-        if(name)
-          current_form->name = name; /* store for the moment */
-        else
-          return_value = CURL_FORMADD_NULL;
-      }
-      break;
-    case CURLFORM_NAMELENGTH:
-      if(current_form->namelength)
-        return_value = CURL_FORMADD_OPTION_TWICE;
-      else
-        current_form->namelength =
-          array_state?(size_t)array_value:(size_t)va_arg(params, long);
-      break;
-
-      /*
-       * Set the contents property.
-       */
-    case CURLFORM_PTRCONTENTS:
-      current_form->flags |= HTTPPOST_PTRCONTENTS; /* fall through */
-    case CURLFORM_COPYCONTENTS:
-      if(current_form->value)
-        return_value = CURL_FORMADD_OPTION_TWICE;
-      else {
-        char *value =
-          array_state?array_value:va_arg(params, char *);
-        if(value)
-          current_form->value = value; /* store for the moment */
-        else
-          return_value = CURL_FORMADD_NULL;
-      }
-      break;
-    case CURLFORM_CONTENTSLENGTH:
-      if(current_form->contentslength)
-        return_value = CURL_FORMADD_OPTION_TWICE;
-      else
-        current_form->contentslength =
-          array_state?(size_t)array_value:(size_t)va_arg(params, long);
-      break;
-
-      /* Get contents from a given file name */
-    case CURLFORM_FILECONTENT:
-      if(current_form->flags != 0)
-        return_value = CURL_FORMADD_OPTION_TWICE;
-      else {
-        const char *filename = array_state?
-          array_value:va_arg(params, char *);
-        if(filename) {
-          current_form->value = strdup(filename);
-          if(!current_form->value)
-            return_value = CURL_FORMADD_MEMORY;
-          else {
-            current_form->flags |= HTTPPOST_READFILE;
-            current_form->value_alloc = TRUE;
-          }
-        }
-        else
-          return_value = CURL_FORMADD_NULL;
-      }
-      break;
-
-      /* We upload a file */
-    case CURLFORM_FILE:
-      {
-        const char *filename = array_state?array_value:
-          va_arg(params, char *);
-
-        if(current_form->value) {
-          if(current_form->flags & HTTPPOST_FILENAME) {
-            if(filename) {
-              if((current_form = AddFormInfo(strdup(filename),
-                                              NULL, current_form)) == NULL)
-                return_value = CURL_FORMADD_MEMORY;
-            }
-            else
-              return_value = CURL_FORMADD_NULL;
-          }
-          else
-            return_value = CURL_FORMADD_OPTION_TWICE;
-        }
-        else {
-          if(filename) {
-            current_form->value = strdup(filename);
-            if(!current_form->value)
-              return_value = CURL_FORMADD_MEMORY;
-            else {
-              current_form->flags |= HTTPPOST_FILENAME;
-              current_form->value_alloc = TRUE;
-            }
-          }
-          else
-            return_value = CURL_FORMADD_NULL;
-        }
-        break;
-      }
-
-    case CURLFORM_BUFFER:
-      {
-        const char *filename = array_state?array_value:
-          va_arg(params, char *);
-
-        if(current_form->value) {
-          if(current_form->flags & HTTPPOST_BUFFER) {
-            if(filename) {
-              if((current_form = AddFormInfo(strdup(filename),
-                                              NULL, current_form)) == NULL)
-                return_value = CURL_FORMADD_MEMORY;
-            }
-            else
-              return_value = CURL_FORMADD_NULL;
-          }
-          else
-            return_value = CURL_FORMADD_OPTION_TWICE;
-        }
-        else {
-          if(filename) {
-            current_form->value = strdup(filename);
-            if(!current_form->value)
-              return_value = CURL_FORMADD_MEMORY;
-          }
-          else
-            return_value = CURL_FORMADD_NULL;
-          current_form->flags |= HTTPPOST_BUFFER;
-        }
-        break;
-      }
-
-    case CURLFORM_BUFFERPTR:
-      current_form->flags |= HTTPPOST_PTRBUFFER;
-      if(current_form->buffer)
-        return_value = CURL_FORMADD_OPTION_TWICE;
-      else {
-        char *buffer =
-          array_state?array_value:va_arg(params, char *);
-        if(buffer)
-          current_form->buffer = buffer; /* store for the moment */
-        else
-          return_value = CURL_FORMADD_NULL;
-      }
-      break;
-
-    case CURLFORM_BUFFERLENGTH:
-      if(current_form->bufferlength)
-        return_value = CURL_FORMADD_OPTION_TWICE;
-      else
-        current_form->bufferlength =
-          array_state?(size_t)array_value:(size_t)va_arg(params, long);
-      break;
-
-    case CURLFORM_STREAM:
-      current_form->flags |= HTTPPOST_CALLBACK;
-      if(current_form->userp)
-        return_value = CURL_FORMADD_OPTION_TWICE;
-      else {
-        char *userp =
-          array_state?array_value:va_arg(params, char *);
-        if(userp) {
-          current_form->userp = userp;
-          current_form->value = userp; /* this isn't strictly true but we
-                                          derive a value from this later on
-                                          and we need this non-NULL to be
-                                          accepted as a fine form part */
-        }
-        else
-          return_value = CURL_FORMADD_NULL;
-      }
-      break;
-
-    case CURLFORM_CONTENTTYPE:
-      {
-        const char *contenttype =
-          array_state?array_value:va_arg(params, char *);
-        if(current_form->contenttype) {
-          if(current_form->flags & HTTPPOST_FILENAME) {
-            if(contenttype) {
-              if((current_form = AddFormInfo(NULL,
-                                              strdup(contenttype),
-                                              current_form)) == NULL)
-                return_value = CURL_FORMADD_MEMORY;
-            }
-            else
-              return_value = CURL_FORMADD_NULL;
-          }
-          else
-            return_value = CURL_FORMADD_OPTION_TWICE;
-        }
-        else {
-          if(contenttype) {
-            current_form->contenttype = strdup(contenttype);
-            if(!current_form->contenttype)
-              return_value = CURL_FORMADD_MEMORY;
-            else
-              current_form->contenttype_alloc = TRUE;
-          }
-          else
-            return_value = CURL_FORMADD_NULL;
-        }
-        break;
-      }
-    case CURLFORM_CONTENTHEADER:
-      {
-        /* this "cast increases required alignment of target type" but
-           we consider it OK anyway */
-        struct curl_slist* list = array_state?
-          (struct curl_slist*)array_value:
-          va_arg(params, struct curl_slist*);
-
-        if( current_form->contentheader )
-          return_value = CURL_FORMADD_OPTION_TWICE;
-        else
-          current_form->contentheader = list;
-
-        break;
-      }
-    case CURLFORM_FILENAME:
-      {
-        const char *filename = array_state?array_value:
-          va_arg(params, char *);
-        if( current_form->showfilename )
-          return_value = CURL_FORMADD_OPTION_TWICE;
-        else {
-          current_form->showfilename = strdup(filename);
-          if(!current_form->showfilename)
-            return_value = CURL_FORMADD_MEMORY;
-          else
-            current_form->showfilename_alloc = TRUE;
-        }
-        break;
-      }
-    default:
-      return_value = CURL_FORMADD_UNKNOWN_OPTION;
-    }
-  }
-
-  if(CURL_FORMADD_OK == return_value) {
-    /* go through the list, check for completeness and if everything is
-     * alright add the HttpPost item otherwise set return_value accordingly */
-
-    post = NULL;
-    for(form = first_form;
-        form != NULL;
-        form = form->more) {
-      if( ((!form->name || !form->value) && !post) ||
-          ( (form->contentslength) &&
-            (form->flags & HTTPPOST_FILENAME) ) ||
-          ( (form->flags & HTTPPOST_FILENAME) &&
-            (form->flags & HTTPPOST_PTRCONTENTS) ) ||
-
-          ( (!form->buffer) &&
-            (form->flags & HTTPPOST_BUFFER) &&
-            (form->flags & HTTPPOST_PTRBUFFER) ) ||
-
-          ( (form->flags & HTTPPOST_READFILE) &&
-            (form->flags & HTTPPOST_PTRCONTENTS) )
-        ) {
-        return_value = CURL_FORMADD_INCOMPLETE;
-        break;
-      }
-      else {
-        if( ((form->flags & HTTPPOST_FILENAME) ||
-              (form->flags & HTTPPOST_BUFFER)) &&
-             !form->contenttype ) {
-          /* our contenttype is missing */
-          form->contenttype
-            = strdup(ContentTypeForFilename(form->value, prevtype));
-          if(!form->contenttype) {
-            return_value = CURL_FORMADD_MEMORY;
-            break;
-          }
-          form->contenttype_alloc = TRUE;
-        }
-        if( !(form->flags & HTTPPOST_PTRNAME) &&
-             (form == first_form) ) {
-          /* Note that there's small risk that form->name is NULL here if the
-             app passed in a bad combo, so we better check for that first. */
-          if(form->name)
-            /* copy name (without strdup; possibly contains null characters) */
-            form->name = memdup(form->name, form->namelength);
-          if(!form->name) {
-            return_value = CURL_FORMADD_MEMORY;
-            break;
-          }
-          form->name_alloc = TRUE;
-        }
-        if( !(form->flags & (HTTPPOST_FILENAME | HTTPPOST_READFILE |
-                             HTTPPOST_PTRCONTENTS | HTTPPOST_PTRBUFFER |
-                             HTTPPOST_CALLBACK)) ) {
-          /* copy value (without strdup; possibly contains null characters) */
-          form->value = memdup(form->value, form->contentslength);
-          if(!form->value) {
-            return_value = CURL_FORMADD_MEMORY;
-            break;
-          }
-          form->value_alloc = TRUE;
-        }
-        post = AddHttpPost(form->name, form->namelength,
-                           form->value, form->contentslength,
-                           form->buffer, form->bufferlength,
-                           form->contenttype, form->flags,
-                           form->contentheader, form->showfilename,
-                           form->userp,
-                           post, httppost,
-                           last_post);
-
-        if(!post) {
-          return_value = CURL_FORMADD_MEMORY;
-          break;
-        }
-
-        if(form->contenttype)
-          prevtype = form->contenttype;
-      }
-    }
-  }
-
-  if(return_value) {
-    /* we return on error, free possibly allocated fields */
-    if(!form)
-      form = current_form;
-    if(form) {
-      if(form->name_alloc)
-        free(form->name);
-      if(form->value_alloc)
-        free(form->value);
-      if(form->contenttype_alloc)
-        free(form->contenttype);
-      if(form->showfilename_alloc)
-        free(form->showfilename);
-    }
-  }
-
-  /* always delete the allocated memory before returning */
-  form = first_form;
-  while(form != NULL) {
-    FormInfo *delete_form;
-
-    delete_form = form;
-    form = form->more;
-    free (delete_form);
-  }
-
-  return return_value;
-}
-
-/*
- * curl_formadd() is a public API to add a section to the multipart formpost.
- */
-
-CURLFORMcode curl_formadd(struct curl_httppost **httppost,
-                          struct curl_httppost **last_post,
-                          ...)
-{
-  va_list arg;
-  CURLFORMcode result;
-  va_start(arg, last_post);
-  result = FormAdd(httppost, last_post, arg);
-  va_end(arg);
-  return result;
-}
-
-/*
- * AddFormData() adds a chunk of data to the FormData linked list.
- *
- * size is incremented by the chunk length, unless it is NULL
- */
-static CURLcode AddFormData(struct FormData **formp,
-                            enum formtype type,
-                            const void *line,
-                            size_t length,
-                            curl_off_t *size)
-{
-  struct FormData *newform = malloc(sizeof(struct FormData));
-  if(!newform)
-    return CURLE_OUT_OF_MEMORY;
-  newform->next = NULL;
-
-  if(type <= FORM_CONTENT) {
-    /* we make it easier for plain strings: */
-    if(!length)
-      length = strlen((char *)line);
-
-    newform->line = malloc(length+1);
-    if(!newform->line) {
-      free(newform);
-      return CURLE_OUT_OF_MEMORY;
-    }
-    memcpy(newform->line, line, length);
-    newform->length = length;
-    newform->line[length]=0; /* zero terminate for easier debugging */
-  }
-  else
-    /* For callbacks and files we don't have any actual data so we just keep a
-       pointer to whatever this points to */
-    newform->line = (char *)line;
-
-  newform->type = type;
-
-  if(*formp) {
-    (*formp)->next = newform;
-    *formp = newform;
-  }
-  else
-    *formp = newform;
-
-  if(size) {
-    if(type != FORM_FILE)
-      /* for static content as well as callback data we add the size given
-         as input argument */
-      *size += length;
-    else {
-      /* Since this is a file to be uploaded here, add the size of the actual
-         file */
-      if(!strequal("-", newform->line)) {
-        struct_stat file;
-        if(!stat(newform->line, &file)) {
-          *size += file.st_size;
-        }
-      }
-    }
-  }
-  return CURLE_OK;
-}
-
-/*
- * AddFormDataf() adds printf()-style formatted data to the formdata chain.
- */
-
-static CURLcode AddFormDataf(struct FormData **formp,
-                             curl_off_t *size,
-                             const char *fmt, ...)
-{
-  char s[4096];
-  va_list ap;
-  va_start(ap, fmt);
-  vsnprintf(s, sizeof(s), fmt, ap);
-  va_end(ap);
-
-  return AddFormData(formp, FORM_DATA, s, 0, size);
-}
-
-/*
- * Curl_formclean() is used from http.c, this cleans a built FormData linked
- * list
- */
-void Curl_formclean(struct FormData **form_ptr)
-{
-  struct FormData *next, *form;
-
-  form = *form_ptr;
-  if(!form)
-    return;
-
-  do {
-    next=form->next;  /* the following form line */
-    if(form->type <= FORM_CONTENT)
-      free(form->line); /* free the line */
-    free(form);       /* free the struct */
-
-  } while((form = next) != NULL); /* continue */
-
-  *form_ptr = NULL;
-}
-
-#ifdef CURL_DOES_CONVERSIONS
-/*
- * Curl_formcovert() is used from http.c, this converts any
-   form items that need to be sent in the network encoding.
-   Returns CURLE_OK on success.
- */
-CURLcode Curl_formconvert(struct SessionHandle *data, struct FormData *form)
-{
-  struct FormData *next;
-  CURLcode rc;
-
-  if(!form)
-    return CURLE_OK;
-
-  if(!data)
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-
-  do {
-    next=form->next;  /* the following form line */
-    if(form->type == FORM_DATA) {
-      rc = Curl_convert_to_network(data, form->line, form->length);
-      /* Curl_convert_to_network calls failf if unsuccessful */
-      if(rc != CURLE_OK)
-        return rc;
-    }
-  } while((form = next) != NULL); /* continue */
-  return CURLE_OK;
-}
-#endif /* CURL_DOES_CONVERSIONS */
-
-/*
- * curl_formget()
- * Serialize a curl_httppost struct.
- * Returns 0 on success.
- */
-int curl_formget(struct curl_httppost *form, void *arg,
-                 curl_formget_callback append)
-{
-  CURLcode rc;
-  curl_off_t size;
-  struct FormData *data, *ptr;
-
-  rc = Curl_getFormData(&data, form, NULL, &size);
-  if(rc != CURLE_OK)
-    return (int)rc;
-
-  for (ptr = data; ptr; ptr = ptr->next) {
-    if(ptr->type == FORM_FILE) {
-      char buffer[8192];
-      size_t nread;
-      struct Form temp;
-
-      Curl_FormInit(&temp, ptr);
-
-      do {
-        nread = readfromfile(&temp, buffer, sizeof(buffer));
-        if((nread == (size_t) -1) || (nread != append(arg, buffer, nread))) {
-          if(temp.fp) {
-            fclose(temp.fp);
-          }
-          Curl_formclean(&data);
-          return -1;
-        }
-      } while(nread == sizeof(buffer));
-    }
-    else {
-      if(ptr->length != append(arg, ptr->line, ptr->length)) {
-        Curl_formclean(&data);
-        return -1;
-      }
-    }
-  }
-  Curl_formclean(&data);
-  return 0;
-}
-
-/*
- * curl_formfree() is an external function to free up a whole form post
- * chain
- */
-void curl_formfree(struct curl_httppost *form)
-{
-  struct curl_httppost *next;
-
-  if(!form)
-    /* no form to free, just get out of this */
-    return;
-
-  do {
-    next=form->next;  /* the following form line */
-
-    /* recurse to sub-contents */
-    if(form->more)
-      curl_formfree(form->more);
-
-    if( !(form->flags & HTTPPOST_PTRNAME) && form->name)
-      free(form->name); /* free the name */
-    if( !(form->flags & (HTTPPOST_PTRCONTENTS|HTTPPOST_CALLBACK)) &&
-        form->contents)
-      free(form->contents); /* free the contents */
-    if(form->contenttype)
-      free(form->contenttype); /* free the content type */
-    if(form->showfilename)
-      free(form->showfilename); /* free the faked file name */
-    free(form);       /* free the struct */
-
-  } while((form = next) != NULL); /* continue */
-}
-
-#ifndef HAVE_BASENAME
-/*
-  (Quote from The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004
-  Edition)
-
-  The basename() function shall take the pathname pointed to by path and
-  return a pointer to the final component of the pathname, deleting any
-  trailing '/' characters.
-
-  If the string pointed to by path consists entirely of the '/' character,
-  basename() shall return a pointer to the string "/". If the string pointed
-  to by path is exactly "//", it is implementation-defined whether '/' or "//"
-  is returned.
-
-  If path is a null pointer or points to an empty string, basename() shall
-  return a pointer to the string ".".
-
-  The basename() function may modify the string pointed to by path, and may
-  return a pointer to static storage that may then be overwritten by a
-  subsequent call to basename().
-
-  The basename() function need not be reentrant. A function that is not
-  required to be reentrant is not required to be thread-safe.
-
-*/
-static char *Curl_basename(char *path)
-{
-  /* Ignore all the details above for now and make a quick and simple
-     implementaion here */
-  char *s1;
-  char *s2;
-
-  s1=strrchr(path, '/');
-  s2=strrchr(path, '\\');
-
-  if(s1 && s2) {
-    path = (s1 > s2? s1 : s2)+1;
-  }
-  else if(s1)
-    path = s1 + 1;
-  else if(s2)
-    path = s2 + 1;
-
-  return path;
-}
-#endif
-
-static char *strippath(const char *fullfile)
-{
-  char *filename;
-  char *base;
-  filename = strdup(fullfile); /* duplicate since basename() may ruin the
-                                  buffer it works on */
-  if(!filename)
-    return NULL;
-  base = strdup(basename(filename));
-
-  free(filename); /* free temporary buffer */
-
-  return base; /* returns an allocated string or NULL ! */
-}
-
-/*
- * Curl_getFormData() converts a linked list of "meta data" into a complete
- * (possibly huge) multipart formdata. The input list is in 'post', while the
- * output resulting linked lists gets stored in '*finalform'. *sizep will get
- * the total size of the whole POST.
- * A multipart/form_data content-type is built, unless a custom content-type
- * is passed in 'custom_content_type'.
- */
-
-CURLcode Curl_getFormData(struct FormData **finalform,
-                          struct curl_httppost *post,
-                          const char *custom_content_type,
-                          curl_off_t *sizep)
-{
-  struct FormData *form = NULL;
-  struct FormData *firstform;
-  struct curl_httppost *file;
-  CURLcode result = CURLE_OK;
-
-  curl_off_t size=0; /* support potentially ENORMOUS formposts */
-  char *boundary;
-  char *fileboundary=NULL;
-  struct curl_slist* curList;
-
-  *finalform=NULL; /* default form is empty */
-
-  if(!post)
-    return result; /* no input => no output! */
-
-  boundary = Curl_FormBoundary();
-  if(!boundary)
-    return CURLE_OUT_OF_MEMORY;
-
-  /* Make the first line of the output */
-  result = AddFormDataf(&form, NULL,
-                        "%s; boundary=%s\r\n",
-                        custom_content_type?custom_content_type:
-                        "Content-Type: multipart/form-data",
-                        boundary);
-
-  if(result) {
-    free(boundary);
-    return result;
-  }
-  /* we DO NOT include that line in the total size of the POST, since it'll be
-     part of the header! */
-
-  firstform = form;
-
-  do {
-
-    if(size) {
-      result = AddFormDataf(&form, &size, "\r\n");
-      if(result)
-        break;
-    }
-
-    /* boundary */
-    result = AddFormDataf(&form, &size, "--%s\r\n", boundary);
-    if(result)
-      break;
-
-    /* Maybe later this should be disabled when a custom_content_type is
-       passed, since Content-Disposition is not meaningful for all multipart
-       types.
-    */
-    result = AddFormDataf(&form, &size,
-                          "Content-Disposition: form-data; name=\"");
-    if(result)
-      break;
-
-    result = AddFormData(&form, FORM_DATA, post->name, post->namelength,
-                         &size);
-    if(result)
-      break;
-
-    result = AddFormDataf(&form, &size, "\"");
-    if(result)
-      break;
-
-    if(post->more) {
-      /* If used, this is a link to more file names, we must then do
-         the magic to include several files with the same field name */
-
-      fileboundary = Curl_FormBoundary();
-
-      result = AddFormDataf(&form, &size,
-                            "\r\nContent-Type: multipart/mixed,"
-                            " boundary=%s\r\n",
-                            fileboundary);
-      if(result)
-        break;
-    }
-
-    file = post;
-
-    do {
-
-      /* If 'showfilename' is set, that is a faked name passed on to us
-         to use to in the formpost. If that is not set, the actually used
-         local file name should be added. */
-
-      if(post->more) {
-        /* if multiple-file */
-        char *filebasename= NULL;
-        if(!file->showfilename) {
-          filebasename = strippath(file->contents);
-          if(!filebasename) {
-            Curl_formclean(&firstform);
-            free(boundary);
-            return CURLE_OUT_OF_MEMORY;
-          }
-        }
-
-        result = AddFormDataf(&form, &size,
-                              "\r\n--%s\r\nContent-Disposition: "
-                              "attachment; filename=\"%s\"",
-                              fileboundary,
-                              (file->showfilename?file->showfilename:
-                               filebasename));
-        if(filebasename)
-          free(filebasename);
-        if(result)
-          break;
-      }
-      else if(post->flags & (HTTPPOST_FILENAME|HTTPPOST_BUFFER|
-                             HTTPPOST_CALLBACK)) {
-        /* it should be noted that for the HTTPPOST_FILENAME and
-           HTTPPOST_CALLBACK cases the ->showfilename struct member is always
-           assigned at this point */
-        char *filebasename=
-          (!post->showfilename)?strippath(post->contents):NULL;
-
-        result = AddFormDataf(&form, &size,
-                              "; filename=\"%s\"",
-                              (post->showfilename?post->showfilename:
-                               filebasename));
-        if(filebasename)
-          free(filebasename);
-
-        if(result)
-          break;
-      }
-
-      if(file->contenttype) {
-        /* we have a specified type */
-        result = AddFormDataf(&form, &size,
-                              "\r\nContent-Type: %s",
-                              file->contenttype);
-        if(result)
-          break;
-      }
-
-      curList = file->contentheader;
-      while( curList ) {
-        /* Process the additional headers specified for this form */
-        result = AddFormDataf( &form, &size, "\r\n%s", curList->data );
-        if(result)
-          break;
-        curList = curList->next;
-      }
-      if(result) {
-        Curl_formclean(&firstform);
-        free(boundary);
-        return result;
-      }
-
-#if 0
-      /* The header Content-Transfer-Encoding: seems to confuse some receivers
-       * (like the built-in PHP engine). While I can't see any reason why it
-       * should, I can just as well skip this to the benefit of the users who
-       * are using such confused receivers.
-       */
-
-      if(file->contenttype &&
-         !checkprefix("text/", file->contenttype)) {
-        /* this is not a text content, mention our binary encoding */
-        result = AddFormDataf(&form, &size,
-                              "\r\nContent-Transfer-Encoding: binary");
-        if(result)
-          break;
-      }
-#endif
-
-      result = AddFormDataf(&form, &size, "\r\n\r\n");
-      if(result)
-        break;
-
-      if((post->flags & HTTPPOST_FILENAME) ||
-         (post->flags & HTTPPOST_READFILE)) {
-        /* we should include the contents from the specified file */
-        FILE *fileread;
-
-        fileread = strequal("-", file->contents)?
-          stdin:fopen(file->contents, "rb"); /* binary read for win32  */
-
-        /*
-         * VMS: This only allows for stream files on VMS.  Stream files are
-         * OK, as are FIXED & VAR files WITHOUT implied CC For implied CC,
-         * every record needs to have a \n appended & 1 added to SIZE
-         */
-
-        if(fileread) {
-          if(fileread != stdin) {
-            /* close the file again */
-            fclose(fileread);
-            /* add the file name only - for later reading from this */
-            result = AddFormData(&form, FORM_FILE, file->contents, 0, &size);
-          }
-          else {
-            /* When uploading from stdin, we can't know the size of the file,
-             * thus must read the full file as before. We *could* use chunked
-             * transfer-encoding, but that only works for HTTP 1.1 and we
-             * can't be sure we work with such a server.
-             */
-            size_t nread;
-            char buffer[512];
-            while((nread = fread(buffer, 1, sizeof(buffer), fileread)) != 0) {
-              result = AddFormData(&form, FORM_CONTENT, buffer, nread, &size);
-              if(result)
-                break;
-            }
-          }
-
-          if(result) {
-            Curl_formclean(&firstform);
-            free(boundary);
-            return result;
-          }
-
-        }
-        else {
-#ifdef _FORM_DEBUG
-          fprintf(stderr,
-                  "\n==> Curl_getFormData couldn't open/read \"%s\"\n",
-                  file->contents);
-#endif
-          Curl_formclean(&firstform);
-          free(boundary);
-          *finalform = NULL;
-          return CURLE_READ_ERROR;
-        }
-
-      }
-      else if(post->flags & HTTPPOST_BUFFER) {
-        /* include contents of buffer */
-        result = AddFormData(&form, FORM_CONTENT, post->buffer,
-                             post->bufferlength, &size);
-          if(result)
-            break;
-      }
-      else if(post->flags & HTTPPOST_CALLBACK) {
-        /* the contents should be read with the callback and the size
-           is set with the contentslength */
-        result = AddFormData(&form, FORM_CALLBACK, post->userp,
-                             post->contentslength, &size);
-        if(result)
-          break;
-      }
-      else {
-        /* include the contents we got */
-        result = AddFormData(&form, FORM_CONTENT, post->contents,
-                             post->contentslength, &size);
-        if(result)
-          break;
-      }
-    } while((file = file->more) != NULL); /* for each specified file for this field */
-    if(result) {
-      Curl_formclean(&firstform);
-      free(boundary);
-      return result;
-    }
-
-    if(post->more) {
-      /* this was a multiple-file inclusion, make a termination file
-         boundary: */
-      result = AddFormDataf(&form, &size,
-                           "\r\n--%s--",
-                           fileboundary);
-      free(fileboundary);
-      if(result)
-        break;
-    }
-
-  } while((post = post->next) != NULL); /* for each field */
-  if(result) {
-    Curl_formclean(&firstform);
-    free(boundary);
-    return result;
-  }
-
-  /* end-boundary for everything */
-  result = AddFormDataf(&form, &size,
-                       "\r\n--%s--\r\n",
-                       boundary);
-  if(result) {
-    Curl_formclean(&firstform);
-    free(boundary);
-    return result;
-  }
-
-  *sizep = size;
-
-  free(boundary);
-
-  *finalform=firstform;
-
-  return result;
-}
-
-/*
- * Curl_FormInit() inits the struct 'form' points to with the 'formdata'
- * and resets the 'sent' counter.
- */
-int Curl_FormInit(struct Form *form, struct FormData *formdata )
-{
-  if(!formdata)
-    return 1; /* error */
-
-  form->data = formdata;
-  form->sent = 0;
-  form->fp = NULL;
-  form->fread_func = ZERO_NULL;
-
-  return 0;
-}
-
-static size_t readfromfile(struct Form *form, char *buffer,
-                           size_t size)
-{
-  size_t nread;
-  bool callback = (bool)(form->data->type == FORM_CALLBACK);
-
-  if(callback)
-    nread = form->fread_func(buffer, 1, size, form->data->line);
-  else {
-    if(!form->fp) {
-      /* this file hasn't yet been opened */
-      form->fp = fopen(form->data->line, "rb"); /* b is for binary */
-      if(!form->fp)
-        return (size_t)-1; /* failure */
-    }
-    nread = fread(buffer, 1, size, form->fp);
-  }
-  if(!nread || nread > size) {
-    /* this is the last chunk from the file, move on */
-    if(!callback) {
-      fclose(form->fp);
-      form->fp = NULL;
-    }
-    form->data = form->data->next;
-  }
-
-  return nread;
-}
-
-/*
- * Curl_FormReader() is the fread() emulation function that will be used to
- * deliver the formdata to the transfer loop and then sent away to the peer.
- */
-size_t Curl_FormReader(char *buffer,
-                       size_t size,
-                       size_t nitems,
-                       FILE *mydata)
-{
-  struct Form *form;
-  size_t wantedsize;
-  size_t gotsize = 0;
-
-  form=(struct Form *)mydata;
-
-  wantedsize = size * nitems;
-
-  if(!form->data)
-    return 0; /* nothing, error, empty */
-
-  if((form->data->type == FORM_FILE) ||
-     (form->data->type == FORM_CALLBACK)) {
-    gotsize = readfromfile(form, buffer, wantedsize);
-
-    if(gotsize)
-      /* If positive or -1, return. If zero, continue! */
-      return gotsize;
-  }
-  do {
-
-    if( (form->data->length - form->sent ) > wantedsize - gotsize) {
-
-      memcpy(buffer + gotsize , form->data->line + form->sent,
-             wantedsize - gotsize);
-
-      form->sent += wantedsize-gotsize;
-
-      return wantedsize;
-    }
-
-    memcpy(buffer+gotsize,
-           form->data->line + form->sent,
-           (form->data->length - form->sent) );
-    gotsize += form->data->length - form->sent;
-
-    form->sent = 0;
-
-    form->data = form->data->next; /* advance */
-
-  } while(form->data && (form->data->type < FORM_CALLBACK));
-  /* If we got an empty line and we have more data, we proceed to the next
-     line immediately to avoid returning zero before we've reached the end. */
-
-  return gotsize;
-}
-
-/*
- * Curl_formpostheader() returns the first line of the formpost, the
- * request-header part (which is not part of the request-body like the rest of
- * the post).
- */
-char *Curl_formpostheader(void *formp, size_t *len)
-{
-  char *header;
-  struct Form *form=(struct Form *)formp;
-
-  if(!form->data)
-    return 0; /* nothing, ERROR! */
-
-  header = form->data->line;
-  *len = form->data->length;
-
-  form->data = form->data->next; /* advance */
-
-  return header;
-}
-
-
-#ifdef _FORM_DEBUG
-int FormAddTest(const char * errormsg,
-                 struct curl_httppost **httppost,
-                 struct curl_httppost **last_post,
-                 ...)
-{
-  int result;
-  va_list arg;
-  va_start(arg, last_post);
-  if((result = FormAdd(httppost, last_post, arg)))
-    fprintf (stderr, "ERROR doing FormAdd ret: %d action: %s\n", result,
-             errormsg);
-  va_end(arg);
-  return result;
-}
-
-
-int main(int argc, argv_item_t argv[])
-{
-  char name1[] = "simple_COPYCONTENTS";
-  char name2[] = "COPYCONTENTS_+_CONTENTTYPE";
-  char name3[] = "PTRNAME_+_NAMELENGTH_+_COPYNAME_+_CONTENTSLENGTH";
-  char name4[] = "simple_PTRCONTENTS";
-  char name5[] = "PTRCONTENTS_+_CONTENTSLENGTH";
-  char name6[] = "PTRCONTENTS_+_CONTENTSLENGTH_+_CONTENTTYPE";
-  char name7[] = "FILE1_+_CONTENTTYPE";
-  char name8[] = "FILE1_+_FILE2";
-  char name9[] = "FILE1_+_FILE2_+_FILE3";
-  char name10[] = "ARRAY: FILE1_+_FILE2_+_FILE3";
-  char name11[] = "FILECONTENT";
-  char value1[] = "value for simple COPYCONTENTS";
-  char value2[] = "value for COPYCONTENTS + CONTENTTYPE";
-  char value3[] = "value for PTRNAME + NAMELENGTH + COPYNAME + CONTENTSLENGTH";
-  char value4[] = "value for simple PTRCONTENTS";
-  char value5[] = "value for PTRCONTENTS + CONTENTSLENGTH";
-  char value6[] = "value for PTRCONTENTS + CONTENTSLENGTH + CONTENTTYPE";
-  char value7[] = "formdata.h";
-  char value8[] = "Makefile.b32";
-  char type2[] = "image/gif";
-  char type6[] = "text/plain";
-  char type7[] = "text/html";
-  int name3length = strlen(name3);
-  int value3length = strlen(value3);
-  int value5length = strlen(value5);
-  int value6length = strlen(value6);
-  int errors = 0;
-  CURLcode rc;
-  curl_off_t size;
-  size_t nread;
-  char buffer[4096];
-  struct curl_httppost *httppost=NULL;
-  struct curl_httppost *last_post=NULL;
-  struct curl_forms forms[4];
-
-  struct FormData *form;
-  struct Form formread;
-
-  (void) argc;
-  (void) argv;
-
-  Curl_srand();         /* Because we do not call curl_global_init() here. */
-
-  if(FormAddTest("simple COPYCONTENTS test", &httppost, &last_post,
-                  CURLFORM_COPYNAME, name1, CURLFORM_COPYCONTENTS, value1,
-                  CURLFORM_END))
-    ++errors;
-  if(FormAddTest("COPYCONTENTS  + CONTENTTYPE test", &httppost, &last_post,
-                  CURLFORM_COPYNAME, name2, CURLFORM_COPYCONTENTS, value2,
-                  CURLFORM_CONTENTTYPE, type2, CURLFORM_END))
-    ++errors;
-  /* make null character at start to check that contentslength works
-     correctly */
-  name3[1] = '\0';
-  value3[1] = '\0';
-  if(FormAddTest("PTRNAME + NAMELENGTH + COPYNAME + CONTENTSLENGTH test",
-                  &httppost, &last_post,
-                  CURLFORM_PTRNAME, name3, CURLFORM_COPYCONTENTS, value3,
-                  CURLFORM_CONTENTSLENGTH, value3length,
-                  CURLFORM_NAMELENGTH, name3length, CURLFORM_END))
-    ++errors;
-  if(FormAddTest("simple PTRCONTENTS test", &httppost, &last_post,
-                  CURLFORM_COPYNAME, name4, CURLFORM_PTRCONTENTS, value4,
-                  CURLFORM_END))
-    ++errors;
-  /* make null character at start to check that contentslength works
-     correctly */
-  value5[1] = '\0';
-  if(FormAddTest("PTRCONTENTS + CONTENTSLENGTH test", &httppost, &last_post,
-                  CURLFORM_COPYNAME, name5, CURLFORM_PTRCONTENTS, value5,
-                  CURLFORM_CONTENTSLENGTH, value5length, CURLFORM_END))
-    ++errors;
-  /* make null character at start to check that contentslength works
-     correctly */
-  value6[1] = '\0';
-  if(FormAddTest("PTRCONTENTS + CONTENTSLENGTH + CONTENTTYPE test",
-                  &httppost, &last_post,
-                  CURLFORM_COPYNAME, name6, CURLFORM_PTRCONTENTS, value6,
-                  CURLFORM_CONTENTSLENGTH, value6length,
-                  CURLFORM_CONTENTTYPE, type6, CURLFORM_END))
-    ++errors;
-  if(FormAddTest("FILE + CONTENTTYPE test", &httppost, &last_post,
-                  CURLFORM_COPYNAME, name7, CURLFORM_FILE, value7,
-                  CURLFORM_CONTENTTYPE, type7, CURLFORM_END))
-    ++errors;
-  if(FormAddTest("FILE1 + FILE2 test", &httppost, &last_post,
-                  CURLFORM_COPYNAME, name8, CURLFORM_FILE, value7,
-                  CURLFORM_FILE, value8, CURLFORM_END))
-    ++errors;
-  if(FormAddTest("FILE1 + FILE2 + FILE3 test", &httppost, &last_post,
-                  CURLFORM_COPYNAME, name9, CURLFORM_FILE, value7,
-                  CURLFORM_FILE, value8, CURLFORM_FILE, value7, CURLFORM_END))
-    ++errors;
-  forms[0].option = CURLFORM_FILE;
-  forms[0].value  = value7;
-  forms[1].option = CURLFORM_FILE;
-  forms[1].value  = value8;
-  forms[2].option = CURLFORM_FILE;
-  forms[2].value  = value7;
-  forms[3].option  = CURLFORM_END;
-  if(FormAddTest("FILE1 + FILE2 + FILE3 ARRAY test", &httppost, &last_post,
-                  CURLFORM_COPYNAME, name10, CURLFORM_ARRAY, forms,
-                  CURLFORM_END))
-    ++errors;
-  if(FormAddTest("FILECONTENT test", &httppost, &last_post,
-                  CURLFORM_COPYNAME, name11, CURLFORM_FILECONTENT, value7,
-                  CURLFORM_END))
-    ++errors;
-
-  rc = Curl_getFormData(&form, httppost, NULL, &size);
-  if(rc != CURLE_OK) {
-    if(rc != CURLE_READ_ERROR) {
-      const char *errortext = curl_easy_strerror(rc);
-      fprintf(stdout, "\n==> Curl_getFormData error: %s\n", errortext);
-    }
-    return 0;
-  }
-
-  Curl_FormInit(&formread, form);
-
-  do {
-    nread = Curl_FormReader(buffer, 1, sizeof(buffer),
-                            (FILE *)&formread);
-
-    if(nread < 1)
-      break;
-    fwrite(buffer, nread, 1, stdout);
-  } while(1);
-
-  fprintf(stdout, "size: ");
-  fprintf(stdout, "%" FORMAT_OFF_T, size);
-  fprintf(stdout, "\n");
-  if(errors)
-    fprintf(stdout, "\n==> %d Test(s) failed!\n", errors);
-  else
-    fprintf(stdout, "\nAll Tests seem to have worked (please check output)\n");
-
-  return 0;
-}
-
-#endif  /* _FORM_DEBUG */
-
-#else  /* CURL_DISABLE_HTTP */
-CURLFORMcode curl_formadd(struct curl_httppost **httppost,
-                          struct curl_httppost **last_post,
-                          ...)
-{
-  (void)httppost;
-  (void)last_post;
-  return CURL_FORMADD_DISABLED;
-}
-
-int curl_formget(struct curl_httppost *form, void *arg,
-                 curl_formget_callback append)
-{
-  (void) form;
-  (void) arg;
-  (void) append;
-  return CURL_FORMADD_DISABLED;
-}
-
-void curl_formfree(struct curl_httppost *form)
-{
-  (void)form;
-  /* does nothing HTTP is disabled */
-}
-
-#endif  /* CURL_DISABLE_HTTP */
-
-#if !defined(CURL_DISABLE_HTTP) || defined(USE_SSLEAY)
-
-/*
- * Curl_FormBoundary() creates a suitable boundary string and returns an
- * allocated one. This is also used by SSL-code so it must be present even
- * if HTTP is disabled!
- */
-char *Curl_FormBoundary(void)
-{
-  char *retstring;
-  size_t i;
-
-  static const char table16[]="0123456789abcdef";
-
-  retstring = malloc(BOUNDARY_LENGTH+1);
-
-  if(!retstring)
-    return NULL; /* failed */
-
-  strcpy(retstring, "----------------------------");
-
-  for(i=strlen(retstring); i<BOUNDARY_LENGTH; i++)
-    retstring[i] = table16[Curl_rand()%16];
-
-  /* 28 dashes and 12 hexadecimal digits makes 12^16 (184884258895036416)
-     combinations */
-  retstring[BOUNDARY_LENGTH]=0; /* zero terminate */
-
-  return retstring;
-}
-
-#endif  /* !defined(CURL_DISABLE_HTTP) || defined(USE_SSLEAY) */
diff --git a/src/other/curl/lib/formdata.h b/src/other/curl/lib/formdata.h
deleted file mode 100644
index 0c9db44..0000000
--- a/src/other/curl/lib/formdata.h
+++ /dev/null
@@ -1,98 +0,0 @@
-#ifndef HEADER_CURL_FORMDATA_H
-#define HEADER_CURL_FORMDATA_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-enum formtype {
-  FORM_DATA,    /* form metadata (convert to network encoding if necessary) */
-  FORM_CONTENT, /* form content  (never convert) */
-  FORM_CALLBACK, /* 'line' points to the custom pointer we pass to the callback
-                  */
-  FORM_FILE     /* 'line' points to a file name we should read from
-                   to create the form data (never convert) */
-};
-
-/* plain and simple linked list with lines to send */
-struct FormData {
-  struct FormData *next;
-  enum formtype type;
-  char *line;
-  size_t length;
-};
-
-struct Form {
-  struct FormData *data; /* current form line to send */
-  size_t sent;           /* number of bytes of the current line that has
-                            already been sent in a previous invoke */
-  FILE *fp;              /* file to read from */
-  curl_read_callback fread_func; /* fread callback pointer */
-};
-
-/* used by FormAdd for temporary storage */
-typedef struct FormInfo {
-  char *name;
-  bool name_alloc;
-  size_t namelength;
-  char *value;
-  bool value_alloc;
-  size_t contentslength;
-  char *contenttype;
-  bool contenttype_alloc;
-  long flags;
-  char *buffer;      /* pointer to existing buffer used for file upload */
-  size_t bufferlength;
-  char *showfilename; /* The file name to show. If not set, the actual
-                         file name will be used */
-  bool showfilename_alloc;
-  char *userp;        /* pointer for the read callback */
-  struct curl_slist* contentheader;
-  struct FormInfo *more;
-} FormInfo;
-
-int Curl_FormInit(struct Form *form, struct FormData *formdata );
-
-CURLcode
-Curl_getFormData(struct FormData **,
-                 struct curl_httppost *post,
-                 const char *custom_contenttype,
-                 curl_off_t *size);
-
-/* fread() emulation */
-size_t Curl_FormReader(char *buffer,
-                       size_t size,
-                       size_t nitems,
-                       FILE *mydata);
-
-/*
- * Curl_formpostheader() returns the first line of the formpost, the
- * request-header part (which is not part of the request-body like the rest of
- * the post).
- */
-char *Curl_formpostheader(void *formp, size_t *len);
-
-char *Curl_FormBoundary(void);
-
-void Curl_formclean(struct FormData **);
-
-CURLcode Curl_formconvert(struct SessionHandle *, struct FormData *);
-
-#endif /* HEADER_CURL_FORMDATA_H */
diff --git a/src/other/curl/lib/ftp.c b/src/other/curl/lib/ftp.c
deleted file mode 100644
index f821d12..0000000
--- a/src/other/curl/lib/ftp.c
+++ /dev/null
@@ -1,3962 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_FTP
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <ctype.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_UTSNAME_H
-#include <sys/utsname.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#endif
-
-#if (defined(NETWARE) && defined(__NOVELL_LIBC__))
-#undef in_addr_t
-#define in_addr_t unsigned long
-#endif
-
-#include <curl/curl.h>
-#include "urldata.h"
-#include "sendf.h"
-#include "easyif.h" /* for Curl_convert_... prototypes */
-
-#include "if2ip.h"
-#include "hostip.h"
-#include "progress.h"
-#include "transfer.h"
-#include "escape.h"
-#include "http.h" /* for HTTP proxy tunnel stuff */
-#include "socks.h"
-#include "ftp.h"
-
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-#include "krb4.h"
-#endif
-
-#include "strtoofft.h"
-#include "strequal.h"
-#include "sslgen.h"
-#include "connect.h"
-#include "strerror.h"
-#include "inet_ntop.h"
-#include "inet_pton.h"
-#include "select.h"
-#include "parsedate.h" /* for the week day and month names */
-#include "sockaddr.h" /* required for Curl_sockaddr_storage */
-#include "multiif.h"
-#include "url.h"
-#include "rawstr.h"
-#include "speedcheck.h"
-#include "warnless.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#ifndef NI_MAXHOST
-#define NI_MAXHOST 1025
-#endif
-#ifndef INET_ADDRSTRLEN
-#define INET_ADDRSTRLEN 16
-#endif
-
-#ifdef CURL_DISABLE_VERBOSE_STRINGS
-#define ftp_pasv_verbose(a,b,c,d)  do { } while(0)
-#endif
-
-/* Local API functions */
-static CURLcode ftp_sendquote(struct connectdata *conn,
-                              struct curl_slist *quote);
-static CURLcode ftp_quit(struct connectdata *conn);
-static CURLcode ftp_parse_url_path(struct connectdata *conn);
-static CURLcode ftp_regular_transfer(struct connectdata *conn, bool *done);
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-static void ftp_pasv_verbose(struct connectdata *conn,
-                             Curl_addrinfo *ai,
-                             char *newhost, /* ascii version */
-                             int port);
-#endif
-static CURLcode ftp_state_post_rest(struct connectdata *conn);
-static CURLcode ftp_state_post_cwd(struct connectdata *conn);
-static CURLcode ftp_state_quote(struct connectdata *conn,
-                                bool init, ftpstate instate);
-static CURLcode ftp_nb_type(struct connectdata *conn,
-                            bool ascii, ftpstate newstate);
-static int ftp_need_type(struct connectdata *conn,
-                         bool ascii);
-static CURLcode ftp_do(struct connectdata *conn, bool *done);
-static CURLcode ftp_done(struct connectdata *conn,
-                         CURLcode, bool premature);
-static CURLcode ftp_connect(struct connectdata *conn, bool *done);
-static CURLcode ftp_disconnect(struct connectdata *conn);
-static CURLcode ftp_nextconnect(struct connectdata *conn);
-static CURLcode ftp_multi_statemach(struct connectdata *conn, bool *done);
-static int ftp_getsock(struct connectdata *conn,
-                       curl_socket_t *socks,
-                       int numsocks);
-static CURLcode ftp_doing(struct connectdata *conn,
-                          bool *dophase_done);
-static CURLcode ftp_setup_connection(struct connectdata * conn);
-
-/* easy-to-use macro: */
-#define FTPSENDF(x,y,z)    if((result = Curl_ftpsendf(x,y,z)) != CURLE_OK) \
-                              return result
-#define PPSENDF(x,y,z)  if((result = Curl_pp_sendf(x,y,z)) != CURLE_OK) \
-                              return result
-
-
-/*
- * FTP protocol handler.
- */
-
-const struct Curl_handler Curl_handler_ftp = {
-  "FTP",                           /* scheme */
-  ftp_setup_connection,            /* setup_connection */
-  ftp_do,                          /* do_it */
-  ftp_done,                        /* done */
-  ftp_nextconnect,                 /* do_more */
-  ftp_connect,                     /* connect_it */
-  ftp_multi_statemach,             /* connecting */
-  ftp_doing,                       /* doing */
-  ftp_getsock,                     /* proto_getsock */
-  ftp_getsock,                     /* doing_getsock */
-  ZERO_NULL,                       /* perform_getsock */
-  ftp_disconnect,                  /* disconnect */
-  PORT_FTP,                        /* defport */
-  PROT_FTP                         /* protocol */
-};
-
-
-#ifdef USE_SSL
-/*
- * FTPS protocol handler.
- */
-
-const struct Curl_handler Curl_handler_ftps = {
-  "FTPS",                          /* scheme */
-  ftp_setup_connection,            /* setup_connection */
-  ftp_do,                          /* do_it */
-  ftp_done,                        /* done */
-  ftp_nextconnect,                 /* do_more */
-  ftp_connect,                     /* connect_it */
-  ftp_multi_statemach,             /* connecting */
-  ftp_doing,                       /* doing */
-  ftp_getsock,                     /* proto_getsock */
-  ftp_getsock,                     /* doing_getsock */
-  ZERO_NULL,                       /* perform_getsock */
-  ftp_disconnect,                  /* disconnect */
-  PORT_FTPS,                       /* defport */
-  PROT_FTP | PROT_FTPS | PROT_SSL  /* protocol */
-};
-#endif
-
-#ifndef CURL_DISABLE_HTTP
-/*
- * HTTP-proxyed FTP protocol handler.
- */
-
-static const struct Curl_handler Curl_handler_ftp_proxy = {
-  "FTP",                                /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_http,                            /* do_it */
-  Curl_http_done,                       /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_FTP,                             /* defport */
-  PROT_HTTP                             /* protocol */
-};
-
-
-#ifdef USE_SSL
-/*
- * HTTP-proxyed FTPS protocol handler.
- */
-
-static const struct Curl_handler Curl_handler_ftps_proxy = {
-  "FTPS",                               /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_http,                            /* do_it */
-  Curl_http_done,                       /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_FTPS,                            /* defport */
-  PROT_HTTP                             /* protocol */
-};
-#endif
-#endif
-
-
-/*
- * NOTE: back in the old days, we added code in the FTP code that made NOBODY
- * requests on files respond with headers passed to the client/stdout that
- * looked like HTTP ones.
- *
- * This approach is not very elegant, it causes confusion and is error-prone.
- * It is subject for removal at the next (or at least a future) soname bump.
- * Until then you can test the effects of the removal by undefining the
- * following define named CURL_FTP_HTTPSTYLE_HEAD.
- */
-#define CURL_FTP_HTTPSTYLE_HEAD 1
-
-static void freedirs(struct ftp_conn *ftpc)
-{
-  int i;
-  if(ftpc->dirs) {
-    for (i=0; i < ftpc->dirdepth; i++){
-      if(ftpc->dirs[i]) {
-        free(ftpc->dirs[i]);
-        ftpc->dirs[i]=NULL;
-      }
-    }
-    free(ftpc->dirs);
-    ftpc->dirs = NULL;
-    ftpc->dirdepth = 0;
-  }
-  if(ftpc->file) {
-    free(ftpc->file);
-    ftpc->file = NULL;
-  }
-}
-
-/* Returns non-zero if the given string contains CR (\r) or LF (\n),
-   which are not allowed within RFC 959 <string>.
-   Note: The input string is in the client's encoding which might
-   not be ASCII, so escape sequences \r & \n must be used instead
-   of hex values 0x0d & 0x0a.
-*/
-static bool isBadFtpString(const char *string)
-{
-  return (bool)((NULL != strchr(string, '\r')) ||
-                (NULL != strchr(string, '\n')));
-}
-
-/***********************************************************************
- *
- * AllowServerConnect()
- *
- * When we've issue the PORT command, we have told the server to connect
- * to us. This function will sit and wait here until the server has
- * connected.
- *
- */
-static CURLcode AllowServerConnect(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  curl_socket_t sock = conn->sock[SECONDARYSOCKET];
-  long timeout_ms;
-  long interval_ms;
-  curl_socket_t s = CURL_SOCKET_BAD;
-#ifdef ENABLE_IPV6
-  struct Curl_sockaddr_storage add;
-#else
-  struct sockaddr_in add;
-#endif
-  curl_socklen_t size = (curl_socklen_t) sizeof(add);
-
-  for(;;) {
-    timeout_ms = Curl_timeleft(conn, NULL, TRUE);
-
-    if(timeout_ms <= 0) {
-      /* if a timeout was already reached, bail out */
-      failf(data, "Timeout while waiting for server connect");
-      return CURLE_OPERATION_TIMEDOUT;
-    }
-
-    interval_ms = 1000;  /* use 1 second timeout intervals */
-    if(timeout_ms < interval_ms)
-      interval_ms = timeout_ms;
-
-    switch (Curl_socket_ready(sock, CURL_SOCKET_BAD, (int)interval_ms)) {
-    case -1: /* error */
-      /* let's die here */
-      failf(data, "Error while waiting for server connect");
-      return CURLE_FTP_PORT_FAILED;
-    case 0:  /* timeout */
-      break; /* loop */
-    default:
-      /* we have received data here */
-      if(0 == getsockname(sock, (struct sockaddr *) &add, &size)) {
-        size = sizeof(add);
-
-        s=accept(sock, (struct sockaddr *) &add, &size);
-      }
-      sclose(sock); /* close the first socket */
-
-      if(CURL_SOCKET_BAD == s) {
-        failf(data, "Error accept()ing server connect");
-        return CURLE_FTP_PORT_FAILED;
-      }
-      infof(data, "Connection accepted from server\n");
-
-      conn->sock[SECONDARYSOCKET] = s;
-      curlx_nonblock(s, TRUE); /* enable non-blocking */
-      return CURLE_OK;
-    } /* switch() */
-  }
-  /* never reaches this point */
-}
-
-/* macro to check for a three-digit ftp status code at the start of the
-   given string */
-#define STATUSCODE(line) (ISDIGIT(line[0]) && ISDIGIT(line[1]) &&       \
-                          ISDIGIT(line[2]))
-
-/* macro to check for the last line in an FTP server response */
-#define LASTLINE(line) (STATUSCODE(line) && (' ' == line[3]))
-
-static int ftp_endofresp(struct pingpong *pp,
-                         int *code)
-{
-  char *line = pp->linestart_resp;
-  size_t len = pp->nread_resp;
-
-  if((len > 3) && LASTLINE(line)) {
-    *code = atoi(line);
-    return 1;
-  }
-  return 0;
-}
-
-static CURLcode ftp_readresp(curl_socket_t sockfd,
-                             struct pingpong *pp,
-                             int *ftpcode, /* return the ftp-code if done */
-                             size_t *size) /* size of the response */
-{
-  struct connectdata *conn = pp->conn;
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-  struct SessionHandle *data = conn->data;
-  char * const buf = data->state.buffer;
-#endif
-  CURLcode result = CURLE_OK;
-  int code;
-
-  result = Curl_pp_readresp(sockfd, pp, &code, size);
-
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-  /* handle the security-oriented responses 6xx ***/
-  /* FIXME: some errorchecking perhaps... ***/
-  switch(code) {
-  case 631:
-    code = Curl_sec_read_msg(conn, buf, prot_safe);
-    break;
-  case 632:
-    code = Curl_sec_read_msg(conn, buf, prot_private);
-    break;
-  case 633:
-    code = Curl_sec_read_msg(conn, buf, prot_confidential);
-    break;
-  default:
-    /* normal ftp stuff we pass through! */
-    break;
-  }
-#endif
-
-  /* store the latest code for later retrieval */
-  conn->data->info.httpcode=code;
-
-  if(ftpcode)
-    *ftpcode = code;
-
-  return result;
-}
-
-/* --- parse FTP server responses --- */
-
-/*
- * Curl_GetFTPResponse() is a BLOCKING function to read the full response
- * from a server after a command.
- *
- */
-
-CURLcode Curl_GetFTPResponse(ssize_t *nreadp, /* return number of bytes read */
-                             struct connectdata *conn,
-                             int *ftpcode) /* return the ftp-code */
-{
-  /*
-   * We cannot read just one byte per read() and then go back to select() as
-   * the OpenSSL read() doesn't grok that properly.
-   *
-   * Alas, read as much as possible, split up into lines, use the ending
-   * line in a response or continue reading.  */
-
-  curl_socket_t sockfd = conn->sock[FIRSTSOCKET];
-  long timeout;              /* timeout in milliseconds */
-  long interval_ms;
-  struct SessionHandle *data = conn->data;
-  CURLcode result = CURLE_OK;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  struct pingpong *pp = &ftpc->pp;
-  size_t nread;
-  int cache_skip=0;
-  int value_to_be_ignored=0;
-
-  if(ftpcode)
-    *ftpcode = 0; /* 0 for errors */
-  else
-    /* make the pointer point to something for the rest of this function */
-    ftpcode = &value_to_be_ignored;
-
-  *nreadp=0;
-
-  while(!*ftpcode && !result) {
-    /* check and reset timeout value every lap */
-    timeout = Curl_pp_state_timeout(pp);
-
-    if(timeout <=0 ) {
-      failf(data, "FTP response timeout");
-      return CURLE_OPERATION_TIMEDOUT; /* already too little time */
-    }
-
-    interval_ms = 1000;  /* use 1 second timeout intervals */
-    if(timeout < interval_ms)
-      interval_ms = timeout;
-
-    /*
-     * Since this function is blocking, we need to wait here for input on the
-     * connection and only then we call the response reading function. We do
-     * timeout at least every second to make the timeout check run.
-     *
-     * A caution here is that the ftp_readresp() function has a cache that may
-     * contain pieces of a response from the previous invoke and we need to
-     * make sure we don't just wait for input while there is unhandled data in
-     * that cache. But also, if the cache is there, we call ftp_readresp() and
-     * the cache wasn't good enough to continue we must not just busy-loop
-     * around this function.
-     *
-     */
-
-    if(pp->cache && (cache_skip < 2)) {
-      /*
-       * There's a cache left since before. We then skipping the wait for
-       * socket action, unless this is the same cache like the previous round
-       * as then the cache was deemed not enough to act on and we then need to
-       * wait for more data anyway.
-       */
-    }
-    else {
-      switch (Curl_socket_ready(sockfd, CURL_SOCKET_BAD, (int)interval_ms)) {
-      case -1: /* select() error, stop reading */
-        failf(data, "FTP response aborted due to select/poll error: %d",
-              SOCKERRNO);
-        return CURLE_RECV_ERROR;
-
-      case 0: /* timeout */
-        if(Curl_pgrsUpdate(conn))
-          return CURLE_ABORTED_BY_CALLBACK;
-        continue; /* just continue in our loop for the timeout duration */
-
-      default: /* for clarity */
-        break;
-      }
-    }
-    result = ftp_readresp(sockfd, pp, ftpcode, &nread);
-    if(result)
-      break;
-
-    if(!nread && pp->cache)
-      /* bump cache skip counter as on repeated skips we must wait for more
-         data */
-      cache_skip++;
-    else
-      /* when we got data or there is no cache left, we reset the cache skip
-         counter */
-      cache_skip=0;
-
-    *nreadp += nread;
-
-  } /* while there's buffer left and loop is requested */
-
-  pp->pending_resp = FALSE;
-
-  return result;
-}
-
-/* This is the ONLY way to change FTP state! */
-static void state(struct connectdata *conn,
-                  ftpstate newstate)
-{
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
-  /* for debug purposes */
-  static const char * const names[]={
-    "STOP",
-    "WAIT220",
-    "AUTH",
-    "USER",
-    "PASS",
-    "ACCT",
-    "PBSZ",
-    "PROT",
-    "CCC",
-    "PWD",
-    "SYST",
-    "NAMEFMT",
-    "QUOTE",
-    "RETR_PREQUOTE",
-    "STOR_PREQUOTE",
-    "POSTQUOTE",
-    "CWD",
-    "MKD",
-    "MDTM",
-    "TYPE",
-    "LIST_TYPE",
-    "RETR_TYPE",
-    "STOR_TYPE",
-    "SIZE",
-    "RETR_SIZE",
-    "STOR_SIZE",
-    "REST",
-    "RETR_REST",
-    "PORT",
-    "PRET",
-    "PASV",
-    "LIST",
-    "RETR",
-    "STOR",
-    "QUIT"
-  };
-#endif
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
-  if(ftpc->state != newstate)
-    infof(conn->data, "FTP %p state change from %s to %s\n",
-          ftpc, names[ftpc->state], names[newstate]);
-#endif
-  ftpc->state = newstate;
-}
-
-static CURLcode ftp_state_user(struct connectdata *conn)
-{
-  CURLcode result;
-  struct FTP *ftp = conn->data->state.proto.ftp;
-  /* send USER */
-  PPSENDF(&conn->proto.ftpc.pp, "USER %s", ftp->user?ftp->user:"");
-
-  state(conn, FTP_USER);
-  conn->data->state.ftp_trying_alternative = FALSE;
-
-  return CURLE_OK;
-}
-
-static CURLcode ftp_state_pwd(struct connectdata *conn)
-{
-  CURLcode result;
-
-  /* send PWD to discover our entry point */
-  PPSENDF(&conn->proto.ftpc.pp, "PWD", NULL);
-  state(conn, FTP_PWD);
-
-  return CURLE_OK;
-}
-
-/* For the FTP "protocol connect" and "doing" phases only */
-static int ftp_getsock(struct connectdata *conn,
-                       curl_socket_t *socks,
-                       int numsocks)
-{
-  return Curl_pp_getsock(&conn->proto.ftpc.pp, socks, numsocks);
-}
-
-/* This is called after the FTP_QUOTE state is passed.
-
-   ftp_state_cwd() sends the range of CWD commands to the server to change to
-   the correct directory. It may also need to send MKD commands to create
-   missing ones, if that option is enabled.
-*/
-static CURLcode ftp_state_cwd(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-
-  if(ftpc->cwddone)
-    /* already done and fine */
-    result = ftp_state_post_cwd(conn);
-  else {
-    ftpc->count2 = 0; /* count2 counts failed CWDs */
-
-    /* count3 is set to allow a MKD to fail once. In the case when first CWD
-       fails and then MKD fails (due to another session raced it to create the
-       dir) this then allows for a second try to CWD to it */
-    ftpc->count3 = (conn->data->set.ftp_create_missing_dirs==2)?1:0;
-
-    if(conn->bits.reuse && ftpc->entrypath) {
-      /* This is a re-used connection. Since we change directory to where the
-         transfer is taking place, we must first get back to the original dir
-         where we ended up after login: */
-      ftpc->count1 = 0; /* we count this as the first path, then we add one
-                          for all upcoming ones in the ftp->dirs[] array */
-      PPSENDF(&conn->proto.ftpc.pp, "CWD %s", ftpc->entrypath);
-      state(conn, FTP_CWD);
-    }
-    else {
-      if(ftpc->dirdepth) {
-        ftpc->count1 = 1;
-        /* issue the first CWD, the rest is sent when the CWD responses are
-           received... */
-        PPSENDF(&conn->proto.ftpc.pp, "CWD %s", ftpc->dirs[ftpc->count1 -1]);
-        state(conn, FTP_CWD);
-      }
-      else {
-        /* No CWD necessary */
-        result = ftp_state_post_cwd(conn);
-      }
-    }
-  }
-  return result;
-}
-
-typedef enum {
-  EPRT,
-  PORT,
-  DONE
-} ftpport;
-
-static CURLcode ftp_state_use_port(struct connectdata *conn,
-                                   ftpport fcmd) /* start with this */
-
-{
-  CURLcode result = CURLE_OK;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  struct SessionHandle *data=conn->data;
-  curl_socket_t portsock= CURL_SOCKET_BAD;
-  char myhost[256] = "";
-
-  struct Curl_sockaddr_storage ss;
-  Curl_addrinfo *res, *ai;
-  curl_socklen_t sslen;
-  char hbuf[NI_MAXHOST];
-  struct sockaddr *sa=(struct sockaddr *)&ss;
-  struct sockaddr_in * const sa4 = (void *)sa;
-#ifdef ENABLE_IPV6
-  struct sockaddr_in6 * const sa6 = (void *)sa;
-#endif
-  char tmp[1024];
-  static const char mode[][5] = { "EPRT", "PORT" };
-  int rc;
-  int error;
-  char *host=NULL;
-  char *string_ftpport = data->set.str[STRING_FTPPORT];
-  struct Curl_dns_entry *h=NULL;
-  unsigned short port_min = 0;
-  unsigned short port_max = 0;
-  unsigned short port;
-
-  char *addr = NULL;
-
-  /* Step 1, figure out what is requested,
-   * accepted format :
-   * (ipv4|ipv6|domain|interface)?(:port(-range)?)?
-   */
-
-  if(data->set.str[STRING_FTPPORT] &&
-     (strlen(data->set.str[STRING_FTPPORT]) > 1)) {
-
-#ifdef ENABLE_IPV6
-    size_t addrlen = INET6_ADDRSTRLEN > strlen(string_ftpport) ?
-      INET6_ADDRSTRLEN : strlen(string_ftpport);
-#else
-    size_t addrlen = INET_ADDRSTRLEN > strlen(string_ftpport) ?
-      INET_ADDRSTRLEN : strlen(string_ftpport);
-#endif
-    char *ip_start = string_ftpport;
-    char *ip_end = NULL;
-    char *port_start = NULL;
-    char *port_sep = NULL;
-
-    addr = calloc(addrlen+1, 1);
-    if (!addr)
-      return CURLE_OUT_OF_MEMORY;
-
-#ifdef ENABLE_IPV6
-    if(*string_ftpport == '[') {
-      /* [ipv6]:port(-range) */
-      ip_start = string_ftpport + 1;
-      if((ip_end = strchr(string_ftpport, ']')) != NULL )
-        strncpy(addr, ip_start, ip_end - ip_start);
-    }
-    else
-#endif
-      if( *string_ftpport == ':') {
-        /* :port */
-        ip_end = string_ftpport;
-    }
-    else if( (ip_end = strchr(string_ftpport, ':')) != NULL) {
-        /* either ipv6 or (ipv4|domain|interface):port(-range) */
-#ifdef ENABLE_IPV6
-      if(Curl_inet_pton(AF_INET6, string_ftpport, sa6) == 1) {
-        /* ipv6 */
-        port_min = port_max = 0;
-        strcpy(addr, string_ftpport);
-        ip_end = NULL; /* this got no port ! */
-      } else
-#endif
-      {
-        /* (ipv4|domain|interface):port(-range) */
-        strncpy(addr, string_ftpport, ip_end - ip_start );
-      }
-    }
-    else
-      /* ipv4|interface */
-      strcpy(addr, string_ftpport);
-
-    /* parse the port */
-    if( ip_end != NULL ) {
-      if((port_start = strchr(ip_end, ':')) != NULL) {
-        port_min = curlx_ultous(strtoul(port_start+1, NULL, 10));
-        if((port_sep = strchr(port_start, '-')) != NULL) {
-          port_max = curlx_ultous(strtoul(port_sep + 1, NULL, 10));
-        }
-        else
-          port_max = port_min;
-      }
-    }
-
-    /* correct errors like:
-     *  :1234-1230
-     *  :-4711 , in this case port_min is (unsigned)-1,
-     *           therefore port_min > port_max for all cases
-     *           but port_max = (unsigned)-1
-     */
-    if(port_min > port_max )
-      port_min = port_max = 0;
-
-
-    if(*addr != '\0') {
-      /* attempt to get the address of the given interface name */
-      if(!Curl_if2ip(conn->ip_addr->ai_family, addr,
-                     hbuf, sizeof(hbuf)))
-        /* not an interface, use the given string as host name instead */
-        host = addr;
-      else
-        host = hbuf; /* use the hbuf for host name */
-    }else
-      /* there was only a port(-range) given, default the host */
-      host = NULL;
-  } /* data->set.ftpport */
-
-  if(!host) {
-    /* not an interface and not a host name, get default by extracting
-       the IP from the control connection */
-
-    sslen = sizeof(ss);
-    if(getsockname(conn->sock[FIRSTSOCKET], sa, &sslen)) {
-      failf(data, "getsockname() failed: %s",
-          Curl_strerror(conn, SOCKERRNO) );
-      if (addr)
-        free(addr);
-      return CURLE_FTP_PORT_FAILED;
-    }
-    switch(sa->sa_family)
-    {
-#ifdef ENABLE_IPV6
-      case AF_INET6:
-        Curl_inet_ntop(sa->sa_family, &sa6->sin6_addr, hbuf, sizeof(hbuf));
-        break;
-#endif
-      default:
-        Curl_inet_ntop(sa->sa_family, &sa4->sin_addr, hbuf, sizeof(hbuf));
-        break;
-    }
-    host = hbuf; /* use this host name */
-  }
-
-  /* resolv ip/host to ip */
-  rc = Curl_resolv(conn, host, 0, &h);
-  if(rc == CURLRESOLV_PENDING)
-    rc = Curl_wait_for_resolv(conn, &h);
-  if(h) {
-    res = h->addr;
-    /* when we return from this function, we can forget about this entry
-       to we can unlock it now already */
-    Curl_resolv_unlock(data, h);
-  } /* (h) */
-  else
-    res = NULL; /* failure! */
-
-  if (addr)
-    free(addr);
-
-  if (res == NULL) {
-    failf(data, "Curl_resolv failed, we can not recover!");
-    return CURLE_FTP_PORT_FAILED;
-  }
-
-  /* step 2, create a socket for the requested address */
-
-  portsock = CURL_SOCKET_BAD;
-  error = 0;
-  for (ai = res; ai; ai = ai->ai_next) {
-    /*
-     * Workaround for AIX5 getaddrinfo() problem (it doesn't set ai_socktype):
-     */
-    if(ai->ai_socktype == 0)
-      ai->ai_socktype = conn->socktype;
-
-    portsock = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol);
-    if(portsock == CURL_SOCKET_BAD) {
-      error = SOCKERRNO;
-      continue;
-    }
-    break;
-  }
-  if(!ai) {
-    failf(data, "socket failure: %s", Curl_strerror(conn, error));
-    return CURLE_FTP_PORT_FAILED;
-  }
-
-  /* step 3, bind to a suitable local address */
-
-  memcpy(sa, ai->ai_addr, ai->ai_addrlen);
-  sslen = ai->ai_addrlen;
-
-  for( port = port_min; port <= port_max; ) {
-    if( sa->sa_family == AF_INET )
-      sa4->sin_port = htons(port);
-#ifdef ENABLE_IPV6
-    else
-      sa6->sin6_port = htons(port);
-#endif
-    /* Try binding the given address. */
-    if(bind(portsock, sa, sslen) ) {
-      /* It failed. */
-      error = SOCKERRNO;
-      if(error == EADDRNOTAVAIL) {
-
-        /* The requested bind address is not local.  Use the address used for
-         * the control connection instead and restart the port loop
-         */
-        failf(data, "bind(port=%hu) failed: %s", port,
-              Curl_strerror(conn, error) );
-
-        sslen = sizeof(ss);
-        if(getsockname(conn->sock[FIRSTSOCKET], sa, &sslen)) {
-          failf(data, "getsockname() failed: %s",
-                Curl_strerror(conn, SOCKERRNO) );
-          sclose(portsock);
-          return CURLE_FTP_PORT_FAILED;
-        }
-        port = port_min;
-        continue;
-      }
-      else if(error != EADDRINUSE && error != EACCES) {
-        failf(data, "bind(port=%hu) failed: %s", port,
-              Curl_strerror(conn, error) );
-        sclose(portsock);
-        return CURLE_FTP_PORT_FAILED;
-      }
-    }
-    else
-      break;
-
-    port++;
-  }
-
-  /* maybe all ports were in use already*/
-  if (port > port_max) {
-    failf(data, "bind() failed, we ran out of ports!");
-    sclose(portsock);
-    return CURLE_FTP_PORT_FAILED;
-  }
-
-  /* get the name again after the bind() so that we can extract the
-     port number it uses now */
-  sslen = sizeof(ss);
-  if(getsockname(portsock, (struct sockaddr *)sa, &sslen)) {
-    failf(data, "getsockname() failed: %s",
-          Curl_strerror(conn, SOCKERRNO) );
-    sclose(portsock);
-    return CURLE_FTP_PORT_FAILED;
-  }
-
-  /* step 4, listen on the socket */
-
-  if(listen(portsock, 1)) {
-    failf(data, "socket failure: %s", Curl_strerror(conn, SOCKERRNO));
-    sclose(portsock);
-    return CURLE_FTP_PORT_FAILED;
-  }
-
-  /* step 5, send the proper FTP command */
-
-  /* get a plain printable version of the numerical address to work with
-     below */
-  Curl_printable_address(ai, myhost, sizeof(myhost));
-
-#ifdef ENABLE_IPV6
-  if(!conn->bits.ftp_use_eprt && conn->bits.ipv6)
-    /* EPRT is disabled but we are connected to a IPv6 host, so we ignore the
-       request and enable EPRT again! */
-    conn->bits.ftp_use_eprt = TRUE;
-#endif
-
-  for (; fcmd != DONE; fcmd++) {
-
-    if(!conn->bits.ftp_use_eprt && (EPRT == fcmd))
-      /* if disabled, goto next */
-      continue;
-
-    if((PORT == fcmd) && sa->sa_family != AF_INET)
-      /* PORT is ipv4 only */
-      continue;
-
-    switch (sa->sa_family) {
-    case AF_INET:
-      port = ntohs(sa4->sin_port);
-      break;
-#ifdef ENABLE_IPV6
-    case AF_INET6:
-      port = ntohs(sa6->sin6_port);
-      break;
-#endif
-    default:
-      continue; /* might as well skip this */
-    }
-
-    if(EPRT == fcmd) {
-      /*
-       * Two fine examples from RFC2428;
-       *
-       * EPRT |1|132.235.1.2|6275|
-       *
-       * EPRT |2|1080::8:800:200C:417A|5282|
-       */
-
-      result = Curl_pp_sendf(&ftpc->pp, "%s |%d|%s|%hu|", mode[fcmd],
-                             sa->sa_family == AF_INET?1:2,
-                             myhost, port);
-      if(result)
-        return result;
-      break;
-    }
-    else if(PORT == fcmd) {
-      char *source = myhost;
-      char *dest = tmp;
-
-      /* translate x.x.x.x to x,x,x,x */
-      while(source && *source) {
-        if(*source == '.')
-          *dest=',';
-        else
-          *dest = *source;
-        dest++;
-        source++;
-      }
-      *dest = 0;
-      snprintf(dest, 20, ",%d,%d", (int)(port>>8), (int)(port&0xff));
-
-      result = Curl_pp_sendf(&ftpc->pp, "%s %s", mode[fcmd], tmp);
-      if(result)
-        return result;
-      break;
-    }
-  }
-
-  /* store which command was sent */
-  ftpc->count1 = fcmd;
-
-  /* we set the secondary socket variable to this for now, it is only so that
-     the cleanup function will close it in case we fail before the true
-     secondary stuff is made */
-  if(CURL_SOCKET_BAD != conn->sock[SECONDARYSOCKET])
-    sclose(conn->sock[SECONDARYSOCKET]);
-  conn->sock[SECONDARYSOCKET] = portsock;
-
-  /* this tcpconnect assignment below is a hackish work-around to make the
-     multi interface with active FTP work - as it will not wait for a
-     (passive) connect in Curl_is_connected().
-
-     The *proper* fix is to make sure that the active connection from the
-     server is done in a non-blocking way. Currently, it is still BLOCKING.
-  */
-  conn->bits.tcpconnect = TRUE;
-
-  state(conn, FTP_PORT);
-  return result;
-}
-
-static CURLcode ftp_state_use_pasv(struct connectdata *conn)
-{
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  CURLcode result = CURLE_OK;
-  /*
-    Here's the excecutive summary on what to do:
-
-    PASV is RFC959, expect:
-    227 Entering Passive Mode (a1,a2,a3,a4,p1,p2)
-
-    LPSV is RFC1639, expect:
-    228 Entering Long Passive Mode (4,4,a1,a2,a3,a4,2,p1,p2)
-
-    EPSV is RFC2428, expect:
-    229 Entering Extended Passive Mode (|||port|)
-
-  */
-
-  static const char mode[][5] = { "EPSV", "PASV" };
-  int modeoff;
-
-#ifdef PF_INET6
-  if(!conn->bits.ftp_use_epsv && conn->bits.ipv6)
-    /* EPSV is disabled but we are connected to a IPv6 host, so we ignore the
-       request and enable EPSV again! */
-    conn->bits.ftp_use_epsv = TRUE;
-#endif
-
-  modeoff = conn->bits.ftp_use_epsv?0:1;
-
-  PPSENDF(&ftpc->pp, "%s", mode[modeoff]);
-
-  ftpc->count1 = modeoff;
-  state(conn, FTP_PASV);
-  infof(conn->data, "Connect data stream passively\n");
-
-  return result;
-}
-
-/* REST is the last command in the chain of commands when a "head"-like
-   request is made. Thus, if an actual transfer is to be made this is where
-   we take off for real. */
-static CURLcode ftp_state_post_rest(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct FTP *ftp = conn->data->state.proto.ftp;
-  struct SessionHandle *data = conn->data;
-
-  if(ftp->transfer != FTPTRANSFER_BODY) {
-    /* doesn't transfer any data */
-
-    /* still possibly do PRE QUOTE jobs */
-    state(conn, FTP_RETR_PREQUOTE);
-    result = ftp_state_quote(conn, TRUE, FTP_RETR_PREQUOTE);
-  }
-  else if(data->set.ftp_use_port) {
-    /* We have chosen to use the PORT (or similar) command */
-    result = ftp_state_use_port(conn, EPRT);
-  }
-  else {
-    /* We have chosen (this is default) to use the PASV (or similar) command */
-    if(data->set.ftp_use_pret) {
-      /* The user has requested that we send a PRET command
-         to prepare the server for the upcoming PASV */
-      if(!conn->proto.ftpc.file) {
-        PPSENDF(&conn->proto.ftpc.pp, "PRET %s",
-                data->set.str[STRING_CUSTOMREQUEST]?
-                data->set.str[STRING_CUSTOMREQUEST]:
-                (data->set.ftp_list_only?"NLST":"LIST"));
-      }
-      else if(data->set.upload) {
-        PPSENDF(&conn->proto.ftpc.pp, "PRET STOR %s", conn->proto.ftpc.file);
-      }
-      else {
-        PPSENDF(&conn->proto.ftpc.pp, "PRET RETR %s", conn->proto.ftpc.file);
-      }
-      state(conn, FTP_PRET);
-    }
-    else {
-      result = ftp_state_use_pasv(conn);
-    }
-  }
-  return result;
-}
-
-static CURLcode ftp_state_post_size(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct FTP *ftp = conn->data->state.proto.ftp;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-
-  if((ftp->transfer != FTPTRANSFER_BODY) && ftpc->file) {
-    /* if a "head"-like request is being made (on a file) */
-
-    /* Determine if server can respond to REST command and therefore
-       whether it supports range */
-    PPSENDF(&conn->proto.ftpc.pp, "REST %d", 0);
-
-    state(conn, FTP_REST);
-  }
-  else
-    result = ftp_state_post_rest(conn);
-
-  return result;
-}
-
-static CURLcode ftp_state_post_type(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct FTP *ftp = conn->data->state.proto.ftp;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-
-  if((ftp->transfer == FTPTRANSFER_INFO) && ftpc->file) {
-    /* if a "head"-like request is being made (on a file) */
-
-    /* we know ftpc->file is a valid pointer to a file name */
-    PPSENDF(&ftpc->pp, "SIZE %s", ftpc->file);
-
-    state(conn, FTP_SIZE);
-  }
-  else
-    result = ftp_state_post_size(conn);
-
-  return result;
-}
-
-static CURLcode ftp_state_post_listtype(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-
-  /* If this output is to be machine-parsed, the NLST command might be better
-     to use, since the LIST command output is not specified or standard in any
-     way. It has turned out that the NLST list output is not the same on all
-     servers either... */
-
-  /*
-     if FTPFILE_NOCWD was specified, we are currently in
-     the user's home directory, so we should add the path
-     as argument for the LIST / NLST / or custom command.
-     Whether the server will support this, is uncertain.
-
-     The other ftp_filemethods will CWD into dir/dir/ first and
-     then just do LIST (in that case: nothing to do here)
-  */
-  char *cmd,*lstArg,*slashPos;
-
-  lstArg = NULL;
-  if((data->set.ftp_filemethod == FTPFILE_NOCWD) &&
-     data->state.path &&
-     data->state.path[0] &&
-     strchr(data->state.path,'/')) {
-
-    lstArg = strdup(data->state.path);
-    if(!lstArg)
-      return CURLE_OUT_OF_MEMORY;
-
-    /* Check if path does not end with /, as then we cut off the file part */
-    if(lstArg[strlen(lstArg) - 1] != '/')  {
-
-      /* chop off the file part if format is dir/dir/file */
-      slashPos = strrchr(lstArg,'/');
-      if(slashPos)
-        *(slashPos+1) = '\0';
-    }
-  }
-
-  cmd = aprintf( "%s%s%s",
-                 data->set.str[STRING_CUSTOMREQUEST]?
-                 data->set.str[STRING_CUSTOMREQUEST]:
-                 (data->set.ftp_list_only?"NLST":"LIST"),
-                 lstArg? " ": "",
-                 lstArg? lstArg: "" );
-
-  if(!cmd) {
-    if(lstArg)
-      free(lstArg);
-    return CURLE_OUT_OF_MEMORY;
-  }
-
-  PPSENDF(&conn->proto.ftpc.pp, "%s",cmd);
-
-  if(lstArg)
-    free(lstArg);
-
-  free(cmd);
-
-  state(conn, FTP_LIST);
-
-  return result;
-}
-
-static CURLcode ftp_state_post_retrtype(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-
-  /* We've sent the TYPE, now we must send the list of prequote strings */
-
-  result = ftp_state_quote(conn, TRUE, FTP_RETR_PREQUOTE);
-
-  return result;
-}
-
-static CURLcode ftp_state_post_stortype(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-
-  /* We've sent the TYPE, now we must send the list of prequote strings */
-
-  result = ftp_state_quote(conn, TRUE, FTP_STOR_PREQUOTE);
-
-  return result;
-}
-
-static CURLcode ftp_state_post_mdtm(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct FTP *ftp = conn->data->state.proto.ftp;
-  struct SessionHandle *data = conn->data;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-
-  /* If we have selected NOBODY and HEADER, it means that we only want file
-     information. Which in FTP can't be much more than the file size and
-     date. */
-  if(data->set.opt_no_body && ftpc->file &&
-     ftp_need_type(conn, data->set.prefer_ascii)) {
-    /* The SIZE command is _not_ RFC 959 specified, and therefor many servers
-       may not support it! It is however the only way we have to get a file's
-       size! */
-
-    ftp->transfer = FTPTRANSFER_INFO;
-    /* this means no actual transfer will be made */
-
-    /* Some servers return different sizes for different modes, and thus we
-       must set the proper type before we check the size */
-    result = ftp_nb_type(conn, data->set.prefer_ascii, FTP_TYPE);
-    if(result)
-      return result;
-  }
-  else
-    result = ftp_state_post_type(conn);
-
-  return result;
-}
-
-/* This is called after the CWD commands have been done in the beginning of
-   the DO phase */
-static CURLcode ftp_state_post_cwd(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-
-  /* Requested time of file or time-depended transfer? */
-  if((data->set.get_filetime || data->set.timecondition) && ftpc->file) {
-
-    /* we have requested to get the modified-time of the file, this is a white
-       spot as the MDTM is not mentioned in RFC959 */
-    PPSENDF(&ftpc->pp, "MDTM %s", ftpc->file);
-
-    state(conn, FTP_MDTM);
-  }
-  else
-    result = ftp_state_post_mdtm(conn);
-
-  return result;
-}
-
-
-/* This is called after the TYPE and possible quote commands have been sent */
-static CURLcode ftp_state_ul_setup(struct connectdata *conn,
-                                   bool sizechecked)
-{
-  CURLcode result = CURLE_OK;
-  struct FTP *ftp = conn->data->state.proto.ftp;
-  struct SessionHandle *data = conn->data;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  int seekerr = CURL_SEEKFUNC_OK;
-
-  if((data->state.resume_from && !sizechecked) ||
-     ((data->state.resume_from > 0) && sizechecked)) {
-    /* we're about to continue the uploading of a file */
-    /* 1. get already existing file's size. We use the SIZE command for this
-       which may not exist in the server!  The SIZE command is not in
-       RFC959. */
-
-    /* 2. This used to set REST. But since we can do append, we
-       don't another ftp command. We just skip the source file
-       offset and then we APPEND the rest on the file instead */
-
-    /* 3. pass file-size number of bytes in the source file */
-    /* 4. lower the infilesize counter */
-    /* => transfer as usual */
-
-    if(data->state.resume_from < 0 ) {
-      /* Got no given size to start from, figure it out */
-      PPSENDF(&ftpc->pp, "SIZE %s", ftpc->file);
-      state(conn, FTP_STOR_SIZE);
-      return result;
-    }
-
-    /* enable append */
-    data->set.ftp_append = TRUE;
-
-    /* Let's read off the proper amount of bytes from the input. */
-    if(conn->seek_func) {
-      seekerr = conn->seek_func(conn->seek_client, data->state.resume_from,
-                                SEEK_SET);
-    }
-
-    if(seekerr != CURL_SEEKFUNC_OK) {
-      if(seekerr != CURL_SEEKFUNC_CANTSEEK) {
-        failf(data, "Could not seek stream");
-        return CURLE_FTP_COULDNT_USE_REST;
-      }
-      /* seekerr == CURL_SEEKFUNC_CANTSEEK (can't seek to offset) */
-      else {
-        curl_off_t passed=0;
-        do {
-          curl_off_t readthisamountnow = (data->state.resume_from - passed);
-          curl_off_t actuallyread;
-
-          if(readthisamountnow > BUFSIZE)
-            readthisamountnow = BUFSIZE;
-
-          actuallyread = (curl_off_t)
-            conn->fread_func(data->state.buffer, 1, (size_t)readthisamountnow,
-                             conn->fread_in);
-
-          passed += actuallyread;
-          if((actuallyread <= 0) || (actuallyread > readthisamountnow)) {
-            /* this checks for greater-than only to make sure that the
-               CURL_READFUNC_ABORT return code still aborts */
-            failf(data, "Failed to read data");
-            return CURLE_FTP_COULDNT_USE_REST;
-          }
-        } while(passed < data->state.resume_from);
-      }
-    }
-    /* now, decrease the size of the read */
-    if(data->set.infilesize>0) {
-      data->set.infilesize -= data->state.resume_from;
-
-      if(data->set.infilesize <= 0) {
-        infof(data, "File already completely uploaded\n");
-
-        /* no data to transfer */
-        result=Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-
-        /* Set ->transfer so that we won't get any error in
-         * ftp_done() because we didn't transfer anything! */
-        ftp->transfer = FTPTRANSFER_NONE;
-
-        state(conn, FTP_STOP);
-        return CURLE_OK;
-      }
-    }
-    /* we've passed, proceed as normal */
-  } /* resume_from */
-
-  PPSENDF(&ftpc->pp, data->set.ftp_append?"APPE %s":"STOR %s",
-          ftpc->file);
-
-  state(conn, FTP_STOR);
-
-  return result;
-}
-
-static CURLcode ftp_state_quote(struct connectdata *conn,
-                                bool init,
-                                ftpstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct FTP *ftp = data->state.proto.ftp;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  bool quote=FALSE;
-  struct curl_slist *item;
-
-  switch(instate) {
-  case FTP_QUOTE:
-  default:
-    item = data->set.quote;
-    break;
-  case FTP_RETR_PREQUOTE:
-  case FTP_STOR_PREQUOTE:
-    item = data->set.prequote;
-    break;
-  case FTP_POSTQUOTE:
-    item = data->set.postquote;
-    break;
-  }
-
-  /*
-   * This state uses:
-   * 'count1' to iterate over the commands to send
-   * 'count2' to store wether to allow commands to fail
-   */
-
-  if(init)
-    ftpc->count1 = 0;
-  else
-    ftpc->count1++;
-
-  if(item) {
-    int i = 0;
-
-    /* Skip count1 items in the linked list */
-    while((i< ftpc->count1) && item) {
-      item = item->next;
-      i++;
-    }
-    if(item) {
-      char *cmd = item->data;
-      if(cmd[0] == '*') {
-        cmd++;
-        ftpc->count2 = 1; /* the sent command is allowed to fail */
-      }
-      else
-        ftpc->count2 = 0; /* failure means cancel operation */
-
-      PPSENDF(&ftpc->pp, "%s", cmd);
-      state(conn, instate);
-      quote = TRUE;
-    }
-  }
-
-  if(!quote) {
-    /* No more quote to send, continue to ... */
-    switch(instate) {
-    case FTP_QUOTE:
-    default:
-      result = ftp_state_cwd(conn);
-      break;
-    case FTP_RETR_PREQUOTE:
-      if(ftp->transfer != FTPTRANSFER_BODY)
-        state(conn, FTP_STOP);
-      else {
-        PPSENDF(&ftpc->pp, "SIZE %s", ftpc->file);
-        state(conn, FTP_RETR_SIZE);
-      }
-      break;
-    case FTP_STOR_PREQUOTE:
-      result = ftp_state_ul_setup(conn, FALSE);
-      break;
-    case FTP_POSTQUOTE:
-      break;
-    }
-  }
-
-  return result;
-}
-
-static CURLcode ftp_state_pasv_resp(struct connectdata *conn,
-                                    int ftpcode)
-{
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  CURLcode result;
-  struct SessionHandle *data=conn->data;
-  Curl_addrinfo *conninfo;
-  struct Curl_dns_entry *addr=NULL;
-  int rc;
-  unsigned short connectport; /* the local port connect() should use! */
-  unsigned short newport=0; /* remote port */
-  bool connected;
-
-  /* newhost must be able to hold a full IP-style address in ASCII, which
-     in the IPv6 case means 5*8-1 = 39 letters */
-#define NEWHOST_BUFSIZE 48
-  char newhost[NEWHOST_BUFSIZE];
-  char *str=&data->state.buffer[4];  /* start on the first letter */
-
-  if((ftpc->count1 == 0) &&
-     (ftpcode == 229)) {
-    /* positive EPSV response */
-    char *ptr = strchr(str, '(');
-    if(ptr) {
-      unsigned int num;
-      char separator[4];
-      ptr++;
-      if(5  == sscanf(ptr, "%c%c%c%u%c",
-                      &separator[0],
-                      &separator[1],
-                      &separator[2],
-                      &num,
-                      &separator[3])) {
-        const char sep1 = separator[0];
-        int i;
-
-        /* The four separators should be identical, or else this is an oddly
-           formatted reply and we bail out immediately. */
-        for(i=1; i<4; i++) {
-          if(separator[i] != sep1) {
-            ptr=NULL; /* set to NULL to signal error */
-            break;
-          }
-        }
-        if(ptr) {
-          newport = (unsigned short)(num & 0xffff);
-
-          if(conn->bits.tunnel_proxy ||
-             data->set.proxytype == CURLPROXY_SOCKS5 ||
-             data->set.proxytype == CURLPROXY_SOCKS5_HOSTNAME ||
-             data->set.proxytype == CURLPROXY_SOCKS4 ||
-             data->set.proxytype == CURLPROXY_SOCKS4A)
-            /* proxy tunnel -> use other host info because ip_addr_str is the
-               proxy address not the ftp host */
-            snprintf(newhost, sizeof(newhost), "%s", conn->host.name);
-          else
-            /* use the same IP we are already connected to */
-            snprintf(newhost, NEWHOST_BUFSIZE, "%s", conn->ip_addr_str);
-        }
-      }
-      else
-        ptr=NULL;
-    }
-    if(!ptr) {
-      failf(data, "Weirdly formatted EPSV reply");
-      return CURLE_FTP_WEIRD_PASV_REPLY;
-    }
-  }
-  else if((ftpc->count1 == 1) &&
-          (ftpcode == 227)) {
-    /* positive PASV response */
-    int ip[4];
-    int port[2];
-
-    /*
-     * Scan for a sequence of six comma-separated numbers and use them as
-     * IP+port indicators.
-     *
-     * Found reply-strings include:
-     * "227 Entering Passive Mode (127,0,0,1,4,51)"
-     * "227 Data transfer will passively listen to 127,0,0,1,4,51"
-     * "227 Entering passive mode. 127,0,0,1,4,51"
-     */
-    while(*str) {
-      if(6 == sscanf(str, "%d,%d,%d,%d,%d,%d",
-                      &ip[0], &ip[1], &ip[2], &ip[3],
-                      &port[0], &port[1]))
-        break;
-      str++;
-    }
-
-    if(!*str) {
-      failf(data, "Couldn't interpret the 227-response");
-      return CURLE_FTP_WEIRD_227_FORMAT;
-    }
-
-    /* we got OK from server */
-    if(data->set.ftp_skip_ip) {
-      /* told to ignore the remotely given IP but instead use the one we used
-         for the control connection */
-      infof(data, "Skips %d.%d.%d.%d for data connection, uses %s instead\n",
-            ip[0], ip[1], ip[2], ip[3],
-            conn->ip_addr_str);
-      if(conn->bits.tunnel_proxy ||
-          data->set.proxytype == CURLPROXY_SOCKS5 ||
-          data->set.proxytype == CURLPROXY_SOCKS5_HOSTNAME ||
-          data->set.proxytype == CURLPROXY_SOCKS4 ||
-          data->set.proxytype == CURLPROXY_SOCKS4A)
-        /* proxy tunnel -> use other host info because ip_addr_str is the
-           proxy address not the ftp host */
-        snprintf(newhost, sizeof(newhost), "%s", conn->host.name);
-      else
-        snprintf(newhost, sizeof(newhost), "%s", conn->ip_addr_str);
-    }
-    else
-      snprintf(newhost, sizeof(newhost),
-               "%d.%d.%d.%d", ip[0], ip[1], ip[2], ip[3]);
-    newport = (unsigned short)(((port[0]<<8) + port[1]) & 0xffff);
-  }
-  else if(ftpc->count1 == 0) {
-    /* EPSV failed, move on to PASV */
-
-    /* disable it for next transfer */
-    conn->bits.ftp_use_epsv = FALSE;
-    infof(data, "disabling EPSV usage\n");
-
-    PPSENDF(&ftpc->pp, "PASV", NULL);
-    ftpc->count1++;
-    /* remain in the FTP_PASV state */
-    return result;
-  }
-  else {
-    failf(data, "Bad PASV/EPSV response: %03d", ftpcode);
-    return CURLE_FTP_WEIRD_PASV_REPLY;
-  }
-
-  if(data->set.str[STRING_PROXY] && *data->set.str[STRING_PROXY]) {
-    /*
-     * This is a tunnel through a http proxy and we need to connect to the
-     * proxy again here.
-     *
-     * We don't want to rely on a former host lookup that might've expired
-     * now, instead we remake the lookup here and now!
-     */
-    rc = Curl_resolv(conn, conn->proxy.name, (int)conn->port, &addr);
-    if(rc == CURLRESOLV_PENDING)
-      /* BLOCKING */
-      rc = Curl_wait_for_resolv(conn, &addr);
-
-    connectport =
-      (unsigned short)conn->port; /* we connect to the proxy's port */
-
-    if(!addr) {
-      failf(data, "Can't resolve proxy host %s:%hu",
-            conn->proxy.name, connectport);
-      return CURLE_FTP_CANT_GET_HOST;
-    }
-  }
-  else {
-    /* normal, direct, ftp connection */
-    rc = Curl_resolv(conn, newhost, newport, &addr);
-    if(rc == CURLRESOLV_PENDING)
-      /* BLOCKING */
-      rc = Curl_wait_for_resolv(conn, &addr);
-
-    connectport = newport; /* we connect to the remote port */
-
-    if(!addr) {
-      failf(data, "Can't resolve new host %s:%hu", newhost, connectport);
-      return CURLE_FTP_CANT_GET_HOST;
-    }
-  }
-
-  result = Curl_connecthost(conn,
-                            addr,
-                            &conn->sock[SECONDARYSOCKET],
-                            &conninfo,
-                            &connected);
-
-  Curl_resolv_unlock(data, addr); /* we're done using this address */
-
-  if(result && ftpc->count1 == 0 && ftpcode == 229) {
-    infof(data, "got positive EPSV response, but can't connect. "
-          "Disabling EPSV\n");
-    /* disable it for next transfer */
-    conn->bits.ftp_use_epsv = FALSE;
-    data->state.errorbuf = FALSE; /* allow error message to get rewritten */
-    PPSENDF(&ftpc->pp, "PASV", NULL);
-    ftpc->count1++;
-    /* remain in the FTP_PASV state */
-    return result;
- }
-
-  if(result)
-    return result;
-
-  conn->bits.tcpconnect = connected; /* simply TRUE or FALSE */
-
-  /*
-   * When this is used from the multi interface, this might've returned with
-   * the 'connected' set to FALSE and thus we are now awaiting a non-blocking
-   * connect to connect and we should not be "hanging" here waiting.
-   */
-
-  if(data->set.verbose)
-    /* this just dumps information about this second connection */
-    ftp_pasv_verbose(conn, conninfo, newhost, connectport);
-
-  switch(data->set.proxytype) {
-#ifndef CURL_DISABLE_PROXY
-    /* FIX: this MUST wait for a proper connect first if 'connected' is
-     * FALSE */
-  case CURLPROXY_SOCKS5:
-  case CURLPROXY_SOCKS5_HOSTNAME:
-    result = Curl_SOCKS5(conn->proxyuser, conn->proxypasswd, newhost, newport,
-                         SECONDARYSOCKET, conn);
-    break;
-  case CURLPROXY_SOCKS4:
-    result = Curl_SOCKS4(conn->proxyuser, newhost, newport,
-                         SECONDARYSOCKET, conn, FALSE);
-    break;
-  case CURLPROXY_SOCKS4A:
-    result = Curl_SOCKS4(conn->proxyuser, newhost, newport,
-                         SECONDARYSOCKET, conn, TRUE);
-    break;
-#endif /* CURL_DISABLE_PROXY */
-  case CURLPROXY_HTTP:
-  case CURLPROXY_HTTP_1_0:
-    /* do nothing here. handled later. */
-    break;
-  default:
-    failf(data, "unknown proxytype option given");
-    result = CURLE_COULDNT_CONNECT;
-    break;
-  }
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_PROXY)
-  if(conn->bits.tunnel_proxy && conn->bits.httpproxy) {
-    /* FIX: this MUST wait for a proper connect first if 'connected' is
-     * FALSE */
-
-    /* BLOCKING */
-    /* We want "seamless" FTP operations through HTTP proxy tunnel */
-
-    /* Curl_proxyCONNECT is based on a pointer to a struct HTTP at the member
-     * conn->proto.http; we want FTP through HTTP and we have to change the
-     * member temporarily for connecting to the HTTP proxy. After
-     * Curl_proxyCONNECT we have to set back the member to the original struct
-     * FTP pointer
-     */
-    struct HTTP http_proxy;
-    struct FTP *ftp_save = data->state.proto.ftp;
-    memset(&http_proxy, 0, sizeof(http_proxy));
-    data->state.proto.http = &http_proxy;
-
-    result = Curl_proxyCONNECT(conn, SECONDARYSOCKET, newhost, newport);
-
-    data->state.proto.ftp = ftp_save;
-
-    if(CURLE_OK != result)
-      return result;
-  }
-#endif /* !CURL_DISABLE_HTTP && !CURL_DISABLE_PROXY */
-
-  state(conn, FTP_STOP); /* this phase is completed */
-
-  return result;
-}
-
-static CURLcode ftp_state_port_resp(struct connectdata *conn,
-                                    int ftpcode)
-{
-  struct SessionHandle *data = conn->data;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  ftpport fcmd = (ftpport)ftpc->count1;
-  CURLcode result = CURLE_OK;
-
-  if(ftpcode != 200) {
-    /* the command failed */
-
-    if(EPRT == fcmd) {
-      infof(data, "disabling EPRT usage\n");
-      conn->bits.ftp_use_eprt = FALSE;
-    }
-    fcmd++;
-
-    if(fcmd == DONE) {
-      failf(data, "Failed to do PORT");
-      result = CURLE_FTP_PORT_FAILED;
-    }
-    else
-      /* try next */
-      result = ftp_state_use_port(conn, fcmd);
-  }
-  else {
-    infof(data, "Connect data stream actively\n");
-    state(conn, FTP_STOP); /* end of DO phase */
-  }
-
-  return result;
-}
-
-static CURLcode ftp_state_mdtm_resp(struct connectdata *conn,
-                                    int ftpcode)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data=conn->data;
-  struct FTP *ftp = data->state.proto.ftp;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-
-  switch(ftpcode) {
-  case 213:
-    {
-      /* we got a time. Format should be: "YYYYMMDDHHMMSS[.sss]" where the
-         last .sss part is optional and means fractions of a second */
-      int year, month, day, hour, minute, second;
-      char *buf = data->state.buffer;
-      if(6 == sscanf(buf+4, "%04d%02d%02d%02d%02d%02d",
-                     &year, &month, &day, &hour, &minute, &second)) {
-        /* we have a time, reformat it */
-        time_t secs=time(NULL);
-        /* using the good old yacc/bison yuck */
-        snprintf(buf, sizeof(conn->data->state.buffer),
-                 "%04d%02d%02d %02d:%02d:%02d GMT",
-                 year, month, day, hour, minute, second);
-        /* now, convert this into a time() value: */
-        data->info.filetime = (long)curl_getdate(buf, &secs);
-      }
-
-#ifdef CURL_FTP_HTTPSTYLE_HEAD
-      /* If we asked for a time of the file and we actually got one as well,
-         we "emulate" a HTTP-style header in our output. */
-
-      if(data->set.opt_no_body &&
-         ftpc->file &&
-         data->set.get_filetime &&
-         (data->info.filetime>=0) ) {
-        struct tm *tm;
-        time_t filetime = (time_t)data->info.filetime;
-#ifdef HAVE_GMTIME_R
-        struct tm buffer;
-        tm = (struct tm *)gmtime_r(&filetime, &buffer);
-#else
-        tm = gmtime(&filetime);
-#endif
-        /* format: "Tue, 15 Nov 1994 12:45:26" */
-        snprintf(buf, BUFSIZE-1,
-                 "Last-Modified: %s, %02d %s %4d %02d:%02d:%02d GMT\r\n",
-                 Curl_wkday[tm->tm_wday?tm->tm_wday-1:6],
-                 tm->tm_mday,
-                 Curl_month[tm->tm_mon],
-                 tm->tm_year + 1900,
-                 tm->tm_hour,
-                 tm->tm_min,
-                 tm->tm_sec);
-        result = Curl_client_write(conn, CLIENTWRITE_BOTH, buf, 0);
-        if(result)
-          return result;
-      } /* end of a ridiculous amount of conditionals */
-#endif
-    }
-    break;
-  default:
-    infof(data, "unsupported MDTM reply format\n");
-    break;
-  case 550: /* "No such file or directory" */
-    failf(data, "Given file does not exist");
-    result = CURLE_FTP_COULDNT_RETR_FILE;
-    break;
-  }
-
-  if(data->set.timecondition) {
-    if((data->info.filetime > 0) && (data->set.timevalue > 0)) {
-      switch(data->set.timecondition) {
-      case CURL_TIMECOND_IFMODSINCE:
-      default:
-        if(data->info.filetime <= data->set.timevalue) {
-          infof(data, "The requested document is not new enough\n");
-          ftp->transfer = FTPTRANSFER_NONE; /* mark to not transfer data */
-          data->info.timecond = TRUE;
-          state(conn, FTP_STOP);
-          return CURLE_OK;
-        }
-        break;
-      case CURL_TIMECOND_IFUNMODSINCE:
-        if(data->info.filetime > data->set.timevalue) {
-          infof(data, "The requested document is not old enough\n");
-          ftp->transfer = FTPTRANSFER_NONE; /* mark to not transfer data */
-          data->info.timecond = TRUE;
-          state(conn, FTP_STOP);
-          return CURLE_OK;
-        }
-        break;
-      } /* switch */
-    }
-    else {
-      infof(data, "Skipping time comparison\n");
-    }
-  }
-
-  if(!result)
-    result = ftp_state_post_mdtm(conn);
-
-  return result;
-}
-
-static CURLcode ftp_state_type_resp(struct connectdata *conn,
-                                    int ftpcode,
-                                    ftpstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data=conn->data;
-
-  if(ftpcode/100 != 2) {
-    /* "sasserftpd" and "(u)r(x)bot ftpd" both responds with 226 after a
-       successful 'TYPE I'. While that is not as RFC959 says, it is still a
-       positive response code and we allow that. */
-    failf(data, "Couldn't set desired mode");
-    return CURLE_FTP_COULDNT_SET_TYPE;
-  }
-  if(ftpcode != 200)
-    infof(data, "Got a %03d response code instead of the assumed 200\n",
-          ftpcode);
-
-  if(instate == FTP_TYPE)
-    result = ftp_state_post_type(conn);
-  else if(instate == FTP_LIST_TYPE)
-    result = ftp_state_post_listtype(conn);
-  else if(instate == FTP_RETR_TYPE)
-    result = ftp_state_post_retrtype(conn);
-  else if(instate == FTP_STOR_TYPE)
-    result = ftp_state_post_stortype(conn);
-
-  return result;
-}
-
-static CURLcode ftp_state_post_retr_size(struct connectdata *conn,
-                                         curl_off_t filesize)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data=conn->data;
-  struct FTP *ftp = data->state.proto.ftp;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-
-  if(data->set.max_filesize && (filesize > data->set.max_filesize)) {
-    failf(data, "Maximum file size exceeded");
-    return CURLE_FILESIZE_EXCEEDED;
-  }
-  ftp->downloadsize = filesize;
-
-  if(data->state.resume_from) {
-    /* We always (attempt to) get the size of downloads, so it is done before
-       this even when not doing resumes. */
-    if(filesize == -1) {
-      infof(data, "ftp server doesn't support SIZE\n");
-      /* We couldn't get the size and therefore we can't know if there really
-         is a part of the file left to get, although the server will just
-         close the connection when we start the connection so it won't cause
-         us any harm, just not make us exit as nicely. */
-    }
-    else {
-      /* We got a file size report, so we check that there actually is a
-         part of the file left to get, or else we go home.  */
-      if(data->state.resume_from< 0) {
-        /* We're supposed to download the last abs(from) bytes */
-        if(filesize < -data->state.resume_from) {
-          failf(data, "Offset (%" FORMAT_OFF_T
-                ") was beyond file size (%" FORMAT_OFF_T ")",
-                data->state.resume_from, filesize);
-          return CURLE_BAD_DOWNLOAD_RESUME;
-        }
-        /* convert to size to download */
-        ftp->downloadsize = -data->state.resume_from;
-        /* download from where? */
-        data->state.resume_from = filesize - ftp->downloadsize;
-      }
-      else {
-        if(filesize < data->state.resume_from) {
-          failf(data, "Offset (%" FORMAT_OFF_T
-                ") was beyond file size (%" FORMAT_OFF_T ")",
-                data->state.resume_from, filesize);
-          return CURLE_BAD_DOWNLOAD_RESUME;
-        }
-        /* Now store the number of bytes we are expected to download */
-        ftp->downloadsize = filesize-data->state.resume_from;
-      }
-    }
-
-    if(ftp->downloadsize == 0) {
-      /* no data to transfer */
-      result = Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-      infof(data, "File already completely downloaded\n");
-
-      /* Set ->transfer so that we won't get any error in ftp_done()
-       * because we didn't transfer the any file */
-      ftp->transfer = FTPTRANSFER_NONE;
-      state(conn, FTP_STOP);
-      return CURLE_OK;
-    }
-
-    /* Set resume file transfer offset */
-    infof(data, "Instructs server to resume from offset %" FORMAT_OFF_T
-          "\n", data->state.resume_from);
-
-    PPSENDF(&ftpc->pp, "REST %" FORMAT_OFF_T, data->state.resume_from);
-
-    state(conn, FTP_RETR_REST);
-
-  }
-  else {
-    /* no resume */
-    PPSENDF(&ftpc->pp, "RETR %s", ftpc->file);
-    state(conn, FTP_RETR);
-  }
-
-  return result;
-}
-
-static CURLcode ftp_state_size_resp(struct connectdata *conn,
-                                    int ftpcode,
-                                    ftpstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data=conn->data;
-  curl_off_t filesize;
-  char *buf = data->state.buffer;
-
-  /* get the size from the ascii string: */
-  filesize = (ftpcode == 213)?curlx_strtoofft(buf+4, NULL, 0):-1;
-
-  if(instate == FTP_SIZE) {
-#ifdef CURL_FTP_HTTPSTYLE_HEAD
-    if(-1 != filesize) {
-      snprintf(buf, sizeof(data->state.buffer),
-               "Content-Length: %" FORMAT_OFF_T "\r\n", filesize);
-      result = Curl_client_write(conn, CLIENTWRITE_BOTH, buf, 0);
-      if(result)
-        return result;
-    }
-#endif
-    Curl_pgrsSetDownloadSize(data, filesize);
-    result = ftp_state_post_size(conn);
-  }
-  else if(instate == FTP_RETR_SIZE) {
-    Curl_pgrsSetDownloadSize(data, filesize);
-    result = ftp_state_post_retr_size(conn, filesize);
-  }
-  else if(instate == FTP_STOR_SIZE) {
-    data->state.resume_from = filesize;
-    result = ftp_state_ul_setup(conn, TRUE);
-  }
-
-  return result;
-}
-
-static CURLcode ftp_state_rest_resp(struct connectdata *conn,
-                                    int ftpcode,
-                                    ftpstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-
-  switch(instate) {
-  case FTP_REST:
-  default:
-#ifdef CURL_FTP_HTTPSTYLE_HEAD
-    if(ftpcode == 350) {
-      char buffer[24]= { "Accept-ranges: bytes\r\n" };
-      result = Curl_client_write(conn, CLIENTWRITE_BOTH, buffer, 0);
-      if(result)
-        return result;
-    }
-#endif
-    result = ftp_state_post_rest(conn);
-    break;
-
-  case FTP_RETR_REST:
-    if(ftpcode != 350) {
-      failf(conn->data, "Couldn't use REST");
-      result = CURLE_FTP_COULDNT_USE_REST;
-    }
-    else {
-      PPSENDF(&ftpc->pp, "RETR %s", ftpc->file);
-      state(conn, FTP_RETR);
-    }
-    break;
-  }
-
-  return result;
-}
-
-static CURLcode ftp_state_stor_resp(struct connectdata *conn,
-                                    int ftpcode)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct FTP *ftp = data->state.proto.ftp;
-
-  if(ftpcode>=400) {
-    failf(data, "Failed FTP upload: %0d", ftpcode);
-    /* oops, we never close the sockets! */
-    return CURLE_UPLOAD_FAILED;
-  }
-
-  if(data->set.ftp_use_port) {
-    /* BLOCKING */
-    /* PORT means we are now awaiting the server to connect to us. */
-    result = AllowServerConnect(conn);
-    if( result )
-      return result;
-  }
-
-  if(conn->ssl[SECONDARYSOCKET].use) {
-    /* since we only have a plaintext TCP connection here, we must now
-       do the TLS stuff */
-    infof(data, "Doing the SSL/TLS handshake on the data stream\n");
-    /* BLOCKING */
-    result = Curl_ssl_connect(conn, SECONDARYSOCKET);
-    if(result)
-      return result;
-  }
-
-  *(ftp->bytecountp)=0;
-
-  /* When we know we're uploading a specified file, we can get the file
-     size prior to the actual upload. */
-
-  Curl_pgrsSetUploadSize(data, data->set.infilesize);
-
-  /* set the SO_SNDBUF for the secondary socket for those who need it */
-  Curl_sndbufset(conn->sock[SECONDARYSOCKET]);
-
-  result = Curl_setup_transfer(conn, -1, -1, FALSE, NULL, /* no download */
-                               SECONDARYSOCKET, ftp->bytecountp);
-  state(conn, FTP_STOP);
-
-  conn->proto.ftpc.pp.pending_resp = TRUE; /* expect a server response */
-
-  return result;
-}
-
-/* for LIST and RETR responses */
-static CURLcode ftp_state_get_resp(struct connectdata *conn,
-                                    int ftpcode,
-                                    ftpstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct FTP *ftp = data->state.proto.ftp;
-  char *buf = data->state.buffer;
-
-  if((ftpcode == 150) || (ftpcode == 125)) {
-
-    /*
-      A;
-      150 Opening BINARY mode data connection for /etc/passwd (2241
-      bytes).  (ok, the file is being transfered)
-
-      B:
-      150 Opening ASCII mode data connection for /bin/ls
-
-      C:
-      150 ASCII data connection for /bin/ls (137.167.104.91,37445) (0 bytes).
-
-      D:
-      150 Opening ASCII mode data connection for /linux/fisk/kpanelrc (0.0.0.0,0) (545 bytes).
-
-      E:
-      125 Data connection already open; Transfer starting. */
-
-    curl_off_t size=-1; /* default unknown size */
-
-
-    /*
-     * It appears that there are FTP-servers that return size 0 for files when
-     * SIZE is used on the file while being in BINARY mode. To work around
-     * that (stupid) behavior, we attempt to parse the RETR response even if
-     * the SIZE returned size zero.
-     *
-     * Debugging help from Salvatore Sorrentino on February 26, 2003.
-     */
-
-    if((instate != FTP_LIST) &&
-       !data->set.prefer_ascii &&
-       (ftp->downloadsize < 1)) {
-      /*
-       * It seems directory listings either don't show the size or very
-       * often uses size 0 anyway. ASCII transfers may very well turn out
-       * that the transfered amount of data is not the same as this line
-       * tells, why using this number in those cases only confuses us.
-       *
-       * Example D above makes this parsing a little tricky */
-      char *bytes;
-      bytes=strstr(buf, " bytes");
-      if(bytes--) {
-        long in=(long)(bytes-buf);
-        /* this is a hint there is size information in there! ;-) */
-        while(--in) {
-          /* scan for the left parenthesis and break there */
-          if('(' == *bytes)
-            break;
-          /* skip only digits */
-          if(!ISDIGIT(*bytes)) {
-            bytes=NULL;
-            break;
-          }
-          /* one more estep backwards */
-          bytes--;
-        }
-        /* if we have nothing but digits: */
-        if(bytes++) {
-          /* get the number! */
-          size = curlx_strtoofft(bytes, NULL, 0);
-        }
-      }
-    }
-    else if(ftp->downloadsize > -1)
-      size = ftp->downloadsize;
-
-    if(data->set.ftp_use_port) {
-      /* BLOCKING */
-      result = AllowServerConnect(conn);
-      if( result )
-        return result;
-    }
-
-    if(conn->ssl[SECONDARYSOCKET].use) {
-      /* since we only have a plaintext TCP connection here, we must now
-         do the TLS stuff */
-      infof(data, "Doing the SSL/TLS handshake on the data stream\n");
-      result = Curl_ssl_connect(conn, SECONDARYSOCKET);
-      if(result)
-        return result;
-    }
-
-    if(size > data->req.maxdownload && data->req.maxdownload > 0)
-      size = data->req.size = data->req.maxdownload;
-    else if((instate != FTP_LIST) && (data->set.prefer_ascii))
-      size = -1; /* kludge for servers that understate ASCII mode file size */
-
-    infof(data, "Maxdownload = %" FORMAT_OFF_T "\n", data->req.maxdownload);
-
-    if(instate != FTP_LIST)
-      infof(data, "Getting file with size: %" FORMAT_OFF_T "\n", size);
-
-    /* FTP download: */
-    result=Curl_setup_transfer(conn, SECONDARYSOCKET, size, FALSE,
-                               ftp->bytecountp,
-                               -1, NULL); /* no upload here */
-    if(result)
-      return result;
-
-    conn->proto.ftpc.pp.pending_resp = TRUE; /* expect server response */
-    state(conn, FTP_STOP);
-  }
-  else {
-    if((instate == FTP_LIST) && (ftpcode == 450)) {
-      /* simply no matching files in the dir listing */
-      ftp->transfer = FTPTRANSFER_NONE; /* don't download anything */
-      state(conn, FTP_STOP); /* this phase is over */
-    }
-    else {
-      failf(data, "RETR response: %03d", ftpcode);
-      return instate == FTP_RETR && ftpcode == 550?
-        CURLE_REMOTE_FILE_NOT_FOUND:
-        CURLE_FTP_COULDNT_RETR_FILE;
-    }
-  }
-
-  return result;
-}
-
-/* after USER, PASS and ACCT */
-static CURLcode ftp_state_loggedin(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-
-#ifdef HAVE_KRB4
-  if(conn->data->set.krb) {
-    /* We may need to issue a KAUTH here to have access to the files
-     * do it if user supplied a password
-     */
-    if(conn->passwd && *conn->passwd) {
-      /* BLOCKING */
-      result = Curl_krb_kauth(conn);
-      if(result)
-        return result;
-    }
-  }
-#endif
-  if(conn->ssl[FIRSTSOCKET].use) {
-    /* PBSZ = PROTECTION BUFFER SIZE.
-
-    The 'draft-murray-auth-ftp-ssl' (draft 12, page 7) says:
-
-    Specifically, the PROT command MUST be preceded by a PBSZ
-    command and a PBSZ command MUST be preceded by a successful
-    security data exchange (the TLS negotiation in this case)
-
-    ... (and on page 8):
-
-    Thus the PBSZ command must still be issued, but must have a
-    parameter of '0' to indicate that no buffering is taking place
-    and the data connection should not be encapsulated.
-    */
-    PPSENDF(&conn->proto.ftpc.pp, "PBSZ %d", 0);
-    state(conn, FTP_PBSZ);
-  }
-  else {
-    result = ftp_state_pwd(conn);
-  }
-  return result;
-}
-
-/* for USER and PASS responses */
-static CURLcode ftp_state_user_resp(struct connectdata *conn,
-                                    int ftpcode,
-                                    ftpstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct FTP *ftp = data->state.proto.ftp;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  (void)instate; /* no use for this yet */
-
-  /* some need password anyway, and others just return 2xx ignored */
-  if((ftpcode == 331) && (ftpc->state == FTP_USER)) {
-    /* 331 Password required for ...
-       (the server requires to send the user's password too) */
-    PPSENDF(&ftpc->pp, "PASS %s", ftp->passwd?ftp->passwd:"");
-    state(conn, FTP_PASS);
-  }
-  else if(ftpcode/100 == 2) {
-    /* 230 User ... logged in.
-       (the user logged in with or without password) */
-    result = ftp_state_loggedin(conn);
-  }
-  else if(ftpcode == 332) {
-    if(data->set.str[STRING_FTP_ACCOUNT]) {
-      PPSENDF(&ftpc->pp, "ACCT %s", data->set.str[STRING_FTP_ACCOUNT]);
-      state(conn, FTP_ACCT);
-    }
-    else {
-      failf(data, "ACCT requested but none available");
-      result = CURLE_LOGIN_DENIED;
-    }
-  }
-  else {
-    /* All other response codes, like:
-
-    530 User ... access denied
-    (the server denies to log the specified user) */
-
-    if(conn->data->set.str[STRING_FTP_ALTERNATIVE_TO_USER] &&
-        !conn->data->state.ftp_trying_alternative) {
-      /* Ok, USER failed.  Let's try the supplied command. */
-      PPSENDF(&conn->proto.ftpc.pp, "%s",
-              conn->data->set.str[STRING_FTP_ALTERNATIVE_TO_USER]);
-      conn->data->state.ftp_trying_alternative = TRUE;
-      state(conn, FTP_USER);
-      result = CURLE_OK;
-    }
-    else {
-      failf(data, "Access denied: %03d", ftpcode);
-      result = CURLE_LOGIN_DENIED;
-    }
-  }
-  return result;
-}
-
-/* for ACCT response */
-static CURLcode ftp_state_acct_resp(struct connectdata *conn,
-                                    int ftpcode)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  if(ftpcode != 230) {
-    failf(data, "ACCT rejected by server: %03d", ftpcode);
-    result = CURLE_FTP_WEIRD_PASS_REPLY; /* FIX */
-  }
-  else
-    result = ftp_state_loggedin(conn);
-
-  return result;
-}
-
-
-static CURLcode ftp_statemach_act(struct connectdata *conn)
-{
-  CURLcode result;
-  curl_socket_t sock = conn->sock[FIRSTSOCKET];
-  struct SessionHandle *data=conn->data;
-  int ftpcode;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  struct pingpong *pp = &ftpc->pp;
-  static const char ftpauth[][4]  = { "SSL", "TLS" };
-  size_t nread = 0;
-
-  if(pp->sendleft)
-    return Curl_pp_flushsend(pp);
-
-  /* we read a piece of response */
-  result = ftp_readresp(sock, pp, &ftpcode, &nread);
-  if(result)
-    return result;
-
-  if(ftpcode) {
-    /* we have now received a full FTP server response */
-    switch(ftpc->state) {
-    case FTP_WAIT220:
-      if(ftpcode != 220) {
-        failf(data, "Got a %03d ftp-server response when 220 was expected",
-              ftpcode);
-        return CURLE_FTP_WEIRD_SERVER_REPLY;
-      }
-
-      /* We have received a 220 response fine, now we proceed. */
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-      if(data->set.krb) {
-        /* If not anonymous login, try a secure login. Note that this
-           procedure is still BLOCKING. */
-
-        Curl_sec_request_prot(conn, "private");
-        /* We set private first as default, in case the line below fails to
-           set a valid level */
-        Curl_sec_request_prot(conn, data->set.str[STRING_KRB_LEVEL]);
-
-        if(Curl_sec_login(conn) != 0)
-          infof(data, "Logging in with password in cleartext!\n");
-        else
-          infof(data, "Authentication successful\n");
-      }
-#endif
-
-      if(data->set.ftp_ssl && !conn->ssl[FIRSTSOCKET].use) {
-        /* We don't have a SSL/TLS connection yet, but FTPS is
-           requested. Try a FTPS connection now */
-
-        ftpc->count3=0;
-        switch(data->set.ftpsslauth) {
-        case CURLFTPAUTH_DEFAULT:
-        case CURLFTPAUTH_SSL:
-          ftpc->count2 = 1; /* add one to get next */
-          ftpc->count1 = 0;
-          break;
-        case CURLFTPAUTH_TLS:
-          ftpc->count2 = -1; /* subtract one to get next */
-          ftpc->count1 = 1;
-          break;
-        default:
-          failf(data, "unsupported parameter to CURLOPT_FTPSSLAUTH: %d",
-                (int)data->set.ftpsslauth);
-          return CURLE_FAILED_INIT; /* we don't know what to do */
-        }
-        PPSENDF(&ftpc->pp, "AUTH %s", ftpauth[ftpc->count1]);
-        state(conn, FTP_AUTH);
-      }
-      else {
-        result = ftp_state_user(conn);
-        if(result)
-          return result;
-      }
-
-      break;
-
-    case FTP_AUTH:
-      /* we have gotten the response to a previous AUTH command */
-
-      /* RFC2228 (page 5) says:
-       *
-       * If the server is willing to accept the named security mechanism,
-       * and does not require any security data, it must respond with
-       * reply code 234/334.
-       */
-
-      if((ftpcode == 234) || (ftpcode == 334)) {
-        /* Curl_ssl_connect is BLOCKING */
-        result = Curl_ssl_connect(conn, FIRSTSOCKET);
-        if(CURLE_OK == result) {
-          conn->protocol |= PROT_FTPS;
-          conn->ssl[SECONDARYSOCKET].use = FALSE; /* clear-text data */
-          result = ftp_state_user(conn);
-        }
-      }
-      else if(ftpc->count3 < 1) {
-        ftpc->count3++;
-        ftpc->count1 += ftpc->count2; /* get next attempt */
-        result = Curl_pp_sendf(&ftpc->pp, "AUTH %s", ftpauth[ftpc->count1]);
-        /* remain in this same state */
-      }
-      else {
-        if(data->set.ftp_ssl > CURLUSESSL_TRY)
-          /* we failed and CURLUSESSL_CONTROL or CURLUSESSL_ALL is set */
-          result = CURLE_USE_SSL_FAILED;
-        else
-          /* ignore the failure and continue */
-          result = ftp_state_user(conn);
-      }
-
-      if(result)
-        return result;
-      break;
-
-    case FTP_USER:
-    case FTP_PASS:
-      result = ftp_state_user_resp(conn, ftpcode, ftpc->state);
-      break;
-
-    case FTP_ACCT:
-      result = ftp_state_acct_resp(conn, ftpcode);
-      break;
-
-    case FTP_PBSZ:
-      PPSENDF(&ftpc->pp, "PROT %c",
-              data->set.ftp_ssl == CURLUSESSL_CONTROL ? 'C' : 'P');
-      state(conn, FTP_PROT);
-
-      break;
-
-    case FTP_PROT:
-      if(ftpcode/100 == 2)
-        /* We have enabled SSL for the data connection! */
-        conn->ssl[SECONDARYSOCKET].use =
-          (bool)(data->set.ftp_ssl != CURLUSESSL_CONTROL);
-      /* FTP servers typically responds with 500 if they decide to reject
-         our 'P' request */
-      else if(data->set.ftp_ssl > CURLUSESSL_CONTROL)
-        /* we failed and bails out */
-        return CURLE_USE_SSL_FAILED;
-
-      if(data->set.ftp_ccc) {
-        /* CCC - Clear Command Channel
-         */
-        PPSENDF(&ftpc->pp, "CCC", NULL);
-        state(conn, FTP_CCC);
-      }
-      else {
-        result = ftp_state_pwd(conn);
-        if(result)
-          return result;
-      }
-      break;
-
-    case FTP_CCC:
-      if(ftpcode < 500) {
-        /* First shut down the SSL layer (note: this call will block) */
-        result = Curl_ssl_shutdown(conn, FIRSTSOCKET);
-
-        if(result) {
-          failf(conn->data, "Failed to clear the command channel (CCC)");
-          return result;
-        }
-      }
-
-      /* Then continue as normal */
-      result = ftp_state_pwd(conn);
-      if(result)
-        return result;
-      break;
-
-    case FTP_PWD:
-      if(ftpcode == 257) {
-        char *ptr=&data->state.buffer[4];  /* start on the first letter */
-        char *dir;
-        char *store;
-
-        dir = malloc(nread + 1);
-        if(!dir)
-          return CURLE_OUT_OF_MEMORY;
-
-        /* Reply format is like
-           257<space>"<directory-name>"<space><commentary> and the RFC959
-           says
-
-           The directory name can contain any character; embedded
-           double-quotes should be escaped by double-quotes (the
-           "quote-doubling" convention).
-        */
-        if('\"' == *ptr) {
-          /* it started good */
-          ptr++;
-          for (store = dir; *ptr;) {
-            if('\"' == *ptr) {
-              if('\"' == ptr[1]) {
-                /* "quote-doubling" */
-                *store = ptr[1];
-                ptr++;
-              }
-              else {
-                /* end of path */
-                *store = '\0'; /* zero terminate */
-                break; /* get out of this loop */
-              }
-            }
-            else
-              *store = *ptr;
-            store++;
-            ptr++;
-          }
-          if(ftpc->entrypath)
-            free(ftpc->entrypath);
-          ftpc->entrypath =dir; /* remember this */
-          infof(data, "Entry path is '%s'\n", ftpc->entrypath);
-          /* also save it where getinfo can access it: */
-          data->state.most_recent_ftp_entrypath = ftpc->entrypath;
-
-          /* If the path name does not look like an absolute path (i.e.: it
-             does not start with a '/'), we probably need some server-dependent
-             adjustments. For example, this is the case when connecting to
-             an OS400 FTP server: this server supports two name syntaxes,
-             the default one being incompatible with standard pathes. In
-             addition, this server switches automatically to the regular path
-             syntax when one is encountered in a command: this results in
-             having an entrypath in the wrong syntax when later used in CWD.
-               The method used here is to check the server OS: we do it only
-             if the path name looks strange to minimize overhead on other
-             systems. */
-
-          if(!ftpc->server_os && ftpc->entrypath[0] != '/') {
-            PPSENDF(&ftpc->pp, "SYST", NULL);
-            state(conn, FTP_SYST);
-            break;
-          }
-        }
-        else {
-          /* couldn't get the path */
-          free(dir);
-          infof(data, "Failed to figure out path\n");
-        }
-      }
-      state(conn, FTP_STOP); /* we are done with the CONNECT phase! */
-      DEBUGF(infof(data, "protocol connect phase DONE\n"));
-      break;
-
-    case FTP_SYST:
-      if(ftpcode == 215) {
-        char *ptr=&data->state.buffer[4];  /* start on the first letter */
-        char *os;
-        char *store;
-
-        os = malloc(nread + 1);
-        if(!os)
-          return CURLE_OUT_OF_MEMORY;
-
-        /* Reply format is like
-           215<space><OS-name><space><commentary>
-        */
-        while (*ptr == ' ')
-          ptr++;
-        for (store = os; *ptr && *ptr != ' ';)
-          *store++ = *ptr++;
-        *store = '\0'; /* zero terminate */
-        ftpc->server_os = os;
-
-        /* Check for special servers here. */
-
-        if(strequal(ftpc->server_os, "OS/400")) {
-          /* Force OS400 name format 1. */
-          PPSENDF(&ftpc->pp, "SITE NAMEFMT 1", NULL);
-          state(conn, FTP_NAMEFMT);
-          break;
-        }
-      else {
-        /* Nothing special for the target server. */
-       }
-      }
-      else {
-        /* Cannot identify server OS. Continue anyway and cross fingers. */
-      }
-
-      state(conn, FTP_STOP); /* we are done with the CONNECT phase! */
-      DEBUGF(infof(data, "protocol connect phase DONE\n"));
-      break;
-
-    case FTP_NAMEFMT:
-      if(ftpcode == 250) {
-        /* Name format change successful: reload initial path. */
-        ftp_state_pwd(conn);
-        break;
-      }
-
-      state(conn, FTP_STOP); /* we are done with the CONNECT phase! */
-      DEBUGF(infof(data, "protocol connect phase DONE\n"));
-      break;
-
-    case FTP_QUOTE:
-    case FTP_POSTQUOTE:
-    case FTP_RETR_PREQUOTE:
-    case FTP_STOR_PREQUOTE:
-      if((ftpcode >= 400) && !ftpc->count2) {
-        /* failure reponse code, and not allowed to fail */
-        failf(conn->data, "QUOT command failed with %03d", ftpcode);
-        return CURLE_QUOTE_ERROR;
-      }
-      result = ftp_state_quote(conn, FALSE, ftpc->state);
-      if(result)
-        return result;
-
-      break;
-
-    case FTP_CWD:
-      if(ftpcode/100 != 2) {
-        /* failure to CWD there */
-        if(conn->data->set.ftp_create_missing_dirs &&
-           ftpc->count1 && !ftpc->count2) {
-          /* try making it */
-          ftpc->count2++; /* counter to prevent CWD-MKD loops */
-          PPSENDF(&ftpc->pp, "MKD %s", ftpc->dirs[ftpc->count1 - 1]);
-          state(conn, FTP_MKD);
-        }
-        else {
-          /* return failure */
-          failf(data, "Server denied you to change to the given directory");
-          ftpc->cwdfail = TRUE; /* don't remember this path as we failed
-                                   to enter it */
-          return CURLE_REMOTE_ACCESS_DENIED;
-        }
-      }
-      else {
-        /* success */
-        ftpc->count2=0;
-        if(++ftpc->count1 <= ftpc->dirdepth) {
-          /* send next CWD */
-          PPSENDF(&ftpc->pp, "CWD %s", ftpc->dirs[ftpc->count1 - 1]);
-        }
-        else {
-          result = ftp_state_post_cwd(conn);
-          if(result)
-            return result;
-        }
-      }
-      break;
-
-    case FTP_MKD:
-      if((ftpcode/100 != 2) && !ftpc->count3--) {
-        /* failure to MKD the dir */
-        failf(data, "Failed to MKD dir: %03d", ftpcode);
-        return CURLE_REMOTE_ACCESS_DENIED;
-      }
-      state(conn, FTP_CWD);
-      /* send CWD */
-      PPSENDF(&ftpc->pp, "CWD %s", ftpc->dirs[ftpc->count1 - 1]);
-      break;
-
-    case FTP_MDTM:
-      result = ftp_state_mdtm_resp(conn, ftpcode);
-      break;
-
-    case FTP_TYPE:
-    case FTP_LIST_TYPE:
-    case FTP_RETR_TYPE:
-    case FTP_STOR_TYPE:
-      result = ftp_state_type_resp(conn, ftpcode, ftpc->state);
-      break;
-
-    case FTP_SIZE:
-    case FTP_RETR_SIZE:
-    case FTP_STOR_SIZE:
-      result = ftp_state_size_resp(conn, ftpcode, ftpc->state);
-      break;
-
-    case FTP_REST:
-    case FTP_RETR_REST:
-      result = ftp_state_rest_resp(conn, ftpcode, ftpc->state);
-      break;
-
-    case FTP_PRET:
-      if(ftpcode != 200) {
-       /* there only is this one standard OK return code. */
-        failf(data, "PRET command not accepted: %03d", ftpcode);
-        return CURLE_FTP_PRET_FAILED;
-      }
-      result = ftp_state_use_pasv(conn);
-      break;
-
-    case FTP_PASV:
-      result = ftp_state_pasv_resp(conn, ftpcode);
-      break;
-
-    case FTP_PORT:
-      result = ftp_state_port_resp(conn, ftpcode);
-      break;
-
-    case FTP_LIST:
-    case FTP_RETR:
-      result = ftp_state_get_resp(conn, ftpcode, ftpc->state);
-      break;
-
-    case FTP_STOR:
-      result = ftp_state_stor_resp(conn, ftpcode);
-      break;
-
-    case FTP_QUIT:
-      /* fallthrough, just stop! */
-    default:
-      /* internal error */
-      state(conn, FTP_STOP);
-      break;
-    }
-  } /* if(ftpcode) */
-
-  return result;
-}
-
-
-/* called repeatedly until done from multi.c */
-static CURLcode ftp_multi_statemach(struct connectdata *conn,
-                                    bool *done)
-{
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  CURLcode result = Curl_pp_multi_statemach(&ftpc->pp);
-
-  /* Check for the state outside of the Curl_socket_ready() return code checks
-     since at times we are in fact already in this state when this function
-     gets called. */
-  *done = (bool)(ftpc->state == FTP_STOP);
-
-  return result;
-}
-
-static CURLcode ftp_easy_statemach(struct connectdata *conn)
-{
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  struct pingpong *pp = &ftpc->pp;
-  CURLcode result = CURLE_OK;
-
-  while(ftpc->state != FTP_STOP) {
-    result = Curl_pp_easy_statemach(pp);
-    if(result)
-      break;
-  }
-
-  return result;
-}
-
-/*
- * Allocate and initialize the struct FTP for the current SessionHandle.  If
- * need be.
- */
-
-#if defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 910) && \
-    defined(__OPTIMIZE__) && defined(__unix__) && defined(__i386__)
-  /* workaround icc 9.1 optimizer issue */
-#pragma optimize("", off)
-#endif
-
-static CURLcode ftp_init(struct connectdata *conn)
-{
-  struct FTP *ftp;
-
-  if(NULL == conn->data->state.proto.ftp) {
-    conn->data->state.proto.ftp = malloc(sizeof(struct FTP));
-    if(NULL == conn->data->state.proto.ftp)
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-  ftp = conn->data->state.proto.ftp;
-
-  /* get some initial data into the ftp struct */
-  ftp->bytecountp = &conn->data->req.bytecount;
-  ftp->transfer = FTPTRANSFER_BODY;
-  ftp->downloadsize = 0;
-
-  /* No need to duplicate user+password, the connectdata struct won't change
-     during a session, but we re-init them here since on subsequent inits
-     since the conn struct may have changed or been replaced.
-  */
-  ftp->user = conn->user;
-  ftp->passwd = conn->passwd;
-  if(TRUE == isBadFtpString(ftp->user))
-    return CURLE_URL_MALFORMAT;
-  if(TRUE == isBadFtpString(ftp->passwd))
-    return CURLE_URL_MALFORMAT;
-
-  return CURLE_OK;
-}
-
-#if defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 910) && \
-    defined(__OPTIMIZE__) && defined(__unix__) && defined(__i386__)
-  /* workaround icc 9.1 optimizer issue */
-#pragma optimize("", on)
-#endif
-
-/*
- * ftp_connect() should do everything that is to be considered a part of
- * the connection phase.
- *
- * The variable 'done' points to will be TRUE if the protocol-layer connect
- * phase is done when this function returns, or FALSE is not. When called as
- * a part of the easy interface, it will always be TRUE.
- */
-static CURLcode ftp_connect(struct connectdata *conn,
-                                 bool *done) /* see description above */
-{
-  CURLcode result;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  struct SessionHandle *data=conn->data;
-  struct pingpong *pp = &ftpc->pp;
-
-  *done = FALSE; /* default to not done yet */
-
-  /* If there already is a protocol-specific struct allocated for this
-     sessionhandle, deal with it */
-  Curl_reset_reqproto(conn);
-
-  result = ftp_init(conn);
-  if(CURLE_OK != result)
-    return result;
-
-  /* We always support persistant connections on ftp */
-  conn->bits.close = FALSE;
-
-  pp->response_time = RESP_TIMEOUT; /* set default response time-out */
-  pp->statemach_act = ftp_statemach_act;
-  pp->endofresp = ftp_endofresp;
-  pp->conn = conn;
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_PROXY)
-  if(conn->bits.tunnel_proxy && conn->bits.httpproxy) {
-    /* for FTP over HTTP proxy */
-    struct HTTP http_proxy;
-    struct FTP *ftp_save;
-
-    /* BLOCKING */
-    /* We want "seamless" FTP operations through HTTP proxy tunnel */
-
-    /* Curl_proxyCONNECT is based on a pointer to a struct HTTP at the member
-     * conn->proto.http; we want FTP through HTTP and we have to change the
-     * member temporarily for connecting to the HTTP proxy. After
-     * Curl_proxyCONNECT we have to set back the member to the original struct
-     * FTP pointer
-     */
-    ftp_save = data->state.proto.ftp;
-    memset(&http_proxy, 0, sizeof(http_proxy));
-    data->state.proto.http = &http_proxy;
-
-    result = Curl_proxyCONNECT(conn, FIRSTSOCKET,
-                               conn->host.name, conn->remote_port);
-
-    data->state.proto.ftp = ftp_save;
-
-    if(CURLE_OK != result)
-      return result;
-  }
-#endif /* !CURL_DISABLE_HTTP && !CURL_DISABLE_PROXY */
-
-  if(conn->protocol & PROT_FTPS) {
-    /* BLOCKING */
-    /* FTPS is simply ftp with SSL for the control channel */
-    /* now, perform the SSL initialization for this socket */
-    result = Curl_ssl_connect(conn, FIRSTSOCKET);
-    if(result)
-      return result;
-  }
-
-  Curl_pp_init(pp); /* init the generic pingpong data */
-
-  /* When we connect, we start in the state where we await the 220
-     response */
-  state(conn, FTP_WAIT220);
-
-  if(data->state.used_interface == Curl_if_multi)
-    result = ftp_multi_statemach(conn, done);
-  else {
-    result = ftp_easy_statemach(conn);
-    if(!result)
-      *done = TRUE;
-  }
-
-  return result;
-}
-
-/***********************************************************************
- *
- * ftp_done()
- *
- * The DONE function. This does what needs to be done after a single DO has
- * performed.
- *
- * Input argument is already checked for validity.
- */
-static CURLcode ftp_done(struct connectdata *conn, CURLcode status,
-                              bool premature)
-{
-  struct SessionHandle *data = conn->data;
-  struct FTP *ftp = data->state.proto.ftp;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  struct pingpong *pp = &ftpc->pp;
-  ssize_t nread;
-  int ftpcode;
-  CURLcode result=CURLE_OK;
-  bool was_ctl_valid = ftpc->ctl_valid;
-  char *path;
-  const char *path_to_use = data->state.path;
-
-  if(!ftp)
-    /* When the easy handle is removed from the multi while libcurl is still
-     * trying to resolve the host name, it seems that the ftp struct is not
-     * yet initialized, but the removal action calls Curl_done() which calls
-     * this function. So we simply return success if no ftp pointer is set.
-     */
-    return CURLE_OK;
-
-  switch(status) {
-  case CURLE_BAD_DOWNLOAD_RESUME:
-  case CURLE_FTP_WEIRD_PASV_REPLY:
-  case CURLE_FTP_PORT_FAILED:
-  case CURLE_FTP_COULDNT_SET_TYPE:
-  case CURLE_FTP_COULDNT_RETR_FILE:
-  case CURLE_UPLOAD_FAILED:
-  case CURLE_REMOTE_ACCESS_DENIED:
-  case CURLE_FILESIZE_EXCEEDED:
-  case CURLE_REMOTE_FILE_NOT_FOUND:
-  case CURLE_WRITE_ERROR:
-    /* the connection stays alive fine even though this happened */
-    /* fall-through */
-  case CURLE_OK: /* doesn't affect the control connection's status */
-    if(!premature) {
-      ftpc->ctl_valid = was_ctl_valid;
-      break;
-    }
-    /* until we cope better with prematurely ended requests, let them
-     * fallback as if in complete failure */
-  default:       /* by default, an error means the control connection is
-                    wedged and should not be used anymore */
-    ftpc->ctl_valid = FALSE;
-    ftpc->cwdfail = TRUE; /* set this TRUE to prevent us to remember the
-                             current path, as this connection is going */
-    conn->bits.close = TRUE; /* marked for closure */
-    result = status;      /* use the already set error code */
-    break;
-  }
-
-  /* now store a copy of the directory we are in */
-  if(ftpc->prevpath)
-    free(ftpc->prevpath);
-
-  /* get the "raw" path */
-  path = curl_easy_unescape(data, path_to_use, 0, NULL);
-  if(!path) {
-    /* out of memory, but we can limp along anyway (and should try to
-     * since we're in the out of memory cleanup path) */
-    ftpc->prevpath = NULL; /* no path */
-  }
-  else {
-    size_t flen = ftpc->file?strlen(ftpc->file):0; /* file is "raw" already */
-    size_t dlen = strlen(path)-flen;
-    if(!ftpc->cwdfail) {
-      if(dlen && (data->set.ftp_filemethod != FTPFILE_NOCWD)) {
-        ftpc->prevpath = path;
-        if(flen)
-          /* if 'path' is not the whole string */
-          ftpc->prevpath[dlen]=0; /* terminate */
-      }
-      else {
-        /* we never changed dir */
-        ftpc->prevpath=strdup("");
-        free(path);
-      }
-      if(ftpc->prevpath)
-        infof(data, "Remembering we are in dir \"%s\"\n", ftpc->prevpath);
-    }
-    else {
-      ftpc->prevpath = NULL; /* no path */
-      free(path);
-    }
-  }
-  /* free the dir tree and file parts */
-  freedirs(ftpc);
-
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-  Curl_sec_fflush_fd(conn, conn->sock[SECONDARYSOCKET]);
-#endif
-
-  /* shut down the socket to inform the server we're done */
-
-#ifdef _WIN32_WCE
-  shutdown(conn->sock[SECONDARYSOCKET],2);  /* SD_BOTH */
-#endif
-
-  if(conn->sock[SECONDARYSOCKET] != CURL_SOCKET_BAD) {
-    if(conn->ssl[SECONDARYSOCKET].use) {
-      /* The secondary socket is using SSL so we must close down that part
-         first before we close the socket for real */
-      Curl_ssl_close(conn, SECONDARYSOCKET);
-
-      /* Note that we keep "use" set to TRUE since that (next) connection is
-         still requested to use SSL */
-    }
-    if(CURL_SOCKET_BAD != conn->sock[SECONDARYSOCKET]) {
-      sclose(conn->sock[SECONDARYSOCKET]);
-      conn->sock[SECONDARYSOCKET] = CURL_SOCKET_BAD;
-    }
-  }
-
-  if((ftp->transfer == FTPTRANSFER_BODY) && ftpc->ctl_valid &&
-     pp->pending_resp && !premature) {
-    /*
-     * Let's see what the server says about the transfer we just performed,
-     * but lower the timeout as sometimes this connection has died while the
-     * data has been transfered. This happens when doing through NATs etc that
-     * abandon old silent connections.
-     */
-    long old_time = pp->response_time;
-
-    pp->response_time = 60*1000; /* give it only a minute for now */
-    pp->response = Curl_tvnow(); /* timeout relative now */
-
-    result = Curl_GetFTPResponse(&nread, conn, &ftpcode);
-
-    pp->response_time = old_time; /* set this back to previous value */
-
-    if(!nread && (CURLE_OPERATION_TIMEDOUT == result)) {
-      failf(data, "control connection looks dead");
-      ftpc->ctl_valid = FALSE; /* mark control connection as bad */
-      conn->bits.close = TRUE; /* mark for closure */
-    }
-
-    if(result)
-      return result;
-
-    if(!ftpc->dont_check) {
-      /* 226 Transfer complete, 250 Requested file action okay, completed. */
-      if((ftpcode != 226) && (ftpcode != 250)) {
-        failf(data, "server did not report OK, got %d", ftpcode);
-        result = CURLE_PARTIAL_FILE;
-      }
-    }
-  }
-
-  if(result || premature)
-    /* the response code from the transfer showed an error already so no
-       use checking further */
-    ;
-  else if(data->set.upload) {
-    if((-1 != data->set.infilesize) &&
-       (data->set.infilesize != *ftp->bytecountp) &&
-       !data->set.crlf &&
-       (ftp->transfer == FTPTRANSFER_BODY)) {
-      failf(data, "Uploaded unaligned file size (%" FORMAT_OFF_T
-            " out of %" FORMAT_OFF_T " bytes)",
-            *ftp->bytecountp, data->set.infilesize);
-      result = CURLE_PARTIAL_FILE;
-    }
-  }
-  else {
-    if((-1 != data->req.size) &&
-       (data->req.size != *ftp->bytecountp) &&
-#ifdef CURL_DO_LINEEND_CONV
-       /* Most FTP servers don't adjust their file SIZE response for CRLFs, so
-        * we'll check to see if the discrepancy can be explained by the number
-        * of CRLFs we've changed to LFs.
-        */
-       ((data->req.size + data->state.crlf_conversions) !=
-        *ftp->bytecountp) &&
-#endif /* CURL_DO_LINEEND_CONV */
-       (data->req.maxdownload != *ftp->bytecountp)) {
-      failf(data, "Received only partial file: %" FORMAT_OFF_T " bytes",
-            *ftp->bytecountp);
-      result = CURLE_PARTIAL_FILE;
-    }
-    else if(!ftpc->dont_check &&
-            !*ftp->bytecountp &&
-            (data->req.size>0)) {
-      failf(data, "No data was received!");
-      result = CURLE_FTP_COULDNT_RETR_FILE;
-    }
-  }
-
-  /* clear these for next connection */
-  ftp->transfer = FTPTRANSFER_BODY;
-  ftpc->dont_check = FALSE;
-
-  /* Send any post-transfer QUOTE strings? */
-  if(!status && !result && !premature && data->set.postquote)
-    result = ftp_sendquote(conn, data->set.postquote);
-
-  return result;
-}
-
-/***********************************************************************
- *
- * ftp_sendquote()
- *
- * Where a 'quote' means a list of custom commands to send to the server.
- * The quote list is passed as an argument.
- *
- * BLOCKING
- */
-
-static
-CURLcode ftp_sendquote(struct connectdata *conn, struct curl_slist *quote)
-{
-  struct curl_slist *item;
-  ssize_t nread;
-  int ftpcode;
-  CURLcode result;
-
-  item = quote;
-  while(item) {
-    if(item->data) {
-      char *cmd = item->data;
-      bool acceptfail = FALSE;
-
-      /* if a command starts with an asterisk, which a legal FTP command never
-         can, the command will be allowed to fail without it causing any
-         aborts or cancels etc. It will cause libcurl to act as if the command
-         is successful, whatever the server reponds. */
-
-      if(cmd[0] == '*') {
-        cmd++;
-        acceptfail = TRUE;
-      }
-
-      FTPSENDF(conn, "%s", cmd);
-
-      result = Curl_GetFTPResponse(&nread, conn, &ftpcode);
-      if(result)
-        return result;
-
-      if(!acceptfail && (ftpcode >= 400)) {
-        failf(conn->data, "QUOT string not accepted: %s", cmd);
-        return CURLE_QUOTE_ERROR;
-      }
-    }
-
-    item = item->next;
-  }
-
-  return CURLE_OK;
-}
-
-/***********************************************************************
- *
- * ftp_need_type()
- *
- * Returns TRUE if we in the current situation should send TYPE
- */
-static int ftp_need_type(struct connectdata *conn,
-                         bool ascii_wanted)
-{
-  return conn->proto.ftpc.transfertype != (ascii_wanted?'A':'I');
-}
-
-/***********************************************************************
- *
- * ftp_nb_type()
- *
- * Set TYPE. We only deal with ASCII or BINARY so this function
- * sets one of them.
- * If the transfer type is not sent, simulate on OK response in newstate
- */
-static CURLcode ftp_nb_type(struct connectdata *conn,
-                            bool ascii, ftpstate newstate)
-{
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  CURLcode result;
-  char want = (char)(ascii?'A':'I');
-
-  if(ftpc->transfertype == want) {
-    state(conn, newstate);
-    return ftp_state_type_resp(conn, 200, newstate);
-  }
-
-  PPSENDF(&ftpc->pp, "TYPE %c", want);
-  state(conn, newstate);
-
-  /* keep track of our current transfer type */
-  ftpc->transfertype = want;
-  return CURLE_OK;
-}
-
-/***************************************************************************
- *
- * ftp_pasv_verbose()
- *
- * This function only outputs some informationals about this second connection
- * when we've issued a PASV command before and thus we have connected to a
- * possibly new IP address.
- *
- */
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-static void
-ftp_pasv_verbose(struct connectdata *conn,
-                 Curl_addrinfo *ai,
-                 char *newhost, /* ascii version */
-                 int port)
-{
-  char buf[256];
-  Curl_printable_address(ai, buf, sizeof(buf));
-  infof(conn->data, "Connecting to %s (%s) port %d\n", newhost, buf, port);
-}
-#endif
-
-/*
-  Check if this is a range download, and if so, set the internal variables
-  properly.
- */
-
-static CURLcode ftp_range(struct connectdata *conn)
-{
-  curl_off_t from, to;
-  curl_off_t totalsize=-1;
-  char *ptr;
-  char *ptr2;
-  struct SessionHandle *data = conn->data;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-
-  if(data->state.use_range && data->state.range) {
-    from=curlx_strtoofft(data->state.range, &ptr, 0);
-    while(ptr && *ptr && (ISSPACE(*ptr) || (*ptr=='-')))
-      ptr++;
-    to=curlx_strtoofft(ptr, &ptr2, 0);
-    if(ptr == ptr2) {
-      /* we didn't get any digit */
-      to=-1;
-    }
-    if((-1 == to) && (from>=0)) {
-      /* X - */
-      data->state.resume_from = from;
-      DEBUGF(infof(conn->data, "FTP RANGE %" FORMAT_OFF_T " to end of file\n",
-                   from));
-    }
-    else if(from < 0) {
-      /* -Y */
-      totalsize = -from;
-      data->req.maxdownload = -from;
-      data->state.resume_from = from;
-      DEBUGF(infof(conn->data, "FTP RANGE the last %" FORMAT_OFF_T " bytes\n",
-                   totalsize));
-    }
-    else {
-      /* X-Y */
-      totalsize = to-from;
-      data->req.maxdownload = totalsize+1; /* include last byte */
-      data->state.resume_from = from;
-      DEBUGF(infof(conn->data, "FTP RANGE from %" FORMAT_OFF_T
-                   " getting %" FORMAT_OFF_T " bytes\n",
-                   from, data->req.maxdownload));
-    }
-    DEBUGF(infof(conn->data, "range-download from %" FORMAT_OFF_T
-                 " to %" FORMAT_OFF_T ", totally %" FORMAT_OFF_T " bytes\n",
-                 from, to, data->req.maxdownload));
-    ftpc->dont_check = TRUE; /* dont check for successful transfer */
-  }
-  else
-    data->req.maxdownload = -1;
-  return CURLE_OK;
-}
-
-
-/*
- * ftp_nextconnect()
- *
- * This function shall be called when the second FTP (data) connection is
- * connected.
- */
-
-static CURLcode ftp_nextconnect(struct connectdata *conn)
-{
-  struct SessionHandle *data=conn->data;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  CURLcode result = CURLE_OK;
-
-  /* the ftp struct is inited in ftp_connect() */
-  struct FTP *ftp = data->state.proto.ftp;
-
-  DEBUGF(infof(data, "DO-MORE phase starts\n"));
-
-  if(ftp->transfer <= FTPTRANSFER_INFO) {
-    /* a transfer is about to take place, or if not a file name was given
-       so we'll do a SIZE on it later and then we need the right TYPE first */
-
-    if(data->set.upload) {
-      result = ftp_nb_type(conn, data->set.prefer_ascii, FTP_STOR_TYPE);
-      if(result)
-        return result;
-    }
-    else {
-      /* download */
-      ftp->downloadsize = -1; /* unknown as of yet */
-
-      result = ftp_range(conn);
-      if(result)
-        ;
-      else if(data->set.ftp_list_only || !ftpc->file) {
-        /* The specified path ends with a slash, and therefore we think this
-           is a directory that is requested, use LIST. But before that we
-           need to set ASCII transfer mode. */
-
-        /* But only if a body transfer was requested. */
-        if(ftp->transfer == FTPTRANSFER_BODY) {
-          result = ftp_nb_type(conn, TRUE, FTP_LIST_TYPE);
-          if(result)
-            return result;
-        }
-        /* otherwise just fall through */
-      }
-      else {
-        result = ftp_nb_type(conn, data->set.prefer_ascii, FTP_RETR_TYPE);
-        if(result)
-          return result;
-      }
-    }
-    result = ftp_easy_statemach(conn);
-  }
-
-  if((result == CURLE_OK) && (ftp->transfer != FTPTRANSFER_BODY))
-    /* no data to transfer. FIX: it feels like a kludge to have this here
-       too! */
-    result = Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-
-  /* end of transfer */
-  DEBUGF(infof(data, "DO-MORE phase ends with %d\n", (int)result));
-
-  return result;
-}
-
-
-
-/***********************************************************************
- *
- * ftp_perform()
- *
- * This is the actual DO function for FTP. Get a file/directory according to
- * the options previously setup.
- */
-
-static
-CURLcode ftp_perform(struct connectdata *conn,
-                     bool *connected,  /* connect status after PASV / PORT */
-                     bool *dophase_done)
-{
-  /* this is FTP and no proxy */
-  CURLcode result=CURLE_OK;
-
-  DEBUGF(infof(conn->data, "DO phase starts\n"));
-
-  if(conn->data->set.opt_no_body) {
-    /* requested no body means no transfer... */
-    struct FTP *ftp = conn->data->state.proto.ftp;
-    ftp->transfer = FTPTRANSFER_INFO;
-  }
-
-
-  *dophase_done = FALSE; /* not done yet */
-
-  /* start the first command in the DO phase */
-  result = ftp_state_quote(conn, TRUE, FTP_QUOTE);
-  if(result)
-    return result;
-
-  /* run the state-machine */
-  if(conn->data->state.used_interface == Curl_if_multi)
-    result = ftp_multi_statemach(conn, dophase_done);
-  else {
-    result = ftp_easy_statemach(conn);
-    *dophase_done = TRUE; /* with the easy interface we are done here */
-  }
-  *connected = conn->bits.tcpconnect;
-
-  if(*dophase_done)
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-
-  return result;
-}
-
-/***********************************************************************
- *
- * ftp_do()
- *
- * This function is registered as 'curl_do' function. It decodes the path
- * parts etc as a wrapper to the actual DO function (ftp_perform).
- *
- * The input argument is already checked for validity.
- */
-static CURLcode ftp_do(struct connectdata *conn, bool *done)
-{
-  CURLcode retcode = CURLE_OK;
-
-  *done = FALSE; /* default to false */
-
-  /*
-    Since connections can be re-used between SessionHandles, this might be a
-    connection already existing but on a fresh SessionHandle struct so we must
-    make sure we have a good 'struct FTP' to play with. For new connections,
-    the struct FTP is allocated and setup in the ftp_connect() function.
-  */
-  Curl_reset_reqproto(conn);
-  retcode = ftp_init(conn);
-  if(retcode)
-    return retcode;
-
-  retcode = ftp_parse_url_path(conn);
-  if(retcode)
-    return retcode;
-
-  retcode = ftp_regular_transfer(conn, done);
-
-  return retcode;
-}
-
-
-CURLcode Curl_ftpsendf(struct connectdata *conn,
-                       const char *fmt, ...)
-{
-  ssize_t bytes_written;
-#define SBUF_SIZE 1024
-  char s[SBUF_SIZE];
-  size_t write_len;
-  char *sptr=s;
-  CURLcode res = CURLE_OK;
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-  enum protection_level data_sec = conn->data_prot;
-#endif
-
-  va_list ap;
-  va_start(ap, fmt);
-  vsnprintf(s, SBUF_SIZE-3, fmt, ap);
-  va_end(ap);
-
-  strcat(s, "\r\n"); /* append a trailing CRLF */
-
-  bytes_written=0;
-  write_len = strlen(s);
-
-#ifdef CURL_DOES_CONVERSIONS
-  res = Curl_convert_to_network(conn->data, s, write_len);
-  /* Curl_convert_to_network calls failf if unsuccessful */
-  if(res != CURLE_OK) {
-    return(res);
-  }
-#endif /* CURL_DOES_CONVERSIONS */
-
-  for(;;) {
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-    conn->data_prot = prot_cmd;
-#endif
-    res = Curl_write(conn, conn->sock[FIRSTSOCKET], sptr, write_len,
-                     &bytes_written);
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-    conn->data_prot = data_sec;
-#endif
-
-    if(CURLE_OK != res)
-      break;
-
-    if(conn->data->set.verbose)
-      Curl_debug(conn->data, CURLINFO_HEADER_OUT,
-                 sptr, (size_t)bytes_written, conn);
-
-    if(bytes_written != (ssize_t)write_len) {
-      write_len -= bytes_written;
-      sptr += bytes_written;
-    }
-    else
-      break;
-  }
-
-  return res;
-}
-
-/***********************************************************************
- *
- * ftp_quit()
- *
- * This should be called before calling sclose() on an ftp control connection
- * (not data connections). We should then wait for the response from the
- * server before returning. The calling code should then try to close the
- * connection.
- *
- */
-static CURLcode ftp_quit(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-
-  if(conn->proto.ftpc.ctl_valid) {
-    PPSENDF(&conn->proto.ftpc.pp, "QUIT", NULL);
-    state(conn, FTP_QUIT);
-
-    result = ftp_easy_statemach(conn);
-  }
-
-  return result;
-}
-
-/***********************************************************************
- *
- * ftp_disconnect()
- *
- * Disconnect from an FTP server. Cleanup protocol-specific per-connection
- * resources. BLOCKING.
- */
-static CURLcode ftp_disconnect(struct connectdata *conn)
-{
-  struct ftp_conn *ftpc= &conn->proto.ftpc;
-  struct pingpong *pp = &ftpc->pp;
-
-  /* We cannot send quit unconditionally. If this connection is stale or
-     bad in any way, sending quit and waiting around here will make the
-     disconnect wait in vain and cause more problems than we need to.
-
-     ftp_quit() will check the state of ftp->ctl_valid. If it's ok it
-     will try to send the QUIT command, otherwise it will just return.
-  */
-
-  /* The FTP session may or may not have been allocated/setup at this point! */
-  (void)ftp_quit(conn); /* ignore errors on the QUIT */
-
-  if(ftpc->entrypath) {
-    struct SessionHandle *data = conn->data;
-    if(data->state.most_recent_ftp_entrypath == ftpc->entrypath) {
-      data->state.most_recent_ftp_entrypath = NULL;
-    }
-    free(ftpc->entrypath);
-    ftpc->entrypath = NULL;
-  }
-
-  freedirs(ftpc);
-  if(ftpc->prevpath) {
-    free(ftpc->prevpath);
-    ftpc->prevpath = NULL;
-  }
-  if(ftpc->server_os) {
-    free(ftpc->server_os);
-    ftpc->server_os = NULL;
-  }
-
-  Curl_pp_disconnect(pp);
-
-  return CURLE_OK;
-}
-
-/***********************************************************************
- *
- * ftp_parse_url_path()
- *
- * Parse the URL path into separate path components.
- *
- */
-static
-CURLcode ftp_parse_url_path(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  /* the ftp struct is already inited in ftp_connect() */
-  struct FTP *ftp = data->state.proto.ftp;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  const char *slash_pos;  /* position of the first '/' char in curpos */
-  const char *path_to_use = data->state.path;
-  const char *cur_pos;
-  const char *filename = NULL;
-
-  cur_pos = path_to_use; /* current position in path. point at the begin
-                            of next path component */
-
-  ftpc->ctl_valid = FALSE;
-  ftpc->cwdfail = FALSE;
-
-  switch(data->set.ftp_filemethod) {
-  case FTPFILE_NOCWD:
-    /* fastest, but less standard-compliant */
-
-    /*
-      The best time to check whether the path is a file or directory is right
-      here. so:
-
-      the first condition in the if() right here, is there just in case
-      someone decides to set path to NULL one day
-   */
-    if(data->state.path &&
-       data->state.path[0] &&
-       (data->state.path[strlen(data->state.path) - 1] != '/') )
-      filename = data->state.path;  /* this is a full file path */
-      /*
-        ftpc->file is not used anywhere other than for operations on a file.
-        In other words, never for directory operations.
-        So we can safely leave filename as NULL here and use it as a
-        argument in dir/file decisions.
-      */
-    break;
-
-  case FTPFILE_SINGLECWD:
-    /* get the last slash */
-    if(!path_to_use[0]) {
-      /* no dir, no file */
-      ftpc->dirdepth = 0;
-      break;
-    }
-    slash_pos=strrchr(cur_pos, '/');
-    if(slash_pos || !*cur_pos) {
-      ftpc->dirs = calloc(1, sizeof(ftpc->dirs[0]));
-      if(!ftpc->dirs)
-        return CURLE_OUT_OF_MEMORY;
-
-      ftpc->dirs[0] = curl_easy_unescape(conn->data, slash_pos ? cur_pos : "/",
-                                         slash_pos?(int)(slash_pos-cur_pos):1,
-                                         NULL);
-      if(!ftpc->dirs[0]) {
-        freedirs(ftpc);
-        return CURLE_OUT_OF_MEMORY;
-      }
-      ftpc->dirdepth = 1; /* we consider it to be a single dir */
-      filename = slash_pos ? slash_pos+1 : cur_pos; /* rest is file name */
-    }
-    else
-      filename = cur_pos;  /* this is a file name only */
-    break;
-
-  default: /* allow pretty much anything */
-  case FTPFILE_MULTICWD:
-    ftpc->dirdepth = 0;
-    ftpc->diralloc = 5; /* default dir depth to allocate */
-    ftpc->dirs = calloc(ftpc->diralloc, sizeof(ftpc->dirs[0]));
-    if(!ftpc->dirs)
-      return CURLE_OUT_OF_MEMORY;
-
-    /* we have a special case for listing the root dir only */
-    if(strequal(path_to_use, "/")) {
-      cur_pos++; /* make it point to the zero byte */
-      ftpc->dirs[0] = strdup("/");
-      ftpc->dirdepth++;
-    }
-    else {
-      /* parse the URL path into separate path components */
-      while((slash_pos = strchr(cur_pos, '/')) != NULL) {
-        /* 1 or 0 to indicate absolute directory */
-        bool absolute_dir = (bool)((cur_pos - data->state.path > 0) &&
-                                   (ftpc->dirdepth == 0));
-
-        /* seek out the next path component */
-        if(slash_pos-cur_pos) {
-          /* we skip empty path components, like "x//y" since the FTP command
-             CWD requires a parameter and a non-existant parameter a) doesn't
-             work on many servers and b) has no effect on the others. */
-          int len = (int)(slash_pos - cur_pos + absolute_dir);
-          ftpc->dirs[ftpc->dirdepth] =
-            curl_easy_unescape(conn->data, cur_pos - absolute_dir, len, NULL);
-          if(!ftpc->dirs[ftpc->dirdepth]) { /* run out of memory ... */
-            failf(data, "no memory");
-            freedirs(ftpc);
-            return CURLE_OUT_OF_MEMORY;
-          }
-          if(isBadFtpString(ftpc->dirs[ftpc->dirdepth])) {
-            free(ftpc->dirs[ftpc->dirdepth]);
-            freedirs(ftpc);
-            return CURLE_URL_MALFORMAT;
-          }
-        }
-        else {
-          cur_pos = slash_pos + 1; /* jump to the rest of the string */
-          continue;
-        }
-
-        cur_pos = slash_pos + 1; /* jump to the rest of the string */
-        if(++ftpc->dirdepth >= ftpc->diralloc) {
-          /* enlarge array */
-          char *bigger;
-          ftpc->diralloc *= 2; /* double the size each time */
-          bigger = realloc(ftpc->dirs, ftpc->diralloc * sizeof(ftpc->dirs[0]));
-          if(!bigger) {
-            freedirs(ftpc);
-            return CURLE_OUT_OF_MEMORY;
-          }
-          ftpc->dirs = (char **)bigger;
-        }
-      }
-    }
-    filename = cur_pos;  /* the rest is the file name */
-    break;
-  } /* switch */
-
-  if(filename && *filename) {
-    ftpc->file = curl_easy_unescape(conn->data, filename, 0, NULL);
-    if(NULL == ftpc->file) {
-      freedirs(ftpc);
-      failf(data, "no memory");
-      return CURLE_OUT_OF_MEMORY;
-    }
-    if(isBadFtpString(ftpc->file)) {
-      freedirs(ftpc);
-      return CURLE_URL_MALFORMAT;
-    }
-  }
-  else
-    ftpc->file=NULL; /* instead of point to a zero byte, we make it a NULL
-                       pointer */
-
-  if(data->set.upload && !ftpc->file && (ftp->transfer == FTPTRANSFER_BODY)) {
-    /* We need a file name when uploading. Return error! */
-    failf(data, "Uploading to a URL without a file name!");
-    return CURLE_URL_MALFORMAT;
-  }
-
-  ftpc->cwddone = FALSE; /* default to not done */
-
-  if(ftpc->prevpath) {
-    /* prevpath is "raw" so we convert the input path before we compare the
-       strings */
-    int dlen;
-    char *path = curl_easy_unescape(conn->data, data->state.path, 0, &dlen);
-    if(!path) {
-      freedirs(ftpc);
-      return CURLE_OUT_OF_MEMORY;
-    }
-
-    dlen -= ftpc->file?(int)strlen(ftpc->file):0;
-    if((dlen == (int)strlen(ftpc->prevpath)) &&
-       strnequal(path, ftpc->prevpath, dlen)) {
-      infof(data, "Request has same path as previous transfer\n");
-      ftpc->cwddone = TRUE;
-    }
-    free(path);
-  }
-
-  return CURLE_OK;
-}
-
-/* call this when the DO phase has completed */
-static CURLcode ftp_dophase_done(struct connectdata *conn,
-                                 bool connected)
-{
-  CURLcode result = CURLE_OK;
-  struct FTP *ftp = conn->data->state.proto.ftp;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-
-  if(connected)
-    result = ftp_nextconnect(conn);
-
-  if(result && (conn->sock[SECONDARYSOCKET] != CURL_SOCKET_BAD)) {
-    /* Failure detected, close the second socket if it was created already */
-    sclose(conn->sock[SECONDARYSOCKET]);
-    conn->sock[SECONDARYSOCKET] = CURL_SOCKET_BAD;
-    return result;
-  }
-
-  if(ftp->transfer != FTPTRANSFER_BODY)
-    /* no data to transfer */
-    result=Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-  else if(!connected)
-    /* since we didn't connect now, we want do_more to get called */
-    conn->bits.do_more = TRUE;
-
-  ftpc->ctl_valid = TRUE; /* seems good */
-
-  return result;
-}
-
-/* called from multi.c while DOing */
-static CURLcode ftp_doing(struct connectdata *conn,
-                               bool *dophase_done)
-{
-  CURLcode result;
-  result = ftp_multi_statemach(conn, dophase_done);
-
-  if(*dophase_done) {
-    result = ftp_dophase_done(conn, FALSE /* not connected */);
-
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-  }
-  return result;
-}
-
-/***********************************************************************
- *
- * ftp_regular_transfer()
- *
- * The input argument is already checked for validity.
- *
- * Performs all commands done before a regular transfer between a local and a
- * remote host.
- *
- * ftp->ctl_valid starts out as FALSE, and gets set to TRUE if we reach the
- * ftp_done() function without finding any major problem.
- */
-static
-CURLcode ftp_regular_transfer(struct connectdata *conn,
-                              bool *dophase_done)
-{
-  CURLcode result=CURLE_OK;
-  bool connected=FALSE;
-  struct SessionHandle *data = conn->data;
-  struct ftp_conn *ftpc = &conn->proto.ftpc;
-  data->req.size = -1; /* make sure this is unknown at this point */
-
-  Curl_pgrsSetUploadCounter(data, 0);
-  Curl_pgrsSetDownloadCounter(data, 0);
-  Curl_pgrsSetUploadSize(data, 0);
-  Curl_pgrsSetDownloadSize(data, 0);
-
-  ftpc->ctl_valid = TRUE; /* starts good */
-
-  result = ftp_perform(conn,
-                       &connected, /* have we connected after PASV/PORT */
-                       dophase_done); /* all commands in the DO-phase done? */
-
-  if(CURLE_OK == result) {
-
-    if(!*dophase_done)
-      /* the DO phase has not completed yet */
-      return CURLE_OK;
-
-    result = ftp_dophase_done(conn, connected);
-    if(result)
-      return result;
-  }
-  else
-    freedirs(ftpc);
-
-  return result;
-}
-
-static CURLcode ftp_setup_connection(struct connectdata * conn)
-{
-  struct SessionHandle *data = conn->data;
-  char * type;
-  char command;
-
-  if(conn->bits.httpproxy && !data->set.tunnel_thru_httpproxy) {
-    /* Unless we have asked to tunnel ftp operations through the proxy, we
-       switch and use HTTP operations only */
-#ifndef CURL_DISABLE_HTTP
-    if(conn->handler == &Curl_handler_ftp)
-      conn->handler = &Curl_handler_ftp_proxy;
-    else {
-#ifdef USE_SSL
-      conn->handler = &Curl_handler_ftps_proxy;
-#else
-      failf(data, "FTPS not supported!");
-      return CURLE_UNSUPPORTED_PROTOCOL;
-#endif
-    }
-    /*
-     * We explicitly mark this connection as persistent here as we're doing
-     * FTP over HTTP and thus we accidentally avoid setting this value
-     * otherwise.
-     */
-    conn->bits.close = FALSE;
-#else
-    failf(data, "FTP over http proxy requires HTTP support built-in!");
-    return CURLE_UNSUPPORTED_PROTOCOL;
-#endif
-  }
-
-  data->state.path++;   /* don't include the initial slash */
-
-  /* FTP URLs support an extension like ";type=<typecode>" that
-   * we'll try to get now! */
-  type = strstr(data->state.path, ";type=");
-
-  if(!type)
-    type = strstr(conn->host.rawalloc, ";type=");
-
-  if(type) {
-    *type = 0;                     /* it was in the middle of the hostname */
-    command = Curl_raw_toupper(type[6]);
-
-    switch (command) {
-    case 'A': /* ASCII mode */
-      data->set.prefer_ascii = TRUE;
-      break;
-
-    case 'D': /* directory mode */
-      data->set.ftp_list_only = TRUE;
-      break;
-
-    case 'I': /* binary mode */
-    default:
-      /* switch off ASCII */
-      data->set.prefer_ascii = FALSE;
-      break;
-    }
-  }
-
-  return CURLE_OK;
-}
-
-#endif /* CURL_DISABLE_FTP */
diff --git a/src/other/curl/lib/ftp.h b/src/other/curl/lib/ftp.h
deleted file mode 100644
index 7a4f89e..0000000
--- a/src/other/curl/lib/ftp.h
+++ /dev/null
@@ -1,140 +0,0 @@
-#ifndef HEADER_CURL_FTP_H
-#define HEADER_CURL_FTP_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "pingpong.h"
-
-#ifndef CURL_DISABLE_FTP
-extern const struct Curl_handler Curl_handler_ftp;
-
-#ifdef USE_SSL
-extern const struct Curl_handler Curl_handler_ftps;
-#endif
-
-CURLcode Curl_ftpsendf(struct connectdata *, const char *fmt, ...);
-CURLcode Curl_GetFTPResponse(ssize_t *nread, struct connectdata *conn,
-                             int *ftpcode);
-#endif /* CURL_DISABLE_FTP */
-
-/****************************************************************************
- * FTP unique setup
- ***************************************************************************/
-typedef enum {
-  FTP_STOP,    /* do nothing state, stops the state machine */
-  FTP_WAIT220, /* waiting for the initial 220 response immediately after
-                  a connect */
-  FTP_AUTH,
-  FTP_USER,
-  FTP_PASS,
-  FTP_ACCT,
-  FTP_PBSZ,
-  FTP_PROT,
-  FTP_CCC,
-  FTP_PWD,
-  FTP_SYST,
-  FTP_NAMEFMT,
-  FTP_QUOTE, /* waiting for a response to a command sent in a quote list */
-  FTP_RETR_PREQUOTE,
-  FTP_STOR_PREQUOTE,
-  FTP_POSTQUOTE,
-  FTP_CWD,  /* change dir */
-  FTP_MKD,  /* if the dir didn't exist */
-  FTP_MDTM, /* to figure out the datestamp */
-  FTP_TYPE, /* to set type when doing a head-like request */
-  FTP_LIST_TYPE, /* set type when about to do a dir list */
-  FTP_RETR_TYPE, /* set type when about to RETR a file */
-  FTP_STOR_TYPE, /* set type when about to STOR a file */
-  FTP_SIZE, /* get the remote file's size for head-like request */
-  FTP_RETR_SIZE, /* get the remote file's size for RETR */
-  FTP_STOR_SIZE, /* get the size for (resumed) STOR */
-  FTP_REST, /* when used to check if the server supports it in head-like */
-  FTP_RETR_REST, /* when asking for "resume" in for RETR */
-  FTP_PORT, /* generic state for PORT, LPRT and EPRT, check count1 */
-  FTP_PRET, /* generic state for PRET RETR, PRET STOR and PRET LIST/NLST */
-  FTP_PASV, /* generic state for PASV and EPSV, check count1 */
-  FTP_LIST, /* generic state for LIST, NLST or a custom list command */
-  FTP_RETR,
-  FTP_STOR, /* generic state for STOR and APPE */
-  FTP_QUIT,
-  FTP_LAST  /* never used */
-} ftpstate;
-
-typedef enum {
-  FTPFILE_MULTICWD  = 1, /* as defined by RFC1738 */
-  FTPFILE_NOCWD     = 2, /* use SIZE / RETR / STOR on the full path */
-  FTPFILE_SINGLECWD = 3  /* make one CWD, then SIZE / RETR / STOR on the file */
-} curl_ftpfile;
-
-typedef enum {
-  FTPTRANSFER_BODY, /* yes do transfer a body */
-  FTPTRANSFER_INFO, /* do still go through to get info/headers */
-  FTPTRANSFER_NONE, /* don't get anything and don't get info */
-  FTPTRANSFER_LAST  /* end of list marker, never used */
-} curl_ftptransfer;
-
-/* This FTP struct is used in the SessionHandle. All FTP data that is
-   connection-oriented must be in FTP_conn to properly deal with the fact that
-   perhaps the SessionHandle is changed between the times the connection is
-   used. */
-struct FTP {
-  curl_off_t *bytecountp;
-  char *user;    /* user name string */
-  char *passwd;  /* password string */
-
-  /* transfer a file/body or not, done as a typedefed enum just to make
-     debuggers display the full symbol and not just the numerical value */
-  curl_ftptransfer transfer;
-  curl_off_t downloadsize;
-};
-
-
-/* ftp_conn is used for struct connection-oriented data in the connectdata
-   struct */
-struct ftp_conn {
-  struct pingpong pp;
-  char *entrypath; /* the PWD reply when we logged on */
-  char **dirs;   /* realloc()ed array for path components */
-  int dirdepth;  /* number of entries used in the 'dirs' array */
-  int diralloc;  /* number of entries allocated for the 'dirs' array */
-  char *file;    /* decoded file */
-  bool dont_check;  /* Set to TRUE to prevent the final (post-transfer)
-                       file size and 226/250 status check. It should still
-                       read the line, just ignore the result. */
-  bool ctl_valid;   /* Tells Curl_ftp_quit() whether or not to do anything. If
-                       the connection has timed out or been closed, this
-                       should be FALSE when it gets to Curl_ftp_quit() */
-  bool cwddone;     /* if it has been determined that the proper CWD combo
-                       already has been done */
-  bool cwdfail;     /* set TRUE if a CWD command fails, as then we must prevent
-                       caching the current directory */
-  char *prevpath;   /* conn->path from the previous transfer */
-  char transfertype; /* set by ftp_transfertype for use by Curl_client_write()a
-                        and others (A/I or zero) */
-  int count1; /* general purpose counter for the state machine */
-  int count2; /* general purpose counter for the state machine */
-  int count3; /* general purpose counter for the state machine */
-  ftpstate state; /* always use ftp.c:state() to change state! */
-  char * server_os;     /* The target server operating system. */
-};
-
-#endif /* HEADER_CURL_FTP_H */
diff --git a/src/other/curl/lib/getenv.c b/src/other/curl/lib/getenv.c
deleted file mode 100644
index 36fbb75..0000000
--- a/src/other/curl/lib/getenv.c
+++ /dev/null
@@ -1,65 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#ifdef __VMS
-#include <unixlib.h>
-#endif
-
-#include <curl/curl.h>
-#include "curl_memory.h"
-
-#include "memdebug.h"
-
-static
-char *GetEnv(const char *variable)
-{
-#ifdef _WIN32_WCE
-  return NULL;
-#else
-#ifdef WIN32
-  char env[MAX_PATH]; /* MAX_PATH is from windef.h */
-  char *temp = getenv(variable);
-  env[0] = '\0';
-  if(temp != NULL)
-    ExpandEnvironmentStrings(temp, env, sizeof(env));
-  return (env[0] != '\0')?strdup(env):NULL;
-#else
-  char *env = getenv(variable);
-#ifdef __VMS
-  if(env && strcmp("HOME",variable) == 0)
-    env = decc_translate_vms(env);
-#endif
-  return (env && env[0])?strdup(env):NULL;
-#endif
-#endif
-}
-
-char *curl_getenv(const char *v)
-{
-  return GetEnv(v);
-}
diff --git a/src/other/curl/lib/getinfo.c b/src/other/curl/lib/getinfo.c
deleted file mode 100644
index 7a0ed71..0000000
--- a/src/other/curl/lib/getinfo.c
+++ /dev/null
@@ -1,254 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <curl/curl.h>
-
-#include "urldata.h"
-#include "getinfo.h"
-
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include "curl_memory.h"
-#include "sslgen.h"
-#include "connect.h" /* Curl_getconnectinfo() */
-#include "progress.h"
-
-/* Make this the last #include */
-#include "memdebug.h"
-
-/*
- * This is supposed to be called in the beginning of a perform() session
- * and should reset all session-info variables
- */
-CURLcode Curl_initinfo(struct SessionHandle *data)
-{
-  struct Progress *pro = &data->progress;
-  struct PureInfo *info =&data->info;
-
-  pro->t_nslookup = 0;
-  pro->t_connect = 0;
-  pro->t_pretransfer = 0;
-  pro->t_starttransfer = 0;
-  pro->timespent = 0;
-  pro->t_redirect = 0;
-
-  info->httpcode = 0;
-  info->httpversion=0;
-  info->filetime=-1; /* -1 is an illegal time and thus means unknown */
-
-  if(info->contenttype)
-    free(info->contenttype);
-  info->contenttype = NULL;
-
-  info->header_size = 0;
-  info->request_size = 0;
-  info->numconnects = 0;
-  return CURLE_OK;
-}
-
-CURLcode Curl_getinfo(struct SessionHandle *data, CURLINFO info, ...)
-{
-  va_list arg;
-  long *param_longp=NULL;
-  double *param_doublep=NULL;
-  char **param_charp=NULL;
-  struct curl_slist **param_slistp=NULL;
-  int type;
-
-  union {
-    struct curl_certinfo * to_certinfo;
-    struct curl_slist    * to_slist;
-  } ptr;
-
-  if(!data)
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-
-  va_start(arg, info);
-
-  type = CURLINFO_TYPEMASK & (int)info;
-  switch(type) {
-  case CURLINFO_STRING:
-    param_charp = va_arg(arg, char **);
-    if(NULL == param_charp)
-      return CURLE_BAD_FUNCTION_ARGUMENT;
-    break;
-  case CURLINFO_LONG:
-    param_longp = va_arg(arg, long *);
-    if(NULL == param_longp)
-      return CURLE_BAD_FUNCTION_ARGUMENT;
-    break;
-  case CURLINFO_DOUBLE:
-    param_doublep = va_arg(arg, double *);
-    if(NULL == param_doublep)
-      return CURLE_BAD_FUNCTION_ARGUMENT;
-    break;
-  case CURLINFO_SLIST:
-    param_slistp = va_arg(arg, struct curl_slist **);
-    if(NULL == param_slistp)
-      return CURLE_BAD_FUNCTION_ARGUMENT;
-    break;
-  default:
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-  }
-
-  switch(info) {
-  case CURLINFO_EFFECTIVE_URL:
-    *param_charp = data->change.url?data->change.url:(char *)"";
-    break;
-  case CURLINFO_RESPONSE_CODE:
-    *param_longp = data->info.httpcode;
-    break;
-  case CURLINFO_HTTP_CONNECTCODE:
-    *param_longp = data->info.httpproxycode;
-    break;
-  case CURLINFO_FILETIME:
-    *param_longp = data->info.filetime;
-    break;
-  case CURLINFO_HEADER_SIZE:
-    *param_longp = data->info.header_size;
-    break;
-  case CURLINFO_REQUEST_SIZE:
-    *param_longp = data->info.request_size;
-    break;
-  case CURLINFO_TOTAL_TIME:
-    *param_doublep = data->progress.timespent;
-    break;
-  case CURLINFO_NAMELOOKUP_TIME:
-    *param_doublep = data->progress.t_nslookup;
-    break;
-  case CURLINFO_CONNECT_TIME:
-    *param_doublep = data->progress.t_connect;
-    break;
-  case CURLINFO_APPCONNECT_TIME:
-    *param_doublep = data->progress.t_appconnect;
-    break;
-  case CURLINFO_PRETRANSFER_TIME:
-    *param_doublep =  data->progress.t_pretransfer;
-    break;
-  case CURLINFO_STARTTRANSFER_TIME:
-    *param_doublep = data->progress.t_starttransfer;
-    break;
-  case CURLINFO_SIZE_UPLOAD:
-    *param_doublep =  (double)data->progress.uploaded;
-    break;
-  case CURLINFO_SIZE_DOWNLOAD:
-    *param_doublep = (double)data->progress.downloaded;
-    break;
-  case CURLINFO_SPEED_DOWNLOAD:
-    *param_doublep =  (double)data->progress.dlspeed;
-    break;
-  case CURLINFO_SPEED_UPLOAD:
-    *param_doublep = (double)data->progress.ulspeed;
-    break;
-  case CURLINFO_SSL_VERIFYRESULT:
-    *param_longp = data->set.ssl.certverifyresult;
-    break;
-  case CURLINFO_CONTENT_LENGTH_DOWNLOAD:
-    *param_doublep = (data->progress.flags & PGRS_DL_SIZE_KNOWN)?
-      (double)data->progress.size_dl:-1;
-    break;
-  case CURLINFO_CONTENT_LENGTH_UPLOAD:
-    *param_doublep = (data->progress.flags & PGRS_UL_SIZE_KNOWN)?
-      (double)data->progress.size_ul:-1;
-    break;
-  case CURLINFO_REDIRECT_TIME:
-    *param_doublep =  data->progress.t_redirect;
-    break;
-  case CURLINFO_REDIRECT_COUNT:
-    *param_longp = data->set.followlocation;
-    break;
-  case CURLINFO_CONTENT_TYPE:
-    *param_charp = data->info.contenttype;
-    break;
-  case CURLINFO_PRIVATE:
-    *param_charp = (char *) data->set.private_data;
-    break;
-  case CURLINFO_HTTPAUTH_AVAIL:
-    *param_longp = data->info.httpauthavail;
-    break;
-  case CURLINFO_PROXYAUTH_AVAIL:
-    *param_longp = data->info.proxyauthavail;
-    break;
-  case CURLINFO_OS_ERRNO:
-    *param_longp = data->state.os_errno;
-    break;
-  case CURLINFO_NUM_CONNECTS:
-    *param_longp = data->info.numconnects;
-    break;
-  case CURLINFO_SSL_ENGINES:
-    *param_slistp = Curl_ssl_engines_list(data);
-    break;
-  case CURLINFO_COOKIELIST:
-    *param_slistp = Curl_cookie_list(data);
-    break;
-  case CURLINFO_FTP_ENTRY_PATH:
-    /* Return the entrypath string from the most recent connection.
-       This pointer was copied from the connectdata structure by FTP.
-       The actual string may be free()ed by subsequent libcurl calls so
-       it must be copied to a safer area before the next libcurl call.
-       Callers must never free it themselves. */
-    *param_charp = data->state.most_recent_ftp_entrypath;
-    break;
-  case CURLINFO_LASTSOCKET:
-    (void)Curl_getconnectinfo(data, param_longp, NULL);
-    break;
-  case CURLINFO_REDIRECT_URL:
-    /* Return the URL this request would have been redirected to if that
-       option had been enabled! */
-    *param_charp = data->info.wouldredirect;
-    break;
-  case CURLINFO_PRIMARY_IP:
-    /* Return the ip address of the most recent (primary) connection */
-    *param_charp = data->info.ip;
-    break;
-  case CURLINFO_CERTINFO:
-    /* Return the a pointer to the certinfo struct. Not really an slist
-       pointer but we can pretend it is here */
-    ptr.to_certinfo = &data->info.certs;
-    *param_slistp = ptr.to_slist;
-    break;
-  case CURLINFO_CONDITION_UNMET:
-    /* return if the condition prevented the document to get transfered */
-    *param_longp = data->info.timecond;
-    break;
-  case CURLINFO_RTSP_SESSION_ID:
-    *param_charp = data->set.str[STRING_RTSP_SESSION_ID];
-    break;
-  case CURLINFO_RTSP_CLIENT_CSEQ:
-    *param_longp = data->state.rtsp_next_client_CSeq;
-    break;
-  case CURLINFO_RTSP_SERVER_CSEQ:
-    *param_longp = data->state.rtsp_next_server_CSeq;
-    break;
-  case CURLINFO_RTSP_CSEQ_RECV:
-    *param_longp = data->state.rtsp_CSeq_recv;
-    break;
-
-  default:
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-  }
-  return CURLE_OK;
-}
diff --git a/src/other/curl/lib/getinfo.h b/src/other/curl/lib/getinfo.h
deleted file mode 100644
index 3879ff7..0000000
--- a/src/other/curl/lib/getinfo.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef HEADER_CURL_GETINFO_H
-#define HEADER_CURL_GETINFO_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-CURLcode Curl_getinfo(struct SessionHandle *data, CURLINFO info, ...);
-CURLcode Curl_initinfo(struct SessionHandle *data);
-
-#endif /* HEADER_CURL_GETINFO_H */
diff --git a/src/other/curl/lib/gtls.c b/src/other/curl/lib/gtls.c
deleted file mode 100644
index b7fa3c9..0000000
--- a/src/other/curl/lib/gtls.c
+++ /dev/null
@@ -1,829 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * Source file for all GnuTLS-specific code for the TLS/SSL layer. No code
- * but sslgen.c should ever call or use these functions.
- *
- * Note: don't use the GnuTLS' *_t variable type names in this source code,
- * since they were not present in 1.0.X.
- */
-
-#include "setup.h"
-#ifdef USE_GNUTLS
-#include <gnutls/gnutls.h>
-#include <gnutls/x509.h>
-#include <gcrypt.h>
-
-#include <string.h>
-#include <stdlib.h>
-#include <ctype.h>
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "inet_pton.h"
-#include "gtls.h"
-#include "sslgen.h"
-#include "parsedate.h"
-#include "connect.h" /* for the connect timeout */
-#include "select.h"
-#include "rawstr.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/*
- Some hackish cast macros based on:
- http://library.gnome.org/devel/glib/unstable/glib-Type-Conversion-Macros.html
-*/
-#ifndef GNUTLS_POINTER_TO_INT_CAST
-#define GNUTLS_POINTER_TO_INT_CAST(p) ((int) (long) (p))
-#endif
-#ifndef GNUTLS_INT_TO_POINTER_CAST
-#define GNUTLS_INT_TO_POINTER_CAST(i) ((void*) (long) (i))
-#endif
-
-/* Enable GnuTLS debugging by defining GTLSDEBUG */
-/*#define GTLSDEBUG */
-
-#ifdef GTLSDEBUG
-static void tls_log_func(int level, const char *str)
-{
-    fprintf(stderr, "|<%d>| %s", level, str);
-}
-#endif
-static bool gtls_inited = FALSE;
-/*
- * Custom push and pull callback functions used by GNU TLS to read and write
- * to the socket.  These functions are simple wrappers to send() and recv()
- * (although here using the sread/swrite macros as defined by setup_once.h).
- * We use custom functions rather than the GNU TLS defaults because it allows
- * us to get specific about the fourth "flags" argument, and to use arbitrary
- * private data with gnutls_transport_set_ptr if we wish.
- */
-static ssize_t Curl_gtls_push(void *s, const void *buf, size_t len)
-{
-  return swrite(GNUTLS_POINTER_TO_INT_CAST(s), buf, len);
-}
-
-static ssize_t Curl_gtls_pull(void *s, void *buf, size_t len)
-{
-  return sread(GNUTLS_POINTER_TO_INT_CAST(s), buf, len);
-}
-
-/* Curl_gtls_init()
- *
- * Global GnuTLS init, called from Curl_ssl_init(). This calls functions that
- * are not thread-safe and thus this function itself is not thread-safe and
- * must only be called from within curl_global_init() to keep the thread
- * situation under control!
- */
-int Curl_gtls_init(void)
-{
-  int ret = 1;
-  if(!gtls_inited) {
-    ret = gnutls_global_init()?0:1;
-#ifdef GTLSDEBUG
-    gnutls_global_set_log_function(tls_log_func);
-    gnutls_global_set_log_level(2);
-#endif
-    gtls_inited = TRUE;
-  }
-  return ret;
-}
-
-int Curl_gtls_cleanup(void)
-{
-  if(gtls_inited) {
-    gnutls_global_deinit();
-    gtls_inited = FALSE;
-  }
-  return 1;
-}
-
-static void showtime(struct SessionHandle *data,
-                     const char *text,
-                     time_t stamp)
-{
-  struct tm *tm;
-#ifdef HAVE_GMTIME_R
-  struct tm buffer;
-  tm = (struct tm *)gmtime_r(&stamp, &buffer);
-#else
-  tm = gmtime(&stamp);
-#endif
-  snprintf(data->state.buffer,
-           BUFSIZE,
-           "\t %s: %s, %02d %s %4d %02d:%02d:%02d GMT\n",
-           text,
-           Curl_wkday[tm->tm_wday?tm->tm_wday-1:6],
-           tm->tm_mday,
-           Curl_month[tm->tm_mon],
-           tm->tm_year + 1900,
-           tm->tm_hour,
-           tm->tm_min,
-           tm->tm_sec);
-  infof(data, "%s", data->state.buffer);
-}
-
-static gnutls_datum load_file (const char *file)
-{
-  FILE *f;
-  gnutls_datum loaded_file = { NULL, 0 };
-  long filelen;
-  void *ptr;
-
-  if (!(f = fopen(file, "r")))
-    return loaded_file;
-  if (fseek(f, 0, SEEK_END) != 0
-      || (filelen = ftell(f)) < 0
-      || fseek(f, 0, SEEK_SET) != 0
-      || !(ptr = malloc((size_t)filelen)))
-    goto out;
-  if (fread(ptr, 1, (size_t)filelen, f) < (size_t)filelen) {
-    free(ptr);
-    goto out;
-  }
-
-  loaded_file.data = ptr;
-  loaded_file.size = (unsigned int)filelen;
-out:
-  fclose(f);
-  return loaded_file;
-}
-
-static void unload_file(gnutls_datum data) {
-  free(data.data);
-}
-
-
-/* this function does a BLOCKING SSL/TLS (re-)handshake */
-static CURLcode handshake(struct connectdata *conn,
-                          gnutls_session session,
-                          int sockindex,
-                          bool duringconnect)
-{
-  struct SessionHandle *data = conn->data;
-  int rc;
-  if(!gtls_inited)
-    Curl_gtls_init();
-  do {
-    rc = gnutls_handshake(session);
-
-    if((rc == GNUTLS_E_AGAIN) || (rc == GNUTLS_E_INTERRUPTED)) {
-      long timeout_ms = Curl_timeleft(conn, NULL, duringconnect);
-
-      if(timeout_ms < 0) {
-        /* a precaution, no need to continue if time already is up */
-        failf(data, "SSL connection timeout");
-        return CURLE_OPERATION_TIMEDOUT;
-      }
-
-      rc = Curl_socket_ready(conn->sock[sockindex],
-                       conn->sock[sockindex], (int)timeout_ms);
-      if(rc > 0)
-        /* reabable or writable, go loop*/
-        continue;
-      else if(0 == rc) {
-        /* timeout */
-        failf(data, "SSL connection timeout");
-        return CURLE_OPERATION_TIMEDOUT;
-      }
-      else {
-        /* anything that gets here is fatally bad */
-        failf(data, "select/poll on SSL socket, errno: %d", SOCKERRNO);
-        return CURLE_SSL_CONNECT_ERROR;
-      }
-    }
-    else
-      break;
-  } while(1);
-
-  if(rc < 0) {
-    failf(data, "gnutls_handshake() failed: %s", gnutls_strerror(rc));
-    return CURLE_SSL_CONNECT_ERROR;
-  }
-
-  return CURLE_OK;
-}
-
-static gnutls_x509_crt_fmt do_file_type(const char *type)
-{
-  if(!type || !type[0])
-    return GNUTLS_X509_FMT_PEM;
-  if(Curl_raw_equal(type, "PEM"))
-    return GNUTLS_X509_FMT_PEM;
-  if(Curl_raw_equal(type, "DER"))
-    return GNUTLS_X509_FMT_DER;
-  return -1;
-}
-
-
-/*
- * This function is called after the TCP connect has completed. Setup the TLS
- * layer and do all necessary magic.
- */
-CURLcode
-Curl_gtls_connect(struct connectdata *conn,
-                  int sockindex)
-
-{
-  static const int cert_type_priority[] = { GNUTLS_CRT_X509, 0 };
-  struct SessionHandle *data = conn->data;
-  gnutls_session session;
-  int rc;
-  unsigned int cert_list_size;
-  const gnutls_datum *chainp;
-  unsigned int verify_status;
-  gnutls_x509_crt x509_cert,x509_issuer;
-  gnutls_datum issuerp;
-  char certbuf[256]; /* big enough? */
-  size_t size;
-  unsigned int algo;
-  unsigned int bits;
-  time_t certclock;
-  const char *ptr;
-  void *ssl_sessionid;
-  size_t ssl_idsize;
-  bool sni = TRUE; /* default is SNI enabled */
-#ifdef ENABLE_IPV6
-  struct in6_addr addr;
-#else
-  struct in_addr addr;
-#endif
-
-  if(conn->ssl[sockindex].state == ssl_connection_complete)
-    /* to make us tolerant against being called more than once for the
-       same connection */
-    return CURLE_OK;
-
-  if(!gtls_inited)
-    Curl_gtls_init();
-
-  /* GnuTLS only supports SSLv3 and TLSv1 */
-  if(data->set.ssl.version == CURL_SSLVERSION_SSLv2) {
-    failf(data, "GnuTLS does not support SSLv2");
-    return CURLE_SSL_CONNECT_ERROR;
-  }
-  else if(data->set.ssl.version == CURL_SSLVERSION_SSLv3)
-    sni = FALSE; /* SSLv3 has no SNI */
-
-  /* allocate a cred struct */
-  rc = gnutls_certificate_allocate_credentials(&conn->ssl[sockindex].cred);
-  if(rc != GNUTLS_E_SUCCESS) {
-    failf(data, "gnutls_cert_all_cred() failed: %s", gnutls_strerror(rc));
-    return CURLE_SSL_CONNECT_ERROR;
-  }
-
-  if(data->set.ssl.CAfile) {
-    /* set the trusted CA cert bundle file */
-    gnutls_certificate_set_verify_flags(conn->ssl[sockindex].cred,
-                                        GNUTLS_VERIFY_ALLOW_X509_V1_CA_CRT);
-
-    rc = gnutls_certificate_set_x509_trust_file(conn->ssl[sockindex].cred,
-                                                data->set.ssl.CAfile,
-                                                GNUTLS_X509_FMT_PEM);
-    if(rc < 0) {
-      infof(data, "error reading ca cert file %s (%s)\n",
-            data->set.ssl.CAfile, gnutls_strerror(rc));
-      if(data->set.ssl.verifypeer)
-        return CURLE_SSL_CACERT_BADFILE;
-    }
-    else
-      infof(data, "found %d certificates in %s\n",
-            rc, data->set.ssl.CAfile);
-  }
-
-  if(data->set.ssl.CRLfile) {
-    /* set the CRL list file */
-    rc = gnutls_certificate_set_x509_crl_file(conn->ssl[sockindex].cred,
-                                              data->set.ssl.CRLfile,
-                                              GNUTLS_X509_FMT_PEM);
-    if(rc < 0) {
-      failf(data, "error reading crl file %s (%s)\n",
-            data->set.ssl.CRLfile, gnutls_strerror(rc));
-      return CURLE_SSL_CRL_BADFILE;
-    }
-    else
-      infof(data, "found %d CRL in %s\n",
-            rc, data->set.ssl.CRLfile);
-  }
-
-  /* Initialize TLS session as a client */
-  rc = gnutls_init(&conn->ssl[sockindex].session, GNUTLS_CLIENT);
-  if(rc != GNUTLS_E_SUCCESS) {
-    failf(data, "gnutls_init() failed: %d", rc);
-    return CURLE_SSL_CONNECT_ERROR;
-  }
-
-  /* convenient assign */
-  session = conn->ssl[sockindex].session;
-
-  if ((0 == Curl_inet_pton(AF_INET, conn->host.name, &addr)) &&
-#ifdef ENABLE_IPV6
-      (0 == Curl_inet_pton(AF_INET6, conn->host.name, &addr)) &&
-#endif
-      sni &&
-      (gnutls_server_name_set(session, GNUTLS_NAME_DNS, conn->host.name,
-                              strlen(conn->host.name)) < 0))
-    infof(data, "WARNING: failed to configure server name indication (SNI) "
-          "TLS extension\n");
-
-  /* Use default priorities */
-  rc = gnutls_set_default_priority(session);
-  if(rc != GNUTLS_E_SUCCESS)
-    return CURLE_SSL_CONNECT_ERROR;
-
-  if(data->set.ssl.version == CURL_SSLVERSION_SSLv3) {
-    static const int protocol_priority[] = { GNUTLS_SSL3, 0 };
-    gnutls_protocol_set_priority(session, protocol_priority);
-    if(rc != GNUTLS_E_SUCCESS)
-      return CURLE_SSL_CONNECT_ERROR;
-  }
-
-  /* Sets the priority on the certificate types supported by gnutls. Priority
-     is higher for types specified before others. After specifying the types
-     you want, you must append a 0. */
-  rc = gnutls_certificate_type_set_priority(session, cert_type_priority);
-  if(rc != GNUTLS_E_SUCCESS)
-    return CURLE_SSL_CONNECT_ERROR;
-
-  if(data->set.str[STRING_CERT]) {
-    if( gnutls_certificate_set_x509_key_file(
-          conn->ssl[sockindex].cred,
-          data->set.str[STRING_CERT],
-          data->set.str[STRING_KEY] ?
-          data->set.str[STRING_KEY] : data->set.str[STRING_CERT],
-          do_file_type(data->set.str[STRING_CERT_TYPE]) ) != GNUTLS_E_SUCCESS) {
-      failf(data, "error reading X.509 key or certificate file");
-      return CURLE_SSL_CONNECT_ERROR;
-    }
-  }
-
-  /* put the credentials to the current session */
-  rc = gnutls_credentials_set(session, GNUTLS_CRD_CERTIFICATE,
-                              conn->ssl[sockindex].cred);
-
-  /* set the connection handle (file descriptor for the socket) */
-  gnutls_transport_set_ptr(session,
-                           GNUTLS_INT_TO_POINTER_CAST(conn->sock[sockindex]));
-
-  /* register callback functions to send and receive data. */
-  gnutls_transport_set_push_function(session, Curl_gtls_push);
-  gnutls_transport_set_pull_function(session, Curl_gtls_pull);
-
-  /* lowat must be set to zero when using custom push and pull functions. */
-  gnutls_transport_set_lowat(session, 0);
-
-  /* This might be a reconnect, so we check for a session ID in the cache
-     to speed up things */
-
-  if(!Curl_ssl_getsessionid(conn, &ssl_sessionid, &ssl_idsize)) {
-    /* we got a session id, use it! */
-    gnutls_session_set_data(session, ssl_sessionid, ssl_idsize);
-
-    /* Informational message */
-    infof (data, "SSL re-using session ID\n");
-  }
-
-  rc = handshake(conn, session, sockindex, TRUE);
-  if(rc)
-    /* handshake() sets its own error message with failf() */
-    return rc;
-
-  /* This function will return the peer's raw certificate (chain) as sent by
-     the peer. These certificates are in raw format (DER encoded for
-     X.509). In case of a X.509 then a certificate list may be present. The
-     first certificate in the list is the peer's certificate, following the
-     issuer's certificate, then the issuer's issuer etc. */
-
-  chainp = gnutls_certificate_get_peers(session, &cert_list_size);
-  if(!chainp) {
-    if(data->set.ssl.verifypeer ||
-       data->set.ssl.verifyhost ||
-       data->set.ssl.issuercert) {
-      failf(data, "failed to get server cert");
-      return CURLE_PEER_FAILED_VERIFICATION;
-    }
-    infof(data, "\t common name: WARNING couldn't obtain\n");
-  }
-
-  if(data->set.ssl.verifypeer) {
-    /* This function will try to verify the peer's certificate and return its
-       status (trusted, invalid etc.). The value of status should be one or
-       more of the gnutls_certificate_status_t enumerated elements bitwise
-       or'd. To avoid denial of service attacks some default upper limits
-       regarding the certificate key size and chain size are set. To override
-       them use gnutls_certificate_set_verify_limits(). */
-
-    rc = gnutls_certificate_verify_peers2(session, &verify_status);
-    if(rc < 0) {
-      failf(data, "server cert verify failed: %d", rc);
-      return CURLE_SSL_CONNECT_ERROR;
-    }
-
-    /* verify_status is a bitmask of gnutls_certificate_status bits */
-    if(verify_status & GNUTLS_CERT_INVALID) {
-      if(data->set.ssl.verifypeer) {
-        failf(data, "server certificate verification failed. CAfile: %s "
-              "CRLfile: %s", data->set.ssl.CAfile?data->set.ssl.CAfile:"none",
-              data->set.ssl.CRLfile?data->set.ssl.CRLfile:"none");
-        return CURLE_SSL_CACERT;
-      }
-      else
-        infof(data, "\t server certificate verification FAILED\n");
-    }
-    else
-      infof(data, "\t server certificate verification OK\n");
-  }
-  else
-    infof(data, "\t server certificate verification SKIPPED\n");
-
-  /* initialize an X.509 certificate structure. */
-  gnutls_x509_crt_init(&x509_cert);
-
-  /* convert the given DER or PEM encoded Certificate to the native
-     gnutls_x509_crt_t format */
-  gnutls_x509_crt_import(x509_cert, chainp, GNUTLS_X509_FMT_DER);
-
-  if (data->set.ssl.issuercert) {
-    gnutls_x509_crt_init(&x509_issuer);
-    issuerp = load_file(data->set.ssl.issuercert);
-    gnutls_x509_crt_import(x509_issuer, &issuerp, GNUTLS_X509_FMT_PEM);
-    rc = gnutls_x509_crt_check_issuer(x509_cert,x509_issuer);
-    unload_file(issuerp);
-    if (rc <= 0) {
-      failf(data, "server certificate issuer check failed (IssuerCert: %s)",
-            data->set.ssl.issuercert?data->set.ssl.issuercert:"none");
-      return CURLE_SSL_ISSUER_ERROR;
-    }
-    infof(data,"\t server certificate issuer check OK (Issuer Cert: %s)\n",
-          data->set.ssl.issuercert?data->set.ssl.issuercert:"none");
-  }
-
-  size=sizeof(certbuf);
-  rc = gnutls_x509_crt_get_dn_by_oid(x509_cert, GNUTLS_OID_X520_COMMON_NAME,
-                                     0, /* the first and only one */
-                                     FALSE,
-                                     certbuf,
-                                     &size);
-  if(rc) {
-    infof(data, "error fetching CN from cert:%s\n",
-          gnutls_strerror(rc));
-  }
-
-  /* This function will check if the given certificate's subject matches the
-     given hostname. This is a basic implementation of the matching described
-     in RFC2818 (HTTPS), which takes into account wildcards, and the subject
-     alternative name PKIX extension. Returns non zero on success, and zero on
-     failure. */
-  rc = gnutls_x509_crt_check_hostname(x509_cert, conn->host.name);
-
-  if(!rc) {
-    if(data->set.ssl.verifyhost > 1) {
-      failf(data, "SSL: certificate subject name (%s) does not match "
-            "target host name '%s'", certbuf, conn->host.dispname);
-      gnutls_x509_crt_deinit(x509_cert);
-      return CURLE_PEER_FAILED_VERIFICATION;
-    }
-    else
-      infof(data, "\t common name: %s (does not match '%s')\n",
-            certbuf, conn->host.dispname);
-  }
-  else
-    infof(data, "\t common name: %s (matched)\n", certbuf);
-
-  /* Check for time-based validity */
-  certclock = gnutls_x509_crt_get_expiration_time(x509_cert);
-
-  if(certclock == (time_t)-1) {
-    failf(data, "server cert expiration date verify failed");
-    return CURLE_SSL_CONNECT_ERROR;
-  }
-
-  if(certclock < time(NULL)) {
-    if(data->set.ssl.verifypeer) {
-      failf(data, "server certificate expiration date has passed.");
-      return CURLE_PEER_FAILED_VERIFICATION;
-    }
-    else
-      infof(data, "\t server certificate expiration date FAILED\n");
-  }
-  else
-    infof(data, "\t server certificate expiration date OK\n");
-
-  certclock = gnutls_x509_crt_get_activation_time(x509_cert);
-
-  if(certclock == (time_t)-1) {
-    failf(data, "server cert activation date verify failed");
-    return CURLE_SSL_CONNECT_ERROR;
-  }
-
-  if(certclock > time(NULL)) {
-    if(data->set.ssl.verifypeer) {
-      failf(data, "server certificate not activated yet.");
-      return CURLE_PEER_FAILED_VERIFICATION;
-    }
-    else
-      infof(data, "\t server certificate activation date FAILED\n");
-  }
-  else
-    infof(data, "\t server certificate activation date OK\n");
-
-  /* Show:
-
-  - ciphers used
-  - subject
-  - start date
-  - expire date
-  - common name
-  - issuer
-
-  */
-
-  /* public key algorithm's parameters */
-  algo = gnutls_x509_crt_get_pk_algorithm(x509_cert, &bits);
-  infof(data, "\t certificate public key: %s\n",
-        gnutls_pk_algorithm_get_name(algo));
-
-  /* version of the X.509 certificate. */
-  infof(data, "\t certificate version: #%d\n",
-        gnutls_x509_crt_get_version(x509_cert));
-
-
-  size = sizeof(certbuf);
-  gnutls_x509_crt_get_dn(x509_cert, certbuf, &size);
-  infof(data, "\t subject: %s\n", certbuf);
-
-  certclock = gnutls_x509_crt_get_activation_time(x509_cert);
-  showtime(data, "start date", certclock);
-
-  certclock = gnutls_x509_crt_get_expiration_time(x509_cert);
-  showtime(data, "expire date", certclock);
-
-  size = sizeof(certbuf);
-  gnutls_x509_crt_get_issuer_dn(x509_cert, certbuf, &size);
-  infof(data, "\t issuer: %s\n", certbuf);
-
-  gnutls_x509_crt_deinit(x509_cert);
-
-  /* compression algorithm (if any) */
-  ptr = gnutls_compression_get_name(gnutls_compression_get(session));
-  /* the *_get_name() says "NULL" if GNUTLS_COMP_NULL is returned */
-  infof(data, "\t compression: %s\n", ptr);
-
-  /* the name of the cipher used. ie 3DES. */
-  ptr = gnutls_cipher_get_name(gnutls_cipher_get(session));
-  infof(data, "\t cipher: %s\n", ptr);
-
-  /* the MAC algorithms name. ie SHA1 */
-  ptr = gnutls_mac_get_name(gnutls_mac_get(session));
-  infof(data, "\t MAC: %s\n", ptr);
-
-  conn->ssl[sockindex].state = ssl_connection_complete;
-
-  {
-    /* we always unconditionally get the session id here, as even if we
-       already got it from the cache and asked to use it in the connection, it
-       might've been rejected and then a new one is in use now and we need to
-       detect that. */
-    void *connect_sessionid;
-    size_t connect_idsize;
-
-    /* get the session ID data size */
-    gnutls_session_get_data(session, NULL, &connect_idsize);
-    connect_sessionid = malloc(connect_idsize); /* get a buffer for it */
-
-    if(connect_sessionid) {
-      /* extract session ID to the allocated buffer */
-      gnutls_session_get_data(session, connect_sessionid, &connect_idsize);
-
-      if(ssl_sessionid)
-        /* there was one before in the cache, so instead of risking that the
-           previous one was rejected, we just kill that and store the new */
-        Curl_ssl_delsessionid(conn, ssl_sessionid);
-
-      /* store this session id */
-      return Curl_ssl_addsessionid(conn, connect_sessionid, connect_idsize);
-    }
-
-  }
-
-  return CURLE_OK;
-}
-
-
-/* for documentation see Curl_ssl_send() in sslgen.h */
-ssize_t Curl_gtls_send(struct connectdata *conn,
-                       int sockindex,
-                       const void *mem,
-                       size_t len,
-                       int *curlcode)
-{
-  ssize_t rc = gnutls_record_send(conn->ssl[sockindex].session, mem, len);
-
-  if(rc < 0 ) {
-    *curlcode = (rc == GNUTLS_E_AGAIN)
-      ? /* EWOULDBLOCK */ -1
-      : CURLE_SEND_ERROR;
-
-    rc = -1;
-  }
-
-  return rc;
-}
-
-void Curl_gtls_close_all(struct SessionHandle *data)
-{
-  /* FIX: make the OpenSSL code more generic and use parts of it here */
-  (void)data;
-}
-
-static void close_one(struct connectdata *conn,
-                      int idx)
-{
-  if(conn->ssl[idx].session) {
-    gnutls_bye(conn->ssl[idx].session, GNUTLS_SHUT_RDWR);
-    gnutls_deinit(conn->ssl[idx].session);
-    conn->ssl[idx].session = NULL;
-  }
-  if(conn->ssl[idx].cred) {
-    gnutls_certificate_free_credentials(conn->ssl[idx].cred);
-    conn->ssl[idx].cred = NULL;
-  }
-}
-
-void Curl_gtls_close(struct connectdata *conn, int sockindex)
-{
-  close_one(conn, sockindex);
-}
-
-/*
- * This function is called to shut down the SSL layer but keep the
- * socket open (CCC - Clear Command Channel)
- */
-int Curl_gtls_shutdown(struct connectdata *conn, int sockindex)
-{
-  ssize_t result;
-  int retval = 0;
-  struct SessionHandle *data = conn->data;
-  int done = 0;
-  char buf[120];
-
-  /* This has only been tested on the proftpd server, and the mod_tls code
-     sends a close notify alert without waiting for a close notify alert in
-     response. Thus we wait for a close notify alert from the server, but
-     we do not send one. Let's hope other servers do the same... */
-
-  if(data->set.ftp_ccc == CURLFTPSSL_CCC_ACTIVE)
-      gnutls_bye(conn->ssl[sockindex].session, GNUTLS_SHUT_WR);
-
-  if(conn->ssl[sockindex].session) {
-    while(!done) {
-      int what = Curl_socket_ready(conn->sock[sockindex],
-                             CURL_SOCKET_BAD, SSL_SHUTDOWN_TIMEOUT);
-      if(what > 0) {
-        /* Something to read, let's do it and hope that it is the close
-           notify alert from the server */
-        result = gnutls_record_recv(conn->ssl[sockindex].session,
-                                    buf, sizeof(buf));
-        switch(result) {
-        case 0:
-          /* This is the expected response. There was no data but only
-             the close notify alert */
-          done = 1;
-          break;
-        case GNUTLS_E_AGAIN:
-        case GNUTLS_E_INTERRUPTED:
-          infof(data, "GNUTLS_E_AGAIN || GNUTLS_E_INTERRUPTED\n");
-          break;
-        default:
-          retval = -1;
-          done = 1;
-          break;
-        }
-      }
-      else if(0 == what) {
-        /* timeout */
-        failf(data, "SSL shutdown timeout");
-        done = 1;
-        break;
-      }
-      else {
-        /* anything that gets here is fatally bad */
-        failf(data, "select/poll on SSL socket, errno: %d", SOCKERRNO);
-        retval = -1;
-        done = 1;
-      }
-    }
-    gnutls_deinit(conn->ssl[sockindex].session);
-  }
-  gnutls_certificate_free_credentials(conn->ssl[sockindex].cred);
-
-  conn->ssl[sockindex].cred = NULL;
-  conn->ssl[sockindex].session = NULL;
-
-  return retval;
-}
-
-/* for documentation see Curl_ssl_recv() in sslgen.h */
-ssize_t Curl_gtls_recv(struct connectdata *conn, /* connection data */
-                       int num,                  /* socketindex */
-                       char *buf,                /* store read data here */
-                       size_t buffersize,        /* max amount to read */
-                       int *curlcode)
-{
-  ssize_t ret;
-
-  ret = gnutls_record_recv(conn->ssl[num].session, buf, buffersize);
-  if((ret == GNUTLS_E_AGAIN) || (ret == GNUTLS_E_INTERRUPTED)) {
-    *curlcode = -1;
-    return -1;
-  }
-
-  if(ret == GNUTLS_E_REHANDSHAKE) {
-    /* BLOCKING call, this is bad but a work-around for now. Fixing this "the
-       proper way" takes a whole lot of work. */
-    CURLcode rc = handshake(conn, conn->ssl[num].session, num, FALSE);
-    if(rc)
-      /* handshake() writes error message on its own */
-      *curlcode = rc;
-    else
-      *curlcode = -1; /* then return as if this was a wouldblock */
-    return -1;
-  }
-
-  if(!ret) {
-    failf(conn->data, "Peer closed the TLS connection");
-    *curlcode = CURLE_RECV_ERROR;
-    return -1;
-  }
-
-  if(ret < 0) {
-    failf(conn->data, "GnuTLS recv error (%d): %s",
-          (int)ret, gnutls_strerror((int)ret));
-    *curlcode = CURLE_RECV_ERROR;
-    return -1;
-  }
-
-  return ret;
-}
-
-void Curl_gtls_session_free(void *ptr)
-{
-  free(ptr);
-}
-
-size_t Curl_gtls_version(char *buffer, size_t size)
-{
-  return snprintf(buffer, size, "GnuTLS/%s", gnutls_check_version(NULL));
-}
-
-int Curl_gtls_seed(struct SessionHandle *data)
-{
-  /* we have the "SSL is seeded" boolean static to prevent multiple
-     time-consuming seedings in vain */
-  static bool ssl_seeded = FALSE;
-
-  /* Quickly add a bit of entropy */
-  gcry_fast_random_poll();
-
-  if(!ssl_seeded || data->set.str[STRING_SSL_RANDOM_FILE] ||
-     data->set.str[STRING_SSL_EGDSOCKET]) {
-
-    /* TODO: to a good job seeding the RNG
-       This may involve the gcry_control function and these options:
-       GCRYCTL_SET_RANDOM_SEED_FILE
-       GCRYCTL_SET_RNDEGD_SOCKET
-    */
-    ssl_seeded = TRUE;
-  }
-  return 0;
-}
-
-#endif /* USE_GNUTLS */
diff --git a/src/other/curl/lib/gtls.h b/src/other/curl/lib/gtls.h
deleted file mode 100644
index 9fe618a..0000000
--- a/src/other/curl/lib/gtls.h
+++ /dev/null
@@ -1,69 +0,0 @@
-#ifndef __GTLS_H
-#define __GTLS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#ifdef USE_GNUTLS
-
-int Curl_gtls_init(void);
-int Curl_gtls_cleanup(void);
-CURLcode Curl_gtls_connect(struct connectdata *conn, int sockindex);
-
-/* tell GnuTLS to close down all open information regarding connections (and
-   thus session ID caching etc) */
-void Curl_gtls_close_all(struct SessionHandle *data);
-
- /* close a SSL connection */
-void Curl_gtls_close(struct connectdata *conn, int sockindex);
-
-/* for documentation see Curl_ssl_send() in sslgen.h */
-ssize_t Curl_gtls_send(struct connectdata *conn, int sockindex,
-                       const void *mem, size_t len, int *curlcode);
-
-/* for documentation see Curl_ssl_recv() in sslgen.h */
-ssize_t Curl_gtls_recv(struct connectdata *conn, int num, char *buf,
-                       size_t buffersize, int *curlcode);
-
-void Curl_gtls_session_free(void *ptr);
-size_t Curl_gtls_version(char *buffer, size_t size);
-int Curl_gtls_shutdown(struct connectdata *conn, int sockindex);
-int Curl_gtls_seed(struct SessionHandle *data);
-
-/* API setup for GnuTLS */
-#define curlssl_init Curl_gtls_init
-#define curlssl_cleanup Curl_gtls_cleanup
-#define curlssl_connect Curl_gtls_connect
-#define curlssl_session_free(x)  Curl_gtls_session_free(x)
-#define curlssl_close_all Curl_gtls_close_all
-#define curlssl_close Curl_gtls_close
-#define curlssl_shutdown(x,y) Curl_gtls_shutdown(x,y)
-#define curlssl_set_engine(x,y) (x=x, y=y, CURLE_FAILED_INIT)
-#define curlssl_set_engine_default(x) (x=x, CURLE_FAILED_INIT)
-#define curlssl_engines_list(x) (x=x, (struct curl_slist *)NULL)
-#define curlssl_send Curl_gtls_send
-#define curlssl_recv Curl_gtls_recv
-#define curlssl_version Curl_gtls_version
-#define curlssl_check_cxn(x) (x=x, -1)
-#define curlssl_data_pending(x,y) (x=x, y=y, 0)
-
-#endif /* USE_GNUTLS */
-#endif
diff --git a/src/other/curl/lib/hash.c b/src/other/curl/lib/hash.c
deleted file mode 100644
index cdcd260..0000000
--- a/src/other/curl/lib/hash.c
+++ /dev/null
@@ -1,339 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <string.h>
-#include <stdlib.h>
-
-#include "hash.h"
-#include "llist.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-static void
-hash_element_dtor(void *user, void *element)
-{
-  struct curl_hash *h = (struct curl_hash *) user;
-  struct curl_hash_element *e = (struct curl_hash_element *) element;
-
-  if(e->key)
-    free(e->key);
-
-  if(e->ptr)
-    h->dtor(e->ptr);
-
-  free(e);
-}
-
-/* return 1 on error, 0 is fine */
-int
-Curl_hash_init(struct curl_hash *h,
-               int slots,
-               hash_function hfunc,
-               comp_function comparator,
-               curl_hash_dtor dtor)
-{
-  int i;
-
-  if(!slots || !hfunc || !comparator ||!dtor) {
-    return 1; /* failure */
-  }
-
-  h->hash_func = hfunc;
-  h->comp_func = comparator;
-  h->dtor = dtor;
-  h->size = 0;
-  h->slots = slots;
-
-  h->table = malloc(slots * sizeof(struct curl_llist *));
-  if(h->table) {
-    for (i = 0; i < slots; ++i) {
-      h->table[i] = Curl_llist_alloc((curl_llist_dtor) hash_element_dtor);
-      if(!h->table[i]) {
-        while(i--)
-          Curl_llist_destroy(h->table[i], NULL);
-        free(h->table);
-        return 1; /* failure */
-      }
-    }
-    return 0; /* fine */
-  }
-  else
-    return 1; /* failure */
-}
-
-struct curl_hash *
-Curl_hash_alloc(int slots,
-                hash_function hfunc,
-                comp_function comparator,
-                curl_hash_dtor dtor)
-{
-  struct curl_hash *h;
-
-  if(!slots || !hfunc || !comparator ||!dtor) {
-    return NULL; /* failure */
-  }
-
-  h = malloc(sizeof(struct curl_hash));
-  if(h) {
-    if(Curl_hash_init(h, slots, hfunc, comparator, dtor)) {
-      /* failure */
-      free(h);
-      h = NULL;
-    }
-  }
-
-  return h;
-}
-
-
-
-static struct curl_hash_element *
-mk_hash_element(const void *key, size_t key_len, const void *p)
-{
-  struct curl_hash_element *he = malloc(sizeof(struct curl_hash_element));
-
-  if(he) {
-    void *dupkey = malloc(key_len);
-    if(dupkey) {
-      /* copy the key */
-      memcpy(dupkey, key, key_len);
-
-      he->key = dupkey;
-      he->key_len = key_len;
-      he->ptr = (void *) p;
-    }
-    else {
-      /* failed to duplicate the key, free memory and fail */
-      free(he);
-      he = NULL;
-    }
-  }
-  return he;
-}
-
-#define FETCH_LIST(x,y,z) x->table[x->hash_func(y, z, x->slots)]
-
-/* Insert the data in the hash. If there already was a match in the hash,
-   that data is replaced. */
-void *
-Curl_hash_add(struct curl_hash *h, void *key, size_t key_len, void *p)
-{
-  struct curl_hash_element  *he;
-  struct curl_llist_element *le;
-  struct curl_llist *l = FETCH_LIST (h, key, key_len);
-
-  for (le = l->head; le; le = le->next) {
-    he = (struct curl_hash_element *) le->ptr;
-    if(h->comp_func(he->key, he->key_len, key, key_len)) {
-      Curl_llist_remove(l, le, (void *)h);
-      --h->size;
-      break;
-    }
-  }
-
-  he = mk_hash_element(key, key_len, p);
-  if(he) {
-    if(Curl_llist_insert_next(l, l->tail, he)) {
-      ++h->size;
-      return p; /* return the new entry */
-    }
-    /*
-     * Couldn't insert it, destroy the 'he' element and the key again. We
-     * don't call hash_element_dtor() since that would also call the
-     * "destructor" for the actual data 'p'. When we fail, we shall not touch
-     * that data.
-     */
-    free(he->key);
-    free(he);
-  }
-
-  return NULL; /* failure */
-}
-
-/* remove the identified hash entry, returns non-zero on failure */
-int Curl_hash_delete(struct curl_hash *h, void *key, size_t key_len)
-{
-  struct curl_llist_element *le;
-  struct curl_hash_element  *he;
-  struct curl_llist *l = FETCH_LIST(h, key, key_len);
-
-  for (le = l->head; le; le = le->next) {
-    he = le->ptr;
-    if(h->comp_func(he->key, he->key_len, key, key_len)) {
-      Curl_llist_remove(l, le, (void *) h);
-      return 0;
-    }
-  }
-  return 1;
-}
-
-void *
-Curl_hash_pick(struct curl_hash *h, void *key, size_t key_len)
-{
-  struct curl_llist_element *le;
-  struct curl_hash_element  *he;
-  struct curl_llist *l = FETCH_LIST(h, key, key_len);
-
-  for (le = l->head; le; le = le->next) {
-    he = le->ptr;
-    if(h->comp_func(he->key, he->key_len, key, key_len)) {
-      return he->ptr;
-    }
-  }
-
-  return NULL;
-}
-
-#if defined(DEBUGBUILD) && defined(AGGRESIVE_TEST)
-void
-Curl_hash_apply(curl_hash *h, void *user,
-                void (*cb)(void *user, void *ptr))
-{
-  struct curl_llist_element  *le;
-  int                  i;
-
-  for (i = 0; i < h->slots; ++i) {
-    for (le = (h->table[i])->head;
-         le;
-         le = le->next) {
-      curl_hash_element *el = le->ptr;
-      cb(user, el->ptr);
-    }
-  }
-}
-#endif
-
-void
-Curl_hash_clean(struct curl_hash *h)
-{
-  int i;
-
-  for (i = 0; i < h->slots; ++i) {
-    Curl_llist_destroy(h->table[i], (void *) h);
-    h->table[i] = NULL;
-  }
-
-  free(h->table);
-}
-
-void
-Curl_hash_clean_with_criterium(struct curl_hash *h, void *user,
-                               int (*comp)(void *, void *))
-{
-  struct curl_llist_element *le;
-  struct curl_llist_element *lnext;
-  struct curl_llist *list;
-  int i;
-
-  for (i = 0; i < h->slots; ++i) {
-    list = h->table[i];
-    le = list->head; /* get first list entry */
-    while(le) {
-      struct curl_hash_element *he = le->ptr;
-      lnext = le->next;
-      /* ask the callback function if we shall remove this entry or not */
-      if(comp(user, he->ptr)) {
-        Curl_llist_remove(list, le, (void *) h);
-        --h->size; /* one less entry in the hash now */
-      }
-      le = lnext;
-    }
-  }
-}
-
-void
-Curl_hash_destroy(struct curl_hash *h)
-{
-  if(!h)
-    return;
-
-  Curl_hash_clean(h);
-
-  free(h);
-}
-
-size_t Curl_hash_str(void* key, size_t key_length, size_t slots_num)
-{
-  const char* key_str = (const char *) key;
-  const char *end = key_str + key_length;
-  unsigned long h = 5381;
-
-  while(key_str < end) {
-    h += h << 5;
-    h ^= (unsigned long) *key_str++;
-  }
-
-  return (h % slots_num);
-}
-
-size_t Curl_str_key_compare(void*k1, size_t key1_len, void*k2, size_t key2_len)
-{
-  char *key1 = (char *)k1;
-  char *key2 = (char *)k2;
-
-  if(key1_len == key2_len &&
-      *key1 == *key2 &&
-      memcmp(key1, key2, key1_len) == 0) {
-    return 1;
-  }
-
-  return 0;
-}
-
-#if 0 /* useful function for debugging hashes and their contents */
-void Curl_hash_print(struct curl_hash *h,
-                     void (*func)(void *))
-{
-  int i;
-  struct curl_llist_element *le;
-  struct curl_llist *list;
-  struct curl_hash_element  *he;
-  if(!h)
-    return;
-
-  fprintf(stderr, "=Hash dump=\n");
-
-  for (i = 0; i < h->slots; i++) {
-    list = h->table[i];
-    le = list->head; /* get first list entry */
-    if(le) {
-      fprintf(stderr, "index %d:", i);
-      while(le) {
-        he = le->ptr;
-        if(func)
-          func(he->ptr);
-        else
-          fprintf(stderr, " [%p]", he->ptr);
-        le = le->next;
-      }
-      fprintf(stderr, "\n");
-    }
-  }
-}
-#endif
diff --git a/src/other/curl/lib/hash.h b/src/other/curl/lib/hash.h
deleted file mode 100644
index 993aaed..0000000
--- a/src/other/curl/lib/hash.h
+++ /dev/null
@@ -1,92 +0,0 @@
-#ifndef __HASH_H
-#define __HASH_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <stddef.h>
-
-#include "llist.h"
-
-/* Hash function prototype */
-typedef size_t (*hash_function) (void* key,
-                                 size_t key_length,
-                                 size_t slots_num);
-
-/*
-   Comparator function prototype. Compares two keys.
-*/
-typedef size_t (*comp_function) (void* key1,
-                                 size_t key1_len,
-                                 void*key2,
-                                 size_t key2_len);
-
-typedef void (*curl_hash_dtor)(void *);
-
-struct curl_hash {
-  struct curl_llist **table;
-
-  /* Hash function to be used for this hash table */
-  hash_function hash_func;
-
-  /* Comparator function to compare keys */
-  comp_function comp_func;
-  curl_hash_dtor   dtor;
-  int slots;
-  size_t size;
-};
-
-struct curl_hash_element {
-  void   *ptr;
-  char   *key;
-  size_t key_len;
-};
-
-
-int Curl_hash_init(struct curl_hash *h,
-                   int slots,
-                   hash_function hfunc,
-                   comp_function comparator,
-                   curl_hash_dtor dtor);
-
-struct curl_hash *Curl_hash_alloc(int slots,
-                                  hash_function hfunc,
-                                  comp_function comparator,
-                                  curl_hash_dtor dtor);
-
-void *Curl_hash_add(struct curl_hash *h, void *key, size_t key_len, void *p);
-int Curl_hash_delete(struct curl_hash *h, void *key, size_t key_len);
-void *Curl_hash_pick(struct curl_hash *, void * key, size_t key_len);
-void Curl_hash_apply(struct curl_hash *h, void *user,
-                     void (*cb)(void *user, void *ptr));
-int Curl_hash_count(struct curl_hash *h);
-void Curl_hash_clean(struct curl_hash *h);
-void Curl_hash_clean_with_criterium(struct curl_hash *h, void *user,
-                                    int (*comp)(void *, void *));
-void Curl_hash_destroy(struct curl_hash *h);
-
-size_t Curl_hash_str(void* key, size_t key_length, size_t slots_num);
-size_t Curl_str_key_compare(void*k1, size_t key1_len, void*k2,
-                            size_t key2_len);
-
-#endif
diff --git a/src/other/curl/lib/hostares.c b/src/other/curl/lib/hostares.c
deleted file mode 100644
index 01b2142..0000000
--- a/src/other/curl/lib/hostares.c
+++ /dev/null
@@ -1,416 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <string.h>
-
-#ifdef HAVE_LIMITS_H
-#include <limits.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>     /* required for free() prototypes */
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>     /* for the close() proto */
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#include <stdlib.h>
-#endif
-
-#ifdef HAVE_PROCESS_H
-#include <process.h>
-#endif
-
-#if (defined(NETWARE) && defined(__NOVELL_LIBC__))
-#undef in_addr_t
-#define in_addr_t unsigned long
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "hostip.h"
-#include "hash.h"
-#include "share.h"
-#include "strerror.h"
-#include "url.h"
-#include "multiif.h"
-#include "inet_pton.h"
-#include "connect.h"
-#include "select.h"
-#include "progress.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/***********************************************************************
- * Only for ares-enabled builds
- **********************************************************************/
-
-#ifdef CURLRES_ARES
-
-/*
- * Curl_resolv_fdset() is called when someone from the outside world (using
- * curl_multi_fdset()) wants to get our fd_set setup and we're talking with
- * ares. The caller must make sure that this function is only called when we
- * have a working ares channel.
- *
- * Returns: CURLE_OK always!
- */
-
-int Curl_resolv_getsock(struct connectdata *conn,
-                        curl_socket_t *socks,
-                        int numsocks)
-
-{
-  struct timeval maxtime;
-  struct timeval timebuf;
-  struct timeval *timeout;
-  int max = ares_getsock(conn->data->state.areschannel,
-                         (ares_socket_t *)socks, numsocks);
-
-
-  maxtime.tv_sec = CURL_TIMEOUT_RESOLVE;
-  maxtime.tv_usec = 0;
-
-  timeout = ares_timeout(conn->data->state.areschannel, &maxtime, &timebuf);
-
-  Curl_expire(conn->data,
-              (timeout->tv_sec * 1000) + (timeout->tv_usec/1000));
-
-  return max;
-}
-
-/*
- * waitperform()
- *
- * 1) Ask ares what sockets it currently plays with, then
- * 2) wait for the timeout period to check for action on ares' sockets.
- * 3) tell ares to act on all the sockets marked as "with action"
- *
- * return number of sockets it worked on
- */
-
-static int waitperform(struct connectdata *conn, int timeout_ms)
-{
-  struct SessionHandle *data = conn->data;
-  int nfds;
-  int bitmask;
-  ares_socket_t socks[ARES_GETSOCK_MAXNUM];
-  struct pollfd pfd[ARES_GETSOCK_MAXNUM];
-  int i;
-  int num = 0;
-
-  bitmask = ares_getsock(data->state.areschannel, socks, ARES_GETSOCK_MAXNUM);
-
-  for(i=0; i < ARES_GETSOCK_MAXNUM; i++) {
-    pfd[i].events = 0;
-    pfd[i].revents = 0;
-    if(ARES_GETSOCK_READABLE(bitmask, i)) {
-      pfd[i].fd = socks[i];
-      pfd[i].events |= POLLRDNORM|POLLIN;
-    }
-    if(ARES_GETSOCK_WRITABLE(bitmask, i)) {
-      pfd[i].fd = socks[i];
-      pfd[i].events |= POLLWRNORM|POLLOUT;
-    }
-    if(pfd[i].events != 0)
-      num++;
-    else
-      break;
-  }
-
-  if(num)
-    nfds = Curl_poll(pfd, num, timeout_ms);
-  else
-    nfds = 0;
-
-  if(!nfds)
-    /* Call ares_process() unconditonally here, even if we simply timed out
-       above, as otherwise the ares name resolve won't timeout! */
-    ares_process_fd(data->state.areschannel, ARES_SOCKET_BAD, ARES_SOCKET_BAD);
-  else {
-    /* move through the descriptors and ask for processing on them */
-    for(i=0; i < num; i++)
-      ares_process_fd(data->state.areschannel,
-                      pfd[i].revents & (POLLRDNORM|POLLIN)?
-                      pfd[i].fd:ARES_SOCKET_BAD,
-                      pfd[i].revents & (POLLWRNORM|POLLOUT)?
-                      pfd[i].fd:ARES_SOCKET_BAD);
-  }
-  return nfds;
-}
-
-/*
- * Curl_is_resolved() is called repeatedly to check if a previous name resolve
- * request has completed. It should also make sure to time-out if the
- * operation seems to take too long.
- *
- * Returns normal CURLcode errors.
- */
-CURLcode Curl_is_resolved(struct connectdata *conn,
-                          struct Curl_dns_entry **dns)
-{
-  struct SessionHandle *data = conn->data;
-
-  *dns = NULL;
-
-  waitperform(conn, 0);
-
-  if(conn->async.done) {
-    /* we're done, kill the ares handle */
-    if(!conn->async.dns) {
-      failf(data, "Could not resolve host: %s (%s)", conn->host.dispname,
-            ares_strerror(conn->async.status));
-      return CURLE_COULDNT_RESOLVE_HOST;
-    }
-    *dns = conn->async.dns;
-  }
-
-  return CURLE_OK;
-}
-
-/*
- * Curl_wait_for_resolv() waits for a resolve to finish. This function should
- * be avoided since using this risk getting the multi interface to "hang".
- *
- * If 'entry' is non-NULL, make it point to the resolved dns entry
- *
- * Returns CURLE_COULDNT_RESOLVE_HOST if the host was not resolved, and
- * CURLE_OPERATION_TIMEDOUT if a time-out occurred.
- */
-CURLcode Curl_wait_for_resolv(struct connectdata *conn,
-                              struct Curl_dns_entry **entry)
-{
-  CURLcode rc=CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  long timeout;
-  struct timeval now = Curl_tvnow();
-
-  /* now, see if there's a connect timeout or a regular timeout to
-     use instead of the default one */
-  if(conn->data->set.connecttimeout)
-    timeout = conn->data->set.connecttimeout;
-  else if(conn->data->set.timeout)
-    timeout = conn->data->set.timeout;
-  else
-    timeout = CURL_TIMEOUT_RESOLVE * 1000; /* default name resolve timeout */
-
-  /* Wait for the name resolve query to complete. */
-  while(1) {
-    struct timeval *tvp, tv, store;
-    long timediff;
-    int itimeout;
-    int timeout_ms;
-
-    itimeout = (timeout > (long)INT_MAX) ? INT_MAX : (int)timeout;
-
-    store.tv_sec = itimeout/1000;
-    store.tv_usec = (itimeout%1000)*1000;
-
-    tvp = ares_timeout(data->state.areschannel, &store, &tv);
-
-    /* use the timeout period ares returned to us above if less than one
-       second is left, otherwise just use 1000ms to make sure the progress
-       callback gets called frequent enough */
-    if(!tvp->tv_sec)
-      timeout_ms = tvp->tv_usec/1000;
-    else
-      timeout_ms = 1000;
-
-    waitperform(conn, timeout_ms);
-
-    if(conn->async.done)
-      break;
-
-    if(Curl_pgrsUpdate(conn)) {
-      rc = CURLE_ABORTED_BY_CALLBACK;
-      timeout = -1; /* trigger the cancel below */
-    }
-    else {
-      timediff = Curl_tvdiff(Curl_tvnow(), now); /* spent time */
-      timeout -= timediff?timediff:1; /* always deduct at least 1 */
-    }
-    if(timeout < 0) {
-      /* our timeout, so we cancel the ares operation */
-      ares_cancel(data->state.areschannel);
-      break;
-    }
-  }
-
-  /* Operation complete, if the lookup was successful we now have the entry
-     in the cache. */
-
-  if(entry)
-    *entry = conn->async.dns;
-
-  if(!conn->async.dns) {
-    /* a name was not resolved */
-    if((timeout < 0) || (conn->async.status == ARES_ETIMEOUT)) {
-      if (conn->bits.httpproxy) {
-        failf(data, "Resolving proxy timed out: %s", conn->proxy.dispname);
-        rc = CURLE_COULDNT_RESOLVE_PROXY;
-      }
-      else {
-        failf(data, "Resolving host timed out: %s", conn->host.dispname);
-        rc = CURLE_COULDNT_RESOLVE_HOST;
-      }
-    }
-    else if(conn->async.done) {
-      if (conn->bits.httpproxy) {
-        failf(data, "Could not resolve proxy: %s (%s)", conn->proxy.dispname,
-              ares_strerror(conn->async.status));
-        rc = CURLE_COULDNT_RESOLVE_PROXY;
-      }
-      else {
-        failf(data, "Could not resolve host: %s (%s)", conn->host.dispname,
-              ares_strerror(conn->async.status));
-        rc = CURLE_COULDNT_RESOLVE_HOST;
-      }
-    }
-    else
-      rc = CURLE_OPERATION_TIMEDOUT;
-
-    /* close the connection, since we can't return failure here without
-       cleaning up this connection properly */
-    conn->bits.close = TRUE;
-  }
-
-  return rc;
-}
-
-/*
- * ares_query_completed_cb() is the callback that ares will call when
- * the host query initiated by ares_gethostbyname() from Curl_getaddrinfo(),
- * when using ares, is completed either successfully or with failure.
- */
-static void ares_query_completed_cb(void *arg,  /* (struct connectdata *) */
-                                    int status,
-#ifdef HAVE_CARES_CALLBACK_TIMEOUTS
-                                    int timeouts,
-#endif
-                                    struct hostent *hostent)
-{
-  struct connectdata *conn = (struct connectdata *)arg;
-  struct Curl_addrinfo * ai = NULL;
-
-#ifdef HAVE_CARES_CALLBACK_TIMEOUTS
-  (void)timeouts; /* ignored */
-#endif
-
-  if (status == CURL_ASYNC_SUCCESS) {
-    ai = Curl_he2ai(hostent, conn->async.port);
-  }
-
-  (void)Curl_addrinfo_callback(arg, status, ai);
-}
-
-/*
- * Curl_getaddrinfo() - when using ares
- *
- * Returns name information about the given hostname and port number. If
- * successful, the 'hostent' is returned and the forth argument will point to
- * memory we need to free after use. That memory *MUST* be freed with
- * Curl_freeaddrinfo(), nothing else.
- */
-Curl_addrinfo *Curl_getaddrinfo(struct connectdata *conn,
-                                const char *hostname,
-                                int port,
-                                int *waitp)
-{
-  char *bufp;
-  struct SessionHandle *data = conn->data;
-  struct in_addr in;
-  int family = PF_INET;
-#ifdef ENABLE_IPV6 /* CURLRES_IPV6 */
-  struct in6_addr in6;
-#endif /* CURLRES_IPV6 */
-
-  *waitp = 0; /* default to synchronous response */
-
-  /* First check if this is an IPv4 address string */
-  if(Curl_inet_pton(AF_INET, hostname, &in) > 0) {
-    /* This is a dotted IP address 123.123.123.123-style */
-    return Curl_ip2addr(AF_INET, &in, hostname, port);
-  }
-
-#ifdef ENABLE_IPV6 /* CURLRES_IPV6 */
-  /* Otherwise, check if this is an IPv6 address string */
-  if (Curl_inet_pton (AF_INET6, hostname, &in6) > 0) {
-    /* This must be an IPv6 address literal.  */
-    return Curl_ip2addr(AF_INET6, &in6, hostname, port);
-  }
-
-  switch(data->set.ip_version) {
-  default:
-#if ARES_VERSION >= 0x010601
-    family = PF_UNSPEC; /* supported by c-ares since 1.6.1, so for older
-                           c-ares versions this just falls through and defaults
-                           to PF_INET */
-    break;
-#endif
-  case CURL_IPRESOLVE_V4:
-    family = PF_INET;
-    break;
-  case CURL_IPRESOLVE_V6:
-    family = PF_INET6;
-    break;
-  }
-#endif /* CURLRES_IPV6 */
-
-  bufp = strdup(hostname);
-
-  if(bufp) {
-    Curl_safefree(conn->async.hostname);
-    conn->async.hostname = bufp;
-    conn->async.port = port;
-    conn->async.done = FALSE; /* not done */
-    conn->async.status = 0;   /* clear */
-    conn->async.dns = NULL;   /* clear */
-
-    /* areschannel is already setup in the Curl_open() function */
-    ares_gethostbyname(data->state.areschannel, hostname, family,
-                       (ares_host_callback)ares_query_completed_cb, conn);
-
-    *waitp = 1; /* expect asynchronous response */
-  }
-  return NULL; /* no struct yet */
-}
-#endif /* CURLRES_ARES */
diff --git a/src/other/curl/lib/hostasyn.c b/src/other/curl/lib/hostasyn.c
deleted file mode 100644
index 127b8d3..0000000
--- a/src/other/curl/lib/hostasyn.c
+++ /dev/null
@@ -1,129 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <string.h>
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>     /* required for free() prototypes */
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>     /* for the close() proto */
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#include <stdlib.h>
-#endif
-
-#ifdef HAVE_PROCESS_H
-#include <process.h>
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "hostip.h"
-#include "hash.h"
-#include "share.h"
-#include "strerror.h"
-#include "url.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/***********************************************************************
- * Only for builds using asynchronous name resolves
- **********************************************************************/
-#ifdef CURLRES_ASYNCH
-
-/*
- * Curl_addrinfo_callback() gets called by ares, gethostbyname_thread()
- * or getaddrinfo_thread() when we got the name resolved (or not!).
- *
- * If the status argument is CURL_ASYNC_SUCCESS, this function takes
- * ownership of the Curl_addrinfo passed, storing the resolved data
- * in the DNS cache.
- *
- * The storage operation locks and unlocks the DNS cache.
- */
-CURLcode Curl_addrinfo_callback(struct connectdata * conn,
-                                int status,
-                                struct Curl_addrinfo *ai)
-{
-  struct Curl_dns_entry *dns = NULL;
-  CURLcode rc = CURLE_OK;
-
-  conn->async.status = status;
-
-  if(CURL_ASYNC_SUCCESS == status) {
-    if(ai) {
-      struct SessionHandle *data = conn->data;
-
-      if(data->share)
-        Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
-
-      dns = Curl_cache_addr(data, ai,
-                            conn->async.hostname,
-                            conn->async.port);
-      if(!dns) {
-        /* failed to store, cleanup and return error */
-        Curl_freeaddrinfo(ai);
-        rc = CURLE_OUT_OF_MEMORY;
-      }
-
-      if(data->share)
-        Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
-    }
-    else
-      rc = CURLE_OUT_OF_MEMORY;
-  }
-
-  conn->async.dns = dns;
-
- /* Set async.done TRUE last in this function since it may be used multi-
-    threaded and once this is TRUE the other thread may read fields from the
-    async struct */
-  conn->async.done = TRUE;
-
-  /* ipv4: The input hostent struct will be freed by ares when we return from
-     this function */
-  return rc;
-}
-
-#endif /* CURLRES_ASYNCH */
diff --git a/src/other/curl/lib/hostip.c b/src/other/curl/lib/hostip.c
deleted file mode 100644
index 8f6a52e..0000000
--- a/src/other/curl/lib/hostip.c
+++ /dev/null
@@ -1,723 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <string.h>
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>     /* required for free() prototypes */
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>     /* for the close() proto */
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#include <stdlib.h>
-#endif
-
-#ifdef HAVE_SETJMP_H
-#include <setjmp.h>
-#endif
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-
-#ifdef HAVE_PROCESS_H
-#include <process.h>
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "hostip.h"
-#include "hash.h"
-#include "share.h"
-#include "strerror.h"
-#include "url.h"
-#include "inet_ntop.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#if defined(CURLRES_SYNCH) && \
-    defined(HAVE_ALARM) && defined(SIGALRM) && defined(HAVE_SIGSETJMP)
-/* alarm-based timeouts can only be used with all the dependencies satisfied */
-#define USE_ALARM_TIMEOUT
-#endif
-
-/*
- * hostip.c explained
- * ==================
- *
- * The main COMPILE-TIME DEFINES to keep in mind when reading the host*.c
- * source file are these:
- *
- * CURLRES_IPV6 - this host has getaddrinfo() and family, and thus we use
- * that. The host may not be able to resolve IPv6, but we don't really have to
- * take that into account. Hosts that aren't IPv6-enabled have CURLRES_IPV4
- * defined.
- *
- * CURLRES_ARES - is defined if libcurl is built to use c-ares for
- * asynchronous name resolves. This can be Windows or *nix.
- *
- * CURLRES_THREADED - is defined if libcurl is built to run under (native)
- * Windows, and then the name resolve will be done in a new thread, and the
- * supported API will be the same as for ares-builds.
- *
- * If any of the two previous are defined, CURLRES_ASYNCH is defined too. If
- * libcurl is not built to use an asynchronous resolver, CURLRES_SYNCH is
- * defined.
- *
- * The host*.c sources files are split up like this:
- *
- * hostip.c   - method-independent resolver functions and utility functions
- * hostasyn.c - functions for asynchronous name resolves
- * hostsyn.c  - functions for synchronous name resolves
- * hostares.c - functions for ares-using name resolves
- * hostthre.c - functions for threaded name resolves
- * hostip4.c  - ipv4-specific functions
- * hostip6.c  - ipv6-specific functions
- *
- * The hostip.h is the united header file for all this. It defines the
- * CURLRES_* defines based on the config*.h and setup.h defines.
- */
-
-/* These two symbols are for the global DNS cache */
-static struct curl_hash hostname_cache;
-static int host_cache_initialized;
-
-static void freednsentry(void *freethis);
-
-/*
- * Curl_global_host_cache_init() initializes and sets up a global DNS cache.
- * Global DNS cache is general badness. Do not use. This will be removed in
- * a future version. Use the share interface instead!
- *
- * Returns a struct curl_hash pointer on success, NULL on failure.
- */
-struct curl_hash *Curl_global_host_cache_init(void)
-{
-  int rc = 0;
-  if(!host_cache_initialized) {
-    rc = Curl_hash_init(&hostname_cache, 7, Curl_hash_str,
-                        Curl_str_key_compare, freednsentry);
-    if(!rc)
-      host_cache_initialized = 1;
-  }
-  return rc?NULL:&hostname_cache;
-}
-
-/*
- * Destroy and cleanup the global DNS cache
- */
-void Curl_global_host_cache_dtor(void)
-{
-  if(host_cache_initialized) {
-    Curl_hash_clean(&hostname_cache);
-    host_cache_initialized = 0;
-  }
-}
-
-/*
- * Return # of adresses in a Curl_addrinfo struct
- */
-int Curl_num_addresses(const Curl_addrinfo *addr)
-{
-  int i = 0;
-  while(addr) {
-    addr = addr->ai_next;
-    i++;
-  }
-  return i;
-}
-
-/*
- * Curl_printable_address() returns a printable version of the 1st address
- * given in the 'ai' argument. The result will be stored in the buf that is
- * bufsize bytes big.
- *
- * If the conversion fails, it returns NULL.
- */
-const char *
-Curl_printable_address(const Curl_addrinfo *ai, char *buf, size_t bufsize)
-{
-  const struct sockaddr_in *sa4;
-  const struct in_addr *ipaddr4;
-#ifdef ENABLE_IPV6
-  const struct sockaddr_in6 *sa6;
-  const struct in6_addr *ipaddr6;
-#endif
-
-  switch (ai->ai_family) {
-    case AF_INET:
-      sa4 = (const void *)ai->ai_addr;
-      ipaddr4 = &sa4->sin_addr;
-      return Curl_inet_ntop(ai->ai_family, (const void *)ipaddr4, buf,
-                            bufsize);
-#ifdef ENABLE_IPV6
-    case AF_INET6:
-      sa6 = (const void *)ai->ai_addr;
-      ipaddr6 = &sa6->sin6_addr;
-      return Curl_inet_ntop(ai->ai_family, (const void *)ipaddr6, buf,
-                            bufsize);
-#endif
-    default:
-      break;
-  }
-  return NULL;
-}
-
-/*
- * Return a hostcache id string for the providing host + port, to be used by
- * the DNS caching.
- */
-static char *
-create_hostcache_id(const char *server, int port)
-{
-  /* create and return the new allocated entry */
-  return aprintf("%s:%d", server, port);
-}
-
-struct hostcache_prune_data {
-  long cache_timeout;
-  time_t now;
-};
-
-/*
- * This function is set as a callback to be called for every entry in the DNS
- * cache when we want to prune old unused entries.
- *
- * Returning non-zero means remove the entry, return 0 to keep it in the
- * cache.
- */
-static int
-hostcache_timestamp_remove(void *datap, void *hc)
-{
-  struct hostcache_prune_data *data =
-    (struct hostcache_prune_data *) datap;
-  struct Curl_dns_entry *c = (struct Curl_dns_entry *) hc;
-
-  return (data->now - c->timestamp >= data->cache_timeout);
-}
-
-/*
- * Prune the DNS cache. This assumes that a lock has already been taken.
- */
-static void
-hostcache_prune(struct curl_hash *hostcache, long cache_timeout, time_t now)
-{
-  struct hostcache_prune_data user;
-
-  user.cache_timeout = cache_timeout;
-  user.now = now;
-
-  Curl_hash_clean_with_criterium(hostcache,
-                                 (void *) &user,
-                                 hostcache_timestamp_remove);
-}
-
-/*
- * Library-wide function for pruning the DNS cache. This function takes and
- * returns the appropriate locks.
- */
-void Curl_hostcache_prune(struct SessionHandle *data)
-{
-  time_t now;
-
-  if((data->set.dns_cache_timeout == -1) || !data->dns.hostcache)
-    /* cache forever means never prune, and NULL hostcache means
-       we can't do it */
-    return;
-
-  if(data->share)
-    Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
-
-  time(&now);
-
-  /* Remove outdated and unused entries from the hostcache */
-  hostcache_prune(data->dns.hostcache,
-                  data->set.dns_cache_timeout,
-                  now);
-
-  if(data->share)
-    Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
-}
-
-/*
- * Check if the entry should be pruned. Assumes a locked cache.
- */
-static int
-remove_entry_if_stale(struct SessionHandle *data, struct Curl_dns_entry *dns)
-{
-  struct hostcache_prune_data user;
-
-  if( !dns || (data->set.dns_cache_timeout == -1) || !data->dns.hostcache)
-    /* cache forever means never prune, and NULL hostcache means
-       we can't do it */
-    return 0;
-
-  time(&user.now);
-  user.cache_timeout = data->set.dns_cache_timeout;
-
-  if( !hostcache_timestamp_remove(&user,dns) )
-    return 0;
-
-  Curl_hash_clean_with_criterium(data->dns.hostcache,
-                                 (void *) &user,
-                                 hostcache_timestamp_remove);
-
-  return 1;
-}
-
-
-#ifdef HAVE_SIGSETJMP
-/* Beware this is a global and unique instance. This is used to store the
-   return address that we can jump back to from inside a signal handler. This
-   is not thread-safe stuff. */
-sigjmp_buf curl_jmpenv;
-#endif
-
-
-/*
- * Curl_cache_addr() stores a 'Curl_addrinfo' struct in the DNS cache.
- *
- * When calling Curl_resolv() has resulted in a response with a returned
- * address, we call this function to store the information in the dns
- * cache etc
- *
- * Returns the Curl_dns_entry entry pointer or NULL if the storage failed.
- */
-struct Curl_dns_entry *
-Curl_cache_addr(struct SessionHandle *data,
-                Curl_addrinfo *addr,
-                const char *hostname,
-                int port)
-{
-  char *entry_id;
-  size_t entry_len;
-  struct Curl_dns_entry *dns;
-  struct Curl_dns_entry *dns2;
-
-  /* Create an entry id, based upon the hostname and port */
-  entry_id = create_hostcache_id(hostname, port);
-  /* If we can't create the entry id, fail */
-  if(!entry_id)
-    return NULL;
-  entry_len = strlen(entry_id);
-
-  /* Create a new cache entry */
-  dns = calloc(1, sizeof(struct Curl_dns_entry));
-  if(!dns) {
-    free(entry_id);
-    return NULL;
-  }
-
-  dns->inuse = 0;   /* init to not used */
-  dns->addr = addr; /* this is the address(es) */
-  time(&dns->timestamp);
-  if(dns->timestamp == 0)
-    dns->timestamp = 1;   /* zero indicates that entry isn't in hash table */
-
-  /* Store the resolved data in our DNS cache. */
-  dns2 = Curl_hash_add(data->dns.hostcache, entry_id, entry_len+1,
-                       (void *)dns);
-  if(!dns2) {
-    free(dns);
-    free(entry_id);
-    return NULL;
-  }
-
-  dns = dns2;
-  dns->inuse++;         /* mark entry as in-use */
-
-  /* free the allocated entry_id again */
-  free(entry_id);
-
-  return dns;
-}
-
-/*
- * Curl_resolv() is the main name resolve function within libcurl. It resolves
- * a name and returns a pointer to the entry in the 'entry' argument (if one
- * is provided). This function might return immediately if we're using asynch
- * resolves. See the return codes.
- *
- * The cache entry we return will get its 'inuse' counter increased when this
- * function is used. You MUST call Curl_resolv_unlock() later (when you're
- * done using this struct) to decrease the counter again.
- *
- * In debug mode, we specifically test for an interface name "LocalHost"
- * and resolve "localhost" instead as a means to permit test cases
- * to connect to a local test server with any host name.
- *
- * Return codes:
- *
- * CURLRESOLV_ERROR   (-1) = error, no pointer
- * CURLRESOLV_RESOLVED (0) = OK, pointer provided
- * CURLRESOLV_PENDING  (1) = waiting for response, no pointer
- */
-
-int Curl_resolv(struct connectdata *conn,
-                const char *hostname,
-                int port,
-                struct Curl_dns_entry **entry)
-{
-  char *entry_id = NULL;
-  struct Curl_dns_entry *dns = NULL;
-  size_t entry_len;
-  struct SessionHandle *data = conn->data;
-  CURLcode result;
-  int rc = CURLRESOLV_ERROR; /* default to failure */
-
-  *entry = NULL;
-
-  /* Create an entry id, based upon the hostname and port */
-  entry_id = create_hostcache_id(hostname, port);
-  /* If we can't create the entry id, fail */
-  if(!entry_id)
-    return rc;
-
-  entry_len = strlen(entry_id);
-
-  if(data->share)
-    Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
-
-  /* See if its already in our dns cache */
-  dns = Curl_hash_pick(data->dns.hostcache, entry_id, entry_len+1);
-
-  /* See whether the returned entry is stale. Done before we release lock */
-  if( remove_entry_if_stale(data, dns) )
-    dns = NULL; /* the memory deallocation is being handled by the hash */
-
-  if(dns) {
-    dns->inuse++; /* we use it! */
-    rc = CURLRESOLV_RESOLVED;
-  }
-
-  if(data->share)
-    Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
-
-  /* free the allocated entry_id again */
-  free(entry_id);
-
-  if(!dns) {
-    /* The entry was not in the cache. Resolve it to IP address */
-
-    Curl_addrinfo *addr;
-    int respwait;
-
-    /* Check what IP specifics the app has requested and if we can provide it.
-     * If not, bail out. */
-    if(!Curl_ipvalid(data))
-      return CURLRESOLV_ERROR;
-
-    /* If Curl_getaddrinfo() returns NULL, 'respwait' might be set to a
-       non-zero value indicating that we need to wait for the response to the
-       resolve call */
-    addr = Curl_getaddrinfo(conn,
-#ifdef DEBUGBUILD
-                            (data->set.str[STRING_DEVICE]
-                             && !strcmp(data->set.str[STRING_DEVICE],
-                                        "LocalHost"))?"localhost":
-#endif
-                            hostname, port, &respwait);
-
-    if(!addr) {
-      if(respwait) {
-        /* the response to our resolve call will come asynchronously at
-           a later time, good or bad */
-        /* First, check that we haven't received the info by now */
-        result = Curl_is_resolved(conn, &dns);
-        if(result) /* error detected */
-          return CURLRESOLV_ERROR;
-        if(dns)
-          rc = CURLRESOLV_RESOLVED; /* pointer provided */
-        else
-          rc = CURLRESOLV_PENDING; /* no info yet */
-      }
-    }
-    else {
-      if(data->share)
-        Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
-
-      /* we got a response, store it in the cache */
-      dns = Curl_cache_addr(data, addr, hostname, port);
-
-      if(data->share)
-        Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
-
-      if(!dns)
-        /* returned failure, bail out nicely */
-        Curl_freeaddrinfo(addr);
-      else
-        rc = CURLRESOLV_RESOLVED;
-    }
-  }
-
-  *entry = dns;
-
-  return rc;
-}
-
-#ifdef USE_ALARM_TIMEOUT
-/*
- * This signal handler jumps back into the main libcurl code and continues
- * execution.  This effectively causes the remainder of the application to run
- * within a signal handler which is nonportable and could lead to problems.
- */
-static
-RETSIGTYPE alarmfunc(int sig)
-{
-  /* this is for "-ansi -Wall -pedantic" to stop complaining!   (rabe) */
-  (void)sig;
-  siglongjmp(curl_jmpenv, 1);
-  return;
-}
-#endif /* USE_ALARM_TIMEOUT */
-
-/*
- * Curl_resolv_timeout() is the same as Curl_resolv() but specifies a
- * timeout.  This function might return immediately if we're using asynch
- * resolves. See the return codes.
- *
- * The cache entry we return will get its 'inuse' counter increased when this
- * function is used. You MUST call Curl_resolv_unlock() later (when you're
- * done using this struct) to decrease the counter again.
- *
- * If built with a synchronous resolver and use of signals is not
- * disabled by the application, then a nonzero timeout will cause a
- * timeout after the specified number of milliseconds. Otherwise, timeout
- * is ignored.
- *
- * Return codes:
- *
- * CURLRESOLV_TIMEDOUT(-2) = warning, time too short or previous alarm expired
- * CURLRESOLV_ERROR   (-1) = error, no pointer
- * CURLRESOLV_RESOLVED (0) = OK, pointer provided
- * CURLRESOLV_PENDING  (1) = waiting for response, no pointer
- */
-
-int Curl_resolv_timeout(struct connectdata *conn,
-                        const char *hostname,
-                        int port,
-                        struct Curl_dns_entry **entry,
-                        long timeoutms)
-{
-#ifdef USE_ALARM_TIMEOUT
-#ifdef HAVE_SIGACTION
-  struct sigaction keep_sigact;   /* store the old struct here */
-  volatile bool keep_copysig = FALSE; /* wether old sigact has been saved */
-  struct sigaction sigact;
-#else
-#ifdef HAVE_SIGNAL
-  void (*keep_sigact)(int);       /* store the old handler here */
-#endif /* HAVE_SIGNAL */
-#endif /* HAVE_SIGACTION */
-  volatile long timeout;
-  volatile unsigned int prev_alarm = 0;
-  struct SessionHandle *data = conn->data;
-#endif /* USE_ALARM_TIMEOUT */
-  int rc;
-
-  *entry = NULL;
-
-#ifdef USE_ALARM_TIMEOUT
-  if (data->set.no_signal)
-    /* Ignore the timeout when signals are disabled */
-    timeout = 0;
-  else
-    timeout = timeoutms;
-
-  if(!timeout)
-    /* USE_ALARM_TIMEOUT defined, but no timeout actually requested */
-    return Curl_resolv(conn, hostname, port, entry);
-
-  if(timeout < 1000)
-    /* The alarm() function only provides integer second resolution, so if
-       we want to wait less than one second we must bail out already now. */
-    return CURLRESOLV_TIMEDOUT;
-
-  /*************************************************************
-   * Set signal handler to catch SIGALRM
-   * Store the old value to be able to set it back later!
-   *************************************************************/
-#ifdef HAVE_SIGACTION
-  sigaction(SIGALRM, NULL, &sigact);
-  keep_sigact = sigact;
-  keep_copysig = TRUE; /* yes, we have a copy */
-  sigact.sa_handler = alarmfunc;
-#ifdef SA_RESTART
-  /* HPUX doesn't have SA_RESTART but defaults to that behaviour! */
-  sigact.sa_flags &= ~SA_RESTART;
-#endif
-  /* now set the new struct */
-  sigaction(SIGALRM, &sigact, NULL);
-#else /* HAVE_SIGACTION */
-  /* no sigaction(), revert to the much lamer signal() */
-#ifdef HAVE_SIGNAL
-  keep_sigact = signal(SIGALRM, alarmfunc);
-#endif
-#endif /* HAVE_SIGACTION */
-
-  /* alarm() makes a signal get sent when the timeout fires off, and that
-     will abort system calls */
-  prev_alarm = alarm((unsigned int) (timeout/1000L));
-
-  /* This allows us to time-out from the name resolver, as the timeout
-     will generate a signal and we will siglongjmp() from that here.
-     This technique has problems (see alarmfunc).
-     This should be the last thing we do before calling Curl_resolv(),
-     as otherwise we'd have to worry about variables that get modified
-     before we invoke Curl_resolv() (and thus use "volatile"). */
-  if(sigsetjmp(curl_jmpenv, 1)) {
-    /* this is coming from a siglongjmp() after an alarm signal */
-    failf(data, "name lookup timed out");
-    rc = CURLRESOLV_ERROR;
-    goto clean_up;
-  }
-
-#else
-#ifndef CURLRES_ASYNCH
-  if(timeoutms)
-    infof(conn->data, "timeout on name lookup is not supported\n");
-#else
-  (void)timeoutms; /* timeoutms not used with an async resolver */
-#endif
-#endif /* USE_ALARM_TIMEOUT */
-
-  /* Perform the actual name resolution. This might be interrupted by an
-   * alarm if it takes too long.
-   */
-  rc = Curl_resolv(conn, hostname, port, entry);
-
-#ifdef USE_ALARM_TIMEOUT
-clean_up:
-
-  if(!prev_alarm)
-    /* deactivate a possibly active alarm before uninstalling the handler */
-    alarm(0);
-
-#ifdef HAVE_SIGACTION
-  if(keep_copysig) {
-    /* we got a struct as it looked before, now put that one back nice
-       and clean */
-    sigaction(SIGALRM, &keep_sigact, NULL); /* put it back */
-  }
-#else
-#ifdef HAVE_SIGNAL
-  /* restore the previous SIGALRM handler */
-  signal(SIGALRM, keep_sigact);
-#endif
-#endif /* HAVE_SIGACTION */
-
-  /* switch back the alarm() to either zero or to what it was before minus
-     the time we spent until now! */
-  if(prev_alarm) {
-    /* there was an alarm() set before us, now put it back */
-    unsigned long elapsed_ms = Curl_tvdiff(Curl_tvnow(), conn->created);
-
-    /* the alarm period is counted in even number of seconds */
-    unsigned long alarm_set = prev_alarm - elapsed_ms/1000;
-
-    if(!alarm_set ||
-       ((alarm_set >= 0x80000000) && (prev_alarm < 0x80000000)) ) {
-      /* if the alarm time-left reached zero or turned "negative" (counted
-         with unsigned values), we should fire off a SIGALRM here, but we
-         won't, and zero would be to switch it off so we never set it to
-         less than 1! */
-      alarm(1);
-      rc = CURLRESOLV_TIMEDOUT;
-      failf(data, "Previous alarm fired off!");
-    }
-    else
-      alarm((unsigned int)alarm_set);
-  }
-#endif /* USE_ALARM_TIMEOUT */
-
-  return rc;
-}
-
-/*
- * Curl_resolv_unlock() unlocks the given cached DNS entry. When this has been
- * made, the struct may be destroyed due to pruning. It is important that only
- * one unlock is made for each Curl_resolv() call.
- */
-void Curl_resolv_unlock(struct SessionHandle *data, struct Curl_dns_entry *dns)
-{
-  DEBUGASSERT(dns && (dns->inuse>0));
-
-  if(data->share)
-    Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
-
-  dns->inuse--;
-  /* only free if nobody is using AND it is not in hostcache (timestamp ==
-     0) */
-  if (dns->inuse == 0 && dns->timestamp == 0) {
-    Curl_freeaddrinfo(dns->addr);
-    free(dns);
-  }
-
-  if(data->share)
-    Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
-}
-
-/*
- * File-internal: free a cache dns entry.
- */
-static void freednsentry(void *freethis)
-{
-  struct Curl_dns_entry *p = (struct Curl_dns_entry *) freethis;
-
-  /* mark the entry as not in hostcache */
-  p->timestamp = 0;
-  if (p->inuse == 0) {
-    Curl_freeaddrinfo(p->addr);
-    free(p);
-  }
-}
-
-/*
- * Curl_mk_dnscache() creates a new DNS cache and returns the handle for it.
- */
-struct curl_hash *Curl_mk_dnscache(void)
-{
-  return Curl_hash_alloc(7, Curl_hash_str, Curl_str_key_compare, freednsentry);
-}
-
-
diff --git a/src/other/curl/lib/hostip.h b/src/other/curl/lib/hostip.h
deleted file mode 100644
index 33e573c..0000000
--- a/src/other/curl/lib/hostip.h
+++ /dev/null
@@ -1,219 +0,0 @@
-#ifndef HEADER_CURL_HOSTIP_H
-#define HEADER_CURL_HOSTIP_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-#include "hash.h"
-#include "curl_addrinfo.h"
-
-#ifdef HAVE_SETJMP_H
-#include <setjmp.h>
-#endif
-
-#ifdef NETWARE
-#undef in_addr_t
-#define in_addr_t unsigned long
-#endif
-
-/*
- * Comfortable CURLRES_* definitions are included from setup.h
- */
-
-#ifdef USE_ARES
-#include <ares_version.h>
-#endif
-
-/* Allocate enough memory to hold the full name information structs and
- * everything. OSF1 is known to require at least 8872 bytes. The buffer
- * required for storing all possible aliases and IP numbers is according to
- * Stevens' Unix Network Programming 2nd edition, p. 304: 8192 bytes!
- */
-#define CURL_HOSTENT_SIZE 9000
-
-#define CURL_TIMEOUT_RESOLVE 300 /* when using asynch methods, we allow this
-                                    many seconds for a name resolve */
-
-#ifdef CURLRES_ARES
-#define CURL_ASYNC_SUCCESS ARES_SUCCESS
-#if ARES_VERSION >= 0x010500
-/* c-ares 1.5.0 or later, the callback proto is modified */
-#define HAVE_CARES_CALLBACK_TIMEOUTS 1
-#endif
-#else
-#define CURL_ASYNC_SUCCESS CURLE_OK
-#define ares_cancel(x) do {} while(0)
-#define ares_destroy(x) do {} while(0)
-#endif
-
-struct addrinfo;
-struct hostent;
-struct SessionHandle;
-struct connectdata;
-
-/*
- * Curl_global_host_cache_init() initializes and sets up a global DNS cache.
- * Global DNS cache is general badness. Do not use. This will be removed in
- * a future version. Use the share interface instead!
- *
- * Returns a struct curl_hash pointer on success, NULL on failure.
- */
-struct curl_hash *Curl_global_host_cache_init(void);
-void Curl_global_host_cache_dtor(void);
-
-struct Curl_dns_entry {
-  Curl_addrinfo *addr;
-  /* timestamp == 0 -- entry not in hostcache
-     timestamp != 0 -- entry is in hostcache */
-  time_t timestamp;
-  long inuse;      /* use-counter, make very sure you decrease this
-                      when you're done using the address you received */
-};
-
-/*
- * Curl_resolv() returns an entry with the info for the specified host
- * and port.
- *
- * The returned data *MUST* be "unlocked" with Curl_resolv_unlock() after
- * use, or we'll leak memory!
- */
-/* return codes */
-#define CURLRESOLV_TIMEDOUT -2
-#define CURLRESOLV_ERROR    -1
-#define CURLRESOLV_RESOLVED  0
-#define CURLRESOLV_PENDING   1
-int Curl_resolv(struct connectdata *conn, const char *hostname,
-                int port, struct Curl_dns_entry **dnsentry);
-int Curl_resolv_timeout(struct connectdata *conn, const char *hostname,
-                        int port, struct Curl_dns_entry **dnsentry,
-                        long timeoutms);
-
-/*
- * Curl_ipvalid() checks what CURL_IPRESOLVE_* requirements that might've
- * been set and returns TRUE if they are OK.
- */
-bool Curl_ipvalid(struct SessionHandle *data);
-
-/*
- * Curl_getaddrinfo() is the generic low-level name resolve API within this
- * source file. There are several versions of this function - for different
- * name resolve layers (selected at build-time). They all take this same set
- * of arguments
- */
-Curl_addrinfo *Curl_getaddrinfo(struct connectdata *conn,
-                                const char *hostname,
-                                int port,
-                                int *waitp);
-
-CURLcode Curl_is_resolved(struct connectdata *conn,
-                          struct Curl_dns_entry **dns);
-CURLcode Curl_wait_for_resolv(struct connectdata *conn,
-                              struct Curl_dns_entry **dnsentry);
-
-/* Curl_resolv_getsock() is a generic function that exists in multiple
-   versions depending on what name resolve technology we've built to use. The
-   function is called from the multi_getsock() function.  'sock' is a pointer
-   to an array to hold the file descriptors, with 'numsock' being the size of
-   that array (in number of entries). This function is supposed to return
-   bitmask indicating what file descriptors (referring to array indexes in the
-   'sock' array) to wait for, read/write. */
-int Curl_resolv_getsock(struct connectdata *conn, curl_socket_t *sock,
-                        int numsocks);
-
-/* unlock a previously resolved dns entry */
-void Curl_resolv_unlock(struct SessionHandle *data,
-                        struct Curl_dns_entry *dns);
-
-/* for debugging purposes only: */
-void Curl_scan_cache_used(void *user, void *ptr);
-
-/* make a new dns cache and return the handle */
-struct curl_hash *Curl_mk_dnscache(void);
-
-/* prune old entries from the DNS cache */
-void Curl_hostcache_prune(struct SessionHandle *data);
-
-/* Return # of adresses in a Curl_addrinfo struct */
-int Curl_num_addresses (const Curl_addrinfo *addr);
-
-#if defined(CURLDEBUG) && defined(HAVE_GETNAMEINFO)
-int curl_dogetnameinfo(GETNAMEINFO_QUAL_ARG1 GETNAMEINFO_TYPE_ARG1 sa,
-                       GETNAMEINFO_TYPE_ARG2 salen,
-                       char *host, GETNAMEINFO_TYPE_ARG46 hostlen,
-                       char *serv, GETNAMEINFO_TYPE_ARG46 servlen,
-                       GETNAMEINFO_TYPE_ARG7 flags,
-                       int line, const char *source);
-#endif
-
-/* IPv4 threadsafe resolve function used for synch and asynch builds */
-Curl_addrinfo *Curl_ipv4_resolve_r(const char * hostname, int port);
-
-/*
- * Curl_addrinfo_callback() is used when we build with any asynch specialty.
- * Handles end of async request processing. Inserts ai into hostcache when
- * status is CURL_ASYNC_SUCCESS. Twiddles fields in conn to indicate async
- * request completed wether successfull or failed.
- */
-CURLcode Curl_addrinfo_callback(struct connectdata *conn,
-                                int status,
-                                Curl_addrinfo *ai);
-
-/*
- * Curl_printable_address() returns a printable version of the 1st address
- * given in the 'ip' argument. The result will be stored in the buf that is
- * bufsize bytes big.
- */
-const char *Curl_printable_address(const Curl_addrinfo *ip,
-                                   char *buf, size_t bufsize);
-
-/*
- * Curl_cache_addr() stores a 'Curl_addrinfo' struct in the DNS cache.
- *
- * Returns the Curl_dns_entry entry pointer or NULL if the storage failed.
- */
-struct Curl_dns_entry *
-Curl_cache_addr(struct SessionHandle *data, Curl_addrinfo *addr,
-                const char *hostname, int port);
-
-/*
- * Curl_destroy_thread_data() cleans up async resolver data.
- * Complementary of ares_destroy.
- */
-struct Curl_async; /* forward-declaration */
-void Curl_destroy_thread_data(struct Curl_async *async);
-
-#ifndef INADDR_NONE
-#define CURL_INADDR_NONE (in_addr_t) ~0
-#else
-#define CURL_INADDR_NONE INADDR_NONE
-#endif
-
-#ifdef HAVE_SIGSETJMP
-/* Forward-declaration of variable defined in hostip.c. Beware this
- * is a global and unique instance. This is used to store the return
- * address that we can jump back to from inside a signal handler.
- * This is not thread-safe stuff.
- */
-extern sigjmp_buf curl_jmpenv;
-#endif
-
-#endif /* HEADER_CURL_HOSTIP_H */
diff --git a/src/other/curl/lib/hostip4.c b/src/other/curl/lib/hostip4.c
deleted file mode 100644
index fbc7d49..0000000
--- a/src/other/curl/lib/hostip4.c
+++ /dev/null
@@ -1,319 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <string.h>
-#include <errno.h>
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>     /* required for free() prototypes */
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>     /* for the close() proto */
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#include <stdlib.h>
-#endif
-
-#ifdef HAVE_PROCESS_H
-#include <process.h>
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "hostip.h"
-#include "hash.h"
-#include "share.h"
-#include "strerror.h"
-#include "url.h"
-#include "inet_pton.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/***********************************************************************
- * Only for plain-ipv4 builds
- **********************************************************************/
-#ifdef CURLRES_IPV4 /* plain ipv4 code coming up */
-/*
- * Curl_ipvalid() checks what CURL_IPRESOLVE_* requirements that might've
- * been set and returns TRUE if they are OK.
- */
-bool Curl_ipvalid(struct SessionHandle *data)
-{
-  if(data->set.ip_version == CURL_IPRESOLVE_V6)
-    /* an ipv6 address was requested and we can't get/use one */
-    return FALSE;
-
-  return TRUE; /* OK, proceed */
-}
-
-#ifdef CURLRES_SYNCH
-/*
- * Curl_getaddrinfo() - the ipv4 synchronous version.
- *
- * The original code to this function was from the Dancer source code, written
- * by Bjorn Reese, it has since been patched and modified considerably.
- *
- * gethostbyname_r() is the thread-safe version of the gethostbyname()
- * function. When we build for plain IPv4, we attempt to use this
- * function. There are _three_ different gethostbyname_r() versions, and we
- * detect which one this platform supports in the configure script and set up
- * the HAVE_GETHOSTBYNAME_R_3, HAVE_GETHOSTBYNAME_R_5 or
- * HAVE_GETHOSTBYNAME_R_6 defines accordingly. Note that HAVE_GETADDRBYNAME
- * has the corresponding rules. This is primarily on *nix. Note that some unix
- * flavours have thread-safe versions of the plain gethostbyname() etc.
- *
- */
-Curl_addrinfo *Curl_getaddrinfo(struct connectdata *conn,
-                                const char *hostname,
-                                int port,
-                                int *waitp)
-{
-  Curl_addrinfo *ai = NULL;
-
-#ifdef CURL_DISABLE_VERBOSE_STRINGS
-  (void)conn;
-#endif
-
-  *waitp = 0; /* synchronous response only */
-
-  ai = Curl_ipv4_resolve_r(hostname, port);
-  if(!ai)
-    infof(conn->data, "Curl_ipv4_resolve_r failed for %s\n", hostname);
-
-  return ai;
-}
-#endif /* CURLRES_SYNCH */
-#endif /* CURLRES_IPV4 */
-
-/*
- * Curl_ipv4_resolve_r() - ipv4 threadsafe resolver function.
- *
- * This is used for both synchronous and asynchronous resolver builds,
- * implying that only threadsafe code and function calls may be used.
- *
- */
-Curl_addrinfo *Curl_ipv4_resolve_r(const char *hostname,
-                                   int port)
-{
-#if !defined(HAVE_GETADDRINFO_THREADSAFE) && defined(HAVE_GETHOSTBYNAME_R_3)
-  int res;
-#endif
-  Curl_addrinfo *ai = NULL;
-  struct hostent *h = NULL;
-  struct in_addr in;
-  struct hostent *buf = NULL;
-
-  if(Curl_inet_pton(AF_INET, hostname, &in) > 0)
-    /* This is a dotted IP address 123.123.123.123-style */
-    return Curl_ip2addr(AF_INET, &in, hostname, port);
-
-#if defined(HAVE_GETADDRINFO_THREADSAFE)
-  else {
-    struct addrinfo hints;
-    char sbuf[NI_MAXSERV];
-    char *sbufptr = NULL;
-
-    memset(&hints, 0, sizeof(hints));
-    hints.ai_family = PF_INET;
-    hints.ai_socktype = SOCK_STREAM;
-    if(port) {
-      snprintf(sbuf, sizeof(sbuf), "%d", port);
-      sbufptr = sbuf;
-    }
-    hints.ai_flags = AI_CANONNAME;
-    (void)Curl_getaddrinfo_ex(hostname, sbufptr, &hints, &ai);
-
-#elif defined(HAVE_GETHOSTBYNAME_R)
-  /*
-   * gethostbyname_r() is the preferred resolve function for many platforms.
-   * Since there are three different versions of it, the following code is
-   * somewhat #ifdef-ridden.
-   */
-  else {
-    int h_errnop;
-
-    buf = calloc(1, CURL_HOSTENT_SIZE);
-    if(!buf)
-      return NULL; /* major failure */
-    /*
-     * The clearing of the buffer is a workaround for a gethostbyname_r bug in
-     * qnx nto and it is also _required_ for some of these functions on some
-     * platforms.
-     */
-
-#if defined(HAVE_GETHOSTBYNAME_R_5)
-    /* Solaris, IRIX and more */
-    h = gethostbyname_r(hostname,
-                        (struct hostent *)buf,
-                        (char *)buf + sizeof(struct hostent),
-                        CURL_HOSTENT_SIZE - sizeof(struct hostent),
-                        &h_errnop);
-
-    /* If the buffer is too small, it returns NULL and sets errno to
-     * ERANGE. The errno is thread safe if this is compiled with
-     * -D_REENTRANT as then the 'errno' variable is a macro defined to get
-     * used properly for threads.
-     */
-
-    if(h) {
-      ;
-    }
-    else
-#elif defined(HAVE_GETHOSTBYNAME_R_6)
-    /* Linux */
-
-    (void)gethostbyname_r(hostname,
-                        (struct hostent *)buf,
-                        (char *)buf + sizeof(struct hostent),
-                        CURL_HOSTENT_SIZE - sizeof(struct hostent),
-                        &h, /* DIFFERENCE */
-                        &h_errnop);
-    /* Redhat 8, using glibc 2.2.93 changed the behavior. Now all of a
-     * sudden this function returns EAGAIN if the given buffer size is too
-     * small. Previous versions are known to return ERANGE for the same
-     * problem.
-     *
-     * This wouldn't be such a big problem if older versions wouldn't
-     * sometimes return EAGAIN on a common failure case. Alas, we can't
-     * assume that EAGAIN *or* ERANGE means ERANGE for any given version of
-     * glibc.
-     *
-     * For now, we do that and thus we may call the function repeatedly and
-     * fail for older glibc versions that return EAGAIN, until we run out of
-     * buffer size (step_size grows beyond CURL_HOSTENT_SIZE).
-     *
-     * If anyone has a better fix, please tell us!
-     *
-     * -------------------------------------------------------------------
-     *
-     * On October 23rd 2003, Dan C dug up more details on the mysteries of
-     * gethostbyname_r() in glibc:
-     *
-     * In glibc 2.2.5 the interface is different (this has also been
-     * discovered in glibc 2.1.1-6 as shipped by Redhat 6). What I can't
-     * explain, is that tests performed on glibc 2.2.4-34 and 2.2.4-32
-     * (shipped/upgraded by Redhat 7.2) don't show this behavior!
-     *
-     * In this "buggy" version, the return code is -1 on error and 'errno'
-     * is set to the ERANGE or EAGAIN code. Note that 'errno' is not a
-     * thread-safe variable.
-     */
-
-    if(!h) /* failure */
-#elif defined(HAVE_GETHOSTBYNAME_R_3)
-    /* AIX, Digital Unix/Tru64, HPUX 10, more? */
-
-    /* For AIX 4.3 or later, we don't use gethostbyname_r() at all, because of
-     * the plain fact that it does not return unique full buffers on each
-     * call, but instead several of the pointers in the hostent structs will
-     * point to the same actual data! This have the unfortunate down-side that
-     * our caching system breaks down horribly. Luckily for us though, AIX 4.3
-     * and more recent versions have a "completely thread-safe"[*] libc where
-     * all the data is stored in thread-specific memory areas making calls to
-     * the plain old gethostbyname() work fine even for multi-threaded
-     * programs.
-     *
-     * This AIX 4.3 or later detection is all made in the configure script.
-     *
-     * Troels Walsted Hansen helped us work this out on March 3rd, 2003.
-     *
-     * [*] = much later we've found out that it isn't at all "completely
-     * thread-safe", but at least the gethostbyname() function is.
-     */
-
-    if(CURL_HOSTENT_SIZE >=
-       (sizeof(struct hostent)+sizeof(struct hostent_data))) {
-
-      /* August 22nd, 2000: Albert Chin-A-Young brought an updated version
-       * that should work! September 20: Richard Prescott worked on the buffer
-       * size dilemma.
-       */
-
-      res = gethostbyname_r(hostname,
-                            (struct hostent *)buf,
-                            (struct hostent_data *)((char *)buf +
-                                                    sizeof(struct hostent)));
-      h_errnop = SOCKERRNO; /* we don't deal with this, but set it anyway */
-    }
-    else
-      res = -1; /* failure, too smallish buffer size */
-
-    if(!res) { /* success */
-
-      h = buf; /* result expected in h */
-
-      /* This is the worst kind of the different gethostbyname_r() interfaces.
-       * Since we don't know how big buffer this particular lookup required,
-       * we can't realloc down the huge alloc without doing closer analysis of
-       * the returned data. Thus, we always use CURL_HOSTENT_SIZE for every
-       * name lookup. Fixing this would require an extra malloc() and then
-       * calling Curl_addrinfo_copy() that subsequent realloc()s down the new
-       * memory area to the actually used amount.
-       */
-    }
-    else
-#endif /* HAVE_...BYNAME_R_5 || HAVE_...BYNAME_R_6 || HAVE_...BYNAME_R_3 */
-    {
-      h = NULL; /* set return code to NULL */
-      free(buf);
-    }
-#else /* HAVE_GETADDRINFO_THREADSAFE || HAVE_GETHOSTBYNAME_R */
-    /*
-     * Here is code for platforms that don't have a thread safe
-     * getaddrinfo() nor gethostbyname_r() function or for which
-     * gethostbyname() is the preferred one.
-     */
-  else {
-    h = gethostbyname((void*)hostname);
-#endif /* HAVE_GETADDRINFO_THREADSAFE || HAVE_GETHOSTBYNAME_R */
-  }
-
-  if(h) {
-    ai = Curl_he2ai(h, port);
-
-    if(buf) /* used a *_r() function */
-      free(buf);
-  }
-
-  return ai;
-}
diff --git a/src/other/curl/lib/hostip6.c b/src/other/curl/lib/hostip6.c
deleted file mode 100644
index fb3ad0c..0000000
--- a/src/other/curl/lib/hostip6.c
+++ /dev/null
@@ -1,238 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <string.h>
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>     /* required for free() prototypes */
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>     /* for the close() proto */
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#include <stdlib.h>
-#endif
-
-#ifdef HAVE_PROCESS_H
-#include <process.h>
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "hostip.h"
-#include "hash.h"
-#include "share.h"
-#include "strerror.h"
-#include "url.h"
-#include "inet_pton.h"
-#include "connect.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/***********************************************************************
- * Only for ipv6-enabled builds
- **********************************************************************/
-#ifdef CURLRES_IPV6
-
-
-#if defined(CURLDEBUG) && defined(HAVE_GETNAMEINFO)
-/* These are strictly for memory tracing and are using the same style as the
- * family otherwise present in memdebug.c. I put these ones here since they
- * require a bunch of structs I didn't wanna include in memdebug.c
- */
-
-/*
- * For CURLRES_ARS, this should be written using ares_gethostbyaddr()
- * (ignoring the fact c-ares doesn't return 'serv').
- */
-
-int curl_dogetnameinfo(GETNAMEINFO_QUAL_ARG1 GETNAMEINFO_TYPE_ARG1 sa,
-                       GETNAMEINFO_TYPE_ARG2 salen,
-                       char *host, GETNAMEINFO_TYPE_ARG46 hostlen,
-                       char *serv, GETNAMEINFO_TYPE_ARG46 servlen,
-                       GETNAMEINFO_TYPE_ARG7 flags,
-                       int line, const char *source)
-{
-  int res = (getnameinfo)(sa, salen,
-                          host, hostlen,
-                          serv, servlen,
-                          flags);
-  if(0 == res)
-    /* success */
-    curl_memlog("GETNAME %s:%d getnameinfo()\n",
-                source, line);
-  else
-    curl_memlog("GETNAME %s:%d getnameinfo() failed = %d\n",
-                source, line, res);
-  return res;
-}
-#endif /* defined(CURLDEBUG) && defined(HAVE_GETNAMEINFO) */
-
-/*
- * Curl_ipvalid() checks what CURL_IPRESOLVE_* requirements that might've
- * been set and returns TRUE if they are OK.
- */
-bool Curl_ipvalid(struct SessionHandle *data)
-{
-  if(data->set.ip_version == CURL_IPRESOLVE_V6) {
-    /* see if we have an IPv6 stack */
-    curl_socket_t s = socket(PF_INET6, SOCK_DGRAM, 0);
-    if(s == CURL_SOCKET_BAD)
-      /* an ipv6 address was requested and we can't get/use one */
-      return FALSE;
-    sclose(s);
-  }
-  return TRUE;
-}
-
-#if defined(CURLRES_SYNCH)
-
-#ifdef DEBUG_ADDRINFO
-static void dump_addrinfo(struct connectdata *conn, const Curl_addrinfo *ai)
-{
-  printf("dump_addrinfo:\n");
-  for ( ; ai; ai = ai->ai_next) {
-    char  buf[INET6_ADDRSTRLEN];
-
-    printf("    fam %2d, CNAME %s, ",
-           ai->ai_family, ai->ai_canonname ? ai->ai_canonname : "<none>");
-    if(Curl_printable_address(ai, buf, sizeof(buf)))
-      printf("%s\n", buf);
-    else
-      printf("failed; %s\n", Curl_strerror(conn, SOCKERRNO));
-  }
-}
-#else
-#define dump_addrinfo(x,y)
-#endif
-
-/*
- * Curl_getaddrinfo() when built ipv6-enabled (non-threading and
- * non-ares version).
- *
- * Returns name information about the given hostname and port number. If
- * successful, the 'addrinfo' is returned and the forth argument will point to
- * memory we need to free after use. That memory *MUST* be freed with
- * Curl_freeaddrinfo(), nothing else.
- */
-Curl_addrinfo *Curl_getaddrinfo(struct connectdata *conn,
-                                const char *hostname,
-                                int port,
-                                int *waitp)
-{
-  struct addrinfo hints;
-  Curl_addrinfo *res;
-  int error;
-  char sbuf[NI_MAXSERV];
-  char *sbufptr = NULL;
-  char addrbuf[128];
-  int pf;
-  struct SessionHandle *data = conn->data;
-
-  *waitp = 0; /* synchronous response only */
-
-  /*
-   * Check if a limited name resolve has been requested.
-   */
-  switch(data->set.ip_version) {
-  case CURL_IPRESOLVE_V4:
-    pf = PF_INET;
-    break;
-  case CURL_IPRESOLVE_V6:
-    pf = PF_INET6;
-    break;
-  default:
-    pf = PF_UNSPEC;
-    break;
-  }
-
-  if (pf != PF_INET) {
-    /* see if we have an IPv6 stack */
-    curl_socket_t s = socket(PF_INET6, SOCK_DGRAM, 0);
-    if(s == CURL_SOCKET_BAD) {
-      /* Some non-IPv6 stacks have been found to make very slow name resolves
-       * when PF_UNSPEC is used, so thus we switch to a mere PF_INET lookup if
-       * the stack seems to be a non-ipv6 one. */
-
-      pf = PF_INET;
-    }
-    else {
-      /* This seems to be an IPv6-capable stack, use PF_UNSPEC for the widest
-       * possible checks. And close the socket again.
-       */
-      sclose(s);
-    }
-  }
-
-  memset(&hints, 0, sizeof(hints));
-  hints.ai_family = pf;
-  hints.ai_socktype = conn->socktype;
-
-  if((1 == Curl_inet_pton(AF_INET, hostname, addrbuf)) ||
-     (1 == Curl_inet_pton(AF_INET6, hostname, addrbuf))) {
-    /* the given address is numerical only, prevent a reverse lookup */
-    hints.ai_flags = AI_NUMERICHOST;
-  }
-#ifdef HAVE_GSSAPI
-  if(conn->data->set.krb)
-    /* if krb is used, we (might) need the canonical host name */
-    hints.ai_flags |= AI_CANONNAME;
-#endif
-
-  if(port) {
-    snprintf(sbuf, sizeof(sbuf), "%d", port);
-    sbufptr=sbuf;
-  }
-  error = Curl_getaddrinfo_ex(hostname, sbufptr, &hints, &res);
-  if(error) {
-    infof(data, "getaddrinfo(3) failed for %s:%d\n", hostname, port);
-    return NULL;
-  }
-
-  dump_addrinfo(conn, res);
-
-  return res;
-}
-#endif /* CURLRES_SYNCH */
-#endif /* CURLRES_IPV6 */
-
diff --git a/src/other/curl/lib/hostsyn.c b/src/other/curl/lib/hostsyn.c
deleted file mode 100644
index b68e470..0000000
--- a/src/other/curl/lib/hostsyn.c
+++ /dev/null
@@ -1,123 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <string.h>
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>     /* required for free() prototypes */
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>     /* for the close() proto */
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#include <stdlib.h>
-#endif
-
-#ifdef HAVE_PROCESS_H
-#include <process.h>
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "hostip.h"
-#include "hash.h"
-#include "share.h"
-#include "strerror.h"
-#include "url.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/***********************************************************************
- * Only for builds using synchronous name resolves
- **********************************************************************/
-#ifdef CURLRES_SYNCH
-
-/*
- * Curl_wait_for_resolv() for synch-builds.  Curl_resolv() can never return
- * wait==TRUE, so this function will never be called. If it still gets called,
- * we return failure at once.
- *
- * We provide this function only to allow multi.c to remain unaware if we are
- * doing asynch resolves or not.
- */
-CURLcode Curl_wait_for_resolv(struct connectdata *conn,
-                              struct Curl_dns_entry **entry)
-{
-  (void)conn;
-  *entry=NULL;
-  return CURLE_COULDNT_RESOLVE_HOST;
-}
-
-/*
- * This function will never be called when synch-built. If it still gets
- * called, we return failure at once.
- *
- * We provide this function only to allow multi.c to remain unaware if we are
- * doing asynch resolves or not.
- */
-CURLcode Curl_is_resolved(struct connectdata *conn,
-                          struct Curl_dns_entry **dns)
-{
-  (void)conn;
-  *dns = NULL;
-
-  return CURLE_COULDNT_RESOLVE_HOST;
-}
-
-/*
- * We just return OK, this function is never actually used for synch builds.
- * It is present here to keep #ifdefs out from multi.c
- */
-
-int Curl_resolv_getsock(struct connectdata *conn,
-                        curl_socket_t *sock,
-                        int numsocks)
-{
-  (void)conn;
-  (void)sock;
-  (void)numsocks;
-
-  return 0; /* no bits since we don't use any socks */
-}
-
-#endif /* truly sync */
diff --git a/src/other/curl/lib/hostthre.c b/src/other/curl/lib/hostthre.c
deleted file mode 100644
index 1e4845e..0000000
--- a/src/other/curl/lib/hostthre.c
+++ /dev/null
@@ -1,590 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <string.h>
-#include <errno.h>
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>     /* required for free() prototypes */
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>     /* for the close() proto */
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#include <stdlib.h>
-#endif
-
-#if defined(USE_THREADS_POSIX)
-#  ifdef HAVE_PTHREAD_H
-#    include <pthread.h>
-#  endif
-#elif defined(USE_THREADS_WIN32)
-#  ifdef HAVE_PROCESS_H
-#    include <process.h>
-#  endif
-#endif
-
-#if (defined(NETWARE) && defined(__NOVELL_LIBC__))
-#undef in_addr_t
-#define in_addr_t unsigned long
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "hostip.h"
-#include "hash.h"
-#include "share.h"
-#include "strerror.h"
-#include "url.h"
-#include "multiif.h"
-#include "inet_pton.h"
-#include "inet_ntop.h"
-#include "curl_threads.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/***********************************************************************
- * Only for threaded name resolves builds
- **********************************************************************/
-#ifdef CURLRES_THREADED
-
-/* This function is used to init a threaded resolve */
-static bool init_resolve_thread(struct connectdata *conn,
-                                const char *hostname, int port,
-                                const struct addrinfo *hints);
-
-
-/* Data for synchronization between resolver thread and its parent */
-struct thread_sync_data {
-  curl_mutex_t * mtx;
-  int done;
-
-  char * hostname;        /* hostname to resolve, Curl_async.hostname
-                             duplicate */
-  int port;
-  int sock_error;
-  Curl_addrinfo *res;
-#ifdef HAVE_GETADDRINFO
-  struct addrinfo hints;
-#endif
-};
-
-struct thread_data {
-  curl_thread_t thread_hnd;
-  curl_socket_t dummy_sock;
-  unsigned int poll_interval;
-  int interval_end;
-  struct thread_sync_data tsd;
-};
-
-static struct thread_sync_data * conn_thread_sync_data(struct connectdata *conn)
-{
-  return &(((struct thread_data *)conn->async.os_specific)->tsd);
-}
-
-#define CONN_THREAD_SYNC_DATA(conn) &(((conn)->async.os_specific)->tsd);
-
-/* Destroy resolver thread synchronization data */
-static
-void destroy_thread_sync_data(struct thread_sync_data * tsd)
-{
-  if (tsd->mtx) {
-    Curl_mutex_destroy(tsd->mtx);
-    free(tsd->mtx);
-  }
-
-  if(tsd->hostname)
-    free(tsd->hostname);
-
-  if (tsd->res)
-    Curl_freeaddrinfo(tsd->res);
-
-  memset(tsd,0,sizeof(*tsd));
-}
-
-/* Initialize resolver thread synchronization data */
-static
-int init_thread_sync_data(struct thread_sync_data * tsd,
-                           const char * hostname,
-                           int port,
-                           const struct addrinfo *hints)
-{
-  memset(tsd, 0, sizeof(*tsd));
-
-  tsd->port = port;
-#ifdef CURLRES_IPV6
-  DEBUGASSERT(hints);
-  tsd->hints = *hints;
-#else
-  (void) hints;
-#endif
-
-  tsd->mtx = malloc(sizeof(curl_mutex_t));
-  if (tsd->mtx == NULL) goto err_exit;
-
-  Curl_mutex_init(tsd->mtx);
-
-  tsd->sock_error = CURL_ASYNC_SUCCESS;
-
-  /* Copying hostname string because original can be destroyed by parent
-   * thread during gethostbyname execution.
-   */
-  tsd->hostname = strdup(hostname);
-  if (!tsd->hostname) goto err_exit;
-
-  return 1;
-
- err_exit:
-  /* Memory allocation failed */
-  destroy_thread_sync_data(tsd);
-  return 0;
-}
-
-static int getaddrinfo_complete(struct connectdata *conn)
-{
-  struct thread_sync_data *tsd = conn_thread_sync_data(conn);
-  int rc;
-
-  rc = Curl_addrinfo_callback(conn, tsd->sock_error, tsd->res);
-  /* The tsd->res structure has been copied to async.dns and perhaps the DNS cache.
-     Set our copy to NULL so destroy_thread_sync_data doesn't free it.
-   */
-  tsd->res = NULL;
-
-  return rc;
-}
-
-
-#ifdef HAVE_GETADDRINFO
-
-/*
- * getaddrinfo_thread() resolves a name and then exits.
- *
- * For builds without ARES, but with ENABLE_IPV6, create a resolver thread
- * and wait on it.
- */
-static unsigned int CURL_STDCALL getaddrinfo_thread (void *arg)
-{
-  struct thread_sync_data *tsd = (struct thread_sync_data*)arg;
-  char   service [NI_MAXSERV];
-  int rc;
-
-  snprintf(service, sizeof(service), "%d", tsd->port);
-
-  rc = Curl_getaddrinfo_ex(tsd->hostname, service, &tsd->hints, &tsd->res);
-
-  if (rc != 0) {
-    tsd->sock_error = SOCKERRNO;
-    if (tsd->sock_error == 0)
-      tsd->sock_error = ENOMEM;
-  }
-
-  Curl_mutex_acquire(tsd->mtx);
-  tsd->done = 1;
-  Curl_mutex_release(tsd->mtx);
-
-  return 0;
-}
-
-#else /* HAVE_GETADDRINFO */
-
-/*
- * gethostbyname_thread() resolves a name and then exits.
- */
-static unsigned int CURL_STDCALL gethostbyname_thread (void *arg)
-{
-  struct thread_sync_data *tsd = (struct thread_sync_data *)arg;
-
-  tsd->res = Curl_ipv4_resolve_r(tsd->hostname, tsd->port);
-
-  if (!tsd->res) {
-    tsd->sock_error = SOCKERRNO;
-    if (tsd->sock_error == 0)
-      tsd->sock_error = ENOMEM;
-  }
-
-  Curl_mutex_acquire(tsd->mtx);
-  tsd->done = 1;
-  Curl_mutex_release(tsd->mtx);
-
-  return 0;
-}
-
-#endif /* HAVE_GETADDRINFO */
-
-/*
- * Curl_destroy_thread_data() cleans up async resolver data and thread handle.
- * Complementary of ares_destroy.
- */
-void Curl_destroy_thread_data (struct Curl_async *async)
-{
-  if(async->hostname)
-    free(async->hostname);
-
-  if(async->os_specific) {
-    struct thread_data *td = (struct thread_data*) async->os_specific;
-
-    if (td->dummy_sock != CURL_SOCKET_BAD)
-      sclose(td->dummy_sock);
-
-    if (td->thread_hnd != curl_thread_t_null)
-      Curl_thread_join(&td->thread_hnd);
-
-    destroy_thread_sync_data(&td->tsd);
-
-    free(async->os_specific);
-  }
-  async->hostname = NULL;
-  async->os_specific = NULL;
-}
-
-/*
- * init_resolve_thread() starts a new thread that performs the actual
- * resolve. This function returns before the resolve is done.
- *
- * Returns FALSE in case of failure, otherwise TRUE.
- */
-static bool init_resolve_thread (struct connectdata *conn,
-                                 const char *hostname, int port,
-                                 const struct addrinfo *hints)
-{
-  struct thread_data *td = calloc(1, sizeof(struct thread_data));
-  int err = ENOMEM;
-
-  conn->async.os_specific = (void*) td;
-  if(!td)
-    goto err_exit;
-
-  conn->async.port = port;
-  conn->async.done = FALSE;
-  conn->async.status = 0;
-  conn->async.dns = NULL;
-  td->dummy_sock = CURL_SOCKET_BAD;
-  td->thread_hnd = curl_thread_t_null;
-
-  if (!init_thread_sync_data(&td->tsd, hostname, port, hints))
-    goto err_exit;
-
-  Curl_safefree(conn->async.hostname);
-  conn->async.hostname = strdup(hostname);
-  if(!conn->async.hostname)
-    goto err_exit;
-
-#ifdef WIN32
-  /* This socket is only to keep Curl_resolv_fdset() and select() happy;
-   * should never become signalled for read since it's unbound but
-   * Windows needs at least 1 socket in select().
-   */
-  td->dummy_sock = socket(AF_INET, SOCK_DGRAM, 0);
-  if (td->dummy_sock == CURL_SOCKET_BAD)
-    goto err_exit;
-#endif
-
-#ifdef HAVE_GETADDRINFO
-  td->thread_hnd = Curl_thread_create(getaddrinfo_thread, &td->tsd);
-#else
-  td->thread_hnd = Curl_thread_create(gethostbyname_thread, &td->tsd);
-#endif
-
-  if(!td->thread_hnd) {
-#ifndef _WIN32_WCE
-    err = errno;
-#endif
-    goto err_exit;
-  }
-
-  return TRUE;
-
- err_exit:
-  Curl_destroy_thread_data(&conn->async);
-
-  SET_ERRNO(err);
-
-  return FALSE;
-}
-
-
-/*
- * Curl_wait_for_resolv() waits for a resolve to finish. This function should
- * be avoided since using this risk getting the multi interface to "hang".
- *
- * If 'entry' is non-NULL, make it point to the resolved dns entry
- *
- * This is the version for resolves-in-a-thread.
- */
-CURLcode Curl_wait_for_resolv(struct connectdata *conn,
-                              struct Curl_dns_entry **entry)
-{
-  struct thread_data   *td = (struct thread_data*) conn->async.os_specific;
-  struct SessionHandle *data = conn->data;
-  CURLcode rc = CURLE_OK;
-
-  DEBUGASSERT(conn && td);
-
-  /* wait for the thread to resolve the name */
-  if (Curl_thread_join(&td->thread_hnd)) {
-    rc = getaddrinfo_complete(conn);
-  } else {
-    DEBUGASSERT(0);
-  }
-
-  conn->async.done = TRUE;
-
-  if(entry)
-    *entry = conn->async.dns;
-
-  if(!conn->async.dns) {
-    /* a name was not resolved */
-    if (conn->bits.httpproxy) {
-      failf(data, "Could not resolve proxy: %s; %s",
-            conn->async.hostname, Curl_strerror(conn, conn->async.status));
-      rc = CURLE_COULDNT_RESOLVE_PROXY;
-    } else {
-      failf(data, "Could not resolve host: %s; %s",
-            conn->async.hostname, Curl_strerror(conn, conn->async.status));
-      rc = CURLE_COULDNT_RESOLVE_HOST;
-    }
-  }
-
-  Curl_destroy_thread_data(&conn->async);
-
-  if(!conn->async.dns)
-    conn->bits.close = TRUE;
-
-  return (rc);
-}
-
-/*
- * Curl_is_resolved() is called repeatedly to check if a previous name resolve
- * request has completed. It should also make sure to time-out if the
- * operation seems to take too long.
- */
-CURLcode Curl_is_resolved(struct connectdata *conn,
-                          struct Curl_dns_entry **entry)
-{
-  struct SessionHandle *data = conn->data;
-  struct thread_data   *td = (struct thread_data*) conn->async.os_specific;
-  int done = 0;
-
-  *entry = NULL;
-
-  if (!td) {
-    DEBUGASSERT(td);
-    return CURLE_COULDNT_RESOLVE_HOST;
-  }
-
-  Curl_mutex_acquire(td->tsd.mtx);
-  done = td->tsd.done;
-  Curl_mutex_release(td->tsd.mtx);
-
-  if (done) {
-    getaddrinfo_complete(conn);
-    if (td->poll_interval != 0)
-        Curl_expire(conn->data, 0);
-    Curl_destroy_thread_data(&conn->async);
-
-    if(!conn->async.dns) {
-      failf(data, "Could not resolve host: %s; %s",
-            conn->host.name, Curl_strerror(conn, conn->async.status));
-      return CURLE_COULDNT_RESOLVE_HOST;
-    }
-    *entry = conn->async.dns;
-  } else {
-    /* poll for name lookup done with exponential backoff up to 250ms */
-    int elapsed;
-
-    elapsed = Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle);
-    if (elapsed < 0) {
-      elapsed = 0;
-    }
-
-    if (td->poll_interval == 0) {
-      /* Start at 1ms poll interval */
-      td->poll_interval = 1;
-    } else if (elapsed >= td->interval_end) {
-      /* Back-off exponentially if last interval expired  */
-      td->poll_interval *= 2;
-    }
-
-    if (td->poll_interval > 250)
-      td->poll_interval = 250;
-
-    td->interval_end = elapsed + td->poll_interval;
-
-    Curl_expire(conn->data, td->poll_interval);
-  }
-
-  return CURLE_OK;
-}
-
-int Curl_resolv_getsock(struct connectdata *conn,
-                        curl_socket_t *socks,
-                        int numsocks)
-{
-  const struct thread_data *td =
-    (const struct thread_data *) conn->async.os_specific;
-
-  if(td && td->dummy_sock != CURL_SOCKET_BAD) {
-    if(numsocks) {
-      /* return one socket waiting for readable, even though this is just
-         a dummy */
-      socks[0] = td->dummy_sock;
-      return GETSOCK_READSOCK(0);
-    }
-  }
-  return 0;
-}
-
-#ifndef HAVE_GETADDRINFO
-/*
- * Curl_getaddrinfo() - for platforms without getaddrinfo
- */
-Curl_addrinfo *Curl_getaddrinfo(struct connectdata *conn,
-                                const char *hostname,
-                                int port,
-                                int *waitp)
-{
-  struct hostent *h = NULL;
-  struct SessionHandle *data = conn->data;
-  struct in_addr in;
-
-  *waitp = 0; /* default to synchronous response */
-
-  if(Curl_inet_pton(AF_INET, hostname, &in) > 0)
-    /* This is a dotted IP address 123.123.123.123-style */
-    return Curl_ip2addr(AF_INET, &in, hostname, port);
-
-  /* fire up a new resolver thread! */
-  if(init_resolve_thread(conn, hostname, port, NULL)) {
-    *waitp = 1; /* expect asynchronous response */
-    return NULL;
-  }
-
-  /* fall-back to blocking version */
-  return Curl_ipv4_resolve_r(hostname, port);
-}
-
-#else /* !HAVE_GETADDRINFO */
-
-/*
- * Curl_getaddrinfo() - for getaddrinfo
- */
-Curl_addrinfo *Curl_getaddrinfo(struct connectdata *conn,
-                                const char *hostname,
-                                int port,
-                                int *waitp)
-{
-  struct addrinfo hints;
-  Curl_addrinfo *res;
-  int error;
-  char sbuf[NI_MAXSERV];
-  int pf = PF_INET;
-  struct SessionHandle *data = conn->data;
-
-  *waitp = 0; /* default to synchronous response */
-
-#ifndef CURLRES_IPV4
-  /*
-   * Check if a limited name resolve has been requested.
-   */
-  switch(data->set.ip_version) {
-  case CURL_IPRESOLVE_V4:
-    pf = PF_INET;
-    break;
-  case CURL_IPRESOLVE_V6:
-    pf = PF_INET6;
-    break;
-  default:
-    pf = PF_UNSPEC;
-    break;
-  }
-
-  if (pf != PF_INET) {
-    /* see if we have an IPv6 stack */
-    curl_socket_t s = socket(PF_INET6, SOCK_DGRAM, 0);
-    if(s == CURL_SOCKET_BAD) {
-      /* Some non-IPv6 stacks have been found to make very slow name resolves
-       * when PF_UNSPEC is used, so thus we switch to a mere PF_INET lookup if
-       * the stack seems to be a non-ipv6 one. */
-
-      pf = PF_INET;
-    }
-    else {
-      /* This seems to be an IPv6-capable stack, use PF_UNSPEC for the widest
-       * possible checks. And close the socket again.
-       */
-      sclose(s);
-    }
-  }
-#endif /* !CURLRES_IPV4 */
-
-  memset(&hints, 0, sizeof(hints));
-  hints.ai_family = pf;
-  hints.ai_socktype = conn->socktype;
-#if 0 /* removed nov 8 2005 before 7.15.1 */
-  hints.ai_flags = AI_CANONNAME;
-#endif
-  snprintf(sbuf, sizeof(sbuf), "%d", port);
-
-  /* fire up a new resolver thread! */
-  if(init_resolve_thread(conn, hostname, port, &hints)) {
-    *waitp = 1; /* expect asynchronous response */
-    return NULL;
-  }
-
-  /* fall-back to blocking version */
-  infof(data, "init_resolve_thread() failed for %s; %s\n",
-        hostname, Curl_strerror(conn, ERRNO));
-
-  error = Curl_getaddrinfo_ex(hostname, sbuf, &hints, &res);
-  if(error) {
-    infof(data, "getaddrinfo() failed for %s:%d; %s\n",
-          hostname, port, Curl_strerror(conn, SOCKERRNO));
-    return NULL;
-  }
-  return res;
-}
-
-#endif /* !HAVE_GETADDRINFO */
-
-#endif /* CURLRES_THREADED */
diff --git a/src/other/curl/lib/http.c b/src/other/curl/lib/http.c
deleted file mode 100644
index 7ffc34d..0000000
--- a/src/other/curl/lib/http.c
+++ /dev/null
@@ -1,3807 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_HTTP
-/* -- WIN32 approved -- */
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-
-#ifdef WIN32
-#include <time.h>
-#include <io.h>
-#else
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-
-#ifdef HAVE_TIME_H
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#endif
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_NET_IF_H
-#include <net/if.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
-#endif
-
-#ifdef HAVE_SYS_PARAM_H
-#include <sys/param.h>
-#endif
-
-#endif
-
-#include "urldata.h"
-#include <curl/curl.h>
-#include "transfer.h"
-#include "sendf.h"
-#include "easyif.h" /* for Curl_convert_... prototypes */
-#include "formdata.h"
-#include "progress.h"
-#include "curl_base64.h"
-#include "cookie.h"
-#include "strequal.h"
-#include "sslgen.h"
-#include "http_digest.h"
-#include "http_ntlm.h"
-#include "http_negotiate.h"
-#include "url.h"
-#include "share.h"
-#include "hostip.h"
-#include "http.h"
-#include "curl_memory.h"
-#include "select.h"
-#include "parsedate.h" /* for the week day and month names */
-#include "strtoofft.h"
-#include "multiif.h"
-#include "rawstr.h"
-#include "content_encoding.h"
-#include "rtsp.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/* Default proxy timeout in milliseconds */
-#define PROXY_TIMEOUT (3600*1000)
-
-/*
- * Forward declarations.
- */
-
-static int http_getsock_do(struct connectdata *conn,
-                           curl_socket_t *socks,
-                           int numsocks);
-#ifdef USE_SSL
-static CURLcode https_connecting(struct connectdata *conn, bool *done);
-static int https_getsock(struct connectdata *conn,
-                         curl_socket_t *socks,
-                         int numsocks);
-#else
-#define https_connecting(x,y) CURLE_COULDNT_CONNECT
-#endif
-
-/*
- * HTTP handler interface.
- */
-const struct Curl_handler Curl_handler_http = {
-  "HTTP",                               /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_http,                            /* do_it */
-  Curl_http_done,                       /* done */
-  ZERO_NULL,                            /* do_more */
-  Curl_http_connect,                    /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  http_getsock_do,                      /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_HTTP,                            /* defport */
-  PROT_HTTP,                            /* protocol */
-};
-
-#ifdef USE_SSL
-/*
- * HTTPS handler interface.
- */
-const struct Curl_handler Curl_handler_https = {
-  "HTTPS",                              /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_http,                            /* do_it */
-  Curl_http_done,                       /* done */
-  ZERO_NULL,                            /* do_more */
-  Curl_http_connect,                    /* connect_it */
-  https_connecting,                     /* connecting */
-  ZERO_NULL,                            /* doing */
-  https_getsock,                        /* proto_getsock */
-  http_getsock_do,                      /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_HTTPS,                           /* defport */
-  PROT_HTTP | PROT_HTTPS | PROT_SSL     /* protocol */
-};
-#endif
-
-
-/*
- * checkheaders() checks the linked list of custom HTTP headers for a
- * particular header (prefix).
- *
- * Returns a pointer to the first matching header or NULL if none matched.
- */
-char *Curl_checkheaders(struct SessionHandle *data, const char *thisheader)
-{
-  struct curl_slist *head;
-  size_t thislen = strlen(thisheader);
-
-  for(head = data->set.headers; head; head=head->next) {
-    if(Curl_raw_nequal(head->data, thisheader, thislen))
-      return head->data;
-  }
-  return NULL;
-}
-
-/*
- * Strip off leading and trailing whitespace from the value in the
- * given HTTP header line and return a strdupped copy. Returns NULL in
- * case of allocation failure. Returns an empty string if the header value
- * consists entirely of whitespace.
- */
-char *Curl_copy_header_value(const char *h)
-{
-  const char *start;
-  const char *end;
-  char *value;
-  size_t len;
-
-  DEBUGASSERT(h);
-
-  /* Find the end of the header name */
-  while (*h && (*h != ':'))
-    ++h;
-
-  if (*h)
-    /* Skip over colon */
-    ++h;
-
-  /* Find the first non-space letter */
-  start = h;
-  while(*start && ISSPACE(*start))
-    start++;
-
-  /* data is in the host encoding so
-     use '\r' and '\n' instead of 0x0d and 0x0a */
-  end = strchr(start, '\r');
-  if(!end)
-    end = strchr(start, '\n');
-  if(!end)
-    end = strchr(start, '\0');
-  if(!end)
-    return NULL;
-
-  /* skip all trailing space letters */
-  while((end > start) && ISSPACE(*end))
-    end--;
-
-  /* get length of the type */
-  len = end-start+1;
-
-  value = malloc(len + 1);
-  if(!value)
-    return NULL;
-
-  memcpy(value, start, len);
-  value[len] = 0; /* zero terminate */
-
-  return value;
-}
-
-/*
- * http_output_basic() sets up an Authorization: header (or the proxy version)
- * for HTTP Basic authentication.
- *
- * Returns CURLcode.
- */
-static CURLcode http_output_basic(struct connectdata *conn, bool proxy)
-{
-  char *authorization;
-  struct SessionHandle *data=conn->data;
-  char **userp;
-  const char *user;
-  const char *pwd;
-
-  if(proxy) {
-    userp = &conn->allocptr.proxyuserpwd;
-    user = conn->proxyuser;
-    pwd = conn->proxypasswd;
-  }
-  else {
-    userp = &conn->allocptr.userpwd;
-    user = conn->user;
-    pwd = conn->passwd;
-  }
-
-  snprintf(data->state.buffer, sizeof(data->state.buffer), "%s:%s", user, pwd);
-  if(Curl_base64_encode(data, data->state.buffer,
-                        strlen(data->state.buffer),
-                        &authorization) > 0) {
-    if(*userp)
-      free(*userp);
-    *userp = aprintf( "%sAuthorization: Basic %s\r\n",
-                      proxy?"Proxy-":"",
-                      authorization);
-    free(authorization);
-    if(!*userp)
-      return CURLE_OUT_OF_MEMORY;
-  }
-  else
-    return CURLE_OUT_OF_MEMORY;
-  return CURLE_OK;
-}
-
-/* pickoneauth() selects the most favourable authentication method from the
- * ones available and the ones we want.
- *
- * return TRUE if one was picked
- */
-static bool pickoneauth(struct auth *pick)
-{
-  bool picked;
-  /* only deal with authentication we want */
-  long avail = pick->avail & pick->want;
-  picked = TRUE;
-
-  /* The order of these checks is highly relevant, as this will be the order
-     of preference in case of the existence of multiple accepted types. */
-  if(avail & CURLAUTH_GSSNEGOTIATE)
-    pick->picked = CURLAUTH_GSSNEGOTIATE;
-  else if(avail & CURLAUTH_DIGEST)
-    pick->picked = CURLAUTH_DIGEST;
-  else if(avail & CURLAUTH_NTLM)
-    pick->picked = CURLAUTH_NTLM;
-  else if(avail & CURLAUTH_BASIC)
-    pick->picked = CURLAUTH_BASIC;
-  else {
-    pick->picked = CURLAUTH_PICKNONE; /* we select to use nothing */
-    picked = FALSE;
-  }
-  pick->avail = CURLAUTH_NONE; /* clear it here */
-
-  return picked;
-}
-
-/*
- * Curl_http_perhapsrewind()
- *
- * If we are doing POST or PUT {
- *   If we have more data to send {
- *     If we are doing NTLM {
- *       Keep sending since we must not disconnect
- *     }
- *     else {
- *       If there is more than just a little data left to send, close
- *       the current connection by force.
- *     }
- *   }
- *   If we have sent any data {
- *     If we don't have track of all the data {
- *       call app to tell it to rewind
- *     }
- *     else {
- *       rewind internally so that the operation can restart fine
- *     }
- *   }
- * }
- */
-CURLcode Curl_http_perhapsrewind(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  struct HTTP *http = data->state.proto.http;
-  curl_off_t bytessent;
-  curl_off_t expectsend = -1; /* default is unknown */
-
-  if(!http || !(conn->protocol & PROT_HTTP))
-    /* If this is still NULL, we have not reach very far and we can
-       safely skip this rewinding stuff, or this is attempted to get used
-       when HTTP isn't activated */
-    return CURLE_OK;
-
-  switch(data->set.httpreq) {
-  case HTTPREQ_GET:
-  case HTTPREQ_HEAD:
-    return CURLE_OK;
-  default:
-    break;
-  }
-
-  bytessent = http->writebytecount;
-
-  if(conn->bits.authneg)
-    /* This is a state where we are known to be negotiating and we don't send
-       any data then. */
-    expectsend = 0;
-  else {
-    /* figure out how much data we are expected to send */
-    switch(data->set.httpreq) {
-    case HTTPREQ_POST:
-      if(data->set.postfieldsize != -1)
-        expectsend = data->set.postfieldsize;
-      else if(data->set.postfields)
-        expectsend = (curl_off_t)strlen(data->set.postfields);
-      break;
-    case HTTPREQ_PUT:
-      if(data->set.infilesize != -1)
-        expectsend = data->set.infilesize;
-      break;
-    case HTTPREQ_POST_FORM:
-      expectsend = http->postsize;
-      break;
-    default:
-      break;
-    }
-  }
-
-  conn->bits.rewindaftersend = FALSE; /* default */
-
-  if((expectsend == -1) || (expectsend > bytessent)) {
-    /* There is still data left to send */
-    if((data->state.authproxy.picked == CURLAUTH_NTLM) ||
-       (data->state.authhost.picked == CURLAUTH_NTLM)) {
-      if(((expectsend - bytessent) < 2000) ||
-         (conn->ntlm.state != NTLMSTATE_NONE)) {
-        /* The NTLM-negotiation has started *OR* there is just a little (<2K)
-           data left to send, keep on sending. */
-
-        /* rewind data when completely done sending! */
-        if(!conn->bits.authneg)
-          conn->bits.rewindaftersend = TRUE;
-
-        return CURLE_OK;
-      }
-      if(conn->bits.close)
-        /* this is already marked to get closed */
-        return CURLE_OK;
-
-      infof(data, "NTLM send, close instead of sending %" FORMAT_OFF_T
-            " bytes\n", (curl_off_t)(expectsend - bytessent));
-    }
-
-    /* This is not NTLM or NTLM with many bytes left to send: close
-     */
-    conn->bits.close = TRUE;
-    data->req.size = 0; /* don't download any more than 0 bytes */
-
-    /* There still is data left to send, but this connection is marked for
-       closure so we can safely do the rewind right now */
-  }
-
-  if(bytessent)
-    /* we rewind now at once since if we already sent something */
-    return Curl_readrewind(conn);
-
-  return CURLE_OK;
-}
-
-/*
- * Curl_http_auth_act() gets called when all HTTP headers have been received
- * and it checks what authentication methods that are available and decides
- * which one (if any) to use. It will set 'newurl' if an auth method was
- * picked.
- */
-
-CURLcode Curl_http_auth_act(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  bool pickhost = FALSE;
-  bool pickproxy = FALSE;
-  CURLcode code = CURLE_OK;
-
-  if(100 <= data->req.httpcode && 199 >= data->req.httpcode)
-    /* this is a transient response code, ignore */
-    return CURLE_OK;
-
-  if(data->state.authproblem)
-    return data->set.http_fail_on_error?CURLE_HTTP_RETURNED_ERROR:CURLE_OK;
-
-  if(conn->bits.user_passwd &&
-     ((data->req.httpcode == 401) ||
-      (conn->bits.authneg && data->req.httpcode < 300))) {
-    pickhost = pickoneauth(&data->state.authhost);
-    if(!pickhost)
-      data->state.authproblem = TRUE;
-  }
-  if(conn->bits.proxy_user_passwd &&
-     ((data->req.httpcode == 407) ||
-      (conn->bits.authneg && data->req.httpcode < 300))) {
-    pickproxy = pickoneauth(&data->state.authproxy);
-    if(!pickproxy)
-      data->state.authproblem = TRUE;
-  }
-
-  if(pickhost || pickproxy) {
-    /* In case this is GSS auth, the newurl field is already allocated so
-       we must make sure to free it before allocating a new one. As figured
-       out in bug #2284386 */
-    Curl_safefree(data->req.newurl);
-    data->req.newurl = strdup(data->change.url); /* clone URL */
-    if(!data->req.newurl)
-      return CURLE_OUT_OF_MEMORY;
-
-    if((data->set.httpreq != HTTPREQ_GET) &&
-       (data->set.httpreq != HTTPREQ_HEAD) &&
-       !conn->bits.rewindaftersend) {
-      code = Curl_http_perhapsrewind(conn);
-      if(code)
-        return code;
-    }
-  }
-
-  else if((data->req.httpcode < 300) &&
-          (!data->state.authhost.done) &&
-          conn->bits.authneg) {
-    /* no (known) authentication available,
-       authentication is not "done" yet and
-       no authentication seems to be required and
-       we didn't try HEAD or GET */
-    if((data->set.httpreq != HTTPREQ_GET) &&
-       (data->set.httpreq != HTTPREQ_HEAD)) {
-      data->req.newurl = strdup(data->change.url); /* clone URL */
-      if(!data->req.newurl)
-        return CURLE_OUT_OF_MEMORY;
-      data->state.authhost.done = TRUE;
-    }
-  }
-  if(Curl_http_should_fail(conn)) {
-    failf (data, "The requested URL returned error: %d",
-           data->req.httpcode);
-    code = CURLE_HTTP_RETURNED_ERROR;
-  }
-
-  return code;
-}
-
-
-/*
- * Output the correct authentication header depending on the auth type
- * and whether or not it is to a proxy.
- */
-static CURLcode
-output_auth_headers(struct connectdata *conn,
-                    struct auth *authstatus,
-                    const char *request,
-                    const char *path,
-                    bool proxy)
-{
-  struct SessionHandle *data = conn->data;
-  const char *auth=NULL;
-  CURLcode result = CURLE_OK;
-#ifdef HAVE_GSSAPI
-  struct negotiatedata *negdata = proxy?
-    &data->state.proxyneg:&data->state.negotiate;
-#endif
-
-#ifdef CURL_DISABLE_CRYPTO_AUTH
-  (void)request;
-  (void)path;
-#endif
-
-#ifdef HAVE_GSSAPI
-  if((authstatus->picked == CURLAUTH_GSSNEGOTIATE) &&
-     negdata->context && !GSS_ERROR(negdata->status)) {
-    auth="GSS-Negotiate";
-    result = Curl_output_negotiate(conn, proxy);
-    if(result)
-      return result;
-    authstatus->done = TRUE;
-    negdata->state = GSS_AUTHSENT;
-  }
-  else
-#endif
-#ifdef USE_NTLM
-  if(authstatus->picked == CURLAUTH_NTLM) {
-    auth="NTLM";
-    result = Curl_output_ntlm(conn, proxy);
-    if(result)
-      return result;
-  }
-  else
-#endif
-#ifndef CURL_DISABLE_CRYPTO_AUTH
-  if(authstatus->picked == CURLAUTH_DIGEST) {
-    auth="Digest";
-    result = Curl_output_digest(conn,
-                                proxy,
-                                (const unsigned char *)request,
-                                (const unsigned char *)path);
-    if(result)
-      return result;
-  }
-  else
-#endif
-  if(authstatus->picked == CURLAUTH_BASIC) {
-    /* Basic */
-    if((proxy && conn->bits.proxy_user_passwd &&
-       !Curl_checkheaders(data, "Proxy-authorization:")) ||
-       (!proxy && conn->bits.user_passwd &&
-       !Curl_checkheaders(data, "Authorization:"))) {
-      auth="Basic";
-      result = http_output_basic(conn, proxy);
-      if(result)
-        return result;
-    }
-    /* NOTE: this function should set 'done' TRUE, as the other auth
-       functions work that way */
-    authstatus->done = TRUE;
-  }
-
-  if(auth) {
-    infof(data, "%s auth using %s with user '%s'\n",
-          proxy?"Proxy":"Server", auth,
-          proxy?(conn->proxyuser?conn->proxyuser:""):
-                (conn->user?conn->user:""));
-    authstatus->multi = (bool)(!authstatus->done);
-  }
-  else
-    authstatus->multi = FALSE;
-
-  return CURLE_OK;
-}
-
-/**
- * Curl_http_output_auth() setups the authentication headers for the
- * host/proxy and the correct authentication
- * method. conn->data->state.authdone is set to TRUE when authentication is
- * done.
- *
- * @param conn all information about the current connection
- * @param request pointer to the request keyword
- * @param path pointer to the requested path
- * @param proxytunnel boolean if this is the request setting up a "proxy
- * tunnel"
- *
- * @returns CURLcode
- */
-static CURLcode
-http_output_auth(struct connectdata *conn,
-                 const char *request,
-                 const char *path,
-                 bool proxytunnel) /* TRUE if this is the request setting
-                                      up the proxy tunnel */
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct auth *authhost;
-  struct auth *authproxy;
-
-  DEBUGASSERT(data);
-
-  authhost = &data->state.authhost;
-  authproxy = &data->state.authproxy;
-
-  if((conn->bits.httpproxy && conn->bits.proxy_user_passwd) ||
-     conn->bits.user_passwd)
-    /* continue please */ ;
-  else {
-    authhost->done = TRUE;
-    authproxy->done = TRUE;
-    return CURLE_OK; /* no authentication with no user or password */
-  }
-
-  if(authhost->want && !authhost->picked)
-    /* The app has selected one or more methods, but none has been picked
-       so far by a server round-trip. Then we set the picked one to the
-       want one, and if this is one single bit it'll be used instantly. */
-    authhost->picked = authhost->want;
-
-  if(authproxy->want && !authproxy->picked)
-    /* The app has selected one or more methods, but none has been picked so
-       far by a proxy round-trip. Then we set the picked one to the want one,
-       and if this is one single bit it'll be used instantly. */
-    authproxy->picked = authproxy->want;
-
-#ifndef CURL_DISABLE_PROXY
-  /* Send proxy authentication header if needed */
-  if(conn->bits.httpproxy &&
-      (conn->bits.tunnel_proxy == proxytunnel)) {
-    result = output_auth_headers(conn, authproxy, request, path, TRUE);
-    if(result)
-      return result;
-  }
-  else
-#else
-  (void)proxytunnel;
-#endif /* CURL_DISABLE_PROXY */
-    /* we have no proxy so let's pretend we're done authenticating
-       with it */
-    authproxy->done = TRUE;
-
-  /* To prevent the user+password to get sent to other than the original
-     host due to a location-follow, we do some weirdo checks here */
-  if(!data->state.this_is_a_follow ||
-     conn->bits.netrc ||
-     !data->state.first_host ||
-     data->set.http_disable_hostname_check_before_authentication ||
-     Curl_raw_equal(data->state.first_host, conn->host.name)) {
-    result = output_auth_headers(conn, authhost, request, path, FALSE);
-  }
-  else
-    authhost->done = TRUE;
-
-  return result;
-}
-
-
-/*
- * Curl_http_input_auth() deals with Proxy-Authenticate: and WWW-Authenticate:
- * headers. They are dealt with both in the transfer.c main loop and in the
- * proxy CONNECT loop.
- */
-
-CURLcode Curl_http_input_auth(struct connectdata *conn,
-                              int httpcode,
-                              const char *header) /* the first non-space */
-{
-  /*
-   * This resource requires authentication
-   */
-  struct SessionHandle *data = conn->data;
-
-  long *availp;
-  const char *start;
-  struct auth *authp;
-
-  if(httpcode == 407) {
-    start = header+strlen("Proxy-authenticate:");
-    availp = &data->info.proxyauthavail;
-    authp = &data->state.authproxy;
-  }
-  else {
-    start = header+strlen("WWW-Authenticate:");
-    availp = &data->info.httpauthavail;
-    authp = &data->state.authhost;
-  }
-
-  /* pass all white spaces */
-  while(*start && ISSPACE(*start))
-    start++;
-
-  /*
-   * Here we check if we want the specific single authentication (using ==) and
-   * if we do, we initiate usage of it.
-   *
-   * If the provided authentication is wanted as one out of several accepted
-   * types (using &), we OR this authentication type to the authavail
-   * variable.
-   *
-   * Note:
-   *
-   * ->picked is first set to the 'want' value (one or more bits) before the
-   * request is sent, and then it is again set _after_ all response 401/407
-   * headers have been received but then only to a single preferred method
-   * (bit).
-   *
-   */
-
-#ifdef HAVE_GSSAPI
-  if(checkprefix("GSS-Negotiate", start) ||
-      checkprefix("Negotiate", start)) {
-    int neg;
-    *availp |= CURLAUTH_GSSNEGOTIATE;
-    authp->avail |= CURLAUTH_GSSNEGOTIATE;
-
-    if(data->state.negotiate.state == GSS_AUTHSENT) {
-      /* if we sent GSS authentication in the outgoing request and we get this
-         back, we're in trouble */
-      infof(data, "Authentication problem. Ignoring this.\n");
-      data->state.authproblem = TRUE;
-    }
-    else {
-      neg = Curl_input_negotiate(conn, (bool)(httpcode == 407), start);
-      if(neg == 0) {
-        DEBUGASSERT(!data->req.newurl);
-        data->req.newurl = strdup(data->change.url);
-        if(!data->req.newurl)
-          return CURLE_OUT_OF_MEMORY;
-        data->state.authproblem = FALSE;
-        /* we received GSS auth info and we dealt with it fine */
-        data->state.negotiate.state = GSS_AUTHRECV;
-      }
-      else {
-        data->state.authproblem = TRUE;
-      }
-    }
-  }
-  else
-#endif
-#ifdef USE_NTLM
-    /* NTLM support requires the SSL crypto libs */
-    if(checkprefix("NTLM", start)) {
-      *availp |= CURLAUTH_NTLM;
-      authp->avail |= CURLAUTH_NTLM;
-      if(authp->picked == CURLAUTH_NTLM) {
-        /* NTLM authentication is picked and activated */
-        CURLntlm ntlm =
-          Curl_input_ntlm(conn, (bool)(httpcode == 407), start);
-
-        if(CURLNTLM_BAD != ntlm)
-          data->state.authproblem = FALSE;
-        else {
-          infof(data, "Authentication problem. Ignoring this.\n");
-          data->state.authproblem = TRUE;
-        }
-      }
-    }
-    else
-#endif
-#ifndef CURL_DISABLE_CRYPTO_AUTH
-      if(checkprefix("Digest", start)) {
-        if((authp->avail & CURLAUTH_DIGEST) != 0) {
-          infof(data, "Ignoring duplicate digest auth header.\n");
-        }
-        else {
-          CURLdigest dig;
-          *availp |= CURLAUTH_DIGEST;
-          authp->avail |= CURLAUTH_DIGEST;
-
-          /* We call this function on input Digest headers even if Digest
-           * authentication isn't activated yet, as we need to store the
-           * incoming data from this header in case we are gonna use Digest. */
-          dig = Curl_input_digest(conn, (bool)(httpcode == 407), start);
-
-          if(CURLDIGEST_FINE != dig) {
-            infof(data, "Authentication problem. Ignoring this.\n");
-            data->state.authproblem = TRUE;
-          }
-        }
-      }
-      else
-#endif
-      if(checkprefix("Basic", start)) {
-        *availp |= CURLAUTH_BASIC;
-        authp->avail |= CURLAUTH_BASIC;
-        if(authp->picked == CURLAUTH_BASIC) {
-          /* We asked for Basic authentication but got a 40X back
-             anyway, which basically means our name+password isn't
-             valid. */
-          authp->avail = CURLAUTH_NONE;
-          infof(data, "Authentication problem. Ignoring this.\n");
-          data->state.authproblem = TRUE;
-        }
-      }
-
-  return CURLE_OK;
-}
-
-/**
- * Curl_http_should_fail() determines whether an HTTP response has gotten us
- * into an error state or not.
- *
- * @param conn all information about the current connection
- *
- * @retval 0 communications should continue
- *
- * @retval 1 communications should not continue
- */
-int Curl_http_should_fail(struct connectdata *conn)
-{
-  struct SessionHandle *data;
-  int httpcode;
-
-  DEBUGASSERT(conn);
-  data = conn->data;
-  DEBUGASSERT(data);
-
-  httpcode = data->req.httpcode;
-
-  /*
-  ** If we haven't been asked to fail on error,
-  ** don't fail.
-  */
-  if(!data->set.http_fail_on_error)
-    return 0;
-
-  /*
-  ** Any code < 400 is never terminal.
-  */
-  if(httpcode < 400)
-    return 0;
-
-  if(data->state.resume_from &&
-     (data->set.httpreq==HTTPREQ_GET) &&
-     (httpcode == 416)) {
-    /* "Requested Range Not Satisfiable", just proceed and
-       pretend this is no error */
-    return 0;
-  }
-
-  /*
-  ** Any code >= 400 that's not 401 or 407 is always
-  ** a terminal error
-  */
-  if((httpcode != 401) &&
-      (httpcode != 407))
-    return 1;
-
-  /*
-  ** All we have left to deal with is 401 and 407
-  */
-  DEBUGASSERT((httpcode == 401) || (httpcode == 407));
-
-  /*
-  ** Examine the current authentication state to see if this
-  ** is an error.  The idea is for this function to get
-  ** called after processing all the headers in a response
-  ** message.  So, if we've been to asked to authenticate a
-  ** particular stage, and we've done it, we're OK.  But, if
-  ** we're already completely authenticated, it's not OK to
-  ** get another 401 or 407.
-  **
-  ** It is possible for authentication to go stale such that
-  ** the client needs to reauthenticate.  Once that info is
-  ** available, use it here.
-  */
-#if 0 /* set to 1 when debugging this functionality */
-  infof(data,"%s: authstage = %d\n",__FUNCTION__,data->state.authstage);
-  infof(data,"%s: authwant = 0x%08x\n",__FUNCTION__,data->state.authwant);
-  infof(data,"%s: authavail = 0x%08x\n",__FUNCTION__,data->state.authavail);
-  infof(data,"%s: httpcode = %d\n",__FUNCTION__,k->httpcode);
-  infof(data,"%s: authdone = %d\n",__FUNCTION__,data->state.authdone);
-  infof(data,"%s: newurl = %s\n",__FUNCTION__,data->req.newurl ?
-        data->req.newurl : "(null)");
-  infof(data,"%s: authproblem = %d\n",__FUNCTION__,data->state.authproblem);
-#endif
-
-  /*
-  ** Either we're not authenticating, or we're supposed to
-  ** be authenticating something else.  This is an error.
-  */
-  if((httpcode == 401) && !conn->bits.user_passwd)
-    return TRUE;
-  if((httpcode == 407) && !conn->bits.proxy_user_passwd)
-    return TRUE;
-
-  return data->state.authproblem;
-}
-
-/*
- * readmoredata() is a "fread() emulation" to provide POST and/or request
- * data. It is used when a huge POST is to be made and the entire chunk wasn't
- * sent in the first send(). This function will then be called from the
- * transfer.c loop when more data is to be sent to the peer.
- *
- * Returns the amount of bytes it filled the buffer with.
- */
-static size_t readmoredata(char *buffer,
-                           size_t size,
-                           size_t nitems,
-                           void *userp)
-{
-  struct connectdata *conn = (struct connectdata *)userp;
-  struct HTTP *http = conn->data->state.proto.http;
-  size_t fullsize = size * nitems;
-
-  if(0 == http->postsize)
-    /* nothing to return */
-    return 0;
-
-  /* make sure that a HTTP request is never sent away chunked! */
-  conn->data->req.forbidchunk = (bool)(http->sending == HTTPSEND_REQUEST);
-
-  if(http->postsize <= (curl_off_t)fullsize) {
-    memcpy(buffer, http->postdata, (size_t)http->postsize);
-    fullsize = (size_t)http->postsize;
-
-    if(http->backup.postsize) {
-      /* move backup data into focus and continue on that */
-      http->postdata = http->backup.postdata;
-      http->postsize = http->backup.postsize;
-      conn->fread_func = http->backup.fread_func;
-      conn->fread_in = http->backup.fread_in;
-
-      http->sending++; /* move one step up */
-
-      http->backup.postsize=0;
-    }
-    else
-      http->postsize = 0;
-
-    return fullsize;
-  }
-
-  memcpy(buffer, http->postdata, fullsize);
-  http->postdata += fullsize;
-  http->postsize -= fullsize;
-
-  return fullsize;
-}
-
-/* ------------------------------------------------------------------------- */
-/* add_buffer functions */
-
-/*
- * Curl_add_buffer_init() sets up and returns a fine buffer struct
- */
-Curl_send_buffer *Curl_add_buffer_init(void)
-{
-  return calloc(1, sizeof(Curl_send_buffer));
-}
-
-/*
- * Curl_add_buffer_send() sends a header buffer and frees all associated
- * memory.  Body data may be appended to the header data if desired.
- *
- * Returns CURLcode
- */
-CURLcode Curl_add_buffer_send(Curl_send_buffer *in,
-                         struct connectdata *conn,
-                         long *bytes_written, /* add the number of sent bytes
-                                                 to this counter */
-                         size_t included_body_bytes, /* how much of the buffer
-                                                        contains body data */
-                         int socketindex)
-
-{
-  ssize_t amount;
-  CURLcode res;
-  char *ptr;
-  size_t size;
-  struct HTTP *http = conn->data->state.proto.http;
-  size_t sendsize;
-  curl_socket_t sockfd;
-  size_t headersize;
-
-  DEBUGASSERT(socketindex <= SECONDARYSOCKET);
-
-  sockfd = conn->sock[socketindex];
-
-  /* The looping below is required since we use non-blocking sockets, but due
-     to the circumstances we will just loop and try again and again etc */
-
-  ptr = in->buffer;
-  size = in->size_used;
-
-  headersize = size - included_body_bytes; /* the initial part that isn't body
-                                              is header */
-
-  DEBUGASSERT(size > included_body_bytes);
-
-#ifdef CURL_DOES_CONVERSIONS
-  res = Curl_convert_to_network(conn->data, ptr, headersize);
-  /* Curl_convert_to_network calls failf if unsuccessful */
-  if(res != CURLE_OK) {
-    /* conversion failed, free memory and return to the caller */
-    if(in->buffer)
-      free(in->buffer);
-    free(in);
-    return res;
-  }
-#endif /* CURL_DOES_CONVERSIONS */
-
-  if(conn->protocol & PROT_HTTPS) {
-    /* We never send more than CURL_MAX_WRITE_SIZE bytes in one single chunk
-       when we speak HTTPS, as if only a fraction of it is sent now, this data
-       needs to fit into the normal read-callback buffer later on and that
-       buffer is using this size.
-    */
-
-    sendsize= (size > CURL_MAX_WRITE_SIZE)?CURL_MAX_WRITE_SIZE:size;
-
-    /* OpenSSL is very picky and we must send the SAME buffer pointer to the
-       library when we attempt to re-send this buffer. Sending the same data
-       is not enough, we must use the exact same address. For this reason, we
-       must copy the data to the uploadbuffer first, since that is the buffer
-       we will be using if this send is retried later.
-    */
-    memcpy(conn->data->state.uploadbuffer, ptr, sendsize);
-    ptr = conn->data->state.uploadbuffer;
-  }
-  else
-    sendsize = size;
-
-  res = Curl_write(conn, sockfd, ptr, sendsize, &amount);
-
-  if(CURLE_OK == res) {
-    /*
-     * Note that we may not send the entire chunk at once, and we have a set
-     * number of data bytes at the end of the big buffer (out of which we may
-     * only send away a part).
-     */
-    /* how much of the header that was sent */
-    size_t headlen = (size_t)amount>headersize?headersize:(size_t)amount;
-    size_t bodylen = amount - headlen;
-
-    if(conn->data->set.verbose) {
-      /* this data _may_ contain binary stuff */
-      Curl_debug(conn->data, CURLINFO_HEADER_OUT, ptr, headlen, conn);
-      if((size_t)amount > headlen) {
-        /* there was body data sent beyond the initial header part, pass that
-           on to the debug callback too */
-        Curl_debug(conn->data, CURLINFO_DATA_OUT,
-                   ptr+headlen, bodylen, conn);
-      }
-    }
-    if(bodylen)
-      /* since we sent a piece of the body here, up the byte counter for it
-         accordingly */
-      http->writebytecount += bodylen;
-
-    *bytes_written += amount;
-
-    if(http) {
-      if((size_t)amount != size) {
-        /* The whole request could not be sent in one system call. We must
-           queue it up and send it later when we get the chance. We must not
-           loop here and wait until it might work again. */
-
-        size -= amount;
-
-        ptr = in->buffer + amount;
-
-        /* backup the currently set pointers */
-        http->backup.fread_func = conn->fread_func;
-        http->backup.fread_in = conn->fread_in;
-        http->backup.postdata = http->postdata;
-        http->backup.postsize = http->postsize;
-
-        /* set the new pointers for the request-sending */
-        conn->fread_func = (curl_read_callback)readmoredata;
-        conn->fread_in = (void *)conn;
-        http->postdata = ptr;
-        http->postsize = (curl_off_t)size;
-
-        http->send_buffer = in;
-        http->sending = HTTPSEND_REQUEST;
-
-        return CURLE_OK;
-      }
-      http->sending = HTTPSEND_BODY;
-      /* the full buffer was sent, clean up and return */
-    }
-    else {
-      if((size_t)amount != size)
-        /* We have no continue-send mechanism now, fail. This can only happen
-           when this function is used from the CONNECT sending function. We
-           currently (stupidly) assume that the whole request is always sent
-           away in the first single chunk.
-
-           This needs FIXing.
-        */
-        return CURLE_SEND_ERROR;
-      else
-        conn->writechannel_inuse = FALSE;
-    }
-  }
-  if(in->buffer)
-    free(in->buffer);
-  free(in);
-
-  return res;
-}
-
-
-/*
- * add_bufferf() add the formatted input to the buffer.
- */
-CURLcode Curl_add_bufferf(Curl_send_buffer *in, const char *fmt, ...)
-{
-  char *s;
-  va_list ap;
-  va_start(ap, fmt);
-  s = vaprintf(fmt, ap); /* this allocs a new string to append */
-  va_end(ap);
-
-  if(s) {
-    CURLcode result = Curl_add_buffer(in, s, strlen(s));
-    free(s);
-    return result;
-  }
-  /* If we failed, we cleanup the whole buffer and return error */
-  if(in->buffer)
-    free(in->buffer);
-  free(in);
-  return CURLE_OUT_OF_MEMORY;
-}
-
-/*
- * add_buffer() appends a memory chunk to the existing buffer
- */
-CURLcode Curl_add_buffer(Curl_send_buffer *in, const void *inptr, size_t size)
-{
-  char *new_rb;
-  size_t new_size;
-
-  if(~size < in->size_used) {
-    /* If resulting used size of send buffer would wrap size_t, cleanup
-       the whole buffer and return error. Otherwise the required buffer
-       size will fit into a single allocatable memory chunk */
-    Curl_safefree(in->buffer);
-    free(in);
-    return CURLE_OUT_OF_MEMORY;
-  }
-
-  if(!in->buffer ||
-     ((in->size_used + size) > (in->size_max - 1))) {
-
-    /* If current buffer size isn't enough to hold the result, use a
-       buffer size that doubles the required size. If this new size
-       would wrap size_t, then just use the largest possible one */
-
-    if((size > (size_t)-1/2) || (in->size_used > (size_t)-1/2) ||
-       (~(size*2) < (in->size_used*2)))
-      new_size = (size_t)-1;
-    else
-      new_size = (in->size_used+size)*2;
-
-    if(in->buffer)
-      /* we have a buffer, enlarge the existing one */
-      new_rb = realloc(in->buffer, new_size);
-    else
-      /* create a new buffer */
-      new_rb = malloc(new_size);
-
-    if(!new_rb) {
-      /* If we failed, we cleanup the whole buffer and return error */
-      Curl_safefree(in->buffer);
-      free(in);
-      return CURLE_OUT_OF_MEMORY;
-    }
-
-    in->buffer = new_rb;
-    in->size_max = new_size;
-  }
-  memcpy(&in->buffer[in->size_used], inptr, size);
-
-  in->size_used += size;
-
-  return CURLE_OK;
-}
-
-/* end of the add_buffer functions */
-/* ------------------------------------------------------------------------- */
-
-
-
-/*
- * Curl_compareheader()
- *
- * Returns TRUE if 'headerline' contains the 'header' with given 'content'.
- * Pass headers WITH the colon.
- */
-bool
-Curl_compareheader(const char *headerline, /* line to check */
-                   const char *header,  /* header keyword _with_ colon */
-                   const char *content) /* content string to find */
-{
-  /* RFC2616, section 4.2 says: "Each header field consists of a name followed
-   * by a colon (":") and the field value. Field names are case-insensitive.
-   * The field value MAY be preceded by any amount of LWS, though a single SP
-   * is preferred." */
-
-  size_t hlen = strlen(header);
-  size_t clen;
-  size_t len;
-  const char *start;
-  const char *end;
-
-  if(!Curl_raw_nequal(headerline, header, hlen))
-    return FALSE; /* doesn't start with header */
-
-  /* pass the header */
-  start = &headerline[hlen];
-
-  /* pass all white spaces */
-  while(*start && ISSPACE(*start))
-    start++;
-
-  /* find the end of the header line */
-  end = strchr(start, '\r'); /* lines end with CRLF */
-  if(!end) {
-    /* in case there's a non-standard compliant line here */
-    end = strchr(start, '\n');
-
-    if(!end)
-      /* hm, there's no line ending here, use the zero byte! */
-      end = strchr(start, '\0');
-  }
-
-  len = end-start; /* length of the content part of the input line */
-  clen = strlen(content); /* length of the word to find */
-
-  /* find the content string in the rest of the line */
-  for(;len>=clen;len--, start++) {
-    if(Curl_raw_nequal(start, content, clen))
-      return TRUE; /* match! */
-  }
-
-  return FALSE; /* no match */
-}
-
-#ifndef CURL_DISABLE_PROXY
-/*
- * Curl_proxyCONNECT() requires that we're connected to a HTTP proxy. This
- * function will issue the necessary commands to get a seamless tunnel through
- * this proxy. After that, the socket can be used just as a normal socket.
- *
- * This badly needs to be rewritten. CONNECT should be sent and dealt with
- * like any ordinary HTTP request, and not specially crafted like this. This
- * function only remains here like this for now since the rewrite is a bit too
- * much work to do at the moment.
- *
- * This function is BLOCKING which is nasty for all multi interface using apps.
- */
-
-CURLcode Curl_proxyCONNECT(struct connectdata *conn,
-                           int sockindex,
-                           const char *hostname,
-                           unsigned short remote_port)
-{
-  int subversion=0;
-  struct SessionHandle *data=conn->data;
-  struct SingleRequest *k = &data->req;
-  CURLcode result;
-  int res;
-  long timeout =
-    data->set.timeout?data->set.timeout:PROXY_TIMEOUT; /* in milliseconds */
-  curl_socket_t tunnelsocket = conn->sock[sockindex];
-  curl_off_t cl=0;
-  bool closeConnection = FALSE;
-  bool chunked_encoding = FALSE;
-  long check;
-
-#define SELECT_OK      0
-#define SELECT_ERROR   1
-#define SELECT_TIMEOUT 2
-  int error = SELECT_OK;
-
-  conn->bits.proxy_connect_closed = FALSE;
-
-  do {
-    if(!conn->bits.tunnel_connecting) { /* BEGIN CONNECT PHASE */
-      char *host_port;
-      Curl_send_buffer *req_buffer;
-
-      infof(data, "Establish HTTP proxy tunnel to %s:%hu\n",
-            hostname, remote_port);
-
-      if(data->req.newurl) {
-        /* This only happens if we've looped here due to authentication
-           reasons, and we don't really use the newly cloned URL here
-           then. Just free() it. */
-        free(data->req.newurl);
-        data->req.newurl = NULL;
-      }
-
-      /* initialize a dynamic send-buffer */
-      req_buffer = Curl_add_buffer_init();
-
-      if(!req_buffer)
-        return CURLE_OUT_OF_MEMORY;
-
-      host_port = aprintf("%s:%hu", hostname, remote_port);
-      if(!host_port) {
-        free(req_buffer);
-        return CURLE_OUT_OF_MEMORY;
-      }
-
-      /* Setup the proxy-authorization header, if any */
-      result = http_output_auth(conn, "CONNECT", host_port, TRUE);
-
-      if(CURLE_OK == result) {
-        char *host=(char *)"";
-        const char *proxyconn="";
-        const char *useragent="";
-        const char *http = (conn->proxytype == CURLPROXY_HTTP_1_0) ?
-          "1.0" : "1.1";
-
-        if(!Curl_checkheaders(data, "Host:")) {
-          host = aprintf("Host: %s\r\n", host_port);
-          if(!host) {
-            free(req_buffer);
-            free(host_port);
-            return CURLE_OUT_OF_MEMORY;
-          }
-        }
-        if(!Curl_checkheaders(data, "Proxy-Connection:"))
-          proxyconn = "Proxy-Connection: Keep-Alive\r\n";
-
-        if(!Curl_checkheaders(data, "User-Agent:") &&
-           data->set.str[STRING_USERAGENT])
-          useragent = conn->allocptr.uagent;
-
-        /* Send the connect request to the proxy */
-        /* BLOCKING */
-        result =
-          Curl_add_bufferf(req_buffer,
-                      "CONNECT %s:%hu HTTP/%s\r\n"
-                      "%s"  /* Host: */
-                      "%s"  /* Proxy-Authorization */
-                      "%s"  /* User-Agent */
-                      "%s", /* Proxy-Connection */
-                      hostname, remote_port, http,
-                      host,
-                      conn->allocptr.proxyuserpwd?
-                      conn->allocptr.proxyuserpwd:"",
-                      useragent,
-                      proxyconn);
-
-        if(host && *host)
-          free(host);
-
-        if(CURLE_OK == result)
-          result = Curl_add_custom_headers(conn, req_buffer);
-
-        if(CURLE_OK == result)
-          /* CRLF terminate the request */
-          result = Curl_add_bufferf(req_buffer, "\r\n");
-
-        if(CURLE_OK == result) {
-          /* Now send off the request */
-          result = Curl_add_buffer_send(req_buffer, conn,
-                                   &data->info.request_size, 0, sockindex);
-        }
-        req_buffer = NULL;
-        if(result)
-          failf(data, "Failed sending CONNECT to proxy");
-      }
-      free(host_port);
-      Curl_safefree(req_buffer);
-      if(result)
-        return result;
-
-      conn->bits.tunnel_connecting = TRUE;
-    } /* END CONNECT PHASE */
-
-    /* now we've issued the CONNECT and we're waiting to hear back -
-       we try not to block here in multi-mode because that might be a LONG
-       wait if the proxy cannot connect-through to the remote host. */
-
-    /* if timeout is requested, find out how much remaining time we have */
-    check = timeout - /* timeout time */
-      Curl_tvdiff(Curl_tvnow(), conn->now); /* spent time */
-    if(check <= 0) {
-      failf(data, "Proxy CONNECT aborted due to timeout");
-      return CURLE_RECV_ERROR;
-    }
-
-    /* if we're in multi-mode and we would block, return instead for a retry */
-    if(Curl_if_multi == data->state.used_interface) {
-      if(0 == Curl_socket_ready(tunnelsocket, CURL_SOCKET_BAD, 0))
-        /* return so we'll be called again polling-style */
-        return CURLE_OK;
-      else {
-        DEBUGF(infof(data,
-                     "Multi mode finished polling for response from "
-                     "proxy CONNECT."));
-      }
-    }
-    else {
-      DEBUGF(infof(data, "Easy mode waiting response from proxy CONNECT."));
-    }
-
-    /* at this point, either:
-       1) we're in easy-mode and so it's okay to block waiting for a CONNECT
-       response
-       2) we're in multi-mode and we didn't block - it's either an error or we
-       now have some data waiting.
-       In any case, the tunnel_connecting phase is over. */
-    conn->bits.tunnel_connecting = FALSE;
-
-    { /* BEGIN NEGOTIATION PHASE */
-      size_t nread;   /* total size read */
-      int perline; /* count bytes per line */
-      int keepon=TRUE;
-      ssize_t gotbytes;
-      char *ptr;
-      char *line_start;
-
-      ptr=data->state.buffer;
-      line_start = ptr;
-
-      nread=0;
-      perline=0;
-      keepon=TRUE;
-
-      while((nread<BUFSIZE) && (keepon && !error)) {
-
-        /* if timeout is requested, find out how much remaining time we have */
-        check = timeout - /* timeout time */
-          Curl_tvdiff(Curl_tvnow(), conn->now); /* spent time */
-        if(check <= 0) {
-          failf(data, "Proxy CONNECT aborted due to timeout");
-          error = SELECT_TIMEOUT; /* already too little time */
-          break;
-        }
-
-        /* loop every second at least, less if the timeout is near */
-        switch (Curl_socket_ready(tunnelsocket, CURL_SOCKET_BAD,
-                            check<1000L?(int)check:1000)) {
-        case -1: /* select() error, stop reading */
-          error = SELECT_ERROR;
-          failf(data, "Proxy CONNECT aborted due to select/poll error");
-          break;
-        case 0: /* timeout */
-          break;
-        default:
-          DEBUGASSERT(ptr+BUFSIZE-nread <= data->state.buffer+BUFSIZE+1);
-          res = Curl_read(conn, tunnelsocket, ptr, BUFSIZE-nread, &gotbytes);
-          if(res< 0)
-            /* EWOULDBLOCK */
-            continue; /* go loop yourself */
-          else if(res)
-            keepon = FALSE;
-          else if(gotbytes <= 0) {
-            keepon = FALSE;
-            if(data->set.proxyauth && data->state.authproxy.avail) {
-              /* proxy auth was requested and there was proxy auth available,
-                 then deem this as "mere" proxy disconnect */
-              conn->bits.proxy_connect_closed = TRUE;
-            }
-            else {
-              error = SELECT_ERROR;
-              failf(data, "Proxy CONNECT aborted");
-            }
-          }
-          else {
-            /*
-             * We got a whole chunk of data, which can be anything from one
-             * byte to a set of lines and possibly just a piece of the last
-             * line.
-             */
-            int i;
-
-            nread += gotbytes;
-
-            if(keepon > TRUE) {
-              /* This means we are currently ignoring a response-body */
-
-              nread = 0; /* make next read start over in the read buffer */
-              ptr=data->state.buffer;
-              if(cl) {
-                /* A Content-Length based body: simply count down the counter
-                   and make sure to break out of the loop when we're done! */
-                cl -= gotbytes;
-                if(cl<=0) {
-                  keepon = FALSE;
-                  break;
-                }
-              }
-              else {
-                /* chunked-encoded body, so we need to do the chunked dance
-                   properly to know when the end of the body is reached */
-                CHUNKcode r;
-                ssize_t tookcareof=0;
-
-                /* now parse the chunked piece of data so that we can
-                   properly tell when the stream ends */
-                r = Curl_httpchunk_read(conn, ptr, gotbytes, &tookcareof);
-                if(r == CHUNKE_STOP) {
-                  /* we're done reading chunks! */
-                  infof(data, "chunk reading DONE\n");
-                  keepon = FALSE;
-                }
-                else
-                  infof(data, "Read %zd bytes of chunk, continue\n",
-                        tookcareof);
-              }
-            }
-            else
-              for(i = 0; i < gotbytes; ptr++, i++) {
-                perline++; /* amount of bytes in this line so far */
-                if(*ptr == 0x0a) {
-                  char letter;
-                  int writetype;
-
-#ifdef CURL_DOES_CONVERSIONS
-                  /* convert from the network encoding */
-                  result = Curl_convert_from_network(data, line_start,
-                                                     perline);
-                  /* Curl_convert_from_network calls failf if unsuccessful */
-                  if(result)
-                    return result;
-#endif /* CURL_DOES_CONVERSIONS */
-
-                  /* output debug if that is requested */
-                  if(data->set.verbose)
-                    Curl_debug(data, CURLINFO_HEADER_IN,
-                               line_start, (size_t)perline, conn);
-
-                  /* send the header to the callback */
-                  writetype = CLIENTWRITE_HEADER;
-                  if(data->set.include_header)
-                    writetype |= CLIENTWRITE_BODY;
-
-                  result = Curl_client_write(conn, writetype, line_start,
-                                             perline);
-                  if(result)
-                    return result;
-
-                  /* Newlines are CRLF, so the CR is ignored as the line isn't
-                     really terminated until the LF comes. Treat a following CR
-                     as end-of-headers as well.*/
-
-                  if(('\r' == line_start[0]) ||
-                     ('\n' == line_start[0])) {
-                    /* end of response-headers from the proxy */
-                    nread = 0; /* make next read start over in the read
-                                  buffer */
-                    ptr=data->state.buffer;
-                    if((407 == k->httpcode) && !data->state.authproblem) {
-                      /* If we get a 407 response code with content length
-                         when we have no auth problem, we must ignore the
-                         whole response-body */
-                      keepon = 2;
-
-                      if(cl) {
-
-                        infof(data, "Ignore %" FORMAT_OFF_T
-                              " bytes of response-body\n", cl);
-                        /* remove the remaining chunk of what we already
-                           read */
-                        cl -= (gotbytes - i);
-
-                        if(cl<=0)
-                          /* if the whole thing was already read, we are done!
-                           */
-                          keepon=FALSE;
-                      }
-                      else if(chunked_encoding) {
-                        CHUNKcode r;
-                        /* We set ignorebody true here since the chunked
-                           decoder function will acknowledge that. Pay
-                           attention so that this is cleared again when this
-                           function returns! */
-                        k->ignorebody = TRUE;
-                        infof(data, "%zd bytes of chunk left\n", gotbytes-i);
-
-                        if(line_start[1] == '\n') {
-                          /* this can only be a LF if the letter at index 0
-                             was a CR */
-                          line_start++;
-                          i++;
-                        }
-
-                        /* now parse the chunked piece of data so that we can
-                           properly tell when the stream ends */
-                        r = Curl_httpchunk_read(conn, line_start+1,
-                                                  gotbytes -i, &gotbytes);
-                        if(r == CHUNKE_STOP) {
-                          /* we're done reading chunks! */
-                          infof(data, "chunk reading DONE\n");
-                          keepon = FALSE;
-                        }
-                        else
-                          infof(data, "Read %zd bytes of chunk, continue\n",
-                                gotbytes);
-                      }
-                      else {
-                        /* without content-length or chunked encoding, we
-                           can't keep the connection alive since the close is
-                           the end signal so we bail out at once instead */
-                        keepon=FALSE;
-                      }
-                    }
-                    else
-                      keepon = FALSE;
-                    break; /* breaks out of for-loop, not switch() */
-                  }
-
-                  /* keep a backup of the position we are about to blank */
-                  letter = line_start[perline];
-                  line_start[perline]=0; /* zero terminate the buffer */
-                  if((checkprefix("WWW-Authenticate:", line_start) &&
-                      (401 == k->httpcode)) ||
-                     (checkprefix("Proxy-authenticate:", line_start) &&
-                      (407 == k->httpcode))) {
-                    result = Curl_http_input_auth(conn, k->httpcode,
-                                                  line_start);
-                    if(result)
-                      return result;
-                  }
-                  else if(checkprefix("Content-Length:", line_start)) {
-                    cl = curlx_strtoofft(line_start +
-                                         strlen("Content-Length:"), NULL, 10);
-                  }
-                  else if(Curl_compareheader(line_start,
-                                             "Connection:", "close"))
-                    closeConnection = TRUE;
-                  else if(Curl_compareheader(line_start,
-                                             "Transfer-Encoding:",
-                                             "chunked")) {
-                    infof(data, "CONNECT responded chunked\n");
-                    chunked_encoding = TRUE;
-                    /* init our chunky engine */
-                    Curl_httpchunk_init(conn);
-                  }
-                  else if(Curl_compareheader(line_start,
-                                             "Proxy-Connection:", "close"))
-                    closeConnection = TRUE;
-                  else if(2 == sscanf(line_start, "HTTP/1.%d %d",
-                                      &subversion,
-                                      &k->httpcode)) {
-                    /* store the HTTP code from the proxy */
-                    data->info.httpproxycode = k->httpcode;
-                  }
-                  /* put back the letter we blanked out before */
-                  line_start[perline]= letter;
-
-                  perline=0; /* line starts over here */
-                  line_start = ptr+1; /* this skips the zero byte we wrote */
-                }
-              }
-          }
-          break;
-        } /* switch */
-        if(Curl_pgrsUpdate(conn))
-          return CURLE_ABORTED_BY_CALLBACK;
-      } /* while there's buffer left and loop is requested */
-
-      if(error)
-        return CURLE_RECV_ERROR;
-
-      if(data->info.httpproxycode != 200) {
-        /* Deal with the possibly already received authenticate
-           headers. 'newurl' is set to a new URL if we must loop. */
-        result = Curl_http_auth_act(conn);
-        if(result)
-          return result;
-
-        if(conn->bits.close)
-          /* the connection has been marked for closure, most likely in the
-             Curl_http_auth_act() function and thus we can kill it at once
-             below
-          */
-          closeConnection = TRUE;
-      }
-
-      if(closeConnection && data->req.newurl) {
-        /* Connection closed by server. Don't use it anymore */
-        sclose(conn->sock[sockindex]);
-        conn->sock[sockindex] = CURL_SOCKET_BAD;
-        break;
-      }
-    } /* END NEGOTIATION PHASE */
-  } while(data->req.newurl);
-
-  if(200 != data->req.httpcode) {
-    failf(data, "Received HTTP code %d from proxy after CONNECT",
-          data->req.httpcode);
-
-    if(closeConnection && data->req.newurl)
-      conn->bits.proxy_connect_closed = TRUE;
-
-    return CURLE_RECV_ERROR;
-  }
-
-  /* If a proxy-authorization header was used for the proxy, then we should
-     make sure that it isn't accidentally used for the document request
-     after we've connected. So let's free and clear it here. */
-  Curl_safefree(conn->allocptr.proxyuserpwd);
-  conn->allocptr.proxyuserpwd = NULL;
-
-  data->state.authproxy.done = TRUE;
-
-  infof (data, "Proxy replied OK to CONNECT request\n");
-  data->req.ignorebody = FALSE; /* put it (back) to non-ignore state */
-  return CURLE_OK;
-}
-#endif /* CURL_DISABLE_PROXY */
-
-/*
- * Curl_http_connect() performs HTTP stuff to do at connect-time, called from
- * the generic Curl_connect().
- */
-CURLcode Curl_http_connect(struct connectdata *conn, bool *done)
-{
-  struct SessionHandle *data;
-  CURLcode result;
-
-  data=conn->data;
-
-  /* We default to persistent connections. We set this already in this connect
-     function to make the re-use checks properly be able to check this bit. */
-  conn->bits.close = FALSE;
-
-#ifndef CURL_DISABLE_PROXY
-  /* If we are not using a proxy and we want a secure connection, perform SSL
-   * initialization & connection now.  If using a proxy with https, then we
-   * must tell the proxy to CONNECT to the host we want to talk to.  Only
-   * after the connect has occurred, can we start talking SSL
-   */
-  if(conn->bits.tunnel_proxy && conn->bits.httpproxy) {
-
-    /* either SSL over proxy, or explicitly asked for */
-    result = Curl_proxyCONNECT(conn, FIRSTSOCKET,
-                               conn->host.name,
-                               conn->remote_port);
-    if(CURLE_OK != result)
-      return result;
-  }
-
-  if(conn->bits.tunnel_connecting) {
-    /* nothing else to do except wait right now - we're not done here. */
-    return CURLE_OK;
-  }
-#endif /* CURL_DISABLE_PROXY */
-
-  if(conn->protocol & PROT_HTTPS) {
-    /* perform SSL initialization */
-    if(data->state.used_interface == Curl_if_multi) {
-      result = https_connecting(conn, done);
-      if(result)
-        return result;
-    }
-    else {
-      /* BLOCKING */
-      result = Curl_ssl_connect(conn, FIRSTSOCKET);
-      if(result)
-        return result;
-      *done = TRUE;
-    }
-  }
-  else {
-    *done = TRUE;
-  }
-
-  return CURLE_OK;
-}
-
-/* this returns the socket to wait for in the DO and DOING state for the multi
-   interface and then we're always _sending_ a request and thus we wait for
-   the single socket to become writable only */
-static int http_getsock_do(struct connectdata *conn,
-                           curl_socket_t *socks,
-                           int numsocks)
-{
-  /* write mode */
-  (void)numsocks; /* unused, we trust it to be at least 1 */
-  socks[0] = conn->sock[FIRSTSOCKET];
-  return GETSOCK_WRITESOCK(0);
-}
-
-#ifdef USE_SSL
-static CURLcode https_connecting(struct connectdata *conn, bool *done)
-{
-  CURLcode result;
-  DEBUGASSERT((conn) && (conn->protocol & PROT_HTTPS));
-
-  /* perform SSL initialization for this socket */
-  result = Curl_ssl_connect_nonblocking(conn, FIRSTSOCKET, done);
-  if(result)
-    conn->bits.close = TRUE; /* a failed connection is marked for closure
-                                to prevent (bad) re-use or similar */
-  return result;
-}
-#endif
-
-#ifdef USE_SSLEAY
-/* This function is OpenSSL-specific. It should be made to query the generic
-   SSL layer instead. */
-static int https_getsock(struct connectdata *conn,
-                         curl_socket_t *socks,
-                         int numsocks)
-{
-  if(conn->protocol & PROT_HTTPS) {
-    struct ssl_connect_data *connssl = &conn->ssl[FIRSTSOCKET];
-
-    if(!numsocks)
-      return GETSOCK_BLANK;
-
-    if(connssl->connecting_state == ssl_connect_2_writing) {
-      /* write mode */
-      socks[0] = conn->sock[FIRSTSOCKET];
-      return GETSOCK_WRITESOCK(0);
-    }
-    else if(connssl->connecting_state == ssl_connect_2_reading) {
-      /* read mode */
-      socks[0] = conn->sock[FIRSTSOCKET];
-      return GETSOCK_READSOCK(0);
-    }
-  }
-  return CURLE_OK;
-}
-#else
-#ifdef USE_GNUTLS
-static int https_getsock(struct connectdata *conn,
-                         curl_socket_t *socks,
-                         int numsocks)
-{
-  (void)conn;
-  (void)socks;
-  (void)numsocks;
-  return GETSOCK_BLANK;
-}
-#else
-#ifdef USE_NSS
-static int https_getsock(struct connectdata *conn,
-                         curl_socket_t *socks,
-                         int numsocks)
-{
-  (void)conn;
-  (void)socks;
-  (void)numsocks;
-  return GETSOCK_BLANK;
-}
-#else
-#ifdef USE_QSOSSL
-static int https_getsock(struct connectdata *conn,
-                         curl_socket_t *socks,
-                         int numsocks)
-{
-  (void)conn;
-  (void)socks;
-  (void)numsocks;
-  return GETSOCK_BLANK;
-}
-#endif
-#endif
-#endif
-#endif
-
-/*
- * Curl_http_done() gets called from Curl_done() after a single HTTP request
- * has been performed.
- */
-
-CURLcode Curl_http_done(struct connectdata *conn,
-                        CURLcode status, bool premature)
-{
-  struct SessionHandle *data = conn->data;
-  struct HTTP *http =data->state.proto.http;
-  (void)premature; /* not used */
-
-  Curl_unencode_cleanup(conn);
-
-  /* set the proper values (possibly modified on POST) */
-  conn->fread_func = data->set.fread_func; /* restore */
-  conn->fread_in = data->set.in; /* restore */
-  conn->seek_func = data->set.seek_func; /* restore */
-  conn->seek_client = data->set.seek_client; /* restore */
-
-  if(http == NULL)
-    return CURLE_OK;
-
-  if(http->send_buffer) {
-    Curl_send_buffer *buff = http->send_buffer;
-
-    free(buff->buffer);
-    free(buff);
-    http->send_buffer = NULL; /* clear the pointer */
-  }
-
-  if(HTTPREQ_POST_FORM == data->set.httpreq) {
-    data->req.bytecount = http->readbytecount + http->writebytecount;
-
-    Curl_formclean(&http->sendit); /* Now free that whole lot */
-    if(http->form.fp) {
-      /* a file being uploaded was left opened, close it! */
-      fclose(http->form.fp);
-      http->form.fp = NULL;
-    }
-  }
-  else if(HTTPREQ_PUT == data->set.httpreq)
-    data->req.bytecount = http->readbytecount + http->writebytecount;
-
-  if(status != CURLE_OK)
-    return (status);
-
-  if(!premature && /* this check is pointless when DONE is called before the
-                      entire operation is complete */
-     !conn->bits.retry &&
-     ((http->readbytecount +
-       data->req.headerbytecount -
-       data->req.deductheadercount)) <= 0) {
-    /* If this connection isn't simply closed to be retried, AND nothing was
-       read from the HTTP server (that counts), this can't be right so we
-       return an error here */
-    failf(data, "Empty reply from server");
-    return CURLE_GOT_NOTHING;
-  }
-
-  return CURLE_OK;
-}
-
-
-/* Determine if we should use HTTP 1.1 for this request. Reasons to avoid it
-   are if the user specifically requested HTTP 1.0, if the server we are
-   connected to only supports 1.0, or if any server previously contacted to
-   handle this request only supports 1.0. */
-static bool use_http_1_1(const struct SessionHandle *data,
-                         const struct connectdata *conn)
-{
-  return (bool)((data->set.httpversion == CURL_HTTP_VERSION_1_1) ||
-         ((data->set.httpversion != CURL_HTTP_VERSION_1_0) &&
-          ((conn->httpversion == 11) ||
-           ((conn->httpversion != 10) &&
-            (data->state.httpversion != 10)))));
-}
-
-/* check and possibly add an Expect: header */
-static CURLcode expect100(struct SessionHandle *data,
-                          struct connectdata *conn,
-                          Curl_send_buffer *req_buffer)
-{
-  CURLcode result = CURLE_OK;
-  const char *ptr;
-  data->state.expect100header = FALSE; /* default to false unless it is set
-                                          to TRUE below */
-  if(use_http_1_1(data, conn)) {
-    /* if not doing HTTP 1.0 or disabled explicitly, we add a Expect:
-       100-continue to the headers which actually speeds up post operations
-       (as there is one packet coming back from the web server) */
-    ptr = Curl_checkheaders(data, "Expect:");
-    if (ptr) {
-      data->state.expect100header =
-        Curl_compareheader(ptr, "Expect:", "100-continue");
-    }
-    else {
-      result = Curl_add_bufferf(req_buffer,
-                         "Expect: 100-continue\r\n");
-      if(result == CURLE_OK)
-        data->state.expect100header = TRUE;
-    }
-  }
-  return result;
-}
-
-CURLcode Curl_add_custom_headers(struct connectdata *conn,
-                                   Curl_send_buffer *req_buffer)
-{
-  char *ptr;
-  struct curl_slist *headers=conn->data->set.headers;
-
-  while(headers) {
-    ptr = strchr(headers->data, ':');
-    if(ptr) {
-      /* we require a colon for this to be a true header */
-
-      ptr++; /* pass the colon */
-      while(*ptr && ISSPACE(*ptr))
-        ptr++;
-
-      if(*ptr) {
-        /* only send this if the contents was non-blank */
-
-        if(conn->allocptr.host &&
-           /* a Host: header was sent already, don't pass on any custom Host:
-              header as that will produce *two* in the same request! */
-           checkprefix("Host:", headers->data))
-          ;
-        else if(conn->data->set.httpreq == HTTPREQ_POST_FORM &&
-                /* this header (extended by formdata.c) is sent later */
-                checkprefix("Content-Type:", headers->data))
-          ;
-        else if(conn->bits.authneg &&
-                /* while doing auth neg, don't allow the custom length since
-                   we will force length zero then */
-                checkprefix("Content-Length", headers->data))
-          ;
-        else {
-          CURLcode result = Curl_add_bufferf(req_buffer, "%s\r\n",
-                                             headers->data);
-          if(result)
-            return result;
-        }
-      }
-    }
-    headers = headers->next;
-  }
-  return CURLE_OK;
-}
-
-CURLcode Curl_add_timecondition(struct SessionHandle *data,
-                                Curl_send_buffer *req_buffer)
-{
-  struct tm *tm;
-  char *buf = data->state.buffer;
-  CURLcode result = CURLE_OK;
-
-  /* The If-Modified-Since header family should have their times set in
-   * GMT as RFC2616 defines: "All HTTP date/time stamps MUST be
-   * represented in Greenwich Mean Time (GMT), without exception. For the
-   * purposes of HTTP, GMT is exactly equal to UTC (Coordinated Universal
-   * Time)." (see page 20 of RFC2616).
-   */
-
-#ifdef HAVE_GMTIME_R
-  /* thread-safe version */
-  struct tm keeptime;
-  tm = (struct tm *)gmtime_r(&data->set.timevalue, &keeptime);
-#else
-  tm = gmtime(&data->set.timevalue);
-#endif
-
-  /* format: "Tue, 15 Nov 1994 12:45:26 GMT" */
-  snprintf(buf, BUFSIZE-1,
-           "%s, %02d %s %4d %02d:%02d:%02d GMT",
-           Curl_wkday[tm->tm_wday?tm->tm_wday-1:6],
-           tm->tm_mday,
-           Curl_month[tm->tm_mon],
-           tm->tm_year + 1900,
-           tm->tm_hour,
-           tm->tm_min,
-           tm->tm_sec);
-
-  switch(data->set.timecondition) {
-  case CURL_TIMECOND_IFMODSINCE:
-  default:
-    result = Curl_add_bufferf(req_buffer,
-                              "If-Modified-Since: %s\r\n", buf);
-    break;
-  case CURL_TIMECOND_IFUNMODSINCE:
-    result = Curl_add_bufferf(req_buffer,
-                              "If-Unmodified-Since: %s\r\n", buf);
-    break;
-  case CURL_TIMECOND_LASTMOD:
-    result = Curl_add_bufferf(req_buffer,
-                              "Last-Modified: %s\r\n", buf);
-    break;
-  }
-
-  return result;
-}
-
-/*
- * Curl_http() gets called from the generic Curl_do() function when a HTTP
- * request is to be performed. This creates and sends a properly constructed
- * HTTP request.
- */
-CURLcode Curl_http(struct connectdata *conn, bool *done)
-{
-  struct SessionHandle *data=conn->data;
-  CURLcode result=CURLE_OK;
-  struct HTTP *http;
-  const char *ppath = data->state.path;
-  bool paste_ftp_userpwd = FALSE;
-  char ftp_typecode[sizeof("/;type=?")] = "";
-  const char *host = conn->host.name;
-  const char *te = ""; /* transfer-encoding */
-  const char *ptr;
-  const char *request;
-  Curl_HttpReq httpreq = data->set.httpreq;
-  char *addcookies = NULL;
-  curl_off_t included_body = 0;
-  const char *httpstring;
-  Curl_send_buffer *req_buffer;
-  curl_off_t postsize; /* off_t type to be able to hold a large file size */
-  int seekerr = CURL_SEEKFUNC_OK;
-
-  /* Always consider the DO phase done after this function call, even if there
-     may be parts of the request that is not yet sent, since we can deal with
-     the rest of the request in the PERFORM phase. */
-  *done = TRUE;
-
-  /* If there already is a protocol-specific struct allocated for this
-     sessionhandle, deal with it */
-  Curl_reset_reqproto(conn);
-
-  if(!data->state.proto.http) {
-    /* Only allocate this struct if we don't already have it! */
-
-    http = calloc(1, sizeof(struct HTTP));
-    if(!http)
-      return CURLE_OUT_OF_MEMORY;
-    data->state.proto.http = http;
-  }
-  else
-    http = data->state.proto.http;
-
-  if(!data->state.this_is_a_follow) {
-    /* this is not a followed location, get the original host name */
-    if(data->state.first_host)
-      /* Free to avoid leaking memory on multiple requests*/
-      free(data->state.first_host);
-
-    data->state.first_host = strdup(conn->host.name);
-    if(!data->state.first_host)
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-  if( (conn->protocol&(PROT_HTTP|PROT_FTP)) &&
-       data->set.upload) {
-    httpreq = HTTPREQ_PUT;
-  }
-
-  /* Now set the 'request' pointer to the proper request string */
-  if(data->set.str[STRING_CUSTOMREQUEST])
-    request = data->set.str[STRING_CUSTOMREQUEST];
-  else {
-    if(data->set.opt_no_body)
-      request = "HEAD";
-    else {
-      DEBUGASSERT((httpreq > HTTPREQ_NONE) && (httpreq < HTTPREQ_LAST));
-      switch(httpreq) {
-      case HTTPREQ_POST:
-      case HTTPREQ_POST_FORM:
-        request = "POST";
-        break;
-      case HTTPREQ_PUT:
-        request = "PUT";
-        break;
-      default: /* this should never happen */
-      case HTTPREQ_GET:
-        request = "GET";
-        break;
-      case HTTPREQ_HEAD:
-        request = "HEAD";
-        break;
-      }
-    }
-  }
-
-  /* The User-Agent string might have been allocated in url.c already, because
-     it might have been used in the proxy connect, but if we have got a header
-     with the user-agent string specified, we erase the previously made string
-     here. */
-  if(Curl_checkheaders(data, "User-Agent:") && conn->allocptr.uagent) {
-    free(conn->allocptr.uagent);
-    conn->allocptr.uagent=NULL;
-  }
-
-  /* setup the authentication headers */
-  result = http_output_auth(conn, request, ppath, FALSE);
-  if(result)
-    return result;
-
-  if((data->state.authhost.multi || data->state.authproxy.multi) &&
-     (httpreq != HTTPREQ_GET) &&
-     (httpreq != HTTPREQ_HEAD)) {
-    /* Auth is required and we are not authenticated yet. Make a PUT or POST
-       with content-length zero as a "probe". */
-    conn->bits.authneg = TRUE;
-  }
-  else
-    conn->bits.authneg = FALSE;
-
-  Curl_safefree(conn->allocptr.ref);
-  if(data->change.referer && !Curl_checkheaders(data, "Referer:"))
-    conn->allocptr.ref = aprintf("Referer: %s\r\n", data->change.referer);
-  else
-    conn->allocptr.ref = NULL;
-
-  if(data->set.str[STRING_COOKIE] && !Curl_checkheaders(data, "Cookie:"))
-    addcookies = data->set.str[STRING_COOKIE];
-
-  if(!Curl_checkheaders(data, "Accept-Encoding:") &&
-     data->set.str[STRING_ENCODING]) {
-    Curl_safefree(conn->allocptr.accept_encoding);
-    conn->allocptr.accept_encoding =
-      aprintf("Accept-Encoding: %s\r\n", data->set.str[STRING_ENCODING]);
-    if(!conn->allocptr.accept_encoding)
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-  ptr = Curl_checkheaders(data, "Transfer-Encoding:");
-  if(ptr) {
-    /* Some kind of TE is requested, check if 'chunked' is chosen */
-    data->req.upload_chunky =
-      Curl_compareheader(ptr, "Transfer-Encoding:", "chunked");
-  }
-  else {
-    if((conn->protocol&PROT_HTTP) &&
-        data->set.upload &&
-        (data->set.infilesize == -1)) {
-      if (use_http_1_1(data, conn)) {
-        /* HTTP, upload, unknown file size and not HTTP 1.0 */
-        data->req.upload_chunky = TRUE;
-      }
-      else {
-        failf(data, "Chunky upload is not supported by HTTP 1.0");
-        return CURLE_UPLOAD_FAILED;
-      }
-    }
-    else {
-      /* else, no chunky upload */
-      data->req.upload_chunky = FALSE;
-    }
-
-    if(data->req.upload_chunky)
-      te = "Transfer-Encoding: chunked\r\n";
-  }
-
-  Curl_safefree(conn->allocptr.host);
-
-  ptr = Curl_checkheaders(data, "Host:");
-  if(ptr && (!data->state.this_is_a_follow ||
-             Curl_raw_equal(data->state.first_host, conn->host.name))) {
-#if !defined(CURL_DISABLE_COOKIES)
-    /* If we have a given custom Host: header, we extract the host name in
-       order to possibly use it for cookie reasons later on. We only allow the
-       custom Host: header if this is NOT a redirect, as setting Host: in the
-       redirected request is being out on thin ice. Except if the host name
-       is the same as the first one! */
-    char *cookiehost = Curl_copy_header_value(ptr);
-    if (!cookiehost)
-      return CURLE_OUT_OF_MEMORY;
-    if (!*cookiehost)
-      /* ignore empty data */
-      free(cookiehost);
-    else {
-      char *colon = strchr(cookiehost, ':');
-      if (colon)
-        *colon = 0; /* The host must not include an embedded port number */
-      Curl_safefree(conn->allocptr.cookiehost);
-      conn->allocptr.cookiehost = cookiehost;
-    }
-#endif
-
-    conn->allocptr.host = NULL;
-  }
-  else {
-    /* When building Host: headers, we must put the host name within
-       [brackets] if the host name is a plain IPv6-address. RFC2732-style. */
-
-    if(((conn->protocol&PROT_HTTPS) && (conn->remote_port == PORT_HTTPS)) ||
-       (!(conn->protocol&PROT_HTTPS) && (conn->remote_port == PORT_HTTP)) )
-      /* if(HTTPS on port 443) OR (non-HTTPS on port 80) then don't include
-         the port number in the host string */
-      conn->allocptr.host = aprintf("Host: %s%s%s\r\n",
-                                    conn->bits.ipv6_ip?"[":"",
-                                    host,
-                                    conn->bits.ipv6_ip?"]":"");
-    else
-      conn->allocptr.host = aprintf("Host: %s%s%s:%hu\r\n",
-                                    conn->bits.ipv6_ip?"[":"",
-                                    host,
-                                    conn->bits.ipv6_ip?"]":"",
-                                    conn->remote_port);
-
-    if(!conn->allocptr.host)
-      /* without Host: we can't make a nice request */
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-#ifndef CURL_DISABLE_PROXY
-  if(conn->bits.httpproxy && !conn->bits.tunnel_proxy)  {
-    /* Using a proxy but does not tunnel through it */
-
-    /* The path sent to the proxy is in fact the entire URL. But if the remote
-       host is a IDN-name, we must make sure that the request we produce only
-       uses the encoded host name! */
-    if(conn->host.dispname != conn->host.name) {
-      char *url = data->change.url;
-      ptr = strstr(url, conn->host.dispname);
-      if(ptr) {
-        /* This is where the display name starts in the URL, now replace this
-           part with the encoded name. TODO: This method of replacing the host
-           name is rather crude as I believe there's a slight risk that the
-           user has entered a user name or password that contain the host name
-           string. */
-        size_t currlen = strlen(conn->host.dispname);
-        size_t newlen = strlen(conn->host.name);
-        size_t urllen = strlen(url);
-
-        char *newurl;
-
-        newurl = malloc(urllen + newlen - currlen + 1);
-        if(newurl) {
-          /* copy the part before the host name */
-          memcpy(newurl, url, ptr - url);
-          /* append the new host name instead of the old */
-          memcpy(newurl + (ptr - url), conn->host.name, newlen);
-          /* append the piece after the host name */
-          memcpy(newurl + newlen + (ptr - url),
-                 ptr + currlen, /* copy the trailing zero byte too */
-                 urllen - (ptr-url) - currlen + 1);
-          if(data->change.url_alloc)
-            free(data->change.url);
-          data->change.url = newurl;
-          data->change.url_alloc = TRUE;
-        }
-        else
-          return CURLE_OUT_OF_MEMORY;
-      }
-    }
-    ppath = data->change.url;
-    if(checkprefix("ftp://", ppath)) {
-      if (data->set.proxy_transfer_mode) {
-        /* when doing ftp, append ;type=<a|i> if not present */
-        char *type = strstr(ppath, ";type=");
-        if(type && type[6] && type[7] == 0) {
-          switch (Curl_raw_toupper(type[6])) {
-          case 'A':
-          case 'D':
-          case 'I':
-            break;
-          default:
-            type = NULL;
-          }
-        }
-        if(!type) {
-          char *p = ftp_typecode;
-          /* avoid sending invalid URLs like ftp://example.com;type=i if the
-           * user specified ftp://example.com without the slash */
-          if (!*data->state.path && ppath[strlen(ppath) - 1] != '/') {
-            *p++ = '/';
-          }
-          snprintf(p, sizeof(ftp_typecode) - 1, ";type=%c",
-                   data->set.prefer_ascii ? 'a' : 'i');
-        }
-      }
-      if (conn->bits.user_passwd && !conn->bits.userpwd_in_url)
-        paste_ftp_userpwd = TRUE;
-    }
-  }
-#endif /* CURL_DISABLE_PROXY */
-
-  if(HTTPREQ_POST_FORM == httpreq) {
-    /* we must build the whole darned post sequence first, so that we have
-       a size of the whole shebang before we start to send it */
-     result = Curl_getFormData(&http->sendit, data->set.httppost,
-                               Curl_checkheaders(data, "Content-Type:"),
-                               &http->postsize);
-     if(CURLE_OK != result) {
-       /* Curl_getFormData() doesn't use failf() */
-       failf(data, "failed creating formpost data");
-       return result;
-     }
-  }
-
-
-  http->p_accept = Curl_checkheaders(data, "Accept:")?NULL:"Accept: */*\r\n";
-
-  if(( (HTTPREQ_POST == httpreq) ||
-       (HTTPREQ_POST_FORM == httpreq) ||
-       (HTTPREQ_PUT == httpreq) ) &&
-     data->state.resume_from) {
-    /**********************************************************************
-     * Resuming upload in HTTP means that we PUT or POST and that we have
-     * got a resume_from value set. The resume value has already created
-     * a Range: header that will be passed along. We need to "fast forward"
-     * the file the given number of bytes and decrease the assume upload
-     * file size before we continue this venture in the dark lands of HTTP.
-     *********************************************************************/
-
-    if(data->state.resume_from < 0 ) {
-      /*
-       * This is meant to get the size of the present remote-file by itself.
-       * We don't support this now. Bail out!
-       */
-       data->state.resume_from = 0;
-    }
-
-    if(data->state.resume_from && !data->state.this_is_a_follow) {
-      /* do we still game? */
-
-      /* Now, let's read off the proper amount of bytes from the
-         input. */
-      if(conn->seek_func) {
-        seekerr = conn->seek_func(conn->seek_client, data->state.resume_from,
-                                  SEEK_SET);
-      }
-
-      if(seekerr != CURL_SEEKFUNC_OK) {
-        if(seekerr != CURL_SEEKFUNC_CANTSEEK) {
-          failf(data, "Could not seek stream");
-          return CURLE_READ_ERROR;
-        }
-        /* when seekerr == CURL_SEEKFUNC_CANTSEEK (can't seek to offset) */
-        else {
-          curl_off_t passed=0;
-
-          do {
-            size_t readthisamountnow = (size_t)(data->state.resume_from -
-                                                passed);
-            size_t actuallyread;
-
-            if(readthisamountnow > BUFSIZE)
-              readthisamountnow = BUFSIZE;
-
-            actuallyread = data->set.fread_func(data->state.buffer, 1,
-                                                (size_t)readthisamountnow,
-                                                data->set.in);
-
-            passed += actuallyread;
-            if(actuallyread != readthisamountnow) {
-              failf(data, "Could only read %" FORMAT_OFF_T
-                    " bytes from the input",
-                    passed);
-              return CURLE_READ_ERROR;
-            }
-          } while(passed != data->state.resume_from); /* loop until done */
-        }
-      }
-
-      /* now, decrease the size of the read */
-      if(data->set.infilesize>0) {
-        data->set.infilesize -= data->state.resume_from;
-
-        if(data->set.infilesize <= 0) {
-          failf(data, "File already completely uploaded");
-          return CURLE_PARTIAL_FILE;
-        }
-      }
-      /* we've passed, proceed as normal */
-    }
-  }
-  if(data->state.use_range) {
-    /*
-     * A range is selected. We use different headers whether we're downloading
-     * or uploading and we always let customized headers override our internal
-     * ones if any such are specified.
-     */
-    if(((httpreq == HTTPREQ_GET) || (httpreq == HTTPREQ_HEAD)) &&
-       !Curl_checkheaders(data, "Range:")) {
-      /* if a line like this was already allocated, free the previous one */
-      if(conn->allocptr.rangeline)
-        free(conn->allocptr.rangeline);
-      conn->allocptr.rangeline = aprintf("Range: bytes=%s\r\n",
-                                         data->state.range);
-    }
-    else if((httpreq != HTTPREQ_GET) &&
-            !Curl_checkheaders(data, "Content-Range:")) {
-
-      /* if a line like this was already allocated, free the previous one */
-      if(conn->allocptr.rangeline)
-        free(conn->allocptr.rangeline);
-
-      if(data->set.set_resume_from < 0) {
-        /* Upload resume was asked for, but we don't know the size of the
-           remote part so we tell the server (and act accordingly) that we
-           upload the whole file (again) */
-        conn->allocptr.rangeline =
-          aprintf("Content-Range: bytes 0-%" FORMAT_OFF_T
-                  "/%" FORMAT_OFF_T "\r\n",
-                  data->set.infilesize - 1, data->set.infilesize);
-
-      }
-      else if(data->state.resume_from) {
-        /* This is because "resume" was selected */
-        curl_off_t total_expected_size=
-          data->state.resume_from + data->set.infilesize;
-        conn->allocptr.rangeline =
-            aprintf("Content-Range: bytes %s%" FORMAT_OFF_T
-                    "/%" FORMAT_OFF_T "\r\n",
-                    data->state.range, total_expected_size-1,
-                    total_expected_size);
-      }
-      else {
-        /* Range was selected and then we just pass the incoming range and
-           append total size */
-        conn->allocptr.rangeline =
-            aprintf("Content-Range: bytes %s/%" FORMAT_OFF_T "\r\n",
-                    data->state.range, data->set.infilesize);
-      }
-      if(!conn->allocptr.rangeline)
-        return CURLE_OUT_OF_MEMORY;
-    }
-  }
-
-  /* Use 1.1 unless the user specifically asked for 1.0 or the server only
-     supports 1.0 */
-  httpstring= use_http_1_1(data, conn)?"1.1":"1.0";
-
-  /* initialize a dynamic send-buffer */
-  req_buffer = Curl_add_buffer_init();
-
-  if(!req_buffer)
-    return CURLE_OUT_OF_MEMORY;
-
-  /* add the main request stuff */
-  /* GET/HEAD/POST/PUT */
-  result = Curl_add_bufferf(req_buffer, "%s ", request);
-  if (result)
-    return result;
-
-  /* url */
-  if (paste_ftp_userpwd)
-    result = Curl_add_bufferf(req_buffer, "ftp://%s:%s@%s",
-        conn->user, conn->passwd, ppath + sizeof("ftp://") - 1);
-  else
-    result = Curl_add_buffer(req_buffer, ppath, strlen(ppath));
-  if (result)
-    return result;
-
-  result = Curl_add_bufferf(req_buffer,
-                "%s" /* ftp typecode (;type=x) */
-                " HTTP/%s\r\n" /* HTTP version */
-                "%s" /* proxyuserpwd */
-                "%s" /* userpwd */
-                "%s" /* range */
-                "%s" /* user agent */
-                "%s" /* host */
-                "%s" /* accept */
-                "%s" /* accept-encoding */
-                "%s" /* referer */
-                "%s" /* Proxy-Connection */
-                "%s",/* transfer-encoding */
-
-                ftp_typecode,
-                httpstring,
-                conn->allocptr.proxyuserpwd?
-                conn->allocptr.proxyuserpwd:"",
-                conn->allocptr.userpwd?conn->allocptr.userpwd:"",
-                (data->state.use_range && conn->allocptr.rangeline)?
-                conn->allocptr.rangeline:"",
-                (data->set.str[STRING_USERAGENT] &&
-                 *data->set.str[STRING_USERAGENT] && conn->allocptr.uagent)?
-                conn->allocptr.uagent:"",
-                (conn->allocptr.host?conn->allocptr.host:""), /* Host: host */
-                http->p_accept?http->p_accept:"",
-                (data->set.str[STRING_ENCODING] &&
-                 *data->set.str[STRING_ENCODING] &&
-                 conn->allocptr.accept_encoding)?
-                conn->allocptr.accept_encoding:"",
-                (data->change.referer && conn->allocptr.ref)?
-                conn->allocptr.ref:"" /* Referer: <data> */,
-                (conn->bits.httpproxy &&
-                 !conn->bits.tunnel_proxy &&
-                 !Curl_checkheaders(data, "Proxy-Connection:"))?
-                "Proxy-Connection: Keep-Alive\r\n":"",
-                te
-      );
-
-  /*
-   * Free userpwd now --- cannot reuse this for Negotiate and possibly NTLM
-   * with basic and digest, it will be freed anyway by the next request
-   */
-
-  Curl_safefree (conn->allocptr.userpwd);
-  conn->allocptr.userpwd = NULL;
-
-  if(result)
-    return result;
-
-#if !defined(CURL_DISABLE_COOKIES)
-  if(data->cookies || addcookies) {
-    struct Cookie *co=NULL; /* no cookies from start */
-    int count=0;
-
-    if(data->cookies) {
-      Curl_share_lock(data, CURL_LOCK_DATA_COOKIE, CURL_LOCK_ACCESS_SINGLE);
-      co = Curl_cookie_getlist(data->cookies,
-                               conn->allocptr.cookiehost?
-                               conn->allocptr.cookiehost:host,
-                               data->state.path,
-                               (bool)(conn->protocol&PROT_HTTPS?TRUE:FALSE));
-      Curl_share_unlock(data, CURL_LOCK_DATA_COOKIE);
-    }
-    if(co) {
-      struct Cookie *store=co;
-      /* now loop through all cookies that matched */
-      while(co) {
-        if(co->value) {
-          if(0 == count) {
-            result = Curl_add_bufferf(req_buffer, "Cookie: ");
-            if(result)
-              break;
-          }
-          result = Curl_add_bufferf(req_buffer,
-                               "%s%s=%s", count?"; ":"",
-                               co->name, co->value);
-          if(result)
-            break;
-          count++;
-        }
-        co = co->next; /* next cookie please */
-      }
-      Curl_cookie_freelist(store, FALSE); /* free the cookie list */
-    }
-    if(addcookies && (CURLE_OK == result)) {
-      if(!count)
-        result = Curl_add_bufferf(req_buffer, "Cookie: ");
-      if(CURLE_OK == result) {
-        result = Curl_add_bufferf(req_buffer, "%s%s",
-                             count?"; ":"",
-                             addcookies);
-        count++;
-      }
-    }
-    if(count && (CURLE_OK == result))
-      result = Curl_add_buffer(req_buffer, "\r\n", 2);
-
-    if(result)
-      return result;
-  }
-#endif
-
-  if(data->set.timecondition) {
-      result = Curl_add_timecondition(data, req_buffer);
-    if(result)
-      return result;
-  }
-
-  result = Curl_add_custom_headers(conn, req_buffer);
-  if(result)
-    return result;
-
-  http->postdata = NULL;  /* nothing to post at this point */
-  Curl_pgrsSetUploadSize(data, 0); /* upload size is 0 atm */
-
-  /* If 'authdone' is FALSE, we must not set the write socket index to the
-     Curl_transfer() call below, as we're not ready to actually upload any
-     data yet. */
-
-  switch(httpreq) {
-
-  case HTTPREQ_POST_FORM:
-    if(!http->sendit || conn->bits.authneg) {
-      /* nothing to post! */
-      result = Curl_add_bufferf(req_buffer, "Content-Length: 0\r\n\r\n");
-      if(result)
-        return result;
-
-      result = Curl_add_buffer_send(req_buffer, conn,
-                               &data->info.request_size, 0, FIRSTSOCKET);
-      if(result)
-        failf(data, "Failed sending POST request");
-      else
-        /* setup variables for the upcoming transfer */
-        result = Curl_setup_transfer(conn, FIRSTSOCKET, -1, TRUE,
-                                     &http->readbytecount,
-                                     -1, NULL);
-      break;
-    }
-
-    if(Curl_FormInit(&http->form, http->sendit)) {
-      failf(data, "Internal HTTP POST error!");
-      return CURLE_HTTP_POST_ERROR;
-    }
-
-    /* Get the currently set callback function pointer and store that in the
-       form struct since we might want the actual user-provided callback later
-       on. The conn->fread_func pointer itself will be changed for the
-       multipart case to the function that returns a multipart formatted
-       stream. */
-    http->form.fread_func = conn->fread_func;
-
-    /* Set the read function to read from the generated form data */
-    conn->fread_func = (curl_read_callback)Curl_FormReader;
-    conn->fread_in = &http->form;
-
-    http->sending = HTTPSEND_BODY;
-
-    if(!data->req.upload_chunky) {
-      /* only add Content-Length if not uploading chunked */
-      result = Curl_add_bufferf(req_buffer,
-                           "Content-Length: %" FORMAT_OFF_T "\r\n",
-                           http->postsize);
-      if(result)
-        return result;
-    }
-
-    result = expect100(data, conn, req_buffer);
-    if(result)
-      return result;
-
-    {
-
-      /* Get Content-Type: line from Curl_formpostheader.
-       */
-      char *contentType;
-      size_t linelength=0;
-      contentType = Curl_formpostheader((void *)&http->form,
-                                        &linelength);
-      if(!contentType) {
-        failf(data, "Could not get Content-Type header line!");
-        return CURLE_HTTP_POST_ERROR;
-      }
-
-      result = Curl_add_buffer(req_buffer, contentType, linelength);
-      if(result)
-        return result;
-    }
-
-    /* make the request end in a true CRLF */
-    result = Curl_add_buffer(req_buffer, "\r\n", 2);
-    if(result)
-      return result;
-
-    /* set upload size to the progress meter */
-    Curl_pgrsSetUploadSize(data, http->postsize);
-
-    /* fire away the whole request to the server */
-    result = Curl_add_buffer_send(req_buffer, conn,
-                             &data->info.request_size, 0, FIRSTSOCKET);
-    if(result)
-      failf(data, "Failed sending POST request");
-    else
-      /* setup variables for the upcoming transfer */
-      result = Curl_setup_transfer(conn, FIRSTSOCKET, -1, TRUE,
-                                   &http->readbytecount,
-                                   FIRSTSOCKET,
-                                   &http->writebytecount);
-
-    if(result) {
-      Curl_formclean(&http->sendit); /* free that whole lot */
-      return result;
-    }
-#ifdef CURL_DOES_CONVERSIONS
-/* time to convert the form data... */
-    result = Curl_formconvert(data, http->sendit);
-    if(result) {
-      Curl_formclean(&http->sendit); /* free that whole lot */
-      return result;
-    }
-#endif /* CURL_DOES_CONVERSIONS */
-    break;
-
-  case HTTPREQ_PUT: /* Let's PUT the data to the server! */
-
-    if(conn->bits.authneg)
-      postsize = 0;
-    else
-      postsize = data->set.infilesize;
-
-    if((postsize != -1) && !data->req.upload_chunky) {
-      /* only add Content-Length if not uploading chunked */
-      result = Curl_add_bufferf(req_buffer,
-                           "Content-Length: %" FORMAT_OFF_T "\r\n",
-                           postsize );
-      if(result)
-        return result;
-    }
-
-    result = expect100(data, conn, req_buffer);
-    if(result)
-      return result;
-
-    result = Curl_add_buffer(req_buffer, "\r\n", 2); /* end of headers */
-    if(result)
-      return result;
-
-    /* set the upload size to the progress meter */
-    Curl_pgrsSetUploadSize(data, postsize);
-
-    /* this sends the buffer and frees all the buffer resources */
-    result = Curl_add_buffer_send(req_buffer, conn,
-                             &data->info.request_size, 0, FIRSTSOCKET);
-    if(result)
-      failf(data, "Failed sending PUT request");
-    else
-      /* prepare for transfer */
-      result = Curl_setup_transfer(conn, FIRSTSOCKET, -1, TRUE,
-                                   &http->readbytecount,
-                                   postsize?FIRSTSOCKET:-1,
-                                   postsize?&http->writebytecount:NULL);
-    if(result)
-      return result;
-    break;
-
-  case HTTPREQ_POST:
-    /* this is the simple POST, using x-www-form-urlencoded style */
-
-    if(conn->bits.authneg)
-      postsize = 0;
-    else {
-      /* figure out the size of the postfields */
-      postsize = (data->set.postfieldsize != -1)?
-        data->set.postfieldsize:
-        (data->set.postfields? (curl_off_t)strlen(data->set.postfields):-1);
-    }
-    if(!data->req.upload_chunky) {
-      /* We only set Content-Length and allow a custom Content-Length if
-         we don't upload data chunked, as RFC2616 forbids us to set both
-         kinds of headers (Transfer-Encoding: chunked and Content-Length) */
-
-      if(conn->bits.authneg || !Curl_checkheaders(data, "Content-Length:")) {
-        /* we allow replacing this header if not during auth negotiation,
-           although it isn't very wise to actually set your own */
-        result = Curl_add_bufferf(req_buffer,
-                             "Content-Length: %" FORMAT_OFF_T"\r\n",
-                             postsize);
-        if(result)
-          return result;
-      }
-    }
-
-    if(!Curl_checkheaders(data, "Content-Type:")) {
-      result = Curl_add_bufferf(req_buffer,
-                                "Content-Type: application/"
-                                "x-www-form-urlencoded\r\n");
-      if(result)
-        return result;
-    }
-
-    /* For really small posts we don't use Expect: headers at all, and for
-       the somewhat bigger ones we allow the app to disable it. Just make
-       sure that the expect100header is always set to the preferred value
-       here. */
-    ptr = Curl_checkheaders(data, "Expect:");
-    if(ptr) {
-      data->state.expect100header =
-        Curl_compareheader(ptr, "Expect:", "100-continue");
-    }
-    else if(postsize > TINY_INITIAL_POST_SIZE || postsize < 0) {
-      result = expect100(data, conn, req_buffer);
-      if(result)
-        return result;
-    }
-    else
-      data->state.expect100header = FALSE;
-
-    if(data->set.postfields) {
-
-      if(!data->state.expect100header &&
-         (postsize < MAX_INITIAL_POST_SIZE))  {
-        /* if we don't use expect: 100  AND
-           postsize is less than MAX_INITIAL_POST_SIZE
-
-           then append the post data to the HTTP request header. This limit
-           is no magic limit but only set to prevent really huge POSTs to
-           get the data duplicated with malloc() and family. */
-
-        result = Curl_add_buffer(req_buffer, "\r\n", 2); /* end of headers! */
-        if(result)
-          return result;
-
-        if(!data->req.upload_chunky) {
-          /* We're not sending it 'chunked', append it to the request
-             already now to reduce the number if send() calls */
-          result = Curl_add_buffer(req_buffer, data->set.postfields,
-                              (size_t)postsize);
-          included_body = postsize;
-        }
-        else {
-          /* Append the POST data chunky-style */
-          result = Curl_add_bufferf(req_buffer, "%x\r\n", (int)postsize);
-          if(CURLE_OK == result)
-            result = Curl_add_buffer(req_buffer, data->set.postfields,
-                                (size_t)postsize);
-          if(CURLE_OK == result)
-            result = Curl_add_buffer(req_buffer,
-                                "\x0d\x0a\x30\x0d\x0a\x0d\x0a", 7);
-          /* CR  LF   0  CR  LF  CR  LF */
-          included_body = postsize + 7;
-        }
-        if(result)
-          return result;
-      }
-      else {
-        /* A huge POST coming up, do data separate from the request */
-        http->postsize = postsize;
-        http->postdata = data->set.postfields;
-
-        http->sending = HTTPSEND_BODY;
-
-        conn->fread_func = (curl_read_callback)readmoredata;
-        conn->fread_in = (void *)conn;
-
-        /* set the upload size to the progress meter */
-        Curl_pgrsSetUploadSize(data, http->postsize);
-
-        result = Curl_add_buffer(req_buffer, "\r\n", 2); /* end of headers! */
-        if(result)
-          return result;
-      }
-    }
-    else {
-      result = Curl_add_buffer(req_buffer, "\r\n", 2); /* end of headers! */
-      if(result)
-        return result;
-
-      if(data->req.upload_chunky && conn->bits.authneg) {
-        /* Chunky upload is selected and we're negotiating auth still, send
-           end-of-data only */
-        result = Curl_add_buffer(req_buffer,
-                            "\x0d\x0a\x30\x0d\x0a\x0d\x0a", 7);
-        /* CR  LF   0  CR  LF  CR  LF */
-        if(result)
-          return result;
-      }
-
-      else if(data->set.postfieldsize) {
-        /* set the upload size to the progress meter */
-        Curl_pgrsSetUploadSize(data, postsize?postsize:-1);
-
-        /* set the pointer to mark that we will send the post body using the
-           read callback, but only if we're not in authenticate
-           negotiation  */
-        if(!conn->bits.authneg) {
-          http->postdata = (char *)&http->postdata;
-          http->postsize = postsize;
-        }
-      }
-    }
-    /* issue the request */
-    result = Curl_add_buffer_send(req_buffer, conn, &data->info.request_size,
-                             (size_t)included_body, FIRSTSOCKET);
-
-    if(result)
-      failf(data, "Failed sending HTTP POST request");
-    else
-      result =
-        Curl_setup_transfer(conn, FIRSTSOCKET, -1, TRUE,
-                            &http->readbytecount,
-                            http->postdata?FIRSTSOCKET:-1,
-                            http->postdata?&http->writebytecount:NULL);
-    break;
-
-  default:
-    result = Curl_add_buffer(req_buffer, "\r\n", 2);
-    if(result)
-      return result;
-
-    /* issue the request */
-    result = Curl_add_buffer_send(req_buffer, conn,
-                             &data->info.request_size, 0, FIRSTSOCKET);
-
-    if(result)
-      failf(data, "Failed sending HTTP request");
-    else
-      /* HTTP GET/HEAD download: */
-      result = Curl_setup_transfer(conn, FIRSTSOCKET, -1, TRUE,
-                                   &http->readbytecount,
-                                   http->postdata?FIRSTSOCKET:-1,
-                                   http->postdata?&http->writebytecount:NULL);
-  }
-  if(result)
-    return result;
-
-  if(http->writebytecount) {
-    /* if a request-body has been sent off, we make sure this progress is noted
-       properly */
-    Curl_pgrsSetUploadCounter(data, http->writebytecount);
-    if(Curl_pgrsUpdate(conn))
-      result = CURLE_ABORTED_BY_CALLBACK;
-  }
-
-  return result;
-}
-
-/*
- * checkhttpprefix()
- *
- * Returns TRUE if member of the list matches prefix of string
- */
-static bool
-checkhttpprefix(struct SessionHandle *data,
-                const char *s)
-{
-  struct curl_slist *head = data->set.http200aliases;
-  bool rc = FALSE;
-#ifdef CURL_DOES_CONVERSIONS
-  /* convert from the network encoding using a scratch area */
-  char *scratch = strdup(s);
-  if(NULL == scratch) {
-     failf (data, "Failed to allocate memory for conversion!");
-     return FALSE; /* can't return CURLE_OUT_OF_MEMORY so return FALSE */
-  }
-  if(CURLE_OK != Curl_convert_from_network(data, scratch, strlen(s)+1)) {
-    /* Curl_convert_from_network calls failf if unsuccessful */
-     free(scratch);
-     return FALSE; /* can't return CURLE_foobar so return FALSE */
-  }
-  s = scratch;
-#endif /* CURL_DOES_CONVERSIONS */
-
-  while(head) {
-    if(checkprefix(head->data, s)) {
-      rc = TRUE;
-      break;
-    }
-    head = head->next;
-  }
-
-  if((rc != TRUE) && (checkprefix("HTTP/", s))) {
-    rc = TRUE;
-  }
-
-#ifdef CURL_DOES_CONVERSIONS
-  free(scratch);
-#endif /* CURL_DOES_CONVERSIONS */
-  return rc;
-}
-
-#ifndef CURL_DISABLE_RTSP
-static bool
-checkrtspprefix(struct SessionHandle *data,
-                const char *s)
-{
-
-#ifdef CURL_DOES_CONVERSIONS
-  /* convert from the network encoding using a scratch area */
-  char *scratch = strdup(s);
-  if(NULL == scratch) {
-    failf (data, "Failed to allocate memory for conversion!");
-    return FALSE; /* can't return CURLE_OUT_OF_MEMORY so return FALSE */
-  }
-  if(CURLE_OK != Curl_convert_from_network(data, scratch, strlen(s)+1)) {
-    /* Curl_convert_from_network calls failf if unsuccessful */
-    free(scratch);
-    return FALSE; /* can't return CURLE_foobar so return FALSE */
-  }
-  s = scratch;
-#else
-  (void)data; /* unused */
-#endif /* CURL_DOES_CONVERSIONS */
-  if(checkprefix("RTSP/", s))
-    return TRUE;
-  else
-    return FALSE;
-}
-#endif /* CURL_DISABLE_RTSP */
-
-static bool
-checkprotoprefix(struct SessionHandle *data, struct connectdata *conn,
-                 const char *s)
-{
-#ifndef CURL_DISABLE_RTSP
-  if(conn->protocol & PROT_RTSP)
-    return checkrtspprefix(data, s);
-#else
-  (void)conn;
-#endif /* CURL_DISABLE_RTSP */
-
-  return checkhttpprefix(data, s);
-}
-
-/*
- * header_append() copies a chunk of data to the end of the already received
- * header. We make sure that the full string fit in the allocated header
- * buffer, or else we enlarge it.
- */
-static CURLcode header_append(struct SessionHandle *data,
-                              struct SingleRequest *k,
-                              size_t length)
-{
-  if(k->hbuflen + length >= data->state.headersize) {
-    /* We enlarge the header buffer as it is too small */
-    char *newbuff;
-    size_t hbufp_index;
-    size_t newsize;
-
-    if(k->hbuflen + length > CURL_MAX_HTTP_HEADER) {
-      /* The reason to have a max limit for this is to avoid the risk of a bad
-         server feeding libcurl with a never-ending header that will cause
-         reallocs infinitely */
-      failf (data, "Avoided giant realloc for header (max is %d)!",
-             CURL_MAX_HTTP_HEADER);
-      return CURLE_OUT_OF_MEMORY;
-    }
-
-    newsize=CURLMAX((k->hbuflen+ length)*3/2, data->state.headersize*2);
-    hbufp_index = k->hbufp - data->state.headerbuff;
-    newbuff = realloc(data->state.headerbuff, newsize);
-    if(!newbuff) {
-      failf (data, "Failed to alloc memory for big header!");
-      return CURLE_OUT_OF_MEMORY;
-    }
-    data->state.headersize=newsize;
-    data->state.headerbuff = newbuff;
-    k->hbufp = data->state.headerbuff + hbufp_index;
-  }
-  memcpy(k->hbufp, k->str_start, length);
-  k->hbufp += length;
-  k->hbuflen += length;
-  *k->hbufp = 0;
-
-  return CURLE_OK;
-}
-
-
-/*
- * Read any HTTP header lines from the server and pass them to the client app.
- */
-CURLcode Curl_http_readwrite_headers(struct SessionHandle *data,
-                                       struct connectdata *conn,
-                                       ssize_t *nread,
-                                       bool *stop_reading)
-{
-  CURLcode result;
-  struct SingleRequest *k = &data->req;
-
-  /* header line within buffer loop */
-  do {
-    size_t rest_length;
-    size_t full_length;
-    int writetype;
-
-    /* str_start is start of line within buf */
-    k->str_start = k->str;
-
-    /* data is in network encoding so use 0x0a instead of '\n' */
-    k->end_ptr = memchr(k->str_start, 0x0a, *nread);
-
-    if(!k->end_ptr) {
-      /* Not a complete header line within buffer, append the data to
-         the end of the headerbuff. */
-      result = header_append(data, k, *nread);
-      if(result)
-        return result;
-
-      if(!k->headerline && (k->hbuflen>5)) {
-        /* make a first check that this looks like a protocol header */
-        if(!checkprotoprefix(data, conn, data->state.headerbuff)) {
-          /* this is not the beginning of a protocol first header line */
-          k->header = FALSE;
-          k->badheader = HEADER_ALLBAD;
-          break;
-        }
-      }
-
-      break; /* read more and try again */
-    }
-
-    /* decrease the size of the remaining (supposed) header line */
-    rest_length = (k->end_ptr - k->str)+1;
-    *nread -= (ssize_t)rest_length;
-
-    k->str = k->end_ptr + 1; /* move past new line */
-
-    full_length = k->str - k->str_start;
-
-    result = header_append(data, k, full_length);
-    if(result)
-      return result;
-
-    k->end_ptr = k->hbufp;
-    k->p = data->state.headerbuff;
-
-    /****
-     * We now have a FULL header line that p points to
-     *****/
-
-    if(!k->headerline) {
-      /* the first read header */
-      if((k->hbuflen>5) &&
-         !checkprotoprefix(data, conn, data->state.headerbuff)) {
-        /* this is not the beginning of a protocol first header line */
-        k->header = FALSE;
-        if(*nread)
-          /* since there's more, this is a partial bad header */
-          k->badheader = HEADER_PARTHEADER;
-        else {
-          /* this was all we read so it's all a bad header */
-          k->badheader = HEADER_ALLBAD;
-          *nread = (ssize_t)rest_length;
-        }
-        break;
-      }
-    }
-
-    /* headers are in network encoding so
-       use 0x0a and 0x0d instead of '\n' and '\r' */
-    if((0x0a == *k->p) || (0x0d == *k->p)) {
-      size_t headerlen;
-      /* Zero-length header line means end of headers! */
-
-#ifdef CURL_DOES_CONVERSIONS
-      if(0x0d == *k->p) {
-        *k->p = '\r'; /* replace with CR in host encoding */
-        k->p++;       /* pass the CR byte */
-      }
-      if(0x0a == *k->p) {
-        *k->p = '\n'; /* replace with LF in host encoding */
-        k->p++;       /* pass the LF byte */
-      }
-#else
-      if('\r' == *k->p)
-        k->p++; /* pass the \r byte */
-      if('\n' == *k->p)
-        k->p++; /* pass the \n byte */
-#endif /* CURL_DOES_CONVERSIONS */
-
-      if(100 <= k->httpcode && 199 >= k->httpcode) {
-        /*
-         * We have made a HTTP PUT or POST and this is 1.1-lingo
-         * that tells us that the server is OK with this and ready
-         * to receive the data.
-         * However, we'll get more headers now so we must get
-         * back into the header-parsing state!
-         */
-        k->header = TRUE;
-        k->headerline = 0; /* restart the header line counter */
-
-        /* if we did wait for this do enable write now! */
-        if(k->exp100) {
-          k->exp100 = EXP100_SEND_DATA;
-          k->keepon |= KEEP_SEND;
-        }
-      }
-      else {
-        k->header = FALSE; /* no more header to parse! */
-
-        if((k->size == -1) && !k->chunk && !conn->bits.close &&
-           (conn->httpversion >= 11) && !(conn->protocol & PROT_RTSP)) {
-          /* On HTTP 1.1, when connection is not to get closed, but no
-             Content-Length nor Content-Encoding chunked have been
-             received, according to RFC2616 section 4.4 point 5, we
-             assume that the server will close the connection to
-             signal the end of the document. */
-          infof(data, "no chunk, no close, no size. Assume close to "
-                "signal end\n");
-          conn->bits.close = TRUE;
-        }
-      }
-
-      if(417 == k->httpcode) {
-        /*
-         * we got: "417 Expectation Failed" this means:
-         * we have made a HTTP call and our Expect Header
-         * seems to cause a problem => abort the write operations
-         * (or prevent them from starting).
-         */
-        k->exp100 = EXP100_FAILED;
-        k->keepon &= ~KEEP_SEND;
-      }
-
-      /*
-       * When all the headers have been parsed, see if we should give
-       * up and return an error.
-       */
-      if(Curl_http_should_fail(conn)) {
-        failf (data, "The requested URL returned error: %d",
-               k->httpcode);
-        return CURLE_HTTP_RETURNED_ERROR;
-      }
-
-      /* now, only output this if the header AND body are requested:
-       */
-      writetype = CLIENTWRITE_HEADER;
-      if(data->set.include_header)
-        writetype |= CLIENTWRITE_BODY;
-
-      headerlen = k->p - data->state.headerbuff;
-
-      result = Curl_client_write(conn, writetype,
-                                 data->state.headerbuff,
-                                 headerlen);
-      if(result)
-        return result;
-
-      data->info.header_size += (long)headerlen;
-      data->req.headerbytecount += (long)headerlen;
-
-      data->req.deductheadercount =
-        (100 <= k->httpcode && 199 >= k->httpcode)?data->req.headerbytecount:0;
-
-      if(data->state.resume_from &&
-         (data->set.httpreq==HTTPREQ_GET) &&
-         (k->httpcode == 416)) {
-        /* "Requested Range Not Satisfiable" */
-        *stop_reading = TRUE;
-      }
-
-      if(!*stop_reading) {
-        /* Curl_http_auth_act() checks what authentication methods
-         * that are available and decides which one (if any) to
-         * use. It will set 'newurl' if an auth method was picked. */
-        result = Curl_http_auth_act(conn);
-
-        if(result)
-          return result;
-
-        if(conn->bits.rewindaftersend) {
-          /* We rewind after a complete send, so thus we continue
-             sending now */
-          infof(data, "Keep sending data to get tossed away!\n");
-          k->keepon |= KEEP_SEND;
-        }
-      }
-
-      if(!k->header) {
-        /*
-         * really end-of-headers.
-         *
-         * If we requested a "no body", this is a good time to get
-         * out and return home.
-         */
-        if(data->set.opt_no_body)
-          *stop_reading = TRUE;
-        else {
-          /* If we know the expected size of this document, we set the
-             maximum download size to the size of the expected
-             document or else, we won't know when to stop reading!
-
-             Note that we set the download maximum even if we read a
-             "Connection: close" header, to make sure that
-             "Content-Length: 0" still prevents us from attempting to
-             read the (missing) response-body.
-          */
-          /* According to RFC2616 section 4.4, we MUST ignore
-             Content-Length: headers if we are now receiving data
-             using chunked Transfer-Encoding.
-          */
-          if(k->chunk)
-            k->maxdownload = k->size = -1;
-        }
-        if(-1 != k->size) {
-          /* We do this operation even if no_body is true, since this
-             data might be retrieved later with curl_easy_getinfo()
-             and its CURLINFO_CONTENT_LENGTH_DOWNLOAD option. */
-
-          Curl_pgrsSetDownloadSize(data, k->size);
-          k->maxdownload = k->size;
-        }
-
-        /* If max download size is *zero* (nothing) we already
-           have nothing and can safely return ok now! */
-        if(0 == k->maxdownload)
-          *stop_reading = TRUE;
-
-        if(*stop_reading) {
-          /* we make sure that this socket isn't read more now */
-          k->keepon &= ~KEEP_RECV;
-        }
-
-        if(data->set.verbose)
-          Curl_debug(data, CURLINFO_HEADER_IN,
-                     k->str_start, headerlen, conn);
-        break;          /* exit header line loop */
-      }
-
-      /* We continue reading headers, so reset the line-based
-         header parsing variables hbufp && hbuflen */
-      k->hbufp = data->state.headerbuff;
-      k->hbuflen = 0;
-      continue;
-    }
-
-    /*
-     * Checks for special headers coming up.
-     */
-
-    if(!k->headerline++) {
-      /* This is the first header, it MUST be the error code line
-         or else we consider this to be the body right away! */
-      int httpversion_major;
-      int rtspversion_major;
-      int nc = 0;
-#ifdef CURL_DOES_CONVERSIONS
-#define HEADER1 scratch
-#define SCRATCHSIZE 21
-      CURLcode res;
-      char scratch[SCRATCHSIZE+1]; /* "HTTP/major.minor 123" */
-      /* We can't really convert this yet because we
-         don't know if it's the 1st header line or the body.
-         So we do a partial conversion into a scratch area,
-         leaving the data at k->p as-is.
-      */
-      strncpy(&scratch[0], k->p, SCRATCHSIZE);
-      scratch[SCRATCHSIZE] = 0; /* null terminate */
-      res = Curl_convert_from_network(data,
-                                      &scratch[0],
-                                      SCRATCHSIZE);
-      if(CURLE_OK != res) {
-        /* Curl_convert_from_network calls failf if unsuccessful */
-        return res;
-      }
-#else
-#define HEADER1 k->p /* no conversion needed, just use k->p */
-#endif /* CURL_DOES_CONVERSIONS */
-
-      if(conn->protocol & PROT_HTTP) {
-        nc = sscanf(HEADER1,
-            " HTTP/%d.%d %3d",
-            &httpversion_major,
-            &conn->httpversion,
-            &k->httpcode);
-        if(nc==3) {
-          conn->httpversion += 10 * httpversion_major;
-        }
-        else {
-          /* this is the real world, not a Nirvana
-             NCSA 1.5.x returns this crap when asked for HTTP/1.1
-             */
-          nc=sscanf(HEADER1, " HTTP %3d", &k->httpcode);
-          conn->httpversion = 10;
-
-          /* If user has set option HTTP200ALIASES,
-             compare header line against list of aliases
-             */
-          if(!nc) {
-            if(checkhttpprefix(data, k->p)) {
-              nc = 1;
-              k->httpcode = 200;
-              conn->httpversion = 10;
-            }
-          }
-        }
-      }
-      else if(conn->protocol & PROT_RTSP) {
-        nc = sscanf(HEADER1,
-                    " RTSP/%d.%d %3d",
-                    &rtspversion_major,
-                    &conn->rtspversion,
-                    &k->httpcode);
-        if(nc==3) {
-          conn->rtspversion += 10 * rtspversion_major;
-          conn->httpversion = 11; /* For us, RTSP acts like HTTP 1.1 */
-        }
-        else {
-          /* TODO: do we care about the other cases here? */
-          nc = 0;
-        }
-      }
-
-      if(nc) {
-        data->info.httpcode = k->httpcode;
-
-        data->info.httpversion = conn->httpversion;
-        if (!data->state.httpversion ||
-            data->state.httpversion > conn->httpversion)
-          /* store the lowest server version we encounter */
-          data->state.httpversion = conn->httpversion;
-
-        /*
-         * This code executes as part of processing the header.  As a
-         * result, it's not totally clear how to interpret the
-         * response code yet as that depends on what other headers may
-         * be present.  401 and 407 may be errors, but may be OK
-         * depending on how authentication is working.  Other codes
-         * are definitely errors, so give up here.
-         */
-        if(data->set.http_fail_on_error && (k->httpcode >= 400) &&
-           ((k->httpcode != 401) || !conn->bits.user_passwd) &&
-           ((k->httpcode != 407) || !conn->bits.proxy_user_passwd) ) {
-
-          if(data->state.resume_from &&
-             (data->set.httpreq==HTTPREQ_GET) &&
-             (k->httpcode == 416)) {
-            /* "Requested Range Not Satisfiable", just proceed and
-               pretend this is no error */
-          }
-          else {
-            /* serious error, go home! */
-            failf (data, "The requested URL returned error: %d",
-                   k->httpcode);
-            return CURLE_HTTP_RETURNED_ERROR;
-          }
-        }
-
-        if(conn->httpversion == 10) {
-          /* Default action for HTTP/1.0 must be to close, unless
-             we get one of those fancy headers that tell us the
-             server keeps it open for us! */
-          infof(data, "HTTP 1.0, assume close after body\n");
-          conn->bits.close = TRUE;
-        }
-        else if(conn->httpversion >= 11 &&
-                !conn->bits.close) {
-          /* If HTTP version is >= 1.1 and connection is persistent
-             server supports pipelining. */
-          DEBUGF(infof(data,
-                       "HTTP 1.1 or later with persistent connection, "
-                       "pipelining supported\n"));
-          conn->server_supports_pipelining = TRUE;
-        }
-
-        switch(k->httpcode) {
-        case 204:
-          /* (quote from RFC2616, section 10.2.5): The server has
-           * fulfilled the request but does not need to return an
-           * entity-body ... The 204 response MUST NOT include a
-           * message-body, and thus is always terminated by the first
-           * empty line after the header fields. */
-          /* FALLTHROUGH */
-        case 416: /* Requested Range Not Satisfiable, it has the
-                     Content-Length: set as the "real" document but no
-                     actual response is sent. */
-        case 304:
-          /* (quote from RFC2616, section 10.3.5): The 304 response
-           * MUST NOT contain a message-body, and thus is always
-           * terminated by the first empty line after the header
-           * fields.  */
-          if(data->set.timecondition)
-            data->info.timecond = TRUE;
-          k->size=0;
-          k->maxdownload=0;
-          k->ignorecl = TRUE; /* ignore Content-Length headers */
-          break;
-        default:
-          /* nothing */
-          break;
-        }
-      }
-      else {
-        k->header = FALSE;   /* this is not a header line */
-        break;
-      }
-    }
-
-#ifdef CURL_DOES_CONVERSIONS
-    /* convert from the network encoding */
-    result = Curl_convert_from_network(data, k->p, strlen(k->p));
-    if(CURLE_OK != result) {
-      return(result);
-    }
-    /* Curl_convert_from_network calls failf if unsuccessful */
-#endif /* CURL_DOES_CONVERSIONS */
-
-    /* Check for Content-Length: header lines to get size. Ignore
-       the header completely if we get a 416 response as then we're
-       resuming a document that we don't get, and this header contains
-       info about the true size of the document we didn't get now. */
-    if(!k->ignorecl && !data->set.ignorecl &&
-       checkprefix("Content-Length:", k->p)) {
-      curl_off_t contentlength = curlx_strtoofft(k->p+15, NULL, 10);
-      if(data->set.max_filesize &&
-         contentlength > data->set.max_filesize) {
-        failf(data, "Maximum file size exceeded");
-        return CURLE_FILESIZE_EXCEEDED;
-      }
-      if(contentlength >= 0) {
-        k->size = contentlength;
-        k->maxdownload = k->size;
-        /* we set the progress download size already at this point
-           just to make it easier for apps/callbacks to extract this
-           info as soon as possible */
-        Curl_pgrsSetDownloadSize(data, k->size);
-      }
-      else {
-        /* Negative Content-Length is really odd, and we know it
-           happens for example when older Apache servers send large
-           files */
-        conn->bits.close = TRUE;
-        infof(data, "Negative content-length: %" FORMAT_OFF_T
-              ", closing after transfer\n", contentlength);
-      }
-    }
-    /* check for Content-Type: header lines to get the MIME-type */
-    else if(checkprefix("Content-Type:", k->p)) {
-      char *contenttype = Curl_copy_header_value(k->p);
-      if (!contenttype)
-        return CURLE_OUT_OF_MEMORY;
-      if (!*contenttype)
-        /* ignore empty data */
-        free(contenttype);
-      else {
-        Curl_safefree(data->info.contenttype);
-        data->info.contenttype = contenttype;
-      }
-    }
-    else if((conn->httpversion == 10) &&
-            conn->bits.httpproxy &&
-            Curl_compareheader(k->p,
-                               "Proxy-Connection:", "keep-alive")) {
-      /*
-       * When a HTTP/1.0 reply comes when using a proxy, the
-       * 'Proxy-Connection: keep-alive' line tells us the
-       * connection will be kept alive for our pleasure.
-       * Default action for 1.0 is to close.
-       */
-      conn->bits.close = FALSE; /* don't close when done */
-      infof(data, "HTTP/1.0 proxy connection set to keep alive!\n");
-    }
-    else if((conn->httpversion == 11) &&
-            conn->bits.httpproxy &&
-            Curl_compareheader(k->p,
-                               "Proxy-Connection:", "close")) {
-      /*
-       * We get a HTTP/1.1 response from a proxy and it says it'll
-       * close down after this transfer.
-       */
-      conn->bits.close = TRUE; /* close when done */
-      infof(data, "HTTP/1.1 proxy connection set close!\n");
-    }
-    else if((conn->httpversion == 10) &&
-            Curl_compareheader(k->p, "Connection:", "keep-alive")) {
-      /*
-       * A HTTP/1.0 reply with the 'Connection: keep-alive' line
-       * tells us the connection will be kept alive for our
-       * pleasure.  Default action for 1.0 is to close.
-       *
-       * [RFC2068, section 19.7.1] */
-      conn->bits.close = FALSE; /* don't close when done */
-      infof(data, "HTTP/1.0 connection set to keep alive!\n");
-    }
-    else if(Curl_compareheader(k->p, "Connection:", "close")) {
-      /*
-       * [RFC 2616, section 8.1.2.1]
-       * "Connection: close" is HTTP/1.1 language and means that
-       * the connection will close when this request has been
-       * served.
-       */
-      conn->bits.close = TRUE; /* close when done */
-    }
-    else if(Curl_compareheader(k->p, "Transfer-Encoding:", "chunked") &&
-            !(conn->protocol & PROT_RTSP)) {
-      /*
-       * [RFC 2616, section 3.6.1] A 'chunked' transfer encoding
-       * means that the server will send a series of "chunks". Each
-       * chunk starts with line with info (including size of the
-       * coming block) (terminated with CRLF), then a block of data
-       * with the previously mentioned size. There can be any amount
-       * of chunks, and a chunk-data set to zero signals the
-       * end-of-chunks. */
-      k->chunk = TRUE; /* chunks coming our way */
-
-      /* init our chunky engine */
-      Curl_httpchunk_init(conn);
-    }
-
-    else if(checkprefix("Trailer:", k->p) ||
-            checkprefix("Trailers:", k->p)) {
-      /*
-       * This test helps Curl_httpchunk_read() to determine to look
-       * for well formed trailers after the zero chunksize record. In
-       * this case a CRLF is required after the zero chunksize record
-       * when no trailers are sent, or after the last trailer record.
-       *
-       * It seems both Trailer: and Trailers: occur in the wild.
-       */
-      k->trailerhdrpresent = TRUE;
-    }
-
-    else if(checkprefix("Content-Encoding:", k->p) &&
-            data->set.str[STRING_ENCODING]) {
-      /*
-       * Process Content-Encoding. Look for the values: identity,
-       * gzip, deflate, compress, x-gzip and x-compress. x-gzip and
-       * x-compress are the same as gzip and compress. (Sec 3.5 RFC
-       * 2616). zlib cannot handle compress.  However, errors are
-       * handled further down when the response body is processed
-       */
-      char *start;
-
-      /* Find the first non-space letter */
-      start = k->p + 17;
-      while(*start && ISSPACE(*start))
-        start++;
-
-      /* Record the content-encoding for later use */
-      if(checkprefix("identity", start))
-        k->content_encoding = IDENTITY;
-      else if(checkprefix("deflate", start))
-        k->content_encoding = DEFLATE;
-      else if(checkprefix("gzip", start)
-              || checkprefix("x-gzip", start))
-        k->content_encoding = GZIP;
-      else if(checkprefix("compress", start)
-              || checkprefix("x-compress", start))
-        k->content_encoding = COMPRESS;
-    }
-    else if(checkprefix("Content-Range:", k->p)) {
-      /* Content-Range: bytes [num]-
-         Content-Range: bytes: [num]-
-         Content-Range: [num]-
-
-         The second format was added since Sun's webserver
-         JavaWebServer/1.1.1 obviously sends the header this way!
-         The third added since some servers use that!
-      */
-
-      char *ptr = k->p + 14;
-
-      /* Move forward until first digit */
-      while(*ptr && !ISDIGIT(*ptr))
-        ptr++;
-
-      k->offset = curlx_strtoofft(ptr, NULL, 10);
-
-      if(data->state.resume_from == k->offset)
-        /* we asked for a resume and we got it */
-        k->content_range = TRUE;
-    }
-#if !defined(CURL_DISABLE_COOKIES)
-    else if(data->cookies &&
-            checkprefix("Set-Cookie:", k->p)) {
-      Curl_share_lock(data, CURL_LOCK_DATA_COOKIE,
-                      CURL_LOCK_ACCESS_SINGLE);
-      Curl_cookie_add(data,
-                      data->cookies, TRUE, k->p+11,
-                      /* If there is a custom-set Host: name, use it
-                         here, or else use real peer host name. */
-                      conn->allocptr.cookiehost?
-                      conn->allocptr.cookiehost:conn->host.name,
-                      data->state.path);
-      Curl_share_unlock(data, CURL_LOCK_DATA_COOKIE);
-    }
-#endif
-    else if(checkprefix("Last-Modified:", k->p) &&
-            (data->set.timecondition || data->set.get_filetime) ) {
-      time_t secs=time(NULL);
-      k->timeofdoc = curl_getdate(k->p+strlen("Last-Modified:"),
-                                  &secs);
-      if(data->set.get_filetime)
-        data->info.filetime = (long)k->timeofdoc;
-    }
-    else if((checkprefix("WWW-Authenticate:", k->p) &&
-             (401 == k->httpcode)) ||
-            (checkprefix("Proxy-authenticate:", k->p) &&
-             (407 == k->httpcode))) {
-      result = Curl_http_input_auth(conn, k->httpcode, k->p);
-      if(result)
-        return result;
-    }
-    else if((k->httpcode >= 300 && k->httpcode < 400) &&
-            checkprefix("Location:", k->p)) {
-      /* this is the URL that the server advises us to use instead */
-      char *location = Curl_copy_header_value(k->p);
-      if (!location)
-        return CURLE_OUT_OF_MEMORY;
-      if (!*location)
-        /* ignore empty data */
-        free(location);
-      else {
-        DEBUGASSERT(!data->req.location);
-        data->req.location = location;
-
-        if(data->set.http_follow_location) {
-          DEBUGASSERT(!data->req.newurl);
-          data->req.newurl = strdup(data->req.location); /* clone */
-          if(!data->req.newurl)
-            return CURLE_OUT_OF_MEMORY;
-
-          /* some cases of POST and PUT etc needs to rewind the data
-             stream at this point */
-          result = Curl_http_perhapsrewind(conn);
-          if(result)
-            return result;
-        }
-      }
-    }
-#ifndef CURL_DISABLE_RTSP
-    else if(conn->protocol & PROT_RTSP) {
-      result = Curl_rtsp_parseheader(conn, k->p);
-      if(result)
-        return result;
-    }
-#endif
-    /*
-     * End of header-checks. Write them to the client.
-     */
-
-    writetype = CLIENTWRITE_HEADER;
-    if(data->set.include_header)
-      writetype |= CLIENTWRITE_BODY;
-
-    if(data->set.verbose)
-      Curl_debug(data, CURLINFO_HEADER_IN,
-                 k->p, (size_t)k->hbuflen, conn);
-
-    result = Curl_client_write(conn, writetype, k->p, k->hbuflen);
-    if(result)
-      return result;
-
-    data->info.header_size += (long)k->hbuflen;
-    data->req.headerbytecount += (long)k->hbuflen;
-
-    /* reset hbufp pointer && hbuflen */
-    k->hbufp = data->state.headerbuff;
-    k->hbuflen = 0;
-  }
-  while(!*stop_reading && *k->str); /* header line within buffer */
-
-  /* We might have reached the end of the header part here, but
-     there might be a non-header part left in the end of the read
-     buffer. */
-
-  return CURLE_OK;
-}
-
-#endif /* CURL_DISABLE_HTTP */
diff --git a/src/other/curl/lib/http.h b/src/other/curl/lib/http.h
deleted file mode 100644
index b7c1abf..0000000
--- a/src/other/curl/lib/http.h
+++ /dev/null
@@ -1,162 +0,0 @@
-#ifndef __HTTP_H
-#define __HTTP_H
-
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#ifndef CURL_DISABLE_HTTP
-
-extern const struct Curl_handler Curl_handler_http;
-
-#ifdef USE_SSL
-extern const struct Curl_handler Curl_handler_https;
-#endif
-
-bool Curl_compareheader(const char *headerline,  /* line to check */
-                        const char *header,   /* header keyword _with_ colon */
-                        const char *content); /* content string to find */
-
-char *Curl_checkheaders(struct SessionHandle *data, const char *thisheader);
-
-char *Curl_copy_header_value(const char *h);
-
-
-/* ------------------------------------------------------------------------- */
-/*
- * The add_buffer series of functions are used to build one large memory chunk
- * from repeated function invokes. Used so that the entire HTTP request can
- * be sent in one go.
- */
-struct Curl_send_buffer {
-  char *buffer;
-  size_t size_max;
-  size_t size_used;
-};
-typedef struct Curl_send_buffer Curl_send_buffer;
-
-Curl_send_buffer *Curl_add_buffer_init(void);
-CURLcode Curl_add_bufferf(Curl_send_buffer *in, const char *fmt, ...);
-CURLcode Curl_add_buffer(Curl_send_buffer *in, const void *inptr, size_t size);
-CURLcode Curl_add_buffer_send(Curl_send_buffer *in,
-                         struct connectdata *conn,
-                         long *bytes_written,
-                         size_t included_body_bytes,
-                         int socketindex);
-
-
-CURLcode Curl_add_timecondition(struct SessionHandle *data,
-                                Curl_send_buffer *buf);
-CURLcode Curl_add_custom_headers(struct connectdata *conn,
-                                   Curl_send_buffer *req_buffer);
-
-
-/* ftp can use this as well */
-CURLcode Curl_proxyCONNECT(struct connectdata *conn,
-                           int tunnelsocket,
-                           const char *hostname, unsigned short remote_port);
-
-/* protocol-specific functions set up to be called by the main engine */
-CURLcode Curl_http(struct connectdata *conn, bool *done);
-CURLcode Curl_http_done(struct connectdata *, CURLcode, bool premature);
-CURLcode Curl_http_connect(struct connectdata *conn, bool *done);
-
-/* The following functions are defined in http_chunks.c */
-void Curl_httpchunk_init(struct connectdata *conn);
-CHUNKcode Curl_httpchunk_read(struct connectdata *conn, char *datap,
-                              ssize_t length, ssize_t *wrote);
-
-/* These functions are in http.c */
-void Curl_http_auth_stage(struct SessionHandle *data, int stage);
-CURLcode Curl_http_input_auth(struct connectdata *conn,
-                              int httpcode, const char *header);
-CURLcode Curl_http_auth_act(struct connectdata *conn);
-CURLcode Curl_http_perhapsrewind(struct connectdata *conn);
-
-int Curl_http_should_fail(struct connectdata *conn);
-
-/* If only the PICKNONE bit is set, there has been a round-trip and we
-   selected to use no auth at all. Ie, we actively select no auth, as opposed
-   to not having one selected. The other CURLAUTH_* defines are present in the
-   public curl/curl.h header. */
-#define CURLAUTH_PICKNONE (1<<30) /* don't use auth */
-
-/* MAX_INITIAL_POST_SIZE indicates the number of bytes that will make the POST
-   data get included in the initial data chunk sent to the server. If the
-   data is larger than this, it will automatically get split up in multiple
-   system calls.
-
-   This value used to be fairly big (100K), but we must take into account that
-   if the server rejects the POST due for authentication reasons, this data
-   will always be uncondtionally sent and thus it may not be larger than can
-   always be afforded to send twice.
-
-   It must not be greater than 64K to work on VMS.
-*/
-#ifndef MAX_INITIAL_POST_SIZE
-#define MAX_INITIAL_POST_SIZE (64*1024)
-#endif
-
-#ifndef TINY_INITIAL_POST_SIZE
-#define TINY_INITIAL_POST_SIZE 1024
-#endif
-
-#endif /* CURL_DISABLE_HTTP */
-
-/****************************************************************************
- * HTTP unique setup
- ***************************************************************************/
-struct HTTP {
-  struct FormData *sendit;
-  curl_off_t postsize; /* off_t to handle large file sizes */
-  const char *postdata;
-
-  const char *p_pragma;      /* Pragma: string */
-  const char *p_accept;      /* Accept: string */
-  curl_off_t readbytecount;
-  curl_off_t writebytecount;
-
-  /* For FORM posting */
-  struct Form form;
-
-  struct back {
-    curl_read_callback fread_func; /* backup storage for fread pointer */
-    void *fread_in;           /* backup storage for fread_in pointer */
-    const char *postdata;
-    curl_off_t postsize;
-  } backup;
-
-  enum {
-    HTTPSEND_NADA,    /* init */
-    HTTPSEND_REQUEST, /* sending a request */
-    HTTPSEND_BODY,    /* sending body */
-    HTTPSEND_LAST     /* never use this */
-  } sending;
-
-  void *send_buffer; /* used if the request couldn't be sent in one chunk,
-                        points to an allocated send_buffer struct */
-};
-
-CURLcode Curl_http_readwrite_headers(struct SessionHandle *data,
-                                     struct connectdata *conn,
-                                     ssize_t *nread,
-                                     bool *stop_reading);
-
-#endif
diff --git a/src/other/curl/lib/http_chunks.c b/src/other/curl/lib/http_chunks.c
deleted file mode 100644
index a66f872..0000000
--- a/src/other/curl/lib/http_chunks.c
+++ /dev/null
@@ -1,422 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include "setup.h"
-
-#ifndef CURL_DISABLE_HTTP
-/* -- WIN32 approved -- */
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-
-#include "urldata.h" /* it includes http_chunks.h */
-#include "sendf.h"   /* for the client write stuff */
-
-#include "content_encoding.h"
-#include "http.h"
-#include "curl_memory.h"
-#include "easyif.h" /* for Curl_convert_to_network prototype */
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/*
- * Chunk format (simplified):
- *
- * <HEX SIZE>[ chunk extension ] CRLF
- * <DATA> CRLF
- *
- * Highlights from RFC2616 section 3.6 say:
-
-   The chunked encoding modifies the body of a message in order to
-   transfer it as a series of chunks, each with its own size indicator,
-   followed by an OPTIONAL trailer containing entity-header fields. This
-   allows dynamically produced content to be transferred along with the
-   information necessary for the recipient to verify that it has
-   received the full message.
-
-       Chunked-Body   = *chunk
-                        last-chunk
-                        trailer
-                        CRLF
-
-       chunk          = chunk-size [ chunk-extension ] CRLF
-                        chunk-data CRLF
-       chunk-size     = 1*HEX
-       last-chunk     = 1*("0") [ chunk-extension ] CRLF
-
-       chunk-extension= *( ";" chunk-ext-name [ "=" chunk-ext-val ] )
-       chunk-ext-name = token
-       chunk-ext-val  = token | quoted-string
-       chunk-data     = chunk-size(OCTET)
-       trailer        = *(entity-header CRLF)
-
-   The chunk-size field is a string of hex digits indicating the size of
-   the chunk. The chunked encoding is ended by any chunk whose size is
-   zero, followed by the trailer, which is terminated by an empty line.
-
- */
-
-/* Check for an ASCII hex digit.
- We avoid the use of isxdigit to accommodate non-ASCII hosts. */
-static bool Curl_isxdigit(char digit)
-{
-  return (bool)( (digit >= 0x30 && digit <= 0x39)    /* 0-9 */
-              || (digit >= 0x41 && digit <= 0x46)    /* A-F */
-              || (digit >= 0x61 && digit <= 0x66) ); /* a-f */
-}
-
-void Curl_httpchunk_init(struct connectdata *conn)
-{
-  struct Curl_chunker *chunk = &conn->chunk;
-  chunk->hexindex=0; /* start at 0 */
-  chunk->dataleft=0; /* no data left yet! */
-  chunk->state = CHUNK_HEX; /* we get hex first! */
-}
-
-/*
- * chunk_read() returns a OK for normal operations, or a positive return code
- * for errors. STOP means this sequence of chunks is complete.  The 'wrote'
- * argument is set to tell the caller how many bytes we actually passed to the
- * client (for byte-counting and whatever).
- *
- * The states and the state-machine is further explained in the header file.
- *
- * This function always uses ASCII hex values to accommodate non-ASCII hosts.
- * For example, 0x0d and 0x0a are used instead of '\r' and '\n'.
- */
-CHUNKcode Curl_httpchunk_read(struct connectdata *conn,
-                              char *datap,
-                              ssize_t datalen,
-                              ssize_t *wrotep)
-{
-  CURLcode result=CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct Curl_chunker *ch = &conn->chunk;
-  struct SingleRequest *k = &data->req;
-  size_t piece;
-  size_t length = (size_t)datalen;
-  size_t *wrote = (size_t *)wrotep;
-
-  *wrote = 0; /* nothing's written yet */
-
-  /* the original data is written to the client, but we go on with the
-     chunk read process, to properly calculate the content length*/
-  if(data->set.http_te_skip && !k->ignorebody) {
-    result = Curl_client_write(conn, CLIENTWRITE_BODY, datap, datalen);
-    if(result)
-      return CHUNKE_WRITE_ERROR;
-  }
-
-  while(length) {
-    switch(ch->state) {
-    case CHUNK_HEX:
-      if(Curl_isxdigit(*datap)) {
-        if(ch->hexindex < MAXNUM_SIZE) {
-          ch->hexbuffer[ch->hexindex] = *datap;
-          datap++;
-          length--;
-          ch->hexindex++;
-        }
-        else {
-          return CHUNKE_TOO_LONG_HEX; /* longer hex than we support */
-        }
-      }
-      else {
-        if(0 == ch->hexindex) {
-          /* This is illegal data, we received junk where we expected
-             a hexadecimal digit. */
-          return CHUNKE_ILLEGAL_HEX;
-        }
-        /* length and datap are unmodified */
-        ch->hexbuffer[ch->hexindex]=0;
-#ifdef CURL_DOES_CONVERSIONS
-        /* convert to host encoding before calling strtoul */
-        result = Curl_convert_from_network(conn->data,
-                                           ch->hexbuffer,
-                                           ch->hexindex);
-        if(result != CURLE_OK) {
-          /* Curl_convert_from_network calls failf if unsuccessful */
-          /* Treat it as a bad hex character */
-          return(CHUNKE_ILLEGAL_HEX);
-        }
-#endif /* CURL_DOES_CONVERSIONS */
-        ch->datasize=strtoul(ch->hexbuffer, NULL, 16);
-        ch->state = CHUNK_POSTHEX;
-      }
-      break;
-
-    case CHUNK_POSTHEX:
-      /* In this state, we're waiting for CRLF to arrive. We support
-         this to allow so called chunk-extensions to show up here
-         before the CRLF comes. */
-      if(*datap == 0x0d)
-        ch->state = CHUNK_CR;
-      length--;
-      datap++;
-      break;
-
-    case CHUNK_CR:
-      /* waiting for the LF */
-      if(*datap == 0x0a) {
-        /* we're now expecting data to come, unless size was zero! */
-        if(0 == ch->datasize) {
-          if(k->trailerhdrpresent!=TRUE) {
-            /* No Trailer: header found - revert to original Curl processing */
-            ch->state = CHUNK_STOPCR;
-
-            /* We need to increment the datap here since we bypass the
-               increment below with the immediate break */
-            length--;
-            datap++;
-
-            /* This is the final byte, continue to read the final CRLF */
-            break;
-          }
-          else {
-            ch->state = CHUNK_TRAILER; /* attempt to read trailers */
-            conn->trlPos=0;
-          }
-        }
-        else {
-          ch->state = CHUNK_DATA;
-        }
-      }
-      else
-        /* previously we got a fake CR, go back to CR waiting! */
-        ch->state = CHUNK_CR;
-      datap++;
-      length--;
-      break;
-
-    case CHUNK_DATA:
-      /* we get pure and fine data
-
-         We expect another 'datasize' of data. We have 'length' right now,
-         it can be more or less than 'datasize'. Get the smallest piece.
-      */
-      piece = (ch->datasize >= length)?length:ch->datasize;
-
-      /* Write the data portion available */
-#ifdef HAVE_LIBZ
-      switch (conn->data->set.http_ce_skip?
-              IDENTITY : data->req.content_encoding) {
-      case IDENTITY:
-#endif
-        if(!k->ignorebody) {
-          if( !data->set.http_te_skip )
-            result = Curl_client_write(conn, CLIENTWRITE_BODY, datap,
-                                       piece);
-          else
-            result = CURLE_OK;
-        }
-#ifdef HAVE_LIBZ
-        break;
-
-      case DEFLATE:
-        /* update data->req.keep.str to point to the chunk data. */
-        data->req.str = datap;
-        result = Curl_unencode_deflate_write(conn, &data->req,
-                                             (ssize_t)piece);
-        break;
-
-      case GZIP:
-        /* update data->req.keep.str to point to the chunk data. */
-        data->req.str = datap;
-        result = Curl_unencode_gzip_write(conn, &data->req,
-                                          (ssize_t)piece);
-        break;
-
-      case COMPRESS:
-      default:
-        failf (conn->data,
-               "Unrecognized content encoding type. "
-               "libcurl understands `identity', `deflate' and `gzip' "
-               "content encodings.");
-        return CHUNKE_BAD_ENCODING;
-      }
-#endif
-
-      if(result)
-        return CHUNKE_WRITE_ERROR;
-
-      *wrote += piece;
-
-      ch->datasize -= piece; /* decrease amount left to expect */
-      datap += piece;    /* move read pointer forward */
-      length -= piece;   /* decrease space left in this round */
-
-      if(0 == ch->datasize)
-        /* end of data this round, we now expect a trailing CRLF */
-        ch->state = CHUNK_POSTCR;
-      break;
-
-    case CHUNK_POSTCR:
-      if(*datap == 0x0d) {
-        ch->state = CHUNK_POSTLF;
-        datap++;
-        length--;
-      }
-      else {
-        return CHUNKE_BAD_CHUNK;
-      }
-      break;
-
-    case CHUNK_POSTLF:
-      if(*datap == 0x0a) {
-        /*
-         * The last one before we go back to hex state and start all
-         * over.
-         */
-        Curl_httpchunk_init(conn);
-        datap++;
-        length--;
-      }
-      else {
-        return CHUNKE_BAD_CHUNK;
-      }
-
-      break;
-
-    case CHUNK_TRAILER:
-      /* conn->trailer is assumed to be freed in url.c on a
-         connection basis */
-      if(conn->trlPos >= conn->trlMax) {
-        /* in this logic we always allocate one byte more than trlMax
-           contains, just because CHUNK_TRAILER_POSTCR will append two bytes
-           so we need to make sure we have room for an extra byte */
-        char *ptr;
-        if(conn->trlMax) {
-          conn->trlMax *= 2;
-          ptr = realloc(conn->trailer, conn->trlMax + 1);
-        }
-        else {
-          conn->trlMax=128;
-          ptr = malloc(conn->trlMax + 1);
-        }
-        if(!ptr)
-          return CHUNKE_OUT_OF_MEMORY;
-        conn->trailer = ptr;
-      }
-      conn->trailer[conn->trlPos++]=*datap;
-
-      if(*datap == 0x0d)
-        ch->state = CHUNK_TRAILER_CR;
-      else {
-        datap++;
-        length--;
-      }
-      break;
-
-    case CHUNK_TRAILER_CR:
-      if(*datap == 0x0d) {
-        ch->state = CHUNK_TRAILER_POSTCR;
-        datap++;
-        length--;
-      }
-      else
-        return CHUNKE_BAD_CHUNK;
-      break;
-
-    case CHUNK_TRAILER_POSTCR:
-      if(*datap == 0x0a) {
-        conn->trailer[conn->trlPos++]=0x0a;
-        conn->trailer[conn->trlPos]=0;
-        if(conn->trlPos==2) {
-          ch->state = CHUNK_STOP;
-          length--;
-
-          /*
-           * Note that this case skips over the final STOP states since we've
-           * already read the final CRLF and need to return
-           */
-
-          ch->dataleft = length;
-
-          return CHUNKE_STOP; /* return stop */
-        }
-        else {
-#ifdef CURL_DOES_CONVERSIONS
-          /* Convert to host encoding before calling Curl_client_write */
-          result = Curl_convert_from_network(conn->data,
-                                             conn->trailer,
-                                             conn->trlPos);
-          if(result != CURLE_OK) {
-            /* Curl_convert_from_network calls failf if unsuccessful */
-            /* Treat it as a bad chunk */
-            return(CHUNKE_BAD_CHUNK);
-          }
-#endif /* CURL_DOES_CONVERSIONS */
-          if(!data->set.http_te_skip) {
-            result = Curl_client_write(conn, CLIENTWRITE_HEADER,
-                                       conn->trailer, conn->trlPos);
-            if(result)
-              return CHUNKE_WRITE_ERROR;
-          }
-        }
-        ch->state = CHUNK_TRAILER;
-        conn->trlPos=0;
-        datap++;
-        length--;
-      }
-      else
-        return CHUNKE_BAD_CHUNK;
-      break;
-
-    case CHUNK_STOPCR:
-      /* Read the final CRLF that ends all chunk bodies */
-
-      if(*datap == 0x0d) {
-        ch->state = CHUNK_STOP;
-        datap++;
-        length--;
-      }
-      else {
-        return CHUNKE_BAD_CHUNK;
-      }
-      break;
-
-    case CHUNK_STOP:
-      if(*datap == 0x0a) {
-        length--;
-
-        /* Record the length of any data left in the end of the buffer
-           even if there's no more chunks to read */
-
-        ch->dataleft = length;
-        return CHUNKE_STOP; /* return stop */
-      }
-      else {
-        return CHUNKE_BAD_CHUNK;
-      }
-
-    default:
-      return CHUNKE_STATE_ERROR;
-    }
-  }
-  return CHUNKE_OK;
-}
-#endif /* CURL_DISABLE_HTTP */
diff --git a/src/other/curl/lib/http_chunks.h b/src/other/curl/lib/http_chunks.h
deleted file mode 100644
index 6056e18..0000000
--- a/src/other/curl/lib/http_chunks.h
+++ /dev/null
@@ -1,107 +0,0 @@
-#ifndef __HTTP_CHUNKS_H
-#define __HTTP_CHUNKS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-/*
- * The longest possible hexadecimal number we support in a chunked transfer.
- * Weird enough, RFC2616 doesn't set a maximum size! Since we use strtoul()
- * to convert it, we "only" support 2^32 bytes chunk data.
- */
-#define MAXNUM_SIZE 16
-
-typedef enum {
-  CHUNK_FIRST, /* never use */
-
-  /* In this we await and buffer all hexadecimal digits until we get one
-     that isn't a hexadecimal digit. When done, we go POSTHEX */
-  CHUNK_HEX,
-
-  /* We have received the hexadecimal digit and we eat all characters until
-     we get a CRLF pair. When we see a CR we go to the CR state. */
-  CHUNK_POSTHEX,
-
-  /* A single CR has been found and we should get a LF right away in this
-     state or we go back to POSTHEX. When LF is received, we go to DATA.
-     If the size given was zero, we set state to STOP and return. */
-  CHUNK_CR,
-
-  /* We eat the amount of data specified. When done, we move on to the
-     POST_CR state. */
-  CHUNK_DATA,
-
-  /* POSTCR should get a CR and nothing else, then move to POSTLF */
-  CHUNK_POSTCR,
-
-  /* POSTLF should get a LF and nothing else, then move back to HEX as the
-     CRLF combination marks the end of a chunk */
-  CHUNK_POSTLF,
-
-  /* Each Chunk body should end with a CRLF.  Read a CR and nothing else,
-     then move to CHUNK_STOP */
-  CHUNK_STOPCR,
-
-  /* This is mainly used to really mark that we're out of the game.
-     NOTE: that there's a 'dataleft' field in the struct that will tell how
-     many bytes that were not passed to the client in the end of the last
-     buffer! */
-  CHUNK_STOP,
-
-  /* At this point optional trailer headers can be found, unless the next line
-     is CRLF */
-  CHUNK_TRAILER,
-
-  /* A trailer CR has been found - next state is CHUNK_TRAILER_POSTCR.
-     Next char must be a LF */
-  CHUNK_TRAILER_CR,
-
-  /* A trailer LF must be found now, otherwise CHUNKE_BAD_CHUNK will be
-     signalled If this is an empty trailer CHUNKE_STOP will be signalled.
-     Otherwise the trailer will be broadcasted via Curl_client_write() and the
-     next state will be CHUNK_TRAILER */
-  CHUNK_TRAILER_POSTCR,
-
-  CHUNK_LAST /* never use */
-
-} ChunkyState;
-
-typedef enum {
-  CHUNKE_STOP = -1,
-  CHUNKE_OK = 0,
-  CHUNKE_TOO_LONG_HEX = 1,
-  CHUNKE_ILLEGAL_HEX,
-  CHUNKE_BAD_CHUNK,
-  CHUNKE_WRITE_ERROR,
-  CHUNKE_STATE_ERROR,
-  CHUNKE_BAD_ENCODING,
-  CHUNKE_OUT_OF_MEMORY,
-  CHUNKE_LAST
-} CHUNKcode;
-
-struct Curl_chunker {
-  char hexbuffer[ MAXNUM_SIZE + 1];
-  int hexindex;
-  ChunkyState state;
-  size_t datasize;
-  size_t dataleft; /* untouched data amount at the end of the last buffer */
-};
-
-#endif
diff --git a/src/other/curl/lib/http_digest.c b/src/other/curl/lib/http_digest.c
deleted file mode 100644
index ff3871c..0000000
--- a/src/other/curl/lib/http_digest.c
+++ /dev/null
@@ -1,585 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include "setup.h"
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_CRYPTO_AUTH)
-/* -- WIN32 approved -- */
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-
-#include "urldata.h"
-#include "sendf.h"
-#include "rawstr.h"
-#include "curl_base64.h"
-#include "curl_md5.h"
-#include "http_digest.h"
-#include "strtok.h"
-#include "url.h" /* for Curl_safefree() */
-#include "curl_memory.h"
-#include "easyif.h" /* included for Curl_convert_... prototypes */
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#define MAX_VALUE_LENGTH 256
-#define MAX_CONTENT_LENGTH 1024
-
-/*
- * Return 0 on success and then the buffers are filled in fine.
- *
- * Non-zero means failure to parse.
- */
-static int get_pair(const char *str, char *value, char *content,
-                    const char **endptr)
-{
-  int c;
-  bool starts_with_quote = FALSE;
-  bool escape = FALSE;
-
-  for(c=MAX_VALUE_LENGTH-1; (*str && (*str != '=') && c--); )
-    *value++ = *str++;
-  *value=0;
-
-  if('=' != *str++)
-    /* eek, no match */
-    return 1;
-
-  if('\"' == *str) {
-    /* this starts with a quote so it must end with one as well! */
-    str++;
-    starts_with_quote = TRUE;
-  }
-
-  for(c=MAX_CONTENT_LENGTH-1; *str && c--; str++) {
-    switch(*str) {
-    case '\\':
-      if(!escape) {
-        /* possibly the start of an escaped quote */
-        escape = TRUE;
-        *content++ = '\\'; /* even though this is an escape character, we still
-                              store it as-is in the target buffer */
-        continue;
-      }
-      break;
-    case ',':
-      if(!starts_with_quote) {
-        /* this signals the end of the content if we didn't get a starting quote
-           and then we do "sloppy" parsing */
-        c=0; /* the end */
-        continue;
-      }
-      break;
-    case '\r':
-    case '\n':
-      /* end of string */
-      c=0;
-      continue;
-    case '\"':
-      if(!escape && starts_with_quote) {
-        /* end of string */
-        c=0;
-        continue;
-      }
-      break;
-    }
-    escape = FALSE;
-    *content++ = *str;
-  }
-  *content=0;
-
-  *endptr = str;
-
-  return 0; /* all is fine! */
-}
-
-/* Test example headers:
-
-WWW-Authenticate: Digest realm="testrealm", nonce="1053604598"
-Proxy-Authenticate: Digest realm="testrealm", nonce="1053604598"
-
-*/
-
-CURLdigest Curl_input_digest(struct connectdata *conn,
-                             bool proxy,
-                             const char *header) /* rest of the *-authenticate:
-                                                    header */
-{
-  bool more = TRUE;
-  char *token = NULL;
-  char *tmp = NULL;
-  bool foundAuth = FALSE;
-  bool foundAuthInt = FALSE;
-  struct SessionHandle *data=conn->data;
-  bool before = FALSE; /* got a nonce before */
-  struct digestdata *d;
-
-  if(proxy) {
-    d = &data->state.proxydigest;
-  }
-  else {
-    d = &data->state.digest;
-  }
-
-  /* skip initial whitespaces */
-  while(*header && ISSPACE(*header))
-    header++;
-
-  if(checkprefix("Digest", header)) {
-    header += strlen("Digest");
-
-    /* If we already have received a nonce, keep that in mind */
-    if(d->nonce)
-      before = TRUE;
-
-    /* clear off any former leftovers and init to defaults */
-    Curl_digest_cleanup_one(d);
-
-    while(more) {
-      char value[MAX_VALUE_LENGTH];
-      char content[MAX_CONTENT_LENGTH];
-
-      while(*header && ISSPACE(*header))
-        header++;
-
-      /* extract a value=content pair */
-      if(!get_pair(header, value, content, &header)) {
-        if(Curl_raw_equal(value, "nonce")) {
-          d->nonce = strdup(content);
-          if(!d->nonce)
-            return CURLDIGEST_NOMEM;
-        }
-        else if(Curl_raw_equal(value, "stale")) {
-          if(Curl_raw_equal(content, "true")) {
-            d->stale = TRUE;
-            d->nc = 1; /* we make a new nonce now */
-          }
-        }
-        else if(Curl_raw_equal(value, "realm")) {
-          d->realm = strdup(content);
-          if(!d->realm)
-            return CURLDIGEST_NOMEM;
-        }
-        else if(Curl_raw_equal(value, "opaque")) {
-          d->opaque = strdup(content);
-          if(!d->opaque)
-            return CURLDIGEST_NOMEM;
-        }
-        else if(Curl_raw_equal(value, "qop")) {
-          char *tok_buf;
-          /* tokenize the list and choose auth if possible, use a temporary
-             clone of the buffer since strtok_r() ruins it */
-          tmp = strdup(content);
-          if(!tmp)
-            return CURLDIGEST_NOMEM;
-          token = strtok_r(tmp, ",", &tok_buf);
-          while(token != NULL) {
-            if(Curl_raw_equal(token, "auth")) {
-              foundAuth = TRUE;
-            }
-            else if(Curl_raw_equal(token, "auth-int")) {
-              foundAuthInt = TRUE;
-            }
-            token = strtok_r(NULL, ",", &tok_buf);
-          }
-          free(tmp);
-          /*select only auth o auth-int. Otherwise, ignore*/
-          if(foundAuth) {
-            d->qop = strdup("auth");
-            if(!d->qop)
-              return CURLDIGEST_NOMEM;
-          }
-          else if(foundAuthInt) {
-            d->qop = strdup("auth-int");
-            if(!d->qop)
-              return CURLDIGEST_NOMEM;
-          }
-        }
-        else if(Curl_raw_equal(value, "algorithm")) {
-          d->algorithm = strdup(content);
-          if(!d->algorithm)
-            return CURLDIGEST_NOMEM;
-          if(Curl_raw_equal(content, "MD5-sess"))
-            d->algo = CURLDIGESTALGO_MD5SESS;
-          else if(Curl_raw_equal(content, "MD5"))
-            d->algo = CURLDIGESTALGO_MD5;
-          else
-            return CURLDIGEST_BADALGO;
-        }
-        else {
-          /* unknown specifier, ignore it! */
-        }
-      }
-      else
-        break; /* we're done here */
-
-      /* pass all additional spaces here */
-      while(*header && ISSPACE(*header))
-        header++;
-      if(',' == *header)
-        /* allow the list to be comma-separated */
-        header++;
-    }
-    /* We had a nonce since before, and we got another one now without
-       'stale=true'. This means we provided bad credentials in the previous
-       request */
-    if(before && !d->stale)
-      return CURLDIGEST_BAD;
-
-    /* We got this header without a nonce, that's a bad Digest line! */
-    if(!d->nonce)
-      return CURLDIGEST_BAD;
-  }
-  else
-    /* else not a digest, get out */
-    return CURLDIGEST_NONE;
-
-  return CURLDIGEST_FINE;
-}
-
-/* convert md5 chunk to RFC2617 (section 3.1.3) -suitable ascii string*/
-static void md5_to_ascii(unsigned char *source, /* 16 bytes */
-                         unsigned char *dest) /* 33 bytes */
-{
-  int i;
-  for(i=0; i<16; i++)
-    snprintf((char *)&dest[i*2], 3, "%02x", source[i]);
-}
-
-CURLcode Curl_output_digest(struct connectdata *conn,
-                            bool proxy,
-                            const unsigned char *request,
-                            const unsigned char *uripath)
-{
-  /* We have a Digest setup for this, use it!  Now, to get all the details for
-     this sorted out, I must urge you dear friend to read up on the RFC2617
-     section 3.2.2, */
-  unsigned char md5buf[16]; /* 16 bytes/128 bits */
-  unsigned char request_digest[33];
-  unsigned char *md5this;
-  unsigned char *ha1;
-  unsigned char ha2[33];/* 32 digits and 1 zero byte */
-  char cnoncebuf[7];
-  char *cnonce;
-  char *tmp = NULL;
-  struct timeval now;
-
-  char **allocuserpwd;
-  const char *userp;
-  const char *passwdp;
-  struct auth *authp;
-
-  struct SessionHandle *data = conn->data;
-  struct digestdata *d;
-#ifdef CURL_DOES_CONVERSIONS
-  CURLcode rc;
-/* The CURL_OUTPUT_DIGEST_CONV macro below is for non-ASCII machines.
-   It converts digest text to ASCII so the MD5 will be correct for
-   what ultimately goes over the network.
-*/
-#define CURL_OUTPUT_DIGEST_CONV(a, b) \
-  rc = Curl_convert_to_network(a, (char *)b, strlen((const char*)b)); \
-  if(rc != CURLE_OK) { \
-    free(b); \
-    return rc; \
-  }
-#else
-#define CURL_OUTPUT_DIGEST_CONV(a, b)
-#endif /* CURL_DOES_CONVERSIONS */
-
-  if(proxy) {
-    d = &data->state.proxydigest;
-    allocuserpwd = &conn->allocptr.proxyuserpwd;
-    userp = conn->proxyuser;
-    passwdp = conn->proxypasswd;
-    authp = &data->state.authproxy;
-  }
-  else {
-    d = &data->state.digest;
-    allocuserpwd = &conn->allocptr.userpwd;
-    userp = conn->user;
-    passwdp = conn->passwd;
-    authp = &data->state.authhost;
-  }
-
-  if(*allocuserpwd) {
-    Curl_safefree(*allocuserpwd);
-    *allocuserpwd = NULL;
-  }
-
-  /* not set means empty */
-  if(!userp)
-    userp="";
-
-  if(!passwdp)
-    passwdp="";
-
-  if(!d->nonce) {
-    authp->done = FALSE;
-    return CURLE_OK;
-  }
-  authp->done = TRUE;
-
-  if(!d->nc)
-    d->nc = 1;
-
-  if(!d->cnonce) {
-    /* Generate a cnonce */
-    now = Curl_tvnow();
-    snprintf(cnoncebuf, sizeof(cnoncebuf), "%06ld", (long)now.tv_sec);
-    if(Curl_base64_encode(data, cnoncebuf, strlen(cnoncebuf), &cnonce))
-      d->cnonce = cnonce;
-    else
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-  /*
-    if the algorithm is "MD5" or unspecified (which then defaults to MD5):
-
-    A1 = unq(username-value) ":" unq(realm-value) ":" passwd
-
-    if the algorithm is "MD5-sess" then:
-
-    A1 = H( unq(username-value) ":" unq(realm-value) ":" passwd )
-         ":" unq(nonce-value) ":" unq(cnonce-value)
-  */
-
-  md5this = (unsigned char *)
-    aprintf("%s:%s:%s", userp, d->realm, passwdp);
-  if(!md5this)
-    return CURLE_OUT_OF_MEMORY;
-
-  CURL_OUTPUT_DIGEST_CONV(data, md5this); /* convert on non-ASCII machines */
-  Curl_md5it(md5buf, md5this);
-  free(md5this); /* free this again */
-
-  ha1 = malloc(33); /* 32 digits and 1 zero byte */
-  if(!ha1)
-    return CURLE_OUT_OF_MEMORY;
-
-  md5_to_ascii(md5buf, ha1);
-
-  if(d->algo == CURLDIGESTALGO_MD5SESS) {
-    /* nonce and cnonce are OUTSIDE the hash */
-    tmp = aprintf("%s:%s:%s", ha1, d->nonce, d->cnonce);
-    if(!tmp)
-      return CURLE_OUT_OF_MEMORY;
-    CURL_OUTPUT_DIGEST_CONV(data, tmp); /* convert on non-ASCII machines */
-    Curl_md5it(md5buf, (unsigned char *)tmp);
-    free(tmp); /* free this again */
-    md5_to_ascii(md5buf, ha1);
-  }
-
-  /*
-    If the "qop" directive's value is "auth" or is unspecified, then A2 is:
-
-      A2       = Method ":" digest-uri-value
-
-          If the "qop" value is "auth-int", then A2 is:
-
-      A2       = Method ":" digest-uri-value ":" H(entity-body)
-
-    (The "Method" value is the HTTP request method as specified in section
-    5.1.1 of RFC 2616)
-  */
-
-  /* So IE browsers < v7 cut off the URI part at the query part when they
-     evaluate the MD5 and some (IIS?) servers work with them so we may need to
-     do the Digest IE-style. Note that the different ways cause different MD5
-     sums to get sent.
-
-     Apache servers can be set to do the Digest IE-style automatically using
-     the BrowserMatch feature:
-     http://httpd.apache.org/docs/2.2/mod/mod_auth_digest.html#msie
-
-     Further details on Digest implementation differences:
-     http://www.fngtps.com/2006/09/http-authentication
-  */
-  if(authp->iestyle && ((tmp = strchr((char *)uripath, '?')) != NULL)) {
-    md5this = (unsigned char *)aprintf("%s:%.*s", request,
-                                       (int)(tmp - (char *)uripath), uripath);
-  }
-  else
-    md5this = (unsigned char *)aprintf("%s:%s", request, uripath);
-
-  if(!md5this) {
-    free(ha1);
-    return CURLE_OUT_OF_MEMORY;
-  }
-
-  if(d->qop && Curl_raw_equal(d->qop, "auth-int")) {
-    /* We don't support auth-int at the moment. I can't see a easy way to get
-       entity-body here */
-    /* TODO: Append H(entity-body)*/
-  }
-  CURL_OUTPUT_DIGEST_CONV(data, md5this); /* convert on non-ASCII machines */
-  Curl_md5it(md5buf, md5this);
-  free(md5this); /* free this again */
-  md5_to_ascii(md5buf, ha2);
-
-  if(d->qop) {
-    md5this = (unsigned char *)aprintf("%s:%s:%08x:%s:%s:%s",
-                                       ha1,
-                                       d->nonce,
-                                       d->nc,
-                                       d->cnonce,
-                                       d->qop,
-                                       ha2);
-  }
-  else {
-    md5this = (unsigned char *)aprintf("%s:%s:%s",
-                                       ha1,
-                                       d->nonce,
-                                       ha2);
-  }
-  free(ha1);
-  if(!md5this)
-    return CURLE_OUT_OF_MEMORY;
-
-  CURL_OUTPUT_DIGEST_CONV(data, md5this); /* convert on non-ASCII machines */
-  Curl_md5it(md5buf, md5this);
-  free(md5this); /* free this again */
-  md5_to_ascii(md5buf, request_digest);
-
-  /* for test case 64 (snooped from a Mozilla 1.3a request)
-
-    Authorization: Digest username="testuser", realm="testrealm", \
-    nonce="1053604145", uri="/64", response="c55f7f30d83d774a3d2dcacf725abaca"
-  */
-
-  if(d->qop) {
-    *allocuserpwd =
-      aprintf( "%sAuthorization: Digest "
-               "username=\"%s\", "
-               "realm=\"%s\", "
-               "nonce=\"%s\", "
-               "uri=\"%s\", "
-               "cnonce=\"%s\", "
-               "nc=%08x, "
-               "qop=\"%s\", "
-               "response=\"%s\"",
-               proxy?"Proxy-":"",
-               userp,
-               d->realm,
-               d->nonce,
-               uripath, /* this is the PATH part of the URL */
-               d->cnonce,
-               d->nc,
-               d->qop,
-               request_digest);
-
-    if(Curl_raw_equal(d->qop, "auth"))
-      d->nc++; /* The nc (from RFC) has to be a 8 hex digit number 0 padded
-                  which tells to the server how many times you are using the
-                  same nonce in the qop=auth mode. */
-  }
-  else {
-    *allocuserpwd =
-      aprintf( "%sAuthorization: Digest "
-               "username=\"%s\", "
-               "realm=\"%s\", "
-               "nonce=\"%s\", "
-               "uri=\"%s\", "
-               "response=\"%s\"",
-               proxy?"Proxy-":"",
-               userp,
-               d->realm,
-               d->nonce,
-               uripath, /* this is the PATH part of the URL */
-               request_digest);
-  }
-  if(!*allocuserpwd)
-    return CURLE_OUT_OF_MEMORY;
-
-  /* Add optional fields */
-  if(d->opaque) {
-    /* append opaque */
-    tmp = aprintf("%s, opaque=\"%s\"", *allocuserpwd, d->opaque);
-    if(!tmp)
-      return CURLE_OUT_OF_MEMORY;
-    free(*allocuserpwd);
-    *allocuserpwd = tmp;
-  }
-
-  if(d->algorithm) {
-    /* append algorithm */
-    tmp = aprintf("%s, algorithm=\"%s\"", *allocuserpwd, d->algorithm);
-    if(!tmp)
-      return CURLE_OUT_OF_MEMORY;
-    free(*allocuserpwd);
-    *allocuserpwd = tmp;
-  }
-
-  /* append CRLF + zero (3 bytes) to the userpwd header */
-  tmp = realloc(*allocuserpwd, strlen(*allocuserpwd) + 3);
-  if(!tmp)
-    return CURLE_OUT_OF_MEMORY;
-  strcat(tmp, "\r\n");
-  *allocuserpwd = tmp;
-
-  return CURLE_OK;
-}
-
-void Curl_digest_cleanup_one(struct digestdata *d)
-{
-  if(d->nonce)
-    free(d->nonce);
-  d->nonce = NULL;
-
-  if(d->cnonce)
-    free(d->cnonce);
-  d->cnonce = NULL;
-
-  if(d->realm)
-    free(d->realm);
-  d->realm = NULL;
-
-  if(d->opaque)
-    free(d->opaque);
-  d->opaque = NULL;
-
-  if(d->qop)
-    free(d->qop);
-  d->qop = NULL;
-
-  if(d->algorithm)
-    free(d->algorithm);
-  d->algorithm = NULL;
-
-  d->nc = 0;
-  d->algo = CURLDIGESTALGO_MD5; /* default algorithm */
-  d->stale = FALSE; /* default means normal, not stale */
-}
-
-
-void Curl_digest_cleanup(struct SessionHandle *data)
-{
-  Curl_digest_cleanup_one(&data->state.digest);
-  Curl_digest_cleanup_one(&data->state.proxydigest);
-}
-
-#endif
diff --git a/src/other/curl/lib/http_digest.h b/src/other/curl/lib/http_digest.h
deleted file mode 100644
index 8c96378..0000000
--- a/src/other/curl/lib/http_digest.h
+++ /dev/null
@@ -1,57 +0,0 @@
-#ifndef __HTTP_DIGEST_H
-#define __HTTP_DIGEST_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2006, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-typedef enum {
-  CURLDIGEST_NONE, /* not a digest */
-  CURLDIGEST_BAD,  /* a digest, but one we don't like */
-  CURLDIGEST_BADALGO, /* unsupported algorithm requested */
-  CURLDIGEST_NOMEM,
-  CURLDIGEST_FINE, /* a digest we act on */
-
-  CURLDIGEST_LAST  /* last entry in this enum, don't use */
-} CURLdigest;
-
-enum {
-  CURLDIGESTALGO_MD5,
-  CURLDIGESTALGO_MD5SESS
-};
-
-/* this is for digest header input */
-CURLdigest Curl_input_digest(struct connectdata *conn,
-                             bool proxy, const char *header);
-
-/* this is for creating digest header output */
-CURLcode Curl_output_digest(struct connectdata *conn,
-                            bool proxy,
-                            const unsigned char *request,
-                            const unsigned char *uripath);
-void Curl_digest_cleanup_one(struct digestdata *dig);
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_CRYPTO_AUTH)
-void Curl_digest_cleanup(struct SessionHandle *data);
-#else
-#define Curl_digest_cleanup(x) do {} while(0)
-#endif
-
-#endif
diff --git a/src/other/curl/lib/http_negotiate.c b/src/other/curl/lib/http_negotiate.c
deleted file mode 100644
index 956f734..0000000
--- a/src/other/curl/lib/http_negotiate.c
+++ /dev/null
@@ -1,358 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include "setup.h"
-
-#ifdef HAVE_GSSAPI
-#ifdef HAVE_OLD_GSSMIT
-#define GSS_C_NT_HOSTBASED_SERVICE gss_nt_service_name
-#endif
-
-#ifndef CURL_DISABLE_HTTP
- /* -- WIN32 approved -- */
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-
-#include "urldata.h"
-#include "sendf.h"
-#include "rawstr.h"
-#include "curl_base64.h"
-#include "http_negotiate.h"
-#include "curl_memory.h"
-
-#ifdef HAVE_SPNEGO
-#  include <spnegohelp.h>
-#  ifdef USE_SSLEAY
-#    ifdef USE_OPENSSL
-#      include <openssl/objects.h>
-#    else
-#      include <objects.h>
-#    endif
-#  else
-#    error "Can't compile SPNEGO support without OpenSSL."
-#  endif
-#endif
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-static int
-get_gss_name(struct connectdata *conn, bool proxy, gss_name_t *server)
-{
-  struct negotiatedata *neg_ctx = proxy?&conn->data->state.proxyneg:
-    &conn->data->state.negotiate;
-  OM_uint32 major_status, minor_status;
-  gss_buffer_desc token = GSS_C_EMPTY_BUFFER;
-  char name[2048];
-  const char* service;
-
-  /* GSSAPI implementation by Globus (known as GSI) requires the name to be
-     of form "<service>/<fqdn>" instead of <service>@<fqdn> (ie. slash instead
-     of at-sign). Also GSI servers are often identified as 'host' not 'khttp'.
-     Change following lines if you want to use GSI */
-
-  /* IIS uses the <service>@<fqdn> form but uses 'http' as the service name */
-
-  if(neg_ctx->gss)
-    service = "KHTTP";
-  else
-    service = "HTTP";
-
-  token.length = strlen(service) + 1 + strlen(proxy ? conn->proxy.name :
-                                              conn->host.name) + 1;
-  if(token.length + 1 > sizeof(name))
-    return EMSGSIZE;
-
-  snprintf(name, sizeof(name), "%s@%s", service, proxy ? conn->proxy.name :
-           conn->host.name);
-
-  token.value = (void *) name;
-  major_status = gss_import_name(&minor_status,
-                                 &token,
-                                 GSS_C_NT_HOSTBASED_SERVICE,
-                                 server);
-
-  return GSS_ERROR(major_status) ? -1 : 0;
-}
-
-static void
-log_gss_error(struct connectdata *conn, OM_uint32 error_status, const char *prefix)
-{
-  OM_uint32 maj_stat, min_stat;
-  OM_uint32 msg_ctx = 0;
-  gss_buffer_desc status_string;
-  char buf[1024];
-  size_t len;
-
-  snprintf(buf, sizeof(buf), "%s", prefix);
-  len = strlen(buf);
-  do {
-    maj_stat = gss_display_status(&min_stat,
-                                  error_status,
-                                  GSS_C_MECH_CODE,
-                                  GSS_C_NO_OID,
-                                  &msg_ctx,
-                                  &status_string);
-      if(sizeof(buf) > len + status_string.length + 1) {
-        snprintf(buf + len, sizeof(buf) - len,
-                 ": %s", (char*) status_string.value);
-      len += status_string.length;
-    }
-    gss_release_buffer(&min_stat, &status_string);
-  } while(!GSS_ERROR(maj_stat) && msg_ctx != 0);
-
-  infof(conn->data, "%s", buf);
-}
-
-/* returning zero (0) means success, everything else is treated as "failure"
-   with no care exactly what the failure was */
-int Curl_input_negotiate(struct connectdata *conn, bool proxy,
-                         const char *header)
-{
-  struct negotiatedata *neg_ctx = proxy?&conn->data->state.proxyneg:
-    &conn->data->state.negotiate;
-  OM_uint32 major_status, minor_status, minor_status2;
-  gss_buffer_desc input_token = GSS_C_EMPTY_BUFFER;
-  gss_buffer_desc output_token = GSS_C_EMPTY_BUFFER;
-  int ret;
-  size_t len, rawlen;
-  bool gss;
-  const char* protocol;
-
-  while(*header && ISSPACE(*header))
-    header++;
-  if(checkprefix("GSS-Negotiate", header)) {
-    protocol = "GSS-Negotiate";
-    gss = TRUE;
-  }
-  else if(checkprefix("Negotiate", header)) {
-    protocol = "Negotiate";
-    gss = FALSE;
-  }
-  else
-    return -1;
-
-  if(neg_ctx->context) {
-    if(neg_ctx->gss != gss) {
-      return -1;
-    }
-  }
-  else {
-    neg_ctx->protocol = protocol;
-    neg_ctx->gss = gss;
-  }
-
-  if(neg_ctx->context && neg_ctx->status == GSS_S_COMPLETE) {
-    /* We finished succesfully our part of authentication, but server
-     * rejected it (since we're again here). Exit with an error since we
-     * can't invent anything better */
-    Curl_cleanup_negotiate(conn->data);
-    return -1;
-  }
-
-  if(neg_ctx->server_name == NULL &&
-      (ret = get_gss_name(conn, proxy, &neg_ctx->server_name)))
-    return ret;
-
-  header += strlen(neg_ctx->protocol);
-  while(*header && ISSPACE(*header))
-    header++;
-
-  len = strlen(header);
-  if(len > 0) {
-    rawlen = Curl_base64_decode(header,
-                                (unsigned char **)&input_token.value);
-    if(rawlen == 0)
-      return -1;
-    input_token.length = rawlen;
-
-#ifdef HAVE_SPNEGO /* Handle SPNEGO */
-    if(checkprefix("Negotiate", header)) {
-        ASN1_OBJECT *   object            = NULL;
-        int             rc                = 1;
-        unsigned char * spnegoToken       = NULL;
-        size_t          spnegoTokenLength = 0;
-        unsigned char * mechToken         = NULL;
-        size_t          mechTokenLength   = 0;
-
-        if(input_token.value == NULL)
-          return CURLE_OUT_OF_MEMORY;
-
-        spnegoToken = malloc(input_token.length);
-        if(spnegoToken == NULL)
-          return CURLE_OUT_OF_MEMORY;
-
-        spnegoTokenLength = input_token.length;
-
-        object = OBJ_txt2obj ("1.2.840.113554.1.2.2", 1);
-        if(!parseSpnegoTargetToken(spnegoToken,
-                                    spnegoTokenLength,
-                                    NULL,
-                                    NULL,
-                                    &mechToken,
-                                    &mechTokenLength,
-                                    NULL,
-                                    NULL)) {
-          free(spnegoToken);
-          spnegoToken = NULL;
-          infof(conn->data, "Parse SPNEGO Target Token failed\n");
-        }
-        else {
-          free(input_token.value);
-          input_token.value = malloc(mechTokenLength);
-          if (input_token.value == NULL)
-            return CURLE_OUT_OF_MEMORY;
-
-          memcpy(input_token.value, mechToken,mechTokenLength);
-          input_token.length = mechTokenLength;
-          free(mechToken);
-          mechToken = NULL;
-          infof(conn->data, "Parse SPNEGO Target Token succeeded\n");
-        }
-    }
-#endif
-  }
-
-  major_status = gss_init_sec_context(&minor_status,
-                                      GSS_C_NO_CREDENTIAL,
-                                      &neg_ctx->context,
-                                      neg_ctx->server_name,
-                                      GSS_C_NO_OID,
-                                      GSS_C_DELEG_FLAG,
-                                      0,
-                                      GSS_C_NO_CHANNEL_BINDINGS,
-                                      &input_token,
-                                      NULL,
-                                      &output_token,
-                                      NULL,
-                                      NULL);
-  if(input_token.length > 0)
-    gss_release_buffer(&minor_status2, &input_token);
-  neg_ctx->status = major_status;
-  if(GSS_ERROR(major_status)) {
-    /* Curl_cleanup_negotiate(conn->data) ??? */
-    log_gss_error(conn, minor_status,
-                  "gss_init_sec_context() failed: ");
-    return -1;
-  }
-
-  if(output_token.length == 0) {
-    return -1;
-  }
-
-  neg_ctx->output_token = output_token;
-  /* conn->bits.close = FALSE; */
-
-  return 0;
-}
-
-
-CURLcode Curl_output_negotiate(struct connectdata *conn, bool proxy)
-{
-  struct negotiatedata *neg_ctx = proxy?&conn->data->state.proxyneg:
-    &conn->data->state.negotiate;
-  char *encoded = NULL;
-  size_t len;
-
-#ifdef HAVE_SPNEGO /* Handle SPNEGO */
-  if(checkprefix("Negotiate", neg_ctx->protocol)) {
-    ASN1_OBJECT *   object            = NULL;
-    int             rc                = 1;
-    unsigned char * spnegoToken       = NULL;
-    size_t          spnegoTokenLength = 0;
-    unsigned char * responseToken       = NULL;
-    size_t          responseTokenLength = 0;
-
-    responseToken = malloc(neg_ctx->output_token.length);
-    if( responseToken == NULL)
-      return CURLE_OUT_OF_MEMORY;
-    memcpy(responseToken, neg_ctx->output_token.value,
-           neg_ctx->output_token.length);
-    responseTokenLength = neg_ctx->output_token.length;
-
-    object=OBJ_txt2obj ("1.2.840.113554.1.2.2", 1);
-    if(!makeSpnegoInitialToken (object,
-                                 responseToken,
-                                 responseTokenLength,
-                                 &spnegoToken,
-                                 &spnegoTokenLength)) {
-      free(responseToken);
-      responseToken = NULL;
-      infof(conn->data, "Make SPNEGO Initial Token failed\n");
-    }
-    else {
-      free(neg_ctx->output_token.value);
-      responseToken = NULL;
-      neg_ctx->output_token.value = malloc(spnegoTokenLength);
-      memcpy(neg_ctx->output_token.value, spnegoToken,spnegoTokenLength);
-      neg_ctx->output_token.length = spnegoTokenLength;
-      free(spnegoToken);
-      spnegoToken = NULL;
-      infof(conn->data, "Make SPNEGO Initial Token succeeded\n");
-    }
-  }
-#endif
-  len = Curl_base64_encode(conn->data,
-                           neg_ctx->output_token.value,
-                           neg_ctx->output_token.length,
-                           &encoded);
-
-  if(len == 0)
-    return CURLE_OUT_OF_MEMORY;
-
-  conn->allocptr.userpwd =
-    aprintf("%sAuthorization: %s %s\r\n", proxy ? "Proxy-" : "",
-            neg_ctx->protocol, encoded);
-  free(encoded);
-  Curl_cleanup_negotiate (conn->data);
-  return (conn->allocptr.userpwd == NULL) ? CURLE_OUT_OF_MEMORY : CURLE_OK;
-}
-
-static void cleanup(struct negotiatedata *neg_ctx)
-{
-  OM_uint32 minor_status;
-  if(neg_ctx->context != GSS_C_NO_CONTEXT)
-    gss_delete_sec_context(&minor_status, &neg_ctx->context, GSS_C_NO_BUFFER);
-
-  if(neg_ctx->output_token.length != 0)
-    gss_release_buffer(&minor_status, &neg_ctx->output_token);
-
-  if(neg_ctx->server_name != GSS_C_NO_NAME)
-    gss_release_name(&minor_status, &neg_ctx->server_name);
-
-  memset(neg_ctx, 0, sizeof(*neg_ctx));
-}
-
-void Curl_cleanup_negotiate(struct SessionHandle *data)
-{
-  cleanup(&data->state.negotiate);
-  cleanup(&data->state.proxyneg);
-}
-
-
-#endif
-#endif
diff --git a/src/other/curl/lib/http_negotiate.h b/src/other/curl/lib/http_negotiate.h
deleted file mode 100644
index 35501f0..0000000
--- a/src/other/curl/lib/http_negotiate.h
+++ /dev/null
@@ -1,38 +0,0 @@
-#ifndef HEADER_CURL_HTTP_NEGOTIATE_H
-#define HEADER_CURL_HTTP_NEGOTIATE_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#ifdef HAVE_GSSAPI
-
-/* this is for Negotiate header input */
-int Curl_input_negotiate(struct connectdata *conn, bool proxy,
-                         const char *header);
-
-/* this is for creating Negotiate header output */
-CURLcode Curl_output_negotiate(struct connectdata *conn, bool proxy);
-
-void Curl_cleanup_negotiate(struct SessionHandle *data);
-
-#endif /* HAVE_GSSAPI */
-
-#endif /* HEADER_CURL_HTTP_NEGOTIATE_H */
diff --git a/src/other/curl/lib/http_ntlm.c b/src/other/curl/lib/http_ntlm.c
deleted file mode 100644
index 36e538e..0000000
--- a/src/other/curl/lib/http_ntlm.c
+++ /dev/null
@@ -1,1194 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include "setup.h"
-
-/* NTLM details:
-
-   http://davenport.sourceforge.net/ntlm.html
-   http://www.innovation.ch/java/ntlm.html
-
-   Another implementation:
-   http://lxr.mozilla.org/mozilla/source/security/manager/ssl/src/nsNTLMAuthModule.cpp
-
-*/
-
-#ifndef CURL_DISABLE_HTTP
-#ifdef USE_NTLM
-
-#define DEBUG_ME 0
-
-/* -- WIN32 approved -- */
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#if (defined(NETWARE) && !defined(__NOVELL_LIBC__))
-#include <netdb.h>
-#endif
-
-#include "urldata.h"
-#include "easyif.h"  /* for Curl_convert_... prototypes */
-#include "sendf.h"
-#include "rawstr.h"
-#include "curl_base64.h"
-#include "http_ntlm.h"
-#include "url.h"
-#include "curl_memory.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* "NTLMSSP" signature is always in ASCII regardless of the platform */
-#define NTLMSSP_SIGNATURE "\x4e\x54\x4c\x4d\x53\x53\x50"
-
-#ifdef USE_SSLEAY
-#include "ssluse.h"
-#    ifdef USE_OPENSSL
-#      include <openssl/des.h>
-#      ifndef OPENSSL_NO_MD4
-#        include <openssl/md4.h>
-#      endif
-#      include <openssl/md5.h>
-#      include <openssl/ssl.h>
-#      include <openssl/rand.h>
-#    else
-#      include <des.h>
-#      ifndef OPENSSL_NO_MD4
-#        include <md4.h>
-#      endif
-#      include <md5.h>
-#      include <ssl.h>
-#      include <rand.h>
-#    endif
-
-#if OPENSSL_VERSION_NUMBER < 0x00907001L
-#define DES_key_schedule des_key_schedule
-#define DES_cblock des_cblock
-#define DES_set_odd_parity des_set_odd_parity
-#define DES_set_key des_set_key
-#define DES_ecb_encrypt des_ecb_encrypt
-
-/* This is how things were done in the old days */
-#define DESKEY(x) x
-#define DESKEYARG(x) x
-#else
-/* Modern version */
-#define DESKEYARG(x) *x
-#define DESKEY(x) &x
-#endif
-
-#ifdef OPENSSL_NO_MD4
-/* This requires MD4, but OpenSSL was compiled without it */
-#define USE_NTRESPONSES 0
-#define USE_NTLM2SESSION 0
-#endif
-
-#elif defined(USE_GNUTLS)
-
-#include "gtls.h"
-#include <gcrypt.h>
-
-#define MD5_DIGEST_LENGTH 16
-#define MD4_DIGEST_LENGTH 16
-
-#elif defined(USE_WINDOWS_SSPI)
-
-#include "curl_sspi.h"
-
-#else
-#    error "Can't compile NTLM support without a crypto library."
-#endif
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#ifndef USE_NTRESPONSES 
-/* Define this to make the type-3 message include the NT response message */
-#define USE_NTRESPONSES 1
-
-/* Define this to make the type-3 message include the NTLM2Session response
-   message, requires USE_NTRESPONSES. */
-#define USE_NTLM2SESSION 1
-#endif
-
-#ifndef USE_WINDOWS_SSPI
-/* this function converts from the little endian format used in the incoming
-   package to whatever endian format we're using natively */
-static unsigned int readint_le(unsigned char *buf) /* must point to a
-                                                      4 bytes buffer*/
-{
-  return ((unsigned int)buf[0]) | ((unsigned int)buf[1] << 8) |
-    ((unsigned int)buf[2] << 16) | ((unsigned int)buf[3] << 24);
-}
-#endif
-
-#if DEBUG_ME
-# define DEBUG_OUT(x) x
-static void print_flags(FILE *handle, unsigned long flags)
-{
-  if(flags & NTLMFLAG_NEGOTIATE_UNICODE)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_UNICODE ");
-  if(flags & NTLMFLAG_NEGOTIATE_OEM)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_OEM ");
-  if(flags & NTLMFLAG_REQUEST_TARGET)
-    fprintf(handle, "NTLMFLAG_REQUEST_TARGET ");
-  if(flags & (1<<3))
-    fprintf(handle, "NTLMFLAG_UNKNOWN_3 ");
-  if(flags & NTLMFLAG_NEGOTIATE_SIGN)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_SIGN ");
-  if(flags & NTLMFLAG_NEGOTIATE_SEAL)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_SEAL ");
-  if(flags & NTLMFLAG_NEGOTIATE_DATAGRAM_STYLE)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_DATAGRAM_STYLE ");
-  if(flags & NTLMFLAG_NEGOTIATE_LM_KEY)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_LM_KEY ");
-  if(flags & NTLMFLAG_NEGOTIATE_NETWARE)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_NETWARE ");
-  if(flags & NTLMFLAG_NEGOTIATE_NTLM_KEY)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_NTLM_KEY ");
-  if(flags & (1<<10))
-    fprintf(handle, "NTLMFLAG_UNKNOWN_10 ");
-  if(flags & NTLMFLAG_NEGOTIATE_ANONYMOUS)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_ANONYMOUS ");
-  if(flags & NTLMFLAG_NEGOTIATE_DOMAIN_SUPPLIED)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_DOMAIN_SUPPLIED ");
-  if(flags & NTLMFLAG_NEGOTIATE_WORKSTATION_SUPPLIED)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_WORKSTATION_SUPPLIED ");
-  if(flags & NTLMFLAG_NEGOTIATE_LOCAL_CALL)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_LOCAL_CALL ");
-  if(flags & NTLMFLAG_NEGOTIATE_ALWAYS_SIGN)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_ALWAYS_SIGN ");
-  if(flags & NTLMFLAG_TARGET_TYPE_DOMAIN)
-    fprintf(handle, "NTLMFLAG_TARGET_TYPE_DOMAIN ");
-  if(flags & NTLMFLAG_TARGET_TYPE_SERVER)
-    fprintf(handle, "NTLMFLAG_TARGET_TYPE_SERVER ");
-  if(flags & NTLMFLAG_TARGET_TYPE_SHARE)
-    fprintf(handle, "NTLMFLAG_TARGET_TYPE_SHARE ");
-  if(flags & NTLMFLAG_NEGOTIATE_NTLM2_KEY)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_NTLM2_KEY ");
-  if(flags & NTLMFLAG_REQUEST_INIT_RESPONSE)
-    fprintf(handle, "NTLMFLAG_REQUEST_INIT_RESPONSE ");
-  if(flags & NTLMFLAG_REQUEST_ACCEPT_RESPONSE)
-    fprintf(handle, "NTLMFLAG_REQUEST_ACCEPT_RESPONSE ");
-  if(flags & NTLMFLAG_REQUEST_NONNT_SESSION_KEY)
-    fprintf(handle, "NTLMFLAG_REQUEST_NONNT_SESSION_KEY ");
-  if(flags & NTLMFLAG_NEGOTIATE_TARGET_INFO)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_TARGET_INFO ");
-  if(flags & (1<<24))
-    fprintf(handle, "NTLMFLAG_UNKNOWN_24 ");
-  if(flags & (1<<25))
-    fprintf(handle, "NTLMFLAG_UNKNOWN_25 ");
-  if(flags & (1<<26))
-    fprintf(handle, "NTLMFLAG_UNKNOWN_26 ");
-  if(flags & (1<<27))
-    fprintf(handle, "NTLMFLAG_UNKNOWN_27 ");
-  if(flags & (1<<28))
-    fprintf(handle, "NTLMFLAG_UNKNOWN_28 ");
-  if(flags & NTLMFLAG_NEGOTIATE_128)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_128 ");
-  if(flags & NTLMFLAG_NEGOTIATE_KEY_EXCHANGE)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_KEY_EXCHANGE ");
-  if(flags & NTLMFLAG_NEGOTIATE_56)
-    fprintf(handle, "NTLMFLAG_NEGOTIATE_56 ");
-}
-
-static void print_hex(FILE *handle, const char *buf, size_t len)
-{
-  const char *p = buf;
-  fprintf(stderr, "0x");
-  while(len-- > 0)
-    fprintf(stderr, "%02.2x", (unsigned int)*p++);
-}
-#else
-# define DEBUG_OUT(x)
-#endif
-
-/*
-  (*) = A "security buffer" is a triplet consisting of two shorts and one
-  long:
-
-  1. a 'short' containing the length of the buffer in bytes
-  2. a 'short' containing the allocated space for the buffer in bytes
-  3. a 'long' containing the offset to the start of the buffer from the
-     beginning of the NTLM message, in bytes.
-*/
-
-
-CURLntlm Curl_input_ntlm(struct connectdata *conn,
-                         bool proxy,   /* if proxy or not */
-                         const char *header) /* rest of the www-authenticate:
-                                                header */
-{
-  /* point to the correct struct with this */
-  struct ntlmdata *ntlm;
-#ifndef USE_WINDOWS_SSPI
-  static const char type2_marker[] = { 0x02, 0x00, 0x00, 0x00 };
-#endif
-
-  ntlm = proxy?&conn->proxyntlm:&conn->ntlm;
-
-  /* skip initial whitespaces */
-  while(*header && ISSPACE(*header))
-    header++;
-
-  if(checkprefix("NTLM", header)) {
-    header += strlen("NTLM");
-
-    while(*header && ISSPACE(*header))
-      header++;
-
-    if(*header) {
-      /* We got a type-2 message here:
-
-         Index   Description         Content
-         0       NTLMSSP Signature   Null-terminated ASCII "NTLMSSP"
-                                     (0x4e544c4d53535000)
-         8       NTLM Message Type   long (0x02000000)
-         12      Target Name         security buffer(*)
-         20      Flags               long
-         24      Challenge           8 bytes
-         (32)    Context (optional)  8 bytes (two consecutive longs)
-         (40)    Target Information  (optional) security buffer(*)
-         32 (48) start of data block
-      */
-      size_t size;
-      unsigned char *buffer;
-      size = Curl_base64_decode(header, &buffer);
-      if(!buffer)
-        return CURLNTLM_BAD;
-
-      ntlm->state = NTLMSTATE_TYPE2; /* we got a type-2 */
-
-#ifdef USE_WINDOWS_SSPI
-      ntlm->type_2 = malloc(size+1);
-      if(ntlm->type_2 == NULL) {
-        free(buffer);
-        return CURLE_OUT_OF_MEMORY;
-      }
-      ntlm->n_type_2 = size;
-      memcpy(ntlm->type_2, buffer, size);
-#else
-      ntlm->flags = 0;
-
-      if((size < 32) ||
-         (memcmp(buffer, NTLMSSP_SIGNATURE, 8) != 0) ||
-         (memcmp(buffer+8, type2_marker, sizeof(type2_marker)) != 0)) {
-        /* This was not a good enough type-2 message */
-        free(buffer);
-        return CURLNTLM_BAD;
-      }
-
-      ntlm->flags = readint_le(&buffer[20]);
-      memcpy(ntlm->nonce, &buffer[24], 8);
-
-      DEBUG_OUT({
-        fprintf(stderr, "**** TYPE2 header flags=0x%08.8lx ", ntlm->flags);
-        print_flags(stderr, ntlm->flags);
-        fprintf(stderr, "\n                  nonce=");
-        print_hex(stderr, (char *)ntlm->nonce, 8);
-        fprintf(stderr, "\n****\n");
-        fprintf(stderr, "**** Header %s\n ", header);
-      });
-#endif
-      free(buffer);
-    }
-    else {
-      if(ntlm->state >= NTLMSTATE_TYPE1)
-        return CURLNTLM_BAD;
-
-      ntlm->state = NTLMSTATE_TYPE1; /* we should sent away a type-1 */
-    }
-  }
-  return CURLNTLM_FINE;
-}
-
-#ifndef USE_WINDOWS_SSPI
-
-#ifdef USE_SSLEAY
-/*
- * Turns a 56 bit key into the 64 bit, odd parity key and sets the key.  The
- * key schedule ks is also set.
- */
-static void setup_des_key(const unsigned char *key_56,
-                          DES_key_schedule DESKEYARG(ks))
-{
-  DES_cblock key;
-
-  key[0] = key_56[0];
-  key[1] = (unsigned char)(((key_56[0] << 7) & 0xFF) | (key_56[1] >> 1));
-  key[2] = (unsigned char)(((key_56[1] << 6) & 0xFF) | (key_56[2] >> 2));
-  key[3] = (unsigned char)(((key_56[2] << 5) & 0xFF) | (key_56[3] >> 3));
-  key[4] = (unsigned char)(((key_56[3] << 4) & 0xFF) | (key_56[4] >> 4));
-  key[5] = (unsigned char)(((key_56[4] << 3) & 0xFF) | (key_56[5] >> 5));
-  key[6] = (unsigned char)(((key_56[5] << 2) & 0xFF) | (key_56[6] >> 6));
-  key[7] = (unsigned char) ((key_56[6] << 1) & 0xFF);
-
-  DES_set_odd_parity(&key);
-  DES_set_key(&key, ks);
-}
-#elif defined(USE_GNUTLS)
-
-/*
- * Turns a 56 bit key into the 64 bit, odd parity key and sets the key.
- */
-static void setup_des_key(const unsigned char *key_56,
-                          gcry_cipher_hd_t *des)
-{
-  char key[8];
-
-  key[0] = key_56[0];
-  key[1] = (unsigned char)(((key_56[0] << 7) & 0xFF) | (key_56[1] >> 1));
-  key[2] = (unsigned char)(((key_56[1] << 6) & 0xFF) | (key_56[2] >> 2));
-  key[3] = (unsigned char)(((key_56[2] << 5) & 0xFF) | (key_56[3] >> 3));
-  key[4] = (unsigned char)(((key_56[3] << 4) & 0xFF) | (key_56[4] >> 4));
-  key[5] = (unsigned char)(((key_56[4] << 3) & 0xFF) | (key_56[5] >> 5));
-  key[6] = (unsigned char)(((key_56[5] << 2) & 0xFF) | (key_56[6] >> 6));
-  key[7] = (unsigned char) ((key_56[6] << 1) & 0xFF);
-
-  gcry_cipher_setkey(*des, key, 8);
-}
-#endif
-
- /*
-  * takes a 21 byte array and treats it as 3 56-bit DES keys. The
-  * 8 byte plaintext is encrypted with each key and the resulting 24
-  * bytes are stored in the results array.
-  */
-static void lm_resp(const unsigned char *keys,
-                    const unsigned char *plaintext,
-                    unsigned char *results)
-{
-#ifdef USE_SSLEAY
-  DES_key_schedule ks;
-
-  setup_des_key(keys, DESKEY(ks));
-  DES_ecb_encrypt((DES_cblock*) plaintext, (DES_cblock*) results,
-                  DESKEY(ks), DES_ENCRYPT);
-
-  setup_des_key(keys+7, DESKEY(ks));
-  DES_ecb_encrypt((DES_cblock*) plaintext, (DES_cblock*) (results+8),
-                  DESKEY(ks), DES_ENCRYPT);
-
-  setup_des_key(keys+14, DESKEY(ks));
-  DES_ecb_encrypt((DES_cblock*) plaintext, (DES_cblock*) (results+16),
-                  DESKEY(ks), DES_ENCRYPT);
-#elif defined(USE_GNUTLS)
-  gcry_cipher_hd_t des;
-
-  gcry_cipher_open(&des, GCRY_CIPHER_DES, GCRY_CIPHER_MODE_ECB, 0);
-  setup_des_key(keys, &des);
-  gcry_cipher_encrypt(des, results, 8, plaintext, 8);
-  gcry_cipher_close(des);
-
-  gcry_cipher_open(&des, GCRY_CIPHER_DES, GCRY_CIPHER_MODE_ECB, 0);
-  setup_des_key(keys+7, &des);
-  gcry_cipher_encrypt(des, results+8, 8, plaintext, 8);
-  gcry_cipher_close(des);
-
-  gcry_cipher_open(&des, GCRY_CIPHER_DES, GCRY_CIPHER_MODE_ECB, 0);
-  setup_des_key(keys+14, &des);
-  gcry_cipher_encrypt(des, results+16, 8, plaintext, 8);
-  gcry_cipher_close(des);
-#endif
-}
-
-
-/*
- * Set up lanmanager hashed password
- */
-static void mk_lm_hash(struct SessionHandle *data,
-                       const char *password,
-                       unsigned char *lmbuffer /* 21 bytes */)
-{
-  unsigned char pw[14];
-  static const unsigned char magic[] = {
-    0x4B, 0x47, 0x53, 0x21, 0x40, 0x23, 0x24, 0x25 /* i.e. KGS!@#$% */
-  };
-  size_t len = CURLMIN(strlen(password), 14);
-
-  Curl_strntoupper((char *)pw, password, len);
-  memset(&pw[len], 0, 14-len);
-
-#ifdef CURL_DOES_CONVERSIONS
-  /*
-   * The LanManager hashed password needs to be created using the
-   * password in the network encoding not the host encoding.
-   */
-  if(data)
-    Curl_convert_to_network(data, (char *)pw, 14);
-#else
-  (void)data;
-#endif
-
-  {
-    /* Create LanManager hashed password. */
-
-#ifdef USE_SSLEAY
-    DES_key_schedule ks;
-
-    setup_des_key(pw, DESKEY(ks));
-    DES_ecb_encrypt((DES_cblock *)magic, (DES_cblock *)lmbuffer,
-                    DESKEY(ks), DES_ENCRYPT);
-
-    setup_des_key(pw+7, DESKEY(ks));
-    DES_ecb_encrypt((DES_cblock *)magic, (DES_cblock *)(lmbuffer+8),
-                    DESKEY(ks), DES_ENCRYPT);
-#elif defined(USE_GNUTLS)
-    gcry_cipher_hd_t des;
-
-    gcry_cipher_open(&des, GCRY_CIPHER_DES, GCRY_CIPHER_MODE_ECB, 0);
-    setup_des_key(pw, &des);
-    gcry_cipher_encrypt(des, lmbuffer, 8, magic, 8);
-    gcry_cipher_close(des);
-
-    gcry_cipher_open(&des, GCRY_CIPHER_DES, GCRY_CIPHER_MODE_ECB, 0);
-    setup_des_key(pw+7, &des);
-    gcry_cipher_encrypt(des, lmbuffer+8, 8, magic, 8);
-    gcry_cipher_close(des);
-#endif
-
-    memset(lmbuffer + 16, 0, 21 - 16);
-  }
-  }
-
-#if USE_NTRESPONSES
-static void ascii_to_unicode_le(unsigned char *dest, const char *src,
-                               size_t srclen)
-{
-  size_t i;
-  for (i=0; i<srclen; i++) {
-    dest[2*i]   = (unsigned char)src[i];
-    dest[2*i+1] =   '\0';
-  }
-}
-
-/*
- * Set up nt hashed passwords
- */
-static CURLcode mk_nt_hash(struct SessionHandle *data,
-                           const char *password,
-                           unsigned char *ntbuffer /* 21 bytes */)
-{
-  size_t len = strlen(password);
-  unsigned char *pw = malloc(len*2);
-  if(!pw)
-    return CURLE_OUT_OF_MEMORY;
-
-  ascii_to_unicode_le(pw, password, len);
-
-#ifdef CURL_DOES_CONVERSIONS
-  /*
-   * The NT hashed password needs to be created using the
-   * password in the network encoding not the host encoding.
-   */
-  if(data)
-    Curl_convert_to_network(data, (char *)pw, len*2);
-#else
-  (void)data;
-#endif
-
-  {
-    /* Create NT hashed password. */
-#ifdef USE_SSLEAY
-    MD4_CTX MD4pw;
-    MD4_Init(&MD4pw);
-    MD4_Update(&MD4pw, pw, 2*len);
-    MD4_Final(ntbuffer, &MD4pw);
-#elif defined(USE_GNUTLS)
-    gcry_md_hd_t MD4pw;
-    gcry_md_open(&MD4pw, GCRY_MD_MD4, 0);
-    gcry_md_write(MD4pw, pw, 2*len);
-    memcpy (ntbuffer, gcry_md_read (MD4pw, 0), MD4_DIGEST_LENGTH);
-    gcry_md_close(MD4pw);
-#endif
-
-    memset(ntbuffer + 16, 0, 21 - 16);
-  }
-
-  free(pw);
-  return CURLE_OK;
-}
-#endif
-
-
-#endif
-
-#ifdef USE_WINDOWS_SSPI
-
-static void
-ntlm_sspi_cleanup(struct ntlmdata *ntlm)
-{
-  if(ntlm->type_2) {
-    free(ntlm->type_2);
-    ntlm->type_2 = NULL;
-  }
-  if(ntlm->has_handles) {
-    s_pSecFn->DeleteSecurityContext(&ntlm->c_handle);
-    s_pSecFn->FreeCredentialsHandle(&ntlm->handle);
-    ntlm->has_handles = 0;
-  }
-  if(ntlm->p_identity) {
-    if(ntlm->identity.User) free(ntlm->identity.User);
-    if(ntlm->identity.Password) free(ntlm->identity.Password);
-    if(ntlm->identity.Domain) free(ntlm->identity.Domain);
-    ntlm->p_identity = NULL;
-  }
-}
-
-#endif
-
-#define SHORTPAIR(x) ((x) & 0xff), (((x) >> 8) & 0xff)
-#define LONGQUARTET(x) ((x) & 0xff), (((x) >> 8)&0xff), \
-  (((x) >>16)&0xff), (((x)>>24) & 0xff)
-
-#define HOSTNAME_MAX 1024
-
-/* this is for creating ntlm header output */
-CURLcode Curl_output_ntlm(struct connectdata *conn,
-                          bool proxy)
-{
-  const char *domain=""; /* empty */
-  char host [HOSTNAME_MAX+ 1] = ""; /* empty */
-#ifndef USE_WINDOWS_SSPI
-  size_t domlen = strlen(domain);
-  size_t hostlen = strlen(host);
-  size_t hostoff; /* host name offset */
-  size_t domoff;  /* domain name offset */
-#endif
-  size_t size;
-  char *base64=NULL;
-  unsigned char ntlmbuf[1024]; /* enough, unless the user+host+domain is very
-                                  long */
-
-  /* point to the address of the pointer that holds the string to sent to the
-     server, which is for a plain host or for a HTTP proxy */
-  char **allocuserpwd;
-
-  /* point to the name and password for this */
-  const char *userp;
-  const char *passwdp;
-  /* point to the correct struct with this */
-  struct ntlmdata *ntlm;
-  struct auth *authp;
-
-  DEBUGASSERT(conn);
-  DEBUGASSERT(conn->data);
-
-  if(proxy) {
-    allocuserpwd = &conn->allocptr.proxyuserpwd;
-    userp = conn->proxyuser;
-    passwdp = conn->proxypasswd;
-    ntlm = &conn->proxyntlm;
-    authp = &conn->data->state.authproxy;
-  }
-  else {
-    allocuserpwd = &conn->allocptr.userpwd;
-    userp = conn->user;
-    passwdp = conn->passwd;
-    ntlm = &conn->ntlm;
-    authp = &conn->data->state.authhost;
-  }
-  authp->done = FALSE;
-
-  /* not set means empty */
-  if(!userp)
-    userp="";
-
-  if(!passwdp)
-    passwdp="";
-
-#ifdef USE_WINDOWS_SSPI
-  if (s_hSecDll == NULL) {
-    /* not thread safe and leaks - use curl_global_init() to avoid */
-    CURLcode err = Curl_sspi_global_init();
-    if (s_hSecDll == NULL)
-      return err;
-  }
-#endif
-
-  switch(ntlm->state) {
-  case NTLMSTATE_TYPE1:
-  default: /* for the weird cases we (re)start here */
-#ifdef USE_WINDOWS_SSPI
-  {
-    SecBuffer buf;
-    SecBufferDesc desc;
-    SECURITY_STATUS status;
-    ULONG attrs;
-    const char *user;
-    int domlen;
-    TimeStamp tsDummy; /* For Windows 9x compatibility of SPPI calls */
-
-    ntlm_sspi_cleanup(ntlm);
-
-    user = strchr(userp, '\\');
-    if(!user)
-      user = strchr(userp, '/');
-
-    if(user) {
-      domain = userp;
-      domlen = user - userp;
-      user++;
-    }
-    else {
-      user = userp;
-      domain = "";
-      domlen = 0;
-    }
-
-    if(user && *user) {
-      /* note: initialize all of this before doing the mallocs so that
-       * it can be cleaned up later without leaking memory.
-       */
-      ntlm->p_identity = &ntlm->identity;
-      memset(ntlm->p_identity, 0, sizeof(*ntlm->p_identity));
-      if((ntlm->identity.User = (unsigned char *)strdup(user)) == NULL)
-        return CURLE_OUT_OF_MEMORY;
-      ntlm->identity.UserLength = strlen(user);
-      if((ntlm->identity.Password = (unsigned char *)strdup(passwdp)) == NULL)
-        return CURLE_OUT_OF_MEMORY;
-      ntlm->identity.PasswordLength = strlen(passwdp);
-      if((ntlm->identity.Domain = malloc(domlen+1)) == NULL)
-        return CURLE_OUT_OF_MEMORY;
-      strncpy((char *)ntlm->identity.Domain, domain, domlen);
-      ntlm->identity.Domain[domlen] = '\0';
-      ntlm->identity.DomainLength = domlen;
-      ntlm->identity.Flags = SEC_WINNT_AUTH_IDENTITY_ANSI;
-    }
-    else {
-      ntlm->p_identity = NULL;
-    }
-
-    if(s_pSecFn->AcquireCredentialsHandleA(
-          NULL, (char *)"NTLM", SECPKG_CRED_OUTBOUND, NULL, ntlm->p_identity,
-          NULL, NULL, &ntlm->handle, &tsDummy
-          ) != SEC_E_OK) {
-      return CURLE_OUT_OF_MEMORY;
-    }
-
-    desc.ulVersion = SECBUFFER_VERSION;
-    desc.cBuffers  = 1;
-    desc.pBuffers  = &buf;
-    buf.cbBuffer   = sizeof(ntlmbuf);
-    buf.BufferType = SECBUFFER_TOKEN;
-    buf.pvBuffer   = ntlmbuf;
-
-    status = s_pSecFn->InitializeSecurityContextA(&ntlm->handle, NULL,
-                                                 (char *) host,
-                                                 ISC_REQ_CONFIDENTIALITY |
-                                                 ISC_REQ_REPLAY_DETECT |
-                                                 ISC_REQ_CONNECTION,
-                                                 0, SECURITY_NETWORK_DREP,
-                                                 NULL, 0,
-                                                 &ntlm->c_handle, &desc,
-                                                 &attrs, &tsDummy);
-
-    if(status == SEC_I_COMPLETE_AND_CONTINUE ||
-        status == SEC_I_CONTINUE_NEEDED) {
-      s_pSecFn->CompleteAuthToken(&ntlm->c_handle, &desc);
-    }
-    else if(status != SEC_E_OK) {
-      s_pSecFn->FreeCredentialsHandle(&ntlm->handle);
-      return CURLE_RECV_ERROR;
-    }
-
-    ntlm->has_handles = 1;
-    size = buf.cbBuffer;
-  }
-#else
-    hostoff = 0;
-    domoff = hostoff + hostlen; /* This is 0: remember that host and domain
-                                   are empty */
-
-    /* Create and send a type-1 message:
-
-    Index Description          Content
-    0     NTLMSSP Signature    Null-terminated ASCII "NTLMSSP"
-                               (0x4e544c4d53535000)
-    8     NTLM Message Type    long (0x01000000)
-    12    Flags                long
-    16    Supplied Domain      security buffer(*)
-    24    Supplied Workstation security buffer(*)
-    32    start of data block
-
-    */
-#if USE_NTLM2SESSION
-#define NTLM2FLAG NTLMFLAG_NEGOTIATE_NTLM2_KEY
-#else
-#define NTLM2FLAG 0
-#endif
-    snprintf((char *)ntlmbuf, sizeof(ntlmbuf), NTLMSSP_SIGNATURE "%c"
-             "\x01%c%c%c" /* 32-bit type = 1 */
-             "%c%c%c%c"   /* 32-bit NTLM flag field */
-             "%c%c"  /* domain length */
-             "%c%c"  /* domain allocated space */
-             "%c%c"  /* domain name offset */
-             "%c%c"  /* 2 zeroes */
-             "%c%c"  /* host length */
-             "%c%c"  /* host allocated space */
-             "%c%c"  /* host name offset */
-             "%c%c"  /* 2 zeroes */
-             "%s"   /* host name */
-             "%s",  /* domain string */
-             0,     /* trailing zero */
-             0,0,0, /* part of type-1 long */
-
-             LONGQUARTET(
-               NTLMFLAG_NEGOTIATE_OEM|
-               NTLMFLAG_REQUEST_TARGET|
-               NTLMFLAG_NEGOTIATE_NTLM_KEY|
-               NTLM2FLAG|
-               NTLMFLAG_NEGOTIATE_ALWAYS_SIGN
-               ),
-             SHORTPAIR(domlen),
-             SHORTPAIR(domlen),
-             SHORTPAIR(domoff),
-             0,0,
-             SHORTPAIR(hostlen),
-             SHORTPAIR(hostlen),
-             SHORTPAIR(hostoff),
-             0,0,
-             host /* this is empty */, domain /* this is empty */);
-
-    /* initial packet length */
-    size = 32 + hostlen + domlen;
-#endif
-
-    DEBUG_OUT({
-      fprintf(stderr, "**** TYPE1 header flags=0x%02.2x%02.2x%02.2x%02.2x 0x%08.8x ",
-              LONGQUARTET(NTLMFLAG_NEGOTIATE_OEM|
-                          NTLMFLAG_REQUEST_TARGET|
-                          NTLMFLAG_NEGOTIATE_NTLM_KEY|
-                          NTLM2FLAG|
-                          NTLMFLAG_NEGOTIATE_ALWAYS_SIGN),
-              NTLMFLAG_NEGOTIATE_OEM|
-              NTLMFLAG_REQUEST_TARGET|
-              NTLMFLAG_NEGOTIATE_NTLM_KEY|
-              NTLM2FLAG|
-              NTLMFLAG_NEGOTIATE_ALWAYS_SIGN);
-      print_flags(stderr,
-                  NTLMFLAG_NEGOTIATE_OEM|
-                  NTLMFLAG_REQUEST_TARGET|
-                  NTLMFLAG_NEGOTIATE_NTLM_KEY|
-                  NTLM2FLAG|
-                  NTLMFLAG_NEGOTIATE_ALWAYS_SIGN);
-      fprintf(stderr, "\n****\n");
-    });
-
-    /* now size is the size of the base64 encoded package size */
-    size = Curl_base64_encode(NULL, (char *)ntlmbuf, size, &base64);
-
-    if(size >0 ) {
-      Curl_safefree(*allocuserpwd);
-      *allocuserpwd = aprintf("%sAuthorization: NTLM %s\r\n",
-                              proxy?"Proxy-":"",
-                              base64);
-      DEBUG_OUT(fprintf(stderr, "**** Header %s\n ", *allocuserpwd));
-      free(base64);
-    }
-    else
-      return CURLE_OUT_OF_MEMORY; /* FIX TODO */
-
-    break;
-
-  case NTLMSTATE_TYPE2:
-    /* We received the type-2 message already, create a type-3 message:
-
-    Index   Description            Content
-    0       NTLMSSP Signature      Null-terminated ASCII "NTLMSSP"
-                                   (0x4e544c4d53535000)
-    8       NTLM Message Type      long (0x03000000)
-    12      LM/LMv2 Response       security buffer(*)
-    20      NTLM/NTLMv2 Response   security buffer(*)
-    28      Domain Name            security buffer(*)
-    36      User Name              security buffer(*)
-    44      Workstation Name       security buffer(*)
-    (52)    Session Key (optional) security buffer(*)
-    (60)    Flags (optional)       long
-    52 (64) start of data block
-
-    */
-
-  {
-#ifdef USE_WINDOWS_SSPI
-    SecBuffer type_2, type_3;
-    SecBufferDesc type_2_desc, type_3_desc;
-    SECURITY_STATUS status;
-    ULONG attrs;
-    TimeStamp tsDummy; /* For Windows 9x compatibility of SPPI calls */
-
-    type_2_desc.ulVersion  = type_3_desc.ulVersion  = SECBUFFER_VERSION;
-    type_2_desc.cBuffers   = type_3_desc.cBuffers   = 1;
-    type_2_desc.pBuffers   = &type_2;
-    type_3_desc.pBuffers   = &type_3;
-
-    type_2.BufferType = SECBUFFER_TOKEN;
-    type_2.pvBuffer   = ntlm->type_2;
-    type_2.cbBuffer   = ntlm->n_type_2;
-    type_3.BufferType = SECBUFFER_TOKEN;
-    type_3.pvBuffer   = ntlmbuf;
-    type_3.cbBuffer   = sizeof(ntlmbuf);
-
-    status = s_pSecFn->InitializeSecurityContextA(&ntlm->handle, &ntlm->c_handle,
-                                       (char *) host,
-                                       ISC_REQ_CONFIDENTIALITY |
-                                       ISC_REQ_REPLAY_DETECT |
-                                       ISC_REQ_CONNECTION,
-                                       0, SECURITY_NETWORK_DREP, &type_2_desc,
-                                       0, &ntlm->c_handle, &type_3_desc,
-                                       &attrs, &tsDummy);
-
-    if(status != SEC_E_OK)
-      return CURLE_RECV_ERROR;
-
-    size = type_3.cbBuffer;
-
-    ntlm_sspi_cleanup(ntlm);
-
-#else
-    int lmrespoff;
-    unsigned char lmresp[24]; /* fixed-size */
-#if USE_NTRESPONSES
-    int ntrespoff;
-    unsigned char ntresp[24]; /* fixed-size */
-#endif
-    size_t useroff;
-    const char *user;
-    size_t userlen;
-
-    user = strchr(userp, '\\');
-    if(!user)
-      user = strchr(userp, '/');
-
-    if(user) {
-      domain = userp;
-      domlen = (user - domain);
-      user++;
-    }
-    else
-      user = userp;
-    userlen = strlen(user);
-
-    if(gethostname(host, HOSTNAME_MAX)) {
-      infof(conn->data, "gethostname() failed, continuing without!");
-      hostlen = 0;
-    }
-    else {
-      /* If the workstation if configured with a full DNS name (i.e.
-       * workstation.somewhere.net) gethostname() returns the fully qualified
-       * name, which NTLM doesn't like.
-       */
-      char *dot = strchr(host, '.');
-      if(dot)
-        *dot = '\0';
-      hostlen = strlen(host);
-    }
-
-#if USE_NTLM2SESSION
-    /* We don't support NTLM2 if we don't have USE_NTRESPONSES */
-    if(ntlm->flags & NTLMFLAG_NEGOTIATE_NTLM2_KEY) {
-      unsigned char ntbuffer[0x18];
-      unsigned char tmp[0x18];
-      unsigned char md5sum[MD5_DIGEST_LENGTH];
-      unsigned char entropy[8];
-
-      /* Need to create 8 bytes random data */
-#ifdef USE_SSLEAY
-      MD5_CTX MD5pw;
-      Curl_ossl_seed(conn->data); /* Initiate the seed if not already done */
-      RAND_bytes(entropy,8);
-#elif defined(USE_GNUTLS)
-      gcry_md_hd_t MD5pw;
-      Curl_gtls_seed(conn->data); /* Initiate the seed if not already done */
-      gcry_randomize(entropy, 8, GCRY_STRONG_RANDOM);
-#endif
-
-      /* 8 bytes random data as challenge in lmresp */
-      memcpy(lmresp,entropy,8);
-      /* Pad with zeros */
-      memset(lmresp+8,0,0x10);
-
-      /* Fill tmp with challenge(nonce?) + entropy */
-      memcpy(tmp,&ntlm->nonce[0],8);
-      memcpy(tmp+8,entropy,8);
-
-#ifdef USE_SSLEAY
-      MD5_Init(&MD5pw);
-      MD5_Update(&MD5pw, tmp, 16);
-      MD5_Final(md5sum, &MD5pw);
-#elif defined(USE_GNUTLS)
-      gcry_md_open(&MD5pw, GCRY_MD_MD5, 0);
-      gcry_md_write(MD5pw, tmp, MD5_DIGEST_LENGTH);
-      memcpy(md5sum, gcry_md_read (MD5pw, 0), MD5_DIGEST_LENGTH);
-      gcry_md_close(MD5pw);
-#endif
-
-      /* We shall only use the first 8 bytes of md5sum,
-         but the des code in lm_resp only encrypt the first 8 bytes */
-      if(mk_nt_hash(conn->data, passwdp, ntbuffer) == CURLE_OUT_OF_MEMORY)
-        return CURLE_OUT_OF_MEMORY;
-      lm_resp(ntbuffer, md5sum, ntresp);
-
-      /* End of NTLM2 Session code */
-    }
-    else
-#endif
-	{
-
-#if USE_NTRESPONSES
-      unsigned char ntbuffer[0x18];
-#endif
-      unsigned char lmbuffer[0x18];
-
-#if USE_NTRESPONSES
-      if(mk_nt_hash(conn->data, passwdp, ntbuffer) == CURLE_OUT_OF_MEMORY)
-        return CURLE_OUT_OF_MEMORY;
-      lm_resp(ntbuffer, &ntlm->nonce[0], ntresp);
-#endif
-
-      mk_lm_hash(conn->data, passwdp, lmbuffer);
-      lm_resp(lmbuffer, &ntlm->nonce[0], lmresp);
-      /* A safer but less compatible alternative is:
-       *   lm_resp(ntbuffer, &ntlm->nonce[0], lmresp);
-       * See http://davenport.sourceforge.net/ntlm.html#ntlmVersion2 */
-    }
-
-    lmrespoff = 64; /* size of the message header */
-#if USE_NTRESPONSES
-    ntrespoff = lmrespoff + 0x18;
-    domoff = ntrespoff + 0x18;
-#else
-    domoff = lmrespoff + 0x18;
-#endif
-    useroff = domoff + domlen;
-    hostoff = useroff + userlen;
-
-    /*
-     * In the case the server sets the flag NTLMFLAG_NEGOTIATE_UNICODE, we
-     * need to filter it off because libcurl doesn't UNICODE encode the
-     * strings it packs into the NTLM authenticate packet.
-     */
-    ntlm->flags &= ~NTLMFLAG_NEGOTIATE_UNICODE;
-
-    /* Create the big type-3 message binary blob */
-    size = snprintf((char *)ntlmbuf, sizeof(ntlmbuf),
-                    NTLMSSP_SIGNATURE "%c"
-                    "\x03%c%c%c" /* type-3, 32 bits */
-
-                    "%c%c" /* LanManager length */
-                    "%c%c" /* LanManager allocated space */
-                    "%c%c" /* LanManager offset */
-                    "%c%c" /* 2 zeroes */
-
-                    "%c%c" /* NT-response length */
-                    "%c%c" /* NT-response allocated space */
-                    "%c%c" /* NT-response offset */
-                    "%c%c" /* 2 zeroes */
-
-                    "%c%c"  /* domain length */
-                    "%c%c"  /* domain allocated space */
-                    "%c%c"  /* domain name offset */
-                    "%c%c"  /* 2 zeroes */
-
-                    "%c%c"  /* user length */
-                    "%c%c"  /* user allocated space */
-                    "%c%c"  /* user offset */
-                    "%c%c"  /* 2 zeroes */
-
-                    "%c%c"  /* host length */
-                    "%c%c"  /* host allocated space */
-                    "%c%c"  /* host offset */
-                    "%c%c"  /* 2 zeroes */
-
-                    "%c%c"  /* session key length (unknown purpose) */
-                    "%c%c"  /* session key allocated space (unknown purpose) */
-                    "%c%c"  /* session key offset (unknown purpose) */
-                    "%c%c"  /* 2 zeroes */
-
-                    "%c%c%c%c" /* flags */
-
-                    /* domain string */
-                    /* user string */
-                    /* host string */
-                    /* LanManager response */
-                    /* NT response */
-                    ,
-                    0, /* zero termination */
-                    0,0,0, /* type-3 long, the 24 upper bits */
-
-                    SHORTPAIR(0x18),  /* LanManager response length, twice */
-                    SHORTPAIR(0x18),
-                    SHORTPAIR(lmrespoff),
-                    0x0, 0x0,
-
-#if USE_NTRESPONSES
-                    SHORTPAIR(0x18),  /* NT-response length, twice */
-                    SHORTPAIR(0x18),
-                    SHORTPAIR(ntrespoff),
-                    0x0, 0x0,
-#else
-                    0x0, 0x0,
-                    0x0, 0x0,
-                    0x0, 0x0,
-                    0x0, 0x0,
-#endif
-                    SHORTPAIR(domlen),
-                    SHORTPAIR(domlen),
-                    SHORTPAIR(domoff),
-                    0x0, 0x0,
-
-                    SHORTPAIR(userlen),
-                    SHORTPAIR(userlen),
-                    SHORTPAIR(useroff),
-                    0x0, 0x0,
-
-                    SHORTPAIR(hostlen),
-                    SHORTPAIR(hostlen),
-                    SHORTPAIR(hostoff),
-                    0x0, 0x0,
-
-                    0x0, 0x0,
-                    0x0, 0x0,
-                    0x0, 0x0,
-                    0x0, 0x0,
-
-                    LONGQUARTET(ntlm->flags));
-    DEBUGASSERT(size==64);
-
-    DEBUGASSERT(size == (size_t)lmrespoff);
-    /* We append the binary hashes */
-    if(size < (sizeof(ntlmbuf) - 0x18)) {
-      memcpy(&ntlmbuf[size], lmresp, 0x18);
-      size += 0x18;
-    }
-
-    DEBUG_OUT({
-        fprintf(stderr, "**** TYPE3 header lmresp=");
-        print_hex(stderr, (char *)&ntlmbuf[lmrespoff], 0x18);
-    });
-
-#if USE_NTRESPONSES
-    if(size < (sizeof(ntlmbuf) - 0x18)) {
-      DEBUGASSERT(size == (size_t)ntrespoff);
-      memcpy(&ntlmbuf[size], ntresp, 0x18);
-      size += 0x18;
-    }
-
-    DEBUG_OUT({
-        fprintf(stderr, "\n                  ntresp=");
-        print_hex(stderr, (char *)&ntlmbuf[ntrespoff], 0x18);
-    });
-
-#endif
-
-    DEBUG_OUT({
-        fprintf(stderr, "\n                  flags=0x%02.2x%02.2x%02.2x%02.2x 0x%08.8x ",
-                LONGQUARTET(ntlm->flags), ntlm->flags);
-        print_flags(stderr, ntlm->flags);
-        fprintf(stderr, "\n****\n");
-    });
-
-
-    /* Make sure that the domain, user and host strings fit in the target
-       buffer before we copy them there. */
-    if(size + userlen + domlen + hostlen >= sizeof(ntlmbuf)) {
-      failf(conn->data, "user + domain + host name too big");
-      return CURLE_OUT_OF_MEMORY;
-    }
-
-    DEBUGASSERT(size == domoff);
-    memcpy(&ntlmbuf[size], domain, domlen);
-    size += domlen;
-
-    DEBUGASSERT(size == useroff);
-    memcpy(&ntlmbuf[size], user, userlen);
-    size += userlen;
-
-    DEBUGASSERT(size == hostoff);
-    memcpy(&ntlmbuf[size], host, hostlen);
-    size += hostlen;
-
-#ifdef CURL_DOES_CONVERSIONS
-    /* convert domain, user, and host to ASCII but leave the rest as-is */
-    if(CURLE_OK != Curl_convert_to_network(conn->data,
-                                           (char *)&ntlmbuf[domoff],
-                                           size-domoff)) {
-      return CURLE_CONV_FAILED;
-    }
-#endif /* CURL_DOES_CONVERSIONS */
-
-#endif
-
-    /* convert the binary blob into base64 */
-    size = Curl_base64_encode(NULL, (char *)ntlmbuf, size, &base64);
-
-    if(size >0 ) {
-      Curl_safefree(*allocuserpwd);
-      *allocuserpwd = aprintf("%sAuthorization: NTLM %s\r\n",
-                              proxy?"Proxy-":"",
-                              base64);
-      DEBUG_OUT(fprintf(stderr, "**** %s\n ", *allocuserpwd));
-      free(base64);
-    }
-    else
-      return CURLE_OUT_OF_MEMORY; /* FIX TODO */
-
-    ntlm->state = NTLMSTATE_TYPE3; /* we sent a type-3 */
-    authp->done = TRUE;
-  }
-  break;
-
-  case NTLMSTATE_TYPE3:
-    /* connection is already authenticated,
-     * don't send a header in future requests */
-    if(*allocuserpwd) {
-      free(*allocuserpwd);
-      *allocuserpwd=NULL;
-    }
-    authp->done = TRUE;
-    break;
-  }
-
-  return CURLE_OK;
-}
-
-
-void
-Curl_ntlm_cleanup(struct connectdata *conn)
-{
-#ifdef USE_WINDOWS_SSPI
-  ntlm_sspi_cleanup(&conn->ntlm);
-  ntlm_sspi_cleanup(&conn->proxyntlm);
-#else
-  (void)conn;
-#endif
-}
-
-
-#endif /* USE_NTLM */
-#endif /* !CURL_DISABLE_HTTP */
diff --git a/src/other/curl/lib/http_ntlm.h b/src/other/curl/lib/http_ntlm.h
deleted file mode 100644
index c7422d7..0000000
--- a/src/other/curl/lib/http_ntlm.h
+++ /dev/null
@@ -1,149 +0,0 @@
-#ifndef __HTTP_NTLM_H
-#define __HTTP_NTLM_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-typedef enum {
-  CURLNTLM_NONE, /* not a ntlm */
-  CURLNTLM_BAD,  /* an ntlm, but one we don't like */
-  CURLNTLM_FIRST, /* the first 401-reply we got with NTLM */
-  CURLNTLM_FINE, /* an ntlm we act on */
-
-  CURLNTLM_LAST  /* last entry in this enum, don't use */
-} CURLntlm;
-
-/* this is for ntlm header input */
-CURLntlm Curl_input_ntlm(struct connectdata *conn, bool proxy,
-                         const char *header);
-
-/* this is for creating ntlm header output */
-CURLcode Curl_output_ntlm(struct connectdata *conn, bool proxy);
-
-void Curl_ntlm_cleanup(struct connectdata *conn);
-#ifndef USE_NTLM
-#define Curl_ntlm_cleanup(x)
-#endif
-
-/* Flag bits definitions based on http://davenport.sourceforge.net/ntlm.html */
-
-#define NTLMFLAG_NEGOTIATE_UNICODE               (1<<0)
-/* Indicates that Unicode strings are supported for use in security buffer
-   data. */
-
-#define NTLMFLAG_NEGOTIATE_OEM                   (1<<1)
-/* Indicates that OEM strings are supported for use in security buffer data. */
-
-#define NTLMFLAG_REQUEST_TARGET                  (1<<2)
-/* Requests that the server's authentication realm be included in the Type 2
-   message. */
-
-/* unknown (1<<3) */
-#define NTLMFLAG_NEGOTIATE_SIGN                  (1<<4)
-/* Specifies that authenticated communication between the client and server
-   should carry a digital signature (message integrity). */
-
-#define NTLMFLAG_NEGOTIATE_SEAL                  (1<<5)
-/* Specifies that authenticated communication between the client and server
-   should be encrypted (message confidentiality). */
-
-#define NTLMFLAG_NEGOTIATE_DATAGRAM_STYLE        (1<<6)
-/* Indicates that datagram authentication is being used. */
-
-#define NTLMFLAG_NEGOTIATE_LM_KEY                (1<<7)
-/* Indicates that the LAN Manager session key should be used for signing and
-   sealing authenticated communications. */
-
-#define NTLMFLAG_NEGOTIATE_NETWARE               (1<<8)
-/* unknown purpose */
-
-#define NTLMFLAG_NEGOTIATE_NTLM_KEY              (1<<9)
-/* Indicates that NTLM authentication is being used. */
-
-/* unknown (1<<10) */
-
-#define NTLMFLAG_NEGOTIATE_ANONYMOUS             (1<<11)
-/* Sent by the client in the Type 3 message to indicate that an anonymous
-   context has been established. This also affects the response fields. */
-
-#define NTLMFLAG_NEGOTIATE_DOMAIN_SUPPLIED       (1<<12)
-/* Sent by the client in the Type 1 message to indicate that a desired
-   authentication realm is included in the message. */
-
-#define NTLMFLAG_NEGOTIATE_WORKSTATION_SUPPLIED  (1<<13)
-/* Sent by the client in the Type 1 message to indicate that the client
-   workstation's name is included in the message. */
-
-#define NTLMFLAG_NEGOTIATE_LOCAL_CALL            (1<<14)
-/* Sent by the server to indicate that the server and client are on the same
-   machine. Implies that the client may use a pre-established local security
-   context rather than responding to the challenge. */
-
-#define NTLMFLAG_NEGOTIATE_ALWAYS_SIGN           (1<<15)
-/* Indicates that authenticated communication between the client and server
-   should be signed with a "dummy" signature. */
-
-#define NTLMFLAG_TARGET_TYPE_DOMAIN              (1<<16)
-/* Sent by the server in the Type 2 message to indicate that the target
-   authentication realm is a domain. */
-
-#define NTLMFLAG_TARGET_TYPE_SERVER              (1<<17)
-/* Sent by the server in the Type 2 message to indicate that the target
-   authentication realm is a server. */
-
-#define NTLMFLAG_TARGET_TYPE_SHARE               (1<<18)
-/* Sent by the server in the Type 2 message to indicate that the target
-   authentication realm is a share. Presumably, this is for share-level
-   authentication. Usage is unclear. */
-
-#define NTLMFLAG_NEGOTIATE_NTLM2_KEY             (1<<19)
-/* Indicates that the NTLM2 signing and sealing scheme should be used for
-   protecting authenticated communications. */
-
-#define NTLMFLAG_REQUEST_INIT_RESPONSE           (1<<20)
-/* unknown purpose */
-
-#define NTLMFLAG_REQUEST_ACCEPT_RESPONSE         (1<<21)
-/* unknown purpose */
-
-#define NTLMFLAG_REQUEST_NONNT_SESSION_KEY       (1<<22)
-/* unknown purpose */
-
-#define NTLMFLAG_NEGOTIATE_TARGET_INFO           (1<<23)
-/* Sent by the server in the Type 2 message to indicate that it is including a
-   Target Information block in the message. */
-
-/* unknown (1<24) */
-/* unknown (1<25) */
-/* unknown (1<26) */
-/* unknown (1<27) */
-/* unknown (1<28) */
-
-#define NTLMFLAG_NEGOTIATE_128                   (1<<29)
-/* Indicates that 128-bit encryption is supported. */
-
-#define NTLMFLAG_NEGOTIATE_KEY_EXCHANGE          (1<<30)
-/* Indicates that the client will provide an encrypted master key in
-   the "Session Key" field of the Type 3 message. */
-
-#define NTLMFLAG_NEGOTIATE_56                    (1<<31)
-/* Indicates that 56-bit encryption is supported. */
-#endif
diff --git a/src/other/curl/lib/if2ip.c b/src/other/curl/lib/if2ip.c
deleted file mode 100644
index 19504d1..0000000
--- a/src/other/curl/lib/if2ip.c
+++ /dev/null
@@ -1,160 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-#ifdef HAVE_NET_IF_H
-#  include <net/if.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#  include <sys/ioctl.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-#ifdef HAVE_SYS_SOCKIO_H
-#  include <sys/sockio.h>
-#endif
-#ifdef HAVE_IFADDRS_H
-#  include <ifaddrs.h>
-#endif
-#ifdef HAVE_STROPTS_H
-#  include <stropts.h>
-#endif
-#ifdef __VMS
-#  include <inet.h>
-#endif
-
-#include "inet_ntop.h"
-#include "strequal.h"
-#include "if2ip.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/* ------------------------------------------------------------------ */
-
-#if defined(HAVE_GETIFADDRS)
-
-char *Curl_if2ip(int af, const char *interface, char *buf, int buf_size)
-{
-  struct ifaddrs *iface, *head;
-  char *ip=NULL;
-
-  if (getifaddrs(&head) >= 0) {
-    for (iface=head; iface != NULL; iface=iface->ifa_next) {
-      if ((iface->ifa_addr != NULL) &&
-          (iface->ifa_addr->sa_family == af) &&
-          curl_strequal(iface->ifa_name, interface)) {
-        void *addr;
-        char scope[12]="";
-#ifdef ENABLE_IPV6
-        if (af == AF_INET6) {
-          unsigned int scopeid = 0;
-          addr = &((struct sockaddr_in6 *)iface->ifa_addr)->sin6_addr;
-#ifdef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
-          /* Include the scope of this interface as part of the address */
-          scopeid = ((struct sockaddr_in6 *)iface->ifa_addr)->sin6_scope_id;
-#endif
-          if (scopeid)
-            snprintf(scope, sizeof(scope), "%%%u", scopeid);
-        }
-        else
-#endif
-          addr = &((struct sockaddr_in *)iface->ifa_addr)->sin_addr;
-        ip = (char *) Curl_inet_ntop(af, addr, buf, buf_size);
-        strlcat(buf, scope, buf_size);
-        break;
-      }
-    }
-    freeifaddrs(head);
-  }
-  return ip;
-}
-
-#elif defined(HAVE_IOCTL_SIOCGIFADDR)
-
-char *Curl_if2ip(int af, const char *interface, char *buf, int buf_size)
-{
-  struct ifreq req;
-  struct in_addr in;
-  struct sockaddr_in *s;
-  curl_socket_t dummy;
-  size_t len;
-  char *ip;
-
-  if(!interface || (af != AF_INET))
-    return NULL;
-
-  len = strlen(interface);
-  if(len >= sizeof(req.ifr_name))
-    return NULL;
-
-  dummy = socket(AF_INET, SOCK_STREAM, 0);
-  if(CURL_SOCKET_BAD == dummy)
-    return NULL;
-
-  memset(&req, 0, sizeof(req));
-  memcpy(req.ifr_name, interface, len+1);
-  req.ifr_addr.sa_family = AF_INET;
-
-  if(ioctl(dummy, SIOCGIFADDR, &req) < 0) {
-    sclose(dummy);
-    return NULL;
-  }
-
-  s = (struct sockaddr_in *)&req.ifr_addr;
-  memcpy(&in, &s->sin_addr, sizeof(in));
-  ip = (char *) Curl_inet_ntop(s->sin_family, &in, buf, buf_size);
-
-  sclose(dummy);
-  return ip;
-}
-
-#else
-
-char *Curl_if2ip(int af, const char *interf, char *buf, int buf_size)
-{
-    (void) af;
-    (void) interf;
-    (void) buf;
-    (void) buf_size;
-    return NULL;
-}
-
-#endif
diff --git a/src/other/curl/lib/if2ip.h b/src/other/curl/lib/if2ip.h
deleted file mode 100644
index cdf2638..0000000
--- a/src/other/curl/lib/if2ip.h
+++ /dev/null
@@ -1,65 +0,0 @@
-#ifndef __IF2IP_H
-#define __IF2IP_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2005, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include "setup.h"
-
-extern char *Curl_if2ip(int af, const char *interf, char *buf, int buf_size);
-
-#ifdef __INTERIX
-#include <sys/socket.h>
-
-/* Nedelcho Stanev's work-around for SFU 3.0 */
-struct ifreq {
-#define IFNAMSIZ 16
-#define IFHWADDRLEN 6
-  union {
-    char ifrn_name[IFNAMSIZ]; /* if name, e.g. "en0" */
-  } ifr_ifrn;
-
- union {
-   struct sockaddr ifru_addr;
-   struct sockaddr ifru_broadaddr;
-   struct sockaddr ifru_netmask;
-   struct sockaddr ifru_hwaddr;
-   short ifru_flags;
-   int ifru_metric;
-   int ifru_mtu;
- } ifr_ifru;
-};
-
-/* This define was added by Daniel to avoid an extra #ifdef INTERIX in the
-   C code. */
-
-#define ifr_name ifr_ifrn.ifrn_name /* interface name */
-#define ifr_addr ifr_ifru.ifru_addr /* address */
-#define ifr_broadaddr ifr_ifru.ifru_broadaddr /* broadcast address */
-#define ifr_netmask ifr_ifru.ifru_netmask /* interface net mask */
-#define ifr_flags ifr_ifru.ifru_flags /* flags */
-#define ifr_hwaddr ifr_ifru.ifru_hwaddr /* MAC address */
-#define ifr_metric ifr_ifru.ifru_metric /* metric */
-#define ifr_mtu ifr_ifru.ifru_mtu /* mtu */
-
-#define SIOCGIFADDR _IOW('s', 102, struct ifreq) /* Get if addr */
-#endif /* interix */
-
-#endif
diff --git a/src/other/curl/lib/imap.c b/src/other/curl/lib/imap.c
deleted file mode 100644
index f7b895d..0000000
--- a/src/other/curl/lib/imap.c
+++ /dev/null
@@ -1,1030 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- * RFC3501 IMAPv4 protocol
- * RFC5092 IMAP URL Scheme
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_IMAP
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <ctype.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_UTSNAME_H
-#include <sys/utsname.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#endif
-
-#if (defined(NETWARE) && defined(__NOVELL_LIBC__))
-#undef in_addr_t
-#define in_addr_t unsigned long
-#endif
-
-#include <curl/curl.h>
-#include "urldata.h"
-#include "sendf.h"
-#include "easyif.h" /* for Curl_convert_... prototypes */
-
-#include "if2ip.h"
-#include "hostip.h"
-#include "progress.h"
-#include "transfer.h"
-#include "escape.h"
-#include "http.h" /* for HTTP proxy tunnel stuff */
-#include "socks.h"
-#include "imap.h"
-
-#include "strtoofft.h"
-#include "strequal.h"
-#include "sslgen.h"
-#include "connect.h"
-#include "strerror.h"
-#include "select.h"
-#include "multiif.h"
-#include "url.h"
-#include "rawstr.h"
-#include "strtoofft.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/* Local API functions */
-static CURLcode imap_parse_url_path(struct connectdata *conn);
-static CURLcode imap_regular_transfer(struct connectdata *conn, bool *done);
-static CURLcode imap_do(struct connectdata *conn, bool *done);
-static CURLcode imap_done(struct connectdata *conn,
-                          CURLcode, bool premature);
-static CURLcode imap_connect(struct connectdata *conn, bool *done);
-static CURLcode imap_disconnect(struct connectdata *conn);
-static CURLcode imap_multi_statemach(struct connectdata *conn, bool *done);
-static int imap_getsock(struct connectdata *conn,
-                        curl_socket_t *socks,
-                        int numsocks);
-static CURLcode imap_doing(struct connectdata *conn,
-                           bool *dophase_done);
-static CURLcode imap_setup_connection(struct connectdata * conn);
-
-/*
- * IMAP protocol handler.
- */
-
-const struct Curl_handler Curl_handler_imap = {
-  "IMAP",                           /* scheme */
-  imap_setup_connection,            /* setup_connection */
-  imap_do,                          /* do_it */
-  imap_done,                        /* done */
-  ZERO_NULL,                        /* do_more */
-  imap_connect,                     /* connect_it */
-  imap_multi_statemach,             /* connecting */
-  imap_doing,                       /* doing */
-  imap_getsock,                     /* proto_getsock */
-  imap_getsock,                     /* doing_getsock */
-  ZERO_NULL,                        /* perform_getsock */
-  imap_disconnect,                  /* disconnect */
-  PORT_IMAP,                        /* defport */
-  PROT_IMAP                         /* protocol */
-};
-
-
-#ifdef USE_SSL
-/*
- * IMAPS protocol handler.
- */
-
-const struct Curl_handler Curl_handler_imaps = {
-  "IMAPS",                          /* scheme */
-  imap_setup_connection,            /* setup_connection */
-  imap_do,                          /* do_it */
-  imap_done,                        /* done */
-  ZERO_NULL,                        /* do_more */
-  imap_connect,                     /* connect_it */
-  imap_multi_statemach,             /* connecting */
-  imap_doing,                       /* doing */
-  imap_getsock,                     /* proto_getsock */
-  imap_getsock,                     /* doing_getsock */
-  ZERO_NULL,                        /* perform_getsock */
-  imap_disconnect,                  /* disconnect */
-  PORT_IMAPS,                       /* defport */
-  PROT_IMAP | PROT_IMAPS | PROT_SSL  /* protocol */
-};
-#endif
-
-#ifndef CURL_DISABLE_HTTP
-/*
- * HTTP-proxyed IMAP protocol handler.
- */
-
-static const struct Curl_handler Curl_handler_imap_proxy = {
-  "IMAP",                               /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_http,                            /* do_it */
-  Curl_http_done,                       /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_IMAP,                            /* defport */
-  PROT_HTTP                             /* protocol */
-};
-
-
-#ifdef USE_SSL
-/*
- * HTTP-proxyed IMAPS protocol handler.
- */
-
-static const struct Curl_handler Curl_handler_imaps_proxy = {
-  "IMAPS",                              /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_http,                            /* do_it */
-  Curl_http_done,                       /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_IMAPS,                           /* defport */
-  PROT_HTTP                             /* protocol */
-};
-#endif
-#endif
-
-/***********************************************************************
- *
- * imapsendf()
- *
- * Sends the formated string as an IMAP command to a server
- *
- * NOTE: we build the command in a fixed-length buffer, which sets length
- * restrictions on the command!
- *
- * Designed to never block.
- */
-static CURLcode imapsendf(struct connectdata *conn,
-                          const char *idstr, /* id to wait for at the
-                                                completion of this command */
-                          const char *fmt, ...)
-{
-  CURLcode res;
-  struct imap_conn *imapc = &conn->proto.imapc;
-  va_list ap;
-  va_start(ap, fmt);
-
-  imapc->idstr = idstr; /* this is the thing */
-
-  res = Curl_pp_vsendf(&imapc->pp, fmt, ap);
-
-  va_end(ap);
-
-  return res;
-}
-
-static const char *getcmdid(struct connectdata *conn)
-{
-  static const char * const ids[]= {
-    "A",
-    "B",
-    "C",
-    "D"
-  };
-
-  struct imap_conn *imapc = &conn->proto.imapc;
-
-  /* get the next id, but wrap at end of table */
-  imapc->cmdid = (int)((imapc->cmdid+1) % (sizeof(ids)/sizeof(ids[0])));
-
-  return ids[imapc->cmdid];
-}
-
-/* For the IMAP "protocol connect" and "doing" phases only */
-static int imap_getsock(struct connectdata *conn,
-                        curl_socket_t *socks,
-                        int numsocks)
-{
-  return Curl_pp_getsock(&conn->proto.imapc.pp, socks, numsocks);
-}
-
-/* fucntion that checks for an imap status code at the start of the
-   given string */
-static int imap_endofresp(struct pingpong *pp, int *resp)
-{
-  char *line = pp->linestart_resp;
-  size_t len = pp->nread_resp;
-  struct imap_conn *imapc = &pp->conn->proto.imapc;
-  const char *id = imapc->idstr;
-  size_t id_len = strlen(id);
-
-  if(len >= id_len + 3) {
-    if(!memcmp(id, line, id_len) && (line[id_len] == ' ') ) {
-      /* end of response */
-      *resp = line[id_len+1]; /* O, N or B */
-      return TRUE;
-    }
-    else if((imapc->state == IMAP_FETCH) &&
-            !memcmp("* ", line, 2) ) {
-      /* FETCH response we're interested in */
-      *resp = '*';
-      return TRUE;
-    }
-  }
-  return FALSE; /* nothing for us */
-}
-
-/* This is the ONLY way to change IMAP state! */
-static void state(struct connectdata *conn,
-                  imapstate newstate)
-{
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
-  /* for debug purposes */
-  static const char * const names[]={
-    "STOP",
-    "SERVERGREET",
-    "LOGIN",
-    "STARTTLS",
-    "SELECT",
-    "FETCH",
-    "LOGOUT",
-    /* LAST */
-  };
-#endif
-  struct imap_conn *imapc = &conn->proto.imapc;
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
-  if(imapc->state != newstate)
-    infof(conn->data, "IMAP %p state change from %s to %s\n",
-          imapc, names[imapc->state], names[newstate]);
-#endif
-  imapc->state = newstate;
-}
-
-static CURLcode imap_state_login(struct connectdata *conn)
-{
-  CURLcode result;
-  struct FTP *imap = conn->data->state.proto.imap;
-  const char *str;
-
-  str = getcmdid(conn);
-
-  /* send USER and password */
-  result = imapsendf(conn, str, "%s LOGIN %s %s", str,
-                     imap->user?imap->user:"",
-                     imap->passwd?imap->passwd:"");
-  if(result)
-    return result;
-
-  state(conn, IMAP_LOGIN);
-
-  return CURLE_OK;
-}
-
-/* for STARTTLS responses */
-static CURLcode imap_state_starttls_resp(struct connectdata *conn,
-                                         int imapcode,
-                                         imapstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  (void)instate; /* no use for this yet */
-
-  if(imapcode != 'O') {
-    failf(data, "STARTTLS denied. %c", imapcode);
-    result = CURLE_LOGIN_DENIED;
-  }
-  else {
-    /* Curl_ssl_connect is BLOCKING */
-    result = Curl_ssl_connect(conn, FIRSTSOCKET);
-    if(CURLE_OK == result) {
-      conn->protocol |= PROT_IMAPS;
-      result = imap_state_login(conn);
-    }
-  }
-  state(conn, IMAP_STOP);
-  return result;
-}
-
-/* for LOGIN responses */
-static CURLcode imap_state_login_resp(struct connectdata *conn,
-                                      int imapcode,
-                                      imapstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  (void)instate; /* no use for this yet */
-
-  if(imapcode != 'O') {
-    failf(data, "Access denied. %c", imapcode);
-    result = CURLE_LOGIN_DENIED;
-  }
-
-  state(conn, IMAP_STOP);
-  return result;
-}
-
-/* for the (first line of) FETCH BODY[TEXT] response */
-static CURLcode imap_state_fetch_resp(struct connectdata *conn,
-                                      int imapcode,
-                                      imapstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct imap_conn *imapc = &conn->proto.imapc;
-  struct FTP *imap = data->state.proto.imap;
-  struct pingpong *pp = &imapc->pp;
-  const char *ptr = data->state.buffer;
-  (void)instate; /* no use for this yet */
-
-  if('*' != imapcode) {
-    Curl_pgrsSetDownloadSize(data, 0);
-    state(conn, IMAP_STOP);
-    return CURLE_OK;
-  }
-
-  /* Something like this comes "* 1 FETCH (BODY[TEXT] {2021}\r" */
-  while(*ptr && (*ptr != '{'))
-    ptr++;
-
-  if(*ptr == '{') {
-    curl_off_t filesize = curlx_strtoofft(ptr+1, NULL, 10);
-    if(filesize)
-      Curl_pgrsSetDownloadSize(data, filesize);
-
-    infof(data, "Found %" FORMAT_OFF_TU " bytes to download\n", filesize);
-
-    if(pp->cache) {
-      /* At this point there is a bunch of data in the header "cache" that is
-         actually body content, send it as body and then skip it. Do note
-         that there may even be additional "headers" after the body. */
-      size_t chunk = pp->cache_size;
-
-      if(chunk > (size_t)filesize)
-        /* the conversion from curl_off_t to size_t is always fine here */
-        chunk = (size_t)filesize;
-
-      result = Curl_client_write(conn, CLIENTWRITE_BODY, pp->cache, chunk);
-      if(result)
-        return result;
-
-      filesize -= chunk;
-
-      /* we've now used parts of or the entire cache */
-      if(pp->cache_size > chunk) {
-        /* part of, move the trailing data to the start and reduce the size */
-        memmove(pp->cache, pp->cache+chunk,
-                pp->cache_size - chunk);
-        pp->cache_size -= chunk;
-      }
-      else {
-        /* cache is drained */
-        free(pp->cache);
-        pp->cache = NULL;
-        pp->cache_size = 0;
-      }
-    }
-
-    infof(data, "Filesize left: %" FORMAT_OFF_T "\n", filesize);
-
-    if(!filesize)
-      /* the entire data is already transfered! */
-      result=Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-    else
-      /* IMAP download */
-      result=Curl_setup_transfer(conn, FIRSTSOCKET, filesize, FALSE,
-                                 imap->bytecountp,
-                                 -1, NULL); /* no upload here */
-
-    data->req.maxdownload = filesize;
-  }
-  else
-    /* We don't know how to parse this line */
-    result = CURLE_FTP_WEIRD_SERVER_REPLY; /* TODO: fix this code */
-
-  state(conn, IMAP_STOP);
-  return result;
-}
-
-/* start the DO phase */
-static CURLcode imap_select(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct imap_conn *imapc = &conn->proto.imapc;
-  const char *str;
-
-  str = getcmdid(conn);
-
-  result = imapsendf(conn, str, "%s SELECT %s", str,
-                     imapc->mailbox?imapc->mailbox:"");
-  if(result)
-    return result;
-
-  state(conn, IMAP_SELECT);
-  return result;
-}
-
-static CURLcode imap_fetch(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  const char *str;
-
-  str = getcmdid(conn);
-
-  /* TODO: make this select the correct mail
-   * Use "1 body[text]" to get the full mail body of mail 1
-   */
-  result = imapsendf(conn, str, "%s FETCH 1 BODY[TEXT]", str);
-  if(result)
-    return result;
-
-  /*
-   * When issued, the server will respond with a single line similar to
-   * '* 1 FETCH (BODY[TEXT] {2021}'
-   *
-   * Identifying the fetch and how many bytes of contents we can expect. We
-   * must extract that number before continuing to "download as usual".
-   */
-
-  state(conn, IMAP_FETCH);
-  return result;
-}
-
-/* for SELECT responses */
-static CURLcode imap_state_select_resp(struct connectdata *conn,
-                                       int imapcode,
-                                       imapstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  (void)instate; /* no use for this yet */
-
-  if(imapcode != 'O') {
-    failf(data, "Select failed");
-    result = CURLE_LOGIN_DENIED;
-  }
-  else
-    result = imap_fetch(conn);
-  return result;
-}
-
-static CURLcode imap_statemach_act(struct connectdata *conn)
-{
-  CURLcode result;
-  curl_socket_t sock = conn->sock[FIRSTSOCKET];
-  struct SessionHandle *data=conn->data;
-  int imapcode;
-  struct imap_conn *imapc = &conn->proto.imapc;
-  struct pingpong *pp = &imapc->pp;
-  size_t nread = 0;
-
-  if(pp->sendleft)
-    return Curl_pp_flushsend(pp);
-
-  /* we read a piece of response */
-  result = Curl_pp_readresp(sock, pp, &imapcode, &nread);
-  if(result)
-    return result;
-
-  if(imapcode)
-  /* we have now received a full IMAP server response */
-  switch(imapc->state) {
-  case IMAP_SERVERGREET:
-    if(imapcode != 'O') {
-      failf(data, "Got unexpected imap-server response");
-      return CURLE_FTP_WEIRD_SERVER_REPLY;
-    }
-
-    if(data->set.ftp_ssl && !conn->ssl[FIRSTSOCKET].use) {
-      /* We don't have a SSL/TLS connection yet, but SSL is requested. Switch
-         to TLS connection now */
-      const char *str;
-
-      str = getcmdid(conn);
-      result = imapsendf(conn, str, "%s STARTTLS", str);
-      state(conn, IMAP_STARTTLS);
-    }
-    else
-      result = imap_state_login(conn);
-    if(result)
-      return result;
-    break;
-
-  case IMAP_LOGIN:
-    result = imap_state_login_resp(conn, imapcode, imapc->state);
-    break;
-
-  case IMAP_STARTTLS:
-    result = imap_state_starttls_resp(conn, imapcode, imapc->state);
-    break;
-
-  case IMAP_FETCH:
-    result = imap_state_fetch_resp(conn, imapcode, imapc->state);
-    break;
-
-  case IMAP_SELECT:
-    result = imap_state_select_resp(conn, imapcode, imapc->state);
-    break;
-
-  case IMAP_LOGOUT:
-    /* fallthrough, just stop! */
-  default:
-    /* internal error */
-    state(conn, IMAP_STOP);
-    break;
-  }
-
-  return result;
-}
-
-/* called repeatedly until done from multi.c */
-static CURLcode imap_multi_statemach(struct connectdata *conn,
-                                         bool *done)
-{
-  struct imap_conn *imapc = &conn->proto.imapc;
-  CURLcode result = Curl_pp_multi_statemach(&imapc->pp);
-
-  *done = (bool)(imapc->state == IMAP_STOP);
-
-  return result;
-}
-
-static CURLcode imap_easy_statemach(struct connectdata *conn)
-{
-  struct imap_conn *imapc = &conn->proto.imapc;
-  struct pingpong *pp = &imapc->pp;
-  CURLcode result = CURLE_OK;
-
-  while(imapc->state != IMAP_STOP) {
-    result = Curl_pp_easy_statemach(pp);
-    if(result)
-      break;
-  }
-
-  return result;
-}
-
-/*
- * Allocate and initialize the struct IMAP for the current SessionHandle.  If
- * need be.
- */
-static CURLcode imap_init(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  struct FTP *imap = data->state.proto.imap;
-  if(!imap) {
-    imap = data->state.proto.imap = calloc(sizeof(struct FTP), 1);
-    if(!imap)
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-  /* get some initial data into the imap struct */
-  imap->bytecountp = &data->req.bytecount;
-
-  /* No need to duplicate user+password, the connectdata struct won't change
-     during a session, but we re-init them here since on subsequent inits
-     since the conn struct may have changed or been replaced.
-  */
-  imap->user = conn->user;
-  imap->passwd = conn->passwd;
-
-  return CURLE_OK;
-}
-
-/*
- * imap_connect() should do everything that is to be considered a part of
- * the connection phase.
- *
- * The variable 'done' points to will be TRUE if the protocol-layer connect
- * phase is done when this function returns, or FALSE is not. When called as
- * a part of the easy interface, it will always be TRUE.
- */
-static CURLcode imap_connect(struct connectdata *conn,
-                                 bool *done) /* see description above */
-{
-  CURLcode result;
-  struct imap_conn *imapc = &conn->proto.imapc;
-  struct SessionHandle *data=conn->data;
-  struct pingpong *pp = &imapc->pp;
-
-  *done = FALSE; /* default to not done yet */
-
-  /* If there already is a protocol-specific struct allocated for this
-     sessionhandle, deal with it */
-  Curl_reset_reqproto(conn);
-
-  result = imap_init(conn);
-  if(CURLE_OK != result)
-    return result;
-
-  /* We always support persistant connections on imap */
-  conn->bits.close = FALSE;
-
-  pp->response_time = RESP_TIMEOUT; /* set default response time-out */
-  pp->statemach_act = imap_statemach_act;
-  pp->endofresp = imap_endofresp;
-  pp->conn = conn;
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_PROXY)
-  if(conn->bits.tunnel_proxy && conn->bits.httpproxy) {
-    /* for IMAP over HTTP proxy */
-    struct HTTP http_proxy;
-    struct FTP *imap_save;
-
-    /* BLOCKING */
-    /* We want "seamless" IMAP operations through HTTP proxy tunnel */
-
-    /* Curl_proxyCONNECT is based on a pointer to a struct HTTP at the member
-     * conn->proto.http; we want IMAP through HTTP and we have to change the
-     * member temporarily for connecting to the HTTP proxy. After
-     * Curl_proxyCONNECT we have to set back the member to the original struct
-     * IMAP pointer
-     */
-    imap_save = data->state.proto.imap;
-    memset(&http_proxy, 0, sizeof(http_proxy));
-    data->state.proto.http = &http_proxy;
-
-    result = Curl_proxyCONNECT(conn, FIRSTSOCKET,
-                               conn->host.name, conn->remote_port);
-
-    data->state.proto.imap = imap_save;
-
-    if(CURLE_OK != result)
-      return result;
-  }
-#endif /* !CURL_DISABLE_HTTP && !CURL_DISABLE_PROXY */
-
-  if(conn->protocol & PROT_IMAPS) {
-    /* BLOCKING */
-    /* IMAPS is simply imap with SSL for the control channel */
-    /* now, perform the SSL initialization for this socket */
-    result = Curl_ssl_connect(conn, FIRSTSOCKET);
-    if(result)
-      return result;
-  }
-
-  Curl_pp_init(pp); /* init generic pingpong data */
-
-  /* When we connect, we start in the state where we await the server greeting
-     response */
-  state(conn, IMAP_SERVERGREET);
-  imapc->idstr = "*"; /* we start off waiting for a '*' response */
-
-  if(data->state.used_interface == Curl_if_multi)
-    result = imap_multi_statemach(conn, done);
-  else {
-    result = imap_easy_statemach(conn);
-    if(!result)
-      *done = TRUE;
-  }
-
-  return result;
-}
-
-/***********************************************************************
- *
- * imap_done()
- *
- * The DONE function. This does what needs to be done after a single DO has
- * performed.
- *
- * Input argument is already checked for validity.
- */
-static CURLcode imap_done(struct connectdata *conn, CURLcode status,
-                          bool premature)
-{
-  struct SessionHandle *data = conn->data;
-  struct FTP *imap = data->state.proto.imap;
-  CURLcode result=CURLE_OK;
-  (void)premature;
-
-  if(!imap)
-    /* When the easy handle is removed from the multi while libcurl is still
-     * trying to resolve the host name, it seems that the imap struct is not
-     * yet initialized, but the removal action calls Curl_done() which calls
-     * this function. So we simply return success if no imap pointer is set.
-     */
-    return CURLE_OK;
-
-  if(status) {
-    conn->bits.close = TRUE; /* marked for closure */
-    result = status;      /* use the already set error code */
-  }
-
-  /* clear these for next connection */
-  imap->transfer = FTPTRANSFER_BODY;
-
-  return result;
-}
-
-/***********************************************************************
- *
- * imap_perform()
- *
- * This is the actual DO function for IMAP. Get a file/directory according to
- * the options previously setup.
- */
-
-static
-CURLcode imap_perform(struct connectdata *conn,
-                     bool *connected,  /* connect status after PASV / PORT */
-                     bool *dophase_done)
-{
-  /* this is IMAP and no proxy */
-  CURLcode result=CURLE_OK;
-
-  DEBUGF(infof(conn->data, "DO phase starts\n"));
-
-  if(conn->data->set.opt_no_body) {
-    /* requested no body means no transfer... */
-    struct FTP *imap = conn->data->state.proto.imap;
-    imap->transfer = FTPTRANSFER_INFO;
-  }
-
-  *dophase_done = FALSE; /* not done yet */
-
-  /* start the first command in the DO phase */
-  result = imap_select(conn);
-  if(result)
-    return result;
-
-  /* run the state-machine */
-  if(conn->data->state.used_interface == Curl_if_multi)
-    result = imap_multi_statemach(conn, dophase_done);
-  else {
-    result = imap_easy_statemach(conn);
-    *dophase_done = TRUE; /* with the easy interface we are done here */
-  }
-  *connected = conn->bits.tcpconnect;
-
-  if(*dophase_done)
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-
-  return result;
-}
-
-/***********************************************************************
- *
- * imap_do()
- *
- * This function is registered as 'curl_do' function. It decodes the path
- * parts etc as a wrapper to the actual DO function (imap_perform).
- *
- * The input argument is already checked for validity.
- */
-static CURLcode imap_do(struct connectdata *conn, bool *done)
-{
-  CURLcode retcode = CURLE_OK;
-
-  *done = FALSE; /* default to false */
-
-  /*
-    Since connections can be re-used between SessionHandles, this might be a
-    connection already existing but on a fresh SessionHandle struct so we must
-    make sure we have a good 'struct IMAP' to play with. For new connections,
-    the struct IMAP is allocated and setup in the imap_connect() function.
-  */
-  Curl_reset_reqproto(conn);
-  retcode = imap_init(conn);
-  if(retcode)
-    return retcode;
-
-  retcode = imap_parse_url_path(conn);
-  if(retcode)
-    return retcode;
-
-  retcode = imap_regular_transfer(conn, done);
-
-  return retcode;
-}
-
-/***********************************************************************
- *
- * imap_logout()
- *
- * This should be called before calling sclose().  We should then wait for the
- * response from the server before returning. The calling code should then try
- * to close the connection.
- *
- */
-static CURLcode imap_logout(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  const char *str;
-
-  str = getcmdid(conn);
-
-  result = imapsendf(conn, str, "%s LOGOUT", str, NULL);
-  if(result)
-    return result;
-  state(conn, IMAP_LOGOUT);
-
-  result = imap_easy_statemach(conn);
-
-  return result;
-}
-
-/***********************************************************************
- *
- * imap_disconnect()
- *
- * Disconnect from an IMAP server. Cleanup protocol-specific per-connection
- * resources. BLOCKING.
- */
-static CURLcode imap_disconnect(struct connectdata *conn)
-{
-  struct imap_conn *imapc= &conn->proto.imapc;
-
-  /* The IMAP session may or may not have been allocated/setup at this
-     point! */
-  if (imapc->pp.conn)
-    (void)imap_logout(conn); /* ignore errors on the LOGOUT */
-
-  Curl_pp_disconnect(&imapc->pp);
-
-  Curl_safefree(imapc->mailbox);
-
-  return CURLE_OK;
-}
-
-/***********************************************************************
- *
- * imap_parse_url_path()
- *
- * Parse the URL path into separate path components.
- *
- */
-static CURLcode imap_parse_url_path(struct connectdata *conn)
-{
-  /* the imap struct is already inited in imap_connect() */
-  struct imap_conn *imapc = &conn->proto.imapc;
-  struct SessionHandle *data = conn->data;
-  const char *path = data->state.path;
-  int len;
-
-  if(!*path)
-    path = "INBOX";
-
-  /* url decode the path and use this mailbox */
-  imapc->mailbox = curl_easy_unescape(data, path, 0, &len);
-  if(!imapc->mailbox)
-    return CURLE_OUT_OF_MEMORY;
-
-  return CURLE_OK;
-}
-
-/* call this when the DO phase has completed */
-static CURLcode imap_dophase_done(struct connectdata *conn,
-                                  bool connected)
-{
-  CURLcode result = CURLE_OK;
-  struct FTP *imap = conn->data->state.proto.imap;
-  (void)connected;
-
-  if(imap->transfer != FTPTRANSFER_BODY)
-    /* no data to transfer */
-    result=Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-
-  return result;
-}
-
-/* called from multi.c while DOing */
-static CURLcode imap_doing(struct connectdata *conn,
-                               bool *dophase_done)
-{
-  CURLcode result;
-  result = imap_multi_statemach(conn, dophase_done);
-
-  if(*dophase_done) {
-    result = imap_dophase_done(conn, FALSE /* not connected */);
-
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-  }
-  return result;
-}
-
-/***********************************************************************
- *
- * imap_regular_transfer()
- *
- * The input argument is already checked for validity.
- *
- * Performs all commands done before a regular transfer between a local and a
- * remote host.
- *
- */
-static
-CURLcode imap_regular_transfer(struct connectdata *conn,
-                              bool *dophase_done)
-{
-  CURLcode result=CURLE_OK;
-  bool connected=FALSE;
-  struct SessionHandle *data = conn->data;
-  data->req.size = -1; /* make sure this is unknown at this point */
-
-  Curl_pgrsSetUploadCounter(data, 0);
-  Curl_pgrsSetDownloadCounter(data, 0);
-  Curl_pgrsSetUploadSize(data, 0);
-  Curl_pgrsSetDownloadSize(data, 0);
-
-  result = imap_perform(conn,
-                        &connected, /* have we connected after PASV/PORT */
-                        dophase_done); /* all commands in the DO-phase done? */
-
-  if(CURLE_OK == result) {
-
-    if(!*dophase_done)
-      /* the DO phase has not completed yet */
-      return CURLE_OK;
-
-    result = imap_dophase_done(conn, connected);
-    if(result)
-      return result;
-  }
-
-  return result;
-}
-
-static CURLcode imap_setup_connection(struct connectdata * conn)
-{
-  struct SessionHandle *data = conn->data;
-
-  if(conn->bits.httpproxy && !data->set.tunnel_thru_httpproxy) {
-    /* Unless we have asked to tunnel imap operations through the proxy, we
-       switch and use HTTP operations only */
-#ifndef CURL_DISABLE_HTTP
-    if(conn->handler == &Curl_handler_imap)
-      conn->handler = &Curl_handler_imap_proxy;
-    else {
-#ifdef USE_SSL
-      conn->handler = &Curl_handler_imaps_proxy;
-#else
-      failf(data, "IMAPS not supported!");
-      return CURLE_UNSUPPORTED_PROTOCOL;
-#endif
-    }
-    /*
-     * We explicitly mark this connection as persistent here as we're doing
-     * IMAP over HTTP and thus we accidentally avoid setting this value
-     * otherwise.
-     */
-    conn->bits.close = FALSE;
-#else
-    failf(data, "IMAP over http proxy requires HTTP support built-in!");
-    return CURLE_UNSUPPORTED_PROTOCOL;
-#endif
-  }
-
-  data->state.path++;   /* don't include the initial slash */
-
-  return CURLE_OK;
-}
-
-#endif /* CURL_DISABLE_IMAP */
diff --git a/src/other/curl/lib/imap.h b/src/other/curl/lib/imap.h
deleted file mode 100644
index 2f0b62a..0000000
--- a/src/other/curl/lib/imap.h
+++ /dev/null
@@ -1,55 +0,0 @@
-#ifndef __IMAP_H
-#define __IMAP_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "pingpong.h"
-
-/****************************************************************************
- * IMAP unique setup
- ***************************************************************************/
-typedef enum {
-  IMAP_STOP,    /* do nothing state, stops the state machine */
-  IMAP_SERVERGREET, /* waiting for the initial greeting immediately after
-                       a connect */
-  IMAP_LOGIN,
-  IMAP_STARTTLS,
-  IMAP_SELECT,
-  IMAP_FETCH,
-  IMAP_LOGOUT,
-  IMAP_LAST  /* never used */
-} imapstate;
-
-/* imap_conn is used for struct connection-oriented data in the connectdata
-   struct */
-struct imap_conn {
-  struct pingpong pp;
-  char *mailbox;     /* what to FETCH */
-  imapstate state; /* always use imap.c:state() to change state! */
-  int cmdid;       /* id number/index */
-  const char *idstr; /* pointer to a string for which to wait for as id */
-};
-
-extern const struct Curl_handler Curl_handler_imap;
-extern const struct Curl_handler Curl_handler_imaps;
-
-#endif /* __IMAP_H */
diff --git a/src/other/curl/lib/inet_ntop.c b/src/other/curl/lib/inet_ntop.c
deleted file mode 100644
index 26867f4..0000000
--- a/src/other/curl/lib/inet_ntop.c
+++ /dev/null
@@ -1,216 +0,0 @@
-/*
- * Copyright (C) 1996-2001  Internet Software Consortium.
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
- * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
- * INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
- * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
- * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
- * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-/*
- * Original code by Paul Vixie. "curlified" by Gisle Vanem.
- */
-
-#include "setup.h"
-
-#ifndef HAVE_INET_NTOP
-
-#ifdef HAVE_SYS_PARAM_H
-#include <sys/param.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#include <string.h>
-#include <errno.h>
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "inet_ntop.h"
-
-#define IN6ADDRSZ       16
-#define INADDRSZ         4
-#define INT16SZ          2
-
-/*
- * Format an IPv4 address, more or less like inet_ntoa().
- *
- * Returns `dst' (as a const)
- * Note:
- *  - uses no statics
- *  - takes a unsigned char* not an in_addr as input
- */
-static char *inet_ntop4 (const unsigned char *src, char *dst, size_t size)
-{
-  char tmp[sizeof "255.255.255.255"];
-  size_t len;
-
-  DEBUGASSERT(size >= 16);
-
-  tmp[0] = '\0';
-  (void)snprintf(tmp, sizeof(tmp), "%d.%d.%d.%d",
-          ((int)((unsigned char)src[0])) & 0xff,
-          ((int)((unsigned char)src[1])) & 0xff,
-          ((int)((unsigned char)src[2])) & 0xff,
-          ((int)((unsigned char)src[3])) & 0xff);
-
-  len = strlen(tmp);
-  if(len == 0 || len >= size)
-  {
-    SET_ERRNO(ENOSPC);
-    return (NULL);
-  }
-  strcpy(dst, tmp);
-  return dst;
-}
-
-#ifdef ENABLE_IPV6
-/*
- * Convert IPv6 binary address into presentation (printable) format.
- */
-static char *inet_ntop6 (const unsigned char *src, char *dst, size_t size)
-{
-  /*
-   * Note that int32_t and int16_t need only be "at least" large enough
-   * to contain a value of the specified size.  On some systems, like
-   * Crays, there is no such thing as an integer variable with 16 bits.
-   * Keep this in mind if you think this function should have been coded
-   * to use pointer overlays.  All the world's not a VAX.
-   */
-  char tmp[sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255")];
-  char *tp;
-  struct {
-    long base;
-    long len;
-  } best, cur;
-  unsigned long words[IN6ADDRSZ / INT16SZ];
-  int i;
-
-  /* Preprocess:
-   *  Copy the input (bytewise) array into a wordwise array.
-   *  Find the longest run of 0x00's in src[] for :: shorthanding.
-   */
-  memset(words, '\0', sizeof(words));
-  for (i = 0; i < IN6ADDRSZ; i++)
-      words[i/2] |= (src[i] << ((1 - (i % 2)) << 3));
-
-  best.base = -1;
-  cur.base  = -1;
-  best.len = 0;
-  cur.len = 0;
-
-  for (i = 0; i < (IN6ADDRSZ / INT16SZ); i++)
-  {
-    if(words[i] == 0)
-    {
-      if(cur.base == -1)
-        cur.base = i, cur.len = 1;
-      else
-        cur.len++;
-    }
-    else if(cur.base != -1)
-    {
-      if(best.base == -1 || cur.len > best.len)
-         best = cur;
-      cur.base = -1;
-    }
-  }
-  if((cur.base != -1) && (best.base == -1 || cur.len > best.len))
-     best = cur;
-  if(best.base != -1 && best.len < 2)
-     best.base = -1;
-
-  /* Format the result.
-   */
-  tp = tmp;
-  for (i = 0; i < (IN6ADDRSZ / INT16SZ); i++)
-  {
-    /* Are we inside the best run of 0x00's?
-     */
-    if(best.base != -1 && i >= best.base && i < (best.base + best.len))
-    {
-      if(i == best.base)
-         *tp++ = ':';
-      continue;
-    }
-
-    /* Are we following an initial run of 0x00s or any real hex?
-     */
-    if(i != 0)
-       *tp++ = ':';
-
-    /* Is this address an encapsulated IPv4?
-     */
-    if(i == 6 && best.base == 0 &&
-        (best.len == 6 || (best.len == 5 && words[5] == 0xffff)))
-    {
-      if(!inet_ntop4(src+12, tp, sizeof(tmp) - (tp - tmp)))
-      {
-        SET_ERRNO(ENOSPC);
-        return (NULL);
-      }
-      tp += strlen(tp);
-      break;
-    }
-    tp += snprintf(tp, 5, "%lx", words[i]);
-  }
-
-  /* Was it a trailing run of 0x00's?
-   */
-  if(best.base != -1 && (best.base + best.len) == (IN6ADDRSZ / INT16SZ))
-     *tp++ = ':';
-  *tp++ = '\0';
-
-  /* Check for overflow, copy, and we're done.
-   */
-  if((size_t)(tp - tmp) > size)
-  {
-    SET_ERRNO(ENOSPC);
-    return (NULL);
-  }
-  strcpy(dst, tmp);
-  return dst;
-}
-#endif  /* ENABLE_IPV6 */
-
-/*
- * Convert a network format address to presentation format.
- *
- * Returns pointer to presentation format address (`buf').
- * Returns NULL on error and errno set with the specific
- * error, EAFNOSUPPORT or ENOSPC.
- *
- * On Windows we store the error in the thread errno, not
- * in the winsock error code. This is to avoid loosing the
- * actual last winsock error. So use macro ERRNO to fetch the
- * errno this funtion sets when returning NULL, not SOCKERRNO.
- */
-char *Curl_inet_ntop(int af, const void *src, char *buf, size_t size)
-{
-  switch (af) {
-  case AF_INET:
-    return inet_ntop4((const unsigned char*)src, buf, size);
-#ifdef ENABLE_IPV6
-  case AF_INET6:
-    return inet_ntop6((const unsigned char*)src, buf, size);
-#endif
-  default:
-    SET_ERRNO(EAFNOSUPPORT);
-    return NULL;
-  }
-}
-#endif  /* HAVE_INET_NTOP */
diff --git a/src/other/curl/lib/inet_ntop.h b/src/other/curl/lib/inet_ntop.h
deleted file mode 100644
index 8db9775..0000000
--- a/src/other/curl/lib/inet_ntop.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#ifndef __INET_NTOP_H
-#define __INET_NTOP_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-char *Curl_inet_ntop(int af, const void *addr, char *buf, size_t size);
-
-#ifdef HAVE_INET_NTOP
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#define Curl_inet_ntop(af,addr,buf,size) \
-        inet_ntop(af,addr,buf,(curl_socklen_t)size)
-#endif
-
-#endif /* __INET_NTOP_H */
diff --git a/src/other/curl/lib/inet_pton.c b/src/other/curl/lib/inet_pton.c
deleted file mode 100644
index 9189ce6..0000000
--- a/src/other/curl/lib/inet_pton.c
+++ /dev/null
@@ -1,239 +0,0 @@
-/* This is from the BIND 4.9.4 release, modified to compile by itself */
-
-/* Copyright (c) 1996 by Internet Software Consortium.
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
- * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
- * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
- * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
- * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
- * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
- * SOFTWARE.
- */
-
-#include "setup.h"
-
-#ifndef HAVE_INET_PTON
-
-#ifdef HAVE_SYS_PARAM_H
-#include <sys/param.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#include <string.h>
-#include <errno.h>
-
-#include "inet_pton.h"
-
-#define IN6ADDRSZ       16
-#define INADDRSZ         4
-#define INT16SZ          2
-
-/*
- * WARNING: Don't even consider trying to compile this on a system where
- * sizeof(int) < 4.  sizeof(int) > 4 is fine; all the world's not a VAX.
- */
-
-static int      inet_pton4(const char *src, unsigned char *dst);
-#ifdef ENABLE_IPV6
-static int      inet_pton6(const char *src, unsigned char *dst);
-#endif
-
-/* int
- * inet_pton(af, src, dst)
- *      convert from presentation format (which usually means ASCII printable)
- *      to network format (which is usually some kind of binary format).
- * return:
- *      1 if the address was valid for the specified address family
- *      0 if the address wasn't valid (`dst' is untouched in this case)
- *      -1 if some other error occurred (`dst' is untouched in this case, too)
- * notice:
- *      On Windows we store the error in the thread errno, not
- *      in the winsock error code. This is to avoid loosing the
- *      actual last winsock error. So use macro ERRNO to fetch the
- *      errno this funtion sets when returning (-1), not SOCKERRNO.
- * author:
- *      Paul Vixie, 1996.
- */
-int
-Curl_inet_pton(int af, const char *src, void *dst)
-{
-  switch (af) {
-  case AF_INET:
-    return (inet_pton4(src, (unsigned char *)dst));
-#ifdef ENABLE_IPV6
-  case AF_INET6:
-    return (inet_pton6(src, (unsigned char *)dst));
-#endif
-  default:
-    SET_ERRNO(EAFNOSUPPORT);
-    return (-1);
-  }
-  /* NOTREACHED */
-}
-
-/* int
- * inet_pton4(src, dst)
- *      like inet_aton() but without all the hexadecimal and shorthand.
- * return:
- *      1 if `src' is a valid dotted quad, else 0.
- * notice:
- *      does not touch `dst' unless it's returning 1.
- * author:
- *      Paul Vixie, 1996.
- */
-static int
-inet_pton4(const char *src, unsigned char *dst)
-{
-  static const char digits[] = "0123456789";
-  int saw_digit, octets, ch;
-  unsigned char tmp[INADDRSZ], *tp;
-
-  saw_digit = 0;
-  octets = 0;
-  tp = tmp;
-  *tp = 0;
-  while((ch = *src++) != '\0') {
-    const char *pch;
-
-    if((pch = strchr(digits, ch)) != NULL) {
-      unsigned int val = *tp * 10 + (unsigned int)(pch - digits);
-
-      if(saw_digit && *tp == 0)
-        return (0);
-      if(val > 255)
-        return (0);
-      *tp = (unsigned char)val;
-      if(! saw_digit) {
-        if(++octets > 4)
-          return (0);
-        saw_digit = 1;
-      }
-    }
-    else if(ch == '.' && saw_digit) {
-      if(octets == 4)
-        return (0);
-      *++tp = 0;
-      saw_digit = 0;
-    }
-    else
-      return (0);
-  }
-  if(octets < 4)
-    return (0);
-  memcpy(dst, tmp, INADDRSZ);
-  return (1);
-}
-
-#ifdef ENABLE_IPV6
-/* int
- * inet_pton6(src, dst)
- *      convert presentation level address to network order binary form.
- * return:
- *      1 if `src' is a valid [RFC1884 2.2] address, else 0.
- * notice:
- *      (1) does not touch `dst' unless it's returning 1.
- *      (2) :: in a full address is silently ignored.
- * credit:
- *      inspired by Mark Andrews.
- * author:
- *      Paul Vixie, 1996.
- */
-static int
-inet_pton6(const char *src, unsigned char *dst)
-{
-  static const char xdigits_l[] = "0123456789abcdef",
-    xdigits_u[] = "0123456789ABCDEF";
-  unsigned char tmp[IN6ADDRSZ], *tp, *endp, *colonp;
-  const char *xdigits, *curtok;
-  int ch, saw_xdigit;
-  unsigned int val;
-
-  memset((tp = tmp), 0, IN6ADDRSZ);
-  endp = tp + IN6ADDRSZ;
-  colonp = NULL;
-  /* Leading :: requires some special handling. */
-  if(*src == ':')
-    if(*++src != ':')
-      return (0);
-  curtok = src;
-  saw_xdigit = 0;
-  val = 0;
-  while((ch = *src++) != '\0') {
-    const char *pch;
-
-    if((pch = strchr((xdigits = xdigits_l), ch)) == NULL)
-      pch = strchr((xdigits = xdigits_u), ch);
-    if(pch != NULL) {
-      val <<= 4;
-      val |= (pch - xdigits);
-      if(++saw_xdigit > 4)
-        return (0);
-      continue;
-    }
-    if(ch == ':') {
-      curtok = src;
-      if(!saw_xdigit) {
-        if(colonp)
-          return (0);
-        colonp = tp;
-        continue;
-      }
-      if(tp + INT16SZ > endp)
-        return (0);
-      *tp++ = (unsigned char) (val >> 8) & 0xff;
-      *tp++ = (unsigned char) val & 0xff;
-      saw_xdigit = 0;
-      val = 0;
-      continue;
-    }
-    if(ch == '.' && ((tp + INADDRSZ) <= endp) &&
-        inet_pton4(curtok, tp) > 0) {
-      tp += INADDRSZ;
-      saw_xdigit = 0;
-      break;    /* '\0' was seen by inet_pton4(). */
-    }
-    return (0);
-  }
-  if(saw_xdigit) {
-    if(tp + INT16SZ > endp)
-      return (0);
-    *tp++ = (unsigned char) (val >> 8) & 0xff;
-    *tp++ = (unsigned char) val & 0xff;
-  }
-  if(colonp != NULL) {
-    /*
-     * Since some memmove()'s erroneously fail to handle
-     * overlapping regions, we'll do the shift by hand.
-     */
-    const long n = tp - colonp;
-    long i;
-
-    if(tp == endp)
-      return (0);
-    for (i = 1; i <= n; i++) {
-      endp[- i] = colonp[n - i];
-      colonp[n - i] = 0;
-    }
-    tp = endp;
-  }
-  if(tp != endp)
-    return (0);
-  memcpy(dst, tmp, IN6ADDRSZ);
-  return (1);
-}
-#endif /* ENABLE_IPV6 */
-
-#endif /* HAVE_INET_PTON */
diff --git a/src/other/curl/lib/inet_pton.h b/src/other/curl/lib/inet_pton.h
deleted file mode 100644
index d53fddf..0000000
--- a/src/other/curl/lib/inet_pton.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#ifndef __INET_PTON_H
-#define __INET_PTON_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2005, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-int Curl_inet_pton(int, const char *, void *);
-
-#ifdef HAVE_INET_PTON
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#define Curl_inet_pton(x,y,z) inet_pton(x,y,z)
-#endif
-
-#endif /* __INET_PTON_H */
diff --git a/src/other/curl/lib/krb4.c b/src/other/curl/lib/krb4.c
deleted file mode 100644
index 2b59fec..0000000
--- a/src/other/curl/lib/krb4.c
+++ /dev/null
@@ -1,422 +0,0 @@
-/* This source code was modified by Martin Hedenfalk <mhe at stacken.kth.se> for
- * use in Curl. Martin's latest changes were done 2000-09-18.
- *
- * It has since been patched away like a madman by Daniel Stenberg to make it
- * better applied to curl conditions, and to make it not use globals, pollute
- * name space and more.
- *
- * Copyright (c) 1995, 1996, 1997, 1998, 1999 Kungliga Tekniska Högskolan
- * (Royal Institute of Technology, Stockholm, Sweden).
- * Copyright (c) 2004 - 2009 Daniel Stenberg
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * 3. Neither the name of the Institute nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- */
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_FTP
-#ifdef HAVE_KRB4
-
-#include <stdlib.h>
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#include <string.h>
-#include <krb.h>
-#include <des.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h> /* for getpid() */
-#endif
-
-#include "urldata.h"
-#include "curl_base64.h"
-#include "ftp.h"
-#include "sendf.h"
-#include "krb4.h"
-#include "inet_ntop.h"
-#include "curl_memory.h"
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#define LOCAL_ADDR (&conn->local_addr)
-#define REMOTE_ADDR conn->ip_addr->ai_addr
-#define myctladdr LOCAL_ADDR
-#define hisctladdr REMOTE_ADDR
-
-struct krb4_data {
-  des_cblock key;
-  des_key_schedule schedule;
-  char name[ANAME_SZ];
-  char instance[INST_SZ];
-  char realm[REALM_SZ];
-};
-
-#ifndef HAVE_STRLCPY
-/* if it ever goes non-static, make it Curl_ prefixed! */
-static size_t
-strlcpy (char *dst, const char *src, size_t dst_sz)
-{
-  size_t n;
-  char *p;
-
-  for (p = dst, n = 0;
-       n + 1 < dst_sz && *src != '\0';
-       ++p, ++src, ++n)
-    *p = *src;
-  *p = '\0';
-  if(*src == '\0')
-    return n;
-  else
-    return n + strlen (src);
-}
-#else
-size_t strlcpy (char *dst, const char *src, size_t dst_sz);
-#endif
-
-static int
-krb4_check_prot(void *app_data, int level)
-{
-  app_data = NULL; /* prevent compiler warning */
-  if(level == prot_confidential)
-    return -1;
-  return 0;
-}
-
-static int
-krb4_decode(void *app_data, void *buf, int len, int level,
-            struct connectdata *conn)
-{
-  MSG_DAT m;
-  int e;
-  struct krb4_data *d = app_data;
-
-  if(level == prot_safe)
-    e = krb_rd_safe(buf, len, &d->key,
-                    (struct sockaddr_in *)REMOTE_ADDR,
-                    (struct sockaddr_in *)LOCAL_ADDR, &m);
-  else
-    e = krb_rd_priv(buf, len, d->schedule, &d->key,
-                    (struct sockaddr_in *)REMOTE_ADDR,
-                    (struct sockaddr_in *)LOCAL_ADDR, &m);
-  if(e) {
-    struct SessionHandle *data = conn->data;
-    infof(data, "krb4_decode: %s\n", krb_get_err_text(e));
-    return -1;
-  }
-  memmove(buf, m.app_data, m.app_length);
-  return m.app_length;
-}
-
-static int
-krb4_overhead(void *app_data, int level, int len)
-{
-  /* no arguments are used, just init them to prevent compiler warnings */
-  app_data = NULL;
-  level = 0;
-  len = 0;
-  return 31;
-}
-
-static int
-krb4_encode(void *app_data, const void *from, int length, int level, void **to,
-            struct connectdata *conn)
-{
-  struct krb4_data *d = app_data;
-  *to = malloc(length + 31);
-  if(!*to)
-    return -1;
-  if(level == prot_safe)
-    /* NOTE that the void* cast is safe, krb_mk_safe/priv don't modify the
-     * input buffer
-     */
-    return krb_mk_safe((void*)from, *to, length, &d->key,
-                       (struct sockaddr_in *)LOCAL_ADDR,
-                       (struct sockaddr_in *)REMOTE_ADDR);
-  else if(level == prot_private)
-    return krb_mk_priv((void*)from, *to, length, d->schedule, &d->key,
-                       (struct sockaddr_in *)LOCAL_ADDR,
-                       (struct sockaddr_in *)REMOTE_ADDR);
-  else
-    return -1;
-}
-
-static int
-mk_auth(struct krb4_data *d, KTEXT adat,
-        const char *service, char *host, int checksum)
-{
-  int ret;
-  CREDENTIALS cred;
-  char sname[SNAME_SZ], inst[INST_SZ], realm[REALM_SZ];
-
-  strlcpy(sname, service, sizeof(sname));
-  strlcpy(inst, krb_get_phost(host), sizeof(inst));
-  strlcpy(realm, krb_realmofhost(host), sizeof(realm));
-  ret = krb_mk_req(adat, sname, inst, realm, checksum);
-  if(ret)
-    return ret;
-  strlcpy(sname, service, sizeof(sname));
-  strlcpy(inst, krb_get_phost(host), sizeof(inst));
-  strlcpy(realm, krb_realmofhost(host), sizeof(realm));
-  ret = krb_get_cred(sname, inst, realm, &cred);
-  memmove(&d->key, &cred.session, sizeof(des_cblock));
-  des_key_sched(&d->key, d->schedule);
-  memset(&cred, 0, sizeof(cred));
-  return ret;
-}
-
-#ifdef HAVE_KRB_GET_OUR_IP_FOR_REALM
-int krb_get_our_ip_for_realm(char *, struct in_addr *);
-#endif
-
-static int
-krb4_auth(void *app_data, struct connectdata *conn)
-{
-  int ret;
-  char *p;
-  unsigned char *ptr;
-  size_t len;
-  KTEXT_ST adat;
-  MSG_DAT msg_data;
-  int checksum;
-  u_int32_t cs;
-  struct krb4_data *d = app_data;
-  char *host = conn->host.name;
-  ssize_t nread;
-  int l = sizeof(conn->local_addr);
-  struct SessionHandle *data = conn->data;
-  CURLcode result;
-
-  if(getsockname(conn->sock[FIRSTSOCKET],
-                 (struct sockaddr *)LOCAL_ADDR, &l) < 0)
-    perror("getsockname()");
-
-  checksum = getpid();
-  ret = mk_auth(d, &adat, "ftp", host, checksum);
-  if(ret == KDC_PR_UNKNOWN)
-    ret = mk_auth(d, &adat, "rcmd", host, checksum);
-  if(ret) {
-    infof(data, "%s\n", krb_get_err_text(ret));
-    return AUTH_CONTINUE;
-  }
-
-#ifdef HAVE_KRB_GET_OUR_IP_FOR_REALM
-  if(krb_get_config_bool("nat_in_use")) {
-    struct sockaddr_in *localaddr  = (struct sockaddr_in *)LOCAL_ADDR;
-    struct in_addr natAddr;
-
-    if(krb_get_our_ip_for_realm(krb_realmofhost(host),
-                                 &natAddr) != KSUCCESS
-        && krb_get_our_ip_for_realm(NULL, &natAddr) != KSUCCESS)
-      infof(data, "Can't get address for realm %s\n",
-                 krb_realmofhost(host));
-    else {
-      if(natAddr.s_addr != localaddr->sin_addr.s_addr) {
-        char addr_buf[128];
-        if(Curl_inet_ntop(AF_INET, natAddr, addr_buf, sizeof(addr_buf)))
-          infof(data, "Using NAT IP address (%s) for kerberos 4\n", addr_buf);
-        localaddr->sin_addr = natAddr;
-      }
-    }
-  }
-#endif
-
-  if(Curl_base64_encode(conn->data, (char *)adat.dat, adat.length, &p) < 1) {
-    Curl_failf(data, "Out of memory base64-encoding");
-    return AUTH_CONTINUE;
-  }
-
-  result = Curl_ftpsendf(conn, "ADAT %s", p);
-
-  free(p);
-
-  if(result)
-    return -2;
-
-  if(Curl_GetFTPResponse(&nread, conn, NULL))
-    return -1;
-
-  if(data->state.buffer[0] != '2'){
-    Curl_failf(data, "Server didn't accept auth data");
-    return AUTH_ERROR;
-  }
-
-  p = strstr(data->state.buffer, "ADAT=");
-  if(!p) {
-    Curl_failf(data, "Remote host didn't send adat reply");
-    return AUTH_ERROR;
-  }
-  p += 5;
-  len = Curl_base64_decode(p, &ptr);
-  if(len > sizeof(adat.dat)-1) {
-    free(ptr);
-    len=0;
-  }
-  if(!len || !ptr) {
-    Curl_failf(data, "Failed to decode base64 from server");
-    return AUTH_ERROR;
-  }
-  memcpy((char *)adat.dat, ptr, len);
-  free(ptr);
-  adat.length = len;
-  ret = krb_rd_safe(adat.dat, adat.length, &d->key,
-                    (struct sockaddr_in *)hisctladdr,
-                    (struct sockaddr_in *)myctladdr, &msg_data);
-  if(ret) {
-    Curl_failf(data, "Error reading reply from server: %s",
-               krb_get_err_text(ret));
-    return AUTH_ERROR;
-  }
-  krb_get_int(msg_data.app_data, &cs, 4, 0);
-  if(cs - checksum != 1) {
-    Curl_failf(data, "Bad checksum returned from server");
-    return AUTH_ERROR;
-  }
-  return AUTH_OK;
-}
-
-struct Curl_sec_client_mech Curl_krb4_client_mech = {
-    "KERBEROS_V4",
-    sizeof(struct krb4_data),
-    NULL, /* init */
-    krb4_auth,
-    NULL, /* end */
-    krb4_check_prot,
-    krb4_overhead,
-    krb4_encode,
-    krb4_decode
-};
-
-CURLcode Curl_krb_kauth(struct connectdata *conn)
-{
-  des_cblock key;
-  des_key_schedule schedule;
-  KTEXT_ST tkt, tktcopy;
-  char *name;
-  char *p;
-  char passwd[100];
-  size_t tmp;
-  ssize_t nread;
-  int save;
-  CURLcode result;
-  unsigned char *ptr;
-
-  save = Curl_set_command_prot(conn, prot_private);
-
-  result = Curl_ftpsendf(conn, "SITE KAUTH %s", conn->user);
-
-  if(result)
-    return result;
-
-  result = Curl_GetFTPResponse(&nread, conn, NULL);
-  if(result)
-    return result;
-
-  if(conn->data->state.buffer[0] != '3'){
-    Curl_set_command_prot(conn, save);
-    return CURLE_FTP_WEIRD_SERVER_REPLY;
-  }
-
-  p = strstr(conn->data->state.buffer, "T=");
-  if(!p) {
-    Curl_failf(conn->data, "Bad reply from server");
-    Curl_set_command_prot(conn, save);
-    return CURLE_FTP_WEIRD_SERVER_REPLY;
-  }
-
-  p += 2;
-  tmp = Curl_base64_decode(p, &ptr);
-  if(tmp >= sizeof(tkt.dat)) {
-    free(ptr);
-    tmp=0;
-  }
-  if(!tmp || !ptr) {
-    Curl_failf(conn->data, "Failed to decode base64 in reply");
-    Curl_set_command_prot(conn, save);
-    return CURLE_FTP_WEIRD_SERVER_REPLY;
-  }
-  memcpy((char *)tkt.dat, ptr, tmp);
-  free(ptr);
-  tkt.length = tmp;
-  tktcopy.length = tkt.length;
-
-  p = strstr(conn->data->state.buffer, "P=");
-  if(!p) {
-    Curl_failf(conn->data, "Bad reply from server");
-    Curl_set_command_prot(conn, save);
-    return CURLE_FTP_WEIRD_SERVER_REPLY;
-  }
-  name = p + 2;
-  for(; *p && *p != ' ' && *p != '\r' && *p != '\n'; p++);
-  *p = 0;
-
-  des_string_to_key (conn->passwd, &key);
-  des_key_sched(&key, schedule);
-
-  des_pcbc_encrypt((void *)tkt.dat, (void *)tktcopy.dat,
-                   tkt.length,
-                   schedule, &key, DES_DECRYPT);
-  if(strcmp ((char*)tktcopy.dat + 8,
-              KRB_TICKET_GRANTING_TICKET) != 0) {
-    afs_string_to_key(passwd,
-                      krb_realmofhost(conn->host.name),
-                      &key);
-    des_key_sched(&key, schedule);
-    des_pcbc_encrypt((void *)tkt.dat, (void *)tktcopy.dat,
-                     tkt.length,
-                     schedule, &key, DES_DECRYPT);
-  }
-  memset(key, 0, sizeof(key));
-  memset(schedule, 0, sizeof(schedule));
-  memset(passwd, 0, sizeof(passwd));
-  if(Curl_base64_encode(conn->data, (char *)tktcopy.dat, tktcopy.length, &p)
-     < 1) {
-    failf(conn->data, "Out of memory base64-encoding.");
-    Curl_set_command_prot(conn, save);
-    return CURLE_OUT_OF_MEMORY;
-  }
-  memset (tktcopy.dat, 0, tktcopy.length);
-
-  result = Curl_ftpsendf(conn, "SITE KAUTH %s %s", name, p);
-  free(p);
-  if(result)
-    return result;
-
-  result = Curl_GetFTPResponse(&nread, conn, NULL);
-  if(result)
-    return result;
-  Curl_set_command_prot(conn, save);
-
-  return CURLE_OK;
-}
-
-#endif /* HAVE_KRB4 */
-#endif /* CURL_DISABLE_FTP */
diff --git a/src/other/curl/lib/krb4.h b/src/other/curl/lib/krb4.h
deleted file mode 100644
index 81998b5..0000000
--- a/src/other/curl/lib/krb4.h
+++ /dev/null
@@ -1,74 +0,0 @@
-#ifndef __KRB4_H
-#define __KRB4_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2006, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-struct Curl_sec_client_mech {
-  const char *name;
-  size_t size;
-  int (*init)(void *);
-  int (*auth)(void *, struct connectdata *);
-  void (*end)(void *);
-  int (*check_prot)(void *, int);
-  int (*overhead)(void *, int, int);
-  int (*encode)(void *, const void*, int, int, void**, struct connectdata *);
-  int (*decode)(void *, void*, int, int, struct connectdata *);
-};
-
-
-#define AUTH_OK         0
-#define AUTH_CONTINUE   1
-#define AUTH_ERROR      2
-
-#ifdef HAVE_KRB4
-extern struct Curl_sec_client_mech Curl_krb4_client_mech;
-#endif
-#ifdef HAVE_GSSAPI
-extern struct Curl_sec_client_mech Curl_krb5_client_mech;
-#endif
-
-CURLcode Curl_krb_kauth(struct connectdata *conn);
-int Curl_sec_fflush_fd(struct connectdata *conn, int fd);
-int Curl_sec_fprintf (struct connectdata *, FILE *, const char *, ...);
-int Curl_sec_getc (struct connectdata *conn, FILE *);
-int Curl_sec_putc (struct connectdata *conn, int, FILE *);
-int Curl_sec_read (struct connectdata *conn, int, void *, int);
-int Curl_sec_read_msg (struct connectdata *conn, char *, int);
-
-int Curl_sec_vfprintf(struct connectdata *, FILE *, const char *, va_list);
-int Curl_sec_fprintf2(struct connectdata *conn, FILE *f, const char *fmt, ...);
-int Curl_sec_vfprintf2(struct connectdata *conn, FILE *, const char *, va_list);
-ssize_t Curl_sec_send(struct connectdata *conn, int, const char *, int);
-int Curl_sec_write(struct connectdata *conn, int, const char *, int);
-
-void Curl_sec_end (struct connectdata *);
-int Curl_sec_login (struct connectdata *);
-void Curl_sec_prot (int, char **);
-int Curl_sec_request_prot (struct connectdata *conn, const char *level);
-void Curl_sec_set_protection_level(struct connectdata *conn);
-void Curl_sec_status (void);
-
-enum protection_level Curl_set_command_prot(struct connectdata *,
-                                            enum protection_level);
-
-
-#endif
diff --git a/src/other/curl/lib/krb5.c b/src/other/curl/lib/krb5.c
deleted file mode 100644
index 36afc3c..0000000
--- a/src/other/curl/lib/krb5.c
+++ /dev/null
@@ -1,325 +0,0 @@
-/* GSSAPI/krb5 support for FTP - loosely based on old krb4.c
- *
- * Copyright (c) 1995, 1996, 1997, 1998, 1999 Kungliga Tekniska Högskolan
- * (Royal Institute of Technology, Stockholm, Sweden).
- * Copyright (c) 2004 - 2009 Daniel Stenberg
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * 3. Neither the name of the Institute nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.  */
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_FTP
-#ifdef HAVE_GSSAPI
-
-#ifdef HAVE_OLD_GSSMIT
-#define GSS_C_NT_HOSTBASED_SERVICE gss_nt_service_name
-#endif
-
-#include <stdlib.h>
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#include <string.h>
-
-#ifdef HAVE_GSSGNU
-#  include <gss.h>
-#elif defined HAVE_GSSMIT
-   /* MIT style */
-#  include <gssapi/gssapi.h>
-#  include <gssapi/gssapi_generic.h>
-#  include <gssapi/gssapi_krb5.h>
-#else
-   /* Heimdal-style */
-#  include <gssapi.h>
-#endif
-
-#include "urldata.h"
-#include "curl_base64.h"
-#include "ftp.h"
-#include "sendf.h"
-#include "krb4.h"
-#include "curl_memory.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#define LOCAL_ADDR (&conn->local_addr)
-#define REMOTE_ADDR conn->ip_addr->ai_addr
-
-static int
-krb5_check_prot(void *app_data, int level)
-{
-  app_data = NULL; /* prevent compiler warning */
-  if(level == prot_confidential)
-    return -1;
-  return 0;
-}
-
-static int
-krb5_decode(void *app_data, void *buf, int len, int level,
-            struct connectdata *conn)
-{
-  gss_ctx_id_t *context = app_data;
-  OM_uint32 maj, min;
-  gss_buffer_desc enc, dec;
-
-  /* shut gcc up */
-  level = 0;
-  conn = NULL;
-
-  enc.value = buf;
-  enc.length = len;
-  maj = gss_unseal(&min, *context, &enc, &dec, NULL, NULL);
-  if(maj != GSS_S_COMPLETE) {
-    if(len >= 4)
-      strcpy(buf, "599 ");
-    return -1;
-  }
-
-  memcpy(buf, dec.value, dec.length);
-  len = dec.length;
-  gss_release_buffer(&min, &dec);
-
-  return len;
-}
-
-static int
-krb5_overhead(void *app_data, int level, int len)
-{
-  /* no arguments are used, just init them to prevent compiler warnings */
-  app_data = NULL;
-  level = 0;
-  len = 0;
-  return 0;
-}
-
-static int
-krb5_encode(void *app_data, const void *from, int length, int level, void **to,
-            struct connectdata *conn)
-{
-  gss_ctx_id_t *context = app_data;
-  gss_buffer_desc dec, enc;
-  OM_uint32 maj, min;
-  int state;
-  int len;
-
-  /* shut gcc up */
-  conn = NULL;
-
-  /* NOTE that the cast is safe, neither of the krb5, gnu gss and heimdal
-   * libraries modify the input buffer in gss_seal()
-   */
-  dec.value = (void*)from;
-  dec.length = length;
-  maj = gss_seal(&min, *context,
-                 level == prot_private,
-                 GSS_C_QOP_DEFAULT,
-                 &dec, &state, &enc);
-
-  if(maj != GSS_S_COMPLETE)
-    return -1;
-
-  /* malloc a new buffer, in case gss_release_buffer doesn't work as expected */
-  *to = malloc(enc.length);
-  if(!*to)
-    return -1;
-  memcpy(*to, enc.value, enc.length);
-  len = enc.length;
-  gss_release_buffer(&min, &enc);
-  return len;
-}
-
-static int
-krb5_auth(void *app_data, struct connectdata *conn)
-{
-  int ret;
-  char *p;
-  const char *host = conn->dns_entry->addr->ai_canonname;
-  ssize_t nread;
-  curl_socklen_t l = sizeof(conn->local_addr);
-  struct SessionHandle *data = conn->data;
-  CURLcode result;
-  const char *service = "ftp", *srv_host = "host";
-  gss_buffer_desc gssbuf, _gssresp, *gssresp;
-  OM_uint32 maj, min;
-  gss_name_t gssname;
-  gss_ctx_id_t *context = app_data;
-  struct gss_channel_bindings_struct chan;
-
-  if(getsockname(conn->sock[FIRSTSOCKET],
-                 (struct sockaddr *)LOCAL_ADDR, &l) < 0)
-    perror("getsockname()");
-
-  chan.initiator_addrtype = GSS_C_AF_INET;
-  chan.initiator_address.length = l - 4;
-  chan.initiator_address.value =
-    &((struct sockaddr_in *)LOCAL_ADDR)->sin_addr.s_addr;
-  chan.acceptor_addrtype = GSS_C_AF_INET;
-  chan.acceptor_address.length = l - 4;
-  chan.acceptor_address.value =
-    &((struct sockaddr_in *)REMOTE_ADDR)->sin_addr.s_addr;
-  chan.application_data.length = 0;
-  chan.application_data.value = NULL;
-
-  /* this loop will execute twice (once for service, once for host) */
-  while(1) {
-    /* this really shouldn't be repeated here, but can't help it */
-    if(service == srv_host) {
-      result = Curl_ftpsendf(conn, "AUTH GSSAPI");
-
-      if(result)
-        return -2;
-      if(Curl_GetFTPResponse(&nread, conn, NULL))
-        return -1;
-
-      if(data->state.buffer[0] != '3')
-        return -1;
-    }
-
-    gssbuf.value = data->state.buffer;
-    gssbuf.length = snprintf(gssbuf.value, BUFSIZE, "%s@%s", service, host);
-    maj = gss_import_name(&min, &gssbuf, GSS_C_NT_HOSTBASED_SERVICE, &gssname);
-    if(maj != GSS_S_COMPLETE) {
-      gss_release_name(&min, &gssname);
-      if(service == srv_host) {
-        Curl_failf(data, "Error importing service name %s", gssbuf.value);
-        return AUTH_ERROR;
-      }
-      service = srv_host;
-      continue;
-    }
-    {
-      gss_OID t;
-      gss_display_name(&min, gssname, &gssbuf, &t);
-      Curl_infof(data, "Trying against %s\n", gssbuf.value);
-      gss_release_buffer(&min, &gssbuf);
-    }
-    gssresp = GSS_C_NO_BUFFER;
-    *context = GSS_C_NO_CONTEXT;
-
-    do {
-      ret = AUTH_OK;
-      maj = gss_init_sec_context(&min,
-                                 GSS_C_NO_CREDENTIAL,
-                                 context,
-                                 gssname,
-                                 GSS_C_NO_OID,
-                                 GSS_C_MUTUAL_FLAG | GSS_C_REPLAY_FLAG,
-                                 0,
-                                 &chan,
-                                 gssresp,
-                                 NULL,
-                                 &gssbuf,
-                                 NULL,
-                                 NULL);
-
-      if(gssresp) {
-        free(_gssresp.value);
-        gssresp = NULL;
-      }
-
-      if(maj != GSS_S_COMPLETE && maj != GSS_S_CONTINUE_NEEDED) {
-        Curl_infof(data, "Error creating security context");
-        ret = AUTH_ERROR;
-        break;
-      }
-
-      if(gssbuf.length != 0) {
-        if(Curl_base64_encode(data, (char *)gssbuf.value, gssbuf.length, &p)
-           < 1) {
-          Curl_infof(data, "Out of memory base64-encoding");
-          ret = AUTH_CONTINUE;
-          break;
-        }
-
-        result = Curl_ftpsendf(conn, "ADAT %s", p);
-
-        free(p);
-
-        if(result) {
-          ret = -2;
-          break;
-        }
-
-        if(Curl_GetFTPResponse(&nread, conn, NULL)) {
-          ret = -1;
-          break;
-        }
-
-        if(data->state.buffer[0] != '2' && data->state.buffer[0] != '3'){
-          Curl_infof(data, "Server didn't accept auth data\n");
-          ret = AUTH_ERROR;
-          break;
-        }
-
-        p = data->state.buffer + 4;
-        p = strstr(p, "ADAT=");
-        if(p) {
-          _gssresp.length = Curl_base64_decode(p + 5, (unsigned char **)
-                                               &_gssresp.value);
-          if(_gssresp.length < 1) {
-            Curl_failf(data, "Out of memory base64-encoding");
-            ret = AUTH_CONTINUE;
-            break;
-          }
-        }
-
-        gssresp = &_gssresp;
-      }
-    } while(maj == GSS_S_CONTINUE_NEEDED);
-
-    gss_release_name(&min, &gssname);
-
-    if(gssresp)
-      free(_gssresp.value);
-
-    if(ret == AUTH_OK || service == srv_host)
-      return ret;
-
-    service = srv_host;
-  }
-}
-
-struct Curl_sec_client_mech Curl_krb5_client_mech = {
-    "GSSAPI",
-    sizeof(gss_ctx_id_t),
-    NULL, /* init */
-    krb5_auth,
-    NULL, /* end */
-    krb5_check_prot,
-    krb5_overhead,
-    krb5_encode,
-    krb5_decode
-};
-
-#endif /* HAVE_GSSAPI */
-#endif /* CURL_DISABLE_FTP */
diff --git a/src/other/curl/lib/ldap.c b/src/other/curl/lib/ldap.c
deleted file mode 100644
index 07ec5b0..0000000
--- a/src/other/curl/lib/ldap.c
+++ /dev/null
@@ -1,718 +0,0 @@
-/***************************************************************************
- *                      _   _ ____  _
- *  Project         ___| | | |  _ \| |
- *                 / __| | | | |_) | |
- *                | (__| |_| |  _ <| |___
- *                 \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_LDAP
-/* -- WIN32 approved -- */
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-#include <errno.h>
-
-#ifdef CURL_LDAP_HYBRID         /* If W$ definitions are needed. */
-# include <windows.h>
-  /* Remember we are NOT in a W$ compiler! */
-# undef WIN32
-# undef _WIN32
-# undef __WIN32__
-#endif
-
-#ifdef CURL_LDAP_WIN            /* Use W$ LDAP implementation. */
-# include <winldap.h>
-# ifndef LDAP_VENDOR_NAME
-#  error Your Platform SDK is NOT sufficient for LDAP support! Update your Platform SDK, or disable LDAP support!
-# else
-#  include <winber.h>
-# endif
-#else
-#define LDAP_DEPRECATED 1       /* Be sure ldap_init() is defined. */
-#ifdef HAVE_LBER_H
-# include <lber.h>
-#endif
-# include <ldap.h>
-#if (defined(HAVE_LDAP_SSL) && defined(HAVE_LDAP_SSL_H))
-# include <ldap_ssl.h>
-#endif /* HAVE_LDAP_SSL && HAVE_LDAP_SSL_H */
-#endif
-
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-#include "urldata.h"
-#include <curl/curl.h>
-#include "sendf.h"
-#include "escape.h"
-#include "progress.h"
-#include "transfer.h"
-#include "strequal.h"
-#include "strtok.h"
-#include "curl_ldap.h"
-#include "curl_memory.h"
-#include "curl_base64.h"
-#include "rawstr.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "memdebug.h"
-
-#ifndef HAVE_LDAP_URL_PARSE
-
-/* Use our own implementation. */
-
-typedef struct {
-    char   *lud_host;
-    int     lud_port;
-    char   *lud_dn;
-    char  **lud_attrs;
-    int     lud_scope;
-    char   *lud_filter;
-    char  **lud_exts;
-} CURL_LDAPURLDesc;
-
-#undef LDAPURLDesc
-#define LDAPURLDesc             CURL_LDAPURLDesc
-
-static int  _ldap_url_parse (const struct connectdata *conn,
-                             LDAPURLDesc **ludp);
-static void _ldap_free_urldesc (LDAPURLDesc *ludp);
-
-#undef ldap_free_urldesc
-#define ldap_free_urldesc       _ldap_free_urldesc
-#endif
-
-#ifdef DEBUG_LDAP
-  #define LDAP_TRACE(x)   do { \
-                            _ldap_trace ("%u: ", __LINE__); \
-                            _ldap_trace x; \
-                          } while(0)
-
-  static void _ldap_trace (const char *fmt, ...);
-#else
-  #define LDAP_TRACE(x)   ((void)0)
-#endif
-
-
-static CURLcode Curl_ldap(struct connectdata *conn, bool *done);
-
-/*
- * LDAP protocol handler.
- */
-
-const struct Curl_handler Curl_handler_ldap = {
-  "LDAP",                               /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_ldap,                            /* do_it */
-  ZERO_NULL,                            /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_LDAP,                            /* defport */
-  PROT_LDAP                             /* protocol */
-};
-
-#ifdef HAVE_LDAP_SSL
-/*
- * LDAPS protocol handler.
- */
-
-const struct Curl_handler Curl_handler_ldaps = {
-  "LDAPS",                              /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_ldap,                            /* do_it */
-  ZERO_NULL,                            /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_LDAPS,                           /* defport */
-  PROT_LDAP | PROT_SSL                  /* protocol */
-};
-#endif
-
-
-static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
-{
-  CURLcode status = CURLE_OK;
-  int rc = 0;
-  LDAP *server = NULL;
-  LDAPURLDesc *ludp = NULL;
-  LDAPMessage *result = NULL;
-  LDAPMessage *entryIterator;
-  int num = 0;
-  struct SessionHandle *data=conn->data;
-  int ldap_proto = LDAP_VERSION3;
-  int ldap_ssl = 0;
-  char *val_b64;
-  size_t val_b64_sz;
-  curl_off_t dlsize=0;
-#ifdef LDAP_OPT_NETWORK_TIMEOUT
-  struct timeval ldap_timeout = {10,0}; /* 10 sec connection/search timeout */
-#endif
-
-  *done = TRUE; /* unconditionally */
-  infof(data, "LDAP local: LDAP Vendor = %s ; LDAP Version = %d\n",
-          LDAP_VENDOR_NAME, LDAP_VENDOR_VERSION);
-  infof(data, "LDAP local: %s\n", data->change.url);
-
-#ifdef HAVE_LDAP_URL_PARSE
-  rc = ldap_url_parse(data->change.url, &ludp);
-#else
-  rc = _ldap_url_parse(conn, &ludp);
-#endif
-  if(rc != 0) {
-    failf(data, "LDAP local: %s", ldap_err2string(rc));
-    status = CURLE_LDAP_INVALID_URL;
-    goto quit;
-  }
-
-  /* Get the URL scheme ( either ldap or ldaps ) */
-  if(conn->protocol & PROT_SSL)
-    ldap_ssl = 1;
-  infof(data, "LDAP local: trying to establish %s connection\n",
-          ldap_ssl ? "encrypted" : "cleartext");
-
-#ifdef LDAP_OPT_NETWORK_TIMEOUT
-  ldap_set_option(NULL, LDAP_OPT_NETWORK_TIMEOUT, &ldap_timeout);
-#endif
-  ldap_set_option(NULL, LDAP_OPT_PROTOCOL_VERSION, &ldap_proto);
-
-  if(ldap_ssl) {
-#ifdef HAVE_LDAP_SSL
-#ifdef CURL_LDAP_WIN
-    /* Win32 LDAP SDK doesnt support insecure mode without CA! */
-    server = ldap_sslinit(conn->host.name, (int)conn->port, 1);
-    ldap_set_option(server, LDAP_OPT_SSL, LDAP_OPT_ON);
-#else
-    int ldap_option;
-    char* ldap_ca = data->set.str[STRING_SSL_CAFILE];
-#if defined(CURL_HAS_NOVELL_LDAPSDK)
-    rc = ldapssl_client_init(NULL, NULL);
-    if(rc != LDAP_SUCCESS) {
-      failf(data, "LDAP local: ldapssl_client_init %s", ldap_err2string(rc));
-      status = CURLE_SSL_CERTPROBLEM;
-      goto quit;
-    }
-    if(data->set.ssl.verifypeer) {
-      /* Novell SDK supports DER or BASE64 files. */
-      int cert_type = LDAPSSL_CERT_FILETYPE_B64;
-      if((data->set.str[STRING_CERT_TYPE]) &&
-         (Curl_raw_equal(data->set.str[STRING_CERT_TYPE], "DER")))
-        cert_type = LDAPSSL_CERT_FILETYPE_DER;
-      if(!ldap_ca) {
-        failf(data, "LDAP local: ERROR %s CA cert not set!",
-              (cert_type == LDAPSSL_CERT_FILETYPE_DER ? "DER" : "PEM"));
-        status = CURLE_SSL_CERTPROBLEM;
-        goto quit;
-      }
-      infof(data, "LDAP local: using %s CA cert '%s'\n",
-              (cert_type == LDAPSSL_CERT_FILETYPE_DER ? "DER" : "PEM"),
-              ldap_ca);
-      rc = ldapssl_add_trusted_cert(ldap_ca, cert_type);
-      if(rc != LDAP_SUCCESS) {
-        failf(data, "LDAP local: ERROR setting %s CA cert: %s",
-                (cert_type == LDAPSSL_CERT_FILETYPE_DER ? "DER" : "PEM"),
-                ldap_err2string(rc));
-        status = CURLE_SSL_CERTPROBLEM;
-        goto quit;
-      }
-      ldap_option = LDAPSSL_VERIFY_SERVER;
-    } else {
-      ldap_option = LDAPSSL_VERIFY_NONE;
-    }
-    rc = ldapssl_set_verify_mode(ldap_option);
-    if(rc != LDAP_SUCCESS) {
-      failf(data, "LDAP local: ERROR setting cert verify mode: %s",
-              ldap_err2string(rc));
-      status = CURLE_SSL_CERTPROBLEM;
-      goto quit;
-    }
-    server = ldapssl_init(conn->host.name, (int)conn->port, 1);
-    if(server == NULL) {
-      failf(data, "LDAP local: Cannot connect to %s:%hu",
-              conn->host.name, conn->port);
-      status = CURLE_COULDNT_CONNECT;
-      goto quit;
-    }
-#elif defined(LDAP_OPT_X_TLS)
-    if(data->set.ssl.verifypeer) {
-      /* OpenLDAP SDK supports BASE64 files. */
-      if((data->set.str[STRING_CERT_TYPE]) &&
-         (!Curl_raw_equal(data->set.str[STRING_CERT_TYPE], "PEM"))) {
-        failf(data, "LDAP local: ERROR OpenLDAP does only support PEM cert-type!");
-        status = CURLE_SSL_CERTPROBLEM;
-        goto quit;
-      }
-      if(!ldap_ca) {
-        failf(data, "LDAP local: ERROR PEM CA cert not set!");
-        status = CURLE_SSL_CERTPROBLEM;
-        goto quit;
-      }
-      infof(data, "LDAP local: using PEM CA cert: %s\n", ldap_ca);
-      rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_CACERTFILE, ldap_ca);
-      if(rc != LDAP_SUCCESS) {
-        failf(data, "LDAP local: ERROR setting PEM CA cert: %s",
-                ldap_err2string(rc));
-        status = CURLE_SSL_CERTPROBLEM;
-        goto quit;
-      }
-      ldap_option = LDAP_OPT_X_TLS_DEMAND;
-    } else {
-      ldap_option = LDAP_OPT_X_TLS_NEVER;
-    }
-    rc = ldap_set_option(NULL, LDAP_OPT_X_TLS_REQUIRE_CERT, &ldap_option);
-    if(rc != LDAP_SUCCESS) {
-      failf(data, "LDAP local: ERROR setting cert verify mode: %s",
-              ldap_err2string(rc));
-      status = CURLE_SSL_CERTPROBLEM;
-      goto quit;
-    }
-    server = ldap_init(conn->host.name, (int)conn->port);
-    if(server == NULL) {
-      failf(data, "LDAP local: Cannot connect to %s:%hu",
-              conn->host.name, conn->port);
-      status = CURLE_COULDNT_CONNECT;
-      goto quit;
-    }
-    ldap_option = LDAP_OPT_X_TLS_HARD;
-    rc = ldap_set_option(server, LDAP_OPT_X_TLS, &ldap_option);
-    if(rc != LDAP_SUCCESS) {
-      failf(data, "LDAP local: ERROR setting SSL/TLS mode: %s",
-              ldap_err2string(rc));
-      status = CURLE_SSL_CERTPROBLEM;
-      goto quit;
-    }
-/*
-    rc = ldap_start_tls_s(server, NULL, NULL);
-    if(rc != LDAP_SUCCESS) {
-      failf(data, "LDAP local: ERROR starting SSL/TLS mode: %s",
-              ldap_err2string(rc));
-      status = CURLE_SSL_CERTPROBLEM;
-      goto quit;
-    }
-*/
-#else
-    /* we should probably never come up to here since configure
-       should check in first place if we can support LDAP SSL/TLS */
-    failf(data, "LDAP local: SSL/TLS not supported with this version "
-            "of the OpenLDAP toolkit\n");
-    status = CURLE_SSL_CERTPROBLEM;
-    goto quit;
-#endif
-#endif
-#endif /* CURL_LDAP_USE_SSL */
-  } else {
-    server = ldap_init(conn->host.name, (int)conn->port);
-    if(server == NULL) {
-      failf(data, "LDAP local: Cannot connect to %s:%hu",
-              conn->host.name, conn->port);
-      status = CURLE_COULDNT_CONNECT;
-      goto quit;
-    }
-  }
-#ifdef CURL_LDAP_WIN
-  ldap_set_option(server, LDAP_OPT_PROTOCOL_VERSION, &ldap_proto);
-#endif
-
-  rc = ldap_simple_bind_s(server,
-                          conn->bits.user_passwd ? conn->user : NULL,
-                          conn->bits.user_passwd ? conn->passwd : NULL);
-  if(!ldap_ssl && rc != 0) {
-    ldap_proto = LDAP_VERSION2;
-    ldap_set_option(server, LDAP_OPT_PROTOCOL_VERSION, &ldap_proto);
-    rc = ldap_simple_bind_s(server,
-                            conn->bits.user_passwd ? conn->user : NULL,
-                            conn->bits.user_passwd ? conn->passwd : NULL);
-  }
-  if(rc != 0) {
-     failf(data, "LDAP local: ldap_simple_bind_s %s", ldap_err2string(rc));
-     status = CURLE_LDAP_CANNOT_BIND;
-     goto quit;
-  }
-
-  rc = ldap_search_s(server, ludp->lud_dn, ludp->lud_scope,
-                     ludp->lud_filter, ludp->lud_attrs, 0, &result);
-
-  if(rc != 0 && rc != LDAP_SIZELIMIT_EXCEEDED) {
-    failf(data, "LDAP remote: %s", ldap_err2string(rc));
-    status = CURLE_LDAP_SEARCH_FAILED;
-    goto quit;
-  }
-
-  for(num = 0, entryIterator = ldap_first_entry(server, result);
-      entryIterator;
-      entryIterator = ldap_next_entry(server, entryIterator), num++)
-  {
-    BerElement *ber = NULL;
-    char  *attribute;       /*! suspicious that this isn't 'const' */
-    char  *dn = ldap_get_dn(server, entryIterator);
-    int i;
-
-    Curl_client_write(conn, CLIENTWRITE_BODY, (char *)"DN: ", 4);
-    Curl_client_write(conn, CLIENTWRITE_BODY, (char *)dn, 0);
-    Curl_client_write(conn, CLIENTWRITE_BODY, (char *)"\n", 1);
-
-    dlsize += strlen(dn)+5;
-
-    for (attribute = ldap_first_attribute(server, entryIterator, &ber);
-         attribute;
-         attribute = ldap_next_attribute(server, entryIterator, ber))
-    {
-      BerValue **vals = ldap_get_values_len(server, entryIterator, attribute);
-
-      if(vals != NULL)
-      {
-        for (i = 0; (vals[i] != NULL); i++)
-        {
-          Curl_client_write(conn, CLIENTWRITE_BODY, (char *)"\t", 1);
-          Curl_client_write(conn, CLIENTWRITE_BODY, (char *) attribute, 0);
-          Curl_client_write(conn, CLIENTWRITE_BODY, (char *)": ", 2);
-          dlsize += strlen(attribute)+3;
-
-          if((strlen(attribute) > 7) &&
-              (strcmp(";binary",
-                      (char *)attribute +
-                      (strlen((char *)attribute) - 7)) == 0)) {
-            /* Binary attribute, encode to base64. */
-            val_b64_sz = Curl_base64_encode(data,
-                                            vals[i]->bv_val,
-                                            vals[i]->bv_len,
-                                            &val_b64);
-            if(val_b64_sz > 0) {
-              Curl_client_write(conn, CLIENTWRITE_BODY, val_b64, val_b64_sz);
-              free(val_b64);
-              dlsize += val_b64_sz;
-            }
-          }
-          else {
-            Curl_client_write(conn, CLIENTWRITE_BODY, vals[i]->bv_val,
-                              vals[i]->bv_len);
-            dlsize += vals[i]->bv_len;
-          }
-          Curl_client_write(conn, CLIENTWRITE_BODY, (char *)"\n", 0);
-          dlsize++;
-        }
-
-        /* Free memory used to store values */
-        ldap_value_free_len(vals);
-      }
-      Curl_client_write(conn, CLIENTWRITE_BODY, (char *)"\n", 1);
-      dlsize++;
-      Curl_pgrsSetDownloadCounter(data, dlsize);
-      ldap_memfree(attribute);
-    }
-    ldap_memfree(dn);
-    if(ber)
-       ber_free(ber, 0);
-  }
-
-quit:
-  if(result) {
-    ldap_msgfree(result);
-    LDAP_TRACE (("Received %d entries\n", num));
-  }
-  if(rc == LDAP_SIZELIMIT_EXCEEDED)
-    infof(data, "There are more than %d entries\n", num);
-  if(ludp)
-    ldap_free_urldesc(ludp);
-  if(server)
-    ldap_unbind_s(server);
-#if defined(HAVE_LDAP_SSL) && defined(CURL_HAS_NOVELL_LDAPSDK)
-  if(ldap_ssl)
-    ldapssl_client_deinit();
-#endif /* HAVE_LDAP_SSL && CURL_HAS_NOVELL_LDAPSDK */
-
-  /* no data to transfer */
-  Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-  conn->bits.close = TRUE;
-
-  return status;
-}
-
-#ifdef DEBUG_LDAP
-static void _ldap_trace (const char *fmt, ...)
-{
-  static int do_trace = -1;
-  va_list args;
-
-  if(do_trace == -1) {
-    const char *env = getenv("CURL_TRACE");
-    do_trace = (env && atoi(env) > 0);
-  }
-  if(!do_trace)
-    return;
-
-  va_start (args, fmt);
-  vfprintf (stderr, fmt, args);
-  va_end (args);
-}
-#endif
-
-#ifndef HAVE_LDAP_URL_PARSE
-
-/*
- * Return scope-value for a scope-string.
- */
-static int str2scope (const char *p)
-{
-  if(strequal(p, "one"))
-     return LDAP_SCOPE_ONELEVEL;
-  if(strequal(p, "onetree"))
-     return LDAP_SCOPE_ONELEVEL;
-  if(strequal(p, "base"))
-     return LDAP_SCOPE_BASE;
-  if(strequal(p, "sub"))
-     return LDAP_SCOPE_SUBTREE;
-  if(strequal( p, "subtree"))
-     return LDAP_SCOPE_SUBTREE;
-  return (-1);
-}
-
-/*
- * Split 'str' into strings separated by commas.
- * Note: res[] points into 'str'.
- */
-static char **split_str (char *str)
-{
-  char **res, *lasts, *s;
-  int  i;
-
-  for (i = 2, s = strchr(str,','); s; i++)
-     s = strchr(++s,',');
-
-  res = calloc(i, sizeof(char*));
-  if(!res)
-    return NULL;
-
-  for (i = 0, s = strtok_r(str, ",", &lasts); s;
-       s = strtok_r(NULL, ",", &lasts), i++)
-    res[i] = s;
-  return res;
-}
-
-/*
- * Unescape the LDAP-URL components
- */
-static bool unescape_elements (void *data, LDAPURLDesc *ludp)
-{
-  int i;
-
-  if(ludp->lud_filter) {
-    ludp->lud_filter = curl_easy_unescape(data, ludp->lud_filter, 0, NULL);
-    if(!ludp->lud_filter)
-       return (FALSE);
-  }
-
-  for (i = 0; ludp->lud_attrs && ludp->lud_attrs[i]; i++) {
-    ludp->lud_attrs[i] = curl_easy_unescape(data, ludp->lud_attrs[i], 0, NULL);
-    if(!ludp->lud_attrs[i])
-       return (FALSE);
-  }
-
-  for (i = 0; ludp->lud_exts && ludp->lud_exts[i]; i++) {
-    ludp->lud_exts[i] = curl_easy_unescape(data, ludp->lud_exts[i], 0, NULL);
-    if(!ludp->lud_exts[i])
-       return (FALSE);
-  }
-
-  if(ludp->lud_dn) {
-    char *dn = ludp->lud_dn;
-    char *new_dn = curl_easy_unescape(data, dn, 0, NULL);
-
-    free(dn);
-    ludp->lud_dn = new_dn;
-    if(!new_dn)
-       return (FALSE);
-  }
-  return (TRUE);
-}
-
-/*
- * Break apart the pieces of an LDAP URL.
- * Syntax:
- *   ldap://<hostname>:<port>/<base_dn>?<attributes>?<scope>?<filter>?<ext>
- *
- * <hostname> already known from 'conn->host.name'.
- * <port>     already known from 'conn->remote_port'.
- * extract the rest from 'conn->data->state.path+1'. All fields are optional.
- * e.g.
- *   ldap://<hostname>:<port>/?<attributes>?<scope>?<filter>
- * yields ludp->lud_dn = "".
- *
- * Defined in RFC4516 section 2.
- */
-static int _ldap_url_parse2 (const struct connectdata *conn, LDAPURLDesc *ludp)
-{
-  char *p, *q;
-  int i;
-
-  if(!conn->data ||
-      !conn->data->state.path ||
-      conn->data->state.path[0] != '/' ||
-      !checkprefix("LDAP", conn->data->change.url))
-    return LDAP_INVALID_SYNTAX;
-
-  ludp->lud_scope = LDAP_SCOPE_BASE;
-  ludp->lud_port  = conn->remote_port;
-  ludp->lud_host  = conn->host.name;
-
-  /* parse DN (Distinguished Name).
-   */
-  ludp->lud_dn = strdup(conn->data->state.path+1);
-  if(!ludp->lud_dn)
-    return LDAP_NO_MEMORY;
-
-  p = strchr(ludp->lud_dn, '?');
-  LDAP_TRACE (("DN '%.*s'\n", p ? (size_t)(p-ludp->lud_dn) :
-               strlen(ludp->lud_dn), ludp->lud_dn));
-
-  if(!p)
-    goto success;
-
-  *p++ = '\0';
-
-  /* parse attributes. skip "??".
-   */
-  q = strchr(p, '?');
-  if(q)
-    *q++ = '\0';
-
-  if(*p && *p != '?') {
-    ludp->lud_attrs = split_str(p);
-    if(!ludp->lud_attrs)
-      return LDAP_NO_MEMORY;
-
-    for (i = 0; ludp->lud_attrs[i]; i++)
-      LDAP_TRACE (("attr[%d] '%s'\n", i, ludp->lud_attrs[i]));
-  }
-
-  p = q;
-  if(!p)
-    goto success;
-
-  /* parse scope. skip "??"
-   */
-  q = strchr(p, '?');
-  if(q)
-    *q++ = '\0';
-
-  if(*p && *p != '?') {
-    ludp->lud_scope = str2scope(p);
-    if(ludp->lud_scope == -1)
-      return LDAP_INVALID_SYNTAX;
-    LDAP_TRACE (("scope %d\n", ludp->lud_scope));
-  }
-
-  p = q;
-  if(!p)
-    goto success;
-
-  /* parse filter
-   */
-  q = strchr(p, '?');
-  if(q)
-    *q++ = '\0';
-  if(!*p)
-    return LDAP_INVALID_SYNTAX;
-
-  ludp->lud_filter = p;
-  LDAP_TRACE (("filter '%s'\n", ludp->lud_filter));
-
-  p = q;
-  if(!p)
-    goto success;
-
-  /* parse extensions
-   */
-  ludp->lud_exts = split_str(p);
-  if(!ludp->lud_exts)
-    return LDAP_NO_MEMORY;
-
-  for (i = 0; ludp->lud_exts[i]; i++)
-    LDAP_TRACE (("exts[%d] '%s'\n", i, ludp->lud_exts[i]));
-
-  success:
-  if(!unescape_elements(conn->data, ludp))
-    return LDAP_NO_MEMORY;
-  return LDAP_SUCCESS;
-}
-
-static int _ldap_url_parse (const struct connectdata *conn,
-                            LDAPURLDesc **ludpp)
-{
-  LDAPURLDesc *ludp = calloc(1, sizeof(*ludp));
-  int rc;
-
-  *ludpp = NULL;
-  if(!ludp)
-     return LDAP_NO_MEMORY;
-
-  rc = _ldap_url_parse2 (conn, ludp);
-  if(rc != LDAP_SUCCESS) {
-    _ldap_free_urldesc(ludp);
-    ludp = NULL;
-  }
-  *ludpp = ludp;
-  return (rc);
-}
-
-static void _ldap_free_urldesc (LDAPURLDesc *ludp)
-{
-  int i;
-
-  if(!ludp)
-     return;
-
-  if(ludp->lud_dn)
-     free(ludp->lud_dn);
-
-  if(ludp->lud_filter)
-     free(ludp->lud_filter);
-
-  if(ludp->lud_attrs) {
-    for (i = 0; ludp->lud_attrs[i]; i++)
-       free(ludp->lud_attrs[i]);
-    free(ludp->lud_attrs);
-  }
-
-  if(ludp->lud_exts) {
-    for (i = 0; ludp->lud_exts[i]; i++)
-       free(ludp->lud_exts[i]);
-    free(ludp->lud_exts);
-  }
-  free (ludp);
-}
-#endif  /* !HAVE_LDAP_URL_PARSE */
-#endif  /* CURL_DISABLE_LDAP */
diff --git a/src/other/curl/lib/libcurl.imp b/src/other/curl/lib/libcurl.imp
deleted file mode 100644
index 74943af..0000000
--- a/src/other/curl/lib/libcurl.imp
+++ /dev/null
@@ -1,51 +0,0 @@
-#
-# Definition file for the NLM version of the LIBCURL library from curl
-#
-#	(LIBCURL)
-	curl_easy_cleanup,
-	curl_easy_escape,
-	curl_easy_unescape,
-	curl_easy_getinfo,
-	curl_easy_init,
-	curl_easy_pause,
-	curl_easy_perform,
-	curl_easy_setopt,
-	curl_escape,
-	curl_unescape,
-	curl_formfree,
-	curl_getdate,
-	curl_getenv,
-	curl_global_cleanup,
-	curl_global_init,
-	curl_slist_append,
-	curl_slist_free_all,
-	curl_version,
-	curl_maprintf,
-	curl_mfprintf,
-	curl_mprintf,
-	curl_msprintf,
-	curl_msnprintf,
-	curl_mvfprintf,
-	curl_mvsnprintf,
-	curl_strequal,
-	curl_strnequal,
-	curl_easy_duphandle,
-	curl_formadd,
-	curl_multi_init,
-	curl_multi_add_handle,
-	curl_multi_remove_handle,
-	curl_multi_fdset,
-	curl_multi_perform,
-	curl_multi_cleanup,
-	curl_multi_info_read,
-	curl_free,
-	curl_version_info,
-	curl_share_init,
-	curl_share_setopt,
-	curl_share_cleanup,
-	curl_global_init_mem,
-	curl_easy_strerror,
-	curl_multi_strerror,
-	curl_share_strerror,
-	curl_easy_reset
-
diff --git a/src/other/curl/lib/libcurl.plist b/src/other/curl/lib/libcurl.plist
deleted file mode 100644
index 4e00f8b..0000000
--- a/src/other/curl/lib/libcurl.plist
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
-<plist version="0.9">
-<dict>
-	<key>CFBundleInfoDictionaryVersion</key>
-	<string>6.0</string>	
-	
-	<key>CFBundleDevelopmentRegion</key>
-	<string>English</string>
-	
-	<key>CFBundleExecutable</key>
-	<string>curl</string>
-	
-	<key>CFBundleIdentifier</key>
-	<string>com.libcurl.libcurl</string>
-	
-	<key>CFBundleVersion</key>
-	<string>7.20.1</string>
-
-	<key>CFBundleName</key>
-	<string>libcurl</string>
-
-	<key>CFBundlePackageType</key>
-	<string>FMWK</string>	
-	 
-	<key>CFBundleSignature</key>
-	<string>????</string>	
-	
-	<key>CFBundleShortVersionString</key>
-	<string>libcurl 7.20.1</string>
-	
-	<key>CFBundleGetInfoString</key>
-	<string>libcurl.plist 7.20.1</string>
-</dict>
-</plist>
\ No newline at end of file
diff --git a/src/other/curl/lib/libcurl.rc b/src/other/curl/lib/libcurl.rc
deleted file mode 100644
index 47b944a..0000000
--- a/src/other/curl/lib/libcurl.rc
+++ /dev/null
@@ -1,63 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include <winver.h>
-#include "../include/curl/curlver.h"
-
-LANGUAGE  0x09,0x01
-
-#define RC_VERSION  LIBCURL_VERSION_MAJOR, LIBCURL_VERSION_MINOR, LIBCURL_VERSION_PATCH, 0
-
-VS_VERSION_INFO VERSIONINFO
-  FILEVERSION     RC_VERSION
-  PRODUCTVERSION  RC_VERSION
-  FILEFLAGSMASK   0x3fL
-#if defined(DEBUGBUILD) || defined(_DEBUG)
-  FILEFLAGS 1
-#else
-  FILEFLAGS 0
-#endif
-  FILEOS      VOS__WINDOWS32
-  FILETYPE    VFT_DLL
-  FILESUBTYPE 0x0L
-
-BEGIN
-  BLOCK "StringFileInfo"
-  BEGIN
-    BLOCK "040904b0"
-    BEGIN
-      VALUE "CompanyName",      "The cURL library, http://curl.haxx.se/\0"
-      VALUE "FileDescription",  "libcurl Shared Library\0"
-      VALUE "FileVersion",      LIBCURL_VERSION "\0"
-      VALUE "InternalName",     "libcurl\0"
-      VALUE "OriginalFilename", "libcurl.dll\0"
-      VALUE "ProductName",      "The cURL library\0"
-      VALUE "ProductVersion",   LIBCURL_VERSION "\0"
-      VALUE "LegalCopyright",   "© " LIBCURL_COPYRIGHT "\0"
-      VALUE "License",          "http://curl.haxx.se/docs/copyright.html\0"
-    END
-  END
-
-  BLOCK "VarFileInfo"
-  BEGIN
-    VALUE "Translation", 0x409, 1200
-  END
-END
diff --git a/src/other/curl/lib/libcurl.vcproj b/src/other/curl/lib/libcurl.vcproj
deleted file mode 100644
index df384c0..0000000
--- a/src/other/curl/lib/libcurl.vcproj
+++ /dev/null
@@ -1,270 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-	ProjectType="Visual C++"
-	Version="8.00"
-	Name="libcurl"
-	ProjectGUID="{87EE9DA4-DE1E-4448-8324-183C98DCA588}"
-	>
-	<Platforms>
-		<Platform
-			Name="Win32"
-		/>
-	</Platforms>
-	<ToolFiles>
-	</ToolFiles>
-	<Configurations>
-		<Configuration
-			Name="Release|Win32"
-			OutputDirectory=".\Release"
-			IntermediateDirectory=".\Release"
-			ConfigurationType="4"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			CharacterSet="2"
-			>
-			<Tool Name="VCPreBuildEventTool"
-			/>
-			<Tool Name="VCCustomBuildTool"
-			/>
-			<Tool Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool Name="VCMIDLTool" PreprocessorDefinitions="NDEBUG" MkTypLibCompatible="true" SuppressStartupBanner="true" TargetEnvironment="1" TypeLibraryName=".\Release/libcurl.tlb" HeaderFileName=""
-			/>
-			<Tool Name="VCCLCompilerTool" Optimization="2" InlineFunctionExpansion="1" AdditionalIncludeDirectories=".,..\include" PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;BUILDING_LIBCURL" StringPooling="true" RuntimeLibrary="2" EnableFunctionLevelLinking="true" PrecompiledHeaderFile=".\Release/libcurl.pch" AssemblerListingLocation=".\Release/" ObjectFile=".\Release/" ProgramDataBaseFileName=".\Release/" BrowseInformation="1" WarningLevel="0" SuppressStartupBanner="true" DebugInformationFormat="3"
-			/>
-			<Tool Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool Name="VCResourceCompilerTool" PreprocessorDefinitions="NDEBUG" Culture="1033"
-			/>
-			<Tool Name="VCPreLinkEventTool"
-			/>
-			<Tool Name="VCLibrarianTool"
-			/>
-			<Tool Name="VCALinkTool"
-			/>
-			<Tool Name="VCXDCMakeTool"
-			/>
-			<Tool Name="VCBscMakeTool" SuppressStartupBanner="true" OutputFile=".\Release/libcurl.bsc"
-			/>
-			<Tool Name="VCFxCopTool"
-			/>
-			<Tool Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-		<Configuration
-			Name="Debug|Win32"
-			OutputDirectory=".\Debug"
-			IntermediateDirectory=".\Debug"
-			ConfigurationType="4"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			CharacterSet="2"
-			>
-			<Tool Name="VCPreBuildEventTool"
-			/>
-			<Tool Name="VCCustomBuildTool"
-			/>
-			<Tool Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool Name="VCMIDLTool" PreprocessorDefinitions="_DEBUG" MkTypLibCompatible="true" SuppressStartupBanner="true" TargetEnvironment="1" TypeLibraryName=".\Debug/libcurl.tlb" HeaderFileName=""
-			/>
-			<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories=".,..\include" PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;BUILDING_LIBCURL" MinimalRebuild="true" BasicRuntimeChecks="3" RuntimeLibrary="3" PrecompiledHeaderFile=".\Debug/libcurl.pch" AssemblerListingLocation=".\Debug/" ObjectFile=".\Debug/" ProgramDataBaseFileName=".\Debug/" BrowseInformation="1" WarningLevel="0" SuppressStartupBanner="true" DebugInformationFormat="3"
-			/>
-			<Tool Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool Name="VCResourceCompilerTool" PreprocessorDefinitions="_DEBUG" Culture="1033"
-			/>
-			<Tool Name="VCPreLinkEventTool"
-			/>
-			<Tool Name="VCLibrarianTool"
-			/>
-			<Tool Name="VCALinkTool"
-			/>
-			<Tool Name="VCXDCMakeTool"
-			/>
-			<Tool Name="VCBscMakeTool" SuppressStartupBanner="true" OutputFile=".\Debug/libcurl.bsc"
-			/>
-			<Tool Name="VCFxCopTool"
-			/>
-			<Tool Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-	</Configurations>
-	<References>
-	</References>
-	<Files>
-		<Filter
-			Name="Source Files"
-			>
-
-<File RelativePath="base64.c"></File>
-<File RelativePath="connect.c"></File>
-<File RelativePath="content_encoding.c"></File>
-<File RelativePath="cookie.c"></File>
-<File RelativePath="curl_addrinfo.c"></File>
-<File RelativePath="curl_memrchr.c"></File>
-<File RelativePath="curl_rand.c"></File>
-<File RelativePath="curl_sspi.c"></File>
-<File RelativePath="curl_threads.c"></File>
-<File RelativePath="dict.c"></File>
-<File RelativePath="easy.c"></File>
-<File RelativePath="escape.c"></File>
-<File RelativePath="file.c"></File>
-<File RelativePath="formdata.c"></File>
-<File RelativePath="ftp.c"></File>
-<File RelativePath="getenv.c"></File>
-<File RelativePath="getinfo.c"></File>
-<File RelativePath="gtls.c"></File>
-<File RelativePath="hash.c"></File>
-<File RelativePath="hostares.c"></File>
-<File RelativePath="hostasyn.c"></File>
-<File RelativePath="hostip4.c"></File>
-<File RelativePath="hostip6.c"></File>
-<File RelativePath="hostip.c"></File>
-<File RelativePath="hostsyn.c"></File>
-<File RelativePath="hostthre.c"></File>
-<File RelativePath="http.c"></File>
-<File RelativePath="http_chunks.c"></File>
-<File RelativePath="http_digest.c"></File>
-<File RelativePath="http_negotiate.c"></File>
-<File RelativePath="http_ntlm.c"></File>
-<File RelativePath="if2ip.c"></File>
-<File RelativePath="imap.c"></File>
-<File RelativePath="inet_ntop.c"></File>
-<File RelativePath="inet_pton.c"></File>
-<File RelativePath="krb4.c"></File>
-<File RelativePath="krb5.c"></File>
-<File RelativePath="ldap.c"></File>
-<File RelativePath="llist.c"></File>
-<File RelativePath="md5.c"></File>
-<File RelativePath="memdebug.c"></File>
-<File RelativePath="mprintf.c"></File>
-<File RelativePath="multi.c"></File>
-<File RelativePath="netrc.c"></File>
-<File RelativePath="nonblock.c"></File>
-<File RelativePath="nss.c"></File>
-<File RelativePath="parsedate.c"></File>
-<File RelativePath="pingpong.c"></File>
-<File RelativePath="pop3.c"></File>
-<File RelativePath="progress.c"></File>
-<File RelativePath="qssl.c"></File>
-<File RelativePath="rawstr.c"></File>
-<File RelativePath="rtsp.c"></File>
-<File RelativePath="security.c"></File>
-<File RelativePath="select.c"></File>
-<File RelativePath="sendf.c"></File>
-<File RelativePath="share.c"></File>
-<File RelativePath="slist.c"></File>
-<File RelativePath="smtp.c"></File>
-<File RelativePath="socks.c"></File>
-<File RelativePath="socks_gssapi.c"></File>
-<File RelativePath="socks_sspi.c"></File>
-<File RelativePath="speedcheck.c"></File>
-<File RelativePath="splay.c"></File>
-<File RelativePath="ssh.c"></File>
-<File RelativePath="sslgen.c"></File>
-<File RelativePath="ssluse.c"></File>
-<File RelativePath="strdup.c"></File>
-<File RelativePath="strequal.c"></File>
-<File RelativePath="strerror.c"></File>
-<File RelativePath="strtok.c"></File>
-<File RelativePath="strtoofft.c"></File>
-<File RelativePath="telnet.c"></File>
-<File RelativePath="tftp.c"></File>
-<File RelativePath="timeval.c"></File>
-<File RelativePath="transfer.c"></File>
-<File RelativePath="url.c"></File>
-<File RelativePath="version.c"></File>
-<File RelativePath="warnless.c"></File>
-</Filter><Filter	Name="Header Files">
-<File RelativePath="arpa_telnet.h"></File>
-<File RelativePath="config-win32.h"></File>
-<File RelativePath="connect.h"></File>
-<File RelativePath="content_encoding.h"></File>
-<File RelativePath="cookie.h"></File>
-<File RelativePath="curl_addrinfo.h"></File>
-<File RelativePath="curl_base64.h"></File>
-<File RelativePath="curl_ldap.h"></File>
-<File RelativePath="curl_md5.h"></File>
-<File RelativePath="curl_memory.h"></File>
-<File RelativePath="curl_memrchr.h"></File>
-<File RelativePath="curl_rand.h"></File>
-<File RelativePath="curl_sspi.h"></File>
-<File RelativePath="curl_threads.h"></File>
-<File RelativePath="curlx.h"></File>
-<File RelativePath="dict.h"></File>
-<File RelativePath="easyif.h"></File>
-<File RelativePath="escape.h"></File>
-<File RelativePath="file.h"></File>
-<File RelativePath="formdata.h"></File>
-<File RelativePath="ftp.h"></File>
-<File RelativePath="getinfo.h"></File>
-<File RelativePath="gtls.h"></File>
-<File RelativePath="hash.h"></File>
-<File RelativePath="hostip.h"></File>
-<File RelativePath="http_chunks.h"></File>
-<File RelativePath="http_digest.h"></File>
-<File RelativePath="http.h"></File>
-<File RelativePath="http_negotiate.h"></File>
-<File RelativePath="http_ntlm.h"></File>
-<File RelativePath="if2ip.h"></File>
-<File RelativePath="imap.h"></File>
-<File RelativePath="inet_ntop.h"></File>
-<File RelativePath="inet_pton.h"></File>
-<File RelativePath="krb4.h"></File>
-<File RelativePath="llist.h"></File>
-<File RelativePath="memdebug.h"></File>
-<File RelativePath="multiif.h"></File>
-<File RelativePath="netrc.h"></File>
-<File RelativePath="nonblock.h"></File>
-<File RelativePath="nssg.h"></File>
-<File RelativePath="parsedate.h"></File>
-<File RelativePath="pingpong.h"></File>
-<File RelativePath="pop3.h"></File>
-<File RelativePath="progress.h"></File>
-<File RelativePath="qssl.h"></File>
-<File RelativePath="rawstr.h"></File>
-<File RelativePath="rtsp.h"></File>
-<File RelativePath="select.h"></File>
-<File RelativePath="sendf.h"></File>
-<File RelativePath="setup.h"></File>
-<File RelativePath="setup_once.h"></File>
-<File RelativePath="share.h"></File>
-<File RelativePath="slist.h"></File>
-<File RelativePath="smtp.h"></File>
-<File RelativePath="sockaddr.h"></File>
-<File RelativePath="socks.h"></File>
-<File RelativePath="speedcheck.h"></File>
-<File RelativePath="splay.h"></File>
-<File RelativePath="ssh.h"></File>
-<File RelativePath="sslgen.h"></File>
-<File RelativePath="ssluse.h"></File>
-<File RelativePath="strdup.h"></File>
-<File RelativePath="strequal.h"></File>
-<File RelativePath="strerror.h"></File>
-<File RelativePath="strtok.h"></File>
-<File RelativePath="strtoofft.h"></File>
-<File RelativePath="telnet.h"></File>
-<File RelativePath="tftp.h"></File>
-<File RelativePath="timeval.h"></File>
-<File RelativePath="transfer.h"></File>
-<File RelativePath="urldata.h"></File>
-<File RelativePath="url.h"></File>
-<File RelativePath="warnless.h"></File>
-
-		</Filter>
-		<Filter
-			Name="Resource Files"
-			Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-			>
-		</Filter>
-	</Files>
-	<Globals>
-	</Globals>
-</VisualStudioProject>
diff --git a/src/other/curl/lib/llist.c b/src/other/curl/lib/llist.c
deleted file mode 100644
index a121c60..0000000
--- a/src/other/curl/lib/llist.c
+++ /dev/null
@@ -1,186 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <string.h>
-#include <stdlib.h>
-
-#include "llist.h"
-#include "curl_memory.h"
-
-/* this must be the last include file */
-#include "memdebug.h"
-
-void
-Curl_llist_init(struct curl_llist *l, curl_llist_dtor dtor)
-{
-  l->size = 0;
-  l->dtor = dtor;
-  l->head = NULL;
-  l->tail = NULL;
-}
-
-struct curl_llist *
-Curl_llist_alloc(curl_llist_dtor dtor)
-{
-  struct curl_llist *list;
-
-  list = malloc(sizeof(struct curl_llist));
-  if(NULL == list)
-    return NULL;
-
-  Curl_llist_init(list, dtor);
-
-  return list;
-}
-
-/*
- * Curl_llist_insert_next() returns 1 on success and 0 on failure.
- */
-int
-Curl_llist_insert_next(struct curl_llist *list, struct curl_llist_element *e,
-                       const void *p)
-{
-  struct curl_llist_element *ne = malloc(sizeof(struct curl_llist_element));
-  if(!ne)
-    return 0;
-
-  ne->ptr = (void *) p;
-  if(list->size == 0) {
-    list->head = ne;
-    list->head->prev = NULL;
-    list->head->next = NULL;
-    list->tail = ne;
-  }
-  else {
-    ne->next = e->next;
-    ne->prev = e;
-    if(e->next) {
-      e->next->prev = ne;
-    }
-    else {
-      list->tail = ne;
-    }
-    e->next = ne;
-  }
-
-  ++list->size;
-
-  return 1;
-}
-
-int
-Curl_llist_remove(struct curl_llist *list, struct curl_llist_element *e,
-                  void *user)
-{
-  if(e == NULL || list->size == 0)
-    return 1;
-
-  if(e == list->head) {
-    list->head = e->next;
-
-    if(list->head == NULL)
-      list->tail = NULL;
-    else
-      e->next->prev = NULL;
-  } else {
-    e->prev->next = e->next;
-    if(!e->next)
-      list->tail = e->prev;
-    else
-      e->next->prev = e->prev;
-  }
-
-  list->dtor(user, e->ptr);
-
-  free(e);
-  --list->size;
-
-  return 1;
-}
-
-void
-Curl_llist_destroy(struct curl_llist *list, void *user)
-{
-  if(list) {
-    while(list->size > 0)
-      Curl_llist_remove(list, list->tail, user);
-
-    free(list);
-  }
-}
-
-size_t
-Curl_llist_count(struct curl_llist *list)
-{
-  return list->size;
-}
-
-int Curl_llist_move(struct curl_llist *list, struct curl_llist_element *e,
-                    struct curl_llist *to_list, struct curl_llist_element *to_e)
-{
-  /* Remove element from list */
-  if(e == NULL || list->size == 0)
-    return 0;
-
-  if(e == list->head) {
-    list->head = e->next;
-
-    if(list->head == NULL)
-      list->tail = NULL;
-    else
-      e->next->prev = NULL;
-  }
-  else {
-    e->prev->next = e->next;
-    if(!e->next)
-      list->tail = e->prev;
-    else
-      e->next->prev = e->prev;
-  }
-
-  --list->size;
-
-  /* Add element to to_list after to_e */
-  if(to_list->size == 0) {
-    to_list->head = e;
-    to_list->head->prev = NULL;
-    to_list->head->next = NULL;
-    to_list->tail = e;
-  }
-  else {
-    e->next = to_e->next;
-    e->prev = to_e;
-    if(to_e->next) {
-      to_e->next->prev = e;
-    }
-    else {
-      to_list->tail = e;
-    }
-    to_e->next = e;
-  }
-
-  ++to_list->size;
-
-  return 1;
-}
diff --git a/src/other/curl/lib/llist.h b/src/other/curl/lib/llist.h
deleted file mode 100644
index 358d3d6..0000000
--- a/src/other/curl/lib/llist.h
+++ /dev/null
@@ -1,61 +0,0 @@
-#ifndef __LLIST_H
-#define __LLIST_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-#include <stddef.h>
-
-typedef void (*curl_llist_dtor)(void *, void *);
-
-struct curl_llist_element {
-  void *ptr;
-
-  struct curl_llist_element *prev;
-  struct curl_llist_element *next;
-};
-
-struct curl_llist {
-  struct curl_llist_element *head;
-  struct curl_llist_element *tail;
-
-  curl_llist_dtor dtor;
-
-  size_t size;
-};
-
-void Curl_llist_init(struct curl_llist *, curl_llist_dtor);
-struct curl_llist *Curl_llist_alloc(curl_llist_dtor);
-int Curl_llist_insert_next(struct curl_llist *, struct curl_llist_element *,
-                           const void *);
-int Curl_llist_insert_prev(struct curl_llist *, struct curl_llist_element *,
-                           const void *);
-int Curl_llist_remove(struct curl_llist *, struct curl_llist_element *,
-                      void *);
-int Curl_llist_remove_next(struct curl_llist *, struct curl_llist_element *,
-                           void *);
-size_t Curl_llist_count(struct curl_llist *);
-void Curl_llist_destroy(struct curl_llist *, void *);
-int Curl_llist_move(struct curl_llist *, struct curl_llist_element *,
-                    struct curl_llist *, struct curl_llist_element *);
-
-#endif
diff --git a/src/other/curl/lib/makefile.amiga b/src/other/curl/lib/makefile.amiga
deleted file mode 100755
index 4d63e04..0000000
--- a/src/other/curl/lib/makefile.amiga
+++ /dev/null
@@ -1,33 +0,0 @@
-#
-# $VER: LibcURL Makefile for AmigaOS ...
-#
-
-# change the follow to where you have the AmiTCP SDK v4.3 includes:
-
-ATCPSDKI=	/GG/netinclude
-
-
-CC	=	m68k-amigaos-gcc
-CFLAGS	=	-I$(ATCPSDKI) -m68020-60 -O2 -msoft-float -noixemul -g -I. -I../include -W -Wall
-
-OBJS = amigaos.c \
-  file.c timeval.c base64.c hostip.c progress.c formdata.c	\
-  cookie.c http.c sendf.c ftp.c url.c dict.c if2ip.c speedcheck.c	\
-  ldap.c ssluse.c version.c getenv.c escape.c mprintf.c telnet.c	\
-  netrc.c getinfo.c transfer.c strequal.c easy.c security.c krb4.c	\
-  krb5.c memdebug.c http_chunks.c strtok.c connect.c llist.c hash.c	\
-  multi.c content_encoding.c share.c http_digest.c md5.c curl_rand.c	\
-  http_negotiate.c http_ntlm.c inet_pton.c strtoofft.c strerror.c	\
-  hostares.c hostasyn.c hostip4.c hostip6.c hostsyn.c hostthre.c	\
-  inet_ntop.c parsedate.c select.c gtls.c sslgen.c tftp.c splay.c	\
-  strdup.c socks.c ssh.c nss.c qssl.c rawstr.c curl_addrinfo.c          \
-  socks_gssapi.c socks_sspi.c curl_sspi.c slist.c nonblock.c		\
-  curl_memrchr.c imap.c pop3.c smtp.c pingpong.c rtsp.c curl_threads.c	\
-  warnless.c
-
-all:	$(OBJS:.c=.o)
-	ar cru libcurl.a $(OBJS:.c=.o)
-	ranlib libcurl.a
-
-install:
-	$(INSTALL) -c ./libcurl.a /lib/libcurl.a
diff --git a/src/other/curl/lib/makefile.dj b/src/other/curl/lib/makefile.dj
deleted file mode 100644
index 90faf33..0000000
--- a/src/other/curl/lib/makefile.dj
+++ /dev/null
@@ -1,49 +0,0 @@
-#
-#  Adapted for djgpp2 / Watt-32 / DOS by
-#  Gisle Vanem <giva at bgnett.no>
-#
-
-DEPEND_PREREQ = curl_config.h
-TOPDIR = ..
-
-include ../packages/DOS/common.dj
-include Makefile.inc
-
-OBJECTS := $(patsubst %.c,$(OBJ_DIR)/%.o,$(strip $(CSOURCES)))
-
-CURL_LIB = libcurl.a
-
-# NOTE: if ../include/curl/curlbuild.h is missing, you're probably building
-# this from a git checkout and then you need to run buildconf.bat first.
-
-all: $(OBJ_DIR) curl_config.h $(CURL_LIB)
-
-$(CURL_LIB): $(OBJECTS)
-	ar rs $@ $?
-
-curl_config.h: config.dos
-	$(COPY) $^ $@
-
-# clean generated files
-#
-genclean:
-	- $(DELETE) curl_config.h
-
-# clean object files and subdir
-#
-objclean: genclean
-	- $(DELETE) $(OBJ_DIR)$(DS)*.o
-	- $(RMDIR) $(OBJ_DIR)
-
-# clean without removing built library
-#
-clean: objclean
-	- $(DELETE) depend.dj
-
-# clean everything
-#
-realclean vclean: clean
-	- $(DELETE) $(CURL_LIB)
-
--include depend.dj
-
diff --git a/src/other/curl/lib/md5.c b/src/other/curl/lib/md5.c
deleted file mode 100644
index 32d0634..0000000
--- a/src/other/curl/lib/md5.c
+++ /dev/null
@@ -1,372 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_CRYPTO_AUTH
-
-#include <string.h>
-
-#include "curl_md5.h"
-
-#ifdef USE_GNUTLS
-
-#include <gcrypt.h>
-
-void Curl_md5it(unsigned char *outbuffer, /* 16 bytes */
-                const unsigned char *input)
-{
-  gcry_md_hd_t ctx;
-  gcry_md_open(&ctx, GCRY_MD_MD5, 0);
-  gcry_md_write(ctx, input, (unsigned int)strlen((char *)input));
-  memcpy (outbuffer, gcry_md_read (ctx, 0), 16);
-  gcry_md_close(ctx);
-}
-
-#else
-
-#ifdef USE_SSLEAY
-/* When OpenSSL is available we use the MD5-function from OpenSSL */
-
-#  ifdef USE_OPENSSL
-#    include <openssl/md5.h>
-#  else
-#    include <md5.h>
-#  endif
-
-#else /* USE_SSLEAY */
-/* When OpenSSL is not available we use this code segment */
-
-/* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
-rights reserved.
-
-License to copy and use this software is granted provided that it
-is identified as the "RSA Data Security, Inc. MD5 Message-Digest
-Algorithm" in all material mentioning or referencing this software
-or this function.
-
-License is also granted to make and use derivative works provided
-that such works are identified as "derived from the RSA Data
-Security, Inc. MD5 Message-Digest Algorithm" in all material
-mentioning or referencing the derived work.
-
-RSA Data Security, Inc. makes no representations concerning either
-the merchantability of this software or the suitability of this
-software for any particular purpose. It is provided "as is"
-without express or implied warranty of any kind.
-
-These notices must be retained in any copies of any part of this
-documentation and/or software.
- */
-
-/* UINT4 defines a four byte word */
-typedef unsigned int UINT4;
-
-/* MD5 context. */
-struct md5_ctx {
-  UINT4 state[4];                                   /* state (ABCD) */
-  UINT4 count[2];        /* number of bits, modulo 2^64 (lsb first) */
-  unsigned char buffer[64];                         /* input buffer */
-};
-
-typedef struct md5_ctx MD5_CTX;
-
-static void MD5_Init(struct md5_ctx *);
-static void MD5_Update(struct md5_ctx *, const unsigned char *, unsigned int);
-static void MD5_Final(unsigned char [16], struct md5_ctx *);
-
-/* Constants for MD5Transform routine.
- */
-
-#define S11 7
-#define S12 12
-#define S13 17
-#define S14 22
-#define S21 5
-#define S22 9
-#define S23 14
-#define S24 20
-#define S31 4
-#define S32 11
-#define S33 16
-#define S34 23
-#define S41 6
-#define S42 10
-#define S43 15
-#define S44 21
-
-static void MD5Transform(UINT4 [4], const unsigned char [64]);
-static void Encode(unsigned char *, UINT4 *, unsigned int);
-static void Decode(UINT4 *, const unsigned char *, unsigned int);
-
-static const unsigned char PADDING[64] = {
-  0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
-};
-
-/* F, G, H and I are basic MD5 functions.
- */
-#define F(x, y, z) (((x) & (y)) | ((~x) & (z)))
-#define G(x, y, z) (((x) & (z)) | ((y) & (~z)))
-#define H(x, y, z) ((x) ^ (y) ^ (z))
-#define I(x, y, z) ((y) ^ ((x) | (~z)))
-
-/* ROTATE_LEFT rotates x left n bits.
- */
-#define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n))))
-
-/* FF, GG, HH, and II transformations for rounds 1, 2, 3, and 4.
-Rotation is separate from addition to prevent recomputation.
- */
-#define FF(a, b, c, d, x, s, ac) { \
- (a) += F ((b), (c), (d)) + (x) + (UINT4)(ac); \
- (a) = ROTATE_LEFT ((a), (s)); \
- (a) += (b); \
-  }
-#define GG(a, b, c, d, x, s, ac) { \
- (a) += G ((b), (c), (d)) + (x) + (UINT4)(ac); \
- (a) = ROTATE_LEFT ((a), (s)); \
- (a) += (b); \
-  }
-#define HH(a, b, c, d, x, s, ac) { \
- (a) += H ((b), (c), (d)) + (x) + (UINT4)(ac); \
- (a) = ROTATE_LEFT ((a), (s)); \
- (a) += (b); \
-  }
-#define II(a, b, c, d, x, s, ac) { \
- (a) += I ((b), (c), (d)) + (x) + (UINT4)(ac); \
- (a) = ROTATE_LEFT ((a), (s)); \
- (a) += (b); \
-  }
-
-/* MD5 initialization. Begins an MD5 operation, writing a new context.
- */
-static void MD5_Init(struct md5_ctx *context)
-{
-  context->count[0] = context->count[1] = 0;
-  /* Load magic initialization constants. */
-  context->state[0] = 0x67452301;
-  context->state[1] = 0xefcdab89;
-  context->state[2] = 0x98badcfe;
-  context->state[3] = 0x10325476;
-}
-
-/* MD5 block update operation. Continues an MD5 message-digest
-  operation, processing another message block, and updating the
-  context.
- */
-static void MD5_Update (struct md5_ctx *context,    /* context */
-                        const unsigned char *input, /* input block */
-                        unsigned int inputLen)      /* length of input block */
-{
-  unsigned int i, bufindex, partLen;
-
-  /* Compute number of bytes mod 64 */
-  bufindex = (unsigned int)((context->count[0] >> 3) & 0x3F);
-
-  /* Update number of bits */
-  if((context->count[0] += ((UINT4)inputLen << 3))
-      < ((UINT4)inputLen << 3))
-    context->count[1]++;
-  context->count[1] += ((UINT4)inputLen >> 29);
-
-  partLen = 64 - bufindex;
-
-  /* Transform as many times as possible. */
-  if(inputLen >= partLen) {
-    memcpy((void *)&context->buffer[bufindex], (void *)input, partLen);
-    MD5Transform(context->state, context->buffer);
-
-    for (i = partLen; i + 63 < inputLen; i += 64)
-      MD5Transform(context->state, &input[i]);
-
-    bufindex = 0;
-  }
-  else
-    i = 0;
-
-  /* Buffer remaining input */
-  memcpy((void *)&context->buffer[bufindex], (void *)&input[i], inputLen-i);
-}
-
-/* MD5 finalization. Ends an MD5 message-digest operation, writing the
-   the message digest and zeroizing the context.
-*/
-static void MD5_Final(unsigned char digest[16], /* message digest */
-                      struct md5_ctx *context) /* context */
-{
-  unsigned char bits[8];
-  unsigned int count, padLen;
-
-  /* Save number of bits */
-  Encode (bits, context->count, 8);
-
-  /* Pad out to 56 mod 64. */
-  count = (unsigned int)((context->count[0] >> 3) & 0x3f);
-  padLen = (count < 56) ? (56 - count) : (120 - count);
-  MD5_Update (context, PADDING, padLen);
-
-  /* Append length (before padding) */
-  MD5_Update (context, bits, 8);
-
-  /* Store state in digest */
-  Encode (digest, context->state, 16);
-
-  /* Zeroize sensitive information. */
-  memset ((void *)context, 0, sizeof (*context));
-}
-
-/* MD5 basic transformation. Transforms state based on block. */
-static void MD5Transform(UINT4 state[4],
-                         const unsigned char block[64])
-{
-  UINT4 a = state[0], b = state[1], c = state[2], d = state[3], x[16];
-
-  Decode (x, block, 64);
-
-  /* Round 1 */
-  FF (a, b, c, d, x[ 0], S11, 0xd76aa478); /* 1 */
-  FF (d, a, b, c, x[ 1], S12, 0xe8c7b756); /* 2 */
-  FF (c, d, a, b, x[ 2], S13, 0x242070db); /* 3 */
-  FF (b, c, d, a, x[ 3], S14, 0xc1bdceee); /* 4 */
-  FF (a, b, c, d, x[ 4], S11, 0xf57c0faf); /* 5 */
-  FF (d, a, b, c, x[ 5], S12, 0x4787c62a); /* 6 */
-  FF (c, d, a, b, x[ 6], S13, 0xa8304613); /* 7 */
-  FF (b, c, d, a, x[ 7], S14, 0xfd469501); /* 8 */
-  FF (a, b, c, d, x[ 8], S11, 0x698098d8); /* 9 */
-  FF (d, a, b, c, x[ 9], S12, 0x8b44f7af); /* 10 */
-  FF (c, d, a, b, x[10], S13, 0xffff5bb1); /* 11 */
-  FF (b, c, d, a, x[11], S14, 0x895cd7be); /* 12 */
-  FF (a, b, c, d, x[12], S11, 0x6b901122); /* 13 */
-  FF (d, a, b, c, x[13], S12, 0xfd987193); /* 14 */
-  FF (c, d, a, b, x[14], S13, 0xa679438e); /* 15 */
-  FF (b, c, d, a, x[15], S14, 0x49b40821); /* 16 */
-
- /* Round 2 */
-  GG (a, b, c, d, x[ 1], S21, 0xf61e2562); /* 17 */
-  GG (d, a, b, c, x[ 6], S22, 0xc040b340); /* 18 */
-  GG (c, d, a, b, x[11], S23, 0x265e5a51); /* 19 */
-  GG (b, c, d, a, x[ 0], S24, 0xe9b6c7aa); /* 20 */
-  GG (a, b, c, d, x[ 5], S21, 0xd62f105d); /* 21 */
-  GG (d, a, b, c, x[10], S22,  0x2441453); /* 22 */
-  GG (c, d, a, b, x[15], S23, 0xd8a1e681); /* 23 */
-  GG (b, c, d, a, x[ 4], S24, 0xe7d3fbc8); /* 24 */
-  GG (a, b, c, d, x[ 9], S21, 0x21e1cde6); /* 25 */
-  GG (d, a, b, c, x[14], S22, 0xc33707d6); /* 26 */
-  GG (c, d, a, b, x[ 3], S23, 0xf4d50d87); /* 27 */
-  GG (b, c, d, a, x[ 8], S24, 0x455a14ed); /* 28 */
-  GG (a, b, c, d, x[13], S21, 0xa9e3e905); /* 29 */
-  GG (d, a, b, c, x[ 2], S22, 0xfcefa3f8); /* 30 */
-  GG (c, d, a, b, x[ 7], S23, 0x676f02d9); /* 31 */
-  GG (b, c, d, a, x[12], S24, 0x8d2a4c8a); /* 32 */
-
-  /* Round 3 */
-  HH (a, b, c, d, x[ 5], S31, 0xfffa3942); /* 33 */
-  HH (d, a, b, c, x[ 8], S32, 0x8771f681); /* 34 */
-  HH (c, d, a, b, x[11], S33, 0x6d9d6122); /* 35 */
-  HH (b, c, d, a, x[14], S34, 0xfde5380c); /* 36 */
-  HH (a, b, c, d, x[ 1], S31, 0xa4beea44); /* 37 */
-  HH (d, a, b, c, x[ 4], S32, 0x4bdecfa9); /* 38 */
-  HH (c, d, a, b, x[ 7], S33, 0xf6bb4b60); /* 39 */
-  HH (b, c, d, a, x[10], S34, 0xbebfbc70); /* 40 */
-  HH (a, b, c, d, x[13], S31, 0x289b7ec6); /* 41 */
-  HH (d, a, b, c, x[ 0], S32, 0xeaa127fa); /* 42 */
-  HH (c, d, a, b, x[ 3], S33, 0xd4ef3085); /* 43 */
-  HH (b, c, d, a, x[ 6], S34,  0x4881d05); /* 44 */
-  HH (a, b, c, d, x[ 9], S31, 0xd9d4d039); /* 45 */
-  HH (d, a, b, c, x[12], S32, 0xe6db99e5); /* 46 */
-  HH (c, d, a, b, x[15], S33, 0x1fa27cf8); /* 47 */
-  HH (b, c, d, a, x[ 2], S34, 0xc4ac5665); /* 48 */
-
-  /* Round 4 */
-  II (a, b, c, d, x[ 0], S41, 0xf4292244); /* 49 */
-  II (d, a, b, c, x[ 7], S42, 0x432aff97); /* 50 */
-  II (c, d, a, b, x[14], S43, 0xab9423a7); /* 51 */
-  II (b, c, d, a, x[ 5], S44, 0xfc93a039); /* 52 */
-  II (a, b, c, d, x[12], S41, 0x655b59c3); /* 53 */
-  II (d, a, b, c, x[ 3], S42, 0x8f0ccc92); /* 54 */
-  II (c, d, a, b, x[10], S43, 0xffeff47d); /* 55 */
-  II (b, c, d, a, x[ 1], S44, 0x85845dd1); /* 56 */
-  II (a, b, c, d, x[ 8], S41, 0x6fa87e4f); /* 57 */
-  II (d, a, b, c, x[15], S42, 0xfe2ce6e0); /* 58 */
-  II (c, d, a, b, x[ 6], S43, 0xa3014314); /* 59 */
-  II (b, c, d, a, x[13], S44, 0x4e0811a1); /* 60 */
-  II (a, b, c, d, x[ 4], S41, 0xf7537e82); /* 61 */
-  II (d, a, b, c, x[11], S42, 0xbd3af235); /* 62 */
-  II (c, d, a, b, x[ 2], S43, 0x2ad7d2bb); /* 63 */
-  II (b, c, d, a, x[ 9], S44, 0xeb86d391); /* 64 */
-
-  state[0] += a;
-  state[1] += b;
-  state[2] += c;
-  state[3] += d;
-
-  /* Zeroize sensitive information. */
-  memset((void *)x, 0, sizeof (x));
-}
-
-/* Encodes input (UINT4) into output (unsigned char). Assumes len is
-  a multiple of 4.
- */
-static void Encode (unsigned char *output,
-                    UINT4 *input,
-                    unsigned int len)
-{
-  unsigned int i, j;
-
-  for (i = 0, j = 0; j < len; i++, j += 4) {
-    output[j] = (unsigned char)(input[i] & 0xff);
-    output[j+1] = (unsigned char)((input[i] >> 8) & 0xff);
-    output[j+2] = (unsigned char)((input[i] >> 16) & 0xff);
-    output[j+3] = (unsigned char)((input[i] >> 24) & 0xff);
-  }
-}
-
-/* Decodes input (unsigned char) into output (UINT4). Assumes len is
-   a multiple of 4.
-*/
-static void Decode (UINT4 *output,
-                    const unsigned char *input,
-                    unsigned int len)
-{
-  unsigned int i, j;
-
-  for (i = 0, j = 0; j < len; i++, j += 4)
-    output[i] = ((UINT4)input[j]) | (((UINT4)input[j+1]) << 8) |
-      (((UINT4)input[j+2]) << 16) | (((UINT4)input[j+3]) << 24);
-}
-
-#endif /* USE_SSLEAY */
-
-void Curl_md5it(unsigned char *outbuffer, /* 16 bytes */
-                const unsigned char *input)
-{
-  MD5_CTX ctx;
-  MD5_Init(&ctx);
-  MD5_Update(&ctx, input, (unsigned int)strlen((char *)input));
-  MD5_Final(outbuffer, &ctx);
-}
-
-#endif /* USE_GNUTLS */
-
-#endif /* CURL_DISABLE_CRYPTO_AUTH */
diff --git a/src/other/curl/lib/memdebug.c b/src/other/curl/lib/memdebug.c
deleted file mode 100644
index 69e204b..0000000
--- a/src/other/curl/lib/memdebug.c
+++ /dev/null
@@ -1,394 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef CURLDEBUG
-#include <curl/curl.h>
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-#define _MPRINTF_REPLACE
-#include <curl/mprintf.h>
-#include "urldata.h"
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <stdarg.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#define MEMDEBUG_NODEFINES /* don't redefine the standard functions */
-#include "curl_memory.h"
-#include "memdebug.h"
-
-#ifndef HAVE_ASSERT_H
-#  define assert(x) do { } while (0)
-#endif
-
-struct memdebug {
-  size_t size;
-  union {
-    double d;
-    void * p;
-  } mem[1];
-  /* I'm hoping this is the thing with the strictest alignment
-   * requirements.  That also means we waste some space :-( */
-};
-
-/*
- * Note that these debug functions are very simple and they are meant to
- * remain so. For advanced analysis, record a log file and write perl scripts
- * to analyze them!
- *
- * Don't use these with multithreaded test programs!
- */
-
-#define logfile curl_debuglogfile
-FILE *curl_debuglogfile = NULL;
-static bool memlimit = FALSE; /* enable memory limit */
-static long memsize = 0;  /* set number of mallocs allowed */
-
-/* this sets the log file name */
-void curl_memdebug(const char *logname)
-{
-  if(!logfile) {
-    if(logname)
-      logfile = fopen(logname, "w");
-    else
-      logfile = stderr;
-#ifdef MEMDEBUG_LOG_SYNC
-    /* Flush the log file after every line so the log isn't lost in a crash */
-    setvbuf(logfile, (char *)NULL, _IOLBF, 0);
-#endif
-  }
-}
-
-/* This function sets the number of malloc() calls that should return
-   successfully! */
-void curl_memlimit(long limit)
-{
-  if(!memlimit) {
-    memlimit = TRUE;
-    memsize = limit;
-  }
-}
-
-/* returns TRUE if this isn't allowed! */
-static bool countcheck(const char *func, int line, const char *source)
-{
-  /* if source is NULL, then the call is made internally and this check
-     should not be made */
-  if(memlimit && source) {
-    if(!memsize) {
-      if(source) {
-        /* log to file */
-        curl_memlog("LIMIT %s:%d %s reached memlimit\n",
-                    source, line, func);
-        /* log to stderr also */
-        fprintf(stderr, "LIMIT %s:%d %s reached memlimit\n",
-                source, line, func);
-      }
-      SET_ERRNO(ENOMEM);
-      return TRUE; /* RETURN ERROR! */
-    }
-    else
-      memsize--; /* countdown */
-
-    /* log the countdown */
-    if(source)
-      curl_memlog("LIMIT %s:%d %ld ALLOCS left\n",
-                  source, line, memsize);
-
-  }
-
-  return FALSE; /* allow this */
-}
-
-void *curl_domalloc(size_t wantedsize, int line, const char *source)
-{
-  struct memdebug *mem;
-  size_t size;
-
-  assert(wantedsize != 0);
-
-  if(countcheck("malloc", line, source))
-    return NULL;
-
-  /* alloc at least 64 bytes */
-  size = sizeof(struct memdebug)+wantedsize;
-
-  mem = (Curl_cmalloc)(size);
-  if(mem) {
-    /* fill memory with junk */
-    memset(mem->mem, 0xA5, wantedsize);
-    mem->size = wantedsize;
-  }
-
-  if(source)
-    curl_memlog("MEM %s:%d malloc(%zd) = %p\n",
-                source, line, wantedsize, mem ? mem->mem : 0);
-  return (mem ? mem->mem : NULL);
-}
-
-void *curl_docalloc(size_t wanted_elements, size_t wanted_size,
-                    int line, const char *source)
-{
-  struct memdebug *mem;
-  size_t size, user_size;
-
-  assert(wanted_elements != 0);
-  assert(wanted_size != 0);
-
-  if(countcheck("calloc", line, source))
-    return NULL;
-
-  /* alloc at least 64 bytes */
-  user_size = wanted_size * wanted_elements;
-  size = sizeof(struct memdebug) + user_size;
-
-  mem = (Curl_cmalloc)(size);
-  if(mem) {
-    /* fill memory with zeroes */
-    memset(mem->mem, 0, user_size);
-    mem->size = user_size;
-  }
-
-  if(source)
-    curl_memlog("MEM %s:%d calloc(%zu,%zu) = %p\n",
-                source, line, wanted_elements, wanted_size, mem?mem->mem:0);
-  return (mem ? mem->mem : NULL);
-}
-
-char *curl_dostrdup(const char *str, int line, const char *source)
-{
-  char *mem;
-  size_t len;
-
-  assert(str != NULL);
-
-  if(countcheck("strdup", line, source))
-    return NULL;
-
-  len=strlen(str)+1;
-
-  mem=curl_domalloc(len, 0, NULL); /* NULL prevents logging */
-  if(mem)
-    memcpy(mem, str, len);
-
-  if(source)
-    curl_memlog("MEM %s:%d strdup(%p) (%zu) = %p\n",
-                source, line, str, len, mem);
-
-  return mem;
-}
-
-/* We provide a realloc() that accepts a NULL as pointer, which then
-   performs a malloc(). In order to work with ares. */
-void *curl_dorealloc(void *ptr, size_t wantedsize,
-                     int line, const char *source)
-{
-  struct memdebug *mem=NULL;
-
-  size_t size = sizeof(struct memdebug)+wantedsize;
-
-  assert(wantedsize != 0);
-
-  if(countcheck("realloc", line, source))
-    return NULL;
-
-#ifdef __INTEL_COMPILER
-#  pragma warning(push)
-#  pragma warning(disable:1684)
-   /* 1684: conversion from pointer to same-sized integral type */
-#endif
-
-  if(ptr)
-    mem = (void *)((char *)ptr - offsetof(struct memdebug, mem));
-
-#ifdef __INTEL_COMPILER
-#  pragma warning(pop)
-#endif
-
-  mem = (Curl_crealloc)(mem, size);
-  if(source)
-    curl_memlog("MEM %s:%d realloc(%p, %zu) = %p\n",
-                source, line, ptr, wantedsize, mem?mem->mem:NULL);
-
-  if(mem) {
-    mem->size = wantedsize;
-    return mem->mem;
-  }
-
-  return NULL;
-}
-
-void curl_dofree(void *ptr, int line, const char *source)
-{
-  struct memdebug *mem;
-
-  assert(ptr != NULL);
-
-#ifdef __INTEL_COMPILER
-#  pragma warning(push)
-#  pragma warning(disable:1684)
-   /* 1684: conversion from pointer to same-sized integral type */
-#endif
-
-  mem = (void *)((char *)ptr - offsetof(struct memdebug, mem));
-
-#ifdef __INTEL_COMPILER
-#  pragma warning(pop)
-#endif
-
-  /* destroy  */
-  memset(mem->mem, 0x13, mem->size);
-
-  /* free for real */
-  (Curl_cfree)(mem);
-
-  if(source)
-    curl_memlog("MEM %s:%d free(%p)\n", source, line, ptr);
-}
-
-curl_socket_t curl_socket(int domain, int type, int protocol,
-                          int line, const char *source)
-{
-  const char *fmt = (sizeof(curl_socket_t) == sizeof(int)) ?
-                    "FD %s:%d socket() = %d\n" :
-                    (sizeof(curl_socket_t) == sizeof(long)) ?
-                    "FD %s:%d socket() = %ld\n" :
-                    "FD %s:%d socket() = %zd\n" ;
-
-  curl_socket_t sockfd = socket(domain, type, protocol);
-  if(source && (sockfd != CURL_SOCKET_BAD))
-    curl_memlog(fmt, source, line, sockfd);
-  return sockfd;
-}
-
-curl_socket_t curl_accept(curl_socket_t s, void *saddr, void *saddrlen,
-                          int line, const char *source)
-{
-  const char *fmt = (sizeof(curl_socket_t) == sizeof(int)) ?
-                    "FD %s:%d accept() = %d\n" :
-                    (sizeof(curl_socket_t) == sizeof(long)) ?
-                    "FD %s:%d accept() = %ld\n" :
-                    "FD %s:%d accept() = %zd\n" ;
-
-  struct sockaddr *addr = (struct sockaddr *)saddr;
-  curl_socklen_t *addrlen = (curl_socklen_t *)saddrlen;
-  curl_socket_t sockfd = accept(s, addr, addrlen);
-  if(source && (sockfd != CURL_SOCKET_BAD))
-    curl_memlog(fmt, source, line, sockfd);
-  return sockfd;
-}
-
-/* separate function to allow libcurl to mark a "faked" close */
-void curl_mark_sclose(curl_socket_t sockfd, int line, const char *source)
-{
-  const char *fmt = (sizeof(curl_socket_t) == sizeof(int)) ?
-                    "FD %s:%d sclose(%d)\n" :
-                    (sizeof(curl_socket_t) == sizeof(long)) ?
-                    "FD %s:%d sclose(%ld)\n" :
-                    "FD %s:%d sclose(%zd)\n" ;
-
-  if(source)
-    curl_memlog(fmt, source, line, sockfd);
-}
-
-/* this is our own defined way to close sockets on *ALL* platforms */
-int curl_sclose(curl_socket_t sockfd, int line, const char *source)
-{
-  int res=sclose(sockfd);
-  curl_mark_sclose(sockfd, line, source);
-  return res;
-}
-
-FILE *curl_fopen(const char *file, const char *mode,
-                 int line, const char *source)
-{
-  FILE *res=fopen(file, mode);
-  if(source)
-    curl_memlog("FILE %s:%d fopen(\"%s\",\"%s\") = %p\n",
-                source, line, file, mode, res);
-  return res;
-}
-
-#ifdef HAVE_FDOPEN
-FILE *curl_fdopen(int filedes, const char *mode,
-                  int line, const char *source)
-{
-  FILE *res=fdopen(filedes, mode);
-  if(source)
-    curl_memlog("FILE %s:%d fdopen(\"%d\",\"%s\") = %p\n",
-                source, line, filedes, mode, res);
-  return res;
-}
-#endif
-
-int curl_fclose(FILE *file, int line, const char *source)
-{
-  int res;
-
-  assert(file != NULL);
-
-  res=fclose(file);
-  if(source)
-    curl_memlog("FILE %s:%d fclose(%p)\n",
-                source, line, file);
-  return res;
-}
-
-#define LOGLINE_BUFSIZE  1024
-
-/* this does the writting to the memory tracking log file */
-void curl_memlog(const char *format, ...)
-{
-  char *buf;
-  int nchars;
-  va_list ap;
-
-  if(!logfile)
-    return;
-
-  buf = (Curl_cmalloc)(LOGLINE_BUFSIZE);
-  if(!buf)
-    return;
-
-  va_start(ap, format);
-  nchars = vsnprintf(buf, LOGLINE_BUFSIZE, format, ap);
-  va_end(ap);
-
-  if(nchars > LOGLINE_BUFSIZE - 1)
-    nchars = LOGLINE_BUFSIZE - 1;
-
-  if(nchars > 0)
-    fwrite(buf, 1, nchars, logfile);
-
-  (Curl_cfree)(buf);
-}
-
-#endif /* CURLDEBUG */
diff --git a/src/other/curl/lib/memdebug.h b/src/other/curl/lib/memdebug.h
deleted file mode 100644
index 56b9f12..0000000
--- a/src/other/curl/lib/memdebug.h
+++ /dev/null
@@ -1,139 +0,0 @@
-#ifdef CURLDEBUG
-#ifndef _CURL_MEMDEBUG_H
-#define _CURL_MEMDEBUG_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * CAUTION: this header is designed to work when included by the app-side
- * as well as the library. Do not mix with library internals!
- */
-
-#include "setup.h"
-
-#include <curl/curl.h>
-
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#include <stdio.h>
-
-#define logfile curl_debuglogfile
-
-extern FILE *logfile;
-
-/* memory functions */
-CURL_EXTERN void *curl_domalloc(size_t size, int line, const char *source);
-CURL_EXTERN void *curl_docalloc(size_t elements, size_t size, int line, const char *source);
-CURL_EXTERN void *curl_dorealloc(void *ptr, size_t size, int line, const char *source);
-CURL_EXTERN void curl_dofree(void *ptr, int line, const char *source);
-CURL_EXTERN char *curl_dostrdup(const char *str, int line, const char *source);
-CURL_EXTERN void curl_memdebug(const char *logname);
-CURL_EXTERN void curl_memlimit(long limit);
-CURL_EXTERN void curl_memlog(const char *format, ...);
-
-/* file descriptor manipulators */
-CURL_EXTERN curl_socket_t curl_socket(int domain, int type, int protocol,
-                                      int line , const char *source);
-CURL_EXTERN void curl_mark_sclose(curl_socket_t sockfd,
-                                  int line , const char *source);
-CURL_EXTERN int curl_sclose(curl_socket_t sockfd,
-                            int line , const char *source);
-CURL_EXTERN curl_socket_t curl_accept(curl_socket_t s, void *a, void *alen,
-                                      int line, const char *source);
-
-/* FILE functions */
-CURL_EXTERN FILE *curl_fopen(const char *file, const char *mode, int line,
-                             const char *source);
-#ifdef HAVE_FDOPEN
-CURL_EXTERN FILE *curl_fdopen(int filedes, const char *mode, int line,
-                              const char *source);
-#endif
-CURL_EXTERN int curl_fclose(FILE *file, int line, const char *source);
-
-#ifndef MEMDEBUG_NODEFINES
-
-/* Set this symbol on the command-line, recompile all lib-sources */
-#undef strdup
-#define strdup(ptr) curl_dostrdup(ptr, __LINE__, __FILE__)
-#define malloc(size) curl_domalloc(size, __LINE__, __FILE__)
-#define calloc(nbelem,size) curl_docalloc(nbelem, size, __LINE__, __FILE__)
-#define realloc(ptr,size) curl_dorealloc(ptr, size, __LINE__, __FILE__)
-#define free(ptr) curl_dofree(ptr, __LINE__, __FILE__)
-
-#define socket(domain,type,protocol)\
- curl_socket(domain,type,protocol,__LINE__,__FILE__)
-#undef accept /* for those with accept as a macro */
-#define accept(sock,addr,len)\
- curl_accept(sock,addr,len,__LINE__,__FILE__)
-
-#ifdef HAVE_GETADDRINFO
-#if defined(getaddrinfo) && defined(__osf__)
-/* OSF/1 and Tru64 have getaddrinfo as a define already, so we cannot define
-   our macro as for other platforms. Instead, we redefine the new name they
-   define getaddrinfo to become! */
-#define ogetaddrinfo(host,serv,hint,res) \
-  curl_dogetaddrinfo(host,serv,hint,res,__LINE__,__FILE__)
-#else
-#undef getaddrinfo
-#define getaddrinfo(host,serv,hint,res) \
-  curl_dogetaddrinfo(host,serv,hint,res,__LINE__,__FILE__)
-#endif
-#endif /* HAVE_GETADDRINFO */
-
-#ifdef HAVE_GETNAMEINFO
-#undef getnameinfo
-#define getnameinfo(sa,salen,host,hostlen,serv,servlen,flags) \
-  curl_dogetnameinfo(sa,salen,host,hostlen,serv,servlen,flags, __LINE__, \
-  __FILE__)
-#endif /* HAVE_GETNAMEINFO */
-
-#ifdef HAVE_FREEADDRINFO
-#undef freeaddrinfo
-#define freeaddrinfo(data) \
-  curl_dofreeaddrinfo(data,__LINE__,__FILE__)
-#endif /* HAVE_FREEADDRINFO */
-
-/* sclose is probably already defined, redefine it! */
-#undef sclose
-#define sclose(sockfd) curl_sclose(sockfd,__LINE__,__FILE__)
-
-#define fake_sclose(sockfd) curl_mark_sclose(sockfd,__LINE__,__FILE__)
-
-#undef fopen
-#define fopen(file,mode) curl_fopen(file,mode,__LINE__,__FILE__)
-#undef fdopen
-#define fdopen(file,mode) curl_fdopen(file,mode,__LINE__,__FILE__)
-#define fclose(file) curl_fclose(file,__LINE__,__FILE__)
-
-#endif /* MEMDEBUG_NODEFINES */
-
-#endif /* _CURL_MEMDEBUG_H */
-#endif /* CURLDEBUG */
-
-#ifndef fake_sclose
-#define fake_sclose(x)
-#endif
diff --git a/src/other/curl/lib/mk-ca-bundle.pl b/src/other/curl/lib/mk-ca-bundle.pl
deleted file mode 100755
index 8d461d0..0000000
--- a/src/other/curl/lib/mk-ca-bundle.pl
+++ /dev/null
@@ -1,186 +0,0 @@
-#!/usr/bin/perl -w
-# ***************************************************************************
-# *                                  _   _ ____  _
-# *  Project                     ___| | | |  _ \| |
-# *                             / __| | | | |_) | |
-# *                            | (__| |_| |  _ <| |___
-# *                             \___|\___/|_| \_\_____|
-# *
-# * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
-# *
-# * This software is licensed as described in the file COPYING, which
-# * you should have received as part of this distribution. The terms
-# * are also available at http://curl.haxx.se/docs/copyright.html.
-# *
-# * You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# * copies of the Software, and permit persons to whom the Software is
-# * furnished to do so, under the terms of the COPYING file.
-# *
-# * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# * KIND, either express or implied.
-# *
-# ***************************************************************************
-# This Perl script creates a fresh ca-bundle.crt file for use with libcurl.
-# It downloads certdata.txt from Mozilla's source tree (see URL below),
-# then parses certdata.txt and extracts CA Root Certificates into PEM format.
-# These are then processed with the OpenSSL commandline tool to produce the
-# final ca-bundle.crt file.
-# The script is based on the parse-certs script written by Roland Krikava.
-# This Perl script works on almost any platform since its only external
-# dependency is the OpenSSL commandline tool for optional text listing.
-# Hacked by Guenter Knauf.
-#
-use Getopt::Std;
-use MIME::Base64;
-use LWP::UserAgent;
-use strict;
-use vars qw($opt_b $opt_h $opt_i $opt_l $opt_n $opt_q $opt_t $opt_u $opt_v);
-
-my $url = 'http://mxr.mozilla.org/seamonkey/source/security/nss/lib/ckfw/builtins/certdata.txt?raw=1';
-# If the OpenSSL commandline is not in search path you can configure it here!
-my $openssl = 'openssl';
-
-my $version = $1 if ('$Revision$' =~ /\s(\d+\.\d+)\s/);
-
-getopts('bhilnqtuv');
-
-if ($opt_i) {
-  print ("=" x 78 . "\n");
-  print "Script Version            : $version\n";
-  print "Perl Version              : $]\n";
-  print "Operating System Name     : $^O\n";
-  print "Getopt::Std.pm Version    : ${Getopt::Std::VERSION}\n";
-  print "MIME::Base64.pm Version   : ${MIME::Base64::VERSION}\n";
-  print "LWP::UserAgent.pm Version : ${LWP::UserAgent::VERSION}\n";
-  print "LWP.pm Version            : ${LWP::VERSION}\n";
-  print ("=" x 78 . "\n");
-}
-
-$0 =~ s/\\/\//g;
-$0 = substr($0, rindex($0, '/') + 1);
-if ($opt_h) {
-  printf("Usage:\t%s [-b] [-i] [-l] [-n] [-q] [-t] [-u] [-v] [<outputfile>]\n", $0);
-  print "\t-b\tbackup an existing version of ca-bundle.crt\n";
-  print "\t-i\tprint version info about used modules\n";
-  print "\t-l\tprint license info about certdata.txt\n";
-  print "\t-n\tno download of certdata.txt (to use existing)\n";
-  print "\t-q\tbe really quiet (no progress output at all)\n";
-  print "\t-t\tinclude plain text listing of certificates\n";
-  print "\t-u\tunlink (remove) certdata.txt after processing\n";
-  print "\t-v\tbe verbose and print out processed CAs\n";
-  exit;
-}
-
-my $crt = $ARGV[0] || 'ca-bundle.crt';
-my $txt = substr($url, rindex($url, '/') + 1);
-$txt =~ s/\?.*//;
-
-if (!$opt_n || !-e $txt) {
-  print "Downloading '$txt' ...\n" if (!$opt_q);
-  my $ua  = new LWP::UserAgent(agent => "$0/$version");
-  my $req = new HTTP::Request('GET', $url);
-  my $res = $ua->request($req);
-  if ($res->is_success) {
-    open(TXT,">$txt") or die "Couldn't open $txt: $!";
-    print TXT $res->content . "\n";
-    close(TXT) or die "Couldn't close $txt: $!";
-  } else {
-    die $res->status_line;
-  }
-}
-
-if ($opt_b && -e $crt) {
-  my $bk = 1;
-  while (-e "$crt.~${bk}~") {
-    $bk++;
-  }
-  rename $crt, "$crt.~${bk}~";
-}
-
-my $format = $opt_t ? "plain text and " : "";
-my $currentdate = scalar gmtime() . " UTC";
-open(CRT,">$crt") or die "Couldn't open $crt: $!";
-print CRT <<EOT;
-##
-## $crt -- Bundle of CA Root Certificates
-##
-## Converted at: ${currentdate}
-##
-## This is a bundle of X.509 certificates of public Certificate Authorities
-## (CA). These were automatically extracted from Mozilla's root certificates
-## file (certdata.txt).  This file can be found in the mozilla source tree:
-## '/mozilla/security/nss/lib/ckfw/builtins/certdata.txt'
-##
-## It contains the certificates in ${format}PEM format and therefore
-## can be directly used with curl / libcurl / php_curl, or with
-## an Apache+mod_ssl webserver for SSL client authentication.
-## Just configure this file as the SSLCACertificateFile.
-##
-
-EOT
-
-close(CRT) or die "Couldn't close $crt: $!";
-
-print "Processing  '$txt' ...\n" if (!$opt_q);
-my $caname;
-my $certnum = 0;
-open(TXT,"$txt") or die "Couldn't open $txt: $!";
-while (<TXT>) {
-  if (/\*\*\*\*\* BEGIN LICENSE BLOCK \*\*\*\*\*/) {
-    open(CRT, ">>$crt") or die "Couldn't open $crt: $!";
-    print CRT;
-    print if ($opt_l);
-    while (<TXT>) {
-      print CRT;
-      print if ($opt_l);
-      last if (/\*\*\*\*\* END LICENSE BLOCK \*\*\*\*\*/);
-    }
-    close(CRT) or die "Couldn't close $crt: $!";
-  }
-  next if /^#|^\s*$/;
-  chomp;
-  if (/^CVS_ID\s+\"(.*)\"/) {
-    open(CRT, ">>$crt") or die "Couldn't open $crt: $!";
-    print CRT "# $1\n";
-    close(CRT) or die "Couldn't close $crt: $!";
-  }
-  if (/^CKA_LABEL\s+[A-Z0-9]+\s+\"(.*)\"/) {
-    $caname = $1;
-  }
-  if (/^CKA_VALUE MULTILINE_OCTAL/) {
-    my $data;
-    while (<TXT>) {
-      last if (/^END/);
-      chomp;
-      my @octets = split(/\\/);
-      shift @octets;
-      for (@octets) {
-        $data .= chr(oct);
-      }
-    }
-    my $pem = "-----BEGIN CERTIFICATE-----\n"
-            . MIME::Base64::encode($data)
-            . "-----END CERTIFICATE-----\n";
-    open(CRT, ">>$crt") or die "Couldn't open $crt: $!";
-    print CRT "\n$caname\n";
-    print CRT ("=" x length($caname) . "\n");
-    if (!$opt_t) {
-      print CRT $pem;
-    }
-    close(CRT) or die "Couldn't close $crt: $!";
-    if ($opt_t) {
-      open(TMP, "|$openssl x509 -md5 -fingerprint -text -inform PEM >> $crt") or die "Couldn't open openssl pipe: $!";
-      print TMP $pem;
-      close(TMP) or die "Couldn't close openssl pipe: $!";
-    }
-    print "Parsing: $caname\n" if ($opt_v);
-    $certnum ++;
-  }
-}
-close(TXT) or die "Couldn't close $txt: $!";
-unlink $txt if ($opt_u);
-print "Done ($certnum CA certs processed).\n" if (!$opt_q);
-
-exit;
-
-
diff --git a/src/other/curl/lib/mprintf.c b/src/other/curl/lib/mprintf.c
deleted file mode 100644
index 1d93c58..0000000
--- a/src/other/curl/lib/mprintf.c
+++ /dev/null
@@ -1,1247 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1999 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- *
- * Purpose:
- *  A merge of Bjorn Reese's format() function and Daniel's dsprintf()
- *  1.0. A full blooded printf() clone with full support for <num>$
- *  everywhere (parameters, widths and precisions) including variabled
- *  sized parameters (like doubles, long longs, long doubles and even
- *  void * in 64-bit architectures).
- *
- * Current restrictions:
- * - Max 128 parameters
- * - No 'long double' support.
- *
- * If you ever want truly portable and good *printf() clones, the project that
- * took on from here is named 'Trio' and you find more details on the trio web
- * page at http://daniel.haxx.se/trio/
- */
-
-#include "setup.h"
-#include <stdio.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <ctype.h>
-#include <string.h>
-
-#if defined(DJGPP) && (DJGPP_MINOR < 4)
-#undef _MPRINTF_REPLACE /* don't use x_was_used() here */
-#endif
-
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#ifndef SIZEOF_LONG_DOUBLE
-#define SIZEOF_LONG_DOUBLE 0
-#endif
-
-/*
- * If SIZEOF_SIZE_T has not been defined, default to the size of long.
- */
-
-#ifndef SIZEOF_SIZE_T
-#  define SIZEOF_SIZE_T CURL_SIZEOF_LONG
-#endif
-
-#ifdef HAVE_LONGLONG
-#  define LONG_LONG_TYPE long long
-#  define HAVE_LONG_LONG_TYPE
-#else
-#  if defined(_MSC_VER) && (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64)
-#    define LONG_LONG_TYPE __int64
-#    define HAVE_LONG_LONG_TYPE
-#  else
-#    undef LONG_LONG_TYPE
-#    undef HAVE_LONG_LONG_TYPE
-#  endif
-#endif
-
-/*
- * Max integer data types that mprintf.c is capable
- */
-
-#ifdef HAVE_LONG_LONG_TYPE
-#  define mp_intmax_t LONG_LONG_TYPE
-#  define mp_uintmax_t unsigned LONG_LONG_TYPE
-#else
-#  define mp_intmax_t long
-#  define mp_uintmax_t unsigned long
-#endif
-
-#define BUFFSIZE 256 /* buffer for long-to-str and float-to-str calcs */
-#define MAX_PARAMETERS 128 /* lame static limit */
-
-#ifdef __AMIGA__
-# undef FORMAT_INT
-#endif
-
-/* Lower-case digits.  */
-static const char lower_digits[] = "0123456789abcdefghijklmnopqrstuvwxyz";
-
-/* Upper-case digits.  */
-static const char upper_digits[] = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
-
-#define OUTCHAR(x) \
-  do{ \
-    if(stream((unsigned char)(x), (FILE *)data) != -1) \
-      done++; \
-    else \
-     return done; /* return immediately on failure */ \
-  } while(0)
-
-/* Data type to read from the arglist */
-typedef enum  {
-  FORMAT_UNKNOWN = 0,
-  FORMAT_STRING,
-  FORMAT_PTR,
-  FORMAT_INT,
-  FORMAT_INTPTR,
-  FORMAT_LONG,
-  FORMAT_LONGLONG,
-  FORMAT_DOUBLE,
-  FORMAT_LONGDOUBLE,
-  FORMAT_WIDTH /* For internal use */
-} FormatType;
-
-/* convertion and display flags */
-enum {
-  FLAGS_NEW        = 0,
-  FLAGS_SPACE      = 1<<0,
-  FLAGS_SHOWSIGN   = 1<<1,
-  FLAGS_LEFT       = 1<<2,
-  FLAGS_ALT        = 1<<3,
-  FLAGS_SHORT      = 1<<4,
-  FLAGS_LONG       = 1<<5,
-  FLAGS_LONGLONG   = 1<<6,
-  FLAGS_LONGDOUBLE = 1<<7,
-  FLAGS_PAD_NIL    = 1<<8,
-  FLAGS_UNSIGNED   = 1<<9,
-  FLAGS_OCTAL      = 1<<10,
-  FLAGS_HEX        = 1<<11,
-  FLAGS_UPPER      = 1<<12,
-  FLAGS_WIDTH      = 1<<13, /* '*' or '*<num>$' used */
-  FLAGS_WIDTHPARAM = 1<<14, /* width PARAMETER was specified */
-  FLAGS_PREC       = 1<<15, /* precision was specified */
-  FLAGS_PRECPARAM  = 1<<16, /* precision PARAMETER was specified */
-  FLAGS_CHAR       = 1<<17, /* %c story */
-  FLAGS_FLOATE     = 1<<18, /* %e or %E */
-  FLAGS_FLOATG     = 1<<19  /* %g or %G */
-};
-
-typedef struct {
-  FormatType type;
-  int flags;
-  long width;     /* width OR width parameter number */
-  long precision; /* precision OR precision parameter number */
-  union {
-    char *str;
-    void *ptr;
-    union {
-      mp_intmax_t as_signed;
-      mp_uintmax_t as_unsigned;
-    } num;
-    double dnum;
-  } data;
-} va_stack_t;
-
-struct nsprintf {
-  char *buffer;
-  size_t length;
-  size_t max;
-};
-
-struct asprintf {
-  char *buffer; /* allocated buffer */
-  size_t len;   /* length of string */
-  size_t alloc; /* length of alloc */
-  int fail;     /* (!= 0) if an alloc has failed and thus
-                   the output is not the complete data */
-};
-
-static long dprintf_DollarString(char *input, char **end)
-{
-  int number=0;
-  while(ISDIGIT(*input)) {
-    number *= 10;
-    number += *input-'0';
-    input++;
-  }
-  if(number && ('$'==*input++)) {
-    *end = input;
-    return number;
-  }
-  return 0;
-}
-
-static int dprintf_IsQualifierNoDollar(char c)
-{
-  switch (c) {
-  case '-': case '+': case ' ': case '#': case '.':
-  case '0': case '1': case '2': case '3': case '4':
-  case '5': case '6': case '7': case '8': case '9':
-  case 'h': case 'l': case 'L': case 'z': case 'q':
-  case '*': case 'O':
-    return 1; /* true */
-  default:
-    return 0; /* false */
-  }
-}
-
-#ifdef DPRINTF_DEBUG2
-static void dprintf_Pass1Report(va_stack_t *vto, int max)
-{
-  int i;
-  char buffer[256];
-  int bit;
-  int flags;
-
-  for(i=0; i<max; i++) {
-    char *type;
-    switch(vto[i].type) {
-    case FORMAT_UNKNOWN:
-      type = "unknown";
-      break;
-    case FORMAT_STRING:
-      type ="string";
-      break;
-    case FORMAT_PTR:
-      type ="pointer";
-      break;
-    case FORMAT_INT:
-      type = "int";
-      break;
-    case FORMAT_INTPTR:
-      type = "intptr";
-      break;
-    case FORMAT_LONG:
-      type = "long";
-      break;
-    case FORMAT_LONGLONG:
-      type = "long long";
-      break;
-    case FORMAT_DOUBLE:
-      type = "double";
-      break;
-    case FORMAT_LONGDOUBLE:
-      type = "long double";
-      break;
-    }
-
-
-    buffer[0]=0;
-
-    for(bit=0; bit<31; bit++) {
-      flags = vto[i].flags & (1<<bit);
-
-      if(flags & FLAGS_SPACE)
-        strcat(buffer, "space ");
-      else if(flags & FLAGS_SHOWSIGN)
-        strcat(buffer, "plus ");
-      else if(flags & FLAGS_LEFT)
-        strcat(buffer, "left ");
-      else if(flags & FLAGS_ALT)
-        strcat(buffer, "alt ");
-      else if(flags & FLAGS_SHORT)
-        strcat(buffer, "short ");
-      else if(flags & FLAGS_LONG)
-        strcat(buffer, "long ");
-      else if(flags & FLAGS_LONGLONG)
-        strcat(buffer, "longlong ");
-      else if(flags & FLAGS_LONGDOUBLE)
-        strcat(buffer, "longdouble ");
-      else if(flags & FLAGS_PAD_NIL)
-        strcat(buffer, "padnil ");
-      else if(flags & FLAGS_UNSIGNED)
-        strcat(buffer, "unsigned ");
-      else if(flags & FLAGS_OCTAL)
-        strcat(buffer, "octal ");
-      else if(flags & FLAGS_HEX)
-        strcat(buffer, "hex ");
-      else if(flags & FLAGS_UPPER)
-        strcat(buffer, "upper ");
-      else if(flags & FLAGS_WIDTH)
-        strcat(buffer, "width ");
-      else if(flags & FLAGS_WIDTHPARAM)
-        strcat(buffer, "widthparam ");
-      else if(flags & FLAGS_PREC)
-        strcat(buffer, "precision ");
-      else if(flags & FLAGS_PRECPARAM)
-        strcat(buffer, "precparam ");
-      else if(flags & FLAGS_CHAR)
-        strcat(buffer, "char ");
-      else if(flags & FLAGS_FLOATE)
-        strcat(buffer, "floate ");
-      else if(flags & FLAGS_FLOATG)
-        strcat(buffer, "floatg ");
-    }
-    printf("REPORT: %d. %s [%s]\n", i, type, buffer);
-
-  }
-
-
-}
-#endif
-
-/******************************************************************
- *
- * Pass 1:
- * Create an index with the type of each parameter entry and its
- * value (may vary in size)
- *
- ******************************************************************/
-
-static long dprintf_Pass1(const char *format, va_stack_t *vto, char **endpos,
-                          va_list arglist)
-{
-  char *fmt = (char *)format;
-  int param_num = 0;
-  long this_param;
-  long width;
-  long precision;
-  int flags;
-  long max_param=0;
-  long i;
-
-  while(*fmt) {
-    if(*fmt++ == '%') {
-      if(*fmt == '%') {
-        fmt++;
-        continue; /* while */
-      }
-
-      flags = FLAGS_NEW;
-
-      /* Handle the positional case (N$) */
-
-      param_num++;
-
-      this_param = dprintf_DollarString(fmt, &fmt);
-      if(0 == this_param)
-        /* we got no positional, get the next counter */
-        this_param = param_num;
-
-      if(this_param > max_param)
-        max_param = this_param;
-
-      /*
-       * The parameter with number 'i' should be used. Next, we need
-       * to get SIZE and TYPE of the parameter. Add the information
-       * to our array.
-       */
-
-      width = 0;
-      precision = 0;
-
-      /* Handle the flags */
-
-      while(dprintf_IsQualifierNoDollar(*fmt)) {
-        switch (*fmt++) {
-        case ' ':
-          flags |= FLAGS_SPACE;
-          break;
-        case '+':
-          flags |= FLAGS_SHOWSIGN;
-          break;
-        case '-':
-          flags |= FLAGS_LEFT;
-          flags &= ~FLAGS_PAD_NIL;
-          break;
-        case '#':
-          flags |= FLAGS_ALT;
-          break;
-        case '.':
-          flags |= FLAGS_PREC;
-          if('*' == *fmt) {
-            /* The precision is picked from a specified parameter */
-
-            flags |= FLAGS_PRECPARAM;
-            fmt++;
-            param_num++;
-
-            i = dprintf_DollarString(fmt, &fmt);
-            if(i)
-              precision = i;
-            else
-              precision = param_num;
-
-            if(precision > max_param)
-              max_param = precision;
-          }
-          else {
-            flags |= FLAGS_PREC;
-            precision = strtol(fmt, &fmt, 10);
-          }
-          break;
-        case 'h':
-          flags |= FLAGS_SHORT;
-          break;
-        case 'l':
-          if(flags & FLAGS_LONG)
-            flags |= FLAGS_LONGLONG;
-          else
-            flags |= FLAGS_LONG;
-          break;
-        case 'L':
-          flags |= FLAGS_LONGDOUBLE;
-          break;
-        case 'q':
-          flags |= FLAGS_LONGLONG;
-          break;
-        case 'z':
-          /* the code below generates a warning if -Wunreachable-code is
-             used */
-#if (SIZEOF_SIZE_T > CURL_SIZEOF_LONG)
-          flags |= FLAGS_LONGLONG;
-#else
-          flags |= FLAGS_LONG;
-#endif
-          break;
-        case 'O':
-#if (CURL_SIZEOF_CURL_OFF_T > CURL_SIZEOF_LONG)
-          flags |= FLAGS_LONGLONG;
-#else
-          flags |= FLAGS_LONG;
-#endif
-          break;
-        case '0':
-          if(!(flags & FLAGS_LEFT))
-            flags |= FLAGS_PAD_NIL;
-          /* FALLTHROUGH */
-        case '1': case '2': case '3': case '4':
-        case '5': case '6': case '7': case '8': case '9':
-          flags |= FLAGS_WIDTH;
-          width = strtol(fmt-1, &fmt, 10);
-          break;
-        case '*':  /* Special case */
-          flags |= FLAGS_WIDTHPARAM;
-          param_num++;
-
-          i = dprintf_DollarString(fmt, &fmt);
-          if(i)
-            width = i;
-          else
-            width = param_num;
-          if(width > max_param)
-            max_param=width;
-          break;
-        default:
-          break;
-        }
-      } /* switch */
-
-      /* Handle the specifier */
-
-      i = this_param - 1;
-
-      switch (*fmt) {
-      case 'S':
-        flags |= FLAGS_ALT;
-        /* FALLTHROUGH */
-      case 's':
-        vto[i].type = FORMAT_STRING;
-        break;
-      case 'n':
-        vto[i].type = FORMAT_INTPTR;
-        break;
-      case 'p':
-        vto[i].type = FORMAT_PTR;
-        break;
-      case 'd': case 'i':
-        vto[i].type = FORMAT_INT;
-        break;
-      case 'u':
-        vto[i].type = FORMAT_INT;
-        flags |= FLAGS_UNSIGNED;
-        break;
-      case 'o':
-        vto[i].type = FORMAT_INT;
-        flags |= FLAGS_OCTAL;
-        break;
-      case 'x':
-        vto[i].type = FORMAT_INT;
-        flags |= FLAGS_HEX;
-        break;
-      case 'X':
-        vto[i].type = FORMAT_INT;
-        flags |= FLAGS_HEX|FLAGS_UPPER;
-        break;
-      case 'c':
-        vto[i].type = FORMAT_INT;
-        flags |= FLAGS_CHAR;
-        break;
-      case 'f':
-        vto[i].type = FORMAT_DOUBLE;
-        break;
-      case 'e':
-        vto[i].type = FORMAT_DOUBLE;
-        flags |= FLAGS_FLOATE;
-        break;
-      case 'E':
-        vto[i].type = FORMAT_DOUBLE;
-        flags |= FLAGS_FLOATE|FLAGS_UPPER;
-        break;
-      case 'g':
-        vto[i].type = FORMAT_DOUBLE;
-        flags |= FLAGS_FLOATG;
-        break;
-      case 'G':
-        vto[i].type = FORMAT_DOUBLE;
-        flags |= FLAGS_FLOATG|FLAGS_UPPER;
-        break;
-      default:
-        vto[i].type = FORMAT_UNKNOWN;
-        break;
-      } /* switch */
-
-      vto[i].flags = flags;
-      vto[i].width = width;
-      vto[i].precision = precision;
-
-      if(flags & FLAGS_WIDTHPARAM) {
-        /* we have the width specified from a parameter, so we make that
-           parameter's info setup properly */
-        vto[i].width = width - 1;
-        i = width - 1;
-        vto[i].type = FORMAT_WIDTH;
-        vto[i].flags = FLAGS_NEW;
-        vto[i].precision = vto[i].width = 0; /* can't use width or precision
-                                                of width! */
-      }
-      if(flags & FLAGS_PRECPARAM) {
-        /* we have the precision specified from a parameter, so we make that
-           parameter's info setup properly */
-        vto[i].precision = precision - 1;
-        i = precision - 1;
-        vto[i].type = FORMAT_WIDTH;
-        vto[i].flags = FLAGS_NEW;
-        vto[i].precision = vto[i].width = 0; /* can't use width or precision
-                                                of width! */
-      }
-      *endpos++ = fmt + 1; /* end of this sequence */
-    }
-  }
-
-#ifdef DPRINTF_DEBUG2
-  dprintf_Pass1Report(vto, max_param);
-#endif
-
-  /* Read the arg list parameters into our data list */
-  for (i=0; i<max_param; i++) {
-    if((i + 1 < max_param) && (vto[i + 1].type == FORMAT_WIDTH))
-      {
-        /* Width/precision arguments must be read before the main argument
-         * they are attached to
-         */
-        vto[i + 1].data.num.as_signed = (mp_intmax_t)va_arg(arglist, int);
-      }
-
-    switch (vto[i].type)
-      {
-      case FORMAT_STRING:
-        vto[i].data.str = va_arg(arglist, char *);
-        break;
-
-      case FORMAT_INTPTR:
-      case FORMAT_UNKNOWN:
-      case FORMAT_PTR:
-        vto[i].data.ptr = va_arg(arglist, void *);
-        break;
-
-      case FORMAT_INT:
-#ifdef HAVE_LONG_LONG_TYPE
-        if((vto[i].flags & FLAGS_LONGLONG) && (vto[i].flags & FLAGS_UNSIGNED))
-          vto[i].data.num.as_unsigned =
-            (mp_uintmax_t)va_arg(arglist, mp_uintmax_t);
-        else if(vto[i].flags & FLAGS_LONGLONG)
-          vto[i].data.num.as_signed =
-            (mp_intmax_t)va_arg(arglist, mp_intmax_t);
-        else
-#endif
-        {
-          if((vto[i].flags & FLAGS_LONG) && (vto[i].flags & FLAGS_UNSIGNED))
-            vto[i].data.num.as_unsigned =
-              (mp_uintmax_t)va_arg(arglist, unsigned long);
-          else if(vto[i].flags & FLAGS_LONG)
-            vto[i].data.num.as_signed =
-              (mp_intmax_t)va_arg(arglist, long);
-          else if(vto[i].flags & FLAGS_UNSIGNED)
-            vto[i].data.num.as_unsigned =
-              (mp_uintmax_t)va_arg(arglist, unsigned int);
-          else
-            vto[i].data.num.as_signed =
-              (mp_intmax_t)va_arg(arglist, int);
-        }
-        break;
-
-      case FORMAT_DOUBLE:
-        vto[i].data.dnum = va_arg(arglist, double);
-        break;
-
-      case FORMAT_WIDTH:
-        /* Argument has been read. Silently convert it into an integer
-         * for later use
-         */
-        vto[i].type = FORMAT_INT;
-        break;
-
-      default:
-        break;
-      }
-  }
-
-  return max_param;
-
-}
-
-static int dprintf_formatf(
-  void *data, /* untouched by format(), just sent to the stream() function in
-                 the second argument */
-  /* function pointer called for each output character */
-  int (*stream)(int, FILE *),
-  const char *format,    /* %-formatted string */
-  va_list ap_save) /* list of parameters */
-{
-  /* Base-36 digits for numbers.  */
-  const char *digits = lower_digits;
-
-  /* Pointer into the format string.  */
-  char *f;
-
-  /* Number of characters written.  */
-  int done = 0;
-
-  long param; /* current parameter to read */
-  long param_num=0; /* parameter counter */
-
-  va_stack_t vto[MAX_PARAMETERS];
-  char *endpos[MAX_PARAMETERS];
-  char **end;
-
-  char work[BUFFSIZE];
-
-  va_stack_t *p;
-
-  /* Do the actual %-code parsing */
-  dprintf_Pass1(format, vto, endpos, ap_save);
-
-  end = &endpos[0]; /* the initial end-position from the list dprintf_Pass1()
-                       created for us */
-
-  f = (char *)format;
-  while(*f != '\0') {
-    /* Format spec modifiers.  */
-    int is_alt;
-
-    /* Width of a field.  */
-    long width;
-
-    /* Precision of a field.  */
-    long prec;
-
-    /* Decimal integer is negative.  */
-    int is_neg;
-
-    /* Base of a number to be written.  */
-    long base;
-
-    /* Integral values to be written.  */
-    mp_uintmax_t num;
-
-    /* Used to convert negative in positive.  */
-    mp_intmax_t signed_num;
-
-    if(*f != '%') {
-      /* This isn't a format spec, so write everything out until the next one
-         OR end of string is reached.  */
-      do {
-        OUTCHAR(*f);
-      } while(*++f && ('%' != *f));
-      continue;
-    }
-
-    ++f;
-
-    /* Check for "%%".  Note that although the ANSI standard lists
-       '%' as a conversion specifier, it says "The complete format
-       specification shall be `%%'," so we can avoid all the width
-       and precision processing.  */
-    if(*f == '%') {
-      ++f;
-      OUTCHAR('%');
-      continue;
-    }
-
-    /* If this is a positional parameter, the position must follow imediately
-       after the %, thus create a %<num>$ sequence */
-    param=dprintf_DollarString(f, &f);
-
-    if(!param)
-      param = param_num;
-    else
-      --param;
-
-    param_num++; /* increase this always to allow "%2$s %1$s %s" and then the
-                    third %s will pick the 3rd argument */
-
-    p = &vto[param];
-
-    /* pick up the specified width */
-    if(p->flags & FLAGS_WIDTHPARAM)
-      width = (long)vto[p->width].data.num.as_signed;
-    else
-      width = p->width;
-
-    /* pick up the specified precision */
-    if(p->flags & FLAGS_PRECPARAM) {
-      prec = (long)vto[p->precision].data.num.as_signed;
-      param_num++; /* since the precision is extraced from a parameter, we
-                      must skip that to get to the next one properly */
-    }
-    else if(p->flags & FLAGS_PREC)
-      prec = p->precision;
-    else
-      prec = -1;
-
-    is_alt = (p->flags & FLAGS_ALT) ? 1 : 0;
-
-    switch (p->type) {
-    case FORMAT_INT:
-      num = p->data.num.as_unsigned;
-      if(p->flags & FLAGS_CHAR) {
-        /* Character.  */
-        if(!(p->flags & FLAGS_LEFT))
-          while(--width > 0)
-            OUTCHAR(' ');
-        OUTCHAR((char) num);
-        if(p->flags & FLAGS_LEFT)
-          while(--width > 0)
-            OUTCHAR(' ');
-        break;
-      }
-      if(p->flags & FLAGS_UNSIGNED) {
-        /* Decimal unsigned integer.  */
-        base = 10;
-        goto unsigned_number;
-      }
-      if(p->flags & FLAGS_OCTAL) {
-        /* Octal unsigned integer.  */
-        base = 8;
-        goto unsigned_number;
-      }
-      if(p->flags & FLAGS_HEX) {
-        /* Hexadecimal unsigned integer.  */
-
-        digits = (p->flags & FLAGS_UPPER)? upper_digits : lower_digits;
-        base = 16;
-        goto unsigned_number;
-      }
-
-      /* Decimal integer.  */
-      base = 10;
-
-      is_neg = (p->data.num.as_signed < (mp_intmax_t)0) ? 1 : 0;
-      if(is_neg) {
-        /* signed_num might fail to hold absolute negative minimum by 1 */
-        signed_num = p->data.num.as_signed + (mp_intmax_t)1;
-        signed_num = -signed_num;
-        num = (mp_uintmax_t)signed_num;
-        num += (mp_uintmax_t)1;
-      }
-
-      goto number;
-
-      unsigned_number:
-      /* Unsigned number of base BASE.  */
-      is_neg = 0;
-
-      number:
-      /* Number of base BASE.  */
-      {
-        char *workend = &work[sizeof(work) - 1];
-        char *w;
-
-        /* Supply a default precision if none was given.  */
-        if(prec == -1)
-          prec = 1;
-
-        /* Put the number in WORK.  */
-        w = workend;
-        while(num > 0) {
-          *w-- = digits[num % base];
-          num /= base;
-        }
-        width -= (long)(workend - w);
-        prec -= (long)(workend - w);
-
-        if(is_alt && base == 8 && prec <= 0) {
-          *w-- = '0';
-          --width;
-        }
-
-        if(prec > 0) {
-          width -= prec;
-          while(prec-- > 0)
-            *w-- = '0';
-        }
-
-        if(is_alt && base == 16)
-          width -= 2;
-
-        if(is_neg || (p->flags & FLAGS_SHOWSIGN) || (p->flags & FLAGS_SPACE))
-          --width;
-
-        if(!(p->flags & FLAGS_LEFT) && !(p->flags & FLAGS_PAD_NIL))
-          while(width-- > 0)
-            OUTCHAR(' ');
-
-        if(is_neg)
-          OUTCHAR('-');
-        else if(p->flags & FLAGS_SHOWSIGN)
-          OUTCHAR('+');
-        else if(p->flags & FLAGS_SPACE)
-          OUTCHAR(' ');
-
-        if(is_alt && base == 16) {
-          OUTCHAR('0');
-          if(p->flags & FLAGS_UPPER)
-            OUTCHAR('X');
-          else
-            OUTCHAR('x');
-        }
-
-        if(!(p->flags & FLAGS_LEFT) && (p->flags & FLAGS_PAD_NIL))
-          while(width-- > 0)
-            OUTCHAR('0');
-
-        /* Write the number.  */
-        while(++w <= workend) {
-          OUTCHAR(*w);
-        }
-
-        if(p->flags & FLAGS_LEFT)
-          while(width-- > 0)
-            OUTCHAR(' ');
-      }
-      break;
-
-    case FORMAT_STRING:
-            /* String.  */
-      {
-        static const char null[] = "(nil)";
-        const char *str;
-        size_t len;
-
-        str = (char *) p->data.str;
-        if( str == NULL) {
-          /* Write null[] if there's space.  */
-          if(prec == -1 || prec >= (long) sizeof(null) - 1) {
-            str = null;
-            len = sizeof(null) - 1;
-            /* Disable quotes around (nil) */
-            p->flags &= (~FLAGS_ALT);
-          }
-          else {
-            str = "";
-            len = 0;
-          }
-        }
-        else
-          len = strlen(str);
-
-        if(prec != -1 && (size_t) prec < len)
-          len = (size_t)prec;
-        width -= (long)len;
-
-        if(p->flags & FLAGS_ALT)
-          OUTCHAR('"');
-
-        if(!(p->flags&FLAGS_LEFT))
-          while(width-- > 0)
-            OUTCHAR(' ');
-
-        while(len-- > 0)
-          OUTCHAR(*str++);
-        if(p->flags&FLAGS_LEFT)
-          while(width-- > 0)
-            OUTCHAR(' ');
-
-        if(p->flags & FLAGS_ALT)
-          OUTCHAR('"');
-      }
-      break;
-
-    case FORMAT_PTR:
-      /* Generic pointer.  */
-      {
-        void *ptr;
-        ptr = (void *) p->data.ptr;
-        if(ptr != NULL) {
-          /* If the pointer is not NULL, write it as a %#x spec.  */
-          base = 16;
-          digits = (p->flags & FLAGS_UPPER)? upper_digits : lower_digits;
-          is_alt = 1;
-          num = (size_t) ptr;
-          is_neg = 0;
-          goto number;
-        }
-        else {
-          /* Write "(nil)" for a nil pointer.  */
-          static const char strnil[] = "(nil)";
-          const char *point;
-
-          width -= (long)(sizeof(strnil) - 1);
-          if(p->flags & FLAGS_LEFT)
-            while(width-- > 0)
-              OUTCHAR(' ');
-          for (point = strnil; *point != '\0'; ++point)
-            OUTCHAR(*point);
-          if(! (p->flags & FLAGS_LEFT))
-            while(width-- > 0)
-              OUTCHAR(' ');
-        }
-      }
-      break;
-
-    case FORMAT_DOUBLE:
-      {
-        char formatbuf[32]="%";
-        char *fptr;
-        size_t left = sizeof(formatbuf)-strlen(formatbuf);
-        int len;
-
-        width = -1;
-        if(p->flags & FLAGS_WIDTH)
-          width = p->width;
-        else if(p->flags & FLAGS_WIDTHPARAM)
-          width = (long)vto[p->width].data.num.as_signed;
-
-        prec = -1;
-        if(p->flags & FLAGS_PREC)
-          prec = p->precision;
-        else if(p->flags & FLAGS_PRECPARAM)
-          prec = (long)vto[p->precision].data.num.as_signed;
-
-        if(p->flags & FLAGS_LEFT)
-          strcat(formatbuf, "-");
-        if(p->flags & FLAGS_SHOWSIGN)
-          strcat(formatbuf, "+");
-        if(p->flags & FLAGS_SPACE)
-          strcat(formatbuf, " ");
-        if(p->flags & FLAGS_ALT)
-          strcat(formatbuf, "#");
-
-        fptr=&formatbuf[strlen(formatbuf)];
-
-        if(width >= 0) {
-          /* RECURSIVE USAGE */
-          len = curl_msnprintf(fptr, left, "%ld", width);
-          fptr += len;
-          left -= len;
-        }
-        if(prec >= 0) {
-          /* RECURSIVE USAGE */
-          len = curl_msnprintf(fptr, left, ".%ld", prec);
-          fptr += len;
-          left -= len;
-        }
-        if(p->flags & FLAGS_LONG)
-          *fptr++ = 'l';
-
-        if(p->flags & FLAGS_FLOATE)
-          *fptr++ = (char)((p->flags & FLAGS_UPPER) ? 'E':'e');
-        else if(p->flags & FLAGS_FLOATG)
-          *fptr++ = (char)((p->flags & FLAGS_UPPER) ? 'G' : 'g');
-        else
-          *fptr++ = 'f';
-
-        *fptr = 0; /* and a final zero termination */
-
-        /* NOTE NOTE NOTE!! Not all sprintf() implementations returns number
-           of output characters */
-        (sprintf)(work, formatbuf, p->data.dnum);
-
-        for(fptr=work; *fptr; fptr++)
-          OUTCHAR(*fptr);
-      }
-      break;
-
-    case FORMAT_INTPTR:
-      /* Answer the count of characters written.  */
-#ifdef HAVE_LONG_LONG_TYPE
-      if(p->flags & FLAGS_LONGLONG)
-        *(LONG_LONG_TYPE *) p->data.ptr = (LONG_LONG_TYPE)done;
-      else
-#endif
-        if(p->flags & FLAGS_LONG)
-          *(long *) p->data.ptr = (long)done;
-      else if(!(p->flags & FLAGS_SHORT))
-        *(int *) p->data.ptr = (int)done;
-      else
-        *(short *) p->data.ptr = (short)done;
-      break;
-
-    default:
-      break;
-    }
-    f = *end++; /* goto end of %-code */
-
-  }
-  return done;
-}
-
-/* fputc() look-alike */
-static int addbyter(int output, FILE *data)
-{
-  struct nsprintf *infop=(struct nsprintf *)data;
-  unsigned char outc = (unsigned char)output;
-
-  if(infop->length < infop->max) {
-    /* only do this if we haven't reached max length yet */
-    infop->buffer[0] = outc; /* store */
-    infop->buffer++; /* increase pointer */
-    infop->length++; /* we are now one byte larger */
-    return outc;     /* fputc() returns like this on success */
-  }
-  return -1;
-}
-
-int curl_mvsnprintf(char *buffer, size_t maxlength, const char *format,
-                    va_list ap_save)
-{
-  int retcode;
-  struct nsprintf info;
-
-  info.buffer = buffer;
-  info.length = 0;
-  info.max = maxlength;
-
-  retcode = dprintf_formatf(&info, addbyter, format, ap_save);
-  if(info.max) {
-    /* we terminate this with a zero byte */
-    if(info.max == info.length)
-      /* we're at maximum, scrap the last letter */
-      info.buffer[-1] = 0;
-    else
-      info.buffer[0] = 0;
-  }
-  return retcode;
-}
-
-int curl_msnprintf(char *buffer, size_t maxlength, const char *format, ...)
-{
-  int retcode;
-  va_list ap_save; /* argument pointer */
-  va_start(ap_save, format);
-  retcode = curl_mvsnprintf(buffer, maxlength, format, ap_save);
-  va_end(ap_save);
-  return retcode;
-}
-
-/* fputc() look-alike */
-static int alloc_addbyter(int output, FILE *data)
-{
-  struct asprintf *infop=(struct asprintf *)data;
-  unsigned char outc = (unsigned char)output;
-
-  if(!infop->buffer) {
-    infop->buffer = malloc(32);
-    if(!infop->buffer) {
-      infop->fail = 1;
-      return -1; /* fail */
-    }
-    infop->alloc = 32;
-    infop->len =0;
-  }
-  else if(infop->len+1 >= infop->alloc) {
-    char *newptr;
-
-    newptr = realloc(infop->buffer, infop->alloc*2);
-
-    if(!newptr) {
-      infop->fail = 1;
-      return -1; /* fail */
-    }
-    infop->buffer = newptr;
-    infop->alloc *= 2;
-  }
-
-  infop->buffer[ infop->len ] = outc;
-
-  infop->len++;
-
-  return outc; /* fputc() returns like this on success */
-}
-
-char *curl_maprintf(const char *format, ...)
-{
-  va_list ap_save; /* argument pointer */
-  int retcode;
-  struct asprintf info;
-
-  info.buffer = NULL;
-  info.len = 0;
-  info.alloc = 0;
-  info.fail = 0;
-
-  va_start(ap_save, format);
-  retcode = dprintf_formatf(&info, alloc_addbyter, format, ap_save);
-  va_end(ap_save);
-  if((-1 == retcode) || info.fail) {
-    if(info.alloc)
-      free(info.buffer);
-    return NULL;
-  }
-  if(info.alloc) {
-    info.buffer[info.len] = 0; /* we terminate this with a zero byte */
-    return info.buffer;
-  }
-  else
-    return strdup("");
-}
-
-char *curl_mvaprintf(const char *format, va_list ap_save)
-{
-  int retcode;
-  struct asprintf info;
-
-  info.buffer = NULL;
-  info.len = 0;
-  info.alloc = 0;
-  info.fail = 0;
-
-  retcode = dprintf_formatf(&info, alloc_addbyter, format, ap_save);
-  if((-1 == retcode) || info.fail) {
-    if(info.alloc)
-      free(info.buffer);
-    return NULL;
-  }
-
-  if(info.alloc) {
-    info.buffer[info.len] = 0; /* we terminate this with a zero byte */
-    return info.buffer;
-  }
-  else
-    return strdup("");
-}
-
-static int storebuffer(int output, FILE *data)
-{
-  char **buffer = (char **)data;
-  unsigned char outc = (unsigned char)output;
-  **buffer = outc;
-  (*buffer)++;
-  return outc; /* act like fputc() ! */
-}
-
-int curl_msprintf(char *buffer, const char *format, ...)
-{
-  va_list ap_save; /* argument pointer */
-  int retcode;
-  va_start(ap_save, format);
-  retcode = dprintf_formatf(&buffer, storebuffer, format, ap_save);
-  va_end(ap_save);
-  *buffer=0; /* we terminate this with a zero byte */
-  return retcode;
-}
-
-int curl_mprintf(const char *format, ...)
-{
-  int retcode;
-  va_list ap_save; /* argument pointer */
-  va_start(ap_save, format);
-
-  retcode = dprintf_formatf(stdout, fputc, format, ap_save);
-  va_end(ap_save);
-  return retcode;
-}
-
-int curl_mfprintf(FILE *whereto, const char *format, ...)
-{
-  int retcode;
-  va_list ap_save; /* argument pointer */
-  va_start(ap_save, format);
-  retcode = dprintf_formatf(whereto, fputc, format, ap_save);
-  va_end(ap_save);
-  return retcode;
-}
-
-int curl_mvsprintf(char *buffer, const char *format, va_list ap_save)
-{
-  int retcode;
-  retcode = dprintf_formatf(&buffer, storebuffer, format, ap_save);
-  *buffer=0; /* we terminate this with a zero byte */
-  return retcode;
-}
-
-int curl_mvprintf(const char *format, va_list ap_save)
-{
-  return dprintf_formatf(stdout, fputc, format, ap_save);
-}
-
-int curl_mvfprintf(FILE *whereto, const char *format, va_list ap_save)
-{
-  return dprintf_formatf(whereto, fputc, format, ap_save);
-}
-
-#ifdef DPRINTF_DEBUG
-int main()
-{
-  char buffer[129];
-  char *ptr;
-#ifdef HAVE_LONG_LONG_TYPE
-  LONG_LONG_TYPE one=99;
-  LONG_LONG_TYPE two=100;
-  LONG_LONG_TYPE test = 0x1000000000LL;
-  curl_mprintf("%lld %lld %lld\n", one, two, test);
-#endif
-
-  curl_mprintf("%3d %5d\n", 10, 1998);
-
-  ptr=curl_maprintf("test this then baby %s%s%s%s%s%s %d %d %d loser baby get a kiss in yer face now!", "", "pretty long string pretty long string pretty long string pretty long string pretty long string", "/", "/", "/", "pretty long string", 1998, 1999, 2001);
-
-  puts(ptr);
-
-  memset(ptr, 55, strlen(ptr)+1);
-
-  free(ptr);
-
-#if 1
-  curl_mprintf(buffer, "%s %s %d", "daniel", "stenberg", 19988);
-  puts(buffer);
-
-  curl_mfprintf(stderr, "%s %#08x\n", "dummy", 65);
-
-  printf("%s %#08x\n", "dummy", 65);
-  {
-    double tryout = 3.14156592;
-    curl_mprintf(buffer, "%.2g %G %f %e %E", tryout, tryout, tryout, tryout, tryout);
-    puts(buffer);
-    printf("%.2g %G %f %e %E\n", tryout, tryout, tryout, tryout, tryout);
-  }
-#endif
-
-  return 0;
-}
-
-#endif
diff --git a/src/other/curl/lib/msvcproj.foot b/src/other/curl/lib/msvcproj.foot
deleted file mode 100644
index 6ab63b4..0000000
--- a/src/other/curl/lib/msvcproj.foot
+++ /dev/null
@@ -1,11 +0,0 @@
-
-# Begin Group "Resource Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\libcurl.rc
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/src/other/curl/lib/msvcproj.head b/src/other/curl/lib/msvcproj.head
deleted file mode 100644
index 5714ef7..0000000
--- a/src/other/curl/lib/msvcproj.head
+++ /dev/null
@@ -1,147 +0,0 @@
-# Microsoft Developer Studio Project File - Name="libcurl" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
-# TARGTYPE "Win32 (x86) Static Library" 0x0104
-
-CFG=libcurl - Win32 LIB Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "libcurl.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "libcurl.mak" CFG="libcurl - Win32 LIB Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "libcurl - Win32 DLL Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "libcurl - Win32 DLL Release" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "libcurl - Win32 LIB Debug" (based on "Win32 (x86) Static Library")
-!MESSAGE "libcurl - Win32 LIB Release" (based on "Win32 (x86) Static Library")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-
-!IF  "$(CFG)" == "libcurl - Win32 DLL Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "DLL-Debug"
-# PROP BASE Intermediate_Dir "DLL-Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "DLL-Debug"
-# PROP Intermediate_Dir "DLL-Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "." /I "..\include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "." /I "..\include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /FD /GZ /c
-MTL=midl.exe
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-RSC=rc.exe
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib ws2_32.lib wldap32.lib /nologo /dll /incremental:no /map /debug /machine:I386 /out:"DLL-Debug/libcurld.dll" /implib:"DLL-Debug/libcurld_imp.lib" /pdbtype:sept
-# ADD LINK32 kernel32.lib ws2_32.lib wldap32.lib /nologo /dll /incremental:no /map /debug /machine:I386 /out:"DLL-Debug/libcurld.dll" /implib:"DLL-Debug/libcurld_imp.lib" /pdbtype:sept
-
-!ELSEIF  "$(CFG)" == "libcurl - Win32 DLL Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "DLL-Release"
-# PROP BASE Intermediate_Dir "DLL-Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "DLL-Release"
-# PROP Intermediate_Dir "DLL-Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-CPP=cl.exe
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I "..\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I "..\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /FD /c
-MTL=midl.exe
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-RSC=rc.exe
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib ws2_32.lib wldap32.lib /nologo /dll /pdb:none /machine:I386 /out:"DLL-Release/libcurl.dll" /implib:"DLL-Release/libcurl_imp.lib"
-# ADD LINK32 kernel32.lib ws2_32.lib wldap32.lib /nologo /dll /pdb:none /machine:I386 /out:"DLL-Release/libcurl.dll" /implib:"DLL-Release/libcurl_imp.lib"
-
-!ELSEIF  "$(CFG)" == "libcurl - Win32 LIB Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "LIB-Debug"
-# PROP BASE Intermediate_Dir "LIB-Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "LIB-Debug"
-# PROP Intermediate_Dir "LIB-Debug"
-# PROP Target_Dir ""
-CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "." /I "..\include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "." /I "..\include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /FD /GZ /c
-RSC=rc.exe
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo /out:"LIB-Debug/libcurld.lib" /machine:I386
-# ADD LIB32 /nologo /out:"LIB-Debug/libcurld.lib" /machine:I386
-
-!ELSEIF  "$(CFG)" == "libcurl - Win32 LIB Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "LIB-Release"
-# PROP BASE Intermediate_Dir "LIB-Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "LIB-Release"
-# PROP Intermediate_Dir "LIB-Release"
-# PROP Target_Dir ""
-CPP=cl.exe
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I "..\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I "..\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /FD /c
-RSC=rc.exe
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo /out:"LIB-Release/libcurl.lib" /machine:I386
-# ADD LIB32 /nologo /out:"LIB-Release/libcurl.lib" /machine:I386
-
-!ENDIF 
-
-# Begin Target
-
-# Name "libcurl - Win32 DLL Debug"
-# Name "libcurl - Win32 DLL Release"
-# Name "libcurl - Win32 LIB Debug"
-# Name "libcurl - Win32 LIB Release"
diff --git a/src/other/curl/lib/multi.c b/src/other/curl/lib/multi.c
deleted file mode 100644
index 476cb81..0000000
--- a/src/other/curl/lib/multi.c
+++ /dev/null
@@ -1,2489 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#include <curl/curl.h>
-
-#include "urldata.h"
-#include "transfer.h"
-#include "url.h"
-#include "connect.h"
-#include "progress.h"
-#include "easyif.h"
-#include "multiif.h"
-#include "sendf.h"
-#include "timeval.h"
-#include "http.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/*
-  CURL_SOCKET_HASH_TABLE_SIZE should be a prime number. Increasing it from 97
-  to 911 takes on a 32-bit machine 4 x 804 = 3211 more bytes.  Still, every
-  CURL handle takes 45-50 K memory, therefore this 3K are not significant.
-*/
-#ifndef CURL_SOCKET_HASH_TABLE_SIZE
-#define CURL_SOCKET_HASH_TABLE_SIZE 911
-#endif
-
-struct Curl_message {
-  /* the 'CURLMsg' is the part that is visible to the external user */
-  struct CURLMsg extmsg;
-  struct Curl_message *next;
-};
-
-/* NOTE: if you add a state here, add the name to the statename[] array as
-   well!
-*/
-typedef enum {
-  CURLM_STATE_INIT,        /* start in this state */
-  CURLM_STATE_CONNECT,     /* resolve/connect has been sent off */
-  CURLM_STATE_WAITRESOLVE, /* awaiting the resolve to finalize */
-  CURLM_STATE_WAITCONNECT, /* awaiting the connect to finalize */
-  CURLM_STATE_WAITPROXYCONNECT, /* awaiting proxy CONNECT to finalize */
-  CURLM_STATE_PROTOCONNECT, /* completing the protocol-specific connect phase */
-  CURLM_STATE_WAITDO,      /* wait for our turn to send the request */
-  CURLM_STATE_DO,          /* start send off the request (part 1) */
-  CURLM_STATE_DOING,       /* sending off the request (part 1) */
-  CURLM_STATE_DO_MORE,     /* send off the request (part 2) */
-  CURLM_STATE_DO_DONE,     /* done sending off request */
-  CURLM_STATE_WAITPERFORM, /* wait for our turn to read the response */
-  CURLM_STATE_PERFORM,     /* transfer data */
-  CURLM_STATE_TOOFAST,     /* wait because limit-rate exceeded */
-  CURLM_STATE_DONE,        /* post data transfer operation */
-  CURLM_STATE_COMPLETED,   /* operation complete */
-
-  CURLM_STATE_LAST /* not a true state, never use this */
-} CURLMstate;
-
-/* we support N sockets per easy handle. Set the corresponding bit to what
-   action we should wait for */
-#define MAX_SOCKSPEREASYHANDLE 5
-#define GETSOCK_READABLE (0x00ff)
-#define GETSOCK_WRITABLE (0xff00)
-
-struct closure {
-  struct closure *next; /* a simple one-way list of structs */
-  struct SessionHandle *easy_handle;
-};
-
-struct Curl_one_easy {
-  /* first, two fields for the linked list of these */
-  struct Curl_one_easy *next;
-  struct Curl_one_easy *prev;
-
-  struct SessionHandle *easy_handle; /* the easy handle for this unit */
-  struct connectdata *easy_conn;     /* the "unit's" connection */
-
-  CURLMstate state;  /* the handle's state */
-  CURLcode result;   /* previous result */
-
-  struct Curl_message *msg; /* A pointer to one single posted message.
-                               Cleanup should be done on this pointer NOT on
-                               the linked list in Curl_multi.  This message
-                               will be deleted when this handle is removed
-                               from the multi-handle */
-  int msg_num; /* number of messages left in 'msg' to return */
-
-  /* Array with the plain socket numbers this handle takes care of, in no
-     particular order. Note that all sockets are added to the sockhash, where
-     the state etc are also kept. This array is mostly used to detect when a
-     socket is to be removed from the hash. See singlesocket(). */
-  curl_socket_t sockets[MAX_SOCKSPEREASYHANDLE];
-  int numsocks;
-};
-
-#define CURL_MULTI_HANDLE 0x000bab1e
-
-#define GOOD_MULTI_HANDLE(x) \
-  ((x)&&(((struct Curl_multi *)(x))->type == CURL_MULTI_HANDLE))
-#define GOOD_EASY_HANDLE(x) \
- (((struct SessionHandle *)(x))->magic == CURLEASY_MAGIC_NUMBER)
-
-/* This is the struct known as CURLM on the outside */
-struct Curl_multi {
-  /* First a simple identifier to easier detect if a user mix up
-     this multi handle with an easy handle. Set this to CURL_MULTI_HANDLE. */
-  long type;
-
-  /* We have a linked list with easy handles */
-  struct Curl_one_easy easy;
-
-  int num_easy; /* amount of entries in the linked list above. */
-  int num_msgs; /* amount of messages in the easy handles */
-  int num_alive; /* amount of easy handles that are added but have not yet
-                    reached COMPLETE state */
-
-  /* callback function and user data pointer for the *socket() API */
-  curl_socket_callback socket_cb;
-  void *socket_userp;
-
-  /* Hostname cache */
-  struct curl_hash *hostcache;
-
-  /* timetree points to the splay-tree of time nodes to figure out expire
-     times of all currently set timers */
-  struct Curl_tree *timetree;
-
-  /* 'sockhash' is the lookup hash for socket descriptor => easy handles (note
-     the pluralis form, there can be more than one easy handle waiting on the
-     same actual socket) */
-  struct curl_hash *sockhash;
-
-  /* Whether pipelining is enabled for this multi handle */
-  bool pipelining_enabled;
-
-  /* shared connection cache */
-  struct conncache *connc;
-  long maxconnects; /* if >0, a fixed limit of the maximum number of entries
-                       we're allowed to grow the connection cache to */
-
-  /* list of easy handles kept around for doing nice connection closures */
-  struct closure *closure;
-
-  /* timer callback and user data pointer for the *socket() API */
-  curl_multi_timer_callback timer_cb;
-  void *timer_userp;
-  struct timeval timer_lastcall; /* the fixed time for the timeout for the
-                                    previous callback */
-};
-
-static void multi_connc_remove_handle(struct Curl_multi *multi,
-                                      struct SessionHandle *data);
-static void singlesocket(struct Curl_multi *multi,
-                         struct Curl_one_easy *easy);
-static CURLMcode add_closure(struct Curl_multi *multi,
-                             struct SessionHandle *data);
-static int update_timer(struct Curl_multi *multi);
-
-static CURLcode addHandleToSendOrPendPipeline(struct SessionHandle *handle,
-                                              struct connectdata *conn);
-static int checkPendPipeline(struct connectdata *conn);
-static void moveHandleFromSendToRecvPipeline(struct SessionHandle *handle,
-                                             struct connectdata *conn);
-static void moveHandleFromRecvToDonePipeline(struct SessionHandle *handle,
-                                             struct connectdata *conn);
-static bool isHandleAtHead(struct SessionHandle *handle,
-                           struct curl_llist *pipeline);
-
-#ifdef DEBUGBUILD
-static const char * const statename[]={
-  "INIT",
-  "CONNECT",
-  "WAITRESOLVE",
-  "WAITCONNECT",
-  "WAITPROXYCONNECT",
-  "PROTOCONNECT",
-  "WAITDO",
-  "DO",
-  "DOING",
-  "DO_MORE",
-  "DO_DONE",
-  "WAITPERFORM",
-  "PERFORM",
-  "TOOFAST",
-  "DONE",
-  "COMPLETED",
-};
-#endif
-
-/* always use this function to change state, to make debugging easier */
-static void multistate(struct Curl_one_easy *easy, CURLMstate state)
-{
-#ifdef DEBUGBUILD
-  long connectindex = -5000;
-#endif
-  CURLMstate oldstate = easy->state;
-
-  if(oldstate == state)
-    /* don't bother when the new state is the same as the old state */
-    return;
-
-  easy->state = state;
-
-#ifdef DEBUGBUILD
-  if(easy->easy_conn) {
-    if(easy->state > CURLM_STATE_CONNECT &&
-       easy->state < CURLM_STATE_COMPLETED)
-      connectindex = easy->easy_conn->connectindex;
-
-    infof(easy->easy_handle,
-          "STATE: %s => %s handle %p; (connection #%ld) \n",
-          statename[oldstate], statename[easy->state],
-          (char *)easy, connectindex);
-  }
-#endif
-  if(state == CURLM_STATE_COMPLETED)
-    /* changing to COMPLETED means there's one less easy handle 'alive' */
-    easy->easy_handle->multi->num_alive--;
-}
-
-/*
- * We add one of these structs to the sockhash for a particular socket
- */
-
-struct Curl_sh_entry {
-  struct SessionHandle *easy;
-  time_t timestamp;
-  int action;  /* what action READ/WRITE this socket waits for */
-  curl_socket_t socket; /* mainly to ease debugging */
-  void *socketp; /* settable by users with curl_multi_assign() */
-};
-/* bits for 'action' having no bits means this socket is not expecting any
-   action */
-#define SH_READ  1
-#define SH_WRITE 2
-
-/* make sure this socket is present in the hash for this handle */
-static struct Curl_sh_entry *sh_addentry(struct curl_hash *sh,
-                                         curl_socket_t s,
-                                         struct SessionHandle *data)
-{
-  struct Curl_sh_entry *there =
-    Curl_hash_pick(sh, (char *)&s, sizeof(curl_socket_t));
-  struct Curl_sh_entry *check;
-
-  if(there)
-    /* it is present, return fine */
-    return there;
-
-  /* not present, add it */
-  check = calloc(1, sizeof(struct Curl_sh_entry));
-  if(!check)
-    return NULL; /* major failure */
-  check->easy = data;
-  check->socket = s;
-
-  /* make/add new hash entry */
-  if(NULL == Curl_hash_add(sh, (char *)&s, sizeof(curl_socket_t), check)) {
-    free(check);
-    return NULL; /* major failure */
-  }
-
-  return check; /* things are good in sockhash land */
-}
-
-
-/* delete the given socket + handle from the hash */
-static void sh_delentry(struct curl_hash *sh, curl_socket_t s)
-{
-  struct Curl_sh_entry *there =
-    Curl_hash_pick(sh, (char *)&s, sizeof(curl_socket_t));
-
-  if(there) {
-    /* this socket is in the hash */
-    /* We remove the hash entry. (This'll end up in a call to
-       sh_freeentry().) */
-    Curl_hash_delete(sh, (char *)&s, sizeof(curl_socket_t));
-  }
-}
-
-/*
- * free a sockhash entry
- */
-static void sh_freeentry(void *freethis)
-{
-  struct Curl_sh_entry *p = (struct Curl_sh_entry *) freethis;
-
-  if(p)
-    free(p);
-}
-
-static size_t fd_key_compare(void*k1, size_t k1_len, void*k2, size_t k2_len)
-{
-  (void) k1_len; (void) k2_len;
-
-  return (*((int* ) k1)) == (*((int* ) k2));
-}
-
-static size_t hash_fd(void* key, size_t key_length, size_t slots_num)
-{
-  int fd = * ((int* ) key);
-  (void) key_length;
-
-  return (fd % (int)slots_num);
-}
-
-/*
- * sh_init() creates a new socket hash and returns the handle for it.
- *
- * Quote from README.multi_socket:
- *
- * "Some tests at 7000 and 9000 connections showed that the socket hash lookup
- * is somewhat of a bottle neck. Its current implementation may be a bit too
- * limiting. It simply has a fixed-size array, and on each entry in the array
- * it has a linked list with entries. So the hash only checks which list to
- * scan through. The code I had used so for used a list with merely 7 slots
- * (as that is what the DNS hash uses) but with 7000 connections that would
- * make an average of 1000 nodes in each list to run through. I upped that to
- * 97 slots (I believe a prime is suitable) and noticed a significant speed
- * increase.  I need to reconsider the hash implementation or use a rather
- * large default value like this. At 9000 connections I was still below 10us
- * per call."
- *
- */
-static struct curl_hash *sh_init(void)
-{
-  return Curl_hash_alloc(CURL_SOCKET_HASH_TABLE_SIZE, hash_fd, fd_key_compare,
-                         sh_freeentry);
-}
-
-CURLM *curl_multi_init(void)
-{
-  struct Curl_multi *multi = calloc(1, sizeof(struct Curl_multi));
-
-  if(!multi)
-    return NULL;
-
-  multi->type = CURL_MULTI_HANDLE;
-
-  multi->hostcache = Curl_mk_dnscache();
-  if(!multi->hostcache) {
-    /* failure, free mem and bail out */
-    free(multi);
-    return NULL;
-  }
-
-  multi->sockhash = sh_init();
-  if(!multi->sockhash) {
-    /* failure, free mem and bail out */
-    Curl_hash_destroy(multi->hostcache);
-    free(multi);
-    return NULL;
-  }
-
-  multi->connc = Curl_mk_connc(CONNCACHE_MULTI, -1L);
-  if(!multi->connc) {
-    Curl_hash_destroy(multi->sockhash);
-    Curl_hash_destroy(multi->hostcache);
-    free(multi);
-    return NULL;
-  }
-
-  /* Let's make the doubly-linked list a circular list.  This makes
-     the linked list code simpler and allows inserting at the end
-     with less work (we didn't keep a tail pointer before). */
-  multi->easy.next = &multi->easy;
-  multi->easy.prev = &multi->easy;
-
-  return (CURLM *) multi;
-}
-
-CURLMcode curl_multi_add_handle(CURLM *multi_handle,
-                                CURL *easy_handle)
-{
-  struct Curl_multi *multi=(struct Curl_multi *)multi_handle;
-  struct Curl_one_easy *easy;
-  struct closure *cl;
-  struct closure *prev=NULL;
-
-  /* First, make some basic checks that the CURLM handle is a good handle */
-  if(!GOOD_MULTI_HANDLE(multi))
-    return CURLM_BAD_HANDLE;
-
-  /* Verify that we got a somewhat good easy handle too */
-  if(!GOOD_EASY_HANDLE(easy_handle))
-    return CURLM_BAD_EASY_HANDLE;
-
-  /* Prevent users to add the same handle more than once! */
-  if(((struct SessionHandle *)easy_handle)->multi)
-    /* possibly we should create a new unique error code for this condition */
-    return CURLM_BAD_EASY_HANDLE;
-
-  /* Now, time to add an easy handle to the multi stack */
-  easy = calloc(1, sizeof(struct Curl_one_easy));
-  if(!easy)
-    return CURLM_OUT_OF_MEMORY;
-
-  cl = multi->closure;
-  while(cl) {
-    struct closure *next = cl->next;
-    if(cl->easy_handle == (struct SessionHandle *)easy_handle) {
-      /* remove this handle from the closure list */
-      free(cl);
-      if(prev)
-        prev->next = next;
-      else
-        multi->closure = next;
-      break; /* no need to continue since this handle can only be present once
-                in the list */
-    }
-    prev = cl;
-    cl = next;
-  }
-
-  /* set the easy handle */
-  easy->easy_handle = easy_handle;
-  multistate(easy, CURLM_STATE_INIT);
-
-  /* set the back pointer to one_easy to assist in removal */
-  easy->easy_handle->multi_pos =  easy;
-
-  /* for multi interface connections, we share DNS cache automatically if the
-     easy handle's one is currently private. */
-  if(easy->easy_handle->dns.hostcache &&
-     (easy->easy_handle->dns.hostcachetype == HCACHE_PRIVATE)) {
-    Curl_hash_destroy(easy->easy_handle->dns.hostcache);
-    easy->easy_handle->dns.hostcache = NULL;
-    easy->easy_handle->dns.hostcachetype = HCACHE_NONE;
-  }
-
-  if(!easy->easy_handle->dns.hostcache ||
-     (easy->easy_handle->dns.hostcachetype == HCACHE_NONE)) {
-    easy->easy_handle->dns.hostcache = multi->hostcache;
-    easy->easy_handle->dns.hostcachetype = HCACHE_MULTI;
-  }
-
-  if(easy->easy_handle->state.connc) {
-    if(easy->easy_handle->state.connc->type == CONNCACHE_PRIVATE) {
-      /* kill old private version */
-      Curl_rm_connc(easy->easy_handle->state.connc);
-      /* point out our shared one instead */
-      easy->easy_handle->state.connc = multi->connc;
-    }
-    /* else it is already using multi? */
-  }
-  else
-    /* point out our shared one */
-    easy->easy_handle->state.connc = multi->connc;
-
-  /* Make sure the type is setup correctly */
-  easy->easy_handle->state.connc->type = CONNCACHE_MULTI;
-
-  /* This adds the new entry at the back of the list
-     to try and maintain a FIFO queue so the pipelined
-     requests are in order. */
-
-  /* We add this new entry last in the list. We make our 'next' point to the
-     'first' struct and our 'prev' point to the previous 'prev' */
-  easy->next = &multi->easy;
-  easy->prev = multi->easy.prev;
-
-  /* make 'easy' the last node in the chain */
-  multi->easy.prev = easy;
-
-  /* if there was a prev node, make sure its 'next' pointer links to
-     the new node */
-  easy->prev->next = easy;
-
-  Curl_easy_addmulti(easy_handle, multi_handle);
-
-  /* make the SessionHandle struct refer back to this struct */
-  easy->easy_handle->set.one_easy = easy;
-
-  /* Set the timeout for this handle to expire really soon so that it will
-     be taken care of even when this handle is added in the midst of operation
-     when only the curl_multi_socket() API is used. During that flow, only
-     sockets that time-out or have actions will be dealt with. Since this
-     handle has no action yet, we make sure it times out to get things to
-     happen. */
-  Curl_expire(easy->easy_handle, 1);
-
-  /* increase the node-counter */
-  multi->num_easy++;
-
-  if((multi->num_easy * 4) > multi->connc->num) {
-    /* We want the connection cache to have plenty room. Before we supported
-       the shared cache every single easy handle had 5 entries in their cache
-       by default. */
-    long newmax = multi->num_easy * 4;
-
-    if(multi->maxconnects && (multi->maxconnects < newmax))
-      /* don't grow beyond the allowed size */
-      newmax = multi->maxconnects;
-
-    if(newmax > multi->connc->num) {
-      /* we only do this is we can in fact grow the cache */
-      CURLcode res = Curl_ch_connc(easy_handle, multi->connc, newmax);
-      if(res != CURLE_OK) {
-        /* FIXME: may need to do more cleanup here */
-        curl_multi_remove_handle(multi_handle, easy_handle);
-        return CURLM_OUT_OF_MEMORY;
-      }
-    }
-  }
-
-  /* increase the alive-counter */
-  multi->num_alive++;
-
-  /* A somewhat crude work-around for a little glitch in update_timer() that
-     happens if the lastcall time is set to the same time when the handle is
-     removed as when the next handle is added, as then the check in
-     update_timer() that prevents calling the application multiple times with
-     the same timer infor will not trigger and then the new handle's timeout
-     will not be notified to the app.
-
-     The work-around is thus simply to clear the 'lastcall' variable to force
-     update_timer() to always trigger a callback to the app when a new easy
-     handle is added */
-  memset(&multi->timer_lastcall, 0, sizeof(multi->timer_lastcall));
-
-  update_timer(multi);
-  return CURLM_OK;
-}
-
-#if 0
-/* Debug-function, used like this:
- *
- * Curl_hash_print(multi->sockhash, debug_print_sock_hash);
- *
- * Enable the hash print function first by editing hash.c
- */
-static void debug_print_sock_hash(void *p)
-{
-  struct Curl_sh_entry *sh = (struct Curl_sh_entry *)p;
-
-  fprintf(stderr, " [easy %p/magic %x/socket %d]",
-          (void *)sh->easy, sh->easy->magic, (int)sh->socket);
-}
-#endif
-
-CURLMcode curl_multi_remove_handle(CURLM *multi_handle,
-                                   CURL *curl_handle)
-{
-  struct Curl_multi *multi=(struct Curl_multi *)multi_handle;
-  struct Curl_one_easy *easy;
-
-  /* First, make some basic checks that the CURLM handle is a good handle */
-  if(!GOOD_MULTI_HANDLE(multi))
-    return CURLM_BAD_HANDLE;
-
-  /* Verify that we got a somewhat good easy handle too */
-  if(!GOOD_EASY_HANDLE(curl_handle))
-    return CURLM_BAD_EASY_HANDLE;
-
-  /* pick-up from the 'curl_handle' the kept position in the list */
-  easy = ((struct SessionHandle *)curl_handle)->multi_pos;
-
-  if(easy) {
-    bool premature = (bool)(easy->state != CURLM_STATE_COMPLETED);
-    bool easy_owns_conn = (bool)(easy->easy_conn &&
-                                 (easy->easy_conn->data == easy->easy_handle));
-
-    /* If the 'state' is not INIT or COMPLETED, we might need to do something
-       nice to put the easy_handle in a good known state when this returns. */
-    if(premature)
-      /* this handle is "alive" so we need to count down the total number of
-         alive connections when this is removed */
-      multi->num_alive--;
-
-    if(easy->easy_conn &&
-       (easy->easy_conn->send_pipe->size +
-        easy->easy_conn->recv_pipe->size > 1) &&
-       easy->state > CURLM_STATE_WAITDO &&
-       easy->state < CURLM_STATE_COMPLETED) {
-      /* If the handle is in a pipeline and has started sending off its
-         request but not received its reponse yet, we need to close
-         connection. */
-      easy->easy_conn->bits.close = TRUE;
-      /* Set connection owner so that Curl_done() closes it.
-         We can sefely do this here since connection is killed. */
-      easy->easy_conn->data = easy->easy_handle;
-    }
-
-    /* The timer must be shut down before easy->multi is set to NULL,
-       else the timenode will remain in the splay tree after
-       curl_easy_cleanup is called. */
-    Curl_expire(easy->easy_handle, 0);
-
-    if(easy->easy_handle->dns.hostcachetype == HCACHE_MULTI) {
-      /* clear out the usage of the shared DNS cache */
-      easy->easy_handle->dns.hostcache = NULL;
-      easy->easy_handle->dns.hostcachetype = HCACHE_NONE;
-    }
-
-    if(easy->easy_conn) {
-
-      /* we must call Curl_done() here (if we still "own it") so that we don't
-         leave a half-baked one around */
-      if (easy_owns_conn) {
-
-        /* Curl_done() clears the conn->data field to lose the association
-           between the easy handle and the connection
-
-           Note that this ignores the return code simply because there's
-           nothing really useful to do with it anyway! */
-        (void)Curl_done(&easy->easy_conn, easy->result, premature);
-
-        if(easy->easy_conn)
-          /* the connection is still alive, set back the association to enable
-             the check below to trigger TRUE */
-          easy->easy_conn->data = easy->easy_handle;
-      }
-      else
-        /* Clear connection pipelines, if Curl_done above was not called */
-        Curl_getoff_all_pipelines(easy->easy_handle, easy->easy_conn);
-    }
-
-    /* figure out if the easy handle is used by one or more connections in the
-       cache */
-    multi_connc_remove_handle(multi, easy->easy_handle);
-
-    if(easy->easy_handle->state.connc->type == CONNCACHE_MULTI) {
-      /* if this was using the shared connection cache we clear the pointer
-         to that since we're not part of that handle anymore */
-      easy->easy_handle->state.connc = NULL;
-
-      /* Modify the connectindex since this handle can't point to the
-         connection cache anymore.
-
-         TODO: consider if this is really what we want. The connection cache
-         is within the multi handle and that owns the connections so we should
-         not need to touch connections like this when we just remove an easy
-         handle...
-      */
-      if(easy->easy_conn && easy_owns_conn &&
-         (easy->easy_conn->send_pipe->size +
-          easy->easy_conn->recv_pipe->size == 0))
-        easy->easy_conn->connectindex = -1;
-    }
-
-    /* change state without using multistate(), only to make singlesocket() do
-       what we want */
-    easy->state = CURLM_STATE_COMPLETED;
-    singlesocket(multi, easy); /* to let the application know what sockets
-                                  that vanish with this handle */
-
-    Curl_easy_addmulti(easy->easy_handle, NULL); /* clear the association
-                                                    to this multi handle */
-
-    /* make the previous node point to our next */
-    if(easy->prev)
-      easy->prev->next = easy->next;
-    /* make our next point to our previous node */
-    if(easy->next)
-      easy->next->prev = easy->prev;
-
-    easy->easy_handle->set.one_easy = NULL; /* detached */
-
-    /* Null the position in the controlling structure */
-    easy->easy_handle->multi_pos = NULL;
-
-    /* NOTE NOTE NOTE
-       We do not touch the easy handle here! */
-    if(easy->msg)
-      free(easy->msg);
-    free(easy);
-
-    multi->num_easy--; /* one less to care about now */
-
-    update_timer(multi);
-    return CURLM_OK;
-  }
-  else
-    return CURLM_BAD_EASY_HANDLE; /* twasn't found */
-}
-
-bool Curl_multi_canPipeline(const struct Curl_multi* multi)
-{
-  return multi->pipelining_enabled;
-}
-
-void Curl_multi_handlePipeBreak(struct SessionHandle *data)
-{
-  struct Curl_one_easy *one_easy = data->set.one_easy;
-
-  if(one_easy)
-    one_easy->easy_conn = NULL;
-}
-
-static int waitconnect_getsock(struct connectdata *conn,
-                               curl_socket_t *sock,
-                               int numsocks)
-{
-  if(!numsocks)
-    return GETSOCK_BLANK;
-
-  sock[0] = conn->sock[FIRSTSOCKET];
-
-  /* when we've sent a CONNECT to a proxy, we should rather wait for the
-     socket to become readable to be able to get the response headers */
-  if(conn->bits.tunnel_connecting)
-    return GETSOCK_READSOCK(0);
-
-  return GETSOCK_WRITESOCK(0);
-}
-
-static int domore_getsock(struct connectdata *conn,
-                          curl_socket_t *sock,
-                          int numsocks)
-{
-  if(!numsocks)
-    return GETSOCK_BLANK;
-
-  /* When in DO_MORE state, we could be either waiting for us
-     to connect to a remote site, or we could wait for that site
-     to connect to us. It makes a difference in the way: if we
-     connect to the site we wait for the socket to become writable, if
-     the site connects to us we wait for it to become readable */
-  sock[0] = conn->sock[SECONDARYSOCKET];
-
-  return GETSOCK_WRITESOCK(0);
-}
-
-/* returns bitmapped flags for this handle and its sockets */
-static int multi_getsock(struct Curl_one_easy *easy,
-                         curl_socket_t *socks, /* points to numsocks number
-                                                  of sockets */
-                         int numsocks)
-{
-  /* If the pipe broke, or if there's no connection left for this easy handle,
-     then we MUST bail out now with no bitmask set. The no connection case can
-     happen when this is called from curl_multi_remove_handle() =>
-     singlesocket() => multi_getsock().
-  */
-  if(easy->easy_handle->state.pipe_broke || !easy->easy_conn)
-    return 0;
-
-  if(easy->state > CURLM_STATE_CONNECT &&
-     easy->state < CURLM_STATE_COMPLETED) {
-    /* Set up ownership correctly */
-    easy->easy_conn->data = easy->easy_handle;
-  }
-
-  switch(easy->state) {
-  default:
-#if 0 /* switch back on these cases to get the compiler to check for all enums
-         to be present */
-  case CURLM_STATE_TOOFAST:  /* returns 0, so will not select. */
-  case CURLM_STATE_COMPLETED:
-  case CURLM_STATE_INIT:
-  case CURLM_STATE_CONNECT:
-  case CURLM_STATE_WAITDO:
-  case CURLM_STATE_DONE:
-  case CURLM_STATE_LAST:
-    /* this will get called with CURLM_STATE_COMPLETED when a handle is
-       removed */
-#endif
-    return 0;
-
-  case CURLM_STATE_WAITRESOLVE:
-    return Curl_resolv_getsock(easy->easy_conn, socks, numsocks);
-
-  case CURLM_STATE_PROTOCONNECT:
-    return Curl_protocol_getsock(easy->easy_conn, socks, numsocks);
-
-  case CURLM_STATE_DO:
-  case CURLM_STATE_DOING:
-    return Curl_doing_getsock(easy->easy_conn, socks, numsocks);
-
-  case CURLM_STATE_WAITPROXYCONNECT:
-  case CURLM_STATE_WAITCONNECT:
-    return waitconnect_getsock(easy->easy_conn, socks, numsocks);
-
-  case CURLM_STATE_DO_MORE:
-    return domore_getsock(easy->easy_conn, socks, numsocks);
-
-  case CURLM_STATE_DO_DONE: /* since is set after DO is completed, we switch
-                               to waiting for the same as the *PERFORM states */
-  case CURLM_STATE_PERFORM:
-  case CURLM_STATE_WAITPERFORM:
-    return Curl_single_getsock(easy->easy_conn, socks, numsocks);
-  }
-
-}
-
-CURLMcode curl_multi_fdset(CURLM *multi_handle,
-                           fd_set *read_fd_set, fd_set *write_fd_set,
-                           fd_set *exc_fd_set, int *max_fd)
-{
-  /* Scan through all the easy handles to get the file descriptors set.
-     Some easy handles may not have connected to the remote host yet,
-     and then we must make sure that is done. */
-  struct Curl_multi *multi=(struct Curl_multi *)multi_handle;
-  struct Curl_one_easy *easy;
-  int this_max_fd=-1;
-  curl_socket_t sockbunch[MAX_SOCKSPEREASYHANDLE];
-  int bitmap;
-  int i;
-  (void)exc_fd_set; /* not used */
-
-  if(!GOOD_MULTI_HANDLE(multi))
-    return CURLM_BAD_HANDLE;
-
-  easy=multi->easy.next;
-  while(easy != &multi->easy) {
-    bitmap = multi_getsock(easy, sockbunch, MAX_SOCKSPEREASYHANDLE);
-
-    for(i=0; i< MAX_SOCKSPEREASYHANDLE; i++) {
-      curl_socket_t s = CURL_SOCKET_BAD;
-
-      if(bitmap & GETSOCK_READSOCK(i)) {
-        FD_SET(sockbunch[i], read_fd_set);
-        s = sockbunch[i];
-      }
-      if(bitmap & GETSOCK_WRITESOCK(i)) {
-        FD_SET(sockbunch[i], write_fd_set);
-        s = sockbunch[i];
-      }
-      if(s == CURL_SOCKET_BAD)
-        /* this socket is unused, break out of loop */
-        break;
-      else {
-        if((int)s > this_max_fd)
-          this_max_fd = (int)s;
-      }
-    }
-
-    easy = easy->next; /* check next handle */
-  }
-
-  *max_fd = this_max_fd;
-
-  return CURLM_OK;
-}
-
-static CURLMcode multi_runsingle(struct Curl_multi *multi,
-                                 struct Curl_one_easy *easy)
-{
-  struct Curl_message *msg = NULL;
-  bool connected;
-  bool async;
-  bool protocol_connect = FALSE;
-  bool dophase_done;
-  bool done = FALSE;
-  CURLMcode result = CURLM_OK;
-  struct SingleRequest *k;
-
-  if(!GOOD_EASY_HANDLE(easy->easy_handle))
-    return CURLM_BAD_EASY_HANDLE;
-
-  do {
-    /* this is a do-while loop just to allow a break to skip to the end
-       of it */
-    bool disconnect_conn = FALSE;
-
-    /* Handle the case when the pipe breaks, i.e., the connection
-       we're using gets cleaned up and we're left with nothing. */
-    if(easy->easy_handle->state.pipe_broke) {
-      infof(easy->easy_handle, "Pipe broke: handle 0x%p, url = %s\n",
-            easy, easy->easy_handle->state.path);
-
-      if(easy->state != CURLM_STATE_COMPLETED) {
-        /* Head back to the CONNECT state */
-        multistate(easy, CURLM_STATE_CONNECT);
-        result = CURLM_CALL_MULTI_PERFORM;
-        easy->result = CURLE_OK;
-      }
-
-      easy->easy_handle->state.pipe_broke = FALSE;
-      easy->easy_conn = NULL;
-      break;
-    }
-
-    if(easy->easy_conn && easy->state > CURLM_STATE_CONNECT &&
-       easy->state < CURLM_STATE_COMPLETED)
-      /* Make sure we set the connection's current owner */
-      easy->easy_conn->data = easy->easy_handle;
-
-    switch(easy->state) {
-    case CURLM_STATE_INIT:
-      /* init this transfer. */
-      easy->result=Curl_pretransfer(easy->easy_handle);
-
-      if(CURLE_OK == easy->result) {
-        /* after init, go CONNECT */
-        multistate(easy, CURLM_STATE_CONNECT);
-        result = CURLM_CALL_MULTI_PERFORM;
-
-        easy->easy_handle->state.used_interface = Curl_if_multi;
-      }
-      break;
-
-    case CURLM_STATE_CONNECT:
-      /* Connect. We get a connection identifier filled in. */
-      Curl_pgrsTime(easy->easy_handle, TIMER_STARTSINGLE);
-      easy->result = Curl_connect(easy->easy_handle, &easy->easy_conn,
-                                  &async, &protocol_connect);
-
-      if(CURLE_OK == easy->result) {
-        /* Add this handle to the send or pend pipeline */
-        easy->result = addHandleToSendOrPendPipeline(easy->easy_handle,
-                                                     easy->easy_conn);
-        if(CURLE_OK == easy->result) {
-          if(async)
-            /* We're now waiting for an asynchronous name lookup */
-            multistate(easy, CURLM_STATE_WAITRESOLVE);
-          else {
-            /* after the connect has been sent off, go WAITCONNECT unless the
-               protocol connect is already done and we can go directly to
-               WAITDO or DO! */
-            result = CURLM_CALL_MULTI_PERFORM;
-
-            if(protocol_connect)
-              multistate(easy, multi->pipelining_enabled?
-                         CURLM_STATE_WAITDO:CURLM_STATE_DO);
-            else {
-#ifndef CURL_DISABLE_HTTP
-              if(easy->easy_conn->bits.tunnel_connecting)
-                multistate(easy, CURLM_STATE_WAITPROXYCONNECT);
-              else
-#endif
-                multistate(easy, CURLM_STATE_WAITCONNECT);
-            }
-          }
-        }
-      }
-      break;
-
-    case CURLM_STATE_WAITRESOLVE:
-      /* awaiting an asynch name resolve to complete */
-    {
-      struct Curl_dns_entry *dns = NULL;
-
-      /* check if we have the name resolved by now */
-      easy->result = Curl_is_resolved(easy->easy_conn, &dns);
-
-      if(dns) {
-        /* Update sockets here. Mainly because the socket(s) may have been
-           closed and the application thus needs to be told, even if it is
-           likely that the same socket(s) will again be used further down. */
-        singlesocket(multi, easy);
-
-        /* Perform the next step in the connection phase, and then move on
-           to the WAITCONNECT state */
-        easy->result = Curl_async_resolved(easy->easy_conn,
-                                           &protocol_connect);
-
-        if(CURLE_OK != easy->result)
-          /* if Curl_async_resolved() returns failure, the connection struct
-             is already freed and gone */
-          easy->easy_conn = NULL;           /* no more connection */
-        else {
-          /* call again please so that we get the next socket setup */
-          result = CURLM_CALL_MULTI_PERFORM;
-          if(protocol_connect)
-            multistate(easy, multi->pipelining_enabled?
-                       CURLM_STATE_WAITDO:CURLM_STATE_DO);
-          else {
-#ifndef CURL_DISABLE_HTTP
-            if(easy->easy_conn->bits.tunnel_connecting)
-              multistate(easy, CURLM_STATE_WAITPROXYCONNECT);
-            else
-#endif
-              multistate(easy, CURLM_STATE_WAITCONNECT);
-          }
-        }
-      }
-
-      if(CURLE_OK != easy->result) {
-        /* failure detected */
-        disconnect_conn = TRUE;
-        break;
-      }
-    }
-    break;
-
-#ifndef CURL_DISABLE_HTTP
-    case CURLM_STATE_WAITPROXYCONNECT:
-      /* this is HTTP-specific, but sending CONNECT to a proxy is HTTP... */
-      easy->result = Curl_http_connect(easy->easy_conn, &protocol_connect);
-
-      if(easy->easy_conn->bits.proxy_connect_closed) {
-        /* reset the error buffer */
-        if(easy->easy_handle->set.errorbuffer)
-          easy->easy_handle->set.errorbuffer[0] = '\0';
-        easy->easy_handle->state.errorbuf = FALSE;
-
-        easy->result = CURLE_OK;
-        result = CURLM_CALL_MULTI_PERFORM;
-        multistate(easy, CURLM_STATE_CONNECT);
-      }
-      else if (CURLE_OK == easy->result) {
-        if(!easy->easy_conn->bits.tunnel_connecting)
-          multistate(easy, CURLM_STATE_WAITCONNECT);
-      }
-      break;
-#endif
-
-    case CURLM_STATE_WAITCONNECT:
-      /* awaiting a completion of an asynch connect */
-      easy->result = Curl_is_connected(easy->easy_conn,
-                                       FIRSTSOCKET,
-                                       &connected);
-      if(connected) {
-        /* see if we need to do any proxy magic first once we connected */
-        easy->result = Curl_connected_proxy(easy->easy_conn);
-
-        if(!easy->result)
-          /* if everything is still fine we do the protocol-specific connect
-             setup */
-          easy->result = Curl_protocol_connect(easy->easy_conn,
-                                               &protocol_connect);
-      }
-
-      if(CURLE_OK != easy->result) {
-        /* failure detected */
-        /* Just break, the cleaning up is handled all in one place */
-        disconnect_conn = TRUE;
-        break;
-      }
-
-      if(connected) {
-        if(!protocol_connect) {
-          /* We have a TCP connection, but 'protocol_connect' may be false
-             and then we continue to 'STATE_PROTOCONNECT'. If protocol
-             connect is TRUE, we move on to STATE_DO.
-             BUT if we are using a proxy we must change to WAITPROXYCONNECT
-          */
-#ifndef CURL_DISABLE_HTTP
-          if(easy->easy_conn->bits.tunnel_connecting)
-            multistate(easy, CURLM_STATE_WAITPROXYCONNECT);
-          else
-#endif
-            multistate(easy, CURLM_STATE_PROTOCONNECT);
-
-        }
-        else
-          /* after the connect has completed, go WAITDO or DO */
-          multistate(easy, multi->pipelining_enabled?
-                     CURLM_STATE_WAITDO:CURLM_STATE_DO);
-
-        result = CURLM_CALL_MULTI_PERFORM;
-      }
-      break;
-
-    case CURLM_STATE_PROTOCONNECT:
-      /* protocol-specific connect phase */
-      easy->result = Curl_protocol_connecting(easy->easy_conn,
-                                              &protocol_connect);
-      if((easy->result == CURLE_OK) && protocol_connect) {
-        /* after the connect has completed, go WAITDO or DO */
-        multistate(easy, multi->pipelining_enabled?
-                   CURLM_STATE_WAITDO:CURLM_STATE_DO);
-        result = CURLM_CALL_MULTI_PERFORM;
-      }
-      else if(easy->result) {
-        /* failure detected */
-        Curl_posttransfer(easy->easy_handle);
-        Curl_done(&easy->easy_conn, easy->result, FALSE);
-        disconnect_conn = TRUE;
-      }
-      break;
-
-    case CURLM_STATE_WAITDO:
-      /* Wait for our turn to DO when we're pipelining requests */
-#ifdef DEBUGBUILD
-      infof(easy->easy_handle, "Conn %ld send pipe %zu inuse %d athead %d\n",
-            easy->easy_conn->connectindex,
-            easy->easy_conn->send_pipe->size,
-            easy->easy_conn->writechannel_inuse?1:0,
-            isHandleAtHead(easy->easy_handle,
-                           easy->easy_conn->send_pipe)?1:0);
-#endif
-      if(!easy->easy_conn->writechannel_inuse &&
-         isHandleAtHead(easy->easy_handle,
-                        easy->easy_conn->send_pipe)) {
-        /* Grab the channel */
-        easy->easy_conn->writechannel_inuse = TRUE;
-        multistate(easy, CURLM_STATE_DO);
-        result = CURLM_CALL_MULTI_PERFORM;
-      }
-      break;
-
-    case CURLM_STATE_DO:
-      if(easy->easy_handle->set.connect_only) {
-        /* keep connection open for application to use the socket */
-        easy->easy_conn->bits.close = FALSE;
-        multistate(easy, CURLM_STATE_DONE);
-        easy->result = CURLE_OK;
-        result = CURLM_OK;
-      }
-      else {
-        /* Perform the protocol's DO action */
-        easy->result = Curl_do(&easy->easy_conn,
-                               &dophase_done);
-
-        if(CURLE_OK == easy->result) {
-          if(!dophase_done) {
-            /* DO was not completed in one function call, we must continue
-               DOING... */
-            multistate(easy, CURLM_STATE_DOING);
-            result = CURLM_OK;
-          }
-
-          /* after DO, go DO_DONE... or DO_MORE */
-          else if(easy->easy_conn->bits.do_more) {
-            /* we're supposed to do more, but we need to sit down, relax
-               and wait a little while first */
-            multistate(easy, CURLM_STATE_DO_MORE);
-            result = CURLM_OK;
-          }
-          else {
-            /* we're done with the DO, now DO_DONE */
-            multistate(easy, CURLM_STATE_DO_DONE);
-            result = CURLM_CALL_MULTI_PERFORM;
-          }
-        }
-        else if ((CURLE_SEND_ERROR == easy->result) &&
-                 easy->easy_conn->bits.reuse) {
-          /*
-           * In this situation, a connection that we were trying to use
-           * may have unexpectedly died.  If possible, send the connection
-           * back to the CONNECT phase so we can try again.
-           */
-          char *newurl = NULL;
-          followtype follow=FOLLOW_NONE;
-          CURLcode drc;
-          bool retry = FALSE;
-
-          drc = Curl_retry_request(easy->easy_conn, &newurl);
-          if(drc) {
-            /* a failure here pretty much implies an out of memory */
-            easy->result = drc;
-            disconnect_conn = TRUE;
-          }
-          else
-            retry = (bool)(newurl?TRUE:FALSE);
-
-          Curl_posttransfer(easy->easy_handle);
-          drc = Curl_done(&easy->easy_conn, easy->result, FALSE);
-
-          /* When set to retry the connection, we must to go back to
-           * the CONNECT state */
-          if(retry) {
-            if ((drc == CURLE_OK) || (drc == CURLE_SEND_ERROR)) {
-              follow = FOLLOW_RETRY;
-              drc = Curl_follow(easy->easy_handle, newurl, follow);
-              if(drc == CURLE_OK) {
-                multistate(easy, CURLM_STATE_CONNECT);
-                result = CURLM_CALL_MULTI_PERFORM;
-                easy->result = CURLE_OK;
-              }
-              else {
-                /* Follow failed */
-                easy->result = drc;
-                free(newurl);
-              }
-            }
-            else {
-              /* done didn't return OK or SEND_ERROR */
-              easy->result = drc;
-              free(newurl);
-            }
-          }
-          else {
-            /* Have error handler disconnect conn if we can't retry */
-            disconnect_conn = TRUE;
-          }
-        }
-        else {
-          /* failure detected */
-          Curl_posttransfer(easy->easy_handle);
-          Curl_done(&easy->easy_conn, easy->result, FALSE);
-          disconnect_conn = TRUE;
-        }
-      }
-      break;
-
-    case CURLM_STATE_DOING:
-      /* we continue DOING until the DO phase is complete */
-      easy->result = Curl_protocol_doing(easy->easy_conn,
-                                         &dophase_done);
-      if(CURLE_OK == easy->result) {
-        if(dophase_done) {
-          /* after DO, go PERFORM... or DO_MORE */
-          if(easy->easy_conn->bits.do_more) {
-            /* we're supposed to do more, but we need to sit down, relax
-               and wait a little while first */
-            multistate(easy, CURLM_STATE_DO_MORE);
-            result = CURLM_OK;
-          }
-          else {
-            /* we're done with the DO, now DO_DONE */
-            multistate(easy, CURLM_STATE_DO_DONE);
-            result = CURLM_CALL_MULTI_PERFORM;
-          }
-        } /* dophase_done */
-      }
-      else {
-        /* failure detected */
-        Curl_posttransfer(easy->easy_handle);
-        Curl_done(&easy->easy_conn, easy->result, FALSE);
-        disconnect_conn = TRUE;
-      }
-      break;
-
-    case CURLM_STATE_DO_MORE:
-      /* Ready to do more? */
-      easy->result = Curl_is_connected(easy->easy_conn,
-                                       SECONDARYSOCKET,
-                                       &connected);
-      if(connected) {
-        /*
-         * When we are connected, DO MORE and then go DO_DONE
-         */
-        easy->result = Curl_do_more(easy->easy_conn);
-
-        /* No need to remove ourselves from the send pipeline here since that
-           is done for us in Curl_done() */
-
-        if(CURLE_OK == easy->result) {
-          multistate(easy, CURLM_STATE_DO_DONE);
-          result = CURLM_CALL_MULTI_PERFORM;
-        }
-        else {
-          /* failure detected */
-          Curl_posttransfer(easy->easy_handle);
-          Curl_done(&easy->easy_conn, easy->result, FALSE);
-          disconnect_conn = TRUE;
-        }
-      }
-      break;
-
-    case CURLM_STATE_DO_DONE:
-      /* Move ourselves from the send to recv pipeline */
-      moveHandleFromSendToRecvPipeline(easy->easy_handle, easy->easy_conn);
-      /* Check if we can move pending requests to send pipe */
-      checkPendPipeline(easy->easy_conn);
-      multistate(easy, CURLM_STATE_WAITPERFORM);
-      result = CURLM_CALL_MULTI_PERFORM;
-      break;
-
-    case CURLM_STATE_WAITPERFORM:
-      /* Wait for our turn to PERFORM */
-      if(!easy->easy_conn->readchannel_inuse &&
-         isHandleAtHead(easy->easy_handle,
-                        easy->easy_conn->recv_pipe)) {
-        /* Grab the channel */
-        easy->easy_conn->readchannel_inuse = TRUE;
-        multistate(easy, CURLM_STATE_PERFORM);
-        result = CURLM_CALL_MULTI_PERFORM;
-      }
-#ifdef DEBUGBUILD
-      else {
-        infof(easy->easy_handle, "Conn %ld recv pipe %zu inuse %d athead %d\n",
-              easy->easy_conn->connectindex,
-              easy->easy_conn->recv_pipe->size,
-              easy->easy_conn->readchannel_inuse?1:0,
-              isHandleAtHead(easy->easy_handle,
-                             easy->easy_conn->recv_pipe)?1:0);
-      }
-#endif
-      break;
-
-    case CURLM_STATE_TOOFAST: /* limit-rate exceeded in either direction */
-      /* if both rates are within spec, resume transfer */
-      Curl_pgrsUpdate(easy->easy_conn);
-      if( ( ( easy->easy_handle->set.max_send_speed == 0 ) ||
-            ( easy->easy_handle->progress.ulspeed <
-              easy->easy_handle->set.max_send_speed ) )  &&
-          ( ( easy->easy_handle->set.max_recv_speed == 0 ) ||
-            ( easy->easy_handle->progress.dlspeed <
-              easy->easy_handle->set.max_recv_speed ) )
-        )
-        multistate(easy, CURLM_STATE_PERFORM);
-      break;
-
-    case CURLM_STATE_PERFORM:
-      /* check if over speed */
-      if( (  ( easy->easy_handle->set.max_send_speed > 0 ) &&
-             ( easy->easy_handle->progress.ulspeed >
-               easy->easy_handle->set.max_send_speed ) )  ||
-          (  ( easy->easy_handle->set.max_recv_speed > 0 ) &&
-             ( easy->easy_handle->progress.dlspeed >
-               easy->easy_handle->set.max_recv_speed ) )
-        ) {
-        /* Transfer is over the speed limit. Change state.  TODO: Call
-         * Curl_expire() with the time left until we're targeted to be below
-         * the speed limit again. */
-        multistate(easy, CURLM_STATE_TOOFAST );
-        break;
-      }
-
-      /* read/write data if it is ready to do so */
-      easy->result = Curl_readwrite(easy->easy_conn, &done);
-
-      k = &easy->easy_handle->req;
-
-      if(!(k->keepon & KEEP_RECV)) {
-        /* We're done receiving */
-        easy->easy_conn->readchannel_inuse = FALSE;
-      }
-
-      if(!(k->keepon & KEEP_SEND)) {
-        /* We're done sending */
-        easy->easy_conn->writechannel_inuse = FALSE;
-      }
-
-      if(easy->result)  {
-        /* The transfer phase returned error, we mark the connection to get
-         * closed to prevent being re-used. This is because we can't possibly
-         * know if the connection is in a good shape or not now.  Unless it is
-         * a protocol which uses two "channels" like FTP, as then the error
-         * happened in the data connection.
-         */
-        if(!(easy->easy_conn->protocol & PROT_DUALCHANNEL))
-          easy->easy_conn->bits.close = TRUE;
-
-        Curl_posttransfer(easy->easy_handle);
-        Curl_done(&easy->easy_conn, easy->result, FALSE);
-      }
-      else if(TRUE == done) {
-        char *newurl = NULL;
-        bool retry = FALSE;
-        followtype follow=FOLLOW_NONE;
-
-        easy->result = Curl_retry_request(easy->easy_conn, &newurl);
-        if(!easy->result)
-          retry = (bool)(newurl?TRUE:FALSE);
-
-        /* call this even if the readwrite function returned error */
-        Curl_posttransfer(easy->easy_handle);
-
-        /* we're no longer receving */
-        moveHandleFromRecvToDonePipeline(easy->easy_handle,
-                                         easy->easy_conn);
-
-        /* expire the new receiving pipeline head */
-        if(easy->easy_conn->recv_pipe->head)
-          Curl_expire(easy->easy_conn->recv_pipe->head->ptr, 1);
-
-        /* Check if we can move pending requests to send pipe */
-        checkPendPipeline(easy->easy_conn);
-
-        /* When we follow redirects or is set to retry the connection, we must
-           to go back to the CONNECT state */
-        if(easy->easy_handle->req.newurl || retry) {
-          if(!retry) {
-            /* if the URL is a follow-location and not just a retried request
-               then figure out the URL here */
-            newurl = easy->easy_handle->req.newurl;
-            easy->easy_handle->req.newurl = NULL;
-            follow = FOLLOW_REDIR;
-          }
-          else
-            follow = FOLLOW_RETRY;
-          easy->result = Curl_done(&easy->easy_conn, CURLE_OK, FALSE);
-          if(easy->result == CURLE_OK)
-            easy->result = Curl_follow(easy->easy_handle, newurl, follow);
-          if(CURLE_OK == easy->result) {
-            multistate(easy, CURLM_STATE_CONNECT);
-            result = CURLM_CALL_MULTI_PERFORM;
-          }
-          else if(newurl)
-            /* Since we "took it", we are in charge of freeing this on
-               failure */
-            free(newurl);
-        }
-        else {
-          /* after the transfer is done, go DONE */
-
-          /* but first check to see if we got a location info even though we're
-             not following redirects */
-          if (easy->easy_handle->req.location) {
-            newurl = easy->easy_handle->req.location;
-            easy->easy_handle->req.location = NULL;
-            easy->result = Curl_follow(easy->easy_handle, newurl, FOLLOW_FAKE);
-            if (easy->result)
-              free(newurl);
-          }
-
-          multistate(easy, CURLM_STATE_DONE);
-          result = CURLM_CALL_MULTI_PERFORM;
-        }
-      }
-
-      break;
-
-    case CURLM_STATE_DONE:
-
-      if(easy->easy_conn) {
-        /* Remove ourselves from the receive and done pipelines. Handle
-           should be on one of these lists, depending upon how we got here. */
-        Curl_removeHandleFromPipeline(easy->easy_handle,
-                                      easy->easy_conn->recv_pipe);
-        Curl_removeHandleFromPipeline(easy->easy_handle,
-                                      easy->easy_conn->done_pipe);
-        /* Check if we can move pending requests to send pipe */
-        checkPendPipeline(easy->easy_conn);
-
-        if(easy->easy_conn->bits.stream_was_rewound) {
-          /* This request read past its response boundary so we quickly let
-             the other requests consume those bytes since there is no
-             guarantee that the socket will become active again */
-          result = CURLM_CALL_MULTI_PERFORM;
-        }
-
-        /* post-transfer command */
-        easy->result = Curl_done(&easy->easy_conn, CURLE_OK, FALSE);
-        /*
-         * If there are other handles on the pipeline, Curl_done won't set
-         * easy_conn to NULL.  In such a case, curl_multi_remove_handle() can
-         * access free'd data, if the connection is free'd and the handle
-         * removed before we perform the processing in CURLM_STATE_COMPLETED
-         */
-        if (easy->easy_conn)
-          easy->easy_conn = NULL;
-      }
-
-      /* after we have DONE what we're supposed to do, go COMPLETED, and
-         it doesn't matter what the Curl_done() returned! */
-      multistate(easy, CURLM_STATE_COMPLETED);
-
-      break;
-
-    case CURLM_STATE_COMPLETED:
-      /* this is a completed transfer, it is likely to still be connected */
-
-      /* This node should be delinked from the list now and we should post
-         an information message that we are complete. */
-
-      /* Important: reset the conn pointer so that we don't point to memory
-         that could be freed anytime */
-      easy->easy_conn = NULL;
-      break;
-
-    default:
-      return CURLM_INTERNAL_ERROR;
-    }
-
-    if(CURLM_STATE_COMPLETED != easy->state) {
-      if(CURLE_OK != easy->result) {
-        /*
-         * If an error was returned, and we aren't in completed state now,
-         * then we go to completed and consider this transfer aborted.
-         */
-
-        /* NOTE: no attempt to disconnect connections must be made
-           in the case blocks above - cleanup happens only here */
-
-        easy->easy_handle->state.pipe_broke = FALSE;
-
-        if(easy->easy_conn) {
-          /* if this has a connection, unsubscribe from the pipelines */
-          easy->easy_conn->writechannel_inuse = FALSE;
-          easy->easy_conn->readchannel_inuse = FALSE;
-          Curl_removeHandleFromPipeline(easy->easy_handle,
-                                        easy->easy_conn->send_pipe);
-          Curl_removeHandleFromPipeline(easy->easy_handle,
-                                        easy->easy_conn->recv_pipe);
-          Curl_removeHandleFromPipeline(easy->easy_handle,
-                                        easy->easy_conn->done_pipe);
-          /* Check if we can move pending requests to send pipe */
-          checkPendPipeline(easy->easy_conn);
-        }
-
-        if(disconnect_conn) {
-          Curl_disconnect(easy->easy_conn); /* disconnect properly */
-
-          /* This is where we make sure that the easy_conn pointer is reset.
-             We don't have to do this in every case block above where a
-             failure is detected */
-          easy->easy_conn = NULL;
-        }
-
-        multistate(easy, CURLM_STATE_COMPLETED);
-      }
-    }
-  } while(0);
-  if((CURLM_STATE_COMPLETED == easy->state) && !easy->msg) {
-    if(easy->easy_handle->dns.hostcachetype == HCACHE_MULTI) {
-      /* clear out the usage of the shared DNS cache */
-      easy->easy_handle->dns.hostcache = NULL;
-      easy->easy_handle->dns.hostcachetype = HCACHE_NONE;
-    }
-
-    /* now add a node to the Curl_message linked list with this info */
-    msg = malloc(sizeof(struct Curl_message));
-
-    if(!msg)
-      return CURLM_OUT_OF_MEMORY;
-
-    msg->extmsg.msg = CURLMSG_DONE;
-    msg->extmsg.easy_handle = easy->easy_handle;
-    msg->extmsg.data.result = easy->result;
-    msg->next = NULL;
-
-    easy->msg = msg;
-    easy->msg_num = 1; /* there is one unread message here */
-
-    multi->num_msgs++; /* increase message counter */
-  }
-
-  return result;
-}
-
-
-CURLMcode curl_multi_perform(CURLM *multi_handle, int *running_handles)
-{
-  struct Curl_multi *multi=(struct Curl_multi *)multi_handle;
-  struct Curl_one_easy *easy;
-  CURLMcode returncode=CURLM_OK;
-  struct Curl_tree *t;
-
-  if(!GOOD_MULTI_HANDLE(multi))
-    return CURLM_BAD_HANDLE;
-
-  easy=multi->easy.next;
-  while(easy != &multi->easy) {
-    CURLMcode result;
-
-    do
-      result = multi_runsingle(multi, easy);
-    while (CURLM_CALL_MULTI_PERFORM == result);
-
-    if(result)
-      returncode = result;
-
-    easy = easy->next; /* operate on next handle */
-  }
-
-  /*
-   * Simply remove all expired timers from the splay since handles are dealt
-   * with unconditionally by this function and curl_multi_timeout() requires
-   * that already passed/handled expire times are removed from the splay.
-   */
-  do {
-    struct timeval now = Curl_tvnow();
-
-    multi->timetree = Curl_splaygetbest(now, multi->timetree, &t);
-    if(t) {
-      struct SessionHandle *d = t->payload;
-      struct timeval* tv = &d->state.expiretime;
-
-      /* clear the expire times within the handles that we remove from the
-         splay tree */
-      tv->tv_sec = 0;
-      tv->tv_usec = 0;
-    }
-
-  } while(t);
-
-  *running_handles = multi->num_alive;
-
-  if( CURLM_OK >= returncode )
-    update_timer(multi);
-
-  return returncode;
-}
-
-/* This is called when an easy handle is cleanup'ed that is part of a multi
-   handle */
-void Curl_multi_rmeasy(void *multi_handle, CURL *easy_handle)
-{
-  curl_multi_remove_handle(multi_handle, easy_handle);
-}
-
-
-CURLMcode curl_multi_cleanup(CURLM *multi_handle)
-{
-  struct Curl_multi *multi=(struct Curl_multi *)multi_handle;
-  struct Curl_one_easy *easy;
-  struct Curl_one_easy *nexteasy;
-  int i;
-  struct closure *cl;
-  struct closure *n;
-
-  if(GOOD_MULTI_HANDLE(multi)) {
-    multi->type = 0; /* not good anymore */
-    Curl_hash_destroy(multi->hostcache);
-    Curl_hash_destroy(multi->sockhash);
-    multi->hostcache = NULL;
-    multi->sockhash = NULL;
-
-    /* go over all connections that have close actions */
-    for(i=0; i< multi->connc->num; i++) {
-      if(multi->connc->connects[i] &&
-         multi->connc->connects[i]->protocol & PROT_CLOSEACTION) {
-        Curl_disconnect(multi->connc->connects[i]);
-        multi->connc->connects[i] = NULL;
-      }
-    }
-    /* now walk through the list of handles we kept around only to be
-       able to close connections "properly" */
-    cl = multi->closure;
-    while(cl) {
-      cl->easy_handle->state.shared_conn = NULL; /* no more shared */
-      if(cl->easy_handle->state.closed)
-        /* close handle only if curl_easy_cleanup() already has been called
-           for this easy handle */
-        Curl_close(cl->easy_handle);
-      n = cl->next;
-      free(cl);
-      cl= n;
-    }
-
-    Curl_rm_connc(multi->connc);
-
-    /* remove all easy handles */
-    easy = multi->easy.next;
-    while(easy != &multi->easy) {
-      nexteasy=easy->next;
-      if(easy->easy_handle->dns.hostcachetype == HCACHE_MULTI) {
-        /* clear out the usage of the shared DNS cache */
-        easy->easy_handle->dns.hostcache = NULL;
-        easy->easy_handle->dns.hostcachetype = HCACHE_NONE;
-      }
-
-      /* Clear the pointer to the connection cache */
-      easy->easy_handle->state.connc = NULL;
-
-      Curl_easy_addmulti(easy->easy_handle, NULL); /* clear the association */
-
-      if(easy->msg)
-        free(easy->msg);
-      free(easy);
-      easy = nexteasy;
-    }
-
-    free(multi);
-
-    return CURLM_OK;
-  }
-  else
-    return CURLM_BAD_HANDLE;
-}
-
-CURLMsg *curl_multi_info_read(CURLM *multi_handle, int *msgs_in_queue)
-{
-  struct Curl_multi *multi=(struct Curl_multi *)multi_handle;
-
-  *msgs_in_queue = 0; /* default to none */
-
-  if(GOOD_MULTI_HANDLE(multi)) {
-    struct Curl_one_easy *easy;
-
-    if(!multi->num_msgs)
-      return NULL; /* no messages left to return */
-
-    easy=multi->easy.next;
-    while(easy != &multi->easy) {
-      if(easy->msg_num) {
-        easy->msg_num--;
-        break;
-      }
-      easy = easy->next;
-    }
-    if(!easy)
-      return NULL; /* this means internal count confusion really */
-
-    multi->num_msgs--;
-    *msgs_in_queue = multi->num_msgs;
-
-    return &easy->msg->extmsg;
-  }
-  else
-    return NULL;
-}
-
-/*
- * singlesocket() checks what sockets we deal with and their "action state"
- * and if we have a different state in any of those sockets from last time we
- * call the callback accordingly.
- */
-static void singlesocket(struct Curl_multi *multi,
-                         struct Curl_one_easy *easy)
-{
-  curl_socket_t socks[MAX_SOCKSPEREASYHANDLE];
-  int i;
-  struct Curl_sh_entry *entry;
-  curl_socket_t s;
-  int num;
-  unsigned int curraction;
-  struct Curl_one_easy *easy_by_hash;
-  bool remove_sock_from_hash;
-
-  for(i=0; i< MAX_SOCKSPEREASYHANDLE; i++)
-    socks[i] = CURL_SOCKET_BAD;
-
-  /* Fill in the 'current' struct with the state as it is now: what sockets to
-     supervise and for what actions */
-  curraction = multi_getsock(easy, socks, MAX_SOCKSPEREASYHANDLE);
-
-  /* We have 0 .. N sockets already and we get to know about the 0 .. M
-     sockets we should have from now on. Detect the differences, remove no
-     longer supervised ones and add new ones */
-
-  /* walk over the sockets we got right now */
-  for(i=0; (i< MAX_SOCKSPEREASYHANDLE) &&
-        (curraction & (GETSOCK_READSOCK(i) | GETSOCK_WRITESOCK(i)));
-      i++) {
-    int action = CURL_POLL_NONE;
-
-    s = socks[i];
-
-    /* get it from the hash */
-    entry = Curl_hash_pick(multi->sockhash, (char *)&s, sizeof(s));
-
-    if(curraction & GETSOCK_READSOCK(i))
-      action |= CURL_POLL_IN;
-    if(curraction & GETSOCK_WRITESOCK(i))
-      action |= CURL_POLL_OUT;
-
-    if(entry) {
-      /* yeps, already present so check if it has the same action set */
-      if(entry->action == action)
-        /* same, continue */
-        continue;
-    }
-    else {
-      /* this is a socket we didn't have before, add it! */
-      entry = sh_addentry(multi->sockhash, s, easy->easy_handle);
-      if(!entry)
-        /* fatal */
-        return;
-    }
-
-    multi->socket_cb(easy->easy_handle,
-                     s,
-                     action,
-                     multi->socket_userp,
-                     entry ? entry->socketp : NULL);
-
-    entry->action = action; /* store the current action state */
-  }
-
-  num = i; /* number of sockets */
-
-  /* when we've walked over all the sockets we should have right now, we must
-     make sure to detect sockets that are removed */
-  for(i=0; i< easy->numsocks; i++) {
-    int j;
-    s = easy->sockets[i];
-    for(j=0; j<num; j++) {
-      if(s == socks[j]) {
-        /* this is still supervised */
-        s = CURL_SOCKET_BAD;
-        break;
-      }
-    }
-    if(s != CURL_SOCKET_BAD) {
-
-      /* this socket has been removed. Tell the app to remove it */
-      remove_sock_from_hash = TRUE;
-
-      entry = Curl_hash_pick(multi->sockhash, (char *)&s, sizeof(s));
-      if(entry) {
-        /* check if the socket to be removed serves a connection which has
-           other easy-s in a pipeline. In this case the socket should not be
-           removed. */
-        struct connectdata *easy_conn;
-
-        easy_by_hash = entry->easy->multi_pos;
-        easy_conn = easy_by_hash->easy_conn;
-        if(easy_conn) {
-          if (easy_conn->recv_pipe && easy_conn->recv_pipe->size > 1) {
-            /* the handle should not be removed from the pipe yet */
-            remove_sock_from_hash = FALSE;
-
-            /* Update the sockhash entry to instead point to the next in line
-               for the recv_pipe, or the first (in case this particular easy
-               isn't already) */
-            if (entry->easy == easy->easy_handle) {
-              if (isHandleAtHead(easy->easy_handle, easy_conn->recv_pipe))
-                entry->easy = easy_conn->recv_pipe->head->next->ptr;
-              else
-                entry->easy = easy_conn->recv_pipe->head->ptr;
-            }
-          }
-          if (easy_conn->send_pipe  && easy_conn->send_pipe->size > 1) {
-            /* the handle should not be removed from the pipe yet */
-            remove_sock_from_hash = FALSE;
-
-            /* Update the sockhash entry to instead point to the next in line
-               for the send_pipe, or the first (in case this particular easy
-               isn't already) */
-            if (entry->easy == easy->easy_handle) {
-              if (isHandleAtHead(easy->easy_handle, easy_conn->send_pipe))
-                entry->easy = easy_conn->send_pipe->head->next->ptr;
-              else
-                entry->easy = easy_conn->send_pipe->head->ptr;
-            }
-          }
-          /* Don't worry about overwriting recv_pipe head with send_pipe_head,
-             when action will be asked on the socket (see multi_socket()), the
-             head of the correct pipe will be taken according to the
-             action. */
-        }
-      }
-      else
-        /* just a precaution, this socket really SHOULD be in the hash already
-           but in case it isn't, we don't have to tell the app to remove it
-           either since it never got to know about it */
-        remove_sock_from_hash = FALSE;
-
-      if (remove_sock_from_hash) {
-        multi->socket_cb(easy->easy_handle,
-                         s,
-                         CURL_POLL_REMOVE,
-                         multi->socket_userp,
-                         entry ? entry->socketp : NULL);
-        sh_delentry(multi->sockhash, s);
-      }
-
-    }
-  }
-
-  memcpy(easy->sockets, socks, num*sizeof(curl_socket_t));
-  easy->numsocks = num;
-}
-
-static CURLMcode multi_socket(struct Curl_multi *multi,
-                              bool checkall,
-                              curl_socket_t s,
-                              int ev_bitmask,
-                              int *running_handles)
-{
-  CURLMcode result = CURLM_OK;
-  struct SessionHandle *data = NULL;
-  struct Curl_tree *t;
-
-  if(checkall) {
-    struct Curl_one_easy *easyp;
-    /* *perform() deals with running_handles on its own */
-    result = curl_multi_perform(multi, running_handles);
-
-    /* walk through each easy handle and do the socket state change magic
-       and callbacks */
-    easyp=multi->easy.next;
-    while(easyp != &multi->easy) {
-      singlesocket(multi, easyp);
-      easyp = easyp->next;
-    }
-
-    /* or should we fall-through and do the timer-based stuff? */
-    return result;
-  }
-  else if(s != CURL_SOCKET_TIMEOUT) {
-
-    struct Curl_sh_entry *entry =
-      Curl_hash_pick(multi->sockhash, (char *)&s, sizeof(s));
-
-    if(!entry)
-      /* Unmatched socket, we can't act on it but we ignore this fact.  In
-         real-world tests it has been proved that libevent can in fact give
-         the application actions even though the socket was just previously
-         asked to get removed, so thus we better survive stray socket actions
-         and just move on. */
-      ;
-    else {
-      data = entry->easy;
-
-      if(data->magic != CURLEASY_MAGIC_NUMBER)
-        /* bad bad bad bad bad bad bad */
-        return CURLM_INTERNAL_ERROR;
-
-      /* If the pipeline is enabled, take the handle which is in the head of
-         the pipeline. If we should write into the socket, take the send_pipe
-         head.  If we should read from the socket, take the recv_pipe head. */
-      if(data->set.one_easy->easy_conn) {
-        if ((ev_bitmask & CURL_POLL_OUT) &&
-            data->set.one_easy->easy_conn->send_pipe &&
-            data->set.one_easy->easy_conn->send_pipe->head)
-          data = data->set.one_easy->easy_conn->send_pipe->head->ptr;
-        else if ((ev_bitmask & CURL_POLL_IN) &&
-                 data->set.one_easy->easy_conn->recv_pipe &&
-                 data->set.one_easy->easy_conn->recv_pipe->head)
-          data = data->set.one_easy->easy_conn->recv_pipe->head->ptr;
-      }
-
-      if(data->set.one_easy->easy_conn)  /* set socket event bitmask */
-        data->set.one_easy->easy_conn->cselect_bits = ev_bitmask;
-
-      do
-        result = multi_runsingle(multi, data->set.one_easy);
-      while (CURLM_CALL_MULTI_PERFORM == result);
-
-      if(data->set.one_easy->easy_conn)
-        data->set.one_easy->easy_conn->cselect_bits = 0;
-
-      if(CURLM_OK >= result)
-        /* get the socket(s) and check if the state has been changed since
-           last */
-        singlesocket(multi, data->set.one_easy);
-
-      /* Now we fall-through and do the timer-based stuff, since we don't want
-         to force the user to have to deal with timeouts as long as at least
-         one connection in fact has traffic. */
-
-      data = NULL; /* set data to NULL again to avoid calling
-                      multi_runsingle() in case there's no need to */
-    }
-  }
-
-  /*
-   * The loop following here will go on as long as there are expire-times left
-   * to process in the splay and 'data' will be re-assigned for every expired
-   * handle we deal with.
-   */
-  do {
-    struct timeval now;
-
-    /* the first loop lap 'data' can be NULL */
-    if(data) {
-      do
-        result = multi_runsingle(multi, data->set.one_easy);
-      while (CURLM_CALL_MULTI_PERFORM == result);
-
-      if(CURLM_OK >= result)
-        /* get the socket(s) and check if the state has been changed since
-           last */
-        singlesocket(multi, data->set.one_easy);
-    }
-
-    /* Check if there's one (more) expired timer to deal with! This function
-       extracts a matching node if there is one */
-
-    now = Curl_tvnow();
-    now.tv_usec += 1000; /* to compensate for the truncating of 999us to 0ms,
-                            we always add time here to make the comparison
-                            below better */
-
-    multi->timetree = Curl_splaygetbest(now, multi->timetree, &t);
-    if(t) {
-      /* assign 'data' to be the easy handle we just removed from the splay
-         tree */
-      data = t->payload;
-      /* clear the expire time within the handle we removed from the
-         splay tree */
-      data->state.expiretime.tv_sec = 0;
-      data->state.expiretime.tv_usec = 0;
-    }
-
-  } while(t);
-
-  *running_handles = multi->num_alive;
-  return result;
-}
-
-#undef curl_multi_setopt
-CURLMcode curl_multi_setopt(CURLM *multi_handle,
-                            CURLMoption option, ...)
-{
-  struct Curl_multi *multi=(struct Curl_multi *)multi_handle;
-  CURLMcode res = CURLM_OK;
-  va_list param;
-
-  if(!GOOD_MULTI_HANDLE(multi))
-    return CURLM_BAD_HANDLE;
-
-  va_start(param, option);
-
-  switch(option) {
-  case CURLMOPT_SOCKETFUNCTION:
-    multi->socket_cb = va_arg(param, curl_socket_callback);
-    break;
-  case CURLMOPT_SOCKETDATA:
-    multi->socket_userp = va_arg(param, void *);
-    break;
-  case CURLMOPT_PIPELINING:
-    multi->pipelining_enabled = (bool)(0 != va_arg(param, long));
-    break;
-  case CURLMOPT_TIMERFUNCTION:
-    multi->timer_cb = va_arg(param, curl_multi_timer_callback);
-    break;
-  case CURLMOPT_TIMERDATA:
-    multi->timer_userp = va_arg(param, void *);
-    break;
-  case CURLMOPT_MAXCONNECTS:
-    multi->maxconnects = va_arg(param, long);
-    break;
-  default:
-    res = CURLM_UNKNOWN_OPTION;
-    break;
-  }
-  va_end(param);
-  return res;
-}
-
-/* we define curl_multi_socket() in the public multi.h header */
-#undef curl_multi_socket
-
-CURLMcode curl_multi_socket(CURLM *multi_handle, curl_socket_t s,
-                            int *running_handles)
-{
-  CURLMcode result = multi_socket((struct Curl_multi *)multi_handle, FALSE, s,
-                                  0, running_handles);
-  if(CURLM_OK >= result)
-    update_timer((struct Curl_multi *)multi_handle);
-  return result;
-}
-
-CURLMcode curl_multi_socket_action(CURLM *multi_handle, curl_socket_t s,
-                                   int ev_bitmask, int *running_handles)
-{
-  CURLMcode result = multi_socket((struct Curl_multi *)multi_handle, FALSE, s,
-                                  ev_bitmask, running_handles);
-  if(CURLM_OK >= result)
-    update_timer((struct Curl_multi *)multi_handle);
-  return result;
-}
-
-CURLMcode curl_multi_socket_all(CURLM *multi_handle, int *running_handles)
-
-{
-  CURLMcode result = multi_socket((struct Curl_multi *)multi_handle,
-                                  TRUE, CURL_SOCKET_BAD, 0, running_handles);
-  if(CURLM_OK >= result)
-    update_timer((struct Curl_multi *)multi_handle);
-  return result;
-}
-
-static CURLMcode multi_timeout(struct Curl_multi *multi,
-                               long *timeout_ms)
-{
-  static struct timeval tv_zero = {0,0};
-
-  if(multi->timetree) {
-    /* we have a tree of expire times */
-    struct timeval now = Curl_tvnow();
-
-    /* splay the lowest to the bottom */
-    multi->timetree = Curl_splay(tv_zero, multi->timetree);
-
-    if(Curl_splaycomparekeys(multi->timetree->key, now) > 0) {
-      /* some time left before expiration */
-      *timeout_ms = curlx_tvdiff(multi->timetree->key, now);
-      if(!*timeout_ms)
-        /*
-         * Since we only provide millisecond resolution on the returned value
-         * and the diff might be less than one millisecond here, we don't
-         * return zero as that may cause short bursts of busyloops on fast
-         * processors while the diff is still present but less than one
-         * millisecond! instead we return 1 until the time is ripe.
-         */
-        *timeout_ms=1;
-    }
-    else
-      /* 0 means immediately */
-      *timeout_ms = 0;
-  }
-  else
-    *timeout_ms = -1;
-
-  return CURLM_OK;
-}
-
-CURLMcode curl_multi_timeout(CURLM *multi_handle,
-                             long *timeout_ms)
-{
-  struct Curl_multi *multi=(struct Curl_multi *)multi_handle;
-
-  /* First, make some basic checks that the CURLM handle is a good handle */
-  if(!GOOD_MULTI_HANDLE(multi))
-    return CURLM_BAD_HANDLE;
-
-  return multi_timeout(multi, timeout_ms);
-}
-
-/*
- * Tell the application it should update its timers, if it subscribes to the
- * update timer callback.
- */
-static int update_timer(struct Curl_multi *multi)
-{
-  long timeout_ms;
-  if(!multi->timer_cb)
-    return 0;
-  if( multi_timeout(multi, &timeout_ms) != CURLM_OK )
-    return -1;
-  if( timeout_ms < 0 )
-    return 0;
-
-  /* When multi_timeout() is done, multi->timetree points to the node with the
-   * timeout we got the (relative) time-out time for. We can thus easily check
-   * if this is the same (fixed) time as we got in a previous call and then
-   * avoid calling the callback again. */
-  if(Curl_splaycomparekeys(multi->timetree->key, multi->timer_lastcall) == 0)
-    return 0;
-
-  multi->timer_lastcall = multi->timetree->key;
-
-  return multi->timer_cb((CURLM*)multi, timeout_ms, multi->timer_userp);
-}
-
-static CURLcode addHandleToSendOrPendPipeline(struct SessionHandle *handle,
-                                              struct connectdata *conn)
-{
-  size_t pipeLen = conn->send_pipe->size + conn->recv_pipe->size;
-  struct curl_llist *pipeline;
-
-  if(!Curl_isPipeliningEnabled(handle) ||
-     pipeLen == 0)
-    pipeline = conn->send_pipe;
-  else {
-    if(conn->server_supports_pipelining &&
-       pipeLen < MAX_PIPELINE_LENGTH)
-      pipeline = conn->send_pipe;
-    else
-      pipeline = conn->pend_pipe;
-  }
-
-  return Curl_addHandleToPipeline(handle, pipeline);
-}
-
-static int checkPendPipeline(struct connectdata *conn)
-{
-  int result = 0;
-  struct curl_llist_element *sendhead = conn->send_pipe->head;
-
-  size_t pipeLen = conn->send_pipe->size + conn->recv_pipe->size;
-  if (conn->server_supports_pipelining || pipeLen == 0) {
-    struct curl_llist_element *curr = conn->pend_pipe->head;
-    const size_t maxPipeLen =
-      conn->server_supports_pipelining ? MAX_PIPELINE_LENGTH : 1;
-
-    while(pipeLen < maxPipeLen && curr) {
-      Curl_llist_move(conn->pend_pipe, curr,
-                      conn->send_pipe, conn->send_pipe->tail);
-      Curl_pgrsTime(curr->ptr, TIMER_PRETRANSFER);
-      ++result; /* count how many handles we moved */
-      curr = conn->pend_pipe->head;
-      ++pipeLen;
-    }
-  }
-
-  if (result) {
-    conn->now = Curl_tvnow();
-    /* something moved, check for a new send pipeline leader */
-    if(sendhead != conn->send_pipe->head) {
-      /* this is a new one as head, expire it */
-      conn->writechannel_inuse = FALSE; /* not in use yet */
-      infof(conn->data, "%p is at send pipe head!\n",
-            conn->send_pipe->head->ptr);
-      Curl_expire(conn->send_pipe->head->ptr, 1);
-    }
-  }
-
-  return result;
-}
-
-/* Move this transfer from the sending list to the receiving list.
-
-   Pay special attention to the new sending list "leader" as it needs to get
-   checked to update what sockets it acts on.
-
-*/
-static void moveHandleFromSendToRecvPipeline(struct SessionHandle *handle,
-                                             struct connectdata *conn)
-{
-  struct curl_llist_element *curr;
-
-  curr = conn->send_pipe->head;
-  while(curr) {
-    if(curr->ptr == handle) {
-      Curl_llist_move(conn->send_pipe, curr,
-                      conn->recv_pipe, conn->recv_pipe->tail);
-
-      if(conn->send_pipe->head) {
-        /* Since there's a new easy handle at the start of the send pipeline,
-           set its timeout value to 1ms to make it trigger instantly */
-        conn->writechannel_inuse = FALSE; /* not used now */
-        infof(conn->data, "%p is at send pipe head B!\n",
-              conn->send_pipe->head->ptr);
-        Curl_expire(conn->send_pipe->head->ptr, 1);
-      }
-
-      /* The receiver's list is not really interesting here since either this
-         handle is now first in the list and we'll deal with it soon, or
-         another handle is already first and thus is already taken care of */
-
-      break; /* we're done! */
-    }
-    curr = curr->next;
-  }
-}
-
-static void moveHandleFromRecvToDonePipeline(struct SessionHandle *handle,
-                                            struct connectdata *conn)
-{
-  struct curl_llist_element *curr;
-
-  curr = conn->recv_pipe->head;
-  while(curr) {
-    if(curr->ptr == handle) {
-      Curl_llist_move(conn->recv_pipe, curr,
-                      conn->done_pipe, conn->done_pipe->tail);
-      break;
-    }
-    curr = curr->next;
-  }
-}
-static bool isHandleAtHead(struct SessionHandle *handle,
-                           struct curl_llist *pipeline)
-{
-  struct curl_llist_element *curr = pipeline->head;
-  if(curr)
-    return (bool)(curr->ptr == handle);
-
-  return FALSE;
-}
-
-/* given a number of milliseconds from now to use to set the 'act before
-   this'-time for the transfer, to be extracted by curl_multi_timeout()
-
-   Pass zero to clear the timeout value for this handle.
-*/
-void Curl_expire(struct SessionHandle *data, long milli)
-{
-  struct Curl_multi *multi = data->multi;
-  struct timeval *nowp = &data->state.expiretime;
-  int rc;
-
-  /* this is only interesting for multi-interface using libcurl, and only
-     while there is still a multi interface struct remaining! */
-  if(!multi)
-    return;
-
-  if(!milli) {
-    /* No timeout, clear the time data. */
-    if(nowp->tv_sec || nowp->tv_usec) {
-      /* Since this is an cleared time, we must remove the previous entry from
-         the splay tree */
-      rc = Curl_splayremovebyaddr(multi->timetree,
-                                  &data->state.timenode,
-                                  &multi->timetree);
-      if(rc)
-        infof(data, "Internal error clearing splay node = %d\n", rc);
-      infof(data, "Expire cleared\n");
-      nowp->tv_sec = 0;
-      nowp->tv_usec = 0;
-    }
-  }
-  else {
-    struct timeval set;
-    int rest;
-
-    set = Curl_tvnow();
-    set.tv_sec += milli/1000;
-    set.tv_usec += (milli%1000)*1000;
-
-    rest = (int)(set.tv_usec - 1000000);
-    if(rest > 0) {
-      /* bigger than a full microsec */
-      set.tv_sec++;
-      set.tv_usec -= 1000000;
-    }
-
-    if(nowp->tv_sec || nowp->tv_usec) {
-      /* This means that the struct is added as a node in the splay tree.
-         Compare if the new time is earlier, and only remove-old/add-new if it
-         is. */
-      long diff = curlx_tvdiff(set, *nowp);
-      if(diff > 0)
-        /* the new expire time was later so we don't change this */
-        return;
-
-      /* Since this is an updated time, we must remove the previous entry from
-         the splay tree first and then re-add the new value */
-      rc = Curl_splayremovebyaddr(multi->timetree,
-                                  &data->state.timenode,
-                                  &multi->timetree);
-      if(rc)
-        infof(data, "Internal error removing splay node = %d\n", rc);
-    }
-
-    *nowp = set;
-#if 0
-    infof(data, "Expire at %ld / %ld (%ldms) %p\n",
-          (long)nowp->tv_sec, (long)nowp->tv_usec, milli, data);
-#endif
-    data->state.timenode.payload = data;
-    multi->timetree = Curl_splayinsert(*nowp,
-                                       multi->timetree,
-                                       &data->state.timenode);
-  }
-#if 0
-  Curl_splayprint(multi->timetree, 0, TRUE);
-#endif
-}
-
-CURLMcode curl_multi_assign(CURLM *multi_handle,
-                            curl_socket_t s, void *hashp)
-{
-  struct Curl_sh_entry *there = NULL;
-  struct Curl_multi *multi = (struct Curl_multi *)multi_handle;
-
-  if(s != CURL_SOCKET_BAD)
-    there = Curl_hash_pick(multi->sockhash, (char *)&s, sizeof(curl_socket_t));
-
-  if(!there)
-    return CURLM_BAD_SOCKET;
-
-  there->socketp = hashp;
-
-  return CURLM_OK;
-}
-
-static void multi_connc_remove_handle(struct Curl_multi *multi,
-                                      struct SessionHandle *data)
-{
-  /* a connection in the connection cache pointing to the given 'data' ? */
-  int i;
-
-  for(i=0; i< multi->connc->num; i++) {
-    struct connectdata * conn = multi->connc->connects[i];
-
-    if(conn && conn->data == data) {
-      /* If this easy_handle was the last one in charge for one or more
-         connections in the shared connection cache, we might need to keep
-         this handle around until either A) the connection is closed and
-         killed properly, or B) another easy_handle uses the connection.
-
-         The reason why we need to have a easy_handle associated with a live
-         connection is simply that some connections will need a handle to get
-         closed down properly. Currently, the only connections that need to
-         keep a easy_handle handle around are using FTP(S). Such connections
-         have the PROT_CLOSEACTION bit set.
-
-         Thus, we need to check for all connections in the shared cache that
-         points to this handle and are using PROT_CLOSEACTION. If there's any,
-         we need to add this handle to the list of "easy handles kept around
-         for nice connection closures".
-      */
-
-      if(conn->protocol & PROT_CLOSEACTION) {
-        /* this handle is still being used by a shared connection and
-           thus we leave it around for now */
-        if(add_closure(multi, data) == CURLM_OK)
-          data->state.shared_conn = multi;
-        else {
-          /* out of memory - so much for graceful shutdown */
-          Curl_disconnect(conn);
-          multi->connc->connects[i] = NULL;
-        }
-      }
-      else
-        /* disconect the easy handle from the connection since the connection
-           will now remain but this easy handle is going */
-        conn->data = NULL;
-    }
-  }
-}
-
-/* Add the given data pointer to the list of 'closure handles' that are kept
-   around only to be able to close some connections nicely - just make sure
-   that this handle isn't already added, like for the cases when an easy
-   handle is removed, added and removed again... */
-static CURLMcode add_closure(struct Curl_multi *multi,
-                             struct SessionHandle *data)
-{
-  struct closure *cl = multi->closure;
-  struct closure *p = NULL;
-  bool add = TRUE;
-
-  /* Before adding, scan through all the other currently kept handles and see
-     if there are any connections still referring to them and kill them if
-     not. */
-  while(cl) {
-    struct closure *n;
-    bool inuse = FALSE;
-    int i;
-
-    for(i=0; i< multi->connc->num; i++) {
-      if(multi->connc->connects[i] &&
-         (multi->connc->connects[i]->data == cl->easy_handle)) {
-        inuse = TRUE;
-        break;
-      }
-    }
-
-    n = cl->next;
-
-    if(!inuse) {
-      /* cl->easy_handle is now killable */
-
-      /* unmark it as not having a connection around that uses it anymore */
-      cl->easy_handle->state.shared_conn= NULL;
-
-      if(cl->easy_handle->state.closed) {
-        infof(data, "Delayed kill of easy handle %p\n", cl->easy_handle);
-        /* close handle only if curl_easy_cleanup() already has been called
-           for this easy handle */
-        Curl_close(cl->easy_handle);
-      }
-      if(p)
-        p->next = n;
-      else
-        multi->closure = n;
-      free(cl);
-    } else {
-      if(cl->easy_handle == data)
-        add = FALSE;
-
-      p = cl;
-    }
-
-    cl = n;
-  }
-
-  if (add) {
-    cl = calloc(1, sizeof(struct closure));
-    if(!cl)
-      return CURLM_OUT_OF_MEMORY;
-
-    cl->easy_handle = data;
-    cl->next = multi->closure;
-    multi->closure = cl;
-  }
-
-  return CURLM_OK;
-}
-
-#ifdef DEBUGBUILD
-void Curl_multi_dump(const struct Curl_multi *multi_handle)
-{
-  struct Curl_multi *multi=(struct Curl_multi *)multi_handle;
-  struct Curl_one_easy *easy;
-  int i;
-  fprintf(stderr, "* Multi status: %d handles, %d alive\n",
-          multi->num_easy, multi->num_alive);
-  for(easy=multi->easy.next; easy != &multi->easy; easy = easy->next) {
-    if(easy->state != CURLM_STATE_COMPLETED) {
-      /* only display handles that are not completed */
-      fprintf(stderr, "handle %p, state %s, %d sockets\n",
-              (void *)easy->easy_handle,
-              statename[easy->state], easy->numsocks);
-      for(i=0; i < easy->numsocks; i++) {
-        curl_socket_t s = easy->sockets[i];
-        struct Curl_sh_entry *entry =
-          Curl_hash_pick(multi->sockhash, (char *)&s, sizeof(s));
-
-        fprintf(stderr, "%d ", (int)s);
-        if(!entry) {
-          fprintf(stderr, "INTERNAL CONFUSION\n");
-          continue;
-        }
-        fprintf(stderr, "[%s %s] ",
-                entry->action&CURL_POLL_IN?"RECVING":"",
-                entry->action&CURL_POLL_OUT?"SENDING":"");
-      }
-      if(easy->numsocks)
-        fprintf(stderr, "\n");
-    }
-  }
-}
-#endif
diff --git a/src/other/curl/lib/multiif.h b/src/other/curl/lib/multiif.h
deleted file mode 100644
index 798544e..0000000
--- a/src/other/curl/lib/multiif.h
+++ /dev/null
@@ -1,55 +0,0 @@
-#ifndef __MULTIIF_H
-#define __MULTIIF_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * Prototypes for library-wide functions provided by multi.c
- */
-void Curl_expire(struct SessionHandle *data, long milli);
-
-void Curl_multi_rmeasy(void *multi, CURL *data);
-
-bool Curl_multi_canPipeline(const struct Curl_multi* multi);
-void Curl_multi_handlePipeBreak(struct SessionHandle *data);
-
-/* the write bits start at bit 16 for the *getsock() bitmap */
-#define GETSOCK_WRITEBITSTART 16
-
-#define GETSOCK_BLANK 0 /* no bits set */
-
-/* set the bit for the given sock number to make the bitmap for writable */
-#define GETSOCK_WRITESOCK(x) (1 << (GETSOCK_WRITEBITSTART + (x)))
-
-/* set the bit for the given sock number to make the bitmap for readable */
-#define GETSOCK_READSOCK(x) (1 << (x))
-
-#ifdef DEBUGBUILD
- /*
-  * Curl_multi_dump is not a stable public function, this is only meant to
-  * allow easier tracking of the internal handle's state and what sockets
-  * they use. Only for research and development DEBUGBUILD enabled builds.
-  */
-void Curl_multi_dump(const struct Curl_multi *multi_handle);
-#endif
-
-#endif /* __MULTIIF_H */
diff --git a/src/other/curl/lib/netrc.c b/src/other/curl/lib/netrc.c
deleted file mode 100644
index e944325..0000000
--- a/src/other/curl/lib/netrc.c
+++ /dev/null
@@ -1,245 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_PWD_H
-#include <pwd.h>
-#endif
-#ifdef __VMS
-#include <unixlib.h>
-#endif
-
-#include <curl/curl.h>
-#include "netrc.h"
-
-#include "strequal.h"
-#include "strtok.h"
-#include "curl_memory.h"
-#include "rawstr.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/* Debug this single source file with:
-   'make netrc' then run './netrc'!
-
-   Oh, make sure you have a .netrc file too ;-)
- */
-
-/* Get user and password from .netrc when given a machine name */
-
-enum {
-  NOTHING,
-  HOSTFOUND,    /* the 'machine' keyword was found */
-  HOSTCOMPLETE, /* the machine name following the keyword was found too */
-  HOSTVALID,    /* this is "our" machine! */
-
-  HOSTEND /* LAST enum */
-};
-
-/* make sure we have room for at least this size: */
-#define LOGINSIZE 64
-#define PASSWORDSIZE 64
-
-/* returns -1 on failure, 0 if the host is found, 1 is the host isn't found */
-int Curl_parsenetrc(const char *host,
-                    char *login,
-                    char *password,
-                    char *netrcfile)
-{
-  FILE *file;
-  int retcode=1;
-  int specific_login = (login[0] != 0);
-  char *home = NULL;
-  bool home_alloc = FALSE;
-  bool netrc_alloc = FALSE;
-  int state=NOTHING;
-
-  char state_login=0;      /* Found a login keyword */
-  char state_password=0;   /* Found a password keyword */
-  int state_our_login=FALSE;  /* With specific_login, found *our* login name */
-
-#define NETRC DOT_CHAR "netrc"
-
-#ifdef DEBUGBUILD
-  {
-    /* This is a hack to allow testing.
-     * If compiled with --enable-debug and CURL_DEBUG_NETRC is defined,
-     * then it's the path to a substitute .netrc for testing purposes *only* */
-
-    char *override = curl_getenv("CURL_DEBUG_NETRC");
-
-    if(override) {
-      fprintf(stderr, "NETRC: overridden " NETRC " file: %s\n", override);
-      netrcfile = override;
-      netrc_alloc = TRUE;
-    }
-  }
-#endif /* DEBUGBUILD */
-  if(!netrcfile) {
-    home = curl_getenv("HOME"); /* portable environment reader */
-    if(home) {
-      home_alloc = TRUE;
-#if defined(HAVE_GETPWUID) && defined(HAVE_GETEUID)
-    }
-    else {
-      struct passwd *pw;
-      pw= getpwuid(geteuid());
-      if(pw) {
-#ifdef __VMS
-        home = decc_translate_vms(pw->pw_dir);
-#else
-        home = pw->pw_dir;
-#endif
-      }
-#endif
-    }
-
-    if(!home)
-      return -1;
-
-    netrcfile = curl_maprintf("%s%s%s", home, DIR_CHAR, NETRC);
-    if(!netrcfile) {
-      if(home_alloc)
-        free(home);
-      return -1;
-    }
-    netrc_alloc = TRUE;
-  }
-
-  file = fopen(netrcfile, "r");
-  if(file) {
-    char *tok;
-    char *tok_buf;
-    bool done=FALSE;
-    char netrcbuffer[256];
-    int  netrcbuffsize = (int)sizeof(netrcbuffer);
-
-    while(!done && fgets(netrcbuffer, netrcbuffsize, file)) {
-      tok=strtok_r(netrcbuffer, " \t\n", &tok_buf);
-      while(!done && tok) {
-
-        if(login[0] && password[0]) {
-          done=TRUE;
-          break;
-        }
-
-        switch(state) {
-        case NOTHING:
-          if(Curl_raw_equal("machine", tok)) {
-            /* the next tok is the machine name, this is in itself the
-               delimiter that starts the stuff entered for this machine,
-               after this we need to search for 'login' and
-               'password'. */
-            state=HOSTFOUND;
-          }
-          break;
-        case HOSTFOUND:
-          if(Curl_raw_equal(host, tok)) {
-            /* and yes, this is our host! */
-            state=HOSTVALID;
-#ifdef _NETRC_DEBUG
-            fprintf(stderr, "HOST: %s\n", tok);
-#endif
-            retcode=0; /* we did find our host */
-          }
-          else
-            /* not our host */
-            state=NOTHING;
-          break;
-        case HOSTVALID:
-          /* we are now parsing sub-keywords concerning "our" host */
-          if(state_login) {
-            if(specific_login) {
-              state_our_login = Curl_raw_equal(login, tok);
-            }
-            else {
-              strncpy(login, tok, LOGINSIZE-1);
-#ifdef _NETRC_DEBUG
-              fprintf(stderr, "LOGIN: %s\n", login);
-#endif
-            }
-            state_login=0;
-          }
-          else if(state_password) {
-            if(state_our_login || !specific_login) {
-              strncpy(password, tok, PASSWORDSIZE-1);
-#ifdef _NETRC_DEBUG
-              fprintf(stderr, "PASSWORD: %s\n", password);
-#endif
-            }
-            state_password=0;
-          }
-          else if(Curl_raw_equal("login", tok))
-            state_login=1;
-          else if(Curl_raw_equal("password", tok))
-            state_password=1;
-          else if(Curl_raw_equal("machine", tok)) {
-            /* ok, there's machine here go => */
-            state = HOSTFOUND;
-            state_our_login = FALSE;
-          }
-          break;
-        } /* switch (state) */
-
-        tok = strtok_r(NULL, " \t\n", &tok_buf);
-      } /* while(tok) */
-    } /* while fgets() */
-
-    fclose(file);
-  }
-
-  if(home_alloc)
-    free(home);
-  if(netrc_alloc)
-    free(netrcfile);
-
-  return retcode;
-}
-
-#ifdef _NETRC_DEBUG
-int main(int argc, argv_item_t argv[])
-{
-  char login[64]="";
-  char password[64]="";
-
-  if(argc<2)
-    return -1;
-
-  if(0 == ParseNetrc(argv[1], login, password)) {
-    printf("HOST: %s LOGIN: %s PASSWORD: %s\n",
-           argv[1], login, password);
-  }
-}
-
-#endif
diff --git a/src/other/curl/lib/netrc.h b/src/other/curl/lib/netrc.h
deleted file mode 100644
index 5406d4c..0000000
--- a/src/other/curl/lib/netrc.h
+++ /dev/null
@@ -1,34 +0,0 @@
-#ifndef HEADER_CURL_NETRC_H
-#define HEADER_CURL_NETRC_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-int Curl_parsenetrc(const char *host,
-                    char *login,
-                    char *password,
-                    char *filename);
-  /* Assume: password[0]=0, host[0] != 0.
-   * If login[0] = 0, search for login and password within a machine section
-   * in the netrc.
-   * If login[0] != 0, search for password within machine and login.
-   */
-
-#endif /* HEADER_CURL_NETRC_H */
diff --git a/src/other/curl/lib/nonblock.c b/src/other/curl/lib/nonblock.c
deleted file mode 100644
index cd81950..0000000
--- a/src/other/curl/lib/nonblock.c
+++ /dev/null
@@ -1,101 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_FCNTL_H
-#include <fcntl.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-
-#if (defined(HAVE_IOCTL_FIONBIO) && defined(NETWARE))
-#include <sys/filio.h>
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#endif
-
-#include "nonblock.h"
-
-/*
- * curlx_nonblock() set the given socket to either blocking or non-blocking
- * mode based on the 'nonblock' boolean argument. This function is highly
- * portable.
- */
-int curlx_nonblock(curl_socket_t sockfd,    /* operate on this */
-                   int nonblock   /* TRUE or FALSE */)
-{
-#if defined(USE_BLOCKING_SOCKETS)
-
-  return 0; /* returns success */
-
-#elif defined(HAVE_FCNTL_O_NONBLOCK)
-
-  /* most recent unix versions */
-  int flags;
-  flags = fcntl(sockfd, F_GETFL, 0);
-  if(FALSE != nonblock)
-    return fcntl(sockfd, F_SETFL, flags | O_NONBLOCK);
-  else
-    return fcntl(sockfd, F_SETFL, flags & (~O_NONBLOCK));
-
-#elif defined(HAVE_IOCTL_FIONBIO)
-
-  /* older unix versions */
-  int flags;
-  flags = nonblock;
-  return ioctl(sockfd, FIONBIO, &flags);
-
-#elif defined(HAVE_IOCTLSOCKET_FIONBIO)
-
-  /* Windows */
-  unsigned long flags;
-  flags = nonblock;
-  return ioctlsocket(sockfd, FIONBIO, &flags);
-
-#elif defined(HAVE_IOCTLSOCKET_CAMEL_FIONBIO)
-
-  /* Amiga */
-  return IoctlSocket(sockfd, FIONBIO, (long)nonblock);
-
-#elif defined(HAVE_SETSOCKOPT_SO_NONBLOCK)
-
-  /* BeOS */
-  long b = nonblock ? 1 : 0;
-  return setsockopt(sockfd, SOL_SOCKET, SO_NONBLOCK, &b, sizeof(b));
-
-#else
-#  error "no non-blocking method was found/used/set"
-#endif
-}
diff --git a/src/other/curl/lib/nonblock.h b/src/other/curl/lib/nonblock.h
deleted file mode 100644
index adcd2c1..0000000
--- a/src/other/curl/lib/nonblock.h
+++ /dev/null
@@ -1,30 +0,0 @@
-#ifndef __NONBLOCK_H
-#define __NONBLOCK_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include <curl/curl.h> /* for curl_socket_t */
-
-int curlx_nonblock(curl_socket_t sockfd,    /* operate on this */
-                   int nonblock   /* TRUE or FALSE */);
-
-#endif
diff --git a/src/other/curl/lib/nss.c b/src/other/curl/lib/nss.c
deleted file mode 100644
index 0f8ebd5..0000000
--- a/src/other/curl/lib/nss.c
+++ /dev/null
@@ -1,1425 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * Source file for all NSS-specific code for the TLS/SSL layer. No code
- * but sslgen.c should ever call or use these functions.
- */
-
-#include "setup.h"
-
-#include <string.h>
-#include <stdlib.h>
-#include <ctype.h>
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "formdata.h" /* for the boundary function */
-#include "url.h" /* for the ssl config check function */
-#include "connect.h"
-#include "strequal.h"
-#include "select.h"
-#include "sslgen.h"
-
-#define _MPRINTF_REPLACE /* use the internal *printf() functions */
-#include <curl/mprintf.h>
-
-#ifdef USE_NSS
-
-#include "nssg.h"
-#include <nspr.h>
-#include <nss.h>
-#include <ssl.h>
-#include <sslerr.h>
-#include <secerr.h>
-#include <secmod.h>
-#include <sslproto.h>
-#include <prtypes.h>
-#include <pk11pub.h>
-#include <prio.h>
-#include <secitem.h>
-#include <secport.h>
-#include <certdb.h>
-#include <base64.h>
-
-#include "curl_memory.h"
-#include "rawstr.h"
-#include "easyif.h" /* for Curl_convert_from_utf8 prototype */
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#define SSL_DIR "/etc/pki/nssdb"
-
-/* enough to fit the string "PEM Token #[0|1]" */
-#define SLOTSIZE 13
-
-PRFileDesc *PR_ImportTCPSocket(PRInt32 osfd);
-
-PRLock * nss_initlock = NULL;
-
-volatile int initialized = 0;
-
-typedef struct {
-  const char *name;
-  int num;
-  PRInt32 version; /* protocol version valid for this cipher */
-} cipher_s;
-
-#define PK11_SETATTRS(x,id,v,l) (x)->type = (id);       \
-  (x)->pValue=(v); (x)->ulValueLen = (l)
-
-#define CERT_NewTempCertificate __CERT_NewTempCertificate
-
-enum sslversion { SSL2 = 1, SSL3 = 2, TLS = 4 };
-
-#define NUM_OF_CIPHERS sizeof(cipherlist)/sizeof(cipherlist[0])
-static const cipher_s cipherlist[] = {
-  /* SSL2 cipher suites */
-  {"rc4", SSL_EN_RC4_128_WITH_MD5, SSL2},
-  {"rc4-md5", SSL_EN_RC4_128_WITH_MD5, SSL2},
-  {"rc4export", SSL_EN_RC4_128_EXPORT40_WITH_MD5, SSL2},
-  {"rc2", SSL_EN_RC2_128_CBC_WITH_MD5, SSL2},
-  {"rc2export", SSL_EN_RC2_128_CBC_EXPORT40_WITH_MD5, SSL2},
-  {"des", SSL_EN_DES_64_CBC_WITH_MD5, SSL2},
-  {"desede3", SSL_EN_DES_192_EDE3_CBC_WITH_MD5, SSL2},
-  /* SSL3/TLS cipher suites */
-  {"rsa_rc4_128_md5", SSL_RSA_WITH_RC4_128_MD5, SSL3 | TLS},
-  {"rsa_rc4_128_sha", SSL_RSA_WITH_RC4_128_SHA, SSL3 | TLS},
-  {"rsa_3des_sha", SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL3 | TLS},
-  {"rsa_des_sha", SSL_RSA_WITH_DES_CBC_SHA, SSL3 | TLS},
-  {"rsa_rc4_40_md5", SSL_RSA_EXPORT_WITH_RC4_40_MD5, SSL3 | TLS},
-  {"rsa_rc2_40_md5", SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5, SSL3 | TLS},
-  {"rsa_null_md5", SSL_RSA_WITH_NULL_MD5, SSL3 | TLS},
-  {"rsa_null_sha", SSL_RSA_WITH_NULL_SHA, SSL3 | TLS},
-  {"fips_3des_sha", SSL_RSA_FIPS_WITH_3DES_EDE_CBC_SHA, SSL3 | TLS},
-  {"fips_des_sha", SSL_RSA_FIPS_WITH_DES_CBC_SHA, SSL3 | TLS},
-  {"fortezza", SSL_FORTEZZA_DMS_WITH_FORTEZZA_CBC_SHA, SSL3 | TLS},
-  {"fortezza_rc4_128_sha", SSL_FORTEZZA_DMS_WITH_RC4_128_SHA, SSL3 | TLS},
-  {"fortezza_null", SSL_FORTEZZA_DMS_WITH_NULL_SHA, SSL3 | TLS},
-  /* TLS 1.0: Exportable 56-bit Cipher Suites. */
-  {"rsa_des_56_sha", TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA, SSL3 | TLS},
-  {"rsa_rc4_56_sha", TLS_RSA_EXPORT1024_WITH_RC4_56_SHA, SSL3 | TLS},
-  /* AES ciphers. */
-  {"rsa_aes_128_sha", TLS_RSA_WITH_AES_128_CBC_SHA, SSL3 | TLS},
-  {"rsa_aes_256_sha", TLS_RSA_WITH_AES_256_CBC_SHA, SSL3 | TLS},
-#ifdef NSS_ENABLE_ECC
-  /* ECC ciphers. */
-  {"ecdh_ecdsa_null_sha", TLS_ECDH_ECDSA_WITH_NULL_SHA, TLS},
-  {"ecdh_ecdsa_rc4_128_sha", TLS_ECDH_ECDSA_WITH_RC4_128_SHA, TLS},
-  {"ecdh_ecdsa_3des_sha", TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS},
-  {"ecdh_ecdsa_aes_128_sha", TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA, TLS},
-  {"ecdh_ecdsa_aes_256_sha", TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA, TLS},
-  {"ecdhe_ecdsa_null_sha", TLS_ECDHE_ECDSA_WITH_NULL_SHA, TLS},
-  {"ecdhe_ecdsa_rc4_128_sha", TLS_ECDHE_ECDSA_WITH_RC4_128_SHA, TLS},
-  {"ecdhe_ecdsa_3des_sha", TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS},
-  {"ecdhe_ecdsa_aes_128_sha", TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS},
-  {"ecdhe_ecdsa_aes_256_sha", TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS},
-  {"ecdh_rsa_null_sha", TLS_ECDH_RSA_WITH_NULL_SHA, TLS},
-  {"ecdh_rsa_128_sha", TLS_ECDH_RSA_WITH_RC4_128_SHA, TLS},
-  {"ecdh_rsa_3des_sha", TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA, TLS},
-  {"ecdh_rsa_aes_128_sha", TLS_ECDH_RSA_WITH_AES_128_CBC_SHA, TLS},
-  {"ecdh_rsa_aes_256_sha", TLS_ECDH_RSA_WITH_AES_256_CBC_SHA, TLS},
-  {"echde_rsa_null", TLS_ECDHE_RSA_WITH_NULL_SHA, TLS},
-  {"ecdhe_rsa_rc4_128_sha", TLS_ECDHE_RSA_WITH_RC4_128_SHA, TLS},
-  {"ecdhe_rsa_3des_sha", TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA, TLS},
-  {"ecdhe_rsa_aes_128_sha", TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS},
-  {"ecdhe_rsa_aes_256_sha", TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS},
-  {"ecdh_anon_null_sha", TLS_ECDH_anon_WITH_NULL_SHA, TLS},
-  {"ecdh_anon_rc4_128sha", TLS_ECDH_anon_WITH_RC4_128_SHA, TLS},
-  {"ecdh_anon_3des_sha", TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA, TLS},
-  {"ecdh_anon_aes_128_sha", TLS_ECDH_anon_WITH_AES_128_CBC_SHA, TLS},
-  {"ecdh_anon_aes_256_sha", TLS_ECDH_anon_WITH_AES_256_CBC_SHA, TLS},
-#endif
-};
-
-/* following ciphers are new in NSS 3.4 and not enabled by default, therefore
-   they are enabled explicitly */
-static const int enable_ciphers_by_default[] = {
-  TLS_DHE_DSS_WITH_AES_128_CBC_SHA,
-  TLS_DHE_DSS_WITH_AES_256_CBC_SHA,
-  TLS_DHE_RSA_WITH_AES_128_CBC_SHA,
-  TLS_DHE_RSA_WITH_AES_256_CBC_SHA,
-  TLS_RSA_WITH_AES_128_CBC_SHA,
-  TLS_RSA_WITH_AES_256_CBC_SHA,
-  SSL_NULL_WITH_NULL_NULL
-};
-
-#ifdef HAVE_PK11_CREATEGENERICOBJECT
-static const char* pem_library = "libnsspem.so";
-#endif
-SECMODModule* mod = NULL;
-
-static SECStatus set_ciphers(struct SessionHandle *data, PRFileDesc * model,
-                             char *cipher_list)
-{
-  unsigned int i;
-  PRBool cipher_state[NUM_OF_CIPHERS];
-  PRBool found;
-  char *cipher;
-  SECStatus rv;
-
-  /* First disable all ciphers. This uses a different max value in case
-   * NSS adds more ciphers later we don't want them available by
-   * accident
-   */
-  for(i=0; i<SSL_NumImplementedCiphers; i++) {
-    SSL_CipherPrefSet(model, SSL_ImplementedCiphers[i], SSL_NOT_ALLOWED);
-  }
-
-  /* Set every entry in our list to false */
-  for(i=0; i<NUM_OF_CIPHERS; i++) {
-    cipher_state[i] = PR_FALSE;
-  }
-
-  cipher = cipher_list;
-
-  while(cipher_list && (cipher_list[0])) {
-    while((*cipher) && (ISSPACE(*cipher)))
-      ++cipher;
-
-    if((cipher_list = strchr(cipher, ','))) {
-      *cipher_list++ = '\0';
-    }
-
-    found = PR_FALSE;
-
-    for(i=0; i<NUM_OF_CIPHERS; i++) {
-      if(Curl_raw_equal(cipher, cipherlist[i].name)) {
-        cipher_state[i] = PR_TRUE;
-        found = PR_TRUE;
-        break;
-      }
-    }
-
-    if(found == PR_FALSE) {
-      failf(data, "Unknown cipher in list: %s", cipher);
-      return SECFailure;
-    }
-
-    if(cipher_list) {
-      cipher = cipher_list;
-    }
-  }
-
-  /* Finally actually enable the selected ciphers */
-  for(i=0; i<NUM_OF_CIPHERS; i++) {
-    rv = SSL_CipherPrefSet(model, cipherlist[i].num, cipher_state[i]);
-    if(rv != SECSuccess) {
-      failf(data, "Unknown cipher in cipher list");
-      return SECFailure;
-    }
-  }
-
-  return SECSuccess;
-}
-
-/*
- * Get the number of ciphers that are enabled. We use this to determine
- * if we need to call NSS_SetDomesticPolicy() to enable the default ciphers.
- */
-static int num_enabled_ciphers(void)
-{
-  PRInt32 policy = 0;
-  int count = 0;
-  unsigned int i;
-
-  for(i=0; i<NUM_OF_CIPHERS; i++) {
-    SSL_CipherPolicyGet(cipherlist[i].num, &policy);
-    if(policy)
-      count++;
-  }
-  return count;
-}
-
-/*
- * Determine whether the nickname passed in is a filename that needs to
- * be loaded as a PEM or a regular NSS nickname.
- *
- * returns 1 for a file
- * returns 0 for not a file (NSS nickname)
- */
-static int is_file(const char *filename)
-{
-  struct_stat st;
-
-  if(filename == NULL)
-    return 0;
-
-  if(stat(filename, &st) == 0)
-    if(S_ISREG(st.st_mode))
-      return 1;
-
-  return 0;
-}
-
-static char *fmt_nickname(char *str, bool *nickname_alloc)
-{
-  char *nickname = NULL;
-  *nickname_alloc = FALSE;
-
-  if(is_file(str)) {
-    char *n = strrchr(str, '/');
-    if(n) {
-      *nickname_alloc = TRUE;
-      n++; /* skip last slash */
-      nickname = aprintf("PEM Token #%d:%s", 1, n);
-    }
-    return nickname;
-  }
-
-  return str;
-}
-
-static int nss_load_cert(struct ssl_connect_data *ssl,
-                         const char *filename, PRBool cacert)
-{
-#ifdef HAVE_PK11_CREATEGENERICOBJECT
-  CK_SLOT_ID slotID;
-  PK11SlotInfo * slot = NULL;
-  CK_ATTRIBUTE *attrs;
-  CK_ATTRIBUTE theTemplate[20];
-  CK_BBOOL cktrue = CK_TRUE;
-  CK_BBOOL ckfalse = CK_FALSE;
-  CK_OBJECT_CLASS objClass = CKO_CERTIFICATE;
-  char slotname[SLOTSIZE];
-#endif
-  CERTCertificate *cert;
-  char *nickname = NULL;
-  char *n = NULL;
-
-  /* If there is no slash in the filename it is assumed to be a regular
-   * NSS nickname.
-   */
-  if(is_file(filename)) {
-    n = strrchr(filename, '/');
-    if(n)
-      n++;
-    if(!mod)
-      return 1;
-  }
-  else {
-    /* A nickname from the NSS internal database */
-    if(cacert)
-      return 0; /* You can't specify an NSS CA nickname this way */
-    nickname = strdup(filename);
-    if(!nickname)
-      return 0;
-    goto done;
-  }
-
-#ifdef HAVE_PK11_CREATEGENERICOBJECT
-  attrs = theTemplate;
-
-  /* All CA and trust objects go into slot 0. Other slots are used
-   * for storing certificates. With each new user certificate we increment
-   * the slot count. We only support 1 user certificate right now.
-   */
-  if(cacert)
-    slotID = 0;
-  else
-    slotID = 1;
-
-  snprintf(slotname, SLOTSIZE, "PEM Token #%ld", slotID);
-
-  nickname = aprintf("PEM Token #%ld:%s", slotID, n);
-  if(!nickname)
-    return 0;
-
-  slot = PK11_FindSlotByName(slotname);
-
-  if(!slot) {
-    free(nickname);
-    return 0;
-  }
-
-  PK11_SETATTRS(attrs, CKA_CLASS, &objClass, sizeof(objClass) );
-  attrs++;
-  PK11_SETATTRS(attrs, CKA_TOKEN, &cktrue, sizeof(CK_BBOOL) );
-  attrs++;
-  PK11_SETATTRS(attrs, CKA_LABEL, (unsigned char *)filename,
-                strlen(filename)+1);
-  attrs++;
-  if(cacert) {
-    PK11_SETATTRS(attrs, CKA_TRUST, &cktrue, sizeof(CK_BBOOL) );
-  }
-  else {
-    PK11_SETATTRS(attrs, CKA_TRUST, &ckfalse, sizeof(CK_BBOOL) );
-  }
-  attrs++;
-
-  /* This load the certificate in our PEM module into the appropriate
-   * slot.
-   */
-  ssl->cacert[slotID] = PK11_CreateGenericObject(slot, theTemplate, 4,
-                                                 PR_FALSE /* isPerm */);
-
-  PK11_FreeSlot(slot);
-
-  if(ssl->cacert[slotID] == NULL) {
-    free(nickname);
-    return 0;
-  }
-#else
-  /* We don't have PK11_CreateGenericObject but a file-based cert was passed
-   * in. We need to fail.
-   */
-  return 0;
-#endif
-
-  done:
-  /* Double-check that the certificate or nickname requested exists in
-   * either the token or the NSS certificate database.
-   */
-  if(!cacert) {
-    cert = PK11_FindCertFromNickname((char *)nickname, NULL);
-
-    /* An invalid nickname was passed in */
-    if(cert == NULL) {
-      free(nickname);
-      PR_SetError(SEC_ERROR_UNKNOWN_CERT, 0);
-      return 0;
-    }
-
-    CERT_DestroyCertificate(cert);
-  }
-
-  free(nickname);
-
-  return 1;
-}
-
-static int nss_load_crl(const char* crlfilename, PRBool ascii)
-{
-  PRFileDesc *infile;
-  PRStatus    prstat;
-  PRFileInfo  info;
-  PRInt32     nb;
-  int rv;
-  SECItem crlDER;
-  CERTSignedCrl *crl=NULL;
-  PK11SlotInfo *slot=NULL;
-
-  infile = PR_Open(crlfilename,PR_RDONLY,0);
-  if (!infile) {
-    return 0;
-  }
-  crlDER.data = NULL;
-  prstat = PR_GetOpenFileInfo(infile,&info);
-  if (prstat!=PR_SUCCESS)
-    return 0;
-  if (ascii) {
-    SECItem filedata;
-    char *asc,*body;
-    filedata.data = NULL;
-    if (!SECITEM_AllocItem(NULL,&filedata,info.size))
-      return 0;
-    nb = PR_Read(infile,filedata.data,info.size);
-    if (nb!=info.size)
-      return 0;
-    asc = (char*)filedata.data;
-    if (!asc)
-      return 0;
-
-    body=strstr(asc,"-----BEGIN");
-    if (body != NULL) {
-      char *trailer=NULL;
-      asc = body;
-      body = PORT_Strchr(asc,'\n');
-      if (!body)
-        body = PORT_Strchr(asc,'\r');
-      if (body)
-        trailer = strstr(++body,"-----END");
-      if (trailer!=NULL)
-        *trailer='\0';
-      else
-        return 0;
-    }
-    else {
-      body = asc;
-    }
-    rv = ATOB_ConvertAsciiToItem(&crlDER,body);
-    PORT_Free(filedata.data);
-    if (rv)
-      return 0;
-  }
-  else {
-    if (!SECITEM_AllocItem(NULL,&crlDER,info.size))
-      return 0;
-    nb = PR_Read(infile,crlDER.data,info.size);
-    if (nb!=info.size)
-      return 0;
-  }
-
-  slot = PK11_GetInternalKeySlot();
-  crl  = PK11_ImportCRL(slot,&crlDER,
-                        NULL,SEC_CRL_TYPE,
-                        NULL,CRL_IMPORT_DEFAULT_OPTIONS,
-                        NULL,(CRL_DECODE_DEFAULT_OPTIONS|
-                              CRL_DECODE_DONT_COPY_DER));
-  if (slot) PK11_FreeSlot(slot);
-  if (!crl) return 0;
-  SEC_DestroyCrl(crl);
-  return 1;
-}
-
-static int nss_load_key(struct connectdata *conn, int sockindex,
-                        char *key_file)
-{
-#ifdef HAVE_PK11_CREATEGENERICOBJECT
-  PK11SlotInfo * slot = NULL;
-  CK_ATTRIBUTE *attrs;
-  CK_ATTRIBUTE theTemplate[20];
-  CK_BBOOL cktrue = CK_TRUE;
-  CK_OBJECT_CLASS objClass = CKO_PRIVATE_KEY;
-  CK_SLOT_ID slotID;
-  char slotname[SLOTSIZE];
-  struct ssl_connect_data *sslconn = &conn->ssl[sockindex];
-
-  attrs = theTemplate;
-
-  /* FIXME: grok the various file types */
-
-  slotID = 1; /* hardcoded for now */
-
-  snprintf(slotname, sizeof(slotname), "PEM Token #%ld", slotID);
-  slot = PK11_FindSlotByName(slotname);
-
-  if(!slot)
-    return 0;
-
-  PK11_SETATTRS(attrs, CKA_CLASS, &objClass, sizeof(objClass) ); attrs++;
-  PK11_SETATTRS(attrs, CKA_TOKEN, &cktrue, sizeof(CK_BBOOL) ); attrs++;
-  PK11_SETATTRS(attrs, CKA_LABEL, (unsigned char *)key_file,
-                strlen(key_file)+1); attrs++;
-
-  /* When adding an encrypted key the PKCS#11 will be set as removed */
-  sslconn->key = PK11_CreateGenericObject(slot, theTemplate, 3,
-                                          PR_FALSE /* isPerm */);
-  if(sslconn->key == NULL) {
-    PR_SetError(SEC_ERROR_BAD_KEY, 0);
-    return 0;
-  }
-
-  /* This will force the token to be seen as re-inserted */
-  SECMOD_WaitForAnyTokenEvent(mod, 0, 0);
-  PK11_IsPresent(slot);
-
-  /* parg is initialized in nss_Init_Tokens() */
-  if(PK11_Authenticate(slot, PR_TRUE,
-                       conn->data->set.str[STRING_KEY_PASSWD]) != SECSuccess) {
-
-    PK11_FreeSlot(slot);
-    return 0;
-  }
-  PK11_FreeSlot(slot);
-
-  return 1;
-#else
-  /* If we don't have PK11_CreateGenericObject then we can't load a file-based
-   * key.
-   */
-  (void)conn; /* unused */
-  (void)key_file; /* unused */
-  return 0;
-#endif
-}
-
-static int display_error(struct connectdata *conn, PRInt32 err,
-                         const char *filename)
-{
-  switch(err) {
-  case SEC_ERROR_BAD_PASSWORD:
-    failf(conn->data, "Unable to load client key: Incorrect password");
-    return 1;
-  case SEC_ERROR_UNKNOWN_CERT:
-    failf(conn->data, "Unable to load certificate %s", filename);
-    return 1;
-  default:
-    break;
-  }
-  return 0; /* The caller will print a generic error */
-}
-
-static int cert_stuff(struct connectdata *conn,
-                      int sockindex, char *cert_file, char *key_file)
-{
-  struct SessionHandle *data = conn->data;
-  int rv = 0;
-
-  if(cert_file) {
-    rv = nss_load_cert(&conn->ssl[sockindex], cert_file, PR_FALSE);
-    if(!rv) {
-      if(!display_error(conn, PR_GetError(), cert_file))
-        failf(data, "Unable to load client cert %d.", PR_GetError());
-      return 0;
-    }
-  }
-  if(key_file || (is_file(cert_file))) {
-    if(key_file)
-      rv = nss_load_key(conn, sockindex, key_file);
-    else
-      /* In case the cert file also has the key */
-      rv = nss_load_key(conn, sockindex, cert_file);
-    if(!rv) {
-      if(!display_error(conn, PR_GetError(), key_file))
-        failf(data, "Unable to load client key %d.", PR_GetError());
-
-      return 0;
-    }
-  }
-  return 1;
-}
-
-static char * nss_get_password(PK11SlotInfo * slot, PRBool retry, void *arg)
-{
-  (void)slot; /* unused */
-  if(retry || NULL == arg)
-    return NULL;
-  else
-    return (char *)PORT_Strdup((char *)arg);
-}
-
-static SECStatus BadCertHandler(void *arg, PRFileDesc *sock)
-{
-  SECStatus success = SECSuccess;
-  struct connectdata *conn = (struct connectdata *)arg;
-  PRErrorCode err = PR_GetError();
-  CERTCertificate *cert = NULL;
-  char *subject, *subject_cn, *issuer;
-
-  if(conn->data->set.ssl.certverifyresult!=0)
-    return success;
-
-  conn->data->set.ssl.certverifyresult=err;
-  cert = SSL_PeerCertificate(sock);
-  subject = CERT_NameToAscii(&cert->subject);
-  subject_cn = CERT_GetCommonName(&cert->subject);
-  issuer = CERT_NameToAscii(&cert->issuer);
-  CERT_DestroyCertificate(cert);
-
-  switch(err) {
-  case SEC_ERROR_CA_CERT_INVALID:
-    infof(conn->data, "Issuer certificate is invalid: '%s'\n", issuer);
-    if(conn->data->set.ssl.verifypeer)
-      success = SECFailure;
-    break;
-  case SEC_ERROR_UNTRUSTED_ISSUER:
-    if(conn->data->set.ssl.verifypeer)
-      success = SECFailure;
-    infof(conn->data, "Certificate is signed by an untrusted issuer: '%s'\n",
-          issuer);
-    break;
-  case SSL_ERROR_BAD_CERT_DOMAIN:
-    if(conn->data->set.ssl.verifyhost) {
-      failf(conn->data, "SSL: certificate subject name '%s' does not match "
-            "target host name '%s'", subject_cn, conn->host.dispname);
-      success = SECFailure;
-    } else {
-      infof(conn->data, "warning: SSL: certificate subject name '%s' does not "
-            "match target host name '%s'\n", subject_cn, conn->host.dispname);
-    }
-    break;
-  case SEC_ERROR_EXPIRED_CERTIFICATE:
-    if(conn->data->set.ssl.verifypeer)
-      success = SECFailure;
-    infof(conn->data, "Remote Certificate has expired.\n");
-    break;
-  case SEC_ERROR_UNKNOWN_ISSUER:
-    if(conn->data->set.ssl.verifypeer)
-      success = SECFailure;
-    infof(conn->data, "Peer's certificate issuer is not recognized: '%s'\n",
-          issuer);
-    break;
-  default:
-    if(conn->data->set.ssl.verifypeer)
-      success = SECFailure;
-    infof(conn->data, "Bad certificate received. Subject = '%s', "
-          "Issuer = '%s'\n", subject, issuer);
-    break;
-  }
-  if(success == SECSuccess)
-    infof(conn->data, "SSL certificate verify ok.\n");
-  PR_Free(subject);
-  PR_Free(subject_cn);
-  PR_Free(issuer);
-
-  return success;
-}
-
-/**
- * Inform the application that the handshake is complete.
- */
-static SECStatus HandshakeCallback(PRFileDesc *sock, void *arg)
-{
-  (void)sock;
-  (void)arg;
-  return SECSuccess;
-}
-
-static void display_cert_info(struct SessionHandle *data,
-                              CERTCertificate *cert)
-{
-  char *subject, *issuer, *common_name;
-  PRExplodedTime printableTime;
-  char timeString[256];
-  PRTime notBefore, notAfter;
-
-  subject = CERT_NameToAscii(&cert->subject);
-  issuer = CERT_NameToAscii(&cert->issuer);
-  common_name = CERT_GetCommonName(&cert->subject);
-  infof(data, "\tsubject: %s\n", subject);
-
-  CERT_GetCertTimes(cert, &notBefore, &notAfter);
-  PR_ExplodeTime(notBefore, PR_GMTParameters, &printableTime);
-  PR_FormatTime(timeString, 256, "%b %d %H:%M:%S %Y GMT", &printableTime);
-  infof(data, "\tstart date: %s\n", timeString);
-  PR_ExplodeTime(notAfter, PR_GMTParameters, &printableTime);
-  PR_FormatTime(timeString, 256, "%b %d %H:%M:%S %Y GMT", &printableTime);
-  infof(data, "\texpire date: %s\n", timeString);
-  infof(data, "\tcommon name: %s\n", common_name);
-  infof(data, "\tissuer: %s\n", issuer);
-
-  PR_Free(subject);
-  PR_Free(issuer);
-  PR_Free(common_name);
-}
-
-static void display_conn_info(struct connectdata *conn, PRFileDesc *sock)
-{
-  SSLChannelInfo channel;
-  SSLCipherSuiteInfo suite;
-  CERTCertificate *cert;
-
-  if(SSL_GetChannelInfo(sock, &channel, sizeof channel) ==
-     SECSuccess && channel.length == sizeof channel &&
-     channel.cipherSuite) {
-    if(SSL_GetCipherSuiteInfo(channel.cipherSuite,
-                              &suite, sizeof suite) == SECSuccess) {
-      infof(conn->data, "SSL connection using %s\n", suite.cipherSuiteName);
-    }
-  }
-
-  infof(conn->data, "Server certificate:\n");
-
-  cert = SSL_PeerCertificate(sock);
-  display_cert_info(conn->data, cert);
-  CERT_DestroyCertificate(cert);
-
-  return;
-}
-
-/**
- *
- * Check that the Peer certificate's issuer certificate matches the one found
- * by issuer_nickname.  This is not exactly the way OpenSSL and GNU TLS do the
- * issuer check, so we provide comments that mimic the OpenSSL
- * X509_check_issued function (in x509v3/v3_purp.c)
- */
-static SECStatus check_issuer_cert(PRFileDesc *sock,
-                                   char *issuer_nickname)
-{
-  CERTCertificate *cert,*cert_issuer,*issuer;
-  SECStatus res=SECSuccess;
-  void *proto_win = NULL;
-
-  /*
-    PRArenaPool   *tmpArena = NULL;
-    CERTAuthKeyID *authorityKeyID = NULL;
-    SECITEM       *caname = NULL;
-  */
-
-  cert = SSL_PeerCertificate(sock);
-  cert_issuer = CERT_FindCertIssuer(cert,PR_Now(),certUsageObjectSigner);
-
-  proto_win = SSL_RevealPinArg(sock);
-  issuer = NULL;
-  issuer = PK11_FindCertFromNickname(issuer_nickname, proto_win);
-
-  if ((!cert_issuer) || (!issuer))
-    res = SECFailure;
-  else if (SECITEM_CompareItem(&cert_issuer->derCert,
-                               &issuer->derCert)!=SECEqual)
-    res = SECFailure;
-
-  CERT_DestroyCertificate(cert);
-  CERT_DestroyCertificate(issuer);
-  CERT_DestroyCertificate(cert_issuer);
-  return res;
-}
-
-/**
- *
- * Callback to pick the SSL client certificate.
- */
-static SECStatus SelectClientCert(void *arg, PRFileDesc *sock,
-                                  struct CERTDistNamesStr *caNames,
-                                  struct CERTCertificateStr **pRetCert,
-                                  struct SECKEYPrivateKeyStr **pRetKey)
-{
-  static const char pem_nickname[] = "PEM Token #1";
-  const char *pem_slotname = pem_nickname;
-
-  struct ssl_connect_data *connssl = (struct ssl_connect_data *)arg;
-  struct SessionHandle *data = connssl->data;
-  const char *nickname = connssl->client_nickname;
-
-  if (mod && nickname &&
-      0 == strncmp(nickname, pem_nickname, /* length of "PEM Token" */ 9)) {
-
-    /* use the cert/key provided by PEM reader */
-    PK11SlotInfo *slot;
-    void *proto_win = SSL_RevealPinArg(sock);
-    *pRetKey = NULL;
-
-    *pRetCert = PK11_FindCertFromNickname(nickname, proto_win);
-    if (NULL == *pRetCert) {
-      failf(data, "NSS: client certificate not found: %s", nickname);
-      return SECFailure;
-    }
-
-    slot = PK11_FindSlotByName(pem_slotname);
-    if (NULL == slot) {
-      failf(data, "NSS: PK11 slot not found: %s", pem_slotname);
-      return SECFailure;
-    }
-
-    *pRetKey = PK11_FindPrivateKeyFromCert(slot, *pRetCert, NULL);
-    PK11_FreeSlot(slot);
-    if (NULL == *pRetKey) {
-      failf(data, "NSS: private key not found for certificate: %s", nickname);
-      return SECFailure;
-    }
-
-    infof(data, "NSS: client certificate: %s\n", nickname);
-    display_cert_info(data, *pRetCert);
-    return SECSuccess;
-  }
-
-  /* use the default NSS hook */
-  if (SECSuccess != NSS_GetClientAuthData((void *)nickname, sock, caNames,
-                                          pRetCert, pRetKey)
-      || NULL == *pRetCert) {
-
-    if (NULL == nickname)
-      failf(data, "NSS: client certificate not found (nickname not "
-            "specified)");
-    else
-      failf(data, "NSS: client certificate not found: %s", nickname);
-
-    return SECFailure;
-  }
-
-  /* get certificate nickname if any */
-  nickname = (*pRetCert)->nickname;
-  if (NULL == nickname)
-    nickname = "[unknown]";
-
-  if (NULL == *pRetKey) {
-    failf(data, "NSS: private key not found for certificate: %s", nickname);
-    return SECFailure;
-  }
-
-  infof(data, "NSS: using client certificate: %s\n", nickname);
-  display_cert_info(data, *pRetCert);
-  return SECSuccess;
-}
-
-/* This function is supposed to decide, which error codes should be used
- * to conclude server is TLS intolerant.
- *
- * taken from xulrunner - nsNSSIOLayer.cpp
- */
-static PRBool
-isTLSIntoleranceError(PRInt32 err)
-{
-  switch (err) {
-  case SSL_ERROR_BAD_MAC_ALERT:
-  case SSL_ERROR_BAD_MAC_READ:
-  case SSL_ERROR_HANDSHAKE_FAILURE_ALERT:
-  case SSL_ERROR_HANDSHAKE_UNEXPECTED_ALERT:
-  case SSL_ERROR_CLIENT_KEY_EXCHANGE_FAILURE:
-  case SSL_ERROR_ILLEGAL_PARAMETER_ALERT:
-  case SSL_ERROR_NO_CYPHER_OVERLAP:
-  case SSL_ERROR_BAD_SERVER:
-  case SSL_ERROR_BAD_BLOCK_PADDING:
-  case SSL_ERROR_UNSUPPORTED_VERSION:
-  case SSL_ERROR_PROTOCOL_VERSION_ALERT:
-  case SSL_ERROR_RX_MALFORMED_FINISHED:
-  case SSL_ERROR_BAD_HANDSHAKE_HASH_VALUE:
-  case SSL_ERROR_DECODE_ERROR_ALERT:
-  case SSL_ERROR_RX_UNKNOWN_ALERT:
-    return PR_TRUE;
-  default:
-    return PR_FALSE;
-  }
-}
-
-/**
- * Global SSL init
- *
- * @retval 0 error initializing SSL
- * @retval 1 SSL initialized successfully
- */
-int Curl_nss_init(void)
-{
-  /* curl_global_init() is not thread-safe so this test is ok */
-  if (nss_initlock == NULL) {
-    PR_Init(PR_USER_THREAD, PR_PRIORITY_NORMAL, 256);
-    nss_initlock = PR_NewLock();
-  }
-
-  /* We will actually initialize NSS later */
-
-  return 1;
-}
-
-/* Global cleanup */
-void Curl_nss_cleanup(void)
-{
-  /* This function isn't required to be threadsafe and this is only done
-   * as a safety feature.
-   */
-  PR_Lock(nss_initlock);
-  if (initialized) {
-    /* Free references to client certificates held in the SSL session cache.
-     * Omitting this hampers destruction of the security module owning
-     * the certificates. */
-    SSL_ClearSessionCache();
-
-    if(mod && SECSuccess == SECMOD_UnloadUserModule(mod)) {
-      SECMOD_DestroyModule(mod);
-      mod = NULL;
-    }
-    NSS_Shutdown();
-  }
-  PR_Unlock(nss_initlock);
-
-  PR_DestroyLock(nss_initlock);
-  nss_initlock = NULL;
-
-  initialized = 0;
-}
-
-/*
- * This function uses SSL_peek to determine connection status.
- *
- * Return codes:
- *     1 means the connection is still in place
- *     0 means the connection has been closed
- *    -1 means the connection status is unknown
- */
-int
-Curl_nss_check_cxn(struct connectdata *conn)
-{
-  int rc;
-  char buf;
-
-  rc =
-    PR_Recv(conn->ssl[FIRSTSOCKET].handle, (void *)&buf, 1, PR_MSG_PEEK,
-            PR_SecondsToInterval(1));
-  if(rc > 0)
-    return 1; /* connection still in place */
-
-  if(rc == 0)
-    return 0; /* connection has been closed */
-
-  return -1;  /* connection status unknown */
-}
-
-/*
- * This function is called when an SSL connection is closed.
- */
-void Curl_nss_close(struct connectdata *conn, int sockindex)
-{
-  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
-
-  if(connssl->handle) {
-    PR_Close(connssl->handle);
-
-    /* NSS closes the socket we previously handed to it, so we must mark it
-       as closed to avoid double close */
-    fake_sclose(conn->sock[sockindex]);
-    conn->sock[sockindex] = CURL_SOCKET_BAD;
-    if(connssl->client_nickname != NULL) {
-      free(connssl->client_nickname);
-      connssl->client_nickname = NULL;
-    }
-#ifdef HAVE_PK11_CREATEGENERICOBJECT
-    if(connssl->key)
-      (void)PK11_DestroyGenericObject(connssl->key);
-    if(connssl->cacert[1])
-      (void)PK11_DestroyGenericObject(connssl->cacert[1]);
-    if(connssl->cacert[0])
-      (void)PK11_DestroyGenericObject(connssl->cacert[0]);
-#endif
-    connssl->handle = NULL;
-  }
-}
-
-/*
- * This function is called when the 'data' struct is going away. Close
- * down everything and free all resources!
- */
-int Curl_nss_close_all(struct SessionHandle *data)
-{
-  (void)data;
-  return 0;
-}
-
-/* handle client certificate related errors if any; return false otherwise */
-static bool handle_cc_error(PRInt32 err, struct SessionHandle *data)
-{
-  switch(err) {
-  case SSL_ERROR_BAD_CERT_ALERT:
-    failf(data, "SSL error: SSL_ERROR_BAD_CERT_ALERT");
-    return true;
-
-  case SSL_ERROR_REVOKED_CERT_ALERT:
-    failf(data, "SSL error: SSL_ERROR_REVOKED_CERT_ALERT");
-    return true;
-
-  case SSL_ERROR_EXPIRED_CERT_ALERT:
-    failf(data, "SSL error: SSL_ERROR_EXPIRED_CERT_ALERT");
-    return true;
-
-  default:
-    return false;
-  }
-}
-
-CURLcode Curl_nss_connect(struct connectdata *conn, int sockindex)
-{
-  PRInt32 err;
-  PRFileDesc *model = NULL;
-  PRBool ssl2 = PR_FALSE;
-  PRBool ssl3 = PR_FALSE;
-  PRBool tlsv1 = PR_FALSE;
-  struct SessionHandle *data = conn->data;
-  curl_socket_t sockfd = conn->sock[sockindex];
-  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
-  SECStatus rv;
-  char *certDir = NULL;
-  int curlerr;
-  const int *cipher_to_enable;
-  PRSocketOptionData sock_opt;
-  PRUint32 timeout;
-
-  curlerr = CURLE_SSL_CONNECT_ERROR;
-
-  if (connssl->state == ssl_connection_complete)
-    return CURLE_OK;
-
-  connssl->data = data;
-
-#ifdef HAVE_PK11_CREATEGENERICOBJECT
-  connssl->cacert[0] = NULL;
-  connssl->cacert[1] = NULL;
-  connssl->key = NULL;
-#endif
-
-  /* FIXME. NSS doesn't support multiple databases open at the same time. */
-  PR_Lock(nss_initlock);
-  if(!initialized) {
-    struct_stat st;
-
-    /* First we check if $SSL_DIR points to a valid dir */
-    certDir = getenv("SSL_DIR");
-    if(certDir) {
-      if((stat(certDir, &st) != 0) ||
-         (!S_ISDIR(st.st_mode))) {
-        certDir = NULL;
-      }
-    }
-
-    /* Now we check if the default location is a valid dir */
-    if(!certDir) {
-      if((stat(SSL_DIR, &st) == 0) &&
-         (S_ISDIR(st.st_mode))) {
-        certDir = (char *)SSL_DIR;
-      }
-    }
-
-    if (!NSS_IsInitialized()) {
-      initialized = 1;
-      infof(conn->data, "Initializing NSS with certpath: %s\n",
-            certDir ? certDir : "none");
-      if(!certDir) {
-        rv = NSS_NoDB_Init(NULL);
-      }
-      else {
-        char *certpath = PR_smprintf("%s%s",
-                                     NSS_VersionCheck("3.12.0") ? "sql:" : "",
-                                     certDir);
-        rv = NSS_Initialize(certpath, "", "", "", NSS_INIT_READONLY);
-        PR_smprintf_free(certpath);
-      }
-      if(rv != SECSuccess) {
-        infof(conn->data, "Unable to initialize NSS database\n");
-        curlerr = CURLE_SSL_CACERT_BADFILE;
-        initialized = 0;
-        PR_Unlock(nss_initlock);
-        goto error;
-      }
-    }
-
-    if(num_enabled_ciphers() == 0)
-      NSS_SetDomesticPolicy();
-
-#ifdef HAVE_PK11_CREATEGENERICOBJECT
-    if(!mod) {
-      char *configstring = aprintf("library=%s name=PEM", pem_library);
-      if(!configstring) {
-        PR_Unlock(nss_initlock);
-        goto error;
-      }
-      mod = SECMOD_LoadUserModule(configstring, NULL, PR_FALSE);
-      free(configstring);
-
-      if(!mod || !mod->loaded) {
-        if(mod) {
-          SECMOD_DestroyModule(mod);
-          mod = NULL;
-        }
-        infof(data, "WARNING: failed to load NSS PEM library %s. Using "
-              "OpenSSL PEM certificates will not work.\n", pem_library);
-      }
-    }
-#endif
-
-    PK11_SetPasswordFunc(nss_get_password);
-
-  }
-  PR_Unlock(nss_initlock);
-
-  model = PR_NewTCPSocket();
-  if(!model)
-    goto error;
-  model = SSL_ImportFD(NULL, model);
-
-  /* make the socket nonblocking */
-  sock_opt.option = PR_SockOpt_Nonblocking;
-  sock_opt.value.non_blocking = PR_TRUE;
-  if(PR_SetSocketOption(model, &sock_opt) != SECSuccess)
-    goto error;
-
-  if(SSL_OptionSet(model, SSL_SECURITY, PR_TRUE) != SECSuccess)
-    goto error;
-  if(SSL_OptionSet(model, SSL_HANDSHAKE_AS_SERVER, PR_FALSE) != SECSuccess)
-    goto error;
-  if(SSL_OptionSet(model, SSL_HANDSHAKE_AS_CLIENT, PR_TRUE) != SECSuccess)
-    goto error;
-
-  switch (data->set.ssl.version) {
-  default:
-  case CURL_SSLVERSION_DEFAULT:
-    ssl3 = PR_TRUE;
-    if (data->state.ssl_connect_retry)
-      infof(data, "TLS disabled due to previous handshake failure\n");
-    else
-      tlsv1 = PR_TRUE;
-    break;
-  case CURL_SSLVERSION_TLSv1:
-    tlsv1 = PR_TRUE;
-    break;
-  case CURL_SSLVERSION_SSLv2:
-    ssl2 = PR_TRUE;
-    break;
-  case CURL_SSLVERSION_SSLv3:
-    ssl3 = PR_TRUE;
-    break;
-  }
-
-  if(SSL_OptionSet(model, SSL_ENABLE_SSL2, ssl2) != SECSuccess)
-    goto error;
-  if(SSL_OptionSet(model, SSL_ENABLE_SSL3, ssl3) != SECSuccess)
-    goto error;
-  if(SSL_OptionSet(model, SSL_ENABLE_TLS, tlsv1) != SECSuccess)
-    goto error;
-
-  if(SSL_OptionSet(model, SSL_V2_COMPATIBLE_HELLO, ssl2) != SECSuccess)
-    goto error;
-
-  /* reset the flag to avoid an infinite loop */
-  data->state.ssl_connect_retry = FALSE;
-
-  /* enable all ciphers from enable_ciphers_by_default */
-  cipher_to_enable = enable_ciphers_by_default;
-  while (SSL_NULL_WITH_NULL_NULL != *cipher_to_enable) {
-    if (SSL_CipherPrefSet(model, *cipher_to_enable, PR_TRUE) != SECSuccess) {
-      curlerr = CURLE_SSL_CIPHER;
-      goto error;
-    }
-    cipher_to_enable++;
-  }
-
-  if(data->set.ssl.cipher_list) {
-    if(set_ciphers(data, model, data->set.ssl.cipher_list) != SECSuccess) {
-      curlerr = CURLE_SSL_CIPHER;
-      goto error;
-    }
-  }
-
-  if(data->set.ssl.verifyhost == 1)
-    infof(data, "warning: ignoring unsupported value (1) of ssl.verifyhost\n");
-
-  data->set.ssl.certverifyresult=0; /* not checked yet */
-  if(SSL_BadCertHook(model, (SSLBadCertHandler) BadCertHandler, conn)
-     != SECSuccess) {
-    goto error;
-  }
-  if(SSL_HandshakeCallback(model, (SSLHandshakeCallback) HandshakeCallback,
-                           NULL) != SECSuccess)
-    goto error;
-
-  if(!data->set.ssl.verifypeer)
-    /* skip the verifying of the peer */
-    ;
-  else if(data->set.ssl.CAfile) {
-    int rc = nss_load_cert(&conn->ssl[sockindex], data->set.ssl.CAfile,
-                           PR_TRUE);
-    if(!rc) {
-      curlerr = CURLE_SSL_CACERT_BADFILE;
-      goto error;
-    }
-  }
-  else if(data->set.ssl.CApath) {
-    struct_stat st;
-    PRDir      *dir;
-    PRDirEntry *entry;
-
-    if(stat(data->set.ssl.CApath, &st) == -1) {
-      curlerr = CURLE_SSL_CACERT_BADFILE;
-      goto error;
-    }
-
-    if(S_ISDIR(st.st_mode)) {
-      int rc;
-
-      dir = PR_OpenDir(data->set.ssl.CApath);
-      do {
-        entry = PR_ReadDir(dir, PR_SKIP_BOTH | PR_SKIP_HIDDEN);
-
-        if(entry) {
-          char fullpath[PATH_MAX];
-
-          snprintf(fullpath, sizeof(fullpath), "%s/%s", data->set.ssl.CApath,
-                   entry->name);
-          rc = nss_load_cert(&conn->ssl[sockindex], fullpath, PR_TRUE);
-          /* FIXME: check this return value! */
-        }
-        /* This is purposefully tolerant of errors so non-PEM files
-         * can be in the same directory */
-      } while(entry != NULL);
-      PR_CloseDir(dir);
-    }
-  }
-  infof(data,
-        "  CAfile: %s\n"
-        "  CApath: %s\n",
-        data->set.ssl.CAfile ? data->set.ssl.CAfile : "none",
-        data->set.ssl.CApath ? data->set.ssl.CApath : "none");
-
-  if (data->set.ssl.CRLfile) {
-    int rc = nss_load_crl(data->set.ssl.CRLfile, PR_FALSE);
-    if (!rc) {
-      curlerr = CURLE_SSL_CRL_BADFILE;
-      goto error;
-    }
-    infof(data,
-          "  CRLfile: %s\n",
-          data->set.ssl.CRLfile ? data->set.ssl.CRLfile : "none");
-  }
-
-  if(data->set.str[STRING_CERT]) {
-    bool nickname_alloc = FALSE;
-    char *nickname = fmt_nickname(data->set.str[STRING_CERT], &nickname_alloc);
-    if(!nickname)
-      return CURLE_OUT_OF_MEMORY;
-
-    if(!cert_stuff(conn, sockindex, data->set.str[STRING_CERT],
-                   data->set.str[STRING_KEY])) {
-      /* failf() is already done in cert_stuff() */
-      if(nickname_alloc)
-        free(nickname);
-      return CURLE_SSL_CERTPROBLEM;
-    }
-
-    /* this "takes over" the pointer to the allocated name or makes a
-       dup of it */
-    connssl->client_nickname = nickname_alloc?nickname:strdup(nickname);
-    if(!connssl->client_nickname)
-      return CURLE_OUT_OF_MEMORY;
-
-  }
-  else
-    connssl->client_nickname = NULL;
-
-  if(SSL_GetClientAuthDataHook(model, SelectClientCert,
-                               (void *)connssl) != SECSuccess) {
-    curlerr = CURLE_SSL_CERTPROBLEM;
-    goto error;
-  }
-
-  /* Import our model socket  onto the existing file descriptor */
-  connssl->handle = PR_ImportTCPSocket(sockfd);
-  connssl->handle = SSL_ImportFD(model, connssl->handle);
-  if(!connssl->handle)
-    goto error;
-
-  PR_Close(model); /* We don't need this any more */
-  model = NULL;
-
-  /* This is the password associated with the cert that we're using */
-  if (data->set.str[STRING_KEY_PASSWD]) {
-    SSL_SetPKCS11PinArg(connssl->handle, data->set.str[STRING_KEY_PASSWD]);
-  }
-
-  /* Force handshake on next I/O */
-  SSL_ResetHandshake(connssl->handle, /* asServer */ PR_FALSE);
-
-  SSL_SetURL(connssl->handle, conn->host.name);
-
-  /* Force the handshake now */
-  timeout = PR_MillisecondsToInterval((PRUint32)Curl_timeleft(conn, NULL, TRUE));
-  if(SSL_ForceHandshakeWithTimeout(connssl->handle, timeout) != SECSuccess) {
-    if(conn->data->set.ssl.certverifyresult == SSL_ERROR_BAD_CERT_DOMAIN)
-      curlerr = CURLE_PEER_FAILED_VERIFICATION;
-    else if(conn->data->set.ssl.certverifyresult!=0)
-      curlerr = CURLE_SSL_CACERT;
-    goto error;
-  }
-
-  connssl->state = ssl_connection_complete;
-
-  display_conn_info(conn, connssl->handle);
-
-  if (data->set.str[STRING_SSL_ISSUERCERT]) {
-    SECStatus ret;
-    bool nickname_alloc = FALSE;
-    char *nickname = fmt_nickname(data->set.str[STRING_SSL_ISSUERCERT],
-                                  &nickname_alloc);
-
-    if(!nickname)
-      return CURLE_OUT_OF_MEMORY;
-
-    ret = check_issuer_cert(connssl->handle, nickname);
-
-    if(nickname_alloc)
-      free(nickname);
-
-    if(SECFailure == ret) {
-      infof(data,"SSL certificate issuer check failed\n");
-      curlerr = CURLE_SSL_ISSUER_ERROR;
-      goto error;
-    }
-    else {
-      infof(data, "SSL certificate issuer check ok\n");
-    }
-  }
-
-  return CURLE_OK;
-
-  error:
-  /* reset the flag to avoid an infinite loop */
-  data->state.ssl_connect_retry = FALSE;
-
-  err = PR_GetError();
-  if(handle_cc_error(err, data))
-    curlerr = CURLE_SSL_CERTPROBLEM;
-  else
-    infof(data, "NSS error %d\n", err);
-
-  if(model)
-    PR_Close(model);
-
-  if (ssl3 && tlsv1 && isTLSIntoleranceError(err)) {
-    /* schedule reconnect through Curl_retry_request() */
-    data->state.ssl_connect_retry = TRUE;
-    infof(data, "Error in TLS handshake, trying SSLv3...\n");
-    return CURLE_OK;
-  }
-
-  return curlerr;
-}
-
-/* for documentation see Curl_ssl_send() in sslgen.h */
-int Curl_nss_send(struct connectdata *conn,  /* connection data */
-                  int sockindex,             /* socketindex */
-                  const void *mem,           /* send this data */
-                  size_t len,                /* amount to write */
-                  int *curlcode)
-{
-  int rc;
-
-  rc = PR_Send(conn->ssl[sockindex].handle, mem, (int)len, 0, -1);
-
-  if(rc < 0) {
-    PRInt32 err = PR_GetError();
-    if(err == PR_WOULD_BLOCK_ERROR)
-      *curlcode = -1; /* EWOULDBLOCK */
-    else if(handle_cc_error(err, conn->data))
-      *curlcode = CURLE_SSL_CERTPROBLEM;
-    else {
-      failf(conn->data, "SSL write: error %d", err);
-      *curlcode = CURLE_SEND_ERROR;
-    }
-    return -1;
-  }
-  return rc; /* number of bytes */
-}
-
-/* for documentation see Curl_ssl_recv() in sslgen.h */
-ssize_t Curl_nss_recv(struct connectdata * conn, /* connection data */
-                      int num,                   /* socketindex */
-                      char *buf,                 /* store read data here */
-                      size_t buffersize,         /* max amount to read */
-                      int *curlcode)
-{
-  ssize_t nread;
-
-  nread = PR_Recv(conn->ssl[num].handle, buf, (int)buffersize, 0, -1);
-  if(nread < 0) {
-    /* failed SSL read */
-    PRInt32 err = PR_GetError();
-
-    if(err == PR_WOULD_BLOCK_ERROR)
-      *curlcode = -1; /* EWOULDBLOCK */
-    else if(handle_cc_error(err, conn->data))
-      *curlcode = CURLE_SSL_CERTPROBLEM;
-    else {
-      failf(conn->data, "SSL read: errno %d", err);
-      *curlcode = CURLE_RECV_ERROR;
-    }
-    return -1;
-  }
-  return nread;
-}
-
-size_t Curl_nss_version(char *buffer, size_t size)
-{
-  return snprintf(buffer, size, "NSS/%s", NSS_VERSION);
-}
-#endif /* USE_NSS */
diff --git a/src/other/curl/lib/nssg.h b/src/other/curl/lib/nssg.h
deleted file mode 100644
index 309c3d6..0000000
--- a/src/other/curl/lib/nssg.h
+++ /dev/null
@@ -1,84 +0,0 @@
-#ifndef __NSSG_H
-#define __NSSG_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#ifdef USE_NSS
-/*
- * This header should only be needed to get included by sslgen.c and nss.c
- */
-
-#include "urldata.h"
-CURLcode Curl_nss_connect(struct connectdata *conn, int sockindex);
-CURLcode Curl_nss_connect_nonblocking(struct connectdata *conn,
-                                      int sockindex,
-                                      bool *done);
-/* close a SSL connection */
-void Curl_nss_close(struct connectdata *conn, int sockindex);
-
-/* tell NSS to close down all open information regarding connections (and
-   thus session ID caching etc) */
-int Curl_nss_close_all(struct SessionHandle *data);
-
-int Curl_nss_init(void);
-void Curl_nss_cleanup(void);
-
-/* for documentation see Curl_ssl_send() in sslgen.h */
-int Curl_nss_send(struct connectdata *conn,
-                  int sockindex,
-                  const void *mem,
-                  size_t len,
-                  int *curlcode);
-
-/* for documentation see Curl_ssl_recv() in sslgen.h */
-ssize_t Curl_nss_recv(struct connectdata *conn, /* connection data */
-                      int num,                  /* socketindex */
-                      char *buf,                /* store read data here */
-                      size_t buffersize,        /* max amount to read */
-                      int *curlcode);
-
-size_t Curl_nss_version(char *buffer, size_t size);
-int Curl_nss_check_cxn(struct connectdata *cxn);
-int Curl_nss_seed(struct SessionHandle *data);
-
-/* API setup for NSS */
-#define curlssl_init Curl_nss_init
-#define curlssl_cleanup Curl_nss_cleanup
-#define curlssl_connect Curl_nss_connect
-
-/* NSS has its own session ID cache */
-#define curlssl_session_free(x)
-#define curlssl_close_all Curl_nss_close_all
-#define curlssl_close Curl_nss_close
-/* NSS has no shutdown function provided and thus always fail */
-#define curlssl_shutdown(x,y) (x=x, y=y, 1)
-#define curlssl_set_engine(x,y) (x=x, y=y, CURLE_FAILED_INIT)
-#define curlssl_set_engine_default(x) (x=x, CURLE_FAILED_INIT)
-#define curlssl_engines_list(x) (x=x, (struct curl_slist *)NULL)
-#define curlssl_send Curl_nss_send
-#define curlssl_recv Curl_nss_recv
-#define curlssl_version Curl_nss_version
-#define curlssl_check_cxn(x) Curl_nss_check_cxn(x)
-#define curlssl_data_pending(x,y) (x=x, y=y, 0)
-
-#endif /* USE_NSS */
-#endif
diff --git a/src/other/curl/lib/nwlib.c b/src/other/curl/lib/nwlib.c
deleted file mode 100644
index f9c8a42..0000000
--- a/src/other/curl/lib/nwlib.c
+++ /dev/null
@@ -1,327 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#ifdef NETWARE /* Novell NetWare */
-
-#include <stdlib.h>
-
-#ifdef __NOVELL_LIBC__
-/* For native LibC-based NLM we need to register as a real lib. */
-#include <errno.h>
-#include <string.h>
-#include <library.h>
-#include <netware.h>
-#include <screen.h>
-#include <nks/thread.h>
-#include <nks/synch.h>
-
-
-typedef struct
-{
-  int     _errno;
-  void    *twentybytes;
-} libthreaddata_t;
-
-typedef struct
-{
-  int         x;
-  int         y;
-  int         z;
-  void        *tenbytes;
-  NXKey_t     perthreadkey;   /* if -1, no key obtained... */
-  NXMutex_t   *lock;
-} libdata_t;
-
-int         gLibId      = -1;
-void        *gLibHandle = (void *) NULL;
-rtag_t      gAllocTag   = (rtag_t) NULL;
-NXMutex_t   *gLibLock   = (NXMutex_t *) NULL;
-
-/* internal library function prototypes... */
-int     DisposeLibraryData ( void * );
-void    DisposeThreadData ( void * );
-int     GetOrSetUpData ( int id, libdata_t **data, libthreaddata_t **threaddata );
-
-
-int _NonAppStart( void        *NLMHandle,
-                  void        *errorScreen,
-                  const char  *cmdLine,
-                  const char  *loadDirPath,
-                  size_t      uninitializedDataLength,
-                  void        *NLMFileHandle,
-                  int         (*readRoutineP)( int conn,
-                                               void *fileHandle, size_t offset,
-                                               size_t nbytes,
-                                               size_t *bytesRead,
-                                               void *buffer ),
-                  size_t      customDataOffset,
-                  size_t      customDataSize,
-                  int         messageCount,
-                  const char  **messages )
-{
-  NX_LOCK_INFO_ALLOC(liblock, "Per-Application Data Lock", 0);
-
-#ifndef __GNUC__
-#pragma unused(cmdLine)
-#pragma unused(loadDirPath)
-#pragma unused(uninitializedDataLength)
-#pragma unused(NLMFileHandle)
-#pragma unused(readRoutineP)
-#pragma unused(customDataOffset)
-#pragma unused(customDataSize)
-#pragma unused(messageCount)
-#pragma unused(messages)
-#endif
-
-/*
-** Here we process our command line, post errors (to the error screen),
-** perform initializations and anything else we need to do before being able
-** to accept calls into us. If we succeed, we return non-zero and the NetWare
-** Loader will leave us up, otherwise we fail to load and get dumped.
-*/
-  gAllocTag = AllocateResourceTag(NLMHandle,
-                                  "<library-name> memory allocations",
-                                  AllocSignature);
-
-  if(!gAllocTag) {
-    OutputToScreen(errorScreen, "Unable to allocate resource tag for "
-                   "library memory allocations.\n");
-    return -1;
-  }
-
-  gLibId = register_library(DisposeLibraryData);
-
-  if(gLibId < -1) {
-    OutputToScreen(errorScreen, "Unable to register library with kernel.\n");
-    return -1;
-  }
-
-  gLibHandle = NLMHandle;
-
-  gLibLock = NXMutexAlloc(0, 0, &liblock);
-
-  if(!gLibLock) {
-    OutputToScreen(errorScreen, "Unable to allocate library data lock.\n");
-    return -1;
-  }
-
-  return 0;
-}
-
-/*
-** Here we clean up any resources we allocated. Resource tags is a big part
-** of what we created, but NetWare doesn't ask us to free those.
-*/
-void _NonAppStop( void )
-{
-  (void) unregister_library(gLibId);
-  NXMutexFree(gLibLock);
-}
-
-/*
-** This function cannot be the first in the file for if the file is linked
-** first, then the check-unload function's offset will be nlmname.nlm+0
-** which is how to tell that there isn't one. When the check function is
-** first in the linked objects, it is ambiguous. For this reason, we will
-** put it inside this file after the stop function.
-**
-** Here we check to see if it's alright to ourselves to be unloaded. If not,
-** we return a non-zero value. Right now, there isn't any reason not to allow
-** it.
-*/
-int _NonAppCheckUnload( void )
-{
-    return 0;
-}
-
-int GetOrSetUpData(int id, libdata_t **appData,
-                   libthreaddata_t **threadData )
-{
-  int                 err;
-  libdata_t           *app_data;
-  libthreaddata_t *thread_data;
-  NXKey_t             key;
-  NX_LOCK_INFO_ALLOC(liblock, "Application Data Lock", 0);
-
-  err         = 0;
-  thread_data = (libthreaddata_t *) NULL;
-
-/*
-** Attempt to get our data for the application calling us. This is where we
-** store whatever application-specific information we need to carry in support
-** of calling applications.
-*/
-  app_data = (libdata_t *) get_app_data(id);
-
-  if(!app_data) {
-/*
-** This application hasn't called us before; set up application AND per-thread
-** data. Of course, just in case a thread from this same application is calling
-** us simultaneously, we better lock our application data-creation mutex. We
-** also need to recheck for data after we acquire the lock because WE might be
-** that other thread that was too late to create the data and the first thread
-** in will have created it.
-*/
-    NXLock(gLibLock);
-
-    if(!(app_data = (libdata_t *) get_app_data(id))) {
-      app_data = malloc(sizeof(libdata_t));
-
-      if(app_data) {
-        memset(app_data, 0, sizeof(libdata_t));
-
-        app_data->tenbytes = malloc(10);
-        app_data->lock     = NXMutexAlloc(0, 0, &liblock);
-
-        if(!app_data->tenbytes || !app_data->lock) {
-          if(app_data->lock)
-            NXMutexFree(app_data->lock);
-
-          free(app_data);
-          app_data = (libdata_t *) NULL;
-          err      = ENOMEM;
-        }
-
-        if(app_data) {
-/*
-** Here we burn in the application data that we were trying to get by calling
-** get_app_data(). Next time we call the first function, we'll get this data
-** we're just now setting. We also go on here to establish the per-thread data
-** for the calling thread, something we'll have to do on each application
-** thread the first time it calls us.
-*/
-          err = set_app_data(gLibId, app_data);
-
-          if(err) {
-            free(app_data);
-            app_data = (libdata_t *) NULL;
-            err      = ENOMEM;
-          }
-          else {
-            /* create key for thread-specific data... */
-            err = NXKeyCreate(DisposeThreadData, (void *) NULL, &key);
-
-            if(err)                /* (no more keys left?) */
-              key = -1;
-
-            app_data->perthreadkey = key;
-          }
-        }
-      }
-    }
-
-    NXUnlock(gLibLock);
-  }
-
-  if(app_data) {
-    key = app_data->perthreadkey;
-
-    if(key != -1 /* couldn't create a key? no thread data */
-        && !(err = NXKeyGetValue(key, (void **) &thread_data))
-        && !thread_data) {
-/*
-** Allocate the per-thread data for the calling thread. Regardless of whether
-** there was already application data or not, this may be the first call by a
-** a new thread. The fact that we allocation 20 bytes on a pointer is not very
-** important, this just helps to demonstrate that we can have arbitrarily
-** complex per-thread data.
-*/
-      thread_data = malloc(sizeof(libthreaddata_t));
-
-      if(thread_data) {
-        thread_data->_errno      = 0;
-        thread_data->twentybytes = malloc(20);
-
-        if(!thread_data->twentybytes) {
-          free(thread_data);
-          thread_data = (libthreaddata_t *) NULL;
-          err         = ENOMEM;
-        }
-
-        if((err = NXKeySetValue(key, thread_data))) {
-          free(thread_data->twentybytes);
-          free(thread_data);
-          thread_data = (libthreaddata_t *) NULL;
-        }
-      }
-    }
-  }
-
-  if(appData)
-    *appData = app_data;
-
-  if(threadData)
-    *threadData = thread_data;
-
-  return err;
-}
-
-int DisposeLibraryData( void *data )
-{
-  if(data) {
-    void *tenbytes = ((libdata_t *) data)->tenbytes;
-
-    if(tenbytes)
-      free(tenbytes);
-
-    free(data);
-  }
-
-  return 0;
-}
-
-void DisposeThreadData( void *data )
-{
-  if(data) {
-    void *twentybytes = ((libthreaddata_t *) data)->twentybytes;
-
-    if(twentybytes)
-      free(twentybytes);
-
-    free(data);
-  }
-}
-
-#else /* __NOVELL_LIBC__ */
-/* For native CLib-based NLM seems we can do a bit more simple. */
-#include <nwthread.h>
-
-int main ( void )
-{
-    /* initialize any globals here... */
-
-    /* do this if any global initializing was done
-    SynchronizeStart();
-    */
-    ExitThread (TSR_THREAD, 0);
-    return 0;
-}
-
-#endif /* __NOVELL_LIBC__ */
-
-#else /* NETWARE */
-
-#ifdef __POCC__
-#  pragma warn(disable:2024)  /* Disable warning #2024: Empty input file */
-#endif
-
-#endif /* NETWARE */
diff --git a/src/other/curl/lib/nwos.c b/src/other/curl/lib/nwos.c
deleted file mode 100644
index ac36512..0000000
--- a/src/other/curl/lib/nwos.c
+++ /dev/null
@@ -1,95 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#ifdef NETWARE /* Novell NetWare */
-
-#include <stdlib.h>
-
-#ifdef __NOVELL_LIBC__
-/* For native LibC-based NLM we need to do nothing. */
-int netware_init ( void )
-{
-    return 0;
-}
-
-#else /* __NOVELL_LIBC__ */
-
-/* For native CLib-based NLM we need to initialize the LONG namespace. */
-#include <stdio.h>
-#include <nwnspace.h>
-#include <nwthread.h>
-#include <nwadv.h>
-/* Make the CLIB Ctx stuff link */
-#include <netdb.h>
-NETDB_DEFINE_CONTEXT
-/* Make the CLIB Inet stuff link */
-#include <netinet/in.h>
-#include <arpa/inet.h>
-NETINET_DEFINE_CONTEXT
-
-int netware_init ( void )
-{
-    int rc = 0;
-    unsigned int myHandle = GetNLMHandle();
-    /* import UnAugmentAsterisk dynamically for NW4.x compatibility */
-    void (*pUnAugmentAsterisk)(int) = (void(*)(int))
-            ImportSymbol(myHandle, "UnAugmentAsterisk");
-    /* import UseAccurateCaseForPaths dynamically for NW3.x compatibility */
-    void (*pUseAccurateCaseForPaths)(int) = (void(*)(int))
-            ImportSymbol(myHandle, "UseAccurateCaseForPaths");
-    if(pUnAugmentAsterisk)
-        pUnAugmentAsterisk(1);
-    if(pUseAccurateCaseForPaths)
-        pUseAccurateCaseForPaths(1);
-    UnimportSymbol(myHandle, "UnAugmentAsterisk");
-    UnimportSymbol(myHandle, "UseAccurateCaseForPaths");
-    /* set long name space */
-    if((SetCurrentNameSpace(4) == 255)) {
-        rc = 1;
-    }
-    if((SetTargetNameSpace(4) == 255)) {
-        rc = rc + 2;
-    }
-    return rc;
-}
-
-/* dummy function to satisfy newer prelude */
-int __init_environment ( void )
-{
-    return 0;
-}
-
-/* dummy function to satisfy newer prelude */
-int __deinit_environment ( void )
-{
-    return 0;
-}
-
-#endif /* __NOVELL_LIBC__ */
-
-#else /* NETWARE */
-
-#ifdef __POCC__
-#  pragma warn(disable:2024)  /* Disable warning #2024: Empty input file */
-#endif
-
-#endif /* NETWARE */
diff --git a/src/other/curl/lib/parsedate.c b/src/other/curl/lib/parsedate.c
deleted file mode 100644
index 8e26f1c..0000000
--- a/src/other/curl/lib/parsedate.c
+++ /dev/null
@@ -1,510 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-/*
-  A brief summary of the date string formats this parser groks:
-
-  RFC 2616 3.3.1
-
-  Sun, 06 Nov 1994 08:49:37 GMT  ; RFC 822, updated by RFC 1123
-  Sunday, 06-Nov-94 08:49:37 GMT ; RFC 850, obsoleted by RFC 1036
-  Sun Nov  6 08:49:37 1994       ; ANSI C's asctime() format
-
-  we support dates without week day name:
-
-  06 Nov 1994 08:49:37 GMT
-  06-Nov-94 08:49:37 GMT
-  Nov  6 08:49:37 1994
-
-  without the time zone:
-
-  06 Nov 1994 08:49:37
-  06-Nov-94 08:49:37
-
-  weird order:
-
-  1994 Nov 6 08:49:37  (GNU date fails)
-  GMT 08:49:37 06-Nov-94 Sunday
-  94 6 Nov 08:49:37    (GNU date fails)
-
-  time left out:
-
-  1994 Nov 6
-  06-Nov-94
-  Sun Nov 6 94
-
-  unusual separators:
-
-  1994.Nov.6
-  Sun/Nov/6/94/GMT
-
-  commonly used time zone names:
-
-  Sun, 06 Nov 1994 08:49:37 CET
-  06 Nov 1994 08:49:37 EST
-
-  time zones specified using RFC822 style:
-
-  Sun, 12 Sep 2004 15:05:58 -0700
-  Sat, 11 Sep 2004 21:32:11 +0200
-
-  compact numerical date strings:
-
-  20040912 15:05:58 -0700
-  20040911 +0200
-
-*/
-#include "setup.h"
-#include <stdio.h>
-#include <ctype.h>
-#include <string.h>
-
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h> /* for strtol() */
-#endif
-
-#include <curl/curl.h>
-#include "rawstr.h"
-#include "parsedate.h"
-
-const char * const Curl_wkday[] =
-{"Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"};
-static const char * const weekday[] =
-{ "Monday", "Tuesday", "Wednesday", "Thursday",
-  "Friday", "Saturday", "Sunday" };
-const char * const Curl_month[]=
-{ "Jan", "Feb", "Mar", "Apr", "May", "Jun",
-  "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
-
-struct tzinfo {
-  char name[5];
-  int offset; /* +/- in minutes */
-};
-
-/* Here's a bunch of frequently used time zone names. These were supported
-   by the old getdate parser. */
-#define tDAYZONE -60       /* offset for daylight savings time */
-static const struct tzinfo tz[]= {
-  {"GMT", 0},              /* Greenwich Mean */
-  {"UTC", 0},              /* Universal (Coordinated) */
-  {"WET", 0},              /* Western European */
-  {"BST", 0 tDAYZONE},     /* British Summer */
-  {"WAT", 60},             /* West Africa */
-  {"AST", 240},            /* Atlantic Standard */
-  {"ADT", 240 tDAYZONE},   /* Atlantic Daylight */
-  {"EST", 300},            /* Eastern Standard */
-  {"EDT", 300 tDAYZONE},   /* Eastern Daylight */
-  {"CST", 360},            /* Central Standard */
-  {"CDT", 360 tDAYZONE},   /* Central Daylight */
-  {"MST", 420},            /* Mountain Standard */
-  {"MDT", 420 tDAYZONE},   /* Mountain Daylight */
-  {"PST", 480},            /* Pacific Standard */
-  {"PDT", 480 tDAYZONE},   /* Pacific Daylight */
-  {"YST", 540},            /* Yukon Standard */
-  {"YDT", 540 tDAYZONE},   /* Yukon Daylight */
-  {"HST", 600},            /* Hawaii Standard */
-  {"HDT", 600 tDAYZONE},   /* Hawaii Daylight */
-  {"CAT", 600},            /* Central Alaska */
-  {"AHST", 600},           /* Alaska-Hawaii Standard */
-  {"NT",  660},            /* Nome */
-  {"IDLW", 720},           /* International Date Line West */
-  {"CET", -60},            /* Central European */
-  {"MET", -60},            /* Middle European */
-  {"MEWT", -60},           /* Middle European Winter */
-  {"MEST", -60 tDAYZONE},  /* Middle European Summer */
-  {"CEST", -60 tDAYZONE},  /* Central European Summer */
-  {"MESZ", -60 tDAYZONE},  /* Middle European Summer */
-  {"FWT", -60},            /* French Winter */
-  {"FST", -60 tDAYZONE},   /* French Summer */
-  {"EET", -120},           /* Eastern Europe, USSR Zone 1 */
-  {"WAST", -420},          /* West Australian Standard */
-  {"WADT", -420 tDAYZONE}, /* West Australian Daylight */
-  {"CCT", -480},           /* China Coast, USSR Zone 7 */
-  {"JST", -540},           /* Japan Standard, USSR Zone 8 */
-  {"EAST", -600},          /* Eastern Australian Standard */
-  {"EADT", -600 tDAYZONE}, /* Eastern Australian Daylight */
-  {"GST", -600},           /* Guam Standard, USSR Zone 9 */
-  {"NZT", -720},           /* New Zealand */
-  {"NZST", -720},          /* New Zealand Standard */
-  {"NZDT", -720 tDAYZONE}, /* New Zealand Daylight */
-  {"IDLE", -720},          /* International Date Line East */
-  /* Next up: Military timezone names. RFC822 allowed these, but (as noted in
-     RFC 1123) had their signs wrong. Here we use the correct signs to match
-     actual military usage.
-   */
-  {"A",  +1 * 60},         /* Alpha */
-  {"B",  +2 * 60},         /* Bravo */
-  {"C",  +3 * 60},         /* Charlie */
-  {"D",  +4 * 60},         /* Delta */
-  {"E",  +5 * 60},         /* Echo */
-  {"F",  +6 * 60},         /* Foxtrot */
-  {"G",  +7 * 60},         /* Golf */
-  {"H",  +8 * 60},         /* Hotel */
-  {"I",  +9 * 60},         /* India */
-  /* "J", Juliet is not used as a timezone, to indicate the observer's local time */
-  {"K", +10 * 60},         /* Kilo */
-  {"L", +11 * 60},         /* Lima */
-  {"M", +12 * 60},         /* Mike */
-  {"N",  -1 * 60},         /* November */
-  {"O",  -2 * 60},         /* Oscar */
-  {"P",  -3 * 60},         /* Papa */
-  {"Q",  -4 * 60},         /* Quebec */
-  {"R",  -5 * 60},         /* Romeo */
-  {"S",  -6 * 60},         /* Sierra */
-  {"T",  -7 * 60},         /* Tango */
-  {"U",  -8 * 60},         /* Uniform */
-  {"V",  -9 * 60},         /* Victor */
-  {"W", -10 * 60},         /* Whiskey */
-  {"X", -11 * 60},         /* X-ray */
-  {"Y", -12 * 60},         /* Yankee */
-  {"Z", 0},                /* Zulu, zero meridian, a.k.a. UTC */
-};
-
-/* returns:
-   -1 no day
-   0 monday - 6 sunday
-*/
-
-static int checkday(const char *check, size_t len)
-{
-  int i;
-  const char * const *what;
-  bool found= FALSE;
-  if(len > 3)
-    what = &weekday[0];
-  else
-    what = &Curl_wkday[0];
-  for(i=0; i<7; i++) {
-    if(Curl_raw_equal(check, what[0])) {
-      found=TRUE;
-      break;
-    }
-    what++;
-  }
-  return found?i:-1;
-}
-
-static int checkmonth(const char *check)
-{
-  int i;
-  const char * const *what;
-  bool found= FALSE;
-
-  what = &Curl_month[0];
-  for(i=0; i<12; i++) {
-    if(Curl_raw_equal(check, what[0])) {
-      found=TRUE;
-      break;
-    }
-    what++;
-  }
-  return found?i:-1; /* return the offset or -1, no real offset is -1 */
-}
-
-/* return the time zone offset between GMT and the input one, in number
-   of seconds or -1 if the timezone wasn't found/legal */
-
-static int checktz(const char *check)
-{
-  unsigned int i;
-  const struct tzinfo *what;
-  bool found= FALSE;
-
-  what = tz;
-  for(i=0; i< sizeof(tz)/sizeof(tz[0]); i++) {
-    if(Curl_raw_equal(check, what->name)) {
-      found=TRUE;
-      break;
-    }
-    what++;
-  }
-  return found?what->offset*60:-1;
-}
-
-static void skip(const char **date)
-{
-  /* skip everything that aren't letters or digits */
-  while(**date && !ISALNUM(**date))
-    (*date)++;
-}
-
-enum assume {
-  DATE_MDAY,
-  DATE_YEAR,
-  DATE_TIME
-};
-
-/* this is a clone of 'struct tm' but with all fields we don't need or use
-   cut out */
-struct my_tm {
-  int tm_sec;
-  int tm_min;
-  int tm_hour;
-  int tm_mday;
-  int tm_mon;
-  int tm_year;
-};
-
-/* struct tm to time since epoch in GMT time zone.
- * This is similar to the standard mktime function but for GMT only, and
- * doesn't suffer from the various bugs and portability problems that
- * some systems' implementations have.
- */
-static time_t my_timegm(struct my_tm *tm)
-{
-  static const int month_days_cumulative [12] =
-    { 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334 };
-  int month, year, leap_days;
-
-  if(tm->tm_year < 70)
-    /* we don't support years before 1970 as they will cause this function
-       to return a negative value */
-    return -1;
-
-  year = tm->tm_year + 1900;
-  month = tm->tm_mon;
-  if (month < 0) {
-    year += (11 - month) / 12;
-    month = 11 - (11 - month) % 12;
-  }
-  else if (month >= 12) {
-    year -= month / 12;
-    month = month % 12;
-  }
-
-  leap_days = year - (tm->tm_mon <= 1);
-  leap_days = ((leap_days / 4) - (leap_days / 100) + (leap_days / 400)
-               - (1969 / 4) + (1969 / 100) - (1969 / 400));
-
-  return ((((time_t) (year - 1970) * 365
-            + leap_days + month_days_cumulative [month] + tm->tm_mday - 1) * 24
-           + tm->tm_hour) * 60 + tm->tm_min) * 60 + tm->tm_sec;
-}
-
-/*
- * Curl_parsedate()
- *
- * Returns:
- *
- * PARSEDATE_OK     - a fine conversion
- * PARSEDATE_FAIL   - failed to convert
- * PARSEDATE_LATER  - time overflow at the far end of time_t
- * PARSEDATE_SOONER - time underflow at the low end of time_t
- */
-
-int Curl_parsedate(const char *date, time_t *output)
-{
-  time_t t = 0;
-  int wdaynum=-1;  /* day of the week number, 0-6 (mon-sun) */
-  int monnum=-1;   /* month of the year number, 0-11 */
-  int mdaynum=-1; /* day of month, 1 - 31 */
-  int hournum=-1;
-  int minnum=-1;
-  int secnum=-1;
-  int yearnum=-1;
-  int tzoff=-1;
-  struct my_tm tm;
-  enum assume dignext = DATE_MDAY;
-  const char *indate = date; /* save the original pointer */
-  int part = 0; /* max 6 parts */
-
-  while(*date && (part < 6)) {
-    bool found=FALSE;
-
-    skip(&date);
-
-    if(ISALPHA(*date)) {
-      /* a name coming up */
-      char buf[32]="";
-      size_t len;
-      sscanf(date, "%31[ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz]",
-             buf);
-      len = strlen(buf);
-
-      if(wdaynum == -1) {
-        wdaynum = checkday(buf, len);
-        if(wdaynum != -1)
-          found = TRUE;
-      }
-      if(!found && (monnum == -1)) {
-        monnum = checkmonth(buf);
-        if(monnum != -1)
-          found = TRUE;
-      }
-
-      if(!found && (tzoff == -1)) {
-        /* this just must be a time zone string */
-        tzoff = checktz(buf);
-        if(tzoff != -1)
-          found = TRUE;
-      }
-
-      if(!found)
-        return PARSEDATE_FAIL; /* bad string */
-
-      date += len;
-    }
-    else if(ISDIGIT(*date)) {
-      /* a digit */
-      int val;
-      char *end;
-      if((secnum == -1) &&
-         (3 == sscanf(date, "%02d:%02d:%02d", &hournum, &minnum, &secnum))) {
-        /* time stamp! */
-        date += 8;
-        found = TRUE;
-      }
-      else {
-        val = (int)strtol(date, &end, 10);
-
-        if((tzoff == -1) &&
-           ((end - date) == 4) &&
-           (val <= 1400) &&
-           (indate< date) &&
-           ((date[-1] == '+' || date[-1] == '-'))) {
-          /* four digits and a value less than or equal to 1400 (to take into
-             account all sorts of funny time zone diffs) and it is preceeded
-             with a plus or minus. This is a time zone indication.  1400 is
-             picked since +1300 is frequently used and +1400 is mentioned as
-             an edge number in the document "ISO C 200X Proposal: Timezone
-             Functions" at http://david.tribble.com/text/c0xtimezone.html If
-             anyone has a more authoritative source for the exact maximum time
-             zone offsets, please speak up! */
-          found = TRUE;
-          tzoff = (val/100 * 60 + val%100)*60;
-
-          /* the + and - prefix indicates the local time compared to GMT,
-             this we need ther reversed math to get what we want */
-          tzoff = date[-1]=='+'?-tzoff:tzoff;
-        }
-
-        if(((end - date) == 8) &&
-           (yearnum == -1) &&
-           (monnum == -1) &&
-           (mdaynum == -1)) {
-          /* 8 digits, no year, month or day yet. This is YYYYMMDD */
-          found = TRUE;
-          yearnum = val/10000;
-          monnum = (val%10000)/100-1; /* month is 0 - 11 */
-          mdaynum = val%100;
-        }
-
-        if(!found && (dignext == DATE_MDAY) && (mdaynum == -1)) {
-          if((val > 0) && (val<32)) {
-            mdaynum = val;
-            found = TRUE;
-          }
-          dignext = DATE_YEAR;
-        }
-
-        if(!found && (dignext == DATE_YEAR) && (yearnum == -1)) {
-          yearnum = val;
-          found = TRUE;
-          if(yearnum < 1900) {
-            if(yearnum > 70)
-              yearnum += 1900;
-            else
-              yearnum += 2000;
-          }
-          if(mdaynum == -1)
-            dignext = DATE_MDAY;
-        }
-
-        if(!found)
-          return PARSEDATE_FAIL;
-
-        date = end;
-      }
-    }
-
-    part++;
-  }
-
-  if(-1 == secnum)
-    secnum = minnum = hournum = 0; /* no time, make it zero */
-
-  if((-1 == mdaynum) ||
-     (-1 == monnum) ||
-     (-1 == yearnum))
-    /* lacks vital info, fail */
-    return PARSEDATE_FAIL;
-
-#if SIZEOF_TIME_T < 5
-  /* 32 bit time_t can only hold dates to the beginning of 2038 */
-  if(yearnum > 2037) {
-    *output = 0x7fffffff;
-    return PARSEDATE_LATER;
-  }
-#endif
-
-  if(yearnum < 1970) {
-    *output = 0;
-    return PARSEDATE_SOONER;
-  }
-
-  tm.tm_sec = secnum;
-  tm.tm_min = minnum;
-  tm.tm_hour = hournum;
-  tm.tm_mday = mdaynum;
-  tm.tm_mon = monnum;
-  tm.tm_year = yearnum - 1900;
-
-  /* my_timegm() returns a time_t. time_t is often 32 bits, even on many
-     architectures that feature 64 bit 'long'.
-
-     Some systems have 64 bit time_t and deal with years beyond 2038. However,
-     even on some of the systems with 64 bit time_t mktime() returns -1 for
-     dates beyond 03:14:07 UTC, January 19, 2038. (Such as AIX 5100-06)
-  */
-  t = my_timegm(&tm);
-
-  /* time zone adjust (cast t to int to compare to negative one) */
-  if(-1 != (int)t) {
-
-    /* Add the time zone diff between local time zone and GMT. */
-    long delta = (long)(tzoff!=-1?tzoff:0);
-
-    if((delta>0) && (t + delta < t))
-      return -1; /* time_t overflow */
-
-    t += delta;
-  }
-
-  *output = t;
-
-  return PARSEDATE_OK;
-}
-
-time_t curl_getdate(const char *p, const time_t *now)
-{
-  time_t parsed;
-  int rc = Curl_parsedate(p, &parsed);
-  (void)now; /* legacy argument from the past that we ignore */
-
-  switch(rc) {
-  case PARSEDATE_OK:
-  case PARSEDATE_LATER:
-  case PARSEDATE_SOONER:
-    return parsed;
-  }
-  /* everything else is fail */
-  return -1;
-}
diff --git a/src/other/curl/lib/parsedate.h b/src/other/curl/lib/parsedate.h
deleted file mode 100644
index e1bf544..0000000
--- a/src/other/curl/lib/parsedate.h
+++ /dev/null
@@ -1,46 +0,0 @@
-#ifndef __CURL_PARSEDATE_H
-#define __CURL_PARSEDATE_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-extern const char * const Curl_wkday[7];
-extern const char * const Curl_month[12];
-
-/*
- * Curl_parsedate()
- *
- * Returns:
- *
- * PARSEDATE_OK     - a fine conversion
- * PARSEDATE_FAIL   - failed to convert
- * PARSEDATE_LATER  - time overflow at the far end of time_t
- * PARSEDATE_SOONER - time underflow at the low end of time_t
- */
-
-int Curl_parsedate(const char *date, time_t *output);
-
-#define PARSEDATE_OK     0
-#define PARSEDATE_FAIL   -1
-#define PARSEDATE_LATER  1
-#define PARSEDATE_SOONER 2
-
-#endif
diff --git a/src/other/curl/lib/pingpong.c b/src/other/curl/lib/pingpong.c
deleted file mode 100644
index c6b6f2f..0000000
--- a/src/other/curl/lib/pingpong.c
+++ /dev/null
@@ -1,540 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- *   'pingpong' is for generic back-and-forth support functions used by FTP,
- *   IMAP, POP3, SMTP and whatever more that likes them.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include "urldata.h"
-#include "sendf.h"
-#include "select.h"
-#include "progress.h"
-#include "speedcheck.h"
-#include "pingpong.h"
-#include "multiif.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#ifdef USE_PINGPONG
-
-/* Returns timeout in ms. 0 or negative number means the timeout has already
-   triggered */
-long Curl_pp_state_timeout(struct pingpong *pp)
-{
-  struct connectdata *conn = pp->conn;
-  struct SessionHandle *data=conn->data;
-  long timeout_ms; /* in milliseconds */
-  long timeout2_ms; /* in milliseconds */
-  long response_time= (data->set.server_response_timeout)?
-    data->set.server_response_timeout: pp->response_time;
-
-  /* if CURLOPT_SERVER_RESPONSE_TIMEOUT is set, use that to determine
-     remaining time, or use pp->response because SERVER_RESPONSE_TIMEOUT is
-     supposed to govern the response for any given server response, not for
-     the time from connect to the given server response. */
-
-  /* Without a requested timeout, we only wait 'response_time' seconds for the
-     full response to arrive before we bail out */
-  timeout_ms = response_time -
-    Curl_tvdiff(Curl_tvnow(), pp->response); /* spent time */
-
-  if(data->set.timeout) {
-    /* if timeout is requested, find out how much remaining time we have */
-    timeout2_ms = data->set.timeout - /* timeout time */
-      Curl_tvdiff(Curl_tvnow(), conn->now); /* spent time */
-
-    /* pick the lowest number */
-    timeout_ms = CURLMIN(timeout_ms, timeout2_ms);
-  }
-
-  return timeout_ms;
-}
-
-
-/*
- * Curl_pp_multi_statemach()
- *
- * called repeatedly until done when the multi interface is used.
- */
-CURLcode Curl_pp_multi_statemach(struct pingpong *pp)
-{
-  struct connectdata *conn = pp->conn;
-  curl_socket_t sock = conn->sock[FIRSTSOCKET];
-  int rc;
-  struct SessionHandle *data=conn->data;
-  CURLcode result = CURLE_OK;
-  long timeout_ms = Curl_pp_state_timeout(pp);
-
-  if(timeout_ms <= 0) {
-    failf(data, "server response timeout");
-    return CURLE_OPERATION_TIMEDOUT;
-  }
-
-  rc = Curl_socket_ready(pp->sendleft?CURL_SOCKET_BAD:sock, /* reading */
-                         pp->sendleft?sock:CURL_SOCKET_BAD, /* writing */
-                         0);
-
-  if(rc == -1) {
-    failf(data, "select/poll error");
-    return CURLE_OUT_OF_MEMORY;
-  }
-  else if(rc != 0)
-    result = pp->statemach_act(conn);
-
-  /* if rc == 0, then select() timed out */
-
-  return result;
-}
-
-/*
- * Curl_pp_easy_statemach()
- *
- * called repeatedly until done when the easy interface is used.
- */
-CURLcode Curl_pp_easy_statemach(struct pingpong *pp)
-{
-  struct connectdata *conn = pp->conn;
-  curl_socket_t sock = conn->sock[FIRSTSOCKET];
-  int rc;
-  long interval_ms;
-  long timeout_ms = Curl_pp_state_timeout(pp);
-  struct SessionHandle *data=conn->data;
-  CURLcode result;
-
-  if(timeout_ms <=0 ) {
-    failf(data, "server response timeout");
-    return CURLE_OPERATION_TIMEDOUT; /* already too little time */
-  }
-
-  interval_ms = 1000;  /* use 1 second timeout intervals */
-  if(timeout_ms < interval_ms)
-    interval_ms = timeout_ms;
-
-  rc = Curl_socket_ready(pp->sendleft?CURL_SOCKET_BAD:sock, /* reading */
-                         pp->sendleft?sock:CURL_SOCKET_BAD, /* writing */
-                         (int)interval_ms);
-
-  if(Curl_pgrsUpdate(conn))
-    result = CURLE_ABORTED_BY_CALLBACK;
-  else
-    result = Curl_speedcheck(data, Curl_tvnow());
-
-  if(result)
-    ;
-  else if(rc == -1) {
-    failf(data, "select/poll error");
-    result = CURLE_OUT_OF_MEMORY;
-  }
-  else if(rc)
-    result = pp->statemach_act(conn);
-
-  return result;
-}
-
-/* initialize stuff to prepare for reading a fresh new response */
-void Curl_pp_init(struct pingpong *pp)
-{
-  struct connectdata *conn = pp->conn;
-  pp->nread_resp = 0;
-  pp->linestart_resp = conn->data->state.buffer;
-  pp->pending_resp = TRUE;
-  pp->response = Curl_tvnow(); /* start response time-out now! */
-}
-
-
-
-/***********************************************************************
- *
- * Curl_pp_sendfv()
- *
- * Send the formated string as a command to a pingpong server. Note that
- * the string should not have any CRLF appended, as this function will
- * append the necessary things itself.
- *
- * NOTE: we build the command in a fixed-length buffer, which sets length
- * restrictions on the command!
- *
- * made to never block
- */
-CURLcode Curl_pp_vsendf(struct pingpong *pp,
-                        const char *fmt,
-                        va_list args)
-{
-  ssize_t bytes_written;
-/* may still not be big enough for some krb5 tokens */
-#define SBUF_SIZE 1024
-  char s[SBUF_SIZE];
-  size_t write_len;
-  char *sptr=s;
-  CURLcode res = CURLE_OK;
-  struct connectdata *conn = pp->conn;
-  struct SessionHandle *data = conn->data;
-
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-  enum protection_level data_sec = conn->data_prot;
-#endif
-
-  vsnprintf(s, SBUF_SIZE-3, fmt, args);
-
-  strcat(s, "\r\n"); /* append a trailing CRLF */
-
-  bytes_written=0;
-  write_len = strlen(s);
-
-  Curl_pp_init(pp);
-
-#ifdef CURL_DOES_CONVERSIONS
-  res = Curl_convert_to_network(data, s, write_len);
-  /* Curl_convert_to_network calls failf if unsuccessful */
-  if(res != CURLE_OK) {
-    return res;
-  }
-#endif /* CURL_DOES_CONVERSIONS */
-
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-  conn->data_prot = prot_cmd;
-#endif
-  res = Curl_write(conn, conn->sock[FIRSTSOCKET], sptr, write_len,
-                   &bytes_written);
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-  conn->data_prot = data_sec;
-#endif
-
-  if(CURLE_OK != res)
-    return res;
-
-  if(conn->data->set.verbose)
-    Curl_debug(conn->data, CURLINFO_HEADER_OUT,
-               sptr, (size_t)bytes_written, conn);
-
-  if(bytes_written != (ssize_t)write_len) {
-    /* the whole chunk was not sent, store the rest of the data */
-    write_len -= bytes_written;
-    sptr += bytes_written;
-    pp->sendthis = malloc(write_len);
-    if(pp->sendthis) {
-      memcpy(pp->sendthis, sptr, write_len);
-      pp->sendsize = pp->sendleft = write_len;
-    }
-    else {
-      failf(data, "out of memory");
-      res = CURLE_OUT_OF_MEMORY;
-    }
-  }
-  else
-    pp->response = Curl_tvnow();
-
-  return res;
-}
-
-
-/***********************************************************************
- *
- * Curl_pp_sendf()
- *
- * Send the formated string as a command to a pingpong server. Note that
- * the string should not have any CRLF appended, as this function will
- * append the necessary things itself.
- *
- * NOTE: we build the command in a fixed-length buffer, which sets length
- * restrictions on the command!
- *
- * made to never block
- */
-CURLcode Curl_pp_sendf(struct pingpong *pp,
-                       const char *fmt, ...)
-{
-  CURLcode res;
-  va_list ap;
-  va_start(ap, fmt);
-
-  res = Curl_pp_vsendf(pp, fmt, ap);
-
-  va_end(ap);
-
-  return res;
-}
-
-/*
- * Curl_pp_readresp()
- *
- * Reads a piece of a server response.
- */
-CURLcode Curl_pp_readresp(curl_socket_t sockfd,
-                          struct pingpong *pp,
-                          int *code, /* return the server code if done */
-                          size_t *size) /* size of the response */
-{
-  ssize_t perline; /* count bytes per line */
-  bool keepon=TRUE;
-  ssize_t gotbytes;
-  char *ptr;
-  struct connectdata *conn = pp->conn;
-  struct SessionHandle *data = conn->data;
-  char * const buf = data->state.buffer;
-  CURLcode result = CURLE_OK;
-
-  *code = 0; /* 0 for errors or not done */
-  *size = 0;
-
-  ptr=buf + pp->nread_resp;
-
-  /* number of bytes in the current line, so far */
-  perline = (ssize_t)(ptr-pp->linestart_resp);
-
-  keepon=TRUE;
-
-  while((pp->nread_resp<BUFSIZE) && (keepon && !result)) {
-
-    if(pp->cache) {
-      /* we had data in the "cache", copy that instead of doing an actual
-       * read
-       *
-       * ftp->cache_size is cast to int here.  This should be safe,
-       * because it would have been populated with something of size
-       * int to begin with, even though its datatype may be larger
-       * than an int.
-       */
-      DEBUGASSERT((ptr+pp->cache_size) <= (buf+BUFSIZE+1));
-      memcpy(ptr, pp->cache, pp->cache_size);
-      gotbytes = pp->cache_size;
-      free(pp->cache);    /* free the cache */
-      pp->cache = NULL;   /* clear the pointer */
-      pp->cache_size = 0; /* zero the size just in case */
-    }
-    else {
-      int res;
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-      enum protection_level prot = conn->data_prot;
-
-      conn->data_prot = 0;
-#endif
-      DEBUGASSERT((ptr+BUFSIZE-pp->nread_resp) <= (buf+BUFSIZE+1));
-      res = Curl_read(conn, sockfd, ptr, BUFSIZE-pp->nread_resp,
-                      &gotbytes);
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-      conn->data_prot = prot;
-#endif
-      if(res < 0)
-        /* EWOULDBLOCK */
-        return CURLE_OK; /* return */
-
-#ifdef CURL_DOES_CONVERSIONS
-      if((res == CURLE_OK) && (gotbytes > 0)) {
-        /* convert from the network encoding */
-        res = Curl_convert_from_network(data, ptr, gotbytes);
-        /* Curl_convert_from_network calls failf if unsuccessful */
-      }
-#endif /* CURL_DOES_CONVERSIONS */
-
-      if(CURLE_OK != res) {
-        result = (CURLcode)res; /* Set outer result variable to this error. */
-        keepon = FALSE;
-      }
-    }
-
-    if(!keepon)
-      ;
-    else if(gotbytes <= 0) {
-      keepon = FALSE;
-      result = CURLE_RECV_ERROR;
-      failf(data, "FTP response reading failed");
-    }
-    else {
-      /* we got a whole chunk of data, which can be anything from one
-       * byte to a set of lines and possible just a piece of the last
-       * line */
-      ssize_t i;
-      ssize_t clipamount = 0;
-      bool restart = FALSE;
-
-      data->req.headerbytecount += (long)gotbytes;
-
-      pp->nread_resp += gotbytes;
-      for(i = 0; i < gotbytes; ptr++, i++) {
-        perline++;
-        if(*ptr=='\n') {
-          /* a newline is CRLF in ftp-talk, so the CR is ignored as
-             the line isn't really terminated until the LF comes */
-
-          /* output debug output if that is requested */
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-          if(!conn->sec_complete)
-#endif
-            if(data->set.verbose)
-            Curl_debug(data, CURLINFO_HEADER_IN,
-                       pp->linestart_resp, (size_t)perline, conn);
-
-          /*
-           * We pass all response-lines to the callback function registered
-           * for "headers". The response lines can be seen as a kind of
-           * headers.
-           */
-          result = Curl_client_write(conn, CLIENTWRITE_HEADER,
-                                     pp->linestart_resp, perline);
-          if(result)
-            return result;
-
-          if(pp->endofresp(pp, code)) {
-            /* This is the end of the last line, copy the last line to the
-               start of the buffer and zero terminate, for old times sake (and
-               krb4)! */
-            char *meow;
-            int n;
-            for(meow=pp->linestart_resp, n=0; meow<ptr; meow++, n++)
-              buf[n] = *meow;
-            *meow=0; /* zero terminate */
-            keepon=FALSE;
-            pp->linestart_resp = ptr+1; /* advance pointer */
-            i++; /* skip this before getting out */
-
-            *size = pp->nread_resp; /* size of the response */
-            pp->nread_resp = 0; /* restart */
-            break;
-          }
-          perline=0; /* line starts over here */
-          pp->linestart_resp = ptr+1;
-        }
-      }
-
-      if(!keepon && (i != gotbytes)) {
-        /* We found the end of the response lines, but we didn't parse the
-           full chunk of data we have read from the server. We therefore need
-           to store the rest of the data to be checked on the next invoke as
-           it may actually contain another end of response already! */
-        clipamount = gotbytes - i;
-        restart = TRUE;
-      }
-      else if(keepon) {
-
-        if((perline == gotbytes) && (gotbytes > BUFSIZE/2)) {
-          /* We got an excessive line without newlines and we need to deal
-             with it. We keep the first bytes of the line then we throw
-             away the rest. */
-          infof(data, "Excessive server response line length received, %zd bytes."
-                " Stripping\n", gotbytes);
-          restart = TRUE;
-
-          /* we keep 40 bytes since all our pingpong protocols are only
-             interested in the first piece */
-          clipamount = 40;
-        }
-        else if(pp->nread_resp > BUFSIZE/2) {
-          /* We got a large chunk of data and there's potentially still trailing
-             data to take care of, so we put any such part in the "cache", clear
-             the buffer to make space and restart. */
-          clipamount = perline;
-          restart = TRUE;
-        }
-      }
-      else if(i == gotbytes)
-        restart = TRUE;
-
-      if(clipamount) {
-        pp->cache_size = clipamount;
-        pp->cache = malloc(pp->cache_size);
-        if(pp->cache)
-          memcpy(pp->cache, pp->linestart_resp, pp->cache_size);
-        else
-          return CURLE_OUT_OF_MEMORY;
-      }
-      if(restart) {
-        /* now reset a few variables to start over nicely from the start of
-           the big buffer */
-        pp->nread_resp = 0; /* start over from scratch in the buffer */
-        ptr = pp->linestart_resp = buf;
-        perline = 0;
-      }
-
-    } /* there was data */
-
-  } /* while there's buffer left and loop is requested */
-
-  pp->pending_resp = FALSE;
-
-  return result;
-}
-
-int Curl_pp_getsock(struct pingpong *pp,
-                    curl_socket_t *socks,
-                    int numsocks)
-{
-  struct connectdata *conn = pp->conn;
-
-  if(!numsocks)
-    return GETSOCK_BLANK;
-
-  socks[0] = conn->sock[FIRSTSOCKET];
-
-  if(pp->sendleft) {
-    /* write mode */
-    return GETSOCK_WRITESOCK(0);
-  }
-
-  /* read mode */
-  return GETSOCK_READSOCK(0);
-}
-
-CURLcode Curl_pp_flushsend(struct pingpong *pp)
-{
-  /* we have a piece of a command still left to send */
-  struct connectdata *conn = pp->conn;
-  ssize_t written;
-  CURLcode result = CURLE_OK;
-  curl_socket_t sock = conn->sock[FIRSTSOCKET];
-
-  result = Curl_write(conn, sock, pp->sendthis + pp->sendsize -
-                      pp->sendleft, pp->sendleft, &written);
-  if(result)
-    return result;
-
-  if(written != (ssize_t)pp->sendleft) {
-    /* only a fraction was sent */
-    pp->sendleft -= written;
-  }
-  else {
-    free(pp->sendthis);
-    pp->sendthis=NULL;
-    pp->sendleft = pp->sendsize = 0;
-    pp->response = Curl_tvnow();
-  }
-  return CURLE_OK;
-}
-
-CURLcode Curl_pp_disconnect(struct pingpong *pp)
-{
-  if(pp->cache) {
-    free(pp->cache);
-    pp->cache = NULL;
-  }
-  return CURLE_OK;
-}
-
-
-
-#endif
diff --git a/src/other/curl/lib/pingpong.h b/src/other/curl/lib/pingpong.h
deleted file mode 100644
index a629aee..0000000
--- a/src/other/curl/lib/pingpong.h
+++ /dev/null
@@ -1,147 +0,0 @@
-#ifndef __PINGPONG_H
-#define __PINGPONG_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include <stdarg.h>
-
-#include "setup.h"
-
-#if !defined(CURL_DISABLE_IMAP) || !defined(CURL_DISABLE_FTP) || \
-  !defined(CURL_DISABLE_POP3) || !defined(CURL_DISABLE_SMTP)
-#define USE_PINGPONG
-#endif
-
-/* forward-declaration, this is defined in urldata.h */
-struct connectdata;
-
-/*
- * 'pingpong' is the generic struct used for protocols doing server<->client
- * conversations in a back-and-forth style such as FTP, IMAP, POP3, SMTP etc.
- *
- * It holds response cache and non-blocking sending data.
- */
-struct pingpong {
-  char *cache;     /* data cache between getresponse()-calls */
-  size_t cache_size;  /* size of cache in bytes */
-  size_t nread_resp;  /* number of bytes currently read of a server response */
-  char *linestart_resp; /* line start pointer for the server response
-                           reader function */
-  bool pending_resp;  /* set TRUE when a server response is pending or in
-                         progress, and is cleared once the last response is
-                         read */
-  char *sendthis; /* allocated pointer to a buffer that is to be sent to the
-                     server */
-  size_t sendleft; /* number of bytes left to send from the sendthis buffer */
-  size_t sendsize; /* total size of the sendthis buffer */
-  struct timeval response; /* set to Curl_tvnow() when a command has been sent
-                              off, used to time-out response reading */
-  long response_time; /* When no timeout is given, this is the amount of
-                         seconds we await for a server response. */
-
-  struct connectdata *conn; /* points to the connectdata struct that this
-                               belongs to */
-
-  /* Function pointers the protocols MUST implement and provide for the
-     pingpong layer to function */
-
-  CURLcode (*statemach_act)(struct connectdata *conn);
-
-  int (*endofresp)(struct pingpong *pp, int *code);
-};
-
-/*
- * Curl_pp_multi_statemach()
- *
- * called repeatedly until done when the multi interface is used.
- */
-CURLcode Curl_pp_multi_statemach(struct pingpong *pp);
-
-/*
- * Curl_pp_easy_statemach()
- *
- * called repeatedly until done when the easy interface is used.
- */
-CURLcode Curl_pp_easy_statemach(struct pingpong *pp);
-
-
-/* initialize stuff to prepare for reading a fresh new response */
-void Curl_pp_init(struct pingpong *pp);
-
-/* Returns timeout in ms. 0 or negative number means the timeout has already
-   triggered */
-long Curl_pp_state_timeout(struct pingpong *pp);
-
-
-/***********************************************************************
- *
- * Curl_pp_sendf()
- *
- * Send the formated string as a command to a pingpong server. Note that
- * the string should not have any CRLF appended, as this function will
- * append the necessary things itself.
- *
- * NOTE: we build the command in a fixed-length buffer, which sets length
- * restrictions on the command!
- *
- * made to never block
- */
-CURLcode Curl_pp_sendf(struct pingpong *pp,
-                       const char *fmt, ...);
-
-/***********************************************************************
- *
- * Curl_pp_vsendf()
- *
- * Send the formated string as a command to a pingpong server. Note that
- * the string should not have any CRLF appended, as this function will
- * append the necessary things itself.
- *
- * NOTE: we build the command in a fixed-length buffer, which sets length
- * restrictions on the command!
- *
- * made to never block
- */
-CURLcode Curl_pp_vsendf(struct pingpong *pp,
-                        const char *fmt,
-                        va_list args);
-
-/*
- * Curl_pp_readresp()
- *
- * Reads a piece of a server response.
- */
-CURLcode Curl_pp_readresp(curl_socket_t sockfd,
-                          struct pingpong *pp,
-                          int *code, /* return the server code if done */
-                          size_t *size); /* size of the response */
-
-
-CURLcode Curl_pp_flushsend(struct pingpong *pp);
-
-/* call this when a pingpong connection is disconnected */
-CURLcode Curl_pp_disconnect(struct pingpong *pp);
-
-int Curl_pp_getsock(struct pingpong *pp, curl_socket_t *socks,
-                    int numsocks);
-
-#endif /* __PINGPONG_H */
diff --git a/src/other/curl/lib/pop3.c b/src/other/curl/lib/pop3.c
deleted file mode 100644
index 4894f3c..0000000
--- a/src/other/curl/lib/pop3.c
+++ /dev/null
@@ -1,1024 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- * RFC1939 POP3 protocol
- * RFC2384 POP URL Scheme
- * RFC2595 Using TLS with IMAP, POP3 and ACAP
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_POP3
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <ctype.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_UTSNAME_H
-#include <sys/utsname.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#endif
-
-#if (defined(NETWARE) && defined(__NOVELL_LIBC__))
-#undef in_addr_t
-#define in_addr_t unsigned long
-#endif
-
-#include <curl/curl.h>
-#include "urldata.h"
-#include "sendf.h"
-#include "easyif.h" /* for Curl_convert_... prototypes */
-
-#include "if2ip.h"
-#include "hostip.h"
-#include "progress.h"
-#include "transfer.h"
-#include "escape.h"
-#include "http.h" /* for HTTP proxy tunnel stuff */
-#include "socks.h"
-#include "pop3.h"
-
-#include "strtoofft.h"
-#include "strequal.h"
-#include "sslgen.h"
-#include "connect.h"
-#include "strerror.h"
-#include "select.h"
-#include "multiif.h"
-#include "url.h"
-#include "rawstr.h"
-#include "strtoofft.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/* Local API functions */
-static CURLcode pop3_parse_url_path(struct connectdata *conn);
-static CURLcode pop3_regular_transfer(struct connectdata *conn, bool *done);
-static CURLcode pop3_do(struct connectdata *conn, bool *done);
-static CURLcode pop3_done(struct connectdata *conn,
-                          CURLcode, bool premature);
-static CURLcode pop3_connect(struct connectdata *conn, bool *done);
-static CURLcode pop3_disconnect(struct connectdata *conn);
-static CURLcode pop3_multi_statemach(struct connectdata *conn, bool *done);
-static int pop3_getsock(struct connectdata *conn,
-                        curl_socket_t *socks,
-                        int numsocks);
-static CURLcode pop3_doing(struct connectdata *conn,
-                           bool *dophase_done);
-static CURLcode pop3_setup_connection(struct connectdata * conn);
-
-/*
- * POP3 protocol handler.
- */
-
-const struct Curl_handler Curl_handler_pop3 = {
-  "POP3",                           /* scheme */
-  pop3_setup_connection,            /* setup_connection */
-  pop3_do,                          /* do_it */
-  pop3_done,                        /* done */
-  ZERO_NULL,                        /* do_more */
-  pop3_connect,                     /* connect_it */
-  pop3_multi_statemach,             /* connecting */
-  pop3_doing,                       /* doing */
-  pop3_getsock,                     /* proto_getsock */
-  pop3_getsock,                     /* doing_getsock */
-  ZERO_NULL,                        /* perform_getsock */
-  pop3_disconnect,                  /* disconnect */
-  PORT_POP3,                        /* defport */
-  PROT_POP3                         /* protocol */
-};
-
-
-#ifdef USE_SSL
-/*
- * POP3S protocol handler.
- */
-
-const struct Curl_handler Curl_handler_pop3s = {
-  "POP3S",                          /* scheme */
-  pop3_setup_connection,            /* setup_connection */
-  pop3_do,                          /* do_it */
-  pop3_done,                        /* done */
-  ZERO_NULL,                        /* do_more */
-  pop3_connect,                     /* connect_it */
-  pop3_multi_statemach,             /* connecting */
-  pop3_doing,                       /* doing */
-  pop3_getsock,                     /* proto_getsock */
-  pop3_getsock,                     /* doing_getsock */
-  ZERO_NULL,                        /* perform_getsock */
-  pop3_disconnect,                  /* disconnect */
-  PORT_POP3S,                       /* defport */
-  PROT_POP3 | PROT_POP3S | PROT_SSL  /* protocol */
-};
-#endif
-
-#ifndef CURL_DISABLE_HTTP
-/*
- * HTTP-proxyed POP3 protocol handler.
- */
-
-static const struct Curl_handler Curl_handler_pop3_proxy = {
-  "POP3",                               /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_http,                            /* do_it */
-  Curl_http_done,                       /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_POP3,                            /* defport */
-  PROT_HTTP                             /* protocol */
-};
-
-
-#ifdef USE_SSL
-/*
- * HTTP-proxyed POP3S protocol handler.
- */
-
-static const struct Curl_handler Curl_handler_pop3s_proxy = {
-  "POP3S",                              /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_http,                            /* do_it */
-  Curl_http_done,                       /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_POP3S,                           /* defport */
-  PROT_HTTP                             /* protocol */
-};
-#endif
-#endif
-
-
-/* function that checks for a pop3 status code at the start of the given
-   string */
-static int pop3_endofresp(struct pingpong *pp,
-                          int *resp)
-{
-  char *line = pp->linestart_resp;
-  size_t len = pp->nread_resp;
-
-  if( ((len >= 3) && !memcmp("+OK", line, 3)) ||
-      ((len >= 4) && !memcmp("-ERR", line, 4)) ) {
-    *resp=line[1]; /* O or E */
-    return TRUE;
-  }
-
-  return FALSE; /* nothing for us */
-}
-
-/* This is the ONLY way to change POP3 state! */
-static void state(struct connectdata *conn,
-                  pop3state newstate)
-{
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
-  /* for debug purposes */
-  static const char * const names[]={
-    "STOP",
-    "SERVERGREET",
-    "USER",
-    "PASS",
-    "STARTTLS",
-    "LIST",
-    "RETR",
-    "QUIT",
-    /* LAST */
-  };
-#endif
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
-  if(pop3c->state != newstate)
-    infof(conn->data, "POP3 %p state change from %s to %s\n",
-          pop3c, names[pop3c->state], names[newstate]);
-#endif
-  pop3c->state = newstate;
-}
-
-static CURLcode pop3_state_user(struct connectdata *conn)
-{
-  CURLcode result;
-  struct FTP *pop3 = conn->data->state.proto.pop3;
-
-  /* send USER */
-  result = Curl_pp_sendf(&conn->proto.pop3c.pp, "USER %s",
-                         pop3->user?pop3->user:"");
-  if(result)
-    return result;
-
-  state(conn, POP3_USER);
-
-  return CURLE_OK;
-}
-
-/* For the POP3 "protocol connect" and "doing" phases only */
-static int pop3_getsock(struct connectdata *conn,
-                        curl_socket_t *socks,
-                        int numsocks)
-{
-  return Curl_pp_getsock(&conn->proto.pop3c.pp, socks, numsocks);
-}
-
-/* for STARTTLS responses */
-static CURLcode pop3_state_starttls_resp(struct connectdata *conn,
-                                         int pop3code,
-                                         pop3state instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  (void)instate; /* no use for this yet */
-
-  if(pop3code != 'O') {
-    failf(data, "STARTTLS denied. %c", pop3code);
-    result = CURLE_LOGIN_DENIED;
-  }
-  else {
-    /* Curl_ssl_connect is BLOCKING */
-    result = Curl_ssl_connect(conn, FIRSTSOCKET);
-    if(CURLE_OK == result) {
-      conn->protocol |= PROT_POP3S;
-      result = pop3_state_user(conn);
-    }
-  }
-  state(conn, POP3_STOP);
-  return result;
-}
-
-/* for USER responses */
-static CURLcode pop3_state_user_resp(struct connectdata *conn,
-                                     int pop3code,
-                                     pop3state instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct FTP *pop3 = data->state.proto.pop3;
-
-  (void)instate; /* no use for this yet */
-
-  if(pop3code != 'O') {
-    failf(data, "Access denied. %c", pop3code);
-    result = CURLE_LOGIN_DENIED;
-  }
-
-  /* send PASS */
-  result = Curl_pp_sendf(&conn->proto.pop3c.pp, "PASS %s",
-                         pop3->passwd?pop3->passwd:"");
-  if(result)
-    return result;
-
-  state(conn, POP3_PASS);
-  return result;
-}
-
-/* for PASS responses */
-static CURLcode pop3_state_pass_resp(struct connectdata *conn,
-                                     int pop3code,
-                                     pop3state instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  (void)instate; /* no use for this yet */
-
-  if(pop3code != 'O') {
-    failf(data, "Access denied. %c", pop3code);
-    result = CURLE_LOGIN_DENIED;
-  }
-
-  state(conn, POP3_STOP);
-  return result;
-}
-
-/* for the retr response */
-static CURLcode pop3_state_retr_resp(struct connectdata *conn,
-                                     int pop3code,
-                                     pop3state instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct FTP *pop3 = data->state.proto.pop3;
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
-  struct pingpong *pp = &pop3c->pp;
-
-  (void)instate; /* no use for this yet */
-
-  if('O' != pop3code) {
-    state(conn, POP3_STOP);
-    return CURLE_RECV_ERROR;
-  }
-
-  /* POP3 download */
-  result=Curl_setup_transfer(conn, FIRSTSOCKET, -1, FALSE,
-                             pop3->bytecountp,
-                             -1, NULL); /* no upload here */
-
-  if(pp->cache) {
-    /* At this point there is a bunch of data in the header "cache" that is
-       actually body content, send it as body and then skip it. Do note
-       that there may even be additional "headers" after the body. */
-
-    /* we may get the EOB already here! */
-    result = Curl_pop3_write(conn, pp->cache, pp->cache_size);
-    if(result)
-      return result;
-
-    /* cache is drained */
-    free(pp->cache);
-    pp->cache = NULL;
-    pp->cache_size = 0;
-  }
-
-  state(conn, POP3_STOP);
-  return result;
-}
-
-
-/* for the list response */
-static CURLcode pop3_state_list_resp(struct connectdata *conn,
-                                     int pop3code,
-                                     pop3state instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct FTP *pop3 = data->state.proto.pop3;
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
-  struct pingpong *pp = &pop3c->pp;
-
-  (void)instate; /* no use for this yet */
-
-  if('O' != pop3code) {
-    state(conn, POP3_STOP);
-    return CURLE_RECV_ERROR;
-  }
-
-  /* POP3 download */
-  result=Curl_setup_transfer(conn, FIRSTSOCKET, -1, FALSE,
-                             pop3->bytecountp,
-                             -1, NULL); /* no upload here */
-
-  if(pp->cache) {
-    /* cache holds the email ID listing */
-
-    /* we may get the EOB already here! */
-    result = Curl_pop3_write(conn, pp->cache, pp->cache_size);
-    if(result)
-      return result;
-
-    /* cache is drained */
-    free(pp->cache);
-    pp->cache = NULL;
-    pp->cache_size = 0;
-  }
-
-  state(conn, POP3_STOP);
-  return result;
-}
-
-/* start the DO phase for RETR */
-static CURLcode pop3_retr(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
-
-  result = Curl_pp_sendf(&conn->proto.pop3c.pp, "RETR %s", pop3c->mailbox);
-  if(result)
-    return result;
-
-  state(conn, POP3_RETR);
-  return result;
-}
-
-/* start the DO phase for LIST */
-static CURLcode pop3_list(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
-
-  result = Curl_pp_sendf(&conn->proto.pop3c.pp, "LIST %s", pop3c->mailbox);
-  if(result)
-    return result;
-
-  state(conn, POP3_LIST);
-  return result;
-}
-
-static CURLcode pop3_statemach_act(struct connectdata *conn)
-{
-  CURLcode result;
-  curl_socket_t sock = conn->sock[FIRSTSOCKET];
-  struct SessionHandle *data=conn->data;
-  int pop3code;
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
-  struct pingpong *pp = &pop3c->pp;
-  size_t nread = 0;
-
-  if(pp->sendleft)
-    return Curl_pp_flushsend(pp);
-
-  /* we read a piece of response */
-  result = Curl_pp_readresp(sock, pp, &pop3code, &nread);
-  if(result)
-    return result;
-
-  if(pop3code) {
-    /* we have now received a full POP3 server response */
-    switch(pop3c->state) {
-    case POP3_SERVERGREET:
-      if(pop3code != 'O') {
-        failf(data, "Got unexpected pop3-server response");
-        return CURLE_FTP_WEIRD_SERVER_REPLY;
-      }
-
-      if(data->set.ftp_ssl && !conn->ssl[FIRSTSOCKET].use) {
-        /* We don't have a SSL/TLS connection yet, but SSL is requested. Switch
-           to TLS connection now */
-        result = Curl_pp_sendf(&pop3c->pp, "STARTTLS", NULL);
-        state(conn, POP3_STARTTLS);
-      }
-      else
-        result = pop3_state_user(conn);
-      if(result)
-        return result;
-      break;
-
-    case POP3_USER:
-      result = pop3_state_user_resp(conn, pop3code, pop3c->state);
-      break;
-
-    case POP3_PASS:
-      result = pop3_state_pass_resp(conn, pop3code, pop3c->state);
-      break;
-
-    case POP3_STARTTLS:
-      result = pop3_state_starttls_resp(conn, pop3code, pop3c->state);
-      break;
-
-    case POP3_RETR:
-      result = pop3_state_retr_resp(conn, pop3code, pop3c->state);
-      break;
-
-    case POP3_LIST:
-      result = pop3_state_list_resp(conn, pop3code, pop3c->state);
-      break;
-
-    case POP3_QUIT:
-      /* fallthrough, just stop! */
-    default:
-      /* internal error */
-      state(conn, POP3_STOP);
-      break;
-    }
-  }
-  return result;
-}
-
-/* called repeatedly until done from multi.c */
-static CURLcode pop3_multi_statemach(struct connectdata *conn, bool *done)
-{
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
-  CURLcode result = Curl_pp_multi_statemach(&pop3c->pp);
-
-  *done = (bool)(pop3c->state == POP3_STOP);
-
-  return result;
-}
-
-static CURLcode pop3_easy_statemach(struct connectdata *conn)
-{
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
-  struct pingpong *pp = &pop3c->pp;
-  CURLcode result = CURLE_OK;
-
-  while(pop3c->state != POP3_STOP) {
-    result = Curl_pp_easy_statemach(pp);
-    if(result)
-      break;
-  }
-
-  return result;
-}
-
-/*
- * Allocate and initialize the struct POP3 for the current SessionHandle.  If
- * need be.
- */
-static CURLcode pop3_init(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  struct FTP *pop3 = data->state.proto.pop3;
-  if(!pop3) {
-    pop3 = data->state.proto.pop3 = calloc(sizeof(struct FTP), 1);
-    if(!pop3)
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-  /* get some initial data into the pop3 struct */
-  pop3->bytecountp = &data->req.bytecount;
-
-  /* No need to duplicate user+password, the connectdata struct won't change
-     during a session, but we re-init them here since on subsequent inits
-     since the conn struct may have changed or been replaced.
-  */
-  pop3->user = conn->user;
-  pop3->passwd = conn->passwd;
-
-  return CURLE_OK;
-}
-
-/*
- * pop3_connect() should do everything that is to be considered a part of
- * the connection phase.
- *
- * The variable 'done' points to will be TRUE if the protocol-layer connect
- * phase is done when this function returns, or FALSE is not. When called as
- * a part of the easy interface, it will always be TRUE.
- */
-static CURLcode pop3_connect(struct connectdata *conn,
-                                 bool *done) /* see description above */
-{
-  CURLcode result;
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
-  struct SessionHandle *data=conn->data;
-  struct pingpong *pp = &pop3c->pp;
-
-  *done = FALSE; /* default to not done yet */
-
-  /* If there already is a protocol-specific struct allocated for this
-     sessionhandle, deal with it */
-  Curl_reset_reqproto(conn);
-
-  result = pop3_init(conn);
-  if(CURLE_OK != result)
-    return result;
-
-  /* We always support persistant connections on pop3 */
-  conn->bits.close = FALSE;
-
-  pp->response_time = RESP_TIMEOUT; /* set default response time-out */
-  pp->statemach_act = pop3_statemach_act;
-  pp->endofresp = pop3_endofresp;
-  pp->conn = conn;
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_PROXY)
-  if(conn->bits.tunnel_proxy && conn->bits.httpproxy) {
-    /* for POP3 over HTTP proxy */
-    struct HTTP http_proxy;
-    struct FTP *pop3_save;
-
-    /* BLOCKING */
-    /* We want "seamless" POP3 operations through HTTP proxy tunnel */
-
-    /* Curl_proxyCONNECT is based on a pointer to a struct HTTP at the member
-     * conn->proto.http; we want POP3 through HTTP and we have to change the
-     * member temporarily for connecting to the HTTP proxy. After
-     * Curl_proxyCONNECT we have to set back the member to the original struct
-     * POP3 pointer
-     */
-    pop3_save = data->state.proto.pop3;
-    memset(&http_proxy, 0, sizeof(http_proxy));
-    data->state.proto.http = &http_proxy;
-
-    result = Curl_proxyCONNECT(conn, FIRSTSOCKET,
-                               conn->host.name, conn->remote_port);
-
-    data->state.proto.pop3 = pop3_save;
-
-    if(CURLE_OK != result)
-      return result;
-  }
-#endif /* !CURL_DISABLE_HTTP && !CURL_DISABLE_PROXY */
-
-  if(conn->protocol & PROT_POP3S) {
-    /* BLOCKING */
-    /* POP3S is simply pop3 with SSL for the control channel */
-    /* now, perform the SSL initialization for this socket */
-    result = Curl_ssl_connect(conn, FIRSTSOCKET);
-    if(result)
-      return result;
-  }
-
-  Curl_pp_init(pp); /* init the response reader stuff */
-
-  /* When we connect, we start in the state where we await the server greet
-     response */
-  state(conn, POP3_SERVERGREET);
-
-  if(data->state.used_interface == Curl_if_multi)
-    result = pop3_multi_statemach(conn, done);
-  else {
-    result = pop3_easy_statemach(conn);
-    if(!result)
-      *done = TRUE;
-  }
-
-  return result;
-}
-
-/***********************************************************************
- *
- * pop3_done()
- *
- * The DONE function. This does what needs to be done after a single DO has
- * performed.
- *
- * Input argument is already checked for validity.
- */
-static CURLcode pop3_done(struct connectdata *conn, CURLcode status,
-                          bool premature)
-{
-  struct SessionHandle *data = conn->data;
-  struct FTP *pop3 = data->state.proto.pop3;
-  CURLcode result=CURLE_OK;
-  (void)premature;
-
-  if(!pop3)
-    /* When the easy handle is removed from the multi while libcurl is still
-     * trying to resolve the host name, it seems that the pop3 struct is not
-     * yet initialized, but the removal action calls Curl_done() which calls
-     * this function. So we simply return success if no pop3 pointer is set.
-     */
-    return CURLE_OK;
-
-  if(status) {
-    conn->bits.close = TRUE; /* marked for closure */
-    result = status;      /* use the already set error code */
-  }
-
-  /* clear these for next connection */
-  pop3->transfer = FTPTRANSFER_BODY;
-
-  return result;
-}
-
-/***********************************************************************
- *
- * pop3_perform()
- *
- * This is the actual DO function for POP3. Get a file/directory according to
- * the options previously setup.
- */
-
-static
-CURLcode pop3_perform(struct connectdata *conn,
-                     bool *connected,  /* connect status after PASV / PORT */
-                     bool *dophase_done)
-{
-  /* this is POP3 and no proxy */
-  CURLcode result=CURLE_OK;
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
-
-  DEBUGF(infof(conn->data, "DO phase starts\n"));
-
-  if(conn->data->set.opt_no_body) {
-    /* requested no body means no transfer... */
-    struct FTP *pop3 = conn->data->state.proto.pop3;
-    pop3->transfer = FTPTRANSFER_INFO;
-  }
-
-  *dophase_done = FALSE; /* not done yet */
-
-  /* start the first command in the DO phase */
-  /* If mailbox is empty, then assume user wants listing for mail IDs,
-   * otherwise, attempt to retrieve the mail-id stored in mailbox
-   */
-  if (strlen(pop3c->mailbox))
-    result = pop3_retr(conn);
-  else
-    result = pop3_list(conn);
-  if(result)
-    return result;
-
-  /* run the state-machine */
-  if(conn->data->state.used_interface == Curl_if_multi)
-    result = pop3_multi_statemach(conn, dophase_done);
-  else {
-    result = pop3_easy_statemach(conn);
-    *dophase_done = TRUE; /* with the easy interface we are done here */
-  }
-  *connected = conn->bits.tcpconnect;
-
-  if(*dophase_done)
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-
-  return result;
-}
-
-/***********************************************************************
- *
- * pop3_do()
- *
- * This function is registered as 'curl_do' function. It decodes the path
- * parts etc as a wrapper to the actual DO function (pop3_perform).
- *
- * The input argument is already checked for validity.
- */
-static CURLcode pop3_do(struct connectdata *conn, bool *done)
-{
-  CURLcode retcode = CURLE_OK;
-
-  *done = FALSE; /* default to false */
-
-  /*
-    Since connections can be re-used between SessionHandles, this might be a
-    connection already existing but on a fresh SessionHandle struct so we must
-    make sure we have a good 'struct POP3' to play with. For new connections,
-    the struct POP3 is allocated and setup in the pop3_connect() function.
-  */
-  Curl_reset_reqproto(conn);
-  retcode = pop3_init(conn);
-  if(retcode)
-    return retcode;
-
-  retcode = pop3_parse_url_path(conn);
-  if(retcode)
-    return retcode;
-
-  retcode = pop3_regular_transfer(conn, done);
-
-  return retcode;
-}
-
-/***********************************************************************
- *
- * pop3_quit()
- *
- * This should be called before calling sclose().  We should then wait for the
- * response from the server before returning. The calling code should then try
- * to close the connection.
- *
- */
-static CURLcode pop3_quit(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-
-  result = Curl_pp_sendf(&conn->proto.pop3c.pp, "QUIT", NULL);
-  if(result)
-    return result;
-  state(conn, POP3_QUIT);
-
-  result = pop3_easy_statemach(conn);
-
-  return result;
-}
-
-/***********************************************************************
- *
- * pop3_disconnect()
- *
- * Disconnect from an POP3 server. Cleanup protocol-specific per-connection
- * resources. BLOCKING.
- */
-static CURLcode pop3_disconnect(struct connectdata *conn)
-{
-  struct pop3_conn *pop3c= &conn->proto.pop3c;
-
-  /* We cannot send quit unconditionally. If this connection is stale or
-     bad in any way, sending quit and waiting around here will make the
-     disconnect wait in vain and cause more problems than we need to.
-  */
-
-  /* The POP3 session may or may not have been allocated/setup at this
-     point! */
-  (void)pop3_quit(conn); /* ignore errors on the LOGOUT */
-
-
-  Curl_pp_disconnect(&pop3c->pp);
-
-  return CURLE_OK;
-}
-
-/***********************************************************************
- *
- * pop3_parse_url_path()
- *
- * Parse the URL path into separate path components.
- *
- */
-static CURLcode pop3_parse_url_path(struct connectdata *conn)
-{
-  /* the pop3 struct is already inited in pop3_connect() */
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
-  struct SessionHandle *data = conn->data;
-  const char *path = data->state.path;
-  int len;
-
-  /* url decode the path and use this mailbox */
-  pop3c->mailbox = curl_easy_unescape(data, path, 0, &len);
-
-  return CURLE_OK;
-}
-
-/* call this when the DO phase has completed */
-static CURLcode pop3_dophase_done(struct connectdata *conn,
-                                  bool connected)
-{
-  CURLcode result = CURLE_OK;
-  struct FTP *pop3 = conn->data->state.proto.pop3;
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
- (void)connected;
-
-  if(pop3->transfer != FTPTRANSFER_BODY)
-    /* no data to transfer */
-    result=Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-
-  free(pop3c->mailbox);
-
-  return result;
-}
-
-/* called from multi.c while DOing */
-static CURLcode pop3_doing(struct connectdata *conn,
-                               bool *dophase_done)
-{
-  CURLcode result;
-  result = pop3_multi_statemach(conn, dophase_done);
-
-  if(*dophase_done) {
-    result = pop3_dophase_done(conn, FALSE /* not connected */);
-
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-  }
-  return result;
-}
-
-/***********************************************************************
- *
- * pop3_regular_transfer()
- *
- * The input argument is already checked for validity.
- *
- * Performs all commands done before a regular transfer between a local and a
- * remote host.
- *
- */
-static
-CURLcode pop3_regular_transfer(struct connectdata *conn,
-                              bool *dophase_done)
-{
-  CURLcode result=CURLE_OK;
-  bool connected=FALSE;
-  struct SessionHandle *data = conn->data;
-  data->req.size = -1; /* make sure this is unknown at this point */
-
-  Curl_pgrsSetUploadCounter(data, 0);
-  Curl_pgrsSetDownloadCounter(data, 0);
-  Curl_pgrsSetUploadSize(data, 0);
-  Curl_pgrsSetDownloadSize(data, 0);
-
-  result = pop3_perform(conn,
-                        &connected, /* have we connected after PASV/PORT */
-                        dophase_done); /* all commands in the DO-phase done? */
-
-  if(CURLE_OK == result) {
-
-    if(!*dophase_done)
-      /* the DO phase has not completed yet */
-      return CURLE_OK;
-
-    result = pop3_dophase_done(conn, connected);
-    if(result)
-      return result;
-  }
-
-  return result;
-}
-
-static CURLcode pop3_setup_connection(struct connectdata * conn)
-{
-  struct SessionHandle *data = conn->data;
-
-  if(conn->bits.httpproxy && !data->set.tunnel_thru_httpproxy) {
-    /* Unless we have asked to tunnel pop3 operations through the proxy, we
-       switch and use HTTP operations only */
-#ifndef CURL_DISABLE_HTTP
-    if(conn->handler == &Curl_handler_pop3)
-      conn->handler = &Curl_handler_pop3_proxy;
-    else {
-#ifdef USE_SSL
-      conn->handler = &Curl_handler_pop3s_proxy;
-#else
-      failf(data, "POP3S not supported!");
-      return CURLE_UNSUPPORTED_PROTOCOL;
-#endif
-    }
-    /*
-     * We explicitly mark this connection as persistent here as we're doing
-     * POP3 over HTTP and thus we accidentally avoid setting this value
-     * otherwise.
-     */
-    conn->bits.close = FALSE;
-#else
-    failf(data, "POP3 over http proxy requires HTTP support built-in!");
-    return CURLE_UNSUPPORTED_PROTOCOL;
-#endif
-  }
-
-  data->state.path++;   /* don't include the initial slash */
-
-  return CURLE_OK;
-}
-
-/* this is the 5-bytes End-Of-Body marker for POP3 */
-#define POP3_EOB "\x0d\x0a\x2e\x0d\x0a"
-#define POP3_EOB_LEN 5
-
-/*
- * This function scans the body after the end-of-body and writes everything
- * until the end is found.
- */
-CURLcode Curl_pop3_write(struct connectdata *conn,
-                         char *str,
-                         size_t nread)
-{
-  /* This code could be made into a special function in the handler struct. */
-  CURLcode result;
-  struct SessionHandle *data = conn->data;
-  struct SingleRequest *k = &data->req;
-
-  /* Detect the end-of-body marker, which is 5 bytes:
-     0d 0a 2e 0d 0a. This marker can of course be spread out
-     over up to 5 different data chunks. Deal with it! */
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
-  size_t checkmax = (nread >= POP3_EOB_LEN?POP3_EOB_LEN:nread);
-  size_t checkleft = POP3_EOB_LEN-pop3c->eob;
-  size_t check = (checkmax >= checkleft?checkleft:checkmax);
-
-  if(!memcmp(POP3_EOB, &str[nread - check], check)) {
-    /* substring match */
-    pop3c->eob += check;
-    if(pop3c->eob == POP3_EOB_LEN) {
-      /* full match, the transfer is done! */
-      str[nread - check] = '\0';
-      nread -= check;
-      k->keepon &= ~KEEP_RECV;
-      pop3c->eob = 0;
-    }
-  }
-  else if(pop3c->eob) {
-    /* not a match, but we matched a piece before so we must now
-       send that part as body first, before we move on and send
-       this buffer */
-    result = Curl_client_write(conn, CLIENTWRITE_BODY,
-                               (char *)POP3_EOB, pop3c->eob);
-    if(result)
-      return result;
-    pop3c->eob = 0;
-  }
-
-  result = Curl_client_write(conn, CLIENTWRITE_BODY, str, nread);
-
-  return result;
-}
-
-#endif /* CURL_DISABLE_POP3 */
diff --git a/src/other/curl/lib/pop3.h b/src/other/curl/lib/pop3.h
deleted file mode 100644
index 337421c..0000000
--- a/src/other/curl/lib/pop3.h
+++ /dev/null
@@ -1,62 +0,0 @@
-#ifndef __POP3_H
-#define __POP3_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/****************************************************************************
- * POP3 unique setup
- ***************************************************************************/
-typedef enum {
-  POP3_STOP,        /* do nothing state, stops the state machine */
-  POP3_SERVERGREET, /* waiting for the initial greeting immediately after
-                       a connect */
-  POP3_USER,
-  POP3_PASS,
-  POP3_STARTTLS,
-  POP3_LIST,
-  POP3_RETR,
-  POP3_QUIT,
-  POP3_LAST  /* never used */
-} pop3state;
-
-/* pop3_conn is used for struct connection-oriented data in the connectdata
-   struct */
-struct pop3_conn {
-  struct pingpong pp;
-  char *mailbox;     /* what to RETR */
-  size_t eob;        /* number of bytes of the EOB (End Of Body) that has been
-                        received thus far */
-  pop3state state; /* always use pop3.c:state() to change state! */
-};
-
-extern const struct Curl_handler Curl_handler_pop3;
-extern const struct Curl_handler Curl_handler_pop3s;
-
-/*
- * This function scans the body after the end-of-body and writes everything
- * until the end is found.
- */
-CURLcode Curl_pop3_write(struct connectdata *conn,
-                         char *str,
-                         size_t nread);
-
-#endif /* __POP3_H */
diff --git a/src/other/curl/lib/progress.c b/src/other/curl/lib/progress.c
deleted file mode 100644
index e0758f2..0000000
--- a/src/other/curl/lib/progress.c
+++ /dev/null
@@ -1,448 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include "urldata.h"
-#include "sendf.h"
-#include "progress.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* Provide a string that is 2 + 1 + 2 + 1 + 2 = 8 letters long (plus the zero
-   byte) */
-static void time2str(char *r, curl_off_t seconds)
-{
-  curl_off_t d, h, m, s;
-  if(seconds <= 0) {
-    strcpy(r, "--:--:--");
-    return;
-  }
-  h = seconds / CURL_OFF_T_C(3600);
-  if(h <= CURL_OFF_T_C(99)) {
-    m = (seconds - (h*CURL_OFF_T_C(3600))) / CURL_OFF_T_C(60);
-    s = (seconds - (h*CURL_OFF_T_C(3600))) - (m*CURL_OFF_T_C(60));
-    snprintf(r, 9, "%2" FORMAT_OFF_T ":%02" FORMAT_OFF_T ":%02" FORMAT_OFF_T,
-             h, m, s);
-  }
-  else {
-    /* this equals to more than 99 hours, switch to a more suitable output
-       format to fit within the limits. */
-    d = seconds / CURL_OFF_T_C(86400);
-    h = (seconds - (d*CURL_OFF_T_C(86400))) / CURL_OFF_T_C(3600);
-    if(d <= CURL_OFF_T_C(999))
-      snprintf(r, 9, "%3" FORMAT_OFF_T "d %02" FORMAT_OFF_T "h", d, h);
-    else
-      snprintf(r, 9, "%7" FORMAT_OFF_T "d", d);
-  }
-}
-
-/* The point of this function would be to return a string of the input data,
-   but never longer than 5 columns (+ one zero byte).
-   Add suffix k, M, G when suitable... */
-static char *max5data(curl_off_t bytes, char *max5)
-{
-#define ONE_KILOBYTE  CURL_OFF_T_C(1024)
-#define ONE_MEGABYTE (CURL_OFF_T_C(1024) * ONE_KILOBYTE)
-#define ONE_GIGABYTE (CURL_OFF_T_C(1024) * ONE_MEGABYTE)
-#define ONE_TERABYTE (CURL_OFF_T_C(1024) * ONE_GIGABYTE)
-#define ONE_PETABYTE (CURL_OFF_T_C(1024) * ONE_TERABYTE)
-
-  if(bytes < CURL_OFF_T_C(100000))
-    snprintf(max5, 6, "%5" FORMAT_OFF_T, bytes);
-
-  else if(bytes < CURL_OFF_T_C(10000) * ONE_KILOBYTE)
-    snprintf(max5, 6, "%4" FORMAT_OFF_T "k", bytes/ONE_KILOBYTE);
-
-  else if(bytes < CURL_OFF_T_C(100) * ONE_MEGABYTE)
-    /* 'XX.XM' is good as long as we're less than 100 megs */
-    snprintf(max5, 6, "%2" FORMAT_OFF_T ".%0" FORMAT_OFF_T "M",
-              bytes/ONE_MEGABYTE,
-             (bytes%ONE_MEGABYTE) / (ONE_MEGABYTE/CURL_OFF_T_C(10)) );
-
-#if (CURL_SIZEOF_CURL_OFF_T > 4)
-
-  else if(bytes < CURL_OFF_T_C(10000) * ONE_MEGABYTE)
-    /* 'XXXXM' is good until we're at 10000MB or above */
-    snprintf(max5, 6, "%4" FORMAT_OFF_T "M", bytes/ONE_MEGABYTE);
-
-  else if(bytes < CURL_OFF_T_C(100) * ONE_GIGABYTE)
-    /* 10000 MB - 100 GB, we show it as XX.XG */
-    snprintf(max5, 6, "%2" FORMAT_OFF_T ".%0" FORMAT_OFF_T "G",
-              bytes/ONE_GIGABYTE,
-             (bytes%ONE_GIGABYTE) / (ONE_GIGABYTE/CURL_OFF_T_C(10)) );
-
-  else if(bytes < CURL_OFF_T_C(10000) * ONE_GIGABYTE)
-    /* up to 10000GB, display without decimal: XXXXG */
-    snprintf(max5, 6, "%4" FORMAT_OFF_T "G", bytes/ONE_GIGABYTE);
-
-  else if(bytes < CURL_OFF_T_C(10000) * ONE_TERABYTE)
-    /* up to 10000TB, display without decimal: XXXXT */
-    snprintf(max5, 6, "%4" FORMAT_OFF_T "T", bytes/ONE_TERABYTE);
-
-  else
-    /* up to 10000PB, display without decimal: XXXXP */
-    snprintf(max5, 6, "%4" FORMAT_OFF_T "P", bytes/ONE_PETABYTE);
-
-    /* 16384 petabytes (16 exabytes) is the maximum a 64 bit unsigned number
-       can hold, but our data type is signed so 8192PB will be the maximum. */
-
-#else
-
-  else
-    snprintf(max5, 6, "%4" FORMAT_OFF_T "M", bytes/ONE_MEGABYTE);
-
-#endif
-
-  return max5;
-}
-
-/*
-
-   New proposed interface, 9th of February 2000:
-
-   pgrsStartNow() - sets start time
-   pgrsSetDownloadSize(x) - known expected download size
-   pgrsSetUploadSize(x) - known expected upload size
-   pgrsSetDownloadCounter() - amount of data currently downloaded
-   pgrsSetUploadCounter() - amount of data currently uploaded
-   pgrsUpdate() - show progress
-   pgrsDone() - transfer complete
-
-*/
-
-void Curl_pgrsDone(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  data->progress.lastshow=0;
-  Curl_pgrsUpdate(conn); /* the final (forced) update */
-
-  data->progress.speeder_c = 0; /* reset the progress meter display */
-}
-
-/* reset all times except redirect */
-void Curl_pgrsResetTimes(struct SessionHandle *data)
-{
-  data->progress.t_nslookup = 0.0;
-  data->progress.t_connect = 0.0;
-  data->progress.t_pretransfer = 0.0;
-  data->progress.t_starttransfer = 0.0;
-}
-
-void Curl_pgrsTime(struct SessionHandle *data, timerid timer)
-{
-  switch(timer) {
-  default:
-  case TIMER_NONE:
-    /* mistake filter */
-    break;
-  case TIMER_STARTSINGLE:
-    /* This is set at the start of a single fetch */
-    data->progress.t_startsingle = Curl_tvnow();
-    break;
-
-  case TIMER_NAMELOOKUP:
-    data->progress.t_nslookup =
-      Curl_tvdiff_secs(Curl_tvnow(), data->progress.t_startsingle);
-    break;
-  case TIMER_CONNECT:
-    data->progress.t_connect =
-      Curl_tvdiff_secs(Curl_tvnow(), data->progress.t_startsingle);
-    break;
-  case TIMER_APPCONNECT:
-    data->progress.t_appconnect =
-      Curl_tvdiff_secs(Curl_tvnow(), data->progress.t_startsingle);
-    break;
-  case TIMER_PRETRANSFER:
-    data->progress.t_pretransfer =
-      Curl_tvdiff_secs(Curl_tvnow(), data->progress.t_startsingle);
-    break;
-  case TIMER_STARTTRANSFER:
-    data->progress.t_starttransfer =
-      Curl_tvdiff_secs(Curl_tvnow(), data->progress.t_startsingle);
-    break;
-  case TIMER_POSTRANSFER:
-    /* this is the normal end-of-transfer thing */
-    break;
-  case TIMER_REDIRECT:
-    data->progress.t_redirect =
-      Curl_tvdiff_secs(Curl_tvnow(), data->progress.start);
-    break;
-  }
-}
-
-void Curl_pgrsStartNow(struct SessionHandle *data)
-{
-  data->progress.speeder_c = 0; /* reset the progress meter display */
-  data->progress.start = Curl_tvnow();
-}
-
-void Curl_pgrsSetDownloadCounter(struct SessionHandle *data, curl_off_t size)
-{
-  data->progress.downloaded = size;
-}
-
-void Curl_pgrsSetUploadCounter(struct SessionHandle *data, curl_off_t size)
-{
-  data->progress.uploaded = size;
-}
-
-void Curl_pgrsSetDownloadSize(struct SessionHandle *data, curl_off_t size)
-{
-  data->progress.size_dl = size;
-  if(size >= 0)
-    data->progress.flags |= PGRS_DL_SIZE_KNOWN;
-  else
-    data->progress.flags &= ~PGRS_DL_SIZE_KNOWN;
-}
-
-void Curl_pgrsSetUploadSize(struct SessionHandle *data, curl_off_t size)
-{
-  data->progress.size_ul = size;
-  if(size >= 0)
-    data->progress.flags |= PGRS_UL_SIZE_KNOWN;
-  else
-    data->progress.flags &= ~PGRS_UL_SIZE_KNOWN;
-}
-
-int Curl_pgrsUpdate(struct connectdata *conn)
-{
-  struct timeval now;
-  int result;
-  char max5[6][10];
-  curl_off_t dlpercen=0;
-  curl_off_t ulpercen=0;
-  curl_off_t total_percen=0;
-  curl_off_t total_transfer;
-  curl_off_t total_expected_transfer;
-  curl_off_t timespent;
-  struct SessionHandle *data = conn->data;
-  int nowindex = data->progress.speeder_c% CURR_TIME;
-  int checkindex;
-  int countindex; /* amount of seconds stored in the speeder array */
-  char time_left[10];
-  char time_total[10];
-  char time_spent[10];
-  curl_off_t ulestimate=0;
-  curl_off_t dlestimate=0;
-  curl_off_t total_estimate;
-  bool shownow=FALSE;
-
-  now = Curl_tvnow(); /* what time is it */
-
-  /* The time spent so far (from the start) */
-  data->progress.timespent =
-    (double)(now.tv_sec - data->progress.start.tv_sec) +
-    (double)(now.tv_usec - data->progress.start.tv_usec)/1000000.0;
-  timespent = (curl_off_t)data->progress.timespent;
-
-  /* The average download speed this far */
-  data->progress.dlspeed = (curl_off_t)
-    ((double)data->progress.downloaded/
-     (data->progress.timespent>0?data->progress.timespent:1));
-
-  /* The average upload speed this far */
-  data->progress.ulspeed = (curl_off_t)
-    ((double)data->progress.uploaded/
-     (data->progress.timespent>0?data->progress.timespent:1));
-
-  /* Calculations done at most once a second, unless end is reached */
-  if(data->progress.lastshow != (long)now.tv_sec) {
-    shownow = TRUE;
-
-    data->progress.lastshow = now.tv_sec;
-
-    /* Let's do the "current speed" thing, which should use the fastest
-       of the dl/ul speeds. Store the faster speed at entry 'nowindex'. */
-    data->progress.speeder[ nowindex ] =
-      data->progress.downloaded>data->progress.uploaded?
-      data->progress.downloaded:data->progress.uploaded;
-
-    /* remember the exact time for this moment */
-    data->progress.speeder_time [ nowindex ] = now;
-
-    /* advance our speeder_c counter, which is increased every time we get
-       here and we expect it to never wrap as 2^32 is a lot of seconds! */
-    data->progress.speeder_c++;
-
-    /* figure out how many index entries of data we have stored in our speeder
-       array. With N_ENTRIES filled in, we have about N_ENTRIES-1 seconds of
-       transfer. Imagine, after one second we have filled in two entries,
-       after two seconds we've filled in three entries etc. */
-    countindex = ((data->progress.speeder_c>=CURR_TIME)?
-                  CURR_TIME:data->progress.speeder_c) - 1;
-
-    /* first of all, we don't do this if there's no counted seconds yet */
-    if(countindex) {
-      long span_ms;
-
-      /* Get the index position to compare with the 'nowindex' position.
-         Get the oldest entry possible. While we have less than CURR_TIME
-         entries, the first entry will remain the oldest. */
-      checkindex = (data->progress.speeder_c>=CURR_TIME)?
-        data->progress.speeder_c%CURR_TIME:0;
-
-      /* Figure out the exact time for the time span */
-      span_ms = Curl_tvdiff(now,
-                            data->progress.speeder_time[checkindex]);
-      if(0 == span_ms)
-        span_ms=1; /* at least one millisecond MUST have passed */
-
-      /* Calculate the average speed the last 'span_ms' milliseconds */
-      {
-        curl_off_t amount = data->progress.speeder[nowindex]-
-          data->progress.speeder[checkindex];
-
-        if(amount > CURL_OFF_T_C(4294967) /* 0xffffffff/1000 */)
-          /* the 'amount' value is bigger than would fit in 32 bits if
-             multiplied with 1000, so we use the double math for this */
-          data->progress.current_speed = (curl_off_t)
-            ((double)amount/((double)span_ms/1000.0));
-        else
-          /* the 'amount' value is small enough to fit within 32 bits even
-             when multiplied with 1000 */
-          data->progress.current_speed = amount*CURL_OFF_T_C(1000)/span_ms;
-      }
-    }
-    else
-      /* the first second we use the main average */
-      data->progress.current_speed =
-        (data->progress.ulspeed>data->progress.dlspeed)?
-        data->progress.ulspeed:data->progress.dlspeed;
-
-  } /* Calculations end */
-
-  if(!(data->progress.flags & PGRS_HIDE)) {
-
-    /* progress meter has not been shut off */
-
-    if(data->set.fprogress) {
-      /* There's a callback set, so we call that instead of writing
-         anything ourselves. This really is the way to go. */
-      result= data->set.fprogress(data->set.progress_client,
-                                  (double)data->progress.size_dl,
-                                  (double)data->progress.downloaded,
-                                  (double)data->progress.size_ul,
-                                  (double)data->progress.uploaded);
-      if(result)
-        failf(data, "Callback aborted");
-      return result;
-    }
-
-    if(!shownow)
-      /* only show the internal progress meter once per second */
-      return 0;
-
-    /* If there's no external callback set, use internal code to show
-       progress */
-
-    if(!(data->progress.flags & PGRS_HEADERS_OUT)) {
-      if(data->state.resume_from) {
-        fprintf(data->set.err,
-                "** Resuming transfer from byte position %" FORMAT_OFF_T "\n",
-                data->state.resume_from);
-      }
-      fprintf(data->set.err,
-              "  %% Total    %% Received %% Xferd  Average Speed   Time    Time     Time  Current\n"
-              "                                 Dload  Upload   Total   Spent    Left  Speed\n");
-      data->progress.flags |= PGRS_HEADERS_OUT; /* headers are shown */
-    }
-
-    /* Figure out the estimated time of arrival for the upload */
-    if((data->progress.flags & PGRS_UL_SIZE_KNOWN) &&
-       (data->progress.ulspeed > CURL_OFF_T_C(0))) {
-      ulestimate = data->progress.size_ul / data->progress.ulspeed;
-
-      if(data->progress.size_ul > CURL_OFF_T_C(10000))
-        ulpercen = data->progress.uploaded /
-          (data->progress.size_ul/CURL_OFF_T_C(100));
-      else if(data->progress.size_ul > CURL_OFF_T_C(0))
-        ulpercen = (data->progress.uploaded*100) /
-          data->progress.size_ul;
-    }
-
-    /* ... and the download */
-    if((data->progress.flags & PGRS_DL_SIZE_KNOWN) &&
-       (data->progress.dlspeed > CURL_OFF_T_C(0))) {
-      dlestimate = data->progress.size_dl / data->progress.dlspeed;
-
-      if(data->progress.size_dl > CURL_OFF_T_C(10000))
-        dlpercen = data->progress.downloaded /
-          (data->progress.size_dl/CURL_OFF_T_C(100));
-      else if(data->progress.size_dl > CURL_OFF_T_C(0))
-        dlpercen = (data->progress.downloaded*100) /
-          data->progress.size_dl;
-    }
-
-    /* Now figure out which of them is slower and use that one for the
-       total estimate! */
-    total_estimate = ulestimate>dlestimate?ulestimate:dlestimate;
-
-    /* create the three time strings */
-    time2str(time_left, total_estimate > 0?(total_estimate - timespent):0);
-    time2str(time_total, total_estimate);
-    time2str(time_spent, timespent);
-
-    /* Get the total amount of data expected to get transfered */
-    total_expected_transfer =
-      (data->progress.flags & PGRS_UL_SIZE_KNOWN?
-       data->progress.size_ul:data->progress.uploaded)+
-      (data->progress.flags & PGRS_DL_SIZE_KNOWN?
-       data->progress.size_dl:data->progress.downloaded);
-
-    /* We have transfered this much so far */
-    total_transfer = data->progress.downloaded + data->progress.uploaded;
-
-    /* Get the percentage of data transfered so far */
-    if(total_expected_transfer > CURL_OFF_T_C(10000))
-      total_percen = total_transfer /
-        (total_expected_transfer/CURL_OFF_T_C(100));
-    else if(total_expected_transfer > CURL_OFF_T_C(0))
-      total_percen = (total_transfer*100) / total_expected_transfer;
-
-    fprintf(data->set.err,
-            "\r"
-            "%3" FORMAT_OFF_T " %s  "
-            "%3" FORMAT_OFF_T " %s  "
-            "%3" FORMAT_OFF_T " %s  %s  %s %s %s %s %s",
-            total_percen,  /* 3 letters */                /* total % */
-            max5data(total_expected_transfer, max5[2]),   /* total size */
-            dlpercen,      /* 3 letters */                /* rcvd % */
-            max5data(data->progress.downloaded, max5[0]), /* rcvd size */
-            ulpercen,      /* 3 letters */                /* xfer % */
-            max5data(data->progress.uploaded, max5[1]),   /* xfer size */
-            max5data(data->progress.dlspeed, max5[3]),    /* avrg dl speed */
-            max5data(data->progress.ulspeed, max5[4]),    /* avrg ul speed */
-            time_total,    /* 8 letters */                /* total time */
-            time_spent,    /* 8 letters */                /* time spent */
-            time_left,     /* 8 letters */                /* time left */
-            max5data(data->progress.current_speed, max5[5]) /* current speed */
-            );
-
-    /* we flush the output stream to make it appear as soon as possible */
-    fflush(data->set.err);
-
-  } /* !(data->progress.flags & PGRS_HIDE) */
-
-  return 0;
-}
diff --git a/src/other/curl/lib/progress.h b/src/other/curl/lib/progress.h
deleted file mode 100644
index 95944f0..0000000
--- a/src/other/curl/lib/progress.h
+++ /dev/null
@@ -1,70 +0,0 @@
-#ifndef __PROGRESS_H
-#define __PROGRESS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "timeval.h"
-
-
-typedef enum {
-  TIMER_NONE,
-  TIMER_NAMELOOKUP,
-  TIMER_CONNECT,
-  TIMER_APPCONNECT,
-  TIMER_PRETRANSFER,
-  TIMER_STARTTRANSFER,
-  TIMER_POSTRANSFER,
-  TIMER_STARTSINGLE,
-  TIMER_REDIRECT,
-  TIMER_LAST /* must be last */
-} timerid;
-
-void Curl_pgrsDone(struct connectdata *);
-void Curl_pgrsStartNow(struct SessionHandle *data);
-void Curl_pgrsSetDownloadSize(struct SessionHandle *data, curl_off_t size);
-void Curl_pgrsSetUploadSize(struct SessionHandle *data, curl_off_t size);
-void Curl_pgrsSetDownloadCounter(struct SessionHandle *data, curl_off_t size);
-void Curl_pgrsSetUploadCounter(struct SessionHandle *data, curl_off_t size);
-int Curl_pgrsUpdate(struct connectdata *);
-void Curl_pgrsResetTimes(struct SessionHandle *data);
-void Curl_pgrsTime(struct SessionHandle *data, timerid timer);
-
-
-/* Don't show progress for sizes smaller than: */
-#define LEAST_SIZE_PROGRESS BUFSIZE
-
-#define PROGRESS_DOWNLOAD (1<<0)
-#define PROGRESS_UPLOAD   (1<<1)
-#define PROGRESS_DOWN_AND_UP (PROGRESS_UPLOAD | PROGRESS_DOWNLOAD)
-
-#define PGRS_SHOW_DL (1<<0)
-#define PGRS_SHOW_UL (1<<1)
-#define PGRS_DONE_DL (1<<2)
-#define PGRS_DONE_UL (1<<3)
-#define PGRS_HIDE    (1<<4)
-#define PGRS_UL_SIZE_KNOWN (1<<5)
-#define PGRS_DL_SIZE_KNOWN (1<<6)
-
-#define PGRS_HEADERS_OUT (1<<7) /* set when the headers have been written */
-
-
-#endif /* __PROGRESS_H */
diff --git a/src/other/curl/lib/qssl.c b/src/other/curl/lib/qssl.c
deleted file mode 100644
index 5a08a25..0000000
--- a/src/other/curl/lib/qssl.c
+++ /dev/null
@@ -1,497 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef USE_QSOSSL
-#include <qsossl.h>
-#include <errno.h>
-#include <string.h>
-#ifdef HAVE_LIMITS_H
-#  include <limits.h>
-#endif
-
-#include <curl/curl.h>
-#include "urldata.h"
-#include "sendf.h"
-#include "qssl.h"
-#include "sslgen.h"
-#include "connect.h" /* for the connect timeout */
-#include "select.h"
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-
-int Curl_qsossl_init(void)
-
-{
-  /* Nothing to do here. We must have connection data to initialize ssl, so
-   * defer.
-   */
-
-  return 1;
-}
-
-
-void Curl_qsossl_cleanup(void)
-
-{
-  /* Nothing to do. */
-}
-
-
-static CURLcode Curl_qsossl_init_session(struct SessionHandle * data)
-
-{
-  int rc;
-  char * certname;
-  SSLInit initstr;
-  SSLInitApp initappstr;
-
-  /* Initialize the job for SSL according to the current parameters.
-   * QsoSSL offers two ways to do it: SSL_Init_Application() that uses an
-   *  application identifier to select certificates in the main certificate
-   *  store, and SSL_Init() that uses named keyring files and a password.
-   * It is not possible to have different keyrings for the CAs and the
-   *  local certificate. We thus use the certificate name to identify the
-   *  keyring if given, else the CA file name.
-   * If the key file name is given, it is taken as the password for the
-   *  keyring in certificate file.
-   * We first try to SSL_Init_Application(), then SSL_Init() if it failed.
-   */
-
-  certname = data->set.str[STRING_CERT];
-
-  if(!certname) {
-    certname = data->set.str[STRING_SSL_CAFILE];
-
-    if(!certname)
-      return CURLE_OK;          /* Use previous setup. */
-    }
-
-  memset((char *) &initappstr, 0, sizeof initappstr);
-  initappstr.applicationID = certname;
-  initappstr.applicationIDLen = strlen(certname);
-  initappstr.protocol = SSL_VERSION_CURRENT;    /* TLSV1 compat. SSLV[23]. */
-  initappstr.sessionType = SSL_REGISTERED_AS_CLIENT;
-  rc = SSL_Init_Application(&initappstr);
-
-  if(rc == SSL_ERROR_NOT_REGISTERED) {
-    initstr.keyringFileName = certname;
-    initstr.keyringPassword = data->set.str[STRING_KEY];
-    initstr.cipherSuiteList = NULL;    /* Use default. */
-    initstr.cipherSuiteListLen = 0;
-    rc = SSL_Init(&initstr);
-    }
-
-  switch (rc) {
-
-  case 0:                             /* No error. */
-    break;
-
-  case SSL_ERROR_IO:
-    failf(data, "SSL_Init() I/O error: %s", strerror(errno));
-    return CURLE_SSL_CONNECT_ERROR;
-
-  case SSL_ERROR_BAD_CIPHER_SUITE:
-    return CURLE_SSL_CIPHER;
-
-  case SSL_ERROR_KEYPASSWORD_EXPIRED:
-  case SSL_ERROR_NOT_REGISTERED:
-    return CURLE_SSL_CONNECT_ERROR;
-
-  case SSL_ERROR_NO_KEYRING:
-    return CURLE_SSL_CACERT;
-
-  case SSL_ERROR_CERT_EXPIRED:
-    return CURLE_SSL_CERTPROBLEM;
-
-  default:
-    failf(data, "SSL_Init(): %s", SSL_Strerror(rc, NULL));
-    return CURLE_SSL_CONNECT_ERROR;
-  }
-
-  return CURLE_OK;
-}
-
-
-static CURLcode Curl_qsossl_create(struct connectdata * conn, int sockindex)
-
-{
-  SSLHandle * h;
-  struct ssl_connect_data * connssl = &conn->ssl[sockindex];
-
-  h = SSL_Create(conn->sock[sockindex], SSL_ENCRYPT);
-
-  if(!h) {
-    failf(conn->data, "SSL_Create() I/O error: %s", strerror(errno));
-    return CURLE_SSL_CONNECT_ERROR;
-  }
-
-  connssl->handle = h;
-  return CURLE_OK;
-}
-
-
-static int Curl_qsossl_trap_cert(SSLHandle * h)
-
-{
-  return 1;       /* Accept certificate. */
-}
-
-
-static CURLcode Curl_qsossl_handshake(struct connectdata * conn, int sockindex)
-
-{
-  int rc;
-  struct SessionHandle * data = conn->data;
-  struct ssl_connect_data * connssl = &conn->ssl[sockindex];
-  SSLHandle * h = connssl->handle;
-  long timeout_ms;
-
-  h->exitPgm = NULL;
-
-  if(!data->set.ssl.verifyhost)
-    h->exitPgm = Curl_qsossl_trap_cert;
-
-  /* figure out how long time we should wait at maximum */
-  timeout_ms = Curl_timeleft(conn, NULL, TRUE);
-
-  if(timeout_ms < 0) {
-    /* time-out, bail out, go home */
-    failf(data, "Connection time-out");
-    return CURLE_OPERATION_TIMEDOUT;
-  }
-
-  /* SSL_Handshake() timeout resolution is second, so round up. */
-  h->timeout = (timeout_ms + 1000 - 1) / 1000;
-
-  /* Set-up protocol. */
-
-  switch (data->set.ssl.version) {
-
-  default:
-  case CURL_SSLVERSION_DEFAULT:
-    h->protocol = SSL_VERSION_CURRENT;          /* TLSV1 compat. SSLV[23]. */
-    break;
-
-  case CURL_SSLVERSION_TLSv1:
-    h->protocol = TLS_VERSION_1;
-    break;
-
-  case CURL_SSLVERSION_SSLv2:
-    h->protocol = SSL_VERSION_2;
-    break;
-
-  case CURL_SSLVERSION_SSLv3:
-    h->protocol = SSL_VERSION_3;
-    break;
-  }
-
-  rc = SSL_Handshake(h, SSL_HANDSHAKE_AS_CLIENT);
-
-  switch (rc) {
-
-  case 0:                             /* No error. */
-    break;
-
-  case SSL_ERROR_BAD_CERTIFICATE:
-  case SSL_ERROR_BAD_CERT_SIG:
-  case SSL_ERROR_NOT_TRUSTED_ROOT:
-    return CURLE_PEER_FAILED_VERIFICATION;
-
-  case SSL_ERROR_BAD_CIPHER_SUITE:
-  case SSL_ERROR_NO_CIPHERS:
-    return CURLE_SSL_CIPHER;
-
-  case SSL_ERROR_CERTIFICATE_REJECTED:
-  case SSL_ERROR_CERT_EXPIRED:
-  case SSL_ERROR_NO_CERTIFICATE:
-    return CURLE_SSL_CERTPROBLEM;
-
-  case SSL_ERROR_IO:
-    failf(data, "SSL_Handshake() I/O error: %s", strerror(errno));
-    return CURLE_SSL_CONNECT_ERROR;
-
-  default:
-    failf(data, "SSL_Handshake(): %s", SSL_Strerror(rc, NULL));
-    return CURLE_SSL_CONNECT_ERROR;
-  }
-
-  return CURLE_OK;
-}
-
-
-CURLcode Curl_qsossl_connect(struct connectdata * conn, int sockindex)
-
-{
-  struct SessionHandle * data = conn->data;
-  struct ssl_connect_data * connssl = &conn->ssl[sockindex];
-  int rc;
-
-  rc = Curl_qsossl_init_session(data);
-
-  if(rc == CURLE_OK) {
-    rc = Curl_qsossl_create(conn, sockindex);
-
-    if(rc == CURLE_OK)
-      rc = Curl_qsossl_handshake(conn, sockindex);
-    else {
-      SSL_Destroy(connssl->handle);
-      connssl->handle = NULL;
-      connssl->use = FALSE;
-      connssl->state = ssl_connection_none;
-    }
-  }
-  if (rc == CURLE_OK)
-    connssl->state = ssl_connection_complete;
-
-  return rc;
-}
-
-
-static int Curl_qsossl_close_one(struct ssl_connect_data * conn,
-                                 struct SessionHandle * data)
-
-{
-  int rc;
-
-  if(!conn->handle)
-    return 0;
-
-  rc = SSL_Destroy(conn->handle);
-
-  if(rc) {
-    if(rc == SSL_ERROR_IO) {
-      failf(data, "SSL_Destroy() I/O error: %s", strerror(errno));
-      return -1;
-    }
-
-    /* An SSL error. */
-    failf(data, "SSL_Destroy() returned error %s", SSL_Strerror(rc, NULL));
-    return -1;
-  }
-
-  conn->handle = NULL;
-  return 0;
-}
-
-
-void Curl_qsossl_close(struct connectdata *conn, int sockindex)
-
-{
-  struct SessionHandle *data = conn->data;
-  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
-
-  if(connssl->use)
-    (void) Curl_qsossl_close_one(connssl, data);
-}
-
-
-int Curl_qsossl_close_all(struct SessionHandle * data)
-
-{
-  /* Unimplemented. */
-  (void) data;
-  return 0;
-}
-
-
-int Curl_qsossl_shutdown(struct connectdata * conn, int sockindex)
-
-{
-  struct ssl_connect_data * connssl = &conn->ssl[sockindex];
-  struct SessionHandle *data = conn->data;
-  ssize_t nread;
-  int what;
-  int rc;
-  char buf[120];
-
-  if(!connssl->handle)
-    return 0;
-
-  if(data->set.ftp_ccc != CURLFTPSSL_CCC_ACTIVE)
-    return 0;
-
-  if(Curl_qsossl_close_one(connssl, data))
-    return -1;
-
-  rc = 0;
-
-  what = Curl_socket_ready(conn->sock[sockindex],
-                           CURL_SOCKET_BAD, SSL_SHUTDOWN_TIMEOUT);
-
-  for (;;) {
-    if(what < 0) {
-      /* anything that gets here is fatally bad */
-      failf(data, "select/poll on SSL socket, errno: %d", SOCKERRNO);
-      rc = -1;
-      break;
-    }
-
-    if(!what) {                                /* timeout */
-      failf(data, "SSL shutdown timeout");
-      break;
-    }
-
-    /* Something to read, let's do it and hope that it is the close
-       notify alert from the server. No way to SSL_Read now, so use read(). */
-
-    nread = read(conn->sock[sockindex], buf, sizeof(buf));
-
-    if(nread < 0) {
-      failf(data, "read: %s", strerror(errno));
-      rc = -1;
-    }
-
-    if(nread <= 0)
-      break;
-
-    what = Curl_socket_ready(conn->sock[sockindex], CURL_SOCKET_BAD, 0);
-  }
-
-  return rc;
-}
-
-
-/* for documentation see Curl_ssl_send() in sslgen.h */
-ssize_t Curl_qsossl_send(struct connectdata * conn, int sockindex,
-                         const void * mem, size_t len, int * curlcode)
-
-{
-  /* SSL_Write() is said to return 'int' while write() and send() returns
-     'size_t' */
-  int rc;
-
-  rc = SSL_Write(conn->ssl[sockindex].handle, (void *) mem, (int) len);
-
-  if(rc < 0) {
-    switch(rc) {
-
-    case SSL_ERROR_BAD_STATE:
-      /* The operation did not complete; the same SSL I/O function
-         should be called again later. This is basicly an EWOULDBLOCK
-         equivalent. */
-      *curlcode = -1; /* EWOULDBLOCK */
-      return -1;
-
-    case SSL_ERROR_IO:
-      switch (errno) {
-      case EWOULDBLOCK:
-      case EINTR:
-        *curlcode = -1; /* EWOULDBLOCK */
-        return -1;
-        }
-
-      failf(conn->data, "SSL_Write() I/O error: %s", strerror(errno));
-      *curlcode = CURLE_SEND_ERROR;
-      return -1;
-    }
-
-    /* An SSL error. */
-    failf(conn->data, "SSL_Write() returned error %s",
-          SSL_Strerror(rc, NULL));
-    *curlcode = CURLE_SEND_ERROR;
-    return -1;
-  }
-
-  return (ssize_t) rc; /* number of bytes */
-}
-
-
-/* for documentation see Curl_ssl_recv() in sslgen.h */
-ssize_t Curl_qsossl_recv(struct connectdata * conn, int num, char * buf,
-                         size_t buffersize, int * curlcode)
-
-{
-  char error_buffer[120]; /* OpenSSL documents that this must be at
-                             least 120 bytes long. */
-  unsigned long sslerror;
-  int buffsize;
-  int nread;
-
-  buffsize = (buffersize > (size_t)INT_MAX) ? INT_MAX : (int)buffersize;
-  nread = SSL_Read(conn->ssl[num].handle, buf, buffsize);
-
-  if(nread < 0) {
-    /* failed SSL_read */
-
-    switch (nread) {
-
-    case SSL_ERROR_BAD_STATE:
-      /* there's data pending, re-invoke SSL_Read(). */
-      *curlcode = -1; /* EWOULDBLOCK */
-      return -1;
-
-    case SSL_ERROR_IO:
-      switch (errno) {
-      case EWOULDBLOCK:
-        *curlcode = -1; /* EWOULDBLOCK */
-        return -1;
-        }
-
-      failf(conn->data, "SSL_Read() I/O error: %s", strerror(errno));
-      *curlcode = CURLE_RECV_ERROR;
-      return -1;
-
-    default:
-      failf(conn->data, "SSL read error: %s", SSL_Strerror(nread, NULL));
-      *curlcode = CURLE_RECV_ERROR;
-      return -1;
-    }
-  }
-  return (ssize_t) nread;
-}
-
-
-size_t Curl_qsossl_version(char * buffer, size_t size)
-
-{
-  strncpy(buffer, "IBM OS/400 SSL", size);
-  return strlen(buffer);
-}
-
-
-int Curl_qsossl_check_cxn(struct connectdata * cxn)
-
-{
-  int err;
-  int errlen;
-
-  /* The only thing that can be tested here is at the socket level. */
-
-  if(!cxn->ssl[FIRSTSOCKET].handle)
-    return 0; /* connection has been closed */
-
-  err = 0;
-  errlen = sizeof err;
-
-  if(getsockopt(cxn->sock[FIRSTSOCKET], SOL_SOCKET, SO_ERROR,
-                 (unsigned char *) &err, &errlen) ||
-      errlen != sizeof err || err)
-    return 0; /* connection has been closed */
-
-  return -1;  /* connection status unknown */
-}
-
-#endif /* USE_QSOSSL */
diff --git a/src/other/curl/lib/qssl.h b/src/other/curl/lib/qssl.h
deleted file mode 100644
index a0cf8cc..0000000
--- a/src/other/curl/lib/qssl.h
+++ /dev/null
@@ -1,75 +0,0 @@
-#ifndef __QSSL_H
-#define __QSSL_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * This header should only be needed to get included by sslgen.c and qssl.c
- */
-
-#include "urldata.h"
-
-#ifdef USE_QSOSSL
-int Curl_qsossl_init(void);
-void Curl_qsossl_cleanup(void);
-CURLcode Curl_qsossl_connect(struct connectdata * conn, int sockindex);
-void Curl_qsossl_close(struct connectdata *conn, int sockindex);
-int Curl_qsossl_close_all(struct SessionHandle * data);
-int Curl_qsossl_shutdown(struct connectdata * conn, int sockindex);
-
-/* for documentation see Curl_ssl_send() in sslgen.h */
-ssize_t Curl_qsossl_send(struct connectdata * conn,
-                         int sockindex,
-                         const void * mem,
-                         size_t len,
-                         int * curlcode);
-
-/* for documentation see Curl_ssl_recv() in sslgen.h */
-ssize_t Curl_qsossl_recv(struct connectdata * conn, /* connection data */
-                         int num,                   /* socketindex */
-                         char * buf,                /* store read data here */
-                         size_t buffersize,         /* max amount to read */
-                         int * curlcode);
-
-size_t Curl_qsossl_version(char * buffer, size_t size);
-int Curl_qsossl_check_cxn(struct connectdata * cxn);
-
-/* API setup for QsoSSL */
-#define curlssl_init Curl_qsossl_init
-#define curlssl_cleanup Curl_qsossl_cleanup
-#define curlssl_connect Curl_qsossl_connect
-
-/*  No session handling for QsoSSL */
-#define curlssl_session_free(x)
-#define curlssl_close_all Curl_qsossl_close_all
-#define curlssl_close Curl_qsossl_close
-#define curlssl_shutdown(x,y) Curl_qsossl_shutdown(x,y)
-#define curlssl_set_engine(x,y) CURLE_FAILED_INIT
-#define curlssl_set_engine_default(x) CURLE_FAILED_INIT
-#define curlssl_engines_list(x) NULL
-#define curlssl_send Curl_qsossl_send
-#define curlssl_recv Curl_qsossl_recv
-#define curlssl_version Curl_qsossl_version
-#define curlssl_check_cxn(x) Curl_qsossl_check_cxn(x)
-#define curlssl_data_pending(x,y) 0
-#endif /* USE_QSOSSL */
-#endif
diff --git a/src/other/curl/lib/rawstr.c b/src/other/curl/lib/rawstr.c
deleted file mode 100644
index f3b302d..0000000
--- a/src/other/curl/lib/rawstr.c
+++ /dev/null
@@ -1,142 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include "rawstr.h"
-
-/* Portable, consistent toupper (remember EBCDIC). Do not use toupper() because
-   its behavior is altered by the current locale. */
-char Curl_raw_toupper(char in)
-{
-  switch (in) {
-  case 'a':
-    return 'A';
-  case 'b':
-    return 'B';
-  case 'c':
-    return 'C';
-  case 'd':
-    return 'D';
-  case 'e':
-    return 'E';
-  case 'f':
-    return 'F';
-  case 'g':
-    return 'G';
-  case 'h':
-    return 'H';
-  case 'i':
-    return 'I';
-  case 'j':
-    return 'J';
-  case 'k':
-    return 'K';
-  case 'l':
-    return 'L';
-  case 'm':
-    return 'M';
-  case 'n':
-    return 'N';
-  case 'o':
-    return 'O';
-  case 'p':
-    return 'P';
-  case 'q':
-    return 'Q';
-  case 'r':
-    return 'R';
-  case 's':
-    return 'S';
-  case 't':
-    return 'T';
-  case 'u':
-    return 'U';
-  case 'v':
-    return 'V';
-  case 'w':
-    return 'W';
-  case 'x':
-    return 'X';
-  case 'y':
-    return 'Y';
-  case 'z':
-    return 'Z';
-  }
-  return in;
-}
-
-/*
- * Curl_raw_equal() is for doing "raw" case insensitive strings. This is meant
- * to be locale independent and only compare strings we know are safe for
- * this.  See http://daniel.haxx.se/blog/2008/10/15/strcasecmp-in-turkish/ for
- * some further explanation to why this function is necessary.
- *
- * The function is capable of comparing a-z case insensitively even for
- * non-ascii.
- */
-
-int Curl_raw_equal(const char *first, const char *second)
-{
-  while(*first && *second) {
-    if(Curl_raw_toupper(*first) != Curl_raw_toupper(*second))
-      /* get out of the loop as soon as they don't match */
-      break;
-    first++;
-    second++;
-  }
-  /* we do the comparison here (possibly again), just to make sure that if the
-     loop above is skipped because one of the strings reached zero, we must not
-     return this as a successful match */
-  return (Curl_raw_toupper(*first) == Curl_raw_toupper(*second));
-}
-
-int Curl_raw_nequal(const char *first, const char *second, size_t max)
-{
-  while(*first && *second && max) {
-    if(Curl_raw_toupper(*first) != Curl_raw_toupper(*second)) {
-      break;
-    }
-    max--;
-    first++;
-    second++;
-  }
-  if(0 == max)
-    return 1; /* they are equal this far */
-
-  return Curl_raw_toupper(*first) == Curl_raw_toupper(*second);
-}
-
-/* Copy an upper case version of the string from src to dest.  The
- * strings may overlap.  No more than n characters of the string are copied
- * (including any NUL) and the destination string will NOT be
- * NUL-terminated if that limit is reached.
- */
-void Curl_strntoupper(char *dest, const char *src, size_t n)
-{
-  if (n < 1)
-    return;
-
-  do {
-    *dest++ = Curl_raw_toupper(*src);
-  } while (*src++ && --n);
-}
diff --git a/src/other/curl/lib/rawstr.h b/src/other/curl/lib/rawstr.h
deleted file mode 100644
index 7e9747a..0000000
--- a/src/other/curl/lib/rawstr.h
+++ /dev/null
@@ -1,44 +0,0 @@
-#ifndef __RAWSTR_H
-#define __RAWSTR_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include <curl/curl.h>
-
-/*
- * Curl_raw_equal() is for doing "raw" case insensitive strings. This is meant
- * to be locale independent and only compare strings we know are safe for
- * this.
- *
- * The function is capable of comparing a-z case insensitively even for non-ascii.
- */
-int Curl_raw_equal(const char *first, const char *second);
-int Curl_raw_nequal(const char *first, const char *second, size_t max);
-
-char Curl_raw_toupper(char in);
-
-/* checkprefix() is a shorter version of the above, used when the first
-   argument is zero-byte terminated */
-#define checkprefix(a,b)    Curl_raw_nequal(a,b,strlen(a))
-
-#endif
-void Curl_strntoupper(char *dest, const char *src, size_t n);
diff --git a/src/other/curl/lib/rtsp.c b/src/other/curl/lib/rtsp.c
deleted file mode 100644
index 8cc200b..0000000
--- a/src/other/curl/lib/rtsp.c
+++ /dev/null
@@ -1,757 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_RTSP
-
-#include "urldata.h"
-#include <curl/curl.h>
-#include "transfer.h"
-#include "sendf.h"
-#include "easyif.h" /* for Curl_convert_... prototypes */
-#include "multiif.h"
-#include "http.h"
-#include "url.h"
-#include "progress.h"
-#include "rtsp.h"
-#include "rawstr.h"
-#include "curl_memory.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/*
- * TODO (general)
- *  -incoming server requests
- *      -server CSeq counter
- *  -digest authentication
- *  -connect thru proxy
- *  -pipelining?
- */
-
-
-#define RTP_PKT_CHANNEL(p)   ((int)((unsigned char)((p)[1])))
-
-#define RTP_PKT_LENGTH(p)  ((((int)((unsigned char)((p)[2]))) << 8) | \
-                             ((int)((unsigned char)((p)[3]))))
-
-static int rtsp_getsock_do(struct connectdata *conn,
-                           curl_socket_t *socks,
-                           int numsocks);
-
-/* this returns the socket to wait for in the DO and DOING state for the multi
-   interface and then we're always _sending_ a request and thus we wait for
-   the single socket to become writable only */
-static int rtsp_getsock_do(struct connectdata *conn,
-                           curl_socket_t *socks,
-                           int numsocks)
-{
-  /* write mode */
-  (void)numsocks; /* unused, we trust it to be at least 1 */
-  socks[0] = conn->sock[FIRSTSOCKET];
-  return GETSOCK_WRITESOCK(0);
-}
-
-static
-CURLcode rtp_client_write(struct connectdata *conn, char *ptr, size_t len);
-
-
-/*
- * RTSP handler interface.
- */
-const struct Curl_handler Curl_handler_rtsp = {
-  "RTSP",                               /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_rtsp,                            /* do_it */
-  Curl_rtsp_done,                       /* done */
-  ZERO_NULL,                            /* do_more */
-  Curl_rtsp_connect,                    /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  rtsp_getsock_do,                      /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  Curl_rtsp_disconnect,                 /* disconnect */
-  PORT_RTSP,                            /* defport */
-  PROT_RTSP,                            /* protocol */
-};
-
-CURLcode Curl_rtsp_connect(struct connectdata *conn, bool *done)
-{
-  CURLcode httpStatus;
-  struct SessionHandle *data = conn->data;
-
-  httpStatus = Curl_http_connect(conn, done);
-
-  /* Initialize the CSeq if not already done */
-  if(data->state.rtsp_next_client_CSeq == 0)
-    data->state.rtsp_next_client_CSeq = 1;
-  if(data->state.rtsp_next_server_CSeq == 0)
-    data->state.rtsp_next_server_CSeq = 1;
-
-  conn->proto.rtspc.rtp_channel = -1;
-
-  return httpStatus;
-}
-
-CURLcode Curl_rtsp_disconnect(struct connectdata *conn) {
-  Curl_safefree(conn->proto.rtspc.rtp_buf);
-  return CURLE_OK;
-}
-
-
-CURLcode Curl_rtsp_done(struct connectdata *conn,
-                        CURLcode status, bool premature)
-{
-  struct SessionHandle *data = conn->data;
-  struct RTSP *rtsp = data->state.proto.rtsp;
-  CURLcode httpStatus;
-  long CSeq_sent;
-  long CSeq_recv;
-
-  /* Bypass HTTP empty-reply checks on receive */
-  if(data->set.rtspreq == RTSPREQ_RECEIVE)
-    premature = TRUE;
-
-  httpStatus = Curl_http_done(conn, status, premature);
-
-  if(rtsp) {
-    /* Check the sequence numbers */
-    CSeq_sent = rtsp->CSeq_sent;
-    CSeq_recv = rtsp->CSeq_recv;
-    if((data->set.rtspreq != RTSPREQ_RECEIVE) && (CSeq_sent != CSeq_recv)) {
-      failf(data, "The CSeq of this request %ld did not match the response %ld",
-            CSeq_sent, CSeq_recv);
-      return CURLE_RTSP_CSEQ_ERROR;
-    }
-    else if(data->set.rtspreq == RTSPREQ_RECEIVE &&
-            (conn->proto.rtspc.rtp_channel == -1)) {
-      infof(data, "Got an RTP Receive with a CSeq of %ld\n", CSeq_recv);
-      /* TODO CPC: Server -> Client logic here */
-    }
-  }
-
-  return httpStatus;
-}
-
-CURLcode Curl_rtsp(struct connectdata *conn, bool *done)
-{
-  struct SessionHandle *data = conn->data;
-  CURLcode result=CURLE_OK;
-  Curl_RtspReq rtspreq = data->set.rtspreq;
-  struct RTSP *rtsp;
-  struct HTTP *http;
-  Curl_send_buffer *req_buffer;
-  curl_off_t postsize = 0; /* for ANNOUNCE and SET_PARAMETER */
-  curl_off_t putsize = 0; /* for ANNOUNCE and SET_PARAMETER */
-
-  const char *p_request = NULL;
-  const char *p_session_id = NULL;
-  const char *p_accept = NULL;
-  const char *p_accept_encoding = NULL;
-  const char *p_range = NULL;
-  const char *p_referrer = NULL;
-  const char *p_stream_uri = NULL;
-  const char *p_transport = NULL;
-  const char *p_uagent = NULL;
-
-  *done = TRUE;
-
-  Curl_reset_reqproto(conn);
-
-  if(!data->state.proto.rtsp) {
-    /* Only allocate this struct if we don't already have it! */
-
-    rtsp = calloc(1, sizeof(struct RTSP));
-    if(!rtsp)
-      return CURLE_OUT_OF_MEMORY;
-    data->state.proto.rtsp = rtsp;
-  }
-  else {
-    rtsp = data->state.proto.rtsp;
-  }
-
-  http = &(rtsp->http_wrapper);
-  /* Assert that no one has changed the RTSP struct in an evil way */
-  DEBUGASSERT((void *)http == (void *)rtsp);
-
-  rtsp->CSeq_sent = data->state.rtsp_next_client_CSeq;
-  rtsp->CSeq_recv = 0;
-
-  /* Setup the 'p_request' pointer to the proper p_request string
-   * Since all RTSP requests are included here, there is no need to
-   * support custom requests like HTTP.
-   **/
-  DEBUGASSERT((rtspreq > RTSPREQ_NONE && rtspreq < RTSPREQ_LAST));
-  data->set.opt_no_body = TRUE; /* most requests don't contain a body */
-  switch(rtspreq) {
-  case RTSPREQ_NONE:
-    failf(data, "Got invalid RTSP request: RTSPREQ_NONE");
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-  case RTSPREQ_OPTIONS:
-    p_request = "OPTIONS";
-    break;
-  case RTSPREQ_DESCRIBE:
-    p_request = "DESCRIBE";
-    data->set.opt_no_body = FALSE;
-    break;
-  case RTSPREQ_ANNOUNCE:
-    p_request = "ANNOUNCE";
-    break;
-  case RTSPREQ_SETUP:
-    p_request = "SETUP";
-    break;
-  case RTSPREQ_PLAY:
-    p_request = "PLAY";
-    break;
-  case RTSPREQ_PAUSE:
-    p_request = "PAUSE";
-    break;
-  case RTSPREQ_TEARDOWN:
-    p_request = "TEARDOWN";
-    break;
-  case RTSPREQ_GET_PARAMETER:
-    /* GET_PARAMETER's no_body status is determined later */
-    p_request = "GET_PARAMETER";
-    break;
-  case RTSPREQ_SET_PARAMETER:
-    p_request = "SET_PARAMETER";
-    break;
-  case RTSPREQ_RECORD:
-    p_request = "RECORD";
-    break;
-  case RTSPREQ_RECEIVE:
-    p_request = "";
-    /* Treat interleaved RTP as body*/
-    data->set.opt_no_body = FALSE;
-    break;
-  case RTSPREQ_LAST:
-    failf(data, "Got invalid RTSP request: RTSPREQ_LAST");
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-  }
-
-  if(rtspreq == RTSPREQ_RECEIVE) {
-    result = Curl_setup_transfer(conn, FIRSTSOCKET, -1, TRUE,
-                                 &http->readbytecount, -1, NULL);
-
-    return result;
-  }
-
-  p_session_id = data->set.str[STRING_RTSP_SESSION_ID];
-  if(!p_session_id &&
-     (rtspreq & ~(RTSPREQ_OPTIONS | RTSPREQ_DESCRIBE | RTSPREQ_SETUP))) {
-    failf(data, "Refusing to issue an RTSP request [%s] without a session ID.",
-          p_request ? p_request : "");
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-  }
-
-  /* TODO: auth? */
-  /* TODO: proxy? */
-
-  /* Stream URI. Default to server '*' if not specified */
-  if(data->set.str[STRING_RTSP_STREAM_URI]) {
-    p_stream_uri = data->set.str[STRING_RTSP_STREAM_URI];
-  }
-  else {
-    p_stream_uri = "*";
-  }
-
-  /* Transport Header for SETUP requests */
-  p_transport = Curl_checkheaders(data, "Transport:");
-  if(rtspreq == RTSPREQ_SETUP && !p_transport) {
-    /* New Transport: setting? */
-    if(data->set.str[STRING_RTSP_TRANSPORT]) {
-      Curl_safefree(conn->allocptr.rtsp_transport);
-
-      conn->allocptr.rtsp_transport =
-        aprintf("Transport: %s\r\n",
-                data->set.str[STRING_RTSP_TRANSPORT]);
-      if(!conn->allocptr.rtsp_transport)
-        return CURLE_OUT_OF_MEMORY;
-    }
-    else {
-      failf(data,
-            "Refusing to issue an RTSP SETUP without a Transport: header.");
-      return CURLE_BAD_FUNCTION_ARGUMENT;
-    }
-
-    p_transport = conn->allocptr.rtsp_transport;
-  }
-
-  /* Accept Headers for DESCRIBE requests */
-  if(rtspreq == RTSPREQ_DESCRIBE) {
-    /* Accept Header */
-    p_accept = Curl_checkheaders(data, "Accept:")?
-      NULL:"Accept: application/sdp\r\n";
-
-    /* Accept-Encoding header */
-    if(!Curl_checkheaders(data, "Accept-Encoding:") &&
-       data->set.str[STRING_ENCODING]) {
-      Curl_safefree(conn->allocptr.accept_encoding);
-      conn->allocptr.accept_encoding =
-        aprintf("Accept-Encoding: %s\r\n", data->set.str[STRING_ENCODING]);
-
-      if(!conn->allocptr.accept_encoding)
-        return CURLE_OUT_OF_MEMORY;
-
-      p_accept_encoding = conn->allocptr.accept_encoding;
-    }
-  }
-
-  /* The User-Agent string might have been allocated in url.c already, because
-     it might have been used in the proxy connect, but if we have got a header
-     with the user-agent string specified, we erase the previously made string
-     here. */
-  if(Curl_checkheaders(data, "User-Agent:") && conn->allocptr.uagent) {
-    Curl_safefree(conn->allocptr.uagent);
-    conn->allocptr.uagent = NULL;
-  }
-  else if(!Curl_checkheaders(data, "User-Agent:") &&
-          data->set.str[STRING_USERAGENT]) {
-    p_uagent = conn->allocptr.uagent;
-  }
-
-  /* Referrer */
-  Curl_safefree(conn->allocptr.ref);
-  if(data->change.referer && !Curl_checkheaders(data, "Referer:"))
-    conn->allocptr.ref = aprintf("Referer: %s\r\n", data->change.referer);
-  else
-    conn->allocptr.ref = NULL;
-
-  p_referrer = conn->allocptr.ref;
-
-  /*
-   * Range Header
-   * Only applies to PLAY, PAUSE, RECORD
-   *
-   * Go ahead and use the Range stuff supplied for HTTP
-   */
-  if(data->state.use_range &&
-     (rtspreq  & (RTSPREQ_PLAY | RTSPREQ_PAUSE | RTSPREQ_RECORD))) {
-
-    /* Check to see if there is a range set in the custom headers */
-    if(!Curl_checkheaders(data, "Range:") && data->state.range) {
-      Curl_safefree(conn->allocptr.rangeline);
-      conn->allocptr.rangeline = aprintf("Range: %s\r\n", data->state.range);
-      p_range = conn->allocptr.rangeline;
-    }
-  }
-
-  /*
-   * Sanity check the custom headers
-   */
-  if(Curl_checkheaders(data, "CSeq:")) {
-    failf(data, "CSeq cannot be set as a custom header.");
-    return CURLE_RTSP_CSEQ_ERROR;
-  }
-  if(Curl_checkheaders(data, "Session:")) {
-    failf(data, "Session ID cannot be set as a custom header.");
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-  }
-
-  /* Initialize a dynamic send buffer */
-  req_buffer = Curl_add_buffer_init();
-
-  if(!req_buffer)
-    return CURLE_OUT_OF_MEMORY;
-
-  result =
-    Curl_add_bufferf(req_buffer,
-                     "%s %s RTSP/1.0\r\n" /* Request Stream-URI RTSP/1.0 */
-                     "CSeq: %ld\r\n", /* CSeq */
-                     (p_request ? p_request : ""), p_stream_uri,
-                     rtsp->CSeq_sent);
-  if(result)
-    return result;
-
-  /*
-   * Rather than do a normal alloc line, keep the session_id unformatted
-   * to make comparison easier
-   */
-  if(p_session_id) {
-    result = Curl_add_bufferf(req_buffer, "Session: %s\r\n", p_session_id);
-    if(result)
-      return result;
-  }
-
-  /*
-   * Shared HTTP-like options
-   */
-  result = Curl_add_bufferf(req_buffer,
-                            "%s" /* transport */
-                            "%s" /* accept */
-                            "%s" /* accept-encoding */
-                            "%s" /* range */
-                            "%s" /* referrer */
-                            "%s" /* user-agent */
-                            ,
-                            p_transport ? p_transport : "",
-                            p_accept ? p_accept : "",
-                            p_accept_encoding ? p_accept_encoding : "",
-                            p_range ? p_range : "",
-                            p_referrer ? p_referrer : "",
-                            p_uagent ? p_uagent : "");
-  if(result)
-    return result;
-
-  if((rtspreq == RTSPREQ_SETUP) || (rtspreq == RTSPREQ_DESCRIBE)) {
-    result = Curl_add_timecondition(data, req_buffer);
-    if(result)
-      return result;
-  }
-
-  result = Curl_add_custom_headers(conn, req_buffer);
-  if(result)
-    return result;
-
-  if(rtspreq == RTSPREQ_ANNOUNCE ||
-     rtspreq == RTSPREQ_SET_PARAMETER ||
-     rtspreq == RTSPREQ_GET_PARAMETER) {
-
-    if(data->set.upload) {
-      putsize = data->set.infilesize;
-      data->set.httpreq = HTTPREQ_PUT;
-
-    }
-    else {
-      postsize = (data->set.postfieldsize != -1)?
-        data->set.postfieldsize:
-        (data->set.postfields? (curl_off_t)strlen(data->set.postfields):0);
-      data->set.httpreq = HTTPREQ_POST;
-    }
-
-    if(putsize > 0 || postsize > 0) {
-      /* As stated in the http comments, it is probably not wise to
-       * actually set a custom Content-Length in the headers */
-      if(!Curl_checkheaders(data, "Content-Length:")) {
-        result = Curl_add_bufferf(req_buffer,
-            "Content-Length: %" FORMAT_OFF_T"\r\n",
-            (data->set.upload ? putsize : postsize));
-        if(result)
-          return result;
-      }
-
-      if(rtspreq == RTSPREQ_SET_PARAMETER ||
-         rtspreq == RTSPREQ_GET_PARAMETER) {
-        if(!Curl_checkheaders(data, "Content-Type:")) {
-          result = Curl_add_bufferf(req_buffer,
-              "Content-Type: text/parameters\r\n");
-          if(result)
-            return result;
-        }
-      }
-
-      if(rtspreq == RTSPREQ_ANNOUNCE) {
-        if(!Curl_checkheaders(data, "Content-Type:")) {
-          result = Curl_add_bufferf(req_buffer,
-              "Content-Type: application/sdp\r\n");
-          if(result)
-            return result;
-        }
-      }
-
-    data->state.expect100header = FALSE; /* RTSP posts are simple/small */
-    } else if(rtspreq == RTSPREQ_GET_PARAMETER) {
-      /* Check for an empty GET_PARAMETER (heartbeat) request */
-      data->set.httpreq = HTTPREQ_HEAD;
-      data->set.opt_no_body = TRUE;
-    }
-  }
-
-  /* RTSP never allows chunked transfer */
-  data->req.forbidchunk = TRUE;
-  /* Finish the request buffer */
-  result = Curl_add_buffer(req_buffer, "\r\n", 2);
-  if(result)
-    return result;
-
-  if(postsize > 0) {
-    result = Curl_add_buffer(req_buffer, data->set.postfields,
-                             (size_t)postsize);
-    if(result)
-      return result;
-  }
-
-  /* issue the request */
-  result = Curl_add_buffer_send(req_buffer, conn,
-                                &data->info.request_size, 0, FIRSTSOCKET);
-  if(result) {
-    failf(data, "Failed sending RTSP request");
-    return result;
-  }
-
-  result = Curl_setup_transfer(conn, FIRSTSOCKET, -1, TRUE,
-                               &http->readbytecount,
-                               putsize?FIRSTSOCKET:-1,
-                               putsize?&http->writebytecount:NULL);
-
-  if(result) {
-    failf(data, "Failed RTSP transfer");
-    return result;
-  }
-
-  /* Increment the CSeq on success */
-  data->state.rtsp_next_client_CSeq++;
-
-  if(http->writebytecount) {
-    /* if a request-body has been sent off, we make sure this progress is
-       noted properly */
-    Curl_pgrsSetUploadCounter(data, http->writebytecount);
-    if(Curl_pgrsUpdate(conn))
-      result = CURLE_ABORTED_BY_CALLBACK;
-  }
-
-  return result;
-}
-
-CURLcode Curl_rtsp_rtp_readwrite(struct SessionHandle *data,
-                                 struct connectdata *conn,
-                                 ssize_t *nread,
-                                 bool *readmore) {
-  struct SingleRequest *k = &data->req;
-  struct rtsp_conn *rtspc = &(conn->proto.rtspc);
-
-  char *rtp; /* moving pointer to rtp data */
-  ssize_t rtp_dataleft; /* how much data left to parse in this round */
-  char *scratch;
-  CURLcode result;
-
-  if(rtspc->rtp_buf) {
-    /* There was some leftover data the last time. Merge buffers */
-    char *newptr = realloc(rtspc->rtp_buf, rtspc->rtp_bufsize + *nread);
-    if(!newptr) {
-      Curl_safefree(rtspc->rtp_buf);
-      rtspc->rtp_buf = NULL;
-      rtspc->rtp_bufsize = 0;
-      return CURLE_OUT_OF_MEMORY;
-    }
-    rtspc->rtp_buf = newptr;
-    memcpy(rtspc->rtp_buf + rtspc->rtp_bufsize, k->str, *nread);
-    rtspc->rtp_bufsize += *nread;
-    rtp = rtspc->rtp_buf;
-    rtp_dataleft = rtspc->rtp_bufsize;
-  }
-  else {
-    /* Just parse the request buffer directly */
-    rtp = k->str;
-    rtp_dataleft = *nread;
-  }
-
-  while((rtp_dataleft > 0) &&
-        (rtp[0] == '$')) {
-    if(rtp_dataleft > 4) {
-      int rtp_length;
-
-      /* Parse the header */
-      /* The channel identifier immediately follows and is 1 byte */
-      rtspc->rtp_channel = RTP_PKT_CHANNEL(rtp);
-
-      /* The length is two bytes */
-      rtp_length = RTP_PKT_LENGTH(rtp);
-
-      if(rtp_dataleft < rtp_length + 4) {
-        /* Need more - incomplete payload*/
-        *readmore = TRUE;
-        break;
-      }
-      else {
-        /* We have the full RTP interleaved packet
-         * Write out the header including the leading '$' */
-        DEBUGF(infof(data, "RTP write channel %d rtp_length %d\n",
-              rtspc->rtp_channel, rtp_length));
-        result = rtp_client_write(conn, &rtp[0], rtp_length + 4);
-        if(result) {
-          failf(data, "Got an error writing an RTP packet");
-          *readmore = FALSE;
-          Curl_safefree(rtspc->rtp_buf);
-          rtspc->rtp_buf = NULL;
-          rtspc->rtp_bufsize = 0;
-          return result;
-        }
-
-        /* Move forward in the buffer */
-        rtp_dataleft -= rtp_length + 4;
-        rtp += rtp_length + 4;
-
-        if(data->set.rtspreq == RTSPREQ_RECEIVE) {
-          /* If we are in a passive receive, give control back
-           * to the app as often as we can.
-           */
-          k->keepon &= ~KEEP_RECV;
-        }
-      }
-    }
-    else {
-      /* Need more - incomplete header */
-      *readmore = TRUE;
-      break;
-    }
-  }
-
-  if(rtp_dataleft != 0 && rtp[0] == '$') {
-    DEBUGF(infof(data, "RTP Rewinding %zu %s\n", rtp_dataleft,
-          *readmore ? "(READMORE)" : ""));
-
-    /* Store the incomplete RTP packet for a "rewind" */
-    scratch = malloc(rtp_dataleft);
-    if(!scratch) {
-      Curl_safefree(rtspc->rtp_buf);
-      rtspc->rtp_buf = NULL;
-      rtspc->rtp_bufsize = 0;
-      return CURLE_OUT_OF_MEMORY;
-    }
-    memcpy(scratch, rtp, rtp_dataleft);
-    Curl_safefree(rtspc->rtp_buf);
-    rtspc->rtp_buf = scratch;
-    rtspc->rtp_bufsize = rtp_dataleft;
-
-    /* As far as the transfer is concerned, this data is consumed */
-    *nread = 0;
-    return CURLE_OK;
-  }
-  else {
-    /* Fix up k->str to point just after the last RTP packet */
-    k->str += *nread - rtp_dataleft;
-
-    /* either all of the data has been read or...
-     * rtp now points at the next byte to parse
-     */
-    if(rtp_dataleft > 0)
-      DEBUGASSERT(k->str[0] == rtp[0]);
-
-    DEBUGASSERT(rtp_dataleft <= *nread); /* sanity check */
-
-    *nread = rtp_dataleft;
-  }
-
-  /* If we get here, we have finished with the leftover/merge buffer */
-  Curl_safefree(rtspc->rtp_buf);
-  rtspc->rtp_buf = NULL;
-  rtspc->rtp_bufsize = 0;
-
-  return CURLE_OK;
-}
-
-static
-CURLcode rtp_client_write(struct connectdata *conn, char *ptr, size_t len)
-{
-  struct SessionHandle *data = conn->data;
-  size_t wrote;
-  curl_write_callback writeit;
-
-  if(len == 0) {
-    failf (data, "Cannot write a 0 size RTP packet.");
-    return CURLE_WRITE_ERROR;
-  }
-
-  writeit = data->set.fwrite_rtp?data->set.fwrite_rtp:data->set.fwrite_func;
-  wrote = writeit(ptr, 1, len, data->set.rtp_out);
-
-  if(CURL_WRITEFUNC_PAUSE == wrote) {
-    failf (data, "Cannot pause RTP");
-    return CURLE_WRITE_ERROR;
-  }
-
-  if(wrote != len) {
-    failf (data, "Failed writing RTP data");
-    return CURLE_WRITE_ERROR;
-  }
-
-  return CURLE_OK;
-}
-
-CURLcode Curl_rtsp_parseheader(struct connectdata *conn,
-                               char *header)
-{
-  struct SessionHandle *data = conn->data;
-  long CSeq = 0;
-
-  if(checkprefix("CSeq:", header)) {
-    /* Store the received CSeq. Match is verified in rtsp_done */
-    int nc;
-    char *temp = strdup(header);
-    if(!temp)
-      return CURLE_OUT_OF_MEMORY;
-    Curl_strntoupper(temp, temp, sizeof(temp));
-    nc = sscanf(temp, "CSEQ: %ld", &CSeq);
-    free(temp);
-    if(nc == 1) {
-      data->state.proto.rtsp->CSeq_recv = CSeq; /* mark the request */
-      data->state.rtsp_CSeq_recv = CSeq; /* update the handle */
-    }
-    else {
-      failf(data, "Unable to read the CSeq header: [%s]", header);
-      return CURLE_RTSP_CSEQ_ERROR;
-    }
-  }
-  else if(checkprefix("Session:", header)) {
-    char *start;
-
-    /* Find the first non-space letter */
-    start = header + 9;
-    while(*start && ISSPACE(*start))
-      start++;
-
-    if(!start) {
-      failf(data, "Got a blank Session ID");
-    }
-    else if(data->set.str[STRING_RTSP_SESSION_ID]) {
-      /* If the Session ID is set, then compare */
-      if(strncmp(start, data->set.str[STRING_RTSP_SESSION_ID],
-                 strlen(data->set.str[STRING_RTSP_SESSION_ID]))  != 0) {
-        failf(data, "Got RTSP Session ID Line [%s], but wanted ID [%s]",
-              start, data->set.str[STRING_RTSP_SESSION_ID]);
-        return CURLE_RTSP_SESSION_ERROR;
-      }
-    }
-    else {
-      /* If the Session ID is not set, and we find it in a response, then
-         set it */
-
-      /* The session ID can be an alphanumeric or a 'safe' character
-       *
-       * RFC 2326 15.1 Base Syntax:
-       * safe =  "\$" | "-" | "_" | "." | "+"
-       * */
-      char *end = start;
-      while(*end &&
-            (ISALNUM(*end) || *end == '-' || *end == '_' || *end == '.' ||
-             *end == '+' ||
-             (*end == '\\' && *(end + 1) && *(end + 1) == '$' && (++end, 1))))
-        end++;
-
-      /* Copy the id substring into a new buffer */
-      data->set.str[STRING_RTSP_SESSION_ID] = malloc(end - start + 1);
-      if(data->set.str[STRING_RTSP_SESSION_ID] == NULL)
-        return CURLE_OUT_OF_MEMORY;
-      memcpy(data->set.str[STRING_RTSP_SESSION_ID], start, end - start);
-      (data->set.str[STRING_RTSP_SESSION_ID])[end - start] = '\0';
-    }
-  }
-  return CURLE_OK;
-}
-
-#endif /* CURL_DISABLE_RTSP */
diff --git a/src/other/curl/lib/rtsp.h b/src/other/curl/lib/rtsp.h
deleted file mode 100644
index c3f8bd7..0000000
--- a/src/other/curl/lib/rtsp.h
+++ /dev/null
@@ -1,82 +0,0 @@
-#ifndef __RTSP_H_
-#define __RTSP_H_
-
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#ifndef CURL_DISABLE_RTSP
-
-extern const struct Curl_handler Curl_handler_rtsp;
-
-/*
- * Parse and write out any available RTP data.
- *
- * nread: amount of data left after k->str. will be modified if RTP
- *        data is parsed and k->str is moved up
- * readmore: whether or not the RTP parser needs more data right away
- */
-CURLcode Curl_rtsp_rtp_readwrite(struct SessionHandle *data,
-                                 struct connectdata *conn,
-                                 ssize_t *nread,
-                                 bool *readmore);
-
-
-/* protocol-specific functions set up to be called by the main engine */
-CURLcode Curl_rtsp(struct connectdata *conn, bool *done);
-CURLcode Curl_rtsp_done(struct connectdata *conn, CURLcode, bool premature);
-CURLcode Curl_rtsp_connect(struct connectdata *conn, bool *done);
-CURLcode Curl_rtsp_disconnect(struct connectdata *conn);
-
-CURLcode Curl_rtsp_parseheader(struct connectdata *conn, char *header);
-
-#endif /* CURL_DISABLE_RTSP */
-
-/*
- * RTSP Connection data
- *
- * Currently, only used for tracking incomplete RTP data reads
- */
-struct rtsp_conn {
-  char *rtp_buf;
-  ssize_t rtp_bufsize;
-  int rtp_channel;
-};
-
-/****************************************************************************
- * RTSP unique setup
- ***************************************************************************/
-struct RTSP {
-  /*
-   * http_wrapper MUST be the first element of this structure for the wrap
-   * logic to work. In this way, we get a cheap polymorphism because
-   * &(data->state.proto.rtsp) == &(data->state.proto.http) per the C spec
-   *
-   * HTTP functions can safely treat this as an HTTP struct, but RTSP aware
-   * functions can also index into the later elements.
-   */
-  struct HTTP http_wrapper; /*wrap HTTP to do the heavy lifting */
-
-  long CSeq_sent; /* CSeq of this request */
-  long CSeq_recv; /* CSeq received */
-};
-
-
-#endif /* __RTSP_H_ */
diff --git a/src/other/curl/lib/security.c b/src/other/curl/lib/security.c
deleted file mode 100644
index 03fc679..0000000
--- a/src/other/curl/lib/security.c
+++ /dev/null
@@ -1,546 +0,0 @@
-/* This source code was modified by Martin Hedenfalk <mhe at stacken.kth.se> for
- * use in Curl. His latest changes were done 2000-09-18.
- *
- * It has since been patched and modified a lot by Daniel Stenberg
- * <daniel at haxx.se> to make it better applied to curl conditions, and to make
- * it not use globals, pollute name space and more. This source code awaits a
- * rewrite to work around the paragraph 2 in the BSD licenses as explained
- * below.
- *
- * Copyright (c) 1998, 1999 Kungliga Tekniska Högskolan
- * (Royal Institute of Technology, Stockholm, Sweden).
- *
- * Copyright (C) 2001 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * 3. Neither the name of the Institute nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.  */
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_FTP
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-
-#define _MPRINTF_REPLACE /* we want curl-functions instead of native ones */
-#include <curl/mprintf.h>
-
-#include <stdlib.h>
-#include <string.h>
-
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#include "urldata.h"
-#include "krb4.h"
-#include "curl_base64.h"
-#include "sendf.h"
-#include "ftp.h"
-#include "curl_memory.h"
-#include "rawstr.h"
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-static const struct {
-  enum protection_level level;
-  const char *name;
-} level_names[] = {
-  { prot_clear, "clear" },
-  { prot_safe, "safe" },
-  { prot_confidential, "confidential" },
-  { prot_private, "private" }
-};
-
-static enum protection_level
-name_to_level(const char *name)
-{
-  int i;
-  for(i = 0; i < (int)sizeof(level_names)/(int)sizeof(level_names[0]); i++)
-    if(checkprefix(name, level_names[i].name))
-      return level_names[i].level;
-  return (enum protection_level)-1;
-}
-
-static const struct Curl_sec_client_mech * const mechs[] = {
-#ifdef HAVE_GSSAPI
-  &Curl_krb5_client_mech,
-#endif
-#ifdef HAVE_KRB4
-  &Curl_krb4_client_mech,
-#endif
-  NULL
-};
-
-/* TODO: This function isn't actually used anywhere and should be removed */
-int
-Curl_sec_getc(struct connectdata *conn, FILE *F)
-{
-  if(conn->sec_complete && conn->data_prot) {
-    char c;
-    if(Curl_sec_read(conn, fileno(F), &c, 1) <= 0)
-      return EOF;
-    return c;
-  }
-  else
-    return getc(F);
-}
-
-static int
-block_read(int fd, void *buf, size_t len)
-{
-  unsigned char *p = buf;
-  int b;
-  while(len) {
-    b = read(fd, p, len);
-    if(b == 0)
-      return 0;
-    else if(b < 0 && (errno == EINTR || errno == EAGAIN))
-      /* TODO: this will busy loop in the EAGAIN case */
-      continue;
-    else if(b < 0)
-      return -1;
-    len -= b;
-    p += b;
-  }
-  return p - (unsigned char*)buf;
-}
-
-static int
-block_write(int fd, const void *buf, size_t len)
-{
-  const unsigned char *p = buf;
-  int b;
-  while(len) {
-    b = write(fd, p, len);
-    if(b < 0 && (errno == EINTR || errno == EAGAIN))
-      continue;
-    else if(b < 0)
-      return -1;
-    len -= b;
-    p += b;
-  }
-  return p - (unsigned char*)buf;
-}
-
-static int
-sec_get_data(struct connectdata *conn,
-             int fd, struct krb4buffer *buf)
-{
-  int len;
-  int b;
-
-  b = block_read(fd, &len, sizeof(len));
-  if(b == 0)
-    return 0;
-  else if(b < 0)
-    return -1;
-  len = ntohl(len);
-  /* TODO: This realloc will cause a memory leak in an out of memory
-   * condition */
-  buf->data = realloc(buf->data, len);
-  b = buf->data ? block_read(fd, buf->data, len) : -1;
-  if(b == 0)
-    return 0;
-  else if(b < 0)
-    return -1;
-  buf->size = (conn->mech->decode)(conn->app_data, buf->data, len,
-                                   conn->data_prot, conn);
-  buf->index = 0;
-  return 0;
-}
-
-static size_t
-buffer_read(struct krb4buffer *buf, void *data, size_t len)
-{
-  if(buf->size - buf->index < len)
-    len = buf->size - buf->index;
-  memcpy(data, (char*)buf->data + buf->index, len);
-  buf->index += len;
-  return len;
-}
-
-static size_t
-buffer_write(struct krb4buffer *buf, void *data, size_t len)
-{
-  if(buf->index + len > buf->size) {
-    void *tmp;
-    if(buf->data == NULL)
-      tmp = malloc(1024);
-    else
-      tmp = realloc(buf->data, buf->index + len);
-    if(tmp == NULL)
-      return -1;
-    buf->data = tmp;
-    buf->size = buf->index + len;
-  }
-  memcpy((char*)buf->data + buf->index, data, len);
-  buf->index += len;
-  return len;
-}
-
-int
-Curl_sec_read(struct connectdata *conn, int fd, void *buffer, int length)
-{
-  size_t len;
-  int rx = 0;
-
-  if(conn->sec_complete == 0 || conn->data_prot == 0)
-    return read(fd, buffer, length);
-
-  if(conn->in_buffer.eof_flag){
-    conn->in_buffer.eof_flag = 0;
-    return 0;
-  }
-
-  len = buffer_read(&conn->in_buffer, buffer, length);
-  length -= len;
-  rx += len;
-  buffer = (char*)buffer + len;
-
-  while(length) {
-    if(sec_get_data(conn, fd, &conn->in_buffer) < 0)
-      return -1;
-    if(conn->in_buffer.size == 0) {
-      if(rx)
-        conn->in_buffer.eof_flag = 1;
-      return rx;
-    }
-    len = buffer_read(&conn->in_buffer, buffer, length);
-    length -= len;
-    rx += len;
-    buffer = (char*)buffer + len;
-  }
-  return rx;
-}
-
-static int
-sec_send(struct connectdata *conn, int fd, const char *from, int length)
-{
-  int bytes;
-  void *buf;
-  enum protection_level protlevel = conn->data_prot;
-  int iscmd = protlevel == prot_cmd;
-
-  if(iscmd) {
-    if(!strncmp(from, "PASS ", 5) || !strncmp(from, "ACCT ", 5))
-      protlevel = prot_private;
-    else
-      protlevel = conn->command_prot;
-  }
-  bytes = (conn->mech->encode)(conn->app_data, from, length, protlevel,
-                               &buf, conn);
-  if(iscmd) {
-    char *cmdbuf;
-
-    bytes = Curl_base64_encode(conn->data, (char *)buf, bytes, &cmdbuf);
-    if(bytes > 0) {
-      if(protlevel == prot_private)
-        block_write(fd, "ENC ", 4);
-      else
-        block_write(fd, "MIC ", 4);
-      block_write(fd, cmdbuf, bytes);
-      block_write(fd, "\r\n", 2);
-      Curl_infof(conn->data, "%s %s\n",
-                 protlevel == prot_private ? "ENC" : "MIC", cmdbuf);
-      free(cmdbuf);
-    }
-  }
-  else {
-    bytes = htonl(bytes);
-    block_write(fd, &bytes, sizeof(bytes));
-    block_write(fd, buf, ntohl(bytes));
-  }
-  free(buf);
-  return length;
-}
-
-int
-Curl_sec_fflush_fd(struct connectdata *conn, int fd)
-{
-  if(conn->data_prot != prot_clear) {
-    if(conn->out_buffer.index > 0){
-      Curl_sec_write(conn, fd,
-                     conn->out_buffer.data, conn->out_buffer.index);
-      conn->out_buffer.index = 0;
-    }
-    sec_send(conn, fd, NULL, 0);
-  }
-  return 0;
-}
-
-int
-Curl_sec_write(struct connectdata *conn, int fd, const char *buffer, int length)
-{
-  int len = conn->buffer_size;
-  int tx = 0;
-
-  if(conn->data_prot == prot_clear)
-    return write(fd, buffer, length);
-
-  len -= (conn->mech->overhead)(conn->app_data, conn->data_prot, len);
-  if(len <= 0)
-    len = length;
-  while(length){
-    if(length < len)
-      len = length;
-    sec_send(conn, fd, buffer, len);
-    length -= len;
-    buffer += len;
-    tx += len;
-  }
-  return tx;
-}
-
-ssize_t
-Curl_sec_send(struct connectdata *conn, int num, const char *buffer, int length)
-{
-  curl_socket_t fd = conn->sock[num];
-  return (ssize_t)Curl_sec_write(conn, fd, buffer, length);
-}
-
-int
-Curl_sec_putc(struct connectdata *conn, int c, FILE *F)
-{
-  char ch = (char)c;
-  if(conn->data_prot == prot_clear)
-    return putc(c, F);
-
-  buffer_write(&conn->out_buffer, &ch, 1);
-  if(c == '\n' || conn->out_buffer.index >= 1024 /* XXX */) {
-    Curl_sec_write(conn, fileno(F), conn->out_buffer.data,
-                   conn->out_buffer.index);
-    conn->out_buffer.index = 0;
-  }
-  return c;
-}
-
-int
-Curl_sec_read_msg(struct connectdata *conn, char *s, int level)
-{
-  int len;
-  unsigned char *buf;
-  int code;
-
-  len = Curl_base64_decode(s + 4, &buf); /* XXX */
-  if(len > 0)
-    len = (conn->mech->decode)(conn->app_data, buf, len, level, conn);
-  else
-    return -1;
-
-  if(len < 0) {
-    free(buf);
-    return -1;
-  }
-
-  if(conn->data->set.verbose) {
-    buf[len] = '\n';
-    Curl_debug(conn->data, CURLINFO_HEADER_IN, (char *)buf, len + 1, conn);
-  }
-
-  buf[len] = '\0';
-
-  if(buf[3] == '-')
-    code = 0;
-  else
-    sscanf((char *)buf, "%d", &code);
-  if(buf[len-1] == '\n')
-    buf[len-1] = '\0';
-  strcpy(s, (char *)buf);
-  free(buf);
-  return code;
-}
-
-enum protection_level
-Curl_set_command_prot(struct connectdata *conn, enum protection_level level)
-{
-  enum protection_level old = conn->command_prot;
-  conn->command_prot = level;
-  return old;
-}
-
-static int
-sec_prot_internal(struct connectdata *conn, int level)
-{
-  char *p;
-  unsigned int s = 1048576;
-  ssize_t nread;
-
-  if(!conn->sec_complete){
-    infof(conn->data, "No security data exchange has taken place.\n");
-    return -1;
-  }
-
-  if(level){
-    int code;
-    if(Curl_ftpsendf(conn, "PBSZ %u", s))
-      return -1;
-
-    if(Curl_GetFTPResponse(&nread, conn, &code))
-      return -1;
-
-    if(code/100 != 2){
-      failf(conn->data, "Failed to set protection buffer size.");
-      return -1;
-    }
-    conn->buffer_size = s;
-
-    p = strstr(conn->data->state.buffer, "PBSZ=");
-    if(p)
-      sscanf(p, "PBSZ=%u", &s);
-    if(s < conn->buffer_size)
-      conn->buffer_size = s;
-  }
-
-  if(Curl_ftpsendf(conn, "PROT %c", level["CSEP"]))
-    return -1;
-
-  if(Curl_GetFTPResponse(&nread, conn, NULL))
-    return -1;
-
-  if(conn->data->state.buffer[0] != '2'){
-    failf(conn->data, "Failed to set protection level.");
-    return -1;
-  }
-
-  conn->data_prot = (enum protection_level)level;
-  if(level == prot_private)
-    conn->command_prot = (enum protection_level)level;
-  return 0;
-}
-
-void
-Curl_sec_set_protection_level(struct connectdata *conn)
-{
-  if(conn->sec_complete && conn->data_prot != conn->request_data_prot)
-    sec_prot_internal(conn, conn->request_data_prot);
-}
-
-
-int
-Curl_sec_request_prot(struct connectdata *conn, const char *level)
-{
-  int l = name_to_level(level);
-  if(l == -1)
-    return -1;
-  conn->request_data_prot = (enum protection_level)l;
-  return 0;
-}
-
-int
-Curl_sec_login(struct connectdata *conn)
-{
-  int ret;
-  const struct Curl_sec_client_mech * const *m;
-  ssize_t nread;
-  struct SessionHandle *data=conn->data;
-  int ftpcode;
-
-  for(m = mechs; *m && (*m)->name; m++) {
-    void *tmp;
-
-    tmp = realloc(conn->app_data, (*m)->size);
-    if(tmp == NULL) {
-      failf (data, "realloc %u failed", (*m)->size);
-      return -1;
-    }
-    conn->app_data = tmp;
-
-    if((*m)->init && (*(*m)->init)(conn->app_data) != 0) {
-      infof(data, "Skipping %s...\n", (*m)->name);
-      continue;
-    }
-    infof(data, "Trying %s...\n", (*m)->name);
-
-    if(Curl_ftpsendf(conn, "AUTH %s", (*m)->name))
-      return -1;
-
-    if(Curl_GetFTPResponse(&nread, conn, &ftpcode))
-      return -1;
-
-    if(conn->data->state.buffer[0] != '3'){
-      switch(ftpcode) {
-      case 504:
-        infof(data,
-              "%s is not supported by the server.\n", (*m)->name);
-        break;
-      case 534:
-        infof(data, "%s rejected as security mechanism.\n", (*m)->name);
-        break;
-      default:
-        if(conn->data->state.buffer[0] == '5') {
-          infof(data, "The server doesn't support the FTP "
-                "security extensions.\n");
-          return -1;
-        }
-        break;
-      }
-      continue;
-    }
-
-    ret = (*(*m)->auth)(conn->app_data, conn);
-
-    if(ret == AUTH_CONTINUE)
-      continue;
-    else if(ret != AUTH_OK){
-      /* mechanism is supposed to output error string */
-      return -1;
-    }
-    conn->mech = *m;
-    conn->sec_complete = 1;
-    conn->command_prot = prot_safe;
-    /* Set the requested protection level */
-    /* BLOCKING */
-    Curl_sec_set_protection_level(conn);
-    break;
-  }
-
-  return *m == NULL;
-}
-
-void
-Curl_sec_end(struct connectdata *conn)
-{
-  if(conn->mech != NULL) {
-    if(conn->mech->end)
-      (conn->mech->end)(conn->app_data);
-    memset(conn->app_data, 0, conn->mech->size);
-    free(conn->app_data);
-    conn->app_data = NULL;
-  }
-  conn->sec_complete = 0;
-  conn->data_prot = (enum protection_level)0;
-  conn->mech=NULL;
-}
-
-#endif /* HAVE_KRB4 */
-#endif /* CURL_DISABLE_FTP */
diff --git a/src/other/curl/lib/select.c b/src/other/curl/lib/select.c
deleted file mode 100644
index e6882da..0000000
--- a/src/other/curl/lib/select.c
+++ /dev/null
@@ -1,506 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-
-#if !defined(HAVE_SELECT) && !defined(HAVE_POLL_FINE)
-#error "We can't compile without select() or poll() support."
-#endif
-
-#if defined(__BEOS__) && !defined(__HAIKU__)
-/* BeOS has FD_SET defined in socket.h */
-#include <socket.h>
-#endif
-
-#ifdef MSDOS
-#include <dos.h>  /* delay() */
-#endif
-
-#include <curl/curl.h>
-
-#include "urldata.h"
-#include "connect.h"
-#include "select.h"
-
-/* Winsock and TPF sockets are not in range [0..FD_SETSIZE-1] */
-
-#if defined(USE_WINSOCK) || defined(TPF)
-#define VERIFY_SOCK(x) do { } while(0)
-#else
-#define VALID_SOCK(s) (((s) >= 0) && ((s) < FD_SETSIZE))
-#define VERIFY_SOCK(x) do { \
-  if(!VALID_SOCK(x)) { \
-    SET_SOCKERRNO(EINVAL); \
-    return -1; \
-  } \
-} while(0)
-#endif
-
-/* Convenience local macros */
-
-#define elapsed_ms  (int)curlx_tvdiff(curlx_tvnow(), initial_tv)
-
-#ifdef CURL_ACKNOWLEDGE_EINTR
-#define error_not_EINTR (1)
-#else
-#define error_not_EINTR (error != EINTR)
-#endif
-
-/*
- * Internal function used for waiting a specific amount of ms
- * in Curl_socket_ready() and Curl_poll() when no file descriptor
- * is provided to wait on, just being used to delay execution.
- * WinSock select() and poll() timeout mechanisms need a valid
- * socket descriptor in a not null file descriptor set to work.
- * Waiting indefinitely with this function is not allowed, a
- * zero or negative timeout value will return immediately.
- * Timeout resolution, accuracy, as well as maximum supported
- * value is system dependent, neither factor is a citical issue
- * for the intended use of this function in the library.
- * On non-DOS and non-Winsock platforms, when compiled with
- * CURL_ACKNOWLEDGE_EINTR defined, EINTR condition is honored
- * and function might exit early without awaiting full timeout,
- * otherwise EINTR will be ignored and full timeout will elapse.
- *
- * Return values:
- *   -1 = system call error, invalid timeout value, or interrupted
- *    0 = specified timeout has elapsed
- */
-static int wait_ms(int timeout_ms)
-{
-#if !defined(MSDOS) && !defined(USE_WINSOCK)
-#ifndef HAVE_POLL_FINE
-  struct timeval pending_tv;
-#endif
-  struct timeval initial_tv;
-  int pending_ms;
-  int error;
-#endif
-  int r = 0;
-
-  if(!timeout_ms)
-    return 0;
-  if(timeout_ms < 0) {
-    SET_SOCKERRNO(EINVAL);
-    return -1;
-  }
-#if defined(MSDOS)
-  delay(timeout_ms);
-#elif defined(USE_WINSOCK)
-  Sleep(timeout_ms);
-#else
-  pending_ms = timeout_ms;
-  initial_tv = curlx_tvnow();
-  do {
-#if defined(HAVE_POLL_FINE)
-    r = poll(NULL, 0, pending_ms);
-#else
-    pending_tv.tv_sec = pending_ms / 1000;
-    pending_tv.tv_usec = (pending_ms % 1000) * 1000;
-    r = select(0, NULL, NULL, NULL, &pending_tv);
-#endif /* HAVE_POLL_FINE */
-    if(r != -1)
-      break;
-    error = SOCKERRNO;
-    if(error && error_not_EINTR)
-      break;
-    pending_ms = timeout_ms - elapsed_ms;
-    if(pending_ms <= 0)
-      break;
-  } while(r == -1);
-#endif /* USE_WINSOCK */
-  if(r)
-    r = -1;
-  return r;
-}
-
-/*
- * This is an internal function used for waiting for read or write
- * events on a pair of file descriptors.  It uses poll() when a fine
- * poll() is available, in order to avoid limits with FD_SETSIZE,
- * otherwise select() is used.  An error is returned if select() is
- * being used and a file descriptor is too large for FD_SETSIZE.
- * A negative timeout value makes this function wait indefinitely,
- * unles no valid file descriptor is given, when this happens the
- * negative timeout is ignored and the function times out immediately.
- * When compiled with CURL_ACKNOWLEDGE_EINTR defined, EINTR condition
- * is honored and function might exit early without awaiting timeout,
- * otherwise EINTR will be ignored.
- *
- * Return values:
- *   -1 = system call error or fd >= FD_SETSIZE
- *    0 = timeout
- *    CURL_CSELECT_IN | CURL_CSELECT_OUT | CURL_CSELECT_ERR
- */
-int Curl_socket_ready(curl_socket_t readfd, curl_socket_t writefd,
-                      int timeout_ms)
-{
-#ifdef HAVE_POLL_FINE
-  struct pollfd pfd[2];
-  int num;
-#else
-  struct timeval pending_tv;
-  struct timeval *ptimeout;
-  fd_set fds_read;
-  fd_set fds_write;
-  fd_set fds_err;
-  curl_socket_t maxfd;
-#endif
-  struct timeval initial_tv = {0,0};
-  int pending_ms = 0;
-  int error;
-  int r;
-  int ret;
-
-  if((readfd == CURL_SOCKET_BAD) && (writefd == CURL_SOCKET_BAD)) {
-    r = wait_ms(timeout_ms);
-    return r;
-  }
-
-  /* Avoid initial timestamp, avoid curlx_tvnow() call, when elapsed
-     time in this function does not need to be measured. This happens
-     when function is called with a zero timeout or a negative timeout
-     value indicating a blocking call should be performed. */
-
-  if(timeout_ms > 0) {
-    pending_ms = timeout_ms;
-    initial_tv = curlx_tvnow();
-  }
-
-#ifdef HAVE_POLL_FINE
-
-  num = 0;
-  if(readfd != CURL_SOCKET_BAD) {
-    pfd[num].fd = readfd;
-    pfd[num].events = POLLRDNORM|POLLIN|POLLRDBAND|POLLPRI;
-    pfd[num].revents = 0;
-    num++;
-  }
-  if(writefd != CURL_SOCKET_BAD) {
-    pfd[num].fd = writefd;
-    pfd[num].events = POLLWRNORM|POLLOUT;
-    pfd[num].revents = 0;
-    num++;
-  }
-
-  do {
-    if(timeout_ms < 0)
-      pending_ms = -1;
-    else if(!timeout_ms)
-      pending_ms = 0;
-    r = poll(pfd, num, pending_ms);
-    if(r != -1)
-      break;
-    error = SOCKERRNO;
-    if(error && error_not_EINTR)
-      break;
-    if(timeout_ms > 0) {
-      pending_ms = timeout_ms - elapsed_ms;
-      if(pending_ms <= 0)
-        break;
-    }
-  } while(r == -1);
-
-  if(r < 0)
-    return -1;
-  if(r == 0)
-    return 0;
-
-  ret = 0;
-  num = 0;
-  if(readfd != CURL_SOCKET_BAD) {
-    if(pfd[num].revents & (POLLRDNORM|POLLIN|POLLERR|POLLHUP))
-      ret |= CURL_CSELECT_IN;
-    if(pfd[num].revents & (POLLRDBAND|POLLPRI|POLLNVAL))
-      ret |= CURL_CSELECT_ERR;
-    num++;
-  }
-  if(writefd != CURL_SOCKET_BAD) {
-    if(pfd[num].revents & (POLLWRNORM|POLLOUT))
-      ret |= CURL_CSELECT_OUT;
-    if(pfd[num].revents & (POLLERR|POLLHUP|POLLNVAL))
-      ret |= CURL_CSELECT_ERR;
-  }
-
-  return ret;
-
-#else  /* HAVE_POLL_FINE */
-
-  FD_ZERO(&fds_err);
-  maxfd = (curl_socket_t)-1;
-
-  FD_ZERO(&fds_read);
-  if(readfd != CURL_SOCKET_BAD) {
-    VERIFY_SOCK(readfd);
-    FD_SET(readfd, &fds_read);
-    FD_SET(readfd, &fds_err);
-    maxfd = readfd;
-  }
-
-  FD_ZERO(&fds_write);
-  if(writefd != CURL_SOCKET_BAD) {
-    VERIFY_SOCK(writefd);
-    FD_SET(writefd, &fds_write);
-    FD_SET(writefd, &fds_err);
-    if(writefd > maxfd)
-      maxfd = writefd;
-  }
-
-  ptimeout = (timeout_ms < 0) ? NULL : &pending_tv;
-
-  do {
-    if(timeout_ms > 0) {
-      pending_tv.tv_sec = pending_ms / 1000;
-      pending_tv.tv_usec = (pending_ms % 1000) * 1000;
-    }
-    else if(!timeout_ms) {
-      pending_tv.tv_sec = 0;
-      pending_tv.tv_usec = 0;
-    }
-    r = select((int)maxfd + 1, &fds_read, &fds_write, &fds_err, ptimeout);
-    if(r != -1)
-      break;
-    error = SOCKERRNO;
-    if(error && error_not_EINTR)
-      break;
-    if(timeout_ms > 0) {
-      pending_ms = timeout_ms - elapsed_ms;
-      if(pending_ms <= 0)
-        break;
-    }
-  } while(r == -1);
-
-  if(r < 0)
-    return -1;
-  if(r == 0)
-    return 0;
-
-  ret = 0;
-  if(readfd != CURL_SOCKET_BAD) {
-    if(FD_ISSET(readfd, &fds_read))
-      ret |= CURL_CSELECT_IN;
-    if(FD_ISSET(readfd, &fds_err))
-      ret |= CURL_CSELECT_ERR;
-  }
-  if(writefd != CURL_SOCKET_BAD) {
-    if(FD_ISSET(writefd, &fds_write))
-      ret |= CURL_CSELECT_OUT;
-    if(FD_ISSET(writefd, &fds_err))
-      ret |= CURL_CSELECT_ERR;
-  }
-
-  return ret;
-
-#endif  /* HAVE_POLL_FINE */
-
-}
-
-/*
- * This is a wrapper around poll().  If poll() does not exist, then
- * select() is used instead.  An error is returned if select() is
- * being used and a file descriptor is too large for FD_SETSIZE.
- * A negative timeout value makes this function wait indefinitely,
- * unles no valid file descriptor is given, when this happens the
- * negative timeout is ignored and the function times out immediately.
- * When compiled with CURL_ACKNOWLEDGE_EINTR defined, EINTR condition
- * is honored and function might exit early without awaiting timeout,
- * otherwise EINTR will be ignored.
- *
- * Return values:
- *   -1 = system call error or fd >= FD_SETSIZE
- *    0 = timeout
- *    N = number of structures with non zero revent fields
- */
-int Curl_poll(struct pollfd ufds[], unsigned int nfds, int timeout_ms)
-{
-#ifndef HAVE_POLL_FINE
-  struct timeval pending_tv;
-  struct timeval *ptimeout;
-  fd_set fds_read;
-  fd_set fds_write;
-  fd_set fds_err;
-  curl_socket_t maxfd;
-#endif
-  struct timeval initial_tv = {0,0};
-  bool fds_none = TRUE;
-  unsigned int i;
-  int pending_ms = 0;
-  int error;
-  int r;
-
-  if(ufds) {
-    for (i = 0; i < nfds; i++) {
-      if(ufds[i].fd != CURL_SOCKET_BAD) {
-        fds_none = FALSE;
-        break;
-      }
-    }
-  }
-  if(fds_none) {
-    r = wait_ms(timeout_ms);
-    return r;
-  }
-
-  /* Avoid initial timestamp, avoid curlx_tvnow() call, when elapsed
-     time in this function does not need to be measured. This happens
-     when function is called with a zero timeout or a negative timeout
-     value indicating a blocking call should be performed. */
-
-  if(timeout_ms > 0) {
-    pending_ms = timeout_ms;
-    initial_tv = curlx_tvnow();
-  }
-
-#ifdef HAVE_POLL_FINE
-
-  do {
-    if(timeout_ms < 0)
-      pending_ms = -1;
-    else if(!timeout_ms)
-      pending_ms = 0;
-    r = poll(ufds, nfds, pending_ms);
-    if(r != -1)
-      break;
-    error = SOCKERRNO;
-    if(error && error_not_EINTR)
-      break;
-    if(timeout_ms > 0) {
-      pending_ms = timeout_ms - elapsed_ms;
-      if(pending_ms <= 0)
-        break;
-    }
-  } while(r == -1);
-
-  if(r < 0)
-    return -1;
-  if(r == 0)
-    return 0;
-
-  for (i = 0; i < nfds; i++) {
-    if(ufds[i].fd == CURL_SOCKET_BAD)
-      continue;
-    if(ufds[i].revents & POLLHUP)
-      ufds[i].revents |= POLLIN;
-    if(ufds[i].revents & POLLERR)
-      ufds[i].revents |= (POLLIN|POLLOUT);
-  }
-
-#else  /* HAVE_POLL_FINE */
-
-  FD_ZERO(&fds_read);
-  FD_ZERO(&fds_write);
-  FD_ZERO(&fds_err);
-  maxfd = (curl_socket_t)-1;
-
-  for (i = 0; i < nfds; i++) {
-    ufds[i].revents = 0;
-    if(ufds[i].fd == CURL_SOCKET_BAD)
-      continue;
-    VERIFY_SOCK(ufds[i].fd);
-    if(ufds[i].events & (POLLIN|POLLOUT|POLLPRI|
-                          POLLRDNORM|POLLWRNORM|POLLRDBAND)) {
-      if(ufds[i].fd > maxfd)
-        maxfd = ufds[i].fd;
-      if(ufds[i].events & (POLLRDNORM|POLLIN))
-        FD_SET(ufds[i].fd, &fds_read);
-      if(ufds[i].events & (POLLWRNORM|POLLOUT))
-        FD_SET(ufds[i].fd, &fds_write);
-      if(ufds[i].events & (POLLRDBAND|POLLPRI))
-        FD_SET(ufds[i].fd, &fds_err);
-    }
-  }
-
-  ptimeout = (timeout_ms < 0) ? NULL : &pending_tv;
-
-  do {
-    if(timeout_ms > 0) {
-      pending_tv.tv_sec = pending_ms / 1000;
-      pending_tv.tv_usec = (pending_ms % 1000) * 1000;
-    }
-    else if(!timeout_ms) {
-      pending_tv.tv_sec = 0;
-      pending_tv.tv_usec = 0;
-    }
-    r = select((int)maxfd + 1, &fds_read, &fds_write, &fds_err, ptimeout);
-    if(r != -1)
-      break;
-    error = SOCKERRNO;
-    if(error && error_not_EINTR)
-      break;
-    if(timeout_ms > 0) {
-      pending_ms = timeout_ms - elapsed_ms;
-      if(pending_ms <= 0)
-        break;
-    }
-  } while(r == -1);
-
-  if(r < 0)
-    return -1;
-  if(r == 0)
-    return 0;
-
-  r = 0;
-  for (i = 0; i < nfds; i++) {
-    ufds[i].revents = 0;
-    if(ufds[i].fd == CURL_SOCKET_BAD)
-      continue;
-    if(FD_ISSET(ufds[i].fd, &fds_read))
-      ufds[i].revents |= POLLIN;
-    if(FD_ISSET(ufds[i].fd, &fds_write))
-      ufds[i].revents |= POLLOUT;
-    if(FD_ISSET(ufds[i].fd, &fds_err))
-      ufds[i].revents |= POLLPRI;
-    if(ufds[i].revents != 0)
-      r++;
-  }
-
-#endif  /* HAVE_POLL_FINE */
-
-  return r;
-}
-
-#ifdef TPF
-/*
- * This is a replacement for select() on the TPF platform.
- * It is used whenever libcurl calls select().
- * The call below to tpf_process_signals() is required because
- * TPF's select calls are not signal interruptible.
- *
- * Return values are the same as select's.
- */
-int tpf_select_libcurl(int maxfds, fd_set* reads, fd_set* writes,
-                       fd_set* excepts, struct timeval* tv)
-{
-   int rc;
-
-   rc = tpf_select_bsd(maxfds, reads, writes, excepts, tv);
-   tpf_process_signals();
-   return(rc);
-}
-#endif /* TPF */
diff --git a/src/other/curl/lib/select.h b/src/other/curl/lib/select.h
deleted file mode 100644
index e431e5f..0000000
--- a/src/other/curl/lib/select.h
+++ /dev/null
@@ -1,97 +0,0 @@
-#ifndef __SELECT_H
-#define __SELECT_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef HAVE_SYS_POLL_H
-#include <sys/poll.h>
-#elif defined(HAVE_POLL_H)
-#include <poll.h>
-#endif
-
-/*
- * poll() function on Windows Vista and later is called WSAPoll()
- */
-
-#if defined(USE_WINSOCK) && (USE_WINSOCK > 1) && \
-    defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600)
-#  undef  HAVE_POLL
-#  define HAVE_POLL 1
-#  undef  HAVE_POLL_FINE
-#  define HAVE_POLL_FINE 1
-#  define poll(x,y,z) WSAPoll((x),(y),(z))
-#  if defined(_MSC_VER) && defined(POLLRDNORM)
-#    undef  POLLPRI
-#    define POLLPRI POLLRDBAND
-#    define HAVE_STRUCT_POLLFD 1
-#  endif
-#endif
-
-/*
- * Definition of pollfd struct and constants for platforms lacking them.
- */
-
-#if !defined(HAVE_STRUCT_POLLFD) && \
-    !defined(HAVE_SYS_POLL_H) && \
-    !defined(HAVE_POLL_H)
-
-#define POLLIN      0x01
-#define POLLPRI     0x02
-#define POLLOUT     0x04
-#define POLLERR     0x08
-#define POLLHUP     0x10
-#define POLLNVAL    0x20
-
-struct pollfd
-{
-    curl_socket_t fd;
-    short   events;
-    short   revents;
-};
-
-#endif
-
-#ifndef POLLRDNORM
-#define POLLRDNORM POLLIN
-#endif
-
-#ifndef POLLWRNORM
-#define POLLWRNORM POLLOUT
-#endif
-
-#ifndef POLLRDBAND
-#define POLLRDBAND POLLPRI
-#endif
-
-int Curl_socket_ready(curl_socket_t readfd, curl_socket_t writefd,
-                      int timeout_ms);
-
-int Curl_poll(struct pollfd ufds[], unsigned int nfds, int timeout_ms);
-
-#ifdef TPF
-int tpf_select_libcurl(int maxfds, fd_set* reads, fd_set* writes,
-                       fd_set* excepts, struct timeval* tv);
-#endif
-
-#endif /* __SELECT_H */
diff --git a/src/other/curl/lib/sendf.c b/src/other/curl/lib/sendf.c
deleted file mode 100644
index ff4aee3..0000000
--- a/src/other/curl/lib/sendf.c
+++ /dev/null
@@ -1,707 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <stdio.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <errno.h>
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h> /* required for send() & recv() prototypes */
-#endif
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#include <curl/curl.h>
-#include "urldata.h"
-#include "sendf.h"
-#include "connect.h"
-#include "sslgen.h"
-#include "ssh.h"
-#include "multiif.h"
-#include "rtsp.h"
-
-#define _MPRINTF_REPLACE /* use the internal *printf() functions */
-#include <curl/mprintf.h>
-
-/* the krb4 functions only exists for FTP and if krb4 or gssapi is defined */
-#if !defined(CURL_DISABLE_FTP) && (defined(HAVE_KRB4) || defined(HAVE_GSSAPI))
-#include "krb4.h"
-#else
-#define Curl_sec_send(a,b,c,d) -1
-#define Curl_sec_read(a,b,c,d) -1
-#endif
-
-#include <string.h>
-#include "curl_memory.h"
-#include "strerror.h"
-#include "easyif.h" /* for the Curl_convert_from_network prototype */
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#ifdef CURL_DO_LINEEND_CONV
-/*
- * convert_lineends() changes CRLF (\r\n) end-of-line markers to a single LF
- * (\n), with special processing for CRLF sequences that are split between two
- * blocks of data.  Remaining, bare CRs are changed to LFs.  The possibly new
- * size of the data is returned.
- */
-static size_t convert_lineends(struct SessionHandle *data,
-                               char *startPtr, size_t size)
-{
-  char *inPtr, *outPtr;
-
-  /* sanity check */
-  if((startPtr == NULL) || (size < 1)) {
-    return(size);
-  }
-
-  if(data->state.prev_block_had_trailing_cr == TRUE) {
-    /* The previous block of incoming data
-       had a trailing CR, which was turned into a LF. */
-    if(*startPtr == '\n') {
-      /* This block of incoming data starts with the
-         previous block's LF so get rid of it */
-      memmove(startPtr, startPtr+1, size-1);
-      size--;
-      /* and it wasn't a bare CR but a CRLF conversion instead */
-      data->state.crlf_conversions++;
-    }
-    data->state.prev_block_had_trailing_cr = FALSE; /* reset the flag */
-  }
-
-  /* find 1st CR, if any */
-  inPtr = outPtr = memchr(startPtr, '\r', size);
-  if(inPtr) {
-    /* at least one CR, now look for CRLF */
-    while(inPtr < (startPtr+size-1)) {
-      /* note that it's size-1, so we'll never look past the last byte */
-      if(memcmp(inPtr, "\r\n", 2) == 0) {
-        /* CRLF found, bump past the CR and copy the NL */
-        inPtr++;
-        *outPtr = *inPtr;
-        /* keep track of how many CRLFs we converted */
-        data->state.crlf_conversions++;
-      }
-      else {
-        if(*inPtr == '\r') {
-          /* lone CR, move LF instead */
-          *outPtr = '\n';
-        }
-        else {
-          /* not a CRLF nor a CR, just copy whatever it is */
-          *outPtr = *inPtr;
-        }
-      }
-      outPtr++;
-      inPtr++;
-    } /* end of while loop */
-
-    if(inPtr < startPtr+size) {
-      /* handle last byte */
-      if(*inPtr == '\r') {
-        /* deal with a CR at the end of the buffer */
-        *outPtr = '\n'; /* copy a NL instead */
-        /* note that a CRLF might be split across two blocks */
-        data->state.prev_block_had_trailing_cr = TRUE;
-      }
-      else {
-        /* copy last byte */
-        *outPtr = *inPtr;
-      }
-      outPtr++;
-    }
-    if(outPtr < startPtr+size)
-      /* tidy up by null terminating the now shorter data */
-      *outPtr = '\0';
-
-    return(outPtr - startPtr);
-  }
-  return(size);
-}
-#endif /* CURL_DO_LINEEND_CONV */
-
-/* Curl_infof() is for info message along the way */
-
-void Curl_infof(struct SessionHandle *data, const char *fmt, ...)
-{
-  if(data && data->set.verbose) {
-    va_list ap;
-    size_t len;
-    char print_buffer[2048 + 1];
-    va_start(ap, fmt);
-    vsnprintf(print_buffer, sizeof(print_buffer), fmt, ap);
-    va_end(ap);
-    len = strlen(print_buffer);
-    Curl_debug(data, CURLINFO_TEXT, print_buffer, len, NULL);
-  }
-}
-
-/* Curl_failf() is for messages stating why we failed.
- * The message SHALL NOT include any LF or CR.
- */
-
-void Curl_failf(struct SessionHandle *data, const char *fmt, ...)
-{
-  va_list ap;
-  size_t len;
-  va_start(ap, fmt);
-
-  vsnprintf(data->state.buffer, BUFSIZE, fmt, ap);
-
-  if(data->set.errorbuffer && !data->state.errorbuf) {
-    snprintf(data->set.errorbuffer, CURL_ERROR_SIZE, "%s", data->state.buffer);
-    data->state.errorbuf = TRUE; /* wrote error string */
-  }
-  if(data->set.verbose) {
-    len = strlen(data->state.buffer);
-    if(len < BUFSIZE - 1) {
-      data->state.buffer[len] = '\n';
-      data->state.buffer[++len] = '\0';
-    }
-    Curl_debug(data, CURLINFO_TEXT, data->state.buffer, len, NULL);
-  }
-
-  va_end(ap);
-}
-
-/* Curl_sendf() sends formated data to the server */
-CURLcode Curl_sendf(curl_socket_t sockfd, struct connectdata *conn,
-                    const char *fmt, ...)
-{
-  struct SessionHandle *data = conn->data;
-  ssize_t bytes_written;
-  size_t write_len;
-  CURLcode res = CURLE_OK;
-  char *s;
-  char *sptr;
-  va_list ap;
-  va_start(ap, fmt);
-  s = vaprintf(fmt, ap); /* returns an allocated string */
-  va_end(ap);
-  if(!s)
-    return CURLE_OUT_OF_MEMORY; /* failure */
-
-  bytes_written=0;
-  write_len = strlen(s);
-  sptr = s;
-
-  for(;;) {
-    /* Write the buffer to the socket */
-    res = Curl_write(conn, sockfd, sptr, write_len, &bytes_written);
-
-    if(CURLE_OK != res)
-      break;
-
-    if(data->set.verbose)
-      Curl_debug(data, CURLINFO_DATA_OUT, sptr, (size_t)bytes_written, conn);
-
-    if((size_t)bytes_written != write_len) {
-      /* if not all was written at once, we must advance the pointer, decrease
-         the size left and try again! */
-      write_len -= bytes_written;
-      sptr += bytes_written;
-    }
-    else
-      break;
-  }
-
-  free(s); /* free the output string */
-
-  return res;
-}
-
-static ssize_t send_plain(struct connectdata *conn,
-                          int num,
-                          const void *mem,
-                          size_t len)
-{
-  curl_socket_t sockfd = conn->sock[num];
-  ssize_t bytes_written = swrite(sockfd, mem, len);
-
-  if(-1 == bytes_written) {
-    int err = SOCKERRNO;
-
-    if(
-#ifdef WSAEWOULDBLOCK
-      /* This is how Windows does it */
-      (WSAEWOULDBLOCK == err)
-#else
-      /* errno may be EWOULDBLOCK or on some systems EAGAIN when it returned
-         due to its inability to send off data without blocking. We therefor
-         treat both error codes the same here */
-      (EWOULDBLOCK == err) || (EAGAIN == err) || (EINTR == err)
-#endif
-      )
-      /* this is just a case of EWOULDBLOCK */
-      bytes_written=0;
-    else
-      failf(conn->data, "Send failure: %s",
-            Curl_strerror(conn, err));
-  }
-  return bytes_written;
-}
-
-/*
- * Curl_write() is an internal write function that sends data to the
- * server. Works with plain sockets, SCP, SSL or kerberos.
- *
- * If the write would block (EWOULDBLOCK), we return CURLE_OK and
- * (*written == 0). Otherwise we return regular CURLcode value.
- */
-CURLcode Curl_write(struct connectdata *conn,
-                    curl_socket_t sockfd,
-                    const void *mem,
-                    size_t len,
-                    ssize_t *written)
-{
-  ssize_t bytes_written;
-  int curlcode = CURLE_OK;
-  int num = (sockfd == conn->sock[SECONDARYSOCKET]);
-
-  if(conn->ssl[num].state == ssl_connection_complete)
-    bytes_written = Curl_ssl_send(conn, num, mem, len, &curlcode);
-  else if(Curl_ssh_enabled(conn, PROT_SCP))
-    bytes_written = Curl_scp_send(conn, num, mem, len);
-  else if(Curl_ssh_enabled(conn, PROT_SFTP))
-    bytes_written = Curl_sftp_send(conn, num, mem, len);
-  else if(conn->sec_complete)
-    bytes_written = Curl_sec_send(conn, num, mem, len);
-  else
-    bytes_written = send_plain(conn, num, mem, len);
-
-  *written = bytes_written;
-  if(-1 != bytes_written)
-    /* we completely ignore the curlcode value when -1 is not returned */
-    return CURLE_OK;
-
-  /* handle EWOULDBLOCK or a send failure */
-  switch(curlcode) {
-  case /* EWOULDBLOCK */ -1:
-    *written = /* EWOULDBLOCK */ 0;
-    return CURLE_OK;
-
-  case CURLE_OK:
-    /* general send failure */
-    return CURLE_SEND_ERROR;
-
-  default:
-    /* we got a specific curlcode, forward it */
-    return (CURLcode)curlcode;
-  }
-}
-
-/*
- * Curl_write_plain() is an internal write function that sends data to the
- * server using plain sockets only. Otherwise meant to have the exact same
- * proto as Curl_write()
- */
-CURLcode Curl_write_plain(struct connectdata *conn,
-                          curl_socket_t sockfd,
-                          const void *mem,
-                          size_t len,
-                          ssize_t *written)
-{
-  ssize_t bytes_written;
-  CURLcode retcode;
-  int num = (sockfd == conn->sock[SECONDARYSOCKET]);
-
-  bytes_written = send_plain(conn, num, mem, len);
-
-  *written = bytes_written;
-  retcode = (-1 != bytes_written)?CURLE_OK:CURLE_SEND_ERROR;
-
-  return retcode;
-}
-
-static CURLcode pausewrite(struct SessionHandle *data,
-                           int type, /* what type of data */
-                           const char *ptr,
-                           size_t len)
-{
-  /* signalled to pause sending on this connection, but since we have data
-     we want to send we need to dup it to save a copy for when the sending
-     is again enabled */
-  struct SingleRequest *k = &data->req;
-  char *dupl = malloc(len);
-  if(!dupl)
-    return CURLE_OUT_OF_MEMORY;
-
-  memcpy(dupl, ptr, len);
-
-  /* store this information in the state struct for later use */
-  data->state.tempwrite = dupl;
-  data->state.tempwritesize = len;
-  data->state.tempwritetype = type;
-
-  /* mark the connection as RECV paused */
-  k->keepon |= KEEP_RECV_PAUSE;
-
-  DEBUGF(infof(data, "Pausing with %zu bytes in buffer for type %02x\n",
-               len, type));
-
-  return CURLE_OK;
-}
-
-
-/* Curl_client_write() sends data to the write callback(s)
-
-   The bit pattern defines to what "streams" to write to. Body and/or header.
-   The defines are in sendf.h of course.
-
-   If CURL_DO_LINEEND_CONV is enabled, data is converted IN PLACE to the
-   local character encoding.  This is a problem and should be changed in
-   the future to leave the original data alone.
- */
-CURLcode Curl_client_write(struct connectdata *conn,
-                           int type,
-                           char *ptr,
-                           size_t len)
-{
-  struct SessionHandle *data = conn->data;
-  size_t wrote;
-
-  if(0 == len)
-    len = strlen(ptr);
-
-  /* If reading is actually paused, we're forced to append this chunk of data
-     to the already held data, but only if it is the same type as otherwise it
-     can't work and it'll return error instead. */
-  if(data->req.keepon & KEEP_RECV_PAUSE) {
-    size_t newlen;
-    char *newptr;
-    if(type != data->state.tempwritetype)
-      /* major internal confusion */
-      return CURLE_RECV_ERROR;
-
-    DEBUGASSERT(data->state.tempwrite);
-
-    /* figure out the new size of the data to save */
-    newlen = len + data->state.tempwritesize;
-    /* allocate the new memory area */
-    newptr = realloc(data->state.tempwrite, newlen);
-    if(!newptr)
-      return CURLE_OUT_OF_MEMORY;
-    /* copy the new data to the end of the new area */
-    memcpy(newptr + data->state.tempwritesize, ptr, len);
-    /* update the pointer and the size */
-    data->state.tempwrite = newptr;
-    data->state.tempwritesize = newlen;
-
-    return CURLE_OK;
-  }
-
-  if(type & CLIENTWRITE_BODY) {
-    if((conn->protocol&PROT_FTP) && conn->proto.ftpc.transfertype == 'A') {
-#ifdef CURL_DOES_CONVERSIONS
-      /* convert from the network encoding */
-      size_t rc;
-      rc = Curl_convert_from_network(data, ptr, len);
-      /* Curl_convert_from_network calls failf if unsuccessful */
-      if(rc != CURLE_OK)
-        return rc;
-#endif /* CURL_DOES_CONVERSIONS */
-
-#ifdef CURL_DO_LINEEND_CONV
-      /* convert end-of-line markers */
-      len = convert_lineends(data, ptr, len);
-#endif /* CURL_DO_LINEEND_CONV */
-    }
-    /* If the previous block of data ended with CR and this block of data is
-       just a NL, then the length might be zero */
-    if(len) {
-      wrote = data->set.fwrite_func(ptr, 1, len, data->set.out);
-    }
-    else {
-      wrote = len;
-    }
-
-    if(CURL_WRITEFUNC_PAUSE == wrote)
-      return pausewrite(data, type, ptr, len);
-
-    if(wrote != len) {
-      failf(data, "Failed writing body (%zu != %zu)", wrote, len);
-      return CURLE_WRITE_ERROR;
-    }
-  }
-
-  if((type & CLIENTWRITE_HEADER) &&
-     (data->set.fwrite_header || data->set.writeheader) ) {
-    /*
-     * Write headers to the same callback or to the especially setup
-     * header callback function (added after version 7.7.1).
-     */
-    curl_write_callback writeit=
-      data->set.fwrite_header?data->set.fwrite_header:data->set.fwrite_func;
-
-    /* Note: The header is in the host encoding
-       regardless of the ftp transfer mode (ASCII/Image) */
-
-    wrote = writeit(ptr, 1, len, data->set.writeheader);
-    if(CURL_WRITEFUNC_PAUSE == wrote)
-      /* here we pass in the HEADER bit only since if this was body as well
-         then it was passed already and clearly that didn't trigger the pause,
-         so this is saved for later with the HEADER bit only */
-      return pausewrite(data, CLIENTWRITE_HEADER, ptr, len);
-
-    if(wrote != len) {
-      failf (data, "Failed writing header");
-      return CURLE_WRITE_ERROR;
-    }
-  }
-
-  return CURLE_OK;
-}
-
-int Curl_read_plain(curl_socket_t sockfd,
-                         char *buf,
-                         size_t bytesfromsocket,
-                         ssize_t *n)
-{
-  ssize_t nread = sread(sockfd, buf, bytesfromsocket);
-
-  if(-1 == nread) {
-    int err = SOCKERRNO;
-#ifdef USE_WINSOCK
-    if(WSAEWOULDBLOCK == err)
-#else
-    if((EWOULDBLOCK == err) || (EAGAIN == err) || (EINTR == err))
-#endif
-      return -1;
-    else
-      return CURLE_RECV_ERROR;
-  }
-
-  /* we only return number of bytes read when we return OK */
-  *n = nread;
-  return CURLE_OK;
-}
-
-/*
- * Internal read-from-socket function. This is meant to deal with plain
- * sockets, SSL sockets and kerberos sockets.
- *
- * If the read would block (EWOULDBLOCK) we return -1. Otherwise we return
- * a regular CURLcode value.
- */
-int Curl_read(struct connectdata *conn, /* connection data */
-              curl_socket_t sockfd,     /* read from this socket */
-              char *buf,                /* store read data here */
-              size_t sizerequested,     /* max amount to read */
-              ssize_t *n)               /* amount bytes read */
-{
-  ssize_t nread = 0;
-  size_t bytesfromsocket = 0;
-  char *buffertofill = NULL;
-  bool pipelining = (bool)(conn->data->multi &&
-                     Curl_multi_canPipeline(conn->data->multi));
-
-  /* Set 'num' to 0 or 1, depending on which socket that has been sent here.
-     If it is the second socket, we set num to 1. Otherwise to 0. This lets
-     us use the correct ssl handle. */
-  int num = (sockfd == conn->sock[SECONDARYSOCKET]);
-
-  *n=0; /* reset amount to zero */
-
-  /* If session can pipeline, check connection buffer  */
-  if(pipelining) {
-    size_t bytestocopy = CURLMIN(conn->buf_len - conn->read_pos,
-                                 sizerequested);
-
-    /* Copy from our master buffer first if we have some unread data there*/
-    if(bytestocopy > 0) {
-      memcpy(buf, conn->master_buffer + conn->read_pos, bytestocopy);
-      conn->read_pos += bytestocopy;
-      conn->bits.stream_was_rewound = FALSE;
-
-      *n = (ssize_t)bytestocopy;
-      return CURLE_OK;
-    }
-    /* If we come here, it means that there is no data to read from the buffer,
-     * so we read from the socket */
-    bytesfromsocket = CURLMIN(sizerequested, BUFSIZE * sizeof (char));
-    buffertofill = conn->master_buffer;
-  }
-  else {
-    bytesfromsocket = CURLMIN((long)sizerequested,
-                              conn->data->set.buffer_size ?
-                              conn->data->set.buffer_size : BUFSIZE);
-    buffertofill = buf;
-  }
-
-  if(conn->ssl[num].state == ssl_connection_complete) {
-    int curlcode = CURLE_RECV_ERROR;
-    nread = Curl_ssl_recv(conn, num, buffertofill, bytesfromsocket, &curlcode);
-
-    if(nread == -1)
-      return curlcode;
-  }
-  else if(Curl_ssh_enabled(conn, (PROT_SCP|PROT_SFTP))) {
-    if(conn->protocol & PROT_SCP)
-      nread = Curl_scp_recv(conn, num, buffertofill, bytesfromsocket);
-    else if(conn->protocol & PROT_SFTP)
-      nread = Curl_sftp_recv(conn, num, buffertofill, bytesfromsocket);
-#ifdef LIBSSH2CHANNEL_EAGAIN
-    if(nread == LIBSSH2CHANNEL_EAGAIN)
-      /* EWOULDBLOCK */
-      return -1;
-#endif
-    if(nread < 0)
-      /* since it is negative and not EAGAIN, it was a protocol-layer error */
-      return CURLE_RECV_ERROR;
-  }
-  else {
-    if(conn->sec_complete)
-      nread = Curl_sec_read(conn, sockfd, buffertofill,
-                            bytesfromsocket);
-    /* TODO: Need to handle EAGAIN here somehow, similar to how it
-     * is done in Curl_read_plain, either right here or in Curl_sec_read
-     * itself. */
-    else {
-      int ret = Curl_read_plain(sockfd, buffertofill, bytesfromsocket,
-                                     &nread);
-      if(ret)
-        return ret;
-    }
-  }
-  if(nread >= 0) {
-    if(pipelining) {
-      memcpy(buf, conn->master_buffer, nread);
-      conn->buf_len = nread;
-      conn->read_pos = nread;
-    }
-
-    *n += nread;
-  }
-
-  return CURLE_OK;
-}
-
-/* return 0 on success */
-static int showit(struct SessionHandle *data, curl_infotype type,
-                  char *ptr, size_t size)
-{
-  static const char s_infotype[CURLINFO_END][3] = {
-    "* ", "< ", "> ", "{ ", "} ", "{ ", "} " };
-
-#ifdef CURL_DOES_CONVERSIONS
-  char buf[BUFSIZE+1];
-  size_t conv_size = 0;
-
-  switch(type) {
-  case CURLINFO_HEADER_OUT:
-    /* assume output headers are ASCII */
-    /* copy the data into my buffer so the original is unchanged */
-    if(size > BUFSIZE) {
-      size = BUFSIZE; /* truncate if necessary */
-      buf[BUFSIZE] = '\0';
-    }
-    conv_size = size;
-    memcpy(buf, ptr, size);
-    /* Special processing is needed for this block if it
-     * contains both headers and data (separated by CRLFCRLF).
-     * We want to convert just the headers, leaving the data as-is.
-     */
-    if(size > 4) {
-      size_t i;
-      for(i = 0; i < size-4; i++) {
-        if(memcmp(&buf[i], "\x0d\x0a\x0d\x0a", 4) == 0) {
-          /* convert everthing through this CRLFCRLF but no further */
-          conv_size = i + 4;
-          break;
-        }
-      }
-    }
-
-    Curl_convert_from_network(data, buf, conv_size);
-    /* Curl_convert_from_network calls failf if unsuccessful */
-    /* we might as well continue even if it fails...   */
-    ptr = buf; /* switch pointer to use my buffer instead */
-    break;
-  default:
-    /* leave everything else as-is */
-    break;
-  }
-#endif /* CURL_DOES_CONVERSIONS */
-
-  if(data->set.fdebug)
-    return (*data->set.fdebug)(data, type, ptr, size,
-                               data->set.debugdata);
-
-  switch(type) {
-  case CURLINFO_TEXT:
-  case CURLINFO_HEADER_OUT:
-  case CURLINFO_HEADER_IN:
-    fwrite(s_infotype[type], 2, 1, data->set.err);
-    fwrite(ptr, size, 1, data->set.err);
-#ifdef CURL_DOES_CONVERSIONS
-    if(size != conv_size) {
-      /* we had untranslated data so we need an explicit newline */
-      fwrite("\n", 1, 1, data->set.err);
-    }
-#endif
-    break;
-  default: /* nada */
-    break;
-  }
-  return 0;
-}
-
-int Curl_debug(struct SessionHandle *data, curl_infotype type,
-               char *ptr, size_t size,
-               struct connectdata *conn)
-{
-  int rc;
-  if(data->set.printhost && conn && conn->host.dispname) {
-    char buffer[160];
-    const char *t=NULL;
-    const char *w="Data";
-    switch (type) {
-    case CURLINFO_HEADER_IN:
-      w = "Header";
-    case CURLINFO_DATA_IN:
-      t = "from";
-      break;
-    case CURLINFO_HEADER_OUT:
-      w = "Header";
-    case CURLINFO_DATA_OUT:
-      t = "to";
-      break;
-    default:
-      break;
-    }
-
-    if(t) {
-      snprintf(buffer, sizeof(buffer), "[%s %s %s]", w, t,
-               conn->host.dispname);
-      rc = showit(data, CURLINFO_TEXT, buffer, strlen(buffer));
-      if(rc)
-        return rc;
-    }
-  }
-  rc = showit(data, type, ptr, size);
-  return rc;
-}
diff --git a/src/other/curl/lib/sendf.h b/src/other/curl/lib/sendf.h
deleted file mode 100644
index 5732a0b..0000000
--- a/src/other/curl/lib/sendf.h
+++ /dev/null
@@ -1,85 +0,0 @@
-#ifndef HEADER_CURL_SENDF_H
-#define HEADER_CURL_SENDF_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-CURLcode Curl_sendf(curl_socket_t sockfd, struct connectdata *,
-                    const char *fmt, ...);
-void Curl_infof(struct SessionHandle *, const char *fmt, ...);
-void Curl_failf(struct SessionHandle *, const char *fmt, ...);
-
-#if defined(CURL_DISABLE_VERBOSE_STRINGS)
-
-#if defined(HAVE_VARIADIC_MACROS_C99)
-#define infof(...)  do { } while (0)
-#elif defined(HAVE_VARIADIC_MACROS_GCC)
-#define infof(x...)  do { } while (0)
-#else
-#define infof (void)
-#endif
-
-#else /* CURL_DISABLE_VERBOSE_STRINGS */
-
-#define infof Curl_infof
-
-#endif /* CURL_DISABLE_VERBOSE_STRINGS */
-
-#define failf Curl_failf
-
-#define CLIENTWRITE_BODY   (1<<0)
-#define CLIENTWRITE_HEADER (1<<1)
-#define CLIENTWRITE_BOTH   (CLIENTWRITE_BODY|CLIENTWRITE_HEADER)
-
-CURLcode Curl_client_write(struct connectdata *conn, int type, char *ptr,
-                           size_t len);
-
-/* internal read-function, does plain socket only */
-int Curl_read_plain(curl_socket_t sockfd,
-                    char *buf,
-                    size_t bytesfromsocket,
-                    ssize_t *n);
-
-/* internal read-function, does plain socket, SSL and krb4 */
-int Curl_read(struct connectdata *conn, curl_socket_t sockfd,
-              char *buf, size_t buffersize,
-              ssize_t *n);
-/* internal write-function, does plain socket, SSL, SCP, SFTP and krb4 */
-CURLcode Curl_write(struct connectdata *conn,
-                    curl_socket_t sockfd,
-                    const void *mem, size_t len,
-                    ssize_t *written);
-
-/* internal write-function, does plain sockets ONLY */
-CURLcode Curl_write_plain(struct connectdata *conn,
-                          curl_socket_t sockfd,
-                          const void *mem, size_t len,
-                          ssize_t *written);
-
-/* the function used to output verbose information */
-int Curl_debug(struct SessionHandle *handle, curl_infotype type,
-               char *data, size_t size,
-               struct connectdata *conn);
-
-
-#endif /* HEADER_CURL_SENDF_H */
diff --git a/src/other/curl/lib/setup-os400.h b/src/other/curl/lib/setup-os400.h
deleted file mode 100644
index cdeefe3..0000000
--- a/src/other/curl/lib/setup-os400.h
+++ /dev/null
@@ -1,140 +0,0 @@
-#ifndef HEADER_CURL_SETUP_OS400_H
-#define HEADER_CURL_SETUP_OS400_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-
-/* OS/400 netdb.h does not define NI_MAXHOST. */
-#define NI_MAXHOST      1025
-
-/* OS/400 netdb.h does not define NI_MAXSERV. */
-#define NI_MAXSERV      32
-
-/* No OS/400 header file defines u_int32_t. */
-typedef unsigned long   u_int32_t;
-
-
-/* System API wrapper prototypes and definitions to support ASCII parameters. */
-
-#include <sys/socket.h>
-#include <netdb.h>
-#include <qsossl.h>
-#include <gssapi.h>
-
-extern int      Curl_getaddrinfo_a(const char * nodename, const char * servname,
-                                   const struct addrinfo * hints,
-                                   struct addrinfo * * res);
-#define getaddrinfo             Curl_getaddrinfo_a
-
-
-extern int      Curl_getnameinfo_a(const struct sockaddr * sa,
-                                   curl_socklen_t salen,
-                                   char * nodename, curl_socklen_t nodenamelen,
-                                   char * servname, curl_socklen_t servnamelen,
-                                   int flags);
-#define getnameinfo             Curl_getnameinfo_a
-
-
-/* SSL wrappers. */
-
-extern int      Curl_SSL_Init_Application_a(SSLInitApp * init_app);
-#define SSL_Init_Application    Curl_SSL_Init_Application_a
-
-
-extern int      Curl_SSL_Init_a(SSLInit * init);
-#define SSL_Init                Curl_SSL_Init_a
-
-
-extern char *   Curl_SSL_Strerror_a(int sslreturnvalue, SSLErrorMsg * serrmsgp);
-#define SSL_Strerror            Curl_SSL_Strerror_a
-
-
-/* GSSAPI wrappers. */
-
-extern OM_uint32 Curl_gss_import_name_a(OM_uint32 * minor_status,
-                                        gss_buffer_t in_name,
-                                        gss_OID in_name_type,
-                                        gss_name_t * out_name);
-#define gss_import_name         Curl_gss_import_name_a
-
-
-extern OM_uint32 Curl_gss_display_status_a(OM_uint32 * minor_status,
-                                           OM_uint32 status_value,
-                                           int status_type, gss_OID mech_type,
-                                           gss_msg_ctx_t * message_context,
-                                           gss_buffer_t status_string);
-#define gss_display_status      Curl_gss_display_status_a
-
-
-extern OM_uint32 Curl_gss_init_sec_context_a(OM_uint32 * minor_status,
-                                             gss_cred_id_t cred_handle,
-                                             gss_ctx_id_t * context_handle,
-                                             gss_name_t target_name,
-                                             gss_OID mech_type,
-                                             gss_flags_t req_flags,
-                                             OM_uint32 time_req,
-                                             gss_channel_bindings_t
-                                             input_chan_bindings,
-                                             gss_buffer_t input_token,
-                                             gss_OID * actual_mech_type,
-                                             gss_buffer_t output_token,
-                                             gss_flags_t * ret_flags,
-                                             OM_uint32 * time_rec);
-#define gss_init_sec_context    Curl_gss_init_sec_context_a
-
-
-extern OM_uint32 Curl_gss_delete_sec_context_a(OM_uint32 * minor_status,
-                                               gss_ctx_id_t * context_handle,
-                                               gss_buffer_t output_token);
-#define gss_delete_sec_context  Curl_gss_delete_sec_context_a
-
-/* LDAP wrappers. */
-
-#define BerValue                struct berval
-
-#define ldap_url_parse          ldap_url_parse_utf8
-#define ldap_init               Curl_ldap_init_a
-#define ldap_simple_bind_s      Curl_ldap_simple_bind_s_a
-#define ldap_search_s           Curl_ldap_search_s_a
-#define ldap_get_values_len     Curl_ldap_get_values_len_a
-#define ldap_err2string         Curl_ldap_err2string_a
-#define ldap_get_dn             Curl_ldap_get_dn_a
-#define ldap_first_attribute    Curl_ldap_first_attribute_a
-#define ldap_next_attribute     Curl_ldap_next_attribute_a
-
-/* Some socket functions must be wrapped to process textual addresses
-   like AF_UNIX. */
-
-extern int Curl_os400_connect(int sd, struct sockaddr * destaddr, int addrlen);
-extern int Curl_os400_bind(int sd, struct sockaddr * localaddr, int addrlen);
-extern int Curl_os400_sendto(int sd, char * buffer, int buflen, int flags,
-            struct sockaddr * dstaddr, int addrlen);
-extern int Curl_os400_recvfrom(int sd, char * buffer, int buflen, int flags,
-                                struct sockaddr * fromaddr, int * addrlen);
-
-#define connect                 Curl_os400_connect
-#define bind                    Curl_os400_bind
-#define sendto                  Curl_os400_sendto
-#define recvfrom                Curl_os400_recvfrom
-
-
-#endif /* HEADER_CURL_SETUP_OS400_H */
diff --git a/src/other/curl/lib/setup.h b/src/other/curl/lib/setup.h
deleted file mode 100644
index ca98ad7..0000000
--- a/src/other/curl/lib/setup.h
+++ /dev/null
@@ -1,551 +0,0 @@
-#ifndef HEADER_CURL_LIB_SETUP_H
-#define HEADER_CURL_LIB_SETUP_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * Define WIN32 when build target is Win32 API
- */
-
-#if (defined(_WIN32) || defined(__WIN32__)) && !defined(WIN32) && !defined(__SYMBIAN32__)
-#define WIN32
-#endif
-
-/*
- * Include configuration script results or hand-crafted
- * configuration file for platforms which lack config tool.
- */
-
-#ifdef HAVE_CONFIG_H
-
-#include "curl_config.h"
-
-#else /* HAVE_CONFIG_H */
-
-#ifdef _WIN32_WCE
-#  include "config-win32ce.h"
-#else
-#  ifdef WIN32
-#    include "config-win32.h"
-#  endif
-#endif
-
-#if defined(macintosh) && defined(__MRC__)
-#  include "config-mac.h"
-#endif
-
-#ifdef __AMIGA__
-#  include "amigaos.h"
-#endif
-
-#ifdef __SYMBIAN32__
-#  include "config-symbian.h"
-#endif
-
-#ifdef __OS400__
-#  include "config-os400.h"
-#endif
-
-#ifdef TPF
-#  include "config-tpf.h"
-#endif
-
-#ifdef __VXWORKS__
-#  include "config-vxworks.h"
-#endif
-
-#endif /* HAVE_CONFIG_H */
-
-/* ================================================================ */
-/* Definition of preprocessor macros/symbols which modify compiler  */
-/* behavior or generated code characteristics must be done here,   */
-/* as appropriate, before any system header file is included. It is */
-/* also possible to have them defined in the config file included   */
-/* before this point. As a result of all this we frown inclusion of */
-/* system header files in our config files, avoid this at any cost. */
-/* ================================================================ */
-
-/*
- * AIX 4.3 and newer needs _THREAD_SAFE defined to build
- * proper reentrant code. Others may also need it.
- */
-
-#ifdef NEED_THREAD_SAFE
-#  ifndef _THREAD_SAFE
-#    define _THREAD_SAFE
-#  endif
-#endif
-
-/*
- * Tru64 needs _REENTRANT set for a few function prototypes and
- * things to appear in the system header files. Unixware needs it
- * to build proper reentrant code. Others may also need it.
- */
-
-#ifdef NEED_REENTRANT
-#  ifndef _REENTRANT
-#    define _REENTRANT
-#  endif
-#endif
-
-/* ================================================================ */
-/*  If you need to include a system header file for your platform,  */
-/*  please, do it beyond the point further indicated in this file.  */
-/* ================================================================ */
-
-/*
- * libcurl's external interface definitions are also used internally,
- * and might also include required system header files to define them.
- */
-
-#include <curl/curlbuild.h>
-
-/*
- * Compile time sanity checks must also be done when building the library.
- */
-
-#include <curl/curlrules.h>
-
-/*
- * Ensure that no one is using the old SIZEOF_CURL_OFF_T macro
- */
-
-#ifdef SIZEOF_CURL_OFF_T
-#  error "SIZEOF_CURL_OFF_T shall not be defined!"
-   Error Compilation_aborted_SIZEOF_CURL_OFF_T_shall_not_be_defined
-#endif
-
-/*
- * Set up internal curl_off_t formatting string directives for
- * exclusive use with libcurl's internal *printf functions.
- */
-
-#ifdef FORMAT_OFF_T
-#  error "FORMAT_OFF_T shall not be defined before this point!"
-   Error Compilation_aborted_FORMAT_OFF_T_already_defined
-#endif
-
-#ifdef FORMAT_OFF_TU
-#  error "FORMAT_OFF_TU shall not be defined before this point!"
-   Error Compilation_aborted_FORMAT_OFF_TU_already_defined
-#endif
-
-#if (CURL_SIZEOF_CURL_OFF_T > CURL_SIZEOF_LONG)
-#  define FORMAT_OFF_T  "lld"
-#  define FORMAT_OFF_TU "llu"
-#else
-#  define FORMAT_OFF_T  "ld"
-#  define FORMAT_OFF_TU "lu"
-#endif
-
-/*
- * Disable other protocols when http is the only one desired.
- */
-
-#ifdef HTTP_ONLY
-#  define CURL_DISABLE_TFTP
-#  define CURL_DISABLE_FTP
-#  define CURL_DISABLE_LDAP
-#  define CURL_DISABLE_TELNET
-#  define CURL_DISABLE_DICT
-#  define CURL_DISABLE_FILE
-#  define CURL_DISABLE_RTSP
-#endif
-
-/*
- * When http is disabled rtsp is not supported.
- */
-
-#if defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_RTSP)
-#  define CURL_DISABLE_RTSP
-#endif
-
-/* ================================================================ */
-/* No system header file shall be included in this file before this */
-/* point. The only allowed ones are those included from curlbuild.h */
-/* ================================================================ */
-
-/*
- * OS/400 setup file includes some system headers.
- */
-
-#ifdef __OS400__
-#  include "setup-os400.h"
-#endif
-
-/*
- * Include header files for windows builds before redefining anything.
- * Use this preprocessor block only to include or exclude windows.h,
- * winsock2.h, ws2tcpip.h or winsock.h. Any other windows thing belongs
- * to any other further and independent block.  Under Cygwin things work
- * just as under linux (e.g. <sys/socket.h>) and the winsock headers should
- * never be included when __CYGWIN__ is defined.  configure script takes
- * care of this, not defining HAVE_WINDOWS_H, HAVE_WINSOCK_H, HAVE_WINSOCK2_H,
- * neither HAVE_WS2TCPIP_H when __CYGWIN__ is defined.
- */
-
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#    ifdef HAVE_WS2TCPIP_H
-#       include <ws2tcpip.h>
-#    endif
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
-#  endif
-#endif
-
-/*
- * Define USE_WINSOCK to 2 if we have and use WINSOCK2 API, else
- * define USE_WINSOCK to 1 if we have and use WINSOCK  API, else
- * undefine USE_WINSOCK.
- */
-
-#undef USE_WINSOCK
-
-#ifdef HAVE_WINSOCK2_H
-#  define USE_WINSOCK 2
-#else
-#  ifdef HAVE_WINSOCK_H
-#    define USE_WINSOCK 1
-#  endif
-#endif
-
-#ifdef HAVE_EXTRA_STRICMP_H
-#  include <extra/stricmp.h>
-#endif
-
-#ifdef HAVE_EXTRA_STRDUP_H
-#  include <extra/strdup.h>
-#endif
-
-#ifdef TPF
-#  include <strings.h>    /* for bzero, strcasecmp, and strncasecmp */
-#  include <string.h>     /* for strcpy and strlen */
-#  include <stdlib.h>     /* for rand and srand */
-#  include <sys/socket.h> /* for select and ioctl*/
-#  include <netdb.h>      /* for in_addr_t definition */
-#  include <tpf/sysapi.h> /* for tpf_process_signals */
-   /* change which select is used for libcurl */
-#  define select(a,b,c,d,e) tpf_select_libcurl(a,b,c,d,e)
-#endif
-
-#ifdef __VXWORKS__
-#  include <sockLib.h>    /* for generic BSD socket functions */
-#  include <ioLib.h>      /* for basic I/O interface functions */
-#endif
-
-#include <stdio.h>
-#ifdef HAVE_ASSERT_H
-#include <assert.h>
-#endif
-#include <errno.h>
-
-#ifdef __TANDEM /* for nsr-tandem-nsk systems */
-#include <floss.h>
-#endif
-
-#ifndef STDC_HEADERS /* no standard C headers! */
-#include <curl/stdcheaders.h>
-#endif
-
-#ifdef __POCC__
-#  include <sys/types.h>
-#  include <unistd.h>
-#  define sys_nerr EILSEQ
-#endif
-
-/*
- * Salford-C kludge section (mostly borrowed from wxWidgets).
- */
-#ifdef __SALFORDC__
-  #pragma suppress 353             /* Possible nested comments */
-  #pragma suppress 593             /* Define not used */
-  #pragma suppress 61              /* enum has no name */
-  #pragma suppress 106             /* unnamed, unused parameter */
-  #include <clib.h>
-#endif
-
-/*
- * Large file (>2Gb) support using WIN32 functions.
- */
-
-#ifdef USE_WIN32_LARGE_FILES
-#  include <io.h>
-#  include <sys/types.h>
-#  include <sys/stat.h>
-#  define lseek(fdes,offset,whence)  _lseeki64(fdes, offset, whence)
-#  define fstat(fdes,stp)            _fstati64(fdes, stp)
-#  define stat(fname,stp)            _stati64(fname, stp)
-#  define struct_stat                struct _stati64
-#  define LSEEK_ERROR                (__int64)-1
-#endif
-
-/*
- * Small file (<2Gb) support using WIN32 functions.
- */
-
-#ifdef USE_WIN32_SMALL_FILES
-#  include <io.h>
-#  include <sys/types.h>
-#  include <sys/stat.h>
-#  define lseek(fdes,offset,whence)  _lseek(fdes, (long)offset, whence)
-#  define fstat(fdes,stp)            _fstat(fdes, stp)
-#  define stat(fname,stp)            _stat(fname, stp)
-#  define struct_stat                struct _stat
-#  define LSEEK_ERROR                (long)-1
-#endif
-
-#ifndef struct_stat
-#  define struct_stat struct stat
-#endif
-
-#ifndef LSEEK_ERROR
-#  define LSEEK_ERROR (off_t)-1
-#endif
-
-/*
- * Default sizeof(off_t) in case it hasn't been defined in config file.
- */
-
-#ifndef SIZEOF_OFF_T
-#  if defined(__VMS) && !defined(__VAX)
-#    if defined(_LARGEFILE)
-#      define SIZEOF_OFF_T 8
-#    endif
-#  elif defined(__OS400__) && defined(__ILEC400__)
-#    if defined(_LARGE_FILES)
-#      define SIZEOF_OFF_T 8
-#    endif
-#  elif defined(__MVS__) && defined(__IBMC__)
-#    if defined(_LP64) || defined(_LARGE_FILES)
-#      define SIZEOF_OFF_T 8
-#    endif
-#  elif defined(__370__) && defined(__IBMC__)
-#    if defined(_LP64) || defined(_LARGE_FILES)
-#      define SIZEOF_OFF_T 8
-#    endif
-#  endif
-#  ifndef SIZEOF_OFF_T
-#    define SIZEOF_OFF_T 4
-#  endif
-#endif
-
-/* Below we define some functions. They should
-
-   4. set the SIGALRM signal timeout
-   5. set dir/file naming defines
-   */
-
-#ifdef WIN32
-
-#  define DIR_CHAR      "\\"
-#  define DOT_CHAR      "_"
-
-#else /* WIN32 */
-
-#  ifdef MSDOS  /* Watt-32 */
-
-#    include <sys/ioctl.h>
-#    define select(n,r,w,x,t) select_s(n,r,w,x,t)
-#    define ioctl(x,y,z) ioctlsocket(x,y,(char *)(z))
-#    include <tcp.h>
-#    ifdef word
-#      undef word
-#    endif
-#    ifdef byte
-#      undef byte
-#    endif
-
-#  endif /* MSDOS */
-
-#  ifdef __minix
-     /* Minix 3 versions up to at least 3.1.3 are missing these prototypes */
-     extern char * strtok_r(char *s, const char *delim, char **last);
-     extern struct tm * gmtime_r(const time_t * const timep, struct tm *tmp);
-#  endif
-
-#  define DIR_CHAR      "/"
-#  ifndef DOT_CHAR
-#    define DOT_CHAR      "."
-#  endif
-
-#  ifdef MSDOS
-#    undef DOT_CHAR
-#    define DOT_CHAR      "_"
-#  endif
-
-#  ifndef fileno /* sunos 4 have this as a macro! */
-     int fileno( FILE *stream);
-#  endif
-
-#endif /* WIN32 */
-
-/*
- * msvc 6.0 requires PSDK in order to have INET6_ADDRSTRLEN
- * defined in ws2tcpip.h as well as to provide IPv6 support.
- */
-
-#if defined(_MSC_VER) && !defined(__POCC__)
-#  if !defined(HAVE_WS2TCPIP_H) || \
-     ((_MSC_VER < 1300) && !defined(INET6_ADDRSTRLEN))
-#    undef HAVE_GETADDRINFO_THREADSAFE
-#    undef HAVE_FREEADDRINFO
-#    undef HAVE_GETADDRINFO
-#    undef HAVE_GETNAMEINFO
-#    undef ENABLE_IPV6
-#  endif
-#endif
-
-/* ---------------------------------------------------------------- */
-/*             resolver specialty compile-time defines              */
-/*         CURLRES_* defines to use in the host*.c sources          */
-/* ---------------------------------------------------------------- */
-
-/*
- * lcc-win32 doesn't have _beginthreadex(), lacks threads support.
- */
-
-#if defined(__LCC__) && defined(WIN32)
-#  undef USE_THREADS_POSIX
-#  undef USE_THREADS_WIN32
-#endif
-
-/*
- * MSVC threads support requires a multi-threaded runtime library.
- * _beginthreadex() is not available in single-threaded ones.
- */
-
-#if defined(_MSC_VER) && !defined(__POCC__) && !defined(_MT)
-#  undef USE_THREADS_POSIX
-#  undef USE_THREADS_WIN32
-#endif
-
-/*
- * Mutually exclusive CURLRES_* definitions.
- */
-
-#ifdef USE_ARES
-#  define CURLRES_ASYNCH
-#  define CURLRES_ARES
-#elif defined(USE_THREADS_POSIX) || defined(USE_THREADS_WIN32)
-#  define CURLRES_ASYNCH
-#  define CURLRES_THREADED
-#else
-#  define CURLRES_SYNCH
-#endif
-
-#ifdef ENABLE_IPV6
-#  define CURLRES_IPV6
-#else
-#  define CURLRES_IPV4
-#endif
-
-/* ---------------------------------------------------------------- */
-
-/*
- * When using WINSOCK, TELNET protocol requires WINSOCK2 API.
- */
-
-#if defined(USE_WINSOCK) && (USE_WINSOCK != 2)
-#  define CURL_DISABLE_TELNET 1
-#endif
-
-/*
- * msvc 6.0 does not have struct sockaddr_storage and
- * does not define IPPROTO_ESP in winsock2.h. But both
- * are available if PSDK is properly installed.
- */
-
-#if defined(_MSC_VER) && !defined(__POCC__)
-#  if !defined(HAVE_WINSOCK2_H) || ((_MSC_VER < 1300) && !defined(IPPROTO_ESP))
-#    undef HAVE_STRUCT_SOCKADDR_STORAGE
-#  endif
-#endif
-
-/*
- * Intentionally fail to build when using msvc 6.0 without PSDK installed.
- * The brave of heart can circumvent this, defining ALLOW_MSVC6_WITHOUT_PSDK
- * in lib/config-win32.h although absolutely discouraged and unsupported.
- */
-
-#if defined(_MSC_VER) && !defined(__POCC__)
-#  if !defined(HAVE_WINDOWS_H) || ((_MSC_VER < 1300) && !defined(_FILETIME_))
-#    if !defined(ALLOW_MSVC6_WITHOUT_PSDK)
-#      error MSVC 6.0 requires 'February 2003 Platform SDK' a.k.a. 'Windows Server 2003 PSDK'
-#    else
-#      define CURL_DISABLE_LDAP 1
-#    endif
-#  endif
-#endif
-
-#ifdef NETWARE
-int netware_init(void);
-#ifndef __NOVELL_LIBC__
-#include <sys/bsdskt.h>
-#include <sys/timeval.h>
-#endif
-#endif
-
-#if defined(HAVE_LIBIDN) && defined(HAVE_TLD_H)
-/* The lib was present and the tld.h header (which is missing in libidn 0.3.X
-   but we only work with libidn 0.4.1 or later) */
-#define USE_LIBIDN
-#endif
-
-#ifndef SIZEOF_TIME_T
-/* assume default size of time_t to be 32 bit */
-#define SIZEOF_TIME_T 4
-#endif
-
-#define LIBIDN_REQUIRED_VERSION "0.4.1"
-
-#if defined(USE_GNUTLS) || defined(USE_SSLEAY) || defined(USE_NSS) || defined(USE_QSOSSL)
-#define USE_SSL    /* SSL support has been enabled */
-#endif
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_NTLM)
-#if defined(USE_SSLEAY) || defined(USE_WINDOWS_SSPI) || defined(USE_GNUTLS)
-#define USE_NTLM
-#endif
-#endif
-
-/* non-configure builds may define CURL_WANTS_CA_BUNDLE_ENV */
-#if defined(CURL_WANTS_CA_BUNDLE_ENV) && !defined(CURL_CA_BUNDLE)
-#define CURL_CA_BUNDLE getenv("CURL_CA_BUNDLE")
-#endif
-
-/*
- * Include macros and defines that should only be processed once.
- */
-
-#ifndef __SETUP_ONCE_H
-#include "setup_once.h"
-#endif
-
-#endif /* HEADER_CURL_LIB_SETUP_H */
diff --git a/src/other/curl/lib/setup_once.h b/src/other/curl/lib/setup_once.h
deleted file mode 100644
index 473eef2..0000000
--- a/src/other/curl/lib/setup_once.h
+++ /dev/null
@@ -1,450 +0,0 @@
-#ifndef __SETUP_ONCE_H
-#define __SETUP_ONCE_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-
-/********************************************************************
- *                              NOTICE                              *
- *                             ========                             *
- *                                                                  *
- *  Content of header files lib/setup_once.h and ares/setup_once.h  *
- *  must be kept in sync. Modify the other one if you change this.  *
- *                                                                  *
- ********************************************************************/
-
-
-/*
- * Inclusion of common header files.
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <stdarg.h>
-#include <ctype.h>
-#include <errno.h>
-
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-
-#ifdef NEED_MALLOC_H
-#include <malloc.h>
-#endif
-
-#ifdef NEED_MEMORY_H
-#include <memory.h>
-#endif
-
-#ifdef HAVE_SYS_STAT_H
-#include <sys/stat.h>
-#endif
-
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#ifdef TIME_WITH_SYS_TIME
-#include <time.h>
-#endif
-#else
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-#endif
-
-#ifdef WIN32
-#include <io.h>
-#include <fcntl.h>
-#endif
-
-#ifdef HAVE_STDBOOL_H
-#include <stdbool.h>
-#endif
-
-
-/*
- * Definition of timeval struct for platforms that don't have it.
- */
-
-#ifndef HAVE_STRUCT_TIMEVAL
-struct timeval {
- long tv_sec;
- long tv_usec;
-};
-#endif
-
-
-/*
- * If we have the MSG_NOSIGNAL define, make sure we use
- * it as the fourth argument of function send()
- */
-
-#ifdef HAVE_MSG_NOSIGNAL
-#define SEND_4TH_ARG MSG_NOSIGNAL
-#else
-#define SEND_4TH_ARG 0
-#endif
-
-
-#if defined(__minix)
-/* Minix doesn't support recv on TCP sockets */
-#define sread(x,y,z) (ssize_t)read((RECV_TYPE_ARG1)(x), \
-                                   (RECV_TYPE_ARG2)(y), \
-                                   (RECV_TYPE_ARG3)(z))
-
-#elif defined(HAVE_RECV)
-/*
- * The definitions for the return type and arguments types
- * of functions recv() and send() belong and come from the
- * configuration file. Do not define them in any other place.
- *
- * HAVE_RECV is defined if you have a function named recv()
- * which is used to read incoming data from sockets. If your
- * function has another name then don't define HAVE_RECV.
- *
- * If HAVE_RECV is defined then RECV_TYPE_ARG1, RECV_TYPE_ARG2,
- * RECV_TYPE_ARG3, RECV_TYPE_ARG4 and RECV_TYPE_RETV must also
- * be defined.
- *
- * HAVE_SEND is defined if you have a function named send()
- * which is used to write outgoing data on a connected socket.
- * If yours has another name then don't define HAVE_SEND.
- *
- * If HAVE_SEND is defined then SEND_TYPE_ARG1, SEND_QUAL_ARG2,
- * SEND_TYPE_ARG2, SEND_TYPE_ARG3, SEND_TYPE_ARG4 and
- * SEND_TYPE_RETV must also be defined.
- */
-
-#if !defined(RECV_TYPE_ARG1) || \
-    !defined(RECV_TYPE_ARG2) || \
-    !defined(RECV_TYPE_ARG3) || \
-    !defined(RECV_TYPE_ARG4) || \
-    !defined(RECV_TYPE_RETV)
-  /* */
-  Error Missing_definition_of_return_and_arguments_types_of_recv
-  /* */
-#else
-#define sread(x,y,z) (ssize_t)recv((RECV_TYPE_ARG1)(x), \
-                                   (RECV_TYPE_ARG2)(y), \
-                                   (RECV_TYPE_ARG3)(z), \
-                                   (RECV_TYPE_ARG4)(0))
-#endif
-#else /* HAVE_RECV */
-#ifndef sread
-  /* */
-  Error Missing_definition_of_macro_sread
-  /* */
-#endif
-#endif /* HAVE_RECV */
-
-
-#if defined(__minix)
-/* Minix doesn't support send on TCP sockets */
-#define swrite(x,y,z) (ssize_t)write((SEND_TYPE_ARG1)(x), \
-                                    (SEND_TYPE_ARG2)(y), \
-                                    (SEND_TYPE_ARG3)(z))
-
-#elif defined(HAVE_SEND)
-#if !defined(SEND_TYPE_ARG1) || \
-    !defined(SEND_QUAL_ARG2) || \
-    !defined(SEND_TYPE_ARG2) || \
-    !defined(SEND_TYPE_ARG3) || \
-    !defined(SEND_TYPE_ARG4) || \
-    !defined(SEND_TYPE_RETV)
-  /* */
-  Error Missing_definition_of_return_and_arguments_types_of_send
-  /* */
-#else
-#define swrite(x,y,z) (ssize_t)send((SEND_TYPE_ARG1)(x), \
-                                    (SEND_TYPE_ARG2)(y), \
-                                    (SEND_TYPE_ARG3)(z), \
-                                    (SEND_TYPE_ARG4)(SEND_4TH_ARG))
-#endif
-#else /* HAVE_SEND */
-#ifndef swrite
-  /* */
-  Error Missing_definition_of_macro_swrite
-  /* */
-#endif
-#endif /* HAVE_SEND */
-
-
-#if 0
-#if defined(HAVE_RECVFROM)
-/*
- * Currently recvfrom is only used on udp sockets.
- */
-#if !defined(RECVFROM_TYPE_ARG1) || \
-    !defined(RECVFROM_TYPE_ARG2) || \
-    !defined(RECVFROM_TYPE_ARG3) || \
-    !defined(RECVFROM_TYPE_ARG4) || \
-    !defined(RECVFROM_TYPE_ARG5) || \
-    !defined(RECVFROM_TYPE_ARG6) || \
-    !defined(RECVFROM_TYPE_RETV)
-  /* */
-  Error Missing_definition_of_return_and_arguments_types_of_recvfrom
-  /* */
-#else
-#define sreadfrom(s,b,bl,f,fl) (ssize_t)recvfrom((RECVFROM_TYPE_ARG1)  (s),  \
-                                                 (RECVFROM_TYPE_ARG2 *)(b),  \
-                                                 (RECVFROM_TYPE_ARG3)  (bl), \
-                                                 (RECVFROM_TYPE_ARG4)  (0),  \
-                                                 (RECVFROM_TYPE_ARG5 *)(f),  \
-                                                 (RECVFROM_TYPE_ARG6 *)(fl))
-#endif
-#else /* HAVE_RECVFROM */
-#ifndef sreadfrom
-  /* */
-  Error Missing_definition_of_macro_sreadfrom
-  /* */
-#endif
-#endif /* HAVE_RECVFROM */
-
-
-#ifdef RECVFROM_TYPE_ARG6_IS_VOID
-#  define RECVFROM_ARG6_T int
-#else
-#  define RECVFROM_ARG6_T RECVFROM_TYPE_ARG6
-#endif
-#endif /* if 0 */
-
-
-/*
- * Function-like macro definition used to close a socket.
- */
-
-#if defined(HAVE_CLOSESOCKET)
-#  define sclose(x)  closesocket((x))
-#elif defined(HAVE_CLOSESOCKET_CAMEL)
-#  define sclose(x)  CloseSocket((x))
-#else
-#  define sclose(x)  close((x))
-#endif
-
-
-/*
- * Uppercase macro versions of ANSI/ISO is*() functions/macros which
- * avoid negative number inputs with argument byte codes > 127.
- */
-
-#define ISSPACE(x)  (isspace((int)  ((unsigned char)x)))
-#define ISDIGIT(x)  (isdigit((int)  ((unsigned char)x)))
-#define ISALNUM(x)  (isalnum((int)  ((unsigned char)x)))
-#define ISXDIGIT(x) (isxdigit((int) ((unsigned char)x)))
-#define ISGRAPH(x)  (isgraph((int)  ((unsigned char)x)))
-#define ISALPHA(x)  (isalpha((int)  ((unsigned char)x)))
-#define ISPRINT(x)  (isprint((int)  ((unsigned char)x)))
-#define ISUPPER(x)  (isupper((int)  ((unsigned char)x)))
-#define ISLOWER(x)  (islower((int)  ((unsigned char)x)))
-
-#define ISBLANK(x)  (int)((((unsigned char)x) == ' ') || \
-                          (((unsigned char)x) == '\t'))
-
-
-/*
- * Typedef to 'unsigned char' if bool is not an available 'typedefed' type.
- */
-
-#ifndef HAVE_BOOL_T
-typedef unsigned char bool;
-#define HAVE_BOOL_T
-#endif
-
-
-/*
- * Default definition of uppercase TRUE and FALSE.
- */
-
-#ifndef TRUE
-#define TRUE 1
-#endif
-#ifndef FALSE
-#define FALSE 0
-#endif
-
-
-/*
- * Typedef to 'int' if sig_atomic_t is not an available 'typedefed' type.
- */
-
-#ifndef HAVE_SIG_ATOMIC_T
-typedef int sig_atomic_t;
-#define HAVE_SIG_ATOMIC_T
-#endif
-
-
-/*
- * Convenience SIG_ATOMIC_T definition
- */
-
-#ifdef HAVE_SIG_ATOMIC_T_VOLATILE
-#define SIG_ATOMIC_T static sig_atomic_t
-#else
-#define SIG_ATOMIC_T static volatile sig_atomic_t
-#endif
-
-
-/*
- * Default return type for signal handlers.
- */
-
-#ifndef RETSIGTYPE
-#define RETSIGTYPE void
-#endif
-
-
-/*
- * Macro used to include code only in debug builds.
- */
-
-#ifdef DEBUGBUILD
-#define DEBUGF(x) x
-#else
-#define DEBUGF(x) do { } while (0)
-#endif
-
-
-/*
- * Macro used to include assertion code only in debug builds.
- */
-
-#if defined(DEBUGBUILD) && defined(HAVE_ASSERT_H)
-#define DEBUGASSERT(x) assert(x)
-#else
-#define DEBUGASSERT(x) do { } while (0)
-#endif
-
-
-/*
- * Macro SOCKERRNO / SET_SOCKERRNO() returns / sets the *socket-related* errno
- * (or equivalent) on this platform to hide platform details to code using it.
- */
-
-#ifdef USE_WINSOCK
-#define SOCKERRNO         ((int)WSAGetLastError())
-#define SET_SOCKERRNO(x)  (WSASetLastError((int)(x)))
-#else
-#define SOCKERRNO         (errno)
-#define SET_SOCKERRNO(x)  (errno = (x))
-#endif
-
-
-/*
- * Macro ERRNO / SET_ERRNO() returns / sets the NOT *socket-related* errno
- * (or equivalent) on this platform to hide platform details to code using it.
- */
-
-#ifdef WIN32
-#define ERRNO         ((int)GetLastError())
-#define SET_ERRNO(x)  (SetLastError((DWORD)(x)))
-#else
-#define ERRNO         (errno)
-#define SET_ERRNO(x)  (errno = (x))
-#endif
-
-
-/*
- * Portable error number symbolic names defined to Winsock error codes.
- */
-
-#ifdef USE_WINSOCK
-#undef  EBADF            /* override definition in errno.h */
-#define EBADF            WSAEBADF
-#undef  EINTR            /* override definition in errno.h */
-#define EINTR            WSAEINTR
-#undef  EINVAL           /* override definition in errno.h */
-#define EINVAL           WSAEINVAL
-#define EWOULDBLOCK      WSAEWOULDBLOCK
-#define EINPROGRESS      WSAEINPROGRESS
-#define EALREADY         WSAEALREADY
-#define ENOTSOCK         WSAENOTSOCK
-#define EDESTADDRREQ     WSAEDESTADDRREQ
-#define EMSGSIZE         WSAEMSGSIZE
-#define EPROTOTYPE       WSAEPROTOTYPE
-#define ENOPROTOOPT      WSAENOPROTOOPT
-#define EPROTONOSUPPORT  WSAEPROTONOSUPPORT
-#define ESOCKTNOSUPPORT  WSAESOCKTNOSUPPORT
-#define EOPNOTSUPP       WSAEOPNOTSUPP
-#define EPFNOSUPPORT     WSAEPFNOSUPPORT
-#define EAFNOSUPPORT     WSAEAFNOSUPPORT
-#define EADDRINUSE       WSAEADDRINUSE
-#define EADDRNOTAVAIL    WSAEADDRNOTAVAIL
-#define ENETDOWN         WSAENETDOWN
-#define ENETUNREACH      WSAENETUNREACH
-#define ENETRESET        WSAENETRESET
-#define ECONNABORTED     WSAECONNABORTED
-#define ECONNRESET       WSAECONNRESET
-#define ENOBUFS          WSAENOBUFS
-#define EISCONN          WSAEISCONN
-#define ENOTCONN         WSAENOTCONN
-#define ESHUTDOWN        WSAESHUTDOWN
-#define ETOOMANYREFS     WSAETOOMANYREFS
-#define ETIMEDOUT        WSAETIMEDOUT
-#define ECONNREFUSED     WSAECONNREFUSED
-#define ELOOP            WSAELOOP
-#ifndef ENAMETOOLONG     /* possible previous definition in errno.h */
-#define ENAMETOOLONG     WSAENAMETOOLONG
-#endif
-#define EHOSTDOWN        WSAEHOSTDOWN
-#define EHOSTUNREACH     WSAEHOSTUNREACH
-#ifndef ENOTEMPTY        /* possible previous definition in errno.h */
-#define ENOTEMPTY        WSAENOTEMPTY
-#endif
-#define EPROCLIM         WSAEPROCLIM
-#define EUSERS           WSAEUSERS
-#define EDQUOT           WSAEDQUOT
-#define ESTALE           WSAESTALE
-#define EREMOTE          WSAEREMOTE
-#endif
-
-
-/*
- *  Actually use __32_getpwuid() on 64-bit VMS builds for getpwuid()
- */
-
-#if defined(__VMS) && \
-    defined(__INITIAL_POINTER_SIZE) && (__INITIAL_POINTER_SIZE == 64)
-#define getpwuid __32_getpwuid
-#endif
-
-
-/*
- * Macro argv_item_t hides platform details to code using it.
- */
-
-#ifdef __VMS
-#define argv_item_t  __char_ptr32
-#else
-#define argv_item_t  char *
-#endif
-
-
-/*
- * We use this ZERO_NULL to avoid picky compiler warnings,
- * when assigning a NULL pointer to a function pointer var.
- */
-
-#define ZERO_NULL 0
-
-
-#endif /* __SETUP_ONCE_H */
-
diff --git a/src/other/curl/lib/share.c b/src/other/curl/lib/share.c
deleted file mode 100644
index e6b8e7a..0000000
--- a/src/other/curl/lib/share.c
+++ /dev/null
@@ -1,218 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-#include <stdarg.h>
-#include <stdlib.h>
-#include <string.h>
-#include <curl/curl.h>
-#include "urldata.h"
-#include "share.h"
-#include "curl_memory.h"
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-CURLSH *
-curl_share_init(void)
-{
-  struct Curl_share *share = calloc(1, sizeof(struct Curl_share));
-  if(share)
-    share->specifier |= (1<<CURL_LOCK_DATA_SHARE);
-
-  return share;
-}
-
-#undef curl_share_setopt
-CURLSHcode
-curl_share_setopt(CURLSH *sh, CURLSHoption option, ...)
-{
-  struct Curl_share *share = (struct Curl_share *)sh;
-  va_list param;
-  int type;
-  curl_lock_function lockfunc;
-  curl_unlock_function unlockfunc;
-  void *ptr;
-
-  if(share->dirty)
-    /* don't allow setting options while one or more handles are already
-       using this share */
-    return CURLSHE_IN_USE;
-
-  va_start(param, option);
-
-  switch(option) {
-  case CURLSHOPT_SHARE:
-    /* this is a type this share will share */
-    type = va_arg(param, int);
-    share->specifier |= (1<<type);
-    switch( type ) {
-    case CURL_LOCK_DATA_DNS:
-      if(!share->hostcache) {
-        share->hostcache = Curl_mk_dnscache();
-        if(!share->hostcache)
-          return CURLSHE_NOMEM;
-      }
-      break;
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
-    case CURL_LOCK_DATA_COOKIE:
-      if(!share->cookies) {
-        share->cookies = Curl_cookie_init(NULL, NULL, NULL, TRUE );
-        if(!share->cookies)
-          return CURLSHE_NOMEM;
-      }
-      break;
-#endif   /* CURL_DISABLE_HTTP */
-
-    case CURL_LOCK_DATA_SSL_SESSION: /* not supported (yet) */
-    case CURL_LOCK_DATA_CONNECT:     /* not supported (yet) */
-
-    default:
-      return CURLSHE_BAD_OPTION;
-    }
-    break;
-
-  case CURLSHOPT_UNSHARE:
-    /* this is a type this share will no longer share */
-    type = va_arg(param, int);
-    share->specifier &= ~(1<<type);
-    switch( type )
-    {
-      case CURL_LOCK_DATA_DNS:
-        if(share->hostcache) {
-          Curl_hash_destroy(share->hostcache);
-          share->hostcache = NULL;
-        }
-        break;
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
-      case CURL_LOCK_DATA_COOKIE:
-        if(share->cookies) {
-          Curl_cookie_cleanup(share->cookies);
-          share->cookies = NULL;
-        }
-        break;
-#endif   /* CURL_DISABLE_HTTP */
-
-      case CURL_LOCK_DATA_SSL_SESSION:
-        break;
-
-      case CURL_LOCK_DATA_CONNECT:
-        break;
-
-      default:
-        return CURLSHE_BAD_OPTION;
-    }
-    break;
-
-  case CURLSHOPT_LOCKFUNC:
-    lockfunc = va_arg(param, curl_lock_function);
-    share->lockfunc = lockfunc;
-    break;
-
-  case CURLSHOPT_UNLOCKFUNC:
-    unlockfunc = va_arg(param, curl_unlock_function);
-    share->unlockfunc = unlockfunc;
-    break;
-
-  case CURLSHOPT_USERDATA:
-    ptr = va_arg(param, void *);
-    share->clientdata = ptr;
-    break;
-
-  default:
-    return CURLSHE_BAD_OPTION;
-  }
-
-  return CURLSHE_OK;
-}
-
-CURLSHcode
-curl_share_cleanup(CURLSH *sh)
-{
-  struct Curl_share *share = (struct Curl_share *)sh;
-
-  if(share == NULL)
-    return CURLSHE_INVALID;
-
-  if(share->lockfunc)
-    share->lockfunc(NULL, CURL_LOCK_DATA_SHARE, CURL_LOCK_ACCESS_SINGLE,
-                    share->clientdata);
-
-  if(share->dirty) {
-    if(share->unlockfunc)
-      share->unlockfunc(NULL, CURL_LOCK_DATA_SHARE, share->clientdata);
-    return CURLSHE_IN_USE;
-  }
-
-  if(share->hostcache) {
-    Curl_hash_destroy(share->hostcache);
-    share->hostcache = NULL;
-  }
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
-  if(share->cookies)
-    Curl_cookie_cleanup(share->cookies);
-#endif   /* CURL_DISABLE_HTTP */
-
-  if(share->unlockfunc)
-    share->unlockfunc(NULL, CURL_LOCK_DATA_SHARE, share->clientdata);
-  free(share);
-
-  return CURLSHE_OK;
-}
-
-
-CURLSHcode
-Curl_share_lock(struct SessionHandle *data, curl_lock_data type,
-                curl_lock_access accesstype)
-{
-  struct Curl_share *share = data->share;
-
-  if(share == NULL)
-    return CURLSHE_INVALID;
-
-  if(share->specifier & (1<<type)) {
-    if(share->lockfunc) /* only call this if set! */
-      share->lockfunc(data, type, accesstype, share->clientdata);
-  }
-  /* else if we don't share this, pretend successful lock */
-
-  return CURLSHE_OK;
-}
-
-CURLSHcode
-Curl_share_unlock(struct SessionHandle *data, curl_lock_data type)
-{
-  struct Curl_share *share = data->share;
-
-  if(share == NULL)
-    return CURLSHE_INVALID;
-
-  if(share->specifier & (1<<type)) {
-    if(share->unlockfunc) /* only call this if set! */
-      share->unlockfunc (data, type, share->clientdata);
-  }
-
-  return CURLSHE_OK;
-}
diff --git a/src/other/curl/lib/share.h b/src/other/curl/lib/share.h
deleted file mode 100644
index ea8e233..0000000
--- a/src/other/curl/lib/share.h
+++ /dev/null
@@ -1,55 +0,0 @@
-#ifndef __CURL_SHARE_H
-#define __CURL_SHARE_H
-
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2005, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-#include <curl/curl.h>
-#include "cookie.h"
-
-/* SalfordC says "A structure member may not be volatile". Hence:
- */
-#ifdef __SALFORDC__
-#define CURL_VOLATILE
-#else
-#define CURL_VOLATILE volatile
-#endif
-
-/* this struct is libcurl-private, don't export details */
-struct Curl_share {
-  unsigned int specifier;
-  CURL_VOLATILE unsigned int dirty;
-
-  curl_lock_function lockfunc;
-  curl_unlock_function unlockfunc;
-  void *clientdata;
-
-  struct curl_hash *hostcache;
-  struct CookieInfo *cookies;
-};
-
-CURLSHcode Curl_share_lock (struct SessionHandle *, curl_lock_data,
-                            curl_lock_access);
-CURLSHcode Curl_share_unlock (struct SessionHandle *, curl_lock_data);
-
-#endif /* __CURL_SHARE_H */
diff --git a/src/other/curl/lib/slist.c b/src/other/curl/lib/slist.c
deleted file mode 100644
index 7c0f67b..0000000
--- a/src/other/curl/lib/slist.c
+++ /dev/null
@@ -1,135 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <stdio.h>
-#include <stdarg.h>
-#include <stdlib.h>
-
-#include <string.h>
-#include "curl_memory.h"
-#include "slist.h"
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/* returns last node in linked list */
-static struct curl_slist *slist_get_last(struct curl_slist *list)
-{
-  struct curl_slist     *item;
-
-  /* if caller passed us a NULL, return now */
-  if(!list)
-    return NULL;
-
-  /* loop through to find the last item */
-  item = list;
-  while(item->next) {
-    item = item->next;
-  }
-  return item;
-}
-
-/*
- * curl_slist_append() appends a string to the linked list. It always returns
- * the address of the first record, so that you can use this function as an
- * initialization function as well as an append function. If you find this
- * bothersome, then simply create a separate _init function and call it
- * appropriately from within the program.
- */
-struct curl_slist *curl_slist_append(struct curl_slist *list,
-                                     const char *data)
-{
-  struct curl_slist     *last;
-  struct curl_slist     *new_item;
-
-  new_item = malloc(sizeof(struct curl_slist));
-  if(new_item) {
-    char *dupdata = strdup(data);
-    if(dupdata) {
-      new_item->next = NULL;
-      new_item->data = dupdata;
-    }
-    else {
-      free(new_item);
-      return NULL;
-    }
-  }
-  else
-    return NULL;
-
-  if(list) {
-    last = slist_get_last(list);
-    last->next = new_item;
-    return list;
-  }
-
-  /* if this is the first item, then new_item *is* the list */
-  return new_item;
-}
-
-/*
- * Curl_slist_duplicate() duplicates a linked list. It always returns the
- * address of the first record of the cloned list or NULL in case of an
- * error (or if the input list was NULL).
- */
-struct curl_slist *Curl_slist_duplicate(struct curl_slist *inlist)
-{
-  struct curl_slist *outlist = NULL;
-  struct curl_slist *tmp;
-
-  while(inlist) {
-    tmp = curl_slist_append(outlist, inlist->data);
-
-    if (!tmp) {
-      curl_slist_free_all(outlist);
-      return NULL;
-    }
-
-    outlist = tmp;
-    inlist = inlist->next;
-  }
-  return outlist;
-}
-
-/* be nice and clean up resources */
-void curl_slist_free_all(struct curl_slist *list)
-{
-  struct curl_slist     *next;
-  struct curl_slist     *item;
-
-  if(!list)
-    return;
-
-  item = list;
-  do {
-    next = item->next;
-
-    if(item->data) {
-      free(item->data);
-    }
-    free(item);
-    item = next;
-  } while(next);
-}
-
diff --git a/src/other/curl/lib/slist.h b/src/other/curl/lib/slist.h
deleted file mode 100644
index 161b150..0000000
--- a/src/other/curl/lib/slist.h
+++ /dev/null
@@ -1,32 +0,0 @@
-#ifndef __SLIST_H
-#define __SLIST_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * Curl_slist_duplicate() duplicates a linked list. It always returns the
- * address of the first record of the cloned list or NULL in case of an
- * error (or if the input list was NULL).
- */
-struct curl_slist *Curl_slist_duplicate(struct curl_slist *inlist);
-
-#endif /* __SLIST_H */
diff --git a/src/other/curl/lib/smtp.c b/src/other/curl/lib/smtp.c
deleted file mode 100644
index 654f435..0000000
--- a/src/other/curl/lib/smtp.c
+++ /dev/null
@@ -1,1105 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- * RFC2821 SMTP protocol
- * RFC3207 SMTP over TLS
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_SMTP
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <ctype.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_UTSNAME_H
-#include <sys/utsname.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#endif
-
-#if (defined(NETWARE) && defined(__NOVELL_LIBC__))
-#undef in_addr_t
-#define in_addr_t unsigned long
-#endif
-
-#include <curl/curl.h>
-#include "urldata.h"
-#include "sendf.h"
-#include "easyif.h" /* for Curl_convert_... prototypes */
-
-#include "if2ip.h"
-#include "hostip.h"
-#include "progress.h"
-#include "transfer.h"
-#include "escape.h"
-#include "http.h" /* for HTTP proxy tunnel stuff */
-#include "socks.h"
-#include "smtp.h"
-
-#include "strtoofft.h"
-#include "strequal.h"
-#include "sslgen.h"
-#include "connect.h"
-#include "strerror.h"
-#include "select.h"
-#include "multiif.h"
-#include "url.h"
-#include "rawstr.h"
-#include "strtoofft.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/* Local API functions */
-static CURLcode smtp_regular_transfer(struct connectdata *conn, bool *done);
-static CURLcode smtp_do(struct connectdata *conn, bool *done);
-static CURLcode smtp_done(struct connectdata *conn,
-                          CURLcode, bool premature);
-static CURLcode smtp_connect(struct connectdata *conn, bool *done);
-static CURLcode smtp_disconnect(struct connectdata *conn);
-static CURLcode smtp_multi_statemach(struct connectdata *conn, bool *done);
-static int smtp_getsock(struct connectdata *conn,
-                        curl_socket_t *socks,
-                        int numsocks);
-static CURLcode smtp_doing(struct connectdata *conn,
-                           bool *dophase_done);
-static CURLcode smtp_setup_connection(struct connectdata * conn);
-
-
-/*
- * SMTP protocol handler.
- */
-
-const struct Curl_handler Curl_handler_smtp = {
-  "SMTP",                           /* scheme */
-  smtp_setup_connection,            /* setup_connection */
-  smtp_do,                          /* do_it */
-  smtp_done,                        /* done */
-  ZERO_NULL,                        /* do_more */
-  smtp_connect,                     /* connect_it */
-  smtp_multi_statemach,             /* connecting */
-  smtp_doing,                       /* doing */
-  smtp_getsock,                     /* proto_getsock */
-  smtp_getsock,                     /* doing_getsock */
-  ZERO_NULL,                        /* perform_getsock */
-  smtp_disconnect,                  /* disconnect */
-  PORT_SMTP,                        /* defport */
-  PROT_SMTP                         /* protocol */
-};
-
-
-#ifdef USE_SSL
-/*
- * SMTPS protocol handler.
- */
-
-const struct Curl_handler Curl_handler_smtps = {
-  "SMTPS",                          /* scheme */
-  smtp_setup_connection,            /* setup_connection */
-  smtp_do,                          /* do_it */
-  smtp_done,                        /* done */
-  ZERO_NULL,                        /* do_more */
-  smtp_connect,                     /* connect_it */
-  smtp_multi_statemach,             /* connecting */
-  smtp_doing,                       /* doing */
-  smtp_getsock,                     /* proto_getsock */
-  smtp_getsock,                     /* doing_getsock */
-  ZERO_NULL,                        /* perform_getsock */
-  smtp_disconnect,                  /* disconnect */
-  PORT_SMTPS,                       /* defport */
-  PROT_SMTP | PROT_SMTPS | PROT_SSL  /* protocol */
-};
-#endif
-
-#ifndef CURL_DISABLE_HTTP
-/*
- * HTTP-proxyed SMTP protocol handler.
- */
-
-static const struct Curl_handler Curl_handler_smtp_proxy = {
-  "SMTP",                               /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_http,                            /* do_it */
-  Curl_http_done,                       /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_SMTP,                            /* defport */
-  PROT_HTTP                             /* protocol */
-};
-
-
-#ifdef USE_SSL
-/*
- * HTTP-proxyed SMTPS protocol handler.
- */
-
-static const struct Curl_handler Curl_handler_smtps_proxy = {
-  "SMTPS",                              /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  Curl_http,                            /* do_it */
-  Curl_http_done,                       /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_SMTPS,                           /* defport */
-  PROT_HTTP                             /* protocol */
-};
-#endif
-#endif
-
-
-/* fucntion that checks for an ending smtp status code at the start of the
-   given string */
-static int smtp_endofresp(struct pingpong *pp, int *resp)
-{
-  char *line = pp->linestart_resp;
-  size_t len = pp->nread_resp;
-
-  if( (len >= 4) && (' ' == line[3]) &&
-      ISDIGIT(line[0]) && ISDIGIT(line[1]) && ISDIGIT(line[2])) {
-    *resp=atoi(line);
-    return TRUE;
-  }
-
-  return FALSE; /* nothing for us */
-}
-
-/* This is the ONLY way to change SMTP state! */
-static void state(struct connectdata *conn,
-                  smtpstate newstate)
-{
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
-  /* for debug purposes */
-  static const char * const names[]={
-    "STOP",
-    "SERVERGREET",
-    "EHLO",
-    "HELO",
-    "STARTTLS",
-    "MAIL",
-    "RCPT",
-    "DATA",
-    "POSTDATA",
-    "QUIT",
-    /* LAST */
-  };
-#endif
-  struct smtp_conn *smtpc = &conn->proto.smtpc;
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
-  if(smtpc->state != newstate)
-    infof(conn->data, "SMTP %p state change from %s to %s\n",
-          smtpc, names[smtpc->state], names[newstate]);
-#endif
-  smtpc->state = newstate;
-}
-
-static CURLcode smtp_state_ehlo(struct connectdata *conn)
-{
-  CURLcode result;
-  struct smtp_conn *smtpc = &conn->proto.smtpc;
-
-  /* send EHLO */
-  result = Curl_pp_sendf(&conn->proto.smtpc.pp, "EHLO %s", smtpc->domain);
-
-  if(result)
-    return result;
-
-  state(conn, SMTP_EHLO);
-  return CURLE_OK;
-}
-
-static CURLcode smtp_state_helo(struct connectdata *conn)
-{
-  CURLcode result;
-  struct smtp_conn *smtpc = &conn->proto.smtpc;
-
-  /* send HELO */
-  result = Curl_pp_sendf(&conn->proto.smtpc.pp, "HELO %s", smtpc->domain);
-
-  if(result)
-    return result;
-
-  state(conn, SMTP_HELO);
-  return CURLE_OK;
-}
-
-/* For the SMTP "protocol connect" and "doing" phases only */
-static int smtp_getsock(struct connectdata *conn,
-                        curl_socket_t *socks,
-                        int numsocks)
-{
-  return Curl_pp_getsock(&conn->proto.smtpc.pp, socks, numsocks);
-}
-
-/* for STARTTLS responses */
-static CURLcode smtp_state_starttls_resp(struct connectdata *conn,
-                                         int smtpcode,
-                                         smtpstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  (void)instate; /* no use for this yet */
-
-  if(smtpcode != 220) {
-    if(data->set.ftp_ssl == CURLUSESSL_TRY)
-      state(conn, SMTP_STOP);
-    else {
-      failf(data, "STARTTLS denied. %c", smtpcode);
-      result = CURLE_LOGIN_DENIED;
-    }
-  }
-  else {
-    /* Curl_ssl_connect is BLOCKING */
-    result = Curl_ssl_connect(conn, FIRSTSOCKET);
-    if(CURLE_OK == result) {
-      conn->protocol |= PROT_SMTPS;
-      result = smtp_state_ehlo(conn);
-    }
-  }
-  return result;
-}
-
-/* for EHLO responses */
-static CURLcode smtp_state_ehlo_resp(struct connectdata *conn,
-                                     int smtpcode,
-                                     smtpstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-
-  (void)instate; /* no use for this yet */
-
-  if(smtpcode/100 != 2) {
-    if(data->set.ftp_ssl <= CURLUSESSL_TRY)
-      result = smtp_state_helo(conn);
-    else {
-      failf(data, "Access denied: %d", smtpcode);
-      result = CURLE_LOGIN_DENIED;
-    }
-  } 
-  else if(data->set.ftp_ssl && !conn->ssl[FIRSTSOCKET].use) {
-    /* We don't have a SSL/TLS connection yet, but SSL is requested. Switch
-       to TLS connection now */
-    result = Curl_pp_sendf(&conn->proto.smtpc.pp, "STARTTLS", NULL);
-    state(conn, SMTP_STARTTLS);
-  }
-  else {
-    /* end the connect phase */
-    state(conn, SMTP_STOP);
-  }
-  return result;
-}
-
-/* for HELO responses */
-static CURLcode smtp_state_helo_resp(struct connectdata *conn,
-                                     int smtpcode,
-                                     smtpstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-
-  (void)instate; /* no use for this yet */
-
-  if(smtpcode/100 != 2) {
-    failf(data, "Access denied: %d", smtpcode);
-    result = CURLE_LOGIN_DENIED;
-  } 
-  else {
-    /* end the connect phase */
-    state(conn, SMTP_STOP);
-  }
-  return result;
-}
-
-/* start the DO phase */
-static CURLcode smtp_mail(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-
-  /* send MAIL */
-  result = Curl_pp_sendf(&conn->proto.smtpc.pp, "MAIL FROM:%s",
-                         data->set.str[STRING_MAIL_FROM]);
-  if(result)
-    return result;
-
-  state(conn, SMTP_MAIL);
-  return result;
-}
-
-static CURLcode smtp_rcpt_to(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct smtp_conn *smtpc = &conn->proto.smtpc;
-
-  /* send RCPT TO */
-  if(smtpc->rcpt) {
-    if(smtpc->rcpt->data[0] == '<')
-      result = Curl_pp_sendf(&conn->proto.smtpc.pp, "RCPT TO:%s",
-                             smtpc->rcpt->data);
-    else
-      result = Curl_pp_sendf(&conn->proto.smtpc.pp, "RCPT TO:<%s>",
-                             smtpc->rcpt->data);
-    if(!result)
-      state(conn, SMTP_RCPT);
-  }
-  return result;
-}
-
-/* for MAIL responses */
-static CURLcode smtp_state_mail_resp(struct connectdata *conn,
-                                     int smtpcode,
-                                     smtpstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  (void)instate; /* no use for this yet */
-
-  if(smtpcode/100 != 2) {
-    failf(data, "Access denied: %d", smtpcode);
-    result = CURLE_LOGIN_DENIED;
-    state(conn, SMTP_STOP);
-  }
-  else {
-    struct smtp_conn *smtpc = &conn->proto.smtpc;
-    smtpc->rcpt = data->set.mail_rcpt;
-
-    result = smtp_rcpt_to(conn);
-  }
-
-  return result;
-}
-
-/* for RCPT responses */
-static CURLcode smtp_state_rcpt_resp(struct connectdata *conn,
-                                     int smtpcode,
-                                     smtpstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  (void)instate; /* no use for this yet */
-
-  if(smtpcode/100 != 2) {
-    failf(data, "Access denied: %d", smtpcode);
-    result = CURLE_LOGIN_DENIED;
-    state(conn, SMTP_STOP);
-  }
-  else {
-    struct smtp_conn *smtpc = &conn->proto.smtpc;
-
-    if(smtpc->rcpt) {
-      smtpc->rcpt = smtpc->rcpt->next;
-      result = smtp_rcpt_to(conn);
-
-      /* if we failed or still is in RCPT sending, return */
-      if(result || smtpc->rcpt)
-        return result;
-    }
-
-    /* send DATA */
-    result = Curl_pp_sendf(&conn->proto.smtpc.pp, "DATA", "");
-    if(result)
-      return result;
-
-    state(conn, SMTP_DATA);
-  }
-  return result;
-}
-
-/* for the DATA response */
-static CURLcode smtp_state_data_resp(struct connectdata *conn,
-                                     int smtpcode,
-                                     smtpstate instate)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct FTP *smtp = data->state.proto.smtp;
-
-  (void)instate; /* no use for this yet */
-
-  if(smtpcode != 354) {
-    state(conn, SMTP_STOP);
-    return CURLE_RECV_ERROR;
-  }
-
-  /* SMTP upload */
-  result = Curl_setup_transfer(conn, -1, -1, FALSE, NULL, /* no download */
-                               FIRSTSOCKET, smtp->bytecountp);
-
-  state(conn, SMTP_STOP);
-  return result;
-}
-
-/* for the POSTDATA response, which is received after the entire DATA
-   part has been sent off to the server */
-static CURLcode smtp_state_postdata_resp(struct connectdata *conn,
-                                     int smtpcode,
-                                     smtpstate instate)
-{
-  CURLcode result = CURLE_OK;
-
-  (void)instate; /* no use for this yet */
-
-  if(smtpcode != 250)
-    result = CURLE_RECV_ERROR;
-
-  state(conn, SMTP_STOP);
-  return result;
-}
-
-static CURLcode smtp_statemach_act(struct connectdata *conn)
-{
-  CURLcode result;
-  curl_socket_t sock = conn->sock[FIRSTSOCKET];
-  struct SessionHandle *data=conn->data;
-  int smtpcode;
-  struct smtp_conn *smtpc = &conn->proto.smtpc;
-  struct pingpong *pp = &smtpc->pp;
-  size_t nread = 0;
-
-  if(pp->sendleft)
-    /* we have a piece of a command still left to send */
-    return Curl_pp_flushsend(pp);
-
-  /* we read a piece of response */
-  result = Curl_pp_readresp(sock, pp, &smtpcode, &nread);
-  if(result)
-    return result;
-
-  if(smtpcode) {
-    /* we have now received a full SMTP server response */
-    switch(smtpc->state) {
-    case SMTP_SERVERGREET:
-      if(smtpcode/100 != 2) {
-        failf(data, "Got unexpected smtp-server response: %d", smtpcode);
-        return CURLE_FTP_WEIRD_SERVER_REPLY;
-      }
-
-      result = smtp_state_ehlo(conn);
-      if(result)
-        return result;
-      break;
-
-    case SMTP_EHLO:
-      result = smtp_state_ehlo_resp(conn, smtpcode, smtpc->state);
-      break;
-
-    case SMTP_HELO:
-      result = smtp_state_helo_resp(conn, smtpcode, smtpc->state);
-      break;
-
-    case SMTP_MAIL:
-      result = smtp_state_mail_resp(conn, smtpcode, smtpc->state);
-      break;
-
-    case SMTP_RCPT:
-      result = smtp_state_rcpt_resp(conn, smtpcode, smtpc->state);
-      break;
-
-    case SMTP_STARTTLS:
-      result = smtp_state_starttls_resp(conn, smtpcode, smtpc->state);
-      break;
-
-    case SMTP_DATA:
-      result = smtp_state_data_resp(conn, smtpcode, smtpc->state);
-      break;
-
-    case SMTP_POSTDATA:
-      result = smtp_state_postdata_resp(conn, smtpcode, smtpc->state);
-      break;
-
-    case SMTP_QUIT:
-      /* fallthrough, just stop! */
-    default:
-      /* internal error */
-      state(conn, SMTP_STOP);
-      break;
-    }
-  }
-  return result;
-}
-
-/* called repeatedly until done from multi.c */
-static CURLcode smtp_multi_statemach(struct connectdata *conn,
-                                     bool *done)
-{
-  struct smtp_conn *smtpc = &conn->proto.smtpc;
-  CURLcode result = Curl_pp_multi_statemach(&smtpc->pp);
-
-  *done = (bool)(smtpc->state == SMTP_STOP);
-
-  return result;
-}
-
-static CURLcode smtp_easy_statemach(struct connectdata *conn)
-{
-  struct smtp_conn *smtpc = &conn->proto.smtpc;
-  struct pingpong *pp = &smtpc->pp;
-  CURLcode result = CURLE_OK;
-
-  while(smtpc->state != SMTP_STOP) {
-    result = Curl_pp_easy_statemach(pp);
-    if(result)
-      break;
-  }
-
-  return result;
-}
-
-/*
- * Allocate and initialize the struct SMTP for the current SessionHandle.  If
- * need be.
- */
-static CURLcode smtp_init(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  struct FTP *smtp = data->state.proto.smtp;
-  if(!smtp) {
-    smtp = data->state.proto.smtp = calloc(sizeof(struct FTP), 1);
-    if(!smtp)
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-  /* get some initial data into the smtp struct */
-  smtp->bytecountp = &data->req.bytecount;
-
-  /* No need to duplicate user+password, the connectdata struct won't change
-     during a session, but we re-init them here since on subsequent inits
-     since the conn struct may have changed or been replaced.
-  */
-  smtp->user = conn->user;
-  smtp->passwd = conn->passwd;
-
-  return CURLE_OK;
-}
-
-/*
- * smtp_connect() should do everything that is to be considered a part of
- * the connection phase.
- *
- * The variable 'done' points to will be TRUE if the protocol-layer connect
- * phase is done when this function returns, or FALSE is not. When called as
- * a part of the easy interface, it will always be TRUE.
- */
-static CURLcode smtp_connect(struct connectdata *conn,
-                             bool *done) /* see description above */
-{
-  CURLcode result;
-  struct smtp_conn *smtpc = &conn->proto.smtpc;
-  struct SessionHandle *data=conn->data;
-  struct pingpong *pp=&smtpc->pp;
-  const char *path = conn->data->state.path;
-  int len;
-
-#ifdef HAVE_GETHOSTNAME
-    char localhost[1024 + 1];
-#endif
-
-  *done = FALSE; /* default to not done yet */
-
-  /* If there already is a protocol-specific struct allocated for this
-     sessionhandle, deal with it */
-  Curl_reset_reqproto(conn);
-
-  result = smtp_init(conn);
-  if(CURLE_OK != result)
-    return result;
-
-  /* We always support persistant connections on smtp */
-  conn->bits.close = FALSE;
-
-  pp->response_time = RESP_TIMEOUT; /* set default response time-out */
-  pp->statemach_act = smtp_statemach_act;
-  pp->endofresp = smtp_endofresp;
-  pp->conn = conn;
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_PROXY)
-  if(conn->bits.tunnel_proxy && conn->bits.httpproxy) {
-    /* for SMTP over HTTP proxy */
-    struct HTTP http_proxy;
-    struct FTP *smtp_save;
-
-    /* BLOCKING */
-    /* We want "seamless" SMTP operations through HTTP proxy tunnel */
-
-    /* Curl_proxyCONNECT is based on a pointer to a struct HTTP at the member
-     * conn->proto.http; we want SMTP through HTTP and we have to change the
-     * member temporarily for connecting to the HTTP proxy. After
-     * Curl_proxyCONNECT we have to set back the member to the original struct
-     * SMTP pointer
-     */
-    smtp_save = data->state.proto.smtp;
-    memset(&http_proxy, 0, sizeof(http_proxy));
-    data->state.proto.http = &http_proxy;
-
-    result = Curl_proxyCONNECT(conn, FIRSTSOCKET,
-                               conn->host.name, conn->remote_port);
-
-    data->state.proto.smtp = smtp_save;
-
-    if(CURLE_OK != result)
-      return result;
-  }
-#endif /* !CURL_DISABLE_HTTP && !CURL_DISABLE_PROXY */
-
-  if(conn->protocol & PROT_SMTPS) {
-    /* BLOCKING */
-    /* SMTPS is simply smtp with SSL for the control channel */
-    /* now, perform the SSL initialization for this socket */
-    result = Curl_ssl_connect(conn, FIRSTSOCKET);
-    if(result)
-      return result;
-  }
-
-  Curl_pp_init(pp); /* init the response reader stuff */
-
-  pp->response_time = RESP_TIMEOUT; /* set default response time-out */
-  pp->statemach_act = smtp_statemach_act;
-  pp->endofresp = smtp_endofresp;
-  pp->conn = conn;
-
-  if(!*path) {
-#ifdef HAVE_GETHOSTNAME
-    if(!gethostname(localhost, sizeof localhost))
-      path = localhost;
-    else
-#endif
-    path = "localhost";
-  }
-
-  /* url decode the path and use it as domain with EHLO */
-  smtpc->domain = curl_easy_unescape(conn->data, path, 0, &len);
-  if (!smtpc->domain)
-    return CURLE_OUT_OF_MEMORY;
-
-  /* When we connect, we start in the state where we await the server greeting
-   */
-  state(conn, SMTP_SERVERGREET);
-
-  if(data->state.used_interface == Curl_if_multi)
-    result = smtp_multi_statemach(conn, done);
-  else {
-    result = smtp_easy_statemach(conn);
-    if(!result)
-      *done = TRUE;
-  }
-
-  return result;
-}
-
-/***********************************************************************
- *
- * smtp_done()
- *
- * The DONE function. This does what needs to be done after a single DO has
- * performed.
- *
- * Input argument is already checked for validity.
- */
-static CURLcode smtp_done(struct connectdata *conn, CURLcode status,
-                          bool premature)
-{
-  struct SessionHandle *data = conn->data;
-  struct FTP *smtp = data->state.proto.smtp;
-  CURLcode result=CURLE_OK;
-  ssize_t bytes_written;
-  (void)premature;
-
-  if(!smtp)
-    /* When the easy handle is removed from the multi while libcurl is still
-     * trying to resolve the host name, it seems that the smtp struct is not
-     * yet initialized, but the removal action calls Curl_done() which calls
-     * this function. So we simply return success if no smtp pointer is set.
-     */
-    return CURLE_OK;
-
-  if(status) {
-    conn->bits.close = TRUE; /* marked for closure */
-    result = status;      /* use the already set error code */
-  }
-  else
-    /* TODO: make this work even when the socket is EWOULDBLOCK in this call! */
-
-    /* write to socket (send away data) */
-    result = Curl_write(conn,
-                        conn->writesockfd,  /* socket to send to */
-                        SMTP_EOB,           /* buffer pointer */
-                        SMTP_EOB_LEN,       /* buffer size */
-                        &bytes_written);    /* actually sent away */
-
-
-  if(status == CURLE_OK) {
-    struct smtp_conn *smtpc = &conn->proto.smtpc;
-    struct pingpong *pp= &smtpc->pp;
-    pp->response = Curl_tvnow(); /* timeout relative now */
-
-    state(conn, SMTP_POSTDATA);
-    /* run the state-machine
-
-       TODO: when the multi interface is used, this _really_ should be using
-       the smtp_multi_statemach function but we have no general support for
-       non-blocking DONE operations, not in the multi state machine and with
-       Curl_done() invokes on several places in the code!
-    */
-    result = smtp_easy_statemach(conn);
-  }
-
-  /* clear these for next connection */
-  smtp->transfer = FTPTRANSFER_BODY;
-
-  return result;
-}
-
-/***********************************************************************
- *
- * smtp_perform()
- *
- * This is the actual DO function for SMTP. Get a file/directory according to
- * the options previously setup.
- */
-
-static
-CURLcode smtp_perform(struct connectdata *conn,
-                     bool *connected,  /* connect status after PASV / PORT */
-                     bool *dophase_done)
-{
-  /* this is SMTP and no proxy */
-  CURLcode result=CURLE_OK;
-
-  DEBUGF(infof(conn->data, "DO phase starts\n"));
-
-  if(conn->data->set.opt_no_body) {
-    /* requested no body means no transfer... */
-    struct FTP *smtp = conn->data->state.proto.smtp;
-    smtp->transfer = FTPTRANSFER_INFO;
-  }
-
-  *dophase_done = FALSE; /* not done yet */
-
-  /* start the first command in the DO phase */
-  result = smtp_mail(conn);
-  if(result)
-    return result;
-
-  /* run the state-machine */
-  if(conn->data->state.used_interface == Curl_if_multi)
-    result = smtp_multi_statemach(conn, dophase_done);
-  else {
-    result = smtp_easy_statemach(conn);
-    *dophase_done = TRUE; /* with the easy interface we are done here */
-  }
-  *connected = conn->bits.tcpconnect;
-
-  if(*dophase_done)
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-
-  return result;
-}
-
-/***********************************************************************
- *
- * smtp_do()
- *
- * This function is registered as 'curl_do' function. It decodes the path
- * parts etc as a wrapper to the actual DO function (smtp_perform).
- *
- * The input argument is already checked for validity.
- */
-static CURLcode smtp_do(struct connectdata *conn, bool *done)
-{
-  CURLcode retcode = CURLE_OK;
-
-  *done = FALSE; /* default to false */
-
-  /*
-    Since connections can be re-used between SessionHandles, this might be a
-    connection already existing but on a fresh SessionHandle struct so we must
-    make sure we have a good 'struct SMTP' to play with. For new connections,
-    the struct SMTP is allocated and setup in the smtp_connect() function.
-  */
-  Curl_reset_reqproto(conn);
-  retcode = smtp_init(conn);
-  if(retcode)
-    return retcode;
-
-  retcode = smtp_regular_transfer(conn, done);
-
-  return retcode;
-}
-
-/***********************************************************************
- *
- * smtp_quit()
- *
- * This should be called before calling sclose().  We should then wait for the
- * response from the server before returning. The calling code should then try
- * to close the connection.
- *
- */
-static CURLcode smtp_quit(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-
-  result = Curl_pp_sendf(&conn->proto.smtpc.pp, "QUIT", NULL);
-  if(result)
-    return result;
-  state(conn, SMTP_QUIT);
-
-  result = smtp_easy_statemach(conn);
-
-  return result;
-}
-
-/***********************************************************************
- *
- * smtp_disconnect()
- *
- * Disconnect from an SMTP server. Cleanup protocol-specific per-connection
- * resources. BLOCKING.
- */
-static CURLcode smtp_disconnect(struct connectdata *conn)
-{
-  struct smtp_conn *smtpc= &conn->proto.smtpc;
-
-  /* We cannot send quit unconditionally. If this connection is stale or
-     bad in any way, sending quit and waiting around here will make the
-     disconnect wait in vain and cause more problems than we need to.
-  */
-
-  /* The SMTP session may or may not have been allocated/setup at this
-     point! */
-  if (smtpc->pp.conn)
-    (void)smtp_quit(conn); /* ignore errors on the LOGOUT */
-
-  Curl_pp_disconnect(&smtpc->pp);
-
-  return CURLE_OK;
-}
-
-/* call this when the DO phase has completed */
-static CURLcode smtp_dophase_done(struct connectdata *conn,
-                                  bool connected)
-{
-  CURLcode result = CURLE_OK;
-  struct FTP *smtp = conn->data->state.proto.smtp;
-  struct smtp_conn *smtpc= &conn->proto.smtpc;
-  (void)connected;
-
-  if(smtp->transfer != FTPTRANSFER_BODY)
-    /* no data to transfer */
-    result=Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-
-  free(smtpc->domain);
-
-  return result;
-}
-
-/* called from multi.c while DOing */
-static CURLcode smtp_doing(struct connectdata *conn,
-                               bool *dophase_done)
-{
-  CURLcode result;
-  result = smtp_multi_statemach(conn, dophase_done);
-
-  if(*dophase_done) {
-    result = smtp_dophase_done(conn, FALSE /* not connected */);
-
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-  }
-  return result;
-}
-
-/***********************************************************************
- *
- * smtp_regular_transfer()
- *
- * The input argument is already checked for validity.
- *
- * Performs all commands done before a regular transfer between a local and a
- * remote host.
- */
-static
-CURLcode smtp_regular_transfer(struct connectdata *conn,
-                              bool *dophase_done)
-{
-  CURLcode result=CURLE_OK;
-  bool connected=FALSE;
-  struct SessionHandle *data = conn->data;
-  data->req.size = -1; /* make sure this is unknown at this point */
-
-  Curl_pgrsSetUploadCounter(data, 0);
-  Curl_pgrsSetDownloadCounter(data, 0);
-  Curl_pgrsSetUploadSize(data, 0);
-  Curl_pgrsSetDownloadSize(data, 0);
-
-  result = smtp_perform(conn,
-                        &connected, /* have we connected after PASV/PORT */
-                        dophase_done); /* all commands in the DO-phase done? */
-
-  if(CURLE_OK == result) {
-
-    if(!*dophase_done)
-      /* the DO phase has not completed yet */
-      return CURLE_OK;
-
-    result = smtp_dophase_done(conn, connected);
-    if(result)
-      return result;
-  }
-
-  return result;
-}
-
-static CURLcode smtp_setup_connection(struct connectdata * conn)
-{
-  struct SessionHandle *data = conn->data;
-
-  if(conn->bits.httpproxy && !data->set.tunnel_thru_httpproxy) {
-    /* Unless we have asked to tunnel smtp operations through the proxy, we
-       switch and use HTTP operations only */
-#ifndef CURL_DISABLE_HTTP
-    if(conn->handler == &Curl_handler_smtp)
-      conn->handler = &Curl_handler_smtp_proxy;
-    else {
-#ifdef USE_SSL
-      conn->handler = &Curl_handler_smtps_proxy;
-#else
-      failf(data, "SMTPS not supported!");
-      return CURLE_UNSUPPORTED_PROTOCOL;
-#endif
-    }
-    /*
-     * We explicitly mark this connection as persistent here as we're doing
-     * SMTP over HTTP and thus we accidentally avoid setting this value
-     * otherwise.
-     */
-    conn->bits.close = FALSE;
-#else
-    failf(data, "SMTP over http proxy requires HTTP support built-in!");
-    return CURLE_UNSUPPORTED_PROTOCOL;
-#endif
-  }
-
-  data->state.path++;   /* don't include the initial slash */
-
-  return CURLE_OK;
-}
-
-CURLcode Curl_smtp_escape_eob(struct connectdata *conn, ssize_t nread)
-{
-  /* When sending SMTP payload, we must detect CRLF.CRLF sequences in
-   * the data and make sure it is sent as CRLF..CRLF instead, as
-   * otherwise it will wrongly be detected as end of data by the server.
-   */
-  ssize_t i;
-  ssize_t si;
-  struct smtp_conn *smtpc = &conn->proto.smtpc;
-  struct SessionHandle *data = conn->data;
-
-  if(data->state.scratch == NULL)
-    data->state.scratch = malloc(2*BUFSIZE);
-  if(data->state.scratch == NULL) {
-    failf (data, "Failed to alloc scratch buffer!");
-    return CURLE_OUT_OF_MEMORY;
-  }
-  /* This loop can be improved by some kind of Boyer-Moore style of
-     approach but that is saved for later... */
-  for(i = 0, si = 0; i < nread; i++, si++) {
-    ssize_t left = nread - i;
-
-    if(left>= (ssize_t)(SMTP_EOB_LEN-smtpc->eob)) {
-      if(!memcmp(SMTP_EOB+smtpc->eob, &data->req.upload_fromhere[i],
-                 SMTP_EOB_LEN-smtpc->eob)) {
-        /* It matched, copy the replacement data to the target buffer
-           instead. Note that the replacement does not contain the
-           trailing CRLF but we instead continue to match on that one
-           to deal with repeated sequences. Like CRLF.CRLF.CRLF etc
-        */
-        memcpy(&data->state.scratch[si], SMTP_EOB_REPL,
-               SMTP_EOB_REPL_LEN);
-        si+=SMTP_EOB_REPL_LEN-1; /* minus one since the for() increments
-                                          it */
-        i+=SMTP_EOB_LEN-smtpc->eob-1-2;
-        smtpc->eob = 0; /* start over */
-        continue;
-      }
-    }
-    else if(!memcmp(SMTP_EOB+smtpc->eob, &data->req.upload_fromhere[i],
-                    left)) {
-      /* the last piece of the data matches the EOB so we can't send that
-         until we know the rest of it */
-      smtpc->eob += left;
-      break;
-    }
-
-    data->state.scratch[si] = data->req.upload_fromhere[i];
-  } /* for() */
-
-  if(si != nread) {
-    /* only use the new buffer if we replaced something */
-    nread = si;
-
-    /* upload from the new (replaced) buffer instead */
-    data->req.upload_fromhere = data->state.scratch;
-
-    /* set the new amount too */
-    data->req.upload_present = nread;
-  }
-  return CURLE_OK;
-}
-
-#endif /* CURL_DISABLE_SMTP */
diff --git a/src/other/curl/lib/smtp.h b/src/other/curl/lib/smtp.h
deleted file mode 100644
index 4716338..0000000
--- a/src/other/curl/lib/smtp.h
+++ /dev/null
@@ -1,69 +0,0 @@
-#ifndef __SMTP_H
-#define __SMTP_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2009 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "pingpong.h"
-
-/****************************************************************************
- * SMTP unique setup
- ***************************************************************************/
-typedef enum {
-  SMTP_STOP,        /* do nothing state, stops the state machine */
-  SMTP_SERVERGREET, /* waiting for the initial greeting immediately after
-                       a connect */
-  SMTP_EHLO,
-  SMTP_HELO,
-  SMTP_STARTTLS,
-  SMTP_MAIL, /* MAIL FROM */
-  SMTP_RCPT, /* RCPT TO */
-  SMTP_DATA,
-  SMTP_POSTDATA,
-  SMTP_QUIT,
-  SMTP_LAST  /* never used */
-} smtpstate;
-
-/* smtp_conn is used for struct connection-oriented data in the connectdata
-   struct */
-struct smtp_conn {
-  struct pingpong pp;
-  char *domain;    /* what to send in the EHLO */
-  size_t eob;         /* number of bytes of the EOB (End Of Body) that has been
-                         received thus far */
-  smtpstate state; /* always use smtp.c:state() to change state! */
-  struct curl_slist *rcpt;
-};
-
-extern const struct Curl_handler Curl_handler_smtp;
-extern const struct Curl_handler Curl_handler_smtps;
-
-/* this is the 5-bytes End-Of-Body marker for SMTP */
-#define SMTP_EOB "\x0d\x0a\x2e\x0d\x0a"
-#define SMTP_EOB_LEN 5
-
-/* if found in data, replace it with this string instead */
-#define SMTP_EOB_REPL "\x0d\x0a\x2e\x2e"
-#define SMTP_EOB_REPL_LEN 4
-
-CURLcode Curl_smtp_escape_eob(struct connectdata *conn, ssize_t nread);
-
-#endif /* __SMTP_H */
diff --git a/src/other/curl/lib/sockaddr.h b/src/other/curl/lib/sockaddr.h
deleted file mode 100644
index c69411b..0000000
--- a/src/other/curl/lib/sockaddr.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#ifndef __SOCKADDR_H
-#define __SOCKADDR_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef HAVE_STRUCT_SOCKADDR_STORAGE
-struct Curl_sockaddr_storage {
-  struct sockaddr_storage buffer;
-};
-#else
-struct Curl_sockaddr_storage {
-  char buffer[256];   /* this should be big enough to fit a lot */
-};
-#endif
-
-#endif /* __SOCKADDR_H */
diff --git a/src/other/curl/lib/socks.c b/src/other/curl/lib/socks.c
deleted file mode 100644
index eb79567..0000000
--- a/src/other/curl/lib/socks.c
+++ /dev/null
@@ -1,726 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#if !defined(CURL_DISABLE_PROXY) || defined(USE_WINDOWS_SSPI)
-#include <string.h>
-
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "strequal.h"
-#include "select.h"
-#include "connect.h"
-#include "timeval.h"
-#include "socks.h"
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/*
- * Helper read-from-socket functions. Does the same as Curl_read() but it
- * blocks until all bytes amount of buffersize will be read. No more, no less.
- *
- * This is STUPID BLOCKING behaviour which we frown upon, but right now this
- * is what we have...
- */
-int Curl_blockread_all(struct connectdata *conn, /* connection data */
-                       curl_socket_t sockfd,     /* read from this socket */
-                       char *buf,                /* store read data here */
-                       ssize_t buffersize,       /* max amount to read */
-                       ssize_t *n,               /* amount bytes read */
-                       long conn_timeout)        /* timeout for data wait
-                                                    relative to
-                                                    conn->created */
-{
-  ssize_t nread;
-  ssize_t allread = 0;
-  int result;
-  struct timeval tvnow;
-  long conntime;
-  *n = 0;
-  for(;;) {
-    tvnow = Curl_tvnow();
-    /* calculating how long connection is establishing */
-    conntime = Curl_tvdiff(tvnow, conn->created);
-    if(conntime > conn_timeout) {
-      /* we already got the timeout */
-      result = ~CURLE_OK;
-      break;
-    }
-    if(Curl_socket_ready(sockfd, CURL_SOCKET_BAD,
-                   (int)(conn_timeout - conntime)) <= 0) {
-      result = ~CURLE_OK;
-      break;
-    }
-    result = Curl_read_plain(sockfd, buf, buffersize, &nread);
-    if(result)
-      break;
-
-    if(buffersize == nread) {
-      allread += nread;
-      *n = allread;
-      result = CURLE_OK;
-      break;
-    }
-    if(!nread) {
-      result = ~CURLE_OK;
-      break;
-    }
-
-    buffersize -= nread;
-    buf += nread;
-    allread += nread;
-  }
-  return result;
-}
-
-/*
-* This function logs in to a SOCKS4 proxy and sends the specifics to the final
-* destination server.
-*
-* Reference :
-*   http://socks.permeo.com/protocol/socks4.protocol
-*
-* Note :
-*   Set protocol4a=true for  "SOCKS 4A (Simple Extension to SOCKS 4 Protocol)"
-*   Nonsupport "Identification Protocol (RFC1413)"
-*/
-CURLcode Curl_SOCKS4(const char *proxy_name,
-                     const char *hostname,
-                     int remote_port,
-                     int sockindex,
-                     struct connectdata *conn,
-                     bool protocol4a)
-{
-#define SOCKS4REQLEN 262
-  unsigned char socksreq[SOCKS4REQLEN]; /* room for SOCKS4 request incl. user
-                                           id */
-  int result;
-  CURLcode code;
-  curl_socket_t sock = conn->sock[sockindex];
-  long timeout;
-  struct SessionHandle *data = conn->data;
-
-  /* get timeout */
-  timeout = Curl_timeleft(conn, NULL, TRUE);
-
-  if(timeout < 0) {
-    /* time-out, bail out, go home */
-    failf(data, "Connection time-out");
-    return CURLE_OPERATION_TIMEDOUT;
-  }
-
-  curlx_nonblock(sock, FALSE);
-
-  /*
-   * Compose socks4 request
-   *
-   * Request format
-   *
-   *     +----+----+----+----+----+----+----+----+----+----+....+----+
-   *     | VN | CD | DSTPORT |      DSTIP        | USERID       |NULL|
-   *     +----+----+----+----+----+----+----+----+----+----+....+----+
-   * # of bytes:  1    1      2              4           variable       1
-   */
-
-  socksreq[0] = 4; /* version (SOCKS4) */
-  socksreq[1] = 1; /* connect */
-  *((unsigned short*)&socksreq[2]) = htons((unsigned short)remote_port);
-
-  /* DNS resolve only for SOCKS4, not SOCKS4a */
-  if (!protocol4a) {
-    struct Curl_dns_entry *dns;
-    Curl_addrinfo *hp=NULL;
-    int rc;
-
-    rc = Curl_resolv(conn, hostname, remote_port, &dns);
-
-    if(rc == CURLRESOLV_ERROR)
-      return CURLE_COULDNT_RESOLVE_PROXY;
-
-    if(rc == CURLRESOLV_PENDING)
-      /* this requires that we're in "wait for resolve" state */
-      rc = Curl_wait_for_resolv(conn, &dns);
-
-    /*
-     * We cannot use 'hostent' as a struct that Curl_resolv() returns.  It
-     * returns a Curl_addrinfo pointer that may not always look the same.
-     */
-    if(dns)
-      hp=dns->addr;
-    if(hp) {
-      char buf[64];
-      unsigned short ip[4];
-      Curl_printable_address(hp, buf, sizeof(buf));
-
-      if(4 == sscanf( buf, "%hu.%hu.%hu.%hu",
-                      &ip[0], &ip[1], &ip[2], &ip[3])) {
-        /* Set DSTIP */
-        socksreq[4] = (unsigned char)ip[0];
-        socksreq[5] = (unsigned char)ip[1];
-        socksreq[6] = (unsigned char)ip[2];
-        socksreq[7] = (unsigned char)ip[3];
-      }
-      else
-        hp = NULL; /* fail! */
-
-      Curl_resolv_unlock(data, dns); /* not used anymore from now on */
-
-    }
-    if(!hp) {
-      failf(data, "Failed to resolve \"%s\" for SOCKS4 connect.",
-            hostname);
-      return CURLE_COULDNT_RESOLVE_HOST;
-    }
-  }
-
-  /*
-   * This is currently not supporting "Identification Protocol (RFC1413)".
-   */
-  socksreq[8] = 0; /* ensure empty userid is NUL-terminated */
-  if(proxy_name)
-    strlcat((char*)socksreq + 8, proxy_name, sizeof(socksreq) - 8);
-
-  /*
-   * Make connection
-   */
-  {
-    ssize_t actualread;
-    ssize_t written;
-    ssize_t hostnamelen = 0;
-    int packetsize = 9 +
-      (int)strlen((char*)socksreq + 8); /* size including NUL */
-
-    /* If SOCKS4a, set special invalid IP address 0.0.0.x */
-    if (protocol4a) {
-      socksreq[4] = 0;
-      socksreq[5] = 0;
-      socksreq[6] = 0;
-      socksreq[7] = 1;
-      /* If still enough room in buffer, also append hostname */
-      hostnamelen = (ssize_t)strlen(hostname) + 1; /* length including NUL */
-      if (packetsize + hostnamelen <= SOCKS4REQLEN)
-        strcpy((char*)socksreq + packetsize, hostname);
-      else
-        hostnamelen = 0; /* Flag: hostname did not fit in buffer */
-    }
-
-    /* Send request */
-    code = Curl_write_plain(conn, sock, (char *)socksreq,
-                            packetsize + hostnamelen,
-                            &written);
-    if((code != CURLE_OK) || (written != packetsize + hostnamelen)) {
-      failf(data, "Failed to send SOCKS4 connect request.");
-      return CURLE_COULDNT_CONNECT;
-    }
-    if (protocol4a && hostnamelen == 0) {
-      /* SOCKS4a with very long hostname - send that name separately */
-      hostnamelen = (ssize_t)strlen(hostname) + 1;
-      code = Curl_write_plain(conn, sock, (char *)hostname, hostnamelen,
-                              &written);
-      if((code != CURLE_OK) || (written != hostnamelen)) {
-        failf(data, "Failed to send SOCKS4 connect request.");
-        return CURLE_COULDNT_CONNECT;
-      }
-    }
-
-    packetsize = 8; /* receive data size */
-
-    /* Receive response */
-    result = Curl_blockread_all(conn, sock, (char *)socksreq, packetsize,
-                           &actualread, timeout);
-    if((result != CURLE_OK) || (actualread != packetsize)) {
-      failf(data, "Failed to receive SOCKS4 connect request ack.");
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    /*
-     * Response format
-     *
-     *     +----+----+----+----+----+----+----+----+
-     *     | VN | CD | DSTPORT |      DSTIP        |
-     *     +----+----+----+----+----+----+----+----+
-     * # of bytes:  1    1      2              4
-     *
-     * VN is the version of the reply code and should be 0. CD is the result
-     * code with one of the following values:
-     *
-     * 90: request granted
-     * 91: request rejected or failed
-     * 92: request rejected because SOCKS server cannot connect to
-     *     identd on the client
-     * 93: request rejected because the client program and identd
-     *     report different user-ids
-     */
-
-    /* wrong version ? */
-    if(socksreq[0] != 0) {
-      failf(data,
-            "SOCKS4 reply has wrong version, version should be 4.");
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    /* Result */
-    switch(socksreq[1])
-    {
-    case 90:
-      if (protocol4a)
-        infof(data, "SOCKS4a request granted.\n");
-      else
-        infof(data, "SOCKS4 request granted.\n");
-      break;
-    case 91:
-      failf(data,
-            "Can't complete SOCKS4 connection to %d.%d.%d.%d:%d. (%d)"
-            ", request rejected or failed.",
-            (unsigned char)socksreq[4], (unsigned char)socksreq[5],
-            (unsigned char)socksreq[6], (unsigned char)socksreq[7],
-            (unsigned int)ntohs(*(unsigned short*)(&socksreq[8])),
-            socksreq[1]);
-      return CURLE_COULDNT_CONNECT;
-    case 92:
-      failf(data,
-            "Can't complete SOCKS4 connection to %d.%d.%d.%d:%d. (%d)"
-            ", request rejected because SOCKS server cannot connect to "
-            "identd on the client.",
-            (unsigned char)socksreq[4], (unsigned char)socksreq[5],
-            (unsigned char)socksreq[6], (unsigned char)socksreq[7],
-            (unsigned int)ntohs(*(unsigned short*)(&socksreq[8])),
-            socksreq[1]);
-      return CURLE_COULDNT_CONNECT;
-    case 93:
-      failf(data,
-            "Can't complete SOCKS4 connection to %d.%d.%d.%d:%d. (%d)"
-            ", request rejected because the client program and identd "
-            "report different user-ids.",
-            (unsigned char)socksreq[4], (unsigned char)socksreq[5],
-            (unsigned char)socksreq[6], (unsigned char)socksreq[7],
-            (unsigned int)ntohs(*(unsigned short*)(&socksreq[8])),
-            socksreq[1]);
-      return CURLE_COULDNT_CONNECT;
-    default:
-      failf(data,
-            "Can't complete SOCKS4 connection to %d.%d.%d.%d:%d. (%d)"
-            ", Unknown.",
-            (unsigned char)socksreq[4], (unsigned char)socksreq[5],
-            (unsigned char)socksreq[6], (unsigned char)socksreq[7],
-            (unsigned int)ntohs(*(unsigned short*)(&socksreq[8])),
-            socksreq[1]);
-      return CURLE_COULDNT_CONNECT;
-    }
-  }
-
-  curlx_nonblock(sock, TRUE);
-
-  return CURLE_OK; /* Proxy was successful! */
-}
-
-/*
- * This function logs in to a SOCKS5 proxy and sends the specifics to the final
- * destination server.
- */
-CURLcode Curl_SOCKS5(const char *proxy_name,
-                     const char *proxy_password,
-                     const char *hostname,
-                     int remote_port,
-                     int sockindex,
-                     struct connectdata *conn)
-{
-  /*
-    According to the RFC1928, section "6.  Replies". This is what a SOCK5
-    replies:
-
-        +----+-----+-------+------+----------+----------+
-        |VER | REP |  RSV  | ATYP | BND.ADDR | BND.PORT |
-        +----+-----+-------+------+----------+----------+
-        | 1  |  1  | X'00' |  1   | Variable |    2     |
-        +----+-----+-------+------+----------+----------+
-
-    Where:
-
-    o  VER    protocol version: X'05'
-    o  REP    Reply field:
-    o  X'00' succeeded
-  */
-
-  unsigned char socksreq[600]; /* room for large user/pw (255 max each) */
-  ssize_t actualread;
-  ssize_t written;
-  int result;
-  CURLcode code;
-  curl_socket_t sock = conn->sock[sockindex];
-  struct SessionHandle *data = conn->data;
-  long timeout;
-  bool socks5_resolve_local = (bool)(data->set.proxytype == CURLPROXY_SOCKS5);
-  const size_t hostname_len = strlen(hostname);
-  ssize_t packetsize = 0;
-
-  /* RFC1928 chapter 5 specifies max 255 chars for domain name in packet */
-  if(!socks5_resolve_local && hostname_len > 255)
-  {
-    infof(conn->data,"SOCKS5: server resolving disabled for hostnames of "
-          "length > 255 [actual len=%zu]\n", hostname_len);
-    socks5_resolve_local = TRUE;
-  }
-
-  /* get timeout */
-  timeout = Curl_timeleft(conn, NULL, TRUE);
-
-  if(timeout < 0) {
-    /* time-out, bail out, go home */
-    failf(data, "Connection time-out");
-    return CURLE_OPERATION_TIMEDOUT;
-  }
-
-  curlx_nonblock(sock, TRUE);
-
-  /* wait until socket gets connected */
-  result = Curl_socket_ready(CURL_SOCKET_BAD, sock, (int)timeout);
-
-  if(-1 == result) {
-    failf(conn->data, "SOCKS5: no connection here");
-    return CURLE_COULDNT_CONNECT;
-  }
-  else if(0 == result) {
-    failf(conn->data, "SOCKS5: connection timeout");
-    return CURLE_OPERATION_TIMEDOUT;
-  }
-
-  if(result & CURL_CSELECT_ERR) {
-    failf(conn->data, "SOCKS5: error occured during connection");
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  socksreq[0] = 5; /* version */
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-  socksreq[1] = (char)(proxy_name ? 3 : 2); /* number of methods (below) */
-  socksreq[2] = 0; /* no authentication */
-  socksreq[3] = 1; /* gssapi */
-  socksreq[4] = 2; /* username/password */
-#else
-  socksreq[1] = (char)(proxy_name ? 2 : 1); /* number of methods (below) */
-  socksreq[2] = 0; /* no authentication */
-  socksreq[3] = 2; /* username/password */
-#endif
-
-  curlx_nonblock(sock, FALSE);
-
-  code = Curl_write_plain(conn, sock, (char *)socksreq, (2 + (int)socksreq[1]),
-                          &written);
-  if((code != CURLE_OK) || (written != (2 + (int)socksreq[1]))) {
-    failf(data, "Unable to send initial SOCKS5 request.");
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  curlx_nonblock(sock, TRUE);
-
-  result = Curl_socket_ready(sock, CURL_SOCKET_BAD, (int)timeout);
-
-  if(-1 == result) {
-    failf(conn->data, "SOCKS5 nothing to read");
-    return CURLE_COULDNT_CONNECT;
-  }
-  else if(0 == result) {
-    failf(conn->data, "SOCKS5 read timeout");
-    return CURLE_OPERATION_TIMEDOUT;
-  }
-
-  if(result & CURL_CSELECT_ERR) {
-    failf(conn->data, "SOCKS5 read error occured");
-    return CURLE_RECV_ERROR;
-  }
-
-  curlx_nonblock(sock, FALSE);
-
-  result=Curl_blockread_all(conn, sock, (char *)socksreq, 2, &actualread,
-                            timeout);
-  if((result != CURLE_OK) || (actualread != 2)) {
-    failf(data, "Unable to receive initial SOCKS5 response.");
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  if(socksreq[0] != 5) {
-    failf(data, "Received invalid version in initial SOCKS5 response.");
-    return CURLE_COULDNT_CONNECT;
-  }
-  if(socksreq[1] == 0) {
-    /* Nothing to do, no authentication needed */
-    ;
-  }
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-  else if(socksreq[1] == 1) {
-    code = Curl_SOCKS5_gssapi_negotiate(sockindex, conn);
-    if(code != CURLE_OK) {
-      failf(data, "Unable to negotiate SOCKS5 gssapi context.");
-      return CURLE_COULDNT_CONNECT;
-    }
-  }
-#endif
-  else if(socksreq[1] == 2) {
-    /* Needs user name and password */
-    size_t userlen, pwlen;
-    int len;
-    if(proxy_name && proxy_password) {
-      userlen = strlen(proxy_name);
-      pwlen = strlen(proxy_password);
-    }
-    else {
-      userlen = 0;
-      pwlen = 0;
-    }
-
-    /*   username/password request looks like
-     * +----+------+----------+------+----------+
-     * |VER | ULEN |  UNAME   | PLEN |  PASSWD  |
-     * +----+------+----------+------+----------+
-     * | 1  |  1   | 1 to 255 |  1   | 1 to 255 |
-     * +----+------+----------+------+----------+
-     */
-    len = 0;
-    socksreq[len++] = 1;    /* username/pw subnegotiation version */
-    socksreq[len++] = (char) userlen;
-    memcpy(socksreq + len, proxy_name, userlen);
-    len += (int)userlen;
-    socksreq[len++] = (char) pwlen;
-    memcpy(socksreq + len, proxy_password, pwlen);
-    len += (int)pwlen;
-
-    code = Curl_write_plain(conn, sock, (char *)socksreq, len, &written);
-    if((code != CURLE_OK) || (len != written)) {
-      failf(data, "Failed to send SOCKS5 sub-negotiation request.");
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    result=Curl_blockread_all(conn, sock, (char *)socksreq, 2, &actualread,
-                         timeout);
-    if((result != CURLE_OK) || (actualread != 2)) {
-      failf(data, "Unable to receive SOCKS5 sub-negotiation response.");
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    /* ignore the first (VER) byte */
-    if(socksreq[1] != 0) { /* status */
-      failf(data, "User was rejected by the SOCKS5 server (%d %d).",
-            socksreq[0], socksreq[1]);
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    /* Everything is good so far, user was authenticated! */
-  }
-  else {
-    /* error */
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-    if(socksreq[1] == 255) {
-#else
-    if(socksreq[1] == 1) {
-      failf(data,
-            "SOCKS5 GSSAPI per-message authentication is not supported.");
-      return CURLE_COULDNT_CONNECT;
-    }
-    else if(socksreq[1] == 255) {
-#endif
-      if(!proxy_name || !*proxy_name) {
-        failf(data,
-              "No authentication method was acceptable. (It is quite likely"
-              " that the SOCKS5 server wanted a username/password, since none"
-              " was supplied to the server on this connection.)");
-      }
-      else {
-        failf(data, "No authentication method was acceptable.");
-      }
-      return CURLE_COULDNT_CONNECT;
-    }
-    else {
-      failf(data,
-            "Undocumented SOCKS5 mode attempted to be used by server.");
-      return CURLE_COULDNT_CONNECT;
-    }
-  }
-
-  /* Authentication is complete, now specify destination to the proxy */
-  socksreq[0] = 5; /* version (SOCKS5) */
-  socksreq[1] = 1; /* connect */
-  socksreq[2] = 0; /* must be zero */
-
-  if(!socks5_resolve_local) {
-    packetsize = (ssize_t)(5 + hostname_len + 2);
-
-    socksreq[3] = 3; /* ATYP: domain name = 3 */
-    socksreq[4] = (char) hostname_len; /* address length */
-    memcpy(&socksreq[5], hostname, hostname_len); /* address bytes w/o NULL */
-
-    *((unsigned short*)&socksreq[hostname_len+5]) =
-      htons((unsigned short)remote_port);
-  }
-  else {
-    struct Curl_dns_entry *dns;
-    Curl_addrinfo *hp=NULL;
-    int rc = Curl_resolv(conn, hostname, remote_port, &dns);
-
-    packetsize = 10;
-
-    socksreq[3] = 1; /* IPv4 = 1 */
-
-    if(rc == CURLRESOLV_ERROR)
-      return CURLE_COULDNT_RESOLVE_HOST;
-
-    if(rc == CURLRESOLV_PENDING)
-      /* this requires that we're in "wait for resolve" state */
-      rc = Curl_wait_for_resolv(conn, &dns);
-
-    /*
-     * We cannot use 'hostent' as a struct that Curl_resolv() returns.  It
-     * returns a Curl_addrinfo pointer that may not always look the same.
-     */
-    if(dns)
-      hp=dns->addr;
-    if(hp) {
-      char buf[64];
-      unsigned short ip[4];
-      Curl_printable_address(hp, buf, sizeof(buf));
-
-      if(4 == sscanf( buf, "%hu.%hu.%hu.%hu",
-                      &ip[0], &ip[1], &ip[2], &ip[3])) {
-        socksreq[4] = (unsigned char)ip[0];
-        socksreq[5] = (unsigned char)ip[1];
-        socksreq[6] = (unsigned char)ip[2];
-        socksreq[7] = (unsigned char)ip[3];
-      }
-      else
-        hp = NULL; /* fail! */
-
-      Curl_resolv_unlock(data, dns); /* not used anymore from now on */
-    }
-    if(!hp) {
-      failf(data, "Failed to resolve \"%s\" for SOCKS5 connect.",
-            hostname);
-      return CURLE_COULDNT_RESOLVE_HOST;
-    }
-
-    *((unsigned short*)&socksreq[8]) = htons((unsigned short)remote_port);
-  }
-
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-  if(conn->socks5_gssapi_enctype) {
-    failf(data, "SOCKS5 gssapi protection not yet implemented.");
-  } else
-#endif
-  code = Curl_write_plain(conn, sock, (char *)socksreq, packetsize, &written);
-  if((code != CURLE_OK) || (written != packetsize)) {
-    failf(data, "Failed to send SOCKS5 connect request.");
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  packetsize = 10; /* minimum packet size is 10 */
-
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-  if(conn->socks5_gssapi_enctype) {
-    failf(data, "SOCKS5 gssapi protection not yet implemented.");
-  } else
-#endif
-    result = Curl_blockread_all(conn, sock, (char *)socksreq, packetsize,
-                           &actualread, timeout);
-  if((result != CURLE_OK) || (actualread != packetsize)) {
-    failf(data, "Failed to receive SOCKS5 connect request ack.");
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  if(socksreq[0] != 5) { /* version */
-    failf(data,
-          "SOCKS5 reply has wrong version, version should be 5.");
-    return CURLE_COULDNT_CONNECT;
-  }
-  if(socksreq[1] != 0) { /* Anything besides 0 is an error */
-      failf(data,
-            "Can't complete SOCKS5 connection to %d.%d.%d.%d:%d. (%d)",
-            (unsigned char)socksreq[4], (unsigned char)socksreq[5],
-            (unsigned char)socksreq[6], (unsigned char)socksreq[7],
-            (unsigned int)ntohs(*(unsigned short*)(&socksreq[8])),
-            socksreq[1]);
-      return CURLE_COULDNT_CONNECT;
-  }
-
-  /* Fix: in general, returned BND.ADDR is variable length parameter by RFC
-     1928, so the reply packet should be read until the end to avoid errors at
-     subsequent protocol level.
-
-    +----+-----+-------+------+----------+----------+
-    |VER | REP |  RSV  | ATYP | BND.ADDR | BND.PORT |
-    +----+-----+-------+------+----------+----------+
-    | 1  |  1  | X'00' |  1   | Variable |    2     |
-    +----+-----+-------+------+----------+----------+
-
-     ATYP:
-     o  IP v4 address: X'01', BND.ADDR = 4 byte
-     o  domain name:  X'03', BND.ADDR = [ 1 byte length, string ]
-     o  IP v6 address: X'04', BND.ADDR = 16 byte
-     */
-
-  /* Calculate real packet size */
-  if(socksreq[3] == 3) {
-    /* domain name */
-    int addrlen = (int) socksreq[4];
-    packetsize = 5 + addrlen + 2;
-  }
-  else if(socksreq[3] == 4) {
-    /* IPv6 */
-    packetsize = 4 + 16 + 2;
-  }
-
-  /* At this point we already read first 10 bytes */
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-  if(!conn->socks5_gssapi_enctype) {
-    /* decrypt_gssapi_blockread already read the whole packet */
-#endif
-    if(packetsize > 10) {
-      packetsize -= 10;
-      result = Curl_blockread_all(conn, sock, (char *)&socksreq[10],
-                                  packetsize, &actualread, timeout);
-      if((result != CURLE_OK) || (actualread != packetsize)) {
-        failf(data, "Failed to receive SOCKS5 connect request ack.");
-        return CURLE_COULDNT_CONNECT;
-      }
-    }
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-  }
-#endif
-
-  curlx_nonblock(sock, TRUE);
-  return CURLE_OK; /* Proxy was successful! */
-}
-
-#endif /* CURL_DISABLE_PROXY */
-
diff --git a/src/other/curl/lib/socks.h b/src/other/curl/lib/socks.h
deleted file mode 100644
index 2bea66b..0000000
--- a/src/other/curl/lib/socks.h
+++ /dev/null
@@ -1,69 +0,0 @@
-#ifndef __SOCKS_H
-#define __SOCKS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * Helper read-from-socket functions. Does the same as Curl_read() but it
- * blocks until all bytes amount of buffersize will be read. No more, no less.
- *
- * This is STUPID BLOCKING behaviour which we frown upon, but right now this
- * is what we have...
- */
-int Curl_blockread_all(struct connectdata *conn,
-                       curl_socket_t sockfd,
-                       char *buf,
-                       ssize_t buffersize,
-                       ssize_t *n,
-                       long conn_timeout);
-
-/*
- * This function logs in to a SOCKS4(a) proxy and sends the specifics to the
- * final destination server.
- */
-CURLcode Curl_SOCKS4(const char *proxy_name,
-                     const char *hostname,
-                     int remote_port,
-                     int sockindex,
-                     struct connectdata *conn,
-                     bool protocol4a);
-
-/*
- * This function logs in to a SOCKS5 proxy and sends the specifics to the
- * final destination server.
- */
-CURLcode Curl_SOCKS5(const char *proxy_name,
-                     const char *proxy_password,
-                     const char *hostname,
-                     int remote_port,
-                     int sockindex,
-                     struct connectdata *conn);
-
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-/*
- * This function handles the sockss5 gssapie negotiation and initialisation
- */
-CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
-                                      struct connectdata *conn);
-#endif
-
-#endif  /* __SOCKS_H */
diff --git a/src/other/curl/lib/socks_gssapi.c b/src/other/curl/lib/socks_gssapi.c
deleted file mode 100644
index 1ff6f60..0000000
--- a/src/other/curl/lib/socks_gssapi.c
+++ /dev/null
@@ -1,548 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2009, Markus Moeller, <markus_moeller at compuserve.com>
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_PROXY
-
-#ifdef HAVE_GSSAPI
-#ifdef HAVE_OLD_GSSMIT
-#define GSS_C_NT_HOSTBASED_SERVICE gss_nt_service_name
-#endif
-#ifndef gss_nt_service_name
-#define gss_nt_service_name GSS_C_NT_HOSTBASED_SERVICE
-#endif
-#include <string.h>
-
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "connect.h"
-#include "timeval.h"
-#include "socks.h"
-
-static gss_ctx_id_t     gss_context = GSS_C_NO_CONTEXT;
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/*
- * Helper gssapi error functions.
- */
-static int check_gss_err(struct SessionHandle *data,
-                         OM_uint32 major_status,
-                         OM_uint32 minor_status,
-                         const char* function)
-{
-  if(GSS_ERROR(major_status)) {
-    OM_uint32 maj_stat,min_stat;
-    OM_uint32 msg_ctx = 0;
-    gss_buffer_desc status_string;
-    char buf[1024];
-    size_t len;
-
-    len = 0;
-    msg_ctx = 0;
-    while(!msg_ctx) {
-      /* convert major status code (GSS-API error) to text */
-      maj_stat = gss_display_status(&min_stat, major_status,
-                                    GSS_C_GSS_CODE,
-                                    GSS_C_NULL_OID,
-                                    &msg_ctx, &status_string);
-      if(maj_stat == GSS_S_COMPLETE) {
-        if(sizeof(buf) > len + status_string.length + 1) {
-          strcpy(buf+len, (char*) status_string.value);
-          len += status_string.length;
-        }
-        gss_release_buffer(&min_stat, &status_string);
-        break;
-      }
-      gss_release_buffer(&min_stat, &status_string);
-    }
-    if(sizeof(buf) > len + 3) {
-      strcpy(buf+len, ".\n");
-      len += 2;
-    }
-    msg_ctx = 0;
-    while(!msg_ctx) {
-      /* convert minor status code (underlying routine error) to text */
-      maj_stat = gss_display_status(&min_stat, minor_status,
-                                    GSS_C_MECH_CODE,
-                                    GSS_C_NULL_OID,
-                                    &msg_ctx, &status_string);
-      if(maj_stat == GSS_S_COMPLETE) {
-        if(sizeof(buf) > len + status_string.length) {
-          strcpy(buf+len, (char*) status_string.value);
-          len += status_string.length;
-        }
-        gss_release_buffer(&min_stat, &status_string);
-        break;
-      }
-      gss_release_buffer(&min_stat, &status_string);
-    }
-    failf(data, "GSSAPI error: %s failed:\n%s\n", function, buf);
-    return(1);
-  }
-
-  return(0);
-}
-
-CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
-                                      struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  curl_socket_t sock = conn->sock[sockindex];
-  CURLcode code;
-  ssize_t actualread;
-  ssize_t written;
-  int result;
-  long timeout;
-  OM_uint32 gss_major_status, gss_minor_status, gss_status;
-  OM_uint32 gss_ret_flags;
-  int gss_conf_state, gss_enc;
-  gss_buffer_desc  service = GSS_C_EMPTY_BUFFER;
-  gss_buffer_desc  gss_send_token = GSS_C_EMPTY_BUFFER;
-  gss_buffer_desc  gss_recv_token = GSS_C_EMPTY_BUFFER;
-  gss_buffer_desc  gss_w_token = GSS_C_EMPTY_BUFFER;
-  gss_buffer_desc* gss_token = GSS_C_NO_BUFFER;
-  gss_name_t       server = GSS_C_NO_NAME;
-  gss_name_t       gss_client_name = GSS_C_NO_NAME;
-  u_short          us_length;
-  char             *user=NULL;
-  unsigned char socksreq[4]; /* room for gssapi exchange header only */
-  char *serviceptr = data->set.str[STRING_SOCKS5_GSSAPI_SERVICE];
-
-  /* get timeout */
-  timeout = Curl_timeleft(conn, NULL, TRUE);
-
-  /*   GSSAPI request looks like
-   * +----+------+-----+----------------+
-   * |VER | MTYP | LEN |     TOKEN      |
-   * +----+------+----------------------+
-   * | 1  |  1   |  2  | up to 2^16 - 1 |
-   * +----+------+-----+----------------+
-   */
-
-  /* prepare service name */
-  if (strchr(serviceptr,'/')) {
-    service.value = malloc(strlen(serviceptr));
-    if(!service.value)
-      return CURLE_OUT_OF_MEMORY;
-    service.length = strlen(serviceptr);
-    memcpy(service.value, serviceptr, service.length);
-
-    gss_major_status = gss_import_name(&gss_minor_status, &service,
-                                       (gss_OID) GSS_C_NULL_OID, &server);
-  }
-  else {
-    service.value = malloc(strlen(serviceptr) +strlen(conn->proxy.name)+2);
-    if(!service.value)
-      return CURLE_OUT_OF_MEMORY;
-    service.length = strlen(serviceptr) +strlen(conn->proxy.name)+1;
-    snprintf(service.value, service.length+1, "%s@%s",
-             serviceptr, conn->proxy.name);
-
-    gss_major_status = gss_import_name(&gss_minor_status, &service,
-                                       gss_nt_service_name, &server);
-  }
-
-  gss_release_buffer(&gss_status, &service); /* clear allocated memory */
-
-  if(check_gss_err(data,gss_major_status,
-                   gss_minor_status,"gss_import_name()")) {
-    failf(data, "Failed to create service name.");
-    gss_release_name(&gss_status, &server);
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  /* As long as we need to keep sending some context info, and there's no  */
-  /* errors, keep sending it...                                            */
-  for(;;) {
-    gss_major_status = gss_init_sec_context(&gss_minor_status,
-                                            GSS_C_NO_CREDENTIAL,
-                                            &gss_context, server,
-                                            GSS_C_NULL_OID,
-                                            GSS_C_MUTUAL_FLAG |
-                                            GSS_C_REPLAY_FLAG,
-                                            0,
-                                            NULL,
-                                            gss_token,
-                                            NULL,
-                                            &gss_send_token,
-                                            &gss_ret_flags,
-                                            NULL);
-
-    if(gss_token != GSS_C_NO_BUFFER)
-      gss_release_buffer(&gss_status, &gss_recv_token);
-    if(check_gss_err(data,gss_major_status,
-                     gss_minor_status,"gss_init_sec_context")) {
-      gss_release_name(&gss_status, &server);
-      gss_release_buffer(&gss_status, &gss_recv_token);
-      gss_release_buffer(&gss_status, &gss_send_token);
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      failf(data, "Failed to initial GSSAPI token.");
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    if(gss_send_token.length != 0) {
-      socksreq[0] = 1;    /* gssapi subnegotiation version */
-      socksreq[1] = 1;    /* authentication message type */
-      us_length = htons((short)gss_send_token.length);
-      memcpy(socksreq+2,&us_length,sizeof(short));
-
-      code = Curl_write_plain(conn, sock, (char *)socksreq, 4, &written);
-      if((code != CURLE_OK) || (4 != written)) {
-        failf(data, "Failed to send GSSAPI authentication request.");
-        gss_release_name(&gss_status, &server);
-        gss_release_buffer(&gss_status, &gss_recv_token);
-        gss_release_buffer(&gss_status, &gss_send_token);
-        gss_delete_sec_context(&gss_status, &gss_context, NULL);
-        return CURLE_COULDNT_CONNECT;
-      }
-
-      code = Curl_write_plain(conn, sock, (char *)gss_send_token.value,
-                              gss_send_token.length, &written);
-
-      if((code != CURLE_OK) || ((ssize_t)gss_send_token.length != written)) {
-        failf(data, "Failed to send GSSAPI authentication token.");
-        gss_release_name(&gss_status, &server);
-        gss_release_buffer(&gss_status, &gss_recv_token);
-        gss_release_buffer(&gss_status, &gss_send_token);
-        gss_delete_sec_context(&gss_status, &gss_context, NULL);
-        return CURLE_COULDNT_CONNECT;
-      }
-
-    }
-
-    gss_release_buffer(&gss_status, &gss_send_token);
-    gss_release_buffer(&gss_status, &gss_recv_token);
-    if(gss_major_status != GSS_S_CONTINUE_NEEDED) break;
-
-    /* analyse response */
-
-    /*   GSSAPI response looks like
-     * +----+------+-----+----------------+
-     * |VER | MTYP | LEN |     TOKEN      |
-     * +----+------+----------------------+
-     * | 1  |  1   |  2  | up to 2^16 - 1 |
-     * +----+------+-----+----------------+
-     */
-
-    result=Curl_blockread_all(conn, sock, (char *)socksreq, 4,
-                              &actualread, timeout);
-    if(result != CURLE_OK || actualread != 4) {
-      failf(data, "Failed to receive GSSAPI authentication response.");
-      gss_release_name(&gss_status, &server);
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    /* ignore the first (VER) byte */
-    if(socksreq[1] == 255) { /* status / message type */
-      failf(data, "User was rejected by the SOCKS5 server (%d %d).",
-            socksreq[0], socksreq[1]);
-      gss_release_name(&gss_status, &server);
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    if(socksreq[1] != 1) { /* status / messgae type */
-      failf(data, "Invalid GSSAPI authentication response type (%d %d).",
-            socksreq[0], socksreq[1]);
-      gss_release_name(&gss_status, &server);
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    memcpy(&us_length, socksreq+2, sizeof(short));
-    us_length = ntohs(us_length);
-
-    gss_recv_token.length=us_length;
-    gss_recv_token.value=malloc(us_length);
-    if(!gss_recv_token.value) {
-      failf(data,
-            "Could not allocate memory for GSSAPI authentication "
-            "response token.");
-      gss_release_name(&gss_status, &server);
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      return CURLE_OUT_OF_MEMORY;
-    }
-
-    result=Curl_blockread_all(conn, sock, (char *)gss_recv_token.value,
-                              gss_recv_token.length,
-                              &actualread, timeout);
-
-    if(result != CURLE_OK || actualread != us_length) {
-      failf(data, "Failed to receive GSSAPI authentication token.");
-      gss_release_name(&gss_status, &server);
-      gss_release_buffer(&gss_status, &gss_recv_token);
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    gss_token = &gss_recv_token;
-  }
-
-  gss_release_name(&gss_status, &server);
-
-  /* Everything is good so far, user was authenticated! */
-  gss_major_status = gss_inquire_context (&gss_minor_status, gss_context,
-                                          &gss_client_name, NULL, NULL, NULL,
-                                          NULL, NULL, NULL);
-  if(check_gss_err(data,gss_major_status,
-                   gss_minor_status,"gss_inquire_context")) {
-    gss_delete_sec_context(&gss_status, &gss_context, NULL);
-    gss_release_name(&gss_status, &gss_client_name);
-    failf(data, "Failed to determine user name.");
-    return CURLE_COULDNT_CONNECT;
-  }
-  gss_major_status = gss_display_name(&gss_minor_status, gss_client_name,
-                                      &gss_send_token, NULL);
-  if(check_gss_err(data,gss_major_status,
-                   gss_minor_status,"gss_display_name")) {
-    gss_delete_sec_context(&gss_status, &gss_context, NULL);
-    gss_release_name(&gss_status, &gss_client_name);
-    gss_release_buffer(&gss_status, &gss_send_token);
-    failf(data, "Failed to determine user name.");
-    return CURLE_COULDNT_CONNECT;
-  }
-  user=malloc(gss_send_token.length+1);
-  if(!user) {
-    gss_delete_sec_context(&gss_status, &gss_context, NULL);
-    gss_release_name(&gss_status, &gss_client_name);
-    gss_release_buffer(&gss_status, &gss_send_token);
-    return CURLE_OUT_OF_MEMORY;
-  }
-
-  memcpy(user, gss_send_token.value, gss_send_token.length);
-  user[gss_send_token.length] = '\0';
-  gss_release_name(&gss_status, &gss_client_name);
-  gss_release_buffer(&gss_status, &gss_send_token);
-  infof(data, "SOCKS5 server authencticated user %s with gssapi.\n",user);
-  free(user);
-  user=NULL;
-
-  /* Do encryption */
-  socksreq[0] = 1;    /* gssapi subnegotiation version */
-  socksreq[1] = 2;    /* encryption message type */
-
-  gss_enc = 0; /* no data protection */
-  /* do confidentiality protection if supported */
-  if(gss_ret_flags & GSS_C_CONF_FLAG)
-    gss_enc = 2;
-  /* else do integrity protection */
-  else if(gss_ret_flags & GSS_C_INTEG_FLAG)
-    gss_enc = 1;
-
-  infof(data, "SOCKS5 server supports gssapi %s data protection.\n",
-        (gss_enc==0)?"no":((gss_enc==1)?"integrity":"confidentiality"));
-  /* force for the moment to no data protection */
-  gss_enc = 0;
-  /*
-   * Sending the encryption type in clear seems wrong. It should be
-   * protected with gss_seal()/gss_wrap(). See RFC1961 extract below
-   * The NEC reference implementations on which this is based is
-   * therefore at fault
-   *
-   *  +------+------+------+.......................+
-   *  + ver  | mtyp | len  |   token               |
-   *  +------+------+------+.......................+
-   *  + 0x01 | 0x02 | 0x02 | up to 2^16 - 1 octets |
-   *  +------+------+------+.......................+
-   *
-   *   Where:
-   *
-   *  - "ver" is the protocol version number, here 1 to represent the
-   *    first version of the SOCKS/GSS-API protocol
-   *
-   *  - "mtyp" is the message type, here 2 to represent a protection
-   *    -level negotiation message
-   *
-   *  - "len" is the length of the "token" field in octets
-   *
-   *  - "token" is the GSS-API encapsulated protection level
-   *
-   * The token is produced by encapsulating an octet containing the
-   * required protection level using gss_seal()/gss_wrap() with conf_req
-   * set to FALSE.  The token is verified using gss_unseal()/
-   * gss_unwrap().
-   *
-   */
-  if(data->set.socks5_gssapi_nec) {
-    us_length = htons((short)1);
-    memcpy(socksreq+2,&us_length,sizeof(short));
-  }
-  else {
-    gss_send_token.length = 1;
-    gss_send_token.value = malloc(1);
-    if(!gss_send_token.value) {
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      return CURLE_OUT_OF_MEMORY;
-    }
-    memcpy(gss_send_token.value, &gss_enc, 1);
-
-    gss_major_status = gss_wrap(&gss_minor_status, gss_context, 0,
-                                GSS_C_QOP_DEFAULT, &gss_send_token,
-                                &gss_conf_state, &gss_w_token);
-
-    if(check_gss_err(data,gss_major_status,gss_minor_status,"gss_wrap")) {
-      gss_release_buffer(&gss_status, &gss_send_token);
-      gss_release_buffer(&gss_status, &gss_w_token);
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      failf(data, "Failed to wrap GSSAPI encryption value into token.");
-      return CURLE_COULDNT_CONNECT;
-    }
-    gss_release_buffer(&gss_status, &gss_send_token);
-
-    us_length = htons((short)gss_w_token.length);
-    memcpy(socksreq+2,&us_length,sizeof(short));
-  }
-
-  code = Curl_write_plain(conn, sock, (char *)socksreq, 4, &written);
-  if((code != CURLE_OK) || (4 != written)) {
-    failf(data, "Failed to send GSSAPI encryption request.");
-    gss_release_buffer(&gss_status, &gss_w_token);
-    gss_delete_sec_context(&gss_status, &gss_context, NULL);
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  if(data->set.socks5_gssapi_nec) {
-    memcpy(socksreq, &gss_enc, 1);
-    code = Curl_write_plain(conn, sock, socksreq, 1, &written);
-    if((code != CURLE_OK) || ( 1 != written)) {
-      failf(data, "Failed to send GSSAPI encryption type.");
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      return CURLE_COULDNT_CONNECT;
-    }
-  } else {
-    code = Curl_write_plain(conn, sock, (char *)gss_w_token.value,
-                            gss_w_token.length, &written);
-    if((code != CURLE_OK) || ((ssize_t)gss_w_token.length != written)) {
-      failf(data, "Failed to send GSSAPI encryption type.");
-      gss_release_buffer(&gss_status, &gss_w_token);
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      return CURLE_COULDNT_CONNECT;
-    }
-    gss_release_buffer(&gss_status, &gss_w_token);
-  }
-
-  result=Curl_blockread_all(conn, sock, (char *)socksreq, 4,
-                            &actualread, timeout);
-  if(result != CURLE_OK || actualread != 4) {
-    failf(data, "Failed to receive GSSAPI encryption response.");
-    gss_delete_sec_context(&gss_status, &gss_context, NULL);
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  /* ignore the first (VER) byte */
-  if(socksreq[1] == 255) { /* status / message type */
-    failf(data, "User was rejected by the SOCKS5 server (%d %d).",
-          socksreq[0], socksreq[1]);
-    gss_delete_sec_context(&gss_status, &gss_context, NULL);
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  if(socksreq[1] != 2) { /* status / messgae type */
-    failf(data, "Invalid GSSAPI encryption response type (%d %d).",
-          socksreq[0], socksreq[1]);
-    gss_delete_sec_context(&gss_status, &gss_context, NULL);
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  memcpy(&us_length, socksreq+2, sizeof(short));
-  us_length = ntohs(us_length);
-
-  gss_recv_token.length= us_length;
-  gss_recv_token.value=malloc(gss_recv_token.length);
-  if(!gss_recv_token.value) {
-    gss_delete_sec_context(&gss_status, &gss_context, NULL);
-    return CURLE_OUT_OF_MEMORY;
-  }
-  result=Curl_blockread_all(conn, sock, (char *)gss_recv_token.value,
-                            gss_recv_token.length,
-                            &actualread, timeout);
-
-  if(result != CURLE_OK || actualread != us_length) {
-    failf(data, "Failed to receive GSSAPI encryptrion type.");
-    gss_release_buffer(&gss_status, &gss_recv_token);
-    gss_delete_sec_context(&gss_status, &gss_context, NULL);
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  if(!data->set.socks5_gssapi_nec) {
-    gss_major_status = gss_unwrap(&gss_minor_status, gss_context,
-                                  &gss_recv_token, &gss_w_token,
-                                  0, GSS_C_QOP_DEFAULT);
-
-    if(check_gss_err(data,gss_major_status,gss_minor_status,"gss_unwrap")) {
-      gss_release_buffer(&gss_status, &gss_recv_token);
-      gss_release_buffer(&gss_status, &gss_w_token);
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      failf(data, "Failed to unwrap GSSAPI encryption value into token.");
-      return CURLE_COULDNT_CONNECT;
-    }
-    gss_release_buffer(&gss_status, &gss_recv_token);
-
-    if(gss_w_token.length != 1) {
-      failf(data, "Invalid GSSAPI encryption response length (%d).",
-            gss_w_token.length);
-      gss_release_buffer(&gss_status, &gss_w_token);
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    memcpy(socksreq,gss_w_token.value,gss_w_token.length);
-    gss_release_buffer(&gss_status, &gss_w_token);
-  }
-  else {
-    if(gss_recv_token.length != 1) {
-      failf(data, "Invalid GSSAPI encryption response length (%d).",
-            gss_recv_token.length);
-      gss_release_buffer(&gss_status, &gss_recv_token);
-      gss_delete_sec_context(&gss_status, &gss_context, NULL);
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    memcpy(socksreq,gss_recv_token.value,gss_recv_token.length);
-    gss_release_buffer(&gss_status, &gss_recv_token);
-  }
-
-  infof(data, "SOCKS5 access with%s protection granted.\n",
-        (socksreq[0]==0)?"out gssapi data":
-        ((socksreq[0]==1)?" gssapi integrity":" gssapi confidentiality"));
-
-  conn->socks5_gssapi_enctype = socksreq[0];
-  if(socksreq[0] == 0)
-    gss_delete_sec_context(&gss_status, &gss_context, NULL);
-
-  return CURLE_OK;
-}
-#endif
-
-#endif /* CURL_DISABLE_PROXY */
diff --git a/src/other/curl/lib/socks_sspi.c b/src/other/curl/lib/socks_sspi.c
deleted file mode 100644
index e9fd551..0000000
--- a/src/other/curl/lib/socks_sspi.c
+++ /dev/null
@@ -1,696 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2009, Markus Moeller, <markus_moeller at compuserve.com>
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-
-#include "setup.h"
-
-#ifdef USE_WINDOWS_SSPI
-
-#include <string.h>
-
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "connect.h"
-#include "timeval.h"
-#include "socks.h"
-#include "curl_sspi.h"
-
-#define _MPRINTF_REPLACE /* use the internal *printf() functions */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/*
- * Definitions required from ntsecapi.h are directly provided below this point
- * to avoid including ntsecapi.h due to a conflict with OpenSSL's safestack.h
- */
-#define KERB_WRAP_NO_ENCRYPT 0x80000001
-
-/*
- * Helper sspi error functions.
- */
-static int check_sspi_err(struct SessionHandle *data,
-                          SECURITY_STATUS major_status,
-                          SECURITY_STATUS minor_status,
-                          const char* function)
-{
-  const char *txt;
-  (void)minor_status;
-
-  if(major_status != SEC_E_OK &&
-     major_status != SEC_I_COMPLETE_AND_CONTINUE &&
-     major_status != SEC_I_COMPLETE_NEEDED &&
-     major_status != SEC_I_CONTINUE_NEEDED) {
-    failf(data, "SSPI error: %s failed: %d\n", function, major_status);
-    switch (major_status) {
-    case SEC_I_COMPLETE_AND_CONTINUE:
-      txt="SEC_I_COMPLETE_AND_CONTINUE";
-      break;
-    case SEC_I_COMPLETE_NEEDED:
-      txt="SEC_I_COMPLETE_NEEDED";
-      break;
-    case SEC_I_CONTINUE_NEEDED:
-      txt="SEC_I_CONTINUE_NEEDED";
-      break;
-    case SEC_I_CONTEXT_EXPIRED:
-      txt="SEC_I_CONTEXT_EXPIRED";
-      break;
-    case SEC_I_INCOMPLETE_CREDENTIALS:
-      txt="SEC_I_INCOMPLETE_CREDENTIALS";
-      break;
-    case SEC_I_RENEGOTIATE:
-      txt="SEC_I_RENEGOTIATE";
-      break;
-    case SEC_E_BUFFER_TOO_SMALL:
-      txt="SEC_E_BUFFER_TOO_SMALL";
-      break;
-    case SEC_E_CONTEXT_EXPIRED:
-      txt="SEC_E_CONTEXT_EXPIRED";
-      break;
-    case SEC_E_CRYPTO_SYSTEM_INVALID:
-      txt="SEC_E_CRYPTO_SYSTEM_INVALID";
-      break;
-    case SEC_E_INCOMPLETE_MESSAGE:
-      txt="SEC_E_INCOMPLETE_MESSAGE";
-      break;
-    case SEC_E_INSUFFICIENT_MEMORY:
-      txt="SEC_E_INSUFFICIENT_MEMORY";
-      break;
-    case SEC_E_INTERNAL_ERROR:
-      txt="SEC_E_INTERNAL_ERROR";
-      break;
-    case SEC_E_INVALID_HANDLE:
-      txt="SEC_E_INVALID_HANDLE";
-      break;
-    case SEC_E_INVALID_TOKEN:
-      txt="SEC_E_INVALID_TOKEN";
-      break;
-    case SEC_E_LOGON_DENIED:
-      txt="SEC_E_LOGON_DENIED";
-      break;
-    case SEC_E_MESSAGE_ALTERED:
-      txt="SEC_E_MESSAGE_ALTERED";
-      break;
-    case SEC_E_NO_AUTHENTICATING_AUTHORITY:
-      txt="SEC_E_NO_AUTHENTICATING_AUTHORITY";
-      break;
-    case SEC_E_NO_CREDENTIALS:
-      txt="SEC_E_NO_CREDENTIALS";
-      break;
-    case SEC_E_NOT_OWNER:
-      txt="SEC_E_NOT_OWNER";
-      break;
-    case SEC_E_OUT_OF_SEQUENCE:
-      txt="SEC_E_OUT_OF_SEQUENCE";
-      break;
-    case SEC_E_QOP_NOT_SUPPORTED:
-      txt="SEC_E_QOP_NOT_SUPPORTED";
-      break;
-    case SEC_E_SECPKG_NOT_FOUND:
-      txt="SEC_E_SECPKG_NOT_FOUND";
-      break;
-    case SEC_E_TARGET_UNKNOWN:
-      txt="SEC_E_TARGET_UNKNOWN";
-      break;
-    case SEC_E_UNKNOWN_CREDENTIALS:
-      txt="SEC_E_UNKNOWN_CREDENTIALS";
-      break;
-    case SEC_E_UNSUPPORTED_FUNCTION:
-      txt="SEC_E_UNSUPPORTED_FUNCTION";
-      break;
-    case SEC_E_WRONG_PRINCIPAL:
-      txt="SEC_E_WRONG_PRINCIPAL";
-      break;
-    default:
-      txt="Unknown error";
-
-    }
-    failf(data, "SSPI error: %s failed: %s\n", function, txt);
-    return 1;
-  }
-  return 0;
-}
-
-/* This is the SSPI-using version of this function */
-CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
-                                      struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  curl_socket_t sock = conn->sock[sockindex];
-  CURLcode code;
-  ssize_t actualread;
-  ssize_t written;
-  int result;
-  long timeout;
-  /* Needs GSSAPI authentication */
-  SECURITY_STATUS sspi_major_status, sspi_minor_status=0;
-  unsigned long sspi_ret_flags=0;
-  int gss_enc;
-  SecBuffer sspi_send_token, sspi_recv_token, sspi_w_token[3];
-  SecBufferDesc input_desc, output_desc, wrap_desc;
-  SecPkgContext_Sizes sspi_sizes;
-  CredHandle cred_handle;
-  CtxtHandle sspi_context;
-  PCtxtHandle context_handle = NULL;
-  SecPkgCredentials_Names names;
-  TimeStamp expiry;
-  char *service_name=NULL;
-  u_short us_length;
-  ULONG qop;
-  unsigned char socksreq[4]; /* room for gssapi exchange header only */
-  char *service = data->set.str[STRING_SOCKS5_GSSAPI_SERVICE];
-
-  /* get timeout */
-  timeout = Curl_timeleft(conn, NULL, TRUE);
-
-  /*   GSSAPI request looks like
-   * +----+------+-----+----------------+
-   * |VER | MTYP | LEN |     TOKEN      |
-   * +----+------+----------------------+
-   * | 1  |  1   |  2  | up to 2^16 - 1 |
-   * +----+------+-----+----------------+
-   */
-
-  /* prepare service name */
-  if (strchr(service, '/')) {
-    service_name = malloc(strlen(service));
-    if(!service_name)
-      return CURLE_OUT_OF_MEMORY;
-    memcpy(service_name, service, strlen(service));
-  }
-  else {
-    service_name = malloc(strlen(service) + strlen(conn->proxy.name) + 2);
-    if(!service_name)
-      return CURLE_OUT_OF_MEMORY;
-    snprintf(service_name,strlen(service) +strlen(conn->proxy.name)+2,"%s/%s",
-             service,conn->proxy.name);
-  }
-
-  input_desc.cBuffers = 1;
-  input_desc.pBuffers = &sspi_recv_token;
-  input_desc.ulVersion = SECBUFFER_VERSION;
-
-  sspi_recv_token.BufferType = SECBUFFER_TOKEN;
-  sspi_recv_token.cbBuffer = 0;
-  sspi_recv_token.pvBuffer = NULL;
-
-  output_desc.cBuffers = 1;
-  output_desc.pBuffers = &sspi_send_token;
-  output_desc.ulVersion = SECBUFFER_VERSION;
-
-  sspi_send_token.BufferType = SECBUFFER_TOKEN;
-  sspi_send_token.cbBuffer = 0;
-  sspi_send_token.pvBuffer = NULL;
-
-  wrap_desc.cBuffers = 3;
-  wrap_desc.pBuffers = sspi_w_token;
-  wrap_desc.ulVersion = SECBUFFER_VERSION;
-
-  cred_handle.dwLower = 0;
-  cred_handle.dwUpper = 0;
-
-  sspi_major_status = s_pSecFn->AcquireCredentialsHandleA( NULL,
-                                                           (char *)"Kerberos",
-                                                           SECPKG_CRED_OUTBOUND,
-                                                           NULL,
-                                                           NULL,
-                                                           NULL,
-                                                           NULL,
-                                                           &cred_handle,
-                                                           &expiry);
-
-  if(check_sspi_err(data, sspi_major_status,sspi_minor_status,
-                    "AcquireCredentialsHandleA") ) {
-    failf(data, "Failed to acquire credentials.");
-    free(service_name);
-    service_name=NULL;
-    s_pSecFn->FreeCredentialsHandle(&cred_handle);
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  /* As long as we need to keep sending some context info, and there's no  */
-  /* errors, keep sending it...                                            */
-  for(;;) {
-
-    sspi_major_status = s_pSecFn->InitializeSecurityContextA(
-                                    &cred_handle,
-                                    context_handle,
-                                    service_name,
-                                    ISC_REQ_MUTUAL_AUTH |
-                                    ISC_REQ_ALLOCATE_MEMORY |
-                                    ISC_REQ_CONFIDENTIALITY |
-                                    ISC_REQ_REPLAY_DETECT,
-                                    0,
-                                    SECURITY_NATIVE_DREP,
-                                    &input_desc,
-                                    0,
-                                    &sspi_context,
-                                    &output_desc,
-                                    &sspi_ret_flags,
-                                    &expiry);
-
-    if(sspi_recv_token.pvBuffer) {
-      s_pSecFn->FreeContextBuffer(sspi_recv_token.pvBuffer);
-      sspi_recv_token.pvBuffer = NULL;
-      sspi_recv_token.cbBuffer = 0;
-    }
-
-    if(check_sspi_err(data,sspi_major_status,sspi_minor_status,
-                      "InitializeSecurityContextA") ){
-      free(service_name);
-      service_name=NULL;
-      s_pSecFn->FreeCredentialsHandle(&cred_handle);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      s_pSecFn->FreeContextBuffer(sspi_recv_token.pvBuffer);
-      failf(data, "Failed to initialise security context.");
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    if(sspi_send_token.cbBuffer != 0) {
-      socksreq[0] = 1;    /* gssapi subnegotiation version */
-      socksreq[1] = 1;    /* authentication message type */
-      us_length = htons((short)sspi_send_token.cbBuffer);
-      memcpy(socksreq+2, &us_length, sizeof(short));
-
-      code = Curl_write_plain(conn, sock, (char *)socksreq, 4, &written);
-      if((code != CURLE_OK) || (4 != written)) {
-        failf(data, "Failed to send SSPI authentication request.");
-        free(service_name);
-        service_name=NULL;
-        s_pSecFn->FreeContextBuffer(sspi_send_token.pvBuffer);
-        s_pSecFn->FreeContextBuffer(sspi_recv_token.pvBuffer);
-        s_pSecFn->FreeCredentialsHandle(&cred_handle);
-        s_pSecFn->DeleteSecurityContext(&sspi_context);
-        return CURLE_COULDNT_CONNECT;
-      }
-
-      code = Curl_write_plain(conn, sock, (char *)sspi_send_token.pvBuffer,
-                              sspi_send_token.cbBuffer, &written);
-      if((code != CURLE_OK) || (sspi_send_token.cbBuffer != (size_t)written)) {
-        failf(data, "Failed to send SSPI authentication token.");
-        free(service_name);
-        service_name=NULL;
-        s_pSecFn->FreeContextBuffer(sspi_send_token.pvBuffer);
-        s_pSecFn->FreeContextBuffer(sspi_recv_token.pvBuffer);
-        s_pSecFn->FreeCredentialsHandle(&cred_handle);
-        s_pSecFn->DeleteSecurityContext(&sspi_context);
-        return CURLE_COULDNT_CONNECT;
-      }
-
-    }
-
-    s_pSecFn->FreeContextBuffer(sspi_send_token.pvBuffer);
-    sspi_send_token.pvBuffer = NULL;
-    sspi_send_token.cbBuffer = 0;
-    s_pSecFn->FreeContextBuffer(sspi_recv_token.pvBuffer);
-    sspi_recv_token.pvBuffer = NULL;
-    sspi_recv_token.cbBuffer = 0;
-    if(sspi_major_status != SEC_I_CONTINUE_NEEDED)  break;
-
-    /* analyse response */
-
-    /*   GSSAPI response looks like
-     * +----+------+-----+----------------+
-     * |VER | MTYP | LEN |     TOKEN      |
-     * +----+------+----------------------+
-     * | 1  |  1   |  2  | up to 2^16 - 1 |
-     * +----+------+-----+----------------+
-     */
-
-    result=Curl_blockread_all(conn, sock, (char *)socksreq, 4,
-                              &actualread, timeout);
-    if(result != CURLE_OK || actualread != 4) {
-      failf(data, "Failed to receive SSPI authentication response.");
-      free(service_name);
-      service_name=NULL;
-      s_pSecFn->FreeCredentialsHandle(&cred_handle);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    /* ignore the first (VER) byte */
-    if(socksreq[1] == 255) { /* status / message type */
-      failf(data, "User was rejected by the SOCKS5 server (%d %d).",
-            socksreq[0], socksreq[1]);
-      free(service_name);
-      service_name=NULL;
-      s_pSecFn->FreeCredentialsHandle(&cred_handle);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    if(socksreq[1] != 1) { /* status / messgae type */
-      failf(data, "Invalid SSPI authentication response type (%d %d).",
-            socksreq[0], socksreq[1]);
-      free(service_name);
-      service_name=NULL;
-      s_pSecFn->FreeCredentialsHandle(&cred_handle);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    memcpy(&us_length, socksreq+2, sizeof(short));
-    us_length = ntohs(us_length);
-
-    sspi_recv_token.cbBuffer = us_length;
-    sspi_recv_token.pvBuffer = malloc(us_length);
-
-    if(!sspi_recv_token.pvBuffer) {
-      free(service_name);
-      service_name=NULL;
-      s_pSecFn->FreeCredentialsHandle(&cred_handle);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_OUT_OF_MEMORY;
-    }
-    result = Curl_blockread_all(conn, sock, (char *)sspi_recv_token.pvBuffer,
-                                sspi_recv_token.cbBuffer,
-                                &actualread, timeout);
-
-    if(result != CURLE_OK || actualread != us_length) {
-      failf(data, "Failed to receive SSPI authentication token.");
-      free(service_name);
-      service_name=NULL;
-      s_pSecFn->FreeContextBuffer(sspi_recv_token.pvBuffer);
-      s_pSecFn->FreeCredentialsHandle(&cred_handle);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    context_handle = &sspi_context;
-  }
-
-  free(service_name);
-  service_name=NULL;
-
-  /* Everything is good so far, user was authenticated! */
-  sspi_major_status = s_pSecFn->QueryCredentialsAttributes( &cred_handle,
-                                                            SECPKG_CRED_ATTR_NAMES,
-                                                            &names);
-  s_pSecFn->FreeCredentialsHandle(&cred_handle);
-  if(check_sspi_err(data,sspi_major_status,sspi_minor_status,
-                    "QueryCredentialAttributes") ){
-    s_pSecFn->DeleteSecurityContext(&sspi_context);
-    s_pSecFn->FreeContextBuffer(names.sUserName);
-    failf(data, "Failed to determine user name.");
-    return CURLE_COULDNT_CONNECT;
-  }
-  infof(data, "SOCKS5 server authencticated user %s with gssapi.\n",
-        names.sUserName);
-  s_pSecFn->FreeContextBuffer(names.sUserName);
-
-  /* Do encryption */
-  socksreq[0] = 1;    /* gssapi subnegotiation version */
-  socksreq[1] = 2;    /* encryption message type */
-
-  gss_enc = 0; /* no data protection */
-  /* do confidentiality protection if supported */
-  if(sspi_ret_flags & ISC_REQ_CONFIDENTIALITY)
-    gss_enc = 2;
-  /* else do integrity protection */
-  else if(sspi_ret_flags & ISC_REQ_INTEGRITY)
-    gss_enc = 1;
-
-  infof(data, "SOCKS5 server supports gssapi %s data protection.\n",
-        (gss_enc==0)?"no":((gss_enc==1)?"integrity":"confidentiality") );
-  /* force to no data protection, avoid encryption/decryption for now */
-  gss_enc = 0;
-  /*
-   * Sending the encryption type in clear seems wrong. It should be
-   * protected with gss_seal()/gss_wrap(). See RFC1961 extract below
-   * The NEC reference implementations on which this is based is
-   * therefore at fault
-   *
-   *  +------+------+------+.......................+
-   *  + ver  | mtyp | len  |   token               |
-   *  +------+------+------+.......................+
-   *  + 0x01 | 0x02 | 0x02 | up to 2^16 - 1 octets |
-   *  +------+------+------+.......................+
-   *
-   *   Where:
-   *
-   *  - "ver" is the protocol version number, here 1 to represent the
-   *    first version of the SOCKS/GSS-API protocol
-   *
-   *  - "mtyp" is the message type, here 2 to represent a protection
-   *    -level negotiation message
-   *
-   *  - "len" is the length of the "token" field in octets
-   *
-   *  - "token" is the GSS-API encapsulated protection level
-   *
-   * The token is produced by encapsulating an octet containing the
-   * required protection level using gss_seal()/gss_wrap() with conf_req
-   * set to FALSE.  The token is verified using gss_unseal()/
-   * gss_unwrap().
-   *
-   */
-
-  if(data->set.socks5_gssapi_nec) {
-    us_length = htons((short)1);
-    memcpy(socksreq+2, &us_length, sizeof(short));
-  }
-  else {
-    sspi_major_status = s_pSecFn->QueryContextAttributesA( &sspi_context,
-                                                           SECPKG_ATTR_SIZES,
-                                                           &sspi_sizes);
-    if(check_sspi_err(data,sspi_major_status,sspi_minor_status,
-                      "QueryContextAttributesA")) {
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      failf(data, "Failed to query security context attributes.");
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    sspi_w_token[0].cbBuffer = sspi_sizes.cbSecurityTrailer;
-    sspi_w_token[0].BufferType = SECBUFFER_TOKEN;
-    sspi_w_token[0].pvBuffer = malloc(sspi_sizes.cbSecurityTrailer);
-
-    if(!sspi_w_token[0].pvBuffer) {
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_OUT_OF_MEMORY;
-    }
-
-    sspi_w_token[1].cbBuffer = 1;
-    sspi_w_token[1].pvBuffer = malloc(1);
-    if(!sspi_w_token[1].pvBuffer){
-      s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_OUT_OF_MEMORY;
-    }
-
-    memcpy(sspi_w_token[1].pvBuffer,&gss_enc,1);
-    sspi_w_token[2].BufferType = SECBUFFER_PADDING;
-    sspi_w_token[2].cbBuffer = sspi_sizes.cbBlockSize;
-    sspi_w_token[2].pvBuffer = malloc(sspi_sizes.cbBlockSize);
-    if(!sspi_w_token[2].pvBuffer) {
-      s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
-      s_pSecFn->FreeContextBuffer(sspi_w_token[1].pvBuffer);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_OUT_OF_MEMORY;
-    }
-    sspi_major_status = s_pSecFn->EncryptMessage( &sspi_context,
-                                                  KERB_WRAP_NO_ENCRYPT,
-                                                  &wrap_desc,
-                                                  0);
-    if(check_sspi_err(data,sspi_major_status,sspi_minor_status,
-                      "EncryptMessage") ) {
-      s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
-      s_pSecFn->FreeContextBuffer(sspi_w_token[1].pvBuffer);
-      s_pSecFn->FreeContextBuffer(sspi_w_token[2].pvBuffer);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      failf(data, "Failed to query security context attributes.");
-      return CURLE_COULDNT_CONNECT;
-    }
-    sspi_send_token.cbBuffer = sspi_w_token[0].cbBuffer
-      + sspi_w_token[1].cbBuffer
-      + sspi_w_token[2].cbBuffer;
-    sspi_send_token.pvBuffer = malloc(sspi_send_token.cbBuffer);
-    if(!sspi_send_token.pvBuffer) {
-      s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
-      s_pSecFn->FreeContextBuffer(sspi_w_token[1].pvBuffer);
-      s_pSecFn->FreeContextBuffer(sspi_w_token[2].pvBuffer);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_OUT_OF_MEMORY;
-    }
-
-    memcpy(sspi_send_token.pvBuffer, sspi_w_token[0].pvBuffer,
-           sspi_w_token[0].cbBuffer);
-    memcpy((PUCHAR) sspi_send_token.pvBuffer +(int)sspi_w_token[0].cbBuffer,
-           sspi_w_token[1].pvBuffer, sspi_w_token[1].cbBuffer);
-    memcpy((PUCHAR) sspi_send_token.pvBuffer
-           +sspi_w_token[0].cbBuffer
-           +sspi_w_token[1].cbBuffer,
-           sspi_w_token[2].pvBuffer, sspi_w_token[2].cbBuffer);
-
-    s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
-    sspi_w_token[0].pvBuffer = NULL;
-    sspi_w_token[0].cbBuffer = 0;
-    s_pSecFn->FreeContextBuffer(sspi_w_token[1].pvBuffer);
-    sspi_w_token[1].pvBuffer = NULL;
-    sspi_w_token[1].cbBuffer = 0;
-    s_pSecFn->FreeContextBuffer(sspi_w_token[2].pvBuffer);
-    sspi_w_token[2].pvBuffer = NULL;
-    sspi_w_token[2].cbBuffer = 0;
-
-    us_length = htons((short)sspi_send_token.cbBuffer);
-    memcpy(socksreq+2,&us_length,sizeof(short));
-  }
-
-  code = Curl_write_plain(conn, sock, (char *)socksreq, 4, &written);
-  if((code != CURLE_OK) || (4 != written)) {
-    failf(data, "Failed to send SSPI encryption request.");
-    s_pSecFn->FreeContextBuffer(sspi_send_token.pvBuffer);
-    s_pSecFn->DeleteSecurityContext(&sspi_context);
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  if(data->set.socks5_gssapi_nec) {
-    memcpy(socksreq,&gss_enc,1);
-    code = Curl_write_plain(conn, sock, (char *)socksreq, 1, &written);
-    if((code != CURLE_OK) || (1 != written)) {
-      failf(data, "Failed to send SSPI encryption type.");
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_COULDNT_CONNECT;
-    }
-  } else {
-    code = Curl_write_plain(conn, sock, (char *)sspi_send_token.pvBuffer,
-                            sspi_send_token.cbBuffer, &written);
-    if((code != CURLE_OK) || (sspi_send_token.cbBuffer != (size_t)written)) {
-      failf(data, "Failed to send SSPI encryption type.");
-      s_pSecFn->FreeContextBuffer(sspi_send_token.pvBuffer);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_COULDNT_CONNECT;
-    }
-    s_pSecFn->FreeContextBuffer(sspi_send_token.pvBuffer);
-  }
-
-  result=Curl_blockread_all(conn, sock, (char *)socksreq, 4,
-                            &actualread, timeout);
-  if(result != CURLE_OK || actualread != 4) {
-    failf(data, "Failed to receive SSPI encryption response.");
-    s_pSecFn->DeleteSecurityContext(&sspi_context);
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  /* ignore the first (VER) byte */
-  if(socksreq[1] == 255) { /* status / message type */
-    failf(data, "User was rejected by the SOCKS5 server (%d %d).",
-          socksreq[0], socksreq[1]);
-    s_pSecFn->DeleteSecurityContext(&sspi_context);
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  if(socksreq[1] != 2) { /* status / message type */
-    failf(data, "Invalid SSPI encryption response type (%d %d).",
-          socksreq[0], socksreq[1]);
-    s_pSecFn->DeleteSecurityContext(&sspi_context);
-    return CURLE_COULDNT_CONNECT;
-  }
-
-  memcpy(&us_length, socksreq+2, sizeof(short));
-  us_length = ntohs(us_length);
-
-  sspi_w_token[0].cbBuffer = us_length;
-  sspi_w_token[0].pvBuffer = malloc(us_length);
-  if(!sspi_w_token[0].pvBuffer) {
-    s_pSecFn->DeleteSecurityContext(&sspi_context);
-    return CURLE_OUT_OF_MEMORY;
-  }
-
-  result=Curl_blockread_all(conn, sock, (char *)sspi_w_token[0].pvBuffer,
-                            sspi_w_token[0].cbBuffer,
-                            &actualread, timeout);
-
-  if(result != CURLE_OK || actualread != us_length) {
-    failf(data, "Failed to receive SSPI encryption type.");
-    s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
-    s_pSecFn->DeleteSecurityContext(&sspi_context);
-    return CURLE_COULDNT_CONNECT;
-  }
-
-
-  if(!data->set.socks5_gssapi_nec) {
-    wrap_desc.cBuffers = 2;
-    sspi_w_token[0].BufferType = SECBUFFER_STREAM;
-    sspi_w_token[1].BufferType = SECBUFFER_DATA;
-    sspi_w_token[1].cbBuffer = 0;
-    sspi_w_token[1].pvBuffer = NULL;
-
-    sspi_major_status = s_pSecFn->DecryptMessage( &sspi_context,
-                                                  &wrap_desc,
-                                                  0,
-                                                  &qop);
-
-    if(check_sspi_err(data,sspi_major_status,sspi_minor_status,
-                      "DecryptMessage")) {
-      s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
-      s_pSecFn->FreeContextBuffer(sspi_w_token[1].pvBuffer);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      failf(data, "Failed to query security context attributes.");
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    if(sspi_w_token[1].cbBuffer != 1) {
-      failf(data, "Invalid SSPI encryption response length (%d).",
-            sspi_w_token[1].cbBuffer);
-      s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
-      s_pSecFn->FreeContextBuffer(sspi_w_token[1].pvBuffer);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_COULDNT_CONNECT;
-    }
-
-    memcpy(socksreq,sspi_w_token[1].pvBuffer,sspi_w_token[1].cbBuffer);
-    s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
-    s_pSecFn->FreeContextBuffer(sspi_w_token[1].pvBuffer);
-  } else {
-    if(sspi_w_token[0].cbBuffer != 1) {
-      failf(data, "Invalid SSPI encryption response length (%d).",
-            sspi_w_token[0].cbBuffer);
-      s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
-      s_pSecFn->DeleteSecurityContext(&sspi_context);
-      return CURLE_COULDNT_CONNECT;
-    }
-    memcpy(socksreq,sspi_w_token[0].pvBuffer,sspi_w_token[0].cbBuffer);
-    s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
-  }
-
-  infof(data, "SOCKS5 access with%s protection granted.\n",
-        (socksreq[0]==0)?"out gssapi data":
-        ((socksreq[0]==1)?" gssapi integrity":" gssapi confidentiality"));
-
-  /* For later use if encryption is required
-     conn->socks5_gssapi_enctype = socksreq[0];
-     if (socksreq[0] != 0)
-     conn->socks5_sspi_context = sspi_context;
-     else {
-     s_pSecFn->DeleteSecurityContext(&sspi_context);
-     conn->socks5_sspi_context = sspi_context;
-     }
-  */
-  return CURLE_OK;
-}
-#endif
diff --git a/src/other/curl/lib/speedcheck.c b/src/other/curl/lib/speedcheck.c
deleted file mode 100644
index 38bad5a..0000000
--- a/src/other/curl/lib/speedcheck.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <stdio.h>
-#include <string.h>
-
-#include <curl/curl.h>
-#include "urldata.h"
-#include "sendf.h"
-#include "multiif.h"
-#include "speedcheck.h"
-
-void Curl_speedinit(struct SessionHandle *data)
-{
-  memset(&data->state.keeps_speed, 0, sizeof(struct timeval));
-}
-
-CURLcode Curl_speedcheck(struct SessionHandle *data,
-                         struct timeval now)
-{
-  if((data->progress.current_speed >= 0) &&
-     data->set.low_speed_time &&
-     (Curl_tvlong(data->state.keeps_speed) != 0) &&
-     (data->progress.current_speed < data->set.low_speed_limit)) {
-    long howlong = Curl_tvdiff(now, data->state.keeps_speed);
-
-    /* We are now below the "low speed limit". If we are below it
-       for "low speed time" seconds we consider that enough reason
-       to abort the download. */
-
-    if( (howlong/1000) > data->set.low_speed_time) {
-      /* we have been this slow for long enough, now die */
-      failf(data,
-            "Operation too slow. "
-            "Less than %ld bytes/sec transfered the last %ld seconds",
-            data->set.low_speed_limit,
-            data->set.low_speed_time);
-      return CURLE_OPERATION_TIMEDOUT;
-    }
-    Curl_expire(data, howlong);
-  }
-  else {
-    /* we keep up the required speed all right */
-    data->state.keeps_speed = now;
-
-    if(data->set.low_speed_limit)
-      /* if there is a low speed limit enabled, we set the expire timer to
-         make this connection's speed get checked again no later than when
-         this time is up */
-      Curl_expire(data, data->set.low_speed_time*1000);
-  }
-  return CURLE_OK;
-}
diff --git a/src/other/curl/lib/speedcheck.h b/src/other/curl/lib/speedcheck.h
deleted file mode 100644
index fc40e7d..0000000
--- a/src/other/curl/lib/speedcheck.h
+++ /dev/null
@@ -1,33 +0,0 @@
-#ifndef HEADER_CURL_SPEEDCHECK_H
-#define HEADER_CURL_SPEEDCHECK_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include "timeval.h"
-
-void Curl_speedinit(struct SessionHandle *data);
-CURLcode Curl_speedcheck(struct SessionHandle *data,
-                         struct timeval now);
-
-#endif /* HEADER_CURL_SPEEDCHECK_H */
diff --git a/src/other/curl/lib/splay.c b/src/other/curl/lib/splay.c
deleted file mode 100644
index db3dbea..0000000
--- a/src/other/curl/lib/splay.c
+++ /dev/null
@@ -1,438 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1997 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include "splay.h"
-
-/*
- * This macro compares two node keys i and j and returns:
- *
- *  negative value: when i is smaller than j
- *  zero          : when i is equal   to   j
- *  positive when : when i is larger  than j
- */
-#define compare(i,j) Curl_splaycomparekeys((i),(j))
-
-/*
- * Splay using the key i (which may or may not be in the tree.) The starting
- * root is t.
- */
-struct Curl_tree *Curl_splay(struct timeval i,
-                             struct Curl_tree *t)
-{
-  struct Curl_tree N, *l, *r, *y;
-  long comp;
-
-  if(t == NULL)
-    return t;
-  N.smaller = N.larger = NULL;
-  l = r = &N;
-
-  for (;;) {
-    comp = compare(i, t->key);
-    if(comp < 0) {
-      if(t->smaller == NULL)
-        break;
-      if(compare(i, t->smaller->key) < 0) {
-        y = t->smaller;                           /* rotate smaller */
-        t->smaller = y->larger;
-        y->larger = t;
-        t = y;
-        if(t->smaller == NULL)
-          break;
-      }
-      r->smaller = t;                               /* link smaller */
-      r = t;
-      t = t->smaller;
-    }
-    else if(comp > 0) {
-      if(t->larger == NULL)
-        break;
-      if(compare(i, t->larger->key) > 0) {
-        y = t->larger;                          /* rotate larger */
-        t->larger = y->smaller;
-        y->smaller = t;
-        t = y;
-        if(t->larger == NULL)
-          break;
-      }
-      l->larger = t;                              /* link larger */
-      l = t;
-      t = t->larger;
-    }
-    else
-      break;
-  }
-
-  l->larger = t->smaller;                                /* assemble */
-  r->smaller = t->larger;
-  t->smaller = N.larger;
-  t->larger = N.smaller;
-
-  return t;
-}
-
-/* Insert key i into the tree t.  Return a pointer to the resulting tree or
-   NULL if something went wrong. */
-struct Curl_tree *Curl_splayinsert(struct timeval i,
-                                   struct Curl_tree *t,
-                                   struct Curl_tree *node)
-{
-  static struct timeval KEY_NOTUSED = {-1,-1}; /* key that will *NEVER* appear */
-
-  if(node == NULL)
-    return t;
-
-  if(t != NULL) {
-    t = Curl_splay(i,t);
-    if(compare(i, t->key)==0) {
-      /* There already exists a node in the tree with the very same key. Build
-         a linked list of nodes. We make the new 'node' struct the new master
-         node and make the previous node the first one in the 'same' list. */
-
-      node->same = t;
-      node->key = i;
-      node->smaller = t->smaller;
-      node->larger = t->larger;
-
-      t->smaller = node; /* in the sub node for this same key, we use the
-                            smaller pointer to point back to the master
-                            node */
-
-      t->key = KEY_NOTUSED; /* and we set the key in the sub node to NOTUSED
-                               to quickly identify this node as a subnode */
-
-      return node; /* new root node */
-    }
-  }
-
-  if(t == NULL) {
-    node->smaller = node->larger = NULL;
-  }
-  else if(compare(i, t->key) < 0) {
-    node->smaller = t->smaller;
-    node->larger = t;
-    t->smaller = NULL;
-
-  }
-  else {
-    node->larger = t->larger;
-    node->smaller = t;
-    t->larger = NULL;
-  }
-  node->key = i;
-
-  node->same = NULL; /* no identical node (yet) */
-  return node;
-}
-
-#if 0
-/* Deletes 'i' from the tree if it's there (with an exact match). Returns a
-   pointer to the resulting tree.
-
-   Function not used in libcurl.
-*/
-struct Curl_tree *Curl_splayremove(struct timeval i,
-                                   struct Curl_tree *t,
-                                   struct Curl_tree **removed)
-{
-  struct Curl_tree *x;
-
-  *removed = NULL; /* default to no removed */
-
-  if(t==NULL)
-    return NULL;
-
-  t = Curl_splay(i,t);
-  if(compare(i, t->key) == 0) {               /* found it */
-
-    /* FIRST! Check if there is a list with identical sizes */
-    if((x = t->same) != NULL) {
-      /* there is, pick one from the list */
-
-      /* 'x' is the new root node */
-
-      x->key = t->key;
-      x->larger = t->larger;
-      x->smaller = t->smaller;
-
-      *removed = t;
-      return x; /* new root */
-    }
-
-    if(t->smaller == NULL) {
-      x = t->larger;
-    }
-    else {
-      x = Curl_splay(i, t->smaller);
-      x->larger = t->larger;
-    }
-    *removed = t;
-
-    return x;
-  }
-  else
-    return t;                         /* It wasn't there */
-}
-#endif
-
-/* Finds and deletes the best-fit node from the tree. Return a pointer to the
-   resulting tree.  best-fit means the node with the given or lower key */
-struct Curl_tree *Curl_splaygetbest(struct timeval i,
-                                    struct Curl_tree *t,
-                                    struct Curl_tree **removed)
-{
-  struct Curl_tree *x;
-
-  if(!t) {
-    *removed = NULL; /* none removed since there was no root */
-    return NULL;
-  }
-
-  t = Curl_splay(i,t);
-  if(compare(i, t->key) < 0) {
-    /* too big node, try the smaller chain */
-    if(t->smaller)
-      t=Curl_splay(t->smaller->key, t);
-    else {
-      /* fail */
-      *removed = NULL;
-      return t;
-    }
-  }
-
-  if(compare(i, t->key) >= 0) {               /* found it */
-    /* FIRST! Check if there is a list with identical keys */
-    x = t->same;
-    if(x) {
-      /* there is, pick one from the list */
-
-      /* 'x' is the new root node */
-
-      x->key = t->key;
-      x->larger = t->larger;
-      x->smaller = t->smaller;
-
-      *removed = t;
-      return x; /* new root */
-    }
-
-    if(t->smaller == NULL) {
-      x = t->larger;
-    }
-    else {
-      x = Curl_splay(i, t->smaller);
-      x->larger = t->larger;
-    }
-    *removed = t;
-
-    return x;
-  }
-  else {
-    *removed = NULL; /* no match */
-    return t;        /* It wasn't there */
-  }
-}
-
-
-/* Deletes the very node we point out from the tree if it's there. Stores a
-   pointer to the new resulting tree in 'newroot'.
-
-   Returns zero on success and non-zero on errors! TODO: document error codes.
-   When returning error, it does not touch the 'newroot' pointer.
-
-   NOTE: when the last node of the tree is removed, there's no tree left so
-   'newroot' will be made to point to NULL.
-*/
-int Curl_splayremovebyaddr(struct Curl_tree *t,
-                           struct Curl_tree *removenode,
-                           struct Curl_tree **newroot)
-{
-  static struct timeval KEY_NOTUSED = {-1,-1}; /* key that will *NEVER* appear */
-  struct Curl_tree *x;
-
-  if(!t || !removenode)
-    return 1;
-
-  if(compare(KEY_NOTUSED, removenode->key) == 0) {
-    /* Key set to NOTUSED means it is a subnode within a 'same' linked list
-       and thus we can unlink it easily. The 'smaller' link of a subnode
-       links to the parent node. */
-    if(removenode->smaller == NULL)
-      return 3;
-
-    removenode->smaller->same = removenode->same;
-    if(removenode->same)
-      removenode->same->smaller = removenode->smaller;
-
-    /* Ensures that double-remove gets caught. */
-    removenode->smaller = NULL;
-
-    /* voila, we're done! */
-    *newroot = t; /* return the same root */
-    return 0;
-  }
-
-  t = Curl_splay(removenode->key, t);
-
-  /* First make sure that we got the same root node as the one we want
-     to remove, as otherwise we might be trying to remove a node that
-     isn't actually in the tree.
-
-     We cannot just compare the keys here as a double remove in quick
-     succession of a node with key != KEY_NOTUSED && same != NULL
-     could return the same key but a different node. */
-  if(t != removenode)
-    return 2;
-
-  /* Check if there is a list with identical sizes, as then we're trying to
-     remove the root node of a list of nodes with identical keys. */
-  x = t->same;
-  if(x) {
-    /* 'x' is the new root node, we just make it use the root node's
-       smaller/larger links */
-
-    x->key = t->key;
-    x->larger = t->larger;
-    x->smaller = t->smaller;
-  }
-  else {
-    /* Remove the root node */
-    if(t->smaller == NULL)
-      x = t->larger;
-    else {
-      x = Curl_splay(removenode->key, t->smaller);
-      x->larger = t->larger;
-    }
-  }
-
-  *newroot = x; /* store new root pointer */
-
-  return 0;
-}
-
-#ifdef DEBUGBUILD
-
-void Curl_splayprint(struct Curl_tree * t, int d, char output)
-{
-  struct Curl_tree *node;
-  int i;
-  int count;
-  if(t == NULL)
-    return;
-
-  Curl_splayprint(t->larger, d+1, output);
-  for (i=0; i<d; i++)
-    if(output)
-      fprintf(stderr, "  ");
-
-  if(output) {
-#ifdef TEST_SPLAY
-    fprintf(stderr, "%ld[%d]", (long)t->key.tv_usec, i);
-#else
-    fprintf(stderr, "%ld.%ld[%d]", (long)t->key.tv_sec, (long)t->key.tv_usec, i);
-#endif
-  }
-
-  for(count=0, node = t->same; node; node = node->same, count++)
-    ;
-
-  if(output) {
-    if(count)
-      fprintf(stderr, " [%d more]\n", count);
-    else
-      fprintf(stderr, "\n");
-  }
-
-  Curl_splayprint(t->smaller, d+1, output);
-}
-#endif
-
-#ifdef TEST_SPLAY
-
-/*#define TEST2 */
-#define MAX 50
-#define TEST2
-
-/* A sample use of these functions.  Start with the empty tree, insert some
-   stuff into it, and then delete it */
-int main(int argc, argv_item_t argv[])
-{
-  struct Curl_tree *root, *t;
-  void *ptrs[MAX];
-  int adds=0;
-  int rc;
-
-  static const long sizes[]={
-    50, 60, 50, 100, 60, 200, 120, 300, 400, 200, 256, 122, 60, 120, 200, 300,
-    220, 80, 90, 50, 100, 60, 200, 120, 300, 400, 200, 256, 122, 60, 120, 200,
-    300, 220, 80, 90, 50, 100, 60, 200, 120, 300, 400, 200, 256, 122, 60, 120,
-    200, 300, 220, 80, 90};
-  int i;
-  root = NULL;              /* the empty tree */
-
-  for (i = 0; i < MAX; i++) {
-    struct timeval key;
-    ptrs[i] = t = malloc(sizeof(struct Curl_tree));
-
-    key.tv_sec = 0;
-#ifdef TEST2
-    key.tv_usec = sizes[i];
-#elif defined(TEST1)
-    key.tv_usec = (541*i)%1023;
-#elif defined(TEST3)
-    key.tv_usec = 100;
-#endif
-
-    t->payload = (void *)key.tv_usec; /* for simplicity */
-    if(!t) {
-      puts("out of memory!");
-      return 0;
-    }
-    root = Curl_splayinsert(key, root, t);
-  }
-
-#if 0
-  puts("Result:");
-  Curl_splayprint(root, 0, 1);
-#endif
-
-#if 1
-  for (i = 0; i < MAX; i++) {
-    int rem = (i+7)%MAX;
-    struct Curl_tree *r;
-    printf("Tree look:\n");
-    Curl_splayprint(root, 0, 1);
-    printf("remove pointer %d, payload %ld\n", rem,
-           (long)((struct Curl_tree *)ptrs[rem])->payload);
-    rc = Curl_splayremovebyaddr(root, (struct Curl_tree *)ptrs[rem], &root);
-    if(rc)
-      /* failed! */
-      printf("remove %d failed!\n", rem);
-  }
-#endif
-
-  return 0;
-}
-
-#endif /* TEST_SPLAY */
diff --git a/src/other/curl/lib/splay.h b/src/other/curl/lib/splay.h
deleted file mode 100644
index 832e4e2..0000000
--- a/src/other/curl/lib/splay.h
+++ /dev/null
@@ -1,65 +0,0 @@
-#ifndef __SPLAY_H
-#define __SPLAY_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1997 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-struct Curl_tree {
-  struct Curl_tree *smaller; /* smaller node */
-  struct Curl_tree *larger;  /* larger node */
-  struct Curl_tree *same;    /* points to a node with identical key */
-  struct timeval key;        /* this node's "sort" key */
-  void *payload;             /* data the splay code doesn't care about */
-};
-
-struct Curl_tree *Curl_splay(struct timeval i,
-                             struct Curl_tree *t);
-
-struct Curl_tree *Curl_splayinsert(struct timeval key,
-                                   struct Curl_tree *t,
-                                   struct Curl_tree *newnode);
-
-#if 0
-struct Curl_tree *Curl_splayremove(struct timeval key,
-                                   struct Curl_tree *t,
-                                   struct Curl_tree **removed);
-#endif
-
-struct Curl_tree *Curl_splaygetbest(struct timeval key,
-                                    struct Curl_tree *t,
-                                    struct Curl_tree **removed);
-
-int Curl_splayremovebyaddr(struct Curl_tree *t,
-                           struct Curl_tree *removenode,
-                           struct Curl_tree **newroot);
-
-#define Curl_splaycomparekeys(i,j) ( ((i.tv_sec)  < (j.tv_sec))  ? -1 : \
-                                   ( ((i.tv_sec)  > (j.tv_sec))  ?  1 : \
-                                   ( ((i.tv_usec) < (j.tv_usec)) ? -1 : \
-                                   ( ((i.tv_usec) > (j.tv_usec)) ?  1 : 0 ))))
-
-#ifdef DEBUGBUILD
-void Curl_splayprint(struct Curl_tree * t, int d, char output);
-#else
-#define Curl_splayprint(x,y,z)
-#endif
-
-#endif
diff --git a/src/other/curl/lib/ssh.c b/src/other/curl/lib/ssh.c
deleted file mode 100644
index ff5994b..0000000
--- a/src/other/curl/lib/ssh.c
+++ /dev/null
@@ -1,3033 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* #define CURL_LIBSSH2_DEBUG */
-
-#include "setup.h"
-
-#ifdef USE_LIBSSH2
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <ctype.h>
-#ifdef HAVE_LIMITS_H
-#  include <limits.h>
-#endif
-
-#include <libssh2.h>
-#include <libssh2_sftp.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_FCNTL_H
-#include <fcntl.h>
-#endif
-
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-
-#ifndef WIN32
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_UTSNAME_H
-#include <sys/utsname.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#endif
-#endif /* !WIN32 */
-
-#if (defined(NETWARE) && defined(__NOVELL_LIBC__))
-#undef in_addr_t
-#define in_addr_t unsigned long
-#endif
-
-#include <curl/curl.h>
-#include "urldata.h"
-#include "sendf.h"
-#include "easyif.h" /* for Curl_convert_... prototypes */
-
-#include "hostip.h"
-#include "progress.h"
-#include "transfer.h"
-#include "escape.h"
-#include "http.h" /* for HTTP proxy tunnel stuff */
-#include "ssh.h"
-#include "url.h"
-#include "speedcheck.h"
-#include "getinfo.h"
-
-#include "strequal.h"
-#include "sslgen.h"
-#include "connect.h"
-#include "strerror.h"
-#include "inet_ntop.h"
-#include "parsedate.h" /* for the week day and month names */
-#include "sockaddr.h" /* required for Curl_sockaddr_storage */
-#include "strtoofft.h"
-#include "multiif.h"
-#include "select.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#ifndef PATH_MAX
-#define PATH_MAX 1024 /* just an extra precaution since there are systems that
-                         have their definition hidden well */
-#endif
-
-/* Local functions: */
-static const char *sftp_libssh2_strerror(unsigned long err);
-static LIBSSH2_ALLOC_FUNC(libssh2_malloc);
-static LIBSSH2_REALLOC_FUNC(libssh2_realloc);
-static LIBSSH2_FREE_FUNC(libssh2_free);
-
-static CURLcode get_pathname(const char **cpp, char **path);
-
-static CURLcode ssh_connect(struct connectdata *conn, bool *done);
-static CURLcode ssh_multi_statemach(struct connectdata *conn, bool *done);
-static CURLcode ssh_do(struct connectdata *conn, bool *done);
-
-static CURLcode ssh_getworkingpath(struct connectdata *conn,
-                                   char *homedir, /* when SFTP is used */
-                                   char **path);
-
-static CURLcode scp_done(struct connectdata *conn,
-                         CURLcode, bool premature);
-static CURLcode scp_doing(struct connectdata *conn,
-                          bool *dophase_done);
-static CURLcode scp_disconnect(struct connectdata *conn);
-
-static CURLcode sftp_done(struct connectdata *conn,
-                          CURLcode, bool premature);
-static CURLcode sftp_doing(struct connectdata *conn,
-                           bool *dophase_done);
-static CURLcode sftp_disconnect(struct connectdata *conn);
-static
-CURLcode sftp_perform(struct connectdata *conn,
-                      bool *connected,
-                      bool *dophase_done);
-
-static int ssh_getsock(struct connectdata *conn,
-                       curl_socket_t *sock, /* points to numsocks number
-                                               of sockets */
-                       int numsocks);
-
-static int ssh_perform_getsock(const struct connectdata *conn,
-                               curl_socket_t *sock, /* points to numsocks
-                                                       number of sockets */
-                               int numsocks);
-
-/*
- * SCP protocol handler.
- */
-
-const struct Curl_handler Curl_handler_scp = {
-  "SCP",                                /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  ssh_do,                               /* do_it */
-  scp_done,                             /* done */
-  ZERO_NULL,                            /* do_more */
-  ssh_connect,                          /* connect_it */
-  ssh_multi_statemach,                  /* connecting */
-  scp_doing,                            /* doing */
-  ssh_getsock,                          /* proto_getsock */
-  ssh_getsock,                          /* doing_getsock */
-  ssh_perform_getsock,                  /* perform_getsock */
-  scp_disconnect,                       /* disconnect */
-  PORT_SSH,                             /* defport */
-  PROT_SCP                              /* protocol */
-};
-
-
-/*
- * SFTP protocol handler.
- */
-
-const struct Curl_handler Curl_handler_sftp = {
-  "SFTP",                               /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  ssh_do,                               /* do_it */
-  sftp_done,                            /* done */
-  ZERO_NULL,                            /* do_more */
-  ssh_connect,                          /* connect_it */
-  ssh_multi_statemach,                  /* connecting */
-  sftp_doing,                           /* doing */
-  ssh_getsock,                          /* proto_getsock */
-  ssh_getsock,                          /* doing_getsock */
-  ssh_perform_getsock,                  /* perform_getsock */
-  sftp_disconnect,                      /* disconnect */
-  PORT_SSH,                             /* defport */
-  PROT_SFTP                             /* protocol */
-};
-
-
-static void
-kbd_callback(const char *name, int name_len, const char *instruction,
-             int instruction_len, int num_prompts,
-             const LIBSSH2_USERAUTH_KBDINT_PROMPT *prompts,
-             LIBSSH2_USERAUTH_KBDINT_RESPONSE *responses,
-             void **abstract)
-{
-  struct connectdata *conn = (struct connectdata *)*abstract;
-
-#ifdef CURL_LIBSSH2_DEBUG
-  fprintf(stderr, "name=%s\n", name);
-  fprintf(stderr, "name_len=%d\n", name_len);
-  fprintf(stderr, "instruction=%s\n", instruction);
-  fprintf(stderr, "instruction_len=%d\n", instruction_len);
-  fprintf(stderr, "num_prompts=%d\n", num_prompts);
-#else
-  (void)name;
-  (void)name_len;
-  (void)instruction;
-  (void)instruction_len;
-#endif  /* CURL_LIBSSH2_DEBUG */
-  if(num_prompts == 1) {
-    responses[0].text = strdup(conn->passwd);
-    responses[0].length = (unsigned int)strlen(conn->passwd);
-  }
-  (void)prompts;
-  (void)abstract;
-} /* kbd_callback */
-
-static CURLcode sftp_libssh2_error_to_CURLE(int err)
-{
-  switch (err) {
-    case LIBSSH2_FX_OK:
-      return CURLE_OK;
-
-    case LIBSSH2_FX_NO_SUCH_FILE:
-    case LIBSSH2_FX_NO_SUCH_PATH:
-      return CURLE_REMOTE_FILE_NOT_FOUND;
-
-    case LIBSSH2_FX_PERMISSION_DENIED:
-    case LIBSSH2_FX_WRITE_PROTECT:
-    case LIBSSH2_FX_LOCK_CONFlICT:
-      return CURLE_REMOTE_ACCESS_DENIED;
-
-    case LIBSSH2_FX_NO_SPACE_ON_FILESYSTEM:
-    case LIBSSH2_FX_QUOTA_EXCEEDED:
-      return CURLE_REMOTE_DISK_FULL;
-
-    case LIBSSH2_FX_FILE_ALREADY_EXISTS:
-      return CURLE_REMOTE_FILE_EXISTS;
-
-    case LIBSSH2_FX_DIR_NOT_EMPTY:
-      return CURLE_QUOTE_ERROR;
-
-    default:
-      break;
-  }
-
-  return CURLE_SSH;
-}
-
-static CURLcode libssh2_session_error_to_CURLE(int err)
-{
-  switch (err) {
-    /* Ordered by order of appearance in libssh2.h */
-    case LIBSSH2_ERROR_NONE:
-      return CURLE_OK;
-
-    case LIBSSH2_ERROR_SOCKET_NONE:
-      return CURLE_COULDNT_CONNECT;
-
-    case LIBSSH2_ERROR_ALLOC:
-      return CURLE_OUT_OF_MEMORY;
-
-    case LIBSSH2_ERROR_SOCKET_SEND:
-      return CURLE_SEND_ERROR;
-
-    case LIBSSH2_ERROR_HOSTKEY_INIT:
-    case LIBSSH2_ERROR_HOSTKEY_SIGN:
-    case LIBSSH2_ERROR_PUBLICKEY_UNRECOGNIZED:
-    case LIBSSH2_ERROR_PUBLICKEY_UNVERIFIED:
-      return CURLE_PEER_FAILED_VERIFICATION;
-
-    case LIBSSH2_ERROR_PASSWORD_EXPIRED:
-      return CURLE_LOGIN_DENIED;
-
-    case LIBSSH2_ERROR_SOCKET_TIMEOUT:
-    case LIBSSH2_ERROR_TIMEOUT:
-      return CURLE_OPERATION_TIMEDOUT;
-
-    case LIBSSH2_ERROR_EAGAIN:
-      return CURLE_AGAIN;
-  }
-
-  /* TODO: map some more of the libssh2 errors to the more appropriate CURLcode
-     error code, and possibly add a few new SSH-related one. We must however
-     not return or even depend on libssh2 errors in the public libcurl API */
-
-  return CURLE_SSH;
-}
-
-static LIBSSH2_ALLOC_FUNC(libssh2_malloc)
-{
-  (void)abstract; /* arg not used */
-  return malloc(count);
-}
-
-static LIBSSH2_REALLOC_FUNC(libssh2_realloc)
-{
-  (void)abstract; /* arg not used */
-  return realloc(ptr, count);
-}
-
-static LIBSSH2_FREE_FUNC(libssh2_free)
-{
-  (void)abstract; /* arg not used */
-  free(ptr);
-}
-
-/*
- * SSH State machine related code
- */
-/* This is the ONLY way to change SSH state! */
-static void state(struct connectdata *conn, sshstate nowstate)
-{
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
-  /* for debug purposes */
-  static const char * const names[] = {
-    "SSH_STOP",
-    "SSH_S_STARTUP",
-    "SSH_HOSTKEY",
-    "SSH_AUTHLIST",
-    "SSH_AUTH_PKEY_INIT",
-    "SSH_AUTH_PKEY",
-    "SSH_AUTH_PASS_INIT",
-    "SSH_AUTH_PASS",
-    "SSH_AUTH_HOST_INIT",
-    "SSH_AUTH_HOST",
-    "SSH_AUTH_KEY_INIT",
-    "SSH_AUTH_KEY",
-    "SSH_AUTH_DONE",
-    "SSH_SFTP_INIT",
-    "SSH_SFTP_REALPATH",
-    "SSH_SFTP_QUOTE_INIT",
-    "SSH_SFTP_POSTQUOTE_INIT",
-    "SSH_SFTP_QUOTE",
-    "SSH_SFTP_NEXT_QUOTE",
-    "SSH_SFTP_QUOTE_STAT",
-    "SSH_SFTP_QUOTE_SETSTAT",
-    "SSH_SFTP_QUOTE_SYMLINK",
-    "SSH_SFTP_QUOTE_MKDIR",
-    "SSH_SFTP_QUOTE_RENAME",
-    "SSH_SFTP_QUOTE_RMDIR",
-    "SSH_SFTP_QUOTE_UNLINK",
-    "SSH_SFTP_TRANS_INIT",
-    "SSH_SFTP_UPLOAD_INIT",
-    "SSH_SFTP_CREATE_DIRS_INIT",
-    "SSH_SFTP_CREATE_DIRS",
-    "SSH_SFTP_CREATE_DIRS_MKDIR",
-    "SSH_SFTP_READDIR_INIT",
-    "SSH_SFTP_READDIR",
-    "SSH_SFTP_READDIR_LINK",
-    "SSH_SFTP_READDIR_BOTTOM",
-    "SSH_SFTP_READDIR_DONE",
-    "SSH_SFTP_DOWNLOAD_INIT",
-    "SSH_SFTP_DOWNLOAD_STAT",
-    "SSH_SFTP_CLOSE",
-    "SSH_SFTP_SHUTDOWN",
-    "SSH_SCP_TRANS_INIT",
-    "SSH_SCP_UPLOAD_INIT",
-    "SSH_SCP_DOWNLOAD_INIT",
-    "SSH_SCP_DONE",
-    "SSH_SCP_SEND_EOF",
-    "SSH_SCP_WAIT_EOF",
-    "SSH_SCP_WAIT_CLOSE",
-    "SSH_SCP_CHANNEL_FREE",
-    "SSH_SESSION_DISCONNECT",
-    "SSH_SESSION_FREE",
-    "QUIT"
-  };
-#endif
-  struct ssh_conn *sshc = &conn->proto.sshc;
-
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
-  if(sshc->state != nowstate) {
-    infof(conn->data, "SFTP %p state change from %s to %s\n",
-          sshc, names[sshc->state], names[nowstate]);
-  }
-#endif
-
-  sshc->state = nowstate;
-}
-
-/* figure out the path to work with in this particular request */
-static CURLcode ssh_getworkingpath(struct connectdata *conn,
-                                   char *homedir,  /* when SFTP is used */
-                                   char **path) /* returns the  allocated
-                                                   real path to work with */
-{
-  struct SessionHandle *data = conn->data;
-  char *real_path = NULL;
-  char *working_path;
-  int working_path_len;
-
-  working_path = curl_easy_unescape(data, data->state.path, 0,
-                                    &working_path_len);
-  if(!working_path)
-    return CURLE_OUT_OF_MEMORY;
-
-  /* Check for /~/ , indicating relative to the user's home directory */
-  if(conn->protocol & PROT_SCP) {
-    real_path = malloc(working_path_len+1);
-    if(real_path == NULL) {
-      free(working_path);
-      return CURLE_OUT_OF_MEMORY;
-    }
-    if((working_path_len > 1) && (working_path[1] == '~'))
-      /* It is referenced to the home directory, so strip the leading '/' */
-      memcpy(real_path, working_path+1, 1 + working_path_len-1);
-    else
-      memcpy(real_path, working_path, 1 + working_path_len);
-  }
-  else if(conn->protocol & PROT_SFTP) {
-    if((working_path_len > 1) && (working_path[1] == '~')) {
-      size_t homelen = strlen(homedir);
-      real_path = malloc(homelen + working_path_len + 1);
-      if(real_path == NULL) {
-        free(working_path);
-        return CURLE_OUT_OF_MEMORY;
-      }
-      /* It is referenced to the home directory, so strip the
-         leading '/' */
-      memcpy(real_path, homedir, homelen);
-      real_path[homelen] = '/';
-      real_path[homelen+1] = '\0';
-      if(working_path_len > 3) {
-        memcpy(real_path+homelen+1, working_path + 3,
-               1 + working_path_len -3);
-      }
-    }
-    else {
-      real_path = malloc(working_path_len+1);
-      if(real_path == NULL) {
-        free(working_path);
-        return CURLE_OUT_OF_MEMORY;
-      }
-      memcpy(real_path, working_path, 1+working_path_len);
-    }
-  }
-
-  free(working_path);
-
-  /* store the pointer for the caller to receive */
-  *path = real_path;
-
-  return CURLE_OK;
-}
-
-#ifdef HAVE_LIBSSH2_KNOWNHOST_API
-static int sshkeycallback(CURL *easy,
-                          const struct curl_khkey *knownkey, /* known */
-                          const struct curl_khkey *foundkey, /* found */
-                          enum curl_khmatch match,
-                          void *clientp)
-{
-  (void)easy;
-  (void)knownkey;
-  (void)foundkey;
-  (void)clientp;
-
-  /* we only allow perfect matches, and we reject everything else */
-  return (match != CURLKHMATCH_OK)?CURLKHSTAT_REJECT:CURLKHSTAT_FINE;
-}
-#endif
-
-/*
- * Earlier libssh2 versions didn't have the ability to seek to 64bit positions
- * with 32bit size_t.
- */
-#ifdef HAVE_LIBSSH2_SFTP_SEEK64
-#define SFTP_SEEK(x,y) libssh2_sftp_seek64(x, (libssh2_uint64_t)y)
-#else
-#define SFTP_SEEK(x,y) libssh2_sftp_seek(x, (size_t)y)
-#endif
-
-/*
- * ssh_statemach_act() runs the SSH state machine as far as it can without
- * blocking and without reaching the end.  The data the pointer 'block' points
- * to will be set to TRUE if the libssh2 function returns LIBSSH2_ERROR_EAGAIN
- * meaning it wants to be called again when the socket is ready
- */
-
-static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-  struct SSHPROTO *sftp_scp = data->state.proto.ssh;
-  struct ssh_conn *sshc = &conn->proto.sshc;
-  curl_socket_t sock = conn->sock[FIRSTSOCKET];
-#ifdef CURL_LIBSSH2_DEBUG
-  const char *fingerprint;
-#endif /* CURL_LIBSSH2_DEBUG */
-  const char *host_public_key_md5;
-  int rc = LIBSSH2_ERROR_NONE, i;
-  int err;
-  int seekerr = CURL_SEEKFUNC_OK;
-  *block = 0; /* we're not blocking by default */
-
-  do {
-
-    switch(sshc->state) {
-    case SSH_S_STARTUP:
-      sshc->secondCreateDirs = 0;
-      sshc->nextstate = SSH_NO_STATE;
-      sshc->actualcode = CURLE_OK;
-
-      rc = libssh2_session_startup(sshc->ssh_session, sock);
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-      else if(rc) {
-        failf(data, "Failure establishing ssh session");
-        state(conn, SSH_SESSION_FREE);
-        sshc->actualcode = CURLE_FAILED_INIT;
-        break;
-      }
-
-      /* Set libssh2 to non-blocking, since everything internally is
-         non-blocking */
-      libssh2_session_set_blocking(sshc->ssh_session, 0);
-
-      state(conn, SSH_HOSTKEY);
-
-      /* fall-through */
-    case SSH_HOSTKEY:
-
-#ifdef CURL_LIBSSH2_DEBUG
-      /*
-       * Before we authenticate we should check the hostkey's fingerprint
-       * against our known hosts. How that is handled (reading from file,
-       * whatever) is up to us. As for know not much is implemented, besides
-       * showing how to get the fingerprint.
-       */
-      fingerprint = libssh2_hostkey_hash(sshc->ssh_session,
-                                         LIBSSH2_HOSTKEY_HASH_MD5);
-
-      /* The fingerprint points to static storage (!), don't free() it. */
-      infof(data, "Fingerprint: ");
-      for (rc = 0; rc < 16; rc++) {
-        infof(data, "%02X ", (unsigned char) fingerprint[rc]);
-      }
-      infof(data, "\n");
-#endif /* CURL_LIBSSH2_DEBUG */
-
-      /* Before we authenticate we check the hostkey's MD5 fingerprint
-       * against a known fingerprint, if available.  This implementation pulls
-       * it from the curl option.
-       */
-      if(data->set.str[STRING_SSH_HOST_PUBLIC_KEY_MD5] &&
-         strlen(data->set.str[STRING_SSH_HOST_PUBLIC_KEY_MD5]) == 32) {
-        char buf[33];
-        host_public_key_md5 = libssh2_hostkey_hash(sshc->ssh_session,
-                                                   LIBSSH2_HOSTKEY_HASH_MD5);
-        for (i = 0; i < 16; i++)
-          snprintf(&buf[i*2], 3, "%02x",
-                   (unsigned char) host_public_key_md5[i]);
-        if(!strequal(buf, data->set.str[STRING_SSH_HOST_PUBLIC_KEY_MD5])) {
-          failf(data,
-                "Denied establishing ssh session: mismatch md5 fingerprint. "
-                "Remote %s is not equal to %s",
-                buf, data->set.str[STRING_SSH_HOST_PUBLIC_KEY_MD5]);
-          state(conn, SSH_SESSION_FREE);
-          sshc->actualcode = CURLE_PEER_FAILED_VERIFICATION;
-          break;
-        }
-      }
-
-#ifdef HAVE_LIBSSH2_KNOWNHOST_API
-      if(data->set.str[STRING_SSH_KNOWNHOSTS]) {
-        /* we're asked to verify the host against a file */
-        int keytype;
-        size_t keylen;
-        const char *remotekey = libssh2_session_hostkey(sshc->ssh_session,
-                                                        &keylen, &keytype);
-        int keycheck;
-        int keybit;
-
-        if(remotekey) {
-          /*
-           * A subject to figure out is what host name we need to pass in here.
-           * What host name does OpenSSH store in its file if an IDN name is
-           * used?
-           */
-          struct libssh2_knownhost *host;
-          enum curl_khmatch keymatch;
-          curl_sshkeycallback func =
-            data->set.ssh_keyfunc?data->set.ssh_keyfunc:sshkeycallback;
-          struct curl_khkey knownkey;
-          struct curl_khkey *knownkeyp = NULL;
-          struct curl_khkey foundkey;
-
-          keybit = (keytype == LIBSSH2_HOSTKEY_TYPE_RSA)?
-            LIBSSH2_KNOWNHOST_KEY_SSHRSA:LIBSSH2_KNOWNHOST_KEY_SSHDSS;
-
-          keycheck = libssh2_knownhost_check(sshc->kh,
-                                             conn->host.name,
-                                             remotekey, keylen,
-                                             LIBSSH2_KNOWNHOST_TYPE_PLAIN|
-                                             LIBSSH2_KNOWNHOST_KEYENC_RAW|
-                                             keybit,
-                                             &host);
-
-          infof(data, "SSH host check: %d, key: %s\n", keycheck,
-                (keycheck <= LIBSSH2_KNOWNHOST_CHECK_MISMATCH)?
-                host->key:"<none>");
-
-          /* setup 'knownkey' */
-          if(keycheck <= LIBSSH2_KNOWNHOST_CHECK_MISMATCH) {
-            knownkey.key = host->key;
-            knownkey.len = 0;
-            knownkey.keytype = (keytype == LIBSSH2_HOSTKEY_TYPE_RSA)?
-              CURLKHTYPE_RSA : CURLKHTYPE_DSS;
-            knownkeyp = &knownkey;
-          }
-
-          /* setup 'foundkey' */
-          foundkey.key = remotekey;
-          foundkey.len = keylen;
-          foundkey.keytype = (keytype == LIBSSH2_HOSTKEY_TYPE_RSA)?
-            CURLKHTYPE_RSA : CURLKHTYPE_DSS;
-
-          /*
-           * if any of the LIBSSH2_KNOWNHOST_CHECK_* defines and the
-           * curl_khmatch enum are ever modified, we need to introduce a
-           * translation table here!
-           */
-          keymatch = (enum curl_khmatch)keycheck;
-
-          /* Ask the callback how to behave */
-          rc = func(data, knownkeyp, /* from the knownhosts file */
-                    &foundkey, /* from the remote host */
-                    keymatch, data->set.ssh_keyfunc_userp);
-        }
-        else
-          /* no remotekey means failure! */
-          rc = CURLKHSTAT_REJECT;
-
-        switch(rc) {
-        default: /* unknown return codes will equal reject */
-        case CURLKHSTAT_REJECT:
-          state(conn, SSH_SESSION_FREE);
-        case CURLKHSTAT_DEFER:
-          /* DEFER means bail out but keep the SSH_HOSTKEY state */
-          result = sshc->actualcode = CURLE_PEER_FAILED_VERIFICATION;
-          break;
-        case CURLKHSTAT_FINE:
-        case CURLKHSTAT_FINE_ADD_TO_FILE:
-          /* proceed */
-          if(keycheck != LIBSSH2_KNOWNHOST_CHECK_MATCH) {
-            /* the found host+key didn't match but has been told to be fine
-               anyway so we add it in memory */
-            int addrc = libssh2_knownhost_add(sshc->kh,
-                                              conn->host.name, NULL,
-                                              remotekey, keylen,
-                                              LIBSSH2_KNOWNHOST_TYPE_PLAIN|
-                                              LIBSSH2_KNOWNHOST_KEYENC_RAW|
-                                              keybit, NULL);
-            if(addrc)
-              infof(data, "Warning adding the known host %s failed!\n",
-                    conn->host.name);
-            else if(rc == CURLKHSTAT_FINE_ADD_TO_FILE) {
-              /* now we write the entire in-memory list of known hosts to the
-                 known_hosts file */
-              int wrc =
-                libssh2_knownhost_writefile(sshc->kh,
-                                            data->set.str[STRING_SSH_KNOWNHOSTS],
-                                            LIBSSH2_KNOWNHOST_FILE_OPENSSH);
-              if(wrc) {
-                infof(data, "Warning, writing %s failed!\n",
-                      data->set.str[STRING_SSH_KNOWNHOSTS]);
-              }
-            }
-          }
-          break;
-        }
-      }
-#endif /* HAVE_LIBSSH2_KNOWNHOST_API */
-
-      state(conn, SSH_AUTHLIST);
-      break;
-
-    case SSH_AUTHLIST:
-      /*
-       * Figure out authentication methods
-       * NB: As soon as we have provided a username to an openssh server we
-       * must never change it later. Thus, always specify the correct username
-       * here, even though the libssh2 docs kind of indicate that it should be
-       * possible to get a 'generic' list (not user-specific) of authentication
-       * methods, presumably with a blank username. That won't work in my
-       * experience.
-       * So always specify it here.
-       */
-      sshc->authlist = libssh2_userauth_list(sshc->ssh_session,
-                                             conn->user,
-                                             (unsigned int)strlen(conn->user));
-
-      if(!sshc->authlist) {
-        if((err = libssh2_session_last_errno(sshc->ssh_session)) ==
-           LIBSSH2_ERROR_EAGAIN) {
-          rc = LIBSSH2_ERROR_EAGAIN;
-          break;
-        }
-        else {
-          state(conn, SSH_SESSION_FREE);
-          sshc->actualcode = libssh2_session_error_to_CURLE(err);
-          break;
-        }
-      }
-      infof(data, "SSH authentication methods available: %s\n",
-            sshc->authlist);
-
-      state(conn, SSH_AUTH_PKEY_INIT);
-      break;
-
-    case SSH_AUTH_PKEY_INIT:
-      /*
-       * Check the supported auth types in the order I feel is most secure
-       * with the requested type of authentication
-       */
-      sshc->authed = FALSE;
-
-      if((data->set.ssh_auth_types & CURLSSH_AUTH_PUBLICKEY) &&
-         (strstr(sshc->authlist, "publickey") != NULL)) {
-        char *home;
-
-        sshc->rsa_pub = sshc->rsa = NULL;
-
-        /* To ponder about: should really the lib be messing about with the
-           HOME environment variable etc? */
-        home = curl_getenv("HOME");
-
-        if(data->set.str[STRING_SSH_PUBLIC_KEY])
-          sshc->rsa_pub = aprintf("%s", data->set.str[STRING_SSH_PUBLIC_KEY]);
-        else if(home)
-          sshc->rsa_pub = aprintf("%s/.ssh/id_dsa.pub", home);
-        else
-          /* as a final resort, try current dir! */
-          sshc->rsa_pub = strdup("id_dsa.pub");
-
-        if(sshc->rsa_pub == NULL) {
-          Curl_safefree(home);
-          home = NULL;
-          state(conn, SSH_SESSION_FREE);
-          sshc->actualcode = CURLE_OUT_OF_MEMORY;
-          break;
-        }
-
-        if(data->set.str[STRING_SSH_PRIVATE_KEY])
-          sshc->rsa = aprintf("%s", data->set.str[STRING_SSH_PRIVATE_KEY]);
-        else if(home)
-          sshc->rsa = aprintf("%s/.ssh/id_dsa", home);
-        else
-          /* as a final resort, try current dir! */
-          sshc->rsa = strdup("id_dsa");
-
-        if(sshc->rsa == NULL) {
-          Curl_safefree(home);
-          home = NULL;
-          Curl_safefree(sshc->rsa_pub);
-          sshc->rsa_pub = NULL;
-          state(conn, SSH_SESSION_FREE);
-          sshc->actualcode = CURLE_OUT_OF_MEMORY;
-          break;
-        }
-
-        sshc->passphrase = data->set.str[STRING_KEY_PASSWD];
-        if(!sshc->passphrase)
-          sshc->passphrase = "";
-
-        Curl_safefree(home);
-        home = NULL;
-
-        infof(data, "Using ssh public key file %s\n", sshc->rsa_pub);
-        infof(data, "Using ssh private key file %s\n", sshc->rsa);
-
-        state(conn, SSH_AUTH_PKEY);
-      }
-      else {
-        state(conn, SSH_AUTH_PASS_INIT);
-      }
-      break;
-
-    case SSH_AUTH_PKEY:
-      /* The function below checks if the files exists, no need to stat() here.
-       */
-      rc = libssh2_userauth_publickey_fromfile_ex(sshc->ssh_session,
-                                                  conn->user,
-                                                  (unsigned int)
-                                                  strlen(conn->user),
-                                                  sshc->rsa_pub,
-                                                  sshc->rsa, sshc->passphrase);
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-
-      Curl_safefree(sshc->rsa_pub);
-      sshc->rsa_pub = NULL;
-      Curl_safefree(sshc->rsa);
-      sshc->rsa = NULL;
-
-      if(rc == 0) {
-        sshc->authed = TRUE;
-        infof(data, "Initialized SSH public key authentication\n");
-        state(conn, SSH_AUTH_DONE);
-      }
-      else {
-        char *err_msg;
-        (void)libssh2_session_last_error(sshc->ssh_session,
-                                         &err_msg, NULL, 0);
-        infof(data, "SSH public key authentication failed: %s\n", err_msg);
-        state(conn, SSH_AUTH_PASS_INIT);
-      }
-      break;
-
-    case SSH_AUTH_PASS_INIT:
-      if((data->set.ssh_auth_types & CURLSSH_AUTH_PASSWORD) &&
-         (strstr(sshc->authlist, "password") != NULL)) {
-        state(conn, SSH_AUTH_PASS);
-      }
-      else {
-        state(conn, SSH_AUTH_HOST_INIT);
-      }
-      break;
-
-    case SSH_AUTH_PASS:
-      rc = libssh2_userauth_password_ex(sshc->ssh_session, conn->user,
-                                        (unsigned int)strlen(conn->user),
-                                        conn->passwd,
-                                        (unsigned int)strlen(conn->passwd),
-                                        NULL);
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-      else if(rc == 0) {
-        sshc->authed = TRUE;
-        infof(data, "Initialized password authentication\n");
-        state(conn, SSH_AUTH_DONE);
-      }
-      else {
-        state(conn, SSH_AUTH_HOST_INIT);
-      }
-      break;
-
-    case SSH_AUTH_HOST_INIT:
-      if((data->set.ssh_auth_types & CURLSSH_AUTH_HOST) &&
-         (strstr(sshc->authlist, "hostbased") != NULL)) {
-        state(conn, SSH_AUTH_HOST);
-      }
-      else {
-        state(conn, SSH_AUTH_KEY_INIT);
-      }
-      break;
-
-    case SSH_AUTH_HOST:
-      state(conn, SSH_AUTH_KEY_INIT);
-      break;
-
-    case SSH_AUTH_KEY_INIT:
-      if((data->set.ssh_auth_types & CURLSSH_AUTH_KEYBOARD)
-         && (strstr(sshc->authlist, "keyboard-interactive") != NULL)) {
-        state(conn, SSH_AUTH_KEY);
-      }
-      else {
-        state(conn, SSH_AUTH_DONE);
-      }
-      break;
-
-    case SSH_AUTH_KEY:
-      /* Authentication failed. Continue with keyboard-interactive now. */
-      rc = libssh2_userauth_keyboard_interactive_ex(sshc->ssh_session,
-                                                    conn->user,
-                                                    (unsigned int)
-                                                    strlen(conn->user),
-                                                    &kbd_callback);
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-      else if(rc == 0) {
-        sshc->authed = TRUE;
-        infof(data, "Initialized keyboard interactive authentication\n");
-      }
-      state(conn, SSH_AUTH_DONE);
-      break;
-
-    case SSH_AUTH_DONE:
-      if(!sshc->authed) {
-        failf(data, "Authentication failure");
-        state(conn, SSH_SESSION_FREE);
-        sshc->actualcode = CURLE_LOGIN_DENIED;
-        break;
-      }
-
-      /*
-       * At this point we have an authenticated ssh session.
-       */
-      infof(data, "Authentication complete\n");
-
-      Curl_pgrsTime(conn->data, TIMER_APPCONNECT); /* SSH is connected */
-
-      conn->sockfd = sock;
-      conn->writesockfd = CURL_SOCKET_BAD;
-
-      if(conn->protocol == PROT_SFTP) {
-        state(conn, SSH_SFTP_INIT);
-        break;
-      }
-      infof(data, "SSH CONNECT phase done\n");
-      state(conn, SSH_STOP);
-      break;
-
-    case SSH_SFTP_INIT:
-      /*
-       * Start the libssh2 sftp session
-       */
-      sshc->sftp_session = libssh2_sftp_init(sshc->ssh_session);
-      if(!sshc->sftp_session) {
-        if(libssh2_session_last_errno(sshc->ssh_session) ==
-           LIBSSH2_ERROR_EAGAIN) {
-          rc = LIBSSH2_ERROR_EAGAIN;
-          break;
-        }
-        else {
-          char *err_msg;
-
-          (void)libssh2_session_last_error(sshc->ssh_session,
-                                           &err_msg, NULL, 0);
-          failf(data, "Failure initializing sftp session: %s", err_msg);
-          state(conn, SSH_SESSION_FREE);
-          sshc->actualcode = CURLE_FAILED_INIT;
-          break;
-        }
-      }
-      state(conn, SSH_SFTP_REALPATH);
-      break;
-
-    case SSH_SFTP_REALPATH:
-    {
-      char tempHome[PATH_MAX];
-
-      /*
-       * Get the "home" directory
-       */
-      rc = libssh2_sftp_realpath(sshc->sftp_session, ".",
-                                 tempHome, PATH_MAX-1);
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-      else if(rc > 0) {
-        /* It seems that this string is not always NULL terminated */
-        tempHome[rc] = '\0';
-        sshc->homedir = strdup(tempHome);
-        if(!sshc->homedir) {
-          state(conn, SSH_SFTP_CLOSE);
-          sshc->actualcode = CURLE_OUT_OF_MEMORY;
-          break;
-        }
-      }
-      else {
-        /* Return the error type */
-        err = (int)(libssh2_sftp_last_error(sshc->sftp_session));
-        result = sftp_libssh2_error_to_CURLE(err);
-        sshc->actualcode = result?result:CURLE_SSH;
-        DEBUGF(infof(data, "error = %d makes libcurl = %d\n",
-                     err, (int)result));
-        state(conn, SSH_STOP);
-        break;
-      }
-    }
-    /* This is the last step in the SFTP connect phase. Do note that while
-       we get the homedir here, we get the "workingpath" in the DO action
-       since the homedir will remain the same between request but the
-       working path will not. */
-    DEBUGF(infof(data, "SSH CONNECT phase done\n"));
-    state(conn, SSH_STOP);
-    break;
-
-    case SSH_SFTP_QUOTE_INIT:
-
-      result = ssh_getworkingpath(conn, sshc->homedir, &sftp_scp->path);
-      if(result) {
-        sshc->actualcode = result;
-        state(conn, SSH_STOP);
-        break;
-      }
-
-      if(data->set.quote) {
-        infof(data, "Sending quote commands\n");
-        sshc->quote_item = data->set.quote;
-        state(conn, SSH_SFTP_QUOTE);
-      }
-      else {
-        state(conn, SSH_SFTP_TRANS_INIT);
-      }
-      break;
-
-    case SSH_SFTP_POSTQUOTE_INIT:
-      if(data->set.postquote) {
-        infof(data, "Sending quote commands\n");
-        sshc->quote_item = data->set.postquote;
-        state(conn, SSH_SFTP_QUOTE);
-      }
-      else {
-        state(conn, SSH_STOP);
-      }
-      break;
-
-    case SSH_SFTP_QUOTE:
-      /* Send any quote commands */
-    {
-      const char *cp;
-
-      /*
-       * Support some of the "FTP" commands
-       */
-      if(curl_strequal("pwd", sshc->quote_item->data)) {
-        /* output debug output if that is requested */
-        if(data->set.verbose) {
-          char tmp[PATH_MAX+1];
-
-          Curl_debug(data, CURLINFO_HEADER_OUT, (char *)"PWD\n", 4, conn);
-          snprintf(tmp, PATH_MAX, "257 \"%s\" is current directory.\n",
-                   sftp_scp->path);
-          Curl_debug(data, CURLINFO_HEADER_IN, tmp, strlen(tmp), conn);
-        }
-        state(conn, SSH_SFTP_NEXT_QUOTE);
-        break;
-      }
-      else if(sshc->quote_item->data) {
-        /*
-         * the arguments following the command must be separated from the
-         * command with a space so we can check for it unconditionally
-         */
-        cp = strchr(sshc->quote_item->data, ' ');
-        if(cp == NULL) {
-          failf(data, "Syntax error in SFTP command. Supply parameter(s)!");
-          state(conn, SSH_SFTP_CLOSE);
-          sshc->actualcode = CURLE_QUOTE_ERROR;
-          break;
-        }
-
-        /*
-         * also, every command takes at least one argument so we get that
-         * first argument right now
-         */
-        result = get_pathname(&cp, &sshc->quote_path1);
-        if(result) {
-          if(result == CURLE_OUT_OF_MEMORY)
-            failf(data, "Out of memory");
-          else
-            failf(data, "Syntax error: Bad first parameter");
-          state(conn, SSH_SFTP_CLOSE);
-          sshc->actualcode = result;
-          break;
-        }
-
-        /*
-         * SFTP is a binary protocol, so we don't send text commands to
-         * the server. Instead, we scan for commands for commands used by
-         * OpenSSH's sftp program and call the appropriate libssh2
-         * functions.
-         */
-        if(curl_strnequal(sshc->quote_item->data, "chgrp ", 6) ||
-           curl_strnequal(sshc->quote_item->data, "chmod ", 6) ||
-           curl_strnequal(sshc->quote_item->data, "chown ", 6) ) {
-          /* attribute change */
-
-          /* sshc->quote_path1 contains the mode to set */
-          /* get the destination */
-          result = get_pathname(&cp, &sshc->quote_path2);
-          if(result) {
-            if(result == CURLE_OUT_OF_MEMORY)
-              failf(data, "Out of memory");
-            else
-              failf(data, "Syntax error in chgrp/chmod/chown: "
-                    "Bad second parameter");
-            Curl_safefree(sshc->quote_path1);
-            sshc->quote_path1 = NULL;
-            state(conn, SSH_SFTP_CLOSE);
-            sshc->actualcode = result;
-            break;
-          }
-          memset(&sshc->quote_attrs, 0, sizeof(LIBSSH2_SFTP_ATTRIBUTES));
-          state(conn, SSH_SFTP_QUOTE_STAT);
-          break;
-        }
-        else if(curl_strnequal(sshc->quote_item->data, "ln ", 3) ||
-                curl_strnequal(sshc->quote_item->data, "symlink ", 8)) {
-          /* symbolic linking */
-          /* sshc->quote_path1 is the source */
-          /* get the destination */
-          result = get_pathname(&cp, &sshc->quote_path2);
-          if(result) {
-            if(result == CURLE_OUT_OF_MEMORY)
-              failf(data, "Out of memory");
-            else
-              failf(data,
-                    "Syntax error in ln/symlink: Bad second parameter");
-            Curl_safefree(sshc->quote_path1);
-            sshc->quote_path1 = NULL;
-            state(conn, SSH_SFTP_CLOSE);
-            sshc->actualcode = result;
-            break;
-          }
-          state(conn, SSH_SFTP_QUOTE_SYMLINK);
-          break;
-        }
-        else if(curl_strnequal(sshc->quote_item->data, "mkdir ", 6)) {
-          /* create dir */
-          state(conn, SSH_SFTP_QUOTE_MKDIR);
-          break;
-        }
-        else if(curl_strnequal(sshc->quote_item->data, "rename ", 7)) {
-          /* rename file */
-          /* first param is the source path */
-          /* second param is the dest. path */
-          result = get_pathname(&cp, &sshc->quote_path2);
-          if(result) {
-            if(result == CURLE_OUT_OF_MEMORY)
-              failf(data, "Out of memory");
-            else
-              failf(data, "Syntax error in rename: Bad second parameter");
-            Curl_safefree(sshc->quote_path1);
-            sshc->quote_path1 = NULL;
-            state(conn, SSH_SFTP_CLOSE);
-            sshc->actualcode = result;
-            break;
-          }
-          state(conn, SSH_SFTP_QUOTE_RENAME);
-          break;
-        }
-        else if(curl_strnequal(sshc->quote_item->data, "rmdir ", 6)) {
-          /* delete dir */
-          state(conn, SSH_SFTP_QUOTE_RMDIR);
-          break;
-        }
-        else if(curl_strnequal(sshc->quote_item->data, "rm ", 3)) {
-          state(conn, SSH_SFTP_QUOTE_UNLINK);
-          break;
-        }
-
-        failf(data, "Unknown SFTP command");
-        Curl_safefree(sshc->quote_path1);
-        sshc->quote_path1 = NULL;
-        Curl_safefree(sshc->quote_path2);
-        sshc->quote_path2 = NULL;
-        state(conn, SSH_SFTP_CLOSE);
-        sshc->actualcode = CURLE_QUOTE_ERROR;
-        break;
-      }
-    }
-    if(!sshc->quote_item) {
-      state(conn, SSH_SFTP_TRANS_INIT);
-    }
-    break;
-
-    case SSH_SFTP_NEXT_QUOTE:
-      if(sshc->quote_path1) {
-        Curl_safefree(sshc->quote_path1);
-        sshc->quote_path1 = NULL;
-      }
-      if(sshc->quote_path2) {
-        Curl_safefree(sshc->quote_path2);
-        sshc->quote_path2 = NULL;
-      }
-
-      sshc->quote_item = sshc->quote_item->next;
-
-      if(sshc->quote_item) {
-        state(conn, SSH_SFTP_QUOTE);
-      }
-      else {
-        if(sshc->nextstate != SSH_NO_STATE) {
-          state(conn, sshc->nextstate);
-          sshc->nextstate = SSH_NO_STATE;
-        }
-        else {
-          state(conn, SSH_SFTP_TRANS_INIT);
-        }
-      }
-      break;
-
-    case SSH_SFTP_QUOTE_STAT:
-      if(!curl_strnequal(sshc->quote_item->data, "chmod", 5)) {
-        /* Since chown and chgrp only set owner OR group but libssh2 wants to
-         * set them both at once, we need to obtain the current ownership
-         * first.  This takes an extra protocol round trip.
-         */
-        rc = libssh2_sftp_stat_ex(sshc->sftp_session, sshc->quote_path2,
-                                  (unsigned int)strlen(sshc->quote_path2),
-                                  LIBSSH2_SFTP_STAT,
-                                  &sshc->quote_attrs);
-        if(rc == LIBSSH2_ERROR_EAGAIN) {
-          break;
-        }
-        else if(rc != 0) { /* get those attributes */
-          err = (int)(libssh2_sftp_last_error(sshc->sftp_session));
-          Curl_safefree(sshc->quote_path1);
-          sshc->quote_path1 = NULL;
-          Curl_safefree(sshc->quote_path2);
-          sshc->quote_path2 = NULL;
-          failf(data, "Attempt to get SFTP stats failed: %s",
-                sftp_libssh2_strerror(err));
-          state(conn, SSH_SFTP_CLOSE);
-          sshc->actualcode = CURLE_QUOTE_ERROR;
-          break;
-        }
-      }
-
-      /* Now set the new attributes... */
-      if(curl_strnequal(sshc->quote_item->data, "chgrp", 5)) {
-        sshc->quote_attrs.gid = strtoul(sshc->quote_path1, NULL, 10);
-        sshc->quote_attrs.flags = LIBSSH2_SFTP_ATTR_UIDGID;
-        if(sshc->quote_attrs.gid == 0 && !ISDIGIT(sshc->quote_path1[0])) {
-          Curl_safefree(sshc->quote_path1);
-          sshc->quote_path1 = NULL;
-          Curl_safefree(sshc->quote_path2);
-          sshc->quote_path2 = NULL;
-          failf(data, "Syntax error: chgrp gid not a number");
-          state(conn, SSH_SFTP_CLOSE);
-          sshc->actualcode = CURLE_QUOTE_ERROR;
-          break;
-        }
-      }
-      else if(curl_strnequal(sshc->quote_item->data, "chmod", 5)) {
-        sshc->quote_attrs.permissions = strtoul(sshc->quote_path1, NULL, 8);
-        sshc->quote_attrs.flags = LIBSSH2_SFTP_ATTR_PERMISSIONS;
-        /* permissions are octal */
-        if(sshc->quote_attrs.permissions == 0 &&
-           !ISDIGIT(sshc->quote_path1[0])) {
-          Curl_safefree(sshc->quote_path1);
-          sshc->quote_path1 = NULL;
-          Curl_safefree(sshc->quote_path2);
-          sshc->quote_path2 = NULL;
-          failf(data, "Syntax error: chmod permissions not a number");
-          state(conn, SSH_SFTP_CLOSE);
-          sshc->actualcode = CURLE_QUOTE_ERROR;
-          break;
-        }
-      }
-      else if(curl_strnequal(sshc->quote_item->data, "chown", 5)) {
-        sshc->quote_attrs.uid = strtoul(sshc->quote_path1, NULL, 10);
-        sshc->quote_attrs.flags = LIBSSH2_SFTP_ATTR_UIDGID;
-        if(sshc->quote_attrs.uid == 0 && !ISDIGIT(sshc->quote_path1[0])) {
-          Curl_safefree(sshc->quote_path1);
-          sshc->quote_path1 = NULL;
-          Curl_safefree(sshc->quote_path2);
-          sshc->quote_path2 = NULL;
-          failf(data, "Syntax error: chown uid not a number");
-          state(conn, SSH_SFTP_CLOSE);
-          sshc->actualcode = CURLE_QUOTE_ERROR;
-          break;
-        }
-      }
-
-      /* Now send the completed structure... */
-      state(conn, SSH_SFTP_QUOTE_SETSTAT);
-      break;
-
-    case SSH_SFTP_QUOTE_SETSTAT:
-      rc = libssh2_sftp_stat_ex(sshc->sftp_session, sshc->quote_path2,
-                                (unsigned int)strlen(sshc->quote_path2),
-                                LIBSSH2_SFTP_SETSTAT,
-                                &sshc->quote_attrs);
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-      else if(rc != 0) {
-        err = (int)(libssh2_sftp_last_error(sshc->sftp_session));
-        Curl_safefree(sshc->quote_path1);
-        sshc->quote_path1 = NULL;
-        Curl_safefree(sshc->quote_path2);
-        sshc->quote_path2 = NULL;
-        failf(data, "Attempt to set SFTP stats failed: %s",
-              sftp_libssh2_strerror(err));
-        state(conn, SSH_SFTP_CLOSE);
-        sshc->actualcode = CURLE_QUOTE_ERROR;
-        break;
-      }
-      state(conn, SSH_SFTP_NEXT_QUOTE);
-      break;
-
-    case SSH_SFTP_QUOTE_SYMLINK:
-      rc = libssh2_sftp_symlink_ex(sshc->sftp_session, sshc->quote_path1,
-                                   (unsigned int)strlen(sshc->quote_path1),
-                                   sshc->quote_path2,
-                                   (unsigned int)strlen(sshc->quote_path2),
-                                   LIBSSH2_SFTP_SYMLINK);
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-      else if(rc != 0) {
-        err = (int)(libssh2_sftp_last_error(sshc->sftp_session));
-        Curl_safefree(sshc->quote_path1);
-        sshc->quote_path1 = NULL;
-        Curl_safefree(sshc->quote_path2);
-        sshc->quote_path2 = NULL;
-        failf(data, "symlink command failed: %s",
-              sftp_libssh2_strerror(err));
-        state(conn, SSH_SFTP_CLOSE);
-        sshc->actualcode = CURLE_QUOTE_ERROR;
-        break;
-      }
-      state(conn, SSH_SFTP_NEXT_QUOTE);
-      break;
-
-    case SSH_SFTP_QUOTE_MKDIR:
-      rc = libssh2_sftp_mkdir_ex(sshc->sftp_session, sshc->quote_path1,
-                                 (unsigned int)strlen(sshc->quote_path1),
-                                 0755);
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-      else if(rc != 0) {
-        err = (int)(libssh2_sftp_last_error(sshc->sftp_session));
-        Curl_safefree(sshc->quote_path1);
-        sshc->quote_path1 = NULL;
-        failf(data, "mkdir command failed: %s", sftp_libssh2_strerror(err));
-        state(conn, SSH_SFTP_CLOSE);
-        sshc->actualcode = CURLE_QUOTE_ERROR;
-        break;
-      }
-      state(conn, SSH_SFTP_NEXT_QUOTE);
-      break;
-
-    case SSH_SFTP_QUOTE_RENAME:
-      rc = libssh2_sftp_rename_ex(sshc->sftp_session, sshc->quote_path1,
-                                  (unsigned int)strlen(sshc->quote_path1),
-                                  sshc->quote_path2,
-                                  (unsigned int)strlen(sshc->quote_path2),
-                                  LIBSSH2_SFTP_RENAME_OVERWRITE |
-                                  LIBSSH2_SFTP_RENAME_ATOMIC |
-                                  LIBSSH2_SFTP_RENAME_NATIVE);
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-      else if(rc != 0) {
-        err = (int)(libssh2_sftp_last_error(sshc->sftp_session));
-        Curl_safefree(sshc->quote_path1);
-        sshc->quote_path1 = NULL;
-        Curl_safefree(sshc->quote_path2);
-        sshc->quote_path2 = NULL;
-        failf(data, "rename command failed: %s", sftp_libssh2_strerror(err));
-        state(conn, SSH_SFTP_CLOSE);
-        sshc->actualcode = CURLE_QUOTE_ERROR;
-        break;
-      }
-      state(conn, SSH_SFTP_NEXT_QUOTE);
-      break;
-
-    case SSH_SFTP_QUOTE_RMDIR:
-      rc = libssh2_sftp_rmdir_ex(sshc->sftp_session, sshc->quote_path1,
-                                 (unsigned int)strlen(sshc->quote_path1));
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-      else if(rc != 0) {
-        err = (int)(libssh2_sftp_last_error(sshc->sftp_session));
-        Curl_safefree(sshc->quote_path1);
-        sshc->quote_path1 = NULL;
-        failf(data, "rmdir command failed: %s", sftp_libssh2_strerror(err));
-        state(conn, SSH_SFTP_CLOSE);
-        sshc->actualcode = CURLE_QUOTE_ERROR;
-        break;
-      }
-      state(conn, SSH_SFTP_NEXT_QUOTE);
-      break;
-
-    case SSH_SFTP_QUOTE_UNLINK:
-      rc = libssh2_sftp_unlink_ex(sshc->sftp_session, sshc->quote_path1,
-                                  (unsigned int)strlen(sshc->quote_path1));
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-      else if(rc != 0) {
-        err = (int)(libssh2_sftp_last_error(sshc->sftp_session));
-        Curl_safefree(sshc->quote_path1);
-        sshc->quote_path1 = NULL;
-        failf(data, "rm command failed: %s", sftp_libssh2_strerror(err));
-        state(conn, SSH_SFTP_CLOSE);
-        sshc->actualcode = CURLE_QUOTE_ERROR;
-        break;
-      }
-      state(conn, SSH_SFTP_NEXT_QUOTE);
-      break;
-
-    case SSH_SFTP_TRANS_INIT:
-      if(data->set.upload)
-        state(conn, SSH_SFTP_UPLOAD_INIT);
-      else {
-        if(data->set.opt_no_body)
-          state(conn, SSH_STOP);
-        else if(sftp_scp->path[strlen(sftp_scp->path)-1] == '/')
-          state(conn, SSH_SFTP_READDIR_INIT);
-        else
-          state(conn, SSH_SFTP_DOWNLOAD_INIT);
-      }
-      break;
-
-    case SSH_SFTP_UPLOAD_INIT:
-    {
-      unsigned long flags;
-      /*
-       * NOTE!!!  libssh2 requires that the destination path is a full path
-       *          that includes the destination file and name OR ends in a "/"
-       *          If this is not done the destination file will be named the
-       *          same name as the last directory in the path.
-       */
-
-      if(data->state.resume_from != 0) {
-        LIBSSH2_SFTP_ATTRIBUTES attrs;
-        if(data->state.resume_from< 0) {
-          rc = libssh2_sftp_stat_ex(sshc->sftp_session, sftp_scp->path,
-                                    (unsigned int)strlen(sftp_scp->path),
-                                    LIBSSH2_SFTP_STAT, &attrs);
-          if(rc == LIBSSH2_ERROR_EAGAIN) {
-            break;
-          }
-          else if(rc) {
-            data->state.resume_from = 0;
-          }
-          else {
-            data->state.resume_from = attrs.filesize;
-          }
-        }
-      }
-
-      if(data->set.ftp_append)
-        /* Try to open for append, but create if nonexisting */
-        flags = LIBSSH2_FXF_WRITE|LIBSSH2_FXF_CREAT|LIBSSH2_FXF_APPEND;
-      else if (data->state.resume_from > 0)
-        /* If we have restart position then open for append */
-        flags = LIBSSH2_FXF_WRITE|LIBSSH2_FXF_APPEND;
-      else
-        /* Clear file before writing (normal behaviour) */
-        flags = LIBSSH2_FXF_WRITE|LIBSSH2_FXF_CREAT|LIBSSH2_FXF_TRUNC;
-
-      sshc->sftp_handle =
-        libssh2_sftp_open_ex(sshc->sftp_session, sftp_scp->path,
-                             (unsigned int)strlen(sftp_scp->path),
-                             flags, data->set.new_file_perms,
-                             LIBSSH2_SFTP_OPENFILE);
-
-      if(!sshc->sftp_handle) {
-        rc = libssh2_session_last_errno(sshc->ssh_session);
-
-        if(LIBSSH2_ERROR_EAGAIN == rc)
-          break;
-        else {
-          if(LIBSSH2_ERROR_SFTP_PROTOCOL == rc)
-            /* only when there was an SFTP protocol error can we extract
-               the sftp error! */
-            err = (int)(libssh2_sftp_last_error(sshc->sftp_session));
-          else
-            err = -1; /* not an sftp error at all */
-
-          if(sshc->secondCreateDirs) {
-            state(conn, SSH_SFTP_CLOSE);
-            sshc->actualcode = err>= LIBSSH2_FX_OK?
-              sftp_libssh2_error_to_CURLE(err):CURLE_SSH;
-            failf(data, "Creating the dir/file failed: %s",
-                  sftp_libssh2_strerror(err));
-            break;
-          }
-          else if(((err == LIBSSH2_FX_NO_SUCH_FILE) ||
-                   (err == LIBSSH2_FX_FAILURE) ||
-                   (err == LIBSSH2_FX_NO_SUCH_PATH)) &&
-                  (data->set.ftp_create_missing_dirs &&
-                   (strlen(sftp_scp->path) > 1))) {
-            /* try to create the path remotely */
-            sshc->secondCreateDirs = 1;
-            state(conn, SSH_SFTP_CREATE_DIRS_INIT);
-            break;
-          }
-          state(conn, SSH_SFTP_CLOSE);
-          sshc->actualcode = err>= LIBSSH2_FX_OK?
-            sftp_libssh2_error_to_CURLE(err):CURLE_SSH;
-          if(!sshc->actualcode) {
-            /* Sometimes, for some reason libssh2_sftp_last_error() returns
-               zero even though libssh2_sftp_open() failed previously! We need
-               to work around that! */
-            sshc->actualcode = CURLE_SSH;
-            err=-1;
-          }
-          failf(data, "Upload failed: %s (%d/%d)",
-                err>= LIBSSH2_FX_OK?sftp_libssh2_strerror(err):"ssh error",
-                err, rc);
-          break;
-        }
-      }
-
-      /* If we have restart point then we need to seek to the correct
-         position. */
-      if(data->state.resume_from > 0) {
-        /* Let's read off the proper amount of bytes from the input. */
-        if(conn->seek_func) {
-          seekerr = conn->seek_func(conn->seek_client, data->state.resume_from,
-                                    SEEK_SET);
-        }
-
-        if(seekerr != CURL_SEEKFUNC_OK){
-
-          if(seekerr != CURL_SEEKFUNC_CANTSEEK) {
-            failf(data, "Could not seek stream");
-            return CURLE_FTP_COULDNT_USE_REST;
-          }
-          /* seekerr == CURL_SEEKFUNC_CANTSEEK (can't seek to offset) */
-          else {
-            curl_off_t passed=0;
-            curl_off_t readthisamountnow;
-            curl_off_t actuallyread;
-            do {
-              readthisamountnow = (data->state.resume_from - passed);
-
-              if(readthisamountnow > BUFSIZE)
-                readthisamountnow = BUFSIZE;
-
-              actuallyread =
-                (curl_off_t) conn->fread_func(data->state.buffer, 1,
-                                              (size_t)readthisamountnow,
-                                              conn->fread_in);
-
-              passed += actuallyread;
-              if((actuallyread <= 0) || (actuallyread > readthisamountnow)) {
-                /* this checks for greater-than only to make sure that the
-                   CURL_READFUNC_ABORT return code still aborts */
-                failf(data, "Failed to read data");
-                return CURLE_FTP_COULDNT_USE_REST;
-              }
-            } while(passed < data->state.resume_from);
-          }
-        }
-
-        /* now, decrease the size of the read */
-        if(data->set.infilesize>0) {
-          data->set.infilesize -= data->state.resume_from;
-          data->req.size = data->set.infilesize;
-          Curl_pgrsSetUploadSize(data, data->set.infilesize);
-        }
-
-        SFTP_SEEK(sshc->sftp_handle, data->state.resume_from);
-      }
-      if(data->set.infilesize>0) {
-        data->req.size = data->set.infilesize;
-        Curl_pgrsSetUploadSize(data, data->set.infilesize);
-      }
-      /* upload data */
-      result = Curl_setup_transfer(conn, -1, -1, FALSE, NULL,
-                                   FIRSTSOCKET, NULL);
-
-      /* not set by Curl_setup_transfer to preserve keepon bits */
-      conn->sockfd = conn->writesockfd;
-
-      if(result) {
-        state(conn, SSH_SFTP_CLOSE);
-        sshc->actualcode = result;
-      }
-      else {
-        /* store this original bitmask setup to use later on if we can't
-           figure out a "real" bitmask */
-        sshc->orig_waitfor = data->req.keepon;
-
-        state(conn, SSH_STOP);
-      }
-      break;
-    }
-
-    case SSH_SFTP_CREATE_DIRS_INIT:
-      if(strlen(sftp_scp->path) > 1) {
-        sshc->slash_pos = sftp_scp->path + 1; /* ignore the leading '/' */
-        state(conn, SSH_SFTP_CREATE_DIRS);
-      }
-      else {
-        state(conn, SSH_SFTP_UPLOAD_INIT);
-      }
-      break;
-
-    case SSH_SFTP_CREATE_DIRS:
-      if((sshc->slash_pos = strchr(sshc->slash_pos, '/')) != NULL) {
-        *sshc->slash_pos = 0;
-
-        infof(data, "Creating directory '%s'\n", sftp_scp->path);
-        state(conn, SSH_SFTP_CREATE_DIRS_MKDIR);
-        break;
-      }
-      else {
-        state(conn, SSH_SFTP_UPLOAD_INIT);
-      }
-      break;
-
-    case SSH_SFTP_CREATE_DIRS_MKDIR:
-      /* 'mode' - parameter is preliminary - default to 0644 */
-      rc = libssh2_sftp_mkdir_ex(sshc->sftp_session, sftp_scp->path,
-                                 (unsigned int)strlen(sftp_scp->path),
-                                 data->set.new_directory_perms);
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-      *sshc->slash_pos = '/';
-      ++sshc->slash_pos;
-      if(rc == -1) {
-        unsigned int sftp_err = 0;
-        /*
-         * Abort if failure wasn't that the dir already exists or the
-         * permission was denied (creation might succeed further down the
-         * path) - retry on unspecific FAILURE also
-         */
-        sftp_err = (unsigned int)(libssh2_sftp_last_error(sshc->sftp_session));
-        if((sftp_err != LIBSSH2_FX_FILE_ALREADY_EXISTS) &&
-           (sftp_err != LIBSSH2_FX_FAILURE) &&
-           (sftp_err != LIBSSH2_FX_PERMISSION_DENIED)) {
-          result = sftp_libssh2_error_to_CURLE(sftp_err);
-          state(conn, SSH_SFTP_CLOSE);
-          sshc->actualcode = result?result:CURLE_SSH;
-          break;
-        }
-      }
-      state(conn, SSH_SFTP_CREATE_DIRS);
-      break;
-
-    case SSH_SFTP_READDIR_INIT:
-      /*
-       * This is a directory that we are trying to get, so produce a directory
-       * listing
-       */
-      sshc->sftp_handle = libssh2_sftp_open_ex(sshc->sftp_session,
-                                               sftp_scp->path,
-                                               (unsigned int)
-                                               strlen(sftp_scp->path),
-                                               0, 0, LIBSSH2_SFTP_OPENDIR);
-      if(!sshc->sftp_handle) {
-        if(libssh2_session_last_errno(sshc->ssh_session) ==
-           LIBSSH2_ERROR_EAGAIN) {
-          rc = LIBSSH2_ERROR_EAGAIN;
-          break;
-        }
-        else {
-          err = (int)(libssh2_sftp_last_error(sshc->sftp_session));
-          failf(data, "Could not open directory for reading: %s",
-                sftp_libssh2_strerror(err));
-          state(conn, SSH_SFTP_CLOSE);
-          result = sftp_libssh2_error_to_CURLE(err);
-          sshc->actualcode = result?result:CURLE_SSH;
-          break;
-        }
-      }
-      if((sshc->readdir_filename = malloc(PATH_MAX+1)) == NULL) {
-        state(conn, SSH_SFTP_CLOSE);
-        sshc->actualcode = CURLE_OUT_OF_MEMORY;
-        break;
-      }
-      if((sshc->readdir_longentry = malloc(PATH_MAX+1)) == NULL) {
-        Curl_safefree(sshc->readdir_filename);
-        sshc->readdir_filename = NULL;
-        state(conn, SSH_SFTP_CLOSE);
-        sshc->actualcode = CURLE_OUT_OF_MEMORY;
-        break;
-      }
-      state(conn, SSH_SFTP_READDIR);
-      break;
-
-    case SSH_SFTP_READDIR:
-      sshc->readdir_len = libssh2_sftp_readdir_ex(sshc->sftp_handle,
-                                                  sshc->readdir_filename,
-                                                  PATH_MAX,
-                                                  sshc->readdir_longentry,
-                                                  PATH_MAX,
-                                                  &sshc->readdir_attrs);
-      if(sshc->readdir_len == LIBSSH2_ERROR_EAGAIN) {
-        rc = LIBSSH2_ERROR_EAGAIN;
-        break;
-      }
-      if(sshc->readdir_len > 0) {
-        sshc->readdir_filename[sshc->readdir_len] = '\0';
-
-        if(data->set.ftp_list_only) {
-          char *tmpLine;
-
-          tmpLine = aprintf("%s\n", sshc->readdir_filename);
-          if(tmpLine == NULL) {
-            state(conn, SSH_SFTP_CLOSE);
-            sshc->actualcode = CURLE_OUT_OF_MEMORY;
-            break;
-          }
-          result = Curl_client_write(conn, CLIENTWRITE_BODY,
-                                     tmpLine, sshc->readdir_len+1);
-          Curl_safefree(tmpLine);
-
-          if(result) {
-            state(conn, SSH_STOP);
-            break;
-          }
-          /* since this counts what we send to the client, we include the
-             newline in this counter */
-          data->req.bytecount += sshc->readdir_len+1;
-
-          /* output debug output if that is requested */
-          if(data->set.verbose) {
-            Curl_debug(data, CURLINFO_DATA_OUT, sshc->readdir_filename,
-                       sshc->readdir_len, conn);
-          }
-        }
-        else {
-          sshc->readdir_currLen = (int)strlen(sshc->readdir_longentry);
-          sshc->readdir_totalLen = 80 + sshc->readdir_currLen;
-          sshc->readdir_line = calloc(sshc->readdir_totalLen, 1);
-          if(!sshc->readdir_line) {
-            Curl_safefree(sshc->readdir_filename);
-            sshc->readdir_filename = NULL;
-            Curl_safefree(sshc->readdir_longentry);
-            sshc->readdir_longentry = NULL;
-            state(conn, SSH_SFTP_CLOSE);
-            sshc->actualcode = CURLE_OUT_OF_MEMORY;
-            break;
-          }
-
-          memcpy(sshc->readdir_line, sshc->readdir_longentry,
-                 sshc->readdir_currLen);
-          if((sshc->readdir_attrs.flags & LIBSSH2_SFTP_ATTR_PERMISSIONS) &&
-             ((sshc->readdir_attrs.permissions & LIBSSH2_SFTP_S_IFMT) ==
-              LIBSSH2_SFTP_S_IFLNK)) {
-            sshc->readdir_linkPath = malloc(PATH_MAX + 1);
-            if(sshc->readdir_linkPath == NULL) {
-              Curl_safefree(sshc->readdir_filename);
-              sshc->readdir_filename = NULL;
-              Curl_safefree(sshc->readdir_longentry);
-              sshc->readdir_longentry = NULL;
-              state(conn, SSH_SFTP_CLOSE);
-              sshc->actualcode = CURLE_OUT_OF_MEMORY;
-              break;
-            }
-
-            snprintf(sshc->readdir_linkPath, PATH_MAX, "%s%s", sftp_scp->path,
-                     sshc->readdir_filename);
-            state(conn, SSH_SFTP_READDIR_LINK);
-            break;
-          }
-          state(conn, SSH_SFTP_READDIR_BOTTOM);
-          break;
-        }
-      }
-      else if(sshc->readdir_len == 0) {
-        Curl_safefree(sshc->readdir_filename);
-        sshc->readdir_filename = NULL;
-        Curl_safefree(sshc->readdir_longentry);
-        sshc->readdir_longentry = NULL;
-        state(conn, SSH_SFTP_READDIR_DONE);
-        break;
-      }
-      else if(sshc->readdir_len <= 0) {
-        err = (int)(libssh2_sftp_last_error(sshc->sftp_session));
-        result = sftp_libssh2_error_to_CURLE(err);
-        sshc->actualcode = result?result:CURLE_SSH;
-        failf(data, "Could not open remote file for reading: %s :: %d",
-              sftp_libssh2_strerror(err),
-              libssh2_session_last_errno(sshc->ssh_session));
-        Curl_safefree(sshc->readdir_filename);
-        sshc->readdir_filename = NULL;
-        Curl_safefree(sshc->readdir_longentry);
-        sshc->readdir_longentry = NULL;
-        state(conn, SSH_SFTP_CLOSE);
-        break;
-      }
-      break;
-
-    case SSH_SFTP_READDIR_LINK:
-      sshc->readdir_len =
-        libssh2_sftp_symlink_ex(sshc->sftp_session,
-                                sshc->readdir_linkPath,
-                                (unsigned int) strlen(sshc->readdir_linkPath),
-                                sshc->readdir_filename,
-                                PATH_MAX, LIBSSH2_SFTP_READLINK);
-      if(sshc->readdir_len == LIBSSH2_ERROR_EAGAIN) {
-        rc = LIBSSH2_ERROR_EAGAIN;
-        break;
-      }
-      Curl_safefree(sshc->readdir_linkPath);
-      sshc->readdir_linkPath = NULL;
-      sshc->readdir_line = realloc(sshc->readdir_line,
-                                   sshc->readdir_totalLen + 4 +
-                                   sshc->readdir_len);
-      if(!sshc->readdir_line) {
-        Curl_safefree(sshc->readdir_filename);
-        sshc->readdir_filename = NULL;
-        Curl_safefree(sshc->readdir_longentry);
-        sshc->readdir_longentry = NULL;
-        state(conn, SSH_SFTP_CLOSE);
-        sshc->actualcode = CURLE_OUT_OF_MEMORY;
-        break;
-      }
-
-      sshc->readdir_currLen += snprintf(sshc->readdir_line +
-                                        sshc->readdir_currLen,
-                                        sshc->readdir_totalLen -
-                                        sshc->readdir_currLen,
-                                        " -> %s",
-                                        sshc->readdir_filename);
-
-      state(conn, SSH_SFTP_READDIR_BOTTOM);
-      break;
-
-    case SSH_SFTP_READDIR_BOTTOM:
-      sshc->readdir_currLen += snprintf(sshc->readdir_line +
-                                        sshc->readdir_currLen,
-                                        sshc->readdir_totalLen -
-                                        sshc->readdir_currLen, "\n");
-      result = Curl_client_write(conn, CLIENTWRITE_BODY,
-                                 sshc->readdir_line,
-                                 sshc->readdir_currLen);
-
-      if(result == CURLE_OK) {
-
-        /* output debug output if that is requested */
-        if(data->set.verbose) {
-          Curl_debug(data, CURLINFO_DATA_OUT, sshc->readdir_line,
-                     sshc->readdir_currLen, conn);
-        }
-        data->req.bytecount += sshc->readdir_currLen;
-      }
-      Curl_safefree(sshc->readdir_line);
-      sshc->readdir_line = NULL;
-      if(result) {
-        state(conn, SSH_STOP);
-      }
-      else
-        state(conn, SSH_SFTP_READDIR);
-      break;
-
-    case SSH_SFTP_READDIR_DONE:
-      if(libssh2_sftp_closedir(sshc->sftp_handle) ==
-         LIBSSH2_ERROR_EAGAIN) {
-        rc = LIBSSH2_ERROR_EAGAIN;
-        break;
-      }
-      sshc->sftp_handle = NULL;
-      Curl_safefree(sshc->readdir_filename);
-      sshc->readdir_filename = NULL;
-      Curl_safefree(sshc->readdir_longentry);
-      sshc->readdir_longentry = NULL;
-
-      /* no data to transfer */
-      result = Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-      state(conn, SSH_STOP);
-      break;
-
-    case SSH_SFTP_DOWNLOAD_INIT:
-      /*
-       * Work on getting the specified file
-       */
-      sshc->sftp_handle =
-        libssh2_sftp_open_ex(sshc->sftp_session, sftp_scp->path,
-                             (unsigned int)strlen(sftp_scp->path),
-                             LIBSSH2_FXF_READ, data->set.new_file_perms,
-                             LIBSSH2_SFTP_OPENFILE);
-      if(!sshc->sftp_handle) {
-        if(libssh2_session_last_errno(sshc->ssh_session) ==
-           LIBSSH2_ERROR_EAGAIN) {
-          rc = LIBSSH2_ERROR_EAGAIN;
-          break;
-        }
-        else {
-          err = (int)(libssh2_sftp_last_error(sshc->sftp_session));
-          failf(data, "Could not open remote file for reading: %s",
-                sftp_libssh2_strerror(err));
-          state(conn, SSH_SFTP_CLOSE);
-          result = sftp_libssh2_error_to_CURLE(err);
-          sshc->actualcode = result?result:CURLE_SSH;
-          break;
-        }
-      }
-      state(conn, SSH_SFTP_DOWNLOAD_STAT);
-      break;
-
-    case SSH_SFTP_DOWNLOAD_STAT:
-    {
-      LIBSSH2_SFTP_ATTRIBUTES attrs;
-
-      rc = libssh2_sftp_stat_ex(sshc->sftp_session, sftp_scp->path,
-                                (unsigned int)strlen(sftp_scp->path),
-                                LIBSSH2_SFTP_STAT, &attrs);
-      if(rc == LIBSSH2_ERROR_EAGAIN) {
-        break;
-      }
-      else if(rc) {
-        /*
-         * libssh2_sftp_open() didn't return an error, so maybe the server
-         * just doesn't support stat()
-         */
-        data->req.size = -1;
-        data->req.maxdownload = -1;
-      }
-      else {
-        curl_off_t size;
-
-        size = attrs.filesize;
-        if(conn->data->state.use_range) {
-          curl_off_t from, to;
-          char *ptr;
-          char *ptr2;
-
-          from=curlx_strtoofft(conn->data->state.range, &ptr, 0);
-          while(ptr && *ptr && (isspace((int)*ptr) || (*ptr=='-')))
-            ptr++;
-          to=curlx_strtoofft(ptr, &ptr2, 0);
-          if((ptr == ptr2) /* no "to" value given */
-             || (to >= size)) {
-            to = size - 1;
-          }
-          if(from < 0) {
-            /* from is relative to end of file */
-            from += size;
-          }
-          if(from >= size) {
-            failf(data, "Offset (%"
-                  FORMAT_OFF_T ") was beyond file size (%" FORMAT_OFF_T ")",
-                  from, attrs.filesize);
-            return CURLE_BAD_DOWNLOAD_RESUME;
-          }
-          if(from > to) {
-            from = to;
-            size = 0;
-          }
-          else {
-            size = to - from + 1;
-          }
-
-          SFTP_SEEK(conn->proto.sshc.sftp_handle, from);
-        }
-        data->req.size = size;
-        data->req.maxdownload = size;
-        Curl_pgrsSetDownloadSize(data, size);
-      }
-
-      /* We can resume if we can seek to the resume position */
-      if(data->state.resume_from) {
-        if(data->state.resume_from< 0) {
-          /* We're supposed to download the last abs(from) bytes */
-          if((curl_off_t)attrs.filesize < -data->state.resume_from) {
-            failf(data, "Offset (%"
-                  FORMAT_OFF_T ") was beyond file size (%" FORMAT_OFF_T ")",
-                  data->state.resume_from, attrs.filesize);
-            return CURLE_BAD_DOWNLOAD_RESUME;
-          }
-          /* download from where? */
-          data->state.resume_from = attrs.filesize - data->state.resume_from;
-        }
-        else {
-          if((curl_off_t)attrs.filesize < data->state.resume_from) {
-            failf(data, "Offset (%" FORMAT_OFF_T
-                  ") was beyond file size (%" FORMAT_OFF_T ")",
-                  data->state.resume_from, attrs.filesize);
-            return CURLE_BAD_DOWNLOAD_RESUME;
-          }
-        }
-        /* Does a completed file need to be seeked and started or closed ? */
-        /* Now store the number of bytes we are expected to download */
-        data->req.size = attrs.filesize - data->state.resume_from;
-        data->req.maxdownload = attrs.filesize - data->state.resume_from;
-        Curl_pgrsSetDownloadSize(data,
-                                 attrs.filesize - data->state.resume_from);
-        SFTP_SEEK(sshc->sftp_handle, data->state.resume_from);
-      }
-    }
-    /* Setup the actual download */
-    if(data->req.size == 0) {
-      /* no data to transfer */
-      result = Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-      infof(data, "File already completely downloaded\n");
-      state(conn, SSH_STOP);
-      break;
-    }
-    else {
-      result = Curl_setup_transfer(conn, FIRSTSOCKET, data->req.size,
-                                   FALSE, NULL, -1, NULL);
-
-      /* not set by Curl_setup_transfer to preserve keepon bits */
-      conn->writesockfd = conn->sockfd;
-
-      /* FIXME: here should be explained why we need it to start the
-       * download */
-      conn->cselect_bits = CURL_CSELECT_IN;
-    }
-    if(result) {
-      state(conn, SSH_SFTP_CLOSE);
-      sshc->actualcode = result;
-    }
-    else {
-      state(conn, SSH_STOP);
-    }
-    break;
-
-    case SSH_SFTP_CLOSE:
-      if(sshc->sftp_handle) {
-        rc = libssh2_sftp_close(sshc->sftp_handle);
-        if(rc == LIBSSH2_ERROR_EAGAIN) {
-          break;
-        }
-        else if(rc < 0) {
-          infof(data, "Failed to close libssh2 file\n");
-        }
-        sshc->sftp_handle = NULL;
-      }
-      Curl_safefree(sftp_scp->path);
-      sftp_scp->path = NULL;
-
-      DEBUGF(infof(data, "SFTP DONE done\n"));
-#if 0 /* PREV */
-      state(conn, SSH_SFTP_SHUTDOWN);
-#endif
-      state(conn, SSH_STOP);
-      result = sshc->actualcode;
-      break;
-
-    case SSH_SFTP_SHUTDOWN:
-      /* during times we get here due to a broken transfer and then the
-         sftp_handle might not have been taken down so make sure that is done
-         before we proceed */
-
-      if(sshc->sftp_handle) {
-        rc = libssh2_sftp_close(sshc->sftp_handle);
-        if(rc == LIBSSH2_ERROR_EAGAIN) {
-          break;
-        }
-        else if(rc < 0) {
-          infof(data, "Failed to close libssh2 file\n");
-        }
-        sshc->sftp_handle = NULL;
-      }
-      if(sshc->sftp_session) {
-        rc = libssh2_sftp_shutdown(sshc->sftp_session);
-        if(rc == LIBSSH2_ERROR_EAGAIN) {
-          break;
-        }
-        else if(rc < 0) {
-          infof(data, "Failed to stop libssh2 sftp subsystem\n");
-        }
-        sshc->sftp_session = NULL;
-      }
-
-      Curl_safefree(sshc->homedir);
-      sshc->homedir = NULL;
-
-      state(conn, SSH_SESSION_DISCONNECT);
-      break;
-
-    case SSH_SCP_TRANS_INIT:
-      result = ssh_getworkingpath(conn, sshc->homedir, &sftp_scp->path);
-      if(result) {
-        sshc->actualcode = result;
-        state(conn, SSH_STOP);
-        break;
-      }
-
-      if(data->set.upload) {
-        if(data->set.infilesize < 0) {
-          failf(data, "SCP requires a known file size for upload");
-          sshc->actualcode = CURLE_UPLOAD_FAILED;
-          state(conn, SSH_SCP_CHANNEL_FREE);
-          break;
-        }
-        state(conn, SSH_SCP_UPLOAD_INIT);
-      }
-      else {
-        state(conn, SSH_SCP_DOWNLOAD_INIT);
-      }
-      break;
-
-    case SSH_SCP_UPLOAD_INIT:
-      /*
-       * libssh2 requires that the destination path is a full path that
-       * includes the destination file and name OR ends in a "/" .  If this is
-       * not done the destination file will be named the same name as the last
-       * directory in the path.
-       */
-      sshc->ssh_channel =
-        libssh2_scp_send_ex(sshc->ssh_session, sftp_scp->path,
-                            (int)(data->set.new_file_perms),
-                            (size_t)data->set.infilesize, 0, 0);
-      if(!sshc->ssh_channel) {
-        if(libssh2_session_last_errno(sshc->ssh_session) ==
-           LIBSSH2_ERROR_EAGAIN) {
-          rc = LIBSSH2_ERROR_EAGAIN;
-          break;
-        }
-        else {
-          int ssh_err;
-          char *err_msg;
-
-          ssh_err = (int)(libssh2_session_last_error(sshc->ssh_session,
-                                                     &err_msg, NULL, 0));
-          failf(conn->data, "%s", err_msg);
-          state(conn, SSH_SCP_CHANNEL_FREE);
-          sshc->actualcode = libssh2_session_error_to_CURLE(ssh_err);
-          break;
-        }
-      }
-
-      /* upload data */
-      result = Curl_setup_transfer(conn, -1, data->req.size, FALSE, NULL,
-                                   FIRSTSOCKET, NULL);
-
-      /* not set by Curl_setup_transfer to preserve keepon bits */
-      conn->sockfd = conn->writesockfd;
-
-      if(result) {
-        state(conn, SSH_SCP_CHANNEL_FREE);
-        sshc->actualcode = result;
-      }
-      else {
-        state(conn, SSH_STOP);
-      }
-      break;
-
-    case SSH_SCP_DOWNLOAD_INIT:
-    {
-      /*
-       * We must check the remote file; if it is a directory no values will
-       * be set in sb
-       */
-      struct stat sb;
-      curl_off_t bytecount;
-
-      /* clear the struct scp recv will fill in */
-      memset(&sb, 0, sizeof(struct stat));
-
-      /* get a fresh new channel from the ssh layer */
-      sshc->ssh_channel = libssh2_scp_recv(sshc->ssh_session,
-                                           sftp_scp->path, &sb);
-      if(!sshc->ssh_channel) {
-        if(libssh2_session_last_errno(sshc->ssh_session) ==
-           LIBSSH2_ERROR_EAGAIN) {
-          rc = LIBSSH2_ERROR_EAGAIN;
-          break;
-        }
-        else {
-          int ssh_err;
-          char *err_msg;
-
-          ssh_err = (int)(libssh2_session_last_error(sshc->ssh_session,
-                                                     &err_msg, NULL, 0));
-          failf(conn->data, "%s", err_msg);
-          state(conn, SSH_SCP_CHANNEL_FREE);
-          sshc->actualcode = libssh2_session_error_to_CURLE(ssh_err);
-          break;
-        }
-      }
-
-      /* download data */
-      bytecount = (curl_off_t)sb.st_size;
-      data->req.maxdownload =  (curl_off_t)sb.st_size;
-      result = Curl_setup_transfer(conn, FIRSTSOCKET,
-                                   bytecount, FALSE, NULL, -1, NULL);
-
-      /* not set by Curl_setup_transfer to preserve keepon bits */
-      conn->writesockfd = conn->sockfd;
-
-      /* FIXME: here should be explained why we need it to start the
-       * download */
-      conn->cselect_bits = CURL_CSELECT_IN;
-
-      if(result) {
-        state(conn, SSH_SCP_CHANNEL_FREE);
-        sshc->actualcode = result;
-      }
-      else
-        state(conn, SSH_STOP);
-    }
-    break;
-
-    case SSH_SCP_DONE:
-      if(data->set.upload)
-        state(conn, SSH_SCP_SEND_EOF);
-      else
-        state(conn, SSH_SCP_CHANNEL_FREE);
-      break;
-
-    case SSH_SCP_SEND_EOF:
-      if(sshc->ssh_channel) {
-        rc = libssh2_channel_send_eof(sshc->ssh_channel);
-        if(rc == LIBSSH2_ERROR_EAGAIN) {
-          break;
-        }
-        else if(rc) {
-          infof(data, "Failed to send libssh2 channel EOF\n");
-        }
-      }
-      state(conn, SSH_SCP_WAIT_EOF);
-      break;
-
-    case SSH_SCP_WAIT_EOF:
-      if(sshc->ssh_channel) {
-        rc = libssh2_channel_wait_eof(sshc->ssh_channel);
-        if(rc == LIBSSH2_ERROR_EAGAIN) {
-          break;
-        }
-        else if(rc) {
-          infof(data, "Failed to get channel EOF: %d\n", rc);
-        }
-      }
-      state(conn, SSH_SCP_WAIT_CLOSE);
-      break;
-
-    case SSH_SCP_WAIT_CLOSE:
-      if(sshc->ssh_channel) {
-        rc = libssh2_channel_wait_closed(sshc->ssh_channel);
-        if(rc == LIBSSH2_ERROR_EAGAIN) {
-          break;
-        }
-        else if(rc) {
-          infof(data, "Channel failed to close: %d\n", rc);
-        }
-      }
-      state(conn, SSH_SCP_CHANNEL_FREE);
-      break;
-
-    case SSH_SCP_CHANNEL_FREE:
-      if(sshc->ssh_channel) {
-        rc = libssh2_channel_free(sshc->ssh_channel);
-        if(rc == LIBSSH2_ERROR_EAGAIN) {
-          break;
-        }
-        else if(rc < 0) {
-          infof(data, "Failed to free libssh2 scp subsystem\n");
-        }
-        sshc->ssh_channel = NULL;
-      }
-      DEBUGF(infof(data, "SCP DONE phase complete\n"));
-#if 0 /* PREV */
-      state(conn, SSH_SESSION_DISCONNECT);
-#endif
-      state(conn, SSH_STOP);
-      result = sshc->actualcode;
-      break;
-
-    case SSH_SESSION_DISCONNECT:
-      /* during weird times when we've been prematurely aborted, the channel
-         is still alive when we reach this state and we MUST kill the channel
-         properly first */
-      if(sshc->ssh_channel) {
-        rc = libssh2_channel_free(sshc->ssh_channel);
-        if(rc == LIBSSH2_ERROR_EAGAIN) {
-          break;
-        }
-        else if(rc < 0) {
-          infof(data, "Failed to free libssh2 scp subsystem\n");
-        }
-        sshc->ssh_channel = NULL;
-      }
-
-      if(sshc->ssh_session) {
-        rc = libssh2_session_disconnect(sshc->ssh_session, "Shutdown");
-        if(rc == LIBSSH2_ERROR_EAGAIN) {
-          break;
-        }
-        else if(rc < 0) {
-          infof(data, "Failed to disconnect libssh2 session\n");
-        }
-      }
-
-      Curl_safefree(sshc->homedir);
-      sshc->homedir = NULL;
-
-      state(conn, SSH_SESSION_FREE);
-      break;
-
-    case SSH_SESSION_FREE:
-#ifdef HAVE_LIBSSH2_KNOWNHOST_API
-      if(sshc->kh) {
-        libssh2_knownhost_free(sshc->kh);
-        sshc->kh = NULL;
-      }
-#endif
-
-      if(sshc->ssh_session) {
-        rc = libssh2_session_free(sshc->ssh_session);
-        if(rc == LIBSSH2_ERROR_EAGAIN) {
-          break;
-        }
-        else if(rc < 0) {
-          infof(data, "Failed to free libssh2 session\n");
-        }
-        sshc->ssh_session = NULL;
-      }
-      conn->bits.close = TRUE;
-      sshc->nextstate = SSH_NO_STATE;
-      state(conn, SSH_STOP);
-      result = sshc->actualcode;
-      break;
-
-    case SSH_QUIT:
-      /* fallthrough, just stop! */
-    default:
-      /* internal error */
-      sshc->nextstate = SSH_NO_STATE;
-      state(conn, SSH_STOP);
-      break;
-    }
-
-  } while(!rc && (sshc->state != SSH_STOP));
-
-  if(rc == LIBSSH2_ERROR_EAGAIN) {
-    /* we would block, we need to wait for the socket to be ready (in the
-       right direction too)! */
-    *block = TRUE;
-  }
-
-  return result;
-}
-
-/* called by the multi interface to figure out what socket(s) to wait for and
-   for what actions in the DO_DONE, PERFORM and WAITPERFORM states */
-static int ssh_perform_getsock(const struct connectdata *conn,
-                               curl_socket_t *sock, /* points to numsocks
-                                                       number of sockets */
-                               int numsocks)
-{
-#ifdef HAVE_LIBSSH2_SESSION_BLOCK_DIRECTION
-  int bitmap = GETSOCK_BLANK;
-  (void)numsocks;
-
-  sock[0] = conn->sock[FIRSTSOCKET];
-
-  if(conn->waitfor & KEEP_RECV)
-    bitmap |= GETSOCK_READSOCK(FIRSTSOCKET);
-
-  if(conn->waitfor & KEEP_SEND)
-    bitmap |= GETSOCK_WRITESOCK(FIRSTSOCKET);
-
-  return bitmap;
-#else
-  /* if we don't know the direction we can use the generic *_getsock()
-     function even for the protocol_connect and doing states */
-  return Curl_single_getsock(conn, sock, numsocks);
-#endif
-}
-
-/* Generic function called by the multi interface to figure out what socket(s)
-   to wait for and for what actions during the DOING and PROTOCONNECT states*/
-static int ssh_getsock(struct connectdata *conn,
-                       curl_socket_t *sock, /* points to numsocks number
-                                               of sockets */
-                       int numsocks)
-{
-#ifndef HAVE_LIBSSH2_SESSION_BLOCK_DIRECTION
-  (void)conn;
-  (void)sock;
-  (void)numsocks;
-  /* if we don't know any direction we can just play along as we used to and
-     not provide any sensible info */
-  return GETSOCK_BLANK;
-#else
-  /* if we know the direction we can use the generic *_getsock() function even
-     for the protocol_connect and doing states */
-  return ssh_perform_getsock(conn, sock, numsocks);
-#endif
-}
-
-#ifdef HAVE_LIBSSH2_SESSION_BLOCK_DIRECTION
-/*
- * When one of the libssh2 functions has returned LIBSSH2_ERROR_EAGAIN this
- * function is used to figure out in what direction and stores this info so
- * that the multi interface can take advantage of it. Make sure to call this
- * function in all cases so that when it _doesn't_ return EAGAIN we can
- * restore the default wait bits.
- */
-static void ssh_block2waitfor(struct connectdata *conn, bool block)
-{
-  struct ssh_conn *sshc = &conn->proto.sshc;
-  int dir;
-  if(!block)
-    conn->waitfor = 0;
-  else if((dir = libssh2_session_block_directions(sshc->ssh_session))) {
-    /* translate the libssh2 define bits into our own bit defines */
-    conn->waitfor = ((dir&LIBSSH2_SESSION_BLOCK_INBOUND)?KEEP_RECV:0) |
-      ((dir&LIBSSH2_SESSION_BLOCK_OUTBOUND)?KEEP_SEND:0);
-  }
-  else
-    /* It didn't block or libssh2 didn't reveal in which direction, put back
-       the original set */
-    conn->waitfor = sshc->orig_waitfor;
-}
-#else
-  /* no libssh2 directional support so we simply don't know */
-#define ssh_block2waitfor(x,y)
-#endif
-
-/* called repeatedly until done from multi.c */
-static CURLcode ssh_multi_statemach(struct connectdata *conn, bool *done)
-{
-  struct ssh_conn *sshc = &conn->proto.sshc;
-  CURLcode result = CURLE_OK;
-  bool block; /* we store the status and use that to provide a ssh_getsock()
-                 implementation */
-
-  result = ssh_statemach_act(conn, &block);
-  *done = (bool)(sshc->state == SSH_STOP);
-  ssh_block2waitfor(conn, block);
-
-  return result;
-}
-
-static CURLcode ssh_easy_statemach(struct connectdata *conn)
-{
-  struct ssh_conn *sshc = &conn->proto.sshc;
-  CURLcode result = CURLE_OK;
-
-  while((sshc->state != SSH_STOP) && !result) {
-    bool block;
-    result = ssh_statemach_act(conn, &block);
-
-#ifdef HAVE_LIBSSH2_SESSION_BLOCK_DIRECTION
-    if((CURLE_OK == result) && block) {
-      int dir = libssh2_session_block_directions(sshc->ssh_session);
-      curl_socket_t sock = conn->sock[FIRSTSOCKET];
-      curl_socket_t fd_read = CURL_SOCKET_BAD;
-      curl_socket_t fd_write = CURL_SOCKET_BAD;
-      if (LIBSSH2_SESSION_BLOCK_INBOUND & dir) {
-        fd_read = sock;
-      }
-      if (LIBSSH2_SESSION_BLOCK_OUTBOUND & dir) {
-        fd_write = sock;
-      }
-      /* wait for the socket to become ready */
-      Curl_socket_ready(fd_read, fd_write, 1000); /* ignore result */
-    }
-#endif
-
-  }
-
-  return result;
-}
-
-/*
- * SSH setup and connection
- */
-static CURLcode ssh_init(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  struct SSHPROTO *ssh;
-  struct ssh_conn *sshc = &conn->proto.sshc;
-
-  sshc->actualcode = CURLE_OK; /* reset error code */
-  sshc->secondCreateDirs =0;   /* reset the create dir attempt state
-                                  variable */
-
-  if(data->state.proto.ssh)
-    return CURLE_OK;
-
-  ssh = calloc(1, sizeof(struct SSHPROTO));
-  if(!ssh)
-    return CURLE_OUT_OF_MEMORY;
-
-  data->state.proto.ssh = ssh;
-
-  return CURLE_OK;
-}
-
-/*
- * Curl_ssh_connect() gets called from Curl_protocol_connect() to allow us to
- * do protocol-specific actions at connect-time.
- */
-static CURLcode ssh_connect(struct connectdata *conn, bool *done)
-{
-#ifdef CURL_LIBSSH2_DEBUG
-  curl_socket_t sock;
-#endif
-  struct ssh_conn *ssh;
-  CURLcode result;
-  struct SessionHandle *data = conn->data;
-
-  /* We default to persistent connections. We set this already in this connect
-     function to make the re-use checks properly be able to check this bit. */
-  conn->bits.close = FALSE;
-
-  /* If there already is a protocol-specific struct allocated for this
-     sessionhandle, deal with it */
-  Curl_reset_reqproto(conn);
-
-  result = ssh_init(conn);
-  if(result)
-    return result;
-
-  ssh = &conn->proto.sshc;
-
-#ifdef CURL_LIBSSH2_DEBUG
-  if(conn->user) {
-    infof(data, "User: %s\n", conn->user);
-  }
-  if(conn->passwd) {
-    infof(data, "Password: %s\n", conn->passwd);
-  }
-  sock = conn->sock[FIRSTSOCKET];
-#endif /* CURL_LIBSSH2_DEBUG */
-
-  ssh->ssh_session = libssh2_session_init_ex(libssh2_malloc, libssh2_free,
-                                             libssh2_realloc, conn);
-  if(ssh->ssh_session == NULL) {
-    failf(data, "Failure initialising ssh session");
-    return CURLE_FAILED_INIT;
-  }
-
-#ifdef HAVE_LIBSSH2_KNOWNHOST_API
-  if(data->set.str[STRING_SSH_KNOWNHOSTS]) {
-    int rc;
-    ssh->kh = libssh2_knownhost_init(ssh->ssh_session);
-    if(!ssh->kh) {
-      /* eeek. TODO: free the ssh_session! */
-      return CURLE_FAILED_INIT;
-    }
-
-    /* read all known hosts from there */
-    rc = libssh2_knownhost_readfile(ssh->kh,
-                                    data->set.str[STRING_SSH_KNOWNHOSTS],
-                                    LIBSSH2_KNOWNHOST_FILE_OPENSSH);
-    if(rc) {
-      infof(data, "Failed to read known hosts from %s\n",
-            data->set.str[STRING_SSH_KNOWNHOSTS]);
-    }
-  }
-#endif /* HAVE_LIBSSH2_KNOWNHOST_API */
-
-#ifdef CURL_LIBSSH2_DEBUG
-  libssh2_trace(ssh->ssh_session, ~0);
-  infof(data, "SSH socket: %d\n", (int)sock);
-#endif /* CURL_LIBSSH2_DEBUG */
-
-  state(conn, SSH_S_STARTUP);
-
-  if(data->state.used_interface == Curl_if_multi)
-    result = ssh_multi_statemach(conn, done);
-  else {
-    result = ssh_easy_statemach(conn);
-    if(!result)
-      *done = TRUE;
-  }
-
-  return result;
-}
-
-/*
- ***********************************************************************
- *
- * scp_perform()
- *
- * This is the actual DO function for SCP. Get a file according to
- * the options previously setup.
- */
-
-static
-CURLcode scp_perform(struct connectdata *conn,
-                      bool *connected,
-                      bool *dophase_done)
-{
-  CURLcode result = CURLE_OK;
-
-  DEBUGF(infof(conn->data, "DO phase starts\n"));
-
-  *dophase_done = FALSE; /* not done yet */
-
-  /* start the first command in the DO phase */
-  state(conn, SSH_SCP_TRANS_INIT);
-
-  /* run the state-machine */
-  if(conn->data->state.used_interface == Curl_if_multi) {
-    result = ssh_multi_statemach(conn, dophase_done);
-  }
-  else {
-    result = ssh_easy_statemach(conn);
-    *dophase_done = TRUE; /* with the easy interface we are done here */
-  }
-  *connected = conn->bits.tcpconnect;
-
-  if(*dophase_done) {
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-  }
-
-  return result;
-}
-
-/* called from multi.c while DOing */
-static CURLcode scp_doing(struct connectdata *conn,
-                               bool *dophase_done)
-{
-  CURLcode result;
-  result = ssh_multi_statemach(conn, dophase_done);
-
-  if(*dophase_done) {
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-  }
-  return result;
-}
-
-/*
- * The DO function is generic for both protocols. There was previously two
- * separate ones but this way means less duplicated code.
- */
-
-static CURLcode ssh_do(struct connectdata *conn, bool *done)
-{
-  CURLcode res;
-  bool connected = 0;
-  struct SessionHandle *data = conn->data;
-
-  *done = FALSE; /* default to false */
-
-  /*
-    Since connections can be re-used between SessionHandles, this might be a
-    connection already existing but on a fresh SessionHandle struct so we must
-    make sure we have a good 'struct SSHPROTO' to play with. For new
-    connections, the struct SSHPROTO is allocated and setup in the
-    ssh_connect() function.
-  */
-  Curl_reset_reqproto(conn);
-  res = ssh_init(conn);
-  if(res)
-    return res;
-
-  data->req.size = -1; /* make sure this is unknown at this point */
-
-  Curl_pgrsSetUploadCounter(data, 0);
-  Curl_pgrsSetDownloadCounter(data, 0);
-  Curl_pgrsSetUploadSize(data, 0);
-  Curl_pgrsSetDownloadSize(data, 0);
-
-  if(conn->protocol & PROT_SCP)
-    res = scp_perform(conn, &connected,  done);
-  else
-    res = sftp_perform(conn, &connected,  done);
-
-  return res;
-}
-
-/* BLOCKING, but the function is using the state machine so the only reason
-   this is still blocking is that the multi interface code has no support for
-   disconnecting operations that takes a while */
-static CURLcode scp_disconnect(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct ssh_conn *ssh = &conn->proto.sshc;
-
-  Curl_safefree(conn->data->state.proto.ssh);
-  conn->data->state.proto.ssh = NULL;
-
-  if(ssh->ssh_session) {
-    /* only if there's a session still around to use! */
-
-    state(conn, SSH_SESSION_DISCONNECT);
-
-    result = ssh_easy_statemach(conn);
-  }
-
-  return result;
-}
-
-/* generic done function for both SCP and SFTP called from their specific
-   done functions */
-static CURLcode ssh_done(struct connectdata *conn, CURLcode status)
-{
-  CURLcode result = CURLE_OK;
-  struct SSHPROTO *sftp_scp = conn->data->state.proto.ssh;
-
-  if(status == CURLE_OK) {
-    /* run the state-machine
-
-       TODO: when the multi interface is used, this _really_ should be using
-       the ssh_multi_statemach function but we have no general support for
-       non-blocking DONE operations, not in the multi state machine and with
-       Curl_done() invokes on several places in the code!
-    */
-    result = ssh_easy_statemach(conn);
-  }
-  else
-    result = status;
-
-  Curl_safefree(sftp_scp->path);
-  sftp_scp->path = NULL;
-  Curl_pgrsDone(conn);
-
-  conn->data->req.keepon = 0; /* clear all bits */
-  return result;
-}
-
-
-static CURLcode scp_done(struct connectdata *conn, CURLcode status,
-                         bool premature)
-{
-  (void)premature; /* not used */
-
-  if(status == CURLE_OK)
-    state(conn, SSH_SCP_DONE);
-
-  return ssh_done(conn, status);
-
-}
-
-/* return number of received (decrypted) bytes */
-ssize_t Curl_scp_send(struct connectdata *conn, int sockindex,
-                      const void *mem, size_t len)
-{
-  ssize_t nwrite;
-  (void)sockindex; /* we only support SCP on the fixed known primary socket */
-
-  /* libssh2_channel_write() returns int! */
-  nwrite = (ssize_t)
-    libssh2_channel_write(conn->proto.sshc.ssh_channel, mem, len);
-
-  ssh_block2waitfor(conn, (nwrite == LIBSSH2_ERROR_EAGAIN)?TRUE:FALSE);
-
-  if(nwrite == LIBSSH2_ERROR_EAGAIN)
-    return 0;
-
-  return nwrite;
-}
-
-/*
- * If the read would block (EWOULDBLOCK) we return -1. Otherwise we return
- * a regular CURLcode value.
- */
-ssize_t Curl_scp_recv(struct connectdata *conn, int sockindex,
-                      char *mem, size_t len)
-{
-  ssize_t nread;
-  (void)sockindex; /* we only support SCP on the fixed known primary socket */
-
-  /* libssh2_channel_read() returns int */
-  nread = (ssize_t)
-    libssh2_channel_read(conn->proto.sshc.ssh_channel, mem, len);
-
-  ssh_block2waitfor(conn, (nread == LIBSSH2_ERROR_EAGAIN)?TRUE:FALSE);
-
-  return nread;
-}
-
-/*
- * =============== SFTP ===============
- */
-
-/*
- ***********************************************************************
- *
- * sftp_perform()
- *
- * This is the actual DO function for SFTP. Get a file/directory according to
- * the options previously setup.
- */
-
-static
-CURLcode sftp_perform(struct connectdata *conn,
-                      bool *connected,
-                      bool *dophase_done)
-{
-  CURLcode result = CURLE_OK;
-
-  DEBUGF(infof(conn->data, "DO phase starts\n"));
-
-  *dophase_done = FALSE; /* not done yet */
-
-  /* start the first command in the DO phase */
-  state(conn, SSH_SFTP_QUOTE_INIT);
-
-  /* run the state-machine */
-  if(conn->data->state.used_interface == Curl_if_multi) {
-    result = ssh_multi_statemach(conn, dophase_done);
-  }
-  else {
-    result = ssh_easy_statemach(conn);
-    *dophase_done = TRUE; /* with the easy interface we are done here */
-  }
-  *connected = conn->bits.tcpconnect;
-
-  if(*dophase_done) {
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-  }
-
-  return result;
-}
-
-/* called from multi.c while DOing */
-static CURLcode sftp_doing(struct connectdata *conn,
-                           bool *dophase_done)
-{
-  CURLcode result;
-  result = ssh_multi_statemach(conn, dophase_done);
-
-  if(*dophase_done) {
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-  }
-  return result;
-}
-
-/* BLOCKING, but the function is using the state machine so the only reason
-   this is still blocking is that the multi interface code has no support for
-   disconnecting operations that takes a while */
-static CURLcode sftp_disconnect(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-
-  DEBUGF(infof(conn->data, "SSH DISCONNECT starts now\n"));
-
-  Curl_safefree(conn->data->state.proto.ssh);
-  conn->data->state.proto.ssh = NULL;
-
-  if(conn->proto.sshc.ssh_session) {
-    /* only if there's a session still around to use! */
-    state(conn, SSH_SFTP_SHUTDOWN);
-    result = ssh_easy_statemach(conn);
-  }
-
-  DEBUGF(infof(conn->data, "SSH DISCONNECT is done\n"));
-
-  return result;
-
-}
-
-static CURLcode sftp_done(struct connectdata *conn, CURLcode status,
-                               bool premature)
-{
-  struct ssh_conn *sshc = &conn->proto.sshc;
-
-  if(status == CURLE_OK) {
-    /* Before we shut down, see if there are any post-quote commands to
-       send: */
-    if(!status && !premature && conn->data->set.postquote) {
-      sshc->nextstate = SSH_SFTP_CLOSE;
-      state(conn, SSH_SFTP_POSTQUOTE_INIT);
-    }
-    else
-      state(conn, SSH_SFTP_CLOSE);
-  }
-  return ssh_done(conn, status);
-}
-
-/* return number of sent bytes */
-ssize_t Curl_sftp_send(struct connectdata *conn, int sockindex,
-                       const void *mem, size_t len)
-{
-  ssize_t nwrite;   /* libssh2_sftp_write() used to return size_t in 0.14
-                       but is changed to ssize_t in 0.15. These days we don't
-                       support libssh2 0.15*/
-  (void)sockindex;
-
-  nwrite = libssh2_sftp_write(conn->proto.sshc.sftp_handle, mem, len);
-
-  ssh_block2waitfor(conn, (nwrite == LIBSSH2_ERROR_EAGAIN)?TRUE:FALSE);
-
-  if(nwrite == LIBSSH2_ERROR_EAGAIN)
-    return 0;
-
-  return nwrite;
-}
-
-/*
- * Return number of received (decrypted) bytes
- */
-ssize_t Curl_sftp_recv(struct connectdata *conn, int sockindex,
-                       char *mem, size_t len)
-{
-  ssize_t nread;
-  (void)sockindex;
-
-  nread = libssh2_sftp_read(conn->proto.sshc.sftp_handle, mem, len);
-
-  ssh_block2waitfor(conn, (nread == LIBSSH2_ERROR_EAGAIN)?TRUE:FALSE);
-
-  return nread;
-}
-
-/* The get_pathname() function is being borrowed from OpenSSH sftp.c
-   version 4.6p1. */
-/*
- * Copyright (c) 2001-2004 Damien Miller <djm at openbsd.org>
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-static CURLcode
-get_pathname(const char **cpp, char **path)
-{
-  const char *cp = *cpp, *end;
-  char quot;
-  unsigned int i, j;
-  static const char WHITESPACE[] = " \t\r\n";
-
-  cp += strspn(cp, WHITESPACE);
-  if(!*cp) {
-    *cpp = cp;
-    *path = NULL;
-    return CURLE_QUOTE_ERROR;
-  }
-
-  *path = malloc(strlen(cp) + 1);
-  if(*path == NULL)
-    return CURLE_OUT_OF_MEMORY;
-
-  /* Check for quoted filenames */
-  if(*cp == '\"' || *cp == '\'') {
-    quot = *cp++;
-
-    /* Search for terminating quote, unescape some chars */
-    for (i = j = 0; i <= strlen(cp); i++) {
-      if(cp[i] == quot) {  /* Found quote */
-        i++;
-        (*path)[j] = '\0';
-        break;
-      }
-      if(cp[i] == '\0') {  /* End of string */
-        /*error("Unterminated quote");*/
-        goto fail;
-      }
-      if(cp[i] == '\\') {  /* Escaped characters */
-        i++;
-        if(cp[i] != '\'' && cp[i] != '\"' &&
-            cp[i] != '\\') {
-          /*error("Bad escaped character '\\%c'",
-              cp[i]);*/
-          goto fail;
-        }
-      }
-      (*path)[j++] = cp[i];
-    }
-
-    if(j == 0) {
-      /*error("Empty quotes");*/
-      goto fail;
-    }
-    *cpp = cp + i + strspn(cp + i, WHITESPACE);
-  }
-  else {
-    /* Read to end of filename */
-    end = strpbrk(cp, WHITESPACE);
-    if(end == NULL)
-      end = strchr(cp, '\0');
-    *cpp = end + strspn(end, WHITESPACE);
-
-    memcpy(*path, cp, end - cp);
-    (*path)[end - cp] = '\0';
-  }
-  return CURLE_OK;
-
-  fail:
-    Curl_safefree(*path);
-    *path = NULL;
-    return CURLE_QUOTE_ERROR;
-}
-
-
-static const char *sftp_libssh2_strerror(unsigned long err)
-{
-  switch (err) {
-    case LIBSSH2_FX_NO_SUCH_FILE:
-      return "No such file or directory";
-
-    case LIBSSH2_FX_PERMISSION_DENIED:
-      return "Permission denied";
-
-    case LIBSSH2_FX_FAILURE:
-      return "Operation failed";
-
-    case LIBSSH2_FX_BAD_MESSAGE:
-      return "Bad message from SFTP server";
-
-    case LIBSSH2_FX_NO_CONNECTION:
-      return "Not connected to SFTP server";
-
-    case LIBSSH2_FX_CONNECTION_LOST:
-      return "Connection to SFTP server lost";
-
-    case LIBSSH2_FX_OP_UNSUPPORTED:
-      return "Operation not supported by SFTP server";
-
-    case LIBSSH2_FX_INVALID_HANDLE:
-      return "Invalid handle";
-
-    case LIBSSH2_FX_NO_SUCH_PATH:
-      return "No such file or directory";
-
-    case LIBSSH2_FX_FILE_ALREADY_EXISTS:
-      return "File already exists";
-
-    case LIBSSH2_FX_WRITE_PROTECT:
-      return "File is write protected";
-
-    case LIBSSH2_FX_NO_MEDIA:
-      return "No media";
-
-    case LIBSSH2_FX_NO_SPACE_ON_FILESYSTEM:
-      return "Disk full";
-
-    case LIBSSH2_FX_QUOTA_EXCEEDED:
-      return "User quota exceeded";
-
-    case LIBSSH2_FX_UNKNOWN_PRINCIPLE:
-      return "Unknown principle";
-
-    case LIBSSH2_FX_LOCK_CONFlICT:
-      return "File lock conflict";
-
-    case LIBSSH2_FX_DIR_NOT_EMPTY:
-      return "Directory not empty";
-
-    case LIBSSH2_FX_NOT_A_DIRECTORY:
-      return "Not a directory";
-
-    case LIBSSH2_FX_INVALID_FILENAME:
-      return "Invalid filename";
-
-    case LIBSSH2_FX_LINK_LOOP:
-      return "Link points to itself";
-  }
-  return "Unknown error in libssh2";
-}
-
-#endif /* USE_LIBSSH2 */
diff --git a/src/other/curl/lib/ssh.h b/src/other/curl/lib/ssh.h
deleted file mode 100644
index 4e268c2..0000000
--- a/src/other/curl/lib/ssh.h
+++ /dev/null
@@ -1,187 +0,0 @@
-#ifndef HEADER_CURL_SSH_H
-#define HEADER_CURL_SSH_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef HAVE_LIBSSH2_H
-#include <libssh2.h>
-#include <libssh2_sftp.h>
-#endif /* HAVE_LIBSSH2_H */
-
-/****************************************************************************
- * SSH unique setup
- ***************************************************************************/
-typedef enum {
-  SSH_NO_STATE = -1,  /* Used for "nextState" so say there is none */
-  SSH_STOP = 0,       /* do nothing state, stops the state machine */
-
-  SSH_S_STARTUP,      /* Session startup, First state in SSH-CONNECT */
-  SSH_HOSTKEY,        /* verify hostkey */
-  SSH_AUTHLIST,
-  SSH_AUTH_PKEY_INIT,
-  SSH_AUTH_PKEY,
-  SSH_AUTH_PASS_INIT,
-  SSH_AUTH_PASS,
-  SSH_AUTH_HOST_INIT,
-  SSH_AUTH_HOST,
-  SSH_AUTH_KEY_INIT,
-  SSH_AUTH_KEY,
-  SSH_AUTH_DONE,
-  SSH_SFTP_INIT,
-  SSH_SFTP_REALPATH,   /* Last state in SSH-CONNECT */
-
-  SSH_SFTP_QUOTE_INIT, /* First state in SFTP-DO */
-  SSH_SFTP_POSTQUOTE_INIT, /* (Possibly) First state in SFTP-DONE */
-  SSH_SFTP_QUOTE,
-  SSH_SFTP_NEXT_QUOTE,
-  SSH_SFTP_QUOTE_STAT,
-  SSH_SFTP_QUOTE_SETSTAT,
-  SSH_SFTP_QUOTE_SYMLINK,
-  SSH_SFTP_QUOTE_MKDIR,
-  SSH_SFTP_QUOTE_RENAME,
-  SSH_SFTP_QUOTE_RMDIR,
-  SSH_SFTP_QUOTE_UNLINK,
-  SSH_SFTP_TRANS_INIT,
-  SSH_SFTP_UPLOAD_INIT,
-  SSH_SFTP_CREATE_DIRS_INIT,
-  SSH_SFTP_CREATE_DIRS,
-  SSH_SFTP_CREATE_DIRS_MKDIR,
-  SSH_SFTP_READDIR_INIT,
-  SSH_SFTP_READDIR,
-  SSH_SFTP_READDIR_LINK,
-  SSH_SFTP_READDIR_BOTTOM,
-  SSH_SFTP_READDIR_DONE,
-  SSH_SFTP_DOWNLOAD_INIT,
-  SSH_SFTP_DOWNLOAD_STAT, /* Last state in SFTP-DO */
-  SSH_SFTP_CLOSE,    /* Last state in SFTP-DONE */
-  SSH_SFTP_SHUTDOWN, /* First state in SFTP-DISCONNECT */
-  SSH_SCP_TRANS_INIT, /* First state in SCP-DO */
-  SSH_SCP_UPLOAD_INIT,
-  SSH_SCP_DOWNLOAD_INIT,
-  SSH_SCP_DONE,
-  SSH_SCP_SEND_EOF,
-  SSH_SCP_WAIT_EOF,
-  SSH_SCP_WAIT_CLOSE,
-  SSH_SCP_CHANNEL_FREE,   /* Last state in SCP-DONE */
-  SSH_SESSION_DISCONNECT, /* First state in SCP-DISCONNECT */
-  SSH_SESSION_FREE,       /* Last state in SCP/SFTP-DISCONNECT */
-  SSH_QUIT,
-  SSH_LAST  /* never used */
-} sshstate;
-
-/* this struct is used in the HandleData struct which is part of the
-   SessionHandle, which means this is used on a per-easy handle basis.
-   Everything that is strictly related to a connection is banned from this
-   struct. */
-struct SSHPROTO {
-  char *path;                  /* the path we operate on */
-};
-
-/* ssh_conn is used for struct connection-oriented data in the connectdata
-   struct */
-struct ssh_conn {
-  const char *authlist;       /* List of auth. methods, managed by libssh2 */
-#ifdef USE_LIBSSH2
-  const char *passphrase;     /* pass-phrase to use */
-  char *rsa_pub;              /* path name */
-  char *rsa;                  /* path name */
-  bool authed;                /* the connection has been authenticated fine */
-  sshstate state;             /* always use ssh.c:state() to change state! */
-  sshstate nextstate;         /* the state to goto after stopping */
-  CURLcode actualcode;        /* the actual error code */
-  struct curl_slist *quote_item; /* for the quote option */
-  char *quote_path1;          /* two generic pointers for the QUOTE stuff */
-  char *quote_path2;
-  LIBSSH2_SFTP_ATTRIBUTES quote_attrs; /* used by the SFTP_QUOTE state */
-  char *homedir;              /* when doing SFTP we figure out home dir in the
-                                 connect phase */
-
-  /* Here's a set of struct members used by the SFTP_READDIR state */
-  LIBSSH2_SFTP_ATTRIBUTES readdir_attrs;
-  char *readdir_filename;
-  char *readdir_longentry;
-  int readdir_len, readdir_totalLen, readdir_currLen;
-  char *readdir_line;
-  char *readdir_linkPath;
-  /* end of READDIR stuff */
-
-  int secondCreateDirs;         /* counter use by the code to see if the
-                                   second attempt has been made to change
-                                   to/create a directory */
-  char *slash_pos;              /* used by the SFTP_CREATE_DIRS state */
-  LIBSSH2_SESSION *ssh_session; /* Secure Shell session */
-  LIBSSH2_CHANNEL *ssh_channel; /* Secure Shell channel handle */
-  LIBSSH2_SFTP *sftp_session;   /* SFTP handle */
-  LIBSSH2_SFTP_HANDLE *sftp_handle;
-  int orig_waitfor;             /* default READ/WRITE bits wait for */
-
-  /* note that HAVE_LIBSSH2_KNOWNHOST_API is a define set in the libssh2.h
-     header */
-#ifdef HAVE_LIBSSH2_KNOWNHOST_API
-  LIBSSH2_KNOWNHOSTS *kh;
-#endif
-#endif /* USE_LIBSSH2 */
-};
-
-#ifdef USE_LIBSSH2
-
-#if !defined(LIBSSH2_VERSION_NUM) || (LIBSSH2_VERSION_NUM < 0x001000)
-#  error "SCP/SFTP protocols require libssh2 0.16 or later"
-#endif
-
-#if defined(LIBSSH2_VERSION_NUM) && (LIBSSH2_VERSION_NUM >= 0x010000)
-/* libssh2_sftp_seek64() has only ever been provided by libssh2 1.0 or
-   later */
-#  define HAVE_LIBSSH2_SFTP_SEEK64 1
-#else
-#  undef HAVE_LIBSSH2_SFTP_SEEK64
-#endif
-
-
-extern const struct Curl_handler Curl_handler_scp;
-extern const struct Curl_handler Curl_handler_sftp;
-
-ssize_t Curl_scp_send(struct connectdata *conn, int sockindex,
-                      const void *mem, size_t len);
-ssize_t Curl_scp_recv(struct connectdata *conn, int sockindex,
-                      char *mem, size_t len);
-
-ssize_t Curl_sftp_send(struct connectdata *conn, int sockindex,
-                       const void *mem, size_t len);
-ssize_t Curl_sftp_recv(struct connectdata *conn, int sockindex,
-                       char *mem, size_t len);
-
-#define Curl_ssh_enabled(conn,prot) (conn->protocol & prot)
-
-#else /* USE_LIBSSH2 */
-
-#define Curl_ssh_enabled(x,y) 0
-#define Curl_scp_send(a,b,c,d) 0
-#define Curl_sftp_send(a,b,c,d) 0
-#define Curl_scp_recv(a,b,c,d) 0
-#define Curl_sftp_recv(a,b,c,d) 0
-
-#endif /* USE_LIBSSH2 */
-
-#endif /* HEADER_CURL_SSH_H */
diff --git a/src/other/curl/lib/sslgen.c b/src/other/curl/lib/sslgen.c
deleted file mode 100644
index df2a407..0000000
--- a/src/other/curl/lib/sslgen.c
+++ /dev/null
@@ -1,489 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* This file is for implementing all "generic" SSL functions that all libcurl
-   internals should use. It is then responsible for calling the proper
-   "backend" function.
-
-   SSL-functions in libcurl should call functions in this source file, and not
-   to any specific SSL-layer.
-
-   Curl_ssl_ - prefix for generic ones
-   Curl_ossl_ - prefix for OpenSSL ones
-   Curl_gtls_ - prefix for GnuTLS ones
-   Curl_nss_ - prefix for NSS ones
-
-   Note that this source code uses curlssl_* functions, and they are all
-   defines/macros #defined by the lib-specific header files.
-
-   "SSL/TLS Strong Encryption: An Introduction"
-   http://httpd.apache.org/docs-2.0/ssl/ssl_intro.html
-*/
-
-#include "setup.h"
-
-#include <string.h>
-#include <stdlib.h>
-#include <ctype.h>
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-#include "urldata.h"
-#define SSLGEN_C
-#include "sslgen.h" /* generic SSL protos etc */
-#include "ssluse.h" /* OpenSSL versions */
-#include "gtls.h"   /* GnuTLS versions */
-#include "nssg.h"   /* NSS versions */
-#include "qssl.h"   /* QSOSSL versions */
-#include "sendf.h"
-#include "rawstr.h"
-#include "url.h"
-#include "curl_memory.h"
-#include "progress.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-static bool safe_strequal(char* str1, char* str2)
-{
-  if(str1 && str2)
-    /* both pointers point to something then compare them */
-    return (bool)(0 != Curl_raw_equal(str1, str2));
-  else
-    /* if both pointers are NULL then treat them as equal */
-    return (bool)(!str1 && !str2);
-}
-
-bool
-Curl_ssl_config_matches(struct ssl_config_data* data,
-                        struct ssl_config_data* needle)
-{
-  if((data->version == needle->version) &&
-     (data->verifypeer == needle->verifypeer) &&
-     (data->verifyhost == needle->verifyhost) &&
-     safe_strequal(data->CApath, needle->CApath) &&
-     safe_strequal(data->CAfile, needle->CAfile) &&
-     safe_strequal(data->random_file, needle->random_file) &&
-     safe_strequal(data->egdsocket, needle->egdsocket) &&
-     safe_strequal(data->cipher_list, needle->cipher_list))
-    return TRUE;
-
-  return FALSE;
-}
-
-bool
-Curl_clone_ssl_config(struct ssl_config_data *source,
-                      struct ssl_config_data *dest)
-{
-  dest->sessionid = source->sessionid;
-  dest->verifyhost = source->verifyhost;
-  dest->verifypeer = source->verifypeer;
-  dest->version = source->version;
-
-  if(source->CAfile) {
-    dest->CAfile = strdup(source->CAfile);
-    if(!dest->CAfile)
-      return FALSE;
-  }
-  else
-    dest->CAfile = NULL;
-
-  if(source->CApath) {
-    dest->CApath = strdup(source->CApath);
-    if(!dest->CApath)
-      return FALSE;
-  }
-  else
-    dest->CApath = NULL;
-
-  if(source->cipher_list) {
-    dest->cipher_list = strdup(source->cipher_list);
-    if(!dest->cipher_list)
-      return FALSE;
-  }
-  else
-    dest->cipher_list = NULL;
-
-  if(source->egdsocket) {
-    dest->egdsocket = strdup(source->egdsocket);
-    if(!dest->egdsocket)
-      return FALSE;
-  }
-  else
-    dest->egdsocket = NULL;
-
-  if(source->random_file) {
-    dest->random_file = strdup(source->random_file);
-    if(!dest->random_file)
-      return FALSE;
-  }
-  else
-    dest->random_file = NULL;
-
-  return TRUE;
-}
-
-void Curl_free_ssl_config(struct ssl_config_data* sslc)
-{
-  Curl_safefree(sslc->CAfile);
-  Curl_safefree(sslc->CApath);
-  Curl_safefree(sslc->cipher_list);
-  Curl_safefree(sslc->egdsocket);
-  Curl_safefree(sslc->random_file);
-}
-
-#ifdef USE_SSL
-
-/* "global" init done? */
-static bool init_ssl=FALSE;
-
-/**
- * Global SSL init
- *
- * @retval 0 error initializing SSL
- * @retval 1 SSL initialized successfully
- */
-int Curl_ssl_init(void)
-{
-  /* make sure this is only done once */
-  if(init_ssl)
-    return 1;
-  init_ssl = TRUE; /* never again */
-
-  return curlssl_init();
-}
-
-
-/* Global cleanup */
-void Curl_ssl_cleanup(void)
-{
-  if(init_ssl) {
-    /* only cleanup if we did a previous init */
-    curlssl_cleanup();
-    init_ssl = FALSE;
-  }
-}
-
-CURLcode
-Curl_ssl_connect(struct connectdata *conn, int sockindex)
-{
-  CURLcode res;
-  /* mark this is being ssl-enabled from here on. */
-  conn->ssl[sockindex].use = TRUE;
-  conn->ssl[sockindex].state = ssl_connection_negotiating;
-
-  res = curlssl_connect(conn, sockindex);
-
-  if(!res)
-    Curl_pgrsTime(conn->data, TIMER_APPCONNECT); /* SSL is connected */
-
-  return res;
-}
-
-CURLcode
-Curl_ssl_connect_nonblocking(struct connectdata *conn, int sockindex,
-                             bool *done)
-{
-#ifdef curlssl_connect_nonblocking
-  CURLcode res;
-  /* mark this is being ssl requested from here on. */
-  conn->ssl[sockindex].use = TRUE;
-  res = curlssl_connect_nonblocking(conn, sockindex, done);
-  if(!res && *done == TRUE)
-    Curl_pgrsTime(conn->data, TIMER_APPCONNECT); /* SSL is connected */
-  return res;
-#else
-  *done = TRUE; /* fallback to BLOCKING */
-  conn->ssl[sockindex].use = TRUE;
-  return curlssl_connect(conn, sockindex);
-#endif /* non-blocking connect support */
-}
-
-/*
- * Check if there's a session ID for the given connection in the cache, and if
- * there's one suitable, it is provided. Returns TRUE when no entry matched.
- */
-int Curl_ssl_getsessionid(struct connectdata *conn,
-                          void **ssl_sessionid,
-                          size_t *idsize) /* set 0 if unknown */
-{
-  struct curl_ssl_session *check;
-  struct SessionHandle *data = conn->data;
-  long i;
-
-  if(!conn->ssl_config.sessionid)
-    /* session ID re-use is disabled */
-    return TRUE;
-
-  for(i=0; i< data->set.ssl.numsessions; i++) {
-    check = &data->state.session[i];
-    if(!check->sessionid)
-      /* not session ID means blank entry */
-      continue;
-    if(Curl_raw_equal(conn->host.name, check->name) &&
-       (conn->remote_port == check->remote_port) &&
-       Curl_ssl_config_matches(&conn->ssl_config, &check->ssl_config)) {
-      /* yes, we have a session ID! */
-      data->state.sessionage++;            /* increase general age */
-      check->age = data->state.sessionage; /* set this as used in this age */
-      *ssl_sessionid = check->sessionid;
-      if(idsize)
-        *idsize = check->idsize;
-      return FALSE;
-    }
-  }
-  *ssl_sessionid = NULL;
-  return TRUE;
-}
-
-/*
- * Kill a single session ID entry in the cache.
- */
-static int kill_session(struct curl_ssl_session *session)
-{
-  if(session->sessionid) {
-    /* defensive check */
-
-    /* free the ID the SSL-layer specific way */
-    curlssl_session_free(session->sessionid);
-
-    session->sessionid=NULL;
-    session->age = 0; /* fresh */
-
-    Curl_free_ssl_config(&session->ssl_config);
-
-    Curl_safefree(session->name);
-    session->name = NULL; /* no name */
-
-    return 0; /* ok */
-  }
-  else
-    return 1;
-}
-
-/*
- * Delete the given session ID from the cache.
- */
-void Curl_ssl_delsessionid(struct connectdata *conn, void *ssl_sessionid)
-{
-  int i;
-  for(i=0; i< conn->data->set.ssl.numsessions; i++) {
-    struct curl_ssl_session *check = &conn->data->state.session[i];
-
-    if (check->sessionid == ssl_sessionid) {
-      kill_session(check);
-      break;
-    }
-  }
-}
-
-/*
- * Store session id in the session cache. The ID passed on to this function
- * must already have been extracted and allocated the proper way for the SSL
- * layer. Curl_XXXX_session_free() will be called to free/kill the session ID
- * later on.
- */
-CURLcode Curl_ssl_addsessionid(struct connectdata *conn,
-                               void *ssl_sessionid,
-                               size_t idsize)
-{
-  long i;
-  struct SessionHandle *data=conn->data; /* the mother of all structs */
-  struct curl_ssl_session *store = &data->state.session[0];
-  long oldest_age=data->state.session[0].age; /* zero if unused */
-  char *clone_host;
-
-  /* Even though session ID re-use might be disabled, that only disables USING
-     IT. We still store it here in case the re-using is again enabled for an
-     upcoming transfer */
-
-  clone_host = strdup(conn->host.name);
-  if(!clone_host)
-    return CURLE_OUT_OF_MEMORY; /* bail out */
-
-  /* Now we should add the session ID and the host name to the cache, (remove
-     the oldest if necessary) */
-
-  /* find an empty slot for us, or find the oldest */
-  for(i=1; (i<data->set.ssl.numsessions) &&
-        data->state.session[i].sessionid; i++) {
-    if(data->state.session[i].age < oldest_age) {
-      oldest_age = data->state.session[i].age;
-      store = &data->state.session[i];
-    }
-  }
-  if(i == data->set.ssl.numsessions)
-    /* cache is full, we must "kill" the oldest entry! */
-    kill_session(store);
-  else
-    store = &data->state.session[i]; /* use this slot */
-
-  /* now init the session struct wisely */
-  store->sessionid = ssl_sessionid;
-  store->idsize = idsize;
-  store->age = data->state.sessionage;    /* set current age */
-  if (store->name)
-    /* free it if there's one already present */
-    free(store->name);
-  store->name = clone_host;               /* clone host name */
-  store->remote_port = conn->remote_port; /* port number */
-
-  if(!Curl_clone_ssl_config(&conn->ssl_config, &store->ssl_config))
-    return CURLE_OUT_OF_MEMORY;
-
-  return CURLE_OK;
-}
-
-
-void Curl_ssl_close_all(struct SessionHandle *data)
-{
-  long i;
-  /* kill the session ID cache */
-  if(data->state.session) {
-    for(i=0; i< data->set.ssl.numsessions; i++)
-      /* the single-killer function handles empty table slots */
-      kill_session(&data->state.session[i]);
-
-    /* free the cache data */
-    free(data->state.session);
-    data->state.session = NULL;
-  }
-
-  curlssl_close_all(data);
-}
-
-void Curl_ssl_close(struct connectdata *conn, int sockindex)
-{
-  DEBUGASSERT((sockindex <= 1) && (sockindex >= -1));
-  curlssl_close(conn, sockindex);
-}
-
-CURLcode Curl_ssl_shutdown(struct connectdata *conn, int sockindex)
-{
-  if(curlssl_shutdown(conn, sockindex))
-    return CURLE_SSL_SHUTDOWN_FAILED;
-
-  conn->ssl[sockindex].use = FALSE; /* get back to ordinary socket usage */
-  conn->ssl[sockindex].state = ssl_connection_none;
-
-  return CURLE_OK;
-}
-
-/* Selects an SSL crypto engine
- */
-CURLcode Curl_ssl_set_engine(struct SessionHandle *data, const char *engine)
-{
-  return curlssl_set_engine(data, engine);
-}
-
-/* Selects the default SSL crypto engine
- */
-CURLcode Curl_ssl_set_engine_default(struct SessionHandle *data)
-{
-  return curlssl_set_engine_default(data);
-}
-
-/* Return list of OpenSSL crypto engine names. */
-struct curl_slist *Curl_ssl_engines_list(struct SessionHandle *data)
-{
-  return curlssl_engines_list(data);
-}
-
-ssize_t Curl_ssl_send(struct connectdata *conn,
-                      int sockindex,
-                      const void *mem,
-                      size_t len,
-                      int *curlcode)
-{
-  return curlssl_send(conn, sockindex, mem, len, curlcode);
-}
-
-ssize_t Curl_ssl_recv(struct connectdata *conn,
-                      int sockindex,
-                      char *mem,
-                      size_t len,
-                      int *curlcode)
-{
-  return curlssl_recv(conn, sockindex, mem, len, curlcode);
-}
-
-
-/*
- * This sets up a session ID cache to the specified size. Make sure this code
- * is agnostic to what underlying SSL technology we use.
- */
-CURLcode Curl_ssl_initsessions(struct SessionHandle *data, long amount)
-{
-  struct curl_ssl_session *session;
-
-  if(data->state.session)
-    /* this is just a precaution to prevent multiple inits */
-    return CURLE_OK;
-
-  session = calloc(amount, sizeof(struct curl_ssl_session));
-  if(!session)
-    return CURLE_OUT_OF_MEMORY;
-
-  /* store the info in the SSL section */
-  data->set.ssl.numsessions = amount;
-  data->state.session = session;
-  data->state.sessionage = 1; /* this is brand new */
-  return CURLE_OK;
-}
-
-size_t Curl_ssl_version(char *buffer, size_t size)
-{
-  return curlssl_version(buffer, size);
-}
-
-/*
- * This function tries to determine connection status.
- *
- * Return codes:
- *     1 means the connection is still in place
- *     0 means the connection has been closed
- *    -1 means the connection status is unknown
- */
-int Curl_ssl_check_cxn(struct connectdata *conn)
-{
-  return curlssl_check_cxn(conn);
-}
-
-bool Curl_ssl_data_pending(const struct connectdata *conn,
-                           int connindex)
-{
-  return curlssl_data_pending(conn, connindex);
-}
-
-void Curl_ssl_free_certinfo(struct SessionHandle *data)
-{
-  int i;
-  struct curl_certinfo *ci = &data->info.certs;
-  if(ci->num_of_certs) {
-    /* free all individual lists used */
-    for(i=0; i<ci->num_of_certs; i++)
-      curl_slist_free_all(ci->certinfo[i]);
-    free(ci->certinfo); /* free the actual array too */
-    ci->num_of_certs = 0;
-  }
-}
-#endif /* USE_SSL */
diff --git a/src/other/curl/lib/sslgen.h b/src/other/curl/lib/sslgen.h
deleted file mode 100644
index c56265e..0000000
--- a/src/other/curl/lib/sslgen.h
+++ /dev/null
@@ -1,114 +0,0 @@
-#ifndef __SSLGEN_H
-#define __SSLGEN_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-bool Curl_ssl_config_matches(struct ssl_config_data* data,
-                             struct ssl_config_data* needle);
-bool Curl_clone_ssl_config(struct ssl_config_data* source,
-                           struct ssl_config_data* dest);
-void Curl_free_ssl_config(struct ssl_config_data* sslc);
-
-#ifdef USE_SSL
-int Curl_ssl_init(void);
-void Curl_ssl_cleanup(void);
-CURLcode Curl_ssl_connect(struct connectdata *conn, int sockindex);
-CURLcode Curl_ssl_connect_nonblocking(struct connectdata *conn,
-                                      int sockindex,
-                                      bool *done);
-/* tell the SSL stuff to close down all open information regarding
-   connections (and thus session ID caching etc) */
-void Curl_ssl_close_all(struct SessionHandle *data);
-void Curl_ssl_close(struct connectdata *conn, int sockindex);
-CURLcode Curl_ssl_shutdown(struct connectdata *conn, int sockindex);
-CURLcode Curl_ssl_set_engine(struct SessionHandle *data, const char *engine);
-/* Sets engine as default for all SSL operations */
-CURLcode Curl_ssl_set_engine_default(struct SessionHandle *data);
-struct curl_slist *Curl_ssl_engines_list(struct SessionHandle *data);
-
-/* If the write would block (EWOULDBLOCK) or fail, we we return -1.
- * The error or -1 (for EWOULDBLOCK) is then stored in *curlcode.
- * Otherwise we return the count of (non-SSL) bytes transfered.
- */
-ssize_t Curl_ssl_send(struct connectdata *conn, /* connection data */
-                      int sockindex,            /* socketindex */
-                      const void *mem,          /* data to write */
-                      size_t len,               /* max amount to write */
-                      int *curlcode);           /* error to return,
-                                                   -1 means EWOULDBLOCK */
-
-/* If the read would block (EWOULDBLOCK) or fail, we we return -1.
- * The error or -1 (for EWOULDBLOCK) is then stored in *curlcode.
- * Otherwise we return the count of (non-SSL) bytes transfered.
- */
-ssize_t Curl_ssl_recv(struct connectdata *conn, /* connection data */
-                      int sockindex,            /* socketindex */
-                      char *mem,                /* store read data here */
-                      size_t len,               /* max amount to read */
-                      int *curlcode);           /* error to return,
-                                                   -1 means EWOULDBLOCK */
-
-/* init the SSL session ID cache */
-CURLcode Curl_ssl_initsessions(struct SessionHandle *, long);
-size_t Curl_ssl_version(char *buffer, size_t size);
-bool Curl_ssl_data_pending(const struct connectdata *conn,
-                           int connindex);
-int Curl_ssl_check_cxn(struct connectdata *conn);
-void Curl_ssl_free_certinfo(struct SessionHandle *data);
-
-/* Functions to be used by SSL library adaptation functions */
-
-/* extract a session ID */
-int Curl_ssl_getsessionid(struct connectdata *conn,
-                          void **ssl_sessionid,
-                          size_t *idsize) /* set 0 if unknown */;
-/* add a new session ID */
-CURLcode Curl_ssl_addsessionid(struct connectdata *conn,
-                               void *ssl_sessionid,
-                               size_t idsize);
-/* delete a session from the cache */
-void Curl_ssl_delsessionid(struct connectdata *conn, void *ssl_sessionid);
-
-#define SSL_SHUTDOWN_TIMEOUT 10000 /* ms */
-
-#else
-/* When SSL support is not present, just define away these function calls */
-#define Curl_ssl_init() 1
-#define Curl_ssl_cleanup() do { } while (0)
-#define Curl_ssl_connect(x,y) CURLE_FAILED_INIT
-#define Curl_ssl_close_all(x)
-#define Curl_ssl_close(x,y)
-#define Curl_ssl_shutdown(x,y) CURLE_FAILED_INIT
-#define Curl_ssl_set_engine(x,y) CURLE_FAILED_INIT
-#define Curl_ssl_set_engine_default(x) CURLE_FAILED_INIT
-#define Curl_ssl_engines_list(x) NULL
-#define Curl_ssl_send(a,b,c,d,e) -1
-#define Curl_ssl_recv(a,b,c,d,e) -1
-#define Curl_ssl_initsessions(x,y) CURLE_OK
-#define Curl_ssl_version(x,y) 0
-#define Curl_ssl_data_pending(x,y) 0
-#define Curl_ssl_check_cxn(x) 0
-#define Curl_ssl_free_certinfo(x)
-
-#endif
-
-#endif /* USE_SSL */
diff --git a/src/other/curl/lib/ssluse.c b/src/other/curl/lib/ssluse.c
deleted file mode 100644
index d9cf382..0000000
--- a/src/other/curl/lib/ssluse.c
+++ /dev/null
@@ -1,2639 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * Source file for all OpenSSL-specific code for the TLS/SSL layer. No code
- * but sslgen.c should ever call or use these functions.
- */
-
-/*
- * The original SSLeay-using code for curl was written by Linas Vepstas and
- * Sampo Kellomaki 1998.
- */
-
-#include "setup.h"
-
-#include <string.h>
-#include <stdlib.h>
-#include <ctype.h>
-#ifdef HAVE_LIMITS_H
-#include <limits.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "formdata.h" /* for the boundary function */
-#include "url.h" /* for the ssl config check function */
-#include "inet_pton.h"
-#include "ssluse.h"
-#include "connect.h"
-#include "strequal.h"
-#include "select.h"
-#include "sslgen.h"
-#include "rawstr.h"
-
-#define _MPRINTF_REPLACE /* use the internal *printf() functions */
-#include <curl/mprintf.h>
-
-#ifdef USE_SSLEAY
-
-#ifdef USE_OPENSSL
-#include <openssl/rand.h>
-#include <openssl/x509v3.h>
-#include <openssl/dsa.h>
-#include <openssl/dh.h>
-#else
-#include <rand.h>
-#include <x509v3.h>
-#endif
-
-#include "curl_memory.h"
-#include "easyif.h" /* for Curl_convert_from_utf8 prototype */
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#if OPENSSL_VERSION_NUMBER >= 0x0090581fL
-#define HAVE_SSL_GET1_SESSION 1
-#else
-#undef HAVE_SSL_GET1_SESSION
-#endif
-
-#if OPENSSL_VERSION_NUMBER >= 0x00904100L
-#define HAVE_USERDATA_IN_PWD_CALLBACK 1
-#else
-#undef HAVE_USERDATA_IN_PWD_CALLBACK
-#endif
-
-#if OPENSSL_VERSION_NUMBER >= 0x00907001L
-/* ENGINE_load_private_key() takes four arguments */
-#define HAVE_ENGINE_LOAD_FOUR_ARGS
-#include <openssl/ui.h>
-#else
-/* ENGINE_load_private_key() takes three arguments */
-#undef HAVE_ENGINE_LOAD_FOUR_ARGS
-#endif
-
-#if (OPENSSL_VERSION_NUMBER >= 0x00903001L) && defined(HAVE_OPENSSL_PKCS12_H)
-/* OpenSSL has PKCS 12 support */
-#define HAVE_PKCS12_SUPPORT
-#else
-/* OpenSSL/SSLEay does not have PKCS12 support */
-#undef HAVE_PKCS12_SUPPORT
-#endif
-
-#if OPENSSL_VERSION_NUMBER >= 0x00906001L
-#define HAVE_ERR_ERROR_STRING_N 1
-#endif
-
-#if OPENSSL_VERSION_NUMBER >= 0x00909000L
-#define SSL_METHOD_QUAL const
-#else
-#define SSL_METHOD_QUAL
-#endif
-
-#if OPENSSL_VERSION_NUMBER >= 0x00907000L
-/* 0.9.6 didn't have X509_STORE_set_flags() */
-#define HAVE_X509_STORE_SET_FLAGS 1
-#else
-#define X509_STORE_set_flags(x,y)
-#endif
-
-/*
- * Number of bytes to read from the random number seed file. This must be
- * a finite value (because some entropy "files" like /dev/urandom have
- * an infinite length), but must be large enough to provide enough
- * entopy to properly seed OpenSSL's PRNG.
- */
-#define RAND_LOAD_LENGTH 1024
-
-#ifndef HAVE_USERDATA_IN_PWD_CALLBACK
-static char global_passwd[64];
-#endif
-
-static int passwd_callback(char *buf, int num, int verify
-#ifdef HAVE_USERDATA_IN_PWD_CALLBACK
-                           /* This was introduced in 0.9.4, we can set this
-                              using SSL_CTX_set_default_passwd_cb_userdata()
-                              */
-                           , void *global_passwd
-#endif
-                           )
-{
-  if(verify)
-    fprintf(stderr, "%s\n", buf);
-  else {
-    if(num > (int)strlen((char *)global_passwd)) {
-      strcpy(buf, global_passwd);
-      return (int)strlen(buf);
-    }
-  }
-  return 0;
-}
-
-/*
- * rand_enough() is a function that returns TRUE if we have seeded the random
- * engine properly. We use some preprocessor magic to provide a seed_enough()
- * macro to use, just to prevent a compiler warning on this function if we
- * pass in an argument that is never used.
- */
-
-#ifdef HAVE_RAND_STATUS
-#define seed_enough(x) rand_enough()
-static bool rand_enough(void)
-{
-  return (bool)(0 != RAND_status());
-}
-#else
-#define seed_enough(x) rand_enough(x)
-static bool rand_enough(int nread)
-{
-  /* this is a very silly decision to make */
-  return (bool)(nread > 500);
-}
-#endif
-
-static int ossl_seed(struct SessionHandle *data)
-{
-  char *buf = data->state.buffer; /* point to the big buffer */
-  int nread=0;
-
-  /* Q: should we add support for a random file name as a libcurl option?
-     A: Yes, it is here */
-
-#ifndef RANDOM_FILE
-  /* if RANDOM_FILE isn't defined, we only perform this if an option tells
-     us to! */
-  if(data->set.ssl.random_file)
-#define RANDOM_FILE "" /* doesn't matter won't be used */
-#endif
-  {
-    /* let the option override the define */
-    nread += RAND_load_file((data->set.str[STRING_SSL_RANDOM_FILE]?
-                             data->set.str[STRING_SSL_RANDOM_FILE]:
-                             RANDOM_FILE),
-                            RAND_LOAD_LENGTH);
-    if(seed_enough(nread))
-      return nread;
-  }
-
-#if defined(HAVE_RAND_EGD)
-  /* only available in OpenSSL 0.9.5 and later */
-  /* EGD_SOCKET is set at configure time or not at all */
-#ifndef EGD_SOCKET
-  /* If we don't have the define set, we only do this if the egd-option
-     is set */
-  if(data->set.str[STRING_SSL_EGDSOCKET])
-#define EGD_SOCKET "" /* doesn't matter won't be used */
-#endif
-  {
-    /* If there's an option and a define, the option overrides the
-       define */
-    int ret = RAND_egd(data->set.str[STRING_SSL_EGDSOCKET]?
-                       data->set.str[STRING_SSL_EGDSOCKET]:EGD_SOCKET);
-    if(-1 != ret) {
-      nread += ret;
-      if(seed_enough(nread))
-        return nread;
-    }
-  }
-#endif
-
-  /* If we get here, it means we need to seed the PRNG using a "silly"
-     approach! */
-#ifdef HAVE_RAND_SCREEN
-  /* if RAND_screen() is present, it was called during global init */
-  nread = 100; /* just a value */
-#else
-  {
-    int len;
-    char *area;
-
-    /* Changed call to RAND_seed to use the underlying RAND_add implementation
-     * directly.  Do this in a loop, with the amount of additional entropy
-     * being dependent upon the algorithm used by Curl_FormBoundary(): N bytes
-     * of a 7-bit ascii set. -- Richard Gorton, March 11 2003.
-     */
-
-    do {
-      area = Curl_FormBoundary();
-      if(!area)
-        return 3; /* out of memory */
-
-      len = (int)strlen(area);
-      RAND_add(area, len, (len >> 1));
-
-      free(area); /* now remove the random junk */
-    } while(!RAND_status());
-  }
-#endif
-
-  /* generates a default path for the random seed file */
-  buf[0]=0; /* blank it first */
-  RAND_file_name(buf, BUFSIZE);
-  if(buf[0]) {
-    /* we got a file name to try */
-    nread += RAND_load_file(buf, RAND_LOAD_LENGTH);
-    if(seed_enough(nread))
-      return nread;
-  }
-
-  infof(data, "libcurl is now using a weak random seed!\n");
-  return nread;
-}
-
-int Curl_ossl_seed(struct SessionHandle *data)
-{
-  /* we have the "SSL is seeded" boolean static to prevent multiple
-     time-consuming seedings in vain */
-  static bool ssl_seeded = FALSE;
-
-  if(!ssl_seeded || data->set.str[STRING_SSL_RANDOM_FILE] ||
-     data->set.str[STRING_SSL_EGDSOCKET]) {
-    ossl_seed(data);
-    ssl_seeded = TRUE;
-  }
-  return 0;
-}
-
-
-#ifndef SSL_FILETYPE_ENGINE
-#define SSL_FILETYPE_ENGINE 42
-#endif
-#ifndef SSL_FILETYPE_PKCS12
-#define SSL_FILETYPE_PKCS12 43
-#endif
-static int do_file_type(const char *type)
-{
-  if(!type || !type[0])
-    return SSL_FILETYPE_PEM;
-  if(Curl_raw_equal(type, "PEM"))
-    return SSL_FILETYPE_PEM;
-  if(Curl_raw_equal(type, "DER"))
-    return SSL_FILETYPE_ASN1;
-  if(Curl_raw_equal(type, "ENG"))
-    return SSL_FILETYPE_ENGINE;
-  if(Curl_raw_equal(type, "P12"))
-    return SSL_FILETYPE_PKCS12;
-  return -1;
-}
-
-static
-int cert_stuff(struct connectdata *conn,
-               SSL_CTX* ctx,
-               char *cert_file,
-               const char *cert_type,
-               char *key_file,
-               const char *key_type)
-{
-  struct SessionHandle *data = conn->data;
-
-  int file_type = do_file_type(cert_type);
-
-  if(cert_file != NULL || file_type == SSL_FILETYPE_ENGINE) {
-    SSL *ssl;
-    X509 *x509;
-    int cert_done = 0;
-
-    if(data->set.str[STRING_KEY_PASSWD]) {
-#ifndef HAVE_USERDATA_IN_PWD_CALLBACK
-      /*
-       * If password has been given, we store that in the global
-       * area (*shudder*) for a while:
-       */
-      size_t len = strlen(data->set.key_passwd);
-      if(len < sizeof(global_passwd))
-        memcpy(global_passwd, data->set.key_passwd, len+1);
-#else
-      /*
-       * We set the password in the callback userdata
-       */
-      SSL_CTX_set_default_passwd_cb_userdata(ctx,
-                                             data->set.str[STRING_KEY_PASSWD]);
-#endif
-      /* Set passwd callback: */
-      SSL_CTX_set_default_passwd_cb(ctx, passwd_callback);
-    }
-
-
-#define SSL_CLIENT_CERT_ERR \
-    "unable to use client certificate (no key found or wrong pass phrase?)"
-
-    switch(file_type) {
-    case SSL_FILETYPE_PEM:
-      /* SSL_CTX_use_certificate_chain_file() only works on PEM files */
-      if(SSL_CTX_use_certificate_chain_file(ctx,
-                                            cert_file) != 1) {
-        failf(data, SSL_CLIENT_CERT_ERR);
-        return 0;
-      }
-      break;
-
-    case SSL_FILETYPE_ASN1:
-      /* SSL_CTX_use_certificate_file() works with either PEM or ASN1, but
-         we use the case above for PEM so this can only be performed with
-         ASN1 files. */
-      if(SSL_CTX_use_certificate_file(ctx,
-                                      cert_file,
-                                      file_type) != 1) {
-        failf(data, SSL_CLIENT_CERT_ERR);
-        return 0;
-      }
-      break;
-    case SSL_FILETYPE_ENGINE:
-#if defined(HAVE_OPENSSL_ENGINE_H) && defined(ENGINE_CTRL_GET_CMD_FROM_NAME)
-      {
-        if(data->state.engine) {
-          const char *cmd_name = "LOAD_CERT_CTRL";
-          struct {
-            const char *cert_id;
-            X509 *cert;
-          } params;
-
-          params.cert_id = cert_file;
-          params.cert = NULL;
-
-          /* Does the engine supports LOAD_CERT_CTRL ? */
-          if (!ENGINE_ctrl(data->state.engine, ENGINE_CTRL_GET_CMD_FROM_NAME,
-                           0, (void *)cmd_name, NULL)) {
-            failf(data, "ssl engine does not support loading certificates");
-            return 0;
-          }
-
-          /* Load the certificate from the engine */
-          if (!ENGINE_ctrl_cmd(data->state.engine, cmd_name,
-                               0, &params, NULL, 1)) {
-            failf(data, "ssl engine cannot load client cert with id"
-                  " '%s' [%s]", cert_file,
-                  ERR_error_string(ERR_get_error(), NULL));
-            return 0;
-          }
-
-          if (!params.cert) {
-            failf(data, "ssl engine didn't initialized the certificate "
-                  "properly.");
-            return 0;
-          }
-
-          if(SSL_CTX_use_certificate(ctx, params.cert) != 1) {
-            failf(data, "unable to set client certificate");
-            X509_free(params.cert);
-            return 0;
-          }
-          X509_free(params.cert); /* we don't need the handle any more... */
-        }
-        else {
-          failf(data, "crypto engine not set, can't load certificate");
-          return 0;
-        }
-      }
-      break;
-#else
-      failf(data, "file type ENG for certificate not implemented");
-      return 0;
-#endif
-
-    case SSL_FILETYPE_PKCS12:
-    {
-#ifdef HAVE_PKCS12_SUPPORT
-      FILE *f;
-      PKCS12 *p12;
-      EVP_PKEY *pri;
-      STACK_OF(X509) *ca = NULL;
-      int i;
-
-      f = fopen(cert_file,"rb");
-      if(!f) {
-        failf(data, "could not open PKCS12 file '%s'", cert_file);
-        return 0;
-      }
-      p12 = d2i_PKCS12_fp(f, NULL);
-      fclose(f);
-
-      if(!p12) {
-        failf(data, "error reading PKCS12 file '%s'", cert_file );
-        return 0;
-      }
-
-      PKCS12_PBE_add();
-
-      if(!PKCS12_parse(p12, data->set.str[STRING_KEY_PASSWD], &pri, &x509,
-                        &ca)) {
-        failf(data,
-              "could not parse PKCS12 file, check password, OpenSSL error %s",
-              ERR_error_string(ERR_get_error(), NULL) );
-        PKCS12_free(p12);
-        return 0;
-      }
-
-      PKCS12_free(p12);
-
-      if(SSL_CTX_use_certificate(ctx, x509) != 1) {
-        failf(data, SSL_CLIENT_CERT_ERR);
-        EVP_PKEY_free(pri);
-        X509_free(x509);
-        return 0;
-      }
-
-      if(SSL_CTX_use_PrivateKey(ctx, pri) != 1) {
-        failf(data, "unable to use private key from PKCS12 file '%s'",
-              cert_file);
-        EVP_PKEY_free(pri);
-        X509_free(x509);
-        return 0;
-      }
-
-      if (!SSL_CTX_check_private_key (ctx)) {
-        failf(data, "private key from PKCS12 file '%s' "
-              "does not match certificate in same file", cert_file);
-        EVP_PKEY_free(pri);
-        X509_free(x509);
-        return 0;
-      }
-      /* Set Certificate Verification chain */
-      if (ca && sk_X509_num(ca)) {
-        for (i = 0; i < sk_X509_num(ca); i++) {
-          if (!SSL_CTX_add_extra_chain_cert(ctx,sk_X509_value(ca, i))) {
-            failf(data, "cannot add certificate to certificate chain");
-            EVP_PKEY_free(pri);
-            X509_free(x509);
-            return 0;
-          }
-          if (!SSL_CTX_add_client_CA(ctx, sk_X509_value(ca, i))) {
-            failf(data, "cannot add certificate to client CA list");
-            EVP_PKEY_free(pri);
-            X509_free(x509);
-            return 0;
-          }
-        }
-      }
-
-      EVP_PKEY_free(pri);
-      X509_free(x509);
-      cert_done = 1;
-      break;
-#else
-      failf(data, "file type P12 for certificate not supported");
-      return 0;
-#endif
-    }
-    default:
-      failf(data, "not supported file type '%s' for certificate", cert_type);
-      return 0;
-    }
-
-    file_type = do_file_type(key_type);
-
-    switch(file_type) {
-    case SSL_FILETYPE_PEM:
-      if(cert_done)
-        break;
-      if(key_file == NULL)
-        /* cert & key can only be in PEM case in the same file */
-        key_file=cert_file;
-    case SSL_FILETYPE_ASN1:
-      if(SSL_CTX_use_PrivateKey_file(ctx, key_file, file_type) != 1) {
-        failf(data, "unable to set private key file: '%s' type %s",
-              key_file, key_type?key_type:"PEM");
-        return 0;
-      }
-      break;
-    case SSL_FILETYPE_ENGINE:
-#ifdef HAVE_OPENSSL_ENGINE_H
-      {                         /* XXXX still needs some work */
-        EVP_PKEY *priv_key = NULL;
-        if(data->state.engine) {
-#ifdef HAVE_ENGINE_LOAD_FOUR_ARGS
-          UI_METHOD *ui_method = UI_OpenSSL();
-#endif
-          /* the typecast below was added to please mingw32 */
-          priv_key = (EVP_PKEY *)
-            ENGINE_load_private_key(data->state.engine,key_file,
-#ifdef HAVE_ENGINE_LOAD_FOUR_ARGS
-                                    ui_method,
-#endif
-                                    data->set.str[STRING_KEY_PASSWD]);
-          if(!priv_key) {
-            failf(data, "failed to load private key from crypto engine");
-            return 0;
-          }
-          if(SSL_CTX_use_PrivateKey(ctx, priv_key) != 1) {
-            failf(data, "unable to set private key");
-            EVP_PKEY_free(priv_key);
-            return 0;
-          }
-          EVP_PKEY_free(priv_key);  /* we don't need the handle any more... */
-        }
-        else {
-          failf(data, "crypto engine not set, can't load private key");
-          return 0;
-        }
-      }
-      break;
-#else
-      failf(data, "file type ENG for private key not supported");
-      return 0;
-#endif
-    case SSL_FILETYPE_PKCS12:
-      if(!cert_done) {
-        failf(data, "file type P12 for private key not supported");
-        return 0;
-      }
-      break;
-    default:
-      failf(data, "not supported file type for private key");
-      return 0;
-    }
-
-    ssl=SSL_new(ctx);
-    if(NULL == ssl) {
-      failf(data,"unable to create an SSL structure");
-      return 0;
-    }
-
-    x509=SSL_get_certificate(ssl);
-
-    /* This version was provided by Evan Jordan and is supposed to not
-       leak memory as the previous version: */
-    if(x509 != NULL) {
-      EVP_PKEY *pktmp = X509_get_pubkey(x509);
-      EVP_PKEY_copy_parameters(pktmp,SSL_get_privatekey(ssl));
-      EVP_PKEY_free(pktmp);
-    }
-
-    SSL_free(ssl);
-
-    /* If we are using DSA, we can copy the parameters from
-     * the private key */
-
-
-    /* Now we know that a key and cert have been set against
-     * the SSL context */
-    if(!SSL_CTX_check_private_key(ctx)) {
-      failf(data, "Private key does not match the certificate public key");
-      return 0;
-    }
-#ifndef HAVE_USERDATA_IN_PWD_CALLBACK
-    /* erase it now */
-    memset(global_passwd, 0, sizeof(global_passwd));
-#endif
-  }
-  return 1;
-}
-
-/* returns non-zero on failure */
-static int x509_name_oneline(X509_NAME *a, char *buf, size_t size)
-{
-#if 0
-  return X509_NAME_oneline(a, buf, size);
-#else
-  BIO *bio_out = BIO_new(BIO_s_mem());
-  BUF_MEM *biomem;
-  int rc;
-
-  if(!bio_out)
-    return 1; /* alloc failed! */
-
-  rc = X509_NAME_print_ex(bio_out, a, 0, XN_FLAG_SEP_SPLUS_SPC);
-  BIO_get_mem_ptr(bio_out, &biomem);
-
-  if((size_t)biomem->length < size)
-    size = biomem->length;
-  else
-    size--; /* don't overwrite the buffer end */
-
-  memcpy(buf, biomem->data, size);
-  buf[size]=0;
-
-  BIO_free(bio_out);
-
-  return !rc;
-#endif
-}
-
-static
-int cert_verify_callback(int ok, X509_STORE_CTX *ctx)
-{
-  X509 *err_cert;
-  char buf[256];
-
-  err_cert=X509_STORE_CTX_get_current_cert(ctx);
-  (void)x509_name_oneline(X509_get_subject_name(err_cert), buf, sizeof(buf));
-  return ok;
-}
-
-/* Return error string for last OpenSSL error
- */
-static char *SSL_strerror(unsigned long error, char *buf, size_t size)
-{
-#ifdef HAVE_ERR_ERROR_STRING_N
-  /* OpenSSL 0.9.6 and later has a function named
-     ERRO_error_string_n() that takes the size of the buffer as a
-     third argument */
-  ERR_error_string_n(error, buf, size);
-#else
-  (void) size;
-  ERR_error_string(error, buf);
-#endif
-  return buf;
-}
-
-#endif /* USE_SSLEAY */
-
-#ifdef USE_SSLEAY
-/**
- * Global SSL init
- *
- * @retval 0 error initializing SSL
- * @retval 1 SSL initialized successfully
- */
-int Curl_ossl_init(void)
-{
-#ifdef HAVE_ENGINE_LOAD_BUILTIN_ENGINES
-  ENGINE_load_builtin_engines();
-#endif
-
-  /* Lets get nice error messages */
-  SSL_load_error_strings();
-
-  /* Init the global ciphers and digests */
-  if(!SSLeay_add_ssl_algorithms())
-    return 0;
-
-  OpenSSL_add_all_algorithms();
-
-#ifdef HAVE_RAND_SCREEN
-  /* This one gets a random value by reading the currently shown screen.
-     RAND_screen() is not thread-safe according to OpenSSL devs - although not
-     mentioned in documentation. */
-  RAND_screen();
-#endif
-
-  return 1;
-}
-
-#endif /* USE_SSLEAY */
-
-#ifdef USE_SSLEAY
-
-/* Global cleanup */
-void Curl_ossl_cleanup(void)
-{
-  /* Free the SSL error strings */
-  ERR_free_strings();
-
-  /* EVP_cleanup() removes all ciphers and digests from the table. */
-  EVP_cleanup();
-
-#ifdef HAVE_ENGINE_CLEANUP
-  ENGINE_cleanup();
-#endif
-
-#ifdef HAVE_CRYPTO_CLEANUP_ALL_EX_DATA
-  /* this function was not present in 0.9.6b, but was added sometimes
-     later */
-  CRYPTO_cleanup_all_ex_data();
-#endif
-}
-
-/*
- * This function uses SSL_peek to determine connection status.
- *
- * Return codes:
- *     1 means the connection is still in place
- *     0 means the connection has been closed
- *    -1 means the connection status is unknown
- */
-int Curl_ossl_check_cxn(struct connectdata *conn)
-{
-  int rc;
-  char buf;
-
-  rc = SSL_peek(conn->ssl[FIRSTSOCKET].handle, (void*)&buf, 1);
-  if(rc > 0)
-    return 1; /* connection still in place */
-
-  if(rc == 0)
-    return 0; /* connection has been closed */
-
-  return -1; /* connection status unknown */
-}
-
-/* Selects an OpenSSL crypto engine
- */
-CURLcode Curl_ossl_set_engine(struct SessionHandle *data, const char *engine)
-{
-#if defined(USE_SSLEAY) && defined(HAVE_OPENSSL_ENGINE_H)
-  ENGINE *e;
-
-#if OPENSSL_VERSION_NUMBER >= 0x00909000L
-  e = ENGINE_by_id(engine);
-#else
-  /* avoid memory leak */
-  for(e = ENGINE_get_first(); e; e = ENGINE_get_next(e)) {
-    const char *e_id = ENGINE_get_id(e);
-    if(!strcmp(engine, e_id))
-      break;
-  }
-#endif
-
-  if(!e) {
-    failf(data, "SSL Engine '%s' not found", engine);
-    return CURLE_SSL_ENGINE_NOTFOUND;
-  }
-
-  if(data->state.engine) {
-    ENGINE_finish(data->state.engine);
-    ENGINE_free(data->state.engine);
-    data->state.engine = NULL;
-  }
-  if(!ENGINE_init(e)) {
-    char buf[256];
-
-    ENGINE_free(e);
-    failf(data, "Failed to initialise SSL Engine '%s':\n%s",
-          engine, SSL_strerror(ERR_get_error(), buf, sizeof(buf)));
-    return CURLE_SSL_ENGINE_INITFAILED;
-  }
-  data->state.engine = e;
-  return CURLE_OK;
-#else
-  (void)engine;
-  failf(data, "SSL Engine not supported");
-  return CURLE_SSL_ENGINE_NOTFOUND;
-#endif
-}
-
-/* Sets engine as default for all SSL operations
- */
-CURLcode Curl_ossl_set_engine_default(struct SessionHandle *data)
-{
-#ifdef HAVE_OPENSSL_ENGINE_H
-  if(data->state.engine) {
-    if(ENGINE_set_default(data->state.engine, ENGINE_METHOD_ALL) > 0) {
-      infof(data,"set default crypto engine '%s'\n", ENGINE_get_id(data->state.engine));
-    }
-    else {
-      failf(data, "set default crypto engine '%s' failed", ENGINE_get_id(data->state.engine));
-      return CURLE_SSL_ENGINE_SETFAILED;
-    }
-  }
-#else
-  (void) data;
-#endif
-  return CURLE_OK;
-}
-
-/* Return list of OpenSSL crypto engine names.
- */
-struct curl_slist *Curl_ossl_engines_list(struct SessionHandle *data)
-{
-  struct curl_slist *list = NULL;
-#if defined(USE_SSLEAY) && defined(HAVE_OPENSSL_ENGINE_H)
-  struct curl_slist *beg = NULL;
-  ENGINE *e;
-
-  for (e = ENGINE_get_first(); e; e = ENGINE_get_next(e)) {
-    list = curl_slist_append(list, ENGINE_get_id(e));
-    if(list == NULL) {
-      curl_slist_free_all(beg);
-      return NULL;
-    }
-    else if(beg == NULL) {
-      beg = list;
-    }
-  }
-#endif
-  (void) data;
-  return list;
-}
-
-
-/*
- * This function is called when an SSL connection is closed.
- */
-void Curl_ossl_close(struct connectdata *conn, int sockindex)
-{
-  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
-
-  if(connssl->handle) {
-    (void)SSL_shutdown(connssl->handle);
-    SSL_set_connect_state(connssl->handle);
-
-    SSL_free (connssl->handle);
-    connssl->handle = NULL;
-  }
-  if(connssl->ctx) {
-    SSL_CTX_free (connssl->ctx);
-    connssl->ctx = NULL;
-  }
-}
-
-/*
- * This function is called to shut down the SSL layer but keep the
- * socket open (CCC - Clear Command Channel)
- */
-int Curl_ossl_shutdown(struct connectdata *conn, int sockindex)
-{
-  int retval = 0;
-  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
-  struct SessionHandle *data = conn->data;
-  char buf[120]; /* We will use this for the OpenSSL error buffer, so it has
-                    to be at least 120 bytes long. */
-  unsigned long sslerror;
-  ssize_t nread;
-  int buffsize;
-  int err;
-  int done = 0;
-
-  /* This has only been tested on the proftpd server, and the mod_tls code
-     sends a close notify alert without waiting for a close notify alert in
-     response. Thus we wait for a close notify alert from the server, but
-     we do not send one. Let's hope other servers do the same... */
-
-  if(data->set.ftp_ccc == CURLFTPSSL_CCC_ACTIVE)
-      (void)SSL_shutdown(connssl->handle);
-
-  if(connssl->handle) {
-    buffsize = (int)sizeof(buf);
-    while(!done) {
-      int what = Curl_socket_ready(conn->sock[sockindex],
-                             CURL_SOCKET_BAD, SSL_SHUTDOWN_TIMEOUT);
-      if(what > 0) {
-        /* Something to read, let's do it and hope that it is the close
-           notify alert from the server */
-        nread = (ssize_t)SSL_read(conn->ssl[sockindex].handle, buf,
-                                  buffsize);
-        err = SSL_get_error(conn->ssl[sockindex].handle, (int)nread);
-
-        switch(err) {
-        case SSL_ERROR_NONE: /* this is not an error */
-        case SSL_ERROR_ZERO_RETURN: /* no more data */
-          /* This is the expected response. There was no data but only
-             the close notify alert */
-          done = 1;
-          break;
-        case SSL_ERROR_WANT_READ:
-          /* there's data pending, re-invoke SSL_read() */
-          infof(data, "SSL_ERROR_WANT_READ\n");
-          break;
-        case SSL_ERROR_WANT_WRITE:
-          /* SSL wants a write. Really odd. Let's bail out. */
-          infof(data, "SSL_ERROR_WANT_WRITE\n");
-          done = 1;
-          break;
-        default:
-          /* openssl/ssl.h says "look at error stack/return value/errno" */
-          sslerror = ERR_get_error();
-          failf(conn->data, "SSL read: %s, errno %d",
-                ERR_error_string(sslerror, buf),
-                SOCKERRNO);
-          done = 1;
-          break;
-        }
-      }
-      else if(0 == what) {
-        /* timeout */
-        failf(data, "SSL shutdown timeout");
-        done = 1;
-      }
-      else {
-        /* anything that gets here is fatally bad */
-        failf(data, "select/poll on SSL socket, errno: %d", SOCKERRNO);
-        retval = -1;
-        done = 1;
-      }
-    } /* while()-loop for the select() */
-
-    if(data->set.verbose) {
-#ifdef HAVE_SSL_GET_SHUTDOWN
-      switch(SSL_get_shutdown(connssl->handle)) {
-      case SSL_SENT_SHUTDOWN:
-        infof(data, "SSL_get_shutdown() returned SSL_SENT_SHUTDOWN\n");
-        break;
-      case SSL_RECEIVED_SHUTDOWN:
-        infof(data, "SSL_get_shutdown() returned SSL_RECEIVED_SHUTDOWN\n");
-        break;
-      case SSL_SENT_SHUTDOWN|SSL_RECEIVED_SHUTDOWN:
-        infof(data, "SSL_get_shutdown() returned SSL_SENT_SHUTDOWN|"
-              "SSL_RECEIVED__SHUTDOWN\n");
-        break;
-      }
-#endif
-    }
-
-    SSL_free (connssl->handle);
-    connssl->handle = NULL;
-  }
-  return retval;
-}
-
-void Curl_ossl_session_free(void *ptr)
-{
-  /* free the ID */
-  SSL_SESSION_free(ptr);
-}
-
-/*
- * This function is called when the 'data' struct is going away. Close
- * down everything and free all resources!
- */
-int Curl_ossl_close_all(struct SessionHandle *data)
-{
-  /*
-    ERR_remove_state() frees the error queue associated with
-    thread pid.  If pid == 0, the current thread will have its
-    error queue removed.
-
-    Since error queue data structures are allocated
-    automatically for new threads, they must be freed when
-    threads are terminated in oder to avoid memory leaks.
-  */
-  ERR_remove_state(0);
-
-#ifdef HAVE_OPENSSL_ENGINE_H
-  if(data->state.engine) {
-    ENGINE_finish(data->state.engine);
-    ENGINE_free(data->state.engine);
-    data->state.engine = NULL;
-  }
-#else
-  (void)data;
-#endif
-  return 0;
-}
-
-static int asn1_output(const ASN1_UTCTIME *tm,
-                       char *buf,
-                       size_t sizeofbuf)
-{
-  const char *asn1_string;
-  int gmt=FALSE;
-  int i;
-  int year=0,month=0,day=0,hour=0,minute=0,second=0;
-
-  i=tm->length;
-  asn1_string=(const char *)tm->data;
-
-  if(i < 10)
-    return 1;
-  if(asn1_string[i-1] == 'Z')
-    gmt=TRUE;
-  for (i=0; i<10; i++)
-    if((asn1_string[i] > '9') || (asn1_string[i] < '0'))
-      return 2;
-
-  year= (asn1_string[0]-'0')*10+(asn1_string[1]-'0');
-  if(year < 50)
-    year+=100;
-
-  month= (asn1_string[2]-'0')*10+(asn1_string[3]-'0');
-  if((month > 12) || (month < 1))
-    return 3;
-
-  day= (asn1_string[4]-'0')*10+(asn1_string[5]-'0');
-  hour= (asn1_string[6]-'0')*10+(asn1_string[7]-'0');
-  minute=  (asn1_string[8]-'0')*10+(asn1_string[9]-'0');
-
-  if((asn1_string[10] >= '0') && (asn1_string[10] <= '9') &&
-     (asn1_string[11] >= '0') && (asn1_string[11] <= '9'))
-    second= (asn1_string[10]-'0')*10+(asn1_string[11]-'0');
-
-  snprintf(buf, sizeofbuf,
-           "%04d-%02d-%02d %02d:%02d:%02d %s",
-           year+1900, month, day, hour, minute, second, (gmt?"GMT":""));
-
-  return 0;
-}
-
-/* ====================================================== */
-
-/*
- * Match a hostname against a wildcard pattern.
- * E.g.
- *  "foo.host.com" matches "*.host.com".
- *
- * We are a bit more liberal than RFC2818 describes in that we
- * accept multiple "*" in pattern (similar to what some other browsers do).
- * E.g.
- *  "abc.def.domain.com" should strickly not match "*.domain.com", but we
- *  don't consider "." to be important in CERT checking.
- */
-#define HOST_NOMATCH 0
-#define HOST_MATCH   1
-
-static int hostmatch(const char *hostname, const char *pattern)
-{
-  while(1) {
-    char c = *pattern++;
-
-    if(c == '\0')
-      return (*hostname ? HOST_NOMATCH : HOST_MATCH);
-
-    if(c == '*') {
-      c = *pattern;
-      if(c == '\0')      /* "*\0" matches anything remaining */
-        return HOST_MATCH;
-
-      while(*hostname) {
-        /* The only recursive function in libcurl! */
-        if(hostmatch(hostname++,pattern) == HOST_MATCH)
-          return HOST_MATCH;
-      }
-      break;
-    }
-
-    if(Curl_raw_toupper(c) != Curl_raw_toupper(*hostname++))
-      break;
-  }
-  return HOST_NOMATCH;
-}
-
-static int
-cert_hostcheck(const char *match_pattern, const char *hostname)
-{
-  if(!match_pattern || !*match_pattern ||
-      !hostname || !*hostname) /* sanity check */
-    return 0;
-
-  if(Curl_raw_equal(hostname, match_pattern)) /* trivial case */
-    return 1;
-
-  if(hostmatch(hostname,match_pattern) == HOST_MATCH)
-    return 1;
-  return 0;
-}
-
-/* Quote from RFC2818 section 3.1 "Server Identity"
-
-   If a subjectAltName extension of type dNSName is present, that MUST
-   be used as the identity. Otherwise, the (most specific) Common Name
-   field in the Subject field of the certificate MUST be used. Although
-   the use of the Common Name is existing practice, it is deprecated and
-   Certification Authorities are encouraged to use the dNSName instead.
-
-   Matching is performed using the matching rules specified by
-   [RFC2459].  If more than one identity of a given type is present in
-   the certificate (e.g., more than one dNSName name, a match in any one
-   of the set is considered acceptable.) Names may contain the wildcard
-   character * which is considered to match any single domain name
-   component or component fragment. E.g., *.a.com matches foo.a.com but
-   not bar.foo.a.com. f*.com matches foo.com but not bar.com.
-
-   In some cases, the URI is specified as an IP address rather than a
-   hostname. In this case, the iPAddress subjectAltName must be present
-   in the certificate and must exactly match the IP in the URI.
-
-*/
-static CURLcode verifyhost(struct connectdata *conn,
-                           X509 *server_cert)
-{
-  int matched = -1; /* -1 is no alternative match yet, 1 means match and 0
-                       means mismatch */
-  int target = GEN_DNS; /* target type, GEN_DNS or GEN_IPADD */
-  size_t addrlen = 0;
-  struct SessionHandle *data = conn->data;
-  STACK_OF(GENERAL_NAME) *altnames;
-#ifdef ENABLE_IPV6
-  struct in6_addr addr;
-#else
-  struct in_addr addr;
-#endif
-  CURLcode res = CURLE_OK;
-
-#ifdef ENABLE_IPV6
-  if(conn->bits.ipv6_ip &&
-     Curl_inet_pton(AF_INET6, conn->host.name, &addr)) {
-    target = GEN_IPADD;
-    addrlen = sizeof(struct in6_addr);
-  }
-  else
-#endif
-    if(Curl_inet_pton(AF_INET, conn->host.name, &addr)) {
-      target = GEN_IPADD;
-      addrlen = sizeof(struct in_addr);
-    }
-
-  /* get a "list" of alternative names */
-  altnames = X509_get_ext_d2i(server_cert, NID_subject_alt_name, NULL, NULL);
-
-  if(altnames) {
-    int numalts;
-    int i;
-
-    /* get amount of alternatives, RFC2459 claims there MUST be at least
-       one, but we don't depend on it... */
-    numalts = sk_GENERAL_NAME_num(altnames);
-
-    /* loop through all alternatives while none has matched */
-    for (i=0; (i<numalts) && (matched != 1); i++) {
-      /* get a handle to alternative name number i */
-      const GENERAL_NAME *check = sk_GENERAL_NAME_value(altnames, i);
-
-      /* only check alternatives of the same type the target is */
-      if(check->type == target) {
-        /* get data and length */
-        const char *altptr = (char *)ASN1_STRING_data(check->d.ia5);
-        size_t altlen = (size_t) ASN1_STRING_length(check->d.ia5);
-
-        switch(target) {
-        case GEN_DNS: /* name/pattern comparison */
-          /* The OpenSSL man page explicitly says: "In general it cannot be
-             assumed that the data returned by ASN1_STRING_data() is null
-             terminated or does not contain embedded nulls." But also that
-             "The actual format of the data will depend on the actual string
-             type itself: for example for and IA5String the data will be ASCII"
-
-             Gisle researched the OpenSSL sources:
-             "I checked the 0.9.6 and 0.9.8 sources before my patch and
-             it always 0-terminates an IA5String."
-          */
-          if((altlen == strlen(altptr)) &&
-             /* if this isn't true, there was an embedded zero in the name
-                string and we cannot match it. */
-             cert_hostcheck(altptr, conn->host.name))
-            matched = 1;
-          else
-            matched = 0;
-          break;
-
-        case GEN_IPADD: /* IP address comparison */
-          /* compare alternative IP address if the data chunk is the same size
-             our server IP address is */
-          if((altlen == addrlen) && !memcmp(altptr, &addr, altlen))
-            matched = 1;
-          else
-            matched = 0;
-          break;
-        }
-      }
-    }
-    GENERAL_NAMES_free(altnames);
-  }
-
-  if(matched == 1)
-    /* an alternative name matched the server hostname */
-    infof(data, "\t subjectAltName: %s matched\n", conn->host.dispname);
-  else if(matched == 0) {
-    /* an alternative name field existed, but didn't match and then
-       we MUST fail */
-    infof(data, "\t subjectAltName does not match %s\n", conn->host.dispname);
-    res = CURLE_PEER_FAILED_VERIFICATION;
-  }
-  else {
-    /* we have to look to the last occurence of a commonName in the
-       distinguished one to get the most significant one. */
-    int j,i=-1 ;
-
-/* The following is done because of a bug in 0.9.6b */
-
-    unsigned char *nulstr = (unsigned char *)"";
-    unsigned char *peer_CN = nulstr;
-
-    X509_NAME *name = X509_get_subject_name(server_cert) ;
-    if(name)
-      while((j = X509_NAME_get_index_by_NID(name, NID_commonName, i))>=0)
-        i=j;
-
-    /* we have the name entry and we will now convert this to a string
-       that we can use for comparison. Doing this we support BMPstring,
-       UTF8 etc. */
-
-    if(i>=0) {
-      ASN1_STRING *tmp = X509_NAME_ENTRY_get_data(X509_NAME_get_entry(name,i));
-
-      /* In OpenSSL 0.9.7d and earlier, ASN1_STRING_to_UTF8 fails if the input
-         is already UTF-8 encoded. We check for this case and copy the raw
-         string manually to avoid the problem. This code can be made
-         conditional in the future when OpenSSL has been fixed. Work-around
-         brought by Alexis S. L. Carvalho. */
-      if(tmp) {
-        if(ASN1_STRING_type(tmp) == V_ASN1_UTF8STRING) {
-          j = ASN1_STRING_length(tmp);
-          if(j >= 0) {
-            peer_CN = OPENSSL_malloc(j+1);
-            if(peer_CN) {
-              memcpy(peer_CN, ASN1_STRING_data(tmp), j);
-              peer_CN[j] = '\0';
-            }
-          }
-        }
-        else /* not a UTF8 name */
-          j = ASN1_STRING_to_UTF8(&peer_CN, tmp);
-
-        if(peer_CN && ((int)strlen((char *)peer_CN) != j)) {
-          /* there was a terminating zero before the end of string, this
-             cannot match and we return failure! */
-          failf(data, "SSL: illegal cert name field");
-          res = CURLE_PEER_FAILED_VERIFICATION;
-        }
-      }
-    }
-
-    if(peer_CN == nulstr)
-       peer_CN = NULL;
-#ifdef CURL_DOES_CONVERSIONS
-    else {
-      /* convert peer_CN from UTF8 */
-      size_t rc;
-      rc = Curl_convert_from_utf8(data, peer_CN, strlen(peer_CN));
-      /* Curl_convert_from_utf8 calls failf if unsuccessful */
-      if(rc != CURLE_OK) {
-        OPENSSL_free(peer_CN);
-        return rc;
-      }
-    }
-#endif /* CURL_DOES_CONVERSIONS */
-
-    if(res)
-      /* error already detected, pass through */
-      ;
-    else if(!peer_CN) {
-      failf(data,
-            "SSL: unable to obtain common name from peer certificate");
-      res = CURLE_PEER_FAILED_VERIFICATION;
-    }
-    else if(!cert_hostcheck((const char *)peer_CN, conn->host.name)) {
-      if(data->set.ssl.verifyhost > 1) {
-        failf(data, "SSL: certificate subject name '%s' does not match "
-              "target host name '%s'", peer_CN, conn->host.dispname);
-        res = CURLE_PEER_FAILED_VERIFICATION;
-      }
-      else
-        infof(data, "\t common name: %s (does not match '%s')\n",
-              peer_CN, conn->host.dispname);
-    }
-    else {
-      infof(data, "\t common name: %s (matched)\n", peer_CN);
-    }
-    if(peer_CN)
-      OPENSSL_free(peer_CN);
-  }
-  return res;
-}
-#endif /* USE_SSLEAY */
-
-/* The SSL_CTRL_SET_MSG_CALLBACK doesn't exist in ancient OpenSSL versions
-   and thus this cannot be done there. */
-#ifdef SSL_CTRL_SET_MSG_CALLBACK
-
-static const char *ssl_msg_type(int ssl_ver, int msg)
-{
-  if(ssl_ver == SSL2_VERSION_MAJOR) {
-    switch (msg) {
-      case SSL2_MT_ERROR:
-        return "Error";
-      case SSL2_MT_CLIENT_HELLO:
-        return "Client hello";
-      case SSL2_MT_CLIENT_MASTER_KEY:
-        return "Client key";
-      case SSL2_MT_CLIENT_FINISHED:
-        return "Client finished";
-      case SSL2_MT_SERVER_HELLO:
-        return "Server hello";
-      case SSL2_MT_SERVER_VERIFY:
-        return "Server verify";
-      case SSL2_MT_SERVER_FINISHED:
-        return "Server finished";
-      case SSL2_MT_REQUEST_CERTIFICATE:
-        return "Request CERT";
-      case SSL2_MT_CLIENT_CERTIFICATE:
-        return "Client CERT";
-    }
-  }
-  else if(ssl_ver == SSL3_VERSION_MAJOR) {
-    switch (msg) {
-      case SSL3_MT_HELLO_REQUEST:
-        return "Hello request";
-      case SSL3_MT_CLIENT_HELLO:
-        return "Client hello";
-      case SSL3_MT_SERVER_HELLO:
-        return "Server hello";
-      case SSL3_MT_CERTIFICATE:
-        return "CERT";
-      case SSL3_MT_SERVER_KEY_EXCHANGE:
-        return "Server key exchange";
-      case SSL3_MT_CLIENT_KEY_EXCHANGE:
-        return "Client key exchange";
-      case SSL3_MT_CERTIFICATE_REQUEST:
-        return "Request CERT";
-      case SSL3_MT_SERVER_DONE:
-        return "Server finished";
-      case SSL3_MT_CERTIFICATE_VERIFY:
-        return "CERT verify";
-      case SSL3_MT_FINISHED:
-        return "Finished";
-    }
-  }
-  return "Unknown";
-}
-
-static const char *tls_rt_type(int type)
-{
-  return (
-    type == SSL3_RT_CHANGE_CIPHER_SPEC ? "TLS change cipher, " :
-    type == SSL3_RT_ALERT              ? "TLS alert, "         :
-    type == SSL3_RT_HANDSHAKE          ? "TLS handshake, "     :
-    type == SSL3_RT_APPLICATION_DATA   ? "TLS app data, "      :
-                                         "TLS Unknown, ");
-}
-
-
-/*
- * Our callback from the SSL/TLS layers.
- */
-static void ssl_tls_trace(int direction, int ssl_ver, int content_type,
-                          const void *buf, size_t len, const SSL *ssl,
-                          struct connectdata *conn)
-{
-  struct SessionHandle *data;
-  const char *msg_name, *tls_rt_name;
-  char ssl_buf[1024];
-  int  ver, msg_type, txt_len;
-
-  if(!conn || !conn->data || !conn->data->set.fdebug ||
-     (direction != 0 && direction != 1))
-    return;
-
-  data = conn->data;
-  ssl_ver >>= 8;
-  ver = (ssl_ver == SSL2_VERSION_MAJOR ? '2' :
-         ssl_ver == SSL3_VERSION_MAJOR ? '3' : '?');
-
-  /* SSLv2 doesn't seem to have TLS record-type headers, so OpenSSL
-   * always pass-up content-type as 0. But the interesting message-type
-   * is at 'buf[0]'.
-   */
-  if(ssl_ver == SSL3_VERSION_MAJOR && content_type != 0)
-    tls_rt_name = tls_rt_type(content_type);
-  else
-    tls_rt_name = "";
-
-  msg_type = *(char*)buf;
-  msg_name = ssl_msg_type(ssl_ver, msg_type);
-
-  txt_len = snprintf(ssl_buf, sizeof(ssl_buf), "SSLv%c, %s%s (%d):\n",
-                     ver, tls_rt_name, msg_name, msg_type);
-  Curl_debug(data, CURLINFO_TEXT, ssl_buf, (size_t)txt_len, NULL);
-
-  Curl_debug(data, (direction == 1) ? CURLINFO_SSL_DATA_OUT :
-             CURLINFO_SSL_DATA_IN, (char *)buf, len, NULL);
-  (void) ssl;
-}
-#endif
-
-#ifdef USE_SSLEAY
-/* ====================================================== */
-
-#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
-#  define use_sni(x)  sni = (x)
-#else
-#  define use_sni(x)  do { } while (0)
-#endif
-
-static CURLcode
-ossl_connect_step1(struct connectdata *conn,
-                   int sockindex)
-{
-  CURLcode retcode = CURLE_OK;
-
-  struct SessionHandle *data = conn->data;
-  SSL_METHOD_QUAL SSL_METHOD *req_method=NULL;
-  void *ssl_sessionid=NULL;
-  X509_LOOKUP *lookup=NULL;
-  curl_socket_t sockfd = conn->sock[sockindex];
-  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
-#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
-  bool sni;
-#ifdef ENABLE_IPV6
-  struct in6_addr addr;
-#else
-  struct in_addr addr;
-#endif
-#endif
-
-  DEBUGASSERT(ssl_connect_1 == connssl->connecting_state);
-
-  /* Make funny stuff to get random input */
-  Curl_ossl_seed(data);
-
-  /* check to see if we've been told to use an explicit SSL/TLS version */
-  switch(data->set.ssl.version) {
-  default:
-  case CURL_SSLVERSION_DEFAULT:
-    /* we try to figure out version */
-    req_method = SSLv23_client_method();
-    use_sni(TRUE);
-    break;
-  case CURL_SSLVERSION_TLSv1:
-    req_method = TLSv1_client_method();
-    use_sni(TRUE);
-    break;
-  case CURL_SSLVERSION_SSLv2:
-    req_method = SSLv2_client_method();
-    use_sni(FALSE);
-    break;
-  case CURL_SSLVERSION_SSLv3:
-    req_method = SSLv3_client_method();
-    use_sni(FALSE);
-    break;
-  }
-
-  if(connssl->ctx)
-    SSL_CTX_free(connssl->ctx);
-  connssl->ctx = SSL_CTX_new(req_method);
-
-  if(!connssl->ctx) {
-    failf(data, "SSL: couldn't create a context!");
-    return CURLE_OUT_OF_MEMORY;
-  }
-
-#ifdef SSL_CTRL_SET_MSG_CALLBACK
-  if(data->set.fdebug && data->set.verbose) {
-    /* the SSL trace callback is only used for verbose logging so we only
-       inform about failures of setting it */
-    if(!SSL_CTX_callback_ctrl(connssl->ctx, SSL_CTRL_SET_MSG_CALLBACK,
-                               (void (*)(void))ssl_tls_trace)) {
-      infof(data, "SSL: couldn't set callback!\n");
-    }
-    else if(!SSL_CTX_ctrl(connssl->ctx, SSL_CTRL_SET_MSG_CALLBACK_ARG, 0,
-                          conn)) {
-      infof(data, "SSL: couldn't set callback argument!\n");
-    }
-  }
-#endif
-
-  /* OpenSSL contains code to work-around lots of bugs and flaws in various
-     SSL-implementations. SSL_CTX_set_options() is used to enabled those
-     work-arounds. The man page for this option states that SSL_OP_ALL enables
-     all the work-arounds and that "It is usually safe to use SSL_OP_ALL to
-     enable the bug workaround options if compatibility with somewhat broken
-     implementations is desired."
-
-     The "-no_ticket" option was introduced in Openssl0.9.8j. It's a flag to
-     disable "rfc4507bis session ticket support".  rfc4507bis was later turned
-     into the proper RFC5077 it seems: http://tools.ietf.org/html/rfc5077
-
-     The enabled extension concerns the session management. I wonder how often
-     libcurl stops a connection and then resumes a TLS session. also, sending
-     the session data is some overhead. .I suggest that you just use your
-     proposed patch (which explicitly disables TICKET).
-
-     If someone writes an application with libcurl and openssl who wants to
-     enable the feature, one can do this in the SSL callback.
-
-  */
-#ifdef SSL_OP_NO_TICKET
-  /* expect older openssl releases to not have this define so only use it if
-     present */
-#define CURL_CTX_OPTIONS SSL_OP_ALL|SSL_OP_NO_TICKET
-#else
-#define CURL_CTX_OPTIONS SSL_OP_ALL
-#endif
-
-  SSL_CTX_set_options(connssl->ctx, CURL_CTX_OPTIONS);
-
-  /* disable SSLv2 in the default case (i.e. allow SSLv3 and TLSv1) */
-  if(data->set.ssl.version == CURL_SSLVERSION_DEFAULT)
-    SSL_CTX_set_options(connssl->ctx, SSL_OP_NO_SSLv2);
-
-#if 0
-  /*
-   * Not sure it's needed to tell SSL_connect() that socket is
-   * non-blocking. It doesn't seem to care, but just return with
-   * SSL_ERROR_WANT_x.
-   */
-  if(data->state.used_interface == Curl_if_multi)
-    SSL_CTX_ctrl(connssl->ctx, BIO_C_SET_NBIO, 1, NULL);
-#endif
-
-  if(data->set.str[STRING_CERT] || data->set.str[STRING_CERT_TYPE]) {
-    if(!cert_stuff(conn,
-                   connssl->ctx,
-                   data->set.str[STRING_CERT],
-                   data->set.str[STRING_CERT_TYPE],
-                   data->set.str[STRING_KEY],
-                   data->set.str[STRING_KEY_TYPE])) {
-      /* failf() is already done in cert_stuff() */
-      return CURLE_SSL_CERTPROBLEM;
-    }
-  }
-
-  if(data->set.str[STRING_SSL_CIPHER_LIST]) {
-    if(!SSL_CTX_set_cipher_list(connssl->ctx,
-                                data->set.str[STRING_SSL_CIPHER_LIST])) {
-      failf(data, "failed setting cipher list");
-      return CURLE_SSL_CIPHER;
-    }
-  }
-
-  if(data->set.str[STRING_SSL_CAFILE] || data->set.str[STRING_SSL_CAPATH]) {
-    /* tell SSL where to find CA certificates that are used to verify
-       the servers certificate. */
-    if(!SSL_CTX_load_verify_locations(connssl->ctx,
-                                       data->set.str[STRING_SSL_CAFILE],
-                                       data->set.str[STRING_SSL_CAPATH])) {
-      if(data->set.ssl.verifypeer) {
-        /* Fail if we insist on successfully verifying the server. */
-        failf(data,"error setting certificate verify locations:\n"
-              "  CAfile: %s\n  CApath: %s\n",
-              data->set.str[STRING_SSL_CAFILE]?
-              data->set.str[STRING_SSL_CAFILE]: "none",
-              data->set.str[STRING_SSL_CAPATH]?
-              data->set.str[STRING_SSL_CAPATH] : "none");
-        return CURLE_SSL_CACERT_BADFILE;
-      }
-      else {
-        /* Just continue with a warning if no strict  certificate verification
-           is required. */
-        infof(data, "error setting certificate verify locations,"
-              " continuing anyway:\n");
-      }
-    }
-    else {
-      /* Everything is fine. */
-      infof(data, "successfully set certificate verify locations:\n");
-    }
-    infof(data,
-          "  CAfile: %s\n"
-          "  CApath: %s\n",
-          data->set.str[STRING_SSL_CAFILE] ? data->set.str[STRING_SSL_CAFILE]:
-          "none",
-          data->set.str[STRING_SSL_CAPATH] ? data->set.str[STRING_SSL_CAPATH]:
-          "none");
-  }
-
-  if (data->set.str[STRING_SSL_CRLFILE]) {
-    /* tell SSL where to find CRL file that is used to check certificate
-     * revocation */
-    lookup=X509_STORE_add_lookup(connssl->ctx->cert_store,X509_LOOKUP_file());
-    if ( !lookup ||
-         (!X509_load_crl_file(lookup,data->set.str[STRING_SSL_CRLFILE],
-                              X509_FILETYPE_PEM)) ) {
-      failf(data,"error loading CRL file :\n"
-            "  CRLfile: %s\n",
-            data->set.str[STRING_SSL_CRLFILE]?
-            data->set.str[STRING_SSL_CRLFILE]: "none");
-      return CURLE_SSL_CRL_BADFILE;
-    }
-    else {
-      /* Everything is fine. */
-      infof(data, "successfully load CRL file:\n");
-      X509_STORE_set_flags(connssl->ctx->cert_store,
-                           X509_V_FLAG_CRL_CHECK|X509_V_FLAG_CRL_CHECK_ALL);
-    }
-    infof(data,
-          "  CRLfile: %s\n", data->set.str[STRING_SSL_CRLFILE] ?
-          data->set.str[STRING_SSL_CRLFILE]: "none");
-  }
-
-  /* SSL always tries to verify the peer, this only says whether it should
-   * fail to connect if the verification fails, or if it should continue
-   * anyway. In the latter case the result of the verification is checked with
-   * SSL_get_verify_result() below. */
-  SSL_CTX_set_verify(connssl->ctx,
-                     data->set.ssl.verifypeer?SSL_VERIFY_PEER:SSL_VERIFY_NONE,
-                     cert_verify_callback);
-
-  /* give application a chance to interfere with SSL set up. */
-  if(data->set.ssl.fsslctx) {
-    retcode = (*data->set.ssl.fsslctx)(data, connssl->ctx,
-                                       data->set.ssl.fsslctxp);
-    if(retcode) {
-      failf(data,"error signaled by ssl ctx callback");
-      return retcode;
-    }
-  }
-
-  /* Lets make an SSL structure */
-  if(connssl->handle)
-    SSL_free(connssl->handle);
-  connssl->handle = SSL_new(connssl->ctx);
-  if(!connssl->handle) {
-    failf(data, "SSL: couldn't create a context (handle)!");
-    return CURLE_OUT_OF_MEMORY;
-  }
-  SSL_set_connect_state(connssl->handle);
-
-  connssl->server_cert = 0x0;
-
-#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
-  if ((0 == Curl_inet_pton(AF_INET, conn->host.name, &addr)) &&
-#ifdef ENABLE_IPV6
-      (0 == Curl_inet_pton(AF_INET6, conn->host.name, &addr)) &&
-#endif
-      sni &&
-      !SSL_set_tlsext_host_name(connssl->handle, conn->host.name))
-    infof(data, "WARNING: failed to configure server name indication (SNI) "
-          "TLS extension\n");
-#endif
-
-  /* Check if there's a cached ID we can/should use here! */
-  if(!Curl_ssl_getsessionid(conn, &ssl_sessionid, NULL)) {
-    /* we got a session id, use it! */
-    if(!SSL_set_session(connssl->handle, ssl_sessionid)) {
-      failf(data, "SSL: SSL_set_session failed: %s",
-            ERR_error_string(ERR_get_error(),NULL));
-      return CURLE_SSL_CONNECT_ERROR;
-    }
-    /* Informational message */
-    infof (data, "SSL re-using session ID\n");
-  }
-
-  /* pass the raw socket into the SSL layers */
-  if(!SSL_set_fd(connssl->handle, (int)sockfd)) {
-     failf(data, "SSL: SSL_set_fd failed: %s",
-           ERR_error_string(ERR_get_error(),NULL));
-     return CURLE_SSL_CONNECT_ERROR;
-  }
-
-  connssl->connecting_state = ssl_connect_2;
-  return CURLE_OK;
-}
-
-static CURLcode
-ossl_connect_step2(struct connectdata *conn, int sockindex)
-{
-  struct SessionHandle *data = conn->data;
-  int err;
-  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
-
-  DEBUGASSERT(ssl_connect_2 == connssl->connecting_state
-             || ssl_connect_2_reading == connssl->connecting_state
-             || ssl_connect_2_writing == connssl->connecting_state);
-
-  err = SSL_connect(connssl->handle);
-
-  /* 1  is fine
-     0  is "not successful but was shut down controlled"
-     <0 is "handshake was not successful, because a fatal error occurred" */
-  if(1 != err) {
-    int detail = SSL_get_error(connssl->handle, err);
-
-    if(SSL_ERROR_WANT_READ == detail) {
-      connssl->connecting_state = ssl_connect_2_reading;
-      return CURLE_OK;
-    }
-    else if(SSL_ERROR_WANT_WRITE == detail) {
-      connssl->connecting_state = ssl_connect_2_writing;
-      return CURLE_OK;
-    }
-    else {
-      /* untreated error */
-      unsigned long errdetail;
-      char error_buffer[256]; /* OpenSSL documents that this must be at least
-                                 256 bytes long. */
-      CURLcode rc;
-      const char *cert_problem = NULL;
-
-      connssl->connecting_state = ssl_connect_2; /* the connection failed,
-                                                    we're not waiting for
-                                                    anything else. */
-
-      errdetail = ERR_get_error(); /* Gets the earliest error code from the
-                                      thread's error queue and removes the
-                                      entry. */
-
-      switch(errdetail) {
-      case 0x1407E086:
-        /* 1407E086:
-           SSL routines:
-           SSL2_SET_CERTIFICATE:
-           certificate verify failed */
-        /* fall-through */
-      case 0x14090086:
-        /* 14090086:
-           SSL routines:
-           SSL3_GET_SERVER_CERTIFICATE:
-           certificate verify failed */
-        cert_problem = "SSL certificate problem, verify that the CA cert is"
-          " OK. Details:\n";
-        rc = CURLE_SSL_CACERT;
-        break;
-      default:
-        rc = CURLE_SSL_CONNECT_ERROR;
-        break;
-      }
-
-      /* detail is already set to the SSL error above */
-
-      /* If we e.g. use SSLv2 request-method and the server doesn't like us
-       * (RST connection etc.), OpenSSL gives no explanation whatsoever and
-       * the SO_ERROR is also lost.
-       */
-      if(CURLE_SSL_CONNECT_ERROR == rc && errdetail == 0) {
-        failf(data, "Unknown SSL protocol error in connection to %s:%ld ",
-              conn->host.name, conn->port);
-        return rc;
-      }
-      /* Could be a CERT problem */
-
-      SSL_strerror(errdetail, error_buffer, sizeof(error_buffer));
-      failf(data, "%s%s", cert_problem ? cert_problem : "", error_buffer);
-      return rc;
-    }
-  }
-  else {
-    /* we have been connected fine, we're not waiting for anything else. */
-    connssl->connecting_state = ssl_connect_3;
-
-    /* Informational message */
-    infof (data, "SSL connection using %s\n",
-           SSL_get_cipher(connssl->handle));
-
-    return CURLE_OK;
-  }
-}
-
-static int asn1_object_dump(ASN1_OBJECT *a, char *buf, size_t len)
-{
-  int i, ilen;
-
-  if((ilen = (int)len) < 0)
-    return 1; /* buffer too big */
-
-  i = i2t_ASN1_OBJECT(buf, ilen, a);
-
-  if(i >= ilen)
-    return 1; /* buffer too small */
-
-  return 0;
-}
-
-static CURLcode push_certinfo_len(struct SessionHandle *data,
-                                  int certnum,
-                                  const char *label,
-                                  const char *value,
-                                  size_t valuelen)
-{
-  struct curl_certinfo *ci = &data->info.certs;
-  char *output;
-  struct curl_slist *nl;
-  CURLcode res = CURLE_OK;
-  size_t labellen = strlen(label);
-  size_t outlen = labellen + 1 + valuelen + 1; /* label:value\0 */
-
-  output = malloc(outlen);
-  if(!output)
-    return CURLE_OUT_OF_MEMORY;
-
-  /* sprintf the label and colon */
-  snprintf(output, outlen, "%s:", label);
-
-  /* memcpy the value (it might not be zero terminated) */
-  memcpy(&output[labellen+1], value, valuelen);
-
-  /* zero terminate the output */
-  output[labellen + 1 + valuelen] = 0;
-
-  /* TODO: we should rather introduce an internal API that can do the
-     equivalent of curl_slist_append but doesn't strdup() the given data as
-     like in this place the extra malloc/free is totally pointless */
-  nl = curl_slist_append(ci->certinfo[certnum], output);
-  if(!nl) {
-    curl_slist_free_all(ci->certinfo[certnum]);
-    res = CURLE_OUT_OF_MEMORY;
-  }
-  else
-    ci->certinfo[certnum] = nl;
-
-  free(output);
-
-  return res;
-}
-
-/* this is a convenience function for push_certinfo_len that takes a zero
-   terminated value */
-static CURLcode push_certinfo(struct SessionHandle *data,
-                              int certnum,
-                              const char *label,
-                              const char *value)
-{
-  size_t valuelen = strlen(value);
-
-  return push_certinfo_len(data, certnum, label, value, valuelen);
-}
-
-static void pubkey_show(struct SessionHandle *data,
-                        int num,
-                        const char *type,
-                        const char *name,
-                        unsigned char *raw,
-                        int len)
-{
-  char buffer[1024];
-  size_t left = sizeof(buffer);
-  int i;
-  char *ptr=buffer;
-  char namebuf[32];
-
-  snprintf(namebuf, sizeof(namebuf), "%s(%s)", type, name);
-
-  for(i=0; i< len; i++) {
-    snprintf(ptr, left, "%02x:", raw[i]);
-    ptr += 3;
-    left -= 3;
-  }
-  infof(data, "   %s: %s\n", namebuf, buffer);
-  push_certinfo(data, num, namebuf, buffer);
-}
-
-#define print_pubkey_BN(_type, _name, _num)    \
-do {                              \
-  if (pubkey->pkey._type->_name != NULL) { \
-    int len = BN_num_bytes(pubkey->pkey._type->_name); \
-    if(len < (int)sizeof(buf)) {                       \
-      BN_bn2bin(pubkey->pkey._type->_name, (unsigned char*)buf); \
-      buf[len] = 0; \
-      pubkey_show(data, _num, #_type, #_name, (unsigned char*)buf, len); \
-    } \
-  } \
-} while (0)
-
-static int X509V3_ext(struct SessionHandle *data,
-                      int certnum,
-                      STACK_OF(X509_EXTENSION) *exts)
-{
-  int i;
-  size_t j;
-
-  if(sk_X509_EXTENSION_num(exts) <= 0)
-    /* no extensions, bail out */
-    return 1;
-
-  for (i=0; i<sk_X509_EXTENSION_num(exts); i++) {
-    ASN1_OBJECT *obj;
-    X509_EXTENSION *ext = sk_X509_EXTENSION_value(exts, i);
-    BUF_MEM *biomem;
-    char buf[512];
-    char *ptr=buf;
-    char namebuf[128];
-    BIO *bio_out = BIO_new(BIO_s_mem());
-
-    if(!bio_out)
-      return 1;
-
-    obj = X509_EXTENSION_get_object(ext);
-
-    asn1_object_dump(obj, namebuf, sizeof(namebuf));
-
-    infof(data, "%s: %s\n", namebuf,
-          X509_EXTENSION_get_critical(ext)?"(critical)":"");
-
-    if(!X509V3_EXT_print(bio_out, ext, 0, 0))
-      M_ASN1_OCTET_STRING_print(bio_out, ext->value);
-
-    BIO_get_mem_ptr(bio_out, &biomem);
-
-    /* biomem->length bytes at biomem->data, this little loop here is only
-       done for the infof() call, we send the "raw" data to the certinfo
-       function */
-    for(j=0; j<(size_t)biomem->length; j++) {
-      const char *sep="";
-      if(biomem->data[j] == '\n') {
-        sep=", ";
-        j++; /* skip the newline */
-      };
-      while((biomem->data[j] == ' ') && (j<(size_t)biomem->length))
-        j++;
-      if(j<(size_t)biomem->length)
-        ptr+=snprintf(ptr, sizeof(buf)-(ptr-buf), "%s%c", sep, biomem->data[j]);
-    }
-    infof(data, "  %s\n", buf);
-
-    push_certinfo(data, certnum, namebuf, buf);
-
-    BIO_free(bio_out);
-
-  }
-  return 0; /* all is fine */
-}
-
-
-static void X509_signature(struct SessionHandle *data,
-                           int numcert,
-                           ASN1_STRING *sig)
-{
-  char buf[1024];
-  char *ptr = buf;
-  int i;
-  for (i=0; i<sig->length; i++)
-    ptr+=snprintf(ptr, sizeof(buf)-(ptr-buf), "%02x:", sig->data[i]);
-
-  infof(data, " Signature: %s\n", buf);
-  push_certinfo(data, numcert, "Signature", buf);
-}
-
-static void dumpcert(struct SessionHandle *data, X509 *x, int numcert)
-{
-  BIO *bio_out = BIO_new(BIO_s_mem());
-  BUF_MEM *biomem;
-
-  /* this outputs the cert in this 64 column wide style with newlines and
-     -----BEGIN CERTIFICATE----- texts and more */
-  PEM_write_bio_X509(bio_out, x);
-
-  BIO_get_mem_ptr(bio_out, &biomem);
-
-  infof(data, "%s\n", biomem->data);
-
-  push_certinfo_len(data, numcert, "Cert", biomem->data, biomem->length);
-
-  BIO_free(bio_out);
-
-}
-
-
-static int init_certinfo(struct SessionHandle *data,
-                         int num)
-{
-  struct curl_certinfo *ci = &data->info.certs;
-  struct curl_slist **table;
-
-  Curl_ssl_free_certinfo(data);
-
-  ci->num_of_certs = num;
-  table = calloc((size_t)num, sizeof(struct curl_slist *));
-  if(!table)
-    return 1;
-
-  ci->certinfo = table;
-  return 0;
-}
-
-static CURLcode get_cert_chain(struct connectdata *conn,
-                               struct ssl_connect_data *connssl)
-
-{
-  STACK_OF(X509) *sk;
-  int i;
-  char buf[512];
-  struct SessionHandle *data = conn->data;
-  int numcerts;
-
-  sk = SSL_get_peer_cert_chain(connssl->handle);
-
-  if(!sk)
-    return CURLE_OUT_OF_MEMORY;
-
-  numcerts = sk_X509_num(sk);
-
-  if(init_certinfo(data, numcerts))
-    return CURLE_OUT_OF_MEMORY;
-
-  infof(data, "--- Certificate chain\n");
-  for (i=0; i<numcerts; i++) {
-    long value;
-    ASN1_INTEGER *num;
-    ASN1_TIME *certdate;
-
-    /* get the certs in "importance order" */
-#if 0
-    X509 *x = sk_X509_value(sk, numcerts - i - 1);
-#else
-    X509 *x = sk_X509_value(sk, i);
-#endif
-
-    X509_CINF *cinf;
-    EVP_PKEY *pubkey=NULL;
-    int j;
-    char *ptr;
-
-    (void)x509_name_oneline(X509_get_subject_name(x), buf, sizeof(buf));
-    infof(data, "%2d Subject: %s\n",i,buf);
-    push_certinfo(data, i, "Subject", buf);
-
-    (void)x509_name_oneline(X509_get_issuer_name(x), buf, sizeof(buf));
-    infof(data, "   Issuer: %s\n",buf);
-    push_certinfo(data, i, "Issuer", buf);
-
-    value = X509_get_version(x);
-    infof(data, "   Version: %lu (0x%lx)\n", value+1, value);
-    snprintf(buf, sizeof(buf), "%lx", value);
-    push_certinfo(data, i, "Version", buf); /* hex */
-
-    num=X509_get_serialNumber(x);
-    if (num->length <= 4) {
-      value = ASN1_INTEGER_get(num);
-      infof(data,"   Serial Number: %ld (0x%lx)\n", value, value);
-      snprintf(buf, sizeof(buf), "%lx", value);
-    }
-    else {
-
-      ptr = buf;
-      *ptr++ = 0;
-      if(num->type == V_ASN1_NEG_INTEGER)
-        *ptr++='-';
-
-      for (j=0; j<num->length; j++) {
-        /* TODO: length restrictions */
-        snprintf(ptr, 3, "%02x%c",num->data[j],
-                 ((j+1 == num->length)?'\n':':'));
-        ptr += 3;
-      }
-      if(num->length)
-        infof(data,"   Serial Number: %s\n", buf);
-      else
-        buf[0]=0;
-    }
-    if(buf[0])
-      push_certinfo(data, i, "Serial Number", buf); /* hex */
-
-    cinf = x->cert_info;
-
-    j = asn1_object_dump(cinf->signature->algorithm, buf, sizeof(buf));
-    if(!j) {
-      infof(data, "   Signature Algorithm: %s\n", buf);
-      push_certinfo(data, i, "Signature Algorithm", buf);
-    }
-
-    certdate = X509_get_notBefore(x);
-    asn1_output(certdate, buf, sizeof(buf));
-    infof(data, "   Start date: %s\n", buf);
-    push_certinfo(data, i, "Start date", buf);
-
-    certdate = X509_get_notAfter(x);
-    asn1_output(certdate, buf, sizeof(buf));
-    infof(data, "   Expire date: %s\n", buf);
-    push_certinfo(data, i, "Expire date", buf);
-
-    j = asn1_object_dump(cinf->key->algor->algorithm, buf, sizeof(buf));
-    if(!j) {
-      infof(data, "   Public Key Algorithm: %s\n", buf);
-      push_certinfo(data, i, "Public Key Algorithm", buf);
-    }
-
-    pubkey = X509_get_pubkey(x);
-    if(!pubkey)
-      infof(data, "   Unable to load public key\n");
-    else {
-      switch(pubkey->type) {
-      case EVP_PKEY_RSA:
-        infof(data,  "   RSA Public Key (%d bits)\n",
-              BN_num_bits(pubkey->pkey.rsa->n));
-        snprintf(buf, sizeof(buf), "%d", BN_num_bits(pubkey->pkey.rsa->n));
-        push_certinfo(data, i, "RSA Public Key", buf);
-
-        print_pubkey_BN(rsa, n, i);
-        print_pubkey_BN(rsa, e, i);
-        print_pubkey_BN(rsa, d, i);
-        print_pubkey_BN(rsa, p, i);
-        print_pubkey_BN(rsa, q, i);
-        print_pubkey_BN(rsa, dmp1, i);
-        print_pubkey_BN(rsa, dmq1, i);
-        print_pubkey_BN(rsa, iqmp, i);
-        break;
-      case EVP_PKEY_DSA:
-        print_pubkey_BN(dsa, p, i);
-        print_pubkey_BN(dsa, q, i);
-        print_pubkey_BN(dsa, g, i);
-        print_pubkey_BN(dsa, priv_key, i);
-        print_pubkey_BN(dsa, pub_key, i);
-        break;
-      case EVP_PKEY_DH:
-        print_pubkey_BN(dh, p, i);
-        print_pubkey_BN(dh, g, i);
-        print_pubkey_BN(dh, priv_key, i);
-        print_pubkey_BN(dh, pub_key, i);
-        break;
-#if 0
-      case EVP_PKEY_EC: /* symbol not present in OpenSSL 0.9.6 */
-        /* left TODO */
-        break;
-#endif
-      }
-      EVP_PKEY_free(pubkey);
-    }
-
-    X509V3_ext(data, i, cinf->extensions);
-
-    X509_signature(data, i, x->signature);
-
-    dumpcert(data, x, i);
-  }
-
-  return CURLE_OK;
-}
-
-/*
- * Get the server cert, verify it and show it etc, only call failf() if the
- * 'strict' argument is TRUE as otherwise all this is for informational
- * purposes only!
- *
- * We check certificates to authenticate the server; otherwise we risk
- * man-in-the-middle attack.
- */
-static CURLcode servercert(struct connectdata *conn,
-                           struct ssl_connect_data *connssl,
-                           bool strict)
-{
-  CURLcode retcode = CURLE_OK;
-  int rc;
-  long lerr;
-  ASN1_TIME *certdate;
-  struct SessionHandle *data = conn->data;
-  X509 *issuer;
-  FILE *fp;
-  char buffer[256];
-
-  if(data->set.ssl.certinfo)
-    /* we've been asked to gather certificate info! */
-    (void)get_cert_chain(conn, connssl);
-
-  data->set.ssl.certverifyresult = !X509_V_OK;
-
-  connssl->server_cert = SSL_get_peer_certificate(connssl->handle);
-  if(!connssl->server_cert) {
-    if(strict)
-      failf(data, "SSL: couldn't get peer certificate!");
-    return CURLE_PEER_FAILED_VERIFICATION;
-  }
-  infof (data, "Server certificate:\n");
-
-  rc = x509_name_oneline(X509_get_subject_name(connssl->server_cert),
-                          buffer, sizeof(buffer));
-  if(rc) {
-    if(strict)
-      failf(data, "SSL: couldn't get X509-subject!");
-    X509_free(connssl->server_cert);
-    connssl->server_cert = NULL;
-    return CURLE_SSL_CONNECT_ERROR;
-  }
-  infof(data, "\t subject: %s\n", buffer);
-
-  certdate = X509_get_notBefore(connssl->server_cert);
-  asn1_output(certdate, buffer, sizeof(buffer));
-  infof(data, "\t start date: %s\n", buffer);
-
-  certdate = X509_get_notAfter(connssl->server_cert);
-  asn1_output(certdate, buffer, sizeof(buffer));
-  infof(data, "\t expire date: %s\n", buffer);
-
-  if(data->set.ssl.verifyhost) {
-    retcode = verifyhost(conn, connssl->server_cert);
-    if(retcode) {
-      X509_free(connssl->server_cert);
-      connssl->server_cert = NULL;
-      return retcode;
-    }
-  }
-
-  rc = x509_name_oneline(X509_get_issuer_name(connssl->server_cert),
-                         buffer, sizeof(buffer));
-  if(rc) {
-    if(strict)
-      failf(data, "SSL: couldn't get X509-issuer name!");
-    retcode = CURLE_SSL_CONNECT_ERROR;
-  }
-  else {
-    infof(data, "\t issuer: %s\n", buffer);
-
-    /* We could do all sorts of certificate verification stuff here before
-       deallocating the certificate. */
-
-    /* e.g. match issuer name with provided issuer certificate */
-    if (data->set.str[STRING_SSL_ISSUERCERT]) {
-      if (! (fp=fopen(data->set.str[STRING_SSL_ISSUERCERT],"r"))) {
-        if (strict)
-          failf(data, "SSL: Unable to open issuer cert (%s)\n",
-                data->set.str[STRING_SSL_ISSUERCERT]);
-        X509_free(connssl->server_cert);
-        connssl->server_cert = NULL;
-        return CURLE_SSL_ISSUER_ERROR;
-      }
-      issuer = PEM_read_X509(fp,NULL,ZERO_NULL,NULL);
-      if (!issuer) {
-        if (strict)
-          failf(data, "SSL: Unable to read issuer cert (%s)\n",
-                data->set.str[STRING_SSL_ISSUERCERT]);
-        X509_free(connssl->server_cert);
-        X509_free(issuer);
-        fclose(fp);
-        return CURLE_SSL_ISSUER_ERROR;
-      }
-      fclose(fp);
-      if (X509_check_issued(issuer,connssl->server_cert) != X509_V_OK) {
-        if (strict)
-          failf(data, "SSL: Certificate issuer check failed (%s)\n",
-                data->set.str[STRING_SSL_ISSUERCERT]);
-        X509_free(connssl->server_cert);
-        X509_free(issuer);
-        connssl->server_cert = NULL;
-        return CURLE_SSL_ISSUER_ERROR;
-      }
-      infof(data, "\t SSL certificate issuer check ok (%s)\n",
-            data->set.str[STRING_SSL_ISSUERCERT]);
-      X509_free(issuer);
-    }
-
-    lerr = data->set.ssl.certverifyresult=
-      SSL_get_verify_result(connssl->handle);
-    if(data->set.ssl.certverifyresult != X509_V_OK) {
-      if(data->set.ssl.verifypeer) {
-        /* We probably never reach this, because SSL_connect() will fail
-           and we return earlier if verifypeer is set? */
-        if(strict)
-          failf(data, "SSL certificate verify result: %s (%ld)",
-                X509_verify_cert_error_string(lerr), lerr);
-        retcode = CURLE_PEER_FAILED_VERIFICATION;
-      }
-      else
-        infof(data, "\t SSL certificate verify result: %s (%ld),"
-              " continuing anyway.\n",
-              X509_verify_cert_error_string(lerr), lerr);
-    }
-    else
-      infof(data, "\t SSL certificate verify ok.\n");
-  }
-
-  X509_free(connssl->server_cert);
-  connssl->server_cert = NULL;
-  connssl->connecting_state = ssl_connect_done;
-
-  return retcode;
-}
-
-
-static CURLcode
-ossl_connect_step3(struct connectdata *conn,
-                   int sockindex)
-{
-  CURLcode retcode = CURLE_OK;
-  void *old_ssl_sessionid=NULL;
-  struct SessionHandle *data = conn->data;
-  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
-  int incache;
-  SSL_SESSION *our_ssl_sessionid;
-
-  DEBUGASSERT(ssl_connect_3 == connssl->connecting_state);
-
-#ifdef HAVE_SSL_GET1_SESSION
-  our_ssl_sessionid = SSL_get1_session(connssl->handle);
-
-  /* SSL_get1_session() will increment the reference
-     count and the session will stay in memory until explicitly freed with
-     SSL_SESSION_free(3), regardless of its state.
-     This function was introduced in openssl 0.9.5a. */
-#else
-  our_ssl_sessionid = SSL_get_session(connssl->handle);
-
-  /* if SSL_get1_session() is unavailable, use SSL_get_session().
-     This is an inferior option because the session can be flushed
-     at any time by openssl. It is included only so curl compiles
-     under versions of openssl < 0.9.5a.
-
-     WARNING: How curl behaves if it's session is flushed is
-     untested.
-  */
-#endif
-
-  incache = !(Curl_ssl_getsessionid(conn, &old_ssl_sessionid, NULL));
-  if (incache) {
-    if (old_ssl_sessionid != our_ssl_sessionid) {
-      infof(data, "old SSL session ID is stale, removing\n");
-      Curl_ssl_delsessionid(conn, old_ssl_sessionid);
-      incache = FALSE;
-    }
-  }
-  if (!incache) {
-    retcode = Curl_ssl_addsessionid(conn, our_ssl_sessionid,
-                                    0 /* unknown size */);
-    if(retcode) {
-      failf(data, "failed to store ssl session");
-      return retcode;
-    }
-  }
-#ifdef HAVE_SSL_GET1_SESSION
-  else {
-    /* Session was incache, so refcount already incremented earlier.
-     * Avoid further increments with each SSL_get1_session() call.
-     * This does not free the session as refcount remains > 0
-     */
-    SSL_SESSION_free(our_ssl_sessionid);
-  }
-#endif
-
-  /*
-   * We check certificates to authenticate the server; otherwise we risk
-   * man-in-the-middle attack; NEVERTHELESS, if we're told explicitly not to
-   * verify the peer ignore faults and failures from the server cert
-   * operations.
-   */
-
-  if(!data->set.ssl.verifypeer)
-    (void)servercert(conn, connssl, FALSE);
-  else
-    retcode = servercert(conn, connssl, TRUE);
-
-  if(CURLE_OK == retcode)
-    connssl->connecting_state = ssl_connect_done;
-  return retcode;
-}
-
-static CURLcode
-ossl_connect_common(struct connectdata *conn,
-                    int sockindex,
-                    bool nonblocking,
-                    bool *done)
-{
-  CURLcode retcode;
-  struct SessionHandle *data = conn->data;
-  struct ssl_connect_data *connssl = &conn->ssl[sockindex];
-  curl_socket_t sockfd = conn->sock[sockindex];
-  long timeout_ms;
-  int what;
-
-  if(ssl_connect_1==connssl->connecting_state) {
-    /* Find out how much more time we're allowed */
-    timeout_ms = Curl_timeleft(conn, NULL, TRUE);
-
-    if(timeout_ms < 0) {
-      /* no need to continue if time already is up */
-      failf(data, "SSL connection timeout");
-      return CURLE_OPERATION_TIMEDOUT;
-    }
-    retcode = ossl_connect_step1(conn, sockindex);
-    if(retcode)
-      return retcode;
-  }
-
-  while(ssl_connect_2 == connssl->connecting_state ||
-        ssl_connect_2_reading == connssl->connecting_state ||
-        ssl_connect_2_writing == connssl->connecting_state) {
-
-    /* check allowed time left */
-    timeout_ms = Curl_timeleft(conn, NULL, TRUE);
-
-    if(timeout_ms < 0) {
-      /* no need to continue if time already is up */
-      failf(data, "SSL connection timeout");
-      return CURLE_OPERATION_TIMEDOUT;
-    }
-
-    /* if ssl is expecting something, check if it's available. */
-    if(connssl->connecting_state == ssl_connect_2_reading
-        || connssl->connecting_state == ssl_connect_2_writing) {
-
-      curl_socket_t writefd = ssl_connect_2_writing==
-        connssl->connecting_state?sockfd:CURL_SOCKET_BAD;
-      curl_socket_t readfd = ssl_connect_2_reading==
-        connssl->connecting_state?sockfd:CURL_SOCKET_BAD;
-
-      what = Curl_socket_ready(readfd, writefd,
-                               nonblocking?0:(int)timeout_ms);
-      if(what < 0) {
-        /* fatal error */
-        failf(data, "select/poll on SSL socket, errno: %d", SOCKERRNO);
-        return CURLE_SSL_CONNECT_ERROR;
-      }
-      else if(0 == what) {
-        if(nonblocking) {
-          *done = FALSE;
-          return CURLE_OK;
-        }
-        else {
-          /* timeout */
-          failf(data, "SSL connection timeout");
-          return CURLE_OPERATION_TIMEDOUT;
-        }
-      }
-      /* socket is readable or writable */
-    }
-
-    retcode = ossl_connect_step2(conn, sockindex);
-    if(retcode || (data->state.used_interface == Curl_if_multi))
-      return retcode;
-
-  } /* repeat step2 until all transactions are done. */
-
-
-  if(ssl_connect_3==connssl->connecting_state) {
-    retcode = ossl_connect_step3(conn, sockindex);
-    if(retcode)
-      return retcode;
-  }
-
-  if(ssl_connect_done==connssl->connecting_state) {
-    connssl->state = ssl_connection_complete;
-    *done = TRUE;
-  }
-  else
-    *done = FALSE;
-
-  /* Reset our connect state machine */
-  connssl->connecting_state = ssl_connect_1;
-
-  return CURLE_OK;
-}
-
-CURLcode
-Curl_ossl_connect_nonblocking(struct connectdata *conn,
-                              int sockindex,
-                              bool *done)
-{
-  return ossl_connect_common(conn, sockindex, TRUE, done);
-}
-
-CURLcode
-Curl_ossl_connect(struct connectdata *conn,
-                  int sockindex)
-{
-  CURLcode retcode;
-  bool done = FALSE;
-
-  retcode = ossl_connect_common(conn, sockindex, FALSE, &done);
-  if(retcode)
-    return retcode;
-
-  DEBUGASSERT(done);
-
-  return CURLE_OK;
-}
-
-bool Curl_ossl_data_pending(const struct connectdata *conn,
-                            int connindex)
-{
-  if(conn->ssl[connindex].handle)
-    /* SSL is in use */
-    return (bool)(0 != SSL_pending(conn->ssl[connindex].handle));
-  else
-    return FALSE;
-}
-
-/* for documentation see Curl_ssl_send() in sslgen.h */
-ssize_t Curl_ossl_send(struct connectdata *conn,
-                       int sockindex,
-                       const void *mem,
-                       size_t len,
-                       int *curlcode)
-{
-  /* SSL_write() is said to return 'int' while write() and send() returns
-     'size_t' */
-  int err;
-  char error_buffer[120]; /* OpenSSL documents that this must be at least 120
-                             bytes long. */
-  unsigned long sslerror;
-  int memlen;
-  int rc;
-
-  memlen = (len > (size_t)INT_MAX) ? INT_MAX : (int)len;
-  rc = SSL_write(conn->ssl[sockindex].handle, mem, memlen);
-
-  if(rc < 0) {
-    err = SSL_get_error(conn->ssl[sockindex].handle, rc);
-
-    switch(err) {
-    case SSL_ERROR_WANT_READ:
-    case SSL_ERROR_WANT_WRITE:
-      /* The operation did not complete; the same TLS/SSL I/O function
-         should be called again later. This is basicly an EWOULDBLOCK
-         equivalent. */
-      *curlcode = /* EWOULDBLOCK */ -1;
-      return -1;
-    case SSL_ERROR_SYSCALL:
-      failf(conn->data, "SSL_write() returned SYSCALL, errno = %d",
-            SOCKERRNO);
-      *curlcode = CURLE_SEND_ERROR;
-      return -1;
-    case SSL_ERROR_SSL:
-      /*  A failure in the SSL library occurred, usually a protocol error.
-          The OpenSSL error queue contains more information on the error. */
-      sslerror = ERR_get_error();
-      failf(conn->data, "SSL_write() error: %s",
-            ERR_error_string(sslerror, error_buffer));
-      *curlcode = CURLE_SEND_ERROR;
-      return -1;
-    }
-    /* a true error */
-    failf(conn->data, "SSL_write() return error %d", err);
-    *curlcode = CURLE_SEND_ERROR;
-    return -1;
-  }
-  return (ssize_t)rc; /* number of bytes */
-}
-
-/* for documentation see Curl_ssl_recv() in sslgen.h */
-ssize_t Curl_ossl_recv(struct connectdata *conn, /* connection data */
-                       int num,                  /* socketindex */
-                       char *buf,                /* store read data here */
-                       size_t buffersize,        /* max amount to read */
-                       int *curlcode)
-{
-  char error_buffer[120]; /* OpenSSL documents that this must be at
-                             least 120 bytes long. */
-  unsigned long sslerror;
-  ssize_t nread;
-  int buffsize;
-
-  buffsize = (buffersize > (size_t)INT_MAX) ? INT_MAX : (int)buffersize;
-  nread = (ssize_t)SSL_read(conn->ssl[num].handle, buf, buffsize);
-  if(nread < 0) {
-    /* failed SSL_read */
-    int err = SSL_get_error(conn->ssl[num].handle, (int)nread);
-
-    switch(err) {
-    case SSL_ERROR_NONE: /* this is not an error */
-    case SSL_ERROR_ZERO_RETURN: /* no more data */
-      break;
-    case SSL_ERROR_WANT_READ:
-    case SSL_ERROR_WANT_WRITE:
-      /* there's data pending, re-invoke SSL_read() */
-      *curlcode = -1;  /* EWOULDBLOCK */
-      return -1;
-    default:
-      /* openssl/ssl.h says "look at error stack/return value/errno" */
-      sslerror = ERR_get_error();
-      failf(conn->data, "SSL read: %s, errno %d",
-            ERR_error_string(sslerror, error_buffer),
-            SOCKERRNO);
-      *curlcode = CURLE_RECV_ERROR;
-      return -1;
-    }
-  }
-  return nread;
-}
-
-size_t Curl_ossl_version(char *buffer, size_t size)
-{
-#ifdef YASSL_VERSION
-  /* yassl provides an OpenSSL API compatiblity layer so it looks identical
-     to OpenSSL in all other aspects */
-  return snprintf(buffer, size, "yassl/%s", YASSL_VERSION);
-#else /* YASSL_VERSION */
-
-#if(SSLEAY_VERSION_NUMBER >= 0x905000)
-  {
-    char sub[2];
-    unsigned long ssleay_value;
-    sub[1]='\0';
-    ssleay_value=SSLeay();
-    if(ssleay_value < 0x906000) {
-      ssleay_value=SSLEAY_VERSION_NUMBER;
-      sub[0]='\0';
-    }
-    else {
-      if(ssleay_value&0xff0) {
-        sub[0]=(char)(((ssleay_value>>4)&0xff) + 'a' -1);
-      }
-      else
-        sub[0]='\0';
-    }
-
-    return snprintf(buffer, size, "OpenSSL/%lx.%lx.%lx%s",
-                    (ssleay_value>>28)&0xf,
-                    (ssleay_value>>20)&0xff,
-                    (ssleay_value>>12)&0xff,
-                    sub);
-  }
-
-#else /* SSLEAY_VERSION_NUMBER is less than 0.9.5 */
-
-#if(SSLEAY_VERSION_NUMBER >= 0x900000)
-  return snprintf(buffer, size, "OpenSSL/%lx.%lx.%lx",
-                  (SSLEAY_VERSION_NUMBER>>28)&0xff,
-                  (SSLEAY_VERSION_NUMBER>>20)&0xff,
-                  (SSLEAY_VERSION_NUMBER>>12)&0xf);
-
-#else /* (SSLEAY_VERSION_NUMBER >= 0x900000) */
-  {
-    char sub[2];
-    sub[1]='\0';
-    if(SSLEAY_VERSION_NUMBER&0x0f) {
-      sub[0]=(SSLEAY_VERSION_NUMBER&0x0f) + 'a' -1;
-    }
-    else
-      sub[0]='\0';
-
-    return snprintf(buffer, size, "SSL/%x.%x.%x%s",
-                    (SSLEAY_VERSION_NUMBER>>12)&0xff,
-                    (SSLEAY_VERSION_NUMBER>>8)&0xf,
-                    (SSLEAY_VERSION_NUMBER>>4)&0xf, sub);
-  }
-#endif /* (SSLEAY_VERSION_NUMBER >= 0x900000) */
-#endif /* SSLEAY_VERSION_NUMBER is less than 0.9.5 */
-
-#endif /* YASSL_VERSION */
-}
-#endif /* USE_SSLEAY */
diff --git a/src/other/curl/lib/ssluse.h b/src/other/curl/lib/ssluse.h
deleted file mode 100644
index 00357af..0000000
--- a/src/other/curl/lib/ssluse.h
+++ /dev/null
@@ -1,100 +0,0 @@
-#ifndef __SSLUSE_H
-#define __SSLUSE_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#ifdef USE_SSLEAY
-/*
- * This header should only be needed to get included by sslgen.c and ssluse.c
- */
-
-#include "urldata.h"
-CURLcode Curl_ossl_connect(struct connectdata *conn, int sockindex);
-CURLcode Curl_ossl_connect_nonblocking(struct connectdata *conn,
-                                       int sockindex,
-                                       bool *done);
-
-/* close a SSL connection */
-void Curl_ossl_close(struct connectdata *conn, int sockindex);
-
-/* tell OpenSSL to close down all open information regarding connections (and
-   thus session ID caching etc) */
-int Curl_ossl_close_all(struct SessionHandle *data);
-
-/* Sets an OpenSSL engine */
-CURLcode Curl_ossl_set_engine(struct SessionHandle *data, const char *engine);
-
-/* function provided for the generic SSL-layer, called when a session id
-   should be freed */
-void Curl_ossl_session_free(void *ptr);
-
-/* Sets engine as default for all SSL operations */
-CURLcode Curl_ossl_set_engine_default(struct SessionHandle *data);
-
-/* Build list of OpenSSL engines */
-struct curl_slist *Curl_ossl_engines_list(struct SessionHandle *data);
-
-int Curl_ossl_init(void);
-void Curl_ossl_cleanup(void);
-
-/* for documentation see Curl_ssl_send() in sslgen.h */
-ssize_t Curl_ossl_send(struct connectdata *conn,
-                       int sockindex,
-                       const void *mem,
-                       size_t len,
-                       int *curlcode);
-
-/* for documentation see Curl_ssl_recv() in sslgen.h */
-ssize_t Curl_ossl_recv(struct connectdata *conn, /* connection data */
-                       int num,                  /* socketindex */
-                       char *buf,                /* store read data here */
-                       size_t buffersize,        /* max amount to read */
-                       int *curlcode);
-
-size_t Curl_ossl_version(char *buffer, size_t size);
-int Curl_ossl_check_cxn(struct connectdata *cxn);
-int Curl_ossl_seed(struct SessionHandle *data);
-
-int Curl_ossl_shutdown(struct connectdata *conn, int sockindex);
-bool Curl_ossl_data_pending(const struct connectdata *conn,
-                            int connindex);
-
-/* API setup for OpenSSL */
-#define curlssl_init Curl_ossl_init
-#define curlssl_cleanup Curl_ossl_cleanup
-#define curlssl_connect Curl_ossl_connect
-#define curlssl_connect_nonblocking Curl_ossl_connect_nonblocking
-#define curlssl_session_free(x) Curl_ossl_session_free(x)
-#define curlssl_close_all Curl_ossl_close_all
-#define curlssl_close Curl_ossl_close
-#define curlssl_shutdown(x,y) Curl_ossl_shutdown(x,y)
-#define curlssl_set_engine(x,y) Curl_ossl_set_engine(x,y)
-#define curlssl_set_engine_default(x) Curl_ossl_set_engine_default(x)
-#define curlssl_engines_list(x) Curl_ossl_engines_list(x)
-#define curlssl_send Curl_ossl_send
-#define curlssl_recv Curl_ossl_recv
-#define curlssl_version Curl_ossl_version
-#define curlssl_check_cxn Curl_ossl_check_cxn
-#define curlssl_data_pending(x,y) Curl_ossl_data_pending(x,y)
-
-#endif /* USE_SSLEAY */
-#endif /* __SSLUSE_H */
diff --git a/src/other/curl/lib/strdup.c b/src/other/curl/lib/strdup.c
deleted file mode 100644
index a3107cf..0000000
--- a/src/other/curl/lib/strdup.c
+++ /dev/null
@@ -1,49 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-#include "strdup.h"
-
-#ifndef HAVE_STRDUP
-char *curlx_strdup(const char *str)
-{
-  size_t len;
-  char *newstr;
-
-  if(!str)
-    return (char *)NULL;
-
-  len = strlen(str);
-
-  if(len >= ((size_t)-1) / sizeof(char))
-    return (char *)NULL;
-
-  newstr = malloc((len+1)*sizeof(char));
-  if(!newstr)
-    return (char *)NULL;
-
-  memcpy(newstr,str,(len+1)*sizeof(char));
-
-  return newstr;
-
-}
-#endif
diff --git a/src/other/curl/lib/strdup.h b/src/other/curl/lib/strdup.h
deleted file mode 100644
index 4edbcd7..0000000
--- a/src/other/curl/lib/strdup.h
+++ /dev/null
@@ -1,30 +0,0 @@
-#ifndef HEADER_CURL_STRDUP_H
-#define HEADER_CURL_STRDUP_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include "setup.h"
-
-#ifndef HAVE_STRDUP
-extern char *curlx_strdup(const char *str);
-#endif
-
-#endif /* HEADER_CURL_STRDUP_H */
diff --git a/src/other/curl/lib/strequal.c b/src/other/curl/lib/strequal.c
deleted file mode 100644
index f6bf5f3..0000000
--- a/src/other/curl/lib/strequal.c
+++ /dev/null
@@ -1,121 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <string.h>
-#include <ctype.h>
-
-#ifdef HAVE_STRINGS_H
-#include <strings.h>
-#endif
-
-#include "strequal.h"
-
-int curl_strequal(const char *first, const char *second)
-{
-#if defined(HAVE_STRCASECMP)
-  return !(strcasecmp)(first, second);
-#elif defined(HAVE_STRCMPI)
-  return !(strcmpi)(first, second);
-#elif defined(HAVE_STRICMP)
-  return !(stricmp)(first, second);
-#else
-  while(*first && *second) {
-    if(toupper(*first) != toupper(*second)) {
-      break;
-    }
-    first++;
-    second++;
-  }
-  return toupper(*first) == toupper(*second);
-#endif
-}
-
-int curl_strnequal(const char *first, const char *second, size_t max)
-{
-#if defined(HAVE_STRNCASECMP)
-  return !strncasecmp(first, second, max);
-#elif defined(HAVE_STRNCMPI)
-  return !strncmpi(first, second, max);
-#elif defined(HAVE_STRNICMP)
-  return !strnicmp(first, second, max);
-#else
-  while(*first && *second && max) {
-    if(toupper(*first) != toupper(*second)) {
-      break;
-    }
-    max--;
-    first++;
-    second++;
-  }
-  if(0 == max)
-    return 1; /* they are equal this far */
-
-  return toupper(*first) == toupper(*second);
-#endif
-}
-
-#ifndef HAVE_STRLCAT
-/*
- * The strlcat() function appends the NUL-terminated string src to the end
- * of dst. It will append at most size - strlen(dst) - 1 bytes, NUL-termi-
- * nating the result.
- *
- * The strlcpy() and strlcat() functions return the total length of the
- * string they tried to create.  For strlcpy() that means the length of src.
- * For strlcat() that means the initial length of dst plus the length of
- * src. While this may seem somewhat confusing it was done to make trunca-
- * tion detection simple.
- *
- *
- */
-size_t Curl_strlcat(char *dst, const char *src, size_t siz)
-{
-  char *d = dst;
-  const char *s = src;
-  size_t n = siz;
-  union {
-    ssize_t sig;
-     size_t uns;
-  } dlen;
-
-  /* Find the end of dst and adjust bytes left but don't go past end */
-  while(n-- != 0 && *d != '\0')
-    d++;
-  dlen.sig = d - dst;
-  n = siz - dlen.uns;
-
-  if(n == 0)
-    return(dlen.uns + strlen(s));
-  while(*s != '\0') {
-    if(n != 1) {
-      *d++ = *s;
-      n--;
-    }
-    s++;
-  }
-  *d = '\0';
-
-  return(dlen.uns + (s - src));     /* count does not include NUL */
-}
-#endif
diff --git a/src/other/curl/lib/strequal.h b/src/other/curl/lib/strequal.h
deleted file mode 100644
index 202c919..0000000
--- a/src/other/curl/lib/strequal.h
+++ /dev/null
@@ -1,35 +0,0 @@
-#ifndef __STREQUAL_H
-#define __STREQUAL_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include <curl/curl.h>
-
-#define strequal(a,b) curl_strequal(a,b)
-#define strnequal(a,b,c) curl_strnequal(a,b,c)
-
-#ifndef HAVE_STRLCAT
-#define strlcat(x,y,z) Curl_strlcat(x,y,z)
-#endif
-size_t strlcat(char *dst, const char *src, size_t siz);
-
-#endif
diff --git a/src/other/curl/lib/strerror.c b/src/other/curl/lib/strerror.c
deleted file mode 100644
index 673e89c..0000000
--- a/src/other/curl/lib/strerror.c
+++ /dev/null
@@ -1,769 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2004 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef HAVE_STRERROR_R
-#  if (!defined(HAVE_POSIX_STRERROR_R) && \
-       !defined(HAVE_GLIBC_STRERROR_R) && \
-       !defined(HAVE_VXWORKS_STRERROR_R)) || \
-      (defined(HAVE_POSIX_STRERROR_R) && defined(HAVE_VXWORKS_STRERROR_R)) || \
-      (defined(HAVE_GLIBC_STRERROR_R) && defined(HAVE_VXWORKS_STRERROR_R)) || \
-      (defined(HAVE_POSIX_STRERROR_R) && defined(HAVE_GLIBC_STRERROR_R))
-#    error "strerror_r MUST be either POSIX-style, glibc-style or vxworks-style"
-#  endif
-#endif
-
-#include <curl/curl.h>
-#include <stdlib.h>
-#include <string.h>
-#include <errno.h>
-
-#ifdef USE_LIBIDN
-#include <idna.h>
-#endif
-
-#include "strerror.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-
-const char *
-curl_easy_strerror(CURLcode error)
-{
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-  switch (error) {
-  case CURLE_OK:
-    return "No error";
-
-  case CURLE_UNSUPPORTED_PROTOCOL:
-    return "Unsupported protocol";
-
-  case CURLE_FAILED_INIT:
-    return "Failed initialization";
-
-  case CURLE_URL_MALFORMAT:
-    return "URL using bad/illegal format or missing URL";
-
-  case CURLE_COULDNT_RESOLVE_PROXY:
-    return "Couldn't resolve proxy name";
-
-  case CURLE_COULDNT_RESOLVE_HOST:
-    return "Couldn't resolve host name";
-
-  case CURLE_COULDNT_CONNECT:
-    return "Couldn't connect to server";
-
-  case CURLE_FTP_WEIRD_SERVER_REPLY:
-    return "FTP: weird server reply";
-
-  case CURLE_REMOTE_ACCESS_DENIED:
-    return "Access denied to remote resource";
-
-  case CURLE_FTP_PRET_FAILED:
-    return "FTP: The server did not accept the PRET command.";
-
-  case CURLE_FTP_WEIRD_PASS_REPLY:
-    return "FTP: unknown PASS reply";
-
-  case CURLE_FTP_WEIRD_PASV_REPLY:
-    return "FTP: unknown PASV reply";
-
-  case CURLE_FTP_WEIRD_227_FORMAT:
-    return "FTP: unknown 227 response format";
-
-  case CURLE_FTP_CANT_GET_HOST:
-    return "FTP: can't figure out the host in the PASV response";
-
-  case CURLE_FTP_COULDNT_SET_TYPE:
-    return "FTP: couldn't set file type";
-
-  case CURLE_PARTIAL_FILE:
-    return "Transferred a partial file";
-
-  case CURLE_FTP_COULDNT_RETR_FILE:
-    return "FTP: couldn't retrieve (RETR failed) the specified file";
-
-  case CURLE_QUOTE_ERROR:
-    return "Quote command returned error";
-
-  case CURLE_HTTP_RETURNED_ERROR:
-    return "HTTP response code said error";
-
-  case CURLE_WRITE_ERROR:
-    return "Failed writing received data to disk/application";
-
-  case CURLE_UPLOAD_FAILED:
-    return "Upload failed (at start/before it took off)";
-
-  case CURLE_READ_ERROR:
-    return "Failed to open/read local data from file/application";
-
-  case CURLE_OUT_OF_MEMORY:
-    return "Out of memory";
-
-  case CURLE_OPERATION_TIMEDOUT:
-    return "Timeout was reached";
-
-  case CURLE_FTP_PORT_FAILED:
-    return "FTP: command PORT failed";
-
-  case CURLE_FTP_COULDNT_USE_REST:
-    return "FTP: command REST failed";
-
-  case CURLE_RANGE_ERROR:
-    return "Requested range was not delivered by the server";
-
-  case CURLE_HTTP_POST_ERROR:
-    return "Internal problem setting up the POST";
-
-  case CURLE_SSL_CONNECT_ERROR:
-    return "SSL connect error";
-
-  case CURLE_BAD_DOWNLOAD_RESUME:
-    return "Couldn't resume download";
-
-  case CURLE_FILE_COULDNT_READ_FILE:
-    return "Couldn't read a file:// file";
-
-  case CURLE_LDAP_CANNOT_BIND:
-    return "LDAP: cannot bind";
-
-  case CURLE_LDAP_SEARCH_FAILED:
-    return "LDAP: search failed";
-
-  case CURLE_FUNCTION_NOT_FOUND:
-    return "A required function in the library was not found";
-
-  case CURLE_ABORTED_BY_CALLBACK:
-    return "Operation was aborted by an application callback";
-
-  case CURLE_BAD_FUNCTION_ARGUMENT:
-    return "A libcurl function was given a bad argument";
-
-  case CURLE_INTERFACE_FAILED:
-    return "Failed binding local connection end";
-
-  case CURLE_TOO_MANY_REDIRECTS :
-    return "Number of redirects hit maximum amount";
-
-  case CURLE_UNKNOWN_TELNET_OPTION:
-    return "User specified an unknown telnet option";
-
-  case CURLE_TELNET_OPTION_SYNTAX :
-    return "Malformed telnet option";
-
-  case CURLE_PEER_FAILED_VERIFICATION:
-    return "SSL peer certificate or SSH remote key was not OK";
-
-  case CURLE_GOT_NOTHING:
-    return "Server returned nothing (no headers, no data)";
-
-  case CURLE_SSL_ENGINE_NOTFOUND:
-    return "SSL crypto engine not found";
-
-  case CURLE_SSL_ENGINE_SETFAILED:
-    return "Can not set SSL crypto engine as default";
-
-  case CURLE_SSL_ENGINE_INITFAILED:
-    return "Failed to initialise SSL crypto engine";
-
-  case CURLE_SEND_ERROR:
-    return "Failed sending data to the peer";
-
-  case CURLE_RECV_ERROR:
-    return "Failure when receiving data from the peer";
-
-  case CURLE_SSL_CERTPROBLEM:
-    return "Problem with the local SSL certificate";
-
-  case CURLE_SSL_CIPHER:
-    return "Couldn't use specified SSL cipher";
-
-  case CURLE_SSL_CACERT:
-    return "Peer certificate cannot be authenticated with known CA certificates";
-
-  case CURLE_SSL_CACERT_BADFILE:
-    return "Problem with the SSL CA cert (path? access rights?)";
-
-  case CURLE_BAD_CONTENT_ENCODING:
-    return "Unrecognized HTTP Content-Encoding";
-
-  case CURLE_LDAP_INVALID_URL:
-    return "Invalid LDAP URL";
-
-  case CURLE_FILESIZE_EXCEEDED:
-    return "Maximum file size exceeded";
-
-  case CURLE_USE_SSL_FAILED:
-    return "Requested SSL level failed";
-
-  case CURLE_SSL_SHUTDOWN_FAILED:
-    return "Failed to shut down the SSL connection";
-
-  case CURLE_SSL_CRL_BADFILE:
-    return "Failed to load CRL file (path? access rights?, format?)";
-
-  case CURLE_SSL_ISSUER_ERROR:
-    return "Issuer check against peer certificate failed";
-
-  case CURLE_SEND_FAIL_REWIND:
-    return "Send failed since rewinding of the data stream failed";
-
-  case CURLE_LOGIN_DENIED:
-    return "Login denied";
-
-  case CURLE_TFTP_NOTFOUND:
-    return "TFTP: File Not Found";
-
-  case CURLE_TFTP_PERM:
-    return "TFTP: Access Violation";
-
-  case CURLE_REMOTE_DISK_FULL:
-    return "Disk full or allocation exceeded";
-
-  case CURLE_TFTP_ILLEGAL:
-    return "TFTP: Illegal operation";
-
-  case CURLE_TFTP_UNKNOWNID:
-    return "TFTP: Unknown transfer ID";
-
-  case CURLE_REMOTE_FILE_EXISTS:
-    return "Remote file already exists";
-
-  case CURLE_TFTP_NOSUCHUSER:
-    return "TFTP: No such user";
-
-  case CURLE_CONV_FAILED:
-    return "Conversion failed";
-
-  case CURLE_CONV_REQD:
-    return "Caller must register CURLOPT_CONV_ callback options";
-
-  case CURLE_REMOTE_FILE_NOT_FOUND:
-    return "Remote file not found";
-
-  case CURLE_SSH:
-    return "Error in the SSH layer";
-
-  case CURLE_AGAIN:
-    return "Socket not ready for send/recv";
-
-  case CURLE_RTSP_CSEQ_ERROR:
-    return "RTSP CSeq mismatch or invalid CSeq";
-
-  case CURLE_RTSP_SESSION_ERROR:
-    return "RTSP session error";
-
-    /* error codes not used by current libcurl */
-  case CURLE_OBSOLETE4:
-  case CURLE_OBSOLETE10:
-  case CURLE_OBSOLETE12:
-  case CURLE_OBSOLETE16:
-  case CURLE_OBSOLETE20:
-  case CURLE_OBSOLETE24:
-  case CURLE_OBSOLETE29:
-  case CURLE_OBSOLETE32:
-  case CURLE_OBSOLETE40:
-  case CURLE_OBSOLETE44:
-  case CURLE_OBSOLETE46:
-  case CURLE_OBSOLETE50:
-  case CURLE_OBSOLETE57:
-  case CURL_LAST:
-    break;
-  }
-  /*
-   * By using a switch, gcc -Wall will complain about enum values
-   * which do not appear, helping keep this function up-to-date.
-   * By using gcc -Wall -Werror, you can't forget.
-   *
-   * A table would not have the same benefit.  Most compilers will
-   * generate code very similar to a table in any case, so there
-   * is little performance gain from a table.  And something is broken
-   * for the user's application, anyways, so does it matter how fast
-   * it _doesn't_ work?
-   *
-   * The line number for the error will be near this comment, which
-   * is why it is here, and not at the start of the switch.
-   */
-  return "Unknown error";
-#else
-  if(error == CURLE_OK)
-    return "No error";
-  else
-    return "Error";
-#endif
-}
-
-const char *
-curl_multi_strerror(CURLMcode error)
-{
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-  switch (error) {
-  case CURLM_CALL_MULTI_PERFORM:
-    return "Please call curl_multi_perform() soon";
-
-  case CURLM_OK:
-    return "No error";
-
-  case CURLM_BAD_HANDLE:
-    return "Invalid multi handle";
-
-  case CURLM_BAD_EASY_HANDLE:
-    return "Invalid easy handle";
-
-  case CURLM_OUT_OF_MEMORY:
-    return "Out of memory";
-
-  case CURLM_INTERNAL_ERROR:
-    return "Internal error";
-
-  case CURLM_BAD_SOCKET:
-    return "Invalid socket argument";
-
-  case CURLM_UNKNOWN_OPTION:
-    return "Unknown option";
-
-  case CURLM_LAST:
-    break;
-  }
-
-  return "Unknown error";
-#else
-  if(error == CURLM_OK)
-    return "No error";
-  else
-    return "Error";
-#endif
-}
-
-const char *
-curl_share_strerror(CURLSHcode error)
-{
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-  switch (error) {
-  case CURLSHE_OK:
-    return "No error";
-
-  case CURLSHE_BAD_OPTION:
-    return "Unknown share option";
-
-  case CURLSHE_IN_USE:
-    return "Share currently in use";
-
-  case CURLSHE_INVALID:
-    return "Invalid share handle";
-
-  case CURLSHE_NOMEM:
-    return "Out of memory";
-
-  case CURLSHE_LAST:
-    break;
-  }
-
-  return "CURLSHcode unknown";
-#else
-  if(error == CURLSHE_OK)
-    return "No error";
-  else
-    return "Error";
-#endif
-}
-
-#ifdef USE_WINSOCK
-
-/* This function handles most / all (?) Winsock errors cURL is able to produce.
- */
-static const char *
-get_winsock_error (int err, char *buf, size_t len)
-{
-  const char *p;
-
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-  switch (err) {
-  case WSAEINTR:
-    p = "Call interrupted";
-    break;
-  case WSAEBADF:
-    p = "Bad file";
-    break;
-  case WSAEACCES:
-    p = "Bad access";
-    break;
-  case WSAEFAULT:
-    p = "Bad argument";
-    break;
-  case WSAEINVAL:
-    p = "Invalid arguments";
-    break;
-  case WSAEMFILE:
-    p = "Out of file descriptors";
-    break;
-  case WSAEWOULDBLOCK:
-    p = "Call would block";
-    break;
-  case WSAEINPROGRESS:
-  case WSAEALREADY:
-    p = "Blocking call in progress";
-    break;
-  case WSAENOTSOCK:
-    p = "Descriptor is not a socket";
-    break;
-  case WSAEDESTADDRREQ:
-    p = "Need destination address";
-    break;
-  case WSAEMSGSIZE:
-    p = "Bad message size";
-    break;
-  case WSAEPROTOTYPE:
-    p = "Bad protocol";
-    break;
-  case WSAENOPROTOOPT:
-    p = "Protocol option is unsupported";
-    break;
-  case WSAEPROTONOSUPPORT:
-    p = "Protocol is unsupported";
-    break;
-  case WSAESOCKTNOSUPPORT:
-    p = "Socket is unsupported";
-    break;
-  case WSAEOPNOTSUPP:
-    p = "Operation not supported";
-    break;
-  case WSAEAFNOSUPPORT:
-    p = "Address family not supported";
-    break;
-  case WSAEPFNOSUPPORT:
-    p = "Protocol family not supported";
-    break;
-  case WSAEADDRINUSE:
-    p = "Address already in use";
-    break;
-  case WSAEADDRNOTAVAIL:
-    p = "Address not available";
-    break;
-  case WSAENETDOWN:
-    p = "Network down";
-    break;
-  case WSAENETUNREACH:
-    p = "Network unreachable";
-    break;
-  case WSAENETRESET:
-    p = "Network has been reset";
-    break;
-  case WSAECONNABORTED:
-    p = "Connection was aborted";
-    break;
-  case WSAECONNRESET:
-    p = "Connection was reset";
-    break;
-  case WSAENOBUFS:
-    p = "No buffer space";
-    break;
-  case WSAEISCONN:
-    p = "Socket is already connected";
-    break;
-  case WSAENOTCONN:
-    p = "Socket is not connected";
-    break;
-  case WSAESHUTDOWN:
-    p = "Socket has been shut down";
-    break;
-  case WSAETOOMANYREFS:
-    p = "Too many references";
-    break;
-  case WSAETIMEDOUT:
-    p = "Timed out";
-    break;
-  case WSAECONNREFUSED:
-    p = "Connection refused";
-    break;
-  case WSAELOOP:
-    p = "Loop??";
-    break;
-  case WSAENAMETOOLONG:
-    p = "Name too long";
-    break;
-  case WSAEHOSTDOWN:
-    p = "Host down";
-    break;
-  case WSAEHOSTUNREACH:
-    p = "Host unreachable";
-    break;
-  case WSAENOTEMPTY:
-    p = "Not empty";
-    break;
-  case WSAEPROCLIM:
-    p = "Process limit reached";
-    break;
-  case WSAEUSERS:
-    p = "Too many users";
-    break;
-  case WSAEDQUOT:
-    p = "Bad quota";
-    break;
-  case WSAESTALE:
-    p = "Something is stale";
-    break;
-  case WSAEREMOTE:
-    p = "Remote error";
-    break;
-#ifdef WSAEDISCON  /* missing in SalfordC! */
-  case WSAEDISCON:
-    p = "Disconnected";
-    break;
-#endif
-    /* Extended Winsock errors */
-  case WSASYSNOTREADY:
-    p = "Winsock library is not ready";
-    break;
-  case WSANOTINITIALISED:
-    p = "Winsock library not initialised";
-    break;
-  case WSAVERNOTSUPPORTED:
-    p = "Winsock version not supported";
-    break;
-
-    /* getXbyY() errors (already handled in herrmsg):
-     * Authoritative Answer: Host not found */
-  case WSAHOST_NOT_FOUND:
-    p = "Host not found";
-    break;
-
-    /* Non-Authoritative: Host not found, or SERVERFAIL */
-  case WSATRY_AGAIN:
-    p = "Host not found, try again";
-    break;
-
-    /* Non recoverable errors, FORMERR, REFUSED, NOTIMP */
-  case WSANO_RECOVERY:
-    p = "Unrecoverable error in call to nameserver";
-    break;
-
-    /* Valid name, no data record of requested type */
-  case WSANO_DATA:
-    p = "No data record of requested type";
-    break;
-
-  default:
-    return NULL;
-  }
-#else
-  if(err == CURLE_OK)
-    return NULL;
-  else
-    p = "error";
-#endif
-  strncpy (buf, p, len);
-  buf [len-1] = '\0';
-  return buf;
-}
-#endif   /* USE_WINSOCK */
-
-/*
- * Our thread-safe and smart strerror() replacement.
- *
- * The 'err' argument passed in to this function MUST be a true errno number
- * as reported on this system. We do no range checking on the number before
- * we pass it to the "number-to-message" conversion function and there might
- * be systems that don't do proper range checking in there themselves.
- *
- * We don't do range checking (on systems other than Windows) since there is
- * no good reliable and portable way to do it.
- */
-const char *Curl_strerror(struct connectdata *conn, int err)
-{
-  char *buf, *p;
-  size_t max;
-  int old_errno = ERRNO;
-
-  DEBUGASSERT(conn);
-  DEBUGASSERT(err >= 0);
-
-  buf = conn->syserr_buf;
-  max = sizeof(conn->syserr_buf)-1;
-  *buf = '\0';
-
-#ifdef USE_WINSOCK
-
-#ifdef _WIN32_WCE
-  {
-    wchar_t wbuf[256];
-    wbuf[0] = L'\0';
-
-    FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, err,
-                  LANG_NEUTRAL, wbuf, sizeof(wbuf)/sizeof(wchar_t), NULL);
-    wcstombs(buf,wbuf,max);
-  }
-#else
-  /* 'sys_nerr' is the maximum errno number, it is not widely portable */
-  if(err >= 0 && err < sys_nerr)
-    strncpy(buf, strerror(err), max);
-  else {
-    if(!get_winsock_error(err, buf, max) &&
-        !FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, err,
-                       LANG_NEUTRAL, buf, (DWORD)max, NULL))
-      snprintf(buf, max, "Unknown error %d (%#x)", err, err);
-  }
-#endif
-
-#else /* not USE_WINSOCK coming up */
-
-#if defined(HAVE_STRERROR_R) && defined(HAVE_POSIX_STRERROR_R)
- /*
-  * The POSIX-style strerror_r() may set errno to ERANGE if insufficient
-  * storage is supplied via 'strerrbuf' and 'buflen' to hold the generated
-  * message string, or EINVAL if 'errnum' is not a valid error number.
-  */
-  if(0 != strerror_r(err, buf, max)) {
-    if('\0' == buf[0])
-      snprintf(buf, max, "Unknown error %d", err);
-  }
-#elif defined(HAVE_STRERROR_R) && defined(HAVE_GLIBC_STRERROR_R)
- /*
-  * The glibc-style strerror_r() only *might* use the buffer we pass to
-  * the function, but it always returns the error message as a pointer,
-  * so we must copy that string unconditionally (if non-NULL).
-  */
-  {
-    char buffer[256];
-    char *msg = strerror_r(err, buffer, sizeof(buffer));
-    if(msg)
-      strncpy(buf, msg, max);
-    else
-      snprintf(buf, max, "Unknown error %d", err);
-  }
-#elif defined(HAVE_STRERROR_R) && defined(HAVE_VXWORKS_STRERROR_R)
- /*
-  * The vxworks-style strerror_r() does use the buffer we pass to the function.
-  * The buffer size should be at least MAXERRSTR_SIZE (150) defined in rtsold.h
-  */
-  {
-    char buffer[256];
-    if(OK == strerror_r(err, buffer))
-      strncpy(buf, buffer, max);
-    else
-      snprintf(buf, max, "Unknown error %d", err);
-  }
-#else
-  {
-    char *msg = strerror(err);
-    if(msg)
-      strncpy(buf, msg, max);
-    else
-      snprintf(buf, max, "Unknown error %d", err);
-  }
-#endif
-
-#endif /* end of ! USE_WINSOCK */
-
-  buf[max] = '\0'; /* make sure the string is zero terminated */
-
-  /* strip trailing '\r\n' or '\n'. */
-  if((p = strrchr(buf,'\n')) != NULL && (p - buf) >= 2)
-     *p = '\0';
-  if((p = strrchr(buf,'\r')) != NULL && (p - buf) >= 1)
-     *p = '\0';
-
-  if(old_errno != ERRNO)
-    SET_ERRNO(old_errno);
-
-  return buf;
-}
-
-#ifdef USE_LIBIDN
-/*
- * Return error-string for libidn status as returned from idna_to_ascii_lz().
- */
-const char *Curl_idn_strerror (struct connectdata *conn, int err)
-{
-#ifdef HAVE_IDNA_STRERROR
-  (void)conn;
-  return idna_strerror((Idna_rc) err);
-#else
-  const char *str;
-  char *buf;
-  size_t max;
-
-  DEBUGASSERT(conn);
-
-  buf = conn->syserr_buf;
-  max = sizeof(conn->syserr_buf)-1;
-  *buf = '\0';
-
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-  switch ((Idna_rc)err) {
-    case IDNA_SUCCESS:
-      str = "No error";
-      break;
-    case IDNA_STRINGPREP_ERROR:
-      str = "Error in string preparation";
-      break;
-    case IDNA_PUNYCODE_ERROR:
-      str = "Error in Punycode operation";
-      break;
-    case IDNA_CONTAINS_NON_LDH:
-      str = "Illegal ASCII characters";
-      break;
-    case IDNA_CONTAINS_MINUS:
-      str = "Contains minus";
-      break;
-    case IDNA_INVALID_LENGTH:
-      str = "Invalid output length";
-      break;
-    case IDNA_NO_ACE_PREFIX:
-      str = "No ACE prefix (\"xn--\")";
-      break;
-    case IDNA_ROUNDTRIP_VERIFY_ERROR:
-      str = "Round trip verify error";
-      break;
-    case IDNA_CONTAINS_ACE_PREFIX:
-      str = "Already have ACE prefix (\"xn--\")";
-      break;
-    case IDNA_ICONV_ERROR:
-      str = "Locale conversion failed";
-      break;
-    case IDNA_MALLOC_ERROR:
-      str = "Allocation failed";
-      break;
-    case IDNA_DLOPEN_ERROR:
-      str = "dlopen() error";
-      break;
-    default:
-      snprintf(buf, max, "error %d", err);
-      str = NULL;
-      break;
-  }
-#else
-  if((Idna_rc)err == IDNA_SUCCESS)
-    str = "No error";
-  else
-    str = "Error";
-#endif
-  if(str)
-    strncpy(buf, str, max);
-  buf[max] = '\0';
-  return (buf);
-#endif
-}
-#endif  /* USE_LIBIDN */
diff --git a/src/other/curl/lib/strerror.h b/src/other/curl/lib/strerror.h
deleted file mode 100644
index 7f2342a..0000000
--- a/src/other/curl/lib/strerror.h
+++ /dev/null
@@ -1,33 +0,0 @@
-#ifndef __CURL_STRERROR_H
-#define __CURL_STRERROR_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "urldata.h"
-
-const char *Curl_strerror (struct connectdata *conn, int err);
-
-#ifdef USE_LIBIDN
-const char *Curl_idn_strerror (struct connectdata *conn, int err);
-#endif
-
-#endif
diff --git a/src/other/curl/lib/strtok.c b/src/other/curl/lib/strtok.c
deleted file mode 100644
index 91c2541..0000000
--- a/src/other/curl/lib/strtok.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef HAVE_STRTOK_R
-#include <stddef.h>
-#include <string.h>
-
-#include "strtok.h"
-
-char *
-Curl_strtok_r(char *ptr, const char *sep, char **end)
-{
-  if(!ptr)
-    /* we got NULL input so then we get our last position instead */
-    ptr = *end;
-
-  /* pass all letters that are including in the separator string */
-  while(*ptr && strchr(sep, *ptr))
-    ++ptr;
-
-  if(*ptr) {
-    /* so this is where the next piece of string starts */
-    char *start = ptr;
-
-    /* set the end pointer to the first byte after the start */
-    *end = start + 1;
-
-    /* scan through the string to find where it ends, it ends on a
-       null byte or a character that exists in the separator string */
-    while(**end && !strchr(sep, **end))
-      ++*end;
-
-    if(**end) {
-      /* the end is not a null byte */
-      **end = '\0';  /* zero terminate it! */
-      ++*end;        /* advance the last pointer to beyond the null byte */
-    }
-
-    return start; /* return the position where the string starts */
-  }
-
-  /* we ended up on a null byte, there are no more strings to find! */
-  return NULL;
-}
-
-#endif /* this was only compiled if strtok_r wasn't present */
diff --git a/src/other/curl/lib/strtok.h b/src/other/curl/lib/strtok.h
deleted file mode 100644
index 8baf779..0000000
--- a/src/other/curl/lib/strtok.h
+++ /dev/null
@@ -1,34 +0,0 @@
-#ifndef HEADER_CURL_STRTOK_H
-#define HEADER_CURL_STRTOK_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include "setup.h"
-#include <stddef.h>
-
-#ifndef HAVE_STRTOK_R
-char *Curl_strtok_r(char *s, const char *delim, char **last);
-#define strtok_r Curl_strtok_r
-#else
-#include <string.h>
-#endif
-
-#endif /* HEADER_CURL_STRTOK_H */
diff --git a/src/other/curl/lib/strtoofft.c b/src/other/curl/lib/strtoofft.c
deleted file mode 100644
index f75eb8a..0000000
--- a/src/other/curl/lib/strtoofft.c
+++ /dev/null
@@ -1,191 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-#include "strtoofft.h"
-
-/*
- * NOTE:
- *
- * In the ISO C standard (IEEE Std 1003.1), there is a strtoimax() function we
- * could use in case strtoll() doesn't exist...  See
- * http://www.opengroup.org/onlinepubs/009695399/functions/strtoimax.html
- */
-
-#ifdef NEED_CURL_STRTOLL
-#include <stdlib.h>
-#include <ctype.h>
-#include <errno.h>
-
-/* Range tests can be used for alphanum decoding if characters are consecutive,
-   like in ASCII. Else an array is scanned. Determine this condition now. */
-
-#if('9' - '0') != 9 || ('Z' - 'A') != 25 || ('z' - 'a') != 25
-#include <string.h>
-
-#define NO_RANGE_TEST
-
-static const char valchars[] =
-            "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
-#endif
-
-static int get_char(char c, int base);
-
-/**
- * Emulated version of the strtoll function.  This extracts a long long
- * value from the given input string and returns it.
- */
-curl_off_t
-curlx_strtoll(const char *nptr, char **endptr, int base)
-{
-  char *end;
-  int is_negative = 0;
-  int overflow;
-  int i;
-  curl_off_t value = 0;
-  curl_off_t newval;
-
-  /* Skip leading whitespace. */
-  end = (char *)nptr;
-  while(ISSPACE(end[0])) {
-    end++;
-  }
-
-  /* Handle the sign, if any. */
-  if(end[0] == '-') {
-    is_negative = 1;
-    end++;
-  }
-  else if(end[0] == '+') {
-    end++;
-  }
-  else if(end[0] == '\0') {
-    /* We had nothing but perhaps some whitespace -- there was no number. */
-    if(endptr) {
-      *endptr = end;
-    }
-    return 0;
-  }
-
-  /* Handle special beginnings, if present and allowed. */
-  if(end[0] == '0' && end[1] == 'x') {
-    if(base == 16 || base == 0) {
-      end += 2;
-      base = 16;
-    }
-  }
-  else if(end[0] == '0') {
-    if(base == 8 || base == 0) {
-      end++;
-      base = 8;
-    }
-  }
-
-  /* Matching strtol, if the base is 0 and it doesn't look like
-   * the number is octal or hex, we assume it's base 10.
-   */
-  if(base == 0) {
-    base = 10;
-  }
-
-  /* Loop handling digits. */
-  value = 0;
-  overflow = 0;
-  for (i = get_char(end[0], base);
-       i != -1;
-       end++, i = get_char(end[0], base)) {
-    newval = base * value + i;
-    if(newval < value) {
-      /* We've overflowed. */
-      overflow = 1;
-      break;
-    }
-    else
-      value = newval;
-  }
-
-  if(!overflow) {
-    if(is_negative) {
-      /* Fix the sign. */
-      value *= -1;
-    }
-  }
-  else {
-    if(is_negative)
-      value = CURL_LLONG_MIN;
-    else
-      value = CURL_LLONG_MAX;
-
-    SET_ERRNO(ERANGE);
-  }
-
-  if(endptr)
-    *endptr = end;
-
-  return value;
-}
-
-/**
- * Returns the value of c in the given base, or -1 if c cannot
- * be interpreted properly in that base (i.e., is out of range,
- * is a null, etc.).
- *
- * @param c     the character to interpret according to base
- * @param base  the base in which to interpret c
- *
- * @return  the value of c in base, or -1 if c isn't in range
- */
-static int get_char(char c, int base)
-{
-#ifndef NO_RANGE_TEST
-  int value = -1;
-  if(c <= '9' && c >= '0') {
-    value = c - '0';
-  }
-  else if(c <= 'Z' && c >= 'A') {
-    value = c - 'A' + 10;
-  }
-  else if(c <= 'z' && c >= 'a') {
-    value = c - 'a' + 10;
-  }
-#else
-  const char * cp;
-  int value;
-
-  cp = memchr(valchars, c, 10 + 26 + 26);
-
-  if(!cp)
-    return -1;
-
-  value = cp - valchars;
-
-  if(value >= 10 + 26)
-    value -= 26;                /* Lowercase. */
-#endif
-
-  if(value >= base) {
-    value = -1;
-  }
-
-  return value;
-}
-#endif  /* Only present if we need strtoll, but don't have it. */
diff --git a/src/other/curl/lib/strtoofft.h b/src/other/curl/lib/strtoofft.h
deleted file mode 100644
index bf27a17..0000000
--- a/src/other/curl/lib/strtoofft.h
+++ /dev/null
@@ -1,63 +0,0 @@
-#ifndef HEADER_CURL_STRTOOFFT_H
-#define HEADER_CURL_STRTOOFFT_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-/*
- * Determine which string to integral data type conversion function we use
- * to implement string conversion to our curl_off_t integral data type.
- *
- * Notice that curl_off_t might be 64 or 32 bit wide, and that it might use
- * an undelying data type which might be 'long', 'int64_t', 'long long' or
- * '__int64' and more remotely other data types.
- *
- * On systems where the size of curl_off_t is greater than the size of 'long'
- * the conversion funtion to use is strtoll() if it is available, otherwise,
- * we emulate its functionality with our own clone.
- *
- * On systems where the size of curl_off_t is smaller or equal than the size
- * of 'long' the conversion funtion to use is strtol().
- */
-
-#if (CURL_SIZEOF_CURL_OFF_T > CURL_SIZEOF_LONG)
-#  ifdef HAVE_STRTOLL
-#    define curlx_strtoofft strtoll
-#  else
-#    if defined(_MSC_VER) && (_MSC_VER >= 1300) && (_INTEGRAL_MAX_BITS >= 64)
-       _CRTIMP __int64 __cdecl _strtoi64(const char *, char **, int);
-#      define curlx_strtoofft _strtoi64
-#    else
-       curl_off_t curlx_strtoll(const char *nptr, char **endptr, int base);
-#      define curlx_strtoofft curlx_strtoll
-#      define NEED_CURL_STRTOLL 1
-#    endif
-#  endif
-#else
-#  define curlx_strtoofft strtol
-#endif
-
-#define CURL_LLONG_MAX CURL_OFF_T_C(0x7FFFFFFFFFFFFFFF)
-#define CURL_LLONG_MIN (-CURL_LLONG_MAX - CURL_OFF_T_C(1))
-
-#endif /* HEADER_CURL_STRTOOFFT_H */
diff --git a/src/other/curl/lib/telnet.c b/src/other/curl/lib/telnet.c
deleted file mode 100644
index 9409f49..0000000
--- a/src/other/curl/lib/telnet.c
+++ /dev/null
@@ -1,1519 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_TELNET
-/* -- WIN32 approved -- */
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-
-#if defined(WIN32)
-#include <time.h>
-#include <io.h>
-#else
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#include <netinet/in.h>
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#include <netdb.h>
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_NET_IF_H
-#include <net/if.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
-#endif
-
-#ifdef HAVE_SYS_PARAM_H
-#include <sys/param.h>
-#endif
-
-#endif  /* WIN32 */
-
-#include "urldata.h"
-#include <curl/curl.h>
-#include "transfer.h"
-#include "sendf.h"
-#include "telnet.h"
-#include "connect.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#define  TELOPTS
-#define  TELCMDS
-
-#include "arpa_telnet.h"
-#include "curl_memory.h"
-#include "select.h"
-#include "strequal.h"
-#include "rawstr.h"
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#define SUBBUFSIZE 512
-
-#define CURL_SB_CLEAR(x)  x->subpointer = x->subbuffer;
-#define CURL_SB_TERM(x)   { x->subend = x->subpointer; CURL_SB_CLEAR(x); }
-#define CURL_SB_ACCUM(x,c) \
-  if(x->subpointer < (x->subbuffer+sizeof x->subbuffer)) { \
-    *x->subpointer++ = (c); \
-  }
-
-#define  CURL_SB_GET(x) ((*x->subpointer++)&0xff)
-#define  CURL_SB_PEEK(x)   ((*x->subpointer)&0xff)
-#define  CURL_SB_EOF(x) (x->subpointer >= x->subend)
-#define  CURL_SB_LEN(x) (x->subend - x->subpointer)
-
-#ifdef CURL_DISABLE_VERBOSE_STRINGS
-#define printoption(a,b,c,d)  do { } while(0)
-#endif
-
-#ifdef USE_WINSOCK
-typedef FARPROC WSOCK2_FUNC;
-static CURLcode check_wsock2 ( struct SessionHandle *data );
-#endif
-
-static
-CURLcode telrcv(struct connectdata *,
-                const unsigned char *inbuf, /* Data received from socket */
-                ssize_t count);             /* Number of bytes received */
-
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-static void printoption(struct SessionHandle *data,
-                        const char *direction,
-                        int cmd, int option);
-#endif
-
-static void negotiate(struct connectdata *);
-static void send_negotiation(struct connectdata *, int cmd, int option);
-static void set_local_option(struct connectdata *, int cmd, int option);
-static void set_remote_option(struct connectdata *, int cmd, int option);
-
-static void printsub(struct SessionHandle *data,
-                     int direction, unsigned char *pointer,
-                     size_t length);
-static void suboption(struct connectdata *);
-
-static CURLcode telnet_do(struct connectdata *conn, bool *done);
-static CURLcode telnet_done(struct connectdata *conn,
-                                 CURLcode, bool premature);
-
-/* For negotiation compliant to RFC 1143 */
-#define CURL_NO          0
-#define CURL_YES         1
-#define CURL_WANTYES     2
-#define CURL_WANTNO      3
-
-#define CURL_EMPTY       0
-#define CURL_OPPOSITE    1
-
-/*
- * Telnet receiver states for fsm
- */
-typedef enum
-{
-   CURL_TS_DATA = 0,
-   CURL_TS_IAC,
-   CURL_TS_WILL,
-   CURL_TS_WONT,
-   CURL_TS_DO,
-   CURL_TS_DONT,
-   CURL_TS_CR,
-   CURL_TS_SB,   /* sub-option collection */
-   CURL_TS_SE   /* looking for sub-option end */
-} TelnetReceive;
-
-struct TELNET {
-  int please_negotiate;
-  int already_negotiated;
-  int us[256];
-  int usq[256];
-  int us_preferred[256];
-  int him[256];
-  int himq[256];
-  int him_preferred[256];
-  char subopt_ttype[32];             /* Set with suboption TTYPE */
-  char subopt_xdisploc[128];          /* Set with suboption XDISPLOC */
-  struct curl_slist *telnet_vars; /* Environment variables */
-
-  /* suboptions */
-  unsigned char subbuffer[SUBBUFSIZE];
-  unsigned char *subpointer, *subend;      /* buffer for sub-options */
-
-  TelnetReceive telrcv_state;
-};
-
-
-/*
- * TELNET protocol handler.
- */
-
-const struct Curl_handler Curl_handler_telnet = {
-  "TELNET",                             /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  telnet_do,                            /* do_it */
-  telnet_done,                          /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  PORT_TELNET,                          /* defport */
-  PROT_TELNET                           /* protocol */
-};
-
-
-#ifdef USE_WINSOCK
-static CURLcode
-check_wsock2 ( struct SessionHandle *data )
-{
-  int err;
-  WORD wVersionRequested;
-  WSADATA wsaData;
-
-  DEBUGASSERT(data);
-
-  /* telnet requires at least WinSock 2.0 so ask for it. */
-  wVersionRequested = MAKEWORD(2, 0);
-
-  err = WSAStartup(wVersionRequested, &wsaData);
-
-  /* We must've called this once already, so this call */
-  /* should always succeed.  But, just in case... */
-  if(err != 0) {
-    failf(data,"WSAStartup failed (%d)",err);
-    return CURLE_FAILED_INIT;
-  }
-
-  /* We have to have a WSACleanup call for every successful */
-  /* WSAStartup call. */
-  WSACleanup();
-
-  /* Check that our version is supported */
-  if(LOBYTE(wsaData.wVersion) != LOBYTE(wVersionRequested) ||
-      HIBYTE(wsaData.wVersion) != HIBYTE(wVersionRequested)) {
-      /* Our version isn't supported */
-      failf(data,"insufficient winsock version to support "
-            "telnet");
-      return CURLE_FAILED_INIT;
-  }
-
-  /* Our version is supported */
-  return CURLE_OK;
-}
-#endif
-
-static
-CURLcode init_telnet(struct connectdata *conn)
-{
-  struct TELNET *tn;
-
-  tn = calloc(1, sizeof(struct TELNET));
-  if(!tn)
-    return CURLE_OUT_OF_MEMORY;
-
-  conn->data->state.proto.telnet = (void *)tn; /* make us known */
-
-  tn->telrcv_state = CURL_TS_DATA;
-
-  /* Init suboptions */
-  CURL_SB_CLEAR(tn);
-
-  /* Set the options we want by default */
-  tn->us_preferred[CURL_TELOPT_BINARY] = CURL_YES;
-  tn->us_preferred[CURL_TELOPT_SGA] = CURL_YES;
-  tn->him_preferred[CURL_TELOPT_BINARY] = CURL_YES;
-  tn->him_preferred[CURL_TELOPT_SGA] = CURL_YES;
-
-  return CURLE_OK;
-}
-
-static void negotiate(struct connectdata *conn)
-{
-  int i;
-  struct TELNET *tn = (struct TELNET *) conn->data->state.proto.telnet;
-
-  for(i = 0;i < CURL_NTELOPTS;i++)
-  {
-    if(tn->us_preferred[i] == CURL_YES)
-      set_local_option(conn, i, CURL_YES);
-
-    if(tn->him_preferred[i] == CURL_YES)
-      set_remote_option(conn, i, CURL_YES);
-  }
-}
-
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-static void printoption(struct SessionHandle *data,
-                        const char *direction, int cmd, int option)
-{
-  const char *fmt;
-  const char *opt;
-
-  if(data->set.verbose)
-  {
-    if(cmd == CURL_IAC)
-    {
-      if(CURL_TELCMD_OK(option))
-        infof(data, "%s IAC %s\n", direction, CURL_TELCMD(option));
-      else
-        infof(data, "%s IAC %d\n", direction, option);
-    }
-    else
-    {
-      fmt = (cmd == CURL_WILL) ? "WILL" : (cmd == CURL_WONT) ? "WONT" :
-        (cmd == CURL_DO) ? "DO" : (cmd == CURL_DONT) ? "DONT" : 0;
-      if(fmt)
-      {
-        if(CURL_TELOPT_OK(option))
-          opt = CURL_TELOPT(option);
-        else if(option == CURL_TELOPT_EXOPL)
-          opt = "EXOPL";
-        else
-          opt = NULL;
-
-        if(opt)
-          infof(data, "%s %s %s\n", direction, fmt, opt);
-        else
-          infof(data, "%s %s %d\n", direction, fmt, option);
-      }
-      else
-        infof(data, "%s %d %d\n", direction, cmd, option);
-    }
-  }
-}
-#endif
-
-static void send_negotiation(struct connectdata *conn, int cmd, int option)
-{
-   unsigned char buf[3];
-   ssize_t bytes_written;
-   int err;
-   struct SessionHandle *data = conn->data;
-
-   buf[0] = CURL_IAC;
-   buf[1] = (unsigned char)cmd;
-   buf[2] = (unsigned char)option;
-
-   bytes_written = swrite(conn->sock[FIRSTSOCKET], buf, 3);
-   if(bytes_written < 0) {
-     err = SOCKERRNO;
-     failf(data,"Sending data failed (%d)",err);
-   }
-
-   printoption(conn->data, "SENT", cmd, option);
-}
-
-static
-void set_remote_option(struct connectdata *conn, int option, int newstate)
-{
-  struct TELNET *tn = (struct TELNET *)conn->data->state.proto.telnet;
-  if(newstate == CURL_YES)
-  {
-    switch(tn->him[option])
-    {
-      case CURL_NO:
-        tn->him[option] = CURL_WANTYES;
-        send_negotiation(conn, CURL_DO, option);
-        break;
-
-      case CURL_YES:
-        /* Already enabled */
-        break;
-
-      case CURL_WANTNO:
-        switch(tn->himq[option])
-        {
-          case CURL_EMPTY:
-            /* Already negotiating for CURL_YES, queue the request */
-            tn->himq[option] = CURL_OPPOSITE;
-            break;
-          case CURL_OPPOSITE:
-            /* Error: already queued an enable request */
-            break;
-        }
-        break;
-
-      case CURL_WANTYES:
-        switch(tn->himq[option])
-        {
-          case CURL_EMPTY:
-            /* Error: already negotiating for enable */
-            break;
-          case CURL_OPPOSITE:
-            tn->himq[option] = CURL_EMPTY;
-            break;
-        }
-        break;
-    }
-  }
-  else /* NO */
-  {
-    switch(tn->him[option])
-    {
-      case CURL_NO:
-        /* Already disabled */
-        break;
-
-      case CURL_YES:
-        tn->him[option] = CURL_WANTNO;
-        send_negotiation(conn, CURL_DONT, option);
-        break;
-
-      case CURL_WANTNO:
-        switch(tn->himq[option])
-        {
-          case CURL_EMPTY:
-            /* Already negotiating for NO */
-            break;
-          case CURL_OPPOSITE:
-            tn->himq[option] = CURL_EMPTY;
-            break;
-        }
-        break;
-
-      case CURL_WANTYES:
-        switch(tn->himq[option])
-        {
-          case CURL_EMPTY:
-            tn->himq[option] = CURL_OPPOSITE;
-            break;
-          case CURL_OPPOSITE:
-            break;
-        }
-        break;
-    }
-  }
-}
-
-static
-void rec_will(struct connectdata *conn, int option)
-{
-  struct TELNET *tn = (struct TELNET *)conn->data->state.proto.telnet;
-  switch(tn->him[option])
-  {
-    case CURL_NO:
-      if(tn->him_preferred[option] == CURL_YES)
-      {
-        tn->him[option] = CURL_YES;
-        send_negotiation(conn, CURL_DO, option);
-      }
-      else
-      {
-        send_negotiation(conn, CURL_DONT, option);
-      }
-      break;
-
-    case CURL_YES:
-      /* Already enabled */
-      break;
-
-    case CURL_WANTNO:
-      switch(tn->himq[option])
-      {
-        case CURL_EMPTY:
-          /* Error: DONT answered by WILL */
-          tn->him[option] = CURL_NO;
-          break;
-        case CURL_OPPOSITE:
-          /* Error: DONT answered by WILL */
-          tn->him[option] = CURL_YES;
-          tn->himq[option] = CURL_EMPTY;
-          break;
-      }
-      break;
-
-    case CURL_WANTYES:
-      switch(tn->himq[option])
-      {
-        case CURL_EMPTY:
-          tn->him[option] = CURL_YES;
-          break;
-        case CURL_OPPOSITE:
-          tn->him[option] = CURL_WANTNO;
-          tn->himq[option] = CURL_EMPTY;
-          send_negotiation(conn, CURL_DONT, option);
-          break;
-      }
-      break;
-  }
-}
-
-static
-void rec_wont(struct connectdata *conn, int option)
-{
-  struct TELNET *tn = (struct TELNET *)conn->data->state.proto.telnet;
-  switch(tn->him[option])
-  {
-    case CURL_NO:
-      /* Already disabled */
-      break;
-
-    case CURL_YES:
-      tn->him[option] = CURL_NO;
-      send_negotiation(conn, CURL_DONT, option);
-      break;
-
-    case CURL_WANTNO:
-      switch(tn->himq[option])
-      {
-        case CURL_EMPTY:
-          tn->him[option] = CURL_NO;
-          break;
-
-        case CURL_OPPOSITE:
-          tn->him[option] = CURL_WANTYES;
-          tn->himq[option] = CURL_EMPTY;
-          send_negotiation(conn, CURL_DO, option);
-          break;
-      }
-      break;
-
-    case CURL_WANTYES:
-      switch(tn->himq[option])
-      {
-        case CURL_EMPTY:
-          tn->him[option] = CURL_NO;
-          break;
-        case CURL_OPPOSITE:
-          tn->him[option] = CURL_NO;
-          tn->himq[option] = CURL_EMPTY;
-          break;
-      }
-      break;
-  }
-}
-
-static void
-set_local_option(struct connectdata *conn, int option, int newstate)
-{
-  struct TELNET *tn = (struct TELNET *)conn->data->state.proto.telnet;
-  if(newstate == CURL_YES)
-  {
-    switch(tn->us[option])
-    {
-      case CURL_NO:
-        tn->us[option] = CURL_WANTYES;
-        send_negotiation(conn, CURL_WILL, option);
-        break;
-
-      case CURL_YES:
-        /* Already enabled */
-        break;
-
-      case CURL_WANTNO:
-        switch(tn->usq[option])
-        {
-          case CURL_EMPTY:
-            /* Already negotiating for CURL_YES, queue the request */
-            tn->usq[option] = CURL_OPPOSITE;
-            break;
-          case CURL_OPPOSITE:
-            /* Error: already queued an enable request */
-            break;
-        }
-        break;
-
-      case CURL_WANTYES:
-        switch(tn->usq[option])
-        {
-          case CURL_EMPTY:
-            /* Error: already negotiating for enable */
-            break;
-          case CURL_OPPOSITE:
-            tn->usq[option] = CURL_EMPTY;
-            break;
-        }
-        break;
-    }
-  }
-  else /* NO */
-  {
-    switch(tn->us[option])
-    {
-      case CURL_NO:
-        /* Already disabled */
-        break;
-
-      case CURL_YES:
-        tn->us[option] = CURL_WANTNO;
-        send_negotiation(conn, CURL_WONT, option);
-        break;
-
-      case CURL_WANTNO:
-        switch(tn->usq[option])
-        {
-          case CURL_EMPTY:
-            /* Already negotiating for NO */
-            break;
-          case CURL_OPPOSITE:
-            tn->usq[option] = CURL_EMPTY;
-            break;
-        }
-        break;
-
-      case CURL_WANTYES:
-        switch(tn->usq[option])
-        {
-          case CURL_EMPTY:
-            tn->usq[option] = CURL_OPPOSITE;
-            break;
-          case CURL_OPPOSITE:
-            break;
-        }
-        break;
-    }
-  }
-}
-
-static
-void rec_do(struct connectdata *conn, int option)
-{
-  struct TELNET *tn = (struct TELNET *)conn->data->state.proto.telnet;
-  switch(tn->us[option])
-  {
-    case CURL_NO:
-      if(tn->us_preferred[option] == CURL_YES)
-      {
-        tn->us[option] = CURL_YES;
-        send_negotiation(conn, CURL_WILL, option);
-      }
-      else
-      {
-        send_negotiation(conn, CURL_WONT, option);
-      }
-      break;
-
-    case CURL_YES:
-      /* Already enabled */
-      break;
-
-    case CURL_WANTNO:
-      switch(tn->usq[option])
-      {
-        case CURL_EMPTY:
-          /* Error: DONT answered by WILL */
-          tn->us[option] = CURL_NO;
-          break;
-        case CURL_OPPOSITE:
-          /* Error: DONT answered by WILL */
-          tn->us[option] = CURL_YES;
-          tn->usq[option] = CURL_EMPTY;
-          break;
-      }
-      break;
-
-    case CURL_WANTYES:
-      switch(tn->usq[option])
-      {
-        case CURL_EMPTY:
-          tn->us[option] = CURL_YES;
-          break;
-        case CURL_OPPOSITE:
-          tn->us[option] = CURL_WANTNO;
-          tn->himq[option] = CURL_EMPTY;
-          send_negotiation(conn, CURL_WONT, option);
-          break;
-      }
-      break;
-  }
-}
-
-static
-void rec_dont(struct connectdata *conn, int option)
-{
-  struct TELNET *tn = (struct TELNET *)conn->data->state.proto.telnet;
-  switch(tn->us[option])
-  {
-    case CURL_NO:
-      /* Already disabled */
-      break;
-
-    case CURL_YES:
-      tn->us[option] = CURL_NO;
-      send_negotiation(conn, CURL_WONT, option);
-      break;
-
-    case CURL_WANTNO:
-      switch(tn->usq[option])
-      {
-        case CURL_EMPTY:
-          tn->us[option] = CURL_NO;
-          break;
-
-        case CURL_OPPOSITE:
-          tn->us[option] = CURL_WANTYES;
-          tn->usq[option] = CURL_EMPTY;
-          send_negotiation(conn, CURL_WILL, option);
-          break;
-      }
-      break;
-
-    case CURL_WANTYES:
-      switch(tn->usq[option])
-      {
-        case CURL_EMPTY:
-          tn->us[option] = CURL_NO;
-          break;
-        case CURL_OPPOSITE:
-          tn->us[option] = CURL_NO;
-          tn->usq[option] = CURL_EMPTY;
-          break;
-      }
-      break;
-  }
-}
-
-
-static void printsub(struct SessionHandle *data,
-                     int direction,             /* '<' or '>' */
-                     unsigned char *pointer,    /* where suboption data is */
-                     size_t length)             /* length of suboption data */
-{
-  unsigned int i = 0;
-
-  if(data->set.verbose)
-  {
-    if(direction)
-    {
-      infof(data, "%s IAC SB ", (direction == '<')? "RCVD":"SENT");
-      if(length >= 3)
-      {
-        int j;
-
-        i = pointer[length-2];
-        j = pointer[length-1];
-
-        if(i != CURL_IAC || j != CURL_SE)
-        {
-          infof(data, "(terminated by ");
-          if(CURL_TELOPT_OK(i))
-            infof(data, "%s ", CURL_TELOPT(i));
-          else if(CURL_TELCMD_OK(i))
-            infof(data, "%s ", CURL_TELCMD(i));
-          else
-            infof(data, "%u ", i);
-          if(CURL_TELOPT_OK(j))
-            infof(data, "%s", CURL_TELOPT(j));
-          else if(CURL_TELCMD_OK(j))
-            infof(data, "%s", CURL_TELCMD(j));
-          else
-            infof(data, "%d", j);
-          infof(data, ", not IAC SE!) ");
-        }
-      }
-      length -= 2;
-    }
-    if(length < 1)
-    {
-      infof(data, "(Empty suboption?)");
-      return;
-    }
-
-    if(CURL_TELOPT_OK(pointer[0])) {
-      switch(pointer[0]) {
-        case CURL_TELOPT_TTYPE:
-        case CURL_TELOPT_XDISPLOC:
-        case CURL_TELOPT_NEW_ENVIRON:
-          infof(data, "%s", CURL_TELOPT(pointer[0]));
-          break;
-        default:
-          infof(data, "%s (unsupported)", CURL_TELOPT(pointer[0]));
-          break;
-      }
-    }
-    else
-      infof(data, "%d (unknown)", pointer[i]);
-
-    switch(pointer[1]) {
-      case CURL_TELQUAL_IS:
-        infof(data, " IS");
-        break;
-      case CURL_TELQUAL_SEND:
-        infof(data, " SEND");
-        break;
-      case CURL_TELQUAL_INFO:
-        infof(data, " INFO/REPLY");
-        break;
-      case CURL_TELQUAL_NAME:
-        infof(data, " NAME");
-        break;
-    }
-
-    switch(pointer[0]) {
-      case CURL_TELOPT_TTYPE:
-      case CURL_TELOPT_XDISPLOC:
-        pointer[length] = 0;
-        infof(data, " \"%s\"", &pointer[2]);
-        break;
-      case CURL_TELOPT_NEW_ENVIRON:
-        if(pointer[1] == CURL_TELQUAL_IS) {
-          infof(data, " ");
-          for(i = 3;i < length;i++) {
-            switch(pointer[i]) {
-              case CURL_NEW_ENV_VAR:
-                infof(data, ", ");
-                break;
-              case CURL_NEW_ENV_VALUE:
-                infof(data, " = ");
-                break;
-              default:
-                infof(data, "%c", pointer[i]);
-                break;
-            }
-          }
-        }
-        break;
-      default:
-        for (i = 2; i < length; i++)
-          infof(data, " %.2x", pointer[i]);
-        break;
-    }
-
-    if(direction)
-    {
-      infof(data, "\n");
-    }
-  }
-}
-
-static CURLcode check_telnet_options(struct connectdata *conn)
-{
-  struct curl_slist *head;
-  char option_keyword[128];
-  char option_arg[256];
-  char *buf;
-  struct SessionHandle *data = conn->data;
-  struct TELNET *tn = (struct TELNET *)conn->data->state.proto.telnet;
-
-  /* Add the user name as an environment variable if it
-     was given on the command line */
-  if(conn->bits.user_passwd)
-  {
-    snprintf(option_arg, sizeof(option_arg), "USER,%s", conn->user);
-    tn->telnet_vars = curl_slist_append(tn->telnet_vars, option_arg);
-
-    tn->us_preferred[CURL_TELOPT_NEW_ENVIRON] = CURL_YES;
-  }
-
-  for(head = data->set.telnet_options; head; head=head->next) {
-    if(sscanf(head->data, "%127[^= ]%*[ =]%255s",
-              option_keyword, option_arg) == 2) {
-
-      /* Terminal type */
-      if(Curl_raw_equal(option_keyword, "TTYPE")) {
-        strncpy(tn->subopt_ttype, option_arg, 31);
-        tn->subopt_ttype[31] = 0; /* String termination */
-        tn->us_preferred[CURL_TELOPT_TTYPE] = CURL_YES;
-        continue;
-      }
-
-      /* Display variable */
-      if(Curl_raw_equal(option_keyword, "XDISPLOC")) {
-        strncpy(tn->subopt_xdisploc, option_arg, 127);
-        tn->subopt_xdisploc[127] = 0; /* String termination */
-        tn->us_preferred[CURL_TELOPT_XDISPLOC] = CURL_YES;
-        continue;
-      }
-
-      /* Environment variable */
-      if(Curl_raw_equal(option_keyword, "NEW_ENV")) {
-        buf = strdup(option_arg);
-        if(!buf)
-          return CURLE_OUT_OF_MEMORY;
-        tn->telnet_vars = curl_slist_append(tn->telnet_vars, buf);
-        tn->us_preferred[CURL_TELOPT_NEW_ENVIRON] = CURL_YES;
-        continue;
-      }
-
-      failf(data, "Unknown telnet option %s", head->data);
-      return CURLE_UNKNOWN_TELNET_OPTION;
-    } else {
-      failf(data, "Syntax error in telnet option: %s", head->data);
-      return CURLE_TELNET_OPTION_SYNTAX;
-    }
-  }
-
-  return CURLE_OK;
-}
-
-/*
- * suboption()
- *
- * Look at the sub-option buffer, and try to be helpful to the other
- * side.
- */
-
-static void suboption(struct connectdata *conn)
-{
-  struct curl_slist *v;
-  unsigned char temp[2048];
-  ssize_t bytes_written;
-  size_t len;
-  size_t tmplen;
-  int err;
-  char varname[128];
-  char varval[128];
-  struct SessionHandle *data = conn->data;
-  struct TELNET *tn = (struct TELNET *)data->state.proto.telnet;
-
-  printsub(data, '<', (unsigned char *)tn->subbuffer, CURL_SB_LEN(tn)+2);
-  switch (CURL_SB_GET(tn)) {
-    case CURL_TELOPT_TTYPE:
-      len = strlen(tn->subopt_ttype) + 4 + 2;
-      snprintf((char *)temp, sizeof(temp),
-               "%c%c%c%c%s%c%c", CURL_IAC, CURL_SB, CURL_TELOPT_TTYPE,
-               CURL_TELQUAL_IS, tn->subopt_ttype, CURL_IAC, CURL_SE);
-      bytes_written = swrite(conn->sock[FIRSTSOCKET], temp, len);
-      if(bytes_written < 0) {
-        err = SOCKERRNO;
-        failf(data,"Sending data failed (%d)",err);
-      }
-      printsub(data, '>', &temp[2], len-2);
-      break;
-    case CURL_TELOPT_XDISPLOC:
-      len = strlen(tn->subopt_xdisploc) + 4 + 2;
-      snprintf((char *)temp, sizeof(temp),
-               "%c%c%c%c%s%c%c", CURL_IAC, CURL_SB, CURL_TELOPT_XDISPLOC,
-               CURL_TELQUAL_IS, tn->subopt_xdisploc, CURL_IAC, CURL_SE);
-      bytes_written = swrite(conn->sock[FIRSTSOCKET], temp, len);
-      if(bytes_written < 0) {
-        err = SOCKERRNO;
-        failf(data,"Sending data failed (%d)",err);
-      }
-      printsub(data, '>', &temp[2], len-2);
-      break;
-    case CURL_TELOPT_NEW_ENVIRON:
-      snprintf((char *)temp, sizeof(temp),
-               "%c%c%c%c", CURL_IAC, CURL_SB, CURL_TELOPT_NEW_ENVIRON,
-               CURL_TELQUAL_IS);
-      len = 4;
-
-      for(v = tn->telnet_vars;v;v = v->next) {
-        tmplen = (strlen(v->data) + 1);
-        /* Add the variable only if it fits */
-        if(len + tmplen < (int)sizeof(temp)-6) {
-          sscanf(v->data, "%127[^,],%127s", varname, varval);
-          snprintf((char *)&temp[len], sizeof(temp) - len,
-                   "%c%s%c%s", CURL_NEW_ENV_VAR, varname,
-                   CURL_NEW_ENV_VALUE, varval);
-          len += tmplen;
-        }
-      }
-      snprintf((char *)&temp[len], sizeof(temp) - len,
-               "%c%c", CURL_IAC, CURL_SE);
-      len += 2;
-      bytes_written = swrite(conn->sock[FIRSTSOCKET], temp, len);
-      if(bytes_written < 0) {
-        err = SOCKERRNO;
-        failf(data,"Sending data failed (%d)",err);
-      }
-      printsub(data, '>', &temp[2], len-2);
-      break;
-  }
-  return;
-}
-
-static
-CURLcode telrcv(struct connectdata *conn,
-                const unsigned char *inbuf, /* Data received from socket */
-                ssize_t count)              /* Number of bytes received */
-{
-  unsigned char c;
-  CURLcode result;
-  int in = 0;
-  int startwrite=-1;
-  struct SessionHandle *data = conn->data;
-  struct TELNET *tn = (struct TELNET *)data->state.proto.telnet;
-
-#define startskipping() \
-    if(startwrite >= 0) { \
-       result = Curl_client_write(conn, \
-                                  CLIENTWRITE_BODY, \
-                                  (char *)&inbuf[startwrite], \
-                                  in-startwrite); \
-      if(result != CURLE_OK) \
-        return result; \
-    } \
-    startwrite = -1
-
-#define writebyte() \
-    if(startwrite < 0) \
-      startwrite = in
-
-#define bufferflush() startskipping()
-
-  while(count--)
-  {
-    c = inbuf[in];
-
-    /*infof(data,"In rcv state %d char %d\n", tn->telrcv_state, c);*/
-    switch (tn->telrcv_state)
-    {
-      case CURL_TS_CR:
-        tn->telrcv_state = CURL_TS_DATA;
-        if(c == '\0')
-        {
-          startskipping();
-          break;   /* Ignore \0 after CR */
-        }
-        writebyte();
-        break;
-
-      case CURL_TS_DATA:
-        if(c == CURL_IAC)
-        {
-          tn->telrcv_state = CURL_TS_IAC;
-          startskipping();
-          break;
-        }
-        else if(c == '\r')
-        {
-          tn->telrcv_state = CURL_TS_CR;
-        }
-        writebyte();
-        break;
-
-      case CURL_TS_IAC:
-      process_iac:
-      DEBUGASSERT(startwrite < 0);
-      switch (c)
-      {
-        case CURL_WILL:
-          tn->telrcv_state = CURL_TS_WILL;
-          break;
-        case CURL_WONT:
-          tn->telrcv_state = CURL_TS_WONT;
-          break;
-        case CURL_DO:
-          tn->telrcv_state = CURL_TS_DO;
-          break;
-        case CURL_DONT:
-          tn->telrcv_state = CURL_TS_DONT;
-          break;
-        case CURL_SB:
-          CURL_SB_CLEAR(tn);
-          tn->telrcv_state = CURL_TS_SB;
-          break;
-        case CURL_IAC:
-          tn->telrcv_state = CURL_TS_DATA;
-          writebyte();
-          break;
-        case CURL_DM:
-        case CURL_NOP:
-        case CURL_GA:
-        default:
-          tn->telrcv_state = CURL_TS_DATA;
-          printoption(data, "RCVD", CURL_IAC, c);
-          break;
-      }
-      break;
-
-      case CURL_TS_WILL:
-        printoption(data, "RCVD", CURL_WILL, c);
-        tn->please_negotiate = 1;
-        rec_will(conn, c);
-        tn->telrcv_state = CURL_TS_DATA;
-        break;
-
-      case CURL_TS_WONT:
-        printoption(data, "RCVD", CURL_WONT, c);
-        tn->please_negotiate = 1;
-        rec_wont(conn, c);
-        tn->telrcv_state = CURL_TS_DATA;
-        break;
-
-      case CURL_TS_DO:
-        printoption(data, "RCVD", CURL_DO, c);
-        tn->please_negotiate = 1;
-        rec_do(conn, c);
-        tn->telrcv_state = CURL_TS_DATA;
-        break;
-
-      case CURL_TS_DONT:
-        printoption(data, "RCVD", CURL_DONT, c);
-        tn->please_negotiate = 1;
-        rec_dont(conn, c);
-        tn->telrcv_state = CURL_TS_DATA;
-        break;
-
-      case CURL_TS_SB:
-        if(c == CURL_IAC)
-        {
-          tn->telrcv_state = CURL_TS_SE;
-        }
-        else
-        {
-          CURL_SB_ACCUM(tn,c);
-        }
-        break;
-
-      case CURL_TS_SE:
-        if(c != CURL_SE)
-        {
-          if(c != CURL_IAC)
-          {
-            /*
-             * This is an error.  We only expect to get "IAC IAC" or "IAC SE".
-             * Several things may have happend.  An IAC was not doubled, the
-             * IAC SE was left off, or another option got inserted into the
-             * suboption are all possibilities.  If we assume that the IAC was
-             * not doubled, and really the IAC SE was left off, we could get
-             * into an infinate loop here.  So, instead, we terminate the
-             * suboption, and process the partial suboption if we can.
-             */
-            CURL_SB_ACCUM(tn, CURL_IAC);
-            CURL_SB_ACCUM(tn, c);
-            tn->subpointer -= 2;
-            CURL_SB_TERM(tn);
-
-            printoption(data, "In SUBOPTION processing, RCVD", CURL_IAC, c);
-            suboption(conn);   /* handle sub-option */
-            tn->telrcv_state = CURL_TS_IAC;
-            goto process_iac;
-          }
-          CURL_SB_ACCUM(tn,c);
-          tn->telrcv_state = CURL_TS_SB;
-        }
-        else
-        {
-          CURL_SB_ACCUM(tn, CURL_IAC);
-          CURL_SB_ACCUM(tn, CURL_SE);
-          tn->subpointer -= 2;
-          CURL_SB_TERM(tn);
-          suboption(conn);   /* handle sub-option */
-          tn->telrcv_state = CURL_TS_DATA;
-        }
-        break;
-    }
-    ++in;
-  }
-  bufferflush();
-  return CURLE_OK;
-}
-
-/* Escape and send a telnet data block */
-/* TODO: write large chunks of data instead of one byte at a time */
-static CURLcode send_telnet_data(struct connectdata *conn,
-                                 char *buffer, ssize_t nread)
-{
-  unsigned char outbuf[2];
-  ssize_t bytes_written, total_written;
-  int out_count;
-  CURLcode rc = CURLE_OK;
-
-  while(rc == CURLE_OK && nread--) {
-    outbuf[0] = *buffer++;
-    out_count = 1;
-    if(outbuf[0] == CURL_IAC)
-      outbuf[out_count++] = CURL_IAC;
-
-    total_written = 0;
-    do {
-      /* Make sure socket is writable to avoid EWOULDBLOCK condition */
-      struct pollfd pfd[1];
-      pfd[0].fd = conn->sock[FIRSTSOCKET];
-      pfd[0].events = POLLOUT;
-      switch (Curl_poll(pfd, 1, -1)) {
-        case -1:                    /* error, abort writing */
-        case 0:                     /* timeout (will never happen) */
-          rc = CURLE_SEND_ERROR;
-          break;
-        default:                    /* write! */
-          bytes_written = 0;
-          rc = Curl_write(conn, conn->sock[FIRSTSOCKET], outbuf+total_written,
-                          out_count-total_written, &bytes_written);
-          total_written += bytes_written;
-          break;
-      }
-    /* handle partial write */
-    } while (rc == CURLE_OK && total_written < out_count);
-  }
-  return rc;
-}
-
-static CURLcode telnet_done(struct connectdata *conn,
-                                 CURLcode status, bool premature)
-{
-  struct TELNET *tn = (struct TELNET *)conn->data->state.proto.telnet;
-  (void)status; /* unused */
-  (void)premature; /* not used */
-
-  curl_slist_free_all(tn->telnet_vars);
-
-  free(conn->data->state.proto.telnet);
-  conn->data->state.proto.telnet = NULL;
-
-  return CURLE_OK;
-}
-
-static CURLcode telnet_do(struct connectdata *conn, bool *done)
-{
-  CURLcode code;
-  struct SessionHandle *data = conn->data;
-  curl_socket_t sockfd = conn->sock[FIRSTSOCKET];
-#ifdef USE_WINSOCK
-  HMODULE wsock2;
-  WSOCK2_FUNC close_event_func;
-  WSOCK2_FUNC create_event_func;
-  WSOCK2_FUNC event_select_func;
-  WSOCK2_FUNC enum_netevents_func;
-  WSAEVENT event_handle;
-  WSANETWORKEVENTS events;
-  HANDLE stdin_handle;
-  HANDLE objs[2];
-  DWORD  obj_count;
-  DWORD  wait_timeout;
-  DWORD waitret;
-  DWORD readfile_read;
-  int err;
-#else
-  int interval_ms;
-  struct pollfd pfd[2];
-#endif
-  int ret;
-  ssize_t nread;
-  struct timeval now;
-  bool keepon = TRUE;
-  char *buf = data->state.buffer;
-  struct TELNET *tn;
-
-  *done = TRUE; /* unconditionally */
-
-  code = init_telnet(conn);
-  if(code)
-    return code;
-
-  tn = (struct TELNET *)data->state.proto.telnet;
-
-  code = check_telnet_options(conn);
-  if(code)
-    return code;
-
-#ifdef USE_WINSOCK
-  /*
-  ** This functionality only works with WinSock >= 2.0.  So,
-  ** make sure have it.
-  */
-  code = check_wsock2(data);
-  if(code)
-    return code;
-
-  /* OK, so we have WinSock 2.0.  We need to dynamically */
-  /* load ws2_32.dll and get the function pointers we need. */
-  wsock2 = LoadLibrary("WS2_32.DLL");
-  if(wsock2 == NULL) {
-    failf(data,"failed to load WS2_32.DLL (%d)", ERRNO);
-    return CURLE_FAILED_INIT;
-  }
-
-  /* Grab a pointer to WSACreateEvent */
-  create_event_func = GetProcAddress(wsock2,"WSACreateEvent");
-  if(create_event_func == NULL) {
-    failf(data,"failed to find WSACreateEvent function (%d)",
-          ERRNO);
-    FreeLibrary(wsock2);
-    return CURLE_FAILED_INIT;
-  }
-
-  /* And WSACloseEvent */
-  close_event_func = GetProcAddress(wsock2,"WSACloseEvent");
-  if(close_event_func == NULL) {
-    failf(data,"failed to find WSACloseEvent function (%d)",
-          ERRNO);
-    FreeLibrary(wsock2);
-    return CURLE_FAILED_INIT;
-  }
-
-  /* And WSAEventSelect */
-  event_select_func = GetProcAddress(wsock2,"WSAEventSelect");
-  if(event_select_func == NULL) {
-    failf(data,"failed to find WSAEventSelect function (%d)",
-          ERRNO);
-    FreeLibrary(wsock2);
-    return CURLE_FAILED_INIT;
-  }
-
-  /* And WSAEnumNetworkEvents */
-  enum_netevents_func = GetProcAddress(wsock2,"WSAEnumNetworkEvents");
-  if(enum_netevents_func == NULL) {
-    failf(data,"failed to find WSAEnumNetworkEvents function (%d)",
-          ERRNO);
-    FreeLibrary(wsock2);
-    return CURLE_FAILED_INIT;
-  }
-
-  /* We want to wait for both stdin and the socket. Since
-  ** the select() function in winsock only works on sockets
-  ** we have to use the WaitForMultipleObjects() call.
-  */
-
-  /* First, create a sockets event object */
-  event_handle = (WSAEVENT)create_event_func();
-  if(event_handle == WSA_INVALID_EVENT) {
-    failf(data,"WSACreateEvent failed (%d)", SOCKERRNO);
-    FreeLibrary(wsock2);
-    return CURLE_FAILED_INIT;
-  }
-
-  /* The get the Windows file handle for stdin */
-  stdin_handle = GetStdHandle(STD_INPUT_HANDLE);
-
-  /* Create the list of objects to wait for */
-  objs[0] = event_handle;
-  objs[1] = stdin_handle;
-
-  /* Tell winsock what events we want to listen to */
-  if(event_select_func(sockfd, event_handle, FD_READ|FD_CLOSE) == SOCKET_ERROR) {
-    close_event_func(event_handle);
-    FreeLibrary(wsock2);
-    return CURLE_OK;
-  }
-
-  /* If stdin_handle is a pipe, use PeekNamedPipe() method to check it,
-     else use the old WaitForMultipleObjects() way */
-  if(GetFileType(stdin_handle) == FILE_TYPE_PIPE) {
-    /* Don't wait for stdin_handle, just wait for event_handle */
-    obj_count = 1;
-    /* Check stdin_handle per 100 milliseconds */
-    wait_timeout = 100;
-  } else {
-    obj_count = 2;
-    wait_timeout = 1000;
-  }
-
-  /* Keep on listening and act on events */
-  while(keepon) {
-    waitret = WaitForMultipleObjects(obj_count, objs, FALSE, wait_timeout);
-    switch(waitret) {
-    case WAIT_TIMEOUT:
-    {
-      for(;;) {
-        if(!PeekNamedPipe(stdin_handle, NULL, 0, NULL, &readfile_read, NULL)) {
-          keepon = FALSE;
-          code = CURLE_READ_ERROR;
-          break;
-        }
-
-        if(!readfile_read)
-          break;
-
-        if(!ReadFile(stdin_handle, buf, sizeof(data->state.buffer),
-                     &readfile_read, NULL)) {
-          keepon = FALSE;
-          code = CURLE_READ_ERROR;
-          break;
-        }
-
-        code = send_telnet_data(conn, buf, readfile_read);
-        if(code) {
-          keepon = FALSE;
-          break;
-        }
-      }
-    }
-    break;
-
-    case WAIT_OBJECT_0 + 1:
-    {
-      if(!ReadFile(stdin_handle, buf, sizeof(data->state.buffer),
-                   &readfile_read, NULL)) {
-        keepon = FALSE;
-        code = CURLE_READ_ERROR;
-        break;
-      }
-
-      code = send_telnet_data(conn, buf, readfile_read);
-      if(code) {
-        keepon = FALSE;
-        break;
-      }
-    }
-    break;
-
-    case WAIT_OBJECT_0:
-
-      if(SOCKET_ERROR == enum_netevents_func(sockfd, event_handle, &events)) {
-        if((err = SOCKERRNO) != EINPROGRESS) {
-          infof(data,"WSAEnumNetworkEvents failed (%d)", err);
-          keepon = FALSE;
-          code = CURLE_READ_ERROR;
-        }
-        break;
-      }
-      if(events.lNetworkEvents & FD_READ) {
-        /* read data from network */
-        ret = Curl_read(conn, sockfd, buf, BUFSIZE - 1, &nread);
-        /* returned sub-zero, this would've blocked. Loop again */
-        if(ret < 0)
-          break;
-        /* returned not-zero, this an error */
-        else if(ret) {
-          keepon = FALSE;
-          code = (CURLcode)ret;
-          break;
-        }
-        /* returned zero but actually received 0 or less here,
-           the server closed the connection and we bail out */
-        else if(nread <= 0) {
-          keepon = FALSE;
-          break;
-        }
-
-        code = telrcv(conn, (unsigned char *)buf, nread);
-        if(code) {
-          keepon = FALSE;
-          break;
-        }
-
-        fflush(stdout);
-
-        /* Negotiate if the peer has started negotiating,
-           otherwise don't. We don't want to speak telnet with
-           non-telnet servers, like POP or SMTP. */
-        if(tn->please_negotiate && !tn->already_negotiated) {
-          negotiate(conn);
-          tn->already_negotiated = 1;
-        }
-      }
-      if(events.lNetworkEvents & FD_CLOSE) {
-        keepon = FALSE;
-      }
-      break;
-
-    }
-
-    if(data->set.timeout) {
-      now = Curl_tvnow();
-      if(Curl_tvdiff(now, conn->created) >= data->set.timeout) {
-        failf(data, "Time-out");
-        code = CURLE_OPERATION_TIMEDOUT;
-        keepon = FALSE;
-      }
-    }
-  }
-
-  /* We called WSACreateEvent, so call WSACloseEvent */
-  if(close_event_func(event_handle) == FALSE) {
-    infof(data,"WSACloseEvent failed (%d)", SOCKERRNO);
-  }
-
-  /* "Forget" pointers into the library we're about to free */
-  create_event_func = NULL;
-  close_event_func = NULL;
-  event_select_func = NULL;
-  enum_netevents_func = NULL;
-
-  /* We called LoadLibrary, so call FreeLibrary */
-  if(!FreeLibrary(wsock2))
-    infof(data,"FreeLibrary(wsock2) failed (%d)", ERRNO);
-#else
-  pfd[0].fd = sockfd;
-  pfd[0].events = POLLIN;
-  pfd[1].fd = 0;
-  pfd[1].events = POLLIN;
-  interval_ms = 1 * 1000;
-
-  while(keepon) {
-    switch (Curl_poll(pfd, 2, interval_ms)) {
-    case -1:                    /* error, stop reading */
-      keepon = FALSE;
-      continue;
-    case 0:                     /* timeout */
-      break;
-    default:                    /* read! */
-      if(pfd[1].revents & POLLIN) { /* read from stdin */
-        nread = read(0, buf, 255);
-        code = send_telnet_data(conn, buf, nread);
-        if(code) {
-          keepon = FALSE;
-          break;
-        }
-      }
-
-      if(pfd[0].revents & POLLIN) {
-        /* read data from network */
-        ret = Curl_read(conn, sockfd, buf, BUFSIZE - 1, &nread);
-        /* returned sub-zero, this would've blocked. Loop again */
-        if(ret < 0)
-          break;
-        /* returned not-zero, this an error */
-        else if(ret) {
-          keepon = FALSE;
-          code = (CURLcode)ret;
-          break;
-        }
-        /* returned zero but actually received 0 or less here,
-           the server closed the connection and we bail out */
-        else if(nread <= 0) {
-          keepon = FALSE;
-          break;
-        }
-
-        code = telrcv(conn, (unsigned char *)buf, nread);
-        if(code) {
-          keepon = FALSE;
-          break;
-        }
-
-        /* Negotiate if the peer has started negotiating,
-           otherwise don't. We don't want to speak telnet with
-           non-telnet servers, like POP or SMTP. */
-        if(tn->please_negotiate && !tn->already_negotiated) {
-          negotiate(conn);
-          tn->already_negotiated = 1;
-        }
-      }
-    }
-    if(data->set.timeout) {
-      now = Curl_tvnow();
-      if(Curl_tvdiff(now, conn->created) >= data->set.timeout) {
-        failf(data, "Time-out");
-        code = CURLE_OPERATION_TIMEDOUT;
-        keepon = FALSE;
-      }
-    }
-  }
-#endif
-  /* mark this as "no further transfer wanted" */
-  Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-
-  return code;
-}
-#endif
diff --git a/src/other/curl/lib/telnet.h b/src/other/curl/lib/telnet.h
deleted file mode 100644
index f00f7fd..0000000
--- a/src/other/curl/lib/telnet.h
+++ /dev/null
@@ -1,28 +0,0 @@
-#ifndef __TELNET_H
-#define __TELNET_H
-
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#ifndef CURL_DISABLE_TELNET
-extern const struct Curl_handler Curl_handler_telnet;
-#endif
-#endif
diff --git a/src/other/curl/lib/tftp.c b/src/other/curl/lib/tftp.c
deleted file mode 100644
index dc21c54..0000000
--- a/src/other/curl/lib/tftp.c
+++ /dev/null
@@ -1,1493 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifndef CURL_DISABLE_TFTP
-/* -- WIN32 approved -- */
-#include <stdio.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-
-#if defined(WIN32)
-#include <time.h>
-#include <io.h>
-#else
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#include <netinet/in.h>
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#include <netdb.h>
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_NET_IF_H
-#include <net/if.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
-#endif
-
-#ifdef HAVE_SYS_PARAM_H
-#include <sys/param.h>
-#endif
-
-#endif /* WIN32 */
-
-#include "urldata.h"
-#include <curl/curl.h>
-#include "transfer.h"
-#include "sendf.h"
-#include "tftp.h"
-#include "progress.h"
-#include "connect.h"
-#include "strerror.h"
-#include "sockaddr.h" /* required for Curl_sockaddr_storage */
-#include "multiif.h"
-#include "url.h"
-#include "rawstr.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-#include "select.h"
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/* RFC2348 allows the block size to be negotiated */
-#define TFTP_BLKSIZE_DEFAULT 512
-#define TFTP_BLKSIZE_MIN 8
-#define TFTP_BLKSIZE_MAX 65464
-#define TFTP_OPTION_BLKSIZE "blksize"
-#define TFTP_OPTION_TSIZE "tsize"
-#define TFTP_OPTION_INTERVAL "interval"
-
-typedef enum {
-  TFTP_MODE_NETASCII=0,
-  TFTP_MODE_OCTET
-} tftp_mode_t;
-
-typedef enum {
-  TFTP_STATE_START=0,
-  TFTP_STATE_RX,
-  TFTP_STATE_TX,
-  TFTP_STATE_FIN
-} tftp_state_t;
-
-typedef enum {
-  TFTP_EVENT_NONE = -1,
-  TFTP_EVENT_INIT = 0,
-  TFTP_EVENT_RRQ = 1,
-  TFTP_EVENT_WRQ = 2,
-  TFTP_EVENT_DATA = 3,
-  TFTP_EVENT_ACK = 4,
-  TFTP_EVENT_ERROR = 5,
-  TFTP_EVENT_OACK = 6,
-  TFTP_EVENT_TIMEOUT
-} tftp_event_t;
-
-typedef enum {
-  TFTP_ERR_UNDEF=0,
-  TFTP_ERR_NOTFOUND,
-  TFTP_ERR_PERM,
-  TFTP_ERR_DISKFULL,
-  TFTP_ERR_ILLEGAL,
-  TFTP_ERR_UNKNOWNID,
-  TFTP_ERR_EXISTS,
-  TFTP_ERR_NOSUCHUSER,  /* This will never be triggered by this code */
-
-  /* The remaining error codes are internal to curl */
-  TFTP_ERR_NONE = -100,
-  TFTP_ERR_TIMEOUT,
-  TFTP_ERR_NORESPONSE
-} tftp_error_t;
-
-typedef struct tftp_packet {
-  unsigned char *data;
-} tftp_packet_t;
-
-typedef struct tftp_state_data {
-  tftp_state_t    state;
-  tftp_mode_t     mode;
-  tftp_error_t    error;
-  tftp_event_t    event;
-  struct connectdata      *conn;
-  curl_socket_t   sockfd;
-  int             retries;
-  int             retry_time;
-  int             retry_max;
-  time_t          start_time;
-  time_t          max_time;
-  time_t          rx_time;
-  unsigned short  block;
-  struct Curl_sockaddr_storage   local_addr;
-  struct Curl_sockaddr_storage   remote_addr;
-  curl_socklen_t  remote_addrlen;
-  int             rbytes;
-  int             sbytes;
-  int             blksize;
-  int             requested_blksize;
-  tftp_packet_t   rpacket;
-  tftp_packet_t   spacket;
-} tftp_state_data_t;
-
-
-/* Forward declarations */
-static CURLcode tftp_rx(tftp_state_data_t *state, tftp_event_t event) ;
-static CURLcode tftp_tx(tftp_state_data_t *state, tftp_event_t event) ;
-static CURLcode tftp_connect(struct connectdata *conn, bool *done);
-static CURLcode tftp_disconnect(struct connectdata *conn);
-static CURLcode tftp_do(struct connectdata *conn, bool *done);
-static CURLcode tftp_done(struct connectdata *conn,
-                               CURLcode, bool premature);
-static CURLcode tftp_setup_connection(struct connectdata * conn);
-static CURLcode tftp_multi_statemach(struct connectdata *conn, bool *done);
-static CURLcode tftp_doing(struct connectdata *conn, bool *dophase_done);
-static int tftp_getsock(struct connectdata *conn, curl_socket_t *socks,
-                        int numsocks);
-static CURLcode tftp_translate_code(tftp_error_t error);
-
-
-/*
- * TFTP protocol handler.
- */
-
-const struct Curl_handler Curl_handler_tftp = {
-  "TFTP",                               /* scheme */
-  tftp_setup_connection,                /* setup_connection */
-  tftp_do,                              /* do_it */
-  tftp_done,                            /* done */
-  ZERO_NULL,                            /* do_more */
-  tftp_connect,                         /* connect_it */
-  tftp_multi_statemach,                 /* connecting */
-  tftp_doing,                           /* doing */
-  tftp_getsock,                         /* proto_getsock */
-  tftp_getsock,                         /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  tftp_disconnect,                      /* disconnect */
-  PORT_TFTP,                            /* defport */
-  PROT_TFTP                             /* protocol */
-};
-
-/**********************************************************
- *
- * tftp_set_timeouts -
- *
- * Set timeouts based on state machine state.
- * Use user provided connect timeouts until DATA or ACK
- * packet is received, then use user-provided transfer timeouts
- *
- *
- **********************************************************/
-static CURLcode tftp_set_timeouts(tftp_state_data_t *state)
-{
-  time_t maxtime, timeout;
-  long timeout_ms;
-  bool start = (bool)(state->state == TFTP_STATE_START);
-
-  time(&state->start_time);
-
-  /* Compute drop-dead time */
-  timeout_ms = Curl_timeleft(state->conn, NULL, start);
-
-  if(timeout_ms < 0) {
-    /* time-out, bail out, go home */
-    failf(state->conn->data, "Connection time-out");
-    return CURLE_OPERATION_TIMEDOUT;
-  }
-
-  if(start) {
-
-    maxtime = (time_t)(timeout_ms + 500) / 1000;
-    state->max_time = state->start_time+maxtime;
-
-    /* Set per-block timeout to total */
-    timeout = maxtime ;
-
-    /* Average restart after 5 seconds */
-    state->retry_max = (int)timeout/5;
-
-    if(state->retry_max < 1)
-      /* avoid division by zero below */
-      state->retry_max = 1;
-
-    /* Compute the re-start interval to suit the timeout */
-    state->retry_time = (int)timeout/state->retry_max;
-    if(state->retry_time<1)
-      state->retry_time=1;
-
-  }
-  else {
-    if(timeout_ms > 0)
-      maxtime = (time_t)(timeout_ms + 500) / 1000;
-    else
-      maxtime = 3600;
-
-    state->max_time = state->start_time+maxtime;
-
-    /* Set per-block timeout to 10% of total */
-    timeout = maxtime/10 ;
-
-    /* Average reposting an ACK after 15 seconds */
-    state->retry_max = (int)timeout/15;
-  }
-  /* But bound the total number */
-  if(state->retry_max<3)
-    state->retry_max=3;
-
-  if(state->retry_max>50)
-    state->retry_max=50;
-
-  /* Compute the re-ACK interval to suit the timeout */
-  state->retry_time = (int)(timeout/state->retry_max);
-  if(state->retry_time<1)
-    state->retry_time=1;
-
-  infof(state->conn->data,
-        "set timeouts for state %d; Total %ld, retry %d maxtry %d\n",
-        (int)state->state, (long)(state->max_time-state->start_time),
-        state->retry_time, state->retry_max);
-
-  /* init RX time */
-  time(&state->rx_time);
-
-  return CURLE_OK;
-}
-
-/**********************************************************
- *
- * tftp_set_send_first
- *
- * Event handler for the START state
- *
- **********************************************************/
-
-static void setpacketevent(tftp_packet_t *packet, unsigned short num)
-{
-  packet->data[0] = (unsigned char)(num >> 8);
-  packet->data[1] = (unsigned char)(num & 0xff);
-}
-
-
-static void setpacketblock(tftp_packet_t *packet, unsigned short num)
-{
-  packet->data[2] = (unsigned char)(num >> 8);
-  packet->data[3] = (unsigned char)(num & 0xff);
-}
-
-static unsigned short getrpacketevent(const tftp_packet_t *packet)
-{
-  return (unsigned short)((packet->data[0] << 8) | packet->data[1]);
-}
-
-static unsigned short getrpacketblock(const tftp_packet_t *packet)
-{
-  return (unsigned short)((packet->data[2] << 8) | packet->data[3]);
-}
-
-static size_t Curl_strnlen(const char *string, size_t maxlen)
-{
-  const char *end = memchr (string, '\0', maxlen);
-  return end ? (size_t) (end - string) : maxlen;
-}
-
-static const char *tftp_option_get(const char *buf, size_t len,
-                                   const char **option, const char **value)
-{
-  size_t loc;
-
-  loc = Curl_strnlen( buf, len );
-  loc++; /* NULL term */
-
-  if (loc >= len)
-    return NULL;
-  *option = buf;
-
-  loc += Curl_strnlen( buf+loc, len-loc );
-  loc++; /* NULL term */
-
-  if (loc > len)
-    return NULL;
-  *value = &buf[strlen(*option) + 1];
-
-  return &buf[loc];
-}
-
-static CURLcode tftp_parse_option_ack(tftp_state_data_t *state,
-                                      const char *ptr, int len)
-{
-  const char *tmp = ptr;
-  struct SessionHandle *data = state->conn->data;
-
-  /* if OACK doesn't contain blksize option, the default (512) must be used */
-  state->blksize = TFTP_BLKSIZE_DEFAULT;
-
-  while (tmp < ptr + len) {
-    const char *option, *value;
-
-    tmp = tftp_option_get(tmp, ptr + len - tmp, &option, &value);
-    if(tmp == NULL) {
-      failf(data, "Malformed ACK packet, rejecting");
-      return CURLE_TFTP_ILLEGAL;
-    }
-
-    infof(data, "got option=(%s) value=(%s)\n", option, value);
-
-    if(checkprefix(option, TFTP_OPTION_BLKSIZE)) {
-      long blksize;
-
-      blksize = strtol( value, NULL, 10 );
-
-      if(!blksize) {
-        failf(data, "invalid blocksize value in OACK packet");
-        return CURLE_TFTP_ILLEGAL;
-      }
-      else if(blksize > TFTP_BLKSIZE_MAX) {
-        failf(data, "%s (%d)", "blksize is larger than max supported",
-                TFTP_BLKSIZE_MAX);
-        return CURLE_TFTP_ILLEGAL;
-      }
-      else if(blksize < TFTP_BLKSIZE_MIN) {
-        failf(data, "%s (%d)", "blksize is smaller than min supported",
-                TFTP_BLKSIZE_MIN);
-        return CURLE_TFTP_ILLEGAL;
-      }
-      else if (blksize > state->requested_blksize) {
-        /* could realloc pkt buffers here, but the spec doesn't call out
-         * support for the server requesting a bigger blksize than the client
-         * requests */
-        failf(data, "%s (%ld)",
-                "server requested blksize larger than allocated", blksize);
-        return CURLE_TFTP_ILLEGAL;
-      }
-
-      state->blksize = (int)blksize;
-      infof(data, "%s (%d) %s (%d)\n", "blksize parsed from OACK",
-        state->blksize, "requested", state->requested_blksize);
-    }
-    else if(checkprefix(option, TFTP_OPTION_TSIZE)) {
-      long tsize = 0;
-
-      tsize = strtol( value, NULL, 10 );
-      infof(data, "%s (%ld)\n", "tsize parsed from OACK", tsize);
-
-      /* tsize should be ignored on upload: Who cares about the size of the
-         remote file? */
-      if (!data->set.upload) {
-        if(!tsize) {
-          failf(data, "invalid tsize -:%s:- value in OACK packet", value);
-          return CURLE_TFTP_ILLEGAL;
-        }
-        Curl_pgrsSetDownloadSize(data, tsize);
-      }
-    }
-  }
-
-  return CURLE_OK;
-}
-
-static size_t tftp_option_add(tftp_state_data_t *state, size_t csize,
-                              char *buf, const char *option)
-{
-  if( ( strlen(option) + csize + 1 ) > (size_t)state->blksize )
-    return 0;
-  strcpy(buf, option);
-  return( strlen(option) + 1 );
-}
-
-static CURLcode tftp_connect_for_tx(tftp_state_data_t *state,
-                                    tftp_event_t event)
-{
-  CURLcode res;
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-  struct SessionHandle *data = state->conn->data;
-
-  infof(data, "%s\n", "Connected for transmit");
-#endif
-  state->state = TFTP_STATE_TX;
-  res = tftp_set_timeouts(state);
-  if(res != CURLE_OK)
-    return(res);
-  return tftp_tx(state, event);
-}
-
-static CURLcode tftp_connect_for_rx(tftp_state_data_t *state,
-                                    tftp_event_t event)
-{
-  CURLcode res;
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-  struct SessionHandle *data = state->conn->data;
-
-  infof(data, "%s\n", "Connected for receive");
-#endif
-  state->state = TFTP_STATE_RX;
-  res = tftp_set_timeouts(state);
-  if(res != CURLE_OK)
-    return(res);
-  return tftp_rx(state, event);
-}
-
-static CURLcode tftp_send_first(tftp_state_data_t *state, tftp_event_t event)
-{
-  size_t sbytes;
-  ssize_t senddata;
-  const char *mode = "octet";
-  char *filename;
-  char buf[64];
-  struct SessionHandle *data = state->conn->data;
-  CURLcode res = CURLE_OK;
-
-  /* Set ascii mode if -B flag was used */
-  if(data->set.prefer_ascii)
-    mode = "netascii";
-
-  switch(event) {
-
-  case TFTP_EVENT_INIT:    /* Send the first packet out */
-  case TFTP_EVENT_TIMEOUT: /* Resend the first packet out */
-    /* Increment the retry counter, quit if over the limit */
-    state->retries++;
-    if(state->retries>state->retry_max) {
-      state->error = TFTP_ERR_NORESPONSE;
-      state->state = TFTP_STATE_FIN;
-      return res;
-    }
-
-    if(data->set.upload) {
-      /* If we are uploading, send an WRQ */
-      setpacketevent(&state->spacket, TFTP_EVENT_WRQ);
-      state->conn->data->req.upload_fromhere =
-        (char *)state->spacket.data+4;
-      if(data->set.infilesize != -1)
-        Curl_pgrsSetUploadSize(data, data->set.infilesize);
-    }
-    else {
-      /* If we are downloading, send an RRQ */
-      setpacketevent(&state->spacket, TFTP_EVENT_RRQ);
-    }
-    /* As RFC3617 describes the separator slash is not actually part of the
-       file name so we skip the always-present first letter of the path
-       string. */
-    filename = curl_easy_unescape(data, &state->conn->data->state.path[1], 0,
-                                  NULL);
-    if(!filename)
-      return CURLE_OUT_OF_MEMORY;
-
-    snprintf((char *)state->spacket.data+2,
-             state->blksize,
-             "%s%c%s%c", filename, '\0',  mode, '\0');
-    sbytes = 4 + strlen(filename) + strlen(mode);
-
-    /* add tsize option */
-    if(data->set.upload && (data->set.infilesize != -1))
-      snprintf( buf, sizeof(buf), "%" FORMAT_OFF_T, data->set.infilesize );
-    else
-      strcpy(buf, "0"); /* the destination is large enough */
-
-    sbytes += tftp_option_add(state, sbytes,
-                              (char *)state->spacket.data+sbytes,
-                              TFTP_OPTION_TSIZE);
-    sbytes += tftp_option_add(state, sbytes,
-                              (char *)state->spacket.data+sbytes, buf);
-    /* add blksize option */
-    snprintf( buf, sizeof(buf), "%d", state->requested_blksize );
-    sbytes += tftp_option_add(state, sbytes,
-                              (char *)state->spacket.data+sbytes,
-                              TFTP_OPTION_BLKSIZE);
-    sbytes += tftp_option_add(state, sbytes,
-                              (char *)state->spacket.data+sbytes, buf );
-    /* add timeout option, this is the max time the session may live */
-    snprintf( buf, sizeof(buf), "%d", state->retry_time*state->retry_max );
-    sbytes += tftp_option_add(state, sbytes,
-                              (char *)state->spacket.data+sbytes,
-                              TFTP_OPTION_INTERVAL);
-    sbytes += tftp_option_add(state, sbytes,
-                              (char *)state->spacket.data+sbytes, buf );
-
-    senddata = sendto(state->sockfd, (void *)state->spacket.data,
-                    sbytes, 0,
-                    state->conn->ip_addr->ai_addr,
-                    state->conn->ip_addr->ai_addrlen);
-    if(senddata != (ssize_t)sbytes) {
-      failf(data, "%s", Curl_strerror(state->conn, SOCKERRNO));
-    }
-    Curl_safefree(filename);
-    break;
-
-  case TFTP_EVENT_OACK:
-    if(data->set.upload) {
-      res = tftp_connect_for_tx(state, event);
-    }
-    else {
-      res = tftp_connect_for_rx(state, event);
-    }
-    break;
-
-  case TFTP_EVENT_ACK: /* Connected for transmit */
-    res = tftp_connect_for_tx(state, event);
-    break;
-
-  case TFTP_EVENT_DATA: /* Connected for receive */
-    res = tftp_connect_for_rx(state, event);
-    break;
-
-  case TFTP_EVENT_ERROR:
-    state->state = TFTP_STATE_FIN;
-    break;
-
-  default:
-    failf(state->conn->data, "tftp_send_first: internal error");
-    break;
-  }
-  return res;
-}
-
-/**********************************************************
- *
- * tftp_rx
- *
- * Event handler for the RX state
- *
- **********************************************************/
-static CURLcode tftp_rx(tftp_state_data_t *state, tftp_event_t event)
-{
-  ssize_t sbytes;
-  int rblock;
-  struct SessionHandle *data = state->conn->data;
-
-  switch(event) {
-
-  case TFTP_EVENT_DATA:
-    /* Is this the block we expect? */
-    rblock = getrpacketblock(&state->rpacket);
-    if((state->block+1) != rblock) {
-      /* No, log it, up the retry count and fail if over the limit */
-      infof(data,
-            "Received unexpected DATA packet block %d\n", rblock);
-      state->retries++;
-      if(state->retries>state->retry_max) {
-        failf(data, "tftp_rx: giving up waiting for block %d",
-              state->block+1);
-        return CURLE_TFTP_ILLEGAL;
-      }
-    }
-    /* This is the expected block.  Reset counters and ACK it. */
-    state->block = (unsigned short)rblock;
-    state->retries = 0;
-    setpacketevent(&state->spacket, TFTP_EVENT_ACK);
-    setpacketblock(&state->spacket, state->block);
-    sbytes = sendto(state->sockfd, (void *)state->spacket.data,
-                    4, SEND_4TH_ARG,
-                    (struct sockaddr *)&state->remote_addr,
-                    state->remote_addrlen);
-    if(sbytes < 0) {
-      failf(data, "%s", Curl_strerror(state->conn, SOCKERRNO));
-      return CURLE_SEND_ERROR;
-    }
-
-    /* Check if completed (That is, a less than full packet is received) */
-    if(state->rbytes < (ssize_t)state->blksize+4){
-      state->state = TFTP_STATE_FIN;
-    }
-    else {
-      state->state = TFTP_STATE_RX;
-    }
-    time(&state->rx_time);
-    break;
-
-  case TFTP_EVENT_OACK:
-    /* ACK option acknowledgement so we can move on to data */
-    state->block = 0;
-    state->retries = 0;
-    setpacketevent(&state->spacket, TFTP_EVENT_ACK);
-    setpacketblock(&state->spacket, state->block);
-    sbytes = sendto(state->sockfd, (void *)state->spacket.data,
-                    4, SEND_4TH_ARG,
-                    (struct sockaddr *)&state->remote_addr,
-                    state->remote_addrlen);
-    if(sbytes < 0) {
-      failf(data, "%s", Curl_strerror(state->conn, SOCKERRNO));
-      return CURLE_SEND_ERROR;
-    }
-
-    /* we're ready to RX data */
-    state->state = TFTP_STATE_RX;
-    time(&state->rx_time);
-    break;
-
-  case TFTP_EVENT_TIMEOUT:
-    /* Increment the retry count and fail if over the limit */
-    state->retries++;
-    infof(data,
-          "Timeout waiting for block %d ACK.  Retries = %d\n",
-          state->block+1, state->retries);
-    if(state->retries > state->retry_max) {
-      state->error = TFTP_ERR_TIMEOUT;
-      state->state = TFTP_STATE_FIN;
-    }
-    else {
-      /* Resend the previous ACK */
-      sbytes = sendto(state->sockfd, (void *)state->spacket.data,
-                      4, SEND_4TH_ARG,
-                      (struct sockaddr *)&state->remote_addr,
-                      state->remote_addrlen);
-      /* Check all sbytes were sent */
-      if(sbytes<0) {
-        failf(data, "%s", Curl_strerror(state->conn, SOCKERRNO));
-        return CURLE_SEND_ERROR;
-      }
-    }
-    break;
-
-  case TFTP_EVENT_ERROR:
-    setpacketevent(&state->spacket, TFTP_EVENT_ERROR);
-    setpacketblock(&state->spacket, state->block);
-    sbytes = sendto(state->sockfd, (void *)state->spacket.data,
-                    4, SEND_4TH_ARG,
-                    (struct sockaddr *)&state->remote_addr,
-                    state->remote_addrlen);
-    /* don't bother with the return code, but if the socket is still up we
-     * should be a good TFTP client and let the server know we're done */
-    state->state = TFTP_STATE_FIN;
-    break;
-
-  default:
-    failf(data, "%s", "tftp_rx: internal error");
-    return CURLE_TFTP_ILLEGAL; /* not really the perfect return code for
-                                  this */
-  }
-  return CURLE_OK;
-}
-
-/**********************************************************
- *
- * tftp_tx
- *
- * Event handler for the TX state
- *
- **********************************************************/
-static CURLcode tftp_tx(tftp_state_data_t *state, tftp_event_t event)
-{
-  struct SessionHandle *data = state->conn->data;
-  ssize_t sbytes;
-  int rblock;
-  CURLcode res = CURLE_OK;
-  struct SingleRequest *k = &data->req;
-
-  switch(event) {
-
-  case TFTP_EVENT_ACK:
-  case TFTP_EVENT_OACK:
-    if (event == TFTP_EVENT_ACK) {
-       /* Ack the packet */
-       rblock = getrpacketblock(&state->rpacket);
-
-       if(rblock != state->block) {
-          /* This isn't the expected block.  Log it and up the retry counter */
-          infof(data, "Received ACK for block %d, expecting %d\n",
-                rblock, state->block);
-          state->retries++;
-          /* Bail out if over the maximum */
-          if(state->retries>state->retry_max) {
-             failf(data, "tftp_tx: giving up waiting for block %d ack",
-                   state->block);
-             res = CURLE_SEND_ERROR;
-          }
-          else {
-             /* Re-send the data packet */
-             sbytes = sendto(state->sockfd, (void *)&state->spacket,
-                             4+state->sbytes, SEND_4TH_ARG,
-                             (struct sockaddr *)&state->remote_addr,
-                             state->remote_addrlen);
-             /* Check all sbytes were sent */
-             if(sbytes<0) {
-                failf(data, "%s", Curl_strerror(state->conn, SOCKERRNO));
-                res = CURLE_SEND_ERROR;
-             }
-          }
-          return res;
-       }
-       /* This is the expected packet.  Reset the counters and send the next
-          block */
-       time(&state->rx_time);
-       state->block++;
-    }
-    else {
-       state->block = 1; /* first data block is 1 when using OACK */
-    }
-    state->retries = 0;
-    setpacketevent(&state->spacket, TFTP_EVENT_DATA);
-    setpacketblock(&state->spacket, state->block);
-    if(state->block > 1 && state->sbytes < (int)state->blksize) {
-      state->state = TFTP_STATE_FIN;
-      return CURLE_OK;
-    }
-    res = Curl_fillreadbuffer(state->conn, (size_t)state->blksize,
-                              &state->sbytes);
-    if(res)
-      return res;
-    sbytes = sendto(state->sockfd, (void *)state->spacket.data,
-                    4+state->sbytes, SEND_4TH_ARG,
-                    (struct sockaddr *)&state->remote_addr,
-                    state->remote_addrlen);
-    /* Check all sbytes were sent */
-    if(sbytes<0) {
-      failf(data, "%s", Curl_strerror(state->conn, SOCKERRNO));
-      return CURLE_SEND_ERROR;
-    }
-    /* Update the progress meter */
-    k->writebytecount += state->sbytes;
-    Curl_pgrsSetUploadCounter(data, k->writebytecount);
-    break;
-
-  case TFTP_EVENT_TIMEOUT:
-    /* Increment the retry counter and log the timeout */
-    state->retries++;
-    infof(data, "Timeout waiting for block %d ACK. "
-          " Retries = %d\n", state->block+1, state->retries);
-    /* Decide if we've had enough */
-    if(state->retries > state->retry_max) {
-      state->error = TFTP_ERR_TIMEOUT;
-      state->state = TFTP_STATE_FIN;
-    }
-    else {
-      /* Re-send the data packet */
-      sbytes = sendto(state->sockfd, (void *)state->spacket.data,
-                      4+state->sbytes, SEND_4TH_ARG,
-                      (struct sockaddr *)&state->remote_addr,
-                      state->remote_addrlen);
-      /* Check all sbytes were sent */
-      if(sbytes<0) {
-        failf(data, "%s", Curl_strerror(state->conn, SOCKERRNO));
-        return CURLE_SEND_ERROR;
-      }
-      /* since this was a re-send, we remain at the still byte position */
-      Curl_pgrsSetUploadCounter(data, k->writebytecount);
-    }
-    break;
-
-  case TFTP_EVENT_ERROR:
-    state->state = TFTP_STATE_FIN;
-    setpacketevent(&state->spacket, TFTP_EVENT_ERROR);
-    setpacketblock(&state->spacket, state->block);
-    sbytes = sendto(state->sockfd, (void *)state->spacket.data,
-                    4, SEND_4TH_ARG,
-                    (struct sockaddr *)&state->remote_addr,
-                    state->remote_addrlen);
-    /* don't bother with the return code, but if the socket is still up we
-     * should be a good TFTP client and let the server know we're done */
-    state->state = TFTP_STATE_FIN;
-    break;
-
-  default:
-    failf(data, "tftp_tx: internal error, event: %i", (int)(event));
-    break;
-  }
-
-  return res;
-}
-
-/**********************************************************
- *
- * tftp_translate_code
- *
- * Translate internal error codes to CURL error codes
- *
- **********************************************************/
-static CURLcode tftp_translate_code(tftp_error_t error)
-{
-  CURLcode code = CURLE_OK;
-
-  if(error != TFTP_ERR_NONE) {
-    switch(error) {
-    case TFTP_ERR_NOTFOUND:
-      code = CURLE_TFTP_NOTFOUND;
-      break;
-    case TFTP_ERR_PERM:
-      code = CURLE_TFTP_PERM;
-      break;
-    case TFTP_ERR_DISKFULL:
-      code = CURLE_REMOTE_DISK_FULL;
-      break;
-    case TFTP_ERR_UNDEF:
-    case TFTP_ERR_ILLEGAL:
-      code = CURLE_TFTP_ILLEGAL;
-      break;
-    case TFTP_ERR_UNKNOWNID:
-      code = CURLE_TFTP_UNKNOWNID;
-      break;
-    case TFTP_ERR_EXISTS:
-      code = CURLE_REMOTE_FILE_EXISTS;
-      break;
-    case TFTP_ERR_NOSUCHUSER:
-      code = CURLE_TFTP_NOSUCHUSER;
-      break;
-    case TFTP_ERR_TIMEOUT:
-      code = CURLE_OPERATION_TIMEDOUT;
-      break;
-    case TFTP_ERR_NORESPONSE:
-      code = CURLE_COULDNT_CONNECT;
-      break;
-    default:
-      code= CURLE_ABORTED_BY_CALLBACK;
-      break;
-    }
-  }
-  else {
-    code = CURLE_OK;
-  }
-
-  return(code);
-}
-
-/**********************************************************
- *
- * tftp_state_machine
- *
- * The tftp state machine event dispatcher
- *
- **********************************************************/
-static CURLcode tftp_state_machine(tftp_state_data_t *state,
-                                   tftp_event_t event)
-{
-  CURLcode res = CURLE_OK;
-  struct SessionHandle *data = state->conn->data;
-  switch(state->state) {
-  case TFTP_STATE_START:
-    DEBUGF(infof(data, "TFTP_STATE_START\n"));
-    res = tftp_send_first(state, event);
-    break;
-  case TFTP_STATE_RX:
-    DEBUGF(infof(data, "TFTP_STATE_RX\n"));
-    res = tftp_rx(state, event);
-    break;
-  case TFTP_STATE_TX:
-    DEBUGF(infof(data, "TFTP_STATE_TX\n"));
-    res = tftp_tx(state, event);
-    break;
-  case TFTP_STATE_FIN:
-    infof(data, "%s\n", "TFTP finished");
-    break;
-  default:
-    DEBUGF(infof(data, "STATE: %d\n", state->state));
-    failf(data, "%s", "Internal state machine error");
-    res = CURLE_TFTP_ILLEGAL;
-    break;
-  }
-  return res;
-}
-
-/**********************************************************
- *
- * tftp_disconnect
- *
- * The disconnect callback
- *
- **********************************************************/
-static CURLcode tftp_disconnect(struct connectdata *conn)
-{
-  tftp_state_data_t *state = conn->proto.tftpc;
-
-  /* done, free dynamically allocated pkt buffers */
-  if(state) {
-    Curl_safefree(state->rpacket.data);
-    Curl_safefree(state->spacket.data);
-    free(state);
-  }
-
-  return CURLE_OK;
-}
-
-/**********************************************************
- *
- * tftp_connect
- *
- * The connect callback
- *
- **********************************************************/
-static CURLcode tftp_connect(struct connectdata *conn, bool *done)
-{
-  CURLcode code;
-  tftp_state_data_t *state;
-  int blksize, rc;
-
-  blksize = TFTP_BLKSIZE_DEFAULT;
-
-  /* If there already is a protocol-specific struct allocated for this
-     sessionhandle, deal with it */
-  Curl_reset_reqproto(conn);
-
-  state = conn->proto.tftpc = calloc(1, sizeof(tftp_state_data_t));
-  if(!state)
-    return CURLE_OUT_OF_MEMORY;
-
-  /* alloc pkt buffers based on specified blksize */
-  if(conn->data->set.tftp_blksize) {
-    blksize = (int)conn->data->set.tftp_blksize;
-    if(blksize > TFTP_BLKSIZE_MAX || blksize < TFTP_BLKSIZE_MIN )
-      return CURLE_TFTP_ILLEGAL;
-  }
-
-  if(!state->rpacket.data) {
-    state->rpacket.data = calloc(1, blksize + 2 + 2);
-
-    if(!state->rpacket.data)
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-  if(!state->spacket.data) {
-    state->spacket.data = calloc(1, blksize + 2 + 2);
-
-    if(!state->spacket.data)
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-  conn->bits.close = TRUE; /* we don't keep TFTP connections up bascially
-                              because there's none or very little gain for UDP
-                           */
-
-  state->conn = conn;
-  state->sockfd = state->conn->sock[FIRSTSOCKET];
-  state->state = TFTP_STATE_START;
-  state->error = TFTP_ERR_NONE;
-  state->blksize = TFTP_BLKSIZE_DEFAULT;
-  state->requested_blksize = blksize;
-
-  ((struct sockaddr *)&state->local_addr)->sa_family =
-    (unsigned short)(conn->ip_addr->ai_family);
-
-  tftp_set_timeouts(state);
-
-  if(!conn->bits.bound) {
-    /* If not already bound, bind to any interface, random UDP port. If it is
-     * reused or a custom local port was desired, this has already been done!
-     *
-     * We once used the size of the local_addr struct as the third argument
-     * for bind() to better work with IPv6 or whatever size the struct could
-     * have, but we learned that at least Tru64, AIX and IRIX *requires* the
-     * size of that argument to match the exact size of a 'sockaddr_in' struct
-     * when running IPv4-only.
-     *
-     * Therefore we use the size from the address we connected to, which we
-     * assume uses the same IP version and thus hopefully this works for both
-     * IPv4 and IPv6...
-     */
-    rc = bind(state->sockfd, (struct sockaddr *)&state->local_addr,
-              conn->ip_addr->ai_addrlen);
-    if(rc) {
-      failf(conn->data, "bind() failed; %s",
-            Curl_strerror(conn, SOCKERRNO));
-      return CURLE_COULDNT_CONNECT;
-    }
-    conn->bits.bound = TRUE;
-  }
-
-  Curl_pgrsStartNow(conn->data);
-
-  *done = TRUE;
-  code = CURLE_OK;
-  return(code);
-}
-
-/**********************************************************
- *
- * tftp_done
- *
- * The done callback
- *
- **********************************************************/
-static CURLcode tftp_done(struct connectdata *conn, CURLcode status,
-                               bool premature)
-{
-  CURLcode code = CURLE_OK;
-  tftp_state_data_t *state = (tftp_state_data_t *)conn->proto.tftpc;
-
-  (void)status; /* unused */
-  (void)premature; /* not used */
-
-  Curl_pgrsDone(conn);
-
-  /* If we have encountered an error */
-  code = tftp_translate_code(state->error);
-
-  return code;
-}
-
-/**********************************************************
- *
- * tftp_getsock
- *
- * The getsock callback
- *
- **********************************************************/
-static int tftp_getsock(struct connectdata *conn, curl_socket_t *socks,
-                       int numsocks)
-{
-  if(!numsocks)
-    return GETSOCK_BLANK;
-
-  socks[0] = conn->sock[FIRSTSOCKET];
-
-  return GETSOCK_READSOCK(0);
-}
-
-/**********************************************************
- *
- * tftp_receive_packet
- *
- * Called once select fires and data is ready on the socket
- *
- **********************************************************/
-static CURLcode tftp_receive_packet(struct connectdata *conn)
-{
-  struct Curl_sockaddr_storage fromaddr;
-  curl_socklen_t        fromlen;
-  CURLcode              result = CURLE_OK;
-  struct SessionHandle  *data = conn->data;
-  tftp_state_data_t     *state = (tftp_state_data_t *)conn->proto.tftpc;
-  struct SingleRequest  *k = &data->req;
-
-  /* Receive the packet */
-  fromlen = sizeof(fromaddr);
-  state->rbytes = (int)recvfrom(state->sockfd,
-                                   (void *)state->rpacket.data,
-                                   state->blksize+4,
-                                   0,
-                                   (struct sockaddr *)&fromaddr,
-                                   &fromlen);
-  if(state->remote_addrlen==0) {
-    memcpy(&state->remote_addr, &fromaddr, fromlen);
-    state->remote_addrlen = fromlen;
-  }
-
-  /* Sanity check packet length */
-  if(state->rbytes < 4) {
-    failf(data, "Received too short packet");
-    /* Not a timeout, but how best to handle it? */
-    state->event = TFTP_EVENT_TIMEOUT;
-  }
-  else {
-    /* The event is given by the TFTP packet time */
-    state->event = (tftp_event_t)getrpacketevent(&state->rpacket);
-
-    switch(state->event) {
-    case TFTP_EVENT_DATA:
-      /* Don't pass to the client empty or retransmitted packets */
-      if(state->rbytes > 4 &&
-          ((state->block+1) == getrpacketblock(&state->rpacket))) {
-        result = Curl_client_write(conn, CLIENTWRITE_BODY,
-                                 (char *)state->rpacket.data+4,
-                                 state->rbytes-4);
-        if(result) {
-          tftp_state_machine(state, TFTP_EVENT_ERROR);
-          return result;
-        }
-        k->bytecount += state->rbytes-4;
-        Curl_pgrsSetDownloadCounter(data, (curl_off_t) k->bytecount);
-      }
-      break;
-    case TFTP_EVENT_ERROR:
-      state->error = (tftp_error_t)getrpacketblock(&state->rpacket);
-      infof(data, "%s\n", (const char *)state->rpacket.data+4);
-      break;
-    case TFTP_EVENT_ACK:
-      break;
-    case TFTP_EVENT_OACK:
-      result = tftp_parse_option_ack(state,
-                                   (const char *)state->rpacket.data+2,
-                                   state->rbytes-2);
-      if(result)
-        return result;
-      break;
-    case TFTP_EVENT_RRQ:
-    case TFTP_EVENT_WRQ:
-    default:
-      failf(data, "%s", "Internal error: Unexpected packet");
-      break;
-    }
-
-    /* Update the progress meter */
-    if(Curl_pgrsUpdate(conn)) {
-      tftp_state_machine(state, TFTP_EVENT_ERROR);
-      return CURLE_ABORTED_BY_CALLBACK;
-    }
-  }
-  return result;
-}
-
-/**********************************************************
- *
- * tftp_state_timeout
- *
- * Check if timeouts have been reached
- *
- **********************************************************/
-static long tftp_state_timeout(struct connectdata *conn, tftp_event_t *event)
-{
-  time_t                current;
-  tftp_state_data_t     *state = (tftp_state_data_t *)conn->proto.tftpc;
-
-  if (event)
-    *event = TFTP_EVENT_NONE;
-
-  time(&current);
-  if(current > state->max_time) {
-    DEBUGF(infof(conn->data, "timeout: %ld > %ld\n",
-                 (long)current, (long)state->max_time));
-    state->error = TFTP_ERR_TIMEOUT;
-    state->state = TFTP_STATE_FIN;
-    return(0);
-  }
-  else if (current > state->rx_time+state->retry_time) {
-    if (event)
-      *event = TFTP_EVENT_TIMEOUT;
-    time(&state->rx_time); /* update even though we received nothing */
-    return(state->max_time-current);
-  }
-  else {
-    return(state->max_time-current);
-  }
-}
-
-
-/**********************************************************
- *
- * tftp_easy_statemach
- *
- * Handle easy request until completion
- *
- **********************************************************/
-static CURLcode tftp_easy_statemach(struct connectdata *conn)
-{
-  int                   rc;
-  int                   check_time = 0;
-  CURLcode              result = CURLE_OK;
-  struct SessionHandle  *data = conn->data;
-  tftp_state_data_t     *state = (tftp_state_data_t *)conn->proto.tftpc;
-  int                   fd_read;
-  long                  timeout_ms;
-  struct SingleRequest  *k = &data->req;
-  struct timeval        transaction_start = Curl_tvnow();
-
-  k->start = transaction_start;
-  k->now = transaction_start;
-
-  /* Run the TFTP State Machine */
-  for(; (state->state != TFTP_STATE_FIN) && (result == CURLE_OK); ) {
-
-    timeout_ms = state->retry_time * 1000;
-
-    if (data->set.upload) {
-      if (data->set.max_send_speed &&
-          (data->progress.ulspeed > data->set.max_send_speed)) {
-        fd_read = CURL_SOCKET_BAD;
-        timeout_ms = Curl_sleep_time(data->set.max_send_speed,
-                                     data->progress.ulspeed, state->blksize);
-      }
-      else {
-        fd_read = state->sockfd;
-      }
-    }
-    else {
-      if (data->set.max_recv_speed &&
-          (data->progress.dlspeed > data->set.max_recv_speed)) {
-        fd_read = CURL_SOCKET_BAD;
-        timeout_ms = Curl_sleep_time(data->set.max_recv_speed,
-                                     data->progress.dlspeed, state->blksize);
-      }
-      else {
-        fd_read = state->sockfd;
-      }
-    }
-
-    if(data->set.timeout) {
-      timeout_ms = data->set.timeout - Curl_tvdiff(k->now, k->start);
-      if (timeout_ms > state->retry_time * 1000)
-        timeout_ms = state->retry_time * 1000;
-      else if(timeout_ms < 0)
-        timeout_ms = 0;
-    }
-
-
-    /* Wait until ready to read or timeout occurs */
-    rc = Curl_socket_ready(fd_read, CURL_SOCKET_BAD, (int)(timeout_ms));
-
-    k->now = Curl_tvnow();
-
-    /* Force a progress callback if it's been too long */
-    if (Curl_tvdiff(k->now, k->start) >= data->set.timeout) {
-       if(Curl_pgrsUpdate(conn)) {
-          tftp_state_machine(state, TFTP_EVENT_ERROR);
-          return CURLE_ABORTED_BY_CALLBACK;
-       }
-       k->start = k->now;
-    }
-
-    if(rc == -1) {
-      /* bail out */
-      int error = SOCKERRNO;
-      failf(data, "%s", Curl_strerror(conn, error));
-      state->event = TFTP_EVENT_ERROR;
-    }
-    else {
-
-      if(rc==0) {
-        /* A timeout occured, but our timeout is variable, so maybe
-           just continue? */
-        long rtms = state->retry_time * 1000;
-        if (Curl_tvdiff(k->now, transaction_start) > rtms) {
-          state->event = TFTP_EVENT_TIMEOUT;
-          /* Force a look at transfer timeouts */
-          check_time = 1;
-        }
-        else {
-          continue; /* skip state machine */
-        }
-      }
-      else {
-        result = tftp_receive_packet(conn);
-        if (result == CURLE_OK)
-           transaction_start = Curl_tvnow();
-
-        if(k->bytecountp)
-          *k->bytecountp = k->bytecount; /* read count */
-        if(k->writebytecountp)
-          *k->writebytecountp = k->writebytecount; /* write count */
-      }
-    }
-
-    if(check_time) {
-      tftp_state_timeout(conn, NULL);
-      check_time = 0;
-    }
-
-    if(result)
-      return(result);
-
-    result = tftp_state_machine(state, state->event);
-  }
-
-  /* Tell curl we're done */
-  result = Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-
-  return(result);
-}
-
-/**********************************************************
- *
- * tftp_multi_statemach
- *
- * Handle single RX socket event and return
- *
- **********************************************************/
-static CURLcode tftp_multi_statemach(struct connectdata *conn, bool *done)
-{
-  int                   rc;
-  tftp_event_t          event;
-  CURLcode              result = CURLE_OK;
-  struct SessionHandle  *data = conn->data;
-  tftp_state_data_t     *state = (tftp_state_data_t *)conn->proto.tftpc;
-  long                  timeout_ms = tftp_state_timeout(conn, &event);
-
-  *done = FALSE;
-
-  if(timeout_ms <= 0) {
-    failf(data, "TFTP response timeout");
-    return CURLE_OPERATION_TIMEDOUT;
-  }
-  else if (event != TFTP_EVENT_NONE) {
-    result = tftp_state_machine(state, event);
-    if(result != CURLE_OK)
-      return(result);
-    *done = (bool)(state->state == TFTP_STATE_FIN);
-    if(*done)
-      /* Tell curl we're done */
-      result = Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-  }
-  else {
-    /* no timeouts to handle, check our socket */
-    rc = Curl_socket_ready(state->sockfd, CURL_SOCKET_BAD, 0);
-
-    if(rc == -1) {
-      /* bail out */
-      int error = SOCKERRNO;
-      failf(data, "%s", Curl_strerror(conn, error));
-      state->event = TFTP_EVENT_ERROR;
-    }
-    else if(rc != 0) {
-      result = tftp_receive_packet(conn);
-      if(result != CURLE_OK)
-        return(result);
-      result = tftp_state_machine(state, state->event);
-      if(result != CURLE_OK)
-        return(result);
-      *done = (bool)(state->state == TFTP_STATE_FIN);
-      if(*done)
-        /* Tell curl we're done */
-        result = Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
-    }
-    /* if rc == 0, then select() timed out */
-  }
-
-  return result;
-}
-
-/**********************************************************
- *
- * tftp_doing
- *
- * Called from multi.c while DOing
- *
- **********************************************************/
-static CURLcode tftp_doing(struct connectdata *conn, bool *dophase_done)
-{
-  CURLcode result;
-  result = tftp_multi_statemach(conn, dophase_done);
-
-  if(*dophase_done) {
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-  }
-  return result;
-}
-
-/**********************************************************
- *
- * tftp_peform
- *
- * Entry point for transfer from tftp_do, sarts state mach
- *
- **********************************************************/
-static CURLcode tftp_perform(struct connectdata *conn, bool *dophase_done)
-{
-  CURLcode              result = CURLE_OK;
-  tftp_state_data_t     *state = (tftp_state_data_t *)conn->proto.tftpc;
-
-  *dophase_done = FALSE;
-
-  result = tftp_state_machine(state, TFTP_EVENT_INIT);
-
-  if(state->state == TFTP_STATE_FIN || result != CURLE_OK)
-    return(result);
-
-  if(conn->data->state.used_interface == Curl_if_multi)
-    tftp_multi_statemach(conn, dophase_done);
-  else {
-    result = tftp_easy_statemach(conn);
-    *dophase_done = TRUE; /* with the easy interface we are done here */
-  }
-
-  if(*dophase_done)
-    DEBUGF(infof(conn->data, "DO phase is complete\n"));
-
-  return result;
-}
-
-
-/**********************************************************
- *
- * tftp_do
- *
- * The do callback
- *
- * This callback initiates the TFTP transfer
- *
- **********************************************************/
-
-static CURLcode tftp_do(struct connectdata *conn, bool *done)
-{
-  tftp_state_data_t     *state;
-  CURLcode              code;
-
-  *done = FALSE;
-
-  /*
-    Since connections can be re-used between SessionHandles, this might be a
-    connection already existing but on a fresh SessionHandle struct so we must
-    make sure we have a good 'struct TFTP' to play with. For new connections,
-    the struct TFTP is allocated and setup in the tftp_connect() function.
-  */
-  Curl_reset_reqproto(conn);
-
-  if(!conn->proto.tftpc) {
-    code = tftp_connect(conn, done);
-    if(code)
-      return code;
-  }
-  state = (tftp_state_data_t *)conn->proto.tftpc;
-
-  code = tftp_perform(conn, done);
-
-  /* If tftp_perform() returned an error, use that for return code. If it
-     was OK, see if tftp_translate_code() has an error. */
-  if (code == CURLE_OK) 
-    /* If we have encountered an internal tftp error, translate it. */
-    code = tftp_translate_code(state->error);
-
-  return code;
-}
-
-static CURLcode tftp_setup_connection(struct connectdata * conn)
-{
-  struct SessionHandle *data = conn->data;
-  char * type;
-  char command;
-
-  conn->socktype = SOCK_DGRAM;   /* UDP datagram based */
-
-  /* TFTP URLs support an extension like ";mode=<typecode>" that
-   * we'll try to get now! */
-  type = strstr(data->state.path, ";mode=");
-
-  if(!type)
-    type = strstr(conn->host.rawalloc, ";mode=");
-
-  if(type) {
-    *type = 0;                   /* it was in the middle of the hostname */
-    command = Curl_raw_toupper(type[6]);
-
-    switch (command) {
-    case 'A': /* ASCII mode */
-    case 'N': /* NETASCII mode */
-      data->set.prefer_ascii = TRUE;
-      break;
-
-    case 'O': /* octet mode */
-    case 'I': /* binary mode */
-    default:
-      /* switch off ASCII */
-      data->set.prefer_ascii = FALSE;
-      break;
-    }
-  }
-
-  return CURLE_OK;
-}
-#endif
diff --git a/src/other/curl/lib/tftp.h b/src/other/curl/lib/tftp.h
deleted file mode 100644
index b2d67b2..0000000
--- a/src/other/curl/lib/tftp.h
+++ /dev/null
@@ -1,28 +0,0 @@
-#ifndef __TFTP_H
-#define __TFTP_H
-
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#ifndef CURL_DISABLE_TFTP
-extern const struct Curl_handler Curl_handler_tftp;
-#endif
-#endif
diff --git a/src/other/curl/lib/timeval.c b/src/other/curl/lib/timeval.c
deleted file mode 100644
index cb39308..0000000
--- a/src/other/curl/lib/timeval.c
+++ /dev/null
@@ -1,131 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "timeval.h"
-
-#if defined(WIN32) && !defined(MSDOS)
-
-struct timeval curlx_tvnow(void)
-{
-  /*
-  ** GetTickCount() is available on _all_ Windows versions from W95 up
-  ** to nowadays. Returns milliseconds elapsed since last system boot,
-  ** increases monotonically and wraps once 49.7 days have elapsed.
-  */
-  struct timeval now;
-  DWORD milliseconds = GetTickCount();
-  now.tv_sec = milliseconds / 1000;
-  now.tv_usec = (milliseconds % 1000) * 1000;
-  return now;
-}
-
-#elif defined(HAVE_CLOCK_GETTIME_MONOTONIC)
-
-struct timeval curlx_tvnow(void)
-{
-  /*
-  ** clock_gettime() is granted to be increased monotonically when the
-  ** monotonic clock is queried. Time starting point is unspecified, it
-  ** could be the system start-up time, the Epoch, or something else,
-  ** in any case the time starting point does not change once that the
-  ** system has started up.
-  */
-  struct timeval now;
-  struct timespec tsnow;
-  if(0 == clock_gettime(CLOCK_MONOTONIC, &tsnow)) {
-    now.tv_sec = tsnow.tv_sec;
-    now.tv_usec = tsnow.tv_nsec / 1000;
-  }
-  /*
-  ** Even when the configure process has truly detected monotonic clock
-  ** availability, it might happen that it is not actually available at
-  ** run-time. When this occurs simply fallback to other time source.
-  */
-#ifdef HAVE_GETTIMEOFDAY
-  else
-    (void)gettimeofday(&now, NULL);
-#else
-  else {
-    now.tv_sec = (long)time(NULL);
-    now.tv_usec = 0;
-  }
-#endif
-  return now;
-}
-
-#elif defined(HAVE_GETTIMEOFDAY)
-
-struct timeval curlx_tvnow(void)
-{
-  /*
-  ** gettimeofday() is not granted to be increased monotonically, due to
-  ** clock drifting and external source time synchronization it can jump
-  ** forward or backward in time.
-  */
-  struct timeval now;
-  (void)gettimeofday(&now, NULL);
-  return now;
-}
-
-#else
-
-struct timeval curlx_tvnow(void)
-{
-  /*
-  ** time() returns the value of time in seconds since the Epoch.
-  */
-  struct timeval now;
-  now.tv_sec = (long)time(NULL);
-  now.tv_usec = 0;
-  return now;
-}
-
-#endif
-
-/*
- * Make sure that the first argument is the more recent time, as otherwise
- * we'll get a weird negative time-diff back...
- *
- * Returns: the time difference in number of milliseconds.
- */
-long curlx_tvdiff(struct timeval newer, struct timeval older)
-{
-  return (newer.tv_sec-older.tv_sec)*1000+
-    (newer.tv_usec-older.tv_usec)/1000;
-}
-
-/*
- * Same as curlx_tvdiff but with full usec resolution.
- *
- * Returns: the time difference in seconds with subsecond resolution.
- */
-double curlx_tvdiff_secs(struct timeval newer, struct timeval older)
-{
-  return (double)(newer.tv_sec-older.tv_sec)+
-    (double)(newer.tv_usec-older.tv_usec)/1000000.0;
-}
-
-/* return the number of seconds in the given input timeval struct */
-long Curl_tvlong(struct timeval t1)
-{
-  return t1.tv_sec;
-}
diff --git a/src/other/curl/lib/timeval.h b/src/other/curl/lib/timeval.h
deleted file mode 100644
index bc79a45..0000000
--- a/src/other/curl/lib/timeval.h
+++ /dev/null
@@ -1,57 +0,0 @@
-#ifndef __TIMEVAL_H
-#define __TIMEVAL_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/*
- * CAUTION: this header is designed to work when included by the app-side
- * as well as the library. Do not mix with library internals!
- */
-
-#include "setup.h"
-
-struct timeval curlx_tvnow(void);
-
-/*
- * Make sure that the first argument (t1) is the more recent time and t2 is
- * the older time, as otherwise you get a weird negative time-diff back...
- *
- * Returns: the time difference in number of milliseconds.
- */
-long curlx_tvdiff(struct timeval t1, struct timeval t2);
-
-/*
- * Same as curlx_tvdiff but with full usec resolution.
- *
- * Returns: the time difference in seconds with subsecond resolution.
- */
-double curlx_tvdiff_secs(struct timeval t1, struct timeval t2);
-
-long Curl_tvlong(struct timeval t1);
-
-/* These two defines below exist to provide the older API for library
-   internals only. */
-#define Curl_tvnow() curlx_tvnow()
-#define Curl_tvdiff(x,y) curlx_tvdiff(x,y)
-#define Curl_tvdiff_secs(x,y) curlx_tvdiff_secs(x,y)
-
-#endif
diff --git a/src/other/curl/lib/transfer.c b/src/other/curl/lib/transfer.c
deleted file mode 100644
index 2d50405..0000000
--- a/src/other/curl/lib/transfer.c
+++ /dev/null
@@ -1,2250 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-/* -- WIN32 approved -- */
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-#include <errno.h>
-
-#include "strtoofft.h"
-#include "strequal.h"
-#include "rawstr.h"
-
-#ifdef WIN32
-#include <time.h>
-#include <io.h>
-#else
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_NET_IF_H
-#include <net/if.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
-#endif
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-
-#ifdef HAVE_SYS_PARAM_H
-#include <sys/param.h>
-#endif
-
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-
-#ifndef HAVE_SOCKET
-#error "We can't compile without socket() support!"
-#endif
-
-#endif  /* WIN32 */
-
-#include "urldata.h"
-#include <curl/curl.h>
-#include "netrc.h"
-
-#include "content_encoding.h"
-#include "hostip.h"
-#include "transfer.h"
-#include "sendf.h"
-#include "speedcheck.h"
-#include "progress.h"
-#include "http.h"
-#include "url.h"
-#include "getinfo.h"
-#include "sslgen.h"
-#include "http_digest.h"
-#include "http_ntlm.h"
-#include "http_negotiate.h"
-#include "share.h"
-#include "curl_memory.h"
-#include "select.h"
-#include "multiif.h"
-#include "easyif.h" /* for Curl_convert_to_network prototype */
-#include "rtsp.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-/* The last #include file should be: */
-#include "memdebug.h"
-
-#define CURL_TIMEOUT_EXPECT_100 1000 /* counting ms here */
-
-/*
- * This function will call the read callback to fill our buffer with data
- * to upload.
- */
-CURLcode Curl_fillreadbuffer(struct connectdata *conn, int bytes, int *nreadp)
-{
-  struct SessionHandle *data = conn->data;
-  size_t buffersize = (size_t)bytes;
-  int nread;
-#ifdef CURL_DOES_CONVERSIONS
-  bool sending_http_headers = FALSE;
-
-  if((conn->protocol&(PROT_HTTP|PROT_RTSP)) &&
-     (data->state.proto.http->sending == HTTPSEND_REQUEST)) {
-    /* We're sending the HTTP request headers, not the data.
-       Remember that so we don't re-translate them into garbage. */
-    sending_http_headers = TRUE;
-  }
-#endif
-
-  if(data->req.upload_chunky) {
-    /* if chunked Transfer-Encoding */
-    buffersize -= (8 + 2 + 2);   /* 32bit hex + CRLF + CRLF */
-    data->req.upload_fromhere += (8 + 2); /* 32bit hex + CRLF */
-  }
-
-  /* this function returns a size_t, so we typecast to int to prevent warnings
-     with picky compilers */
-  nread = (int)conn->fread_func(data->req.upload_fromhere, 1,
-                                buffersize, conn->fread_in);
-
-  if(nread == CURL_READFUNC_ABORT) {
-    failf(data, "operation aborted by callback");
-    *nreadp = 0;
-    return CURLE_ABORTED_BY_CALLBACK;
-  }
-  else if(nread == CURL_READFUNC_PAUSE) {
-    struct SingleRequest *k = &data->req;
-    /* CURL_READFUNC_PAUSE pauses read callbacks that feed socket writes */
-    k->keepon |= KEEP_SEND_PAUSE; /* mark socket send as paused */
-    if(data->req.upload_chunky) {
-      /* Back out the preallocation done above */
-      data->req.upload_fromhere -= (8 + 2);
-    }
-    *nreadp = 0;
-    return CURLE_OK; /* nothing was read */
-  }
-  else if((size_t)nread > buffersize) {
-    /* the read function returned a too large value */
-    *nreadp = 0;
-    failf(data, "read function returned funny value");
-    return CURLE_READ_ERROR;
-  }
-
-  if(!data->req.forbidchunk && data->req.upload_chunky) {
-    /* if chunked Transfer-Encoding
-     *    build chunk:
-     *
-     *        <HEX SIZE> CRLF
-     *        <DATA> CRLF
-     */
-    /* On non-ASCII platforms the <DATA> may or may not be
-       translated based on set.prefer_ascii while the protocol
-       portion must always be translated to the network encoding.
-       To further complicate matters, line end conversion might be
-       done later on, so we need to prevent CRLFs from becoming
-       CRCRLFs if that's the case.  To do this we use bare LFs
-       here, knowing they'll become CRLFs later on.
-     */
-
-    char hexbuffer[11];
-    const char *endofline_native;
-    const char *endofline_network;
-    int hexlen;
-#ifdef CURL_DO_LINEEND_CONV
-    if((data->set.crlf) || (data->set.prefer_ascii)) {
-#else
-    if(data->set.crlf) {
-#endif /* CURL_DO_LINEEND_CONV */
-      /* \n will become \r\n later on */
-      endofline_native  = "\n";
-      endofline_network = "\x0a";
-    } else {
-      endofline_native  = "\r\n";
-      endofline_network = "\x0d\x0a";
-    }
-    hexlen = snprintf(hexbuffer, sizeof(hexbuffer),
-                      "%x%s", nread, endofline_native);
-
-    /* move buffer pointer */
-    data->req.upload_fromhere -= hexlen;
-    nread += hexlen;
-
-    /* copy the prefix to the buffer, leaving out the NUL */
-    memcpy(data->req.upload_fromhere, hexbuffer, hexlen);
-
-    /* always append ASCII CRLF to the data */
-    memcpy(data->req.upload_fromhere + nread,
-           endofline_network,
-           strlen(endofline_network));
-
-#ifdef CURL_DOES_CONVERSIONS
-    CURLcode res;
-    int length;
-    if(data->set.prefer_ascii) {
-      /* translate the protocol and data */
-      length = nread;
-    } else {
-      /* just translate the protocol portion */
-      length = strlen(hexbuffer);
-    }
-    res = Curl_convert_to_network(data, data->req.upload_fromhere, length);
-    /* Curl_convert_to_network calls failf if unsuccessful */
-    if(res != CURLE_OK) {
-      return(res);
-    }
-#endif /* CURL_DOES_CONVERSIONS */
-
-    if((nread - hexlen) == 0) {
-      /* mark this as done once this chunk is transfered */
-      data->req.upload_done = TRUE;
-    }
-
-    nread+=(int)strlen(endofline_native); /* for the added end of line */
-  }
-#ifdef CURL_DOES_CONVERSIONS
-  else if((data->set.prefer_ascii) && (!sending_http_headers)) {
-    CURLcode res;
-    res = Curl_convert_to_network(data, data->req.upload_fromhere, nread);
-    /* Curl_convert_to_network calls failf if unsuccessful */
-    if(res != CURLE_OK)
-      return(res);
-  }
-#endif /* CURL_DOES_CONVERSIONS */
-
-  *nreadp = nread;
-
-  return CURLE_OK;
-}
-
-
-/*
- * Curl_readrewind() rewinds the read stream. This is typically used for HTTP
- * POST/PUT with multi-pass authentication when a sending was denied and a
- * resend is necessary.
- */
-CURLcode Curl_readrewind(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-
-  conn->bits.rewindaftersend = FALSE; /* we rewind now */
-
-  /* explicitly switch off sending data on this connection now since we are
-     about to restart a new transfer and thus we want to avoid inadvertently
-     sending more data on the existing connection until the next transfer
-     starts */
-  data->req.keepon &= ~KEEP_SEND;
-
-  /* We have sent away data. If not using CURLOPT_POSTFIELDS or
-     CURLOPT_HTTPPOST, call app to rewind
-  */
-  if(data->set.postfields ||
-     (data->set.httpreq == HTTPREQ_POST_FORM))
-    ; /* do nothing */
-  else {
-    if(data->set.seek_func) {
-      int err;
-
-      err = (data->set.seek_func)(data->set.seek_client, 0, SEEK_SET);
-      if(err) {
-        failf(data, "seek callback returned error %d", (int)err);
-        return CURLE_SEND_FAIL_REWIND;
-      }
-    }
-    else if(data->set.ioctl_func) {
-      curlioerr err;
-
-      err = (data->set.ioctl_func)(data, CURLIOCMD_RESTARTREAD,
-                                   data->set.ioctl_client);
-      infof(data, "the ioctl callback returned %d\n", (int)err);
-
-      if(err) {
-        /* FIXME: convert to a human readable error message */
-        failf(data, "ioctl callback returned error %d", (int)err);
-        return CURLE_SEND_FAIL_REWIND;
-      }
-    }
-    else {
-      /* If no CURLOPT_READFUNCTION is used, we know that we operate on a
-         given FILE * stream and we can actually attempt to rewind that
-         ourself with fseek() */
-      if(data->set.fread_func == (curl_read_callback)fread) {
-        if(-1 != fseek(data->set.in, 0, SEEK_SET))
-          /* successful rewind */
-          return CURLE_OK;
-      }
-
-      /* no callback set or failure above, makes us fail at once */
-      failf(data, "necessary data rewind wasn't possible");
-      return CURLE_SEND_FAIL_REWIND;
-    }
-  }
-  return CURLE_OK;
-}
-
-static int data_pending(const struct connectdata *conn)
-{
-  /* in the case of libssh2, we can never be really sure that we have emptied
-     its internal buffers so we MUST always try until we get EAGAIN back */
-  return conn->protocol&(PROT_SCP|PROT_SFTP) ||
-    Curl_ssl_data_pending(conn, FIRSTSOCKET);
-}
-
-static void read_rewind(struct connectdata *conn,
-                        size_t thismuch)
-{
-  DEBUGASSERT(conn->read_pos >= thismuch);
-
-  conn->read_pos -= thismuch;
-  conn->bits.stream_was_rewound = TRUE;
-
-#ifdef DEBUGBUILD
-  {
-    char buf[512 + 1];
-    size_t show;
-
-    show = CURLMIN(conn->buf_len - conn->read_pos, sizeof(buf)-1);
-    if(conn->master_buffer) {
-        memcpy(buf, conn->master_buffer + conn->read_pos, show);
-        buf[show] = '\0';
-    }
-    else {
-        buf[0] = '\0';
-    }
-
-    DEBUGF(infof(conn->data,
-                 "Buffer after stream rewind (read_pos = %zu): [%s]",
-                 conn->read_pos, buf));
-  }
-#endif
-}
-
-
-/*
- * Go ahead and do a read if we have a readable socket or if
- * the stream was rewound (in which case we have data in a
- * buffer)
- */
-static CURLcode readwrite_data(struct SessionHandle *data,
-                               struct connectdata *conn,
-                               struct SingleRequest *k,
-                               int *didwhat, bool *done)
-{
-  CURLcode result = CURLE_OK;
-  ssize_t nread; /* number of bytes read */
-  size_t excess = 0; /* excess bytes read */
-  bool is_empty_data = FALSE;
-#ifndef CURL_DISABLE_RTSP
-  bool readmore = FALSE; /* used by RTP to signal for more data */
-#endif
-
-  *done = FALSE;
-
-  /* This is where we loop until we have read everything there is to
-     read or we get a EWOULDBLOCK */
-  do {
-    size_t buffersize = data->set.buffer_size?
-      data->set.buffer_size : BUFSIZE;
-    size_t bytestoread = buffersize;
-    int readrc;
-
-    if(k->size != -1 && !k->header) {
-      /* make sure we don't read "too much" if we can help it since we
-         might be pipelining and then someone else might want to read what
-         follows! */
-      curl_off_t totalleft = k->size - k->bytecount;
-      if(totalleft < (curl_off_t)bytestoread)
-        bytestoread = (size_t)totalleft;
-    }
-
-    if(bytestoread) {
-      /* receive data from the network! */
-      readrc = Curl_read(conn, conn->sockfd, k->buf, bytestoread, &nread);
-
-      /* subzero, this would've blocked */
-      if(0 > readrc)
-        break; /* get out of loop */
-
-      /* get the CURLcode from the int */
-      result = (CURLcode)readrc;
-
-      if(result>0)
-        return result;
-    }
-    else {
-      /* read nothing but since we wanted nothing we consider this an OK
-         situation to proceed from */
-      nread = 0;
-    }
-
-    if((k->bytecount == 0) && (k->writebytecount == 0)) {
-      Curl_pgrsTime(data, TIMER_STARTTRANSFER);
-      if(k->exp100 > EXP100_SEND_DATA)
-        /* set time stamp to compare with when waiting for the 100 */
-        k->start100 = Curl_tvnow();
-    }
-
-    *didwhat |= KEEP_RECV;
-    /* indicates data of zero size, i.e. empty file */
-    is_empty_data = (bool)((nread == 0) && (k->bodywrites == 0));
-
-    /* NUL terminate, allowing string ops to be used */
-    if(0 < nread || is_empty_data) {
-      k->buf[nread] = 0;
-    }
-    else if(0 >= nread) {
-      /* if we receive 0 or less here, the server closed the connection
-         and we bail out from this! */
-      DEBUGF(infof(data, "nread <= 0, server closed connection, bailing\n"));
-      k->keepon &= ~KEEP_RECV;
-      break;
-    }
-
-    /* Default buffer to use when we write the buffer, it may be changed
-       in the flow below before the actual storing is done. */
-    k->str = k->buf;
-
-#ifndef CURL_DISABLE_RTSP
-    /* Check for RTP at the beginning of the data */
-    if(conn->protocol & PROT_RTSP) {
-      result = Curl_rtsp_rtp_readwrite(data, conn, &nread, &readmore);
-      if(result)
-        return result;
-      if(readmore)
-        break;
-    }
-#endif
-
-#ifndef CURL_DISABLE_HTTP
-    /* Since this is a two-state thing, we check if we are parsing
-       headers at the moment or not. */
-    if(k->header) {
-      /* we are in parse-the-header-mode */
-      bool stop_reading = FALSE;
-      result = Curl_http_readwrite_headers(data, conn, &nread, &stop_reading);
-      if(result)
-        return result;
-
-#ifndef CURL_DISABLE_RTSP
-      /* Check for RTP after the headers if there is no Content */
-      if(k->maxdownload <= 0 && nread > 0 && (conn->protocol & PROT_RTSP)) {
-        result = Curl_rtsp_rtp_readwrite(data, conn, &nread, &readmore);
-        if(result)
-          return result;
-        if(readmore)
-          break;
-      }
-#endif
-
-      if(stop_reading)
-        /* We've stopped dealing with input, get out of the do-while loop */
-        break;
-    }
-#endif /* CURL_DISABLE_HTTP */
-
-
-    /* This is not an 'else if' since it may be a rest from the header
-       parsing, where the beginning of the buffer is headers and the end
-       is non-headers. */
-    if(k->str && !k->header && (nread > 0 || is_empty_data)) {
-
-
-#ifndef CURL_DISABLE_HTTP
-      if(0 == k->bodywrites && !is_empty_data) {
-        /* These checks are only made the first time we are about to
-           write a piece of the body */
-        if(conn->protocol&(PROT_HTTP|PROT_RTSP)) {
-          /* HTTP-only checks */
-
-          if(data->req.newurl) {
-            if(conn->bits.close) {
-              /* Abort after the headers if "follow Location" is set
-                 and we're set to close anyway. */
-              k->keepon &= ~KEEP_RECV;
-              *done = TRUE;
-              return CURLE_OK;
-            }
-            /* We have a new url to load, but since we want to be able
-               to re-use this connection properly, we read the full
-               response in "ignore more" */
-            k->ignorebody = TRUE;
-            infof(data, "Ignoring the response-body\n");
-          }
-          if(data->state.resume_from && !k->content_range &&
-             (data->set.httpreq==HTTPREQ_GET) &&
-             !k->ignorebody) {
-            /* we wanted to resume a download, although the server doesn't
-             * seem to support this and we did this with a GET (if it
-             * wasn't a GET we did a POST or PUT resume) */
-            failf(data, "HTTP server doesn't seem to support "
-                  "byte ranges. Cannot resume.");
-            return CURLE_RANGE_ERROR;
-          }
-
-          if(data->set.timecondition && !data->state.range) {
-            /* A time condition has been set AND no ranges have been
-               requested. This seems to be what chapter 13.3.4 of
-               RFC 2616 defines to be the correct action for a
-               HTTP/1.1 client */
-            if((k->timeofdoc > 0) && (data->set.timevalue > 0)) {
-              switch(data->set.timecondition) {
-              case CURL_TIMECOND_IFMODSINCE:
-              default:
-                if(k->timeofdoc < data->set.timevalue) {
-                  infof(data,
-                        "The requested document is not new enough\n");
-                  *done = TRUE;
-                  data->info.timecond = TRUE;
-                  return CURLE_OK;
-                }
-                break;
-              case CURL_TIMECOND_IFUNMODSINCE:
-                if(k->timeofdoc > data->set.timevalue) {
-                  infof(data,
-                        "The requested document is not old enough\n");
-                  *done = TRUE;
-                  data->info.timecond = TRUE;
-                  return CURLE_OK;
-                }
-                break;
-              } /* switch */
-            } /* two valid time strings */
-          } /* we have a time condition */
-
-        } /* this is HTTP */
-      } /* this is the first time we write a body part */
-#endif /* CURL_DISABLE_HTTP */
-      k->bodywrites++;
-
-      /* pass data to the debug function before it gets "dechunked" */
-      if(data->set.verbose) {
-        if(k->badheader) {
-          Curl_debug(data, CURLINFO_DATA_IN, data->state.headerbuff,
-                     (size_t)k->hbuflen, conn);
-          if(k->badheader == HEADER_PARTHEADER)
-            Curl_debug(data, CURLINFO_DATA_IN,
-                       k->str, (size_t)nread, conn);
-        }
-        else
-          Curl_debug(data, CURLINFO_DATA_IN,
-                     k->str, (size_t)nread, conn);
-      }
-
-#ifndef CURL_DISABLE_HTTP
-      if(k->chunk) {
-        /*
-         * Here comes a chunked transfer flying and we need to decode this
-         * properly.  While the name says read, this function both reads
-         * and writes away the data. The returned 'nread' holds the number
-         * of actual data it wrote to the client.
-         */
-
-        CHUNKcode res =
-          Curl_httpchunk_read(conn, k->str, nread, &nread);
-
-        if(CHUNKE_OK < res) {
-          if(CHUNKE_WRITE_ERROR == res) {
-            failf(data, "Failed writing data");
-            return CURLE_WRITE_ERROR;
-          }
-          failf(data, "Received problem %d in the chunky parser", (int)res);
-          return CURLE_RECV_ERROR;
-        }
-        else if(CHUNKE_STOP == res) {
-          size_t dataleft;
-          /* we're done reading chunks! */
-          k->keepon &= ~KEEP_RECV; /* read no more */
-
-          /* There are now possibly N number of bytes at the end of the
-             str buffer that weren't written to the client.
-
-             We DO care about this data if we are pipelining.
-             Push it back to be read on the next pass. */
-
-          dataleft = conn->chunk.dataleft;
-          if(dataleft != 0) {
-            infof(conn->data, "Leftovers after chunking. "
-                  " Rewinding %zu bytes\n",dataleft);
-            read_rewind(conn, dataleft);
-          }
-        }
-        /* If it returned OK, we just keep going */
-      }
-#endif   /* CURL_DISABLE_HTTP */
-
-      /* Account for body content stored in the header buffer */
-      if(k->badheader && !k->ignorebody) {
-        DEBUGF(infof(data, "Increasing bytecount by %zu from hbuflen\n",
-                     k->hbuflen));
-        k->bytecount += k->hbuflen;
-      }
-
-      if((-1 != k->maxdownload) &&
-         (k->bytecount + nread >= k->maxdownload)) {
-
-        excess = (size_t)(k->bytecount + nread - k->maxdownload);
-        if(excess > 0 && !k->ignorebody) {
-          if(conn->data->multi && Curl_multi_canPipeline(conn->data->multi)) {
-            /* The 'excess' amount below can't be more than BUFSIZE which
-               always will fit in a size_t */
-            infof(data,
-                "Rewinding stream by : %zu"
-                " bytes on url %s (size = %" FORMAT_OFF_T
-                ", maxdownload = %" FORMAT_OFF_T
-                ", bytecount = %" FORMAT_OFF_T ", nread = %zd)\n",
-                excess, data->state.path,
-                k->size, k->maxdownload, k->bytecount, nread);
-            read_rewind(conn, excess);
-          }
-          else {
-            infof(data,
-                "Excess found in a non pipelined read:"
-                " excess = %zu"
-                ", size = %" FORMAT_OFF_T
-                ", maxdownload = %" FORMAT_OFF_T
-                ", bytecount = %" FORMAT_OFF_T "\n",
-                excess, k->size, k->maxdownload, k->bytecount);
-          }
-        }
-
-        nread = (ssize_t) (k->maxdownload - k->bytecount);
-        if(nread < 0 ) /* this should be unusual */
-          nread = 0;
-
-        k->keepon &= ~KEEP_RECV; /* we're done reading */
-      }
-
-      k->bytecount += nread;
-
-      Curl_pgrsSetDownloadCounter(data, k->bytecount);
-
-      if(!k->chunk && (nread || k->badheader || is_empty_data)) {
-        /* If this is chunky transfer, it was already written */
-
-        if(k->badheader && !k->ignorebody) {
-          /* we parsed a piece of data wrongly assuming it was a header
-             and now we output it as body instead */
-
-          /* Don't let excess data pollute body writes */
-          if(k->maxdownload == -1 || (curl_off_t)k->hbuflen <= k->maxdownload)
-            result = Curl_client_write(conn, CLIENTWRITE_BODY,
-                data->state.headerbuff,
-                k->hbuflen);
-          else
-            result = Curl_client_write(conn, CLIENTWRITE_BODY,
-                data->state.headerbuff,
-                (size_t)k->maxdownload);
-
-          if(result)
-            return result;
-        }
-        if(k->badheader < HEADER_ALLBAD) {
-          /* This switch handles various content encodings. If there's an
-             error here, be sure to check over the almost identical code
-             in http_chunks.c.
-             Make sure that ALL_CONTENT_ENCODINGS contains all the
-             encodings handled here. */
-#ifdef HAVE_LIBZ
-          switch (conn->data->set.http_ce_skip ?
-                  IDENTITY : k->content_encoding) {
-          case IDENTITY:
-#endif
-            /* This is the default when the server sends no
-               Content-Encoding header. See Curl_readwrite_init; the
-               memset() call initializes k->content_encoding to zero. */
-            if(!k->ignorebody) {
-
-#ifndef CURL_DISABLE_POP3
-              if(conn->protocol&PROT_POP3)
-                result = Curl_pop3_write(conn, k->str, nread);
-              else
-#endif /* CURL_DISABLE_POP3 */
-
-              result = Curl_client_write(conn, CLIENTWRITE_BODY, k->str,
-                                         nread);
-            }
-#ifdef HAVE_LIBZ
-            break;
-
-          case DEFLATE:
-            /* Assume CLIENTWRITE_BODY; headers are not encoded. */
-            if(!k->ignorebody)
-              result = Curl_unencode_deflate_write(conn, k, nread);
-            break;
-
-          case GZIP:
-            /* Assume CLIENTWRITE_BODY; headers are not encoded. */
-            if(!k->ignorebody)
-              result = Curl_unencode_gzip_write(conn, k, nread);
-            break;
-
-          case COMPRESS:
-          default:
-            failf (data, "Unrecognized content encoding type. "
-                   "libcurl understands `identity', `deflate' and `gzip' "
-                   "content encodings.");
-            result = CURLE_BAD_CONTENT_ENCODING;
-            break;
-          }
-#endif
-        }
-        k->badheader = HEADER_NORMAL; /* taken care of now */
-
-        if(result)
-          return result;
-      }
-
-    } /* if(! header and data to read ) */
-
-#ifndef CURL_DISABLE_RTSP
-    if(excess > 0 && !conn->bits.stream_was_rewound &&
-        (conn->protocol & PROT_RTSP)) {
-      /* Check for RTP after the content if there is unrewound excess */
-
-      /* Parse the excess data */
-      k->str += nread;
-      nread = excess;
-
-      result = Curl_rtsp_rtp_readwrite(data, conn, &nread, &readmore);
-      if(result)
-        return result;
-
-      if(readmore)
-        k->keepon |= KEEP_RECV; /* we're not done reading */
-        break;
-    }
-#endif
-
-    if(is_empty_data) {
-      /* if we received nothing, the server closed the connection and we
-         are done */
-      k->keepon &= ~KEEP_RECV;
-    }
-
-  } while(data_pending(conn));
-
-  if(((k->keepon & (KEEP_RECV|KEEP_SEND)) == KEEP_SEND) &&
-     conn->bits.close ) {
-    /* When we've read the entire thing and the close bit is set, the server
-       may now close the connection. If there's now any kind of sending going
-       on from our side, we need to stop that immediately. */
-    infof(data, "we are done reading and this is set to close, stop send\n");
-    k->keepon &= ~KEEP_SEND; /* no writing anymore either */
-  }
-
-  return CURLE_OK;
-}
-
-/*
- * Send data to upload to the server, when the socket is writable.
- */
-static CURLcode readwrite_upload(struct SessionHandle *data,
-                                 struct connectdata *conn,
-                                 struct SingleRequest *k,
-                                 int *didwhat)
-{
-  ssize_t i, si;
-  ssize_t bytes_written;
-  CURLcode result;
-  ssize_t nread; /* number of bytes read */
-  bool sending_http_headers = FALSE;
-
-  if((k->bytecount == 0) && (k->writebytecount == 0))
-    Curl_pgrsTime(data, TIMER_STARTTRANSFER);
-
-  *didwhat |= KEEP_SEND;
-
-  /*
-   * We loop here to do the READ and SEND loop until we run out of
-   * data to send or until we get EWOULDBLOCK back
-   */
-  do {
-
-    /* only read more data if there's no upload data already
-       present in the upload buffer */
-    if(0 == data->req.upload_present) {
-      /* init the "upload from here" pointer */
-      data->req.upload_fromhere = k->uploadbuf;
-
-      if(!k->upload_done) {
-        /* HTTP pollution, this should be written nicer to become more
-           protocol agnostic. */
-        int fillcount;
-
-        if((k->exp100 == EXP100_SENDING_REQUEST) &&
-           (data->state.proto.http->sending == HTTPSEND_BODY)) {
-          /* If this call is to send body data, we must take some action:
-             We have sent off the full HTTP 1.1 request, and we shall now
-             go into the Expect: 100 state and await such a header */
-          k->exp100 = EXP100_AWAITING_CONTINUE; /* wait for the header */
-          k->keepon &= ~KEEP_SEND;         /* disable writing */
-          k->start100 = Curl_tvnow();       /* timeout count starts now */
-          *didwhat &= ~KEEP_SEND;  /* we didn't write anything actually */
-          break;
-        }
-
-        if(conn->protocol&(PROT_HTTP|PROT_RTSP)) {
-          if(data->state.proto.http->sending == HTTPSEND_REQUEST)
-            /* We're sending the HTTP request headers, not the data.
-               Remember that so we don't change the line endings. */
-            sending_http_headers = TRUE;
-          else
-            sending_http_headers = FALSE;
-        }
-
-        result = Curl_fillreadbuffer(conn, BUFSIZE, &fillcount);
-        if(result)
-          return result;
-
-        nread = (ssize_t)fillcount;
-      }
-      else
-        nread = 0; /* we're done uploading/reading */
-
-      if(!nread && (k->keepon & KEEP_SEND_PAUSE)) {
-        /* this is a paused transfer */
-        break;
-      }
-      else if(nread<=0) {
-        /* done */
-        k->keepon &= ~KEEP_SEND; /* we're done writing */
-
-        if(conn->bits.rewindaftersend) {
-          result = Curl_readrewind(conn);
-          if(result)
-            return result;
-        }
-        break;
-      }
-
-      /* store number of bytes available for upload */
-      data->req.upload_present = nread;
-
-#ifndef CURL_DISABLE_SMTP
-      if(conn->protocol & PROT_SMTP) {
-        result = Curl_smtp_escape_eob(conn, nread);
-        if(result)
-          return result;
-      }
-      else
-#endif /* CURL_DISABLE_SMTP */
-
-      /* convert LF to CRLF if so asked */
-      if((!sending_http_headers) &&
-#ifdef CURL_DO_LINEEND_CONV
-        /* always convert if we're FTPing in ASCII mode */
-         ((data->set.crlf) || (data->set.prefer_ascii))) {
-#else
-         (data->set.crlf)) {
-#endif
-        if(data->state.scratch == NULL)
-          data->state.scratch = malloc(2*BUFSIZE);
-        if(data->state.scratch == NULL) {
-          failf (data, "Failed to alloc scratch buffer!");
-          return CURLE_OUT_OF_MEMORY;
-        }
-        /*
-         * ASCII/EBCDIC Note: This is presumably a text (not binary)
-         * transfer so the data should already be in ASCII.
-         * That means the hex values for ASCII CR (0x0d) & LF (0x0a)
-         * must be used instead of the escape sequences \r & \n.
-         */
-        for(i = 0, si = 0; i < nread; i++, si++) {
-          if(data->req.upload_fromhere[i] == 0x0a) {
-            data->state.scratch[si++] = 0x0d;
-            data->state.scratch[si] = 0x0a;
-            if(!data->set.crlf) {
-              /* we're here only because FTP is in ASCII mode...
-                 bump infilesize for the LF we just added */
-              data->set.infilesize++;
-            }
-          }
-          else
-            data->state.scratch[si] = data->req.upload_fromhere[i];
-        }
-        if(si != nread) {
-          /* only perform the special operation if we really did replace
-             anything */
-          nread = si;
-
-          /* upload from the new (replaced) buffer instead */
-          data->req.upload_fromhere = data->state.scratch;
-
-          /* set the new amount too */
-          data->req.upload_present = nread;
-        }
-      }
-    } /* if 0 == data->req.upload_present */
-    else {
-      /* We have a partial buffer left from a previous "round". Use
-         that instead of reading more data */
-    }
-
-    /* write to socket (send away data) */
-    result = Curl_write(conn,
-                        conn->writesockfd,     /* socket to send to */
-                        data->req.upload_fromhere, /* buffer pointer */
-                        data->req.upload_present,  /* buffer size */
-                        &bytes_written);           /* actually sent */
-
-    if(result)
-      return result;
-
-    if(data->set.verbose)
-      /* show the data before we change the pointer upload_fromhere */
-      Curl_debug(data, CURLINFO_DATA_OUT, data->req.upload_fromhere,
-                 (size_t)bytes_written, conn);
-
-    if(data->req.upload_present != bytes_written) {
-      /* we only wrote a part of the buffer (if anything), deal with it! */
-
-      /* store the amount of bytes left in the buffer to write */
-      data->req.upload_present -= bytes_written;
-
-      /* advance the pointer where to find the buffer when the next send
-         is to happen */
-      data->req.upload_fromhere += bytes_written;
-    }
-    else {
-      /* we've uploaded that buffer now */
-      data->req.upload_fromhere = k->uploadbuf;
-      data->req.upload_present = 0; /* no more bytes left */
-
-      if(k->upload_done) {
-        /* switch off writing, we're done! */
-        k->keepon &= ~KEEP_SEND; /* we're done writing */
-      }
-    }
-
-    k->writebytecount += bytes_written;
-    Curl_pgrsSetUploadCounter(data, k->writebytecount);
-
-  } while(0); /* just to break out from! */
-
-  return CURLE_OK;
-}
-
-/*
- * Curl_readwrite() is the low-level function to be called when data is to
- * be read and written to/from the connection.
- */
-CURLcode Curl_readwrite(struct connectdata *conn,
-                        bool *done)
-{
-  struct SessionHandle *data = conn->data;
-  struct SingleRequest *k = &data->req;
-  CURLcode result;
-  int didwhat=0;
-
-  curl_socket_t fd_read;
-  curl_socket_t fd_write;
-  int select_res = conn->cselect_bits;
-
-  conn->cselect_bits = 0;
-
-  /* only use the proper socket if the *_HOLD bit is not set simultaneously as
-     then we are in rate limiting state in that transfer direction */
-
-  if((k->keepon & KEEP_RECVBITS) == KEEP_RECV)
-    fd_read = conn->sockfd;
-  else
-    fd_read = CURL_SOCKET_BAD;
-
-  if((k->keepon & KEEP_SENDBITS) == KEEP_SEND)
-    fd_write = conn->writesockfd;
-  else
-    fd_write = CURL_SOCKET_BAD;
-
-  if(!select_res) /* Call for select()/poll() only, if read/write/error
-                     status is not known. */
-    select_res = Curl_socket_ready(fd_read, fd_write, 0);
-
-  if(select_res == CURL_CSELECT_ERR) {
-    failf(data, "select/poll returned error");
-    return CURLE_SEND_ERROR;
-  }
-
-  /* We go ahead and do a read if we have a readable socket or if
-     the stream was rewound (in which case we have data in a
-     buffer) */
-  if((k->keepon & KEEP_RECV) &&
-     ((select_res & CURL_CSELECT_IN) || conn->bits.stream_was_rewound)) {
-
-    result = readwrite_data(data, conn, k, &didwhat, done);
-    if(result || *done)
-      return result;
-  }
-
-  /* If we still have writing to do, we check if we have a writable socket. */
-  if((k->keepon & KEEP_SEND) && (select_res & CURL_CSELECT_OUT)) {
-    /* write */
-
-    result = readwrite_upload(data, conn, k, &didwhat);
-    if(result)
-      return result;
-  }
-
-  k->now = Curl_tvnow();
-  if(didwhat) {
-    /* Update read/write counters */
-    if(k->bytecountp)
-      *k->bytecountp = k->bytecount; /* read count */
-    if(k->writebytecountp)
-      *k->writebytecountp = k->writebytecount; /* write count */
-  }
-  else {
-    /* no read no write, this is a timeout? */
-    if(k->exp100 == EXP100_AWAITING_CONTINUE) {
-      /* This should allow some time for the header to arrive, but only a
-         very short time as otherwise it'll be too much wasted time too
-         often. */
-
-      /* Quoting RFC2616, section "8.2.3 Use of the 100 (Continue) Status":
-
-         Therefore, when a client sends this header field to an origin server
-         (possibly via a proxy) from which it has never seen a 100 (Continue)
-         status, the client SHOULD NOT wait for an indefinite period before
-         sending the request body.
-
-      */
-
-      long ms = Curl_tvdiff(k->now, k->start100);
-      if(ms > CURL_TIMEOUT_EXPECT_100) {
-        /* we've waited long enough, continue anyway */
-        k->exp100 = EXP100_SEND_DATA;
-        k->keepon |= KEEP_SEND;
-        infof(data, "Done waiting for 100-continue\n");
-      }
-    }
-  }
-
-  if(Curl_pgrsUpdate(conn))
-    result = CURLE_ABORTED_BY_CALLBACK;
-  else
-    result = Curl_speedcheck(data, k->now);
-  if(result)
-    return result;
-
-  if(k->keepon) {
-    if(data->set.timeout &&
-       (Curl_tvdiff(k->now, k->start) >= data->set.timeout)) {
-      if(k->size != -1) {
-        failf(data, "Operation timed out after %ld milliseconds with %"
-              FORMAT_OFF_T " out of %" FORMAT_OFF_T " bytes received",
-              Curl_tvdiff(k->now, k->start), k->bytecount, k->size);
-      } else {
-        failf(data, "Operation timed out after %ld milliseconds with %"
-              FORMAT_OFF_T " bytes received",
-              Curl_tvdiff(k->now, k->start), k->bytecount);
-      }
-      return CURLE_OPERATION_TIMEDOUT;
-    }
-  }
-  else {
-    /*
-     * The transfer has been performed. Just make some general checks before
-     * returning.
-     */
-
-    if(!(data->set.opt_no_body) && (k->size != -1) &&
-       (k->bytecount != k->size) &&
-#ifdef CURL_DO_LINEEND_CONV
-       /* Most FTP servers don't adjust their file SIZE response for CRLFs,
-          so we'll check to see if the discrepancy can be explained
-          by the number of CRLFs we've changed to LFs.
-       */
-       (k->bytecount != (k->size + data->state.crlf_conversions)) &&
-#endif /* CURL_DO_LINEEND_CONV */
-       !data->req.newurl) {
-      failf(data, "transfer closed with %" FORMAT_OFF_T
-            " bytes remaining to read",
-            k->size - k->bytecount);
-      return CURLE_PARTIAL_FILE;
-    }
-    else if(!(data->set.opt_no_body) &&
-            k->chunk &&
-            (conn->chunk.state != CHUNK_STOP)) {
-      /*
-       * In chunked mode, return an error if the connection is closed prior to
-       * the empty (terminiating) chunk is read.
-       *
-       * The condition above used to check for
-       * conn->proto.http->chunk.datasize != 0 which is true after reading
-       * *any* chunk, not just the empty chunk.
-       *
-       */
-      failf(data, "transfer closed with outstanding read data remaining");
-      return CURLE_PARTIAL_FILE;
-    }
-    if(Curl_pgrsUpdate(conn))
-      return CURLE_ABORTED_BY_CALLBACK;
-  }
-
-  /* Now update the "done" boolean we return */
-  *done = (bool)(0 == (k->keepon&(KEEP_RECV|KEEP_SEND|
-                                  KEEP_RECV_PAUSE|KEEP_SEND_PAUSE)));
-
-  return CURLE_OK;
-}
-
-/*
- * Curl_single_getsock() gets called by the multi interface code when the app
- * has requested to get the sockets for the current connection. This function
- * will then be called once for every connection that the multi interface
- * keeps track of. This function will only be called for connections that are
- * in the proper state to have this information available.
- */
-int Curl_single_getsock(const struct connectdata *conn,
-                        curl_socket_t *sock, /* points to numsocks number
-                                                of sockets */
-                        int numsocks)
-{
-  const struct SessionHandle *data = conn->data;
-  int bitmap = GETSOCK_BLANK;
-  unsigned sockindex = 0;
-
-  if(conn->handler->perform_getsock)
-    return conn->handler->perform_getsock(conn, sock, numsocks);
-
-  if(numsocks < 2)
-    /* simple check but we might need two slots */
-    return GETSOCK_BLANK;
-
-  /* don't include HOLD and PAUSE connections */
-  if((data->req.keepon & KEEP_RECVBITS) == KEEP_RECV) {
-
-    DEBUGASSERT(conn->sockfd != CURL_SOCKET_BAD);
-
-    bitmap |= GETSOCK_READSOCK(sockindex);
-    sock[sockindex] = conn->sockfd;
-  }
-
-  /* don't include HOLD and PAUSE connections */
-  if((data->req.keepon & KEEP_SENDBITS) == KEEP_SEND) {
-
-    if((conn->sockfd != conn->writesockfd) ||
-       !(data->req.keepon & KEEP_RECV)) {
-      /* only if they are not the same socket or we didn't have a readable
-         one, we increase index */
-      if(data->req.keepon & KEEP_RECV)
-        sockindex++; /* increase index if we need two entries */
-
-      DEBUGASSERT(conn->writesockfd != CURL_SOCKET_BAD);
-
-      sock[sockindex] = conn->writesockfd;
-    }
-
-    bitmap |= GETSOCK_WRITESOCK(sockindex);
-  }
-
-  return bitmap;
-}
-
-/*
- * Determine optimum sleep time based on configured rate, current rate,
- * and packet size.
- * Returns value in mili-seconds.
- *
- * The basic idea is to adjust the desired rate up/down in this method
- * based on whether we are running too slow or too fast.  Then, calculate
- * how many miliseconds to wait for the next packet to achieve this new
- * rate.
- */
-long Curl_sleep_time(curl_off_t rate_bps, curl_off_t cur_rate_bps,
-                             int pkt_size)
-{
-  curl_off_t min_sleep = 0;
-  curl_off_t rv = 0;
-
-  if (rate_bps == 0)
-    return 0;
-
-  /* If running faster than about .1% of the desired speed, slow
-   * us down a bit.  Use shift instead of division as the 0.1%
-   * cutoff is arbitrary anyway.
-   */
-  if (cur_rate_bps > (rate_bps + (rate_bps >> 10))) {
-    /* running too fast, decrease target rate by 1/64th of rate */
-    rate_bps -= rate_bps >> 6;
-    min_sleep = 1;
-  }
-  else if (cur_rate_bps < (rate_bps - (rate_bps >> 10))) {
-    /* running too slow, increase target rate by 1/64th of rate */
-    rate_bps += rate_bps >> 6;
-  }
-
-  /* Determine number of miliseconds to wait until we do
-   * the next packet at the adjusted rate.  We should wait
-   * longer when using larger packets, for instance.
-   */
-  rv = ((curl_off_t)((pkt_size * 8) * 1000) / rate_bps);
-
-  /* Catch rounding errors and always slow down at least 1ms if
-   * we are running too fast.
-   */
-  if (rv < min_sleep)
-    rv = min_sleep;
-
-  /* Bound value to fit in 'long' on 32-bit platform.  That's
-   * plenty long enough anyway!
-   */
-  if(rv > 0x7fffffff)
-    rv = 0x7fffffff;
-  
-  return (long)rv;
-}
-
-
-/*
- * Transfer()
- *
- * This function is what performs the actual transfer. It is capable of doing
- * both ways simultaneously.  The transfer must already have been setup by a
- * call to Curl_setup_transfer().
- *
- * Note that headers are created in a preallocated buffer of a default size.
- * That buffer can be enlarged on demand, but it is never shrunken again.
- *
- */
-
-static CURLcode
-Transfer(struct connectdata *conn)
-{
-  CURLcode result;
-  struct SessionHandle *data = conn->data;
-  struct SingleRequest *k = &data->req;
-  bool done=FALSE;
-  bool first=TRUE;
-  int timeout_ms;
-  int buffersize;
-  int totmp;
-
-  if((conn->sockfd == CURL_SOCKET_BAD) &&
-     (conn->writesockfd == CURL_SOCKET_BAD))
-    /* nothing to read, nothing to write, we're already OK! */
-    return CURLE_OK;
-
-  /* we want header and/or body, if neither then don't do this! */
-  if(!k->getheader && data->set.opt_no_body)
-    return CURLE_OK;
-
-  while(!done) {
-    curl_socket_t fd_read = conn->sockfd;
-    curl_socket_t fd_write = conn->writesockfd;
-    int keepon = k->keepon;
-    timeout_ms = 1000;
-
-    if(conn->waitfor) {
-      /* if waitfor is set, get the RECV and SEND bits from that but keep the
-         other bits */
-      keepon &= ~ (KEEP_RECV|KEEP_SEND);
-      keepon |= conn->waitfor & (KEEP_RECV|KEEP_SEND);
-    }
-
-    /* limit-rate logic: if speed exceeds threshold, then do not include fd in
-       select set. The current speed is recalculated in each Curl_readwrite()
-       call */
-    if((keepon & KEEP_SEND) &&
-        (!data->set.max_send_speed ||
-         (data->progress.ulspeed < data->set.max_send_speed) )) {
-      k->keepon &= ~KEEP_SEND_HOLD;
-    }
-    else {
-      if (data->set.upload && data->set.max_send_speed &&
-          (data->progress.ulspeed > data->set.max_send_speed) ) {
-        /* calculate upload rate-limitation timeout. */
-        buffersize = (int)(data->set.buffer_size ?
-                           data->set.buffer_size : BUFSIZE);
-        totmp = (int)Curl_sleep_time(data->set.max_send_speed,
-                                     data->progress.ulspeed, buffersize);
-        if (totmp < timeout_ms)
-          timeout_ms = totmp;
-      }
-      fd_write = CURL_SOCKET_BAD;
-      if(keepon & KEEP_SEND)
-        k->keepon |= KEEP_SEND_HOLD; /* hold it */
-    }
-
-    if((keepon & KEEP_RECV) &&
-        (!data->set.max_recv_speed ||
-         (data->progress.dlspeed < data->set.max_recv_speed)) ) {
-      k->keepon &= ~KEEP_RECV_HOLD;
-    }
-    else {
-      if ((!data->set.upload) && data->set.max_recv_speed &&
-          (data->progress.dlspeed > data->set.max_recv_speed)) {
-        /* Calculate download rate-limitation timeout. */
-        buffersize = (int)(data->set.buffer_size ?
-                           data->set.buffer_size : BUFSIZE);
-        totmp = (int)Curl_sleep_time(data->set.max_recv_speed,
-                                     data->progress.dlspeed, buffersize);
-        if (totmp < timeout_ms)
-          timeout_ms = totmp;
-      }
-      fd_read = CURL_SOCKET_BAD;
-      if(keepon & KEEP_RECV)
-        k->keepon |= KEEP_RECV_HOLD; /* hold it */
-    }
-
-    /* pause logic. Don't check descriptors for paused connections */
-    if(k->keepon & KEEP_RECV_PAUSE)
-      fd_read = CURL_SOCKET_BAD;
-    if(k->keepon & KEEP_SEND_PAUSE)
-      fd_write = CURL_SOCKET_BAD;
-
-    /* The *_HOLD and *_PAUSE logic is necessary since even though there might
-       be no traffic during the select interval, we still call
-       Curl_readwrite() for the timeout case and if we limit transfer speed we
-       must make sure that this function doesn't transfer anything while in
-       HOLD status.
-
-       The no timeout for the first round is for the protocols for which data
-       has already been slurped off the socket and thus waiting for action
-       won't work since it'll wait even though there is already data present
-       to work with. */
-    if(first &&
-       ((fd_read != CURL_SOCKET_BAD) || (fd_write != CURL_SOCKET_BAD)))
-      /* if this is the first lap and one of the file descriptors is fine
-         to work with, skip the timeout */
-      timeout_ms = 0;
-    else {
-      if(data->set.timeout) {
-        totmp = (int)(data->set.timeout - Curl_tvdiff(k->now, k->start));
-        if(totmp < 0)
-          return CURLE_OPERATION_TIMEDOUT;
-      }
-      else
-        totmp = 1000;
-
-      if (totmp < timeout_ms)
-        timeout_ms = totmp;
-    }
-
-    switch (Curl_socket_ready(fd_read, fd_write, timeout_ms)) {
-    case -1: /* select() error, stop reading */
-#ifdef EINTR
-      /* The EINTR is not serious, and it seems you might get this more
-         often when using the lib in a multi-threaded environment! */
-      if(SOCKERRNO == EINTR)
-        continue;
-#endif
-      return CURLE_RECV_ERROR;  /* indicate a network problem */
-    case 0:  /* timeout */
-    default: /* readable descriptors */
-
-      result = Curl_readwrite(conn, &done);
-      /* "done" signals to us if the transfer(s) are ready */
-      break;
-    }
-    if(result)
-      return result;
-
-    first = FALSE; /* not the first lap anymore */
-  }
-
-  return CURLE_OK;
-}
-
-/*
- * Curl_pretransfer() is called immediately before a transfer starts.
- */
-CURLcode Curl_pretransfer(struct SessionHandle *data)
-{
-  CURLcode res;
-  if(!data->change.url) {
-    /* we can't do anything without URL */
-    failf(data, "No URL set!");
-    return CURLE_URL_MALFORMAT;
-  }
-
-  /* Init the SSL session ID cache here. We do it here since we want to do it
-     after the *_setopt() calls (that could change the size of the cache) but
-     before any transfer takes place. */
-  res = Curl_ssl_initsessions(data, data->set.ssl.numsessions);
-  if(res)
-    return res;
-
-  data->set.followlocation=0; /* reset the location-follow counter */
-  data->state.this_is_a_follow = FALSE; /* reset this */
-  data->state.errorbuf = FALSE; /* no error has occurred */
-  data->state.httpversion = 0; /* don't assume any particular server version */
-
-  data->state.ssl_connect_retry = FALSE;
-
-  data->state.authproblem = FALSE;
-  data->state.authhost.want = data->set.httpauth;
-  data->state.authproxy.want = data->set.proxyauth;
-  Curl_safefree(data->info.wouldredirect);
-  data->info.wouldredirect = NULL;
-
-  /* If there is a list of cookie files to read, do it now! */
-  if(data->change.cookielist) {
-    Curl_cookie_loadfiles(data);
-  }
-
- /* Allow data->set.use_port to set which port to use. This needs to be
-  * disabled for example when we follow Location: headers to URLs using
-  * different ports! */
-  data->state.allow_port = TRUE;
-
-#if defined(HAVE_SIGNAL) && defined(SIGPIPE) && !defined(HAVE_MSG_NOSIGNAL)
-  /*************************************************************
-   * Tell signal handler to ignore SIGPIPE
-   *************************************************************/
-  if(!data->set.no_signal)
-    data->state.prev_signal = signal(SIGPIPE, SIG_IGN);
-#endif
-
-  Curl_initinfo(data); /* reset session-specific information "variables" */
-  Curl_pgrsStartNow(data);
-
-  return CURLE_OK;
-}
-
-/*
- * Curl_posttransfer() is called immediately after a transfer ends
- */
-CURLcode Curl_posttransfer(struct SessionHandle *data)
-{
-#if defined(HAVE_SIGNAL) && defined(SIGPIPE) && !defined(HAVE_MSG_NOSIGNAL)
-  /* restore the signal handler for SIGPIPE before we get back */
-  if(!data->set.no_signal)
-    signal(SIGPIPE, data->state.prev_signal);
-#else
-  (void)data; /* unused parameter */
-#endif
-
-  if(!(data->progress.flags & PGRS_HIDE) &&
-     !data->progress.callback)
-    /* only output if we don't use a progress callback and we're not hidden */
-    fprintf(data->set.err, "\n");
-
-  return CURLE_OK;
-}
-
-#ifndef CURL_DISABLE_HTTP
-/*
- * strlen_url() returns the length of the given URL if the spaces within the
- * URL were properly URL encoded.
- */
-static size_t strlen_url(const char *url)
-{
-  const char *ptr;
-  size_t newlen=0;
-  bool left=TRUE; /* left side of the ? */
-
-  for(ptr=url; *ptr; ptr++) {
-    switch(*ptr) {
-    case '?':
-      left=FALSE;
-      /* fall through */
-    default:
-      newlen++;
-      break;
-    case ' ':
-      if(left)
-        newlen+=3;
-      else
-        newlen++;
-      break;
-    }
-  }
-  return newlen;
-}
-
-/* strcpy_url() copies a url to a output buffer and URL-encodes the spaces in
- * the source URL accordingly.
- */
-static void strcpy_url(char *output, const char *url)
-{
-  /* we must add this with whitespace-replacing */
-  bool left=TRUE;
-  const char *iptr;
-  char *optr = output;
-  for(iptr = url;    /* read from here */
-      *iptr;         /* until zero byte */
-      iptr++) {
-    switch(*iptr) {
-    case '?':
-      left=FALSE;
-      /* fall through */
-    default:
-      *optr++=*iptr;
-      break;
-    case ' ':
-      if(left) {
-        *optr++='%'; /* add a '%' */
-        *optr++='2'; /* add a '2' */
-        *optr++='0'; /* add a '0' */
-      }
-      else
-        *optr++='+'; /* add a '+' here */
-      break;
-    }
-  }
-  *optr=0; /* zero terminate output buffer */
-
-}
-
-/*
- * Returns true if the given URL is absolute (as opposed to relative)
- */
-static bool is_absolute_url(const char *url)
-{
-  char prot[16]; /* URL protocol string storage */
-  char letter;   /* used for a silly sscanf */
-
-  return (bool)(2 == sscanf(url, "%15[^?&/:]://%c", prot, &letter));
-}
-
-/*
- * Concatenate a relative URL to a base URL making it absolute.
- * URL-encodes any spaces.
- * The returned pointer must be freed by the caller unless NULL
- * (returns NULL on out of memory).
- */
-static char *concat_url(const char *base, const char *relurl)
-{
-  /***
-   TRY to append this new path to the old URL
-   to the right of the host part. Oh crap, this is doomed to cause
-   problems in the future...
-  */
-  char *newest;
-  char *protsep;
-  char *pathsep;
-  size_t newlen;
-
-  const char *useurl = relurl;
-  size_t urllen;
-
-  /* we must make our own copy of the URL to play with, as it may
-     point to read-only data */
-  char *url_clone=strdup(base);
-
-  if(!url_clone)
-    return NULL; /* skip out of this NOW */
-
-  /* protsep points to the start of the host name */
-  protsep=strstr(url_clone, "//");
-  if(!protsep)
-    protsep=url_clone;
-  else
-    protsep+=2; /* pass the slashes */
-
-  if('/' != relurl[0]) {
-    int level=0;
-
-    /* First we need to find out if there's a ?-letter in the URL,
-       and cut it and the right-side of that off */
-    pathsep = strchr(protsep, '?');
-    if(pathsep)
-      *pathsep=0;
-
-    /* we have a relative path to append to the last slash if there's one
-       available, or if the new URL is just a query string (starts with a
-       '?')  we append the new one at the end of the entire currently worked
-       out URL */
-    if(useurl[0] != '?') {
-      pathsep = strrchr(protsep, '/');
-      if(pathsep)
-        *pathsep=0;
-    }
-
-    /* Check if there's any slash after the host name, and if so, remember
-       that position instead */
-    pathsep = strchr(protsep, '/');
-    if(pathsep)
-      protsep = pathsep+1;
-    else
-      protsep = NULL;
-
-    /* now deal with one "./" or any amount of "../" in the newurl
-       and act accordingly */
-
-    if((useurl[0] == '.') && (useurl[1] == '/'))
-      useurl+=2; /* just skip the "./" */
-
-    while((useurl[0] == '.') &&
-          (useurl[1] == '.') &&
-          (useurl[2] == '/')) {
-      level++;
-      useurl+=3; /* pass the "../" */
-    }
-
-    if(protsep) {
-      while(level--) {
-        /* cut off one more level from the right of the original URL */
-        pathsep = strrchr(protsep, '/');
-        if(pathsep)
-          *pathsep=0;
-        else {
-          *protsep=0;
-          break;
-        }
-      }
-    }
-  }
-  else {
-    /* We got a new absolute path for this server, cut off from the
-       first slash */
-    pathsep = strchr(protsep, '/');
-    if(pathsep) {
-      /* When people use badly formatted URLs, such as
-         "http://www.url.com?dir=/home/daniel" we must not use the first
-         slash, if there's a ?-letter before it! */
-      char *sep = strchr(protsep, '?');
-      if(sep && (sep < pathsep))
-        pathsep = sep;
-      *pathsep=0;
-    }
-    else {
-      /* There was no slash. Now, since we might be operating on a badly
-         formatted URL, such as "http://www.url.com?id=2380" which doesn't
-         use a slash separator as it is supposed to, we need to check for a
-         ?-letter as well! */
-      pathsep = strchr(protsep, '?');
-      if(pathsep)
-        *pathsep=0;
-    }
-  }
-
-  /* If the new part contains a space, this is a mighty stupid redirect
-     but we still make an effort to do "right". To the left of a '?'
-     letter we replace each space with %20 while it is replaced with '+'
-     on the right side of the '?' letter.
-  */
-  newlen = strlen_url(useurl);
-
-  urllen = strlen(url_clone);
-
-  newest = malloc( urllen + 1 + /* possible slash */
-                         newlen + 1 /* zero byte */);
-
-  if(!newest) {
-    free(url_clone); /* don't leak this */
-    return NULL;
-  }
-
-  /* copy over the root url part */
-  memcpy(newest, url_clone, urllen);
-
-  /* check if we need to append a slash */
-  if(('/' == useurl[0]) || (protsep && !*protsep) || ('?' == useurl[0]))
-    ;
-  else
-    newest[urllen++]='/';
-
-  /* then append the new piece on the right side */
-  strcpy_url(&newest[urllen], useurl);
-
-  free(url_clone);
-
-  return newest;
-}
-#endif /* CURL_DISABLE_HTTP */
-
-/*
- * Curl_follow() handles the URL redirect magic. Pass in the 'newurl' string
- * as given by the remote server and set up the new URL to request.
- */
-CURLcode Curl_follow(struct SessionHandle *data,
-                     char *newurl, /* this 'newurl' is the Location: string,
-                                      and it must be malloc()ed before passed
-                                      here */
-                     followtype type) /* see transfer.h */
-{
-#ifdef CURL_DISABLE_HTTP
-  (void)data;
-  (void)newurl;
-  (void)type;
-  /* Location: following will not happen when HTTP is disabled */
-  return CURLE_TOO_MANY_REDIRECTS;
-#else
-
-  /* Location: redirect */
-  bool disallowport = FALSE;
-
-  if(type == FOLLOW_REDIR) {
-    if((data->set.maxredirs != -1) &&
-        (data->set.followlocation >= data->set.maxredirs)) {
-      failf(data,"Maximum (%ld) redirects followed", data->set.maxredirs);
-      return CURLE_TOO_MANY_REDIRECTS;
-    }
-
-    /* mark the next request as a followed location: */
-    data->state.this_is_a_follow = TRUE;
-
-    data->set.followlocation++; /* count location-followers */
-
-    if(data->set.http_auto_referer) {
-      /* We are asked to automatically set the previous URL as the referer
-         when we get the next URL. We pick the ->url field, which may or may
-         not be 100% correct */
-
-      if(data->change.referer_alloc)
-        /* If we already have an allocated referer, free this first */
-        free(data->change.referer);
-
-      data->change.referer = strdup(data->change.url);
-      if (!data->change.referer) {
-        data->change.referer_alloc = FALSE;
-        return CURLE_OUT_OF_MEMORY;
-      }
-      data->change.referer_alloc = TRUE; /* yes, free this later */
-    }
-  }
-
-  if(!is_absolute_url(newurl))  {
-    /***
-     *DANG* this is an RFC 2068 violation. The URL is supposed
-     to be absolute and this doesn't seem to be that!
-     */
-    char *absolute = concat_url(data->change.url, newurl);
-    if (!absolute)
-      return CURLE_OUT_OF_MEMORY;
-    free(newurl);
-    newurl = absolute;
-  }
-  else {
-    /* This is an absolute URL, don't allow the custom port number */
-    disallowport = TRUE;
-
-    if(strchr(newurl, ' ')) {
-      /* This new URL contains at least one space, this is a mighty stupid
-         redirect but we still make an effort to do "right". */
-      char *newest;
-      size_t newlen = strlen_url(newurl);
-
-      newest = malloc(newlen+1); /* get memory for this */
-      if (!newest)
-        return CURLE_OUT_OF_MEMORY;
-      strcpy_url(newest, newurl); /* create a space-free URL */
-
-      free(newurl); /* that was no good */
-      newurl = newest; /* use this instead now */
-    }
-
-  }
-
-  if(type == FOLLOW_FAKE) {
-    /* we're only figuring out the new url if we would've followed locations
-       but now we're done so we can get out! */
-    data->info.wouldredirect = newurl;
-    return CURLE_OK;
-  }
-
-  if(disallowport)
-    data->state.allow_port = FALSE;
-
-  if(data->change.url_alloc)
-    free(data->change.url);
-  else
-    data->change.url_alloc = TRUE; /* the URL is allocated */
-
-  data->change.url = newurl;
-  newurl = NULL; /* don't free! */
-
-  infof(data, "Issue another request to this URL: '%s'\n", data->change.url);
-
-  /*
-   * We get here when the HTTP code is 300-399 (and 401). We need to perform
-   * differently based on exactly what return code there was.
-   *
-   * News from 7.10.6: we can also get here on a 401 or 407, in case we act on
-   * a HTTP (proxy-) authentication scheme other than Basic.
-   */
-  switch(data->info.httpcode) {
-    /* 401 - Act on a WWW-Authenticate, we keep on moving and do the
-       Authorization: XXXX header in the HTTP request code snippet */
-    /* 407 - Act on a Proxy-Authenticate, we keep on moving and do the
-       Proxy-Authorization: XXXX header in the HTTP request code snippet */
-    /* 300 - Multiple Choices */
-    /* 306 - Not used */
-    /* 307 - Temporary Redirect */
-  default:  /* for all above (and the unknown ones) */
-    /* Some codes are explicitly mentioned since I've checked RFC2616 and they
-     * seem to be OK to POST to.
-     */
-    break;
-  case 301: /* Moved Permanently */
-    /* (quote from RFC2616, section 10.3.2):
-     *
-     * Note: When automatically redirecting a POST request after receiving a
-     * 301 status code, some existing HTTP/1.0 user agents will erroneously
-     * change it into a GET request.
-     *
-     * ----
-     *
-     * Warning: Because most of importants user agents do this obvious RFC2616
-     * violation, many webservers expect this misbehavior. So these servers
-     * often answers to a POST request with an error page.  To be sure that
-     * libcurl gets the page that most user agents would get, libcurl has to
-     * force GET.
-     *
-     * This behaviour can be overridden with CURLOPT_POSTREDIR.
-     */
-    if( (data->set.httpreq == HTTPREQ_POST
-         || data->set.httpreq == HTTPREQ_POST_FORM)
-        && !data->set.post301) {
-      infof(data,
-            "Violate RFC 2616/10.3.2 and switch from POST to GET\n");
-      data->set.httpreq = HTTPREQ_GET;
-    }
-    break;
-  case 302: /* Found */
-    /* (From 10.3.3)
-
-    Note: RFC 1945 and RFC 2068 specify that the client is not allowed
-    to change the method on the redirected request.  However, most
-    existing user agent implementations treat 302 as if it were a 303
-    response, performing a GET on the Location field-value regardless
-    of the original request method. The status codes 303 and 307 have
-    been added for servers that wish to make unambiguously clear which
-    kind of reaction is expected of the client.
-
-    (From 10.3.4)
-
-    Note: Many pre-HTTP/1.1 user agents do not understand the 303
-    status. When interoperability with such clients is a concern, the
-    302 status code may be used instead, since most user agents react
-    to a 302 response as described here for 303.
-
-    This behaviour can be overriden with CURLOPT_POSTREDIR
-    */
-    if( (data->set.httpreq == HTTPREQ_POST
-         || data->set.httpreq == HTTPREQ_POST_FORM)
-        && !data->set.post302) {
-      infof(data,
-            "Violate RFC 2616/10.3.3 and switch from POST to GET\n");
-      data->set.httpreq = HTTPREQ_GET;
-    }
-    break;
-
-  case 303: /* See Other */
-    /* Disable both types of POSTs, since doing a second POST when
-     * following isn't what anyone would want! */
-    if(data->set.httpreq != HTTPREQ_GET) {
-      data->set.httpreq = HTTPREQ_GET; /* enforce GET request */
-      infof(data, "Disables POST, goes with %s\n",
-            data->set.opt_no_body?"HEAD":"GET");
-    }
-    break;
-  case 304: /* Not Modified */
-    /* 304 means we did a conditional request and it was "Not modified".
-     * We shouldn't get any Location: header in this response!
-     */
-    break;
-  case 305: /* Use Proxy */
-    /* (quote from RFC2616, section 10.3.6):
-     * "The requested resource MUST be accessed through the proxy given
-     * by the Location field. The Location field gives the URI of the
-     * proxy.  The recipient is expected to repeat this single request
-     * via the proxy. 305 responses MUST only be generated by origin
-     * servers."
-     */
-    break;
-  }
-  Curl_pgrsTime(data, TIMER_REDIRECT);
-  Curl_pgrsResetTimes(data);
-
-  return CURLE_OK;
-#endif /* CURL_DISABLE_HTTP */
-}
-
-static CURLcode
-connect_host(struct SessionHandle *data,
-             struct connectdata **conn)
-{
-  CURLcode res = CURLE_OK;
-
-  bool async;
-  bool protocol_done=TRUE; /* will be TRUE always since this is only used
-                                within the easy interface */
-  Curl_pgrsTime(data, TIMER_STARTSINGLE);
-  res = Curl_connect(data, conn, &async, &protocol_done);
-
-  if((CURLE_OK == res) && async) {
-    /* Now, if async is TRUE here, we need to wait for the name
-       to resolve */
-    res = Curl_wait_for_resolv(*conn, NULL);
-    if(CURLE_OK == res)
-      /* Resolved, continue with the connection */
-      res = Curl_async_resolved(*conn, &protocol_done);
-    else
-      /* if we can't resolve, we kill this "connection" now */
-      (void)Curl_disconnect(*conn);
-  }
-
-  return res;
-}
-
-CURLcode
-Curl_reconnect_request(struct connectdata **connp)
-{
-  CURLcode result = CURLE_OK;
-  struct connectdata *conn = *connp;
-  struct SessionHandle *data = conn->data;
-
-  /* This was a re-use of a connection and we got a write error in the
-   * DO-phase. Then we DISCONNECT this connection and have another attempt to
-   * CONNECT and then DO again! The retry cannot possibly find another
-   * connection to re-use, since we only keep one possible connection for
-   * each.  */
-
-  infof(data, "Re-used connection seems dead, get a new one\n");
-
-  conn->bits.close = TRUE; /* enforce close of this connection */
-  result = Curl_done(&conn, result, FALSE); /* we are so done with this */
-
-  /* conn may no longer be a good pointer */
-
-  /*
-   * According to bug report #1330310. We need to check for CURLE_SEND_ERROR
-   * here as well. I figure this could happen when the request failed on a FTP
-   * connection and thus Curl_done() itself tried to use the connection
-   * (again). Slight Lack of feedback in the report, but I don't think this
-   * extra check can do much harm.
-   */
-  if((CURLE_OK == result) || (CURLE_SEND_ERROR == result)) {
-    bool async;
-    bool protocol_done = TRUE;
-
-    /* Now, redo the connect and get a new connection */
-    result = Curl_connect(data, connp, &async, &protocol_done);
-    if(CURLE_OK == result) {
-      /* We have connected or sent away a name resolve query fine */
-
-      conn = *connp; /* setup conn to again point to something nice */
-      if(async) {
-        /* Now, if async is TRUE here, we need to wait for the name
-           to resolve */
-        result = Curl_wait_for_resolv(conn, NULL);
-        if(result)
-          return result;
-
-        /* Resolved, continue with the connection */
-        result = Curl_async_resolved(conn, &protocol_done);
-        if(result)
-          return result;
-      }
-    }
-  }
-
-  return result;
-}
-
-/* Returns CURLE_OK *and* sets '*url' if a request retry is wanted.
-
-   NOTE: that the *url is malloc()ed. */
-CURLcode Curl_retry_request(struct connectdata *conn,
-                            char **url)
-{
-  struct SessionHandle *data = conn->data;
-
-  *url = NULL;
-
-  /* if we're talking upload, we can't do the checks below, unless the protocol
-     is HTTP as when uploading over HTTP we will still get a response */
-  if(data->set.upload && !(conn->protocol&(PROT_HTTP|PROT_RTSP)))
-    return CURLE_OK;
-
-  if(/* workaround for broken TLS servers */ data->state.ssl_connect_retry ||
-      ((data->req.bytecount +
-        data->req.headerbytecount == 0) &&
-        conn->bits.reuse &&
-        !data->set.opt_no_body &&
-        data->set.rtspreq != RTSPREQ_RECEIVE)) {
-    /* We got no data, we attempted to re-use a connection and yet we want a
-       "body". This might happen if the connection was left alive when we were
-       done using it before, but that was closed when we wanted to read from
-       it again. Bad luck. Retry the same request on a fresh connect! */
-    infof(conn->data, "Connection died, retrying a fresh connect\n");
-    *url = strdup(conn->data->change.url);
-    if(!*url)
-      return CURLE_OUT_OF_MEMORY;
-
-    conn->bits.close = TRUE; /* close this connection */
-    conn->bits.retry = TRUE; /* mark this as a connection we're about
-                                to retry. Marking it this way should
-                                prevent i.e HTTP transfers to return
-                                error just because nothing has been
-                                transfered! */
-  }
-  return CURLE_OK;
-}
-
-/*
- * Curl_perform() is the internal high-level function that gets called by the
- * external curl_easy_perform() function. It inits, performs and cleans up a
- * single file transfer.
- */
-CURLcode Curl_perform(struct SessionHandle *data)
-{
-  CURLcode res;
-  CURLcode res2;
-  struct connectdata *conn=NULL;
-  char *newurl = NULL; /* possibly a new URL to follow to! */
-  followtype follow = FOLLOW_NONE;
-
-  data->state.used_interface = Curl_if_easy;
-
-  res = Curl_pretransfer(data);
-  if(res)
-    return res;
-
-  /*
-   * It is important that there is NO 'return' from this function at any other
-   * place than falling down to the end of the function! This is because we
-   * have cleanup stuff that must be done before we get back, and that is only
-   * performed after this do-while loop.
-   */
-
-  for(;;) {
-    res = connect_host(data, &conn);   /* primary connection */
-
-    if(res == CURLE_OK) {
-      bool do_done;
-      if(data->set.connect_only) {
-        /* keep connection open for application to use the socket */
-        conn->bits.close = FALSE;
-        res = Curl_done(&conn, CURLE_OK, FALSE);
-        break;
-      }
-      res = Curl_do(&conn, &do_done);
-
-      if(res == CURLE_OK) {
-        res = Transfer(conn); /* now fetch that URL please */
-        if((res == CURLE_OK) || (res == CURLE_RECV_ERROR)) {
-          bool retry = FALSE;
-          CURLcode rc = Curl_retry_request(conn, &newurl);
-          if(rc)
-            res = rc;
-          else
-            retry = (bool)(newurl?TRUE:FALSE);
-
-          if(retry) {
-            res = CURLE_OK;
-            follow = FOLLOW_RETRY;
-            if (!newurl)
-              res = CURLE_OUT_OF_MEMORY;
-          }
-          else if (res == CURLE_OK) {
-            /*
-             * We must duplicate the new URL here as the connection data may
-             * be free()ed in the Curl_done() function. We prefer the newurl
-             * one since that's used for redirects or just further requests
-             * for retries or multi-stage HTTP auth methods etc.
-             */
-            if(data->req.newurl) {
-              follow = FOLLOW_REDIR;
-              newurl = strdup(data->req.newurl);
-              if (!newurl)
-                res = CURLE_OUT_OF_MEMORY;
-            }
-            else if(data->req.location) {
-              follow = FOLLOW_FAKE;
-              newurl = strdup(data->req.location);
-              if (!newurl)
-                res = CURLE_OUT_OF_MEMORY;
-            }
-          }
-
-          /* in the above cases where 'newurl' gets assigned, we have a fresh
-           * allocated memory pointed to */
-        }
-        if(res != CURLE_OK) {
-          /* The transfer phase returned error, we mark the connection to get
-           * closed to prevent being re-used. This is because we can't
-           * possibly know if the connection is in a good shape or not now. */
-          conn->bits.close = TRUE;
-
-          if(CURL_SOCKET_BAD != conn->sock[SECONDARYSOCKET]) {
-            /* if we failed anywhere, we must clean up the secondary socket if
-               it was used */
-            sclose(conn->sock[SECONDARYSOCKET]);
-            conn->sock[SECONDARYSOCKET] = CURL_SOCKET_BAD;
-          }
-        }
-
-        /* Always run Curl_done(), even if some of the previous calls
-           failed, but return the previous (original) error code */
-        res2 = Curl_done(&conn, res, FALSE);
-
-        if(CURLE_OK == res)
-          res = res2;
-      }
-      else if(conn)
-        /* Curl_do() failed, clean up left-overs in the done-call, but note
-           that at some cases the conn pointer is NULL when Curl_do() failed
-           and the connection cache is very small so only call Curl_done() if
-           conn is still "alive".
-        */
-        res2 = Curl_done(&conn, res, FALSE);
-
-      /*
-       * Important: 'conn' cannot be used here, since it may have been closed
-       * in 'Curl_done' or other functions.
-       */
-
-      if((res == CURLE_OK) && follow) {
-        res = Curl_follow(data, newurl, follow);
-        if(CURLE_OK == res) {
-          /* if things went fine, Curl_follow() freed or otherwise took
-             responsibility for the newurl pointer */
-          newurl = NULL;
-          if(follow >= FOLLOW_RETRY) {
-            follow = FOLLOW_NONE;
-            continue;
-          }
-          /* else we break out of the loop below */
-        }
-      }
-    }
-    break; /* it only reaches here when this shouldn't loop */
-
-  } /* loop if Location: */
-
-  if(newurl)
-    free(newurl);
-
-  if(res && !data->state.errorbuf) {
-    /*
-     * As an extra precaution: if no error string has been set and there was
-     * an error, use the strerror() string or if things are so bad that not
-     * even that is good, set a bad string that mentions the error code.
-     */
-    const char *str = curl_easy_strerror(res);
-    if(!str)
-      failf(data, "unspecified error %d", (int)res);
-    else
-      failf(data, "%s", str);
-  }
-
-  /* run post-transfer unconditionally, but don't clobber the return code if
-     we already have an error code recorder */
-  res2 = Curl_posttransfer(data);
-  if(!res && res2)
-    res = res2;
-
-  return res;
-}
-
-/*
- * Curl_setup_transfer() is called to setup some basic properties for the
- * upcoming transfer.
- */
-CURLcode
-Curl_setup_transfer(
-  struct connectdata *conn, /* connection data */
-  int sockindex,            /* socket index to read from or -1 */
-  curl_off_t size,          /* -1 if unknown at this point */
-  bool getheader,           /* TRUE if header parsing is wanted */
-  curl_off_t *bytecountp,   /* return number of bytes read or NULL */
-  int writesockindex,       /* socket index to write to, it may very well be
-                               the same we read from. -1 disables */
-  curl_off_t *writecountp   /* return number of bytes written or NULL */
-  )
-{
-  struct SessionHandle *data;
-  struct SingleRequest *k;
-
-  DEBUGASSERT(conn != NULL);
-
-  data = conn->data;
-  k = &data->req;
-
-  DEBUGASSERT((sockindex <= 1) && (sockindex >= -1));
-
-  /* now copy all input parameters */
-  conn->sockfd = sockindex == -1 ?
-      CURL_SOCKET_BAD : conn->sock[sockindex];
-  conn->writesockfd = writesockindex == -1 ?
-      CURL_SOCKET_BAD:conn->sock[writesockindex];
-  k->getheader = getheader;
-
-  k->size = size;
-  k->bytecountp = bytecountp;
-  k->writebytecountp = writecountp;
-
-  /* The code sequence below is placed in this function just because all
-     necessary input is not always known in do_complete() as this function may
-     be called after that */
-
-  if(!k->getheader) {
-    k->header = FALSE;
-    if(size > 0)
-      Curl_pgrsSetDownloadSize(data, size);
-  }
-  /* we want header and/or body, if neither then don't do this! */
-  if(k->getheader || !data->set.opt_no_body) {
-
-    if(conn->sockfd != CURL_SOCKET_BAD) {
-      k->keepon |= KEEP_RECV;
-    }
-
-    if(conn->writesockfd != CURL_SOCKET_BAD) {
-      /* HTTP 1.1 magic:
-
-         Even if we require a 100-return code before uploading data, we might
-         need to write data before that since the REQUEST may not have been
-         finished sent off just yet.
-
-         Thus, we must check if the request has been sent before we set the
-         state info where we wait for the 100-return code
-      */
-      if((data->state.expect100header) &&
-         (data->state.proto.http->sending == HTTPSEND_BODY)) {
-        /* wait with write until we either got 100-continue or a timeout */
-        k->exp100 = EXP100_AWAITING_CONTINUE;
-        k->start100 = k->start;
-      }
-      else {
-        if(data->state.expect100header)
-          /* when we've sent off the rest of the headers, we must await a
-             100-continue but first finish sending the request */
-          k->exp100 = EXP100_SENDING_REQUEST;
-
-        /* enable the write bit when we're not waiting for continue */
-        k->keepon |= KEEP_SEND;
-      }
-    } /* if(conn->writesockfd != CURL_SOCKET_BAD) */
-  } /* if(k->getheader || !data->set.opt_no_body) */
-
-  return CURLE_OK;
-}
diff --git a/src/other/curl/lib/transfer.h b/src/other/curl/lib/transfer.h
deleted file mode 100644
index 4c2bc9e..0000000
--- a/src/other/curl/lib/transfer.h
+++ /dev/null
@@ -1,67 +0,0 @@
-#ifndef __TRANSFER_H
-#define __TRANSFER_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-CURLcode Curl_perform(struct SessionHandle *data);
-CURLcode Curl_pretransfer(struct SessionHandle *data);
-CURLcode Curl_second_connect(struct connectdata *conn);
-CURLcode Curl_posttransfer(struct SessionHandle *data);
-
-typedef enum {
-  FOLLOW_NONE,  /* not used within the function, just a placeholder to
-                   allow initing to this */
-  FOLLOW_FAKE,  /* only records stuff, not actually following */
-  FOLLOW_RETRY, /* set if this is a request retry as opposed to a real
-                          redirect following */
-  FOLLOW_REDIR, /* a full true redirect */
-  FOLLOW_LAST   /* never used */
-} followtype;
-
-CURLcode Curl_follow(struct SessionHandle *data, char *newurl, followtype type);
-
-
-CURLcode Curl_readwrite(struct connectdata *conn, bool *done);
-int Curl_single_getsock(const struct connectdata *conn,
-                        curl_socket_t *socks,
-                        int numsocks);
-CURLcode Curl_readrewind(struct connectdata *conn);
-CURLcode Curl_fillreadbuffer(struct connectdata *conn, int bytes, int *nreadp);
-CURLcode Curl_reconnect_request(struct connectdata **connp);
-CURLcode Curl_retry_request(struct connectdata *conn, char **url);
-
-/* This sets up a forthcoming transfer */
-CURLcode
-Curl_setup_transfer (struct connectdata *data,
-               int sockindex,           /* socket index to read from or -1 */
-               curl_off_t size,         /* -1 if unknown at this point */
-               bool getheader,          /* TRUE if header parsing is wanted */
-               curl_off_t *bytecountp,  /* return number of bytes read */
-               int writesockindex,      /* socket index to write to, it may
-                                           very well be the same we read from.
-                                           -1 disables */
-               curl_off_t *writecountp /* return number of bytes written */
-);
-
-long Curl_sleep_time(curl_off_t rate_bps, curl_off_t cur_rate_bps,
-                     int pkt_size);
-
-#endif
diff --git a/src/other/curl/lib/url.c b/src/other/curl/lib/url.c
deleted file mode 100644
index 357f213..0000000
--- a/src/other/curl/lib/url.c
+++ /dev/null
@@ -1,5322 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* -- WIN32 approved -- */
-
-#include "setup.h"
-
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-#include <errno.h>
-
-#ifdef WIN32
-#include <time.h>
-#include <io.h>
-#else
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef HAVE_NET_IF_H
-#include <net/if.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#include <sys/ioctl.h>
-#endif
-
-#ifdef HAVE_SYS_PARAM_H
-#include <sys/param.h>
-#endif
-
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#endif
-
-#ifndef HAVE_SOCKET
-#error "We can't compile without socket() support!"
-#endif
-
-#endif  /* WIN32 */
-
-#ifdef HAVE_LIMITS_H
-#include <limits.h>
-#endif
-
-#ifdef USE_LIBIDN
-#include <idna.h>
-#include <tld.h>
-#include <stringprep.h>
-#ifdef HAVE_IDN_FREE_H
-#include <idn-free.h>
-#else
-void idn_free (void *ptr); /* prototype from idn-free.h, not provided by
-                              libidn 0.4.5's make install! */
-#endif
-#ifndef HAVE_IDN_FREE
-/* if idn_free() was not found in this version of libidn, use plain free()
-   instead */
-#define idn_free(x) (free)(x)
-#endif
-#endif  /* USE_LIBIDN */
-
-#include "urldata.h"
-#include "netrc.h"
-
-#include "formdata.h"
-#include "sslgen.h"
-#include "hostip.h"
-#include "transfer.h"
-#include "sendf.h"
-#include "progress.h"
-#include "cookie.h"
-#include "strequal.h"
-#include "strerror.h"
-#include "escape.h"
-#include "strtok.h"
-#include "share.h"
-#include "content_encoding.h"
-#include "http_digest.h"
-#include "http_negotiate.h"
-#include "select.h"
-#include "multiif.h"
-#include "easyif.h"
-#include "speedcheck.h"
-#include "rawstr.h"
-#include "warnless.h"
-
-/* And now for the protocols */
-#include "ftp.h"
-#include "dict.h"
-#include "telnet.h"
-#include "tftp.h"
-#include "http.h"
-#include "file.h"
-#include "curl_ldap.h"
-#include "ssh.h"
-#include "imap.h"
-#include "url.h"
-#include "connect.h"
-#include "inet_ntop.h"
-#include "http_ntlm.h"
-#include "socks.h"
-#include "rtsp.h"
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
-
-/* Local static prototypes */
-static long ConnectionKillOne(struct SessionHandle *data);
-static void conn_free(struct connectdata *conn);
-static void signalPipeClose(struct curl_llist *pipeline, bool pipe_broke);
-
-#ifdef CURL_DISABLE_VERBOSE_STRINGS
-#define verboseconnect(x)  do { } while (0)
-#endif
-
-
-/*
- * Protocol table.
- */
-
-static const struct Curl_handler * const protocols[] = {
-
-#ifndef CURL_DISABLE_HTTP
-  &Curl_handler_http,
-#endif
-
-#if defined(USE_SSL) && !defined(CURL_DISABLE_HTTP)
-  &Curl_handler_https,
-#endif
-
-#ifndef CURL_DISABLE_FTP
-  &Curl_handler_ftp,
-#endif
-
-#if defined(USE_SSL) && !defined(CURL_DISABLE_FTP)
-  &Curl_handler_ftps,
-#endif
-
-#ifndef CURL_DISABLE_TELNET
-  &Curl_handler_telnet,
-#endif
-
-#ifndef CURL_DISABLE_DICT
-  &Curl_handler_dict,
-#endif
-
-#ifndef CURL_DISABLE_LDAP
-  &Curl_handler_ldap,
-#endif
-
-#if !defined(CURL_DISABLE_LDAP) && defined(HAVE_LDAP_SSL)
-  &Curl_handler_ldaps,
-#endif
-
-#ifndef CURL_DISABLE_FILE
-  &Curl_handler_file,
-#endif
-
-#ifndef CURL_DISABLE_TFTP
-  &Curl_handler_tftp,
-#endif
-
-#ifdef USE_LIBSSH2
-  &Curl_handler_scp,
-  &Curl_handler_sftp,
-#endif
-
-#ifndef CURL_DISABLE_IMAP
-  &Curl_handler_imap,
-#ifdef USE_SSL
-  &Curl_handler_imaps,
-#endif
-#endif
-
-#ifndef CURL_DISABLE_POP3
-  &Curl_handler_pop3,
-#ifdef USE_SSL
-  &Curl_handler_pop3s,
-#endif
-#endif
-
-#ifndef CURL_DISABLE_SMTP
-  &Curl_handler_smtp,
-#ifdef USE_SSL
-  &Curl_handler_smtps,
-#endif
-#endif
-
-#ifndef CURL_DISABLE_RTSP
-  &Curl_handler_rtsp,
-#endif
-
-  (struct Curl_handler *) NULL
-};
-
-/*
- * Dummy handler for undefined protocol schemes.
- */
-
-static const struct Curl_handler Curl_handler_dummy = {
-  "<no protocol>",                      /* scheme */
-  ZERO_NULL,                            /* setup_connection */
-  ZERO_NULL,                            /* do_it */
-  ZERO_NULL,                            /* done */
-  ZERO_NULL,                            /* do_more */
-  ZERO_NULL,                            /* connect_it */
-  ZERO_NULL,                            /* connecting */
-  ZERO_NULL,                            /* doing */
-  ZERO_NULL,                            /* proto_getsock */
-  ZERO_NULL,                            /* doing_getsock */
-  ZERO_NULL,                            /* perform_getsock */
-  ZERO_NULL,                            /* disconnect */
-  0,                                    /* defport */
-  0                                     /* protocol */
-};
-
-void Curl_safefree(void *ptr)
-{
-  if(ptr)
-    free(ptr);
-}
-
-static void close_connections(struct SessionHandle *data)
-{
-  /* Loop through all open connections and kill them one by one */
-  long i;
-  do {
-    i = ConnectionKillOne(data);
-  } while(i != -1L);
-}
-
-void Curl_freeset(struct SessionHandle * data)
-{
-  /* Free all dynamic strings stored in the data->set substructure. */
-  enum dupstring i;
-  for(i=(enum dupstring)0; i < STRING_LAST; i++)
-    Curl_safefree(data->set.str[i]);
-}
-
-static CURLcode setstropt(char **charp, char * s)
-{
-  /* Release the previous storage at `charp' and replace by a dynamic storage
-     copy of `s'. Return CURLE_OK or CURLE_OUT_OF_MEMORY. */
-
-  if(*charp) {
-    free(*charp);
-    *charp = (char *) NULL;
-  }
-
-  if(s) {
-    s = strdup(s);
-
-    if(!s)
-      return CURLE_OUT_OF_MEMORY;
-
-    *charp = s;
-  }
-
-  return CURLE_OK;
-}
-
-static CURLcode setstropt_userpwd(char *option, char **user_storage,
-                                  char **pwd_storage)
-{
-  char* separator;
-  CURLcode result = CURLE_OK;
-
-  if(!option) {
-    /* we treat a NULL passed in as a hint to clear existing info */
-    Curl_safefree(*user_storage);
-    *user_storage = (char *) NULL;
-    Curl_safefree(*pwd_storage);
-    *pwd_storage = (char *) NULL;
-    return CURLE_OK;
-  }
-
-  separator = strchr(option, ':');
-  if (separator != NULL) {
-
-    /* store username part of option */
-    char * p;
-    size_t username_len = (size_t)(separator-option);
-    p = malloc(username_len+1);
-    if(!p)
-      result = CURLE_OUT_OF_MEMORY;
-    else {
-      memcpy(p, option, username_len);
-      p[username_len] = '\0';
-      Curl_safefree(*user_storage);
-      *user_storage = p;
-    }
-
-    /* store password part of option */
-    if (result == CURLE_OK) {
-      result = setstropt(pwd_storage, separator+1);
-    }
-  }
-  else {
-    result = setstropt(user_storage, option);
-  }
-  return result;
-}
-
-CURLcode Curl_dupset(struct SessionHandle * dst, struct SessionHandle * src)
-{
-  CURLcode r = CURLE_OK;
-  enum dupstring i;
-
-  /* Copy src->set into dst->set first, then deal with the strings
-     afterwards */
-  dst->set = src->set;
-
-  /* clear all string pointers first */
-  memset(dst->set.str, 0, STRING_LAST * sizeof(char *));
-
-  /* duplicate all strings */
-  for(i=(enum dupstring)0; i< STRING_LAST; i++) {
-    r = setstropt(&dst->set.str[i], src->set.str[i]);
-    if(r != CURLE_OK)
-      break;
-  }
-
-  /* If a failure occurred, freeing has to be performed externally. */
-  return r;
-}
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
-static void flush_cookies(struct SessionHandle *data, int cleanup)
-{
-  if(data->set.str[STRING_COOKIEJAR]) {
-    if(data->change.cookielist) {
-      /* If there is a list of cookie files to read, do it first so that
-         we have all the told files read before we write the new jar.
-         Curl_cookie_loadfiles() LOCKS and UNLOCKS the share itself! */
-      Curl_cookie_loadfiles(data);
-    }
-
-    Curl_share_lock(data, CURL_LOCK_DATA_COOKIE, CURL_LOCK_ACCESS_SINGLE);
-
-    /* if we have a destination file for all the cookies to get dumped to */
-    if(Curl_cookie_output(data->cookies, data->set.str[STRING_COOKIEJAR]))
-      infof(data, "WARNING: failed to save cookies in %s\n",
-            data->set.str[STRING_COOKIEJAR]);
-  }
-  else {
-    if(cleanup && data->change.cookielist)
-      /* since nothing is written, we can just free the list of cookie file
-         names */
-      curl_slist_free_all(data->change.cookielist); /* clean up list */
-    Curl_share_lock(data, CURL_LOCK_DATA_COOKIE, CURL_LOCK_ACCESS_SINGLE);
-  }
-
-  if(cleanup && (!data->share || (data->cookies != data->share->cookies))) {
-    Curl_cookie_cleanup(data->cookies);
-  }
-  Curl_share_unlock(data, CURL_LOCK_DATA_COOKIE);
-}
-#endif
-
-/*
- * This is the internal function curl_easy_cleanup() calls. This should
- * cleanup and free all resources associated with this sessionhandle.
- *
- * NOTE: if we ever add something that attempts to write to a socket or
- * similar here, we must ignore SIGPIPE first. It is currently only done
- * when curl_easy_perform() is invoked.
- */
-
-CURLcode Curl_close(struct SessionHandle *data)
-{
-  struct Curl_multi *m = data->multi;
-
-#ifdef DEBUGBUILD
-  /* only for debugging, scan through all connections and see if there's a
-     pipe reference still identifying this handle */
-
-  if(data->state.connc && data->state.connc->type == CONNCACHE_MULTI) {
-    struct conncache *c = data->state.connc;
-    long i;
-    struct curl_llist *pipeline;
-    struct curl_llist_element *curr;
-    struct connectdata *connptr;
-
-    for(i=0; i< c->num; i++) {
-      connptr = c->connects[i];
-      if(!connptr)
-        continue;
-
-      pipeline = connptr->send_pipe;
-      if(pipeline) {
-        for (curr = pipeline->head; curr; curr=curr->next) {
-          if(data == (struct SessionHandle *) curr->ptr) {
-            fprintf(stderr,
-                    "problem we %p are still in send pipe for %p done %d\n",
-                    data, connptr, (int)connptr->bits.done);
-          }
-        }
-      }
-      pipeline = connptr->recv_pipe;
-      if(pipeline) {
-        for (curr = pipeline->head; curr; curr=curr->next) {
-          if(data == (struct SessionHandle *) curr->ptr) {
-            fprintf(stderr,
-                    "problem we %p are still in recv pipe for %p done %d\n",
-                    data, connptr, (int)connptr->bits.done);
-          }
-        }
-      }
-      pipeline = connptr->done_pipe;
-      if(pipeline) {
-        for (curr = pipeline->head; curr; curr=curr->next) {
-          if(data == (struct SessionHandle *) curr->ptr) {
-            fprintf(stderr,
-                    "problem we %p are still in done pipe for %p done %d\n",
-                    data, connptr, (int)connptr->bits.done);
-          }
-        }
-      }
-      pipeline = connptr->pend_pipe;
-      if(pipeline) {
-        for (curr = pipeline->head; curr; curr=curr->next) {
-          if(data == (struct SessionHandle *) curr->ptr) {
-            fprintf(stderr,
-                    "problem we %p are still in pend pipe for %p done %d\n",
-                    data, connptr, (int)connptr->bits.done);
-          }
-        }
-      }
-    }
-  }
-#endif
-
-  if(m)
-    /* This handle is still part of a multi handle, take care of this first
-       and detach this handle from there. */
-    Curl_multi_rmeasy(data->multi, data);
-
-  data->magic = 0; /* force a clear AFTER the possibly enforced removal from
-                      the multi handle, since that function uses the magic
-                      field! */
-
-  if(data->state.connc) {
-
-    if(data->state.connc->type == CONNCACHE_PRIVATE) {
-      /* close all connections still alive that are in the private connection
-         cache, as we no longer have the pointer left to the shared one. */
-      close_connections(data);
-
-      /* free the connection cache if allocated privately */
-      Curl_rm_connc(data->state.connc);
-    }
-  }
-
-  if(data->state.shared_conn) {
-    /* marked to be used by a pending connection so we can't kill this handle
-       just yet */
-    data->state.closed = TRUE;
-    return CURLE_OK;
-  }
-
-  if(data->dns.hostcachetype == HCACHE_PRIVATE) {
-    Curl_hash_destroy(data->dns.hostcache);
-    data->dns.hostcachetype = HCACHE_NONE;
-    data->dns.hostcache = NULL;
-  }
-
-  if(data->state.rangestringalloc)
-    free(data->state.range);
-
-  /* Free the pathbuffer */
-  Curl_safefree(data->state.pathbuffer);
-  Curl_safefree(data->state.proto.generic);
-
-  /* Close down all open SSL info and sessions */
-  Curl_ssl_close_all(data);
-  Curl_safefree(data->state.first_host);
-  Curl_safefree(data->state.scratch);
-  Curl_ssl_free_certinfo(data);
-
-  if(data->change.referer_alloc)
-    free(data->change.referer);
-
-  if(data->change.url_alloc)
-    free(data->change.url);
-
-  Curl_safefree(data->state.headerbuff);
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
-  flush_cookies(data, 1);
-#endif
-
-  Curl_digest_cleanup(data);
-
-  Curl_safefree(data->info.contenttype);
-  Curl_safefree(data->info.wouldredirect);
-
-  /* this destroys the channel and we cannot use it anymore after this */
-  ares_destroy(data->state.areschannel);
-
-#if defined(CURL_DOES_CONVERSIONS) && defined(HAVE_ICONV)
-  /* close iconv conversion descriptors */
-  if(data->inbound_cd != (iconv_t)-1) {
-     iconv_close(data->inbound_cd);
-  }
-  if(data->outbound_cd != (iconv_t)-1) {
-     iconv_close(data->outbound_cd);
-  }
-  if(data->utf8_cd != (iconv_t)-1) {
-     iconv_close(data->utf8_cd);
-  }
-#endif /* CURL_DOES_CONVERSIONS && HAVE_ICONV */
-
-  /* No longer a dirty share, if it exists */
-  if(data->share) {
-    Curl_share_lock(data, CURL_LOCK_DATA_SHARE, CURL_LOCK_ACCESS_SINGLE);
-    data->share->dirty--;
-    Curl_share_unlock(data, CURL_LOCK_DATA_SHARE);
-  }
-
-  Curl_freeset(data);
-  free(data);
-  return CURLE_OK;
-}
-
-/* create a connection cache of a private or multi type */
-struct conncache *Curl_mk_connc(int type,
-                                long amount) /* set -1 to use default */
-{
-  /* It is subject for debate how many default connections to have for a multi
-     connection cache... */
-
-  struct conncache *c;
-  long default_amount;
-  long max_amount = (long)(((size_t)INT_MAX) / sizeof(struct connectdata *));
-
-  if(type == CONNCACHE_PRIVATE) {
-    default_amount = (amount < 1L) ? 5L : amount;
-  }
-  else {
-    default_amount = (amount < 1L) ? 10L : amount;
-  }
-
-  if(default_amount > max_amount)
-    default_amount = max_amount;
-
-  c = calloc(1, sizeof(struct conncache));
-  if(!c)
-    return NULL;
-
-  c->connects = calloc((size_t)default_amount, sizeof(struct connectdata *));
-  if(!c->connects) {
-    free(c);
-    return NULL;
-  }
-
-  c->num = default_amount;
-
-  return c;
-}
-
-/* Change number of entries of a connection cache */
-CURLcode Curl_ch_connc(struct SessionHandle *data,
-                       struct conncache *c,
-                       long newamount)
-{
-  long i;
-  struct connectdata **newptr;
-  long max_amount = (long)(((size_t)INT_MAX) / sizeof(struct connectdata *));
-
-  if(newamount < 1)
-    newamount = 1; /* we better have at least one entry */
-
-  if(!c) {
-    /* we get a NULL pointer passed in as connection cache, which means that
-       there is no cache created for this SessionHandle just yet, we create a
-       brand new with the requested size.
-    */
-    data->state.connc = Curl_mk_connc(CONNCACHE_PRIVATE, newamount);
-    if(!data->state.connc)
-      return CURLE_OUT_OF_MEMORY;
-    return CURLE_OK;
-  }
-
-  if(newamount < c->num) {
-    /* Since this number is *decreased* from the existing number, we must
-       close the possibly open connections that live on the indexes that
-       are being removed!
-
-       NOTE: for conncache_multi cases we must make sure that we only
-       close handles not in use.
-    */
-    for(i=newamount; i< c->num; i++)
-      Curl_disconnect(c->connects[i]);
-
-    /* If the most recent connection is no longer valid, mark it
-       invalid. */
-    if(data->state.lastconnect <= newamount)
-      data->state.lastconnect = -1;
-  }
-  if(newamount > 0) {
-    if(newamount > max_amount)
-      newamount = max_amount;
-    newptr = realloc(c->connects, sizeof(struct connectdata *) * newamount);
-    if(!newptr)
-      /* we closed a few connections in vain, but so what? */
-      return CURLE_OUT_OF_MEMORY;
-
-    /* nullify the newly added pointers */
-    for(i=c->num; i<newamount; i++)
-      newptr[i] = NULL;
-
-    c->connects = newptr;
-    c->num = newamount;
-  }
-  /* we no longer support less than 1 as size for the connection cache, and
-     I'm not sure it ever worked to set it to zero */
-  return CURLE_OK;
-}
-
-/* Free a connection cache. This is called from Curl_close() and
-   curl_multi_cleanup(). */
-void Curl_rm_connc(struct conncache *c)
-{
-  if(c->connects) {
-    long i;
-    for(i = 0; i < c->num; ++i)
-      conn_free(c->connects[i]);
-
-    free(c->connects);
-  }
-
-  free(c);
-}
-
-/*
- * Initialize the UserDefined fields within a SessionHandle.
- * This may be safely called on a new or existing SessionHandle.
- */
-CURLcode Curl_init_userdefined(struct UserDefined *set)
-{
-  CURLcode res = CURLE_OK;
-
-  set->out = stdout; /* default output to stdout */
-  set->in  = stdin;  /* default input from stdin */
-  set->err  = stderr;  /* default stderr to stderr */
-
-  /* use fwrite as default function to store output */
-  set->fwrite_func = (curl_write_callback)fwrite;
-
-  /* use fread as default function to read input */
-  set->fread_func = (curl_read_callback)fread;
-
-  set->seek_func = ZERO_NULL;
-  set->seek_client = ZERO_NULL;
-
-  /* conversion callbacks for non-ASCII hosts */
-  set->convfromnetwork = ZERO_NULL;
-  set->convtonetwork   = ZERO_NULL;
-  set->convfromutf8    = ZERO_NULL;
-
-  set->infilesize = -1;      /* we don't know any size */
-  set->postfieldsize = -1;   /* unknown size */
-  set->maxredirs = -1;       /* allow any amount by default */
-
-  set->httpreq = HTTPREQ_GET; /* Default HTTP request */
-  set->rtspreq = RTSPREQ_OPTIONS; /* Default RTSP request */
-  set->ftp_use_epsv = TRUE;   /* FTP defaults to EPSV operations */
-  set->ftp_use_eprt = TRUE;   /* FTP defaults to EPRT operations */
-  set->ftp_use_pret = FALSE;  /* mainly useful for drftpd servers */
-  set->ftp_filemethod = FTPFILE_MULTICWD;
-
-  set->dns_cache_timeout = 60; /* Timeout every 60 seconds by default */
-
-  /* Set the default size of the SSL session ID cache */
-  set->ssl.numsessions = 5;
-
-  set->proxyport = CURL_DEFAULT_PROXY_PORT; /* from url.h */
-  set->proxytype = CURLPROXY_HTTP; /* defaults to HTTP proxy */
-  set->httpauth = CURLAUTH_BASIC;  /* defaults to basic */
-  set->proxyauth = CURLAUTH_BASIC; /* defaults to basic */
-
-  /* make libcurl quiet by default: */
-  set->hide_progress = TRUE;  /* CURLOPT_NOPROGRESS changes these */
-
-  /*
-   * libcurl 7.10 introduced SSL verification *by default*! This needs to be
-   * switched off unless wanted.
-   */
-  set->ssl.verifypeer = TRUE;
-  set->ssl.verifyhost = 2;
-  set->ssh_auth_types = CURLSSH_AUTH_DEFAULT; /* defaults to any auth
-                                                      type */
-  set->ssl.sessionid = TRUE; /* session ID caching enabled by default */
-
-  set->new_file_perms = 0644;    /* Default permissions */
-  set->new_directory_perms = 0755; /* Default permissions */
-
-  /* for the *protocols fields we don't use the CURLPROTO_ALL convenience
-     define since we internally only use the lower 16 bits for the passed
-     in bitmask to not conflict with the private bits */
-  set->allowed_protocols = PROT_EXTMASK;
-  set->redir_protocols =
-    PROT_EXTMASK & ~(CURLPROTO_FILE|CURLPROTO_SCP); /* not FILE or SCP */
-
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-  /*
-   * disallow unprotected protection negotiation NEC reference implementation
-   * seem not to follow rfc1961 section 4.3/4.4
-   */
-  set->socks5_gssapi_nec = FALSE;
-  /* set default gssapi service name */
-  res = setstropt(&set->str[STRING_SOCKS5_GSSAPI_SERVICE],
-                  (char *) CURL_DEFAULT_SOCKS5_GSSAPI_SERVICE);
-  if (res != CURLE_OK)
-    return res;
-#endif
-
-  /* This is our preferred CA cert bundle/path since install time */
-#if defined(CURL_CA_BUNDLE)
-  res = setstropt(&set->str[STRING_SSL_CAFILE], (char *) CURL_CA_BUNDLE);
-#elif defined(CURL_CA_PATH)
-  res = setstropt(&set->str[STRING_SSL_CAPATH], (char *) CURL_CA_PATH);
-#endif
-
-  return res;
-}
-
-/**
- * Curl_open()
- *
- * @param curl is a pointer to a sessionhandle pointer that gets set by this
- * function.
- * @return CURLcode
- */
-
-CURLcode Curl_open(struct SessionHandle **curl)
-{
-  CURLcode res = CURLE_OK;
-  struct SessionHandle *data;
-#ifdef USE_ARES
-  int status;
-#endif
-
-  /* Very simple start-up: alloc the struct, init it with zeroes and return */
-  data = calloc(1, sizeof(struct SessionHandle));
-  if(!data) {
-    /* this is a very serious error */
-    DEBUGF(fprintf(stderr, "Error: calloc of SessionHandle failed\n"));
-    return CURLE_OUT_OF_MEMORY;
-  }
-
-  data->magic = CURLEASY_MAGIC_NUMBER;
-
-#ifdef USE_ARES
-  if((status = ares_init(&data->state.areschannel)) != ARES_SUCCESS) {
-    DEBUGF(fprintf(stderr, "Error: ares_init failed\n"));
-    free(data);
-    if(status == ARES_ENOMEM)
-      return CURLE_OUT_OF_MEMORY;
-    else
-      return CURLE_FAILED_INIT;
-  }
-  /* make sure that all other returns from this function should destroy the
-     ares channel before returning error! */
-#endif
-
-  /* We do some initial setup here, all those fields that can't be just 0 */
-
-  data->state.headerbuff = malloc(HEADERSIZE);
-  if(!data->state.headerbuff) {
-    DEBUGF(fprintf(stderr, "Error: malloc of headerbuff failed\n"));
-    res = CURLE_OUT_OF_MEMORY;
-  }
-  else {
-    Curl_easy_initHandleData(data);
-    res = Curl_init_userdefined(&data->set);
-
-    data->state.headersize=HEADERSIZE;
-
-#if defined(CURL_DOES_CONVERSIONS) && defined(HAVE_ICONV)
-    /* conversion descriptors for iconv calls */
-    data->outbound_cd = (iconv_t)-1;
-    data->inbound_cd  = (iconv_t)-1;
-    data->utf8_cd     = (iconv_t)-1;
-#endif /* CURL_DOES_CONVERSIONS && HAVE_ICONV */
-
-    /* most recent connection is not yet defined */
-    data->state.lastconnect = -1;
-
-    data->progress.flags |= PGRS_HIDE;
-    data->state.current_speed = -1; /* init to negative == impossible */
-
-    /* This no longer creates a connection cache here. It is instead made on
-       the first call to curl_easy_perform() or when the handle is added to a
-       multi stack. */
-  }
-
-  if(res) {
-    ares_destroy(data->state.areschannel);
-    if(data->state.headerbuff)
-      free(data->state.headerbuff);
-    Curl_freeset(data);
-    free(data);
-    data = NULL;
-  }
-  else
-    *curl = data;
-
-  return res;
-}
-
-CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
-                     va_list param)
-{
-  char *argptr;
-  CURLcode result = CURLE_OK;
-#ifndef CURL_DISABLE_HTTP
-  curl_off_t bigsize;
-#endif
-
-  switch(option) {
-  case CURLOPT_DNS_CACHE_TIMEOUT:
-    data->set.dns_cache_timeout = va_arg(param, long);
-    break;
-  case CURLOPT_DNS_USE_GLOBAL_CACHE:
-  {
-    /* remember we want this enabled */
-    long use_cache = va_arg(param, long);
-    data->set.global_dns_cache = (bool)(0 != use_cache);
-  }
-  break;
-  case CURLOPT_SSL_CIPHER_LIST:
-    /* set a list of cipher we want to use in the SSL connection */
-    result = setstropt(&data->set.str[STRING_SSL_CIPHER_LIST],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_RANDOM_FILE:
-    /*
-     * This is the path name to a file that contains random data to seed
-     * the random SSL stuff with. The file is only used for reading.
-     */
-    result = setstropt(&data->set.str[STRING_SSL_RANDOM_FILE],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_EGDSOCKET:
-    /*
-     * The Entropy Gathering Daemon socket pathname
-     */
-    result = setstropt(&data->set.str[STRING_SSL_EGDSOCKET],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_MAXCONNECTS:
-    /*
-     * Set the absolute number of maximum simultaneous alive connection that
-     * libcurl is allowed to have.
-     */
-    result = Curl_ch_connc(data, data->state.connc, va_arg(param, long));
-    break;
-  case CURLOPT_FORBID_REUSE:
-    /*
-     * When this transfer is done, it must not be left to be reused by a
-     * subsequent transfer but shall be closed immediately.
-     */
-    data->set.reuse_forbid = (bool)(0 != va_arg(param, long));
-    break;
-  case CURLOPT_FRESH_CONNECT:
-    /*
-     * This transfer shall not use a previously cached connection but
-     * should be made with a fresh new connect!
-     */
-    data->set.reuse_fresh = (bool)(0 != va_arg(param, long));
-    break;
-  case CURLOPT_VERBOSE:
-    /*
-     * Verbose means infof() calls that give a lot of information about
-     * the connection and transfer procedures as well as internal choices.
-     */
-    data->set.verbose = (bool)(0 != va_arg(param, long));
-    break;
-  case CURLOPT_HEADER:
-    /*
-     * Set to include the header in the general data output stream.
-     */
-    data->set.include_header = (bool)(0 != va_arg(param, long));
-    break;
-  case CURLOPT_NOPROGRESS:
-    /*
-     * Shut off the internal supported progress meter
-     */
-    data->set.hide_progress = (bool)(0 != va_arg(param, long));
-    if(data->set.hide_progress)
-      data->progress.flags |= PGRS_HIDE;
-    else
-      data->progress.flags &= ~PGRS_HIDE;
-    break;
-  case CURLOPT_NOBODY:
-    /*
-     * Do not include the body part in the output data stream.
-     */
-    data->set.opt_no_body = (bool)(0 != va_arg(param, long));
-    break;
-  case CURLOPT_FAILONERROR:
-    /*
-     * Don't output the >=300 error code HTML-page, but instead only
-     * return error.
-     */
-    data->set.http_fail_on_error = (bool)(0 != va_arg(param, long));
-    break;
-  case CURLOPT_UPLOAD:
-  case CURLOPT_PUT:
-    /*
-     * We want to sent data to the remote host. If this is HTTP, that equals
-     * using the PUT request.
-     */
-    data->set.upload = (bool)(0 != va_arg(param, long));
-    if(data->set.upload) {
-      /* If this is HTTP, PUT is what's needed to "upload" */
-      data->set.httpreq = HTTPREQ_PUT;
-      data->set.opt_no_body = FALSE; /* this is implied */
-    }
-    else
-      /* In HTTP, the opposite of upload is GET (unless NOBODY is true as
-         then this can be changed to HEAD later on) */
-      data->set.httpreq = HTTPREQ_GET;
-    break;
-  case CURLOPT_FILETIME:
-    /*
-     * Try to get the file time of the remote document. The time will
-     * later (possibly) become available using curl_easy_getinfo().
-     */
-    data->set.get_filetime = (bool)(0 != va_arg(param, long));
-    break;
-  case CURLOPT_FTP_CREATE_MISSING_DIRS:
-    /*
-     * An FTP option that modifies an upload to create missing directories on
-     * the server.
-     */
-    data->set.ftp_create_missing_dirs = (int)va_arg(param, long);
-    break;
-  case CURLOPT_SERVER_RESPONSE_TIMEOUT:
-    /*
-     * Option that specifies how quickly an server response must be obtained
-     * before it is considered failure. For pingpong protocols.
-     */
-    data->set.server_response_timeout = va_arg( param , long ) * 1000;
-    break;
-  case CURLOPT_TFTP_BLKSIZE:
-    /*
-     * TFTP option that specifies the block size to use for data transmission
-     */
-    data->set.tftp_blksize = va_arg(param, long);
-    break;
-  case CURLOPT_DIRLISTONLY:
-    /*
-     * An option that changes the command to one that asks for a list
-     * only, no file info details.
-     */
-    data->set.ftp_list_only = (bool)(0 != va_arg(param, long));
-    break;
-  case CURLOPT_APPEND:
-    /*
-     * We want to upload and append to an existing file.
-     */
-    data->set.ftp_append = (bool)(0 != va_arg(param, long));
-    break;
-  case CURLOPT_FTP_FILEMETHOD:
-    /*
-     * How do access files over FTP.
-     */
-    data->set.ftp_filemethod = (curl_ftpfile)va_arg(param, long);
-    break;
-  case CURLOPT_NETRC:
-    /*
-     * Parse the $HOME/.netrc file
-     */
-    data->set.use_netrc = (enum CURL_NETRC_OPTION)va_arg(param, long);
-    break;
-  case CURLOPT_NETRC_FILE:
-    /*
-     * Use this file instead of the $HOME/.netrc file
-     */
-    result = setstropt(&data->set.str[STRING_NETRC_FILE],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_TRANSFERTEXT:
-    /*
-     * This option was previously named 'FTPASCII'. Renamed to work with
-     * more protocols than merely FTP.
-     *
-     * Transfer using ASCII (instead of BINARY).
-     */
-    data->set.prefer_ascii = (bool)(0 != va_arg(param, long));
-    break;
-  case CURLOPT_TIMECONDITION:
-    /*
-     * Set HTTP time condition. This must be one of the defines in the
-     * curl/curl.h header file.
-     */
-    data->set.timecondition = (curl_TimeCond)va_arg(param, long);
-    break;
-  case CURLOPT_TIMEVALUE:
-    /*
-     * This is the value to compare with the remote document with the
-     * method set with CURLOPT_TIMECONDITION
-     */
-    data->set.timevalue = (time_t)va_arg(param, long);
-    break;
-  case CURLOPT_SSLVERSION:
-    /*
-     * Set explicit SSL version to try to connect with, as some SSL
-     * implementations are lame.
-     */
-    data->set.ssl.version = va_arg(param, long);
-    break;
-
-#ifndef CURL_DISABLE_HTTP
-  case CURLOPT_AUTOREFERER:
-    /*
-     * Switch on automatic referer that gets set if curl follows locations.
-     */
-    data->set.http_auto_referer = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_ENCODING:
-    /*
-     * String to use at the value of Accept-Encoding header.
-     *
-     * If the encoding is set to "" we use an Accept-Encoding header that
-     * encompasses all the encodings we support.
-     * If the encoding is set to NULL we don't send an Accept-Encoding header
-     * and ignore an received Content-Encoding header.
-     *
-     */
-    argptr = va_arg(param, char *);
-    result = setstropt(&data->set.str[STRING_ENCODING],
-                       (argptr && !*argptr)?
-                       (char *) ALL_CONTENT_ENCODINGS: argptr);
-    break;
-
-  case CURLOPT_FOLLOWLOCATION:
-    /*
-     * Follow Location: header hints on a HTTP-server.
-     */
-    data->set.http_follow_location = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_UNRESTRICTED_AUTH:
-    /*
-     * Send authentication (user+password) when following locations, even when
-     * hostname changed.
-     */
-    data->set.http_disable_hostname_check_before_authentication =
-      (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_MAXREDIRS:
-    /*
-     * The maximum amount of hops you allow curl to follow Location:
-     * headers. This should mostly be used to detect never-ending loops.
-     */
-    data->set.maxredirs = va_arg(param, long);
-    break;
-
-  case CURLOPT_POSTREDIR:
-  {
-    /*
-     * Set the behaviour of POST when redirecting
-     * CURL_REDIR_GET_ALL - POST is changed to GET after 301 and 302
-     * CURL_REDIR_POST_301 - POST is kept as POST after 301
-     * CURL_REDIR_POST_302 - POST is kept as POST after 302
-     * CURL_REDIR_POST_ALL - POST is kept as POST after 301 and 302
-     * other - POST is kept as POST after 301 and 302
-     */
-    long postRedir = va_arg(param, long);
-    data->set.post301 = (bool)((postRedir & CURL_REDIR_POST_301)?TRUE:FALSE);
-    data->set.post302 = (bool)((postRedir & CURL_REDIR_POST_302)?TRUE:FALSE);
-  }
-  break;
-
-  case CURLOPT_POST:
-    /* Does this option serve a purpose anymore? Yes it does, when
-       CURLOPT_POSTFIELDS isn't used and the POST data is read off the
-       callback! */
-    if(va_arg(param, long)) {
-      data->set.httpreq = HTTPREQ_POST;
-      data->set.opt_no_body = FALSE; /* this is implied */
-    }
-    else
-      data->set.httpreq = HTTPREQ_GET;
-    break;
-
-  case CURLOPT_COPYPOSTFIELDS:
-    /*
-     * A string with POST data. Makes curl HTTP POST. Even if it is NULL.
-     * If needed, CURLOPT_POSTFIELDSIZE must have been set prior to
-     *  CURLOPT_COPYPOSTFIELDS and not altered later.
-     */
-    argptr = va_arg(param, char *);
-
-    if(!argptr || data->set.postfieldsize == -1)
-      result = setstropt(&data->set.str[STRING_COPYPOSTFIELDS], argptr);
-    else {
-      /*
-       *  Check that requested length does not overflow the size_t type.
-       */
-
-      if((data->set.postfieldsize < 0) ||
-         ((sizeof(curl_off_t) != sizeof(size_t)) &&
-          (data->set.postfieldsize > (curl_off_t)((size_t)-1))))
-        result = CURLE_OUT_OF_MEMORY;
-      else {
-        char * p;
-
-        (void) setstropt(&data->set.str[STRING_COPYPOSTFIELDS], NULL);
-
-        /* Allocate even when size == 0. This satisfies the need of possible
-           later address compare to detect the COPYPOSTFIELDS mode, and
-           to mark that postfields is used rather than read function or
-           form data.
-        */
-        p = malloc((size_t)(data->set.postfieldsize?
-                            data->set.postfieldsize:1));
-
-        if(!p)
-          result = CURLE_OUT_OF_MEMORY;
-        else {
-          if(data->set.postfieldsize)
-            memcpy(p, argptr, (size_t)data->set.postfieldsize);
-
-          data->set.str[STRING_COPYPOSTFIELDS] = p;
-        }
-      }
-    }
-
-    data->set.postfields = data->set.str[STRING_COPYPOSTFIELDS];
-    data->set.httpreq = HTTPREQ_POST;
-    break;
-
-  case CURLOPT_POSTFIELDS:
-    /*
-     * Like above, but use static data instead of copying it.
-     */
-    data->set.postfields = va_arg(param, void *);
-    /* Release old copied data. */
-    (void) setstropt(&data->set.str[STRING_COPYPOSTFIELDS], NULL);
-    data->set.httpreq = HTTPREQ_POST;
-    break;
-
-  case CURLOPT_POSTFIELDSIZE:
-    /*
-     * The size of the POSTFIELD data to prevent libcurl to do strlen() to
-     * figure it out. Enables binary posts.
-     */
-    bigsize = va_arg(param, long);
-
-    if(data->set.postfieldsize < bigsize &&
-       data->set.postfields == data->set.str[STRING_COPYPOSTFIELDS]) {
-      /* Previous CURLOPT_COPYPOSTFIELDS is no longer valid. */
-      (void) setstropt(&data->set.str[STRING_COPYPOSTFIELDS], NULL);
-      data->set.postfields = NULL;
-    }
-
-    data->set.postfieldsize = bigsize;
-    break;
-
-  case CURLOPT_POSTFIELDSIZE_LARGE:
-    /*
-     * The size of the POSTFIELD data to prevent libcurl to do strlen() to
-     * figure it out. Enables binary posts.
-     */
-    bigsize = va_arg(param, curl_off_t);
-
-    if(data->set.postfieldsize < bigsize &&
-       data->set.postfields == data->set.str[STRING_COPYPOSTFIELDS]) {
-      /* Previous CURLOPT_COPYPOSTFIELDS is no longer valid. */
-      (void) setstropt(&data->set.str[STRING_COPYPOSTFIELDS], NULL);
-      data->set.postfields = NULL;
-    }
-
-    data->set.postfieldsize = bigsize;
-    break;
-
-  case CURLOPT_HTTPPOST:
-    /*
-     * Set to make us do HTTP POST
-     */
-    data->set.httppost = va_arg(param, struct curl_httppost *);
-    data->set.httpreq = HTTPREQ_POST_FORM;
-    data->set.opt_no_body = FALSE; /* this is implied */
-    break;
-
-  case CURLOPT_REFERER:
-    /*
-     * String to set in the HTTP Referer: field.
-     */
-    if(data->change.referer_alloc) {
-      free(data->change.referer);
-      data->change.referer_alloc = FALSE;
-    }
-    result = setstropt(&data->set.str[STRING_SET_REFERER],
-                       va_arg(param, char *));
-    data->change.referer = data->set.str[STRING_SET_REFERER];
-    break;
-
-  case CURLOPT_USERAGENT:
-    /*
-     * String to use in the HTTP User-Agent field
-     */
-    result = setstropt(&data->set.str[STRING_USERAGENT],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_HTTPHEADER:
-    /*
-     * Set a list with HTTP headers to use (or replace internals with)
-     */
-    data->set.headers = va_arg(param, struct curl_slist *);
-    break;
-
-  case CURLOPT_HTTP200ALIASES:
-    /*
-     * Set a list of aliases for HTTP 200 in response header
-     */
-    data->set.http200aliases = va_arg(param, struct curl_slist *);
-    break;
-
-#if !defined(CURL_DISABLE_COOKIES)
-  case CURLOPT_COOKIE:
-    /*
-     * Cookie string to send to the remote server in the request.
-     */
-    result = setstropt(&data->set.str[STRING_COOKIE],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_COOKIEFILE:
-    /*
-     * Set cookie file to read and parse. Can be used multiple times.
-     */
-    argptr = (char *)va_arg(param, void *);
-    if(argptr) {
-      struct curl_slist *cl;
-      /* append the cookie file name to the list of file names, and deal with
-         them later */
-      cl = curl_slist_append(data->change.cookielist, argptr);
-
-      if(!cl)
-        return CURLE_OUT_OF_MEMORY;
-
-      data->change.cookielist = cl; /* store the list for later use */
-    }
-    break;
-
-  case CURLOPT_COOKIEJAR:
-    /*
-     * Set cookie file name to dump all cookies to when we're done.
-     */
-    result = setstropt(&data->set.str[STRING_COOKIEJAR],
-                       va_arg(param, char *));
-
-    /*
-     * Activate the cookie parser. This may or may not already
-     * have been made.
-     */
-    data->cookies = Curl_cookie_init(data, NULL, data->cookies,
-                                     data->set.cookiesession);
-    break;
-
-  case CURLOPT_COOKIESESSION:
-    /*
-     * Set this option to TRUE to start a new "cookie session". It will
-     * prevent the forthcoming read-cookies-from-file actions to accept
-     * cookies that are marked as being session cookies, as they belong to a
-     * previous session.
-     *
-     * In the original Netscape cookie spec, "session cookies" are cookies
-     * with no expire date set. RFC2109 describes the same action if no
-     * 'Max-Age' is set and RFC2965 includes the RFC2109 description and adds
-     * a 'Discard' action that can enforce the discard even for cookies that
-     * have a Max-Age.
-     *
-     * We run mostly with the original cookie spec, as hardly anyone implements
-     * anything else.
-     */
-    data->set.cookiesession = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_COOKIELIST:
-    argptr = va_arg(param, char *);
-
-    if(argptr == NULL)
-      break;
-
-    if(Curl_raw_equal(argptr, "ALL")) {
-      /* clear all cookies */
-      Curl_cookie_clearall(data->cookies);
-      break;
-    }
-    else if(Curl_raw_equal(argptr, "SESS")) {
-      /* clear session cookies */
-      Curl_cookie_clearsess(data->cookies);
-      break;
-    }
-    else if(Curl_raw_equal(argptr, "FLUSH")) {
-      /* flush cookies to file */
-      flush_cookies(data, 0);
-      break;
-    }
-
-    if(!data->cookies)
-      /* if cookie engine was not running, activate it */
-      data->cookies = Curl_cookie_init(data, NULL, NULL, TRUE);
-
-    argptr = strdup(argptr);
-    if(!argptr) {
-      result = CURLE_OUT_OF_MEMORY;
-      break;
-    }
-
-    if(checkprefix("Set-Cookie:", argptr))
-      /* HTTP Header format line */
-      Curl_cookie_add(data, data->cookies, TRUE, argptr + 11, NULL, NULL);
-
-    else
-      /* Netscape format line */
-      Curl_cookie_add(data, data->cookies, FALSE, argptr, NULL, NULL);
-
-    free(argptr);
-    break;
-#endif /* CURL_DISABLE_COOKIES */
-
-  case CURLOPT_HTTPGET:
-    /*
-     * Set to force us do HTTP GET
-     */
-    if(va_arg(param, long)) {
-      data->set.httpreq = HTTPREQ_GET;
-      data->set.upload = FALSE; /* switch off upload */
-      data->set.opt_no_body = FALSE; /* this is implied */
-    }
-    break;
-
-  case CURLOPT_HTTP_VERSION:
-    /*
-     * This sets a requested HTTP version to be used. The value is one of
-     * the listed enums in curl/curl.h.
-     */
-    data->set.httpversion = va_arg(param, long);
-    break;
-
-  case CURLOPT_CUSTOMREQUEST:
-    /*
-     * Set a custom string to use as request
-     */
-    result = setstropt(&data->set.str[STRING_CUSTOMREQUEST],
-                       va_arg(param, char *));
-
-    /* we don't set
-       data->set.httpreq = HTTPREQ_CUSTOM;
-       here, we continue as if we were using the already set type
-       and this just changes the actual request keyword */
-    break;
-
-  case CURLOPT_HTTPAUTH:
-    /*
-     * Set HTTP Authentication type BITMASK.
-     */
-  {
-    long auth = va_arg(param, long);
-
-    /* the DIGEST_IE bit is only used to set a special marker, for all the
-       rest we need to handle it as normal DIGEST */
-    data->state.authhost.iestyle = (bool)((auth & CURLAUTH_DIGEST_IE)?
-                                          TRUE:FALSE);
-
-    if(auth & CURLAUTH_DIGEST_IE) {
-      auth |= CURLAUTH_DIGEST; /* set standard digest bit */
-      auth &= ~CURLAUTH_DIGEST_IE; /* unset ie digest bit */
-    }
-
-    /* switch off bits we can't support */
-#ifndef USE_NTLM
-    auth &= ~CURLAUTH_NTLM; /* no NTLM without SSL */
-#endif
-#ifndef HAVE_GSSAPI
-    auth &= ~CURLAUTH_GSSNEGOTIATE; /* no GSS-Negotiate without GSSAPI */
-#endif
-    if(!auth)
-      return CURLE_FAILED_INIT; /* no supported types left! */
-
-    data->set.httpauth = auth;
-  }
-  break;
-
-#ifndef CURL_DISABLE_PROXY
-  case CURLOPT_HTTPPROXYTUNNEL:
-    /*
-     * Tunnel operations through the proxy instead of normal proxy use
-     */
-    data->set.tunnel_thru_httpproxy = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_PROXYPORT:
-    /*
-     * Explicitly set HTTP proxy port number.
-     */
-    data->set.proxyport = va_arg(param, long);
-    break;
-
-  case CURLOPT_PROXYAUTH:
-    /*
-     * Set HTTP Authentication type BITMASK.
-     */
-  {
-    long auth = va_arg(param, long);
-
-    /* the DIGEST_IE bit is only used to set a special marker, for all the
-       rest we need to handle it as normal DIGEST */
-    data->state.authproxy.iestyle = (bool)((auth & CURLAUTH_DIGEST_IE)?
-                                           TRUE:FALSE);
-
-    if(auth & CURLAUTH_DIGEST_IE) {
-      auth |= CURLAUTH_DIGEST; /* set standard digest bit */
-      auth &= ~CURLAUTH_DIGEST_IE; /* unset ie digest bit */
-    }
-    /* switch off bits we can't support */
-#ifndef USE_NTLM
-    auth &= ~CURLAUTH_NTLM; /* no NTLM without SSL */
-#endif
-#ifndef HAVE_GSSAPI
-    auth &= ~CURLAUTH_GSSNEGOTIATE; /* no GSS-Negotiate without GSSAPI */
-#endif
-    if(!auth)
-      return CURLE_FAILED_INIT; /* no supported types left! */
-
-    data->set.proxyauth = auth;
-  }
-  break;
-#endif   /* CURL_DISABLE_HTTP */
-
-  case CURLOPT_PROXY:
-    /*
-     * Set proxy server:port to use as HTTP proxy.
-     *
-     * If the proxy is set to "" we explicitly say that we don't want to use a
-     * proxy (even though there might be environment variables saying so).
-     *
-     * Setting it to NULL, means no proxy but allows the environment variables
-     * to decide for us.
-     */
-    result = setstropt(&data->set.str[STRING_PROXY],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_PROXYTYPE:
-    /*
-     * Set proxy type. HTTP/HTTP_1_0/SOCKS4/SOCKS4a/SOCKS5/SOCKS5_HOSTNAME
-     */
-    data->set.proxytype = (curl_proxytype)va_arg(param, long);
-    break;
-
-  case CURLOPT_PROXY_TRANSFER_MODE:
-    /*
-     * set transfer mode (;type=<a|i>) when doing FTP via an HTTP proxy
-     */
-    switch (va_arg(param, long)) {
-    case 0:
-      data->set.proxy_transfer_mode = FALSE;
-      break;
-    case 1:
-      data->set.proxy_transfer_mode = TRUE;
-      break;
-    default:
-      /* reserve other values for future use */
-      result = CURLE_FAILED_INIT;
-      break;
-    }
-    break;
-#endif
-
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-  case CURLOPT_SOCKS5_GSSAPI_SERVICE:
-    /*
-     * Set gssapi service name
-     */
-    result = setstropt(&data->set.str[STRING_SOCKS5_GSSAPI_SERVICE],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_SOCKS5_GSSAPI_NEC:
-    /*
-     * set flag for nec socks5 support
-     */
-    data->set.socks5_gssapi_nec = (bool)(0 != va_arg(param, long));
-    break;
-#endif
-
-  case CURLOPT_WRITEHEADER:
-    /*
-     * Custom pointer to pass the header write callback function
-     */
-    data->set.writeheader = (void *)va_arg(param, void *);
-    break;
-  case CURLOPT_ERRORBUFFER:
-    /*
-     * Error buffer provided by the caller to get the human readable
-     * error string in.
-     */
-    data->set.errorbuffer = va_arg(param, char *);
-    break;
-  case CURLOPT_FILE:
-    /*
-     * FILE pointer to write to or include in the data write callback
-     */
-    data->set.out = va_arg(param, FILE *);
-    break;
-  case CURLOPT_FTPPORT:
-    /*
-     * Use FTP PORT, this also specifies which IP address to use
-     */
-    result = setstropt(&data->set.str[STRING_FTPPORT],
-                       va_arg(param, char *));
-    data->set.ftp_use_port = (bool)(NULL != data->set.str[STRING_FTPPORT]);
-    break;
-
-  case CURLOPT_FTP_USE_EPRT:
-    data->set.ftp_use_eprt = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_FTP_USE_EPSV:
-    data->set.ftp_use_epsv = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_FTP_USE_PRET:
-    data->set.ftp_use_pret = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_FTP_SSL_CCC:
-    data->set.ftp_ccc = (curl_ftpccc)va_arg(param, long);
-    break;
-
-  case CURLOPT_FTP_SKIP_PASV_IP:
-    /*
-     * Enable or disable FTP_SKIP_PASV_IP, which will disable/enable the
-     * bypass of the IP address in PASV responses.
-     */
-    data->set.ftp_skip_ip = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_INFILE:
-    /*
-     * FILE pointer to read the file to be uploaded from. Or possibly
-     * used as argument to the read callback.
-     */
-    data->set.in = va_arg(param, FILE *);
-    break;
-  case CURLOPT_INFILESIZE:
-    /*
-     * If known, this should inform curl about the file size of the
-     * to-be-uploaded file.
-     */
-    data->set.infilesize = va_arg(param, long);
-    break;
-  case CURLOPT_INFILESIZE_LARGE:
-    /*
-     * If known, this should inform curl about the file size of the
-     * to-be-uploaded file.
-     */
-    data->set.infilesize = va_arg(param, curl_off_t);
-    break;
-  case CURLOPT_LOW_SPEED_LIMIT:
-    /*
-     * The low speed limit that if transfers are below this for
-     * CURLOPT_LOW_SPEED_TIME, the transfer is aborted.
-     */
-    data->set.low_speed_limit=va_arg(param, long);
-    break;
-  case CURLOPT_MAX_SEND_SPEED_LARGE:
-    /*
-     * When transfer uploads are faster then CURLOPT_MAX_SEND_SPEED_LARGE
-     * bytes per second the transfer is throttled..
-     */
-    data->set.max_send_speed=va_arg(param, curl_off_t);
-    break;
-  case CURLOPT_MAX_RECV_SPEED_LARGE:
-    /*
-     * When receiving data faster than CURLOPT_MAX_RECV_SPEED_LARGE bytes per
-     * second the transfer is throttled..
-     */
-    data->set.max_recv_speed=va_arg(param, curl_off_t);
-    break;
-  case CURLOPT_LOW_SPEED_TIME:
-    /*
-     * The low speed time that if transfers are below the set
-     * CURLOPT_LOW_SPEED_LIMIT during this time, the transfer is aborted.
-     */
-    data->set.low_speed_time=va_arg(param, long);
-    break;
-  case CURLOPT_URL:
-    /*
-     * The URL to fetch.
-     */
-    if(data->change.url_alloc) {
-      /* the already set URL is allocated, free it first! */
-      free(data->change.url);
-      data->change.url_alloc=FALSE;
-    }
-    result = setstropt(&data->set.str[STRING_SET_URL],
-                       va_arg(param, char *));
-    data->change.url = data->set.str[STRING_SET_URL];
-    break;
-  case CURLOPT_PORT:
-    /*
-     * The port number to use when getting the URL
-     */
-    data->set.use_port = va_arg(param, long);
-    break;
-  case CURLOPT_TIMEOUT:
-    /*
-     * The maximum time you allow curl to use for a single transfer
-     * operation.
-     */
-    data->set.timeout = va_arg(param, long) * 1000L;
-    break;
-
-  case CURLOPT_TIMEOUT_MS:
-    data->set.timeout = va_arg(param, long);
-    break;
-
-  case CURLOPT_CONNECTTIMEOUT:
-    /*
-     * The maximum time you allow curl to use to connect.
-     */
-    data->set.connecttimeout = va_arg(param, long) * 1000L;
-    break;
-
-  case CURLOPT_CONNECTTIMEOUT_MS:
-    data->set.connecttimeout = va_arg(param, long);
-    break;
-
-  case CURLOPT_USERPWD:
-    /*
-     * user:password to use in the operation
-     */
-    result = setstropt_userpwd(va_arg(param, char *),
-                               &data->set.str[STRING_USERNAME],
-                               &data->set.str[STRING_PASSWORD]);
-    break;
-  case CURLOPT_USERNAME:
-    /*
-     * authentication user name to use in the operation
-     */
-    result = setstropt(&data->set.str[STRING_USERNAME],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_PASSWORD:
-    /*
-     * authentication password to use in the operation
-     */
-    result = setstropt(&data->set.str[STRING_PASSWORD],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_POSTQUOTE:
-    /*
-     * List of RAW FTP commands to use after a transfer
-     */
-    data->set.postquote = va_arg(param, struct curl_slist *);
-    break;
-  case CURLOPT_PREQUOTE:
-    /*
-     * List of RAW FTP commands to use prior to RETR (Wesley Laxton)
-     */
-    data->set.prequote = va_arg(param, struct curl_slist *);
-    break;
-  case CURLOPT_QUOTE:
-    /*
-     * List of RAW FTP commands to use before a transfer
-     */
-    data->set.quote = va_arg(param, struct curl_slist *);
-    break;
-  case CURLOPT_PROGRESSFUNCTION:
-    /*
-     * Progress callback function
-     */
-    data->set.fprogress = va_arg(param, curl_progress_callback);
-    if(data->set.fprogress)
-      data->progress.callback = TRUE; /* no longer internal */
-    else
-      data->progress.callback = FALSE; /* NULL enforces internal */
-
-    break;
-  case CURLOPT_PROGRESSDATA:
-    /*
-     * Custom client data to pass to the progress callback
-     */
-    data->set.progress_client = va_arg(param, void *);
-    break;
-
-#ifndef CURL_DISABLE_PROXY
-  case CURLOPT_PROXYUSERPWD:
-    /*
-     * user:password needed to use the proxy
-     */
-    result = setstropt_userpwd(va_arg(param, char *),
-                               &data->set.str[STRING_PROXYUSERNAME],
-                               &data->set.str[STRING_PROXYPASSWORD]);
-    break;
-  case CURLOPT_PROXYUSERNAME:
-    /*
-     * authentication user name to use in the operation
-     */
-    result = setstropt(&data->set.str[STRING_PROXYUSERNAME],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_PROXYPASSWORD:
-    /*
-     * authentication password to use in the operation
-     */
-    result = setstropt(&data->set.str[STRING_PROXYPASSWORD],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_NOPROXY:
-    /*
-     * proxy exception list
-     */
-    result = setstropt(&data->set.str[STRING_NOPROXY],
-                       va_arg(param, char *));
-    break;
-#endif
-
-  case CURLOPT_RANGE:
-    /*
-     * What range of the file you want to transfer
-     */
-    result = setstropt(&data->set.str[STRING_SET_RANGE],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_RESUME_FROM:
-    /*
-     * Resume transfer at the give file position
-     */
-    data->set.set_resume_from = va_arg(param, long);
-    break;
-  case CURLOPT_RESUME_FROM_LARGE:
-    /*
-     * Resume transfer at the give file position
-     */
-    data->set.set_resume_from = va_arg(param, curl_off_t);
-    break;
-  case CURLOPT_DEBUGFUNCTION:
-    /*
-     * stderr write callback.
-     */
-    data->set.fdebug = va_arg(param, curl_debug_callback);
-    /*
-     * if the callback provided is NULL, it'll use the default callback
-     */
-    break;
-  case CURLOPT_DEBUGDATA:
-    /*
-     * Set to a void * that should receive all error writes. This
-     * defaults to CURLOPT_STDERR for normal operations.
-     */
-    data->set.debugdata = va_arg(param, void *);
-    break;
-  case CURLOPT_STDERR:
-    /*
-     * Set to a FILE * that should receive all error writes. This
-     * defaults to stderr for normal operations.
-     */
-    data->set.err = va_arg(param, FILE *);
-    if(!data->set.err)
-      data->set.err = stderr;
-    break;
-  case CURLOPT_HEADERFUNCTION:
-    /*
-     * Set header write callback
-     */
-    data->set.fwrite_header = va_arg(param, curl_write_callback);
-    break;
-  case CURLOPT_WRITEFUNCTION:
-    /*
-     * Set data write callback
-     */
-    data->set.fwrite_func = va_arg(param, curl_write_callback);
-    if(!data->set.fwrite_func)
-      /* When set to NULL, reset to our internal default function */
-      data->set.fwrite_func = (curl_write_callback)fwrite;
-    break;
-  case CURLOPT_READFUNCTION:
-    /*
-     * Read data callback
-     */
-    data->set.fread_func = va_arg(param, curl_read_callback);
-    if(!data->set.fread_func)
-      /* When set to NULL, reset to our internal default function */
-      data->set.fread_func = (curl_read_callback)fread;
-    break;
-  case CURLOPT_SEEKFUNCTION:
-    /*
-     * Seek callback. Might be NULL.
-     */
-    data->set.seek_func = va_arg(param, curl_seek_callback);
-    break;
-  case CURLOPT_SEEKDATA:
-    /*
-     * Seek control callback. Might be NULL.
-     */
-    data->set.seek_client = va_arg(param, void *);
-    break;
-  case CURLOPT_CONV_FROM_NETWORK_FUNCTION:
-    /*
-     * "Convert from network encoding" callback
-     */
-    data->set.convfromnetwork = va_arg(param, curl_conv_callback);
-    break;
-  case CURLOPT_CONV_TO_NETWORK_FUNCTION:
-    /*
-     * "Convert to network encoding" callback
-     */
-    data->set.convtonetwork = va_arg(param, curl_conv_callback);
-    break;
-  case CURLOPT_CONV_FROM_UTF8_FUNCTION:
-    /*
-     * "Convert from UTF-8 encoding" callback
-     */
-    data->set.convfromutf8 = va_arg(param, curl_conv_callback);
-    break;
-  case CURLOPT_IOCTLFUNCTION:
-    /*
-     * I/O control callback. Might be NULL.
-     */
-    data->set.ioctl_func = va_arg(param, curl_ioctl_callback);
-    break;
-  case CURLOPT_IOCTLDATA:
-    /*
-     * I/O control data pointer. Might be NULL.
-     */
-    data->set.ioctl_client = va_arg(param, void *);
-    break;
-  case CURLOPT_SSLCERT:
-    /*
-     * String that holds file name of the SSL certificate to use
-     */
-    result = setstropt(&data->set.str[STRING_CERT],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_SSLCERTTYPE:
-    /*
-     * String that holds file type of the SSL certificate to use
-     */
-    result = setstropt(&data->set.str[STRING_CERT_TYPE],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_SSLKEY:
-    /*
-     * String that holds file name of the SSL key to use
-     */
-    result = setstropt(&data->set.str[STRING_KEY],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_SSLKEYTYPE:
-    /*
-     * String that holds file type of the SSL key to use
-     */
-    result = setstropt(&data->set.str[STRING_KEY_TYPE],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_KEYPASSWD:
-    /*
-     * String that holds the SSL or SSH private key password.
-     */
-    result = setstropt(&data->set.str[STRING_KEY_PASSWD],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_SSLENGINE:
-    /*
-     * String that holds the SSL crypto engine.
-     */
-    argptr = va_arg(param, char *);
-    if(argptr && argptr[0])
-      result = Curl_ssl_set_engine(data, argptr);
-    break;
-
-  case CURLOPT_SSLENGINE_DEFAULT:
-    /*
-     * flag to set engine as default.
-     */
-    result = Curl_ssl_set_engine_default(data);
-    break;
-  case CURLOPT_CRLF:
-    /*
-     * Kludgy option to enable CRLF conversions. Subject for removal.
-     */
-    data->set.crlf = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_INTERFACE:
-    /*
-     * Set what interface or address/hostname to bind the socket to when
-     * performing an operation and thus what from-IP your connection will use.
-     */
-    result = setstropt(&data->set.str[STRING_DEVICE],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_LOCALPORT:
-    /*
-     * Set what local port to bind the socket to when performing an operation.
-     */
-    data->set.localport = (unsigned short) va_arg(param, long);
-    break;
-  case CURLOPT_LOCALPORTRANGE:
-    /*
-     * Set number of local ports to try, starting with CURLOPT_LOCALPORT.
-     */
-    data->set.localportrange = (int) va_arg(param, long);
-    break;
-  case CURLOPT_KRBLEVEL:
-    /*
-     * A string that defines the kerberos security level.
-     */
-    result = setstropt(&data->set.str[STRING_KRB_LEVEL],
-                       va_arg(param, char *));
-    data->set.krb = (bool)(NULL != data->set.str[STRING_KRB_LEVEL]);
-    break;
-  case CURLOPT_SSL_VERIFYPEER:
-    /*
-     * Enable peer SSL verifying.
-     */
-    data->set.ssl.verifypeer = va_arg(param, long);
-    break;
-  case CURLOPT_SSL_VERIFYHOST:
-    /*
-     * Enable verification of the CN contained in the peer certificate
-     */
-    data->set.ssl.verifyhost = va_arg(param, long);
-    break;
-#ifdef USE_SSLEAY
-    /* since these two options are only possible to use on an OpenSSL-
-       powered libcurl we #ifdef them on this condition so that libcurls
-       built against other SSL libs will return a proper error when trying
-       to set this option! */
-  case CURLOPT_SSL_CTX_FUNCTION:
-    /*
-     * Set a SSL_CTX callback
-     */
-    data->set.ssl.fsslctx = va_arg(param, curl_ssl_ctx_callback);
-    break;
-  case CURLOPT_SSL_CTX_DATA:
-    /*
-     * Set a SSL_CTX callback parameter pointer
-     */
-    data->set.ssl.fsslctxp = va_arg(param, void *);
-    break;
-  case CURLOPT_CERTINFO:
-    data->set.ssl.certinfo = (bool)(0 != va_arg(param, long));
-    break;
-#endif
-  case CURLOPT_CAINFO:
-    /*
-     * Set CA info for SSL connection. Specify file name of the CA certificate
-     */
-    result = setstropt(&data->set.str[STRING_SSL_CAFILE],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_CAPATH:
-    /*
-     * Set CA path info for SSL connection. Specify directory name of the CA
-     * certificates which have been prepared using openssl c_rehash utility.
-     */
-    /* This does not work on windows. */
-    result = setstropt(&data->set.str[STRING_SSL_CAPATH],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_CRLFILE:
-    /*
-     * Set CRL file info for SSL connection. Specify file name of the CRL
-     * to check certificates revocation
-     */
-    result = setstropt(&data->set.str[STRING_SSL_CRLFILE],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_ISSUERCERT:
-    /*
-     * Set Issuer certificate file
-     * to check certificates issuer
-     */
-    result = setstropt(&data->set.str[STRING_SSL_ISSUERCERT],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_TELNETOPTIONS:
-    /*
-     * Set a linked list of telnet options
-     */
-    data->set.telnet_options = va_arg(param, struct curl_slist *);
-    break;
-
-  case CURLOPT_BUFFERSIZE:
-    /*
-     * The application kindly asks for a differently sized receive buffer.
-     * If it seems reasonable, we'll use it.
-     */
-    data->set.buffer_size = va_arg(param, long);
-
-    if((data->set.buffer_size> (BUFSIZE -1 )) ||
-       (data->set.buffer_size < 1))
-      data->set.buffer_size = 0; /* huge internal default */
-
-    break;
-
-  case CURLOPT_NOSIGNAL:
-    /*
-     * The application asks not to set any signal() or alarm() handlers,
-     * even when using a timeout.
-     */
-    data->set.no_signal = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_SHARE:
-  {
-    struct Curl_share *set;
-    set = va_arg(param, struct Curl_share *);
-
-    /* disconnect from old share, if any */
-    if(data->share) {
-      Curl_share_lock(data, CURL_LOCK_DATA_SHARE, CURL_LOCK_ACCESS_SINGLE);
-
-      if(data->dns.hostcachetype == HCACHE_SHARED) {
-        data->dns.hostcache = NULL;
-        data->dns.hostcachetype = HCACHE_NONE;
-      }
-
-      if(data->share->cookies == data->cookies)
-        data->cookies = NULL;
-
-      data->share->dirty--;
-
-      Curl_share_unlock(data, CURL_LOCK_DATA_SHARE);
-      data->share = NULL;
-    }
-
-    /* use new share if it set */
-    data->share = set;
-    if(data->share) {
-
-      Curl_share_lock(data, CURL_LOCK_DATA_SHARE, CURL_LOCK_ACCESS_SINGLE);
-
-      data->share->dirty++;
-
-      if(data->share->hostcache) {
-        /* use shared host cache, first free the private one if any */
-        if(data->dns.hostcachetype == HCACHE_PRIVATE)
-          Curl_hash_destroy(data->dns.hostcache);
-
-        data->dns.hostcache = data->share->hostcache;
-        data->dns.hostcachetype = HCACHE_SHARED;
-      }
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
-      if(data->share->cookies) {
-        /* use shared cookie list, first free own one if any */
-        if(data->cookies)
-          Curl_cookie_cleanup(data->cookies);
-        /* enable cookies since we now use a share that uses cookies! */
-        data->cookies = data->share->cookies;
-      }
-#endif   /* CURL_DISABLE_HTTP */
-      Curl_share_unlock(data, CURL_LOCK_DATA_SHARE);
-
-    }
-    /* check for host cache not needed,
-     * it will be done by curl_easy_perform */
-  }
-  break;
-
-  case CURLOPT_PRIVATE:
-    /*
-     * Set private data pointer.
-     */
-    data->set.private_data = va_arg(param, void *);
-    break;
-
-  case CURLOPT_MAXFILESIZE:
-    /*
-     * Set the maximum size of a file to download.
-     */
-    data->set.max_filesize = va_arg(param, long);
-    break;
-
-  case CURLOPT_USE_SSL:
-    /*
-     * Make transfers attempt to use SSL/TLS.
-     */
-    data->set.ftp_ssl = (curl_usessl)va_arg(param, long);
-    break;
-
-  case CURLOPT_FTPSSLAUTH:
-    /*
-     * Set a specific auth for FTP-SSL transfers.
-     */
-    data->set.ftpsslauth = (curl_ftpauth)va_arg(param, long);
-    break;
-
-  case CURLOPT_IPRESOLVE:
-    data->set.ip_version = va_arg(param, long);
-    break;
-
-  case CURLOPT_MAXFILESIZE_LARGE:
-    /*
-     * Set the maximum size of a file to download.
-     */
-    data->set.max_filesize = va_arg(param, curl_off_t);
-    break;
-
-  case CURLOPT_TCP_NODELAY:
-    /*
-     * Enable or disable TCP_NODELAY, which will disable/enable the Nagle
-     * algorithm
-     */
-    data->set.tcp_nodelay = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_FTP_ACCOUNT:
-    result = setstropt(&data->set.str[STRING_FTP_ACCOUNT],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_IGNORE_CONTENT_LENGTH:
-    data->set.ignorecl = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_CONNECT_ONLY:
-    /*
-     * No data transfer, set up connection and let application use the socket
-     */
-    data->set.connect_only = (bool)(0 != va_arg(param, long));
-    break;
-
-  case CURLOPT_FTP_ALTERNATIVE_TO_USER:
-    result = setstropt(&data->set.str[STRING_FTP_ALTERNATIVE_TO_USER],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_SOCKOPTFUNCTION:
-    /*
-     * socket callback function: called after socket() but before connect()
-     */
-    data->set.fsockopt = va_arg(param, curl_sockopt_callback);
-    break;
-
-  case CURLOPT_SOCKOPTDATA:
-    /*
-     * socket callback data pointer. Might be NULL.
-     */
-    data->set.sockopt_client = va_arg(param, void *);
-    break;
-
-  case CURLOPT_OPENSOCKETFUNCTION:
-    /*
-     * open/create socket callback function: called instead of socket(),
-     * before connect()
-     */
-    data->set.fopensocket = va_arg(param, curl_opensocket_callback);
-    break;
-
-  case CURLOPT_OPENSOCKETDATA:
-    /*
-     * socket callback data pointer. Might be NULL.
-     */
-    data->set.opensocket_client = va_arg(param, void *);
-    break;
-
-  case CURLOPT_SSL_SESSIONID_CACHE:
-    data->set.ssl.sessionid = (bool)(0 != va_arg(param, long));
-    break;
-
-#ifdef USE_LIBSSH2
-    /* we only include SSH options if explicitly built to support SSH */
-  case CURLOPT_SSH_AUTH_TYPES:
-    data->set.ssh_auth_types = va_arg(param, long);
-    break;
-
-  case CURLOPT_SSH_PUBLIC_KEYFILE:
-    /*
-     * Use this file instead of the $HOME/.ssh/id_dsa.pub file
-     */
-    result = setstropt(&data->set.str[STRING_SSH_PUBLIC_KEY],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_SSH_PRIVATE_KEYFILE:
-    /*
-     * Use this file instead of the $HOME/.ssh/id_dsa file
-     */
-    result = setstropt(&data->set.str[STRING_SSH_PRIVATE_KEY],
-                       va_arg(param, char *));
-    break;
-  case CURLOPT_SSH_HOST_PUBLIC_KEY_MD5:
-    /*
-     * Option to allow for the MD5 of the host public key to be checked
-     * for validation purposes.
-     */
-    result = setstropt(&data->set.str[STRING_SSH_HOST_PUBLIC_KEY_MD5],
-                       va_arg(param, char *));
-    break;
-#ifdef HAVE_LIBSSH2_KNOWNHOST_API
-  case CURLOPT_SSH_KNOWNHOSTS:
-    /*
-     * Store the file name to read known hosts from.
-     */
-    result = setstropt(&data->set.str[STRING_SSH_KNOWNHOSTS],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_SSH_KEYFUNCTION:
-    /* setting to NULL is fine since the ssh.c functions themselves will
-       then rever to use the internal default */
-    data->set.ssh_keyfunc = va_arg(param, curl_sshkeycallback);
-    break;
-
-  case CURLOPT_SSH_KEYDATA:
-    /*
-     * Custom client data to pass to the SSH keyfunc callback
-     */
-    data->set.ssh_keyfunc_userp = va_arg(param, void *);
-    break;
-#endif /* HAVE_LIBSSH2_KNOWNHOST_API */
-
-#endif /* USE_LIBSSH2 */
-
-  case CURLOPT_HTTP_TRANSFER_DECODING:
-    /*
-     * disable libcurl transfer encoding is used
-     */
-    data->set.http_te_skip = (bool)(0 == va_arg(param, long));
-    break;
-
-  case CURLOPT_HTTP_CONTENT_DECODING:
-    /*
-     * raw data passed to the application when content encoding is used
-     */
-    data->set.http_ce_skip = (bool)(0 == va_arg(param, long));
-    break;
-
-  case CURLOPT_NEW_FILE_PERMS:
-    /*
-     * Uses these permissions instead of 0644
-     */
-    data->set.new_file_perms = va_arg(param, long);
-    break;
-
-  case CURLOPT_NEW_DIRECTORY_PERMS:
-    /*
-     * Uses these permissions instead of 0755
-     */
-    data->set.new_directory_perms = va_arg(param, long);
-    break;
-
-  case CURLOPT_ADDRESS_SCOPE:
-    /*
-     * We always get longs when passed plain numericals, but for this value we
-     * know that an unsigned int will always hold the value so we blindly
-     * typecast to this type
-     */
-    data->set.scope = (unsigned int) va_arg(param, long);
-    break;
-
-  case CURLOPT_PROTOCOLS:
-    /* set the bitmask for the protocols that are allowed to be used for the
-       transfer, which thus helps the app which takes URLs from users or other
-       external inputs and want to restrict what protocol(s) to deal
-       with. Defaults to CURLPROTO_ALL. */
-    data->set.allowed_protocols = va_arg(param, long) & PROT_EXTMASK;
-    break;
-
-  case CURLOPT_REDIR_PROTOCOLS:
-    /* set the bitmask for the protocols that libcurl is allowed to follow to,
-       as a subset of the CURLOPT_PROTOCOLS ones. That means the protocol needs
-       to be set in both bitmasks to be allowed to get redirected to. Defaults
-       to all protocols except FILE and SCP. */
-    data->set.redir_protocols = va_arg(param, long) & PROT_EXTMASK;
-    break;
-
-  case CURLOPT_MAIL_FROM:
-    result = setstropt(&data->set.str[STRING_MAIL_FROM],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_MAIL_RCPT:
-    /* get a list of mail recipients */
-    data->set.mail_rcpt = va_arg(param, struct curl_slist *);
-    break;
-
-  case CURLOPT_RTSP_REQUEST:
-    {
-      /*
-       * Set the RTSP request method (OPTIONS, SETUP, PLAY, etc...)
-       * Would this be better if the RTSPREQ_* were just moved into here?
-       */
-      long curl_rtspreq = va_arg(param, long);
-      Curl_RtspReq rtspreq = RTSPREQ_NONE;
-      switch(curl_rtspreq) {
-        case CURL_RTSPREQ_OPTIONS:
-          rtspreq = RTSPREQ_OPTIONS;
-          break;
-
-        case CURL_RTSPREQ_DESCRIBE:
-          rtspreq = RTSPREQ_DESCRIBE;
-          break;
-
-        case CURL_RTSPREQ_ANNOUNCE:
-          rtspreq = RTSPREQ_ANNOUNCE;
-          break;
-
-        case CURL_RTSPREQ_SETUP:
-          rtspreq = RTSPREQ_SETUP;
-          break;
-
-        case CURL_RTSPREQ_PLAY:
-          rtspreq = RTSPREQ_PLAY;
-          break;
-
-        case CURL_RTSPREQ_PAUSE:
-          rtspreq = RTSPREQ_PAUSE;
-          break;
-
-        case CURL_RTSPREQ_TEARDOWN:
-          rtspreq = RTSPREQ_TEARDOWN;
-          break;
-
-        case CURL_RTSPREQ_GET_PARAMETER:
-          rtspreq = RTSPREQ_GET_PARAMETER;
-          break;
-
-        case CURL_RTSPREQ_SET_PARAMETER:
-          rtspreq = RTSPREQ_SET_PARAMETER;
-          break;
-
-        case CURL_RTSPREQ_RECORD:
-          rtspreq = RTSPREQ_RECORD;
-          break;
-
-        case CURL_RTSPREQ_RECEIVE:
-          rtspreq = RTSPREQ_RECEIVE;
-          break;
-        default:
-          rtspreq = RTSPREQ_NONE;
-      }
-
-      data->set.rtspreq = rtspreq;
-    break;
-    }
-
-
-  case CURLOPT_RTSP_SESSION_ID:
-    /*
-     * Set the RTSP Session ID manually. Useful if the application is
-     * resuming a previously established RTSP session
-     */
-    result = setstropt(&data->set.str[STRING_RTSP_SESSION_ID],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_RTSP_STREAM_URI:
-    /*
-     * Set the Stream URI for the RTSP request. Unless the request is
-     * for generic server options, the application will need to set this.
-     */
-    result = setstropt(&data->set.str[STRING_RTSP_STREAM_URI],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_RTSP_TRANSPORT:
-    /*
-     * The content of the Transport: header for the RTSP request
-     */
-    result = setstropt(&data->set.str[STRING_RTSP_TRANSPORT],
-                       va_arg(param, char *));
-    break;
-
-  case CURLOPT_RTSP_CLIENT_CSEQ:
-    /*
-     * Set the CSEQ number to issue for the next RTSP request. Useful if the
-     * application is resuming a previously broken connection. The CSEQ
-     * will increment from this new number henceforth.
-     */
-    data->state.rtsp_next_client_CSeq = va_arg(param, long);
-    break;
-
-  case CURLOPT_RTSP_SERVER_CSEQ:
-    /* Same as the above, but for server-initiated requests */
-    data->state.rtsp_next_client_CSeq = va_arg(param, long);
-    break;
-
-  case CURLOPT_INTERLEAVEDATA:
-    data->set.rtp_out = va_arg(param, void *);
-    break;
-  case CURLOPT_INTERLEAVEFUNCTION:
-    /* Set the user defined RTP write function */
-    data->set.fwrite_rtp = va_arg(param, curl_write_callback);
-    break;
-  default:
-    /* unknown tag and its companion, just ignore: */
-    result = CURLE_FAILED_INIT; /* correct this */
-    break;
-  }
-
-  return result;
-}
-
-static void conn_free(struct connectdata *conn)
-{
-  if(!conn)
-    return;
-
-  /* close the SSL stuff before we close any sockets since they will/may
-     write to the sockets */
-  Curl_ssl_close(conn, FIRSTSOCKET);
-  Curl_ssl_close(conn, SECONDARYSOCKET);
-
-  /* close possibly still open sockets */
-  if(CURL_SOCKET_BAD != conn->sock[SECONDARYSOCKET])
-    sclose(conn->sock[SECONDARYSOCKET]);
-  if(CURL_SOCKET_BAD != conn->sock[FIRSTSOCKET])
-    sclose(conn->sock[FIRSTSOCKET]);
-
-  Curl_safefree(conn->user);
-  Curl_safefree(conn->passwd);
-  Curl_safefree(conn->proxyuser);
-  Curl_safefree(conn->proxypasswd);
-  Curl_safefree(conn->allocptr.proxyuserpwd);
-  Curl_safefree(conn->allocptr.uagent);
-  Curl_safefree(conn->allocptr.userpwd);
-  Curl_safefree(conn->allocptr.accept_encoding);
-  Curl_safefree(conn->allocptr.rangeline);
-  Curl_safefree(conn->allocptr.ref);
-  Curl_safefree(conn->allocptr.host);
-  Curl_safefree(conn->allocptr.cookiehost);
-  Curl_safefree(conn->allocptr.rtsp_transport);
-  Curl_safefree(conn->trailer);
-  Curl_safefree(conn->host.rawalloc); /* host name buffer */
-  Curl_safefree(conn->proxy.rawalloc); /* proxy name buffer */
-  Curl_safefree(conn->master_buffer);
-
-  Curl_llist_destroy(conn->send_pipe, NULL);
-  Curl_llist_destroy(conn->recv_pipe, NULL);
-  Curl_llist_destroy(conn->pend_pipe, NULL);
-  Curl_llist_destroy(conn->done_pipe, NULL);
-
-  /* possible left-overs from the async name resolvers */
-#if defined(CURLRES_THREADED)
-  Curl_destroy_thread_data(&conn->async);
-#elif defined(CURLRES_ASYNCH)
-  Curl_safefree(conn->async.hostname);
-  Curl_safefree(conn->async.os_specific);
-#endif
-
-  Curl_free_ssl_config(&conn->ssl_config);
-
-  free(conn); /* free all the connection oriented data */
-}
-
-CURLcode Curl_disconnect(struct connectdata *conn)
-{
-  struct SessionHandle *data;
-  if(!conn)
-    return CURLE_OK; /* this is closed and fine already */
-  data = conn->data;
-
-  if(!data) {
-    DEBUGF(infof(data, "DISCONNECT without easy handle, ignoring\n"));
-    return CURLE_OK;
-  }
-
-  if(conn->dns_entry != NULL) {
-    Curl_resolv_unlock(data, conn->dns_entry);
-    conn->dns_entry = NULL;
-  }
-
-#if defined(DEBUGBUILD) && defined(AGGRESIVE_TEST)
-  /* scan for DNS cache entries still marked as in use */
-  Curl_hash_apply(data->hostcache,
-                  NULL, Curl_scan_cache_used);
-#endif
-
-  Curl_expire(data, 0); /* shut off timers */
-  Curl_hostcache_prune(data); /* kill old DNS cache entries */
-
-  {
-    int has_host_ntlm = (conn->ntlm.state != NTLMSTATE_NONE);
-    int has_proxy_ntlm = (conn->proxyntlm.state != NTLMSTATE_NONE);
-
-    /* Authentication data is a mix of connection-related and sessionhandle-
-       related stuff. NTLM is connection-related so when we close the shop
-       we shall forget. */
-
-    if (has_host_ntlm) {
-      data->state.authhost.done = FALSE;
-      data->state.authhost.picked =
-        data->state.authhost.want;
-    }
-
-    if (has_proxy_ntlm) {
-      data->state.authproxy.done = FALSE;
-      data->state.authproxy.picked =
-        data->state.authproxy.want;
-    }
-
-    if (has_host_ntlm || has_proxy_ntlm) {
-      data->state.authproblem = FALSE;
-
-      Curl_ntlm_cleanup(conn);
-    }
-  }
-
-  /* Cleanup possible redirect junk */
-  if(data->req.newurl) {
-    free(data->req.newurl);
-    data->req.newurl = NULL;
-  }
-
-  if(conn->handler->disconnect)
-    /* This is set if protocol-specific cleanups should be made */
-    conn->handler->disconnect(conn);
-
-  if(-1 != conn->connectindex) {
-    /* unlink ourselves! */
-    infof(data, "Closing connection #%ld\n", conn->connectindex);
-    if(data->state.connc)
-      /* only clear the table entry if we still know in which cache we
-         used to be in */
-      data->state.connc->connects[conn->connectindex] = NULL;
-  }
-
-#ifdef USE_LIBIDN
-  if(conn->host.encalloc)
-    idn_free(conn->host.encalloc); /* encoded host name buffer, must be freed
-                                      with idn_free() since this was allocated
-                                      by libidn */
-  if(conn->proxy.encalloc)
-    idn_free(conn->proxy.encalloc); /* encoded proxy name buffer, must be
-                                       freed with idn_free() since this was
-                                       allocated by libidn */
-#endif
-
-  Curl_ssl_close(conn, FIRSTSOCKET);
-
-  /* Indicate to all handles on the pipe that we're dead */
-  if(Curl_isPipeliningEnabled(data)) {
-    signalPipeClose(conn->send_pipe, TRUE);
-    signalPipeClose(conn->recv_pipe, TRUE);
-    signalPipeClose(conn->pend_pipe, TRUE);
-    signalPipeClose(conn->done_pipe, FALSE);
-  }
-
-  conn_free(conn);
-  data->state.current_conn = NULL;
-
-  return CURLE_OK;
-}
-
-/*
- * This function should return TRUE if the socket is to be assumed to
- * be dead. Most commonly this happens when the server has closed the
- * connection due to inactivity.
- */
-static bool SocketIsDead(curl_socket_t sock)
-{
-  int sval;
-  bool ret_val = TRUE;
-
-  sval = Curl_socket_ready(sock, CURL_SOCKET_BAD, 0);
-  if(sval == 0)
-    /* timeout */
-    ret_val = FALSE;
-
-  return ret_val;
-}
-
-#ifndef CURL_DISABLE_RTSP
-/*
- * The server may send us RTP data at any point, and RTSPREQ_RECEIVE does not
- * want to block the application forever while receiving a stream. Therefore,
- * we cannot assume that an RTSP socket is dead just because it is readable.
- *
- * Instead, if it is readable, run Curl_getconnectinfo() to peek at the socket
- * and distinguish between closed and data.
- */
-static bool RTSPConnIsDead(struct connectdata *check)
-{
-  int sval;
-  bool ret_val = TRUE;
-
-  sval = Curl_socket_ready(check->sock[FIRSTSOCKET], CURL_SOCKET_BAD, 0);
-  if(sval == 0) {
-    /* timeout */
-    ret_val = FALSE;
-  }
-  else if (sval & CURL_CSELECT_ERR) {
-    /* socket is in an error state */
-    ret_val = TRUE;
-  }
-  else if (sval & CURL_CSELECT_IN) {
-    /* readable with no error. could be closed or could be alive */
-    long connectinfo = 0;
-    Curl_getconnectinfo(check->data, &connectinfo, &check);
-    if(connectinfo != -1) {
-      ret_val = FALSE;
-    }
-  }
-
-  return ret_val;
-}
-#endif /* CURL_DISABLE_RTSP */
-
-static bool IsPipeliningPossible(const struct SessionHandle *handle)
-{
-  if(handle->multi && Curl_multi_canPipeline(handle->multi) &&
-      (handle->set.httpreq == HTTPREQ_GET ||
-       handle->set.httpreq == HTTPREQ_HEAD) &&
-      handle->set.httpversion != CURL_HTTP_VERSION_1_0)
-    return TRUE;
-
-  return FALSE;
-}
-
-bool Curl_isPipeliningEnabled(const struct SessionHandle *handle)
-{
-  if(handle->multi && Curl_multi_canPipeline(handle->multi))
-    return TRUE;
-
-  return FALSE;
-}
-
-CURLcode Curl_addHandleToPipeline(struct SessionHandle *data,
-                                  struct curl_llist *pipeline)
-{
-#ifdef DEBUGBUILD
-  if(!IsPipeliningPossible(data)) {
-    /* when not pipelined, there MUST be no handle in the list already */
-    if(pipeline->head)
-      infof(data, "PIPE when no PIPE supposed!\n");
-  }
-#endif
-  if(!Curl_llist_insert_next(pipeline, pipeline->tail, data))
-    return CURLE_OUT_OF_MEMORY;
-  return CURLE_OK;
-}
-
-int Curl_removeHandleFromPipeline(struct SessionHandle *handle,
-                                  struct curl_llist *pipeline)
-{
-  struct curl_llist_element *curr;
-
-  curr = pipeline->head;
-  while(curr) {
-    if(curr->ptr == handle) {
-      Curl_llist_remove(pipeline, curr, NULL);
-      return 1; /* we removed a handle */
-    }
-    curr = curr->next;
-  }
-
-  return 0;
-}
-
-#if 0 /* this code is saved here as it is useful for debugging purposes */
-static void Curl_printPipeline(struct curl_llist *pipeline)
-{
-  struct curl_llist_element *curr;
-
-  curr = pipeline->head;
-  while(curr) {
-    struct SessionHandle *data = (struct SessionHandle *) curr->ptr;
-    infof(data, "Handle in pipeline: %s\n", data->state.path);
-    curr = curr->next;
-  }
-}
-#endif
-
-static struct SessionHandle* gethandleathead(struct curl_llist *pipeline)
-{
-  struct curl_llist_element *curr = pipeline->head;
-  if(curr) {
-    return (struct SessionHandle *) curr->ptr;
-  }
-
-  return NULL;
-}
-
-/* remove the specified connection from all (possible) pipelines and related
-   queues */
-void Curl_getoff_all_pipelines(struct SessionHandle *data,
-                               struct connectdata *conn)
-{
-  bool recv_head = (bool)(conn->readchannel_inuse &&
-    (gethandleathead(conn->recv_pipe) == data));
-
-  bool send_head = (bool)(conn->writechannel_inuse &&
-    (gethandleathead(conn->send_pipe) == data));
-
-  if(Curl_removeHandleFromPipeline(data, conn->recv_pipe) && recv_head)
-    conn->readchannel_inuse = FALSE;
-  if(Curl_removeHandleFromPipeline(data, conn->send_pipe) && send_head)
-    conn->writechannel_inuse = FALSE;
-  Curl_removeHandleFromPipeline(data, conn->pend_pipe);
-  Curl_removeHandleFromPipeline(data, conn->done_pipe);
-}
-
-static void signalPipeClose(struct curl_llist *pipeline, bool pipe_broke)
-{
-  struct curl_llist_element *curr;
-
-  if(!pipeline)
-    return;
-
-  curr = pipeline->head;
-  while(curr) {
-    struct curl_llist_element *next = curr->next;
-    struct SessionHandle *data = (struct SessionHandle *) curr->ptr;
-
-#ifdef DEBUGBUILD /* debug-only code */
-    if(data->magic != CURLEASY_MAGIC_NUMBER) {
-      /* MAJOR BADNESS */
-      infof(data, "signalPipeClose() found BAAD easy handle\n");
-    }
-#endif
-
-    if (pipe_broke)
-       data->state.pipe_broke = TRUE;
-    Curl_multi_handlePipeBreak(data);
-    Curl_llist_remove(pipeline, curr, NULL);
-    curr = next;
-  }
-}
-
-
-/*
- * Given one filled in connection struct (named needle), this function should
- * detect if there already is one that has all the significant details
- * exactly the same and thus should be used instead.
- *
- * If there is a match, this function returns TRUE - and has marked the
- * connection as 'in-use'. It must later be called with ConnectionDone() to
- * return back to 'idle' (unused) state.
- */
-static bool
-ConnectionExists(struct SessionHandle *data,
-                 struct connectdata *needle,
-                 struct connectdata **usethis)
-{
-  long i;
-  struct connectdata *check;
-  bool canPipeline = IsPipeliningPossible(data);
-
-  for(i=0; i< data->state.connc->num; i++) {
-    bool match = FALSE;
-    size_t pipeLen = 0;
-    /*
-     * Note that if we use a HTTP proxy, we check connections to that
-     * proxy and not to the actual remote server.
-     */
-    check = data->state.connc->connects[i];
-    if(!check)
-      /* NULL pointer means not filled-in entry */
-      continue;
-
-    pipeLen = check->send_pipe->size + check->recv_pipe->size;
-
-    if(check->connectindex == -1) {
-      check->connectindex = i; /* Set this appropriately since it might have
-                                  been set to -1 when the easy was removed
-                                  from the multi */
-    }
-
-    if(!pipeLen && !check->inuse) {
-      /* The check for a dead socket makes sense only if there are no
-         handles in pipeline and the connection isn't already marked in
-         use */
-      bool dead;
-#ifndef CURL_DISABLE_RTSP
-      if(check->protocol & PROT_RTSP)
-        /* RTSP is a special case due to RTP interleaving */
-        dead = RTSPConnIsDead(check);
-      else
-#endif /*CURL_DISABLE_RTSP*/
-        dead = SocketIsDead(check->sock[FIRSTSOCKET]);
-
-      if(dead) {
-        check->data = data;
-        infof(data, "Connection #%ld seems to be dead!\n", i);
-
-        Curl_disconnect(check); /* disconnect resources */
-        data->state.connc->connects[i]=NULL; /* nothing here */
-
-        continue;
-      }
-    }
-
-    if(canPipeline) {
-      /* Make sure the pipe has only GET requests */
-      struct SessionHandle* sh = gethandleathead(check->send_pipe);
-      struct SessionHandle* rh = gethandleathead(check->recv_pipe);
-      if(sh) {
-        if(!IsPipeliningPossible(sh))
-          continue;
-      }
-      else if(rh) {
-        if(!IsPipeliningPossible(rh))
-          continue;
-      }
-
-#ifdef DEBUGBUILD
-      if(pipeLen > MAX_PIPELINE_LENGTH) {
-        infof(data, "BAD! Connection #%ld has too big pipeline!\n",
-              check->connectindex);
-      }
-#endif
-    }
-    else {
-      if(pipeLen > 0) {
-        /* can only happen within multi handles, and means that another easy
-           handle is using this connection */
-        continue;
-      }
-
-#ifdef CURLRES_ASYNCH
-      /* ip_addr_str[0] is NUL only if the resolving of the name hasn't
-         completed yet and until then we don't re-use this connection */
-      if(!check->ip_addr_str[0]) {
-        infof(data,
-              "Connection #%ld hasn't finished name resolve, can't reuse\n",
-              check->connectindex);
-        continue;
-      }
-#endif
-
-      if((check->sock[FIRSTSOCKET] == CURL_SOCKET_BAD) || check->bits.close) {
-        /* Don't pick a connection that hasn't connected yet or that is going
-           to get closed. */
-        infof(data, "Connection #%ld isn't open enough, can't reuse\n",
-              check->connectindex);
-#ifdef DEBUGBUILD
-        if(check->recv_pipe->size > 0) {
-          infof(data, "BAD! Unconnected #%ld has a non-empty recv pipeline!\n",
-                check->connectindex);
-        }
-#endif
-        continue;
-      }
-    }
-
-    if((needle->protocol&PROT_SSL) != (check->protocol&PROT_SSL))
-      /* don't do mixed SSL and non-SSL connections */
-      continue;
-
-    if(needle->protocol&PROT_SSL) {
-      if((data->set.ssl.verifypeer != check->verifypeer) ||
-         (data->set.ssl.verifyhost != check->verifyhost))
-        continue;
-    }
-
-    if(needle->bits.proxy != check->bits.proxy)
-      /* don't do mixed proxy and non-proxy connections */
-      continue;
-
-    if(!canPipeline && check->inuse)
-      /* this request can't be pipelined but the checked connection is already
-         in use so we skip it */
-      continue;
-
-    if(!needle->bits.httpproxy || needle->protocol&PROT_SSL ||
-       (needle->bits.httpproxy && check->bits.httpproxy &&
-        needle->bits.tunnel_proxy && check->bits.tunnel_proxy &&
-        Curl_raw_equal(needle->proxy.name, check->proxy.name) &&
-        (needle->port == check->port))) {
-      /* The requested connection does not use a HTTP proxy or it uses SSL or
-         it is a non-SSL protocol tunneled over the same http proxy name and
-         port number */
-
-      if(Curl_raw_equal(needle->handler->scheme, check->handler->scheme) &&
-         Curl_raw_equal(needle->host.name, check->host.name) &&
-         (needle->remote_port == check->remote_port) ) {
-        if(needle->protocol & PROT_SSL) {
-          /* This is SSL, verify that we're using the same
-             ssl options as well */
-          if(!Curl_ssl_config_matches(&needle->ssl_config,
-                                      &check->ssl_config)) {
-            DEBUGF(infof(data,
-                         "Connection #%ld has different SSL parameters, "
-                         "can't reuse\n",
-                         check->connectindex));
-            continue;
-          }
-          else if(check->ssl[FIRSTSOCKET].state != ssl_connection_complete) {
-            DEBUGF(infof(data,
-                         "Connection #%ld has not started ssl connect, "
-                         "can't reuse\n",
-                         check->connectindex));
-            continue;
-          }
-        }
-        if((needle->protocol & PROT_FTP) ||
-           ((needle->protocol & PROT_HTTP) &&
-            (data->state.authhost.want==CURLAUTH_NTLM))) {
-          /* This is FTP or HTTP+NTLM, verify that we're using the same name
-             and password as well */
-          if(!strequal(needle->user, check->user) ||
-             !strequal(needle->passwd, check->passwd)) {
-            /* one of them was different */
-            continue;
-          }
-        }
-        match = TRUE;
-      }
-    }
-    else { /* The requested needle connection is using a proxy,
-              is the checked one using the same host, port and type? */
-      if(check->bits.proxy &&
-         (needle->proxytype == check->proxytype) &&
-         (needle->bits.tunnel_proxy == check->bits.tunnel_proxy) &&
-         Curl_raw_equal(needle->proxy.name, check->proxy.name) &&
-         needle->port == check->port) {
-        /* This is the same proxy connection, use it! */
-        match = TRUE;
-      }
-    }
-
-    if(match) {
-      check->inuse = TRUE; /* mark this as being in use so that no other
-                              handle in a multi stack may nick it */
-
-      *usethis = check;
-      return TRUE; /* yes, we found one to use! */
-    }
-  }
-
-  return FALSE; /* no matching connecting exists */
-}
-
-
-
-/*
- * This function frees/closes a connection in the connection cache. This
- * should take the previously set policy into account when deciding which
- * of the connections to kill.
- */
-static long
-ConnectionKillOne(struct SessionHandle *data)
-{
-  long i;
-  struct connectdata *conn;
-  long highscore=-1;
-  long connindex=-1;
-  long score;
-  struct timeval now;
-
-  now = Curl_tvnow();
-
-  for(i=0; data->state.connc && (i< data->state.connc->num); i++) {
-    conn = data->state.connc->connects[i];
-
-    if(!conn || conn->inuse)
-      continue;
-
-    /* Set higher score for the age passed since the connection was used */
-    score = Curl_tvdiff(now, conn->now);
-
-    if(score > highscore) {
-      highscore = score;
-      connindex = i;
-    }
-  }
-  if(connindex >= 0) {
-    /* Set the connection's owner correctly */
-    conn = data->state.connc->connects[connindex];
-    conn->data = data;
-
-    /* the winner gets the honour of being disconnected */
-    (void)Curl_disconnect(conn);
-
-    /* clean the array entry */
-    data->state.connc->connects[connindex] = NULL;
-  }
-
-  return connindex; /* return the available index or -1 */
-}
-
-/* this connection can now be marked 'idle' */
-static void
-ConnectionDone(struct connectdata *conn)
-{
-  conn->inuse = FALSE;
-}
-
-/*
- * The given input connection struct pointer is to be stored. If the "cache"
- * is already full, we must clean out the most suitable using the previously
- * set policy.
- *
- * The given connection should be unique. That must've been checked prior to
- * this call.
- */
-static long
-ConnectionStore(struct SessionHandle *data,
-                struct connectdata *conn)
-{
-  long i;
-  for(i=0; i< data->state.connc->num; i++) {
-    if(!data->state.connc->connects[i])
-      break;
-  }
-  if(i == data->state.connc->num) {
-    /* there was no room available, kill one */
-    i = ConnectionKillOne(data);
-    if(-1 != i)
-      infof(data, "Connection (#%ld) was killed to make room (holds %ld)\n",
-            i, data->state.connc->num);
-    else
-      infof(data, "This connection did not fit in the connection cache\n");
-  }
-
-  conn->connectindex = i; /* Make the child know where the pointer to this
-                             particular data is stored. But note that this -1
-                             if this is not within the cache and this is
-                             probably not checked for everywhere (yet). */
-  conn->inuse = TRUE;
-  if(-1 != i) {
-    /* Only do this if a true index was returned, if -1 was returned there
-       is no room in the cache for an unknown reason and we cannot store
-       this there.
-
-       TODO: make sure we really can work with more handles than positions in
-       the cache, or possibly we should (allow to automatically) resize the
-       connection cache when we add more easy handles to a multi handle!
-    */
-    data->state.connc->connects[i] = conn; /* fill in this */
-    conn->data = data;
-  }
-
-  return i;
-}
-
-/* after a TCP connection to the proxy has been verified, this function does
-   the next magic step.
-
-   Note: this function (and its sub-functions) calls failf()
-
-*/
-CURLcode Curl_connected_proxy(struct connectdata *conn)
-{
-  CURLcode result = CURLE_OK;
-  struct SessionHandle *data = conn->data;
-
-  if(conn->bits.tcpconnect)
-    /* allow this to get called again from the multi interface when TCP is
-       found connected in the state machine, even though it has already been
-       called if the connection happened "instantly" */
-    return CURLE_OK;
-
-  switch(data->set.proxytype) {
-#ifndef CURL_DISABLE_PROXY
-  case CURLPROXY_SOCKS5:
-  case CURLPROXY_SOCKS5_HOSTNAME:
-    result = Curl_SOCKS5(conn->proxyuser, conn->proxypasswd,
-                         conn->host.name, conn->remote_port,
-                         FIRSTSOCKET, conn);
-    break;
-  case CURLPROXY_SOCKS4:
-    result = Curl_SOCKS4(conn->proxyuser, conn->host.name,
-                         conn->remote_port, FIRSTSOCKET, conn, FALSE);
-    break;
-  case CURLPROXY_SOCKS4A:
-    result = Curl_SOCKS4(conn->proxyuser, conn->host.name,
-                         conn->remote_port, FIRSTSOCKET, conn, TRUE);
-    break;
-#endif /* CURL_DISABLE_PROXY */
-  case CURLPROXY_HTTP:
-  case CURLPROXY_HTTP_1_0:
-    /* do nothing here. handled later. */
-    break;
-  default:
-    break;
-  } /* switch proxytype */
-
-  return result;
-}
-
-static CURLcode ConnectPlease(struct SessionHandle *data,
-                              struct connectdata *conn,
-                              bool *connected)
-{
-  CURLcode result;
-  Curl_addrinfo *addr;
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-  char *hostname = conn->bits.proxy?conn->proxy.name:conn->host.name;
-
-  infof(data, "About to connect() to %s%s port %ld (#%ld)\n",
-        conn->bits.proxy?"proxy ":"",
-        hostname, conn->port, conn->connectindex);
-#else
-  (void)data;
-#endif
-
-  /*************************************************************
-   * Connect to server/proxy
-   *************************************************************/
-  result= Curl_connecthost(conn,
-                           conn->dns_entry,
-                           &conn->sock[FIRSTSOCKET],
-                           &addr,
-                           connected);
-  if(CURLE_OK == result) {
-    /* All is cool, we store the current information */
-    conn->ip_addr = addr;
-
-    if(*connected)
-      result = Curl_connected_proxy(conn);
-  }
-
-  if(result)
-    *connected = FALSE; /* mark it as not connected */
-
-  return result;
-}
-
-/*
- * verboseconnect() displays verbose information after a connect
- */
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-static void verboseconnect(struct connectdata *conn)
-{
-  infof(conn->data, "Connected to %s (%s) port %ld (#%ld)\n",
-        conn->bits.proxy ? conn->proxy.dispname : conn->host.dispname,
-        conn->ip_addr_str, conn->port, conn->connectindex);
-}
-#endif
-
-int Curl_protocol_getsock(struct connectdata *conn,
-                          curl_socket_t *socks,
-                          int numsocks)
-{
-  if(conn->handler->proto_getsock)
-    return conn->handler->proto_getsock(conn, socks, numsocks);
-  return GETSOCK_BLANK;
-}
-
-int Curl_doing_getsock(struct connectdata *conn,
-                       curl_socket_t *socks,
-                       int numsocks)
-{
-  if(conn && conn->handler->doing_getsock)
-    return conn->handler->doing_getsock(conn, socks, numsocks);
-  return GETSOCK_BLANK;
-}
-
-/*
- * We are doing protocol-specific connecting and this is being called over and
- * over from the multi interface until the connection phase is done on
- * protocol layer.
- */
-
-CURLcode Curl_protocol_connecting(struct connectdata *conn,
-                                  bool *done)
-{
-  CURLcode result=CURLE_OK;
-
-  if(conn && conn->handler->connecting) {
-    *done = FALSE;
-    result = conn->handler->connecting(conn, done);
-  }
-  else
-    *done = TRUE;
-
-  return result;
-}
-
-/*
- * We are DOING this is being called over and over from the multi interface
- * until the DOING phase is done on protocol layer.
- */
-
-CURLcode Curl_protocol_doing(struct connectdata *conn, bool *done)
-{
-  CURLcode result=CURLE_OK;
-
-  if(conn && conn->handler->doing) {
-    *done = FALSE;
-    result = conn->handler->doing(conn, done);
-  }
-  else
-    *done = TRUE;
-
-  return result;
-}
-
-/*
- * We have discovered that the TCP connection has been successful, we can now
- * proceed with some action.
- *
- */
-CURLcode Curl_protocol_connect(struct connectdata *conn,
-                               bool *protocol_done)
-{
-  CURLcode result=CURLE_OK;
-  struct SessionHandle *data = conn->data;
-
-  *protocol_done = FALSE;
-
-  if(conn->bits.tcpconnect && conn->bits.protoconnstart) {
-    /* We already are connected, get back. This may happen when the connect
-       worked fine in the first call, like when we connect to a local server
-       or proxy. Note that we don't know if the protocol is actually done.
-
-       Unless this protocol doesn't have any protocol-connect callback, as
-       then we know we're done. */
-    if(!conn->handler->connecting)
-      *protocol_done = TRUE;
-
-    return CURLE_OK;
-  }
-
-  if(!conn->bits.tcpconnect) {
-
-    Curl_pgrsTime(data, TIMER_CONNECT); /* connect done */
-
-    if(data->set.verbose)
-      verboseconnect(conn);
-  }
-
-  if(!conn->bits.protoconnstart) {
-    if(conn->handler->connect_it) {
-      /* is there a protocol-specific connect() procedure? */
-
-      /* Set start time here for timeout purposes in the connect procedure, it
-         is later set again for the progress meter purpose */
-      conn->now = Curl_tvnow();
-
-      /* Call the protocol-specific connect function */
-      result = conn->handler->connect_it(conn, protocol_done);
-    }
-    else
-      *protocol_done = TRUE;
-
-    /* it has started, possibly even completed but that knowledge isn't stored
-       in this bit! */
-    if(!result)
-      conn->bits.protoconnstart = TRUE;
-  }
-
-  return result; /* pass back status */
-}
-
-/*
- * Helpers for IDNA convertions.
- */
-#ifdef USE_LIBIDN
-static bool is_ASCII_name(const char *hostname)
-{
-  const unsigned char *ch = (const unsigned char*)hostname;
-
-  while(*ch) {
-    if(*ch++ & 0x80)
-      return FALSE;
-  }
-  return TRUE;
-}
-
-/*
- * Check if characters in hostname is allowed in Top Level Domain.
- */
-static bool tld_check_name(struct SessionHandle *data,
-                           const char *ace_hostname)
-{
-  size_t err_pos;
-  char *uc_name = NULL;
-  int rc;
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-  const char *tld_errmsg = "<no msg>";
-#else
-  (void)data;
-#endif
-
-  /* Convert (and downcase) ACE-name back into locale's character set */
-  rc = idna_to_unicode_lzlz(ace_hostname, &uc_name, 0);
-  if(rc != IDNA_SUCCESS)
-    return FALSE;
-
-  rc = tld_check_lz(uc_name, &err_pos, NULL);
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-#ifdef HAVE_TLD_STRERROR
-  if(rc != TLD_SUCCESS)
-    tld_errmsg = tld_strerror((Tld_rc)rc);
-#endif
-  if(rc == TLD_INVALID)
-    infof(data, "WARNING: %s; pos %u = `%c'/0x%02X\n",
-          tld_errmsg, err_pos, uc_name[err_pos],
-          uc_name[err_pos] & 255);
-  else if(rc != TLD_SUCCESS)
-    infof(data, "WARNING: TLD check for %s failed; %s\n",
-          uc_name, tld_errmsg);
-#endif /* CURL_DISABLE_VERBOSE_STRINGS */
-  if(uc_name)
-     idn_free(uc_name);
-  if(rc != TLD_SUCCESS)
-    return FALSE;
-
-  return TRUE;
-}
-#endif
-
-/*
- * Perform any necessary IDN conversion of hostname
- */
-static void fix_hostname(struct SessionHandle *data,
-                         struct connectdata *conn, struct hostname *host)
-{
-#ifndef USE_LIBIDN
-  (void)data;
-  (void)conn;
-#elif defined(CURL_DISABLE_VERBOSE_STRINGS)
-  (void)conn;
-#endif
-
-  /* set the name we use to display the host name */
-  host->dispname = host->name;
-
-#ifdef USE_LIBIDN
-  /*************************************************************
-   * Check name for non-ASCII and convert hostname to ACE form.
-   *************************************************************/
-  if(!is_ASCII_name(host->name) &&
-      stringprep_check_version(LIBIDN_REQUIRED_VERSION)) {
-    char *ace_hostname = NULL;
-    int rc = idna_to_ascii_lz(host->name, &ace_hostname, 0);
-    infof (data, "Input domain encoded as `%s'\n",
-           stringprep_locale_charset ());
-    if(rc != IDNA_SUCCESS)
-      infof(data, "Failed to convert %s to ACE; %s\n",
-            host->name, Curl_idn_strerror(conn,rc));
-    else {
-      /* tld_check_name() displays a warning if the host name contains
-         "illegal" characters for this TLD */
-      (void)tld_check_name(data, ace_hostname);
-
-      host->encalloc = ace_hostname;
-      /* change the name pointer to point to the encoded hostname */
-      host->name = host->encalloc;
-    }
-  }
-#endif
-}
-
-/*
- * Allocate and initialize a new connectdata object.
- */
-static struct connectdata *allocate_conn(void)
-{
-  struct connectdata *conn;
-
-  conn = calloc(1, sizeof(struct connectdata));
-  if(!conn)
-    return NULL;
-
-  conn->handler = &Curl_handler_dummy;  /* Be sure we have a handler defined
-                                           already from start to avoid NULL
-                                           situations and checks */
-
-  /* and we setup a few fields in case we end up actually using this struct */
-
-  conn->sock[FIRSTSOCKET] = CURL_SOCKET_BAD;     /* no file descriptor */
-  conn->sock[SECONDARYSOCKET] = CURL_SOCKET_BAD; /* no file descriptor */
-  conn->connectindex = -1;    /* no index */
-  conn->port = -1; /* unknown at this point */
-
-  /* Default protocol-independent behavior doesn't support persistent
-     connections, so we set this to force-close. Protocols that support
-     this need to set this to FALSE in their "curl_do" functions. */
-  conn->bits.close = TRUE;
-
-  /* Store creation time to help future close decision making */
-  conn->created = Curl_tvnow();
-
-  return conn;
-}
-
-static CURLcode findprotocol(struct SessionHandle *data,
-                             struct connectdata *conn,
-                             const char *protostr)
-{
-  const struct Curl_handler * const *pp;
-  const struct Curl_handler *p;
-
-  /* Scan protocol handler table and match against 'protostr' to set a few
-     variables based on the URL. Now that the handler may be changed later
-     when the protocol specific setup function is called. */
-  for (pp = protocols; (p = *pp) != NULL; pp++) {
-    if(Curl_raw_equal(p->scheme, protostr)) {
-      /* Protocol found in table. Check if allowed */
-      if(!(data->set.allowed_protocols & p->protocol))
-        /* nope, get out */
-        break;
-
-      /* it is allowed for "normal" request, now do an extra check if this is
-         the result of a redirect */
-      if(data->state.this_is_a_follow &&
-         !(data->set.redir_protocols & p->protocol))
-        /* nope, get out */
-        break;
-
-      /* Perform setup complement if some. */
-      conn->handler = p;
-      conn->protocol |= p->protocol;
-
-      /* 'port' and 'remote_port' are set in setup_connection_internals() */
-      return CURLE_OK;
-    }
-  }
-
-
-  /* The protocol was not found in the table, but we don't have to assign it
-     to anything since it is already assigned to a dummy-struct in the
-     create_conn() function when the connectdata struct is allocated. */
-  failf(data, "Protocol %s not supported or disabled in " LIBCURL_NAME,
-        protostr);
-
-  return CURLE_UNSUPPORTED_PROTOCOL;
-}
-
-/*
- * Parse URL and fill in the relevant members of the connection struct.
- */
-static CURLcode parseurlandfillconn(struct SessionHandle *data,
-                                    struct connectdata *conn,
-                                    bool *prot_missing)
-{
-  char *at;
-  char *fragment;
-  char *path = data->state.path;
-  char *query;
-  int rc;
-  char protobuf[16];
-  const char *protop;
-
-  *prot_missing = FALSE;
-
-  /*************************************************************
-   * Parse the URL.
-   *
-   * We need to parse the url even when using the proxy, because we will need
-   * the hostname and port in case we are trying to SSL connect through the
-   * proxy -- and we don't know if we will need to use SSL until we parse the
-   * url ...
-   ************************************************************/
-  if((2 == sscanf(data->change.url, "%15[^:]:%[^\n]",
-                  protobuf, path)) &&
-     Curl_raw_equal(protobuf, "file")) {
-    if(path[0] == '/' && path[1] == '/') {
-      /* Allow omitted hostname (e.g. file:/<path>).  This is not strictly
-       * speaking a valid file: URL by RFC 1738, but treating file:/<path> as
-       * file://localhost/<path> is similar to how other schemes treat missing
-       * hostnames.  See RFC 1808. */
-
-      /* This cannot be done with strcpy() in a portable manner, since the
-         memory areas overlap! */
-      memmove(path, path + 2, strlen(path + 2)+1);
-    }
-    /*
-     * we deal with file://<host>/<path> differently since it supports no
-     * hostname other than "localhost" and "127.0.0.1", which is unique among
-     * the URL protocols specified in RFC 1738
-     */
-    if(path[0] != '/') {
-      /* the URL included a host name, we ignore host names in file:// URLs
-         as the standards don't define what to do with them */
-      char *ptr=strchr(path, '/');
-      if(ptr) {
-        /* there was a slash present
-
-           RFC1738 (section 3.1, page 5) says:
-
-           The rest of the locator consists of data specific to the scheme,
-           and is known as the "url-path". It supplies the details of how the
-           specified resource can be accessed. Note that the "/" between the
-           host (or port) and the url-path is NOT part of the url-path.
-
-           As most agents use file://localhost/foo to get '/foo' although the
-           slash preceding foo is a separator and not a slash for the path,
-           a URL as file://localhost//foo must be valid as well, to refer to
-           the same file with an absolute path.
-        */
-
-        if(ptr[1] && ('/' == ptr[1]))
-          /* if there was two slashes, we skip the first one as that is then
-             used truly as a separator */
-          ptr++;
-
-        /* This cannot be made with strcpy, as the memory chunks overlap! */
-        memmove(path, ptr, strlen(ptr)+1);
-      }
-    }
-
-    protop = "file"; /* protocol string */
-  }
-  else {
-    /* clear path */
-    path[0]=0;
-
-    if(2 > sscanf(data->change.url,
-                   "%15[^\n:]://%[^\n/]%[^\n]",
-                   protobuf,
-                   conn->host.name, path)) {
-
-      /*
-       * The URL was badly formatted, let's try the browser-style _without_
-       * protocol specified like 'http://'.
-       */
-      rc = sscanf(data->change.url, "%[^\n/]%[^\n]", conn->host.name, path);
-      if(1 > rc) {
-        /*
-         * We couldn't even get this format.
-         * djgpp 2.04 has a sscanf() bug where 'conn->host.name' is
-         * assigned, but the return value is EOF!
-         */
-#if defined(__DJGPP__) && (DJGPP_MINOR == 4)
-        if (!(rc == -1 && *conn->host.name))
-#endif
-        {
-          failf(data, "<url> malformed");
-          return CURLE_URL_MALFORMAT;
-        }
-      }
-
-      /*
-       * Since there was no protocol part specified, we guess what protocol it
-       * is based on the first letters of the server name.
-       */
-
-      /* Note: if you add a new protocol, please update the list in
-       * lib/version.c too! */
-
-      if(checkprefix("FTP.", conn->host.name))
-        protop = "ftp";
-      else if(checkprefix("DICT.", conn->host.name))
-        protop = "DICT";
-      else if(checkprefix("LDAP.", conn->host.name))
-        protop = "LDAP";
-      else if(checkprefix("IMAP.", conn->host.name))
-        protop = "IMAP";
-      else {
-        protop = "http";
-      }
-
-      *prot_missing = TRUE; /* not given in URL */
-    }
-    else
-      protop = protobuf;
-  }
-
-  /* We search for '?' in the host name (but only on the right side of a
-   * @-letter to allow ?-letters in username and password) to handle things
-   * like http://example.com?param= (notice the missing '/').
-   */
-  at = strchr(conn->host.name, '@');
-  if(at)
-    query = strchr(at+1, '?');
-  else
-    query = strchr(conn->host.name, '?');
-
-  if(query) {
-    /* We must insert a slash before the '?'-letter in the URL. If the URL had
-       a slash after the '?', that is where the path currently begins and the
-       '?string' is still part of the host name.
-
-       We must move the trailing part from the host name and put it first in
-       the path. And have it all prefixed with a slash.
-    */
-
-    size_t hostlen = strlen(query);
-    size_t pathlen = strlen(path);
-
-    /* move the existing path plus the zero byte forward, to make room for
-       the host-name part */
-    memmove(path+hostlen+1, path, pathlen+1);
-
-     /* now copy the trailing host part in front of the existing path */
-    memcpy(path+1, query, hostlen);
-
-    path[0]='/'; /* prepend the missing slash */
-
-    *query=0; /* now cut off the hostname at the ? */
-  }
-  else if(!path[0]) {
-    /* if there's no path set, use a single slash */
-    strcpy(path, "/");
-  }
-
-  /* If the URL is malformatted (missing a '/' after hostname before path) we
-   * insert a slash here. The only letter except '/' we accept to start a path
-   * is '?'.
-   */
-  if(path[0] == '?') {
-    /* We need this function to deal with overlapping memory areas. We know
-       that the memory area 'path' points to is 'urllen' bytes big and that
-       is bigger than the path. Use +1 to move the zero byte too. */
-    memmove(&path[1], path, strlen(path)+1);
-    path[0] = '/';
-  }
-
-  if (conn->host.name[0] == '[') {
-    /* This looks like an IPv6 address literal.  See if there is an address
-       scope.  */
-    char *percent = strstr (conn->host.name, "%25");
-    if (percent) {
-      char *endp;
-      unsigned long scope = strtoul (percent + 3, &endp, 10);
-      if (*endp == ']') {
-        /* The address scope was well formed.  Knock it out of the
-           hostname. */
-        memmove(percent, endp, strlen(endp)+1);
-        if (!data->state.this_is_a_follow)
-          /* Don't honour a scope given in a Location: header */
-          conn->scope = (unsigned int)scope;
-      } else
-        infof(data, "Invalid IPv6 address format\n");
-    }
-  }
-
-  if(data->set.scope)
-    /* Override any scope that was set above.  */
-    conn->scope = data->set.scope;
-
-  /* Remove the fragment part of the path. Per RFC 2396, this is always the
-     last part of the URI. We are looking for the first '#' so that we deal
-     gracefully with non conformant URI such as http://example.com#foo#bar. */
-  fragment = strchr(path, '#');
-  if(fragment)
-    *fragment = 0;
-
-  /*
-   * So if the URL was A://B/C#D,
-   *   protop is A
-   *   conn->host.name is B
-   *   data->state.path is /C
-   */
-
-  return findprotocol(data, conn, protop);
-}
-
-static void llist_dtor(void *user, void *element)
-{
-  (void)user;
-  (void)element;
-  /* Do nothing */
-}
-
-/*
- * If we're doing a resumed transfer, we need to setup our stuff
- * properly.
- */
-static CURLcode setup_range(struct SessionHandle *data)
-{
-  struct UrlState *s = &data->state;
-  s->resume_from = data->set.set_resume_from;
-  if(s->resume_from || data->set.str[STRING_SET_RANGE]) {
-    if(s->rangestringalloc)
-      free(s->range);
-
-    if(s->resume_from)
-      s->range = aprintf("%" FORMAT_OFF_TU "-", s->resume_from);
-    else
-      s->range = strdup(data->set.str[STRING_SET_RANGE]);
-
-    s->rangestringalloc = (bool)(s->range?TRUE:FALSE);
-
-    if(!s->range)
-      return CURLE_OUT_OF_MEMORY;
-
-    /* tell ourselves to fetch this range */
-    s->use_range = TRUE;        /* enable range download */
-  }
-  else
-    s->use_range = FALSE; /* disable range download */
-
-  return CURLE_OK;
-}
-
-
-/***************************************************************
-* Setup connection internals specific to the requested protocol.
-* This MUST get called after proxy magic has been figured out.
-***************************************************************/
-static CURLcode setup_connection_internals(struct connectdata *conn)
-{
-  const struct Curl_handler * p;
-  CURLcode result;
-
-  conn->socktype = SOCK_STREAM; /* most of them are TCP streams */
-
-  /* Scan protocol handler table. */
-
-  /* Perform setup complement if some. */
-  p = conn->handler;
-
-  if(p->setup_connection) {
-    result = (*p->setup_connection)(conn);
-
-    if(result != CURLE_OK)
-      return result;
-
-    p = conn->handler;              /* May have changed. */
-  }
-
-  if(conn->port < 0)
-    /* we check for -1 here since if proxy was detected already, this
-       was very likely already set to the proxy port */
-    conn->port = p->defport;
-  conn->remote_port = (unsigned short)p->defport;
-  conn->protocol |= p->protocol;
-
-  return CURLE_OK;
-}
-
-#ifndef CURL_DISABLE_PROXY
-/****************************************************************
-* Checks if the host is in the noproxy list. returns true if it matches
-* and therefore the proxy should NOT be used.
-****************************************************************/
-static bool check_noproxy(const char* name, const char* no_proxy)
-{
-  /* no_proxy=domain1.dom,host.domain2.dom
-   *   (a comma-separated list of hosts which should
-   *   not be proxied, or an asterisk to override
-   *   all proxy variables)
-   */
-  size_t tok_start;
-  size_t tok_end;
-  const char* separator = ", ";
-  size_t no_proxy_len;
-  size_t namelen;
-  char *endptr;
-
-  if(no_proxy && no_proxy[0]) {
-    if(Curl_raw_equal("*", no_proxy)) {
-      return TRUE;
-    }
-
-    /* NO_PROXY was specified and it wasn't just an asterisk */
-
-    no_proxy_len = strlen(no_proxy);
-    endptr = strchr(name, ':');
-    if(endptr)
-      namelen = endptr - name;
-    else
-      namelen = strlen(name);
-
-    for (tok_start = 0; tok_start < no_proxy_len; tok_start = tok_end + 1) {
-      while (tok_start < no_proxy_len &&
-             strchr(separator, no_proxy[tok_start]) != NULL) {
-        /* Look for the beginning of the token. */
-        ++tok_start;
-      }
-
-      if(tok_start == no_proxy_len)
-        break; /* It was all trailing separator chars, no more tokens. */
-
-      for (tok_end = tok_start; tok_end < no_proxy_len &&
-             strchr(separator, no_proxy[tok_end]) == NULL; ++tok_end) {
-        /* Look for the end of the token. */
-      }
-
-      /* To match previous behaviour, where it was necessary to specify
-       * ".local.com" to prevent matching "notlocal.com", we will leave
-       * the '.' off.
-       */
-      if(no_proxy[tok_start] == '.')
-        ++tok_start;
-
-      if((tok_end - tok_start) <= namelen) {
-        /* Match the last part of the name to the domain we are checking. */
-        const char *checkn = name + namelen - (tok_end - tok_start);
-        if(Curl_raw_nequal(no_proxy + tok_start, checkn,
-                           tok_end - tok_start)) {
-          if((tok_end - tok_start) == namelen || *(checkn - 1) == '.') {
-            /* We either have an exact match, or the previous character is a .
-             * so it is within the same domain, so no proxy for this host.
-             */
-            return TRUE;
-          }
-        }
-      } /* if((tok_end - tok_start) <= namelen) */
-    } /* for (tok_start = 0; tok_start < no_proxy_len;
-         tok_start = tok_end + 1) */
-  } /* NO_PROXY was specified and it wasn't just an asterisk */
-
-  return FALSE;
-}
-
-/****************************************************************
-* Detect what (if any) proxy to use. Remember that this selects a host
-* name and is not limited to HTTP proxies only.
-* The returned pointer must be freed by the caller (unless NULL)
-****************************************************************/
-static char *detect_proxy(struct connectdata *conn)
-{
-  char *proxy = NULL;
-
-#ifndef CURL_DISABLE_HTTP
-  /* If proxy was not specified, we check for default proxy environment
-   * variables, to enable i.e Lynx compliance:
-   *
-   * http_proxy=http://some.server.dom:port/
-   * https_proxy=http://some.server.dom:port/
-   * ftp_proxy=http://some.server.dom:port/
-   * no_proxy=domain1.dom,host.domain2.dom
-   *   (a comma-separated list of hosts which should
-   *   not be proxied, or an asterisk to override
-   *   all proxy variables)
-   * all_proxy=http://some.server.dom:port/
-   *   (seems to exist for the CERN www lib. Probably
-   *   the first to check for.)
-   *
-   * For compatibility, the all-uppercase versions of these variables are
-   * checked if the lowercase versions don't exist.
-   */
-  char *no_proxy=NULL;
-  char proxy_env[128];
-
-  no_proxy=curl_getenv("no_proxy");
-  if(!no_proxy)
-    no_proxy=curl_getenv("NO_PROXY");
-
-  if(!check_noproxy(conn->host.name, no_proxy)) {
-    /* It was not listed as without proxy */
-    const char *protop = conn->handler->scheme;
-    char *envp = proxy_env;
-    char *prox;
-
-    /* Now, build <protocol>_proxy and check for such a one to use */
-    while(*protop)
-      *envp++ = (char)tolower((int)*protop++);
-
-    /* append _proxy */
-    strcpy(envp, "_proxy");
-
-    /* read the protocol proxy: */
-    prox=curl_getenv(proxy_env);
-
-    /*
-     * We don't try the uppercase version of HTTP_PROXY because of
-     * security reasons:
-     *
-     * When curl is used in a webserver application
-     * environment (cgi or php), this environment variable can
-     * be controlled by the web server user by setting the
-     * http header 'Proxy:' to some value.
-     *
-     * This can cause 'internal' http/ftp requests to be
-     * arbitrarily redirected by any external attacker.
-     */
-    if(!prox && !Curl_raw_equal("http_proxy", proxy_env)) {
-      /* There was no lowercase variable, try the uppercase version: */
-      Curl_strntoupper(proxy_env, proxy_env, sizeof(proxy_env));
-      prox=curl_getenv(proxy_env);
-    }
-
-    if(prox && *prox) { /* don't count "" strings */
-      proxy = prox; /* use this */
-    }
-    else {
-      proxy = curl_getenv("all_proxy"); /* default proxy to use */
-      if(!proxy)
-        proxy=curl_getenv("ALL_PROXY");
-    }
-  } /* if(!check_noproxy(conn->host.name, no_proxy)) - it wasn't specified
-       non-proxy */
-  if(no_proxy)
-    free(no_proxy);
-
-#else /* !CURL_DISABLE_HTTP */
-
-  (void)conn;
-#endif /* CURL_DISABLE_HTTP */
-
-  return proxy;
-}
-
-/*
- * If this is supposed to use a proxy, we need to figure out the proxy
- * host name, so that we can re-use an existing connection
- * that may exist registered to the same proxy host.
- * proxy will be freed before this function returns.
- */
-static CURLcode parse_proxy(struct SessionHandle *data,
-                            struct connectdata *conn, char *proxy)
-{
-  char *prox_portno;
-  char *endofprot;
-
-  /* We use 'proxyptr' to point to the proxy name from now on... */
-  char *proxyptr;
-  char *portptr;
-  char *atsign;
-
-  /* We do the proxy host string parsing here. We want the host name and the
-   * port name. Accept a protocol:// prefix, even though it should just be
-   * ignored.
-   */
-
-  /* Skip the protocol part if present */
-  endofprot = strstr(proxy, "://");
-  if(endofprot)
-    proxyptr = endofprot+3;
-  else
-    proxyptr = proxy;
-
-  /* Is there a username and password given in this proxy url? */
-  atsign = strchr(proxyptr, '@');
-  if(atsign) {
-    char proxyuser[MAX_CURL_USER_LENGTH];
-    char proxypasswd[MAX_CURL_PASSWORD_LENGTH];
-    proxypasswd[0] = 0;
-
-    if(1 <= sscanf(proxyptr,
-                   "%" MAX_CURL_USER_LENGTH_TXT"[^:@]:"
-                   "%" MAX_CURL_PASSWORD_LENGTH_TXT "[^@]",
-                   proxyuser, proxypasswd)) {
-      CURLcode res = CURLE_OK;
-
-      /* found user and password, rip them out.  note that we are
-         unescaping them, as there is otherwise no way to have a
-         username or password with reserved characters like ':' in
-         them. */
-      Curl_safefree(conn->proxyuser);
-      conn->proxyuser = curl_easy_unescape(data, proxyuser, 0, NULL);
-
-      if(!conn->proxyuser)
-        res = CURLE_OUT_OF_MEMORY;
-      else {
-        Curl_safefree(conn->proxypasswd);
-        conn->proxypasswd = curl_easy_unescape(data, proxypasswd, 0, NULL);
-
-        if(!conn->proxypasswd)
-          res = CURLE_OUT_OF_MEMORY;
-      }
-
-      if(CURLE_OK == res) {
-        conn->bits.proxy_user_passwd = TRUE; /* enable it */
-        atsign = strdup(atsign+1); /* the right side of the @-letter */
-
-        if(atsign) {
-          free(proxy); /* free the former proxy string */
-          proxy = proxyptr = atsign; /* now use this instead */
-        }
-        else
-          res = CURLE_OUT_OF_MEMORY;
-      }
-
-      if(res) {
-        free(proxy); /* free the allocated proxy string */
-        return res;
-      }
-    }
-  }
-
-  /* start scanning for port number at this point */
-  portptr = proxyptr;
-
-  /* detect and extract RFC2732-style IPv6-addresses */
-  if(*proxyptr == '[') {
-    char *ptr = ++proxyptr; /* advance beyond the initial bracket */
-    while(*ptr && (ISXDIGIT(*ptr) || (*ptr == ':') || (*ptr == '%') ||
-                   (*ptr == '.')))
-      ptr++;
-    if(*ptr == ']') {
-      /* yeps, it ended nicely with a bracket as well */
-      *ptr++ = 0;
-    } else
-      infof(data, "Invalid IPv6 address format\n");
-    portptr = ptr;
-    /* Note that if this didn't end with a bracket, we still advanced the
-     * proxyptr first, but I can't see anything wrong with that as no host
-     * name nor a numeric can legally start with a bracket.
-     */
-  }
-
-  /* Get port number off proxy.server.com:1080 */
-  prox_portno = strchr(portptr, ':');
-  if(prox_portno) {
-    *prox_portno = 0x0; /* cut off number from host name */
-    prox_portno ++;
-    /* now set the local port number */
-    conn->port = atoi(prox_portno);
-  }
-  else {
-    /* without a port number after the host name, some people seem to use
-       a slash so we strip everything from the first slash */
-    atsign = strchr(proxyptr, '/');
-    if(atsign)
-      *atsign = 0x0; /* cut off path part from host name */
-
-    if(data->set.proxyport)
-      /* None given in the proxy string, then get the default one if it is
-         given */
-      conn->port = data->set.proxyport;
-  }
-
-  /* now, clone the cleaned proxy host name */
-  conn->proxy.rawalloc = strdup(proxyptr);
-  conn->proxy.name = conn->proxy.rawalloc;
-
-  free(proxy);
-  if(!conn->proxy.rawalloc)
-    return CURLE_OUT_OF_MEMORY;
-
-  return CURLE_OK;
-}
-
-/*
- * Extract the user and password from the authentication string
- */
-static CURLcode parse_proxy_auth(struct SessionHandle *data,
-                                 struct connectdata *conn)
-{
-  char proxyuser[MAX_CURL_USER_LENGTH]="";
-  char proxypasswd[MAX_CURL_PASSWORD_LENGTH]="";
-
-  if(data->set.str[STRING_PROXYUSERNAME] != NULL) {
-    strncpy(proxyuser, data->set.str[STRING_PROXYUSERNAME],
-            MAX_CURL_USER_LENGTH);
-    proxyuser[MAX_CURL_USER_LENGTH-1] = '\0';   /*To be on safe side*/
-  }
-  if(data->set.str[STRING_PROXYPASSWORD] != NULL) {
-    strncpy(proxypasswd, data->set.str[STRING_PROXYPASSWORD],
-            MAX_CURL_PASSWORD_LENGTH);
-    proxypasswd[MAX_CURL_PASSWORD_LENGTH-1] = '\0'; /*To be on safe side*/
-  }
-
-  conn->proxyuser = curl_easy_unescape(data, proxyuser, 0, NULL);
-  if(!conn->proxyuser)
-    return CURLE_OUT_OF_MEMORY;
-
-  conn->proxypasswd = curl_easy_unescape(data, proxypasswd, 0, NULL);
-  if(!conn->proxypasswd)
-    return CURLE_OUT_OF_MEMORY;
-
-  return CURLE_OK;
-}
-#endif /* CURL_DISABLE_PROXY */
-
-/*
- *
- * Parse a user name and password in the URL and strip it out of the host name
- *
- * Inputs: data->set.use_netrc (CURLOPT_NETRC)
- *         conn->host.name
- *
- * Outputs: (almost :- all currently undefined)
- *          conn->bits.user_passwd  - non-zero if non-default passwords exist
- *          user                    - non-zero length if defined
- *          passwd                  -   ditto
- *          conn->host.name         - remove user name and password
- */
-static CURLcode parse_url_userpass(struct SessionHandle *data,
-                                   struct connectdata *conn,
-                                   char *user, char *passwd)
-{
-  /* At this point, we're hoping all the other special cases have
-   * been taken care of, so conn->host.name is at most
-   *    [user[:password]]@]hostname
-   *
-   * We need somewhere to put the embedded details, so do that first.
-   */
-
-  char *ptr=strchr(conn->host.name, '@');
-  char *userpass = conn->host.name;
-
-  user[0] =0;   /* to make everything well-defined */
-  passwd[0]=0;
-
-  /* We will now try to extract the
-   * possible user+password pair in a string like:
-   * ftp://user:password@ftp.my.site:8021/README */
-  if(ptr != NULL) {
-    /* there's a user+password given here, to the left of the @ */
-
-    conn->host.name = ++ptr;
-
-    /* So the hostname is sane.  Only bother interpreting the
-     * results if we could care.  It could still be wasted
-     * work because it might be overtaken by the programmatically
-     * set user/passwd, but doing that first adds more cases here :-(
-     */
-
-    conn->bits.userpwd_in_url = 1;
-    if(data->set.use_netrc != CURL_NETRC_REQUIRED) {
-      /* We could use the one in the URL */
-
-      conn->bits.user_passwd = TRUE; /* enable user+password */
-
-      if(*userpass != ':') {
-        /* the name is given, get user+password */
-        sscanf(userpass, "%" MAX_CURL_USER_LENGTH_TXT "[^:@]:"
-               "%" MAX_CURL_PASSWORD_LENGTH_TXT "[^@]",
-               user, passwd);
-      }
-      else
-        /* no name given, get the password only */
-        sscanf(userpass, ":%" MAX_CURL_PASSWORD_LENGTH_TXT "[^@]", passwd);
-
-      if(user[0]) {
-        char *newname=curl_easy_unescape(data, user, 0, NULL);
-        if(!newname)
-          return CURLE_OUT_OF_MEMORY;
-        if(strlen(newname) < MAX_CURL_USER_LENGTH)
-          strcpy(user, newname);
-
-        /* if the new name is longer than accepted, then just use
-           the unconverted name, it'll be wrong but what the heck */
-        free(newname);
-      }
-      if(passwd[0]) {
-        /* we have a password found in the URL, decode it! */
-        char *newpasswd=curl_easy_unescape(data, passwd, 0, NULL);
-        if(!newpasswd)
-          return CURLE_OUT_OF_MEMORY;
-        if(strlen(newpasswd) < MAX_CURL_PASSWORD_LENGTH)
-          strcpy(passwd, newpasswd);
-
-        free(newpasswd);
-      }
-    }
-  }
-  return CURLE_OK;
-}
-
-/*************************************************************
- * Figure out the remote port number and fix it in the URL
- *
- * No matter if we use a proxy or not, we have to figure out the remote
- * port number of various reasons.
- *
- * To be able to detect port number flawlessly, we must not confuse them
- * IPv6-specified addresses in the [0::1] style. (RFC2732)
- *
- * The conn->host.name is currently [user:passwd@]host[:port] where host
- * could be a hostname, IPv4 address or IPv6 address.
- *
- * The port number embedded in the URL is replaced, if necessary.
- *************************************************************/
-static CURLcode parse_remote_port(struct SessionHandle *data,
-                                  struct connectdata *conn)
-{
-  char *portptr;
-  char endbracket;
-
-  /* Note that at this point, the IPv6 address cannot contain any scope
-     suffix as that has already been removed in the parseurlandfillconn()
-     function */
-  if((1 == sscanf(conn->host.name, "[%*45[0123456789abcdefABCDEF:.]%c",
-                  &endbracket)) &&
-     (']' == endbracket)) {
-    /* this is a RFC2732-style specified IP-address */
-    conn->bits.ipv6_ip = TRUE;
-
-    conn->host.name++; /* skip over the starting bracket */
-    portptr = strchr(conn->host.name, ']');
-    if(portptr) {
-      *portptr++ = '\0'; /* zero terminate, killing the bracket */
-      if(':' != *portptr)
-        portptr = NULL; /* no port number available */
-    }
-  }
-  else
-    portptr = strrchr(conn->host.name, ':');
-
-  if(data->set.use_port && data->state.allow_port) {
-    /* if set, we use this and ignore the port possibly given in the URL */
-    conn->remote_port = (unsigned short)data->set.use_port;
-    if(portptr)
-      *portptr = '\0'; /* cut off the name there anyway - if there was a port
-                      number - since the port number is to be ignored! */
-    if(conn->bits.httpproxy) {
-      /* we need to create new URL with the new port number */
-      char *url;
-      /* FTPS connections have the FTP bit set too, so they match as well */
-      bool isftp = (bool)(0 != (conn->protocol & PROT_FTP));
-
-      /*
-       * This synthesized URL isn't always right--suffixes like ;type=A
-       * are stripped off. It would be better to work directly from the
-       * original URL and simply replace the port part of it.
-       */
-      url = aprintf("%s://%s%s%s:%hu%s%s", conn->handler->scheme,
-                    conn->bits.ipv6_ip?"[":"", conn->host.name,
-                    conn->bits.ipv6_ip?"]":"", conn->remote_port,
-                    isftp?"/":"", data->state.path);
-      if(!url)
-        return CURLE_OUT_OF_MEMORY;
-
-      if(data->change.url_alloc)
-        free(data->change.url);
-
-      data->change.url = url;
-      data->change.url_alloc = TRUE;
-    }
-  }
-  else if(portptr) {
-    /* no CURLOPT_PORT given, extract the one from the URL */
-
-    char *rest;
-    unsigned long port;
-
-    port=strtoul(portptr+1, &rest, 10);  /* Port number must be decimal */
-
-    if(rest != (portptr+1) && *rest == '\0') {
-      /* The colon really did have only digits after it,
-       * so it is either a port number or a mistake */
-
-      if(port > 0xffff) {   /* Single unix standard says port numbers are
-                              * 16 bits long */
-        failf(data, "Port number too large: %lu", port);
-        return CURLE_URL_MALFORMAT;
-      }
-
-      *portptr = '\0'; /* cut off the name there */
-      conn->remote_port = curlx_ultous(port);
-    }
-  }
-  return CURLE_OK;
-}
-
-/*
- * Override a user name and password from the URL with that in the
- * CURLOPT_USERPWD option or a .netrc file, if applicable.
- */
-static void override_userpass(struct SessionHandle *data,
-                              struct connectdata *conn,
-                              char *user, char *passwd)
-{
-  if(data->set.str[STRING_USERNAME] != NULL) {
-    strncpy(user, data->set.str[STRING_USERNAME], MAX_CURL_USER_LENGTH);
-    user[MAX_CURL_USER_LENGTH-1] = '\0';   /*To be on safe side*/
-  }
-  if(data->set.str[STRING_PASSWORD] != NULL) {
-    strncpy(passwd, data->set.str[STRING_PASSWORD], MAX_CURL_PASSWORD_LENGTH);
-    passwd[MAX_CURL_PASSWORD_LENGTH-1] = '\0'; /*To be on safe side*/
-  }
-
-  conn->bits.netrc = FALSE;
-  if(data->set.use_netrc != CURL_NETRC_IGNORED) {
-    if(Curl_parsenetrc(conn->host.name,
-                       user, passwd,
-                       data->set.str[STRING_NETRC_FILE])) {
-      infof(data, "Couldn't find host %s in the "
-            DOT_CHAR "netrc file; using defaults\n",
-            conn->host.name);
-    }
-    else {
-      /* set bits.netrc TRUE to remember that we got the name from a .netrc
-         file, so that it is safe to use even if we followed a Location: to a
-         different host or similar. */
-      conn->bits.netrc = TRUE;
-
-      conn->bits.user_passwd = TRUE; /* enable user+password */
-    }
-  }
-}
-
-/*
- * Set password so it's available in the connection.
- */
-static CURLcode set_userpass(struct connectdata *conn,
-                             const char *user, const char *passwd)
-{
-  /* If our protocol needs a password and we have none, use the defaults */
-  if( (conn->protocol & (PROT_FTP|PROT_IMAP)) &&
-       !conn->bits.user_passwd) {
-
-    conn->user = strdup(CURL_DEFAULT_USER);
-    if(conn->user)
-      conn->passwd = strdup(CURL_DEFAULT_PASSWORD);
-    else
-      conn->passwd = NULL;
-    /* This is the default password, so DON'T set conn->bits.user_passwd */
-  }
-  else {
-    /* store user + password, zero-length if not set */
-    conn->user = strdup(user);
-    if(conn->user)
-      conn->passwd = strdup(passwd);
-    else
-      conn->passwd = NULL;
-  }
-  if(!conn->user || !conn->passwd)
-    return CURLE_OUT_OF_MEMORY;
-
-  return CURLE_OK;
-}
-
-/*************************************************************
- * Resolve the address of the server or proxy
- *************************************************************/
-static CURLcode resolve_server(struct SessionHandle *data,
-                               struct connectdata *conn,
-                               bool *async)
-{
-  CURLcode result=CURLE_OK;
-  long shortest = 0; /* default to no timeout */
-
-  /*************************************************************
-   * Set timeout if that is being used
-   *************************************************************/
-  if(data->set.timeout || data->set.connecttimeout) {
-
-    /* We set the timeout on the name resolving phase first, separately from
-     * the download/upload part to allow a maximum time on everything. This is
-     * a signal-based timeout, why it won't work and shouldn't be used in
-     * multi-threaded environments. */
-
-    shortest = data->set.timeout; /* default to this timeout value */
-    if(shortest && data->set.connecttimeout &&
-       (data->set.connecttimeout < shortest))
-      /* if both are set, pick the shortest */
-      shortest = data->set.connecttimeout;
-    else if(!shortest)
-      /* if timeout is not set, use the connect timeout */
-      shortest = data->set.connecttimeout;
-  /* We can expect the conn->created time to be "now", as that was just
-     recently set in the beginning of this function and nothing slow
-     has been done since then until now. */
-  }
-
-  /*************************************************************
-   * Resolve the name of the server or proxy
-   *************************************************************/
-  if(conn->bits.reuse) {
-    /* We're reusing the connection - no need to resolve anything */
-    *async = FALSE;
-
-    if(conn->bits.proxy)
-      fix_hostname(data, conn, &conn->host);
-  }
-  else {
-    /* this is a fresh connect */
-    int rc;
-    struct Curl_dns_entry *hostaddr;
-
-    /* set a pointer to the hostname we display */
-    fix_hostname(data, conn, &conn->host);
-
-    if(!conn->proxy.name || !*conn->proxy.name) {
-      /* If not connecting via a proxy, extract the port from the URL, if it is
-       * there, thus overriding any defaults that might have been set above. */
-      conn->port =  conn->remote_port; /* it is the same port */
-
-      /* Resolve target host right on */
-      rc = Curl_resolv_timeout(conn, conn->host.name, (int)conn->port,
-                               &hostaddr, shortest);
-      if(rc == CURLRESOLV_PENDING)
-        *async = TRUE;
-
-      else if (rc == CURLRESOLV_TIMEDOUT)
-        result = CURLE_OPERATION_TIMEDOUT;
-
-      else if(!hostaddr) {
-        failf(data, "Couldn't resolve host '%s'", conn->host.dispname);
-        result =  CURLE_COULDNT_RESOLVE_HOST;
-        /* don't return yet, we need to clean up the timeout first */
-      }
-    }
-    else {
-      /* This is a proxy that hasn't been resolved yet. */
-
-      /* IDN-fix the proxy name */
-      fix_hostname(data, conn, &conn->proxy);
-
-      /* resolve proxy */
-      rc = Curl_resolv_timeout(conn, conn->proxy.name, (int)conn->port,
-                               &hostaddr, shortest);
-
-      if(rc == CURLRESOLV_PENDING)
-        *async = TRUE;
-
-      else if (rc == CURLRESOLV_TIMEDOUT)
-        result = CURLE_OPERATION_TIMEDOUT;
-
-      else if(!hostaddr) {
-        failf(data, "Couldn't resolve proxy '%s'", conn->proxy.dispname);
-        result = CURLE_COULDNT_RESOLVE_PROXY;
-        /* don't return yet, we need to clean up the timeout first */
-      }
-    }
-    DEBUGASSERT(conn->dns_entry == NULL);
-    conn->dns_entry = hostaddr;
-  }
-
-  return result;
-}
-
-/*
- * Cleanup the connection just allocated before we can move along and use the
- * previously existing one.  All relevant data is copied over and old_conn is
- * ready for freeing once this function returns.
- */
-static void reuse_conn(struct connectdata *old_conn,
-                       struct connectdata *conn)
-{
-  if(old_conn->proxy.rawalloc)
-    free(old_conn->proxy.rawalloc);
-
-  /* free the SSL config struct from this connection struct as this was
-     allocated in vain and is targeted for destruction */
-  Curl_free_ssl_config(&old_conn->ssl_config);
-
-  conn->data = old_conn->data;
-
-  /* get the user+password information from the old_conn struct since it may
-   * be new for this request even when we re-use an existing connection */
-  conn->bits.user_passwd = old_conn->bits.user_passwd;
-  if(conn->bits.user_passwd) {
-    /* use the new user name and password though */
-    Curl_safefree(conn->user);
-    Curl_safefree(conn->passwd);
-    conn->user = old_conn->user;
-    conn->passwd = old_conn->passwd;
-    old_conn->user = NULL;
-    old_conn->passwd = NULL;
-  }
-
-  conn->bits.proxy_user_passwd = old_conn->bits.proxy_user_passwd;
-  if(conn->bits.proxy_user_passwd) {
-    /* use the new proxy user name and proxy password though */
-    Curl_safefree(conn->proxyuser);
-    Curl_safefree(conn->proxypasswd);
-    conn->proxyuser = old_conn->proxyuser;
-    conn->proxypasswd = old_conn->proxypasswd;
-    old_conn->proxyuser = NULL;
-    old_conn->proxypasswd = NULL;
-  }
-
-  /* host can change, when doing keepalive with a proxy ! */
-  if(conn->bits.proxy) {
-    free(conn->host.rawalloc);
-    conn->host=old_conn->host;
-  }
-  else
-    free(old_conn->host.rawalloc); /* free the newly allocated name buffer */
-
-  /* re-use init */
-  conn->bits.reuse = TRUE; /* yes, we're re-using here */
-
-  Curl_safefree(old_conn->user);
-  Curl_safefree(old_conn->passwd);
-  Curl_safefree(old_conn->proxyuser);
-  Curl_safefree(old_conn->proxypasswd);
-  Curl_llist_destroy(old_conn->send_pipe, NULL);
-  Curl_llist_destroy(old_conn->recv_pipe, NULL);
-  Curl_llist_destroy(old_conn->pend_pipe, NULL);
-  Curl_llist_destroy(old_conn->done_pipe, NULL);
-  Curl_safefree(old_conn->master_buffer);
-}
-
-/**
- * create_conn() sets up a new connectdata struct, or re-uses an already
- * existing one, and resolves host name.
- *
- * if this function returns CURLE_OK and *async is set to TRUE, the resolve
- * response will be coming asynchronously. If *async is FALSE, the name is
- * already resolved.
- *
- * @param data The sessionhandle pointer
- * @param in_connect is set to the next connection data pointer
- * @param async is set TRUE when an async DNS resolution is pending
- * @see setup_conn()
- *
- * *NOTE* this function assigns the conn->data pointer!
- */
-
-static CURLcode create_conn(struct SessionHandle *data,
-                            struct connectdata **in_connect,
-                            bool *async)
-{
-  CURLcode result=CURLE_OK;
-  struct connectdata *conn;
-  struct connectdata *conn_temp = NULL;
-  size_t urllen;
-  char user[MAX_CURL_USER_LENGTH];
-  char passwd[MAX_CURL_PASSWORD_LENGTH];
-  bool reuse;
-  char *proxy = NULL;
-  bool prot_missing = FALSE;
-
-  *async = FALSE;
-
-  /*************************************************************
-   * Check input data
-   *************************************************************/
-
-  if(!data->change.url)
-    return CURLE_URL_MALFORMAT;
-
-  /* First, split up the current URL in parts so that we can use the
-     parts for checking against the already present connections. In order
-     to not have to modify everything at once, we allocate a temporary
-     connection data struct and fill in for comparison purposes. */
-
-  conn = allocate_conn();
-
-  /* We must set the return variable as soon as possible, so that our
-     parent can cleanup any possible allocs we may have done before
-     any failure */
-  *in_connect = conn;
-
-  if(!conn)
-    return CURLE_OUT_OF_MEMORY;
-
-  conn->data = data; /* Setup the association between this connection
-                        and the SessionHandle */
-
-  conn->proxytype = data->set.proxytype; /* type */
-
-#ifdef CURL_DISABLE_PROXY
-
-  conn->bits.proxy = FALSE;
-  conn->bits.httpproxy = FALSE;
-  conn->bits.proxy_user_passwd = FALSE;
-  conn->bits.tunnel_proxy = FALSE;
-
-#else /* CURL_DISABLE_PROXY */
-
-  conn->bits.proxy = (bool)(data->set.str[STRING_PROXY] &&
-                            *data->set.str[STRING_PROXY]);
-  conn->bits.httpproxy = (bool)(conn->bits.proxy &&
-                                (conn->proxytype == CURLPROXY_HTTP ||
-                                 conn->proxytype == CURLPROXY_HTTP_1_0));
-  conn->bits.proxy_user_passwd =
-    (bool)(NULL != data->set.str[STRING_PROXYUSERNAME]);
-  conn->bits.tunnel_proxy = data->set.tunnel_thru_httpproxy;
-
-#endif /* CURL_DISABLE_PROXY */
-
-  conn->bits.user_passwd = (bool)(NULL != data->set.str[STRING_USERNAME]);
-  conn->bits.ftp_use_epsv = data->set.ftp_use_epsv;
-  conn->bits.ftp_use_eprt = data->set.ftp_use_eprt;
-
-  conn->verifypeer = data->set.ssl.verifypeer;
-  conn->verifyhost = data->set.ssl.verifyhost;
-
-  if(data->multi && Curl_multi_canPipeline(data->multi) &&
-      !conn->master_buffer) {
-    /* Allocate master_buffer to be used for pipelining */
-    conn->master_buffer = calloc(BUFSIZE, sizeof (char));
-    if(!conn->master_buffer)
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-  /* Initialize the pipeline lists */
-  conn->send_pipe = Curl_llist_alloc((curl_llist_dtor) llist_dtor);
-  conn->recv_pipe = Curl_llist_alloc((curl_llist_dtor) llist_dtor);
-  conn->pend_pipe = Curl_llist_alloc((curl_llist_dtor) llist_dtor);
-  conn->done_pipe = Curl_llist_alloc((curl_llist_dtor) llist_dtor);
-  if(!conn->send_pipe || !conn->recv_pipe || !conn->pend_pipe ||
-    !conn->done_pipe)
-    return CURLE_OUT_OF_MEMORY;
-
-  /* This initing continues below, see the comment "Continue connectdata
-   * initialization here" */
-
-  /***********************************************************
-   * We need to allocate memory to store the path in. We get the size of the
-   * full URL to be sure, and we need to make it at least 256 bytes since
-   * other parts of the code will rely on this fact
-   ***********************************************************/
-#define LEAST_PATH_ALLOC 256
-  urllen=strlen(data->change.url);
-  if(urllen < LEAST_PATH_ALLOC)
-    urllen=LEAST_PATH_ALLOC;
-
-  /*
-   * We malloc() the buffers below urllen+2 to make room for to possibilities:
-   * 1 - an extra terminating zero
-   * 2 - an extra slash (in case a syntax like "www.host.com?moo" is used)
-   */
-
-  Curl_safefree(data->state.pathbuffer);
-  data->state.pathbuffer = malloc(urllen+2);
-  if(NULL == data->state.pathbuffer)
-    return CURLE_OUT_OF_MEMORY; /* really bad error */
-  data->state.path = data->state.pathbuffer;
-
-  conn->host.rawalloc = malloc(urllen+2);
-  if(NULL == conn->host.rawalloc)
-    return CURLE_OUT_OF_MEMORY;
-
-  conn->host.name = conn->host.rawalloc;
-  conn->host.name[0] = 0;
-
-  result = parseurlandfillconn(data, conn, &prot_missing);
-  if(result != CURLE_OK) {
-      return result;
-  }
-
-  /*************************************************************
-   * No protocol part in URL was used, add it!
-   *************************************************************/
-  if(prot_missing) {
-    /* We're guessing prefixes here and if we're told to use a proxy or if
-       we're gonna follow a Location: later or... then we need the protocol
-       part added so that we have a valid URL. */
-    char *reurl;
-
-    reurl = aprintf("%s://%s", conn->handler->scheme, data->change.url);
-
-    if(!reurl) {
-      Curl_safefree(proxy);
-      return CURLE_OUT_OF_MEMORY;
-    }
-
-    data->change.url = reurl;
-    data->change.url_alloc = TRUE; /* free this later */
-  }
-
-  /*************************************************************
-   * Parse a user name and password in the URL and strip it out
-   * of the host name
-   *************************************************************/
-  result = parse_url_userpass(data, conn, user, passwd);
-  if(result != CURLE_OK)
-    return result;
-
-#ifndef CURL_DISABLE_PROXY
-  /*************************************************************
-   * Extract the user and password from the authentication string
-   *************************************************************/
-  if(conn->bits.proxy_user_passwd) {
-    result = parse_proxy_auth(data, conn);
-    if(result != CURLE_OK)
-        return result;
-  }
-
-  /*************************************************************
-   * Detect what (if any) proxy to use
-   *************************************************************/
-  if(data->set.str[STRING_PROXY]) {
-    proxy = strdup(data->set.str[STRING_PROXY]);
-    /* if global proxy is set, this is it */
-    if(NULL == proxy) {
-      failf(data, "memory shortage");
-      return CURLE_OUT_OF_MEMORY;
-    }
-  }
-
-  if(data->set.str[STRING_NOPROXY] &&
-     check_noproxy(conn->host.name, data->set.str[STRING_NOPROXY])) {
-    if(proxy) {
-      free(proxy);  /* proxy is in exception list */
-      proxy = NULL;
-    }
-  }
-  else if(!proxy)
-    proxy = detect_proxy(conn);
-
-  if(proxy && !*proxy) {
-    free(proxy);  /* Don't bother with an empty proxy string */
-    proxy = NULL;
-  }
-  /* proxy must be freed later unless NULL */
-  if(proxy && *proxy) {
-    long bits = conn->protocol & (PROT_HTTPS|PROT_SSL);
-
-    if((conn->proxytype == CURLPROXY_HTTP) ||
-       (conn->proxytype == CURLPROXY_HTTP_1_0)) {
-      /* force this connection's protocol to become HTTP */
-      conn->protocol = PROT_HTTP | bits;
-      conn->bits.httpproxy = TRUE;
-    }
-    conn->bits.proxy = TRUE;
-  }
-  else {
-    /* we aren't using the proxy after all... */
-    conn->bits.proxy = FALSE;
-    conn->bits.httpproxy = FALSE;
-    conn->bits.proxy_user_passwd = FALSE;
-    conn->bits.tunnel_proxy = FALSE;
-  }
-
-  /***********************************************************************
-   * If this is supposed to use a proxy, we need to figure out the proxy
-   * host name, so that we can re-use an existing connection
-   * that may exist registered to the same proxy host.
-   ***********************************************************************/
-  if(proxy) {
-    result = parse_proxy(data, conn, proxy);
-    /* parse_proxy has freed the proxy string, so don't try to use it again */
-    proxy = NULL;
-    if(result != CURLE_OK)
-      return result;
-  }
-#endif /* CURL_DISABLE_PROXY */
-
-  /*************************************************************
-   * Setup internals depending on protocol. Needs to be done after
-   * we figured out what/if proxy to use.
-   *************************************************************/
-  result = setup_connection_internals(conn);
-  if(result != CURLE_OK) {
-    Curl_safefree(proxy);
-    return result;
-  }
-
-  /***********************************************************************
-   * file: is a special case in that it doesn't need a network connection
-   ***********************************************************************/
-#ifndef CURL_DISABLE_FILE
-  if(conn->protocol & PROT_FILE) {
-    bool done;
-    /* this is supposed to be the connect function so we better at least check
-       that the file is present here! */
-    DEBUGASSERT(conn->handler->connect_it);
-    result = conn->handler->connect_it(conn, &done);
-
-    /* Setup a "faked" transfer that'll do nothing */
-    if(CURLE_OK == result) {
-      conn->data = data;
-      conn->bits.tcpconnect = TRUE; /* we are "connected */
-
-      ConnectionStore(data, conn);
-
-      /*
-       * Setup whatever necessary for a resumed transfer
-       */
-      result = setup_range(data);
-      if(result) {
-        DEBUGASSERT(conn->handler->done);
-        /* we ignore the return code for the protocol-specific DONE */
-        (void)conn->handler->done(conn, result, FALSE);
-        return result;
-      }
-
-      result = Curl_setup_transfer(conn, -1, -1, FALSE,
-                                   NULL, /* no download */
-                                   -1, NULL); /* no upload */
-    }
-
-    return result;
-  }
-#endif
-
-  /*************************************************************
-   * If the protocol is using SSL and HTTP proxy is used, we set
-   * the tunnel_proxy bit.
-   *************************************************************/
-  if((conn->protocol&PROT_SSL) && conn->bits.httpproxy)
-    conn->bits.tunnel_proxy = TRUE;
-
-  /*************************************************************
-   * Figure out the remote port number and fix it in the URL
-   *************************************************************/
-  result = parse_remote_port(data, conn);
-  if(result != CURLE_OK)
-    return result;
-
-  /*************************************************************
-   * Check for an overridden user name and password, then set it
-   * for use
-   *************************************************************/
-  override_userpass(data, conn, user, passwd);
-  result = set_userpass(conn, user, passwd);
-  if(result != CURLE_OK)
-    return result;
-
-  /* Get a cloned copy of the SSL config situation stored in the
-     connection struct. But to get this going nicely, we must first make
-     sure that the strings in the master copy are pointing to the correct
-     strings in the session handle strings array!
-
-     Keep in mind that the pointers in the master copy are pointing to strings
-     that will be freed as part of the SessionHandle struct, but all cloned
-     copies will be separately allocated.
-  */
-  data->set.ssl.CApath = data->set.str[STRING_SSL_CAPATH];
-  data->set.ssl.CAfile = data->set.str[STRING_SSL_CAFILE];
-  data->set.ssl.CRLfile = data->set.str[STRING_SSL_CRLFILE];
-  data->set.ssl.issuercert = data->set.str[STRING_SSL_ISSUERCERT];
-  data->set.ssl.random_file = data->set.str[STRING_SSL_RANDOM_FILE];
-  data->set.ssl.egdsocket = data->set.str[STRING_SSL_EGDSOCKET];
-  data->set.ssl.cipher_list = data->set.str[STRING_SSL_CIPHER_LIST];
-
-  if(!Curl_clone_ssl_config(&data->set.ssl, &conn->ssl_config))
-    return CURLE_OUT_OF_MEMORY;
-
-  /*************************************************************
-   * Check the current list of connections to see if we can
-   * re-use an already existing one or if we have to create a
-   * new one.
-   *************************************************************/
-
-  /* reuse_fresh is TRUE if we are told to use a new connection by force, but
-     we only acknowledge this option if this is not a re-used connection
-     already (which happens due to follow-location or during a HTTP
-     authentication phase). */
-  if(data->set.reuse_fresh && !data->state.this_is_a_follow)
-    reuse = FALSE;
-  else
-    reuse = ConnectionExists(data, conn, &conn_temp);
-
-  if(reuse) {
-    /*
-     * We already have a connection for this, we got the former connection
-     * in the conn_temp variable and thus we need to cleanup the one we
-     * just allocated before we can move along and use the previously
-     * existing one.
-     */
-    reuse_conn(conn, conn_temp);
-    free(conn);          /* we don't need this anymore */
-    conn = conn_temp;
-    *in_connect = conn;
-    infof(data, "Re-using existing connection! (#%ld) with host %s\n",
-          conn->connectindex,
-          conn->proxy.name?conn->proxy.dispname:conn->host.dispname);
-    /* copy this IP address to the common buffer for the easy handle so that
-       the address can actually survice the removal of this connection. strcpy
-       is safe since the target buffer is big enough to hold the largest
-       possible IP address */
-    strcpy(data->info.ip, conn->ip_addr_str);
-
-  }
-  else {
-    /*
-     * This is a brand new connection, so let's store it in the connection
-     * cache of ours!
-     */
-    ConnectionStore(data, conn);
-  }
-
-  /*
-   * Setup whatever necessary for a resumed transfer
-   */
-  result = setup_range(data);
-  if(result)
-    return result;
-
-  /* Continue connectdata initialization here. */
-
-  /*
-   * Inherit the proper values from the urldata struct AFTER we have arranged
-   * the persistent connection stuff
-   */
-  conn->fread_func = data->set.fread_func;
-  conn->fread_in = data->set.in;
-  conn->seek_func = data->set.seek_func;
-  conn->seek_client = data->set.seek_client;
-
-  /*************************************************************
-   * Resolve the address of the server or proxy
-   *************************************************************/
-  result = resolve_server(data, conn, async);
-
-  return result;
-}
-
-/* setup_conn() is called after the name resolve initiated in
- * create_conn() is all done.
- *
- * setup_conn() also handles reused connections
- *
- * conn->data MUST already have been setup fine (in create_conn)
- */
-
-static CURLcode setup_conn(struct connectdata *conn,
-                           bool *protocol_done)
-{
-  CURLcode result=CURLE_OK;
-  struct SessionHandle *data = conn->data;
-
-  Curl_pgrsTime(data, TIMER_NAMELOOKUP);
-
-  if(conn->protocol & PROT_FILE) {
-    /* There's nothing in this function to setup if we're only doing
-       a file:// transfer */
-    *protocol_done = TRUE;
-    return result;
-  }
-  *protocol_done = FALSE; /* default to not done */
-
-  /* set proxy_connect_closed to false unconditionally already here since it
-     is used strictly to provide extra information to a parent function in the
-     case of proxy CONNECT failures and we must make sure we don't have it
-     lingering set from a previous invoke */
-  conn->bits.proxy_connect_closed = FALSE;
-
-  /*
-   * Set user-agent. Used for HTTP, but since we can attempt to tunnel
-   * basically anything through a http proxy we can't limit this based on
-   * protocol.
-   */
-  if(data->set.str[STRING_USERAGENT]) {
-    Curl_safefree(conn->allocptr.uagent);
-    conn->allocptr.uagent =
-      aprintf("User-Agent: %s\r\n", data->set.str[STRING_USERAGENT]);
-    if(!conn->allocptr.uagent)
-      return CURLE_OUT_OF_MEMORY;
-  }
-
-  data->req.headerbytecount = 0;
-
-#ifdef CURL_DO_LINEEND_CONV
-  data->state.crlf_conversions = 0; /* reset CRLF conversion counter */
-#endif /* CURL_DO_LINEEND_CONV */
-
-  for(;;) {
-    /* loop for CURL_SERVER_CLOSED_CONNECTION */
-
-    if(CURL_SOCKET_BAD == conn->sock[FIRSTSOCKET]) {
-      /* Try to connect only if not already connected */
-      bool connected = FALSE;
-
-      result = ConnectPlease(data, conn, &connected);
-
-      if(connected) {
-        result = Curl_protocol_connect(conn, protocol_done);
-        if(CURLE_OK == result)
-          conn->bits.tcpconnect = TRUE;
-      }
-      else
-        conn->bits.tcpconnect = FALSE;
-
-      /* if the connection was closed by the server while exchanging
-         authentication informations, retry with the new set
-         authentication information */
-      if(conn->bits.proxy_connect_closed) {
-        /* reset the error buffer */
-        if(data->set.errorbuffer)
-          data->set.errorbuffer[0] = '\0';
-        data->state.errorbuf = FALSE;
-        continue;
-      }
-
-      if(CURLE_OK != result)
-        return result;
-    }
-    else {
-      Curl_pgrsTime(data, TIMER_CONNECT); /* we're connected already */
-      Curl_pgrsTime(data, TIMER_APPCONNECT); /* we're connected already */
-      conn->bits.tcpconnect = TRUE;
-      *protocol_done = TRUE;
-      if(data->set.verbose)
-        verboseconnect(conn);
-    }
-    /* Stop the loop now */
-    break;
-  }
-
-  conn->now = Curl_tvnow(); /* time this *after* the connect is done, we
-                               set this here perhaps a second time */
-
-#ifdef __EMX__
-  /*
-   * This check is quite a hack. We're calling _fsetmode to fix the problem
-   * with fwrite converting newline characters (you get mangled text files,
-   * and corrupted binary files when you download to stdout and redirect it to
-   * a file).
-   */
-
-  if((data->set.out)->_handle == NULL) {
-    _fsetmode(stdout, "b");
-  }
-#endif
-
-  return result;
-}
-
-CURLcode Curl_connect(struct SessionHandle *data,
-                      struct connectdata **in_connect,
-                      bool *asyncp,
-                      bool *protocol_done)
-{
-  CURLcode code;
-
-  *asyncp = FALSE; /* assume synchronous resolves by default */
-
-  /* call the stuff that needs to be called */
-  code = create_conn(data, in_connect, asyncp);
-
-  if(CURLE_OK == code) {
-    /* no error */
-    if((*in_connect)->send_pipe->size || (*in_connect)->recv_pipe->size)
-      /* pipelining */
-      *protocol_done = TRUE;
-    else if (!*asyncp) {
-      /* DNS resolution is done: that's either because this is a reused
-         connection, in which case DNS was unnecessary, or because DNS
-         really did finish already (synch resolver/fast async resolve) */
-      code = setup_conn(*in_connect, protocol_done);
-    }
-  }
-
-  if(code && *in_connect) {
-    /* We're not allowed to return failure with memory left allocated
-       in the connectdata struct, free those here */
-    Curl_disconnect(*in_connect); /* close the connection */
-    *in_connect = NULL;           /* return a NULL */
-  }
-
-  return code;
-}
-
-/* Call this function after Curl_connect() has returned async=TRUE and
-   then a successful name resolve has been received.
-
-   Note: this function disconnects and frees the conn data in case of
-   resolve failure */
-CURLcode Curl_async_resolved(struct connectdata *conn,
-                             bool *protocol_done)
-{
-#ifdef CURLRES_ASYNCH
-  CURLcode code;
-
-  if(conn->async.dns) {
-    conn->dns_entry = conn->async.dns;
-    conn->async.dns = NULL;
-  }
-
-  code = setup_conn(conn, protocol_done);
-
-  if(code)
-    /* We're not allowed to return failure with memory left allocated
-       in the connectdata struct, free those here */
-    Curl_disconnect(conn); /* close the connection */
-
-  return code;
-#else
-  (void)conn;
-  (void)protocol_done;
-  return CURLE_OK;
-#endif
-}
-
-
-CURLcode Curl_done(struct connectdata **connp,
-                   CURLcode status,  /* an error if this is called after an
-                                        error was detected */
-                   bool premature)
-{
-  CURLcode result;
-  struct connectdata *conn;
-  struct SessionHandle *data;
-
-  DEBUGASSERT(*connp);
-
-  conn = *connp;
-  data = conn->data;
-
-  Curl_expire(data, 0); /* stop timer */
-
-  if(conn->bits.done)
-    /* Stop if Curl_done() has already been called */
-    return CURLE_OK;
-
-  Curl_getoff_all_pipelines(data, conn);
-
-  if((conn->send_pipe->size + conn->recv_pipe->size != 0 &&
-      !data->set.reuse_forbid &&
-      !conn->bits.close))
-    /* Stop if pipeline is not empty and we do not have to close
-       connection. */
-    return CURLE_OK;
-
-  conn->bits.done = TRUE; /* called just now! */
-
-  /* Cleanup possible redirect junk */
-  if(data->req.newurl) {
-    free(data->req.newurl);
-    data->req.newurl = NULL;
-  }
-  if(data->req.location) {
-    free(data->req.location);
-    data->req.location = NULL;
-  }
-
-  if(conn->dns_entry) {
-    Curl_resolv_unlock(data, conn->dns_entry); /* done with this */
-    conn->dns_entry = NULL;
-  }
-
-  /* this calls the protocol-specific function pointer previously set */
-  if(conn->handler->done)
-    result = conn->handler->done(conn, status, premature);
-  else
-    result = CURLE_OK;
-
-  Curl_pgrsDone(conn); /* done with the operation */
-
-  /* if the transfer was completed in a paused state there can be buffered
-     data left to write and then kill */
-  if(data->state.tempwrite) {
-    free(data->state.tempwrite);
-    data->state.tempwrite = NULL;
-  }
-
-  /* for ares-using, make sure all possible outstanding requests are properly
-     cancelled before we proceed */
-  ares_cancel(data->state.areschannel);
-
-  /* if data->set.reuse_forbid is TRUE, it means the libcurl client has
-     forced us to close this no matter what we think.
-
-     if conn->bits.close is TRUE, it means that the connection should be
-     closed in spite of all our efforts to be nice, due to protocol
-     restrictions in our or the server's end
-
-     if premature is TRUE, it means this connection was said to be DONE before
-     the entire request operation is complete and thus we can't know in what
-     state it is for re-using, so we're forced to close it. In a perfect world
-     we can add code that keep track of if we really must close it here or not,
-     but currently we have no such detail knowledge.
-
-     connectindex == -1 here means that the connection has no spot in the
-     connection cache and thus we must disconnect it here.
-  */
-  if(data->set.reuse_forbid || conn->bits.close || premature ||
-     (-1 == conn->connectindex)) {
-    CURLcode res2 = Curl_disconnect(conn); /* close the connection */
-
-    /* If we had an error already, make sure we return that one. But
-       if we got a new error, return that. */
-    if(!result && res2)
-      result = res2;
-  }
-  else {
-    ConnectionDone(conn); /* the connection is no longer in use */
-
-    /* remember the most recently used connection */
-    data->state.lastconnect = conn->connectindex;
-
-    infof(data, "Connection #%ld to host %s left intact\n",
-          conn->connectindex,
-          conn->bits.httpproxy?conn->proxy.dispname:conn->host.dispname);
-  }
-
-  *connp = NULL; /* to make the caller of this function better detect that
-                    this was either closed or handed over to the connection
-                    cache here, and therefore cannot be used from this point on
-                 */
-
-  return result;
-}
-
-/*
- * do_init() inits the readwrite session. This is inited each time (in the DO
- * function before the protocol-specific DO functions are invoked) for a
- * transfer, sometimes multiple times on the same SessionHandle. Make sure
- * nothing in here depends on stuff that are setup dynamically for the
- * transfer.
- */
-
-static CURLcode do_init(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  struct SingleRequest *k = &data->req;
-
-  conn->bits.done = FALSE; /* Curl_done() is not called yet */
-  conn->bits.do_more = FALSE; /* by default there's no curl_do_more() to use */
-  data->state.expect100header = FALSE;
-
-  if(data->set.opt_no_body)
-    /* in HTTP lingo, no body means using the HEAD request... */
-    data->set.httpreq = HTTPREQ_HEAD;
-  else if(HTTPREQ_HEAD == data->set.httpreq)
-    /* ... but if unset there really is no perfect method that is the
-       "opposite" of HEAD but in reality most people probably think GET
-       then. The important thing is that we can't let it remain HEAD if the
-       opt_no_body is set FALSE since then we'll behave wrong when getting
-       HTTP. */
-    data->set.httpreq = HTTPREQ_GET;
-
-  /* NB: the content encoding software depends on this initialization */
-  Curl_easy_initHandleData(data);
-
-  k->start = Curl_tvnow(); /* start time */
-  k->now = k->start;   /* current time is now */
-  k->header = TRUE; /* assume header */
-
-  k->bytecount = 0;
-
-  k->buf = data->state.buffer;
-  k->uploadbuf = data->state.uploadbuffer;
-  k->hbufp = data->state.headerbuff;
-  k->ignorebody=FALSE;
-
-  Curl_pgrsTime(data, TIMER_PRETRANSFER);
-  Curl_speedinit(data);
-
-  Curl_pgrsSetUploadCounter(data, 0);
-  Curl_pgrsSetDownloadCounter(data, 0);
-
-  return CURLE_OK;
-}
-
-/*
- * do_complete is called when the DO actions are complete.
- *
- * We init chunking and trailer bits to their default values here immediately
- * before receiving any header data for the current request in the pipeline.
- */
-static void do_complete(struct connectdata *conn)
-{
-  conn->data->req.chunk=FALSE;
-  conn->data->req.trailerhdrpresent=FALSE;
-
-  conn->data->req.maxfd = (conn->sockfd>conn->writesockfd?
-                               conn->sockfd:conn->writesockfd)+1;
-}
-
-CURLcode Curl_do(struct connectdata **connp, bool *done)
-{
-  CURLcode result=CURLE_OK;
-  struct connectdata *conn = *connp;
-  struct SessionHandle *data = conn->data;
-
-  /* setup and init stuff before DO starts, in preparing for the transfer */
-  do_init(conn);
-
-  if(conn->handler->do_it) {
-    /* generic protocol-specific function pointer set in curl_connect() */
-    result = conn->handler->do_it(conn, done);
-
-    /* This was formerly done in transfer.c, but we better do it here */
-    if((CURLE_SEND_ERROR == result) && conn->bits.reuse) {
-        /*
-         * If the connection is using an easy handle, call reconnect
-         * to re-establish the connection.  Otherwise, let the multi logic
-         * figure out how to re-establish the connection.
-         */
-        if(!data->multi) {
-          result = Curl_reconnect_request(connp);
-
-          if(result == CURLE_OK) {
-            /* ... finally back to actually retry the DO phase */
-            result = conn->handler->do_it(conn, done);
-          }
-        }
-        else {
-          return result;
-        }
-    }
-
-    if((result == CURLE_OK) && *done)
-      /* do_complete must be called after the protocol-specific DO function */
-      do_complete(conn);
-  }
-  return result;
-}
-
-CURLcode Curl_do_more(struct connectdata *conn)
-{
-  CURLcode result=CURLE_OK;
-
-  if(conn->handler->do_more)
-    result = conn->handler->do_more(conn);
-
-  if(result == CURLE_OK)
-    /* do_complete must be called after the protocol-specific DO function */
-    do_complete(conn);
-
-  return result;
-}
-
-/* Called on connect, and if there's already a protocol-specific struct
-   allocated for a different connection, this frees it that it can be setup
-   properly later on. */
-void Curl_reset_reqproto(struct connectdata *conn)
-{
-  struct SessionHandle *data = conn->data;
-  if(data->state.proto.generic && data->state.current_conn != conn) {
-    free(data->state.proto.generic);
-    data->state.proto.generic = NULL;
-  }
-  data->state.current_conn = conn;
-}
diff --git a/src/other/curl/lib/url.h b/src/other/curl/lib/url.h
deleted file mode 100644
index cb3dd2f..0000000
--- a/src/other/curl/lib/url.h
+++ /dev/null
@@ -1,89 +0,0 @@
-#ifndef __URL_H
-#define __URL_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include <stdarg.h> /* to make sure we have ap_list */
-
-/*
- * Prototypes for library-wide functions provided by url.c
- */
-
-CURLcode Curl_open(struct SessionHandle **curl);
-CURLcode Curl_init_userdefined(struct UserDefined *set);
-CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
-                     va_list arg);
-CURLcode Curl_dupset(struct SessionHandle * dst, struct SessionHandle * src);
-void Curl_freeset(struct SessionHandle * data);
-CURLcode Curl_close(struct SessionHandle *data); /* opposite of curl_open() */
-CURLcode Curl_connect(struct SessionHandle *, struct connectdata **,
-                      bool *async, bool *protocol_connect);
-CURLcode Curl_async_resolved(struct connectdata *conn,
-                             bool *protocol_connect);
-CURLcode Curl_do(struct connectdata **, bool *done);
-CURLcode Curl_do_more(struct connectdata *);
-CURLcode Curl_done(struct connectdata **, CURLcode, bool premature);
-CURLcode Curl_disconnect(struct connectdata *);
-CURLcode Curl_protocol_connect(struct connectdata *conn, bool *done);
-CURLcode Curl_protocol_connecting(struct connectdata *conn, bool *done);
-CURLcode Curl_protocol_doing(struct connectdata *conn, bool *done);
-void Curl_safefree(void *ptr);
-
-/* create a connection cache */
-struct conncache *Curl_mk_connc(int type, long amount);
-/* free a connection cache */
-void Curl_rm_connc(struct conncache *c);
-/* Change number of entries of a connection cache */
-CURLcode Curl_ch_connc(struct SessionHandle *data,
-                       struct conncache *c,
-                       long newamount);
-
-int Curl_protocol_getsock(struct connectdata *conn,
-                          curl_socket_t *socks,
-                          int numsocks);
-int Curl_doing_getsock(struct connectdata *conn,
-                       curl_socket_t *socks,
-                       int numsocks);
-
-bool Curl_isPipeliningEnabled(const struct SessionHandle *handle);
-CURLcode Curl_addHandleToPipeline(struct SessionHandle *handle,
-                                  struct curl_llist *pipeline);
-int Curl_removeHandleFromPipeline(struct SessionHandle *handle,
-                                  struct curl_llist *pipeline);
-/* remove the specified connection from all (possible) pipelines and related
-   queues */
-void Curl_getoff_all_pipelines(struct SessionHandle *data,
-                               struct connectdata *conn);
-
-void Curl_close_connections(struct SessionHandle *data);
-
-/* Called on connect, and if there's already a protocol-specific struct
-   allocated for a different connection, this frees it that it can be setup
-   properly later on. */
-void Curl_reset_reqproto(struct connectdata *conn);
-
-#define CURL_DEFAULT_PROXY_PORT 1080 /* default proxy port unless specified */
-#define CURL_DEFAULT_SOCKS5_GSSAPI_SERVICE "rcmd" /* default socks5 gssapi service */
-
-CURLcode Curl_connected_proxy(struct connectdata *conn);
-
-#endif
diff --git a/src/other/curl/lib/urldata.h b/src/other/curl/lib/urldata.h
deleted file mode 100644
index ad172d6..0000000
--- a/src/other/curl/lib/urldata.h
+++ /dev/null
@@ -1,1427 +0,0 @@
-#ifndef __URLDATA_H
-#define __URLDATA_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* This file is for lib internal stuff */
-
-#include "setup.h"
-
-#define PORT_FTP 21
-#define PORT_FTPS 990
-#define PORT_TELNET 23
-#define PORT_HTTP 80
-#define PORT_HTTPS 443
-#define PORT_DICT 2628
-#define PORT_LDAP 389
-#define PORT_LDAPS 636
-#define PORT_TFTP 69
-#define PORT_SSH 22
-#define PORT_IMAP 143
-#define PORT_IMAPS 993
-#define PORT_POP3 110
-#define PORT_POP3S 995
-#define PORT_SMTP 25
-#define PORT_SMTPS 465 /* sometimes called SSMTP */
-#define PORT_RTSP 554
-
-#define DICT_MATCH "/MATCH:"
-#define DICT_MATCH2 "/M:"
-#define DICT_MATCH3 "/FIND:"
-#define DICT_DEFINE "/DEFINE:"
-#define DICT_DEFINE2 "/D:"
-#define DICT_DEFINE3 "/LOOKUP:"
-
-#define CURL_DEFAULT_USER "anonymous"
-#define CURL_DEFAULT_PASSWORD "ftp at example.com"
-
-/* length of longest IPv6 address string including the trailing null */
-#define MAX_IPADR_LEN sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255")
-
-/* Default FTP/IMAP etc response timeout in milliseconds.
-   Symbian OS panics when given a timeout much greater than 1/2 hour.
-*/
-#define RESP_TIMEOUT (1800*1000)
-
-#include "cookie.h"
-#include "formdata.h"
-
-#ifdef USE_SSLEAY
-#ifdef USE_OPENSSL
-#include "openssl/rsa.h"
-#include "openssl/crypto.h"
-#include "openssl/x509.h"
-#include "openssl/pem.h"
-#include "openssl/ssl.h"
-#include "openssl/err.h"
-#ifdef HAVE_OPENSSL_ENGINE_H
-#include <openssl/engine.h>
-#endif
-#ifdef HAVE_OPENSSL_PKCS12_H
-#include <openssl/pkcs12.h>
-#endif
-#else /* SSLeay-style includes */
-#include "rsa.h"
-#include "crypto.h"
-#include "x509.h"
-#include "pem.h"
-#include "ssl.h"
-#include "err.h"
-#ifdef HAVE_OPENSSL_ENGINE_H
-#include <engine.h>
-#endif
-#ifdef HAVE_OPENSSL_PKCS12_H
-#include <pkcs12.h>
-#endif
-#endif /* USE_OPENSSL */
-#ifdef USE_GNUTLS
-#error Configuration error; cannot use GnuTLS *and* OpenSSL.
-#endif
-#endif /* USE_SSLEAY */
-
-#ifdef USE_GNUTLS
-#include <gnutls/gnutls.h>
-#endif
-
-#ifdef USE_NSS
-#include <nspr.h>
-#include <pk11pub.h>
-#endif
-
-#ifdef USE_QSOSSL
-#include <qsossl.h>
-#endif
-
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-
-#include "timeval.h"
-
-#ifdef HAVE_ZLIB_H
-#include <zlib.h>               /* for content-encoding */
-#ifdef __SYMBIAN32__
-/* zlib pollutes the namespace with this definition */
-#undef WIN32
-#endif
-#endif
-
-#ifdef USE_ARES
-#  if defined(CURL_STATICLIB) && !defined(CARES_STATICLIB) && \
-     (defined(WIN32) || defined(_WIN32) || defined(__SYMBIAN32__))
-#    define CARES_STATICLIB
-#  endif
-#  include <ares.h>
-#endif
-
-#include <curl/curl.h>
-
-#include "http_chunks.h" /* for the structs and enum stuff */
-#include "hostip.h"
-#include "hash.h"
-#include "splay.h"
-
-#include "imap.h"
-#include "pop3.h"
-#include "smtp.h"
-#include "ftp.h"
-#include "file.h"
-#include "ssh.h"
-#include "http.h"
-#include "rtsp.h"
-
-#ifdef HAVE_GSSAPI
-# ifdef HAVE_GSSGNU
-#  include <gss.h>
-# elif defined HAVE_GSSMIT
-#  include <gssapi/gssapi.h>
-#  include <gssapi/gssapi_generic.h>
-# else
-#  include <gssapi.h>
-# endif
-#endif
-
-#ifdef HAVE_LIBSSH2_H
-#include <libssh2.h>
-#include <libssh2_sftp.h>
-#endif /* HAVE_LIBSSH2_H */
-
-/* Download buffer size, keep it fairly big for speed reasons */
-#undef BUFSIZE
-#define BUFSIZE CURL_MAX_WRITE_SIZE
-
-/* Initial size of the buffer to store headers in, it'll be enlarged in case
-   of need. */
-#define HEADERSIZE 256
-
-#define CURLEASY_MAGIC_NUMBER 0xc0dedbadU
-
-/* Some convenience macros to get the larger/smaller value out of two given.
-   We prefix with CURL to prevent name collisions. */
-#define CURLMAX(x,y) ((x)>(y)?(x):(y))
-#define CURLMIN(x,y) ((x)<(y)?(x):(y))
-
-
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-/* Types needed for krb4/5-ftp connections */
-struct krb4buffer {
-  void *data;
-  size_t size;
-  size_t index;
-  int eof_flag;
-};
-enum protection_level {
-  prot_clear,
-  prot_safe,
-  prot_confidential,
-  prot_private,
-  prot_cmd
-};
-#endif
-
-/* enum for the nonblocking SSL connection state machine */
-typedef enum {
-  ssl_connect_1,
-  ssl_connect_2,
-  ssl_connect_2_reading,
-  ssl_connect_2_writing,
-  ssl_connect_3,
-  ssl_connect_done
-} ssl_connect_state;
-
-typedef enum {
-  ssl_connection_none,
-  ssl_connection_negotiating,
-  ssl_connection_complete
-} ssl_connection_state;
-
-/* struct for data related to each SSL connection */
-struct ssl_connect_data {
-  /* Use ssl encrypted communications TRUE/FALSE, not necessarily using it atm
-     but at least asked to or meaning to use it. See 'state' for the exact
-     current state of the connection. */
-  bool use;
-  ssl_connection_state state;
-#ifdef USE_SSLEAY
-  /* these ones requires specific SSL-types */
-  SSL_CTX* ctx;
-  SSL*     handle;
-  X509*    server_cert;
-  ssl_connect_state connecting_state;
-#endif /* USE_SSLEAY */
-#ifdef USE_GNUTLS
-  gnutls_session session;
-  gnutls_certificate_credentials cred;
-#endif /* USE_GNUTLS */
-#ifdef USE_NSS
-  PRFileDesc *handle;
-  char *client_nickname;
-  struct SessionHandle *data;
-#ifdef HAVE_PK11_CREATEGENERICOBJECT
-  PK11GenericObject *key;
-  PK11GenericObject *cacert[2];
-#endif
-#endif /* USE_NSS */
-#ifdef USE_QSOSSL
-  SSLHandle *handle;
-#endif /* USE_QSOSSL */
-};
-
-struct ssl_config_data {
-  long version;          /* what version the client wants to use */
-  long certverifyresult; /* result from the certificate verification */
-  long verifypeer;       /* set TRUE if this is desired */
-  long verifyhost;       /* 0: no verify
-                            1: check that CN exists
-                            2: CN must match hostname */
-  char *CApath;          /* certificate dir (doesn't work on windows) */
-  char *CAfile;          /* certificate to verify peer against */
-  const char *CRLfile;   /* CRL to check certificate revocation */
-  const char *issuercert;/* optional issuer certificate filename */
-  char *random_file;     /* path to file containing "random" data */
-  char *egdsocket;       /* path to file containing the EGD daemon socket */
-  char *cipher_list;     /* list of ciphers to use */
-  long numsessions;      /* SSL session id cache size */
-  curl_ssl_ctx_callback fsslctx; /* function to initialize ssl ctx */
-  void *fsslctxp;        /* parameter for call back */
-  bool sessionid;        /* cache session IDs or not */
-  bool certinfo;         /* gather lots of certificate info */
-};
-
-/* information stored about one single SSL session */
-struct curl_ssl_session {
-  char *name;       /* host name for which this ID was used */
-  void *sessionid;  /* as returned from the SSL layer */
-  size_t idsize;    /* if known, otherwise 0 */
-  long age;         /* just a number, the higher the more recent */
-  unsigned short remote_port; /* remote port to connect to */
-  struct ssl_config_data ssl_config; /* setup for this session */
-};
-
-/* Struct used for Digest challenge-response authentication */
-struct digestdata {
-  char *nonce;
-  char *cnonce;
-  char *realm;
-  int algo;
-  bool stale; /* set true for re-negotiation */
-  char *opaque;
-  char *qop;
-  char *algorithm;
-  int nc; /* nounce count */
-};
-
-typedef enum {
-  NTLMSTATE_NONE,
-  NTLMSTATE_TYPE1,
-  NTLMSTATE_TYPE2,
-  NTLMSTATE_TYPE3,
-  NTLMSTATE_LAST
-} curlntlm;
-
-#ifdef USE_WINDOWS_SSPI
-#include "curl_sspi.h"
-#endif
-
-#if defined(CURL_DOES_CONVERSIONS) && defined(HAVE_ICONV)
-#include <iconv.h>
-#endif
-
-/* Struct used for NTLM challenge-response authentication */
-struct ntlmdata {
-  curlntlm state;
-#ifdef USE_WINDOWS_SSPI
-  CredHandle handle;
-  CtxtHandle c_handle;
-  SEC_WINNT_AUTH_IDENTITY identity;
-  SEC_WINNT_AUTH_IDENTITY *p_identity;
-  int has_handles;
-  void *type_2;
-  int n_type_2;
-#else
-  unsigned int flags;
-  unsigned char nonce[8];
-#endif
-};
-
-#ifdef HAVE_GSSAPI
-struct negotiatedata {
-  /* when doing Negotiate we first need to receive an auth token and then we
-     need to send our header */
-  enum { GSS_AUTHNONE, GSS_AUTHRECV, GSS_AUTHSENT } state;
-  bool gss; /* Whether we're processing GSS-Negotiate or Negotiate */
-  const char* protocol; /* "GSS-Negotiate" or "Negotiate" */
-  OM_uint32 status;
-  gss_ctx_id_t context;
-  gss_name_t server_name;
-  gss_buffer_desc output_token;
-};
-#endif
-
-
-/*
- * Boolean values that concerns this connection.
- */
-struct ConnectBits {
-  bool close; /* if set, we close the connection after this request */
-  bool reuse; /* if set, this is a re-used connection */
-  bool proxy; /* if set, this transfer is done through a proxy - any type */
-  bool httpproxy;    /* if set, this transfer is done through a http proxy */
-  bool user_passwd;    /* do we use user+password for this connection? */
-  bool proxy_user_passwd; /* user+password for the proxy? */
-  bool ipv6_ip; /* we communicate with a remote site specified with pure IPv6
-                   IP address */
-  bool ipv6;    /* we communicate with a site using an IPv6 address */
-
-  bool do_more; /* this is set TRUE if the ->curl_do_more() function is
-                   supposed to be called, after ->curl_do() */
-
-  bool tcpconnect;    /* the TCP layer (or similar) is connected, this is set
-                         the first time on the first connect function call */
-  bool protoconnstart;/* the protocol layer has STARTED its operation after
-                         the TCP layer connect */
-
-  bool retry;         /* this connection is about to get closed and then
-                         re-attempted at another connection. */
-  bool tunnel_proxy;  /* if CONNECT is used to "tunnel" through the proxy.
-                         This is implicit when SSL-protocols are used through
-                         proxies, but can also be enabled explicitly by
-                         apps */
-  bool tunnel_connecting; /* TRUE while we're still waiting for a proxy CONNECT
-                           */
-  bool authneg;       /* TRUE when the auth phase has started, which means
-                         that we are creating a request with an auth header,
-                         but it is not the final request in the auth
-                         negotiation. */
-  bool rewindaftersend;/* TRUE when the sending couldn't be stopped even
-                          though it will be discarded. When the whole send
-                          operation is done, we must call the data rewind
-                          callback. */
-  bool ftp_use_epsv;  /* As set with CURLOPT_FTP_USE_EPSV, but if we find out
-                         EPSV doesn't work we disable it for the forthcoming
-                         requests */
-
-  bool ftp_use_eprt;  /* As set with CURLOPT_FTP_USE_EPRT, but if we find out
-                         EPRT doesn't work we disable it for the forthcoming
-                         requests */
-  bool netrc;         /* name+password provided by netrc */
-  bool userpwd_in_url; /* name+password found in url */
-
-  bool done;          /* set to FALSE when Curl_do() is called and set to TRUE
-                         when Curl_done() is called, to prevent Curl_done() to
-                         get invoked twice when the multi interface is
-                         used. */
-  bool stream_was_rewound; /* Indicates that the stream was rewound after a
-                              request read past the end of its response byte
-                              boundary */
-  bool proxy_connect_closed; /* set true if a proxy disconnected the
-                                connection in a CONNECT request with auth, so
-                                that libcurl should reconnect and continue. */
-  bool bound; /* set true if bind() has already been done on this socket/
-                 connection */
-};
-
-struct hostname {
-  char *rawalloc; /* allocated "raw" version of the name */
-  char *encalloc; /* allocated IDN-encoded version of the name */
-  char *name;     /* name to use internally, might be encoded, might be raw */
-  const char *dispname; /* name to display, as 'name' might be encoded */
-};
-
-/*
- * Flags on the keepon member of the Curl_transfer_keeper
- */
-
-#define KEEP_NONE  0
-#define KEEP_RECV  (1<<0)     /* there is or may be data to read */
-#define KEEP_SEND (1<<1)     /* there is or may be data to write */
-#define KEEP_RECV_HOLD (1<<2) /* when set, no reading should be done but there
-                                 might still be data to read */
-#define KEEP_SEND_HOLD (1<<3) /* when set, no writing should be done but there
-                                  might still be data to write */
-#define KEEP_RECV_PAUSE (1<<4) /* reading is paused */
-#define KEEP_SEND_PAUSE (1<<5) /* writing is paused */
-
-#define KEEP_RECVBITS (KEEP_RECV | KEEP_RECV_HOLD | KEEP_RECV_PAUSE)
-#define KEEP_SENDBITS (KEEP_SEND | KEEP_SEND_HOLD | KEEP_SEND_PAUSE)
-
-
-#ifdef HAVE_LIBZ
-typedef enum {
-  ZLIB_UNINIT,          /* uninitialized */
-  ZLIB_INIT,            /* initialized */
-  ZLIB_GZIP_HEADER,     /* reading gzip header */
-  ZLIB_GZIP_INFLATING,  /* inflating gzip stream */
-  ZLIB_INIT_GZIP        /* initialized in transparent gzip mode */
-} zlibInitState;
-#endif
-
-#ifdef CURLRES_ASYNCH
-struct Curl_async {
-  char *hostname;
-  int port;
-  struct Curl_dns_entry *dns;
-  bool done;  /* set TRUE when the lookup is complete */
-  int status; /* if done is TRUE, this is the status from the callback */
-  void *os_specific;  /* 'struct thread_data' for Windows */
-};
-#endif
-
-#define FIRSTSOCKET     0
-#define SECONDARYSOCKET 1
-
-/* These function pointer types are here only to allow easier typecasting
-   within the source when we need to cast between data pointers (such as NULL)
-   and function pointers. */
-typedef CURLcode (*Curl_do_more_func)(struct connectdata *);
-typedef CURLcode (*Curl_done_func)(struct connectdata *, CURLcode, bool);
-
-
-enum expect100 {
-  EXP100_SEND_DATA,           /* enough waiting, just send the body now */
-  EXP100_AWAITING_CONTINUE,   /* waiting for the 100 Continue header */
-  EXP100_SENDING_REQUEST,     /* still sending the request but will wait for
-                                 the 100 header once done with the request */
-  EXP100_FAILED               /* used on 417 Expectation Failed */
-};
-
-/*
- * Request specific data in the easy handle (SessionHandle).  Previously,
- * these members were on the connectdata struct but since a conn struct may
- * now be shared between different SessionHandles, we store connection-specific
- * data here. This struct only keeps stuff that's interesting for *this*
- * request, as it will be cleared between multiple ones
- */
-struct SingleRequest {
-  curl_off_t size;        /* -1 if unknown at this point */
-  curl_off_t *bytecountp; /* return number of bytes read or NULL */
-
-  curl_off_t maxdownload; /* in bytes, the maximum amount of data to fetch,
-                             -1 means unlimited */
-  curl_off_t *writebytecountp; /* return number of bytes written or NULL */
-
-  curl_off_t bytecount;         /* total number of bytes read */
-  curl_off_t writebytecount;    /* number of bytes written */
-
-  long headerbytecount;         /* only count received headers */
-  long deductheadercount; /* this amount of bytes doesn't count when we check
-                             if anything has been transfered at the end of a
-                             connection. We use this counter to make only a
-                             100 reply (without a following second response
-                             code) result in a CURLE_GOT_NOTHING error code */
-
-  struct timeval start;         /* transfer started at this time */
-  struct timeval now;           /* current time */
-  bool header;                  /* incoming data has HTTP header */
-  enum {
-    HEADER_NORMAL,              /* no bad header at all */
-    HEADER_PARTHEADER,          /* part of the chunk is a bad header, the rest
-                                   is normal data */
-    HEADER_ALLBAD               /* all was believed to be header */
-  } badheader;                  /* the header was deemed bad and will be
-                                   written as body */
-  int headerline;               /* counts header lines to better track the
-                                   first one */
-  char *hbufp;                  /* points at *end* of header line */
-  size_t hbuflen;
-  char *str;                    /* within buf */
-  char *str_start;              /* within buf */
-  char *end_ptr;                /* within buf */
-  char *p;                      /* within headerbuff */
-  bool content_range;           /* set TRUE if Content-Range: was found */
-  curl_off_t offset;            /* possible resume offset read from the
-                                   Content-Range: header */
-  int httpcode;                 /* error code from the 'HTTP/1.? XXX' or
-                                   'RTSP/1.? XXX' line */
-  struct timeval start100;      /* time stamp to wait for the 100 code from */
-  enum expect100 exp100;        /* expect 100 continue state */
-
-  int content_encoding;         /* What content encoding. sec 3.5, RFC2616. */
-
-#define IDENTITY 0              /* No encoding */
-#define DEFLATE 1               /* zlib deflate [RFC 1950 & 1951] */
-#define GZIP 2                  /* gzip algorithm [RFC 1952] */
-#define COMPRESS 3              /* Not handled, added for completeness */
-
-#ifdef HAVE_LIBZ
-  zlibInitState zlib_init;      /* possible zlib init state;
-                                   undefined if Content-Encoding header. */
-  z_stream z;                   /* State structure for zlib. */
-#endif
-
-  time_t timeofdoc;
-  long bodywrites;
-
-  char *buf;
-  char *uploadbuf;
-  curl_socket_t maxfd;
-
-  int keepon;
-
-  bool upload_done; /* set to TRUE when doing chunked transfer-encoding upload
-                       and we're uploading the last chunk */
-
-  bool ignorebody;  /* we read a response-body but we ignore it! */
-  bool ignorecl;    /* This HTTP response has no body so we ignore the Content-
-                       Length: header */
-
-  char *location;   /* This points to an allocated version of the Location:
-                       header data */
-  char *newurl;     /* Set to the new URL to use when a redirect or a retry is
-                       wanted */
-
-  /* 'upload_present' is used to keep a byte counter of how much data there is
-     still left in the buffer, aimed for upload. */
-  ssize_t upload_present;
-
-   /* 'upload_fromhere' is used as a read-pointer when we uploaded parts of a
-      buffer, so the next read should read from where this pointer points to,
-      and the 'upload_present' contains the number of bytes available at this
-      position */
-  char *upload_fromhere;
-
-  bool chunk; /* if set, this is a chunked transfer-encoding */
-  bool upload_chunky; /* set TRUE if we are doing chunked transfer-encoding
-                         on upload */
-  bool getheader;     /* TRUE if header parsing is wanted */
-
-  bool forbidchunk;   /* used only to explicitly forbid chunk-upload for
-                         specific upload buffers. See readmoredata() in
-                         http.c for details. */
-  bool trailerhdrpresent; /* Set when Trailer: header found in HTTP response.
-                             Required to determine whether to look for trailers
-                             in case of Transfer-Encoding: chunking */
-};
-
-/*
- * Specific protocol handler.
- */
-
-struct Curl_handler {
-  const char * scheme;        /* URL scheme name. */
-
-  /* Complement to setup_connection_internals(). */
-  CURLcode (*setup_connection)(struct connectdata *);
-
-  /* These two functions MUST be set to be protocol dependent */
-  CURLcode (*do_it)(struct connectdata *, bool *done);
-  Curl_done_func done;
-
-  /* If the curl_do() function is better made in two halves, this
-   * curl_do_more() function will be called afterwards, if set. For example
-   * for doing the FTP stuff after the PASV/PORT command.
-   */
-  Curl_do_more_func do_more;
-
-  /* This function *MAY* be set to a protocol-dependent function that is run
-   * after the connect() and everything is done, as a step in the connection.
-   * The 'done' pointer points to a bool that should be set to TRUE if the
-   * function completes before return. If it doesn't complete, the caller
-   * should call the curl_connecting() function until it is.
-   */
-  CURLcode (*connect_it)(struct connectdata *, bool *done);
-
-  /* See above. Currently only used for FTP. */
-  CURLcode (*connecting)(struct connectdata *, bool *done);
-  CURLcode (*doing)(struct connectdata *, bool *done);
-
-  /* Called from the multi interface during the PROTOCONNECT phase, and it
-     should then return a proper fd set */
-  int (*proto_getsock)(struct connectdata *conn,
-                       curl_socket_t *socks,
-                       int numsocks);
-
-  /* Called from the multi interface during the DOING phase, and it should
-     then return a proper fd set */
-  int (*doing_getsock)(struct connectdata *conn,
-                       curl_socket_t *socks,
-                       int numsocks);
-
-  /* Called from the multi interface during the DO_DONE, PERFORM and
-     WAITPERFORM phases, and it should then return a proper fd set. Not setting
-     this will make libcurl use the generic default one. */
-  int (*perform_getsock)(const struct connectdata *conn,
-                         curl_socket_t *socks,
-                         int numsocks);
-
-  /* This function *MAY* be set to a protocol-dependent function that is run
-   * by the curl_disconnect(), as a step in the disconnection.
-   */
-  CURLcode (*disconnect)(struct connectdata *);
-
-  long defport;       /* Default port. */
-  long protocol;      /* PROT_* flags concerning the protocol set */
-};
-
-/*
- * The connectdata struct contains all fields and variables that should be
- * unique for an entire connection.
- */
-struct connectdata {
-  /* 'data' is the CURRENT SessionHandle using this connection -- take great
-     caution that this might very well vary between different times this
-     connection is used! */
-  struct SessionHandle *data;
-
-  /* chunk is for HTTP chunked encoding, but is in the general connectdata
-     struct only because we can do just about any protocol through a HTTP proxy
-     and a HTTP proxy may in fact respond using chunked encoding */
-  struct Curl_chunker chunk;
-
-  bool inuse; /* This is a marker for the connection cache logic. If this is
-                 TRUE this handle is being used by an easy handle and cannot
-                 be used by any other easy handle without careful
-                 consideration (== only for pipelining). */
-
-  /**** Fields set when inited and not modified again */
-  long connectindex; /* what index in the connection cache connects index this
-                        particular struct has */
-  long protocol; /* PROT_* flags concerning the protocol set */
-#define PROT_HTTP    CURLPROTO_HTTP
-#define PROT_HTTPS   CURLPROTO_HTTPS
-#define PROT_FTP     CURLPROTO_FTP
-#define PROT_TELNET  CURLPROTO_TELNET
-#define PROT_DICT    CURLPROTO_DICT
-#define PROT_LDAP    CURLPROTO_LDAP
-#define PROT_FILE    CURLPROTO_FILE
-#define PROT_FTPS    CURLPROTO_FTPS
-#define PROT_TFTP    CURLPROTO_TFTP
-#define PROT_SCP     CURLPROTO_SCP
-#define PROT_SFTP    CURLPROTO_SFTP
-#define PROT_IMAP    CURLPROTO_IMAP
-#define PROT_IMAPS   CURLPROTO_IMAPS
-#define PROT_POP3    CURLPROTO_POP3
-#define PROT_POP3S   CURLPROTO_POP3S
-#define PROT_SMTP    CURLPROTO_SMTP
-#define PROT_SMTPS   CURLPROTO_SMTPS
-#define PROT_RTSP    CURLPROTO_RTSP
-
-/* (1<<18) is currently the highest used bit in the public bitmask. We make
-   sure we use "private bits" above the public ones to make things easier. */
-
-#define PROT_EXTMASK 0xfffff
-
-#define PROT_SSL     (1<<25) /* protocol requires SSL */
-
-/* these ones need action before socket close */
-#define PROT_CLOSEACTION (PROT_FTP | PROT_IMAP | PROT_POP3)
-#define PROT_DUALCHANNEL PROT_FTP /* these protocols use two connections */
-
-  /* 'dns_entry' is the particular host we use. This points to an entry in the
-     DNS cache and it will not get pruned while locked. It gets unlocked in
-     Curl_done(). This entry will be NULL if the connection is re-used as then
-     there is no name resolve done. */
-  struct Curl_dns_entry *dns_entry;
-
-  /* 'ip_addr' is the particular IP we connected to. It points to a struct
-     within the DNS cache, so this pointer is only valid as long as the DNS
-     cache entry remains locked. It gets unlocked in Curl_done() */
-  Curl_addrinfo *ip_addr;
-
-  /* 'ip_addr_str' is the ip_addr data as a human readable string.
-     It remains available as long as the connection does, which is longer than
-     the ip_addr itself. */
-  char ip_addr_str[MAX_IPADR_LEN];
-
-  unsigned int scope;    /* address scope for IPv6 */
-
-  int socktype;  /* SOCK_STREAM or SOCK_DGRAM */
-
-  struct hostname host;
-  struct hostname proxy;
-
-  long port;       /* which port to use locally */
-  unsigned short remote_port; /* what remote port to connect to,
-                                 not the proxy port! */
-
-  char *user;    /* user name string, allocated */
-  char *passwd;  /* password string, allocated */
-
-  char *proxyuser;    /* proxy user name string, allocated */
-  char *proxypasswd;  /* proxy password string, allocated */
-  curl_proxytype proxytype; /* what kind of proxy that is in use */
-
-  int httpversion;        /* the HTTP version*10 reported by the server */
-  int rtspversion;        /* the RTSP version*10 reported by the server */
-
-  struct timeval now;     /* "current" time */
-  struct timeval created; /* creation time */
-  curl_socket_t sock[2]; /* two sockets, the second is used for the data
-                            transfer when doing FTP */
-
-  struct ssl_connect_data ssl[2]; /* this is for ssl-stuff */
-  struct ssl_config_data ssl_config;
-
-  struct ConnectBits bits;    /* various state-flags for this connection */
-
-  const struct Curl_handler * handler;  /* Connection's protocol handler. */
-
-  /**** curl_get() phase fields */
-
-  curl_socket_t sockfd;   /* socket to read from or CURL_SOCKET_BAD */
-  curl_socket_t writesockfd; /* socket to write to, it may very
-                                well be the same we read from.
-                                CURL_SOCKET_BAD disables */
-
-  /** Dynamicly allocated strings, may need to be freed before this **/
-  /** struct is killed.                                             **/
-  struct dynamically_allocated_data {
-    char *proxyuserpwd; /* free later if not NULL! */
-    char *uagent; /* free later if not NULL! */
-    char *accept_encoding; /* free later if not NULL! */
-    char *userpwd; /* free later if not NULL! */
-    char *rangeline; /* free later if not NULL! */
-    char *ref; /* free later if not NULL! */
-    char *host; /* free later if not NULL */
-    char *cookiehost; /* free later if not NULL */
-    char *rtsp_transport; /* free later if not NULL */
-  } allocptr;
-
-  int sec_complete; /* if kerberos is enabled for this connection */
-#if defined(HAVE_KRB4) || defined(HAVE_GSSAPI)
-  enum protection_level command_prot;
-  enum protection_level data_prot;
-  enum protection_level request_data_prot;
-  size_t buffer_size;
-  struct krb4buffer in_buffer, out_buffer;
-  void *app_data;
-  const struct Curl_sec_client_mech *mech;
-  struct sockaddr_in local_addr;
-#endif
-
-  /* the two following *_inuse fields are only flags, not counters in any way.
-     If TRUE it means the channel is in use, and if FALSE it means the channel
-     is up for grabs by one. */
-
-  bool readchannel_inuse;  /* whether the read channel is in use by an easy
-                              handle */
-  bool writechannel_inuse; /* whether the write channel is in use by an easy
-                              handle */
-  bool server_supports_pipelining; /* TRUE if server supports pipelining,
-                                      set after first response */
-
-  struct curl_llist *send_pipe; /* List of handles waiting to
-                                   send on this pipeline */
-  struct curl_llist *recv_pipe; /* List of handles waiting to read
-                                   their responses on this pipeline */
-  struct curl_llist *pend_pipe; /* List of pending handles on
-                                   this pipeline */
-  struct curl_llist *done_pipe; /* Handles that are finished, but
-                                   still reference this connectdata */
-#define MAX_PIPELINE_LENGTH 5
-
-  char* master_buffer; /* The master buffer allocated on-demand;
-                          used for pipelining. */
-  size_t read_pos; /* Current read position in the master buffer */
-  size_t buf_len; /* Length of the buffer?? */
-
-
-  curl_seek_callback seek_func; /* function that seeks the input */
-  void *seek_client;            /* pointer to pass to the seek() above */
-
-  /*************** Request - specific items ************/
-
-  /* previously this was in the urldata struct */
-  curl_read_callback fread_func; /* function that reads the input */
-  void *fread_in;           /* pointer to pass to the fread() above */
-
-  struct ntlmdata ntlm;     /* NTLM differs from other authentication schemes
-                               because it authenticates connections, not
-                               single requests! */
-  struct ntlmdata proxyntlm; /* NTLM data for proxy */
-
-  char syserr_buf [256]; /* buffer for Curl_strerror() */
-
-#ifdef CURLRES_ASYNCH
-  /* data used for the asynch name resolve callback */
-  struct Curl_async async;
-#endif
-
-  /* These three are used for chunked-encoding trailer support */
-  char *trailer; /* allocated buffer to store trailer in */
-  int trlMax;    /* allocated buffer size */
-  int trlPos;    /* index of where to store data */
-
-  union {
-    struct ftp_conn ftpc;
-    struct ssh_conn sshc;
-    struct tftp_state_data *tftpc;
-    struct imap_conn imapc;
-    struct pop3_conn pop3c;
-    struct smtp_conn smtpc;
-    struct rtsp_conn rtspc;
-  } proto;
-
-  int cselect_bits; /* bitmask of socket events */
-  int waitfor;      /* current READ/WRITE bits to wait for */
-
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-  int socks5_gssapi_enctype;
-#endif
-
-  long verifypeer;
-  long verifyhost;
-};
-
-/* The end of connectdata. */
-
-/*
- * Struct to keep statistical and informational data.
- */
-struct PureInfo {
-  int httpcode;  /* Recent HTTP, FTP, or RTSP response code */
-  int httpproxycode; /* response code from proxy when received separate */
-  int httpversion; /* the http version number X.Y = X*10+Y */
-  long filetime; /* If requested, this is might get set. Set to -1 if the time
-                    was unretrievable. We cannot have this of type time_t,
-                    since time_t is unsigned on several platforms such as
-                    OpenVMS. */
-  bool timecond;  /* set to TRUE if the time condition didn't match, which
-                     thus made the document NOT get fetched */
-  long header_size;  /* size of read header(s) in bytes */
-  long request_size; /* the amount of bytes sent in the request(s) */
-  long proxyauthavail; /* what proxy auth types were announced */
-  long httpauthavail;  /* what host auth types were announced */
-  long numconnects; /* how many new connection did libcurl created */
-  char *contenttype; /* the content type of the object */
-  char *wouldredirect; /* URL this would've been redirected to if asked to */
-  char ip[MAX_IPADR_LEN]; /* this buffer gets the numerical ip version stored
-                             at the connect *attempt* so it will get the last
-                             tried connect IP even on failures */
-  struct curl_certinfo certs; /* info about the certs, only populated in
-                                 OpenSSL builds. Asked for with
-                                 CURLOPT_CERTINFO / CURLINFO_CERTINFO */
-};
-
-
-struct Progress {
-  long lastshow; /* time() of the last displayed progress meter or NULL to
-                    force redraw at next call */
-  curl_off_t size_dl; /* total expected size */
-  curl_off_t size_ul; /* total expected size */
-  curl_off_t downloaded; /* transfered so far */
-  curl_off_t uploaded; /* transfered so far */
-
-  curl_off_t current_speed; /* uses the currently fastest transfer */
-
-  bool callback;  /* set when progress callback is used */
-  int width; /* screen width at download start */
-  int flags; /* see progress.h */
-
-  double timespent;
-
-  curl_off_t dlspeed;
-  curl_off_t ulspeed;
-
-  double t_nslookup;
-  double t_connect;
-  double t_appconnect;
-  double t_pretransfer;
-  double t_starttransfer;
-  double t_redirect;
-
-  struct timeval start;
-  struct timeval t_startsingle;
-#define CURR_TIME (5+1) /* 6 entries for 5 seconds */
-
-  curl_off_t speeder[ CURR_TIME ];
-  struct timeval speeder_time[ CURR_TIME ];
-  int speeder_c;
-};
-
-typedef enum {
-  HTTPREQ_NONE, /* first in list */
-  HTTPREQ_GET,
-  HTTPREQ_POST,
-  HTTPREQ_POST_FORM, /* we make a difference internally */
-  HTTPREQ_PUT,
-  HTTPREQ_HEAD,
-  HTTPREQ_CUSTOM,
-  HTTPREQ_LAST /* last in list */
-} Curl_HttpReq;
-
-typedef enum {
-    RTSPREQ_NONE, /* first in list */
-    RTSPREQ_OPTIONS,
-    RTSPREQ_DESCRIBE,
-    RTSPREQ_ANNOUNCE,
-    RTSPREQ_SETUP,
-    RTSPREQ_PLAY,
-    RTSPREQ_PAUSE,
-    RTSPREQ_TEARDOWN,
-    RTSPREQ_GET_PARAMETER,
-    RTSPREQ_SET_PARAMETER,
-    RTSPREQ_RECORD,
-    RTSPREQ_RECEIVE,
-    RTSPREQ_LAST /* last in list */
-} Curl_RtspReq;
-
-/*
- * Values that are generated, temporary or calculated internally for a
- * "session handle" must be defined within the 'struct UrlState'.  This struct
- * will be used within the SessionHandle struct. When the 'SessionHandle'
- * struct is cloned, this data MUST NOT be copied.
- *
- * Remember that any "state" information goes globally for the curl handle.
- * Session-data MUST be put in the connectdata struct and here.  */
-#define MAX_CURL_USER_LENGTH 256
-#define MAX_CURL_PASSWORD_LENGTH 256
-#define MAX_CURL_USER_LENGTH_TXT "255"
-#define MAX_CURL_PASSWORD_LENGTH_TXT "255"
-
-struct auth {
-  long want;  /* Bitmask set to the authentication methods wanted by the app
-                 (with CURLOPT_HTTPAUTH or CURLOPT_PROXYAUTH). */
-  long picked;
-  long avail; /* bitmask for what the server reports to support for this
-                 resource */
-  bool done;  /* TRUE when the auth phase is done and ready to do the *actual*
-                 request */
-  bool multi; /* TRUE if this is not yet authenticated but within the auth
-                 multipass negotiation */
-  bool iestyle; /* TRUE if digest should be done IE-style or FALSE if it should
-                   be RFC compliant */
-};
-
-struct conncache {
-  /* 'connects' will be an allocated array with pointers. If the pointer is
-     set, it holds an allocated connection. */
-  struct connectdata **connects;
-  long num;           /* number of entries of the 'connects' array */
-  enum {
-    CONNCACHE_PRIVATE, /* used for an easy handle alone */
-    CONNCACHE_MULTI    /* shared within a multi handle */
-  } type;
-};
-
-
-struct UrlState {
-  enum {
-    Curl_if_none,
-    Curl_if_easy,
-    Curl_if_multi
-  } used_interface;
-
-  struct conncache *connc; /* points to the connection cache this handle
-                              uses */
-
-  /* buffers to store authentication data in, as parsed from input options */
-  struct timeval keeps_speed; /* for the progress meter really */
-
-  long lastconnect;  /* index of most recent connect or -1 if undefined */
-
-  char *headerbuff; /* allocated buffer to store headers in */
-  size_t headersize;   /* size of the allocation */
-
-  char buffer[BUFSIZE+1]; /* download buffer */
-  char uploadbuffer[BUFSIZE+1]; /* upload buffer */
-  curl_off_t current_speed;  /* the ProgressShow() funcion sets this,
-                                bytes / second */
-  bool this_is_a_follow; /* this is a followed Location: request */
-
-  char *first_host; /* if set, this should be the host name that we will
-                       sent authorization to, no else. Used to make Location:
-                       following not keep sending user+password... This is
-                       strdup() data.
-                    */
-  struct curl_ssl_session *session; /* array of 'numsessions' size */
-  long sessionage;                  /* number of the most recent session */
-  char *tempwrite;      /* allocated buffer to keep data in when a write
-                           callback returns to make the connection paused */
-  size_t tempwritesize; /* size of the 'tempwrite' allocated buffer */
-  int tempwritetype;    /* type of the 'tempwrite' buffer as a bitmask that is
-                           used with Curl_client_write() */
-  char *scratch; /* huge buffer[BUFSIZE*2] when doing upload CRLF replacing */
-  bool errorbuf; /* Set to TRUE if the error buffer is already filled in.
-                    This must be set to FALSE every time _easy_perform() is
-                    called. */
-  int os_errno;  /* filled in with errno whenever an error occurs */
-#ifdef HAVE_SIGNAL
-  /* storage for the previous bag^H^H^HSIGPIPE signal handler :-) */
-  void (*prev_signal)(int sig);
-#endif
-  bool allow_port; /* Is set.use_port allowed to take effect or not. This
-                      is always set TRUE when curl_easy_perform() is called. */
-  struct digestdata digest;      /* state data for host Digest auth */
-  struct digestdata proxydigest; /* state data for proxy Digest auth */
-
-#ifdef HAVE_GSSAPI
-  struct negotiatedata negotiate; /* state data for host Negotiate auth */
-  struct negotiatedata proxyneg; /* state data for proxy Negotiate auth */
-#endif
-
-  struct auth authhost;  /* auth details for host */
-  struct auth authproxy; /* auth details for proxy */
-
-  bool authproblem; /* TRUE if there's some problem authenticating */
-
-#ifdef USE_ARES
-  ares_channel areschannel; /* for name resolves */
-#endif
-
-#if defined(USE_SSLEAY) && defined(HAVE_OPENSSL_ENGINE_H)
-  ENGINE *engine;
-#endif /* USE_SSLEAY */
-  struct timeval expiretime; /* set this with Curl_expire() only */
-  struct Curl_tree timenode; /* for the splay stuff */
-
-  /* a place to store the most recently set FTP entrypath */
-  char *most_recent_ftp_entrypath;
-
-  /* set after initial USER failure, to prevent an authentication loop */
-  bool ftp_trying_alternative;
-
-  int httpversion;       /* the lowest HTTP version*10 reported by any server
-                            involved in this request */
-  bool expect100header;  /* TRUE if we added Expect: 100-continue */
-
-  bool pipe_broke; /* TRUE if the connection we were pipelined on broke
-                      and we need to restart from the beginning */
-
-#if !defined(WIN32) && !defined(MSDOS) && !defined(__EMX__) && \
-    !defined(__SYMBIAN32__)
-/* do FTP line-end conversions on most platforms */
-#define CURL_DO_LINEEND_CONV
-  /* for FTP downloads: track CRLF sequences that span blocks */
-  bool prev_block_had_trailing_cr;
-  /* for FTP downloads: how many CRLFs did we converted to LFs? */
-  curl_off_t crlf_conversions;
-#endif
-  /* If set to non-NULL, there's a connection in a shared connection cache
-     that uses this handle so we can't kill this SessionHandle just yet but
-     must keep it around and add it to the list of handles to kill once all
-     its connections are gone */
-  void *shared_conn;
-  bool closed; /* set to TRUE when curl_easy_cleanup() has been called on this
-                  handle, but it is kept around as mentioned for
-                  shared_conn */
-  char *pathbuffer;/* allocated buffer to store the URL's path part in */
-  char *path;      /* path to use, points to somewhere within the pathbuffer
-                      area */
-
-  bool use_range;
-  bool rangestringalloc; /* the range string is malloc()'ed */
-
-  char *range; /* range, if used. See README for detailed specification on
-                  this syntax. */
-  curl_off_t resume_from; /* continue [ftp] transfer from here */
-
-  /* This RTSP state information survives requests and connections */
-  long rtsp_next_client_CSeq; /* the session's next client CSeq */
-  long rtsp_next_server_CSeq; /* the session's next server CSeq */
-  long rtsp_CSeq_recv; /* most recent CSeq received */
-
-  /* Protocol specific data.
-   *
-   *************************************************************************
-   * Note that this data will be REMOVED after each request, so anything that
-   * should be kept/stored on a per-connection basis and thus live for the
-   * next request on the same connection MUST be put in the connectdata struct!
-   *************************************************************************/
-  union {
-    struct HTTP *http;
-    struct HTTP *https;  /* alias, just for the sake of being more readable */
-    struct RTSP *rtsp;
-    struct FTP *ftp;
-    /* void *tftp;    not used */
-    struct FILEPROTO *file;
-    void *telnet;        /* private for telnet.c-eyes only */
-    void *generic;
-    struct SSHPROTO *ssh;
-    struct FTP *imap;
-    struct FTP *pop3;
-    struct FTP *smtp;
-  } proto;
-  /* current user of this SessionHandle instance, or NULL */
-  struct connectdata *current_conn;
-
-  /* if true, force SSL connection retry (workaround for certain servers) */
-  bool ssl_connect_retry;
-};
-
-
-/*
- * This 'DynamicStatic' struct defines dynamic states that actually change
- * values in the 'UserDefined' area, which MUST be taken into consideration
- * if the UserDefined struct is cloned or similar. You can probably just
- * copy these, but each one indicate a special action on other data.
- */
-
-struct DynamicStatic {
-  char *url;        /* work URL, copied from UserDefined */
-  bool url_alloc;   /* URL string is malloc()'ed */
-  char *referer;    /* referer string */
-  bool referer_alloc; /* referer sting is malloc()ed */
-  struct curl_slist *cookielist; /* list of cookie files set by
-                                    curl_easy_setopt(COOKIEFILE) calls */
-};
-
-/*
- * This 'UserDefined' struct must only contain data that is set once to go
- * for many (perhaps) independent connections. Values that are generated or
- * calculated internally for the "session handle" MUST be defined within the
- * 'struct UrlState' instead. The only exceptions MUST note the changes in
- * the 'DynamicStatic' struct.
- * Character pointer fields point to dynamic storage, unless otherwise stated.
- */
-struct Curl_one_easy; /* declared and used only in multi.c */
-struct Curl_multi;    /* declared and used only in multi.c */
-
-enum dupstring {
-  STRING_CERT,            /* client certificate file name */
-  STRING_CERT_TYPE,       /* format for certificate (default: PEM)*/
-  STRING_COOKIE,          /* HTTP cookie string to send */
-  STRING_COOKIEJAR,       /* dump all cookies to this file */
-  STRING_CUSTOMREQUEST,   /* HTTP/FTP/RTSP request/method to use */
-  STRING_DEVICE,          /* local network interface/address to use */
-  STRING_ENCODING,        /* Accept-Encoding string */
-  STRING_FTP_ACCOUNT,     /* ftp account data */
-  STRING_FTP_ALTERNATIVE_TO_USER, /* command to send if USER/PASS fails */
-  STRING_FTPPORT,         /* port to send with the FTP PORT command */
-  STRING_KEY,             /* private key file name */
-  STRING_KEY_PASSWD,      /* plain text private key password */
-  STRING_KEY_TYPE,        /* format for private key (default: PEM) */
-  STRING_KRB_LEVEL,       /* krb security level */
-  STRING_NETRC_FILE,      /* if not NULL, use this instead of trying to find
-                             $HOME/.netrc */
-  STRING_COPYPOSTFIELDS,  /* if POST, set the fields' values here */
-  STRING_PROXY,           /* proxy to use */
-  STRING_SET_RANGE,       /* range, if used */
-  STRING_SET_REFERER,     /* custom string for the HTTP referer field */
-  STRING_SET_URL,         /* what original URL to work on */
-  STRING_SSL_CAPATH,      /* CA directory name (doesn't work on windows) */
-  STRING_SSL_CAFILE,      /* certificate file to verify peer against */
-  STRING_SSL_CIPHER_LIST, /* list of ciphers to use */
-  STRING_SSL_EGDSOCKET,   /* path to file containing the EGD daemon socket */
-  STRING_SSL_RANDOM_FILE, /* path to file containing "random" data */
-  STRING_USERAGENT,       /* User-Agent string */
-  STRING_SSL_CRLFILE,     /* crl file to check certificate */
-  STRING_SSL_ISSUERCERT,  /* issuer cert file to check certificate */
-  STRING_USERNAME,        /* <username>, if used */
-  STRING_PASSWORD,        /* <password>, if used */
-  STRING_PROXYUSERNAME,   /* Proxy <username>, if used */
-  STRING_PROXYPASSWORD,   /* Proxy <password>, if used */
-  STRING_NOPROXY,         /* List of hosts which should not use the proxy, if
-                             used */
-  STRING_RTSP_SESSION_ID, /* Session ID to use */
-  STRING_RTSP_STREAM_URI, /* Stream URI for this request */
-  STRING_RTSP_TRANSPORT,  /* Transport for this session */
-#ifdef USE_LIBSSH2
-  STRING_SSH_PRIVATE_KEY, /* path to the private key file for auth */
-  STRING_SSH_PUBLIC_KEY,  /* path to the public key file for auth */
-  STRING_SSH_HOST_PUBLIC_KEY_MD5, /* md5 of host public key in ascii hex */
-  STRING_SSH_KNOWNHOSTS,  /* file name of knownhosts file */
-#endif
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-  STRING_SOCKS5_GSSAPI_SERVICE,  /* GSSAPI service name */
-#endif
-  STRING_MAIL_FROM,
-
-  /* -- end of strings -- */
-  STRING_LAST /* not used, just an end-of-list marker */
-};
-
-struct UserDefined {
-  FILE *err;         /* the stderr user data goes here */
-  void *debugdata;   /* the data that will be passed to fdebug */
-  char *errorbuffer; /* (Static) store failure messages in here */
-  long proxyport; /* If non-zero, use this port number by default. If the
-                     proxy string features a ":[port]" that one will override
-                     this. */
-  void *out;         /* the fetched file goes here */
-  void *in;          /* the uploaded file is read from here */
-  void *writeheader; /* write the header to this if non-NULL */
-  void *rtp_out;     /* write RTP to this if non-NULL */
-  long use_port;     /* which port to use (when not using default) */
-  long httpauth;     /* what kind of HTTP authentication to use (bitmask) */
-  long proxyauth;    /* what kind of proxy authentication to use (bitmask) */
-  long followlocation; /* as in HTTP Location: */
-  long maxredirs;    /* maximum no. of http(s) redirects to follow, set to -1
-                        for infinity */
-  bool post301;      /* Obey RFC 2616/10.3.2 and keep POSTs as POSTs after a
-                        301 */
-  bool post302;      /* keep POSTs as POSTs after a 302 */
-  bool free_referer; /* set TRUE if 'referer' points to a string we
-                        allocated */
-  void *postfields;  /* if POST, set the fields' values here */
-  curl_seek_callback seek_func;      /* function that seeks the input */
-  curl_off_t postfieldsize; /* if POST, this might have a size to use instead
-                               of strlen(), and then the data *may* be binary
-                               (contain zero bytes) */
-  unsigned short localport; /* local port number to bind to */
-  int localportrange; /* number of additional port numbers to test in case the
-                         'localport' one can't be bind()ed */
-  curl_write_callback fwrite_func;   /* function that stores the output */
-  curl_write_callback fwrite_header; /* function that stores headers */
-  curl_write_callback fwrite_rtp;    /* function that stores interleaved RTP */
-  curl_read_callback fread_func;     /* function that reads the input */
-  curl_progress_callback fprogress;  /* function for progress information */
-  curl_debug_callback fdebug;      /* function that write informational data */
-  curl_ioctl_callback ioctl_func;  /* function for I/O control */
-  curl_sockopt_callback fsockopt;  /* function for setting socket options */
-  void *sockopt_client; /* pointer to pass to the socket options callback */
-  curl_opensocket_callback fopensocket; /* function for checking/translating
-                                           the address and opening the socket */
-  void* opensocket_client;
-
-  void *seek_client;    /* pointer to pass to the seek callback */
-  /* the 3 curl_conv_callback functions below are used on non-ASCII hosts */
-  /* function to convert from the network encoding: */
-  curl_conv_callback convfromnetwork;
-  /* function to convert to the network encoding: */
-  curl_conv_callback convtonetwork;
-  /* function to convert from UTF-8 encoding: */
-  curl_conv_callback convfromutf8;
-
-  void *progress_client; /* pointer to pass to the progress callback */
-  void *ioctl_client;   /* pointer to pass to the ioctl callback */
-  long timeout;         /* in milliseconds, 0 means no timeout */
-  long connecttimeout;  /* in milliseconds, 0 means no timeout */
-  long server_response_timeout; /* in milliseconds, 0 means no timeout */
-  long tftp_blksize ; /* in bytes, 0 means use default */
-  curl_off_t infilesize;      /* size of file to upload, -1 means unknown */
-  long low_speed_limit; /* bytes/second */
-  long low_speed_time;  /* number of seconds */
-  curl_off_t max_send_speed; /* high speed limit in bytes/second for upload */
-  curl_off_t max_recv_speed; /* high speed limit in bytes/second for download */
-  curl_off_t set_resume_from;  /* continue [ftp] transfer from here */
-  struct curl_slist *headers; /* linked list of extra headers */
-  struct curl_httppost *httppost;  /* linked list of POST data */
-  bool cookiesession;   /* new cookie session? */
-  bool crlf;            /* convert crlf on ftp upload(?) */
-  struct curl_slist *quote;     /* after connection is established */
-  struct curl_slist *postquote; /* after the transfer */
-  struct curl_slist *prequote; /* before the transfer, after type */
-  struct curl_slist *source_quote;  /* 3rd party quote */
-  struct curl_slist *source_prequote;  /* in 3rd party transfer mode - before
-                                          the transfer on source host */
-  struct curl_slist *source_postquote; /* in 3rd party transfer mode - after
-                                          the transfer on source host */
-  struct curl_slist *telnet_options; /* linked list of telnet options */
-  curl_TimeCond timecondition; /* kind of time/date comparison */
-  time_t timevalue;       /* what time to compare with */
-  Curl_HttpReq httpreq;   /* what kind of HTTP request (if any) is this */
-  long httpversion; /* when non-zero, a specific HTTP version requested to
-                       be used in the library's request(s) */
-  struct ssl_config_data ssl;  /* user defined SSL stuff */
-  curl_proxytype proxytype; /* what kind of proxy that is in use */
-  long dns_cache_timeout; /* DNS cache timeout */
-  long buffer_size;      /* size of receive buffer to use */
-  void *private_data; /* application-private data */
-
-  struct Curl_one_easy *one_easy; /* When adding an easy handle to a multi
-                                     handle, an internal 'Curl_one_easy'
-                                     struct is created and this is a pointer
-                                     to the particular struct associated with
-                                     this SessionHandle */
-
-  struct curl_slist *http200aliases; /* linked list of aliases for http200 */
-
-  long ip_version; /* the CURL_IPRESOLVE_* defines in the public header file
-                      0 - whatever, 1 - v2, 2 - v6 */
-
-  curl_off_t max_filesize; /* Maximum file size to download */
-
-  curl_ftpfile ftp_filemethod; /* how to get to a file when FTP is used  */
-
-  int ftp_create_missing_dirs; /* 1 - create directories that don't exist
-                                  2 - the same but also allow MKD to fail once
-                               */
-
-  curl_sshkeycallback ssh_keyfunc; /* key matching callback */
-  void *ssh_keyfunc_userp;         /* custom pointer to callback */
-
-/* Here follows boolean settings that define how to behave during
-   this session. They are STATIC, set by libcurl users or at least initially
-   and they don't change during operations. */
-
-  bool printhost;        /* printing host name in debug info */
-  bool get_filetime;     /* get the time and get of the remote file */
-  bool tunnel_thru_httpproxy; /* use CONNECT through a HTTP proxy */
-  bool prefer_ascii;     /* ASCII rather than binary */
-  bool ftp_append;       /* append, not overwrite, on upload */
-  bool ftp_list_only;    /* switch FTP command for listing directories */
-  bool ftp_use_port;     /* use the FTP PORT command */
-  bool hide_progress;    /* don't use the progress meter */
-  bool http_fail_on_error;  /* fail on HTTP error codes >= 300 */
-  bool http_follow_location; /* follow HTTP redirects */
-  bool http_disable_hostname_check_before_authentication;
-  bool include_header;   /* include received protocol headers in data output */
-  bool http_set_referer; /* is a custom referer used */
-  bool http_auto_referer; /* set "correct" referer when following location: */
-  bool opt_no_body;      /* as set with CURLOPT_NO_BODY */
-  bool set_port;         /* custom port number used */
-  bool upload;           /* upload request */
-  enum CURL_NETRC_OPTION
-       use_netrc;        /* defined in include/curl.h */
-  bool verbose;          /* output verbosity */
-  bool krb;              /* kerberos connection requested */
-  bool reuse_forbid;     /* forbidden to be reused, close after use */
-  bool reuse_fresh;      /* do not re-use an existing connection  */
-  bool ftp_use_epsv;     /* if EPSV is to be attempted or not */
-  bool ftp_use_eprt;     /* if EPRT is to be attempted or not */
-  bool ftp_use_pret;     /* if PRET is to be used before PASV or not */
-
-  curl_usessl ftp_ssl;   /* if AUTH TLS is to be attempted etc, for FTP or
-                            IMAP or POP3 or others! */
-  curl_ftpauth ftpsslauth; /* what AUTH XXX to be attempted */
-  curl_ftpccc ftp_ccc;   /* FTP CCC options */
-  bool no_signal;        /* do not use any signal/alarm handler */
-  bool global_dns_cache; /* subject for future removal */
-  bool tcp_nodelay;      /* whether to enable TCP_NODELAY or not */
-  bool ignorecl;         /* ignore content length */
-  bool ftp_skip_ip;      /* skip the IP address the FTP server passes on to
-                            us */
-  bool connect_only;     /* make connection, let application use the socket */
-  long ssh_auth_types;   /* allowed SSH auth types */
-  bool http_te_skip;     /* pass the raw body data to the user, even when
-                            transfer-encoded (chunked, compressed) */
-  bool http_ce_skip;     /* pass the raw body data to the user, even when
-                            content-encoded (chunked, compressed) */
-  long new_file_perms;    /* Permissions to use when creating remote files */
-  long new_directory_perms; /* Permissions to use when creating remote dirs */
-  bool proxy_transfer_mode; /* set transfer mode (;type=<a|i>) when doing FTP
-                               via an HTTP proxy */
-  char *str[STRING_LAST]; /* array of strings, pointing to allocated memory */
-  unsigned int scope;    /* address scope for IPv6 */
-  long allowed_protocols;
-  long redir_protocols;
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-  long socks5_gssapi_nec; /* flag to support nec socks5 server */
-#endif
-  struct curl_slist *mail_rcpt; /* linked list of mail recipients */
-  /* Common RTSP header options */
-  Curl_RtspReq rtspreq; /* RTSP request type */
-  long rtspversion; /* like httpversion, for RTSP */
-};
-
-struct Names {
-  struct curl_hash *hostcache;
-  enum {
-    HCACHE_NONE,    /* not pointing to anything */
-    HCACHE_PRIVATE, /* points to our own */
-    HCACHE_GLOBAL,  /* points to the (shrug) global one */
-    HCACHE_MULTI,   /* points to a shared one in the multi handle */
-    HCACHE_SHARED   /* points to a shared one in a shared object */
-  } hostcachetype;
-};
-
-/*
- * The 'connectdata' struct MUST have all the connection oriented stuff as we
- * may have several simultaneous connections and connection structs in memory.
- *
- * The 'struct UserDefined' must only contain data that is set once to go for
- * many (perhaps) independent connections. Values that are generated or
- * calculated internally for the "session handle" must be defined within the
- * 'struct UrlState' instead.
- */
-
-struct SessionHandle {
-  struct Names dns;
-  struct Curl_multi *multi;    /* if non-NULL, points to the multi handle
-                                  struct to which this "belongs" */
-  struct Curl_one_easy *multi_pos; /* if non-NULL, points to its position
-                                      in multi controlling structure to assist
-                                      in removal. */
-  struct Curl_share *share;    /* Share, handles global variable mutexing */
-  struct SingleRequest req;    /* Request-specific data */
-  struct UserDefined set;      /* values set by the libcurl user */
-  struct DynamicStatic change; /* possibly modified userdefined data */
-  struct CookieInfo *cookies;  /* the cookies, read from files and servers.
-                                  NOTE that the 'cookie' field in the
-                                  UserDefined struct defines if the "engine"
-                                  is to be used or not. */
-  struct Progress progress;    /* for all the progress meter data */
-  struct UrlState state;       /* struct for fields used for state info and
-                                  other dynamic purposes */
-  struct PureInfo info;        /* stats, reports and info data */
-#if defined(CURL_DOES_CONVERSIONS) && defined(HAVE_ICONV)
-  iconv_t outbound_cd;         /* for translating to the network encoding */
-  iconv_t inbound_cd;          /* for translating from the network encoding */
-  iconv_t utf8_cd;             /* for translating to UTF8 */
-#endif /* CURL_DOES_CONVERSIONS && HAVE_ICONV */
-  unsigned int magic;          /* set to a CURLEASY_MAGIC_NUMBER */
-};
-
-#define LIBCURL_NAME "libcurl"
-
-#endif
diff --git a/src/other/curl/lib/vc6libcurl.dsp b/src/other/curl/lib/vc6libcurl.dsp
deleted file mode 100644
index d4d93d2..0000000
--- a/src/other/curl/lib/vc6libcurl.dsp
+++ /dev/null
@@ -1,778 +0,0 @@
-# Microsoft Developer Studio Project File - Name="libcurl" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
-# TARGTYPE "Win32 (x86) Static Library" 0x0104
-
-CFG=libcurl - Win32 LIB Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "libcurl.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "libcurl.mak" CFG="libcurl - Win32 LIB Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "libcurl - Win32 DLL Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "libcurl - Win32 DLL Release" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "libcurl - Win32 LIB Debug" (based on "Win32 (x86) Static Library")
-!MESSAGE "libcurl - Win32 LIB Release" (based on "Win32 (x86) Static Library")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-
-!IF  "$(CFG)" == "libcurl - Win32 DLL Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "DLL-Debug"
-# PROP BASE Intermediate_Dir "DLL-Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "DLL-Debug"
-# PROP Intermediate_Dir "DLL-Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "." /I "..\include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "." /I "..\include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /FD /GZ /c
-MTL=midl.exe
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-RSC=rc.exe
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib ws2_32.lib wldap32.lib /nologo /dll /incremental:no /map /debug /machine:I386 /out:"DLL-Debug/libcurld.dll" /implib:"DLL-Debug/libcurld_imp.lib" /pdbtype:sept
-# ADD LINK32 kernel32.lib ws2_32.lib wldap32.lib /nologo /dll /incremental:no /map /debug /machine:I386 /out:"DLL-Debug/libcurld.dll" /implib:"DLL-Debug/libcurld_imp.lib" /pdbtype:sept
-
-!ELSEIF  "$(CFG)" == "libcurl - Win32 DLL Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "DLL-Release"
-# PROP BASE Intermediate_Dir "DLL-Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "DLL-Release"
-# PROP Intermediate_Dir "DLL-Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-CPP=cl.exe
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I "..\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I "..\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /FD /c
-MTL=midl.exe
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-RSC=rc.exe
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib ws2_32.lib wldap32.lib /nologo /dll /pdb:none /machine:I386 /out:"DLL-Release/libcurl.dll" /implib:"DLL-Release/libcurl_imp.lib"
-# ADD LINK32 kernel32.lib ws2_32.lib wldap32.lib /nologo /dll /pdb:none /machine:I386 /out:"DLL-Release/libcurl.dll" /implib:"DLL-Release/libcurl_imp.lib"
-
-!ELSEIF  "$(CFG)" == "libcurl - Win32 LIB Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "LIB-Debug"
-# PROP BASE Intermediate_Dir "LIB-Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "LIB-Debug"
-# PROP Intermediate_Dir "LIB-Debug"
-# PROP Target_Dir ""
-CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "." /I "..\include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "." /I "..\include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /FD /GZ /c
-RSC=rc.exe
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo /out:"LIB-Debug/libcurld.lib" /machine:I386
-# ADD LIB32 /nologo /out:"LIB-Debug/libcurld.lib" /machine:I386
-
-!ELSEIF  "$(CFG)" == "libcurl - Win32 LIB Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "LIB-Release"
-# PROP BASE Intermediate_Dir "LIB-Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "LIB-Release"
-# PROP Intermediate_Dir "LIB-Release"
-# PROP Target_Dir ""
-CPP=cl.exe
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /I "..\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /I "..\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /FD /c
-RSC=rc.exe
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo /out:"LIB-Release/libcurl.lib" /machine:I386
-# ADD LIB32 /nologo /out:"LIB-Release/libcurl.lib" /machine:I386
-
-!ENDIF 
-
-# Begin Target
-
-# Name "libcurl - Win32 DLL Debug"
-# Name "libcurl - Win32 DLL Release"
-# Name "libcurl - Win32 LIB Debug"
-# Name "libcurl - Win32 LIB Release"
-# Begin Group "Source Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\base64.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\connect.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\content_encoding.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\cookie.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_addrinfo.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_memrchr.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_rand.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_sspi.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_threads.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\dict.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\easy.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\escape.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\file.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\formdata.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\ftp.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\getenv.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\getinfo.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\gtls.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\hash.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\hostares.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\hostasyn.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\hostip4.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\hostip6.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\hostip.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\hostsyn.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\hostthre.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\http.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\http_chunks.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\http_digest.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\http_negotiate.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\http_ntlm.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\if2ip.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\imap.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\inet_ntop.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\inet_pton.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\krb4.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\krb5.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\ldap.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\llist.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\md5.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\memdebug.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\mprintf.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\multi.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\netrc.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\nonblock.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\nss.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\parsedate.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\pingpong.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\pop3.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\progress.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\qssl.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\rawstr.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\rtsp.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\security.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\select.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\sendf.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\share.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\slist.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\smtp.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\socks.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\socks_gssapi.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\socks_sspi.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\speedcheck.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\splay.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\ssh.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\sslgen.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\ssluse.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\strdup.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\strequal.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\strerror.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\strtok.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\strtoofft.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\telnet.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\tftp.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\timeval.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\transfer.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\url.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\version.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\warnless.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\arpa_telnet.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\config-win32.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\connect.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\content_encoding.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cookie.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_addrinfo.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_base64.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_ldap.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_md5.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_memory.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_memrchr.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_rand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_sspi.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\curl_threads.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\curlx.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\dict.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\easyif.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\escape.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\file.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\formdata.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\ftp.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\getinfo.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\gtls.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\hash.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\hostip.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\http_chunks.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\http_digest.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\http.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\http_negotiate.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\http_ntlm.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\if2ip.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\imap.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\inet_ntop.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\inet_pton.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\krb4.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\llist.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\memdebug.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\multiif.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\netrc.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\nonblock.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\nssg.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\parsedate.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\pingpong.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\pop3.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\progress.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\qssl.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\rawstr.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\rtsp.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\select.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\sendf.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\setup.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\setup_once.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\share.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\slist.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\smtp.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\sockaddr.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\socks.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\speedcheck.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\splay.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\ssh.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\sslgen.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\ssluse.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\strdup.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\strequal.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\strerror.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\strtok.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\strtoofft.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\telnet.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\tftp.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\timeval.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\transfer.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\urldata.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\url.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\warnless.h
-# End Source File
-# End Group
-
-# Begin Group "Resource Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\libcurl.rc
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/src/other/curl/lib/vc6libcurl.dsw b/src/other/curl/lib/vc6libcurl.dsw
deleted file mode 100644
index 8fd5a15..0000000
--- a/src/other/curl/lib/vc6libcurl.dsw
+++ /dev/null
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "libcurl"=".\vc6libcurl.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
diff --git a/src/other/curl/lib/version.c b/src/other/curl/lib/version.c
deleted file mode 100644
index aa86e39..0000000
--- a/src/other/curl/lib/version.c
+++ /dev/null
@@ -1,292 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <string.h>
-#include <stdio.h>
-
-#include <curl/curl.h>
-#include "urldata.h"
-#include "sslgen.h"
-
-#define _MPRINTF_REPLACE /* use the internal *printf() functions */
-#include <curl/mprintf.h>
-
-#ifdef USE_ARES
-#include <ares_version.h>
-#endif
-
-#ifdef USE_LIBIDN
-#include <stringprep.h>
-#endif
-
-#if defined(HAVE_ICONV) && defined(CURL_DOES_CONVERSIONS)
-#include <iconv.h>
-#endif
-
-#ifdef USE_LIBSSH2
-#include <libssh2.h>
-#endif
-
-#ifdef HAVE_LIBSSH2_VERSION
-/* get it run-time if possible */
-#define CURL_LIBSSH2_VERSION libssh2_version(0)
-#else
-/* use build-time if run-time not possible */
-#define CURL_LIBSSH2_VERSION LIBSSH2_VERSION
-#endif
-
-char *curl_version(void)
-{
-  static char version[200];
-  char *ptr=version;
-  size_t len;
-  size_t left = sizeof(version);
-  strcpy(ptr, LIBCURL_NAME "/" LIBCURL_VERSION );
-  len = strlen(ptr);
-  left -= len;
-  ptr += len;
-
-  if(left > 1) {
-    len = Curl_ssl_version(ptr + 1, left - 1);
-
-    if(len > 0) {
-      *ptr = ' ';
-      left -= ++len;
-      ptr += len;
-    }
-  }
-
-#ifdef HAVE_LIBZ
-  len = snprintf(ptr, left, " zlib/%s", zlibVersion());
-  left -= len;
-  ptr += len;
-#endif
-#ifdef USE_ARES
-  /* this function is only present in c-ares, not in the original ares */
-  len = snprintf(ptr, left, " c-ares/%s", ares_version(NULL));
-  left -= len;
-  ptr += len;
-#endif
-#ifdef USE_LIBIDN
-  if(stringprep_check_version(LIBIDN_REQUIRED_VERSION)) {
-    len = snprintf(ptr, left, " libidn/%s", stringprep_check_version(NULL));
-    left -= len;
-    ptr += len;
-  }
-#endif
-#if defined(HAVE_ICONV) && defined(CURL_DOES_CONVERSIONS)
-#ifdef _LIBICONV_VERSION
-  len = snprintf(ptr, left, " iconv/%d.%d",
-                 _LIBICONV_VERSION >> 8, _LIBICONV_VERSION & 255);
-#else
-  /* version unknown */
-  len = snprintf(ptr, left, " iconv");
-#endif /* _LIBICONV_VERSION */
-  left -= len;
-  ptr += len;
-#endif
-#ifdef USE_LIBSSH2
-  len = snprintf(ptr, left, " libssh2/%s", CURL_LIBSSH2_VERSION);
-  left -= len;
-  ptr += len;
-#endif
-
-  return version;
-}
-
-/* data for curl_version_info
-
-   Keep the list sorted alphabetically. It is also written so that each
-   protocol line has its own #if line to make things easier on the eye.
- */
-
-static const char * const protocols[] = {
-#ifndef CURL_DISABLE_DICT
-  "dict",
-#endif
-#ifndef CURL_DISABLE_FILE
-  "file",
-#endif
-#ifndef CURL_DISABLE_FTP
-  "ftp",
-#endif
-#if defined(USE_SSL) && !defined(CURL_DISABLE_FTP)
-  "ftps",
-#endif
-#ifndef CURL_DISABLE_HTTP
-  "http",
-#endif
-#if defined(USE_SSL) && !defined(CURL_DISABLE_HTTP)
-  "https",
-#endif
-#ifndef CURL_DISABLE_IMAP
-  "imap",
-#endif
-#if defined(USE_SSL) && !defined(CURL_DISABLE_IMAP)
-  "imaps",
-#endif
-#ifndef CURL_DISABLE_LDAP
-  "ldap",
-#endif
-#if defined(HAVE_LDAP_SSL) && !defined(CURL_DISABLE_LDAP)
-  "ldaps",
-#endif
-#ifndef CURL_DISABLE_POP3
-  "pop3",
-#endif
-#if defined(USE_SSL) && !defined(CURL_DISABLE_POP3)
-  "pop3s",
-#endif
-#ifndef CURL_DISABLE_RTSP
-  "rtsp",
-#endif
-#ifdef USE_LIBSSH2
-  "scp",
-#endif
-#ifdef USE_LIBSSH2
-  "sftp",
-#endif
-#ifndef CURL_DISABLE_SMTP
-  "smtp",
-#endif
-#if defined(USE_SSL) && !defined(CURL_DISABLE_SMTP)
-  "smtps",
-#endif
-#ifndef CURL_DISABLE_TELNET
-  "telnet",
-#endif
-#ifndef CURL_DISABLE_TFTP
-  "tftp",
-#endif
-
-  NULL
-};
-
-static curl_version_info_data version_info = {
-  CURLVERSION_NOW,
-  LIBCURL_VERSION,
-  LIBCURL_VERSION_NUM,
-  OS, /* as found by configure or set by hand at build-time */
-  0 /* features is 0 by default */
-#ifdef ENABLE_IPV6
-  | CURL_VERSION_IPV6
-#endif
-#ifdef HAVE_KRB4
-  | CURL_VERSION_KERBEROS4
-#endif
-#ifdef USE_SSL
-  | CURL_VERSION_SSL
-#endif
-#ifdef USE_NTLM
-  | CURL_VERSION_NTLM
-#endif
-#ifdef USE_WINDOWS_SSPI
-  | CURL_VERSION_SSPI
-#endif
-#ifdef HAVE_LIBZ
-  | CURL_VERSION_LIBZ
-#endif
-#ifdef HAVE_GSSAPI
-  | CURL_VERSION_GSSNEGOTIATE
-#endif
-#ifdef DEBUGBUILD
-  | CURL_VERSION_DEBUG
-#endif
-#ifdef CURLDEBUG
-  | CURL_VERSION_CURLDEBUG
-#endif
-#ifdef CURLRES_ASYNCH
-  | CURL_VERSION_ASYNCHDNS
-#endif
-#ifdef HAVE_SPNEGO
-  | CURL_VERSION_SPNEGO
-#endif
-#if (CURL_SIZEOF_CURL_OFF_T > 4) && \
-    ( (SIZEOF_OFF_T > 4) || defined(USE_WIN32_LARGE_FILES) )
-  | CURL_VERSION_LARGEFILE
-#endif
-#if defined(CURL_DOES_CONVERSIONS)
-  | CURL_VERSION_CONV
-#endif
-  ,
-  NULL, /* ssl_version */
-  0,    /* ssl_version_num, this is kept at zero */
-  NULL, /* zlib_version */
-  protocols,
-  NULL, /* c-ares version */
-  0,    /* c-ares version numerical */
-  NULL, /* libidn version */
-  0,    /* iconv version */
-  NULL, /* ssh lib version */
-};
-
-curl_version_info_data *curl_version_info(CURLversion stamp)
-{
-#ifdef USE_LIBSSH2
-  static char ssh_buffer[80];
-#endif
-
-#ifdef USE_SSL
-  static char ssl_buffer[80];
-  Curl_ssl_version(ssl_buffer, sizeof(ssl_buffer));
-  version_info.ssl_version = ssl_buffer;
-#endif
-
-#ifdef HAVE_LIBZ
-  version_info.libz_version = zlibVersion();
-  /* libz left NULL if non-existing */
-#endif
-#ifdef USE_ARES
-  {
-    int aresnum;
-    version_info.ares = ares_version(&aresnum);
-    version_info.ares_num = aresnum;
-  }
-#endif
-#ifdef USE_LIBIDN
-  /* This returns a version string if we use the given version or later,
-     otherwise it returns NULL */
-  version_info.libidn = stringprep_check_version(LIBIDN_REQUIRED_VERSION);
-  if(version_info.libidn)
-    version_info.features |= CURL_VERSION_IDN;
-#endif
-
-#if defined(HAVE_ICONV) && defined(CURL_DOES_CONVERSIONS)
-#ifdef _LIBICONV_VERSION
-  version_info.iconv_ver_num = _LIBICONV_VERSION;
-#else
-  /* version unknown */
-  version_info.iconv_ver_num = -1;
-#endif /* _LIBICONV_VERSION */
-#endif
-
-#ifdef USE_LIBSSH2
-  snprintf(ssh_buffer, sizeof(ssh_buffer), "libssh2/%s", LIBSSH2_VERSION);
-  version_info.libssh_version = ssh_buffer;
-#endif
-
-  (void)stamp; /* avoid compiler warnings, we don't use this */
-
-  return &version_info;
-}
diff --git a/src/other/curl/lib/warnless.c b/src/other/curl/lib/warnless.c
deleted file mode 100644
index 4f42dd0..0000000
--- a/src/other/curl/lib/warnless.c
+++ /dev/null
@@ -1,127 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include "warnless.h"
-
-#define CURL_MASK_SCHAR  0x7F
-#define CURL_MASK_UCHAR  0xFF
-
-#if (SIZEOF_SHORT == 2)
-#  define CURL_MASK_SSHORT  0x7FFF
-#  define CURL_MASK_USHORT  0xFFFF
-#elif (SIZEOF_SHORT == 4)
-#  define CURL_MASK_SSHORT  0x7FFFFFFF
-#  define CURL_MASK_USHORT  0xFFFFFFFF
-#elif (SIZEOF_SHORT == 8)
-#  define CURL_MASK_SSHORT  0x7FFFFFFFFFFFFFFF
-#  define CURL_MASK_USHORT  0xFFFFFFFFFFFFFFFF
-#else
-# error "SIZEOF_SHORT not defined"
-#endif
-
-#if (SIZEOF_INT == 2)
-#  define CURL_MASK_SINT  0x7FFF
-#  define CURL_MASK_UINT  0xFFFF
-#elif (SIZEOF_INT == 4)
-#  define CURL_MASK_SINT  0x7FFFFFFF
-#  define CURL_MASK_UINT  0xFFFFFFFF
-#elif (SIZEOF_INT == 8)
-#  define CURL_MASK_SINT  0x7FFFFFFFFFFFFFFF
-#  define CURL_MASK_UINT  0xFFFFFFFFFFFFFFFF
-#elif (SIZEOF_INT == 16)
-#  define CURL_MASK_SINT  0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-#  define CURL_MASK_UINT  0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-#else
-# error "SIZEOF_INT not defined"
-#endif
-
-#if (CURL_SIZEOF_LONG == 2)
-#  define CURL_MASK_SLONG  0x7FFFL
-#  define CURL_MASK_ULONG  0xFFFFUL
-#elif (CURL_SIZEOF_LONG == 4)
-#  define CURL_MASK_SLONG  0x7FFFFFFFL
-#  define CURL_MASK_ULONG  0xFFFFFFFFUL
-#elif (CURL_SIZEOF_LONG == 8)
-#  define CURL_MASK_SLONG  0x7FFFFFFFFFFFFFFFL
-#  define CURL_MASK_ULONG  0xFFFFFFFFFFFFFFFFUL
-#elif (CURL_SIZEOF_LONG == 16)
-#  define CURL_MASK_SLONG  0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFL
-#  define CURL_MASK_ULONG  0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFUL
-#else
-# error "SIZEOF_LONG not defined"
-#endif
-
-/*
-** unsigned long to unsigned short
-*/
-
-unsigned short curlx_ultous(unsigned long ulnum)
-{
-#ifdef __INTEL_COMPILER
-#  pragma warning(push)
-#  pragma warning(disable:810) /* conversion may lose significant bits */
-#endif
-
-  return (unsigned short)(ulnum & (unsigned long) CURL_MASK_USHORT);
-
-#ifdef __INTEL_COMPILER
-#  pragma warning(pop)
-#endif
-}
-
-/*
-** unsigned long to unsigned char
-*/
-
-unsigned char curlx_ultouc(unsigned long ulnum)
-{
-#ifdef __INTEL_COMPILER
-#  pragma warning(push)
-#  pragma warning(disable:810) /* conversion may lose significant bits */
-#endif
-
-  return (unsigned char)(ulnum & (unsigned long) CURL_MASK_UCHAR);
-
-#ifdef __INTEL_COMPILER
-#  pragma warning(pop)
-#endif
-}
-
-/*
-** size_t to signed int
-*/
-
-int curlx_uztosi(size_t uznum)
-{
-#ifdef __INTEL_COMPILER
-#  pragma warning(push)
-#  pragma warning(disable:810) /* conversion may lose significant bits */
-#endif
-
-  return (int)(uznum & (size_t) CURL_MASK_SINT);
-
-#ifdef __INTEL_COMPILER
-#  pragma warning(pop)
-#endif
-}
diff --git a/src/other/curl/lib/warnless.h b/src/other/curl/lib/warnless.h
deleted file mode 100644
index ac654fb..0000000
--- a/src/other/curl/lib/warnless.h
+++ /dev/null
@@ -1,31 +0,0 @@
-#ifndef HEADER_CURL_WARNLESS_H
-#define HEADER_CURL_WARNLESS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-unsigned short curlx_ultous(unsigned long ulnum);
-
-unsigned char curlx_ultouc(unsigned long ulnum);
-
-int curlx_uztosi(size_t uznum);
-
-#endif /* HEADER_CURL_WARNLESS_H */
diff --git a/src/other/curl/libcurl.pc.in b/src/other/curl/libcurl.pc.in
deleted file mode 100644
index 6eea31f..0000000
--- a/src/other/curl/libcurl.pc.in
+++ /dev/null
@@ -1,39 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 2004 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-###########################################################################
-
-# This should most probably benefit from getting a "Requires:" field added
-# dynamically by configure.
-#
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
-supported_protocols="@SUPPORT_PROTOCOLS@"
-supported_features="@SUPPORT_FEATURES@"
-
-Name: libcurl
-URL: http://curl.haxx.se/
-Description: Library to transfer files with ftp, http, etc.
-Version: @VERSION@
-Libs: -L${libdir} -lcurl @LIBS@
-Libs.private: @LIBCURL_LIBS@ @LIBS@
-Cflags: -I${includedir}
diff --git a/src/other/curl/ltmain.sh b/src/other/curl/ltmain.sh
deleted file mode 100755
index 78cf017..0000000
--- a/src/other/curl/ltmain.sh
+++ /dev/null
@@ -1,9636 +0,0 @@
-
-# libtool (GNU libtool) 2.4
-# Written by Gordon Matzigkeit <gord at gnu.ai.mit.edu>, 1996
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006,
-# 2007, 2008, 2009, 2010 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 GNU Libtool; see the file COPYING.  If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html,
-# or obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-# Usage: $progname [OPTION]... [MODE-ARG]...
-#
-# Provide generalized library-building support services.
-#
-#       --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
-#       --preserve-dup-deps  don't remove duplicate dependency libraries
-#       --quiet, --silent    don't print informational messages
-#       --no-quiet, --no-silent
-#                            print informational messages (default)
-#       --tag=TAG            use configuration variables from tag TAG
-#   -v, --verbose            print more informational messages than default
-#       --no-verbose         don't print the extra informational messages
-#       --version            print version information
-#   -h, --help, --help-all   print short, long, or detailed 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)
-#         $progname:	(GNU libtool) 2.4
-#         automake:	$automake_version
-#         autoconf:	$autoconf_version
-#
-# Report bugs to <bug-libtool at gnu.org>.
-# GNU libtool home page: <http://www.gnu.org/software/libtool/>.
-# General help using GNU software: <http://www.gnu.org/gethelp/>.
-
-PROGRAM=libtool
-PACKAGE=libtool
-VERSION=2.4
-TIMESTAMP=""
-package_revision=1.3293
-
-# 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
-
-# A function that is used when there is no print builtin or printf.
-func_fallback_echo ()
-{
-  eval 'cat <<_LTECHO_EOF
-$1
-_LTECHO_EOF'
-}
-
-# NLS nuisances: We save the old values to restore during execute mode.
-lt_user_locale=
-lt_safe_locale=
-for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
-do
-  eval "if test \"\${$lt_var+set}\" = set; then
-          save_$lt_var=\$$lt_var
-          $lt_var=C
-	  export $lt_var
-	  lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\"
-	  lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\"
-	fi"
-done
-LC_ALL=C
-LANGUAGE=C
-export LANGUAGE LC_ALL
-
-$lt_unset CDPATH
-
-
-# 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"
-
-
-
-: ${CP="cp -f"}
-test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'}
-: ${EGREP="/bin/grep -E"}
-: ${FGREP="/bin/grep -F"}
-: ${GREP="/bin/grep"}
-: ${LN_S="ln -s"}
-: ${MAKE="make"}
-: ${MKDIR="mkdir"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-: ${SED="/bin/sed"}
-: ${SHELL="${CONFIG_SHELL-/bin/sh}"}
-: ${Xsed="$SED -e 1s/^X//"}
-
-# Global variables:
-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.
-
-exit_status=$EXIT_SUCCESS
-
-# Make sure IFS has a sensible default
-lt_nl='
-'
-IFS=" 	$lt_nl"
-
-dirname="s,/[^/]*$,,"
-basename="s,^.*/,,"
-
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE.  If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
-    func_dirname_result=`$ECHO "${1}" | $SED "$dirname"`
-    if test "X$func_dirname_result" = "X${1}"; then
-      func_dirname_result="${3}"
-    else
-      func_dirname_result="$func_dirname_result${2}"
-    fi
-} # func_dirname may be replaced by extended shell implementation
-
-
-# func_basename file
-func_basename ()
-{
-    func_basename_result=`$ECHO "${1}" | $SED "$basename"`
-} # func_basename may be replaced by extended shell implementation
-
-
-# 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"
-# Implementation must be kept synchronized with func_dirname
-# and func_basename. For efficiency, we do not delegate to
-# those functions but instead duplicate the functionality here.
-func_dirname_and_basename ()
-{
-    # Extract subdirectory from the argument.
-    func_dirname_result=`$ECHO "${1}" | $SED -e "$dirname"`
-    if test "X$func_dirname_result" = "X${1}"; then
-      func_dirname_result="${3}"
-    else
-      func_dirname_result="$func_dirname_result${2}"
-    fi
-    func_basename_result=`$ECHO "${1}" | $SED -e "$basename"`
-} # func_dirname_and_basename may be replaced by extended shell implementation
-
-
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# 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).
-# func_strip_suffix prefix name
-func_stripname ()
-{
-    case ${2} in
-      .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
-      *)  func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
-    esac
-} # func_stripname may be replaced by extended shell implementation
-
-
-# These SED scripts presuppose an absolute path with a trailing slash.
-pathcar='s,^/\([^/]*\).*$,\1,'
-pathcdr='s,^/[^/]*,,'
-removedotparts=':dotsl
-		s@/\./@/@g
-		t dotsl
-		s,/\.$,/,'
-collapseslashes='s@/\{1,\}@/@g'
-finalslash='s,/*$,/,'
-
-# 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.
-#             value returned in "$func_normal_abspath_result"
-func_normal_abspath ()
-{
-  # 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 "$removedotparts" -e "$collapseslashes" -e "$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 "$pathcar"`
-    func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
-        -e "$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_normal_abspath_result=$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_relative_path SRCDIR DSTDIR
-# generates a relative path from SRCDIR to DSTDIR, with a trailing
-# slash if non-empty, suitable for immediately appending a filename
-# without needing to append a separator.
-#             value returned in "$func_relative_path_result"
-func_relative_path ()
-{
-  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 "x$func_relative_path_tlibdir" = x ; 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 "x$func_stripname_result" != x ; then
-    func_relative_path_result=${func_relative_path_result}/${func_stripname_result}
-  fi
-
-  # Normalisation. If bindir is libdir, return empty string,
-  # else relative path ending with a slash; either way, target
-  # file name can be directly appended.
-  if test ! -z "$func_relative_path_result"; then
-    func_stripname './' '' "$func_relative_path_result/"
-    func_relative_path_result=$func_stripname_result
-  fi
-}
-
-# The name of this program:
-func_dirname_and_basename "$progpath"
-progname=$func_basename_result
-
-# Make sure we have an absolute path for reexecution:
-case $progpath in
-  [\\/]*|[A-Za-z]:\\*) ;;
-  *[\\/]*)
-     progdir=$func_dirname_result
-     progdir=`cd "$progdir" && pwd`
-     progpath="$progdir/$progname"
-     ;;
-  *)
-     save_IFS="$IFS"
-     IFS=:
-     for progdir in $PATH; do
-       IFS="$save_IFS"
-       test -x "$progdir/$progname" && break
-     done
-     IFS="$save_IFS"
-     test -n "$progdir" || progdir=`pwd`
-     progpath="$progdir/$progname"
-     ;;
-esac
-
-# Sed substitution that helps us do robust quoting.  It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed="${SED}"' -e 1s/^X//'
-sed_quote_subst='s/\([`"$\\]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-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
-# which contains forward slashes, into one that contains
-# (escaped) backslashes.  A very naive implementation.
-lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
-
-# Re-`\' parameter expansions in output of double_quote_subst that were
-# `\'-ed in input to the same.  If an odd number of `\' preceded a '$'
-# in input to 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 '$'.
-bs='\\'
-bs2='\\\\'
-bs4='\\\\\\\\'
-dollar='\$'
-sed_double_backslash="\
-  s/$bs4/&\\
-/g
-  s/^$bs2$dollar/$bs&/
-  s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g
-  s/\n//g"
-
-# Standard options:
-opt_dry_run=false
-opt_help=false
-opt_quiet=false
-opt_verbose=false
-opt_warning=:
-
-# func_echo arg...
-# Echo program name prefixed message, along with the current mode
-# name if it has been set yet.
-func_echo ()
-{
-    $ECHO "$progname: ${opt_mode+$opt_mode: }$*"
-}
-
-# func_verbose arg...
-# Echo program name prefixed message in verbose mode only.
-func_verbose ()
-{
-    $opt_verbose && 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_echo_all arg...
-# Invoke $ECHO with all args, space-separated.
-func_echo_all ()
-{
-    $ECHO "$*"
-}
-
-# func_error arg...
-# Echo program name prefixed message to standard error.
-func_error ()
-{
-    $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2
-}
-
-# func_warning arg...
-# Echo program name prefixed warning message to standard error.
-func_warning ()
-{
-    $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2
-
-    # bash bug again:
-    :
-}
-
-# func_fatal_error arg...
-# Echo program name prefixed message to standard error, and exit.
-func_fatal_error ()
-{
-    func_error ${1+"$@"}
-    exit $EXIT_FAILURE
-}
-
-# func_fatal_help arg...
-# Echo program name prefixed message to standard error, followed by
-# a help hint, and exit.
-func_fatal_help ()
-{
-    func_error ${1+"$@"}
-    func_fatal_error "$help"
-}
-help="Try \`$progname --help' for more information."  ## default
-
-
-# func_grep expression filename
-# Check whether EXPRESSION matches any line of FILENAME, without output.
-func_grep ()
-{
-    $GREP "$1" "$2" >/dev/null 2>&1
-}
-
-
-# func_mkdir_p directory-path
-# Make sure the entire path to DIRECTORY-PATH is available.
-func_mkdir_p ()
-{
-    my_directory_path="$1"
-    my_dir_list=
-
-    if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then
-
-      # Protect directory names starting with `-'
-      case $my_directory_path in
-        -*) my_directory_path="./$my_directory_path" ;;
-      esac
-
-      # While some portion of DIR does not yet exist...
-      while test ! -d "$my_directory_path"; do
-        # ...make a list in topmost first order.  Use a colon delimited
-	# list incase some portion of path contains whitespace.
-        my_dir_list="$my_directory_path:$my_dir_list"
-
-        # If the last portion added has no slash in it, the list is done
-        case $my_directory_path in */*) ;; *) break ;; esac
-
-        # ...otherwise throw away the child directory and loop
-        my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"`
-      done
-      my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'`
-
-      save_mkdir_p_IFS="$IFS"; IFS=':'
-      for my_dir in $my_dir_list; do
-	IFS="$save_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 "$my_dir" 2>/dev/null || :
-      done
-      IFS="$save_mkdir_p_IFS"
-
-      # Bail out if we (or some other process) failed to create a directory.
-      test -d "$my_directory_path" || \
-        func_fatal_error "Failed to create \`$1'"
-    fi
-}
-
-
-# func_mktempdir [string]
-# Make a temporary directory that won't clash with other running
-# libtool processes, and avoids race conditions if possible.  If
-# given, STRING is the basename for that directory.
-func_mktempdir ()
-{
-    my_template="${TMPDIR-/tmp}/${1-$progname}"
-
-    if test "$opt_dry_run" = ":"; then
-      # Return a directory name, but don't create it in dry-run mode
-      my_tmpdir="${my_template}-$$"
-    else
-
-      # If mktemp works, use that first and foremost
-      my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null`
-
-      if test ! -d "$my_tmpdir"; then
-        # Failing that, at least try and use $RANDOM to avoid a race
-        my_tmpdir="${my_template}-${RANDOM-0}$$"
-
-        save_mktempdir_umask=`umask`
-        umask 0077
-        $MKDIR "$my_tmpdir"
-        umask $save_mktempdir_umask
-      fi
-
-      # If we're not in dry-run mode, bomb out on failure
-      test -d "$my_tmpdir" || \
-        func_fatal_error "cannot create temporary directory \`$my_tmpdir'"
-    fi
-
-    $ECHO "$my_tmpdir"
-}
-
-
-# func_quote_for_eval arg
-# Aesthetically quote ARG to be evaled later.
-# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT
-# is double-quoted, suitable for a subsequent eval, whereas
-# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters
-# which are still active within double quotes backslashified.
-func_quote_for_eval ()
-{
-    case $1 in
-      *[\\\`\"\$]*)
-	func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;;
-      *)
-        func_quote_for_eval_unquoted_result="$1" ;;
-    esac
-
-    case $func_quote_for_eval_unquoted_result in
-      # Double-quote args containing shell metacharacters to delay
-      # word splitting, command substitution and 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_for_eval_result="\"$func_quote_for_eval_unquoted_result\""
-        ;;
-      *)
-        func_quote_for_eval_result="$func_quote_for_eval_unquoted_result"
-    esac
-}
-
-
-# func_quote_for_expand arg
-# Aesthetically quote ARG to be evaled later; same as above,
-# but do not quote variable references.
-func_quote_for_expand ()
-{
-    case $1 in
-      *[\\\`\"]*)
-	my_arg=`$ECHO "$1" | $SED \
-	    -e "$double_quote_subst" -e "$sed_double_backslash"` ;;
-      *)
-        my_arg="$1" ;;
-    esac
-
-    case $my_arg in
-      # Double-quote args containing shell metacharacters to delay
-      # word splitting and command substitution for a subsequent eval.
-      # Many Bourne shells cannot handle close brackets correctly
-      # in scan sets, so we specify it separately.
-      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
-        my_arg="\"$my_arg\""
-        ;;
-    esac
-
-    func_quote_for_expand_result="$my_arg"
-}
-
-
-# func_show_eval cmd [fail_exp]
-# Unless opt_silent 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 ()
-{
-    my_cmd="$1"
-    my_fail_exp="${2-:}"
-
-    ${opt_silent-false} || {
-      func_quote_for_expand "$my_cmd"
-      eval "func_echo $func_quote_for_expand_result"
-    }
-
-    if ${opt_dry_run-false}; then :; else
-      eval "$my_cmd"
-      my_status=$?
-      if test "$my_status" -eq 0; then :; else
-	eval "(exit $my_status); $my_fail_exp"
-      fi
-    fi
-}
-
-
-# func_show_eval_locale cmd [fail_exp]
-# Unless opt_silent 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 ()
-{
-    my_cmd="$1"
-    my_fail_exp="${2-:}"
-
-    ${opt_silent-false} || {
-      func_quote_for_expand "$my_cmd"
-      eval "func_echo $func_quote_for_expand_result"
-    }
-
-    if ${opt_dry_run-false}; then :; else
-      eval "$lt_user_locale
-	    $my_cmd"
-      my_status=$?
-      eval "$lt_safe_locale"
-      if test "$my_status" -eq 0; then :; else
-	eval "(exit $my_status); $my_fail_exp"
-      fi
-    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 ()
-{
-  case $1 in
-  [0-9]* | *[!a-zA-Z0-9_]*)
-    func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'`
-    ;;
-  * )
-    func_tr_sh_result=$1
-    ;;
-  esac
-}
-
-
-# func_version
-# Echo version message to standard output and exit.
-func_version ()
-{
-    $opt_debug
-
-    $SED -n '/(C)/!b go
-	:more
-	/\./!{
-	  N
-	  s/\n# / /
-	  b more
-	}
-	:go
-	/^# '$PROGRAM' (GNU /,/# warranty; / {
-        s/^# //
-	s/^# *$//
-        s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/
-        p
-     }' < "$progpath"
-     exit $?
-}
-
-# func_usage
-# Echo short help message to standard output and exit.
-func_usage ()
-{
-    $opt_debug
-
-    $SED -n '/^# Usage:/,/^#  *.*--help/ {
-        s/^# //
-	s/^# *$//
-	s/\$progname/'$progname'/
-	p
-    }' < "$progpath"
-    echo
-    $ECHO "run \`$progname --help | more' for full usage"
-    exit $?
-}
-
-# func_help [NOEXIT]
-# Echo long help message to standard output and exit,
-# unless 'noexit' is passed as argument.
-func_help ()
-{
-    $opt_debug
-
-    $SED -n '/^# Usage:/,/# Report bugs to/ {
-	:print
-        s/^# //
-	s/^# *$//
-	s*\$progname*'$progname'*
-	s*\$host*'"$host"'*
-	s*\$SHELL*'"$SHELL"'*
-	s*\$LTCC*'"$LTCC"'*
-	s*\$LTCFLAGS*'"$LTCFLAGS"'*
-	s*\$LD*'"$LD"'*
-	s/\$with_gnu_ld/'"$with_gnu_ld"'/
-	s/\$automake_version/'"`(automake --version) 2>/dev/null |$SED 1q`"'/
-	s/\$autoconf_version/'"`(autoconf --version) 2>/dev/null |$SED 1q`"'/
-	p
-	d
-     }
-     /^# .* home page:/b print
-     /^# General help using/b print
-     ' < "$progpath"
-    ret=$?
-    if test -z "$1"; then
-      exit $ret
-    fi
-}
-
-# func_missing_arg argname
-# Echo program name prefixed message to standard error and set global
-# exit_cmd.
-func_missing_arg ()
-{
-    $opt_debug
-
-    func_error "missing argument for $1."
-    exit_cmd=exit
-}
-
-
-# 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.
-func_split_short_opt ()
-{
-    my_sed_short_opt='1s/^\(..\).*$/\1/;q'
-    my_sed_short_rest='1s/^..\(.*\)$/\1/;q'
-
-    func_split_short_opt_name=`$ECHO "$1" | $SED "$my_sed_short_opt"`
-    func_split_short_opt_arg=`$ECHO "$1" | $SED "$my_sed_short_rest"`
-} # func_split_short_opt may be replaced by extended shell implementation
-
-
-# func_split_long_opt longopt
-# Set func_split_long_opt_name and func_split_long_opt_arg shell
-# variables after splitting LONGOPT at the `=' sign.
-func_split_long_opt ()
-{
-    my_sed_long_opt='1s/^\(--[^=]*\)=.*/\1/;q'
-    my_sed_long_arg='1s/^--[^=]*=//'
-
-    func_split_long_opt_name=`$ECHO "$1" | $SED "$my_sed_long_opt"`
-    func_split_long_opt_arg=`$ECHO "$1" | $SED "$my_sed_long_arg"`
-} # func_split_long_opt may be replaced by extended shell implementation
-
-exit_cmd=:
-
-
-
-
-
-magic="%%%MAGIC variable%%%"
-magic_exe="%%%MAGIC EXE variable%%%"
-
-# Global variables.
-nonopt=
-preserve_args=
-lo2o="s/\\.lo\$/.${objext}/"
-o2lo="s/\\.${objext}\$/.lo/"
-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=
-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
-{
-    eval "${1}=\$${1}\${2}"
-} # func_append may be replaced by extended shell implementation
-
-# func_append_quoted var value
-# Quote VALUE and append to the end of shell variable VAR, separated
-# by a space.
-func_append_quoted ()
-{
-    func_quote_for_eval "${2}"
-    eval "${1}=\$${1}\\ \$func_quote_for_eval_result"
-} # func_append_quoted may be replaced by extended shell implementation
-
-
-# func_arith arithmetic-term...
-func_arith ()
-{
-    func_arith_result=`expr "${@}"`
-} # func_arith may be replaced by extended shell implementation
-
-
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
-    func_len_result=`expr "${1}" : ".*" 2>/dev/null || echo $max_cmd_len`
-} # func_len may be replaced by extended shell implementation
-
-
-# func_lo2o object
-func_lo2o ()
-{
-    func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"`
-} # func_lo2o may be replaced by extended shell implementation
-
-
-# func_xform libobj-or-source
-func_xform ()
-{
-    func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'`
-} # func_xform may be replaced by extended shell implementation
-
-
-# func_fatal_configuration arg...
-# Echo program name prefixed message to standard error, followed by
-# a configuration failure hint, and exit.
-func_fatal_configuration ()
-{
-    func_error ${1+"$@"}
-    func_error "See the $PACKAGE documentation for more information."
-    func_fatal_error "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 "$build_libtool_libs" = yes; then
-      echo "enable shared libraries"
-    else
-      echo "disable shared libraries"
-    fi
-    if test "$build_old_libs" = yes; 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
-}
-
-
-# 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
-  ;;
-esac
-
-
-
-# Option defaults:
-opt_debug=:
-opt_dry_run=false
-opt_config=false
-opt_preserve_dup_deps=false
-opt_features=false
-opt_finish=false
-opt_help=false
-opt_help_all=false
-opt_silent=:
-opt_verbose=:
-opt_silent=false
-opt_verbose=false
-
-
-# Parse options once, thoroughly.  This comes as soon as possible in the
-# script to make things like `--version' happen as quickly as we can.
-{
-  # this just eases exit handling
-  while test $# -gt 0; do
-    opt="$1"
-    shift
-    case $opt in
-      --debug|-x)	opt_debug='set -x'
-			func_echo "enabling shell trace mode"
-			$opt_debug
-			;;
-      --dry-run|--dryrun|-n)
-			opt_dry_run=:
-			;;
-      --config)
-			opt_config=:
-func_config
-			;;
-      --dlopen|-dlopen)
-			optarg="$1"
-			opt_dlopen="${opt_dlopen+$opt_dlopen
-}$optarg"
-			shift
-			;;
-      --preserve-dup-deps)
-			opt_preserve_dup_deps=:
-			;;
-      --features)
-			opt_features=:
-func_features
-			;;
-      --finish)
-			opt_finish=:
-set dummy --mode finish ${1+"$@"}; shift
-			;;
-      --help)
-			opt_help=:
-			;;
-      --help-all)
-			opt_help_all=:
-opt_help=': help-all'
-			;;
-      --mode)
-			test $# = 0 && func_missing_arg $opt && break
-			optarg="$1"
-			opt_mode="$optarg"
-case $optarg in
-  # Valid mode arguments:
-  clean|compile|execute|finish|install|link|relink|uninstall) ;;
-
-  # Catch anything else as an error
-  *) func_error "invalid argument for $opt"
-     exit_cmd=exit
-     break
-     ;;
-esac
-			shift
-			;;
-      --no-silent|--no-quiet)
-			opt_silent=false
-func_append preserve_args " $opt"
-			;;
-      --no-verbose)
-			opt_verbose=false
-func_append preserve_args " $opt"
-			;;
-      --silent|--quiet)
-			opt_silent=:
-func_append preserve_args " $opt"
-        opt_verbose=false
-			;;
-      --verbose|-v)
-			opt_verbose=:
-func_append preserve_args " $opt"
-opt_silent=false
-			;;
-      --tag)
-			test $# = 0 && func_missing_arg $opt && break
-			optarg="$1"
-			opt_tag="$optarg"
-func_append preserve_args " $opt $optarg"
-func_enable_tag "$optarg"
-			shift
-			;;
-
-      -\?|-h)		func_usage				;;
-      --help)		func_help				;;
-      --version)	func_version				;;
-
-      # Separate optargs to long options:
-      --*=*)
-			func_split_long_opt "$opt"
-			set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"}
-			shift
-			;;
-
-      # Separate non-argument short options:
-      -\?*|-h*|-n*|-v*)
-			func_split_short_opt "$opt"
-			set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"}
-			shift
-			;;
-
-      --)		break					;;
-      -*)		func_fatal_help "unrecognized option \`$opt'" ;;
-      *)		set dummy "$opt" ${1+"$@"};	shift; break  ;;
-    esac
-  done
-
-  # Validate options:
-
-  # save first non-option argument
-  if test "$#" -gt 0; then
-    nonopt="$opt"
-    shift
-  fi
-
-  # preserve --debug
-  test "$opt_debug" = : || func_append preserve_args " --debug"
-
-  case $host in
-    *cygwin* | *mingw* | *pw32* | *cegcc*)
-      # 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
-
-    if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
-      func_fatal_configuration "not configured to build any kind of library"
-    fi
-
-    # Darwin sucks
-    eval std_shrext=\"$shrext_cmds\"
-
-    # Only execute mode is allowed to have -dlopen flags.
-    if test -n "$opt_dlopen" && test "$opt_mode" != execute; 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."
-  }
-
-
-  # Bail if the options were screwed
-  $exit_cmd $EXIT_FAILURE
-}
-
-
-
-
-## ----------- ##
-##    Main.    ##
-## ----------- ##
-
-# 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 \
-        | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
-}
-
-# 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 "$lalib_p" = yes
-}
-
-# 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 ()
-{
-    func_lalib_p "$1"
-}
-
-# 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 ()
-{
-    $opt_debug
-    save_ifs=$IFS; IFS='~'
-    for cmd in $1; do
-      IFS=$save_ifs
-      eval cmd=\"$cmd\"
-      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 ()
-{
-    $opt_debug
-    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 ()
-{
-    $opt_debug
-    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 "$build_libtool_libs" = yes; then
-      write_lobj=\'${2}\'
-    else
-      write_lobj=none
-    fi
-
-    if test "$build_old_libs" = yes; then
-      write_oldobj=\'${3}\'
-    else
-      write_oldobj=none
-    fi
-
-    $opt_dry_run || {
-      cat >${write_libobj}T <<EOF
-# $write_libobj - a libtool object file
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
-#
-# Please DO NOT delete this file!
-# It is necessary for linking the library.
-
-# Name of the PIC object.
-pic_object=$write_lobj
-
-# Name of the non-PIC object
-non_pic_object=$write_oldobj
-
-EOF
-      $MV "${write_libobj}T" "${write_libobj}"
-    }
-}
-
-
-##################################################
-# FILE NAME AND PATH CONVERSION HELPER FUNCTIONS #
-##################################################
-
-# func_convert_core_file_wine_to_w32 ARG
-# Helper function used by file name 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.
-#
-# ARG is the $build file name to be converted to w32 format.
-# Result is available in $func_convert_core_file_wine_to_w32_result, and will
-# be empty on error (or when ARG is empty)
-func_convert_core_file_wine_to_w32 ()
-{
-  $opt_debug
-  func_convert_core_file_wine_to_w32_result="$1"
-  if test -n "$1"; then
-    # Unfortunately, winepath does not exit with a non-zero error code, so we
-    # are forced to check the contents of stdout. On the other hand, if the
-    # command is not found, the shell will set an exit code of 127 and print
-    # *an error message* to stdout. So we must check for both error code of
-    # zero AND non-empty stdout, which explains the odd construction:
-    func_convert_core_file_wine_to_w32_tmp=`winepath -w "$1" 2>/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 "$lt_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 ()
-{
-  $opt_debug
-  # 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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  # awkward: cmd appends spaces to result
-  func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null |
-    $SED -e 's/[ ]*$//' -e "$lt_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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  $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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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_mode_compile arg...
-func_mode_compile ()
-{
-    $opt_debug
-    # 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 | *.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 "$build_libtool_libs" != yes && \
-	  func_fatal_configuration "can not 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_for_eval "$libobj"
-    test "X$libobj" != "X$func_quote_for_eval_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 "$build_old_libs" = yes; 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 "$pic_mode" = no && test "$deplibs_check_method" != pass_all; 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 "$compiler_c_o" = no; 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 "$need_locks" = yes; 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 "$need_locks" = warn; 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_for_eval "$srcfile"
-    qsrcfile=$func_quote_for_eval_result
-
-    # Only build a PIC object if we are building libtool libraries.
-    if test "$build_libtool_libs" = yes; then
-      # Without this assignment, base_compile gets emptied.
-      fbsd_hideous_sh_bug=$base_compile
-
-      if test "$pic_mode" != no; 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 "$need_locks" = warn &&
-	 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 "$suppress_opt" = yes; then
-	suppress_output=' >/dev/null 2>&1'
-      fi
-    fi
-
-    # Only build a position-dependent object if we build old libraries.
-    if test "$build_old_libs" = yes; then
-      if test "$pic_mode" != yes; then
-	# Don't build PIC code
-	command="$base_compile $qsrcfile$pie_flag"
-      else
-	command="$base_compile $qsrcfile $pic_flag"
-      fi
-      if test "$compiler_c_o" = yes; 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 "$need_locks" = warn &&
-	 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 "$need_locks" != no; then
-	removelist=$lockfile
-        $RM "$lockfile"
-      fi
-    }
-
-    exit $EXIT_SUCCESS
-}
-
-$opt_help || {
-  test "$opt_mode" = compile && 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          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
-  -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
-  -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           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
-  -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 ()
-{
-    $opt_debug
-    # 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 test "X$opt_dry_run" = Xfalse; then
-      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"
-    else
-      # 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
-    fi
-}
-
-test "$opt_mode" = execute && func_mode_execute ${1+"$@"}
-
-
-# func_mode_finish arg...
-func_mode_finish ()
-{
-    $opt_debug
-    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_silent && 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 "$opt_mode" = finish && func_mode_finish ${1+"$@"}
-
-
-# func_mode_install arg...
-func_mode_install ()
-{
-    $opt_debug
-    # There may be an optional sh(1) argument at the beginning of
-    # install_prog (especially on Windows NT).
-    if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
-       # Allow the use of GNU shtool's install command.
-       case $nonopt in *shtool*) :;; *) false;; esac; then
-      # Aesthetically quote it.
-      func_quote_for_eval "$nonopt"
-      install_prog="$func_quote_for_eval_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_for_eval "$arg"
-    func_append install_prog "$func_quote_for_eval_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=no
-    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=yes ;;
-      -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$prev" = x-m && 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_for_eval "$arg"
-      func_append install_prog " $func_quote_for_eval_result"
-      if test -n "$arg2"; then
-	func_quote_for_eval "$arg2"
-      fi
-      func_append install_shared_prog " $func_quote_for_eval_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_for_eval "$install_override_mode"
-	func_append install_shared_prog " -m $func_quote_for_eval_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=yes
-    if test "$isdir" = yes; 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
-	    ;;
-	  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 "$build_old_libs" = yes; 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=yes
-	  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'` ### testsuite: skip nested quoting test
-	    if test -n "$libdir" && test ! -f "$libfile"; then
-	      func_warning "\`$lib' has not been installed in \`$libdir'"
-	      finalize=no
-	    fi
-	  done
-
-	  relink_command=
-	  func_source "$wrapper"
-
-	  outputname=
-	  if test "$fast_install" = no && test -n "$relink_command"; then
-	    $opt_dry_run || {
-	      if test "$finalize" = yes; 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_silent || {
-	          func_quote_for_expand "$relink_command"
-		  eval "func_echo $func_quote_for_expand_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_show_eval "$install_prog \$file \$oldlib" 'exit $?'
-
-      if test -n "$stripme" && test -n "$old_striplib"; then
-	func_show_eval "$old_striplib $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 "$opt_mode" = install && 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 ()
-{
-    $opt_debug
-    my_outputname="$1"
-    my_originator="$2"
-    my_pic_p="${3-no}"
-    my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'`
-    my_dlsyms=
-
-    if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; 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$TIMESTAMP) $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 con'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
-
-/* External symbol declarations for the compiler. */\
-"
-
-	if test "$dlself" = yes; 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 <import library>.
-	            $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 >/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
-
-	  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[];
-LT_DLSYM_CONST lt_dlsymlist
-lt_${my_prefix}_LTX_preloaded_symbols[] =
-{\
-  { \"$my_originator\", (void *) 0 },"
-
-	  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"  ;;
-	  *)
-	    if test "X$my_pic_p" != Xno; then
-	      pic_flag_for_symtable=" $pic_flag"
-	    fi
-	    ;;
-	  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"'
-
-	# 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_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 ()
-{
-  $opt_debug
-  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
-      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
-		}
-	    }'`
-      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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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 which possess that section. Heuristic: eliminate
-    # all those which 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_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 ()
-{
-  $opt_debug
-  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 ()
-{
-  $opt_debug
-  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_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 ()
-{
-  $opt_debug
-  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 ()
-{
-    $opt_debug
-    f_ex_an_ar_dir="$1"; shift
-    f_ex_an_ar_oldlib="$1"
-    if test "$lock_old_archive_extraction" = yes; 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 "$lock_old_archive_extraction" = yes; 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 ()
-{
-    $opt_debug
-    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`
-	  darwin_base_archive=`basename "$darwin_archive"`
-	  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 "$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 in which 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$TIMESTAMP) $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\""
-
-    qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"`
-    $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/ which is used only on
-# windows platforms, and (c) all begin with the string "--lt-"
-# (application programs are unlikely to have options which 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$TIMESTAMP) $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 ()
-{
-  for lt_wr_arg
-  do
-    case \$lt_wr_arg in
-    --lt-*) ;;
-    *) set x \"\$@\" \"\$lt_wr_arg\"; shift;;
-    esac
-    shift
-  done
-  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 "$fast_install" = yes; 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 "$shlibpath_overrides_runpath" = yes && 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 <<EOF
-
-/* $cwrappersource - temporary wrapper executable for $objdir/$outputname
-   Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
-
-   The $output program cannot be directly executed until all the libtool
-   libraries that it depends on are installed.
-
-   This wrapper executable should never be moved out of the build directory.
-   If it is, it will not operate correctly.
-*/
-EOF
-	    cat <<"EOF"
-#ifdef _MSC_VER
-# define _CRT_SECURE_NO_DEPRECATE 1
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-#ifdef _MSC_VER
-# include <direct.h>
-# include <process.h>
-# include <io.h>
-#else
-# include <unistd.h>
-# include <stdint.h>
-# ifdef __CYGWIN__
-#  include <io.h>
-# endif
-#endif
-#include <malloc.h>
-#include <stdarg.h>
-#include <assert.h>
-#include <string.h>
-#include <ctype.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <sys/stat.h>
-
-/* 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 platforms) ... */
-#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
-# ifndef _INTPTR_T_DEFINED
-#  define _INTPTR_T_DEFINED
-#  define intptr_t int
-# endif
-#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 ((void *) 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 <<EOF
-volatile const char * MAGIC_EXE = "$magic_exe";
-const char * LIB_PATH_VARNAME = "$shlibpath_var";
-EOF
-
-	    if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
-              func_to_host_path "$temp_rpath"
-	      cat <<EOF
-const char * LIB_PATH_VALUE   = "$func_to_host_path_result";
-EOF
-	    else
-	      cat <<"EOF"
-const char * LIB_PATH_VALUE   = "";
-EOF
-	    fi
-
-	    if test -n "$dllsearchpath"; then
-              func_to_host_path "$dllsearchpath:"
-	      cat <<EOF
-const char * EXE_PATH_VARNAME = "PATH";
-const char * EXE_PATH_VALUE   = "$func_to_host_path_result";
-EOF
-	    else
-	      cat <<"EOF"
-const char * EXE_PATH_VARNAME = "";
-const char * EXE_PATH_VALUE   = "";
-EOF
-	    fi
-
-	    if test "$fast_install" = yes; then
-	      cat <<EOF
-const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */
-EOF
-	    else
-	      cat <<EOF
-const char * TARGET_PROGRAM_NAME = "$outputname"; /* hopefully, no .exe */
-EOF
-	    fi
-
-
-	    cat <<"EOF"
-
-#define LTWRAPPER_OPTION_PREFIX         "--lt-"
-
-static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX;
-static const char *dumpscript_opt       = LTWRAPPER_OPTION_PREFIX "dump-script";
-static const char *debug_opt            = LTWRAPPER_OPTION_PREFIX "debug";
-
-int
-main (int argc, char *argv[])
-{
-  char **newargz;
-  int  newargc;
-  char *tmp_pathspec;
-  char *actual_cwrapper_path;
-  char *actual_cwrapper_name;
-  char *target_name;
-  char *lt_argv_zero;
-  intptr_t rval = 127;
-
-  int i;
-
-  program_name = (char *) xstrdup (base_name (argv[0]));
-  newargz = XMALLOC (char *, argc + 1);
-
-  /* very simple arg parsing; don't want to rely on getopt
-   * also, copy all non cwrapper options to newargz, except
-   * argz[0], which is handled differently
-   */
-  newargc=0;
-  for (i = 1; i < argc; i++)
-    {
-      if (strcmp (argv[i], dumpscript_opt) == 0)
-	{
-EOF
-	    case "$host" in
-	      *mingw* | *cygwin* )
-		# make stdout use "unix" line endings
-		echo "          setmode(1,_O_BINARY);"
-		;;
-	      esac
-
-	    cat <<"EOF"
-	  lt_dump_script (stdout);
-	  return 0;
-	}
-      if (strcmp (argv[i], debug_opt) == 0)
-	{
-          lt_debug = 1;
-          continue;
-	}
-      if (strcmp (argv[i], ltwrapper_option_prefix) == 0)
-        {
-          /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX
-             namespace, but it is not one of the ones we know about and
-             have already dealt with, above (inluding dump-script), then
-             report an error. Otherwise, targets might begin to believe
-             they are allowed to use options in the LTWRAPPER_OPTION_PREFIX
-             namespace. The first time any user complains about this, we'll
-             need to make LTWRAPPER_OPTION_PREFIX a configure-time option
-             or a configure.ac-settable value.
-           */
-          lt_fatal (__FILE__, __LINE__,
-		    "unrecognized %s option: '%s'",
-                    ltwrapper_option_prefix, argv[i]);
-        }
-      /* otherwise ... */
-      newargz[++newargc] = xstrdup (argv[i]);
-    }
-  newargz[++newargc] = NULL;
-
-EOF
-	    cat <<EOF
-  /* The GNU banner must be the first non-error debug message */
-  lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\n");
-EOF
-	    cat <<"EOF"
-  lt_debugprintf (__FILE__, __LINE__, "(main) argv[0]: %s\n", argv[0]);
-  lt_debugprintf (__FILE__, __LINE__, "(main) program_name: %s\n", program_name);
-
-  tmp_pathspec = find_executable (argv[0]);
-  if (tmp_pathspec == NULL)
-    lt_fatal (__FILE__, __LINE__, "couldn't find %s", argv[0]);
-  lt_debugprintf (__FILE__, __LINE__,
-                  "(main) found exe (before symlink chase) at: %s\n",
-		  tmp_pathspec);
-
-  actual_cwrapper_path = chase_symlinks (tmp_pathspec);
-  lt_debugprintf (__FILE__, __LINE__,
-                  "(main) found exe (after symlink chase) at: %s\n",
-		  actual_cwrapper_path);
-  XFREE (tmp_pathspec);
-
-  actual_cwrapper_name = xstrdup (base_name (actual_cwrapper_path));
-  strendzap (actual_cwrapper_path, actual_cwrapper_name);
-
-  /* wrapper name transforms */
-  strendzap (actual_cwrapper_name, ".exe");
-  tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1);
-  XFREE (actual_cwrapper_name);
-  actual_cwrapper_name = tmp_pathspec;
-  tmp_pathspec = 0;
-
-  /* target_name transforms -- use actual target program name; might have lt- prefix */
-  target_name = xstrdup (base_name (TARGET_PROGRAM_NAME));
-  strendzap (target_name, ".exe");
-  tmp_pathspec = lt_extend_str (target_name, ".exe", 1);
-  XFREE (target_name);
-  target_name = tmp_pathspec;
-  tmp_pathspec = 0;
-
-  lt_debugprintf (__FILE__, __LINE__,
-		  "(main) libtool target name: %s\n",
-		  target_name);
-EOF
-
-	    cat <<EOF
-  newargz[0] =
-    XMALLOC (char, (strlen (actual_cwrapper_path) +
-		    strlen ("$objdir") + 1 + strlen (actual_cwrapper_name) + 1));
-  strcpy (newargz[0], actual_cwrapper_path);
-  strcat (newargz[0], "$objdir");
-  strcat (newargz[0], "/");
-EOF
-
-	    cat <<"EOF"
-  /* stop here, and copy so we don't have to do this twice */
-  tmp_pathspec = xstrdup (newargz[0]);
-
-  /* do NOT want the lt- prefix here, so use actual_cwrapper_name */
-  strcat (newargz[0], actual_cwrapper_name);
-
-  /* DO want the lt- prefix here if it exists, so use target_name */
-  lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1);
-  XFREE (tmp_pathspec);
-  tmp_pathspec = NULL;
-EOF
-
-	    case $host_os in
-	      mingw*)
-	    cat <<"EOF"
-  {
-    char* p;
-    while ((p = strchr (newargz[0], '\\')) != NULL)
-      {
-	*p = '/';
-      }
-    while ((p = strchr (lt_argv_zero, '\\')) != NULL)
-      {
-	*p = '/';
-      }
-  }
-EOF
-	    ;;
-	    esac
-
-	    cat <<"EOF"
-  XFREE (target_name);
-  XFREE (actual_cwrapper_path);
-  XFREE (actual_cwrapper_name);
-
-  lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */
-  lt_setenv ("DUALCASE", "1");  /* for MSK sh */
-  /* Update the DLL searchpath.  EXE_PATH_VALUE ($dllsearchpath) must
-     be prepended before (that is, appear after) LIB_PATH_VALUE ($temp_rpath)
-     because on Windows, both *_VARNAMEs are PATH but uninstalled
-     libraries must come first. */
-  lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE);
-  lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE);
-
-  lt_debugprintf (__FILE__, __LINE__, "(main) lt_argv_zero: %s\n",
-		  nonnull (lt_argv_zero));
-  for (i = 0; i < newargc; i++)
-    {
-      lt_debugprintf (__FILE__, __LINE__, "(main) newargz[%d]: %s\n",
-		      i, nonnull (newargz[i]));
-    }
-
-EOF
-
-	    case $host_os in
-	      mingw*)
-		cat <<"EOF"
-  /* execv doesn't actually work on mingw as expected on unix */
-  newargz = prepare_spawn (newargz);
-  rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
-  if (rval == -1)
-    {
-      /* failed to start process */
-      lt_debugprintf (__FILE__, __LINE__,
-		      "(main) failed to launch target \"%s\": %s\n",
-		      lt_argv_zero, nonnull (strerror (errno)));
-      return 127;
-    }
-  return rval;
-EOF
-		;;
-	      *)
-		cat <<"EOF"
-  execv (lt_argv_zero, newargz);
-  return rval; /* =127, but avoids unused variable warning */
-EOF
-		;;
-	    esac
-
-	    cat <<"EOF"
-}
-
-void *
-xmalloc (size_t num)
-{
-  void *p = (void *) malloc (num);
-  if (!p)
-    lt_fatal (__FILE__, __LINE__, "memory exhausted");
-
-  return p;
-}
-
-char *
-xstrdup (const char *string)
-{
-  return string ? strcpy ((char *) xmalloc (strlen (string) + 1),
-			  string) : NULL;
-}
-
-const char *
-base_name (const char *name)
-{
-  const char *base;
-
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
-  /* Skip over the disk name in MSDOS pathnames. */
-  if (isalpha ((unsigned char) name[0]) && name[1] == ':')
-    name += 2;
-#endif
-
-  for (base = name; *name; name++)
-    if (IS_DIR_SEPARATOR (*name))
-      base = name + 1;
-  return base;
-}
-
-int
-check_executable (const char *path)
-{
-  struct stat st;
-
-  lt_debugprintf (__FILE__, __LINE__, "(check_executable): %s\n",
-                  nonempty (path));
-  if ((!path) || (!*path))
-    return 0;
-
-  if ((stat (path, &st) >= 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];
-  int 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 = 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 (strcmp (str, pat) == 0)
-	*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
-    int 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)
-    {
-      int orig_value_len = strlen (orig_value);
-      int 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 #' */
-      int len = strlen (new_value);
-      while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
-        {
-          new_value[len-1] = '\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 -e 's/\([\\"]\)/\\\1/g' \
-	           -e 's/^/  fputs ("/' -e 's/$/\\n", f);/'
-
-            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 ()
-{
-    $opt_debug
-    case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in
-    *import*) : ;;
-    *) false ;;
-    esac
-}
-
-# func_mode_link arg...
-func_mode_link ()
-{
-    $opt_debug
-    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
-      # which 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 which 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=
-    non_pic_objects=
-    precious_files_regex=
-    prefer_static_libs=no
-    preload=no
-    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 "$build_libtool_libs" != yes && \
-	  func_fatal_configuration "can not build a shared library"
-	build_old_libs=no
-	break
-	;;
-      -all-static | -static | -static-libtool-libs)
-	case $arg in
-	-all-static)
-	  if test "$build_libtool_libs" = yes && 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)
-	  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_for_eval "$arg"
-      qarg=$func_quote_for_eval_unquoted_result
-      func_append libtool_args " $func_quote_for_eval_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)
-	  if test "$preload" = no; then
-	    # Add the symbol object into the linking commands.
-	    func_append compile_command " @SYMFILE@"
-	    func_append finalize_command " @SYMFILE@"
-	    preload=yes
-	  fi
-	  case $arg in
-	  *.la | *.lo) ;;  # We handle these cases below.
-	  force)
-	    if test "$dlself" = no; then
-	      dlself=needless
-	      export_dynamic=yes
-	    fi
-	    prev=
-	    continue
-	    ;;
-	  self)
-	    if test "$prev" = dlprefiles; then
-	      dlself=yes
-	    elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
-	      dlself=yes
-	    else
-	      dlself=needless
-	      export_dynamic=yes
-	    fi
-	    prev=
-	    continue
-	    ;;
-	  *)
-	    if test "$prev" = dlfiles; 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
-	  ;;
-	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 "$pic_object" = none &&
-		   test "$non_pic_object" = none; 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 "$pic_object" != none; then
-		  # Prepend the subdirectory the object is found in.
-		  pic_object="$xdir$pic_object"
-
-		  if test "$prev" = dlfiles; then
-		    if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; 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 "$prev" = dlprefiles; 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 "$non_pic_object" != none; 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 "$pic_object" = none ; 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
-	  ;;
-	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 "$prev" = rpath; 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
-	  ;;
-	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)
-	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$arg" = "X-export-symbols"; 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$arg" = "X-lc" || test "X$arg" = "X-lm"; 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$arg" = "X-lc" && continue
-	    ;;
-	  *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
-	    # Do not include libc due to us having libc/libc_r.
-	    test "X$arg" = "X-lc" && 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$arg" = "X-lc" && continue
-	    ;;
-	  *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
-	    # Compiler inserts libc in the correct place for threads to work
-	    test "X$arg" = "X-lc" && continue
-	    ;;
-	  esac
-	elif test "X$arg" = "X-lc_r"; then
-	 case $host in
-	 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
-	   # Do not include libc_r directly, use -pthread flag.
-	   continue
-	   ;;
-	 esac
-	fi
-	func_append deplibs " $arg"
-	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
-	;;
-
-      -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
-	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
-	;;
-
-      -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 | -static-libtool-libs)
-	# The effects of -static 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_for_eval "$flag"
-	  func_append arg " $func_quote_for_eval_result"
-	  func_append compiler_flags " $func_quote_for_eval_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_for_eval "$flag"
-	  func_append arg " $wl$func_quote_for_eval_result"
-	  func_append compiler_flags " $wl$func_quote_for_eval_result"
-	  func_append linker_flags " $func_quote_for_eval_result"
-	done
-	IFS="$save_ifs"
-	func_stripname ' ' '' "$arg"
-	arg=$func_stripname_result
-	;;
-
-      -Xcompiler)
-	prev=xcompiler
-	continue
-	;;
-
-      -Xlinker)
-	prev=xlinker
-	continue
-	;;
-
-      -XCClinker)
-	prev=xcclinker
-	continue
-	;;
-
-      # -msg_* for osf cc
-      -msg_*)
-	func_quote_for_eval "$arg"
-	arg="$func_quote_for_eval_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
-      # @file                GCC response files
-      # -tp=*                Portland pgcc target processor selection
-      # --sysroot=*          for sysroot support
-      # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
-      -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*|-flto*|-fwhopr*|-fuse-linker-plugin)
-        func_quote_for_eval "$arg"
-	arg="$func_quote_for_eval_result"
-        func_append compile_command " $arg"
-        func_append finalize_command " $arg"
-        func_append compiler_flags " $arg"
-        continue
-        ;;
-
-      # Some other compiler flag.
-      -* | +*)
-        func_quote_for_eval "$arg"
-	arg="$func_quote_for_eval_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 "$pic_object" = none &&
-	     test "$non_pic_object" = none; 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 "$pic_object" != none; then
-	    # Prepend the subdirectory the object is found in.
-	    pic_object="$xdir$pic_object"
-
-	    if test "$prev" = dlfiles; then
-	      if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; 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 "$prev" = dlprefiles; 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 "$non_pic_object" != none; 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 "$pic_object" = none ; 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 "$prev" = dlfiles; then
-	  # This library was specified with -dlopen.
-	  func_append dlfiles " $func_resolve_sysroot_result"
-	  prev=
-	elif test "$prev" = dlprefiles; 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_for_eval "$arg"
-	arg="$func_quote_for_eval_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 "$export_dynamic" = yes && 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\"
-
-    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 "$linkmode" = lib; 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=no
-	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 "$linkmode,$pass" = "lib,link"; 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 "$linkmode,$pass" = "lib,link" ||
-	 test "$linkmode,$pass" = "prog,scan"; then
-	libs="$deplibs"
-	deplibs=
-      fi
-      if test "$linkmode" = prog; then
-	case $pass in
-	dlopen) libs="$dlfiles" ;;
-	dlpreopen) libs="$dlprefiles" ;;
-	link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
-	esac
-      fi
-      if test "$linkmode,$pass" = "lib,dlpreopen"; 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 "$pass" = dlopen; then
-	# Collect dlpreopened libraries
-	save_deplibs="$deplibs"
-	deplibs=
-      fi
-
-      for deplib in $libs; do
-	lib=
-	found=no
-	case $deplib in
-	-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
-	  if test "$linkmode,$pass" = "prog,link"; then
-	    compile_deplibs="$deplib $compile_deplibs"
-	    finalize_deplibs="$deplib $finalize_deplibs"
-	  else
-	    func_append compiler_flags " $deplib"
-	    if test "$linkmode" = lib ; then
-		case "$new_inherited_linker_flags " in
-		    *" $deplib "*) ;;
-		    * ) func_append new_inherited_linker_flags " $deplib" ;;
-		esac
-	    fi
-	  fi
-	  continue
-	  ;;
-	-l*)
-	  if test "$linkmode" != lib && test "$linkmode" != prog; then
-	    func_warning "\`-l' is ignored for archives/objects"
-	    continue
-	  fi
-	  func_stripname '-l' '' "$deplib"
-	  name=$func_stripname_result
-	  if test "$linkmode" = lib; 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 "$search_ext" = ".la"; then
-		  found=yes
-		else
-		  found=no
-		fi
-		break 2
-	      fi
-	    done
-	  done
-	  if test "$found" != yes; then
-	    # deplib doesn't seem to be a libtool library
-	    if test "$linkmode,$pass" = "prog,link"; then
-	      compile_deplibs="$deplib $compile_deplibs"
-	      finalize_deplibs="$deplib $finalize_deplibs"
-	    else
-	      deplibs="$deplib $deplibs"
-	      test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
-	    fi
-	    continue
-	  else # 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 "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; 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=no
-		    func_dirname "$lib" "" "."
-		    ladir="$func_dirname_result"
-		    lib=$ladir/$old_library
-		    if test "$linkmode,$pass" = "prog,link"; then
-		      compile_deplibs="$deplib $compile_deplibs"
-		      finalize_deplibs="$deplib $finalize_deplibs"
-		    else
-		      deplibs="$deplib $deplibs"
-		      test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
-		    fi
-		    continue
-		  fi
-		fi
-		;;
-	      *) ;;
-	      esac
-	    fi
-	  fi
-	  ;; # -l
-	*.ltframework)
-	  if test "$linkmode,$pass" = "prog,link"; then
-	    compile_deplibs="$deplib $compile_deplibs"
-	    finalize_deplibs="$deplib $finalize_deplibs"
-	  else
-	    deplibs="$deplib $deplibs"
-	    if test "$linkmode" = lib ; 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 "$pass" = conv && 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 "$pass" = conv; then
-	      deplibs="$deplib $deplibs"
-	      continue
-	    fi
-	    if test "$pass" = scan; 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 "$pass" = link; 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 "$pass" = conv; 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=no
-	      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=yes
-		  fi
-		;;
-		pass_all)
-		  valid_a_lib=yes
-		;;
-	      esac
-	      if test "$valid_a_lib" != yes; then
-		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."
-	      else
-		echo
-		$ECHO "*** Warning: Linking the shared library $output against the"
-		$ECHO "*** static library $deplib is not portable!"
-		deplibs="$deplib $deplibs"
-	      fi
-	      ;;
-	    esac
-	    continue
-	    ;;
-	  prog)
-	    if test "$pass" != link; then
-	      deplibs="$deplib $deplibs"
-	    else
-	      compile_deplibs="$deplib $compile_deplibs"
-	      finalize_deplibs="$deplib $finalize_deplibs"
-	    fi
-	    continue
-	    ;;
-	  esac # linkmode
-	  ;; # *.$libext
-	*.lo | *.$objext)
-	  if test "$pass" = conv; then
-	    deplibs="$deplib $deplibs"
-	  elif test "$linkmode" = prog; then
-	    if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; 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=yes
-	  continue
-	  ;;
-	esac # case $deplib
-
-	if test "$found" = yes || test -f "$lib"; then :
-	else
-	  func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'"
-	fi
-
-	# 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 "$linkmode,$pass" = "lib,link" ||
-	   test "$linkmode,$pass" = "prog,scan" ||
-	   { test "$linkmode" != prog && test "$linkmode" != lib; }; then
-	  test -n "$dlopen" && func_append dlfiles " $dlopen"
-	  test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen"
-	fi
-
-	if test "$pass" = conv; 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 "$linkmode" != prog && test "$linkmode" != lib; 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 "$prefer_static_libs" = yes ||
-	     test "$prefer_static_libs,$installed" = "built,no"; }; 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 "$pass" = dlopen; then
-	  if test -z "$libdir"; then
-	    func_fatal_error "cannot -dlopen a convenience library: \`$lib'"
-	  fi
-	  if test -z "$dlname" ||
-	     test "$dlopen_support" != yes ||
-	     test "$build_libtool_libs" = no; 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 "X$installed" = Xyes; 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 "X$hardcode_automatic" = Xyes && 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 "$pass" = dlpreopen; then
-	  if test -z "$libdir" && test "$linkmode" = prog; 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 "$linkmode" = lib; then
-	    deplibs="$dir/$old_library $deplibs"
-	  elif test "$linkmode,$pass" = "prog,link"; 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 "$linkmode" = prog && test "$pass" != link; then
-	  func_append newlib_search_path " $ladir"
-	  deplibs="$lib $deplibs"
-
-	  linkalldeplibs=no
-	  if test "$link_all_deplibs" != no || test -z "$library_names" ||
-	     test "$build_libtool_libs" = no; then
-	    linkalldeplibs=yes
-	  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 test "$linkalldeplibs" = yes; 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 "$linkmode,$pass" = "prog,link"; then
-	  if test -n "$library_names" &&
-	     { { test "$prefer_static_libs" = no ||
-	         test "$prefer_static_libs,$installed" = "built,yes"; } ||
-	       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 test "$alldeplibs" = yes &&
-	     { test "$deplibs_check_method" = pass_all ||
-	       { test "$build_libtool_libs" = yes &&
-		 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 "$use_static_libs" = built && test "$installed" = yes; then
-	  use_static_libs=no
-	fi
-	if test -n "$library_names" &&
-	   { test "$use_static_libs" = no || test -z "$old_library"; }; then
-	  case $host in
-	  *cygwin* | *mingw* | *cegcc*)
-	      # No point in relinking DLLs because paths are not encoded
-	      func_append notinst_deplibs " $lib"
-	      need_relink=no
-	    ;;
-	  *)
-	    if test "$installed" = no; 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 "$shouldnotlink" = yes && test "$pass" = link; then
-	    echo
-	    if test "$linkmode" = prog; 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 "$linkmode" = lib &&
-	     test "$hardcode_into_libs" = yes; 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*)
-	        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 "$linkmode" = prog || test "$opt_mode" != relink; then
-	    add_shlibpath=
-	    add_dir=
-	    add=
-	    lib_linked=yes
-	    case $hardcode_action in
-	    immediate | unsupported)
-	      if test "$hardcode_direct" = no; 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 can not
-		    # 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 "$hardcode_minus_L" = no; then
-		case $host in
-		*-*-sunos*) add_shlibpath="$dir" ;;
-		esac
-		add_dir="-L$dir"
-		add="-l$name"
-	      elif test "$hardcode_shlibpath_var" = no; then
-		add_shlibpath="$dir"
-		add="-l$name"
-	      else
-		lib_linked=no
-	      fi
-	      ;;
-	    relink)
-	      if test "$hardcode_direct" = yes &&
-	         test "$hardcode_direct_absolute" = no; then
-		add="$dir/$linklib"
-	      elif test "$hardcode_minus_L" = yes; then
-		add_dir="-L$dir"
-		# 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 "$hardcode_shlibpath_var" = yes; then
-		add_shlibpath="$dir"
-		add="-l$name"
-	      else
-		lib_linked=no
-	      fi
-	      ;;
-	    *) lib_linked=no ;;
-	    esac
-
-	    if test "$lib_linked" != yes; 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 "$linkmode" = prog; 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 "$hardcode_direct" != yes &&
-		 test "$hardcode_minus_L" != yes &&
-		 test "$hardcode_shlibpath_var" = yes; then
-		case :$finalize_shlibpath: in
-		*":$libdir:"*) ;;
-		*) func_append finalize_shlibpath "$libdir:" ;;
-		esac
-	      fi
-	    fi
-	  fi
-
-	  if test "$linkmode" = prog || test "$opt_mode" = relink; then
-	    add_shlibpath=
-	    add_dir=
-	    add=
-	    # Finalize command for both is simple: just hardcode it.
-	    if test "$hardcode_direct" = yes &&
-	       test "$hardcode_direct_absolute" = no; then
-	      add="$libdir/$linklib"
-	    elif test "$hardcode_minus_L" = yes; then
-	      add_dir="-L$libdir"
-	      add="-l$name"
-	    elif test "$hardcode_shlibpath_var" = yes; then
-	      case :$finalize_shlibpath: in
-	      *":$libdir:"*) ;;
-	      *) func_append finalize_shlibpath "$libdir:" ;;
-	      esac
-	      add="-l$name"
-	    elif test "$hardcode_automatic" = yes; 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 "$linkmode" = prog; 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 "$linkmode" = prog; 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 "$hardcode_direct" != unsupported; 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 "$build_libtool_libs" = yes; then
-	  # Not a shared library
-	  if test "$deplibs_check_method" != pass_all; 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 can not 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 "$module" = yes; 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 "$build_old_libs" = no; 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 "$linkmode" = lib; then
-	  if test -n "$dependency_libs" &&
-	     { test "$hardcode_into_libs" != yes ||
-	       test "$build_old_libs" = yes ||
-	       test "$link_static" = yes; }; 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 "$link_static" = no && 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 "$link_all_deplibs" != no; 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 "$pass" = link; then
-	if test "$linkmode" = "prog"; 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 "$pass" = dlpreopen; then
-	# Link the dlpreopened libraries before other libraries
-	for deplib in $save_deplibs; do
-	  deplibs="$deplib $deplibs"
-	done
-      fi
-      if test "$pass" != dlopen; then
-	if test "$pass" != conv; then
-	  # 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=
-	fi
-
-	if test "$linkmode,$pass" != "prog,link"; then
-	  vars="deplibs"
-	else
-	  vars="compile_deplibs finalize_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
-      # 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 "$linkmode" = prog; then
-      dlfiles="$newdlfiles"
-    fi
-    if test "$linkmode" = prog || test "$linkmode" = lib; then
-      dlprefiles="$newdlprefiles"
-    fi
-
-    case $linkmode in
-    oldlib)
-      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; 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 "$module" = no && \
-	  func_fatal_help "libtool library \`$output' must begin with \`lib'"
-
-	if test "$need_lib_prefix" != no; 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 "$deplibs_check_method" != pass_all; 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 "$dlself" != no && \
-	func_warning "\`-dlopen self' is ignored for libtool libraries"
-
-      set dummy $rpath
-      shift
-      test "$#" -gt 1 && \
-	func_warning "ignoring multiple \`-rpath's for a libtool library"
-
-      install_libdir="$1"
-
-      oldlibs=
-      if test -z "$rpath"; then
-	if test "$build_libtool_libs" = yes; 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
-	  # which has an extra 1 added just for fun
-	  #
-	  case $version_type in
-	  darwin|linux|osf|windows|none)
-	    func_arith $number_major + $number_minor
-	    current=$func_arith_result
-	    age="$number_minor"
-	    revision="$number_revision"
-	    ;;
-	  freebsd-aout|freebsd-elf|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"
-	  ;;
-
-	freebsd-aout)
-	  major=".$current"
-	  versuffix=".$current.$revision";
-	  ;;
-
-	freebsd-elf)
-	  major=".$current"
-	  versuffix=".$current"
-	  ;;
-
-	irix | nonstopux)
-	  if test "X$lt_irix_increment" = "Xno"; 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 "$loop" -ne 0; 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)
-	  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 "$loop" -ne 0; 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"
-	  ;;
-
-	sunos)
-	  major=".$current"
-	  versuffix=".$current.$revision"
-	  ;;
-
-	windows)
-	  # Use '-' rather than '.', since we only want one
-	  # extension on DOS 8.3 filesystems.
-	  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 "$need_version" = no; then
-	    versuffix=
-	  else
-	    versuffix=".0.0"
-	  fi
-	fi
-
-	# Remove version info from name if versioning should be avoided
-	if test "$avoid_version" = yes && test "$need_version" = no; then
-	  major=
-	  versuffix=
-	  verstring=""
-	fi
-
-	# Check to see if the archive will have undefined symbols.
-	if test "$allow_undefined" = yes; then
-	  if test "$allow_undefined_flag" = unsupported; then
-	    func_warning "undefined symbols not allowed in $host shared libraries"
-	    build_libtool_libs=no
-	    build_old_libs=yes
-	  fi
-	else
-	  # Don't allow undefined symbols.
-	  allow_undefined_flag="$no_undefined_flag"
-	fi
-
-      fi
-
-      func_generate_dlsyms "$libname" "$libname" "yes"
-      func_append libobjs " $symfileobj"
-      test "X$libobjs" = "X " && libobjs=
-
-      if test "$opt_mode" != relink; 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 "X$precious_files_regex" != "X"; 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 "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; 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 "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; 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 "$build_libtool_libs" = yes; 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*)
-	    # 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 "$build_libtool_need_lc" = "yes"; 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 <<EOF
-	  int main() { return 0; }
-EOF
-	  $opt_dry_run || $RM conftest
-	  if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
-	    ldd_output=`ldd conftest`
-	    for i in $deplibs; do
-	      case $i in
-	      -l*)
-		func_stripname -l '' "$i"
-		name=$func_stripname_result
-		if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
-		  case " $predeps $postdeps " in
-		  *" $i "*)
-		    func_append newdeplibs " $i"
-		    i=""
-		    ;;
-		  esac
-		fi
-		if test -n "$i" ; then
-		  libname=`eval "\\$ECHO \"$libname_spec\""`
-		  deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
-		  set dummy $deplib_matches; shift
-		  deplib_match=$1
-		  if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
-		    func_append newdeplibs " $i"
-		  else
-		    droppeddeps=yes
-		    echo
-		    $ECHO "*** Warning: dynamic linker does not accept needed library $i."
-		    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 I believe you do not have"
-		    echo "*** because a test_compile did reveal that the linker did not use it for"
-		    echo "*** its dynamic dependency list that programs get resolved with at runtime."
-		  fi
-		fi
-		;;
-	      *)
-		func_append newdeplibs " $i"
-		;;
-	      esac
-	    done
-	  else
-	    # Error occurred in the first compile.  Let's try to salvage
-	    # the situation: Compile a separate program for each library.
-	    for i in $deplibs; do
-	      case $i in
-	      -l*)
-		func_stripname -l '' "$i"
-		name=$func_stripname_result
-		$opt_dry_run || $RM conftest
-		if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
-		  ldd_output=`ldd conftest`
-		  if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
-		    case " $predeps $postdeps " in
-		    *" $i "*)
-		      func_append newdeplibs " $i"
-		      i=""
-		      ;;
-		    esac
-		  fi
-		  if test -n "$i" ; then
-		    libname=`eval "\\$ECHO \"$libname_spec\""`
-		    deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
-		    set dummy $deplib_matches; shift
-		    deplib_match=$1
-		    if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
-		      func_append newdeplibs " $i"
-		    else
-		      droppeddeps=yes
-		      echo
-		      $ECHO "*** Warning: dynamic linker does not accept needed library $i."
-		      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 a test_compile did reveal that the linker did not use this one"
-		      echo "*** as a dynamic dependency that programs can get resolved with at runtime."
-		    fi
-		  fi
-		else
-		  droppeddeps=yes
-		  echo
-		  $ECHO "*** Warning!  Library $i is needed by this library but I was not able to"
-		  echo "*** make it link in!  You will probably need to install it or some"
-		  echo "*** library that it depends on before this library will be fully"
-		  echo "*** functional.  Installing it before continuing would be even better."
-		fi
-		;;
-	      *)
-		func_append newdeplibs " $i"
-		;;
-	      esac
-	    done
-	  fi
-	  ;;
-	file_magic*)
-	  set dummy $deplibs_check_method; shift
-	  file_magic_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 "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; 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\""`
-		if test -n "$file_magic_glob"; then
-		  libnameglob=`func_echo_all "$libname" | $SED -e $file_magic_glob`
-		else
-		  libnameglob=$libname
-		fi
-		test "$want_nocaseglob" = yes && nocaseglob=`shopt -p nocaseglob`
-		for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
-		  if test "$want_nocaseglob" = yes; then
-		    shopt -s nocaseglob
-		    potential_libs=`ls $i/$libnameglob[.-]* 2>/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 "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; 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 "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; 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 "X$deplibs_check_method" = "Xnone"; 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 "$droppeddeps" = yes; then
-	  if test "$module" = yes; 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 "$build_old_libs" = no; 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 "$allow_undefined" = no; 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 "$build_old_libs" = no; 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 "$build_libtool_libs" = yes; then
-	if test "$hardcode_into_libs" = yes; then
-	  # Hardcode the library paths
-	  hardcode_libdirs=
-	  dep_rpath=
-	  rpath="$finalize_rpath"
-	  test "$opt_mode" != relink && 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"
-	    if test -n "$hardcode_libdir_flag_spec_ld"; then
-	      eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\"
-	    else
-	      eval dep_rpath=\"$hardcode_libdir_flag_spec\"
-	    fi
-	  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 "$opt_mode" != relink && 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
-	    if test "x`$SED 1q $export_symbols`" != xEXPORTS; then
-	      # 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
-	  fi
-	  ;;
-	esac
-
-	# Prepare the list of exported symbols
-	if test -z "$export_symbols"; then
-	  if test "$always_export_symbols" = yes || 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 "$try_normal_branch" = yes \
-		 && { 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 "X$skipped_export" != "X:"; 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 "X$skipped_export" != "X:" && 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 "$compiler_needs_object" = yes &&
-	    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 "$thread_safe" = yes && 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 "$opt_mode" = relink; 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 "$module" = yes && 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 "X$skipped_export" != "X:" &&
-	   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 "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; 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 "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then
-	    output=${output_objdir}/${output_la}.lnk
-	    func_verbose "creating linker input file list: $output"
-	    : > $output
-	    set x $save_libobjs
-	    shift
-	    firstobj=
-	    if test "$compiler_needs_object" = yes; 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 "X$objlist" = X ||
-		   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 "$k" -eq 1 ; 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
-
-	    if ${skipped_export-false}; then
-	      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
-	    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_silent || {
-		  func_quote_for_expand "$cmd"
-		  eval "func_echo $func_quote_for_expand_result"
-	      }
-	      $opt_dry_run || eval "$cmd" || {
-		lt_exit=$?
-
-		# Restore the uninstalled library and exit
-		if test "$opt_mode" = relink; 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
-
-          if ${skipped_export-false}; then
-	    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
-	  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 "$module" = yes && 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="$save_ifs"
-	  eval cmd=\"$cmd\"
-	  $opt_silent || {
-	    func_quote_for_expand "$cmd"
-	    eval "func_echo $func_quote_for_expand_result"
-	  }
-	  $opt_dry_run || eval "$cmd" || {
-	    lt_exit=$?
-
-	    # Restore the uninstalled library and exit
-	    if test "$opt_mode" = relink; 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 "$opt_mode" = relink; 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 "$module" = yes || test "$export_dynamic" = yes; then
-	  # On all known operating systems, these are identical.
-	  dlname="$soname"
-	fi
-      fi
-      ;;
-
-    obj)
-      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; 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=
-      # reload_cmds runs $LD directly, so let us get rid of
-      # -Wl from whole_archive_flag_spec and hope we can get by with
-      # turning comma into space..
-      wl=
-
-      if test -n "$convenience"; then
-	if test -n "$whole_archive_flag_spec"; then
-	  eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
-	  reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'`
-	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 "$build_libtool_libs" != yes && 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" ### testsuite: skip nested quoting test
-
-      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
-
-      if test "$build_libtool_libs" != yes; then
-	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
-      fi
-
-      if test -n "$pic_flag" || test "$pic_mode" != default; 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"
-
-      test "$preload" = yes \
-        && test "$dlopen_support" = unknown \
-	&& test "$dlopen_self" = unknown \
-	&& test "$dlopen_self_static" = unknown && \
-	  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 "$tagname" = CXX ; 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 "$build_old_libs" = yes; 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@" "no"
-
-      # template prelinking step
-      if test -n "$prelink_cmds"; then
-	func_execute_cmds "$prelink_cmds" 'exit $?'
-      fi
-
-      wrappers_required=yes
-      case $host in
-      *cegcc* | *mingw32ce*)
-        # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway.
-        wrappers_required=no
-        ;;
-      *cygwin* | *mingw* )
-        if test "$build_libtool_libs" != yes; then
-          wrappers_required=no
-        fi
-        ;;
-      *)
-        if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
-          wrappers_required=no
-        fi
-        ;;
-      esac
-      if test "$wrappers_required" = no; then
-	# 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
-      fi
-
-      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 "$no_install" = yes; 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
-
-      if test "$hardcode_action" = relink; then
-	# 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"
-      else
-	if test "$fast_install" != no; then
-	  link_command="$finalize_var$compile_command$finalize_rpath"
-	  if test "$fast_install" = yes; then
-	    relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'`
-	  else
-	    # fast_install is set to needless
-	    relink_command=
-	  fi
-	else
-	  link_command="$compile_var$compile_command$compile_rpath"
-	  relink_command="$finalize_var$finalize_command$finalize_rpath"
-	fi
-      fi
-
-      # 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_for_eval "$var_value"
-	    relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
-	  fi
-	done
-	relink_command="(cd `pwd`; $relink_command)"
-	relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
-      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
-
-      if test "$build_libtool_libs" = convenience; then
-	oldobjs="$libobjs_save $symfileobj"
-	addlibs="$convenience"
-	build_libtool_libs=no
-      else
-	if test "$build_libtool_libs" = module; then
-	  oldobjs="$libobjs_save"
-	  build_libtool_libs=no
-	else
-	  oldobjs="$old_deplibs $non_pic_objects"
-	  if test "$preload" = yes && test -f "$symfileobj"; then
-	    func_append oldobjs " $symfileobj"
-	  fi
-	fi
-	addlibs="$old_convenience"
-      fi
-
-      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 "$build_libtool_libs" = yes; 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
-	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 "X$oldobjs" = "X" ; 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 "$build_old_libs" = yes && 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_for_eval "$var_value"
-	  relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
-	fi
-      done
-      # Quote the link command for shipping.
-      relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
-      relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
-      if test "$hardcode_automatic" = yes ; then
-	relink_command=
-      fi
-
-      # Only create the output if not a dry run.
-      $opt_dry_run || {
-	for installed in no yes; do
-	  if test "$installed" = yes; 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"
-		eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
-		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 "x$bindir" != x ;
-	      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$TIMESTAMP) $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 can not 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 "$installed" = no && test "$need_relink" = yes; 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
-}
-
-{ test "$opt_mode" = link || test "$opt_mode" = relink; } &&
-    func_mode_link ${1+"$@"}
-
-
-# func_mode_uninstall arg...
-func_mode_uninstall ()
-{
-    $opt_debug
-    RM="$nonopt"
-    files=
-    rmforce=
-    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=yes ;;
-      -*) 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 "X$dir" = X.; then
-	odir="$objdir"
-      else
-	odir="$dir/$objdir"
-      fi
-      func_basename "$file"
-      name="$func_basename_result"
-      test "$opt_mode" = uninstall && odir="$dir"
-
-      # Remember odir for removal later, being careful to avoid duplicates
-      if test "$opt_mode" = clean; 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 test "$rmforce" = yes; 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" 'test "$rmforce" = yes || exit_status=1'
-	    fi
-
-	    if test -n "$old_library"; then
-	      # Do each command in the old_postuninstall commands.
-	      func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || 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 "$pic_object" != none; 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 "$non_pic_object" != none; then
-	    func_append rmfiles " $dir/$non_pic_object"
-	  fi
-	fi
-	;;
-
-      *)
-	if test "$opt_mode" = clean ; 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 "$fast_install" = yes && 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
-}
-
-{ test "$opt_mode" = uninstall || test "$opt_mode" = clean; } &&
-    func_mode_uninstall ${1+"$@"}
-
-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
-# in which 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:
-# vi:sw=2
-
diff --git a/src/other/curl/m4/curl-compilers.m4 b/src/other/curl/m4/curl-compilers.m4
deleted file mode 100644
index 1ea4d17..0000000
--- a/src/other/curl/m4/curl-compilers.m4
+++ /dev/null
@@ -1,1421 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-#***************************************************************************
-
-# File version for 'aclocal' use. Keep it a single number.
-# serial 55
-
-
-dnl CURL_CHECK_COMPILER
-dnl -------------------------------------------------
-dnl Verify if the C compiler being used is known.
-
-AC_DEFUN([CURL_CHECK_COMPILER], [
-  #
-  compiler_id="unknown"
-  compiler_num="0"
-  #
-  flags_dbg_all="unknown"
-  flags_dbg_yes="unknown"
-  flags_dbg_off="unknown"
-  flags_opt_all="unknown"
-  flags_opt_yes="unknown"
-  flags_opt_off="unknown"
-  #
-  CURL_CHECK_COMPILER_DEC_C
-  CURL_CHECK_COMPILER_HPUX_C
-  CURL_CHECK_COMPILER_IBM_C
-  CURL_CHECK_COMPILER_INTEL_C
-  CURL_CHECK_COMPILER_CLANG
-  CURL_CHECK_COMPILER_GNU_C
-  CURL_CHECK_COMPILER_LCC
-  CURL_CHECK_COMPILER_SGI_MIPSPRO_C
-  CURL_CHECK_COMPILER_SGI_MIPS_C
-  CURL_CHECK_COMPILER_SUNPRO_C
-  CURL_CHECK_COMPILER_TINY_C
-  CURL_CHECK_COMPILER_WATCOM_C
-  #
-  if test "$compiler_id" = "unknown"; then
-  cat <<_EOF 1>&2
-***
-*** Warning: This configure script does not have information about the
-*** compiler you are using, relative to the flags required to enable or
-*** disable generation of debug info, optimization options or warnings.
-***
-*** Whatever settings are present in CFLAGS will be used for this run.
-***
-*** If you wish to help the cURL project to better support your compiler
-*** you can report this and the required info on the libcurl development
-*** mailing list: http://cool.haxx.se/mailman/listinfo/curl-library/
-***
-_EOF
-  fi
-])
-
-
-dnl CURL_CHECK_COMPILER_CLANG
-dnl -------------------------------------------------
-dnl Verify if compiler being used is clang.
-
-AC_DEFUN([CURL_CHECK_COMPILER_CLANG], [
-  AC_BEFORE([$0],[CURL_CHECK_COMPILER_GNU_C])dnl
-  AC_MSG_CHECKING([if compiler is clang])
-  CURL_CHECK_DEF([__clang__], [], [silent])
-  if test "$curl_cv_have_def___clang__" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="CLANG"
-    clangver=`$CC -dumpversion`
-    clangvhi=`echo $clangver | cut -d . -f1`
-    clangvlo=`echo $clangver | cut -d . -f2`
-    compiler_num=`(expr $clangvhi "*" 100 + $clangvlo) 2>/dev/null`
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_all="$flags_dbg_all -ggdb"
-    flags_dbg_all="$flags_dbg_all -gstabs"
-    flags_dbg_all="$flags_dbg_all -gstabs+"
-    flags_dbg_all="$flags_dbg_all -gcoff"
-    flags_dbg_all="$flags_dbg_all -gxcoff"
-    flags_dbg_all="$flags_dbg_all -gdwarf-2"
-    flags_dbg_all="$flags_dbg_all -gvms"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -Os -O3 -O4"
-    flags_opt_yes="-Os"
-    flags_opt_off="-O0"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CURL_CHECK_COMPILER_DEC_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is DEC C.
-
-AC_DEFUN([CURL_CHECK_COMPILER_DEC_C], [
-  AC_MSG_CHECKING([if compiler is DEC/Compaq/HP C])
-  CURL_CHECK_DEF([__DECC], [], [silent])
-  CURL_CHECK_DEF([__DECC_VER], [], [silent])
-  if test "$curl_cv_have_def___DECC" = "yes" &&
-    test "$curl_cv_have_def___DECC_VER" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="DEC_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g2"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -O4"
-    flags_opt_yes="-O1"
-    flags_opt_off="-O0"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CURL_CHECK_COMPILER_GNU_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is GNU C.
-
-AC_DEFUN([CURL_CHECK_COMPILER_GNU_C], [
-  AC_REQUIRE([CURL_CHECK_COMPILER_INTEL_C])dnl
-  AC_REQUIRE([CURL_CHECK_COMPILER_CLANG])dnl
-  AC_MSG_CHECKING([if compiler is GNU C])
-  CURL_CHECK_DEF([__GNUC__], [], [silent])
-  if test "$curl_cv_have_def___GNUC__" = "yes" &&
-    test "$compiler_id" = "unknown"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="GNU_C"
-    gccver=`$CC -dumpversion`
-    gccvhi=`echo $gccver | cut -d . -f1`
-    gccvlo=`echo $gccver | cut -d . -f2`
-    compiler_num=`(expr $gccvhi "*" 100 + $gccvlo) 2>/dev/null`
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_all="$flags_dbg_all -ggdb"
-    flags_dbg_all="$flags_dbg_all -gstabs"
-    flags_dbg_all="$flags_dbg_all -gstabs+"
-    flags_dbg_all="$flags_dbg_all -gcoff"
-    flags_dbg_all="$flags_dbg_all -gxcoff"
-    flags_dbg_all="$flags_dbg_all -gdwarf-2"
-    flags_dbg_all="$flags_dbg_all -gvms"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -Os"
-    flags_opt_yes="-O2"
-    flags_opt_off="-O0"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CURL_CHECK_COMPILER_HPUX_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is HP-UX C.
-
-AC_DEFUN([CURL_CHECK_COMPILER_HPUX_C], [
-  AC_MSG_CHECKING([if compiler is HP-UX C])
-  CURL_CHECK_DEF([__HP_cc], [], [silent])
-  if test "$curl_cv_have_def___HP_cc" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="HP_UX_C"
-    flags_dbg_all="-g -s"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-s"
-    flags_opt_all="-O +O0 +O1 +O2 +O3 +O4"
-    flags_opt_yes="+O2"
-    flags_opt_off="+O0"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CURL_CHECK_COMPILER_IBM_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is IBM C.
-
-AC_DEFUN([CURL_CHECK_COMPILER_IBM_C], [
-  AC_MSG_CHECKING([if compiler is IBM C])
-  CURL_CHECK_DEF([__IBMC__], [], [silent])
-  if test "$curl_cv_have_def___IBMC__" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="IBM_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g"
-    flags_dbg_off=""
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -O4 -O5"
-    flags_opt_all="$flags_opt_all -qnooptimize"
-    flags_opt_all="$flags_opt_all -qoptimize=0"
-    flags_opt_all="$flags_opt_all -qoptimize=1"
-    flags_opt_all="$flags_opt_all -qoptimize=2"
-    flags_opt_all="$flags_opt_all -qoptimize=3"
-    flags_opt_all="$flags_opt_all -qoptimize=4"
-    flags_opt_all="$flags_opt_all -qoptimize=5"
-    flags_opt_yes="-O2"
-    flags_opt_off="-qnooptimize"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CURL_CHECK_COMPILER_INTEL_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is Intel C.
-
-AC_DEFUN([CURL_CHECK_COMPILER_INTEL_C], [
-  AC_BEFORE([$0],[CURL_CHECK_COMPILER_GNU_C])dnl
-  AC_MSG_CHECKING([if compiler is Intel C])
-  CURL_CHECK_DEF([__INTEL_COMPILER], [], [silent])
-  if test "$curl_cv_have_def___INTEL_COMPILER" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_num="$curl_cv_def___INTEL_COMPILER"
-    CURL_CHECK_DEF([__unix__], [], [silent])
-    if test "$curl_cv_have_def___unix__" = "yes"; then
-      compiler_id="INTEL_UNIX_C"
-      flags_dbg_all="-g -g0"
-      flags_dbg_yes="-g"
-      flags_dbg_off="-g0"
-      flags_opt_all="-O -O0 -O1 -O2 -O3 -Os"
-      flags_opt_yes="-O2"
-      flags_opt_off="-O0"
-    else
-      compiler_id="INTEL_WINDOWS_C"
-      flags_dbg_all="/ZI /Zi /zI /zi /ZD /Zd /zD /zd /Z7 /z7 /Oy /Oy-"
-      flags_dbg_all="$flags_dbg_all /debug"
-      flags_dbg_all="$flags_dbg_all /debug:none"
-      flags_dbg_all="$flags_dbg_all /debug:minimal"
-      flags_dbg_all="$flags_dbg_all /debug:partial"
-      flags_dbg_all="$flags_dbg_all /debug:full"
-      flags_dbg_all="$flags_dbg_all /debug:semantic_stepping"
-      flags_dbg_all="$flags_dbg_all /debug:extended"
-      flags_dbg_yes="/Zi /Oy-"
-      flags_dbg_off="/debug:none /Oy-"
-      flags_opt_all="/O /O0 /O1 /O2 /O3 /Od /Og /Og- /Oi /Oi-"
-      flags_opt_yes="/O2"
-      flags_opt_off="/Od"
-    fi
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CURL_CHECK_COMPILER_LCC
-dnl -------------------------------------------------
-dnl Verify if compiler being used is LCC.
-
-AC_DEFUN([CURL_CHECK_COMPILER_LCC], [
-  AC_MSG_CHECKING([if compiler is LCC])
-  CURL_CHECK_DEF([__LCC__], [], [silent])
-  if test "$curl_cv_have_def___LCC__" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="LCC"
-    flags_dbg_all="-g"
-    flags_dbg_yes="-g"
-    flags_dbg_off=""
-    flags_opt_all=""
-    flags_opt_yes=""
-    flags_opt_off=""
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CURL_CHECK_COMPILER_SGI_MIPS_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is SGI MIPS C.
-
-AC_DEFUN([CURL_CHECK_COMPILER_SGI_MIPS_C], [
-  AC_REQUIRE([CURL_CHECK_COMPILER_SGI_MIPSPRO_C])dnl
-  AC_MSG_CHECKING([if compiler is SGI MIPS C])
-  CURL_CHECK_DEF([__GNUC__], [], [silent])
-  CURL_CHECK_DEF([__sgi], [], [silent])
-  if test "$curl_cv_have_def___GNUC__" = "no" &&
-    test "$curl_cv_have_def___sgi" = "yes" &&
-    test "$compiler_id" = "unknown"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="SGI_MIPS_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -Ofast"
-    flags_opt_yes="-O2"
-    flags_opt_off="-O0"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CURL_CHECK_COMPILER_SGI_MIPSPRO_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is SGI MIPSpro C.
-
-AC_DEFUN([CURL_CHECK_COMPILER_SGI_MIPSPRO_C], [
-  AC_BEFORE([$0],[CURL_CHECK_COMPILER_SGI_MIPS_C])dnl
-  AC_MSG_CHECKING([if compiler is SGI MIPSpro C])
-  CURL_CHECK_DEF([__GNUC__], [], [silent])
-  CURL_CHECK_DEF([_COMPILER_VERSION], [], [silent])
-  CURL_CHECK_DEF([_SGI_COMPILER_VERSION], [], [silent])
-  if test "$curl_cv_have_def___GNUC__" = "no" &&
-    (test "$curl_cv_have_def__SGI_COMPILER_VERSION" = "yes" ||
-     test "$curl_cv_have_def__COMPILER_VERSION" = "yes"); then
-    AC_MSG_RESULT([yes])
-    compiler_id="SGI_MIPSPRO_C"
-    flags_dbg_all="-g -g0 -g1 -g2 -g3"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-g0"
-    flags_opt_all="-O -O0 -O1 -O2 -O3 -Ofast"
-    flags_opt_yes="-O2"
-    flags_opt_off="-O0"
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CURL_CHECK_COMPILER_SUNPRO_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is SunPro C.
-
-AC_DEFUN([CURL_CHECK_COMPILER_SUNPRO_C], [
-  AC_MSG_CHECKING([if compiler is SunPro C])
-  CURL_CHECK_DEF([__SUNPRO_C], [], [silent])
-  if test "$curl_cv_have_def___SUNPRO_C" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="SUNPRO_C"
-    flags_dbg_all="-g -s"
-    flags_dbg_yes="-g"
-    flags_dbg_off="-s"
-    flags_opt_all="-O -xO -xO1 -xO2 -xO3 -xO4 -xO5"
-    flags_opt_yes="-xO2"
-    flags_opt_off=""
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CURL_CHECK_COMPILER_TINY_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is Tiny C.
-
-AC_DEFUN([CURL_CHECK_COMPILER_TINY_C], [
-  AC_MSG_CHECKING([if compiler is Tiny C])
-  CURL_CHECK_DEF([__TINYC__], [], [silent])
-  if test "$curl_cv_have_def___TINYC__" = "yes"; then
-    AC_MSG_RESULT([yes])
-    compiler_id="TINY_C"
-    flags_dbg_all="-g -b"
-    flags_dbg_yes="-g"
-    flags_dbg_off=""
-    flags_opt_all=""
-    flags_opt_yes=""
-    flags_opt_off=""
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CURL_CHECK_COMPILER_WATCOM_C
-dnl -------------------------------------------------
-dnl Verify if compiler being used is Watcom C.
-
-AC_DEFUN([CURL_CHECK_COMPILER_WATCOM_C], [
-  AC_MSG_CHECKING([if compiler is Watcom C])
-  CURL_CHECK_DEF([__WATCOMC__], [], [silent])
-  if test "$curl_cv_have_def___WATCOMC__" = "yes"; then
-    AC_MSG_RESULT([yes])
-    CURL_CHECK_DEF([__UNIX__], [], [silent])
-    if test "$curl_cv_have_def___UNIX__" = "yes"; then
-      compiler_id="WATCOM_UNIX_C"
-      flags_dbg_all="-g1 -g1+ -g2 -g3"
-      flags_dbg_yes="-g2"
-      flags_dbg_off=""
-      flags_opt_all="-O0 -O1 -O2 -O3"
-      flags_opt_yes="-O2"
-      flags_opt_off="-O0"
-    else
-      compiler_id="WATCOM_WINDOWS_C"
-      flags_dbg_all=""
-      flags_dbg_yes=""
-      flags_dbg_off=""
-      flags_opt_all=""
-      flags_opt_yes=""
-      flags_opt_off=""
-    fi
-  else
-    AC_MSG_RESULT([no])
-  fi
-])
-
-
-dnl CURL_CONVERT_INCLUDE_TO_ISYSTEM
-dnl -------------------------------------------------
-dnl Changes standard include paths present in CFLAGS
-dnl and CPPFLAGS into isystem include paths. This is
-dnl done to prevent GNUC from generating warnings on
-dnl headers from these locations, although on ancient
-dnl GNUC versions these warnings are not silenced.
-
-AC_DEFUN([CURL_CONVERT_INCLUDE_TO_ISYSTEM], [
-  AC_REQUIRE([CURL_SHFUNC_SQUEEZE])dnl
-  tmp_has_include="no"
-  tmp_chg_FLAGS="$CFLAGS"
-  for word1 in $tmp_chg_FLAGS; do
-    case "$word1" in
-      -I*)
-        tmp_has_include="yes"
-        ;;
-    esac
-  done
-  if test "$tmp_has_include" = "yes"; then
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/^-I/ -isystem /g'`
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/ -I/ -isystem /g'`
-    CFLAGS="$tmp_chg_FLAGS"
-    squeeze CFLAGS
-  fi
-  tmp_has_include="no"
-  tmp_chg_FLAGS="$CPPFLAGS"
-  for word1 in $tmp_chg_FLAGS; do
-    case "$word1" in
-      -I*)
-        tmp_has_include="yes"
-        ;;
-    esac
-  done
-  if test "$tmp_has_include" = "yes"; then
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/^-I/ -isystem /g'`
-    tmp_chg_FLAGS=`echo "$tmp_chg_FLAGS" | "$SED" 's/ -I/ -isystem /g'`
-    CPPFLAGS="$tmp_chg_FLAGS"
-    squeeze CPPFLAGS
-  fi
-])
-
-
-dnl CURL_COMPILER_WORKS_IFELSE ([ACTION-IF-WORKS], [ACTION-IF-NOT-WORKS])
-dnl -------------------------------------------------
-dnl Verify if the C compiler seems to work with the
-dnl settings that are 'active' at the time the test
-dnl is performed.
-
-AC_DEFUN([CURL_COMPILER_WORKS_IFELSE], [
-  dnl compilation capability verification
-  tmp_compiler_works="unknown"
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-      int i = 1;
-      return i;
-    ]])
-  ],[
-    tmp_compiler_works="yes"
-  ],[
-    tmp_compiler_works="no"
-    echo " " >&6
-    sed 's/^/cc-fail: /' conftest.err >&6
-    echo " " >&6
-  ])
-  dnl linking capability verification
-  if test "$tmp_compiler_works" = "yes"; then
-    AC_LINK_IFELSE([
-      AC_LANG_PROGRAM([[
-      ]],[[
-        int i = 1;
-        return i;
-      ]])
-    ],[
-      tmp_compiler_works="yes"
-    ],[
-      tmp_compiler_works="no"
-      echo " " >&6
-      sed 's/^/link-fail: /' conftest.err >&6
-      echo " " >&6
-    ])
-  fi
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tmp_compiler_works" = "yes"; then
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-#       ifdef __STDC__
-#         include <stdlib.h>
-#       endif
-      ]],[[
-        int i = 0;
-        exit(i);
-      ]])
-    ],[
-      tmp_compiler_works="yes"
-    ],[
-      tmp_compiler_works="no"
-      echo " " >&6
-      echo "run-fail: test program exited with status $ac_status" >&6
-      echo " " >&6
-    ])
-  fi
-  dnl branch upon test result
-  if test "$tmp_compiler_works" = "yes"; then
-  ifelse($1,,:,[$1])
-  ifelse($2,,,[else
-    $2])
-  fi
-])
-
-
-dnl CURL_SET_COMPILER_BASIC_OPTS
-dnl -------------------------------------------------
-dnl Sets compiler specific options/flags which do not
-dnl depend on configure's debug, optimize or warnings
-dnl options.
-
-AC_DEFUN([CURL_SET_COMPILER_BASIC_OPTS], [
-  AC_REQUIRE([CURL_CHECK_COMPILER])dnl
-  AC_REQUIRE([CURL_SHFUNC_SQUEEZE])dnl
-  #
-  if test "$compiler_id" != "unknown"; then
-    #
-    if test "$compiler_id" = "GNU_C" ||
-      test "$compiler_id" = "CLANG"; then
-      CURL_CONVERT_INCLUDE_TO_ISYSTEM
-    fi
-    #
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS=""
-    tmp_CFLAGS=""
-    #
-    case "$compiler_id" in
-        #
-      CLANG)
-        #
-        dnl Disable warnings for unused arguments, otherwise clang will
-        dnl warn about compile-time arguments used during link-time, like
-        dnl -O and -g and -pedantic.
-        tmp_CFLAGS="$tmp_CFLAGS -Qunused-arguments"
-        ;;
-        #
-      DEC_C)
-        #
-        dnl Select strict ANSI C compiler mode
-        tmp_CFLAGS="$tmp_CFLAGS -std1"
-        dnl Turn off optimizer ANSI C aliasing rules
-        tmp_CFLAGS="$tmp_CFLAGS -noansi_alias"
-        dnl Generate warnings for missing function prototypes
-        tmp_CFLAGS="$tmp_CFLAGS -warnprotos"
-        dnl Change some warnings into fatal errors
-        tmp_CFLAGS="$tmp_CFLAGS -msg_fatal toofewargs,toomanyargs"
-        ;;
-        #
-      GNU_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      HP_UX_C)
-        #
-        dnl Disallow run-time dereferencing of null pointers
-        tmp_CFLAGS="$tmp_CFLAGS -z"
-        dnl Disable some remarks
-        dnl #4227: padding struct with n bytes to align member
-        dnl #4255: padding size of struct with n bytes to alignment boundary
-        tmp_CFLAGS="$tmp_CFLAGS +W 4227,4255"
-        ;;
-        #
-      IBM_C)
-        #
-        dnl Ensure that compiler optimizations are always thread-safe.
-        tmp_CFLAGS="$tmp_CFLAGS -qthreaded"
-        dnl Disable type based strict aliasing optimizations, using worst
-        dnl case aliasing assumptions when compiling. Type based aliasing
-        dnl would restrict the lvalues that could be safely used to access
-        dnl a data object.
-        tmp_CFLAGS="$tmp_CFLAGS -qnoansialias"
-        dnl Force compiler to stop after the compilation phase, without
-        dnl generating an object code file when compilation has errors.
-        tmp_CFLAGS="$tmp_CFLAGS -qhalt=e"
-        ;;
-        #
-      INTEL_UNIX_C)
-        #
-        dnl On unix this compiler uses gcc's header files, so
-        dnl we select ANSI C89 dialect plus GNU extensions.
-        tmp_CFLAGS="$tmp_CFLAGS -std=gnu89"
-        dnl Change some warnings into errors
-        dnl #140: too many arguments in function call
-        dnl #147: declaration is incompatible with 'previous one'
-        dnl #165: too few arguments in function call
-        dnl #266: function declared implicitly
-        tmp_CPPFLAGS="$tmp_CPPFLAGS -we 140,147,165,266"
-        dnl Disable some remarks
-        dnl #279: controlling expression is constant
-        dnl #981: operands are evaluated in unspecified order
-        dnl #1469: "cc" clobber ignored
-        tmp_CPPFLAGS="$tmp_CPPFLAGS -wd 279,981,1469"
-        ;;
-        #
-      INTEL_WINDOWS_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      LCC)
-        #
-        dnl Disallow run-time dereferencing of null pointers
-        tmp_CFLAGS="$tmp_CFLAGS -n"
-        ;;
-        #
-      SGI_MIPS_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      SGI_MIPSPRO_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      SUNPRO_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      TINY_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      WATCOM_UNIX_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      WATCOM_WINDOWS_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-    esac
-    #
-    squeeze tmp_CPPFLAGS
-    squeeze tmp_CFLAGS
-    #
-    if test ! -z "$tmp_CFLAGS" || test ! -z "$tmp_CPPFLAGS"; then
-      AC_MSG_CHECKING([if compiler accepts some basic options])
-      CPPFLAGS="$tmp_save_CPPFLAGS $tmp_CPPFLAGS"
-      CFLAGS="$tmp_save_CFLAGS $tmp_CFLAGS"
-      squeeze CPPFLAGS
-      squeeze CFLAGS
-      CURL_COMPILER_WORKS_IFELSE([
-        AC_MSG_RESULT([yes])
-        AC_MSG_NOTICE([compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS])
-      ],[
-        AC_MSG_RESULT([no])
-        AC_MSG_WARN([compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS])
-        dnl restore initial settings
-        CPPFLAGS="$tmp_save_CPPFLAGS"
-        CFLAGS="$tmp_save_CFLAGS"
-      ])
-    fi
-    #
-  fi
-])
-
-
-dnl CURL_SET_COMPILER_DEBUG_OPTS
-dnl -------------------------------------------------
-dnl Sets compiler specific options/flags which depend
-dnl on configure's debug option.
-
-AC_DEFUN([CURL_SET_COMPILER_DEBUG_OPTS], [
-  AC_REQUIRE([CURL_CHECK_OPTION_DEBUG])dnl
-  AC_REQUIRE([CURL_CHECK_COMPILER])dnl
-  AC_REQUIRE([CURL_SHFUNC_SQUEEZE])dnl
-  #
-  if test "$compiler_id" != "unknown"; then
-    #
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    #
-    tmp_options=""
-    tmp_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS="$CPPFLAGS"
-    CURL_VAR_STRIP([tmp_CFLAGS],[$flags_dbg_all])
-    CURL_VAR_STRIP([tmp_CPPFLAGS],[$flags_dbg_all])
-    #
-    if test "$want_debug" = "yes"; then
-      AC_MSG_CHECKING([if compiler accepts debug enabling options])
-      tmp_options="$flags_dbg_yes"
-    fi
-    if test "$want_debug" = "no"; then
-      AC_MSG_CHECKING([if compiler accepts debug disabling options])
-      tmp_options="$flags_dbg_off"
-    fi
-    #
-    CPPFLAGS="$tmp_CPPFLAGS"
-    CFLAGS="$tmp_CFLAGS $tmp_options"
-    squeeze CPPFLAGS
-    squeeze CFLAGS
-    CURL_COMPILER_WORKS_IFELSE([
-      AC_MSG_RESULT([yes])
-      AC_MSG_NOTICE([compiler options added: $tmp_options])
-    ],[
-      AC_MSG_RESULT([no])
-      AC_MSG_WARN([compiler options rejected: $tmp_options])
-      dnl restore initial settings
-      CPPFLAGS="$tmp_save_CPPFLAGS"
-      CFLAGS="$tmp_save_CFLAGS"
-    ])
-    #
-  fi
-])
-
-
-dnl CURL_SET_COMPILER_OPTIMIZE_OPTS
-dnl -------------------------------------------------
-dnl Sets compiler specific options/flags which depend
-dnl on configure's optimize option.
-
-AC_DEFUN([CURL_SET_COMPILER_OPTIMIZE_OPTS], [
-  AC_REQUIRE([CURL_CHECK_OPTION_OPTIMIZE])dnl
-  AC_REQUIRE([CURL_CHECK_COMPILER])dnl
-  AC_REQUIRE([CURL_SHFUNC_SQUEEZE])dnl
-  #
-  if test "$compiler_id" != "unknown"; then
-    #
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    #
-    tmp_options=""
-    tmp_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS="$CPPFLAGS"
-    honor_optimize_option="yes"
-    #
-    dnl If optimization request setting has not been explicitly specified,
-    dnl it has been derived from the debug setting and initially assumed.
-    dnl This initially assumed optimizer setting will finally be ignored
-    dnl if CFLAGS or CPPFLAGS already hold optimizer flags. This implies
-    dnl that an initially assumed optimizer setting might not be honored.
-    #
-    if test "$want_optimize" = "assume_no" ||
-       test "$want_optimize" = "assume_yes"; then
-      AC_MSG_CHECKING([if compiler optimizer assumed setting might be used])
-      CURL_VAR_MATCH_IFELSE([tmp_CFLAGS],[$flags_opt_all],[
-        honor_optimize_option="no"
-      ])
-      CURL_VAR_MATCH_IFELSE([tmp_CPPFLAGS],[$flags_opt_all],[
-        honor_optimize_option="no"
-      ])
-      AC_MSG_RESULT([$honor_optimize_option])
-      if test "$honor_optimize_option" = "yes"; then
-        if test "$want_optimize" = "assume_yes"; then
-          want_optimize="yes"
-        fi
-        if test "$want_optimize" = "assume_no"; then
-          want_optimize="no"
-        fi
-      fi
-    fi
-    #
-    if test "$honor_optimize_option" = "yes"; then
-      CURL_VAR_STRIP([tmp_CFLAGS],[$flags_opt_all])
-      CURL_VAR_STRIP([tmp_CPPFLAGS],[$flags_opt_all])
-      if test "$want_optimize" = "yes"; then
-        AC_MSG_CHECKING([if compiler accepts optimizer enabling options])
-        tmp_options="$flags_opt_yes"
-      fi
-      if test "$want_optimize" = "no"; then
-        AC_MSG_CHECKING([if compiler accepts optimizer disabling options])
-        tmp_options="$flags_opt_off"
-      fi
-      CPPFLAGS="$tmp_CPPFLAGS"
-      CFLAGS="$tmp_CFLAGS $tmp_options"
-      squeeze CPPFLAGS
-      squeeze CFLAGS
-      CURL_COMPILER_WORKS_IFELSE([
-        AC_MSG_RESULT([yes])
-        AC_MSG_NOTICE([compiler options added: $tmp_options])
-      ],[
-        AC_MSG_RESULT([no])
-        AC_MSG_WARN([compiler options rejected: $tmp_options])
-        dnl restore initial settings
-        CPPFLAGS="$tmp_save_CPPFLAGS"
-        CFLAGS="$tmp_save_CFLAGS"
-      ])
-    fi
-    #
-  fi
-])
-
-
-dnl CURL_SET_COMPILER_WARNING_OPTS
-dnl -------------------------------------------------
-dnl Sets compiler options/flags which depend on
-dnl configure's warnings given option.
-
-AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
-  AC_REQUIRE([CURL_CHECK_OPTION_WARNINGS])dnl
-  AC_REQUIRE([CURL_CHECK_COMPILER])dnl
-  AC_REQUIRE([CURL_SHFUNC_SQUEEZE])dnl
-  #
-  if test "$compiler_id" != "unknown"; then
-    #
-    tmp_save_CPPFLAGS="$CPPFLAGS"
-    tmp_save_CFLAGS="$CFLAGS"
-    tmp_CPPFLAGS=""
-    tmp_CFLAGS=""
-    #
-    case "$compiler_id" in
-        #
-      CLANG)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl All versions of clang support the same warnings as at least
-          dnl gcc 4.2.1 except -Wunused.
-          tmp_CFLAGS="$tmp_CFLAGS -pedantic"
-          tmp_CFLAGS="$tmp_CFLAGS -Wall -Wextra"
-          tmp_CFLAGS="$tmp_CFLAGS -Wpointer-arith -Wwrite-strings"
-          tmp_CFLAGS="$tmp_CFLAGS -Wshadow"
-          tmp_CFLAGS="$tmp_CFLAGS -Winline -Wnested-externs"
-          tmp_CFLAGS="$tmp_CFLAGS -Wmissing-declarations"
-          tmp_CFLAGS="$tmp_CFLAGS -Wmissing-prototypes"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-long-long"
-          tmp_CFLAGS="$tmp_CFLAGS -Wfloat-equal"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-multichar -Wsign-compare"
-          tmp_CFLAGS="$tmp_CFLAGS -Wundef"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-format-nonliteral"
-          tmp_CFLAGS="$tmp_CFLAGS -Wendif-labels -Wstrict-prototypes"
-          tmp_CFLAGS="$tmp_CFLAGS -Wdeclaration-after-statement"
-          tmp_CFLAGS="$tmp_CFLAGS -Wcast-align"
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-system-headers"
-          tmp_CFLAGS="$tmp_CFLAGS -Wshorten-64-to-32"
-          #
-          dnl Only clang 1.1 or later
-          if test "$compiler_num" -ge "101"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wunused"
-          fi
-        fi
-        ;;
-        #
-      DEC_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Select a higher warning level than default level2
-          tmp_CFLAGS="$tmp_CFLAGS -msg_enable level3"
-        fi
-        ;;
-        #
-      GNU_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          #
-          dnl Do not enable -pedantic when cross-compiling with a gcc older
-          dnl than 3.0, to avoid warnings from third party system headers.
-          if test "x$cross_compiling" != "xyes" ||
-            test "$compiler_num" -ge "300"; then
-            tmp_CFLAGS="$tmp_CFLAGS -pedantic"
-          fi
-          #
-          dnl Set of options we believe *ALL* gcc versions support:
-          tmp_CFLAGS="$tmp_CFLAGS -Wall -W"
-          #
-          dnl Only gcc 1.4 or later
-          if test "$compiler_num" -ge "104"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wpointer-arith -Wwrite-strings"
-            dnl If not cross-compiling with a gcc older than 3.0
-            if test "x$cross_compiling" != "xyes" ||
-              test "$compiler_num" -ge "300"; then
-              tmp_CFLAGS="$tmp_CFLAGS -Wunused -Wshadow"
-            fi
-          fi
-          #
-          dnl Only gcc 2.7 or later
-          if test "$compiler_num" -ge "207"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Winline -Wnested-externs"
-            dnl If not cross-compiling with a gcc older than 3.0
-            if test "x$cross_compiling" != "xyes" ||
-              test "$compiler_num" -ge "300"; then
-              tmp_CFLAGS="$tmp_CFLAGS -Wmissing-declarations"
-              tmp_CFLAGS="$tmp_CFLAGS -Wmissing-prototypes"
-            fi
-          fi
-          #
-          dnl Only gcc 2.95 or later
-          if test "$compiler_num" -ge "295"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wno-long-long"
-          fi
-          #
-          dnl Only gcc 2.96 or later
-          if test "$compiler_num" -ge "296"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wfloat-equal"
-            tmp_CFLAGS="$tmp_CFLAGS -Wno-multichar -Wsign-compare"
-            dnl -Wundef used only if gcc is 2.96 or later since we get
-            dnl lots of "`_POSIX_C_SOURCE' is not defined" in system
-            dnl headers with gcc 2.95.4 on FreeBSD 4.9
-            tmp_CFLAGS="$tmp_CFLAGS -Wundef"
-          fi
-          #
-          dnl Only gcc 2.97 or later
-          if test "$compiler_num" -ge "297"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wno-format-nonliteral"
-          fi
-          #
-          dnl Only gcc 3.0 or later
-          if test "$compiler_num" -ge "300"; then
-            dnl -Wunreachable-code seems totally unreliable on my gcc 3.3.2 on
-            dnl on i686-Linux as it gives us heaps with false positives.
-            dnl Also, on gcc 4.0.X it is totally unbearable and complains all
-            dnl over making it unusable for generic purposes. Let's not use it.
-            tmp_CFLAGS="$tmp_CFLAGS"
-          fi
-          #
-          dnl Only gcc 3.3 or later
-          if test "$compiler_num" -ge "303"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wendif-labels -Wstrict-prototypes"
-          fi
-          #
-          dnl Only gcc 3.4 or later
-          if test "$compiler_num" -ge "304"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wdeclaration-after-statement"
-          fi
-          #
-          dnl Only gcc 4.2 or later
-          if test "$compiler_num" -ge "402"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wcast-align"
-          fi
-          dnl Only gcc 4.3 or later
-          if test "$compiler_num" -ge "403"; then
-            tmp_CFLAGS="$tmp_CFLAGS -Wtype-limits -Wold-style-declaration"
-            tmp_CFLAGS="$tmp_CFLAGS -Wmissing-parameter-type -Wempty-body"
-            tmp_CFLAGS="$tmp_CFLAGS -Wclobbered -Wignored-qualifiers"
-            tmp_CFLAGS="$tmp_CFLAGS -Wconversion -Wno-sign-conversion -Wvla"
-          fi
-          #
-        fi
-        #
-        dnl Do not issue warnings for code in system include paths.
-        if test "$compiler_num" -ge "300"; then
-          tmp_CFLAGS="$tmp_CFLAGS -Wno-system-headers"
-        else
-          dnl When cross-compiling with a gcc older than 3.0, disable
-          dnl some warnings triggered on third party system headers.
-          if test "x$cross_compiling" = "xyes"; then
-            if test "$compiler_num" -ge "104"; then
-              dnl gcc 1.4 or later
-              tmp_CFLAGS="$tmp_CFLAGS -Wno-unused -Wno-shadow"
-            fi
-            if test "$compiler_num" -ge "207"; then
-              dnl gcc 2.7 or later
-              tmp_CFLAGS="$tmp_CFLAGS -Wno-missing-declarations"
-              tmp_CFLAGS="$tmp_CFLAGS -Wno-missing-prototypes"
-            fi
-          fi
-        fi
-        ;;
-        #
-      HP_UX_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Issue all warnings
-          tmp_CFLAGS="$tmp_CFLAGS +w1"
-        fi
-        ;;
-        #
-      IBM_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      INTEL_UNIX_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          if test "$compiler_num" -gt "600"; then
-            dnl Show errors, warnings, and remarks
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wall -w2"
-            dnl Perform extra compile-time code checking
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wcheck"
-            dnl Warn on nested comments
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wcomment"
-            dnl Show warnings relative to deprecated features
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wdeprecated"
-            dnl Enable warnings for missing prototypes
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wmissing-prototypes"
-            dnl Enable warnings for 64-bit portability issues
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wp64"
-            dnl Enable warnings for questionable pointer arithmetic
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wpointer-arith"
-            dnl Check for function return typw issues
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wreturn-type"
-            dnl Warn on variable declarations hiding a previous one
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wshadow"
-            dnl Warn when a variable is used before initialized
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wuninitialized"
-            dnl Warn if a declared function is not used
-            tmp_CPPFLAGS="$tmp_CPPFLAGS -Wunused-function"
-          fi
-        fi
-        dnl Disable using EBP register in optimizations
-        tmp_CFLAGS="$tmp_CFLAGS -fno-omit-frame-pointer"
-        dnl Disable use of ANSI C aliasing rules in optimizations
-        tmp_CFLAGS="$tmp_CFLAGS -fno-strict-aliasing"
-        dnl Value-safe optimizations on floating-point data
-        tmp_CFLAGS="$tmp_CFLAGS -fp-model precise"
-        dnl Only icc 10.0 or later
-        if test "$compiler_num" -ge "1000"; then
-          dnl Disable vectorizer diagnostic information
-          tmp_CFLAGS="$tmp_CFLAGS -vec-report0"
-        fi
-        ;;
-        #
-      INTEL_WINDOWS_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-      LCC)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Highest warning level is double -A, next is single -A.
-          dnl Due to the big number of warnings these trigger on third
-          dnl party header files it is impractical for us to use any of
-          dnl them here. If you want them simply define it in CPPFLAGS.
-          tmp_CFLAGS="$tmp_CFLAGS"
-        fi
-        ;;
-        #
-      SGI_MIPS_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Perform stricter semantic and lint-like checks
-          tmp_CFLAGS="$tmp_CFLAGS -fullwarn"
-        fi
-        ;;
-        #
-      SGI_MIPSPRO_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Perform stricter semantic and lint-like checks
-          tmp_CFLAGS="$tmp_CFLAGS -fullwarn"
-          dnl Disable some remarks
-          dnl #1209: controlling expression is constant
-          tmp_CFLAGS="$tmp_CFLAGS -woff 1209"
-        fi
-        ;;
-        #
-      SUNPRO_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Perform stricter semantic and lint-like checks
-          tmp_CFLAGS="$tmp_CFLAGS -v"
-        fi
-        ;;
-        #
-      TINY_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Activate all warnings
-          tmp_CFLAGS="$tmp_CFLAGS -Wall"
-          dnl Make string constants be of type const char *
-          tmp_CFLAGS="$tmp_CFLAGS -Wwrite-strings"
-          dnl Warn use of unsupported GCC features ignored by TCC
-          tmp_CFLAGS="$tmp_CFLAGS -Wunsupported"
-        fi
-        ;;
-        #
-      WATCOM_UNIX_C)
-        #
-        if test "$want_warnings" = "yes"; then
-          dnl Issue all warnings
-          tmp_CFLAGS="$tmp_CFLAGS -Wall -Wextra"
-        fi
-        ;;
-        #
-      WATCOM_WINDOWS_C)
-        #
-        dnl Placeholder
-        tmp_CFLAGS="$tmp_CFLAGS"
-        ;;
-        #
-    esac
-    #
-    squeeze tmp_CPPFLAGS
-    squeeze tmp_CFLAGS
-    #
-    if test ! -z "$tmp_CFLAGS" || test ! -z "$tmp_CPPFLAGS"; then
-      AC_MSG_CHECKING([if compiler accepts strict warning options])
-      CPPFLAGS="$tmp_save_CPPFLAGS $tmp_CPPFLAGS"
-      CFLAGS="$tmp_save_CFLAGS $tmp_CFLAGS"
-      squeeze CPPFLAGS
-      squeeze CFLAGS
-      CURL_COMPILER_WORKS_IFELSE([
-        AC_MSG_RESULT([yes])
-        AC_MSG_NOTICE([compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS])
-      ],[
-        AC_MSG_RESULT([no])
-        AC_MSG_WARN([compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS])
-        dnl restore initial settings
-        CPPFLAGS="$tmp_save_CPPFLAGS"
-        CFLAGS="$tmp_save_CFLAGS"
-      ])
-    fi
-    #
-  fi
-])
-
-
-dnl CURL_SHFUNC_SQUEEZE
-dnl -------------------------------------------------
-dnl Declares a shell function squeeze() which removes
-dnl redundant whitespace out of a shell variable.
-
-AC_DEFUN([CURL_SHFUNC_SQUEEZE], [
-squeeze() {
-  _sqz_result=""
-  eval _sqz_input=\[$][$]1
-  for _sqz_token in $_sqz_input; do
-    if test -z "$_sqz_result"; then
-      _sqz_result="$_sqz_token"
-    else
-      _sqz_result="$_sqz_result $_sqz_token"
-    fi
-  done
-  eval [$]1=\$_sqz_result
-  return 0
-}
-])
-
-
-dnl CURL_CHECK_CURLDEBUG
-dnl -------------------------------------------------
-dnl Settings which depend on configure's curldebug given
-dnl option, and other additional configure pre-requisites.
-dnl Actually the curl debug memory tracking feature can
-dnl only be used/enabled when libcurl is built as a static
-dnl library or as a shared one on those systems on which
-dnl shared libraries support undefined symbols.
-
-AC_DEFUN([CURL_CHECK_CURLDEBUG], [
-  AC_REQUIRE([CURL_SHFUNC_SQUEEZE])dnl
-  supports_curldebug="unknown"
-  if test "$want_curldebug" = "yes"; then
-    if test "x$enable_shared" != "xno" &&
-      test "x$enable_shared" != "xyes"; then
-      AC_MSG_WARN([unknown enable_shared setting.])
-      supports_curldebug="no"
-    fi
-    if test "x$enable_static" != "xno" &&
-      test "x$enable_static" != "xyes"; then
-      AC_MSG_WARN([unknown enable_static setting.])
-      supports_curldebug="no"
-    fi
-    if test "$supports_curldebug" != "no"; then
-      if test "$enable_shared" = "yes" &&
-        test "$need_no_undefined" = "yes"; then
-        supports_curldebug="no"
-        AC_MSG_WARN([shared library does not support undefined symbols.])
-      fi
-    fi
-  fi
-  #
-  if test "$want_curldebug" = "yes"; then
-    AC_MSG_CHECKING([if curl debug memory tracking can be enabled])
-    test "$supports_curldebug" = "no" || supports_curldebug="yes"
-    AC_MSG_RESULT([$supports_curldebug])
-    if test "$supports_curldebug" = "no"; then
-      AC_MSG_WARN([cannot enable curl debug memory tracking.])
-      want_curldebug="no"
-    fi
-  fi
-  #
-  if test "$want_curldebug" = "yes"; then
-    CPPFLAGS="$CPPFLAGS -DCURLDEBUG"
-    squeeze CPPFLAGS
-  fi
-  if test "$want_debug" = "yes"; then
-    CPPFLAGS="$CPPFLAGS -DDEBUGBUILD"
-    squeeze CPPFLAGS
-  fi
-])
-
-
-dnl CURL_CHECK_NO_UNDEFINED
-dnl -------------------------------------------------
-dnl Checks if the -no-undefined flag must be used when
-dnl building shared libraries. This is required on all
-dnl systems on which shared libraries should not have
-dnl references to undefined symbols. This check should
-dnl not be done before AC-PROG-LIBTOOL.
-
-AC_DEFUN([CURL_CHECK_NO_UNDEFINED], [
-  AC_BEFORE([$0],[CURL_CHECK_CURLDEBUG])dnl
-  AC_MSG_CHECKING([if shared libraries need -no-undefined])
-  need_no_undefined="no"
-  case $host in
-    *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc* | *-*-aix*)
-      need_no_undefined="yes"
-      ;;
-  esac
-  if test "x$allow_undefined" = "xno"; then
-    need_no_undefined="yes"
-  elif test "x$allow_undefined_flag" = "xunsupported"; then
-    need_no_undefined="yes"
-  fi
-  AC_MSG_RESULT($need_no_undefined)
-])
-
-
-dnl CURL_CHECK_PROG_CC
-dnl -------------------------------------------------
-dnl Check for compiler program, preventing CFLAGS and
-dnl CPPFLAGS from being unexpectedly changed.
-
-AC_DEFUN([CURL_CHECK_PROG_CC], [
-  ac_save_CFLAGS="$CFLAGS"
-  ac_save_CPPFLAGS="$CPPFLAGS"
-  AC_PROG_CC
-  CFLAGS="$ac_save_CFLAGS"
-  CPPFLAGS="$ac_save_CPPFLAGS"
-])
-
-
-dnl CURL_CHECK_COMPILER_HALT_ON_ERROR
-dnl -------------------------------------------------
-dnl Verifies if the compiler actually halts after the
-dnl compilation phase without generating any object
-dnl code file, when the source compiles with errors.
-
-AC_DEFUN([CURL_CHECK_COMPILER_HALT_ON_ERROR], [
-  AC_MSG_CHECKING([if compiler halts on compilation errors])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-      force compilation error
-    ]])
-  ],[
-    AC_MSG_RESULT([no])
-    AC_MSG_ERROR([compiler does not halt on compilation errors.])
-  ],[
-    AC_MSG_RESULT([yes])
-  ])
-])
-
-
-dnl CURL_CHECK_COMPILER_ARRAY_SIZE_NEGATIVE
-dnl -------------------------------------------------
-dnl Verifies if the compiler actually halts after the
-dnl compilation phase without generating any object
-dnl code file, when the source code tries to define a
-dnl type for a constant array with negative dimension.
-
-AC_DEFUN([CURL_CHECK_COMPILER_ARRAY_SIZE_NEGATIVE], [
-  AC_REQUIRE([CURL_CHECK_COMPILER_HALT_ON_ERROR])dnl
-  AC_MSG_CHECKING([if compiler halts on negative sized arrays])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-      typedef char bad_t[sizeof(char) == sizeof(int) ? -1 : -1 ];
-    ]],[[
-      bad_t dummy;
-    ]])
-  ],[
-    AC_MSG_RESULT([no])
-    AC_MSG_ERROR([compiler does not halt on negative sized arrays.])
-  ],[
-    AC_MSG_RESULT([yes])
-  ])
-])
-
-
-dnl CURL_CHECK_COMPILER_STRUCT_MEMBER_SIZE
-dnl -------------------------------------------------
-dnl Verifies if the compiler is capable of handling the
-dnl size of a struct member, struct which is a function
-dnl result, as a compilation-time condition inside the
-dnl type definition of a constant array.
-
-AC_DEFUN([CURL_CHECK_COMPILER_STRUCT_MEMBER_SIZE], [
-  AC_REQUIRE([CURL_CHECK_COMPILER_ARRAY_SIZE_NEGATIVE])dnl
-  AC_MSG_CHECKING([if compiler struct member size checking works])
-  tst_compiler_check_one_works="unknown"
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-      struct mystruct {
-        int  mi;
-        char mc;
-        struct mystruct *next;
-      };
-      struct mystruct myfunc();
-      typedef char good_t1[sizeof(myfunc().mi) == sizeof(int)  ? 1 : -1 ];
-      typedef char good_t2[sizeof(myfunc().mc) == sizeof(char) ? 1 : -1 ];
-    ]],[[
-      good_t1 dummy1;
-      good_t2 dummy2;
-    ]])
-  ],[
-    tst_compiler_check_one_works="yes"
-  ],[
-    tst_compiler_check_one_works="no"
-    sed 's/^/cc-src: /' conftest.$ac_ext >&6
-    sed 's/^/cc-err: /' conftest.err >&6
-  ])
-  tst_compiler_check_two_works="unknown"
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-      struct mystruct {
-        int  mi;
-        char mc;
-        struct mystruct *next;
-      };
-      struct mystruct myfunc();
-      typedef char bad_t1[sizeof(myfunc().mi) != sizeof(int)  ? 1 : -1 ];
-      typedef char bad_t2[sizeof(myfunc().mc) != sizeof(char) ? 1 : -1 ];
-    ]],[[
-      bad_t1 dummy1;
-      bad_t2 dummy2;
-    ]])
-  ],[
-    tst_compiler_check_two_works="no"
-  ],[
-    tst_compiler_check_two_works="yes"
-  ])
-  if test "$tst_compiler_check_one_works" = "yes" &&
-    test "$tst_compiler_check_two_works" = "yes"; then
-    AC_MSG_RESULT([yes])
-  else
-    AC_MSG_RESULT([no])
-    AC_MSG_ERROR([compiler fails struct member size checking.])
-  fi
-])
-
-
-dnl CURL_VAR_MATCH (VARNAME, VALUE)
-dnl -------------------------------------------------
-dnl Verifies if shell variable VARNAME contains VALUE.
-dnl Contents of variable VARNAME and VALUE are handled
-dnl as whitespace separated lists of words. If at least
-dnl one word of VALUE is present in VARNAME the match
-dnl is considered positive, otherwise false.
-
-AC_DEFUN([CURL_VAR_MATCH], [
-  ac_var_match_word="no"
-  for word1 in $[$1]; do
-    for word2 in [$2]; do
-      if test "$word1" = "$word2"; then
-        ac_var_match_word="yes"
-      fi
-    done
-  done
-])
-
-
-dnl CURL_VAR_MATCH_IFELSE (VARNAME, VALUE,
-dnl                        [ACTION-IF-MATCH], [ACTION-IF-NOT-MATCH])
-dnl -------------------------------------------------
-dnl This performs a CURL_VAR_MATCH check and executes
-dnl first branch if the match is positive, otherwise
-dnl the second branch is executed.
-
-AC_DEFUN([CURL_VAR_MATCH_IFELSE], [
-  CURL_VAR_MATCH([$1],[$2])
-  if test "$ac_var_match_word" = "yes"; then
-  ifelse($3,,:,[$3])
-  ifelse($4,,,[else
-    $4])
-  fi
-])
-
-
-dnl CURL_VAR_STRIP (VARNAME, VALUE)
-dnl -------------------------------------------------
-dnl Contents of variable VARNAME and VALUE are handled
-dnl as whitespace separated lists of words. Each word
-dnl from VALUE is removed from VARNAME when present.
-
-AC_DEFUN([CURL_VAR_STRIP], [
-  AC_REQUIRE([CURL_SHFUNC_SQUEEZE])dnl
-  ac_var_stripped=""
-  for word1 in $[$1]; do
-    ac_var_strip_word="no"
-    for word2 in [$2]; do
-      if test "$word1" = "$word2"; then
-        ac_var_strip_word="yes"
-      fi
-    done
-    if test "$ac_var_strip_word" = "no"; then
-      ac_var_stripped="$ac_var_stripped $word1"
-    fi
-  done
-  dnl squeeze whitespace out of result
-  [$1]="$ac_var_stripped"
-  squeeze [$1]
-])
-
diff --git a/src/other/curl/m4/curl-confopts.m4 b/src/other/curl/m4/curl-confopts.m4
deleted file mode 100644
index 78a475b..0000000
--- a/src/other/curl/m4/curl-confopts.m4
+++ /dev/null
@@ -1,440 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-#***************************************************************************
-
-# File version for 'aclocal' use. Keep it a single number.
-# serial 11
-
-
-dnl CURL_CHECK_OPTION_ARES
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-ares or --disable-ares, and
-dnl set shell variable want_ares as appropriate.
-
-AC_DEFUN([CURL_CHECK_OPTION_ARES], [
-dnl   AC_BEFORE([$0],[CURL_CHECK_OPTION_THREADS])dnl
-  AC_BEFORE([$0],[CURL_CHECK_LIB_ARES])dnl
-  AC_MSG_CHECKING([whether to enable c-ares for DNS lookups])
-  OPT_ARES="default"
-  AC_ARG_ENABLE(ares,
-AC_HELP_STRING([--enable-ares@<:@=PATH@:>@],[Enable c-ares for DNS lookups])
-AC_HELP_STRING([--disable-ares],[Disable c-ares for DNS lookups]),
-  OPT_ARES=$enableval)
-  case "$OPT_ARES" in
-    no)
-      dnl --disable-ares option used
-      want_ares="no"
-      ;;
-    default)
-      dnl configure option not specified
-      want_ares="no"
-      ;;
-    *)
-      dnl --enable-ares option used
-      want_ares="yes"
-      if test -n "$enableval" && test "$enableval" != "yes"; then
-        want_ares_path="$enableval"
-      fi
-      ;;
-  esac
-  AC_MSG_RESULT([$want_ares])
-])
-
-
-dnl CURL_CHECK_OPTION_CURLDEBUG
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-curldebug or --disable-curldebug, and set
-dnl shell variable want_curldebug value as appropriate.
-
-AC_DEFUN([CURL_CHECK_OPTION_CURLDEBUG], [
-  AC_BEFORE([$0],[CURL_CHECK_CURLDEBUG])dnl
-  AC_MSG_CHECKING([whether to enable curl debug memory tracking])
-  OPT_CURLDEBUG_BUILD="default"
-  AC_ARG_ENABLE(curldebug,
-AC_HELP_STRING([--enable-curldebug],[Enable curl debug memory tracking])
-AC_HELP_STRING([--disable-curldebug],[Disable curl debug memory tracking]),
-  OPT_CURLDEBUG_BUILD=$enableval)
-  case "$OPT_CURLDEBUG_BUILD" in
-    no)
-      dnl --disable-curldebug option used
-      want_curldebug="no"
-      AC_MSG_RESULT([no])
-      ;;
-    default)
-      dnl configure's curldebug option not specified. Initially we will
-      dnl handle this as a a request to use the same setting as option
-      dnl --enable-debug. IOW, initially, for debug-enabled builds
-      dnl this will be handled as a request to enable curldebug if
-      dnl possible, and for debug-disabled builds this will be handled
-      dnl as a request to disable curldebug.
-      if test "$want_debug" = "yes"; then
-        AC_MSG_RESULT([(assumed) yes])
-      else
-        AC_MSG_RESULT([no])
-      fi
-      want_curldebug_assumed="yes"
-      want_curldebug="$want_debug"
-      ;;
-    *)
-      dnl --enable-curldebug option used.
-      dnl The use of this option value is a request to enable curl's
-      dnl debug memory tracking for the libcurl library. This can only
-      dnl be done when some requisites are simultaneously satisfied.
-      dnl Later on, these requisites are verified and if they are not
-      dnl fully satisfied the option will be ignored and act as if
-      dnl --disable-curldebug had been given setting shell variable
-      dnl want_curldebug to 'no'.
-      want_curldebug="yes"
-      AC_MSG_RESULT([yes])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_OPTION_DEBUG
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-debug or --disable-debug, and set shell
-dnl variable want_debug value as appropriate.
-
-AC_DEFUN([CURL_CHECK_OPTION_DEBUG], [
-  AC_BEFORE([$0],[CURL_CHECK_OPTION_WARNINGS])dnl
-  AC_BEFORE([$0],[CURL_CHECK_OPTION_CURLDEBUG])dnl
-  AC_BEFORE([$0],[CURL_CHECK_PROG_CC])dnl
-  AC_MSG_CHECKING([whether to enable debug build options])
-  OPT_DEBUG_BUILD="default"
-  AC_ARG_ENABLE(debug,
-AC_HELP_STRING([--enable-debug],[Enable debug build options])
-AC_HELP_STRING([--disable-debug],[Disable debug build options]),
-  OPT_DEBUG_BUILD=$enableval)
-  case "$OPT_DEBUG_BUILD" in
-    no)
-      dnl --disable-debug option used
-      want_debug="no"
-      ;;
-    default)
-      dnl configure option not specified
-      want_debug="no"
-      ;;
-    *)
-      dnl --enable-debug option used
-      want_debug="yes"
-      ;;
-  esac
-  AC_MSG_RESULT([$want_debug])
-])
-
-
-dnl CURL_CHECK_OPTION_NONBLOCKING
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-nonblocking or --disable-nonblocking, and
-dnl set shell variable want_nonblocking as appropriate.
-
-AC_DEFUN([CURL_CHECK_OPTION_NONBLOCKING], [
-  AC_BEFORE([$0],[CURL_CHECK_NONBLOCKING_SOCKET])dnl
-  AC_MSG_CHECKING([whether to enable non-blocking communications])
-  OPT_NONBLOCKING="default"
-  AC_ARG_ENABLE(nonblocking,
-AC_HELP_STRING([--enable-nonblocking],[Enable non-blocking communications])
-AC_HELP_STRING([--disable-nonblocking],[Disable non-blocking communications]),
-  OPT_NONBLOCKING=$enableval)
-  case "$OPT_NONBLOCKING" in
-    no)
-      dnl --disable-nonblocking option used
-      want_nonblocking="no"
-      ;;
-    default)
-      dnl configure option not specified
-      want_nonblocking="yes"
-      ;;
-    *)
-      dnl --enable-nonblocking option used
-      want_nonblocking="yes"
-      ;;
-  esac
-  AC_MSG_RESULT([$want_nonblocking])
-])
-
-
-dnl CURL_CHECK_OPTION_OPTIMIZE
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-optimize or --disable-optimize, and set
-dnl shell variable want_optimize value as appropriate.
-
-AC_DEFUN([CURL_CHECK_OPTION_OPTIMIZE], [
-  AC_REQUIRE([CURL_CHECK_OPTION_DEBUG])dnl
-  AC_BEFORE([$0],[CURL_CHECK_PROG_CC])dnl
-  AC_MSG_CHECKING([whether to enable compiler optimizer])
-  OPT_COMPILER_OPTIMIZE="default"
-  AC_ARG_ENABLE(optimize,
-AC_HELP_STRING([--enable-optimize],[Enable compiler optimizations])
-AC_HELP_STRING([--disable-optimize],[Disable compiler optimizations]),
-  OPT_COMPILER_OPTIMIZE=$enableval)
-  case "$OPT_COMPILER_OPTIMIZE" in
-    no)
-      dnl --disable-optimize option used. We will handle this as
-      dnl a request to disable compiler optimizations if possible.
-      dnl If the compiler is known CFLAGS and CPPFLAGS will be
-      dnl overridden, otherwise this can not be honored.
-      want_optimize="no"
-      AC_MSG_RESULT([no])
-      ;;
-    default)
-      dnl configure's optimize option not specified. Initially we will
-      dnl handle this as a a request contrary to configure's setting
-      dnl for --enable-debug. IOW, initially, for debug-enabled builds
-      dnl this will be handled as a request to disable optimizations if
-      dnl possible, and for debug-disabled builds this will be handled
-      dnl initially as a request to enable optimizations if possible.
-      dnl Finally, if the compiler is known and CFLAGS and CPPFLAGS do
-      dnl not have any optimizer flag the request will be honored, in
-      dnl any other case the request can not be honored.
-      dnl IOW, existing optimizer flags defined in CFLAGS or CPPFLAGS
-      dnl will always take precedence over any initial assumption.
-      if test "$want_debug" = "yes"; then
-        want_optimize="assume_no"
-        AC_MSG_RESULT([(assumed) no])
-      else
-        want_optimize="assume_yes"
-        AC_MSG_RESULT([(assumed) yes])
-      fi
-      ;;
-    *)
-      dnl --enable-optimize option used. We will handle this as
-      dnl a request to enable compiler optimizations if possible.
-      dnl If the compiler is known CFLAGS and CPPFLAGS will be
-      dnl overridden, otherwise this can not be honored.
-      want_optimize="yes"
-      AC_MSG_RESULT([yes])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_OPTION_THREADS
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-threads or --disable-threads, and
-dnl set shell variable want_threads as appropriate.
-
-dnl AC_DEFUN([CURL_CHECK_OPTION_THREADS], [
-dnl   AC_BEFORE([$0],[CURL_CHECK_LIB_THREADS])dnl
-dnl   AC_MSG_CHECKING([whether to enable threads for DNS lookups])
-dnl   OPT_THREADS="default"
-dnl   AC_ARG_ENABLE(threads,
-dnl AC_HELP_STRING([--enable-threads@<:@=PATH@:>@],[Enable threads for DNS lookups])
-dnl AC_HELP_STRING([--disable-threads],[Disable threads for DNS lookups]),
-dnl   OPT_THREADS=$enableval)
-dnl   case "$OPT_THREADS" in
-dnl     no)
-dnl       dnl --disable-threads option used
-dnl       want_threads="no"
-dnl       AC_MSG_RESULT([no])
-dnl       ;;
-dnl     default)
-dnl       dnl configure option not specified
-dnl       want_threads="no"
-dnl       AC_MSG_RESULT([(assumed) no])
-dnl       ;;
-dnl     *)
-dnl       dnl --enable-threads option used
-dnl       want_threads="yes"
-dnl       want_threads_path="$enableval"
-dnl       AC_MSG_RESULT([yes])
-dnl       ;;
-dnl   esac
-dnl   #
-dnl   if test "$want_ares" = "assume_yes"; then
-dnl     if test "$want_threads" = "yes"; then
-dnl       AC_MSG_CHECKING([whether to ignore c-ares enabling assumed setting])
-dnl       AC_MSG_RESULT([yes])
-dnl       want_ares="no"
-dnl     else
-dnl       want_ares="yes"
-dnl     fi
-dnl   fi
-dnl   if test "$want_threads" = "yes" && test "$want_ares" = "yes"; then
-dnl     AC_MSG_ERROR([options --enable-ares and --enable-threads are mutually exclusive, at most one may be enabled.])
-dnl   fi
-dnl ])
-
-
-dnl CURL_CHECK_OPTION_WARNINGS
-dnl -------------------------------------------------
-dnl Verify if configure has been invoked with option
-dnl --enable-warnings or --disable-warnings, and set
-dnl shell variable want_warnings as appropriate.
-
-AC_DEFUN([CURL_CHECK_OPTION_WARNINGS], [
-  AC_REQUIRE([CURL_CHECK_OPTION_DEBUG])dnl
-  AC_BEFORE([$0],[CURL_CHECK_PROG_CC])dnl
-  AC_MSG_CHECKING([whether to enable strict compiler warnings])
-  OPT_COMPILER_WARNINGS="default"
-  AC_ARG_ENABLE(warnings,
-AC_HELP_STRING([--enable-warnings],[Enable strict compiler warnings])
-AC_HELP_STRING([--disable-warnings],[Disable strict compiler warnings]),
-  OPT_COMPILER_WARNINGS=$enableval)
-  case "$OPT_COMPILER_WARNINGS" in
-    no)
-      dnl --disable-warnings option used
-      want_warnings="no"
-      ;;
-    default)
-      dnl configure option not specified, so
-      dnl use same setting as --enable-debug
-      want_warnings="$want_debug"
-      ;;
-    *)
-      dnl --enable-warnings option used
-      want_warnings="yes"
-      ;;
-  esac
-  AC_MSG_RESULT([$want_warnings])
-])
-
-
-dnl CURL_CHECK_NONBLOCKING_SOCKET
-dnl -------------------------------------------------
-dnl Check for how to set a socket into non-blocking state.
-
-AC_DEFUN([CURL_CHECK_NONBLOCKING_SOCKET], [
-  AC_REQUIRE([CURL_CHECK_OPTION_NONBLOCKING])dnl
-  AC_REQUIRE([CURL_CHECK_FUNC_FCNTL])dnl
-  AC_REQUIRE([CURL_CHECK_FUNC_IOCTL])dnl
-  AC_REQUIRE([CURL_CHECK_FUNC_IOCTLSOCKET])dnl
-  AC_REQUIRE([CURL_CHECK_FUNC_IOCTLSOCKET_CAMEL])dnl
-  AC_REQUIRE([CURL_CHECK_FUNC_SETSOCKOPT])dnl
-  #
-  tst_method="unknown"
-  if test "$want_nonblocking" = "yes"; then
-    AC_MSG_CHECKING([how to set a socket into non-blocking mode])
-    if test "x$ac_cv_func_fcntl_o_nonblock" = "xyes"; then
-      tst_method="fcntl O_NONBLOCK"
-    elif test "x$ac_cv_func_ioctl_fionbio" = "xyes"; then
-      tst_method="ioctl FIONBIO"
-    elif test "x$ac_cv_func_ioctlsocket_fionbio" = "xyes"; then
-      tst_method="ioctlsocket FIONBIO"
-    elif test "x$ac_cv_func_ioctlsocket_camel_fionbio" = "xyes"; then
-      tst_method="IoctlSocket FIONBIO"
-    elif test "x$ac_cv_func_setsockopt_so_nonblock" = "xyes"; then
-      tst_method="setsockopt SO_NONBLOCK"
-    fi
-    AC_MSG_RESULT([$tst_method])
-    if test "$tst_method" = "unknown"; then
-      AC_MSG_WARN([cannot determine non-blocking socket method.])
-    fi
-  fi
-  if test "$tst_method" = "unknown"; then
-    AC_DEFINE_UNQUOTED(USE_BLOCKING_SOCKETS, 1,
-      [Define to disable non-blocking sockets.])
-    AC_MSG_WARN([non-blocking sockets disabled.])
-  fi
-])
-
-
-dnl CURL_CHECK_LIB_ARES
-dnl -------------------------------------------------
-dnl When c-ares library support has been requested,
-dnl performs necessary checks and adjustsments needed
-dnl to enable support of this library.
-
-AC_DEFUN([CURL_CHECK_LIB_ARES], [
-  #
-  if test "$want_ares" = "yes"; then
-    dnl c-ares library support has been requested
-    clean_CPPFLAGS="$CPPFLAGS"
-    clean_LDFLAGS="$LDFLAGS"
-    clean_LIBS="$LIBS"
-    embedded_ares="unknown"
-    configure_runpath=`pwd`
-    embedded_ares_builddir="$configure_runpath/../ares"	# BZFlag location
-    if test -n "$want_ares_path"; then
-      dnl c-ares library path has been specified
-      ares_CPPFLAGS="-I$want_ares_path/include"
-      ares_LDFLAGS="-L$want_ares_path/lib"
-      ares_LIBS="-lcares"
-    else
-      dnl c-ares library path has not been given
-      if test -d "$srcdir/../ares"; then		# BZFlag location
-        dnl c-ares sources embedded in curl tree
-        embedded_ares="yes"
-dnl	AC_CONFIG_SUBDIRS(ares)			BZFlag handles this separately
-        dnl c-ares has installable configured header files, path
-        dnl inclusion fully done in makefiles for in-tree builds.
-        ares_CPPFLAGS="-I$embedded_ares_builddir"	# BZFlag location
-        ares_LDFLAGS="-L$embedded_ares_builddir"
-        ares_LIBS="-lcares"
-      else
-        dnl c-ares path not specified, use defaults
-        ares_CPPFLAGS=""
-        ares_LDFLAGS=""
-        ares_LIBS="-lcares"
-      fi
-    fi
-    #
-    CPPFLAGS="$ares_CPPFLAGS $clean_CPPFLAGS"
-    LDFLAGS="$ares_LDFLAGS $clean_LDFLAGS"
-    LIBS="$ares_LIBS $clean_LIBS"
-    #
-    if test "$embedded_ares" != "yes"; then
-      dnl check if c-ares new enough when not using an embedded
-      dnl source tree one which normally has not been built yet.
-      AC_MSG_CHECKING([that c-ares is good and recent enough])
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-#include <ares.h>
-          /* set of dummy functions in case c-ares was built with debug */
-          void curl_dofree() { }
-          void curl_sclose() { }
-          void curl_domalloc() { }
-          void curl_docalloc() { }
-          void curl_socket() { }
-        ]],[[
-          ares_channel channel;
-          ares_cancel(channel); /* added in 1.2.0 */
-          ares_process_fd(channel, 0, 0); /* added in 1.4.0 */
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-      ],[
-        AC_MSG_RESULT([no])
-        AC_MSG_ERROR([c-ares library defective or too old])
-        dnl restore initial settings
-        CPPFLAGS="$clean_CPPFLAGS"
-        LDFLAGS="$clean_LDFLAGS"
-        LIBS="$clean_LIBS"
-        # prevent usage
-        want_ares="no"
-      ])
-    fi
-    if test "$want_ares" = "yes"; then
-      dnl finally c-ares will be used
-      AC_DEFINE(USE_ARES, 1, [Define to enable c-ares support])
-      AC_SUBST([USE_ARES], [1])
-      curl_ares_msg="enabled"
-    fi
-  fi
-])
-
diff --git a/src/other/curl/m4/curl-functions.m4 b/src/other/curl/m4/curl-functions.m4
deleted file mode 100644
index 36bd31c..0000000
--- a/src/other/curl/m4/curl-functions.m4
+++ /dev/null
@@ -1,5905 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-#***************************************************************************
-
-# File version for 'aclocal' use. Keep it a single number.
-# serial 64
-
-
-dnl CURL_INCLUDES_ARPA_INET
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when arpa/inet.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_ARPA_INET], [
-curl_includes_arpa_inet="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#  include <arpa/inet.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h sys/socket.h netinet/in.h arpa/inet.h,
-    [], [], [$curl_includes_arpa_inet])
-])
-
-
-dnl CURL_INCLUDES_FCNTL
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when fcntl.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_FCNTL], [
-curl_includes_fcntl="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_FCNTL_H
-#  include <fcntl.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h unistd.h fcntl.h,
-    [], [], [$curl_includes_fcntl])
-])
-
-
-dnl CURL_INCLUDES_IFADDRS
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when ifaddrs.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_IFADDRS], [
-curl_includes_ifaddrs="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#  include <netinet/in.h>
-#endif
-#ifdef HAVE_IFADDRS_H
-#  include <ifaddrs.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h sys/socket.h netinet/in.h ifaddrs.h,
-    [], [], [$curl_includes_ifaddrs])
-])
-
-
-dnl CURL_INCLUDES_INTTYPES
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when inttypes.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_INTTYPES], [
-curl_includes_inttypes="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-/* includes end */"
-  case $host_os in
-    irix*)
-      ac_cv_header_stdint_h="no"
-      ;;
-  esac
-  AC_CHECK_HEADERS(
-    sys/types.h stdint.h inttypes.h,
-    [], [], [$curl_includes_inttypes])
-])
-
-
-dnl CURL_INCLUDES_LIBGEN
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when libgen.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_LIBGEN], [
-curl_includes_libgen="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_LIBGEN_H
-#  include <libgen.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h libgen.h,
-    [], [], [$curl_includes_libgen])
-])
-
-
-dnl CURL_INCLUDES_NETDB
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when netdb.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_NETDB], [
-curl_includes_netdb="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_NETDB_H
-#  include <netdb.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h netdb.h,
-    [], [], [$curl_includes_netdb])
-])
-
-
-dnl CURL_INCLUDES_POLL
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when poll.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_POLL], [
-curl_includes_poll="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_POLL_H
-#  include <poll.h>
-#endif
-#ifdef HAVE_SYS_POLL_H
-#  include <sys/poll.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h poll.h sys/poll.h,
-    [], [], [$curl_includes_poll])
-])
-
-
-dnl CURL_INCLUDES_SETJMP
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when setjmp.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_SETJMP], [
-curl_includes_setjmp="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SETJMP_H
-#  include <setjmp.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h setjmp.h,
-    [], [], [$curl_includes_setjmp])
-])
-
-
-dnl CURL_INCLUDES_SIGNAL
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when signal.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_SIGNAL], [
-curl_includes_signal="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SIGNAL_H
-#  include <signal.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h signal.h,
-    [], [], [$curl_includes_signal])
-])
-
-
-dnl CURL_INCLUDES_SOCKET
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when socket.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_SOCKET], [
-curl_includes_socket="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SOCKET_H
-#  include <socket.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h socket.h,
-    [], [], [$curl_includes_socket])
-])
-
-
-dnl CURL_INCLUDES_STDIO
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when stdio.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_STDIO], [
-curl_includes_stdio="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_STDIO_H
-#  include <stdio.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h stdio.h,
-    [], [], [$curl_includes_stdio])
-])
-
-
-dnl CURL_INCLUDES_STDLIB
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when stdlib.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_STDLIB], [
-curl_includes_stdlib="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h stdlib.h,
-    [], [], [$curl_includes_stdlib])
-])
-
-
-dnl CURL_INCLUDES_STRING
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when string(s).h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_STRING], [
-curl_includes_string="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_STRING_H
-#  include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-#  include <strings.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h string.h strings.h,
-    [], [], [$curl_includes_string])
-])
-
-
-dnl CURL_INCLUDES_STROPTS
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when stropts.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_STROPTS], [
-curl_includes_stropts="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#  include <sys/ioctl.h>
-#endif
-#ifdef HAVE_STROPTS_H
-#  include <stropts.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h unistd.h sys/socket.h sys/ioctl.h stropts.h,
-    [], [], [$curl_includes_stropts])
-])
-
-
-dnl CURL_INCLUDES_SYS_SOCKET
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when sys/socket.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_SYS_SOCKET], [
-curl_includes_sys_socket="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h sys/socket.h,
-    [], [], [$curl_includes_sys_socket])
-])
-
-
-dnl CURL_INCLUDES_SYS_TYPES
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when sys/types.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_SYS_TYPES], [
-curl_includes_sys_types="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h,
-    [], [], [$curl_includes_sys_types])
-])
-
-
-dnl CURL_INCLUDES_SYS_UIO
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when sys/uio.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_SYS_UIO], [
-curl_includes_sys_uio="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_UIO_H
-#  include <sys/uio.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h sys/uio.h,
-    [], [], [$curl_includes_sys_uio])
-])
-
-
-dnl CURL_INCLUDES_TIME
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when time.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_TIME], [
-AC_REQUIRE([AC_HEADER_TIME])dnl
-curl_includes_time="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#  include <sys/time.h>
-#  ifdef TIME_WITH_SYS_TIME
-#    include <time.h>
-#  endif
-#else
-#  ifdef HAVE_TIME_H
-#    include <time.h>
-#  endif
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h sys/time.h time.h,
-    [], [], [$curl_includes_time])
-])
-
-
-dnl CURL_INCLUDES_UNISTD
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when unistd.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_UNISTD], [
-curl_includes_unistd="\
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-/* includes end */"
-  AC_CHECK_HEADERS(
-    sys/types.h unistd.h,
-    [], [], [$curl_includes_unistd])
-])
-
-
-dnl CURL_INCLUDES_WINSOCK2
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when winsock(2).h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_WINSOCK2], [
-curl_includes_winsock2="\
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
-#  endif
-#endif
-/* includes end */"
-  CURL_CHECK_HEADER_WINDOWS
-  CURL_CHECK_HEADER_WINSOCK
-  CURL_CHECK_HEADER_WINSOCK2
-])
-
-
-dnl CURL_INCLUDES_WS2TCPIP
-dnl -------------------------------------------------
-dnl Set up variable with list of headers that must be
-dnl included when ws2tcpip.h is to be included.
-
-AC_DEFUN([CURL_INCLUDES_WS2TCPIP], [
-curl_includes_ws2tcpip="\
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#    ifdef HAVE_WS2TCPIP_H
-#       include <ws2tcpip.h>
-#    endif
-#  endif
-#endif
-/* includes end */"
-  CURL_CHECK_HEADER_WINDOWS
-  CURL_CHECK_HEADER_WINSOCK2
-  CURL_CHECK_HEADER_WS2TCPIP
-])
-
-
-dnl CURL_PREPROCESS_CALLCONV
-dnl -------------------------------------------------
-dnl Set up variable with a preprocessor block which
-dnl defines function calling convention.
-
-AC_DEFUN([CURL_PREPROCESS_CALLCONV], [
-curl_preprocess_callconv="\
-/* preprocess start */
-#ifdef HAVE_WINDOWS_H
-#  define FUNCALLCONV __stdcall
-#else
-#  define FUNCALLCONV
-#endif
-/* preprocess end */"
-])
-
-
-dnl CURL_CHECK_FUNC_ALARM
-dnl -------------------------------------------------
-dnl Verify if alarm is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_alarm, then
-dnl HAVE_ALARM will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_ALARM], [
-  AC_REQUIRE([CURL_INCLUDES_UNISTD])dnl
-  #
-  tst_links_alarm="unknown"
-  tst_proto_alarm="unknown"
-  tst_compi_alarm="unknown"
-  tst_allow_alarm="unknown"
-  #
-  AC_MSG_CHECKING([if alarm can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([alarm])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_alarm="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_alarm="no"
-  ])
-  #
-  if test "$tst_links_alarm" = "yes"; then
-    AC_MSG_CHECKING([if alarm is prototyped])
-    AC_EGREP_CPP([alarm],[
-      $curl_includes_unistd
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_alarm="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_alarm="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_alarm" = "yes"; then
-    AC_MSG_CHECKING([if alarm is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_unistd
-      ]],[[
-        if(0 != alarm(0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_alarm="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_alarm="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_alarm" = "yes"; then
-    AC_MSG_CHECKING([if alarm usage allowed])
-    if test "x$curl_disallow_alarm" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_alarm="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_alarm="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if alarm might be used])
-  if test "$tst_links_alarm" = "yes" &&
-     test "$tst_proto_alarm" = "yes" &&
-     test "$tst_compi_alarm" = "yes" &&
-     test "$tst_allow_alarm" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_ALARM, 1,
-      [Define to 1 if you have the alarm function.])
-    ac_cv_func_alarm="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_alarm="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_BASENAME
-dnl -------------------------------------------------
-dnl Verify if basename is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_basename, then
-dnl HAVE_BASENAME will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_BASENAME], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  AC_REQUIRE([CURL_INCLUDES_LIBGEN])dnl
-  AC_REQUIRE([CURL_INCLUDES_UNISTD])dnl
-  #
-  tst_links_basename="unknown"
-  tst_proto_basename="unknown"
-  tst_compi_basename="unknown"
-  tst_allow_basename="unknown"
-  #
-  AC_MSG_CHECKING([if basename can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([basename])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_basename="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_basename="no"
-  ])
-  #
-  if test "$tst_links_basename" = "yes"; then
-    AC_MSG_CHECKING([if basename is prototyped])
-    AC_EGREP_CPP([basename],[
-      $curl_includes_string
-      $curl_includes_libgen
-      $curl_includes_unistd
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_basename="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_basename="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_basename" = "yes"; then
-    AC_MSG_CHECKING([if basename is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-        $curl_includes_libgen
-        $curl_includes_unistd
-      ]],[[
-        if(0 != basename(0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_basename="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_basename="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_basename" = "yes"; then
-    AC_MSG_CHECKING([if basename usage allowed])
-    if test "x$curl_disallow_basename" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_basename="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_basename="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if basename might be used])
-  if test "$tst_links_basename" = "yes" &&
-     test "$tst_proto_basename" = "yes" &&
-     test "$tst_compi_basename" = "yes" &&
-     test "$tst_allow_basename" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_BASENAME, 1,
-      [Define to 1 if you have the basename function.])
-    ac_cv_func_basename="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_basename="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_CLOSESOCKET
-dnl -------------------------------------------------
-dnl Verify if closesocket is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_closesocket, then
-dnl HAVE_CLOSESOCKET will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_CLOSESOCKET], [
-  AC_REQUIRE([CURL_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CURL_INCLUDES_SOCKET])dnl
-  #
-  tst_links_closesocket="unknown"
-  tst_proto_closesocket="unknown"
-  tst_compi_closesocket="unknown"
-  tst_allow_closesocket="unknown"
-  #
-  AC_MSG_CHECKING([if closesocket can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_winsock2
-      $curl_includes_socket
-    ]],[[
-      if(0 != closesocket(0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_closesocket="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_closesocket="no"
-  ])
-  #
-  if test "$tst_links_closesocket" = "yes"; then
-    AC_MSG_CHECKING([if closesocket is prototyped])
-    AC_EGREP_CPP([closesocket],[
-      $curl_includes_winsock2
-      $curl_includes_socket
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_closesocket="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_closesocket="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_closesocket" = "yes"; then
-    AC_MSG_CHECKING([if closesocket is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_winsock2
-        $curl_includes_socket
-      ]],[[
-        if(0 != closesocket(0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_closesocket="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_closesocket="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_closesocket" = "yes"; then
-    AC_MSG_CHECKING([if closesocket usage allowed])
-    if test "x$curl_disallow_closesocket" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_closesocket="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_closesocket="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if closesocket might be used])
-  if test "$tst_links_closesocket" = "yes" &&
-     test "$tst_proto_closesocket" = "yes" &&
-     test "$tst_compi_closesocket" = "yes" &&
-     test "$tst_allow_closesocket" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_CLOSESOCKET, 1,
-      [Define to 1 if you have the closesocket function.])
-    ac_cv_func_closesocket="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_closesocket="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_CLOSESOCKET_CAMEL
-dnl -------------------------------------------------
-dnl Verify if CloseSocket is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_closesocket_camel,
-dnl then HAVE_CLOSESOCKET_CAMEL will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_CLOSESOCKET_CAMEL], [
-  AC_REQUIRE([CURL_INCLUDES_SYS_SOCKET])dnl
-  #
-  tst_links_closesocket_camel="unknown"
-  tst_proto_closesocket_camel="unknown"
-  tst_compi_closesocket_camel="unknown"
-  tst_allow_closesocket_camel="unknown"
-  #
-  AC_MSG_CHECKING([if CloseSocket can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_sys_socket
-    ]],[[
-      if(0 != CloseSocket(0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_closesocket_camel="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_closesocket_camel="no"
-  ])
-  #
-  if test "$tst_links_closesocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if CloseSocket is prototyped])
-    AC_EGREP_CPP([CloseSocket],[
-      $curl_includes_sys_socket
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_closesocket_camel="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_closesocket_camel="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_closesocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if CloseSocket is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_sys_socket
-      ]],[[
-        if(0 != CloseSocket(0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_closesocket_camel="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_closesocket_camel="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_closesocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if CloseSocket usage allowed])
-    if test "x$curl_disallow_closesocket_camel" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_closesocket_camel="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_closesocket_camel="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if CloseSocket might be used])
-  if test "$tst_links_closesocket_camel" = "yes" &&
-     test "$tst_proto_closesocket_camel" = "yes" &&
-     test "$tst_compi_closesocket_camel" = "yes" &&
-     test "$tst_allow_closesocket_camel" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_CLOSESOCKET_CAMEL, 1,
-      [Define to 1 if you have the CloseSocket camel case function.])
-    ac_cv_func_closesocket_camel="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_closesocket_camel="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_CONNECT
-dnl -------------------------------------------------
-dnl Verify if connect is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_connect, then
-dnl HAVE_CONNECT will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_CONNECT], [
-  AC_REQUIRE([CURL_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CURL_INCLUDES_SYS_SOCKET])dnl
-  AC_REQUIRE([CURL_INCLUDES_SOCKET])dnl
-  #
-  tst_links_connect="unknown"
-  tst_proto_connect="unknown"
-  tst_compi_connect="unknown"
-  tst_allow_connect="unknown"
-  #
-  AC_MSG_CHECKING([if connect can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_winsock2
-      $curl_includes_sys_socket
-      $curl_includes_socket
-    ]],[[
-      if(0 != connect(0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_connect="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_connect="no"
-  ])
-  #
-  if test "$tst_links_connect" = "yes"; then
-    AC_MSG_CHECKING([if connect is prototyped])
-    AC_EGREP_CPP([connect],[
-      $curl_includes_winsock2
-      $curl_includes_sys_socket
-      $curl_includes_socket
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_connect="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_connect="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_connect" = "yes"; then
-    AC_MSG_CHECKING([if connect is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_winsock2
-        $curl_includes_sys_socket
-        $curl_includes_socket
-      ]],[[
-        if(0 != connect(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_connect="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_connect="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_connect" = "yes"; then
-    AC_MSG_CHECKING([if connect usage allowed])
-    if test "x$curl_disallow_connect" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_connect="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_connect="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if connect might be used])
-  if test "$tst_links_connect" = "yes" &&
-     test "$tst_proto_connect" = "yes" &&
-     test "$tst_compi_connect" = "yes" &&
-     test "$tst_allow_connect" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_CONNECT, 1,
-      [Define to 1 if you have the connect function.])
-    ac_cv_func_connect="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_connect="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_FCNTL
-dnl -------------------------------------------------
-dnl Verify if fcntl is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_fcntl, then
-dnl HAVE_FCNTL will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_FCNTL], [
-  AC_REQUIRE([CURL_INCLUDES_FCNTL])dnl
-  #
-  tst_links_fcntl="unknown"
-  tst_proto_fcntl="unknown"
-  tst_compi_fcntl="unknown"
-  tst_allow_fcntl="unknown"
-  #
-  AC_MSG_CHECKING([if fcntl can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([fcntl])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_fcntl="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_fcntl="no"
-  ])
-  #
-  if test "$tst_links_fcntl" = "yes"; then
-    AC_MSG_CHECKING([if fcntl is prototyped])
-    AC_EGREP_CPP([fcntl],[
-      $curl_includes_fcntl
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_fcntl="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_fcntl="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_fcntl" = "yes"; then
-    AC_MSG_CHECKING([if fcntl is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_fcntl
-      ]],[[
-        if(0 != fcntl(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_fcntl="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_fcntl="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_fcntl" = "yes"; then
-    AC_MSG_CHECKING([if fcntl usage allowed])
-    if test "x$curl_disallow_fcntl" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_fcntl="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_fcntl="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if fcntl might be used])
-  if test "$tst_links_fcntl" = "yes" &&
-     test "$tst_proto_fcntl" = "yes" &&
-     test "$tst_compi_fcntl" = "yes" &&
-     test "$tst_allow_fcntl" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_FCNTL, 1,
-      [Define to 1 if you have the fcntl function.])
-    ac_cv_func_fcntl="yes"
-    CURL_CHECK_FUNC_FCNTL_O_NONBLOCK
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_fcntl="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_FCNTL_O_NONBLOCK
-dnl -------------------------------------------------
-dnl Verify if fcntl with status flag O_NONBLOCK is
-dnl available, can be compiled, and seems to work. If
-dnl all of these are true, then HAVE_FCNTL_O_NONBLOCK
-dnl will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_FCNTL_O_NONBLOCK], [
-  #
-  tst_compi_fcntl_o_nonblock="unknown"
-  tst_allow_fcntl_o_nonblock="unknown"
-  #
-  case $host_os in
-    sunos4* | aix3* | beos*)
-      dnl O_NONBLOCK does not work on these platforms
-      curl_disallow_fcntl_o_nonblock="yes"
-      ;;
-  esac
-  #
-  if test "$ac_cv_func_fcntl" = "yes"; then
-    AC_MSG_CHECKING([if fcntl O_NONBLOCK is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_fcntl
-      ]],[[
-        int flags = 0;
-        if(0 != fcntl(0, F_SETFL, flags | O_NONBLOCK))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_fcntl_o_nonblock="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_fcntl_o_nonblock="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_fcntl_o_nonblock" = "yes"; then
-    AC_MSG_CHECKING([if fcntl O_NONBLOCK usage allowed])
-    if test "x$curl_disallow_fcntl_o_nonblock" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_fcntl_o_nonblock="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_fcntl_o_nonblock="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if fcntl O_NONBLOCK might be used])
-  if test "$tst_compi_fcntl_o_nonblock" = "yes" &&
-     test "$tst_allow_fcntl_o_nonblock" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_FCNTL_O_NONBLOCK, 1,
-      [Define to 1 if you have a working fcntl O_NONBLOCK function.])
-    ac_cv_func_fcntl_o_nonblock="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_fcntl_o_nonblock="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_FDOPEN
-dnl -------------------------------------------------
-dnl Verify if fdopen is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_fdopen, then
-dnl HAVE_FDOPEN will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_FDOPEN], [
-  AC_REQUIRE([CURL_INCLUDES_STDIO])dnl
-  #
-  tst_links_fdopen="unknown"
-  tst_proto_fdopen="unknown"
-  tst_compi_fdopen="unknown"
-  tst_allow_fdopen="unknown"
-  #
-  AC_MSG_CHECKING([if fdopen can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([fdopen])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_fdopen="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_fdopen="no"
-  ])
-  #
-  if test "$tst_links_fdopen" = "yes"; then
-    AC_MSG_CHECKING([if fdopen is prototyped])
-    AC_EGREP_CPP([fdopen],[
-      $curl_includes_stdio
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_fdopen="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_fdopen="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_fdopen" = "yes"; then
-    AC_MSG_CHECKING([if fdopen is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stdio
-      ]],[[
-        if(0 != fdopen(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_fdopen="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_fdopen="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_fdopen" = "yes"; then
-    AC_MSG_CHECKING([if fdopen usage allowed])
-    if test "x$curl_disallow_fdopen" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_fdopen="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_fdopen="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if fdopen might be used])
-  if test "$tst_links_fdopen" = "yes" &&
-     test "$tst_proto_fdopen" = "yes" &&
-     test "$tst_compi_fdopen" = "yes" &&
-     test "$tst_allow_fdopen" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_FDOPEN, 1,
-      [Define to 1 if you have the fdopen function.])
-    ac_cv_func_fdopen="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_fdopen="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_FREEADDRINFO
-dnl -------------------------------------------------
-dnl Verify if freeaddrinfo is available, prototyped,
-dnl and can be compiled. If all of these are true,
-dnl and usage has not been previously disallowed with
-dnl shell variable curl_disallow_freeaddrinfo, then
-dnl HAVE_FREEADDRINFO will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_FREEADDRINFO], [
-  AC_REQUIRE([CURL_INCLUDES_WS2TCPIP])dnl
-  AC_REQUIRE([CURL_INCLUDES_SYS_SOCKET])dnl
-  AC_REQUIRE([CURL_INCLUDES_NETDB])dnl
-  #
-  tst_links_freeaddrinfo="unknown"
-  tst_proto_freeaddrinfo="unknown"
-  tst_compi_freeaddrinfo="unknown"
-  tst_allow_freeaddrinfo="unknown"
-  #
-  AC_MSG_CHECKING([if freeaddrinfo can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_ws2tcpip
-      $curl_includes_sys_socket
-      $curl_includes_netdb
-    ]],[[
-      freeaddrinfo(0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_freeaddrinfo="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_freeaddrinfo="no"
-  ])
-  #
-  if test "$tst_links_freeaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if freeaddrinfo is prototyped])
-    AC_EGREP_CPP([freeaddrinfo],[
-      $curl_includes_ws2tcpip
-      $curl_includes_sys_socket
-      $curl_includes_netdb
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_freeaddrinfo="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_freeaddrinfo="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_freeaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if freeaddrinfo is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_ws2tcpip
-        $curl_includes_sys_socket
-        $curl_includes_netdb
-      ]],[[
-        freeaddrinfo(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_freeaddrinfo="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_freeaddrinfo="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_freeaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if freeaddrinfo usage allowed])
-    if test "x$curl_disallow_freeaddrinfo" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_freeaddrinfo="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_freeaddrinfo="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if freeaddrinfo might be used])
-  if test "$tst_links_freeaddrinfo" = "yes" &&
-     test "$tst_proto_freeaddrinfo" = "yes" &&
-     test "$tst_compi_freeaddrinfo" = "yes" &&
-     test "$tst_allow_freeaddrinfo" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_FREEADDRINFO, 1,
-      [Define to 1 if you have the freeaddrinfo function.])
-    ac_cv_func_freeaddrinfo="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_freeaddrinfo="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_FREEIFADDRS
-dnl -------------------------------------------------
-dnl Verify if freeifaddrs is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_freeifaddrs, then
-dnl HAVE_FREEIFADDRS will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_FREEIFADDRS], [
-  AC_REQUIRE([CURL_INCLUDES_IFADDRS])dnl
-  #
-  tst_links_freeifaddrs="unknown"
-  tst_proto_freeifaddrs="unknown"
-  tst_compi_freeifaddrs="unknown"
-  tst_allow_freeifaddrs="unknown"
-  #
-  AC_MSG_CHECKING([if freeifaddrs can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([freeifaddrs])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_freeifaddrs="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_freeifaddrs="no"
-  ])
-  #
-  if test "$tst_links_freeifaddrs" = "yes"; then
-    AC_MSG_CHECKING([if freeifaddrs is prototyped])
-    AC_EGREP_CPP([freeifaddrs],[
-      $curl_includes_ifaddrs
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_freeifaddrs="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_freeifaddrs="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_freeifaddrs" = "yes"; then
-    AC_MSG_CHECKING([if freeifaddrs is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_ifaddrs
-      ]],[[
-        freeifaddrs(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_freeifaddrs="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_freeifaddrs="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_freeifaddrs" = "yes"; then
-    AC_MSG_CHECKING([if freeifaddrs usage allowed])
-    if test "x$curl_disallow_freeifaddrs" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_freeifaddrs="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_freeifaddrs="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if freeifaddrs might be used])
-  if test "$tst_links_freeifaddrs" = "yes" &&
-     test "$tst_proto_freeifaddrs" = "yes" &&
-     test "$tst_compi_freeifaddrs" = "yes" &&
-     test "$tst_allow_freeifaddrs" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_FREEIFADDRS, 1,
-      [Define to 1 if you have the freeifaddrs function.])
-    ac_cv_func_freeifaddrs="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_freeifaddrs="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_FTRUNCATE
-dnl -------------------------------------------------
-dnl Verify if ftruncate is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_ftruncate, then
-dnl HAVE_FTRUNCATE will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_FTRUNCATE], [
-  AC_REQUIRE([CURL_INCLUDES_UNISTD])dnl
-  #
-  tst_links_ftruncate="unknown"
-  tst_proto_ftruncate="unknown"
-  tst_compi_ftruncate="unknown"
-  tst_allow_ftruncate="unknown"
-  #
-  AC_MSG_CHECKING([if ftruncate can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([ftruncate])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_ftruncate="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_ftruncate="no"
-  ])
-  #
-  if test "$tst_links_ftruncate" = "yes"; then
-    AC_MSG_CHECKING([if ftruncate is prototyped])
-    AC_EGREP_CPP([ftruncate],[
-      $curl_includes_unistd
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_ftruncate="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_ftruncate="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_ftruncate" = "yes"; then
-    AC_MSG_CHECKING([if ftruncate is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_unistd
-      ]],[[
-        if(0 != ftruncate(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ftruncate="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ftruncate="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ftruncate" = "yes"; then
-    AC_MSG_CHECKING([if ftruncate usage allowed])
-    if test "x$curl_disallow_ftruncate" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ftruncate="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ftruncate="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if ftruncate might be used])
-  if test "$tst_links_ftruncate" = "yes" &&
-     test "$tst_proto_ftruncate" = "yes" &&
-     test "$tst_compi_ftruncate" = "yes" &&
-     test "$tst_allow_ftruncate" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_FTRUNCATE, 1,
-      [Define to 1 if you have the ftruncate function.])
-    ac_cv_func_ftruncate="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ftruncate="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_GETADDRINFO
-dnl -------------------------------------------------
-dnl Verify if getaddrinfo is available, prototyped, can
-dnl be compiled and seems to work. If all of these are
-dnl true, and usage has not been previously disallowed
-dnl with shell variable curl_disallow_getaddrinfo, then
-dnl HAVE_GETADDRINFO will be defined. Additionally when
-dnl HAVE_GETADDRINFO gets defined this will also attempt
-dnl to find out if getaddrinfo happens to be threadsafe,
-dnl defining HAVE_GETADDRINFO_THREADSAFE when true.
-
-AC_DEFUN([CURL_CHECK_FUNC_GETADDRINFO], [
-  AC_REQUIRE([CURL_INCLUDES_WS2TCPIP])dnl
-  AC_REQUIRE([CURL_INCLUDES_STDLIB])dnl
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  AC_REQUIRE([CURL_INCLUDES_SYS_SOCKET])dnl
-  AC_REQUIRE([CURL_INCLUDES_NETDB])dnl
-  #
-  tst_links_getaddrinfo="unknown"
-  tst_proto_getaddrinfo="unknown"
-  tst_compi_getaddrinfo="unknown"
-  tst_works_getaddrinfo="unknown"
-  tst_allow_getaddrinfo="unknown"
-  tst_tsafe_getaddrinfo="unknown"
-  #
-  AC_MSG_CHECKING([if getaddrinfo can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_ws2tcpip
-      $curl_includes_sys_socket
-      $curl_includes_netdb
-    ]],[[
-      if(0 != getaddrinfo(0, 0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_getaddrinfo="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_getaddrinfo="no"
-  ])
-  #
-  if test "$tst_links_getaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if getaddrinfo is prototyped])
-    AC_EGREP_CPP([getaddrinfo],[
-      $curl_includes_ws2tcpip
-      $curl_includes_sys_socket
-      $curl_includes_netdb
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_getaddrinfo="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_getaddrinfo="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_getaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if getaddrinfo is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_ws2tcpip
-        $curl_includes_sys_socket
-        $curl_includes_netdb
-      ]],[[
-        if(0 != getaddrinfo(0, 0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_getaddrinfo="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_getaddrinfo="no"
-    ])
-  fi
-  #
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_getaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if getaddrinfo seems to work])
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_ws2tcpip
-        $curl_includes_stdlib
-        $curl_includes_string
-        $curl_includes_sys_socket
-        $curl_includes_netdb
-      ]],[[
-        struct addrinfo hints;
-        struct addrinfo *ai = 0;
-        int error;
-
-        memset(&hints, 0, sizeof(hints));
-        hints.ai_flags = AI_NUMERICHOST;
-        hints.ai_family = AF_UNSPEC;
-        hints.ai_socktype = SOCK_STREAM;
-        error = getaddrinfo("127.0.0.1", 0, &hints, &ai);
-        if(error || !ai)
-          exit(1); /* fail */
-        else
-          exit(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_works_getaddrinfo="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_works_getaddrinfo="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_getaddrinfo" = "yes" &&
-    test "$tst_works_getaddrinfo" != "no"; then
-    AC_MSG_CHECKING([if getaddrinfo usage allowed])
-    if test "x$curl_disallow_getaddrinfo" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_getaddrinfo="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_getaddrinfo="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if getaddrinfo might be used])
-  if test "$tst_links_getaddrinfo" = "yes" &&
-     test "$tst_proto_getaddrinfo" = "yes" &&
-     test "$tst_compi_getaddrinfo" = "yes" &&
-     test "$tst_allow_getaddrinfo" = "yes" &&
-     test "$tst_works_getaddrinfo" != "no"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETADDRINFO, 1,
-      [Define to 1 if you have a working getaddrinfo function.])
-    ac_cv_func_getaddrinfo="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_getaddrinfo="no"
-    ac_cv_func_getaddrinfo_threadsafe="no"
-  fi
-  #
-  if test "$ac_cv_func_getaddrinfo" = "yes"; then
-    AC_MSG_CHECKING([if getaddrinfo is threadsafe])
-    case $host_os in
-      aix[[1234]].* | aix5.[[01]].*)
-        dnl aix 5.1 and older
-        tst_tsafe_getaddrinfo="no"
-        ;;
-      aix*)
-        dnl aix 5.2 and newer
-        tst_tsafe_getaddrinfo="yes"
-        ;;
-      darwin[[12345]].*)
-        dnl darwin 5.0 and mac os x 10.1.X and older
-        tst_tsafe_getaddrinfo="no"
-        ;;
-      darwin*)
-        dnl darwin 6.0 and mac os x 10.2.X and newer
-        tst_tsafe_getaddrinfo="yes"
-        ;;
-      freebsd[[1234]].* | freebsd5.[[1234]]*)
-        dnl freebsd 5.4 and older
-        tst_tsafe_getaddrinfo="no"
-        ;;
-      freebsd*)
-        dnl freebsd 5.5 and newer
-        tst_tsafe_getaddrinfo="yes"
-        ;;
-      hpux[[123456789]].* | hpux10.* | hpux11.0* | hpux11.10*)
-        dnl hpux 11.10 and older
-        tst_tsafe_getaddrinfo="no"
-        ;;
-      hpux*)
-        dnl hpux 11.11 and newer
-        tst_tsafe_getaddrinfo="yes"
-        ;;
-      netbsd[[123]].*)
-        dnl netbsd 3.X and older
-        tst_tsafe_getaddrinfo="no"
-        ;;
-      netbsd*)
-        dnl netbsd 4.X and newer
-        tst_tsafe_getaddrinfo="yes"
-        ;;
-      *bsd*)
-        dnl All other bsd's
-        tst_tsafe_getaddrinfo="no"
-        ;;
-      solaris2*)
-        dnl solaris which have it
-        tst_tsafe_getaddrinfo="yes"
-        ;;
-    esac
-    if test "$tst_tsafe_getaddrinfo" = "unknown"; then
-      CURL_CHECK_DEF_CC([h_errno], [
-        $curl_includes_ws2tcpip
-        $curl_includes_sys_socket
-        $curl_includes_netdb
-        ], [silent])
-      if test "$curl_cv_have_def_h_errno" = "no"; then
-        tst_tsafe_getaddrinfo="no"
-      fi
-    fi
-    if test "$tst_tsafe_getaddrinfo" = "unknown"; then
-      tst_tsafe_getaddrinfo="yes"
-    fi
-    AC_MSG_RESULT([$tst_tsafe_getaddrinfo])
-    if test "$tst_tsafe_getaddrinfo" = "yes"; then
-      AC_DEFINE_UNQUOTED(HAVE_GETADDRINFO_THREADSAFE, 1,
-        [Define to 1 if the getaddrinfo function is threadsafe.])
-      ac_cv_func_getaddrinfo_threadsafe="yes"
-    else
-      ac_cv_func_getaddrinfo_threadsafe="no"
-    fi
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_GETHOSTBYADDR
-dnl -------------------------------------------------
-dnl Verify if gethostbyaddr is available, prototyped,
-dnl and can be compiled. If all of these are true,
-dnl and usage has not been previously disallowed with
-dnl shell variable curl_disallow_gethostbyaddr, then
-dnl HAVE_GETHOSTBYADDR will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_GETHOSTBYADDR], [
-  AC_REQUIRE([CURL_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CURL_INCLUDES_NETDB])dnl
-  #
-  tst_links_gethostbyaddr="unknown"
-  tst_proto_gethostbyaddr="unknown"
-  tst_compi_gethostbyaddr="unknown"
-  tst_allow_gethostbyaddr="unknown"
-  #
-  AC_MSG_CHECKING([if gethostbyaddr can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_winsock2
-      $curl_includes_netdb
-    ]],[[
-      if(0 != gethostbyaddr(0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_gethostbyaddr="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_gethostbyaddr="no"
-  ])
-  #
-  if test "$tst_links_gethostbyaddr" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyaddr is prototyped])
-    AC_EGREP_CPP([gethostbyaddr],[
-      $curl_includes_winsock2
-      $curl_includes_netdb
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_gethostbyaddr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_gethostbyaddr="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_gethostbyaddr" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyaddr is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_winsock2
-        $curl_includes_netdb
-      ]],[[
-        if(0 != gethostbyaddr(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_gethostbyaddr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_gethostbyaddr="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_gethostbyaddr" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyaddr usage allowed])
-    if test "x$curl_disallow_gethostbyaddr" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_gethostbyaddr="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_gethostbyaddr="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if gethostbyaddr might be used])
-  if test "$tst_links_gethostbyaddr" = "yes" &&
-     test "$tst_proto_gethostbyaddr" = "yes" &&
-     test "$tst_compi_gethostbyaddr" = "yes" &&
-     test "$tst_allow_gethostbyaddr" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETHOSTBYADDR, 1,
-      [Define to 1 if you have the gethostbyaddr function.])
-    ac_cv_func_gethostbyaddr="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_gethostbyaddr="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_GETHOSTBYADDR_R
-dnl -------------------------------------------------
-dnl Verify if gethostbyaddr_r is available, prototyped,
-dnl and can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_gethostbyaddr_r, then
-dnl HAVE_GETHOSTBYADDR_R will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_GETHOSTBYADDR_R], [
-  AC_REQUIRE([CURL_INCLUDES_NETDB])dnl
-  #
-  tst_links_gethostbyaddr_r="unknown"
-  tst_proto_gethostbyaddr_r="unknown"
-  tst_compi_gethostbyaddr_r="unknown"
-  tst_allow_gethostbyaddr_r="unknown"
-  tst_nargs_gethostbyaddr_r="unknown"
-  #
-  AC_MSG_CHECKING([if gethostbyaddr_r can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([gethostbyaddr_r])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_gethostbyaddr_r="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_gethostbyaddr_r="no"
-  ])
-  #
-  if test "$tst_links_gethostbyaddr_r" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyaddr_r is prototyped])
-    AC_EGREP_CPP([gethostbyaddr_r],[
-      $curl_includes_netdb
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_gethostbyaddr_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_gethostbyaddr_r="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_gethostbyaddr_r" = "yes"; then
-    if test "$tst_nargs_gethostbyaddr_r" = "unknown"; then
-      AC_MSG_CHECKING([if gethostbyaddr_r takes 5 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_netdb
-        ]],[[
-          if(0 != gethostbyaddr_r(0, 0, 0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_gethostbyaddr_r="yes"
-        tst_nargs_gethostbyaddr_r="5"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_gethostbyaddr_r="no"
-      ])
-    fi
-    if test "$tst_nargs_gethostbyaddr_r" = "unknown"; then
-      AC_MSG_CHECKING([if gethostbyaddr_r takes 7 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_netdb
-        ]],[[
-          if(0 != gethostbyaddr_r(0, 0, 0, 0, 0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_gethostbyaddr_r="yes"
-        tst_nargs_gethostbyaddr_r="7"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_gethostbyaddr_r="no"
-      ])
-    fi
-    if test "$tst_nargs_gethostbyaddr_r" = "unknown"; then
-      AC_MSG_CHECKING([if gethostbyaddr_r takes 8 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_netdb
-        ]],[[
-          if(0 != gethostbyaddr_r(0, 0, 0, 0, 0, 0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_gethostbyaddr_r="yes"
-        tst_nargs_gethostbyaddr_r="8"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_gethostbyaddr_r="no"
-      ])
-    fi
-    AC_MSG_CHECKING([if gethostbyaddr_r is compilable])
-    if test "$tst_compi_gethostbyaddr_r" = "yes"; then
-      AC_MSG_RESULT([yes])
-    else
-      AC_MSG_RESULT([no])
-    fi
-  fi
-  #
-  if test "$tst_compi_gethostbyaddr_r" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyaddr_r usage allowed])
-    if test "x$curl_disallow_gethostbyaddr_r" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_gethostbyaddr_r="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_gethostbyaddr_r="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if gethostbyaddr_r might be used])
-  if test "$tst_links_gethostbyaddr_r" = "yes" &&
-     test "$tst_proto_gethostbyaddr_r" = "yes" &&
-     test "$tst_compi_gethostbyaddr_r" = "yes" &&
-     test "$tst_allow_gethostbyaddr_r" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETHOSTBYADDR_R, 1,
-      [Define to 1 if you have the gethostbyaddr_r function.])
-    dnl AC_DEFINE_UNQUOTED(GETHOSTBYADDR_R_ARGS, $tst_nargs_gethostbyaddr_r,
-    dnl   [Specifies the number of arguments to gethostbyaddr_r])
-    #
-    if test "$tst_nargs_gethostbyaddr_r" -eq "5"; then
-      AC_DEFINE(HAVE_GETHOSTBYADDR_R_5, 1, [gethostbyaddr_r() takes 5 args])
-    elif test "$tst_nargs_gethostbyaddr_r" -eq "7"; then
-      AC_DEFINE(HAVE_GETHOSTBYADDR_R_7, 1, [gethostbyaddr_r() takes 7 args])
-    elif test "$tst_nargs_gethostbyaddr_r" -eq "8"; then
-      AC_DEFINE(HAVE_GETHOSTBYADDR_R_8, 1, [gethostbyaddr_r() takes 8 args])
-    fi
-    #
-    ac_cv_func_gethostbyaddr_r="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_gethostbyaddr_r="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_GETHOSTBYNAME
-dnl -------------------------------------------------
-dnl Verify if gethostbyname is available, prototyped,
-dnl and can be compiled. If all of these are true,
-dnl and usage has not been previously disallowed with
-dnl shell variable curl_disallow_gethostbyname, then
-dnl HAVE_GETHOSTBYNAME will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_GETHOSTBYNAME], [
-  AC_REQUIRE([CURL_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CURL_INCLUDES_NETDB])dnl
-  #
-  tst_links_gethostbyname="unknown"
-  tst_proto_gethostbyname="unknown"
-  tst_compi_gethostbyname="unknown"
-  tst_allow_gethostbyname="unknown"
-  #
-  AC_MSG_CHECKING([if gethostbyname can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_winsock2
-      $curl_includes_netdb
-    ]],[[
-      if(0 != gethostbyname(0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_gethostbyname="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_gethostbyname="no"
-  ])
-  #
-  if test "$tst_links_gethostbyname" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyname is prototyped])
-    AC_EGREP_CPP([gethostbyname],[
-      $curl_includes_winsock2
-      $curl_includes_netdb
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_gethostbyname="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_gethostbyname="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_gethostbyname" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyname is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_winsock2
-        $curl_includes_netdb
-      ]],[[
-        if(0 != gethostbyname(0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_gethostbyname="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_gethostbyname="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_gethostbyname" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyname usage allowed])
-    if test "x$curl_disallow_gethostbyname" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_gethostbyname="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_gethostbyname="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if gethostbyname might be used])
-  if test "$tst_links_gethostbyname" = "yes" &&
-     test "$tst_proto_gethostbyname" = "yes" &&
-     test "$tst_compi_gethostbyname" = "yes" &&
-     test "$tst_allow_gethostbyname" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETHOSTBYNAME, 1,
-      [Define to 1 if you have the gethostbyname function.])
-    ac_cv_func_gethostbyname="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_gethostbyname="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_GETHOSTBYNAME_R
-dnl -------------------------------------------------
-dnl Verify if gethostbyname_r is available, prototyped,
-dnl and can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_gethostbyname_r, then
-dnl HAVE_GETHOSTBYNAME_R will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_GETHOSTBYNAME_R], [
-  AC_REQUIRE([CURL_INCLUDES_NETDB])dnl
-  #
-  tst_links_gethostbyname_r="unknown"
-  tst_proto_gethostbyname_r="unknown"
-  tst_compi_gethostbyname_r="unknown"
-  tst_allow_gethostbyname_r="unknown"
-  tst_nargs_gethostbyname_r="unknown"
-  #
-  AC_MSG_CHECKING([if gethostbyname_r can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([gethostbyname_r])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_gethostbyname_r="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_gethostbyname_r="no"
-  ])
-  #
-  if test "$tst_links_gethostbyname_r" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyname_r is prototyped])
-    AC_EGREP_CPP([gethostbyname_r],[
-      $curl_includes_netdb
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_gethostbyname_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_gethostbyname_r="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_gethostbyname_r" = "yes"; then
-    if test "$tst_nargs_gethostbyname_r" = "unknown"; then
-      AC_MSG_CHECKING([if gethostbyname_r takes 3 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_netdb
-        ]],[[
-          if(0 != gethostbyname_r(0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_gethostbyname_r="yes"
-        tst_nargs_gethostbyname_r="3"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_gethostbyname_r="no"
-      ])
-    fi
-    if test "$tst_nargs_gethostbyname_r" = "unknown"; then
-      AC_MSG_CHECKING([if gethostbyname_r takes 5 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_netdb
-        ]],[[
-          if(0 != gethostbyname_r(0, 0, 0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_gethostbyname_r="yes"
-        tst_nargs_gethostbyname_r="5"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_gethostbyname_r="no"
-      ])
-    fi
-    if test "$tst_nargs_gethostbyname_r" = "unknown"; then
-      AC_MSG_CHECKING([if gethostbyname_r takes 6 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_netdb
-        ]],[[
-          if(0 != gethostbyname_r(0, 0, 0, 0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_gethostbyname_r="yes"
-        tst_nargs_gethostbyname_r="6"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_gethostbyname_r="no"
-      ])
-    fi
-    AC_MSG_CHECKING([if gethostbyname_r is compilable])
-    if test "$tst_compi_gethostbyname_r" = "yes"; then
-      AC_MSG_RESULT([yes])
-    else
-      AC_MSG_RESULT([no])
-    fi
-  fi
-  #
-  if test "$tst_compi_gethostbyname_r" = "yes"; then
-    AC_MSG_CHECKING([if gethostbyname_r usage allowed])
-    if test "x$curl_disallow_gethostbyname_r" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_gethostbyname_r="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_gethostbyname_r="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if gethostbyname_r might be used])
-  if test "$tst_links_gethostbyname_r" = "yes" &&
-     test "$tst_proto_gethostbyname_r" = "yes" &&
-     test "$tst_compi_gethostbyname_r" = "yes" &&
-     test "$tst_allow_gethostbyname_r" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETHOSTBYNAME_R, 1,
-      [Define to 1 if you have the gethostbyname_r function.])
-    dnl AC_DEFINE_UNQUOTED(GETHOSTBYNAME_R_ARGS, $tst_nargs_gethostbyname_r,
-    dnl   [Specifies the number of arguments to gethostbyname_r])
-    #
-    if test "$tst_nargs_gethostbyname_r" -eq "3"; then
-      AC_DEFINE(HAVE_GETHOSTBYNAME_R_3, 1, [gethostbyname_r() takes 3 args])
-    elif test "$tst_nargs_gethostbyname_r" -eq "5"; then
-      AC_DEFINE(HAVE_GETHOSTBYNAME_R_5, 1, [gethostbyname_r() takes 5 args])
-    elif test "$tst_nargs_gethostbyname_r" -eq "6"; then
-      AC_DEFINE(HAVE_GETHOSTBYNAME_R_6, 1, [gethostbyname_r() takes 6 args])
-    fi
-    #
-    ac_cv_func_gethostbyname_r="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_gethostbyname_r="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_GETHOSTNAME
-dnl -------------------------------------------------
-dnl Verify if gethostname is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_gethostname, then
-dnl HAVE_GETHOSTNAME will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_GETHOSTNAME], [
-  AC_REQUIRE([CURL_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CURL_INCLUDES_UNISTD])dnl
-  #
-  tst_links_gethostname="unknown"
-  tst_proto_gethostname="unknown"
-  tst_compi_gethostname="unknown"
-  tst_allow_gethostname="unknown"
-  #
-  AC_MSG_CHECKING([if gethostname can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_winsock2
-      $curl_includes_unistd
-    ]],[[
-      if(0 != gethostname(0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_gethostname="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_gethostname="no"
-  ])
-  #
-  if test "$tst_links_gethostname" = "yes"; then
-    AC_MSG_CHECKING([if gethostname is prototyped])
-    AC_EGREP_CPP([gethostname],[
-      $curl_includes_winsock2
-      $curl_includes_unistd
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_gethostname="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_gethostname="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_gethostname" = "yes"; then
-    AC_MSG_CHECKING([if gethostname is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_winsock2
-        $curl_includes_unistd
-      ]],[[
-        if(0 != gethostname(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_gethostname="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_gethostname="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_gethostname" = "yes"; then
-    AC_MSG_CHECKING([if gethostname usage allowed])
-    if test "x$curl_disallow_gethostname" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_gethostname="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_gethostname="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if gethostname might be used])
-  if test "$tst_links_gethostname" = "yes" &&
-     test "$tst_proto_gethostname" = "yes" &&
-     test "$tst_compi_gethostname" = "yes" &&
-     test "$tst_allow_gethostname" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETHOSTNAME, 1,
-      [Define to 1 if you have the gethostname function.])
-    ac_cv_func_gethostname="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_gethostname="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_GETIFADDRS
-dnl -------------------------------------------------
-dnl Verify if getifaddrs is available, prototyped, can
-dnl be compiled and seems to work. If all of these are
-dnl true, and usage has not been previously disallowed
-dnl with shell variable curl_disallow_getifaddrs, then
-dnl HAVE_GETIFADDRS will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_GETIFADDRS], [
-  AC_REQUIRE([CURL_INCLUDES_STDLIB])dnl
-  AC_REQUIRE([CURL_INCLUDES_IFADDRS])dnl
-  #
-  tst_links_getifaddrs="unknown"
-  tst_proto_getifaddrs="unknown"
-  tst_compi_getifaddrs="unknown"
-  tst_works_getifaddrs="unknown"
-  tst_allow_getifaddrs="unknown"
-  #
-  AC_MSG_CHECKING([if getifaddrs can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([getifaddrs])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_getifaddrs="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_getifaddrs="no"
-  ])
-  #
-  if test "$tst_links_getifaddrs" = "yes"; then
-    AC_MSG_CHECKING([if getifaddrs is prototyped])
-    AC_EGREP_CPP([getifaddrs],[
-      $curl_includes_ifaddrs
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_getifaddrs="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_getifaddrs="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_getifaddrs" = "yes"; then
-    AC_MSG_CHECKING([if getifaddrs is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_ifaddrs
-      ]],[[
-        if(0 != getifaddrs(0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_getifaddrs="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_getifaddrs="no"
-    ])
-  fi
-  #
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_getifaddrs" = "yes"; then
-    AC_MSG_CHECKING([if getifaddrs seems to work])
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stdlib
-        $curl_includes_ifaddrs
-      ]],[[
-        struct ifaddrs *ifa = 0;
-        int error;
-
-        error = getifaddrs(&ifa);
-        if(error || !ifa)
-          exit(1); /* fail */
-        else
-          exit(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_works_getifaddrs="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_works_getifaddrs="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_getifaddrs" = "yes" &&
-    test "$tst_works_getifaddrs" != "no"; then
-    AC_MSG_CHECKING([if getifaddrs usage allowed])
-    if test "x$curl_disallow_getifaddrs" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_getifaddrs="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_getifaddrs="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if getifaddrs might be used])
-  if test "$tst_links_getifaddrs" = "yes" &&
-     test "$tst_proto_getifaddrs" = "yes" &&
-     test "$tst_compi_getifaddrs" = "yes" &&
-     test "$tst_allow_getifaddrs" = "yes" &&
-     test "$tst_works_getifaddrs" != "no"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETIFADDRS, 1,
-      [Define to 1 if you have a working getifaddrs function.])
-    ac_cv_func_getifaddrs="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_getifaddrs="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_GETSERVBYPORT_R
-dnl -------------------------------------------------
-dnl Verify if getservbyport_r is available, prototyped,
-dnl and can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_getservbyport_r, then
-dnl HAVE_GETSERVBYPORT_R will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_GETSERVBYPORT_R], [
-  AC_REQUIRE([CURL_INCLUDES_NETDB])dnl
-  #
-  tst_links_getservbyport_r="unknown"
-  tst_proto_getservbyport_r="unknown"
-  tst_compi_getservbyport_r="unknown"
-  tst_allow_getservbyport_r="unknown"
-  tst_nargs_getservbyport_r="unknown"
-  #
-  AC_MSG_CHECKING([if getservbyport_r can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([getservbyport_r])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_getservbyport_r="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_getservbyport_r="no"
-  ])
-  #
-  if test "$tst_links_getservbyport_r" = "yes"; then
-    AC_MSG_CHECKING([if getservbyport_r is prototyped])
-    AC_EGREP_CPP([getservbyport_r],[
-      $curl_includes_netdb
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_getservbyport_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_getservbyport_r="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_getservbyport_r" = "yes"; then
-    if test "$tst_nargs_getservbyport_r" = "unknown"; then
-      AC_MSG_CHECKING([if getservbyport_r takes 4 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_netdb
-        ]],[[
-          if(0 != getservbyport_r(0, 0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_getservbyport_r="yes"
-        tst_nargs_getservbyport_r="4"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_getservbyport_r="no"
-      ])
-    fi
-    if test "$tst_nargs_getservbyport_r" = "unknown"; then
-      AC_MSG_CHECKING([if getservbyport_r takes 5 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_netdb
-        ]],[[
-          if(0 != getservbyport_r(0, 0, 0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_getservbyport_r="yes"
-        tst_nargs_getservbyport_r="5"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_getservbyport_r="no"
-      ])
-    fi
-    if test "$tst_nargs_getservbyport_r" = "unknown"; then
-      AC_MSG_CHECKING([if getservbyport_r takes 6 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_netdb
-        ]],[[
-          if(0 != getservbyport_r(0, 0, 0, 0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_getservbyport_r="yes"
-        tst_nargs_getservbyport_r="6"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_getservbyport_r="no"
-      ])
-    fi
-    AC_MSG_CHECKING([if getservbyport_r is compilable])
-    if test "$tst_compi_getservbyport_r" = "yes"; then
-      AC_MSG_RESULT([yes])
-    else
-      AC_MSG_RESULT([no])
-    fi
-  fi
-  #
-  if test "$tst_compi_getservbyport_r" = "yes"; then
-    AC_MSG_CHECKING([if getservbyport_r usage allowed])
-    if test "x$curl_disallow_getservbyport_r" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_getservbyport_r="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_getservbyport_r="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if getservbyport_r might be used])
-  if test "$tst_links_getservbyport_r" = "yes" &&
-     test "$tst_proto_getservbyport_r" = "yes" &&
-     test "$tst_compi_getservbyport_r" = "yes" &&
-     test "$tst_allow_getservbyport_r" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GETSERVBYPORT_R, 1,
-      [Define to 1 if you have the getservbyport_r function.])
-    AC_DEFINE_UNQUOTED(GETSERVBYPORT_R_ARGS, $tst_nargs_getservbyport_r,
-      [Specifies the number of arguments to getservbyport_r])
-    if test "$tst_nargs_getservbyport_r" -eq "4"; then
-      AC_DEFINE(GETSERVBYPORT_R_BUFSIZE, sizeof(struct servent_data),
-        [Specifies the size of the buffer to pass to getservbyport_r])
-    else
-      AC_DEFINE(GETSERVBYPORT_R_BUFSIZE, 4096,
-        [Specifies the size of the buffer to pass to getservbyport_r])
-    fi
-    ac_cv_func_getservbyport_r="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_getservbyport_r="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_GMTIME_R
-dnl -------------------------------------------------
-dnl Verify if gmtime_r is available, prototyped, can
-dnl be compiled and seems to work. If all of these are
-dnl true, and usage has not been previously disallowed
-dnl with shell variable curl_disallow_gmtime_r, then
-dnl HAVE_GMTIME_R will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_GMTIME_R], [
-  AC_REQUIRE([CURL_INCLUDES_STDLIB])dnl
-  AC_REQUIRE([CURL_INCLUDES_TIME])dnl
-  #
-  tst_links_gmtime_r="unknown"
-  tst_proto_gmtime_r="unknown"
-  tst_compi_gmtime_r="unknown"
-  tst_works_gmtime_r="unknown"
-  tst_allow_gmtime_r="unknown"
-  #
-  AC_MSG_CHECKING([if gmtime_r can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([gmtime_r])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_gmtime_r="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_gmtime_r="no"
-  ])
-  #
-  if test "$tst_links_gmtime_r" = "yes"; then
-    AC_MSG_CHECKING([if gmtime_r is prototyped])
-    AC_EGREP_CPP([gmtime_r],[
-      $curl_includes_time
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_gmtime_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_gmtime_r="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_gmtime_r" = "yes"; then
-    AC_MSG_CHECKING([if gmtime_r is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_time
-      ]],[[
-        if(0 != gmtime_r(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_gmtime_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_gmtime_r="no"
-    ])
-  fi
-  #
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_gmtime_r" = "yes"; then
-    AC_MSG_CHECKING([if gmtime_r seems to work])
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stdlib
-        $curl_includes_time
-      ]],[[
-        time_t local = 1170352587;
-        struct tm *gmt = 0;
-        struct tm result;
-        gmt = gmtime_r(&local, &result);
-        if(gmt)
-          exit(0);
-        else
-          exit(1);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_works_gmtime_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_works_gmtime_r="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_gmtime_r" = "yes" &&
-    test "$tst_works_gmtime_r" != "no"; then
-    AC_MSG_CHECKING([if gmtime_r usage allowed])
-    if test "x$curl_disallow_gmtime_r" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_gmtime_r="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_gmtime_r="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if gmtime_r might be used])
-  if test "$tst_links_gmtime_r" = "yes" &&
-     test "$tst_proto_gmtime_r" = "yes" &&
-     test "$tst_compi_gmtime_r" = "yes" &&
-     test "$tst_allow_gmtime_r" = "yes" &&
-     test "$tst_works_gmtime_r" != "no"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_GMTIME_R, 1,
-      [Define to 1 if you have a working gmtime_r function.])
-    ac_cv_func_gmtime_r="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_gmtime_r="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_INET_NTOA_R
-dnl -------------------------------------------------
-dnl Verify if inet_ntoa_r is available, prototyped,
-dnl and can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_inet_ntoa_r, then
-dnl HAVE_INET_NTOA_R will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_INET_NTOA_R], [
-  AC_REQUIRE([CURL_INCLUDES_ARPA_INET])dnl
-  #
-  tst_links_inet_ntoa_r="unknown"
-  tst_proto_inet_ntoa_r="unknown"
-  tst_compi_inet_ntoa_r="unknown"
-  tst_allow_inet_ntoa_r="unknown"
-  tst_nargs_inet_ntoa_r="unknown"
-  #
-  AC_MSG_CHECKING([if inet_ntoa_r can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([inet_ntoa_r])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_inet_ntoa_r="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_inet_ntoa_r="no"
-  ])
-  #
-  if test "$tst_links_inet_ntoa_r" = "yes"; then
-    AC_MSG_CHECKING([if inet_ntoa_r is prototyped])
-    AC_EGREP_CPP([inet_ntoa_r],[
-      $curl_includes_arpa_inet
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_inet_ntoa_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_inet_ntoa_r="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_inet_ntoa_r" = "yes"; then
-    if test "$tst_nargs_inet_ntoa_r" = "unknown"; then
-      AC_MSG_CHECKING([if inet_ntoa_r takes 2 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_arpa_inet
-        ]],[[
-          struct in_addr addr;
-          if(0 != inet_ntoa_r(addr, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_inet_ntoa_r="yes"
-        tst_nargs_inet_ntoa_r="2"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_inet_ntoa_r="no"
-      ])
-    fi
-    if test "$tst_nargs_inet_ntoa_r" = "unknown"; then
-      AC_MSG_CHECKING([if inet_ntoa_r takes 3 args.])
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_arpa_inet
-        ]],[[
-          struct in_addr addr;
-          if(0 != inet_ntoa_r(addr, 0, 0))
-            return 1;
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        tst_compi_inet_ntoa_r="yes"
-        tst_nargs_inet_ntoa_r="3"
-      ],[
-        AC_MSG_RESULT([no])
-        tst_compi_inet_ntoa_r="no"
-      ])
-    fi
-    AC_MSG_CHECKING([if inet_ntoa_r is compilable])
-    if test "$tst_compi_inet_ntoa_r" = "yes"; then
-      AC_MSG_RESULT([yes])
-    else
-      AC_MSG_RESULT([no])
-    fi
-  fi
-  #
-  if test "$tst_compi_inet_ntoa_r" = "yes"; then
-    AC_MSG_CHECKING([if inet_ntoa_r usage allowed])
-    if test "x$curl_disallow_inet_ntoa_r" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_inet_ntoa_r="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_inet_ntoa_r="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if inet_ntoa_r might be used])
-  if test "$tst_links_inet_ntoa_r" = "yes" &&
-     test "$tst_proto_inet_ntoa_r" = "yes" &&
-     test "$tst_compi_inet_ntoa_r" = "yes" &&
-     test "$tst_allow_inet_ntoa_r" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_INET_NTOA_R, 1,
-      [Define to 1 if you have the inet_ntoa_r function.])
-    dnl AC_DEFINE_UNQUOTED(INET_NTOA_R_ARGS, $tst_nargs_inet_ntoa_r,
-    dnl   [Specifies the number of arguments to inet_ntoa_r])
-    #
-    if test "$tst_nargs_inet_ntoa_r" -eq "2"; then
-      AC_DEFINE(HAVE_INET_NTOA_R_2, 1, [inet_ntoa_r() takes 2 args])
-    elif test "$tst_nargs_inet_ntoa_r" -eq "3"; then
-      AC_DEFINE(HAVE_INET_NTOA_R_3, 1, [inet_ntoa_r() takes 3 args])
-    fi
-    #
-    ac_cv_func_inet_ntoa_r="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_inet_ntoa_r="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_INET_NTOP
-dnl -------------------------------------------------
-dnl Verify if inet_ntop is available, prototyped, can
-dnl be compiled and seems to work. If all of these are
-dnl true, and usage has not been previously disallowed
-dnl with shell variable curl_disallow_inet_ntop, then
-dnl HAVE_INET_NTOP will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_INET_NTOP], [
-  AC_REQUIRE([CURL_INCLUDES_STDLIB])dnl
-  AC_REQUIRE([CURL_INCLUDES_ARPA_INET])dnl
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_inet_ntop="unknown"
-  tst_proto_inet_ntop="unknown"
-  tst_compi_inet_ntop="unknown"
-  tst_works_inet_ntop="unknown"
-  tst_allow_inet_ntop="unknown"
-  #
-  AC_MSG_CHECKING([if inet_ntop can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([inet_ntop])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_inet_ntop="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_inet_ntop="no"
-  ])
-  #
-  if test "$tst_links_inet_ntop" = "yes"; then
-    AC_MSG_CHECKING([if inet_ntop is prototyped])
-    AC_EGREP_CPP([inet_ntop],[
-      $curl_includes_arpa_inet
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_inet_ntop="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_inet_ntop="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_inet_ntop" = "yes"; then
-    AC_MSG_CHECKING([if inet_ntop is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_arpa_inet
-      ]],[[
-        if(0 != inet_ntop(0, 0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_inet_ntop="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_inet_ntop="no"
-    ])
-  fi
-  #
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_inet_ntop" = "yes"; then
-    AC_MSG_CHECKING([if inet_ntop seems to work])
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stdlib
-        $curl_includes_arpa_inet
-        $curl_includes_string
-      ]],[[
-        char ipv6res[sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255")];
-        char ipv4res[sizeof "255.255.255.255"];
-        unsigned char ipv6a[26];
-        unsigned char ipv4a[5];
-        char *ipv6ptr = 0;
-        char *ipv4ptr = 0;
-        /* - */
-        ipv4res[0] = '\0';
-        ipv4a[0] = 0xc0;
-        ipv4a[1] = 0xa8;
-        ipv4a[2] = 0x64;
-        ipv4a[3] = 0x01;
-        ipv4a[4] = 0x01;
-        /* - */
-        ipv4ptr = inet_ntop(AF_INET, ipv4a, ipv4res, sizeof(ipv4res));
-        if(!ipv4ptr)
-          exit(1); /* fail */
-        if(ipv4ptr != ipv4res)
-          exit(1); /* fail */
-        if(!ipv4ptr[0])
-          exit(1); /* fail */
-        if(memcmp(ipv4res, "192.168.100.1", 13) != 0)
-          exit(1); /* fail */
-        /* - */
-        ipv6res[0] = '\0';
-        memset(ipv6a, 0, sizeof(ipv6a));
-        ipv6a[0] = 0xfe;
-        ipv6a[1] = 0x80;
-        ipv6a[8] = 0x02;
-        ipv6a[9] = 0x14;
-        ipv6a[10] = 0x4f;
-        ipv6a[11] = 0xff;
-        ipv6a[12] = 0xfe;
-        ipv6a[13] = 0x0b;
-        ipv6a[14] = 0x76;
-        ipv6a[15] = 0xc8;
-        ipv6a[25] = 0x01;
-        /* - */
-        ipv6ptr = inet_ntop(AF_INET6, ipv6a, ipv6res, sizeof(ipv6res));
-        if(!ipv6ptr)
-          exit(1); /* fail */
-        if(ipv6ptr != ipv6res)
-          exit(1); /* fail */
-        if(!ipv6ptr[0])
-          exit(1); /* fail */
-        if(memcmp(ipv6res, "fe80::214:4fff:fe0b:76c8", 24) != 0)
-          exit(1); /* fail */
-        /* - */
-        exit(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_works_inet_ntop="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_works_inet_ntop="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_inet_ntop" = "yes" &&
-    test "$tst_works_inet_ntop" != "no"; then
-    AC_MSG_CHECKING([if inet_ntop usage allowed])
-    if test "x$curl_disallow_inet_ntop" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_inet_ntop="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_inet_ntop="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if inet_ntop might be used])
-  if test "$tst_links_inet_ntop" = "yes" &&
-     test "$tst_proto_inet_ntop" = "yes" &&
-     test "$tst_compi_inet_ntop" = "yes" &&
-     test "$tst_allow_inet_ntop" = "yes" &&
-     test "$tst_works_inet_ntop" != "no"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_INET_NTOP, 1,
-      [Define to 1 if you have a IPv6 capable working inet_ntop function.])
-    ac_cv_func_inet_ntop="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_inet_ntop="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_INET_PTON
-dnl -------------------------------------------------
-dnl Verify if inet_pton is available, prototyped, can
-dnl be compiled and seems to work. If all of these are
-dnl true, and usage has not been previously disallowed
-dnl with shell variable curl_disallow_inet_pton, then
-dnl HAVE_INET_PTON will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_INET_PTON], [
-  AC_REQUIRE([CURL_INCLUDES_STDLIB])dnl
-  AC_REQUIRE([CURL_INCLUDES_ARPA_INET])dnl
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_inet_pton="unknown"
-  tst_proto_inet_pton="unknown"
-  tst_compi_inet_pton="unknown"
-  tst_works_inet_pton="unknown"
-  tst_allow_inet_pton="unknown"
-  #
-  AC_MSG_CHECKING([if inet_pton can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([inet_pton])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_inet_pton="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_inet_pton="no"
-  ])
-  #
-  if test "$tst_links_inet_pton" = "yes"; then
-    AC_MSG_CHECKING([if inet_pton is prototyped])
-    AC_EGREP_CPP([inet_pton],[
-      $curl_includes_arpa_inet
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_inet_pton="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_inet_pton="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_inet_pton" = "yes"; then
-    AC_MSG_CHECKING([if inet_pton is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_arpa_inet
-      ]],[[
-        if(0 != inet_pton(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_inet_pton="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_inet_pton="no"
-    ])
-  fi
-  #
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_inet_pton" = "yes"; then
-    AC_MSG_CHECKING([if inet_pton seems to work])
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stdlib
-        $curl_includes_arpa_inet
-        $curl_includes_string
-      ]],[[
-        unsigned char ipv6a[16+1];
-        unsigned char ipv4a[4+1];
-        const char *ipv6src = "fe80::214:4fff:fe0b:76c8";
-        const char *ipv4src = "192.168.100.1";
-        /* - */
-        memset(ipv4a, 1, sizeof(ipv4a));
-        if(1 != inet_pton(AF_INET, ipv4src, ipv4a))
-          exit(1); /* fail */
-        /* - */
-        if( (ipv4a[0] != 0xc0) ||
-            (ipv4a[1] != 0xa8) ||
-            (ipv4a[2] != 0x64) ||
-            (ipv4a[3] != 0x01) ||
-            (ipv4a[4] != 0x01) )
-          exit(1); /* fail */
-        /* - */
-        memset(ipv6a, 1, sizeof(ipv6a));
-        if(1 != inet_pton(AF_INET6, ipv6src, ipv6a))
-          exit(1); /* fail */
-        /* - */
-        if( (ipv6a[0]  != 0xfe) ||
-            (ipv6a[1]  != 0x80) ||
-            (ipv6a[8]  != 0x02) ||
-            (ipv6a[9]  != 0x14) ||
-            (ipv6a[10] != 0x4f) ||
-            (ipv6a[11] != 0xff) ||
-            (ipv6a[12] != 0xfe) ||
-            (ipv6a[13] != 0x0b) ||
-            (ipv6a[14] != 0x76) ||
-            (ipv6a[15] != 0xc8) ||
-            (ipv6a[16] != 0x01) )
-          exit(1); /* fail */
-        /* - */
-        if( (ipv6a[2]  != 0x0) ||
-            (ipv6a[3]  != 0x0) ||
-            (ipv6a[4]  != 0x0) ||
-            (ipv6a[5]  != 0x0) ||
-            (ipv6a[6]  != 0x0) ||
-            (ipv6a[7]  != 0x0) )
-          exit(1); /* fail */
-        /* - */
-        exit(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_works_inet_pton="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_works_inet_pton="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_inet_pton" = "yes" &&
-    test "$tst_works_inet_pton" != "no"; then
-    AC_MSG_CHECKING([if inet_pton usage allowed])
-    if test "x$curl_disallow_inet_pton" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_inet_pton="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_inet_pton="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if inet_pton might be used])
-  if test "$tst_links_inet_pton" = "yes" &&
-     test "$tst_proto_inet_pton" = "yes" &&
-     test "$tst_compi_inet_pton" = "yes" &&
-     test "$tst_allow_inet_pton" = "yes" &&
-     test "$tst_works_inet_pton" != "no"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_INET_PTON, 1,
-      [Define to 1 if you have a IPv6 capable working inet_pton function.])
-    ac_cv_func_inet_pton="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_inet_pton="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_IOCTL
-dnl -------------------------------------------------
-dnl Verify if ioctl is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_ioctl, then
-dnl HAVE_IOCTL will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_IOCTL], [
-  AC_REQUIRE([CURL_INCLUDES_STROPTS])dnl
-  #
-  tst_links_ioctl="unknown"
-  tst_proto_ioctl="unknown"
-  tst_compi_ioctl="unknown"
-  tst_allow_ioctl="unknown"
-  #
-  AC_MSG_CHECKING([if ioctl can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([ioctl])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_ioctl="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_ioctl="no"
-  ])
-  #
-  if test "$tst_links_ioctl" = "yes"; then
-    AC_MSG_CHECKING([if ioctl is prototyped])
-    AC_EGREP_CPP([ioctl],[
-      $curl_includes_stropts
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_ioctl="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_ioctl="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_ioctl" = "yes"; then
-    AC_MSG_CHECKING([if ioctl is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stropts
-      ]],[[
-        if(0 != ioctl(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctl="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctl="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctl" = "yes"; then
-    AC_MSG_CHECKING([if ioctl usage allowed])
-    if test "x$curl_disallow_ioctl" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctl="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctl="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if ioctl might be used])
-  if test "$tst_links_ioctl" = "yes" &&
-     test "$tst_proto_ioctl" = "yes" &&
-     test "$tst_compi_ioctl" = "yes" &&
-     test "$tst_allow_ioctl" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTL, 1,
-      [Define to 1 if you have the ioctl function.])
-    ac_cv_func_ioctl="yes"
-    CURL_CHECK_FUNC_IOCTL_FIONBIO
-    CURL_CHECK_FUNC_IOCTL_SIOCGIFADDR
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctl="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_IOCTL_FIONBIO
-dnl -------------------------------------------------
-dnl Verify if ioctl with the FIONBIO command is
-dnl available, can be compiled, and seems to work. If
-dnl all of these are true, then HAVE_IOCTL_FIONBIO
-dnl will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_IOCTL_FIONBIO], [
-  #
-  tst_compi_ioctl_fionbio="unknown"
-  tst_allow_ioctl_fionbio="unknown"
-  #
-  if test "$ac_cv_func_ioctl" = "yes"; then
-    AC_MSG_CHECKING([if ioctl FIONBIO is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stropts
-      ]],[[
-        int flags = 0;
-        if(0 != ioctl(0, FIONBIO, &flags))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctl_fionbio="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctl_fionbio="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctl_fionbio" = "yes"; then
-    AC_MSG_CHECKING([if ioctl FIONBIO usage allowed])
-    if test "x$curl_disallow_ioctl_fionbio" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctl_fionbio="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctl_fionbio="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if ioctl FIONBIO might be used])
-  if test "$tst_compi_ioctl_fionbio" = "yes" &&
-     test "$tst_allow_ioctl_fionbio" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTL_FIONBIO, 1,
-      [Define to 1 if you have a working ioctl FIONBIO function.])
-    ac_cv_func_ioctl_fionbio="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctl_fionbio="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_IOCTL_SIOCGIFADDR
-dnl -------------------------------------------------
-dnl Verify if ioctl with the SIOCGIFADDR command is available,
-dnl struct ifreq is defined, they can be compiled, and seem to
-dnl work. If all of these are true, then HAVE_IOCTL_SIOCGIFADDR
-dnl will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_IOCTL_SIOCGIFADDR], [
-  #
-  tst_compi_ioctl_siocgifaddr="unknown"
-  tst_allow_ioctl_siocgifaddr="unknown"
-  #
-  if test "$ac_cv_func_ioctl" = "yes"; then
-    AC_MSG_CHECKING([if ioctl SIOCGIFADDR is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stropts
-        #include <net/if.h>
-      ]],[[
-        struct ifreq ifr;
-        if(0 != ioctl(0, SIOCGIFADDR, &ifr))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctl_siocgifaddr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctl_siocgifaddr="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctl_siocgifaddr" = "yes"; then
-    AC_MSG_CHECKING([if ioctl SIOCGIFADDR usage allowed])
-    if test "x$curl_disallow_ioctl_siocgifaddr" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctl_siocgifaddr="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctl_siocgifaddr="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if ioctl SIOCGIFADDR might be used])
-  if test "$tst_compi_ioctl_siocgifaddr" = "yes" &&
-     test "$tst_allow_ioctl_siocgifaddr" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTL_SIOCGIFADDR, 1,
-      [Define to 1 if you have a working ioctl SIOCGIFADDR function.])
-    ac_cv_func_ioctl_siocgifaddr="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctl_siocgifaddr="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_IOCTLSOCKET
-dnl -------------------------------------------------
-dnl Verify if ioctlsocket is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_ioctlsocket, then
-dnl HAVE_IOCTLSOCKET will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_IOCTLSOCKET], [
-  AC_REQUIRE([CURL_INCLUDES_WINSOCK2])dnl
-  #
-  tst_links_ioctlsocket="unknown"
-  tst_proto_ioctlsocket="unknown"
-  tst_compi_ioctlsocket="unknown"
-  tst_allow_ioctlsocket="unknown"
-  #
-  AC_MSG_CHECKING([if ioctlsocket can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_winsock2
-    ]],[[
-      if(0 != ioctlsocket(0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_ioctlsocket="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_ioctlsocket="no"
-  ])
-  #
-  if test "$tst_links_ioctlsocket" = "yes"; then
-    AC_MSG_CHECKING([if ioctlsocket is prototyped])
-    AC_EGREP_CPP([ioctlsocket],[
-      $curl_includes_winsock2
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_ioctlsocket="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_ioctlsocket="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_ioctlsocket" = "yes"; then
-    AC_MSG_CHECKING([if ioctlsocket is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_winsock2
-      ]],[[
-        if(0 != ioctlsocket(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctlsocket="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctlsocket="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctlsocket" = "yes"; then
-    AC_MSG_CHECKING([if ioctlsocket usage allowed])
-    if test "x$curl_disallow_ioctlsocket" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctlsocket="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctlsocket="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if ioctlsocket might be used])
-  if test "$tst_links_ioctlsocket" = "yes" &&
-     test "$tst_proto_ioctlsocket" = "yes" &&
-     test "$tst_compi_ioctlsocket" = "yes" &&
-     test "$tst_allow_ioctlsocket" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTLSOCKET, 1,
-      [Define to 1 if you have the ioctlsocket function.])
-    ac_cv_func_ioctlsocket="yes"
-    CURL_CHECK_FUNC_IOCTLSOCKET_FIONBIO
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctlsocket="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_IOCTLSOCKET_FIONBIO
-dnl -------------------------------------------------
-dnl Verify if ioctlsocket with the FIONBIO command is
-dnl available, can be compiled, and seems to work. If
-dnl all of these are true, then HAVE_IOCTLSOCKET_FIONBIO
-dnl will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_IOCTLSOCKET_FIONBIO], [
-  #
-  tst_compi_ioctlsocket_fionbio="unknown"
-  tst_allow_ioctlsocket_fionbio="unknown"
-  #
-  if test "$ac_cv_func_ioctlsocket" = "yes"; then
-    AC_MSG_CHECKING([if ioctlsocket FIONBIO is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_winsock2
-      ]],[[
-        int flags = 0;
-        if(0 != ioctlsocket(0, FIONBIO, &flags))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctlsocket_fionbio="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctlsocket_fionbio="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctlsocket_fionbio" = "yes"; then
-    AC_MSG_CHECKING([if ioctlsocket FIONBIO usage allowed])
-    if test "x$curl_disallow_ioctlsocket_fionbio" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctlsocket_fionbio="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctlsocket_fionbio="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if ioctlsocket FIONBIO might be used])
-  if test "$tst_compi_ioctlsocket_fionbio" = "yes" &&
-     test "$tst_allow_ioctlsocket_fionbio" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTLSOCKET_FIONBIO, 1,
-      [Define to 1 if you have a working ioctlsocket FIONBIO function.])
-    ac_cv_func_ioctlsocket_fionbio="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctlsocket_fionbio="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_IOCTLSOCKET_CAMEL
-dnl -------------------------------------------------
-dnl Verify if IoctlSocket is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_ioctlsocket_camel,
-dnl then HAVE_IOCTLSOCKET_CAMEL will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_IOCTLSOCKET_CAMEL], [
-  AC_REQUIRE([CURL_INCLUDES_STROPTS])dnl
-  #
-  tst_links_ioctlsocket_camel="unknown"
-  tst_proto_ioctlsocket_camel="unknown"
-  tst_compi_ioctlsocket_camel="unknown"
-  tst_allow_ioctlsocket_camel="unknown"
-  #
-  AC_MSG_CHECKING([if IoctlSocket can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([IoctlSocket])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_ioctlsocket_camel="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_ioctlsocket_camel="no"
-  ])
-  #
-  if test "$tst_links_ioctlsocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if IoctlSocket is prototyped])
-    AC_EGREP_CPP([IoctlSocket],[
-      $curl_includes_stropts
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_ioctlsocket_camel="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_ioctlsocket_camel="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_ioctlsocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if IoctlSocket is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stropts
-      ]],[[
-        if(0 != IoctlSocket(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctlsocket_camel="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctlsocket_camel="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctlsocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if IoctlSocket usage allowed])
-    if test "x$curl_disallow_ioctlsocket_camel" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctlsocket_camel="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctlsocket_camel="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if IoctlSocket might be used])
-  if test "$tst_links_ioctlsocket_camel" = "yes" &&
-     test "$tst_proto_ioctlsocket_camel" = "yes" &&
-     test "$tst_compi_ioctlsocket_camel" = "yes" &&
-     test "$tst_allow_ioctlsocket_camel" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTLSOCKET_CAMEL, 1,
-      [Define to 1 if you have the IoctlSocket camel case function.])
-    ac_cv_func_ioctlsocket_camel="yes"
-    CURL_CHECK_FUNC_IOCTLSOCKET_CAMEL_FIONBIO
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctlsocket_camel="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_IOCTLSOCKET_CAMEL_FIONBIO
-dnl -------------------------------------------------
-dnl Verify if IoctlSocket with FIONBIO command is available,
-dnl can be compiled, and seems to work. If all of these are
-dnl true, then HAVE_IOCTLSOCKET_CAMEL_FIONBIO will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_IOCTLSOCKET_CAMEL_FIONBIO], [
-  #
-  tst_compi_ioctlsocket_camel_fionbio="unknown"
-  tst_allow_ioctlsocket_camel_fionbio="unknown"
-  #
-  if test "$ac_cv_func_ioctlsocket_camel" = "yes"; then
-    AC_MSG_CHECKING([if IoctlSocket FIONBIO is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stropts
-      ]],[[
-        long flags = 0;
-        if(0 != ioctlsocket(0, FIONBIO, &flags))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_ioctlsocket_camel_fionbio="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_ioctlsocket_camel_fionbio="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_ioctlsocket_camel_fionbio" = "yes"; then
-    AC_MSG_CHECKING([if IoctlSocket FIONBIO usage allowed])
-    if test "x$curl_disallow_ioctlsocket_camel_fionbio" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_ioctlsocket_camel_fionbio="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_ioctlsocket_camel_fionbio="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if IoctlSocket FIONBIO might be used])
-  if test "$tst_compi_ioctlsocket_camel_fionbio" = "yes" &&
-     test "$tst_allow_ioctlsocket_camel_fionbio" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_IOCTLSOCKET_CAMEL_FIONBIO, 1,
-      [Define to 1 if you have a working IoctlSocket camel case FIONBIO function.])
-    ac_cv_func_ioctlsocket_camel_fionbio="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_ioctlsocket_camel_fionbio="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_LOCALTIME_R
-dnl -------------------------------------------------
-dnl Verify if localtime_r is available, prototyped, can
-dnl be compiled and seems to work. If all of these are
-dnl true, and usage has not been previously disallowed
-dnl with shell variable curl_disallow_localtime_r, then
-dnl HAVE_LOCALTIME_R will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_LOCALTIME_R], [
-  AC_REQUIRE([CURL_INCLUDES_STDLIB])dnl
-  AC_REQUIRE([CURL_INCLUDES_TIME])dnl
-  #
-  tst_links_localtime_r="unknown"
-  tst_proto_localtime_r="unknown"
-  tst_compi_localtime_r="unknown"
-  tst_works_localtime_r="unknown"
-  tst_allow_localtime_r="unknown"
-  #
-  AC_MSG_CHECKING([if localtime_r can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([localtime_r])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_localtime_r="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_localtime_r="no"
-  ])
-  #
-  if test "$tst_links_localtime_r" = "yes"; then
-    AC_MSG_CHECKING([if localtime_r is prototyped])
-    AC_EGREP_CPP([localtime_r],[
-      $curl_includes_time
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_localtime_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_localtime_r="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_localtime_r" = "yes"; then
-    AC_MSG_CHECKING([if localtime_r is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_time
-      ]],[[
-        if(0 != localtime_r(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_localtime_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_localtime_r="no"
-    ])
-  fi
-  #
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_localtime_r" = "yes"; then
-    AC_MSG_CHECKING([if localtime_r seems to work])
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stdlib
-        $curl_includes_time
-      ]],[[
-        time_t clock = 1170352587;
-        struct tm *tmp = 0;
-        struct tm result;
-        tmp = localtime_r(&clock, &result);
-        if(tmp)
-          exit(0);
-        else
-          exit(1);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_works_localtime_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_works_localtime_r="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_localtime_r" = "yes" &&
-    test "$tst_works_localtime_r" != "no"; then
-    AC_MSG_CHECKING([if localtime_r usage allowed])
-    if test "x$curl_disallow_localtime_r" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_localtime_r="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_localtime_r="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if localtime_r might be used])
-  if test "$tst_links_localtime_r" = "yes" &&
-     test "$tst_proto_localtime_r" = "yes" &&
-     test "$tst_compi_localtime_r" = "yes" &&
-     test "$tst_allow_localtime_r" = "yes" &&
-     test "$tst_works_localtime_r" != "no"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_LOCALTIME_R, 1,
-      [Define to 1 if you have a working localtime_r function.])
-    ac_cv_func_localtime_r="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_localtime_r="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_MEMRCHR
-dnl -------------------------------------------------
-dnl Verify if memrchr is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_memrchr, then
-dnl HAVE_MEMRCHR will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_MEMRCHR], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_memrchr="unknown"
-  tst_macro_memrchr="unknown"
-  tst_proto_memrchr="unknown"
-  tst_compi_memrchr="unknown"
-  tst_allow_memrchr="unknown"
-  #
-  AC_MSG_CHECKING([if memrchr can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([memrchr])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_memrchr="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_memrchr="no"
-  ])
-  #
-  if test "$tst_links_memrchr" = "no"; then
-    AC_MSG_CHECKING([if memrchr seems a macro])
-    AC_LINK_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != memrchr(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_macro_memrchr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_macro_memrchr="no"
-    ])
-  fi
-  #
-  if test "$tst_links_memrchr" = "yes"; then
-    AC_MSG_CHECKING([if memrchr is prototyped])
-    AC_EGREP_CPP([memrchr],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_memrchr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_memrchr="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_memrchr" = "yes" ||
-     test "$tst_macro_memrchr" = "yes"; then
-    AC_MSG_CHECKING([if memrchr is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != memrchr(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_memrchr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_memrchr="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_memrchr" = "yes"; then
-    AC_MSG_CHECKING([if memrchr usage allowed])
-    if test "x$curl_disallow_memrchr" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_memrchr="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_memrchr="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if memrchr might be used])
-  if (test "$tst_proto_memrchr" = "yes" ||
-      test "$tst_macro_memrchr" = "yes") &&
-     test "$tst_compi_memrchr" = "yes" &&
-     test "$tst_allow_memrchr" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_MEMRCHR, 1,
-      [Define to 1 if you have the memrchr function or macro.])
-    ac_cv_func_memrchr="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_memrchr="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_POLL
-dnl -------------------------------------------------
-dnl Verify if poll is available, prototyped, can
-dnl be compiled and seems to work. If all of these are
-dnl true, and usage has not been previously disallowed
-dnl with shell variable curl_disallow_poll, then
-dnl HAVE_POLL will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_POLL], [
-  AC_REQUIRE([CURL_INCLUDES_STDLIB])dnl
-  AC_REQUIRE([CURL_INCLUDES_POLL])dnl
-  #
-  tst_links_poll="unknown"
-  tst_proto_poll="unknown"
-  tst_compi_poll="unknown"
-  tst_works_poll="unknown"
-  tst_allow_poll="unknown"
-  #
-  case $host_os in
-    darwin*|interix*)
-      dnl poll() does not work on these platforms
-      dnl Interix: "does provide poll(), but the implementing developer must
-      dnl have been in a bad mood, because poll() only works on the /proc
-      dnl filesystem here"
-      curl_disallow_poll="yes"
-      ;;
-  esac
-  #
-  AC_MSG_CHECKING([if poll can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_poll
-    ]],[[
-      if(0 != poll(0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_poll="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_poll="no"
-  ])
-  #
-  if test "$tst_links_poll" = "yes"; then
-    AC_MSG_CHECKING([if poll is prototyped])
-    AC_EGREP_CPP([poll],[
-      $curl_includes_poll
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_poll="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_poll="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_poll" = "yes"; then
-    AC_MSG_CHECKING([if poll is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_poll
-      ]],[[
-        if(0 != poll(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_poll="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_poll="no"
-    ])
-  fi
-  #
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tst_compi_poll" = "yes"; then
-    AC_MSG_CHECKING([if poll seems to work])
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stdlib
-        $curl_includes_poll
-      ]],[[
-        if(0 != poll(0, 0, 10))
-          exit(1); /* fail */
-        else
-          exit(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_works_poll="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_works_poll="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_poll" = "yes" &&
-    test "$tst_works_poll" != "no"; then
-    AC_MSG_CHECKING([if poll usage allowed])
-    if test "x$curl_disallow_poll" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_poll="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_poll="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if poll might be used])
-  if test "$tst_links_poll" = "yes" &&
-     test "$tst_proto_poll" = "yes" &&
-     test "$tst_compi_poll" = "yes" &&
-     test "$tst_allow_poll" = "yes" &&
-     test "$tst_works_poll" != "no"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_POLL, 1,
-      [Define to 1 if you have a working poll function.])
-    AC_DEFINE_UNQUOTED(HAVE_POLL_FINE, 1,
-      [If you have a fine poll])
-    ac_cv_func_poll="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_poll="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_SETSOCKOPT
-dnl -------------------------------------------------
-dnl Verify if setsockopt is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_setsockopt, then
-dnl HAVE_SETSOCKOPT will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_SETSOCKOPT], [
-  AC_REQUIRE([CURL_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CURL_INCLUDES_SYS_SOCKET])dnl
-  #
-  tst_links_setsockopt="unknown"
-  tst_proto_setsockopt="unknown"
-  tst_compi_setsockopt="unknown"
-  tst_allow_setsockopt="unknown"
-  #
-  AC_MSG_CHECKING([if setsockopt can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_winsock2
-      $curl_includes_sys_socket
-    ]],[[
-      if(0 != setsockopt(0, 0, 0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_setsockopt="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_setsockopt="no"
-  ])
-  #
-  if test "$tst_links_setsockopt" = "yes"; then
-    AC_MSG_CHECKING([if setsockopt is prototyped])
-    AC_EGREP_CPP([setsockopt],[
-      $curl_includes_winsock2
-      $curl_includes_sys_socket
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_setsockopt="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_setsockopt="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_setsockopt" = "yes"; then
-    AC_MSG_CHECKING([if setsockopt is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_winsock2
-        $curl_includes_sys_socket
-      ]],[[
-        if(0 != setsockopt(0, 0, 0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_setsockopt="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_setsockopt="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_setsockopt" = "yes"; then
-    AC_MSG_CHECKING([if setsockopt usage allowed])
-    if test "x$curl_disallow_setsockopt" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_setsockopt="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_setsockopt="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if setsockopt might be used])
-  if test "$tst_links_setsockopt" = "yes" &&
-     test "$tst_proto_setsockopt" = "yes" &&
-     test "$tst_compi_setsockopt" = "yes" &&
-     test "$tst_allow_setsockopt" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_SETSOCKOPT, 1,
-      [Define to 1 if you have the setsockopt function.])
-    ac_cv_func_setsockopt="yes"
-    CURL_CHECK_FUNC_SETSOCKOPT_SO_NONBLOCK
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_setsockopt="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_SETSOCKOPT_SO_NONBLOCK
-dnl -------------------------------------------------
-dnl Verify if setsockopt with the SO_NONBLOCK command is
-dnl available, can be compiled, and seems to work. If
-dnl all of these are true, then HAVE_SETSOCKOPT_SO_NONBLOCK
-dnl will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_SETSOCKOPT_SO_NONBLOCK], [
-  #
-  tst_compi_setsockopt_so_nonblock="unknown"
-  tst_allow_setsockopt_so_nonblock="unknown"
-  #
-  if test "$ac_cv_func_setsockopt" = "yes"; then
-    AC_MSG_CHECKING([if setsockopt SO_NONBLOCK is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_winsock2
-        $curl_includes_sys_socket
-      ]],[[
-        if(0 != setsockopt(0, SOL_SOCKET, SO_NONBLOCK, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_setsockopt_so_nonblock="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_setsockopt_so_nonblock="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_setsockopt_so_nonblock" = "yes"; then
-    AC_MSG_CHECKING([if setsockopt SO_NONBLOCK usage allowed])
-    if test "x$curl_disallow_setsockopt_so_nonblock" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_setsockopt_so_nonblock="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_setsockopt_so_nonblock="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if setsockopt SO_NONBLOCK might be used])
-  if test "$tst_compi_setsockopt_so_nonblock" = "yes" &&
-     test "$tst_allow_setsockopt_so_nonblock" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_SETSOCKOPT_SO_NONBLOCK, 1,
-      [Define to 1 if you have a working setsockopt SO_NONBLOCK function.])
-    ac_cv_func_setsockopt_so_nonblock="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_setsockopt_so_nonblock="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_SIGACTION
-dnl -------------------------------------------------
-dnl Verify if sigaction is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_sigaction, then
-dnl HAVE_SIGACTION will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_SIGACTION], [
-  AC_REQUIRE([CURL_INCLUDES_SIGNAL])dnl
-  #
-  tst_links_sigaction="unknown"
-  tst_proto_sigaction="unknown"
-  tst_compi_sigaction="unknown"
-  tst_allow_sigaction="unknown"
-  #
-  AC_MSG_CHECKING([if sigaction can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([sigaction])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_sigaction="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_sigaction="no"
-  ])
-  #
-  if test "$tst_links_sigaction" = "yes"; then
-    AC_MSG_CHECKING([if sigaction is prototyped])
-    AC_EGREP_CPP([sigaction],[
-      $curl_includes_signal
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_sigaction="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_sigaction="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_sigaction" = "yes"; then
-    AC_MSG_CHECKING([if sigaction is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_signal
-      ]],[[
-        if(0 != sigaction(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_sigaction="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_sigaction="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_sigaction" = "yes"; then
-    AC_MSG_CHECKING([if sigaction usage allowed])
-    if test "x$curl_disallow_sigaction" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_sigaction="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_sigaction="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if sigaction might be used])
-  if test "$tst_links_sigaction" = "yes" &&
-     test "$tst_proto_sigaction" = "yes" &&
-     test "$tst_compi_sigaction" = "yes" &&
-     test "$tst_allow_sigaction" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_SIGACTION, 1,
-      [Define to 1 if you have the sigaction function.])
-    ac_cv_func_sigaction="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_sigaction="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_SIGINTERRUPT
-dnl -------------------------------------------------
-dnl Verify if siginterrupt is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_siginterrupt, then
-dnl HAVE_SIGINTERRUPT will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_SIGINTERRUPT], [
-  AC_REQUIRE([CURL_INCLUDES_SIGNAL])dnl
-  #
-  tst_links_siginterrupt="unknown"
-  tst_proto_siginterrupt="unknown"
-  tst_compi_siginterrupt="unknown"
-  tst_allow_siginterrupt="unknown"
-  #
-  AC_MSG_CHECKING([if siginterrupt can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([siginterrupt])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_siginterrupt="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_siginterrupt="no"
-  ])
-  #
-  if test "$tst_links_siginterrupt" = "yes"; then
-    AC_MSG_CHECKING([if siginterrupt is prototyped])
-    AC_EGREP_CPP([siginterrupt],[
-      $curl_includes_signal
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_siginterrupt="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_siginterrupt="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_siginterrupt" = "yes"; then
-    AC_MSG_CHECKING([if siginterrupt is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_signal
-      ]],[[
-        if(0 != siginterrupt(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_siginterrupt="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_siginterrupt="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_siginterrupt" = "yes"; then
-    AC_MSG_CHECKING([if siginterrupt usage allowed])
-    if test "x$curl_disallow_siginterrupt" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_siginterrupt="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_siginterrupt="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if siginterrupt might be used])
-  if test "$tst_links_siginterrupt" = "yes" &&
-     test "$tst_proto_siginterrupt" = "yes" &&
-     test "$tst_compi_siginterrupt" = "yes" &&
-     test "$tst_allow_siginterrupt" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_SIGINTERRUPT, 1,
-      [Define to 1 if you have the siginterrupt function.])
-    ac_cv_func_siginterrupt="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_siginterrupt="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_SIGNAL
-dnl -------------------------------------------------
-dnl Verify if signal is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_signal, then
-dnl HAVE_SIGNAL will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_SIGNAL], [
-  AC_REQUIRE([CURL_INCLUDES_SIGNAL])dnl
-  #
-  tst_links_signal="unknown"
-  tst_proto_signal="unknown"
-  tst_compi_signal="unknown"
-  tst_allow_signal="unknown"
-  #
-  AC_MSG_CHECKING([if signal can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([signal])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_signal="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_signal="no"
-  ])
-  #
-  if test "$tst_links_signal" = "yes"; then
-    AC_MSG_CHECKING([if signal is prototyped])
-    AC_EGREP_CPP([signal],[
-      $curl_includes_signal
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_signal="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_signal="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_signal" = "yes"; then
-    AC_MSG_CHECKING([if signal is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_signal
-      ]],[[
-        if(0 != signal(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_signal="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_signal="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_signal" = "yes"; then
-    AC_MSG_CHECKING([if signal usage allowed])
-    if test "x$curl_disallow_signal" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_signal="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_signal="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if signal might be used])
-  if test "$tst_links_signal" = "yes" &&
-     test "$tst_proto_signal" = "yes" &&
-     test "$tst_compi_signal" = "yes" &&
-     test "$tst_allow_signal" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_SIGNAL, 1,
-      [Define to 1 if you have the signal function.])
-    ac_cv_func_signal="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_signal="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_SIGSETJMP
-dnl -------------------------------------------------
-dnl Verify if sigsetjmp is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_sigsetjmp, then
-dnl HAVE_SIGSETJMP will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_SIGSETJMP], [
-  AC_REQUIRE([CURL_INCLUDES_SETJMP])dnl
-  #
-  tst_links_sigsetjmp="unknown"
-  tst_macro_sigsetjmp="unknown"
-  tst_proto_sigsetjmp="unknown"
-  tst_compi_sigsetjmp="unknown"
-  tst_allow_sigsetjmp="unknown"
-  #
-  AC_MSG_CHECKING([if sigsetjmp can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([sigsetjmp])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_sigsetjmp="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_sigsetjmp="no"
-  ])
-  #
-  if test "$tst_links_sigsetjmp" = "no"; then
-    AC_MSG_CHECKING([if sigsetjmp seems a macro])
-    AC_LINK_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_setjmp
-      ]],[[
-        sigjmp_buf env;
-        if(0 != sigsetjmp(env, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_macro_sigsetjmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_macro_sigsetjmp="no"
-    ])
-  fi
-  #
-  if test "$tst_links_sigsetjmp" = "yes"; then
-    AC_MSG_CHECKING([if sigsetjmp is prototyped])
-    AC_EGREP_CPP([sigsetjmp],[
-      $curl_includes_setjmp
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_sigsetjmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_sigsetjmp="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_sigsetjmp" = "yes" ||
-     test "$tst_macro_sigsetjmp" = "yes"; then
-    AC_MSG_CHECKING([if sigsetjmp is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_setjmp
-      ]],[[
-        sigjmp_buf env;
-        if(0 != sigsetjmp(env, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_sigsetjmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_sigsetjmp="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_sigsetjmp" = "yes"; then
-    AC_MSG_CHECKING([if sigsetjmp usage allowed])
-    if test "x$curl_disallow_sigsetjmp" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_sigsetjmp="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_sigsetjmp="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if sigsetjmp might be used])
-  if (test "$tst_proto_sigsetjmp" = "yes" ||
-      test "$tst_macro_sigsetjmp" = "yes") &&
-     test "$tst_compi_sigsetjmp" = "yes" &&
-     test "$tst_allow_sigsetjmp" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_SIGSETJMP, 1,
-      [Define to 1 if you have the sigsetjmp function or macro.])
-    ac_cv_func_sigsetjmp="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_sigsetjmp="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_SOCKET
-dnl -------------------------------------------------
-dnl Verify if socket is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_socket, then
-dnl HAVE_SOCKET will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_SOCKET], [
-  AC_REQUIRE([CURL_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CURL_INCLUDES_SYS_SOCKET])dnl
-  AC_REQUIRE([CURL_INCLUDES_SOCKET])dnl
-  #
-  tst_links_socket="unknown"
-  tst_proto_socket="unknown"
-  tst_compi_socket="unknown"
-  tst_allow_socket="unknown"
-  #
-  AC_MSG_CHECKING([if socket can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_winsock2
-      $curl_includes_sys_socket
-      $curl_includes_socket
-    ]],[[
-      if(0 != socket(0, 0, 0))
-        return 1;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_socket="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_socket="no"
-  ])
-  #
-  if test "$tst_links_socket" = "yes"; then
-    AC_MSG_CHECKING([if socket is prototyped])
-    AC_EGREP_CPP([socket],[
-      $curl_includes_winsock2
-      $curl_includes_sys_socket
-      $curl_includes_socket
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_socket="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_socket="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_socket" = "yes"; then
-    AC_MSG_CHECKING([if socket is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_winsock2
-        $curl_includes_sys_socket
-        $curl_includes_socket
-      ]],[[
-        if(0 != socket(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_socket="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_socket="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_socket" = "yes"; then
-    AC_MSG_CHECKING([if socket usage allowed])
-    if test "x$curl_disallow_socket" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_socket="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_socket="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if socket might be used])
-  if test "$tst_links_socket" = "yes" &&
-     test "$tst_proto_socket" = "yes" &&
-     test "$tst_compi_socket" = "yes" &&
-     test "$tst_allow_socket" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_SOCKET, 1,
-      [Define to 1 if you have the socket function.])
-    ac_cv_func_socket="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_socket="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_STRCASECMP
-dnl -------------------------------------------------
-dnl Verify if strcasecmp is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_strcasecmp, then
-dnl HAVE_STRCASECMP will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_STRCASECMP], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_strcasecmp="unknown"
-  tst_proto_strcasecmp="unknown"
-  tst_compi_strcasecmp="unknown"
-  tst_allow_strcasecmp="unknown"
-  #
-  AC_MSG_CHECKING([if strcasecmp can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strcasecmp])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strcasecmp="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strcasecmp="no"
-  ])
-  #
-  if test "$tst_links_strcasecmp" = "yes"; then
-    AC_MSG_CHECKING([if strcasecmp is prototyped])
-    AC_EGREP_CPP([strcasecmp],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strcasecmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strcasecmp="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strcasecmp" = "yes"; then
-    AC_MSG_CHECKING([if strcasecmp is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != strcasecmp(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strcasecmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strcasecmp="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strcasecmp" = "yes"; then
-    AC_MSG_CHECKING([if strcasecmp usage allowed])
-    if test "x$curl_disallow_strcasecmp" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strcasecmp="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strcasecmp="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strcasecmp might be used])
-  if test "$tst_links_strcasecmp" = "yes" &&
-     test "$tst_proto_strcasecmp" = "yes" &&
-     test "$tst_compi_strcasecmp" = "yes" &&
-     test "$tst_allow_strcasecmp" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRCASECMP, 1,
-      [Define to 1 if you have the strcasecmp function.])
-    ac_cv_func_strcasecmp="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strcasecmp="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_STRCASESTR
-dnl -------------------------------------------------
-dnl Verify if strcasestr is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_strcasestr, then
-dnl HAVE_STRCASESTR will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_STRCASESTR], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_strcasestr="unknown"
-  tst_proto_strcasestr="unknown"
-  tst_compi_strcasestr="unknown"
-  tst_allow_strcasestr="unknown"
-  #
-  AC_MSG_CHECKING([if strcasestr can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strcasestr])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strcasestr="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strcasestr="no"
-  ])
-  #
-  if test "$tst_links_strcasestr" = "yes"; then
-    AC_MSG_CHECKING([if strcasestr is prototyped])
-    AC_EGREP_CPP([strcasestr],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strcasestr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strcasestr="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strcasestr" = "yes"; then
-    AC_MSG_CHECKING([if strcasestr is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != strcasestr(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strcasestr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strcasestr="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strcasestr" = "yes"; then
-    AC_MSG_CHECKING([if strcasestr usage allowed])
-    if test "x$curl_disallow_strcasestr" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strcasestr="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strcasestr="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strcasestr might be used])
-  if test "$tst_links_strcasestr" = "yes" &&
-     test "$tst_proto_strcasestr" = "yes" &&
-     test "$tst_compi_strcasestr" = "yes" &&
-     test "$tst_allow_strcasestr" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRCASESTR, 1,
-      [Define to 1 if you have the strcasestr function.])
-    ac_cv_func_strcasestr="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strcasestr="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_STRCMPI
-dnl -------------------------------------------------
-dnl Verify if strcmpi is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_strcmpi, then
-dnl HAVE_STRCMPI will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_STRCMPI], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_strcmpi="unknown"
-  tst_proto_strcmpi="unknown"
-  tst_compi_strcmpi="unknown"
-  tst_allow_strcmpi="unknown"
-  #
-  AC_MSG_CHECKING([if strcmpi can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strcmpi])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strcmpi="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strcmpi="no"
-  ])
-  #
-  if test "$tst_links_strcmpi" = "yes"; then
-    AC_MSG_CHECKING([if strcmpi is prototyped])
-    AC_EGREP_CPP([strcmpi],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strcmpi="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strcmpi="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strcmpi" = "yes"; then
-    AC_MSG_CHECKING([if strcmpi is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != strcmpi(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strcmpi="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strcmpi="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strcmpi" = "yes"; then
-    AC_MSG_CHECKING([if strcmpi usage allowed])
-    if test "x$curl_disallow_strcmpi" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strcmpi="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strcmpi="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strcmpi might be used])
-  if test "$tst_links_strcmpi" = "yes" &&
-     test "$tst_proto_strcmpi" = "yes" &&
-     test "$tst_compi_strcmpi" = "yes" &&
-     test "$tst_allow_strcmpi" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRCMPI, 1,
-      [Define to 1 if you have the strcmpi function.])
-    ac_cv_func_strcmpi="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strcmpi="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_STRDUP
-dnl -------------------------------------------------
-dnl Verify if strdup is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_strdup, then
-dnl HAVE_STRDUP will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_STRDUP], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_strdup="unknown"
-  tst_proto_strdup="unknown"
-  tst_compi_strdup="unknown"
-  tst_allow_strdup="unknown"
-  #
-  AC_MSG_CHECKING([if strdup can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strdup])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strdup="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strdup="no"
-  ])
-  #
-  if test "$tst_links_strdup" = "yes"; then
-    AC_MSG_CHECKING([if strdup is prototyped])
-    AC_EGREP_CPP([strdup],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strdup="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strdup="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strdup" = "yes"; then
-    AC_MSG_CHECKING([if strdup is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != strdup(0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strdup="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strdup="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strdup" = "yes"; then
-    AC_MSG_CHECKING([if strdup usage allowed])
-    if test "x$curl_disallow_strdup" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strdup="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strdup="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strdup might be used])
-  if test "$tst_links_strdup" = "yes" &&
-     test "$tst_proto_strdup" = "yes" &&
-     test "$tst_compi_strdup" = "yes" &&
-     test "$tst_allow_strdup" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRDUP, 1,
-      [Define to 1 if you have the strdup function.])
-    ac_cv_func_strdup="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strdup="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_STRERROR_R
-dnl -------------------------------------------------
-dnl Verify if strerror_r is available, prototyped, can be compiled and
-dnl seems to work. If all of these are true, and usage has not been
-dnl previously disallowed with shell variable curl_disallow_strerror_r,
-dnl then HAVE_STRERROR_R and STRERROR_R_TYPE_ARG3 will be defined, as
-dnl well as one of HAVE_GLIBC_STRERROR_R or HAVE_POSIX_STRERROR_R.
-dnl
-dnl glibc-style strerror_r:
-dnl
-dnl      char *strerror_r(int errnum, char *workbuf, size_t bufsize);
-dnl
-dnl  glibc-style strerror_r returns a pointer to the the error string,
-dnl  and might use the provided workbuf as a scratch area if needed. A
-dnl  quick test on a few systems shows that it's usually not used at all.
-dnl
-dnl POSIX-style strerror_r:
-dnl
-dnl      int strerror_r(int errnum, char *resultbuf, size_t bufsize);
-dnl
-dnl  POSIX-style strerror_r returns 0 upon successful completion and the
-dnl  error string in the provided resultbuf.
-dnl
-
-AC_DEFUN([CURL_CHECK_FUNC_STRERROR_R], [
-  AC_REQUIRE([CURL_INCLUDES_STDLIB])dnl
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_strerror_r="unknown"
-  tst_proto_strerror_r="unknown"
-  tst_compi_strerror_r="unknown"
-  tst_glibc_strerror_r="unknown"
-  tst_posix_strerror_r="unknown"
-  tst_allow_strerror_r="unknown"
-  tst_works_glibc_strerror_r="unknown"
-  tst_works_posix_strerror_r="unknown"
-  tst_glibc_strerror_r_type_arg3="unknown"
-  tst_posix_strerror_r_type_arg3="unknown"
-  #
-  AC_MSG_CHECKING([if strerror_r can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strerror_r])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strerror_r="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strerror_r="no"
-  ])
-  #
-  if test "$tst_links_strerror_r" = "yes"; then
-    AC_MSG_CHECKING([if strerror_r is prototyped])
-    AC_EGREP_CPP([strerror_r],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strerror_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strerror_r="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strerror_r" = "yes"; then
-    AC_MSG_CHECKING([if strerror_r is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != strerror_r(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strerror_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strerror_r="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strerror_r" = "yes"; then
-    AC_MSG_CHECKING([if strerror_r is glibc like])
-    tst_glibc_strerror_r_type_arg3="unknown"
-    for arg3 in 'size_t' 'int' 'unsigned int'; do
-      if test "$tst_glibc_strerror_r_type_arg3" = "unknown"; then
-        AC_COMPILE_IFELSE([
-          AC_LANG_PROGRAM([[
-            $curl_includes_string
-          ]],[[
-            char *strerror_r(int errnum, char *workbuf, $arg3 bufsize);
-            if(0 != strerror_r(0, 0, 0))
-              return 1;
-          ]])
-        ],[
-          tst_glibc_strerror_r_type_arg3="$arg3"
-        ])
-      fi
-    done
-    case "$tst_glibc_strerror_r_type_arg3" in
-      unknown)
-        AC_MSG_RESULT([no])
-        tst_glibc_strerror_r="no"
-        ;;
-      *)
-        AC_MSG_RESULT([yes])
-        tst_glibc_strerror_r="yes"
-        ;;
-    esac
-  fi
-  #
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tst_glibc_strerror_r" = "yes"; then
-    AC_MSG_CHECKING([if strerror_r seems to work])
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stdlib
-        $curl_includes_string
-#       include <errno.h>
-      ]],[[
-        char buffer[1024];
-        char *string = 0;
-        buffer[0] = '\0';
-        string = strerror_r(EACCES, buffer, sizeof(buffer));
-        if(!string)
-          exit(1); /* fail */
-        if(!string[0])
-          exit(1); /* fail */
-        else
-          exit(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_works_glibc_strerror_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_works_glibc_strerror_r="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strerror_r" = "yes" &&
-    test "$tst_works_glibc_strerror_r" != "yes"; then
-    AC_MSG_CHECKING([if strerror_r is POSIX like])
-    tst_posix_strerror_r_type_arg3="unknown"
-    for arg3 in 'size_t' 'int' 'unsigned int'; do
-      if test "$tst_posix_strerror_r_type_arg3" = "unknown"; then
-        AC_COMPILE_IFELSE([
-          AC_LANG_PROGRAM([[
-            $curl_includes_string
-          ]],[[
-            int strerror_r(int errnum, char *resultbuf, $arg3 bufsize);
-            if(0 != strerror_r(0, 0, 0))
-              return 1;
-          ]])
-        ],[
-          tst_posix_strerror_r_type_arg3="$arg3"
-        ])
-      fi
-    done
-    case "$tst_posix_strerror_r_type_arg3" in
-      unknown)
-        AC_MSG_RESULT([no])
-        tst_posix_strerror_r="no"
-        ;;
-      *)
-        AC_MSG_RESULT([yes])
-        tst_posix_strerror_r="yes"
-        ;;
-    esac
-  fi
-  #
-  dnl only do runtime verification when not cross-compiling
-  if test "x$cross_compiling" != "xyes" &&
-    test "$tst_posix_strerror_r" = "yes"; then
-    AC_MSG_CHECKING([if strerror_r seems to work])
-    AC_RUN_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stdlib
-        $curl_includes_string
-#       include <errno.h>
-      ]],[[
-        char buffer[1024];
-        int error = 1;
-        buffer[0] = '\0';
-        error = strerror_r(EACCES, buffer, sizeof(buffer));
-        if(error)
-          exit(1); /* fail */
-        if(buffer[0] == '\0')
-          exit(1); /* fail */
-        else
-          exit(0);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_works_posix_strerror_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_works_posix_strerror_r="no"
-    ])
-  fi
-  #
-  if test "$tst_works_glibc_strerror_r" = "yes"; then
-    tst_posix_strerror_r="no"
-  fi
-  if test "$tst_works_posix_strerror_r" = "yes"; then
-    tst_glibc_strerror_r="no"
-  fi
-  if test "$tst_glibc_strerror_r" = "yes" &&
-    test "$tst_works_glibc_strerror_r" != "no" &&
-    test "$tst_posix_strerror_r" != "yes"; then
-    tst_allow_strerror_r="check"
-  fi
-  if test "$tst_posix_strerror_r" = "yes" &&
-    test "$tst_works_posix_strerror_r" != "no" &&
-    test "$tst_glibc_strerror_r" != "yes"; then
-    tst_allow_strerror_r="check"
-  fi
-  if test "$tst_allow_strerror_r" = "check"; then
-    AC_MSG_CHECKING([if strerror_r usage allowed])
-    if test "x$curl_disallow_strerror_r" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strerror_r="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strerror_r="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strerror_r might be used])
-  if test "$tst_links_strerror_r" = "yes" &&
-     test "$tst_proto_strerror_r" = "yes" &&
-     test "$tst_compi_strerror_r" = "yes" &&
-     test "$tst_allow_strerror_r" = "yes"; then
-    AC_MSG_RESULT([yes])
-    if test "$tst_glibc_strerror_r" = "yes"; then
-      AC_DEFINE_UNQUOTED(HAVE_STRERROR_R, 1,
-        [Define to 1 if you have the strerror_r function.])
-      AC_DEFINE_UNQUOTED(HAVE_GLIBC_STRERROR_R, 1,
-        [Define to 1 if you have a working glibc-style strerror_r function.])
-      AC_DEFINE_UNQUOTED(STRERROR_R_TYPE_ARG3, $tst_glibc_strerror_r_type_arg3,
-        [Define to the type of arg 3 for strerror_r.])
-    fi
-    if test "$tst_posix_strerror_r" = "yes"; then
-      AC_DEFINE_UNQUOTED(HAVE_STRERROR_R, 1,
-        [Define to 1 if you have the strerror_r function.])
-      AC_DEFINE_UNQUOTED(HAVE_POSIX_STRERROR_R, 1,
-        [Define to 1 if you have a working POSIX-style strerror_r function.])
-      AC_DEFINE_UNQUOTED(STRERROR_R_TYPE_ARG3, $tst_posix_strerror_r_type_arg3,
-        [Define to the type of arg 3 for strerror_r.])
-    fi
-    ac_cv_func_strerror_r="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strerror_r="no"
-  fi
-  #
-  if test "$tst_compi_strerror_r" = "yes" &&
-     test "$tst_allow_strerror_r" = "unknown"; then
-    AC_MSG_WARN([cannot determine strerror_r() style: edit lib/curl_config.h manually.])
-  fi
-  #
-])
-
-
-dnl CURL_CHECK_FUNC_STRICMP
-dnl -------------------------------------------------
-dnl Verify if stricmp is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_stricmp, then
-dnl HAVE_STRICMP will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_STRICMP], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_stricmp="unknown"
-  tst_proto_stricmp="unknown"
-  tst_compi_stricmp="unknown"
-  tst_allow_stricmp="unknown"
-  #
-  AC_MSG_CHECKING([if stricmp can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([stricmp])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_stricmp="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_stricmp="no"
-  ])
-  #
-  if test "$tst_links_stricmp" = "yes"; then
-    AC_MSG_CHECKING([if stricmp is prototyped])
-    AC_EGREP_CPP([stricmp],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_stricmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_stricmp="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_stricmp" = "yes"; then
-    AC_MSG_CHECKING([if stricmp is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != stricmp(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_stricmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_stricmp="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_stricmp" = "yes"; then
-    AC_MSG_CHECKING([if stricmp usage allowed])
-    if test "x$curl_disallow_stricmp" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_stricmp="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_stricmp="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if stricmp might be used])
-  if test "$tst_links_stricmp" = "yes" &&
-     test "$tst_proto_stricmp" = "yes" &&
-     test "$tst_compi_stricmp" = "yes" &&
-     test "$tst_allow_stricmp" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRICMP, 1,
-      [Define to 1 if you have the stricmp function.])
-    ac_cv_func_stricmp="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_stricmp="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_STRLCAT
-dnl -------------------------------------------------
-dnl Verify if strlcat is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_strlcat, then
-dnl HAVE_STRLCAT will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_STRLCAT], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_strlcat="unknown"
-  tst_proto_strlcat="unknown"
-  tst_compi_strlcat="unknown"
-  tst_allow_strlcat="unknown"
-  #
-  AC_MSG_CHECKING([if strlcat can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strlcat])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strlcat="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strlcat="no"
-  ])
-  #
-  if test "$tst_links_strlcat" = "yes"; then
-    AC_MSG_CHECKING([if strlcat is prototyped])
-    AC_EGREP_CPP([strlcat],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strlcat="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strlcat="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strlcat" = "yes"; then
-    AC_MSG_CHECKING([if strlcat is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != strlcat(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strlcat="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strlcat="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strlcat" = "yes"; then
-    AC_MSG_CHECKING([if strlcat usage allowed])
-    if test "x$curl_disallow_strlcat" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strlcat="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strlcat="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strlcat might be used])
-  if test "$tst_links_strlcat" = "yes" &&
-     test "$tst_proto_strlcat" = "yes" &&
-     test "$tst_compi_strlcat" = "yes" &&
-     test "$tst_allow_strlcat" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRLCAT, 1,
-      [Define to 1 if you have the strlcat function.])
-    ac_cv_func_strlcat="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strlcat="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_STRNCASECMP
-dnl -------------------------------------------------
-dnl Verify if strncasecmp is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_strncasecmp, then
-dnl HAVE_STRNCASECMP will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_STRNCASECMP], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_strncasecmp="unknown"
-  tst_proto_strncasecmp="unknown"
-  tst_compi_strncasecmp="unknown"
-  tst_allow_strncasecmp="unknown"
-  #
-  AC_MSG_CHECKING([if strncasecmp can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strncasecmp])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strncasecmp="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strncasecmp="no"
-  ])
-  #
-  if test "$tst_links_strncasecmp" = "yes"; then
-    AC_MSG_CHECKING([if strncasecmp is prototyped])
-    AC_EGREP_CPP([strncasecmp],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strncasecmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strncasecmp="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strncasecmp" = "yes"; then
-    AC_MSG_CHECKING([if strncasecmp is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != strncasecmp(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strncasecmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strncasecmp="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strncasecmp" = "yes"; then
-    AC_MSG_CHECKING([if strncasecmp usage allowed])
-    if test "x$curl_disallow_strncasecmp" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strncasecmp="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strncasecmp="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strncasecmp might be used])
-  if test "$tst_links_strncasecmp" = "yes" &&
-     test "$tst_proto_strncasecmp" = "yes" &&
-     test "$tst_compi_strncasecmp" = "yes" &&
-     test "$tst_allow_strncasecmp" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRNCASECMP, 1,
-      [Define to 1 if you have the strncasecmp function.])
-    ac_cv_func_strncasecmp="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strncasecmp="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_STRNCMPI
-dnl -------------------------------------------------
-dnl Verify if strncmpi is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_strncmpi, then
-dnl HAVE_STRNCMPI will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_STRNCMPI], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_strncmpi="unknown"
-  tst_proto_strncmpi="unknown"
-  tst_compi_strncmpi="unknown"
-  tst_allow_strncmpi="unknown"
-  #
-  AC_MSG_CHECKING([if strncmpi can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strncmpi])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strncmpi="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strncmpi="no"
-  ])
-  #
-  if test "$tst_links_strncmpi" = "yes"; then
-    AC_MSG_CHECKING([if strncmpi is prototyped])
-    AC_EGREP_CPP([strncmpi],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strncmpi="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strncmpi="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strncmpi" = "yes"; then
-    AC_MSG_CHECKING([if strncmpi is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != strncmpi(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strncmpi="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strncmpi="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strncmpi" = "yes"; then
-    AC_MSG_CHECKING([if strncmpi usage allowed])
-    if test "x$curl_disallow_strncmpi" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strncmpi="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strncmpi="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strncmpi might be used])
-  if test "$tst_links_strncmpi" = "yes" &&
-     test "$tst_proto_strncmpi" = "yes" &&
-     test "$tst_compi_strncmpi" = "yes" &&
-     test "$tst_allow_strncmpi" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRNCMPI, 1,
-      [Define to 1 if you have the strncmpi function.])
-    ac_cv_func_strncmpi="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strncmpi="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_STRNICMP
-dnl -------------------------------------------------
-dnl Verify if strnicmp is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_strnicmp, then
-dnl HAVE_STRNICMP will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_STRNICMP], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_strnicmp="unknown"
-  tst_proto_strnicmp="unknown"
-  tst_compi_strnicmp="unknown"
-  tst_allow_strnicmp="unknown"
-  #
-  AC_MSG_CHECKING([if strnicmp can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strnicmp])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strnicmp="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strnicmp="no"
-  ])
-  #
-  if test "$tst_links_strnicmp" = "yes"; then
-    AC_MSG_CHECKING([if strnicmp is prototyped])
-    AC_EGREP_CPP([strnicmp],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strnicmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strnicmp="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strnicmp" = "yes"; then
-    AC_MSG_CHECKING([if strnicmp is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != strnicmp(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strnicmp="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strnicmp="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strnicmp" = "yes"; then
-    AC_MSG_CHECKING([if strnicmp usage allowed])
-    if test "x$curl_disallow_strnicmp" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strnicmp="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strnicmp="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strnicmp might be used])
-  if test "$tst_links_strnicmp" = "yes" &&
-     test "$tst_proto_strnicmp" = "yes" &&
-     test "$tst_compi_strnicmp" = "yes" &&
-     test "$tst_allow_strnicmp" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRNICMP, 1,
-      [Define to 1 if you have the strnicmp function.])
-    ac_cv_func_strnicmp="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strnicmp="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_STRSTR
-dnl -------------------------------------------------
-dnl Verify if strstr is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_strstr, then
-dnl HAVE_STRSTR will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_STRSTR], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_strstr="unknown"
-  tst_proto_strstr="unknown"
-  tst_compi_strstr="unknown"
-  tst_allow_strstr="unknown"
-  #
-  AC_MSG_CHECKING([if strstr can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strstr])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strstr="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strstr="no"
-  ])
-  #
-  if test "$tst_links_strstr" = "yes"; then
-    AC_MSG_CHECKING([if strstr is prototyped])
-    AC_EGREP_CPP([strstr],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strstr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strstr="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strstr" = "yes"; then
-    AC_MSG_CHECKING([if strstr is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != strstr(0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strstr="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strstr="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strstr" = "yes"; then
-    AC_MSG_CHECKING([if strstr usage allowed])
-    if test "x$curl_disallow_strstr" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strstr="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strstr="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strstr might be used])
-  if test "$tst_links_strstr" = "yes" &&
-     test "$tst_proto_strstr" = "yes" &&
-     test "$tst_compi_strstr" = "yes" &&
-     test "$tst_allow_strstr" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRSTR, 1,
-      [Define to 1 if you have the strstr function.])
-    ac_cv_func_strstr="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strstr="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_STRTOK_R
-dnl -------------------------------------------------
-dnl Verify if strtok_r is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_strtok_r, then
-dnl HAVE_STRTOK_R will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_STRTOK_R], [
-  AC_REQUIRE([CURL_INCLUDES_STRING])dnl
-  #
-  tst_links_strtok_r="unknown"
-  tst_proto_strtok_r="unknown"
-  tst_compi_strtok_r="unknown"
-  tst_allow_strtok_r="unknown"
-  #
-  AC_MSG_CHECKING([if strtok_r can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strtok_r])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strtok_r="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strtok_r="no"
-  ])
-  #
-  if test "$tst_links_strtok_r" = "yes"; then
-    AC_MSG_CHECKING([if strtok_r is prototyped])
-    AC_EGREP_CPP([strtok_r],[
-      $curl_includes_string
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strtok_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strtok_r="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strtok_r" = "yes"; then
-    AC_MSG_CHECKING([if strtok_r is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_string
-      ]],[[
-        if(0 != strtok_r(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strtok_r="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strtok_r="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strtok_r" = "yes"; then
-    AC_MSG_CHECKING([if strtok_r usage allowed])
-    if test "x$curl_disallow_strtok_r" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strtok_r="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strtok_r="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strtok_r might be used])
-  if test "$tst_links_strtok_r" = "yes" &&
-     test "$tst_proto_strtok_r" = "yes" &&
-     test "$tst_compi_strtok_r" = "yes" &&
-     test "$tst_allow_strtok_r" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRTOK_R, 1,
-      [Define to 1 if you have the strtok_r function.])
-    ac_cv_func_strtok_r="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strtok_r="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_STRTOLL
-dnl -------------------------------------------------
-dnl Verify if strtoll is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_strtoll, then
-dnl HAVE_STRTOLL will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_STRTOLL], [
-  AC_REQUIRE([CURL_INCLUDES_STDLIB])dnl
-  #
-  tst_links_strtoll="unknown"
-  tst_proto_strtoll="unknown"
-  tst_compi_strtoll="unknown"
-  tst_allow_strtoll="unknown"
-  #
-  AC_MSG_CHECKING([if strtoll can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strtoll])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_strtoll="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_strtoll="no"
-  ])
-  #
-  if test "$tst_links_strtoll" = "yes"; then
-    AC_MSG_CHECKING([if strtoll is prototyped])
-    AC_EGREP_CPP([strtoll],[
-      $curl_includes_stdlib
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_strtoll="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_strtoll="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_strtoll" = "yes"; then
-    AC_MSG_CHECKING([if strtoll is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_stdlib
-      ]],[[
-        if(0 != strtoll(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_strtoll="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_strtoll="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_strtoll" = "yes"; then
-    AC_MSG_CHECKING([if strtoll usage allowed])
-    if test "x$curl_disallow_strtoll" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_strtoll="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_strtoll="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if strtoll might be used])
-  if test "$tst_links_strtoll" = "yes" &&
-     test "$tst_proto_strtoll" = "yes" &&
-     test "$tst_compi_strtoll" = "yes" &&
-     test "$tst_allow_strtoll" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_STRTOLL, 1,
-      [Define to 1 if you have the strtoll function.])
-    ac_cv_func_strtoll="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_strtoll="no"
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_WRITEV
-dnl -------------------------------------------------
-dnl Verify if writev is available, prototyped, and
-dnl can be compiled. If all of these are true, and
-dnl usage has not been previously disallowed with
-dnl shell variable curl_disallow_writev, then
-dnl HAVE_WRITEV will be defined.
-
-AC_DEFUN([CURL_CHECK_FUNC_WRITEV], [
-  AC_REQUIRE([CURL_INCLUDES_SYS_UIO])dnl
-  #
-  tst_links_writev="unknown"
-  tst_proto_writev="unknown"
-  tst_compi_writev="unknown"
-  tst_allow_writev="unknown"
-  #
-  AC_MSG_CHECKING([if writev can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([writev])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_writev="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_writev="no"
-  ])
-  #
-  if test "$tst_links_writev" = "yes"; then
-    AC_MSG_CHECKING([if writev is prototyped])
-    AC_EGREP_CPP([writev],[
-      $curl_includes_sys_uio
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_proto_writev="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_proto_writev="no"
-    ])
-  fi
-  #
-  if test "$tst_proto_writev" = "yes"; then
-    AC_MSG_CHECKING([if writev is compilable])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-        $curl_includes_sys_uio
-      ]],[[
-        if(0 != writev(0, 0, 0))
-          return 1;
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      tst_compi_writev="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      tst_compi_writev="no"
-    ])
-  fi
-  #
-  if test "$tst_compi_writev" = "yes"; then
-    AC_MSG_CHECKING([if writev usage allowed])
-    if test "x$curl_disallow_writev" != "xyes"; then
-      AC_MSG_RESULT([yes])
-      tst_allow_writev="yes"
-    else
-      AC_MSG_RESULT([no])
-      tst_allow_writev="no"
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if writev might be used])
-  if test "$tst_links_writev" = "yes" &&
-     test "$tst_proto_writev" = "yes" &&
-     test "$tst_compi_writev" = "yes" &&
-     test "$tst_allow_writev" = "yes"; then
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_WRITEV, 1,
-      [Define to 1 if you have the writev function.])
-    ac_cv_func_writev="yes"
-  else
-    AC_MSG_RESULT([no])
-    ac_cv_func_writev="no"
-  fi
-])
diff --git a/src/other/curl/m4/curl-override.m4 b/src/other/curl/m4/curl-override.m4
deleted file mode 100644
index 326c59c..0000000
--- a/src/other/curl/m4/curl-override.m4
+++ /dev/null
@@ -1,101 +0,0 @@
-#***************************************************************************
-#***************************************************************************
-
-# File version for 'aclocal' use. Keep it a single number.
-# serial 3
-
-dnl CURL_OVERRIDE_AUTOCONF
-dnl -------------------------------------------------
-dnl Placing a call to this macro in configure.ac after
-dnl the one to AC_INIT will make macros in this file
-dnl visible to the rest of the compilation overriding
-dnl those from Autoconf.
-
-AC_DEFUN([CURL_OVERRIDE_AUTOCONF], [
-AC_BEFORE([$0],[AC_PROG_LIBTOOL])
-# using curl-override.m4
-])
-
-dnl Override some Libtool tests
-dnl -------------------------------------------------
-dnl This is done to prevent Libtool 1.5.X from doing
-dnl unnecesary C++, Fortran and Java tests and reduce
-dnl resulting configure script by nearly 300 Kb.
-
-m4_define([AC_LIBTOOL_LANG_CXX_CONFIG],[:])
-m4_define([AC_LIBTOOL_LANG_F77_CONFIG],[:])
-m4_define([AC_LIBTOOL_LANG_GCJ_CONFIG],[:])
-
-dnl Override Autoconf's AC_LANG_PROGRAM (C)
-dnl -------------------------------------------------
-dnl This is done to prevent compiler warning
-dnl 'function declaration isn't a prototype'
-dnl in function main. This requires at least
-dnl a c89 compiler and does not suport K&R.
-
-m4_define([AC_LANG_PROGRAM(C)],
-[$1
-int main (void)
-{
-$2
- ;
- return 0;
-}])
-
-dnl Override Autoconf's AC_LANG_CALL (C)
-dnl -------------------------------------------------
-dnl This is a backport of Autoconf's 2.60 with the
-dnl embedded comments that hit the resulting script
-dnl removed. This is done to reduce configure size
-dnl and use fixed macro across Autoconf versions.
-
-m4_define([AC_LANG_CALL(C)],
-[AC_LANG_PROGRAM([$1
-m4_if([$2], [main], ,
-[
-#ifdef __cplusplus
-extern "C"
-#endif
-char $2 ();])], [return $2 ();])])
-
-dnl Override Autoconf's AC_LANG_FUNC_LINK_TRY (C)
-dnl -------------------------------------------------
-dnl This is a backport of Autoconf's 2.60 with the
-dnl embedded comments that hit the resulting script
-dnl removed. This is done to reduce configure size
-dnl and use fixed macro across Autoconf versions.
-
-m4_define([AC_LANG_FUNC_LINK_TRY(C)],
-[AC_LANG_PROGRAM(
-[
-#define $1 innocuous_$1
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef $1
-#ifdef __cplusplus
-extern "C"
-#endif
-char $1 ();
-#if defined __stub_$1 || defined __stub___$1
-choke me
-#endif
-], [return $1 ();])])
-
-dnl Override Autoconf's PATH_SEPARATOR check
-dnl -------------------------------------------------
-dnl This is done to ensure that the same check is
-dnl used across different Autoconf versions and to
-dnl allow us to use this macro early enough in the
-dnl configure script.
-
-m4_defun([_AS_PATH_SEPARATOR_PREPARE],
-[CURL_CHECK_PATH_SEPARATOR
-m4_define([$0],[])])
-
-m4_defun([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR],
-[CURL_CHECK_PATH_SEPARATOR
-m4_define([$0],[])])
-
diff --git a/src/other/curl/m4/curl-reentrant.m4 b/src/other/curl/m4/curl-reentrant.m4
deleted file mode 100644
index 2e2d868..0000000
--- a/src/other/curl/m4/curl-reentrant.m4
+++ /dev/null
@@ -1,617 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-#***************************************************************************
-
-# File version for 'aclocal' use. Keep it a single number.
-# serial 8
-
-dnl Note 1
-dnl ------
-dnl None of the CURL_CHECK_NEED_REENTRANT_* macros shall use HAVE_FOO_H to
-dnl conditionally include header files. These macros are used early in the
-dnl configure process much before header file availability is known.
-
-
-dnl CURL_CHECK_NEED_REENTRANT_ERRNO
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes errno available as a preprocessor macro.
-
-AC_DEFUN([CURL_CHECK_NEED_REENTRANT_ERRNO], [
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-#include <errno.h>
-    ]],[[
-      if(0 != errno)
-        return 1;
-    ]])
-  ],[
-    tmp_errno="yes"
-  ],[
-    tmp_errno="no"
-  ])
-  if test "$tmp_errno" = "yes"; then
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <errno.h>
-      ]],[[
-#ifdef errno
-        int dummy=1;
-#else
-        force compilation error
-#endif
-      ]])
-    ],[
-      tmp_errno="errno_macro_defined"
-    ],[
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-#define _REENTRANT
-#include <errno.h>
-        ]],[[
-#ifdef errno
-          int dummy=1;
-#else
-          force compilation error
-#endif
-        ]])
-      ],[
-        tmp_errno="errno_macro_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CURL_CHECK_NEED_REENTRANT_GMTIME_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function gmtime_r compiler visible.
-
-AC_DEFUN([CURL_CHECK_NEED_REENTRANT_GMTIME_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([gmtime_r])
-  ],[
-    tmp_gmtime_r="yes"
-  ],[
-    tmp_gmtime_r="no"
-  ])
-  if test "$tmp_gmtime_r" = "yes"; then
-    AC_EGREP_CPP([gmtime_r],[
-#include <sys/types.h>
-#include <time.h>
-    ],[
-      tmp_gmtime_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([gmtime_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <time.h>
-      ],[
-        tmp_gmtime_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CURL_CHECK_NEED_REENTRANT_LOCALTIME_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function localtime_r compiler visible.
-
-AC_DEFUN([CURL_CHECK_NEED_REENTRANT_LOCALTIME_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([localtime_r])
-  ],[
-    tmp_localtime_r="yes"
-  ],[
-    tmp_localtime_r="no"
-  ])
-  if test "$tmp_localtime_r" = "yes"; then
-    AC_EGREP_CPP([localtime_r],[
-#include <sys/types.h>
-#include <time.h>
-    ],[
-      tmp_localtime_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([localtime_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <time.h>
-      ],[
-        tmp_localtime_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CURL_CHECK_NEED_REENTRANT_STRERROR_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function strerror_r compiler visible.
-
-AC_DEFUN([CURL_CHECK_NEED_REENTRANT_STRERROR_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strerror_r])
-  ],[
-    tmp_strerror_r="yes"
-  ],[
-    tmp_strerror_r="no"
-  ])
-  if test "$tmp_strerror_r" = "yes"; then
-    AC_EGREP_CPP([strerror_r],[
-#include <sys/types.h>
-#include <string.h>
-    ],[
-      tmp_strerror_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([strerror_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <string.h>
-      ],[
-        tmp_strerror_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CURL_CHECK_NEED_REENTRANT_STRTOK_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function strtok_r compiler visible.
-
-AC_DEFUN([CURL_CHECK_NEED_REENTRANT_STRTOK_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([strtok_r])
-  ],[
-    tmp_strtok_r="yes"
-  ],[
-    tmp_strtok_r="no"
-  ])
-  if test "$tmp_strtok_r" = "yes"; then
-    AC_EGREP_CPP([strtok_r],[
-#include <sys/types.h>
-#include <string.h>
-    ],[
-      tmp_strtok_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([strtok_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <string.h>
-      ],[
-        tmp_strtok_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CURL_CHECK_NEED_REENTRANT_INET_NTOA_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function inet_ntoa_r compiler visible.
-
-AC_DEFUN([CURL_CHECK_NEED_REENTRANT_INET_NTOA_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([inet_ntoa_r])
-  ],[
-    tmp_inet_ntoa_r="yes"
-  ],[
-    tmp_inet_ntoa_r="no"
-  ])
-  if test "$tmp_inet_ntoa_r" = "yes"; then
-    AC_EGREP_CPP([inet_ntoa_r],[
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-    ],[
-      tmp_inet_ntoa_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([inet_ntoa_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-      ],[
-        tmp_inet_ntoa_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CURL_CHECK_NEED_REENTRANT_GETHOSTBYADDR_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function gethostbyaddr_r compiler visible.
-
-AC_DEFUN([CURL_CHECK_NEED_REENTRANT_GETHOSTBYADDR_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([gethostbyaddr_r])
-  ],[
-    tmp_gethostbyaddr_r="yes"
-  ],[
-    tmp_gethostbyaddr_r="no"
-  ])
-  if test "$tmp_gethostbyaddr_r" = "yes"; then
-    AC_EGREP_CPP([gethostbyaddr_r],[
-#include <sys/types.h>
-#include <netdb.h>
-    ],[
-      tmp_gethostbyaddr_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([gethostbyaddr_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-      ],[
-        tmp_gethostbyaddr_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CURL_CHECK_NEED_REENTRANT_GETHOSTBYNAME_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function gethostbyname_r compiler visible.
-
-AC_DEFUN([CURL_CHECK_NEED_REENTRANT_GETHOSTBYNAME_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([gethostbyname_r])
-  ],[
-    tmp_gethostbyname_r="yes"
-  ],[
-    tmp_gethostbyname_r="no"
-  ])
-  if test "$tmp_gethostbyname_r" = "yes"; then
-    AC_EGREP_CPP([gethostbyname_r],[
-#include <sys/types.h>
-#include <netdb.h>
-    ],[
-      tmp_gethostbyname_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([gethostbyname_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-      ],[
-        tmp_gethostbyname_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CURL_CHECK_NEED_REENTRANT_GETPROTOBYNAME_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function getprotobyname_r compiler visible.
-
-AC_DEFUN([CURL_CHECK_NEED_REENTRANT_GETPROTOBYNAME_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([getprotobyname_r])
-  ],[
-    tmp_getprotobyname_r="yes"
-  ],[
-    tmp_getprotobyname_r="no"
-  ])
-  if test "$tmp_getprotobyname_r" = "yes"; then
-    AC_EGREP_CPP([getprotobyname_r],[
-#include <sys/types.h>
-#include <netdb.h>
-    ],[
-      tmp_getprotobyname_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([getprotobyname_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-      ],[
-        tmp_getprotobyname_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CURL_CHECK_NEED_REENTRANT_GETSERVBYPORT_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes function getservbyport_r compiler visible.
-
-AC_DEFUN([CURL_CHECK_NEED_REENTRANT_GETSERVBYPORT_R], [
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([getservbyport_r])
-  ],[
-    tmp_getservbyport_r="yes"
-  ],[
-    tmp_getservbyport_r="no"
-  ])
-  if test "$tmp_getservbyport_r" = "yes"; then
-    AC_EGREP_CPP([getservbyport_r],[
-#include <sys/types.h>
-#include <netdb.h>
-    ],[
-      tmp_getservbyport_r="proto_declared"
-    ],[
-      AC_EGREP_CPP([getservbyport_r],[
-#define _REENTRANT
-#include <sys/types.h>
-#include <netdb.h>
-      ],[
-        tmp_getservbyport_r="proto_needs_reentrant"
-        tmp_need_reentrant="yes"
-      ])
-    ])
-  fi
-])
-
-
-dnl CURL_CHECK_NEED_REENTRANT_FUNCTIONS_R
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl makes several _r functions compiler visible.
-dnl Internal macro for CURL_CONFIGURE_REENTRANT.
-
-AC_DEFUN([CURL_CHECK_NEED_REENTRANT_FUNCTIONS_R], [
-  if test "$tmp_need_reentrant" = "no"; then
-    CURL_CHECK_NEED_REENTRANT_GMTIME_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CURL_CHECK_NEED_REENTRANT_LOCALTIME_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CURL_CHECK_NEED_REENTRANT_STRERROR_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CURL_CHECK_NEED_REENTRANT_STRTOK_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CURL_CHECK_NEED_REENTRANT_INET_NTOA_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CURL_CHECK_NEED_REENTRANT_GETHOSTBYADDR_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CURL_CHECK_NEED_REENTRANT_GETHOSTBYNAME_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CURL_CHECK_NEED_REENTRANT_GETPROTOBYNAME_R
-  fi
-  if test "$tmp_need_reentrant" = "no"; then
-    CURL_CHECK_NEED_REENTRANT_GETSERVBYPORT_R
-  fi
-])
-
-
-dnl CURL_CHECK_NEED_REENTRANT_SYSTEM
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _REENTRANT definition
-dnl must be unconditionally done for this platform.
-dnl Internal macro for CURL_CONFIGURE_REENTRANT.
-
-AC_DEFUN([CURL_CHECK_NEED_REENTRANT_SYSTEM], [
-  case $host_os in
-    solaris*)
-      tmp_need_reentrant="yes"
-      ;;
-    *)
-      tmp_need_reentrant="no"
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_NEED_THREAD_SAFE_SYSTEM
-dnl -------------------------------------------------
-dnl Checks if the preprocessor _THREAD_SAFE definition
-dnl must be unconditionally done for this platform.
-dnl Internal macro for CURL_CONFIGURE_THREAD_SAFE.
-
-AC_DEFUN([CURL_CHECK_NEED_THREAD_SAFE_SYSTEM], [
-  case $host_os in
-    aix[[123]].* | aix4.[[012]].*)
-      dnl aix 4.2 and older
-      tmp_need_thread_safe="no"
-      ;;
-    aix*)
-      dnl AIX 4.3 and newer
-      tmp_need_thread_safe="yes"
-      ;;
-    *)
-      tmp_need_thread_safe="no"
-      ;;
-  esac
-])
-
-
-dnl CURL_CONFIGURE_FROM_NOW_ON_WITH_REENTRANT
-dnl -------------------------------------------------
-dnl This macro ensures that configuration tests done
-dnl after this will execute with preprocessor symbol
-dnl _REENTRANT defined. This macro also ensures that
-dnl the generated config file defines NEED_REENTRANT
-dnl and that in turn setup.h will define _REENTRANT.
-dnl Internal macro for CURL_CONFIGURE_REENTRANT.
-
-AC_DEFUN([CURL_CONFIGURE_FROM_NOW_ON_WITH_REENTRANT], [
-AC_DEFINE(NEED_REENTRANT, 1,
-  [Define to 1 if _REENTRANT preprocessor symbol must be defined.])
-cat >>confdefs.h <<_EOF
-#ifndef _REENTRANT
-#  define _REENTRANT
-#endif
-_EOF
-])
-
-
-dnl CURL_CONFIGURE_FROM_NOW_ON_WITH_THREAD_SAFE
-dnl -------------------------------------------------
-dnl This macro ensures that configuration tests done
-dnl after this will execute with preprocessor symbol
-dnl _THREAD_SAFE defined. This macro also ensures that
-dnl the generated config file defines NEED_THREAD_SAFE
-dnl and that in turn setup.h will define _THREAD_SAFE.
-dnl Internal macro for CURL_CONFIGURE_THREAD_SAFE.
-
-AC_DEFUN([CURL_CONFIGURE_FROM_NOW_ON_WITH_THREAD_SAFE], [
-AC_DEFINE(NEED_THREAD_SAFE, 1,
-  [Define to 1 if _THREAD_SAFE preprocessor symbol must be defined.])
-cat >>confdefs.h <<_EOF
-#ifndef _THREAD_SAFE
-#  define _THREAD_SAFE
-#endif
-_EOF
-])
-
-
-dnl CURL_CONFIGURE_REENTRANT
-dnl -------------------------------------------------
-dnl This first checks if the preprocessor _REENTRANT
-dnl symbol is already defined. If it isn't currently
-dnl defined a set of checks are performed to verify
-dnl if its definition is required to make visible to
-dnl the compiler a set of *_r functions. Finally, if
-dnl _REENTRANT is already defined or needed it takes
-dnl care of making adjustments necessary to ensure
-dnl that it is defined equally for further configure
-dnl tests and generated config file.
-
-AC_DEFUN([CURL_CONFIGURE_REENTRANT], [
-  AC_PREREQ([2.50])dnl
-  #
-  AC_MSG_CHECKING([if _REENTRANT is already defined])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-#ifdef _REENTRANT
-      int dummy=1;
-#else
-      force compilation error
-#endif
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tmp_reentrant_initially_defined="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tmp_reentrant_initially_defined="no"
-  ])
-  #
-  if test "$tmp_reentrant_initially_defined" = "no"; then
-    AC_MSG_CHECKING([if _REENTRANT is actually needed])
-    CURL_CHECK_NEED_REENTRANT_SYSTEM
-    if test "$tmp_need_reentrant" = "no"; then
-      CURL_CHECK_NEED_REENTRANT_ERRNO
-    fi
-    if test "$tmp_need_reentrant" = "no"; then
-      CURL_CHECK_NEED_REENTRANT_FUNCTIONS_R
-    fi
-    if test "$tmp_need_reentrant" = "yes"; then
-      AC_MSG_RESULT([yes])
-    else
-      AC_MSG_RESULT([no])
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if _REENTRANT is onwards defined])
-  if test "$tmp_reentrant_initially_defined" = "yes" ||
-    test "$tmp_need_reentrant" = "yes"; then
-    CURL_CONFIGURE_FROM_NOW_ON_WITH_REENTRANT
-    AC_MSG_RESULT([yes])
-  else
-    AC_MSG_RESULT([no])
-  fi
-  #
-])
-
-
-dnl CURL_CONFIGURE_THREAD_SAFE
-dnl -------------------------------------------------
-dnl This first checks if the preprocessor _THREAD_SAFE
-dnl symbol is already defined. If it isn't currently
-dnl defined a set of checks are performed to verify
-dnl if its definition is required. Finally, if
-dnl _THREAD_SAFE is already defined or needed it takes
-dnl care of making adjustments necessary to ensure
-dnl that it is defined equally for further configure
-dnl tests and generated config file.
-
-AC_DEFUN([CURL_CONFIGURE_THREAD_SAFE], [
-  AC_PREREQ([2.50])dnl
-  #
-  AC_MSG_CHECKING([if _THREAD_SAFE is already defined])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-#ifdef _THREAD_SAFE
-      int dummy=1;
-#else
-      force compilation error
-#endif
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tmp_thread_safe_initially_defined="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tmp_thread_safe_initially_defined="no"
-  ])
-  #
-  if test "$tmp_thread_safe_initially_defined" = "no"; then
-    AC_MSG_CHECKING([if _THREAD_SAFE is actually needed])
-    CURL_CHECK_NEED_THREAD_SAFE_SYSTEM
-    if test "$tmp_need_thread_safe" = "yes"; then
-      AC_MSG_RESULT([yes])
-    else
-      AC_MSG_RESULT([no])
-    fi
-  fi
-  #
-  AC_MSG_CHECKING([if _THREAD_SAFE is onwards defined])
-  if test "$tmp_thread_safe_initially_defined" = "yes" ||
-    test "$tmp_need_thread_safe" = "yes"; then
-    CURL_CONFIGURE_FROM_NOW_ON_WITH_THREAD_SAFE
-    AC_MSG_RESULT([yes])
-  else
-    AC_MSG_RESULT([no])
-  fi
-  #
-])
-
diff --git a/src/other/curl/m4/curl-system.m4 b/src/other/curl/m4/curl-system.m4
deleted file mode 100644
index 6e3e9f9..0000000
--- a/src/other/curl/m4/curl-system.m4
+++ /dev/null
@@ -1,88 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-#***************************************************************************
-
-# File version for 'aclocal' use. Keep it a single number.
-# serial 3
-
-
-dnl CURL_CHECK_PATH_SEPARATOR
-dnl -------------------------------------------------
-dnl Check and compute the path separator for us. This
-dnl path separator is the symbol used to diferentiate
-dnl or separate paths inside the PATH environment var.
-
-AC_DEFUN([CURL_CHECK_PATH_SEPARATOR], [
-  if test -z "$curl_cv_PATH_SEPARATOR"; then
-    if test -z "$PATH"; then
-      AC_MSG_ERROR([PATH not set. Cannot continue without PATH being set.])
-    fi
-    dnl Directory count in PATH when using a colon separator.
-    tst_dirs_col=0
-    tst_save_IFS=$IFS; IFS=':'
-    for tst_dir in $PATH; do
-      IFS=$tst_save_IFS
-      test -d "$tst_dir" && tst_dirs_col=`expr $tst_dirs_col + 1`
-    done
-    IFS=$tst_save_IFS
-    dnl Directory count in PATH when using a semicolon separator.
-    tst_dirs_sem=0
-    tst_save_IFS=$IFS; IFS=';'
-    for tst_dir in $PATH; do
-      IFS=$tst_save_IFS
-      test -d "$tst_dir" && tst_dirs_sem=`expr $tst_dirs_sem + 1`
-    done
-    IFS=$tst_save_IFS
-    if test $tst_dirs_sem -eq $tst_dirs_col; then
-      dnl When both counting methods give the same result we do not want to
-      dnl chose one over the other, and consider auto-detection not possible.
-      if test -z "$PATH_SEPARATOR"; then
-        dnl Stop dead until user provides PATH_SEPARATOR definition.
-        AC_MSG_ERROR([PATH_SEPARATOR not set. Cannot continue without it.])
-      fi
-    else
-      dnl Separator with the greater directory count is the auto-detected one.
-      if test $tst_dirs_sem -gt $tst_dirs_col; then
-        tst_auto_separator=';'
-      else
-        tst_auto_separator=':'
-      fi
-      if test -z "$PATH_SEPARATOR"; then
-        dnl Simply use the auto-detected one when not already set.
-        PATH_SEPARATOR="$tst_auto_separator"
-      fi
-    fi
-    curl_cv_PATH_SEPARATOR="$PATH_SEPARATOR"
-  fi
-  AC_SUBST([PATH_SEPARATOR])
-  AC_SUBST([PATH])
-])
-
-
-dnl CURL_CHECK_PATH_SEPARATOR_REQUIRED
-dnl -------------------------------------------------
-dnl Use this to ensure that the path separator check
-dnl macro is only expanded and included once.
-
-AC_DEFUN([CURL_CHECK_PATH_SEPARATOR_REQUIRED], [
-  AC_REQUIRE([CURL_CHECK_PATH_SEPARATOR])dnl
-])
-
diff --git a/src/other/curl/m4/libtool.m4 b/src/other/curl/m4/libtool.m4
deleted file mode 100644
index 88de383..0000000
--- a/src/other/curl/m4/libtool.m4
+++ /dev/null
@@ -1,7835 +0,0 @@
-# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
-#
-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-#                 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
-#                 Inc.
-#   Written by Gordon Matzigkeit, 1996
-#
-# This file 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.
-
-m4_define([_LT_COPYING], [dnl
-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-#                 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
-#                 Inc.
-#   Written by Gordon Matzigkeit, 1996
-#
-#   This file is part of GNU Libtool.
-#
-# 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 GNU Libtool; see the file COPYING.  If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-])
-
-# serial 57 LT_INIT
-
-
-# LT_PREREQ(VERSION)
-# ------------------
-# Complain and exit if this libtool version is less that VERSION.
-m4_defun([LT_PREREQ],
-[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
-       [m4_default([$3],
-		   [m4_fatal([Libtool version $1 or higher is required],
-		             63)])],
-       [$2])])
-
-
-# _LT_CHECK_BUILDDIR
-# ------------------
-# Complain if the absolute build directory name contains unusual characters
-m4_defun([_LT_CHECK_BUILDDIR],
-[case `pwd` in
-  *\ * | *\	*)
-    AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
-esac
-])
-
-
-# LT_INIT([OPTIONS])
-# ------------------
-AC_DEFUN([LT_INIT],
-[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
-AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
-AC_BEFORE([$0], [LT_LANG])dnl
-AC_BEFORE([$0], [LT_OUTPUT])dnl
-AC_BEFORE([$0], [LTDL_INIT])dnl
-m4_require([_LT_CHECK_BUILDDIR])dnl
-
-dnl Autoconf doesn't catch unexpanded LT_ macros by default:
-m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
-m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
-dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
-dnl unless we require an AC_DEFUNed macro:
-AC_REQUIRE([LTOPTIONS_VERSION])dnl
-AC_REQUIRE([LTSUGAR_VERSION])dnl
-AC_REQUIRE([LTVERSION_VERSION])dnl
-AC_REQUIRE([LTOBSOLETE_VERSION])dnl
-m4_require([_LT_PROG_LTMAIN])dnl
-
-_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
-
-dnl Parse OPTIONS
-_LT_SET_OPTIONS([$0], [$1])
-
-# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
-
-# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-AC_SUBST(LIBTOOL)dnl
-
-_LT_SETUP
-
-# Only expand once:
-m4_define([LT_INIT])
-])# LT_INIT
-
-# Old names:
-AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
-AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
-dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
-
-
-# _LT_CC_BASENAME(CC)
-# -------------------
-# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
-m4_defun([_LT_CC_BASENAME],
-[for cc_temp in $1""; do
-  case $cc_temp in
-    compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
-    distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
-    \-*) ;;
-    *) break;;
-  esac
-done
-cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
-])
-
-
-# _LT_FILEUTILS_DEFAULTS
-# ----------------------
-# It is okay to use these file commands and assume they have been set
-# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
-m4_defun([_LT_FILEUTILS_DEFAULTS],
-[: ${CP="cp -f"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-])# _LT_FILEUTILS_DEFAULTS
-
-
-# _LT_SETUP
-# ---------
-m4_defun([_LT_SETUP],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
-AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
-
-_LT_DECL([], [host_alias], [0], [The host system])dnl
-_LT_DECL([], [host], [0])dnl
-_LT_DECL([], [host_os], [0])dnl
-dnl
-_LT_DECL([], [build_alias], [0], [The build system])dnl
-_LT_DECL([], [build], [0])dnl
-_LT_DECL([], [build_os], [0])dnl
-dnl
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([LT_PATH_LD])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-dnl
-AC_REQUIRE([AC_PROG_LN_S])dnl
-test -z "$LN_S" && LN_S="ln -s"
-_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
-dnl
-AC_REQUIRE([LT_CMD_MAX_LEN])dnl
-_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
-_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
-dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_CHECK_SHELL_FEATURES])dnl
-m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
-m4_require([_LT_CMD_RELOAD])dnl
-m4_require([_LT_CHECK_MAGIC_METHOD])dnl
-m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
-m4_require([_LT_CMD_OLD_ARCHIVE])dnl
-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
-m4_require([_LT_WITH_SYSROOT])dnl
-
-_LT_CONFIG_LIBTOOL_INIT([
-# See if we are running on zsh, and set the options which allow our
-# commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
-   setopt NO_GLOB_SUBST
-fi
-])
-if test -n "${ZSH_VERSION+set}" ; then
-   setopt NO_GLOB_SUBST
-fi
-
-_LT_CHECK_OBJDIR
-
-m4_require([_LT_TAG_COMPILER])dnl
-
-case $host_os in
-aix3*)
-  # 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 "X${COLLECT_NAMES+set}" != Xset; then
-    COLLECT_NAMES=
-    export COLLECT_NAMES
-  fi
-  ;;
-esac
-
-# Global variables:
-ofile=libtool
-can_build_shared=yes
-
-# All known linkers require a `.a' archive for static linking (except MSVC,
-# which needs '.lib').
-libext=a
-
-with_gnu_ld="$lt_cv_prog_gnu_ld"
-
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
-
-# Set sane defaults for various variables
-test -z "$CC" && CC=cc
-test -z "$LTCC" && LTCC=$CC
-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
-test -z "$LD" && LD=ld
-test -z "$ac_objext" && ac_objext=o
-
-_LT_CC_BASENAME([$compiler])
-
-# Only perform the check for file, if the check method requires it
-test -z "$MAGIC_CMD" && MAGIC_CMD=file
-case $deplibs_check_method in
-file_magic*)
-  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
-    _LT_PATH_MAGIC
-  fi
-  ;;
-esac
-
-# Use C for the default configuration in the libtool script
-LT_SUPPORTED_TAG([CC])
-_LT_LANG_C_CONFIG
-_LT_LANG_DEFAULT_CONFIG
-_LT_CONFIG_COMMANDS
-])# _LT_SETUP
-
-
-# _LT_PREPARE_SED_QUOTE_VARS
-# --------------------------
-# Define a few sed substitution that help us do robust quoting.
-m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
-[# Backslashify metacharacters that are still active within
-# double-quoted strings.
-sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\([["`\\]]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# Sed substitution to delay expansion of an escaped single quote.
-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
-
-# Sed substitution to avoid accidental globbing in evaled expressions
-no_glob_subst='s/\*/\\\*/g'
-])
-
-# _LT_PROG_LTMAIN
-# ---------------
-# Note that this code is called both from `configure', and `config.status'
-# now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably,
-# `config.status' has no value for ac_aux_dir unless we are using Automake,
-# so we pass a copy along to make sure it has a sensible value anyway.
-m4_defun([_LT_PROG_LTMAIN],
-[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
-_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
-ltmain="$ac_aux_dir/ltmain.sh"
-])# _LT_PROG_LTMAIN
-
-
-## ------------------------------------- ##
-## Accumulate code for creating libtool. ##
-## ------------------------------------- ##
-
-# So that we can recreate a full libtool script including additional
-# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
-# in macros and then make a single call at the end using the `libtool'
-# label.
-
-
-# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
-# ----------------------------------------
-# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
-m4_define([_LT_CONFIG_LIBTOOL_INIT],
-[m4_ifval([$1],
-          [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
-                     [$1
-])])])
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_INIT])
-
-
-# _LT_CONFIG_LIBTOOL([COMMANDS])
-# ------------------------------
-# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
-m4_define([_LT_CONFIG_LIBTOOL],
-[m4_ifval([$1],
-          [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
-                     [$1
-])])])
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
-
-
-# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
-# -----------------------------------------------------
-m4_defun([_LT_CONFIG_SAVE_COMMANDS],
-[_LT_CONFIG_LIBTOOL([$1])
-_LT_CONFIG_LIBTOOL_INIT([$2])
-])
-
-
-# _LT_FORMAT_COMMENT([COMMENT])
-# -----------------------------
-# Add leading comment marks to the start of each line, and a trailing
-# full-stop to the whole comment if one is not present already.
-m4_define([_LT_FORMAT_COMMENT],
-[m4_ifval([$1], [
-m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
-              [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
-)])
-
-
-
-## ------------------------ ##
-## FIXME: Eliminate VARNAME ##
-## ------------------------ ##
-
-
-# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
-# -------------------------------------------------------------------
-# CONFIGNAME is the name given to the value in the libtool script.
-# VARNAME is the (base) name used in the configure script.
-# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
-# VARNAME.  Any other value will be used directly.
-m4_define([_LT_DECL],
-[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
-    [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
-	[m4_ifval([$1], [$1], [$2])])
-    lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
-    m4_ifval([$4],
-	[lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
-    lt_dict_add_subkey([lt_decl_dict], [$2],
-	[tagged?], [m4_ifval([$5], [yes], [no])])])
-])
-
-
-# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
-# --------------------------------------------------------
-m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
-
-
-# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
-# ------------------------------------------------
-m4_define([lt_decl_tag_varnames],
-[_lt_decl_filter([tagged?], [yes], $@)])
-
-
-# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
-# ---------------------------------------------------------
-m4_define([_lt_decl_filter],
-[m4_case([$#],
-  [0], [m4_fatal([$0: too few arguments: $#])],
-  [1], [m4_fatal([$0: too few arguments: $#: $1])],
-  [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
-  [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
-  [lt_dict_filter([lt_decl_dict], $@)])[]dnl
-])
-
-
-# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
-# --------------------------------------------------
-m4_define([lt_decl_quote_varnames],
-[_lt_decl_filter([value], [1], $@)])
-
-
-# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
-# ---------------------------------------------------
-m4_define([lt_decl_dquote_varnames],
-[_lt_decl_filter([value], [2], $@)])
-
-
-# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
-# ---------------------------------------------------
-m4_define([lt_decl_varnames_tagged],
-[m4_assert([$# <= 2])dnl
-_$0(m4_quote(m4_default([$1], [[, ]])),
-    m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
-    m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
-m4_define([_lt_decl_varnames_tagged],
-[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
-
-
-# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
-# ------------------------------------------------
-m4_define([lt_decl_all_varnames],
-[_$0(m4_quote(m4_default([$1], [[, ]])),
-     m4_if([$2], [],
-	   m4_quote(lt_decl_varnames),
-	m4_quote(m4_shift($@))))[]dnl
-])
-m4_define([_lt_decl_all_varnames],
-[lt_join($@, lt_decl_varnames_tagged([$1],
-			lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
-])
-
-
-# _LT_CONFIG_STATUS_DECLARE([VARNAME])
-# ------------------------------------
-# Quote a variable value, and forward it to `config.status' so that its
-# declaration there will have the same value as in `configure'.  VARNAME
-# must have a single quote delimited value for this to work.
-m4_define([_LT_CONFIG_STATUS_DECLARE],
-[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
-
-
-# _LT_CONFIG_STATUS_DECLARATIONS
-# ------------------------------
-# We delimit libtool config variables with single quotes, so when
-# we write them to config.status, we have to be sure to quote all
-# embedded single quotes properly.  In configure, this macro expands
-# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
-#
-#    <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
-m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
-[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
-    [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
-
-
-# _LT_LIBTOOL_TAGS
-# ----------------
-# Output comment and list of tags supported by the script
-m4_defun([_LT_LIBTOOL_TAGS],
-[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
-available_tags="_LT_TAGS"dnl
-])
-
-
-# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
-# -----------------------------------
-# Extract the dictionary values for VARNAME (optionally with TAG) and
-# expand to a commented shell variable setting:
-#
-#    # Some comment about what VAR is for.
-#    visible_name=$lt_internal_name
-m4_define([_LT_LIBTOOL_DECLARE],
-[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
-					   [description])))[]dnl
-m4_pushdef([_libtool_name],
-    m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
-m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
-    [0], [_libtool_name=[$]$1],
-    [1], [_libtool_name=$lt_[]$1],
-    [2], [_libtool_name=$lt_[]$1],
-    [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
-m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
-])
-
-
-# _LT_LIBTOOL_CONFIG_VARS
-# -----------------------
-# Produce commented declarations of non-tagged libtool config variables
-# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
-# script.  Tagged libtool config variables (even for the LIBTOOL CONFIG
-# section) are produced by _LT_LIBTOOL_TAG_VARS.
-m4_defun([_LT_LIBTOOL_CONFIG_VARS],
-[m4_foreach([_lt_var],
-    m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
-    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
-
-
-# _LT_LIBTOOL_TAG_VARS(TAG)
-# -------------------------
-m4_define([_LT_LIBTOOL_TAG_VARS],
-[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
-    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
-
-
-# _LT_TAGVAR(VARNAME, [TAGNAME])
-# ------------------------------
-m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
-
-
-# _LT_CONFIG_COMMANDS
-# -------------------
-# Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of
-# variables for single and double quote escaping we saved from calls
-# to _LT_DECL, we can put quote escaped variables declarations
-# into `config.status', and then the shell code to quote escape them in
-# for loops in `config.status'.  Finally, any additional code accumulated
-# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
-m4_defun([_LT_CONFIG_COMMANDS],
-[AC_PROVIDE_IFELSE([LT_OUTPUT],
-	dnl If the libtool generation code has been placed in $CONFIG_LT,
-	dnl instead of duplicating it all over again into config.status,
-	dnl then we will have config.status run $CONFIG_LT later, so it
-	dnl needs to know what name is stored there:
-        [AC_CONFIG_COMMANDS([libtool],
-            [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
-    dnl If the libtool generation code is destined for config.status,
-    dnl expand the accumulated commands and init code now:
-    [AC_CONFIG_COMMANDS([libtool],
-        [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
-])#_LT_CONFIG_COMMANDS
-
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
-[
-
-# 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='$sed_quote_subst'
-double_quote_subst='$double_quote_subst'
-delay_variable_subst='$delay_variable_subst'
-_LT_CONFIG_STATUS_DECLARATIONS
-LTCC='$LTCC'
-LTCFLAGS='$LTCFLAGS'
-compiler='$compiler_DEFAULT'
-
-# 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 lt_decl_all_varnames([[ \
-]], lt_decl_quote_varnames); do
-    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
-    *[[\\\\\\\`\\"\\\$]]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
-      ;;
-    *)
-      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
-      ;;
-    esac
-done
-
-# Double-quote double-evaled strings.
-for var in lt_decl_all_varnames([[ \
-]], lt_decl_dquote_varnames); do
-    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
-    *[[\\\\\\\`\\"\\\$]]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
-      ;;
-    *)
-      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
-      ;;
-    esac
-done
-
-_LT_OUTPUT_LIBTOOL_INIT
-])
-
-# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
-# ------------------------------------
-# Generate a child script FILE with all initialization necessary to
-# reuse the environment learned by the parent script, and make the
-# file executable.  If COMMENT is supplied, it is inserted after the
-# `#!' sequence but before initialization text begins.  After this
-# macro, additional text can be appended to FILE to form the body of
-# the child script.  The macro ends with non-zero status if the
-# file could not be fully written (such as if the disk is full).
-m4_ifdef([AS_INIT_GENERATED],
-[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
-[m4_defun([_LT_GENERATED_FILE_INIT],
-[m4_require([AS_PREPARE])]dnl
-[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
-[lt_write_fail=0
-cat >$1 <<_ASEOF || lt_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-$2
-SHELL=\${CONFIG_SHELL-$SHELL}
-export SHELL
-_ASEOF
-cat >>$1 <<\_ASEOF || lt_write_fail=1
-AS_SHELL_SANITIZE
-_AS_PREPARE
-exec AS_MESSAGE_FD>&1
-_ASEOF
-test $lt_write_fail = 0 && chmod +x $1[]dnl
-m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
-
-# LT_OUTPUT
-# ---------
-# This macro allows early generation of the libtool script (before
-# AC_OUTPUT is called), incase it is used in configure for compilation
-# tests.
-AC_DEFUN([LT_OUTPUT],
-[: ${CONFIG_LT=./config.lt}
-AC_MSG_NOTICE([creating $CONFIG_LT])
-_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
-[# Run this file to recreate a libtool stub with the current configuration.])
-
-cat >>"$CONFIG_LT" <<\_LTEOF
-lt_cl_silent=false
-exec AS_MESSAGE_LOG_FD>>config.log
-{
-  echo
-  AS_BOX([Running $as_me.])
-} >&AS_MESSAGE_LOG_FD
-
-lt_cl_help="\
-\`$as_me' creates a local libtool stub from the current configuration,
-for use in further configure time tests before the real libtool is
-generated.
-
-Usage: $[0] [[OPTIONS]]
-
-  -h, --help      print this help, then exit
-  -V, --version   print version number, then exit
-  -q, --quiet     do not print progress messages
-  -d, --debug     don't remove temporary files
-
-Report bugs to <bug-libtool at gnu.org>."
-
-lt_cl_version="\
-m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
-m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
-configured by $[0], generated by m4_PACKAGE_STRING.
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This config.lt script is free software; the Free Software Foundation
-gives unlimited permision to copy, distribute and modify it."
-
-while test $[#] != 0
-do
-  case $[1] in
-    --version | --v* | -V )
-      echo "$lt_cl_version"; exit 0 ;;
-    --help | --h* | -h )
-      echo "$lt_cl_help"; exit 0 ;;
-    --debug | --d* | -d )
-      debug=: ;;
-    --quiet | --q* | --silent | --s* | -q )
-      lt_cl_silent=: ;;
-
-    -*) AC_MSG_ERROR([unrecognized option: $[1]
-Try \`$[0] --help' for more information.]) ;;
-
-    *) AC_MSG_ERROR([unrecognized argument: $[1]
-Try \`$[0] --help' for more information.]) ;;
-  esac
-  shift
-done
-
-if $lt_cl_silent; then
-  exec AS_MESSAGE_FD>/dev/null
-fi
-_LTEOF
-
-cat >>"$CONFIG_LT" <<_LTEOF
-_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
-_LTEOF
-
-cat >>"$CONFIG_LT" <<\_LTEOF
-AC_MSG_NOTICE([creating $ofile])
-_LT_OUTPUT_LIBTOOL_COMMANDS
-AS_EXIT(0)
-_LTEOF
-chmod +x "$CONFIG_LT"
-
-# configure is writing to config.log, but config.lt does its own redirection,
-# appending to config.log, which fails on DOS, as config.log is still kept
-# open by configure.  Here we exec the FD to /dev/null, effectively closing
-# config.log, so it can be properly (re)opened and appended to by config.lt.
-lt_cl_success=:
-test "$silent" = yes &&
-  lt_config_lt_args="$lt_config_lt_args --quiet"
-exec AS_MESSAGE_LOG_FD>/dev/null
-$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
-exec AS_MESSAGE_LOG_FD>>config.log
-$lt_cl_success || AS_EXIT(1)
-])# LT_OUTPUT
-
-
-# _LT_CONFIG(TAG)
-# ---------------
-# If TAG is the built-in tag, create an initial libtool script with a
-# default configuration from the untagged config vars.  Otherwise add code
-# to config.status for appending the configuration named by TAG from the
-# matching tagged config vars.
-m4_defun([_LT_CONFIG],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-_LT_CONFIG_SAVE_COMMANDS([
-  m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
-  m4_if(_LT_TAG, [C], [
-    # See if we are running on zsh, and set the options which 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
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $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.
-#
-_LT_COPYING
-_LT_LIBTOOL_TAGS
-
-# ### BEGIN LIBTOOL CONFIG
-_LT_LIBTOOL_CONFIG_VARS
-_LT_LIBTOOL_TAG_VARS
-# ### END LIBTOOL CONFIG
-
-_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 "X${COLLECT_NAMES+set}" != Xset; then
-  COLLECT_NAMES=
-  export COLLECT_NAMES
-fi
-_LT_EOF
-    ;;
-  esac
-
-  _LT_PROG_LTMAIN
-
-  # 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)
-
-  _LT_PROG_REPLACE_SHELLFNS
-
-   mv -f "$cfgfile" "$ofile" ||
-    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
-  chmod +x "$ofile"
-],
-[cat <<_LT_EOF >> "$ofile"
-
-dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
-dnl in a comment (ie after a #).
-# ### BEGIN LIBTOOL TAG CONFIG: $1
-_LT_LIBTOOL_TAG_VARS(_LT_TAG)
-# ### END LIBTOOL TAG CONFIG: $1
-_LT_EOF
-])dnl /m4_if
-],
-[m4_if([$1], [], [
-    PACKAGE='$PACKAGE'
-    VERSION='$VERSION'
-    TIMESTAMP='$TIMESTAMP'
-    RM='$RM'
-    ofile='$ofile'], [])
-])dnl /_LT_CONFIG_SAVE_COMMANDS
-])# _LT_CONFIG
-
-
-# LT_SUPPORTED_TAG(TAG)
-# ---------------------
-# Trace this macro to discover what tags are supported by the libtool
-# --tag option, using:
-#    autoconf --trace 'LT_SUPPORTED_TAG:$1'
-AC_DEFUN([LT_SUPPORTED_TAG], [])
-
-
-# C support is built-in for now
-m4_define([_LT_LANG_C_enabled], [])
-m4_define([_LT_TAGS], [])
-
-
-# LT_LANG(LANG)
-# -------------
-# Enable libtool support for the given language if not already enabled.
-AC_DEFUN([LT_LANG],
-[AC_BEFORE([$0], [LT_OUTPUT])dnl
-m4_case([$1],
-  [C],			[_LT_LANG(C)],
-  [C++],		[_LT_LANG(CXX)],
-  [Java],		[_LT_LANG(GCJ)],
-  [Fortran 77],		[_LT_LANG(F77)],
-  [Fortran],		[_LT_LANG(FC)],
-  [Windows Resource],	[_LT_LANG(RC)],
-  [m4_ifdef([_LT_LANG_]$1[_CONFIG],
-    [_LT_LANG($1)],
-    [m4_fatal([$0: unsupported language: "$1"])])])dnl
-])# LT_LANG
-
-
-# _LT_LANG(LANGNAME)
-# ------------------
-m4_defun([_LT_LANG],
-[m4_ifdef([_LT_LANG_]$1[_enabled], [],
-  [LT_SUPPORTED_TAG([$1])dnl
-  m4_append([_LT_TAGS], [$1 ])dnl
-  m4_define([_LT_LANG_]$1[_enabled], [])dnl
-  _LT_LANG_$1_CONFIG($1)])dnl
-])# _LT_LANG
-
-
-# _LT_LANG_DEFAULT_CONFIG
-# -----------------------
-m4_defun([_LT_LANG_DEFAULT_CONFIG],
-[AC_PROVIDE_IFELSE([AC_PROG_CXX],
-  [LT_LANG(CXX)],
-  [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
-
-AC_PROVIDE_IFELSE([AC_PROG_F77],
-  [LT_LANG(F77)],
-  [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
-
-AC_PROVIDE_IFELSE([AC_PROG_FC],
-  [LT_LANG(FC)],
-  [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
-
-dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
-dnl pulling things in needlessly.
-AC_PROVIDE_IFELSE([AC_PROG_GCJ],
-  [LT_LANG(GCJ)],
-  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
-    [LT_LANG(GCJ)],
-    [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
-      [LT_LANG(GCJ)],
-      [m4_ifdef([AC_PROG_GCJ],
-	[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
-       m4_ifdef([A][M_PROG_GCJ],
-	[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
-       m4_ifdef([LT_PROG_GCJ],
-	[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
-
-AC_PROVIDE_IFELSE([LT_PROG_RC],
-  [LT_LANG(RC)],
-  [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
-])# _LT_LANG_DEFAULT_CONFIG
-
-# Obsolete macros:
-AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
-AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
-AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
-AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
-AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
-dnl AC_DEFUN([AC_LIBTOOL_F77], [])
-dnl AC_DEFUN([AC_LIBTOOL_FC], [])
-dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
-dnl AC_DEFUN([AC_LIBTOOL_RC], [])
-
-
-# _LT_TAG_COMPILER
-# ----------------
-m4_defun([_LT_TAG_COMPILER],
-[AC_REQUIRE([AC_PROG_CC])dnl
-
-_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
-_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
-_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
-_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-])# _LT_TAG_COMPILER
-
-
-# _LT_COMPILER_BOILERPLATE
-# ------------------------
-# Check for compiler boilerplate output or warnings with
-# the simple compiler test code.
-m4_defun([_LT_COMPILER_BOILERPLATE],
-[m4_require([_LT_DECL_SED])dnl
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-])# _LT_COMPILER_BOILERPLATE
-
-
-# _LT_LINKER_BOILERPLATE
-# ----------------------
-# Check for linker boilerplate output or warnings with
-# the simple link test code.
-m4_defun([_LT_LINKER_BOILERPLATE],
-[m4_require([_LT_DECL_SED])dnl
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-])# _LT_LINKER_BOILERPLATE
-
-# _LT_REQUIRED_DARWIN_CHECKS
-# -------------------------
-m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
-  case $host_os in
-    rhapsody* | darwin*)
-    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
-    AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
-    AC_CHECK_TOOL([LIPO], [lipo], [:])
-    AC_CHECK_TOOL([OTOOL], [otool], [:])
-    AC_CHECK_TOOL([OTOOL64], [otool64], [:])
-    _LT_DECL([], [DSYMUTIL], [1],
-      [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
-    _LT_DECL([], [NMEDIT], [1],
-      [Tool to change global to local symbols on Mac OS X])
-    _LT_DECL([], [LIPO], [1],
-      [Tool to manipulate fat objects and archives on Mac OS X])
-    _LT_DECL([], [OTOOL], [1],
-      [ldd/readelf like tool for Mach-O binaries on Mac OS X])
-    _LT_DECL([], [OTOOL64], [1],
-      [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
-
-    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
-      [lt_cv_apple_cc_single_mod=no
-      if test -z "${LT_MULTI_MODULE}"; then
-	# By default we will add the -single_module flag. You can override
-	# by either setting the environment variable LT_MULTI_MODULE
-	# non-empty at configure time, or by adding -multi_module to the
-	# link flags.
-	rm -rf libconftest.dylib*
-	echo "int foo(void){return 1;}" > conftest.c
-	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
--dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
-	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
-        _lt_result=$?
-	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
-	  lt_cv_apple_cc_single_mod=yes
-	else
-	  cat conftest.err >&AS_MESSAGE_LOG_FD
-	fi
-	rm -rf libconftest.dylib*
-	rm -f conftest.*
-      fi])
-    AC_CACHE_CHECK([for -exported_symbols_list linker flag],
-      [lt_cv_ld_exported_symbols_list],
-      [lt_cv_ld_exported_symbols_list=no
-      save_LDFLAGS=$LDFLAGS
-      echo "_main" > conftest.sym
-      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
-      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
-	[lt_cv_ld_exported_symbols_list=yes],
-	[lt_cv_ld_exported_symbols_list=no])
-	LDFLAGS="$save_LDFLAGS"
-    ])
-    AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
-      [lt_cv_ld_force_load=no
-      cat > conftest.c << _LT_EOF
-int forced_loaded() { return 2;}
-_LT_EOF
-      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
-      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
-      echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
-      $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
-      echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
-      $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
-      cat > conftest.c << _LT_EOF
-int main() { return 0;}
-_LT_EOF
-      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
-      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
-      _lt_result=$?
-      if test -f conftest && test ! -s conftest.err && test $_lt_result = 0 && $GREP forced_load conftest 2>&1 >/dev/null; then
-	lt_cv_ld_force_load=yes
-      else
-	cat conftest.err >&AS_MESSAGE_LOG_FD
-      fi
-        rm -f conftest.err libconftest.a conftest conftest.c
-        rm -rf conftest.dSYM
-    ])
-    case $host_os in
-    rhapsody* | darwin1.[[012]])
-      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
-    darwin1.*)
-      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
-    darwin*) # darwin 5.x on
-      # if running on 10.5 or later, the deployment target defaults
-      # to the OS version, if on x86, and 10.4, the deployment
-      # target defaults to 10.4. Don't you love it?
-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
-	10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-	10.[[012]]*)
-	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
-	10.*)
-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-      esac
-    ;;
-  esac
-    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
-      _lt_dar_single_mod='$single_module'
-    fi
-    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
-      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
-    else
-      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
-    fi
-    if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
-      _lt_dsymutil='~$DSYMUTIL $lib || :'
-    else
-      _lt_dsymutil=
-    fi
-    ;;
-  esac
-])
-
-
-# _LT_DARWIN_LINKER_FEATURES
-# --------------------------
-# Checks for linker and compiler features on darwin
-m4_defun([_LT_DARWIN_LINKER_FEATURES],
-[
-  m4_require([_LT_REQUIRED_DARWIN_CHECKS])
-  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-  _LT_TAGVAR(hardcode_direct, $1)=no
-  _LT_TAGVAR(hardcode_automatic, $1)=yes
-  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-  if test "$lt_cv_ld_force_load" = "yes"; then
-    _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
-  else
-    _LT_TAGVAR(whole_archive_flag_spec, $1)=''
-  fi
-  _LT_TAGVAR(link_all_deplibs, $1)=yes
-  _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
-  case $cc_basename in
-     ifort*) _lt_dar_can_shared=yes ;;
-     *) _lt_dar_can_shared=$GCC ;;
-  esac
-  if test "$_lt_dar_can_shared" = "yes"; then
-    output_verbose_link_cmd=func_echo_all
-    _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
-    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
-    _LT_TAGVAR(archive_expsym_cmds, $1)="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 ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
-    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
-    m4_if([$1], [CXX],
-[   if test "$lt_cv_apple_cc_single_mod" != "yes"; then
-      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
-      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
-    fi
-],[])
-  else
-  _LT_TAGVAR(ld_shlibs, $1)=no
-  fi
-])
-
-# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
-# ----------------------------------
-# Links a minimal program and checks the executable
-# for the system default hardcoded library path. In most cases,
-# this is /usr/lib:/lib, but when the MPI compilers are used
-# the location of the communication and MPI libs are included too.
-# If we don't find anything, use the default library path according
-# to the aix ld manual.
-# Store the results from the different compilers for each TAGNAME.
-# Allow to override them for all tags through lt_cv_aix_libpath.
-m4_defun([_LT_SYS_MODULE_PATH_AIX],
-[m4_require([_LT_DECL_SED])dnl
-if test "${lt_cv_aix_libpath+set}" = set; then
-  aix_libpath=$lt_cv_aix_libpath
-else
-  AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
-  [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
-  lt_aix_libpath_sed='[
-      /Import File Strings/,/^$/ {
-	  /^0/ {
-	      s/^0  *\([^ ]*\) *$/\1/
-	      p
-	  }
-      }]'
-  _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-  # Check for a 64-bit object if we didn't find anything.
-  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
-    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-  fi],[])
-  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
-    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
-  fi
-  ])
-  aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
-fi
-])# _LT_SYS_MODULE_PATH_AIX
-
-
-# _LT_SHELL_INIT(ARG)
-# -------------------
-m4_define([_LT_SHELL_INIT],
-[m4_divert_text([M4SH-INIT], [$1
-])])# _LT_SHELL_INIT
-
-
-
-# _LT_PROG_ECHO_BACKSLASH
-# -----------------------
-# Find how we can fake an echo command that does not interpret backslash.
-# In particular, with Autoconf 2.60 or later we add some code to the start
-# of the generated configure script which will find a shell with a builtin
-# printf (which we can use as an echo command).
-m4_defun([_LT_PROG_ECHO_BACKSLASH],
-[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
-ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
-
-AC_MSG_CHECKING([how to print strings])
-# Test print first, because it will be a builtin if present.
-if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
-   test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
-  ECHO='print -r --'
-elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-  ECHO='printf %s\n'
-else
-  # Use this function as a fallback that always works.
-  func_fallback_echo ()
-  {
-    eval 'cat <<_LTECHO_EOF
-$[]1
-_LTECHO_EOF'
-  }
-  ECHO='func_fallback_echo'
-fi
-
-# func_echo_all arg...
-# Invoke $ECHO with all args, space-separated.
-func_echo_all ()
-{
-    $ECHO "$*" 
-}
-
-case "$ECHO" in
-  printf*) AC_MSG_RESULT([printf]) ;;
-  print*) AC_MSG_RESULT([print -r]) ;;
-  *) AC_MSG_RESULT([cat]) ;;
-esac
-
-m4_ifdef([_AS_DETECT_SUGGESTED],
-[_AS_DETECT_SUGGESTED([
-  test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
-    ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
-    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
-    PATH=/empty FPATH=/empty; export PATH FPATH
-    test "X`printf %s $ECHO`" = "X$ECHO" \
-      || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
-
-_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
-_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
-])# _LT_PROG_ECHO_BACKSLASH
-
-
-# _LT_WITH_SYSROOT
-# ----------------
-AC_DEFUN([_LT_WITH_SYSROOT],
-[AC_MSG_CHECKING([for sysroot])
-AC_ARG_WITH([sysroot],
-[  --with-sysroot[=DIR] Search for dependent libraries within DIR
-                        (or the compiler's sysroot if not specified).],
-[], [with_sysroot=no])
-
-dnl lt_sysroot will always be passed unquoted.  We quote it here
-dnl in case the user passed a directory name.
-lt_sysroot=
-case ${with_sysroot} in #(
- yes)
-   if test "$GCC" = yes; then
-     lt_sysroot=`$CC --print-sysroot 2>/dev/null`
-   fi
-   ;; #(
- /*)
-   lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
-   ;; #(
- no|'')
-   ;; #(
- *)
-   AC_MSG_RESULT([${with_sysroot}])
-   AC_MSG_ERROR([The sysroot must be an absolute path.])
-   ;;
-esac
-
- AC_MSG_RESULT([${lt_sysroot:-no}])
-_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
-[dependent libraries, and in which our libraries should be installed.])])
-
-# _LT_ENABLE_LOCK
-# ---------------
-m4_defun([_LT_ENABLE_LOCK],
-[AC_ARG_ENABLE([libtool-lock],
-  [AS_HELP_STRING([--disable-libtool-lock],
-    [avoid locking (might break parallel builds)])])
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-
-# Some flags need to be propagated to the compiler or linker for good
-# libtool support.
-case $host in
-ia64-*-hpux*)
-  # Find out which ABI we are using.
-  echo 'int i;' > conftest.$ac_ext
-  if AC_TRY_EVAL(ac_compile); then
-    case `/usr/bin/file conftest.$ac_objext` in
-      *ELF-32*)
-	HPUX_IA64_MODE="32"
-	;;
-      *ELF-64*)
-	HPUX_IA64_MODE="64"
-	;;
-    esac
-  fi
-  rm -rf conftest*
-  ;;
-*-*-irix6*)
-  # Find out which ABI we are using.
-  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
-  if AC_TRY_EVAL(ac_compile); then
-    if test "$lt_cv_prog_gnu_ld" = yes; then
-      case `/usr/bin/file conftest.$ac_objext` in
-	*32-bit*)
-	  LD="${LD-ld} -melf32bsmip"
-	  ;;
-	*N32*)
-	  LD="${LD-ld} -melf32bmipn32"
-	  ;;
-	*64-bit*)
-	  LD="${LD-ld} -melf64bmip"
-	;;
-      esac
-    else
-      case `/usr/bin/file conftest.$ac_objext` in
-	*32-bit*)
-	  LD="${LD-ld} -32"
-	  ;;
-	*N32*)
-	  LD="${LD-ld} -n32"
-	  ;;
-	*64-bit*)
-	  LD="${LD-ld} -64"
-	  ;;
-      esac
-    fi
-  fi
-  rm -rf conftest*
-  ;;
-
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
-  # Find out which ABI we are using.
-  echo 'int i;' > conftest.$ac_ext
-  if AC_TRY_EVAL(ac_compile); then
-    case `/usr/bin/file conftest.o` in
-      *32-bit*)
-	case $host in
-	  x86_64-*kfreebsd*-gnu)
-	    LD="${LD-ld} -m elf_i386_fbsd"
-	    ;;
-	  x86_64-*linux*)
-	    LD="${LD-ld} -m elf_i386"
-	    ;;
-	  ppc64-*linux*|powerpc64-*linux*)
-	    LD="${LD-ld} -m elf32ppclinux"
-	    ;;
-	  s390x-*linux*)
-	    LD="${LD-ld} -m elf_s390"
-	    ;;
-	  sparc64-*linux*)
-	    LD="${LD-ld} -m elf32_sparc"
-	    ;;
-	esac
-	;;
-      *64-bit*)
-	case $host in
-	  x86_64-*kfreebsd*-gnu)
-	    LD="${LD-ld} -m elf_x86_64_fbsd"
-	    ;;
-	  x86_64-*linux*)
-	    LD="${LD-ld} -m elf_x86_64"
-	    ;;
-	  ppc*-*linux*|powerpc*-*linux*)
-	    LD="${LD-ld} -m elf64ppc"
-	    ;;
-	  s390*-*linux*|s390*-*tpf*)
-	    LD="${LD-ld} -m elf64_s390"
-	    ;;
-	  sparc*-*linux*)
-	    LD="${LD-ld} -m elf64_sparc"
-	    ;;
-	esac
-	;;
-    esac
-  fi
-  rm -rf conftest*
-  ;;
-
-*-*-sco3.2v5*)
-  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-  SAVE_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS -belf"
-  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
-    [AC_LANG_PUSH(C)
-     AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
-     AC_LANG_POP])
-  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-    CFLAGS="$SAVE_CFLAGS"
-  fi
-  ;;
-sparc*-*solaris*)
-  # Find out which ABI we are using.
-  echo 'int i;' > conftest.$ac_ext
-  if AC_TRY_EVAL(ac_compile); then
-    case `/usr/bin/file conftest.o` in
-    *64-bit*)
-      case $lt_cv_prog_gnu_ld in
-      yes*) LD="${LD-ld} -m elf64_sparc" ;;
-      *)
-	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
-	  LD="${LD-ld} -64"
-	fi
-	;;
-      esac
-      ;;
-    esac
-  fi
-  rm -rf conftest*
-  ;;
-esac
-
-need_locks="$enable_libtool_lock"
-])# _LT_ENABLE_LOCK
-
-
-# _LT_PROG_AR
-# -----------
-m4_defun([_LT_PROG_AR],
-[AC_CHECK_TOOLS(AR, [ar], false)
-: ${AR=ar}
-: ${AR_FLAGS=cru}
-_LT_DECL([], [AR], [1], [The archiver])
-_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
-
-AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
-  [lt_cv_ar_at_file=no
-   AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
-     [echo conftest.$ac_objext > conftest.lst
-      lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
-      AC_TRY_EVAL([lt_ar_try])
-      if test "$ac_status" -eq 0; then
-	# Ensure the archiver fails upon bogus file names.
-	rm -f conftest.$ac_objext libconftest.a
-	AC_TRY_EVAL([lt_ar_try])
-	if test "$ac_status" -ne 0; then
-          lt_cv_ar_at_file=@
-        fi
-      fi
-      rm -f conftest.* libconftest.a
-     ])
-  ])
-
-if test "x$lt_cv_ar_at_file" = xno; then
-  archiver_list_spec=
-else
-  archiver_list_spec=$lt_cv_ar_at_file
-fi
-_LT_DECL([], [archiver_list_spec], [1],
-  [How to feed a file listing to the archiver])
-])# _LT_PROG_AR
-
-
-# _LT_CMD_OLD_ARCHIVE
-# -------------------
-m4_defun([_LT_CMD_OLD_ARCHIVE],
-[_LT_PROG_AR
-
-AC_CHECK_TOOL(STRIP, strip, :)
-test -z "$STRIP" && STRIP=:
-_LT_DECL([], [STRIP], [1], [A symbol stripping program])
-
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-test -z "$RANLIB" && RANLIB=:
-_LT_DECL([], [RANLIB], [1],
-    [Commands used to install an old-style archive])
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-if test -n "$RANLIB"; then
-  case $host_os in
-  openbsd*)
-    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
-    ;;
-  *)
-    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
-    ;;
-  esac
-  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-fi
-
-case $host_os in
-  darwin*)
-    lock_old_archive_extraction=yes ;;
-  *)
-    lock_old_archive_extraction=no ;;
-esac
-_LT_DECL([], [old_postinstall_cmds], [2])
-_LT_DECL([], [old_postuninstall_cmds], [2])
-_LT_TAGDECL([], [old_archive_cmds], [2],
-    [Commands used to build an old-style archive])
-_LT_DECL([], [lock_old_archive_extraction], [0],
-    [Whether to use a lock for old archive extraction])
-])# _LT_CMD_OLD_ARCHIVE
-
-
-# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
-#		[OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
-# ----------------------------------------------------------------
-# Check whether the given compiler option works
-AC_DEFUN([_LT_COMPILER_OPTION],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_CACHE_CHECK([$1], [$2],
-  [$2=no
-   m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-   lt_compiler_flag="$3"
-   # Insert the option either (1) after the last *FLAGS variable, or
-   # (2) before a word containing "conftest.", or (3) at the end.
-   # Note that $ac_compile itself does not contain backslashes and begins
-   # with a dollar sign (not a hyphen), so the echo should work correctly.
-   # The option is referenced via a variable to avoid confusing sed.
-   lt_compile=`echo "$ac_compile" | $SED \
-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
-   -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
-   (eval "$lt_compile" 2>conftest.err)
-   ac_status=$?
-   cat conftest.err >&AS_MESSAGE_LOG_FD
-   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
-   if (exit $ac_status) && test -s "$ac_outfile"; then
-     # The compiler can only warn and ignore the option if not recognized
-     # So say no if there are warnings other than the usual output.
-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
-     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
-     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
-       $2=yes
-     fi
-   fi
-   $RM conftest*
-])
-
-if test x"[$]$2" = xyes; then
-    m4_if([$5], , :, [$5])
-else
-    m4_if([$6], , :, [$6])
-fi
-])# _LT_COMPILER_OPTION
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
-
-
-# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
-#                  [ACTION-SUCCESS], [ACTION-FAILURE])
-# ----------------------------------------------------
-# Check whether the given linker option works
-AC_DEFUN([_LT_LINKER_OPTION],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_CACHE_CHECK([$1], [$2],
-  [$2=no
-   save_LDFLAGS="$LDFLAGS"
-   LDFLAGS="$LDFLAGS $3"
-   echo "$lt_simple_link_test_code" > conftest.$ac_ext
-   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
-     # The linker can only warn and ignore the option if not recognized
-     # So say no if there are warnings
-     if test -s conftest.err; then
-       # Append any errors to the config.log.
-       cat conftest.err 1>&AS_MESSAGE_LOG_FD
-       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
-       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
-       if diff conftest.exp conftest.er2 >/dev/null; then
-         $2=yes
-       fi
-     else
-       $2=yes
-     fi
-   fi
-   $RM -r conftest*
-   LDFLAGS="$save_LDFLAGS"
-])
-
-if test x"[$]$2" = xyes; then
-    m4_if([$4], , :, [$4])
-else
-    m4_if([$5], , :, [$5])
-fi
-])# _LT_LINKER_OPTION
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
-
-
-# LT_CMD_MAX_LEN
-#---------------
-AC_DEFUN([LT_CMD_MAX_LEN],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-# find the maximum length of command line arguments
-AC_MSG_CHECKING([the maximum length of command line arguments])
-AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
-  i=0
-  teststring="ABCD"
-
-  case $build_os in
-  msdosdjgpp*)
-    # On DJGPP, this test can blow up pretty badly due to problems in libc
-    # (any single argument exceeding 2000 bytes causes a buffer overrun
-    # during glob expansion).  Even if it were fixed, the result of this
-    # check would be larger than it should be.
-    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
-    ;;
-
-  gnu*)
-    # Under GNU Hurd, this test is not required because there is
-    # no limit to the length of command line arguments.
-    # Libtool will interpret -1 as no limit whatsoever
-    lt_cv_sys_max_cmd_len=-1;
-    ;;
-
-  cygwin* | mingw* | cegcc*)
-    # On Win9x/ME, this test blows up -- it succeeds, but takes
-    # about 5 minutes as the teststring grows exponentially.
-    # Worse, since 9x/ME are not pre-emptively multitasking,
-    # you end up with a "frozen" computer, even though with patience
-    # the test eventually succeeds (with a max line length of 256k).
-    # Instead, let's just punt: use the minimum linelength reported by
-    # all of the supported platforms: 8192 (on NT/2K/XP).
-    lt_cv_sys_max_cmd_len=8192;
-    ;;
-
-  mint*)
-    # On MiNT this can take a long time and run out of memory.
-    lt_cv_sys_max_cmd_len=8192;
-    ;;
-
-  amigaos*)
-    # On AmigaOS with pdksh, this test takes hours, literally.
-    # So we just punt and use a minimum line length of 8192.
-    lt_cv_sys_max_cmd_len=8192;
-    ;;
-
-  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
-    # This has been around since 386BSD, at least.  Likely further.
-    if test -x /sbin/sysctl; then
-      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
-    elif test -x /usr/sbin/sysctl; then
-      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
-    else
-      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs
-    fi
-    # And add a safety zone
-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
-    ;;
-
-  interix*)
-    # We know the value 262144 and hardcode it with a safety zone (like BSD)
-    lt_cv_sys_max_cmd_len=196608
-    ;;
-
-  osf*)
-    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
-    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
-    # nice to cause kernel panics so lets avoid the loop below.
-    # First set a reasonable default.
-    lt_cv_sys_max_cmd_len=16384
-    #
-    if test -x /sbin/sysconfig; then
-      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
-        *1*) lt_cv_sys_max_cmd_len=-1 ;;
-      esac
-    fi
-    ;;
-  sco3.2v5*)
-    lt_cv_sys_max_cmd_len=102400
-    ;;
-  sysv5* | sco5v6* | sysv4.2uw2*)
-    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
-    if test -n "$kargmax"; then
-      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[	 ]]//'`
-    else
-      lt_cv_sys_max_cmd_len=32768
-    fi
-    ;;
-  *)
-    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
-    if test -n "$lt_cv_sys_max_cmd_len"; then
-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
-    else
-      # Make teststring a little bigger before we do anything with it.
-      # a 1K string should be a reasonable start.
-      for i in 1 2 3 4 5 6 7 8 ; do
-        teststring=$teststring$teststring
-      done
-      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
-      # If test is not a shell built-in, we'll probably end up computing a
-      # maximum length that is only half of the actual maximum length, but
-      # we can't tell.
-      while { test "X"`func_fallback_echo "$teststring$teststring" 2>/dev/null` \
-	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&
-	      test $i != 17 # 1/2 MB should be enough
-      do
-        i=`expr $i + 1`
-        teststring=$teststring$teststring
-      done
-      # Only check the string length outside the loop.
-      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
-      teststring=
-      # Add a significant safety factor because C++ compilers can tack on
-      # massive amounts of additional arguments before passing them to the
-      # linker.  It appears as though 1/2 is a usable value.
-      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
-    fi
-    ;;
-  esac
-])
-if test -n $lt_cv_sys_max_cmd_len ; then
-  AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
-else
-  AC_MSG_RESULT(none)
-fi
-max_cmd_len=$lt_cv_sys_max_cmd_len
-_LT_DECL([], [max_cmd_len], [0],
-    [What is the maximum length of a command?])
-])# LT_CMD_MAX_LEN
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
-
-
-# _LT_HEADER_DLFCN
-# ----------------
-m4_defun([_LT_HEADER_DLFCN],
-[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
-])# _LT_HEADER_DLFCN
-
-
-# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
-#                      ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
-# ----------------------------------------------------------------
-m4_defun([_LT_TRY_DLOPEN_SELF],
-[m4_require([_LT_HEADER_DLFCN])dnl
-if test "$cross_compiling" = yes; then :
-  [$4]
-else
-  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
-  lt_status=$lt_dlunknown
-  cat > conftest.$ac_ext <<_LT_EOF
-[#line $LINENO "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-#  define LT_DLGLOBAL		RTLD_GLOBAL
-#else
-#  ifdef DL_GLOBAL
-#    define LT_DLGLOBAL		DL_GLOBAL
-#  else
-#    define LT_DLGLOBAL		0
-#  endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
-   find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-#  ifdef RTLD_LAZY
-#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
-#  else
-#    ifdef DL_LAZY
-#      define LT_DLLAZY_OR_NOW		DL_LAZY
-#    else
-#      ifdef RTLD_NOW
-#        define LT_DLLAZY_OR_NOW	RTLD_NOW
-#      else
-#        ifdef DL_NOW
-#          define LT_DLLAZY_OR_NOW	DL_NOW
-#        else
-#          define LT_DLLAZY_OR_NOW	0
-#        endif
-#      endif
-#    endif
-#  endif
-#endif
-
-/* When -fvisbility=hidden is used, assume the code has been annotated
-   correspondingly for the symbols needed.  */
-#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
-int fnord () __attribute__((visibility("default")));
-#endif
-
-int fnord () { return 42; }
-int main ()
-{
-  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-  int status = $lt_dlunknown;
-
-  if (self)
-    {
-      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
-      else
-        {
-	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
-          else puts (dlerror ());
-	}
-      /* dlclose (self); */
-    }
-  else
-    puts (dlerror ());
-
-  return status;
-}]
-_LT_EOF
-  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
-    (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
-    lt_status=$?
-    case x$lt_status in
-      x$lt_dlno_uscore) $1 ;;
-      x$lt_dlneed_uscore) $2 ;;
-      x$lt_dlunknown|x*) $3 ;;
-    esac
-  else :
-    # compilation failed
-    $3
-  fi
-fi
-rm -fr conftest*
-])# _LT_TRY_DLOPEN_SELF
-
-
-# LT_SYS_DLOPEN_SELF
-# ------------------
-AC_DEFUN([LT_SYS_DLOPEN_SELF],
-[m4_require([_LT_HEADER_DLFCN])dnl
-if test "x$enable_dlopen" != xyes; then
-  enable_dlopen=unknown
-  enable_dlopen_self=unknown
-  enable_dlopen_self_static=unknown
-else
-  lt_cv_dlopen=no
-  lt_cv_dlopen_libs=
-
-  case $host_os in
-  beos*)
-    lt_cv_dlopen="load_add_on"
-    lt_cv_dlopen_libs=
-    lt_cv_dlopen_self=yes
-    ;;
-
-  mingw* | pw32* | cegcc*)
-    lt_cv_dlopen="LoadLibrary"
-    lt_cv_dlopen_libs=
-    ;;
-
-  cygwin*)
-    lt_cv_dlopen="dlopen"
-    lt_cv_dlopen_libs=
-    ;;
-
-  darwin*)
-  # if libdl is installed we need to link against it
-    AC_CHECK_LIB([dl], [dlopen],
-		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
-    lt_cv_dlopen="dyld"
-    lt_cv_dlopen_libs=
-    lt_cv_dlopen_self=yes
-    ])
-    ;;
-
-  *)
-    AC_CHECK_FUNC([shl_load],
-	  [lt_cv_dlopen="shl_load"],
-      [AC_CHECK_LIB([dld], [shl_load],
-	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
-	[AC_CHECK_FUNC([dlopen],
-	      [lt_cv_dlopen="dlopen"],
-	  [AC_CHECK_LIB([dl], [dlopen],
-		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
-	    [AC_CHECK_LIB([svld], [dlopen],
-		  [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
-	      [AC_CHECK_LIB([dld], [dld_link],
-		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
-	      ])
-	    ])
-	  ])
-	])
-      ])
-    ;;
-  esac
-
-  if test "x$lt_cv_dlopen" != xno; then
-    enable_dlopen=yes
-  else
-    enable_dlopen=no
-  fi
-
-  case $lt_cv_dlopen in
-  dlopen)
-    save_CPPFLAGS="$CPPFLAGS"
-    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-
-    save_LDFLAGS="$LDFLAGS"
-    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-
-    save_LIBS="$LIBS"
-    LIBS="$lt_cv_dlopen_libs $LIBS"
-
-    AC_CACHE_CHECK([whether a program can dlopen itself],
-	  lt_cv_dlopen_self, [dnl
-	  _LT_TRY_DLOPEN_SELF(
-	    lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
-	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
-    ])
-
-    if test "x$lt_cv_dlopen_self" = xyes; then
-      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
-      AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
-	  lt_cv_dlopen_self_static, [dnl
-	  _LT_TRY_DLOPEN_SELF(
-	    lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
-	    lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
-      ])
-    fi
-
-    CPPFLAGS="$save_CPPFLAGS"
-    LDFLAGS="$save_LDFLAGS"
-    LIBS="$save_LIBS"
-    ;;
-  esac
-
-  case $lt_cv_dlopen_self in
-  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
-  *) enable_dlopen_self=unknown ;;
-  esac
-
-  case $lt_cv_dlopen_self_static in
-  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
-  *) enable_dlopen_self_static=unknown ;;
-  esac
-fi
-_LT_DECL([dlopen_support], [enable_dlopen], [0],
-	 [Whether dlopen is supported])
-_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
-	 [Whether dlopen of programs is supported])
-_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
-	 [Whether dlopen of statically linked programs is supported])
-])# LT_SYS_DLOPEN_SELF
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
-
-
-# _LT_COMPILER_C_O([TAGNAME])
-# ---------------------------
-# Check to see if options -c and -o are simultaneously supported by compiler.
-# This macro does not hard code the compiler like AC_PROG_CC_C_O.
-m4_defun([_LT_COMPILER_C_O],
-[m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
-  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
-  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
-   $RM -r conftest 2>/dev/null
-   mkdir conftest
-   cd conftest
-   mkdir out
-   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
-   lt_compiler_flag="-o out/conftest2.$ac_objext"
-   # Insert the option either (1) after the last *FLAGS variable, or
-   # (2) before a word containing "conftest.", or (3) at the end.
-   # Note that $ac_compile itself does not contain backslashes and begins
-   # with a dollar sign (not a hyphen), so the echo should work correctly.
-   lt_compile=`echo "$ac_compile" | $SED \
-   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
-   -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
-   (eval "$lt_compile" 2>out/conftest.err)
-   ac_status=$?
-   cat out/conftest.err >&AS_MESSAGE_LOG_FD
-   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
-   if (exit $ac_status) && test -s out/conftest2.$ac_objext
-   then
-     # The compiler can only warn and ignore the option if not recognized
-     # So say no if there are warnings
-     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
-     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
-     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
-       _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
-     fi
-   fi
-   chmod u+w . 2>&AS_MESSAGE_LOG_FD
-   $RM conftest*
-   # SGI C++ compiler will create directory out/ii_files/ for
-   # template instantiation
-   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
-   $RM out/* && rmdir out
-   cd ..
-   $RM -r conftest
-   $RM conftest*
-])
-_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
-	[Does compiler simultaneously support -c and -o options?])
-])# _LT_COMPILER_C_O
-
-
-# _LT_COMPILER_FILE_LOCKS([TAGNAME])
-# ----------------------------------
-# Check to see if we can do hard links to lock some files if needed
-m4_defun([_LT_COMPILER_FILE_LOCKS],
-[m4_require([_LT_ENABLE_LOCK])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-_LT_COMPILER_C_O([$1])
-
-hard_links="nottested"
-if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
-  # do not overwrite the value of need_locks provided by the user
-  AC_MSG_CHECKING([if we can lock with hard links])
-  hard_links=yes
-  $RM conftest*
-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  touch conftest.a
-  ln conftest.a conftest.b 2>&5 || hard_links=no
-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  AC_MSG_RESULT([$hard_links])
-  if test "$hard_links" = no; then
-    AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
-    need_locks=warn
-  fi
-else
-  need_locks=no
-fi
-_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
-])# _LT_COMPILER_FILE_LOCKS
-
-
-# _LT_CHECK_OBJDIR
-# ----------------
-m4_defun([_LT_CHECK_OBJDIR],
-[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
-[rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
-  lt_cv_objdir=.libs
-else
-  # MS-DOS does not allow filenames that begin with a dot.
-  lt_cv_objdir=_libs
-fi
-rmdir .libs 2>/dev/null])
-objdir=$lt_cv_objdir
-_LT_DECL([], [objdir], [0],
-         [The name of the directory that contains temporary libtool files])dnl
-m4_pattern_allow([LT_OBJDIR])dnl
-AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
-  [Define to the sub-directory in which libtool stores uninstalled libraries.])
-])# _LT_CHECK_OBJDIR
-
-
-# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
-# --------------------------------------
-# Check hardcoding attributes.
-m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
-[AC_MSG_CHECKING([how to hardcode library paths into programs])
-_LT_TAGVAR(hardcode_action, $1)=
-if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
-   test -n "$_LT_TAGVAR(runpath_var, $1)" ||
-   test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
-
-  # We can hardcode non-existent directories.
-  if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
-     # If the only mechanism to avoid hardcoding is shlibpath_var, we
-     # have to relink, otherwise we might link with an installed library
-     # when we should be linking with a yet-to-be-installed one
-     ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
-     test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
-    # Linking always hardcodes the temporary library directory.
-    _LT_TAGVAR(hardcode_action, $1)=relink
-  else
-    # We can link without hardcoding, and we can hardcode nonexisting dirs.
-    _LT_TAGVAR(hardcode_action, $1)=immediate
-  fi
-else
-  # We cannot hardcode anything, or else we can only hardcode existing
-  # directories.
-  _LT_TAGVAR(hardcode_action, $1)=unsupported
-fi
-AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
-
-if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
-   test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
-  # Fast installation is not supported
-  enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
-     test "$enable_shared" = no; then
-  # Fast installation is not necessary
-  enable_fast_install=needless
-fi
-_LT_TAGDECL([], [hardcode_action], [0],
-    [How to hardcode a shared library path into an executable])
-])# _LT_LINKER_HARDCODE_LIBPATH
-
-
-# _LT_CMD_STRIPLIB
-# ----------------
-m4_defun([_LT_CMD_STRIPLIB],
-[m4_require([_LT_DECL_EGREP])
-striplib=
-old_striplib=
-AC_MSG_CHECKING([whether stripping libraries is possible])
-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
-  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
-  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-  AC_MSG_RESULT([yes])
-else
-# FIXME - insert some real tests, host_os isn't really good enough
-  case $host_os in
-  darwin*)
-    if test -n "$STRIP" ; then
-      striplib="$STRIP -x"
-      old_striplib="$STRIP -S"
-      AC_MSG_RESULT([yes])
-    else
-      AC_MSG_RESULT([no])
-    fi
-    ;;
-  *)
-    AC_MSG_RESULT([no])
-    ;;
-  esac
-fi
-_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
-_LT_DECL([], [striplib], [1])
-])# _LT_CMD_STRIPLIB
-
-
-# _LT_SYS_DYNAMIC_LINKER([TAG])
-# -----------------------------
-# PORTME Fill in your ld.so characteristics
-m4_defun([_LT_SYS_DYNAMIC_LINKER],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_OBJDUMP])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_CHECK_SHELL_FEATURES])dnl
-AC_MSG_CHECKING([dynamic linker characteristics])
-m4_if([$1],
-	[], [
-if test "$GCC" = yes; then
-  case $host_os in
-    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
-    *) lt_awk_arg="/^libraries:/" ;;
-  esac
-  case $host_os in
-    mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
-    *) lt_sed_strip_eq="s,=/,/,g" ;;
-  esac
-  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
-  case $lt_search_path_spec in
-  *\;*)
-    # if the path contains ";" then we assume it to be the separator
-    # otherwise default to the standard path separator (i.e. ":") - it is
-    # assumed that no part of a normal pathname contains ";" but that should
-    # okay in the real world where ";" in dirpaths is itself problematic.
-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
-    ;;
-  *)
-    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
-    ;;
-  esac
-  # Ok, now we have the path, separated by spaces, we can step through it
-  # and add multilib dir if necessary.
-  lt_tmp_lt_search_path_spec=
-  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
-  for lt_sys_path in $lt_search_path_spec; do
-    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
-      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
-    else
-      test -d "$lt_sys_path" && \
-	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
-    fi
-  done
-  lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
-BEGIN {RS=" "; FS="/|\n";} {
-  lt_foo="";
-  lt_count=0;
-  for (lt_i = NF; lt_i > 0; lt_i--) {
-    if ($lt_i != "" && $lt_i != ".") {
-      if ($lt_i == "..") {
-        lt_count++;
-      } else {
-        if (lt_count == 0) {
-          lt_foo="/" $lt_i lt_foo;
-        } else {
-          lt_count--;
-        }
-      }
-    }
-  }
-  if (lt_foo != "") { lt_freq[[lt_foo]]++; }
-  if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
-}'`
-  # AWK program above erroneously prepends '/' to C:/dos/paths
-  # for these hosts.
-  case $host_os in
-    mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
-      $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
-  esac
-  sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
-else
-  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi])
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=".so"
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-case $host_os in
-aix3*)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
-  shlibpath_var=LIBPATH
-
-  # AIX 3 has no versioning support, so we append a major version to the name.
-  soname_spec='${libname}${release}${shared_ext}$major'
-  ;;
-
-aix[[4-9]]*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  hardcode_into_libs=yes
-  if test "$host_cpu" = ia64; then
-    # AIX 5 supports IA64
-    library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
-    shlibpath_var=LD_LIBRARY_PATH
-  else
-    # With GCC up to 2.95.x, collect2 would create an import file
-    # for dependence libraries.  The import file would start with
-    # the line `#! .'.  This would cause the generated library to
-    # depend on `.', always an invalid library.  This was fixed in
-    # development snapshots of GCC prior to 3.0.
-    case $host_os in
-      aix4 | aix4.[[01]] | aix4.[[01]].*)
-      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
-	   echo ' yes '
-	   echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
-	:
-      else
-	can_build_shared=no
-      fi
-      ;;
-    esac
-    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
-    # soname into executable. Probably we can add versioning support to
-    # collect2, so additional links can be useful in future.
-    if test "$aix_use_runtimelinking" = yes; then
-      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
-      # instead of lib<name>.a to let people know that these are not
-      # typical AIX shared libraries.
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    else
-      # We preserve .a as extension for shared libraries through AIX4.2
-      # and later when we are not doing run time linking.
-      library_names_spec='${libname}${release}.a $libname.a'
-      soname_spec='${libname}${release}${shared_ext}$major'
-    fi
-    shlibpath_var=LIBPATH
-  fi
-  ;;
-
-amigaos*)
-  case $host_cpu in
-  powerpc)
-    # Since July 2007 AmigaOS4 officially supports .so libraries.
-    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    ;;
-  m68k)
-    library_names_spec='$libname.ixlibrary $libname.a'
-    # Create ${libname}_ixlibrary.a entries in /sys/libs.
-    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
-    ;;
-  esac
-  ;;
-
-beos*)
-  library_names_spec='${libname}${shared_ext}'
-  dynamic_linker="$host_os ld.so"
-  shlibpath_var=LIBRARY_PATH
-  ;;
-
-bsdi[[45]]*)
-  version_type=linux
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
-  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
-  # the default ld.so.conf also contains /usr/contrib/lib and
-  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
-  # libtool to hard-code these into programs
-  ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
-  version_type=windows
-  shrext_cmds=".dll"
-  need_version=no
-  need_lib_prefix=no
-
-  case $GCC,$cc_basename in
-  yes,*)
-    # gcc
-    library_names_spec='$libname.dll.a'
-    # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
-      dldir=$destdir/`dirname \$dlpath`~
-      test -d \$dldir || mkdir -p \$dldir~
-      $install_prog $dir/$dlname \$dldir/$dlname~
-      chmod a+x \$dldir/$dlname~
-      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
-        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
-      fi'
-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
-      dlpath=$dir/\$dldll~
-       $RM \$dlpath'
-    shlibpath_overrides_runpath=yes
-
-    case $host_os in
-    cygwin*)
-      # Cygwin DLLs use 'cyg' prefix rather than 'lib'
-      soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
-m4_if([$1], [],[
-      sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
-      ;;
-    mingw* | cegcc*)
-      # MinGW DLLs use traditional 'lib' prefix
-      soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
-      ;;
-    pw32*)
-      # pw32 DLLs use 'pw' prefix rather than 'lib'
-      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
-      ;;
-    esac
-    dynamic_linker='Win32 ld.exe'
-    ;;
-
-  *,cl*)
-    # Native MSVC
-    libname_spec='$name'
-    soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
-    library_names_spec='${libname}.dll.lib'
-
-    case $build_os in
-    mingw*)
-      sys_lib_search_path_spec=
-      lt_save_ifs=$IFS
-      IFS=';'
-      for lt_path in $LIB
-      do
-        IFS=$lt_save_ifs
-        # Let DOS variable expansion print the short 8.3 style file name.
-        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
-        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
-      done
-      IFS=$lt_save_ifs
-      # Convert to MSYS style.
-      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
-      ;;
-    cygwin*)
-      # Convert to unix form, then to dos form, then back to unix form
-      # but this time dos style (no spaces!) so that the unix form looks
-      # like /cygdrive/c/PROGRA~1:/cygdr...
-      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
-      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
-      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
-      ;;
-    *)
-      sys_lib_search_path_spec="$LIB"
-      if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
-        # It is most probably a Windows format PATH.
-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
-      else
-        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
-      fi
-      # FIXME: find the short name or the path components, as spaces are
-      # common. (e.g. "Program Files" -> "PROGRA~1")
-      ;;
-    esac
-
-    # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
-      dldir=$destdir/`dirname \$dlpath`~
-      test -d \$dldir || mkdir -p \$dldir~
-      $install_prog $dir/$dlname \$dldir/$dlname'
-    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
-      dlpath=$dir/\$dldll~
-       $RM \$dlpath'
-    shlibpath_overrides_runpath=yes
-    dynamic_linker='Win32 link.exe'
-    ;;
-
-  *)
-    # Assume MSVC wrapper
-    library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
-    dynamic_linker='Win32 ld.exe'
-    ;;
-  esac
-  # FIXME: first we should search . and the directory the executable is in
-  shlibpath_var=PATH
-  ;;
-
-darwin* | rhapsody*)
-  dynamic_linker="$host_os dyld"
-  version_type=darwin
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
-  soname_spec='${libname}${release}${major}$shared_ext'
-  shlibpath_overrides_runpath=yes
-  shlibpath_var=DYLD_LIBRARY_PATH
-  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-m4_if([$1], [],[
-  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
-  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
-  ;;
-
-dgux*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-freebsd1*)
-  dynamic_linker=no
-  ;;
-
-freebsd* | dragonfly*)
-  # DragonFly does not have aout.  When/if they implement a new
-  # versioning mechanism, adjust this.
-  if test -x /usr/bin/objformat; then
-    objformat=`/usr/bin/objformat`
-  else
-    case $host_os in
-    freebsd[[123]]*) objformat=aout ;;
-    *) objformat=elf ;;
-    esac
-  fi
-  version_type=freebsd-$objformat
-  case $version_type in
-    freebsd-elf*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-      need_version=no
-      need_lib_prefix=no
-      ;;
-    freebsd-*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
-      need_version=yes
-      ;;
-  esac
-  shlibpath_var=LD_LIBRARY_PATH
-  case $host_os in
-  freebsd2*)
-    shlibpath_overrides_runpath=yes
-    ;;
-  freebsd3.[[01]]* | freebsdelf3.[[01]]*)
-    shlibpath_overrides_runpath=yes
-    hardcode_into_libs=yes
-    ;;
-  freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
-  freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
-    shlibpath_overrides_runpath=no
-    hardcode_into_libs=yes
-    ;;
-  *) # from 4.6 on, and DragonFly
-    shlibpath_overrides_runpath=yes
-    hardcode_into_libs=yes
-    ;;
-  esac
-  ;;
-
-gnu*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  hardcode_into_libs=yes
-  ;;
-
-haiku*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  dynamic_linker="$host_os runtime_loader"
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
-  hardcode_into_libs=yes
-  ;;
-
-hpux9* | hpux10* | hpux11*)
-  # Give a soname corresponding to the major version so that dld.sl refuses to
-  # link against other versions.
-  version_type=sunos
-  need_lib_prefix=no
-  need_version=no
-  case $host_cpu in
-  ia64*)
-    shrext_cmds='.so'
-    hardcode_into_libs=yes
-    dynamic_linker="$host_os dld.so"
-    shlibpath_var=LD_LIBRARY_PATH
-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    if test "X$HPUX_IA64_MODE" = X32; then
-      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
-    else
-      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
-    fi
-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
-    ;;
-  hppa*64*)
-    shrext_cmds='.sl'
-    hardcode_into_libs=yes
-    dynamic_linker="$host_os dld.sl"
-    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
-    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
-    ;;
-  *)
-    shrext_cmds='.sl'
-    dynamic_linker="$host_os dld.sl"
-    shlibpath_var=SHLIB_PATH
-    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    ;;
-  esac
-  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
-  postinstall_cmds='chmod 555 $lib'
-  # or fails outright, so override atomically:
-  install_override_mode=555
-  ;;
-
-interix[[3-9]]*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  ;;
-
-irix5* | irix6* | nonstopux*)
-  case $host_os in
-    nonstopux*) version_type=nonstopux ;;
-    *)
-	if test "$lt_cv_prog_gnu_ld" = yes; then
-		version_type=linux
-	else
-		version_type=irix
-	fi ;;
-  esac
-  need_lib_prefix=no
-  need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
-  case $host_os in
-  irix5* | nonstopux*)
-    libsuff= shlibsuff=
-    ;;
-  *)
-    case $LD in # libtool.m4 will add one of these switches to LD
-    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
-      libsuff= shlibsuff= libmagic=32-bit;;
-    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
-      libsuff=32 shlibsuff=N32 libmagic=N32;;
-    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
-      libsuff=64 shlibsuff=64 libmagic=64-bit;;
-    *) libsuff= shlibsuff= libmagic=never-match;;
-    esac
-    ;;
-  esac
-  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
-  shlibpath_overrides_runpath=no
-  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
-  hardcode_into_libs=yes
-  ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
-  dynamic_linker=no
-  ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-
-  # Some binutils ld are patched to set DT_RUNPATH
-  AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
-    [lt_cv_shlibpath_overrides_runpath=no
-    save_LDFLAGS=$LDFLAGS
-    save_libdir=$libdir
-    eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
-	 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
-    AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
-      [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
-	 [lt_cv_shlibpath_overrides_runpath=yes])])
-    LDFLAGS=$save_LDFLAGS
-    libdir=$save_libdir
-    ])
-  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
-
-  # This implies no fast_install, which is unacceptable.
-  # Some rework will be needed to allow for fast_install
-  # before this can be enabled.
-  hardcode_into_libs=yes
-
-  # Add ABI-specific directories to the system library path.
-  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
-
-  # Append ld.so.conf contents to the search path
-  if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
-
-  fi
-
-  # We used to test for /lib/ld.so.1 and disable shared libraries on
-  # powerpc, because MkLinux only supported shared libraries with the
-  # GNU dynamic linker.  Since this was broken with cross compilers,
-  # most powerpc-linux boxes support dynamic linking these days and
-  # people can always --disable-shared, the test was removed, and we
-  # assume the GNU/Linux dynamic linker is in use.
-  dynamic_linker='GNU/Linux ld.so'
-  ;;
-
-netbsd*)
-  version_type=sunos
-  need_lib_prefix=no
-  need_version=no
-  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-    dynamic_linker='NetBSD (a.out) ld.so'
-  else
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    dynamic_linker='NetBSD ld.elf_so'
-  fi
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  hardcode_into_libs=yes
-  ;;
-
-newsos6)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  ;;
-
-*nto* | *qnx*)
-  version_type=qnx
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  dynamic_linker='ldqnx.so'
-  ;;
-
-openbsd*)
-  version_type=sunos
-  sys_lib_dlsearch_path_spec="/usr/lib"
-  need_lib_prefix=no
-  # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
-  case $host_os in
-    openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
-    *)				need_version=no  ;;
-  esac
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-    case $host_os in
-      openbsd2.[[89]] | openbsd2.[[89]].*)
-	shlibpath_overrides_runpath=no
-	;;
-      *)
-	shlibpath_overrides_runpath=yes
-	;;
-      esac
-  else
-    shlibpath_overrides_runpath=yes
-  fi
-  ;;
-
-os2*)
-  libname_spec='$name'
-  shrext_cmds=".dll"
-  need_lib_prefix=no
-  library_names_spec='$libname${shared_ext} $libname.a'
-  dynamic_linker='OS/2 ld.exe'
-  shlibpath_var=LIBPATH
-  ;;
-
-osf3* | osf4* | osf5*)
-  version_type=osf
-  need_lib_prefix=no
-  need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
-  ;;
-
-rdos*)
-  dynamic_linker=no
-  ;;
-
-solaris*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  hardcode_into_libs=yes
-  # ldd complains unless libraries are executable
-  postinstall_cmds='chmod +x $lib'
-  ;;
-
-sunos4*)
-  version_type=sunos
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  if test "$with_gnu_ld" = yes; then
-    need_lib_prefix=no
-  fi
-  need_version=yes
-  ;;
-
-sysv4 | sysv4.3*)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  case $host_vendor in
-    sni)
-      shlibpath_overrides_runpath=no
-      need_lib_prefix=no
-      runpath_var=LD_RUN_PATH
-      ;;
-    siemens)
-      need_lib_prefix=no
-      ;;
-    motorola)
-      need_lib_prefix=no
-      need_version=no
-      shlibpath_overrides_runpath=no
-      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
-      ;;
-  esac
-  ;;
-
-sysv4*MP*)
-  if test -d /usr/nec ;then
-    version_type=linux
-    library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
-    soname_spec='$libname${shared_ext}.$major'
-    shlibpath_var=LD_LIBRARY_PATH
-  fi
-  ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  version_type=freebsd-elf
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  hardcode_into_libs=yes
-  if test "$with_gnu_ld" = yes; then
-    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
-  else
-    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
-    case $host_os in
-      sco3.2v5*)
-        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
-	;;
-    esac
-  fi
-  sys_lib_dlsearch_path_spec='/usr/lib'
-  ;;
-
-tpf*)
-  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  ;;
-
-uts4*)
-  version_type=linux
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-*)
-  dynamic_linker=no
-  ;;
-esac
-AC_MSG_RESULT([$dynamic_linker])
-test "$dynamic_linker" = no && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
-  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
-  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
-fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
-  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
-fi
-
-_LT_DECL([], [variables_saved_for_relink], [1],
-    [Variables whose values should be saved in libtool wrapper scripts and
-    restored at link time])
-_LT_DECL([], [need_lib_prefix], [0],
-    [Do we need the "lib" prefix for modules?])
-_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
-_LT_DECL([], [version_type], [0], [Library versioning type])
-_LT_DECL([], [runpath_var], [0],  [Shared library runtime path variable])
-_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
-_LT_DECL([], [shlibpath_overrides_runpath], [0],
-    [Is shlibpath searched before the hard-coded library search path?])
-_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
-_LT_DECL([], [library_names_spec], [1],
-    [[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]])
-_LT_DECL([], [soname_spec], [1],
-    [[The coded name of the library, if different from the real name]])
-_LT_DECL([], [install_override_mode], [1],
-    [Permission mode override for installation of shared libraries])
-_LT_DECL([], [postinstall_cmds], [2],
-    [Command to use after installation of a shared archive])
-_LT_DECL([], [postuninstall_cmds], [2],
-    [Command to use after uninstallation of a shared archive])
-_LT_DECL([], [finish_cmds], [2],
-    [Commands used to finish a libtool library installation in a directory])
-_LT_DECL([], [finish_eval], [1],
-    [[As "finish_cmds", except a single script fragment to be evaled but
-    not shown]])
-_LT_DECL([], [hardcode_into_libs], [0],
-    [Whether we should hardcode library paths into libraries])
-_LT_DECL([], [sys_lib_search_path_spec], [2],
-    [Compile-time system search path for libraries])
-_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
-    [Run-time system search path for libraries])
-])# _LT_SYS_DYNAMIC_LINKER
-
-
-# _LT_PATH_TOOL_PREFIX(TOOL)
-# --------------------------
-# find a file program which can recognize shared library
-AC_DEFUN([_LT_PATH_TOOL_PREFIX],
-[m4_require([_LT_DECL_EGREP])dnl
-AC_MSG_CHECKING([for $1])
-AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
-[case $MAGIC_CMD in
-[[\\/*] |  ?:[\\/]*])
-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
-  ;;
-*)
-  lt_save_MAGIC_CMD="$MAGIC_CMD"
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-dnl $ac_dummy forces splitting on constant user-supplied paths.
-dnl POSIX.2 word splitting is done only on the output of word expansions,
-dnl not every word.  This closes a longstanding sh security hole.
-  ac_dummy="m4_if([$2], , $PATH, [$2])"
-  for ac_dir in $ac_dummy; do
-    IFS="$lt_save_ifs"
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$1; then
-      lt_cv_path_MAGIC_CMD="$ac_dir/$1"
-      if test -n "$file_magic_test_file"; then
-	case $deplibs_check_method in
-	"file_magic "*)
-	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
-	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-	    $EGREP "$file_magic_regex" > /dev/null; then
-	    :
-	  else
-	    cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such.  This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem.  Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
-	  fi ;;
-	esac
-      fi
-      break
-    fi
-  done
-  IFS="$lt_save_ifs"
-  MAGIC_CMD="$lt_save_MAGIC_CMD"
-  ;;
-esac])
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
-  AC_MSG_RESULT($MAGIC_CMD)
-else
-  AC_MSG_RESULT(no)
-fi
-_LT_DECL([], [MAGIC_CMD], [0],
-	 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
-])# _LT_PATH_TOOL_PREFIX
-
-# Old name:
-AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
-
-
-# _LT_PATH_MAGIC
-# --------------
-# find a file program which can recognize a shared library
-m4_defun([_LT_PATH_MAGIC],
-[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
-if test -z "$lt_cv_path_MAGIC_CMD"; then
-  if test -n "$ac_tool_prefix"; then
-    _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
-  else
-    MAGIC_CMD=:
-  fi
-fi
-])# _LT_PATH_MAGIC
-
-
-# LT_PATH_LD
-# ----------
-# find the pathname to the GNU or non-GNU linker
-AC_DEFUN([LT_PATH_LD],
-[AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
-
-AC_ARG_WITH([gnu-ld],
-    [AS_HELP_STRING([--with-gnu-ld],
-	[assume the C compiler uses GNU ld @<:@default=no@:>@])],
-    [test "$withval" = no || with_gnu_ld=yes],
-    [with_gnu_ld=no])dnl
-
-ac_prog=ld
-if test "$GCC" = yes; then
-  # Check if gcc -print-prog-name=ld gives a path.
-  AC_MSG_CHECKING([for ld used by $CC])
-  case $host in
-  *-*-mingw*)
-    # gcc leaves a trailing carriage return which upsets mingw
-    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-  *)
-    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-  esac
-  case $ac_prog in
-    # Accept absolute paths.
-    [[\\/]]* | ?:[[\\/]]*)
-      re_direlt='/[[^/]][[^/]]*/\.\./'
-      # Canonicalize the pathname of ld
-      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
-      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
-	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
-      done
-      test -z "$LD" && LD="$ac_prog"
-      ;;
-  "")
-    # If it fails, then pretend we aren't using GCC.
-    ac_prog=ld
-    ;;
-  *)
-    # If it is relative, then search for the first ld in PATH.
-    with_gnu_ld=unknown
-    ;;
-  esac
-elif test "$with_gnu_ld" = yes; then
-  AC_MSG_CHECKING([for GNU ld])
-else
-  AC_MSG_CHECKING([for non-GNU ld])
-fi
-AC_CACHE_VAL(lt_cv_path_LD,
-[if test -z "$LD"; then
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-  for ac_dir in $PATH; do
-    IFS="$lt_save_ifs"
-    test -z "$ac_dir" && ac_dir=.
-    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      lt_cv_path_LD="$ac_dir/$ac_prog"
-      # Check to see if the program is GNU ld.  I'd rather use --version,
-      # but apparently some variants of GNU ld only accept -v.
-      # Break only if it was the GNU/non-GNU ld that we prefer.
-      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
-      *GNU* | *'with BFD'*)
-	test "$with_gnu_ld" != no && break
-	;;
-      *)
-	test "$with_gnu_ld" != yes && break
-	;;
-      esac
-    fi
-  done
-  IFS="$lt_save_ifs"
-else
-  lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi])
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
-  AC_MSG_RESULT($LD)
-else
-  AC_MSG_RESULT(no)
-fi
-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
-_LT_PATH_LD_GNU
-AC_SUBST([LD])
-
-_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
-])# LT_PATH_LD
-
-# Old names:
-AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
-AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_PROG_LD], [])
-dnl AC_DEFUN([AC_PROG_LD], [])
-
-
-# _LT_PATH_LD_GNU
-#- --------------
-m4_defun([_LT_PATH_LD_GNU],
-[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
-[# I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
-  lt_cv_prog_gnu_ld=yes
-  ;;
-*)
-  lt_cv_prog_gnu_ld=no
-  ;;
-esac])
-with_gnu_ld=$lt_cv_prog_gnu_ld
-])# _LT_PATH_LD_GNU
-
-
-# _LT_CMD_RELOAD
-# --------------
-# find reload flag for linker
-#   -- PORTME Some linkers may need a different reload flag.
-m4_defun([_LT_CMD_RELOAD],
-[AC_CACHE_CHECK([for $LD option to reload object files],
-  lt_cv_ld_reload_flag,
-  [lt_cv_ld_reload_flag='-r'])
-reload_flag=$lt_cv_ld_reload_flag
-case $reload_flag in
-"" | " "*) ;;
-*) reload_flag=" $reload_flag" ;;
-esac
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-case $host_os in
-  cygwin* | mingw* | pw32* | cegcc*)
-    if test "$GCC" != yes; then
-      reload_cmds=false
-    fi
-    ;;
-  darwin*)
-    if test "$GCC" = yes; then
-      reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-    else
-      reload_cmds='$LD$reload_flag -o $output$reload_objs'
-    fi
-    ;;
-esac
-_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
-_LT_TAGDECL([], [reload_cmds], [2])dnl
-])# _LT_CMD_RELOAD
-
-
-# _LT_CHECK_MAGIC_METHOD
-# ----------------------
-# how to check for library dependencies
-#  -- PORTME fill in with the dynamic library characteristics
-m4_defun([_LT_CHECK_MAGIC_METHOD],
-[m4_require([_LT_DECL_EGREP])
-m4_require([_LT_DECL_OBJDUMP])
-AC_CACHE_CHECK([how to recognize dependent libraries],
-lt_cv_deplibs_check_method,
-[lt_cv_file_magic_cmd='$MAGIC_CMD'
-lt_cv_file_magic_test_file=
-lt_cv_deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-
-case $host_os in
-aix[[4-9]]*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-beos*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-bsdi[[45]]*)
-  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
-  lt_cv_file_magic_cmd='/usr/bin/file -L'
-  lt_cv_file_magic_test_file=/shlib/libc.so
-  ;;
-
-cygwin*)
-  # func_win32_libid is a shell function defined in ltmain.sh
-  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
-  lt_cv_file_magic_cmd='func_win32_libid'
-  ;;
-
-mingw* | pw32*)
-  # Base MSYS/MinGW do not provide the 'file' command needed by
-  # func_win32_libid shell function, so use a weaker test based on 'objdump',
-  # unless we find 'file', for example because we are cross-compiling.
-  # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
-  if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
-    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
-    lt_cv_file_magic_cmd='func_win32_libid'
-  else
-    # Keep this pattern in sync with the one in func_win32_libid.
-    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
-    lt_cv_file_magic_cmd='$OBJDUMP -f'
-  fi
-  ;;
-
-cegcc*)
-  # use the weaker test based on 'objdump'. See mingw*.
-  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
-  lt_cv_file_magic_cmd='$OBJDUMP -f'
-  ;;
-
-darwin* | rhapsody*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-freebsd* | dragonfly*)
-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
-    case $host_cpu in
-    i*86 )
-      # Not sure whether the presence of OpenBSD here was a mistake.
-      # Let's accept both of them until this is cleared up.
-      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
-      lt_cv_file_magic_cmd=/usr/bin/file
-      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
-      ;;
-    esac
-  else
-    lt_cv_deplibs_check_method=pass_all
-  fi
-  ;;
-
-gnu*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-haiku*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-hpux10.20* | hpux11*)
-  lt_cv_file_magic_cmd=/usr/bin/file
-  case $host_cpu in
-  ia64*)
-    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
-    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
-    ;;
-  hppa*64*)
-    [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
-    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
-    ;;
-  *)
-    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
-    lt_cv_file_magic_test_file=/usr/lib/libc.sl
-    ;;
-  esac
-  ;;
-
-interix[[3-9]]*)
-  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
-  lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
-  ;;
-
-irix5* | irix6* | nonstopux*)
-  case $LD in
-  *-32|*"-32 ") libmagic=32-bit;;
-  *-n32|*"-n32 ") libmagic=N32;;
-  *-64|*"-64 ") libmagic=64-bit;;
-  *) libmagic=never-match;;
-  esac
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-netbsd*)
-  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
-  else
-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
-  fi
-  ;;
-
-newos6*)
-  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
-  lt_cv_file_magic_cmd=/usr/bin/file
-  lt_cv_file_magic_test_file=/usr/lib/libnls.so
-  ;;
-
-*nto* | *qnx*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-openbsd*)
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
-  else
-    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
-  fi
-  ;;
-
-osf3* | osf4* | osf5*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-rdos*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-solaris*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
-sysv4 | sysv4.3*)
-  case $host_vendor in
-  motorola)
-    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
-    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
-    ;;
-  ncr)
-    lt_cv_deplibs_check_method=pass_all
-    ;;
-  sequent)
-    lt_cv_file_magic_cmd='/bin/file'
-    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
-    ;;
-  sni)
-    lt_cv_file_magic_cmd='/bin/file'
-    lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
-    lt_cv_file_magic_test_file=/lib/libc.so
-    ;;
-  siemens)
-    lt_cv_deplibs_check_method=pass_all
-    ;;
-  pc)
-    lt_cv_deplibs_check_method=pass_all
-    ;;
-  esac
-  ;;
-
-tpf*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-esac
-])
-
-file_magic_glob=
-want_nocaseglob=no
-if test "$build" = "$host"; then
-  case $host_os in
-  mingw* | pw32*)
-    if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
-      want_nocaseglob=yes
-    else
-      file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
-    fi
-    ;;
-  esac
-fi
-
-file_magic_cmd=$lt_cv_file_magic_cmd
-deplibs_check_method=$lt_cv_deplibs_check_method
-test -z "$deplibs_check_method" && deplibs_check_method=unknown
-
-_LT_DECL([], [deplibs_check_method], [1],
-    [Method to check whether dependent libraries are shared objects])
-_LT_DECL([], [file_magic_cmd], [1],
-    [Command to use when deplibs_check_method = "file_magic"])
-_LT_DECL([], [file_magic_glob], [1],
-    [How to find potential files when deplibs_check_method = "file_magic"])
-_LT_DECL([], [want_nocaseglob], [1],
-    [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
-])# _LT_CHECK_MAGIC_METHOD
-
-
-# LT_PATH_NM
-# ----------
-# find the pathname to a BSD- or MS-compatible name lister
-AC_DEFUN([LT_PATH_NM],
-[AC_REQUIRE([AC_PROG_CC])dnl
-AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
-[if test -n "$NM"; then
-  # Let the user override the test.
-  lt_cv_path_NM="$NM"
-else
-  lt_nm_to_check="${ac_tool_prefix}nm"
-  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
-    lt_nm_to_check="$lt_nm_to_check nm"
-  fi
-  for lt_tmp_nm in $lt_nm_to_check; do
-    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
-      IFS="$lt_save_ifs"
-      test -z "$ac_dir" && ac_dir=.
-      tmp_nm="$ac_dir/$lt_tmp_nm"
-      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
-	# Check to see if the nm accepts a BSD-compat flag.
-	# Adding the `sed 1q' prevents false positives on HP-UX, which says:
-	#   nm: unknown option "B" ignored
-	# Tru64's nm complains that /dev/null is an invalid object file
-	case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
-	*/dev/null* | *'Invalid file or object type'*)
-	  lt_cv_path_NM="$tmp_nm -B"
-	  break
-	  ;;
-	*)
-	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
-	  */dev/null*)
-	    lt_cv_path_NM="$tmp_nm -p"
-	    break
-	    ;;
-	  *)
-	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
-	    continue # so that we can try to find one that supports BSD flags
-	    ;;
-	  esac
-	  ;;
-	esac
-      fi
-    done
-    IFS="$lt_save_ifs"
-  done
-  : ${lt_cv_path_NM=no}
-fi])
-if test "$lt_cv_path_NM" != "no"; then
-  NM="$lt_cv_path_NM"
-else
-  # Didn't find any BSD compatible name lister, look for dumpbin.
-  if test -n "$DUMPBIN"; then :
-    # Let the user override the test.
-  else
-    AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
-    case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
-    *COFF*)
-      DUMPBIN="$DUMPBIN -symbols"
-      ;;
-    *)
-      DUMPBIN=:
-      ;;
-    esac
-  fi
-  AC_SUBST([DUMPBIN])
-  if test "$DUMPBIN" != ":"; then
-    NM="$DUMPBIN"
-  fi
-fi
-test -z "$NM" && NM=nm
-AC_SUBST([NM])
-_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
-
-AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
-  [lt_cv_nm_interface="BSD nm"
-  echo "int some_variable = 0;" > conftest.$ac_ext
-  (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
-  (eval "$ac_compile" 2>conftest.err)
-  cat conftest.err >&AS_MESSAGE_LOG_FD
-  (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
-  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
-  cat conftest.err >&AS_MESSAGE_LOG_FD
-  (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
-  cat conftest.out >&AS_MESSAGE_LOG_FD
-  if $GREP 'External.*some_variable' conftest.out > /dev/null; then
-    lt_cv_nm_interface="MS dumpbin"
-  fi
-  rm -f conftest*])
-])# LT_PATH_NM
-
-# Old names:
-AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
-AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_PROG_NM], [])
-dnl AC_DEFUN([AC_PROG_NM], [])
-
-# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
-# --------------------------------
-# how to determine the name of the shared library
-# associated with a specific link library.
-#  -- PORTME fill in with the dynamic library characteristics
-m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
-[m4_require([_LT_DECL_EGREP])
-m4_require([_LT_DECL_OBJDUMP])
-m4_require([_LT_DECL_DLLTOOL])
-AC_CACHE_CHECK([how to associate runtime and link libraries],
-lt_cv_sharedlib_from_linklib_cmd,
-[lt_cv_sharedlib_from_linklib_cmd='unknown'
-
-case $host_os in
-cygwin* | mingw* | pw32* | cegcc*)
-  # two different shell functions defined in ltmain.sh
-  # decide which to use based on capabilities of $DLLTOOL
-  case `$DLLTOOL --help 2>&1` in
-  *--identify-strict*)
-    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
-    ;;
-  *)
-    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
-    ;;
-  esac
-  ;;
-*)
-  # fallback: assume linklib IS sharedlib
-  lt_cv_sharedlib_from_linklib_cmd="$ECHO"
-  ;;
-esac
-])
-sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
-test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
-
-_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
-    [Command to associate shared and link libraries])
-])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
-
-
-# _LT_PATH_MANIFEST_TOOL
-# ----------------------
-# locate the manifest tool
-m4_defun([_LT_PATH_MANIFEST_TOOL],
-[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
-test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
-AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
-  [lt_cv_path_mainfest_tool=no
-  echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
-  $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
-  cat conftest.err >&AS_MESSAGE_LOG_FD
-  if $GREP 'Manifest Tool' conftest.out > /dev/null; then
-    lt_cv_path_mainfest_tool=yes
-  fi
-  rm -f conftest*])
-if test "x$lt_cv_path_mainfest_tool" != xyes; then
-  MANIFEST_TOOL=:
-fi
-_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
-])# _LT_PATH_MANIFEST_TOOL
-
-
-# LT_LIB_M
-# --------
-# check for math library
-AC_DEFUN([LT_LIB_M],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-LIBM=
-case $host in
-*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
-  # These system don't have libm, or don't need it
-  ;;
-*-ncr-sysv4.3*)
-  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
-  AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
-  ;;
-*)
-  AC_CHECK_LIB(m, cos, LIBM="-lm")
-  ;;
-esac
-AC_SUBST([LIBM])
-])# LT_LIB_M
-
-# Old name:
-AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_CHECK_LIBM], [])
-
-
-# _LT_COMPILER_NO_RTTI([TAGNAME])
-# -------------------------------
-m4_defun([_LT_COMPILER_NO_RTTI],
-[m4_require([_LT_TAG_COMPILER])dnl
-
-_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
-
-if test "$GCC" = yes; then
-  case $cc_basename in
-  nvcc*)
-    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
-  *)
-    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
-  esac
-
-  _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
-    lt_cv_prog_compiler_rtti_exceptions,
-    [-fno-rtti -fno-exceptions], [],
-    [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
-fi
-_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
-	[Compiler flag to turn off builtin functions])
-])# _LT_COMPILER_NO_RTTI
-
-
-# _LT_CMD_GLOBAL_SYMBOLS
-# ----------------------
-m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_PROG_AWK])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-AC_REQUIRE([LT_PATH_LD])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-AC_MSG_CHECKING([command to parse $NM output from $compiler object])
-AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
-[
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[[BCDEGRST]]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
-
-# Define system-specific variables.
-case $host_os in
-aix*)
-  symcode='[[BCDT]]'
-  ;;
-cygwin* | mingw* | pw32* | cegcc*)
-  symcode='[[ABCDGISTW]]'
-  ;;
-hpux*)
-  if test "$host_cpu" = ia64; then
-    symcode='[[ABCDEGRST]]'
-  fi
-  ;;
-irix* | nonstopux*)
-  symcode='[[BCDEGRST]]'
-  ;;
-osf*)
-  symcode='[[BCDEGQRST]]'
-  ;;
-solaris*)
-  symcode='[[BDRT]]'
-  ;;
-sco3.2v5*)
-  symcode='[[DT]]'
-  ;;
-sysv4.2uw2*)
-  symcode='[[DT]]'
-  ;;
-sysv5* | sco5v6* | unixware* | OpenUNIX*)
-  symcode='[[ABDT]]'
-  ;;
-sysv4)
-  symcode='[[DFNSTU]]'
-  ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-case `$NM -V 2>&1` in
-*GNU* | *'with BFD'*)
-  symcode='[[ABCDGIRSTW]]' ;;
-esac
-
-# Transform an extracted symbol line into a proper C declaration.
-# Some systems (esp. on ia64) link data and code symbols differently,
-# so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-
-# Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
-
-# Handle CRLF in mingw tool chain
-opt_cr=
-case $build_os in
-mingw*)
-  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
-  ;;
-esac
-
-# Try without a prefix underscore, then with it.
-for ac_symprfx in "" "_"; do
-
-  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
-  symxfrm="\\1 $ac_symprfx\\2 \\2"
-
-  # Write the raw and C identifiers.
-  if test "$lt_cv_nm_interface" = "MS dumpbin"; then
-    # Fake it for dumpbin and say T for any non-static function
-    # and D for any global variable.
-    # Also find C++ and __fastcall symbols from MSVC++,
-    # which start with @ or ?.
-    lt_cv_sys_global_symbol_pipe="$AWK ['"\
-"     {last_section=section; section=\$ 3};"\
-"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
-"     \$ 0!~/External *\|/{next};"\
-"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
-"     {if(hide[section]) next};"\
-"     {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-"     {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-"     s[1]~/^[@?]/{print s[1], s[1]; next};"\
-"     s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
-"     ' prfx=^$ac_symprfx]"
-  else
-    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
-  fi
-  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
-
-  # Check to see that the pipe works correctly.
-  pipe_works=no
-
-  rm -f conftest*
-  cat > conftest.$ac_ext <<_LT_EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(void);
-void nm_test_func(void){}
-#ifdef __cplusplus
-}
-#endif
-int main(){nm_test_var='a';nm_test_func();return(0);}
-_LT_EOF
-
-  if AC_TRY_EVAL(ac_compile); then
-    # Now try to grab the symbols.
-    nlist=conftest.nm
-    if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
-      # Try sorting and uniquifying the output.
-      if sort "$nlist" | uniq > "$nlist"T; then
-	mv -f "$nlist"T "$nlist"
-      else
-	rm -f "$nlist"T
-      fi
-
-      # Make sure that we snagged all the symbols we need.
-      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
-	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
-	  cat <<_LT_EOF > conftest.$ac_ext
-/* 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 con't be const, because runtime
-   relocations are performed -- see ld's documentation on pseudo-relocs.  */
-# define LT@&t at _DLSYM_CONST
-#elif defined(__osf__)
-/* This system does not cope well with relocations in const data.  */
-# define LT@&t at _DLSYM_CONST
-#else
-# define LT@&t at _DLSYM_CONST const
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-_LT_EOF
-	  # Now generate the symbol file.
-	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
-
-	  cat <<_LT_EOF >> conftest.$ac_ext
-
-/* The mapping between symbol names and symbols.  */
-LT@&t at _DLSYM_CONST struct {
-  const char *name;
-  void       *address;
-}
-lt__PROGRAM__LTX_preloaded_symbols[[]] =
-{
-  { "@PROGRAM@", (void *) 0 },
-_LT_EOF
-	  $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
-	  cat <<\_LT_EOF >> conftest.$ac_ext
-  {0, (void *) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
-  return lt__PROGRAM__LTX_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-_LT_EOF
-	  # Now try linking the two files.
-	  mv conftest.$ac_objext conftstm.$ac_objext
-	  lt_globsym_save_LIBS=$LIBS
-	  lt_globsym_save_CFLAGS=$CFLAGS
-	  LIBS="conftstm.$ac_objext"
-	  CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
-	  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
-	    pipe_works=yes
-	  fi
-	  LIBS=$lt_globsym_save_LIBS
-	  CFLAGS=$lt_globsym_save_CFLAGS
-	else
-	  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
-	fi
-      else
-	echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
-      fi
-    else
-      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
-    fi
-  else
-    echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
-    cat conftest.$ac_ext >&5
-  fi
-  rm -rf conftest* conftst*
-
-  # Do not use the global_symbol_pipe unless it works.
-  if test "$pipe_works" = yes; then
-    break
-  else
-    lt_cv_sys_global_symbol_pipe=
-  fi
-done
-])
-if test -z "$lt_cv_sys_global_symbol_pipe"; then
-  lt_cv_sys_global_symbol_to_cdecl=
-fi
-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
-  AC_MSG_RESULT(failed)
-else
-  AC_MSG_RESULT(ok)
-fi
-
-# Response file support.
-if test "$lt_cv_nm_interface" = "MS dumpbin"; then
-  nm_file_list_spec='@'
-elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
-  nm_file_list_spec='@'
-fi
-
-_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
-    [Take the output of nm and produce a listing of raw symbols and C names])
-_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
-    [Transform the output of nm in a proper C declaration])
-_LT_DECL([global_symbol_to_c_name_address],
-    [lt_cv_sys_global_symbol_to_c_name_address], [1],
-    [Transform the output of nm in a C name address pair])
-_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
-    [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
-    [Transform the output of nm in a C name address pair when lib prefix is needed])
-_LT_DECL([], [nm_file_list_spec], [1],
-    [Specify filename containing input files for $NM])
-]) # _LT_CMD_GLOBAL_SYMBOLS
-
-
-# _LT_COMPILER_PIC([TAGNAME])
-# ---------------------------
-m4_defun([_LT_COMPILER_PIC],
-[m4_require([_LT_TAG_COMPILER])dnl
-_LT_TAGVAR(lt_prog_compiler_wl, $1)=
-_LT_TAGVAR(lt_prog_compiler_pic, $1)=
-_LT_TAGVAR(lt_prog_compiler_static, $1)=
-
-m4_if([$1], [CXX], [
-  # C++ specific cases for pic, static, wl, etc.
-  if test "$GXX" = yes; then
-    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-
-    case $host_os in
-    aix*)
-      # All AIX code is PIC.
-      if test "$host_cpu" = ia64; then
-	# AIX 5 now supports IA64 processor
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-        ;;
-      m68k)
-            # FIXME: we need at least 68020 code to build shared libraries, but
-            # adding the `-m68020' flag to GCC prevents building anything better,
-            # like `-m68040'.
-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
-        ;;
-      esac
-      ;;
-
-    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
-      # PIC is the default for these OSes.
-      ;;
-    mingw* | cygwin* | os2* | pw32* | cegcc*)
-      # This hack is so that the source file can tell whether it is being
-      # built for inclusion in a dll (and should export symbols for example).
-      # Although the cygwin gcc ignores -fPIC, still need this for old-style
-      # (--disable-auto-import) libraries
-      m4_if([$1], [GCJ], [],
-	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
-      ;;
-    darwin* | rhapsody*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
-      ;;
-    *djgpp*)
-      # DJGPP does not support shared libraries at all
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)=
-      ;;
-    haiku*)
-      # PIC is the default for Haiku.
-      # The "-static" flag exists, but is broken.
-      _LT_TAGVAR(lt_prog_compiler_static, $1)=
-      ;;
-    interix[[3-9]]*)
-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
-      # Instead, we relocate shared libraries at runtime.
-      ;;
-    sysv4*MP*)
-      if test -d /usr/nec; then
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
-      fi
-      ;;
-    hpux*)
-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
-      # sets the default TLS model and affects inlining.
-      case $host_cpu in
-      hppa*64*)
-	;;
-      *)
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-	;;
-      esac
-      ;;
-    *qnx* | *nto*)
-      # QNX uses GNU C++, but need to define -shared option too, otherwise
-      # it will coredump.
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
-      ;;
-    *)
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-      ;;
-    esac
-  else
-    case $host_os in
-      aix[[4-9]]*)
-	# All AIX code is PIC.
-	if test "$host_cpu" = ia64; then
-	  # AIX 5 now supports IA64 processor
-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	else
-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
-	fi
-	;;
-      chorus*)
-	case $cc_basename in
-	cxch68*)
-	  # Green Hills C++ Compiler
-	  # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
-	  ;;
-	esac
-	;;
-      mingw* | cygwin* | os2* | pw32* | cegcc*)
-	# This hack is so that the source file can tell whether it is being
-	# built for inclusion in a dll (and should export symbols for example).
-	m4_if([$1], [GCJ], [],
-	  [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
-	;;
-      dgux*)
-	case $cc_basename in
-	  ec++*)
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	    ;;
-	  ghcx*)
-	    # Green Hills C++ Compiler
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      freebsd* | dragonfly*)
-	# FreeBSD uses GNU C++
-	;;
-      hpux9* | hpux10* | hpux11*)
-	case $cc_basename in
-	  CC*)
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
-	    if test "$host_cpu" != ia64; then
-	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
-	    fi
-	    ;;
-	  aCC*)
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
-	    case $host_cpu in
-	    hppa*64*|ia64*)
-	      # +Z the default
-	      ;;
-	    *)
-	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
-	      ;;
-	    esac
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      interix*)
-	# This is c89, which is MS Visual C++ (no shared libs)
-	# Anyone wants to do a port?
-	;;
-      irix5* | irix6* | nonstopux*)
-	case $cc_basename in
-	  CC*)
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-	    # CC pic flag -KPIC is the default.
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      linux* | k*bsd*-gnu | kopensolaris*-gnu)
-	case $cc_basename in
-	  KCC*)
-	    # KAI C++ Compiler
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-	    ;;
-	  ecpc* )
-	    # old Intel C++ for x86_64 which still supported -KPIC.
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-	    ;;
-	  icpc* )
-	    # Intel C++, used to be incompatible with GCC.
-	    # ICC 10 doesn't accept -KPIC any more.
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-	    ;;
-	  pgCC* | pgcpp*)
-	    # Portland Group C++ compiler
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	    ;;
-	  cxx*)
-	    # Compaq C++
-	    # Make sure the PIC flag is empty.  It appears that all Alpha
-	    # Linux and Compaq Tru64 Unix objects are PIC.
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-	    ;;
-	  xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
-	    # IBM XL 8.0, 9.0 on PPC and BlueGene
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
-	    ;;
-	  *)
-	    case `$CC -V 2>&1 | sed 5q` in
-	    *Sun\ C*)
-	      # Sun C++ 5.9
-	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
-	      ;;
-	    esac
-	    ;;
-	esac
-	;;
-      lynxos*)
-	;;
-      m88k*)
-	;;
-      mvs*)
-	case $cc_basename in
-	  cxx*)
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      netbsd*)
-	;;
-      *qnx* | *nto*)
-        # QNX uses GNU C++, but need to define -shared option too, otherwise
-        # it will coredump.
-        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
-        ;;
-      osf3* | osf4* | osf5*)
-	case $cc_basename in
-	  KCC*)
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
-	    ;;
-	  RCC*)
-	    # Rational C++ 2.4.1
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
-	    ;;
-	  cxx*)
-	    # Digital/Compaq C++
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    # Make sure the PIC flag is empty.  It appears that all Alpha
-	    # Linux and Compaq Tru64 Unix objects are PIC.
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      psos*)
-	;;
-      solaris*)
-	case $cc_basename in
-	  CC* | sunCC*)
-	    # Sun C++ 4.2, 5.x and Centerline C++
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
-	    ;;
-	  gcx*)
-	    # Green Hills C++ Compiler
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      sunos4*)
-	case $cc_basename in
-	  CC*)
-	    # Sun C++ 4.x
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	    ;;
-	  lcc*)
-	    # Lucid
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
-	case $cc_basename in
-	  CC*)
-	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	    ;;
-	esac
-	;;
-      tandem*)
-	case $cc_basename in
-	  NCC*)
-	    # NonStop-UX NCC 3.20
-	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	    ;;
-	  *)
-	    ;;
-	esac
-	;;
-      vxworks*)
-	;;
-      *)
-	_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
-	;;
-    esac
-  fi
-],
-[
-  if test "$GCC" = yes; then
-    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-
-    case $host_os in
-      aix*)
-      # All AIX code is PIC.
-      if test "$host_cpu" = ia64; then
-	# AIX 5 now supports IA64 processor
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-        ;;
-      m68k)
-            # FIXME: we need at least 68020 code to build shared libraries, but
-            # adding the `-m68020' flag to GCC prevents building anything better,
-            # like `-m68040'.
-            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
-        ;;
-      esac
-      ;;
-
-    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
-      # PIC is the default for these OSes.
-      ;;
-
-    mingw* | cygwin* | pw32* | os2* | cegcc*)
-      # This hack is so that the source file can tell whether it is being
-      # built for inclusion in a dll (and should export symbols for example).
-      # Although the cygwin gcc ignores -fPIC, still need this for old-style
-      # (--disable-auto-import) libraries
-      m4_if([$1], [GCJ], [],
-	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
-      ;;
-
-    darwin* | rhapsody*)
-      # PIC is the default on this platform
-      # Common symbols not allowed in MH_DYLIB files
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
-      ;;
-
-    haiku*)
-      # PIC is the default for Haiku.
-      # The "-static" flag exists, but is broken.
-      _LT_TAGVAR(lt_prog_compiler_static, $1)=
-      ;;
-
-    hpux*)
-      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
-      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
-      # sets the default TLS model and affects inlining.
-      case $host_cpu in
-      hppa*64*)
-	# +Z the default
-	;;
-      *)
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-	;;
-      esac
-      ;;
-
-    interix[[3-9]]*)
-      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
-      # Instead, we relocate shared libraries at runtime.
-      ;;
-
-    msdosdjgpp*)
-      # Just because we use GCC doesn't mean we suddenly get shared libraries
-      # on systems that don't support them.
-      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
-      enable_shared=no
-      ;;
-
-    *nto* | *qnx*)
-      # QNX uses GNU C++, but need to define -shared option too, otherwise
-      # it will coredump.
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
-      ;;
-
-    sysv4*MP*)
-      if test -d /usr/nec; then
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
-      fi
-      ;;
-
-    *)
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-      ;;
-    esac
-
-    case $cc_basename in
-    nvcc*) # Cuda Compiler Driver 2.2
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Xcompiler -fPIC'
-      ;;
-    esac
-  else
-    # PORTME Check for flag to pass linker flags through the system compiler.
-    case $host_os in
-    aix*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      if test "$host_cpu" = ia64; then
-	# AIX 5 now supports IA64 processor
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      else
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
-      fi
-      ;;
-
-    mingw* | cygwin* | pw32* | os2* | cegcc*)
-      # This hack is so that the source file can tell whether it is being
-      # built for inclusion in a dll (and should export symbols for example).
-      m4_if([$1], [GCJ], [],
-	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
-      ;;
-
-    hpux9* | hpux10* | hpux11*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
-      # not for PA HP-UX.
-      case $host_cpu in
-      hppa*64*|ia64*)
-	# +Z the default
-	;;
-      *)
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
-	;;
-      esac
-      # Is there a better lt_prog_compiler_static that works with the bundled CC?
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
-      ;;
-
-    irix5* | irix6* | nonstopux*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      # PIC (with -KPIC) is the default.
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-      ;;
-
-    linux* | k*bsd*-gnu | kopensolaris*-gnu)
-      case $cc_basename in
-      # old Intel for x86_64 which still supported -KPIC.
-      ecc*)
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-        ;;
-      # icc used to be incompatible with GCC.
-      # ICC 10 doesn't accept -KPIC any more.
-      icc* | ifort*)
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-        ;;
-      # Lahey Fortran 8.1.
-      lf95*)
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
-	;;
-      nagfor*)
-	# NAG Fortran compiler
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	;;
-      pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
-        # Portland Group compilers (*not* the Pentium gcc compiler,
-	# which looks to be a dead project)
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-        ;;
-      ccc*)
-        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-        # All Alpha code is PIC.
-        _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-        ;;
-      xl* | bgxl* | bgf* | mpixl*)
-	# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
-	;;
-      *)
-	case `$CC -V 2>&1 | sed 5q` in
-	*Sun\ F* | *Sun*Fortran*)
-	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
-	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	  _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
-	  ;;
-	*Sun\ C*)
-	  # Sun C 5.9
-	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	  ;;
-	esac
-	;;
-      esac
-      ;;
-
-    newsos6)
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      ;;
-
-    *nto* | *qnx*)
-      # QNX uses GNU C++, but need to define -shared option too, otherwise
-      # it will coredump.
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
-      ;;
-
-    osf3* | osf4* | osf5*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      # All OSF/1 code is PIC.
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-      ;;
-
-    rdos*)
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
-      ;;
-
-    solaris*)
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      case $cc_basename in
-      f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
-      *)
-	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
-      esac
-      ;;
-
-    sunos4*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      ;;
-
-    sysv4 | sysv4.2uw2* | sysv4.3*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      ;;
-
-    sysv4*MP*)
-      if test -d /usr/nec ;then
-	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
-	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      fi
-      ;;
-
-    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      ;;
-
-    unicos*)
-      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
-      ;;
-
-    uts4*)
-      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-      ;;
-
-    *)
-      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
-      ;;
-    esac
-  fi
-])
-case $host_os in
-  # For platforms which do not support PIC, -DPIC is meaningless:
-  *djgpp*)
-    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
-    ;;
-  *)
-    _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t at m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
-    ;;
-esac
-
-AC_CACHE_CHECK([for $compiler option to produce PIC],
-  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
-  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
-_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
-  _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
-    [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
-    [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t at m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
-    [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
-     "" | " "*) ;;
-     *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
-     esac],
-    [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
-     _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
-fi
-_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
-	[Additional compiler flags for building library objects])
-
-_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
-	[How to pass a linker flag through the compiler])
-#
-# Check to make sure the static flag actually works.
-#
-wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
-_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
-  _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
-  $lt_tmp_static_flag,
-  [],
-  [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
-_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
-	[Compiler flag to prevent dynamic linking])
-])# _LT_COMPILER_PIC
-
-
-# _LT_LINKER_SHLIBS([TAGNAME])
-# ----------------------------
-# See if the linker supports building shared libraries.
-m4_defun([_LT_LINKER_SHLIBS],
-[AC_REQUIRE([LT_PATH_LD])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-m4_require([_LT_PATH_MANIFEST_TOOL])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
-m4_if([$1], [CXX], [
-  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
-  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
-  case $host_os in
-  aix[[4-9]]*)
-    # If we're using GNU nm, then we don't want the "-C" option.
-    # -C means demangle to AIX nm, but means don't demangle with GNU nm
-    # Also, AIX nm treats weak defined symbols like other global defined
-    # symbols, whereas GNU nm marks them as "W".
-    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
-    else
-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
-    fi
-    ;;
-  pw32*)
-    _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
-    ;;
-  cygwin* | mingw* | cegcc*)
-    case $cc_basename in
-    cl*) ;;
-    *)
-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
-      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
-      ;;
-    esac
-    ;;
-  *)
-    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
-    ;;
-  esac
-], [
-  runpath_var=
-  _LT_TAGVAR(allow_undefined_flag, $1)=
-  _LT_TAGVAR(always_export_symbols, $1)=no
-  _LT_TAGVAR(archive_cmds, $1)=
-  _LT_TAGVAR(archive_expsym_cmds, $1)=
-  _LT_TAGVAR(compiler_needs_object, $1)=no
-  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-  _LT_TAGVAR(export_dynamic_flag_spec, $1)=
-  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
-  _LT_TAGVAR(hardcode_automatic, $1)=no
-  _LT_TAGVAR(hardcode_direct, $1)=no
-  _LT_TAGVAR(hardcode_direct_absolute, $1)=no
-  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-  _LT_TAGVAR(hardcode_libdir_separator, $1)=
-  _LT_TAGVAR(hardcode_minus_L, $1)=no
-  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-  _LT_TAGVAR(inherit_rpath, $1)=no
-  _LT_TAGVAR(link_all_deplibs, $1)=unknown
-  _LT_TAGVAR(module_cmds, $1)=
-  _LT_TAGVAR(module_expsym_cmds, $1)=
-  _LT_TAGVAR(old_archive_from_new_cmds, $1)=
-  _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
-  _LT_TAGVAR(thread_safe_flag_spec, $1)=
-  _LT_TAGVAR(whole_archive_flag_spec, $1)=
-  # include_expsyms should be a list of space-separated symbols to be *always*
-  # included in the symbol list
-  _LT_TAGVAR(include_expsyms, $1)=
-  # exclude_expsyms can be an extended regexp of symbols to exclude
-  # it will be wrapped by ` (' and `)$', so one must not match beginning or
-  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-  # as well as any symbol that contains `d'.
-  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
-  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
-  # platforms (ab)use it in PIC code, but their linkers get confused if
-  # the symbol is explicitly referenced.  Since portable code cannot
-  # rely on this symbol name, it's probably fine to never include it in
-  # preloaded symbol tables.
-  # Exclude shared library initialization/finalization symbols.
-dnl Note also adjust exclude_expsyms for C++ above.
-  extract_expsyms_cmds=
-
-  case $host_os in
-  cygwin* | mingw* | pw32* | cegcc*)
-    # FIXME: the MSVC++ port hasn't been tested in a loooong time
-    # When not using gcc, we currently assume that we are using
-    # Microsoft Visual C++.
-    if test "$GCC" != yes; then
-      with_gnu_ld=no
-    fi
-    ;;
-  interix*)
-    # we just hope/assume this is gcc and not c89 (= MSVC++)
-    with_gnu_ld=yes
-    ;;
-  openbsd*)
-    with_gnu_ld=no
-    ;;
-  esac
-
-  _LT_TAGVAR(ld_shlibs, $1)=yes
-
-  # On some targets, GNU ld is compatible enough with the native linker
-  # that we're better off using the native interface for both.
-  lt_use_gnu_ld_interface=no
-  if test "$with_gnu_ld" = yes; then
-    case $host_os in
-      aix*)
-	# The AIX port of GNU ld has always aspired to compatibility
-	# with the native linker.  However, as the warning in the GNU ld
-	# block says, versions before 2.19.5* couldn't really create working
-	# shared libraries, regardless of the interface used.
-	case `$LD -v 2>&1` in
-	  *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
-	  *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
-	  *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
-	  *)
-	    lt_use_gnu_ld_interface=yes
-	    ;;
-	esac
-	;;
-      *)
-	lt_use_gnu_ld_interface=yes
-	;;
-    esac
-  fi
-
-  if test "$lt_use_gnu_ld_interface" = yes; then
-    # If archive_cmds runs LD, not CC, wlarc should be empty
-    wlarc='${wl}'
-
-    # Set some defaults for GNU ld with shared library support. These
-    # are reset later if shared libraries are not supported. Putting them
-    # here allows them to be overridden if necessary.
-    runpath_var=LD_RUN_PATH
-    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-    # ancient GNU ld didn't support --whole-archive et. al.
-    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
-      _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-    else
-      _LT_TAGVAR(whole_archive_flag_spec, $1)=
-    fi
-    supports_anon_versioning=no
-    case `$LD -v 2>&1` in
-      *GNU\ gold*) supports_anon_versioning=yes ;;
-      *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
-      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
-      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
-      *\ 2.11.*) ;; # other 2.11 versions
-      *) supports_anon_versioning=yes ;;
-    esac
-
-    # See if GNU ld supports shared libraries.
-    case $host_os in
-    aix[[3-9]]*)
-      # On AIX/PPC, the GNU linker is very broken
-      if test "$host_cpu" != ia64; then
-	_LT_TAGVAR(ld_shlibs, $1)=no
-	cat <<_LT_EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.19, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support.  If you
-*** really care for shared libraries, you may want to install binutils
-*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
-*** You will then need to restart the configuration process.
-
-_LT_EOF
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-            _LT_TAGVAR(archive_expsym_cmds, $1)=''
-        ;;
-      m68k)
-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-            _LT_TAGVAR(hardcode_minus_L, $1)=yes
-        ;;
-      esac
-      ;;
-
-    beos*)
-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-	# Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
-	# support --undefined.  This deserves some investigation.  FIXME
-	_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-      else
-	_LT_TAGVAR(ld_shlibs, $1)=no
-      fi
-      ;;
-
-    cygwin* | mingw* | pw32* | cegcc*)
-      # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
-      # as there is no search path for DLLs.
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-      _LT_TAGVAR(always_export_symbols, $1)=no
-      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
-      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
-
-      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-	# If the export-symbols file already is a .def file (1st line
-	# is EXPORTS), use it as is; otherwise, prepend...
-	_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	  cp $export_symbols $output_objdir/$soname.def;
-	else
-	  echo EXPORTS > $output_objdir/$soname.def;
-	  cat $export_symbols >> $output_objdir/$soname.def;
-	fi~
-	$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-      else
-	_LT_TAGVAR(ld_shlibs, $1)=no
-      fi
-      ;;
-
-    haiku*)
-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-      _LT_TAGVAR(link_all_deplibs, $1)=yes
-      ;;
-
-    interix[[3-9]]*)
-      _LT_TAGVAR(hardcode_direct, $1)=no
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
-      # Instead, shared libraries are loaded at an image base (0x10000000 by
-      # default) and relocated if they conflict, which is a slow very memory
-      # consuming and fragmenting process.  To avoid this, we pick a random,
-      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
-      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      ;;
-
-    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
-      tmp_diet=no
-      if test "$host_os" = linux-dietlibc; then
-	case $cc_basename in
-	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
-	esac
-      fi
-      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
-	 && test "$tmp_diet" = no
-      then
-	tmp_addflag=' $pic_flag'
-	tmp_sharedflag='-shared'
-	case $cc_basename,$host_cpu in
-        pgcc*)				# Portland Group C compiler
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  tmp_addflag=' $pic_flag'
-	  ;;
-	pgf77* | pgf90* | pgf95* | pgfortran*)
-					# Portland Group f77 and f90 compilers
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  tmp_addflag=' $pic_flag -Mnomain' ;;
-	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
-	  tmp_addflag=' -i_dynamic' ;;
-	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64
-	  tmp_addflag=' -i_dynamic -nofor_main' ;;
-	ifc* | ifort*)			# Intel Fortran compiler
-	  tmp_addflag=' -nofor_main' ;;
-	lf95*)				# Lahey Fortran 8.1
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)=
-	  tmp_sharedflag='--shared' ;;
-	xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
-	  tmp_sharedflag='-qmkshrobj'
-	  tmp_addflag= ;;
-	nvcc*)	# Cuda Compiler Driver 2.2
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  _LT_TAGVAR(compiler_needs_object, $1)=yes
-	  ;;
-	esac
-	case `$CC -V 2>&1 | sed 5q` in
-	*Sun\ C*)			# Sun C 5.9
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	  _LT_TAGVAR(compiler_needs_object, $1)=yes
-	  tmp_sharedflag='-G' ;;
-	*Sun\ F*)			# Sun Fortran 8.3
-	  tmp_sharedflag='-G' ;;
-	esac
-	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-
-        if test "x$supports_anon_versioning" = xyes; then
-          _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-	    cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-	    echo "local: *; };" >> $output_objdir/$libname.ver~
-	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
-        fi
-
-	case $cc_basename in
-	xlf* | bgf* | bgxlf* | mpixlf*)
-	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-	  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
-	  if test "x$supports_anon_versioning" = xyes; then
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-	      echo "local: *; };" >> $output_objdir/$libname.ver~
-	      $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
-	  fi
-	  ;;
-	esac
-      else
-        _LT_TAGVAR(ld_shlibs, $1)=no
-      fi
-      ;;
-
-    netbsd*)
-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
-	wlarc=
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-      fi
-      ;;
-
-    solaris*)
-      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
-	_LT_TAGVAR(ld_shlibs, $1)=no
-	cat <<_LT_EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems.  Therefore, libtool
-*** is disabling shared libraries support.  We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer.  Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
-      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-      else
-	_LT_TAGVAR(ld_shlibs, $1)=no
-      fi
-      ;;
-
-    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
-      case `$LD -v 2>&1` in
-        *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
-	_LT_TAGVAR(ld_shlibs, $1)=no
-	cat <<_LT_EOF 1>&2
-
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
-*** reliably create shared libraries on SCO systems.  Therefore, libtool
-*** is disabling shared libraries support.  We urge you to upgrade GNU
-*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
-	;;
-	*)
-	  # For security reasons, it is highly recommended that you always
-	  # use absolute paths for naming shared libraries, and exclude the
-	  # DT_RUNPATH tag from executables and libraries.  But doing so
-	  # requires that you compile everything twice, which is a pain.
-	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-	  else
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	  fi
-	;;
-      esac
-      ;;
-
-    sunos4*)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-      wlarc=
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    *)
-      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-      else
-	_LT_TAGVAR(ld_shlibs, $1)=no
-      fi
-      ;;
-    esac
-
-    if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
-      runpath_var=
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)=
-      _LT_TAGVAR(whole_archive_flag_spec, $1)=
-    fi
-  else
-    # PORTME fill in a description of your system's linker (not GNU ld)
-    case $host_os in
-    aix3*)
-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-      _LT_TAGVAR(always_export_symbols, $1)=yes
-      _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
-      # Note: this linker hardcodes the directories in LIBPATH if there
-      # are no directories specified by -L.
-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
-	# Neither direct hardcoding nor static linking is supported with a
-	# broken collect2.
-	_LT_TAGVAR(hardcode_direct, $1)=unsupported
-      fi
-      ;;
-
-    aix[[4-9]]*)
-      if test "$host_cpu" = ia64; then
-	# On IA64, the linker does run time linking by default, so we don't
-	# have to do anything special.
-	aix_use_runtimelinking=no
-	exp_sym_flag='-Bexport'
-	no_entry_flag=""
-      else
-	# If we're using GNU nm, then we don't want the "-C" option.
-	# -C means demangle to AIX nm, but means don't demangle with GNU nm
-	# Also, AIX nm treats weak defined symbols like other global
-	# defined symbols, whereas GNU nm marks them as "W".
-	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
-	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
-	else
-	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
-	fi
-	aix_use_runtimelinking=no
-
-	# Test if we are trying to use run time linking or normal
-	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
-	# need to do runtime linking.
-	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
-	  for ld_flag in $LDFLAGS; do
-	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
-	    aix_use_runtimelinking=yes
-	    break
-	  fi
-	  done
-	  ;;
-	esac
-
-	exp_sym_flag='-bexport'
-	no_entry_flag='-bnoentry'
-      fi
-
-      # When large executables or shared objects are built, AIX ld can
-      # have problems creating the table of contents.  If linking a library
-      # or program results in "error TOC overflow" add -mminimal-toc to
-      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
-      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
-      _LT_TAGVAR(archive_cmds, $1)=''
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
-      _LT_TAGVAR(link_all_deplibs, $1)=yes
-      _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
-
-      if test "$GCC" = yes; then
-	case $host_os in aix4.[[012]]|aix4.[[012]].*)
-	# We only want to do this on AIX 4.2 and lower, the check
-	# below for broken collect2 doesn't work under 4.3+
-	  collect2name=`${CC} -print-prog-name=collect2`
-	  if test -f "$collect2name" &&
-	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
-	  then
-	  # We have reworked collect2
-	  :
-	  else
-	  # We have old collect2
-	  _LT_TAGVAR(hardcode_direct, $1)=unsupported
-	  # It fails to find uninstalled libraries when the uninstalled
-	  # path is not listed in the libpath.  Setting hardcode_minus_L
-	  # to unsupported forces relinking
-	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-	  _LT_TAGVAR(hardcode_libdir_separator, $1)=
-	  fi
-	  ;;
-	esac
-	shared_flag='-shared'
-	if test "$aix_use_runtimelinking" = yes; then
-	  shared_flag="$shared_flag "'${wl}-G'
-	fi
-      else
-	# not using gcc
-	if test "$host_cpu" = ia64; then
-	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
-	# chokes on -Wl,-G. The following line is correct:
-	  shared_flag='-G'
-	else
-	  if test "$aix_use_runtimelinking" = yes; then
-	    shared_flag='${wl}-G'
-	  else
-	    shared_flag='${wl}-bM:SRE'
-	  fi
-	fi
-      fi
-
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
-      # It seems that -bexpall does not export symbols beginning with
-      # underscore (_), so it is better to generate a list of symbols to export.
-      _LT_TAGVAR(always_export_symbols, $1)=yes
-      if test "$aix_use_runtimelinking" = yes; then
-	# Warning - without using the other runtime loading flags (-brtl),
-	# -berok will link without error, but may produce a broken library.
-	_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
-        # Determine the default libpath from the value encoded in an
-        # empty executable.
-        _LT_SYS_MODULE_PATH_AIX([$1])
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-      else
-	if test "$host_cpu" = ia64; then
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
-	  _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
-	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
-	else
-	 # Determine the default libpath from the value encoded in an
-	 # empty executable.
-	 _LT_SYS_MODULE_PATH_AIX([$1])
-	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
-	  # Warning - without using the other run time loading flags,
-	  # -berok will link without error, but may produce a broken library.
-	  _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
-	  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
-	  if test "$with_gnu_ld" = yes; then
-	    # We only use this code for GNU lds that support --whole-archive.
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
-	  else
-	    # Exported symbols can be pulled into shared objects from archives
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
-	  fi
-	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-	  # This is similar to how AIX traditionally builds its shared libraries.
-	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
-	fi
-      fi
-      ;;
-
-    amigaos*)
-      case $host_cpu in
-      powerpc)
-            # see comment about AmigaOS4 .so support
-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-            _LT_TAGVAR(archive_expsym_cmds, $1)=''
-        ;;
-      m68k)
-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-            _LT_TAGVAR(hardcode_minus_L, $1)=yes
-        ;;
-      esac
-      ;;
-
-    bsdi[[45]]*)
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
-      ;;
-
-    cygwin* | mingw* | pw32* | cegcc*)
-      # When not using gcc, we currently assume that we are using
-      # Microsoft Visual C++.
-      # hardcode_libdir_flag_spec is actually meaningless, as there is
-      # no search path for DLLs.
-      case $cc_basename in
-      cl*)
-	# Native MSVC
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
-	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-	_LT_TAGVAR(always_export_symbols, $1)=yes
-	_LT_TAGVAR(file_list_spec, $1)='@'
-	# Tell ltmain to make .lib files, not .a files.
-	libext=lib
-	# Tell ltmain to make .dll files, not .so files.
-	shrext_cmds=".dll"
-	# FIXME: Setting linknames here is a bad hack.
-	_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
-	_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	    sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
-	  else
-	    sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
-	  fi~
-	  $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
-	  linknames='
-	# The linker will not automatically build a static lib if we build a DLL.
-	# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
-	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-	_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
-	# Don't use ranlib
-	_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
-	_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
-	  lt_tool_outputfile="@TOOL_OUTPUT@"~
-	  case $lt_outputfile in
-	    *.exe|*.EXE) ;;
-	    *)
-	      lt_outputfile="$lt_outputfile.exe"
-	      lt_tool_outputfile="$lt_tool_outputfile.exe"
-	      ;;
-	  esac~
-	  if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
-	    $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
-	    $RM "$lt_outputfile.manifest";
-	  fi'
-	;;
-      *)
-	# Assume MSVC wrapper
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
-	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-	# Tell ltmain to make .lib files, not .a files.
-	libext=lib
-	# Tell ltmain to make .dll files, not .so files.
-	shrext_cmds=".dll"
-	# FIXME: Setting linknames here is a bad hack.
-	_LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
-	# The linker will automatically build a .lib file if we build a DLL.
-	_LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
-	# FIXME: Should let the user specify the lib program.
-	_LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
-	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-	;;
-      esac
-      ;;
-
-    darwin* | rhapsody*)
-      _LT_DARWIN_LINKER_FEATURES($1)
-      ;;
-
-    dgux*)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    freebsd1*)
-      _LT_TAGVAR(ld_shlibs, $1)=no
-      ;;
-
-    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
-    # support.  Future versions do this automatically, but an explicit c++rt0.o
-    # does not break anything, and helps significantly (at the cost of a little
-    # extra space).
-    freebsd2.2*)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
-    freebsd2*)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-    freebsd* | dragonfly*)
-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    hpux9*)
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
-      fi
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-
-      # hardcode_minus_L: Not really in the search PATH,
-      # but as the default location of the library.
-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-      ;;
-
-    hpux10*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
-      fi
-      if test "$with_gnu_ld" = no; then
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
-	_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
-	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
-	_LT_TAGVAR(hardcode_direct, $1)=yes
-	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-	# hardcode_minus_L: Not really in the search PATH,
-	# but as the default location of the library.
-	_LT_TAGVAR(hardcode_minus_L, $1)=yes
-      fi
-      ;;
-
-    hpux11*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
-	case $host_cpu in
-	hppa*64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	ia64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	esac
-      else
-	case $host_cpu in
-	hppa*64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	ia64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	*)
-	m4_if($1, [], [
-	  # Older versions of the 11.00 compiler do not understand -b yet
-	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
-	  _LT_LINKER_OPTION([if $CC understands -b],
-	    _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
-	    [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
-	    [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
-	  [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
-	  ;;
-	esac
-      fi
-      if test "$with_gnu_ld" = no; then
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
-	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
-	case $host_cpu in
-	hppa*64*|ia64*)
-	  _LT_TAGVAR(hardcode_direct, $1)=no
-	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	  ;;
-	*)
-	  _LT_TAGVAR(hardcode_direct, $1)=yes
-	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-
-	  # hardcode_minus_L: Not really in the search PATH,
-	  # but as the default location of the library.
-	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
-	  ;;
-	esac
-      fi
-      ;;
-
-    irix5* | irix6* | nonstopux*)
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-	# Try to use the -exported_symbol ld option, if it does not
-	# work, assume that -exports_file does not work either and
-	# implicitly export all symbols.
-	# This should be the same for all languages, so no per-tag cache variable.
-	AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
-	  [lt_cv_irix_exported_symbol],
-	  [save_LDFLAGS="$LDFLAGS"
-	   LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
-	   AC_LINK_IFELSE(
-	     [AC_LANG_SOURCE(
-	        [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
-			      [C++], [[int foo (void) { return 0; }]],
-			      [Fortran 77], [[
-      subroutine foo
-      end]],
-			      [Fortran], [[
-      subroutine foo
-      end]])])],
-	      [lt_cv_irix_exported_symbol=yes],
-	      [lt_cv_irix_exported_symbol=no])
-           LDFLAGS="$save_LDFLAGS"])
-	if test "$lt_cv_irix_exported_symbol" = yes; then
-          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
-	fi
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-      fi
-      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-      _LT_TAGVAR(inherit_rpath, $1)=yes
-      _LT_TAGVAR(link_all_deplibs, $1)=yes
-      ;;
-
-    netbsd*)
-      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
-      fi
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    newsos6)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    *nto* | *qnx*)
-      ;;
-
-    openbsd*)
-      if test -f /usr/libexec/ld.so; then
-	_LT_TAGVAR(hardcode_direct, $1)=yes
-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-	else
-	  case $host_os in
-	   openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
-	     _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-	     ;;
-	   *)
-	     _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	     ;;
-	  esac
-	fi
-      else
-	_LT_TAGVAR(ld_shlibs, $1)=no
-      fi
-      ;;
-
-    os2*)
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
-      _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
-      ;;
-
-    osf3*)
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-      else
-	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-      fi
-      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-      ;;
-
-    osf4* | osf5*)	# as osf3* with the addition of -msym flag
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-      else
-	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
-	$CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
-
-	# Both c and cxx compiler support -rpath directly
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
-      fi
-      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-      ;;
-
-    solaris*)
-      _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
-      if test "$GCC" = yes; then
-	wlarc='${wl}'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
-      else
-	case `$CC -V 2>&1` in
-	*"Compilers 5.0"*)
-	  wlarc=''
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
-	  ;;
-	*)
-	  wlarc='${wl}'
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
-	  ;;
-	esac
-      fi
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      case $host_os in
-      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
-      *)
-	# The compiler driver will combine and reorder linker options,
-	# but understands `-z linker_flag'.  GCC discards it without `$wl',
-	# but is careful enough not to reorder.
-	# Supported since Solaris 2.6 (maybe 2.5.1?)
-	if test "$GCC" = yes; then
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
-	else
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
-	fi
-	;;
-      esac
-      _LT_TAGVAR(link_all_deplibs, $1)=yes
-      ;;
-
-    sunos4*)
-      if test "x$host_vendor" = xsequent; then
-	# Use $CC to link under sequent, because it throws in some extra .o
-	# files that make .init and .fini sections work.
-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
-      fi
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-      _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    sysv4)
-      case $host_vendor in
-	sni)
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	  _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
-	;;
-	siemens)
-	  ## LD is ld it makes a PLAMLIB
-	  ## CC just makes a GrossModule.
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
-	  _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
-	  _LT_TAGVAR(hardcode_direct, $1)=no
-        ;;
-	motorola)
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	  _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
-	;;
-      esac
-      runpath_var='LD_RUN_PATH'
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    sysv4.3*)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
-      ;;
-
-    sysv4*MP*)
-      if test -d /usr/nec; then
-	_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	runpath_var=LD_RUN_PATH
-	hardcode_runpath_var=yes
-	_LT_TAGVAR(ld_shlibs, $1)=yes
-      fi
-      ;;
-
-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      runpath_var='LD_RUN_PATH'
-
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      fi
-      ;;
-
-    sysv5* | sco3.2v5* | sco5v6*)
-      # Note: We can NOT use -z defs as we might desire, because we do not
-      # link with -lc, and that would cause any symbols used from libc to
-      # always be unresolved, which means just about no library would
-      # ever link correctly.  If we're not using GNU ld we use -z text
-      # though, which does catch some bad symbols but isn't as heavy-handed
-      # as -z defs.
-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
-      _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
-      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
-      _LT_TAGVAR(link_all_deplibs, $1)=yes
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
-      runpath_var='LD_RUN_PATH'
-
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      else
-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-      fi
-      ;;
-
-    uts4*)
-      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      ;;
-
-    *)
-      _LT_TAGVAR(ld_shlibs, $1)=no
-      ;;
-    esac
-
-    if test x$host_vendor = xsni; then
-      case $host in
-      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
-	;;
-      esac
-    fi
-  fi
-])
-AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
-test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
-
-_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
-
-_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
-_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
-_LT_DECL([], [extract_expsyms_cmds], [2],
-    [The commands to extract the exported symbol list from a shared archive])
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
-x|xyes)
-  # Assume -lc should be added
-  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-
-  if test "$enable_shared" = yes && test "$GCC" = yes; then
-    case $_LT_TAGVAR(archive_cmds, $1) in
-    *'~'*)
-      # FIXME: we may have to deal with multi-command sequences.
-      ;;
-    '$CC '*)
-      # Test whether the compiler implicitly links with -lc since on some
-      # systems, -lgcc has to come before -lc. If gcc already passes -lc
-      # to ld, don't add -lc before -lgcc.
-      AC_CACHE_CHECK([whether -lc should be explicitly linked in],
-	[lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
-	[$RM conftest*
-	echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
-	if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
-	  soname=conftest
-	  lib=conftest
-	  libobjs=conftest.$ac_objext
-	  deplibs=
-	  wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
-	  pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
-	  compiler_flags=-v
-	  linker_flags=-v
-	  verstring=
-	  output_objdir=.
-	  libname=conftest
-	  lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
-	  _LT_TAGVAR(allow_undefined_flag, $1)=
-	  if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
-	  then
-	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-	  else
-	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-	  fi
-	  _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
-	else
-	  cat conftest.err 1>&5
-	fi
-	$RM conftest*
-	])
-      _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
-      ;;
-    esac
-  fi
-  ;;
-esac
-
-_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
-    [Whether or not to add -lc for building shared libraries])
-_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
-    [enable_shared_with_static_runtimes], [0],
-    [Whether or not to disallow shared libs when runtime libs are static])
-_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
-    [Compiler flag to allow reflexive dlopens])
-_LT_TAGDECL([], [whole_archive_flag_spec], [1],
-    [Compiler flag to generate shared objects directly from archives])
-_LT_TAGDECL([], [compiler_needs_object], [1],
-    [Whether the compiler copes with passing no objects directly])
-_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
-    [Create an old-style archive from a shared archive])
-_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
-    [Create a temporary old-style archive to link instead of a shared archive])
-_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
-_LT_TAGDECL([], [archive_expsym_cmds], [2])
-_LT_TAGDECL([], [module_cmds], [2],
-    [Commands used to build a loadable module if different from building
-    a shared archive.])
-_LT_TAGDECL([], [module_expsym_cmds], [2])
-_LT_TAGDECL([], [with_gnu_ld], [1],
-    [Whether we are building with GNU ld or not])
-_LT_TAGDECL([], [allow_undefined_flag], [1],
-    [Flag that allows shared libraries with undefined symbols to be built])
-_LT_TAGDECL([], [no_undefined_flag], [1],
-    [Flag that enforces no undefined symbols])
-_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
-    [Flag to hardcode $libdir into a binary during linking.
-    This must work even if $libdir does not exist])
-_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
-    [[If ld is used when linking, flag to hardcode $libdir into a binary
-    during linking.  This must work even if $libdir does not exist]])
-_LT_TAGDECL([], [hardcode_libdir_separator], [1],
-    [Whether we need a single "-rpath" flag with a separated argument])
-_LT_TAGDECL([], [hardcode_direct], [0],
-    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
-    DIR into the resulting binary])
-_LT_TAGDECL([], [hardcode_direct_absolute], [0],
-    [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])
-_LT_TAGDECL([], [hardcode_minus_L], [0],
-    [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
-    into the resulting binary])
-_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
-    [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
-    into the resulting binary])
-_LT_TAGDECL([], [hardcode_automatic], [0],
-    [Set to "yes" if building a shared library automatically hardcodes DIR
-    into the library and all subsequent libraries and executables linked
-    against it])
-_LT_TAGDECL([], [inherit_rpath], [0],
-    [Set to yes if linker adds runtime paths of dependent libraries
-    to runtime path list])
-_LT_TAGDECL([], [link_all_deplibs], [0],
-    [Whether libtool must link a program against all its dependency libraries])
-_LT_TAGDECL([], [always_export_symbols], [0],
-    [Set to "yes" if exported symbols are required])
-_LT_TAGDECL([], [export_symbols_cmds], [2],
-    [The commands to list exported symbols])
-_LT_TAGDECL([], [exclude_expsyms], [1],
-    [Symbols that should not be listed in the preloaded symbols])
-_LT_TAGDECL([], [include_expsyms], [1],
-    [Symbols that must always be exported])
-_LT_TAGDECL([], [prelink_cmds], [2],
-    [Commands necessary for linking programs (against libraries) with templates])
-_LT_TAGDECL([], [postlink_cmds], [2],
-    [Commands necessary for finishing linking programs])
-_LT_TAGDECL([], [file_list_spec], [1],
-    [Specify filename containing input files])
-dnl FIXME: Not yet implemented
-dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
-dnl    [Compiler flag to generate thread safe objects])
-])# _LT_LINKER_SHLIBS
-
-
-# _LT_LANG_C_CONFIG([TAG])
-# ------------------------
-# Ensure that the configuration variables for a C compiler are suitably
-# defined.  These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_C_CONFIG],
-[m4_require([_LT_DECL_EGREP])dnl
-lt_save_CC="$CC"
-AC_LANG_PUSH(C)
-
-# Source file extension for C test sources.
-ac_ext=c
-
-# Object file extension for compiled C test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='int main(){return(0);}'
-
-_LT_TAG_COMPILER
-# Save the default compiler, since it gets overwritten when the other
-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
-compiler_DEFAULT=$CC
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-## CAVEAT EMPTOR:
-## There is no encapsulation within the following macros, do not change
-## the running order or otherwise move them around unless you know exactly
-## what you are doing...
-if test -n "$compiler"; then
-  _LT_COMPILER_NO_RTTI($1)
-  _LT_COMPILER_PIC($1)
-  _LT_COMPILER_C_O($1)
-  _LT_COMPILER_FILE_LOCKS($1)
-  _LT_LINKER_SHLIBS($1)
-  _LT_SYS_DYNAMIC_LINKER($1)
-  _LT_LINKER_HARDCODE_LIBPATH($1)
-  LT_SYS_DLOPEN_SELF
-  _LT_CMD_STRIPLIB
-
-  # Report which library types will actually be built
-  AC_MSG_CHECKING([if libtool supports shared libraries])
-  AC_MSG_RESULT([$can_build_shared])
-
-  AC_MSG_CHECKING([whether to build shared libraries])
-  test "$can_build_shared" = "no" && enable_shared=no
-
-  # On AIX, shared libraries and static libraries use the same namespace, and
-  # are all built from PIC.
-  case $host_os in
-  aix3*)
-    test "$enable_shared" = yes && enable_static=no
-    if test -n "$RANLIB"; then
-      archive_cmds="$archive_cmds~\$RANLIB \$lib"
-      postinstall_cmds='$RANLIB $lib'
-    fi
-    ;;
-
-  aix[[4-9]]*)
-    if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-      test "$enable_shared" = yes && enable_static=no
-    fi
-    ;;
-  esac
-  AC_MSG_RESULT([$enable_shared])
-
-  AC_MSG_CHECKING([whether to build static libraries])
-  # Make sure either enable_shared or enable_static is yes.
-  test "$enable_shared" = yes || enable_static=yes
-  AC_MSG_RESULT([$enable_static])
-
-  _LT_CONFIG($1)
-fi
-AC_LANG_POP
-CC="$lt_save_CC"
-])# _LT_LANG_C_CONFIG
-
-
-# _LT_LANG_CXX_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for a C++ compiler are suitably
-# defined.  These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_CXX_CONFIG],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_PATH_MANIFEST_TOOL])dnl
-if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
-    ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
-    (test "X$CXX" != "Xg++"))) ; then
-  AC_PROG_CXXCPP
-else
-  _lt_caught_CXX_error=yes
-fi
-
-AC_LANG_PUSH(C++)
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(compiler_needs_object, $1)=no
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for C++ test sources.
-ac_ext=cpp
-
-# Object file extension for compiled C++ test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the CXX compiler isn't working.  Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_caught_CXX_error" != yes; then
-  # Code to be used in simple compile tests
-  lt_simple_compile_test_code="int some_variable = 0;"
-
-  # Code to be used in simple link tests
-  lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
-
-  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
-  _LT_TAG_COMPILER
-
-  # save warnings/boilerplate of simple test code
-  _LT_COMPILER_BOILERPLATE
-  _LT_LINKER_BOILERPLATE
-
-  # Allow CC to be a program name with arguments.
-  lt_save_CC=$CC
-  lt_save_CFLAGS=$CFLAGS
-  lt_save_LD=$LD
-  lt_save_GCC=$GCC
-  GCC=$GXX
-  lt_save_with_gnu_ld=$with_gnu_ld
-  lt_save_path_LD=$lt_cv_path_LD
-  if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
-    lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
-  else
-    $as_unset lt_cv_prog_gnu_ld
-  fi
-  if test -n "${lt_cv_path_LDCXX+set}"; then
-    lt_cv_path_LD=$lt_cv_path_LDCXX
-  else
-    $as_unset lt_cv_path_LD
-  fi
-  test -z "${LDCXX+set}" || LD=$LDCXX
-  CC=${CXX-"c++"}
-  CFLAGS=$CXXFLAGS
-  compiler=$CC
-  _LT_TAGVAR(compiler, $1)=$CC
-  _LT_CC_BASENAME([$compiler])
-
-  if test -n "$compiler"; then
-    # We don't want -fno-exception when compiling C++ code, so set the
-    # no_builtin_flag separately
-    if test "$GXX" = yes; then
-      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
-    else
-      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
-    fi
-
-    if test "$GXX" = yes; then
-      # Set up default GNU C++ configuration
-
-      LT_PATH_LD
-
-      # Check if GNU C++ uses GNU ld as the underlying linker, since the
-      # archiving commands below assume that GNU ld is being used.
-      if test "$with_gnu_ld" = yes; then
-        _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-
-        # If archive_cmds runs LD, not CC, wlarc should be empty
-        # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
-        #     investigate it a little bit more. (MM)
-        wlarc='${wl}'
-
-        # ancient GNU ld didn't support --whole-archive et. al.
-        if eval "`$CC -print-prog-name=ld` --help 2>&1" |
-	  $GREP 'no-whole-archive' > /dev/null; then
-          _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-        else
-          _LT_TAGVAR(whole_archive_flag_spec, $1)=
-        fi
-      else
-        with_gnu_ld=no
-        wlarc=
-
-        # A generic and very simple default shared library creation
-        # command for GNU C++ for the case where it uses the native
-        # linker, instead of GNU ld.  If possible, this setting should
-        # overridden to take advantage of the native linker features on
-        # the platform it is being used on.
-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
-      fi
-
-      # Commands to make compiler produce verbose output that lists
-      # what "hidden" libraries, object files and flags are used when
-      # linking a shared library.
-      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
-
-    else
-      GXX=no
-      with_gnu_ld=no
-      wlarc=
-    fi
-
-    # PORTME: fill in a description of your system's C++ link characteristics
-    AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
-    _LT_TAGVAR(ld_shlibs, $1)=yes
-    case $host_os in
-      aix3*)
-        # FIXME: insert proper C++ library support
-        _LT_TAGVAR(ld_shlibs, $1)=no
-        ;;
-      aix[[4-9]]*)
-        if test "$host_cpu" = ia64; then
-          # On IA64, the linker does run time linking by default, so we don't
-          # have to do anything special.
-          aix_use_runtimelinking=no
-          exp_sym_flag='-Bexport'
-          no_entry_flag=""
-        else
-          aix_use_runtimelinking=no
-
-          # Test if we are trying to use run time linking or normal
-          # AIX style linking. If -brtl is somewhere in LDFLAGS, we
-          # need to do runtime linking.
-          case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
-	    for ld_flag in $LDFLAGS; do
-	      case $ld_flag in
-	      *-brtl*)
-	        aix_use_runtimelinking=yes
-	        break
-	        ;;
-	      esac
-	    done
-	    ;;
-          esac
-
-          exp_sym_flag='-bexport'
-          no_entry_flag='-bnoentry'
-        fi
-
-        # When large executables or shared objects are built, AIX ld can
-        # have problems creating the table of contents.  If linking a library
-        # or program results in "error TOC overflow" add -mminimal-toc to
-        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
-        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
-        _LT_TAGVAR(archive_cmds, $1)=''
-        _LT_TAGVAR(hardcode_direct, $1)=yes
-        _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-        _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
-        _LT_TAGVAR(link_all_deplibs, $1)=yes
-        _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
-
-        if test "$GXX" = yes; then
-          case $host_os in aix4.[[012]]|aix4.[[012]].*)
-          # We only want to do this on AIX 4.2 and lower, the check
-          # below for broken collect2 doesn't work under 4.3+
-	  collect2name=`${CC} -print-prog-name=collect2`
-	  if test -f "$collect2name" &&
-	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null
-	  then
-	    # We have reworked collect2
-	    :
-	  else
-	    # We have old collect2
-	    _LT_TAGVAR(hardcode_direct, $1)=unsupported
-	    # It fails to find uninstalled libraries when the uninstalled
-	    # path is not listed in the libpath.  Setting hardcode_minus_L
-	    # to unsupported forces relinking
-	    _LT_TAGVAR(hardcode_minus_L, $1)=yes
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=
-	  fi
-          esac
-          shared_flag='-shared'
-	  if test "$aix_use_runtimelinking" = yes; then
-	    shared_flag="$shared_flag "'${wl}-G'
-	  fi
-        else
-          # not using gcc
-          if test "$host_cpu" = ia64; then
-	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
-	  # chokes on -Wl,-G. The following line is correct:
-	  shared_flag='-G'
-          else
-	    if test "$aix_use_runtimelinking" = yes; then
-	      shared_flag='${wl}-G'
-	    else
-	      shared_flag='${wl}-bM:SRE'
-	    fi
-          fi
-        fi
-
-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
-        # It seems that -bexpall does not export symbols beginning with
-        # underscore (_), so it is better to generate a list of symbols to
-	# export.
-        _LT_TAGVAR(always_export_symbols, $1)=yes
-        if test "$aix_use_runtimelinking" = yes; then
-          # Warning - without using the other runtime loading flags (-brtl),
-          # -berok will link without error, but may produce a broken library.
-          _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
-          # Determine the default libpath from the value encoded in an empty
-          # executable.
-          _LT_SYS_MODULE_PATH_AIX([$1])
-          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
-
-          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-        else
-          if test "$host_cpu" = ia64; then
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
-	    _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
-	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
-          else
-	    # Determine the default libpath from the value encoded in an
-	    # empty executable.
-	    _LT_SYS_MODULE_PATH_AIX([$1])
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
-	    # Warning - without using the other run time loading flags,
-	    # -berok will link without error, but may produce a broken library.
-	    _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
-	    _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
-	    if test "$with_gnu_ld" = yes; then
-	      # We only use this code for GNU lds that support --whole-archive.
-	      _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
-	    else
-	      # Exported symbols can be pulled into shared objects from archives
-	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
-	    fi
-	    _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-	    # This is similar to how AIX traditionally builds its shared
-	    # libraries.
-	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
-          fi
-        fi
-        ;;
-
-      beos*)
-	if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-	  # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
-	  # support --undefined.  This deserves some investigation.  FIXME
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	else
-	  _LT_TAGVAR(ld_shlibs, $1)=no
-	fi
-	;;
-
-      chorus*)
-        case $cc_basename in
-          *)
-	  # FIXME: insert proper C++ library support
-	  _LT_TAGVAR(ld_shlibs, $1)=no
-	  ;;
-        esac
-        ;;
-
-      cygwin* | mingw* | pw32* | cegcc*)
-	case $GXX,$cc_basename in
-	,cl* | no,cl*)
-	  # Native MSVC
-	  # hardcode_libdir_flag_spec is actually meaningless, as there is
-	  # no search path for DLLs.
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
-	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-	  _LT_TAGVAR(always_export_symbols, $1)=yes
-	  _LT_TAGVAR(file_list_spec, $1)='@'
-	  # Tell ltmain to make .lib files, not .a files.
-	  libext=lib
-	  # Tell ltmain to make .dll files, not .so files.
-	  shrext_cmds=".dll"
-	  # FIXME: Setting linknames here is a bad hack.
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	      $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
-	    else
-	      $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
-	    fi~
-	    $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
-	    linknames='
-	  # The linker will not automatically build a static lib if we build a DLL.
-	  # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
-	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-	  # Don't use ranlib
-	  _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
-	  _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
-	    lt_tool_outputfile="@TOOL_OUTPUT@"~
-	    case $lt_outputfile in
-	      *.exe|*.EXE) ;;
-	      *)
-		lt_outputfile="$lt_outputfile.exe"
-		lt_tool_outputfile="$lt_tool_outputfile.exe"
-		;;
-	    esac~
-	    func_to_tool_file "$lt_outputfile"~
-	    if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
-	      $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
-	      $RM "$lt_outputfile.manifest";
-	    fi'
-	  ;;
-	*)
-	  # g++
-	  # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
-	  # as there is no search path for DLLs.
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
-	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-	  _LT_TAGVAR(always_export_symbols, $1)=no
-	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-
-	  if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-	    # If the export-symbols file already is a .def file (1st line
-	    # is EXPORTS), use it as is; otherwise, prepend...
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	      cp $export_symbols $output_objdir/$soname.def;
-	    else
-	      echo EXPORTS > $output_objdir/$soname.def;
-	      cat $export_symbols >> $output_objdir/$soname.def;
-	    fi~
-	    $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-	  else
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	  fi
-	  ;;
-	esac
-	;;
-      darwin* | rhapsody*)
-        _LT_DARWIN_LINKER_FEATURES($1)
-	;;
-
-      dgux*)
-        case $cc_basename in
-          ec++*)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          ghcx*)
-	    # Green Hills C++ Compiler
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          *)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-        esac
-        ;;
-
-      freebsd[[12]]*)
-        # C++ shared libraries reported to be fairly broken before
-	# switch to ELF
-        _LT_TAGVAR(ld_shlibs, $1)=no
-        ;;
-
-      freebsd-elf*)
-        _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-        ;;
-
-      freebsd* | dragonfly*)
-        # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
-        # conventions
-        _LT_TAGVAR(ld_shlibs, $1)=yes
-        ;;
-
-      gnu*)
-        ;;
-
-      haiku*)
-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-        _LT_TAGVAR(link_all_deplibs, $1)=yes
-        ;;
-
-      hpux9*)
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
-        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-        _LT_TAGVAR(hardcode_direct, $1)=yes
-        _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
-				             # but as the default
-				             # location of the library.
-
-        case $cc_basename in
-          CC*)
-            # FIXME: insert proper C++ library support
-            _LT_TAGVAR(ld_shlibs, $1)=no
-            ;;
-          aCC*)
-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
-            # Commands to make compiler produce verbose output that lists
-            # what "hidden" libraries, object files and flags are used when
-            # linking a shared library.
-            #
-            # There doesn't appear to be a way to prevent this compiler from
-            # explicitly linking system object files so we need to strip them
-            # from the output so that they don't get included in the library
-            # dependencies.
-            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
-            ;;
-          *)
-            if test "$GXX" = yes; then
-              _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
-            else
-              # FIXME: insert proper C++ library support
-              _LT_TAGVAR(ld_shlibs, $1)=no
-            fi
-            ;;
-        esac
-        ;;
-
-      hpux10*|hpux11*)
-        if test $with_gnu_ld = no; then
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
-	  _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
-          case $host_cpu in
-            hppa*64*|ia64*)
-              ;;
-            *)
-	      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-              ;;
-          esac
-        fi
-        case $host_cpu in
-          hppa*64*|ia64*)
-            _LT_TAGVAR(hardcode_direct, $1)=no
-            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-            ;;
-          *)
-            _LT_TAGVAR(hardcode_direct, $1)=yes
-            _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-            _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
-					         # but as the default
-					         # location of the library.
-            ;;
-        esac
-
-        case $cc_basename in
-          CC*)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          aCC*)
-	    case $host_cpu in
-	      hppa*64*)
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	        ;;
-	      ia64*)
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	        ;;
-	      *)
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	        ;;
-	    esac
-	    # Commands to make compiler produce verbose output that lists
-	    # what "hidden" libraries, object files and flags are used when
-	    # linking a shared library.
-	    #
-	    # There doesn't appear to be a way to prevent this compiler from
-	    # explicitly linking system object files so we need to strip them
-	    # from the output so that they don't get included in the library
-	    # dependencies.
-	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
-	    ;;
-          *)
-	    if test "$GXX" = yes; then
-	      if test $with_gnu_ld = no; then
-	        case $host_cpu in
-	          hppa*64*)
-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	            ;;
-	          ia64*)
-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	            ;;
-	          *)
-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	            ;;
-	        esac
-	      fi
-	    else
-	      # FIXME: insert proper C++ library support
-	      _LT_TAGVAR(ld_shlibs, $1)=no
-	    fi
-	    ;;
-        esac
-        ;;
-
-      interix[[3-9]]*)
-	_LT_TAGVAR(hardcode_direct, $1)=no
-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
-	# Instead, shared libraries are loaded at an image base (0x10000000 by
-	# default) and relocated if they conflict, which is a slow very memory
-	# consuming and fragmenting process.  To avoid this, we pick a random,
-	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
-	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-	;;
-      irix5* | irix6*)
-        case $cc_basename in
-          CC*)
-	    # SGI C++
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-
-	    # Archives containing C++ object files must be created using
-	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
-	    # necessary to make sure instantiated templates are included
-	    # in the archive.
-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
-	    ;;
-          *)
-	    if test "$GXX" = yes; then
-	      if test "$with_gnu_ld" = no; then
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-	      else
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib'
-	      fi
-	    fi
-	    _LT_TAGVAR(link_all_deplibs, $1)=yes
-	    ;;
-        esac
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-        _LT_TAGVAR(inherit_rpath, $1)=yes
-        ;;
-
-      linux* | k*bsd*-gnu | kopensolaris*-gnu)
-        case $cc_basename in
-          KCC*)
-	    # Kuck and Associates, Inc. (KAI) C++ Compiler
-
-	    # KCC will only create a shared library if the output file
-	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
-	    # to its proper name (with version) after linking.
-	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
-	    # Commands to make compiler produce verbose output that lists
-	    # what "hidden" libraries, object files and flags are used when
-	    # linking a shared library.
-	    #
-	    # There doesn't appear to be a way to prevent this compiler from
-	    # explicitly linking system object files so we need to strip them
-	    # from the output so that they don't get included in the library
-	    # dependencies.
-	    output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
-
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-
-	    # Archives containing C++ object files must be created using
-	    # "CC -Bstatic", where "CC" is the KAI C++ compiler.
-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
-	    ;;
-	  icpc* | ecpc* )
-	    # Intel C++
-	    with_gnu_ld=yes
-	    # version 8.0 and above of icpc choke on multiply defined symbols
-	    # if we add $predep_objects and $postdep_objects, however 7.1 and
-	    # earlier do not add the objects themselves.
-	    case `$CC -V 2>&1` in
-	      *"Version 7."*)
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
-		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-		;;
-	      *)  # Version 8.0 or newer
-	        tmp_idyn=
-	        case $host_cpu in
-		  ia64*) tmp_idyn=' -i_dynamic';;
-		esac
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-		;;
-	    esac
-	    _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
-	    ;;
-          pgCC* | pgcpp*)
-            # Portland Group C++ compiler
-	    case `$CC -V` in
-	    *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
-	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
-		rm -rf $tpldir~
-		$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
-		compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
-	      _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
-		rm -rf $tpldir~
-		$CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
-		$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
-		$RANLIB $oldlib'
-	      _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
-		rm -rf $tpldir~
-		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
-		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
-	      _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
-		rm -rf $tpldir~
-		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
-		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
-	      ;;
-	    *) # Version 6 and above use weak symbols
-	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
-	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
-	      ;;
-	    esac
-
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-            ;;
-	  cxx*)
-	    # Compaq C++
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname  -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
-
-	    runpath_var=LD_RUN_PATH
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
-	    # Commands to make compiler produce verbose output that lists
-	    # what "hidden" libraries, object files and flags are used when
-	    # linking a shared library.
-	    #
-	    # There doesn't appear to be a way to prevent this compiler from
-	    # explicitly linking system object files so we need to strip them
-	    # from the output so that they don't get included in the library
-	    # dependencies.
-	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
-	    ;;
-	  xl* | mpixl* | bgxl*)
-	    # IBM XL 8.0 on PPC, with GNU ld
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	    if test "x$supports_anon_versioning" = xyes; then
-	      _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-		cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-		echo "local: *; };" >> $output_objdir/$libname.ver~
-		$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
-	    fi
-	    ;;
-	  *)
-	    case `$CC -V 2>&1 | sed 5q` in
-	    *Sun\ C*)
-	      # Sun C++ 5.9
-	      _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-	      _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-	      _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
-	      _LT_TAGVAR(compiler_needs_object, $1)=yes
-
-	      # Not sure whether something based on
-	      # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
-	      # would be better.
-	      output_verbose_link_cmd='func_echo_all'
-
-	      # Archives containing C++ object files must be created using
-	      # "CC -xar", where "CC" is the Sun C++ compiler.  This is
-	      # necessary to make sure instantiated templates are included
-	      # in the archive.
-	      _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
-	      ;;
-	    esac
-	    ;;
-	esac
-	;;
-
-      lynxos*)
-        # FIXME: insert proper C++ library support
-	_LT_TAGVAR(ld_shlibs, $1)=no
-	;;
-
-      m88k*)
-        # FIXME: insert proper C++ library support
-        _LT_TAGVAR(ld_shlibs, $1)=no
-	;;
-
-      mvs*)
-        case $cc_basename in
-          cxx*)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-	  *)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-	esac
-	;;
-
-      netbsd*)
-        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
-	  wlarc=
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-	  _LT_TAGVAR(hardcode_direct, $1)=yes
-	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	fi
-	# Workaround some broken pre-1.5 toolchains
-	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
-	;;
-
-      *nto* | *qnx*)
-        _LT_TAGVAR(ld_shlibs, $1)=yes
-	;;
-
-      openbsd2*)
-        # C++ shared libraries are fairly broken
-	_LT_TAGVAR(ld_shlibs, $1)=no
-	;;
-
-      openbsd*)
-	if test -f /usr/libexec/ld.so; then
-	  _LT_TAGVAR(hardcode_direct, $1)=yes
-	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-	  fi
-	  output_verbose_link_cmd=func_echo_all
-	else
-	  _LT_TAGVAR(ld_shlibs, $1)=no
-	fi
-	;;
-
-      osf3* | osf4* | osf5*)
-        case $cc_basename in
-          KCC*)
-	    # Kuck and Associates, Inc. (KAI) C++ Compiler
-
-	    # KCC will only create a shared library if the output file
-	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
-	    # to its proper name (with version) after linking.
-	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
-
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
-	    # Archives containing C++ object files must be created using
-	    # the KAI C++ compiler.
-	    case $host in
-	      osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
-	      *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
-	    esac
-	    ;;
-          RCC*)
-	    # Rational C++ 2.4.1
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          cxx*)
-	    case $host in
-	      osf3*)
-	        _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-		;;
-	      *)
-	        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	        _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
-	          echo "-hidden">> $lib.exp~
-	          $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp  `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~
-	          $RM $lib.exp'
-	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
-		;;
-	    esac
-
-	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
-	    # Commands to make compiler produce verbose output that lists
-	    # what "hidden" libraries, object files and flags are used when
-	    # linking a shared library.
-	    #
-	    # There doesn't appear to be a way to prevent this compiler from
-	    # explicitly linking system object files so we need to strip them
-	    # from the output so that they don't get included in the library
-	    # dependencies.
-	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
-	    ;;
-	  *)
-	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
-	      _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-	      case $host in
-	        osf3*)
-	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-		  ;;
-	        *)
-	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-		  ;;
-	      esac
-
-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-	      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
-	      # Commands to make compiler produce verbose output that lists
-	      # what "hidden" libraries, object files and flags are used when
-	      # linking a shared library.
-	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
-
-	    else
-	      # FIXME: insert proper C++ library support
-	      _LT_TAGVAR(ld_shlibs, $1)=no
-	    fi
-	    ;;
-        esac
-        ;;
-
-      psos*)
-        # FIXME: insert proper C++ library support
-        _LT_TAGVAR(ld_shlibs, $1)=no
-        ;;
-
-      sunos4*)
-        case $cc_basename in
-          CC*)
-	    # Sun C++ 4.x
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          lcc*)
-	    # Lucid
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          *)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-        esac
-        ;;
-
-      solaris*)
-        case $cc_basename in
-          CC* | sunCC*)
-	    # Sun C++ 4.2, 5.x and Centerline C++
-            _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
-	    _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	      $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-	    _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	    case $host_os in
-	      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
-	      *)
-		# The compiler driver will combine and reorder linker options,
-		# but understands `-z linker_flag'.
-	        # Supported since Solaris 2.6 (maybe 2.5.1?)
-		_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
-	        ;;
-	    esac
-	    _LT_TAGVAR(link_all_deplibs, $1)=yes
-
-	    output_verbose_link_cmd='func_echo_all'
-
-	    # Archives containing C++ object files must be created using
-	    # "CC -xar", where "CC" is the Sun C++ compiler.  This is
-	    # necessary to make sure instantiated templates are included
-	    # in the archive.
-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
-	    ;;
-          gcx*)
-	    # Green Hills C++ Compiler
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
-
-	    # The C++ compiler must be used to create the archive.
-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
-	    ;;
-          *)
-	    # GNU C++ compiler with Solaris linker
-	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
-	      _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
-	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
-	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-		  $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
-	        # Commands to make compiler produce verbose output that lists
-	        # what "hidden" libraries, object files and flags are used when
-	        # linking a shared library.
-	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
-	      else
-	        # g++ 2.7 appears to require `-G' NOT `-shared' on this
-	        # platform.
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
-	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-		  $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
-	        # Commands to make compiler produce verbose output that lists
-	        # what "hidden" libraries, object files and flags are used when
-	        # linking a shared library.
-	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
-	      fi
-
-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
-	      case $host_os in
-		solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
-		*)
-		  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
-		  ;;
-	      esac
-	    fi
-	    ;;
-        esac
-        ;;
-
-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
-      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      runpath_var='LD_RUN_PATH'
-
-      case $cc_basename in
-        CC*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-	*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  ;;
-      esac
-      ;;
-
-      sysv5* | sco3.2v5* | sco5v6*)
-	# Note: We can NOT use -z defs as we might desire, because we do not
-	# link with -lc, and that would cause any symbols used from libc to
-	# always be unresolved, which means just about no library would
-	# ever link correctly.  If we're not using GNU ld we use -z text
-	# though, which does catch some bad symbols but isn't as heavy-handed
-	# as -z defs.
-	_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
-	_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
-	_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
-	_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
-	_LT_TAGVAR(link_all_deplibs, $1)=yes
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
-	runpath_var='LD_RUN_PATH'
-
-	case $cc_basename in
-          CC*)
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
-	      '"$_LT_TAGVAR(old_archive_cmds, $1)"
-	    _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
-	      '"$_LT_TAGVAR(reload_cmds, $1)"
-	    ;;
-	  *)
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	    ;;
-	esac
-      ;;
-
-      tandem*)
-        case $cc_basename in
-          NCC*)
-	    # NonStop-UX NCC 3.20
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-          *)
-	    # FIXME: insert proper C++ library support
-	    _LT_TAGVAR(ld_shlibs, $1)=no
-	    ;;
-        esac
-        ;;
-
-      vxworks*)
-        # FIXME: insert proper C++ library support
-        _LT_TAGVAR(ld_shlibs, $1)=no
-        ;;
-
-      *)
-        # FIXME: insert proper C++ library support
-        _LT_TAGVAR(ld_shlibs, $1)=no
-        ;;
-    esac
-
-    AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
-    test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
-
-    _LT_TAGVAR(GCC, $1)="$GXX"
-    _LT_TAGVAR(LD, $1)="$LD"
-
-    ## CAVEAT EMPTOR:
-    ## There is no encapsulation within the following macros, do not change
-    ## the running order or otherwise move them around unless you know exactly
-    ## what you are doing...
-    _LT_SYS_HIDDEN_LIBDEPS($1)
-    _LT_COMPILER_PIC($1)
-    _LT_COMPILER_C_O($1)
-    _LT_COMPILER_FILE_LOCKS($1)
-    _LT_LINKER_SHLIBS($1)
-    _LT_SYS_DYNAMIC_LINKER($1)
-    _LT_LINKER_HARDCODE_LIBPATH($1)
-
-    _LT_CONFIG($1)
-  fi # test -n "$compiler"
-
-  CC=$lt_save_CC
-  CFLAGS=$lt_save_CFLAGS
-  LDCXX=$LD
-  LD=$lt_save_LD
-  GCC=$lt_save_GCC
-  with_gnu_ld=$lt_save_with_gnu_ld
-  lt_cv_path_LDCXX=$lt_cv_path_LD
-  lt_cv_path_LD=$lt_save_path_LD
-  lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
-  lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
-fi # test "$_lt_caught_CXX_error" != yes
-
-AC_LANG_POP
-])# _LT_LANG_CXX_CONFIG
-
-
-# _LT_FUNC_STRIPNAME_CNF
-# ----------------------
-# func_stripname_cnf prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# 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).
-#
-# This function is identical to the (non-XSI) version of func_stripname,
-# except this one can be used by m4 code that may be executed by configure,
-# rather than the libtool script.
-m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
-AC_REQUIRE([_LT_DECL_SED])
-AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
-func_stripname_cnf ()
-{
-  case ${2} in
-  .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
-  *)  func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
-  esac
-} # func_stripname_cnf
-])# _LT_FUNC_STRIPNAME_CNF
-
-# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
-# ---------------------------------
-# Figure out "hidden" library dependencies from verbose
-# compiler output when linking a shared library.
-# Parse the compiler output and extract the necessary
-# objects, libraries and library flags.
-m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
-# Dependencies to place before and after the object being linked:
-_LT_TAGVAR(predep_objects, $1)=
-_LT_TAGVAR(postdep_objects, $1)=
-_LT_TAGVAR(predeps, $1)=
-_LT_TAGVAR(postdeps, $1)=
-_LT_TAGVAR(compiler_lib_search_path, $1)=
-
-dnl we can't use the lt_simple_compile_test_code here,
-dnl because it contains code intended for an executable,
-dnl not a library.  It's possible we should let each
-dnl tag define a new lt_????_link_test_code variable,
-dnl but it's only used here...
-m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
-int a;
-void foo (void) { a = 0; }
-_LT_EOF
-], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
-class Foo
-{
-public:
-  Foo (void) { a = 0; }
-private:
-  int a;
-};
-_LT_EOF
-], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
-      subroutine foo
-      implicit none
-      integer*4 a
-      a=0
-      return
-      end
-_LT_EOF
-], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
-      subroutine foo
-      implicit none
-      integer a
-      a=0
-      return
-      end
-_LT_EOF
-], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
-public class foo {
-  private int a;
-  public void bar (void) {
-    a = 0;
-  }
-};
-_LT_EOF
-])
-
-_lt_libdeps_save_CFLAGS=$CFLAGS
-case "$CC $CFLAGS " in #(
-*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
-*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
-esac
-
-dnl Parse the compiler output and extract the necessary
-dnl objects, libraries and library flags.
-if AC_TRY_EVAL(ac_compile); then
-  # Parse the compiler output and extract the necessary
-  # objects, libraries and library flags.
-
-  # Sentinel used to keep track of whether or not we are before
-  # the conftest object file.
-  pre_test_object_deps_done=no
-
-  for p in `eval "$output_verbose_link_cmd"`; do
-    case ${prev}${p} in
-
-    -L* | -R* | -l*)
-       # Some compilers place space between "-{L,R}" and the path.
-       # Remove the space.
-       if test $p = "-L" ||
-          test $p = "-R"; then
-	 prev=$p
-	 continue
-       fi
-
-       # Expand the sysroot to ease extracting the directories later.
-       if test -z "$prev"; then
-         case $p in
-         -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
-         -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
-         -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
-         esac
-       fi
-       case $p in
-       =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
-       esac
-       if test "$pre_test_object_deps_done" = no; then
-	 case ${prev} in
-	 -L | -R)
-	   # Internal compiler library paths should come after those
-	   # provided the user.  The postdeps already come after the
-	   # user supplied libs so there is no need to process them.
-	   if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
-	     _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
-	   else
-	     _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
-	   fi
-	   ;;
-	 # The "-l" case would never come before the object being
-	 # linked, so don't bother handling this case.
-	 esac
-       else
-	 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
-	   _LT_TAGVAR(postdeps, $1)="${prev}${p}"
-	 else
-	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
-	 fi
-       fi
-       prev=
-       ;;
-
-    *.lto.$objext) ;; # Ignore GCC LTO objects
-    *.$objext)
-       # This assumes that the test object file only shows up
-       # once in the compiler output.
-       if test "$p" = "conftest.$objext"; then
-	 pre_test_object_deps_done=yes
-	 continue
-       fi
-
-       if test "$pre_test_object_deps_done" = no; then
-	 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
-	   _LT_TAGVAR(predep_objects, $1)="$p"
-	 else
-	   _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
-	 fi
-       else
-	 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
-	   _LT_TAGVAR(postdep_objects, $1)="$p"
-	 else
-	   _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
-	 fi
-       fi
-       ;;
-
-    *) ;; # Ignore the rest.
-
-    esac
-  done
-
-  # Clean up.
-  rm -f a.out a.exe
-else
-  echo "libtool.m4: error: problem compiling $1 test program"
-fi
-
-$RM -f confest.$objext
-CFLAGS=$_lt_libdeps_save_CFLAGS
-
-# PORTME: override above test on systems where it is broken
-m4_if([$1], [CXX],
-[case $host_os in
-interix[[3-9]]*)
-  # Interix 3.5 installs completely hosed .la files for C++, so rather than
-  # hack all around it, let's just trust "g++" to DTRT.
-  _LT_TAGVAR(predep_objects,$1)=
-  _LT_TAGVAR(postdep_objects,$1)=
-  _LT_TAGVAR(postdeps,$1)=
-  ;;
-
-linux*)
-  case `$CC -V 2>&1 | sed 5q` in
-  *Sun\ C*)
-    # Sun C++ 5.9
-
-    # The more standards-conforming stlport4 library is
-    # incompatible with the Cstd library. Avoid specifying
-    # it if it's in CXXFLAGS. Ignore libCrun as
-    # -library=stlport4 depends on it.
-    case " $CXX $CXXFLAGS " in
-    *" -library=stlport4 "*)
-      solaris_use_stlport4=yes
-      ;;
-    esac
-
-    if test "$solaris_use_stlport4" != yes; then
-      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
-    fi
-    ;;
-  esac
-  ;;
-
-solaris*)
-  case $cc_basename in
-  CC* | sunCC*)
-    # The more standards-conforming stlport4 library is
-    # incompatible with the Cstd library. Avoid specifying
-    # it if it's in CXXFLAGS. Ignore libCrun as
-    # -library=stlport4 depends on it.
-    case " $CXX $CXXFLAGS " in
-    *" -library=stlport4 "*)
-      solaris_use_stlport4=yes
-      ;;
-    esac
-
-    # Adding this requires a known-good setup of shared libraries for
-    # Sun compiler versions before 5.6, else PIC objects from an old
-    # archive will be linked into the output, leading to subtle bugs.
-    if test "$solaris_use_stlport4" != yes; then
-      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
-    fi
-    ;;
-  esac
-  ;;
-esac
-])
-
-case " $_LT_TAGVAR(postdeps, $1) " in
-*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
-esac
- _LT_TAGVAR(compiler_lib_search_dirs, $1)=
-if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
- _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
-fi
-_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
-    [The directories searched by this compiler when creating a shared library])
-_LT_TAGDECL([], [predep_objects], [1],
-    [Dependencies to place before and after the objects being linked to
-    create a shared library])
-_LT_TAGDECL([], [postdep_objects], [1])
-_LT_TAGDECL([], [predeps], [1])
-_LT_TAGDECL([], [postdeps], [1])
-_LT_TAGDECL([], [compiler_lib_search_path], [1],
-    [The library search path used internally by the compiler when linking
-    a shared library])
-])# _LT_SYS_HIDDEN_LIBDEPS
-
-
-# _LT_LANG_F77_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for a Fortran 77 compiler are
-# suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_F77_CONFIG],
-[AC_LANG_PUSH(Fortran 77)
-if test -z "$F77" || test "X$F77" = "Xno"; then
-  _lt_disable_F77=yes
-fi
-
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for f77 test sources.
-ac_ext=f
-
-# Object file extension for compiled f77 test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the F77 compiler isn't working.  Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_disable_F77" != yes; then
-  # Code to be used in simple compile tests
-  lt_simple_compile_test_code="\
-      subroutine t
-      return
-      end
-"
-
-  # Code to be used in simple link tests
-  lt_simple_link_test_code="\
-      program t
-      end
-"
-
-  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
-  _LT_TAG_COMPILER
-
-  # save warnings/boilerplate of simple test code
-  _LT_COMPILER_BOILERPLATE
-  _LT_LINKER_BOILERPLATE
-
-  # Allow CC to be a program name with arguments.
-  lt_save_CC="$CC"
-  lt_save_GCC=$GCC
-  lt_save_CFLAGS=$CFLAGS
-  CC=${F77-"f77"}
-  CFLAGS=$FFLAGS
-  compiler=$CC
-  _LT_TAGVAR(compiler, $1)=$CC
-  _LT_CC_BASENAME([$compiler])
-  GCC=$G77
-  if test -n "$compiler"; then
-    AC_MSG_CHECKING([if libtool supports shared libraries])
-    AC_MSG_RESULT([$can_build_shared])
-
-    AC_MSG_CHECKING([whether to build shared libraries])
-    test "$can_build_shared" = "no" && enable_shared=no
-
-    # On AIX, shared libraries and static libraries use the same namespace, and
-    # are all built from PIC.
-    case $host_os in
-      aix3*)
-        test "$enable_shared" = yes && enable_static=no
-        if test -n "$RANLIB"; then
-          archive_cmds="$archive_cmds~\$RANLIB \$lib"
-          postinstall_cmds='$RANLIB $lib'
-        fi
-        ;;
-      aix[[4-9]]*)
-	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-	  test "$enable_shared" = yes && enable_static=no
-	fi
-        ;;
-    esac
-    AC_MSG_RESULT([$enable_shared])
-
-    AC_MSG_CHECKING([whether to build static libraries])
-    # Make sure either enable_shared or enable_static is yes.
-    test "$enable_shared" = yes || enable_static=yes
-    AC_MSG_RESULT([$enable_static])
-
-    _LT_TAGVAR(GCC, $1)="$G77"
-    _LT_TAGVAR(LD, $1)="$LD"
-
-    ## CAVEAT EMPTOR:
-    ## There is no encapsulation within the following macros, do not change
-    ## the running order or otherwise move them around unless you know exactly
-    ## what you are doing...
-    _LT_COMPILER_PIC($1)
-    _LT_COMPILER_C_O($1)
-    _LT_COMPILER_FILE_LOCKS($1)
-    _LT_LINKER_SHLIBS($1)
-    _LT_SYS_DYNAMIC_LINKER($1)
-    _LT_LINKER_HARDCODE_LIBPATH($1)
-
-    _LT_CONFIG($1)
-  fi # test -n "$compiler"
-
-  GCC=$lt_save_GCC
-  CC="$lt_save_CC"
-  CFLAGS="$lt_save_CFLAGS"
-fi # test "$_lt_disable_F77" != yes
-
-AC_LANG_POP
-])# _LT_LANG_F77_CONFIG
-
-
-# _LT_LANG_FC_CONFIG([TAG])
-# -------------------------
-# Ensure that the configuration variables for a Fortran compiler are
-# suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_FC_CONFIG],
-[AC_LANG_PUSH(Fortran)
-
-if test -z "$FC" || test "X$FC" = "Xno"; then
-  _lt_disable_FC=yes
-fi
-
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for fc test sources.
-ac_ext=${ac_fc_srcext-f}
-
-# Object file extension for compiled fc test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the FC compiler isn't working.  Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_disable_FC" != yes; then
-  # Code to be used in simple compile tests
-  lt_simple_compile_test_code="\
-      subroutine t
-      return
-      end
-"
-
-  # Code to be used in simple link tests
-  lt_simple_link_test_code="\
-      program t
-      end
-"
-
-  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
-  _LT_TAG_COMPILER
-
-  # save warnings/boilerplate of simple test code
-  _LT_COMPILER_BOILERPLATE
-  _LT_LINKER_BOILERPLATE
-
-  # Allow CC to be a program name with arguments.
-  lt_save_CC="$CC"
-  lt_save_GCC=$GCC
-  lt_save_CFLAGS=$CFLAGS
-  CC=${FC-"f95"}
-  CFLAGS=$FCFLAGS
-  compiler=$CC
-  GCC=$ac_cv_fc_compiler_gnu
-
-  _LT_TAGVAR(compiler, $1)=$CC
-  _LT_CC_BASENAME([$compiler])
-
-  if test -n "$compiler"; then
-    AC_MSG_CHECKING([if libtool supports shared libraries])
-    AC_MSG_RESULT([$can_build_shared])
-
-    AC_MSG_CHECKING([whether to build shared libraries])
-    test "$can_build_shared" = "no" && enable_shared=no
-
-    # On AIX, shared libraries and static libraries use the same namespace, and
-    # are all built from PIC.
-    case $host_os in
-      aix3*)
-        test "$enable_shared" = yes && enable_static=no
-        if test -n "$RANLIB"; then
-          archive_cmds="$archive_cmds~\$RANLIB \$lib"
-          postinstall_cmds='$RANLIB $lib'
-        fi
-        ;;
-      aix[[4-9]]*)
-	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-	  test "$enable_shared" = yes && enable_static=no
-	fi
-        ;;
-    esac
-    AC_MSG_RESULT([$enable_shared])
-
-    AC_MSG_CHECKING([whether to build static libraries])
-    # Make sure either enable_shared or enable_static is yes.
-    test "$enable_shared" = yes || enable_static=yes
-    AC_MSG_RESULT([$enable_static])
-
-    _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
-    _LT_TAGVAR(LD, $1)="$LD"
-
-    ## CAVEAT EMPTOR:
-    ## There is no encapsulation within the following macros, do not change
-    ## the running order or otherwise move them around unless you know exactly
-    ## what you are doing...
-    _LT_SYS_HIDDEN_LIBDEPS($1)
-    _LT_COMPILER_PIC($1)
-    _LT_COMPILER_C_O($1)
-    _LT_COMPILER_FILE_LOCKS($1)
-    _LT_LINKER_SHLIBS($1)
-    _LT_SYS_DYNAMIC_LINKER($1)
-    _LT_LINKER_HARDCODE_LIBPATH($1)
-
-    _LT_CONFIG($1)
-  fi # test -n "$compiler"
-
-  GCC=$lt_save_GCC
-  CC=$lt_save_CC
-  CFLAGS=$lt_save_CFLAGS
-fi # test "$_lt_disable_FC" != yes
-
-AC_LANG_POP
-])# _LT_LANG_FC_CONFIG
-
-
-# _LT_LANG_GCJ_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for the GNU Java Compiler compiler
-# are suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_GCJ_CONFIG],
-[AC_REQUIRE([LT_PROG_GCJ])dnl
-AC_LANG_SAVE
-
-# Source file extension for Java test sources.
-ac_ext=java
-
-# Object file extension for compiled Java test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="class foo {}"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
-
-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
-_LT_TAG_COMPILER
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-# Allow CC to be a program name with arguments.
-lt_save_CC=$CC
-lt_save_CFLAGS=$CFLAGS
-lt_save_GCC=$GCC
-GCC=yes
-CC=${GCJ-"gcj"}
-CFLAGS=$GCJFLAGS
-compiler=$CC
-_LT_TAGVAR(compiler, $1)=$CC
-_LT_TAGVAR(LD, $1)="$LD"
-_LT_CC_BASENAME([$compiler])
-
-# GCJ did not exist at the time GCC didn't implicitly link libc in.
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(reload_flag, $1)=$reload_flag
-_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
-
-## CAVEAT EMPTOR:
-## There is no encapsulation within the following macros, do not change
-## the running order or otherwise move them around unless you know exactly
-## what you are doing...
-if test -n "$compiler"; then
-  _LT_COMPILER_NO_RTTI($1)
-  _LT_COMPILER_PIC($1)
-  _LT_COMPILER_C_O($1)
-  _LT_COMPILER_FILE_LOCKS($1)
-  _LT_LINKER_SHLIBS($1)
-  _LT_LINKER_HARDCODE_LIBPATH($1)
-
-  _LT_CONFIG($1)
-fi
-
-AC_LANG_RESTORE
-
-GCC=$lt_save_GCC
-CC=$lt_save_CC
-CFLAGS=$lt_save_CFLAGS
-])# _LT_LANG_GCJ_CONFIG
-
-
-# _LT_LANG_RC_CONFIG([TAG])
-# -------------------------
-# Ensure that the configuration variables for the Windows resource compiler
-# are suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_RC_CONFIG],
-[AC_REQUIRE([LT_PROG_RC])dnl
-AC_LANG_SAVE
-
-# Source file extension for RC test sources.
-ac_ext=rc
-
-# Object file extension for compiled RC test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
-
-# Code to be used in simple link tests
-lt_simple_link_test_code="$lt_simple_compile_test_code"
-
-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
-_LT_TAG_COMPILER
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-# Allow CC to be a program name with arguments.
-lt_save_CC="$CC"
-lt_save_CFLAGS=$CFLAGS
-lt_save_GCC=$GCC
-GCC=
-CC=${RC-"windres"}
-CFLAGS=
-compiler=$CC
-_LT_TAGVAR(compiler, $1)=$CC
-_LT_CC_BASENAME([$compiler])
-_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
-
-if test -n "$compiler"; then
-  :
-  _LT_CONFIG($1)
-fi
-
-GCC=$lt_save_GCC
-AC_LANG_RESTORE
-CC=$lt_save_CC
-CFLAGS=$lt_save_CFLAGS
-])# _LT_LANG_RC_CONFIG
-
-
-# LT_PROG_GCJ
-# -----------
-AC_DEFUN([LT_PROG_GCJ],
-[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
-  [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
-    [AC_CHECK_TOOL(GCJ, gcj,)
-      test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
-      AC_SUBST(GCJFLAGS)])])[]dnl
-])
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
-
-
-# LT_PROG_RC
-# ----------
-AC_DEFUN([LT_PROG_RC],
-[AC_CHECK_TOOL(RC, windres,)
-])
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_RC], [])
-
-
-# _LT_DECL_EGREP
-# --------------
-# If we don't have a new enough Autoconf to choose the best grep
-# available, choose the one first in the user's PATH.
-m4_defun([_LT_DECL_EGREP],
-[AC_REQUIRE([AC_PROG_EGREP])dnl
-AC_REQUIRE([AC_PROG_FGREP])dnl
-test -z "$GREP" && GREP=grep
-_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
-_LT_DECL([], [EGREP], [1], [An ERE matcher])
-_LT_DECL([], [FGREP], [1], [A literal string matcher])
-dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
-AC_SUBST([GREP])
-])
-
-
-# _LT_DECL_OBJDUMP
-# --------------
-# If we don't have a new enough Autoconf to choose the best objdump
-# available, choose the one first in the user's PATH.
-m4_defun([_LT_DECL_OBJDUMP],
-[AC_CHECK_TOOL(OBJDUMP, objdump, false)
-test -z "$OBJDUMP" && OBJDUMP=objdump
-_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
-AC_SUBST([OBJDUMP])
-])
-
-# _LT_DECL_DLLTOOL
-# ----------------
-# Ensure DLLTOOL variable is set.
-m4_defun([_LT_DECL_DLLTOOL],
-[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
-AC_SUBST([DLLTOOL])
-])
-
-# _LT_DECL_SED
-# ------------
-# Check for a fully-functional sed program, that truncates
-# as few characters as possible.  Prefer GNU sed if found.
-m4_defun([_LT_DECL_SED],
-[AC_PROG_SED
-test -z "$SED" && SED=sed
-Xsed="$SED -e 1s/^X//"
-_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
-_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
-    [Sed that helps us avoid accidentally triggering echo(1) options like -n])
-])# _LT_DECL_SED
-
-m4_ifndef([AC_PROG_SED], [
-############################################################
-# NOTE: This macro has been submitted for inclusion into   #
-#  GNU Autoconf as AC_PROG_SED.  When it is available in   #
-#  a released version of Autoconf we should remove this    #
-#  macro and use it instead.                               #
-############################################################
-
-m4_defun([AC_PROG_SED],
-[AC_MSG_CHECKING([for a sed that does not truncate output])
-AC_CACHE_VAL(lt_cv_path_SED,
-[# Loop through the user's path and test for sed and gsed.
-# Then use that list of sed's as ones to test for truncation.
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for lt_ac_prog in sed gsed; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
-        lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
-      fi
-    done
-  done
-done
-IFS=$as_save_IFS
-lt_ac_max=0
-lt_ac_count=0
-# Add /usr/xpg4/bin/sed as it is typically found on Solaris
-# along with /bin/sed that truncates output.
-for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
-  test ! -f $lt_ac_sed && continue
-  cat /dev/null > conftest.in
-  lt_ac_count=0
-  echo $ECHO_N "0123456789$ECHO_C" >conftest.in
-  # Check for GNU sed and select it if it is found.
-  if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
-    lt_cv_path_SED=$lt_ac_sed
-    break
-  fi
-  while true; do
-    cat conftest.in conftest.in >conftest.tmp
-    mv conftest.tmp conftest.in
-    cp conftest.in conftest.nl
-    echo >>conftest.nl
-    $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
-    cmp -s conftest.out conftest.nl || break
-    # 10000 chars as input seems more than enough
-    test $lt_ac_count -gt 10 && break
-    lt_ac_count=`expr $lt_ac_count + 1`
-    if test $lt_ac_count -gt $lt_ac_max; then
-      lt_ac_max=$lt_ac_count
-      lt_cv_path_SED=$lt_ac_sed
-    fi
-  done
-done
-])
-SED=$lt_cv_path_SED
-AC_SUBST([SED])
-AC_MSG_RESULT([$SED])
-])#AC_PROG_SED
-])#m4_ifndef
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_SED], [])
-
-
-# _LT_CHECK_SHELL_FEATURES
-# ------------------------
-# Find out whether the shell is Bourne or XSI compatible,
-# or has some other useful features.
-m4_defun([_LT_CHECK_SHELL_FEATURES],
-[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
-  test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,b/c, \
-    && eval 'test $(( 1 + 1 )) -eq 2 \
-    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
-  && xsi_shell=yes
-AC_MSG_RESULT([$xsi_shell])
-_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
-
-AC_MSG_CHECKING([whether the shell understands "+="])
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
-    >/dev/null 2>&1 \
-  && lt_shell_append=yes
-AC_MSG_RESULT([$lt_shell_append])
-_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
-
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  lt_unset=unset
-else
-  lt_unset=false
-fi
-_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
-
-# test EBCDIC or ASCII
-case `echo X|tr X '\101'` in
- A) # ASCII based system
-    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
-  lt_SP2NL='tr \040 \012'
-  lt_NL2SP='tr \015\012 \040\040'
-  ;;
- *) # EBCDIC based system
-  lt_SP2NL='tr \100 \n'
-  lt_NL2SP='tr \r\n \100\100'
-  ;;
-esac
-_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
-_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
-])# _LT_CHECK_SHELL_FEATURES
-
-
-# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
-# ------------------------------------------------------
-# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
-# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
-m4_defun([_LT_PROG_FUNCTION_REPLACE],
-[dnl {
-sed -e '/^$1 ()$/,/^} # $1 /c\
-$1 ()\
-{\
-m4_bpatsubsts([$2], [$], [\\], [^\([	 ]\)], [\\\1])
-} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-])
-
-
-# _LT_PROG_REPLACE_SHELLFNS
-# -------------------------
-# Replace existing portable implementations of several shell functions with
-# equivalent extended shell implementations where those features are available..
-m4_defun([_LT_PROG_REPLACE_SHELLFNS],
-[if test x"$xsi_shell" = xyes; then
-  _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
-    case ${1} in
-      */*) func_dirname_result="${1%/*}${2}" ;;
-      *  ) func_dirname_result="${3}" ;;
-    esac])
-
-  _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
-    func_basename_result="${1##*/}"])
-
-  _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
-    case ${1} in
-      */*) func_dirname_result="${1%/*}${2}" ;;
-      *  ) func_dirname_result="${3}" ;;
-    esac
-    func_basename_result="${1##*/}"])
-
-  _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
-    # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
-    # positional parameters, so assign one to ordinary parameter first.
-    func_stripname_result=${3}
-    func_stripname_result=${func_stripname_result#"${1}"}
-    func_stripname_result=${func_stripname_result%"${2}"}])
-
-  _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
-    func_split_long_opt_name=${1%%=*}
-    func_split_long_opt_arg=${1#*=}])
-
-  _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
-    func_split_short_opt_arg=${1#??}
-    func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
-
-  _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
-    case ${1} in
-      *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
-      *)    func_lo2o_result=${1} ;;
-    esac])
-
-  _LT_PROG_FUNCTION_REPLACE([func_xform], [    func_xform_result=${1%.*}.lo])
-
-  _LT_PROG_FUNCTION_REPLACE([func_arith], [    func_arith_result=$(( $[*] ))])
-
-  _LT_PROG_FUNCTION_REPLACE([func_len], [    func_len_result=${#1}])
-fi
-
-if test x"$lt_shell_append" = xyes; then
-  _LT_PROG_FUNCTION_REPLACE([func_append], [    eval "${1}+=\\${2}"])
-
-  _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
-    func_quote_for_eval "${2}"
-dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
-    eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
-
-  # Save a `func_append' function call where possible by direct use of '+='
-  sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-else
-  # Save a `func_append' function call even when '+=' is not available
-  sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-fi
-
-if test x"$_lt_function_replace_fail" = x":"; then
-  AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
-fi
-])
-
-# _LT_PATH_CONVERSION_FUNCTIONS
-# -----------------------------
-# Determine which file name conversion functions should be used by
-# func_to_host_file (and, implicitly, by func_to_host_path).  These are needed
-# for certain cross-compile configurations and native mingw.
-m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-AC_MSG_CHECKING([how to convert $build file names to $host format])
-AC_CACHE_VAL(lt_cv_to_host_file_cmd,
-[case $host in
-  *-*-mingw* )
-    case $build in
-      *-*-mingw* ) # actually msys
-        lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
-        ;;
-      *-*-cygwin* )
-        lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
-        ;;
-      * ) # otherwise, assume *nix
-        lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
-        ;;
-    esac
-    ;;
-  *-*-cygwin* )
-    case $build in
-      *-*-mingw* ) # actually msys
-        lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
-        ;;
-      *-*-cygwin* )
-        lt_cv_to_host_file_cmd=func_convert_file_noop
-        ;;
-      * ) # otherwise, assume *nix
-        lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
-        ;;
-    esac
-    ;;
-  * ) # unhandled hosts (and "normal" native builds)
-    lt_cv_to_host_file_cmd=func_convert_file_noop
-    ;;
-esac
-])
-to_host_file_cmd=$lt_cv_to_host_file_cmd
-AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
-_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
-         [0], [convert $build file names to $host format])dnl
-
-AC_MSG_CHECKING([how to convert $build file names to toolchain format])
-AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
-[#assume ordinary cross tools, or native build.
-lt_cv_to_tool_file_cmd=func_convert_file_noop
-case $host in
-  *-*-mingw* )
-    case $build in
-      *-*-mingw* ) # actually msys
-        lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
-        ;;
-    esac
-    ;;
-esac
-])
-to_tool_file_cmd=$lt_cv_to_tool_file_cmd
-AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
-_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
-         [0], [convert $build files to toolchain format])dnl
-])# _LT_PATH_CONVERSION_FUNCTIONS
diff --git a/src/other/curl/m4/ltoptions.m4 b/src/other/curl/m4/ltoptions.m4
deleted file mode 100644
index 17cfd51..0000000
--- a/src/other/curl/m4/ltoptions.m4
+++ /dev/null
@@ -1,369 +0,0 @@
-# Helper functions for option handling.                    -*- Autoconf -*-
-#
-#   Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
-#   Inc.
-#   Written by Gary V. Vaughan, 2004
-#
-# This file 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.
-
-# serial 7 ltoptions.m4
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
-
-
-# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
-# ------------------------------------------
-m4_define([_LT_MANGLE_OPTION],
-[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
-
-
-# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
-# ---------------------------------------
-# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
-# matching handler defined, dispatch to it.  Other OPTION-NAMEs are
-# saved as a flag.
-m4_define([_LT_SET_OPTION],
-[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
-m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
-        _LT_MANGLE_DEFUN([$1], [$2]),
-    [m4_warning([Unknown $1 option `$2'])])[]dnl
-])
-
-
-# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
-# ------------------------------------------------------------
-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
-m4_define([_LT_IF_OPTION],
-[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
-
-
-# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
-# -------------------------------------------------------
-# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
-# are set.
-m4_define([_LT_UNLESS_OPTIONS],
-[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
-	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
-		      [m4_define([$0_found])])])[]dnl
-m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
-])[]dnl
-])
-
-
-# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
-# ----------------------------------------
-# OPTION-LIST is a space-separated list of Libtool options associated
-# with MACRO-NAME.  If any OPTION has a matching handler declared with
-# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
-# the unknown option and exit.
-m4_defun([_LT_SET_OPTIONS],
-[# Set options
-m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
-    [_LT_SET_OPTION([$1], _LT_Option)])
-
-m4_if([$1],[LT_INIT],[
-  dnl
-  dnl Simply set some default values (i.e off) if boolean options were not
-  dnl specified:
-  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
-  ])
-  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
-  ])
-  dnl
-  dnl If no reference was made to various pairs of opposing options, then
-  dnl we run the default mode handler for the pair.  For example, if neither
-  dnl `shared' nor `disable-shared' was passed, we enable building of shared
-  dnl archives by default:
-  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
-  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
-  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
-  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
-  		   [_LT_ENABLE_FAST_INSTALL])
-  ])
-])# _LT_SET_OPTIONS
-
-
-## --------------------------------- ##
-## Macros to handle LT_INIT options. ##
-## --------------------------------- ##
-
-# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
-# -----------------------------------------
-m4_define([_LT_MANGLE_DEFUN],
-[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
-
-
-# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
-# -----------------------------------------------
-m4_define([LT_OPTION_DEFINE],
-[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
-])# LT_OPTION_DEFINE
-
-
-# dlopen
-# ------
-LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
-])
-
-AU_DEFUN([AC_LIBTOOL_DLOPEN],
-[_LT_SET_OPTION([LT_INIT], [dlopen])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `dlopen' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
-
-
-# win32-dll
-# ---------
-# Declare package support for building win32 dll's.
-LT_OPTION_DEFINE([LT_INIT], [win32-dll],
-[enable_win32_dll=yes
-
-case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
-  AC_CHECK_TOOL(AS, as, false)
-  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
-  AC_CHECK_TOOL(OBJDUMP, objdump, false)
-  ;;
-esac
-
-test -z "$AS" && AS=as
-_LT_DECL([], [AS],      [1], [Assembler program])dnl
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
-])# win32-dll
-
-AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-_LT_SET_OPTION([LT_INIT], [win32-dll])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `win32-dll' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
-
-
-# _LT_ENABLE_SHARED([DEFAULT])
-# ----------------------------
-# implement the --enable-shared flag, and supports the `shared' and
-# `disable-shared' LT_INIT options.
-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
-m4_define([_LT_ENABLE_SHARED],
-[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([shared],
-    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
-	[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
-    [p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_shared=yes ;;
-    no) enable_shared=no ;;
-    *)
-      enable_shared=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_shared=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac],
-    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
-
-    _LT_DECL([build_libtool_libs], [enable_shared], [0],
-	[Whether or not to build shared libraries])
-])# _LT_ENABLE_SHARED
-
-LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
-
-# Old names:
-AC_DEFUN([AC_ENABLE_SHARED],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
-])
-
-AC_DEFUN([AC_DISABLE_SHARED],
-[_LT_SET_OPTION([LT_INIT], [disable-shared])
-])
-
-AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
-AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_ENABLE_SHARED], [])
-dnl AC_DEFUN([AM_DISABLE_SHARED], [])
-
-
-
-# _LT_ENABLE_STATIC([DEFAULT])
-# ----------------------------
-# implement the --enable-static flag, and support the `static' and
-# `disable-static' LT_INIT options.
-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
-m4_define([_LT_ENABLE_STATIC],
-[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([static],
-    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
-	[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
-    [p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_static=yes ;;
-    no) enable_static=no ;;
-    *)
-     enable_static=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_static=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac],
-    [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
-
-    _LT_DECL([build_old_libs], [enable_static], [0],
-	[Whether or not to build static libraries])
-])# _LT_ENABLE_STATIC
-
-LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
-
-# Old names:
-AC_DEFUN([AC_ENABLE_STATIC],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
-])
-
-AC_DEFUN([AC_DISABLE_STATIC],
-[_LT_SET_OPTION([LT_INIT], [disable-static])
-])
-
-AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
-AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_ENABLE_STATIC], [])
-dnl AC_DEFUN([AM_DISABLE_STATIC], [])
-
-
-
-# _LT_ENABLE_FAST_INSTALL([DEFAULT])
-# ----------------------------------
-# implement the --enable-fast-install flag, and support the `fast-install'
-# and `disable-fast-install' LT_INIT options.
-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
-m4_define([_LT_ENABLE_FAST_INSTALL],
-[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([fast-install],
-    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
-    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
-    [p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_fast_install=yes ;;
-    no) enable_fast_install=no ;;
-    *)
-      enable_fast_install=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-	IFS="$lt_save_ifs"
-	if test "X$pkg" = "X$p"; then
-	  enable_fast_install=yes
-	fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac],
-    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
-
-_LT_DECL([fast_install], [enable_fast_install], [0],
-	 [Whether or not to optimize for fast installation])dnl
-])# _LT_ENABLE_FAST_INSTALL
-
-LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
-
-# Old names:
-AU_DEFUN([AC_ENABLE_FAST_INSTALL],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `fast-install' option into LT_INIT's first parameter.])
-])
-
-AU_DEFUN([AC_DISABLE_FAST_INSTALL],
-[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `disable-fast-install' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
-dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
-
-
-# _LT_WITH_PIC([MODE])
-# --------------------
-# implement the --with-pic flag, and support the `pic-only' and `no-pic'
-# LT_INIT options.
-# MODE is either `yes' or `no'.  If omitted, it defaults to `both'.
-m4_define([_LT_WITH_PIC],
-[AC_ARG_WITH([pic],
-    [AS_HELP_STRING([--with-pic],
-	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
-    [pic_mode="$withval"],
-    [pic_mode=default])
-
-test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
-
-_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
-])# _LT_WITH_PIC
-
-LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
-LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
-
-# Old name:
-AU_DEFUN([AC_LIBTOOL_PICMODE],
-[_LT_SET_OPTION([LT_INIT], [pic-only])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `pic-only' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
-
-## ----------------- ##
-## LTDL_INIT Options ##
-## ----------------- ##
-
-m4_define([_LTDL_MODE], [])
-LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
-		 [m4_define([_LTDL_MODE], [nonrecursive])])
-LT_OPTION_DEFINE([LTDL_INIT], [recursive],
-		 [m4_define([_LTDL_MODE], [recursive])])
-LT_OPTION_DEFINE([LTDL_INIT], [subproject],
-		 [m4_define([_LTDL_MODE], [subproject])])
-
-m4_define([_LTDL_TYPE], [])
-LT_OPTION_DEFINE([LTDL_INIT], [installable],
-		 [m4_define([_LTDL_TYPE], [installable])])
-LT_OPTION_DEFINE([LTDL_INIT], [convenience],
-		 [m4_define([_LTDL_TYPE], [convenience])])
diff --git a/src/other/curl/m4/ltsugar.m4 b/src/other/curl/m4/ltsugar.m4
deleted file mode 100644
index 9000a05..0000000
--- a/src/other/curl/m4/ltsugar.m4
+++ /dev/null
@@ -1,123 +0,0 @@
-# ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
-#
-# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gary V. Vaughan, 2004
-#
-# This file 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.
-
-# serial 6 ltsugar.m4
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
-
-
-# lt_join(SEP, ARG1, [ARG2...])
-# -----------------------------
-# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
-# associated separator.
-# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
-# versions in m4sugar had bugs.
-m4_define([lt_join],
-[m4_if([$#], [1], [],
-       [$#], [2], [[$2]],
-       [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
-m4_define([_lt_join],
-[m4_if([$#$2], [2], [],
-       [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
-
-
-# lt_car(LIST)
-# lt_cdr(LIST)
-# ------------
-# Manipulate m4 lists.
-# These macros are necessary as long as will still need to support
-# Autoconf-2.59 which quotes differently.
-m4_define([lt_car], [[$1]])
-m4_define([lt_cdr],
-[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
-       [$#], 1, [],
-       [m4_dquote(m4_shift($@))])])
-m4_define([lt_unquote], $1)
-
-
-# lt_append(MACRO-NAME, STRING, [SEPARATOR])
-# ------------------------------------------
-# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
-# Note that neither SEPARATOR nor STRING are expanded; they are appended
-# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
-# No SEPARATOR is output if MACRO-NAME was previously undefined (different
-# than defined and empty).
-#
-# This macro is needed until we can rely on Autoconf 2.62, since earlier
-# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
-m4_define([lt_append],
-[m4_define([$1],
-	   m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
-
-
-
-# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
-# ----------------------------------------------------------
-# Produce a SEP delimited list of all paired combinations of elements of
-# PREFIX-LIST with SUFFIX1 through SUFFIXn.  Each element of the list
-# has the form PREFIXmINFIXSUFFIXn.
-# Needed until we can rely on m4_combine added in Autoconf 2.62.
-m4_define([lt_combine],
-[m4_if(m4_eval([$# > 3]), [1],
-       [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
-[[m4_foreach([_Lt_prefix], [$2],
-	     [m4_foreach([_Lt_suffix],
-		]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
-	[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
-
-
-# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
-# -----------------------------------------------------------------------
-# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
-# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
-m4_define([lt_if_append_uniq],
-[m4_ifdef([$1],
-	  [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
-		 [lt_append([$1], [$2], [$3])$4],
-		 [$5])],
-	  [lt_append([$1], [$2], [$3])$4])])
-
-
-# lt_dict_add(DICT, KEY, VALUE)
-# -----------------------------
-m4_define([lt_dict_add],
-[m4_define([$1($2)], [$3])])
-
-
-# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
-# --------------------------------------------
-m4_define([lt_dict_add_subkey],
-[m4_define([$1($2:$3)], [$4])])
-
-
-# lt_dict_fetch(DICT, KEY, [SUBKEY])
-# ----------------------------------
-m4_define([lt_dict_fetch],
-[m4_ifval([$3],
-	m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
-    m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
-
-
-# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
-# -----------------------------------------------------------------
-m4_define([lt_if_dict_fetch],
-[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
-	[$5],
-    [$6])])
-
-
-# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
-# --------------------------------------------------------------
-m4_define([lt_dict_filter],
-[m4_if([$5], [], [],
-  [lt_join(m4_quote(m4_default([$4], [[, ]])),
-           lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
-		      [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
-])
diff --git a/src/other/curl/m4/ltversion.m4 b/src/other/curl/m4/ltversion.m4
deleted file mode 100644
index 9c7b5d4..0000000
--- a/src/other/curl/m4/ltversion.m4
+++ /dev/null
@@ -1,23 +0,0 @@
-# ltversion.m4 -- version numbers			-*- Autoconf -*-
-#
-#   Copyright (C) 2004 Free Software Foundation, Inc.
-#   Written by Scott James Remnant, 2004
-#
-# This file 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.
-
-# @configure_input@
-
-# serial 3293 ltversion.m4
-# This file is part of GNU Libtool
-
-m4_define([LT_PACKAGE_VERSION], [2.4])
-m4_define([LT_PACKAGE_REVISION], [1.3293])
-
-AC_DEFUN([LTVERSION_VERSION],
-[macro_version='2.4'
-macro_revision='1.3293'
-_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
-_LT_DECL(, macro_revision, 0)
-])
diff --git a/src/other/curl/m4/lt~obsolete.m4 b/src/other/curl/m4/lt~obsolete.m4
deleted file mode 100644
index c573da9..0000000
--- a/src/other/curl/m4/lt~obsolete.m4
+++ /dev/null
@@ -1,98 +0,0 @@
-# lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*-
-#
-#   Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
-#   Written by Scott James Remnant, 2004.
-#
-# This file 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.
-
-# serial 5 lt~obsolete.m4
-
-# These exist entirely to fool aclocal when bootstrapping libtool.
-#
-# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
-# which have later been changed to m4_define as they aren't part of the
-# exported API, or moved to Autoconf or Automake where they belong.
-#
-# The trouble is, aclocal is a bit thick.  It'll see the old AC_DEFUN
-# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
-# using a macro with the same name in our local m4/libtool.m4 it'll
-# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
-# and doesn't know about Autoconf macros at all.)
-#
-# So we provide this file, which has a silly filename so it's always
-# included after everything else.  This provides aclocal with the
-# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
-# because those macros already exist, or will be overwritten later.
-# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. 
-#
-# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
-# Yes, that means every name once taken will need to remain here until
-# we give up compatibility with versions before 1.7, at which point
-# we need to keep only those names which we still refer to.
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
-
-m4_ifndef([AC_LIBTOOL_LINKER_OPTION],	[AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
-m4_ifndef([AC_PROG_EGREP],		[AC_DEFUN([AC_PROG_EGREP])])
-m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
-m4_ifndef([_LT_AC_SHELL_INIT],		[AC_DEFUN([_LT_AC_SHELL_INIT])])
-m4_ifndef([_LT_AC_SYS_LIBPATH_AIX],	[AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
-m4_ifndef([_LT_PROG_LTMAIN],		[AC_DEFUN([_LT_PROG_LTMAIN])])
-m4_ifndef([_LT_AC_TAGVAR],		[AC_DEFUN([_LT_AC_TAGVAR])])
-m4_ifndef([AC_LTDL_ENABLE_INSTALL],	[AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
-m4_ifndef([AC_LTDL_PREOPEN],		[AC_DEFUN([AC_LTDL_PREOPEN])])
-m4_ifndef([_LT_AC_SYS_COMPILER],	[AC_DEFUN([_LT_AC_SYS_COMPILER])])
-m4_ifndef([_LT_AC_LOCK],		[AC_DEFUN([_LT_AC_LOCK])])
-m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE],	[AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
-m4_ifndef([_LT_AC_TRY_DLOPEN_SELF],	[AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
-m4_ifndef([AC_LIBTOOL_PROG_CC_C_O],	[AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
-m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
-m4_ifndef([AC_LIBTOOL_OBJDIR],		[AC_DEFUN([AC_LIBTOOL_OBJDIR])])
-m4_ifndef([AC_LTDL_OBJDIR],		[AC_DEFUN([AC_LTDL_OBJDIR])])
-m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
-m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP],	[AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
-m4_ifndef([AC_PATH_MAGIC],		[AC_DEFUN([AC_PATH_MAGIC])])
-m4_ifndef([AC_PROG_LD_GNU],		[AC_DEFUN([AC_PROG_LD_GNU])])
-m4_ifndef([AC_PROG_LD_RELOAD_FLAG],	[AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
-m4_ifndef([AC_DEPLIBS_CHECK_METHOD],	[AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
-m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
-m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS],	[AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
-m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP],	[AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
-m4_ifndef([LT_AC_PROG_EGREP],		[AC_DEFUN([LT_AC_PROG_EGREP])])
-m4_ifndef([LT_AC_PROG_SED],		[AC_DEFUN([LT_AC_PROG_SED])])
-m4_ifndef([_LT_CC_BASENAME],		[AC_DEFUN([_LT_CC_BASENAME])])
-m4_ifndef([_LT_COMPILER_BOILERPLATE],	[AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
-m4_ifndef([_LT_LINKER_BOILERPLATE],	[AC_DEFUN([_LT_LINKER_BOILERPLATE])])
-m4_ifndef([_AC_PROG_LIBTOOL],		[AC_DEFUN([_AC_PROG_LIBTOOL])])
-m4_ifndef([AC_LIBTOOL_SETUP],		[AC_DEFUN([AC_LIBTOOL_SETUP])])
-m4_ifndef([_LT_AC_CHECK_DLFCN],		[AC_DEFUN([_LT_AC_CHECK_DLFCN])])
-m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER],	[AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
-m4_ifndef([_LT_AC_TAGCONFIG],		[AC_DEFUN([_LT_AC_TAGCONFIG])])
-m4_ifndef([AC_DISABLE_FAST_INSTALL],	[AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
-m4_ifndef([_LT_AC_LANG_CXX],		[AC_DEFUN([_LT_AC_LANG_CXX])])
-m4_ifndef([_LT_AC_LANG_F77],		[AC_DEFUN([_LT_AC_LANG_F77])])
-m4_ifndef([_LT_AC_LANG_GCJ],		[AC_DEFUN([_LT_AC_LANG_GCJ])])
-m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
-m4_ifndef([_LT_AC_LANG_C_CONFIG],	[AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
-m4_ifndef([_LT_AC_LANG_CXX_CONFIG],	[AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
-m4_ifndef([_LT_AC_LANG_F77_CONFIG],	[AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
-m4_ifndef([_LT_AC_LANG_GCJ_CONFIG],	[AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
-m4_ifndef([_LT_AC_LANG_RC_CONFIG],	[AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
-m4_ifndef([AC_LIBTOOL_CONFIG],		[AC_DEFUN([AC_LIBTOOL_CONFIG])])
-m4_ifndef([_LT_AC_FILE_LTDLL_C],	[AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
-m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS],	[AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
-m4_ifndef([_LT_AC_PROG_CXXCPP],		[AC_DEFUN([_LT_AC_PROG_CXXCPP])])
-m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS],	[AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
-m4_ifndef([_LT_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
-m4_ifndef([_LT_PROG_F77],		[AC_DEFUN([_LT_PROG_F77])])
-m4_ifndef([_LT_PROG_FC],		[AC_DEFUN([_LT_PROG_FC])])
-m4_ifndef([_LT_PROG_CXX],		[AC_DEFUN([_LT_PROG_CXX])])
diff --git a/src/other/curl/maketgz b/src/other/curl/maketgz
deleted file mode 100755
index a4c5614..0000000
--- a/src/other/curl/maketgz
+++ /dev/null
@@ -1,183 +0,0 @@
-#! /bin/sh
-# Script to build release-archives with. Note that this requires a checkout
-# from git and you should first run ./buildconf and build curl once.
-#
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-###########################################################################
-
-version=$1
-
-if [ -z "$version" ]; then
-  echo "Specify a version number!"
-  exit
-fi
-
-libversion="$version"
-
-# we make curl the same version as libcurl
-curlversion=$libversion
-
-major=`echo $libversion |cut -d. -f1 | sed -e "s/[^0-9]//g"`
-minor=`echo $libversion |cut -d. -f2 | sed -e "s/[^0-9]//g"`
-patch=`echo $libversion |cut -d. -f3 | cut -d- -f1 | sed -e "s/[^0-9]//g"`
-
-numeric=`perl -e 'printf("%02x%02x%02x\n", '"$major, $minor, $patch);"`
-
-HEADER=include/curl/curlver.h
-CHEADER=src/version.h
-
-# requires a date command that knows -u for UTC time zone
-datestamp=`date -u`
-
-# Replace version number in header file:
-sed -e 's/^#define LIBCURL_VERSION .*/#define LIBCURL_VERSION "'$libversion'"/g' \
-    -e 's/^#define LIBCURL_VERSION_NUM .*/#define LIBCURL_VERSION_NUM 0x'$numeric'/g' \
-    -e 's/^#define LIBCURL_VERSION_MAJOR .*/#define LIBCURL_VERSION_MAJOR '$major'/g' \
-    -e 's/^#define LIBCURL_VERSION_MINOR .*/#define LIBCURL_VERSION_MINOR '$minor'/g' \
-    -e 's/^#define LIBCURL_VERSION_PATCH .*/#define LIBCURL_VERSION_PATCH '$patch'/g' \
-    -e "s/^#define LIBCURL_TIMESTAMP .*/#define LIBCURL_TIMESTAMP \"$datestamp\"/g" \
- $HEADER >$HEADER.dist
-
-# Replace version number in header file:
-sed 's/#define CURL_VERSION .*/#define CURL_VERSION "'$curlversion'"/g' $CHEADER >$CHEADER.dist
-
-# Generate VC8 and VC9 versions from the VC6 Makefile versions
-for ver in vc8 vc9; do
-  make -f Makefile.dist $ver
-  mv src/Makefile.$ver src/Makefile.$ver.dist
-  mv lib/Makefile.$ver lib/Makefile.$ver.dist
-done
-
-# Replace version number in plist file:
-PLIST=lib/libcurl.plist
-sed "s/7\.12\.3/$libversion/g" $PLIST > $PLIST.dist
-
-echo "curl version $curlversion"
-echo "libcurl version $libversion"
-echo "libcurl numerical $numeric"
-echo "datestamp $datestamp"
-
-findprog()
-{
-  file="$1"
-  for part in `echo $PATH| tr ':' ' '`; do
-    path="$part/$file"
-    if [ -x "$path" ]; then
-      # there it is!
-      return 1
-    fi
-  done
-
-  # no such executable
-  return 0
-}
-
-echo "maketgz: cp lib/curl_config.h.in src/curl_config.h.in"
-cp lib/curl_config.h.in src/curl_config.h.in
-
-############################################################################
-#
-# Enforce a rerun of configure (updates the VERSION)
-#
-
-echo "Re-running config.status"
-./config.status --recheck >/dev/null
-
-############################################################################
-#
-# automake is needed to run to make a non-GNU Makefile.in if Makefile.am has
-# been modified.
-#
-
-if { findprog automake >/dev/null 2>/dev/null; } then
-  echo "- Could not find or run automake, I hope you know what you're doing!"
-else
-  echo "Runs automake --include-deps"
-  automake --include-deps Makefile >/dev/null
-fi
-
-############################################################################
-#
-# Make sure we have updated HTML versions of all man pages:
-#
-echo "make html"
-make -s html
-
-# And the PDF versions
-echo "make pdf"
-make -s pdf
-
-############################################################################
-#
-# Now run make dist to generate a tar.gz archive
-#
-
-echo "make dist"
-targz="curl-$version.tar.gz"
-make -s dist VERSION=$version
-
-############################################################################
-#
-# Now make a bz2 archive from the tar.gz original
-#
-
-bzip2="curl-$version.tar.bz2"
-echo "Generating $bzip2"
-gzip -dc $targz | bzip2 --best - > $bzip2
-
-############################################################################
-#
-# Now make an lzma archive from the tar.gz original
-#
-
-lzma="curl-$version.tar.lzma"
-echo "Generating $lzma"
-gzip -dc $targz | lzma --best - > $lzma
-
-############################################################################
-#
-# Now make a zip archive from the tar.gz original
-#
-makezip ()
-{
-  rm -rf $tempdir
-  mkdir $tempdir
-  cd $tempdir
-  gzip -dc ../$targz | tar -xf -
-  find . | zip $zip -@ >/dev/null
-  mv $zip ../
-  cd ..
-  rm -rf $tempdir
-}
-
-zip="curl-$version.zip"
-echo "Generating $zip"
-tempdir=".builddir"
-makezip
-
-echo "------------------"
-echo "maketgz report:"
-echo ""
-ls -l $targz $bzip2 $zip $lzma
-
-echo "Run this:"
-echo "gpg -b -a $targz && gpg -b -a $bzip2 && gpg -b -a $zip && gpg -b -a $lzma"
diff --git a/src/other/curl/missing b/src/other/curl/missing
deleted file mode 100755
index 28055d2..0000000
--- a/src/other/curl/missing
+++ /dev/null
@@ -1,376 +0,0 @@
-#! /bin/sh
-# Common stub for a few missing GNU programs while installing.
-
-scriptversion=2009-04-28.21; # UTC
-
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-# 2008, 2009 Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
-
-# This program 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, 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 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 <http://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-if test $# -eq 0; then
-  echo 1>&2 "Try \`$0 --help' for more information"
-  exit 1
-fi
-
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, `missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
-  configure_ac=configure.ac
-else
-  configure_ac=configure.in
-fi
-
-msg="missing on your system"
-
-case $1 in
---run)
-  # Try to run requested program, and just exit if it succeeds.
-  run=
-  shift
-  "$@" && exit 0
-  # Exit code 63 means version mismatch.  This often happens
-  # when the user try to use an ancient version of a tool on
-  # a file that requires a minimum version.  In this case we
-  # we should proceed has if the program had been absent, or
-  # if --run hadn't been passed.
-  if test $? = 63; then
-    run=:
-    msg="probably too old"
-  fi
-  ;;
-
-  -h|--h|--he|--hel|--help)
-    echo "\
-$0 [OPTION]... PROGRAM [ARGUMENT]...
-
-Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
-
-Options:
-  -h, --help      display this help and exit
-  -v, --version   output version information and exit
-  --run           try to run the given command, and emulate it if it fails
-
-Supported PROGRAM values:
-  aclocal      touch file \`aclocal.m4'
-  autoconf     touch file \`configure'
-  autoheader   touch file \`config.h.in'
-  autom4te     touch the output file, or create a stub one
-  automake     touch all \`Makefile.in' files
-  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
-  flex         create \`lex.yy.c', if possible, from existing .c
-  help2man     touch the output file
-  lex          create \`lex.yy.c', if possible, from existing .c
-  makeinfo     touch the output file
-  tar          try tar, gnutar, gtar, then tar without non-portable flags
-  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
-
-Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
-\`g' are ignored when checking the name.
-
-Send bug reports to <bug-automake at gnu.org>."
-    exit $?
-    ;;
-
-  -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
-    echo "missing $scriptversion (GNU Automake)"
-    exit $?
-    ;;
-
-  -*)
-    echo 1>&2 "$0: Unknown \`$1' option"
-    echo 1>&2 "Try \`$0 --help' for more information"
-    exit 1
-    ;;
-
-esac
-
-# normalize program name to check for.
-program=`echo "$1" | sed '
-  s/^gnu-//; t
-  s/^gnu//; t
-  s/^g//; t'`
-
-# Now exit if we have it, but it failed.  Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program).  This is about non-GNU programs, so use $1 not
-# $program.
-case $1 in
-  lex*|yacc*)
-    # Not GNU programs, they don't have --version.
-    ;;
-
-  tar*)
-    if test -n "$run"; then
-       echo 1>&2 "ERROR: \`tar' requires --run"
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       exit 1
-    fi
-    ;;
-
-  *)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       # Could not run --version or --help.  This is probably someone
-       # running `$TOOL --version' or `$TOOL --help' to check whether
-       # $TOOL exists and not knowing $TOOL uses missing.
-       exit 1
-    fi
-    ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $program in
-  aclocal*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
-         to install the \`Automake' and \`Perl' packages.  Grab them from
-         any GNU archive site."
-    touch aclocal.m4
-    ;;
-
-  autoconf*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`${configure_ac}'.  You might want to install the
-         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
-         archive site."
-    touch configure
-    ;;
-
-  autoheader*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
-         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
-         from any GNU archive site."
-    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
-    test -z "$files" && files="config.h"
-    touch_files=
-    for f in $files; do
-      case $f in
-      *:*) touch_files="$touch_files "`echo "$f" |
-				       sed -e 's/^[^:]*://' -e 's/:.*//'`;;
-      *) touch_files="$touch_files $f.in";;
-      esac
-    done
-    touch $touch_files
-    ;;
-
-  automake*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
-         You might want to install the \`Automake' and \`Perl' packages.
-         Grab them from any GNU archive site."
-    find . -type f -name Makefile.am -print |
-	   sed 's/\.am$/.in/' |
-	   while read f; do touch "$f"; done
-    ;;
-
-  autom4te*)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, but is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.
-         You can get \`$1' as part of \`Autoconf' from any GNU
-         archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-	touch $file
-    else
-	test -z "$file" || exec >$file
-	echo "#! /bin/sh"
-	echo "# Created by GNU Automake missing as a replacement of"
-	echo "#  $ $@"
-	echo "exit 0"
-	chmod +x $file
-	exit 1
-    fi
-    ;;
-
-  bison*|yacc*)
-    echo 1>&2 "\
-WARNING: \`$1' $msg.  You should only need it if
-         you modified a \`.y' file.  You may need the \`Bison' package
-         in order for those modifications to take effect.  You can get
-         \`Bison' from any GNU archive site."
-    rm -f y.tab.c y.tab.h
-    if test $# -ne 1; then
-        eval LASTARG="\${$#}"
-	case $LASTARG in
-	*.y)
-	    SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
-	    if test -f "$SRCFILE"; then
-	         cp "$SRCFILE" y.tab.c
-	    fi
-	    SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
-	    if test -f "$SRCFILE"; then
-	         cp "$SRCFILE" y.tab.h
-	    fi
-	  ;;
-	esac
-    fi
-    if test ! -f y.tab.h; then
-	echo >y.tab.h
-    fi
-    if test ! -f y.tab.c; then
-	echo 'main() { return 0; }' >y.tab.c
-    fi
-    ;;
-
-  lex*|flex*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.l' file.  You may need the \`Flex' package
-         in order for those modifications to take effect.  You can get
-         \`Flex' from any GNU archive site."
-    rm -f lex.yy.c
-    if test $# -ne 1; then
-        eval LASTARG="\${$#}"
-	case $LASTARG in
-	*.l)
-	    SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
-	    if test -f "$SRCFILE"; then
-	         cp "$SRCFILE" lex.yy.c
-	    fi
-	  ;;
-	esac
-    fi
-    if test ! -f lex.yy.c; then
-	echo 'main() { return 0; }' >lex.yy.c
-    fi
-    ;;
-
-  help2man*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-	 you modified a dependency of a manual page.  You may need the
-	 \`Help2man' package in order for those modifications to take
-	 effect.  You can get \`Help2man' from any GNU archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-	touch $file
-    else
-	test -z "$file" || exec >$file
-	echo ".ab help2man is required to generate this page"
-	exit $?
-    fi
-    ;;
-
-  makeinfo*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.texi' or \`.texinfo' file, or any other file
-         indirectly affecting the aspect of the manual.  The spurious
-         call might also be the consequence of using a buggy \`make' (AIX,
-         DU, IRIX).  You might want to install the \`Texinfo' package or
-         the \`GNU make' package.  Grab either from any GNU archive site."
-    # The file to touch is that specified with -o ...
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -z "$file"; then
-      # ... or it is the one specified with @setfilename ...
-      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-      file=`sed -n '
-	/^@setfilename/{
-	  s/.* \([^ ]*\) *$/\1/
-	  p
-	  q
-	}' $infile`
-      # ... or it is derived from the source name (dir/f.texi becomes f.info)
-      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
-    fi
-    # If the file does not exist, the user really needs makeinfo;
-    # let's fail without touching anything.
-    test -f $file || exit 1
-    touch $file
-    ;;
-
-  tar*)
-    shift
-
-    # We have already tried tar in the generic part.
-    # Look for gnutar/gtar before invocation to avoid ugly error
-    # messages.
-    if (gnutar --version > /dev/null 2>&1); then
-       gnutar "$@" && exit 0
-    fi
-    if (gtar --version > /dev/null 2>&1); then
-       gtar "$@" && exit 0
-    fi
-    firstarg="$1"
-    if shift; then
-	case $firstarg in
-	*o*)
-	    firstarg=`echo "$firstarg" | sed s/o//`
-	    tar "$firstarg" "$@" && exit 0
-	    ;;
-	esac
-	case $firstarg in
-	*h*)
-	    firstarg=`echo "$firstarg" | sed s/h//`
-	    tar "$firstarg" "$@" && exit 0
-	    ;;
-	esac
-    fi
-
-    echo 1>&2 "\
-WARNING: I can't seem to be able to run \`tar' with the given arguments.
-         You may want to install GNU tar or Free paxutils, or check the
-         command line arguments."
-    exit 1
-    ;;
-
-  *)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, and is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.  Check the \`README' file,
-         it often tells you about the needed prerequisites for installing
-         this package.  You may also peek at any GNU archive site, in case
-         some other package would contain this missing \`$1' program."
-    exit 1
-    ;;
-esac
-
-exit 0
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/src/other/curl/sample.emacs b/src/other/curl/sample.emacs
deleted file mode 100644
index e4470fe..0000000
--- a/src/other/curl/sample.emacs
+++ /dev/null
@@ -1,45 +0,0 @@
-
-;; This file was contributed by Mats Lidell
-
-;; Here's a sample .emacs file that might help you along the way.
-
-;; First comes a setup that is ideal when you are only working with curl. Just
-;; select the next few lines, paste it into your .emacs and change the path to
-;; the tools folder. (If you are using more than one style. Look further down
-;; this file.)
-
-(load-file "<YOUR-PATH-TO-CURL>/curl-style.el")
-(add-hook 'c-mode-common-hook 'curl-c-mode-common-hook)
-
-;; If you are using more than one style in maybe more than one project the
-;; example below might help out. It uses a predicate hook pair to select the
-;; right hook to use.
-
-(defvar my-style-selective-mode-hook nil
-  "Holds a list of predicate and hooks pairs. (list (PREDICATE . HOOK)
-...) It is used by my-mode-selective-mood-hook-function for choosing
-the right hook to run.")
-
-(defun my-style-selective-mode-hook-function ()
-  "Run each PREDICATE in `my-style-selective-mode-hook' to see if the 
-HOOK in the pair should be executed. If the PREDICATE evaluate to non
-nil HOOK is executed and the rest of the hooks are ignored."
-  (let ((h my-style-selective-mode-hook))
-    (while (not (eval (caar h)))
-      (setq h (cdr h)))
-    (funcall (cdar h))))
-
-;;; Example configuration.
-;; Add the selective hook to the c-mode-common-hook
-(add-hook 'c-mode-common-hook 'my-style-selective-mode-hook-function)
-
-;; Add your own hooks and predicates. The predicate should evaluate to
-;; non nil if the hook in the pair is supposed to be evaluated. In the
-;; example a part of the path is used to select what style to
-;; use. Choose what is appropriate for you.
-(add-hook 'my-style-selective-mode-hook 
-	  '((string-match "curl" (buffer-file-name)) . curl-c-mode-common-hook))
-(add-hook 'my-style-selective-mode-hook 
-	  '((string-match "other" (buffer-file-name)) . other-c-mode-common-hook))
-;; Make sure the default style is appended.
-(add-hook 'my-style-selective-mode-hook '(t . my-c-mode-common-hook) t)
diff --git a/src/other/curl/src/CMakeLists.txt b/src/other/curl/src/CMakeLists.txt
deleted file mode 100644
index baa9666..0000000
--- a/src/other/curl/src/CMakeLists.txt
+++ /dev/null
@@ -1,56 +0,0 @@
-set(EXE_NAME curl)
-
-# First try to locate hugehelp.c to see if it has already been created
-# TODO Find the file WITHOUT adding a cache entry!!! Or else the user can delete the file after the script was first run, and the script won't notice it has gone.
-find_file(HUGEHELP_C_FILE hugehelp.c PATHS . NO_DEFAULT_PATH)
-if (NOT HUGEHELP_C_FILE)
-  message(STATUS "Warning: hugehelp.c file was not generated before. Generating an 'empty' file...")
-  file(WRITE hugehelp.c "/* built-in manual is disabled, blank function */\n#include \"hugehelp.h\"\nvoid hugehelp(void) {}\n\n")
-endif()
-
-transform_makefile_inc("Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
-include(${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake)
-
-if(MSVC)
-  list(APPEND CURL_SOURCE curl.rc)
-endif()
-
-add_executable(
-  ${EXE_NAME}
-  ${curl_SOURCES}
-  )
-
-source_group("cURLX source files" FILES ${CURLX_ONES})
-source_group("cURL source files" FILES ${CURL_SOURCES})
-source_group("cURL header files" FILES ${CURL_HFILES})
-
-include_directories(
-  ${CURL_SOURCE_DIR}/lib                # To be able to reach "setup_once.h"
-  ${CURL_BINARY_DIR}/lib                # To be able to reach "curl_config.h"
-  ${CURL_BINARY_DIR}/include    # To be able to reach "curl/curlbuild.h"
-  )
-
-
-# Setup dependencies
-setup_curl_dependencies(${EXE_NAME})
-target_link_libraries( ${EXE_NAME} libcurl )
-
-
-################################################################################
-
-#SET_TARGET_PROPERTIES(${EXE_NAME} ARCHIVE_OUTPUT_DIRECTORY "blah blah blah")
-#SET_TARGET_PROPERTIES(${EXE_NAME} RUNTIME_OUTPUT_DIRECTORY "blah blah blah")
-#SET_TARGET_PROPERTIES(${EXE_NAME} LIBRARY_OUTPUT_DIRECTORY "blah blah blah")
-
-# Add the postfix to the executable since it is not added automatically as for modules and shared libraries
-set_target_properties(${EXE_NAME} PROPERTIES
-  DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}")
-
-if(MSVC)
-  if(NOT BUILD_RELEASE_DEBUG_DIRS)
-    # Ugly workaround to remove the "/debug" or "/release" in each output
-    set_target_properties(${EXE_NAME} PROPERTIES PREFIX "../")
-  endif()
-endif()
-
-#INCLUDE(ModuleInstall OPTIONAL)
diff --git a/src/other/curl/src/Makefile.Watcom b/src/other/curl/src/Makefile.Watcom
deleted file mode 100644
index 423f946..0000000
--- a/src/other/curl/src/Makefile.Watcom
+++ /dev/null
@@ -1,129 +0,0 @@
-#
-#  Watcom / OpenWatcom / Win32 makefile for cURL.
-#  G. Vanem <gvanem at broadpark.no>
-#
-
-CC = wcc386
-
-CFLAGS = -3r -mf -d3 -hc -zff -zgf -zq -zm -s -fr=con -w2 -fpi -oilrtfm &
-         -bt=nt -d+ -dWIN32 -dHAVE_STRTOLL -dDEBUGBUILD -dENABLE_IPV6    &
-         -dHAVE_WINSOCK2_H -I..\include -I..\lib
-
-OBJ_DIR = WC_Win32.obj
-
-# Unfortunately, we can't include Makefile.inc here because wmake doesn't
-# use backslash as the line continuation character by default
-CURL_SOURCES = main.c hugehelp.c urlglob.c writeout.c writeenv.c &
-	getpass.c homedir.c curlutil.c os-specific.c
-
-CURLX_SOURCES = rawstr.c
-
-OBJS = $(CURL_SOURCES:.c=.obj) $(CURLX_SOURCES:.c=.obj)
-OBJS = $OBJ_DIR\$(OBJS: = $OBJ_DIR\)
-
-RESOURCE = $(OBJ_DIR)\curl.res
-
-all: hugehelp.c $(OBJ_DIR) curl.exe .SYMBOLIC
-	@echo Welcome to cURL
-
-hugehelp.c: hugehelp.c.cvs
-	copy hugehelp.c.cvs hugehelp.c
-
-$(OBJ_DIR):
-	mkdir $(OBJ_DIR)
-
-curl.exe: $(OBJS) $(RESOURCE)
-	wlink name $@ system nt file { $(OBJS) }                   &
-	  option quiet, map, caseexact, eliminate, res=$(RESOURCE) &
-	  libpath $(%watcom)\lib386;$(%watcom)\lib386\nt           &
-	  library ..\lib\libcurl_wc_imp.lib, clib3r.lib, ws2_32.lib
-
-clean: .SYMBOLIC
-	- rm -f $(OBJS) $(RESOURCE)
-
-vclean realclean: clean .SYMBOLIC
- 	- rm -f curl.exe curl.map hugehelp.c
-	- rmdir $(OBJ_DIR)
-
-$(RESOURCE): curl.rc
-	wrc -dDEBUGBUILD=1 -q -r -zm -I..\include -fo=$@ curl.rc
-
-.ERASE
-.c{$(OBJ_DIR)}.obj:
-	$(CC) $[@ $(CFLAGS) -fo=$@
-
-.ERASE
-$(OBJ_DIR)\rawstr.obj: ..\lib\rawstr.c
-	$(CC) $[@ $(CFLAGS) -fo=$@
-
-.ERASE
-$(OBJ_DIR)\nonblock.obj: ..\lib\nonblock.c
-	$(CC) $[@ $(CFLAGS) -fo=$@
-
-#
-# Dependencies based on "gcc -MM .."
-#
-$(OBJ_DIR)\getpass.obj: getpass.c setup.h config-win32.h ..\lib\setup_once.h getpass.h &
-  ..\lib\memdebug.h ..\lib\setup.h ..\lib\config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h
-
-$(OBJ_DIR)\homedir.obj: homedir.c setup.h config-win32.h ..\lib\setup_once.h homedir.h &
-  ..\lib\memdebug.h ..\lib\setup.h ..\lib\config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlrules.h ..\include\curl\easy.h &
-  ..\include\curl\multi.h ..\include\curl\curl.h
-
-$(OBJ_DIR)\hugehelp.obj: hugehelp.c
-
-$(OBJ_DIR)\main.obj: main.c setup.h config-win32.h ..\lib\setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  urlglob.h writeout.h getpass.h homedir.h curlutil.h hugehelp.h &
-  version.h ..\include\curl\curlver.h ..\lib\curlx.h &
-  ..\include\curl\mprintf.h ..\lib\strequal.h ..\lib\strtoofft.h &
-  ..\lib\setup.h ..\lib\config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h ..\lib\timeval.h ..\lib\memdebug.h &
-  os-specific.h
-
-$(OBJ_DIR)\urlglob.obj: urlglob.c setup.h config-win32.h ..\lib\setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  ..\include\curl\mprintf.h urlglob.h ..\lib\memdebug.h ..\lib\setup.h &
-  ..\lib\config-win32.h ..\include\curl\curlbuild.h &
-  ..\include\curl\curlrules.h os-specific.h
-
-$(OBJ_DIR)\writeenv.obj: writeenv.c setup.h config-win32.h ..\lib\setup_once.h
-
-$(OBJ_DIR)\writeout.obj: writeout.c setup.h config-win32.h ..\lib\setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  ..\include\curl\mprintf.h writeout.h
-
-$(OBJ_DIR)\curlutil.obj: curlutil.c setup.h config-win32.h ..\lib\setup_once.h &
-  curlutil.h
-
-$(OBJ_DIR)\os-specific.obj: os-specific.c os-specific.h setup.h config-win32.h &
-  ..\lib\setup_once.h
-
-$(OBJ_DIR)\rawstr.obj: ..\lib\rawstr.c ..\lib\setup.h ..\lib\config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h ..\lib\setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  ..\lib\strerror.h ..\lib\urldata.h ..\lib\cookie.h ..\lib\formdata.h &
-  ..\lib\timeval.h ..\lib\http_chunks.h ..\lib\hostip.h ..\lib\hash.h &
-  ..\lib\llist.h ..\lib\splay.h ..\include\curl\mprintf.h
-
-$(OBJ_DIR)\nonblock.obj: ..\lib\nonblock.c ..\lib\setup.h ..\lib\config-win32.h &
-  ..\include\curl\curlbuild.h ..\include\curl\curlrules.h ..\lib\setup_once.h &
-  ..\include\curl\curl.h ..\include\curl\curlver.h ..\include\curl\curlrules.h &
-  ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h &
-  ..\lib\strerror.h ..\lib\urldata.h ..\lib\cookie.h ..\lib\formdata.h &
-  ..\lib\timeval.h ..\lib\http_chunks.h ..\lib\hostip.h ..\lib\hash.h &
-  ..\lib\llist.h ..\lib\splay.h ..\include\curl\mprintf.h ..\lib\nonblock.h
diff --git a/src/other/curl/src/Makefile.am b/src/other/curl/src/Makefile.am
deleted file mode 100644
index 096bd21..0000000
--- a/src/other/curl/src/Makefile.am
+++ /dev/null
@@ -1,94 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-###########################################################################
-AUTOMAKE_OPTIONS = foreign nostdinc
-
-# Specify our include paths here, and do it relative to $(top_srcdir) and
-# $(top_builddir), to ensure that these paths which belong to the library
-# being currently built and tested are searched before the library which
-# might possibly already be installed in the system.
-#
-# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h
-# $(top_builddir)/include for generated curlbuild.h included from lib/setup.h
-# $(top_srcdir)/include is for libcurl's external include files
-# $(top_builddir)/lib is for libcurl's generated lib/curl_config.h file
-# $(top_builddir)/src is for curl's generated src/curl_config.h file
-# $(top_srcdir)/lib is for libcurl's lib/setup.h and other "borrowed" files
-# $(top_srcdir)/src is for curl's src/setup.h and "curl-private" files
-
-INCLUDES = -I$(top_builddir)/include/curl \
-           -I$(top_builddir)/include      \
-           -I$(top_srcdir)/include        \
-           -I$(top_builddir)/lib          \
-           -I$(top_builddir)/src          \
-           -I$(top_srcdir)/lib            \
-           -I$(top_srcdir)/src
-
-noinst_PROGRAMS = curl
-
-include Makefile.inc
-
-curl_LDADD = $(top_builddir)/lib/libcurl.la @CURL_LIBS@
-curl_DEPENDENCIES = $(top_builddir)/lib/libcurl.la
-BUILT_SOURCES = hugehelp.c
-CLEANFILES = hugehelp.c
-# Use the C locale to ensure that only ASCII characters appear in the
-# embedded text.
-NROFF=env LC_ALL=C @NROFF@ @MANOPT@ # figured out by the configure script
-
-EXTRA_DIST = mkhelp.pl makefile.dj Makefile.vc6 Makefile.b32 Makefile.m32 \
-	Makefile.riscos curl_config.h.in macos/curl.mcp.xml.sit.hqx	  \
-	macos/MACINSTALL.TXT macos/src/curl_GUSIConfig.cpp vc6curlsrc.dsp \
-	macos/src/macos_main.cpp config-amigaos.h makefile.amiga curl.rc  \
-	Makefile.netware Makefile.inc Makefile.Watcom vc6curlsrc.dsw      \
-	CMakeLists.txt
-
-MANPAGE=$(top_srcdir)/docs/curl.1
-README=$(top_srcdir)/docs/MANUAL
-MKHELP=$(top_srcdir)/src/mkhelp.pl
-HUGE=hugehelp.c
-
-if USE_MANUAL
-# Here are the stuff to create a built-in manual
-
-if HAVE_LIBZ
-# This generates the hugehelp.c file in both uncompressed and compressed formats
-$(HUGE): $(README) $(MANPAGE)  mkhelp.pl
-	echo '#include "setup.h"' > $(HUGE)
-	echo '#ifndef HAVE_LIBZ' >> $(HUGE)
-	$(NROFF) $(MANPAGE) | $(PERL) $(MKHELP) $(README) >> $(HUGE)
-	echo '#else' >> $(HUGE)
-	$(NROFF) $(MANPAGE) | $(PERL) $(MKHELP) -c $(README) >> $(HUGE)
-	echo '#endif /* HAVE_LIBZ */' >> $(HUGE)
-else # HAVE_LIBZ
-# This generates the hugehelp.c file uncompressed only
-$(HUGE): $(README) $(MANPAGE)  mkhelp.pl
-	echo '#include "setup.h"' > $(HUGE)
-	$(NROFF) $(MANPAGE) | $(PERL) $(MKHELP) $(README) >> $(HUGE)
-endif
-
-else # USE_MANUAL
-# built-in manual has been disabled, make a blank file
-$(HUGE):
-	echo "/* built-in manual is disabled, blank function */" > $(HUGE)
-	echo '#include "hugehelp.h"' >> $(HUGE)
-	echo "void hugehelp(void) {}" >>$(HUGE)
-endif
diff --git a/src/other/curl/src/Makefile.b32 b/src/other/curl/src/Makefile.b32
deleted file mode 100644
index 5406c73..0000000
--- a/src/other/curl/src/Makefile.b32
+++ /dev/null
@@ -1,89 +0,0 @@
-############################################################
-#
-#  Makefile.b32 - Borland's C++ Compiler 5.X
-#
-#  'src' directory
-#
-#  'BCCDIR' has to be set up to point to the base directory
-#  of the compiler, i.e. SET BCCDIR = c:\Borland\BCC55
-#  where c:\Borland\BCC55 is the compiler is installed
-#
-#  Written by Jaepil Kim, pit at paradise.net.nz
-############################################################
-
-# Edit the path below to point to the base of your Zlib sources.
-!ifndef ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.1
-!endif
-
-# Edit the path below to point to the base of your OpenSSL package.
-!ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-0.9.7d
-!endif
-
-# Set program's name
-PROGNAME = curl.exe
-
-# Setup environment
-CXX      = bcc32
-LD       = bcc32
-CP       = copy
-RM       = del
-LIB      = tlib
-
-CXXFLAGS = -q -5 -O2 -w-aus -w-ccc -w-csu -w-par -w-pia -w-rch -w-inl -w-ngu -w-pro -tWM
-LDFLAGS  = -q -lq -lap
-
-INCDIRS  = -I.;../include;../lib
-LINKLIB  = $(BCCDIR)/lib/cw32mt.lib
-
-# If you build with SSL support, set WITH_SSL=1
-DEFINES  = -DNDEBUG -DWIN32
-
-!ifdef DYNAMIC
-LIBCURL_LIB = ../lib/libcurl_imp.lib
-!else
-LIBCURL_LIB = ../lib/libcurl.lib
-DEFINES = $(DEFINES) -DCURL_STATICLIB
-!endif
-
-!ifdef WITH_ZLIB
-DEFINES  = $(DEFINES) -DHAVE_LIBZ -DHAVE_ZLIB_H
-INCDIRS  = $(INCDIRS);$(ZLIB_PATH)
-LINKLIB  = $(LINKLIB) $(ZLIB_PATH)/zlib.lib
-!endif
-
-!ifdef WITH_SSL
-DEFINES  = $(DEFINES) -DUSE_SSLEAY
-INCDIRS  = $(INCDIRS);$(OPENSSL_PATH)/inc32;$(OPENSSL_PATH)/inc32/openssl
-LINKLIB  = $(LINKLIB) $(OPENSSL_PATH)/out32/ssleay32.lib $(OPENSSL_PATH)/out32/libeay32.lib
-!endif
-
-.autodepend
-
-# Makefile.inc provides the CSOURCES and HHEADERS defines
-top_srcdir = ..
-!include Makefile.inc
-
-CSOURCES = $(CURL_SOURCES) $(CURLX_ONES)
-OBJECTS  = $(CSOURCES:.c=.obj)
-
-.c.obj:
-	$(CXX) -c $(INCDIRS) $(CXXFLAGS) $(DEFINES) $<
-
-all:	$(PROGNAME)
-
-clean:
-	-$(RM) $(PROGNAME)
-	-$(RM) *.obj
-	-$(RM) hugehelp.c
-
-$(PROGNAME): $(OBJECTS) $(LIBCURL_LIB) $(LINKLIB)
-	@-$(RM) $@
-	$(LD) $(LDFLAGS) -e$@ $**
-
-hugehelp.c: hugehelp.c.cvs
-	@echo Creating $@
-	@$(CP) $** $@
-
-
diff --git a/src/other/curl/src/Makefile.in b/src/other/curl/src/Makefile.in
deleted file mode 100644
index 37b5420..0000000
--- a/src/other/curl/src/Makefile.in
+++ /dev/null
@@ -1,717 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-# ./src/Makefile.inc
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-noinst_PROGRAMS = curl$(EXEEXT)
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
-	$(srcdir)/Makefile.inc $(srcdir)/curl_config.h.in
-subdir = src
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
-	$(top_srcdir)/m4/curl-confopts.m4 \
-	$(top_srcdir)/m4/curl-functions.m4 \
-	$(top_srcdir)/m4/curl-override.m4 \
-	$(top_srcdir)/m4/curl-reentrant.m4 \
-	$(top_srcdir)/m4/curl-system.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/lib/curl_config.h curl_config.h \
-	$(top_builddir)/include/curl/curlbuild.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-PROGRAMS = $(noinst_PROGRAMS)
-am__objects_1 = main.$(OBJEXT) hugehelp.$(OBJEXT) urlglob.$(OBJEXT) \
-	writeout.$(OBJEXT) writeenv.$(OBJEXT) getpass.$(OBJEXT) \
-	homedir.$(OBJEXT) curlutil.$(OBJEXT) os-specific.$(OBJEXT)
-am__objects_2 = strtoofft.$(OBJEXT) strdup.$(OBJEXT) rawstr.$(OBJEXT) \
-	nonblock.$(OBJEXT)
-am__objects_3 =
-am_curl_OBJECTS = $(am__objects_1) $(am__objects_2) $(am__objects_3)
-curl_OBJECTS = $(am_curl_OBJECTS)
-DEFAULT_INCLUDES = 
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
-	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
-	$(LDFLAGS) -o $@
-SOURCES = $(curl_SOURCES)
-DIST_SOURCES = $(curl_SOURCES)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
-CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
-CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
-CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
-CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
-CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
-CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
-CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
-CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
-CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
-CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
-CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
-CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
-CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
-CURL_LIBS = @CURL_LIBS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@
-IDN_ENABLED = @IDN_ENABLED@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-IPV6_ENABLED = @IPV6_ENABLED@
-KRB4_ENABLED = @KRB4_ENABLED@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCURL_LIBS = @LIBCURL_LIBS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MANOPT = @MANOPT@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-# Use the C locale to ensure that only ASCII characters appear in the
-# embedded text.
-NROFF = env LC_ALL=C @NROFF@ @MANOPT@ # figured out by the configure script
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH = @PATH@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PERL = @PERL@
-PKGADD_NAME = @PKGADD_NAME@
-PKGADD_PKG = @PKGADD_PKG@
-PKGADD_VENDOR = @PKGADD_VENDOR@
-PKGCONFIG = @PKGCONFIG@
-RANDOM_FILE = @RANDOM_FILE@
-RANLIB = @RANLIB@
-REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-SSL_ENABLED = @SSL_ENABLED@
-STRIP = @STRIP@
-SUPPORT_FEATURES = @SUPPORT_FEATURES@
-SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
-TEST_SERVER_LIBS = @TEST_SERVER_LIBS@
-USE_ARES = @USE_ARES@
-USE_GNUTLS = @USE_GNUTLS@
-USE_LIBSSH2 = @USE_LIBSSH2@
-USE_NSS = @USE_NSS@
-USE_SSLEAY = @USE_SSLEAY@
-USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
-VERSION = @VERSION@
-VERSIONNUM = @VERSIONNUM@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-libext = @libext@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
-#
-# This software is licensed as described in the file COPYING, which
-# you should have received as part of this distribution. The terms
-# are also available at http://curl.haxx.se/docs/copyright.html.
-#
-# You may opt to use, copy, modify, merge, publish, distribute and/or sell
-# copies of the Software, and permit persons to whom the Software is
-# furnished to do so, under the terms of the COPYING file.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-###########################################################################
-AUTOMAKE_OPTIONS = foreign nostdinc
-
-# Specify our include paths here, and do it relative to $(top_srcdir) and
-# $(top_builddir), to ensure that these paths which belong to the library
-# being currently built and tested are searched before the library which
-# might possibly already be installed in the system.
-#
-# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h
-# $(top_builddir)/include for generated curlbuild.h included from lib/setup.h
-# $(top_srcdir)/include is for libcurl's external include files
-# $(top_builddir)/lib is for libcurl's generated lib/curl_config.h file
-# $(top_builddir)/src is for curl's generated src/curl_config.h file
-# $(top_srcdir)/lib is for libcurl's lib/setup.h and other "borrowed" files
-# $(top_srcdir)/src is for curl's src/setup.h and "curl-private" files
-INCLUDES = -I$(top_builddir)/include/curl \
-           -I$(top_builddir)/include      \
-           -I$(top_srcdir)/include        \
-           -I$(top_builddir)/lib          \
-           -I$(top_builddir)/src          \
-           -I$(top_srcdir)/lib            \
-           -I$(top_srcdir)/src
-
-
-# libcurl has sources that provide functions named curlx_* that aren't part of
-# the official API, but we re-use the code here to avoid duplication.
-CURLX_ONES = $(top_srcdir)/lib/strtoofft.c \
-	$(top_srcdir)/lib/strdup.c \
-	$(top_srcdir)/lib/rawstr.c \
-	$(top_srcdir)/lib/nonblock.c
-
-CURL_SOURCES = main.c hugehelp.c urlglob.c writeout.c writeenv.c \
-	getpass.c homedir.c curlutil.c os-specific.c
-
-CURL_HFILES = hugehelp.h setup.h config-win32.h config-mac.h \
-	config-riscos.h urlglob.h version.h os-specific.h \
-	writeout.h writeenv.h getpass.h homedir.h curlutil.h
-
-curl_SOURCES = $(CURL_SOURCES) $(CURLX_ONES) $(CURL_HFILES)
-curl_LDADD = $(top_builddir)/lib/libcurl.la @CURL_LIBS@
-curl_DEPENDENCIES = $(top_builddir)/lib/libcurl.la
-BUILT_SOURCES = hugehelp.c
-CLEANFILES = hugehelp.c
-EXTRA_DIST = mkhelp.pl makefile.dj Makefile.vc6 Makefile.b32 Makefile.m32 \
-	Makefile.riscos curl_config.h.in macos/curl.mcp.xml.sit.hqx	  \
-	macos/MACINSTALL.TXT macos/src/curl_GUSIConfig.cpp vc6curlsrc.dsp \
-	macos/src/macos_main.cpp config-amigaos.h makefile.amiga curl.rc  \
-	Makefile.netware Makefile.inc Makefile.Watcom vc6curlsrc.dsw      \
-	CMakeLists.txt
-
-MANPAGE = $(top_srcdir)/docs/curl.1
-README = $(top_srcdir)/docs/MANUAL
-MKHELP = $(top_srcdir)/src/mkhelp.pl
-HUGE = hugehelp.c
-all: $(BUILT_SOURCES) curl_config.h
-	$(MAKE) $(AM_MAKEFLAGS) all-am
-
-.SUFFIXES:
-.SUFFIXES: .c .lo .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Makefile.inc $(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) --foreign src/Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign src/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-curl_config.h: stamp-h2
-	@if test ! -f $@; then \
-	  rm -f stamp-h2; \
-	  $(MAKE) $(AM_MAKEFLAGS) stamp-h2; \
-	else :; fi
-
-stamp-h2: $(srcdir)/curl_config.h.in $(top_builddir)/config.status
-	@rm -f stamp-h2
-	cd $(top_builddir) && $(SHELL) ./config.status src/curl_config.h
-$(srcdir)/curl_config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) 
-	($(am__cd) $(top_srcdir) && $(AUTOHEADER))
-	rm -f stamp-h2
-	touch $@
-
-distclean-hdr:
-	-rm -f curl_config.h stamp-h2
-
-clean-noinstPROGRAMS:
-	@list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
-	echo " rm -f" $$list; \
-	rm -f $$list || exit $$?; \
-	test -n "$(EXEEXT)" || exit 0; \
-	list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
-	echo " rm -f" $$list; \
-	rm -f $$list
-curl$(EXEEXT): $(curl_OBJECTS) $(curl_DEPENDENCIES) 
-	@rm -f curl$(EXEEXT)
-	$(LINK) $(curl_OBJECTS) $(curl_LDADD) $(LIBS)
-
-mostlyclean-compile:
-	-rm -f *.$(OBJEXT)
-
-distclean-compile:
-	-rm -f *.tab.c
-
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/curlutil.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/getpass.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/homedir.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/hugehelp.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/main.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/nonblock.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/os-specific.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/rawstr.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/strdup.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/strtoofft.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/urlglob.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/writeenv.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/writeout.Po at am__quote@
-
-.c.o:
- at am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c $<
-
-.c.obj:
- at am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-.c.lo:
- at am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
-
-strtoofft.o: $(top_srcdir)/lib/strtoofft.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT strtoofft.o -MD -MP -MF $(DEPDIR)/strtoofft.Tpo -c -o strtoofft.o `test -f '$(top_srcdir)/lib/strtoofft.c' || echo '$(srcdir)/'`$(top_srcdir)/lib/strtoofft.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/strtoofft.Tpo $(DEPDIR)/strtoofft.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$(top_srcdir)/lib/strtoofft.c' object='strtoofft.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o strtoofft.o `test -f '$(top_srcdir)/lib/strtoofft.c' || echo '$(srcdir)/'`$(top_srcdir)/lib/strtoofft.c
-
-strtoofft.obj: $(top_srcdir)/lib/strtoofft.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT strtoofft.obj -MD -MP -MF $(DEPDIR)/strtoofft.Tpo -c -o strtoofft.obj `if test -f '$(top_srcdir)/lib/strtoofft.c'; then $(CYGPATH_W) '$(top_srcdir)/lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/lib/strtoofft.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/strtoofft.Tpo $(DEPDIR)/strtoofft.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$(top_srcdir)/lib/strtoofft.c' object='strtoofft.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o strtoofft.obj `if test -f '$(top_srcdir)/lib/strtoofft.c'; then $(CYGPATH_W) '$(top_srcdir)/lib/strtoofft.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/lib/strtoofft.c'; fi`
-
-strdup.o: $(top_srcdir)/lib/strdup.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT strdup.o -MD -MP -MF $(DEPDIR)/strdup.Tpo -c -o strdup.o `test -f '$(top_srcdir)/lib/strdup.c' || echo '$(srcdir)/'`$(top_srcdir)/lib/strdup.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/strdup.Tpo $(DEPDIR)/strdup.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$(top_srcdir)/lib/strdup.c' object='strdup.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o strdup.o `test -f '$(top_srcdir)/lib/strdup.c' || echo '$(srcdir)/'`$(top_srcdir)/lib/strdup.c
-
-strdup.obj: $(top_srcdir)/lib/strdup.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT strdup.obj -MD -MP -MF $(DEPDIR)/strdup.Tpo -c -o strdup.obj `if test -f '$(top_srcdir)/lib/strdup.c'; then $(CYGPATH_W) '$(top_srcdir)/lib/strdup.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/lib/strdup.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/strdup.Tpo $(DEPDIR)/strdup.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$(top_srcdir)/lib/strdup.c' object='strdup.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o strdup.obj `if test -f '$(top_srcdir)/lib/strdup.c'; then $(CYGPATH_W) '$(top_srcdir)/lib/strdup.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/lib/strdup.c'; fi`
-
-rawstr.o: $(top_srcdir)/lib/rawstr.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rawstr.o -MD -MP -MF $(DEPDIR)/rawstr.Tpo -c -o rawstr.o `test -f '$(top_srcdir)/lib/rawstr.c' || echo '$(srcdir)/'`$(top_srcdir)/lib/rawstr.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/rawstr.Tpo $(DEPDIR)/rawstr.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$(top_srcdir)/lib/rawstr.c' object='rawstr.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rawstr.o `test -f '$(top_srcdir)/lib/rawstr.c' || echo '$(srcdir)/'`$(top_srcdir)/lib/rawstr.c
-
-rawstr.obj: $(top_srcdir)/lib/rawstr.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT rawstr.obj -MD -MP -MF $(DEPDIR)/rawstr.Tpo -c -o rawstr.obj `if test -f '$(top_srcdir)/lib/rawstr.c'; then $(CYGPATH_W) '$(top_srcdir)/lib/rawstr.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/lib/rawstr.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/rawstr.Tpo $(DEPDIR)/rawstr.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$(top_srcdir)/lib/rawstr.c' object='rawstr.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o rawstr.obj `if test -f '$(top_srcdir)/lib/rawstr.c'; then $(CYGPATH_W) '$(top_srcdir)/lib/rawstr.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/lib/rawstr.c'; fi`
-
-nonblock.o: $(top_srcdir)/lib/nonblock.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT nonblock.o -MD -MP -MF $(DEPDIR)/nonblock.Tpo -c -o nonblock.o `test -f '$(top_srcdir)/lib/nonblock.c' || echo '$(srcdir)/'`$(top_srcdir)/lib/nonblock.c
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/nonblock.Tpo $(DEPDIR)/nonblock.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$(top_srcdir)/lib/nonblock.c' object='nonblock.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o nonblock.o `test -f '$(top_srcdir)/lib/nonblock.c' || echo '$(srcdir)/'`$(top_srcdir)/lib/nonblock.c
-
-nonblock.obj: $(top_srcdir)/lib/nonblock.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT nonblock.obj -MD -MP -MF $(DEPDIR)/nonblock.Tpo -c -o nonblock.obj `if test -f '$(top_srcdir)/lib/nonblock.c'; then $(CYGPATH_W) '$(top_srcdir)/lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/lib/nonblock.c'; fi`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/nonblock.Tpo $(DEPDIR)/nonblock.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$(top_srcdir)/lib/nonblock.c' object='nonblock.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o nonblock.obj `if test -f '$(top_srcdir)/lib/nonblock.c'; then $(CYGPATH_W) '$(top_srcdir)/lib/nonblock.c'; else $(CYGPATH_W) '$(srcdir)/$(top_srcdir)/lib/nonblock.c'; fi`
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES) curl_config.h.in $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	set x; \
-	here=`pwd`; \
-	list='$(SOURCES) $(HEADERS) curl_config.h.in $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES) curl_config.h.in $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	list='$(SOURCES) $(HEADERS) curl_config.h.in $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(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 $(PROGRAMS) curl_config.h
-installdirs:
-install: $(BUILT_SOURCES)
-	$(MAKE) $(AM_MAKEFLAGS) install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-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)
-clean: clean-am
-
-clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
-	mostlyclean-am
-
-distclean: distclean-am
-	-rm -rf ./$(DEPDIR)
-	-rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
-	distclean-hdr 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 -rf ./$(DEPDIR)
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
-	mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: all check install install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-	clean-libtool clean-noinstPROGRAMS ctags distclean \
-	distclean-compile distclean-generic distclean-hdr \
-	distclean-libtool 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 mostlyclean mostlyclean-compile \
-	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
-	tags uninstall uninstall-am
-
-
-# Here are the stuff to create a built-in manual
-
-# This generates the hugehelp.c file in both uncompressed and compressed formats
- at HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@$(HUGE): $(README) $(MANPAGE)  mkhelp.pl
- at HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@	echo '#include "setup.h"' > $(HUGE)
- at HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@	echo '#ifndef HAVE_LIBZ' >> $(HUGE)
- at HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@	$(NROFF) $(MANPAGE) | $(PERL) $(MKHELP) $(README) >> $(HUGE)
- at HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@	echo '#else' >> $(HUGE)
- at HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@	$(NROFF) $(MANPAGE) | $(PERL) $(MKHELP) -c $(README) >> $(HUGE)
- at HAVE_LIBZ_TRUE@@USE_MANUAL_TRUE@	echo '#endif /* HAVE_LIBZ */' >> $(HUGE)
-# This generates the hugehelp.c file uncompressed only
- at HAVE_LIBZ_FALSE@@USE_MANUAL_TRUE@$(HUGE): $(README) $(MANPAGE)  mkhelp.pl
- at HAVE_LIBZ_FALSE@@USE_MANUAL_TRUE@	echo '#include "setup.h"' > $(HUGE)
- at HAVE_LIBZ_FALSE@@USE_MANUAL_TRUE@	$(NROFF) $(MANPAGE) | $(PERL) $(MKHELP) $(README) >> $(HUGE)
-
-# built-in manual has been disabled, make a blank file
- at USE_MANUAL_FALSE@$(HUGE):
- at USE_MANUAL_FALSE@	echo "/* built-in manual is disabled, blank function */" > $(HUGE)
- at USE_MANUAL_FALSE@	echo '#include "hugehelp.h"' >> $(HUGE)
- at USE_MANUAL_FALSE@	echo "void hugehelp(void) {}" >>$(HUGE)
-
-# 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/src/other/curl/src/Makefile.inc b/src/other/curl/src/Makefile.inc
deleted file mode 100644
index 9faf89d..0000000
--- a/src/other/curl/src/Makefile.inc
+++ /dev/null
@@ -1,19 +0,0 @@
-# ./src/Makefile.inc
-
-# libcurl has sources that provide functions named curlx_* that aren't part of
-# the official API, but we re-use the code here to avoid duplication.
-CURLX_ONES =  $(top_srcdir)/lib/strtoofft.c \
-	$(top_srcdir)/lib/strdup.c \
-	$(top_srcdir)/lib/rawstr.c \
-	$(top_srcdir)/lib/nonblock.c
-
-CURL_SOURCES = main.c hugehelp.c urlglob.c writeout.c writeenv.c \
-	getpass.c homedir.c curlutil.c os-specific.c
-
-CURL_HFILES = hugehelp.h setup.h config-win32.h config-mac.h \
-	config-riscos.h urlglob.h version.h os-specific.h \
-	writeout.h writeenv.h getpass.h homedir.h curlutil.h
-
-curl_SOURCES = $(CURL_SOURCES) $(CURLX_ONES) $(CURL_HFILES)
-
-
diff --git a/src/other/curl/src/Makefile.m32 b/src/other/curl/src/Makefile.m32
deleted file mode 100644
index 37e7d56..0000000
--- a/src/other/curl/src/Makefile.m32
+++ /dev/null
@@ -1,165 +0,0 @@
-#########################################################################
-#
-## Makefile for building curl.exe with MingW32 (GCC-3.2 or later)
-## and optionally OpenSSL (0.9.8), libssh2 (1.1), zlib (1.2.3)
-##
-## Usage:
-## mingw32-make -f Makefile.m32 [SSL=1] [SSH2=1] [ZLIB=1] [IDN=1] [SSPI=1] [IPV6=1] [LDAPS=1] [DYN=1]
-##
-## Hint: you can also set environment vars to control the build, f.e.:
-## set ZLIB_PATH=c:/zlib-1.2.3
-## set ZLIB=1
-##
-## Comments to: Troy Engel <tengel at sonic.net> or
-##              Joern Hartroth <hartroth at acm.org>
-#########################################################################
-
-# Edit the path below to point to the base of your Zlib sources.
-ifndef ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.4
-endif
-# Edit the path below to point to the base of your OpenSSL package.
-ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-0.9.8n
-endif
-# Edit the path below to point to the base of your LibSSH2 package.
-ifndef LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.2.4
-endif
-# Edit the path below to point to the base of your libidn package.
-ifndef LIBIDN_PATH
-LIBIDN_PATH = ../../libidn-1.18
-endif
-# Edit the path below to point to the base of your Novell LDAP NDK.
-ifndef LDAP_SDK
-LDAP_SDK = c:/novell/ndk/cldapsdk/win32
-endif
-
-# Edit the path below to point to the base of your c-ares package.
-ifndef LIBCARES_PATH
-LIBCARES_PATH = ../ares
-endif
-
-CC = gcc
-CFLAGS = -g -O2
-# comment LDFLAGS below to keep debug info
-LDFLAGS = -s
-RC = windres
-RCFLAGS = --include-dir=../include -O COFF -i
-RM = del /q /f > NUL 2>&1
-CP = copy
-
-# We may need these someday
-# PERL = perl
-# NROFF = nroff
-
-########################################################
-## Nothing more to do below this line!
-
-INCLUDES = -I. -I.. -I../include -I../lib
-LINK = $(CC) $(LDFLAGS) -o $@
-
-curl_PROGRAMS = curl.exe
-ifdef DYN
-  curl_DEPENDENCIES = ../lib/libcurldll.a ../lib/libcurl.dll
-  curl_LDADD = -L../lib -lcurldll
-else
-  curl_DEPENDENCIES = ../lib/libcurl.a
-  curl_LDADD = -L../lib -lcurl
-  CFLAGS += -DCURL_STATICLIB
-endif
-ifdef ARES
-  ifndef DYN
-    curl_DEPENDENCIES += $(LIBCARES_PATH)/libcares.a
-  endif
-  CFLAGS += -DUSE_ARES
-  curl_LDADD += -L$(LIBCARES_PATH) -lcares
-endif
-ifdef SSH2
-  CFLAGS += -DUSE_LIBSSH2 -DHAVE_LIBSSH2_H
-  curl_LDADD += -L$(LIBSSH2_PATH)/win32 -lssh2
-endif
-ifdef SSL
-  CFLAGS += -DUSE_SSLEAY -DHAVE_OPENSSL_ENGINE_H
-  curl_LDADD += -L$(OPENSSL_PATH)/out -leay32 -lssl32
-endif
-ifdef ZLIB
-  INCLUDES += -I"$(ZLIB_PATH)"
-  CFLAGS += -DHAVE_LIBZ -DHAVE_ZLIB_H
-  curl_LDADD += -L$(ZLIB_PATH) -lz
-endif
-ifdef IDN
-  INCLUDES += -I"$(LIBIDN_PATH)/include"
-  CFLAGS += -DUSE_LIBIDN
-  curl_LDADD += -L$(LIBIDN_PATH)/lib -lidn
-endif
-ifdef SSPI
-  CFLAGS += -DUSE_WINDOWS_SSPI
-endif
-ifdef IPV6
-  CFLAGS += -DENABLE_IPV6
-endif
-ifdef LDAPS
-  CFLAGS += -DHAVE_LDAP_SSL
-endif
-ifdef USE_LDAP_NOVELL
-  CFLAGS += -DCURL_HAS_NOVELL_LDAPSDK
-  curl_LDADD += -L"$(LDAP_SDK)/lib/mscvc" -lldapsdk -lldapssl -lldapx
-endif
-ifdef USE_LDAP_OPENLDAP
-  CFLAGS += -DCURL_HAS_OPENLDAP_LDAPSDK
-  curl_LDADD += -L"$(LDAP_SDK)/lib" -lldap -llber
-endif
-ifndef USE_LDAP_NOVELL
-ifndef USE_LDAP_OPENLDAP
-curl_LDADD += -lwldap32
-endif
-endif
-curl_LDADD += -lws2_32
-COMPILE = $(CC) $(INCLUDES) $(CFLAGS)
-
-# Makefile.inc provides the CSOURCES and HHEADERS defines
-include Makefile.inc
-
-curl_OBJECTS := $(patsubst %.c,%.o,$(strip $(CURL_SOURCES)))
-ifdef DYN
-curlx_OBJECTS := $(patsubst %.c,%.o,$(notdir $(strip $(CURLX_ONES))))
-curl_OBJECTS += $(curlx_OBJECTS)
-vpath %.c ../lib
-endif
-
-RESOURCE = curl.res
-
-.SUFFIXES: .rc .res
-
-all: curl.exe
-
-curl.exe: $(RESOURCE) $(curl_OBJECTS) $(curl_DEPENDENCIES)
-	-$(RM) $@
-	$(LINK) $< $(curl_OBJECTS) $(curl_LDADD)
-
-# We don't have nroff normally under win32
-# hugehelp.c: ../README.curl ../curl.1 mkhelp.pl
-# 	-$(RM) hugehelp.c
-# 	$(NROFF) -man ../curl.1 | $(PERL) mkhelp.pl ../README.curl > hugehelp.c
-
-hugehelp.c:
-	@echo Creating $@
-	@$(CP) hugehelp.c.cvs $@
-
-.c.o:
-	$(COMPILE) -c $<
-
-.rc.res:
-	$(RC) $(RCFLAGS) $< -o $@
-
-clean:
-ifeq "$(wildcard hugehelp.c.cvs)" "hugehelp.c.cvs"
-	-$(RM) hugehelp.c
-endif
-	-$(RM) $(curl_OBJECTS) $(RESOURCE)
-
-distrib: clean
-	-$(RM) $(curl_PROGRAMS)
-
-
diff --git a/src/other/curl/src/Makefile.netware b/src/other/curl/src/Makefile.netware
deleted file mode 100644
index 09cb5d2..0000000
--- a/src/other/curl/src/Makefile.netware
+++ /dev/null
@@ -1,565 +0,0 @@
-#################################################################
-#
-## Makefile for building curl.nlm (NetWare version - gnu make)
-## Use: make -f Makefile.netware
-##
-## Comments to: Guenter Knauf http://www.gknw.net/phpbb
-#
-#################################################################
-
-# Edit the path below to point to the base of your Novell NDK.
-ifndef NDKBASE
-NDKBASE	= c:/novell
-endif
-
-# Edit the path below to point to the base of your Zlib sources.
-ifndef ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.4
-endif
-
-# Edit the path below to point to the base of your OpenSSL package.
-ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-0.9.8n
-endif
-
-# Edit the path below to point to the base of your LibSSH2 package.
-ifndef LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.2.4
-endif
-
-# Edit the path below to point to the base of your libidn package.
-ifndef LIBIDN_PATH
-LIBIDN_PATH = ../../libidn-1.18
-endif
-
-# Edit the path below to point to the base of your c-ares package.
-ifndef LIBCARES_PATH
-LIBCARES_PATH = ../ares
-endif
-
-ifndef INSTDIR
-INSTDIR	= ..$(DS)curl-$(LIBCURL_VERSION_STR)-bin-nw
-endif
-
-# Edit the vars below to change NLM target settings.
-TARGET  = curl
-VERSION	= $(LIBCURL_VERSION)
-COPYR	= Copyright (C) $(LIBCURL_COPYRIGHT_STR)
-DESCR	= cURL $(LIBCURL_VERSION_STR) ($(LIBARCH)) - http://curl.haxx.se
-MTSAFE	= YES
-STACK	= 64000
-SCREEN	= $(TARGET) commandline utility
-# Comment the line below if you dont want to load protected automatically.
-# LDRING = 3
-
-# Uncomment the next line to enable linking with POSIX semantics.
-# POSIXFL = 1
-
-# Edit the var below to point to your lib architecture.
-ifndef LIBARCH
-LIBARCH = LIBC
-endif
-
-# must be equal to NDEBUG or DEBUG, CURLDEBUG
-ifndef DB
-DB	= NDEBUG
-endif
-# Optimization: -O<n> or debugging: -g
-ifeq ($(DB),NDEBUG)
-	OPT	= -O2
-	OBJDIR	= release
-else
-	OPT	= -g
-	OBJDIR	= debug
-endif
-
-# The following lines defines your compiler.
-ifdef CWFolder
-	METROWERKS = $(CWFolder)
-endif
-ifdef METROWERKS
-	# MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support
-	MWCW_PATH = $(subst \,/,$(METROWERKS))/Novell Support/Metrowerks Support
-	CC = mwccnlm
-else
-	CC = gcc
-endif
-PERL	= perl
-# a native win32 awk can be downloaded from here:
-# http://www.gknw.net/development/prgtools/awk-20070501.zip
-AWK	= awk
-CP	= cp -afv
-MKDIR	= mkdir
-# RM	= rm -f
-# if you want to mark the target as MTSAFE you will need a tool for
-# generating the xdc data for the linker; here's a minimal tool:
-# http://www.gknw.net/development/prgtools/mkxdc.zip
-MPKXDC	= mkxdc
-
-# LIBARCH_U = $(shell $(AWK) 'BEGIN {print toupper(ARGV[1])}' $(LIBARCH))
-LIBARCH_L = $(shell $(AWK) 'BEGIN {print tolower(ARGV[1])}' $(LIBARCH))
-
-# Include the version info retrieved from curlver.h
--include $(OBJDIR)/version.inc
-
-# Global flags for all compilers
-CFLAGS	+= $(OPT) -D$(DB) -DNETWARE -DHAVE_CONFIG_H -nostdinc
-
-ifeq ($(CC),mwccnlm)
-LD	= mwldnlm
-LDFLAGS	= -nostdlib $(OBJS) $(PRELUDE) $(LDLIBS) -o $@ -commandfile
-LIBEXT	= lib
-CFLAGS	+= -gccinc -inline off -opt nointrinsics -proc 586
-CFLAGS	+= -relax_pointers
-#CFLAGS	+= -w on
-ifeq ($(LIBARCH),LIBC)
-ifeq ($(POSIXFL),1)
-	PRELUDE = $(SDK_LIBC)/imports/posixpre.o
-else
-	PRELUDE = $(SDK_LIBC)/imports/libcpre.o
-endif
-	CFLAGS += -align 4
-else
-	# PRELUDE = $(SDK_CLIB)/imports/clibpre.o
-	# to avoid the __init_* / __deinit_* whoes dont use prelude from NDK
-	PRELUDE = "$(MWCW_PATH)/libraries/runtime/prelude.obj"
-	# CFLAGS += -include "$(MWCW_PATH)/headers/nlm_clib_prefix.h"
-	CFLAGS += -align 1
-endif
-else
-LD	= nlmconv
-LDFLAGS	= -T
-LIBEXT	= a
-CFLAGS	+= -fno-builtin -fpcc-struct-return -fno-strict-aliasing
-CFLAGS	+= -Wall # -pedantic
-ifeq ($(LIBARCH),LIBC)
-ifeq ($(POSIXFL),1)
-	PRELUDE = $(SDK_LIBC)/imports/posixpre.gcc.o
-else
-	PRELUDE = $(SDK_LIBC)/imports/libcpre.gcc.o
-endif
-else
-	# PRELUDE = $(SDK_CLIB)/imports/clibpre.gcc.o
-	# to avoid the __init_* / __deinit_* whoes dont use prelude from NDK
-	# http://www.gknw.net/development/mk_nlm/gcc_pre.zip
-	PRELUDE = $(NDK_ROOT)/pre/prelude.o
-	CFLAGS += -include $(NDKBASE)/nlmconv/genlm.h
-endif
-endif
-
-NDK_ROOT = $(NDKBASE)/ndk
-SDK_CLIB = $(NDK_ROOT)/nwsdk
-SDK_LIBC = $(NDK_ROOT)/libc
-SDK_LDAP = $(NDK_ROOT)/cldapsdk/netware
-CURL_INC = ../include
-CURL_LIB = ../lib
-
-INCLUDES = -I$(CURL_INC) -I$(CURL_LIB)
-
-ifdef LINK_STATIC
-	LDLIBS	= $(CURL_LIB)/libcurl.$(LIBEXT)
-ifdef WITH_ARES
-	LDLIBS += $(LIBCARES_PATH)/libcares.$(LIBEXT)
-endif
-else
-	MODULES	= libcurl.nlm
-	IMPORTS	= @$(CURL_LIB)/libcurl.imp
-endif
-ifdef WITH_SSH2
-	INCLUDES += -I$(LIBSSH2_PATH)/include
-ifdef LINK_STATIC
-	LDLIBS += $(LIBSSH2_PATH)/nw/libssh2.$(LIBEXT)
-else
-	MODULES += libssh2.nlm
-	IMPORTS += @$(LIBSSH2_PATH)/nw/libssh2.imp
-endif
-endif
-ifdef WITH_SSL
-	INCLUDES += -I$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)
-	LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/ssl.$(LIBEXT)
-	LDLIBS += $(OPENSSL_PATH)/out_nw_$(LIBARCH_L)/crypto.$(LIBEXT)
-	IMPORTS += GetProcessSwitchCount RunningProcess
-endif
-ifdef WITH_ZLIB
-	INCLUDES += -I$(ZLIB_PATH)
-ifdef LINK_STATIC
-	LDLIBS += $(ZLIB_PATH)/nw/$(LIBARCH)/libz.$(LIBEXT)
-else
-	MODULES += libz.nlm
-	IMPORTS += @$(ZLIB_PATH)/nw/$(LIBARCH)/libz.imp
-endif
-endif
-ifdef WITH_IDN
-	# INCLUDES += -I$(LIBIDN_PATH)/include
-	LDLIBS += $(LIBIDN_PATH)/lib/libidn.$(LIBEXT)
-endif
-
-ifeq ($(LIBARCH),LIBC)
-	INCLUDES += -I$(SDK_LIBC)/include
-	# INCLUDES += -I$(SDK_LIBC)/include/nks
-	# INCLUDES += -I$(SDK_LIBC)/include/winsock
-	CFLAGS += -D_POSIX_SOURCE
-else
-	INCLUDES += -I$(SDK_CLIB)/include/nlm
-	# INCLUDES += -I$(SDK_CLIB)/include
-endif
-ifndef DISABLE_LDAP
-	# INCLUDES += -I$(SDK_LDAP)/$(LIBARCH_L)/inc
-endif
-CFLAGS	+= $(INCLUDES)
-
-ifeq ($(MTSAFE),YES)
-	XDCOPT = -n
-endif
-ifeq ($(MTSAFE),NO)
-	XDCOPT = -u
-endif
-ifdef XDCOPT
-	XDCDATA = $(OBJDIR)/$(TARGET).xdc
-endif
-
-ifeq ($(findstring /sh,$(SHELL)),/sh)
-DL	= '
-DS	= /
-PCT	= %
-#-include $(NDKBASE)/nlmconv/ncpfs.inc
-else
-DS	= \\
-PCT	= %%
-endif
-
-# Makefile.inc provides the CSOURCES and HHEADERS defines
-include Makefile.inc
-
-OBJX	:= $(patsubst %.c,$(OBJDIR)/%.o,$(notdir $(strip $(CURLX_ONES))))
-OBJS	:= $(patsubst %.c,$(OBJDIR)/%.o,$(strip $(CURL_SOURCES))) $(OBJX)
-
-vpath %.c $(CURL_LIB)
-
-all: prebuild $(TARGET).nlm
-
-prebuild: $(OBJDIR) $(OBJDIR)/version.inc curl_config.h
-
-$(OBJDIR)/%.o: %.c
-#	@echo Compiling $<
-	$(CC) $(CFLAGS) -c $< -o $@
-
-$(OBJDIR)/version.inc: $(CURL_INC)/curl/curlver.h $(OBJDIR)
-	@echo Creating $@
-	@$(AWK) -f ../packages/NetWare/get_ver.awk $< > $@
-
-install: $(INSTDIR) all
-	@-$(CP) ../docs/$(TARGET).pdf $(INSTDIR)
-	@-$(CP) ../docs/$(TARGET).html $(INSTDIR)
-	@$(CP) $(TARGET).nlm $(INSTDIR)
-
-clean:
-ifeq "$(wildcard hugehelp.c.cvs)" "hugehelp.c.cvs"
-	-$(RM) hugehelp.c
-endif
-	-$(RM) curl_config.h
-	-$(RM) -r $(OBJDIR)
-
-distclean: clean
-	-$(RM) $(TARGET).nlm
-
-$(OBJDIR) $(INSTDIR):
-	@$(MKDIR) $@
-
-$(TARGET).nlm: $(OBJS) $(OBJDIR)/$(TARGET).def $(XDCDATA)
-	@echo Linking $@
-	@-$(RM) $@
-	@$(LD) $(LDFLAGS) $(OBJDIR)/$(TARGET).def
-
-$(OBJDIR)/%.xdc: Makefile.netware
-	@echo Creating $@
-	@$(MPKXDC) $(XDCOPT) $@
-
-$(OBJDIR)/%.def: Makefile.netware
-	@echo $(DL)# DEF file for linking with $(LD)$(DL) > $@
-	@echo $(DL)# Do not edit this file - it is created by make!$(DL) >> $@
-	@echo $(DL)# All your changes will be lost!!$(DL) >> $@
-	@echo $(DL)#$(DL) >> $@
-	@echo $(DL)copyright "$(COPYR)"$(DL) >> $@
-	@echo $(DL)description "$(DESCR)"$(DL) >> $@
-	@echo $(DL)version $(VERSION)$(DL) >> $@
-ifdef NLMTYPE
-	@echo $(DL)type $(NLMTYPE)$(DL) >> $@
-endif
-ifdef STACK
-	@echo $(DL)stack $(STACK)$(DL) >> $@
-endif
-ifdef SCREEN
-	@echo $(DL)screenname "$(SCREEN)"$(DL) >> $@
-else
-	@echo $(DL)screenname "DEFAULT"$(DL) >> $@
-endif
-ifneq ($(DB),NDEBUG)
-	@echo $(DL)debug$(DL) >> $@
-endif
-	@echo $(DL)threadname "$(TARGET)"$(DL) >> $@
-ifdef XDCDATA
-	@echo $(DL)xdcdata $(XDCDATA)$(DL) >> $@
-endif
-ifeq ($(LDRING),0)
-	@echo $(DL)flag_on 16$(DL) >> $@
-endif
-ifeq ($(LDRING),3)
-	@echo $(DL)flag_on 512$(DL) >> $@
-endif
-ifeq ($(LIBARCH),CLIB)
-	@echo $(DL)start _Prelude$(DL) >> $@
-	@echo $(DL)exit _Stop$(DL) >> $@
-	@echo $(DL)import @$(SDK_CLIB)/imports/clib.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_CLIB)/imports/threads.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_CLIB)/imports/nlmlib.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_CLIB)/imports/socklib.imp$(DL) >> $@
-	@echo $(DL)module clib$(DL) >> $@
-ifndef DISABLE_LDAP
-	@echo $(DL)import @$(SDK_LDAP)/clib/imports/ldapsdk.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_LDAP)/clib/imports/ldapssl.imp$(DL) >> $@
-#	@echo $(DL)import @$(SDK_LDAP)/clib/imports/ldapx.imp$(DL) >> $@
-	@echo $(DL)module ldapsdk ldapssl$(DL) >> $@
-endif
-else
-ifeq ($(POSIXFL),1)
-	@echo $(DL)flag_on 4194304$(DL) >> $@
-endif
-	@echo $(DL)flag_on 64$(DL) >> $@
-	@echo $(DL)pseudopreemption$(DL) >> $@
-ifeq ($(findstring posixpre,$(PRELUDE)),posixpre)
-	@echo $(DL)start POSIX_Start$(DL) >> $@
-	@echo $(DL)exit POSIX_Stop$(DL) >> $@
-	@echo $(DL)check POSIX_CheckUnload$(DL) >> $@
-else
-	@echo $(DL)start _LibCPrelude$(DL) >> $@
-	@echo $(DL)exit _LibCPostlude$(DL) >> $@
-	@echo $(DL)check _LibCCheckUnload$(DL) >> $@
-endif
-	@echo $(DL)import @$(SDK_LIBC)/imports/libc.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_LIBC)/imports/netware.imp$(DL) >> $@
-	@echo $(DL)module libc$(DL) >> $@
-ifndef DISABLE_LDAP
-	@echo $(DL)import @$(SDK_LDAP)/libc/imports/lldapsdk.imp$(DL) >> $@
-	@echo $(DL)import @$(SDK_LDAP)/libc/imports/lldapssl.imp$(DL) >> $@
-#	@echo $(DL)import @$(SDK_LDAP)/libc/imports/lldapx.imp$(DL) >> $@
-	@echo $(DL)module lldapsdk lldapssl$(DL) >> $@
-endif
-endif
-ifdef MODULES
-	@echo $(DL)module $(MODULES)$(DL) >> $@
-endif
-ifdef EXPORTS
-	@echo $(DL)export $(EXPORTS)$(DL) >> $@
-endif
-ifdef IMPORTS
-	@echo $(DL)import $(IMPORTS)$(DL) >> $@
-endif
-ifeq ($(findstring nlmconv,$(LD)),nlmconv)
-	@echo $(DL)input $(PRELUDE)$(DL) >> $@
-	@echo $(DL)input $(OBJS)$(DL) >> $@
-ifdef LDLIBS
-	@echo $(DL)input $(LDLIBS)$(DL) >> $@
-endif
-	@echo $(DL)output $(TARGET).nlm$(DL) >> $@
-endif
-
-curl_config.h: Makefile.netware
-	@echo Creating $@
-	@echo $(DL)/* $@ for NetWare target.$(DL) > $@
-	@echo $(DL)** Do not edit this file - it is created by make!$(DL) >> $@
-	@echo $(DL)** All your changes will be lost!!$(DL) >> $@
-	@echo $(DL)*/$(DL) >> $@
-	@echo $(DL)#ifndef NETWARE$(DL) >> $@
-	@echo $(DL)#error This $(notdir $@) is created for NetWare platform!$(DL) >> $@
-	@echo $(DL)#endif$(DL) >> $@
-	@echo $(DL)#define VERSION "$(LIBCURL_VERSION_STR)"$(DL) >> $@
-	@echo $(DL)#define PACKAGE_BUGREPORT "a suitable curl mailing list => http://curl.haxx.se/mail/"$(DL) >> $@
-ifeq ($(LIBARCH),CLIB)
-	@echo $(DL)#define OS "i586-pc-clib-NetWare"$(DL) >> $@
-	@echo $(DL)#define NETDB_USE_INTERNET 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRICMP 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRNICMP 1$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG2 char *$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG3 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_RETV int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG2 char$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG3 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG5 struct sockaddr$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG6 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_RETV int$(DL) >> $@
-	@echo $(DL)#define SEND_QUAL_ARG2$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG2 char *$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG3 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_RETV int$(DL) >> $@
-	@echo $(DL)#define pressanykey PressAnyKeyToContinue$(DL) >> $@
-else
-	@echo $(DL)#define OS "i586-pc-libc-NetWare"$(DL) >> $@
-	@echo $(DL)#define HAVE_FTRUNCATE 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETTIMEOFDAY 1$(DL) >> $@
-	@echo $(DL)#define HAVE_INTTYPES_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LONGLONG 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STDINT_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRCASECMP 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRLCAT 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRLCPY 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRTOLL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_PARAM_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_SELECT_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_TERMIOS_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_AF_INET6 1$(DL) >> $@
-	@echo $(DL)#define HAVE_PF_INET6 1$(DL) >> $@
-	@echo $(DL)#define HAVE_FREEADDRINFO 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETADDRINFO 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRUCT_IN6_ADDR 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRUCT_SOCKADDR_IN6 1$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG2 void *$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG3 size_t$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define RECV_TYPE_RETV ssize_t$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG2 void$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG3 size_t$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG5 struct sockaddr$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG6 size_t$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_RETV ssize_t$(DL) >> $@
-	@echo $(DL)#define RECVFROM_TYPE_ARG2_IS_VOID 1$(DL) >> $@
-	@echo $(DL)#define SEND_QUAL_ARG2$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG1 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG2 void *$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG3 size_t$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_ARG4 int$(DL) >> $@
-	@echo $(DL)#define SEND_TYPE_RETV ssize_t$(DL) >> $@
-	@echo $(DL)#define SIZEOF_STRUCT_IN6_ADDR 16$(DL) >> $@
-	@echo $(DL)#define SIZEOF_OFF_T 8$(DL) >> $@
-	@echo $(DL)#define _LARGEFILE 1$(DL) >> $@
-ifdef ENABLE_IPV6
-	@echo $(DL)#define ENABLE_IPV6 1$(DL) >> $@
-endif
-endif
-	@echo $(DL)#define USE_MANUAL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_ARPA_INET_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_ASSERT_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_ERR_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_FCNTL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETHOSTBYADDR 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETHOSTBYNAME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GETPROTOBYNAME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_GMTIME_R 1$(DL) >> $@
-	@echo $(DL)#define HAVE_INET_ADDR 1$(DL) >> $@
-	@echo $(DL)#define HAVE_IOCTL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_IOCTL_FIONBIO 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LIMITS_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LOCALE_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LOCALTIME_R 1$(DL) >> $@
-	@echo $(DL)#define HAVE_MALLOC_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_NETINET_IN_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_RECV 1$(DL) >> $@
-	@echo $(DL)#define HAVE_RECVFROM 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SELECT 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SEND 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SETJMP_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SETLOCALE 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SIGNAL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SIGNAL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SIG_ATOMIC_T 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SOCKET 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STDLIB_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRDUP 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRFTIME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRING_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRSTR 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRUCT_ADDRINFO 1$(DL) >> $@
-	@echo $(DL)#define HAVE_STRUCT_TIMEVAL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_IOCTL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_STAT_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_TIME_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_TIME_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_UNAME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_UNISTD_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_UTIME 1$(DL) >> $@
-	@echo $(DL)#define HAVE_UTIME_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_WRITEV 1$(DL) >> $@
-	@echo $(DL)#define RETSIGTYPE void$(DL) >> $@
-	@echo $(DL)#define SIZEOF_INT 4$(DL) >> $@
-	@echo $(DL)#define SIZEOF_SHORT 2$(DL) >> $@
-	@echo $(DL)#define SIZEOF_STRUCT_IN_ADDR 4$(DL) >> $@
-	@echo $(DL)#define STDC_HEADERS 1$(DL) >> $@
-	@echo $(DL)#define TIME_WITH_SYS_TIME 1$(DL) >> $@
-ifdef DISABLE_LDAP
-	@echo $(DL)#define CURL_DISABLE_LDAP 1$(DL) >> $@
-else
-	@echo $(DL)#define CURL_HAS_NOVELL_LDAPSDK 1$(DL) >> $@
-ifndef DISABLE_LDAPS
-	@echo $(DL)#define HAVE_LDAP_SSL 1$(DL) >> $@
-endif
-	@echo $(DL)#define HAVE_LDAP_SSL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LDAP_URL_PARSE 1$(DL) >> $@
-endif
-ifdef NW_WINSOCK
-	@echo $(DL)#define HAVE_CLOSESOCKET 1$(DL) >> $@
-else
-	@echo $(DL)#define USE_BSD_SOCKETS 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_TYPES_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_SOCKET_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SYS_SOCKIO_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_NETDB_H 1$(DL) >> $@
-endif
-ifdef WITH_ARES
-	@echo $(DL)#define USE_ARES 1$(DL) >> $@
-endif
-ifdef WITH_ZLIB
-	@echo $(DL)#define HAVE_ZLIB_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LIBZ 1$(DL) >> $@
-endif
-ifdef WITH_SSL
-	@echo $(DL)#define USE_SSLEAY 1$(DL) >> $@
-	@echo $(DL)#define USE_OPENSSL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_X509_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_SSL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_RSA_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_PEM_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_ERR_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_CRYPTO_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_OPENSSL_ENGINE_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LIBSSL 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LIBCRYPTO 1$(DL) >> $@
-	@echo $(DL)#define OPENSSL_NO_KRB5 1$(DL) >> $@
-endif
-ifdef WITH_SSH2
-	@echo $(DL)#define USE_LIBSSH2 1$(DL) >> $@
-	@echo $(DL)#define HAVE_LIBSSH2_H 1$(DL) >> $@
-endif
-ifdef WITH_IDN
-	@echo $(DL)#define HAVE_LIBIDN 1$(DL) >> $@
-	@echo $(DL)#define HAVE_TLD_H 1$(DL) >> $@
-endif
-	@echo $(DL)#ifdef __GNUC__$(DL) >> $@
-	@echo $(DL)#define HAVE_VARIADIC_MACROS_GCC 1$(DL) >> $@
-	@echo $(DL)#else$(DL) >> $@
-	@echo $(DL)#define HAVE_VARIADIC_MACROS_C99 1$(DL) >> $@
-	@echo $(DL)#endif$(DL) >> $@
-ifdef CABUNDLE
-	@echo $(DL)#define CURL_CA_BUNDLE "$(CABUNDLE)"$(DL) >> $@
-else
-	@echo $(DL)#define CURL_CA_BUNDLE getenv("CURL_CA_BUNDLE")$(DL) >> $@
-endif
-
-hugehelp.c:
-	@echo Creating $@
-	@$(CP) hugehelp.c.cvs $@
-
-$(LIBCARES_PATH)/libcares.$(LIBEXT):
-	$(MAKE) -C $(LIBCARES_PATH) -f Makefile.netware lib
-
-
diff --git a/src/other/curl/src/Makefile.riscos b/src/other/curl/src/Makefile.riscos
deleted file mode 100644
index 35a194f..0000000
--- a/src/other/curl/src/Makefile.riscos
+++ /dev/null
@@ -1,64 +0,0 @@
-# Makefile for project cURL
-# Generated on Sun,13 Jan 2002.17:11:10 by EasyGCC (0.1.3 [beta 2] (3 Jan 2002))
-# Manually updated
-# Contact: easygcc at melotech.co.uk
-
-# Project objects:
-objs =	o.hugehelp o.main o.urlglob o.writeout o.writeenv o.rawstr o.nonblock
-	
-
-# Compile options:
-linkopts	= ../lib/libcurl openldap:libraries/libldap/libldap -o curl
-compileropts	= -mpoke-function-name -IUtilLib: -mthrowback
-
-# Project target:
-curl:		$(objs)
-		gcc $(linkopts) $(objs)
-
-# Static dependancies:
-o.hugehelp:	c.hugehelp
-		gcc $(compileropts) -c -o hugehelp.o c.hugehelp
-
-o.main:	c.main
-		gcc $(compileropts) -c -o main.o c.main
-
-o.os-specific:	c.os-specific
-		gcc $(compileropts) -c -o os-specific.o c.os-specific
-
-o.urlglob:	c.urlglob
-		gcc $(compileropts) -c -o urlglob.o c.urlglob
-
-o.writeout:	c.writeout
-		gcc $(compileropts) -c -o writeout.o c.writeout
-
-o.writeenv:	c.writeenv
-		gcc $(compileropts) -c -o writeenv.o c.writeenv
-
-o.rawstr:	../lib/c.rawstr
-		gcc $(compileropts) -c -o rawstr.o ../lib/c.rawstr
-
-o.nonblock:	../lib/c.nonblock
-		gcc $(compileropts) -c -o nonblock.o ../lib/c.nonblock
-
-# Dynamic dependancies:
-o.hugehelp:	c.hugehelp
-
-o.main:	c.main
-o.main:	h.setup
-o.main:	h.os-specific
-o.main:	h.urlglob
-o.main:	h.writeout
-o.main:	h.version
-
-o.os-specific:	c.os-specific
-o.os-specific:	h.setup
-o.os-specific:	h.os-specific
-
-o.urlglob:	c.urlglob
-o.urlglob:	h.setup
-o.urlglob:	h.os-specific
-o.urlglob:	h.urlglob
-
-o.writeout:	c.writeout
-o.writeout:	h.writeout
-
diff --git a/src/other/curl/src/Makefile.vc6 b/src/other/curl/src/Makefile.vc6
deleted file mode 100644
index a906967..0000000
--- a/src/other/curl/src/Makefile.vc6
+++ /dev/null
@@ -1,300 +0,0 @@
-#############################################################
-# $Id: Makefile.vc6,v 1.19 2004/11/14 13:48:15 giva Exp $
-#
-## Makefile for building curl.exe with MSVC6
-## Use: nmake -f makefile.vc6 [release | debug] [CFG=release-ssl]
-##      (default is release)
-## "nmake -f makefile.vc6 CFG=release-ssl" statically links OpenSSL
-## into curl.exe producing a standalone SSL-enabled executable.
-##
-## Comments to: Troy Engel <tengel at sonic.net>
-## Updated by: Craig Davison <cd at securityfocus.com>
-## release-ssl added by Miklos Nemeth <mnemeth at kfkisystems.com>
-#
-#############################################################
-
-PROGRAM_NAME = curl.exe
-
-!IFNDEF ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.3
-!ENDIF
-
-!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-0.9.8g
-!ENDIF
-
-!IFNDEF MACHINE
-MACHINE  = X86
-!ENDIF
-
-# USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication
-# without an openssl installation and offers the ability to authenticate
-# using the "current logged in user". Since at least with MSVC6 the sspi.h
-# header is broken it is either required to install the Windows SDK,
-# or to fix sspi.h with adding this define at the beginning of sspi.h:
-# #define FreeCredentialHandle FreeCredentialsHandle
-#
-# If, for some reason the Windows SDK is installed but not installed
-# in the default location, you can specify WINDOWS_SDK_PATH.
-# It can be downloaded from:
-# http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
-
-# WINDOWS_SSPI = 1
-
-!IFDEF WINDOWS_SSPI
-!IFNDEF WINDOWS_SDK_PATH
-WINDOWS_SDK_PATH = "C:\Program Files\Microsoft SDK"
-!ENDIF
-!ENDIF
-
-########################################################
-## Nothing more to do below this line!
-ZLIB_CFLAGS   = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
-ZLIB_LFLAGS   = "/LIBPATH:$(ZLIB_PATH)"
-ZLIB_LIBS     = zlib.lib
-ZLIB_IMP_LIBS = zdll.lib
-
-SSL_CFLAGS     = /DUSE_SSLEAY
-SSL_LFLAGS     = /LIBPATH:"$(OPENSSL_PATH)/out32"
-SSL_IMP_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32dll"
-SSL_LIBS       = libeay32.lib ssleay32.lib gdi32.lib user32.lib advapi32.lib
-
-# Runtime library configuration
-RTLIB   = /MD
-RTLIBD  = /MDd
-
-!IF "$(RTLIBCFG)" == "static"
-RTLIB  = /MT
-RTLIBD = /MTd
-!ENDIF
-
-## Release
-CCR   = cl.exe $(RTLIB) /O2 /DNDEBUG
-LINKR = link.exe /incremental:no /libpath:"../lib"
-RCR   = rc.exe /dDEBUGBUILD=0
-
-## Debug
-CCD   = cl.exe $(RTLIBD) /Gm /ZI /Od /D_DEBUG /GZ
-LINKD = link.exe /incremental:yes /debug /libpath:"../lib"
-RCD   = rc.exe /dDEBUGBUILD=1
-
-CFLAGS   = /I../lib /I../include /nologo /W3 /GX /DWIN32 /YX /FD /c
-LFLAGS   = /nologo /out:$(PROGRAM_NAME) /subsystem:console /machine:$(MACHINE)
-RESFLAGS = /i../include
-
-# This manifest thing is for VC8, enabled by the maketgz script that
-# builds the VC8 version of this makefile. Left commented out in the VC6
-# version!
-#MANIFESTTOOL = mt -manifest $(PROGRAM_NAME).manifest -outputresource:$(PROGRAM_NAME);1
-
-!IFDEF WINDOWS_SSPI
-CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include
-!ENDIF
-
-RELEASE_OBJS= \
-	hugehelpr.obj \
-	writeoutr.obj \
-	urlglobr.obj \
-	getpassr.obj \
-	homedirr.obj \
-	curlutilr.obj \
-	os-specificr.obj \
-	nonblockr.obj \
-	rawstrr.obj \
-	strtoofftr.obj \
-	mainr.obj \
-	curlr.res
-
-DEBUG_OBJS= \
-	hugehelpd.obj \
-	writeoutd.obj \
-	urlglobd.obj \
-	getpassd.obj \
-	homedird.obj \
-	curlutild.obj \
-	os-specificd.obj \
-	nonblockd.obj \
-	rawstrd.obj \
-	strtoofftd.obj \
-	maind.obj \
-	curld.res
-
-#################################################
-# If CFG not specified, use static libs
-
-CFLAGS         = $(CFLAGS) /DCURL_STATICLIB
-LINKLIBS       = libcurl.lib
-LINKLIBS_DEBUG = libcurld.lib
-
-#################################################
-# release dynamic library
-
-!IF "$(CFG)" == "release-dll"
-LINKLIBS       = libcurl_imp.lib
-LINKLIBS_DEBUG = libcurld_imp.lib
-!ENDIF
-
-#################################################
-# release static library with zlib
-
-!IF "$(CFG)" == "release-zlib"
-CFLAGS         = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS       = libcurl.lib  $(ZLIB_LIBS)
-LINKLIBS_DEBUG = libcurld.lib $(ZLIB_LIBS)
-LFLAGS         = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with ssl
-
-!IF "$(CFG)" == "release-ssl"
-CFLAGS         = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB
-LINKLIBS       = libcurl.lib  $(SSL_LIBS)
-LINKLIBS_DEBUG = libcurld.lib $(SSL_LIBS)
-LFLAGS         = $(LFLAGS) $(SSL_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic ssl
-
-!IF "$(CFG)" == "release-dll-ssl-dll"
-CFLAGS         = $(CFLAGS) $(SSL_CFLAGS)
-LINKLIBS       = libcurl_imp.lib  $(SSL_LIBS)
-LINKLIBS_DEBUG = libcurld_imp.lib $(SSL_LIBS)
-LFLAGS         = $(LFLAGS) $(SSL_IMP_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with ssl and zlib
-
-!IF "$(CFG)" == "release-ssl-zlib"
-CFLAGS         = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS       = libcurl.lib  $(SSL_LIBS) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = libcurld.lib $(SSL_LIBS) $(ZLIB_LIBS)
-LFLAGS         = $(LFLAGS) $(SSL_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic ssl
-
-!IF "$(CFG)" == "release-ssl-dll"
-CFLAGS         = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB
-LINKLIBS       = libcurl.lib  $(SSL_LIBS)
-LINKLIBS_DEBUG = libcurld.lib $(SSL_LIBS)
-LFLAGS         = $(LFLAGS) $(SSL_IMP_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic zlib
-
-!IF "$(CFG)" == "release-zlib-dll"
-CFLAGS         = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS       = libcurl.lib  $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = libcurld.lib $(ZLIB_IMP_LIBS)
-LFLAGS         = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic zlib
-
-!IF "$(CFG)" == "release-dll-zlib-dll"
-CFLAGS         = $(CFLAGS) $(ZLIB_CFLAGS)
-LINKLIBS       = libcurl_imp.lib  $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = libcurld_imp.lib $(ZLIB_IMP_LIBS)
-LFLAGS         = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic ssl and dynamic zlib
-
-!IF "$(CFG)" == "release-ssl-dll-zlib-dll"
-CFLAGS         = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS       = libcurl.lib  $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = libcurld.lib $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LFLAGS         = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic ssl and dynamic zlib
-
-!IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"
-CFLAGS         = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS)
-LINKLIBS       = libcurl_imp.lib  $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = libcurld_imp.lib $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LFLAGS         = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-
-LINKLIBS       = $(LINKLIBS) wsock32.lib wldap32.lib
-LINKLIBS_DEBUG = $(LINKLIBS_DEBUG) wsock32.lib wldap32.lib
-
-all : release
-
-release: $(RELEASE_OBJS)
-	$(LINKR) $(LFLAGS) $(LINKLIBS) $(RELEASE_OBJS)
-        $(MANIFESTTOOL)
-
-debug: $(DEBUG_OBJS)
-	$(LINKD) $(LFLAGS) $(LINKLIBS_DEBUG) $(DEBUG_OBJS)
-        $(MANIFESTTOOL)
-
-## Release
-hugehelpr.obj: hugehelp.c
-	$(CCR) $(CFLAGS) /Zm200 /Fo"$@" hugehelp.c
-writeoutr.obj: writeout.c
-	$(CCR) $(CFLAGS) /Fo"$@" writeout.c
-urlglobr.obj: urlglob.c
-	$(CCR) $(CFLAGS) /Fo"$@" urlglob.c
-getpassr.obj: getpass.c
-	$(CCR) $(CFLAGS) /Fo"$@" getpass.c
-homedirr.obj: homedir.c
-	$(CCR) $(CFLAGS) /Fo"$@" homedir.c
-curlutilr.obj: curlutil.c
-	$(CCR) $(CFLAGS) /Fo"$@" curlutil.c
-os-specificr.obj: os-specific.c
-	$(CCR) $(CFLAGS) /Fo"$@" os-specific.c
-nonblockr.obj: ../lib/nonblock.c
-	$(CCR) $(CFLAGS) /Fo"$@" ../lib/nonblock.c
-rawstrr.obj: ../lib/rawstr.c
-	$(CCR) $(CFLAGS) /Fo"$@" ../lib/rawstr.c
-strtoofftr.obj: ../lib/strtoofft.c
-	$(CCR) $(CFLAGS) /Fo"$@" ../lib/strtoofft.c
-mainr.obj: main.c
-	$(CCR) $(CFLAGS) /Fo"$@" main.c
-curlr.res : curl.rc
-	$(RCR) $(RESFLAGS) /Fo"$@" curl.rc
-
-## Debug
-hugehelpd.obj: hugehelp.c
-	$(CCD) $(CFLAGS) /Zm200 /Fo"$@" hugehelp.c
-writeoutd.obj: writeout.c
-	$(CCD) $(CFLAGS) /Fo"$@" writeout.c
-urlglobd.obj: urlglob.c
-	$(CCD) $(CFLAGS) /Fo"$@" urlglob.c
-getpassd.obj: getpass.c
-	$(CCD) $(CFLAGS) /Fo"$@" getpass.c
-homedird.obj: homedir.c
-	$(CCD) $(CFLAGS) /Fo"$@" homedir.c
-curlutild.obj: curlutil.c
-	$(CCD) $(CFLAGS) /Fo"$@" curlutil.c
-os-specificd.obj: os-specific.c
-	$(CCD) $(CFLAGS) /Fo"$@" os-specific.c
-nonblockd.obj: ../lib/nonblock.c
-	$(CCD) $(CFLAGS) /Fo"$@" ../lib/nonblock.c
-rawstrd.obj: ../lib/rawstr.c
-	$(CCD) $(CFLAGS) /Fo"$@" ../lib/rawstr.c
-strtoofftd.obj: ../lib/strtoofft.c
-	$(CCD) $(CFLAGS) /Fo"$@" ../lib/strtoofft.c
-maind.obj: main.c
-	$(CCD) $(CFLAGS) /Fo"$@" main.c
-curld.res : curl.rc
-	$(RCD) $(RESFLAGS) /Fo"$@" curl.rc
-
-clean:
-	@-erase $(PROGRAM_NAME) 2> NUL
-	@-erase $(RELEASE_OBJS) 2> NUL
-	@-erase $(DEBUG_OBJS) 2> NUL
-	@-erase *.idb 2> NUL
-	@-erase *.pdb 2> NUL
-	@-erase *.pch 2> NUL
-	@-erase *.ilk 2> NUL
diff --git a/src/other/curl/src/config-amigaos.h b/src/other/curl/src/config-amigaos.h
deleted file mode 100644
index fba875d..0000000
--- a/src/other/curl/src/config-amigaos.h
+++ /dev/null
@@ -1,69 +0,0 @@
-#ifndef CURL_CONFIG_AMIGAOS_H
-#define CURL_CONFIG_AMIGAOS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#ifdef __AMIGA__ /* Any AmigaOS flavour */
-
-/* Define to 1 if you want the built-in manual */
-#define USE_MANUAL 1
-
-#define OS "AmigaOS"
-
-#define HAVE_CLOSESOCKET_CAMEL  1
-#define HAVE_UNISTD_H           1
-#define HAVE_STRDUP             1
-#define HAVE_UTIME              1
-#define HAVE_UTIME_H            1
-#define HAVE_SYS_TYPES_H        1
-#define HAVE_SYS_SOCKET_H       1
-#define HAVE_WRITABLE_ARGV      1
-#define HAVE_SYS_TIME_H         1
-#define HAVE_TIME_H             1
-#define TIME_WITH_SYS_TIME      1
-#define HAVE_STRUCT_TIMEVAL     1
-
-#if 0
-# define HAVE_TERMIOS_H         1
-# define HAVE_FTRUNCATE         1
-#endif
-
-#define HAVE_PWD_H              1
-
-#ifndef F_OK
-# define F_OK 0
-#endif
-#ifndef O_RDONLY
-# define	O_RDONLY	0x0000		/* open for reading only */
-#endif
-#ifndef LONG_MAX
-# define        LONG_MAX        0x7fffffffL             /* max value for a long */
-#endif
-#ifndef LONG_MIN
-# define        LONG_MIN        (-0x7fffffffL-1)        /* min value for a long */
-#endif
-
-#define SIZEOF_INT              4
-#define SIZEOF_SHORT            2
-
-#endif /* __AMIGA__ */
-#endif /* CURL_CONFIG_AMIGAOS_H */
diff --git a/src/other/curl/src/config-mac.h b/src/other/curl/src/config-mac.h
deleted file mode 100644
index dc7f767..0000000
--- a/src/other/curl/src/config-mac.h
+++ /dev/null
@@ -1,35 +0,0 @@
-#ifndef __SRC_CONFIG_MAC_H
-#define __SRC_CONFIG_MAC_H
-
-/* =================================================================== */
-/*   src/config-mac.h - Hand crafted config file for Mac OS 9          */
-/* =================================================================== */
-/*  On Mac OS X you must run configure to generate curl_config.h file  */
-/* =================================================================== */
-
-/* Define to 1 if you want the built-in manual */
-#define USE_MANUAL 1
-
-#define HAVE_UNISTD_H           1
-#define HAVE_FCNTL_H            1
-#define HAVE_UTIME_H            1
-#define HAVE_SYS_UTIME_H        1
-
-#define HAVE_SETVBUF            1
-#define HAVE_UTIME              1
-#define HAVE_FTRUNCATE          1
-
-#define HAVE_TIME_H             1
-#define HAVE_SYS_TIME_H         1
-#define TIME_WITH_SYS_TIME      1
-#define HAVE_STRUCT_TIMEVAL     1
-
-#define SIZEOF_INT              4
-#define SIZEOF_SHORT            2
-
-#define main(x,y) curl_main(x,y)
-
-/* we provide our own strdup prototype */
-char *strdup(char *s1);
-
-#endif /* __SRC_CONFIG_MAC_H */
diff --git a/src/other/curl/src/config-riscos.h b/src/other/curl/src/config-riscos.h
deleted file mode 100644
index ba95f13..0000000
--- a/src/other/curl/src/config-riscos.h
+++ /dev/null
@@ -1,379 +0,0 @@
-/* curl_config.h.in.  Generated automatically from configure.in by autoheader.  */
-/* Name of this package! */
-#undef PACKAGE
-
-/* Version number of this archive. */
-#undef VERSION
-
-/* Define if you have the getpass function.  */
-#undef HAVE_GETPASS
-
-/* Define cpu-machine-OS */
-#define OS "ARM-RISC OS"
-
-/* Define to 1 if you want the built-in manual */
-#define USE_MANUAL 1
-
-/* Define if you have the gethostbyaddr_r() function with 5 arguments */
-#undef HAVE_GETHOSTBYADDR_R_5
-
-/* Define if you have the gethostbyaddr_r() function with 7 arguments */
-#undef HAVE_GETHOSTBYADDR_R_7
-
-/* Define if you have the gethostbyaddr_r() function with 8 arguments */
-#undef HAVE_GETHOSTBYADDR_R_8
-
-/* Define if you have the gethostbyname_r() function with 3 arguments */
-#undef HAVE_GETHOSTBYNAME_R_3
-
-/* Define if you have the gethostbyname_r() function with 5 arguments */
-#undef HAVE_GETHOSTBYNAME_R_5
-
-/* Define if you have the gethostbyname_r() function with 6 arguments */
-#undef HAVE_GETHOSTBYNAME_R_6
-
-/* Define if you need the _REENTRANT define for some functions */
-#undef NEED_REENTRANT
-
-/* Define if you have the Kerberos4 libraries (including -ldes) */
-#undef HAVE_KRB4
-
-/* Define if you want to enable IPv6 support */
-#undef ENABLE_IPV6
-
-/* Define if struct sockaddr_in6 has the sin6_scope_id member */
-#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
-
-/* Define this to 'int' if ssize_t is not an available typedefed type */
-#undef ssize_t
-
-/* Define this as a suitable file to read random data from */
-#undef RANDOM_FILE
-
-/* Define this to your Entropy Gathering Daemon socket pathname */
-#undef EGD_SOCKET
-
-/* Define if you want to enable IPv6 support */
-#undef ENABLE_IPV6
-
-/* Define if you have the <alloca.h> header file. */
-#define HAVE_ALLOCA_H
-
-/* Define if you have the <arpa/inet.h> header file. */
-#define HAVE_ARPA_INET_H
-
-/* Define if you have the `closesocket' function. */
-#undef HAVE_CLOSESOCKET
-
-/* Define if you have the <crypto.h> header file. */
-#undef HAVE_CRYPTO_H
-
-/* Define if you have the <des.h> header file. */
-#undef HAVE_DES_H
-
-/* Define if you have the <err.h> header file. */
-#undef HAVE_ERR_H
-
-/* Define if you have the <fcntl.h> header file. */
-#define HAVE_FCNTL_H
-
-/* Define if you have the `ftruncate' function. */
-#define HAVE_FTRUNCATE
-
-/* Define if getaddrinfo exists and works */
-#define HAVE_GETADDRINFO
-
-/* Define if you have the `geteuid' function. */
-#undef HAVE_GETEUID
-
-/* Define if you have the `gethostbyaddr' function. */
-#define HAVE_GETHOSTBYADDR
-
-/* Define if you have the `gethostbyaddr_r' function. */
-#undef HAVE_GETHOSTBYADDR_R
-
-/* Define if you have the `gethostbyname_r' function. */
-#undef HAVE_GETHOSTBYNAME_R
-
-/* Define if you have the `gethostname' function. */
-#define HAVE_GETHOSTNAME
-
-/* Define if you have the <getopt.h> header file. */
-#define HAVE_GETOPT_H
-
-/* Define if you have the `getpass_r' function. */
-#undef HAVE_GETPASS_R
-
-/* Define if you have the `getpwuid' function. */
-#undef HAVE_GETPWUID
-
-/* Define if you have the `getservbyname' function. */
-#undef HAVE_GETSERVBYNAME
-
-/* Define if you have the `gettimeofday' function. */
-#define HAVE_GETTIMEOFDAY
-
-/* Define if you have the `timeval' struct. */
-#define HAVE_STRUCT_TIMEVAL
-
-/* Define if you have the `inet_addr' function. */
-#undef HAVE_INET_ADDR
-
-/* Define if you have the <inttypes.h> header file. */
-#define HAVE_INTTYPES_H
-
-/* Define if you have the <io.h> header file. */
-#undef HAVE_IO_H
-
-/* Define if you have the `krb_get_our_ip_for_realm' function. */
-#undef HAVE_KRB_GET_OUR_IP_FOR_REALM
-
-/* Define if you have the <krb.h> header file. */
-#undef HAVE_KRB_H
-
-/* Define if you have the `crypto' library (-lcrypto). */
-#undef HAVE_LIBCRYPTO
-
-/* Define if you have the `nsl' library (-lnsl). */
-#undef HAVE_LIBNSL
-
-/* Define if you have the `resolv' library (-lresolv). */
-#undef HAVE_LIBRESOLV
-
-/* Define if you have the `resolve' library (-lresolve). */
-#undef HAVE_LIBRESOLVE
-
-/* Define if you have the `socket' library (-lsocket). */
-#undef HAVE_LIBSOCKET
-
-/* Define if you have the `ssl' library (-lssl). */
-#undef HAVE_LIBSSL
-
-/* Define if you have the `ucb' library (-lucb). */
-#undef HAVE_LIBUCB
-
-/* Define if you have the `localtime_r' function. */
-#undef HAVE_LOCALTIME_R
-
-/* Define if you have the <malloc.h> header file. */
-#define HAVE_MALLOC_H
-
-/* Define to 1 if you need the malloc.h header file even with stdlib.h */
-/* #define NEED_MALLOC_H 1 */
-
-/* Define if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H
-
-/* Define if you have the <netdb.h> header file. */
-#define HAVE_NETDB_H
-
-/* Define if you have the <netinet/if_ether.h> header file. */
-#undef HAVE_NETINET_IF_ETHER_H
-
-/* Define if you have the <netinet/in.h> header file. */
-#define HAVE_NETINET_IN_H
-
-/* Define if you have the <net/if.h> header file. */
-#define HAVE_NET_IF_H
-
-/* Define if you have the <openssl/crypto.h> header file. */
-#undef HAVE_OPENSSL_CRYPTO_H
-
-/* Define if you have the <openssl/err.h> header file. */
-#undef HAVE_OPENSSL_ERR_H
-
-/* Define if you have the <openssl/pem.h> header file. */
-#undef HAVE_OPENSSL_PEM_H
-
-/* Define if you have the <openssl/rsa.h> header file. */
-#undef HAVE_OPENSSL_RSA_H
-
-/* Define if you have the <openssl/ssl.h> header file. */
-#undef HAVE_OPENSSL_SSL_H
-
-/* Define if you have the <openssl/x509.h> header file. */
-#undef HAVE_OPENSSL_X509_H
-
-/* Define if you have the <pem.h> header file. */
-#undef HAVE_PEM_H
-
-/* Define if you have the `perror' function. */
-#undef HAVE_PERROR
-
-/* Define if you have the <pwd.h> header file. */
-#undef HAVE_PWD_H
-
-/* Define if you have the `RAND_egd' function. */
-#undef HAVE_RAND_EGD
-
-/* Define if you have the `RAND_screen' function. */
-#undef HAVE_RAND_SCREEN
-
-/* Define if you have the `RAND_status' function. */
-#undef HAVE_RAND_STATUS
-
-/* Define if you have the <rsa.h> header file. */
-#undef HAVE_RSA_H
-
-/* Define if you have the `select' function. */
-#define HAVE_SELECT
-
-/* Define if you have the `setvbuf' function. */
-#undef HAVE_SETVBUF
-
-/* Define if you have the <sgtty.h> header file. */
-#define HAVE_SGTTY_H
-
-/* Define if you have the `sigaction' function. */
-#undef HAVE_SIGACTION
-
-/* Define if you have the `signal' function. */
-#define HAVE_SIGNAL
-
-/* Define if you have the `socket' function. */
-#define HAVE_SOCKET
-
-/* Define if you have the <ssl.h> header file. */
-#undef HAVE_SSL_H
-
-/* Define if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H
-
-/* Define if you have the <stdlib.h> header file. */
-#define HAVE_STDLIB_H
-
-/* Define if you have the `strcasecmp' function. */
-#undef HAVE_STRCASECMP
-
-/* Define if you have the `strcmpi' function. */
-#undef HAVE_STRCMPI
-
-/* Define if you have the `strdup' function. */
-#define HAVE_STRDUP
-
-/* Define if you have the `strftime' function. */
-#define HAVE_STRFTIME
-
-/* Define if you have the `stricmp' function. */
-#define HAVE_STRICMP
-
-/* Define if you have the <strings.h> header file. */
-#undef HAVE_STRINGS_H
-
-/* Define if you have the <string.h> header file. */
-#define HAVE_STRING_H
-
-/* Define if you have the `strlcat' function. */
-#undef HAVE_STRLCAT
-
-/* Define if you have the `strlcpy' function. */
-#undef HAVE_STRLCPY
-
-/* Define if you have the `strstr' function. */
-#define HAVE_STRSTR
-
-/* Define if you have the `strtok_r' function. */
-#undef HAVE_STRTOK_R
-
-/* Define if you have the <sys/param.h> header file. */
-#undef HAVE_SYS_PARAM_H
-
-/* Define if you have the <sys/select.h> header file. */
-#undef HAVE_SYS_SELECT_H
-
-/* Define if you have the <sys/socket.h> header file. */
-#define HAVE_SYS_SOCKET_H
-
-/* Define if you have the <sys/sockio.h> header file. */
-#undef HAVE_SYS_SOCKIO_H
-
-/* Define if you have the <sys/stat.h> header file. */
-#undef HAVE_SYS_STAT_H
-
-/* Define if you have the <sys/time.h> header file. */
-#define HAVE_SYS_TIME_H
-
-/* Define if you have the <sys/types.h> header file. */
-#define HAVE_SYS_TYPES_H
-
-/* Define if you have the `tcgetattr' function. */
-#define HAVE_TCGETATTR
-
-/* Define if you have the `tcsetattr' function. */
-#define HAVE_TCSETATTR
-
-/* Define if you have the <termios.h> header file. */
-#define HAVE_TERMIOS_H
-
-/* Define if you have the <termio.h> header file. */
-#undef HAVE_TERMIO_H
-
-/* Define if you have the <time.h> header file. */
-#undef HAVE_TIME_H
-
-/* Define if you have the `uname' function. */
-#define HAVE_UNAME
-
-/* Define if you have the <unistd.h> header file. */
-#define HAVE_UNISTD_H
-
-/* Define if you have the <winsock.h> header file. */
-#undef HAVE_WINSOCK_H
-
-/* Define if you have the <x509.h> header file. */
-#undef HAVE_X509_H
-
-/* Name of package */
-#undef PACKAGE
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#define RETSIGTYPE void
-
-/* The size of `int', as computed by sizeof. */
-#define SIZEOF_INT 4
-
-/* The size of `long double', as computed by sizeof. */
-#undef SIZEOF_LONG_DOUBLE
-
-/* The size of `long long', as computed by sizeof. */
-#undef SIZEOF_LONG_LONG
-
-/* The size of `short', as computed by sizeof. */
-#define SIZEOF_SHORT 2
-
-/* Define if you have the ANSI C header files. */
-#undef STDC_HEADERS
-
-/* Define if you can safely include both <sys/time.h> and <time.h>. */
-#undef TIME_WITH_SYS_TIME
-
-/* Version number of package */
-#undef VERSION
-
-/* Define if on AIX 3.
-   System headers sometimes define this.
-   We just want to avoid a redefinition error message.  */
-#ifndef _ALL_SOURCE
-# undef _ALL_SOURCE
-#endif
-
-/* Number of bits in a file offset, on hosts where this is settable. */
-#undef _FILE_OFFSET_BITS
-
-/* Define for large files, on AIX-style hosts. */
-#undef _LARGE_FILES
-
-/* Define to empty if `const' does not conform to ANSI C. */
-#undef const
-
-/* Define to `unsigned' if <sys/types.h> does not define. */
-#undef size_t
-
-/* Define to `int' if <sys/types.h> does not define. */
-#undef ssize_t
-
-/* Define if you have the ioctl function. */
-#define HAVE_IOCTL
-
-/* Define if you have a working ioctl FIONBIO function. */
-#define HAVE_IOCTL_FIONBIO
diff --git a/src/other/curl/src/config-win32.h b/src/other/curl/src/config-win32.h
deleted file mode 100644
index 7dacb55..0000000
--- a/src/other/curl/src/config-win32.h
+++ /dev/null
@@ -1,412 +0,0 @@
-#ifndef __SRC_CONFIG_WIN32_H
-#define __SRC_CONFIG_WIN32_H
-
-/* ================================================================ */
-/*    src/config-win32.h - Hand crafted config file for windows     */
-/* ================================================================ */
-
-/* ---------------------------------------------------------------- */
-/*                          HEADER FILES                            */
-/* ---------------------------------------------------------------- */
-
-/* Define if you have the <fcntl.h> header file.  */
-#define HAVE_FCNTL_H 1
-
-/* Define if you have the <io.h> header file.  */
-#define HAVE_IO_H 1
-
-/* Define if you have the <limits.h> header file.  */
-#define HAVE_LIMITS_H 1
-
-/* Define if you have the <locale.h> header file.  */
-#define HAVE_LOCALE_H 1
-
-/* Define if you need the malloc.h header file even with stdlib.h  */
-#if !defined(__SALFORDC__) && !defined(__POCC__)
-#define NEED_MALLOC_H 1
-#endif
-
-/* Define if you have the <signal.h> header file. */
-#define HAVE_SIGNAL_H 1
-
-/* Define if you have the <stdlib.h> header file.  */
-#define HAVE_STDLIB_H 1
-
-/* Define if you have the <sys/time.h> header file */
-/* #define HAVE_SYS_TIME_H 1 */
-
-/* Define if you have the <sys/types.h> header file.  */
-#define HAVE_SYS_TYPES_H 1
-
-/* Define if you have the <sys/utime.h> header file.  */
-#ifndef __BORLANDC__
-#define HAVE_SYS_UTIME_H 1
-#endif
-
-/* Define if you have the <time.h> header file.  */
-#define HAVE_TIME_H 1
-
-/* Define if you have the <unistd.h> header file.  */
-#if defined(__MINGW32__) || defined(__WATCOMC__) || defined(__LCC__) || \
-    defined(__POCC__)
-#define HAVE_UNISTD_H 1
-#endif
-
-/* Define if you have the <windows.h> header file.  */
-#define HAVE_WINDOWS_H 1
-
-/* Define if you have the <winsock.h> header file.  */
-#define HAVE_WINSOCK_H 1
-
-/* Define if you have the <winsock2.h> header file.  */
-#ifndef __SALFORDC__
-#define HAVE_WINSOCK2_H 1
-#endif
-
-/* Define if you have the <ws2tcpip.h> header file.  */
-#ifndef __SALFORDC__
-#define HAVE_WS2TCPIP_H 1
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                        OTHER HEADER INFO                         */
-/* ---------------------------------------------------------------- */
-
-/* Define if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T 1
-
-/* Define if you have the ANSI C header files.  */
-#define STDC_HEADERS 1
-
-/* Define if you can safely include both <sys/time.h> and <time.h>.  */
-/* #define TIME_WITH_SYS_TIME 1 */
-
-/* ---------------------------------------------------------------- */
-/*                             FUNCTIONS                            */
-/* ---------------------------------------------------------------- */
-
-/* Define if you have the ftruncate function.  */
-#define HAVE_FTRUNCATE 1
-
-/* Define if you have the ioctlsocket function. */
-#define HAVE_IOCTLSOCKET 1
-
-/* Define if you have a working ioctlsocket FIONBIO function. */
-#define HAVE_IOCTLSOCKET_FIONBIO 1
-
-/* Define if you have the setlocale function.  */
-#define HAVE_SETLOCALE 1
-
-/* Define if you have the setmode function. */
-#define HAVE_SETMODE 1
-
-/* Define if you have the strcasecmp function. */
-/* #define HAVE_STRCASECMP 1 */
-
-/* Define if you have the strdup function.  */
-#define HAVE_STRDUP 1
-
-/* Define if you have the stricmp function.  */
-#define HAVE_STRICMP 1
-
-/* Define if you have the strncasecmp function. */
-/* #define HAVE_STRNCASECMP 1 */
-
-/* Define if you have the strnicmp function. */
-#define HAVE_STRNICMP 1
-
-/* Define if you have the utime function */
-#ifndef __BORLANDC__
-#define HAVE_UTIME 1
-#endif
-
-/* Define if you have the recv function. */
-#define HAVE_RECV 1
-
-/* Define to the type of arg 1 for recv. */
-#define RECV_TYPE_ARG1 SOCKET
-
-/* Define to the type of arg 2 for recv. */
-#define RECV_TYPE_ARG2 char *
-
-/* Define to the type of arg 3 for recv. */
-#define RECV_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for recv. */
-#define RECV_TYPE_ARG4 int
-
-/* Define to the function return type for recv. */
-#define RECV_TYPE_RETV int
-
-/* Define if you have the recvfrom function. */
-#define HAVE_RECVFROM 1
-
-/* Define to the type of arg 1 for recvfrom. */
-#define RECVFROM_TYPE_ARG1 SOCKET
-
-/* Define to the type pointed by arg 2 for recvfrom. */
-#define RECVFROM_TYPE_ARG2 char
-
-/* Define to the type of arg 3 for recvfrom. */
-#define RECVFROM_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for recvfrom. */
-#define RECVFROM_TYPE_ARG4 int
-
-/* Define to the type pointed by arg 5 for recvfrom. */
-#define RECVFROM_TYPE_ARG5 struct sockaddr
-
-/* Define to the type pointed by arg 6 for recvfrom. */
-#define RECVFROM_TYPE_ARG6 int
-
-/* Define to the function return type for recvfrom. */
-#define RECVFROM_TYPE_RETV int
-
-/* Define if you have the send function. */
-#define HAVE_SEND 1
-
-/* Define to the type of arg 1 for send. */
-#define SEND_TYPE_ARG1 SOCKET
-
-/* Define to the type qualifier of arg 2 for send. */
-#define SEND_QUAL_ARG2 const
-
-/* Define to the type of arg 2 for send. */
-#define SEND_TYPE_ARG2 char *
-
-/* Define to the type of arg 3 for send. */
-#define SEND_TYPE_ARG3 int
-
-/* Define to the type of arg 4 for send. */
-#define SEND_TYPE_ARG4 int
-
-/* Define to the function return type for send. */
-#define SEND_TYPE_RETV int
-
-/* ---------------------------------------------------------------- */
-/*                       TYPEDEF REPLACEMENTS                       */
-/* ---------------------------------------------------------------- */
-
-/* Define this if in_addr_t is not an available 'typedefed' type */
-#define in_addr_t unsigned long
-
-/* Define as the return type of signal handlers (int or void).  */
-#define RETSIGTYPE void
-
-/* Define ssize_t if it is not an available 'typedefed' type */
-#ifndef _SSIZE_T_DEFINED
-#  if (defined(__WATCOMC__) && (__WATCOMC__ >= 1240)) || \
-      defined(__POCC__) || \
-      defined(__MINGW32__)
-#  elif defined(_WIN64)
-#    define _SSIZE_T_DEFINED
-#    define ssize_t __int64
-#  else
-#    define _SSIZE_T_DEFINED
-#    define ssize_t int
-#  endif
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                            TYPE SIZES                            */
-/* ---------------------------------------------------------------- */
-
-/* The size of `int', as computed by sizeof. */
-#define SIZEOF_INT 4
-
-/* The size of `long double', as computed by sizeof. */
-#define SIZEOF_LONG_DOUBLE 16
-
-/* The size of `long long', as computed by sizeof. */
-/* #define SIZEOF_LONG_LONG 8 */
-
-/* The size of `short', as computed by sizeof. */
-#define SIZEOF_SHORT 2
-
-/* ---------------------------------------------------------------- */
-/*                          STRUCT RELATED                          */
-/* ---------------------------------------------------------------- */
-
-/* Define this if you have struct sockaddr_storage */
-#ifndef __SALFORDC__
-#define HAVE_STRUCT_SOCKADDR_STORAGE 1
-#endif
-
-/* Define this if you have struct timeval */
-#define HAVE_STRUCT_TIMEVAL 1
-
-/* Define this if struct sockaddr_in6 has the sin6_scope_id member */
-#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
-
-/* ---------------------------------------------------------------- */
-/*                        Watt-32 tcp/ip SPECIFIC                   */
-/* ---------------------------------------------------------------- */
-
-#ifdef USE_WATT32
-  #include <tcp.h>
-  #undef byte
-  #undef word
-  #undef USE_WINSOCK
-  #undef HAVE_WINSOCK_H
-  #undef HAVE_WINSOCK2_H
-  #undef HAVE_WS2TCPIP_H
-  #define HAVE_GETADDRINFO
-  #define HAVE_GETNAMEINFO
-  #define HAVE_SYS_IOCTL_H
-  #define HAVE_SYS_SOCKET_H
-  #define HAVE_NETINET_IN_H
-  #define HAVE_NETDB_H
-  #define HAVE_ARPA_INET_H
-  #define HAVE_FREEADDRINFO
-  #define SOCKET int
-#endif
-
-
-/* ---------------------------------------------------------------- */
-/*                        COMPILER SPECIFIC                         */
-/* ---------------------------------------------------------------- */
-
-/* Undef keyword 'const' if it does not work.  */
-/* #undef const */
-
-/* Windows should not have HAVE_GMTIME_R defined */
-/* #undef HAVE_GMTIME_R */
-
-/* Define if the compiler supports C99 variadic macro style. */
-#if defined(_MSC_VER) && (_MSC_VER >= 1400)
-#define HAVE_VARIADIC_MACROS_C99 1
-#endif
-
-/* Define if the compiler supports the 'long long' data type. */
-#if defined(__MINGW32__) || defined(__WATCOMC__)
-#define HAVE_LONGLONG 1
-#endif
-
-/* Define to avoid VS2005 complaining about portable C functions */
-#if defined(_MSC_VER) && (_MSC_VER >= 1400)
-#define _CRT_SECURE_NO_DEPRECATE 1
-#define _CRT_NONSTDC_NO_DEPRECATE 1
-#endif
-
-/* VS2005 and later dafault size for time_t is 64-bit, unless */
-/* _USE_32BIT_TIME_T has been defined to get a 32-bit time_t. */
-#if defined(_MSC_VER) && (_MSC_VER >= 1400)
-#  ifndef _USE_32BIT_TIME_T
-#    define SIZEOF_TIME_T 8
-#  else
-#    define SIZEOF_TIME_T 4
-#  endif
-#endif
-
-/* Officially, Microsoft's Windows SDK versions 6.X do not support Windows
-   2000 as a supported build target. VS2008 default installations provide an
-   embedded Windows SDK v6.0A along with the claim that Windows 2000 is a
-   valid build target for VS2008. Popular belief is that binaries built using
-   Windows SDK versions 6.X and Windows 2000 as a build target are functional */
-#if defined(_MSC_VER) && (_MSC_VER >= 1500)
-#  define VS2008_MINIMUM_TARGET 0x0500
-#endif
-
-/* When no build target is specified VS2008 default build target is Windows
-   Vista, which leaves out even Winsows XP. If no build target has been given
-   for VS2008 we will target the minimum Officially supported build target,
-   which happens to be Windows XP. */
-#if defined(_MSC_VER) && (_MSC_VER >= 1500)
-#  define VS2008_DEFAULT_TARGET  0x0501
-#endif
-
-/* VS2008 default target settings and minimum build target check */
-#if defined(_MSC_VER) && (_MSC_VER >= 1500)
-#  ifndef _WIN32_WINNT
-#    define _WIN32_WINNT VS2008_DEFAULT_TARGET
-#  endif
-#  ifndef WINVER
-#    define WINVER VS2008_DEFAULT_TARGET
-#  endif
-#  if (_WIN32_WINNT < VS2008_MINIMUM_TARGET) || (WINVER < VS2008_MINIMUM_TARGET)
-#    error VS2008 does not support Windows build targets prior to Windows 2000
-#  endif
-#endif
-
-/* When no build target is specified Pelles C 5.00 and later default build
-   target is Windows Vista. We override default target to be Windows 2000. */
-#if defined(__POCC__) && (__POCC__ >= 500)
-#  ifndef _WIN32_WINNT
-#    define _WIN32_WINNT 0x0500
-#  endif
-#  ifndef WINVER
-#    define WINVER 0x0500
-#  endif
-#endif
-
-/* Availability of freeaddrinfo, getaddrinfo and getnameinfo functions is
-   quite convoluted, compiler dependent and even build target dependent. */
-#if defined(HAVE_WS2TCPIP_H)
-#  if defined(__POCC__)
-#    define HAVE_FREEADDRINFO           1
-#    define HAVE_GETADDRINFO            1
-#    define HAVE_GETADDRINFO_THREADSAFE 1
-#    define HAVE_GETNAMEINFO            1
-#  elif defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0501)
-#    define HAVE_FREEADDRINFO           1
-#    define HAVE_GETADDRINFO            1
-#    define HAVE_GETADDRINFO_THREADSAFE 1
-#    define HAVE_GETNAMEINFO            1
-#  elif defined(_MSC_VER) && (_MSC_VER >= 1200)
-#    define HAVE_FREEADDRINFO           1
-#    define HAVE_GETADDRINFO            1
-#    define HAVE_GETADDRINFO_THREADSAFE 1
-#    define HAVE_GETNAMEINFO            1
-#  endif
-#endif
-
-#if defined(__POCC__)
-#  ifndef _MSC_VER
-#    error Microsoft extensions /Ze compiler option is required
-#  endif
-#  ifndef __POCC__OLDNAMES
-#    error Compatibility names /Go compiler option is required
-#  endif
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                        LARGE FILE SUPPORT                        */
-/* ---------------------------------------------------------------- */
-
-#if defined(_MSC_VER) && !defined(_WIN32_WCE)
-#  if (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64)
-#    define USE_WIN32_LARGE_FILES
-#  else
-#    define USE_WIN32_SMALL_FILES
-#  endif
-#endif
-
-#if defined(__MINGW32__) && !defined(USE_WIN32_LARGE_FILES)
-#  define USE_WIN32_LARGE_FILES
-#endif
-
-#if defined(__POCC__)
-#  undef USE_WIN32_LARGE_FILES
-#endif
-
-#if !defined(USE_WIN32_LARGE_FILES) && !defined(USE_WIN32_SMALL_FILES)
-#  define USE_WIN32_SMALL_FILES
-#endif
-
-/* ---------------------------------------------------------------- */
-/*                       ADDITIONAL DEFINITIONS                     */
-/* ---------------------------------------------------------------- */
-
-/* Define cpu-machine-OS */
-#ifndef OS
-#define OS "i386-pc-win32"
-#endif
-
-/* Define to 1 if you want the built-in manual */
-#define USE_MANUAL 1
-
-#if defined(__POCC__)
-#  define ENABLE_IPV6 1
-#endif
-
-#endif /* __SRC_CONFIG_WIN32_H */
diff --git a/src/other/curl/src/curl.rc b/src/other/curl/src/curl.rc
deleted file mode 100644
index 58e439d..0000000
--- a/src/other/curl/src/curl.rc
+++ /dev/null
@@ -1,63 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include <winver.h>
-#include "version.h"
-
-LANGUAGE  0x09,0x01
-
-#define RC_VERSION  CURL_VERSION_MAJOR, CURL_VERSION_MINOR, CURL_VERSION_PATCH, 0
-
-VS_VERSION_INFO VERSIONINFO
-  FILEVERSION     RC_VERSION
-  PRODUCTVERSION  RC_VERSION
-  FILEFLAGSMASK   0x3fL
-#if defined(DEBUGBUILD) || defined(_DEBUG)
-  FILEFLAGS 1
-#else
-  FILEFLAGS 0
-#endif
-  FILEOS      VOS__WINDOWS32
-  FILETYPE    VFT_APP
-  FILESUBTYPE 0x0L
-
-BEGIN
-  BLOCK "StringFileInfo"
-  BEGIN
-    BLOCK "040904b0"
-    BEGIN
-      VALUE "CompanyName",      "cURL, http://curl.haxx.se/\0"
-      VALUE "FileDescription",  "The cURL executable\0"
-      VALUE "FileVersion",      CURL_VERSION "\0"
-      VALUE "InternalName",     "curl\0"
-      VALUE "OriginalFilename", "curl.exe\0"
-      VALUE "ProductName",      "The cURL executable\0"
-      VALUE "ProductVersion",   CURL_VERSION "\0"
-      VALUE "LegalCopyright",   "© " CURL_COPYRIGHT "\0"
-      VALUE "License",          "http://curl.haxx.se/docs/copyright.html\0"
-    END
-  END
-
-  BLOCK "VarFileInfo"
-  BEGIN
-    VALUE "Translation", 0x409, 1200
-  END
-END
diff --git a/src/other/curl/src/curl_config.h.in b/src/other/curl/src/curl_config.h.in
deleted file mode 100644
index 846fb27..0000000
--- a/src/other/curl/src/curl_config.h.in
+++ /dev/null
@@ -1,973 +0,0 @@
-/* lib/curl_config.h.in.  Generated from configure.ac by autoheader.  */
-
-/* when building libcurl itself */
-#undef BUILDING_LIBCURL
-
-/* Location of default ca bundle */
-#undef CURL_CA_BUNDLE
-
-/* Location of default ca path */
-#undef CURL_CA_PATH
-
-/* to disable cookies support */
-#undef CURL_DISABLE_COOKIES
-
-/* to disable cryptographic authentication */
-#undef CURL_DISABLE_CRYPTO_AUTH
-
-/* to disable DICT */
-#undef CURL_DISABLE_DICT
-
-/* to disable FILE */
-#undef CURL_DISABLE_FILE
-
-/* to disable FTP */
-#undef CURL_DISABLE_FTP
-
-/* to disable HTTP */
-#undef CURL_DISABLE_HTTP
-
-/* to disable IMAP */
-#undef CURL_DISABLE_IMAP
-
-/* to disable LDAP */
-#undef CURL_DISABLE_LDAP
-
-/* to disable LDAPS */
-#undef CURL_DISABLE_LDAPS
-
-/* to disable POP3 */
-#undef CURL_DISABLE_POP3
-
-/* to disable proxies */
-#undef CURL_DISABLE_PROXY
-
-/* to disable RTSP */
-#undef CURL_DISABLE_RTSP
-
-/* to disable SMTP */
-#undef CURL_DISABLE_SMTP
-
-/* to disable TELNET */
-#undef CURL_DISABLE_TELNET
-
-/* to disable TFTP */
-#undef CURL_DISABLE_TFTP
-
-/* to disable verbose strings */
-#undef CURL_DISABLE_VERBOSE_STRINGS
-
-/* to make a symbol visible */
-#undef CURL_EXTERN_SYMBOL
-
-/* to enable hidden symbols */
-#undef CURL_HIDDEN_SYMBOLS
-
-/* W$ LDAP with non-W$ compiler */
-#undef CURL_LDAP_HYBRID
-
-/* Use W$ LDAP implementation */
-#undef CURL_LDAP_WIN
-
-/* when not building a shared library */
-#undef CURL_STATICLIB
-
-/* your Entropy Gathering Daemon socket pathname */
-#undef EGD_SOCKET
-
-/* Define if you want to enable IPv6 support */
-#undef ENABLE_IPV6
-
-/* Define to the type qualifier of arg 1 for getnameinfo. */
-#undef GETNAMEINFO_QUAL_ARG1
-
-/* Define to the type of arg 1 for getnameinfo. */
-#undef GETNAMEINFO_TYPE_ARG1
-
-/* Define to the type of arg 2 for getnameinfo. */
-#undef GETNAMEINFO_TYPE_ARG2
-
-/* Define to the type of args 4 and 6 for getnameinfo. */
-#undef GETNAMEINFO_TYPE_ARG46
-
-/* Define to the type of arg 7 for getnameinfo. */
-#undef GETNAMEINFO_TYPE_ARG7
-
-/* Specifies the number of arguments to getservbyport_r */
-#undef GETSERVBYPORT_R_ARGS
-
-/* Specifies the size of the buffer to pass to getservbyport_r */
-#undef GETSERVBYPORT_R_BUFSIZE
-
-/* Define to 1 if you have the alarm function. */
-#undef HAVE_ALARM
-
-/* Define to 1 if you have the <alloca.h> header file. */
-#undef HAVE_ALLOCA_H
-
-/* Define to 1 if you have the <arpa/inet.h> header file. */
-#undef HAVE_ARPA_INET_H
-
-/* Define to 1 if you have the <arpa/tftp.h> header file. */
-#undef HAVE_ARPA_TFTP_H
-
-/* Define to 1 if you have the <assert.h> header file. */
-#undef HAVE_ASSERT_H
-
-/* Define to 1 if you have the basename function. */
-#undef HAVE_BASENAME
-
-/* Define to 1 if bool is an available type. */
-#undef HAVE_BOOL_T
-
-/* Define to 1 if you have the clock_gettime function and monotonic timer. */
-#undef HAVE_CLOCK_GETTIME_MONOTONIC
-
-/* Define to 1 if you have the closesocket function. */
-#undef HAVE_CLOSESOCKET
-
-/* Define to 1 if you have the CloseSocket camel case function. */
-#undef HAVE_CLOSESOCKET_CAMEL
-
-/* Define to 1 if you have the connect function. */
-#undef HAVE_CONNECT
-
-/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function. */
-#undef HAVE_CRYPTO_CLEANUP_ALL_EX_DATA
-
-/* Define to 1 if you have the <crypto.h> header file. */
-#undef HAVE_CRYPTO_H
-
-/* Define to 1 if you have the <des.h> header file. */
-#undef HAVE_DES_H
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#undef HAVE_DLFCN_H
-
-/* Define to 1 if you have the `ENGINE_cleanup' function. */
-#undef HAVE_ENGINE_CLEANUP
-
-/* Define to 1 if you have the `ENGINE_load_builtin_engines' function. */
-#undef HAVE_ENGINE_LOAD_BUILTIN_ENGINES
-
-/* Define to 1 if you have the <errno.h> header file. */
-#undef HAVE_ERRNO_H
-
-/* Define to 1 if you have the <err.h> header file. */
-#undef HAVE_ERR_H
-
-/* Define to 1 if you have the fcntl function. */
-#undef HAVE_FCNTL
-
-/* Define to 1 if you have the <fcntl.h> header file. */
-#undef HAVE_FCNTL_H
-
-/* Define to 1 if you have a working fcntl O_NONBLOCK function. */
-#undef HAVE_FCNTL_O_NONBLOCK
-
-/* Define to 1 if you have the fdopen function. */
-#undef HAVE_FDOPEN
-
-/* Define to 1 if you have the `fork' function. */
-#undef HAVE_FORK
-
-/* Define to 1 if you have the freeaddrinfo function. */
-#undef HAVE_FREEADDRINFO
-
-/* Define to 1 if you have the freeifaddrs function. */
-#undef HAVE_FREEIFADDRS
-
-/* Define to 1 if you have the ftruncate function. */
-#undef HAVE_FTRUNCATE
-
-/* Define to 1 if you have a working getaddrinfo function. */
-#undef HAVE_GETADDRINFO
-
-/* Define to 1 if the getaddrinfo function is threadsafe. */
-#undef HAVE_GETADDRINFO_THREADSAFE
-
-/* Define to 1 if you have the `geteuid' function. */
-#undef HAVE_GETEUID
-
-/* Define to 1 if you have the gethostbyaddr function. */
-#undef HAVE_GETHOSTBYADDR
-
-/* Define to 1 if you have the gethostbyaddr_r function. */
-#undef HAVE_GETHOSTBYADDR_R
-
-/* gethostbyaddr_r() takes 5 args */
-#undef HAVE_GETHOSTBYADDR_R_5
-
-/* gethostbyaddr_r() takes 7 args */
-#undef HAVE_GETHOSTBYADDR_R_7
-
-/* gethostbyaddr_r() takes 8 args */
-#undef HAVE_GETHOSTBYADDR_R_8
-
-/* Define to 1 if you have the gethostbyname function. */
-#undef HAVE_GETHOSTBYNAME
-
-/* Define to 1 if you have the gethostbyname_r function. */
-#undef HAVE_GETHOSTBYNAME_R
-
-/* gethostbyname_r() takes 3 args */
-#undef HAVE_GETHOSTBYNAME_R_3
-
-/* gethostbyname_r() takes 5 args */
-#undef HAVE_GETHOSTBYNAME_R_5
-
-/* gethostbyname_r() takes 6 args */
-#undef HAVE_GETHOSTBYNAME_R_6
-
-/* Define to 1 if you have the gethostname function. */
-#undef HAVE_GETHOSTNAME
-
-/* Define to 1 if you have a working getifaddrs function. */
-#undef HAVE_GETIFADDRS
-
-/* Define to 1 if you have the getnameinfo function. */
-#undef HAVE_GETNAMEINFO
-
-/* Define to 1 if you have the `getpass_r' function. */
-#undef HAVE_GETPASS_R
-
-/* Define to 1 if you have the `getppid' function. */
-#undef HAVE_GETPPID
-
-/* Define to 1 if you have the `getprotobyname' function. */
-#undef HAVE_GETPROTOBYNAME
-
-/* Define to 1 if you have the `getpwuid' function. */
-#undef HAVE_GETPWUID
-
-/* Define to 1 if you have the `getrlimit' function. */
-#undef HAVE_GETRLIMIT
-
-/* Define to 1 if you have the getservbyport_r function. */
-#undef HAVE_GETSERVBYPORT_R
-
-/* Define to 1 if you have the `gettimeofday' function. */
-#undef HAVE_GETTIMEOFDAY
-
-/* Define to 1 if you have a working glibc-style strerror_r function. */
-#undef HAVE_GLIBC_STRERROR_R
-
-/* Define to 1 if you have a working gmtime_r function. */
-#undef HAVE_GMTIME_R
-
-/* if you have the gssapi libraries */
-#undef HAVE_GSSAPI
-
-/* Define to 1 if you have the <gssapi/gssapi_generic.h> header file. */
-#undef HAVE_GSSAPI_GSSAPI_GENERIC_H
-
-/* Define to 1 if you have the <gssapi/gssapi.h> header file. */
-#undef HAVE_GSSAPI_GSSAPI_H
-
-/* Define to 1 if you have the <gssapi/gssapi_krb5.h> header file. */
-#undef HAVE_GSSAPI_GSSAPI_KRB5_H
-
-/* if you have the GNU gssapi libraries */
-#undef HAVE_GSSGNU
-
-/* if you have the Heimdal gssapi libraries */
-#undef HAVE_GSSHEIMDAL
-
-/* if you have the MIT gssapi libraries */
-#undef HAVE_GSSMIT
-
-/* Define to 1 if you have the `idna_strerror' function. */
-#undef HAVE_IDNA_STRERROR
-
-/* Define to 1 if you have the `idn_free' function. */
-#undef HAVE_IDN_FREE
-
-/* Define to 1 if you have the <idn-free.h> header file. */
-#undef HAVE_IDN_FREE_H
-
-/* Define to 1 if you have the <ifaddrs.h> header file. */
-#undef HAVE_IFADDRS_H
-
-/* Define to 1 if you have the `inet_addr' function. */
-#undef HAVE_INET_ADDR
-
-/* Define to 1 if you have the inet_ntoa_r function. */
-#undef HAVE_INET_NTOA_R
-
-/* inet_ntoa_r() takes 2 args */
-#undef HAVE_INET_NTOA_R_2
-
-/* inet_ntoa_r() takes 3 args */
-#undef HAVE_INET_NTOA_R_3
-
-/* Define to 1 if you have a IPv6 capable working inet_ntop function. */
-#undef HAVE_INET_NTOP
-
-/* Define to 1 if you have a IPv6 capable working inet_pton function. */
-#undef HAVE_INET_PTON
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#undef HAVE_INTTYPES_H
-
-/* Define to 1 if you have the ioctl function. */
-#undef HAVE_IOCTL
-
-/* Define to 1 if you have the ioctlsocket function. */
-#undef HAVE_IOCTLSOCKET
-
-/* Define to 1 if you have the IoctlSocket camel case function. */
-#undef HAVE_IOCTLSOCKET_CAMEL
-
-/* Define to 1 if you have a working IoctlSocket camel case FIONBIO function.
-   */
-#undef HAVE_IOCTLSOCKET_CAMEL_FIONBIO
-
-/* Define to 1 if you have a working ioctlsocket FIONBIO function. */
-#undef HAVE_IOCTLSOCKET_FIONBIO
-
-/* Define to 1 if you have a working ioctl FIONBIO function. */
-#undef HAVE_IOCTL_FIONBIO
-
-/* Define to 1 if you have a working ioctl SIOCGIFADDR function. */
-#undef HAVE_IOCTL_SIOCGIFADDR
-
-/* Define to 1 if you have the <io.h> header file. */
-#undef HAVE_IO_H
-
-/* if you have the Kerberos4 libraries (including -ldes) */
-#undef HAVE_KRB4
-
-/* Define to 1 if you have the `krb_get_our_ip_for_realm' function. */
-#undef HAVE_KRB_GET_OUR_IP_FOR_REALM
-
-/* Define to 1 if you have the <krb.h> header file. */
-#undef HAVE_KRB_H
-
-/* Define to 1 if you have the lber.h header file. */
-#undef HAVE_LBER_H
-
-/* Define to 1 if you have the ldapssl.h header file. */
-#undef HAVE_LDAPSSL_H
-
-/* Define to 1 if you have the ldap.h header file. */
-#undef HAVE_LDAP_H
-
-/* Use LDAPS implementation */
-#undef HAVE_LDAP_SSL
-
-/* Define to 1 if you have the ldap_ssl.h header file. */
-#undef HAVE_LDAP_SSL_H
-
-/* Define to 1 if you have the `ldap_url_parse' function. */
-#undef HAVE_LDAP_URL_PARSE
-
-/* Define to 1 if you have the <libgen.h> header file. */
-#undef HAVE_LIBGEN_H
-
-/* Define to 1 if you have the `idn' library (-lidn). */
-#undef HAVE_LIBIDN
-
-/* Define to 1 if you have the `resolv' library (-lresolv). */
-#undef HAVE_LIBRESOLV
-
-/* Define to 1 if you have the `resolve' library (-lresolve). */
-#undef HAVE_LIBRESOLVE
-
-/* Define to 1 if you have the `ssh2' library (-lssh2). */
-#undef HAVE_LIBSSH2
-
-/* Define to 1 if you have the <libssh2.h> header file. */
-#undef HAVE_LIBSSH2_H
-
-/* Define to 1 if you have the `libssh2_version' function. */
-#undef HAVE_LIBSSH2_VERSION
-
-/* Define to 1 if you have the `ssl' library (-lssl). */
-#undef HAVE_LIBSSL
-
-/* if zlib is available */
-#undef HAVE_LIBZ
-
-/* Define to 1 if you have the <limits.h> header file. */
-#undef HAVE_LIMITS_H
-
-/* if your compiler supports LL */
-#undef HAVE_LL
-
-/* Define to 1 if you have the <locale.h> header file. */
-#undef HAVE_LOCALE_H
-
-/* Define to 1 if you have a working localtime_r function. */
-#undef HAVE_LOCALTIME_R
-
-/* Define to 1 if the compiler supports the 'long long' data type. */
-#undef HAVE_LONGLONG
-
-/* Define to 1 if you have the malloc.h header file. */
-#undef HAVE_MALLOC_H
-
-/* Define to 1 if you have the memory.h header file. */
-#undef HAVE_MEMORY_H
-
-/* Define to 1 if you have the memrchr function or macro. */
-#undef HAVE_MEMRCHR
-
-/* Define to 1 if you have the MSG_NOSIGNAL flag. */
-#undef HAVE_MSG_NOSIGNAL
-
-/* Define to 1 if you have the <netdb.h> header file. */
-#undef HAVE_NETDB_H
-
-/* Define to 1 if you have the <netinet/in.h> header file. */
-#undef HAVE_NETINET_IN_H
-
-/* Define to 1 if you have the <netinet/tcp.h> header file. */
-#undef HAVE_NETINET_TCP_H
-
-/* Define to 1 if you have the <net/if.h> header file. */
-#undef HAVE_NET_IF_H
-
-/* Define to 1 if NI_WITHSCOPEID exists and works. */
-#undef HAVE_NI_WITHSCOPEID
-
-/* if you have an old MIT gssapi library, lacking GSS_C_NT_HOSTBASED_SERVICE
-   */
-#undef HAVE_OLD_GSSMIT
-
-/* Define to 1 if you have the <openssl/crypto.h> header file. */
-#undef HAVE_OPENSSL_CRYPTO_H
-
-/* Define to 1 if you have the <openssl/engine.h> header file. */
-#undef HAVE_OPENSSL_ENGINE_H
-
-/* Define to 1 if you have the <openssl/err.h> header file. */
-#undef HAVE_OPENSSL_ERR_H
-
-/* Define to 1 if you have the <openssl/pem.h> header file. */
-#undef HAVE_OPENSSL_PEM_H
-
-/* Define to 1 if you have the <openssl/pkcs12.h> header file. */
-#undef HAVE_OPENSSL_PKCS12_H
-
-/* Define to 1 if you have the <openssl/rsa.h> header file. */
-#undef HAVE_OPENSSL_RSA_H
-
-/* Define to 1 if you have the <openssl/ssl.h> header file. */
-#undef HAVE_OPENSSL_SSL_H
-
-/* Define to 1 if you have the <openssl/x509.h> header file. */
-#undef HAVE_OPENSSL_X509_H
-
-/* Define to 1 if you have the <pem.h> header file. */
-#undef HAVE_PEM_H
-
-/* Define to 1 if you have the `perror' function. */
-#undef HAVE_PERROR
-
-/* Define to 1 if you have the `pipe' function. */
-#undef HAVE_PIPE
-
-/* if you have the function PK11_CreateGenericObject */
-#undef HAVE_PK11_CREATEGENERICOBJECT
-
-/* Define to 1 if you have a working poll function. */
-#undef HAVE_POLL
-
-/* If you have a fine poll */
-#undef HAVE_POLL_FINE
-
-/* Define to 1 if you have the <poll.h> header file. */
-#undef HAVE_POLL_H
-
-/* Define to 1 if you have a working POSIX-style strerror_r function. */
-#undef HAVE_POSIX_STRERROR_R
-
-/* Define to 1 if you have the <pwd.h> header file. */
-#undef HAVE_PWD_H
-
-/* Define to 1 if you have the `RAND_egd' function. */
-#undef HAVE_RAND_EGD
-
-/* Define to 1 if you have the `RAND_screen' function. */
-#undef HAVE_RAND_SCREEN
-
-/* Define to 1 if you have the `RAND_status' function. */
-#undef HAVE_RAND_STATUS
-
-/* Define to 1 if you have the recv function. */
-#undef HAVE_RECV
-
-/* Define to 1 if you have the recvfrom function. */
-#undef HAVE_RECVFROM
-
-/* Define to 1 if you have the <rsa.h> header file. */
-#undef HAVE_RSA_H
-
-/* Define to 1 if you have the select function. */
-#undef HAVE_SELECT
-
-/* Define to 1 if you have the send function. */
-#undef HAVE_SEND
-
-/* Define to 1 if you have the <setjmp.h> header file. */
-#undef HAVE_SETJMP_H
-
-/* Define to 1 if you have the `setlocale' function. */
-#undef HAVE_SETLOCALE
-
-/* Define to 1 if you have the `setmode' function. */
-#undef HAVE_SETMODE
-
-/* Define to 1 if you have the `setrlimit' function. */
-#undef HAVE_SETRLIMIT
-
-/* Define to 1 if you have the setsockopt function. */
-#undef HAVE_SETSOCKOPT
-
-/* Define to 1 if you have a working setsockopt SO_NONBLOCK function. */
-#undef HAVE_SETSOCKOPT_SO_NONBLOCK
-
-/* Define to 1 if you have the <sgtty.h> header file. */
-#undef HAVE_SGTTY_H
-
-/* Define to 1 if you have the sigaction function. */
-#undef HAVE_SIGACTION
-
-/* Define to 1 if you have the siginterrupt function. */
-#undef HAVE_SIGINTERRUPT
-
-/* Define to 1 if you have the signal function. */
-#undef HAVE_SIGNAL
-
-/* Define to 1 if you have the <signal.h> header file. */
-#undef HAVE_SIGNAL_H
-
-/* Define to 1 if you have the sigsetjmp function or macro. */
-#undef HAVE_SIGSETJMP
-
-/* Define to 1 if sig_atomic_t is an available typedef. */
-#undef HAVE_SIG_ATOMIC_T
-
-/* Define to 1 if sig_atomic_t is already defined as volatile. */
-#undef HAVE_SIG_ATOMIC_T_VOLATILE
-
-/* Define to 1 if struct sockaddr_in6 has the sin6_scope_id member */
-#undef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
-
-/* Define to 1 if you have the socket function. */
-#undef HAVE_SOCKET
-
-/* Define to 1 if you have the <socket.h> header file. */
-#undef HAVE_SOCKET_H
-
-/* Define this if you have the SPNEGO library fbopenssl */
-#undef HAVE_SPNEGO
-
-/* Define to 1 if you have the `SSL_get_shutdown' function. */
-#undef HAVE_SSL_GET_SHUTDOWN
-
-/* Define to 1 if you have the <ssl.h> header file. */
-#undef HAVE_SSL_H
-
-/* Define to 1 if you have the <stdbool.h> header file. */
-#undef HAVE_STDBOOL_H
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H
-
-/* Define to 1 if you have the <stdio.h> header file. */
-#undef HAVE_STDIO_H
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H
-
-/* Define to 1 if you have the strcasecmp function. */
-#undef HAVE_STRCASECMP
-
-/* Define to 1 if you have the strcasestr function. */
-#undef HAVE_STRCASESTR
-
-/* Define to 1 if you have the strcmpi function. */
-#undef HAVE_STRCMPI
-
-/* Define to 1 if you have the strdup function. */
-#undef HAVE_STRDUP
-
-/* Define to 1 if you have the strerror_r function. */
-#undef HAVE_STRERROR_R
-
-/* Define to 1 if you have the stricmp function. */
-#undef HAVE_STRICMP
-
-/* Define to 1 if you have the <strings.h> header file. */
-#undef HAVE_STRINGS_H
-
-/* Define to 1 if you have the <string.h> header file. */
-#undef HAVE_STRING_H
-
-/* Define to 1 if you have the strlcat function. */
-#undef HAVE_STRLCAT
-
-/* Define to 1 if you have the `strlcpy' function. */
-#undef HAVE_STRLCPY
-
-/* Define to 1 if you have the strncasecmp function. */
-#undef HAVE_STRNCASECMP
-
-/* Define to 1 if you have the strncmpi function. */
-#undef HAVE_STRNCMPI
-
-/* Define to 1 if you have the strnicmp function. */
-#undef HAVE_STRNICMP
-
-/* Define to 1 if you have the <stropts.h> header file. */
-#undef HAVE_STROPTS_H
-
-/* Define to 1 if you have the strstr function. */
-#undef HAVE_STRSTR
-
-/* Define to 1 if you have the strtok_r function. */
-#undef HAVE_STRTOK_R
-
-/* Define to 1 if you have the strtoll function. */
-#undef HAVE_STRTOLL
-
-/* if struct sockaddr_storage is defined */
-#undef HAVE_STRUCT_SOCKADDR_STORAGE
-
-/* Define to 1 if you have the timeval struct. */
-#undef HAVE_STRUCT_TIMEVAL
-
-/* Define to 1 if you have the <sys/filio.h> header file. */
-#undef HAVE_SYS_FILIO_H
-
-/* Define to 1 if you have the <sys/ioctl.h> header file. */
-#undef HAVE_SYS_IOCTL_H
-
-/* Define to 1 if you have the <sys/param.h> header file. */
-#undef HAVE_SYS_PARAM_H
-
-/* Define to 1 if you have the <sys/poll.h> header file. */
-#undef HAVE_SYS_POLL_H
-
-/* Define to 1 if you have the <sys/resource.h> header file. */
-#undef HAVE_SYS_RESOURCE_H
-
-/* Define to 1 if you have the <sys/select.h> header file. */
-#undef HAVE_SYS_SELECT_H
-
-/* Define to 1 if you have the <sys/socket.h> header file. */
-#undef HAVE_SYS_SOCKET_H
-
-/* Define to 1 if you have the <sys/sockio.h> header file. */
-#undef HAVE_SYS_SOCKIO_H
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#undef HAVE_SYS_STAT_H
-
-/* Define to 1 if you have the <sys/time.h> header file. */
-#undef HAVE_SYS_TIME_H
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#undef HAVE_SYS_TYPES_H
-
-/* Define to 1 if you have the <sys/uio.h> header file. */
-#undef HAVE_SYS_UIO_H
-
-/* Define to 1 if you have the <sys/un.h> header file. */
-#undef HAVE_SYS_UN_H
-
-/* Define to 1 if you have the <sys/utime.h> header file. */
-#undef HAVE_SYS_UTIME_H
-
-/* Define to 1 if you have the <termios.h> header file. */
-#undef HAVE_TERMIOS_H
-
-/* Define to 1 if you have the <termio.h> header file. */
-#undef HAVE_TERMIO_H
-
-/* Define to 1 if you have the <time.h> header file. */
-#undef HAVE_TIME_H
-
-/* Define to 1 if you have the <tld.h> header file. */
-#undef HAVE_TLD_H
-
-/* Define to 1 if you have the `tld_strerror' function. */
-#undef HAVE_TLD_STRERROR
-
-/* Define to 1 if you have the `uname' function. */
-#undef HAVE_UNAME
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H
-
-/* Define to 1 if you have the `utime' function. */
-#undef HAVE_UTIME
-
-/* Define to 1 if you have the <utime.h> header file. */
-#undef HAVE_UTIME_H
-
-/* Define to 1 if compiler supports C99 variadic macro style. */
-#undef HAVE_VARIADIC_MACROS_C99
-
-/* Define to 1 if compiler supports old gcc variadic macro style. */
-#undef HAVE_VARIADIC_MACROS_GCC
-
-/* Define to 1 if you have the winber.h header file. */
-#undef HAVE_WINBER_H
-
-/* Define to 1 if you have the windows.h header file. */
-#undef HAVE_WINDOWS_H
-
-/* Define to 1 if you have the winldap.h header file. */
-#undef HAVE_WINLDAP_H
-
-/* Define to 1 if you have the winsock2.h header file. */
-#undef HAVE_WINSOCK2_H
-
-/* Define to 1 if you have the winsock.h header file. */
-#undef HAVE_WINSOCK_H
-
-/* Define this symbol if your OS supports changing the contents of argv */
-#undef HAVE_WRITABLE_ARGV
-
-/* Define to 1 if you have the writev function. */
-#undef HAVE_WRITEV
-
-/* Define to 1 if you have the ws2tcpip.h header file. */
-#undef HAVE_WS2TCPIP_H
-
-/* Define to 1 if you have the <x509.h> header file. */
-#undef HAVE_X509_H
-
-/* if you have the zlib.h header file */
-#undef HAVE_ZLIB_H
-
-/* Define to the sub-directory in which libtool stores uninstalled libraries.
-   */
-#undef LT_OBJDIR
-
-/* Define to 1 if you are building a native Windows target. */
-#undef NATIVE_WINDOWS
-
-/* Define to 1 if you need the lber.h header file even with ldap.h */
-#undef NEED_LBER_H
-
-/* Define to 1 if you need the malloc.h header file even with stdlib.h */
-#undef NEED_MALLOC_H
-
-/* Define to 1 if you need the memory.h header file even with stdlib.h */
-#undef NEED_MEMORY_H
-
-/* Define to 1 if _REENTRANT preprocessor symbol must be defined. */
-#undef NEED_REENTRANT
-
-/* Define to 1 if _THREAD_SAFE preprocessor symbol must be defined. */
-#undef NEED_THREAD_SAFE
-
-/* cpu-machine-OS */
-#undef OS
-
-/* Name of package */
-#undef PACKAGE
-
-/* Define to the address where bug reports for this package should be sent. */
-#undef PACKAGE_BUGREPORT
-
-/* Define to the full name of this package. */
-#undef PACKAGE_NAME
-
-/* Define to the full name and version of this package. */
-#undef PACKAGE_STRING
-
-/* Define to the one symbol short name of this package. */
-#undef PACKAGE_TARNAME
-
-/* Define to the home page for this package. */
-#undef PACKAGE_URL
-
-/* Define to the version of this package. */
-#undef PACKAGE_VERSION
-
-/* a suitable file to read random data from */
-#undef RANDOM_FILE
-
-/* Define to the type of arg 1 for recvfrom. */
-#undef RECVFROM_TYPE_ARG1
-
-/* Define to the type pointed by arg 2 for recvfrom. */
-#undef RECVFROM_TYPE_ARG2
-
-/* Define to 1 if the type pointed by arg 2 for recvfrom is void. */
-#undef RECVFROM_TYPE_ARG2_IS_VOID
-
-/* Define to the type of arg 3 for recvfrom. */
-#undef RECVFROM_TYPE_ARG3
-
-/* Define to the type of arg 4 for recvfrom. */
-#undef RECVFROM_TYPE_ARG4
-
-/* Define to the type pointed by arg 5 for recvfrom. */
-#undef RECVFROM_TYPE_ARG5
-
-/* Define to 1 if the type pointed by arg 5 for recvfrom is void. */
-#undef RECVFROM_TYPE_ARG5_IS_VOID
-
-/* Define to the type pointed by arg 6 for recvfrom. */
-#undef RECVFROM_TYPE_ARG6
-
-/* Define to 1 if the type pointed by arg 6 for recvfrom is void. */
-#undef RECVFROM_TYPE_ARG6_IS_VOID
-
-/* Define to the function return type for recvfrom. */
-#undef RECVFROM_TYPE_RETV
-
-/* Define to the type of arg 1 for recv. */
-#undef RECV_TYPE_ARG1
-
-/* Define to the type of arg 2 for recv. */
-#undef RECV_TYPE_ARG2
-
-/* Define to the type of arg 3 for recv. */
-#undef RECV_TYPE_ARG3
-
-/* Define to the type of arg 4 for recv. */
-#undef RECV_TYPE_ARG4
-
-/* Define to the function return type for recv. */
-#undef RECV_TYPE_RETV
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#undef RETSIGTYPE
-
-/* Define to the type qualifier of arg 5 for select. */
-#undef SELECT_QUAL_ARG5
-
-/* Define to the type of arg 1 for select. */
-#undef SELECT_TYPE_ARG1
-
-/* Define to the type of args 2, 3 and 4 for select. */
-#undef SELECT_TYPE_ARG234
-
-/* Define to the type of arg 5 for select. */
-#undef SELECT_TYPE_ARG5
-
-/* Define to the function return type for select. */
-#undef SELECT_TYPE_RETV
-
-/* Define to the type qualifier of arg 2 for send. */
-#undef SEND_QUAL_ARG2
-
-/* Define to the type of arg 1 for send. */
-#undef SEND_TYPE_ARG1
-
-/* Define to the type of arg 2 for send. */
-#undef SEND_TYPE_ARG2
-
-/* Define to the type of arg 3 for send. */
-#undef SEND_TYPE_ARG3
-
-/* Define to the type of arg 4 for send. */
-#undef SEND_TYPE_ARG4
-
-/* Define to the function return type for send. */
-#undef SEND_TYPE_RETV
-
-/* The size of `int', as computed by sizeof. */
-#undef SIZEOF_INT
-
-/* The size of `long', as computed by sizeof. */
-#undef SIZEOF_LONG
-
-/* The size of `off_t', as computed by sizeof. */
-#undef SIZEOF_OFF_T
-
-/* The size of `short', as computed by sizeof. */
-#undef SIZEOF_SHORT
-
-/* The size of `size_t', as computed by sizeof. */
-#undef SIZEOF_SIZE_T
-
-/* The size of `time_t', as computed by sizeof. */
-#undef SIZEOF_TIME_T
-
-/* The size of `void*', as computed by sizeof. */
-#undef SIZEOF_VOIDP
-
-/* Define to 1 if you have the ANSI C header files. */
-#undef STDC_HEADERS
-
-/* Define to the type of arg 3 for strerror_r. */
-#undef STRERROR_R_TYPE_ARG3
-
-/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-#undef TIME_WITH_SYS_TIME
-
-/* Define to enable c-ares support */
-#undef USE_ARES
-
-/* Define to disable non-blocking sockets. */
-#undef USE_BLOCKING_SOCKETS
-
-/* if GnuTLS is enabled */
-#undef USE_GNUTLS
-
-/* if libSSH2 is in use */
-#undef USE_LIBSSH2
-
-/* If you want to build curl with the built-in manual */
-#undef USE_MANUAL
-
-/* if NSS is enabled */
-#undef USE_NSS
-
-/* if OpenSSL is in use */
-#undef USE_OPENSSL
-
-/* if SSL is enabled */
-#undef USE_SSLEAY
-
-/* Define to 1 if you are building a Windows target without large file
-   support. */
-#undef USE_WIN32_LARGE_FILES
-
-/* to enable SSPI support */
-#undef USE_WINDOWS_SSPI
-
-/* Define to 1 if using yaSSL in OpenSSL compatibility mode. */
-#undef USE_YASSLEMUL
-
-/* Version number of package */
-#undef VERSION
-
-/* Define to avoid automatic inclusion of winsock.h */
-#undef WIN32_LEAN_AND_MEAN
-
-/* Define to 1 if OS is AIX. */
-#ifndef _ALL_SOURCE
-#  undef _ALL_SOURCE
-#endif
-
-/* Number of bits in a file offset, on hosts where this is settable. */
-#undef _FILE_OFFSET_BITS
-
-/* Define for large files, on AIX-style hosts. */
-#undef _LARGE_FILES
-
-/* Define to empty if `const' does not conform to ANSI C. */
-#undef const
-
-/* Type to use in place of in_addr_t when system does not provide it. */
-#undef in_addr_t
-
-/* 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 `unsigned int' if <sys/types.h> does not define. */
-#undef size_t
-
-/* the signed version of size_t */
-#undef ssize_t
diff --git a/src/other/curl/src/curlutil.c b/src/other/curl/src/curlutil.c
deleted file mode 100644
index bca2db7..0000000
--- a/src/other/curl/src/curlutil.c
+++ /dev/null
@@ -1,134 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include "curlutil.h"
-
-#if defined(WIN32) && !defined(MSDOS)
-
-struct timeval cutil_tvnow(void)
-{
-  /*
-  ** GetTickCount() is available on _all_ Windows versions from W95 up
-  ** to nowadays. Returns milliseconds elapsed since last system boot,
-  ** increases monotonically and wraps once 49.7 days have elapsed.
-  */
-  struct timeval now;
-  DWORD milliseconds = GetTickCount();
-  now.tv_sec = milliseconds / 1000;
-  now.tv_usec = (milliseconds % 1000) * 1000;
-  return now;
-}
-
-#elif defined(HAVE_CLOCK_GETTIME_MONOTONIC)
-
-struct timeval cutil_tvnow(void)
-{
-  /*
-  ** clock_gettime() is granted to be increased monotonically when the
-  ** monotonic clock is queried. Time starting point is unspecified, it
-  ** could be the system start-up time, the Epoch, or something else,
-  ** in any case the time starting point does not change once that the
-  ** system has started up.
-  */
-  struct timeval now;
-  struct timespec tsnow;
-  if(0 == clock_gettime(CLOCK_MONOTONIC, &tsnow)) {
-    now.tv_sec = tsnow.tv_sec;
-    now.tv_usec = tsnow.tv_nsec / 1000;
-  }
-  /*
-  ** Even when the configure process has truly detected monotonic clock
-  ** availability, it might happen that it is not actually available at
-  ** run-time. When this occurs simply fallback to other time source.
-  */
-#ifdef HAVE_GETTIMEOFDAY
-  else
-    (void)gettimeofday(&now, NULL);
-#else
-  else {
-    now.tv_sec = (long)time(NULL);
-    now.tv_usec = 0;
-  }
-#endif
-  return now;
-}
-
-#elif defined(HAVE_GETTIMEOFDAY)
-
-struct timeval cutil_tvnow(void)
-{
-  /*
-  ** gettimeofday() is not granted to be increased monotonically, due to
-  ** clock drifting and external source time synchronization it can jump
-  ** forward or backward in time.
-  */
-  struct timeval now;
-  (void)gettimeofday(&now, NULL);
-  return now;
-}
-
-#else
-
-struct timeval cutil_tvnow(void)
-{
-  /*
-  ** time() returns the value of time in seconds since the Epoch.
-  */
-  struct timeval now;
-  now.tv_sec = (long)time(NULL);
-  now.tv_usec = 0;
-  return now;
-}
-
-#endif
-
-/*
- * Make sure that the first argument is the more recent time, as otherwise
- * we'll get a weird negative time-diff back...
- *
- * Returns: the time difference in number of milliseconds.
- */
-long cutil_tvdiff(struct timeval newer, struct timeval older)
-{
-  return (newer.tv_sec-older.tv_sec)*1000+
-    (newer.tv_usec-older.tv_usec)/1000;
-}
-
-/*
- * Same as cutil_tvdiff but with full usec resolution.
- *
- * Returns: the time difference in seconds with subsecond resolution.
- */
-double cutil_tvdiff_secs(struct timeval newer, struct timeval older)
-{
-  return (double)(newer.tv_sec-older.tv_sec)+
-    (double)(newer.tv_usec-older.tv_usec)/1000000.0;
-}
-
-/* return the number of seconds in the given input timeval struct */
-long cutil_tvlong(struct timeval t1)
-{
-  return t1.tv_sec;
-}
-
diff --git a/src/other/curl/src/curlutil.h b/src/other/curl/src/curlutil.h
deleted file mode 100644
index a993a77..0000000
--- a/src/other/curl/src/curlutil.h
+++ /dev/null
@@ -1,49 +0,0 @@
-#ifndef __CURL_SRC_UTIL_H
-#define __CURL_SRC_UTIL_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-
-struct timeval cutil_tvnow(void);
-
-/*
- * Make sure that the first argument (t1) is the more recent time and t2 is
- * the older time, as otherwise you get a weird negative time-diff back...
- *
- * Returns: the time difference in number of milliseconds.
- */
-long cutil_tvdiff(struct timeval t1, struct timeval t2);
-
-/*
- * Same as cutil_tvdiff but with full usec resolution.
- *
- * Returns: the time difference in seconds with subsecond resolution.
- */
-double cutil_tvdiff_secs(struct timeval t1, struct timeval t2);
-
-long cutil_tvlong(struct timeval t1);
-
-
-#endif  /* __CURL_SRC_UTIL_H */
-
diff --git a/src/other/curl/src/getpass.c b/src/other/curl/src/getpass.c
deleted file mode 100644
index b441a5a..0000000
--- a/src/other/curl/src/getpass.c
+++ /dev/null
@@ -1,267 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* This file is a reimplementation of the previous one, due to license
-   problems. */
-
-#include "setup.h"
-
-#ifndef HAVE_GETPASS_R
-/* this file is only for systems without getpass_r() */
-
-#include <stdio.h>
-#include <string.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#include "getpass.h"
-
-#ifdef HAVE_FCNTL_H
-#include <fcntl.h>
-#endif
-#ifdef HAVE_TERMIOS_H
-#include <termios.h>
-#else
-#ifdef HAVE_TERMIO_H
-#include <termio.h>
-#endif
-#endif
-
-/* The last #include file should be: */
-#if defined(CURLDEBUG) && defined(CURLTOOLDEBUG)
-#include "memdebug.h"
-#endif
-
-#ifdef __VMS
-/* VMS implementation */
-#include descrip
-#include starlet
-#include iodef
-/* #include iosbdef */
-char *getpass_r(const char *prompt, char *buffer, size_t buflen)
-{
-  long sts;
-  short chan;
-
-  /* MSK, 23-JAN-2004, iosbdef.h wasn't in VAX V7.2 or CC 6.4  */
-  /* distribution so I created this.  May revert back later to */
-  /* struct _iosb iosb;                                        */
-  struct _iosb
-     {
-     short int iosb$w_status; /* status     */
-     short int iosb$w_bcnt;   /* byte count */
-     int       unused;        /* unused     */
-     } iosb;
-
-  $DESCRIPTOR(ttdesc, "TT");
-
-  buffer[0]='\0';
-  sts = sys$assign(&ttdesc, &chan,0,0);
-  if (sts & 1) {
-    sts = sys$qiow(0, chan,
-                   IO$_READPROMPT | IO$M_NOECHO,
-                   &iosb, 0, 0, buffer, buflen, 0, 0,
-                   prompt, strlen(prompt));
-
-    if((sts & 1) && (iosb.iosb$w_status&1))
-      buffer[iosb.iosb$w_bcnt] = '\0';
-
-    sts = sys$dassgn(chan);
-  }
-  return buffer; /* we always return success */
-}
-#define DONE
-#endif /* __VMS */
-
-
-#ifdef WIN32
-/* Windows implementation */
-#include <conio.h>
-#endif
-
-#ifdef __SYMBIAN32__
-#define getch() getchar()
-#endif
-
-#if defined(WIN32) || defined(__SYMBIAN32__)
-
-char *getpass_r(const char *prompt, char *buffer, size_t buflen)
-{
-  size_t i;
-  fputs(prompt, stderr);
-
-  for(i=0; i<buflen; i++) {
-    buffer[i] = (char)getch();
-    if ( buffer[i] == '\r' || buffer[i] == '\n' ) {
-      buffer[i] = 0;
-      break;
-    }
-    else
-      if ( buffer[i] == '\b')
-        /* remove this letter and if this is not the first key, remove the
-           previous one as well */
-        i = i - (i>=1?2:1);
-  }
-#ifndef __SYMBIAN32__
-  /* since echo is disabled, print a newline */
-  fputs("\n", stderr);
-#endif
-  /* if user didn't hit ENTER, terminate buffer */
-  if (i==buflen)
-    buffer[buflen-1]=0;
-
-  return buffer; /* we always return success */
-}
-#define DONE
-#endif /* WIN32 || __SYMBIAN32__ */
-
-#ifdef NETWARE
-/* NetWare implementation */
-#ifdef __NOVELL_LIBC__
-#include <screen.h>
-char *getpass_r(const char *prompt, char *buffer, size_t buflen)
-{
-  return getpassword(prompt, buffer, buflen);
-}
-#else
-#include <nwconio.h>
-char *getpass_r(const char *prompt, char *buffer, size_t buflen)
-{
-  size_t i = 0;
-
-  printf("%s", prompt);
-  do {
-    buffer[i++] = getch();
-    if (buffer[i-1] == '\b') {
-      /* remove this letter and if this is not the first key,
-         remove the previous one as well */
-      if (i > 1) {
-        printf("\b \b");
-        i = i - 2;
-      } else {
-        RingTheBell();
-        i = i - 1;
-      }
-    } else if (buffer[i-1] != 13) {
-      putchar('*');
-    }
-  } while ((buffer[i-1] != 13) && (i < buflen));
-  buffer[i-1] = 0;
-  printf("\r\n");
-  return buffer;
-}
-#endif /* __NOVELL_LIBC__ */
-#define DONE
-#endif /* NETWARE */
-
-#ifndef DONE /* not previously provided */
-
-#ifdef HAVE_TERMIOS_H
-#define struct_term struct termios
-#else
-#ifdef HAVE_TERMIO_H
-#define struct_term  struct termio
-#else
-#undef struct_term
-#endif
-#endif
-
-static bool ttyecho(bool enable, int fd)
-{
-#ifdef struct_term
-  static struct_term withecho;
-  static struct_term noecho;
-#endif
-  if(!enable) {
-  /* disable echo by extracting the current 'withecho' mode and remove the
-     ECHO bit and set back the struct */
-#ifdef HAVE_TERMIOS_H
-    tcgetattr(fd, &withecho);
-    noecho = withecho;
-    noecho.c_lflag &= ~ECHO;
-    tcsetattr(fd, TCSANOW, &noecho);
-#else /* HAVE_TERMIOS_H */
-#ifdef HAVE_TERMIO_H
-    ioctl(fd, TCGETA, &withecho);
-    noecho = withecho;
-    noecho.c_lflag &= ~ECHO;
-    ioctl(fd, TCSETA, &noecho);
-#else /* HAVE_TERMIO_H */
-/* neither HAVE_TERMIO_H nor HAVE_TERMIOS_H, we can't disable echo! */
-    (void)fd; /* prevent compiler warning on unused variable */
-    return FALSE; /* not disabled */
-#endif
-#endif
-    return TRUE; /* disabled */
-  }
-  else {
-    /* re-enable echo, assumes we disabled it before (and set the structs we
-       now use to reset the terminal status) */
-#ifdef HAVE_TERMIOS_H
-    tcsetattr(fd, TCSAFLUSH, &withecho);
-#else /* HAVE_TERMIOS_H */
-#ifdef HAVE_TERMIO_H
-    ioctl(fd, TCSETA, &withecho);
-#else
-/* neither HAVE_TERMIO_H nor HAVE_TERMIOS_H */
-    return FALSE; /* not enabled */
-#endif
-#endif
-    return TRUE; /* enabled */
-  }
-}
-
-char *getpass_r(const char *prompt, /* prompt to display */
-                char *password,     /* buffer to store password in */
-                size_t buflen)      /* size of buffer to store password in */
-{
-  ssize_t nread;
-  bool disabled;
-  int fd=open("/dev/tty", O_RDONLY);
-  if(-1 == fd)
-    fd = 1; /* use stdin if the tty couldn't be used */
-
-  disabled = ttyecho(FALSE, fd); /* disable terminal echo */
-
-  fputs(prompt, stderr);
-  nread=read(fd, password, buflen);
-  if(nread > 0)
-    password[--nread]=0; /* zero terminate where enter is stored */
-  else
-    password[0]=0; /* got nothing */
-
-  if(disabled) {
-    /* if echo actually was disabled, add a newline */
-    fputs("\n", stderr);
-    (void)ttyecho(TRUE, fd); /* enable echo */
-  }
-
-  if(1 != fd)
-    close(fd);
-
-  return password; /* return pointer to buffer */
-}
-
-#endif /* DONE */
-#endif /* HAVE_GETPASS_R */
diff --git a/src/other/curl/src/getpass.h b/src/other/curl/src/getpass.h
deleted file mode 100644
index 3b29d47..0000000
--- a/src/other/curl/src/getpass.h
+++ /dev/null
@@ -1,34 +0,0 @@
-#ifndef __GETPASS_H
-#define __GETPASS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#ifndef HAVE_GETPASS_R
-/* If there's a system-provided function named like this, we trust it is
-   also found in one of the standard headers. */
-
-/*
- * Returning NULL will abort the continued operation!
- */
-char* getpass_r(const char *prompt, char* buffer, size_t buflen );
-#endif
-
-#endif
diff --git a/src/other/curl/src/homedir.c b/src/other/curl/src/homedir.c
deleted file mode 100644
index ab1d369..0000000
--- a/src/other/curl/src/homedir.c
+++ /dev/null
@@ -1,120 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#ifdef HAVE_PWD_H
-#include <pwd.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef __VMS
-#include <unixlib.h>
-#endif
-
-#include "homedir.h"
-
-#if defined(CURLDEBUG) && defined(CURLTOOLDEBUG)
-#include "memdebug.h"
-#endif
-
-static
-char *GetEnv(const char *variable, char do_expand)
-{
-  char *env = NULL;
-#ifdef WIN32
-  char  buf1[1024], buf2[1024];
-  DWORD rc;
-
-  /* Don't use getenv(); it doesn't find variable added after program was
-   * started. Don't accept truncated results (i.e. rc >= sizeof(buf1)).  */
-
-  rc = GetEnvironmentVariable(variable, buf1, sizeof(buf1));
-  if (rc > 0 && rc < sizeof(buf1)) {
-    env = buf1;
-    variable = buf1;
-  }
-  if (do_expand && strchr(variable,'%')) {
-    /* buf2 == variable if not expanded */
-    rc = ExpandEnvironmentStrings (variable, buf2, sizeof(buf2));
-    if (rc > 0 && rc < sizeof(buf2) &&
-        !strchr(buf2,'%'))    /* no vars still unexpanded */
-      env = buf2;
-  }
-#else
-  (void)do_expand;
-#ifdef __VMS
-  env = getenv(variable);
-  if (env && strcmp("HOME",variable) == 0) {
-        env = decc_translate_vms(env);
-  }
-#else
-  /* no length control */
-  env = getenv(variable);
-#endif
-#endif
-  return (env && env[0])?strdup(env):NULL;
-}
-
-/* return the home directory of the current user as an allocated string */
-char *homedir(void)
-{
-  char *home;
-
-  home = GetEnv("CURL_HOME", FALSE);
-  if(home)
-    return home;
-
-  home = GetEnv("HOME", FALSE);
-  if(home)
-    return home;
-
-#if defined(HAVE_GETPWUID) && defined(HAVE_GETEUID)
- {
-   struct passwd *pw = getpwuid(geteuid());
-
-   if (pw) {
-#ifdef __VMS
-     home = decc_translate_vms(pw->pw_dir);
-#else
-     home = pw->pw_dir;
-#endif
-     if (home && home[0])
-       home = strdup(home);
-     else
-       home = NULL;
-   }
- }
-#endif /* PWD-stuff */
-#ifdef WIN32
-  home = GetEnv("APPDATA", TRUE);
-  if(!home)
-    home = GetEnv("%USERPROFILE%\\Application Data", TRUE); /* Normally only
-                                                               on Win-2K/XP */
-#endif /* WIN32 */
-  return home;
-}
diff --git a/src/other/curl/src/homedir.h b/src/other/curl/src/homedir.h
deleted file mode 100644
index c88d517..0000000
--- a/src/other/curl/src/homedir.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef HEADER_CURL_HOMEDIR_H
-#define HEADER_CURL_HOMEDIR_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-char *homedir(void);
-
-#endif /* HEADER_CURL_HOMEDIR_H */
diff --git a/src/other/curl/src/hugehelp.c b/src/other/curl/src/hugehelp.c
deleted file mode 100644
index 7bcb5f6..0000000
--- a/src/other/curl/src/hugehelp.c
+++ /dev/null
@@ -1,7007 +0,0 @@
-#include "setup.h"
-#ifndef HAVE_LIBZ
-/*
- * NEVER EVER edit this manually, fix the mkhelp.pl script instead!
- * Generation time: Sat Jul 28 16:48:06 2012
- */
-#include "setup.h"
-#ifdef USE_MANUAL
-#include "hugehelp.h"
-#include <stdio.h>
-void hugehelp(void)
-{
-   fputs(
-"                                  _   _ ____  _\n"
-"  Project                     ___| | | |  _ \\| |\n"
-"                             / __| | | | |_) | |\n"
-"                            | (__| |_| |  _ <| |___\n"
-"                             \\___|\\___/|_| \\_\\_____|\n"
-"\n"
-"NAME\n"
-"       curl - transfer a URL\n"
-"\n"
-"SYNOPSIS\n"
-"       curl [options] [URL...]\n"
-"\n"
-"DESCRIPTION\n"
-"       curl  is  a tool to transfer data from or to a server, using one of the\n"
-, stdout);
- fputs(
-"       supported protocols (HTTP, HTTPS, FTP, FTPS,  SCP,  SFTP,  TFTP,  DICT,\n"
-"       TELNET,  LDAP  or  FILE).  The command is designed to work without user\n"
-"       interaction.\n"
-"\n"
-"       curl offers a busload of useful tricks like proxy support, user authen-\n"
-"       tication,  FTP upload, HTTP post, SSL connections, cookies, file trans-\n"
-"       fer resume and more. As you will see below, the number of features will\n"
-"       make your head spin!\n"
-"\n"
-, stdout);
- fputs(
-"       curl  is  powered  by  libcurl  for  all transfer-related features. See\n"
-"       libcurl(3) for details.\n"
-"\n"
-"URL\n"
-"       The URL syntax is protocol-dependent. You'll find a  detailed  descrip-\n"
-"       tion in RFC 3986.\n"
-"\n"
-"       You  can  specify  multiple  URLs or parts of URLs by writing part sets\n"
-"       within braces as in:\n"
-"\n"
-"        http://site.{one,two,three}.com\n"
-"\n"
-"       or you can get sequences of alphanumeric series by using [] as in:\n"
-"\n"
-, stdout);
- fputs(
-"        ftp://ftp.numericals.com/file[1-100].txt\n"
-"        ftp://ftp.numericals.com/file[001-100].txt    (with leading zeros)\n"
-"        ftp://ftp.letters.com/file[a-z].txt\n"
-"\n"
-"       No nesting of the sequences is supported at the moment, but you can use\n"
-"       several ones next to each other:\n"
-"\n"
-"        http://any.org/archive[1996-1999]/vol[1-4]/part{a,b,c}.html\n"
-"\n"
-"       You  can  specify  any amount of URLs on the command line. They will be\n"
-"       fetched in a sequential manner in the specified order.\n"
-"\n"
-, stdout);
- fputs(
-"       Since curl 7.15.1 you can also specify a step counter for  the  ranges,\n"
-"       so that you can get every Nth number or letter:\n"
-"\n"
-"        http://www.numericals.com/file[1-100:10].txt\n"
-"        http://www.letters.com/file[a-z:2].txt\n"
-"\n"
-"       If  you  specify  URL  without protocol:// prefix, curl will attempt to\n"
-"       guess what protocol you might want. It will then default  to  HTTP  but\n"
-"       try  other  protocols based on often-used host name prefixes. For exam-\n"
-, stdout);
- fputs(
-"       ple, for host names starting with \"ftp.\" curl will assume you  want  to\n"
-"       speak FTP.\n"
-"\n"
-"       curl  will  do  its best to use what you pass to it as a URL. It is not\n"
-"       trying to validate it as a syntactically correct URL by any  means  but\n"
-"       is instead very liberal with what it accepts.\n"
-"\n"
-"       Curl will attempt to re-use connections for multiple file transfers, so\n"
-"       that getting many files from the same server will not do multiple  con-\n"
-, stdout);
- fputs(
-"       nects / handshakes. This improves speed. Of course this is only done on\n"
-"       files specified on a single command line and  cannot  be  used  between\n"
-"       separate curl invokes.\n"
-"PROGRESS METER\n"
-"       curl  normally  displays a progress meter during operations, indicating\n"
-"       the amount of transferred data,  transfer  speeds  and  estimated  time\n"
-"       left, etc.\n"
-"\n"
-"       However,  since  curl displays this data to the terminal by default, if\n"
-, stdout);
- fputs(
-"       you invoke curl to do an operation and it is about to write data to the\n"
-"       terminal,  it disables the progress meter as otherwise it would mess up\n"
-"       the output mixing progress meter and response data.\n"
-"\n"
-"       If you want a progress meter for HTTP POST or PUT requests, you need to\n"
-"       redirect  the  response  output to a file, using shell redirect (>), -o\n"
-"       [file] or similar.\n"
-"\n"
-"       It is not the same case for FTP upload as that operation does not  spit\n"
-, stdout);
- fputs(
-"       out any response data to the terminal.\n"
-"\n"
-"       If you prefer a progress \"bar\" instead of the regular meter, -# is your\n"
-"       friend.\n"
-"\n"
-"OPTIONS\n"
-"       In general, all boolean options are enabled with --option and yet again\n"
-"       disabled  with --no-option. That is, you use the exact same option name\n"
-"       but prefix it with \"no-\". However, in this list we mostly only list and\n"
-"       show  the --option version of them. (This concept with --no options was\n"
-, stdout);
- fputs(
-"       added in  7.19.0.  Previously  most  options  were  toggled  on/off  on\n"
-"       repeated use of the same command line option.)\n"
-"\n"
-"       -a/--append\n"
-"              (FTP/SFTP) When used in an upload, this will tell curl to append\n"
-"              to the target file  instead  of  overwriting  it.  If  the  file\n"
-"              doesn't  exist,  it  will  be  created.   Note that this flag is\n"
-"              ignored by some SSH servers (including OpenSSH).\n"
-"\n"
-"       -A/--user-agent <agent string>\n"
-, stdout);
- fputs(
-"              (HTTP) Specify the User-Agent string to send to the HTTP server.\n"
-"              Some   badly   done  CGIs  fail  if  this  field  isn't  set  to\n"
-"              \"Mozilla/4.0\". To encode blanks  in  the  string,  surround  the\n"
-"              string  with  single  quote marks. This can also be set with the\n"
-"              -H/--header option of course.\n"
-"\n"
-"              If this option is set more than once, the last one will  be  the\n"
-"              one that's used.\n"
-"\n"
-"       --anyauth\n"
-, stdout);
- fputs(
-"              (HTTP) Tells curl to figure out authentication method by itself,\n"
-"              and use the most secure one the remote site claims  to  support.\n"
-"              This is done by first doing a request and checking the response-\n"
-"              headers, thus possibly inducing  an  extra  network  round-trip.\n"
-"              This  is  used  instead  of  setting  a  specific authentication\n"
-, stdout);
- fputs(
-"              method, which you can do with  --basic,  --digest,  --ntlm,  and\n"
-"              --negotiate.\n"
-"\n"
-"              Note  that  using --anyauth is not recommended if you do uploads\n"
-"              from stdin, since it may require data to be sent twice and  then\n"
-"              the client must be able to rewind. If the need should arise when\n"
-"              uploading from stdin, the upload operation will fail.\n"
-"\n"
-"       -b/--cookie <name=data>\n"
-, stdout);
- fputs(
-"              (HTTP) Pass the data to the HTTP server as a cookie. It is  sup-\n"
-"              posedly  the data previously received from the server in a \"Set-\n"
-"              Cookie:\" line.  The data should be in the format  \"NAME1=VALUE1;\n"
-"              NAME2=VALUE2\".\n"
-"\n"
-"              If  no  '=' symbol is used in the line, it is treated as a file-\n"
-"              name to use to read previously stored cookie lines  from,  which\n"
-, stdout);
- fputs(
-"              should  be used in this session if they match. Using this method\n"
-"              also activates the \"cookie parser\" which will make  curl  record\n"
-"              incoming cookies too, which may be handy if you're using this in\n"
-"              combination with the -L/--location option. The  file  format  of\n"
-"              the  file  to  read cookies from should be plain HTTP headers or\n"
-"              the Netscape/Mozilla cookie file format.\n"
-"\n"
-, stdout);
- fputs(
-"              NOTE that the file specified with -b/--cookie is  only  used  as\n"
-"              input.  No cookies will be stored in the file. To store cookies,\n"
-"              use the -c/--cookie-jar option or you could even save  the  HTTP\n"
-"              headers to a file using -D/--dump-header!\n"
-"\n"
-"              If  this  option is set more than once, the last one will be the\n"
-"              one that's used.\n"
-"\n"
-"       -B/--use-ascii\n"
-, stdout);
- fputs(
-"              Enable ASCII transfer when using FTP or LDAP. For FTP, this  can\n"
-"              also  be enforced by using an URL that ends with \";type=A\". This\n"
-"              option causes data sent to stdout to be in text mode  for  win32\n"
-"              systems.\n"
-"\n"
-"       --basic\n"
-"              (HTTP)  Tells curl to use HTTP Basic authentication. This is the\n"
-"              default and this option is usually pointless, unless you use  it\n"
-, stdout);
- fputs(
-"              to  override  a  previously  set  option  that  sets a different\n"
-"              authentication method (such as --ntlm,  --digest,  or  --negoti-\n"
-"              ate).\n"
-"\n"
-"       --ciphers <list of ciphers>\n"
-"              (SSL) Specifies which ciphers to use in the connection. The list\n"
-"              of ciphers must specify valid ciphers. Read  up  on  SSL  cipher\n"
-"              list           details           on           this          URL:\n"
-, stdout);
- fputs(
-"              http://www.openssl.org/docs/apps/ciphers.html\n"
-"\n"
-"              NSS ciphers are done differently than OpenSSL  and  GnuTLS.  The\n"
-"              full  list of NSS ciphers is in the NSSCipherSuite entry at this\n"
-"              URL: http://directory.fedora.redhat.com/docs/mod_nss.html#Direc-\n"
-"              tives\n"
-"\n"
-"              If this option is used several times, the last one will override\n"
-"              the others.\n"
-"\n"
-"       --compressed\n"
-, stdout);
- fputs(
-"              (HTTP) Request a compressed response using one of the algorithms\n"
-"              libcurl supports, and return the uncompressed document.  If this\n"
-"              option is used and the server  sends  an  unsupported  encoding,\n"
-"              curl will report an error.\n"
-"\n"
-"       --connect-timeout <seconds>\n"
-"              Maximum  time  in  seconds  that you allow the connection to the\n"
-"              server to take.  This only limits  the  connection  phase,  once\n"
-, stdout);
- fputs(
-"              curl  has  connected this option is of no more use. See also the\n"
-"              -m/--max-time option.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -c/--cookie-jar <file name>\n"
-"              Specify to which file you want curl to write all cookies after a\n"
-"              completed  operation.  Curl  writes  all cookies previously read\n"
-"              from a specified file as  well  as  all  cookies  received  from\n"
-, stdout);
- fputs(
-"              remote server(s). If no cookies are known, no file will be writ-\n"
-"              ten. The file will be written using  the  Netscape  cookie  file\n"
-"              format.  If  you  set  the  file name to a single dash, \"-\", the\n"
-"              cookies will be written to stdout.\n"
-"\n"
-"              NOTE If the cookie jar can't be created or written to, the whole\n"
-"              curl operation won't fail or even report an error clearly. Using\n"
-, stdout);
- fputs(
-"              -v will get a warning displayed, but that is  the  only  visible\n"
-"              feedback you get about this possibly lethal situation.\n"
-"\n"
-"              If  this  option  is used several times, the last specified file\n"
-"              name will be used.\n"
-"\n"
-"       -C/--continue-at <offset>\n"
-"              Continue/Resume a previous file transfer at  the  given  offset.\n"
-"              The  given  offset  is  the  exact  number of bytes that will be\n"
-, stdout);
- fputs(
-"              skipped, counting from the beginning of the source  file  before\n"
-"              it is transferred to the destination.  If used with uploads, the\n"
-"              FTP server command SIZE will not be used by curl.\n"
-"\n"
-"              Use \"-C -\" to tell curl to automatically find out  where/how  to\n"
-"              resume  the  transfer. It then uses the given output/input files\n"
-"              to figure that out.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-, stdout);
- fputs(
-"       --create-dirs\n"
-"              When used in conjunction with the -o option,  curl  will  create\n"
-"              the  necessary  local directory hierarchy as needed. This option\n"
-"              creates the dirs mentioned with the -o option, nothing else.  If\n"
-"              the  -o file name uses no dir or if the dirs it mentions already\n"
-"              exist, no dir will be created.\n"
-"\n"
-"              To create remote directories when using FTP or SFTP, try  --ftp-\n"
-, stdout);
- fputs(
-"              create-dirs.\n"
-"\n"
-"       --crlf (FTP) Convert LF to CRLF in upload. Useful for MVS (OS/390).\n"
-"\n"
-"       --crlfile <file>\n"
-"              (HTTPS/FTPS)  Provide a file using PEM format with a Certificate\n"
-"              Revocation List that may specify peer certificates that  are  to\n"
-"              be considered revoked.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"              (Added in 7.19.7)\n"
-"\n"
-"       -d/--data <data>\n"
-, stdout);
- fputs(
-"              (HTTP)  Sends  the  specified data in a POST request to the HTTP\n"
-"              server, in the same way that a browser  does  when  a  user  has\n"
-"              filled  in an HTML form and presses the submit button. This will\n"
-"              cause curl to pass the data to the server using the content-type\n"
-"              application/x-www-form-urlencoded.  Compare to -F/--form.\n"
-"\n"
-"              -d/--data  is  the  same  as  --data-ascii.  To post data purely\n"
-, stdout);
- fputs(
-"              binary, you should instead use the --data-binary option. To URL-\n"
-"              encode the value of a form field you may use --data-urlencode.\n"
-"\n"
-"              If  any of these options is used more than once on the same com-\n"
-"              mand line, the data pieces specified  will  be  merged  together\n"
-"              with  a  separating  &-symbol.  Thus,  using  '-d name=daniel -d\n"
-"              skill=lousy'  would  generate  a  post  chunk  that  looks  like\n"
-, stdout);
- fputs(
-"              'name=daniel&skill=lousy'.\n"
-"\n"
-"              If  you  start  the data with the letter @, the rest should be a\n"
-"              file name to read the data from, or - if you want curl  to  read\n"
-"              the  data  from stdin.  The contents of the file must already be\n"
-"              URL-encoded. Multiple files can also be specified. Posting  data\n"
-"              from  a file named 'foobar' would thus be done with --data  at foo-\n"
-"              bar.\n"
-"\n"
-, stdout);
- fputs(
-"       --data-binary <data>\n"
-"              (HTTP) This posts data exactly as specified with no  extra  pro-\n"
-"              cessing whatsoever.\n"
-"\n"
-"              If  you  start  the data with the letter @, the rest should be a\n"
-"              filename.  Data is posted in a similar  manner  as  --data-ascii\n"
-"              does,  except  that  newlines  are preserved and conversions are\n"
-"              never done.\n"
-"\n"
-"              If this option is used several times,  the  ones  following  the\n"
-, stdout);
- fputs(
-"              first will append data as described in -d/--data.\n"
-"\n"
-"       --data-urlencode <data>\n"
-"              (HTTP) This posts data, similar to the other --data options with\n"
-"              the exception that this performs URL-encoding. (Added in 7.18.0)\n"
-"\n"
-"              To be CGI-compliant, the <data> part should begin  with  a  name\n"
-"              followed  by a separator and a content specification. The <data>\n"
-, stdout);
- fputs(
-"              part can be passed to curl using one of the following syntaxes:\n"
-"\n"
-"              content\n"
-"                     This will make curl URL-encode the content and pass  that\n"
-"                     on.  Just  be careful so that the content doesn't contain\n"
-"                     any = or @ symbols, as that will  then  make  the  syntax\n"
-"                     match one of the other cases below!\n"
-"\n"
-"              =content\n"
-"                     This  will make curl URL-encode the content and pass that\n"
-, stdout);
- fputs(
-"                     on. The preceding = symbol is not included in the data.\n"
-"\n"
-"              name=content\n"
-"                     This will make curl URL-encode the content part and  pass\n"
-"                     that  on.  Note that the name part is expected to be URL-\n"
-"                     encoded already.\n"
-"\n"
-"              @filename\n"
-"                     This will  make  curl  load  data  from  the  given  file\n"
-"                     (including  any  newlines), URL-encode that data and pass\n"
-, stdout);
- fputs(
-"                     it on in the POST.\n"
-"\n"
-"              name at filename\n"
-"                     This will  make  curl  load  data  from  the  given  file\n"
-"                     (including  any  newlines), URL-encode that data and pass\n"
-"                     it on in the POST. The  name  part  gets  an  equal  sign\n"
-"                     appended, resulting in name=urlencoded-file-content. Note\n"
-"                     that the name is expected to be URL-encoded already.\n"
-"\n"
-"       --digest\n"
-, stdout);
- fputs(
-"              (HTTP) Enables HTTP Digest authentication. This is a authentica-\n"
-"              tion that prevents the password from being sent over the wire in\n"
-"              clear text. Use this in combination with  the  normal  -u/--user\n"
-"              option to set user name and password. See also --ntlm, --negoti-\n"
-"              ate and --anyauth for related options.\n"
-"\n"
-"              If this option is used several times, the following  occurrences\n"
-, stdout);
- fputs(
-"              make no difference.\n"
-"\n"
-"       --disable-eprt\n"
-"              (FTP) Tell curl to disable the use of the EPRT and LPRT commands\n"
-"              when doing active FTP transfers. Curl will normally always first\n"
-"              attempt  to use EPRT, then LPRT before using PORT, but with this\n"
-"              option, it will use PORT right away. EPRT and  LPRT  are  exten-\n"
-"              sions  to  the  original  FTP  protocol, and may not work on all\n"
-, stdout);
- fputs(
-"              servers, but they enable more functionality in a better way than\n"
-"              the traditional PORT command.\n"
-"\n"
-"              Since  curl 7.19.0, --eprt can be used to explicitly enable EPRT\n"
-"              again and --no-eprt is an alias for --disable-eprt.\n"
-"\n"
-"              Disabling EPRT only changes the active behavior. If you want  to\n"
-"              switch  to  passive  mode  you  need to not use -P/--ftp-port or\n"
-, stdout);
- fputs(
-"              force it with --ftp-pasv.\n"
-"\n"
-"       --disable-epsv\n"
-"              (FTP) Tell curl to disable the use  of  the  EPSV  command  when\n"
-"              doing  passive  FTP  transfers.  Curl will normally always first\n"
-"              attempt to use EPSV before PASV, but with this option,  it  will\n"
-"              not try using EPSV.\n"
-"\n"
-"              Since  curl 7.19.0, --epsv can be used to explicitly enable EPRT\n"
-, stdout);
- fputs(
-"              again and --no-epsv is an alias for --disable-epsv.\n"
-"\n"
-"              Disabling EPSV only changes the passive behavior. If you want to\n"
-"              switch to active mode you need to use -P/--ftp-port.\n"
-"\n"
-"       -D/--dump-header <file>\n"
-"              Write the protocol headers to the specified file.\n"
-"\n"
-"              This  option  is handy to use when you want to store the headers\n"
-"              that a HTTP site sends to you. Cookies from  the  headers  could\n"
-, stdout);
- fputs(
-"              then   be  read  in  a  second  curl  invocation  by  using  the\n"
-"              -b/--cookie option! The -c/--cookie-jar option is however a bet-\n"
-"              ter way to store cookies.\n"
-"\n"
-"              When  used  in FTP, the FTP server response lines are considered\n"
-"              being \"headers\" and thus are saved there.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -e/--referer <URL>\n"
-, stdout);
- fputs(
-"              (HTTP) Sends the \"Referer Page\" information to the HTTP  server.\n"
-"              This  can also be set with the -H/--header flag of course.  When\n"
-"              used with -L/--location you can append \";auto\" to the  --referer\n"
-"              URL to make curl automatically set the previous URL when it fol-\n"
-"              lows a Location: header. The \";auto\" string can be  used  alone,\n"
-"              even if you don't set an initial --referer.\n"
-"\n"
-, stdout);
- fputs(
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       --engine <name>\n"
-"              Select  the  OpenSSL crypto engine to use for cipher operations.\n"
-"              Use --engine list  to  print  a  list  of  build-time  supported\n"
-"              engines.  Note  that  not  all  (or  none) of the engines may be\n"
-"              available at run-time.\n"
-"\n"
-"       --environment\n"
-"              (RISC OS ONLY) Sets a range of environment variables, using  the\n"
-, stdout);
- fputs(
-"              names the -w option supports, to allow easier extraction of use-\n"
-"              ful information after having run curl.\n"
-"\n"
-"       --egd-file <file>\n"
-"              (SSL) Specify the path name  to  the  Entropy  Gathering  Daemon\n"
-"              socket.  The  socket  is  used to seed the random engine for SSL\n"
-"              connections. See also the --random-file option.\n"
-"\n"
-"       -E/--cert <certificate[:password]>\n"
-, stdout);
- fputs(
-"              (SSL) Tells curl to use the specified certificate file when get-\n"
-"              ting  a  file with HTTPS or FTPS. The certificate must be in PEM\n"
-"              format.  If the optional password isn't specified,  it  will  be\n"
-"              queried  for  on  the  terminal. Note that this option assumes a\n"
-"              \"certificate\" file that is the private key and the private  cer-\n"
-"              tificate  concatenated!  See  --cert  and  --key to specify them\n"
-, stdout);
- fputs(
-"              independently.\n"
-"\n"
-"              If curl is built against the NSS SSL library  then  this  option\n"
-"              tells curl the nickname of the certificate to use within the NSS\n"
-"              database defined by the  environment  variable  SSL_DIR  (or  by\n"
-"              default  /etc/pki/nssdb).  If  the  NSS PEM PKCS#11 module (lib-\n"
-"              nsspem.so) is available then PEM files may be loaded.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-, stdout);
- fputs(
-"       --cert-type <type>\n"
-"              (SSL) Tells curl what certificate type the provided  certificate\n"
-"              is in. PEM, DER and ENG are recognized types.  If not specified,\n"
-"              PEM is assumed.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       --cacert <CA certificate>\n"
-"              (SSL) Tells curl to use the specified certificate file to verify\n"
-"              the  peer.  The  file  may contain multiple CA certificates. The\n"
-, stdout);
- fputs(
-"              certificate(s) must be in PEM format. Normally curl is built  to\n"
-"              use a default file for this, so this option is typically used to\n"
-"              alter that default file.\n"
-"\n"
-"              curl recognizes the environment variable named  'CURL_CA_BUNDLE'\n"
-"              if  it  is  set,  and uses the given path as a path to a CA cert\n"
-"              bundle. This option overrides that variable.\n"
-"\n"
-"              The windows version of curl will automatically  look  for  a  CA\n"
-, stdout);
- fputs(
-"              certs file named 'curl-ca-bundle.crt', either in the same direc-\n"
-"              tory as curl.exe, or in the Current Working Directory, or in any\n"
-"              folder along your PATH.\n"
-"\n"
-"              If  curl  is  built against the NSS SSL library then this option\n"
-"              tells curl the nickname of the CA certificate to use within  the\n"
-"              NSS  database defined by the environment variable SSL_DIR (or by\n"
-, stdout);
- fputs(
-"              default /etc/pki/nssdb).  If the NSS PEM  PKCS#11  module  (lib-\n"
-"              nsspem.so) is available then PEM files may be loaded.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       --capath <CA certificate directory>\n"
-"              (SSL)  Tells  curl to use the specified certificate directory to\n"
-"              verify the peer. The certificates must be in PEM format, and the\n"
-, stdout);
- fputs(
-"              directory  must  have  been processed using the c_rehash utility\n"
-"              supplied with openssl. Using --capath can  allow  curl  to  make\n"
-"              SSL-connections much more efficiently than using --cacert if the\n"
-"              --cacert file contains many CA certificates.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -f/--fail\n"
-"              (HTTP) Fail silently (no output at all) on server  errors.  This\n"
-, stdout);
- fputs(
-"              is  mostly done to better enable scripts etc to better deal with\n"
-"              failed attempts. In normal cases when a  HTTP  server  fails  to\n"
-"              deliver  a  document,  it  returns  an  HTML document stating so\n"
-"              (which often also describes why and more). This flag  will  pre-\n"
-"              vent curl from outputting that and return error 22.\n"
-"\n"
-"              This  method is not fail-safe and there are occasions where non-\n"
-, stdout);
- fputs(
-"              successful response codes will  slip  through,  especially  when\n"
-"              authentication is involved (response codes 401 and 407).\n"
-"\n"
-"       --ftp-account [data]\n"
-"              (FTP) When an FTP server asks for \"account data\" after user name\n"
-"              and password has been provided, this data is sent off using  the\n"
-"              ACCT command. (Added in 7.13.0)\n"
-"\n"
-"              If  this option is used twice, the second will override the pre-\n"
-"              vious use.\n"
-"\n"
-, stdout);
- fputs(
-"       --ftp-create-dirs\n"
-"              (FTP/SFTP) When an FTP or SFTP URL/operation uses  a  path  that\n"
-"              doesn't  currently exist on the server, the standard behavior of\n"
-"              curl is to fail. Using this option, curl will instead attempt to\n"
-"              create missing directories.\n"
-"\n"
-"       --ftp-method [method]\n"
-"              (FTP)  Control  what method curl should use to reach a file on a\n"
-"              FTP(S) server. The method argument should be one of the  follow-\n"
-, stdout);
- fputs(
-"              ing alternatives:\n"
-"\n"
-"              multicwd\n"
-"                     curl  does  a  single CWD operation for each path part in\n"
-"                     the given URL. For deep hierarchies this means very  many\n"
-"                     commands.  This  is  how  RFC1738 says it should be done.\n"
-"                     This is the default but the slowest behavior.\n"
-"\n"
-"              nocwd  curl does no CWD at all. curl will do  SIZE,  RETR,  STOR\n"
-, stdout);
- fputs(
-"                     etc and give a full path to the server for all these com-\n"
-"                     mands. This is the fastest behavior.\n"
-"\n"
-"              singlecwd\n"
-"                     curl does one CWD with the full target directory and then\n"
-"                     operates  on  the  file  \"normally\" (like in the multicwd\n"
-"                     case). This is somewhat  more  standards  compliant  than\n"
-"                     'nocwd' but without the full penalty of 'multicwd'.\n"
-"       (Added in 7.15.1)\n"
-"\n"
-, stdout);
- fputs(
-"       --ftp-pasv\n"
-"              (FTP)  Use  passive  mode for the data conection. Passive is the\n"
-"              internal default behavior, but using this option can be used  to\n"
-"              override a previous -P/-ftp-port option. (Added in 7.11.0)\n"
-"\n"
-"              If  this option is used several times, the following occurrences\n"
-"              make no difference. Undoing an  enforced  passive  really  isn't\n"
-, stdout);
- fputs(
-"              doable  but  you must then instead enforce the correct -P/--ftp-\n"
-"              port again.\n"
-"\n"
-"              Passive mode means that curl will try the EPSV command first and\n"
-"              then PASV, unless --disable-epsv is used.\n"
-"\n"
-"       --ftp-alternative-to-user <command>\n"
-"              (FTP)  If  authenticating with the USER and PASS commands fails,\n"
-"              send this  command.   When  connecting  to  Tumbleweed's  Secure\n"
-, stdout);
- fputs(
-"              Transport  server  over  FTPS  using a client certificate, using\n"
-"              \"SITE AUTH\" will tell the server to retrieve the  username  from\n"
-"              the certificate. (Added in 7.15.5)\n"
-"\n"
-"       --ftp-skip-pasv-ip\n"
-"              (FTP) Tell curl to not use the IP address the server suggests in\n"
-"              its response to curl's PASV command when curl connects the  data\n"
-"              connection.  Instead  curl  will  re-use  the same IP address it\n"
-, stdout);
- fputs(
-"              already uses for the control connection. (Added in 7.14.2)\n"
-"\n"
-"              This option has no effect if PORT, EPRT or EPSV is used  instead\n"
-"              of PASV.\n"
-"\n"
-"       --ftp-pret\n"
-"              (FTP)  Tell  curl to send a PRET command before PASV (and EPSV).\n"
-"              Certain FTP servers, mainly drftpd,  require  this  non-standard\n"
-"              command  for  directory  listings as well as up and downloads in\n"
-"              PASV mode.  (Added in 7.20.x)\n"
-"\n"
-, stdout);
- fputs(
-"       --ssl  (FTP, POP3, IMAP, SMTP) Try to use SSL/TLS for  the  connection.\n"
-"              Reverts to a non-secure connection if the server doesn't support\n"
-"              SSL/TLS.  See also --ftp-ssl-control and --ssl-reqd for  differ-\n"
-"              ent levels of encryption required. (Added in 7.20.0)\n"
-"\n"
-"              This  option  was  formerly known as --ftp-ssl (Added in 7.11.0)\n"
-"              and that can still be used but will be removed in a future  ver-\n"
-, stdout);
- fputs(
-"              sion.\n"
-"\n"
-"       --ftp-ssl-control\n"
-"              (FTP)  Require  SSL/TLS  for  the FTP login, clear for transfer.\n"
-"              Allows secure authentication, but non-encrypted  data  transfers\n"
-"              for  efficiency.   Fails the transfer if the server doesn't sup-\n"
-"              port SSL/TLS.  (Added in 7.16.0)\n"
-"\n"
-"       --ssl-reqd\n"
-"              (FTP, POP3, IMAP, SMTP)  Require  SSL/TLS  for  the  connection.\n"
-, stdout);
- fputs(
-"              Terminates the connection if the server doesn't support SSL/TLS.\n"
-"              (Added in 7.20.0)\n"
-"\n"
-"              This option was  formerly  known  as  --ftp-ssl-reqd  (added  in\n"
-"              7.15.5)  and  that  can  still  be used but will be removed in a\n"
-"              future version.\n"
-"\n"
-"       --ftp-ssl-ccc\n"
-"              (FTP) Use CCC (Clear Command Channel)  Shuts  down  the  SSL/TLS\n"
-"              layer after authenticating. The rest of the control channel com-\n"
-, stdout);
- fputs(
-"              munication will be unencrypted. This allows NAT routers to  fol-\n"
-"              low the FTP transaction. The default mode is passive. See --ftp-\n"
-"              ssl-ccc-mode for other modes.  (Added in 7.16.1)\n"
-"\n"
-"       --ftp-ssl-ccc-mode [active/passive]\n"
-"              (FTP) Use CCC (Clear Command Channel) Sets  the  CCC  mode.  The\n"
-"              passive  mode  will  not initiate the shutdown, but instead wait\n"
-, stdout);
- fputs(
-"              for the server to do it, and will not reply to the shutdown from\n"
-"              the server. The active mode initiates the shutdown and waits for\n"
-"              a reply from the server.  (Added in 7.16.2)\n"
-"\n"
-"       -F/--form <name=content>\n"
-"              (HTTP) This lets curl emulate a filled-in form in which  a  user\n"
-"              has  pressed  the  submit  button. This causes curl to POST data\n"
-"              using the Content-Type multipart/form-data according to RFC2388.\n"
-, stdout);
- fputs(
-"              This  enables  uploading of binary files etc. To force the 'con-\n"
-"              tent' part to be a file, prefix the file name with an @ sign. To\n"
-"              just get the content part from a file, prefix the file name with\n"
-"              the symbol <. The difference between @ and  <  is  then  that  @\n"
-"              makes  a  file  get attached in the post as a file upload, while\n"
-"              the < makes a text field and just get the contents for that text\n"
-, stdout);
- fputs(
-"              field from a file.\n"
-"\n"
-"              Example,  to send your password file to the server, where 'pass-\n"
-"              word' is the name of the form-field to which /etc/passwd will be\n"
-"              the input:\n"
-"\n"
-"              curl -F password=@/etc/passwd www.mypasswords.com\n"
-"\n"
-"              To  read  the file's content from stdin instead of a file, use -\n"
-"              where the file name should've been. This goes for both @  and  <\n"
-"              constructs.\n"
-"\n"
-, stdout);
- fputs(
-"              You  can  also  tell  curl  what  Content-Type  to  use by using\n"
-"              'type=', in a manner similar to:\n"
-"\n"
-"              curl -F \"web=@index.html;type=text/html\" url.com\n"
-"\n"
-"              or\n"
-"\n"
-"              curl -F \"name=daniel;type=text/foo\" url.com\n"
-"\n"
-"              You can also explicitly change the name field of an file  upload\n"
-"              part by setting filename=, like this:\n"
-"\n"
-"              curl -F \"file=@localfile;filename=nameinpost\" url.com\n"
-"\n"
-, stdout);
- fputs(
-"              See further examples and details in the MANUAL.\n"
-"\n"
-"              This option can be used multiple times.\n"
-"\n"
-"       --form-string <name=string>\n"
-"              (HTTP)  Similar  to  --form except that the value string for the\n"
-"              named parameter is used literally. Leading '@' and  '<'  charac-\n"
-"              ters, and the ';type=' string in the value have no special mean-\n"
-"              ing. Use this in preference to --form if there's any possibility\n"
-, stdout);
- fputs(
-"              that  the  string  value may accidentally trigger the '@' or '<'\n"
-"              features of --form.\n"
-"\n"
-"       -g/--globoff\n"
-"              This option switches off the \"URL globbing parser\". When you set\n"
-"              this  option, you can specify URLs that contain the letters {}[]\n"
-"              without having them being interpreted by curl itself. Note  that\n"
-"              these  letters are not normal legal URL contents but they should\n"
-, stdout);
- fputs(
-"              be encoded according to the URI standard.\n"
-"\n"
-"       -G/--get\n"
-"              When used,  this  option  will  make  all  data  specified  with\n"
-"              -d/--data  or  --data-binary  to  be  used in a HTTP GET request\n"
-"              instead of the POST request that otherwise would  be  used.  The\n"
-"              data will be appended to the URL with a '?' separator.\n"
-"\n"
-"              If  used  in  combination with -I, the POST data will instead be\n"
-, stdout);
- fputs(
-"              appended to the URL with a HEAD request.\n"
-"\n"
-"              If this option is used several times, the following  occurrences\n"
-"              make  no  difference. This is because undoing a GET doesn't make\n"
-"              sense, but you  should  then  instead  enforce  the  alternative\n"
-"              method you prefer.\n"
-"\n"
-"       -h/--help\n"
-"              Usage help.\n"
-"\n"
-"       -H/--header <header>\n"
-"              (HTTP)  Extra  header  to  use  when getting a web page. You may\n"
-, stdout);
- fputs(
-"              specify any number of extra headers. Note that if you should add\n"
-"              a  custom  header  that has the same name as one of the internal\n"
-"              ones curl would use, your externally set  header  will  be  used\n"
-"              instead of the internal one. This allows you to make even trick-\n"
-"              ier stuff than curl would normally do. You  should  not  replace\n"
-"              internally  set  headers  without  knowing  perfectly  well what\n"
-, stdout);
- fputs(
-"              you're doing. Remove an internal header by giving a  replacement\n"
-"              without  content  on  the  right  side  of  the colon, as in: -H\n"
-"              \"Host:\".\n"
-"\n"
-"              curl will make sure that each header  you  add/replace  is  sent\n"
-"              with the proper end-of-line marker, you should thus not add that\n"
-"              as a part of the header content: do not add newlines or carriage\n"
-"              returns, they will only mess things up for you.\n"
-"\n"
-, stdout);
- fputs(
-"              See also the -A/--user-agent and -e/--referer options.\n"
-"\n"
-"              This  option  can  be  used multiple times to add/replace/remove\n"
-"              multiple headers.\n"
-"\n"
-"       --hostpubmd5 <md5>\n"
-"              Pass a string  containing  32  hexadecimal  digits.  The  string\n"
-"              should  be  the 128 bit MD5 checksum of the remote host's public\n"
-"              key, curl will refuse the connection with the  host  unless  the\n"
-, stdout);
- fputs(
-"              md5sums  match.  This option is only for SCP and SFTP transfers.\n"
-"              (Added in 7.17.1)\n"
-"\n"
-"       --ignore-content-length\n"
-"              (HTTP) Ignore the Content-Length header.  This  is  particularly\n"
-"              useful  for servers running Apache 1.x, which will report incor-\n"
-"              rect Content-Length for files larger than 2 gigabytes.\n"
-"\n"
-"       -i/--include\n"
-"              (HTTP) Include the HTTP-header in the  output.  The  HTTP-header\n"
-, stdout);
- fputs(
-"              includes  things  like  server-name, date of the document, HTTP-\n"
-"              version and more...\n"
-"\n"
-"       --interface <name>\n"
-"              Perform an operation using a specified interface. You can  enter\n"
-"              interface  name,  IP address or host name. An example could look\n"
-"              like:\n"
-"\n"
-"               curl --interface eth0:1 http://www.netscape.com/\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -I/--head\n"
-, stdout);
- fputs(
-"              (HTTP/FTP/FILE) Fetch the HTTP-header only! HTTP-servers feature\n"
-"              the  command  HEAD which this uses to get nothing but the header\n"
-"              of a document. When used on a FTP or FILE  file,  curl  displays\n"
-"              the file size and last modification time only.\n"
-"\n"
-"       -j/--junk-session-cookies\n"
-"              (HTTP) When curl is told to read cookies from a given file, this\n"
-"              option will make it discard all  \"session  cookies\".  This  will\n"
-, stdout);
- fputs(
-"              basically  have  the same effect as if a new session is started.\n"
-"              Typical browsers always discard  session  cookies  when  they're\n"
-"              closed down.\n"
-"\n"
-"       -J/--remote-header-name\n"
-"              (HTTP)  This option tells the -O/--remote-name option to use the\n"
-"              server-specified   Content-Disposition   filename   instead   of\n"
-"              extracting a filename from the URL.\n"
-"\n"
-"       -k/--insecure\n"
-, stdout);
- fputs(
-"              (SSL)  This  option explicitly allows curl to perform \"insecure\"\n"
-"              SSL connections and transfers. All SSL connections are attempted\n"
-"              to  be  made secure by using the CA certificate bundle installed\n"
-"              by default. This makes  all  connections  considered  \"insecure\"\n"
-"              fail unless -k/--insecure is used.\n"
-"\n"
-"              See     this    online    resource    for    further    details:\n"
-, stdout);
- fputs(
-"              http://curl.haxx.se/docs/sslcerts.html\n"
-"\n"
-"       --keepalive-time <seconds>\n"
-"              This option sets the time a  connection  needs  to  remain  idle\n"
-"              before  sending keepalive probes and the time between individual\n"
-"              keepalive probes. It is currently effective on operating systems\n"
-"              offering  the  TCP_KEEPIDLE  and  TCP_KEEPINTVL  socket  options\n"
-"              (meaning Linux, recent AIX, HP-UX and more). This option has  no\n"
-, stdout);
- fputs(
-"              effect if --no-keepalive is used. (Added in 7.18.0)\n"
-"\n"
-"              If  this option is used multiple times, the last occurrence sets\n"
-"              the amount.\n"
-"       --key <key>\n"
-"              (SSL/SSH) Private key file name. Allows you to provide your pri-\n"
-"              vate key in this separate file.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       --key-type <type>\n"
-, stdout);
- fputs(
-"              (SSL)  Private key file type. Specify which type your --key pro-\n"
-"              vided private key is. DER, PEM, and ENG are  supported.  If  not\n"
-"              specified, PEM is assumed.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       --krb <level>\n"
-"              (FTP)  Enable Kerberos authentication and use. The level must be\n"
-"              entered and should be one of 'clear', 'safe', 'confidential', or\n"
-, stdout);
- fputs(
-"              'private'.  Should  you  use  a  level that is not one of these,\n"
-"              'private' will instead be used.\n"
-"\n"
-"              This option requires a library built with  kerberos4  or  GSSAPI\n"
-"              (GSS-Negotiate)  support. This is not very common. Use -V/--ver-\n"
-"              sion to see if your curl supports it.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -K/--config <config file>\n"
-, stdout);
- fputs(
-"              Specify which config file to read curl arguments from. The  con-\n"
-"              fig  file  is a text file in which command line arguments can be\n"
-"              written which then will be used as if they were written  on  the\n"
-"              actual command line. Options and their parameters must be speci-\n"
-"              fied on the same config  file  line,  separated  by  whitespace,\n"
-"              colon,  the equals sign or any combination thereof (however, the\n"
-, stdout);
- fputs(
-"              preferred separator is the equals sign). If the parameter is  to\n"
-"              contain  whitespace,  the  parameter  must  be  enclosed  within\n"
-"              quotes. Within double quotes, the following escape sequences are\n"
-"              available:  \\\\, \\\", \\t, \\n, \\r and \\v. A backslash preceding any\n"
-"              other letter is ignored. If the first column of a config line is\n"
-"              a  '#' character, the rest of the line will be treated as a com-\n"
-, stdout);
- fputs(
-"              ment. Only write one option per  physical  line  in  the  config\n"
-"              file.\n"
-"\n"
-"              Specify the filename to -K/--config as '-' to make curl read the\n"
-"              file from stdin.\n"
-"\n"
-"              Note that to be able to specify a URL in the  config  file,  you\n"
-"              need  to  specify  it  using the --url option, and not by simply\n"
-"              writing the URL on its own line. So, it could  look  similar  to\n"
-"              this:\n"
-"\n"
-, stdout);
- fputs(
-"              url = \"http://curl.haxx.se/docs/\"\n"
-"\n"
-"              Long  option  names  can  optionally be given in the config file\n"
-"              without the initial double dashes.\n"
-"\n"
-"              When curl is invoked, it always (unless -q is used) checks for a\n"
-"              default  config  file  and  uses it if found. The default config\n"
-"              file is checked for in the following places in this order:\n"
-"\n"
-"              1) curl tries to find the \"home dir\": It first  checks  for  the\n"
-, stdout);
- fputs(
-"              CURL_HOME and then the HOME environment variables. Failing that,\n"
-"              it uses getpwuid() on UNIX-like systems (which returns the  home\n"
-"              dir  given the current user in your system). On Windows, it then\n"
-"              checks for the APPDATA variable, or as a last resort the '%USER-\n"
-"              PROFILE%\\Application Data'.\n"
-"\n"
-"              2)  On  windows, if there is no _curlrc file in the home dir, it\n"
-, stdout);
- fputs(
-"              checks for one in the same dir the curl executable is placed. On\n"
-"              UNIX-like  systems,  it will simply try to load .curlrc from the\n"
-"              determined home dir.\n"
-"\n"
-"              # --- Example file ---\n"
-"              # this is a comment\n"
-"              url = \"curl.haxx.se\"\n"
-"              output = \"curlhere.html\"\n"
-"              user-agent = \"superagent/1.0\"\n"
-"\n"
-"              # and fetch another URL too\n"
-"              url = \"curl.haxx.se/docs/manpage.html\"\n"
-"              -O\n"
-, stdout);
- fputs(
-"              referer = \"http://nowhereatall.com/\"\n"
-"              # --- End of example file ---\n"
-"\n"
-"              This option can be used multiple times to load  multiple  config\n"
-"              files.\n"
-"\n"
-"       --libcurl <file>\n"
-"              Append  this  option  to any ordinary curl command line, and you\n"
-"              will get a libcurl-using source code written to  the  file  that\n"
-"              does the equivalent of what your command-line operation does!\n"
-"\n"
-, stdout);
- fputs(
-"              NOTE:  this does not properly support -F and the sending of mul-\n"
-"              tipart formposts, so in those cases the output program  will  be\n"
-"              missing necessary calls to curl_formadd(3), and possibly more.\n"
-"\n"
-"              If  this  option is used several times, the last given file name\n"
-"              will be used. (Added in 7.16.1)\n"
-"\n"
-"       --limit-rate <speed>\n"
-"              Specify the maximum transfer rate you want  curl  to  use.  This\n"
-, stdout);
- fputs(
-"              feature is useful if you have a limited pipe and you'd like your\n"
-"              transfer not to use your entire bandwidth.\n"
-"\n"
-"              The given speed is measured in bytes/second, unless a suffix  is\n"
-"              appended.   Appending  'k' or 'K' will count the number as kilo-\n"
-"              bytes, 'm' or M' makes it megabytes, while 'g' or 'G'  makes  it\n"
-"              gigabytes. Examples: 200K, 3m and 1G.\n"
-"\n"
-, stdout);
- fputs(
-"              The  given  rate  is the average speed counted during the entire\n"
-"              transfer. It means that curl might use higher transfer speeds in\n"
-"              short bursts, but over time it uses no more than the given rate.\n"
-"\n"
-"              If  you  also  use the -Y/--speed-limit option, that option will\n"
-"              take precedence and might cripple the rate-limiting slightly, to\n"
-"              help keeping the speed-limit logic working.\n"
-"\n"
-, stdout);
- fputs(
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -l/--list-only\n"
-"              (FTP)  When listing an FTP directory, this switch forces a name-\n"
-"              only view.  Especially useful if you want to  machine-parse  the\n"
-"              contents  of  an  FTP  directory since the normal directory view\n"
-"              doesn't use a standard look or format.\n"
-"\n"
-"              This option causes an FTP NLST command to  be  sent.   Some  FTP\n"
-, stdout);
- fputs(
-"              servers  list  only files in their response to NLST; they do not\n"
-"              include subdirectories and symbolic links.\n"
-"\n"
-"       --local-port <num>[-num]\n"
-"              Set a preferred number or range of local port numbers to use for\n"
-"              the  connection(s).   Note  that  port  numbers  by nature are a\n"
-"              scarce resource that will be busy at times so setting this range\n"
-"              to something too narrow might cause unnecessary connection setup\n"
-, stdout);
- fputs(
-"              failures. (Added in 7.15.2)\n"
-"\n"
-"       -L/--location\n"
-"              (HTTP/HTTPS) If the server reports that the requested  page  has\n"
-"              moved to a different location (indicated with a Location: header\n"
-"              and a 3XX response code), this option will make  curl  redo  the\n"
-"              request  on the new place. If used together with -i/--include or\n"
-"              -I/--head, headers from all requested pages will be shown.  When\n"
-, stdout);
- fputs(
-"              authentication  is  used, curl only sends its credentials to the\n"
-"              initial host. If a redirect takes curl to a different  host,  it\n"
-"              won't  be  able to intercept the user+password. See also --loca-\n"
-"              tion-trusted on how to change this. You can limit the amount  of\n"
-"              redirects to follow by using the --max-redirs option.\n"
-"\n"
-"              When  curl follows a redirect and the request is not a plain GET\n"
-, stdout);
- fputs(
-"              (for example POST or PUT), it will do the following request with\n"
-"              a GET if the HTTP response was 301, 302, or 303. If the response\n"
-"              code was any other 3xx code, curl  will  re-send  the  following\n"
-"              request using the same unmodified method.\n"
-"\n"
-"       --location-trusted\n"
-"              (HTTP/HTTPS) Like -L/--location, but will allow sending the name\n"
-"              + password to all hosts that the site may redirect to. This  may\n"
-, stdout);
- fputs(
-"              or may not introduce a security breach if the site redirects you\n"
-"              to a site to which you'll send your authentication  info  (which\n"
-"              is plaintext in the case of HTTP Basic authentication).\n"
-"\n"
-"       --mail-rcpt <address>\n"
-"              (SMTP)  Specify  a single address that the given mail should get\n"
-"              sent to. This option can be used multiple times to specify  many\n"
-"              recipients.\n"
-"\n"
-"              (Added in 7.20.0)\n"
-"\n"
-, stdout);
- fputs(
-"       --mail-from <address>\n"
-"              (SMTP)  Specify  a single address that the given mail should get\n"
-"              sent from.\n"
-"\n"
-"              (Added in 7.20.0)\n"
-"\n"
-"       --max-filesize <bytes>\n"
-"              Specify the maximum size (in bytes) of a file  to  download.  If\n"
-"              the  file requested is larger than this value, the transfer will\n"
-"              not start and curl will return with exit code 63.\n"
-"\n"
-, stdout);
- fputs(
-"              NOTE: The file size is not always known prior to  download,  and\n"
-"              for such files this option has no effect even if the file trans-\n"
-"              fer ends up being larger than this given  limit.  This  concerns\n"
-"              both FTP and HTTP transfers.\n"
-"\n"
-"       -m/--max-time <seconds>\n"
-"              Maximum  time  in  seconds that you allow the whole operation to\n"
-"              take.  This is useful for preventing your batch jobs from  hang-\n"
-, stdout);
- fputs(
-"              ing  for  hours  due  to slow networks or links going down.  See\n"
-"              also the --connect-timeout option.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -M/--manual\n"
-"              Manual. Display the huge help text.\n"
-"\n"
-"       -n/--netrc\n"
-"              Makes curl scan the .netrc  (_netrc  on  Windows)  file  in  the\n"
-"              user's home directory for login name and password. This is typi-\n"
-, stdout);
- fputs(
-"              cally used for FTP on UNIX. If used with HTTP, curl will  enable\n"
-"              user  authentication.  See netrc(4) or ftp(1) for details on the\n"
-"              file format. Curl will not complain if that  file  doesn't  have\n"
-"              the  right permissions (it should not be either world- or group-\n"
-"              readable). The environment variable \"HOME\" is used to  find  the\n"
-"              home directory.\n"
-"\n"
-, stdout);
- fputs(
-"              A  quick  and  very  simple  example of how to setup a .netrc to\n"
-"              allow curl to FTP to the machine host.domain.com with user  name\n"
-"              'myself' and password 'secret' should look similar to:\n"
-"\n"
-"              machine host.domain.com login myself password secret\n"
-"\n"
-"       --netrc-optional\n"
-"              Very  similar to --netrc, but this option makes the .netrc usage\n"
-, stdout);
- fputs(
-"              optional and not mandatory as the --netrc option does.\n"
-"\n"
-"       --negotiate\n"
-"              (HTTP) Enables GSS-Negotiate authentication.  The  GSS-Negotiate\n"
-"              method was designed by Microsoft and is used in their web appli-\n"
-"              cations. It is  primarily  meant  as  a  support  for  Kerberos5\n"
-"              authentication but may be also used along with another authenti-\n"
-, stdout);
- fputs(
-"              cation method. For more information see IETF draft draft-brezak-\n"
-"              spnego-http-04.txt.\n"
-"\n"
-"              If  you  want to enable Negotiate for your proxy authentication,\n"
-"              then use --proxy-negotiate.\n"
-"\n"
-"              This option requires a library built with GSSAPI  support.  This\n"
-"              is not very common. Use -V/--version to see if your version sup-\n"
-"              ports GSS-Negotiate.\n"
-"\n"
-, stdout);
- fputs(
-"              When using this option, you must also provide a  fake  -u/--user\n"
-"              option  to  activate the authentication code properly. Sending a\n"
-"              '-u :' is enough as the user  name  and  password  from  the  -u\n"
-"              option aren't actually used.\n"
-"\n"
-"              If  this option is used several times, the following occurrences\n"
-"              make no difference.\n"
-"\n"
-"       -N/--no-buffer\n"
-"              Disables the buffering of the output stream. In normal work sit-\n"
-, stdout);
- fputs(
-"              uations,  curl  will  use a standard buffered output stream that\n"
-"              will have the effect that it will output the data in chunks, not\n"
-"              necessarily  exactly  when  the data arrives.  Using this option\n"
-"              will disable that buffering.\n"
-"\n"
-"              Note that this is the negated option name  documented.  You  can\n"
-"              thus use --buffer to enforce the buffering.\n"
-"\n"
-"       --no-keepalive\n"
-, stdout);
- fputs(
-"              Disables the use of keepalive messages on the TCP connection, as\n"
-"              by default curl enables them.\n"
-"\n"
-"              Note that this is the negated option name  documented.  You  can\n"
-"              thus use --keepalive to enforce keepalive.\n"
-"\n"
-"       --no-sessionid\n"
-"              (SSL)  Disable curl's use of SSL session-ID caching.  By default\n"
-"              all transfers are done using the cache. Note that while  nothing\n"
-, stdout);
- fputs(
-"              should  ever  get  hurt  by attempting to reuse SSL session-IDs,\n"
-"              there seem to be broken SSL implementations in the wild that may\n"
-"              require  you to disable this in order for you to succeed. (Added\n"
-"              in 7.16.0)\n"
-"\n"
-"              Note that this is the negated option name  documented.  You  can\n"
-"              thus use --sessionid to enforce session-ID caching.\n"
-"\n"
-"       --noproxy <no-proxy-list>\n"
-, stdout);
- fputs(
-"              Comma-separated  list  of hosts which do not use a proxy, if one\n"
-"              is specified.  The only wildcard is a single * character,  which\n"
-"              matches all hosts, and effectively disables the proxy. Each name\n"
-"              in this list is matched as either a domain  which  contains  the\n"
-"              hostname,  or  the hostname itself. For example, local.com would\n"
-"              match  local.com,  local.com:80,  and  www.local.com,  but   not\n"
-, stdout);
- fputs(
-"              www.notlocal.com.  (Added in 7.19.4).\n"
-"\n"
-"       --ntlm (HTTP)  Enables  NTLM  authentication.  The  NTLM authentication\n"
-"              method was designed by Microsoft and is used by IIS web servers.\n"
-"              It  is a proprietary protocol, reverse-engineered by clever peo-\n"
-"              ple and implemented in curl based on their efforts. This kind of\n"
-"              behavior  should  not be endorsed, you should encourage everyone\n"
-, stdout);
- fputs(
-"              who uses NTLM to switch to a public and  documented  authentica-\n"
-"              tion method instead, such as Digest.\n"
-"\n"
-"              If  you  want to enable NTLM for your proxy authentication, then\n"
-"              use --proxy-ntlm.\n"
-"\n"
-"              This option requires a  library  built  with  SSL  support.  Use\n"
-"              -V/--version to see if your curl supports NTLM.\n"
-"\n"
-"              If  this option is used several times, the following occurrences\n"
-, stdout);
- fputs(
-"              make no difference.\n"
-"\n"
-"       -o/--output <file>\n"
-"              Write output to <file> instead of stdout. If you are using {} or\n"
-"              []  to  fetch  multiple documents, you can use '#' followed by a\n"
-"              number in the <file> specifier. That variable will  be  replaced\n"
-"              with the current string for the URL being fetched. Like in:\n"
-"\n"
-"                curl http://{one,two}.site.com -o \"file_#1.txt\"\n"
-"\n"
-"              or use several variables like:\n"
-"\n"
-, stdout);
- fputs(
-"                curl http://{site,host}.host[1-5].com -o \"#1_#2\"\n"
-"\n"
-"              You  may use this option as many times as the number of URLs you\n"
-"              have.\n"
-"\n"
-"              See also the --create-dirs option to create the  local  directo-\n"
-"              ries  dynamically.  Specifying the output as '-' (a single dash)\n"
-"              will force the output to be done to stdout.\n"
-"\n"
-"       -O/--remote-name\n"
-"              Write output to a local file named like the remote file we  get.\n"
-, stdout);
- fputs(
-"              (Only  the file part of the remote file is used, the path is cut\n"
-"              off.)\n"
-"\n"
-"              The remote file name to use for saving  is  extracted  from  the\n"
-"              given URL, nothing else.\n"
-"\n"
-"              You  may use this option as many times as the number of URLs you\n"
-"              have.\n"
-"\n"
-"       --remote-name-all\n"
-"              This option changes the default action for all given URLs to  be\n"
-, stdout);
- fputs(
-"              dealt  with as if -O/--remote-name were used for each one. So if\n"
-"              you want to disable that for a specific URL after --remote-name-\n"
-"              all  has  been  used,  you  must use \"-o -\" or --no-remote-name.\n"
-"              (Added in 7.19.0)\n"
-"\n"
-"       --pass <phrase>\n"
-"              (SSL/SSH) Passphrase for the private key\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       --post301\n"
-, stdout);
- fputs(
-"              Tells curl to respect  RFC  2616/10.3.2  and  not  convert  POST\n"
-"              requests into GET requests when following a 301 redirection. The\n"
-"              non-RFC behaviour is ubiquitous in web browsers,  so  curl  does\n"
-"              the  conversion  by  default to maintain consistency. However, a\n"
-"              server may require a POST to remain a POST after  such  a  redi-\n"
-"              rection. This option is meaningful only when using -L/--location\n"
-, stdout);
- fputs(
-"              (Added in 7.17.1)\n"
-"\n"
-"       --post302\n"
-"              Tells curl to respect  RFC  2616/10.3.2  and  not  convert  POST\n"
-"              requests into GET requests when following a 302 redirection. The\n"
-"              non-RFC behaviour is ubiquitous in web browsers,  so  curl  does\n"
-"              the  conversion  by  default to maintain consistency. However, a\n"
-"              server may require a POST to remain a POST after  such  a  redi-\n"
-, stdout);
- fputs(
-"              rection. This option is meaningful only when using -L/--location\n"
-"              (Added in 7.19.1)\n"
-"\n"
-"       --proxy-anyauth\n"
-"              Tells curl to pick a suitable authentication method when  commu-\n"
-"              nicating  with  the  given  proxy.  This  might  cause  an extra\n"
-"              request/response round-trip. (Added in 7.13.2)\n"
-"\n"
-"       --proxy-basic\n"
-"              Tells curl to use HTTP Basic authentication  when  communicating\n"
-, stdout);
- fputs(
-"              with the given proxy. Use --basic for enabling HTTP Basic with a\n"
-"              remote host. Basic is the  default  authentication  method  curl\n"
-"              uses with proxies.\n"
-"\n"
-"       --proxy-digest\n"
-"              Tells  curl to use HTTP Digest authentication when communicating\n"
-"              with the given proxy. Use --digest for enabling HTTP Digest with\n"
-"              a remote host.\n"
-"\n"
-"       --proxy-negotiate\n"
-, stdout);
- fputs(
-"              Tells curl to use HTTP Negotiate authentication when communicat-\n"
-"              ing with the given proxy.  Use  --negotiate  for  enabling  HTTP\n"
-"              Negotiate with a remote host. (Added in 7.17.1)\n"
-"\n"
-"       --proxy-ntlm\n"
-"              Tells  curl  to  use HTTP NTLM authentication when communicating\n"
-"              with the given proxy. Use --ntlm for enabling NTLM with a remote\n"
-"              host.\n"
-"\n"
-"       --proxy1.0 <proxyhost[:port]>\n"
-, stdout);
- fputs(
-"              Use  the  specified  HTTP  1.0  proxy. If the port number is not\n"
-"              specified, it is assumed at port 1080.\n"
-"\n"
-"              The only difference between  this  and  the  HTTP  proxy  option\n"
-"              (-x/--proxy),  is that attempts to use CONNECT through the proxy\n"
-"              will specify an HTTP 1.0 protocol instead of  the  default  HTTP\n"
-"              1.1.\n"
-"\n"
-"       -p/--proxytunnel\n"
-, stdout);
- fputs(
-"              When  an HTTP proxy is used (-x/--proxy), this option will cause\n"
-"              non-HTTP protocols  to  attempt  to  tunnel  through  the  proxy\n"
-"              instead  of merely using it to do HTTP-like operations. The tun-\n"
-"              nel approach is made with the HTTP  proxy  CONNECT  request  and\n"
-"              requires that the proxy allows direct connect to the remote port\n"
-"              number curl wants to tunnel through to.\n"
-"\n"
-"       --pubkey <key>\n"
-, stdout);
- fputs(
-"              (SSH) Public key file name. Allows you to  provide  your  public\n"
-"              key in this separate file.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -P/--ftp-port <address>\n"
-"              (FTP)  Reverses  the  default initiator/listener roles when con-\n"
-"              necting with FTP. This switch makes curl  use  active  mode.  In\n"
-"              practice,  curl  then  tells  the  server to connect back to the\n"
-, stdout);
- fputs(
-"              client's specified address and port, while passive mode asks the\n"
-"              server  to  setup  an  IP address and port for it to connect to.\n"
-"              <address> should be one of:\n"
-"\n"
-"              interface\n"
-"                     i.e \"eth0\" to specify which interface's  IP  address  you\n"
-"                     want to use (Unix only)\n"
-"\n"
-"              IP address\n"
-"                     i.e \"192.168.10.1\" to specify the exact IP address\n"
-"\n"
-"              host name\n"
-, stdout);
- fputs(
-"                     i.e \"my.host.domain\" to specify the machine\n"
-"\n"
-"              -      make  curl  pick the same IP address that is already used\n"
-"                     for the control connection\n"
-"\n"
-"       If this option is used several times, the last one will be  used.  Dis-\n"
-"       able  the  use  of PORT with --ftp-pasv. Disable the attempt to use the\n"
-"       EPRT command instead of PORT by using --disable-eprt.  EPRT  is  really\n"
-"       PORT++.\n"
-"\n"
-, stdout);
- fputs(
-"       Starting in 7.19.5, you can append \":[start]-[end]\" to the right of the\n"
-"       address, to tell curl what TCP port range to use. That means you  spec-\n"
-"       ify  a  port  range,  from  a lower to a higher number. A single number\n"
-"       works as well, but do note that it increases the risk of failure  since\n"
-"       the port may not be available.\n"
-"\n"
-"       -q     If  used  as the first parameter on the command line, the curlrc\n"
-, stdout);
- fputs(
-"              config file will not be read and used. See the  -K/--config  for\n"
-"              details on the default config file search path.\n"
-"\n"
-"       -Q/--quote <command>\n"
-"              (FTP/SFTP)  Send  an arbitrary command to the remote FTP or SFTP\n"
-"              server. Quote commands are sent BEFORE the transfer takes  place\n"
-"              (just  after  the  initial PWD command in an FTP transfer, to be\n"
-"              exact). To make commands take place after a successful transfer,\n"
-, stdout);
- fputs(
-"              prefix  them  with  a  dash '-'.  To make commands be sent after\n"
-"              libcurl has changed  the  working  directory,  just  before  the\n"
-"              transfer command(s), prefix the command with a '+' (this is only\n"
-"              supported for FTP). You may specify any number of  commands.  If\n"
-"              the  server  returns failure for one of the commands, the entire\n"
-"              operation will be aborted. You must send  syntactically  correct\n"
-, stdout);
- fputs(
-"              FTP  commands  as  RFC959  defines to FTP servers, or one of the\n"
-"              commands listed below to SFTP servers.  This option can be  used\n"
-"              multiple times.\n"
-"\n"
-"              SFTP  is  a  binary protocol. Unlike for FTP, libcurl interprets\n"
-"              SFTP quote commands before sending them to the server.   Follow-\n"
-"              ing is the list of all supported SFTP quote commands:\n"
-"\n"
-"              chgrp group file\n"
-, stdout);
- fputs(
-"                     The  chgrp command sets the group ID of the file named by\n"
-"                     the file operand to the group ID specified by  the  group\n"
-"                     operand. The group operand is a decimal integer group ID.\n"
-"\n"
-"              chmod mode file\n"
-"                     The  chmod  command  modifies  the  file mode bits of the\n"
-"                     specified file. The mode operand is an octal integer mode\n"
-"                     number.\n"
-"\n"
-"              chown user file\n"
-, stdout);
- fputs(
-"                     The chown command sets the owner of the file named by the\n"
-"                     file operand to the user ID specified by the  user  oper-\n"
-"                     and. The user operand is a decimal integer user ID.\n"
-"\n"
-"              ln source_file target_file\n"
-"                     The ln and symlink commands create a symbolic link at the\n"
-"                     target_file location pointing to  the  source_file  loca-\n"
-"                     tion.\n"
-"\n"
-"              mkdir directory_name\n"
-, stdout);
- fputs(
-"                     The  mkdir  command  creates  the  directory named by the\n"
-"                     directory_name operand.\n"
-"\n"
-"              pwd    The pwd command returns the absolute pathname of the cur-\n"
-"                     rent working directory.\n"
-"\n"
-"              rename source target\n"
-"                     The rename command renames the file or directory named by\n"
-"                     the source operand to the destination path named  by  the\n"
-"                     target operand.\n"
-"\n"
-, stdout);
- fputs(
-"              rm file\n"
-"                     The rm command removes the file specified by the file op-\n"
-"                     erand.\n"
-"\n"
-"              rmdir directory\n"
-"                     The rmdir command removes the directory  entry  specified\n"
-"                     by the directory operand, provided it is empty.\n"
-"\n"
-"              symlink source_file target_file\n"
-"                     See ln.\n"
-"\n"
-"       --random-file <file>\n"
-"              (SSL) Specify the path name to file containing what will be con-\n"
-, stdout);
- fputs(
-"              sidered as random data. The data is  used  to  seed  the  random\n"
-"              engine for SSL connections.  See also the --egd-file option.\n"
-"\n"
-"       -r/--range <range>\n"
-"              (HTTP/FTP/SFTP/FILE)  Retrieve a byte range (i.e a partial docu-\n"
-"              ment) from a HTTP/1.1, FTP or  SFTP  server  or  a  local  FILE.\n"
-"              Ranges can be specified in a number of ways.\n"
-"\n"
-"              0-499     specifies the first 500 bytes\n"
-"\n"
-, stdout);
- fputs(
-"              500-999   specifies the second 500 bytes\n"
-"\n"
-"              -500      specifies the last 500 bytes\n"
-"\n"
-"              9500-     specifies the bytes from offset 9500 and forward\n"
-"\n"
-"              0-0,-1    specifies the first and last byte only(*)(H)\n"
-"\n"
-"              500-700,600-799\n"
-"                        specifies 300 bytes from offset 500(H)\n"
-"\n"
-"              100-199,500-599\n"
-"                        specifies two separate 100-byte ranges(*)(H)\n"
-"\n"
-, stdout);
- fputs(
-"       (*)  =  NOTE  that this will cause the server to reply with a multipart\n"
-"       response!\n"
-"\n"
-"       Only digit characters (0-9) are valid in the 'start' and 'stop'  fields\n"
-"       of  the 'start-stop' range syntax. If a non-digit character is given in\n"
-"       the range, the server's response will be unspecified, depending on  the\n"
-"       server's configuration.\n"
-"\n"
-"       You  should  also  be aware that many HTTP/1.1 servers do not have this\n"
-, stdout);
- fputs(
-"       feature enabled, so that when  you  attempt  to  get  a  range,  you'll\n"
-"       instead get the whole document.\n"
-"\n"
-"       FTP  and SFTP range downloads only support the simple 'start-stop' syn-\n"
-"       tax (optionally with one of the numbers omitted). FTP  use  depends  on\n"
-"       the extended FTP command SIZE.\n"
-"\n"
-"       If this option is used several times, the last one will be used.\n"
-"\n"
-"       --raw  When  used, it disables all internal HTTP decoding of content or\n"
-, stdout);
- fputs(
-"              transfer encodings and instead makes them passed  on  unaltered,\n"
-"              raw. (Added in 7.16.2)\n"
-"\n"
-"       -R/--remote-time\n"
-"              When  used,  this  will  make  libcurl attempt to figure out the\n"
-"              timestamp of the remote file, and if that is available make  the\n"
-"              local file get that same timestamp.\n"
-"\n"
-"       --retry <num>\n"
-"              If  a  transient  error is returned when curl tries to perform a\n"
-, stdout);
- fputs(
-"              transfer, it will retry this number of times before  giving  up.\n"
-"              Setting  the  number to 0 makes curl do no retries (which is the\n"
-"              default). Transient error means either: a timeout,  an  FTP  4xx\n"
-"              response code or an HTTP 5xx response code.\n"
-"\n"
-"              When  curl  is about to retry a transfer, it will first wait one\n"
-"              second and then for all forthcoming retries it will  double  the\n"
-, stdout);
- fputs(
-"              waiting  time until it reaches 10 minutes which then will be the\n"
-"              delay between the rest of the retries.  By  using  --retry-delay\n"
-"              you   disable  this  exponential  backoff  algorithm.  See  also\n"
-"              --retry-max-time to limit the total time  allowed  for  retries.\n"
-"              (Added in 7.12.3)\n"
-"\n"
-"              If  this  option  is  used  multiple  times, the last occurrence\n"
-"              decide the amount.\n"
-"\n"
-, stdout);
- fputs(
-"       --retry-delay <seconds>\n"
-"              Make curl sleep this amount of time before  each  retry  when  a\n"
-"              transfer  has  failed  with  a  transient  error (it changes the\n"
-"              default backoff time algorithm between retries). This option  is\n"
-"              only  interesting if --retry is also used. Setting this delay to\n"
-"              zero will make curl use the default  backoff  time.   (Added  in\n"
-"              7.12.3)\n"
-"\n"
-, stdout);
- fputs(
-"              If  this  option  is  used  multiple  times, the last occurrence\n"
-"              determines the amount.\n"
-"\n"
-"       --retry-max-time <seconds>\n"
-"              The retry timer is reset  before  the  first  transfer  attempt.\n"
-"              Retries will be done as usual (see --retry) as long as the timer\n"
-"              hasn't reached this given limit. Notice that if the timer hasn't\n"
-"              reached  the  limit, the request will be made and while perform-\n"
-, stdout);
- fputs(
-"              ing, it may take longer than this given time period. To limit  a\n"
-"              single  request's  maximum  time,  use  -m/--max-time.  Set this\n"
-"              option to zero to not timeout retries. (Added in 7.12.3)\n"
-"\n"
-"              If this option is  used  multiple  times,  the  last  occurrence\n"
-"              determines the amount.\n"
-"\n"
-"       -s/--silent\n"
-"              Silent  or  quiet  mode. Don't show progress meter or error mes-\n"
-"              sages.  Makes Curl mute.\n"
-"\n"
-, stdout);
- fputs(
-"       -S/--show-error\n"
-"              When used with -s it makes curl show  an  error  message  if  it\n"
-"              fails.\n"
-"\n"
-"       --socks4 <host[:port]>\n"
-"              Use the specified SOCKS4 proxy. If the port number is not speci-\n"
-"              fied, it is assumed at port 1080. (Added in 7.15.2)\n"
-"\n"
-"              This option overrides any previous use of  -x/--proxy,  as  they\n"
-"              are mutually exclusive.\n"
-"\n"
-, stdout);
- fputs(
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       --socks4a <host[:port]>\n"
-"              Use the specified SOCKS4a proxy. If the port number is not spec-\n"
-"              ified, it is assumed at port 1080. (Added in 7.18.0)\n"
-"\n"
-"              This option overrides any previous use of  -x/--proxy,  as  they\n"
-"              are mutually exclusive.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-, stdout);
- fputs(
-"       --socks5-hostname <host[:port]>\n"
-"              Use  the  specified  SOCKS5 proxy (and let the proxy resolve the\n"
-"              host name). If the port number is not specified, it  is  assumed\n"
-"              at port 1080. (Added in 7.18.0)\n"
-"\n"
-"              This  option  overrides  any previous use of -x/--proxy, as they\n"
-"              are mutually exclusive.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-, stdout);
- fputs(
-"              (This  option  was  previously  wrongly  documented  and used as\n"
-"              --socks without the number appended.)\n"
-"\n"
-"       --socks5 <host[:port]>\n"
-"              Use the specified SOCKS5 proxy  -  but  resolve  the  host  name\n"
-"              locally.  If  the port number is not specified, it is assumed at\n"
-"              port 1080.\n"
-"\n"
-"              This option overrides any previous use of  -x/--proxy,  as  they\n"
-"              are mutually exclusive.\n"
-"\n"
-, stdout);
- fputs(
-"              If this option is used several times, the last one will be used.\n"
-"              (This option was  previously  wrongly  documented  and  used  as\n"
-"              --socks without the number appended.)\n"
-"\n"
-"              This  option (as well as --socks4) does not work with IPV6, FTPS\n"
-"              or LDAP.\n"
-"\n"
-"       --socks5-gssapi-service <servicename>\n"
-"              The default service name for a socks server is rcmd/server-fqdn.\n"
-"              This option allows you to change it.\n"
-"\n"
-, stdout);
- fputs(
-"              Examples:\n"
-"               --socks5  proxy-name  --socks5-gssapi-service sockd   would use\n"
-"              sockd/proxy-name\n"
-"               --socks5  proxy-name  --socks5-gssapi-service   sockd/real-name\n"
-"              would  use  sockd/real-name  for cases where the proxy-name does\n"
-"              not match the princpal name.\n"
-"               (Added in 7.19.4).\n"
-"\n"
-"       --socks5-gssapi-nec\n"
-"              As part of the gssapi negotiation a protection mode  is  negoti-\n"
-, stdout);
- fputs(
-"              ated.  The  rfc1961  says  in  section 4.3/4.4 it should be pro-\n"
-"              tected, but the NEC  reference  implementation  does  not.   The\n"
-"              option  --socks5-gssapi-nec  allows  the unprotected exchange of\n"
-"              the protection mode negotiation. (Added in 7.19.4).\n"
-"\n"
-"       --stderr <file>\n"
-"              Redirect all writes to stderr to the specified file instead.  If\n"
-"              the  file  name is a plain '-', it is instead written to stdout.\n"
-, stdout);
- fputs(
-"              This option has no point when you're using a shell  with  decent\n"
-"              redirecting capabilities.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       --tcp-nodelay\n"
-"              Turn  on the TCP_NODELAY option. See the curl_easy_setopt(3) man\n"
-"              page for details about this option. (Added in 7.11.2)\n"
-"\n"
-"       -t/--telnet-option <OPT=val>\n"
-"              Pass options to the telnet protocol. Supported options are:\n"
-"\n"
-, stdout);
- fputs(
-"              TTYPE=<term> Sets the terminal type.\n"
-"\n"
-"              XDISPLOC=<X display> Sets the X display location.\n"
-"\n"
-"              NEW_ENV=<var,val> Sets an environment variable.\n"
-"\n"
-"       --tftp-blksize <value>\n"
-"              (TFTP) Set TFTP BLKSIZE option (must be >512). This is the block\n"
-"              size  that curl will try to use when tranferring data to or from\n"
-"              a TFTP server. By default 512 bytes will be used.\n"
-"\n"
-, stdout);
- fputs(
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"              (Added in 7.20.0)\n"
-"\n"
-"       -T/--upload-file <file>\n"
-"              This transfers the specified local file to the  remote  URL.  If\n"
-"              there is no file part in the specified URL, Curl will append the\n"
-"              local file name. NOTE that you must use a trailing / on the last\n"
-"              directory  to really prove to Curl that there is no file name or\n"
-, stdout);
- fputs(
-"              curl will think that your last directory name is the remote file\n"
-"              name to use. That will most likely cause the upload operation to\n"
-"              fail. If this is used on a HTTP(S) server, the PUT command  will\n"
-"              be used.\n"
-"\n"
-"              Use  the file name \"-\" (a single dash) to use stdin instead of a\n"
-"              given file.  Alternately, the file name \".\"  (a  single  period)\n"
-"              may  be  specified  instead  of \"-\" to use stdin in non-blocking\n"
-, stdout);
- fputs(
-"              mode to  allow  reading  server  output  while  stdin  is  being\n"
-"              uploaded.\n"
-"\n"
-"              You can specify one -T for each URL on the command line. Each -T\n"
-"              + URL pair specifies what to upload and to where. curl also sup-\n"
-"              ports \"globbing\" of the -T argument, meaning that you can upload\n"
-"              multiple files to a single URL by using the  same  URL  globbing\n"
-"              style supported in the URL, like this:\n"
-"\n"
-, stdout);
- fputs(
-"              curl -T \"{file1,file2}\" http://www.uploadtothissite.com\n"
-"\n"
-"              or even\n"
-"\n"
-"              curl -T \"img[1-1000].png\" ftp://ftp.picturemania.com/upload/\n"
-"\n"
-"       --trace <file>\n"
-"              Enables  a  full  trace  dump of all incoming and outgoing data,\n"
-"              including descriptive information, to the given output file. Use\n"
-"              \"-\" as filename to have the output sent to stdout.\n"
-"\n"
-, stdout);
- fputs(
-"              This  option overrides previous uses of -v/--verbose or --trace-\n"
-"              ascii.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       --trace-ascii <file>\n"
-"              Enables a full trace dump of all  incoming  and  outgoing  data,\n"
-"              including descriptive information, to the given output file. Use\n"
-"              \"-\" as filename to have the output sent to stdout.\n"
-"\n"
-, stdout);
- fputs(
-"              This is very similar to --trace, but leaves out the hex part and\n"
-"              only  shows  the ASCII part of the dump. It makes smaller output\n"
-"              that might be easier to read for untrained humans.\n"
-"\n"
-"              This option overrides previous uses of -v/--verbose or --trace.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       --trace-time\n"
-, stdout);
- fputs(
-"              Prepends a time stamp to each trace or verbose  line  that  curl\n"
-"              displays.  (Added in 7.14.0)\n"
-"\n"
-"       -u/--user <user:password>\n"
-"              Specify the user name and password to use for server authentica-\n"
-"              tion. Overrides -n/--netrc and --netrc-optional.\n"
-"\n"
-"              If you just give the user name (without entering a  colon)  curl\n"
-"              will prompt for a password.\n"
-"\n"
-, stdout);
- fputs(
-"              If  you  use an SSPI-enabled curl binary and do NTLM authentica-\n"
-"              tion, you can force curl to pick up the user name  and  password\n"
-"              from  your  environment by simply specifying a single colon with\n"
-"              this option: \"-u :\".\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -U/--proxy-user <user:password>\n"
-"              Specify the user name and password to use for proxy  authentica-\n"
-"              tion.\n"
-"\n"
-, stdout);
- fputs(
-"              If  you  use an SSPI-enabled curl binary and do NTLM authentica-\n"
-"              tion, you can force curl to pick up the user name  and  password\n"
-"              from  your  environment by simply specifying a single colon with\n"
-"              this option: \"-U :\".\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       --url <URL>\n"
-"              Specify a URL to fetch. This option is  mostly  handy  when  you\n"
-, stdout);
- fputs(
-"              want to specify URL(s) in a config file.\n"
-"\n"
-"              This  option  may  be used any number of times. To control where\n"
-"              this URL is written, use the -o/--output or the -O/--remote-name\n"
-"              options.\n"
-"\n"
-"       -v/--verbose\n"
-"              Makes  the  fetching  more  verbose/talkative. Mostly useful for\n"
-"              debugging. A line starting with '>' means \"header data\" sent  by\n"
-, stdout);
- fputs(
-"              curl, '<' means \"header data\" received by curl that is hidden in\n"
-"              normal cases, and a line starting with '*' means additional info\n"
-"              provided by curl.\n"
-"\n"
-"              Note  that  if  you  only  want  HTTP  headers  in  the  output,\n"
-"              -i/--include might be the option you're looking for.\n"
-"\n"
-"              If you think this option still doesn't give you enough  details,\n"
-, stdout);
- fputs(
-"              consider using --trace or --trace-ascii instead.\n"
-"\n"
-"              This option overrides previous uses of --trace-ascii or --trace.\n"
-"\n"
-"              Use -S/--silent to make curl quiet.\n"
-"\n"
-"       -V/--version\n"
-"              Displays information about curl and the libcurl version it uses.\n"
-"              The  first  line  includes the full version of curl, libcurl and\n"
-"              other 3rd party libraries linked with the executable.\n"
-"\n"
-, stdout);
- fputs(
-"              The second line (starts with \"Protocols:\") shows  all  protocols\n"
-"              that libcurl reports to support.\n"
-"\n"
-"              The third line (starts with \"Features:\") shows specific features\n"
-"              libcurl reports to offer. Available features include:\n"
-"\n"
-"              IPv6   You can use IPv6 with this.\n"
-"\n"
-"              krb4   Krb4 for FTP is supported.\n"
-"\n"
-"              SSL    HTTPS and FTPS are supported.\n"
-"\n"
-, stdout);
- fputs(
-"              libz   Automatic decompression of compressed files over HTTP  is\n"
-"                     supported.\n"
-"\n"
-"              NTLM   NTLM authentication is supported.\n"
-"\n"
-"              GSS-Negotiate\n"
-"                     Negotiate authentication and krb5 for FTP is supported.\n"
-"\n"
-"              Debug  This  curl  uses a libcurl built with Debug. This enables\n"
-"                     more error-tracking and memory debugging etc.  For  curl-\n"
-"                     developers only!\n"
-"\n"
-"              AsynchDNS\n"
-, stdout);
- fputs(
-"                     This curl uses asynchronous name resolves.\n"
-"\n"
-"              SPNEGO SPNEGO Negotiate authentication is supported.\n"
-"\n"
-"              Largefile\n"
-"                     This curl supports transfers of large files, files larger\n"
-"                     than 2GB.\n"
-"\n"
-"              IDN    This curl supports IDN - international domain names.\n"
-"\n"
-"              SSPI   SSPI is supported. If you use NTLM and set a  blank  user\n"
-, stdout);
- fputs(
-"                     name,  curl  will authenticate with your current user and\n"
-"                     password.\n"
-"\n"
-"       -w/--write-out <format>\n"
-"              Defines what to display on stdout after a completed and success-\n"
-"              ful  operation.  The  format  is a string that may contain plain\n"
-"              text mixed with any number of variables. The string can be spec-\n"
-"              ified  as \"string\", to get read from a particular file you spec-\n"
-, stdout);
- fputs(
-"              ify it \"@filename\" and to tell curl  to  read  the  format  from\n"
-"              stdin you write \"@-\".\n"
-"\n"
-"              The  variables  present in the output format will be substituted\n"
-"              by the value or text that curl thinks fit, as  described  below.\n"
-"              All  variables are specified as %{variable_name} and to output a\n"
-"              normal % you just write them as %%. You can output a newline  by\n"
-, stdout);
- fputs(
-"              using \\n, a carriage return with \\r and a tab space with \\t.\n"
-"\n"
-"              NOTE: The %-symbol is a special symbol in the win32-environment,\n"
-"              where all occurrences of %  must  be  doubled  when  using  this\n"
-"              option.\n"
-"\n"
-"              The variables available at this point are:\n"
-"\n"
-"              url_effective  The URL that was fetched last. This is most mean-\n"
-"                             ingful if you've told curl  to  follow  location:\n"
-, stdout);
- fputs(
-"                             headers.\n"
-"\n"
-"              http_code      The numerical response code that was found in the\n"
-"                             last retrieved HTTP(S)  or  FTP(s)  transfer.  In\n"
-"                             7.18.2  the alias response_code was added to show\n"
-"                             the same info.\n"
-"\n"
-"              http_connect   The numerical code that was  found  in  the  last\n"
-, stdout);
- fputs(
-"                             response   (from  a  proxy)  to  a  curl  CONNECT\n"
-"                             request. (Added in 7.12.4)\n"
-"\n"
-"              time_total     The total time, in seconds, that the full  opera-\n"
-"                             tion lasted. The time will be displayed with mil-\n"
-"                             lisecond resolution.\n"
-"\n"
-"              time_namelookup\n"
-"                             The time, in seconds,  it  took  from  the  start\n"
-, stdout);
- fputs(
-"                             until the name resolving was completed.\n"
-"\n"
-"              time_connect   The  time,  in  seconds,  it  took from the start\n"
-"                             until the TCP connect  to  the  remote  host  (or\n"
-"                             proxy) was completed.\n"
-"\n"
-"              time_appconnect\n"
-"                             The  time,  in  seconds,  it  took from the start\n"
-"                             until the SSL/SSH/etc  connect/handshake  to  the\n"
-, stdout);
- fputs(
-"                             remote host was completed. (Added in 7.19.0)\n"
-"\n"
-"              time_pretransfer\n"
-"                             The  time,  in  seconds,  it  took from the start\n"
-"                             until the file transfer was just about to  begin.\n"
-"                             This includes all pre-transfer commands and nego-\n"
-"                             tiations that are specific to the particular pro-\n"
-"                             tocol(s) involved.\n"
-"\n"
-, stdout);
- fputs(
-"              time_redirect  The time, in seconds, it took for all redirection\n"
-"                             steps include name lookup,  connect,  pretransfer\n"
-"                             and  transfer  before  the  final transaction was\n"
-"                             started. time_redirect shows the complete  execu-\n"
-"                             tion  time  for  multiple redirections. (Added in\n"
-"                             7.12.3)\n"
-"\n"
-"              time_starttransfer\n"
-, stdout);
- fputs(
-"                             The time, in seconds,  it  took  from  the  start\n"
-"                             until  the first byte was just about to be trans-\n"
-"                             ferred. This includes time_pretransfer  and  also\n"
-"                             the  time  the  server  needed  to  calculate the\n"
-"                             result.\n"
-"\n"
-"              size_download  The total amount of bytes that were downloaded.\n"
-"\n"
-, stdout);
- fputs(
-"              size_upload    The total amount of bytes that were uploaded.\n"
-"\n"
-"              size_header    The total amount of bytes of the downloaded head-\n"
-"                             ers.\n"
-"\n"
-"              size_request   The  total  amount of bytes that were sent in the\n"
-"                             HTTP request.\n"
-"\n"
-"              speed_download The average download speed that curl measured for\n"
-"                             the complete download. Bytes per second.\n"
-"\n"
-, stdout);
- fputs(
-"              speed_upload   The  average  upload speed that curl measured for\n"
-"                             the complete upload. Bytes per second.\n"
-"\n"
-"              content_type   The Content-Type of the  requested  document,  if\n"
-"                             there was any.\n"
-"\n"
-"              num_connects   Number  of new connects made in the recent trans-\n"
-"                             fer. (Added in 7.12.3)\n"
-"\n"
-, stdout);
- fputs(
-"              num_redirects  Number of redirects that  were  followed  in  the\n"
-"                             request. (Added in 7.12.3)\n"
-"\n"
-"              redirect_url   When a HTTP request was made without -L to follow\n"
-"                             redirects, this variable will show the actual URL\n"
-"                             a redirect would take you to. (Added in 7.18.2)\n"
-"\n"
-"              ftp_entry_path The initial path libcurl ended up in when logging\n"
-, stdout);
- fputs(
-"                             on to the remote FTP server. (Added in 7.15.4)\n"
-"\n"
-"              ssl_verify_result\n"
-"                             The result of the SSL peer certificate  verifica-\n"
-"                             tion that was requested. 0 means the verification\n"
-"                             was successful. (Added in 7.19.0)\n"
-"\n"
-"       If this option is used several times, the last one will be used.\n"
-"\n"
-"       -x/--proxy <proxyhost[:port]>\n"
-, stdout);
- fputs(
-"              Use the specified HTTP proxy. If the port number is  not  speci-\n"
-"              fied, it is assumed at port 1080.\n"
-"\n"
-"              This  option  overrides  existing environment variables that set\n"
-"              the proxy to use. If there's an environment variable  setting  a\n"
-"              proxy, you can set proxy to \"\" to override it.\n"
-"\n"
-"              Note  that  all  operations that are performed over a HTTP proxy\n"
-, stdout);
- fputs(
-"              will transparently be converted to HTTP. It means  that  certain\n"
-"              protocol specific operations might not be available. This is not\n"
-"              the case if you can tunnel through the proxy, as done  with  the\n"
-"              -p/--proxytunnel option.\n"
-"\n"
-"              Starting  with 7.14.1, the proxy host can be specified the exact\n"
-"              same way as the proxy environment variables, including the  pro-\n"
-, stdout);
- fputs(
-"              tocol prefix (http://) and the embedded user + password.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -X/--request <command>\n"
-"              (HTTP) Specifies a custom request method to use when communicat-\n"
-"              ing with the HTTP server.  The specified request  will  be  used\n"
-"              instead  of  the  method otherwise used (which defaults to GET).\n"
-"              Read the HTTP 1.1 specification for  details  and  explanations.\n"
-, stdout);
- fputs(
-"              Common  additional  HTTP  requests  include  PUT and DELETE, but\n"
-"              related technologies like WebDAV offers PROPFIND, COPY, MOVE and\n"
-"              more.\n"
-"\n"
-"              (FTP) Specifies a custom FTP command to use instead of LIST when\n"
-"              doing file lists with FTP.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -y/--speed-time <time>\n"
-"              If a download is slower than speed-limit bytes per second during\n"
-, stdout);
- fputs(
-"              a speed-time period, the download gets aborted. If speed-time is\n"
-"              used, the default speed-limit will be 1 unless set with -Y.\n"
-"\n"
-"              This option controls transfers and thus  will  not  affect  slow\n"
-"              connects  etc.  If this is a concern for you, try the --connect-\n"
-"              timeout option.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -Y/--speed-limit <speed>\n"
-, stdout);
- fputs(
-"              If a download is slower than this given speed (in bytes per sec-\n"
-"              ond)  for  speed-time seconds it gets aborted. speed-time is set\n"
-"              with -y and is 30 if not set.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -z/--time-cond <date expression>\n"
-"              (HTTP/FTP) Request a file that has been modified later than  the\n"
-"              given  time  and date, or one that has been modified before that\n"
-, stdout);
- fputs(
-"              time. The date expression can be all sorts of date strings or if\n"
-"              it  doesn't  match  any  internal ones, it tries to get the time\n"
-"              from a given file name  instead!  See  the  curl_getdate(3)  man\n"
-"              pages for date expression details.\n"
-"\n"
-"              Start the date expression with a dash (-) to make it request for\n"
-"              a document that is older than the given date/time, default is  a\n"
-, stdout);
- fputs(
-"              document that is newer than the specified date/time.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       --max-redirs <num>\n"
-"              Set   maximum   number  of  redirection-followings  allowed.  If\n"
-"              -L/--location is used, this option can be used to  prevent  curl\n"
-"              from following redirections \"in absurdum\". By default, the limit\n"
-"              is set to 50 redirections. Set this option to -1 to make it lim-\n"
-, stdout);
- fputs(
-"              itless.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"       -0/--http1.0\n"
-"              (HTTP)  Forces curl to issue its requests using HTTP 1.0 instead\n"
-"              of using its internally preferred: HTTP 1.1.\n"
-"\n"
-"       -1/--tlsv1\n"
-"              (SSL) Forces curl to use TLS version 1 when negotiating  with  a\n"
-"              remote TLS server.\n"
-"\n"
-"       -2/--sslv2\n"
-"              (SSL)  Forces  curl to use SSL version 2 when negotiating with a\n"
-, stdout);
- fputs(
-"              remote SSL server.\n"
-"\n"
-"       -3/--sslv3\n"
-"              (SSL) Forces curl to use SSL version 3 when negotiating  with  a\n"
-"              remote SSL server.\n"
-"\n"
-"       -4/--ipv4\n"
-"              If  libcurl  is  capable  of resolving an address to multiple IP\n"
-"              versions (which it is if it is IPv6-capable), this option  tells\n"
-"              libcurl to resolve names to IPv4 addresses only.\n"
-"\n"
-"       -6/--ipv6\n"
-"              If  libcurl  is  capable  of resolving an address to multiple IP\n"
-, stdout);
- fputs(
-"              versions (which it is if it is IPv6-capable), this option  tells\n"
-"              libcurl to resolve names to IPv6 addresses only.\n"
-"\n"
-"       -#/--progress-bar\n"
-"              Make curl display progress information as a progress bar instead\n"
-"              of the default statistics.\n"
-"\n"
-"FILES\n"
-"       ~/.curlrc\n"
-"              Default config file, see -K/--config for details.\n"
-"\n"
-"ENVIRONMENT\n"
-, stdout);
- fputs(
-"       The environment variables can be specified in lower case or upper case.\n"
-"       The lower case version has precedence. http_proxy is an exception as it\n"
-"       is only available in lower case.\n"
-"\n"
-"       http_proxy [protocol://]<host>[:port]\n"
-"              Sets the proxy server to use for HTTP.\n"
-"       HTTPS_PROXY [protocol://]<host>[:port]\n"
-"              Sets the proxy server to use for HTTPS.\n"
-"\n"
-"       FTP_PROXY [protocol://]<host>[:port]\n"
-"              Sets the proxy server to use for FTP.\n"
-"\n"
-, stdout);
- fputs(
-"       ALL_PROXY [protocol://]<host>[:port]\n"
-"              Sets the proxy server to use if no  protocol-specific  proxy  is\n"
-"              set.\n"
-"\n"
-"       NO_PROXY <comma-separated list of hosts>\n"
-"              list  of  host names that shouldn't go through any proxy. If set\n"
-"              to a asterisk '*' only, it matches all hosts.\n"
-"\n"
-"EXIT CODES\n"
-"       There are a bunch of different  error  codes  and  their  corresponding\n"
-, stdout);
- fputs(
-"       error  messages  that  may appear during bad conditions. At the time of\n"
-"       this writing, the exit codes are:\n"
-"\n"
-"       1      Unsupported protocol. This build of curl has no support for this\n"
-"              protocol.\n"
-"\n"
-"       2      Failed to initialize.\n"
-"\n"
-"       3      URL malformed. The syntax was not correct.\n"
-"\n"
-"       5      Couldn't  resolve  proxy.  The  given  proxy  host  could not be\n"
-"              resolved.\n"
-"\n"
-, stdout);
- fputs(
-"       6      Couldn't resolve host. The given remote host was not resolved.\n"
-"\n"
-"       7      Failed to connect to host.\n"
-"\n"
-"       8      FTP weird server reply.  The  server  sent  data  curl  couldn't\n"
-"              parse.\n"
-"\n"
-"       9      FTP  access  denied. The server denied login or denied access to\n"
-"              the particular resource or directory you wanted to  reach.  Most\n"
-"              often  you  tried to change to a directory that doesn't exist on\n"
-"              the server.\n"
-"\n"
-, stdout);
- fputs(
-"       11     FTP weird PASS reply. Curl couldn't parse the reply sent to  the\n"
-"              PASS request.\n"
-"\n"
-"       13     FTP  weird PASV reply, Curl couldn't parse the reply sent to the\n"
-"              PASV request.\n"
-"\n"
-"       14     FTP weird 227 format.  Curl  couldn't  parse  the  227-line  the\n"
-"              server sent.\n"
-"\n"
-"       15     FTP  can't  get host. Couldn't resolve the host IP we got in the\n"
-"              227-line.\n"
-"\n"
-, stdout);
- fputs(
-"       17     FTP couldn't set binary.  Couldn't  change  transfer  method  to\n"
-"              binary.\n"
-"\n"
-"       18     Partial file. Only a part of the file was transferred.\n"
-"\n"
-"       19     FTP  couldn't download/access the given file, the RETR (or simi-\n"
-"              lar) command failed.\n"
-"\n"
-"       21     FTP quote error. A quote command returned error from the server.\n"
-"       22     HTTP page not retrieved. The requested  url  was  not  found  or\n"
-, stdout);
- fputs(
-"              returned  another  error  with  the HTTP error code being 400 or\n"
-"              above. This return code only appears if -f/--fail is used.\n"
-"\n"
-"       23     Write error. Curl couldn't write data to a local  filesystem  or\n"
-"              similar.\n"
-"\n"
-"       25     FTP  couldn't  STOR  file. The server denied the STOR operation,\n"
-"              used for FTP uploading.\n"
-"\n"
-"       26     Read error. Various reading problems.\n"
-"\n"
-, stdout);
- fputs(
-"       27     Out of memory. A memory allocation request failed.\n"
-"\n"
-"       28     Operation timeout. The specified  time-out  period  was  reached\n"
-"              according to the conditions.\n"
-"\n"
-"       30     FTP  PORT  failed.  The PORT command failed. Not all FTP servers\n"
-"              support the PORT  command,  try  doing  a  transfer  using  PASV\n"
-"              instead!\n"
-"\n"
-"       31     FTP  couldn't use REST. The REST command failed. This command is\n"
-"              used for resumed FTP transfers.\n"
-"\n"
-, stdout);
- fputs(
-"       33     HTTP range error. The range \"command\" didn't work.\n"
-"\n"
-"       34     HTTP post error. Internal post-request generation error.\n"
-"\n"
-"       35     SSL connect error. The SSL handshaking failed.\n"
-"\n"
-"       36     FTP bad download resume. Couldn't continue  an  earlier  aborted\n"
-"              download.\n"
-"\n"
-"       37     FILE couldn't read file. Failed to open the file. Permissions?\n"
-"\n"
-"       38     LDAP cannot bind. LDAP bind operation failed.\n"
-"\n"
-"       39     LDAP search failed.\n"
-"\n"
-, stdout);
- fputs(
-"       41     Function not found. A required LDAP function was not found.\n"
-"\n"
-"       42     Aborted by callback. An application told curl to abort the oper-\n"
-"              ation.\n"
-"\n"
-"       43     Internal error. A function was called with a bad parameter.\n"
-"\n"
-"       45     Interface error. A specified outgoing  interface  could  not  be\n"
-"              used.\n"
-"\n"
-"       47     Too many redirects. When following redirects, curl hit the maxi-\n"
-"              mum amount.\n"
-"\n"
-, stdout);
- fputs(
-"       48     Unknown TELNET option specified.\n"
-"\n"
-"       49     Malformed telnet option.\n"
-"\n"
-"       51     The peer's SSL certificate or SSH MD5 fingerprint was not ok.\n"
-"\n"
-"       52     The server didn't reply anything, which here  is  considered  an\n"
-"              error.\n"
-"\n"
-"       53     SSL crypto engine not found.\n"
-"\n"
-"       54     Cannot set SSL crypto engine as default.\n"
-"\n"
-"       55     Failed sending network data.\n"
-"\n"
-"       56     Failure in receiving network data.\n"
-"\n"
-, stdout);
- fputs(
-"       58     Problem with the local certificate.\n"
-"\n"
-"       59     Couldn't use specified SSL cipher.\n"
-"\n"
-"       60     Peer  certificate cannot be authenticated with known CA certifi-\n"
-"              cates.\n"
-"\n"
-"       61     Unrecognized transfer encoding.\n"
-"\n"
-"       62     Invalid LDAP URL.\n"
-"\n"
-"       63     Maximum file size exceeded.\n"
-"\n"
-"       64     Requested FTP SSL level failed.\n"
-"\n"
-"       65     Sending the data requires a rewind that failed.\n"
-"\n"
-"       66     Failed to initialise SSL Engine.\n"
-"\n"
-, stdout);
- fputs(
-"       67     The user name, password, or similar was not  accepted  and  curl\n"
-"              failed to log in.\n"
-"\n"
-"       68     File not found on TFTP server.\n"
-"\n"
-"       69     Permission problem on TFTP server.\n"
-"\n"
-"       70     Out of disk space on TFTP server.\n"
-"\n"
-"       71     Illegal TFTP operation.\n"
-"\n"
-"       72     Unknown TFTP transfer ID.\n"
-"\n"
-"       73     File already exists (TFTP).\n"
-"\n"
-"       74     No such user (TFTP).\n"
-"\n"
-"       75     Character conversion failed.\n"
-"\n"
-, stdout);
- fputs(
-"       76     Character conversion functions required.\n"
-"\n"
-"       77     Problem with reading the SSL CA cert (path? access rights?).\n"
-"\n"
-"       78     The resource referenced in the URL does not exist.\n"
-"\n"
-"       79     An unspecified error occurred during the SSH session.\n"
-"\n"
-"       80     Failed to shut down the SSL connection.\n"
-"\n"
-"       82     Could  not  load  CRL  file,  missing  or wrong format (added in\n"
-"              7.19.0).\n"
-"\n"
-"       83     Issuer check failed (added in 7.19.0).\n"
-"\n"
-, stdout);
- fputs(
-"       XX     More error codes will appear here in future releases. The exist-\n"
-"              ing ones are meant to never change.\n"
-"\n"
-"AUTHORS / CONTRIBUTORS\n"
-"       Daniel  Stenberg is the main author, but the whole list of contributors\n"
-"       is found in the separate THANKS file.\n"
-"\n"
-"WWW\n"
-"       http://curl.haxx.se\n"
-"\n"
-"FTP\n"
-"       ftp://ftp.sunet.se/pub/www/utilities/curl/\n"
-"\n"
-"SEE ALSO\n"
-"       ftp(1), wget(1)\n"
-"\n"
-"LATEST VERSION\n"
-"\n"
-, stdout);
- fputs(
-"  You always find news about what's going on as well as the latest versions\n"
-"  from the curl web pages, located at:\n"
-"\n"
-"        http://curl.haxx.se\n"
-"\n"
-"SIMPLE USAGE\n"
-"\n"
-"  Get the main page from Netscape's web-server:\n"
-"\n"
-"        curl http://www.netscape.com/\n"
-"\n"
-"  Get the README file the user's home directory at funet's ftp-server:\n"
-"\n"
-"        curl ftp://ftp.funet.fi/README\n"
-"\n"
-"  Get a web page from a server using port 8000:\n"
-"\n"
-"        curl http://www.weirdserver.com:8000/\n"
-"\n"
-"  Get a list of a directory of an FTP site:\n"
-"\n"
-, stdout);
- fputs(
-"        curl ftp://cool.haxx.se/\n"
-"\n"
-"  Get the definition of curl from a dictionary:\n"
-"\n"
-"        curl dict://dict.org/m:curl\n"
-"\n"
-"  Fetch two documents at once:\n"
-"\n"
-"        curl ftp://cool.haxx.se/ http://www.weirdserver.com:8000/\n"
-"\n"
-"  Get a file off an FTPS server:\n"
-"\n"
-"        curl ftps://files.are.secure.com/secrets.txt\n"
-"\n"
-"  or use the more appropriate FTPS way to get the same file:\n"
-"\n"
-"        curl --ftp-ssl ftp://files.are.secure.com/secrets.txt\n"
-"\n"
-"  Get a file from an SSH server using SFTP:\n"
-"\n"
-, stdout);
- fputs(
-"        curl -u username sftp://shell.example.com/etc/issue\n"
-"\n"
-"  Get a file from an SSH server using SCP using a private key to authenticate:\n"
-"\n"
-"        curl -u username: --key ~/.ssh/id_dsa --pubkey ~/.ssh/id_dsa.pub \\\n"
-"            scp://shell.example.com/~/personal.txt\n"
-"\n"
-"  Get the main page from an IPv6 web server:\n"
-"\n"
-"        curl -g \"http://[2001:1890:1112:1::20]/\"\n"
-"\n"
-"DOWNLOAD TO A FILE\n"
-"\n"
-"  Get a web page and store in a local file:\n"
-"\n"
-"        curl -o thatpage.html http://www.netscape.com/\n"
-"\n"
-, stdout);
- fputs(
-"  Get a web page and store in a local file, make the local file get the name\n"
-"  of the remote document (if no file name part is specified in the URL, this\n"
-"  will fail):\n"
-"\n"
-"        curl -O http://www.netscape.com/index.html\n"
-"\n"
-"  Fetch two files and store them with their remote names:\n"
-"\n"
-"        curl -O www.haxx.se/index.html -O curl.haxx.se/download.html\n"
-"\n"
-"USING PASSWORDS\n"
-"\n"
-" FTP\n"
-"\n"
-"   To ftp files using name+passwd, include them in the URL like:\n"
-"\n"
-, stdout);
- fputs(
-"        curl ftp://name:passwd@machine.domain:port/full/path/to/file\n"
-"\n"
-"   or specify them with the -u flag like\n"
-"\n"
-"        curl -u name:passwd ftp://machine.domain:port/full/path/to/file\n"
-"\n"
-" FTPS\n"
-"\n"
-"   It is just like for FTP, but you may also want to specify and use\n"
-"   SSL-specific options for certificates etc.\n"
-"\n"
-"   Note that using FTPS:// as prefix is the \"implicit\" way as described in the\n"
-"   standards while the recommended \"explicit\" way is done by using FTP:// and\n"
-"   the --ftp-ssl option.\n"
-"\n"
-, stdout);
- fputs(
-" SFTP / SCP\n"
-"\n"
-"   This is similar to FTP, but you can specify a private key to use instead of\n"
-"   a password. Note that the private key may itself be protected by a password\n"
-"   that is unrelated to the login password of the remote system.  If you\n"
-"   provide a private key file you must also provide a public key file.\n"
-"\n"
-" HTTP\n"
-"\n"
-"   Curl also supports user and password in HTTP URLs, thus you can pick a file\n"
-"   like:\n"
-"\n"
-"        curl http://name:passwd@machine.domain/full/path/to/file\n"
-"\n"
-, stdout);
- fputs(
-"   or specify user and password separately like in\n"
-"\n"
-"        curl -u name:passwd http://machine.domain/full/path/to/file\n"
-"\n"
-"   HTTP offers many different methods of authentication and curl supports\n"
-"   several: Basic, Digest, NTLM and Negotiate. Without telling which method to\n"
-"   use, curl defaults to Basic. You can also ask curl to pick the most secure\n"
-"   ones out of the ones that the server accepts for the given URL, by using\n"
-"   --anyauth.\n"
-"\n"
-, stdout);
- fputs(
-"   NOTE! Since HTTP URLs don't support user and password, you can't use that\n"
-"   style when using Curl via a proxy. You _must_ use the -u style fetch\n"
-"   during such circumstances.\n"
-"\n"
-" HTTPS\n"
-"\n"
-"   Probably most commonly used with private certificates, as explained below.\n"
-"\n"
-"PROXY\n"
-"\n"
-" Get an ftp file using a proxy named my-proxy that uses port 888:\n"
-"\n"
-"        curl -x my-proxy:888 ftp://ftp.leachsite.com/README\n"
-"\n"
-" Get a file from a HTTP server that requires user and password, using the\n"
-" same proxy as above:\n"
-"\n"
-, stdout);
- fputs(
-"        curl -u user:passwd -x my-proxy:888 http://www.get.this/\n"
-"\n"
-" Some proxies require special authentication. Specify by using -U as above:\n"
-"\n"
-"        curl -U user:passwd -x my-proxy:888 http://www.get.this/\n"
-"\n"
-" A comma-separated list of hosts and domains which do not use the proxy can\n"
-" be specified as:\n"
-"\n"
-"        curl --noproxy localhost,get.this -x my-proxy:888 http://www.get.this/\n"
-"\n"
-" If the proxy is specified with --proxy1.0 instead of --proxy or -x, then\n"
-, stdout);
- fputs(
-" curl will use HTTP/1.0 instead of HTTP/1.1 for any CONNECT attempts.\n"
-"\n"
-" curl also supports SOCKS4 and SOCKS5 proxies with --socks4 and --socks5.\n"
-"\n"
-" See also the environment variables Curl support that offer further proxy\n"
-" control.\n"
-"\n"
-"RANGES\n"
-"\n"
-"  With HTTP 1.1 byte-ranges were introduced. Using this, a client can request\n"
-"  to get only one or more subparts of a specified document. Curl supports\n"
-"  this with the -r flag.\n"
-"\n"
-"  Get the first 100 bytes of a document:\n"
-"\n"
-, stdout);
- fputs(
-"        curl -r 0-99 http://www.get.this/\n"
-"\n"
-"  Get the last 500 bytes of a document:\n"
-"\n"
-"        curl -r -500 http://www.get.this/\n"
-"\n"
-"  Curl also supports simple ranges for FTP files as well. Then you can only\n"
-"  specify start and stop position.\n"
-"\n"
-"  Get the first 100 bytes of a document using FTP:\n"
-"\n"
-"        curl -r 0-99 ftp://www.get.this/README\n"
-"\n"
-"UPLOADING\n"
-"\n"
-" FTP / FTPS / SFTP / SCP\n"
-"\n"
-"  Upload all data on stdin to a specified server:\n"
-"\n"
-"        curl -T - ftp://ftp.upload.com/myfile\n"
-"\n"
-, stdout);
- fputs(
-"  Upload data from a specified file, login with user and password:\n"
-"\n"
-"        curl -T uploadfile -u user:passwd ftp://ftp.upload.com/myfile\n"
-"\n"
-"  Upload a local file to the remote site, and use the local file name remote\n"
-"  too:\n"
-"\n"
-"        curl -T uploadfile -u user:passwd ftp://ftp.upload.com/\n"
-"\n"
-"  Upload a local file to get appended to the remote file:\n"
-"\n"
-"        curl -T localfile -a ftp://ftp.upload.com/remotefile\n"
-"\n"
-"  Curl also supports ftp upload through a proxy, but only if the proxy is\n"
-, stdout);
- fputs(
-"  configured to allow that kind of tunneling. If it does, you can run curl in\n"
-"  a fashion similar to:\n"
-"\n"
-"        curl --proxytunnel -x proxy:port -T localfile ftp.upload.com\n"
-"\n"
-" HTTP\n"
-"\n"
-"  Upload all data on stdin to a specified http site:\n"
-"\n"
-"        curl -T - http://www.upload.com/myfile\n"
-"\n"
-"  Note that the http server must have been configured to accept PUT before\n"
-"  this can be done successfully.\n"
-"\n"
-"  For other ways to do http data upload, see the POST section below.\n"
-"\n"
-"VERBOSE / DEBUG\n"
-"\n"
-, stdout);
- fputs(
-"  If curl fails where it isn't supposed to, if the servers don't let you in,\n"
-"  if you can't understand the responses: use the -v flag to get verbose\n"
-"  fetching. Curl will output lots of info and what it sends and receives in\n"
-"  order to let the user see all client-server interaction (but it won't show\n"
-"  you the actual data).\n"
-"\n"
-"        curl -v ftp://ftp.upload.com/\n"
-"\n"
-"  To get even more details and information on what curl does, try using the\n"
-, stdout);
- fputs(
-"  --trace or --trace-ascii options with a given file name to log to, like\n"
-"  this:\n"
-"\n"
-"        curl --trace trace.txt www.haxx.se\n"
-"\n"
-"\n"
-"DETAILED INFORMATION\n"
-"\n"
-"  Different protocols provide different ways of getting detailed information\n"
-"  about specific files/documents. To get curl to show detailed information\n"
-"  about a single file, you should use -I/--head option. It displays all\n"
-"  available info on a single file for HTTP and FTP. The HTTP information is a\n"
-"  lot more extensive.\n"
-"\n"
-, stdout);
- fputs(
-"  For HTTP, you can get the header information (the same as -I would show)\n"
-"  shown before the data by using -i/--include. Curl understands the\n"
-"  -D/--dump-header option when getting files from both FTP and HTTP, and it\n"
-"  will then store the headers in the specified file.\n"
-"\n"
-"  Store the HTTP headers in a separate file (headers.txt in the example):\n"
-"\n"
-"        curl --dump-header headers.txt curl.haxx.se\n"
-"\n"
-"  Note that headers stored in a separate file can be very useful at a later\n"
-, stdout);
- fputs(
-"  time if you want curl to use cookies sent by the server. More about that in\n"
-"  the cookies section.\n"
-"\n"
-"POST (HTTP)\n"
-"\n"
-"  It's easy to post data using curl. This is done using the -d <data>\n"
-"  option.  The post data must be urlencoded.\n"
-"\n"
-"  Post a simple \"name\" and \"phone\" guestbook.\n"
-"\n"
-"        curl -d \"name=Rafael%20Sagula&phone=3320780\" \\\n"
-"                http://www.where.com/guest.cgi\n"
-"\n"
-"  How to post a form with curl, lesson #1:\n"
-"\n"
-, stdout);
- fputs(
-"  Dig out all the <input> tags in the form that you want to fill in. (There's\n"
-"  a perl program called formfind.pl on the curl site that helps with this).\n"
-"\n"
-"  If there's a \"normal\" post, you use -d to post. -d takes a full \"post\n"
-"  string\", which is in the format\n"
-"\n"
-"        <variable1>=<data1>&<variable2>=<data2>&...\n"
-"\n"
-"  The 'variable' names are the names set with \"name=\" in the <input> tags, and\n"
-"  the data is the contents you want to fill in for the inputs. The data *must*\n"
-, stdout);
- fputs(
-"  be properly URL encoded. That means you replace space with + and that you\n"
-"  write weird letters with %XX where XX is the hexadecimal representation of\n"
-"  the letter's ASCII code.\n"
-"\n"
-"  Example:\n"
-"\n"
-"  (page located at http://www.formpost.com/getthis/\n"
-"\n"
-"        <form action=\"post.cgi\" method=\"post\">\n"
-"        <input name=user size=10>\n"
-"        <input name=pass type=password size=10>\n"
-"        <input name=id type=hidden value=\"blablabla\">\n"
-"        <input name=ding value=\"submit\">\n"
-"        </form>\n"
-"\n"
-, stdout);
- fputs(
-"  We want to enter user 'foobar' with password '12345'.\n"
-"\n"
-"  To post to this, you enter a curl command line like:\n"
-"\n"
-"        curl -d \"user=foobar&pass=12345&id=blablabla&ding=submit\"  (continues)\n"
-"          http://www.formpost.com/getthis/post.cgi\n"
-"\n"
-"\n"
-"  While -d uses the application/x-www-form-urlencoded mime-type, generally\n"
-"  understood by CGI's and similar, curl also supports the more capable\n"
-"  multipart/form-data type. This latter type supports things like file upload.\n"
-"\n"
-, stdout);
- fputs(
-"  -F accepts parameters like -F \"name=contents\". If you want the contents to\n"
-"  be read from a file, use <@filename> as contents. When specifying a file,\n"
-"  you can also specify the file content type by appending ';type=<mime type>'\n"
-"  to the file name. You can also post the contents of several files in one\n"
-"  field.  For example, the field name 'coolfiles' is used to send three files,\n"
-"  with different content types using the following syntax:\n"
-"\n"
-, stdout);
- fputs(
-"        curl -F \"coolfiles=@fil1.gif;type=image/gif,fil2.txt,fil3.html\" \\\n"
-"        http://www.post.com/postit.cgi\n"
-"\n"
-"  If the content-type is not specified, curl will try to guess from the file\n"
-"  extension (it only knows a few), or use the previously specified type (from\n"
-"  an earlier file if several files are specified in a list) or else it will\n"
-"  using the default type 'text/plain'.\n"
-"\n"
-"  Emulate a fill-in form with -F. Let's say you fill in three fields in a\n"
-, stdout);
- fputs(
-"  form. One field is a file name which to post, one field is your name and one\n"
-"  field is a file description. We want to post the file we have written named\n"
-"  \"cooltext.txt\". To let curl do the posting of this data instead of your\n"
-"  favourite browser, you have to read the HTML source of the form page and\n"
-"  find the names of the input fields. In our example, the input field names\n"
-"  are 'file', 'yourname' and 'filedescription'.\n"
-"\n"
-"        curl -F \"file=@cooltext.txt\" -F \"yourname=Daniel\" \\\n"
-, stdout);
- fputs(
-"             -F \"filedescription=Cool text file with cool text inside\" \\\n"
-"             http://www.post.com/postit.cgi\n"
-"\n"
-"  To send two files in one post you can do it in two ways:\n"
-"\n"
-"  1. Send multiple files in a single \"field\" with a single field name:\n"
-"\n"
-"        curl -F \"pictures=@dog.gif,cat.gif\"\n"
-"\n"
-"  2. Send two fields with two field names:\n"
-"\n"
-"        curl -F \"docpicture=@dog.gif\" -F \"catpicture=@cat.gif\"\n"
-"\n"
-"  To send a field value literally without interpreting a leading '@'\n"
-, stdout);
- fputs(
-"  or '<', or an embedded ';type=', use --form-string instead of\n"
-"  -F. This is recommended when the value is obtained from a user or\n"
-"  some other unpredictable source. Under these circumstances, using\n"
-"  -F instead of --form-string would allow a user to trick curl into\n"
-"  uploading a file.\n"
-"\n"
-"REFERRER\n"
-"\n"
-"  A HTTP request has the option to include information about which address\n"
-"  that referred to actual page.  Curl allows you to specify the\n"
-, stdout);
- fputs(
-"  referrer to be used on the command line. It is especially useful to\n"
-"  fool or trick stupid servers or CGI scripts that rely on that information\n"
-"  being available or contain certain data.\n"
-"\n"
-"        curl -e www.coolsite.com http://www.showme.com/\n"
-"\n"
-"  NOTE: The Referer: [sic] field is defined in the HTTP spec to be a full URL.\n"
-"\n"
-"USER AGENT\n"
-"\n"
-"  A HTTP request has the option to include information about the browser\n"
-"  that generated the request. Curl allows it to be specified on the command\n"
-, stdout);
- fputs(
-"  line. It is especially useful to fool or trick stupid servers or CGI\n"
-"  scripts that only accept certain browsers.\n"
-"\n"
-"  Example:\n"
-"\n"
-"  curl -A 'Mozilla/3.0 (Win95; I)' http://www.nationsbank.com/\n"
-"\n"
-"  Other common strings:\n"
-"    'Mozilla/3.0 (Win95; I)'     Netscape Version 3 for Windows 95\n"
-"    'Mozilla/3.04 (Win95; U)'    Netscape Version 3 for Windows 95\n"
-"    'Mozilla/2.02 (OS/2; U)'     Netscape Version 2 for OS/2\n"
-"    'Mozilla/4.04 [en] (X11; U; AIX 4.2; Nav)'           NS for AIX\n"
-, stdout);
- fputs(
-"    'Mozilla/4.05 [en] (X11; U; Linux 2.0.32 i586)'      NS for Linux\n"
-"\n"
-"  Note that Internet Explorer tries hard to be compatible in every way:\n"
-"    'Mozilla/4.0 (compatible; MSIE 4.01; Windows 95)'    MSIE for W95\n"
-"\n"
-"  Mozilla is not the only possible User-Agent name:\n"
-"    'Konqueror/1.0'             KDE File Manager desktop client\n"
-"    'Lynx/2.7.1 libwww-FM/2.14' Lynx command line browser\n"
-"\n"
-"COOKIES\n"
-"\n"
-"  Cookies are generally used by web servers to keep state information at the\n"
-, stdout);
- fputs(
-"  client's side. The server sets cookies by sending a response line in the\n"
-"  headers that looks like 'Set-Cookie: <data>' where the data part then\n"
-"  typically contains a set of NAME=VALUE pairs (separated by semicolons ';'\n"
-"  like \"NAME1=VALUE1; NAME2=VALUE2;\"). The server can also specify for what\n"
-"  path the \"cookie\" should be used for (by specifying \"path=value\"), when the\n"
-"  cookie should expire (\"expire=DATE\"), for what domain to use it\n"
-, stdout);
- fputs(
-"  (\"domain=NAME\") and if it should be used on secure connections only\n"
-"  (\"secure\").\n"
-"\n"
-"  If you've received a page from a server that contains a header like:\n"
-"        Set-Cookie: sessionid=boo123; path=\"/foo\";\n"
-"\n"
-"  it means the server wants that first pair passed on when we get anything in\n"
-"  a path beginning with \"/foo\".\n"
-"\n"
-"  Example, get a page that wants my name passed in a cookie:\n"
-"\n"
-"        curl -b \"name=Daniel\" www.sillypage.com\n"
-"\n"
-, stdout);
- fputs(
-"  Curl also has the ability to use previously received cookies in following\n"
-"  sessions. If you get cookies from a server and store them in a file in a\n"
-"  manner similar to:\n"
-"\n"
-"        curl --dump-header headers www.example.com\n"
-"\n"
-"  ... you can then in a second connect to that (or another) site, use the\n"
-"  cookies from the 'headers' file like:\n"
-"\n"
-"        curl -b headers www.example.com\n"
-"\n"
-"  While saving headers to a file is a working way to store cookies, it is\n"
-, stdout);
- fputs(
-"  however error-prone and not the preferred way to do this. Instead, make curl\n"
-"  save the incoming cookies using the well-known netscape cookie format like\n"
-"  this:\n"
-"\n"
-"        curl -c cookies.txt www.example.com\n"
-"\n"
-"  Note that by specifying -b you enable the \"cookie awareness\" and with -L\n"
-"  you can make curl follow a location: (which often is used in combination\n"
-"  with cookies). So that if a site sends cookies and a location, you can\n"
-"  use a non-existing file to trigger the cookie awareness like:\n"
-"\n"
-, stdout);
- fputs(
-"        curl -L -b empty.txt www.example.com\n"
-"\n"
-"  The file to read cookies from must be formatted using plain HTTP headers OR\n"
-"  as netscape's cookie file. Curl will determine what kind it is based on the\n"
-"  file contents.  In the above command, curl will parse the header and store\n"
-"  the cookies received from www.example.com.  curl will send to the server the\n"
-"  stored cookies which match the request as it follows the location.  The\n"
-"  file \"empty.txt\" may be a nonexistent file.\n"
-"\n"
-, stdout);
- fputs(
-"  Alas, to both read and write cookies from a netscape cookie file, you can\n"
-"  set both -b and -c to use the same file:\n"
-"\n"
-"        curl -b cookies.txt -c cookies.txt www.example.com\n"
-"\n"
-"PROGRESS METER\n"
-"\n"
-"  The progress meter exists to show a user that something actually is\n"
-"  happening. The different fields in the output have the following meaning:\n"
-"\n"
-"  % Total    % Received % Xferd  Average Speed          Time             Curr.\n"
-, stdout);
- fputs(
-"                                 Dload  Upload Total    Current  Left    Speed\n"
-"  0  151M    0 38608    0     0   9406      0  4:41:43  0:00:04  4:41:39  9287\n"
-"\n"
-"  From left-to-right:\n"
-"   %             - percentage completed of the whole transfer\n"
-"   Total         - total size of the whole expected transfer\n"
-"   %             - percentage completed of the download\n"
-"   Received      - currently downloaded amount of bytes\n"
-"   %             - percentage completed of the upload\n"
-, stdout);
- fputs(
-"   Xferd         - currently uploaded amount of bytes\n"
-"   Average Speed\n"
-"   Dload         - the average transfer speed of the download\n"
-"   Average Speed\n"
-"   Upload        - the average transfer speed of the upload\n"
-"   Time Total    - expected time to complete the operation\n"
-"   Time Current  - time passed since the invoke\n"
-"   Time Left     - expected time left to completion\n"
-"   Curr.Speed    - the average transfer speed the last 5 seconds (the first\n"
-, stdout);
- fputs(
-"                   5 seconds of a transfer is based on less time of course.)\n"
-"\n"
-"  The -# option will display a totally different progress bar that doesn't\n"
-"  need much explanation!\n"
-"\n"
-"SPEED LIMIT\n"
-"\n"
-"  Curl allows the user to set the transfer speed conditions that must be met\n"
-"  to let the transfer keep going. By using the switch -y and -Y you\n"
-"  can make curl abort transfers if the transfer speed is below the specified\n"
-"  lowest limit for a specified time.\n"
-"\n"
-, stdout);
- fputs(
-"  To have curl abort the download if the speed is slower than 3000 bytes per\n"
-"  second for 1 minute, run:\n"
-"\n"
-"        curl -Y 3000 -y 60 www.far-away-site.com\n"
-"\n"
-"  This can very well be used in combination with the overall time limit, so\n"
-"  that the above operation must be completed in whole within 30 minutes:\n"
-"\n"
-"        curl -m 1800 -Y 3000 -y 60 www.far-away-site.com\n"
-"\n"
-"  Forcing curl not to transfer data faster than a given rate is also possible,\n"
-, stdout);
- fputs(
-"  which might be useful if you're using a limited bandwidth connection and you\n"
-"  don't want your transfer to use all of it (sometimes referred to as\n"
-"  \"bandwidth throttle\").\n"
-"\n"
-"  Make curl transfer data no faster than 10 kilobytes per second:\n"
-"\n"
-"        curl --limit-rate 10K www.far-away-site.com\n"
-"\n"
-"    or\n"
-"\n"
-"        curl --limit-rate 10240 www.far-away-site.com\n"
-"\n"
-"  Or prevent curl from uploading data faster than 1 megabyte per second:\n"
-"\n"
-"        curl -T upload --limit-rate 1M ftp://uploadshereplease.com\n"
-"\n"
-, stdout);
- fputs(
-"  When using the --limit-rate option, the transfer rate is regulated on a\n"
-"  per-second basis, which will cause the total transfer speed to become lower\n"
-"  than the given number. Sometimes of course substantially lower, if your\n"
-"  transfer stalls during periods.\n"
-"\n"
-"CONFIG FILE\n"
-"\n"
-"  Curl automatically tries to read the .curlrc file (or _curlrc file on win32\n"
-"  systems) from the user's home dir on startup.\n"
-"\n"
-"  The config file could be made up with normal command line switches, but you\n"
-, stdout);
- fputs(
-"  can also specify the long options without the dashes to make it more\n"
-"  readable. You can separate the options and the parameter with spaces, or\n"
-"  with = or :. Comments can be used within the file. If the first letter on a\n"
-"  line is a '#'-symbol the rest of the line is treated as a comment.\n"
-"\n"
-"  If you want the parameter to contain spaces, you must enclose the entire\n"
-"  parameter within double quotes (\"). Within those quotes, you specify a\n"
-"  quote as \\\".\n"
-"\n"
-, stdout);
- fputs(
-"  NOTE: You must specify options and their arguments on the same line.\n"
-"\n"
-"  Example, set default time out and proxy in a config file:\n"
-"\n"
-"        # We want a 30 minute timeout:\n"
-"        -m 1800\n"
-"        # ... and we use a proxy for all accesses:\n"
-"        proxy = proxy.our.domain.com:8080\n"
-"\n"
-"  White spaces ARE significant at the end of lines, but all white spaces\n"
-"  leading up to the first characters of each line are ignored.\n"
-"\n"
-"  Prevent curl from reading the default file by using -q as the first command\n"
-, stdout);
- fputs(
-"  line parameter, like:\n"
-"\n"
-"        curl -q www.thatsite.com\n"
-"\n"
-"  Force curl to get and display a local help page in case it is invoked\n"
-"  without URL by making a config file similar to:\n"
-"\n"
-"        # default url to get\n"
-"        url = \"http://help.with.curl.com/curlhelp.html\"\n"
-"\n"
-"  You can specify another config file to be read by using the -K/--config\n"
-"  flag. If you set config file name to \"-\" it'll read the config from stdin,\n"
-"  which can be handy if you want to hide options from being visible in process\n"
-, stdout);
- fputs(
-"  tables etc:\n"
-"\n"
-"        echo \"user = user:passwd\" | curl -K - http://that.secret.site.com\n"
-"\n"
-"EXTRA HEADERS\n"
-"\n"
-"  When using curl in your own very special programs, you may end up needing\n"
-"  to pass on your own custom headers when getting a web page. You can do\n"
-"  this by using the -H flag.\n"
-"\n"
-"  Example, send the header \"X-you-and-me: yes\" to the server when getting a\n"
-"  page:\n"
-"\n"
-"        curl -H \"X-you-and-me: yes\" www.love.com\n"
-"\n"
-"  This can also be useful in case you want curl to send a different text in a\n"
-, stdout);
- fputs(
-"  header than it normally does. The -H header you specify then replaces the\n"
-"  header curl would normally send. If you replace an internal header with an\n"
-"  empty one, you prevent that header from being sent. To prevent the Host:\n"
-"  header from being used:\n"
-"\n"
-"        curl -H \"Host:\" www.server.com\n"
-"\n"
-"FTP and PATH NAMES\n"
-"\n"
-"  Do note that when getting files with the ftp:// URL, the given path is\n"
-"  relative the directory you enter. To get the file 'README' from your home\n"
-"  directory at your ftp site, do:\n"
-"\n"
-, stdout);
- fputs(
-"        curl ftp://user:passwd@my.site.com/README\n"
-"\n"
-"  But if you want the README file from the root directory of that very same\n"
-"  site, you need to specify the absolute file name:\n"
-"\n"
-"        curl ftp://user:passwd@my.site.com//README\n"
-"\n"
-"  (I.e with an extra slash in front of the file name.)\n"
-"\n"
-"SFTP and SCP and PATH NAMES\n"
-"\n"
-"  With sftp: and scp: URLs, the path name given is the absolute name on the\n"
-"  server. To access a file relative to the remote user's home directory,\n"
-, stdout);
- fputs(
-"  prefix the file with /~/ , such as:\n"
-"\n"
-"        curl -u $USER sftp://home.example.com/~/.bashrc\n"
-"\n"
-"FTP and firewalls\n"
-"\n"
-"  The FTP protocol requires one of the involved parties to open a second\n"
-"  connection as soon as data is about to get transfered. There are two ways to\n"
-"  do this.\n"
-"\n"
-"  The default way for curl is to issue the PASV command which causes the\n"
-"  server to open another port and await another connection performed by the\n"
-, stdout);
- fputs(
-"  client. This is good if the client is behind a firewall that don't allow\n"
-"  incoming connections.\n"
-"\n"
-"        curl ftp.download.com\n"
-"\n"
-"  If the server for example, is behind a firewall that don't allow connections\n"
-"  on other ports than 21 (or if it just doesn't support the PASV command), the\n"
-"  other way to do it is to use the PORT command and instruct the server to\n"
-"  connect to the client on the given (as parameters to the PORT command) IP\n"
-"  number and port.\n"
-"\n"
-, stdout);
- fputs(
-"  The -P flag to curl supports a few different options. Your machine may have\n"
-"  several IP-addresses and/or network interfaces and curl allows you to select\n"
-"  which of them to use. Default address can also be used:\n"
-"\n"
-"        curl -P - ftp.download.com\n"
-"\n"
-"  Download with PORT but use the IP address of our 'le0' interface (this does\n"
-"  not work on windows):\n"
-"\n"
-"        curl -P le0 ftp.download.com\n"
-"\n"
-"  Download with PORT but use 192.168.0.10 as our IP address to use:\n"
-"\n"
-, stdout);
- fputs(
-"        curl -P 192.168.0.10 ftp.download.com\n"
-"\n"
-"NETWORK INTERFACE\n"
-"\n"
-"  Get a web page from a server using a specified port for the interface:\n"
-"\n"
-"        curl --interface eth0:1 http://www.netscape.com/\n"
-"\n"
-"  or\n"
-"\n"
-"        curl --interface 192.168.1.10 http://www.netscape.com/\n"
-"\n"
-"HTTPS\n"
-"\n"
-"  Secure HTTP requires SSL libraries to be installed and used when curl is\n"
-"  built. If that is done, curl is capable of retrieving and posting documents\n"
-"  using the HTTPS protocol.\n"
-"\n"
-"  Example:\n"
-"\n"
-, stdout);
- fputs(
-"        curl https://www.secure-site.com\n"
-"\n"
-"  Curl is also capable of using your personal certificates to get/post files\n"
-"  from sites that require valid certificates. The only drawback is that the\n"
-"  certificate needs to be in PEM-format. PEM is a standard and open format to\n"
-"  store certificates with, but it is not used by the most commonly used\n"
-"  browsers (Netscape and MSIE both use the so called PKCS#12 format). If you\n"
-, stdout);
- fputs(
-"  want curl to use the certificates you use with your (favourite) browser, you\n"
-"  may need to download/compile a converter that can convert your browser's\n"
-"  formatted certificates to PEM formatted ones. This kind of converter is\n"
-"  included in recent versions of OpenSSL, and for older versions Dr Stephen\n"
-"  N. Henson has written a patch for SSLeay that adds this functionality. You\n"
-"  can get his patch (that requires an SSLeay installation) from his site at:\n"
-"  http://www.drh-consultancy.demon.co.uk/\n"
-, stdout);
- fputs(
-"\n"
-"  Example on how to automatically retrieve a document using a certificate with\n"
-"  a personal password:\n"
-"\n"
-"        curl -E /path/to/cert.pem:password https://secure.site.com/\n"
-"\n"
-"  If you neglect to specify the password on the command line, you will be\n"
-"  prompted for the correct password before any data can be received.\n"
-"\n"
-"  Many older SSL-servers have problems with SSLv3 or TLS, that newer versions\n"
-"  of OpenSSL etc is using, therefore it is sometimes useful to specify what\n"
-, stdout);
- fputs(
-"  SSL-version curl should use. Use -3, -2 or -1 to specify that exact SSL\n"
-"  version to use (for SSLv3, SSLv2 or TLSv1 respectively):\n"
-"\n"
-"        curl -2 https://secure.site.com/\n"
-"\n"
-"  Otherwise, curl will first attempt to use v3 and then v2.\n"
-"\n"
-"  To use OpenSSL to convert your favourite browser's certificate into a PEM\n"
-"  formatted one that curl can use, do something like this (assuming netscape,\n"
-"  but IE is likely to work similarly):\n"
-"\n"
-"    You start with hitting the 'security' menu button in netscape.\n"
-"\n"
-, stdout);
- fputs(
-"    Select 'certificates->yours' and then pick a certificate in the list\n"
-"\n"
-"    Press the 'export' button\n"
-"\n"
-"    enter your PIN code for the certs\n"
-"\n"
-"    select a proper place to save it\n"
-"\n"
-"    Run the 'openssl' application to convert the certificate. If you cd to the\n"
-"    openssl installation, you can do it like:\n"
-"\n"
-"     # ./apps/openssl pkcs12 -in [file you saved] -clcerts -out [PEMfile]\n"
-"\n"
-"\n"
-"RESUMING FILE TRANSFERS\n"
-"\n"
-" To continue a file transfer where it was previously aborted, curl supports\n"
-, stdout);
- fputs(
-" resume on http(s) downloads as well as ftp uploads and downloads.\n"
-"\n"
-" Continue downloading a document:\n"
-"\n"
-"        curl -C - -o file ftp://ftp.server.com/path/file\n"
-"\n"
-" Continue uploading a document(*1):\n"
-"\n"
-"        curl -C - -T file ftp://ftp.server.com/path/file\n"
-"\n"
-" Continue downloading a document from a web server(*2):\n"
-"\n"
-"        curl -C - -o file http://www.server.com/\n"
-"\n"
-" (*1) = This requires that the ftp server supports the non-standard command\n"
-"        SIZE. If it doesn't, curl will say so.\n"
-"\n"
-, stdout);
- fputs(
-" (*2) = This requires that the web server supports at least HTTP/1.1. If it\n"
-"        doesn't, curl will say so.\n"
-"\n"
-"TIME CONDITIONS\n"
-"\n"
-" HTTP allows a client to specify a time condition for the document it\n"
-" requests. It is If-Modified-Since or If-Unmodified-Since. Curl allow you to\n"
-" specify them with the -z/--time-cond flag.\n"
-"\n"
-" For example, you can easily make a download that only gets performed if the\n"
-" remote file is newer than a local copy. It would be made like:\n"
-"\n"
-, stdout);
- fputs(
-"        curl -z local.html http://remote.server.com/remote.html\n"
-"\n"
-" Or you can download a file only if the local file is newer than the remote\n"
-" one. Do this by prepending the date string with a '-', as in:\n"
-"\n"
-"        curl -z -local.html http://remote.server.com/remote.html\n"
-"\n"
-" You can specify a \"free text\" date as condition. Tell curl to only download\n"
-" the file if it was updated since January 12, 2012:\n"
-"\n"
-"        curl -z \"Jan 12 2012\" http://remote.server.com/remote.html\n"
-"\n"
-, stdout);
- fputs(
-" Curl will then accept a wide range of date formats. You always make the date\n"
-" check the other way around by prepending it with a dash '-'.\n"
-"\n"
-"DICT\n"
-"\n"
-"  For fun try\n"
-"\n"
-"        curl dict://dict.org/m:curl\n"
-"        curl dict://dict.org/d:heisenbug:jargon\n"
-"        curl dict://dict.org/d:daniel:web1913\n"
-"\n"
-"  Aliases for 'm' are 'match' and 'find', and aliases for 'd' are 'define'\n"
-"  and 'lookup'. For example,\n"
-"\n"
-"        curl dict://dict.org/find:curl\n"
-"\n"
-, stdout);
- fputs(
-"  Commands that break the URL description of the RFC (but not the DICT\n"
-"  protocol) are\n"
-"\n"
-"        curl dict://dict.org/show:db\n"
-"        curl dict://dict.org/show:strat\n"
-"\n"
-"  Authentication is still missing (but this is not required by the RFC)\n"
-"\n"
-"LDAP\n"
-"\n"
-"  If you have installed the OpenLDAP library, curl can take advantage of it\n"
-"  and offer ldap:// support.\n"
-"\n"
-"  LDAP is a complex thing and writing an LDAP query is not an easy task. I do\n"
-, stdout);
- fputs(
-"  advice you to dig up the syntax description for that elsewhere. Two places\n"
-"  that might suit you are:\n"
-"\n"
-"  Netscape's \"Netscape Directory SDK 3.0 for C Programmer's Guide Chapter 10:\n"
-"  Working with LDAP URLs\":\n"
-"  http://developer.netscape.com/docs/manuals/dirsdk/csdk30/url.htm\n"
-"\n"
-"  RFC 2255, \"The LDAP URL Format\" http://curl.haxx.se/rfc/rfc2255.txt\n"
-"\n"
-"  To show you an example, this is now I can get all people from my local LDAP\n"
-"  server that has a certain sub-domain in their email address:\n"
-"\n"
-, stdout);
- fputs(
-"        curl -B \"ldap://ldap.frontec.se/o=frontec??sub?mail=*sth.frontec.se\"\n"
-"\n"
-"  If I want the same info in HTML format, I can get it by not using the -B\n"
-"  (enforce ASCII) flag.\n"
-"\n"
-"ENVIRONMENT VARIABLES\n"
-"\n"
-"  Curl reads and understands the following environment variables:\n"
-"\n"
-"        http_proxy, HTTPS_PROXY, FTP_PROXY\n"
-"\n"
-"  They should be set for protocol-specific proxies. General proxy should be\n"
-"  set with\n"
-"\n"
-"        ALL_PROXY\n"
-"\n"
-"  A comma-separated list of host names that shouldn't go through any proxy is\n"
-, stdout);
- fputs(
-"  set in (only an asterisk, '*' matches all hosts)\n"
-"\n"
-"        NO_PROXY\n"
-"\n"
-"  If the host name matches one of these strings, or the host is within the\n"
-"  domain of one of these strings, transactions with that node will not be\n"
-"  proxied.\n"
-"\n"
-"\n"
-"  The usage of the -x/--proxy flag overrides the environment variables.\n"
-"\n"
-"NETRC\n"
-"\n"
-"  Unix introduced the .netrc concept a long time ago. It is a way for a user\n"
-"  to specify name and password for commonly visited ftp sites in a file so\n"
-, stdout);
- fputs(
-"  that you don't have to type them in each time you visit those sites. You\n"
-"  realize this is a big security risk if someone else gets hold of your\n"
-"  passwords, so therefore most unix programs won't read this file unless it is\n"
-"  only readable by yourself (curl doesn't care though).\n"
-"\n"
-"  Curl supports .netrc files if told so (using the -n/--netrc and\n"
-"  --netrc-optional options). This is not restricted to only ftp,\n"
-"  but curl can use it for all protocols where authentication is used.\n"
-"\n"
-, stdout);
- fputs(
-"  A very simple .netrc file could look something like:\n"
-"\n"
-"        machine curl.haxx.se login iamdaniel password mysecret\n"
-"\n"
-"CUSTOM OUTPUT\n"
-"\n"
-"  To better allow script programmers to get to know about the progress of\n"
-"  curl, the -w/--write-out option was introduced. Using this, you can specify\n"
-"  what information from the previous transfer you want to extract.\n"
-"\n"
-"  To display the amount of bytes downloaded together with some text and an\n"
-"  ending newline:\n"
-"\n"
-, stdout);
- fputs(
-"        curl -w 'We downloaded %{size_download} bytes\\n' www.download.com\n"
-"\n"
-"KERBEROS FTP TRANSFER\n"
-"\n"
-"  Curl supports kerberos4 and kerberos5/GSSAPI for FTP transfers. You need\n"
-"  the kerberos package installed and used at curl build time for it to be\n"
-"  used.\n"
-"\n"
-"  First, get the krb-ticket the normal way, like with the kinit/kauth tool.\n"
-"  Then use curl in way similar to:\n"
-"\n"
-"        curl --krb private ftp://krb4site.com -u username:fakepwd\n"
-"\n"
-, stdout);
- fputs(
-"  There's no use for a password on the -u switch, but a blank one will make\n"
-"  curl ask for one and you already entered the real password to kinit/kauth.\n"
-"\n"
-"TELNET\n"
-"\n"
-"  The curl telnet support is basic and very easy to use. Curl passes all data\n"
-"  passed to it on stdin to the remote server. Connect to a remote telnet\n"
-"  server using a command line similar to:\n"
-"\n"
-"        curl telnet://remote.server.com\n"
-"\n"
-"  And enter the data to pass to the server on stdin. The result will be sent\n"
-, stdout);
- fputs(
-"  to stdout or to the file you specify with -o.\n"
-"\n"
-"  You might want the -N/--no-buffer option to switch off the buffered output\n"
-"  for slow connections or similar.\n"
-"\n"
-"  Pass options to the telnet protocol negotiation, by using the -t option. To\n"
-"  tell the server we use a vt100 terminal, try something like:\n"
-"\n"
-"        curl -tTTYPE=vt100 telnet://remote.server.com\n"
-"\n"
-"  Other interesting options for it -t include:\n"
-"\n"
-"   - XDISPLOC=<X display> Sets the X display location.\n"
-"\n"
-, stdout);
- fputs(
-"   - NEW_ENV=<var,val> Sets an environment variable.\n"
-"\n"
-"  NOTE: the telnet protocol does not specify any way to login with a specified\n"
-"  user and password so curl can't do that automatically. To do that, you need\n"
-"  to track when the login prompt is received and send the username and\n"
-"  password accordingly.\n"
-"\n"
-"PERSISTENT CONNECTIONS\n"
-"\n"
-"  Specifying multiple files on a single command line will make curl transfer\n"
-"  all of them, one after the other in the specified order.\n"
-"\n"
-, stdout);
- fputs(
-"  libcurl will attempt to use persistent connections for the transfers so that\n"
-"  the second transfer to the same host can use the same connection that was\n"
-"  already initiated and was left open in the previous transfer. This greatly\n"
-"  decreases connection time for all but the first transfer and it makes a far\n"
-"  better use of the network.\n"
-"\n"
-"  Note that curl cannot use persistent connections for transfers that are used\n"
-"  in subsequence curl invokes. Try to stuff as many URLs as possible on the\n"
-, stdout);
- fputs(
-"  same command line if they are using the same host, as that'll make the\n"
-"  transfers faster. If you use a http proxy for file transfers, practically\n"
-"  all transfers will be persistent.\n"
-"\n"
-"MULTIPLE TRANSFERS WITH A SINGLE COMMAND LINE\n"
-"\n"
-"  As is mentioned above, you can download multiple files with one command line\n"
-"  by simply adding more URLs. If you want those to get saved to a local file\n"
-"  instead of just printed to stdout, you need to add one save option for each\n"
-, stdout);
- fputs(
-"  URL you specify. Note that this also goes for the -O option (but not\n"
-"  --remote-name-all).\n"
-"\n"
-"  For example: get two files and use -O for the first and a custom file\n"
-"  name for the second:\n"
-"\n"
-"    curl -O http://url.com/file.txt ftp://ftp.com/moo.exe -o moo.jpg\n"
-"\n"
-"  You can also upload multiple files in a similar fashion:\n"
-"\n"
-"    curl -T local1 ftp://ftp.com/moo.exe -T local2 ftp://ftp.com/moo2.txt\n"
-"\n"
-"IPv6\n"
-"\n"
-"  curl will connect to a server with IPv6 when a host lookup returns an IPv6\n"
-, stdout);
- fputs(
-"  address and fall back to IPv4 if the connection fails. The --ipv4 and --ipv6\n"
-"  options can specify which address to use when both are available. IPv6\n"
-"  addresses can also be specified directly in URLs using the syntax:\n"
-"\n"
-"    http://[2001:1890:1112:1::20]/overview.html\n"
-"\n"
-"  When this style is used, the -g option must be given to stop curl from\n"
-"  interpreting the square brackets as special globbing characters.  Link local\n"
-, stdout);
- fputs(
-"  and site local addresses including a scope identifier, such as fe80::1234%1,\n"
-"  may also be used, but the scope portion must be numeric and the percent\n"
-"  character must be URL escaped. The previous example in an SFTP URL might\n"
-"  look like:\n"
-"\n"
-"    sftp://[fe80::1234%251]/\n"
-"\n"
-"  IPv6 addresses provided other than in URLs (e.g. to the --proxy, --interface\n"
-"  or --ftp-port options) should not be URL encoded.\n"
-"\n"
-"\n"
-"MAILING LISTS\n"
-"\n"
-"  For your convenience, we have several open mailing lists to discuss curl,\n"
-, stdout);
- fputs(
-"  its development and things relevant to this. Get all info at\n"
-"  http://curl.haxx.se/mail/. Some of the lists available are:\n"
-"\n"
-"  curl-users\n"
-"\n"
-"    Users of the command line tool. How to use it, what doesn't work, new\n"
-"    features, related tools, questions, news, installations, compilations,\n"
-"    running, porting etc.\n"
-"\n"
-"  curl-library\n"
-"\n"
-"    Developers using or developing libcurl. Bugs, extensions, improvements.\n"
-"\n"
-"  curl-announce\n"
-"\n"
-, stdout);
- fputs(
-"    Low-traffic. Only receives announcements of new public versions. At worst,\n"
-"    that makes something like one or two mails per month, but usually only one\n"
-"    mail every second month.\n"
-"\n"
-"  curl-and-php\n"
-"\n"
-"    Using the curl functions in PHP. Everything curl with a PHP angle. Or PHP\n"
-"    with a curl angle.\n"
-"\n"
-"  curl-and-python\n"
-"\n"
-"    Python hackers using curl with or without the python binding pycurl.\n"
-"\n"
-"  Please direct curl questions, feature requests and trouble reports to one of\n"
-, stdout);
- fputs(
-"  these mailing lists instead of mailing any individual.\n"
-, stdout) ;
-}
-#endif /* USE_MANUAL */
-#else
-/*
- * NEVER EVER edit this manually, fix the mkhelp.pl script instead!
- * Generation time: Sat Jul 28 16:48:06 2012
- */
-#include "setup.h"
-#ifdef USE_MANUAL
-#include "hugehelp.h"
-#include <stdio.h>
-#include <stdlib.h>
-#include <zlib.h>
-static const unsigned char hugehelpgz[] = {
-  /* This mumbo-jumbo is the huge help text compressed with gzip.
-     Thanks to this operation, the size of this data shrunk from 132800
-     to 40751 bytes. You can disable the use of compressed help
-     texts by NOT passing -c to the mkhelp.pl tool. */
-  0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xed, 0xbd,
-  0x69, 0x7b, 0x23, 0xc7, 0x91, 0x2e, 0xfa, 0x9d, 0x7f, 0xe1, 0x7c, 0x29,
-  0x43, 0x57, 0x06, 0x69, 0x03, 0xe0, 0xd2, 0x8b, 0xd4, 0x74, 0xb7, 0x46,
-  0x14, 0xc9, 0x96, 0x38, 0x62, 0x93, 0x3c, 0x04, 0x5b, 0xcb, 0x91, 0xf5,
-  0xf4, 0x53, 0x00, 0x8a, 0x64, 0x99, 0x00, 0x0a, 0xae, 0x2a, 0x70, 0xb1,
-  0xc7, 0xf3, 0xdb, 0x6f, 0xc4, 0x1b, 0x11, 0x99, 0x59, 0x0b, 0xc8, 0x96,
-  0x2d, 0xf9, 0xdc, 0x73, 0x9e, 0xeb, 0x19, 0x35, 0x49, 0xa0, 0x2a, 0xd7,
-  0xc8, 0xc8, 0x58, 0xdf, 0x88, 0xa2, 0xa7, 0xfe, 0xf7, 0x01, 0xff, 0x7d,
-  0xa0, 0xff, 0xd1, 0xcf, 0xb5, 0x28, 0x3a, 0xcb, 0xb3, 0xbf, 0x24, 0xe3,
-  0xb2, 0xfd, 0xd9, 0x0f, 0x1f, 0xfe, 0x2b, 0x92, 0xff, 0xa3, 0x77, 0xfe,
-  0x4c, 0x3f, 0xd7, 0x1e, 0x6d, 0x7b, 0x33, 0xf2, 0x2f, 0xfc, 0xd7, 0x87,
-  0x8d, 0xe8, 0xa9, 0x17, 0xfe, 0x2b, 0x5a, 0xc7, 0x0b, 0x1f, 0xb4, 0x87,
-  0xd7, 0xfc, 0xfb, 0x87, 0x0f, 0x8f, 0x77, 0xf2, 0x67, 0x1e, 0x15, 0xff,
-  0xb3, 0xc9, 0xef, 0xfd, 0xf9, 0x03, 0xff, 0x4a, 0x9f, 0xac, 0xad, 0xfd,
-  0x8f, 0x9f, 0xb6, 0x67, 0x27, 0x7b, 0xef, 0x0e, 0xff, 0xc7, 0x4f, 0x5b,
-  0x33, 0x6b, 0x62, 0xbc, 0xcc, 0xa7, 0x51, 0x3f, 0x2a, 0xf3, 0x78, 0x5e,
-  0x5c, 0x26, 0x79, 0x14, 0x47, 0xef, 0xcf, 0x8f, 0xe5, 0xd1, 0xe1, 0x8f,
-  0x27, 0xa7, 0x67, 0xc3, 0xa3, 0x61, 0xf8, 0x38, 0x7f, 0x8e, 0x57, 0x7e,
-  0xca, 0x16, 0x65, 0x9a, 0xcd, 0x8b, 0x9f, 0xe9, 0xa3, 0xe7, 0xb3, 0xff,
-  0xf1, 0xd3, 0xce, 0xce, 0xec, 0x27, 0x7a, 0x73, 0x30, 0x18, 0xfc, 0x8c,
-  0xe7, 0xd1, 0xc2, 0xc1, 0xe1, 0x70, 0xff, 0xfc, 0xe8, 0xec, 0xe2, 0xe8,
-  0xf4, 0xa4, 0xb5, 0x91, 0x08, 0xef, 0xa5, 0x45, 0x44, 0xdd, 0x96, 0x59,
-  0x36, 0xa5, 0x7f, 0xfc, 0x48, 0x26, 0x71, 0x19, 0x47, 0x97, 0x79, 0x36,
-  0x8b, 0xb2, 0x9c, 0xbf, 0x88, 0xa3, 0x22, 0xc9, 0x6f, 0x93, 0xbc, 0x17,
-  0x2d, 0x8b, 0x74, 0x7e, 0x15, 0x65, 0xf3, 0x24, 0xca, 0x2e, 0xa3, 0xf2,
-  0x3a, 0xb1, 0x76, 0x8b, 0xe5, 0x62, 0x91, 0xe5, 0x65, 0x32, 0x89, 0x16,
-  0x79, 0x56, 0x66, 0xe3, 0x6c, 0x5a, 0x44, 0xeb, 0xdf, 0x5c, 0x5c, 0x9c,
-  0xf5, 0x22, 0xfe, 0x77, 0xd8, 0x8b, 0xde, 0xf2, 0xef, 0x6f, 0xf1, 0x6b,
-  0x34, 0xdc, 0x3f, 0xe3, 0x7f, 0xf1, 0x51, 0x74, 0x21, 0x3f, 0x0e, 0x8e,
-  0xf6, 0x2f, 0x7a, 0xd6, 0xdc, 0xc5, 0xe1, 0xf1, 0xc9, 0xe1, 0x05, 0x7d,
-  0x7a, 0x7c, 0xb0, 0x77, 0x16, 0xf1, 0x28, 0xa2, 0xb7, 0x47, 0xc7, 0x87,
-  0x1b, 0x03, 0xfa, 0xea, 0x3a, 0x89, 0xc6, 0xd9, 0x6c, 0x16, 0xcf, 0x27,
-  0x11, 0x0d, 0x7f, 0x92, 0x14, 0xe9, 0xd5, 0x9c, 0xfa, 0xa5, 0x61, 0xde,
-  0x65, 0xf9, 0x4d, 0x74, 0x97, 0x96, 0xd7, 0xd9, 0xb2, 0xa4, 0x91, 0x26,
-  0xb9, 0x35, 0x97, 0xce, 0xcb, 0x24, 0x8f, 0xc7, 0xbc, 0x6a, 0x83, 0xb5,
-  0xca, 0xf2, 0x67, 0x97, 0x34, 0xdf, 0x82, 0x26, 0x38, 0x5a, 0x16, 0xd3,
-  0x2c, 0x9e, 0xf0, 0xb4, 0xe8, 0xcd, 0xcb, 0x25, 0x2d, 0x48, 0x9e, 0x8e,
-  0x6f, 0x8a, 0x68, 0x9a, 0xde, 0x24, 0x3c, 0xa9, 0xfb, 0x07, 0x9b, 0x64,
-  0x0f, 0x6d, 0x47, 0xf1, 0x92, 0xe6, 0x3f, 0xef, 0x5b, 0x73, 0x65, 0x3a,
-  0x8e, 0xb9, 0x03, 0x1a, 0x34, 0x4d, 0x28, 0x5a, 0x2e, 0xb8, 0x39, 0x99,
-  0x7d, 0xb4, 0xc8, 0x0a, 0x7a, 0x6b, 0x38, 0x3c, 0xa6, 0x91, 0xcf, 0xe7,
-  0x09, 0x06, 0x52, 0xf4, 0xe8, 0x8f, 0xec, 0x26, 0x4d, 0xe8, 0x97, 0xcb,
-  0x74, 0x9a, 0xc8, 0xea, 0xbb, 0xe6, 0x78, 0x1b, 0xf2, 0xa4, 0x58, 0xce,
-  0x92, 0x88, 0x67, 0x3a, 0xcb, 0xf2, 0x64, 0x10, 0xed, 0x15, 0xd1, 0x43,
-  0xb6, 0xa4, 0x29, 0x4e, 0xa7, 0xb4, 0x23, 0x49, 0x34, 0x4a, 0xa6, 0xd9,
-  0x5d, 0x8f, 0xf7, 0x21, 0x9a, 0x2f, 0x67, 0x23, 0x7a, 0x85, 0x86, 0x7f,
-  0x99, 0xc4, 0xe5, 0x92, 0x5e, 0xc5, 0x63, 0xd6, 0xdc, 0x2c, 0xa6, 0x59,
-  0xd0, 0xbb, 0x79, 0x74, 0x9d, 0xd0, 0x2c, 0x8b, 0x45, 0x3a, 0xff, 0x5d,
-  0x75, 0x25, 0x78, 0x31, 0x69, 0xa0, 0x77, 0x49, 0x4e, 0x8b, 0x19, 0x8d,
-  0x1e, 0x22, 0x9a, 0xf9, 0x48, 0xbe, 0xb9, 0xe4, 0xf5, 0x8f, 0xa7, 0x53,
-  0x47, 0x20, 0xfd, 0x3c, 0x99, 0xc6, 0xbc, 0xd9, 0xd6, 0xd7, 0x20, 0x1a,
-  0x26, 0x49, 0x48, 0x63, 0xfa, 0x2e, 0x88, 0x6c, 0xfd, 0xd9, 0x06, 0x9a,
-  0x98, 0x24, 0x65, 0x9c, 0x4e, 0x8b, 0x81, 0x10, 0x28, 0x51, 0x6c, 0x48,
-  0x98, 0xbc, 0xad, 0xf4, 0x51, 0x54, 0x3c, 0xcc, 0xcb, 0xf8, 0x9e, 0x07,
-  0x63, 0x84, 0xd4, 0x9f, 0x24, 0x8b, 0x64, 0x3e, 0x49, 0xe6, 0xe5, 0x20,
-  0xfa, 0x31, 0x5b, 0x76, 0x69, 0x1c, 0x97, 0x29, 0x2d, 0x49, 0x1c, 0x69,
-  0x8b, 0x3c, 0x5e, 0x22, 0x83, 0x71, 0x9e, 0x2e, 0x82, 0xdd, 0xc8, 0xe6,
-  0xb4, 0xed, 0xd1, 0xf9, 0xdb, 0xfd, 0xe8, 0xd9, 0xab, 0xcf, 0x5f, 0xfa,
-  0x6d, 0xa7, 0x26, 0x68, 0xc6, 0xf1, 0x9c, 0x68, 0x76, 0x91, 0x8c, 0xd3,
-  0x4b, 0x9a, 0xe8, 0x6c, 0x39, 0x2d, 0xd3, 0x05, 0x6d, 0x01, 0x8f, 0xa0,
-  0x60, 0x6a, 0x5b, 0xc4, 0x79, 0x59, 0xf0, 0x62, 0xe2, 0x03, 0x5a, 0x8c,
-  0xbb, 0x3c, 0x2d, 0x99, 0xf2, 0xf9, 0x0b, 0x5a, 0xfa, 0xb2, 0xb0, 0xe6,
-  0x98, 0xdc, 0xa8, 0x9f, 0x11, 0x91, 0x17, 0x2d, 0x79, 0x5c, 0x50, 0xa7,
-  0xbb, 0xae, 0xaf, 0xe8, 0xba, 0x2c, 0x17, 0xbb, 0x9b, 0x9b, 0x45, 0x5a,
-  0x26, 0x83, 0xbf, 0xd3, 0xa9, 0xe9, 0x95, 0x77, 0x59, 0xaf, 0xbc, 0xce,
-  0x93, 0xe4, 0x1f, 0x03, 0x22, 0x62, 0xf7, 0x20, 0x75, 0xc9, 0x1b, 0xcb,
-  0xc3, 0xba, 0x4a, 0xb8, 0x83, 0xbf, 0x2e, 0x93, 0x39, 0x37, 0x48, 0x43,
-  0x88, 0xa7, 0x8b, 0xeb, 0x98, 0xb6, 0x37, 0x21, 0x7a, 0xe4, 0x73, 0x48,
-  0x14, 0xc3, 0x23, 0x92, 0x93, 0xf8, 0xd3, 0xcf, 0x8d, 0x3e, 0x2f, 0xd1,
-  0x25, 0xfd, 0x3b, 0xd0, 0x97, 0x62, 0x5a, 0x73, 0xea, 0x6c, 0x93, 0xa9,
-  0xec, 0xa7, 0xed, 0xfe, 0xf6, 0xd6, 0xd6, 0xcf, 0x83, 0xf2, 0xbe, 0xfc,
-  0xc8, 0x17, 0xb6, 0xb6, 0xfc, 0x2b, 0xfc, 0xf4, 0x3a, 0xcf, 0x38, 0x9a,
-  0x12, 0x15, 0x71, 0xff, 0x7f, 0x4b, 0xf2, 0xac, 0xd8, 0x68, 0x69, 0x6a,
-  0x9a, 0x94, 0x74, 0xe6, 0x82, 0x76, 0xe2, 0xfe, 0xdf, 0xa4, 0x5b, 0x7b,
-  0xf8, 0x24, 0x8b, 0xe6, 0x49, 0x81, 0x55, 0x15, 0x5e, 0x12, 0x4c, 0x9b,
-  0xb6, 0xdf, 0x73, 0x94, 0xb8, 0xc4, 0xb7, 0xb3, 0x6c, 0x46, 0x34, 0xd0,
-  0xa3, 0x93, 0x5a, 0xba, 0xc5, 0xa2, 0x83, 0xe8, 0x38, 0x50, 0x42, 0x0c,
-  0x2a, 0x9e, 0x32, 0x6f, 0x2a, 0xa8, 0x61, 0x1a, 0x2c, 0x71, 0x84, 0x24,
-  0x1e, 0x5f, 0x47, 0x19, 0xbd, 0x9d, 0x37, 0x37, 0x25, 0x9e, 0x3f, 0x0c,
-  0xb2, 0xfc, 0x6a, 0x33, 0xce, 0xc7, 0xd7, 0xe9, 0x2d, 0xad, 0xcc, 0xab,
-  0x57, 0x2f, 0xfb, 0xf4, 0xcf, 0xab, 0x9f, 0x37, 0x6f, 0xb3, 0x29, 0x2d,
-  0xd4, 0xf3, 0x9f, 0x37, 0x79, 0xbb, 0xff, 0x1e, 0xf7, 0x46, 0xbd, 0xf1,
-  0x3f, 0x06, 0xd7, 0xe5, 0x6c, 0xfa, 0x18, 0x15, 0x51, 0x7b, 0x51, 0x3c,
-  0xcb, 0x96, 0xf3, 0xd2, 0x11, 0x0e, 0xd1, 0x60, 0x19, 0xb0, 0xab, 0x69,
-  0x3a, 0xa7, 0x43, 0x4c, 0x94, 0xfe, 0x20, 0x47, 0x78, 0x94, 0xf8, 0xd3,
-  0x5e, 0x8e, 0xaf, 0x69, 0xaa, 0x44, 0x49, 0xb1, 0x2e, 0x43, 0x99, 0xd2,
-  0x64, 0xe8, 0xb5, 0x39, 0x9d, 0xea, 0x54, 0xda, 0x91, 0xae, 0x52, 0x7a,
-  0x2e, 0xcb, 0x27, 0x49, 0xee, 0x69, 0x7a, 0x98, 0xd2, 0xaa, 0xc9, 0x31,
-  0xfe, 0x6c, 0xb0, 0xfd, 0x62, 0xb0, 0xed, 0x16, 0x88, 0xb6, 0x32, 0x73,
-  0x43, 0xa4, 0xa6, 0xcb, 0x64, 0x41, 0xc3, 0x59, 0x32, 0x3f, 0x94, 0x63,
-  0xcd, 0xed, 0x46, 0x74, 0xac, 0xaf, 0x88, 0x0f, 0xb9, 0xa5, 0xa4, 0xab,
-  0xe0, 0x3a, 0x2e, 0x2b, 0x24, 0xc9, 0xab, 0xfb, 0x10, 0x9d, 0xd0, 0xd6,
-  0x1b, 0xa7, 0xc9, 0x23, 0xd9, 0xe3, 0xe6, 0xca, 0xde, 0xdd, 0xdd, 0xad,
-  0xa6, 0xbd, 0xdd, 0xed, 0x1a, 0xf9, 0x05, 0x2f, 0xb5, 0x11, 0xcd, 0xee,
-  0x4e, 0x95, 0x6c, 0x8e, 0x2e, 0x23, 0x0c, 0xcc, 0x2f, 0x3c, 0xb3, 0x0d,
-  0xc7, 0xf6, 0x8d, 0x6b, 0x50, 0x8b, 0xf4, 0x7b, 0x72, 0x99, 0xde, 0xf7,
-  0x64, 0x61, 0xb0, 0xe2, 0x31, 0xb5, 0x3f, 0x5b, 0x30, 0x69, 0x58, 0x73,
-  0x57, 0xcb, 0xa4, 0x20, 0x56, 0xc9, 0xd3, 0xb5, 0x57, 0xd1, 0xfc, 0x2c,
-  0xbd, 0xba, 0x2e, 0xa3, 0xbb, 0x98, 0xb9, 0xce, 0x51, 0x29, 0x6f, 0x33,
-  0xbf, 0x27, 0x4e, 0x73, 0x19, 0x13, 0xbf, 0x88, 0x98, 0xbc, 0x84, 0xbb,
-  0x33, 0x45, 0x3a, 0xbe, 0x43, 0x8b, 0x24, 0x04, 0x17, 0x05, 0x37, 0xe1,
-  0x28, 0x2e, 0x78, 0xd3, 0xe6, 0x44, 0x18, 0x25, 0x5d, 0x19, 0x4b, 0xfe,
-  0xeb, 0x9a, 0xee, 0x84, 0x68, 0x1e, 0xcf, 0x12, 0x1d, 0x26, 0x33, 0xd1,
-  0xb7, 0xb4, 0xa8, 0xc9, 0x7d, 0x3c, 0x73, 0x6c, 0x8c, 0x98, 0x52, 0x0f,
-  0xfb, 0xe4, 0x9e, 0xa6, 0x83, 0x51, 0x12, 0x51, 0xf2, 0xa9, 0xc1, 0x41,
-  0xec, 0xf0, 0x61, 0xeb, 0x84, 0x53, 0x2c, 0x70, 0x69, 0x60, 0x89, 0x78,
-  0xf8, 0x51, 0x30, 0x59, 0x5a, 0xb2, 0xf8, 0x86, 0xaf, 0xa7, 0xda, 0x2d,
-  0x28, 0x6f, 0x46, 0x13, 0x9a, 0x51, 0x4a, 0x7c, 0x6f, 0x44, 0xc7, 0x92,
-  0xa7, 0x47, 0xe3, 0x94, 0x95, 0xe1, 0xc6, 0x16, 0xd4, 0x30, 0x7f, 0x98,
-  0x96, 0xcc, 0x71, 0x20, 0xab, 0x60, 0x65, 0xe8, 0xa8, 0xce, 0xb3, 0x70,
-  0xfe, 0x3c, 0x34, 0x7a, 0xee, 0x36, 0x9e, 0xa6, 0x24, 0x47, 0x24, 0xee,
-  0x05, 0x70, 0xf6, 0x31, 0x5f, 0x93, 0xd3, 0xe9, 0x03, 0x11, 0x61, 0x9e,
-  0xb3, 0x68, 0xc7, 0x9b, 0x47, 0xdc, 0x8c, 0x0f, 0x4f, 0x34, 0x4b, 0xe8,
-  0x7a, 0xa9, 0x2c, 0x67, 0xca, 0xbc, 0x8d, 0x88, 0x96, 0xae, 0x2c, 0xbe,
-  0x33, 0x40, 0x83, 0xb8, 0x53, 0xe8, 0x7e, 0xc1, 0x69, 0xc7, 0x1a, 0x60,
-  0x8c, 0xdc, 0xcd, 0x78, 0x9c, 0x2c, 0xca, 0xc2, 0x4f, 0x6e, 0xbf, 0x65,
-  0xe3, 0xe9, 0x56, 0xe5, 0x0d, 0x08, 0x6f, 0x62, 0xac, 0xb0, 0xbb, 0x04,
-  0xfc, 0x65, 0xcc, 0xa2, 0x41, 0x8f, 0x4e, 0x83, 0x9b, 0x1c, 0xf7, 0x43,
-  0x87, 0x01, 0xab, 0x3f, 0xe3, 0x21, 0xf3, 0xb3, 0x85, 0x48, 0x4a, 0x38,
-  0xa0, 0xbc, 0x9d, 0x22, 0x2a, 0x49, 0xb7, 0xb4, 0x32, 0xbc, 0xaa, 0xfe,
-  0x82, 0xa1, 0x5e, 0xdd, 0xe6, 0x72, 0xf7, 0x05, 0xc9, 0xa5, 0xc4, 0xdd,
-  0x27, 0xc5, 0x35, 0x5d, 0xd0, 0x05, 0x33, 0x07, 0x9e, 0xf2, 0x8c, 0x48,
-  0xe7, 0x96, 0xb7, 0x7a, 0x91, 0x24, 0x93, 0x41, 0x74, 0x7a, 0xc9, 0x67,
-  0x36, 0xa7, 0x41, 0x97, 0xf8, 0x9a, 0x19, 0x0b, 0x2d, 0xe1, 0x04, 0x62,
-  0xd8, 0xdc, 0xf1, 0x10, 0x8c, 0x25, 0xe0, 0x11, 0xe0, 0x25, 0x34, 0xd4,
-  0x69, 0x95, 0x03, 0x41, 0x9e, 0xe0, 0x73, 0xcd, 0x83, 0xa3, 0xbd, 0x8e,
-  0x22, 0xd0, 0x23, 0xfd, 0x56, 0xde, 0x25, 0xc9, 0xdc, 0xf3, 0x53, 0x62,
-  0x7e, 0xbc, 0x7f, 0xa0, 0x90, 0x74, 0x7e, 0x9b, 0xf1, 0x00, 0x71, 0x75,
-  0x9f, 0x9d, 0x9f, 0x7e, 0x7d, 0x7e, 0x38, 0x1c, 0x46, 0xef, 0x0e, 0x2f,
-  0x0e, 0xcf, 0x1b, 0x22, 0x2d, 0xcd, 0x3a, 0x9f, 0x61, 0x93, 0xa3, 0x49,
-  0x5a, 0x2c, 0xa6, 0xf1, 0x03, 0x6f, 0x3f, 0x4d, 0xe9, 0x2a, 0xe7, 0xb3,
-  0x36, 0x4b, 0x98, 0xf9, 0x4c, 0x96, 0x39, 0x38, 0xff, 0x82, 0xb6, 0x51,
-  0xc5, 0x21, 0xba, 0xd4, 0x21, 0x43, 0xcd, 0xaf, 0xfc, 0x82, 0x27, 0x01,
-  0x4b, 0xb5, 0x3d, 0x61, 0x01, 0x85, 0x25, 0xd4, 0x5e, 0xe4, 0x25, 0x56,
-  0x59, 0x2a, 0x96, 0x66, 0x79, 0x72, 0x7c, 0xad, 0xcc, 0x20, 0xa0, 0x90,
-  0x20, 0x30, 0x73, 0x5c, 0x76, 0x9a, 0x5c, 0xd2, 0xfd, 0x41, 0xac, 0xd6,
-  0x53, 0xc8, 0x37, 0x24, 0xf0, 0x40, 0xb0, 0xe5, 0x95, 0x1a, 0x27, 0x3a,
-  0x03, 0x37, 0x6c, 0xac, 0x37, 0xa4, 0x61, 0x16, 0x8f, 0x69, 0x34, 0x34,
-  0xf4, 0x59, 0x3a, 0x27, 0xc2, 0x23, 0x9a, 0x55, 0x4e, 0x40, 0x03, 0xbf,
-  0xb4, 0xe6, 0xf8, 0xa0, 0xc8, 0x52, 0x49, 0x43, 0xf4, 0x16, 0x6d, 0x3f,
-  0xb1, 0x50, 0x37, 0x4f, 0x0c, 0x30, 0xc5, 0xb1, 0x89, 0x47, 0xcc, 0xb0,
-  0x58, 0x6e, 0x25, 0xe1, 0x22, 0x09, 0xbb, 0x71, 0xf3, 0xd7, 0xde, 0x7a,
-  0x7c, 0x2e, 0x21, 0xed, 0xd3, 0xc8, 0xe2, 0x11, 0xed, 0x33, 0x1d, 0x82,
-  0xe7, 0x42, 0x73, 0xb5, 0x75, 0xa5, 0xa3, 0x06, 0xf6, 0x73, 0x97, 0x16,
-  0x38, 0x7a, 0x77, 0xd9, 0x72, 0x4a, 0xe2, 0x23, 0x3f, 0xb0, 0x5c, 0x84,
-  0xeb, 0x4a, 0x7d, 0x2f, 0xa8, 0xfb, 0x59, 0x7a, 0x0f, 0xb9, 0xa6, 0xd6,
-  0x0a, 0x0d, 0x92, 0xfe, 0x5c, 0xd0, 0xbe, 0xc8, 0xc0, 0x06, 0x21, 0xff,
-  0x85, 0x0c, 0xca, 0xac, 0xa5, 0xb1, 0xab, 0x7c, 0x90, 0xc0, 0x13, 0xcf,
-  0x4e, 0x87, 0x17, 0x7c, 0x45, 0x9c, 0xbd, 0xbf, 0xa0, 0x86, 0xe8, 0x3e,
-  0x2b, 0x4a, 0xda, 0x61, 0x7e, 0x71, 0x9e, 0x40, 0x58, 0xb7, 0xe6, 0x68,
-  0x33, 0x53, 0x30, 0x02, 0xbd, 0x89, 0xac, 0x53, 0x1b, 0x1f, 0xb4, 0x0f,
-  0x26, 0x6d, 0xd3, 0x3d, 0x8a, 0xeb, 0x84, 0x0e, 0x96, 0x7b, 0x6d, 0xfd,
-  0x8b, 0x8d, 0x5e, 0xd4, 0x77, 0xcd, 0xfd, 0xc4, 0x8f, 0xfe, 0xcc, 0x3d,
-  0x17, 0xe9, 0x2c, 0x9d, 0xc6, 0xc1, 0x25, 0xe9, 0x78, 0x95, 0x3f, 0xaa,
-  0x63, 0xe2, 0xcb, 0x18, 0xb3, 0x97, 0xd8, 0x79, 0x01, 0x71, 0xce, 0xfd,
-  0x8e, 0x4d, 0xb2, 0x44, 0xde, 0x63, 0xb1, 0xd9, 0xb1, 0x26, 0xde, 0x3b,
-  0x66, 0x01, 0x95, 0x65, 0xaa, 0x93, 0x49, 0x63, 0xd9, 0x98, 0xd7, 0x43,
-  0xd5, 0x73, 0x0b, 0xd7, 0x19, 0xc5, 0x79, 0xc7, 0x71, 0x39, 0x95, 0x84,
-  0xf2, 0xe4, 0x6a, 0x49, 0x83, 0x97, 0x55, 0xed, 0x61, 0xe7, 0xfb, 0x9f,
-  0xc8, 0x9e, 0xa7, 0xd0, 0x01, 0x9c, 0x6a, 0x73, 0x49, 0xf2, 0xe0, 0x7c,
-  0xa2, 0x32, 0xf5, 0x29, 0xf4, 0xbd, 0x8a, 0xd6, 0x78, 0xc4, 0xd7, 0xf7,
-  0x9c, 0x79, 0x65, 0x0f, 0x22, 0xfc, 0x88, 0x74, 0xbd, 0x04, 0x04, 0x29,
-  0xac, 0x2f, 0xce, 0x93, 0x28, 0x99, 0x33, 0x4d, 0x4d, 0x84, 0x99, 0xf6,
-  0xfb, 0xf2, 0x15, 0x68, 0xe0, 0x81, 0x6e, 0xfe, 0xf8, 0x2a, 0x4e, 0x1d,
-  0x57, 0x50, 0xfa, 0x9b, 0x44, 0xf6, 0x30, 0x77, 0x3b, 0xcf, 0xfa, 0x60,
-  0xca, 0xf2, 0x22, 0x33, 0x31, 0xe6, 0xc7, 0xba, 0xdf, 0x4b, 0xb0, 0xad,
-  0x84, 0xef, 0x35, 0xda, 0x2e, 0x2c, 0xbb, 0x76, 0xc0, 0xd7, 0x99, 0xb5,
-  0x3b, 0xc2, 0xd5, 0xcd, 0xf7, 0x20, 0x88, 0x16, 0x37, 0x1b, 0x35, 0xdb,
-  0x19, 0xf8, 0x13, 0x0a, 0x21, 0x28, 0x65, 0x85, 0x8c, 0x6e, 0xa7, 0x3b,
-  0x96, 0x07, 0x8b, 0x92, 0x78, 0x0c, 0x58, 0x21, 0x3e, 0xa3, 0x01, 0x3b,
-  0xe6, 0x75, 0x9d, 0xdd, 0x09, 0x45, 0xb9, 0xe9, 0x50, 0x1b, 0x45, 0x8a,
-  0x2b, 0x98, 0x3f, 0x9f, 0x0d, 0xa2, 0x75, 0xf0, 0x5a, 0x62, 0xc8, 0x7c,
-  0x69, 0xd8, 0x74, 0xe6, 0x99, 0x5b, 0x99, 0xbb, 0xd8, 0x09, 0xf9, 0xf1,
-  0x64, 0x22, 0xc2, 0x19, 0x8b, 0x57, 0xaf, 0x06, 0x5b, 0x03, 0x36, 0x4d,
-  0x24, 0xb7, 0x69, 0x46, 0x4a, 0x23, 0xdf, 0x5b, 0x7c, 0x39, 0xbb, 0xf7,
-  0x22, 0x56, 0xa1, 0xf8, 0xd6, 0xbd, 0xba, 0xc2, 0x42, 0x65, 0xf3, 0x4d,
-  0xd2, 0x32, 0xa3, 0x80, 0x53, 0xe7, 0xa4, 0xd0, 0x80, 0x3b, 0xf1, 0xda,
-  0x98, 0xec, 0x0b, 0x7a, 0x0c, 0xd9, 0xb4, 0xae, 0xe6, 0x86, 0x23, 0xa1,
-  0x7e, 0xbc, 0xd9, 0xef, 0xc7, 0x0b, 0x56, 0x86, 0x6a, 0x56, 0x88, 0x75,
-  0xa2, 0xdf, 0x4d, 0x56, 0xa7, 0x37, 0xa2, 0xef, 0x59, 0x46, 0x01, 0x43,
-  0x67, 0x59, 0x72, 0xee, 0xf4, 0x50, 0x2c, 0x9d, 0x48, 0x31, 0x7c, 0x7e,
-  0x8c, 0x3b, 0xb5, 0x36, 0x67, 0x44, 0x1c, 0xe7, 0x2c, 0xf9, 0xe1, 0x3e,
-  0x74, 0x04, 0xca, 0xe3, 0x8d, 0xe8, 0x72, 0xca, 0x4d, 0x23, 0xa2, 0xfd,
-  0x1a, 0x88, 0x54, 0x86, 0x03, 0xcc, 0x4f, 0xd7, 0x9a, 0xe3, 0xf3, 0x33,
-  0xef, 0xd2, 0x0a, 0x25, 0xf7, 0x29, 0xeb, 0xc1, 0xbc, 0xc3, 0x2a, 0x71,
-  0xf0, 0xed, 0x33, 0xce, 0xb1, 0x18, 0x03, 0xa8, 0x04, 0x65, 0x22, 0xa7,
-  0x0f, 0xc3, 0xbd, 0x9c, 0xc6, 0x57, 0x44, 0x47, 0xb5, 0xe6, 0x48, 0xdd,
-  0xcf, 0xf8, 0x0a, 0x20, 0x0e, 0x5c, 0x90, 0x4a, 0x40, 0x6a, 0xf5, 0x37,
-  0x7a, 0xe7, 0x16, 0xd1, 0x3a, 0x31, 0xf1, 0xe9, 0x12, 0x9a, 0xc9, 0x29,
-  0x4d, 0x8c, 0xbe, 0xda, 0xf0, 0x47, 0xb0, 0xbf, 0x47, 0xeb, 0xc7, 0xaa,
-  0x7b, 0x3f, 0xa6, 0x23, 0x51, 0x46, 0xaf, 0xe5, 0x47, 0x51, 0xf2, 0x4d,
-  0xf4, 0x45, 0x7d, 0x49, 0x99, 0x8d, 0x6d, 0x44, 0x43, 0x15, 0x32, 0x79,
-  0x6e, 0xef, 0xf9, 0xd5, 0xbd, 0xe0, 0x1d, 0x5e, 0xa8, 0x82, 0x96, 0xcf,
-  0x16, 0x0c, 0x9c, 0x4f, 0x86, 0x32, 0xa8, 0x35, 0x37, 0xe4, 0x91, 0xd2,
-  0x7c, 0xe3, 0x09, 0x13, 0x8c, 0x5c, 0xdd, 0xd1, 0xfe, 0xd7, 0x47, 0x44,
-  0x2e, 0x97, 0xa4, 0xc2, 0xd2, 0xac, 0xb0, 0x80, 0xac, 0x83, 0xd3, 0xe5,
-  0x4d, 0x1c, 0x9b, 0xe6, 0x8d, 0x35, 0x23, 0x5d, 0x33, 0x94, 0xe0, 0xf4,
-  0x7f, 0x9d, 0x77, 0xd9, 0xdf, 0x68, 0x01, 0xe3, 0xcd, 0xe7, 0x83, 0x2d,
-  0x3a, 0x23, 0x17, 0xa4, 0xe9, 0xcc, 0xc7, 0xd9, 0x24, 0x89, 0x46, 0xd3,
-  0x78, 0x7e, 0x53, 0x44, 0xa0, 0x55, 0xec, 0x87, 0x8c, 0x94, 0xef, 0xb7,
-  0x65, 0x9e, 0xd3, 0x4d, 0x3a, 0x89, 0xc2, 0x0b, 0xc6, 0x8e, 0x8b, 0x4c,
-  0x47, 0x0e, 0x81, 0xc9, 0x0c, 0xd1, 0x5f, 0x97, 0xbc, 0x1d, 0xb3, 0x38,
-  0xbf, 0x31, 0xc1, 0xc4, 0x69, 0x14, 0xa3, 0x04, 0x03, 0xc3, 0xf3, 0xcd,
-  0xe6, 0xc0, 0xae, 0xbe, 0xa1, 0xc5, 0x66, 0x5b, 0x43, 0x92, 0x0b, 0xdf,
-  0xd2, 0x63, 0x98, 0x99, 0x2c, 0xe3, 0xf7, 0xc5, 0x73, 0x48, 0x2c, 0x80,
-  0x3e, 0xc8, 0x2a, 0x20, 0x75, 0xc1, 0x86, 0x0f, 0x26, 0x09, 0x7a, 0x93,
-  0x0e, 0xaa, 0xd8, 0x3a, 0xa6, 0x31, 0x9d, 0x37, 0x5e, 0x41, 0x4f, 0x44,
-  0xcd, 0x41, 0xf0, 0xf7, 0x4c, 0x4a, 0xdd, 0x02, 0xc7, 0x21, 0x20, 0x83,
-  0x3e, 0xb1, 0x6d, 0x36, 0xde, 0xb4, 0xef, 0xf8, 0x05, 0x1d, 0x8f, 0xc2,
-  0x9d, 0x8f, 0xcb, 0xf4, 0x6a, 0x99, 0x27, 0xc2, 0xec, 0x61, 0xef, 0x31,
-  0x33, 0x0f, 0xb3, 0xe6, 0xeb, 0x0c, 0x54, 0x48, 0x22, 0x73, 0x32, 0xbd,
-  0xec, 0xd5, 0x9a, 0xe3, 0x73, 0x6c, 0xbc, 0x0f, 0x0c, 0xa2, 0x48, 0xc6,
-  0x68, 0x6a, 0x9e, 0x28, 0x8b, 0x9f, 0xf1, 0xf2, 0xb2, 0x69, 0x20, 0x1a,
-  0x4f, 0xe3, 0x74, 0x56, 0x88, 0x4a, 0xa1, 0x7a, 0x6f, 0x9d, 0x80, 0x2e,
-  0x54, 0xf2, 0x03, 0xe5, 0x8c, 0x58, 0xf2, 0xcc, 0x0b, 0x96, 0x2d, 0x79,
-  0xdf, 0x62, 0xbb, 0x62, 0xd1, 0x29, 0x29, 0x92, 0xe3, 0x1b, 0x50, 0x27,
-  0x7a, 0x91, 0xdb, 0xa9, 0x5f, 0x6b, 0x4e, 0x76, 0xa6, 0xe0, 0xf5, 0x5c,
-  0x16, 0x6c, 0x9f, 0x2a, 0xd2, 0x11, 0x51, 0x26, 0x89, 0x60, 0xcb, 0x31,
-  0x48, 0x81, 0x55, 0x5b, 0x52, 0xa2, 0xf3, 0x98, 0xe5, 0xd4, 0x12, 0x96,
-  0xb5, 0x08, 0xf4, 0xd3, 0x27, 0x5a, 0x59, 0xb4, 0x8e, 0x0e, 0x16, 0x24,
-  0x91, 0x25, 0x2b, 0xdc, 0xa2, 0x50, 0x89, 0x99, 0x2d, 0x36, 0x2a, 0x9e,
-  0x8e, 0x6b, 0xab, 0x59, 0x6b, 0x4e, 0xd6, 0xb6, 0x47, 0x82, 0x7d, 0x4a,
-  0xfa, 0xbb, 0xa9, 0xa1, 0x24, 0x49, 0x09, 0x81, 0x82, 0xbe, 0xfa, 0xa4,
-  0x54, 0xa5, 0x63, 0xd0, 0x56, 0xcf, 0x3e, 0x9a, 0xa4, 0xa4, 0xc6, 0x96,
-  0xd5, 0xcf, 0xe6, 0xe5, 0x74, 0x66, 0x9f, 0xc4, 0x0d, 0x56, 0xa7, 0xcf,
-  0x24, 0x57, 0x19, 0xe9, 0xdb, 0x65, 0x82, 0x07, 0x1b, 0x94, 0x09, 0xb6,
-  0x24, 0x7c, 0x49, 0x85, 0x10, 0x47, 0x43, 0x26, 0x52, 0x90, 0x2c, 0x42,
-  0xbc, 0x9b, 0xcd, 0x54, 0x13, 0x3e, 0xca, 0x3c, 0x64, 0x1a, 0xae, 0x30,
-  0xdf, 0x3a, 0x03, 0x83, 0xba, 0x50, 0x94, 0xc4, 0xa5, 0x7a, 0x2a, 0x75,
-  0x12, 0x43, 0x9c, 0xc5, 0x0f, 0xd8, 0x45, 0x92, 0x6a, 0x9c, 0x24, 0x81,
-  0x53, 0x46, 0xdc, 0xa6, 0xbc, 0x4b, 0xc7, 0x2a, 0xb6, 0xf3, 0xa2, 0xd5,
-  0xb9, 0x35, 0x5b, 0x18, 0xa6, 0x29, 0x3f, 0x38, 0x5b, 0x12, 0x0d, 0xd0,
-  0x5b, 0x7c, 0x45, 0x8b, 0xaa, 0x73, 0x47, 0x3b, 0x3a, 0x90, 0xa3, 0x95,
-  0x88, 0xe8, 0x45, 0x57, 0x23, 0x4b, 0x84, 0x71, 0x9e, 0x42, 0xbb, 0x6b,
-  0x34, 0x27, 0x63, 0xe6, 0x49, 0x86, 0xe3, 0xe4, 0xd7, 0x55, 0x40, 0xf2,
-  0x82, 0x11, 0x8e, 0x1f, 0xb3, 0xaf, 0xe0, 0x70, 0x8d, 0xe8, 0xd8, 0x8b,
-  0x5d, 0x33, 0x7a, 0xcd, 0x17, 0xfc, 0x1b, 0x9e, 0xcc, 0x0a, 0xe6, 0x7a,
-  0x06, 0x95, 0xf2, 0xba, 0x2a, 0x3a, 0x05, 0x4c, 0x54, 0xf4, 0x46, 0x69,
-  0xcd, 0x74, 0x4d, 0x3e, 0x1f, 0x75, 0x62, 0x26, 0xf2, 0x4d, 0xc0, 0x57,
-  0x5d, 0x5b, 0x0b, 0x7f, 0x3b, 0xd3, 0xce, 0x24, 0xe9, 0x2d, 0xdb, 0x2a,
-  0x9d, 0x96, 0x26, 0x8d, 0xc3, 0xd6, 0xd2, 0x19, 0x26, 0x65, 0xbd, 0xb9,
-  0x7d, 0x74, 0xb8, 0xdb, 0x51, 0x7b, 0x0d, 0x4c, 0x93, 0x68, 0x55, 0x97,
-  0x8e, 0x16, 0x58, 0x0d, 0x32, 0x97, 0xac, 0xe8, 0x10, 0x51, 0x74, 0xd8,
-  0xb4, 0xbf, 0xfd, 0xe6, 0xbb, 0xbd, 0xe3, 0xf7, 0x87, 0xdb, 0x7f, 0xaa,
-  0x53, 0x0f, 0x7d, 0xb7, 0x23, 0xdf, 0xed, 0x74, 0xda, 0xb8, 0x1e, 0x11,
-  0x50, 0x14, 0x75, 0xdf, 0x74, 0x49, 0x43, 0x9e, 0x8d, 0xb2, 0x29, 0xcf,
-  0xd2, 0x2e, 0x70, 0x70, 0x3b, 0x1a, 0x45, 0x4f, 0x55, 0x86, 0x52, 0xee,
-  0x4a, 0x59, 0x18, 0xbe, 0x6a, 0xeb, 0x63, 0x87, 0x41, 0x41, 0x55, 0x77,
-  0x10, 0x40, 0x3c, 0x09, 0x17, 0xa3, 0x28, 0x71, 0x75, 0xea, 0x06, 0x71,
-  0xcb, 0x85, 0xd0, 0x23, 0x1d, 0x0e, 0x1c, 0xb6, 0xfa, 0xc5, 0x20, 0x33,
-  0xe6, 0x29, 0xfb, 0x21, 0x81, 0x33, 0x17, 0x10, 0xa6, 0x52, 0x10, 0xd6,
-  0x03, 0x51, 0x6f, 0x39, 0xbe, 0x1e, 0xd0, 0x0d, 0x29, 0x7c, 0x27, 0x2d,
-  0xf4, 0x08, 0xd7, 0x79, 0x22, 0xdf, 0x1d, 0x6c, 0x03, 0xb8, 0xa5, 0x59,
-  0xc8, 0xd6, 0x77, 0x74, 0x2c, 0xa4, 0x6c, 0xd2, 0xbe, 0x74, 0xf4, 0xc8,
-  0x83, 0xb2, 0x60, 0xb3, 0x56, 0x95, 0x92, 0xcf, 0x57, 0x5e, 0x6f, 0x8e,
-  0xce, 0x4e, 0x36, 0xe3, 0x1e, 0xd5, 0x90, 0xce, 0x8e, 0x0c, 0x63, 0x1a,
-  0x7c, 0x9e, 0x68, 0xd4, 0xac, 0x5b, 0x3f, 0xe8, 0x89, 0xec, 0xe6, 0x89,
-  0x1e, 0x5f, 0x51, 0xa3, 0xeb, 0x94, 0x4f, 0x8d, 0x8d, 0x48, 0x68, 0x57,
-  0xd2, 0x96, 0x9b, 0x4d, 0x18, 0xc4, 0x31, 0x11, 0xf5, 0x34, 0x13, 0x56,
-  0x15, 0xde, 0x66, 0x30, 0xe6, 0x45, 0x2a, 0x21, 0x19, 0x31, 0x64, 0x97,
-  0x2d, 0x07, 0x54, 0x9f, 0x61, 0x06, 0x8f, 0x3d, 0xb1, 0x11, 0xcb, 0x19,
-  0x73, 0x74, 0x45, 0x5a, 0x27, 0x2d, 0x31, 0x8e, 0x80, 0x72, 0x68, 0x52,
-  0x65, 0x5a, 0x9a, 0x3b, 0x49, 0xca, 0x62, 0x1c, 0x2f, 0x92, 0x4d, 0x95,
-  0x03, 0x6c, 0x47, 0xd1, 0x8b, 0x0c, 0xa4, 0x41, 0x69, 0x70, 0x41, 0x9d,
-  0x5e, 0x1c, 0x8a, 0x01, 0x45, 0xa5, 0x2c, 0x7d, 0xc5, 0x5b, 0x0d, 0x30,
-  0x71, 0x4c, 0xda, 0x9f, 0x64, 0xa7, 0x78, 0x88, 0xb0, 0xad, 0x3c, 0x3e,
-  0x6e, 0x08, 0x66, 0x73, 0x52, 0xd8, 0x06, 0x30, 0xec, 0xda, 0xf4, 0xd4,
-  0xcc, 0x69, 0x74, 0x67, 0xc7, 0x86, 0xba, 0x84, 0xd0, 0x82, 0x8f, 0x9d,
-  0x1b, 0xa4, 0xce, 0x88, 0xf4, 0xf2, 0xc4, 0x60, 0xc6, 0x6e, 0x30, 0xfd,
-  0xbf, 0xc4, 0x35, 0x89, 0x42, 0x6d, 0xe7, 0x58, 0x43, 0x52, 0x15, 0xe6,
-  0x24, 0x4b, 0xdf, 0x26, 0xba, 0xec, 0xbc, 0x94, 0xed, 0x57, 0x9f, 0xd7,
-  0x2c, 0x95, 0x28, 0xd0, 0xcf, 0x01, 0xf5, 0x33, 0x59, 0xce, 0x16, 0xa1,
-  0xe8, 0xf2, 0xbb, 0xb6, 0x33, 0x2b, 0xb2, 0xda, 0x2f, 0x95, 0x55, 0x46,
-  0xc9, 0x2f, 0x92, 0x54, 0xbe, 0x12, 0x81, 0xb5, 0x1f, 0x17, 0xe3, 0x34,
-  0xad, 0xbd, 0x75, 0x08, 0xa5, 0x2d, 0xda, 0x1b, 0xee, 0x1f, 0x1d, 0x79,
-  0x3b, 0xc8, 0x9d, 0x88, 0xff, 0x3c, 0x1f, 0xd6, 0x69, 0x69, 0x6d, 0xd8,
-  0x83, 0x26, 0x96, 0x45, 0xf8, 0xd9, 0x64, 0xdc, 0x74, 0x9d, 0xb6, 0x1d,
-  0x4d, 0x1e, 0x5f, 0x32, 0x27, 0xfa, 0x19, 0x8b, 0x7c, 0x2d, 0x0d, 0xd1,
-  0x7c, 0xd8, 0x4a, 0x07, 0x8a, 0xa1, 0x1b, 0xae, 0x50, 0xf5, 0xec, 0x4f,
-  0xe5, 0xc3, 0x22, 0x79, 0xb3, 0xd7, 0x11, 0xd9, 0xb0, 0x3e, 0x27, 0x59,
-  0x98, 0x71, 0x4c, 0xc3, 0x57, 0x0b, 0x8a, 0x5c, 0x65, 0xbc, 0xe9, 0x13,
-  0xb5, 0x7b, 0x28, 0x23, 0x65, 0x5b, 0xfd, 0x8c, 0x85, 0x57, 0xb1, 0x48,
-  0xd3, 0x95, 0xf5, 0x6c, 0xa7, 0xce, 0x87, 0x1e, 0x48, 0x9e, 0x98, 0x15,
-  0xa1, 0x10, 0x87, 0xeb, 0xbf, 0xfd, 0x5e, 0xa9, 0xc9, 0x70, 0x4c, 0x48,
-  0x38, 0x52, 0x5f, 0xf1, 0x2b, 0x35, 0xc9, 0x63, 0xe0, 0x24, 0xab, 0xe6,
-  0xc6, 0x98, 0xa9, 0x97, 0x6f, 0xde, 0x9a, 0x68, 0xba, 0x2c, 0x96, 0xb0,
-  0x70, 0x2d, 0x48, 0x00, 0x2b, 0xa7, 0xc4, 0x0d, 0x7b, 0xd1, 0x72, 0xce,
-  0x3f, 0x9d, 0xce, 0x1b, 0x79, 0x53, 0x81, 0x57, 0xab, 0xa0, 0x39, 0xe5,
-  0x29, 0xcf, 0x35, 0x8e, 0x42, 0xc6, 0x2c, 0x72, 0xbe, 0xb6, 0xaf, 0xa2,
-  0x06, 0xbb, 0x99, 0xe8, 0xb1, 0x49, 0xca, 0x3e, 0x4a, 0x1a, 0x71, 0x7d,
-  0xc7, 0x5a, 0xe5, 0xd1, 0xf5, 0x62, 0x49, 0xdc, 0x8f, 0xee, 0x87, 0xa6,
-  0xf4, 0xd3, 0x26, 0x23, 0xf1, 0x82, 0x87, 0x32, 0x50, 0x3f, 0xb4, 0x1d,
-  0x04, 0x32, 0x92, 0xc9, 0x46, 0xa1, 0x3a, 0xd5, 0x1f, 0xa7, 0x8b, 0x6b,
-  0x3e, 0x49, 0xaf, 0xa1, 0x7e, 0xb3, 0x64, 0x2f, 0x1f, 0x34, 0xae, 0xfb,
-  0xe1, 0xf0, 0xd8, 0x54, 0x29, 0x70, 0x05, 0x70, 0x68, 0x7b, 0x5b, 0x77,
-  0x28, 0x35, 0x5f, 0x89, 0x99, 0x65, 0x85, 0xb9, 0x72, 0xd3, 0x75, 0xda,
-  0x72, 0x1d, 0x89, 0xc0, 0x63, 0x8e, 0x00, 0x58, 0x9c, 0xed, 0xab, 0x41,
-  0x74, 0x0e, 0x01, 0x74, 0xb9, 0xe0, 0x03, 0x16, 0xc1, 0xf9, 0xaa, 0xdf,
-  0xd5, 0x9a, 0xc3, 0xe0, 0xc3, 0x4d, 0x87, 0x97, 0xb2, 0x72, 0x3e, 0x2b,
-  0xdc, 0x37, 0x0d, 0xbe, 0xa3, 0x73, 0xb1, 0xdb, 0xb2, 0x5a, 0x81, 0x4b,
-  0x83, 0xa4, 0xa5, 0x79, 0x51, 0x4c, 0xe1, 0x69, 0x9a, 0x64, 0xe3, 0x62,
-  0x93, 0x34, 0xee, 0x62, 0xd3, 0x06, 0xc9, 0x3e, 0x25, 0xf1, 0xd9, 0xd7,
-  0x64, 0x86, 0xe1, 0xd0, 0xcd, 0x91, 0x2d, 0x34, 0x90, 0xfa, 0x1d, 0x21,
-  0x4c, 0x1f, 0x84, 0xcb, 0x88, 0x8a, 0x7b, 0xac, 0x46, 0xcf, 0xaf, 0xe7,
-  0xcb, 0x8b, 0xe3, 0xa1, 0xc8, 0x2b, 0x75, 0x89, 0x73, 0xc9, 0x7a, 0x92,
-  0xed, 0x52, 0xd8, 0x38, 0xee, 0x41, 0xb9, 0x52, 0x86, 0xc3, 0x7d, 0x7c,
-  0x38, 0x5c, 0xb2, 0x4a, 0x42, 0xdd, 0xe4, 0x0f, 0x91, 0x6a, 0xe2, 0xb5,
-  0xe6, 0x78, 0xd6, 0xe1, 0x3c, 0xc5, 0x14, 0x97, 0xe5, 0x0f, 0x83, 0xcb,
-  0x64, 0x92, 0xe5, 0xf1, 0x80, 0x78, 0x3d, 0x51, 0x30, 0xdc, 0x38, 0x98,
-  0x33, 0x9d, 0xee, 0x0f, 0xb4, 0x0a, 0x98, 0xee, 0x27, 0x07, 0xfc, 0xf4,
-  0x2a, 0x3a, 0x23, 0xd1, 0x80, 0x8d, 0x9b, 0xcd, 0x15, 0x69, 0x6a, 0x87,
-  0xb8, 0x85, 0xcc, 0xeb, 0xc7, 0x66, 0xde, 0xa2, 0x8d, 0xe3, 0xda, 0x81,
-  0x6b, 0xb9, 0x44, 0x61, 0x27, 0xad, 0xf0, 0x14, 0x1a, 0xf0, 0x82, 0x8d,
-  0x72, 0xc9, 0xa4, 0x9d, 0xb1, 0x9c, 0x9b, 0x9a, 0x15, 0xf9, 0x27, 0xbd,
-  0x01, 0xb0, 0x1e, 0x1b, 0x41, 0x3c, 0xf5, 0x2a, 0xcb, 0x89, 0x57, 0xce,
-  0x8a, 0x06, 0xc9, 0x89, 0x67, 0x5d, 0x75, 0x3d, 0x1a, 0xb8, 0x18, 0x5c,
-  0xcb, 0x65, 0x2e, 0x9b, 0xb1, 0x9c, 0x07, 0x1d, 0xd0, 0x12, 0x2e, 0x67,
-  0x70, 0x7f, 0xdb, 0x2a, 0xb4, 0x33, 0x5b, 0x5b, 0x13, 0x61, 0x57, 0x4e,
-  0xce, 0x85, 0x89, 0xa2, 0x10, 0x8d, 0x6e, 0x39, 0xf7, 0x6e, 0x55, 0x31,
-  0x19, 0xb0, 0x71, 0xa0, 0x2e, 0x07, 0x39, 0xaf, 0x49, 0x9e, 0xf0, 0xb3,
-  0xfc, 0x26, 0x2d, 0x62, 0x96, 0x57, 0x97, 0x0a, 0xe7, 0xb4, 0xcf, 0x0b,
-  0xcf, 0xec, 0xfc, 0x35, 0xa9, 0xb7, 0x19, 0xf5, 0x53, 0x3f, 0xfb, 0xef,
-  0xe2, 0xfb, 0x74, 0xb6, 0x9c, 0x89, 0x21, 0x5e, 0xec, 0x12, 0xfa, 0x64,
-  0xe4, 0x9d, 0x8c, 0xc4, 0x4a, 0xb3, 0xbb, 0xda, 0xf1, 0xaf, 0x99, 0xc2,
-  0x9d, 0x57, 0x02, 0x73, 0xe2, 0xef, 0x48, 0x3a, 0x1c, 0xa8, 0xe6, 0xa9,
-  0x36, 0xc0, 0x19, 0x3b, 0xaf, 0xe4, 0xde, 0x0f, 0xda, 0x89, 0x16, 0xd7,
-  0x71, 0x91, 0x30, 0xaf, 0xa3, 0x4b, 0xb9, 0x6d, 0xaa, 0x24, 0x24, 0x16,
-  0xee, 0x8d, 0xa4, 0xc1, 0xea, 0x69, 0x33, 0x49, 0x40, 0xc7, 0xdd, 0x4e,
-  0xcb, 0x8b, 0x48, 0x07, 0xb9, 0x2d, 0x57, 0x18, 0x3e, 0x66, 0x74, 0x69,
-  0xcf, 0xe2, 0x7b, 0xac, 0x4c, 0x45, 0x58, 0xfc, 0xb5, 0x48, 0x5a, 0x85,
-  0xf1, 0x60, 0x37, 0xaa, 0xd2, 0x51, 0xf4, 0x1a, 0x52, 0x0d, 0xab, 0x02,
-  0xf5, 0xdd, 0x70, 0xe6, 0xac, 0x4c, 0x99, 0x30, 0x9e, 0x74, 0xf6, 0x7c,
-  0xbb, 0x31, 0xc5, 0x21, 0xc1, 0xe6, 0x62, 0x13, 0xe4, 0xe2, 0x4b, 0xb8,
-  0x05, 0x9a, 0x12, 0xf3, 0x62, 0x9a, 0x80, 0x98, 0x9c, 0x56, 0x38, 0x50,
-  0xb7, 0x9b, 0x34, 0x52, 0x44, 0x95, 0x66, 0x2a, 0x7a, 0x59, 0x3c, 0x69,
-  0x53, 0x8c, 0xe3, 0x40, 0x18, 0xc5, 0xe8, 0x62, 0x98, 0x54, 0x99, 0x81,
-  0xc5, 0xda, 0x9a, 0x6b, 0xce, 0x2b, 0x77, 0x78, 0xb7, 0xd6, 0x9c, 0x59,
-  0x58, 0x40, 0x32, 0xeb, 0xc5, 0x06, 0xf4, 0xe0, 0xb9, 0x17, 0x4e, 0x99,
-  0xb1, 0xde, 0xcc, 0xb3, 0x3b, 0x52, 0x6f, 0xe7, 0x99, 0xf4, 0x65, 0xeb,
-  0xcb, 0x63, 0xaf, 0xab, 0x56, 0x65, 0xa2, 0x57, 0x52, 0xe3, 0xc9, 0xd2,
-  0xc9, 0x5c, 0x42, 0x7c, 0x26, 0x9d, 0xdb, 0x40, 0x5b, 0xad, 0xa2, 0x2a,
-  0xa5, 0x87, 0x0e, 0xed, 0xa4, 0x0c, 0x95, 0x05, 0x53, 0xe5, 0x9c, 0x13,
-  0x6f, 0x12, 0x17, 0xd7, 0xbd, 0xa8, 0xd3, 0xef, 0xf4, 0x5a, 0x48, 0xaf,
-  0x2e, 0x71, 0xdb, 0xb8, 0x9c, 0xc0, 0xf5, 0x84, 0x3e, 0xa0, 0x26, 0x02,
-  0x1d, 0x30, 0x53, 0x11, 0xc9, 0x88, 0x5d, 0x58, 0x13, 0xd4, 0x40, 0xcb,
-  0xb2, 0x82, 0x6f, 0x55, 0x08, 0xf3, 0xee, 0x3a, 0x9b, 0xb6, 0x9e, 0xa9,
-  0xc0, 0x48, 0x90, 0x71, 0x33, 0x30, 0x72, 0xb2, 0x77, 0x9b, 0xe5, 0xf3,
-  0x1a, 0x5b, 0x89, 0xc6, 0xd3, 0x24, 0xce, 0xa7, 0x0f, 0xaa, 0x3f, 0xd6,
-  0x9a, 0xeb, 0xdf, 0xca, 0x9c, 0xd8, 0x14, 0x1d, 0x13, 0x99, 0xe6, 0x73,
-  0x5e, 0x68, 0xf5, 0xd0, 0x25, 0x13, 0x89, 0x07, 0x29, 0xc5, 0xe3, 0xa0,
-  0xcb, 0x27, 0x5a, 0xca, 0x6d, 0xca, 0x36, 0xad, 0xc6, 0xb2, 0x27, 0xc9,
-  0x64, 0x14, 0x8f, 0x6f, 0xb0, 0xe4, 0x68, 0x53, 0xbc, 0x70, 0x7c, 0x10,
-  0x9d, 0x19, 0x8c, 0x68, 0xfa, 0x9a, 0x4e, 0x60, 0x91, 0x96, 0xcb, 0x78,
-  0xd5, 0xd1, 0xad, 0x6a, 0x00, 0x4f, 0x9e, 0xde, 0x2a, 0x51, 0xb7, 0x69,
-  0xed, 0x2b, 0xce, 0xf6, 0x3e, 0xce, 0x36, 0xc9, 0x79, 0xf3, 0x25, 0x29,
-  0x02, 0xc4, 0x68, 0xb3, 0xcb, 0x4b, 0xa2, 0x94, 0x2f, 0x1a, 0x46, 0x0b,
-  0x79, 0x64, 0xf3, 0x5c, 0x83, 0xc6, 0xdc, 0x59, 0xab, 0x3a, 0xb4, 0xf9,
-  0x4a, 0x97, 0x55, 0xba, 0x4a, 0x79, 0x2f, 0x22, 0x69, 0xae, 0x69, 0xd0,
-  0xab, 0x3f, 0x11, 0xf9, 0xf5, 0x15, 0x57, 0x4e, 0x10, 0x72, 0x36, 0x7a,
-  0x10, 0x75, 0x3e, 0x2e, 0xeb, 0x81, 0x2d, 0xc6, 0xb6, 0x6f, 0xd2, 0xc5,
-  0x82, 0x37, 0x0b, 0xb1, 0x27, 0xce, 0xb8, 0xc4, 0xad, 0x8d, 0x92, 0xab,
-  0x74, 0x3e, 0x0f, 0xa3, 0x80, 0xb2, 0x65, 0x3e, 0x76, 0x1a, 0xf3, 0x28,
-  0xa1, 0x83, 0x52, 0x6f, 0xce, 0x8c, 0x21, 0xde, 0x1f, 0xac, 0xc6, 0xa3,
-  0x09, 0x02, 0x8a, 0x8c, 0x0f, 0x1d, 0x5d, 0xca, 0x9e, 0x40, 0x5f, 0x51,
-  0x5b, 0x5c, 0xdb, 0xd9, 0x79, 0xeb, 0x2d, 0x4e, 0xe6, 0x81, 0x19, 0x1e,
-  0xfd, 0xaf, 0x43, 0xef, 0xc2, 0x37, 0xf3, 0x07, 0xa9, 0x44, 0x4c, 0xdd,
-  0x0d, 0x72, 0x78, 0x4f, 0xb7, 0x7f, 0xa7, 0xbf, 0x1f, 0xf5, 0x3b, 0x18,
-  0x48, 0xc5, 0xc1, 0xb2, 0x2c, 0x33, 0x3a, 0xe7, 0x1a, 0xf5, 0x80, 0xc0,
-  0x35, 0xa6, 0x37, 0x56, 0xd4, 0xf2, 0x64, 0x53, 0xdc, 0x54, 0x59, 0x83,
-  0x71, 0x61, 0x0b, 0x65, 0xb1, 0x6d, 0x96, 0x30, 0x80, 0x95, 0xea, 0xdd,
-  0x11, 0xdb, 0x89, 0xec, 0x8f, 0x38, 0x4a, 0x37, 0xa1, 0x7d, 0x4b, 0x10,
-  0x40, 0x53, 0xef, 0x50, 0x33, 0xb6, 0x38, 0x36, 0x5b, 0x78, 0xc1, 0xaf,
-  0x77, 0x15, 0xf5, 0x85, 0x5b, 0x90, 0x9a, 0x91, 0xd7, 0xc7, 0x51, 0x71,
-  0x4d, 0x11, 0x49, 0xff, 0x85, 0xa4, 0x9c, 0xaa, 0xb1, 0xa5, 0x6f, 0xde,
-  0xb7, 0x5e, 0x35, 0x30, 0x45, 0xda, 0x6c, 0x33, 0xab, 0xd0, 0x95, 0x4d,
-  0x42, 0x52, 0xcc, 0x51, 0x37, 0x6c, 0xa0, 0x61, 0xd7, 0xbd, 0xca, 0xa2,
-  0xd1, 0x75, 0x4a, 0x63, 0xcf, 0xc7, 0xd7, 0x0f, 0x7c, 0x6f, 0xb0, 0xe9,
-  0x93, 0x7d, 0x4c, 0x17, 0x7e, 0x96, 0x75, 0xb6, 0x85, 0x3e, 0xd4, 0x1e,
-  0x99, 0xb2, 0x6e, 0xc1, 0xca, 0x55, 0x36, 0x37, 0xfa, 0xa9, 0x8d, 0x8f,
-  0xc8, 0xe2, 0x9a, 0x89, 0x36, 0x99, 0xb2, 0x4c, 0x40, 0x0b, 0xd8, 0x36,
-  0xba, 0x7e, 0x16, 0xb0, 0x72, 0x6c, 0x1b, 0x5d, 0x34, 0xd4, 0x38, 0x73,
-  0x42, 0x31, 0x9d, 0x49, 0x57, 0x6c, 0xff, 0x95, 0xde, 0xe8, 0x56, 0x9a,
-  0xf2, 0xcd, 0xf8, 0x50, 0x6b, 0x4e, 0x5d, 0x67, 0xfa, 0xba, 0xad, 0xbd,
-  0xb9, 0xce, 0xea, 0xdb, 0x79, 0x91, 0xe9, 0x57, 0x76, 0x07, 0xda, 0xaa,
-  0x88, 0xf6, 0x55, 0x37, 0x11, 0x48, 0x20, 0x2e, 0x42, 0x97, 0x44, 0x17,
-  0xbc, 0x2c, 0x17, 0xab, 0x04, 0xf4, 0x60, 0x7b, 0x6b, 0xc6, 0x72, 0xde,
-  0xfa, 0xe9, 0x25, 0x7c, 0x91, 0x1b, 0xcc, 0x8e, 0x88, 0x74, 0xca, 0xe8,
-  0xf8, 0x2d, 0x93, 0xdf, 0xfe, 0x39, 0xfd, 0x4c, 0xcd, 0x19, 0xc9, 0x7c,
-  0x1e, 0x11, 0xb6, 0xac, 0xee, 0xbf, 0xfb, 0x6e, 0x18, 0xad, 0x9f, 0x0e,
-  0x37, 0x9f, 0xbd, 0xda, 0xda, 0xa8, 0xb7, 0xc5, 0x4b, 0x07, 0x59, 0xa6,
-  0xd5, 0x7e, 0x3c, 0xdc, 0xe4, 0x68, 0xe2, 0x0d, 0x44, 0x89, 0xdf, 0xb2,
-  0x4a, 0x5d, 0xb1, 0xe6, 0x9c, 0x1d, 0xbe, 0x33, 0x8b, 0x1c, 0xb6, 0x2f,
-  0x8e, 0xf6, 0x69, 0x3c, 0xec, 0x7a, 0x68, 0x52, 0xd2, 0x79, 0x72, 0xab,
-  0xc6, 0xbd, 0xe8, 0x98, 0x75, 0x24, 0x1c, 0x13, 0x36, 0x20, 0x9a, 0x66,
-  0xb9, 0x48, 0x98, 0x35, 0xf8, 0xf7, 0x95, 0xd7, 0x41, 0x82, 0x68, 0x1e,
-  0xdf, 0x11, 0xc4, 0xd8, 0x82, 0x86, 0x94, 0x43, 0x3d, 0xe0, 0x70, 0x90,
-  0xc9, 0x6f, 0x77, 0xe4, 0x6c, 0x4d, 0xf6, 0xcc, 0x49, 0x0d, 0x1f, 0xf5,
-  0x67, 0x81, 0xdf, 0x78, 0xc2, 0x46, 0x2d, 0x36, 0xc1, 0xbc, 0x7e, 0xc4,
-  0x18, 0x4f, 0x72, 0xad, 0x0a, 0xe5, 0x49, 0x14, 0xdc, 0x56, 0x78, 0x0f,
-  0xa6, 0x72, 0x84, 0x74, 0x98, 0xa3, 0x29, 0x30, 0xd6, 0xb7, 0x4a, 0xe8,
-  0x3d, 0x17, 0xb3, 0x88, 0xab, 0x2d, 0x7e, 0x90, 0x15, 0x8b, 0xa3, 0x51,
-  0x9e, 0xdd, 0x71, 0xf4, 0xb4, 0x44, 0x55, 0x08, 0x31, 0xb2, 0x2d, 0x04,
-  0x21, 0xd5, 0x2c, 0x89, 0xd7, 0xef, 0x6b, 0x9a, 0xb3, 0x78, 0x94, 0x58,
-  0x5e, 0xf8, 0xe6, 0xe2, 0xdd, 0x31, 0xb6, 0x15, 0x4a, 0x8e, 0x28, 0x48,
-  0x72, 0x64, 0x8b, 0xe5, 0x88, 0xc4, 0x7f, 0x16, 0x06, 0x4a, 0x67, 0xd4,
-  0x09, 0x03, 0xa0, 0xed, 0x94, 0xc7, 0x88, 0xfd, 0x52, 0xe6, 0xbc, 0x68,
-  0x73, 0x40, 0xe8, 0x4d, 0x60, 0x96, 0x62, 0x6c, 0x26, 0xc9, 0x3c, 0xa4,
-  0xea, 0x3c, 0x2c, 0xea, 0x94, 0x43, 0xca, 0xfc, 0x54, 0x0d, 0x30, 0x9b,
-  0xf7, 0x7d, 0xd2, 0xf7, 0xfb, 0x3c, 0xb8, 0x3e, 0x35, 0x2f, 0xfe, 0x58,
-  0xf6, 0x6a, 0xef, 0x93, 0x90, 0xcc, 0x84, 0x42, 0xcd, 0xe3, 0x74, 0xbd,
-  0xa5, 0xdd, 0xe0, 0xa7, 0xda, 0x7d, 0x4d, 0x78, 0xc4, 0x36, 0x4c, 0xd4,
-  0x07, 0x7f, 0xf1, 0x62, 0x31, 0x21, 0x06, 0xab, 0x2d, 0x87, 0x9e, 0x11,
-  0xe3, 0xa0, 0x34, 0x86, 0x93, 0xcf, 0xc1, 0xe6, 0xea, 0x05, 0x21, 0x9e,
-  0x3f, 0xad, 0x73, 0x12, 0x36, 0x71, 0xe7, 0x0f, 0x12, 0x9b, 0xa1, 0x86,
-  0x67, 0xf3, 0xd6, 0x55, 0x2c, 0xae, 0xd2, 0xb8, 0x3c, 0x5d, 0xb3, 0x79,
-  0x67, 0x6c, 0x01, 0xa8, 0x8b, 0xc7, 0xea, 0x80, 0xe6, 0xf7, 0x6f, 0xe3,
-  0xe9, 0x12, 0x4a, 0x70, 0x2c, 0x7b, 0x25, 0x1e, 0x6d, 0x44, 0x55, 0xc6,
-  0x0f, 0xe8, 0x25, 0xe8, 0xc1, 0xad, 0x55, 0xfb, 0x7a, 0xb0, 0xa4, 0xc5,
-  0x61, 0x36, 0x22, 0x1c, 0x14, 0x89, 0x0b, 0xb3, 0xb0, 0x03, 0x53, 0x35,
-  0xba, 0x5a, 0xc8, 0xad, 0x85, 0x53, 0xd4, 0x47, 0xe9, 0xc2, 0x2b, 0x7a,
-  0x81, 0xb3, 0x28, 0xe5, 0x4b, 0x24, 0xa0, 0xf9, 0xc0, 0xaf, 0x3c, 0x4b,
-  0xf2, 0x2b, 0x84, 0x91, 0x65, 0x24, 0x2b, 0x36, 0x6d, 0x47, 0xe2, 0x8f,
-  0x8c, 0x5d, 0xb4, 0x1c, 0x74, 0x80, 0xdf, 0xf7, 0xc5, 0x91, 0x03, 0xed,
-  0x74, 0x49, 0x87, 0xd8, 0x94, 0x83, 0x6e, 0x7f, 0x12, 0xa9, 0x4f, 0x6c,
-  0x4e, 0x4b, 0x42, 0x07, 0xb3, 0x29, 0x26, 0x4d, 0xa7, 0x6f, 0xa6, 0x24,
-  0xb4, 0x3d, 0x74, 0x23, 0x0d, 0xdd, 0xd2, 0xf0, 0x9d, 0x52, 0x4d, 0x86,
-  0x08, 0x35, 0x19, 0x5f, 0x2f, 0xe7, 0x37, 0x66, 0x26, 0x9c, 0x92, 0xc8,
-  0x5e, 0x44, 0xc8, 0x53, 0xa8, 0x35, 0xd7, 0x0d, 0x3a, 0xfb, 0x7d, 0xd8,
-  0x76, 0xeb, 0x2a, 0x8b, 0x0e, 0xc2, 0xc1, 0xa5, 0x81, 0x23, 0xcd, 0x5d,
-  0x7d, 0x12, 0x9a, 0x1b, 0x7d, 0xd9, 0x33, 0xb7, 0x72, 0x19, 0xb8, 0x2d,
-  0xe2, 0xe6, 0xa1, 0xf5, 0xfa, 0x0b, 0xfc, 0x1d, 0xae, 0x41, 0x71, 0x36,
-  0x11, 0xe3, 0xef, 0x9b, 0x9f, 0xd4, 0x6b, 0x9e, 0xce, 0x3d, 0xd2, 0x76,
-  0x97, 0xe2, 0xed, 0xc0, 0x27, 0xe9, 0x52, 0x41, 0x70, 0x38, 0x0b, 0x93,
-  0x1e, 0xd1, 0x35, 0xcc, 0x82, 0x7a, 0x91, 0x36, 0x85, 0x51, 0x26, 0x5e,
-  0x77, 0x3c, 0xdf, 0x85, 0x61, 0x9f, 0xb5, 0x08, 0x07, 0x23, 0x88, 0x41,
-  0x74, 0x96, 0x49, 0xa0, 0x3a, 0x46, 0xd1, 0xa6, 0xb5, 0xda, 0xe5, 0xc3,
-  0x93, 0x9e, 0x44, 0xdd, 0xcb, 0x2c, 0x1b, 0xc5, 0x79, 0x57, 0xb7, 0x10,
-  0x3e, 0xf6, 0x91, 0x5a, 0xf1, 0xbc, 0x83, 0x25, 0x38, 0xe2, 0xfc, 0xf7,
-  0x97, 0xf4, 0xd2, 0xaa, 0x5b, 0x77, 0xa4, 0x3e, 0x8f, 0xf0, 0x86, 0x0c,
-  0xce, 0xe7, 0xa3, 0x8c, 0xfd, 0x42, 0x55, 0x9b, 0x52, 0xed, 0xf0, 0x90,
-  0xde, 0xa7, 0x90, 0x8a, 0x6a, 0x6e, 0x1f, 0xf6, 0x43, 0xaa, 0xcf, 0x7f,
-  0x91, 0x67, 0xf5, 0xa3, 0xc3, 0x82, 0x16, 0xc2, 0x8e, 0x89, 0xea, 0x8a,
-  0x2c, 0xb9, 0x0d, 0x03, 0xd0, 0x7f, 0x3b, 0x32, 0xe2, 0x05, 0xa5, 0xad,
-  0x3e, 0xc0, 0x35, 0x24, 0xf3, 0x70, 0x71, 0xf2, 0x12, 0xe1, 0x17, 0x59,
-  0x94, 0xfc, 0x0a, 0xc6, 0xd8, 0x58, 0x50, 0xbe, 0x79, 0x7a, 0x3c, 0x53,
-  0x04, 0x7e, 0xe9, 0x29, 0x9a, 0x27, 0x77, 0xea, 0x0e, 0x65, 0x5e, 0xcd,
-  0x37, 0x0b, 0x5f, 0x03, 0x62, 0x4c, 0x1b, 0x43, 0x98, 0x29, 0x2c, 0x5e,
-  0xae, 0xae, 0xbc, 0xf1, 0x52, 0x60, 0x6f, 0xff, 0xc9, 0x3b, 0xde, 0x94,
-  0x56, 0xf8, 0x62, 0x33, 0x36, 0x85, 0x99, 0x29, 0xa1, 0xb1, 0x1e, 0x1c,
-  0xf3, 0x21, 0xf1, 0xcc, 0x88, 0xdb, 0x92, 0xc5, 0x8d, 0x0b, 0x4d, 0x7f,
-  0x19, 0xc9, 0xca, 0x34, 0xaf, 0x90, 0x06, 0xd9, 0x38, 0xa6, 0xfb, 0x4b,
-  0x28, 0xa7, 0xe7, 0x56, 0x5c, 0x6f, 0x4a, 0x89, 0x73, 0x57, 0xd9, 0xc2,
-  0x85, 0xcd, 0xa5, 0x8d, 0xc8, 0x1a, 0x09, 0xff, 0xe3, 0xd5, 0x86, 0x5d,
-  0xcf, 0xc5, 0x77, 0x2d, 0x92, 0x9c, 0xef, 0x87, 0xc2, 0x9f, 0x48, 0x9a,
-  0xf8, 0xa0, 0x2a, 0xc9, 0x7c, 0x3e, 0xd8, 0xda, 0x68, 0x11, 0x6f, 0x89,
-  0x5a, 0xf6, 0xbf, 0x3e, 0x82, 0xc1, 0x76, 0x9a, 0xc6, 0x9c, 0x16, 0xc2,
-  0x9d, 0xc8, 0x64, 0x34, 0x49, 0xc7, 0xc8, 0xea, 0x8a, 0x6d, 0x8e, 0x8e,
-  0x51, 0xf3, 0xe2, 0x30, 0x4d, 0xb5, 0xd0, 0x85, 0xac, 0xbd, 0x66, 0x3f,
-  0xc5, 0xc6, 0xd2, 0x33, 0x89, 0x86, 0x8d, 0x8d, 0xd3, 0xb8, 0x10, 0x96,
-  0xd8, 0x3b, 0x29, 0x5a, 0x17, 0x11, 0xa3, 0x60, 0x7e, 0xc2, 0x7e, 0xdd,
-  0x18, 0x96, 0x5c, 0x5a, 0x37, 0x30, 0xba, 0x86, 0xa5, 0xd8, 0x6f, 0xbb,
-  0xe4, 0x3f, 0x25, 0xc5, 0xee, 0x5a, 0xc3, 0xc0, 0x83, 0xee, 0xdb, 0xf3,
-  0x0f, 0x9d, 0xb8, 0x23, 0x4e, 0x73, 0x74, 0xe2, 0xd9, 0x5c, 0x28, 0xc5,
-  0x88, 0xe0, 0xc4, 0x72, 0x0f, 0x36, 0xa2, 0xbd, 0x39, 0x68, 0xcf, 0xff,
-  0xc9, 0x4c, 0x14, 0xc2, 0x2c, 0xd1, 0x3c, 0x8b, 0xeb, 0x96, 0x16, 0x12,
-  0xb6, 0x66, 0xb1, 0x7d, 0xfc, 0x77, 0xdc, 0xf0, 0xa8, 0xbb, 0x50, 0xa8,
-  0x87, 0xe8, 0x0d, 0xf3, 0xfc, 0x2f, 0x35, 0xc4, 0x81, 0x0d, 0xde, 0xa1,
-  0xbd, 0x40, 0xf4, 0x5a, 0x75, 0xf8, 0x8b, 0xa4, 0x83, 0x65, 0x68, 0x6f,
-  0x0e, 0xc1, 0x06, 0xe1, 0xea, 0x09, 0x1d, 0x72, 0x30, 0x6f, 0x21, 0x29,
-  0x71, 0x0d, 0x8f, 0xed, 0x9b, 0xa7, 0x57, 0xef, 0x97, 0x2e, 0xdf, 0xe3,
-  0xab, 0x77, 0x81, 0xc8, 0x6c, 0x92, 0x2b, 0x10, 0x49, 0xf3, 0x26, 0x08,
-  0xed, 0x60, 0x7b, 0x82, 0x44, 0x29, 0x7a, 0x87, 0x78, 0x35, 0xc2, 0x3a,
-  0x30, 0x0a, 0xbd, 0xf9, 0xb5, 0x76, 0x1d, 0xc4, 0x08, 0x37, 0x11, 0x0f,
-  0xbe, 0xbd, 0x39, 0x61, 0x84, 0xd8, 0xfb, 0x30, 0x10, 0x53, 0x6f, 0x72,
-  0xb4, 0x40, 0xfd, 0x25, 0xf7, 0x0b, 0x35, 0x93, 0xe3, 0x14, 0xb6, 0x48,
-  0x82, 0x15, 0x81, 0x70, 0x62, 0xf7, 0x70, 0x63, 0x7e, 0x5f, 0x1a, 0x7b,
-  0x7f, 0x6a, 0x72, 0x95, 0x40, 0x10, 0x84, 0x20, 0x85, 0xc2, 0x40, 0xc5,
-  0x98, 0xd5, 0x62, 0x5b, 0x33, 0x96, 0xe6, 0x23, 0x43, 0x25, 0xd9, 0xc4,
-  0x18, 0xfe, 0x46, 0xaf, 0xba, 0x66, 0xb1, 0x0a, 0xcf, 0xb6, 0xd1, 0xed,
-  0xcd, 0xa5, 0xac, 0x91, 0xd9, 0xf6, 0xb1, 0x66, 0xd4, 0xba, 0x7d, 0xff,
-  0x97, 0x4d, 0x51, 0xac, 0x82, 0xa0, 0x06, 0x21, 0x07, 0x36, 0xa0, 0xaa,
-  0x67, 0x89, 0xf4, 0x42, 0xba, 0xd1, 0x22, 0x4e, 0xc6, 0x5d, 0xc1, 0x04,
-  0x70, 0x63, 0xb1, 0x0d, 0x90, 0xcd, 0x5b, 0x53, 0x88, 0x53, 0x7a, 0x59,
-  0x81, 0xd2, 0xbd, 0xce, 0xd4, 0x47, 0x60, 0x93, 0x52, 0xae, 0x2a, 0x36,
-  0x4c, 0x90, 0x8f, 0x50, 0xad, 0xa3, 0xd2, 0x76, 0x02, 0x5d, 0x49, 0x8a,
-  0xe6, 0x0e, 0x6f, 0xbf, 0xff, 0x24, 0xc4, 0xa2, 0x90, 0xe0, 0x81, 0x03,
-  0x3c, 0xb8, 0x32, 0x7a, 0x20, 0x0e, 0xbe, 0x69, 0x78, 0x0e, 0xdc, 0xb5,
-  0xc7, 0x36, 0x59, 0x48, 0xab, 0xc8, 0xdc, 0xa0, 0xa5, 0xbf, 0xcb, 0x72,
-  0x8d, 0x4c, 0x1b, 0x25, 0x60, 0xff, 0x7c, 0x58, 0x33, 0xb8, 0xb8, 0xd8,
-  0xbc, 0xce, 0xd1, 0x80, 0xcd, 0x38, 0x25, 0x36, 0x97, 0x23, 0x6c, 0x02,
-  0x96, 0x14, 0x8b, 0x66, 0x6a, 0xc6, 0x2f, 0xa9, 0x89, 0x0c, 0xd9, 0x38,
-  0x2a, 0x19, 0x2d, 0x35, 0x04, 0xba, 0xe5, 0xfa, 0x53, 0x21, 0x05, 0x31,
-  0xcd, 0x92, 0x3e, 0x2d, 0x4b, 0x6a, 0x54, 0xc2, 0x43, 0x0d, 0xbc, 0x5f,
-  0x8d, 0xf8, 0x82, 0x5f, 0x12, 0x46, 0x80, 0x46, 0xe5, 0x05, 0x0d, 0xa4,
-  0x94, 0x8f, 0xd9, 0x22, 0x64, 0xb9, 0xc5, 0x2a, 0x50, 0xfc, 0x0b, 0x86,
-  0x93, 0x40, 0x98, 0xca, 0xc6, 0x74, 0xb6, 0x72, 0x24, 0x97, 0x36, 0x34,
-  0x42, 0x3a, 0x79, 0xb0, 0xab, 0x89, 0x77, 0x7d, 0x9c, 0x54, 0xc9, 0x03,
-  0xf9, 0x0e, 0xfd, 0x64, 0x91, 0x97, 0x2d, 0x41, 0xf7, 0x12, 0x2e, 0xec,
-  0x73, 0x7d, 0xe4, 0x69, 0x71, 0xe1, 0xfa, 0xd8, 0xfe, 0xc3, 0xb3, 0xf3,
-  0x0b, 0xcc, 0xf8, 0x98, 0x7f, 0x51, 0x13, 0x73, 0x7d, 0x1c, 0xb0, 0x84,
-  0x68, 0x3c, 0x2f, 0x47, 0xc8, 0x25, 0xb0, 0xce, 0xb9, 0x3c, 0xb4, 0x41,
-  0x90, 0xcc, 0xe6, 0xf2, 0xab, 0xe2, 0xe9, 0x1d, 0x67, 0x29, 0x41, 0x2e,
-  0xac, 0x5b, 0x26, 0x34, 0xe1, 0xcd, 0xc2, 0x2b, 0x78, 0x0c, 0x3d, 0xb9,
-  0x67, 0x31, 0x0a, 0xb1, 0xab, 0x9b, 0xb1, 0xec, 0x94, 0xbf, 0x64, 0x47,
-  0x8a, 0x0a, 0xea, 0x2b, 0x5c, 0xcc, 0x3d, 0x49, 0xce, 0x98, 0x4e, 0xd1,
-  0x24, 0xbf, 0x15, 0xe5, 0xc8, 0x93, 0x8c, 0x69, 0x1c, 0x03, 0x3f, 0x4f,
-  0xe9, 0x42, 0xcc, 0x63, 0x44, 0xa6, 0x41, 0x96, 0xbc, 0x29, 0xba, 0x92,
-  0x29, 0xc1, 0xfa, 0x9e, 0x08, 0xbf, 0xd4, 0x0c, 0xd2, 0xaa, 0x30, 0x69,
-  0x97, 0x39, 0x29, 0x7e, 0x71, 0x36, 0x1a, 0xf0, 0xad, 0x89, 0x20, 0x64,
-  0x4e, 0x4c, 0x69, 0x58, 0x75, 0x34, 0xfc, 0xdf, 0x7c, 0x41, 0xc9, 0x83,
-  0xa6, 0xb4, 0x88, 0x71, 0xe0, 0x52, 0xed, 0xcc, 0xf1, 0x34, 0x2d, 0x1f,
-  0x44, 0x75, 0x18, 0x89, 0x1a, 0xa2, 0x76, 0xa9, 0xb6, 0x88, 0x5a, 0x5a,
-  0xf8, 0x49, 0x2a, 0x6f, 0xc9, 0x44, 0x75, 0xdb, 0x1a, 0xe4, 0x38, 0x0c,
-  0xf2, 0xc6, 0x24, 0x3b, 0xa4, 0x07, 0xd7, 0x5a, 0x1f, 0x34, 0x23, 0xce,
-  0x35, 0x95, 0x02, 0x97, 0x2a, 0x03, 0x12, 0x87, 0x9a, 0xa6, 0xe3, 0x94,
-  0x95, 0x30, 0x1d, 0x27, 0xaf, 0x5c, 0x7d, 0x03, 0x39, 0xed, 0x46, 0xcf,
-  0x09, 0xb7, 0x36, 0xcf, 0x82, 0x06, 0x99, 0xe1, 0xf0, 0x42, 0xa4, 0xb1,
-  0x24, 0x2f, 0xca, 0x23, 0x21, 0xb1, 0xe2, 0xb1, 0xc6, 0x60, 0x0f, 0xf0,
-  0x04, 0x6f, 0x39, 0xf6, 0x0a, 0x8e, 0xb2, 0xf1, 0x35, 0xb2, 0x7f, 0x25,
-  0x62, 0x41, 0x28, 0x6f, 0x94, 0x5c, 0xc7, 0xb7, 0x69, 0x96, 0x0f, 0x2a,
-  0xd9, 0x5e, 0x4d, 0x4b, 0x67, 0x41, 0xe4, 0x32, 0xbe, 0x96, 0x7d, 0x64,
-  0x16, 0xc1, 0xef, 0x6a, 0x28, 0x17, 0xd4, 0x40, 0xcd, 0xf5, 0xc2, 0xee,
-  0x39, 0xb3, 0xcf, 0xd9, 0xa6, 0x18, 0x98, 0xd9, 0x07, 0xa8, 0x86, 0xa5,
-  0xbc, 0xe9, 0x1b, 0x95, 0xa8, 0xe8, 0x40, 0x59, 0xc6, 0x2b, 0x71, 0x71,
-  0xdb, 0x54, 0x68, 0xdc, 0xac, 0x8b, 0xdb, 0x5f, 0x7e, 0x44, 0x11, 0xa1,
-  0x0e, 0x1a, 0x3c, 0x3c, 0x1b, 0x7e, 0x17, 0x39, 0x07, 0x50, 0x5b, 0x68,
-  0xb4, 0x9c, 0x4e, 0x3f, 0x53, 0xd0, 0x6a, 0x70, 0x42, 0xff, 0xc9, 0x23,
-  0xea, 0x4e, 0x28, 0xf5, 0xaf, 0xc7, 0xf2, 0x6c, 0x6f, 0xf8, 0x5d, 0xed,
-  0x40, 0x7a, 0xcf, 0x88, 0xa5, 0xcf, 0xd4, 0x05, 0x0e, 0xce, 0x6c, 0xcb,
-  0x2d, 0x68, 0x8f, 0x5b, 0xfb, 0x45, 0xb4, 0x5a, 0xdc, 0xfe, 0xca, 0xb4,
-  0x6a, 0x0d, 0x3e, 0x45, 0xab, 0xd8, 0xd2, 0x27, 0x68, 0x95, 0x56, 0xa6,
-  0x41, 0xab, 0xb6, 0x0d, 0xed, 0xc4, 0xba, 0x8a, 0x56, 0xcb, 0xcc, 0x88,
-  0x1c, 0x74, 0x1a, 0x64, 0x24, 0x3e, 0x42, 0xa1, 0x01, 0xb9, 0xd5, 0x02,
-  0x44, 0xdb, 0xfd, 0x13, 0xdf, 0x23, 0x7e, 0x42, 0xb3, 0x33, 0x25, 0xa7,
-  0x3c, 0x88, 0x3a, 0xad, 0xa6, 0xf2, 0x23, 0x18, 0x76, 0xad, 0x35, 0x9f,
-  0x22, 0xf0, 0x2d, 0x4b, 0x1c, 0xb3, 0xcb, 0xc9, 0x26, 0x2e, 0x1e, 0xcc,
-  0x54, 0xe3, 0x68, 0xb9, 0x5d, 0xed, 0x66, 0xad, 0x45, 0x46, 0x8a, 0x35,
-  0xb4, 0x3e, 0x45, 0x4c, 0x04, 0xdb, 0xfa, 0xe9, 0x4d, 0x6a, 0x65, 0xa0,
-  0x01, 0xef, 0x45, 0x28, 0x6c, 0xda, 0x70, 0x25, 0xac, 0xb6, 0xc9, 0x1f,
-  0xe7, 0xe2, 0xe7, 0x10, 0xe3, 0x1e, 0xa2, 0x7a, 0x62, 0x0b, 0xec, 0x71,
-  0x78, 0x22, 0x73, 0xe7, 0x55, 0x01, 0x9c, 0x88, 0x8f, 0x90, 0x68, 0x33,
-  0x79, 0xd7, 0xa3, 0x8d, 0x65, 0xee, 0xbf, 0x83, 0xc8, 0xf9, 0x54, 0x04,
-  0x30, 0xaf, 0x8f, 0x64, 0x09, 0x0a, 0x6b, 0x6f, 0x46, 0x6e, 0x28, 0xab,
-  0xaf, 0x45, 0x1c, 0x37, 0x96, 0x1d, 0x1e, 0x4a, 0x97, 0xc2, 0x62, 0x01,
-  0xb3, 0x49, 0xe8, 0x20, 0x76, 0xd1, 0x5e, 0x62, 0x2d, 0x8a, 0xf3, 0xd0,
-  0xd9, 0xd3, 0x70, 0x04, 0xf1, 0x8c, 0x3b, 0xba, 0x96, 0x1d, 0x0d, 0xcc,
-  0x5a, 0xca, 0x5b, 0x1c, 0xa4, 0x0c, 0xbb, 0x68, 0x9e, 0xfc, 0x86, 0xee,
-  0xd8, 0x84, 0x56, 0x0d, 0x29, 0xa7, 0x4c, 0xaa, 0x24, 0x0a, 0xaf, 0x4a,
-  0x73, 0x13, 0x7a, 0xe0, 0x78, 0xfc, 0x73, 0x7d, 0xfa, 0x2c, 0xbe, 0x4a,
-  0x38, 0x2f, 0x55, 0x9c, 0x68, 0x3e, 0x20, 0x4b, 0x31, 0x0f, 0xda, 0xd3,
-  0xdc, 0x2e, 0x2c, 0xba, 0xb8, 0x35, 0x4d, 0xac, 0x3d, 0x31, 0x0c, 0x59,
-  0x7e, 0x3e, 0x2d, 0x4c, 0x76, 0xa1, 0x19, 0x0b, 0x1e, 0x86, 0xa6, 0x37,
-  0xe3, 0xf1, 0x1d, 0xde, 0x85, 0xd8, 0xc5, 0x3a, 0x7f, 0x62, 0xbf, 0x7b,
-  0xc7, 0x86, 0x1c, 0xb9, 0x45, 0x68, 0x9a, 0x82, 0xf9, 0x19, 0xaf, 0x3e,
-  0x57, 0xdd, 0xf5, 0x3c, 0x78, 0x39, 0xc5, 0x1a, 0x4a, 0xc1, 0xcf, 0xe3,
-  0xf4, 0x11, 0x0f, 0x26, 0xe9, 0xb2, 0x4e, 0x68, 0x24, 0x6d, 0xb2, 0x26,
-  0x70, 0xac, 0x43, 0xdb, 0xd5, 0x63, 0x24, 0x8a, 0x93, 0x8d, 0x49, 0x93,
-  0xed, 0x94, 0xcf, 0x5a, 0x30, 0xfd, 0x94, 0xd1, 0x61, 0xea, 0x2e, 0x15,
-  0x56, 0xf8, 0x5c, 0x36, 0x11, 0x9b, 0x59, 0x78, 0x40, 0x31, 0x2b, 0x65,
-  0x29, 0xe0, 0x41, 0xdc, 0xb4, 0x7e, 0x4b, 0x87, 0x7e, 0x32, 0xbf, 0xe2,
-  0x74, 0xd4, 0xd7, 0xad, 0xf1, 0x64, 0xc9, 0xd4, 0xe7, 0x6e, 0x5b, 0x38,
-  0xea, 0x38, 0x7f, 0x58, 0xf0, 0xcd, 0x21, 0xef, 0x29, 0xcf, 0x62, 0xce,
-  0x2f, 0x41, 0xa7, 0x41, 0xce, 0xff, 0xa0, 0x25, 0x8e, 0x42, 0x6e, 0x7b,
-  0x79, 0xd9, 0x1b, 0xc7, 0x39, 0x76, 0x55, 0xbd, 0x61, 0x10, 0x36, 0x68,
-  0x09, 0x4b, 0xf0, 0x1c, 0x89, 0xde, 0xe5, 0x4b, 0x7c, 0xb4, 0x4c, 0xa7,
-  0x93, 0xbe, 0x84, 0x19, 0xba, 0x28, 0xc7, 0x86, 0x93, 0x8a, 0x9b, 0x2d,
-  0x06, 0xd5, 0x9c, 0x2e, 0xe4, 0x76, 0x23, 0xb0, 0x6c, 0x9d, 0xe3, 0xa1,
-  0xe7, 0xb4, 0x1a, 0x1b, 0x26, 0xbb, 0xeb, 0x1b, 0x9a, 0x4f, 0x52, 0xbf,
-  0xf7, 0x6e, 0xe3, 0x74, 0x8a, 0x4b, 0x91, 0x9a, 0xc9, 0x97, 0x73, 0xf4,
-  0x5e, 0x5d, 0xbb, 0xdb, 0x34, 0xcf, 0xe6, 0xb3, 0xa6, 0x09, 0x67, 0xfd,
-  0xfc, 0x68, 0xb8, 0x1f, 0x9d, 0x0e, 0xa3, 0xd3, 0x93, 0xe3, 0x1f, 0xf9,
-  0x00, 0x22, 0xd6, 0x1b, 0x40, 0x2c, 0xdc, 0x75, 0xf0, 0x62, 0x74, 0x1b,
-  0xe7, 0x29, 0x14, 0xd1, 0xde, 0x6a, 0x1e, 0x2a, 0xd0, 0x20, 0x88, 0x51,
-  0xb8, 0xb3, 0x4d, 0xf7, 0xd1, 0xa5, 0x7c, 0xe9, 0x21, 0xc4, 0x32, 0x89,
-  0x8b, 0x34, 0xc9, 0xc5, 0xc8, 0x3f, 0xb6, 0x7c, 0xcc, 0x65, 0x33, 0x3d,
-  0x90, 0xcd, 0x7d, 0xe1, 0xd1, 0x97, 0xf0, 0x3f, 0xbe, 0x67, 0xa9, 0x7b,
-  0x9a, 0x68, 0x2d, 0x0c, 0x86, 0x26, 0x7a, 0x25, 0x6a, 0xfb, 0x0a, 0x7f,
-  0x7d, 0x10, 0x00, 0xfe, 0xa0, 0x97, 0x37, 0xfb, 0x1b, 0x60, 0x49, 0x70,
-  0x4a, 0xc0, 0xe1, 0xbc, 0xcc, 0xb3, 0x05, 0xdd, 0x14, 0x5f, 0xc7, 0xcc,
-  0x16, 0x31, 0xd3, 0x83, 0x38, 0x99, 0x35, 0x42, 0x35, 0x8a, 0x6c, 0x7c,
-  0x93, 0x94, 0xea, 0x00, 0xd2, 0xbf, 0x82, 0xec, 0x43, 0x68, 0xb0, 0xc2,
-  0x5b, 0x79, 0x41, 0x27, 0x74, 0xa9, 0x29, 0x2d, 0x32, 0x11, 0xd2, 0x50,
-  0x9a, 0x96, 0x55, 0x43, 0x02, 0xa9, 0x46, 0x77, 0x2a, 0x2d, 0x4a, 0x1b,
-  0x98, 0x5e, 0x7b, 0x3c, 0x67, 0xff, 0x90, 0xef, 0x26, 0x0e, 0x77, 0x78,
-  0x1d, 0x04, 0x09, 0xfc, 0xb4, 0x6b, 0x5a, 0xf3, 0xcf, 0xed, 0xeb, 0xd1,
-  0xcc, 0x52, 0xa8, 0x4a, 0x06, 0x41, 0x5b, 0x1a, 0x73, 0xc8, 0x9c, 0xe7,
-  0xaa, 0xe5, 0x7e, 0xb3, 0xec, 0x4a, 0x8d, 0x4c, 0xa4, 0xa5, 0x45, 0x80,
-  0x44, 0x24, 0x49, 0x1f, 0x43, 0xe1, 0x3f, 0x61, 0x73, 0x96, 0x28, 0x48,
-  0x97, 0xdc, 0xd9, 0xe1, 0xbb, 0x47, 0x22, 0x13, 0x61, 0x5e, 0x5d, 0xa8,
-  0x1e, 0xe4, 0x0c, 0x16, 0x92, 0x9b, 0xec, 0x46, 0x5a, 0x4b, 0xe9, 0xae,
-  0x35, 0xf7, 0xd7, 0x25, 0x63, 0x56, 0x4d, 0x34, 0xbb, 0x23, 0xb3, 0xc4,
-  0x64, 0x07, 0x91, 0x50, 0xcf, 0xfa, 0x36, 0xf8, 0x01, 0xe0, 0xd8, 0x14,
-  0x0d, 0xa7, 0x50, 0x27, 0x98, 0x47, 0x47, 0x63, 0xdb, 0x34, 0xfa, 0x4f,
-  0x58, 0x35, 0x92, 0xcb, 0xa2, 0x9b, 0xe4, 0xc1, 0x05, 0x42, 0xdb, 0x67,
-  0xbc, 0x04, 0xcd, 0xb5, 0xd3, 0x25, 0x01, 0x12, 0x00, 0xfd, 0x32, 0x67,
-  0xe3, 0xc3, 0xef, 0x22, 0x10, 0x82, 0x12, 0x00, 0xf7, 0xa8, 0xcc, 0x07,
-  0xaa, 0x81, 0x7c, 0x4a, 0x3d, 0x28, 0x0a, 0x87, 0x47, 0x58, 0x62, 0x64,
-  0x81, 0x46, 0x56, 0x94, 0xc3, 0x2f, 0x9b, 0x3e, 0xb4, 0xf1, 0x69, 0xc1,
-  0x57, 0x29, 0xc0, 0xbf, 0x14, 0x6d, 0xa1, 0x28, 0x2d, 0x24, 0x1f, 0x79,
-  0x0b, 0xd3, 0x74, 0x94, 0x23, 0xc4, 0x49, 0x04, 0xaf, 0x30, 0xf0, 0xb0,
-  0x21, 0xe9, 0x78, 0x92, 0x62, 0x93, 0x58, 0x3a, 0xbe, 0xc1, 0x21, 0x53,
-  0x66, 0x16, 0x92, 0x80, 0xc9, 0x92, 0x82, 0x5f, 0xa6, 0xdd, 0xd5, 0x15,
-  0x9e, 0xb8, 0x8c, 0x19, 0xbb, 0x88, 0x33, 0x61, 0xd2, 0xb9, 0x04, 0xc0,
-  0x49, 0x04, 0x60, 0xc0, 0x9e, 0x1c, 0x7f, 0x42, 0x92, 0xc5, 0x87, 0x83,
-  0xa3, 0x73, 0xe5, 0xa3, 0xa3, 0x87, 0x15, 0xf9, 0x34, 0xd1, 0x66, 0x52,
-  0x8e, 0x37, 0x17, 0x37, 0xe9, 0xe6, 0xbc, 0x28, 0x26, 0xa3, 0x8d, 0x10,
-  0x3f, 0x80, 0xe7, 0xcc, 0xb1, 0x3b, 0x67, 0xdf, 0xee, 0x0f, 0x3f, 0xd9,
-  0xde, 0x66, 0x29, 0x7d, 0x49, 0x4d, 0xaf, 0xd3, 0x1a, 0x34, 0x72, 0x1d,
-  0x0b, 0x5a, 0xf6, 0xd9, 0xa0, 0xc8, 0x36, 0x60, 0x80, 0x73, 0xbc, 0x18,
-  0xab, 0x84, 0xf8, 0x1f, 0xb8, 0x74, 0x35, 0x13, 0x90, 0xad, 0xaa, 0xbf,
-  0x65, 0x18, 0x8e, 0x90, 0x09, 0x82, 0x44, 0xa2, 0xd7, 0xfc, 0xef, 0x93,
-  0x87, 0x1e, 0xb0, 0x45, 0x95, 0x2d, 0xe1, 0x77, 0x55, 0x6b, 0xe0, 0x88,
-  0xa6, 0x49, 0x14, 0x7e, 0x5d, 0xa7, 0x2b, 0xb6, 0xf9, 0x0d, 0x78, 0x9e,
-  0xbd, 0xe8, 0xe0, 0xf0, 0x1c, 0x94, 0x79, 0x78, 0xf2, 0x35, 0x64, 0x4b,
-  0xce, 0x96, 0xbc, 0x9a, 0xa7, 0x7f, 0x63, 0x26, 0x48, 0x6d, 0x16, 0xb2,
-  0xc0, 0x7c, 0xcd, 0xf9, 0x33, 0x5b, 0x6b, 0x8e, 0xd7, 0x8b, 0x57, 0x11,
-  0xa7, 0xee, 0xb7, 0x5d, 0xa6, 0x58, 0x58, 0xe5, 0xfe, 0x5e, 0x38, 0xbb,
-  0x5f, 0x89, 0x45, 0x32, 0xf0, 0x14, 0xb1, 0x9b, 0xcb, 0x87, 0xb6, 0x10,
-  0x02, 0x0e, 0xe3, 0xb2, 0x5b, 0x43, 0xa2, 0x4b, 0x99, 0x36, 0xd4, 0x75,
-  0xe5, 0x41, 0x9a, 0xaa, 0x03, 0x03, 0xf6, 0x41, 0x23, 0xc6, 0xd9, 0x7f,
-  0xbf, 0x5e, 0x6c, 0xd4, 0xd8, 0xa9, 0x63, 0xa0, 0x27, 0x66, 0x04, 0xa8,
-  0x1e, 0xf1, 0xa6, 0x6e, 0xca, 0x13, 0x8b, 0xdd, 0xf1, 0xb0, 0x24, 0x4e,
-  0xac, 0x78, 0x4f, 0xdc, 0x6e, 0x95, 0xa5, 0xa7, 0x3d, 0x55, 0x01, 0x55,
-  0xef, 0xbb, 0x46, 0x2e, 0x5f, 0x09, 0x03, 0x32, 0xdb, 0xf9, 0x83, 0x36,
-  0x1b, 0x9b, 0x8a, 0x61, 0x39, 0x5a, 0x29, 0x54, 0xde, 0x69, 0x0a, 0x1e,
-  0x1a, 0xd5, 0x10, 0x75, 0xf7, 0x49, 0xfe, 0xfd, 0xb0, 0xbf, 0xf7, 0xe1,
-  0xab, 0xf7, 0x27, 0x07, 0xc7, 0x87, 0xdd, 0x3a, 0x45, 0x5e, 0xca, 0x3d,
-  0x80, 0x2c, 0xed, 0xa4, 0xec, 0x39, 0x0c, 0x84, 0x30, 0x5a, 0x15, 0x17,
-  0x3f, 0xd2, 0x97, 0xf1, 0x1b, 0xe2, 0xdb, 0x75, 0xc1, 0xeb, 0xda, 0xd3,
-  0x72, 0x3e, 0x41, 0x9e, 0x68, 0x30, 0x79, 0xcb, 0xe6, 0x51, 0xe7, 0xa1,
-  0x0d, 0xb0, 0x45, 0x7f, 0x66, 0xfa, 0xa3, 0x6b, 0x9b, 0xe4, 0xf1, 0x00,
-  0xf8, 0x25, 0x40, 0x49, 0xab, 0xc8, 0xf9, 0x88, 0xa1, 0x31, 0x9c, 0xcb,
-  0x88, 0xc6, 0xd3, 0xb2, 0xdd, 0x45, 0x25, 0xc0, 0x83, 0x5b, 0x22, 0x4a,
-  0xee, 0xeb, 0x20, 0xc7, 0x79, 0xd9, 0xed, 0x45, 0x49, 0x0a, 0x47, 0x64,
-  0x18, 0xf9, 0x86, 0xc0, 0xcb, 0xc6, 0x9d, 0xc3, 0xe1, 0xa9, 0xb1, 0xd0,
-  0xf5, 0x20, 0xb9, 0x4f, 0x10, 0x0f, 0xa3, 0x6f, 0xed, 0xc3, 0x4c, 0x5d,
-  0x46, 0xdf, 0x67, 0x39, 0x40, 0x1c, 0x0e, 0x2c, 0x9e, 0xd5, 0x1e, 0x8a,
-  0xe7, 0x0f, 0x4d, 0xbf, 0x35, 0x5b, 0x22, 0x58, 0x85, 0xb8, 0x12, 0x8c,
-  0xcf, 0xb3, 0xbd, 0x8b, 0x6f, 0x5a, 0x83, 0x33, 0x3c, 0xd2, 0xe7, 0xd3,
-  0xb7, 0x0d, 0xd8, 0x68, 0xb9, 0x32, 0x5e, 0xf6, 0x89, 0xab, 0xa6, 0x7a,
-  0x88, 0x6a, 0xb7, 0x4d, 0x8b, 0x00, 0xcb, 0xbd, 0xaf, 0xbc, 0x6f, 0x5a,
-  0x89, 0xd2, 0x2e, 0x1b, 0xbe, 0x6b, 0x56, 0x5e, 0x35, 0xad, 0x37, 0x8d,
-  0xcd, 0x96, 0xcf, 0xaa, 0xbb, 0x68, 0xec, 0xa6, 0xf9, 0x3f, 0xe3, 0xaa,
-  0x89, 0x71, 0x7a, 0x6a, 0x3c, 0xd4, 0x07, 0x3f, 0xb7, 0x73, 0x53, 0x65,
-  0xa7, 0x1f, 0xc9, 0x4f, 0x7d, 0x24, 0x75, 0x83, 0xc1, 0x08, 0x8b, 0x95,
-  0xab, 0x2a, 0x31, 0xfd, 0xb6, 0x12, 0x1f, 0xdb, 0xca, 0x11, 0x7b, 0x26,
-  0x91, 0xd5, 0x37, 0xcb, 0xf5, 0x24, 0xef, 0xb1, 0xa2, 0x81, 0xd0, 0x7f,
-  0xe6, 0x17, 0x79, 0x36, 0x96, 0x34, 0xb8, 0x20, 0x20, 0xf3, 0x43, 0x9e,
-  0x5c, 0xc7, 0xc5, 0x75, 0xb4, 0x2c, 0x53, 0xb6, 0xe9, 0xd7, 0xd5, 0x83,
-  0x25, 0x47, 0x65, 0x9a, 0xc1, 0xc0, 0x12, 0x30, 0x15, 0x9c, 0x40, 0x25,
-  0x3a, 0xac, 0x9f, 0x88, 0x6f, 0x40, 0xf1, 0x14, 0xf5, 0x28, 0x08, 0x43,
-  0x63, 0x93, 0x40, 0x5d, 0xd9, 0x1d, 0x1e, 0xf7, 0x43, 0xd4, 0xc0, 0x19,
-  0x67, 0xda, 0xc2, 0xc3, 0x90, 0x5c, 0xd2, 0xbc, 0xd3, 0x20, 0x33, 0x73,
-  0x59, 0xe9, 0xcb, 0xcb, 0x8f, 0xe9, 0xe5, 0x2a, 0xfb, 0x57, 0xe5, 0x31,
-  0x70, 0x1a, 0xbd, 0x97, 0x0a, 0x41, 0x1a, 0xac, 0x5f, 0x4a, 0xbf, 0x1d,
-  0x71, 0x5d, 0xb2, 0xf5, 0x93, 0x08, 0xbc, 0xdd, 0x52, 0xf4, 0x96, 0x13,
-  0x79, 0x0a, 0x76, 0x6b, 0xf3, 0x64, 0xd7, 0x19, 0x2f, 0x4b, 0x80, 0xda,
-  0xd8, 0xc2, 0x38, 0x9d, 0x6e, 0xb0, 0x80, 0x6f, 0x89, 0x87, 0xc8, 0xee,
-  0x29, 0x34, 0x49, 0xaf, 0x29, 0xbe, 0x18, 0x82, 0x17, 0xc2, 0xe2, 0xe0,
-  0xac, 0x85, 0x53, 0x46, 0xcd, 0xcc, 0xc0, 0xf3, 0x25, 0xae, 0x4b, 0x07,
-  0x38, 0xf8, 0x72, 0x92, 0x28, 0xe8, 0x63, 0x9d, 0x07, 0x0a, 0x0e, 0xb0,
-  0x9a, 0xd4, 0xa9, 0xcf, 0xa3, 0xb9, 0x39, 0x3e, 0x25, 0x2e, 0x04, 0xba,
-  0x53, 0x1c, 0x55, 0xac, 0x57, 0xf2, 0x5a, 0xd1, 0x72, 0x21, 0x4f, 0x92,
-  0x69, 0x8a, 0x07, 0x18, 0x64, 0x58, 0xd3, 0x2f, 0x55, 0xcb, 0x91, 0x2c,
-  0x4d, 0xf5, 0x7a, 0x23, 0x1e, 0xd9, 0x1e, 0xe0, 0xa8, 0x37, 0xa8, 0x62,
-  0x45, 0xbd, 0xb9, 0x75, 0x49, 0xb6, 0x03, 0xfa, 0xa7, 0x68, 0x97, 0x16,
-  0xb0, 0xc5, 0x03, 0x7b, 0x70, 0x08, 0xcf, 0x1b, 0x7a, 0xdb, 0xc1, 0x24,
-  0xa6, 0xfa, 0xd4, 0x22, 0x6f, 0x68, 0xe7, 0xec, 0x42, 0x16, 0x52, 0x15,
-  0x8c, 0x6e, 0x6c, 0x40, 0x29, 0xa7, 0x23, 0x2e, 0xc3, 0x5c, 0x52, 0xc9,
-  0xaf, 0xda, 0xd9, 0x59, 0x61, 0x60, 0xd6, 0x9c, 0x71, 0x8d, 0x4a, 0xe1,
-  0xc5, 0xe8, 0x17, 0xf1, 0x65, 0x62, 0xc7, 0x94, 0x28, 0x9b, 0xa5, 0xc9,
-  0x6c, 0x4c, 0x4b, 0x28, 0xb1, 0x5d, 0xf8, 0x6c, 0x9e, 0x35, 0xfd, 0x79,
-  0xcb, 0x31, 0x9f, 0x52, 0x36, 0x1b, 0x38, 0x03, 0x29, 0xbb, 0xdc, 0x2d,
-  0xbc, 0xa1, 0x98, 0xa6, 0x0b, 0xe6, 0xfa, 0x79, 0xb6, 0xbc, 0xba, 0xe6,
-  0xd8, 0x3b, 0xb0, 0x1c, 0xb9, 0x7b, 0x5b, 0x1c, 0x2d, 0xb5, 0xd4, 0x76,
-  0x88, 0xba, 0xb7, 0xd9, 0x94, 0x0d, 0xa6, 0xeb, 0xb5, 0xf6, 0x9f, 0x6f,
-  0x6d, 0x63, 0xb8, 0xcf, 0xb7, 0x3e, 0xab, 0xe4, 0x0f, 0xb0, 0xfd, 0x3e,
-  0x1e, 0x23, 0xdd, 0x28, 0xfa, 0x89, 0xef, 0x95, 0x9f, 0x5b, 0x7d, 0x43,
-  0xb0, 0xf8, 0xc6, 0xf3, 0xd0, 0xc2, 0x1b, 0x17, 0x37, 0xe2, 0xa8, 0xe8,
-  0xd8, 0xfb, 0xfc, 0x7a, 0x47, 0x6d, 0x20, 0xce, 0x2f, 0xde, 0x02, 0xf7,
-  0xe4, 0xf4, 0x63, 0x4e, 0x28, 0x35, 0xee, 0x05, 0x41, 0xbe, 0x17, 0x20,
-  0x49, 0x02, 0x2c, 0x02, 0x88, 0x96, 0x97, 0xab, 0xed, 0x39, 0x7b, 0xfb,
-  0xfb, 0xde, 0xe5, 0x58, 0x8d, 0x88, 0x7b, 0xd6, 0x12, 0x11, 0xe7, 0xf2,
-  0xd1, 0x6a, 0xc7, 0x1f, 0xc8, 0x41, 0x3d, 0x0d, 0x6b, 0x87, 0x71, 0xbe,
-  0x92, 0x14, 0x6d, 0xc6, 0xcd, 0x06, 0x81, 0xc1, 0xd8, 0xb9, 0x2c, 0x92,
-  0xfa, 0x8a, 0xae, 0x4e, 0xee, 0xa9, 0x43, 0xd0, 0xe9, 0x9a, 0x6a, 0x76,
-  0x09, 0x1b, 0x4e, 0x37, 0x7d, 0x4e, 0x20, 0x64, 0x42, 0x84, 0x33, 0xc7,
-  0x12, 0xa6, 0xd0, 0x08, 0xa5, 0x72, 0x98, 0x71, 0xe2, 0xb6, 0x87, 0xfb,
-  0xe9, 0x1e, 0xf9, 0xeb, 0xf3, 0x20, 0x48, 0x5f, 0x67, 0x56, 0xd2, 0x22,
-  0xc5, 0xf9, 0xc4, 0x79, 0x82, 0x9a, 0x10, 0x2c, 0x26, 0x80, 0x73, 0x2a,
-  0x14, 0xe3, 0x15, 0x85, 0x48, 0x35, 0xe6, 0x57, 0xf3, 0xc2, 0xa1, 0xc5,
-  0xc3, 0x37, 0xd1, 0x82, 0x2b, 0xb9, 0x42, 0xd1, 0x2c, 0x95, 0x88, 0xd8,
-  0x20, 0xbb, 0xa6, 0xbe, 0x60, 0x7a, 0xc2, 0x7e, 0x92, 0x9f, 0xed, 0x34,
-  0x88, 0xdc, 0xbd, 0x3c, 0xe3, 0x6c, 0x27, 0x24, 0x9e, 0xc8, 0x2b, 0x92,
-  0x20, 0x2e, 0x41, 0x8c, 0x1e, 0xcd, 0x87, 0xb1, 0x1d, 0xe4, 0x7a, 0x60,
-  0x13, 0x49, 0x33, 0x8f, 0x6d, 0x7d, 0xb8, 0x61, 0xa6, 0x79, 0x5c, 0xca,
-  0xda, 0x58, 0x9c, 0x5f, 0x29, 0x8b, 0x72, 0xc1, 0xb6, 0x41, 0xfc, 0x9c,
-  0x06, 0x4a, 0xf4, 0x1b, 0x96, 0x8b, 0x2b, 0x51, 0x25, 0x38, 0xa6, 0xe4,
-  0xb6, 0x25, 0x24, 0x11, 0x1a, 0xd3, 0xf8, 0x6e, 0xd2, 0x1e, 0x98, 0x23,
-  0x77, 0xa9, 0xa4, 0x79, 0xc4, 0x0e, 0x55, 0x6e, 0xff, 0xfb, 0x83, 0x20,
-  0x39, 0x94, 0x8f, 0x19, 0x26, 0x05, 0x42, 0x90, 0x10, 0xb3, 0xf9, 0xaa,
-  0x38, 0x1f, 0x53, 0x21, 0x80, 0x3c, 0xfc, 0x16, 0x80, 0xf2, 0xc9, 0xc2,
-  0xa5, 0x79, 0x01, 0xff, 0x47, 0x90, 0x87, 0x18, 0x45, 0x18, 0x50, 0xc1,
-  0xb8, 0x3a, 0x57, 0x8c, 0x4e, 0xa3, 0x30, 0x06, 0x21, 0x78, 0x19, 0xd2,
-  0xf1, 0xce, 0xdf, 0xee, 0x6f, 0x7f, 0xf6, 0xec, 0x73, 0x92, 0xdf, 0x1f,
-  0x90, 0x99, 0xe5, 0x97, 0x4c, 0x62, 0x7c, 0x57, 0x87, 0x72, 0xa9, 0x09,
-  0xca, 0x64, 0x4f, 0x0d, 0x46, 0x20, 0xe6, 0x97, 0xdd, 0x25, 0x10, 0x87,
-  0xd4, 0x51, 0xd9, 0x08, 0x15, 0xcb, 0x68, 0x11, 0x0d, 0x7a, 0x56, 0xc0,
-  0x46, 0xb1, 0x4e, 0x72, 0xa5, 0x0e, 0x02, 0xca, 0x64, 0x84, 0x66, 0x4e,
-  0x4d, 0x24, 0x16, 0x7a, 0x7e, 0x78, 0x71, 0xce, 0x45, 0x14, 0x2e, 0x4e,
-  0xcf, 0x57, 0xc4, 0xdf, 0xd1, 0xc5, 0xc9, 0x5c, 0x89, 0x17, 0x8d, 0x89,
-  0x86, 0x31, 0x20, 0x4c, 0xe7, 0x0a, 0xf2, 0x5c, 0x78, 0x0b, 0x62, 0x01,
-  0xb7, 0x2e, 0x5a, 0x53, 0x26, 0x82, 0xcc, 0x89, 0xa2, 0x82, 0x96, 0x42,
-  0x47, 0x89, 0xce, 0xc9, 0x63, 0x13, 0x93, 0x3d, 0x7f, 0x9c, 0x42, 0x30,
-  0x61, 0x26, 0x46, 0x9e, 0xb1, 0xf3, 0x14, 0x61, 0xb4, 0x0a, 0x40, 0xe9,
-  0xc5, 0x43, 0xbd, 0x97, 0x56, 0x50, 0x88, 0x90, 0x55, 0x52, 0x04, 0x46,
-  0x46, 0xd1, 0xf2, 0x3b, 0xe6, 0x8d, 0xef, 0xb0, 0x70, 0x7f, 0xe3, 0xb0,
-  0x46, 0x9e, 0xa0, 0x5f, 0x92, 0x1b, 0x36, 0xfc, 0x84, 0x19, 0x6b, 0x12,
-  0xe7, 0x53, 0x44, 0x3e, 0xc7, 0x75, 0x0a, 0x4d, 0x83, 0x4f, 0x25, 0x44,
-  0xa2, 0x19, 0x4d, 0xe2, 0x92, 0x31, 0x78, 0x97, 0xbb, 0xce, 0xa9, 0x9f,
-  0x29, 0x75, 0xc8, 0xbe, 0x90, 0xd0, 0x33, 0x2d, 0x91, 0xe5, 0xd2, 0xb5,
-  0x51, 0x75, 0x1d, 0xa9, 0x55, 0xd8, 0xff, 0x8b, 0xc1, 0xf6, 0x46, 0x8d,
-  0xc9, 0x70, 0x58, 0x44, 0x3b, 0x67, 0x61, 0x87, 0x4a, 0x2d, 0x32, 0x43,
-  0x0c, 0x0b, 0x1a, 0x97, 0x4f, 0x57, 0x82, 0x81, 0xad, 0x9c, 0xe9, 0x53,
-  0xad, 0x48, 0x38, 0x28, 0xa0, 0xc1, 0x26, 0x60, 0x47, 0xdb, 0xba, 0xe5,
-  0x12, 0xa4, 0xb0, 0xac, 0x73, 0xd3, 0x28, 0x8c, 0x22, 0x68, 0xf2, 0x4f,
-  0x77, 0xff, 0x04, 0x59, 0xca, 0xe6, 0x79, 0xaf, 0x85, 0x86, 0x68, 0xce,
-  0x51, 0x65, 0x09, 0xb6, 0x7f, 0xc1, 0x0d, 0xf8, 0x68, 0x58, 0xd8, 0x2f,
-  0x8a, 0x0a, 0x8b, 0xde, 0xcf, 0x35, 0x3c, 0x8b, 0xc3, 0x1d, 0x0d, 0x25,
-  0xc9, 0xaf, 0x2e, 0x71, 0x67, 0xc8, 0x33, 0x30, 0x8e, 0x37, 0xae, 0x33,
-  0x31, 0x90, 0xf2, 0x62, 0x49, 0x22, 0xd4, 0xb2, 0xd0, 0x6c, 0x5e, 0xbb,
-  0x6c, 0xb4, 0x45, 0x8d, 0xda, 0x15, 0x70, 0xf4, 0x4a, 0x34, 0xc2, 0x8a,
-  0x90, 0x3a, 0xbf, 0x56, 0x50, 0xe6, 0x1b, 0x67, 0xd0, 0xf6, 0x15, 0x9b,
-  0x2f, 0xbc, 0x11, 0x52, 0xa2, 0x67, 0x2a, 0xa5, 0x28, 0xfb, 0x12, 0x66,
-  0x61, 0xf1, 0x2f, 0x92, 0x6b, 0xd0, 0x04, 0x4c, 0x14, 0x8d, 0x17, 0xe1,
-  0x29, 0x0a, 0x78, 0x64, 0xb0, 0x42, 0x95, 0x78, 0x0e, 0xc1, 0x0b, 0xab,
-  0xab, 0xad, 0x10, 0xca, 0xfc, 0x8d, 0xd2, 0x2f, 0x33, 0x04, 0x23, 0x46,
-  0xaf, 0xb5, 0xd7, 0x2f, 0xda, 0xa9, 0x18, 0x39, 0x60, 0x81, 0x48, 0x68,
-  0xd8, 0xf7, 0x00, 0x65, 0x1d, 0xaa, 0xed, 0x93, 0xc6, 0x34, 0x74, 0x5c,
-  0x5d, 0x04, 0xfb, 0x5e, 0x23, 0x4c, 0xcc, 0x80, 0x9c, 0xbc, 0x68, 0x65,
-  0x4e, 0x7f, 0x53, 0xec, 0x20, 0x8e, 0x11, 0x97, 0xbd, 0x58, 0xce, 0x68,
-  0x3a, 0x77, 0x49, 0x32, 0xe9, 0x16, 0xec, 0x0c, 0x60, 0xec, 0xce, 0xba,
-  0x0c, 0xcd, 0x91, 0x3f, 0x40, 0x32, 0x70, 0xfa, 0x04, 0x22, 0x37, 0xe1,
-  0x73, 0xb1, 0x78, 0x87, 0xd8, 0xb0, 0x19, 0x03, 0xed, 0x4d, 0xfd, 0x78,
-  0x75, 0xc7, 0xc6, 0xf0, 0xe8, 0xe2, 0x30, 0xda, 0x7b, 0x7f, 0xf1, 0x4d,
-  0x27, 0x00, 0xea, 0x0d, 0x38, 0x35, 0x24, 0x80, 0x92, 0xa4, 0x8c, 0x5b,
-  0xa1, 0x12, 0xc8, 0xa2, 0xe2, 0x43, 0x6b, 0x41, 0xbf, 0xa8, 0xd9, 0xfb,
-  0x07, 0x75, 0x2e, 0xf2, 0xa2, 0xce, 0x45, 0x38, 0x47, 0x1f, 0xac, 0xa4,
-  0x9f, 0x2e, 0x9e, 0x8e, 0xa3, 0xb2, 0x90, 0x2e, 0xee, 0xe6, 0xe8, 0x8c,
-  0x11, 0x92, 0x81, 0x66, 0x1d, 0x0c, 0xb7, 0x58, 0x5e, 0x71, 0xc4, 0x6c,
-  0x0b, 0xd0, 0x1e, 0xc3, 0xb4, 0x38, 0x31, 0x5e, 0x73, 0x22, 0x68, 0x95,
-  0x99, 0xaa, 0x1c, 0xfd, 0x41, 0x5f, 0x43, 0x67, 0xba, 0x33, 0x85, 0x4f,
-  0x03, 0x5b, 0xe9, 0xbf, 0x63, 0xf3, 0x8e, 0x21, 0x8f, 0x86, 0xf9, 0xe3,
-  0x0a, 0xf9, 0xef, 0xcd, 0x72, 0xc1, 0x88, 0x1b, 0x30, 0x5d, 0x96, 0x37,
-  0x06, 0x21, 0xd5, 0xb8, 0xe5, 0x58, 0x45, 0xb4, 0xb0, 0xaf, 0xca, 0x82,
-  0x3e, 0x1f, 0xec, 0x6c, 0xb4, 0x2a, 0x59, 0xca, 0x8f, 0x58, 0x25, 0x20,
-  0x7e, 0x92, 0x10, 0x3b, 0xa1, 0x83, 0x9d, 0x5e, 0x6a, 0xcc, 0xa5, 0x84,
-  0xe1, 0xe5, 0x72, 0xf6, 0x8c, 0x67, 0x19, 0x4f, 0x68, 0xe2, 0x5e, 0xf1,
-  0x12, 0xd5, 0x0f, 0x14, 0x71, 0xd0, 0xf6, 0xd0, 0x54, 0xd9, 0x30, 0xb7,
-  0x63, 0xa0, 0xfe, 0x38, 0x3a, 0x23, 0xc1, 0xc1, 0xad, 0x72, 0x10, 0x6e,
-  0x16, 0xad, 0xc3, 0x83, 0x40, 0xe3, 0xd8, 0xa8, 0xcb, 0x38, 0x9c, 0x39,
-  0x1d, 0xa7, 0xa1, 0x92, 0x44, 0x9c, 0x74, 0x46, 0x9f, 0xb0, 0xf2, 0x9e,
-  0xd3, 0x18, 0xd8, 0x03, 0x68, 0xe0, 0xa5, 0x7a, 0xc0, 0x58, 0x49, 0xb4,
-  0x2b, 0x72, 0xad, 0x55, 0xf4, 0x52, 0x7b, 0x6b, 0x60, 0xfc, 0x61, 0x5f,
-  0x3e, 0x9d, 0x0b, 0x94, 0xd1, 0x01, 0xe2, 0x4b, 0xcc, 0xa0, 0xf5, 0x38,
-  0xdd, 0x93, 0xec, 0x6e, 0x0e, 0xfc, 0x86, 0x26, 0x35, 0x61, 0xf0, 0xcc,
-  0xdd, 0x06, 0xd5, 0x9b, 0x72, 0x67, 0x6b, 0x70, 0x1f, 0xd2, 0x78, 0x51,
-  0x4c, 0x65, 0x65, 0x7a, 0xb4, 0xf6, 0x67, 0xcf, 0x7a, 0xd1, 0xd1, 0xbb,
-  0x3d, 0xfa, 0x7d, 0xf8, 0x0e, 0xb4, 0x9d, 0xbb, 0xe8, 0xaa, 0xe1, 0xf0,
-  0x78, 0xf3, 0xe2, 0x78, 0x18, 0x94, 0x47, 0x09, 0x36, 0xbd, 0x99, 0x39,
-  0x0e, 0xd3, 0x30, 0xcc, 0xd8, 0x98, 0xb2, 0x80, 0xfc, 0x06, 0xf0, 0x43,
-  0xe9, 0x65, 0x78, 0x28, 0x4c, 0xaf, 0x51, 0xdf, 0x7c, 0xd3, 0xc2, 0xb4,
-  0x29, 0x18, 0x5e, 0xb5, 0x30, 0x6b, 0x9c, 0xcf, 0x62, 0xda, 0x57, 0x32,
-  0xac, 0xc7, 0x50, 0xf3, 0x57, 0xb4, 0xfe, 0x13, 0x1f, 0x44, 0xad, 0x17,
-  0x57, 0x33, 0x49, 0xb7, 0x8c, 0xa6, 0x34, 0xe6, 0x69, 0x21, 0x41, 0x06,
-  0x08, 0xd5, 0xe0, 0x51, 0xea, 0xee, 0xd5, 0x74, 0x4d, 0x5a, 0xc2, 0xad,
-  0x8d, 0xc7, 0x63, 0xd3, 0xee, 0xe2, 0x42, 0x3c, 0xc6, 0x49, 0x4e, 0xd4,
-  0x00, 0x38, 0x1d, 0x8f, 0x3e, 0xa7, 0xc3, 0x96, 0x61, 0x35, 0xaf, 0xf0,
-  0xa6, 0x06, 0x2d, 0x37, 0x13, 0x5d, 0xb0, 0x44, 0x08, 0xde, 0x38, 0xa5,
-  0x32, 0x93, 0x7c, 0xc0, 0x88, 0x06, 0xb7, 0x96, 0x02, 0x78, 0xb9, 0xe4,
-  0xf2, 0x53, 0x30, 0x48, 0xb6, 0x85, 0x18, 0xd7, 0x8f, 0x4a, 0xb0, 0x84,
-  0xed, 0x27, 0xe6, 0xdc, 0x88, 0xd8, 0x88, 0xc0, 0x53, 0x01, 0x13, 0xff,
-  0x34, 0xbb, 0x62, 0x30, 0x5c, 0x09, 0xc0, 0x07, 0x6b, 0x30, 0x70, 0x8e,
-  0xba, 0xfa, 0x3e, 0x45, 0x28, 0x90, 0x52, 0x43, 0xd5, 0x9c, 0x21, 0x22,
-  0x13, 0x13, 0x8b, 0xae, 0x7f, 0xe2, 0xb2, 0x3d, 0x5c, 0x2c, 0x69, 0xd3,
-  0x23, 0x1f, 0x39, 0x23, 0xe3, 0xf8, 0x81, 0x6f, 0xad, 0xb7, 0xb0, 0x5c,
-  0x69, 0xa4, 0xb2, 0x20, 0xbb, 0xac, 0xa4, 0xb4, 0x26, 0x5e, 0x2e, 0xdd,
-  0x59, 0x9e, 0xd6, 0x2a, 0x1b, 0xf3, 0x32, 0xdc, 0x71, 0x4f, 0x59, 0x2d,
-  0xcb, 0xd5, 0x76, 0x8c, 0x1e, 0x5b, 0xc0, 0x47, 0x8e, 0xd1, 0x85, 0xc4,
-  0x02, 0x18, 0xfc, 0xc6, 0xc7, 0x9e, 0x1e, 0x37, 0x87, 0x47, 0xa0, 0x10,
-  0x56, 0x93, 0xb0, 0x52, 0x70, 0x95, 0x80, 0x95, 0x82, 0x83, 0x54, 0x52,
-  0xa3, 0x1b, 0x7f, 0xbe, 0x88, 0x53, 0xa2, 0xfd, 0x26, 0x2b, 0xd2, 0x8b,
-  0x35, 0x32, 0xac, 0x66, 0xd6, 0x16, 0xa4, 0x48, 0x54, 0x69, 0x19, 0xe5,
-  0x8f, 0xd2, 0x73, 0x23, 0x0a, 0x07, 0xd4, 0xad, 0x0e, 0xac, 0x56, 0x62,
-  0x1e, 0x8f, 0x5b, 0x09, 0x99, 0xe5, 0xfe, 0xfd, 0xfd, 0xfd, 0x68, 0x7d,
-  0x1f, 0xa4, 0xba, 0xaf, 0x1c, 0x77, 0xff, 0x9a, 0x33, 0x65, 0xa7, 0x0c,
-  0xf6, 0x70, 0xbd, 0xe4, 0xcc, 0x9d, 0x09, 0x26, 0x8b, 0xdd, 0xd1, 0xb5,
-  0xac, 0x47, 0xb4, 0xc5, 0x0f, 0x6c, 0x12, 0x13, 0xf4, 0xaf, 0x8a, 0x08,
-  0x26, 0xf6, 0x05, 0x64, 0xf0, 0x5a, 0x74, 0x81, 0xdd, 0x91, 0xd2, 0x4b,
-  0x6b, 0xfa, 0xfd, 0x72, 0x6e, 0x46, 0x3d, 0x67, 0x7d, 0x9e, 0xbb, 0x63,
-  0xa0, 0xca, 0x56, 0x2c, 0x87, 0xe7, 0x64, 0xef, 0x82, 0x11, 0xc7, 0x4b,
-  0x8d, 0x9a, 0x5d, 0x11, 0x6f, 0xe7, 0xce, 0x26, 0x8e, 0x41, 0x1c, 0x20,
-  0x47, 0x9a, 0xaa, 0x02, 0xc1, 0x97, 0xb3, 0x4d, 0x45, 0x10, 0x96, 0x10,
-  0x1f, 0x59, 0xc2, 0x3a, 0xcb, 0x90, 0x15, 0xed, 0x3b, 0x3d, 0x49, 0x12,
-  0x0b, 0xf9, 0xcf, 0xa2, 0x79, 0x4e, 0x1a, 0x6a, 0x58, 0xe5, 0xf5, 0x9f,
-  0x24, 0xca, 0x78, 0x53, 0x7b, 0xfd, 0xf9, 0x9f, 0xda, 0x26, 0x44, 0x85,
-  0xc9, 0xf6, 0xf0, 0x63, 0x76, 0xcb, 0x35, 0xfd, 0xd1, 0xb5, 0xe0, 0x7b,
-  0x91, 0x7a, 0x24, 0xd3, 0x30, 0x05, 0xb0, 0xb9, 0x9c, 0x22, 0xda, 0xf4,
-  0x09, 0xf0, 0xce, 0x98, 0x00, 0x4d, 0xf1, 0xb8, 0x8b, 0x1b, 0x22, 0x90,
-  0x49, 0x3d, 0x5e, 0xf0, 0x9c, 0x70, 0xe1, 0x27, 0xf1, 0xdf, 0x38, 0x54,
-  0xa4, 0x3c, 0x59, 0x4c, 0x1f, 0x9c, 0x35, 0x41, 0xdb, 0x5e, 0x25, 0x8a,
-  0x86, 0x46, 0xa9, 0x30, 0x00, 0xdb, 0x06, 0x58, 0x54, 0x5b, 0x41, 0x47,
-  0x31, 0x0b, 0x8a, 0x97, 0x8d, 0xec, 0x80, 0x58, 0x7b, 0xae, 0x01, 0x7a,
-  0x37, 0x77, 0x28, 0x90, 0xc8, 0x1c, 0xea, 0x86, 0xa2, 0x92, 0x6b, 0x76,
-  0xd9, 0x63, 0x89, 0xcf, 0x53, 0x5e, 0x7c, 0x08, 0x4f, 0x09, 0xa9, 0xe4,
-  0xbc, 0x86, 0xb1, 0xa2, 0x91, 0xf4, 0xd3, 0xb9, 0x00, 0x5b, 0xd0, 0x4f,
-  0xb1, 0xec, 0x1b, 0x82, 0x49, 0x1d, 0x6a, 0x98, 0xd9, 0x88, 0xc1, 0x38,
-  0x6a, 0x62, 0xab, 0xe0, 0x94, 0x54, 0x81, 0x4a, 0x14, 0x26, 0xd7, 0x24,
-  0x35, 0x20, 0xad, 0xb4, 0x08, 0xba, 0xde, 0x03, 0xb6, 0xaf, 0x90, 0x24,
-  0x17, 0x1c, 0x31, 0x22, 0x81, 0x0b, 0x71, 0x5e, 0x6e, 0x02, 0x7c, 0x44,
-  0x52, 0xfb, 0xc6, 0x8c, 0x97, 0xad, 0x35, 0x2a, 0xce, 0xdf, 0xee, 0xef,
-  0x3c, 0xfb, 0xfc, 0xf3, 0xf6, 0x60, 0xdd, 0x44, 0x93, 0xdc, 0x02, 0xe0,
-  0x77, 0x46, 0xf4, 0x12, 0x5c, 0x01, 0x71, 0x6b, 0x72, 0xc5, 0x24, 0x4e,
-  0xba, 0xf6, 0x0a, 0x6a, 0x77, 0xdc, 0xf4, 0x01, 0xf0, 0x80, 0xba, 0x62,
-  0xc3, 0x93, 0xcc, 0x3b, 0xab, 0xdb, 0xa3, 0x75, 0x5d, 0x1c, 0x3a, 0x83,
-  0xa2, 0x9d, 0x71, 0x1c, 0xc0, 0x9c, 0x53, 0x82, 0xd3, 0x2b, 0x80, 0x8a,
-  0xd4, 0x9a, 0xfb, 0x0b, 0x6b, 0xc8, 0x57, 0x49, 0xd9, 0x4c, 0x63, 0x55,
-  0x98, 0xc0, 0x27, 0x1a, 0x6f, 0xa3, 0x41, 0x49, 0xc2, 0x7d, 0xad, 0xfc,
-  0xc1, 0xa9, 0xf6, 0x56, 0xfa, 0x8a, 0x06, 0x03, 0xc6, 0xfd, 0xda, 0x41,
-  0xae, 0x38, 0x2c, 0xde, 0x2f, 0x5b, 0xec, 0x03, 0x85, 0x8f, 0xb9, 0x13,
-  0x24, 0xb9, 0xb2, 0x8c, 0xad, 0x8a, 0x1f, 0x0c, 0xeb, 0x8c, 0xd5, 0xe1,
-  0x90, 0xda, 0x5d, 0x25, 0x16, 0xa2, 0x98, 0x69, 0x1b, 0x96, 0xd5, 0x6b,
-  0x6d, 0x34, 0x16, 0x44, 0x64, 0x01, 0x4d, 0xe1, 0xf1, 0xb4, 0xad, 0x84,
-  0x69, 0x26, 0x1c, 0x34, 0x97, 0xdc, 0x37, 0xce, 0x2f, 0xde, 0x0d, 0xd6,
-  0xa9, 0x61, 0x15, 0x38, 0xbc, 0x8f, 0x67, 0x28, 0x2e, 0xe7, 0x34, 0x03,
-  0x04, 0x0e, 0xf8, 0x94, 0x44, 0x0d, 0xa6, 0x09, 0x6d, 0xed, 0xe2, 0xfd,
-  0xe9, 0xf2, 0x33, 0xf5, 0xbd, 0xe7, 0x77, 0xba, 0x66, 0x16, 0x0c, 0xc3,
-  0x00, 0x40, 0x91, 0x32, 0x1c, 0x87, 0x39, 0x29, 0x3e, 0x79, 0xee, 0x69,
-  0xb2, 0x02, 0x2e, 0x8e, 0xdf, 0x04, 0x9e, 0xd9, 0x6e, 0x1b, 0x68, 0x21,
-  0x8e, 0x09, 0x72, 0x46, 0xfa, 0x6f, 0xdd, 0x88, 0xdf, 0x7c, 0x59, 0x69,
-  0xf6, 0xee, 0x6e, 0x30, 0x7b, 0xb0, 0xef, 0x8a, 0x4a, 0xad, 0x4d, 0x0f,
-  0x22, 0xa0, 0xd9, 0x0b, 0x46, 0x3b, 0xdd, 0xc2, 0xd1, 0x99, 0x87, 0x19,
-  0x09, 0x2b, 0x33, 0xf9, 0x42, 0x54, 0x74, 0x81, 0x34, 0xd3, 0xf7, 0x34,
-  0x05, 0xc3, 0x93, 0xa1, 0x58, 0x8e, 0xbb, 0xc8, 0x51, 0x49, 0xec, 0xac,
-  0x5f, 0x65, 0xaa, 0x56, 0x8e, 0xe8, 0x76, 0x21, 0x8a, 0x53, 0x92, 0x6b,
-  0xea, 0xb4, 0x45, 0x99, 0x2f, 0xc7, 0x65, 0xd3, 0xd3, 0xeb, 0x4b, 0x4f,
-  0x0a, 0x66, 0x77, 0xe9, 0xb5, 0x3c, 0x71, 0x20, 0x54, 0xb9, 0x03, 0xee,
-  0x4e, 0x1e, 0xb1, 0xe1, 0x79, 0xd7, 0x41, 0x62, 0x00, 0xe3, 0xdd, 0xed,
-  0x89, 0x40, 0xad, 0x50, 0x1a, 0x1e, 0xe8, 0xe1, 0xe9, 0x1d, 0xe8, 0xdc,
-  0x25, 0xa3, 0x37, 0x5f, 0x72, 0x98, 0xe3, 0x3d, 0x00, 0x7e, 0x05, 0x17,
-  0x9c, 0xa9, 0x72, 0x93, 0xff, 0xec, 0x44, 0x1c, 0xe5, 0xd2, 0xb2, 0x01,
-  0xc4, 0xd7, 0x9f, 0x6c, 0x3a, 0x00, 0xb0, 0x09, 0x9a, 0xbd, 0xcc, 0xb2,
-  0x95, 0xad, 0xfe, 0x18, 0x16, 0xbe, 0x0c, 0x92, 0x97, 0x24, 0x73, 0xc8,
-  0xd3, 0xa7, 0xd0, 0x24, 0x6f, 0xea, 0x5c, 0x8f, 0xb0, 0x9c, 0xcf, 0x36,
-  0x10, 0x87, 0xd1, 0x83, 0xab, 0x61, 0x62, 0x09, 0xdd, 0x6f, 0x7a, 0x52,
-  0x18, 0x98, 0x95, 0xdd, 0x8f, 0x58, 0x22, 0x7e, 0xed, 0xcd, 0x97, 0x40,
-  0xa8, 0xe3, 0x5f, 0xff, 0xe4, 0x9a, 0xe1, 0x7f, 0x88, 0xd2, 0x89, 0x53,
-  0xac, 0x9c, 0x11, 0x8b, 0x2b, 0x97, 0xcb, 0x1c, 0xa2, 0x48, 0x22, 0xc7,
-  0xb6, 0x10, 0x9d, 0x58, 0x91, 0xaa, 0x95, 0xdd, 0xbc, 0xdb, 0x3b, 0x79,
-  0xbf, 0x77, 0x3c, 0x78, 0x4c, 0xd6, 0x0d, 0xad, 0xb2, 0x2e, 0xdc, 0x0d,
-  0x96, 0xd1, 0x8a, 0x70, 0xc9, 0x67, 0x56, 0xb3, 0x14, 0xe4, 0xb6, 0x7c,
-  0xb4, 0x44, 0x52, 0x34, 0x34, 0x1c, 0x16, 0xa6, 0x34, 0x15, 0x9a, 0x0d,
-  0xdf, 0xca, 0x50, 0x56, 0x5c, 0x96, 0xb6, 0x60, 0x43, 0x69, 0xeb, 0x2a,
-  0x67, 0xb4, 0xc4, 0xb2, 0xb3, 0x33, 0x35, 0x8f, 0xa5, 0xa8, 0x9c, 0x99,
-  0x45, 0xa6, 0x29, 0x57, 0x71, 0x9e, 0x32, 0x50, 0xe8, 0xb1, 0x96, 0x9f,
-  0xed, 0x7e, 0xd9, 0x95, 0xf3, 0xd3, 0x7d, 0xdd, 0x65, 0x58, 0x24, 0x7a,
-  0x67, 0xdc, 0x92, 0xfd, 0x53, 0xb8, 0xc8, 0x93, 0xa8, 0x2b, 0x74, 0xd4,
-  0xb5, 0x21, 0xe8, 0xe2, 0xc9, 0xb0, 0x10, 0x77, 0x32, 0xd7, 0x70, 0x5e,
-  0x2e, 0xbf, 0x9a, 0xc4, 0xf3, 0x16, 0xaf, 0x58, 0x35, 0xed, 0x5a, 0x4a,
-  0xba, 0xe1, 0x1e, 0x29, 0xb3, 0xc6, 0xfc, 0x45, 0x81, 0xc9, 0x99, 0xb9,
-  0x70, 0x18, 0x87, 0x40, 0x8c, 0xb6, 0x45, 0xad, 0xc8, 0x3d, 0x13, 0xd4,
-  0x6c, 0x8a, 0x74, 0x50, 0x1c, 0x54, 0x44, 0xd7, 0x79, 0xca, 0x11, 0xc4,
-  0xb0, 0x30, 0xd3, 0xb7, 0x57, 0x57, 0x9a, 0x21, 0xce, 0x0b, 0x40, 0x8b,
-  0x48, 0xd3, 0x6f, 0xe0, 0x9c, 0x6a, 0x15, 0x68, 0x22, 0xf1, 0xda, 0x98,
-  0x82, 0xbd, 0xbe, 0x22, 0xa9, 0xe8, 0x6a, 0x9a, 0x8d, 0xb2, 0xcb, 0xcb,
-  0x47, 0xc8, 0x46, 0x52, 0xe7, 0xd0, 0x96, 0x70, 0xf5, 0x0e, 0xe7, 0xc1,
-  0xf0, 0x7b, 0x23, 0xad, 0x89, 0xcc, 0xa5, 0x3b, 0x06, 0x62, 0x49, 0x05,
-  0xae, 0x58, 0xc3, 0x22, 0x15, 0xc6, 0x2c, 0xf7, 0x5c, 0xb6, 0x8e, 0x85,
-  0x4d, 0xa3, 0x58, 0xae, 0xe8, 0xfe, 0x1a, 0x8c, 0xe9, 0xb1, 0x82, 0x8a,
-  0xe8, 0xef, 0xff, 0xf8, 0xe9, 0xe7, 0x16, 0xdc, 0x2d, 0x76, 0xa0, 0x68,
-  0x46, 0x02, 0x87, 0x5d, 0x6b, 0xb6, 0x15, 0x3c, 0x15, 0x6c, 0x12, 0xf3,
-  0x70, 0x9d, 0x5a, 0xa0, 0x69, 0x10, 0xe4, 0x7c, 0x34, 0xef, 0x1b, 0x36,
-  0x0f, 0x5a, 0x87, 0x31, 0x82, 0x1c, 0x4a, 0x0b, 0x20, 0x99, 0x26, 0x57,
-  0x31, 0x80, 0x35, 0xfc, 0xe5, 0xeb, 0xf2, 0x8c, 0x85, 0xc5, 0x37, 0x01,
-  0x00, 0x1d, 0xe2, 0x40, 0x28, 0x87, 0xc1, 0x5e, 0x7d, 0x7e, 0xe4, 0x5c,
-  0x47, 0xc1, 0x46, 0x7c, 0xcd, 0x1b, 0xd1, 0x58, 0x35, 0x87, 0x98, 0xd9,
-  0xab, 0xc3, 0xcd, 0x86, 0xa8, 0x11, 0xc8, 0x5c, 0x11, 0x03, 0x42, 0x05,
-  0xc3, 0xac, 0x21, 0x03, 0xb5, 0x61, 0xcb, 0xf9, 0x02, 0x00, 0x0d, 0xbc,
-  0x37, 0x9c, 0x67, 0x97, 0xa2, 0x84, 0xeb, 0x01, 0xd1, 0x33, 0x5f, 0x1f,
-  0x3a, 0x1c, 0xc0, 0xc6, 0xd9, 0xa8, 0x54, 0x31, 0xac, 0x22, 0x06, 0x02,
-  0x7b, 0xd4, 0x95, 0xa6, 0xbc, 0x73, 0x85, 0x65, 0xc4, 0x4b, 0xd0, 0xa6,
-  0xd5, 0x28, 0x74, 0x94, 0xe8, 0x89, 0x86, 0x1f, 0xe1, 0x17, 0xf2, 0xd8,
-  0x90, 0x1d, 0xbb, 0xff, 0xd1, 0xf5, 0x68, 0x3d, 0xad, 0x71, 0x8f, 0x2e,
-  0xa5, 0xaf, 0x09, 0x92, 0xd0, 0x3f, 0xea, 0xf9, 0xc1, 0xfa, 0x1e, 0x6d,
-  0x2a, 0xa3, 0x16, 0xc8, 0xbf, 0x55, 0xe3, 0xf8, 0xe6, 0x70, 0xef, 0xc0,
-  0xe6, 0xfb, 0x6f, 0x81, 0x2d, 0x00, 0x62, 0x57, 0xe8, 0xa2, 0x32, 0x67,
-  0xe5, 0x28, 0x11, 0xa0, 0xc3, 0xa5, 0xb9, 0xac, 0xb0, 0x69, 0x66, 0x3e,
-  0x69, 0x89, 0x6d, 0x23, 0x11, 0x90, 0x31, 0xd2, 0xad, 0xb6, 0xb6, 0x2b,
-  0xfc, 0x23, 0x32, 0xb0, 0x2b, 0xe7, 0x65, 0x4e, 0x2a, 0xe1, 0x53, 0x81,
-  0x2b, 0xa7, 0xb5, 0x80, 0x57, 0x50, 0xf1, 0x32, 0x20, 0xf5, 0x6b, 0xe4,
-  0xff, 0x4d, 0x17, 0x8d, 0xdc, 0xaf, 0xf8, 0x8a, 0xf3, 0x57, 0xa7, 0x8b,
-  0xe0, 0x59, 0x9f, 0x2b, 0x18, 0xbd, 0x96, 0x9f, 0xab, 0x2e, 0xa1, 0x43,
-  0xc1, 0x2d, 0xd3, 0x87, 0x9d, 0xd0, 0xe3, 0x72, 0x66, 0x4a, 0x59, 0x06,
-  0x92, 0x55, 0x88, 0x5f, 0x5d, 0x25, 0x28, 0x25, 0xcf, 0xac, 0xb5, 0xbe,
-  0x0e, 0x56, 0x2a, 0x9b, 0x78, 0xb5, 0xc7, 0x37, 0x16, 0x50, 0x34, 0xcd,
-  0xe3, 0x0c, 0x13, 0x56, 0x34, 0x39, 0xcf, 0x6a, 0x6a, 0x4d, 0x1a, 0x05,
-  0x8f, 0x58, 0x30, 0x2b, 0x4a, 0x4e, 0xab, 0x75, 0x23, 0xe3, 0xf7, 0xae,
-  0xe3, 0xc2, 0x3b, 0x23, 0x04, 0x65, 0xa3, 0x08, 0x23, 0x32, 0xcc, 0xdf,
-  0xda, 0xac, 0x14, 0x63, 0xb9, 0x03, 0x16, 0x17, 0xd2, 0x13, 0xc1, 0x9d,
-  0x51, 0x16, 0xf8, 0x05, 0x4d, 0x5a, 0x74, 0xbd, 0x79, 0x24, 0xc3, 0x65,
-  0xb3, 0xaa, 0x41, 0xed, 0xb8, 0x3a, 0x27, 0x6f, 0x36, 0x4f, 0xaa, 0xa6,
-  0x18, 0x9e, 0xa3, 0xa5, 0x49, 0x22, 0x29, 0x91, 0xae, 0xa0, 0xf1, 0x4d,
-  0xe3, 0x66, 0x64, 0xc1, 0xb1, 0x5c, 0xe2, 0x8e, 0x88, 0xe7, 0xe1, 0x38,
-  0x5d, 0x36, 0xfc, 0x24, 0x93, 0x85, 0x77, 0xf4, 0x85, 0xd4, 0x3b, 0x56,
-  0xe7, 0xe3, 0xf1, 0x2a, 0x9f, 0xb3, 0xab, 0x8e, 0xe2, 0x72, 0x92, 0x8d,
-  0xfb, 0xc3, 0x58, 0x27, 0x29, 0xf9, 0x49, 0xce, 0x7e, 0x15, 0x84, 0x93,
-  0xb1, 0x38, 0x7c, 0xd7, 0xe4, 0xf1, 0x5a, 0x00, 0x0a, 0xe7, 0x81, 0x8b,
-  0x83, 0xb0, 0xd5, 0x4d, 0x72, 0x29, 0x75, 0xd6, 0xba, 0x64, 0x74, 0x69,
-  0x5c, 0xa5, 0xb7, 0x42, 0x2d, 0x36, 0xb2, 0x96, 0xfc, 0x3d, 0x37, 0x06,
-  0x53, 0x19, 0x7c, 0xd0, 0x81, 0x40, 0x62, 0x44, 0x05, 0xca, 0xbc, 0x18,
-  0xbc, 0xc0, 0x38, 0x9b, 0xf2, 0xcd, 0x17, 0xb3, 0xc8, 0xb0, 0x4b, 0x84,
-  0x5d, 0x77, 0xfe, 0x7d, 0x43, 0x22, 0xe0, 0x6e, 0xa7, 0x3d, 0x44, 0xdf,
-  0x43, 0x3c, 0x15, 0x0e, 0xc5, 0x19, 0x51, 0x33, 0xb6, 0xcb, 0x38, 0xb2,
-  0x44, 0x7d, 0x9b, 0x3a, 0x5e, 0x8b, 0xc1, 0x6f, 0x1d, 0xb5, 0x65, 0x98,
-  0x2c, 0x10, 0x6b, 0x39, 0xe9, 0x67, 0x97, 0x7d, 0xd4, 0x1b, 0xe5, 0x42,
-  0x8f, 0xac, 0xe6, 0x05, 0x04, 0x8d, 0x64, 0x65, 0xa9, 0xf0, 0xaa, 0xc0,
-  0x13, 0xd4, 0x49, 0xdb, 0x05, 0xaa, 0x01, 0xfd, 0xb9, 0xb3, 0x05, 0xea,
-  0xc8, 0x74, 0x71, 0x76, 0xd9, 0x7e, 0xc4, 0x6d, 0xf0, 0xeb, 0x0e, 0x69,
-  0x8f, 0x33, 0x42, 0xe3, 0x3c, 0x4f, 0xe9, 0x38, 0x36, 0x00, 0xb0, 0x11,
-  0x63, 0xd9, 0x93, 0x3b, 0x56, 0x42, 0xd6, 0xd8, 0xd9, 0x34, 0x13, 0x17,
-  0x23, 0x7c, 0x44, 0xcb, 0x05, 0xc4, 0x47, 0x4e, 0x60, 0x6f, 0x93, 0x98,
-  0xab, 0x39, 0x7c, 0xd5, 0xca, 0x9f, 0x35, 0xf7, 0x49, 0x90, 0x23, 0x1d,
-  0x06, 0x1d, 0x14, 0x4f, 0x64, 0xe5, 0x43, 0x05, 0x73, 0xd7, 0x63, 0x55,
-  0x9c, 0x86, 0x43, 0xc8, 0xef, 0xc7, 0xa6, 0x18, 0x79, 0xdb, 0xc2, 0xa7,
-  0xf8, 0x15, 0x63, 0x2c, 0x81, 0x0c, 0xce, 0xf5, 0xde, 0x17, 0xcb, 0xd1,
-  0x6c, 0xf2, 0x22, 0x7a, 0x4d, 0xff, 0x7c, 0xd1, 0xe2, 0xd4, 0x67, 0x88,
-  0x3a, 0x15, 0x14, 0x55, 0x6a, 0xc2, 0xef, 0xcf, 0x76, 0xf8, 0xa4, 0xdc,
-  0x53, 0x8b, 0xe3, 0x14, 0xb8, 0x3f, 0x93, 0xf4, 0x2a, 0x2d, 0x0b, 0x97,
-  0x2d, 0x89, 0x57, 0x56, 0x97, 0x79, 0xc3, 0x9a, 0x6d, 0xef, 0x7c, 0x1e,
-  0x8d, 0xd2, 0x32, 0x7a, 0x77, 0xf0, 0x42, 0xca, 0x49, 0x16, 0xcb, 0x99,
-  0x2f, 0x4d, 0x0c, 0x44, 0x69, 0x1e, 0x20, 0xc9, 0xb4, 0x34, 0xc6, 0x69,
-  0xa3, 0x0c, 0xd3, 0x4d, 0xf2, 0xd0, 0xab, 0x54, 0x11, 0xb9, 0x34, 0x4f,
-  0x71, 0x60, 0xd9, 0x77, 0xa4, 0x28, 0xb5, 0xed, 0x2d, 0x9a, 0xa0, 0x45,
-  0x1f, 0xa0, 0xf9, 0x53, 0xff, 0x45, 0x64, 0x55, 0xe6, 0x2a, 0xb2, 0xa9,
-  0x55, 0xff, 0x40, 0x6a, 0xe7, 0xfe, 0x19, 0x76, 0x75, 0x58, 0x45, 0xce,
-  0x79, 0x0c, 0x28, 0xf9, 0xb3, 0xaa, 0x19, 0x57, 0x6a, 0xcb, 0x1a, 0xf6,
-  0x54, 0x9f, 0x94, 0xb4, 0xab, 0x55, 0x75, 0x42, 0x8f, 0xf0, 0x68, 0xc5,
-  0x1a, 0x77, 0x8c, 0xc7, 0x5d, 0xd2, 0x77, 0x10, 0x58, 0xc6, 0x47, 0x23,
-  0x1d, 0x73, 0x49, 0xe7, 0x06, 0x1e, 0xef, 0x52, 0xb0, 0xb0, 0x31, 0x01,
-  0x2b, 0x63, 0x9b, 0x2f, 0x05, 0x11, 0x7f, 0x6f, 0xc1, 0x06, 0xa5, 0x68,
-  0x7b, 0x70, 0xdf, 0x0b, 0x0b, 0xe3, 0x69, 0xfd, 0x04, 0x2e, 0x7f, 0xd7,
-  0x70, 0x7b, 0x21, 0x6e, 0xa4, 0x36, 0x20, 0x6e, 0x5a, 0x2c, 0x79, 0x53,
-  0x8e, 0xa8, 0xca, 0x85, 0x3f, 0xef, 0x10, 0x9f, 0xbb, 0x8a, 0x01, 0xdd,
-  0x1f, 0x50, 0x5e, 0x4a, 0x87, 0x41, 0xe1, 0xe9, 0x56, 0xcc, 0x5b, 0xbe,
-  0x74, 0x50, 0x00, 0x76, 0x3f, 0xab, 0xd0, 0xae, 0xd1, 0xc8, 0x46, 0x6e,
-  0xc1, 0x13, 0xcd, 0xe2, 0x7d, 0xdc, 0x0e, 0x76, 0x1c, 0x07, 0x5a, 0x14,
-  0x6a, 0x5d, 0x83, 0x3e, 0x5f, 0x8a, 0x3d, 0x96, 0xc7, 0xdc, 0x9d, 0xe8,
-  0xe3, 0xb0, 0xd1, 0x68, 0x33, 0x25, 0xa1, 0xb0, 0xaa, 0xd5, 0x1c, 0xa0,
-  0x35, 0x18, 0x84, 0xc7, 0x09, 0x4c, 0xfe, 0x92, 0x39, 0x63, 0x6b, 0x1a,
-  0xfb, 0x99, 0x00, 0x51, 0x56, 0x0b, 0xb5, 0x5b, 0xfc, 0x86, 0x97, 0xa9,
-  0x5d, 0x2b, 0x03, 0x67, 0x66, 0x60, 0x8f, 0x6a, 0xcb, 0xd4, 0xac, 0xb7,
-  0x48, 0xa6, 0x11, 0xc6, 0x1b, 0xd0, 0x5e, 0x80, 0xe0, 0x05, 0xd8, 0x74,
-  0x6f, 0x6e, 0x3a, 0xbd, 0x16, 0xb0, 0xe3, 0x4c, 0xa4, 0x46, 0xb5, 0xa0,
-  0x9b, 0xa4, 0x61, 0x63, 0x90, 0xf3, 0x15, 0xce, 0x8c, 0x44, 0xae, 0xad,
-  0xdd, 0xed, 0x28, 0xa8, 0x3d, 0x35, 0xd7, 0x3a, 0x24, 0x28, 0xc4, 0xf4,
-  0xdb, 0x25, 0x0c, 0x1c, 0xa9, 0x90, 0xd6, 0x46, 0x2f, 0x8c, 0xd1, 0xbe,
-  0xf9, 0xf6, 0xe8, 0xf8, 0x70, 0x23, 0x7a, 0x9b, 0x00, 0x7f, 0xa5, 0x46,
-  0x36, 0x7c, 0x78, 0x7f, 0x27, 0x9f, 0x18, 0xf5, 0xab, 0xea, 0xda, 0x96,
-  0xc1, 0xe7, 0x42, 0x07, 0x20, 0x6a, 0xcb, 0x91, 0xc0, 0x2c, 0x24, 0xcb,
-  0x2c, 0x83, 0x99, 0xd4, 0xa0, 0xf9, 0x2d, 0xfe, 0xb2, 0x95, 0xfc, 0x60,
-  0xce, 0xf3, 0x95, 0x95, 0x7c, 0x6d, 0x02, 0xa6, 0x21, 0x0b, 0x5d, 0xe6,
-  0x81, 0x47, 0x6a, 0xf4, 0xb3, 0x78, 0x56, 0x29, 0x3c, 0x52, 0xb4, 0x8c,
-  0x4e, 0x2a, 0x29, 0xa6, 0x7f, 0x93, 0xf8, 0x79, 0xac, 0xda, 0x2c, 0x9b,
-  0x38, 0xa8, 0x50, 0xa9, 0x80, 0xc4, 0xf3, 0x0d, 0xd6, 0xee, 0x2f, 0xb4,
-  0x76, 0x7f, 0x59, 0xce, 0x6f, 0xfa, 0x5a, 0x51, 0x53, 0x21, 0x4e, 0x8a,
-  0xf6, 0xb3, 0xf7, 0xbd, 0x0b, 0x8a, 0x41, 0x2c, 0xb3, 0x18, 0x55, 0x9b,
-  0xf5, 0x24, 0x63, 0x0d, 0x94, 0x95, 0x81, 0xaf, 0x2e, 0x18, 0xe5, 0xe5,
-  0x8a, 0x94, 0xa3, 0x2c, 0x89, 0x56, 0xf2, 0x89, 0x68, 0x93, 0x1d, 0x2b,
-  0xf0, 0x69, 0x0d, 0x77, 0x06, 0x21, 0x4c, 0x66, 0x5d, 0xdf, 0xe5, 0xba,
-  0x7a, 0x22, 0xa8, 0x5d, 0xbb, 0xd2, 0x8b, 0x10, 0x6d, 0x35, 0xdc, 0x85,
-  0xa5, 0x1e, 0x5e, 0x6f, 0xba, 0xfa, 0x7d, 0xe9, 0xd0, 0x42, 0x50, 0x82,
-  0x99, 0x94, 0x6a, 0xd7, 0xac, 0xa4, 0x37, 0x1a, 0x54, 0x7c, 0x61, 0x18,
-  0x4a, 0x36, 0xc2, 0xa8, 0x3e, 0x38, 0x83, 0x91, 0x67, 0x69, 0xa1, 0xdb,
-  0x20, 0x9c, 0xf1, 0x34, 0x93, 0x2a, 0x5a, 0x77, 0xa1, 0x0b, 0xf5, 0x3f,
-  0x71, 0xe9, 0xf3, 0x55, 0xa6, 0x94, 0xd8, 0x6f, 0x09, 0xea, 0x77, 0xf5,
-  0x04, 0x83, 0x83, 0x22, 0x79, 0x6f, 0x40, 0x5a, 0x38, 0xf5, 0x6d, 0xcc,
-  0x83, 0xba, 0xf6, 0x3e, 0xb3, 0xaa, 0x15, 0xa6, 0xac, 0x1f, 0x28, 0xe9,
-  0x8e, 0x53, 0x1f, 0x10, 0x59, 0x65, 0x45, 0x2a, 0x92, 0x85, 0xb3, 0x32,
-  0x06, 0x32, 0x7a, 0x4b, 0x5d, 0x51, 0x43, 0x71, 0x00, 0x97, 0x72, 0xaf,
-  0x38, 0xaf, 0x18, 0x87, 0x49, 0xfb, 0xf9, 0xde, 0x80, 0xaf, 0x17, 0x6d,
-  0x71, 0x6c, 0x96, 0x1c, 0x16, 0x4a, 0x37, 0x81, 0xe5, 0x54, 0x75, 0x00,
-  0x87, 0x99, 0xaf, 0xbc, 0xb2, 0x63, 0xad, 0x75, 0x9a, 0x41, 0x2c, 0x21,
-  0xa4, 0x82, 0x58, 0xde, 0x3c, 0x48, 0xd6, 0x1e, 0xd1, 0x57, 0xe3, 0x11,
-  0x0e, 0x92, 0x90, 0x60, 0xfb, 0xa4, 0xa5, 0x18, 0xbd, 0x20, 0xb1, 0xd3,
-  0x26, 0x59, 0x40, 0x85, 0x2b, 0x4d, 0xd9, 0x92, 0x69, 0x28, 0x19, 0x99,
-  0x58, 0xb7, 0x98, 0x9d, 0x75, 0x75, 0x5a, 0x7d, 0x30, 0xc7, 0xb0, 0xaa,
-  0x38, 0xe6, 0xc9, 0x91, 0xba, 0x52, 0x7e, 0x4c, 0x61, 0x0d, 0x87, 0xd5,
-  0x93, 0x45, 0x5d, 0xa3, 0x30, 0x10, 0x32, 0x5c, 0xe7, 0x15, 0x71, 0x90,
-  0x81, 0x94, 0xea, 0x4d, 0x63, 0xa8, 0x5a, 0xc4, 0x62, 0x38, 0xee, 0x70,
-  0xab, 0x81, 0xa3, 0xe1, 0x13, 0x91, 0x33, 0x00, 0x47, 0xae, 0x40, 0xe1,
-  0x6e, 0x8b, 0xd1, 0x59, 0x79, 0x3f, 0xf2, 0x4a, 0xaf, 0xe3, 0xfb, 0xfb,
-  0x41, 0x91, 0x48, 0x01, 0xbe, 0xa2, 0x98, 0x22, 0x87, 0xb5, 0x59, 0x70,
-  0x90, 0x71, 0x0c, 0x92, 0x45, 0x3c, 0x45, 0x38, 0x26, 0x33, 0xa8, 0x55,
-  0x85, 0xdc, 0x2a, 0x06, 0xc1, 0x44, 0xc3, 0xf1, 0xf0, 0x46, 0x5c, 0x2d,
-  0xb7, 0xc6, 0x70, 0x5a, 0x85, 0x61, 0xb9, 0x73, 0x94, 0x18, 0x11, 0xf1,
-  0xa4, 0xe1, 0xf1, 0xd2, 0xc8, 0x33, 0xf8, 0x9e, 0x78, 0x27, 0xdd, 0x28,
-  0x58, 0x35, 0x19, 0xa9, 0x85, 0xdb, 0x75, 0x61, 0x0e, 0xba, 0x94, 0x1e,
-  0xbe, 0x4d, 0x27, 0xcb, 0x86, 0x66, 0x5c, 0x7f, 0xdd, 0xca, 0x45, 0x07,
-  0xe9, 0x23, 0x60, 0x45, 0xfc, 0x44, 0xe6, 0x6e, 0x79, 0xe0, 0x2d, 0xa3,
-  0xb2, 0x68, 0xe3, 0x76, 0xb8, 0x54, 0x00, 0x12, 0x5c, 0x3b, 0x17, 0xfb,
-  0x67, 0x1f, 0xbe, 0x3d, 0x3c, 0x3c, 0x3b, 0x3a, 0xe0, 0xfb, 0x00, 0x17,
-  0x90, 0xfb, 0xe8, 0xe4, 0xe2, 0xbb, 0x63, 0x0f, 0x42, 0xa2, 0xaa, 0x43,
-  0xfd, 0x84, 0xb1, 0x21, 0x99, 0x9b, 0x3b, 0x4e, 0xe7, 0xcb, 0xfb, 0x1e,
-  0xca, 0x96, 0x91, 0xca, 0xb8, 0x77, 0xf4, 0x03, 0x09, 0x33, 0x67, 0xfd,
-  0xf7, 0x3f, 0x34, 0x32, 0xc0, 0x82, 0xa8, 0x41, 0xba, 0xcf, 0xea, 0x07,
-  0xdf, 0x05, 0x11, 0x2a, 0xe6, 0x66, 0xe6, 0x37, 0xb1, 0x4a, 0x73, 0x4f,
-  0x63, 0x69, 0xaf, 0x8a, 0x9b, 0xae, 0xea, 0x33, 0xa1, 0x20, 0xe0, 0x4c,
-  0x52, 0x20, 0x83, 0x96, 0x7b, 0x30, 0x9e, 0x71, 0xd6, 0xd4, 0x20, 0xa4,
-  0xb0, 0x87, 0xe8, 0x35, 0xfd, 0xd3, 0x96, 0x95, 0xba, 0x39, 0x1c, 0x7e,
-  0xb3, 0x11, 0x9d, 0x05, 0xa8, 0x1d, 0xce, 0x7f, 0x36, 0xb0, 0x30, 0x2a,
-  0x35, 0x3f, 0x68, 0x32, 0x95, 0x7a, 0x2a, 0xf3, 0xb4, 0x21, 0x02, 0x5a,
-  0x0b, 0xbe, 0x4a, 0x35, 0x6c, 0x82, 0x49, 0xbb, 0x0b, 0xf4, 0x57, 0x4c,
-  0xc7, 0xa5, 0x4e, 0x9f, 0x04, 0x7e, 0x68, 0xce, 0x91, 0x9f, 0x1d, 0x38,
-  0x54, 0x1c, 0x15, 0x66, 0xb8, 0x15, 0x4c, 0xb0, 0x06, 0x32, 0xd2, 0x02,
-  0xc8, 0x2f, 0x10, 0x11, 0x21, 0xe0, 0x49, 0x4a, 0x74, 0x7f, 0x70, 0x78,
-  0xde, 0x13, 0x54, 0x88, 0x10, 0x11, 0xc2, 0x23, 0x22, 0x0d, 0xac, 0xe6,
-  0x78, 0xd9, 0x6a, 0xfa, 0x02, 0x9c, 0xcb, 0xbf, 0x0f, 0x0c, 0xe2, 0x26,
-  0x1f, 0x45, 0xaf, 0x11, 0x91, 0xb8, 0x22, 0xf6, 0x5b, 0xcb, 0x1c, 0x7f,
-  0x9b, 0xe4, 0xa3, 0x24, 0xcf, 0x8a, 0x7a, 0x6a, 0xa0, 0x22, 0x0c, 0x68,
-  0xad, 0x58, 0x6e, 0xc7, 0x52, 0x8f, 0x9b, 0x91, 0x8f, 0x60, 0xe5, 0xfc,
-  0x42, 0x23, 0x09, 0xaa, 0x8b, 0x88, 0xbe, 0x6e, 0x2f, 0xea, 0x72, 0xfa,
-  0x23, 0xff, 0x24, 0x86, 0x76, 0x09, 0x8f, 0x4b, 0x1a, 0x4f, 0xbb, 0xbd,
-  0x26, 0x42, 0x65, 0x57, 0x97, 0xbd, 0xcb, 0xb1, 0x9a, 0xaa, 0x3d, 0xc3,
-  0x0a, 0x03, 0xa3, 0x23, 0xe3, 0x52, 0x61, 0x2c, 0x86, 0x4c, 0xc3, 0xb6,
-  0x0f, 0x6f, 0xde, 0x2b, 0x1a, 0x48, 0x5f, 0xae, 0xb9, 0xba, 0xf1, 0xb9,
-  0xfd, 0xea, 0x08, 0x59, 0x84, 0x46, 0x6e, 0xb2, 0x39, 0xc0, 0x32, 0xf7,
-  0x25, 0xb7, 0x5f, 0x20, 0x80, 0x6f, 0x74, 0xe1, 0x9e, 0x8b, 0xa9, 0xff,
-  0xeb, 0xe1, 0x70, 0xef, 0xec, 0xa8, 0xbe, 0xd4, 0xf4, 0x69, 0xff, 0x04,
-  0xc0, 0xbd, 0x34, 0x86, 0x0d, 0x47, 0x2c, 0xde, 0x9e, 0xcc, 0xe3, 0x47,
-  0x46, 0x15, 0x0b, 0xe0, 0x1c, 0xb6, 0xe2, 0x90, 0xba, 0xbe, 0xa3, 0xfb,
-  0x8e, 0x85, 0x9a, 0x15, 0xd9, 0x09, 0x85, 0x43, 0x68, 0x13, 0x54, 0x26,
-  0xb5, 0x98, 0xe6, 0x51, 0xa5, 0xfe, 0x29, 0xc9, 0x9f, 0xbf, 0x21, 0x91,
-  0x7d, 0x2b, 0x15, 0xf4, 0x2e, 0xd3, 0x2b, 0x4e, 0x34, 0xc0, 0xcf, 0x36,
-  0x90, 0xaa, 0xea, 0x41, 0x0c, 0x1e, 0xf4, 0x42, 0x36, 0x10, 0xe2, 0x34,
-  0x95, 0x4e, 0x64, 0x6d, 0xc5, 0xc4, 0x6e, 0x09, 0x87, 0xe1, 0xb7, 0xd5,
-  0xb3, 0x9c, 0x06, 0x41, 0x1d, 0x10, 0x4d, 0x5c, 0x1f, 0x33, 0x57, 0x8f,
-  0x26, 0x68, 0x57, 0xbc, 0xb4, 0x75, 0xcb, 0x9d, 0x56, 0x5e, 0x34, 0x9d,
-  0x27, 0x99, 0x57, 0xa6, 0xab, 0x22, 0xb6, 0xd8, 0xcb, 0x38, 0x12, 0xc1,
-  0x9e, 0x37, 0xb3, 0x64, 0xdd, 0x60, 0x37, 0x2e, 0x19, 0xaf, 0x3b, 0x1c,
-  0xc1, 0x20, 0x3a, 0x5d, 0x04, 0x12, 0xdb, 0x75, 0x92, 0xe6, 0xde, 0x09,
-  0xeb, 0x33, 0xfa, 0xc1, 0x26, 0x9a, 0x93, 0x15, 0xcd, 0x29, 0x28, 0xbd,
-  0x33, 0x0f, 0x16, 0x40, 0x0a, 0xee, 0x38, 0x7e, 0x2c, 0x15, 0x16, 0x78,
-  0x2a, 0x65, 0x52, 0x2c, 0x48, 0x77, 0x6d, 0x54, 0xa0, 0x15, 0x63, 0xa9,
-  0x60, 0x3f, 0x30, 0xb0, 0x78, 0x81, 0x28, 0xa1, 0x08, 0xb5, 0x18, 0x1e,
-  0x2a, 0x3e, 0x1c, 0x38, 0x57, 0xe9, 0x58, 0xad, 0x2b, 0x02, 0x64, 0x5b,
-  0x7d, 0x3f, 0x71, 0x41, 0xe4, 0xa0, 0x1e, 0xab, 0xe9, 0xa0, 0xb1, 0x2a,
-  0x41, 0xeb, 0x52, 0x1f, 0x54, 0xc0, 0xc9, 0x02, 0xd7, 0x73, 0x4b, 0xf6,
-  0xa7, 0xfa, 0x28, 0xc3, 0x09, 0x18, 0xc2, 0x8c, 0x7b, 0x53, 0x91, 0x0c,
-  0x46, 0x00, 0x4b, 0x52, 0x15, 0x44, 0xe1, 0x2f, 0x1a, 0xf8, 0x58, 0x19,
-  0x50, 0x66, 0xbe, 0x17, 0x6c, 0x8c, 0x49, 0xb6, 0x64, 0x86, 0x27, 0x9f,
-  0xd6, 0x1d, 0x42, 0x89, 0xd4, 0x15, 0x2d, 0xd8, 0xc7, 0xc4, 0x4e, 0xa1,
-  0x96, 0x72, 0x24, 0x0e, 0x9c, 0x62, 0x37, 0x8a, 0xfe, 0xfc, 0xe7, 0x5e,
-  0xf4, 0xe7, 0x0e, 0xfd, 0x57, 0xd2, 0x7f, 0xb4, 0xa0, 0x7f, 0x96, 0x5a,
-  0x16, 0x7f, 0xbe, 0xa5, 0xab, 0x35, 0xe2, 0x2a, 0x98, 0xc5, 0x94, 0x61,
-  0x14, 0x7c, 0xa1, 0x82, 0x66, 0xba, 0xa4, 0x84, 0x40, 0x6a, 0xd9, 0x16,
-  0x66, 0x06, 0x30, 0x7b, 0x4d, 0xdc, 0x5a, 0x49, 0x9e, 0x10, 0x6d, 0xd8,
-  0x72, 0x36, 0x17, 0xa5, 0x5a, 0xb7, 0x1e, 0x44, 0xdd, 0xd0, 0x3c, 0x89,
-  0x33, 0x76, 0x3f, 0xe9, 0xaa, 0xa7, 0xbe, 0xb4, 0x0c, 0xde, 0x30, 0x8a,
-  0x14, 0xef, 0x19, 0x69, 0x97, 0x5a, 0x7a, 0x14, 0xf6, 0xe5, 0xb6, 0x78,
-  0x52, 0x28, 0xef, 0xa7, 0x6c, 0x00, 0x94, 0x9a, 0xb5, 0x60, 0xb2, 0xc2,
-  0x31, 0xd8, 0xbe, 0x1d, 0x2d, 0xae, 0x1f, 0xa0, 0x9b, 0x0a, 0x0d, 0x8a,
-  0x0b, 0xd0, 0x82, 0x91, 0x69, 0x94, 0x2d, 0x05, 0x67, 0x9a, 0x72, 0x7a,
-  0x00, 0x5b, 0xe7, 0xb4, 0x2c, 0x62, 0x09, 0x21, 0x5f, 0xa1, 0xf1, 0x75,
-  0xfb, 0xdd, 0x2a, 0x94, 0xa4, 0xd5, 0x3d, 0x6a, 0xab, 0x8d, 0x14, 0x94,
-  0x31, 0x6a, 0x94, 0xfe, 0xf6, 0x68, 0x68, 0x12, 0x45, 0x37, 0x12, 0x0e,
-  0xe4, 0x3c, 0x53, 0xf0, 0x38, 0x9a, 0xb5, 0x2d, 0x3c, 0x67, 0x3d, 0x5c,
-  0x41, 0x8d, 0xea, 0x34, 0x92, 0x81, 0xe7, 0x5d, 0x5b, 0x40, 0x31, 0xf0,
-  0xea, 0x93, 0xc8, 0x19, 0x34, 0xe0, 0xd0, 0xf6, 0x2d, 0xc2, 0x03, 0x4a,
-  0x5f, 0x3e, 0x70, 0x30, 0xd0, 0xa2, 0x61, 0xb6, 0xe4, 0xe5, 0xb6, 0x26,
-  0x78, 0x40, 0xcc, 0xa2, 0xb9, 0x0a, 0xd3, 0xdd, 0x5c, 0x99, 0xc9, 0x30,
-  0x03, 0x5a, 0xb8, 0x58, 0xb5, 0x14, 0x60, 0xa7, 0xf0, 0x91, 0x22, 0x2d,
-  0xf1, 0x01, 0x0d, 0x1b, 0x17, 0xaf, 0xe2, 0x9b, 0xa8, 0xb3, 0x52, 0xab,
-  0xe9, 0xd4, 0x5f, 0x38, 0xce, 0xe0, 0x34, 0x55, 0x03, 0xbd, 0x60, 0x22,
-  0x8a, 0x99, 0xce, 0x30, 0xec, 0xa6, 0x00, 0x68, 0x11, 0xf3, 0x88, 0xaf,
-  0x38, 0x6f, 0x9c, 0x7e, 0x85, 0x8f, 0x47, 0x9c, 0x63, 0x02, 0xb9, 0xa9,
-  0xc7, 0x93, 0x6b, 0xf1, 0xae, 0x02, 0x90, 0x35, 0x03, 0x0d, 0x63, 0x16,
-  0xdc, 0xb0, 0x38, 0x95, 0x96, 0x66, 0xc2, 0x58, 0x0f, 0x55, 0xc5, 0xbf,
-  0x56, 0x64, 0xf5, 0x0d, 0xb5, 0xb4, 0x4b, 0x42, 0xee, 0x2a, 0xe4, 0xb4,
-  0x2a, 0x5f, 0x85, 0x26, 0x02, 0xd3, 0x57, 0x0a, 0x75, 0xe0, 0x92, 0x04,
-  0xef, 0x49, 0x35, 0xfa, 0x79, 0x25, 0x9d, 0x43, 0x3b, 0xe2, 0x1e, 0x19,
-  0x83, 0xd8, 0xe3, 0x0f, 0x79, 0x5e, 0x03, 0xcf, 0x45, 0xe1, 0x84, 0xe9,
-  0x2c, 0x27, 0x5d, 0xb8, 0xb1, 0x45, 0xdb, 0x1b, 0x6a, 0x18, 0x40, 0x69,
-  0x49, 0x54, 0x1a, 0x55, 0xbd, 0xad, 0x73, 0x9d, 0x09, 0xfe, 0x51, 0x67,
-  0x97, 0x75, 0x31, 0xe1, 0x13, 0x36, 0x47, 0x97, 0x15, 0x50, 0xcf, 0x34,
-  0x62, 0x80, 0xa9, 0x6f, 0x4e, 0xdf, 0x1d, 0xba, 0x54, 0x5f, 0x31, 0x18,
-  0xf2, 0x27, 0xad, 0x90, 0x98, 0x03, 0x24, 0x42, 0x18, 0xf4, 0x45, 0xaf,
-  0x59, 0x27, 0x16, 0xab, 0x73, 0x95, 0x94, 0x8b, 0xbb, 0x65, 0x3a, 0x59,
-  0x07, 0x3c, 0xc9, 0xfb, 0x93, 0xa3, 0x1f, 0xfa, 0x30, 0x36, 0xab, 0xf2,
-  0x67, 0xf8, 0x1c, 0x06, 0xed, 0xa1, 0x5e, 0x89, 0x59, 0x0b, 0x4e, 0x8d,
-  0x95, 0xe1, 0x00, 0xe1, 0x28, 0x54, 0x13, 0x52, 0x18, 0xd3, 0xb9, 0xc8,
-  0x35, 0xd2, 0xe4, 0x06, 0x33, 0x25, 0xe2, 0xe8, 0x40, 0xa0, 0x02, 0x01,
-  0xb4, 0xa4, 0x2d, 0x07, 0xfb, 0xcd, 0xcd, 0xed, 0x9d, 0x9d, 0x1d, 0xec,
-  0x5d, 0xec, 0xb9, 0xb9, 0x01, 0xf0, 0x09, 0x8c, 0x0f, 0x02, 0x0e, 0x1b,
-  0x05, 0x72, 0xa1, 0xc5, 0xee, 0xa7, 0x9c, 0xf5, 0x58, 0xe7, 0x85, 0x67,
-  0xe7, 0xa7, 0x6c, 0xaf, 0xfc, 0xf4, 0xcf, 0x7b, 0xbe, 0x28, 0x21, 0xea,
-  0x66, 0x35, 0xcb, 0xbd, 0xed, 0x90, 0x8c, 0x77, 0x8a, 0x28, 0x12, 0x1b,
-  0xa0, 0x46, 0x29, 0x89, 0xac, 0x17, 0x7d, 0xe0, 0x3d, 0xcd, 0xc7, 0x4e,
-  0x5c, 0x81, 0x15, 0x55, 0xb7, 0xb3, 0xd7, 0xcc, 0x98, 0x0b, 0x26, 0xc2,
-  0xfc, 0xb7, 0x86, 0x7f, 0x65, 0x6b, 0x35, 0x8d, 0x92, 0xfb, 0x64, 0xbc,
-  0x2c, 0xc1, 0xd0, 0x38, 0x1e, 0x9f, 0xe9, 0x6b, 0xc2, 0x0b, 0x55, 0x8f,
-  0x04, 0x70, 0xfb, 0x63, 0x1b, 0x24, 0xd0, 0x2b, 0xb8, 0x14, 0x84, 0x19,
-  0x49, 0xce, 0x6a, 0x26, 0xa5, 0x52, 0x06, 0x36, 0x5a, 0xb5, 0x7c, 0x35,
-  0xce, 0x8e, 0x40, 0x4d, 0x12, 0x9d, 0xdb, 0x1c, 0x1a, 0x0b, 0xf2, 0x09,
-  0xa9, 0x22, 0x7d, 0x0b, 0x8a, 0x95, 0x69, 0xd3, 0x07, 0x8d, 0x87, 0x4a,
-  0x57, 0xec, 0x83, 0x05, 0xa7, 0xa6, 0x7b, 0x55, 0x19, 0x56, 0xc8, 0xa9,
-  0xea, 0x06, 0x23, 0x45, 0xcb, 0xd1, 0xa7, 0x80, 0xfe, 0x8c, 0x28, 0xc9,
-  0xa6, 0x57, 0x48, 0x9d, 0x95, 0xfc, 0x28, 0xc9, 0xc9, 0x24, 0xf4, 0xf2,
-  0x5f, 0x9b, 0xdb, 0x83, 0xad, 0x4e, 0x73, 0xf4, 0xc8, 0xd8, 0x85, 0x7d,
-  0x3d, 0x9e, 0xcb, 0x8d, 0x2d, 0xc8, 0xc6, 0xd9, 0xd3, 0x03, 0x14, 0x56,
-  0x4a, 0x52, 0x20, 0xc2, 0x22, 0xda, 0xc6, 0xd2, 0x3f, 0x6d, 0xf8, 0x98,
-  0x04, 0x22, 0xda, 0xf3, 0xe6, 0x79, 0x86, 0xf8, 0xd7, 0x98, 0x4d, 0x6e,
-  0xf0, 0x36, 0x74, 0xda, 0x17, 0x78, 0x3e, 0x91, 0x70, 0x8a, 0xda, 0x3a,
-  0xff, 0x53, 0x21, 0x8b, 0x6e, 0xff, 0xfd, 0xe7, 0xab, 0xb9, 0x5d, 0xc5,
-  0xb9, 0x4a, 0x7a, 0x12, 0xe8, 0xb1, 0x15, 0xab, 0x76, 0x4f, 0x10, 0xa4,
-  0x6b, 0xf1, 0x56, 0xec, 0xcf, 0xe5, 0x2a, 0x94, 0x1c, 0xcb, 0xc5, 0x2a,
-  0x96, 0x66, 0xa6, 0xce, 0x82, 0x7a, 0x92, 0xb1, 0x04, 0x51, 0x37, 0xee,
-  0x10, 0x57, 0xbb, 0x5c, 0xbb, 0xed, 0xcb, 0xdd, 0xab, 0x26, 0x3e, 0x94,
-  0xe4, 0x09, 0x8a, 0xb5, 0x87, 0xb8, 0x05, 0x2b, 0x70, 0x51, 0x4c, 0x70,
-  0x25, 0x8d, 0x71, 0x2a, 0x40, 0x32, 0x12, 0xf7, 0x2b, 0x7a, 0x95, 0x8c,
-  0x49, 0x5c, 0xfa, 0xde, 0x99, 0xc5, 0xef, 0x35, 0xaa, 0x62, 0x71, 0xf5,
-  0xf7, 0x5d, 0x9d, 0xa9, 0xe2, 0x4e, 0x94, 0x1a, 0x19, 0xc0, 0x71, 0x24,
-  0x9a, 0x64, 0xd5, 0x7f, 0xeb, 0x6c, 0x71, 0x66, 0xac, 0xa3, 0x1e, 0x69,
-  0xcd, 0x9b, 0x50, 0xaa, 0x12, 0x9e, 0x9f, 0xe5, 0x33, 0x14, 0x8d, 0x03,
-  0x74, 0x21, 0x98, 0x41, 0xc6, 0xc8, 0x12, 0xb1, 0x01, 0x01, 0xea, 0x11,
-  0xa0, 0x8e, 0xae, 0x48, 0x5a, 0x5e, 0x89, 0x1b, 0x6b, 0xe8, 0x2a, 0xbe,
-  0xc4, 0x33, 0xfb, 0x18, 0x0a, 0x0b, 0xb2, 0xe4, 0xa5, 0xfc, 0x00, 0x5c,
-  0xb1, 0xc9, 0x64, 0xfd, 0xd9, 0x86, 0x16, 0xa1, 0x01, 0x0c, 0x8f, 0x95,
-  0x71, 0x87, 0x1f, 0xf0, 0xc9, 0xd2, 0xed, 0x4f, 0x69, 0x96, 0xde, 0x97,
-  0xd2, 0x86, 0xfb, 0x53, 0xd1, 0x39, 0x1f, 0x4d, 0x11, 0x9a, 0x92, 0xf0,
-  0x53, 0xf6, 0x61, 0x8f, 0x7a, 0x4d, 0xb2, 0x58, 0x32, 0xf9, 0xe2, 0x11,
-  0x41, 0x73, 0x16, 0xdf, 0xa7, 0xb3, 0xe5, 0xcc, 0x27, 0xf7, 0xe1, 0x3d,
-  0x5f, 0x8a, 0xc3, 0x03, 0x95, 0xc1, 0xfa, 0xd1, 0x86, 0xb0, 0xa5, 0x6e,
-  0x34, 0x9d, 0x1f, 0x10, 0x9d, 0x25, 0x5a, 0x09, 0x3e, 0x1a, 0x26, 0x47,
-  0x1a, 0x0f, 0x1b, 0x90, 0xd2, 0x45, 0x62, 0xc4, 0xdb, 0x9d, 0x88, 0x17,
-  0x96, 0x49, 0xa9, 0xbe, 0xbb, 0x36, 0x12, 0xd4, 0x99, 0x10, 0x17, 0x87,
-  0x84, 0x1e, 0xcd, 0x4b, 0xce, 0xf8, 0x1b, 0x51, 0x13, 0x77, 0xe9, 0xa4,
-  0xbc, 0x6e, 0x05, 0x63, 0x94, 0x45, 0xc4, 0xb4, 0x23, 0xc1, 0x68, 0xe1,
-  0x50, 0x16, 0xac, 0x14, 0x3c, 0xd0, 0x9b, 0x62, 0x75, 0x76, 0xa0, 0x02,
-  0x31, 0x91, 0xdf, 0x25, 0x27, 0x76, 0xb4, 0xa8, 0x10, 0x1a, 0x80, 0x37,
-  0x70, 0x87, 0x55, 0x8a, 0xab, 0xde, 0x48, 0x24, 0xec, 0xb7, 0x6a, 0x43,
-  0x11, 0xe8, 0x26, 0xc4, 0x7b, 0x4b, 0x1c, 0x17, 0x5d, 0xa5, 0x37, 0xe9,
-  0xb4, 0x61, 0x45, 0x43, 0xf7, 0xbd, 0xa8, 0x3b, 0xc3, 0xeb, 0xef, 0xba,
-  0xea, 0x10, 0x40, 0x49, 0x6e, 0x75, 0x8f, 0x6b, 0xce, 0x46, 0xd4, 0xbd,
-  0x92, 0x2e, 0xbe, 0xee, 0xba, 0x04, 0x90, 0xc6, 0x5d, 0xe8, 0x7d, 0xea,
-  0x76, 0x9d, 0x14, 0xbb, 0xd1, 0xce, 0xd6, 0xd6, 0xb7, 0xbd, 0xe8, 0x99,
-  0xc4, 0x9c, 0x6c, 0x7f, 0xdd, 0xba, 0x42, 0x56, 0xdf, 0x4b, 0x4a, 0xbd,
-  0xaa, 0x7a, 0x1a, 0xdf, 0x82, 0xef, 0xeb, 0xc2, 0x61, 0x4a, 0xec, 0xca,
-  0x5a, 0xe6, 0x26, 0x7a, 0xcb, 0xe2, 0xaf, 0xd8, 0x2a, 0x18, 0xc1, 0xeb,
-  0x90, 0x0f, 0x33, 0x44, 0x27, 0xf1, 0xee, 0x5d, 0xd3, 0x6f, 0x89, 0xcf,
-  0x61, 0x95, 0x4e, 0x5a, 0x12, 0xac, 0x8b, 0x6b, 0x66, 0x03, 0xa3, 0x65,
-  0x8e, 0x33, 0xcd, 0x5e, 0x55, 0x29, 0x50, 0xc5, 0x86, 0x79, 0x93, 0xb0,
-  0x48, 0x68, 0xf0, 0x85, 0x78, 0x3d, 0x54, 0x0f, 0x4f, 0x66, 0x75, 0x95,
-  0x50, 0xc9, 0x5f, 0xa8, 0x54, 0x1d, 0xfe, 0x91, 0x74, 0x2a, 0x8c, 0x43,
-  0x8e, 0x4b, 0x55, 0x27, 0x91, 0x10, 0x52, 0xef, 0xbb, 0xac, 0x4f, 0x9b,
-  0x55, 0x2f, 0xd1, 0x65, 0x61, 0x9e, 0x86, 0x4d, 0x1d, 0xb3, 0x65, 0x28,
-  0xb9, 0x85, 0x16, 0x7d, 0xe1, 0x21, 0x49, 0xe3, 0xe0, 0xc2, 0x53, 0x7e,
-  0x60, 0xfa, 0xd0, 0x6b, 0xaa, 0x24, 0x1c, 0x8a, 0x08, 0xbf, 0x82, 0xad,
-  0x75, 0x30, 0x2e, 0x64, 0x02, 0x8f, 0x51, 0x91, 0x88, 0xc3, 0xc9, 0x7e,
-  0x3b, 0xdb, 0xd5, 0x94, 0x2b, 0x1d, 0xa4, 0x45, 0xd9, 0x67, 0xbf, 0x71,
-  0xbb, 0x85, 0x14, 0x3a, 0x87, 0xa6, 0xce, 0x1b, 0xec, 0xd6, 0xc4, 0xa3,
-  0x86, 0x8a, 0x25, 0x5c, 0x8a, 0x9f, 0x20, 0x78, 0x93, 0x0f, 0x17, 0x33,
-  0xb2, 0x7e, 0x23, 0xb8, 0x90, 0x58, 0xe6, 0x6d, 0x9a, 0xdc, 0xd1, 0xc1,
-  0x3a, 0xf4, 0xf8, 0x6c, 0x55, 0xde, 0x61, 0x15, 0x47, 0x88, 0xfe, 0xc7,
-  0xd7, 0x74, 0xc5, 0xf4, 0x11, 0xfc, 0xdd, 0x26, 0xca, 0xbb, 0x58, 0x69,
-  0x84, 0xc0, 0xb1, 0x0e, 0x86, 0x72, 0x39, 0x3e, 0xdd, 0xbf, 0x40, 0x31,
-  0x1a, 0x1c, 0x50, 0x89, 0xb3, 0xf6, 0x5f, 0xf1, 0x28, 0x56, 0x00, 0x82,
-  0x09, 0x54, 0xae, 0x83, 0xfc, 0x82, 0x5e, 0x99, 0xe5, 0x06, 0xb9, 0xfb,
-  0xb8, 0x24, 0x01, 0x4a, 0xd5, 0x15, 0x3a, 0x39, 0x1e, 0x7a, 0x18, 0x04,
-  0xf3, 0x31, 0x16, 0x30, 0x27, 0x10, 0x27, 0x66, 0x39, 0x91, 0x1f, 0x6b,
-  0xaf, 0x33, 0xe5, 0xaa, 0x0e, 0x20, 0xf0, 0x08, 0x81, 0x35, 0x22, 0xf3,
-  0xa6, 0x79, 0x05, 0xd7, 0x82, 0xfb, 0xf8, 0x93, 0xd8, 0xe4, 0x24, 0xfe,
-  0xad, 0x3d, 0x04, 0x86, 0x73, 0x02, 0x03, 0x08, 0x31, 0x31, 0x51, 0x23,
-  0x55, 0x8d, 0x48, 0x8c, 0xee, 0xf1, 0x9b, 0xaa, 0xf0, 0xc2, 0x49, 0x24,
-  0x40, 0xc8, 0x89, 0x5e, 0x13, 0x67, 0xfb, 0xe2, 0xa7, 0x3e, 0xfd, 0xfb,
-  0x73, 0xc3, 0xb7, 0x58, 0x0a, 0xb6, 0x8e, 0xda, 0xbd, 0x2c, 0x94, 0x35,
-  0xf7, 0x15, 0x06, 0xd0, 0x8e, 0xa4, 0x82, 0xcb, 0xb7, 0x45, 0x50, 0xaa,
-  0xa1, 0x3d, 0xf6, 0xc2, 0x7c, 0x7c, 0xeb, 0x05, 0x03, 0xa9, 0x56, 0x4a,
-  0x28, 0x08, 0x0c, 0x8a, 0x35, 0xc4, 0x56, 0x83, 0xb9, 0xdc, 0x3e, 0x70,
-  0xed, 0xd6, 0x97, 0x71, 0x1c, 0xb3, 0xe8, 0xe3, 0xdc, 0x9c, 0xbe, 0x10,
-  0xe8, 0x88, 0xfd, 0xb7, 0xc5, 0x03, 0x23, 0x5f, 0x89, 0x8c, 0x57, 0x64,
-  0x2e, 0xf5, 0x06, 0x84, 0x8c, 0xe1, 0x37, 0x3d, 0xc4, 0x0c, 0xce, 0x24,
-  0x41, 0x1f, 0x24, 0xf3, 0x52, 0xd7, 0x79, 0x9e, 0xdd, 0xd9, 0xd9, 0xd7,
-  0x40, 0xe8, 0x40, 0x8c, 0xf0, 0xce, 0x4a, 0x6a, 0x7b, 0xb9, 0x68, 0x71,
-  0xe9, 0x72, 0xe6, 0x44, 0x03, 0x31, 0x25, 0x4c, 0x27, 0x0d, 0x2b, 0x90,
-  0xb4, 0xc6, 0xbd, 0x00, 0x80, 0x7f, 0xc3, 0xac, 0x64, 0xae, 0x78, 0x8c,
-  0x98, 0xbb, 0x5d, 0x36, 0x8c, 0x06, 0x8b, 0x0b, 0x8e, 0xd0, 0x55, 0x82,
-  0x8c, 0xd1, 0xba, 0x18, 0x84, 0xec, 0x70, 0x00, 0x4c, 0x58, 0xa4, 0x77,
-  0x19, 0x59, 0xd7, 0x5c, 0xf3, 0x71, 0x02, 0xbf, 0xf7, 0xc4, 0x82, 0xd0,
-  0xeb, 0xc5, 0x47, 0x5a, 0x50, 0x16, 0xe2, 0xe8, 0xd9, 0x0f, 0x3f, 0x54,
-  0x81, 0x1a, 0x37, 0x7a, 0x15, 0x8e, 0xe5, 0x23, 0x43, 0x54, 0xd2, 0x20,
-  0x22, 0xca, 0xda, 0x4e, 0xb9, 0x45, 0xf7, 0x9b, 0xf1, 0x97, 0x23, 0x3c,
-  0xa0, 0xd8, 0xc1, 0x40, 0xa8, 0xf0, 0xd4, 0x52, 0x3a, 0x3d, 0xa8, 0xdf,
-  0x12, 0x04, 0x99, 0xad, 0xa8, 0x00, 0x86, 0xc7, 0x2c, 0xb0, 0x48, 0x65,
-  0x3b, 0x8b, 0xff, 0x95, 0x18, 0x17, 0xc4, 0xc1, 0xd9, 0xea, 0xf1, 0xe2,
-  0x15, 0x8e, 0x84, 0xe8, 0xc2, 0xba, 0x9b, 0xb7, 0x17, 0x92, 0xa9, 0xb9,
-  0x8f, 0x5c, 0xd1, 0x08, 0x8d, 0x57, 0xc4, 0x89, 0x96, 0xe2, 0x48, 0x6c,
-  0xcd, 0x1a, 0xe7, 0x89, 0xfa, 0x80, 0xac, 0x70, 0x53, 0xe3, 0x04, 0x8b,
-  0x55, 0x88, 0x23, 0xba, 0x30, 0x63, 0xce, 0x4d, 0x96, 0xb3, 0x8c, 0xeb,
-  0xc8, 0x87, 0x4d, 0x84, 0xbb, 0x87, 0xc7, 0x7b, 0x2d, 0xc2, 0xc3, 0x1d,
-  0x8a, 0xbc, 0x80, 0x15, 0x99, 0xd9, 0x0f, 0xf1, 0x5d, 0x9a, 0x42, 0x85,
-  0xdb, 0x21, 0xff, 0xe3, 0xca, 0x62, 0x8c, 0x4c, 0x15, 0xab, 0x1c, 0x31,
-  0x3c, 0xdd, 0x7e, 0x99, 0x2f, 0x79, 0xb9, 0x74, 0xcd, 0xe7, 0xc0, 0xbb,
-  0x63, 0xfc, 0x1d, 0xcb, 0x8d, 0x63, 0xff, 0xa1, 0x45, 0xb6, 0xc9, 0x3d,
-  0xe7, 0xfd, 0xb9, 0x2d, 0x01, 0x28, 0x36, 0x55, 0x31, 0xfc, 0xc0, 0x70,
-  0x54, 0x0d, 0xcd, 0x90, 0x61, 0x91, 0x2c, 0xdb, 0xc7, 0xa3, 0x45, 0x7b,
-  0xf9, 0x8c, 0xd0, 0x76, 0xa6, 0xb0, 0xa6, 0xd9, 0x54, 0x4b, 0xe9, 0xb8,
-  0xd5, 0x34, 0x15, 0xc4, 0x08, 0x4e, 0x9d, 0x52, 0x31, 0x53, 0x1b, 0x1d,
-  0xd0, 0xaf, 0x0f, 0xeb, 0x35, 0xc9, 0xd6, 0x81, 0x2d, 0xa8, 0x9a, 0x26,
-  0x92, 0x3b, 0xe8, 0xef, 0xb3, 0xf7, 0x17, 0x1b, 0xbe, 0x88, 0xe1, 0x24,
-  0xab, 0x99, 0xbc, 0xac, 0xf1, 0x96, 0xdc, 0x19, 0xc9, 0xa0, 0x50, 0x38,
-  0x0a, 0xa4, 0xc1, 0xb8, 0xf3, 0xc3, 0x08, 0x12, 0xcf, 0xb6, 0xb6, 0x49,
-  0xc0, 0xdb, 0xda, 0x81, 0xd1, 0xe6, 0xd9, 0xd6, 0x33, 0x67, 0x1f, 0xb7,
-  0xa7, 0x1a, 0xb7, 0xe3, 0x44, 0x5e, 0x84, 0x56, 0x89, 0xe3, 0xf1, 0xec,
-  0xfe, 0x1e, 0x1f, 0xf7, 0xea, 0xd0, 0x45, 0x85, 0xea, 0xa3, 0x49, 0x50,
-  0x1e, 0x7c, 0xc5, 0x31, 0xf4, 0x4b, 0x0f, 0xeb, 0xcb, 0x72, 0x2e, 0x01,
-  0x68, 0xac, 0x3b, 0x23, 0x23, 0xa3, 0x7e, 0x91, 0x84, 0x54, 0xf1, 0x18,
-  0x1b, 0x3b, 0x66, 0xa5, 0xa0, 0xbd, 0xf4, 0x52, 0xcf, 0xa3, 0x59, 0x08,
-  0x88, 0xb2, 0x29, 0x89, 0x96, 0x6a, 0x59, 0x6b, 0xf7, 0x8f, 0x3e, 0xc9,
-  0x58, 0xca, 0xd2, 0xe0, 0x34, 0x04, 0x3c, 0x11, 0x05, 0xca, 0x38, 0xe9,
-  0xcd, 0x9f, 0xa4, 0x6c, 0x60, 0x80, 0xb5, 0x8d, 0x84, 0x0d, 0x5a, 0x6e,
-  0xab, 0x0f, 0x99, 0x32, 0xfc, 0xc4, 0x64, 0x39, 0x86, 0x80, 0xc0, 0x01,
-  0x38, 0x5c, 0xee, 0x71, 0x24, 0xa0, 0x99, 0x86, 0x23, 0xc2, 0x6d, 0x7b,
-  0xb2, 0x6d, 0xaa, 0xeb, 0x38, 0xa9, 0x78, 0xca, 0xa5, 0x2b, 0xb3, 0x5a,
-  0xc4, 0x86, 0x27, 0x97, 0x24, 0xdd, 0xe0, 0x21, 0xf3, 0xcb, 0xcc, 0x30,
-  0x7e, 0x9b, 0x28, 0xc7, 0xa0, 0x4f, 0x38, 0xff, 0xcc, 0xde, 0x1c, 0x4b,
-  0x65, 0x50, 0x10, 0xd1, 0x57, 0x1c, 0x3a, 0x57, 0x6b, 0xb1, 0x82, 0x63,
-  0x3b, 0x63, 0x50, 0xde, 0x7c, 0x4c, 0xe7, 0xff, 0xb5, 0x46, 0x90, 0x36,
-  0xc3, 0x0b, 0x04, 0x7a, 0xc5, 0xd4, 0x47, 0x4c, 0x00, 0x58, 0x9b, 0x1e,
-  0x94, 0x4b, 0x97, 0x56, 0x84, 0xf2, 0x19, 0x20, 0x9c, 0xc5, 0x69, 0xdd,
-  0xcc, 0x39, 0x03, 0x36, 0xad, 0x5b, 0xf1, 0x8f, 0xb2, 0xc2, 0x38, 0xcf,
-  0x42, 0x0b, 0xdc, 0x26, 0x2d, 0x74, 0xba, 0x60, 0x00, 0xb4, 0xa6, 0xb1,
-  0x7c, 0x35, 0x4c, 0x8b, 0x4e, 0x1b, 0x8c, 0xfe, 0xdf, 0x39, 0x6d, 0x78,
-  0x74, 0x7f, 0xd9, 0x30, 0xef, 0x51, 0x17, 0x08, 0x51, 0x9f, 0xaf, 0xa1,
-  0xf7, 0x7d, 0x8c, 0x56, 0x8f, 0xc7, 0xd7, 0x4d, 0xf7, 0xdd, 0xf0, 0xb9,
-  0xe5, 0xa2, 0xd2, 0x1b, 0xd8, 0x15, 0x42, 0x35, 0xda, 0x44, 0x31, 0x3c,
-  0xea, 0x6f, 0xbf, 0xb4, 0x1a, 0xd8, 0x8d, 0x8b, 0x1c, 0xb9, 0xa3, 0xbd,
-  0x2a, 0x40, 0xd0, 0x8a, 0xa2, 0x91, 0x08, 0xc3, 0x04, 0x83, 0x0d, 0x63,
-  0xf6, 0x81, 0x1f, 0x8d, 0x2b, 0x3b, 0xb9, 0x87, 0x1f, 0x87, 0x18, 0xd6,
-  0xcb, 0x67, 0x83, 0xb6, 0x5c, 0x67, 0xb1, 0x23, 0x21, 0x3f, 0xe4, 0xa2,
-  0x12, 0x07, 0x6b, 0x4c, 0x5a, 0x9c, 0x1f, 0x02, 0xad, 0xb3, 0xc8, 0x19,
-  0xa1, 0x37, 0x9c, 0xa6, 0x14, 0x8a, 0x68, 0x81, 0x20, 0x29, 0x18, 0x60,
-  0x5d, 0xe4, 0xeb, 0x72, 0x25, 0x94, 0x9a, 0x15, 0x49, 0x73, 0x11, 0xb8,
-  0x98, 0x6e, 0xc3, 0x41, 0x2d, 0xc9, 0x2e, 0x48, 0x1b, 0x91, 0x44, 0xd1,
-  0xc6, 0x8a, 0xa9, 0xfe, 0x8d, 0x7b, 0xcf, 0x45, 0xbb, 0x72, 0x51, 0xa0,
-  0x24, 0x6f, 0x04, 0x74, 0x21, 0x77, 0x9f, 0xd5, 0x08, 0x5e, 0x35, 0x1c,
-  0xe4, 0x20, 0xdd, 0xc0, 0x91, 0xc7, 0x6c, 0x53, 0x28, 0xe4, 0xd1, 0xb8,
-  0xba, 0x77, 0x4a, 0x13, 0xa2, 0x4f, 0xc3, 0x41, 0xa9, 0x4f, 0x0a, 0x01,
-  0xb3, 0xd6, 0x25, 0x8c, 0x15, 0x15, 0xa1, 0xaf, 0xb3, 0x69, 0x68, 0xd7,
-  0x6b, 0x3a, 0xd2, 0x48, 0xea, 0x18, 0x78, 0x3c, 0x5a, 0xd5, 0xde, 0x78,
-  0x35, 0xb5, 0xf6, 0x74, 0x6a, 0x45, 0x22, 0x46, 0x9c, 0x4d, 0x11, 0xfd,
-  0x25, 0x1b, 0x59, 0xe1, 0x47, 0x96, 0x02, 0xda, 0x30, 0x80, 0xc5, 0x59,
-  0x73, 0xcd, 0xe5, 0xf9, 0x68, 0xd3, 0x96, 0x42, 0xa4, 0x0c, 0x6a, 0x4b,
-  0xd2, 0x5e, 0xc9, 0x2a, 0x30, 0x82, 0xda, 0xa1, 0xa8, 0x44, 0x57, 0x48,
-  0x37, 0x9c, 0x88, 0xfc, 0x45, 0xe2, 0x49, 0x03, 0x5b, 0xaf, 0x52, 0x59,
-  0x4b, 0x25, 0x71, 0x2c, 0x50, 0xb6, 0x2c, 0x1f, 0x15, 0x0f, 0x7e, 0x3d,
-  0x9d, 0xfa, 0x1d, 0xb6, 0x65, 0xde, 0x0c, 0x22, 0x7c, 0x87, 0x0f, 0x07,
-  0x5c, 0x79, 0x94, 0x63, 0xbc, 0xc5, 0xed, 0xb1, 0xd4, 0xac, 0x44, 0x29,
-  0xb8, 0xed, 0x5b, 0x99, 0x6f, 0x72, 0xb1, 0xeb, 0x32, 0x1f, 0x37, 0x1a,
-  0x71, 0x62, 0x5f, 0x31, 0x56, 0x63, 0x08, 0xcf, 0x76, 0x80, 0x87, 0x0d,
-  0x41, 0x8a, 0x3f, 0xf9, 0x10, 0x7e, 0xc2, 0x17, 0x89, 0xfa, 0x8b, 0x36,
-  0x5c, 0xdc, 0x48, 0x6b, 0xe8, 0x06, 0xcb, 0x80, 0xdd, 0xc2, 0xf9, 0x32,
-  0x54, 0x65, 0xe6, 0x3d, 0x02, 0x3c, 0x59, 0x5b, 0xd1, 0x6e, 0x07, 0xda,
-  0xfb, 0xb0, 0x68, 0x84, 0x6e, 0x04, 0x85, 0x64, 0x2e, 0xa5, 0x5e, 0x98,
-  0xf9, 0xc8, 0xbc, 0x08, 0xef, 0x4a, 0x8a, 0x85, 0x69, 0x3d, 0x8a, 0x1c,
-  0xd3, 0x32, 0xba, 0xa8, 0x51, 0x25, 0x1d, 0x92, 0x2a, 0x12, 0xc9, 0x78,
-  0xca, 0xeb, 0xcf, 0x37, 0x84, 0x5b, 0x68, 0x35, 0xd8, 0xcb, 0x72, 0xb1,
-  0xbe, 0xad, 0x1f, 0x5d, 0x02, 0xd7, 0x59, 0x80, 0x0d, 0x44, 0xa7, 0x68,
-  0xf5, 0x9f, 0x6b, 0x85, 0x9d, 0xb0, 0xe0, 0x6e, 0x29, 0x38, 0xbc, 0x2c,
-  0x0d, 0x82, 0x1d, 0xb0, 0x5a, 0x2a, 0xeb, 0xe8, 0xc0, 0xc4, 0xd9, 0xf2,
-  0xd9, 0xc6, 0x4f, 0x25, 0x63, 0x6f, 0xc1, 0x6e, 0xa2, 0x42, 0x90, 0xee,
-  0xd7, 0x3d, 0xf0, 0x33, 0xbc, 0xe0, 0x89, 0x15, 0x77, 0xa1, 0x05, 0x9d,
-  0x4e, 0xfa, 0x4c, 0xf0, 0x57, 0x79, 0xd6, 0x84, 0x56, 0x63, 0xa7, 0x3f,
-  0xaf, 0xca, 0x86, 0x78, 0x61, 0x5b, 0x0b, 0x97, 0x74, 0xd8, 0x9d, 0xd9,
-  0xf1, 0x18, 0xed, 0x8c, 0x6d, 0x95, 0xaa, 0x88, 0x57, 0xb7, 0x41, 0x55,
-  0x36, 0xb9, 0x71, 0x26, 0xf6, 0x38, 0x7a, 0x24, 0x1d, 0xdf, 0xa8, 0x27,
-  0x58, 0x30, 0xaf, 0xe1, 0x21, 0x43, 0xe1, 0x6d, 0x91, 0x7d, 0xe9, 0x72,
-  0x51, 0x39, 0x1f, 0xda, 0x2e, 0xdd, 0x34, 0x75, 0x72, 0x6c, 0x29, 0x20,
-  0xc4, 0xa7, 0xdb, 0x54, 0x17, 0x64, 0x53, 0x65, 0x7a, 0x81, 0xc1, 0xea,
-  0x23, 0xfa, 0xce, 0x24, 0xe3, 0xe8, 0x5e, 0x76, 0xf7, 0x08, 0x81, 0xc8,
-  0xd6, 0xb7, 0x88, 0x7c, 0xdd, 0xd9, 0x03, 0x27, 0xe0, 0x77, 0xab, 0x20,
-  0xf9, 0x5d, 0x62, 0x73, 0x74, 0xcd, 0x74, 0x6d, 0x9d, 0x61, 0xca, 0x79,
-  0x02, 0x78, 0x64, 0x55, 0xff, 0x42, 0xf9, 0xd2, 0x8d, 0xef, 0x41, 0x3a,
-  0xa8, 0x85, 0x3b, 0x63, 0xde, 0x7d, 0x8b, 0x07, 0xa8, 0xf5, 0xf1, 0x9d,
-  0xad, 0xa0, 0x0e, 0xc2, 0x15, 0xb5, 0xb7, 0xb5, 0xb2, 0x12, 0xe3, 0x9e,
-  0x11, 0x89, 0x21, 0x98, 0x17, 0x47, 0x96, 0x94, 0x96, 0xa1, 0x99, 0xd0,
-  0xc8, 0x63, 0x77, 0x65, 0xf4, 0x24, 0x91, 0x52, 0xe3, 0x2b, 0xf8, 0x97,
-  0xd8, 0x0a, 0x02, 0x79, 0xce, 0x18, 0xec, 0x8e, 0xf6, 0xc3, 0x44, 0x3c,
-  0xa8, 0xcc, 0x43, 0xe3, 0xf5, 0xda, 0x73, 0x16, 0x0e, 0x15, 0xd6, 0xa9,
-  0x12, 0xda, 0xd7, 0x3c, 0x97, 0xb0, 0x3c, 0x57, 0x9e, 0x69, 0xcf, 0xe4,
-  0x66, 0x55, 0x65, 0x92, 0x70, 0x98, 0x94, 0xe0, 0x2a, 0xbc, 0x4b, 0xc7,
-  0x79, 0x56, 0x64, 0x97, 0x22, 0x37, 0x18, 0x29, 0x3b, 0x2b, 0x18, 0xa7,
-  0x59, 0xc7, 0xec, 0x86, 0x6e, 0x72, 0x1b, 0xad, 0xb3, 0x28, 0xe1, 0xd9,
-  0x2c, 0x0d, 0xcc, 0xe8, 0x5c, 0x70, 0xea, 0x08, 0x1b, 0xaa, 0x4b, 0x41,
-  0xde, 0x8b, 0x5d, 0x08, 0xa2, 0x5e, 0x3e, 0x16, 0xfe, 0xf9, 0xe2, 0x71,
-  0x75, 0x9e, 0xf7, 0x46, 0x6b, 0xf0, 0xe0, 0xa6, 0x91, 0xc8, 0x38, 0xd4,
-  0x45, 0x52, 0xbc, 0x29, 0x51, 0xb5, 0xec, 0xb5, 0xf6, 0xd1, 0x99, 0xae,
-  0x04, 0x8c, 0x79, 0x58, 0xb5, 0xc3, 0x52, 0x98, 0x1c, 0xc4, 0x78, 0x74,
-  0x78, 0xf1, 0x36, 0x9a, 0xe4, 0x31, 0x4d, 0x1f, 0xff, 0xf6, 0x49, 0xcb,
-  0xf8, 0x5b, 0xdc, 0x48, 0x88, 0x2e, 0x16, 0xbc, 0x49, 0x7d, 0xf6, 0x91,
-  0xf6, 0xb7, 0x9e, 0x0f, 0xca, 0xfb, 0x72, 0xb5, 0x2d, 0xdc, 0x0c, 0xab,
-  0x5a, 0xfd, 0xc4, 0x6f, 0x99, 0x26, 0xb9, 0xf2, 0xfd, 0x9d, 0xdd, 0x3f,
-  0xd4, 0xb1, 0x24, 0xdb, 0xd0, 0x99, 0x5d, 0x1d, 0xeb, 0x3e, 0x5e, 0xf1,
-  0x94, 0x52, 0x43, 0xff, 0xf8, 0xc5, 0xc1, 0xa4, 0x12, 0x3c, 0x1a, 0x84,
-  0x87, 0xae, 0x28, 0xec, 0xf2, 0x64, 0xb4, 0xe8, 0xca, 0xa8, 0x50, 0xcb,
-  0xe2, 0x5b, 0x01, 0x5a, 0x59, 0x23, 0xe7, 0x76, 0x13, 0xc2, 0xb2, 0x59,
-  0xda, 0xc1, 0x21, 0x6e, 0x83, 0x2a, 0x2c, 0x8e, 0x9c, 0xc1, 0xbb, 0x60,
-  0xe2, 0xea, 0x2f, 0x35, 0x3d, 0xb8, 0x3d, 0x4d, 0x0a, 0x1c, 0x1a, 0x98,
-  0x75, 0x06, 0xa4, 0x57, 0x23, 0x3b, 0xc8, 0xc6, 0xe6, 0x37, 0x1d, 0xa0,
-  0x98, 0x32, 0x6c, 0xf1, 0x75, 0x36, 0xd8, 0x5f, 0x46, 0xbb, 0x40, 0xc9,
-  0x4a, 0xe6, 0x5c, 0x07, 0xc5, 0x4e, 0xbc, 0xe7, 0x9b, 0xca, 0xc7, 0x1d,
-  0x03, 0x0b, 0x2b, 0x72, 0xf7, 0x97, 0xed, 0xa3, 0x8b, 0xf3, 0x84, 0xef,
-  0x36, 0x09, 0xe8, 0xd4, 0x9b, 0x7c, 0xf0, 0xef, 0x47, 0x47, 0xf7, 0x9c,
-  0xe9, 0x64, 0x13, 0x19, 0x09, 0xa3, 0x25, 0x7f, 0xd7, 0x5a, 0xd3, 0x5d,
-  0xf9, 0xa5, 0x3c, 0xa1, 0xfe, 0xe4, 0xc0, 0x31, 0x5c, 0x70, 0xd4, 0xdf,
-  0x2c, 0x2c, 0xe1, 0xc3, 0x42, 0x26, 0x6b, 0xe5, 0x75, 0x9a, 0x58, 0x0a,
-  0x37, 0xe9, 0x55, 0xd1, 0x9e, 0x6b, 0x2e, 0x02, 0xe9, 0x86, 0xe3, 0x53,
-  0xc3, 0xe6, 0xdb, 0x9c, 0xeb, 0x78, 0x1d, 0xde, 0x51, 0xb8, 0xd6, 0x44,
-  0xbf, 0x90, 0x10, 0x6e, 0xb5, 0x70, 0x68, 0x13, 0x0e, 0x3f, 0x9f, 0x18,
-  0xde, 0xf8, 0x7a, 0x49, 0x82, 0x6f, 0xaf, 0xc5, 0xbc, 0x6f, 0x16, 0x67,
-  0x70, 0x37, 0xba, 0x8d, 0x15, 0x9f, 0xc0, 0x52, 0xd5, 0xa4, 0x05, 0x4e,
-  0x80, 0xbf, 0x05, 0xbc, 0x64, 0xa3, 0x24, 0x49, 0xdb, 0xe8, 0x14, 0x66,
-  0x5d, 0x46, 0xe5, 0x16, 0xf0, 0xb1, 0x20, 0xc2, 0xa0, 0x5e, 0x03, 0x31,
-  0x02, 0x58, 0x8a, 0x95, 0x08, 0x84, 0xe2, 0x2c, 0x07, 0x12, 0x0e, 0x55,
-  0xc3, 0x16, 0x6b, 0xb0, 0x15, 0x29, 0x07, 0xa3, 0x6c, 0x45, 0xfa, 0x75,
-  0x07, 0x38, 0x44, 0xae, 0x6f, 0x19, 0x52, 0x35, 0x3f, 0xe5, 0x31, 0x82,
-  0x58, 0x8a, 0x61, 0xc4, 0xe7, 0xf2, 0x70, 0xbe, 0x3f, 0x2c, 0xbb, 0x6a,
-  0x5d, 0xbe, 0xd8, 0x3f, 0x0b, 0xac, 0xf7, 0x8c, 0xa6, 0xb0, 0x32, 0xbb,
-  0x4b, 0x23, 0x8e, 0xe6, 0xae, 0xf5, 0xd9, 0xbf, 0x79, 0x91, 0x6a, 0x19,
-  0x39, 0xc1, 0x3a, 0xb9, 0x6f, 0x6a, 0x6b, 0xa4, 0x69, 0x8d, 0xe9, 0xa4,
-  0x3d, 0x7f, 0x44, 0x97, 0xca, 0xd0, 0xd2, 0x75, 0xb1, 0x38, 0x95, 0xce,
-  0x72, 0x47, 0x8f, 0x0e, 0x68, 0x58, 0x2c, 0x20, 0x5d, 0xd1, 0x28, 0xbf,
-  0x72, 0x4b, 0xd1, 0x14, 0xee, 0xbc, 0xb6, 0x0a, 0xff, 0x0c, 0x0a, 0x70,
-  0x05, 0xe5, 0xd5, 0x38, 0xe9, 0x3c, 0x44, 0x39, 0x11, 0xef, 0xb7, 0xe5,
-  0xd5, 0xae, 0xc0, 0x0e, 0x48, 0x00, 0x7d, 0x7f, 0x05, 0xa0, 0x8e, 0x25,
-  0x5f, 0xdc, 0xa3, 0x07, 0xcb, 0xe9, 0x53, 0xf8, 0xa3, 0x3c, 0x51, 0x78,
-  0xed, 0x60, 0xc0, 0x45, 0xcb, 0x0d, 0x96, 0xb3, 0xbf, 0x24, 0x99, 0x69,
-  0xfc, 0xeb, 0x28, 0xcf, 0x6e, 0xe8, 0xc4, 0xf0, 0x6b, 0x10, 0x6c, 0x79,
-  0x1b, 0xe4, 0xd8, 0x9b, 0x41, 0x8d, 0x0e, 0x86, 0x22, 0x47, 0x37, 0xcd,
-  0x83, 0x0e, 0x95, 0x5c, 0x73, 0x88, 0xfc, 0xf9, 0x11, 0xf0, 0x2e, 0x44,
-  0x35, 0xda, 0x1d, 0x8b, 0xdb, 0x88, 0x2b, 0x59, 0xf9, 0x50, 0x8e, 0x86,
-  0x3a, 0xdc, 0xc0, 0x48, 0xfe, 0xb7, 0x10, 0x93, 0x23, 0x8d, 0x06, 0x31,
-  0xb5, 0xec, 0x7d, 0x85, 0xaa, 0x44, 0x6a, 0x78, 0x4d, 0xe4, 0x25, 0xc2,
-  0x00, 0x7b, 0x2e, 0xeb, 0x26, 0x08, 0xe0, 0xce, 0xf6, 0x83, 0xe8, 0x7c,
-  0x57, 0x54, 0x5d, 0x4c, 0xb3, 0x62, 0x07, 0x9d, 0x78, 0xd0, 0xff, 0x58,
-  0x84, 0x11, 0xc4, 0x0d, 0x12, 0xed, 0x34, 0x25, 0x00, 0x97, 0x4b, 0xa4,
-  0x22, 0x26, 0xfc, 0x2a, 0xbc, 0x4f, 0x48, 0xe0, 0x45, 0x04, 0x9d, 0x1a,
-  0xeb, 0xfe, 0x10, 0xc6, 0x82, 0x47, 0x6d, 0x36, 0x54, 0xa0, 0x3e, 0x24,
-  0x85, 0x37, 0x15, 0x4b, 0x94, 0x8f, 0xcb, 0xe7, 0x63, 0x58, 0x99, 0x90,
-  0x8b, 0x60, 0x68, 0x83, 0xe8, 0x90, 0xcd, 0xbe, 0x2d, 0xca, 0x88, 0xc5,
-  0xb3, 0x62, 0x8e, 0xc8, 0xff, 0x2c, 0x01, 0xda, 0x49, 0x97, 0xb1, 0xaa,
-  0x78, 0x9c, 0x17, 0x3e, 0xb3, 0x00, 0x7f, 0x06, 0x77, 0x75, 0x95, 0xf8,
-  0x5a, 0x35, 0xb4, 0xa2, 0xd4, 0x24, 0x7f, 0x03, 0xba, 0xb6, 0x8f, 0x1c,
-  0xee, 0xd8, 0x5b, 0xef, 0x89, 0xe8, 0x89, 0xdf, 0x55, 0x94, 0xa6, 0x16,
-  0xe8, 0x30, 0x8c, 0x26, 0xf2, 0x0f, 0xf5, 0x82, 0xdf, 0x77, 0x3f, 0xdf,
-  0xd2, 0x9a, 0xaa, 0xc0, 0xb7, 0x0c, 0x9f, 0x41, 0x5d, 0x91, 0x96, 0x2b,
-  0x08, 0x28, 0x00, 0x59, 0xe9, 0x1e, 0xad, 0x63, 0xe4, 0xbe, 0x1a, 0x3c,
-  0xaf, 0x58, 0x9b, 0xe7, 0xe5, 0x74, 0xe6, 0x21, 0x95, 0x0c, 0x19, 0xf6,
-  0xe4, 0xe2, 0xf8, 0x5d, 0xb4, 0x42, 0x77, 0xc0, 0x77, 0xd5, 0xaf, 0xfe,
-  0x15, 0x0d, 0x82, 0xbe, 0x38, 0x3a, 0x1a, 0x42, 0x7f, 0x50, 0x67, 0x7b,
-  0x3d, 0x3b, 0xfc, 0xa8, 0xd4, 0x84, 0x1a, 0x16, 0xb8, 0xf2, 0x34, 0x29,
-  0x59, 0x48, 0xa5, 0xdf, 0xcb, 0x6c, 0x9c, 0x4d, 0x39, 0xb5, 0x92, 0x5f,
-  0x4a, 0xfa, 0x52, 0xf1, 0x1d, 0xf7, 0x3e, 0xc3, 0xc0, 0x4d, 0xc1, 0x9e,
-  0x16, 0x49, 0x23, 0xfc, 0x87, 0x35, 0x64, 0x0c, 0xc0, 0x78, 0x8b, 0xac,
-  0x0d, 0x6e, 0x0f, 0x2e, 0x45, 0x6a, 0x69, 0x2d, 0xa4, 0xd4, 0x10, 0xc5,
-  0xb1, 0x0c, 0xaa, 0xe6, 0x94, 0x9b, 0x14, 0xc1, 0x8c, 0x8d, 0xb4, 0x56,
-  0x2d, 0x41, 0x56, 0x41, 0x38, 0x02, 0x20, 0xdc, 0x24, 0xcb, 0xe1, 0x68,
-  0x0c, 0xf0, 0x75, 0x18, 0x25, 0x6e, 0x89, 0x00, 0x1f, 0x1e, 0xde, 0x43,
-  0xf3, 0x28, 0xdd, 0x5d, 0x67, 0x12, 0x5f, 0x83, 0x65, 0x66, 0xf6, 0x24,
-  0x81, 0x1c, 0x70, 0x53, 0x08, 0xf6, 0x8a, 0x10, 0x84, 0xe7, 0x29, 0xe1,
-  0x46, 0x35, 0x23, 0xf4, 0x9c, 0x76, 0x63, 0x39, 0x66, 0x3d, 0xb1, 0xb2,
-  0xd2, 0xe6, 0x1c, 0xa4, 0x57, 0x2b, 0x70, 0xcb, 0xda, 0x35, 0x14, 0x1e,
-  0xd1, 0xe3, 0xca, 0x49, 0x5b, 0xd0, 0x73, 0x43, 0x39, 0x21, 0x8a, 0xfb,
-  0x45, 0x7a, 0x89, 0xaf, 0x86, 0xae, 0xd5, 0x94, 0x25, 0xcf, 0x8d, 0xef,
-  0x87, 0x40, 0x31, 0x79, 0x5f, 0xb4, 0x56, 0xd9, 0x7c, 0x4a, 0xff, 0xa8,
-  0x66, 0xa5, 0xf1, 0x14, 0xff, 0xb7, 0x8a, 0xd2, 0x19, 0x0d, 0x57, 0x45,
-  0xce, 0xd6, 0x58, 0xd5, 0xef, 0x25, 0xe7, 0x45, 0x85, 0xd2, 0x4c, 0x1f,
-  0x0a, 0x71, 0xbd, 0x8a, 0x72, 0x92, 0x2d, 0xc5, 0x35, 0x0d, 0x43, 0x72,
-  0x6e, 0x17, 0xfd, 0xdf, 0xff, 0xd1, 0x74, 0xba, 0xff, 0xf4, 0xb3, 0xe8,
-  0x3a, 0x12, 0x49, 0xec, 0x1d, 0x3d, 0x46, 0x5c, 0x85, 0x47, 0x6e, 0xe4,
-  0x6d, 0xe4, 0x44, 0x1e, 0x99, 0xa2, 0x1c, 0xb2, 0xba, 0xbe, 0xa3, 0x41,
-  0x27, 0x7a, 0x4b, 0xeb, 0xd8, 0xec, 0x66, 0x00, 0x14, 0x78, 0x50, 0xc2,
-  0x39, 0x40, 0x2a, 0x53, 0xd0, 0xa4, 0xc9, 0x2a, 0xec, 0x2a, 0x8b, 0xbb,
-  0xaf, 0x82, 0x88, 0x22, 0xe2, 0x59, 0x4c, 0xfb, 0x18, 0x3f, 0xdf, 0x3d,
-  0xc7, 0x52, 0xec, 0xab, 0x09, 0x9e, 0x22, 0x1b, 0xad, 0xc1, 0xcb, 0x7f,
-  0xa7, 0x73, 0xd7, 0x2b, 0xef, 0xb2, 0x7f, 0x0c, 0xd8, 0xf1, 0x07, 0xd6,
-  0xdc, 0xcf, 0x04, 0xb3, 0xf5, 0xc3, 0x27, 0xdb, 0xac, 0xb6, 0x77, 0x9a,
-  0xd8, 0xb5, 0x58, 0x01, 0xdb, 0x73, 0x97, 0x8e, 0xb0, 0x02, 0xab, 0xa5,
-  0xda, 0x1d, 0xf7, 0xd2, 0xe3, 0x4b, 0xe2, 0x1f, 0x03, 0xfe, 0xf7, 0xa7,
-  0xed, 0xfe, 0x8b, 0x9f, 0x5d, 0xaf, 0x9f, 0x6c, 0x7f, 0xf8, 0x64, 0xa7,
-  0xd3, 0x8a, 0xf9, 0xcb, 0x96, 0x8d, 0xa5, 0x01, 0x8f, 0x9a, 0xf6, 0xa7,
-  0xe5, 0x61, 0xc5, 0x17, 0xa7, 0x0a, 0xa5, 0x07, 0xae, 0x03, 0xb0, 0x66,
-  0xd3, 0xcb, 0xc9, 0x3a, 0xce, 0x47, 0xa0, 0x66, 0x85, 0xe5, 0x1e, 0x2b,
-  0xb6, 0x28, 0x8e, 0x19, 0x90, 0x12, 0x88, 0x50, 0x4d, 0x25, 0x94, 0xc8,
-  0xec, 0x94, 0x0d, 0x93, 0x28, 0x10, 0x3a, 0x26, 0x0f, 0x74, 0x25, 0x0a,
-  0x4a, 0xc8, 0xc0, 0x39, 0xc5, 0x4c, 0xe2, 0xb4, 0x12, 0xb2, 0x92, 0x45,
-  0xb5, 0xee, 0x84, 0x03, 0xce, 0xb2, 0xd9, 0x68, 0x53, 0x83, 0xbc, 0xc2,
-  0xe1, 0x89, 0x5f, 0x0b, 0xf4, 0xe1, 0x48, 0x0b, 0xd5, 0xfb, 0x83, 0x54,
-  0x43, 0xea, 0x78, 0xe2, 0x18, 0xc5, 0x3a, 0xa3, 0xa0, 0xe0, 0xb7, 0x82,
-  0xfd, 0x3a, 0xf8, 0x2b, 0x7c, 0x75, 0x27, 0xc0, 0xdf, 0x0d, 0x80, 0x29,
-  0xe4, 0xa3, 0x79, 0x87, 0x54, 0x88, 0x8b, 0x16, 0xbe, 0xae, 0x9c, 0xa3,
-  0xa7, 0x39, 0x87, 0x44, 0xdd, 0x00, 0x2c, 0x28, 0x9b, 0x58, 0x04, 0x83,
-  0x8d, 0xb6, 0x88, 0xd1, 0xb0, 0x2d, 0x4b, 0x4a, 0xd3, 0xf8, 0xad, 0xa8,
-  0x10, 0x60, 0x54, 0xd8, 0xd8, 0x14, 0x27, 0x24, 0x09, 0xed, 0x09, 0x8d,
-  0xa8, 0x55, 0x2d, 0xac, 0xd8, 0x73, 0xe8, 0x39, 0xc9, 0xb4, 0x48, 0x06,
-  0xff, 0x56, 0x3a, 0xac, 0x6c, 0x51, 0x3f, 0x6e, 0xf8, 0x2a, 0x2b, 0x0e,
-  0x69, 0x84, 0xac, 0x54, 0xeb, 0x2d, 0x4a, 0xf1, 0x07, 0x57, 0xd0, 0xd0,
-  0xcd, 0xa9, 0xd0, 0xf8, 0xbe, 0x46, 0x5e, 0x48, 0xec, 0xae, 0x0f, 0xc9,
-  0x9e, 0x05, 0xd1, 0xd7, 0x48, 0x45, 0xe8, 0x1e, 0x29, 0xb5, 0xce, 0x47,
-  0x82, 0x88, 0x82, 0x4c, 0x92, 0xdc, 0xe8, 0xbd, 0x26, 0xd0, 0xa0, 0xbb,
-  0x2b, 0x2b, 0xea, 0x3a, 0x06, 0x66, 0x0c, 0x70, 0x0c, 0x7e, 0x25, 0x85,
-  0x35, 0xe4, 0xb0, 0x85, 0x93, 0x5f, 0x11, 0xc4, 0x43, 0xd3, 0x52, 0x77,
-  0x11, 0x80, 0x21, 0x50, 0x62, 0xd6, 0xf0, 0x61, 0x71, 0x47, 0xc3, 0xc8,
-  0xc5, 0x7b, 0xd3, 0x21, 0x5e, 0xd2, 0xef, 0x44, 0x59, 0xee, 0x21, 0x22,
-  0xea, 0x93, 0x7a, 0x14, 0x17, 0xed, 0x55, 0xd5, 0xcf, 0xcd, 0x16, 0xa9,
-  0xe8, 0xf5, 0xe2, 0x3a, 0x27, 0x89, 0xe8, 0x11, 0x14, 0x07, 0x7a, 0x4a,
-  0x9e, 0x71, 0x4c, 0x39, 0x40, 0x27, 0xf8, 0x0d, 0x51, 0x04, 0x38, 0xdd,
-  0xe0, 0xd9, 0xd6, 0x76, 0xa3, 0xaa, 0x8c, 0xaf, 0x50, 0x9f, 0x21, 0x10,
-  0x87, 0xed, 0x39, 0x5c, 0x0d, 0x21, 0x8a, 0x76, 0x5e, 0x6e, 0xbf, 0xdc,
-  0xdc, 0xde, 0x1a, 0x3c, 0x1b, 0xec, 0xa8, 0x48, 0x0d, 0x24, 0x4a, 0x92,
-  0xf4, 0xb9, 0xa0, 0x53, 0x84, 0x80, 0xa1, 0xf6, 0x18, 0x1b, 0x56, 0x1b,
-  0xa9, 0xb9, 0x00, 0x04, 0x57, 0x8b, 0x4b, 0xfb, 0xdb, 0x3e, 0xe6, 0x70,
-  0x20, 0x17, 0x66, 0x62, 0x05, 0x49, 0x1a, 0x9e, 0xf7, 0x79, 0x9f, 0x87,
-  0xa2, 0x12, 0xe3, 0x52, 0x70, 0xae, 0x47, 0x29, 0x09, 0x3a, 0x25, 0xd7,
-  0x43, 0xe4, 0x2c, 0x71, 0x92, 0x82, 0x0d, 0x04, 0x89, 0xd3, 0xa7, 0xb3,
-  0xb0, 0xa8, 0xea, 0x8a, 0x10, 0x4d, 0xb3, 0xa0, 0x22, 0xc3, 0xda, 0x4e,
-  0x06, 0xf2, 0x52, 0x53, 0xc9, 0x5a, 0x06, 0xac, 0x0d, 0xc9, 0x07, 0xa8,
-  0x23, 0xf4, 0x8d, 0x25, 0x4d, 0xc7, 0xad, 0x91, 0xae, 0x1a, 0x86, 0x23,
-  0x2a, 0x74, 0x2c, 0x51, 0x54, 0x58, 0x4a, 0xa8, 0x47, 0xfa, 0x81, 0xd0,
-  0xb0, 0x88, 0x91, 0x82, 0x99, 0x39, 0x49, 0xdb, 0x50, 0xe9, 0x52, 0x57,
-  0xee, 0xc2, 0xef, 0xb8, 0xe2, 0xa2, 0xb0, 0x8b, 0x5a, 0x54, 0x44, 0x6f,
-  0xc0, 0x6d, 0x89, 0x36, 0x6a, 0x9c, 0x89, 0xc7, 0xa0, 0xfc, 0x84, 0x26,
-  0x76, 0xfe, 0xbf, 0x44, 0x13, 0x3b, 0xff, 0x3f, 0x4d, 0xfc, 0x9b, 0x69,
-  0xe2, 0x55, 0x8d, 0x26, 0xa0, 0x72, 0xd0, 0x3d, 0xc5, 0x8a, 0xca, 0xa3,
-  0x94, 0xb1, 0x60, 0xaf, 0x2a, 0x27, 0xa1, 0xa4, 0x92, 0xaf, 0x58, 0xb3,
-  0xf8, 0x9b, 0x4e, 0xab, 0xa5, 0x23, 0x67, 0xb3, 0x65, 0x7d, 0x76, 0x73,
-  0xab, 0x54, 0xa9, 0xfa, 0x49, 0x19, 0xa4, 0x78, 0xa8, 0x85, 0xc2, 0x62,
-  0xda, 0x04, 0x2e, 0x56, 0xe2, 0x94, 0x39, 0x3c, 0x1d, 0xf7, 0x75, 0x3b,
-  0xa1, 0x6d, 0xba, 0xa0, 0xc3, 0x9c, 0x53, 0x7d, 0xfb, 0x24, 0x01, 0x2f,
-  0x1a, 0xe5, 0xc1, 0x77, 0x9a, 0x53, 0x06, 0x42, 0xdb, 0xa3, 0x13, 0xe6,
-  0xce, 0x57, 0x46, 0xa4, 0x45, 0xe1, 0x4c, 0x6d, 0x66, 0xab, 0xc4, 0x73,
-  0x99, 0xa4, 0xce, 0xf1, 0xbd, 0x37, 0x1a, 0x73, 0xbb, 0xbe, 0x40, 0x1d,
-  0xb4, 0x48, 0x5e, 0x9f, 0xa0, 0x53, 0xb9, 0x8a, 0x1b, 0x33, 0x77, 0x78,
-  0xa3, 0x03, 0x7d, 0x2e, 0xb5, 0x5a, 0x90, 0x96, 0x15, 0x5d, 0x1f, 0xad,
-  0x6e, 0x0f, 0x26, 0xd7, 0xd4, 0x3f, 0x0b, 0xe9, 0x88, 0x47, 0x58, 0xab,
-  0xd8, 0x2d, 0x8b, 0x35, 0x81, 0x22, 0xdc, 0xba, 0x5a, 0xcd, 0xe5, 0x12,
-  0xad, 0xb9, 0x3e, 0x02, 0xa9, 0x5e, 0xf9, 0x2f, 0xac, 0x96, 0x8c, 0x61,
-  0xd5, 0x72, 0x69, 0xa7, 0xad, 0x61, 0xaa, 0xe1, 0x7a, 0x35, 0xa6, 0xb6,
-  0xca, 0x69, 0xbc, 0x82, 0x16, 0x56, 0x39, 0x8e, 0xeb, 0xf3, 0x6b, 0x8b,
-  0x1a, 0x6a, 0x9f, 0xa1, 0x54, 0x24, 0x36, 0x1f, 0x77, 0xe8, 0x97, 0xb4,
-  0x2a, 0x77, 0x36, 0x51, 0x8c, 0xa0, 0x6e, 0x64, 0x75, 0xe3, 0xd1, 0x60,
-  0xf7, 0x0a, 0x71, 0x3c, 0x7a, 0x1b, 0x38, 0x63, 0xc3, 0x23, 0xfb, 0xea,
-  0x50, 0xc3, 0x65, 0xf2, 0x4d, 0xcb, 0xd6, 0xbf, 0xbe, 0xaf, 0xce, 0xdc,
-  0x51, 0xdd, 0x55, 0xf4, 0x55, 0x99, 0x53, 0x8b, 0x99, 0xb1, 0xb1, 0x9d,
-  0xdb, 0x83, 0x2d, 0x12, 0xca, 0xf8, 0x37, 0xe8, 0x91, 0xbb, 0x6c, 0xb5,
-  0xf8, 0xf9, 0x8b, 0x06, 0xae, 0xba, 0xc1, 0xb5, 0x07, 0xb8, 0x83, 0x98,
-  0x60, 0xc4, 0xef, 0xdb, 0x10, 0x0d, 0xfa, 0xc4, 0xe7, 0x83, 0xa8, 0x27,
-  0x77, 0x35, 0x4a, 0x54, 0x5a, 0x06, 0x20, 0x51, 0x9c, 0xb2, 0x81, 0x97,
-  0xb7, 0xb7, 0x3e, 0xdf, 0x6a, 0x4d, 0x70, 0x03, 0x33, 0x6f, 0x29, 0xba,
-  0xa4, 0xd9, 0x98, 0xb1, 0x0b, 0x72, 0x96, 0xc1, 0x89, 0x45, 0xa9, 0xdd,
-  0x15, 0x86, 0xf0, 0xa9, 0xfe, 0xfd, 0xa6, 0xae, 0x03, 0x16, 0x74, 0xa3,
-  0xa7, 0x59, 0x73, 0x71, 0x69, 0x7e, 0x07, 0x97, 0xd1, 0xb2, 0x7f, 0x7a,
-  0x72, 0x72, 0xb8, 0x4f, 0xf7, 0xd4, 0x75, 0x0e, 0xc7, 0xab, 0x33, 0x13,
-  0xb7, 0xe9, 0x96, 0x1e, 0x02, 0x5e, 0x46, 0xc2, 0xab, 0x64, 0xf6, 0xc5,
-  0xd0, 0xb4, 0x52, 0xe3, 0x41, 0x2d, 0xe4, 0xba, 0x3d, 0xd8, 0x0e, 0xf6,
-  0x6c, 0x61, 0xc3, 0x2d, 0x39, 0x19, 0x65, 0xda, 0x1a, 0xfd, 0x6e, 0x7d,
-  0xca, 0xe4, 0x4d, 0x24, 0x5e, 0x31, 0xdd, 0x46, 0xc2, 0x06, 0xae, 0x90,
-  0x16, 0x91, 0xc2, 0x9a, 0xc4, 0x14, 0x14, 0x9a, 0x4f, 0x97, 0x48, 0xfe,
-  0x90, 0x11, 0x45, 0x6e, 0x7d, 0x14, 0xcc, 0xa6, 0x65, 0x85, 0x1c, 0x1c,
-  0x25, 0xa7, 0x00, 0xd3, 0x46, 0x4e, 0x2d, 0xdc, 0x3f, 0x2d, 0xb5, 0x4c,
-  0x1c, 0xa0, 0x5c, 0xa1, 0x2e, 0xbb, 0x28, 0xc5, 0x42, 0x82, 0xa1, 0xa8,
-  0x97, 0xc6, 0x2d, 0x49, 0xbd, 0xc6, 0x0b, 0xea, 0x08, 0x31, 0xda, 0x85,
-  0x80, 0x3c, 0xba, 0x33, 0x54, 0x21, 0x04, 0xdb, 0x43, 0x9f, 0x72, 0xd2,
-  0x0c, 0x1a, 0x75, 0x66, 0x42, 0x17, 0xfa, 0xab, 0x76, 0x49, 0x49, 0x27,
-  0xd0, 0x70, 0x72, 0xf5, 0x20, 0x5a, 0x4c, 0x93, 0xf2, 0x90, 0x96, 0x72,
-  0xac, 0x7a, 0x0e, 0x24, 0xe4, 0x2d, 0x9e, 0x0b, 0x3d, 0xe9, 0x5a, 0x39,
-  0x52, 0xca, 0x2a, 0xc7, 0x72, 0x39, 0x7a, 0x04, 0xec, 0x8e, 0x55, 0x24,
-  0xb1, 0xd9, 0x3e, 0x8a, 0x73, 0xe7, 0x02, 0x14, 0xc4, 0x26, 0xb9, 0x12,
-  0x63, 0xfb, 0xdf, 0x8e, 0x73, 0x67, 0x95, 0xc8, 0x25, 0xf9, 0x6c, 0x55,
-  0x5c, 0xb6, 0x55, 0x52, 0x85, 0x1d, 0xbe, 0xa8, 0x1d, 0x13, 0x2d, 0xf7,
-  0x97, 0xe5, 0x9b, 0x53, 0x08, 0x9c, 0x9c, 0x14, 0x95, 0xb1, 0xe1, 0x4c,
-  0x39, 0x6b, 0x0b, 0x85, 0x8c, 0x7d, 0xc1, 0x6f, 0x6a, 0x5a, 0xc5, 0x45,
-  0xb5, 0x83, 0xcf, 0x7c, 0xb0, 0xa5, 0x22, 0xaf, 0x09, 0xc4, 0xa3, 0x55,
-  0x4a, 0x3c, 0x9a, 0x37, 0xa0, 0xa0, 0xf8, 0x89, 0xb1, 0xc7, 0xf3, 0xd5,
-  0x22, 0x6f, 0x72, 0x0b, 0x08, 0x9b, 0x74, 0x45, 0x0f, 0x8d, 0x50, 0x18,
-  0x29, 0xa9, 0x3d, 0xff, 0x47, 0x6a, 0x7b, 0x77, 0x03, 0x87, 0x97, 0x8b,
-  0x3e, 0x97, 0x4c, 0xf4, 0xbc, 0xb4, 0xe4, 0xe1, 0x45, 0x58, 0x87, 0x3d,
-  0x2e, 0x6e, 0x8a, 0x95, 0x00, 0xb1, 0x0a, 0xd7, 0x83, 0x60, 0x3d, 0x24,
-  0x4e, 0x06, 0xe8, 0xd1, 0xd6, 0xaa, 0x40, 0xb6, 0x94, 0xe1, 0x28, 0x99,
-  0x12, 0xab, 0xcd, 0xb9, 0x2d, 0x6a, 0x20, 0xde, 0x35, 0x4c, 0x94, 0x0e,
-  0x46, 0xba, 0x61, 0xba, 0x94, 0xaf, 0x07, 0x49, 0xd4, 0x61, 0x80, 0xe9,
-  0x4e, 0x18, 0xef, 0x2f, 0xee, 0x31, 0xf7, 0x2a, 0x17, 0x4a, 0xa7, 0xa1,
-  0xba, 0xb1, 0xb6, 0x18, 0x7c, 0x8c, 0xcf, 0xaa, 0x79, 0x84, 0xb7, 0x6c,
-  0xfd, 0xfd, 0x3c, 0xbd, 0xc7, 0xe5, 0xd0, 0xc4, 0xa6, 0x74, 0xf3, 0x7e,
-  0x64, 0x54, 0xdb, 0xaf, 0x76, 0x06, 0xdb, 0x2f, 0x3f, 0x1f, 0x90, 0xe2,
-  0xb6, 0x5d, 0x19, 0x1d, 0x62, 0x38, 0x38, 0xea, 0x22, 0x6c, 0xa7, 0xe5,
-  0x5a, 0x6d, 0x73, 0x12, 0x86, 0x1d, 0xcc, 0x1e, 0x06, 0x41, 0xb8, 0x61,
-  0xa3, 0x0b, 0x0d, 0x49, 0xac, 0xb7, 0xdc, 0x0f, 0xcc, 0xfb, 0x4a, 0x6a,
-  0xd0, 0x29, 0xda, 0x4a, 0x90, 0x1b, 0x4a, 0x60, 0x50, 0x79, 0x7c, 0xd2,
-  0x3e, 0xa0, 0xd5, 0xe5, 0xc8, 0x5d, 0xff, 0xff, 0xc2, 0x71, 0xb7, 0x4a,
-  0x3c, 0x07, 0xa9, 0x8f, 0x9f, 0x87, 0xf6, 0xe3, 0xca, 0xcd, 0x4b, 0x11,
-  0xf2, 0xd3, 0xf3, 0x8b, 0x20, 0x99, 0x4f, 0x58, 0x42, 0x5c, 0xdc, 0x8a,
-  0x55, 0xc9, 0xc5, 0x29, 0x20, 0x50, 0x4a, 0x6f, 0x99, 0x26, 0x24, 0x32,
-  0x0a, 0x9f, 0x5b, 0xfe, 0x6d, 0x70, 0xab, 0xa2, 0x71, 0x97, 0x44, 0x66,
-  0xc2, 0x30, 0x5a, 0xec, 0x27, 0x8b, 0xbc, 0xd4, 0x4e, 0xe4, 0x7d, 0x98,
-  0x37, 0x69, 0xcd, 0xa6, 0x3e, 0x37, 0x9a, 0xdf, 0xff, 0xe3, 0x1f, 0x3d,
-  0xd3, 0x1a, 0x72, 0x72, 0x83, 0x16, 0xfa, 0x82, 0x42, 0xf8, 0xc2, 0x3b,
-  0x31, 0x04, 0x49, 0x20, 0xea, 0xec, 0xfe, 0x84, 0x14, 0x88, 0x9f, 0xfb,
-  0x3f, 0xd1, 0x9f, 0x3f, 0x77, 0xdc, 0xc5, 0x00, 0xc5, 0x4c, 0x0c, 0xb7,
-  0x6e, 0x39, 0x64, 0xcb, 0x7a, 0x78, 0x86, 0x2b, 0x8d, 0xc8, 0xe5, 0xc0,
-  0x1b, 0xc8, 0xc1, 0x29, 0x38, 0x9a, 0x92, 0x62, 0x2b, 0x53, 0x56, 0x2f,
-  0x87, 0x24, 0xe1, 0x4b, 0x65, 0x1d, 0xa2, 0x1d, 0xb7, 0xba, 0x9a, 0xb8,
-  0xa2, 0xe9, 0xb3, 0x78, 0xb1, 0x67, 0x56, 0x5a, 0xb6, 0x42, 0xdf, 0x09,
-  0x23, 0x8a, 0x2d, 0x57, 0x5f, 0x6e, 0x24, 0x46, 0x6f, 0x53, 0x0b, 0xb9,
-  0x7c, 0xb0, 0xe6, 0xf2, 0x07, 0x39, 0x18, 0x5f, 0xab, 0xa7, 0x4b, 0xa8,
-  0xaa, 0x78, 0xed, 0x13, 0x17, 0xc6, 0x94, 0xce, 0xd9, 0x72, 0x6f, 0x50,
-  0x1c, 0x79, 0x5a, 0xdc, 0xf0, 0x0c, 0x35, 0xe7, 0x35, 0x92, 0xa4, 0xec,
-  0xb5, 0xc0, 0x7e, 0x80, 0x91, 0x59, 0x86, 0x15, 0xc7, 0x55, 0x1a, 0xbc,
-  0x5c, 0x70, 0x2f, 0xfc, 0xd5, 0x39, 0xc6, 0xa4, 0xce, 0x92, 0x9a, 0x7f,
-  0x05, 0xf2, 0xc9, 0x43, 0xe2, 0x65, 0x86, 0xb7, 0x15, 0xa2, 0xa6, 0x98,
-  0xb3, 0x41, 0x30, 0x7c, 0x5a, 0xf4, 0xf9, 0x10, 0x88, 0xd1, 0x45, 0x7a,
-  0xa3, 0x6e, 0x72, 0x3c, 0x31, 0xf8, 0x4f, 0x4d, 0x85, 0x04, 0x95, 0x82,
-  0x64, 0x3c, 0x34, 0x9b, 0xd7, 0x2d, 0x9a, 0xb0, 0x40, 0x41, 0x90, 0x79,
-  0x0d, 0x2f, 0x4b, 0x73, 0x58, 0x92, 0x38, 0x27, 0x06, 0xc7, 0xa6, 0xf9,
-  0x60, 0xb6, 0xff, 0x93, 0xda, 0x06, 0x3a, 0x1f, 0xa3, 0x49, 0x62, 0x2a,
-  0x6d, 0x57, 0xe0, 0xe6, 0x50, 0xee, 0xc1, 0x21, 0x92, 0xf7, 0x98, 0xd8,
-  0xf2, 0x51, 0x5a, 0xe6, 0xb1, 0x46, 0x45, 0x6a, 0xd6, 0x79, 0x20, 0x7f,
-  0x28, 0xe4, 0xfc, 0x70, 0x55, 0xd6, 0xf9, 0x20, 0xfa, 0x9f, 0xe8, 0x54,
-  0xdf, 0x96, 0xc8, 0x1d, 0x64, 0x2d, 0x7d, 0x75, 0xf8, 0xf6, 0xf4, 0xfc,
-  0xb0, 0x9a, 0xea, 0x23, 0xc9, 0xa7, 0x51, 0x5b, 0x5d, 0x9d, 0x75, 0xd4,
-  0x13, 0x35, 0x13, 0x0d, 0xd6, 0xcc, 0xd2, 0x58, 0xcf, 0xbe, 0x3f, 0x08,
-  0xce, 0xa4, 0xa5, 0xca, 0x5b, 0xa3, 0x3d, 0xf1, 0xb2, 0x34, 0x50, 0xc8,
-  0x89, 0xc5, 0x6e, 0xa0, 0x3e, 0xac, 0x60, 0xdf, 0xd9, 0xf8, 0x04, 0x8e,
-  0x01, 0xe5, 0x68, 0xb4, 0x7e, 0xb4, 0x04, 0xd7, 0x14, 0x05, 0x9b, 0x76,
-  0x5c, 0xa3, 0x2d, 0x58, 0x8d, 0x0c, 0xfb, 0x81, 0x92, 0x6e, 0x6a, 0x3b,
-  0x89, 0x23, 0x78, 0x82, 0xd8, 0x39, 0x34, 0x88, 0x9a, 0x1d, 0x8d, 0x74,
-  0x1d, 0xd0, 0x4b, 0xa3, 0x76, 0x82, 0x40, 0xfd, 0xb0, 0xbd, 0x5c, 0x7c,
-  0x06, 0xa6, 0x65, 0x28, 0x76, 0x43, 0x14, 0x62, 0x25, 0x48, 0xa9, 0x55,
-  0x87, 0x4d, 0xdd, 0xbc, 0xa0, 0xdd, 0xfa, 0x6a, 0xe7, 0xeb, 0xc5, 0x46,
-  0xa5, 0x04, 0xad, 0x2d, 0x9e, 0x15, 0x26, 0xfb, 0x63, 0x37, 0x5a, 0xb7,
-  0x78, 0xa0, 0x16, 0x04, 0x07, 0x07, 0xca, 0x6b, 0xa9, 0x17, 0x1b, 0xae,
-  0x2e, 0xd5, 0x8a, 0x4a, 0x54, 0x6e, 0xd6, 0x2b, 0x73, 0xc3, 0x4c, 0x86,
-  0x30, 0x30, 0x33, 0x3b, 0xda, 0x86, 0xce, 0xe5, 0x8a, 0x75, 0x4b, 0x3b,
-  0xbd, 0xd5, 0x30, 0x22, 0x3e, 0xcb, 0xc8, 0xd5, 0x60, 0x1b, 0x29, 0x84,
-  0xf0, 0x8f, 0x16, 0x50, 0x2b, 0xb9, 0xa9, 0xc5, 0xc3, 0xbc, 0x84, 0x5c,
-  0x25, 0x45, 0x00, 0xc6, 0x59, 0xce, 0x4b, 0x5a, 0x6b, 0x0e, 0xf0, 0x0f,
-  0x6e, 0xd3, 0x10, 0xe7, 0x7d, 0xfe, 0x76, 0xff, 0xd5, 0x8b, 0x57, 0x90,
-  0x0e, 0x51, 0x11, 0x48, 0x93, 0x0d, 0x34, 0xf2, 0x03, 0xb9, 0xb4, 0x7e,
-  0xc8, 0x0d, 0xbe, 0xa0, 0x2d, 0x41, 0x90, 0x64, 0xd9, 0x66, 0x2a, 0x59,
-  0x0e, 0xc3, 0xa0, 0x89, 0x41, 0x2b, 0x98, 0x54, 0xdb, 0x05, 0xbb, 0xaa,
-  0x1c, 0xa6, 0x5d, 0x23, 0x18, 0x7d, 0x2a, 0xb1, 0xe9, 0x5a, 0x1c, 0xd9,
-  0x34, 0x2a, 0xd2, 0xef, 0xe7, 0x50, 0x78, 0x74, 0x13, 0x7b, 0x8e, 0xea,
-  0x5c, 0x31, 0xc2, 0xa2, 0xad, 0xb9, 0xbf, 0x56, 0xcf, 0xb3, 0x52, 0x5d,
-  0x90, 0x3e, 0x3b, 0xab, 0x56, 0xe0, 0x65, 0xcc, 0x85, 0xb7, 0x30, 0x28,
-  0xb7, 0xd9, 0x5b, 0xd4, 0x28, 0x86, 0xb0, 0x26, 0xce, 0x27, 0x9c, 0x4e,
-  0x03, 0xf2, 0x6a, 0xe9, 0xaf, 0x21, 0x02, 0x8e, 0xaf, 0xaf, 0xf2, 0x85,
-  0x64, 0xb5, 0xb4, 0x81, 0x21, 0x86, 0x50, 0x35, 0xf2, 0xa8, 0x11, 0xbb,
-  0x43, 0x83, 0x97, 0x77, 0x8f, 0x0e, 0x5c, 0xf1, 0x5f, 0xef, 0x3f, 0x1d,
-  0x3d, 0xb4, 0x37, 0xe7, 0x1e, 0x03, 0xb1, 0x79, 0xa6, 0xe8, 0x9a, 0xf2,
-  0x82, 0xf5, 0xe8, 0xc1, 0xac, 0xa8, 0xfc, 0x5d, 0x7b, 0x73, 0xda, 0x8a,
-  0xe8, 0x9b, 0xd2, 0x86, 0x35, 0x8c, 0x98, 0x21, 0x2b, 0x8a, 0xc4, 0x1b,
-  0xc3, 0xd9, 0x7f, 0xd6, 0x4d, 0xb3, 0xee, 0xd6, 0x35, 0xc9, 0xe9, 0x22,
-  0xab, 0x3f, 0xb9, 0x16, 0x33, 0x98, 0x1a, 0xad, 0x32, 0x89, 0x66, 0x5c,
-  0x17, 0x61, 0xaa, 0x26, 0xda, 0x19, 0x01, 0x1f, 0xb3, 0x8d, 0x94, 0xeb,
-  0xa6, 0x15, 0xd1, 0xe3, 0xd0, 0x3c, 0xde, 0x0c, 0xa7, 0x30, 0x8f, 0xb2,
-  0x71, 0x19, 0xcc, 0x80, 0x1f, 0x68, 0x6f, 0x4e, 0x65, 0x85, 0xe6, 0xcc,
-  0x38, 0x0b, 0x13, 0x31, 0xe7, 0x8f, 0xcf, 0x4c, 0x1e, 0x6c, 0x6c, 0x32,
-  0x7d, 0x28, 0xac, 0xa8, 0xb1, 0xc3, 0xab, 0x67, 0xd6, 0xb6, 0xc3, 0x18,
-  0x41, 0x7d, 0x83, 0x4d, 0xce, 0xcc, 0x65, 0x2b, 0xfb, 0xed, 0xcd, 0xb9,
-  0x1d, 0xc6, 0x93, 0x8f, 0x6e, 0xb0, 0xf6, 0xd2, 0x58, 0x85, 0xe9, 0x5c,
-  0x01, 0xd8, 0x3e, 0x48, 0xce, 0x28, 0x27, 0x83, 0x96, 0x1f, 0x1e, 0x5f,
-  0x90, 0xe9, 0xdc, 0xa0, 0x59, 0x38, 0xd7, 0xd1, 0x1f, 0x5c, 0x0d, 0x85,
-  0x88, 0xab, 0xa0, 0x2d, 0x91, 0x58, 0x20, 0x56, 0x90, 0xbd, 0xef, 0xcf,
-  0x63, 0x79, 0x2c, 0xb2, 0x74, 0x6e, 0xb1, 0xb2, 0xca, 0xcb, 0x83, 0x21,
-  0xe2, 0xb9, 0x15, 0x0b, 0xd2, 0x9a, 0x30, 0x39, 0xbb, 0x61, 0xf0, 0x45,
-  0x77, 0xbb, 0x7d, 0x58, 0xad, 0xe6, 0x80, 0x8e, 0xe5, 0x71, 0x4f, 0xc7,
-  0x32, 0x2b, 0xa7, 0xbf, 0xbb, 0x44, 0xc3, 0xa7, 0x77, 0xbb, 0xda, 0xa5,
-  0x3b, 0x93, 0xf5, 0xf1, 0x2d, 0xee, 0x26, 0xd6, 0x39, 0xff, 0x6a, 0x1d,
-  0x87, 0x20, 0x9c, 0xf1, 0xa8, 0xc8, 0xa6, 0xcb, 0x52, 0xa2, 0x23, 0xc2,
-  0xb2, 0xe2, 0xc4, 0x5d, 0x57, 0x2c, 0x05, 0x22, 0x83, 0xec, 0x6e, 0x5f,
-  0x9d, 0x39, 0x97, 0x0b, 0x8c, 0xaf, 0x01, 0xd0, 0x60, 0x3b, 0x56, 0x2f,
-  0x8e, 0x3e, 0xed, 0x87, 0x28, 0xd0, 0xb2, 0x9e, 0x79, 0xe5, 0x2d, 0x0b,
-  0xb4, 0x9a, 0xe1, 0x69, 0xaf, 0xb5, 0x03, 0x31, 0x49, 0x18, 0xc2, 0x49,
-  0x49, 0x81, 0xa3, 0x41, 0xa4, 0x21, 0xe3, 0x7b, 0x8f, 0x11, 0xd2, 0xca,
-  0x35, 0xce, 0x67, 0x4f, 0x1c, 0x72, 0x7a, 0xc0, 0xcf, 0x8a, 0xa1, 0x66,
-  0x82, 0x59, 0x35, 0x4e, 0xa6, 0x1e, 0xe3, 0x15, 0x2b, 0xbf, 0x6a, 0x04,
-  0x15, 0x2a, 0x7c, 0x6c, 0x24, 0xfc, 0x60, 0xdb, 0x60, 0xfc, 0xd2, 0xb2,
-  0x9c, 0x82, 0x04, 0x3d, 0x1b, 0x59, 0x7b, 0x73, 0x3a, 0x5c, 0xff, 0x9e,
-  0x2e, 0x4f, 0xcf, 0x2c, 0x6b, 0x13, 0xb5, 0x5d, 0xb3, 0x6e, 0xda, 0xa4,
-  0x0d, 0x3b, 0xe0, 0xbf, 0x88, 0x41, 0xb0, 0xfe, 0x31, 0x9d, 0x57, 0x82,
-  0x59, 0xa8, 0xc7, 0x6c, 0x06, 0x78, 0x80, 0xf6, 0xe8, 0x3d, 0x89, 0xeb,
-  0x0f, 0xf1, 0x01, 0xdc, 0xb6, 0x0b, 0x92, 0xee, 0x34, 0x09, 0x2b, 0xfb,
-  0xdd, 0x85, 0x28, 0x49, 0x2d, 0x96, 0x32, 0x2b, 0x56, 0x13, 0x03, 0x25,
-  0x89, 0xba, 0x46, 0x82, 0x89, 0xa2, 0x01, 0x23, 0x59, 0xa5, 0x30, 0x05,
-  0x4d, 0xec, 0x4b, 0x4e, 0x14, 0x96, 0xc7, 0x1b, 0x05, 0x13, 0x38, 0x80,
-  0x56, 0xea, 0xea, 0x55, 0xcb, 0xf5, 0x0c, 0x5a, 0x63, 0xc5, 0x92, 0xab,
-  0x09, 0xe6, 0xda, 0x9e, 0xc4, 0xdd, 0xcf, 0x37, 0xb1, 0x22, 0xa4, 0x18,
-  0xbf, 0xc6, 0x8f, 0x2f, 0x56, 0x56, 0x0b, 0x1b, 0xfa, 0x92, 0x61, 0xd1,
-  0x79, 0xc2, 0xc0, 0xc2, 0x80, 0x2b, 0x64, 0xa8, 0x04, 0x55, 0xad, 0xd7,
-  0xd9, 0x2e, 0x23, 0xf5, 0x26, 0x05, 0x92, 0x79, 0xbc, 0x6c, 0x03, 0x06,
-  0xdf, 0xb0, 0x6a, 0x58, 0x68, 0x7a, 0x7b, 0xb0, 0xdd, 0x33, 0x25, 0x4b,
-  0xc5, 0x39, 0x13, 0x95, 0xf9, 0x93, 0xd8, 0x85, 0xb1, 0x71, 0xd7, 0x75,
-  0x4b, 0xda, 0xb9, 0x44, 0x1b, 0xa9, 0xfc, 0x18, 0x56, 0x84, 0x63, 0x30,
-  0x35, 0x27, 0x9d, 0x33, 0xcc, 0x41, 0x2b, 0x42, 0xc2, 0x56, 0xff, 0xf9,
-  0xab, 0x57, 0xfa, 0xd7, 0xce, 0xce, 0xcc, 0x1a, 0x08, 0xf5, 0xe4, 0x17,
-  0x5b, 0x5b, 0x02, 0x07, 0xd1, 0xf6, 0x3e, 0x7d, 0xd9, 0x7f, 0x85, 0x16,
-  0x5a, 0xde, 0x17, 0xb8, 0x80, 0xc7, 0x1b, 0xe8, 0xf3, 0xb7, 0xab, 0x06,
-  0x00, 0x43, 0xd0, 0xa3, 0xaf, 0xbf, 0xe2, 0x01, 0xac, 0x7a, 0x1d, 0x6f,
-  0xc9, 0x5a, 0x67, 0x97, 0x97, 0x5c, 0xaa, 0x95, 0x1f, 0x17, 0x4c, 0xda,
-  0x2c, 0xbf, 0x8b, 0xf3, 0x49, 0xfb, 0x92, 0x6c, 0xf5, 0xfa, 0xdb, 0x8f,
-  0x2e, 0x89, 0x2b, 0xa3, 0x86, 0xbd, 0x67, 0xfd, 0x69, 0xfd, 0x0f, 0x1b,
-  0xeb, 0xdf, 0x6c, 0xac, 0x5a, 0xa1, 0xcf, 0xb6, 0xb6, 0x7a, 0x2f, 0xf9,
-  0xe7, 0xab, 0x57, 0x2d, 0x86, 0x84, 0xa6, 0xa0, 0xc5, 0xb0, 0x3d, 0x5b,
-  0x2d, 0xc3, 0xa7, 0xb6, 0x56, 0xf4, 0xb2, 0x4d, 0xad, 0x6f, 0xbf, 0x7a,
-  0xd5, 0xe3, 0xde, 0x5e, 0x7c, 0x74, 0x2f, 0xe5, 0x5d, 0xe6, 0x6d, 0xf4,
-  0xdc, 0x84, 0xa7, 0xe5, 0xa2, 0x36, 0x23, 0xfa, 0x33, 0x8a, 0xde, 0x08,
-  0x34, 0x6b, 0x14, 0xe4, 0x93, 0x78, 0xff, 0x4e, 0x88, 0x27, 0x86, 0xb8,
-  0x8b, 0x05, 0x52, 0x2b, 0xa0, 0x6f, 0x8a, 0x12, 0x13, 0x7b, 0x47, 0x86,
-  0x85, 0x0b, 0x78, 0xe8, 0xd7, 0x53, 0xf1, 0xc2, 0x5d, 0x31, 0xa4, 0x87,
-  0x25, 0x5e, 0x14, 0xd1, 0x3a, 0x91, 0xd7, 0x06, 0x2c, 0x0a, 0xb7, 0xf1,
-  0x34, 0xb5, 0x44, 0xde, 0xa8, 0x0b, 0xbb, 0x98, 0xe4, 0x6d, 0xd3, 0xef,
-  0xd9, 0xa2, 0x8b, 0x52, 0x0f, 0xd3, 0x89, 0xd3, 0x67, 0xcc, 0x0f, 0x26,
-  0x4f, 0xf6, 0xe5, 0x19, 0x39, 0xa5, 0x50, 0x0a, 0xef, 0x15, 0x15, 0x8b,
-  0xdd, 0x50, 0xb5, 0x5e, 0x23, 0x87, 0xb9, 0xe1, 0x11, 0x27, 0x05, 0xa0,
-  0x11, 0x56, 0x30, 0x3f, 0xcd, 0x6e, 0x11, 0x60, 0x2d, 0x99, 0x67, 0x62,
-  0x1e, 0x38, 0x22, 0x27, 0x89, 0xa1, 0x80, 0xd6, 0x8a, 0x5d, 0xb8, 0xf7,
-  0xc5, 0xaa, 0xb3, 0x14, 0x75, 0xd6, 0x9f, 0xd0, 0x4a, 0x29, 0x62, 0x41,
-  0xa3, 0x64, 0x2d, 0xf7, 0x2e, 0xb6, 0x2a, 0xbb, 0x88, 0x69, 0x34, 0xf6,
-  0xe1, 0xe0, 0xff, 0x34, 0x13, 0x46, 0x33, 0x05, 0x7d, 0x06, 0xac, 0x21,
-  0xae, 0x4a, 0x84, 0xfc, 0x04, 0xf8, 0xb7, 0x9a, 0x40, 0xc5, 0x4e, 0x06,
-  0xc1, 0xbc, 0x0c, 0xfd, 0x6e, 0xc8, 0x96, 0x8a, 0xbd, 0xe1, 0x4f, 0xa0,
-  0x86, 0xd6, 0x6a, 0xbe, 0x36, 0x7e, 0xca, 0x63, 0x7f, 0xb8, 0x9a, 0x85,
-  0x6e, 0x16, 0xe0, 0x65, 0xae, 0xee, 0xa9, 0x2c, 0xbe, 0x61, 0xab, 0x68,
-  0x75, 0x54, 0xcb, 0xa6, 0x16, 0x0c, 0x24, 0xc0, 0x02, 0x54, 0x76, 0x8c,
-  0xf6, 0xca, 0x71, 0x50, 0xda, 0xb4, 0x68, 0x3d, 0xc0, 0xcb, 0x07, 0x6d,
-  0x05, 0x96, 0x03, 0x03, 0xf9, 0xcb, 0x66, 0x0c, 0x5a, 0x3c, 0xd9, 0x18,
-  0xc8, 0x00, 0x60, 0x1d, 0x96, 0x9d, 0x60, 0xcc, 0xc7, 0xca, 0x96, 0x72,
-  0x75, 0x6a, 0xd4, 0x4c, 0xe7, 0x27, 0xed, 0x8a, 0x1f, 0x1e, 0xfd, 0xaf,
-  0xc3, 0xc1, 0xaf, 0x61, 0xb6, 0xae, 0x47, 0x03, 0xe6, 0xf1, 0x9d, 0xf9,
-  0x53, 0x25, 0x36, 0x52, 0xaa, 0x1b, 0x4a, 0x80, 0x76, 0x3c, 0x9d, 0xfa,
-  0x92, 0xcf, 0x70, 0x30, 0x92, 0xca, 0x90, 0x19, 0xaa, 0xb1, 0x15, 0x73,
-  0xce, 0x56, 0xa2, 0xdf, 0x72, 0xca, 0xc6, 0x04, 0xf5, 0x4a, 0x43, 0xc3,
-  0xb5, 0x03, 0x01, 0x98, 0xc1, 0xcf, 0xc3, 0x37, 0x2b, 0x93, 0xe2, 0x72,
-  0x8e, 0x12, 0xe9, 0x34, 0x86, 0xba, 0x54, 0x14, 0xdf, 0x35, 0xc0, 0x82,
-  0xc3, 0xb0, 0x9d, 0x73, 0x1f, 0x84, 0xca, 0x33, 0x6f, 0xf5, 0x15, 0x6b,
-  0xdc, 0x67, 0xe9, 0xaa, 0x32, 0x9a, 0xb7, 0xc1, 0xac, 0x0f, 0x81, 0xf1,
-  0x1d, 0xc4, 0x8f, 0x10, 0xe7, 0x36, 0xa3, 0x16, 0xaf, 0x6d, 0x19, 0xcf,
-  0x16, 0x2d, 0x41, 0xca, 0x92, 0x6b, 0x65, 0x78, 0x1a, 0xac, 0x62, 0x99,
-  0xfd, 0x57, 0x3b, 0x6b, 0x36, 0x17, 0xc4, 0x4e, 0x0b, 0xe5, 0xd2, 0x8b,
-  0xf0, 0x78, 0xb8, 0x7e, 0xaa, 0x21, 0xbf, 0x2c, 0xd1, 0x01, 0xc9, 0xb2,
-  0x25, 0xd1, 0x22, 0xd6, 0x95, 0x4f, 0x01, 0x9b, 0x97, 0xe4, 0xb9, 0x54,
-  0x6e, 0x11, 0x1d, 0x21, 0xd1, 0x00, 0xac, 0x6a, 0x01, 0x02, 0xab, 0x4f,
-  0x18, 0xaf, 0xd8, 0x41, 0x0f, 0xff, 0x26, 0x5d, 0x63, 0xfd, 0xfc, 0x15,
-  0x2e, 0x01, 0xcc, 0x66, 0x01, 0xd4, 0x4a, 0xe0, 0xd1, 0x72, 0x31, 0x68,
-  0x22, 0x6c, 0x96, 0xbe, 0x40, 0x9c, 0xbe, 0x4f, 0xdd, 0x6f, 0x85, 0x3e,
-  0x49, 0x30, 0x0a, 0xf4, 0xc3, 0x83, 0xd3, 0x2a, 0x03, 0x69, 0xd1, 0x0a,
-  0x52, 0x0f, 0xf3, 0x33, 0xdb, 0x51, 0xdd, 0x7c, 0x65, 0xba, 0xe2, 0x3a,
-  0x90, 0xd4, 0xb4, 0x5d, 0xae, 0x23, 0x24, 0x58, 0x39, 0xbd, 0x00, 0x53,
-  0xf5, 0xf9, 0xfd, 0x7d, 0x43, 0xbd, 0x09, 0xb0, 0x1d, 0xa5, 0x6c, 0x8e,
-  0x10, 0xfb, 0x8b, 0xfb, 0xfb, 0xea, 0x97, 0x8f, 0xc1, 0xf0, 0x61, 0xbf,
-  0x47, 0x99, 0x04, 0xc5, 0xcb, 0x6a, 0xc5, 0x2d, 0xeb, 0x28, 0x97, 0xf5,
-  0x5d, 0x9c, 0x96, 0x2d, 0xc9, 0x80, 0x2a, 0x9c, 0xb8, 0x72, 0x0e, 0x16,
-  0x9d, 0xcd, 0xa9, 0x54, 0xd7, 0xc4, 0x0a, 0x04, 0x76, 0x4f, 0x16, 0xc8,
-  0x1a, 0xb4, 0x22, 0x1b, 0x2d, 0xeb, 0xc4, 0xbd, 0xc8, 0xb2, 0xa7, 0xc0,
-  0xb7, 0x2b, 0xd3, 0x29, 0xbf, 0x06, 0x90, 0x37, 0x6a, 0x61, 0x9b, 0x96,
-  0x3f, 0x9d, 0x2f, 0xcb, 0xa4, 0x68, 0x2b, 0x94, 0xd4, 0xb6, 0xec, 0x53,
-  0xc0, 0x45, 0x48, 0x24, 0x4a, 0xbd, 0x14, 0x8d, 0x8e, 0x4b, 0x92, 0x69,
-  0xd5, 0x23, 0xe5, 0x82, 0xb5, 0x69, 0x35, 0xfa, 0x78, 0xbd, 0x45, 0x08,
-  0x00, 0xa7, 0x77, 0xc1, 0xdf, 0x7a, 0x44, 0x93, 0x7b, 0x5a, 0x75, 0x41,
-  0x93, 0x8c, 0xe0, 0x52, 0x26, 0x69, 0x83, 0x6f, 0x9d, 0xab, 0x2c, 0xa7,
-  0xcd, 0x9d, 0xa9, 0x54, 0x8d, 0x6b, 0xa8, 0x2d, 0x75, 0x49, 0xbb, 0x34,
-  0x3c, 0x29, 0x97, 0xbe, 0xe4, 0x71, 0x1a, 0xcb, 0xac, 0x54, 0x4e, 0xa9,
-  0x08, 0x2e, 0x88, 0xf8, 0xcf, 0xc4, 0x16, 0x8c, 0x89, 0x3c, 0x16, 0x2a,
-  0xb9, 0x33, 0x78, 0xb6, 0xf1, 0x24, 0x56, 0x7a, 0xa0, 0x43, 0x78, 0xd0,
-  0xfd, 0xd5, 0x15, 0x02, 0x1b, 0xab, 0x3d, 0x4e, 0xb5, 0x72, 0xb4, 0xd5,
-  0x08, 0xac, 0x31, 0x02, 0x59, 0xd1, 0x47, 0xb0, 0xb2, 0xac, 0xb8, 0x4e,
-  0x31, 0x4d, 0x92, 0x85, 0x8c, 0x4d, 0xe1, 0x29, 0xf5, 0xec, 0xba, 0xa3,
-  0x8b, 0x20, 0x7d, 0xa5, 0x5a, 0xbd, 0x80, 0x57, 0xb1, 0x04, 0x0d, 0xa7,
-  0x67, 0x4b, 0xb9, 0x55, 0x69, 0x6a, 0x67, 0x3d, 0xeb, 0x22, 0xbf, 0x58,
-  0xe6, 0xc1, 0x8a, 0x22, 0x2d, 0xb6, 0xb7, 0x52, 0x1c, 0xd3, 0xf6, 0xd7,
-  0x51, 0x99, 0x6e, 0x46, 0xad, 0xd2, 0x63, 0x13, 0xe7, 0x1c, 0x17, 0xb7,
-  0xdc, 0x55, 0x89, 0x80, 0x3b, 0xbb, 0x82, 0x8f, 0x98, 0x95, 0xab, 0x1e,
-  0xe3, 0xa0, 0x4e, 0x06, 0x8e, 0x2b, 0x09, 0xa4, 0x3f, 0xd6, 0xb2, 0x01,
-  0xee, 0xf3, 0xb7, 0x24, 0xcf, 0x02, 0x80, 0x57, 0x2c, 0xa7, 0xc9, 0x95,
-  0x2e, 0x9a, 0xc9, 0xd1, 0x27, 0x4f, 0x62, 0xe0, 0x69, 0xa5, 0x89, 0x0e,
-  0xfe, 0xef, 0x22, 0x1d, 0x2d, 0xe2, 0x51, 0x3c, 0x4a, 0x3e, 0x4f, 0xa2,
-  0xad, 0x5d, 0xe8, 0xb1, 0x96, 0x4c, 0x15, 0xbd, 0x4c, 0x58, 0xe6, 0x0f,
-  0x9d, 0x3e, 0x91, 0x55, 0xab, 0xf1, 0x04, 0xa2, 0x77, 0x69, 0x43, 0x2f,
-  0x54, 0xce, 0x65, 0x1c, 0x06, 0x09, 0x48, 0x31, 0xcb, 0x2e, 0x5c, 0x5d,
-  0x6d, 0xbd, 0x48, 0x92, 0xc6, 0x8e, 0x6d, 0xf0, 0xf7, 0x80, 0xa4, 0x89,
-  0x7d, 0x0d, 0xd5, 0xbc, 0x91, 0x18, 0x03, 0xc0, 0x2a, 0x61, 0x6b, 0x93,
-  0x10, 0x9f, 0x4e, 0xe1, 0xe9, 0x4e, 0x32, 0x8e, 0x62, 0xd1, 0x5b, 0xf9,
-  0xd2, 0xb7, 0xa3, 0x6f, 0x36, 0x51, 0xa9, 0xd0, 0x8e, 0xa6, 0x6b, 0x71,
-  0x13, 0xbd, 0x0a, 0x9a, 0xaa, 0x8d, 0x1f, 0xf1, 0x57, 0x70, 0x60, 0x49,
-  0xcc, 0x8a, 0xdc, 0xa5, 0x2d, 0xee, 0x06, 0x70, 0x7f, 0x76, 0x53, 0xc1,
-  0xcb, 0xc7, 0xd3, 0x69, 0xc1, 0xd2, 0xc3, 0x4e, 0x50, 0x1b, 0x29, 0x83,
-  0xe9, 0x5c, 0x18, 0xab, 0x6a, 0xc6, 0x95, 0x8b, 0x2b, 0xdb, 0x06, 0xd3,
-  0x05, 0xce, 0x67, 0x00, 0x8a, 0xd7, 0x53, 0xe1, 0x12, 0x2b, 0x19, 0x62,
-  0xea, 0x59, 0x2c, 0xc0, 0x30, 0x29, 0x1f, 0xa9, 0x72, 0x4d, 0x3c, 0x12,
-  0x24, 0x5f, 0x8a, 0xd4, 0xae, 0xf7, 0xa7, 0x67, 0xee, 0x1f, 0xc3, 0x05,
-  0x6b, 0xa2, 0xe9, 0x2a, 0x3a, 0xd6, 0xf5, 0x8d, 0x91, 0x3d, 0xff, 0xcf,
-  0x92, 0x72, 0xc1, 0x10, 0xf8, 0x5c, 0x67, 0xac, 0xbe, 0x8b, 0x43, 0x7c,
-  0x28, 0xe6, 0x8a, 0xbf, 0x2e, 0x53, 0x26, 0x5a, 0x09, 0x73, 0x3a, 0x00,
-  0x6c, 0x30, 0xa3, 0x1e, 0x4b, 0x51, 0x0d, 0x8e, 0x29, 0x51, 0x97, 0x7b,
-  0xee, 0xa4, 0x88, 0x06, 0x24, 0x22, 0x90, 0x35, 0x06, 0x06, 0x58, 0x07,
-  0x24, 0xb5, 0xd9, 0x32, 0x04, 0xd5, 0xe9, 0x0f, 0x79, 0x24, 0xd4, 0x6a,
-  0x1f, 0x6d, 0xb4, 0x63, 0xed, 0x18, 0x3a, 0x5c, 0x5f, 0x4a, 0x26, 0x04,
-  0xe0, 0x77, 0x3c, 0x1c, 0xc8, 0x28, 0x32, 0x02, 0x03, 0xf3, 0xe0, 0xa0,
-  0x87, 0x16, 0xe8, 0x63, 0x66, 0xbe, 0x95, 0x58, 0x6c, 0xae, 0xa8, 0x5b,
-  0x3c, 0x8f, 0x5e, 0x3f, 0x11, 0xda, 0xaa, 0xc0, 0xfc, 0x6a, 0x8f, 0x19,
-  0x9e, 0xee, 0x7f, 0x3b, 0x7c, 0xfe, 0x64, 0x4c, 0xeb, 0xea, 0x22, 0x86,
-  0x8f, 0x46, 0xb5, 0x3e, 0x02, 0x08, 0xde, 0x92, 0xa2, 0xc6, 0x45, 0x12,
-  0x72, 0xba, 0xef, 0x04, 0xe3, 0x97, 0xd1, 0x17, 0xd3, 0x6c, 0xe9, 0x70,
-  0x3b, 0xa2, 0x96, 0x98, 0xce, 0x9e, 0x78, 0x45, 0x19, 0x30, 0xbe, 0x1e,
-  0xd6, 0x4d, 0x9c, 0x89, 0x36, 0x47, 0x10, 0x7e, 0x92, 0xfb, 0xf1, 0x74,
-  0x59, 0xa4, 0xb7, 0xbf, 0x69, 0x49, 0x5b, 0x59, 0xfe, 0xf8, 0x9f, 0x5a,
-  0xff, 0xf8, 0xe3, 0x36, 0xa0, 0xc1, 0x56, 0x7e, 0xe1, 0x06, 0xb4, 0x95,
-  0x33, 0xfe, 0xbf, 0x6c, 0x03, 0x5e, 0xf4, 0x1d, 0x98, 0xc4, 0xeb, 0x5f,
-  0x1a, 0xe3, 0x8d, 0xbd, 0x78, 0xa1, 0x11, 0xb0, 0xeb, 0xb0, 0xa5, 0x25,
-  0x61, 0x50, 0x2c, 0xc3, 0xef, 0x4f, 0x6f, 0x93, 0x15, 0x98, 0x16, 0x30,
-  0x43, 0x6f, 0x3c, 0x79, 0x86, 0xdc, 0x96, 0x89, 0x6f, 0x5c, 0x36, 0xad,
-  0xbe, 0x76, 0xff, 0xc4, 0x16, 0x3a, 0xa9, 0xc1, 0x6f, 0x62, 0xeb, 0x2e,
-  0xb6, 0x6e, 0xa2, 0x5c, 0xac, 0xff, 0xbb, 0xb6, 0xb0, 0x26, 0x63, 0x57,
-  0xa7, 0xc3, 0x28, 0x18, 0x6e, 0x12, 0x80, 0x83, 0xca, 0xe9, 0xee, 0xe4,
-  0x5f, 0x2a, 0x08, 0x0e, 0x1a, 0xd6, 0xd4, 0x04, 0x38, 0x52, 0xba, 0xa8,
-  0x94, 0x26, 0xb4, 0xfa, 0x36, 0x56, 0x17, 0x67, 0xa3, 0x41, 0x45, 0xff,
-  0xcc, 0x29, 0x36, 0xca, 0xe1, 0x48, 0x46, 0xc0, 0x8b, 0x18, 0xbd, 0x58,
-  0x79, 0x3c, 0xbe, 0xe4, 0x5a, 0x7c, 0x8a, 0x50, 0xff, 0x91, 0xe4, 0x7d,
-  0x74, 0x19, 0x7d, 0x1c, 0xed, 0x54, 0x8e, 0x7b, 0x0b, 0xec, 0xdb, 0xaa,
-  0x9c, 0x82, 0xff, 0xb3, 0x8f, 0x7a, 0x1b, 0x9d, 0x58, 0x34, 0xff, 0x47,
-  0x53, 0x89, 0x8b, 0xb8, 0xfb, 0x97, 0xe8, 0xa4, 0xed, 0xe4, 0xad, 0x6b,
-  0x18, 0x21, 0x2f, 0x93, 0x82, 0x10, 0xe1, 0x4a, 0x50, 0x21, 0xd6, 0xd5,
-  0x0b, 0x03, 0x36, 0x1b, 0x44, 0x80, 0xa3, 0xb3, 0xef, 0x5e, 0xc2, 0xc5,
-  0x32, 0x6c, 0xa2, 0x25, 0x1c, 0x1f, 0xec, 0x9d, 0xb5, 0x70, 0xb7, 0x2b,
-  0x12, 0x09, 0x16, 0x69, 0x9f, 0x0d, 0xab, 0x2c, 0xce, 0xbe, 0xd6, 0x5f,
-  0x98, 0xac, 0xda, 0x24, 0x77, 0x53, 0x4f, 0xec, 0x79, 0x30, 0x46, 0x4d,
-  0xab, 0xc6, 0x74, 0xd5, 0x2e, 0xce, 0x52, 0xfd, 0x78, 0x36, 0xd9, 0x94,
-  0x3f, 0xfb, 0x97, 0x7f, 0x9d, 0xcc, 0x07, 0x8f, 0x50, 0x4f, 0x5c, 0x09,
-  0xbf, 0xd7, 0x6a, 0x08, 0x2d, 0x25, 0xa9, 0x5d, 0x41, 0xa7, 0xba, 0xcd,
-  0xdf, 0x9d, 0xb3, 0x48, 0xf3, 0x8c, 0x80, 0xf3, 0x14, 0xac, 0x5a, 0x7d,
-  0xa6, 0xa2, 0xbb, 0xf1, 0x57, 0x13, 0x84, 0x6d, 0xb2, 0x01, 0xba, 0x99,
-  0xbb, 0x81, 0xef, 0x37, 0x7d, 0x93, 0xbf, 0x52, 0xb7, 0xd6, 0x30, 0x07,
-  0xce, 0xb6, 0xb5, 0x2b, 0xc3, 0x11, 0x99, 0xbb, 0xf6, 0xa4, 0xd8, 0x13,
-  0xa4, 0x94, 0x1b, 0x2a, 0xfe, 0xf9, 0xfb, 0x44, 0xbe, 0x6f, 0xc9, 0x42,
-  0x15, 0x94, 0xd3, 0x72, 0x6c, 0x69, 0x37, 0xe9, 0x7c, 0xbc, 0xa0, 0x03,
-  0x82, 0xcc, 0x87, 0xfa, 0x8c, 0x1e, 0x05, 0x27, 0xaa, 0x4e, 0x69, 0x9e,
-  0xd4, 0x53, 0x22, 0xf6, 0x8a, 0x0a, 0xd4, 0x82, 0x3c, 0x17, 0x59, 0x96,
-  0x19, 0x36, 0x1a, 0x31, 0x5b, 0x5a, 0xfb, 0x05, 0xa1, 0x35, 0xb8, 0xb6,
-  0xe4, 0x91, 0x7e, 0xe3, 0xda, 0x72, 0xf0, 0x55, 0x51, 0x7e, 0x39, 0xde,
-  0x7e, 0xf5, 0x72, 0x9b, 0x85, 0xe6, 0x87, 0xc2, 0x81, 0x74, 0xa3, 0x99,
-  0xe7, 0x83, 0x67, 0x9b, 0xcf, 0x07, 0xcf, 0x23, 0x0f, 0x18, 0x3c, 0xc2,
-  0x8a, 0x34, 0xb0, 0x77, 0x12, 0x86, 0x60, 0x30, 0xfc, 0xd8, 0x24, 0x3a,
-  0x39, 0xdc, 0xb7, 0x4a, 0x8a, 0x9c, 0x0d, 0x55, 0x03, 0x37, 0xd3, 0x4a,
-  0x7f, 0xbc, 0x78, 0x03, 0x21, 0xfe, 0x15, 0xd8, 0x94, 0x6d, 0xbb, 0x4d,
-  0x4b, 0xa3, 0x3b, 0xad, 0x94, 0x2d, 0x01, 0x37, 0x73, 0x9d, 0x3c, 0x2d,
-  0x30, 0xb1, 0xb5, 0x6b, 0x2d, 0x04, 0xd4, 0x12, 0x43, 0x58, 0x5f, 0xa4,
-  0x60, 0x09, 0x07, 0x4f, 0x6c, 0x51, 0x39, 0x21, 0x46, 0xdc, 0xee, 0xee,
-  0x3e, 0x77, 0xa5, 0x3c, 0x88, 0xa9, 0xa0, 0x5a, 0x73, 0xa1, 0x58, 0x1d,
-  0xfc, 0x8a, 0x45, 0xba, 0x55, 0x62, 0xa0, 0xcc, 0xbe, 0xfe, 0x38, 0x10,
-  0xbe, 0xb0, 0x01, 0xc1, 0x84, 0x02, 0xfc, 0x73, 0xb7, 0xdf, 0xb5, 0x7b,
-  0xc5, 0x0c, 0xf4, 0x41, 0x85, 0x45, 0x03, 0x07, 0x59, 0xcd, 0x0f, 0x14,
-  0x60, 0x1e, 0xf1, 0x38, 0x62, 0x3a, 0x62, 0xc7, 0x8c, 0x83, 0xce, 0x21,
-  0x66, 0x73, 0xcd, 0x8c, 0x51, 0x0d, 0x45, 0x93, 0x64, 0xdc, 0xd4, 0xd5,
-  0x5c, 0xa2, 0x37, 0x3d, 0x3f, 0x8e, 0x17, 0xf1, 0x28, 0x9d, 0xa6, 0x65,
-  0xda, 0x12, 0x58, 0xf8, 0x2b, 0x4a, 0x8c, 0xe5, 0x78, 0xd1, 0x9f, 0x67,
-  0xb0, 0xfa, 0xd4, 0x27, 0xc7, 0x58, 0xfe, 0x01, 0x88, 0xe2, 0x87, 0x93,
-  0xd3, 0x83, 0xc3, 0xe3, 0xbd, 0x1f, 0xcd, 0x4d, 0xef, 0xa2, 0xa7, 0x5d,
-  0x61, 0xc5, 0x24, 0x2e, 0x1e, 0x3e, 0x14, 0x49, 0x49, 0x0f, 0x58, 0x71,
-  0x45, 0x76, 0x86, 0xd5, 0x2f, 0x67, 0xd6, 0xe7, 0x42, 0xc4, 0x6e, 0xb5,
-  0x16, 0xfb, 0x09, 0xd5, 0xe8, 0x65, 0xbb, 0xe2, 0xe5, 0x28, 0xe9, 0x46,
-  0x2e, 0x93, 0xe9, 0x3c, 0x29, 0x15, 0x8f, 0x39, 0x7a, 0x7d, 0x7a, 0x76,
-  0xf1, 0xe6, 0x36, 0x9e, 0xd6, 0x69, 0x87, 0x91, 0x25, 0xb4, 0x45, 0xab,
-  0xc4, 0x13, 0xc9, 0x9b, 0x41, 0x14, 0xe6, 0xd0, 0x85, 0x3b, 0xda, 0x93,
-  0x74, 0x95, 0x37, 0xc2, 0x1c, 0x2f, 0x2e, 0x7e, 0x3c, 0x3b, 0x7c, 0xf3,
-  0x9a, 0x75, 0xf0, 0x2f, 0xd8, 0x72, 0xa0, 0x46, 0x18, 0xa8, 0xe4, 0xbc,
-  0xe0, 0x0f, 0x8b, 0xe6, 0x5d, 0xff, 0xc3, 0xc1, 0xd1, 0xf0, 0xec, 0xf8,
-  0x74, 0xff, 0xcd, 0xeb, 0x1f, 0xd8, 0xaa, 0xcb, 0xe0, 0xf0, 0xc1, 0xbb,
-  0xee, 0x33, 0x17, 0xca, 0xd5, 0x84, 0x9a, 0x3c, 0xfc, 0xfe, 0xc3, 0xe1,
-  0xc9, 0x77, 0x6f, 0x5e, 0xdf, 0xc6, 0x79, 0x8f, 0xe7, 0x27, 0x6f, 0x73,
-  0xb2, 0x77, 0x0b, 0x42, 0x78, 0x65, 0x53, 0x39, 0xbb, 0x62, 0x34, 0xbd,
-  0x91, 0x0a, 0x13, 0xa8, 0xea, 0xd0, 0x08, 0x9d, 0xb8, 0x40, 0xa8, 0x39,
-  0x5b, 0x41, 0xf8, 0xb7, 0xe8, 0xab, 0xe3, 0x6f, 0xd9, 0xb7, 0xe6, 0x2e,
-  0x72, 0x04, 0xea, 0x12, 0xbd, 0x7c, 0xf1, 0x62, 0x7b, 0x67, 0x23, 0x00,
-  0x83, 0x67, 0xd7, 0x3d, 0x8d, 0xf8, 0xa6, 0x61, 0x8e, 0xf9, 0x9b, 0x95,
-  0xf5, 0xf2, 0x60, 0xef, 0x5a, 0x6f, 0x97, 0xef, 0x04, 0x1c, 0x08, 0xb6,
-  0x8c, 0x71, 0x6d, 0x31, 0x44, 0x59, 0x71, 0x70, 0x09, 0x7d, 0xc9, 0x65,
-  0xd8, 0xf2, 0x46, 0x1c, 0x49, 0x2c, 0x83, 0xb2, 0x10, 0x56, 0x0f, 0x4b,
-  0x19, 0xd1, 0x70, 0xd4, 0xf9, 0xde, 0x4e, 0xd1, 0xbf, 0xf6, 0x09, 0x69,
-  0xb9, 0x63, 0x6a, 0xf5, 0x3c, 0x2e, 0x18, 0x07, 0x78, 0xc1, 0x7e, 0xd3,
-  0x47, 0xc2, 0x76, 0xb0, 0x7e, 0x1e, 0x40, 0xb3, 0xca, 0xb5, 0x02, 0xe7,
-  0x97, 0x92, 0xa9, 0x79, 0xd3, 0x18, 0xef, 0x65, 0x05, 0x1f, 0x73, 0x75,
-  0x97, 0x3d, 0x5c, 0x90, 0xd5, 0x50, 0x76, 0x0d, 0x03, 0x9b, 0xc7, 0xc3,
-  0xdd, 0x6b, 0xea, 0xca, 0xa3, 0xde, 0x37, 0xc9, 0x2d, 0x44, 0x24, 0x81,
-  0xab, 0x24, 0xe1, 0x00, 0x62, 0xe0, 0xc8, 0x91, 0xca, 0xd9, 0x9b, 0xc6,
-  0x19, 0x78, 0xfd, 0xd6, 0x56, 0xc4, 0xf2, 0x45, 0xe2, 0x03, 0x82, 0x50,
-  0xcc, 0x51, 0x54, 0x98, 0x1f, 0xc6, 0x63, 0xb9, 0x96, 0xd5, 0x59, 0x48,
-  0xb4, 0x5e, 0xdd, 0x68, 0x14, 0x10, 0xd4, 0x35, 0x87, 0x58, 0x95, 0xae,
-  0x6e, 0x2d, 0xf6, 0xae, 0x1a, 0x44, 0x67, 0x44, 0x1a, 0xb8, 0x23, 0xeb,
-  0xa2, 0x85, 0x47, 0x3d, 0xd2, 0x44, 0x1b, 0xb1, 0x6b, 0xb3, 0x6e, 0xc2,
-  0x11, 0xd9, 0xd3, 0x87, 0x20, 0x66, 0x42, 0x36, 0xf6, 0xb1, 0xda, 0x19,
-  0x6c, 0x83, 0x1a, 0x38, 0x7a, 0x33, 0x42, 0x83, 0xdc, 0xc0, 0xce, 0xb3,
-  0xf5, 0xe1, 0x86, 0x92, 0xb1, 0x90, 0xdb, 0xd9, 0x7b, 0x9f, 0xc1, 0xd4,
-  0x56, 0x5b, 0x65, 0x15, 0x01, 0x3a, 0x6d, 0xdd, 0x2f, 0x54, 0xa7, 0xdf,
-  0xa9, 0xc3, 0x5e, 0xd9, 0x71, 0xa3, 0xeb, 0x8a, 0x2b, 0x1a, 0xf8, 0x0c,
-  0xa9, 0xb8, 0x15, 0xbb, 0x49, 0x42, 0x86, 0xa3, 0xbd, 0x29, 0x5c, 0xdb,
-  0xc4, 0x1b, 0x1f, 0x7a, 0xf5, 0x3e, 0x06, 0x9d, 0x88, 0x3b, 0x71, 0xf6,
-  0x56, 0xb1, 0xcc, 0x6e, 0x34, 0x00, 0xe9, 0x1e, 0xb4, 0x18, 0xa2, 0x37,
-  0x25, 0x84, 0x59, 0xbf, 0x3c, 0xd4, 0xda, 0xd0, 0x10, 0xdd, 0x01, 0x56,
-  0xd2, 0x4c, 0x88, 0x87, 0x00, 0x81, 0x84, 0x63, 0xd4, 0x14, 0x40, 0xda,
-  0x0e, 0xfc, 0x68, 0x2e, 0xf8, 0x4a, 0x60, 0xb7, 0x0c, 0x64, 0x56, 0xda,
-  0x84, 0x58, 0x06, 0x30, 0xb7, 0x3a, 0x7c, 0x03, 0x36, 0xb1, 0x65, 0x51,
-  0xad, 0x6c, 0x99, 0xa5, 0x4d, 0x30, 0x1b, 0xe8, 0x5f, 0x78, 0xb8, 0x26,
-  0x46, 0x5b, 0x6a, 0x49, 0x40, 0x52, 0x9c, 0xd0, 0xfe, 0x45, 0xa3, 0x4a,
-  0x15, 0xbf, 0xb0, 0x88, 0xd3, 0x3c, 0x88, 0xe3, 0x41, 0x04, 0x1e, 0xcf,
-  0x5d, 0x28, 0x49, 0x63, 0x37, 0x21, 0x07, 0x0f, 0x84, 0xb4, 0xe1, 0x8a,
-  0x59, 0x09, 0x5e, 0xde, 0xb9, 0x9a, 0x66, 0xa3, 0x11, 0x4d, 0xaa, 0x63,
-  0x32, 0x2a, 0x8d, 0x30, 0xce, 0xaf, 0xa0, 0xd1, 0xf5, 0x0c, 0xf8, 0xc4,
-  0x1f, 0x56, 0x00, 0xed, 0xa1, 0xaf, 0x55, 0xc9, 0x0a, 0x5a, 0x1c, 0x27,
-  0xf3, 0x78, 0xaa, 0x40, 0xc1, 0x0b, 0x6b, 0xb0, 0x89, 0xef, 0x1d, 0x9f,
-  0x47, 0xd6, 0x7f, 0x9d, 0xe3, 0x97, 0x0f, 0x1c, 0xee, 0xe9, 0xae, 0x4f,
-  0x65, 0x3e, 0x60, 0x39, 0x0a, 0x7c, 0x96, 0xb6, 0xe4, 0x0b, 0xf0, 0x84,
-  0x69, 0x02, 0x9d, 0xbf, 0xf3, 0x28, 0xb6, 0x7b, 0xfc, 0xef, 0xce, 0x3f,
-  0x3a, 0x06, 0x73, 0xc7, 0xd0, 0xa3, 0x32, 0xf8, 0x92, 0x11, 0xc5, 0x0a,
-  0xc3, 0xd6, 0x6b, 0x81, 0xd2, 0xe3, 0xba, 0x34, 0x2b, 0x5b, 0x4f, 0x67,
-  0x57, 0x3f, 0x6d, 0xf7, 0xb7, 0xb7, 0xb6, 0xb6, 0x7e, 0x1e, 0x2c, 0x78,
-  0xe9, 0x2e, 0xd1, 0x3c, 0xfd, 0x3b, 0x58, 0xa4, 0x63, 0x8e, 0xb7, 0xa1,
-  0xcd, 0x4c, 0x63, 0x54, 0x1d, 0x97, 0xfe, 0x36, 0xc3, 0xeb, 0x33, 0xe7,
-  0xfc, 0xa3, 0x56, 0x3e, 0xee, 0xe0, 0x4d, 0x19, 0x07, 0x7e, 0xc9, 0xf2,
-  0x9c, 0x3c, 0x1c, 0x4d, 0x96, 0x12, 0x0a, 0x21, 0xa1, 0x22, 0xea, 0xa3,
-  0xe6, 0xcd, 0x26, 0x52, 0xd5, 0xfa, 0x36, 0x74, 0xe3, 0xf5, 0x5a, 0x8b,
-  0x79, 0xe2, 0xdb, 0xa4, 0xe0, 0x82, 0xb3, 0x48, 0x44, 0x0e, 0x2a, 0x07,
-  0xf4, 0x5c, 0x6e, 0x03, 0x0e, 0xac, 0xd2, 0xbd, 0x9c, 0xdb, 0x26, 0x5c,
-  0x25, 0x1f, 0x33, 0x12, 0x43, 0xf9, 0x6b, 0xe3, 0x72, 0x0e, 0x99, 0xdc,
-  0x80, 0xcc, 0xa5, 0x52, 0x57, 0x03, 0xed, 0xae, 0x4d, 0x9b, 0xf7, 0x06,
-  0x92, 0xd0, 0x38, 0x52, 0x38, 0x13, 0xda, 0xad, 0x00, 0x63, 0x8e, 0xb2,
-  0xc2, 0x55, 0x64, 0x54, 0xd5, 0x02, 0x8b, 0xb2, 0x12, 0x90, 0xac, 0x18,
-  0xa7, 0x69, 0x3b, 0x7c, 0xe7, 0xaf, 0x29, 0xd8, 0x62, 0x08, 0xe8, 0xeb,
-  0xf1, 0xad, 0x8c, 0x65, 0x23, 0x65, 0x1f, 0xc3, 0x6d, 0xf4, 0xfb, 0x28,
-  0x56, 0x13, 0xb7, 0x93, 0xff, 0x07, 0x6d, 0x25, 0x17, 0xf5, 0x4a, 0x50,
-  0x37, 0xb7, 0x56, 0x9d, 0x04, 0xd3, 0x0d, 0xaa, 0x93, 0x4c, 0x93, 0x98,
-  0x43, 0xa7, 0xcd, 0xec, 0x73, 0x9d, 0xdc, 0x8b, 0x4c, 0xd1, 0xc4, 0x4b,
-  0x10, 0x17, 0x33, 0x7b, 0x6a, 0x54, 0x47, 0xdc, 0x1b, 0xee, 0x1f, 0x1d,
-  0x55, 0xb4, 0x68, 0x5e, 0x45, 0xa9, 0x23, 0x0d, 0xd7, 0x4e, 0xc1, 0x18,
-  0x74, 0xec, 0x58, 0xc2, 0xb8, 0x1b, 0xa2, 0x0c, 0x87, 0xcc, 0x21, 0x6b,
-  0x96, 0x11, 0x6f, 0xe3, 0x22, 0xb5, 0x18, 0xc5, 0x58, 0x32, 0xdc, 0x96,
-  0x73, 0x16, 0x3a, 0x38, 0x70, 0xe7, 0x7a, 0x49, 0xa7, 0xb6, 0xf8, 0x48,
-  0x9b, 0xde, 0x3f, 0x45, 0xb2, 0xff, 0x26, 0xaa, 0x6c, 0x09, 0xcf, 0x3a,
-  0xcb, 0x35, 0x0a, 0x4e, 0x82, 0x75, 0x22, 0x89, 0xad, 0x62, 0xe4, 0x5c,
-  0xbe, 0x6a, 0x84, 0x38, 0x33, 0xd4, 0xba, 0xe0, 0xb1, 0x47, 0xb8, 0x87,
-  0xac, 0x8e, 0x6e, 0x0b, 0x62, 0x91, 0x2a, 0x17, 0x45, 0x1d, 0xbb, 0xf9,
-  0x79, 0x45, 0x74, 0xb5, 0x12, 0x16, 0xd1, 0x6b, 0xfe, 0x77, 0xd7, 0x4a,
-  0x48, 0x3c, 0x56, 0x8d, 0x0e, 0x8f, 0x37, 0xaa, 0x45, 0x55, 0x50, 0x24,
-  0xe5, 0x8e, 0x7e, 0x1c, 0x50, 0x78, 0x10, 0x9d, 0xba, 0x9d, 0xc2, 0xfa,
-  0xbb, 0xca, 0x58, 0xb2, 0x2d, 0xdc, 0x78, 0x50, 0xd4, 0xc6, 0x95, 0xde,
-  0x59, 0xb9, 0x41, 0x7c, 0xf5, 0x21, 0x11, 0x93, 0x4f, 0x57, 0x6d, 0xa4,
-  0xeb, 0x66, 0xd0, 0x64, 0x1b, 0x68, 0x2e, 0xda, 0x38, 0x5d, 0xe8, 0xd3,
-  0x6c, 0xbe, 0xd1, 0xba, 0x78, 0xd8, 0x3c, 0x92, 0x57, 0x39, 0x0e, 0x4e,
-  0x0c, 0x85, 0xae, 0x2a, 0xd6, 0x4a, 0xa0, 0x63, 0x88, 0xc7, 0x8c, 0x38,
-  0x7f, 0x76, 0xd4, 0xd7, 0x50, 0x4e, 0xc5, 0x83, 0x96, 0xbc, 0x3f, 0x9e,
-  0xd0, 0x24, 0xab, 0xe3, 0x03, 0xb5, 0x2d, 0x8d, 0x4f, 0x35, 0x17, 0xc0,
-  0xd2, 0x0a, 0xba, 0xd8, 0x72, 0x51, 0x9b, 0x5b, 0xb5, 0xf8, 0x47, 0x5d,
-  0x36, 0x45, 0x4e, 0xb8, 0x00, 0x82, 0x84, 0x3a, 0xe3, 0xe8, 0x41, 0x02,
-  0x3a, 0x5d, 0xc2, 0xa8, 0x5a, 0x28, 0x44, 0x1a, 0xc0, 0xca, 0xb4, 0xe1,
-  0x44, 0x05, 0x87, 0x60, 0x97, 0x18, 0xd4, 0x32, 0xda, 0xed, 0xfc, 0x86,
-  0x67, 0xe5, 0xbd, 0x99, 0xde, 0x7f, 0x7d, 0x12, 0x55, 0x27, 0xc5, 0x13,
-  0x24, 0xfa, 0xff, 0xef, 0xb5, 0xdf, 0xeb, 0xf7, 0xbf, 0xed, 0x5e, 0xf7,
-  0x79, 0xde, 0xaf, 0x49, 0x76, 0x5c, 0xb5, 0xaf, 0x31, 0x64, 0x51, 0x0e,
-  0x4a, 0x65, 0x98, 0xe6, 0x06, 0xfc, 0x1f, 0xb4, 0x37, 0xbe, 0x96, 0xae,
-  0x69, 0x89, 0x5c, 0xe8, 0x56, 0x13, 0x4a, 0xc4, 0x30, 0x44, 0x4c, 0xe0,
-  0xa7, 0x46, 0xd7, 0x8b, 0x0d, 0xc9, 0xc8, 0x08, 0x92, 0xf8, 0x1f, 0x17,
-  0x8b, 0x9c, 0xb6, 0x23, 0xde, 0xb6, 0x4a, 0xaa, 0xb5, 0x24, 0x02, 0x73,
-  0xdc, 0x8a, 0xa1, 0x6d, 0x40, 0xd2, 0x6f, 0x5b, 0x5c, 0x9e, 0x10, 0x07,
-  0xe9, 0x8b, 0x91, 0xb1, 0xe7, 0xc2, 0xa9, 0xc0, 0xf6, 0x3c, 0x88, 0xb7,
-  0xbb, 0xa6, 0xdc, 0x77, 0x0d, 0xb0, 0xd9, 0x86, 0x94, 0xa5, 0xa6, 0xac,
-  0x60, 0x81, 0x83, 0x7b, 0xaf, 0xb5, 0xf4, 0xa0, 0x5a, 0x46, 0x79, 0x71,
-  0x21, 0xe1, 0xa0, 0x82, 0x95, 0xdd, 0x36, 0x9b, 0x65, 0x3c, 0xbd, 0x89,
-  0x59, 0x9e, 0x19, 0x44, 0xef, 0x64, 0xa1, 0x7d, 0x89, 0xc8, 0x46, 0xa0,
-  0xca, 0x68, 0x79, 0x75, 0x85, 0x6a, 0x22, 0x7b, 0x72, 0x49, 0x15, 0x06,
-  0xa6, 0x01, 0xcb, 0x67, 0xf7, 0x8b, 0xae, 0x46, 0xa7, 0x76, 0xa4, 0x34,
-  0x37, 0x84, 0xa9, 0x8e, 0x08, 0x33, 0xcd, 0x04, 0x38, 0x3e, 0x10, 0xbd,
-  0xa8, 0xfb, 0xba, 0xfd, 0x25, 0x52, 0xfc, 0x93, 0xf4, 0x56, 0xd1, 0xfa,
-  0x9d, 0x59, 0x81, 0x16, 0xf5, 0x3a, 0xa5, 0x3b, 0x6f, 0xde, 0x8c, 0x3b,
-  0xd3, 0xd2, 0x40, 0xf0, 0x45, 0xf4, 0xb4, 0xac, 0x79, 0xdb, 0x20, 0xff,
-  0x60, 0xfd, 0xc5, 0x93, 0x49, 0xaa, 0x15, 0xd8, 0x58, 0x94, 0x6b, 0xe0,
-  0x0e, 0x68, 0x66, 0x98, 0xf6, 0xdf, 0x5e, 0x2d, 0x46, 0x6f, 0xe9, 0xd4,
-  0xd8, 0x87, 0x08, 0x50, 0x20, 0x45, 0x45, 0xab, 0xb2, 0x22, 0xe5, 0x56,
-  0xbc, 0xd1, 0x14, 0xdc, 0x5e, 0x5b, 0x4c, 0x67, 0xa3, 0x0e, 0xba, 0x13,
-  0x9e, 0x20, 0x1b, 0x0a, 0x8d, 0xaa, 0xed, 0x99, 0xcb, 0xe3, 0x29, 0xdc,
-  0xf9, 0xaa, 0x4b, 0xd3, 0x6c, 0x2a, 0xfe, 0x3c, 0x15, 0xa5, 0xd4, 0xb9,
-  0x96, 0xfa, 0x87, 0xb8, 0x4f, 0xf9, 0x41, 0xad, 0x3f, 0x65, 0x66, 0xdb,
-  0x5e, 0x13, 0x72, 0x03, 0xc9, 0x64, 0x15, 0x10, 0x16, 0x2f, 0x54, 0xd5,
-  0x75, 0x03, 0xaf, 0x04, 0x38, 0x7b, 0xfd, 0xbf, 0x22, 0xd7, 0x35, 0x5b,
-  0xfd, 0x18, 0xc1, 0xce, 0x41, 0xec, 0x0d, 0x5d, 0xf8, 0x94, 0x0b, 0x91,
-  0xf5, 0x71, 0x8e, 0x08, 0x9b, 0x0a, 0xce, 0x52, 0x50, 0x0f, 0xa0, 0x59,
-  0x98, 0x08, 0x52, 0x57, 0xa5, 0xf6, 0x9b, 0x98, 0xb7, 0x45, 0xd3, 0xd7,
-  0x7a, 0xe4, 0x16, 0x6c, 0x6f, 0x18, 0xab, 0x29, 0xcc, 0x6b, 0xc5, 0xa0,
-  0xc5, 0x7b, 0x69, 0x51, 0x85, 0x22, 0xef, 0xe9, 0xbe, 0x6b, 0xbe, 0x13,
-  0xab, 0x2d, 0xd6, 0x04, 0xe7, 0x21, 0xe0, 0xac, 0xb8, 0x40, 0xfe, 0xa6,
-  0xe0, 0x2e, 0x15, 0xc3, 0xf3, 0x09, 0x64, 0xf5, 0x07, 0xad, 0x89, 0x90,
-  0x02, 0x80, 0x7e, 0x7e, 0x63, 0x31, 0x59, 0x92, 0x7a, 0x91, 0x8c, 0x97,
-  0x65, 0xd5, 0xaa, 0x1c, 0x8c, 0x49, 0xc3, 0xb3, 0x31, 0xa4, 0x75, 0x9c,
-  0x1c, 0x45, 0xc7, 0xec, 0x9c, 0x19, 0x5e, 0xdc, 0x6e, 0x67, 0xc3, 0x54,
-  0x04, 0xa8, 0x52, 0x0e, 0x48, 0xae, 0x4d, 0xfa, 0xb7, 0x21, 0x93, 0x08,
-  0x0c, 0x93, 0x07, 0x2a, 0xea, 0x48, 0x51, 0x86, 0xb6, 0xee, 0x89, 0x56,
-  0xf3, 0xd6, 0xde, 0xdf, 0x4a, 0x2a, 0x4d, 0xd0, 0xb9, 0xc3, 0xcd, 0xd6,
-  0x2c, 0x9b, 0x62, 0x05, 0xd2, 0x47, 0xd0, 0x73, 0xc6, 0x58, 0x83, 0xc4,
-  0xbc, 0x5c, 0xca, 0x82, 0xbd, 0x6a, 0x8b, 0xbf, 0xdb, 0x44, 0x9c, 0xba,
-  0x7d, 0x19, 0x18, 0x93, 0x98, 0x8f, 0xe3, 0x23, 0x5d, 0xce, 0xb4, 0xa9,
-  0xb1, 0xdc, 0xe4, 0xa3, 0xe7, 0xf4, 0xe3, 0x5b, 0xfe, 0x61, 0xf5, 0x53,
-  0x19, 0x9f, 0xcc, 0x8c, 0x29, 0x4d, 0x24, 0x09, 0x2e, 0x54, 0x21, 0xdc,
-  0x62, 0x08, 0x2a, 0x7a, 0x8b, 0x5f, 0xf2, 0xe4, 0x91, 0x77, 0x68, 0x6e,
-  0x7f, 0x63, 0x07, 0xe7, 0xb2, 0xcc, 0x98, 0x12, 0xc7, 0xc8, 0x59, 0x99,
-  0x2d, 0x72, 0xa9, 0xfd, 0x23, 0x89, 0x2b, 0xf2, 0xa7, 0x3a, 0xce, 0x0a,
-  0x9c, 0x32, 0x65, 0x49, 0xe9, 0x0a, 0xf8, 0xac, 0xd5, 0xfd, 0x49, 0xc1,
-  0x97, 0x56, 0x04, 0xcc, 0x47, 0xe7, 0xf6, 0x58, 0x21, 0xc9, 0x06, 0x84,
-  0x67, 0xad, 0x61, 0x5e, 0x0a, 0x5a, 0xcc, 0x17, 0x1f, 0xb7, 0x8a, 0x07,
-  0x7c, 0x37, 0xb9, 0x22, 0xcd, 0x86, 0xff, 0xa6, 0x75, 0x0b, 0x45, 0x80,
-  0xf3, 0x75, 0x0b, 0xf1, 0xb0, 0x0a, 0x1a, 0x5a, 0x11, 0xac, 0x7d, 0x70,
-  0xb8, 0x2a, 0x11, 0xae, 0x08, 0x56, 0x73, 0x63, 0x86, 0x9f, 0x19, 0x5d,
-  0xd1, 0xf9, 0x83, 0xbf, 0x10, 0x23, 0xba, 0x5c, 0x07, 0x11, 0xea, 0xfa,
-  0xa0, 0xf3, 0x15, 0x19, 0xd1, 0x13, 0x92, 0x9e, 0xa6, 0x6c, 0x6f, 0x96,
-  0x2c, 0xac, 0xdf, 0x35, 0xca, 0xb7, 0x16, 0x0f, 0xf3, 0xf1, 0xf5, 0xc1,
-  0xc9, 0x70, 0x55, 0x56, 0x74, 0x5a, 0xb8, 0xf0, 0x6c, 0x0e, 0x91, 0xe1,
-  0xa7, 0x49, 0x16, 0x64, 0x8e, 0x09, 0x21, 0x52, 0x23, 0x72, 0x5a, 0xd0,
-  0x4a, 0xce, 0x4e, 0x0e, 0xbf, 0x3e, 0xb5, 0x1f, 0x2b, 0x97, 0xfc, 0xd1,
-  0x15, 0x3e, 0xe6, 0x8c, 0xe7, 0xc7, 0x92, 0xc7, 0x6d, 0x70, 0xae, 0x5c,
-  0x8a, 0xf7, 0x89, 0x10, 0x41, 0xa2, 0xbc, 0xb6, 0xd0, 0x62, 0x4f, 0x49,
-  0x52, 0x2a, 0x6e, 0xaf, 0x4a, 0x8b, 0xa7, 0xe3, 0xb6, 0xf3, 0xf5, 0x57,
-  0xcd, 0xab, 0xed, 0xe0, 0x64, 0x45, 0x77, 0xfc, 0x4d, 0xdf, 0x72, 0xb9,
-  0xf4, 0x62, 0xd7, 0xc2, 0x4d, 0x48, 0xcf, 0x6f, 0x39, 0x79, 0x5c, 0xbc,
-  0x52, 0x7e, 0x54, 0xa6, 0x6e, 0xf7, 0x27, 0x1f, 0x77, 0xa1, 0x79, 0x01,
-  0xbc, 0x00, 0xd6, 0xcb, 0x34, 0xa6, 0x3b, 0x35, 0x6a, 0xa9, 0x0e, 0x19,
-  0xf8, 0x20, 0xaa, 0x05, 0x08, 0x83, 0x55, 0x56, 0x30, 0x4b, 0xab, 0x2d,
-  0x03, 0x70, 0x02, 0x28, 0x01, 0x4d, 0x96, 0xee, 0x5c, 0xaa, 0x75, 0xf5,
-  0xb4, 0x7f, 0x47, 0x97, 0x14, 0xfc, 0xe5, 0x2c, 0x46, 0x46, 0xaf, 0xe5,
-  0x3a, 0xfa, 0xa2, 0x71, 0x20, 0x04, 0x42, 0xc7, 0x6c, 0xd4, 0xe6, 0x92,
-  0x84, 0x10, 0xc0, 0x46, 0x25, 0x07, 0xc2, 0x84, 0x2a, 0xc9, 0x49, 0x99,
-  0x88, 0x01, 0x5b, 0x21, 0x99, 0x1a, 0xb1, 0xb0, 0x24, 0x11, 0x7a, 0x57,
-  0x89, 0x85, 0x41, 0x48, 0xd7, 0x5a, 0x7f, 0x49, 0xcb, 0xaf, 0x58, 0xe1,
-  0x35, 0x4b, 0x55, 0x17, 0x1f, 0x7c, 0x23, 0xf8, 0xe1, 0x9e, 0x2d, 0x43,
-  0xf7, 0x76, 0x33, 0x55, 0x25, 0x6d, 0x57, 0x3e, 0x45, 0x92, 0xd5, 0xb5,
-  0xe1, 0x20, 0xd9, 0xba, 0x35, 0x52, 0x14, 0x01, 0x5c, 0x1d, 0x79, 0xb8,
-  0x03, 0x8b, 0x1c, 0xa7, 0x9b, 0x89, 0xad, 0x49, 0xf2, 0xbe, 0x91, 0x20,
-  0x3e, 0x5e, 0xb2, 0xb1, 0x0c, 0x6e, 0x10, 0x54, 0x5e, 0x6a, 0x6d, 0xee,
-  0x81, 0xef, 0xed, 0xce, 0x97, 0x66, 0xa2, 0xeb, 0x98, 0x6d, 0xdf, 0x43,
-  0xbc, 0xc1, 0x87, 0x81, 0xc6, 0x55, 0xbe, 0xd6, 0xa5, 0x68, 0xf1, 0x78,
-  0x8a, 0x0b, 0x03, 0x65, 0x20, 0x50, 0x58, 0xa4, 0xf3, 0x65, 0xbf, 0xd3,
-  0x7a, 0xfb, 0x05, 0x75, 0x63, 0x58, 0x16, 0x82, 0xdc, 0xac, 0xb6, 0x77,
-  0x33, 0x29, 0x4a, 0x2f, 0xa6, 0x6a, 0x15, 0xcb, 0x11, 0x49, 0x74, 0xe5,
-  0xb2, 0x6c, 0xc4, 0x58, 0x2a, 0xe4, 0x01, 0xfc, 0xc3, 0xd0, 0x30, 0x78,
-  0xc1, 0xbd, 0x0f, 0x17, 0x92, 0x21, 0x9b, 0x20, 0x4b, 0x44, 0x47, 0xaa,
-  0x5d, 0x73, 0x04, 0x78, 0x09, 0xc6, 0x4d, 0xaa, 0x8b, 0x2b, 0x7b, 0x7c,
-  0xd1, 0xfb, 0xd1, 0xe1, 0x76, 0xf2, 0x08, 0x97, 0x45, 0xf4, 0xe9, 0xdf,
-  0xed, 0x4b, 0x60, 0x7c, 0xfc, 0xc3, 0xd6, 0xcb, 0x0a, 0xb9, 0xb4, 0xcb,
-  0xea, 0x9f, 0x7a, 0xd3, 0x8e, 0xac, 0x0c, 0x12, 0x26, 0xb9, 0xb9, 0x4f,
-  0x07, 0xee, 0xce, 0xb5, 0x26, 0xa2, 0x79, 0x72, 0x27, 0x92, 0x52, 0x43,
-  0x93, 0x10, 0xb1, 0xf4, 0xcf, 0x5c, 0x00, 0x92, 0x5e, 0x21, 0x61, 0x92,
-  0xc3, 0x10, 0x24, 0x27, 0x50, 0xc8, 0xeb, 0xcf, 0xb9, 0x2a, 0x04, 0x24,
-  0xf8, 0xd0, 0xc0, 0xd9, 0xe0, 0x26, 0x9f, 0x97, 0xad, 0xd9, 0xf9, 0xec,
-  0x22, 0xdd, 0x95, 0x34, 0x74, 0xde, 0x96, 0x4f, 0xfb, 0x02, 0xe4, 0xa2,
-  0x64, 0xce, 0xf3, 0xa6, 0xc1, 0xdb, 0x67, 0x56, 0x73, 0x70, 0xfe, 0x6c,
-  0xa7, 0x1f, 0x28, 0xe7, 0xbd, 0x46, 0xe5, 0x2e, 0x76, 0x88, 0xb2, 0xc0,
-  0x14, 0xd4, 0x7e, 0x62, 0x62, 0xff, 0x54, 0xab, 0x74, 0xc0, 0xc7, 0x26,
-  0x89, 0x6e, 0x13, 0xd3, 0x72, 0x35, 0xc5, 0x6c, 0x65, 0x2e, 0x43, 0x2b,
-  0x15, 0x05, 0xdb, 0xe4, 0x04, 0x1d, 0x4b, 0x1b, 0x97, 0x10, 0x96, 0xb6,
-  0x30, 0x08, 0x9e, 0x37, 0x02, 0x3d, 0xac, 0x8c, 0x5e, 0xe4, 0x17, 0x00,
-  0xfa, 0x39, 0xbc, 0xa9, 0x6c, 0xb6, 0x96, 0x62, 0x4a, 0xd0, 0xfb, 0x7d,
-  0xf0, 0x00, 0x5c, 0xac, 0xac, 0x57, 0xf5, 0x57, 0xe6, 0xbf, 0x5b, 0xaa,
-  0x08, 0xb3, 0x12, 0xa9, 0xaf, 0xd5, 0x85, 0xd7, 0x78, 0x3a, 0x09, 0x4e,
-  0x94, 0x14, 0x48, 0x88, 0x5c, 0xe4, 0xc4, 0xee, 0xe3, 0xcd, 0xa9, 0x76,
-  0xd5, 0xba, 0x8b, 0xec, 0x77, 0xfa, 0x80, 0x7c, 0x47, 0x0f, 0x54, 0x70,
-  0x21, 0x61, 0x8f, 0x49, 0xce, 0xd0, 0x64, 0xb5, 0xac, 0x48, 0x3f, 0x43,
-  0x86, 0xd2, 0xd7, 0x8d, 0x7d, 0xbc, 0x7b, 0xd8, 0x3e, 0x72, 0xc5, 0xa4,
-  0x98, 0x38, 0xa7, 0x30, 0x32, 0x32, 0x48, 0x64, 0x61, 0xfb, 0x83, 0xbb,
-  0x05, 0xdb, 0xd0, 0x67, 0xa3, 0x46, 0xea, 0xd4, 0xe7, 0x5c, 0x6b, 0x02,
-  0x69, 0x20, 0xd3, 0x14, 0x81, 0x96, 0xdb, 0x33, 0x1b, 0xa5, 0xcc, 0x05,
-  0xd3, 0xe0, 0x51, 0xc6, 0x30, 0xfd, 0xb2, 0x3c, 0x4d, 0xe2, 0xf0, 0xe3,
-  0xed, 0x3a, 0x8c, 0x51, 0xd6, 0x5d, 0x1e, 0x5b, 0x2b, 0x01, 0x8e, 0x6d,
-  0x5d, 0xab, 0xea, 0x12, 0xe9, 0x1a, 0x79, 0xa5, 0xb6, 0x25, 0x54, 0x20,
-  0x5a, 0x91, 0x82, 0x1a, 0x45, 0xeb, 0x06, 0x68, 0x29, 0xd6, 0xba, 0x0d,
-  0x45, 0xa0, 0xb6, 0x4b, 0x53, 0x91, 0x9d, 0x9f, 0x6a, 0x0e, 0xc9, 0x41,
-  0x8d, 0x74, 0x9d, 0xe7, 0xad, 0x38, 0x0d, 0x6c, 0xbb, 0xf9, 0x20, 0xf9,
-  0x90, 0x15, 0x5a, 0xf0, 0x29, 0x92, 0x3d, 0x6e, 0x41, 0x93, 0xc4, 0x7a,
-  0x1e, 0x2f, 0x5a, 0x1c, 0x81, 0xb8, 0xf8, 0x9e, 0xa0, 0x6c, 0x48, 0x50,
-  0xbc, 0x0c, 0x89, 0x82, 0x51, 0xc1, 0xd6, 0xef, 0x12, 0xc1, 0xe4, 0xfa,
-  0xb5, 0xfb, 0x6e, 0x96, 0x4e, 0x9f, 0x68, 0x6e, 0x9a, 0xaa, 0x2a, 0x06,
-  0xa1, 0x6e, 0xd9, 0x7a, 0xda, 0xdd, 0xcc, 0x98, 0xe7, 0xb2, 0x3d, 0x60,
-  0xb9, 0x78, 0x14, 0x81, 0xc2, 0xab, 0x59, 0x8d, 0x09, 0x23, 0x64, 0xbf,
-  0xa4, 0x26, 0x2a, 0x35, 0xa6, 0xa1, 0x82, 0x3d, 0xde, 0x9c, 0xa4, 0xdc,
-  0x22, 0x9c, 0xd8, 0x8b, 0xa0, 0xb0, 0xb6, 0x30, 0xc2, 0xa2, 0x89, 0x16,
-  0xab, 0x87, 0xde, 0x42, 0x74, 0x96, 0xe4, 0xa5, 0x51, 0x95, 0xf5, 0x01,
-  0x62, 0x7c, 0x20, 0xe9, 0x5f, 0x32, 0xba, 0xa0, 0x54, 0x70, 0xe4, 0x01,
-  0xb5, 0x2c, 0x16, 0x47, 0xa2, 0xd7, 0xd7, 0xb3, 0xfc, 0xf1, 0xe6, 0x94,
-  0x5c, 0x3f, 0x72, 0x6a, 0xf1, 0x62, 0xa1, 0x3d, 0x7e, 0xdc, 0xae, 0xfc,
-  0x26, 0xf3, 0xd6, 0x62, 0x4c, 0x9b, 0xc4, 0xb5, 0x23, 0x5b, 0x80, 0x4d,
-  0x36, 0xa5, 0x16, 0xd7, 0x92, 0xaf, 0x9f, 0x45, 0x4f, 0xf3, 0xb9, 0xa0,
-  0xac, 0x42, 0x6d, 0xf2, 0x8f, 0x54, 0x89, 0xaa, 0x2f, 0x07, 0xe3, 0x1e,
-  0x2a, 0x2f, 0xfc, 0xdf, 0xb8, 0x1e, 0x12, 0x8a, 0x65, 0x79, 0x9c, 0x3c,
-  0x19, 0xc8, 0x1f, 0x2e, 0xad, 0x9d, 0x0e, 0x2b, 0x69, 0x74, 0x83, 0xa7,
-  0x46, 0x97, 0x16, 0xde, 0x60, 0x13, 0xc3, 0xa5, 0x94, 0xf4, 0xeb, 0x60,
-  0xa0, 0x02, 0x09, 0xc1, 0xc1, 0xb2, 0x4f, 0xb2, 0x0e, 0x2d, 0x60, 0x2c,
-  0xc5, 0x0a, 0xbc, 0x70, 0x35, 0x36, 0xbf, 0x72, 0x20, 0xb9, 0xb6, 0x84,
-  0x12, 0xd7, 0x9b, 0x63, 0x6b, 0x8c, 0xd8, 0xbe, 0x6f, 0x59, 0x1f, 0x7c,
-  0x84, 0x44, 0x2d, 0x2c, 0x35, 0x64, 0x89, 0x0d, 0xde, 0x00, 0x58, 0x71,
-  0x5e, 0x70, 0x4d, 0xd5, 0x0f, 0x8a, 0x16, 0x3d, 0x3e, 0x10, 0xe2, 0x85,
-  0x0b, 0xb7, 0x4e, 0xc2, 0x1f, 0x84, 0x4b, 0xf5, 0x1c, 0x29, 0xf6, 0x20,
-  0xe9, 0xda, 0xca, 0x3d, 0xde, 0x9c, 0x54, 0x84, 0x70, 0x29, 0xb8, 0xb5,
-  0x04, 0x5d, 0x04, 0x6b, 0xf2, 0x97, 0x5a, 0xf6, 0xed, 0x2e, 0x2e, 0x9e,
-  0x1a, 0x5d, 0x2c, 0xda, 0x5e, 0x75, 0x25, 0xc4, 0xba, 0xa4, 0x71, 0x41,
-  0xa0, 0xf2, 0x48, 0x8c, 0x66, 0x1f, 0xc3, 0xff, 0x35, 0xdb, 0x1e, 0x49,
-  0xf6, 0x2e, 0x28, 0x27, 0x58, 0xaf, 0x30, 0xbd, 0xf4, 0x49, 0x59, 0xa0,
-  0x2d, 0xf7, 0xd4, 0xed, 0x1c, 0x46, 0xff, 0xcb, 0xce, 0xd3, 0xaf, 0xce,
-  0xf5, 0x03, 0x68, 0x26, 0x20, 0x18, 0x35, 0x4f, 0xd3, 0x48, 0xcf, 0xda,
-  0x13, 0x6b, 0xc7, 0x91, 0xa3, 0x72, 0x6d, 0x86, 0xe7, 0xaa, 0xce, 0x35,
-  0x94, 0x02, 0x5a, 0x00, 0x11, 0x5a, 0xe4, 0x1d, 0xdd, 0x89, 0x0a, 0x04,
-  0xee, 0x3c, 0x49, 0x26, 0x06, 0x77, 0x46, 0x32, 0x0d, 0x9f, 0xa7, 0x32,
-  0xf9, 0x18, 0xee, 0x57, 0xd0, 0x56, 0xb6, 0x1e, 0x22, 0x8e, 0x8d, 0xfd,
-  0x60, 0xd8, 0x3a, 0x0d, 0xb9, 0xc2, 0x23, 0x11, 0x48, 0x58, 0xab, 0x88,
-  0x4f, 0x49, 0xee, 0xe1, 0x78, 0x56, 0x9c, 0x4d, 0x34, 0xab, 0x51, 0x65,
-  0xd1, 0x2f, 0x68, 0x76, 0x65, 0x34, 0x9c, 0x6b, 0x54, 0x7d, 0x2c, 0x4f,
-  0x37, 0x6a, 0xe1, 0x1e, 0x6e, 0xa0, 0x90, 0xb5, 0x9f, 0xd8, 0xc7, 0x55,
-  0xa2, 0x38, 0xba, 0x76, 0x75, 0x3a, 0xc2, 0x9b, 0x5e, 0x44, 0xb2, 0xd5,
-  0x33, 0x0a, 0x74, 0xe0, 0xc7, 0xbb, 0x86, 0x69, 0xd3, 0x84, 0xc2, 0xd6,
-  0x31, 0x2c, 0x68, 0xf7, 0xfd, 0x5e, 0xb9, 0x31, 0xc4, 0xec, 0xd1, 0x0c,
-  0x10, 0x92, 0x22, 0x3c, 0x18, 0xe8, 0xca, 0xa4, 0xd5, 0x14, 0xcb, 0x5c,
-  0x30, 0x99, 0x9f, 0xa6, 0x3b, 0xc7, 0x34, 0xac, 0x3d, 0x0e, 0x71, 0xe6,
-  0x39, 0x91, 0x08, 0xa9, 0x07, 0xef, 0x91, 0xe1, 0xb9, 0x3d, 0xf7, 0x4b,
-  0x64, 0xe3, 0xb3, 0x28, 0xc3, 0x5f, 0x69, 0x78, 0xd2, 0xda, 0x47, 0x0e,
-  0x4e, 0x61, 0x90, 0x3e, 0x70, 0x30, 0x7c, 0x38, 0xb8, 0x7d, 0xf9, 0xbc,
-  0x7f, 0xc1, 0x9f, 0x2b, 0xc5, 0xd8, 0x26, 0x24, 0x41, 0x15, 0x6a, 0xe6,
-  0x34, 0x97, 0x4f, 0x0e, 0x2e, 0x17, 0x0e, 0x12, 0xcf, 0x1f, 0x5a, 0x07,
-  0x41, 0xba, 0x88, 0x49, 0x8b, 0x85, 0x0d, 0xe2, 0x44, 0x6c, 0x46, 0xdc,
-  0xf7, 0x3c, 0xb9, 0x8b, 0xdc, 0xd7, 0xc0, 0x2d, 0x48, 0x0d, 0xc1, 0x65,
-  0x8c, 0x68, 0xaa, 0x8f, 0xe3, 0x43, 0x1f, 0x91, 0xff, 0x6f, 0x83, 0x31,
-  0xbe, 0x5e, 0x54, 0x07, 0x43, 0x63, 0xf1, 0xdf, 0x88, 0x7f, 0x10, 0xa4,
-  0xec, 0x6b, 0x23, 0x9b, 0xda, 0xf4, 0xcf, 0x69, 0x38, 0xed, 0x03, 0xb2,
-  0x2e, 0x3f, 0x40, 0x85, 0x92, 0x01, 0x21, 0x25, 0x3f, 0xae, 0x1c, 0x0d,
-  0xac, 0xb0, 0xab, 0xaa, 0xc3, 0x5c, 0xba, 0x2f, 0xbe, 0x77, 0x8c, 0xed,
-  0xa9, 0x01, 0xe9, 0xac, 0xb4, 0xd4, 0x50, 0xb5, 0x54, 0x33, 0xf2, 0xfb,
-  0xa1, 0xb9, 0x8e, 0x39, 0x57, 0x92, 0x8d, 0x06, 0x4f, 0x5c, 0xe7, 0xae,
-  0x41, 0x38, 0xea, 0x90, 0x65, 0xa6, 0x2e, 0x3a, 0x96, 0x4c, 0x25, 0xfb,
-  0xae, 0x91, 0x1f, 0xbc, 0xd3, 0x3a, 0xfb, 0x4b, 0x52, 0x5f, 0x81, 0x05,
-  0xfa, 0x01, 0x90, 0x99, 0x8e, 0x40, 0x0d, 0xc8, 0x1e, 0x9f, 0x9a, 0x27,
-  0x40, 0xa0, 0xc7, 0x96, 0x0b, 0x94, 0x4f, 0xe4, 0x25, 0x9a, 0x66, 0xb0,
-  0xe2, 0x3f, 0x3e, 0x5c, 0x41, 0x8e, 0xa8, 0x01, 0xf4, 0x5b, 0x16, 0x43,
-  0x0d, 0x08, 0xa0, 0x5d, 0x09, 0x2d, 0x8a, 0xe9, 0x07, 0x7a, 0x3a, 0xbd,
-  0x7c, 0xf8, 0x20, 0x57, 0xca, 0xc7, 0x5d, 0xdb, 0xf2, 0xac, 0x1d, 0x2f,
-  0x76, 0x17, 0x11, 0x07, 0x20, 0x21, 0x33, 0x21, 0x91, 0xf0, 0x52, 0x8c,
-  0xca, 0x11, 0x9a, 0x4d, 0xc7, 0x1f, 0xa5, 0xa3, 0x3a, 0x25, 0xde, 0x1d,
-  0xd4, 0x01, 0xa3, 0x54, 0xc1, 0x27, 0x0e, 0x9b, 0xa1, 0xb6, 0xf5, 0xb4,
-  0x7c, 0xc7, 0x8d, 0x78, 0x08, 0xff, 0xc7, 0x74, 0x81, 0x5f, 0x2f, 0x9c,
-  0xc4, 0x65, 0xed, 0x7e, 0x5c, 0xa5, 0xb3, 0x6a, 0xd2, 0x84, 0xaf, 0xa5,
-  0xb5, 0x2a, 0x91, 0x5d, 0x4a, 0x7c, 0xfe, 0x73, 0x70, 0x10, 0x1f, 0x9d,
-  0xb8, 0x9e, 0xdc, 0xa7, 0x02, 0xe0, 0xd3, 0x96, 0xec, 0xa3, 0x3c, 0xa3,
-  0x48, 0xca, 0xf6, 0x4c, 0xbc, 0xfb, 0x07, 0x97, 0xe1, 0x20, 0x53, 0xc8,
-  0xb9, 0xd0, 0xce, 0x8a, 0xcc, 0x21, 0x94, 0x0d, 0x12, 0x80, 0xac, 0x78,
-  0xad, 0x45, 0x97, 0xf5, 0x41, 0x4a, 0x85, 0xa4, 0x4e, 0x49, 0xeb, 0x1d,
-  0x84, 0xf4, 0xdb, 0x88, 0xdb, 0x52, 0x5f, 0x61, 0x26, 0x85, 0xea, 0x8c,
-  0xb3, 0x26, 0x6c, 0x2e, 0x9e, 0x86, 0x4e, 0x82, 0x40, 0x9d, 0x51, 0xdc,
-  0x18, 0x4e, 0x9e, 0x40, 0xfc, 0x60, 0xb0, 0x11, 0x6d, 0xf1, 0x79, 0x60,
-  0xd5, 0xa4, 0xf2, 0xd0, 0x4c, 0xa6, 0x0f, 0x8a, 0x6e, 0xcb, 0x25, 0x57,
-  0xc5, 0xde, 0xc5, 0xef, 0x4a, 0x04, 0x2a, 0x48, 0xd6, 0x02, 0x25, 0xe9,
-  0xfb, 0xa6, 0x9f, 0xc1, 0xd5, 0x69, 0x73, 0x0a, 0x55, 0x30, 0x3c, 0x09,
-  0xae, 0x68, 0xd4, 0x31, 0x71, 0x36, 0xcd, 0x66, 0xb1, 0x3b, 0xdc, 0xa0,
-  0x5c, 0xce, 0x58, 0xec, 0x97, 0x58, 0xb8, 0x7a, 0xfd, 0x2f, 0xdb, 0x25,
-  0x18, 0xd6, 0x81, 0xff, 0xe3, 0x2b, 0x7e, 0xb6, 0xc5, 0x7c, 0xd4, 0xca,
-  0xc0, 0xb5, 0xc3, 0xe5, 0x9a, 0xc7, 0xca, 0x42, 0x59, 0xa4, 0x49, 0x04,
-  0x7d, 0x6e, 0xf7, 0x02, 0xca, 0x80, 0x86, 0xde, 0x40, 0xa5, 0x75, 0x95,
-  0x8f, 0x1a, 0x88, 0x2f, 0x6c, 0xa1, 0x8a, 0x1f, 0x0c, 0x79, 0x48, 0xda,
-  0x68, 0x25, 0xca, 0x5e, 0x10, 0x04, 0x6d, 0xc5, 0xe0, 0x1a, 0x51, 0x6f,
-  0x58, 0x69, 0xad, 0x7e, 0xb1, 0xae, 0x61, 0xff, 0x1b, 0x2e, 0x32, 0x22,
-  0xa1, 0x33, 0x06, 0xfe, 0x00, 0x87, 0xd7, 0x1f, 0x1f, 0x0d, 0xbc, 0xfc,
-  0x95, 0x98, 0xc5, 0x0f, 0x08, 0xa7, 0x92, 0x8b, 0x6f, 0x65, 0x71, 0x16,
-  0xa6, 0x27, 0x83, 0x5d, 0x4e, 0xe1, 0x32, 0x1e, 0x93, 0x0e, 0x43, 0xda,
-  0x90, 0xbd, 0xa9, 0xd5, 0x43, 0xc3, 0x74, 0xb7, 0x8f, 0x2c, 0x75, 0x09,
-  0x32, 0x77, 0xc5, 0x1a, 0x2e, 0x2a, 0xbc, 0xc8, 0x89, 0xc3, 0x02, 0x71,
-  0xb7, 0xa2, 0x0c, 0x45, 0x98, 0x69, 0x23, 0x0b, 0xaf, 0xa3, 0x41, 0xc4,
-  0xc7, 0x5d, 0x5a, 0x68, 0xa8, 0x9a, 0x62, 0x09, 0x6a, 0x2a, 0x1d, 0xa2,
-  0x1d, 0xbe, 0x3e, 0xbc, 0xd8, 0x68, 0xe2, 0x53, 0xc5, 0x13, 0x3f, 0x32,
-  0x60, 0x98, 0xea, 0xc1, 0x88, 0x5d, 0xad, 0x74, 0x97, 0xbc, 0x29, 0xea,
-  0x56, 0x72, 0xbf, 0x98, 0xc6, 0x73, 0xad, 0xdb, 0x57, 0x6b, 0x6e, 0x9f,
-  0x96, 0x81, 0x79, 0x5b, 0x10, 0x4a, 0xa5, 0x31, 0x06, 0xae, 0xec, 0xb1,
-  0x53, 0xff, 0x91, 0x1e, 0xc5, 0x2d, 0x1e, 0x1c, 0x1e, 0x1f, 0x5e, 0x1c,
-  0x22, 0x34, 0xbd, 0x91, 0x24, 0xcb, 0x0a, 0xd9, 0x84, 0x53, 0xa3, 0xaf,
-  0xe7, 0x19, 0xdd, 0xca, 0x12, 0xc0, 0x42, 0xc2, 0xc0, 0xf7, 0xc9, 0xe8,
-  0x60, 0xef, 0x3b, 0x09, 0xe0, 0x28, 0xa2, 0xb3, 0xf3, 0xd3, 0xb3, 0xb7,
-  0x47, 0x27, 0x07, 0xbd, 0x68, 0xff, 0xf4, 0xec, 0xc7, 0x5e, 0xf4, 0xee,
-  0xf4, 0xbb, 0xc3, 0x16, 0x0f, 0x2a, 0x7b, 0xef, 0x9b, 0xd9, 0x7e, 0x6f,
-  0x57, 0xec, 0x76, 0x08, 0x45, 0xaa, 0x5b, 0x1d, 0x24, 0x59, 0x1d, 0x1f,
-  0x0d, 0x2f, 0xb0, 0xf5, 0xf5, 0x98, 0x38, 0x64, 0x0d, 0x08, 0x6e, 0x7f,
-  0x5a, 0x58, 0xb8, 0x0a, 0xd7, 0xa5, 0xfb, 0xed, 0xa8, 0xfa, 0x81, 0x23,
-  0x9a, 0x58, 0x0b, 0x50, 0x68, 0x33, 0xfe, 0xb7, 0x05, 0x2c, 0x33, 0xf6,
-  0x2a, 0x0d, 0x7b, 0xb7, 0xb5, 0x78, 0xd4, 0xb5, 0xe4, 0x44, 0xd1, 0xcb,
-  0x82, 0xbe, 0x35, 0xaa, 0xc9, 0xff, 0xd1, 0x64, 0x99, 0x37, 0x65, 0xa1,
-  0x38, 0x0a, 0x3a, 0x94, 0x3c, 0xb1, 0x5e, 0x45, 0x3f, 0x64, 0x5f, 0x6b,
-  0xe1, 0xeb, 0xc1, 0x50, 0xf7, 0xc1, 0x0b, 0x0d, 0xef, 0x95, 0x40, 0x95,
-  0x86, 0x00, 0x73, 0xe1, 0x90, 0x6c, 0xda, 0xdb, 0xd1, 0x72, 0x3e, 0x65,
-  0xec, 0x2a, 0xbe, 0x9b, 0x04, 0x54, 0xea, 0xc7, 0x47, 0x23, 0xc9, 0x34,
-  0x2e, 0x33, 0x8c, 0x3c, 0x10, 0xe6, 0xb3, 0x74, 0x88, 0xa8, 0xb8, 0xde,
-  0x63, 0xf8, 0xb8, 0x22, 0xac, 0x49, 0x33, 0xd4, 0x4d, 0x15, 0x0c, 0x09,
-  0xe9, 0x08, 0x92, 0xff, 0x10, 0x46, 0x4a, 0xd7, 0x8c, 0x9c, 0x12, 0x62,
-  0xff, 0x3d, 0xc9, 0x82, 0x75, 0x88, 0xe7, 0xfa, 0xee, 0xaa, 0xdc, 0x18,
-  0x05, 0x1a, 0x7b, 0x94, 0xc1, 0xff, 0x7a, 0x44, 0xf2, 0xa3, 0x23, 0x12,
-  0x59, 0xd4, 0xd7, 0xf8, 0xe3, 0x17, 0x91, 0x49, 0x80, 0xdc, 0x26, 0x4a,
-  0xe7, 0x3a, 0x49, 0x76, 0x15, 0x7a, 0xe9, 0x37, 0xf2, 0x47, 0x26, 0x1b,
-  0x6a, 0xfd, 0x0a, 0xb6, 0x5f, 0xcd, 0x4d, 0x2c, 0x3a, 0x55, 0xa9, 0xa4,
-  0x42, 0x22, 0x2d, 0x12, 0x8f, 0xec, 0xb9, 0x04, 0x5d, 0xa7, 0x0c, 0xce,
-  0xcd, 0xf7, 0x2e, 0xe0, 0x62, 0x92, 0xf2, 0x37, 0x5c, 0xba, 0xbf, 0x71,
-  0x1a, 0x3a, 0x3d, 0xde, 0xc7, 0x79, 0x78, 0x3d, 0x61, 0x09, 0x9b, 0xb8,
-  0xa0, 0x46, 0x57, 0xad, 0x04, 0xaa, 0xdf, 0x20, 0xee, 0x2a, 0x2c, 0x3d,
-  0x56, 0x2b, 0x33, 0x0b, 0x26, 0x8c, 0x1d, 0x30, 0x62, 0x98, 0x47, 0xad,
-  0x03, 0xc3, 0x8e, 0xd3, 0xd2, 0x56, 0xb8, 0x45, 0x26, 0xd0, 0x92, 0xe0,
-  0x8a, 0xda, 0xc9, 0xe7, 0x91, 0x1e, 0x77, 0x95, 0x8f, 0x56, 0x34, 0xa9,
-  0xa6, 0x50, 0xfe, 0xb6, 0x05, 0xcb, 0xd7, 0x41, 0xfe, 0x87, 0xd3, 0x30,
-  0x29, 0x01, 0x75, 0x81, 0x10, 0x3f, 0x43, 0x5c, 0x0e, 0xcf, 0x48, 0x04,
-  0x45, 0xc1, 0x5d, 0x36, 0x94, 0x76, 0xb6, 0x17, 0x5a, 0xf4, 0xa8, 0x82,
-  0x78, 0x20, 0x76, 0xc3, 0x43, 0x28, 0xd3, 0x28, 0xd5, 0x64, 0x6c, 0x00,
-  0xbc, 0x06, 0x57, 0xdd, 0x92, 0x19, 0xa3, 0x71, 0x19, 0x3e, 0x63, 0x55,
-  0x83, 0xe1, 0x95, 0xf1, 0xfe, 0x4e, 0x21, 0x50, 0x5d, 0x1d, 0x37, 0x40,
-  0x11, 0x50, 0x7b, 0x3c, 0x4e, 0x07, 0x43, 0xb0, 0x02, 0x87, 0xa0, 0x10,
-  0x20, 0x82, 0xda, 0xac, 0xf5, 0x6e, 0x6b, 0x97, 0xac, 0x84, 0x23, 0xd5,
-  0xde, 0x50, 0x28, 0x75, 0x14, 0x1c, 0x5b, 0xef, 0x6f, 0xb8, 0xf8, 0x51,
-  0xa0, 0xcc, 0xca, 0x7e, 0x37, 0x2d, 0x2f, 0xb1, 0x33, 0x7d, 0xb8, 0xb8,
-  0xe5, 0x6c, 0x3a, 0xf1, 0x07, 0xcb, 0x32, 0xc5, 0xb8, 0xb3, 0x4d, 0xb1,
-  0xcb, 0xba, 0x8a, 0xa8, 0x45, 0x53, 0x56, 0x6f, 0x34, 0x36, 0x4f, 0xee,
-  0xc2, 0xc6, 0xbc, 0x54, 0xe1, 0x1a, 0xfc, 0x2d, 0x23, 0xfa, 0x19, 0x6f,
-  0x11, 0xba, 0x7b, 0xd1, 0x0a, 0xd4, 0xcc, 0xc0, 0x03, 0x01, 0x64, 0xa3,
-  0x69, 0x57, 0x10, 0x61, 0x02, 0x5b, 0x78, 0x5f, 0x6c, 0x0e, 0xa0, 0x35,
-  0xc3, 0xa7, 0x6d, 0x4b, 0x88, 0x07, 0x73, 0x3d, 0xa6, 0x33, 0x69, 0x31,
-  0x01, 0x0e, 0xe8, 0xd4, 0xae, 0x91, 0x46, 0x41, 0x2f, 0xcc, 0x4c, 0x2a,
-  0xe7, 0x72, 0x2e, 0x69, 0x7b, 0x1e, 0x15, 0x88, 0xcf, 0x8d, 0xa1, 0x62,
-  0xa5, 0x8f, 0x3a, 0x9c, 0x36, 0x30, 0x2a, 0x96, 0xf9, 0x64, 0x39, 0xeb,
-  0x84, 0x20, 0x05, 0xba, 0x42, 0xcc, 0x52, 0xeb, 0x47, 0x43, 0xee, 0x29,
-  0xea, 0xf5, 0xc5, 0x56, 0xcd, 0xe4, 0x6f, 0x78, 0x94, 0x01, 0x02, 0x65,
-  0x7f, 0x3b, 0x24, 0x24, 0x6a, 0xaf, 0x21, 0x47, 0x96, 0x7c, 0xf5, 0xfd,
-  0x86, 0xbb, 0xb8, 0x45, 0x2b, 0xca, 0x32, 0xfa, 0xf6, 0x60, 0xab, 0x5d,
-  0x22, 0xe6, 0x70, 0xc6, 0x71, 0xe2, 0xab, 0xc0, 0xa7, 0xa4, 0xf3, 0xf2,
-  0x68, 0x0b, 0x2f, 0xdc, 0x49, 0x7c, 0x8a, 0xab, 0x8a, 0xad, 0xc7, 0xb6,
-  0x7e, 0x29, 0x5c, 0xba, 0x92, 0xd0, 0x85, 0xe3, 0x13, 0x40, 0x0d, 0x48,
-  0xc4, 0xee, 0xbf, 0xeb, 0xa4, 0xd1, 0x60, 0x78, 0xdb, 0xcc, 0x84, 0xa7,
-  0xc5, 0xed, 0x76, 0x6b, 0x91, 0x94, 0xda, 0xd0, 0x58, 0x58, 0xbb, 0x38,
-  0x1e, 0xba, 0x88, 0xe9, 0x6d, 0x91, 0xd2, 0x1d, 0x4e, 0x8d, 0xd3, 0x98,
-  0x1a, 0x27, 0x4b, 0x6d, 0x39, 0xfc, 0xb2, 0xca, 0xe9, 0x7e, 0x08, 0x3b,
-  0x7c, 0x85, 0x16, 0xd3, 0xdb, 0x9d, 0xd6, 0x21, 0xd8, 0x18, 0x2a, 0x83,
-  0x60, 0xeb, 0x8c, 0x0d, 0x62, 0xa7, 0x39, 0x08, 0xe1, 0x25, 0xed, 0x43,
-  0xe0, 0x57, 0x1b, 0x43, 0x78, 0xa6, 0x43, 0x78, 0xf6, 0xb1, 0xab, 0x10,
-  0x0e, 0xe0, 0xd9, 0x2f, 0x5d, 0x85, 0xd6, 0x21, 0x3c, 0xe7, 0x9c, 0x84,
-  0xc5, 0xed, 0xf3, 0x96, 0x8c, 0x29, 0x33, 0xa8, 0x81, 0x67, 0x01, 0xd5,
-  0x66, 0x2a, 0x15, 0x61, 0x7d, 0x14, 0x00, 0x17, 0xba, 0xb4, 0xaa, 0xb6,
-  0x99, 0x77, 0x89, 0x1d, 0xd5, 0x6b, 0x5a, 0xea, 0x98, 0x3d, 0x28, 0xba,
-  0xa0, 0xf5, 0x5c, 0xea, 0x2f, 0x1c, 0x74, 0xdd, 0xd7, 0x1e, 0x6a, 0x95,
-  0xce, 0xa5, 0x56, 0xf3, 0x8a, 0xe0, 0x6f, 0x24, 0x9b, 0x0a, 0x4c, 0x9d,
-  0x96, 0x68, 0xca, 0xb8, 0xad, 0xe7, 0x36, 0xa8, 0x44, 0x22, 0x71, 0x83,
-  0xe9, 0xbe, 0x94, 0xe9, 0xbe, 0xfc, 0xbf, 0x69, 0xba, 0x2f, 0x57, 0x4f,
-  0xf7, 0x13, 0xb1, 0x3e, 0x00, 0x23, 0xb6, 0x3f, 0x8a, 0xf3, 0x95, 0x00,
-  0xdb, 0x16, 0x3f, 0xea, 0x00, 0x65, 0x2b, 0x79, 0x10, 0x85, 0x40, 0x69,
-  0xc9, 0x37, 0xd4, 0xcc, 0x6a, 0x56, 0x50, 0x11, 0xfa, 0x19, 0xdb, 0xaa,
-  0x28, 0xd3, 0x31, 0xf3, 0x39, 0xb6, 0x28, 0x71, 0xa9, 0x9d, 0x61, 0x28,
-  0x3e, 0x33, 0xef, 0xff, 0xef, 0xcd, 0xc1, 0xca, 0x62, 0xb0, 0x07, 0xcd,
-  0x2a, 0xad, 0xbd, 0xc8, 0xa1, 0x2c, 0xd7, 0xab, 0xbe, 0x06, 0xc8, 0x44,
-  0xda, 0xe1, 0xe1, 0xc9, 0x77, 0x47, 0xe7, 0xa7, 0x27, 0xef, 0x0e, 0x4f,
-  0x2e, 0xc2, 0xd6, 0x2f, 0x50, 0x02, 0xb3, 0xcd, 0x36, 0xd7, 0x56, 0xf1,
-  0x47, 0x44, 0x66, 0xd8, 0x85, 0x38, 0xa7, 0x79, 0xb1, 0xd0, 0xbf, 0x06,
-  0x61, 0x73, 0xc1, 0x43, 0x76, 0x3e, 0x59, 0x8e, 0x5b, 0xb0, 0x77, 0x62,
-  0xc2, 0xc1, 0x80, 0x03, 0x00, 0x25, 0x7c, 0x10, 0x1b, 0x8c, 0x54, 0xf6,
-  0x4b, 0xee, 0xc7, 0xc9, 0xc2, 0x16, 0xd8, 0x5f, 0x38, 0x5a, 0x3b, 0x34,
-  0x08, 0xef, 0xab, 0x0c, 0xc2, 0xef, 0x6e, 0xd0, 0xe0, 0x4f, 0x66, 0x09,
-  0xdb, 0xdd, 0xdc, 0xfc, 0x19, 0xe8, 0x8f, 0x5f, 0xa8, 0xd5, 0xb4, 0x79,
-  0x79, 0x87, 0xc6, 0x20, 0x5f, 0x58, 0xc6, 0x12, 0x2c, 0x61, 0x7e, 0x5b,
-  0x0b, 0xbc, 0x6e, 0xc3, 0x0f, 0xa4, 0x8f, 0xff, 0xf0, 0xe3, 0xaf, 0xdc,
-  0xc5, 0xb0, 0x52, 0xcf, 0xe4, 0x57, 0xef, 0xa2, 0xa2, 0xa1, 0xef, 0x1d,
-  0x1f, 0xff, 0xaa, 0x1d, 0x40, 0x4b, 0xf1, 0xc6, 0xc7, 0xbe, 0x33, 0x3e,
-  0x5a, 0x76, 0x6a, 0x43, 0x21, 0xae, 0x28, 0x34, 0x27, 0xa7, 0x3a, 0x1a,
-  0x31, 0x59, 0xf5, 0xad, 0x54, 0xd0, 0xc4, 0x15, 0xf3, 0xe4, 0x81, 0x35,
-  0xa0, 0xcc, 0xf1, 0x25, 0x84, 0x2c, 0x87, 0xd7, 0x6a, 0xb6, 0x64, 0xe0,
-  0xd0, 0x21, 0xe3, 0x2b, 0x73, 0x86, 0x4a, 0x01, 0xc6, 0x34, 0x53, 0x78,
-  0x8b, 0xb9, 0x99, 0x41, 0x44, 0x38, 0x9c, 0x0d, 0x35, 0xa1, 0x39, 0x6d,
-  0x8e, 0x89, 0x4e, 0x71, 0xbe, 0x4b, 0x54, 0x57, 0x60, 0xdd, 0x01, 0x43,
-  0xb1, 0xd3, 0xf4, 0xc3, 0xd1, 0x45, 0xb4, 0x7f, 0x7a, 0x50, 0x3d, 0xc3,
-  0x17, 0x12, 0xf9, 0x9a, 0xa3, 0x68, 0xd7, 0x72, 0x4e, 0xdc, 0x8e, 0x35,
-  0x8d, 0xf4, 0x12, 0x48, 0x77, 0x0e, 0x4a, 0x1f, 0x01, 0x86, 0x66, 0x73,
-  0xa2, 0x85, 0x95, 0xda, 0x83, 0xb9, 0x44, 0x0d, 0x4e, 0x02, 0x8b, 0x44,
-  0x15, 0x3d, 0xda, 0xd9, 0x7f, 0x39, 0xe2, 0x9c, 0x41, 0x90, 0x88, 0xf7,
-  0x88, 0x05, 0x83, 0xd8, 0x10, 0x17, 0x11, 0x9c, 0x8b, 0x65, 0x8a, 0xa4,
-  0xb0, 0x3d, 0xaf, 0x86, 0x04, 0x30, 0x77, 0x52, 0x4d, 0x29, 0x47, 0x15,
-  0x09, 0xad, 0x7d, 0x7b, 0xcf, 0xa8, 0xfe, 0x18, 0x4d, 0x25, 0x50, 0x76,
-  0x5b, 0xbd, 0x0a, 0x73, 0x0f, 0x8c, 0xe2, 0xb1, 0xc6, 0x60, 0x86, 0xe0,
-  0x14, 0x93, 0x89, 0xa5, 0x6b, 0x19, 0x6a, 0x9c, 0x95, 0xda, 0x91, 0x52,
-  0xed, 0x8d, 0x9d, 0x77, 0x4d, 0xb8, 0x7e, 0x76, 0x94, 0xea, 0xa5, 0xfa,
-  0x00, 0x0b, 0x5e, 0xe2, 0xc4, 0x4a, 0xff, 0x16, 0x1c, 0xed, 0x67, 0x3a,
-  0x98, 0xf3, 0x63, 0x9a, 0xf9, 0x54, 0x8c, 0xeb, 0x1a, 0x2d, 0x8f, 0x32,
-  0x4b, 0xf0, 0xcd, 0xb0, 0xaa, 0xac, 0xb5, 0x77, 0xfd, 0x9b, 0x2f, 0xcc,
-  0x74, 0xa7, 0x24, 0xe1, 0x71, 0x5c, 0x95, 0x1a, 0x24, 0xf6, 0x4a, 0xf5,
-  0x50, 0x25, 0x58, 0x89, 0x8f, 0x1b, 0x03, 0xce, 0x50, 0x0c, 0xe6, 0xcd,
-  0x02, 0x23, 0xb5, 0x50, 0xa3, 0x97, 0xb5, 0x7e, 0xac, 0x1b, 0x6e, 0x4a,
-  0xeb, 0xb1, 0xa2, 0x8b, 0x7a, 0x6c, 0x19, 0x37, 0xdf, 0x6c, 0xed, 0xb3,
-  0xfa, 0xa2, 0x58, 0x2c, 0x1f, 0x83, 0x67, 0x64, 0xa1, 0xcb, 0xff, 0x73,
-  0xc7, 0x34, 0xa2, 0xbb, 0x84, 0xb3, 0xc9, 0xf4, 0x6c, 0xa2, 0x30, 0x96,
-  0xcd, 0xce, 0x22, 0x42, 0x24, 0x35, 0x15, 0x80, 0x65, 0x1a, 0x7c, 0x3a,
-  0xd6, 0xf1, 0x36, 0x34, 0xca, 0x3c, 0xe4, 0xac, 0xaf, 0x7c, 0x27, 0x51,
-  0x0c, 0x07, 0x18, 0x9b, 0x4d, 0xe7, 0xa9, 0xdb, 0x04, 0x69, 0x5f, 0x3e,
-  0x62, 0xff, 0x22, 0x71, 0xe8, 0xcc, 0xfd, 0xad, 0x6f, 0x34, 0xf0, 0xa6,
-  0x6a, 0x91, 0x5e, 0xbc, 0x0a, 0x52, 0x18, 0x32, 0x2c, 0x27, 0x89, 0x3c,
-  0x82, 0x78, 0xae, 0xce, 0x10, 0x81, 0xf2, 0x67, 0xd4, 0xf6, 0xac, 0x11,
-  0x80, 0x9b, 0x5d, 0x96, 0xae, 0xcc, 0x14, 0x6b, 0xe3, 0x93, 0x00, 0xcd,
-  0x14, 0xa7, 0xdb, 0x37, 0x8a, 0x33, 0x64, 0x8a, 0x3d, 0xdc, 0x53, 0x51,
-  0xc3, 0xf9, 0x17, 0x14, 0x1e, 0xf6, 0x67, 0x62, 0xbb, 0xb6, 0xd8, 0x67,
-  0x7b, 0xc3, 0xa1, 0x2d, 0x35, 0xd0, 0xc0, 0x6c, 0x3d, 0x65, 0x05, 0xd5,
-  0x7f, 0x8a, 0x94, 0x75, 0x85, 0x38, 0x69, 0xb1, 0x81, 0x68, 0x23, 0xb5,
-  0x58, 0x8e, 0xed, 0x67, 0x7e, 0xcd, 0x5d, 0x67, 0xdf, 0x49, 0x6b, 0xbd,
-  0x8f, 0xec, 0xac, 0xb5, 0xaf, 0xef, 0x5a, 0xfa, 0x7a, 0x5e, 0x9b, 0xd7,
-  0xce, 0xce, 0x67, 0x9a, 0x7c, 0x41, 0x6b, 0xbd, 0x5f, 0xa1, 0x14, 0x25,
-  0x0e, 0x35, 0x53, 0xd0, 0x83, 0x7d, 0x03, 0xf0, 0x48, 0x5a, 0x0b, 0xb7,
-  0x63, 0x30, 0x41, 0x57, 0x2f, 0xfc, 0xb4, 0x48, 0xba, 0xe0, 0xf6, 0xd8,
-  0x62, 0x22, 0xc7, 0xa4, 0x71, 0x7a, 0x00, 0xe0, 0xc2, 0x47, 0xe5, 0x88,
-  0x47, 0x46, 0xfc, 0x7c, 0x45, 0x74, 0x8c, 0x0d, 0x23, 0xe8, 0xe7, 0x33,
-  0xd7, 0x8f, 0x1b, 0x39, 0x2b, 0xac, 0x02, 0x6c, 0x30, 0x08, 0x39, 0x82,
-  0xd2, 0x48, 0x10, 0x6b, 0xa7, 0x4e, 0x87, 0x26, 0xc9, 0xea, 0xdb, 0xbe,
-  0x17, 0x39, 0x7e, 0x67, 0x5a, 0x8a, 0x51, 0x20, 0x70, 0x50, 0x63, 0x2e,
-  0xae, 0xc0, 0xc8, 0xc0, 0xd8, 0xc3, 0xc7, 0xdd, 0xfa, 0xc8, 0xc3, 0xd3,
-  0xbe, 0xfd, 0x2a, 0x58, 0x13, 0x1b, 0x96, 0x99, 0x29, 0x37, 0xed, 0xf8,
-  0x38, 0x16, 0x22, 0x62, 0x1f, 0xff, 0x7d, 0x7e, 0x78, 0x71, 0xce, 0x61,
-  0xbc, 0x00, 0xc5, 0xa9, 0xab, 0xd4, 0x74, 0xa6, 0x36, 0x9c, 0x89, 0x5f,
-  0x8a, 0xbb, 0x04, 0x5c, 0xd7, 0x53, 0xb2, 0xd4, 0xc5, 0xc6, 0x3d, 0xc3,
-  0x99, 0xee, 0x95, 0x32, 0xd9, 0xbe, 0xd4, 0x94, 0xdc, 0x43, 0x3e, 0x08,
-  0x55, 0x4f, 0x86, 0x5b, 0x7f, 0x1f, 0x95, 0x04, 0x54, 0x4c, 0x61, 0x6b,
-  0x9a, 0x29, 0x30, 0x50, 0xc7, 0xbe, 0x0b, 0x94, 0x91, 0x64, 0xb1, 0xd8,
-  0xfc, 0xcf, 0x1a, 0x5d, 0xdf, 0x30, 0x2b, 0xb9, 0xce, 0xe9, 0x9a, 0x94,
-  0x94, 0x5f, 0xbb, 0x0e, 0x9d, 0x8b, 0x51, 0xba, 0x94, 0x4f, 0x11, 0xb3,
-  0x0f, 0xd4, 0xb4, 0xe8, 0xf9, 0xd6, 0x56, 0xb3, 0xb9, 0x78, 0x94, 0xdd,
-  0x9a, 0xbf, 0x53, 0xd3, 0x65, 0xa4, 0x3e, 0x14, 0xf6, 0x0b, 0x97, 0x69,
-  0xe1, 0x8a, 0xcc, 0x5c, 0x92, 0x30, 0xcd, 0x8b, 0x56, 0xb1, 0xbe, 0x04,
-  0xeb, 0x27, 0xa7, 0xf3, 0x7b, 0xe4, 0xf1, 0xe8, 0xda, 0x55, 0xcf, 0xa4,
-  0xa4, 0xf8, 0x18, 0x38, 0x64, 0x6c, 0xe5, 0x35, 0x91, 0x0b, 0xf8, 0x40,
-  0xcb, 0x30, 0x6b, 0x99, 0xb0, 0x62, 0x1b, 0x05, 0xdd, 0xbc, 0x68, 0xa1,
-  0x8c, 0x68, 0x78, 0x71, 0x7a, 0x1e, 0x05, 0x55, 0xb2, 0xab, 0xec, 0x17,
-  0x61, 0x13, 0xfc, 0x84, 0xf3, 0xfd, 0xf6, 0x5a, 0xfc, 0x11, 0x2e, 0xcf,
-  0x54, 0x22, 0xa3, 0x18, 0xe6, 0xc0, 0xf7, 0xfa, 0xd2, 0x7b, 0xcf, 0x74,
-  0x6e, 0xdf, 0x91, 0x4a, 0xc0, 0x89, 0x97, 0x86, 0x5f, 0x47, 0x17, 0x25,
-  0x49, 0xe2, 0xb3, 0xc0, 0x62, 0xb3, 0x23, 0x07, 0xee, 0x74, 0x09, 0xa2,
-  0x97, 0x94, 0x51, 0xa6, 0x27, 0x4d, 0x1e, 0x65, 0x8b, 0x97, 0x7a, 0xdd,
-  0x9c, 0x1d, 0xb1, 0x4e, 0x93, 0x72, 0x98, 0x4e, 0x3d, 0x42, 0xa1, 0xb8,
-  0x10, 0x06, 0x35, 0x57, 0x22, 0x3e, 0x47, 0x32, 0xa0, 0xfa, 0x66, 0x94,
-  0x96, 0xb4, 0xcc, 0x4b, 0x7d, 0xd7, 0xc7, 0x24, 0x13, 0x4c, 0xb4, 0xae,
-  0xb4, 0xc4, 0x84, 0x39, 0x21, 0xc9, 0xcb, 0x17, 0x5b, 0x7e, 0x9d, 0xcf,
-  0x4e, 0xcf, 0x2f, 0xac, 0x1a, 0x92, 0x5e, 0xa0, 0xf8, 0xa8, 0x76, 0x94,
-  0x18, 0x11, 0x01, 0x22, 0xa1, 0x0f, 0x8c, 0x69, 0x88, 0xb9, 0x41, 0xd9,
-  0x41, 0x69, 0x55, 0xdb, 0xe0, 0x52, 0x29, 0xf9, 0x83, 0xb9, 0xd3, 0x5c,
-  0xad, 0x25, 0xf0, 0x1e, 0x4d, 0x82, 0x62, 0x46, 0xdd, 0xee, 0x1c, 0xf5,
-  0x79, 0xb4, 0xcf, 0xb6, 0x5b, 0xa8, 0x83, 0x25, 0xf2, 0xf3, 0xc3, 0xe1,
-  0x85, 0xac, 0x1a, 0xff, 0xd6, 0x18, 0xb9, 0x64, 0x93, 0xea, 0x87, 0xad,
-  0xde, 0x2a, 0x50, 0x07, 0x47, 0xe2, 0xcc, 0xb4, 0x6a, 0xa1, 0x73, 0x31,
-  0x05, 0x6b, 0xf6, 0x2c, 0x88, 0x44, 0x04, 0x07, 0x55, 0x5a, 0xb9, 0xb0,
-  0x2a, 0x96, 0x51, 0x47, 0x3b, 0xe9, 0xd0, 0xdd, 0x2b, 0x87, 0x22, 0xcb,
-  0x6f, 0x82, 0x16, 0x9e, 0x07, 0x5c, 0x83, 0xb9, 0xbc, 0x36, 0x70, 0x64,
-  0xd6, 0x75, 0xfe, 0xd0, 0x79, 0xb4, 0xaf, 0x92, 0xb9, 0x11, 0x86, 0x3c,
-  0xe7, 0xdb, 0x79, 0xe1, 0x52, 0xcb, 0x4d, 0x4e, 0x0a, 0x86, 0xc2, 0x1f,
-  0x5b, 0x06, 0x00, 0xbc, 0x97, 0x35, 0xb2, 0x7b, 0xf6, 0xd2, 0xad, 0x22,
-  0xcb, 0xd0, 0xce, 0x3d, 0x24, 0xd3, 0x0f, 0x2e, 0x25, 0xf6, 0xb7, 0xa5,
-  0xf3, 0x65, 0xa2, 0x65, 0x5d, 0xe2, 0x7c, 0x9a, 0x22, 0x4a, 0x57, 0xfc,
-  0x3b, 0x0d, 0x1b, 0xb6, 0xc6, 0x43, 0xfa, 0x7e, 0xf4, 0x46, 0x22, 0xa5,
-  0xdf, 0xef, 0x96, 0xe4, 0x6b, 0xe2, 0x24, 0x7b, 0x61, 0x8f, 0x0e, 0xee,
-  0xdc, 0x5d, 0x1b, 0x83, 0xe8, 0x8c, 0xc1, 0x79, 0x61, 0x9d, 0x2f, 0xfe,
-  0xc3, 0xb7, 0x26, 0x87, 0x85, 0x81, 0xe5, 0xf9, 0x1e, 0x85, 0x94, 0x9a,
-  0x72, 0x61, 0x78, 0x7c, 0xc2, 0xbf, 0x06, 0x50, 0x9f, 0x8d, 0x29, 0xbf,
-  0xf2, 0x2f, 0x17, 0x34, 0x11, 0x52, 0x52, 0xea, 0x8f, 0x3c, 0x57, 0xda,
-  0x22, 0x0d, 0x06, 0x4d, 0x70, 0x07, 0xe0, 0xd3, 0x7c, 0xa6, 0x79, 0x4b,
-  0x52, 0x0e, 0xc2, 0x44, 0x0b, 0x97, 0xf6, 0x8c, 0xc9, 0xb3, 0xf2, 0x9c,
-  0x6f, 0x4a, 0x2e, 0x87, 0x3d, 0x59, 0x27, 0x20, 0x8c, 0xd0, 0xb9, 0xe1,
-  0x12, 0x5b, 0xd4, 0xd6, 0x9c, 0x39, 0xef, 0xd4, 0x1c, 0xf2, 0x3e, 0x3d,
-  0x8e, 0x79, 0xe6, 0xc8, 0x0e, 0x0f, 0xcf, 0xa4, 0x89, 0x4f, 0x5e, 0xf1,
-  0x28, 0x3e, 0x17, 0x6a, 0x74, 0xa4, 0xe3, 0xee, 0xb3, 0xca, 0xe8, 0xb8,
-  0x63, 0x97, 0x84, 0x8b, 0xed, 0x66, 0x5d, 0x13, 0xc5, 0x82, 0x82, 0xa6,
-  0x5e, 0xf8, 0xa6, 0x2e, 0x39, 0x79, 0xd2, 0xb5, 0xe5, 0x79, 0x90, 0x47,
-  0xd0, 0x4b, 0xdd, 0x63, 0xaa, 0x30, 0xc8, 0x9d, 0xd6, 0x50, 0x19, 0xaa,
-  0xf7, 0xc7, 0x73, 0x21, 0x86, 0x8b, 0x2c, 0x93, 0x22, 0xab, 0x2e, 0xd8,
-  0x70, 0x20, 0x95, 0x85, 0x9a, 0x86, 0xfa, 0xa2, 0xa7, 0x7a, 0x96, 0x96,
-  0xbb, 0x63, 0x87, 0x43, 0xa3, 0xec, 0xf3, 0x72, 0xd6, 0x28, 0xa8, 0xf4,
-  0xfc, 0x73, 0xd5, 0xe3, 0x6e, 0xe6, 0x44, 0x92, 0xd1, 0xc5, 0xe1, 0xf1,
-  0xc9, 0xe1, 0x85, 0x03, 0x48, 0xb1, 0x09, 0x05, 0xcf, 0xbf, 0x52, 0x53,
-  0x98, 0xaa, 0x59, 0x06, 0x34, 0x5d, 0x77, 0xe1, 0xbe, 0xd8, 0x76, 0xc6,
-  0x1e, 0x0e, 0xd0, 0xeb, 0x16, 0x72, 0xfe, 0x82, 0x30, 0x3d, 0x94, 0xce,
-  0xfe, 0x26, 0x7a, 0x77, 0xf0, 0x82, 0xf3, 0x15, 0xae, 0x92, 0x9c, 0xc1,
-  0xef, 0xbd, 0xd6, 0x93, 0x05, 0x9c, 0xe0, 0xc5, 0x4e, 0x00, 0xc9, 0x21,
-  0x97, 0x59, 0xaa, 0xe7, 0x83, 0xe5, 0x59, 0x5a, 0x21, 0x4e, 0xe1, 0x25,
-  0x8d, 0x55, 0xec, 0x87, 0x50, 0xb1, 0xc5, 0x2e, 0xa9, 0x58, 0x2d, 0x22,
-  0x24, 0xd4, 0x6b, 0x78, 0x57, 0xd9, 0xc4, 0x8b, 0x67, 0x9e, 0x4d, 0xe4,
-  0x0f, 0x0b, 0x46, 0xa4, 0x93, 0x22, 0xdf, 0x2d, 0x34, 0xfb, 0x42, 0x58,
-  0xd3, 0xbe, 0x9c, 0x2c, 0x16, 0x1c, 0x9b, 0xaf, 0x71, 0xc0, 0x93, 0x18,
-  0xe4, 0x82, 0xf7, 0x5e, 0x84, 0x8a, 0x5b, 0xa1, 0x75, 0x79, 0x69, 0xfd,
-  0x50, 0x27, 0x02, 0x15, 0xc9, 0xfd, 0xb3, 0x2f, 0xdd, 0xb3, 0x5c, 0x9d,
-  0x34, 0x9d, 0x2b, 0x0a, 0xd0, 0x23, 0x6f, 0xa8, 0xb8, 0x29, 0x97, 0xaf,
-  0x0f, 0xbc, 0x11, 0xd9, 0x22, 0x58, 0xfb, 0xe0, 0x95, 0x57, 0x55, 0xbd,
-  0x14, 0xc0, 0xb5, 0xbe, 0xd4, 0x09, 0x4f, 0x2a, 0x5d, 0x5c, 0x87, 0xe4,
-  0xff, 0x52, 0xee, 0xc2, 0x33, 0x8e, 0xba, 0xac, 0xec, 0xa7, 0xb1, 0x99,
-  0x0a, 0x90, 0x82, 0x9d, 0x26, 0xa1, 0xae, 0xfd, 0x3d, 0x7b, 0xa3, 0x4e,
-  0x9a, 0xfc, 0x68, 0x70, 0x79, 0xbc, 0xdc, 0x56, 0xaa, 0xa4, 0x29, 0x67,
-  0x57, 0x73, 0x52, 0xf6, 0x27, 0xcd, 0x22, 0xb3, 0xc1, 0xe3, 0x3b, 0x7a,
-  0x24, 0xa5, 0x3e, 0x33, 0xd8, 0x0e, 0x03, 0x4a, 0xfb, 0x07, 0x9e, 0x29,
-  0xd5, 0x8a, 0x17, 0x0e, 0xf2, 0x36, 0x90, 0xbc, 0xd9, 0xa8, 0x98, 0x54,
-  0x72, 0x04, 0x5e, 0x3e, 0x57, 0xe9, 0xc6, 0xc4, 0x51, 0xe6, 0xfc, 0xbc,
-  0x10, 0x53, 0xc6, 0xab, 0x68, 0x30, 0xc2, 0x97, 0x7a, 0xb9, 0xe8, 0x56,
-  0x96, 0x56, 0x4e, 0x5e, 0x79, 0x60, 0x81, 0xc0, 0xde, 0xbb, 0x74, 0xae,
-  0x41, 0xea, 0x8d, 0xd7, 0x5f, 0xae, 0x30, 0x6f, 0xa8, 0xf7, 0xe2, 0x10,
-  0xb4, 0x14, 0x3c, 0xff, 0x99, 0x3b, 0x09, 0x0e, 0x2e, 0xad, 0xe7, 0x82,
-  0xc7, 0xe0, 0x19, 0x37, 0x04, 0x4c, 0x3b, 0x48, 0x50, 0xb0, 0x17, 0xbe,
-  0x26, 0x4a, 0x9b, 0xf3, 0xcf, 0x75, 0x4f, 0xca, 0x79, 0x94, 0x06, 0xc7,
-  0xf8, 0xa5, 0x90, 0xd4, 0x5b, 0x78, 0xa3, 0xed, 0x1c, 0x70, 0xf4, 0x6f,
-  0x08, 0x5b, 0xee, 0x9f, 0x7e, 0xa5, 0xb4, 0x61, 0x37, 0x92, 0x09, 0x82,
-  0x2b, 0xdf, 0xf8, 0x6c, 0x2b, 0x14, 0x0b, 0x27, 0x6c, 0x5c, 0x93, 0x8c,
-  0xf4, 0x95, 0x2f, 0x08, 0x65, 0x1c, 0x11, 0xa3, 0xbe, 0x22, 0xa2, 0xc6,
-  0x33, 0x1e, 0x89, 0xc1, 0x3f, 0xb6, 0x53, 0x65, 0x6b, 0xa1, 0x90, 0x12,
-  0x1d, 0x1d, 0x04, 0x0f, 0x3e, 0xf3, 0x13, 0x8c, 0xa7, 0x7c, 0xdf, 0x3e,
-  0x88, 0xca, 0x5f, 0x28, 0x72, 0x7c, 0xf0, 0xe8, 0x73, 0x85, 0xba, 0xe2,
-  0x30, 0xdf, 0x6b, 0x59, 0xff, 0xc6, 0x33, 0x42, 0x0e, 0xfb, 0xae, 0x8c,
-  0xb7, 0x04, 0x6b, 0x16, 0x6d, 0xd7, 0xec, 0x67, 0x2f, 0x1f, 0x79, 0x56,
-  0xaf, 0xa5, 0xc2, 0x5d, 0xa6, 0xc1, 0x7b, 0x9f, 0x35, 0x8f, 0xb9, 0x09,
-  0xde, 0x16, 0x14, 0xad, 0x27, 0x2d, 0x5a, 0xe7, 0x58, 0xef, 0xff, 0x30,
-  0x1b, 0x4b, 0xce, 0x31, 0x9e, 0xc5, 0x7f, 0x84, 0xe3, 0xfd, 0x3c, 0x8c,
-  0xac, 0x16, 0x03, 0x8b, 0x2b, 0xbb, 0x11, 0x62, 0x1d, 0xfb, 0x92, 0x36,
-  0x58, 0x9d, 0xa0, 0x05, 0xd9, 0x73, 0xba, 0xa9, 0x83, 0xaa, 0xe3, 0xaa,
-  0x72, 0x69, 0x72, 0xbf, 0x85, 0x51, 0xe9, 0xe8, 0xbe, 0xa1, 0x4d, 0x05,
-  0x75, 0x04, 0x66, 0xaa, 0xad, 0xda, 0x31, 0x28, 0xae, 0x97, 0xa2, 0xe3,
-  0xba, 0x19, 0xa9, 0xe8, 0x56, 0x7d, 0x6d, 0xc7, 0x73, 0x2f, 0xbd, 0x58,
-  0x25, 0x63, 0x64, 0x9f, 0xf1, 0x9c, 0x45, 0x11, 0x8e, 0x40, 0x8a, 0x7c,
-  0x15, 0xd3, 0x80, 0x50, 0x29, 0xc8, 0x70, 0x23, 0xd6, 0xe3, 0xf6, 0xdc,
-  0x33, 0x0d, 0xd7, 0x0e, 0xba, 0x51, 0xe1, 0x81, 0x5d, 0xbe, 0xb4, 0x4b,
-  0xd7, 0xc9, 0xf8, 0xc6, 0x8e, 0x8c, 0x6b, 0xa3, 0xf9, 0xd6, 0x0f, 0x3f,
-  0x08, 0xcf, 0x71, 0xa8, 0x39, 0x6a, 0x46, 0x75, 0x08, 0xf5, 0x74, 0x46,
-  0x05, 0x17, 0x9e, 0xb7, 0x1b, 0xa5, 0xd1, 0xf3, 0x64, 0x9a, 0x30, 0x62,
-  0x9b, 0x48, 0xa6, 0x58, 0xe8, 0xb6, 0x88, 0x4a, 0x8e, 0x2a, 0x91, 0x42,
-  0x4c, 0x89, 0xc2, 0xfc, 0xcd, 0xd9, 0xe3, 0xad, 0x96, 0x0a, 0x35, 0x3f,
-  0xef, 0xbd, 0xbf, 0xf8, 0xe6, 0xf4, 0x7c, 0x18, 0x6d, 0x72, 0x06, 0xf9,
-  0xc5, 0xf9, 0xd1, 0x57, 0xef, 0x49, 0xe9, 0xab, 0x98, 0xa2, 0x0f, 0x62,
-  0x52, 0x08, 0xa7, 0x1c, 0xed, 0x91, 0xcc, 0x47, 0x49, 0x7e, 0x65, 0x88,
-  0xf2, 0x00, 0x89, 0x61, 0x1e, 0x9e, 0xe5, 0xbe, 0x20, 0x8b, 0x94, 0x57,
-  0x37, 0x93, 0x3b, 0x62, 0xcb, 0x52, 0xfa, 0x2e, 0xf3, 0x5a, 0x4d, 0x5a,
-  0xc5, 0x0a, 0x88, 0xcc, 0x50, 0x1f, 0x5d, 0x7c, 0xb3, 0x77, 0xf2, 0xed,
-  0xd0, 0xf0, 0x06, 0x79, 0x6c, 0xdf, 0x7f, 0xff, 0x7d, 0x38, 0x10, 0x0d,
-  0x8e, 0x05, 0xb0, 0xdc, 0x75, 0x7c, 0x7f, 0x3f, 0x28, 0x12, 0xf5, 0x80,
-  0x5d, 0x9c, 0x85, 0xcf, 0x79, 0x6c, 0xeb, 0x62, 0x49, 0x37, 0x20, 0x3d,
-  0xb6, 0xb9, 0x58, 0x8e, 0x18, 0x4b, 0x7b, 0x73, 0x59, 0x6a, 0x09, 0x11,
-  0xb4, 0xb2, 0x29, 0xaf, 0x0f, 0x0f, 0x0f, 0xa3, 0xbd, 0xe3, 0xe1, 0x69,
-  0xd5, 0x87, 0x86, 0xfc, 0x08, 0xc4, 0x69, 0xaf, 0x6f, 0x6f, 0xf4, 0xf0,
-  0xc1, 0xdd, 0x55, 0x52, 0xda, 0x27, 0x6b, 0x6b, 0xc7, 0x7b, 0x17, 0xac,
-  0x16, 0x7d, 0x77, 0x78, 0x3e, 0x3c, 0x3a, 0x3d, 0xe1, 0xfd, 0x64, 0xf4,
-  0x8d, 0x78, 0x7a, 0xc7, 0x80, 0x67, 0x97, 0x29, 0xb2, 0x58, 0xef, 0xac,
-  0x9a, 0x07, 0x23, 0xca, 0x90, 0x70, 0x23, 0xd2, 0x9e, 0xf8, 0xa6, 0xac,
-  0x2e, 0x94, 0xc4, 0x1d, 0x94, 0xac, 0x9c, 0x98, 0x87, 0x73, 0x2d, 0xf2,
-  0x36, 0x12, 0x41, 0xfb, 0x4f, 0x46, 0x12, 0x9f, 0xd3, 0x13, 0x90, 0x07,
-  0x44, 0xd1, 0x07, 0x70, 0x14, 0xad, 0x4b, 0x33, 0x3c, 0x7a, 0x77, 0x46,
-  0x5a, 0xc2, 0xfb, 0xe1, 0xde, 0xd7, 0x87, 0xfc, 0xe8, 0xd7, 0x49, 0xe9,
-  0x37, 0x4e, 0xaa, 0x8e, 0x70, 0x27, 0x27, 0x49, 0x59, 0x8c, 0xe3, 0x05,
-  0x07, 0xc4, 0x53, 0x37, 0x7d, 0xe1, 0xa4, 0x41, 0xdb, 0x22, 0x2f, 0x7a,
-  0x3c, 0xf2, 0xb9, 0x3e, 0x0f, 0xb0, 0xf0, 0xb0, 0xdd, 0xf3, 0xc3, 0xbd,
-  0x83, 0x77, 0x87, 0x16, 0xc6, 0x25, 0x37, 0x0f, 0x35, 0x7a, 0x9d, 0x71,
-  0x49, 0x23, 0x67, 0x35, 0xe5, 0xdb, 0x8d, 0xb7, 0x85, 0xbe, 0xe1, 0xaa,
-  0x1c, 0xed, 0xdd, 0xf9, 0x2d, 0xc4, 0xb3, 0x83, 0xcb, 0x74, 0x53, 0x5a,
-  0xb7, 0xfe, 0x62, 0xb7, 0x24, 0x16, 0x0f, 0xa5, 0x12, 0x9f, 0x28, 0xbe,
-  0x50, 0x98, 0x3f, 0xdf, 0xda, 0xda, 0x7a, 0x64, 0x1e, 0xb0, 0x51, 0xea,
-  0xbd, 0x41, 0x53, 0xd9, 0xe5, 0xc7, 0x37, 0x7d, 0xfb, 0x46, 0xc3, 0xa1,
-  0xc5, 0x97, 0xff, 0x9c, 0x8b, 0xaa, 0x9e, 0x96, 0x49, 0xfb, 0xa0, 0xc7,
-  0x59, 0xe6, 0xf6, 0xa0, 0xb2, 0x3c, 0x13, 0x06, 0x17, 0x4a, 0xcb, 0x00,
-  0x9c, 0xce, 0x86, 0x3e, 0x49, 0xc1, 0xb0, 0xe2, 0xfc, 0xa1, 0xde, 0x24,
-  0x7f, 0x43, 0x6d, 0xf2, 0x8f, 0x41, 0x96, 0x5f, 0x6d, 0xce, 0x76, 0x71,
-  0x2d, 0xd3, 0x43, 0x6f, 0x13, 0x14, 0x83, 0xba, 0xcb, 0x5c, 0x9c, 0x53,
-  0xc1, 0x4b, 0xcb, 0xc1, 0x96, 0x1f, 0x31, 0xae, 0x5f, 0xb0, 0x0e, 0xd8,
-  0x4e, 0xae, 0x62, 0x2c, 0x33, 0xb7, 0x90, 0x8f, 0x96, 0x4e, 0x0a, 0xde,
-  0x32, 0x36, 0x4c, 0x0d, 0x88, 0xe9, 0x50, 0x2f, 0xf4, 0xb9, 0x10, 0x09,
-  0xfd, 0x9a, 0x13, 0xd1, 0x0c, 0xca, 0xfb, 0x92, 0xdf, 0x62, 0x7f, 0xaf,
-  0x1a, 0x9a, 0x81, 0x15, 0x46, 0x4c, 0x2e, 0xcf, 0x48, 0xaa, 0x8f, 0x25,
-  0x3f, 0x68, 0x88, 0xe8, 0xfa, 0x20, 0x06, 0x0e, 0x11, 0xf7, 0xdc, 0x70,
-  0xbd, 0xcf, 0x7e, 0x1f, 0x14, 0x54, 0x38, 0x7a, 0xf9, 0x88, 0xce, 0x83,
-  0x49, 0xc9, 0xea, 0xcf, 0xf5, 0xaa, 0x09, 0xa8, 0x67, 0x48, 0xa3, 0x68,
-  0xf4, 0x05, 0x64, 0xab, 0x1c, 0xa1, 0x76, 0x85, 0x74, 0x87, 0x02, 0x46,
-  0x83, 0x44, 0xea, 0x99, 0xa1, 0x2f, 0xda, 0x93, 0x4d, 0x44, 0xfc, 0x7c,
-  0x74, 0x4f, 0xfb, 0x67, 0xae, 0x1e, 0x12, 0xad, 0xc0, 0x2d, 0x2f, 0xc1,
-  0x4d, 0x82, 0xd9, 0x87, 0xd2, 0xf1, 0x23, 0x83, 0xd9, 0xa5, 0x55, 0xe0,
-  0x37, 0xfe, 0x7b, 0x73, 0x50, 0x14, 0xd7, 0x9b, 0xe9, 0xe4, 0xc3, 0xa4,
-  0x88, 0xe9, 0x33, 0xe2, 0x78, 0x8d, 0x8f, 0x07, 0xf4, 0x61, 0xf4, 0xe7,
-  0xca, 0x4d, 0x51, 0x8c, 0xdb, 0x67, 0xf2, 0xdf, 0x9b, 0x8c, 0xb8, 0xc6,
-  0xc1, 0xe9, 0xe1, 0xc2, 0xb5, 0x70, 0x0f, 0x9a, 0x95, 0x80, 0xfb, 0xd1,
-  0x71, 0x6c, 0xa7, 0x8c, 0xfe, 0x55, 0xd4, 0x51, 0x72, 0xfb, 0x69, 0x67,
-  0x6b, 0x6b, 0x7b, 0x77, 0xfb, 0xf3, 0x57, 0x5b, 0xbb, 0xdb, 0xdb, 0xdb,
-  0x3b, 0xbb, 0xdb, 0xbb, 0xbb, 0x3b, 0x5b, 0x3f, 0x6f, 0x76, 0xd6, 0xd6,
-  0x0e, 0x4e, 0xbf, 0x3f, 0x39, 0x3e, 0xdd, 0x3b, 0x88, 0x2e, 0x4e, 0x49,
-  0x43, 0x66, 0xeb, 0x46, 0xcb, 0x49, 0x07, 0xd4, 0x56, 0x99, 0xc9, 0x5d,
-  0x18, 0x07, 0x55, 0x5a, 0x1a, 0x5d, 0x66, 0x10, 0xa3, 0xf9, 0xa5, 0xc1,
-  0x75, 0x39, 0x7b, 0x9a, 0x7d, 0x7d, 0x4c, 0x27, 0x3d, 0x89, 0x3c, 0xf3,
-  0x9a, 0x12, 0xb6, 0xd6, 0x88, 0x54, 0x4b, 0xc0, 0xb9, 0xa2, 0xf7, 0xf0,
-  0xcf, 0xb9, 0x10, 0xc4, 0x75, 0xf1, 0x6e, 0xfb, 0x68, 0x4d, 0xa9, 0x4f,
-  0x53, 0x54, 0x63, 0x22, 0x5c, 0xbd, 0x08, 0x75, 0x79, 0x42, 0x04, 0x60,
-  0x09, 0x62, 0xa3, 0x31, 0xc1, 0xd3, 0x95, 0x53, 0xa2, 0x8b, 0x27, 0xb9,
-  0xc7, 0xac, 0xab, 0x6c, 0x42, 0xe0, 0xe3, 0xfc, 0xec, 0x00, 0x1b, 0x65,
-  0xba, 0x5f, 0x9a, 0xdb, 0x90, 0xe1, 0x01, 0x6f, 0xe9, 0x8e, 0xfb, 0x31,
-  0xee, 0xe1, 0xbb, 0xe0, 0x6f, 0xc2, 0x4b, 0x67, 0xd3, 0x19, 0xac, 0x64,
-  0x00, 0xef, 0x87, 0x47, 0x27, 0x5f, 0xc3, 0x35, 0xf5, 0xfd, 0xe9, 0xf9,
-  0xc1, 0x90, 0x9a, 0xa5, 0xa3, 0x85, 0xc6, 0x2f, 0x32, 0x3e, 0xb4, 0x3a,
-  0x2a, 0x39, 0x02, 0xdc, 0xf5, 0x1f, 0xa1, 0xa3, 0x4c, 0x7a, 0x2e, 0x03,
-  0x02, 0xc3, 0x0c, 0xe4, 0x4b, 0xce, 0x6c, 0x68, 0x67, 0x70, 0x38, 0x0d,
-  0xf2, 0xfa, 0x97, 0xb3, 0x98, 0x71, 0x7b, 0x93, 0x81, 0x40, 0xd9, 0x21,
-  0x18, 0x61, 0x93, 0x51, 0x69, 0x36, 0x59, 0xce, 0xdd, 0x2c, 0x33, 0xb0,
-  0x0a, 0xb4, 0x92, 0xe5, 0x0e, 0xfc, 0xb8, 0xb2, 0x22, 0x7c, 0xc6, 0x2e,
-  0xa7, 0xf1, 0x15, 0x3a, 0x6c, 0x1e, 0xbf, 0xa0, 0x33, 0xed, 0xfe, 0x63,
-  0xbb, 0x44, 0x69, 0x47, 0x6e, 0xef, 0x08, 0x04, 0x80, 0xd4, 0x7f, 0xa4,
-  0x6b, 0xa8, 0x29, 0x5d, 0x64, 0x29, 0x94, 0x19, 0x62, 0xef, 0x3c, 0xd7,
-  0x42, 0xa9, 0xa3, 0x34, 0x6b, 0x65, 0xd3, 0x35, 0x31, 0x43, 0xf4, 0x83,
-  0x34, 0x2d, 0xd1, 0x05, 0x50, 0x5e, 0xd0, 0xab, 0xdc, 0x05, 0xc2, 0xf2,
-  0xd1, 0x27, 0xb2, 0xcf, 0xa0, 0x61, 0xca, 0x92, 0xf3, 0x60, 0x68, 0xec,
-  0x91, 0x04, 0xd5, 0x70, 0x0a, 0x92, 0x0a, 0x77, 0x1d, 0x86, 0xc8, 0x4e,
-  0xc7, 0x69, 0xd9, 0xb1, 0x5c, 0x27, 0x8f, 0x76, 0xe6, 0x7d, 0x67, 0x45,
-  0x49, 0x43, 0x89, 0xe9, 0xf6, 0xd0, 0xc2, 0x33, 0x9a, 0x39, 0x9c, 0xcd,
-  0x66, 0x92, 0x2e, 0xda, 0xe1, 0x3c, 0x18, 0xdf, 0x4a, 0xaa, 0xb9, 0x5d,
-  0xae, 0xb4, 0x0a, 0xf3, 0x59, 0xee, 0x5d, 0xb2, 0x50, 0xb0, 0xea, 0x8e,
-  0xa5, 0x7b, 0x4b, 0x11, 0xb3, 0x63, 0x92, 0x4f, 0x89, 0x57, 0x0a, 0xe5,
-  0x68, 0x6a, 0x41, 0x50, 0xc2, 0xa1, 0xb2, 0x6c, 0x61, 0x01, 0x9b, 0x06,
-  0x57, 0xad, 0x66, 0xa8, 0xac, 0x21, 0xea, 0xd8, 0xe5, 0x54, 0x05, 0xcb,
-  0xa3, 0x55, 0x16, 0xdd, 0xab, 0xbc, 0x17, 0x69, 0x59, 0x24, 0xd3, 0x4b,
-  0xad, 0x4c, 0xa8, 0x35, 0x00, 0x47, 0x0f, 0x41, 0x03, 0x32, 0x09, 0x09,
-  0x36, 0x5e, 0xce, 0x5d, 0x62, 0x4e, 0xa6, 0x3c, 0xe3, 0x0a, 0x8c, 0x53,
-  0xd1, 0xd7, 0xab, 0x8c, 0x42, 0x7c, 0x39, 0x03, 0x03, 0x21, 0x5e, 0x8b,
-  0x1c, 0x96, 0x72, 0x6d, 0x0a, 0x0e, 0x82, 0x0f, 0xf0, 0x67, 0xa0, 0x8e,
-  0xe0, 0xc1, 0xe5, 0x88, 0x56, 0xdb, 0x3d, 0xc7, 0x6b, 0xc7, 0x56, 0x71,
-  0xac, 0xda, 0x7e, 0x58, 0x59, 0x47, 0xb0, 0x1f, 0x0d, 0x43, 0xd1, 0x0f,
-  0x8a, 0x06, 0x08, 0x33, 0x3a, 0x1d, 0x34, 0x04, 0xc4, 0x2e, 0x0b, 0xb7,
-  0xa2, 0x40, 0x60, 0x8f, 0x5d, 0xfd, 0xa8, 0xb6, 0x63, 0xa8, 0x1c, 0x69,
-  0xf5, 0x39, 0x7c, 0xfa, 0x08, 0x36, 0x87, 0x64, 0xea, 0xc1, 0xf4, 0x41,
-  0x4e, 0x49, 0x3a, 0x7f, 0xfc, 0x30, 0xea, 0x20, 0x3e, 0xaa, 0x63, 0xcc,
-  0x55, 0xd3, 0xa3, 0x60, 0x3f, 0xf5, 0x01, 0x36, 0xe2, 0xbb, 0x45, 0x7c,
-  0x7f, 0x0b, 0xc4, 0x6a, 0x05, 0x43, 0x13, 0x07, 0x41, 0x42, 0x89, 0x77,
-  0xa3, 0xaf, 0xe2, 0x22, 0x1d, 0xf7, 0xa2, 0x83, 0x94, 0x64, 0xf5, 0xb2,
-  0xe7, 0x81, 0x30, 0x1d, 0x7c, 0xe8, 0x20, 0xfa, 0xde, 0xaa, 0xc9, 0xd2,
-  0x9d, 0x8b, 0xf8, 0x56, 0x18, 0x23, 0x5d, 0xbe, 0xdc, 0x9a, 0x58, 0x79,
-  0xd5, 0x4e, 0x1b, 0xe6, 0xa6, 0xa1, 0x6d, 0x8f, 0xf1, 0x87, 0xcd, 0x8c,
-  0x8b, 0x9b, 0x2a, 0x48, 0xbe, 0x48, 0x55, 0x05, 0x5b, 0x1b, 0x59, 0x04,
-  0xc2, 0xfa, 0xce, 0xb5, 0x90, 0x89, 0xd2, 0x1c, 0xfe, 0x76, 0x54, 0x6e,
-  0xe5, 0x29, 0x60, 0xfd, 0x29, 0x34, 0xe2, 0xc6, 0x9c, 0xc4, 0xb8, 0x8d,
-  0xec, 0xb8, 0xae, 0x21, 0x8e, 0x9d, 0xd6, 0x89, 0x57, 0x44, 0xf9, 0xc9,
-  0xe9, 0xc5, 0xe1, 0xef, 0xa2, 0x61, 0xca, 0xc5, 0x37, 0x1d, 0xe5, 0xf0,
-  0x21, 0x67, 0x3f, 0xb9, 0xfa, 0xad, 0x1a, 0x7b, 0xea, 0xf2, 0x67, 0xd5,
-  0x90, 0x68, 0x19, 0x18, 0x52, 0x41, 0x09, 0xe1, 0xb7, 0xc2, 0x1e, 0x40,
-  0xb3, 0xb7, 0x69, 0x1c, 0xb9, 0x5a, 0xe8, 0x3c, 0xf7, 0x0f, 0x4c, 0xfa,
-  0x1f, 0x9c, 0x08, 0x49, 0xfb, 0x2f, 0x2f, 0x02, 0x63, 0x8f, 0xdb, 0x51,
-  0x2b, 0x02, 0xac, 0x2f, 0xe3, 0x34, 0xa7, 0x2b, 0x98, 0xf9, 0xd4, 0x58,
-  0x0c, 0x87, 0x08, 0x93, 0xc3, 0xd8, 0xd9, 0x30, 0x12, 0x8f, 0x88, 0xae,
-  0xb0, 0x5c, 0x63, 0x64, 0xe5, 0x09, 0x92, 0xbb, 0x1a, 0x23, 0xed, 0xdc,
-  0x85, 0xac, 0x14, 0x09, 0xaa, 0xc8, 0xee, 0x43, 0x05, 0x16, 0xc5, 0x7d,
-  0x5c, 0x43, 0xe8, 0x19, 0xb5, 0x0a, 0x59, 0x62, 0xee, 0x6e, 0xb6, 0x40,
-  0xb6, 0xe3, 0x88, 0x20, 0xa6, 0xd3, 0x49, 0x34, 0x7b, 0xd0, 0x5c, 0x6c,
-  0xe5, 0xc3, 0x9c, 0x19, 0x04, 0x75, 0xe5, 0xf3, 0xcf, 0x1b, 0xf7, 0xee,
-  0xbd, 0x7b, 0x7a, 0x97, 0xbe, 0x0e, 0xd4, 0xa2, 0x29, 0x7b, 0x29, 0xad,
-  0x1a, 0x94, 0xd7, 0x8d, 0x1a, 0x32, 0x67, 0x98, 0x4d, 0x29, 0x1d, 0x3a,
-  0x8b, 0x63, 0xcb, 0xbe, 0xb8, 0x82, 0x57, 0x6b, 0x22, 0x74, 0xcb, 0x38,
-  0xe3, 0x42, 0x9c, 0xde, 0x2b, 0xa4, 0x50, 0x3b, 0x79, 0xf5, 0xc1, 0x06,
-  0x02, 0x0a, 0x09, 0x49, 0x03, 0x96, 0x69, 0x58, 0xde, 0x1a, 0x66, 0xda,
-  0x30, 0x67, 0xba, 0xe8, 0x60, 0x1c, 0x3e, 0x64, 0xf5, 0xac, 0x0d, 0x5c,
-  0xb9, 0x03, 0x77, 0x63, 0xf4, 0xdf, 0xaf, 0x1e, 0xce, 0xfb, 0x7f, 0x66,
-  0x38, 0x7b, 0xd1, 0xa3, 0xf1, 0x82, 0x5a, 0xbb, 0x82, 0x99, 0x48, 0xa1,
-  0x27, 0x75, 0x92, 0xc1, 0x84, 0x64, 0xf4, 0x27, 0x6b, 0x34, 0x66, 0xb7,
-  0xc1, 0xa8, 0x0a, 0xf0, 0xd9, 0x54, 0x57, 0xe6, 0x99, 0x3c, 0x0d, 0xf9,
-  0x91, 0xdb, 0xef, 0xd9, 0x50, 0x3e, 0x76, 0xb8, 0x96, 0x80, 0x6f, 0x01,
-  0xaf, 0xbe, 0x3f, 0xc9, 0xfb, 0x92, 0x16, 0x82, 0xbc, 0x02, 0x9e, 0x89,
-  0x25, 0xff, 0xd3, 0xd1, 0xee, 0xdf, 0x23, 0xe6, 0x83, 0x06, 0xeb, 0xab,
-  0x08, 0xf2, 0x4c, 0x90, 0x8f, 0x55, 0x7b, 0x4d, 0x3f, 0xdb, 0x16, 0x0c,
-  0x2b, 0x62, 0x8f, 0x8a, 0x31, 0x48, 0x7a, 0x26, 0x5d, 0x56, 0x0b, 0x44,
-  0x30, 0x56, 0x2b, 0xb6, 0xc9, 0xbd, 0x82, 0xca, 0xe7, 0xcf, 0xb1, 0x72,
-  0x41, 0x11, 0x74, 0xd4, 0x7e, 0x93, 0x31, 0x4a, 0x0d, 0x6c, 0x3c, 0x60,
-  0x55, 0x77, 0x71, 0xcf, 0x27, 0x89, 0xb4, 0x54, 0xae, 0x8c, 0x24, 0xde,
-  0x0f, 0x18, 0xaf, 0x90, 0x33, 0xd8, 0x77, 0x74, 0xb9, 0xcc, 0x11, 0xd9,
-  0xa1, 0xd9, 0xf1, 0x9a, 0xd3, 0x48, 0x8d, 0x9e, 0xef, 0x9d, 0x7c, 0x7d,
-  0x88, 0xf3, 0xce, 0x6c, 0xd7, 0x67, 0xf0, 0x72, 0x46, 0x5e, 0x1f, 0xee,
-  0xe5, 0x42, 0x80, 0x46, 0x52, 0x7e, 0x63, 0xb2, 0x1c, 0xb3, 0x67, 0xfb,
-  0xbd, 0x1e, 0x83, 0xb4, 0x00, 0x38, 0xea, 0x34, 0xe5, 0x41, 0x30, 0xcb,
-  0x55, 0x27, 0xf2, 0x5a, 0x64, 0xea, 0x29, 0x38, 0x06, 0x8b, 0x34, 0xb4,
-  0x42, 0xd0, 0x65, 0x8b, 0xe5, 0x68, 0x11, 0x6b, 0x62, 0x58, 0x1c, 0xa6,
-  0x18, 0xa9, 0x26, 0x30, 0xa8, 0x4c, 0x81, 0xef, 0x0e, 0x89, 0xa5, 0x74,
-  0x52, 0x67, 0x0e, 0xa9, 0x73, 0x10, 0x6a, 0x5c, 0x02, 0x16, 0xb5, 0xbd,
-  0xb5, 0xe5, 0x51, 0x86, 0x7c, 0xaa, 0x54, 0x83, 0xc8, 0xf2, 0x68, 0xab,
-  0xff, 0xea, 0xd5, 0x2a, 0xfa, 0x71, 0x8d, 0x22, 0xd3, 0xe5, 0xc5, 0x47,
-  0xb7, 0xd9, 0xe7, 0x47, 0x57, 0xb5, 0xd9, 0x22, 0x5b, 0xa0, 0xc4, 0x8a,
-  0x3a, 0xf0, 0x0b, 0x17, 0x25, 0xa2, 0x3a, 0x88, 0xd8, 0xbe, 0x60, 0xbd,
-  0x9c, 0x3b, 0x01, 0x83, 0x97, 0x72, 0x2d, 0x72, 0x92, 0x00, 0xf0, 0xb4,
-  0x4c, 0x5d, 0x59, 0xb0, 0x0f, 0x3f, 0x75, 0x46, 0xdd, 0x8f, 0x5a, 0x98,
-  0x40, 0xc4, 0x5c, 0xb1, 0x44, 0x97, 0xcd, 0xd9, 0x18, 0x23, 0x7d, 0x7f,
-  0xc6, 0xca, 0x28, 0xe9, 0x2e, 0x22, 0xb0, 0x93, 0xf4, 0x09, 0xc3, 0xc4,
-  0x66, 0x4d, 0x16, 0x7d, 0xaf, 0x35, 0x0c, 0xb9, 0x3c, 0x04, 0x7b, 0x73,
-  0x04, 0x27, 0x3a, 0x9d, 0x6b, 0x31, 0x41, 0xb7, 0xfb, 0x2b, 0x14, 0xe3,
-  0x8b, 0xa8, 0x1f, 0xb0, 0x74, 0x05, 0x17, 0x62, 0x7e, 0x3e, 0x7b, 0x30,
-  0x19, 0x45, 0x7b, 0x40, 0xeb, 0x66, 0xe8, 0xaa, 0x54, 0x77, 0xee, 0xa9,
-  0x60, 0x09, 0x0a, 0x6a, 0xb0, 0xf4, 0x96, 0x2e, 0xa5, 0x1b, 0x5c, 0x11,
-  0x35, 0x06, 0xfe, 0x71, 0x43, 0x89, 0x5b, 0xca, 0xb3, 0x9a, 0x14, 0x9b,
-  0x72, 0xd6, 0xa5, 0x6a, 0x27, 0x75, 0x45, 0x59, 0x91, 0x2e, 0xf9, 0x41,
-  0x9c, 0x9f, 0xec, 0x5f, 0x1f, 0xdb, 0x23, 0xa3, 0xe2, 0xc3, 0x29, 0xe5,
-  0x5d, 0xbd, 0x04, 0x1e, 0x94, 0x40, 0x6d, 0xe9, 0x1b, 0xef, 0x4b, 0xd7,
-  0x71, 0x7b, 0x77, 0xf2, 0xbe, 0x2d, 0x47, 0x0b, 0xd1, 0xf3, 0xb5, 0xaf,
-  0x80, 0x53, 0x2e, 0x60, 0xdc, 0x70, 0x2d, 0x58, 0x3b, 0x01, 0xb7, 0x48,
-  0xab, 0x1c, 0x7c, 0x2d, 0xd2, 0x3c, 0x0c, 0xc0, 0x51, 0x31, 0xdd, 0x00,
-  0xcb, 0x17, 0xbc, 0xed, 0x06, 0xf1, 0x17, 0x97, 0x8a, 0x96, 0x81, 0x1a,
-  0x32, 0x47, 0xc8, 0x76, 0x61, 0x27, 0x8b, 0x47, 0x21, 0xc9, 0x97, 0x73,
-  0x99, 0x05, 0x5c, 0x14, 0x34, 0xf8, 0xb8, 0xb8, 0x86, 0x5b, 0xde, 0x29,
-  0x48, 0xcd, 0x9b, 0x28, 0x00, 0xcf, 0xe0, 0xab, 0x47, 0xee, 0x1d, 0x70,
-  0xd5, 0xca, 0x52, 0x54, 0x57, 0x20, 0xd0, 0x27, 0x3e, 0x96, 0xf2, 0x99,
-  0x65, 0xb4, 0x1a, 0x4b, 0x41, 0xfc, 0x8d, 0x2a, 0x97, 0x35, 0x92, 0xab,
-  0xea, 0x63, 0xd2, 0x96, 0x88, 0x32, 0x50, 0x7f, 0x50, 0x00, 0x10, 0x49,
-  0xbd, 0xb5, 0x25, 0x84, 0x2c, 0x0b, 0xec, 0x04, 0x49, 0xf2, 0x35, 0x36,
-  0xab, 0x89, 0x28, 0x50, 0x42, 0x3d, 0x06, 0x8f, 0xe6, 0xf6, 0x70, 0x21,
-  0x02, 0x89, 0x0f, 0x84, 0x05, 0x9f, 0xe1, 0xdf, 0x33, 0xe9, 0x13, 0x33,
-  0x94, 0x01, 0x4a, 0xa2, 0x8c, 0x84, 0x62, 0x0d, 0x2f, 0x5c, 0xfd, 0x7a,
-  0x93, 0x03, 0xbf, 0x3b, 0x3c, 0xff, 0xea, 0x74, 0x78, 0x48, 0x1c, 0xe2,
-  0xe0, 0xf0, 0xab, 0xf7, 0xcc, 0x3d, 0x78, 0xc7, 0xc4, 0x48, 0x01, 0x78,
-  0x08, 0x41, 0xb4, 0x46, 0xc2, 0x92, 0x93, 0x91, 0x25, 0xef, 0xb2, 0x67,
-  0x94, 0xa1, 0x51, 0x60, 0x2a, 0x45, 0x4f, 0x13, 0xd1, 0x6a, 0x53, 0xc4,
-  0xdf, 0x79, 0x08, 0x15, 0x96, 0x9d, 0xe7, 0x0c, 0xe3, 0x5c, 0x1a, 0x54,
-  0x88, 0x61, 0x05, 0x17, 0xbb, 0x5e, 0x36, 0xbe, 0x15, 0x1b, 0x86, 0x1e,
-  0x08, 0x5f, 0xf0, 0xc8, 0x0a, 0x1b, 0x0d, 0x82, 0x6a, 0xc8, 0x8a, 0x19,
-  0x3e, 0xcd, 0xe4, 0xf6, 0xe2, 0x54, 0x25, 0x9c, 0x65, 0x80, 0xe1, 0xa7,
-  0x28, 0xaf, 0xa8, 0xe8, 0x9c, 0x5a, 0x66, 0xa8, 0x10, 0x82, 0x23, 0x36,
-  0x23, 0x59, 0x1c, 0x53, 0x65, 0xcb, 0xe0, 0x42, 0x45, 0x22, 0x69, 0xd2,
-  0x72, 0x7b, 0xaa, 0x99, 0x5f, 0xc2, 0x5c, 0x14, 0x6b, 0x72, 0x9d, 0x8f,
-  0x04, 0x23, 0x17, 0x88, 0xb6, 0x20, 0x80, 0xcc, 0x52, 0x81, 0xc7, 0xe1,
-  0x61, 0xf1, 0xca, 0x07, 0xbe, 0x32, 0x25, 0x9d, 0xdb, 0xd5, 0xec, 0xe0,
-  0x42, 0x66, 0xca, 0x09, 0xac, 0x72, 0x21, 0xbb, 0xa2, 0xea, 0xf0, 0x38,
-  0xf9, 0xec, 0x2b, 0x0e, 0xe5, 0x71, 0x70, 0x70, 0x72, 0x9e, 0x38, 0x98,
-  0x2e, 0x90, 0x80, 0x5d, 0xe1, 0x53, 0x16, 0x9b, 0x2a, 0xe5, 0x33, 0xcd,
-  0xce, 0xa2, 0x01, 0x40, 0xf5, 0x4c, 0x6c, 0xf5, 0x8f, 0xf3, 0x96, 0xc2,
-  0x78, 0x14, 0xd5, 0x4b, 0xbf, 0xea, 0x19, 0x94, 0xd6, 0xf1, 0x2f, 0x1b,
-  0x59, 0x43, 0x13, 0xdb, 0xda, 0xda, 0xda, 0xc1, 0xe1, 0xc5, 0xde, 0xd1,
-  0xf1, 0xe1, 0x41, 0x74, 0x74, 0xf2, 0xf6, 0xf4, 0xfc, 0xdd, 0xde, 0x85,
-  0x3a, 0x99, 0x0e, 0x9c, 0x8e, 0xea, 0x6a, 0xc8, 0x38, 0x13, 0x80, 0xd7,
-  0x5f, 0x41, 0xc2, 0xb4, 0x8b, 0x57, 0x8a, 0x64, 0x24, 0xcb, 0x90, 0x54,
-  0xd6, 0x60, 0x2d, 0x52, 0xe7, 0x94, 0xaf, 0x0a, 0xc3, 0xf7, 0xf3, 0xa6,
-  0x73, 0x28, 0x0c, 0x6c, 0x39, 0x4d, 0xc3, 0x04, 0x5c, 0xd9, 0xa3, 0x4d,
-  0xb9, 0x42, 0x6a, 0x72, 0x37, 0xa1, 0x58, 0x00, 0x12, 0x69, 0x40, 0x93,
-  0xfd, 0x23, 0xce, 0x9f, 0x85, 0x78, 0xa9, 0x85, 0xed, 0x8f, 0x4a, 0x57,
-  0x9a, 0x91, 0xc9, 0x85, 0xdb, 0x09, 0x12, 0xb4, 0x88, 0x02, 0x51, 0x38,
-  0x3a, 0x68, 0xd3, 0xe5, 0x3a, 0x59, 0xd9, 0x17, 0x71, 0x82, 0xe2, 0x93,
-  0x70, 0x7f, 0x39, 0x19, 0x6c, 0x8d, 0xfd, 0xbc, 0xa5, 0x16, 0x24, 0xb9,
-  0x2f, 0x93, 0x79, 0xc1, 0x25, 0xbb, 0xec, 0xac, 0xf3, 0x2b, 0x9e, 0x89,
-  0x9a, 0x1d, 0x57, 0xb1, 0x1e, 0xc3, 0xa6, 0xd6, 0x9d, 0x13, 0x82, 0x24,
-  0x97, 0xfe, 0x51, 0x04, 0xd0, 0x35, 0xac, 0x05, 0x97, 0x7d, 0xe6, 0x9f,
-  0x73, 0x0f, 0x26, 0xa0, 0x71, 0x1d, 0x5e, 0x61, 0x09, 0xca, 0x53, 0xe9,
-  0x69, 0xf3, 0xe7, 0xb6, 0x30, 0x4a, 0x3b, 0xa0, 0x87, 0xb8, 0x48, 0x68,
-  0x5f, 0xbb, 0xd7, 0xc0, 0x2a, 0xe8, 0xc2, 0xb6, 0x85, 0x22, 0x3c, 0x41,
-  0x08, 0x18, 0x65, 0x82, 0x97, 0x82, 0x35, 0x90, 0x79, 0x80, 0xbe, 0x4b,
-  0x33, 0x1a, 0xb3, 0x88, 0xef, 0xed, 0xbc, 0xae, 0x9e, 0x56, 0xa3, 0x20,
-  0xba, 0x2b, 0xee, 0x36, 0x74, 0xcf, 0x62, 0x25, 0x83, 0x17, 0x62, 0xef,
-  0xa1, 0xc5, 0xfa, 0xaf, 0x1b, 0x7c, 0x3c, 0x93, 0xac, 0x36, 0xa8, 0x9e,
-  0x83, 0xa6, 0x99, 0xba, 0x32, 0xa9, 0xf0, 0xc5, 0xaa, 0xa7, 0x32, 0xe4,
-  0xf4, 0xd6, 0x35, 0x46, 0x3f, 0x69, 0x1b, 0x81, 0x72, 0x71, 0xd4, 0x71,
-  0xd5, 0xba, 0x6b, 0x31, 0x3c, 0x76, 0x8c, 0x11, 0xb1, 0xa6, 0x30, 0x10,
-  0xca, 0x29, 0x61, 0x3a, 0x0d, 0x73, 0x7d, 0xc7, 0x5c, 0x01, 0x8c, 0x6b,
-  0xb0, 0x6a, 0x2d, 0xc0, 0x20, 0x0c, 0x5d, 0x7c, 0xf0, 0x0a, 0xc3, 0x0a,
-  0xa6, 0x37, 0x5f, 0x33, 0x00, 0x48, 0x7b, 0xc9, 0x22, 0x0b, 0xc0, 0xfd,
-  0x25, 0xe7, 0x1b, 0x4c, 0x9e, 0xdd, 0x99, 0x49, 0x5c, 0xc0, 0xc6, 0x88,
-  0x20, 0x54, 0xb9, 0x33, 0x40, 0x02, 0x98, 0xab, 0x33, 0x5b, 0xe2, 0xf2,
-  0xf1, 0x95, 0xa5, 0xfb, 0x02, 0x96, 0x11, 0x73, 0x62, 0x9a, 0x1d, 0x0a,
-  0x09, 0x87, 0x73, 0xad, 0xe0, 0xae, 0xe3, 0x5c, 0xf4, 0x7c, 0x8a, 0x98,
-  0x26, 0x0d, 0xf2, 0x38, 0xcb, 0x0a, 0x39, 0x6f, 0x90, 0xb4, 0x3b, 0xbe,
-  0xe4, 0x46, 0x67, 0x71, 0x4d, 0x7d, 0x74, 0xa2, 0x2b, 0xd6, 0x55, 0x46,
-  0x59, 0x18, 0x21, 0xa7, 0xdb, 0x32, 0x91, 0xc7, 0xdf, 0x9c, 0xc7, 0x97,
-  0x71, 0x32, 0xfd, 0x74, 0x67, 0x6b, 0x18, 0x5f, 0x2d, 0xa7, 0xf1, 0xef,
-  0xf1, 0xe2, 0x9b, 0x67, 0xcf, 0x76, 0xb6, 0x3e, 0xfb, 0x7c, 0xab, 0x53,
-  0x73, 0x15, 0x05, 0x7e, 0x66, 0xb8, 0x0d, 0x51, 0xb1, 0x9b, 0xf9, 0x2e,
-  0xfa, 0x19, 0x8c, 0xaf, 0x52, 0xee, 0xe6, 0x1b, 0x16, 0x5e, 0x74, 0x0d,
-  0x62, 0x84, 0x50, 0x08, 0x9b, 0xd4, 0x62, 0x5c, 0x74, 0xe3, 0x12, 0x5d,
-  0x7f, 0xb2, 0xbd, 0x2b, 0xac, 0xec, 0x0a, 0x76, 0xa9, 0x58, 0x28, 0x36,
-  0x7a, 0x9d, 0xce, 0xe9, 0x06, 0xfa, 0x22, 0x2a, 0xe3, 0x2b, 0x47, 0xab,
-  0x68, 0xc1, 0x15, 0xf3, 0x36, 0x4b, 0xf8, 0x65, 0x8a, 0xb2, 0xd2, 0x83,
-  0x68, 0xfd, 0x42, 0xb0, 0xdc, 0x20, 0xf8, 0x2c, 0x92, 0x7c, 0x2a, 0x19,
-  0xb5, 0xf1, 0xcc, 0x82, 0x34, 0xf9, 0x7d, 0x76, 0xc6, 0x0f, 0x16, 0x53,
-  0x57, 0xba, 0x1c, 0x1a, 0x58, 0xea, 0x09, 0x6e, 0xba, 0x28, 0x7c, 0x71,
-  0x2a, 0xb9, 0x6e, 0x42, 0x94, 0x38, 0x5a, 0x2c, 0x94, 0xde, 0xe8, 0x60,
-  0x56, 0x3d, 0x57, 0xe5, 0xa6, 0x3f, 0xb1, 0x99, 0x0e, 0xf0, 0x3b, 0x0a,
-  0x07, 0x6a, 0xf5, 0xe4, 0xce, 0x42, 0x52, 0x8b, 0x5c, 0x65, 0x15, 0x4d,
-  0x59, 0xae, 0xcc, 0x2b, 0x2e, 0xfd, 0xc6, 0xbc, 0x36, 0x25, 0x77, 0xfb,
-  0x8b, 0x37, 0x20, 0x88, 0xed, 0x2f, 0x7e, 0xef, 0x3e, 0xdb, 0xd1, 0xcf,
-  0x76, 0xbe, 0xf8, 0xfd, 0x60, 0x80, 0xf1, 0x31, 0x85, 0x74, 0xed, 0xeb,
-  0xae, 0xe6, 0x2d, 0xc6, 0x7a, 0x84, 0xe5, 0x2f, 0x07, 0x00, 0x24, 0x7b,
-  0xdd, 0xb1, 0x9e, 0xc3, 0x55, 0xee, 0xa9, 0xed, 0xdd, 0xf1, 0xad, 0xd4,
-  0x50, 0x9c, 0x81, 0x51, 0x5a, 0xb4, 0x2d, 0xba, 0x33, 0x11, 0xa2, 0x9d,
-  0xc2, 0x01, 0xa5, 0xc4, 0xd1, 0x1f, 0x98, 0x52, 0xff, 0xb0, 0x16, 0xa9,
-  0x89, 0x9c, 0xb7, 0x03, 0x25, 0x25, 0x23, 0x23, 0x5b, 0x7a, 0x34, 0x36,
-  0x08, 0x3a, 0x6e, 0x99, 0xe3, 0x32, 0xf9, 0x0e, 0x0c, 0xaa, 0x8b, 0xfc,
-  0x51, 0xd1, 0x87, 0x64, 0xc3, 0x99, 0x9f, 0x21, 0x03, 0x42, 0x12, 0x8a,
-  0x48, 0xc2, 0x28, 0x99, 0x37, 0xe0, 0xc9, 0x4f, 0x7f, 0xf8, 0x41, 0xc5,
-  0x29, 0xfa, 0x45, 0xc7, 0x7d, 0x4d, 0x9c, 0x68, 0x42, 0xcc, 0x6d, 0x86,
-  0x42, 0x15, 0x5a, 0x0e, 0x46, 0x2f, 0xfc, 0x4b, 0x9d, 0xa7, 0x34, 0x42,
-  0x1b, 0x2b, 0x75, 0x9a, 0x79, 0x64, 0x58, 0xd2, 0x43, 0x61, 0x62, 0xa0,
-  0xcc, 0x75, 0xb8, 0x02, 0x7d, 0xa8, 0x45, 0x48, 0xf8, 0xbc, 0x73, 0xd8,
-  0x74, 0xd0, 0x3e, 0x35, 0x66, 0x6a, 0xb0, 0x6e, 0x24, 0x28, 0x56, 0x64,
-  0x9c, 0x37, 0x1d, 0x79, 0xf0, 0x2a, 0xed, 0xa8, 0x81, 0x57, 0x3e, 0xe9,
-  0xf8, 0x34, 0x54, 0xd9, 0x0d, 0x6c, 0xd9, 0x1b, 0x11, 0x9c, 0xd2, 0xbf,
-  0x25, 0x6f, 0xb6, 0xb7, 0xda, 0x9f, 0x60, 0x6d, 0x28, 0x62, 0x40, 0xd9,
-  0x37, 0xde, 0x40, 0xfe, 0xd8, 0xf3, 0xe9, 0x44, 0x9e, 0xd6, 0xfa, 0x8f,
-  0xa8, 0x6c, 0xf3, 0xa6, 0x33, 0xe2, 0xfb, 0x95, 0xff, 0x7f, 0xc5, 0x38,
-  0x10, 0x22, 0xa6, 0xcf, 0x16, 0xcb, 0xd1, 0x2c, 0xad, 0x0c, 0x78, 0x93,
-  0x27, 0xf8, 0x05, 0x4c, 0x2a, 0x89, 0xa3, 0x0d, 0x54, 0x12, 0x16, 0xc9,
-  0xaf, 0x7b, 0x99, 0x65, 0xa3, 0x38, 0xef, 0xaa, 0x11, 0xd5, 0xc6, 0xd9,
-  0xdd, 0xde, 0x79, 0xf6, 0xfc, 0x45, 0x77, 0xa0, 0x52, 0x1a, 0x18, 0x04,
-  0x14, 0xb3, 0x54, 0x55, 0x19, 0x69, 0x22, 0x96, 0xe3, 0x69, 0x79, 0x05,
-  0xc8, 0x0a, 0x6b, 0x73, 0x36, 0x30, 0x0f, 0xe3, 0xee, 0xde, 0x48, 0x6f,
-  0xbf, 0xe7, 0x7e, 0xde, 0xa0, 0x8b, 0xdf, 0xa7, 0x93, 0x37, 0x6e, 0x86,
-  0xbf, 0xe7, 0xb9, 0xbc, 0xd1, 0x49, 0xd0, 0xbe, 0x5a, 0xf4, 0x7d, 0xb1,
-  0xb1, 0xd6, 0xca, 0xd5, 0x5a, 0x37, 0xd7, 0x36, 0x71, 0x0d, 0x93, 0x86,
-  0xa7, 0xab, 0x3f, 0x11, 0xcb, 0x2d, 0x64, 0x55, 0x1f, 0x7a, 0xbe, 0x79,
-  0xdf, 0xa7, 0x56, 0xfa, 0xdc, 0x4a, 0xdf, 0xb3, 0xeb, 0x68, 0xc6, 0xa9,
-  0x26, 0xbc, 0x11, 0x3d, 0xcd, 0x3f, 0x98, 0xc2, 0xd6, 0xa1, 0x82, 0x40,
-  0x96, 0xc1, 0x8f, 0xb4, 0xff, 0xf5, 0x51, 0x57, 0x1d, 0xb4, 0xa2, 0xb8,
-  0xf5, 0xda, 0x8c, 0x6b, 0x2e, 0x6a, 0x42, 0x91, 0x0e, 0xd6, 0x0c, 0x33,
-  0x3d, 0x66, 0x7f, 0x23, 0xf7, 0x2b, 0xc9, 0x42, 0xd4, 0x99, 0xde, 0x39,
-  0x53, 0x36, 0xd7, 0xe5, 0xf8, 0x24, 0x6c, 0x06, 0x10, 0x32, 0xe2, 0x78,
-  0x84, 0xa5, 0x7a, 0xe1, 0xf2, 0x0c, 0xfa, 0x6f, 0x9d, 0x37, 0xc0, 0xc5,
-  0xb5, 0xeb, 0xa3, 0xf4, 0x95, 0x70, 0x13, 0x63, 0x10, 0x1d, 0x57, 0xf7,
-  0x4b, 0x28, 0x21, 0xe4, 0x1d, 0xf0, 0x65, 0x8c, 0x92, 0x4a, 0x35, 0x29,
-  0x11, 0x0b, 0x99, 0x7b, 0xbe, 0x76, 0x85, 0xa2, 0xbe, 0x88, 0x50, 0x1d,
-  0x41, 0xde, 0xd2, 0xc8, 0xf5, 0x4a, 0x6d, 0x5e, 0xbc, 0xa4, 0xca, 0x81,
-  0xf3, 0x7c, 0x04, 0x5e, 0x5b, 0x15, 0x0b, 0xa4, 0x05, 0x99, 0xe8, 0xe8,
-  0x41, 0xd5, 0x7f, 0x6e, 0xa1, 0xfb, 0x27, 0x1c, 0x82, 0xd7, 0xbc, 0x0d,
-  0xf8, 0xfa, 0x8b, 0xae, 0x98, 0xf0, 0xdc, 0xbb, 0x3c, 0x8c, 0x9a, 0x67,
-  0x45, 0x08, 0x34, 0x9c, 0x4f, 0x76, 0xe9, 0x20, 0x63, 0x44, 0x16, 0xe3,
-  0xfc, 0xd4, 0x39, 0xd4, 0xa9, 0x34, 0x99, 0x4e, 0xb4, 0x96, 0x9d, 0xca,
-  0x42, 0x3d, 0x6d, 0x3c, 0xe1, 0xe4, 0x5f, 0x96, 0x1d, 0xbb, 0x1c, 0x80,
-  0x83, 0xf7, 0xba, 0x0e, 0x81, 0x86, 0x45, 0xea, 0x04, 0xec, 0x2e, 0x4f,
-  0xac, 0xce, 0xdb, 0x9a, 0xe6, 0xa5, 0x79, 0x59, 0x3e, 0x9c, 0x58, 0x11,
-  0x88, 0x0e, 0x3e, 0xba, 0x5f, 0xd2, 0x97, 0x1b, 0x47, 0xe4, 0x2d, 0xa7,
-  0xce, 0x68, 0xa7, 0x6f, 0x78, 0xb9, 0xb7, 0x07, 0x57, 0xe9, 0xa5, 0x2c,
-  0x06, 0xb1, 0xc8, 0xab, 0x64, 0x93, 0xfe, 0xec, 0xd1, 0xe7, 0x3b, 0x2c,
-  0x93, 0xf1, 0x2f, 0xcf, 0xe0, 0xb7, 0x0f, 0x6f, 0xfe, 0xe0, 0x6c, 0xb8,
-  0x73, 0xc1, 0xbf, 0xa4, 0xee, 0xc6, 0x57, 0x93, 0xb4, 0x8e, 0x12, 0x64,
-  0xae, 0x40, 0xa0, 0x5e, 0xd0, 0xec, 0x05, 0xe6, 0x66, 0xe0, 0xbf, 0x65,
-  0x90, 0x4e, 0x0a, 0x1f, 0xe6, 0xa6, 0x8e, 0x45, 0x15, 0xd3, 0x59, 0xea,
-  0x4e, 0xd5, 0x60, 0xc2, 0xa1, 0xb9, 0xb8, 0x57, 0x93, 0xbb, 0x8d, 0x5e,
-  0x18, 0x3c, 0x64, 0x95, 0x4f, 0x5d, 0x29, 0x67, 0xe4, 0xad, 0x71, 0xf7,
-  0xeb, 0x5a, 0x50, 0x8c, 0xe1, 0x20, 0x34, 0xc1, 0x06, 0xdb, 0x9c, 0xd6,
-  0x77, 0xb0, 0x5a, 0x93, 0x4b, 0x02, 0x3e, 0xd2, 0xa2, 0xdc, 0xe0, 0x6e,
-  0x92, 0x69, 0x01, 0x4d, 0x9d, 0x07, 0xbd, 0x16, 0x05, 0xeb, 0x6e, 0x48,
-  0x1c, 0xe8, 0xaa, 0xcb, 0x45, 0xc2, 0x36, 0xe1, 0x0f, 0x12, 0xde, 0x76,
-  0x38, 0x13, 0x84, 0x7c, 0x90, 0xed, 0xb4, 0x2f, 0xf7, 0xa5, 0x0a, 0x41,
-  0xfd, 0xb7, 0x83, 0xe8, 0x18, 0xa1, 0x6f, 0x45, 0x2c, 0x49, 0xc9, 0x76,
-  0xa7, 0x1a, 0x05, 0x10, 0xb9, 0x88, 0xd4, 0xbd, 0x26, 0xd5, 0xd1, 0x38,
-  0x0f, 0xd4, 0xc8, 0x08, 0x70, 0x7a, 0x5e, 0xcd, 0x14, 0x89, 0x42, 0x25,
-  0x90, 0x1e, 0xac, 0xd0, 0xee, 0x39, 0xd4, 0xca, 0x73, 0x25, 0xbf, 0x03,
-  0x22, 0x0d, 0x1a, 0x11, 0x87, 0xbe, 0x8a, 0x9c, 0x01, 0x2b, 0x77, 0x84,
-  0x2f, 0xe9, 0xa6, 0x89, 0x98, 0x59, 0xb4, 0x2c, 0xb3, 0xf8, 0xb0, 0xa8,
-  0x35, 0x50, 0x16, 0xcf, 0x9d, 0x49, 0xa7, 0x03, 0x4d, 0x71, 0x9a, 0x38,
-  0x75, 0x5a, 0x51, 0x82, 0x05, 0xb0, 0x37, 0x53, 0xf8, 0x25, 0x11, 0x30,
-  0xbc, 0x7f, 0x81, 0x07, 0xc9, 0xe3, 0x8a, 0x6f, 0xe9, 0x17, 0xbe, 0xe4,
-  0x47, 0x39, 0xed, 0x74, 0x92, 0xcb, 0x75, 0x80, 0x5e, 0x81, 0xcd, 0xe2,
-  0xd0, 0x37, 0xdf, 0x1d, 0x47, 0x96, 0xdc, 0x7d, 0xe9, 0x85, 0x43, 0x8b,
-  0xda, 0xc1, 0x14, 0xd5, 0x16, 0x22, 0x12, 0x90, 0x3e, 0x25, 0x37, 0x9b,
-  0xac, 0x2d, 0xa7, 0x85, 0x45, 0xbc, 0x38, 0x95, 0x63, 0x1a, 0x3c, 0x21,
-  0xaf, 0x32, 0xed, 0x10, 0x69, 0x74, 0x79, 0x09, 0xba, 0xbd, 0xa8, 0xcb,
-  0x43, 0xe5, 0x2f, 0xba, 0x58, 0x4f, 0x7c, 0x1c, 0x2c, 0x5f, 0x77, 0xd0,
-  0x72, 0xf2, 0xf8, 0x99, 0x37, 0x5f, 0x56, 0x56, 0x09, 0x9f, 0x5b, 0x53,
-  0x6f, 0x24, 0xae, 0xb6, 0x21, 0x65, 0xdb, 0xbb, 0x41, 0xfb, 0x6f, 0xf6,
-  0xa9, 0x15, 0xa9, 0x46, 0x27, 0x7b, 0x02, 0x81, 0xda, 0x7d, 0x96, 0x22,
-  0x79, 0xa5, 0xd1, 0xd0, 0xd3, 0x27, 0xf7, 0xc2, 0xd8, 0x8f, 0x0b, 0x0f,
-  0x12, 0x8e, 0x26, 0x24, 0x60, 0xdc, 0x96, 0x76, 0x33, 0x15, 0x4d, 0xef,
-  0x2e, 0x83, 0x5d, 0x01, 0x7c, 0x66, 0x7b, 0x80, 0x64, 0x06, 0x0f, 0xd7,
-  0xe3, 0x1a, 0x70, 0xea, 0x7a, 0x07, 0x0b, 0xda, 0x31, 0x33, 0x89, 0x53,
-  0xe2, 0x6d, 0x95, 0xdb, 0xf8, 0xd5, 0x22, 0x1d, 0xa3, 0xb8, 0xec, 0x9b,
-  0x2f, 0x27, 0xd9, 0x15, 0x73, 0xab, 0x1e, 0x5d, 0xac, 0xfc, 0xb3, 0xc3,
-  0x0f, 0xef, 0x68, 0xa7, 0x32, 0x60, 0x9c, 0x15, 0x91, 0xdb, 0xed, 0xef,
-  0x15, 0xe1, 0x4b, 0xd4, 0xf0, 0x24, 0x1b, 0x6b, 0xdb, 0xae, 0x69, 0xd9,
-  0x0f, 0x6a, 0xdf, 0x7d, 0x11, 0xf6, 0x65, 0x8b, 0x13, 0x6b, 0xcb, 0x52,
-  0x15, 0x70, 0x9a, 0x96, 0x72, 0x7d, 0x3b, 0x28, 0x78, 0x98, 0xb4, 0xb8,
-  0xe0, 0x86, 0xdc, 0x55, 0x53, 0x8d, 0xb0, 0xef, 0x7e, 0xd9, 0x95, 0x50,
-  0xc7, 0xee, 0xeb, 0x2e, 0xb8, 0x16, 0xf3, 0x22, 0x03, 0xf3, 0xd5, 0x0b,
-  0xa9, 0x2b, 0x37, 0x61, 0x5f, 0xe4, 0x05, 0xad, 0xd8, 0x58, 0x89, 0x4e,
-  0x61, 0x86, 0x61, 0x8a, 0x63, 0x18, 0x58, 0x03, 0xc3, 0x80, 0xaf, 0x55,
-  0xc8, 0xe0, 0x36, 0xa3, 0x52, 0x5c, 0xd2, 0x7a, 0xd1, 0x42, 0x14, 0x43,
-  0x6a, 0x70, 0xc1, 0x0e, 0x57, 0x31, 0x6c, 0x2e, 0xe7, 0x0b, 0x4e, 0x04,
-  0x1b, 0xa3, 0x94, 0xb1, 0x9e, 0xa5, 0x41, 0xf4, 0x7e, 0x2e, 0x20, 0x7b,
-  0x09, 0xab, 0xc7, 0xa1, 0xbf, 0xbc, 0xe7, 0xfc, 0xfe, 0xb4, 0x50, 0x15,
-  0x7f, 0x62, 0x38, 0x60, 0x31, 0x87, 0x88, 0xd9, 0x5a, 0xfb, 0xe5, 0xab,
-  0x35, 0xe7, 0x68, 0x04, 0x35, 0x4b, 0x43, 0x12, 0x70, 0x29, 0xc2, 0xca,
-  0x80, 0xd8, 0x3b, 0x77, 0xf8, 0xf6, 0xf0, 0xfc, 0xfc, 0xf0, 0x9c, 0xd7,
-  0x7b, 0xaf, 0x0a, 0xb9, 0x7f, 0xad, 0x91, 0xd1, 0x1e, 0xfd, 0xcd, 0x22,
-  0xc2, 0x9a, 0xb5, 0xa4, 0x85, 0x13, 0x2a, 0x5c, 0xd3, 0x5a, 0x64, 0x7e,
-  0x6e, 0x49, 0x90, 0x17, 0x83, 0x30, 0xac, 0x89, 0x88, 0x07, 0x74, 0x96,
-  0xfb, 0x29, 0x5f, 0x2b, 0x02, 0x98, 0x1f, 0x0a, 0x13, 0x6b, 0x91, 0xbd,
-  0x9a, 0x6b, 0x31, 0x16, 0x5c, 0xd5, 0xa6, 0x3b, 0x06, 0x72, 0xe9, 0x40,
-  0x43, 0xb8, 0x12, 0xf5, 0x5e, 0xfb, 0x32, 0xf0, 0x98, 0xef, 0x25, 0x1f,
-  0x50, 0x56, 0x95, 0xb0, 0x12, 0x45, 0xb9, 0x5c, 0xa4, 0x13, 0x67, 0xdc,
-  0xa5, 0xcf, 0x49, 0xde, 0x8b, 0xe4, 0x88, 0x17, 0x36, 0x62, 0x38, 0x13,
-  0xcd, 0xf6, 0x10, 0x1a, 0xd7, 0x24, 0x1f, 0xdd, 0x9b, 0xc6, 0x90, 0x25,
-  0x20, 0x95, 0x42, 0x15, 0xc3, 0xbb, 0x96, 0xe3, 0xa5, 0x84, 0x9f, 0xc0,
-  0xa8, 0xc8, 0xac, 0xc2, 0x62, 0x05, 0x42, 0xb6, 0xc0, 0xa6, 0xab, 0x99,
-  0x0f, 0x84, 0x94, 0x0a, 0x8e, 0xc8, 0xf7, 0x45, 0x6a, 0x47, 0xbe, 0x1b,
-  0xfd, 0x54, 0xa4, 0xe3, 0x9f, 0xfd, 0xcd, 0x81, 0x10, 0x66, 0x1f, 0xab,
-  0x28, 0xb1, 0x05, 0x34, 0x79, 0x5d, 0x28, 0xd5, 0x7d, 0x25, 0xa5, 0xea,
-  0xfd, 0xf0, 0xf0, 0x3c, 0xda, 0xfb, 0xfa, 0xf0, 0xe4, 0xe2, 0x5f, 0xdc,
-  0x5d, 0x7e, 0x4e, 0x6f, 0x06, 0xdb, 0x5b, 0x4d, 0xe2, 0x4d, 0xcc, 0xf0,
-  0xad, 0x35, 0x1f, 0xc2, 0x8d, 0x4d, 0xad, 0x94, 0x4e, 0x90, 0x6d, 0x59,
-  0xd9, 0xc2, 0xb5, 0xe8, 0xc9, 0x4d, 0xfc, 0x98, 0x2d, 0xe4, 0x03, 0x16,
-  0x6e, 0xa2, 0xc0, 0x00, 0x88, 0x03, 0xc2, 0xb6, 0x46, 0x47, 0x5f, 0x34,
-  0xd4, 0x4c, 0xd9, 0xa4, 0xbd, 0xa8, 0xfb, 0x2e, 0xfb, 0x1b, 0x09, 0x02,
-  0xf1, 0xe6, 0xb3, 0xc1, 0x56, 0xb4, 0xfe, 0x7d, 0x3a, 0x7f, 0xf5, 0xe2,
-  0x4f, 0xd1, 0xd1, 0x46, 0xb7, 0x12, 0xe4, 0x29, 0x68, 0xd2, 0xa3, 0x78,
-  0x7e, 0xe3, 0x76, 0xec, 0x14, 0xa7, 0x5a, 0x42, 0x57, 0x0c, 0x82, 0x54,
-  0x8a, 0x3f, 0xae, 0x6c, 0x11, 0xa9, 0x49, 0x1a, 0x2f, 0x1a, 0x7d, 0xe7,
-  0x40, 0xef, 0x58, 0xa7, 0xa7, 0xa7, 0x26, 0xbc, 0x74, 0xaf, 0x5e, 0x34,
-  0x9a, 0x78, 0xee, 0xda, 0x78, 0x2f, 0x6d, 0xfc, 0xc2, 0x26, 0x76, 0x06,
-  0x5b, 0x3b, 0xd1, 0xfa, 0xe9, 0x70, 0x73, 0xc7, 0xb5, 0xd0, 0x6c, 0x62,
-  0x07, 0x4d, 0xf0, 0x43, 0xd5, 0x97, 0x9f, 0x73, 0xff, 0x3f, 0x25, 0xf3,
-  0x9f, 0xa3, 0xf5, 0x1f, 0xb6, 0xb7, 0xa9, 0x81, 0x3f, 0x45, 0x7b, 0x47,
-  0x3f, 0x44, 0xcf, 0x07, 0xd4, 0xd8, 0x49, 0x7c, 0xab, 0xcd, 0x29, 0x0c,
-  0xd4, 0x10, 0x8d, 0xd0, 0xf7, 0x8d, 0x36, 0x5e, 0xd4, 0xda, 0x38, 0x26,
-  0x3d, 0xf0, 0x9e, 0xae, 0x94, 0xad, 0xc1, 0xb3, 0x9d, 0x28, 0x7d, 0xf1,
-  0xf9, 0x4b, 0x6b, 0x48, 0xdb, 0xc0, 0xf7, 0x55, 0xdb, 0xa4, 0xe4, 0x05,
-  0x93, 0x98, 0x73, 0x78, 0x4f, 0xcc, 0x0c, 0x1c, 0x02, 0x80, 0xad, 0xd7,
-  0x71, 0x3e, 0x51, 0x72, 0xe3, 0x5a, 0x31, 0xb4, 0x53, 0x0a, 0x30, 0x96,
-  0xc0, 0x48, 0x49, 0x97, 0xe6, 0x6e, 0x63, 0x38, 0xac, 0x8b, 0xda, 0xa3,
-  0x7f, 0x8a, 0xde, 0x0d, 0x8f, 0x0e, 0x69, 0x46, 0x5b, 0x34, 0x34, 0xbf,
-  0x86, 0x32, 0x20, 0x7c, 0x85, 0xc5, 0xa5, 0x55, 0x5d, 0xe3, 0x4c, 0x21,
-  0xb4, 0x61, 0x32, 0xb6, 0x44, 0x74, 0x31, 0x34, 0x64, 0x56, 0x14, 0xe8,
-  0xf7, 0x3d, 0xd1, 0x5a, 0x7f, 0xef, 0x8a, 0x55, 0x06, 0xb9, 0x66, 0xd1,
-  0xf5, 0xb7, 0xd9, 0x9c, 0x8e, 0x49, 0x9e, 0xe5, 0x1c, 0xe6, 0xd1, 0xad,
-  0x48, 0x0a, 0xdf, 0x1e, 0x1c, 0x4a, 0x66, 0xdb, 0xbb, 0x78, 0x4e, 0x2c,
-  0x92, 0x31, 0x20, 0x8a, 0x1b, 0xf6, 0xba, 0x8b, 0xf3, 0x46, 0xde, 0x3f,
-  0x7e, 0x98, 0xdf, 0xd3, 0x3e, 0x7e, 0x36, 0xd8, 0x66, 0xe4, 0x3c, 0xd6,
-  0x72, 0xdf, 0xbe, 0xa3, 0xbf, 0xb7, 0x9f, 0x77, 0x23, 0xfe, 0xaa, 0xaa,
-  0xb1, 0xdb, 0x79, 0x5d, 0xdb, 0x3f, 0x3d, 0xfd, 0xf6, 0x48, 0x02, 0x30,
-  0xf6, 0xd5, 0x88, 0xca, 0x82, 0x95, 0xd3, 0x82, 0x85, 0xb9, 0x92, 0xb6,
-  0xe6, 0xe3, 0xc7, 0xe1, 0x7a, 0xbb, 0x49, 0x92, 0x05, 0xa0, 0xee, 0x6a,
-  0x1c, 0xa1, 0x54, 0x16, 0x2d, 0x23, 0x63, 0x41, 0x3a, 0x9d, 0x54, 0xf1,
-  0x2b, 0x0a, 0x06, 0x19, 0x33, 0x83, 0xed, 0xe8, 0xc1, 0x65, 0xcf, 0xc6,
-  0xbe, 0x98, 0x26, 0x86, 0xe8, 0xa2, 0x58, 0xcd, 0xe0, 0x8c, 0x1d, 0xe6,
-  0x52, 0x6b, 0xaa, 0xeb, 0x76, 0x87, 0x49, 0xd9, 0x97, 0x41, 0xef, 0xaa,
-  0x8d, 0xb6, 0xab, 0x06, 0x27, 0x67, 0x2e, 0x5b, 0x28, 0x00, 0x2e, 0x0c,
-  0xc5, 0x0f, 0x0b, 0x2e, 0xfa, 0x39, 0x75, 0x45, 0x9c, 0x51, 0xf8, 0x36,
-  0x41, 0x2c, 0xd1, 0xc9, 0xde, 0xbb, 0xc3, 0x37, 0xdf, 0xed, 0x1d, 0xbf,
-  0x3f, 0xa4, 0x57, 0x18, 0x02, 0x76, 0xdd, 0xc7, 0x1b, 0x61, 0x8c, 0xb3,
-  0x74, 0x9c, 0x4d, 0xd9, 0xa7, 0xd4, 0xfd, 0x53, 0x77, 0x4d, 0xc2, 0x2b,
-  0xa3, 0x0e, 0xbf, 0xb5, 0x2d, 0xaf, 0x11, 0x5d, 0xf0, 0x5f, 0x3b, 0xf2,
-  0xd7, 0xce, 0x9f, 0x3a, 0x1b, 0x95, 0x49, 0x37, 0xb4, 0x62, 0xa6, 0x97,
-  0x3b, 0x89, 0xab, 0x43, 0x19, 0x17, 0xc4, 0xf4, 0xca, 0xaa, 0x74, 0xcc,
-  0x23, 0x63, 0x57, 0x1b, 0x3f, 0xbb, 0x3e, 0x7a, 0x08, 0x75, 0xee, 0x0e,
-  0xbf, 0xf4, 0x06, 0xc2, 0x45, 0x67, 0xa3, 0xe7, 0xc4, 0x0d, 0x38, 0xab,
-  0xb9, 0x0d, 0x6b, 0x22, 0xb9, 0x5f, 0x70, 0xf8, 0xd6, 0x7a, 0x47, 0x7e,
-  0x79, 0x73, 0xb0, 0x77, 0x71, 0xc8, 0x2f, 0x58, 0xf7, 0x56, 0x4b, 0xdc,
-  0x22, 0x6f, 0x79, 0x3c, 0xeb, 0x1d, 0xf9, 0xf0, 0x0d, 0x4f, 0xa8, 0x23,
-  0xa5, 0x0e, 0x04, 0xc4, 0xb1, 0x36, 0xae, 0x6c, 0xae, 0x41, 0x8c, 0x41,
-  0x52, 0x5f, 0x61, 0x71, 0x22, 0xeb, 0x1d, 0xf9, 0xae, 0xe3, 0xec, 0xb5,
-  0x5a, 0x1b, 0x57, 0x9d, 0x93, 0x13, 0xc4, 0xe5, 0x36, 0xd2, 0x83, 0xa4,
-  0x04, 0x94, 0xdf, 0x1f, 0x75, 0x4d, 0x88, 0x85, 0x29, 0xc0, 0xa9, 0x73,
-  0x1b, 0xaf, 0x39, 0x88, 0x6c, 0x53, 0xca, 0xb2, 0xed, 0x9d, 0x67, 0x7f,
-  0xc2, 0x7a, 0xbe, 0xe9, 0x6c, 0xd2, 0xdd, 0xd0, 0xf9, 0x13, 0x77, 0x9d,
-  0x96, 0x41, 0x1d, 0x18, 0xed, 0x86, 0x75, 0x29, 0xa5, 0x28, 0x09, 0x52,
-  0xe1, 0x5d, 0x87, 0x2d, 0x4c, 0xe6, 0x85, 0x05, 0xbd, 0x93, 0xec, 0x01,
-  0x4b, 0x4b, 0x37, 0xf7, 0x3d, 0xf6, 0x0b, 0x05, 0x15, 0xe7, 0x0e, 0xfe,
-  0x54, 0xba, 0x0b, 0xef, 0x8f, 0x9e, 0xbc, 0x2b, 0x73, 0xd4, 0xea, 0x34,
-  0xdc, 0xe7, 0xec, 0xc1, 0x12, 0x0c, 0xd0, 0x17, 0xe4, 0x71, 0xd9, 0xb3,
-  0x86, 0x54, 0x3c, 0x52, 0x5b, 0x8e, 0x29, 0x22, 0x10, 0x09, 0x88, 0xb5,
-  0x3c, 0x40, 0x4e, 0x12, 0x7f, 0x7f, 0x10, 0xe6, 0x60, 0x77, 0x76, 0x3c,
-  0xe2, 0x1c, 0x3a, 0x17, 0x4d, 0x1d, 0x68, 0xe1, 0x6e, 0xe9, 0xed, 0xf8,
-  0xa5, 0x01, 0x04, 0x01, 0x5f, 0x94, 0xb2, 0x96, 0x85, 0xb3, 0x19, 0xc1,
-  0xb7, 0xa8, 0xcf, 0x56, 0xf7, 0xa9, 0x96, 0xa7, 0x80, 0x69, 0x88, 0x0a,
-  0x2f, 0xba, 0x31, 0xb1, 0x9a, 0x79, 0x92, 0x3f, 0x1a, 0xe2, 0xd0, 0xe2,
-  0x7a, 0xc2, 0x14, 0x83, 0x34, 0x17, 0x7e, 0x67, 0x30, 0x18, 0xf8, 0xb2,
-  0x24, 0xbc, 0x2d, 0xea, 0x71, 0x02, 0x8e, 0x79, 0x00, 0x98, 0x86, 0x35,
-  0x5e, 0x87, 0x20, 0x0f, 0x61, 0x7a, 0x43, 0xc3, 0x5d, 0xd4, 0x1a, 0xe1,
-  0x8e, 0x46, 0x60, 0xd3, 0xe8, 0x6a, 0xb7, 0x5d, 0xab, 0x75, 0x70, 0xd3,
-  0xb6, 0x09, 0x8f, 0x8c, 0x4d, 0x6c, 0x8d, 0x45, 0x8c, 0x64, 0x7e, 0xc7,
-  0xa7, 0x32, 0xb7, 0x16, 0x4c, 0xc1, 0x9c, 0xe0, 0x2f, 0xa5, 0x63, 0xb1,
-  0x25, 0xb2, 0x68, 0x3a, 0x14, 0xad, 0xbc, 0xc3, 0x4c, 0x2e, 0xbb, 0x43,
-  0xee, 0x27, 0x32, 0x4c, 0x39, 0xfa, 0x63, 0x2e, 0xa6, 0x01, 0xbb, 0x41,
-  0x1c, 0xae, 0xb0, 0xb5, 0x33, 0x11, 0xd3, 0x2c, 0xeb, 0xcb, 0x90, 0xfb,
-  0x35, 0xfb, 0x45, 0xb3, 0xc2, 0x8b, 0x58, 0x61, 0xb5, 0x48, 0x6c, 0xcb,
-  0x66, 0x70, 0x72, 0xe9, 0xe4, 0xbd, 0x99, 0x84, 0x63, 0xbc, 0xfa, 0x92,
-  0x57, 0x6d, 0x09, 0x2a, 0xc6, 0x3d, 0x34, 0xb3, 0xf6, 0x31, 0xef, 0xf8,
-  0xd8, 0x5a, 0x74, 0xae, 0xf1, 0xda, 0xda, 0xf8, 0x5b, 0xb9, 0xca, 0xba,
-  0x68, 0x45, 0xc5, 0x9a, 0x0c, 0x41, 0x39, 0xe0, 0x7b, 0x51, 0x7c, 0xc7,
-  0xd5, 0x71, 0x88, 0x06, 0xc5, 0x4d, 0x26, 0x16, 0x99, 0xe3, 0xc0, 0xae,
-  0xe8, 0x66, 0x68, 0x15, 0xb5, 0x63, 0x5f, 0x52, 0xdb, 0x40, 0x67, 0x05,
-  0x1f, 0xce, 0x0c, 0x78, 0x29, 0xaa, 0x9a, 0x30, 0x9e, 0x97, 0x0a, 0xea,
-  0xa6, 0x9a, 0xf3, 0xc8, 0x89, 0x45, 0x0f, 0x95, 0x6e, 0x52, 0x44, 0x03,
-  0xb2, 0x8d, 0x43, 0xa2, 0x28, 0x6c, 0xb5, 0xa4, 0xc0, 0xba, 0x75, 0xe2,
-  0xbc, 0xd1, 0x30, 0x37, 0xb1, 0x3c, 0x3d, 0xcf, 0xe6, 0x7d, 0x57, 0xf8,
-  0xc8, 0x45, 0x5c, 0xe5, 0xe9, 0xd5, 0x95, 0x68, 0x6c, 0x51, 0x7d, 0x6a,
-  0xed, 0x44, 0x76, 0xcc, 0xab, 0xc2, 0x21, 0x9b, 0x0f, 0xab, 0x56, 0xf3,
-  0xc2, 0x55, 0x79, 0x55, 0x8b, 0x4b, 0x85, 0x98, 0xcd, 0x03, 0x29, 0xfb,
-  0x56, 0xa2, 0x1c, 0x0d, 0xd2, 0x2c, 0xd9, 0xec, 0x55, 0xf5, 0x18, 0x9f,
-  0x9e, 0x33, 0x13, 0x2b, 0xdc, 0x96, 0x77, 0x0b, 0xb7, 0xe9, 0x80, 0xa1,
-  0xf1, 0xf1, 0x26, 0x13, 0xb6, 0x2b, 0xcf, 0xf8, 0x2a, 0xbe, 0x73, 0xc1,
-  0x4e, 0x82, 0xe4, 0x3b, 0x8a, 0xbd, 0xc6, 0xb5, 0x16, 0x55, 0xac, 0xbb,
-  0x05, 0x2a, 0x82, 0x2b, 0x1f, 0xca, 0x6e, 0x13, 0x8f, 0x85, 0xe4, 0x0d,
-  0x8c, 0x1e, 0xc7, 0x4e, 0x4f, 0xbf, 0x63, 0x26, 0x35, 0x77, 0xae, 0xe3,
-  0x57, 0x98, 0x64, 0x6d, 0x55, 0x06, 0x51, 0xd0, 0xa4, 0x98, 0x49, 0xb2,
-  0x90, 0xc5, 0xcb, 0xd8, 0xd4, 0x4b, 0x6d, 0x2d, 0x6a, 0x2c, 0x3f, 0x30,
-  0xfe, 0x03, 0xd5, 0x44, 0xa0, 0x68, 0x95, 0xaa, 0x0a, 0x17, 0x19, 0xe7,
-  0xbd, 0xbd, 0x36, 0xcb, 0x8e, 0xdb, 0xa4, 0x0e, 0x52, 0x4e, 0x46, 0x4a,
-  0x04, 0xa0, 0x01, 0x16, 0xe8, 0x9c, 0xc3, 0x7e, 0x6f, 0x1a, 0x73, 0xc8,
-  0x4a, 0x26, 0xb1, 0x00, 0xd8, 0x32, 0x10, 0x35, 0x0c, 0x69, 0x35, 0x9e,
-  0xda, 0x38, 0x7e, 0x2e, 0x36, 0x43, 0x68, 0x0d, 0x88, 0x76, 0xdc, 0x0c,
-  0x51, 0x09, 0x82, 0x72, 0xc7, 0xc6, 0xdc, 0x1f, 0x4f, 0xbf, 0x1c, 0x55,
-  0xce, 0xe8, 0x53, 0x47, 0xf6, 0xec, 0xfc, 0xf4, 0xeb, 0xf3, 0xc3, 0xe1,
-  0x30, 0x7a, 0x77, 0x78, 0x21, 0x2a, 0xff, 0x85, 0xc4, 0xc1, 0x09, 0x00,
-  0x32, 0xdc, 0x0c, 0x86, 0xa9, 0x60, 0xb1, 0x26, 0x66, 0x4f, 0x00, 0x20,
-  0x6b, 0xc6, 0x2e, 0x34, 0x88, 0x72, 0x50, 0xe7, 0xa7, 0x1a, 0x3e, 0x77,
-  0x0d, 0x43, 0x3f, 0x82, 0x99, 0xe0, 0x89, 0x74, 0x76, 0x73, 0x6f, 0x4d,
-  0x85, 0x8c, 0x2c, 0xe1, 0x4d, 0xd7, 0xc6, 0xb9, 0xbc, 0xf5, 0x9c, 0x6f,
-  0x6f, 0xfa, 0x89, 0xe9, 0x7d, 0x1a, 0x5d, 0x58, 0xc1, 0xf3, 0x4f, 0x49,
-  0x0d, 0x56, 0xfa, 0xf8, 0x34, 0xfa, 0x81, 0xda, 0x9c, 0xd0, 0xaa, 0x6b,
-  0x5d, 0xc9, 0x21, 0x4a, 0x7b, 0xf8, 0x7a, 0x2a, 0x28, 0x3c, 0x11, 0xd6,
-  0xf8, 0x59, 0xe6, 0xf9, 0x13, 0xe5, 0x90, 0x91, 0x5a, 0x2f, 0x30, 0x04,
-  0x1a, 0x4c, 0xe7, 0x7a, 0xe6, 0xb7, 0x81, 0xb1, 0x79, 0x9c, 0x5c, 0x96,
-  0x10, 0x48, 0xb8, 0x3b, 0x6a, 0x6e, 0x8b, 0x91, 0x0f, 0xb7, 0xdf, 0xf1,
-  0x47, 0x5b, 0xd1, 0xb3, 0xcf, 0x5f, 0x6e, 0x7d, 0x2e, 0xbf, 0xda, 0xbf,
-  0xaf, 0x9e, 0x6f, 0x29, 0x82, 0x28, 0xfd, 0xf5, 0x7c, 0xf7, 0xf9, 0xf6,
-  0x2e, 0x03, 0x1a, 0x6d, 0xed, 0x6e, 0xd1, 0xff, 0x3f, 0xd7, 0x4f, 0x18,
-  0xb5, 0xe9, 0xd5, 0xce, 0xe7, 0x9f, 0x21, 0x0c, 0x86, 0xe9, 0x63, 0x4a,
-  0x9d, 0xf4, 0xcb, 0xac, 0x0f, 0xd4, 0x07, 0x08, 0x41, 0x9f, 0x56, 0x0d,
-  0x92, 0xec, 0x57, 0xe7, 0x6a, 0x90, 0x3c, 0x71, 0x57, 0xc4, 0xda, 0x8c,
-  0xab, 0x92, 0xf0, 0x1f, 0xd6, 0x22, 0x76, 0xd3, 0xd0, 0xb7, 0xa5, 0x5c,
-  0x29, 0x60, 0x54, 0x2a, 0xef, 0x90, 0xc8, 0x28, 0x39, 0x54, 0xe1, 0xcb,
-  0xbf, 0xa4, 0x6b, 0xcb, 0x35, 0x5c, 0x03, 0x0e, 0x8b, 0x6e, 0x95, 0xbe,
-  0x37, 0x96, 0x25, 0x24, 0x1a, 0x09, 0x8a, 0xb1, 0xd6, 0x2a, 0xa6, 0xfe,
-  0xd2, 0xfe, 0xc4, 0x80, 0xc5, 0x6f, 0x29, 0x35, 0x44, 0xcd, 0xde, 0xac,
-  0x98, 0x6c, 0x5b, 0x5f, 0x15, 0xe2, 0x59, 0xf3, 0xdb, 0xef, 0x57, 0x2a,
-  0xa8, 0xac, 0xea, 0x50, 0x48, 0xa4, 0x8a, 0x4c, 0xcb, 0x94, 0x1b, 0xcd,
-  0xbd, 0x5f, 0x84, 0xed, 0x7d, 0x4c, 0x73, 0x7e, 0x46, 0xa0, 0x60, 0xb7,
-  0x73, 0xfd, 0x60, 0x73, 0x52, 0x89, 0x68, 0x73, 0x35, 0x50, 0x0d, 0x49,
-  0xcb, 0x95, 0x3a, 0xc4, 0xab, 0x8e, 0x64, 0xfb, 0xf2, 0x86, 0x8a, 0x9f,
-  0x05, 0x32, 0x83, 0x44, 0x50, 0xb8, 0xcd, 0x70, 0xdb, 0xcb, 0xf3, 0x46,
-  0xd9, 0x8d, 0xae, 0x98, 0x1a, 0x83, 0xfe, 0xb4, 0x0f, 0x9c, 0x27, 0x77,
-  0xe8, 0x1e, 0x9d, 0x9a, 0x0f, 0x6e, 0x77, 0x35, 0x74, 0xd6, 0x5d, 0xb0,
-  0x78, 0xdb, 0x91, 0xf4, 0xcf, 0x21, 0x7e, 0xdc, 0x35, 0x17, 0x5e, 0x44,
-  0xa8, 0xa8, 0xa4, 0x20, 0xc8, 0x0c, 0xd0, 0xc5, 0xb8, 0xb6, 0x1b, 0xc6,
-  0xc2, 0xfa, 0x9f, 0xb8, 0x78, 0x2d, 0xdc, 0x6b, 0x0a, 0xfa, 0x1e, 0x0b,
-  0xe5, 0x4f, 0xc3, 0xb4, 0xb2, 0x0a, 0xdc, 0x7b, 0x88, 0x1f, 0xbb, 0x26,
-  0x85, 0x96, 0xe9, 0xa6, 0xa5, 0x9b, 0x23, 0xa8, 0x1e, 0xf6, 0xbb, 0xb5,
-  0xb5, 0xe1, 0xd9, 0xe1, 0xe1, 0x41, 0x74, 0x7c, 0xf4, 0xee, 0xe8, 0x22,
-  0x10, 0xc8, 0xdd, 0x45, 0x62, 0x06, 0xd7, 0xc2, 0x2a, 0xc6, 0x54, 0x97,
-  0xc3, 0xe3, 0x14, 0x4a, 0x7f, 0x76, 0x95, 0xcf, 0x12, 0x4d, 0x63, 0x98,
-  0xd6, 0xdf, 0x83, 0xea, 0x0d, 0xa0, 0x0a, 0xd4, 0xf0, 0xf0, 0x02, 0x5d,
-  0x41, 0xc2, 0xcd, 0xd8, 0xd5, 0x16, 0xea, 0xff, 0xa8, 0x01, 0x1a, 0x55,
-  0xc9, 0x49, 0xe1, 0xd6, 0x5c, 0x2d, 0x29, 0x0d, 0x6a, 0xad, 0x8d, 0x8a,
-  0xd7, 0x36, 0x99, 0x6a, 0xed, 0x53, 0x67, 0xa1, 0x43, 0xbc, 0xde, 0x5d,
-  0x82, 0x84, 0xd8, 0x59, 0x2a, 0xe8, 0xcf, 0x61, 0x30, 0xb1, 0x2b, 0xd1,
-  0x72, 0x91, 0x09, 0x1f, 0x0f, 0x7b, 0x0c, 0xeb, 0x6a, 0x59, 0x24, 0xad,
-  0xf5, 0x15, 0x16, 0x68, 0x7a, 0xb6, 0xe5, 0xf2, 0x05, 0x16, 0xe0, 0x39,
-  0x2a, 0xea, 0x73, 0x67, 0xdb, 0x11, 0xc9, 0x23, 0x4b, 0x96, 0xea, 0xf3,
-  0xe5, 0xbc, 0x71, 0xdd, 0xfd, 0x28, 0xef, 0xd2, 0xfc, 0x5f, 0x6e, 0xe1,
-  0x7a, 0xbb, 0x8c, 0xf3, 0x3e, 0x49, 0x5e, 0x0f, 0x7d, 0x33, 0xae, 0x0a,
-  0x45, 0x68, 0xa0, 0xb1, 0x98, 0x7e, 0x12, 0x5f, 0x47, 0xa4, 0x26, 0x2d,
-  0xfa, 0xa4, 0x8f, 0x0c, 0x2e, 0xc9, 0xa9, 0x1e, 0x00, 0x9e, 0x7a, 0x2f,
-  0x42, 0xb9, 0x6e, 0x17, 0xfa, 0x2c, 0xb2, 0x8e, 0x87, 0xe2, 0xb3, 0x5d,
-  0xf4, 0x3c, 0x0a, 0x65, 0x59, 0x33, 0x75, 0x0e, 0xa5, 0x3c, 0x4d, 0x9d,
-  0x4b, 0x53, 0xb4, 0x9e, 0x45, 0xdb, 0x9f, 0xf3, 0x3c, 0x3e, 0x6e, 0x3e,
-  0x5c, 0x2f, 0xc3, 0xa2, 0xd8, 0x44, 0x5d, 0xc8, 0xfc, 0x6e, 0x4a, 0x5e,
-  0x02, 0x00, 0xcf, 0x65, 0x75, 0x2d, 0x1a, 0x16, 0xd1, 0x7a, 0xac, 0x9f,
-  0xa8, 0x2b, 0x1d, 0x96, 0x29, 0xf8, 0xb6, 0x45, 0x42, 0x42, 0x15, 0x49,
-  0x59, 0x17, 0xb6, 0xb5, 0x4a, 0xb4, 0x5e, 0x37, 0xf7, 0x19, 0x73, 0x58,
-  0x06, 0xb6, 0x8e, 0x10, 0xad, 0xdd, 0xa5, 0x13, 0x48, 0xd5, 0x66, 0x04,
-  0x00, 0xfd, 0x09, 0xf1, 0x49, 0x90, 0x34, 0x5c, 0x97, 0xf0, 0x79, 0xba,
-  0x91, 0xa9, 0x00, 0xc3, 0xcb, 0x9a, 0xc1, 0xb8, 0xb0, 0x0e, 0xf9, 0x81,
-  0x4b, 0xbd, 0x54, 0x5d, 0x03, 0xcc, 0x9a, 0x3b, 0xbe, 0x17, 0x0e, 0xdc,
-  0x2f, 0xcb, 0xa9, 0xd9, 0x15, 0x7c, 0x2d, 0x87, 0xea, 0x9c, 0x39, 0x99,
-  0x3f, 0x98, 0xf6, 0xf6, 0x16, 0xc9, 0xaf, 0xd3, 0xac, 0x5e, 0x17, 0xae,
-  0xa9, 0x94, 0x62, 0x5a, 0x7d, 0xac, 0xce, 0xf6, 0xd6, 0xb7, 0xab, 0x57,
-  0x1d, 0xb0, 0xae, 0x8f, 0xbe, 0xbc, 0xf3, 0xfc, 0x91, 0x4d, 0x3b, 0xcd,
-  0x5d, 0x15, 0x1f, 0x0f, 0x34, 0xe2, 0x1d, 0x30, 0x8d, 0x6d, 0x23, 0xc2,
-  0x4f, 0xae, 0x62, 0xd4, 0xa3, 0x7f, 0x64, 0xf4, 0x96, 0xa0, 0x51, 0x1b,
-  0xca, 0x3b, 0x0d, 0xc7, 0x96, 0x2f, 0x0b, 0xb6, 0x90, 0x2d, 0x00, 0x50,
-  0xe4, 0xd5, 0x58, 0x97, 0xd2, 0x29, 0x39, 0xde, 0xc1, 0xdb, 0xc2, 0x39,
-  0x7b, 0x55, 0x26, 0x61, 0xd4, 0x93, 0x27, 0x57, 0x4b, 0x49, 0xa2, 0xce,
-  0x44, 0xed, 0x67, 0x04, 0x47, 0x3d, 0xaf, 0xc4, 0x9b, 0x39, 0x72, 0x48,
-  0xe8, 0x09, 0x8c, 0x77, 0x1c, 0x9b, 0xc8, 0x2a, 0x22, 0x47, 0xfd, 0x62,
-  0x60, 0xfb, 0xec, 0x98, 0x9d, 0x61, 0xe0, 0x06, 0x72, 0xbc, 0xc2, 0xba,
-  0x52, 0x52, 0x72, 0x69, 0x80, 0x0c, 0x45, 0x21, 0x14, 0xc7, 0xec, 0x39,
-  0xaf, 0x8b, 0x9d, 0x62, 0xa5, 0x78, 0x08, 0xd0, 0x40, 0x4f, 0xa9, 0x16,
-  0x2d, 0xb9, 0xae, 0x98, 0xe3, 0x17, 0x96, 0x82, 0x2a, 0xc0, 0xb2, 0x6c,
-  0xf7, 0xdf, 0x3f, 0x3d, 0x79, 0x7b, 0xf4, 0xb5, 0x03, 0xb6, 0x10, 0x26,
-  0xbe, 0x2c, 0x33, 0xb6, 0x6b, 0x8a, 0xd1, 0xd0, 0x95, 0xfe, 0x72, 0x0e,
-  0x6f, 0xad, 0xe0, 0xa1, 0x61, 0xb7, 0xc4, 0x9e, 0x3e, 0x84, 0x1f, 0x80,
-  0x81, 0xcc, 0x9f, 0xb1, 0xad, 0x5c, 0xb2, 0xc7, 0x8b, 0x0d, 0x6f, 0x79,
-  0xa8, 0x41, 0xef, 0x48, 0x7a, 0x46, 0x9c, 0x97, 0xcb, 0x85, 0x8b, 0x1e,
-  0x0c, 0xaa, 0x7f, 0x28, 0xe4, 0x24, 0xdf, 0x0a, 0x5c, 0xe4, 0x7a, 0xb9,
-  0x10, 0xd6, 0x24, 0x51, 0x8f, 0x55, 0xc3, 0xae, 0xdc, 0x01, 0x6c, 0x59,
-  0xd0, 0x74, 0x7b, 0xbd, 0x00, 0x1a, 0x21, 0x39, 0x53, 0x46, 0xd0, 0x0a,
-  0x03, 0xe5, 0xcd, 0x95, 0xc3, 0x35, 0xc1, 0x64, 0xa2, 0x56, 0xc8, 0x69,
-  0x26, 0x9a, 0x19, 0xcf, 0x5b, 0x6a, 0xc9, 0xfe, 0xe8, 0xca, 0xeb, 0x6a,
-  0xd8, 0xaf, 0x77, 0x15, 0x15, 0xae, 0x32, 0xaa, 0x0b, 0x4d, 0x92, 0xc1,
-  0x22, 0x84, 0xb0, 0xe8, 0x89, 0xcb, 0x13, 0x9f, 0xbc, 0x61, 0x0f, 0xcd,
-  0xee, 0x00, 0xf5, 0x36, 0x11, 0xbf, 0x13, 0xd6, 0xb9, 0x52, 0x2e, 0xe9,
-  0xe1, 0x51, 0x8f, 0x2e, 0x83, 0x94, 0x32, 0x09, 0x11, 0x34, 0xa2, 0x13,
-  0x73, 0x31, 0xdb, 0x5a, 0xba, 0x9f, 0x74, 0xfb, 0xc5, 0xc3, 0x6c, 0x94,
-  0x4d, 0x2d, 0xe3, 0xc2, 0x25, 0x55, 0xdb, 0x43, 0x25, 0x4d, 0x03, 0x31,
-  0x83, 0x52, 0xfb, 0x10, 0x5d, 0x07, 0x16, 0x4a, 0x1f, 0x26, 0xe5, 0xc7,
-  0x2f, 0xc0, 0xfc, 0xf0, 0x14, 0xd9, 0x2c, 0x5c, 0x86, 0x7f, 0x32, 0x1f,
-  0x4f, 0x33, 0xa5, 0x6a, 0x4e, 0x8c, 0xc5, 0x4a, 0x55, 0xa7, 0xce, 0xbe,
-  0xbf, 0x6c, 0xc9, 0xc6, 0x0e, 0x80, 0x6e, 0x93, 0xb8, 0xc3, 0xc6, 0xe1,
-  0xef, 0x6d, 0x82, 0xfc, 0xb6, 0x7c, 0xa1, 0xe1, 0xf8, 0x06, 0x8d, 0x40,
-  0x0d, 0x09, 0x4a, 0x37, 0x0d, 0xf5, 0xcf, 0x62, 0x5b, 0x14, 0x0f, 0xe0,
-  0x8f, 0xd6, 0xb9, 0x3d, 0x5a, 0x5b, 0x7a, 0xa2, 0xa7, 0x38, 0xbf, 0x52,
-  0xcc, 0x21, 0x75, 0xaa, 0x41, 0x49, 0x74, 0xd8, 0xe9, 0xce, 0x46, 0xc9,
-  0x42, 0x89, 0x0b, 0x97, 0x81, 0xf8, 0xb4, 0x94, 0xa4, 0x3e, 0x4d, 0x7f,
-  0x12, 0xeb, 0xa4, 0x23, 0xc4, 0x80, 0xe3, 0x7c, 0xe2, 0x42, 0x52, 0x62,
-  0x7f, 0x97, 0x19, 0x96, 0xb3, 0x37, 0xd5, 0xea, 0x65, 0x16, 0xbc, 0xc6,
-  0xf6, 0x3c, 0x68, 0xc2, 0x89, 0xda, 0x50, 0xa4, 0x2b, 0xc8, 0x12, 0x0c,
-  0xb8, 0x85, 0xac, 0x9f, 0xa4, 0xf0, 0x4d, 0xc8, 0xf7, 0x6f, 0x34, 0xc5,
-  0x9c, 0xce, 0xb3, 0x82, 0x06, 0x28, 0x18, 0xd2, 0xe7, 0x5b, 0x6a, 0x89,
-  0x2b, 0x35, 0x4e, 0xb5, 0x88, 0xf6, 0xce, 0x0f, 0x49, 0xb2, 0xbd, 0x9a,
-  0x23, 0x29, 0x9c, 0x47, 0x58, 0xea, 0xfe, 0x40, 0xb0, 0xe6, 0x55, 0xd0,
-  0xf3, 0xc1, 0x1d, 0xde, 0x05, 0x6f, 0x32, 0x31, 0x69, 0x7c, 0x00, 0x1d,
-  0x32, 0x17, 0x80, 0xc6, 0x24, 0x37, 0x36, 0x78, 0x3f, 0x70, 0x1d, 0xce,
-  0xee, 0x16, 0x92, 0x62, 0x6f, 0x09, 0x75, 0x95, 0x19, 0xb4, 0xdf, 0x59,
-  0x83, 0xad, 0x87, 0x98, 0x7e, 0xb6, 0xd6, 0x38, 0xd5, 0x3e, 0x07, 0xe1,
-  0xaf, 0x86, 0x33, 0xa6, 0x7d, 0x55, 0x3c, 0xa0, 0x9e, 0x9c, 0x7a, 0xed,
-  0xd6, 0xa3, 0xbf, 0xe2, 0x9e, 0x61, 0x59, 0xa4, 0x2e, 0x17, 0x24, 0x2e,
-  0xb4, 0x5e, 0x0c, 0xd9, 0x93, 0x40, 0xf8, 0x95, 0x7c, 0x3c, 0x0e, 0xae,
-  0x16, 0x1b, 0x35, 0x0b, 0x3f, 0x71, 0x91, 0x58, 0xd5, 0x26, 0xa8, 0x03,
-  0x13, 0x3d, 0xab, 0x4c, 0x15, 0x1c, 0x27, 0x3c, 0x62, 0xa0, 0x8d, 0x1b,
-  0x11, 0x00, 0x42, 0xfe, 0xd4, 0x6a, 0xe6, 0xfd, 0xc4, 0xcd, 0xd6, 0x8f,
-  0xc1, 0x7d, 0xc9, 0x1f, 0xbd, 0x71, 0xb8, 0x43, 0x3c, 0x8a, 0x01, 0x77,
-  0x04, 0x96, 0x0a, 0xf7, 0x29, 0xff, 0x82, 0x8f, 0x11, 0xf0, 0x66, 0xe8,
-  0x6d, 0x15, 0xec, 0x10, 0x45, 0x8b, 0x0f, 0x07, 0x22, 0x3e, 0x3e, 0x70,
-  0xe8, 0x51, 0x28, 0x1a, 0x07, 0x55, 0x93, 0xd8, 0x94, 0xc3, 0x19, 0xbc,
-  0x76, 0xe0, 0x8b, 0xa4, 0x52, 0x69, 0xc9, 0xa5, 0x08, 0x75, 0xfa, 0x1d,
-  0x5a, 0x8b, 0xee, 0x74, 0xea, 0x19, 0xbe, 0x3d, 0xc6, 0xbb, 0x8a, 0x6c,
-  0x3a, 0x2f, 0x30, 0x29, 0xef, 0x62, 0x04, 0xea, 0x87, 0x4a, 0x6e, 0x03,
-  0x97, 0xf2, 0xe0, 0xd4, 0x1f, 0x87, 0xfd, 0x82, 0xfc, 0x10, 0x84, 0x0b,
-  0xdc, 0xa6, 0x85, 0xf9, 0x21, 0x89, 0xb6, 0xc7, 0x1a, 0x1b, 0x21, 0x89,
-  0xd4, 0x49, 0x39, 0x0e, 0x96, 0x32, 0x19, 0x5f, 0x67, 0x12, 0x4e, 0x4b,
-  0x8b, 0x16, 0xa4, 0x5d, 0x76, 0xa2, 0xff, 0x52, 0x1a, 0xf8, 0xd6, 0x67,
-  0xeb, 0x31, 0x21, 0x0c, 0x04, 0x55, 0x6b, 0xe0, 0x09, 0xe2, 0xf0, 0x87,
-  0x8b, 0xf3, 0xbd, 0xe8, 0x9b, 0xc3, 0xbd, 0x83, 0xc3, 0xf3, 0x61, 0xed,
-  0xd2, 0xd7, 0x28, 0x10, 0x91, 0xd0, 0xd8, 0x1e, 0x0c, 0xd1, 0xd8, 0x72,
-  0xfe, 0x35, 0x60, 0xdf, 0xb8, 0x5e, 0xfc, 0x80, 0x83, 0x44, 0xe7, 0x83,
-  0x15, 0x22, 0x71, 0x1c, 0x70, 0x54, 0x1a, 0x47, 0x3e, 0x67, 0x41, 0x1b,
-  0x5a, 0x81, 0xd8, 0x59, 0xcf, 0xc3, 0x54, 0x19, 0x0f, 0xe7, 0xe4, 0x2f,
-  0x93, 0x49, 0x66, 0x59, 0x80, 0xd5, 0x9d, 0xfb, 0xc6, 0x27, 0x5c, 0x07,
-  0x6c, 0x4b, 0x2f, 0x19, 0x35, 0x20, 0x76, 0x7e, 0xe8, 0x53, 0xbf, 0x7d,
-  0x5a, 0xfc, 0x3e, 0x23, 0x6e, 0x3d, 0x24, 0x45, 0xa7, 0x66, 0x0d, 0xac,
-  0x76, 0xbf, 0x26, 0xd5, 0x34, 0x1b, 0x27, 0xe9, 0x9b, 0xd6, 0x96, 0xf8,
-  0x74, 0x4d, 0xb9, 0xa8, 0x40, 0x5d, 0x83, 0xc0, 0xa5, 0x1a, 0x08, 0xc9,
-  0x7a, 0x82, 0x1a, 0x79, 0x2d, 0x1a, 0xa7, 0xe4, 0xd5, 0x4c, 0x0d, 0x0b,
-  0xc3, 0x40, 0x74, 0x0a, 0x90, 0x75, 0xd2, 0x52, 0x2f, 0x75, 0xd8, 0x45,
-  0x0c, 0x40, 0x92, 0x86, 0xa5, 0x0f, 0x85, 0xf7, 0x03, 0x7c, 0x21, 0x1a,
-  0xa0, 0x5f, 0x54, 0x5c, 0xa5, 0x6a, 0x17, 0xd5, 0xba, 0x36, 0xda, 0x1c,
-  0x8f, 0xc1, 0xd1, 0xbc, 0xc5, 0xf5, 0x73, 0x97, 0x06, 0xa5, 0xad, 0xef,
-  0x4a, 0x30, 0x18, 0x2b, 0xf5, 0x30, 0x75, 0x72, 0xb8, 0x99, 0x6c, 0xbc,
-  0xc9, 0xab, 0x41, 0x12, 0x50, 0x48, 0xcc, 0xa8, 0xff, 0x81, 0xc0, 0x71,
-  0xf7, 0x5c, 0x12, 0x7d, 0x93, 0x15, 0xb8, 0x0b, 0x9a, 0x8f, 0xf3, 0x25,
-  0xdf, 0xb6, 0xfc, 0x78, 0x43, 0x5d, 0x5d, 0x0e, 0xf2, 0x6e, 0x6d, 0xcd,
-  0x72, 0xa9, 0xce, 0xf6, 0x2e, 0xbe, 0x81, 0xa3, 0x15, 0x24, 0x7c, 0x00,
-  0xa4, 0x07, 0x73, 0xaf, 0x35, 0x73, 0xb1, 0x9c, 0x02, 0x27, 0xf2, 0xaf,
-  0x61, 0x77, 0x99, 0x3c, 0x09, 0x47, 0x1e, 0x4c, 0x94, 0x80, 0x02, 0x4a,
-  0xd5, 0xf0, 0x58, 0xad, 0x4a, 0x83, 0xa8, 0x77, 0x97, 0x68, 0xe7, 0xc2,
-  0x2e, 0xbb, 0x92, 0x89, 0xde, 0x95, 0x39, 0x81, 0xe8, 0x59, 0x98, 0x63,
-  0x8d, 0x27, 0x44, 0x52, 0xc4, 0x17, 0x97, 0x9a, 0x62, 0xdb, 0xa3, 0x3d,
-  0x6d, 0x87, 0xc6, 0x0a, 0x8e, 0xf4, 0x97, 0xb3, 0x87, 0x41, 0x13, 0x37,
-  0x24, 0xfa, 0x6a, 0x59, 0x56, 0xd9, 0x4a, 0x0d, 0xcf, 0xd1, 0x49, 0x96,
-  0x79, 0x96, 0x95, 0x55, 0x44, 0x44, 0xac, 0x8e, 0x9c, 0x68, 0xc1, 0x40,
-  0x93, 0xb1, 0x70, 0x53, 0x73, 0x95, 0xbb, 0x43, 0xc1, 0x30, 0x1e, 0x15,
-  0xd9, 0x74, 0x59, 0x06, 0x81, 0xd7, 0xbf, 0x6c, 0xcc, 0xc1, 0xa0, 0xd7,
-  0x8f, 0x06, 0x89, 0x11, 0x14, 0x47, 0x0e, 0xe7, 0x31, 0x69, 0xfa, 0x5c,
-  0x72, 0x96, 0xfd, 0x8e, 0x79, 0x36, 0xaf, 0x16, 0x4e, 0x41, 0x8c, 0xf7,
-  0xc6, 0xda, 0xda, 0xd0, 0x36, 0x9b, 0xc1, 0xf7, 0x9a, 0x9b, 0x0e, 0x9c,
-  0x08, 0x20, 0xfc, 0x89, 0xdf, 0x60, 0x4c, 0xbf, 0x18, 0x1e, 0x52, 0x22,
-  0x7b, 0x0a, 0x16, 0x2e, 0x7b, 0x9c, 0x16, 0xd5, 0x49, 0xe1, 0x2b, 0xe7,
-  0xb9, 0xb0, 0xc4, 0xb2, 0x8b, 0xcc, 0xa0, 0x75, 0xd5, 0x73, 0xe7, 0x09,
-  0xa2, 0x92, 0x9a, 0xde, 0x8a, 0x98, 0xc9, 0x97, 0x80, 0x82, 0x73, 0xf9,
-  0xa8, 0x5c, 0x1e, 0xe4, 0xe6, 0x7f, 0x6f, 0x46, 0x3d, 0x81, 0xb9, 0x69,
-  0x01, 0x1b, 0x59, 0x46, 0xff, 0x0f, 0x42, 0xb0, 0x14, 0xac, 0x90, 0xdb,
-  0xac, 0x21, 0xfc, 0x0d, 0x48, 0x85, 0xba, 0xce, 0xc7, 0x9e, 0xfa, 0x49,
-  0x3a, 0x48, 0xee, 0x58, 0x7f, 0x31, 0x1d, 0x81, 0xbf, 0xb0, 0x2c, 0x53,
-  0x0f, 0x1c, 0x03, 0xbc, 0x8b, 0x4b, 0x67, 0xd5, 0xe3, 0x9a, 0x53, 0x52,
-  0x81, 0x49, 0xc4, 0x7a, 0xd4, 0x1d, 0x30, 0x0f, 0xea, 0x5a, 0x54, 0xd1,
-  0xdb, 0x8b, 0xa8, 0xc8, 0xe4, 0xa7, 0x65, 0x1b, 0x69, 0x8c, 0x97, 0x92,
-  0xbf, 0xaa, 0x51, 0x5a, 0xec, 0x45, 0x2b, 0xa0, 0x59, 0xdc, 0xa9, 0x84,
-  0xd5, 0x99, 0x63, 0xd2, 0xc6, 0x68, 0x42, 0x00, 0xfb, 0x2d, 0x01, 0x7c,
-  0x86, 0xcb, 0xa6, 0xf0, 0xc5, 0x57, 0x91, 0xac, 0xcd, 0x05, 0x8b, 0x4c,
-  0x91, 0xb1, 0x1b, 0xd5, 0x12, 0x38, 0xdc, 0x46, 0xf9, 0xd1, 0xeb, 0xd5,
-  0x8f, 0x84, 0x78, 0xf8, 0xe8, 0xee, 0xe2, 0xb4, 0x0c, 0x25, 0x02, 0x9b,
-  0x11, 0x69, 0x78, 0x0a, 0x70, 0x3f, 0x7a, 0xa8, 0x84, 0xa6, 0xf8, 0xb8,
-  0xcd, 0x2b, 0xce, 0xef, 0x50, 0x8b, 0x94, 0x62, 0x89, 0xc0, 0xfc, 0x75,
-  0x9d, 0x6a, 0x74, 0xa9, 0x2c, 0xba, 0x99, 0x03, 0xd9, 0x9e, 0x01, 0xf3,
-  0x1e, 0x87, 0x16, 0x78, 0xef, 0xaa, 0x0b, 0x80, 0x18, 0x34, 0x4f, 0xcb,
-  0xc0, 0xa1, 0xee, 0xe9, 0x0d, 0x72, 0x14, 0x66, 0x92, 0x63, 0x55, 0x5c,
-  0xb8, 0xf3, 0x47, 0x75, 0x1d, 0xf6, 0xc7, 0x51, 0xac, 0xf3, 0xc8, 0xaf,
-  0x47, 0x21, 0x57, 0xc9, 0xce, 0x36, 0x54, 0x52, 0x09, 0xdc, 0x00, 0x88,
-  0x9d, 0x55, 0xc2, 0xaa, 0xd4, 0x2b, 0x09, 0xd6, 0x1d, 0x35, 0x39, 0x81,
-  0x91, 0x68, 0x49, 0xf6, 0xea, 0x67, 0x16, 0x89, 0x30, 0xf0, 0x38, 0x55,
-  0x0a, 0xa5, 0x48, 0xe2, 0x76, 0x51, 0xe6, 0xcb, 0x71, 0x05, 0xb0, 0x0a,
-  0xc4, 0x50, 0xf1, 0xcf, 0xbb, 0xe5, 0xcd, 0x42, 0xad, 0x7e, 0x3d, 0xae,
-  0xa4, 0xb1, 0xe8, 0x93, 0x61, 0x17, 0x1b, 0x52, 0x6a, 0x54, 0x2b, 0x2e,
-  0x43, 0x3b, 0xa1, 0xf1, 0x3b, 0x02, 0xeb, 0x9f, 0xb9, 0x24, 0xfa, 0x0a,
-  0xee, 0x97, 0xa4, 0x24, 0x04, 0xb7, 0xae, 0x8a, 0x60, 0x10, 0x39, 0xf2,
-  0x48, 0x11, 0xc8, 0x20, 0xd0, 0xb0, 0xb1, 0x72, 0xcd, 0xa1, 0x84, 0x51,
-  0x77, 0x7d, 0x5f, 0x5b, 0x94, 0xfa, 0xdb, 0xa4, 0x85, 0x34, 0xa8, 0x7e,
-  0x57, 0x08, 0xa2, 0xf0, 0x48, 0x63, 0xb5, 0x58, 0xd5, 0x64, 0x4a, 0x53,
-  0x76, 0x92, 0xa1, 0x9c, 0xc4, 0x99, 0xae, 0xdf, 0xc0, 0x55, 0xf7, 0xb4,
-  0x92, 0xaa, 0x35, 0x41, 0xa2, 0x79, 0x2b, 0x9e, 0x09, 0x0a, 0x49, 0x83,
-  0x88, 0x0e, 0xcc, 0x9a, 0x0a, 0x66, 0x83, 0x05, 0x63, 0x9d, 0xc6, 0x36,
-  0xe9, 0xe8, 0xcc, 0x75, 0x41, 0x43, 0xe0, 0x19, 0x77, 0xa7, 0xc9, 0x56,
-  0x37, 0xa8, 0x64, 0xb1, 0x2e, 0x51, 0xff, 0x19, 0xf4, 0x1e, 0xb6, 0x1c,
-  0x62, 0x82, 0x62, 0xb7, 0xe0, 0x08, 0xb7, 0x8d, 0x96, 0xa1, 0x50, 0x13,
-  0xbf, 0x74, 0x30, 0xdb, 0xaf, 0x76, 0x06, 0xdb, 0x2f, 0x3f, 0x1f, 0x6c,
-  0x0d, 0xb6, 0xb7, 0x98, 0xb3, 0xf0, 0x50, 0x82, 0xc1, 0xc9, 0xba, 0xb4,
-  0x74, 0x55, 0x79, 0xaf, 0xd9, 0xe7, 0xc9, 0xe1, 0xc5, 0xf7, 0xa7, 0xe7,
-  0xdf, 0x46, 0x47, 0x27, 0x17, 0x87, 0xe7, 0x6f, 0xf7, 0xf6, 0x3f, 0x16,
-  0x7a, 0x38, 0x34, 0x58, 0x07, 0x35, 0x0c, 0x13, 0xbf, 0x30, 0x4d, 0xab,
-  0xa0, 0x5f, 0xb3, 0xa4, 0xbc, 0xde, 0xda, 0xdd, 0x7e, 0x14, 0xaf, 0xb4,
-  0xc5, 0x30, 0xe8, 0xdf, 0xb7, 0x49, 0x6d, 0xf3, 0xa4, 0x56, 0xb7, 0xe2,
-  0x50, 0xd0, 0x86, 0x12, 0x60, 0xe5, 0x82, 0x73, 0xc1, 0xe0, 0x51, 0xc6,
-  0x20, 0x1d, 0xe5, 0xb1, 0x99, 0xa4, 0x46, 0x02, 0x9a, 0x28, 0x19, 0xb5,
-  0x8a, 0xef, 0xa2, 0x41, 0xe8, 0xca, 0x6e, 0x39, 0x46, 0x79, 0x99, 0x4e,
-  0x4b, 0x35, 0xa4, 0x08, 0x06, 0xe2, 0x04, 0xc2, 0x9d, 0x31, 0x64, 0x2b,
-  0xfe, 0x8b, 0xda, 0xbf, 0xa8, 0xe9, 0x25, 0xc5, 0x7f, 0x27, 0x2e, 0x51,
-  0xc4, 0x01, 0x0f, 0x54, 0xd2, 0x6d, 0x30, 0xd6, 0x6a, 0xc9, 0xc7, 0x30,
-  0x86, 0xb6, 0x06, 0x40, 0x58, 0x58, 0x6c, 0x33, 0x26, 0x56, 0x31, 0x8a,
-  0xee, 0xeb, 0x40, 0x70, 0x1a, 0x82, 0xd1, 0x48, 0x57, 0x10, 0xa5, 0x0c,
-  0xf4, 0xb6, 0x0a, 0x9f, 0x29, 0xb7, 0x13, 0x92, 0x27, 0x44, 0xf2, 0x33,
-  0x7c, 0x6e, 0x6e, 0xbd, 0xa8, 0xc0, 0xaa, 0x45, 0x52, 0x5a, 0x22, 0x7c,
-  0x5d, 0x84, 0x6c, 0x84, 0x68, 0x4e, 0xf2, 0xf8, 0x8e, 0x2b, 0xd6, 0x88,
-  0xd8, 0xe0, 0x83, 0x19, 0x83, 0xf2, 0x18, 0x2c, 0x32, 0xf9, 0x35, 0x8f,
-  0xce, 0x0e, 0xdf, 0xf5, 0xad, 0x84, 0x1e, 0xfd, 0x2e, 0x66, 0x28, 0x83,
-  0xdd, 0x94, 0xe4, 0x9e, 0x45, 0x32, 0xb7, 0x80, 0x1a, 0xf0, 0x44, 0x8d,
-  0x00, 0x0a, 0x27, 0xc0, 0x87, 0x46, 0x2c, 0x12, 0xc2, 0x6b, 0x15, 0xbf,
-  0xcc, 0x2e, 0xad, 0x16, 0x04, 0x3c, 0xde, 0x4f, 0x8d, 0x5a, 0x8e, 0xd6,
-  0x5d, 0xa4, 0x2e, 0xf7, 0x87, 0x70, 0x54, 0x44, 0x0b, 0xb8, 0x00, 0x81,
-  0xcc, 0x92, 0xad, 0xcf, 0xbe, 0xdd, 0x1f, 0x7e, 0xb2, 0xbd, 0xa3, 0xc3,
-  0xd9, 0x18, 0x78, 0x38, 0xcb, 0x46, 0x1e, 0x3e, 0xd8, 0x75, 0x38, 0x46,
-  0xcb, 0xaa, 0xc6, 0x01, 0xc7, 0x66, 0xac, 0xbb, 0xcc, 0xa0, 0x8d, 0x4a,
-  0x6a, 0xd0, 0x9a, 0x14, 0x2e, 0x35, 0xe1, 0xd2, 0x95, 0xb8, 0x63, 0x67,
-  0x08, 0xea, 0x33, 0x68, 0x85, 0x84, 0xd2, 0xc5, 0xfb, 0xc5, 0x73, 0xfb,
-  0x48, 0x5a, 0xd6, 0xd6, 0x90, 0x36, 0xee, 0x63, 0x5a, 0xea, 0x7b, 0xce,
-  0xeb, 0xed, 0xbf, 0x65, 0xd4, 0x44, 0xbd, 0xd4, 0x0d, 0x97, 0xc7, 0x77,
-  0x83, 0x03, 0xa0, 0x21, 0xec, 0x13, 0xab, 0xc1, 0x32, 0xf7, 0x80, 0xee,
-  0xfc, 0xf4, 0x29, 0x6d, 0x14, 0x9d, 0x2c, 0x81, 0x6a, 0x60, 0xa6, 0x90,
-  0x4d, 0x59, 0x69, 0x71, 0x8f, 0x1c, 0xe4, 0x0c, 0xb1, 0xbf, 0x90, 0x60,
-  0xd2, 0x93, 0x41, 0xf4, 0x4d, 0x32, 0x2f, 0xb4, 0xe0, 0xb1, 0x25, 0x5f,
-  0x21, 0x38, 0x90, 0xcb, 0x2c, 0xa1, 0x28, 0xce, 0x71, 0x12, 0x2b, 0x88,
-  0x20, 0xf1, 0xba, 0x42, 0x74, 0x5b, 0x2b, 0x08, 0x11, 0x73, 0x88, 0x1e,
-  0x6e, 0x22, 0x35, 0xd0, 0xa2, 0x3c, 0x62, 0x5a, 0x68, 0x03, 0xeb, 0x55,
-  0x28, 0x40, 0x40, 0x53, 0xa3, 0x39, 0x3d, 0xe6, 0xf0, 0x32, 0xa9, 0x3d,
-  0xf9, 0x1a, 0x58, 0xab, 0x6c, 0x27, 0x14, 0x5d, 0xcb, 0x33, 0x95, 0x49,
-  0x7e, 0xcd, 0x46, 0x8f, 0x82, 0xae, 0x9b, 0x78, 0x3e, 0x7e, 0x18, 0x4c,
-  0x48, 0x8a, 0x65, 0xb3, 0xd9, 0x60, 0x79, 0xb3, 0x19, 0x1c, 0x53, 0x66,
-  0xf9, 0xd7, 0x02, 0x0b, 0x50, 0x35, 0x79, 0x5b, 0x69, 0xbf, 0x26, 0x6a,
-  0x57, 0x5c, 0x39, 0x13, 0x4c, 0x12, 0x96, 0xe0, 0x2f, 0xc7, 0x73, 0x25,
-  0xbe, 0xd5, 0x61, 0xe4, 0x60, 0x3e, 0xb9, 0x85, 0xc1, 0x22, 0x99, 0xed,
-  0xba, 0x14, 0x64, 0xe3, 0x0f, 0x8a, 0x0e, 0xee, 0x54, 0x8a, 0xc0, 0x3c,
-  0x3b, 0x4f, 0xae, 0xa6, 0x2a, 0x50, 0x84, 0x4a, 0x8b, 0x87, 0x6d, 0x6d,
-  0xa6, 0x81, 0x88, 0xaa, 0x03, 0x0f, 0x04, 0xca, 0x35, 0x11, 0xa7, 0x9a,
-  0xa1, 0x8e, 0x8a, 0x31, 0x7e, 0xad, 0x26, 0xeb, 0x1b, 0x51, 0xb0, 0x10,
-  0x20, 0x8e, 0xb2, 0x18, 0xac, 0xc6, 0x1d, 0x0b, 0x47, 0x52, 0xc7, 0x13,
-  0x7d, 0x2b, 0x14, 0x02, 0x8c, 0x5f, 0x0d, 0x8d, 0x86, 0xdb, 0xd3, 0xca,
-  0xe6, 0xc9, 0x59, 0xa1, 0xaf, 0x6f, 0x9f, 0xb1, 0xad, 0xfb, 0xe2, 0x78,
-  0xd8, 0x13, 0x7a, 0x98, 0x27, 0x77, 0x01, 0x65, 0x09, 0x2c, 0xb5, 0x92,
-  0x1f, 0x5b, 0x7e, 0x24, 0x7c, 0xcd, 0x6a, 0xf7, 0xe6, 0x32, 0x1a, 0xe1,
-  0x0c, 0xde, 0x49, 0xe6, 0xb3, 0x20, 0x6c, 0x21, 0x34, 0x9e, 0x98, 0x87,
-  0x63, 0xf5, 0x47, 0x44, 0x20, 0x72, 0x00, 0x2f, 0x0c, 0x9d, 0x47, 0x02,
-  0xd3, 0xb3, 0x5e, 0xd4, 0xdf, 0x01, 0x6c, 0xce, 0x76, 0x75, 0x21, 0x63,
-  0x2e, 0x0b, 0x12, 0x8f, 0x51, 0x06, 0x69, 0xcd, 0x15, 0x74, 0x37, 0x96,
-  0xb0, 0xae, 0x64, 0x7d, 0x4b, 0xef, 0xf3, 0x8f, 0x1d, 0x9d, 0xd4, 0xed,
-  0x36, 0x42, 0xb7, 0x59, 0x1e, 0xbd, 0x4d, 0xa6, 0x0f, 0x4d, 0xb1, 0x61,
-  0xe7, 0xd1, 0x9d, 0x45, 0x92, 0xc4, 0x5d, 0xea, 0x20, 0x55, 0x05, 0x55,
-  0x1b, 0x86, 0x50, 0x05, 0x32, 0xb4, 0x01, 0xd0, 0x32, 0xaa, 0x89, 0x7b,
-  0x1e, 0xdd, 0xee, 0x98, 0xa7, 0x99, 0xbf, 0xb1, 0xc5, 0x13, 0x53, 0xbd,
-  0x67, 0x24, 0x8d, 0xdc, 0x45, 0x0e, 0x77, 0x0b, 0x28, 0x97, 0x53, 0x9f,
-  0x88, 0x6e, 0x89, 0x93, 0x54, 0x38, 0x0d, 0x6b, 0x50, 0xa5, 0x43, 0x1f,
-  0xe2, 0xed, 0x07, 0xe2, 0x2b, 0xc9, 0xc2, 0x3e, 0xc8, 0x09, 0x21, 0xe0,
-  0x38, 0xd3, 0x24, 0xc1, 0x16, 0xcb, 0x99, 0xd6, 0x73, 0x02, 0x23, 0xee,
-  0xe1, 0xba, 0x2d, 0x23, 0xe2, 0xc4, 0xa9, 0x84, 0xfc, 0x4d, 0x21, 0x4c,
-  0x43, 0xc0, 0x52, 0x63, 0xa9, 0x5f, 0x28, 0xb6, 0x80, 0x09, 0x9c, 0x1e,
-  0xe8, 0xe5, 0x3a, 0x15, 0x1b, 0x06, 0x22, 0x54, 0xb1, 0x60, 0xc4, 0x2a,
-  0xba, 0x11, 0x9d, 0xbe, 0x25, 0x37, 0x5a, 0x66, 0x08, 0x81, 0x75, 0x02,
-  0x83, 0xb4, 0x31, 0x84, 0xd0, 0x19, 0x75, 0x43, 0x1e, 0xd9, 0xff, 0x82,
-  0xd7, 0xa0, 0xe8, 0xfa, 0x45, 0x53, 0x90, 0xe0, 0xea, 0x0a, 0xa8, 0x7b,
-  0xa4, 0x50, 0xb0, 0x8b, 0xb3, 0xdc, 0xea, 0x90, 0x76, 0x93, 0x7b, 0x16,
-  0x90, 0xba, 0xda, 0xab, 0x7c, 0x2d, 0x28, 0x00, 0x58, 0xdc, 0xb3, 0xa3,
-  0x13, 0x29, 0xad, 0xe9, 0x0e, 0x52, 0xc2, 0x90, 0x89, 0x6b, 0x52, 0x15,
-  0x16, 0xe3, 0x89, 0x15, 0x67, 0x22, 0x12, 0x7b, 0x13, 0x13, 0x1b, 0x1f,
-  0x90, 0x54, 0xfb, 0x3a, 0x5f, 0x4a, 0xef, 0x5d, 0xbe, 0x24, 0x8b, 0x62,
-  0xda, 0xad, 0x95, 0x89, 0x73, 0x9b, 0x59, 0xbb, 0x8d, 0x9c, 0x21, 0x6b,
-  0x3c, 0x09, 0x0b, 0xe0, 0x6a, 0x2b, 0x15, 0x26, 0xd9, 0xab, 0xe5, 0x49,
-  0x86, 0x16, 0xf4, 0x4f, 0xa2, 0xc1, 0x26, 0x75, 0x58, 0x6c, 0xda, 0x8b,
-  0x8b, 0x9b, 0x71, 0x41, 0xd7, 0x23, 0x27, 0x05, 0xff, 0xe4, 0x90, 0x9c,
-  0x79, 0xc4, 0x93, 0x9f, 0xa3, 0xfe, 0x78, 0x8a, 0xf9, 0x45, 0xa8, 0x49,
-  0xf9, 0x13, 0x91, 0x0c, 0x3f, 0xf1, 0xf3, 0x1a, 0x67, 0xc9, 0x0d, 0xdf,
-  0xbf, 0x63, 0x1c, 0x75, 0x14, 0xfd, 0xbb, 0x38, 0xdf, 0x3b, 0x19, 0xbe,
-  0x15, 0x23, 0xeb, 0x45, 0xe6, 0xcb, 0x09, 0xaa, 0x65, 0xc1, 0x79, 0x22,
-  0x1d, 0xd2, 0xd8, 0x9d, 0x80, 0x7b, 0x5b, 0x90, 0xb6, 0x16, 0x1a, 0xec,
-  0xd5, 0x41, 0x8c, 0xa5, 0x50, 0x21, 0x78, 0x35, 0x1d, 0xa6, 0xf5, 0x62,
-  0xc3, 0x5d, 0xac, 0x45, 0x58, 0xad, 0xc4, 0x63, 0xdc, 0x19, 0x36, 0xaa,
-  0x3e, 0xc4, 0x84, 0xb2, 0x6f, 0x83, 0xb1, 0x4f, 0x85, 0x97, 0xaf, 0xc4,
-  0x95, 0xdc, 0x27, 0xd5, 0xa3, 0xaf, 0xb0, 0xf8, 0x41, 0xd5, 0x16, 0x67,
-  0x98, 0x13, 0x5e, 0xae, 0x68, 0x70, 0xae, 0xf1, 0x30, 0x91, 0xd0, 0x9a,
-  0x5e, 0xff, 0xc3, 0xf6, 0x46, 0x7b, 0xf3, 0x17, 0xbf, 0xb4, 0xf9, 0xf6,
-  0xb1, 0x9b, 0xac, 0xef, 0xf3, 0x54, 0xd6, 0xff, 0xb0, 0xb3, 0xf1, 0xe8,
-  0x8c, 0xc2, 0x4c, 0x3b, 0xdf, 0x27, 0xbd, 0xc1, 0x83, 0x8d, 0xde, 0x58,
-  0x09, 0x59, 0xbd, 0x83, 0x5d, 0xac, 0xc7, 0xa5, 0x47, 0xb9, 0xab, 0xa0,
-  0x3e, 0x70, 0x2c, 0xb0, 0x93, 0xfc, 0xbc, 0x0b, 0x47, 0x53, 0x16, 0x8e,
-  0xfe, 0xd7, 0x61, 0x88, 0x0e, 0x48, 0x8a, 0x78, 0xc8, 0xee, 0x38, 0xdd,
-  0xbc, 0xc8, 0x06, 0xe8, 0x7b, 0xe7, 0x91, 0xbe, 0xfd, 0xec, 0x02, 0x35,
-  0x97, 0xfd, 0xa1, 0x1c, 0x50, 0x65, 0x78, 0xb0, 0xda, 0xcf, 0x9a, 0x2f,
-  0x52, 0xb9, 0xba, 0xbf, 0x8b, 0xa3, 0x77, 0x87, 0x8c, 0x1b, 0x7b, 0x70,
-  0xc4, 0xf8, 0x65, 0x43, 0x45, 0x10, 0x34, 0x8d, 0xd6, 0x81, 0xab, 0x86,
-  0xe0, 0xf6, 0xe2, 0x28, 0x74, 0x71, 0x4b, 0xee, 0xf4, 0xbb, 0x9d, 0xe0,
-  0xae, 0x35, 0xb0, 0xb6, 0xb0, 0xf4, 0xbd, 0xa3, 0xcb, 0xfe, 0xbb, 0x6c,
-  0x02, 0xad, 0xab, 0x2f, 0x70, 0xd4, 0xf4, 0x16, 0x7d, 0xf8, 0x7e, 0x3e,
-  0xab, 0x7c, 0x1c, 0x26, 0x09, 0xaa, 0x42, 0xbd, 0xb6, 0xaa, 0x00, 0xc0,
-  0xdf, 0x36, 0xfb, 0x7d, 0x14, 0x89, 0x95, 0xf8, 0x20, 0xf5, 0x12, 0x54,
-  0x30, 0x1e, 0xec, 0xec, 0xd3, 0xfa, 0xa4, 0xd3, 0x07, 0xf1, 0x68, 0xc7,
-  0x3e, 0x0e, 0xc9, 0x67, 0x04, 0x5e, 0x71, 0x56, 0x92, 0x37, 0x16, 0x89,
-  0x39, 0x68, 0x2d, 0x84, 0xa4, 0x84, 0x5c, 0x9e, 0xdc, 0xf9, 0x40, 0x1a,
-  0x2d, 0xc7, 0x97, 0x2d, 0x1e, 0x30, 0xc9, 0xbb, 0x8a, 0x8f, 0xbe, 0xd5,
-  0x51, 0xf7, 0x37, 0x79, 0xa7, 0x52, 0xf2, 0x42, 0x7a, 0x08, 0x09, 0x50,
-  0x3f, 0xd1, 0x0a, 0x11, 0xa7, 0x79, 0xc0, 0xc0, 0x74, 0xd8, 0x56, 0xf4,
-  0x25, 0x80, 0xab, 0x0c, 0xd0, 0x35, 0xab, 0xe3, 0xf4, 0xd6, 0xcb, 0x35,
-  0xbe, 0xd6, 0x06, 0x6c, 0x34, 0x37, 0x2f, 0x0b, 0x71, 0x9d, 0x45, 0xb5,
-  0xe0, 0x5d, 0x12, 0x59, 0xd2, 0xb0, 0xe4, 0x84, 0x77, 0xfb, 0x5d, 0x20,
-  0x6a, 0xa7, 0xf3, 0x96, 0xc9, 0xf4, 0x7f, 0xf9, 0x6c, 0x1a, 0x3e, 0xbc,
-  0xa8, 0x73, 0xc9, 0xc0, 0x0a, 0xec, 0x10, 0xe9, 0xc8, 0x00, 0x04, 0x6b,
-  0x44, 0x68, 0x8b, 0xe4, 0x79, 0x66, 0x6b, 0xa6, 0x97, 0x88, 0x8e, 0xe6,
-  0x42, 0x2c, 0x9d, 0xb5, 0x55, 0x8c, 0x5c, 0xcc, 0x47, 0x97, 0x8b, 0x09,
-  0xbc, 0xfb, 0x12, 0xd7, 0xf8, 0x9f, 0xf1, 0x7c, 0x19, 0xe7, 0x0f, 0xd1,
-  0xf6, 0x4e, 0x2f, 0xda, 0xd9, 0xda, 0xde, 0x69, 0x99, 0x43, 0xe7, 0x3f,
-  0x39, 0xba, 0x66, 0x07, 0x5f, 0x77, 0x3e, 0x76, 0x16, 0x3e, 0x46, 0x1e,
-  0xb7, 0xaa, 0x66, 0x93, 0x12, 0xef, 0x61, 0x47, 0x9f, 0xd4, 0xc4, 0xe5,
-  0x2a, 0x78, 0x00, 0x44, 0x83, 0x4c, 0x21, 0x36, 0x27, 0xab, 0x3d, 0xe5,
-  0xca, 0x94, 0xf0, 0x13, 0x6b, 0x5a, 0x88, 0x0c, 0x21, 0x14, 0xce, 0xf0,
-  0x16, 0xe7, 0x28, 0xc1, 0x55, 0xdd, 0xa3, 0xb4, 0xb4, 0x6d, 0xe1, 0x18,
-  0x0d, 0xde, 0x1b, 0xa2, 0xf7, 0x83, 0xa3, 0xfd, 0x0b, 0x43, 0xcc, 0xbb,
-  0xe4, 0xeb, 0x34, 0x7f, 0xf8, 0xb8, 0x1a, 0x45, 0x8f, 0x3e, 0x33, 0xd9,
-  0xbd, 0x4e, 0x48, 0x22, 0x9b, 0x8f, 0x96, 0x57, 0xbb, 0x7f, 0x89, 0xf3,
-  0xab, 0x6c, 0xfe, 0xd4, 0xf3, 0x13, 0x24, 0x29, 0xed, 0x12, 0x83, 0xda,
-  0x7e, 0xb5, 0xfd, 0x4c, 0x22, 0xe0, 0x53, 0x2e, 0x82, 0x06, 0xfe, 0xd0,
-  0x9d, 0x75, 0x05, 0xb0, 0x01, 0xa1, 0xf7, 0x0e, 0xa5, 0x61, 0x3e, 0xe9,
-  0x8a, 0xba, 0x15, 0x87, 0xcf, 0x4e, 0xf4, 0x59, 0xc9, 0x66, 0xee, 0xae,
-  0x49, 0xc1, 0xc3, 0x2e, 0xa7, 0xfe, 0x2d, 0x17, 0xdd, 0x41, 0xe5, 0x84,
-  0x3f, 0x31, 0x57, 0xee, 0xc2, 0x95, 0x64, 0xda, 0x17, 0x9e, 0xac, 0xec,
-  0x74, 0x94, 0x27, 0xf1, 0x8d, 0x2f, 0x8b, 0xe7, 0xd1, 0x1c, 0xcc, 0x76,
-  0x7e, 0xfe, 0x76, 0x5f, 0x30, 0x30, 0x2d, 0x07, 0x07, 0x4b, 0x1d, 0x39,
-  0x4b, 0xc7, 0x06, 0x8f, 0xf2, 0x89, 0xfe, 0x39, 0x48, 0x7e, 0x77, 0x32,
-  0xfa, 0x88, 0x87, 0xe8, 0xdc, 0x09, 0xdc, 0xd8, 0x5e, 0xb5, 0x9c, 0x01,
-  0xcb, 0xfc, 0x25, 0x93, 0x9a, 0xd5, 0xbf, 0x5b, 0x97, 0x52, 0x6e, 0x62,
-  0xbb, 0x96, 0x02, 0xec, 0x5a, 0xa6, 0x57, 0x8d, 0x05, 0x34, 0x6e, 0xae,
-  0x7e, 0x76, 0xb0, 0x77, 0x16, 0xe8, 0x4d, 0xd0, 0x4b, 0xbc, 0x8d, 0x88,
-  0x9f, 0x63, 0x99, 0x19, 0x25, 0x36, 0xc5, 0x94, 0xf4, 0xd0, 0xf3, 0xd2,
-  0x6e, 0x09, 0x3e, 0x39, 0xb9, 0x8d, 0x25, 0xd2, 0x3a, 0xd3, 0xeb, 0x04,
-  0xe6, 0x0c, 0xe0, 0x79, 0x4f, 0x27, 0x31, 0x3c, 0x6a, 0x7a, 0x09, 0x41,
-  0x08, 0x45, 0x5b, 0xa9, 0x86, 0xd5, 0xd0, 0xde, 0xdc, 0x47, 0x9a, 0x0d,
-  0xa0, 0x69, 0x0f, 0xf2, 0xbb, 0x3c, 0xc6, 0x99, 0xae, 0x0f, 0x36, 0x01,
-  0xe1, 0xcf, 0x34, 0xf8, 0xb8, 0xb8, 0x21, 0x56, 0x2a, 0x9e, 0x60, 0xea,
-  0x3d, 0x1d, 0x27, 0x66, 0x53, 0x9d, 0xa4, 0x12, 0x91, 0xc1, 0xd6, 0x0c,
-  0x60, 0xe9, 0x54, 0x36, 0x4c, 0x6e, 0x20, 0x56, 0x5e, 0xa6, 0x45, 0x22,
-  0xb8, 0x77, 0xd1, 0xc5, 0x5d, 0x26, 0x42, 0xa7, 0x03, 0x1c, 0x90, 0x98,
-  0xc6, 0x62, 0x99, 0x0a, 0x74, 0x06, 0x6d, 0x1e, 0xf8, 0x41, 0x50, 0x5e,
-  0xad, 0xe3, 0x0c, 0x29, 0x07, 0xce, 0x81, 0x36, 0x3c, 0xf8, 0x36, 0xe2,
-  0x1c, 0x6d, 0xee, 0x63, 0x9f, 0x6b, 0x12, 0xb0, 0x2f, 0x7c, 0x06, 0x45,
-  0xe2, 0xeb, 0x25, 0x9f, 0xf7, 0xfd, 0xeb, 0x78, 0xc1, 0x22, 0xf1, 0xf6,
-  0x16, 0x6b, 0xdf, 0xdf, 0x5b, 0xb6, 0x17, 0x1f, 0x54, 0x2b, 0x60, 0x5a,
-  0x74, 0x02, 0xc5, 0x7c, 0xc2, 0xf5, 0x47, 0x59, 0x26, 0xae, 0xda, 0xfc,
-  0xe8, 0xf6, 0x2c, 0x36, 0x67, 0xcc, 0xb0, 0xa6, 0x05, 0x91, 0x46, 0x5e,
-  0x4c, 0x6e, 0x36, 0xc7, 0xf4, 0xcf, 0xb3, 0xad, 0x4d, 0x40, 0x31, 0x96,
-  0x30, 0x91, 0x31, 0x4d, 0xee, 0xec, 0xbc, 0x78, 0xd1, 0x8b, 0x3a, 0x6c,
-  0xb4, 0xb2, 0x0e, 0xf8, 0x48, 0xd0, 0xc9, 0xea, 0xb4, 0xd5, 0x99, 0xdb,
-  0xcc, 0x2f, 0xc7, 0xfc, 0x1f, 0xbf, 0x66, 0xb5, 0xa2, 0x2e, 0x34, 0x7d,
-  0x03, 0xeb, 0x30, 0x0f, 0xb1, 0x56, 0x8c, 0xac, 0xee, 0x68, 0x1f, 0xcc,
-  0x2c, 0xc1, 0x1e, 0x88, 0x45, 0x92, 0x2d, 0xcc, 0xcd, 0x38, 0x53, 0x80,
-  0x7c, 0x74, 0x1f, 0x38, 0x67, 0xe0, 0x18, 0x96, 0xb8, 0x2a, 0x4d, 0xac,
-  0x2f, 0x96, 0xa3, 0xbe, 0x66, 0x98, 0x8a, 0x9e, 0x91, 0xd2, 0xc9, 0xa5,
-  0x3f, 0xa7, 0x66, 0xfd, 0x6d, 0x70, 0xe4, 0xaf, 0xa2, 0x8e, 0xd2, 0x16,
-  0xff, 0x18, 0xc0, 0x4b, 0x98, 0x8c, 0x79, 0x1a, 0xd9, 0x1b, 0xfd, 0xe3,
-  0x3f, 0xfe, 0x83, 0x9a, 0xfd, 0x0f, 0x6e, 0xe5, 0xcd, 0x1f, 0x8a, 0xf2,
-  0x3a, 0x78, 0xa6, 0xa3, 0x04, 0x7f, 0xe4, 0x7d, 0xa4, 0x88, 0x7b, 0x02,
-  0x50, 0x29, 0x12, 0xa1, 0xde, 0x1d, 0x2b, 0x47, 0xee, 0x05, 0xf3, 0x4b,
-  0x91, 0xa2, 0x26, 0x36, 0x37, 0x17, 0x76, 0xf0, 0x15, 0xfb, 0x2f, 0x13,
-  0x4e, 0x6d, 0x26, 0x2a, 0x04, 0x12, 0xdd, 0x86, 0x89, 0x18, 0x87, 0x27,
-  0xdf, 0x1d, 0x9d, 0x9f, 0x9e, 0xbc, 0x3b, 0x3c, 0xb9, 0x88, 0xbe, 0xdb,
-  0x3b, 0x3f, 0xda, 0xfb, 0xea, 0x58, 0x33, 0xa8, 0x79, 0x0a, 0x1c, 0x2d,
-  0x22, 0xa2, 0x77, 0x0d, 0x47, 0x34, 0xc8, 0x68, 0x69, 0x05, 0xcf, 0xaf,
-  0x95, 0x0b, 0xfc, 0xa0, 0xc0, 0xd4, 0x30, 0xaf, 0x7e, 0x40, 0x01, 0x8b,
-  0x1e, 0x3b, 0xfc, 0x3e, 0x58, 0x2d, 0x0b, 0x36, 0x5b, 0x3e, 0x04, 0x39,
-  0xb9, 0x1c, 0xc8, 0xc2, 0x54, 0x6a, 0xfc, 0xc9, 0xd7, 0x1d, 0x52, 0x78,
-  0xff, 0x41, 0xf4, 0xb5, 0xa4, 0x75, 0x6b, 0x48, 0x95, 0x7b, 0x55, 0x53,
-  0x8c, 0x60, 0xc6, 0x71, 0x63, 0xd8, 0x3b, 0x3e, 0xf6, 0x5d, 0x3d, 0x5e,
-  0x85, 0x41, 0xe1, 0x7c, 0x24, 0x0b, 0xe8, 0xda, 0x6a, 0x10, 0x5f, 0x65,
-  0x1e, 0x65, 0x7b, 0xfe, 0x10, 0x02, 0x6a, 0x73, 0x67, 0xb4, 0x1d, 0xeb,
-  0x82, 0xc5, 0xc0, 0xee, 0x46, 0x3a, 0x40, 0x69, 0x71, 0xd3, 0x8b, 0xba,
-  0x7f, 0xe8, 0x4a, 0x76, 0x56, 0x02, 0xb8, 0x59, 0xa9, 0xf1, 0xb0, 0xe1,
-  0x07, 0x75, 0x72, 0xea, 0xc7, 0xa4, 0x4e, 0x34, 0x37, 0x00, 0xf7, 0xa2,
-  0xf7, 0x7f, 0x16, 0x26, 0xcf, 0x20, 0xf0, 0xd0, 0x3f, 0xae, 0x88, 0xfe,
-  0x2e, 0xc5, 0x5c, 0x69, 0x94, 0xfd, 0x24, 0xad, 0xef, 0x42, 0x69, 0x8b,
-  0xc7, 0x01, 0xaa, 0xb0, 0x98, 0x71, 0x58, 0xf9, 0x85, 0x1c, 0x20, 0x15,
-  0x93, 0xe5, 0x72, 0xb8, 0x97, 0x42, 0xdb, 0x6b, 0x56, 0xde, 0x57, 0x39,
-  0x28, 0xa8, 0xea, 0x7e, 0xd3, 0x6a, 0x3d, 0xc0, 0x65, 0xc5, 0x81, 0xe5,
-  0x79, 0x3a, 0x51, 0x9c, 0xba, 0x56, 0xaa, 0x18, 0xc0, 0xd3, 0x71, 0xbe,
-  0x0f, 0x50, 0xef, 0x39, 0x17, 0x80, 0x72, 0x85, 0x10, 0x24, 0x08, 0x95,
-  0xb8, 0x48, 0xce, 0x99, 0x5d, 0x73, 0x15, 0x42, 0x10, 0xd8, 0x09, 0x11,
-  0x3d, 0xbe, 0xca, 0x4c, 0xfc, 0x8e, 0x9d, 0xfb, 0x55, 0x32, 0xb6, 0x24,
-  0x66, 0xc7, 0xa4, 0x30, 0x07, 0x44, 0xe5, 0x2c, 0x60, 0x70, 0xd4, 0x9a,
-  0xbd, 0x99, 0xe3, 0x94, 0x60, 0x2f, 0xd3, 0x38, 0x86, 0x22, 0x48, 0xf7,
-  0xf5, 0x61, 0xf0, 0xcc, 0x4b, 0xc4, 0x45, 0x69, 0xc8, 0x50, 0xc0, 0xdf,
-  0xb2, 0xf4, 0x60, 0x44, 0xcc, 0x61, 0x58, 0xfc, 0x20, 0x9a, 0xd4, 0xe0,
-  0x47, 0x34, 0x69, 0xa6, 0x50, 0x3a, 0x3d, 0x53, 0xce, 0x44, 0x32, 0x4e,
-  0x14, 0x47, 0xa3, 0xf4, 0x2a, 0x32, 0x2b, 0x48, 0xc4, 0x54, 0x02, 0x94,
-  0xb0, 0x6c, 0x96, 0xf0, 0x56, 0x01, 0x03, 0x0c, 0xb2, 0xfb, 0x35, 0xd7,
-  0x94, 0xf7, 0xa0, 0x55, 0x36, 0x93, 0x82, 0x23, 0xf5, 0x03, 0x2b, 0x1a,
-  0x2c, 0xe9, 0x4b, 0x5e, 0x47, 0x0b, 0x6b, 0x52, 0x7c, 0x6b, 0x0d, 0xf2,
-  0x62, 0x13, 0x2d, 0xe0, 0xf6, 0xe6, 0x48, 0x29, 0xb1, 0xf4, 0x5c, 0xac,
-  0x83, 0x05, 0xc0, 0x32, 0xb7, 0x80, 0x65, 0x85, 0xab, 0x4d, 0xad, 0x3b,
-  0x80, 0x6a, 0x6e, 0x65, 0x2c, 0x10, 0x9f, 0x4c, 0xf4, 0x12, 0x9f, 0x5e,
-  0xa9, 0x26, 0x61, 0x9b, 0xa5, 0x50, 0x4c, 0x44, 0x13, 0x3c, 0x68, 0x1a,
-  0xdf, 0x7a, 0xc0, 0x78, 0xe6, 0x44, 0x22, 0xf2, 0x98, 0xe8, 0x8f, 0xfa,
-  0x57, 0x5f, 0xbc, 0x97, 0xb1, 0x15, 0xde, 0x2a, 0x36, 0xbc, 0x07, 0x5b,
-  0xa4, 0x00, 0xa6, 0xd6, 0xb1, 0x16, 0xb4, 0xc2, 0x78, 0x69, 0xbf, 0xcc,
-  0x10, 0x15, 0xda, 0xb1, 0x22, 0xcb, 0xdc, 0x98, 0x4e, 0x03, 0x88, 0x6a,
-  0x31, 0x47, 0xc4, 0x0d, 0xe1, 0xc3, 0x15, 0xb4, 0xdf, 0xd3, 0x18, 0x12,
-  0x81, 0xb3, 0x0d, 0x66, 0xa2, 0xd1, 0xc9, 0x2c, 0x9e, 0xd5, 0xcc, 0x63,
-  0x01, 0x47, 0x33, 0x6f, 0x6b, 0x78, 0x33, 0x69, 0x65, 0x84, 0x34, 0x9e,
-  0x89, 0xf0, 0xe8, 0xc9, 0x6f, 0xf6, 0x20, 0xf1, 0x6b, 0x6b, 0x6b, 0xfb,
-  0xef, 0x87, 0x17, 0xa7, 0xef, 0xa2, 0xd3, 0xf7, 0x17, 0x67, 0xef, 0x2f,
-  0xf4, 0xea, 0x1a, 0x49, 0xf4, 0xaf, 0xe8, 0x88, 0x22, 0x05, 0xd8, 0x6e,
-  0xce, 0xd4, 0x85, 0x8c, 0x60, 0x85, 0x0c, 0xd0, 0x74, 0x01, 0x4a, 0x8d,
-  0xcb, 0xee, 0x01, 0x76, 0x93, 0x20, 0xde, 0x62, 0xcd, 0xef, 0x68, 0xcd,
-  0x91, 0x99, 0x09, 0xdb, 0x8e, 0x25, 0x0b, 0x41, 0xef, 0x69, 0xaf, 0x3a,
-  0x52, 0xab, 0x63, 0x06, 0x67, 0x6f, 0x15, 0x14, 0xc8, 0x47, 0xe4, 0x98,
-  0x6d, 0xc7, 0x9b, 0x7e, 0xc2, 0xe0, 0x40, 0x84, 0xc5, 0x8c, 0x4b, 0x33,
-  0x66, 0x5a, 0x7c, 0x26, 0x82, 0x56, 0xaa, 0x29, 0x6a, 0x61, 0xa6, 0x5c,
-  0x99, 0xd1, 0x0c, 0xaf, 0x5d, 0x6c, 0x35, 0xc7, 0xa3, 0x20, 0xa6, 0x4c,
-  0x1c, 0xf2, 0x1c, 0xbc, 0x65, 0x25, 0xe9, 0xef, 0xd8, 0x04, 0xde, 0xb8,
-  0x66, 0xef, 0xa2, 0xee, 0xf7, 0x49, 0xd8, 0xe0, 0xa7, 0x7f, 0xe7, 0x04,
-  0xc0, 0x0f, 0xf6, 0xc9, 0x3f, 0xa4, 0xcb, 0x3f, 0xcf, 0xbb, 0x08, 0xc5,
-  0xaa, 0x7a, 0x5e, 0xbf, 0x3d, 0x3c, 0xff, 0xea, 0xf0, 0xfc, 0x74, 0x88,
-  0xf0, 0x13, 0x33, 0x77, 0x35, 0x89, 0xfd, 0x26, 0xc9, 0x47, 0x49, 0x9e,
-  0x69, 0x21, 0x19, 0xfb, 0xeb, 0xc5, 0xe6, 0xd7, 0xc3, 0xe1, 0xde, 0xd9,
-  0x91, 0xab, 0x39, 0xe2, 0x52, 0x91, 0x44, 0x47, 0x9a, 0x4b, 0xb2, 0x1c,
-  0xcf, 0xdf, 0x5e, 0x21, 0xba, 0x18, 0xdf, 0x48, 0x88, 0x6a, 0xc3, 0xc7,
-  0x69, 0x36, 0x5a, 0x76, 0x6e, 0x6a, 0x86, 0x1a, 0x37, 0x6c, 0xe8, 0x42,
-  0x92, 0xa8, 0x2d, 0x04, 0xfc, 0x96, 0x4d, 0xca, 0x3d, 0x17, 0xc6, 0x75,
-  0x93, 0x8f, 0xfa, 0x44, 0xe8, 0x37, 0x56, 0x1f, 0x52, 0x82, 0xe9, 0x89,
-  0x4d, 0x4a, 0x94, 0xad, 0xb7, 0x33, 0xdc, 0x70, 0x55, 0xd8, 0xcd, 0x1b,
-  0x3e, 0x1a, 0x5c, 0x16, 0x63, 0x3a, 0x10, 0xce, 0x2e, 0x67, 0xc9, 0x42,
-  0x27, 0x99, 0xbd, 0x3e, 0x06, 0x76, 0x40, 0xbd, 0xb9, 0x7a, 0x55, 0x62,
-  0xea, 0xa2, 0x4f, 0x9e, 0x3b, 0xd0, 0xa7, 0xb0, 0x60, 0xe8, 0x25, 0x09,
-  0xdf, 0x8b, 0xbb, 0x89, 0x5e, 0x20, 0x80, 0x38, 0x9e, 0x8b, 0x95, 0x5b,
-  0xf8, 0x77, 0xdd, 0xd7, 0xc1, 0x05, 0xb6, 0x10, 0xf5, 0xaf, 0x31, 0xcd,
-  0xd1, 0x68, 0x1a, 0xcf, 0x6f, 0x70, 0x93, 0xe1, 0x6e, 0x62, 0x75, 0xd3,
-  0xb0, 0x8c, 0xb8, 0x1c, 0x19, 0x5c, 0x5b, 0x0a, 0x2f, 0x00, 0x01, 0xd0,
-  0xca, 0xa5, 0xb3, 0x65, 0xd7, 0x41, 0x36, 0x05, 0x4e, 0x1c, 0x9c, 0x24,
-  0xbf, 0x08, 0x6c, 0x35, 0x3a, 0x3c, 0xa6, 0x4b, 0xc9, 0x65, 0x2a, 0x40,
-  0x3d, 0x4f, 0xa6, 0x0c, 0xbc, 0x63, 0xc1, 0x25, 0x92, 0x9c, 0x97, 0x82,
-  0x89, 0x09, 0xe3, 0x30, 0xf4, 0x6d, 0xb8, 0x21, 0x40, 0x29, 0xc8, 0x41,
-  0x2c, 0x5c, 0x8d, 0x0a, 0xe5, 0xda, 0xc2, 0xc0, 0x00, 0x2e, 0xe9, 0x4b,
-  0x56, 0x84, 0x45, 0x4c, 0x34, 0x66, 0x6b, 0xdf, 0x87, 0x96, 0xc4, 0xf6,
-  0x9d, 0x0c, 0xc2, 0x8b, 0xa4, 0xce, 0x59, 0x55, 0x49, 0x91, 0x58, 0xb9,
-  0x4d, 0xf2, 0x7a, 0x9b, 0x01, 0x00, 0x0c, 0x90, 0x1a, 0x10, 0xeb, 0xb7,
-  0x83, 0x97, 0xb1, 0xb8, 0xd7, 0x6a, 0xac, 0xa9, 0x0d, 0x7c, 0x60, 0xf5,
-  0xd8, 0x11, 0xfe, 0x24, 0xfe, 0x27, 0xc4, 0x49, 0xea, 0xed, 0x5b, 0x4e,
-  0xc0, 0x6d, 0xf2, 0x0a, 0xd2, 0x69, 0x18, 0xe2, 0x29, 0x08, 0x08, 0x30,
-  0x0b, 0x4a, 0xd0, 0x3f, 0x34, 0x18, 0x27, 0xdb, 0xf6, 0x4f, 0xf8, 0xaa,
-  0xc8, 0xfa, 0xa3, 0x25, 0x74, 0x32, 0x8f, 0xd5, 0xa5, 0x89, 0x80, 0x5c,
-  0x14, 0x18, 0xe0, 0x5c, 0xf8, 0x9e, 0xdd, 0x1a, 0x48, 0xb1, 0x16, 0x4f,
-  0x07, 0x72, 0xee, 0xaa, 0xc0, 0x2d, 0x0e, 0xae, 0x43, 0x02, 0xd9, 0x11,
-  0xd0, 0xab, 0x51, 0xcb, 0x3a, 0x42, 0xdd, 0x64, 0x17, 0x72, 0x36, 0xd7,
-  0xaa, 0x79, 0xb0, 0xb3, 0x57, 0xc3, 0x76, 0x4b, 0x87, 0x96, 0x7e, 0x01,
-  0x11, 0x21, 0x51, 0x0c, 0x71, 0x8b, 0xc7, 0xb5, 0xe8, 0xff, 0xdb, 0x92,
-  0xeb, 0x03, 0x09, 0xd2, 0x40, 0x3c, 0x95, 0x22, 0x0f, 0x2b, 0x6f, 0x11,
-  0x39, 0x4c, 0xe5, 0xc5, 0xc5, 0x8f, 0x67, 0x87, 0x6f, 0xec, 0xcd, 0xc7,
-  0xf6, 0x4c, 0x00, 0xb8, 0x10, 0x7e, 0x91, 0x28, 0xd8, 0x65, 0x50, 0x83,
-  0x93, 0x88, 0xac, 0x5f, 0x9a, 0x5b, 0x58, 0xba, 0xe9, 0x47, 0x3f, 0x1c,
-  0x1c, 0x0d, 0xcf, 0x8e, 0x4f, 0xf7, 0xdf, 0xbc, 0xfe, 0xc1, 0xb8, 0xf1,
-  0x17, 0x8c, 0x38, 0x23, 0x32, 0x9a, 0xfb, 0xcc, 0x03, 0x04, 0xe8, 0x7b,
-  0x27, 0x87, 0xdf, 0x7f, 0x20, 0xcd, 0xe0, 0x0d, 0x83, 0x82, 0xf7, 0x6e,
-  0xe3, 0xa9, 0xbe, 0xc4, 0xea, 0x55, 0x8b, 0x5c, 0x17, 0xa4, 0x73, 0xb4,
-  0x2d, 0x2c, 0xcb, 0x13, 0x01, 0x42, 0xeb, 0x03, 0x24, 0x68, 0x8d, 0xc8,
-  0x0a, 0xea, 0x09, 0xc5, 0x95, 0xdc, 0xcc, 0x96, 0xe2, 0x8c, 0x99, 0xbb,
-  0xf9, 0xbb, 0xa5, 0x44, 0xe6, 0xb1, 0x37, 0x3a, 0x74, 0xf2, 0x22, 0xf8,
-  0x51, 0xbf, 0xf1, 0x41, 0xa1, 0x0a, 0xbf, 0x9b, 0x73, 0x2c, 0x84, 0xc3,
-  0x32, 0xd4, 0x0a, 0x99, 0x70, 0x9f, 0x2a, 0xe0, 0xa1, 0x22, 0xf9, 0x70,
-  0x1c, 0xa6, 0x85, 0x64, 0xbb, 0x2a, 0xcc, 0x22, 0xbe, 0xb8, 0xb1, 0xc4,
-  0xe3, 0x31, 0xfd, 0x60, 0x8c, 0x49, 0x2e, 0xe7, 0x72, 0xc6, 0x55, 0xd9,
-  0x87, 0x17, 0xac, 0x42, 0x69, 0xd5, 0x32, 0x35, 0x3f, 0x5b, 0x49, 0x39,
-  0x24, 0xfe, 0x57, 0xb1, 0x2b, 0xc3, 0x52, 0x13, 0x95, 0x13, 0xed, 0xd8,
-  0x5c, 0x35, 0x13, 0x90, 0xad, 0x08, 0x92, 0x5e, 0xc8, 0x42, 0xa8, 0x20,
-  0xb0, 0xc6, 0x97, 0x76, 0x80, 0x33, 0x25, 0x8d, 0x5a, 0xc5, 0x05, 0x54,
-  0x4b, 0xc1, 0xee, 0x4c, 0xd3, 0x91, 0x37, 0x98, 0xd7, 0x3c, 0x91, 0xec,
-  0xe8, 0x56, 0xc4, 0x87, 0xf0, 0x08, 0x99, 0x29, 0xdc, 0xa7, 0xd7, 0x16,
-  0x99, 0x95, 0x4f, 0x14, 0xe2, 0x87, 0xa9, 0x3a, 0x4c, 0x82, 0x74, 0x4a,
-  0x2a, 0x14, 0x13, 0x13, 0xd1, 0xdc, 0xa7, 0x41, 0x28, 0xa3, 0x82, 0x08,
-  0x01, 0xfb, 0x54, 0x59, 0x36, 0xea, 0x95, 0x4b, 0x3a, 0x13, 0x1b, 0x59,
-  0x48, 0x60, 0x41, 0x7a, 0x36, 0x42, 0x4e, 0x74, 0x66, 0x0d, 0xe9, 0x43,
-  0xc5, 0xc6, 0x2b, 0xce, 0x83, 0x02, 0x52, 0xd3, 0x84, 0x45, 0x2d, 0x58,
-  0xdf, 0xc2, 0xce, 0xec, 0x26, 0xe5, 0x15, 0x1c, 0x2d, 0xc3, 0x7a, 0x5e,
-  0x6e, 0xf4, 0x52, 0xd2, 0x02, 0x0b, 0x8f, 0x60, 0xbb, 0x38, 0x07, 0x12,
-  0x62, 0xa9, 0x48, 0xe3, 0xa6, 0xf4, 0x68, 0xe4, 0xdc, 0xa0, 0x0a, 0x0a,
-  0x63, 0x74, 0x69, 0xa5, 0xfa, 0x1e, 0x5b, 0x51, 0xb7, 0x9a, 0x42, 0xbe,
-  0x79, 0x62, 0x21, 0x30, 0x62, 0x62, 0x28, 0xd8, 0xd7, 0x30, 0x1f, 0xbb,
-  0xcb, 0x98, 0x33, 0x57, 0x38, 0x14, 0x24, 0x57, 0xc0, 0x9d, 0x25, 0x17,
-  0x47, 0xd7, 0x0a, 0xa2, 0xa8, 0x7f, 0xc9, 0x0e, 0x37, 0x03, 0x63, 0xf3,
-  0xb1, 0xc0, 0xb2, 0xdc, 0x01, 0x59, 0x89, 0x69, 0xfd, 0x41, 0x3b, 0x74,
-  0x59, 0xd6, 0xb6, 0x59, 0x3d, 0x49, 0xda, 0x89, 0x91, 0x23, 0x62, 0x36,
-  0xdd, 0x20, 0xd7, 0xb0, 0xd0, 0x0c, 0x4e, 0xe7, 0xac, 0x14, 0x86, 0x87,
-  0x8a, 0x45, 0x3e, 0xe7, 0xa9, 0xe2, 0x14, 0x24, 0xc9, 0x72, 0x81, 0xf2,
-  0x3b, 0x63, 0x45, 0x20, 0x47, 0xf0, 0xa7, 0x6b, 0xcf, 0xee, 0x10, 0xbf,
-  0x56, 0xb4, 0xa8, 0xef, 0xde, 0x1f, 0x5f, 0x1c, 0x9d, 0x85, 0x8e, 0xc7,
-  0xe8, 0xfb, 0xa3, 0x8b, 0x6f, 0x48, 0x5e, 0xe7, 0xda, 0xce, 0xc7, 0xec,
-  0xdd, 0x79, 0xf7, 0x6e, 0xef, 0x84, 0x33, 0xd4, 0x4f, 0x10, 0x23, 0xb7,
-  0x07, 0x9d, 0x81, 0xb9, 0x11, 0xad, 0x30, 0x93, 0x0e, 0xe7, 0x2e, 0xf7,
-  0x9a, 0x5e, 0x86, 0xda, 0xe9, 0x03, 0xc3, 0xe1, 0x23, 0x14, 0xae, 0x11,
-  0x6f, 0xb8, 0xea, 0x04, 0x0f, 0x6c, 0xd3, 0xc1, 0xa9, 0x65, 0x3d, 0x8b,
-  0xd7, 0xb9, 0x0e, 0x3d, 0x8e, 0x3c, 0x39, 0x91, 0xcd, 0xe1, 0x53, 0x95,
-  0xab, 0xdb, 0x7b, 0x2e, 0xb0, 0xa1, 0x0e, 0xc4, 0x14, 0x31, 0xab, 0x24,
-  0x32, 0xcd, 0x55, 0xa5, 0x91, 0xeb, 0xb2, 0x1a, 0xb7, 0x4e, 0x3d, 0x62,
-  0x48, 0x70, 0x2a, 0x67, 0xde, 0x18, 0xc8, 0xca, 0x26, 0xeb, 0xcb, 0xe7,
-  0xc7, 0xe1, 0x7d, 0x5a, 0xad, 0x1f, 0x6c, 0x81, 0x66, 0x57, 0x59, 0xe2,
-  0x0f, 0x6e, 0xff, 0xd4, 0x9a, 0x31, 0xcb, 0x2f, 0x34, 0x30, 0xb9, 0x5b,
-  0xfa, 0xcc, 0xd6, 0xfa, 0xb4, 0x25, 0x1b, 0xae, 0x46, 0x8d, 0x5a, 0xce,
-  0x76, 0x45, 0xaa, 0xac, 0x54, 0xf1, 0x06, 0x72, 0xec, 0xa9, 0x6b, 0x59,
-  0x03, 0x1a, 0x10, 0xd7, 0xab, 0xa9, 0x31, 0x3a, 0x67, 0x30, 0x4b, 0x7b,
-  0xac, 0x92, 0xd9, 0x5b, 0x2b, 0x25, 0x6e, 0xa9, 0x51, 0x48, 0x88, 0x64,
-  0x08, 0x17, 0xef, 0x33, 0x45, 0x59, 0xae, 0x2c, 0x1b, 0x24, 0xf7, 0x09,
-  0xbb, 0x37, 0xf9, 0xd7, 0xbf, 0x2c, 0xae, 0xc2, 0xac, 0x29, 0xcc, 0x55,
-  0xd3, 0x83, 0xdb, 0x31, 0x81, 0x45, 0x2a, 0xd2, 0xe2, 0x64, 0x95, 0x11,
-  0x68, 0xc5, 0xb1, 0xed, 0x55, 0x1d, 0xea, 0xf7, 0x3b, 0xcd, 0xef, 0x77,
-  0xc4, 0xe2, 0xc8, 0x15, 0xe8, 0x1d, 0x9e, 0xa6, 0xe4, 0x02, 0x87, 0xd2,
-  0x9b, 0xc9, 0x04, 0x4c, 0x61, 0x52, 0xac, 0x1e, 0x6e, 0x15, 0x61, 0x89,
-  0x62, 0xf6, 0xe7, 0x58, 0xa4, 0x65, 0x8e, 0x1c, 0x47, 0x3c, 0x02, 0x0b,
-  0xb1, 0x04, 0x90, 0x22, 0x5c, 0x0b, 0x6c, 0x8a, 0x6f, 0x2b, 0x6a, 0x90,
-  0xbe, 0x7f, 0xee, 0x02, 0xba, 0x3d, 0x4b, 0x43, 0x81, 0x2f, 0xcd, 0xa8,
-  0xe9, 0xa7, 0x8b, 0x5b, 0x2b, 0x70, 0x49, 0xbf, 0xbe, 0x74, 0xc5, 0x5d,
-  0x8a, 0x8a, 0x7b, 0xaa, 0x02, 0x5c, 0x6b, 0xbc, 0x1f, 0x83, 0x43, 0x80,
-  0x1d, 0x33, 0x06, 0x87, 0xf9, 0x3a, 0xa8, 0x8d, 0x2b, 0xa9, 0x86, 0xf6,
-  0x06, 0xa5, 0x26, 0x61, 0x5b, 0x9e, 0x22, 0xbb, 0x12, 0xec, 0x28, 0xe0,
-  0x2d, 0x21, 0x4e, 0xbc, 0xee, 0xfa, 0x4f, 0x3b, 0x5b, 0x5b, 0xdb, 0xbb,
-  0xdb, 0x9f, 0xbf, 0xda, 0xda, 0xdd, 0xde, 0xde, 0xde, 0xd9, 0xdd, 0xde,
-  0xdd, 0xdd, 0xd9, 0xfa, 0x79, 0x93, 0x4d, 0x47, 0xb7, 0x69, 0x72, 0xe7,
-  0x2a, 0xc9, 0x7f, 0x2f, 0xd7, 0x34, 0xfc, 0x05, 0x0f, 0xe2, 0x06, 0x64,
-  0x2e, 0xa9, 0x1a, 0xae, 0x09, 0x3e, 0x0e, 0x99, 0x40, 0x82, 0xaf, 0x05,
-  0x90, 0x6c, 0xe1, 0xb3, 0x15, 0x71, 0x06, 0x03, 0xc0, 0x64, 0x8c, 0xea,
-  0xaf, 0x4b, 0x9e, 0xe9, 0x88, 0xa5, 0x01, 0x88, 0x34, 0x85, 0xcb, 0x0d,
-  0xbb, 0x9a, 0x66, 0xa3, 0x11, 0x02, 0xe0, 0x5d, 0x7a, 0xe4, 0x20, 0x62,
-  0x64, 0xce, 0x1b, 0x21, 0x09, 0x75, 0x1a, 0x20, 0x3c, 0x4d, 0x0e, 0xba,
-  0x5f, 0x1d, 0x91, 0xbb, 0x34, 0x24, 0x77, 0x9c, 0x31, 0x2a, 0xfd, 0x84,
-  0x99, 0x12, 0x2d, 0x52, 0xee, 0xd2, 0x26, 0xa2, 0xcb, 0xe4, 0xf3, 0xad,
-  0xdd, 0x5d, 0x2e, 0x1c, 0xf1, 0xe9, 0x76, 0x4f, 0x23, 0x0b, 0xc3, 0x70,
-  0xe9, 0x9e, 0xbb, 0x9d, 0xa4, 0x0d, 0xd6, 0x3e, 0xc2, 0x79, 0xce, 0x97,
-  0xb3, 0x24, 0x57, 0x3d, 0x04, 0xf7, 0xa1, 0x00, 0xc8, 0x30, 0x31, 0xda,
-  0x90, 0xdd, 0xb3, 0x28, 0x85, 0x02, 0x93, 0xbc, 0xe4, 0x37, 0xf8, 0xcb,
-  0x53, 0xcf, 0x39, 0x8e, 0xca, 0x5c, 0x8a, 0x4c, 0xf2, 0xc3, 0x10, 0xc8,
-  0x81, 0x8a, 0x91, 0xdd, 0x84, 0xb2, 0xaa, 0xe6, 0x74, 0xfc, 0x14, 0x0c,
-  0x7e, 0xe7, 0xc5, 0xf6, 0xcf, 0x12, 0xc8, 0xc6, 0x04, 0xee, 0x57, 0x41,
-  0x4b, 0x83, 0x4d, 0x54, 0x1e, 0x91, 0x34, 0x30, 0x25, 0x8c, 0xf5, 0x64,
-  0x70, 0x35, 0x30, 0x21, 0x41, 0x0d, 0x87, 0xbd, 0x30, 0x9c, 0x58, 0x10,
-  0xac, 0xa5, 0x26, 0x3b, 0xd4, 0x2e, 0xb3, 0x0d, 0x99, 0x6d, 0x57, 0xec,
-  0x92, 0x95, 0x1a, 0x2f, 0x6b, 0x74, 0x65, 0xec, 0x1d, 0x1d, 0x73, 0xbc,
-  0xca, 0x31, 0x49, 0x60, 0x43, 0x63, 0x65, 0x08, 0xe9, 0x41, 0xbc, 0xcd,
-  0x3c, 0xe5, 0xdb, 0xb4, 0xe7, 0xa0, 0xe5, 0x2d, 0x2c, 0x1e, 0x62, 0x05,
-  0xdb, 0xdd, 0x45, 0x32, 0x57, 0x1c, 0x28, 0x92, 0x87, 0x89, 0x9f, 0x15,
-  0x62, 0x4e, 0x01, 0xdc, 0x22, 0xe3, 0x10, 0xc3, 0xc7, 0x01, 0x89, 0x57,
-  0x16, 0x1e, 0xd5, 0x2c, 0xf2, 0x64, 0x9a, 0xdc, 0xaa, 0xdd, 0x43, 0xc0,
-  0xeb, 0xbe, 0x56, 0xf7, 0x82, 0x14, 0xb3, 0x2b, 0xbd, 0x97, 0xa4, 0xe2,
-  0xc1, 0xe0, 0x3e, 0x37, 0x25, 0xef, 0xdf, 0xa7, 0x73, 0xa3, 0xf8, 0xaf,
-  0x03, 0x5c, 0x36, 0x6f, 0x0e, 0xbf, 0xd7, 0x67, 0x11, 0x54, 0xe3, 0x90,
-  0xde, 0x17, 0x9a, 0xb1, 0x5b, 0x8f, 0x0a, 0x14, 0x55, 0xde, 0xca, 0x21,
-  0x89, 0x59, 0xac, 0x67, 0x98, 0x98, 0x62, 0xcc, 0x63, 0xa9, 0xa5, 0xc7,
-  0x26, 0x14, 0xb4, 0x74, 0x49, 0xf2, 0x12, 0x23, 0x9f, 0xf7, 0x22, 0x5f,
-  0x38, 0x3e, 0x9b, 0xd2, 0x9f, 0x08, 0x74, 0xe0, 0x55, 0xc7, 0xb3, 0x8c,
-  0xe9, 0x17, 0x84, 0x1f, 0xd1, 0x9f, 0x12, 0xf6, 0xaa, 0x7f, 0xa1, 0xa9,
-  0x7c, 0x09, 0xe8, 0xc8, 0x9e, 0x10, 0x2b, 0xfb, 0x03, 0xca, 0xf1, 0xc0,
-  0x8d, 0x5e, 0xdd, 0x71, 0x32, 0xfe, 0x03, 0xf3, 0x16, 0x19, 0x9b, 0xc8,
-  0x72, 0x5b, 0x5d, 0xd9, 0x85, 0x91, 0x54, 0xaf, 0xfa, 0x6a, 0xc9, 0x76,
-  0x6a, 0x57, 0x9d, 0x81, 0x47, 0x31, 0x63, 0xd2, 0x4a, 0xa4, 0x50, 0x9c,
-  0x6b, 0x9c, 0x05, 0xae, 0x25, 0xed, 0xae, 0xb4, 0x7e, 0x9c, 0xdd, 0x71,
-  0x95, 0xbb, 0xcb, 0x4b, 0xae, 0x5b, 0x7e, 0x3a, 0xf7, 0x10, 0x91, 0xcc,
-  0x55, 0xe5, 0xc1, 0x99, 0x95, 0xd6, 0xa0, 0xb9, 0x59, 0x01, 0x7b, 0x0b,
-  0x5c, 0x1c, 0x44, 0x7b, 0x58, 0x25, 0x92, 0x85, 0xd0, 0x9c, 0xb8, 0xd9,
-  0x20, 0x0e, 0xd6, 0xe2, 0xe4, 0xb4, 0x04, 0x2f, 0xdf, 0x90, 0x33, 0x94,
-  0xfb, 0xe3, 0x98, 0xb0, 0x59, 0x36, 0xb7, 0xb0, 0xe7, 0x65, 0x21, 0x80,
-  0x61, 0x56, 0xaf, 0x77, 0x4d, 0x6c, 0x86, 0xe9, 0x54, 0x11, 0x7a, 0x55,
-  0x70, 0xc6, 0x1b, 0xe1, 0x64, 0x26, 0xfd, 0xc5, 0xf5, 0xc2, 0x76, 0xda,
-  0xf8, 0x95, 0x30, 0x33, 0x0d, 0xb4, 0xc5, 0xf5, 0x76, 0xf6, 0xcd, 0xd9,
-  0x20, 0x3a, 0xe4, 0x96, 0x64, 0x4c, 0x7a, 0x0f, 0x41, 0x83, 0xa2, 0xef,
-  0x68, 0xb2, 0x57, 0xcc, 0xc0, 0x4f, 0x73, 0xfe, 0x0b, 0xad, 0xe9, 0x97,
-  0x62, 0x34, 0xc1, 0xb7, 0xd5, 0x5e, 0xa9, 0x21, 0x8b, 0x88, 0x3b, 0xc3,
-  0xef, 0x74, 0x54, 0x88, 0x3b, 0xba, 0x6d, 0xf2, 0x3d, 0x64, 0x79, 0x05,
-  0x5e, 0x41, 0xde, 0x8c, 0x88, 0x69, 0x82, 0xf5, 0x2d, 0x1e, 0xb0, 0x7f,
-  0x50, 0xb8, 0x81, 0xc9, 0xa1, 0xd7, 0x83, 0x34, 0x10, 0x90, 0x96, 0x92,
-  0x9f, 0x0b, 0xac, 0x91, 0x73, 0x95, 0x0b, 0xb0, 0x40, 0x9e, 0x68, 0x18,
-  0x52, 0xa6, 0x0e, 0x0c, 0xd1, 0x37, 0x8a, 0xa4, 0x76, 0x5c, 0x03, 0xf1,
-  0xca, 0xbe, 0x60, 0xa1, 0x98, 0xc7, 0x42, 0x4c, 0x88, 0xb6, 0x60, 0xb0,
-  0xf6, 0xff, 0x02, 0xb5, 0x19, 0x74, 0x16, 0xc0, 0x06, 0x02, 0x00,
-};
-#define BUF_SIZE 0x10000
-/* Decompress and send to stdout a gzip-compressed buffer */
-void hugehelp(void)
-{
-  unsigned char* buf;
-  int status,headerlen;
-  z_stream z;
-
-  /* Make sure no gzip options are set */
-  if (hugehelpgz[3] & 0xfe)
-    return;
-
-  headerlen = 10;
-  z.avail_in = (unsigned int)(sizeof(hugehelpgz) - headerlen);
-  z.next_in = (unsigned char *)hugehelpgz + headerlen;
-  z.zalloc = (alloc_func)Z_NULL;
-  z.zfree = (free_func)Z_NULL;
-  z.opaque = 0;
-
-  if (inflateInit2(&z, -MAX_WBITS) != Z_OK)
-    return;
-
-  buf = malloc(BUF_SIZE);
-  if (buf) {
-    while(1) {
-      z.avail_out = BUF_SIZE;
-      z.next_out = buf;
-      status = inflate(&z, Z_SYNC_FLUSH);
-      if (status == Z_OK || status == Z_STREAM_END) {
-        fwrite(buf, BUF_SIZE - z.avail_out, 1, stdout);
-        if (status == Z_STREAM_END)
-          break;
-      }
-      else
-        break;    /* Error */
-    }
-    free(buf);
-  }
-  inflateEnd(&z);
-}
-#endif /* USE_MANUAL */
-#endif /* HAVE_LIBZ */
diff --git a/src/other/curl/src/hugehelp.h b/src/other/curl/src/hugehelp.h
deleted file mode 100644
index b84be17..0000000
--- a/src/other/curl/src/hugehelp.h
+++ /dev/null
@@ -1,26 +0,0 @@
-#ifndef HEADER_CURL_HUGEHELP_H
-#define HEADER_CURL_HUGEHELP_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-void hugehelp(void);
-
-#endif /* HEADER_CURL_HUGEHELP_H */
diff --git a/src/other/curl/src/macos/MACINSTALL.TXT b/src/other/curl/src/macos/MACINSTALL.TXT
deleted file mode 100644
index 17da133..0000000
--- a/src/other/curl/src/macos/MACINSTALL.TXT
+++ /dev/null
@@ -1 +0,0 @@
-MACOS (not MACOS X)
===================
This is the first attempt at porting cURL to MacOS.
http, ftp, dict and telnet seems to work fine, other protocols and advanced 
features have not been all tested.

This port is heavily based on the GUSI library from Matthias Neeracher.
GUSI (Grand Unified Socket Interface) is a POSIX/Pthreads/Sockets library 
bringing some of the comforts of UNIX 98 to traditional MacOS.
The latest GUSI release can be downloaded from sourceforge 
at <http://sourceforge.net/projects/gusi/>

I have also write a few functions to help port UNIX applications to MacOS.
These functions are part of the GUSI Extra library that can be downloaded at
<http://perso.wanadoo.fr/ela/resources.html#gusiextra>

OpenSSL support is still experimental but I hope to deliver a version 
including SSL soon.

cURL for MacOS requires using the CodeWarrior compiler from Metrowerks.

First download GUSI, GUSI Extra and cURL. Access paths have been setup so that
GUSI, GUSI Extra and cURL directories should have the same parent directory.

Follow the instructions in GUSI Extra "readme.txt" mainly the ones related to
SIOUX and GUSI patches. If you do not apply these patches curl will not behave 
correctly.

In the 'curl/src/macos' directory, decode "curl.mcp.xml.sit.hqx" (This is a 
stuffit binhexed file)
>From the CodeWarrior IDE, import 'curl/src/macos/curl.xml', adjust the access 
paths if required. Then you should be able to build:
- the libcurl libraries for PPC and 68K.
- the curl application (also available for PPC and 68K) which is the command
  line version of cURL.

If the file "hugehelp.c" is missing rename "curl/src/hugehelp.c.cvs" to 
"hugehelp.c" and make sure its file type is 'TEXT'
\ No newline at end of file
diff --git a/src/other/curl/src/macos/curl.mcp.xml.sit.hqx b/src/other/curl/src/macos/curl.mcp.xml.sit.hqx
deleted file mode 100644
index 01650b9..0000000
--- a/src/other/curl/src/macos/curl.mcp.xml.sit.hqx
+++ /dev/null
@@ -1 +0,0 @@
-(This file must be converted with BinHex 4.0)
:%'0eFQ`ZE at 0`,RKYE#jcDA3!8dP8090*9#%!N!3F@`#3")EF8h4eCQC*G#!SBbN
a16Nh,6)`-$%J3 at aKC'4TEL"6HA0dC at ec,#"*EQ-Z,#"SG(4`1Lm[Gj!$,Q&XB at 4
ND at jcHA-ZBfpY,e0dG at CQ5A3[$3SD!!83!!!F@`#3!h)!!3#3!h)0,`fPT9*PFf9
bGQ9NTD8!TC!%!3!!2!!3Z$+T+EJbU5N!N!d-['F!"*UP!!!E'J#3"!m!Bh9bE#j
YBh!ZH'eX!!%`!P4&@&4$9dP&!3$rN!3!N!U!!*!*!CS!N!0K!*!%$`"#`G6)[bB
"`A,RBHAV3f at ZJUhAq'5,9!EjE+ at 0l9R9ECKR4kTRRh2Tr@@VMJ"@0,FaU4R&FMa
LBT)4LbVeb+BC%jqHQQI4[fPBGXP3'T4BeHdDm#H-`9$4'EUJEJ186cE)3X(8K-U
1KiJ4+5-HVi0DI[@5XBTQHb300K2--ZQmjPHEfdA)NhXMSJc'A+ at kemq4P`'SeCB
TD8QEYXMK8Kk4YZRkc1,G%m39"[dp8Zmc'[eKd,jpTVh555HQXd2`S9"KrGB`laE
(r+!)8r8DP'9kbYVQeY-aSjVQRA2k-`'2pqTr9EP6Z&H-%4eK4 at qp1Z(fDAd1&`A
H1IYG&T86QUHmp*%cdr$@G4fJrQ[9'8p)f"FPKmMQH6!kGBGeTA5Im1Pp*(P69-*
b8ld+I'KQIH`@CNfcIEGE&Zbb`3f,4IkZ#4Ve"2%R-a#MLYefeG"*FSMj,RD`aaE
DHh6$h8hF"r`SK84RjI*$KFfI&J3ZTk"r!J2$Nr#%K(IA803e(bAG645j1231E'$
C5$(Nr9Z2LZbqJPSH&9[h1(,+e"8!I$4XKrIeH6Y"")PlSQG2V4#-hZAbb2jBT25
(IUG-bFQ+0[bbfAlrpIDlpCradaS5G(*4d%[i*ISQ&5*3e$NVT#A+!Y3P%V*@HX9
6AGI"h1N`D at lj56PX8fB95NekUL&lk'15a*Z(38rC`Ii%$Y$E-A"!QfHG(Ed)Uhd
$e&Ckrm4jfVikK&j$D[%H)*lGX!FUK'&[Ck*%#lJUT9qiT13X#T4mK2)e"`%-JFe
)*)Sa9b+92'@Gb8N6d9E+kJ#VEA(c6+d`%E82FXcNKJYM'a,FD at Jf-Bhe0i+B2b'
4,T!!lq1IYLpFITlMfGiYPc0f$6,+MDV5TI9#X-SpJhU%)Fb8cp2EjaJ6Y-)DC*f
e'FGC5B'BdQV'H!@cS`XJID*- at m3!EFmNq*Ve20Pc0%pLrF4I`MH*iE!bAI`TJ6f
fIkZ$4)P"bTla%@'ZL"8pmd(L(R3XEa8KPe at FkheL$l%E1UF89BS&afbE`RN#pXJ
IUFD+"e#6RG6PSV[,G0B8l,Ipa2UU$4a at eA6jr+8Y,jkA1f9)d0!)UcD8pc1PCaS
$4e#PcC8bCKD'Ar-2Yr"-%XLQh at AF!9p6rj`FhAk@,R*F(2h!LB#ca(F'im+pi,L
Bf4LJV+icK26r2XR2)q9fr#K3PQ3PU)3V#9KqDVJL&pEb*`f)lAAq9FdpFU[$8N6
H43&)*h$BNrd0,c(!ICCA2Nh-i-b#,A9)Dq6b0QXcb4Cb)HG0c,H"E8"bQ0V82+K
(6bpND%LUfp6S(mNAhkhHBJTdab-6GA&I%2cqe4`NjKlSpKDmI6m!h0,h!`LC-2j
pCCGeT6#1Y62eS"hVZBAlj!YPi8DS1XV14b!3d)r5Z1C(*KTB'Df3!+cZN!#aJMU
am2DQK54epTl55RJcT[d$'Q5Me1@)lDI#N6S,Rb-#2%BpdZePl2&DZb9GH)-0FR`
3N!!5&mlD,Sp)"5ZC2f at E-bpUflPTaUfFJ4mZUlcp#`iNNNl#eBaVI1&m0!dP'F[
lT`UUYVZpKX&HPmBMVf"+'fS0*6pRfA+HccXLd0PXk",eKDrh`@MYIGqm(MRcMcP
UCb#C$m'[dhBrb438Hbh4+bDe&0"BSF1P+PPP4 at i`%iP22P9ibJHTcBXRN5!leUL
LkN%bVNT!r-qGI('DMAp8jc1e[eH9VBp1+DSk0V(-aMaJD(6FHQ+T'%'h8"e3LeY
*2ldFPa at Tem)!l+PBLXN#idPfFC0i-V-9Ed2X at hEhCC!!e2J+JDccb1@@XE`Ch+V
@!I1YF"Jf&8Kc*-A[5BT"cFJ3I8rP#Vb#NHYS+"%q25(pP2,aD$5KBV4"&PiN--c
f!&h'b,[%ZDE0!j&ZY32dZD3h)p'VEr2p at kU8c8kU,K'lh$A8,)`efrhRPmImIpI
YXG)SXje6-1Z$'lrlYNl#ECVlA2V[1h9Ej6X"Q-(LA%P65$-Ka92rah%dQmeF#KH
(%CE56(aEpX$BKjEHj(6mN!"l3iEi(2#eJXU2$BHK`913!#8U6q3!&-VfilRY05#
+CbP+)RJR0D'943,GI+$+0I0+'SNaNUMBZ[q4'kLpb*c)iGMP,'c'hFQc1B6@@J6
fXPPfGrc`"VaZDc5 at lD1*@AIr'1UT5C'NI$HV@!e*U##m)62YSNd$`'p*J1[@ZVM
5D'GRTkrhF6"1D9-DV'2YVR*$RV,I`+QmTjICq92DT-f+SL1lD&kp)C8`64h*aY*
AaJiFNQBGVU!$p6A1-m-e*1L9Iic!B!lQ,rZIkda"cB%TJ`U*0QP,'JVEhkFUFU&
(X5K4`r3eG5!0T0`KfYQ6-I-E-mUbb&1TIGYrd"X"EXL$@U!J)EB+%q8mMd,dFeJ
fLGJA5!N*4MXRSYfk8"8Vp9RY*4rXaR0dQ"3d!1R%CAQZRaPE1*MZ&DHdelBBaaA
(CTA1k$H!##ZMT'i$kB0JJPc9Y"5Em&M)DRM*#SIahMpP`2T[3F,Sr2JX9E@,U5L
10Sdd1Y(qAG#,G'hX$PibcN@!,X`qX*,'eM#B)#S*k1PLLI*REMpB"UmhHT-j!0&
TG)jc$@3BLI"em*jDf-B%qLmRR$,BQ1q)YN!*Q1ZNVH,YL#f$!C3-1#@Lch3a2+D
1S3dIq-1a[1C*E$*P+KPQG`THP&p'TQ$JJ-*$cK9F03c3F-aJGGic8i,3hd[fAQ(
X2Zr!KU)Rlj!!cer8P'[-pmXiEG4ETUADfi2e!+XIM"@%f)[i)Ikd3c!4jR!-4ar
q1T6*aH(Xp6eP)1"JRKV00!kq!BaZa-p*GA93QrN2e at l5U!bDcH)QqRTh9BT04b$
5Yml1!p$+q9ILbSc)r+'IfN,jLH0'9S)Z+ji4P'1GBK9MHCmrhF8AVC(Xmm"IHl#
QFBJ"3PC,19FjeHrVT3AV%qCIqAh1VJm(G,#b$Gh-aRS at jXNFTGXV8@2Eq&L#U%L
bf**dKC),j0c9*P0&V!XPRpA0'`jEQG1PDJ+Zdb`[PpRLe34(EcHI-CPm54(VIbE
2J3S%q'`"i`+,HjI3D&@MmVRC5ffqFSVlc[1eQP`@)$eHGrSTSGA@,fc&Yd%c#-[
c`N5)bZ%5b!`+QA-C%YBp[NpG`fMrU'VklXR-he$9jRbE5pBEJR2GeER[mN'1,[`
*5HDBYJFl#DN&kKi#mVHiL2@'H4Lb-%(#jb5!e"`RQeJJPfD*L#l$'($NZ1*53#4
P"Z19[8kVVN86PN0#LLPpq&`6QI1)ZR-h3b"[H'qCf&q%J1$CRiFD6AhC'iAdA!5
&9qaeYeVcr,1k'F2P%TlIY-mjXqRIMK+"1cJjQ1[ad0mTG53!aa[IQhlKS@)N-(a
pUJ$DahNB2HZ[!!fJ,p(-ACep at IGH86&XYZf#UZd`6HTD`e66bA,VjkUkQpeq)%J
hajLPmXp(SipKb*'k%k1f[e'0!D&Sh80Q"$BH&jiJb+SEbpTbQBkE2Qp,5[hLS at 1
1pUZ(*&)`(+D+RH8$Z0,+br4iTZJ2rZVP,UC!FP8[XHa#3+"aHC!!DMcpKpFDeIe
D%2`@$YX20DB&iIcJUS-R%eCPc4&MSE2f3qfA9IJK5I@,R4403FVlTR'JKYF'NBr
eC`jcaFi8Bl$9bp,K,TCp"cJ33fq at Z6`!DldUA,C8J[(2MaI2,p!`$5YT12Mei`2
kEK")F$6(J8GAiLMFaTiMqpE8KiZGrrk"D3Fi#8(4*fVmGK4GIb9Pb9N,%Qh2V&b
G`4BR#1B at ZrmSF@DdRU#!!i64LJXc9abPYpjfa+I*FSZ(&IkqF2, at 5XqlSfe(pJ5
@FBNcIm6`B$SBQ19pA0k8'bmMac8kRP[Q#l4qV9P3ibU$dmlE'[@*Dj1JGRJe4[Z
5M#`*0UYGpeTAFQV4)hc"Frq0Qe88T#fG+YrEd%GD5VaN8ee69)@GJLMaCTYZJ$h
Y`PmD[A8fB#4GP0TV(G5&@%i-DBILl&5HUC*fk#qhfiL-VdMPEK`@*G5aB'3 at 1DI
`Gmq!%mJhD-m-E at ei1#pf)H!Y)#hdYf5,Kre61KKr6-k+iC&[6#!,*8aC4V,dBda
*G-Ea,kcp`EQYmI)q(TSXdpT[&6NmmVela*&ZrNk#!a*Ek1U9e(A-C#MTiFrU*8#
GRIPS(IG0NC0 at D@C,ef!3$-V,f1MmeU$hMNGflfPjdA1l$m'dhT6mE$5k,&09Rk*
35$B&A8hc`Q,f[MCL'()&ZSp9"F43Y6Gp$d at GQ1*-IFE)fQ`!Gl+4bY!)4&ME!i1
S(e$jM(!B0$aPZUklAZC&R6Q$q(JE0b`QVJ8l2ELL'2i"i$m4hNQq3$S*@r,KlPV
@0aB$#$cij*NFIiA[#P'Hmk'D%mJh*T,r&0T!Sj!!I%QRN!"4J!C25i'JdhRAG4#
+iPZ,'C)pS[%JqMbf%5Z at HYTRpTjm`P9K-jj6!9j,5+E8[jbd,$Qb,rLerVlm'a"
EJ,NAIG%b0S`!KTfSi1,Hlm6&Tl86i at XA-SjmDCVVm2JR[U[ZUaabTc`"ZLc''*T
MA06`8"HaVhrb,12m0TYp8$49BH,J(bC-qMij8S3`iIJLm!&DUAX,NDT4j(cCZq`
Sjr#YLPbe+8AqUc at cBNPJ0I"'D`jmfZPUpmQhXQ'2G"i,XrX6PZh5*UdATE`QBJT
2*-NNJ'H03hDLq3NLl8V#BcH(SN53!&)l)I#5DJXfUc)pbK*kKMMdhlkIbRYcdU*
-kaTcDabVQGjqY*`D1++%&&hPjA0$mc46dA5Pa&+%QbaXIY(9*40iKhGhE(!d(Zj
TU%6JfY"(KHR"&-pfT-D8AB"c'iDKcqH'9"0#TcflZJ5YE#(YDU4QTYFS*`lY2+'
HUH+"N6hThTfY$V%@bmP3RrZVqj*lIM!qQ&'(*R8#YUX0ViVa-8c1cLi5mSh423Y
c"ZTZ&UCCXZeRVUh#+(cU-p`4R%4,2aCl at ZeXXYH'f1j5r6'Fdp6k&d9CITqHK#@
jRIp9LG#d$jCXIJ9ZTRb1X1r#JCA&JjmSEMUfVbL!D[6I$5#JScE6Na9lmKfF0EH
V"15k'@bDdk%miP"ThZ at A0I0@V`65l5S9deFHd#$hUXR5GDT"DMik$YJL+GmY#CB
f%KC+a"&%)ihiBfR+0I#@&ENYGGfGh1ZaX"RlLlZ$l-9X9H*LaaQqEZ6LZ'rpIM*
GCa`prJ+&V"j-rb!(B[h8XVQbRfQhYc,GJ(J65aIbPCVha(mX8UAS2e@%VYZYMF(
$UMM#pf[eK66(Dj1)d*GNK+[I"ZK52ijfp01Pj098q,AA1GUbRR,5Z)jBdJMD1LZ
Y8$2iKCVB!R2!PiF*N!$Ycb2#1Nh6&f-fSDEc2YH1jp9GM@!XI'*ilG-Qc4qT0fe
dIZdlC9qP)X!!&@4T9A$EaNq-AZKQ6%R$$a54DScX[R*,M*!!k)K4LrB9Ma0[+II
jcUfa44M*R18DLAMSp36ELf),#2#qPidNRI[QVFj%D95q)Xa`RS6EjCd+5BN6MeV
%!,Q1a$r!B1`Bp3FM8IpLD)S+$G#+BR1)d#!hB9'5GRjMXFLAC-06*FkSLrBpG6X
,q$JVU-a-"TBp at F)+T`$8S[Dj!EIek6Ei!CIBUAGZpERj!eKb9(,X'RqjiBH5bbP
-M*hrM9L`Xhl"GqM#U-f9*jXA"IQeZ[b#&`DqGehATT!!(S$6dqLGCl at A-NeefUB
CPHNb!6cQp-!L[%Qal$RBVE9ZN!#qrF#!'d&V at ceTH8bbU3`DV0!06TamU$%('FZ
l0N`a41a+-&6)Jcjl2XS1jHBp[HE"-PTaj6*#rZXdIX8%X8XRqJXc(FN5iG%bELS
+b,60YmQf"J65!j!!D%+B#Ik0&-B3B@*GM[jJlJBU$RkG93B`&-#!h+HerJ8PT,@
b4!M[IeX(5fA%bFZLUp at K6(mkd at BTHhBcDkGaJh0`$CA2N!#3!%G1-Ne!SYh%drH
F,BQM`')#DqM&#U(*Y-1lG45[6 at GDN!#,bMKZRMG8"D$T2Kc192P!mSK at 0AC8#3E
D5,p-B+X2ZcmCQAIc,2AEdK5!+1N5*`cl9qJ at N!")h+G,fYaRJrRN`dd1NQ"E$VL
ki6&AIilJU6[Z6pR5B*U9Rm1S[dr`a6mp3Fd`ArhVJQ!TR9T#ZhI+MpjYcFC*Tpf
JP)[hkrKT5D`IVBCl"QA0TS2!TdYN8%E#epb&4PA9Q-hQ50A5SA at GjUa`kE-X-HM
+d28*r*JYMjd!ICRc,(ZrmcU5e(4KNd[IAR$U[Tm*rdK"&(P&HE,U5c&(#0[`'-D
5f6 at Qdr3dIB[VAlQbBHEiXrVYae)ZjkP@,'U[dE)NKfe95B9"Jk0'I$A8b$VC&CI
hj0TB-$9m0"N8$CIaHe"M2 at 3-GQ$(12rHGfTrFM[EP9BMH3B`fcFE2PM'VNZ+fSm
R[kIC&VabE at DX[9ZChF-R3*X*[Gmakl`@[!XBM"Iq3#d4e2`)6dE"fe2&5r'*3)D
fB!kY""qf-#Xh!5DUNqDYG(&`URfpc*RAAS-#r+D@!A[j8r[eAi!S-rimJJ'!JGb
%*BZ5$!f,GjJjLa5D")q,RL4XR[Ppi(r8RNiP$2e at ALL+bU&lUIljbU5MXf56RSK
#8KbRX8C at f&kmYX-V,K+TmASNfml4&HPfSV$Y(&Y&J8ER)M[,N!"VmB&c'$a2h'h
c`MAp!+rpRY(4Qe8 at Z#el[0+YYH#ZYd3EMkbHRechUKDqX5k8m)cfAKj'mJ*[h6'
6)pLEDAqcBBi5[CE[rpIkcC%LIUe3f4 at 8TFUBfZ9B6FYY-F)N[fBV'h3@(m&iB,a
)d1HkSQUS"C91!eHTUrHa9J[FLDk'K8-H9XmKc$L*'V5H'-5[*p)TC'El!$b2J"k
T0Ul!A)(4ZlVY!Te#X5V)+@[J"r1e-BdkRFe`N!#r0DcM"VUBekGkJe,*5cpX0PS
T(d3588LNcfA!1-TB8GQ`K0eIIl0N96)Nd!Rb%&4LIRETS'P3+jA+Bi9SY#qCmGI
5Ai,[V-NK#La5439PX&LDc8hTl$aLj359-bqmDJZ)GiaX1k1[k)bMZ2r(U*c[Gej
%D)m*@@+eGqbF249V)fRpkp)6e0JrHiB*[K8*9fGR-AU+jTcpi#f0+U0+L at Yc'U2
dc04kb961J1JdC5PLEV30PJSYZXJ#jfdlb$,0UrY"jX[RkUY8JLY)-L`Gj6ieH'6
%C*LCT`)3ZS@[X2!%!-SJKp1jEL2Cml64,qZhPa)'AidDL1Ybp at 6`iI80l+RfHpd
Y1XF"[0[r!$B*PqDdHB95)l8[1I%*Nr,#e&Y3CCiNFC[8dj9TDKdh)Q6,,fCk(S#
pQbBT0TY at PD(I at lDhBV%Pk9GrD%IY,YpIM-V9cE(UBbG2&Xck6c5I1BcMA-YcJFA
0,Q"*[F1C16*jHTMMPV0 at 6HYDU5V0`dPbD&X+MPSlR&+hbi36I8(5pBhrN!$Nj*a
Z#!akZ&EGD+M,95XdGQGpfB`RY9BjCa9"Jp0EhH,EFY$Xp0#fq5DI#KVJBj,10hZ
`Bq#LBCm2%H at E,+X9!b92Xb3iDFh4MVPIpfIVl"rkr%Eie%$X)MHS6PM!XTB'1$H
kR%(U%"b&pq)aqe3a9TkCmFDMGk2qq%"HEh*XqVLk9-A,*pAd(dpZSG2Q#&qCJP2
X5cRMX'hX$'L5*+0!i`51"Yaj''JmqAJA#qUqe!P,MR-!NDje18N(qV3 at 5C1&B`D
IqHRl9X2i2T6ZJH'e!jK,MY#3!+TSYiGI*AaPcjIbGE,pQ5[0Bk@%Ahrf#aQ$NkU
d!GNU at XiVQ!T6'EHGZC4@(Qf-icF'*X1,1elXp1L)jmi`Y"F,'Fll%A@'$Mp1IT%
4pZjYGj%b,8rhMFlIh1-NN!#MD$'mrpeRD+18mX9YJ+9kiQE-B&U''*jE1*6raUl
$40TV"8Aj2`cF3YHakZ6%05+TZ8&#e4HlCpJjL2$)l&2RNVNKBEAbL2UqijV4C,4
!9bq*`lQDp-&$iV8-!)S2)(el3Gp5lfekXY%TkcB%-PkqfD`DRD,R`APCTf%SkYi
YkMk9pc01i''-FlHj6bF6QU%PJ+- at 4DbAp91&Q,4`0mc1'1(,P6j)j1fMGbAf%BG
,M8&e!2R'Uk,%Rcm9JkL53'"eTe at IXaCCY!0!33RNL)DY5CYmjN%VhK,U8GXFG+[
8jmX*Z2'(9BE)F'c"[r"4(UF4E*Qa[Nk-j&"MM!B6UZ*0YpL'!+9)G*&k,&2l@&&
AbpQL&q)IrbB+ED(J8lRM"*Ii6%VUADiNE'dVU'q%[LHeia*6Y%89acHSZLZH(mq
I[jRmr6$mVc-RTPb8+)ZMjI at hNG(F0VT&bU@(Hq1!F"2j881[Z$Nm5SC at 1$41qHC
Z*B%dX0kZFfcHDPjCH`GJrbU5DkEdIaTUI+NaK"PdSmI[LPTLJ9IJ8KA#kV"2Uia
KdERdQFN93d"lqUqXj at Mr+*qi6&"UECZ-#,*iEC&C`bZqlMfYpM(epQ)*%&C![LJ
hPR8L[G0#*-Pj,5P*C$cF+BTi2&i!bX+hlrFri`8+M'SNkXcMM(Q3!%%A2MlD*28
VCqT[JjMIq0PTUq0qPSAf4a0$XLC)-48j(c*)V1K5Pc(m%SGL+($j+p8S%dQ3!&Z
lQ%+#S[eP8p$5$[$Vq)R)6HaCkZT5CT&*Rb,2I'PA"EVrJTPJKBE at Xi$J%rQAiUE
$fqc2ald8l1R&r%FZ(Gq*VR(@l'M!MiUBId*-Kd&S!pP"YBNkYP[B[Z%YlT5SmY!
2rJF43CSX-e at Gp1FDa-d'!JQ at al9raL0r$[fkG0#D5VmHClHGEqhD`fmVA[jC+rM
(&qL at f"N"(1DT-#2bD)j)N3!`Tr&$Rep"LN at aR!Rl(5lcE1UYTUmcVKrX(f1)40K
Y4RQl"CKXF9C08YC(*$aR5a at QalMZGITR05QRZ"+h`52GmMN4pj6iXh*6MZFb8ke
arcTIYkJ%@!F4TNFBfCKU#I3SZViZSKC0e*!!"cFIrhEC%XbSMX6jaS5&9#h@!`d
[Y&`V)j*NiURXkhF0DP5e2dAG*Z,9N!$*D[l1$KF5SNi[b"J at Z2Di),1E93CDGmd
Gb1)8,k at iE`R'kNHkLYb%dGd34Y,C013(''CiPAT2BRL[dYPHEY6ZE'`i0f-mp)a
X&[HT"f3K+8rfE`T!,%MI)YZKJqZ#ZDTfGRYe'+5[Ke+2E%ecBS3pPC!!rU*,drD
&884$ZmbC%Y-Iea(IUfjblN-*cX2hB`Mr+aG#AhMaaJfKPbd5P[+H$9A'(jGqcQ-
2pAc0'J[b`hF4+N1dYV[8#-aHm&FiqHbK`R8PpZ*be,`-[a"P"q1lcb$Z8I%0RA2
X8bcClk*cpGU1Q5c6VI%#`63X"PYE,*Hi3bF21r2JTij#%Q3J'cij at e+-99)rZqB
$DdVZbrG[S8$eBj!!@$Z3!%C,DD1H[Dr+iFXKGGD&**8$2mqBZG+M+&`P%``#e8Y
13020cm&rj9ND(4q*S+D%eYGi'X(IT1lA+fV1,T!!6(fcKe2S6"!X-C-F-TqlSTB
BJTb$,U'!bY8!!!:
\ No newline at end of file
diff --git a/src/other/curl/src/macos/src/curl_GUSIConfig.cpp b/src/other/curl/src/macos/src/curl_GUSIConfig.cpp
deleted file mode 100644
index fc9378a..0000000
--- a/src/other/curl/src/macos/src/curl_GUSIConfig.cpp
+++ /dev/null
@@ -1 +0,0 @@
-/**************** BEGIN GUSI CONFIGURATION ****************************
 *
 * GUSI Configuration section generated by GUSI Configurator
 * last modified: Mon Oct 29 15:41:51 2001
 *
 * This section will be overwritten by the next run of Configurator.
 */

#define GUSI_SOURCE
#include <GUSIConfig.h>
#include <sys/cdefs.h>

/* Declarations of Socket Factories */

__BEGIN_DECLS
void GUSIwithInetSockets();
void GUSIwithLocalSockets();
void GUSIwithMTInetSockets();
void GUSIwithMTTcpSockets();
void GUSIwithMTUdpSockets();
void GUSIwithOTInetSockets();
void GUSIwithOTTcpSockets();
void GUSIwithOTUdpSockets();
void GUSIwithPPCSockets();
void GUSISetupFactories();
__END_DECLS

/* Configure Socket Factories */

void GUSISetupFactories()
{
#ifdef GUSISetupFactories_BeginHook
	GUSISetupFactories_BeginHook
#endif
	GUSIwithInetSockets();
#ifdef GUSISetupFactories_EndHook
	GUSISetupFactories_EndHook
#endif
}

/* Declarations of File Devices */

__BEGIN_DECLS
void GUSIwithNullSockets();
void GUSISetupDevices();
__END_DECLS

/* Configure File Devices */

void GUSISetupDevices()
{
#ifdef GUSISetupDevices_BeginHook
	GUSISetupDevices_BeginHook
#endif
	GUSIwithNullSockets();
#ifdef GUSISetupDevices_EndHook
	GUSISetupDevices_EndHook
#endif
}

#ifndef __cplusplus
#error GUSISetupConfig() needs to be written in C++
#endif

GUSIConfiguration::FileSuffix	sSuffices[] = {
	"", '????', '????'
};

extern "C" void GUSISetupConfig()
{
	GUSIConfiguration * config =
		GUSIConfiguration::CreateInstance(GUSIConfiguration::kNoResource);

	config->ConfigureDefaultTypeCreator('TEXT', 'CWIE');
	config->ConfigureSuffices(
		sizeof(sSuffices)/sizeof(GUSIConfiguration::FileSuffix)-1, sSuffices);
}

/**************** END GUSI CONFIGURATION *************************/
\ No newline at end of file
diff --git a/src/other/curl/src/macos/src/macos_main.cpp b/src/other/curl/src/macos/src/macos_main.cpp
deleted file mode 100644
index cf3075f..0000000
--- a/src/other/curl/src/macos/src/macos_main.cpp
+++ /dev/null
@@ -1 +0,0 @@
-/* =========================================================================
	Copyright (C) 2001 Eric Lavigne

	Permission is granted to anyone to use this software for any purpose on any
	computer system, and to redistribute it freely, subject to the following 
	restrictions:
	- The author is not responsible for the consequences of use of this 
	software, no matter how awful, even if they arise from defects in it.
	- The origin of this software must not be misrepresented, either by 
	explicit claim or by omission.
	- You are allowed to distributed modified copies of the software, in source 
	and binary form, provided they are marked plainly as altered versions, and
	are not misrepresented as being the original software.
   ========================================================================= */

#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <Memory.h>
#include <GUSICommandLine.h>
#include <stdlib.h>

/* ========================================================================= */

DECLARE_MAIN(curl)

REGISTER_MAIN_START
REGISTER_MAIN(curl)
REGISTER_MAIN_END

/* ========================================================================= */

int main()
{
	::MaxApplZone();
	for (int i = 1; i <= 10; i++)
		::MoreMasters();

	(void) exec_commands();
	
	return 0;
}


\ No newline at end of file
diff --git a/src/other/curl/src/main.c b/src/other/curl/src/main.c
deleted file mode 100644
index 6e3ef3d..0000000
--- a/src/other/curl/src/main.c
+++ /dev/null
@@ -1,5830 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include "setup.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <stdarg.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <ctype.h>
-#include <errno.h>
-
-#if defined(MSDOS) || defined(WIN32)
-#  if defined(HAVE_LIBGEN_H) && defined(HAVE_BASENAME)
-#    include <libgen.h>
-#  endif
-#endif
-
-#include <curl/curl.h>
-
-#include "urlglob.h"
-#include "writeout.h"
-#include "getpass.h"
-#include "homedir.h"
-#include "curlutil.h"
-#ifdef USE_MANUAL
-#include "hugehelp.h"
-#endif
-#ifdef USE_ENVIRONMENT
-#include "writeenv.h"
-#endif
-#include "rawstr.h"
-
-#define CURLseparator   "--_curl_--"
-
-#ifdef NETWARE
-#ifdef __NOVELL_LIBC__
-#include <screen.h>
-#else
-#include <nwconio.h>
-#define mkdir mkdir_510
-#endif
-#endif
-
-#include "version.h"
-
-#ifdef HAVE_IO_H /* typical win32 habit */
-#include <io.h>
-#endif
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_FCNTL_H
-#include <fcntl.h>
-#endif
-
-#ifdef HAVE_UTIME_H
-#include <utime.h>
-#else
-#ifdef HAVE_SYS_UTIME_H
-#include <sys/utime.h>
-#endif
-
-#endif /* HAVE_UTIME_H */
-
-#ifdef HAVE_LIMITS_H
-#include <limits.h>
-#endif
-
-#ifdef HAVE_SYS_POLL_H
-#include <sys/poll.h>
-#elif defined(HAVE_POLL_H)
-#include <poll.h>
-#endif
-
-#ifdef HAVE_LOCALE_H
-#include <locale.h> /* for setlocale() */
-#endif
-
-#define ENABLE_CURLX_PRINTF
-/* make the curlx header define all printf() functions to use the curlx_*
-   versions instead */
-#include "curlx.h" /* header from the libcurl directory */
-
-#if defined(CURL_DOES_CONVERSIONS) && defined(HAVE_ICONV)
-#include <iconv.h>
-/* set default codesets for iconv */
-#ifndef CURL_ICONV_CODESET_OF_NETWORK
-#define CURL_ICONV_CODESET_OF_NETWORK "ISO8859-1"
-#endif
-#endif /* CURL_DOES_CONVERSIONS && HAVE_ICONV */
-
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h> /* for IPPROTO_TCP */
-#endif
-#ifdef HAVE_NETINET_TCP_H
-#include <netinet/tcp.h> /* for TCP_KEEPIDLE, TCP_KEEPINTVL */
-#endif
-
-#include "os-specific.h"
-
-/* The last #include file should be: */
-#ifdef CURLDEBUG
-#ifndef CURLTOOLDEBUG
-#define MEMDEBUG_NODEFINES
-#endif
-/* This is low-level hard-hacking memory leak tracking and similar. Using
-   the library level code from this client-side is ugly, but we do this
-   anyway for convenience. */
-#include "memdebug.h"
-#endif
-
-#ifdef __VMS
-static int vms_show = 0;
-#endif
-
-#if defined(NETWARE)
-#define PRINT_LINES_PAUSE 23
-#endif
-
-#if defined(__SYMBIAN32__)
-#define PRINT_LINES_PAUSE 16
-#define pressanykey() getchar()
-#endif
-
-#define DEFAULT_MAXREDIRS  50L
-
-#if defined(O_BINARY) && defined(HAVE_SETMODE)
-  #ifdef __HIGHC__
-    #define SET_BINMODE(file) _setmode(file,O_BINARY)
-  #else
-    #define SET_BINMODE(file) setmode(fileno(file),O_BINARY)
-  #endif
-#else
-  #define SET_BINMODE(file)   ((void)0)
-#endif
-
-#ifndef O_BINARY
-/* since O_BINARY as used in bitmasks, setting it to zero makes it usable in
-   source code but yet it doesn't ruin anything */
-#define O_BINARY 0
-#endif
-
-#if defined(MSDOS) || defined(WIN32)
-
-static const char *msdosify(const char *);
-static char *rename_if_dos_device_name(char *);
-static char *sanitize_dos_name(char *);
-
-#ifndef S_ISCHR
-#  ifdef S_IFCHR
-#    define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR)
-#  else
-#    define S_ISCHR(m) (0) /* cannot tell if file is a device */
-#  endif
-#endif
-
-#ifdef WIN32
-#  define _use_lfn(f) (1)  /* long file names always available */
-#elif !defined(__DJGPP__) || (__DJGPP__ < 2)  /* DJGPP 2.0 has _use_lfn() */
-#  define _use_lfn(f) (0)  /* long file names never available */
-#endif
-
-#endif /* MSDOS || WIN32 */
-
-#ifdef MSDOS
-#define USE_WATT32
-#include <dos.h>
-
-#ifdef DJGPP
-/* we want to glob our own argv[] */
-char **__crt0_glob_function (char *arg)
-{
-  (void)arg;
-  return (char**)0;
-}
-#endif /* __DJGPP__ */
-#endif /* MSDOS */
-
-#ifndef STDIN_FILENO
-#define STDIN_FILENO  fileno(stdin)
-#endif
-
-#ifndef STDOUT_FILENO
-#define STDOUT_FILENO  fileno(stdout)
-#endif
-
-#ifndef STDERR_FILENO
-#define STDERR_FILENO  fileno(stderr)
-#endif
-
-#define CURL_PROGRESS_STATS 0 /* default progress display */
-#define CURL_PROGRESS_BAR   1
-
-typedef enum {
-  HTTPREQ_UNSPEC,
-  HTTPREQ_GET,
-  HTTPREQ_HEAD,
-  HTTPREQ_POST,
-  HTTPREQ_SIMPLEPOST,
-  HTTPREQ_CUSTOM,
-  HTTPREQ_LAST
-} HttpReq;
-
-/*
- * Large file support (>2Gb) using WIN32 functions.
- */
-
-#ifdef USE_WIN32_LARGE_FILES
-#  include <io.h>
-#  include <sys/types.h>
-#  include <sys/stat.h>
-#  define lseek(fdes,offset,whence)  _lseeki64(fdes, offset, whence)
-#  define fstat(fdes,stp)            _fstati64(fdes, stp)
-#  define stat(fname,stp)            _stati64(fname, stp)
-#  define struct_stat                struct _stati64
-#  define LSEEK_ERROR                (__int64)-1
-#endif
-
-/*
- * Small file support (<2Gb) using WIN32 functions.
- */
-
-#ifdef USE_WIN32_SMALL_FILES
-#  include <io.h>
-#  include <sys/types.h>
-#  include <sys/stat.h>
-#  define lseek(fdes,offset,whence)  _lseek(fdes, (long)offset, whence)
-#  define fstat(fdes,stp)            _fstat(fdes, stp)
-#  define stat(fname,stp)            _stat(fname, stp)
-#  define struct_stat                struct _stat
-#  define LSEEK_ERROR                (long)-1
-#endif
-
-#ifndef struct_stat
-#  define struct_stat struct stat
-#endif
-
-#ifndef LSEEK_ERROR
-#  define LSEEK_ERROR (off_t)-1
-#endif
-
-#ifdef WIN32
-#  include <direct.h>
-#  define mkdir(x,y) (mkdir)(x)
-#  undef  PATH_MAX
-#  define PATH_MAX MAX_PATH
-#  ifndef __POCC__
-#    define F_OK 0
-#  endif
-#endif
-
-/*
- * Default sizeof(off_t) in case it hasn't been defined in config file.
- */
-
-#ifndef SIZEOF_OFF_T
-#  if defined(__VMS) && !defined(__VAX)
-#    if defined(_LARGEFILE)
-#      define SIZEOF_OFF_T 8
-#    endif
-#  elif defined(__OS400__) && defined(__ILEC400__)
-#    if defined(_LARGE_FILES)
-#      define SIZEOF_OFF_T 8
-#    endif
-#  elif defined(__MVS__) && defined(__IBMC__)
-#    if defined(_LP64) || defined(_LARGE_FILES)
-#      define SIZEOF_OFF_T 8
-#    endif
-#  elif defined(__370__) && defined(__IBMC__)
-#    if defined(_LP64) || defined(_LARGE_FILES)
-#      define SIZEOF_OFF_T 8
-#    endif
-#  elif defined(TPF)
-#    define SIZEOF_OFF_T 8
-#  endif
-#  ifndef SIZEOF_OFF_T
-#    define SIZEOF_OFF_T 4
-#  endif
-#endif
-
-#ifdef CURL_DOES_CONVERSIONS
-#ifdef HAVE_ICONV
-iconv_t inbound_cd  = (iconv_t)-1;
-iconv_t outbound_cd = (iconv_t)-1;
-
-/*
- * convert_to_network() is an internal function to convert
- * from the host encoding to ASCII on non-ASCII platforms.
- */
-static CURLcode
-convert_to_network(char *buffer, size_t length)
-{
-  CURLcode rc;
-
-  /* translate from the host encoding to the network encoding */
-  char *input_ptr, *output_ptr;
-  size_t in_bytes, out_bytes;
-
-  /* open an iconv conversion descriptor if necessary */
-  if(outbound_cd == (iconv_t)-1) {
-    outbound_cd = iconv_open(CURL_ICONV_CODESET_OF_NETWORK,
-                             CURL_ICONV_CODESET_OF_HOST);
-    if(outbound_cd == (iconv_t)-1) {
-      return CURLE_CONV_FAILED;
-    }
-  }
-  /* call iconv */
-  input_ptr = output_ptr = buffer;
-  in_bytes = out_bytes = length;
-  rc = iconv(outbound_cd, &input_ptr,  &in_bytes,
-                          &output_ptr, &out_bytes);
-  if ((rc == -1) || (in_bytes != 0)) {
-    return CURLE_CONV_FAILED;
-  }
-
-  return CURLE_OK;
-}
-
-/*
- * convert_from_network() is an internal function
- * for performing ASCII conversions on non-ASCII platforms.
- */
-static CURLcode
-convert_from_network(char *buffer, size_t length)
-{
-  CURLcode rc;
-
-  /* translate from the network encoding to the host encoding */
-  char *input_ptr, *output_ptr;
-  size_t in_bytes, out_bytes;
-
-  /* open an iconv conversion descriptor if necessary */
-  if(inbound_cd == (iconv_t)-1) {
-    inbound_cd = iconv_open(CURL_ICONV_CODESET_OF_HOST,
-                            CURL_ICONV_CODESET_OF_NETWORK);
-    if(inbound_cd == (iconv_t)-1) {
-      return CURLE_CONV_FAILED;
-    }
-  }
-  /* call iconv */
-  input_ptr = output_ptr = buffer;
-  in_bytes = out_bytes = length;
-  rc = iconv(inbound_cd, &input_ptr,  &in_bytes,
-                         &output_ptr, &out_bytes);
-  if ((rc == -1) || (in_bytes != 0)) {
-    return CURLE_CONV_FAILED;
-  }
-
-  return CURLE_OK;
-}
-#endif /* HAVE_ICONV */
-
-static
-char convert_char(curl_infotype infotype, char this_char)
-{
-/* determine how this specific character should be displayed */
-  switch(infotype) {
-  case CURLINFO_DATA_IN:
-  case CURLINFO_DATA_OUT:
-  case CURLINFO_SSL_DATA_IN:
-  case CURLINFO_SSL_DATA_OUT:
-    /* data, treat as ASCII */
-    if ((this_char >= 0x20) && (this_char < 0x7f)) {
-      /* printable ASCII hex value: convert to host encoding */
-      convert_from_network(&this_char, 1);
-    }
-    else {
-      /* non-printable ASCII, use a replacement character */
-      return UNPRINTABLE_CHAR;
-    }
-    /* fall through to default */
-  default:
-    /* treat as host encoding */
-    if (ISPRINT(this_char)
-        &&  (this_char != '\t')
-        &&  (this_char != '\r')
-        &&  (this_char != '\n')) {
-      /* printable characters excluding tabs and line end characters */
-      return this_char;
-    }
-    break;
-  }
-  /* non-printable, use a replacement character  */
-  return UNPRINTABLE_CHAR;
-}
-#endif /* CURL_DOES_CONVERSIONS */
-
-#ifdef WIN32
-
-#ifdef __BORLANDC__
-   /* 64-bit lseek-like function unavailable */
-#  define _lseeki64(hnd,ofs,whence) lseek(hnd,ofs,whence)
-#endif
-
-#ifdef __POCC__
-#  if (__POCC__ < 450)
-     /* 64-bit lseek-like function unavailable */
-#    define _lseeki64(hnd,ofs,whence) _lseek(hnd,ofs,whence)
-#  else
-#    define _lseeki64(hnd,ofs,whence) _lseek64(hnd,ofs,whence)
-#  endif
-#endif
-
-#ifndef HAVE_FTRUNCATE
-#define HAVE_FTRUNCATE 1
-#endif
-
-/*
- * Truncate a file handle at a 64-bit position 'where'.
- */
-
-static int ftruncate64 (int fd, curl_off_t where)
-{
-  if(_lseeki64(fd, where, SEEK_SET) < 0)
-    return -1;
-
-  if(!SetEndOfFile((HANDLE)_get_osfhandle(fd)))
-    return -1;
-
-  return 0;
-}
-#define ftruncate(fd,where) ftruncate64(fd,where)
-
-#endif /* WIN32 */
-
-typedef enum {
-  TRACE_NONE,  /* no trace/verbose output at all! */
-  TRACE_BIN,   /* tcpdump inspired look */
-  TRACE_ASCII, /* like *BIN but without the hex output */
-  TRACE_PLAIN  /* -v/--verbose type */
-} trace;
-
-struct OutStruct {
-  char *filename;
-  FILE *stream;
-  struct Configurable *config;
-  curl_off_t bytes; /* amount written so far */
-  curl_off_t init;  /* original size (non-zero when appending) */
-};
-
-struct Configurable {
-  CURL *easy; /* once we have one, we keep it here */
-  bool remote_time;
-  char *random_file;
-  char *egd_file;
-  char *useragent;
-  char *cookie;     /* single line with specified cookies */
-  char *cookiejar;  /* write to this file */
-  char *cookiefile; /* read from this file */
-  bool cookiesession; /* new session? */
-  bool encoding;    /* Accept-Encoding please */
-  long authtype;    /* auth bitmask */
-  bool use_resume;
-  bool resume_from_current;
-  bool disable_epsv;
-  bool disable_eprt;
-  bool ftp_pret;
-  curl_off_t resume_from;
-  char *postfields;
-  curl_off_t postfieldsize;
-  char *referer;
-  long timeout;
-  long connecttimeout;
-  long maxredirs;
-  curl_off_t max_filesize;
-  char *headerfile;
-  char *ftpport;
-  char *iface;
-  int localport;
-  int localportrange;
-  unsigned short porttouse;
-  char *range;
-  long low_speed_limit;
-  long low_speed_time;
-  bool showerror;
-  char *userpwd;
-  char *proxyuserpwd;
-  char *proxy;
-  int proxyver;     /* set to CURLPROXY_HTTP* define */
-  char *noproxy;
-  char *mail_from;
-  struct curl_slist *mail_rcpt;
-  bool proxytunnel;
-  bool ftp_append;         /* APPE on ftp */
-  bool mute;               /* shutup */
-  bool use_ascii;          /* select ascii or text transfer */
-  bool autoreferer;        /* automatically set referer */
-  bool failonerror;        /* fail on (HTTP) errors */
-  bool include_headers;    /* send headers to data output */
-  bool no_body;            /* don't get the body */
-  bool dirlistonly;        /* only get the FTP dir list */
-  bool followlocation;     /* follow http redirects */
-  bool unrestricted_auth;  /* Continue to send authentication (user+password)
-                              when following ocations, even when hostname
-                              changed */
-  bool netrc_opt;
-  bool netrc;
-  bool noprogress;
-  bool isatty;             /* updated internally only if the output is a tty */
-  struct getout *url_list; /* point to the first node */
-  struct getout *url_last; /* point to the last/current node */
-  struct getout *url_get;  /* point to the node to fill in URL */
-  struct getout *url_out;  /* point to the node to fill in outfile */
-  char *cipher_list;
-  char *cert;
-  char *cert_type;
-  char *cacert;
-  char *capath;
-  char *crlfile;
-  char *key;
-  char *key_type;
-  char *key_passwd;
-  char *pubkey;
-  char *hostpubmd5;
-  char *engine;
-  bool list_engines;
-  bool crlf;
-  char *customrequest;
-  char *krblevel;
-  char *trace_dump; /* file to dump the network trace to, or NULL */
-  FILE *trace_stream;
-  bool trace_fopened;
-  trace tracetype;
-  bool tracetime; /* include timestamp? */
-  long httpversion;
-  int progressmode;
-  bool nobuffer;
-  bool readbusy; /* set when reading input returns EAGAIN */
-  bool globoff;
-  bool use_httpget;
-  bool insecure_ok; /* set TRUE to allow insecure SSL connects */
-  bool create_dirs;
-  bool ftp_create_dirs;
-  bool ftp_skip_ip;
-  bool proxynegotiate;
-  bool proxyntlm;
-  bool proxydigest;
-  bool proxybasic;
-  bool proxyanyauth;
-  char *writeout; /* %-styled format string to output */
-  bool writeenv; /* write results to environment, if available */
-  FILE *errors; /* if stderr redirect is requested */
-  bool errors_fopened;
-  struct curl_slist *quote;
-  struct curl_slist *postquote;
-  struct curl_slist *prequote;
-  long ssl_version;
-  long ip_version;
-  curl_TimeCond timecond;
-  time_t condtime;
-  struct curl_slist *headers;
-  struct curl_httppost *httppost;
-  struct curl_httppost *last_post;
-  struct curl_slist *telnet_options;
-  HttpReq httpreq;
-
-  /* for bandwidth limiting features: */
-  curl_off_t sendpersecond; /* send to peer */
-  curl_off_t recvpersecond; /* receive from peer */
-
-  bool ftp_ssl;
-  bool ftp_ssl_reqd;
-  bool ftp_ssl_control;
-  bool ftp_ssl_ccc;
-  int ftp_ssl_ccc_mode;
-
-  char *socksproxy; /* set to server string */
-  int socksver;     /* set to CURLPROXY_SOCKS* define */
-  char *socks5_gssapi_service;  /* set service name for gssapi principal
-                                 * default rcmd */
-  int socks5_gssapi_nec ;  /* The NEC reference server does not protect
-                            * the encryption type exchange */
-
-  bool tcp_nodelay;
-  long req_retry;   /* number of retries */
-  long retry_delay; /* delay between retries (in seconds) */
-  long retry_maxtime; /* maximum time to keep retrying */
-
-  char *ftp_account; /* for ACCT */
-  char *ftp_alternative_to_user; /* send command if USER/PASS fails */
-  int ftp_filemethod;
-  long tftp_blksize; /* TFTP BLKSIZE option */
-  bool ignorecl; /* --ignore-content-length */
-  bool disable_sessionid;
-
-  char *libcurl; /* output libcurl code to this file name */
-  bool raw;
-  bool post301;
-  bool post302;
-  bool nokeepalive; /* for keepalive needs */
-  long alivetime;
-  bool content_disposition; /* use Content-disposition filename */
-
-  int default_node_flags; /* default flags to seach for each 'node', which is
-                             basically each given URL to transfer */
-  struct OutStruct *outs;
-};
-
-#define WARN_PREFIX "Warning: "
-#define WARN_TEXTWIDTH (79 - (int)strlen(WARN_PREFIX))
-/* produce this text message to the user unless mute was selected */
-static void warnf(struct Configurable *config, const char *fmt, ...)
-{
-  if(!config->mute) {
-    va_list ap;
-    int len;
-    char *ptr;
-    char print_buffer[256];
-
-    va_start(ap, fmt);
-    len = vsnprintf(print_buffer, sizeof(print_buffer), fmt, ap);
-    va_end(ap);
-
-    ptr = print_buffer;
-    while(len > 0) {
-      fputs(WARN_PREFIX, config->errors);
-
-      if(len > (int)WARN_TEXTWIDTH) {
-        int cut = WARN_TEXTWIDTH-1;
-
-        while(!ISSPACE(ptr[cut]) && cut) {
-          cut--;
-        }
-        if(0 == cut)
-          /* not a single cutting position was found, just cut it at the
-             max text width then! */
-          cut = WARN_TEXTWIDTH-1;
-
-        (void)fwrite(ptr, cut + 1, 1, config->errors);
-        fputs("\n", config->errors);
-        ptr += cut+1; /* skip the space too */
-        len -= cut;
-      }
-      else {
-        fputs(ptr, config->errors);
-        len = 0;
-      }
-    }
-  }
-}
-
-/*
- * This is the main global constructor for the app. Call this before
- * _any_ libcurl usage. If this fails, *NO* libcurl functions may be
- * used, or havoc may be the result.
- */
-static CURLcode main_init(void)
-{
-#ifdef DJGPP
-  /* stop stat() wasting time */
-  _djstat_flags |= _STAT_INODE | _STAT_EXEC_MAGIC | _STAT_DIRSIZE;
-#endif
-
-  return curl_global_init(CURL_GLOBAL_DEFAULT);
-}
-
-/*
- * This is the main global destructor for the app. Call this after
- * _all_ libcurl usage is done.
- */
-static void main_free(void)
-{
-  curl_global_cleanup();
-#if defined(CURL_DOES_CONVERSIONS) && defined(HAVE_ICONV)
-  /* close iconv conversion descriptor */
-  if(inbound_cd != (iconv_t)-1)
-    iconv_close(inbound_cd);
-  if(outbound_cd != (iconv_t)-1)
-    iconv_close(outbound_cd);
-#endif /* CURL_DOES_CONVERSIONS && HAVE_ICONV */
-}
-
-static int SetHTTPrequest(struct Configurable *config,
-                          HttpReq req, HttpReq *store)
-{
-  if((*store == HTTPREQ_UNSPEC) ||
-     (*store == req)) {
-    *store = req;
-    return 0;
-  }
-  warnf(config, "You can only select one HTTP request!\n");
-  return 1;
-}
-
-static void helpf(FILE *errors, const char *fmt, ...)
-{
-  va_list ap;
-  if(fmt) {
-    va_start(ap, fmt);
-    fputs("curl: ", errors); /* prefix it */
-    vfprintf(errors, fmt, ap);
-    va_end(ap);
-  }
-  fprintf(errors, "curl: try 'curl --help' "
-#ifdef USE_MANUAL
-          "or 'curl --manual' "
-#endif
-          "for more information\n");
-}
-
-/*
- * A chain of these nodes contain URL to get and where to put the URL's
- * contents.
- */
-struct getout {
-  struct getout *next; /* next one */
-  char *url;     /* the URL we deal with */
-  char *outfile; /* where to store the output */
-  char *infile;  /* file to upload, if GETOUT_UPLOAD is set */
-  int flags;     /* options */
-};
-#define GETOUT_OUTFILE (1<<0)   /* set when outfile is deemed done */
-#define GETOUT_URL     (1<<1)   /* set when URL is deemed done */
-#define GETOUT_USEREMOTE (1<<2) /* use remote file name locally */
-#define GETOUT_UPLOAD  (1<<3)   /* if set, -T has been used */
-#define GETOUT_NOUPLOAD  (1<<4) /* if set, -T "" has been used */
-
-static void help(void)
-{
-  int i;
-  /* A few of these source lines are >80 columns wide, but that's only because
-     breaking the strings narrower makes this chunk look even worse!
-
-     Starting with 7.18.0, this list of command line options is sorted based
-     on the long option name. It is not done automatically, although a command
-     line like the following can help out:
-
-     curl --help | cut -c5- | grep "^-" | sort
-  */
-  static const char * const helptext[]={
-    "Usage: curl [options...] <url>",
-    "Options: (H) means HTTP/HTTPS only, (F) means FTP only",
-    "    --anyauth       Pick \"any\" authentication method (H)",
-    " -a/--append        Append to target file when uploading (F/SFTP)",
-    "    --basic         Use HTTP Basic Authentication (H)",
-    "    --cacert <file> CA certificate to verify peer against (SSL)",
-    "    --capath <directory> CA directory to verify peer against (SSL)",
-    " -E/--cert <cert[:passwd]> Client certificate file and password (SSL)",
-    "    --cert-type <type> Certificate file type (DER/PEM/ENG) (SSL)",
-    "    --ciphers <list> SSL ciphers to use (SSL)",
-    "    --compressed    Request compressed response (using deflate or gzip)",
-    " -K/--config <file> Specify which config file to read",
-    "    --connect-timeout <seconds> Maximum time allowed for connection",
-    " -C/--continue-at <offset> Resumed transfer offset",
-    " -b/--cookie <name=string/file> Cookie string or file to read cookies from (H)",
-    " -c/--cookie-jar <file> Write cookies to this file after operation (H)",
-    "    --create-dirs   Create necessary local directory hierarchy",
-    "    --crlf          Convert LF to CRLF in upload",
-    "    --crlfile <file> Get a CRL list in PEM format from the given file",
-    " -d/--data <data>   HTTP POST data (H)",
-    "    --data-ascii <data>  HTTP POST ASCII data (H)",
-    "    --data-binary <data> HTTP POST binary data (H)",
-    "    --data-urlencode <name=data/name at filename> HTTP POST data url encoded (H)",
-    "    --digest        Use HTTP Digest Authentication (H)",
-    "    --disable-eprt  Inhibit using EPRT or LPRT (F)",
-    "    --disable-epsv  Inhibit using EPSV (F)",
-    " -D/--dump-header <file> Write the headers to this file",
-    "    --egd-file <file> EGD socket path for random data (SSL)",
-    "    --engine <eng>  Crypto engine to use (SSL). \"--engine list\" for list",
-#ifdef USE_ENVIRONMENT
-    "    --environment   Write results to environment variables (RISC OS)",
-#endif
-    " -f/--fail          Fail silently (no output at all) on HTTP errors (H)",
-    " -F/--form <name=content> Specify HTTP multipart POST data (H)",
-    "    --form-string <name=string> Specify HTTP multipart POST data (H)",
-    "    --ftp-account <data> Account data to send when requested by server (F)",
-    "    --ftp-alternative-to-user <cmd> String to replace \"USER [name]\" (F)",
-    "    --ftp-create-dirs Create the remote dirs if not present (F)",
-    "    --ftp-method [multicwd/nocwd/singlecwd] Control CWD usage (F)",
-    "    --ftp-pasv      Use PASV/EPSV instead of PORT (F)",
-    " -P/--ftp-port <address> Use PORT with address instead of PASV (F)",
-    "    --ftp-skip-pasv-ip Skip the IP address for PASV (F)\n"
-    "    --ftp-pret      Send PRET before PASV (for drftpd) (F)",
-    "    --ftp-ssl-ccc   Send CCC after authenticating (F)",
-    "    --ftp-ssl-ccc-mode [active/passive] Set CCC mode (F)",
-    "    --ftp-ssl-control Require SSL/TLS for ftp login, clear for transfer (F)",
-    " -G/--get           Send the -d data with a HTTP GET (H)",
-    " -g/--globoff       Disable URL sequences and ranges using {} and []",
-    " -H/--header <line> Custom header to pass to server (H)",
-    " -I/--head          Show document info only",
-    " -h/--help          This help text",
-    "    --hostpubmd5 <md5> Hex encoded MD5 string of the host public key. (SSH)",
-    " -0/--http1.0       Use HTTP 1.0 (H)",
-    "    --ignore-content-length  Ignore the HTTP Content-Length header",
-    " -i/--include       Include protocol headers in the output (H/F)",
-    " -k/--insecure      Allow connections to SSL sites without certs (H)",
-    "    --interface <interface> Specify network interface/address to use",
-    " -4/--ipv4          Resolve name to IPv4 address",
-    " -6/--ipv6          Resolve name to IPv6 address",
-    " -j/--junk-session-cookies Ignore session cookies read from file (H)",
-    "    --keepalive-time <seconds> Interval between keepalive probes",
-    "    --key <key>     Private key file name (SSL/SSH)",
-    "    --key-type <type> Private key file type (DER/PEM/ENG) (SSL)",
-    "    --krb <level>   Enable Kerberos with specified security level (F)",
-    "    --libcurl <file> Dump libcurl equivalent code of this command line",
-    "    --limit-rate <rate> Limit transfer speed to this rate",
-    " -J/--remote-header-name Use the header-provided filename (H)",
-    " -l/--list-only     List only names of an FTP directory (F)",
-    "    --local-port <num>[-num] Force use of these local port numbers",
-    " -L/--location      Follow Location: hints (H)",
-    "    --location-trusted Follow Location: and send auth to other hosts (H)",
-    " -M/--manual        Display the full manual",
-    "    --mail-from <from> Mail from this address",
-    "    --mail-rcpt <to> Mail to this receiver(s)",
-    "    --max-filesize <bytes> Maximum file size to download (H/F)",
-    "    --max-redirs <num> Maximum number of redirects allowed (H)",
-    " -m/--max-time <seconds> Maximum time allowed for the transfer",
-    "    --negotiate     Use HTTP Negotiate Authentication (H)",
-    " -n/--netrc         Must read .netrc for user name and password",
-    "    --netrc-optional Use either .netrc or URL; overrides -n",
-    " -N/--no-buffer     Disable buffering of the output stream",
-    "    --no-keepalive  Disable keepalive use on the connection",
-    "    --no-sessionid  Disable SSL session-ID reusing (SSL)",
-    "    --noproxy       Comma-separated list of hosts which do not use proxy",
-    "    --ntlm          Use HTTP NTLM authentication (H)",
-    " -o/--output <file> Write output to <file> instead of stdout",
-    "    --pass  <pass>  Pass phrase for the private key (SSL/SSH)",
-    "    --post301       Do not switch to GET after following a 301 redirect (H)",
-    "    --post302       Do not switch to GET after following a 302 redirect (H)",
-    " -#/--progress-bar  Display transfer progress as a progress bar",
-    " -x/--proxy <host[:port]> Use HTTP proxy on given port",
-    "    --proxy-anyauth Pick \"any\" proxy authentication method (H)",
-    "    --proxy-basic   Use Basic authentication on the proxy (H)",
-    "    --proxy-digest  Use Digest authentication on the proxy (H)",
-    "    --proxy-negotiate Use Negotiate authentication on the proxy (H)",
-    "    --proxy-ntlm    Use NTLM authentication on the proxy (H)",
-    " -U/--proxy-user <user[:password]> Set proxy user and password",
-    "    --proxy1.0 <host[:port]> Use HTTP/1.0 proxy on given port",
-    " -p/--proxytunnel   Operate through a HTTP proxy tunnel (using CONNECT)",
-    "    --pubkey <key>  Public key file name (SSH)",
-    " -Q/--quote <cmd>   Send command(s) to server before file transfer (F/SFTP)",
-    "    --random-file <file> File for reading random data from (SSL)",
-    " -r/--range <range> Retrieve only the bytes within a range",
-    "    --raw           Pass HTTP \"raw\", without any transfer decoding (H)",
-    " -e/--referer       Referer URL (H)",
-    " -O/--remote-name   Write output to a file named as the remote file",
-    "    --remote-name-all Use the remote file name for all URLs",
-    " -R/--remote-time   Set the remote file's time on the local output",
-    " -X/--request <command> Specify request command to use",
-    "    --retry <num>   Retry request <num> times if transient problems occur",
-    "    --retry-delay <seconds> When retrying, wait this many seconds between each",
-    "    --retry-max-time <seconds> Retry only within this period",
-    " -S/--show-error    Show error. With -s, make curl show errors when they occur",
-    " -s/--silent        Silent mode. Don't output anything",
-    "    --socks4 <host[:port]> SOCKS4 proxy on given host + port",
-    "    --socks4a <host[:port]> SOCKS4a proxy on given host + port",
-    "    --socks5 <host[:port]> SOCKS5 proxy on given host + port",
-    "    --socks5-hostname <host[:port]> SOCKS5 proxy, pass host name to proxy",
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-    "    --socks5-gssapi-service <name> SOCKS5 proxy service name for gssapi",
-    "    --socks5-gssapi-nec  Compatibility with NEC SOCKS5 server",
-#endif
-    " -Y/--speed-limit   Stop transfer if below speed-limit for 'speed-time' secs",
-    " -y/--speed-time    Time needed to trig speed-limit abort. Defaults to 30",
-    "    --ssl           Try SSL/TLS (FTP, IMAP, POP3, SMTP)",
-    "    --ssl-reqd      Require SSL/TLS (FTP, IMAP, POP3, SMTP)",
-    " -2/--sslv2         Use SSLv2 (SSL)",
-    " -3/--sslv3         Use SSLv3 (SSL)",
-    "    --stderr <file> Where to redirect stderr. - means stdout",
-    "    --tcp-nodelay   Use the TCP_NODELAY option",
-    " -t/--telnet-option <OPT=val> Set telnet option",
-    "    --tftp-blksize <value> Set TFTP BLKSIZE option (must be >512)",
-    " -z/--time-cond <time> Transfer based on a time condition",
-    " -1/--tlsv1         Use TLSv1 (SSL)",
-    "    --trace <file>  Write a debug trace to the given file",
-    "    --trace-ascii <file> Like --trace but without the hex output",
-    "    --trace-time    Add time stamps to trace/verbose output",
-    " -T/--upload-file <file> Transfer <file> to remote site",
-    "    --url <URL>     Set URL to work with",
-    " -B/--use-ascii     Use ASCII/text transfer",
-    " -u/--user <user[:password]> Set server user and password",
-    " -A/--user-agent <string> User-Agent to send to server (H)",
-    " -v/--verbose       Make the operation more talkative",
-    " -V/--version       Show version number and quit",
-
-#ifdef USE_WATT32
-    "    --wdebug        Turn on Watt-32 debugging",
-#endif
-    " -w/--write-out <format> What to output after completion",
-    " -q                 If used as the first parameter disables .curlrc",
-    NULL
-  };
-  for(i=0; helptext[i]; i++) {
-    puts(helptext[i]);
-#ifdef PRINT_LINES_PAUSE
-    if (i && ((i % PRINT_LINES_PAUSE) == 0))
-      pressanykey();
-#endif
-  }
-}
-
-struct LongShort {
-  const char *letter;
-  const char *lname;
-  bool extraparam;
-};
-
-/* global variable to hold info about libcurl */
-static curl_version_info_data *curlinfo;
-
-static int parseconfig(const char *filename,
-                       struct Configurable *config);
-static char *my_get_line(FILE *fp);
-static int create_dir_hierarchy(const char *outfile, FILE *errors);
-
-static void GetStr(char **string,
-                   const char *value)
-{
-  if(*string)
-    free(*string);
-  if(value)
-    *string = strdup(value);
-  else
-    *string = NULL;
-}
-
-static void clean_getout(struct Configurable *config)
-{
-  struct getout *node=config->url_list;
-  struct getout *next;
-
-  while(node) {
-    next = node->next;
-    if(node->url)
-      free(node->url);
-    if(node->outfile)
-      free(node->outfile);
-    if(node->infile)
-      free(node->infile);
-    free(node);
-
-    node = next; /* GOTO next */
-  }
-}
-
-static struct getout *new_getout(struct Configurable *config)
-{
-  struct getout *node =malloc(sizeof(struct getout));
-  struct getout *last= config->url_last;
-  if(node) {
-    /* clear the struct */
-    memset(node, 0, sizeof(struct getout));
-
-    /* append this new node last in the list */
-    if(last)
-      last->next = node;
-    else
-      config->url_list = node; /* first node */
-
-    /* move the last pointer */
-    config->url_last = node;
-
-    node->flags = config->default_node_flags;
-  }
-  return node;
-}
-
-/* Structure for storing the information needed to build a multiple files
- * section
-*/
-struct multi_files {
-  struct curl_forms   form;
-  struct multi_files *next;
-};
-
-/* Add a new list entry possibly with a type_name
- */
-static struct multi_files *
-AddMultiFiles (const char *file_name,
-               const char *type_name,
-               const char *show_filename,
-               struct multi_files **multi_start,
-               struct multi_files **multi_current)
-{
-  struct multi_files *multi;
-  struct multi_files *multi_type = NULL;
-  struct multi_files *multi_name = NULL;
-  multi = malloc(sizeof(struct multi_files));
-  if (multi) {
-    memset(multi, 0, sizeof(struct multi_files));
-    multi->form.option = CURLFORM_FILE;
-    multi->form.value = file_name;
-  }
-  else
-    return NULL;
-
-  if (!*multi_start)
-    *multi_start = multi;
-
-  if (type_name) {
-    multi_type = malloc(sizeof(struct multi_files));
-    if (multi_type) {
-      memset(multi_type, 0, sizeof(struct multi_files));
-      multi_type->form.option = CURLFORM_CONTENTTYPE;
-      multi_type->form.value = type_name;
-      multi->next = multi_type;
-
-      multi = multi_type;
-    }
-    else {
-      free (multi);
-      return NULL;
-    }
-  }
-  if (show_filename) {
-    multi_name = malloc(sizeof(struct multi_files));
-    if (multi_name) {
-      memset(multi_name, 0, sizeof(struct multi_files));
-      multi_name->form.option = CURLFORM_FILENAME;
-      multi_name->form.value = show_filename;
-      multi->next = multi_name;
-
-      multi = multi_name;
-    }
-    else {
-      free (multi);
-      return NULL;
-    }
-  }
-
-  if (*multi_current)
-    (*multi_current)->next = multi;
-
-  *multi_current = multi;
-
-  return *multi_current;
-}
-
-/* Free the items of the list.
- */
-static void FreeMultiInfo (struct multi_files *multi_start)
-{
-  struct multi_files *multi;
-  while (multi_start) {
-    multi = multi_start;
-    multi_start = multi_start->next;
-    free (multi);
-  }
-}
-
-/* Print list of OpenSSL engines supported.
- */
-static void list_engines (const struct curl_slist *engines)
-{
-  puts ("Build-time engines:");
-  if (!engines) {
-    puts ("  <none>");
-    return;
-  }
-  for ( ; engines; engines = engines->next)
-    printf ("  %s\n", engines->data);
-}
-
-/***************************************************************************
- *
- * formparse()
- *
- * Reads a 'name=value' parameter and builds the appropriate linked list.
- *
- * Specify files to upload with 'name=@filename'. Supports specified
- * given Content-Type of the files. Such as ';type=<content-type>'.
- *
- * If literal_value is set, any initial '@' or '<' in the value string
- * loses its special meaning, as does any embedded ';type='.
- *
- * You may specify more than one file for a single name (field). Specify
- * multiple files by writing it like:
- *
- * 'name=@filename,filename2,filename3'
- *
- * If you want content-types specified for each too, write them like:
- *
- * 'name=@filename;type=image/gif,filename2,filename3'
- *
- * If you want custom headers added for a single part, write them in a separate
- * file and do like this:
- *
- * 'name=foo;headers=@headerfile' or why not
- * 'name=@filemame;headers=@headerfile'
- *
- * To upload a file, but to fake the file name that will be included in the
- * formpost, do like this:
- *
- * 'name=@filename;filename=/dev/null'
- *
- * This function uses curl_formadd to fulfill it's job. Is heavily based on
- * the old curl_formparse code.
- *
- ***************************************************************************/
-
-#define FORM_FILE_SEPARATOR ','
-#define FORM_TYPE_SEPARATOR ';'
-
-static int formparse(struct Configurable *config,
-                     const char *input,
-                     struct curl_httppost **httppost,
-                     struct curl_httppost **last_post,
-                     bool literal_value)
-{
-  /* nextarg MUST be a string in the format 'name=contents' and we'll
-     build a linked list with the info */
-  char name[256];
-  char *contents;
-  char major[128];
-  char minor[128];
-  char *contp;
-  const char *type = NULL;
-  char *sep;
-  char *sep2;
-
-  if((1 == sscanf(input, "%255[^=]=", name)) &&
-     (contp = strchr(input, '='))) {
-    /* the input was using the correct format */
-
-    /* Allocate the contents */
-    contents = strdup(contp+1);
-    if(!contents) {
-      fprintf(config->errors, "out of memory\n");
-      return 1;
-    }
-    contp = contents;
-
-    if('@' == contp[0] && !literal_value) {
-      struct multi_files *multi_start = NULL, *multi_current = NULL;
-      /* we use the @-letter to indicate file name(s) */
-      contp++;
-
-      multi_start = multi_current=NULL;
-
-      do {
-        /* since this was a file, it may have a content-type specifier
-           at the end too, or a filename. Or both. */
-        char *ptr;
-        char *filename=NULL;
-
-        sep=strchr(contp, FORM_TYPE_SEPARATOR);
-        sep2=strchr(contp, FORM_FILE_SEPARATOR);
-
-        /* pick the closest */
-        if(sep2 && (sep2 < sep)) {
-          sep = sep2;
-
-          /* no type was specified! */
-        }
-
-        type = NULL;
-
-        if(sep) {
-
-          /* if we got here on a comma, don't do much */
-          if(FORM_FILE_SEPARATOR == *sep)
-            ptr = NULL;
-          else
-            ptr = sep+1;
-
-          *sep=0; /* terminate file name at separator */
-
-          while(ptr && (FORM_FILE_SEPARATOR!= *ptr)) {
-
-            /* pass all white spaces */
-            while(ISSPACE(*ptr))
-              ptr++;
-
-            if(curlx_strnequal("type=", ptr, 5)) {
-              /* set type pointer */
-              type = &ptr[5];
-
-              /* verify that this is a fine type specifier */
-              if(2 != sscanf(type, "%127[^/]/%127[^;,\n]",
-                             major, minor)) {
-                warnf(config, "Illegally formatted content-type field!\n");
-                free(contents);
-                FreeMultiInfo (multi_start);
-                return 2; /* illegal content-type syntax! */
-              }
-              /* now point beyond the content-type specifier */
-              sep = (char *)type + strlen(major)+strlen(minor)+1;
-
-              if(*sep) {
-                *sep=0; /* zero terminate type string */
-
-                ptr=sep+1;
-              }
-              else
-                ptr = NULL; /* end */
-            }
-            else if(curlx_strnequal("filename=", ptr, 9)) {
-              filename = &ptr[9];
-              ptr=strchr(filename, FORM_TYPE_SEPARATOR);
-              if(!ptr) {
-                ptr=strchr(filename, FORM_FILE_SEPARATOR);
-              }
-              if(ptr) {
-                *ptr=0; /* zero terminate */
-                ptr++;
-              }
-            }
-            else
-              /* confusion, bail out of loop */
-              break;
-          }
-          /* find the following comma */
-          if(ptr)
-            sep=strchr(ptr, FORM_FILE_SEPARATOR);
-          else
-            sep=NULL;
-        }
-        else {
-          sep=strchr(contp, FORM_FILE_SEPARATOR);
-        }
-        if(sep) {
-          /* the next file name starts here */
-          *sep =0;
-          sep++;
-        }
-        /* if type == NULL curl_formadd takes care of the problem */
-
-        if (!AddMultiFiles (contp, type, filename, &multi_start,
-                            &multi_current)) {
-          warnf(config, "Error building form post!\n");
-          free(contents);
-          FreeMultiInfo (multi_start);
-          return 3;
-        }
-        contp = sep; /* move the contents pointer to after the separator */
-
-      } while(sep && *sep); /* loop if there's another file name */
-
-      /* now we add the multiple files section */
-      if (multi_start) {
-        struct curl_forms *forms = NULL;
-        struct multi_files *ptr = multi_start;
-        unsigned int i, count = 0;
-        while (ptr) {
-          ptr = ptr->next;
-          ++count;
-        }
-        forms = malloc((count+1)*sizeof(struct curl_forms));
-        if (!forms)
-        {
-          fprintf(config->errors, "Error building form post!\n");
-          free(contents);
-          FreeMultiInfo (multi_start);
-          return 4;
-        }
-        for (i = 0, ptr = multi_start; i < count; ++i, ptr = ptr->next)
-        {
-          forms[i].option = ptr->form.option;
-          forms[i].value = ptr->form.value;
-        }
-        forms[count].option = CURLFORM_END;
-        FreeMultiInfo (multi_start);
-        if (curl_formadd(httppost, last_post,
-                         CURLFORM_COPYNAME, name,
-                         CURLFORM_ARRAY, forms, CURLFORM_END) != 0) {
-          warnf(config, "curl_formadd failed!\n");
-          free(forms);
-          free(contents);
-          return 5;
-        }
-        free(forms);
-      }
-    }
-    else {
-      struct curl_forms info[4];
-      int i = 0;
-      char *ct = literal_value? NULL: strstr(contp, ";type=");
-
-      info[i].option = CURLFORM_COPYNAME;
-      info[i].value = name;
-      i++;
-
-      if(ct) {
-        info[i].option = CURLFORM_CONTENTTYPE;
-        info[i].value = &ct[6];
-        i++;
-        ct[0]=0; /* zero terminate here */
-      }
-
-      if( contp[0]=='<' && !literal_value) {
-        info[i].option = CURLFORM_FILECONTENT;
-        info[i].value = contp+1;
-        i++;
-        info[i].option = CURLFORM_END;
-
-        if (curl_formadd(httppost, last_post,
-                         CURLFORM_ARRAY, info, CURLFORM_END ) != 0) {
-          warnf(config, "curl_formadd failed, possibly the file %s is bad!\n",
-                contp+1);
-          free(contents);
-          return 6;
-        }
-      }
-      else {
-#ifdef CURL_DOES_CONVERSIONS
-        convert_to_network(contp, strlen(contp));
-#endif
-        info[i].option = CURLFORM_COPYCONTENTS;
-        info[i].value = contp;
-        i++;
-        info[i].option = CURLFORM_END;
-        if (curl_formadd(httppost, last_post,
-                         CURLFORM_ARRAY, info, CURLFORM_END) != 0) {
-          warnf(config, "curl_formadd failed!\n");
-          free(contents);
-          return 7;
-        }
-      }
-    }
-
-  }
-  else {
-    warnf(config, "Illegally formatted input field!\n");
-    return 1;
-  }
-  free(contents);
-  return 0;
-}
-
-
-typedef enum {
-  PARAM_OK,
-  PARAM_OPTION_AMBIGUOUS,
-  PARAM_OPTION_UNKNOWN,
-  PARAM_REQUIRES_PARAMETER,
-  PARAM_BAD_USE,
-  PARAM_HELP_REQUESTED,
-  PARAM_GOT_EXTRA_PARAMETER,
-  PARAM_BAD_NUMERIC,
-  PARAM_LIBCURL_DOESNT_SUPPORT,
-  PARAM_NO_MEM,
-  PARAM_LAST
-} ParameterError;
-
-static const char *param2text(int res)
-{
-  ParameterError error = (ParameterError)res;
-  switch(error) {
-  case PARAM_GOT_EXTRA_PARAMETER:
-    return "had unsupported trailing garbage";
-  case PARAM_OPTION_UNKNOWN:
-    return "is unknown";
-  case PARAM_OPTION_AMBIGUOUS:
-    return "is ambiguous";
-  case PARAM_REQUIRES_PARAMETER:
-    return "requires parameter";
-  case PARAM_BAD_USE:
-    return "is badly used here";
-  case PARAM_BAD_NUMERIC:
-    return "expected a proper numerical parameter";
-  case PARAM_LIBCURL_DOESNT_SUPPORT:
-    return "the installed libcurl version doesn't support this";
-  case PARAM_NO_MEM:
-    return "out of memory";
-  default:
-    return "unknown error";
-  }
-}
-
-static ParameterError file2string(char **bufp, FILE *file)
-{
-  char buffer[256];
-  char *ptr;
-  char *string = NULL;
-  size_t stringlen = 0;
-  size_t buflen;
-
-  if(file) {
-    while(fgets(buffer, sizeof(buffer), file)) {
-      if((ptr = strchr(buffer, '\r')) != NULL)
-        *ptr = '\0';
-      if((ptr = strchr(buffer, '\n')) != NULL)
-        *ptr = '\0';
-      buflen = strlen(buffer);
-      if((ptr = realloc(string, stringlen+buflen+1)) == NULL) {
-        if(string)
-          free(string);
-        return PARAM_NO_MEM;
-      }
-      string = ptr;
-      strcpy(string+stringlen, buffer);
-      stringlen += buflen;
-    }
-  }
-  *bufp = string;
-  return PARAM_OK;
-}
-
-static ParameterError file2memory(char **bufp, size_t *size, FILE *file)
-{
-  char *newbuf;
-  char *buffer = NULL;
-  size_t alloc = 512;
-  size_t nused = 0;
-  size_t nread;
-
-  if(file) {
-    do {
-      if(!buffer || (alloc == nused)) {
-        /* size_t overflow detection for huge files */
-        if(alloc+1 > ((size_t)-1)/2) {
-          if(buffer)
-            free(buffer);
-          return PARAM_NO_MEM;
-        }
-        alloc *= 2;
-        /* allocate an extra char, reserved space, for null termination */
-        if((newbuf = realloc(buffer, alloc+1)) == NULL) {
-          if(buffer)
-            free(buffer);
-          return PARAM_NO_MEM;
-        }
-        buffer = newbuf;
-      }
-      nread = fread(buffer+nused, 1, alloc-nused, file);
-      nused += nread;
-    } while(nread);
-    /* null terminate the buffer in case it's used as a string later */
-    buffer[nused] = '\0';
-    /* free trailing slack space, if possible */
-    if(alloc != nused) {
-      if((newbuf = realloc(buffer, nused+1)) != NULL)
-        buffer = newbuf;
-    }
-    /* discard buffer if nothing was read */
-    if(!nused) {
-      free(buffer);
-      buffer = NULL; /* no string */
-    }
-  }
-  *size = nused;
-  *bufp = buffer;
-  return PARAM_OK;
-}
-
-static void cleanarg(char *str)
-{
-#ifdef HAVE_WRITABLE_ARGV
-  /* now that GetStr has copied the contents of nextarg, wipe the next
-   * argument out so that the username:password isn't displayed in the
-   * system process list */
-  if (str) {
-    size_t len = strlen(str);
-    memset(str, ' ', len);
-  }
-#else
-  (void)str;
-#endif
-}
-
-/*
- * Parse the string and write the integer in the given address. Return
- * non-zero on failure, zero on success.
- *
- * The string must start with a digit to be valid.
- *
- * Since this function gets called with the 'nextarg' pointer from within the
- * getparameter a lot, we must check it for NULL before accessing the str
- * data.
- */
-
-static int str2num(long *val, const char *str)
-{
-  int retcode = 0;
-  if(str && ISDIGIT(*str))
-    *val = atoi(str);
-  else
-    retcode = 1; /* badness */
-  return retcode;
-}
-
-/**
- * Parses the given string looking for an offset (which may be
- * a larger-than-integer value).
- *
- * @param val  the offset to populate
- * @param str  the buffer containing the offset
- * @return zero if successful, non-zero if failure.
- */
-static int str2offset(curl_off_t *val, const char *str)
-{
-#if (CURL_SIZEOF_CURL_OFF_T > CURL_SIZEOF_LONG)
-  *val = curlx_strtoofft(str, NULL, 0);
-  if((*val == CURL_LLONG_MAX || *val == CURL_LLONG_MIN) && (ERRNO == ERANGE))
-    return 1;
-#else
-  *val = strtol(str, NULL, 0);
-  if ((*val == LONG_MIN || *val == LONG_MAX) && ERRNO == ERANGE)
-    return 1;
-#endif
-  return 0;
-}
-
-static void checkpasswd(const char *kind, /* for what purpose */
-                        char **userpwd) /* pointer to allocated string */
-{
-  char *ptr;
-  if(!*userpwd)
-    return;
-
-  ptr = strchr(*userpwd, ':');
-  if(!ptr) {
-    /* no password present, prompt for one */
-    char passwd[256]="";
-    char prompt[256];
-    size_t passwdlen;
-    size_t userlen = strlen(*userpwd);
-    char *passptr;
-
-    /* build a nice-looking prompt */
-    curlx_msnprintf(prompt, sizeof(prompt),
-                   "Enter %s password for user '%s':",
-                   kind, *userpwd);
-
-    /* get password */
-    getpass_r(prompt, passwd, sizeof(passwd));
-    passwdlen = strlen(passwd);
-
-    /* extend the allocated memory area to fit the password too */
-    passptr = realloc(*userpwd,
-                      passwdlen + 1 + /* an extra for the colon */
-                      userlen + 1);   /* an extra for the zero */
-
-    if(passptr) {
-      /* append the password separated with a colon */
-      passptr[userlen]=':';
-      memcpy(&passptr[userlen+1], passwd, passwdlen+1);
-      *userpwd = passptr;
-    }
-  }
-}
-
-static ParameterError add2list(struct curl_slist **list,
-                               const char *ptr)
-{
-  struct curl_slist *newlist = curl_slist_append(*list, ptr);
-  if(newlist)
-    *list = newlist;
-  else
-    return PARAM_NO_MEM;
-
-  return PARAM_OK;
-}
-
-static int ftpfilemethod(struct Configurable *config, const char *str)
-{
-  if(curlx_raw_equal("singlecwd", str))
-    return CURLFTPMETHOD_SINGLECWD;
-  if(curlx_raw_equal("nocwd", str))
-    return CURLFTPMETHOD_NOCWD;
-  if(curlx_raw_equal("multicwd", str))
-    return CURLFTPMETHOD_MULTICWD;
-  warnf(config, "unrecognized ftp file method '%s', using default\n", str);
-  return CURLFTPMETHOD_MULTICWD;
-}
-
-static int ftpcccmethod(struct Configurable *config, const char *str)
-{
-  if(curlx_raw_equal("passive", str))
-    return CURLFTPSSL_CCC_PASSIVE;
-  if(curlx_raw_equal("active", str))
-    return CURLFTPSSL_CCC_ACTIVE;
-  warnf(config, "unrecognized ftp CCC method '%s', using default\n", str);
-  return CURLFTPSSL_CCC_PASSIVE;
-}
-
-
-static int sockoptcallback(void *clientp, curl_socket_t curlfd,
-                           curlsocktype purpose)
-{
-  struct Configurable *config = (struct Configurable *)clientp;
-  int onoff = 1; /* this callback is only used if we ask for keepalives on the
-                    connection */
-#if defined(TCP_KEEPIDLE) || defined(TCP_KEEPINTVL)
-  int keepidle = (int)config->alivetime;
-#endif
-
-  switch (purpose) {
-  case CURLSOCKTYPE_IPCXN:
-    if(setsockopt(curlfd, SOL_SOCKET, SO_KEEPALIVE, (void *)&onoff,
-                  sizeof(onoff)) < 0) {
-      /* don't abort operation, just issue a warning */
-      SET_SOCKERRNO(0);
-      warnf(clientp, "Could not set SO_KEEPALIVE!\n");
-      return 0;
-    }
-    else {
-      if (config->alivetime) {
-#ifdef TCP_KEEPIDLE
-        if(setsockopt(curlfd, IPPROTO_TCP, TCP_KEEPIDLE, (void *)&keepidle,
-                      sizeof(keepidle)) < 0) {
-          /* don't abort operation, just issue a warning */
-          SET_SOCKERRNO(0);
-          warnf(clientp, "Could not set TCP_KEEPIDLE!\n");
-          return 0;
-        }
-#endif
-#ifdef TCP_KEEPINTVL
-        if(setsockopt(curlfd, IPPROTO_TCP, TCP_KEEPINTVL, (void *)&keepidle,
-                      sizeof(keepidle)) < 0) {
-          /* don't abort operation, just issue a warning */
-          SET_SOCKERRNO(0);
-          warnf(clientp, "Could not set TCP_KEEPINTVL!\n");
-          return 0;
-        }
-#endif
-      }
-    }
-    break;
-  default:
-    break;
-  }
-
-  return 0;
-}
-
-
-static ParameterError getparameter(char *flag, /* f or -long-flag */
-                                   char *nextarg, /* NULL if unset */
-                                   bool *usedarg, /* set to TRUE if the arg
-                                                     has been used */
-                                   struct Configurable *config)
-{
-  char letter;
-  char subletter=0; /* subletters can only occur on long options */
-  int rc; /* generic return code variable */
-  const char *parse=NULL;
-  unsigned int j;
-  time_t now;
-  int hit=-1;
-  bool longopt=FALSE;
-  bool singleopt=FALSE; /* when true means '-o foo' used '-ofoo' */
-  ParameterError err;
-  bool toggle=TRUE; /* how to switch boolean options, on or off. Controlled
-                       by using --OPTION or --no-OPTION */
-
-  /* single-letter,
-     long-name,
-     boolean whether it takes an additional argument
-     */
-  static const struct LongShort aliases[]= {
-    /* all these ones, starting with "*" or "$" as a short-option have *no*
-       short option to mention. */
-    {"*", "url",         TRUE},
-    {"*a", "random-file", TRUE},
-    {"*b", "egd-file",   TRUE},
-    {"*c", "connect-timeout", TRUE},
-    {"*d", "ciphers",    TRUE},
-    {"*e", "disable-epsv", FALSE},
-    {"*E", "epsv", FALSE}, /* made like this to make --no-epsv and --epsv to
-                              work although --disable-epsv is the documented
-                              option */
-#ifdef USE_ENVIRONMENT
-    {"*f", "environment", FALSE},
-#endif
-    {"*g", "trace",      TRUE},
-    {"*h", "trace-ascii", TRUE},
-    {"*i", "limit-rate", TRUE},
-    {"*j", "compressed",  FALSE}, /* might take an arg someday */
-    {"*k", "digest",     FALSE},
-    {"*l", "negotiate",  FALSE},
-    {"*m", "ntlm",       FALSE},
-    {"*n", "basic",      FALSE},
-    {"*o", "anyauth",    FALSE},
-#ifdef USE_WATT32
-    {"*p", "wdebug",     FALSE},
-#endif
-    {"*q", "ftp-create-dirs", FALSE},
-    {"*r", "create-dirs", FALSE},
-    {"*s", "max-redirs",   TRUE},
-    {"*t", "proxy-ntlm",   FALSE},
-    {"*u", "crlf",        FALSE},
-    {"*v", "stderr",      TRUE},
-    {"*w", "interface",   TRUE},
-    {"*x", "krb" ,        TRUE},
-    {"*x", "krb4" ,       TRUE}, /* this is the previous name */
-    {"*y", "max-filesize", TRUE},
-    {"*z", "disable-eprt", FALSE},
-    {"*Z", "eprt", FALSE}, /* made like this to make --no-eprt and --eprt to
-                              work although --disable-eprt is the documented
-                              option */
-    {"$a", "ftp-ssl",    FALSE}, /* deprecated name since 7.20.0 */
-    {"$a", "ssl",        FALSE}, /* new option name in 7.20.0, previously this
-                                    was ftp-ssl */
-    {"$b", "ftp-pasv",   FALSE},
-    {"$c", "socks5",   TRUE},
-    {"$c", "socks",      TRUE}, /* this is how the option once was documented
-                                   but we prefer the --socks5 version for
-                                   explicit version */
-    {"$d", "tcp-nodelay",FALSE},
-    {"$e", "proxy-digest", FALSE},
-    {"$f", "proxy-basic", FALSE},
-    {"$g", "retry",      TRUE},
-    {"$h", "retry-delay", TRUE},
-    {"$i", "retry-max-time", TRUE},
-    {"$k", "proxy-negotiate",   FALSE},
-    {"$m", "ftp-account", TRUE},
-    {"$n", "proxy-anyauth", FALSE},
-    {"$o", "trace-time", FALSE},
-    {"$p", "ignore-content-length", FALSE},
-    {"$q", "ftp-skip-pasv-ip", FALSE},
-    {"$r", "ftp-method", TRUE},
-    {"$s", "local-port", TRUE},
-    {"$t", "socks4",     TRUE},
-    {"$T", "socks4a",    TRUE},
-    {"$u", "ftp-alternative-to-user", TRUE},
-    {"$v", "ftp-ssl-reqd", FALSE}, /* deprecated name since 7.20.0 */
-    {"$v", "ssl-reqd", FALSE},  /* new option name in 7.20.0, previously this
-                                   was ftp-ssl-reqd */
-    {"$w", "sessionid", FALSE}, /* listed as --no-sessionid in the help */
-    {"$x", "ftp-ssl-control", FALSE},
-    {"$y", "ftp-ssl-ccc", FALSE},
-    {"$j", "ftp-ssl-ccc-mode", TRUE},
-    {"$z", "libcurl",    TRUE},
-    {"$#", "raw",        FALSE},
-    {"$0", "post301",    FALSE},
-    {"$1", "keepalive",   FALSE}, /* listed as --no-keepalive in the help */
-    {"$2", "socks5-hostname", TRUE},
-    {"$3", "keepalive-time",  TRUE},
-    {"$4", "post302",    FALSE},
-    {"$5", "noproxy",    TRUE},
-
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-    {"$6", "socks5-gssapi-service",  TRUE},
-    {"$7", "socks5-gssapi-nec",  FALSE},
-#endif
-    {"$8", "proxy1.0",   TRUE},
-    {"$9", "tftp-blksize", TRUE},
-    {"$A", "mail-from", TRUE},
-    {"$B", "mail-rcpt", TRUE},
-    {"$C", "ftp-pret",   FALSE},
-    {"0", "http1.0",     FALSE},
-    {"1", "tlsv1",       FALSE},
-    {"2", "sslv2",       FALSE},
-    {"3", "sslv3",       FALSE},
-    {"4", "ipv4",       FALSE},
-    {"6", "ipv6",       FALSE},
-    {"a", "append",      FALSE},
-    {"A", "user-agent",  TRUE},
-    {"b", "cookie",      TRUE},
-    {"B", "use-ascii",   FALSE},
-    {"c", "cookie-jar",  TRUE},
-    {"C", "continue-at", TRUE},
-    {"d", "data",        TRUE},
-    {"da", "data-ascii", TRUE},
-    {"db", "data-binary", TRUE},
-    {"de", "data-urlencode", TRUE},
-    {"D", "dump-header", TRUE},
-    {"e", "referer",     TRUE},
-    {"E", "cert",        TRUE},
-    {"Ea", "cacert",     TRUE},
-    {"Eb","cert-type",   TRUE},
-    {"Ec","key",         TRUE},
-    {"Ed","key-type",    TRUE},
-    {"Ee","pass",        TRUE},
-    {"Ef","engine",      TRUE},
-    {"Eg","capath ",     TRUE},
-    {"Eh","pubkey",      TRUE},
-    {"Ei", "hostpubmd5", TRUE},
-    {"Ej","crlfile",     TRUE},
-    {"f", "fail",        FALSE},
-    {"F", "form",        TRUE},
-    {"Fs","form-string", TRUE},
-    {"g", "globoff",     FALSE},
-    {"G", "get",         FALSE},
-    {"h", "help",        FALSE},
-    {"H", "header",      TRUE},
-    {"i", "include",     FALSE},
-    {"I", "head",        FALSE},
-    {"j", "junk-session-cookies", FALSE},
-    {"J", "remote-header-name", FALSE},
-    {"k", "insecure",    FALSE},
-    {"K", "config",      TRUE},
-    {"l", "list-only",   FALSE},
-    {"L", "location",    FALSE},
-    {"Lt", "location-trusted", FALSE},
-    {"m", "max-time",    TRUE},
-    {"M", "manual",      FALSE},
-    {"n", "netrc",       FALSE},
-    {"no", "netrc-optional", FALSE},
-    {"N", "buffer",   FALSE}, /* listed as --no-buffer in the help */
-    {"o", "output",      TRUE},
-    {"O",  "remote-name", FALSE},
-    {"Oa", "remote-name-all", FALSE},
-    {"p", "proxytunnel", FALSE},
-    {"P", "ftpport",     TRUE}, /* older version */
-    {"P", "ftp-port",    TRUE},
-    {"q", "disable",     FALSE},
-    {"Q", "quote",       TRUE},
-    {"r", "range",       TRUE},
-    {"R", "remote-time", FALSE},
-    {"s", "silent",      FALSE},
-    {"S", "show-error",  FALSE},
-    {"t", "telnet-options", TRUE}, /* this is documented as telnet-option */
-    {"T", "upload-file", TRUE},
-    {"u", "user",        TRUE},
-    {"U", "proxy-user",  TRUE},
-    {"v", "verbose",     FALSE},
-    {"V", "version",     FALSE},
-    {"w", "write-out",   TRUE},
-    {"x", "proxy",       TRUE},
-    {"X", "request",     TRUE},
-    {"X", "http-request", TRUE}, /* OBSOLETE VERSION */
-    {"Y", "speed-limit",  TRUE},
-    {"y", "speed-time", TRUE},
-    {"z", "time-cond",   TRUE},
-    {"#", "progress-bar",FALSE},
-  };
-
-  if(('-' != flag[0]) ||
-     (('-' == flag[0]) && ('-' == flag[1]))) {
-    /* this should be a long name */
-    char *word=('-' == flag[0])?flag+2:flag;
-    size_t fnam=strlen(word);
-    int numhits=0;
-
-    if(!strncmp(word, "no-", 3)) {
-      /* disable this option but ignore the "no-" part when looking for it */
-      word += 3;
-      toggle = FALSE;
-    }
-
-    for(j=0; j< sizeof(aliases)/sizeof(aliases[0]); j++) {
-      if(curlx_strnequal(aliases[j].lname, word, fnam)) {
-        longopt = TRUE;
-        numhits++;
-        if(curlx_raw_equal(aliases[j].lname, word)) {
-          parse = aliases[j].letter;
-          hit = j;
-          numhits = 1; /* a single unique hit */
-          break;
-        }
-        parse = aliases[j].letter;
-        hit = j;
-      }
-    }
-    if(numhits>1) {
-      /* this is at least the second match! */
-      return PARAM_OPTION_AMBIGUOUS;
-    }
-    if(hit < 0) {
-      return PARAM_OPTION_UNKNOWN;
-    }
-  }
-  else {
-    flag++; /* prefixed with one dash, pass it */
-    hit=-1;
-    parse = flag;
-  }
-
-  do {
-    /* we can loop here if we have multiple single-letters */
-
-    if(!longopt) {
-      if(NULL != parse) {
-        letter = (char)*parse;
-      }
-      else {
-        letter = '\0';
-      }
-      subletter='\0';
-    }
-    else {
-      letter = parse[0];
-      subletter = parse[1];
-    }
-    *usedarg = FALSE; /* default is that we don't use the arg */
-
-    if(hit < 0) {
-      for(j=0; j< sizeof(aliases)/sizeof(aliases[0]); j++) {
-        if(letter == aliases[j].letter[0]) {
-          hit = j;
-          break;
-        }
-      }
-      if(hit < 0) {
-        return PARAM_OPTION_UNKNOWN;
-      }
-    }
-
-    if(aliases[hit].extraparam) {
-      /* this option requires an extra parameter */
-      if(!longopt && parse[1]) {
-        nextarg=(char *)&parse[1]; /* this is the actual extra parameter */
-        singleopt=TRUE;   /* don't loop anymore after this */
-      }
-      else if(!nextarg)
-        return PARAM_REQUIRES_PARAMETER;
-      else
-        *usedarg = TRUE; /* mark it as used */
-    }
-
-    switch(letter) {
-    case '*': /* options without a short option */
-      switch(subletter) {
-      case 'a': /* random-file */
-        GetStr(&config->random_file, nextarg);
-        break;
-      case 'b': /* egd-file */
-        GetStr(&config->egd_file, nextarg);
-        break;
-      case 'c': /* connect-timeout */
-        if(str2num(&config->connecttimeout, nextarg))
-          return PARAM_BAD_NUMERIC;
-        break;
-      case 'd': /* ciphers */
-        GetStr(&config->cipher_list, nextarg);
-        break;
-      case 'e': /* --disable-epsv */
-        config->disable_epsv = toggle;
-        break;
-      case 'E': /* --epsv */
-        config->disable_epsv = (bool)(!toggle);
-        break;
-#ifdef USE_ENVIRONMENT
-      case 'f':
-        config->writeenv = toggle;
-        break;
-#endif
-      case 'g': /* --trace */
-        GetStr(&config->trace_dump, nextarg);
-        if(config->tracetype && (config->tracetype != TRACE_BIN))
-          warnf(config, "--trace overrides an earlier trace/verbose option\n");
-        config->tracetype = TRACE_BIN;
-        break;
-      case 'h': /* --trace-ascii */
-        GetStr(&config->trace_dump, nextarg);
-        if(config->tracetype && (config->tracetype != TRACE_ASCII))
-          warnf(config,
-                "--trace-ascii overrides an earlier trace/verbose option\n");
-        config->tracetype = TRACE_ASCII;
-        break;
-      case 'i': /* --limit-rate */
-        {
-          /* We support G, M, K too */
-          char *unit;
-          curl_off_t value = curlx_strtoofft(nextarg, &unit, 0);
-
-          if(!*unit)
-            unit=(char *)"b";
-          else if(strlen(unit) > 1)
-            unit=(char *)"w"; /* unsupported */
-
-          switch(*unit) {
-          case 'G':
-          case 'g':
-            value *= 1024*1024*1024;
-            break;
-          case 'M':
-          case 'm':
-            value *= 1024*1024;
-            break;
-          case 'K':
-          case 'k':
-            value *= 1024;
-            break;
-          case 'b':
-          case 'B':
-            /* for plain bytes, leave as-is */
-            break;
-          default:
-            warnf(config, "unsupported rate unit. Use G, M, K or B!\n");
-            return PARAM_BAD_USE;
-          }
-          config->recvpersecond = value;
-          config->sendpersecond = value;
-        }
-        break;
-
-      case 'j': /* --compressed */
-        config->encoding = toggle;
-        break;
-
-      case 'k': /* --digest */
-        if(toggle)
-          config->authtype |= CURLAUTH_DIGEST;
-        else
-          config->authtype &= ~CURLAUTH_DIGEST;
-        break;
-
-      case 'l': /* --negotiate */
-        if(toggle) {
-          if(curlinfo->features & CURL_VERSION_GSSNEGOTIATE)
-            config->authtype |= CURLAUTH_GSSNEGOTIATE;
-          else
-            return PARAM_LIBCURL_DOESNT_SUPPORT;
-        }
-        else
-          config->authtype &= ~CURLAUTH_GSSNEGOTIATE;
-        break;
-
-      case 'm': /* --ntlm */
-        if(toggle) {
-          if(curlinfo->features & CURL_VERSION_NTLM)
-            config->authtype |= CURLAUTH_NTLM;
-          else
-            return PARAM_LIBCURL_DOESNT_SUPPORT;
-        }
-        else
-          config->authtype &= ~CURLAUTH_NTLM;
-        break;
-
-      case 'n': /* --basic for completeness */
-        if(toggle)
-          config->authtype |= CURLAUTH_BASIC;
-        else
-          config->authtype &= ~CURLAUTH_BASIC;
-        break;
-
-      case 'o': /* --anyauth, let libcurl pick it */
-        if(toggle)
-          config->authtype = CURLAUTH_ANY;
-        /* --no-anyauth simply doesn't touch it */
-        break;
-
-#ifdef USE_WATT32
-      case 'p': /* --wdebug */
-        dbug_init();
-        break;
-#endif
-      case 'q': /* --ftp-create-dirs */
-        config->ftp_create_dirs = toggle;
-        break;
-
-      case 'r': /* --create-dirs */
-        config->create_dirs = TRUE;
-        break;
-
-      case 's': /* --max-redirs */
-        /* specified max no of redirects (http(s)) */
-        if(str2num(&config->maxredirs, nextarg))
-          return PARAM_BAD_NUMERIC;
-        break;
-
-      case 't': /* --proxy-ntlm */
-        if(curlinfo->features & CURL_VERSION_NTLM)
-          config->proxyntlm = toggle;
-        else
-          return PARAM_LIBCURL_DOESNT_SUPPORT;
-        break;
-
-      case 'u': /* --crlf */
-        /* LF -> CRLF conversion? */
-        config->crlf = TRUE;
-        break;
-
-      case 'v': /* --stderr */
-        if(strcmp(nextarg, "-")) {
-          FILE *newfile = fopen(nextarg, "wt");
-          if(!newfile)
-            warnf(config, "Failed to open %s!\n", nextarg);
-          else {
-            if(config->errors_fopened)
-              fclose(config->errors);
-            config->errors = newfile;
-            config->errors_fopened = TRUE;
-          }
-        }
-        else
-          config->errors = stdout;
-      break;
-      case 'w': /* --interface */
-        /* interface */
-        GetStr(&config->iface, nextarg);
-        break;
-      case 'x': /* --krb */
-        /* kerberos level string */
-        if(curlinfo->features & (CURL_VERSION_KERBEROS4 |
-                                 CURL_VERSION_GSSNEGOTIATE))
-          GetStr(&config->krblevel, nextarg);
-        else
-          return PARAM_LIBCURL_DOESNT_SUPPORT;
-        break;
-      case 'y': /* --max-filesize */
-        if(str2offset(&config->max_filesize, nextarg))
-          return PARAM_BAD_NUMERIC;
-        break;
-      case 'z': /* --disable-eprt */
-        config->disable_eprt = toggle;
-        break;
-      case 'Z': /* --eprt */
-        config->disable_eprt = (bool)(!toggle);
-        break;
-
-      default: /* the URL! */
-        {
-          struct getout *url;
-          if(config->url_get || (config->url_get=config->url_list)) {
-            /* there's a node here, if it already is filled-in continue to find
-               an "empty" node */
-            while(config->url_get && (config->url_get->flags&GETOUT_URL))
-              config->url_get = config->url_get->next;
-          }
-
-          /* now there might or might not be an available node to fill in! */
-
-          if(config->url_get)
-            /* existing node */
-            url = config->url_get;
-          else
-            /* there was no free node, create one! */
-            url=new_getout(config);
-
-          if(url) {
-            /* fill in the URL */
-            GetStr(&url->url, nextarg);
-            url->flags |= GETOUT_URL;
-          }
-        }
-      }
-      break;
-    case '$': /* more options without a short option */
-      switch(subletter) {
-      case 'a': /* --ftp-ssl */
-        config->ftp_ssl = toggle;
-        break;
-      case 'b': /* --ftp-pasv */
-        if(config->ftpport)
-          free(config->ftpport);
-        config->ftpport = NULL;
-        break;
-      case 'c': /* --socks5 specifies a socks5 proxy to use, and resolves
-                   the name locally and passes on the resolved address */
-        GetStr(&config->socksproxy, nextarg);
-        config->socksver = CURLPROXY_SOCKS5;
-        break;
-      case 't': /* --socks4 specifies a socks4 proxy to use */
-        GetStr(&config->socksproxy, nextarg);
-        config->socksver = CURLPROXY_SOCKS4;
-        break;
-      case 'T': /* --socks4a specifies a socks4a proxy to use */
-        GetStr(&config->socksproxy, nextarg);
-        config->socksver = CURLPROXY_SOCKS4A;
-        break;
-      case '2': /* --socks5-hostname specifies a socks5 proxy and enables name
-                   resolving with the proxy */
-        GetStr(&config->socksproxy, nextarg);
-        config->socksver = CURLPROXY_SOCKS5_HOSTNAME;
-        break;
-      case 'd': /* --tcp-nodelay option */
-        config->tcp_nodelay = toggle;
-        break;
-      case 'e': /* --proxy-digest */
-        config->proxydigest = toggle;
-        break;
-      case 'f': /* --proxy-basic */
-        config->proxybasic = toggle;
-        break;
-      case 'g': /* --retry */
-        if(str2num(&config->req_retry, nextarg))
-          return PARAM_BAD_NUMERIC;
-        break;
-      case 'h': /* --retry-delay */
-        if(str2num(&config->retry_delay, nextarg))
-          return PARAM_BAD_NUMERIC;
-        break;
-      case 'i': /* --retry-max-time */
-        if(str2num(&config->retry_maxtime, nextarg))
-          return PARAM_BAD_NUMERIC;
-        break;
-
-      case 'k': /* --proxy-negotiate */
-        if(curlinfo->features & CURL_VERSION_GSSNEGOTIATE)
-          config->proxynegotiate = toggle;
-        else
-          return PARAM_LIBCURL_DOESNT_SUPPORT;
-        break;
-      case 'm': /* --ftp-account */
-        GetStr(&config->ftp_account, nextarg);
-        break;
-      case 'n': /* --proxy-anyauth */
-        config->proxyanyauth = toggle;
-        break;
-      case 'o': /* --trace-time */
-        config->tracetime = toggle;
-        break;
-      case 'p': /* --ignore-content-length */
-        config->ignorecl = toggle;
-        break;
-      case 'q': /* --ftp-skip-pasv-ip */
-        config->ftp_skip_ip = toggle;
-        break;
-      case 'r': /* --ftp-method (undocumented at this point) */
-        config->ftp_filemethod = ftpfilemethod(config, nextarg);
-        break;
-      case 's': /* --local-port */
-        rc = sscanf(nextarg, "%d - %d",
-                    &config->localport,
-                    &config->localportrange);
-        if(!rc)
-          return PARAM_BAD_USE;
-        else if(rc == 1)
-          config->localportrange = 1; /* default number of ports to try */
-        else {
-          config->localportrange -= config->localport;
-          if(config->localportrange < 1) {
-            warnf(config, "bad range input\n");
-            return PARAM_BAD_USE;
-          }
-        }
-        break;
-      case 'u': /* --ftp-alternative-to-user */
-        GetStr(&config->ftp_alternative_to_user, nextarg);
-        break;
-      case 'v': /* --ftp-ssl-reqd */
-        config->ftp_ssl_reqd = toggle;
-        break;
-      case 'w': /* --no-sessionid */
-        config->disable_sessionid = (bool)(!toggle);
-        break;
-      case 'x': /* --ftp-ssl-control */
-        config->ftp_ssl_control = toggle;
-        break;
-      case 'y': /* --ftp-ssl-ccc */
-        config->ftp_ssl_ccc = toggle;
-        if(!config->ftp_ssl_ccc_mode)
-            config->ftp_ssl_ccc_mode = CURLFTPSSL_CCC_PASSIVE;
-        break;
-      case 'j': /* --ftp-ssl-ccc-mode */
-        config->ftp_ssl_ccc = TRUE;
-        config->ftp_ssl_ccc_mode = ftpcccmethod(config, nextarg);
-        break;
-      case 'z': /* --libcurl */
-        GetStr(&config->libcurl, nextarg);
-        break;
-      case '#': /* --raw */
-        config->raw = toggle;
-        break;
-      case '0': /* --post301 */
-        config->post301 = toggle;
-        break;
-      case '1': /* --no-keepalive */
-        config->nokeepalive = (bool)(!toggle);
-        break;
-      case '3': /* --keepalive-time */
-        if(str2num(&config->alivetime, nextarg))
-          return PARAM_BAD_NUMERIC;
-        break;
-      case '4': /* --post302 */
-        config->post302 = toggle;
-        break;
-      case '5': /* --noproxy */
-        /* This specifies the noproxy list */
-        GetStr(&config->noproxy, nextarg);
-        break;
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-      case '6': /* --socks5-gssapi-service */
-        GetStr(&config->socks5_gssapi_service, nextarg);
-        break;
-      case '7': /* --socks5-gssapi-nec*/
-        config->socks5_gssapi_nec = TRUE;
-        break;
-#endif
-      case '8': /* --proxy1.0 */
-        /* http 1.0 proxy */
-        GetStr(&config->proxy, nextarg);
-        config->proxyver = CURLPROXY_HTTP_1_0;
-        break;
-      case '9': /* --tftp-blksize */
-        str2num(&config->tftp_blksize, nextarg);
-        break;
-      case 'A': /* --mail-from */
-        GetStr(&config->mail_from, nextarg);
-        break;
-      case 'B': /* --mail-rcpt */
-        /* append receiver to a list */
-        err = add2list(&config->mail_rcpt, nextarg);
-        if(err)
-          return err;
-        break;
-      case 'C': /* --ftp-pret */
-        config->ftp_pret = toggle;
-        break;
-      }
-      break;
-    case '#': /* --progress-bar */
-      if(toggle)
-        config->progressmode = CURL_PROGRESS_BAR;
-      else
-        config->progressmode = CURL_PROGRESS_STATS;
-      break;
-    case '0':
-      /* HTTP version 1.0 */
-      config->httpversion = CURL_HTTP_VERSION_1_0;
-      break;
-    case '1':
-      /* TLS version 1 */
-      config->ssl_version = CURL_SSLVERSION_TLSv1;
-      break;
-    case '2':
-      /* SSL version 2 */
-      config->ssl_version = CURL_SSLVERSION_SSLv2;
-      break;
-    case '3':
-      /* SSL version 3 */
-      config->ssl_version = CURL_SSLVERSION_SSLv3;
-      break;
-    case '4':
-      /* IPv4 */
-      config->ip_version = 4;
-      break;
-    case '6':
-      /* IPv6 */
-      config->ip_version = 6;
-      break;
-    case 'a':
-      /* This makes the FTP sessions use APPE instead of STOR */
-      config->ftp_append = toggle;
-      break;
-    case 'A':
-      /* This specifies the User-Agent name */
-      GetStr(&config->useragent, nextarg);
-      break;
-    case 'b': /* cookie string coming up: */
-      if(nextarg[0] == '@') {
-        nextarg++;
-      }
-      else if(strchr(nextarg, '=')) {
-        /* A cookie string must have a =-letter */
-        GetStr(&config->cookie, nextarg);
-        break;
-      }
-      /* We have a cookie file to read from! */
-      GetStr(&config->cookiefile, nextarg);
-      break;
-    case 'B':
-      /* use ASCII/text when transfering */
-      config->use_ascii = toggle;
-      break;
-    case 'c':
-      /* get the file name to dump all cookies in */
-      GetStr(&config->cookiejar, nextarg);
-      break;
-    case 'C':
-      /* This makes us continue an ftp transfer at given position */
-      if(!curlx_strequal(nextarg, "-")) {
-        if(str2offset(&config->resume_from, nextarg))
-          return PARAM_BAD_NUMERIC;
-        config->resume_from_current = FALSE;
-      }
-      else {
-        config->resume_from_current = TRUE;
-        config->resume_from = 0;
-      }
-      config->use_resume=TRUE;
-      break;
-    case 'd':
-      /* postfield data */
-      {
-        char *postdata=NULL;
-        FILE *file;
-
-        if(subletter == 'e') { /* --data-urlencode*/
-          /* [name]=[content], we encode the content part only
-           * [name]@[file name]
-           *
-           * Case 2: we first load the file using that name and then encode
-           * the content.
-           */
-          const char *p = strchr(nextarg, '=');
-          size_t size = 0;
-          size_t nlen;
-          char is_file;
-          if(!p)
-            /* there was no '=' letter, check for a '@' instead */
-            p = strchr(nextarg, '@');
-          if (p) {
-            nlen = p - nextarg; /* length of the name part */
-            is_file = *p++; /* pass the separator */
-          }
-          else {
-            /* neither @ nor =, so no name and it isn't a file */
-            nlen = is_file = 0;
-            p = nextarg;
-          }
-          if('@' == is_file) {
-            /* a '@' letter, it means that a file name or - (stdin) follows */
-
-            if(curlx_strequal("-", p)) {
-              file = stdin;
-              SET_BINMODE(stdin);
-            }
-            else {
-              file = fopen(p, "rb");
-              if(!file)
-                warnf(config,
-                      "Couldn't read data from file \"%s\", this makes "
-                      "an empty POST.\n", nextarg);
-            }
-
-            err = file2memory(&postdata, &size, file);
-
-            if(file && (file != stdin))
-              fclose(file);
-            if(err)
-              return err;
-          }
-          else {
-            GetStr(&postdata, p);
-            size = strlen(postdata);
-          }
-
-          if(!postdata) {
-            /* no data from the file, point to a zero byte string to make this
-               get sent as a POST anyway */
-            postdata=strdup("");
-          }
-          else {
-            char *enc = curl_easy_escape(config->easy, postdata, (int)size);
-            free(postdata); /* no matter if it worked or not */
-            if(enc) {
-              /* now make a string with the name from above and append the
-                 encoded string */
-              size_t outlen = nlen + strlen(enc) + 2;
-              char *n = malloc(outlen);
-              if(!n) {
-                curl_free(enc);
-                return PARAM_NO_MEM;
-              }
-              if (nlen > 0) /* only append '=' if we have a name */
-                snprintf(n, outlen, "%.*s=%s", nlen, nextarg, enc);
-              else
-                strcpy(n, enc);
-              curl_free(enc);
-              postdata = n;
-            }
-            else
-              return PARAM_NO_MEM;
-          }
-        }
-        else if('@' == *nextarg) {
-          size_t size = 0;
-          /* the data begins with a '@' letter, it means that a file name
-             or - (stdin) follows */
-          nextarg++; /* pass the @ */
-
-          if(curlx_strequal("-", nextarg)) {
-            file = stdin;
-            if(subletter == 'b') /* forced data-binary */
-              SET_BINMODE(stdin);
-          }
-          else {
-            file = fopen(nextarg, "rb");
-            if(!file)
-              warnf(config, "Couldn't read data from file \"%s\", this makes "
-                    "an empty POST.\n", nextarg);
-          }
-
-          if(subletter == 'b') {
-            /* forced binary */
-            err = file2memory(&postdata, &size, file);
-            config->postfieldsize = (curl_off_t)size;
-          }
-          else
-            err = file2string(&postdata, file);
-
-          if(file && (file != stdin))
-            fclose(file);
-          if(err)
-            return err;
-
-          if(!postdata) {
-            /* no data from the file, point to a zero byte string to make this
-               get sent as a POST anyway */
-            postdata=strdup("");
-          }
-        }
-        else {
-          GetStr(&postdata, nextarg);
-        }
-
-#ifdef CURL_DOES_CONVERSIONS
-        if(subletter != 'b') { /* NOT forced binary, convert to ASCII */
-          convert_to_network(postdata, strlen(postdata));
-        }
-#endif
-
-        if(config->postfields) {
-          /* we already have a string, we append this one
-             with a separating &-letter */
-          char *oldpost=config->postfields;
-          size_t newlen = strlen(oldpost) + strlen(postdata) + 2;
-          config->postfields=malloc(newlen);
-          if(!config->postfields) {
-            free(postdata);
-            return PARAM_NO_MEM;
-          }
-          /* use ASCII value 0x26 for '&' to accommodate non-ASCII platforms */
-          snprintf(config->postfields, newlen, "%s\x26%s", oldpost, postdata);
-          free(oldpost);
-          free(postdata);
-        }
-        else
-          config->postfields=postdata;
-      }
-      /*
-        We can't set the request type here, as this data might be used in
-        a simple GET if -G is used. Already or soon.
-
-        if(SetHTTPrequest(HTTPREQ_SIMPLEPOST, &config->httpreq))
-          return PARAM_BAD_USE;
-      */
-      break;
-    case 'D':
-      /* dump-header to given file name */
-      GetStr(&config->headerfile, nextarg);
-      break;
-    case 'e':
-      {
-        char *ptr = strstr(nextarg, ";auto");
-        if(ptr) {
-          /* Automatic referer requested, this may be combined with a
-             set initial one */
-          config->autoreferer = TRUE;
-          *ptr = 0; /* zero terminate here */
-        }
-        else
-          config->autoreferer = FALSE;
-        GetStr(&config->referer, nextarg);
-      }
-      break;
-    case 'E':
-      switch(subletter) {
-      case 'a': /* CA info PEM file */
-        /* CA info PEM file */
-        GetStr(&config->cacert, nextarg);
-        break;
-      case 'b': /* cert file type */
-        GetStr(&config->cert_type, nextarg);
-        break;
-      case 'c': /* private key file */
-        GetStr(&config->key, nextarg);
-        break;
-      case 'd': /* private key file type */
-        GetStr(&config->key_type, nextarg);
-        break;
-      case 'e': /* private key passphrase */
-        GetStr(&config->key_passwd, nextarg);
-        cleanarg(nextarg);
-        break;
-      case 'f': /* crypto engine */
-        GetStr(&config->engine, nextarg);
-        if (config->engine && curlx_raw_equal(config->engine,"list"))
-           config->list_engines = TRUE;
-        break;
-      case 'g': /* CA info PEM file */
-        /* CA cert directory */
-        GetStr(&config->capath, nextarg);
-        break;
-      case 'h': /* --pubkey public key file */
-        GetStr(&config->pubkey, nextarg);
-        break;
-      case 'i': /* --hostpubmd5 md5 of the host public key */
-        GetStr(&config->hostpubmd5, nextarg);
-        if (!config->hostpubmd5 || strlen(config->hostpubmd5) != 32)
-           return PARAM_BAD_USE;
-        break;
-      case 'j': /* CRL info PEM file */
-        /* CRL file */
-        GetStr(&config->crlfile, nextarg);
-        break;
-      default: /* certificate file */
-        {
-          char *ptr = strchr(nextarg, ':');
-          /* Since we live in a world of weirdness and confusion, the win32
-             dudes can use : when using drive letters and thus
-             c:\file:password needs to work. In order not to break
-             compatibility, we still use : as separator, but we try to detect
-             when it is used for a file name! On windows. */
-#ifdef WIN32
-          if(ptr &&
-             (ptr == &nextarg[1]) &&
-             (nextarg[2] == '\\' || nextarg[2] == '/') &&
-             (ISALPHA(nextarg[0])) )
-             /* colon in the second column, followed by a backslash, and the
-                first character is an alphabetic letter:
-
-                this is a drive letter colon */
-            ptr = strchr(&nextarg[3], ':'); /* find the next one instead */
-#endif
-          if(ptr) {
-            /* we have a password too */
-            *ptr=0;
-            ptr++;
-            GetStr(&config->key_passwd, ptr);
-          }
-          GetStr(&config->cert, nextarg);
-          cleanarg(nextarg);
-        }
-      }
-      break;
-    case 'f':
-      /* fail hard on errors  */
-      config->failonerror = toggle;
-      break;
-    case 'F':
-      /* "form data" simulation, this is a little advanced so lets do our best
-         to sort this out slowly and carefully */
-      if(formparse(config,
-                   nextarg,
-                   &config->httppost,
-                   &config->last_post,
-                   (bool) (subletter=='s'))) /* 's' means literal string */
-        return PARAM_BAD_USE;
-      if(SetHTTPrequest(config, HTTPREQ_POST, &config->httpreq))
-        return PARAM_BAD_USE;
-      break;
-
-    case 'g': /* g disables URLglobbing */
-      config->globoff = toggle;
-      break;
-
-    case 'G': /* HTTP GET */
-      config->use_httpget = TRUE;
-      break;
-
-    case 'h': /* h for help */
-      if(toggle) {
-        help();
-        return PARAM_HELP_REQUESTED;
-      }
-      /* we now actually support --no-help too! */
-      break;
-    case 'H':
-      /* A custom header to append to a list */
-      err = add2list(&config->headers, nextarg);
-      if(err)
-        return err;
-      break;
-    case 'i':
-      config->include_headers = toggle; /* include the headers as well in the
-                                           general output stream */
-      break;
-    case 'j':
-      config->cookiesession = toggle;
-      break;
-    case 'I':
-      /*
-       * no_body will imply include_headers later on
-       */
-      config->no_body = toggle;
-      if(SetHTTPrequest(config,
-                        (config->no_body)?HTTPREQ_HEAD:HTTPREQ_GET,
-                        &config->httpreq))
-        return PARAM_BAD_USE;
-      break;
-    case 'J': /* --remote-header-name */
-      if (config->include_headers) {
-        warnf(config,
-              "--include and --remote-header-name cannot be combined.\n");
-        return PARAM_BAD_USE;
-      }
-      config->content_disposition = toggle;
-      break;
-    case 'k': /* allow insecure SSL connects */
-      config->insecure_ok = toggle;
-      break;
-    case 'K': /* parse config file */
-      if(parseconfig(nextarg, config))
-        warnf(config, "error trying read config from the '%s' file\n",
-              nextarg);
-      break;
-    case 'l':
-      config->dirlistonly = toggle; /* only list the names of the FTP dir */
-      break;
-    case 'L':
-      config->followlocation = toggle; /* Follow Location: HTTP headers */
-      switch (subletter) {
-      case 't':
-        /* Continue to send authentication (user+password) when following
-         * locations, even when hostname changed */
-        config->unrestricted_auth = toggle;
-        break;
-      }
-      break;
-    case 'm':
-      /* specified max time */
-      if(str2num(&config->timeout, nextarg))
-        return PARAM_BAD_NUMERIC;
-      break;
-    case 'M': /* M for manual, huge help */
-      if(toggle) { /* --no-manual shows no manual... */
-#ifdef USE_MANUAL
-        hugehelp();
-        return PARAM_HELP_REQUESTED;
-#else
-        warnf(config,
-              "built-in manual was disabled at build-time!\n");
-        return PARAM_OPTION_UNKNOWN;
-#endif
-      }
-      break;
-    case 'n':
-      switch(subletter) {
-      case 'o': /* CA info PEM file */
-        /* use .netrc or URL */
-        config->netrc_opt = toggle;
-        break;
-      default:
-        /* pick info from .netrc, if this is used for http, curl will
-           automatically enfore user+password with the request */
-        config->netrc = toggle;
-        break;
-      }
-      break;
-    case 'N':
-      /* disable the output I/O buffering. note that the option is called
-         --buffer but is mostly used in the negative form: --no-buffer */
-      if(longopt)
-        config->nobuffer = (bool)(!toggle);
-      else
-        config->nobuffer = toggle;
-      break;
-    case 'O': /* --remote-name */
-      if(subletter == 'a') { /* --remote-name-all */
-        config->default_node_flags = toggle?GETOUT_USEREMOTE:0;
-        break;
-      }
-    /* fall-through! */
-    case 'o': /* --output */
-      /* output file */
-      {
-        struct getout *url;
-        if(config->url_out || (config->url_out=config->url_list)) {
-          /* there's a node here, if it already is filled-in continue to find
-             an "empty" node */
-          while(config->url_out && (config->url_out->flags&GETOUT_OUTFILE))
-            config->url_out = config->url_out->next;
-        }
-
-        /* now there might or might not be an available node to fill in! */
-
-        if(config->url_out)
-          /* existing node */
-          url = config->url_out;
-        else
-          /* there was no free node, create one! */
-          url=new_getout(config);
-
-        if(url) {
-          /* fill in the outfile */
-          if('o' == letter) {
-            GetStr(&url->outfile, nextarg);
-            url->flags &= ~GETOUT_USEREMOTE; /* switch off */
-          }
-          else {
-            url->outfile=NULL; /* leave it */
-            if(toggle)
-              url->flags |= GETOUT_USEREMOTE;  /* switch on */
-            else
-              url->flags &= ~GETOUT_USEREMOTE; /* switch off */
-          }
-          url->flags |= GETOUT_OUTFILE;
-        }
-      }
-      break;
-    case 'P':
-      /* This makes the FTP sessions use PORT instead of PASV */
-      /* use <eth0> or <192.168.10.10> style addresses. Anything except
-         this will make us try to get the "default" address.
-         NOTE: this is a changed behaviour since the released 4.1!
-         */
-      GetStr(&config->ftpport, nextarg);
-      break;
-    case 'p':
-      /* proxy tunnel for non-http protocols */
-      config->proxytunnel = toggle;
-      break;
-
-    case 'q': /* if used first, already taken care of, we do it like
-                 this so we don't cause an error! */
-      break;
-    case 'Q':
-      /* QUOTE command to send to FTP server */
-      switch(nextarg[0]) {
-      case '-':
-        /* prefixed with a dash makes it a POST TRANSFER one */
-        nextarg++;
-        err = add2list(&config->postquote, nextarg);
-        break;
-      case '+':
-        /* prefixed with a plus makes it a just-before-transfer one */
-        nextarg++;
-        err = add2list(&config->prequote, nextarg);
-        break;
-      default:
-        err = add2list(&config->quote, nextarg);
-        break;
-      }
-      if(err)
-        return err;
-      break;
-    case 'r':
-      /* Specifying a range WITHOUT A DASH will create an illegal HTTP range
-         (and won't actually be range by definition). The man page previously
-         claimed that to be a good way, why this code is added to work-around
-         it. */
-      if(ISDIGIT(*nextarg) && !strchr(nextarg, '-')) {
-        char buffer[32];
-        curl_off_t off;
-        warnf(config,
-              "A specified range MUST include at least one dash (-). "
-              "Appending one for you!\n");
-        off = curlx_strtoofft(nextarg, NULL, 10);
-        snprintf(buffer, sizeof(buffer), "%" CURL_FORMAT_CURL_OFF_T "-", off);
-        GetStr(&config->range, buffer);
-      }
-      {
-        /* byte range requested */
-        char* tmp_range;
-        tmp_range=nextarg;
-        while(*tmp_range != '\0') {
-          if(!ISDIGIT(*tmp_range)&&*tmp_range!='-'&&*tmp_range!=',') {
-            warnf(config,"Invalid character is found in given range. "
-                  "A specified range MUST have only digits in "
-                  "\'start\'-\'stop\'. The server's response to this "
-                  "request is uncertain.\n");
-            break;
-          }
-          tmp_range++;
-        }
-        /* byte range requested */
-        GetStr(&config->range, nextarg);
-      }
-      break;
-    case 'R':
-      /* use remote file's time */
-      config->remote_time = toggle;
-      break;
-    case 's':
-      /* don't show progress meter, don't show errors : */
-      if(toggle)
-        config->mute = config->noprogress = TRUE;
-      else
-        config->mute = config->noprogress = FALSE;
-      config->showerror = (bool)(!toggle); /* toggle off */
-      break;
-    case 'S':
-      /* show errors */
-      config->showerror = toggle; /* toggle on if used with -s */
-      break;
-    case 't':
-      /* Telnet options */
-      err = add2list(&config->telnet_options, nextarg);
-      if(err)
-        return err;
-      break;
-    case 'T':
-      /* we are uploading */
-      {
-        struct getout *url;
-        if(config->url_out || (config->url_out=config->url_list)) {
-          /* there's a node here, if it already is filled-in continue to find
-             an "empty" node */
-          while(config->url_out && (config->url_out->flags&GETOUT_UPLOAD))
-            config->url_out = config->url_out->next;
-        }
-
-        /* now there might or might not be an available node to fill in! */
-
-        if(config->url_out)
-          /* existing node */
-          url = config->url_out;
-        else
-          /* there was no free node, create one! */
-          url=new_getout(config);
-
-        if(url) {
-          url->flags |= GETOUT_UPLOAD; /* mark -T used */
-          if(!*nextarg)
-            url->flags |= GETOUT_NOUPLOAD;
-          else {
-            /* "-" equals stdin, but keep the string around for now */
-            GetStr(&url->infile, nextarg);
-          }
-        }
-      }
-      break;
-    case 'u':
-      /* user:password  */
-      GetStr(&config->userpwd, nextarg);
-      cleanarg(nextarg);
-      checkpasswd("host", &config->userpwd);
-      break;
-    case 'U':
-      /* Proxy user:password  */
-      GetStr(&config->proxyuserpwd, nextarg);
-      cleanarg(nextarg);
-      checkpasswd("proxy", &config->proxyuserpwd);
-      break;
-    case 'v':
-      if(toggle) {
-        /* the '%' thing here will cause the trace get sent to stderr */
-        GetStr(&config->trace_dump, (char *)"%");
-        if(config->tracetype && (config->tracetype != TRACE_PLAIN))
-          warnf(config,
-                "-v/--verbose overrides an earlier trace/verbose option\n");
-        config->tracetype = TRACE_PLAIN;
-      }
-      else
-        /* verbose is disabled here */
-        config->tracetype = TRACE_NONE;
-      break;
-    case 'V':
-    {
-      const char * const *proto;
-
-      if(!toggle)
-        /* --no-version yields no output! */
-        break;
-
-      printf(CURL_ID "%s\n", curl_version());
-      if (curlinfo->protocols) {
-        printf("Protocols: ");
-        for (proto=curlinfo->protocols; *proto; ++proto) {
-          printf("%s ", *proto);
-        }
-        puts(""); /* newline */
-      }
-      if(curlinfo->features) {
-        unsigned int i;
-        struct feat {
-          const char *name;
-          int bitmask;
-        };
-        static const struct feat feats[] = {
-          {"AsynchDNS", CURL_VERSION_ASYNCHDNS},
-          {"Debug", CURL_VERSION_DEBUG},
-          {"TrackMemory", CURL_VERSION_CURLDEBUG},
-          {"GSS-Negotiate", CURL_VERSION_GSSNEGOTIATE},
-          {"IDN", CURL_VERSION_IDN},
-          {"IPv6", CURL_VERSION_IPV6},
-          {"Largefile", CURL_VERSION_LARGEFILE},
-          {"NTLM", CURL_VERSION_NTLM},
-          {"SPNEGO", CURL_VERSION_SPNEGO},
-          {"SSL",  CURL_VERSION_SSL},
-          {"SSPI",  CURL_VERSION_SSPI},
-          {"krb4", CURL_VERSION_KERBEROS4},
-          {"libz", CURL_VERSION_LIBZ},
-          {"CharConv", CURL_VERSION_CONV}
-        };
-        printf("Features: ");
-        for(i=0; i<sizeof(feats)/sizeof(feats[0]); i++) {
-          if(curlinfo->features & feats[i].bitmask)
-            printf("%s ", feats[i].name);
-        }
-        puts(""); /* newline */
-      }
-    }
-    return PARAM_HELP_REQUESTED;
-    case 'w':
-      /* get the output string */
-      if('@' == *nextarg) {
-        /* the data begins with a '@' letter, it means that a file name
-           or - (stdin) follows */
-        FILE *file;
-        const char *fname;
-        nextarg++; /* pass the @ */
-        if(curlx_strequal("-", nextarg)) {
-          fname = "<stdin>";
-          file = stdin;
-        }
-        else {
-          fname = nextarg;
-          file = fopen(nextarg, "r");
-        }
-        err = file2string(&config->writeout, file);
-        if(file && (file != stdin))
-          fclose(file);
-        if(err)
-          return err;
-        if(!config->writeout)
-          warnf(config, "Failed to read %s", fname);
-      }
-      else
-        GetStr(&config->writeout, nextarg);
-      break;
-    case 'x':
-      /* proxy */
-      GetStr(&config->proxy, nextarg);
-      config->proxyver = CURLPROXY_HTTP;
-      break;
-    case 'X':
-      /* set custom request */
-      GetStr(&config->customrequest, nextarg);
-      break;
-    case 'y':
-      /* low speed time */
-      if(str2num(&config->low_speed_time, nextarg))
-        return PARAM_BAD_NUMERIC;
-      if(!config->low_speed_limit)
-        config->low_speed_limit = 1;
-      break;
-    case 'Y':
-      /* low speed limit */
-      if(str2num(&config->low_speed_limit, nextarg))
-        return PARAM_BAD_NUMERIC;
-      if(!config->low_speed_time)
-        config->low_speed_time=30;
-      break;
-    case 'z': /* time condition coming up */
-      switch(*nextarg) {
-      case '+':
-        nextarg++;
-      default:
-        /* If-Modified-Since: (section 14.28 in RFC2068) */
-        config->timecond = CURL_TIMECOND_IFMODSINCE;
-        break;
-      case '-':
-        /* If-Unmodified-Since:  (section 14.24 in RFC2068) */
-        config->timecond = CURL_TIMECOND_IFUNMODSINCE;
-        nextarg++;
-        break;
-      case '=':
-        /* Last-Modified:  (section 14.29 in RFC2068) */
-        config->timecond = CURL_TIMECOND_LASTMOD;
-        nextarg++;
-        break;
-      }
-      now=time(NULL);
-      config->condtime=curl_getdate(nextarg, &now);
-      if(-1 == (int)config->condtime) {
-        /* now let's see if it is a file name to get the time from instead! */
-        struct_stat statbuf;
-        if(-1 == stat(nextarg, &statbuf)) {
-          /* failed, remove time condition */
-          config->timecond = CURL_TIMECOND_NONE;
-          warnf(config,
-                "Illegal date format for -z/--timecond (and not "
-                "a file name). Disabling time condition. "
-                "See curl_getdate(3) for valid date syntax.\n");
-        }
-        else {
-          /* pull the time out from the file */
-          config->condtime = statbuf.st_mtime;
-        }
-      }
-      break;
-    default: /* unknown flag */
-      return PARAM_OPTION_UNKNOWN;
-    }
-    hit = -1;
-
-  } while(!longopt && !singleopt && *++parse && !*usedarg);
-
-  return PARAM_OK;
-}
-
-/*
- * Copies the string from line to the buffer at param, unquoting
- * backslash-quoted characters and NUL-terminating the output string.
- * Stops at the first non-backslash-quoted double quote character or the
- * end of the input string. param must be at least as long as the input
- * string.  Returns the pointer after the last handled input character.
- */
-static const char *unslashquote(const char *line, char *param)
-{
-  while(*line && (*line != '\"')) {
-    if(*line == '\\') {
-      char out;
-      line++;
-
-      /* default is to output the letter after the backslash */
-      switch(out = *line) {
-      case '\0':
-        continue; /* this'll break out of the loop */
-      case 't':
-        out='\t';
-        break;
-      case 'n':
-        out='\n';
-        break;
-      case 'r':
-        out='\r';
-        break;
-      case 'v':
-        out='\v';
-        break;
-      }
-      *param++=out;
-      line++;
-    }
-    else
-      *param++=*line++;
-  }
-  *param=0; /* always zero terminate */
-  return line;
-}
-
-/* return 0 on everything-is-fine, and non-zero otherwise */
-static int parseconfig(const char *filename,
-                       struct Configurable *config)
-{
-  int res;
-  FILE *file;
-  char filebuffer[512];
-  bool usedarg;
-  char *home;
-  int rc = 0;
-
-  if(!filename || !*filename) {
-    /* NULL or no file name attempts to load .curlrc from the homedir! */
-
-#define CURLRC DOT_CHAR "curlrc"
-
-#ifndef __AMIGA__
-    filename = CURLRC;   /* sensible default */
-    home = homedir();    /* portable homedir finder */
-    if(home) {
-      if(strlen(home)<(sizeof(filebuffer)-strlen(CURLRC))) {
-        snprintf(filebuffer, sizeof(filebuffer),
-                 "%s%s%s", home, DIR_CHAR, CURLRC);
-
-#ifdef WIN32
-        /* Check if the file exists - if not, try CURLRC in the same
-         * directory as our executable
-         */
-        file = fopen(filebuffer, "r");
-        if (file != NULL) {
-          fclose(file);
-          filename = filebuffer;
-        }
-        else {
-          /* Get the filename of our executable. GetModuleFileName is
-           * already declared via inclusions done in setup header file.
-           * We assume that we are using the ASCII version here.
-           */
-          int n = GetModuleFileName(0, filebuffer, sizeof(filebuffer));
-          if (n > 0 && n < (int)sizeof(filebuffer)) {
-            /* We got a valid filename - get the directory part */
-            char *lastdirchar = strrchr(filebuffer, '\\');
-            if (lastdirchar) {
-              size_t remaining;
-              *lastdirchar = 0;
-              /* If we have enough space, build the RC filename */
-              remaining = sizeof(filebuffer) - strlen(filebuffer);
-              if (strlen(CURLRC) < remaining - 1) {
-                snprintf(lastdirchar, remaining,
-                         "%s%s", DIR_CHAR, CURLRC);
-                /* Don't bother checking if it exists - we do
-                 * that later
-                 */
-                filename = filebuffer;
-              }
-            }
-          }
-        }
-#else /* WIN32 */
-        filename = filebuffer;
-#endif /* WIN32 */
-      }
-      free(home); /* we've used it, now free it */
-    }
-
-# else /* __AMIGA__ */
-  /* On AmigaOS all the config files are into env:
-   */
-  filename = "ENV:" CURLRC;
-
-#endif
-  }
-
-  if(strcmp(filename,"-"))
-    file = fopen(filename, "r");
-  else
-    file = stdin;
-
-  if(file) {
-    char *line;
-    char *aline;
-    char *option;
-    char *param;
-    int lineno=0;
-    bool alloced_param;
-
-#define ISSEP(x) (((x)=='=') || ((x) == ':'))
-
-    while (NULL != (aline = my_get_line(file))) {
-      lineno++;
-      line = aline;
-      alloced_param=FALSE;
-
-      /* line with # in the first non-blank column is a comment! */
-      while(*line && ISSPACE(*line))
-        line++;
-
-      switch(*line) {
-      case '#':
-      case '/':
-      case '\r':
-      case '\n':
-      case '*':
-      case '\0':
-        free(aline);
-        continue;
-      }
-
-      /* the option keywords starts here */
-      option = line;
-      while(*line && !ISSPACE(*line) && !ISSEP(*line))
-        line++;
-      /* ... and has ended here */
-
-      if(*line)
-        *line++=0; /* zero terminate, we have a local copy of the data */
-
-#ifdef DEBUG_CONFIG
-      fprintf(stderr, "GOT: %s\n", option);
-#endif
-
-      /* pass spaces and separator(s) */
-      while(*line && (ISSPACE(*line) || ISSEP(*line)))
-        line++;
-
-      /* the parameter starts here (unless quoted) */
-      if(*line == '\"') {
-        /* quoted parameter, do the quote dance */
-        line++;
-        param=malloc(strlen(line)+1); /* parameter */
-        if (!param) {
-          /* out of memory */
-          free(aline);
-          rc = 1;
-          break;
-        }
-        alloced_param=TRUE;
-        line = (char*) unslashquote(line, param);
-      }
-      else {
-        param=line; /* parameter starts here */
-        while(*line && !ISSPACE(*line))
-          line++;
-        *line=0; /* zero terminate */
-      }
-
-      if (param && !*param) {
-        /* do this so getparameter can check for required parameters.
-           Otherwise it always thinks there's a parameter. */
-        if (alloced_param)
-          free(param);
-        param = NULL;
-      }
-
-#ifdef DEBUG_CONFIG
-      fprintf(stderr, "PARAM: \"%s\"\n",(param ? param : "(null)"));
-#endif
-      res = getparameter(option, param, &usedarg, config);
-
-      if (param && *param && !usedarg)
-        /* we passed in a parameter that wasn't used! */
-        res = PARAM_GOT_EXTRA_PARAMETER;
-
-      if(res != PARAM_OK) {
-        /* the help request isn't really an error */
-        if(!strcmp(filename, "-")) {
-          filename=(char *)"<stdin>";
-        }
-        if(PARAM_HELP_REQUESTED != res) {
-          const char *reason = param2text(res);
-          warnf(config, "%s:%d: warning: '%s' %s\n",
-                filename, lineno, option, reason);
-        }
-      }
-
-      if(alloced_param)
-      {
-        free(param);
-        param = NULL;
-      }
-
-      free(aline);
-    }
-    if(file != stdin)
-      fclose(file);
-  }
-  else
-    rc = 1; /* couldn't open the file */
-  return rc;
-}
-
-static void go_sleep(long ms)
-{
-#ifdef HAVE_POLL_FINE
-  /* portable subsecond "sleep" */
-  poll((void *)0, 0, (int)ms);
-#else
-  /* systems without poll() need other solutions */
-
-#ifdef WIN32
-  /* Windows offers a millisecond sleep */
-  Sleep(ms);
-#elif defined(MSDOS)
-  delay(ms);
-#else
-  /* Other systems must use select() for this */
-  struct timeval timeout;
-
-  timeout.tv_sec = ms/1000;
-  ms = ms%1000;
-  timeout.tv_usec = ms * 1000;
-
-  select(0, NULL,  NULL, NULL, &timeout);
-#endif
-
-#endif
-}
-
-static size_t my_fwrite(void *buffer, size_t sz, size_t nmemb, void *stream)
-{
-  size_t rc;
-  struct OutStruct *out=(struct OutStruct *)stream;
-  struct Configurable *config = out->config;
-
-  /*
-   * Once that libcurl has called back my_fwrite() the returned value
-   * is checked against the amount that was intended to be written, if
-   * it does not match then it fails with CURLE_WRITE_ERROR. So at this
-   * point returning a value different from sz*nmemb indicates failure.
-   */
-  const size_t err_rc = (sz * nmemb) ? 0 : 1;
-
-  if(!out->stream) {
-    if (!out->filename) {
-      warnf(config, "Remote filename has no length!\n");
-      return err_rc; /* Failure */
-    }
-
-    if (config->content_disposition) {
-      /* don't overwrite existing files */
-      FILE* f = fopen(out->filename, "r");
-      if (f) {
-        fclose(f);
-        warnf(config, "Refusing to overwrite %s: %s\n", out->filename,
-              strerror(EEXIST));
-        return err_rc; /* Failure */
-      }
-    }
-
-    /* open file for writing */
-    out->stream=fopen(out->filename, "wb");
-    if(!out->stream) {
-      warnf(config, "Failed to create the file %s: %s\n", out->filename,
-            strerror(errno));
-      return err_rc; /* failure */
-    }
-  }
-
-  rc = fwrite(buffer, sz, nmemb, out->stream);
-
-  if((sz * nmemb) == rc) {
-    /* we added this amount of data to the output */
-    out->bytes += (sz * nmemb);
-  }
-
-  if(config->readbusy) {
-    config->readbusy = FALSE;
-    curl_easy_pause(config->easy, CURLPAUSE_CONT);
-  }
-
-  if(config->nobuffer) {
-    /* disable output buffering */
-    int res = fflush(out->stream);
-    if(res) {
-      /* return a value that isn't the same as sz * nmemb */
-      return err_rc; /* failure */
-    }
-  }
-
-  return rc;
-}
-
-struct InStruct {
-  int fd;
-  struct Configurable *config;
-};
-
-#define MAX_SEEK 2147483647
-
-/*
- * my_seek() is the CURLOPT_SEEKFUNCTION we use
- */
-static int my_seek(void *stream, curl_off_t offset, int whence)
-{
-  struct InStruct *in=(struct InStruct *)stream;
-
-#if (CURL_SIZEOF_CURL_OFF_T > SIZEOF_OFF_T) && !defined(USE_WIN32_LARGE_FILES)
-  /* The offset check following here is only interesting if curl_off_t is
-     larger than off_t and we are not using the WIN32 large file support
-     macros that provide the support to do 64bit seeks correctly */
-
-  if(offset > MAX_SEEK) {
-    /* Some precaution code to work around problems with different data sizes
-       to allow seeking >32bit even if off_t is 32bit. Should be very rare and
-       is really valid on weirdo-systems. */
-    curl_off_t left = offset;
-
-    if(whence != SEEK_SET)
-      /* this code path doesn't support other types */
-      return 1;
-
-    if(LSEEK_ERROR == lseek(in->fd, 0, SEEK_SET))
-      /* couldn't rewind to beginning */
-      return 1;
-
-    while(left) {
-      long step = (left>MAX_SEEK ? MAX_SEEK : (long)left);
-      if(LSEEK_ERROR == lseek(in->fd, step, SEEK_CUR))
-        /* couldn't seek forwards the desired amount */
-        return 1;
-      left -= step;
-    }
-    return 0;
-  }
-#endif
-  if(LSEEK_ERROR == lseek(in->fd, offset, whence))
-    /* couldn't rewind, the reason is in errno but errno is just not portable
-       enough and we don't actually care that much why we failed. We'll let
-       libcurl know that it may try other means if it wants to. */
-    return CURL_SEEKFUNC_CANTSEEK;
-
-  return 0;
-}
-
-static size_t my_fread(void *buffer, size_t sz, size_t nmemb, void *userp)
-{
-  ssize_t rc;
-  struct InStruct *in=(struct InStruct *)userp;
-
-  rc = read(in->fd, buffer, sz*nmemb);
-  if(rc < 0) {
-    if(errno == EAGAIN) {
-      errno = 0;
-      in->config->readbusy = TRUE;
-      return CURL_READFUNC_PAUSE;
-    }
-    /* since size_t is unsigned we can't return negative values fine */
-    rc = 0;
-  }
-  in->config->readbusy = FALSE;
-  return (size_t)rc;
-}
-
-struct ProgressData {
-  int calls;
-  curl_off_t prev;
-  int width;
-  FILE *out; /* where to write everything to */
-  curl_off_t initial_size;
-};
-
-static int myprogress (void *clientp,
-                       double dltotal,
-                       double dlnow,
-                       double ultotal,
-                       double ulnow)
-{
-  /* The original progress-bar source code was written for curl by Lars Aas,
-     and this new edition inherits some of his concepts. */
-
-  char line[256];
-  char outline[256];
-  char format[40];
-  double frac;
-  double percent;
-  int barwidth;
-  int num;
-  int i;
-
-  struct ProgressData *bar = (struct ProgressData *)clientp;
-  curl_off_t total = (curl_off_t)dltotal + (curl_off_t)ultotal +
-    bar->initial_size; /* expected transfer size */
-  curl_off_t point = (curl_off_t)dlnow + (curl_off_t)ulnow +
-    bar->initial_size; /* we've come this far */
-
-  if(point > total)
-    /* we have got more than the expected total! */
-    total = point;
-
-  bar->calls++; /* simply count invokes */
-
-  if(total < 1) {
-    curl_off_t prevblock = bar->prev / 1024;
-    curl_off_t thisblock = point / 1024;
-    while ( thisblock > prevblock ) {
-      fprintf( bar->out, "#" );
-      prevblock++;
-    }
-  }
-  else {
-    frac = (double)point / (double)total;
-    percent = frac * 100.0f;
-    barwidth = bar->width - 7;
-    num = (int) (((double)barwidth) * frac);
-    for ( i = 0; i < num; i++ ) {
-      line[i] = '#';
-    }
-    line[i] = '\0';
-    snprintf( format, sizeof(format), "%%-%ds %%5.1f%%%%", barwidth );
-    snprintf( outline, sizeof(outline), format, line, percent );
-    fprintf( bar->out, "\r%s", outline );
-  }
-  fflush(bar->out);
-  bar->prev = point;
-
-  return 0;
-}
-
-static
-void progressbarinit(struct ProgressData *bar,
-                     struct Configurable *config)
-{
-#ifdef __EMX__
-  /* 20000318 mgs */
-  int scr_size [2];
-#endif
-  char *colp;
-
-  memset(bar, 0, sizeof(struct ProgressData));
-
-  /* pass this through to progress function so
-   * it can display progress towards total file
-   * not just the part that's left. (21-may-03, dbyron) */
-  if (config->use_resume)
-    bar->initial_size = config->resume_from;
-
-/* TODO: get terminal width through ansi escapes or something similar.
-         try to update width when xterm is resized... - 19990617 larsa */
-#ifndef __EMX__
-  /* 20000318 mgs
-   * OS/2 users most likely won't have this env var set, and besides that
-   * we're using our own way to determine screen width */
-  colp = curlx_getenv("COLUMNS");
-  if (colp != NULL) {
-    bar->width = atoi(colp);
-    curl_free(colp);
-  }
-  else
-    bar->width = 79;
-#else
-  /* 20000318 mgs
-   * We use this emx library call to get the screen width, and subtract
-   * one from what we got in order to avoid a problem with the cursor
-   * advancing to the next line if we print a string that is as long as
-   * the screen is wide. */
-
-  _scrsize(scr_size);
-  bar->width = scr_size[0] - 1;
-#endif
-
-  bar->out = config->errors;
-}
-
-
-static
-void dump(const char *timebuf, const char *text,
-          FILE *stream, const unsigned char *ptr, size_t size,
-          trace tracetype, curl_infotype infotype)
-{
-  size_t i;
-  size_t c;
-
-  unsigned int width=0x10;
-
-  if(tracetype == TRACE_ASCII)
-    /* without the hex output, we can fit more on screen */
-    width = 0x40;
-
-  fprintf(stream, "%s%s, %zd bytes (0x%zx)\n", timebuf, text, size, size);
-
-  for(i=0; i<size; i+= width) {
-
-    fprintf(stream, "%04zx: ", i);
-
-    if(tracetype == TRACE_BIN) {
-      /* hex not disabled, show it */
-      for(c = 0; c < width; c++)
-        if(i+c < size)
-          fprintf(stream, "%02x ", ptr[i+c]);
-        else
-          fputs("   ", stream);
-    }
-
-    for(c = 0; (c < width) && (i+c < size); c++) {
-      /* check for 0D0A; if found, skip past and start a new line of output */
-      if ((tracetype == TRACE_ASCII) &&
-          (i+c+1 < size) && ptr[i+c]==0x0D && ptr[i+c+1]==0x0A) {
-        i+=(c+2-width);
-        break;
-      }
-#ifdef CURL_DOES_CONVERSIONS
-      /* repeat the 0D0A check above but use the host encoding for CRLF */
-      if ((tracetype == TRACE_ASCII) &&
-          (i+c+1 < size) && ptr[i+c]=='\r' && ptr[i+c+1]=='\n') {
-        i+=(c+2-width);
-        break;
-      }
-      /* convert to host encoding and print this character */
-      fprintf(stream, "%c", convert_char(infotype, ptr[i+c]));
-#else
-      (void)infotype;
-      fprintf(stream, "%c",
-              (ptr[i+c]>=0x20) && (ptr[i+c]<0x80)?ptr[i+c]:UNPRINTABLE_CHAR);
-#endif /* CURL_DOES_CONVERSIONS */
-      /* check again for 0D0A, to avoid an extra \n if it's at width */
-      if ((tracetype == TRACE_ASCII) &&
-          (i+c+2 < size) && ptr[i+c+1]==0x0D && ptr[i+c+2]==0x0A) {
-        i+=(c+3-width);
-        break;
-      }
-    }
-    fputc('\n', stream); /* newline */
-  }
-  fflush(stream);
-}
-
-static
-int my_trace(CURL *handle, curl_infotype type,
-             unsigned char *data, size_t size,
-             void *userp)
-{
-  struct Configurable *config = (struct Configurable *)userp;
-  FILE *output=config->errors;
-  const char *text;
-  struct timeval tv;
-  struct tm *now;
-  char timebuf[20];
-  time_t secs;
-  static time_t epoch_offset;
-  static int    known_offset;
-
-  (void)handle; /* prevent compiler warning */
-
-  if(config->tracetime) {
-    tv = cutil_tvnow();
-    if(!known_offset) {
-      epoch_offset = time(NULL) - tv.tv_sec;
-      known_offset = 1;
-    }
-    secs = epoch_offset + tv.tv_sec;
-    now = localtime(&secs);  /* not thread safe but we don't care */
-    snprintf(timebuf, sizeof(timebuf), "%02d:%02d:%02d.%06ld ",
-             now->tm_hour, now->tm_min, now->tm_sec, (long)tv.tv_usec);
-  }
-  else
-    timebuf[0]=0;
-
-  if(!config->trace_stream) {
-    /* open for append */
-    if(curlx_strequal("-", config->trace_dump))
-      config->trace_stream = stdout;
-    else if(curlx_strequal("%", config->trace_dump))
-      /* Ok, this is somewhat hackish but we do it undocumented for now */
-      config->trace_stream = config->errors;  /* aka stderr */
-    else {
-      config->trace_stream = fopen(config->trace_dump, "w");
-      config->trace_fopened = TRUE;
-    }
-  }
-
-  if(config->trace_stream)
-    output = config->trace_stream;
-
-  if(!output) {
-    warnf(config, "Failed to create/open output");
-    return 0;
-  }
-
-  if(config->tracetype == TRACE_PLAIN) {
-    /*
-     * This is the trace look that is similar to what libcurl makes on its
-     * own.
-     */
-    static const char * const s_infotype[] = {
-      "*", "<", ">", "{", "}", "{", "}"
-    };
-    size_t i;
-    size_t st=0;
-    static bool newl = FALSE;
-    static bool traced_data = FALSE;
-
-    switch(type) {
-    case CURLINFO_HEADER_OUT:
-      for(i=0; i<size-1; i++) {
-        if(data[i] == '\n') { /* LF */
-          if(!newl) {
-            fprintf(output, "%s%s ", timebuf, s_infotype[type]);
-          }
-          (void)fwrite(data+st, i-st+1, 1, output);
-          st = i+1;
-          newl = FALSE;
-        }
-      }
-      if(!newl)
-        fprintf(output, "%s%s ", timebuf, s_infotype[type]);
-      (void)fwrite(data+st, i-st+1, 1, output);
-      newl = (bool)(size && (data[size-1] != '\n'));
-      traced_data = FALSE;
-      break;
-    case CURLINFO_TEXT:
-    case CURLINFO_HEADER_IN:
-      if(!newl)
-        fprintf(output, "%s%s ", timebuf, s_infotype[type]);
-      (void)fwrite(data, size, 1, output);
-      newl = (bool)(size && (data[size-1] != '\n'));
-      traced_data = FALSE;
-      break;
-    case CURLINFO_DATA_OUT:
-    case CURLINFO_DATA_IN:
-    case CURLINFO_SSL_DATA_IN:
-    case CURLINFO_SSL_DATA_OUT:
-      if(!traced_data) {
-        /* if the data is output to a tty and we're sending this debug trace
-           to stderr or stdout, we don't display the alert about the data not
-           being shown as the data _is_ shown then just not via this
-           function */
-        if(!config->isatty ||
-           ((output != stderr) && (output != stdout))) {
-          if(!newl)
-            fprintf(output, "%s%s ", timebuf, s_infotype[type]);
-          fprintf(output, "[data not shown]\n");
-          newl = FALSE;
-          traced_data = TRUE;
-        }
-      }
-      break;
-    default: /* nada */
-      newl = FALSE;
-      traced_data = FALSE;
-      break;
-    }
-
-    return 0;
-  }
-
-#ifdef CURL_DOES_CONVERSIONS
-  /* Special processing is needed for CURLINFO_HEADER_OUT blocks
-   * if they contain both headers and data (separated by CRLFCRLF).
-   * We dump the header text and then switch type to CURLINFO_DATA_OUT.
-   */
-  if((type == CURLINFO_HEADER_OUT) && (size > 4)) {
-    size_t i;
-    for(i = 0; i < size - 4; i++) {
-      if(memcmp(&data[i], "\r\n\r\n", 4) == 0) {
-        /* dump everthing through the CRLFCRLF as a sent header */
-        text = "=> Send header";
-        dump(timebuf, text, output, data, i+4, config->tracetype, type);
-        data += i + 3;
-        size -= i + 4;
-        type = CURLINFO_DATA_OUT;
-        data += 1;
-        break;
-      }
-    }
-  }
-#endif /* CURL_DOES_CONVERSIONS */
-
-  switch (type) {
-  case CURLINFO_TEXT:
-    fprintf(output, "%s== Info: %s", timebuf, data);
-  default: /* in case a new one is introduced to shock us */
-    return 0;
-
-  case CURLINFO_HEADER_OUT:
-    text = "=> Send header";
-    break;
-  case CURLINFO_DATA_OUT:
-    text = "=> Send data";
-    break;
-  case CURLINFO_HEADER_IN:
-    text = "<= Recv header";
-    break;
-  case CURLINFO_DATA_IN:
-    text = "<= Recv data";
-    break;
-  case CURLINFO_SSL_DATA_IN:
-    text = "<= Recv SSL data";
-    break;
-  case CURLINFO_SSL_DATA_OUT:
-    text = "=> Send SSL data";
-    break;
-  }
-
-  dump(timebuf, text, output, data, size, config->tracetype, type);
-  return 0;
-}
-
-static void free_config_fields(struct Configurable *config)
-{
-  if(config->random_file)
-    free(config->random_file);
-  if(config->egd_file)
-    free(config->egd_file);
-  if(config->trace_dump)
-    free(config->trace_dump);
-  if(config->cipher_list)
-    free(config->cipher_list);
-  if(config->userpwd)
-    free(config->userpwd);
-  if(config->postfields)
-    free(config->postfields);
-  if(config->proxy)
-    free(config->proxy);
-  if(config->proxyuserpwd)
-    free(config->proxyuserpwd);
-  if(config->noproxy)
-    free(config->noproxy);
-  if(config->cookie)
-    free(config->cookie);
-  if(config->cookiefile)
-    free(config->cookiefile);
-  if(config->krblevel)
-    free(config->krblevel);
-  if(config->headerfile)
-    free(config->headerfile);
-  if(config->ftpport)
-    free(config->ftpport);
-  if(config->range)
-    free(config->range);
-  if(config->customrequest)
-    free(config->customrequest);
-  if(config->writeout)
-    free(config->writeout);
-  if(config->httppost)
-    curl_formfree(config->httppost);
-  if (config->cert)
-    free(config->cert);
-  if(config->cacert)
-    free(config->cacert);
-  if (config->cert_type)
-    free(config->cert_type);
-  if(config->capath)
-    free(config->capath);
-  if(config->crlfile)
-    free(config->crlfile);
-  if(config->cookiejar)
-    free(config->cookiejar);
-  if(config->ftp_account)
-    free(config->ftp_account);
-  if(config->ftp_alternative_to_user)
-    free(config->ftp_alternative_to_user);
-  if(config->iface)
-    free(config->iface);
-  if(config->socksproxy)
-    free(config->socksproxy);
-  if(config->libcurl)
-    free(config->libcurl);
-  if (config->key_passwd)
-    free(config->key_passwd);
-  if (config->key)
-    free(config->key);
-  if (config->key_type)
-    free(config->key_type);
-  if (config->pubkey)
-    free(config->pubkey);
-  if (config->referer)
-    free(config->referer);
-  if (config->hostpubmd5)
-    free(config->hostpubmd5);
-  if(config->mail_from)
-    free(config->mail_from);
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-  if(config->socks5_gssapi_service)
-    free(config->socks5_gssapi_service);
-#endif
-
-  curl_slist_free_all(config->quote); /* checks for config->quote == NULL */
-  curl_slist_free_all(config->prequote);
-  curl_slist_free_all(config->postquote);
-  curl_slist_free_all(config->headers);
-  curl_slist_free_all(config->telnet_options);
-  curl_slist_free_all(config->mail_rcpt);
-
-  if(config->easy)
-    curl_easy_cleanup(config->easy);
-}
-
-#ifdef WIN32
-
-/* Function to find CACert bundle on a Win32 platform using SearchPath.
- * (SearchPath is already declared via inclusions done in setup header file)
- * (Use the ASCII version instead of the unicode one!)
- * The order of the directories it searches is:
- *  1. application's directory
- *  2. current working directory
- *  3. Windows System directory (e.g. C:\windows\system32)
- *  4. Windows Directory (e.g. C:\windows)
- *  5. all directories along %PATH%
- */
-static void FindWin32CACert(struct Configurable *config,
-                            const char *bundle_file)
-{
-  /* only check for cert file if "we" support SSL */
-  if(curlinfo->features & CURL_VERSION_SSL) {
-    DWORD buflen;
-    char *ptr = NULL;
-    char *retval = malloc(sizeof (TCHAR) * (MAX_PATH + 1));
-    if (!retval)
-      return;
-    retval[0] = '\0';
-    buflen = SearchPathA(NULL, bundle_file, NULL, MAX_PATH+2, retval, &ptr);
-    if (buflen > 0) {
-      GetStr(&config->cacert, retval);
-    }
-    free(retval);
-  }
-}
-
-#endif
-
-#define RETRY_SLEEP_DEFAULT 1000  /* ms */
-#define RETRY_SLEEP_MAX     600000 /* ms == 10 minutes */
-
-static bool
-output_expected(const char* url, const char* uploadfile)
-{
-  if(!uploadfile)
-    return TRUE;  /* download */
-  if(checkprefix("http://", url) || checkprefix("https://", url))
-    return TRUE;   /* HTTP(S) upload */
-
-  return FALSE; /* non-HTTP upload, probably no output should be expected */
-}
-
-#define my_setopt(x,y,z) _my_setopt(x, 0, config, #y, y, z)
-#define my_setopt_str(x,y,z) _my_setopt(x, 1, config, #y, y, z)
-
-static struct curl_slist *easycode;
-
-static CURLcode _my_setopt(CURL *curl, bool str, struct Configurable *config,
-                           const char *name, CURLoption tag, ...);
-
-static CURLcode _my_setopt(CURL *curl, bool str, struct Configurable *config,
-                           const char *name, CURLoption tag, ...)
-{
-  va_list arg;
-  CURLcode ret;
-  char *bufp;
-  char value[256];
-  bool remark=FALSE;
-
-  va_start(arg, tag);
-
-  if(tag < CURLOPTTYPE_OBJECTPOINT) {
-    long lval = va_arg(arg, long);
-    snprintf(value, sizeof(value), "%ld", lval);
-    ret = curl_easy_setopt(curl, tag, lval);
-
-  }
-  else if(tag < CURLOPTTYPE_OFF_T) {
-    void *pval = va_arg(arg, void *);
-    unsigned char *ptr = (unsigned char *)pval;
-
-    /* function pointers are never printable */
-    if (tag >= CURLOPTTYPE_FUNCTIONPOINT) {
-      if (pval) {
-        snprintf(value, sizeof(value), "%p", pval);
-        remark = TRUE;
-      }
-      else
-        strcpy(value, "NULL");
-    }
-
-    else if(pval && str)
-      snprintf(value, sizeof(value), "\"%s\"", (char *)ptr);
-    else if(pval) {
-      snprintf(value, sizeof(value), "%p", pval);
-      remark = TRUE;
-    }
-    else {
-      strcpy(value, "NULL"); /* value fits more than 5 bytes */
-    }
-    ret = curl_easy_setopt(curl, tag, pval);
-
-  }
-  else {
-    curl_off_t oval = va_arg(arg, curl_off_t);
-    snprintf(value, sizeof(value), "%" CURL_FORMAT_CURL_OFF_T, oval);
-    ret = curl_easy_setopt(curl, tag, oval);
-  }
-
-  if(config->libcurl) {
-    /* we only use this for real if --libcurl was used */
-
-    bufp = curlx_maprintf("%scurl_easy_setopt(hnd, %s, %s);%s",
-                          remark?"/* ":"", name, value,
-                          remark?" [REMARK] */":"");
-
-    if (!bufp || !curl_slist_append(easycode, bufp))
-      ret = CURLE_OUT_OF_MEMORY;
-    if (bufp)
-      curl_free(bufp);
-  }
-  va_end(arg);
-
-  return ret;
-}
-
-static const char * const srchead[]={
-  "/********* Sample code generated by the curl command line tool **********",
-  " * Lines with [REMARK] below might need to be modified to make this code ",
-  " * usable. Add error code checking where appropriate.",
-  " * Compile this with a suitable header include path. Then link with ",
-  " * libcurl.",
-  " * If you use any *_LARGE options, make sure your compiler figure",
-  " * out the correct size for the curl_off_t variable.",
-  " * Read the details for all curl_easy_setopt() options online on:",
-  " * http://curlm.haxx.se/libcurl/c/curl_easy_setopt.html",
-  " ************************************************************************/",
-  "[m]",
-  "#include <curl/curl.h>",
-  "",
-  "int main(int argc, char *argv[])",
-  "{",
-  "  CURLcode ret;",
-  NULL
-};
-
-static void dumpeasycode(struct Configurable *config)
-{
-  struct curl_slist *ptr = easycode;
-  char *o = config->libcurl;
-
-  if(o) {
-    FILE *out;
-    bool fopened = FALSE;
-    if(strcmp(o, "-")) {
-      out = fopen(o, "wt");
-      fopened = TRUE;
-    }
-    else
-      out= stdout;
-    if(!out)
-      warnf(config, "Failed to open %s to write libcurl code!\n", o);
-    else {
-      int i;
-      const char *c;
-
-      for(i=0; (c = srchead[i]); i++) {
-        if(!memcmp((char *)c, "[m]", 3)) {
-#if defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS > 32)
-          fprintf(out, "#define _FILE_OFFSET_BITS %d "
-                  "/* for pre libcurl 7.19.0 curl_off_t magic */\n",
-                  _FILE_OFFSET_BITS);
-#endif
-        }
-        else
-          fprintf(out, "%s\n", c);
-      }
-
-      while(ptr) {
-        fprintf(out, "  %s\n", ptr->data);
-        ptr = ptr->next;
-      }
-      fprintf(out,
-              "  return (int)ret;\n"
-              "}\n"
-              "/**** End of sample code ****/\n");
-      if(fopened)
-        fclose(out);
-    }
-  }
-  curl_slist_free_all(easycode);
-}
-
-static bool stdin_upload(const char *uploadfile)
-{
-  return (bool)(curlx_strequal(uploadfile, "-") ||
-                curlx_strequal(uploadfile, "."));
-}
-
-/* Adds the file name to the URL if it doesn't already have one.
- * url will be freed before return if the returned pointer is different
- */
-static char *add_file_name_to_url(CURL *curl, char *url, const char *filename)
-{
-  /* If no file name part is given in the URL, we add this file name */
-  char *ptr=strstr(url, "://");
-  if(ptr)
-    ptr+=3;
-  else
-    ptr=url;
-  ptr = strrchr(ptr, '/');
-  if(!ptr || !strlen(++ptr)) {
-    /* The URL has no file name part, add the local file name. In order
-       to be able to do so, we have to create a new URL in another
-       buffer.*/
-
-    /* We only want the part of the local path that is on the right
-       side of the rightmost slash and backslash. */
-    const char *filep = strrchr(filename, '/');
-    char *file2 = strrchr(filep?filep:filename, '\\');
-    char *encfile;
-
-    if(file2)
-      filep = file2+1;
-    else if(filep)
-      filep++;
-    else
-      filep = filename;
-
-    /* URL encode the file name */
-    encfile = curl_easy_escape(curl, filep, 0 /* use strlen */);
-    if(encfile) {
-      char *urlbuffer = malloc(strlen(url) + strlen(encfile) + 3);
-      if(!urlbuffer) {
-        free(url);
-        return NULL;
-      }
-      if(ptr)
-        /* there is a trailing slash on the URL */
-        sprintf(urlbuffer, "%s%s", url, encfile);
-      else
-        /* there is no trailing slash on the URL */
-        sprintf(urlbuffer, "%s/%s", url, encfile);
-
-      curl_free(encfile);
-
-      free(url);
-      url = urlbuffer; /* use our new URL instead! */
-    }
-  }
-  return url;
-}
-
-/* Extracts the name portion of the URL.
- * Returns a heap-allocated string, or NULL if no name part
- */
-static char *get_url_file_name(const char *url)
-{
-  char *fn = NULL;
-
-  /* Find and get the remote file name */
-  const char * pc =strstr(url, "://");
-  if(pc)
-    pc+=3;
-  else
-    pc=url;
-  pc = strrchr(pc, '/');
-
-  if(pc) {
-    /* duplicate the string beyond the slash */
-    pc++;
-    fn = *pc ? strdup(pc): NULL;
-  }
-  return fn;
-}
-
-static char*
-parse_filename(char *ptr, size_t len)
-{
-  char* copy;
-  char* p;
-  char* q;
-  char quote = 0;
-
-  /* simple implementation of strndup() */
-  copy = malloc(len+1);
-  if (!copy)
-    return NULL;
-  strncpy(copy, ptr, len);
-  copy[len] = 0;
-
-  p = copy;
-  if (*p == '\'' || *p == '"') {
-    /* store the starting quote */
-    quote = *p;
-    p++;
-  }
-
-  /* if the filename contains a path, only use filename portion */
-  q = strrchr(copy, '/');
-  if (q) {
-    p=q+1;
-    if (!*p) {
-      free(copy);
-      return NULL;
-    }
-  }
-
-  q = strrchr(p, quote);
-  if (q)
-    *q = 0;
-
-  if (copy!=p)
-    memmove(copy, p, strlen(p)+1);
-
-  return copy;
-}
-
-static size_t
-header_callback(void *ptr, size_t size, size_t nmemb, void *stream)
-{
-  struct OutStruct* outs = (struct OutStruct*)stream;
-  const char* str = (char*)ptr;
-  const size_t cb = size*nmemb;
-  const char* end = (char*)ptr + cb;
-
-  if (cb > 20 && curlx_strnequal(str, "Content-disposition:", 20)) {
-    char *p = (char*)str + 20;
-
-    /* look for the 'filename=' parameter
-       (encoded filenames (*=) are not supported) */
-    for(;;) {
-      char *filename;
-
-      while (*p && (p < end) && !ISALPHA(*p))
-        p++;
-      if (p > end-9)
-        break;
-
-      if (memcmp(p, "filename=", 9)) {
-        /* no match, find next parameter */
-        while ((p < end) && (*p != ';'))
-          p++;
-        continue;
-      }
-      p+=9;
-      filename = parse_filename(p, cb - (p - str));
-      if (filename) {
-        outs->filename = filename;
-        break;
-      }
-    }
-  }
-
-  return cb;
-}
-
-static int
-operate(struct Configurable *config, int argc, argv_item_t argv[])
-{
-  char errorbuffer[CURL_ERROR_SIZE];
-  char useragent[256]; /* buah, we don't want a larger default user agent */
-  struct ProgressData progressbar;
-  struct getout *urlnode;
-  struct getout *nextnode;
-
-  struct OutStruct outs;
-  struct OutStruct heads;
-  struct InStruct input;
-
-  URLGlob *urls=NULL;
-  URLGlob *inglob=NULL;
-  int urlnum;
-  int infilenum;
-  char *uploadfile=NULL; /* a single file, never a glob */
-
-  curl_off_t uploadfilesize; /* -1 means unknown */
-  bool stillflags=TRUE;
-
-  bool allocuseragent=FALSE;
-
-  char *httpgetfields=NULL;
-
-  CURL *curl;
-  int res = 0;
-  int i;
-  long retry_sleep_default;
-  long retry_sleep;
-
-  char *env;
-
-  memset(&heads, 0, sizeof(struct OutStruct));
-
-#ifdef CURLDEBUG
-  /* this sends all memory debug messages to a logfile named memdump */
-  env = curlx_getenv("CURL_MEMDEBUG");
-  if(env) {
-    /* use the value as file name */
-    char *s = strdup(env);
-    curl_free(env);
-    curl_memdebug(s);
-    free(s);
-    /* this weird strdup() and stuff here is to make the curl_free() get
-       called before the memdebug() as otherwise the memdebug tracing will
-       with tracing a free() without an alloc! */
-  }
-  env = curlx_getenv("CURL_MEMLIMIT");
-  if(env) {
-    curl_memlimit(atoi(env));
-    curl_free(env);
-  }
-#endif
-
-  /* Initialize curl library - do not call any libcurl functions before.
-     Note that the CURLDEBUG magic above is an exception, but then that's not
-     part of the official public API.
-   */
-  if (main_init() != CURLE_OK) {
-    helpf(config->errors, "error initializing curl library\n");
-    return CURLE_FAILED_INIT;
-  }
-
-  /*
-   * Get a curl handle to use for all forthcoming curl transfers.  Cleanup
-   * when all transfers are done.
-   */
-  curl = curl_easy_init();
-  if(!curl) {
-    clean_getout(config);
-    return CURLE_FAILED_INIT;
-  }
-  config->easy = curl;
-
-  memset(&outs,0,sizeof(outs));
-
-  config->outs = &outs;
-
-  /* we get libcurl info right away */
-  curlinfo = curl_version_info(CURLVERSION_NOW);
-
-  errorbuffer[0]=0; /* prevent junk from being output */
-
-  /* setup proper locale from environment */
-#ifdef HAVE_SETLOCALE
-  setlocale(LC_ALL, "");
-#endif
-
-  /* inits */
-  config->postfieldsize = -1;
-  config->showerror=TRUE;
-  config->use_httpget=FALSE;
-  config->create_dirs=FALSE;
-  config->maxredirs = DEFAULT_MAXREDIRS;
-
-  if(argc>1 &&
-     (!curlx_strnequal("--", argv[1], 2) && (argv[1][0] == '-')) &&
-     strchr(argv[1], 'q')) {
-    /*
-     * The first flag, that is not a verbose name, but a shortname
-     * and it includes the 'q' flag!
-     */
-    ;
-  }
-  else {
-    parseconfig(NULL, config); /* ignore possible failure */
-  }
-
-  if ((argc < 2)  && !config->url_list) {
-    helpf(config->errors, NULL);
-    return CURLE_FAILED_INIT;
-  }
-
-  /* Parse options */
-  for (i = 1; i < argc; i++) {
-    if(stillflags &&
-       ('-' == argv[i][0])) {
-      char *nextarg;
-      bool passarg;
-      char *origopt=argv[i];
-
-      char *flag = argv[i];
-
-      if(curlx_strequal("--", argv[i]))
-        /* this indicates the end of the flags and thus enables the
-           following (URL) argument to start with -. */
-        stillflags=FALSE;
-      else {
-        nextarg= (i < argc - 1)? argv[i+1]: NULL;
-
-        res = getparameter(flag, nextarg, &passarg, config);
-        if(res) {
-          int retval = CURLE_OK;
-          if(res != PARAM_HELP_REQUESTED) {
-            const char *reason = param2text(res);
-            helpf(config->errors, "option %s: %s\n", origopt, reason);
-            retval = CURLE_FAILED_INIT;
-          }
-          clean_getout(config);
-          return retval;
-        }
-
-        if(passarg) /* we're supposed to skip this */
-          i++;
-      }
-    }
-    else {
-      bool used;
-      /* just add the URL please */
-      res = getparameter((char *)"--url", argv[i], &used, config);
-      if(res)
-        return res;
-    }
-  }
-
-  retry_sleep_default = config->retry_delay?
-    config->retry_delay*1000:RETRY_SLEEP_DEFAULT; /* ms */
-  retry_sleep = retry_sleep_default;
-
-  if((!config->url_list || !config->url_list->url) && !config->list_engines) {
-    clean_getout(config);
-    helpf(config->errors, "no URL specified!\n");
-    return CURLE_FAILED_INIT;
-  }
-  if(NULL == config->useragent) {
-    /* set non-zero default values: */
-    snprintf(useragent, sizeof(useragent),
-             CURL_NAME "/" CURL_VERSION " (" OS ") " "%s", curl_version());
-    config->useragent= useragent;
-  }
-  else
-    allocuseragent = TRUE;
-
-  /* On WIN32 we can't set the path to curl-ca-bundle.crt
-   * at compile time. So we look here for the file in two ways:
-   * 1: look at the environment variable CURL_CA_BUNDLE for a path
-   * 2: if #1 isn't found, use the windows API function SearchPath()
-   *    to find it along the app's path (includes app's dir and CWD)
-   *
-   * We support the environment variable thing for non-Windows platforms
-   * too. Just for the sake of it.
-   */
-  if (!config->cacert &&
-      !config->capath &&
-      !config->insecure_ok) {
-    env = curlx_getenv("CURL_CA_BUNDLE");
-    if(env)
-      GetStr(&config->cacert, env);
-    else {
-      env = curlx_getenv("SSL_CERT_DIR");
-      if(env)
-        GetStr(&config->capath, env);
-      else {
-        env = curlx_getenv("SSL_CERT_FILE");
-        if(env)
-          GetStr(&config->cacert, env);
-      }
-    }
-
-    if(env)
-      curl_free(env);
-#ifdef WIN32
-    else
-      FindWin32CACert(config, "curl-ca-bundle.crt");
-#endif
-  }
-
-  if (config->postfields) {
-    if (config->use_httpget) {
-      /* Use the postfields data for a http get */
-      httpgetfields = strdup(config->postfields);
-      free(config->postfields);
-      config->postfields = NULL;
-      if(SetHTTPrequest(config,
-                        (config->no_body?HTTPREQ_HEAD:HTTPREQ_GET),
-                        &config->httpreq)) {
-        free(httpgetfields);
-        return PARAM_BAD_USE;
-      }
-    }
-    else {
-      if(SetHTTPrequest(config, HTTPREQ_SIMPLEPOST, &config->httpreq))
-        return PARAM_BAD_USE;
-    }
-  }
-
-  /* This is the first entry added to easycode and it initializes the slist */
-  easycode = curl_slist_append(easycode, "CURL *hnd = curl_easy_init();");
-  if(!easycode) {
-    clean_getout(config);
-    res = CURLE_OUT_OF_MEMORY;
-    goto quit_curl;
-  }
-
-  if (config->list_engines) {
-    struct curl_slist *engines = NULL;
-
-    curl_easy_getinfo(curl, CURLINFO_SSL_ENGINES, &engines);
-    list_engines(engines);
-    curl_slist_free_all(engines);
-    res = CURLE_OK;
-    goto quit_curl;
-  }
-
-  /* After this point, we should call curl_easy_cleanup() if we decide to bail
-   * out from this function! */
-
-  urlnode = config->url_list;
-
-  if(config->headerfile) {
-    /* open file for output: */
-    if(strcmp(config->headerfile,"-")) {
-      heads.filename = config->headerfile;
-    }
-    else
-      heads.stream=stdout;
-    heads.config = config;
-  }
-
-  /* loop through the list of given URLs */
-  while(urlnode) {
-    int up; /* upload file counter within a single upload glob */
-    char *dourl;
-    char *url;
-    char *infiles; /* might be a glob pattern */
-    char *outfiles=NULL;
-
-    /* get the full URL (it might be NULL) */
-    dourl=urlnode->url;
-
-    url = dourl;
-
-    if(NULL == url) {
-      /* This node had no URL, skip it and continue to the next */
-      if(urlnode->outfile)
-        free(urlnode->outfile);
-
-      /* move on to the next URL */
-      nextnode=urlnode->next;
-      free(urlnode); /* free the node */
-      urlnode = nextnode;
-      continue; /* next please */
-    }
-
-    /* default output stream is stdout */
-    outs.stream = stdout;
-    outs.config = config;
-    outs.bytes = 0; /* nothing written yet */
-
-    /* save outfile pattern before expansion */
-    if (urlnode->outfile) {
-      outfiles = strdup(urlnode->outfile);
-      if (!outfiles) {
-        clean_getout(config);
-        break;
-      }
-    }
-
-    infiles = urlnode->infile;
-
-    if(!config->globoff && infiles) {
-      /* Unless explicitly shut off */
-      res = glob_url(&inglob, infiles, &infilenum,
-                     config->showerror?config->errors:NULL);
-      if(res != CURLE_OK) {
-        clean_getout(config);
-        if(outfiles)
-          free(outfiles);
-        break;
-      }
-    }
-
-    /* Here's the loop for uploading multiple files within the same
-       single globbed string. If no upload, we enter the loop once anyway. */
-    for(up = 0;
-        (!up && !infiles) ||
-          (uploadfile = inglob?
-           glob_next_url(inglob):
-           (!up?strdup(infiles):NULL));
-        up++) {
-      int separator = 0;
-      long retry_numretries;
-      uploadfilesize=-1;
-
-      if(!config->globoff) {
-        /* Unless explicitly shut off, we expand '{...}' and '[...]'
-           expressions and return total number of URLs in pattern set */
-        res = glob_url(&urls, dourl, &urlnum,
-                       config->showerror?config->errors:NULL);
-        if(res != CURLE_OK) {
-          break;
-        }
-      }
-      else
-        urlnum = 1; /* without globbing, this is a single URL */
-
-      /* if multiple files extracted to stdout, insert separators! */
-      separator= ((!outfiles || curlx_strequal(outfiles, "-")) && urlnum > 1);
-
-      /* Here's looping around each globbed URL */
-      for(i = 0;
-          (url = urls?glob_next_url(urls):(i?NULL:strdup(url)));
-          i++) {
-        /* NOTE: In the condition expression in the for() statement above, the
-           'url' variable is only ever strdup()ed if (i == 0) and thus never
-           when this loops later on. Further down in this function we call
-           free(url) and then the code loops. Static code parsers may thus get
-           tricked into believing that we have a potential access-after-free
-           here.  I can however not spot any such case. */
-
-        int infd = STDIN_FILENO;
-        bool infdopen;
-        char *outfile;
-        struct timeval retrystart;
-        outfile = outfiles?strdup(outfiles):NULL;
-
-        if((urlnode->flags&GETOUT_USEREMOTE) ||
-           (outfile && !curlx_strequal("-", outfile)) ) {
-
-          /*
-           * We have specified a file name to store the result in, or we have
-           * decided we want to use the remote file name.
-           */
-
-          if(!outfile) {
-            /* extract the file name from the URL */
-            outfile = get_url_file_name(url);
-            if((!outfile || !*outfile) && !config->content_disposition) {
-              helpf(config->errors, "Remote file name has no length!\n");
-              res = CURLE_WRITE_ERROR;
-              free(url);
-              break;
-            }
-#if defined(MSDOS) || defined(WIN32)
-            /* For DOS and WIN32, we do some major replacing of
-             bad characters in the file name before using it */
-            outfile = sanitize_dos_name(outfile);
-            if(!outfile) {
-              res = CURLE_OUT_OF_MEMORY;
-              break;
-            }
-#endif /* MSDOS || WIN32 */
-          }
-          else if(urls) {
-            /* fill '#1' ... '#9' terms from URL pattern */
-            char *storefile = outfile;
-            outfile = glob_match_url(storefile, urls);
-            free(storefile);
-            if(!outfile) {
-              /* bad globbing */
-              warnf(config, "bad output glob!\n");
-              free(url);
-              res = CURLE_FAILED_INIT;
-              break;
-            }
-          }
-
-          /* Create the directory hierarchy, if not pre-existant to a multiple
-             file output call */
-
-          if(config->create_dirs &&
-             (-1 == create_dir_hierarchy(outfile, config->errors))) {
-            free(url);
-            res = CURLE_WRITE_ERROR;
-            break;
-          }
-
-          if(config->resume_from_current) {
-            /* We're told to continue from where we are now. Get the
-               size of the file as it is now and open it for append instead */
-
-            struct_stat fileinfo;
-
-            /* VMS -- Danger, the filesize is only valid for stream files */
-            if(0 == stat(outfile, &fileinfo))
-              /* set offset to current file size: */
-              config->resume_from = fileinfo.st_size;
-            else
-              /* let offset be 0 */
-              config->resume_from = 0;
-          }
-
-          outs.filename = outfile;
-
-          if(config->resume_from) {
-            outs.init = config->resume_from;
-            /* open file for output: */
-            outs.stream=(FILE *) fopen(outfile, config->resume_from?"ab":"wb");
-            if (!outs.stream) {
-              helpf(config->errors, "Can't open '%s'!\n", outfile);
-              free(url);
-              res = CURLE_WRITE_ERROR;
-              break;
-            }
-          }
-          else {
-            outs.stream = NULL; /* open when needed */
-          }
-        }
-        infdopen=FALSE;
-        if(uploadfile && !stdin_upload(uploadfile)) {
-          /*
-           * We have specified a file to upload and it isn't "-".
-           */
-          struct_stat fileinfo;
-
-          url = add_file_name_to_url(curl, url, uploadfile);
-          if(!url) {
-            helpf(config->errors, "out of memory\n");
-            res = CURLE_OUT_OF_MEMORY;
-            break;
-          }
-          /* VMS Note:
-           *
-           * Reading binary from files can be a problem...  Only FIXED, VAR
-           * etc WITHOUT implied CC will work Others need a \n appended to a
-           * line
-           *
-           * - Stat gives a size but this is UNRELIABLE in VMS As a f.e. a
-           * fixed file with implied CC needs to have a byte added for every
-           * record processed, this can by derived from Filesize & recordsize
-           * for VARiable record files the records need to be counted!  for
-           * every record add 1 for linefeed and subtract 2 for the record
-           * header for VARIABLE header files only the bare record data needs
-           * to be considered with one appended if implied CC
-           */
-
-          infd= open(uploadfile, O_RDONLY | O_BINARY);
-          if ((infd == -1) || fstat(infd, &fileinfo)) {
-            helpf(config->errors, "Can't open '%s'!\n", uploadfile);
-            if(infd != -1)
-              close(infd);
-
-            /* Free the list of remaining URLs and globbed upload files
-             * to force curl to exit immediately
-             */
-            if(urls) {
-              glob_cleanup(urls);
-              urls = NULL;
-            }
-            if(inglob) {
-              glob_cleanup(inglob);
-              inglob = NULL;
-            }
-
-            res = CURLE_READ_ERROR;
-            goto quit_urls;
-          }
-          infdopen=TRUE;
-          uploadfilesize=fileinfo.st_size;
-
-        }
-        else if(uploadfile && stdin_upload(uploadfile)) {
-          SET_BINMODE(stdin);
-          infd = STDIN_FILENO;
-          if (curlx_strequal(uploadfile, ".")) {
-            if (curlx_nonblock((curl_socket_t)infd, TRUE) < 0)
-              warnf(config,
-                    "fcntl failed on fd=%d: %s\n", infd, strerror(errno));
-          }
-        }
-
-        if(uploadfile && config->resume_from_current)
-          config->resume_from = -1; /* -1 will then force get-it-yourself */
-
-        if(output_expected(url, uploadfile)
-           && outs.stream && isatty(fileno(outs.stream)))
-          /* we send the output to a tty, therefore we switch off the progress
-             meter */
-          config->noprogress = config->isatty = TRUE;
-
-        if (urlnum > 1 && !(config->mute)) {
-          fprintf(config->errors, "\n[%d/%d]: %s --> %s\n",
-                  i+1, urlnum, url, outfile ? outfile : "<stdout>");
-          if (separator)
-            printf("%s%s\n", CURLseparator, url);
-        }
-        if (httpgetfields) {
-          char *urlbuffer;
-          /* Find out whether the url contains a file name */
-          const char *pc =strstr(url, "://");
-          char sep='?';
-          if(pc)
-            pc+=3;
-          else
-            pc=url;
-
-          pc = strrchr(pc, '/'); /* check for a slash */
-
-          if(pc) {
-            /* there is a slash present in the URL */
-
-            if(strchr(pc, '?'))
-              /* Ouch, there's already a question mark in the URL string, we
-                 then append the data with an ampersand separator instead! */
-              sep='&';
-          }
-          /*
-           * Then append ? followed by the get fields to the url.
-           */
-          urlbuffer = malloc(strlen(url) + strlen(httpgetfields) + 3);
-          if(!urlbuffer) {
-            helpf(config->errors, "out of memory\n");
-
-            /* Free the list of remaining URLs and globbed upload files
-             * to force curl to exit immediately
-             */
-            if(urls) {
-              glob_cleanup(urls);
-              urls = NULL;
-            }
-            if(inglob) {
-              glob_cleanup(inglob);
-              inglob = NULL;
-            }
-
-            res = CURLE_OUT_OF_MEMORY;
-            goto quit_urls;
-          }
-          if (pc)
-            sprintf(urlbuffer, "%s%c%s", url, sep, httpgetfields);
-          else
-            /* Append  / before the ? to create a well-formed url
-               if the url contains a hostname only
-            */
-            sprintf(urlbuffer, "%s/?%s", url, httpgetfields);
-
-          free(url); /* free previous URL */
-          url = urlbuffer; /* use our new URL instead! */
-        }
-
-        if(!config->errors)
-          config->errors = stderr;
-
-        if((!outfile || !strcmp(outfile, "-")) && !config->use_ascii) {
-          /* We get the output to stdout and we have not got the ASCII/text
-             flag, then set stdout to be binary */
-          SET_BINMODE(stdout);
-        }
-
-        if(1 == config->tcp_nodelay)
-          my_setopt(curl, CURLOPT_TCP_NODELAY, 1);
-
-        /* where to store */
-        my_setopt(curl, CURLOPT_WRITEDATA, &outs);
-        /* what call to write */
-        my_setopt(curl, CURLOPT_WRITEFUNCTION, my_fwrite);
-
-        /* for uploads */
-        input.fd = infd;
-        input.config = config;
-        my_setopt(curl, CURLOPT_READDATA, &input);
-        /* what call to read */
-        my_setopt(curl, CURLOPT_READFUNCTION, my_fread);
-
-        /* in 7.18.0, the CURLOPT_SEEKFUNCTION/DATA pair is taking over what
-           CURLOPT_IOCTLFUNCTION/DATA pair previously provided for seeking */
-        my_setopt(curl, CURLOPT_SEEKDATA, &input);
-        my_setopt(curl, CURLOPT_SEEKFUNCTION, my_seek);
-
-        if(config->recvpersecond)
-          /* tell libcurl to use a smaller sized buffer as it allows us to
-             make better sleeps! 7.9.9 stuff! */
-          my_setopt(curl, CURLOPT_BUFFERSIZE, config->recvpersecond);
-
-        /* size of uploaded file: */
-        my_setopt(curl, CURLOPT_INFILESIZE_LARGE, uploadfilesize);
-        my_setopt_str(curl, CURLOPT_URL, url);     /* what to fetch */
-        my_setopt_str(curl, CURLOPT_PROXY, config->proxy); /* proxy to use */
-        if(config->proxy)
-          my_setopt(curl, CURLOPT_PROXYTYPE, config->proxyver);
-        my_setopt(curl, CURLOPT_NOPROGRESS, config->noprogress);
-        if(config->no_body) {
-          my_setopt(curl, CURLOPT_NOBODY, 1);
-          my_setopt(curl, CURLOPT_HEADER, 1);
-        }
-        else
-          my_setopt(curl, CURLOPT_HEADER, config->include_headers);
-
-        my_setopt(curl, CURLOPT_FAILONERROR, config->failonerror);
-        my_setopt(curl, CURLOPT_UPLOAD, uploadfile?TRUE:FALSE);
-        my_setopt(curl, CURLOPT_DIRLISTONLY, config->dirlistonly);
-        my_setopt(curl, CURLOPT_APPEND, config->ftp_append);
-
-        if (config->netrc_opt)
-          my_setopt(curl, CURLOPT_NETRC, CURL_NETRC_OPTIONAL);
-        else if (config->netrc)
-          my_setopt(curl, CURLOPT_NETRC, CURL_NETRC_REQUIRED);
-        else
-          my_setopt(curl, CURLOPT_NETRC, CURL_NETRC_IGNORED);
-
-        my_setopt(curl, CURLOPT_FOLLOWLOCATION, config->followlocation);
-        my_setopt(curl, CURLOPT_UNRESTRICTED_AUTH, config->unrestricted_auth);
-        my_setopt(curl, CURLOPT_TRANSFERTEXT, config->use_ascii);
-        my_setopt_str(curl, CURLOPT_USERPWD, config->userpwd);
-        my_setopt_str(curl, CURLOPT_PROXYUSERPWD, config->proxyuserpwd);
-        my_setopt(curl, CURLOPT_NOPROXY, config->noproxy);
-        my_setopt_str(curl, CURLOPT_RANGE, config->range);
-        my_setopt(curl, CURLOPT_ERRORBUFFER, errorbuffer);
-        my_setopt(curl, CURLOPT_TIMEOUT, config->timeout);
-
-        switch(config->httpreq) {
-        case HTTPREQ_SIMPLEPOST:
-          my_setopt_str(curl, CURLOPT_POSTFIELDS, config->postfields);
-          my_setopt(curl, CURLOPT_POSTFIELDSIZE_LARGE, config->postfieldsize);
-          break;
-        case HTTPREQ_POST:
-          my_setopt(curl, CURLOPT_HTTPPOST, config->httppost);
-          break;
-        default:
-          break;
-        }
-        my_setopt_str(curl, CURLOPT_REFERER, config->referer);
-        my_setopt(curl, CURLOPT_AUTOREFERER, config->autoreferer);
-        my_setopt_str(curl, CURLOPT_USERAGENT, config->useragent);
-        my_setopt_str(curl, CURLOPT_FTPPORT, config->ftpport);
-        my_setopt(curl, CURLOPT_LOW_SPEED_LIMIT,
-                  config->low_speed_limit);
-        my_setopt(curl, CURLOPT_LOW_SPEED_TIME, config->low_speed_time);
-        my_setopt(curl, CURLOPT_MAX_SEND_SPEED_LARGE,
-                  config->sendpersecond);
-        my_setopt(curl, CURLOPT_MAX_RECV_SPEED_LARGE,
-                  config->recvpersecond);
-        my_setopt(curl, CURLOPT_RESUME_FROM_LARGE,
-                  config->use_resume?config->resume_from:0);
-        my_setopt_str(curl, CURLOPT_COOKIE, config->cookie);
-        my_setopt(curl, CURLOPT_HTTPHEADER, config->headers);
-        my_setopt(curl, CURLOPT_SSLCERT, config->cert);
-        my_setopt_str(curl, CURLOPT_SSLCERTTYPE, config->cert_type);
-        my_setopt(curl, CURLOPT_SSLKEY, config->key);
-        my_setopt_str(curl, CURLOPT_SSLKEYTYPE, config->key_type);
-        my_setopt_str(curl, CURLOPT_KEYPASSWD, config->key_passwd);
-
-        /* SSH private key uses the same command-line option as SSL private
-           key */
-        my_setopt_str(curl, CURLOPT_SSH_PRIVATE_KEYFILE, config->key);
-        my_setopt_str(curl, CURLOPT_SSH_PUBLIC_KEYFILE, config->pubkey);
-
-        /* SSH host key md5 checking allows us to fail if we are
-         * not talking to who we think we should
-         */
-        my_setopt_str(curl, CURLOPT_SSH_HOST_PUBLIC_KEY_MD5,
-                      config->hostpubmd5);
-
-        /* default to strict verifyhost */
-        my_setopt(curl, CURLOPT_SSL_VERIFYHOST, 2);
-        if(config->cacert || config->capath) {
-          if (config->cacert)
-            my_setopt_str(curl, CURLOPT_CAINFO, config->cacert);
-
-          if (config->capath)
-            my_setopt_str(curl, CURLOPT_CAPATH, config->capath);
-          my_setopt(curl, CURLOPT_SSL_VERIFYPEER, TRUE);
-        }
-        if (config->crlfile)
-          my_setopt_str(curl, CURLOPT_CRLFILE, config->crlfile);
-        if(config->insecure_ok) {
-          /* new stuff needed for libcurl 7.10 */
-          my_setopt(curl, CURLOPT_SSL_VERIFYPEER, FALSE);
-          my_setopt(curl, CURLOPT_SSL_VERIFYHOST, 1);
-        }
-        else {
-          char *home = homedir();
-          char *file = aprintf("%s/%sssh/known_hosts", home, DOT_CHAR);
-          if(home)
-            free(home);
-
-          if(file) {
-            my_setopt_str(curl, CURLOPT_SSH_KNOWNHOSTS, file);
-            curl_free(file);
-          }
-          else {
-            /* Free the list of remaining URLs and globbed upload files
-             * to force curl to exit immediately
-             */
-            if(urls) {
-              glob_cleanup(urls);
-              urls = NULL;
-            }
-            if(inglob) {
-              glob_cleanup(inglob);
-              inglob = NULL;
-            }
-
-            res = CURLE_OUT_OF_MEMORY;
-            goto quit_urls;
-          }
-        }
-
-        if(config->no_body || config->remote_time) {
-          /* no body or use remote time */
-          my_setopt(curl, CURLOPT_FILETIME, TRUE);
-        }
-
-        my_setopt(curl, CURLOPT_MAXREDIRS, config->maxredirs);
-        my_setopt(curl, CURLOPT_CRLF, config->crlf);
-        my_setopt(curl, CURLOPT_QUOTE, config->quote);
-        my_setopt(curl, CURLOPT_POSTQUOTE, config->postquote);
-        my_setopt(curl, CURLOPT_PREQUOTE, config->prequote);
-        my_setopt(curl, CURLOPT_HEADERDATA,
-                  config->headerfile?&heads:NULL);
-        my_setopt_str(curl, CURLOPT_COOKIEFILE, config->cookiefile);
-        /* cookie jar was added in 7.9 */
-        if(config->cookiejar)
-          my_setopt_str(curl, CURLOPT_COOKIEJAR, config->cookiejar);
-        /* cookie session added in 7.9.7 */
-        my_setopt(curl, CURLOPT_COOKIESESSION, config->cookiesession);
-
-        my_setopt(curl, CURLOPT_SSLVERSION, config->ssl_version);
-        my_setopt(curl, CURLOPT_TIMECONDITION, config->timecond);
-        my_setopt(curl, CURLOPT_TIMEVALUE, config->condtime);
-        my_setopt_str(curl, CURLOPT_CUSTOMREQUEST, config->customrequest);
-        my_setopt(curl, CURLOPT_STDERR, config->errors);
-
-        /* three new ones in libcurl 7.3: */
-        my_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, config->proxytunnel);
-        my_setopt_str(curl, CURLOPT_INTERFACE, config->iface);
-        my_setopt_str(curl, CURLOPT_KRBLEVEL, config->krblevel);
-
-        progressbarinit(&progressbar, config);
-        if((config->progressmode == CURL_PROGRESS_BAR) &&
-           !config->noprogress && !config->mute) {
-          /* we want the alternative style, then we have to implement it
-             ourselves! */
-          my_setopt(curl, CURLOPT_PROGRESSFUNCTION, myprogress);
-          my_setopt(curl, CURLOPT_PROGRESSDATA, &progressbar);
-        }
-
-        /* new in libcurl 7.6.2: */
-        my_setopt(curl, CURLOPT_TELNETOPTIONS, config->telnet_options);
-
-        /* new in libcurl 7.7: */
-        my_setopt_str(curl, CURLOPT_RANDOM_FILE, config->random_file);
-        my_setopt(curl, CURLOPT_EGDSOCKET, config->egd_file);
-        my_setopt(curl, CURLOPT_CONNECTTIMEOUT, config->connecttimeout);
-
-        if(config->cipher_list)
-          my_setopt_str(curl, CURLOPT_SSL_CIPHER_LIST, config->cipher_list);
-
-        if(config->httpversion)
-          my_setopt(curl, CURLOPT_HTTP_VERSION, config->httpversion);
-
-        /* new in libcurl 7.9.2: */
-        if(config->disable_epsv)
-          /* disable it */
-          my_setopt(curl, CURLOPT_FTP_USE_EPSV, FALSE);
-
-        /* new in libcurl 7.10.5 */
-        if(config->disable_eprt)
-          /* disable it */
-          my_setopt(curl, CURLOPT_FTP_USE_EPRT, FALSE);
-
-        /* new in libcurl 7.10.6 (default is Basic) */
-        if(config->authtype)
-          my_setopt(curl, CURLOPT_HTTPAUTH, config->authtype);
-
-        if(config->tracetype != TRACE_NONE) {
-          my_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace);
-          my_setopt(curl, CURLOPT_DEBUGDATA, config);
-          my_setopt(curl, CURLOPT_VERBOSE, TRUE);
-        }
-
-        res = CURLE_OK;
-
-        /* new in curl ?? */
-        if (config->engine) {
-          res = my_setopt_str(curl, CURLOPT_SSLENGINE, config->engine);
-          my_setopt(curl, CURLOPT_SSLENGINE_DEFAULT, 1);
-        }
-
-        if (res != CURLE_OK)
-           goto show_error;
-
-        /* new in curl 7.10 */
-        my_setopt_str(curl, CURLOPT_ENCODING,
-                  (config->encoding) ? "" : NULL);
-
-        /* new in curl 7.10.7, extended in 7.19.4 but this only sets 0 or 1 */
-        my_setopt(curl, CURLOPT_FTP_CREATE_MISSING_DIRS,
-                  config->ftp_create_dirs);
-        if(config->proxyanyauth)
-          my_setopt(curl, CURLOPT_PROXYAUTH, CURLAUTH_ANY);
-        else if(config->proxynegotiate)
-          my_setopt(curl, CURLOPT_PROXYAUTH, CURLAUTH_GSSNEGOTIATE);
-        else if(config->proxyntlm)
-          my_setopt(curl, CURLOPT_PROXYAUTH, CURLAUTH_NTLM);
-        else if(config->proxydigest)
-          my_setopt(curl, CURLOPT_PROXYAUTH, CURLAUTH_DIGEST);
-        else if(config->proxybasic)
-          my_setopt(curl, CURLOPT_PROXYAUTH, CURLAUTH_BASIC);
-
-        /* new in curl 7.10.8 */
-        if(config->max_filesize)
-          my_setopt(curl, CURLOPT_MAXFILESIZE_LARGE,
-                           config->max_filesize);
-
-        if(4 == config->ip_version)
-          my_setopt(curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
-        else if(6 == config->ip_version)
-          my_setopt(curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V6);
-        else
-          my_setopt(curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_WHATEVER);
-
-        /* new in curl 7.15.5 */
-        if(config->ftp_ssl_reqd)
-          my_setopt(curl, CURLOPT_USE_SSL, CURLUSESSL_ALL);
-
-        /* new in curl 7.11.0 */
-        else if(config->ftp_ssl)
-          my_setopt(curl, CURLOPT_USE_SSL, CURLUSESSL_TRY);
-
-        /* new in curl 7.16.0 */
-        else if(config->ftp_ssl_control)
-          my_setopt(curl, CURLOPT_USE_SSL, CURLUSESSL_CONTROL);
-
-        /* new in curl 7.16.1 */
-        if(config->ftp_ssl_ccc)
-            my_setopt(curl, CURLOPT_FTP_SSL_CCC, config->ftp_ssl_ccc_mode);
-
-        /* new in curl 7.11.1, modified in 7.15.2 */
-        if(config->socksproxy) {
-          my_setopt_str(curl, CURLOPT_PROXY, config->socksproxy);
-          my_setopt(curl, CURLOPT_PROXYTYPE, config->socksver);
-        }
-
-#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
-        /* new in curl 7.19.4 */
-        if(config->socks5_gssapi_service)
-          my_setopt_str(curl, CURLOPT_SOCKS5_GSSAPI_SERVICE,
-                    config->socks5_gssapi_service);
-
-        /* new in curl 7.19.4 */
-        if(config->socks5_gssapi_nec)
-          my_setopt_str(curl, CURLOPT_SOCKS5_GSSAPI_NEC,
-                        config->socks5_gssapi_nec);
-#endif
-        /* curl 7.13.0 */
-        my_setopt_str(curl, CURLOPT_FTP_ACCOUNT, config->ftp_account);
-
-        my_setopt(curl, CURLOPT_IGNORE_CONTENT_LENGTH, config->ignorecl);
-
-        /* curl 7.14.2 */
-        my_setopt(curl, CURLOPT_FTP_SKIP_PASV_IP, config->ftp_skip_ip);
-
-        /* curl 7.15.1 */
-        my_setopt(curl, CURLOPT_FTP_FILEMETHOD, config->ftp_filemethod);
-
-        /* curl 7.15.2 */
-        if(config->localport) {
-          my_setopt(curl, CURLOPT_LOCALPORT, config->localport);
-          my_setopt_str(curl, CURLOPT_LOCALPORTRANGE,
-                    config->localportrange);
-        }
-
-        /* curl 7.15.5 */
-        my_setopt_str(curl, CURLOPT_FTP_ALTERNATIVE_TO_USER,
-                  config->ftp_alternative_to_user);
-
-        /* curl 7.16.0 */
-        my_setopt(curl, CURLOPT_SSL_SESSIONID_CACHE,
-                  !config->disable_sessionid);
-
-        /* curl 7.16.2 */
-        if(config->raw) {
-          my_setopt(curl, CURLOPT_HTTP_CONTENT_DECODING, FALSE);
-          my_setopt(curl, CURLOPT_HTTP_TRANSFER_DECODING, FALSE);
-        }
-
-        /* curl 7.17.1 */
-        if (!config->nokeepalive) {
-          my_setopt(curl, CURLOPT_SOCKOPTFUNCTION, sockoptcallback);
-          my_setopt(curl, CURLOPT_SOCKOPTDATA, config);
-        }
-
-        /* curl 7.19.1 (the 301 version existed in 7.18.2) */
-        my_setopt(curl, CURLOPT_POSTREDIR, config->post301 |
-                  (config->post302 ? CURL_REDIR_POST_302 : FALSE));
-
-        /* curl 7.20.0 */
-        if(config->tftp_blksize)
-          my_setopt(curl, CURLOPT_TFTP_BLKSIZE, config->tftp_blksize);
-
-        if(config->mail_from)
-          my_setopt_str(curl, CURLOPT_MAIL_FROM, config->mail_from);
-
-        if(config->mail_rcpt)
-          my_setopt(curl, CURLOPT_MAIL_RCPT, config->mail_rcpt);
-
-        /* curl 7.20.x */
-        if(config->ftp_pret)
-          my_setopt(curl, CURLOPT_FTP_USE_PRET, TRUE);
-
-        if ((urlnode->flags & GETOUT_USEREMOTE)
-            && config->content_disposition) {
-          my_setopt(curl, CURLOPT_HEADERFUNCTION, header_callback);
-          my_setopt(curl, CURLOPT_HEADERDATA, &outs);
-        }
-
-        retry_numretries = config->req_retry;
-
-        retrystart = cutil_tvnow();
-
-        for(;;) {
-          res = curl_easy_perform(curl);
-          if (!curl_slist_append(easycode, "ret = curl_easy_perform(hnd);")) {
-            res = CURLE_OUT_OF_MEMORY;
-            break;
-          }
-
-          if (config->content_disposition && outs.stream && !config->mute)
-            printf("curl: Saved to filename '%s'\n", outs.filename);
-
-          /* if retry-max-time is non-zero, make sure we haven't exceeded the
-             time */
-          if(retry_numretries &&
-             (!config->retry_maxtime ||
-              (cutil_tvdiff(cutil_tvnow(), retrystart)<
-               config->retry_maxtime*1000)) ) {
-            enum {
-              RETRY_NO,
-              RETRY_TIMEOUT,
-              RETRY_HTTP,
-              RETRY_FTP,
-              RETRY_LAST /* not used */
-            } retry = RETRY_NO;
-            long response;
-            if(CURLE_OPERATION_TIMEDOUT == res)
-              /* retry timeout always */
-              retry = RETRY_TIMEOUT;
-            else if(CURLE_OK == res) {
-              /* Check for HTTP transient errors */
-              char *this_url=NULL;
-              curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &this_url);
-              if(this_url &&
-                 curlx_strnequal(this_url, "http", 4)) {
-                /* This was HTTP(S) */
-                curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &response);
-
-                switch(response) {
-                case 500: /* Internal Server Error */
-                case 502: /* Bad Gateway */
-                case 503: /* Service Unavailable */
-                case 504: /* Gateway Timeout */
-                  retry = RETRY_HTTP;
-                  /*
-                   * At this point, we have already written data to the output
-                   * file (or terminal). If we write to a file, we must rewind
-                   * or close/re-open the file so that the next attempt starts
-                   * over from the beginning.
-                   *
-                   * TODO: similar action for the upload case. We might need
-                   * to start over reading from a previous point if we have
-                   * uploaded something when this was returned.
-                   */
-                  break;
-                }
-              }
-            } /* if CURLE_OK */
-            else if(res) {
-              curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &response);
-
-              if(response/100 == 4)
-                /*
-                 * This is typically when the FTP server only allows a certain
-                 * amount of users and we are not one of them.  All 4xx codes
-                 * are transient.
-                 */
-                retry = RETRY_FTP;
-            }
-
-            if(retry) {
-              static const char * const m[]={
-                NULL, "timeout", "HTTP error", "FTP error"
-              };
-              warnf(config, "Transient problem: %s "
-                    "Will retry in %ld seconds. "
-                    "%ld retries left.\n",
-                    m[retry], retry_sleep/1000, retry_numretries);
-
-              go_sleep(retry_sleep);
-              retry_numretries--;
-              if(!config->retry_delay) {
-                retry_sleep *= 2;
-                if(retry_sleep > RETRY_SLEEP_MAX)
-                  retry_sleep = RETRY_SLEEP_MAX;
-              }
-              if(outs.bytes && outs.filename) {
-                /* We have written data to a output file, we truncate file
-                 */
-                if(!config->mute)
-                  fprintf(config->errors, "Throwing away %"
-                          CURL_FORMAT_CURL_OFF_T " bytes\n",
-                          outs.bytes);
-                fflush(outs.stream);
-                /* truncate file at the position where we started appending */
-#ifdef HAVE_FTRUNCATE
-                if(ftruncate( fileno(outs.stream), outs.init)) {
-                  /* when truncate fails, we can't just append as then we'll
-                     create something strange, bail out */
-                  if(!config->mute)
-                    fprintf(config->errors,
-                            "failed to truncate, exiting\n");
-                  break;
-                }
-                /* now seek to the end of the file, the position where we
-                   just truncated the file in a large file-safe way */
-                fseek(outs.stream, 0, SEEK_END);
-#else
-                /* ftruncate is not available, so just reposition the file
-                   to the location we would have truncated it. This won't
-                   work properly with large files on 32-bit systems, but
-                   most of those will have ftruncate. */
-                fseek(outs.stream, (long)outs.init, SEEK_SET);
-#endif
-                outs.bytes = 0; /* clear for next round */
-              }
-              continue;
-            }
-          } /* if retry_numretries */
-
-          /* In all ordinary cases, just break out of loop here */
-          retry_sleep = retry_sleep_default;
-          break;
-
-        }
-
-        if((config->progressmode == CURL_PROGRESS_BAR) &&
-           progressbar.calls)
-          /* if the custom progress bar has been displayed, we output a
-             newline here */
-          fputs("\n", progressbar.out);
-
-        if(config->writeout)
-          ourWriteOut(curl, config->writeout);
-#ifdef USE_ENVIRONMENT
-        if (config->writeenv)
-          ourWriteEnv(curl);
-#endif
-
-show_error:
-
-#ifdef __VMS
-        if(is_vms_shell()) {
-          /* VMS DCL shell behavior */
-          if(!config->showerror) {
-            vms_show = VMSSTS_HIDE;
-          }
-        }
-        else
-#endif
-        {
-          if((res!=CURLE_OK) && config->showerror) {
-            fprintf(config->errors, "curl: (%d) %s\n", res,
-                    errorbuffer[0]? errorbuffer:
-                    curl_easy_strerror((CURLcode)res));
-            if(CURLE_SSL_CACERT == res) {
-#define CURL_CA_CERT_ERRORMSG1 \
-"More details here: http://curl.haxx.se/docs/sslcerts.html\n\n" \
-"curl performs SSL certificate verification by default, using a \"bundle\"\n" \
-" of Certificate Authority (CA) public keys (CA certs). If the default\n" \
-" bundle file isn't adequate, you can specify an alternate file\n" \
-" using the --cacert option.\n"
-
-#define CURL_CA_CERT_ERRORMSG2 \
-"If this HTTPS server uses a certificate signed by a CA represented in\n" \
-" the bundle, the certificate verification probably failed due to a\n" \
-" problem with the certificate (it might be expired, or the name might\n" \
-" not match the domain name in the URL).\n" \
-"If you'd like to turn off curl's verification of the certificate, use\n" \
-" the -k (or --insecure) option.\n"
-
-              fprintf(config->errors, "%s%s",
-                      CURL_CA_CERT_ERRORMSG1,
-                      CURL_CA_CERT_ERRORMSG2 );
-            }
-          }
-        }
-
-        if (outfile && !curlx_strequal(outfile, "-") && outs.stream) {
-          int rc = fclose(outs.stream);
-          if(!res && rc) {
-            /* something went wrong in the writing process */
-            res = CURLE_WRITE_ERROR;
-            fprintf(config->errors, "(%d) Failed writing body\n", res);
-          }
-        }
-
-#ifdef HAVE_UTIME
-        /* Important that we set the time _after_ the file has been
-           closed, as is done above here */
-        if(config->remote_time && outs.filename) {
-          /* ask libcurl if we got a time. Pretty please */
-          long filetime;
-          curl_easy_getinfo(curl, CURLINFO_FILETIME, &filetime);
-          if(filetime >= 0) {
-            struct utimbuf times;
-            times.actime = (time_t)filetime;
-            times.modtime = (time_t)filetime;
-            utime(outs.filename, &times); /* set the time we got */
-          }
-        }
-#endif
-#ifdef __AMIGA__
-        /* Set the url as comment for the file. (up to 80 chars are allowed)
-         */
-        if( strlen(url) > 78 )
-          url[79] = '\0';
-
-        SetComment( outs.filename, url);
-#endif
-
-quit_urls:
-        if(url)
-          free(url);
-
-        if(outfile)
-          free(outfile);
-
-        if(infdopen)
-          close(infd);
-
-      } /* loop to the next URL */
-
-      if(urls) {
-        /* cleanup memory used for URL globbing patterns */
-        glob_cleanup(urls);
-        urls = NULL;
-      }
-
-      if(uploadfile)
-        free(uploadfile);
-
-    } /* loop to the next globbed upload file */
-
-    if(inglob) {
-      glob_cleanup(inglob);
-      inglob = NULL;
-    }
-
-    if(outfiles)
-      free(outfiles);
-
-    /* empty this urlnode struct */
-    if(urlnode->url)
-      free(urlnode->url);
-    if(urlnode->outfile)
-      free(urlnode->outfile);
-    if(urlnode->infile)
-      free(urlnode->infile);
-
-    /* move on to the next URL */
-    nextnode=urlnode->next;
-    free(urlnode); /* free the node */
-    urlnode = nextnode;
-
-  } /* while-loop through all URLs */
-
-quit_curl:
-  if (httpgetfields)
-    free(httpgetfields);
-
-  if (config->engine)
-    free(config->engine);
-
-  /* cleanup the curl handle! */
-  curl_easy_cleanup(curl);
-  config->easy = NULL; /* cleanup now */
-  if (easycode)
-    curl_slist_append(easycode, "curl_easy_cleanup(hnd);");
-
-  if(heads.stream && (heads.stream != stdout))
-    fclose(heads.stream);
-
-  if(allocuseragent)
-    free(config->useragent);
-
-  if(config->trace_fopened && config->trace_stream)
-    fclose(config->trace_stream);
-
-  /* Dump the libcurl code if previously enabled.
-     NOTE: that this function relies on config->errors amongst other things
-     so not everything can be closed and cleaned before this is called */
-  dumpeasycode(config);
-
-  if(config->errors_fopened)
-    fclose(config->errors);
-
-  main_free(); /* cleanup */
-
-  return res;
-}
-
-/* Ensure that file descriptors 0, 1 and 2 (stdin, stdout, stderr) are
-   open before starting to run.  Otherwise, the first three network
-   sockets opened by curl could be used for input sources, downloaded data
-   or error logs as they will effectively be stdin, stdout and/or stderr.
-*/
-static void checkfds(void)
-{
-#ifdef HAVE_PIPE
-  int fd[2] = { STDIN_FILENO, STDIN_FILENO };
-  while( fd[0] == STDIN_FILENO ||
-         fd[0] == STDOUT_FILENO ||
-         fd[0] == STDERR_FILENO ||
-         fd[1] == STDIN_FILENO ||
-         fd[1] == STDOUT_FILENO ||
-         fd[1] == STDERR_FILENO )
-    if (pipe(fd) < 0)
-      return;   /* Out of handles. This isn't really a big problem now, but
-                   will be when we try to create a socket later. */
-  close(fd[0]);
-  close(fd[1]);
-#endif
-}
-
-
-
-int main(int argc, char *argv[])
-{
-  int res;
-  struct Configurable config;
-
-  memset(&config, 0, sizeof(struct Configurable));
-
-  config.errors = stderr; /* default errors to stderr */
-
-  checkfds();
-
-  res = operate(&config, argc, argv);
-#ifdef __SYMBIAN32__
-  if (config.showerror)
-    pressanykey();
-#endif
-  free_config_fields(&config);
-
-#ifdef __NOVELL_LIBC__
-  if (getenv("_IN_NETWARE_BASH_") == NULL)
-    pressanykey();
-#endif
-#ifdef __VMS
-  vms_special_exit(res, vms_show);
-#else
-  return res;
-#endif
-}
-
-/*
- * Reads a line from the given file, ensuring is NUL terminated.
- * The pointer must be freed by the caller.
- * NULL is returned on an out of memory condition.
- */
-static char *my_get_line(FILE *fp)
-{
-   char buf[4096];
-   char *nl = NULL;
-   char *retval = NULL;
-
-   do {
-     if (NULL == fgets(buf, sizeof(buf), fp))
-       break;
-     if (NULL == retval) {
-       retval = strdup(buf);
-       if(!retval)
-         return NULL;
-     }
-     else {
-       char *ptr;
-       ptr = realloc(retval, strlen(retval) + strlen(buf) + 1);
-       if (NULL == ptr) {
-         free(retval);
-         return NULL;
-       }
-       retval = ptr;
-       strcat(retval, buf);
-     }
-   }
-   while (NULL == (nl = strchr(retval, '\n')));
-
-   if (NULL != nl)
-     *nl = '\0';
-
-   return retval;
-}
-
-static void show_dir_errno(FILE *errors, const char *name)
-{
-  switch (ERRNO) {
-#ifdef EACCES
-  case EACCES:
-    fprintf(errors,"You don't have permission to create %s.\n", name);
-    break;
-#endif
-#ifdef ENAMETOOLONG
-  case ENAMETOOLONG:
-    fprintf(errors,"The directory name %s is too long.\n", name);
-    break;
-#endif
-#ifdef EROFS
-  case EROFS:
-    fprintf(errors,"%s resides on a read-only file system.\n", name);
-    break;
-#endif
-#ifdef ENOSPC
-  case ENOSPC:
-    fprintf(errors,"No space left on the file system that will "
-            "contain the directory %s.\n", name);
-    break;
-#endif
-#ifdef EDQUOT
-  case EDQUOT:
-    fprintf(errors,"Cannot create directory %s because you "
-            "exceeded your quota.\n", name);
-    break;
-#endif
-  default :
-    fprintf(errors,"Error creating directory %s.\n", name);
-    break;
-  }
-}
-
-/* Create the needed directory hierarchy recursively in order to save
-   multi-GETs in file output, ie:
-   curl "http://my.site/dir[1-5]/file[1-5].txt" -o "dir#1/file#2.txt"
-   should create all the dir* automagically
-*/
-static int create_dir_hierarchy(const char *outfile, FILE *errors)
-{
-  char *tempdir;
-  char *tempdir2;
-  char *outdup;
-  char *dirbuildup;
-  int result=0;
-
-  outdup = strdup(outfile);
-  if(!outdup)
-    return -1;
-
-  dirbuildup = malloc(sizeof(char) * strlen(outfile));
-  if(!dirbuildup) {
-    free(outdup);
-    return -1;
-  }
-  dirbuildup[0] = '\0';
-
-  tempdir = strtok(outdup, DIR_CHAR);
-
-  while (tempdir != NULL) {
-    tempdir2 = strtok(NULL, DIR_CHAR);
-    /* since strtok returns a token for the last word even
-       if not ending with DIR_CHAR, we need to prune it */
-    if (tempdir2 != NULL) {
-      size_t dlen = strlen(dirbuildup);
-      if (dlen)
-        sprintf(&dirbuildup[dlen], "%s%s", DIR_CHAR, tempdir);
-      else {
-        if (0 != strncmp(outdup, DIR_CHAR, 1))
-          strcpy(dirbuildup, tempdir);
-        else
-          sprintf(dirbuildup, "%s%s", DIR_CHAR, tempdir);
-      }
-      if (access(dirbuildup, F_OK) == -1) {
-        result = mkdir(dirbuildup,(mode_t)0000750);
-        if (-1 == result) {
-          show_dir_errno(errors, dirbuildup);
-          break; /* get out of loop */
-        }
-      }
-    }
-    tempdir = tempdir2;
-  }
-  free(dirbuildup);
-  free(outdup);
-
-  return result; /* 0 is fine, -1 is badness */
-}
-
-#if defined(MSDOS) || defined(WIN32)
-
-#ifndef HAVE_BASENAME
-/* basename() returns a pointer to the last component of a pathname.
- * Ripped from lib/formdata.c.
- */
-static char *Curl_basename(char *path)
-{
-  /* Ignore all the details above for now and make a quick and simple
-     implementaion here */
-  char *s1;
-  char *s2;
-
-  s1=strrchr(path, '/');
-  s2=strrchr(path, '\\');
-
-  if(s1 && s2) {
-    path = (s1 > s2? s1 : s2)+1;
-  }
-  else if(s1)
-    path = s1 + 1;
-  else if(s2)
-    path = s2 + 1;
-
-  return path;
-}
-#define basename(x) Curl_basename((x))
-#endif /* HAVE_BASENAME */
-
-/* The following functions are taken with modification from the DJGPP
- * port of tar 1.12. They use algorithms originally from DJTAR. */
-
-static const char *
-msdosify (const char *file_name)
-{
-  static char dos_name[PATH_MAX];
-  static const char illegal_chars_dos[] = ".+, ;=[]" /* illegal in DOS */
-                                       "|<>\\\":?*"; /* illegal in DOS & W95 */
-  static const char *illegal_chars_w95 = &illegal_chars_dos[8];
-  int idx, dot_idx;
-  const char *s = file_name;
-  char *d = dos_name;
-  const char * const dlimit = dos_name + sizeof(dos_name) - 1;
-  const char *illegal_aliens = illegal_chars_dos;
-  size_t len = sizeof (illegal_chars_dos) - 1;
-
-  /* Support for Windows 9X VFAT systems, when available. */
-  if (_use_lfn (file_name)) {
-    illegal_aliens = illegal_chars_w95;
-    len -= (illegal_chars_w95 - illegal_chars_dos);
-  }
-
-  /* Get past the drive letter, if any. */
-  if (s[0] >= 'A' && s[0] <= 'z' && s[1] == ':') {
-    *d++ = *s++;
-    *d++ = *s++;
-  }
-
-  for (idx = 0, dot_idx = -1; *s && d < dlimit; s++, d++) {
-    if (memchr (illegal_aliens, *s, len)) {
-      /* Dots are special: DOS doesn't allow them as the leading character,
-         and a file name cannot have more than a single dot.  We leave the
-         first non-leading dot alone, unless it comes too close to the
-         beginning of the name: we want sh.lex.c to become sh_lex.c, not
-         sh.lex-c.  */
-      if (*s == '.') {
-        if (idx == 0 && (s[1] == '/' || (s[1] == '.' && s[2] == '/'))) {
-          /* Copy "./" and "../" verbatim.  */
-          *d++ = *s++;
-          if (*s == '.')
-            *d++ = *s++;
-          *d = *s;
-        }
-        else if (idx == 0)
-          *d = '_';
-        else if (dot_idx >= 0) {
-          if (dot_idx < 5) { /* 5 is a heuristic ad-hoc'ery */
-            d[dot_idx - idx] = '_'; /* replace previous dot */
-            *d = '.';
-          }
-          else
-            *d = '-';
-        }
-        else
-          *d = '.';
-
-        if (*s == '.')
-          dot_idx = idx;
-      }
-      else if (*s == '+' && s[1] == '+') {
-        if (idx - 2 == dot_idx) { /* .c++, .h++ etc. */
-          *d++ = 'x';
-          *d   = 'x';
-        }
-        else {
-          /* libg++ etc.  */
-          memcpy (d, "plus", 4);
-          d += 3;
-        }
-        s++;
-        idx++;
-      }
-      else
-        *d = '_';
-    }
-    else
-      *d = *s;
-    if (*s == '/') {
-      idx = 0;
-      dot_idx = -1;
-    }
-    else
-      idx++;
-  }
-
-  *d = '\0';
-  return dos_name;
-}
-
-static char *
-rename_if_dos_device_name (char *file_name)
-{
-  /* We could have a file whose name is a device on MS-DOS.  Trying to
-   * retrieve such a file would fail at best and wedge us at worst.  We need
-   * to rename such files. */
-  char *base;
-  struct_stat st_buf;
-  char fname[PATH_MAX];
-
-  strncpy(fname, file_name, PATH_MAX-1);
-  fname[PATH_MAX-1] = 0;
-  base = basename(fname);
-  if (((stat(base, &st_buf)) == 0) && (S_ISCHR(st_buf.st_mode))) {
-    size_t blen = strlen (base);
-
-    if (strlen(fname) >= PATH_MAX-1) {
-      /* Make room for the '_' */
-      blen--;
-      base[blen] = 0;
-    }
-    /* Prepend a '_'.  */
-    memmove (base + 1, base, blen + 1);
-    base[0] = '_';
-    strcpy (file_name, fname);
-  }
-  return file_name;
-}
-
-/* Replace bad characters in the file name before using it.
- * fn will always be freed before return
- * The returned pointer must be freed by the caller if not NULL
- */
-static char *sanitize_dos_name(char *fn)
-{
-  char tmpfn[PATH_MAX];
-  fn[PATH_MAX-1]=0; /* ensure fn is not too long by possibly truncating it */
-  strcpy(tmpfn, msdosify(fn));
-  free(fn);
-  return strdup(rename_if_dos_device_name(tmpfn));
-}
-#endif /* MSDOS || WIN32 */
diff --git a/src/other/curl/src/makefile.amiga b/src/other/curl/src/makefile.amiga
deleted file mode 100755
index a242950..0000000
--- a/src/other/curl/src/makefile.amiga
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-# $VER: cURL Makefile for AmigaOS ...
-#
-
-# change the follow to where you have the AmiTCP SDK v4.3 includes:
-
-ATCPSDKI=	/GG/netinclude
-
-
-CC	=	m68k-amigaos-gcc
-CFLAGS	=	-I$(ATCPSDKI) -m68020-60 -O2 -msoft-float -noixemul -g -I. -I../include -W -Wall
-LIBS	=	../lib/libcurl.a -lssl -lcrypto -lz
-MANPAGE =	../docs/curl.1
-README	=	../docs/MANUAL
-MKHELP	=	../src/mkhelp.pl
-
-OBJS	=	getpass.c hugehelp.c main.c urlglob.c writeenv.c writeout.c curlutil.c os-specific.c ../lib/rawstr.c ../lib/nonblock.c
-
-
-all:	hugehelp.c $(OBJS:.c=.o)
-	$(CC) $(CFLAGS) -o cURL $(OBJS:.c=.o) $(LIBS) -Wl,-Map,cURL.map,--cref
-
-hugehelp.c: $(README) $(MANPAGE)  mkhelp.pl
-	rm -f hugehelp.c
-	/bin/nroff -man $(MANPAGE) | /bin/perl $(MKHELP) -c $(README) > hugehelp.c
-
-install:
-	$(INSTALL) -c cURL /c/cURL
-
diff --git a/src/other/curl/src/makefile.dj b/src/other/curl/src/makefile.dj
deleted file mode 100644
index 7f997f3..0000000
--- a/src/other/curl/src/makefile.dj
+++ /dev/null
@@ -1,84 +0,0 @@
-#
-#
-#  Adapted for djgpp2 / Watt-32 / DOS by
-#  Gisle Vanem <giva at bgnett.no>
-#
-
-DEPEND_PREREQ = curl_config.h hugehelp.c
-
-top_srcdir = ..
-TOPDIR = ..
-
-include ../packages/DOS/common.dj
-include Makefile.inc
-
-CSOURCES = $(CURL_SOURCES)
-
-ifeq ($(USE_SSL),1)
-  EX_LIBS += $(OPENSSL_ROOT)/lib/libssl.a $(OPENSSL_ROOT)/lib/libcrypt.a
-endif
-
-ifeq ($(USE_ARES),1)
-  EX_LIBS += $(ARES_ROOT)/libcares.a
-endif
-
-ifeq ($(USE_ZLIB),1)
-  EX_LIBS += $(ZLIB_ROOT)/libz.a
-  CFLAGS  += -DUSE_MANUAL
-endif
-
-ifeq ($(USE_IDNA),1)
-  EX_LIBS += $(LIBIDN_ROOT)/lib/dj_obj/libidn.a -liconv
-endif
-
-EX_LIBS += $(WATT32_ROOT)/lib/libwatt.a
-
-CFLAGS += -DUSE_ENVIRONMENT
-
-PROGRAM  = curl.exe
-OBJECTS += $(addprefix $(OBJ_DIR)/, $(CSOURCES:.c=.o))
-
-all: $(OBJ_DIR) curl_config.h $(PROGRAM)
-	@echo Welcome to cURL
-
-$(PROGRAM): $(OBJECTS) ../lib/libcurl.a
-	$(CC) -o $@ $^ $(LDFLAGS) $(EX_LIBS)
-
-curl_config.h:
-ifeq ($(IS_UNIX_SHELL),1)
-	@echo '#include "../lib/config.dos"' > $@
-else
-	@echo #include "../lib/config.dos" > $@
-endif
-
-#
-# groff 1.18+ requires "-P -c"
-#
-hugehelp.c: ../docs/MANUAL ../docs/curl.1 mkhelp.pl
-	groff -Tascii -man ../docs/curl.1 | \
-	perl -w mkhelp.pl ../docs/MANUAL > $@
-
-# clean generated files
-#
-genclean:
-	- $(DELETE) curl_config.h
-	- $(DELETE) hugehelp.c
-
-# clean object files and subdir
-#
-objclean: genclean
-	- $(DELETE) $(OBJ_DIR)$(DS)*.o
-	- $(RMDIR) $(OBJ_DIR)
-
-# clean without removing built program
-#
-clean: objclean
-	- $(DELETE) depend.dj
-
-# clean everything
-#
-realclean vclean: clean
-	- $(DELETE) $(PROGRAM)
-
--include depend.dj
-
diff --git a/src/other/curl/src/mkhelp.pl b/src/other/curl/src/mkhelp.pl
deleted file mode 100755
index 03c884f..0000000
--- a/src/other/curl/src/mkhelp.pl
+++ /dev/null
@@ -1,232 +0,0 @@
-#!/usr/local/bin/perl
-
-# Yeah, I know, probably 1000 other persons already wrote a script like
-# this, but I'll tell ya:
-
-# THEY DON'T FIT ME :-)
-
-# Get readme file as parameter:
-
-if($ARGV[0] eq "-c") {
-    $c=1;
-    shift @ARGV;
-}
-
-my $README = $ARGV[0];
-
-if($README eq "") {
-    print "usage: mkreadme.pl [-c] <README> < manpage\n";
-    exit;
-}
-
-
-push @out, "                                  _   _ ____  _\n";
-push @out, "  Project                     ___| | | |  _ \\| |\n";
-push @out, "                             / __| | | | |_) | |\n";
-push @out, "                            | (__| |_| |  _ <| |___\n";
-push @out, "                             \\___|\\___/|_| \\_\\_____|\n";
-
-my $olen=0;
-while (<STDIN>) {
-    my $line = $_;
-
-    # this should be removed:
-    $line =~ s/(.|_)//g;
-
-    if($line =~ /^([ \t]*\n|curl)/i) {
-        # cut off headers and empty lines
-        $wline++; # count number of cut off lines
-        next;
-    }
-
-    my $text = $line;
-    $text =~ s/^\s+//g; # cut off preceeding...
-    $text =~ s/\s+$//g; # and trailing whitespaces
-
-    $tlen = length($text);
-
-    if($wline && ($olen == $tlen)) {
-        # if the previous line with contents was exactly as long as
-        # this line, then we ignore the newlines!
-
-        # We do this magic because a header may abort a paragraph at
-        # any line, but we don't want that to be noticed in the output
-        # here
-        $wline=0;
-    }
-    $olen = $tlen;
-
-    if($wline) {
-        # we only make one empty line max
-        $wline = 0;
-        push @out, "\n";
-    }
-    push @out, $line;
-}
-push @out, "\n"; # just an extra newline
-
-open(READ, "<$README") ||
-    die "couldn't read the README infile $README";
-
-while(<READ>) {
-    push @out, $_;
-}
-close(READ);
-
-# if compressed
-if($c) {
-    my @test = `gzip --version 2>&1`;
-    if($test[0] =~ /gzip/) {
-        open(GZIP, ">dumpit") ||
-            die "can't create the dumpit file, try without -c";
-        binmode GZIP;
-        for(@out) {
-            print GZIP $_;
-            $gzip += length($_);
-        }
-        close(GZIP);
-
-        system("gzip --best --no-name dumpit");
-
-        open(GZIP, "<dumpit.gz") ||
-             die "can't read the dumpit.gz file, try without -c";
-        binmode GZIP;
-        while(<GZIP>) {
-            push @gzip, $_;
-            $gzipped += length($_);
-        }
-        close(GZIP);
-
-        unlink("dumpit.gz");
-    }
-    else {
-        # no gzip, no compression!
-        undef $c;
-        print STDERR "MEEEP: Couldn't find gzip, disable compression\n";
-    }
-}
-
-$now = localtime;
-print <<HEAD
-/*
- * NEVER EVER edit this manually, fix the mkhelp.pl script instead!
- * Generation time: $now
- */
-#include "setup.h"
-#ifdef USE_MANUAL
-#include "hugehelp.h"
-#include <stdio.h>
-HEAD
-    ;
-if($c) {
-    print <<HEAD
-#include <stdlib.h>
-#include <zlib.h>
-static const unsigned char hugehelpgz[] = {
-  /* This mumbo-jumbo is the huge help text compressed with gzip.
-     Thanks to this operation, the size of this data shrunk from $gzip
-     to $gzipped bytes. You can disable the use of compressed help
-     texts by NOT passing -c to the mkhelp.pl tool. */
-HEAD
-;
-    my $c=0;
-    print " ";
-    for(@gzip) {
-        my @all=split(//, $_);
-        for(@all) {
-            my $num=ord($_);
-            printf(" 0x%02x,", 0+$num);
-            if(++$c>11) {
-                print "\n ";
-                $c=0;
-            }
-        }
-    }
-    print "\n};\n";
-
-    print <<EOF
-#define BUF_SIZE 0x10000
-/* Decompress and send to stdout a gzip-compressed buffer */
-void hugehelp(void)
-{
-  unsigned char* buf;
-  int status,headerlen;
-  z_stream z;
-
-  /* Make sure no gzip options are set */
-  if (hugehelpgz[3] & 0xfe)
-    return;
-
-  headerlen = 10;
-  z.avail_in = (unsigned int)(sizeof(hugehelpgz) - headerlen);
-  z.next_in = (unsigned char *)hugehelpgz + headerlen;
-  z.zalloc = (alloc_func)Z_NULL;
-  z.zfree = (free_func)Z_NULL;
-  z.opaque = 0;
-
-  if (inflateInit2(&z, -MAX_WBITS) != Z_OK)
-    return;
-
-  buf = malloc(BUF_SIZE);
-  if (buf) {
-    while(1) {
-      z.avail_out = BUF_SIZE;
-      z.next_out = buf;
-      status = inflate(&z, Z_SYNC_FLUSH);
-      if (status == Z_OK || status == Z_STREAM_END) {
-        fwrite(buf, BUF_SIZE - z.avail_out, 1, stdout);
-        if (status == Z_STREAM_END)
-          break;
-      }
-      else
-        break;    /* Error */
-    }
-    free(buf);
-  }
-  inflateEnd(&z);
-}
-EOF
-    ;
-foot();
-exit;
-}
-else {
-    print <<HEAD
-void hugehelp(void)
-{
-   fputs(
-HEAD
-         ;
-}
-
-$outsize=0;
-for(@out) {
-    chop;
-
-    $new = $_;
-
-    $outsize += length($new)+1; # one for the newline
-
-    $new =~ s/\\/\\\\/g;
-    $new =~ s/\"/\\\"/g;
-
-    # gcc 2.96 claims ISO C89 only is required to support 509 letter strings
-    if($outsize > 500) {
-        # terminate and make another fputs() call here
-        print ", stdout);\n fputs(\n";
-        $outsize=length($new)+1;
-    }
-    printf("\"%s\\n\"\n", $new);
-
-}
-
-print ", stdout) ;\n}\n";
-
-foot();
-
-sub foot {
-  print <<FOOT
-#endif /* USE_MANUAL */
-FOOT
-  ;
-}
diff --git a/src/other/curl/src/os-specific.c b/src/other/curl/src/os-specific.c
deleted file mode 100644
index ac07c4c..0000000
--- a/src/other/curl/src/os-specific.c
+++ /dev/null
@@ -1,221 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-#include "setup.h"
-
-#include <curl/curl.h>
-
-#define ENABLE_CURLX_PRINTF
-#include "curlx.h"
-
-#include "os-specific.h"
-
-#if defined(CURLDEBUG) && defined(CURLTOOLDEBUG)
-#  include "memdebug.h"
-#endif
-
-#ifdef __VMS
-
-#include "curlmsg_vms.h"
-
-void decc$__posix_exit(int __status);
-void decc$exit(int __status);
-
-static int vms_shell = -1;
-
-/* VMS has a DCL shell and and also has Unix shells ported to it.
- * When curl is running under a Unix shell, we want it to be as much
- * like Unix as possible.
- */
-int is_vms_shell(void)
-{
-  char *shell;
-
-  /* Have we checked the shell yet? */
-  if(vms_shell >= 0)
-    return vms_shell;
-
-  shell = getenv("SHELL");
-
-  /* No shell, means DCL */
-  if(shell == NULL) {
-    vms_shell = 1;
-    return 1;
-  }
-
-  /* Have to make sure some one did not set shell to DCL */
-  if(strcmp(shell, "DCL") == 0) {
-    vms_shell = 1;
-    return 1;
-  }
-
-  vms_shell = 0;
-  return 0;
-}
-
-/*
- * VMS has two exit() routines.  When running under a Unix style shell, then
- * Unix style and the __posix_exit() routine is used.
- *
- * When running under the DCL shell, then the VMS encoded codes and decc$exit()
- * is used.
- *
- * We can not use exit() or return a code from main() because the actual
- * routine called depends on both the compiler version, compile options, and
- * feature macro settings, and one of the exit routines is hidden at compile
- * time.
- *
- * Since we want Curl to work properly under the VMS DCL shell and Unix
- * shells under VMS, this routine should compile correctly regardless of
- * the settings.
- */
-
-void vms_special_exit(int code, int vms_show)
-{
-  int vms_code;
-
-  /* The Posix exit mode is only available after VMS 7.0 */
-#if __CRTL_VER >= 70000000
-  if(is_vms_shell() == 0) {
-    decc$__posix_exit(code);
-  }
-#endif
-
-  if(code > CURL_LAST) {   /* If CURL_LAST exceeded then */
-    vms_code = CURL_LAST;  /* curlmsg.h is out of sync.  */
-  }
-  else {
-    vms_code = vms_cond[code] | vms_show;
-  }
-  decc$exit(vms_code);
-}
-
-#if defined(__DECC) && !defined(__VAX) && \
-    defined(__CRTL_VER) && (__CRTL_VER >= 70301000)
-
-/*
- * 2004-09-19 SMS.
- *
- * decc_init()
- *
- * On non-VAX systems, use LIB$INITIALIZE to set a collection of C
- * RTL features without using the DECC$* logical name method, nor
- * requiring the user to define the corresponding logical names.
- */
-
-#include <unixlib.h>
-
-/* Structure to hold a DECC$* feature name and its desired value. */
-typedef struct {
-  char *name;
-  int value;
-} decc_feat_t;
-
-/* Array of DECC$* feature names and their desired values. */
-static decc_feat_t decc_feat_array[] = {
-  /* Preserve command-line case with SET PROCESS/PARSE_STYLE=EXTENDED */
-  { "DECC$ARGV_PARSE_STYLE", 1 },
-  /* Preserve case for file names on ODS5 disks. */
-  { "DECC$EFS_CASE_PRESERVE", 1 },
-  /* Enable multiple dots (and most characters) in ODS5 file names,
-     while preserving VMS-ness of ";version". */
-  { "DECC$EFS_CHARSET", 1 },
-  /* List terminator. */
-  { (char *)NULL, 0 }
-};
-
-/* Flag to sense if decc_init() was called. */
-static int decc_init_done = -1;
-
-/* LIB$INITIALIZE initialization function. */
-static void decc_init(void)
-{
-  int feat_index;
-  int feat_value;
-  int feat_value_max;
-  int feat_value_min;
-  int i;
-  int sts;
-
-  /* Set the global flag to indicate that LIB$INITIALIZE worked. */
-  decc_init_done = 1;
-
-  /* Loop through all items in the decc_feat_array[]. */
-  for(i = 0; decc_feat_array[i].name != NULL; i++) {
-
-    /* Get the feature index. */
-    feat_index = decc$feature_get_index( decc_feat_array[i].name);
-
-    if(feat_index >= 0) {
-      /* Valid item.  Collect its properties. */
-      feat_value = decc$feature_get_value( feat_index, 1);
-      feat_value_min = decc$feature_get_value( feat_index, 2);
-      feat_value_max = decc$feature_get_value( feat_index, 3);
-
-      if((decc_feat_array[i].value >= feat_value_min) &&
-         (decc_feat_array[i].value <= feat_value_max)) {
-        /* Valid value.  Set it if necessary. */
-        if(feat_value != decc_feat_array[i].value) {
-          sts = decc$feature_set_value( feat_index, 1,
-                                        decc_feat_array[i].value);
-        }
-      }
-      else {
-        /* Invalid DECC feature value. */
-        printf(" INVALID DECC FEATURE VALUE, %d: %d <= %s <= %d.\n",
-               feat_value,
-               feat_value_min, decc_feat_array[i].name, feat_value_max);
-      }
-    }
-    else {
-      /* Invalid DECC feature name. */
-      printf(" UNKNOWN DECC FEATURE: %s.\n", decc_feat_array[i].name);
-    }
-
-  }
-}
-
-/* Get "decc_init()" into a valid, loaded LIB$INITIALIZE PSECT. */
-
-#pragma nostandard
-
-/* Establish the LIB$INITIALIZE PSECTs, with proper alignment and
-   other attributes.  Note that "nopic" is significant only on VAX. */
-#pragma extern_model save
-#pragma extern_model strict_refdef "LIB$INITIALIZ" 2, nopic, nowrt
-const int spare[8] = {0};
-#pragma extern_model strict_refdef "LIB$INITIALIZE" 2, nopic, nowrt
-void (*const x_decc_init)() = decc_init;
-#pragma extern_model restore
-
-/* Fake reference to ensure loading the LIB$INITIALIZE PSECT. */
-#pragma extern_model save
-int LIB$INITIALIZE(void);
-#pragma extern_model strict_refdef
-int dmy_lib$initialize = (int) LIB$INITIALIZE;
-#pragma extern_model restore
-
-#pragma standard
-
-#endif /* __DECC && !__VAX && __CRTL_VER && __CRTL_VER >= 70301000 */
-
-#endif /* __VMS */
-
diff --git a/src/other/curl/src/os-specific.h b/src/other/curl/src/os-specific.h
deleted file mode 100644
index 93cac74..0000000
--- a/src/other/curl/src/os-specific.h
+++ /dev/null
@@ -1,38 +0,0 @@
-#ifndef HEADER_CURL_OS_SPECIFIC_H
-#define HEADER_CURL_OS_SPECIFIC_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#ifdef __VMS
-
-int is_vms_shell(void);
-void vms_special_exit(int code, int vms_show);
-
-#undef exit
-#define exit(__code) vms_special_exit((__code), (0))
-
-#define  VMS_STS(c,f,e,s) (((c&0xF)<<28)|((f&0xFFF)<<16)|((e&0x1FFF)<3)|(s&7))
-#define  VMSSTS_HIDE  VMS_STS(1,0,0,0)
-
-#endif /* __VMS */
-
-#endif /* HEADER_CURL_OS_SPECIFIC_H */
diff --git a/src/other/curl/src/setup.h b/src/other/curl/src/setup.h
deleted file mode 100644
index 69da710..0000000
--- a/src/other/curl/src/setup.h
+++ /dev/null
@@ -1,218 +0,0 @@
-#ifndef HEADER_CURL_SRC_SETUP_H
-#define HEADER_CURL_SRC_SETUP_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#define CURL_NO_OLDIES
-
-/*
- * Define WIN32 when build target is Win32 API
- */
-
-#if (defined(_WIN32) || defined(__WIN32__)) && !defined(WIN32) && !defined(__SYMBIAN32__)
-#define WIN32
-#endif
-
-/*
- * Include configuration script results or hand-crafted
- * configuration file for platforms which lack config tool.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "curl_config.h"
-#else
-
-#ifdef WIN32
-#include "config-win32.h"
-#endif
-
-#if defined(macintosh) && defined(__MRC__)
-#  include "config-mac.h"
-#endif
-
-#ifdef __riscos__
-#include "config-riscos.h"
-#endif
-
-#ifdef __AMIGA__
-#include "config-amigaos.h"
-#endif
-
-#ifdef __SYMBIAN32__
-#include "config-symbian.h"
-#endif
-
-#ifdef TPF
-#include "config-tpf.h"
-#endif
-
-#endif /* HAVE_CONFIG_H */
-
-/*
- * AIX 4.3 and newer needs _THREAD_SAFE defined to build
- * proper reentrant code. Others may also need it.
- */
-
-#ifdef NEED_THREAD_SAFE
-#  ifndef _THREAD_SAFE
-#    define _THREAD_SAFE
-#  endif
-#endif
-
-/*
- * Tru64 needs _REENTRANT set for a few function prototypes and
- * things to appear in the system header files. Unixware needs it
- * to build proper reentrant code. Others may also need it.
- */
-
-#ifdef NEED_REENTRANT
-#  ifndef _REENTRANT
-#    define _REENTRANT
-#  endif
-#endif
-
-/*
- * Include header files for windows builds before redefining anything.
- * Use this preproessor block only to include or exclude windows.h,
- * winsock2.h, ws2tcpip.h or winsock.h. Any other windows thing belongs
- * to any other further and independent block.  Under Cygwin things work
- * just as under linux (e.g. <sys/socket.h>) and the winsock headers should
- * never be included when __CYGWIN__ is defined.  configure script takes
- * care of this, not defining HAVE_WINDOWS_H, HAVE_WINSOCK_H, HAVE_WINSOCK2_H,
- * neither HAVE_WS2TCPIP_H when __CYGWIN__ is defined.
- */
-
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#    ifdef HAVE_WS2TCPIP_H
-#       include <ws2tcpip.h>
-#    endif
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
-#  endif
-#endif
-
-/*
- * Define USE_WINSOCK to 2 if we have and use WINSOCK2 API, else
- * define USE_WINSOCK to 1 if we have and use WINSOCK  API, else
- * undefine USE_WINSOCK.
- */
-
-#undef USE_WINSOCK
-
-#ifdef HAVE_WINSOCK2_H
-#  define USE_WINSOCK 2
-#else
-#  ifdef HAVE_WINSOCK_H
-#    define USE_WINSOCK 1
-#  endif
-#endif
-
-#ifdef TPF
-#  include <sys/socket.h>
-   /* change which select is used for the curl command line tool */
-#  define select(a,b,c,d,e) tpf_select_bsd(a,b,c,d,e)
-   /* and turn off the progress meter */
-#  define CONF_DEFAULT (0|CONF_NOPROGRESS)
-#endif
-
-#include <stdio.h>
-
-#ifdef __TANDEM
-#include <floss.h>
-#endif
-
-
-#ifndef OS
-#define OS "unknown"
-#endif
-
-#if !defined(fileno) && !defined(WIN32) /* sunos 4 have this as a macro! */
-int fileno( FILE *stream);
-#endif
-
-#ifdef WIN32
-#define DIR_CHAR      "\\"
-#define DOT_CHAR      "_"
-#else
-#ifdef __EMX__
-/* 20000318 mgs
- * OS/2 supports leading dots in filenames if the volume is formatted
- * with JFS or HPFS. */
-#define DIR_CHAR      "\\"
-#define DOT_CHAR      "."
-#else
-
-#ifdef DJGPP
-#include <tcp.h>
-#ifdef word
-#undef word
-#endif
-#define DIR_CHAR      "/"
-#define DOT_CHAR      "_"
-#else
-
-#define DIR_CHAR      "/"
-#define DOT_CHAR      "."
-
-#endif /* !DJGPP */
-#endif /* !__EMX__ */
-#endif /* !WIN32 */
-
-#ifdef __riscos__
-#define USE_ENVIRONMENT
-#endif
-
-#ifdef __BEOS__
-#define typedef_bool
-#endif
-
-#if (defined(NETWARE) && !defined(__NOVELL_LIBC__))
-#include <sys/timeval.h>
-#endif
-
-#ifndef UNPRINTABLE_CHAR
-/* define what to use for unprintable characters */
-#define UNPRINTABLE_CHAR '.'
-#endif
-
-#ifndef HAVE_STRDUP
-#include "strdup.h"
-#define strdup(ptr) curlx_strdup(ptr)
-#endif
-
-/*
- * Include macros and defines that should only be processed once.
- */
-
-#ifndef __SETUP_ONCE_H
-#include "setup_once.h"
-#endif
-
-#endif /* HEADER_CURL_SRC_SETUP_H */
diff --git a/src/other/curl/src/urlglob.c b/src/other/curl/src/urlglob.c
deleted file mode 100644
index 5f8fb28..0000000
--- a/src/other/curl/src/urlglob.c
+++ /dev/null
@@ -1,567 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-/* client-local setup.h */
-#include "setup.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-#include <curl/curl.h>
-
-#define _MPRINTF_REPLACE /* we want curl-functions instead of native ones */
-#include <curl/mprintf.h>
-
-#include "urlglob.h"
-#include "os-specific.h"
-
-#if defined(CURLDEBUG) && defined(CURLTOOLDEBUG)
-#include "memdebug.h"
-#endif
-
-typedef enum {
-  GLOB_OK,
-  GLOB_ERROR
-} GlobCode;
-
-/*
- * glob_word()
- *
- * Input a full globbed string, set the forth argument to the amount of
- * strings we get out of this. Return GlobCode.
- */
-static GlobCode glob_word(URLGlob *, /* object anchor */
-                          char *,    /* globbed string */
-                          size_t,       /* position */
-                          int *);    /* returned number of strings */
-
-static GlobCode glob_set(URLGlob *glob, char *pattern,
-                         size_t pos, int *amount)
-{
-  /* processes a set expression with the point behind the opening '{'
-     ','-separated elements are collected until the next closing '}'
-  */
-  bool done = FALSE;
-  char* buf = glob->glob_buffer;
-  URLPattern *pat;
-
-  pat = (URLPattern*)&glob->pattern[glob->size / 2];
-  /* patterns 0,1,2,... correspond to size=1,3,5,... */
-  pat->type = UPTSet;
-  pat->content.Set.size = 0;
-  pat->content.Set.ptr_s = 0;
-  /* FIXME: Here's a nasty zero size malloc */
-  pat->content.Set.elements = (char**)malloc(0);
-  ++glob->size;
-
-  while (!done) {
-    bool skip;
-
-    switch (*pattern) {
-    case '\0':                  /* URL ended while set was still open */
-      snprintf(glob->errormsg, sizeof(glob->errormsg),
-               "unmatched brace at pos %zu\n", pos);
-      return GLOB_ERROR;
-
-    case '{':
-    case '[':                   /* no nested expressions at this time */
-      snprintf(glob->errormsg, sizeof(glob->errormsg),
-               "nested braces not supported at pos %zu\n", pos);
-      return GLOB_ERROR;
-
-    case ',':
-    case '}':                           /* set element completed */
-      *buf = '\0';
-      pat->content.Set.elements =
-        realloc(pat->content.Set.elements,
-                (pat->content.Set.size + 1) * sizeof(char*));
-      if (!pat->content.Set.elements) {
-        snprintf(glob->errormsg, sizeof(glob->errormsg), "out of memory");
-        return GLOB_ERROR;
-      }
-      pat->content.Set.elements[pat->content.Set.size] =
-        strdup(glob->glob_buffer);
-      ++pat->content.Set.size;
-
-      if (*pattern == '}') {
-        /* entire set pattern completed */
-        int wordamount;
-
-        /* always check for a literal (may be "") between patterns */
-        if(GLOB_ERROR == glob_word(glob, ++pattern, ++pos, &wordamount))
-          wordamount=1;
-        *amount = pat->content.Set.size * wordamount;
-
-        done = TRUE;
-        continue;
-      }
-
-      buf = glob->glob_buffer;
-      ++pattern;
-      ++pos;
-      break;
-
-    case ']':                           /* illegal closing bracket */
-      snprintf(glob->errormsg, sizeof(glob->errormsg),
-               "illegal pattern at pos %zu\n", pos);
-      return GLOB_ERROR;
-
-    case '\\':                          /* escaped character, skip '\' */
-      switch(pattern[1]) {
-      case '[':
-      case ']':
-      case '{':
-      case '}':
-      case ',':
-        skip = TRUE;
-        break;
-      default:
-        skip = FALSE;
-        break;
-      }
-      if(skip) {
-        if (*(buf+1) == '\0') {           /* but no escaping of '\0'! */
-          snprintf(glob->errormsg, sizeof(glob->errormsg),
-                   "illegal pattern at pos %zu\n", pos);
-          return GLOB_ERROR;
-        }
-        ++pattern;
-        ++pos;
-      }
-      /* intentional fallthrough */
-    default:
-      *buf++ = *pattern++;              /* copy character to set element */
-      ++pos;
-    }
-  }
-  return GLOB_OK;
-}
-
-static GlobCode glob_range(URLGlob *glob, char *pattern,
-                           size_t pos, int *amount)
-{
-  /* processes a range expression with the point behind the opening '['
-     - char range: e.g. "a-z]", "B-Q]"
-     - num range: e.g. "0-9]", "17-2000]"
-     - num range with leading zeros: e.g. "001-999]"
-     expression is checked for well-formedness and collected until the next ']'
-  */
-  URLPattern *pat;
-  char *c;
-  int wordamount=1;
-  char sep;
-  char sep2;
-  int step;
-  int rc;
-
-  pat = (URLPattern*)&glob->pattern[glob->size / 2];
-  /* patterns 0,1,2,... correspond to size=1,3,5,... */
-  ++glob->size;
-
-  if (ISALPHA(*pattern)) {         /* character range detected */
-    char min_c;
-    char max_c;
-
-    pat->type = UPTCharRange;
-    rc = sscanf(pattern, "%c-%c%c%d%c", &min_c, &max_c, &sep, &step, &sep2);
-    if ((rc < 3) || (min_c >= max_c) || ((max_c - min_c) > ('z' - 'a'))) {
-      /* the pattern is not well-formed */
-      snprintf(glob->errormsg, sizeof(glob->errormsg),
-               "error: bad range specification after pos %zu\n", pos);
-      return GLOB_ERROR;
-    }
-
-    /* check the (first) separating character */
-    if((sep != ']') && (sep != ':')) {
-      snprintf(glob->errormsg, sizeof(glob->errormsg),
-               "error: unsupported character (%c) after range at pos %zu\n",
-               sep, pos);
-      return GLOB_ERROR;
-    }
-
-    /* if there was a ":[num]" thing, use that as step or else use 1 */
-    pat->content.CharRange.step =
-      ((sep == ':') && (rc == 5) && (sep2 == ']'))?step:1;
-
-    pat->content.CharRange.ptr_c = pat->content.CharRange.min_c = min_c;
-    pat->content.CharRange.max_c = max_c;
-  }
-  else if (ISDIGIT(*pattern)) { /* numeric range detected */
-    int min_n;
-    int max_n;
-
-    pat->type = UPTNumRange;
-    pat->content.NumRange.padlength = 0;
-
-    rc = sscanf(pattern, "%d-%d%c%d%c", &min_n, &max_n, &sep, &step, &sep2);
-
-    if ((rc < 2) || (min_n > max_n)) {
-      /* the pattern is not well-formed */
-      snprintf(glob->errormsg, sizeof(glob->errormsg),
-               "error: bad range specification after pos %zu\n", pos);
-      return GLOB_ERROR;
-    }
-    pat->content.NumRange.ptr_n =  pat->content.NumRange.min_n = min_n;
-    pat->content.NumRange.max_n = max_n;
-
-    /* if there was a ":[num]" thing, use that as step or else use 1 */
-    pat->content.NumRange.step =
-      ((sep == ':') && (rc == 5) && (sep2 == ']'))?step:1;
-
-    if (*pattern == '0') {              /* leading zero specified */
-      c = pattern;
-      while (ISDIGIT(*c)) {
-        c++;
-        ++pat->content.NumRange.padlength; /* padding length is set for all
-                                              instances of this pattern */
-      }
-    }
-
-  }
-  else {
-    snprintf(glob->errormsg, sizeof(glob->errormsg),
-             "illegal character in range specification at pos %zu\n", pos);
-    return GLOB_ERROR;
-  }
-
-  c = (char*)strchr(pattern, ']'); /* continue after next ']' */
-  if(c)
-    c++;
-  else {
-    snprintf(glob->errormsg, sizeof(glob->errormsg), "missing ']'");
-    return GLOB_ERROR; /* missing ']' */
-  }
-
-  /* always check for a literal (may be "") between patterns */
-
-  if(GLOB_ERROR == glob_word(glob, c, pos + (c - pattern), &wordamount))
-    wordamount = 1;
-
-  if(pat->type == UPTCharRange)
-    *amount = (pat->content.CharRange.max_c -
-               pat->content.CharRange.min_c + 1) *
-      wordamount;
-  else
-    *amount = (pat->content.NumRange.max_n -
-               pat->content.NumRange.min_n + 1) * wordamount;
-
-  return GLOB_OK;
-}
-
-static GlobCode glob_word(URLGlob *glob, char *pattern,
-                          size_t pos, int *amount)
-{
-  /* processes a literal string component of a URL
-     special characters '{' and '[' branch to set/range processing functions
-   */
-  char* buf = glob->glob_buffer;
-  size_t litindex;
-  GlobCode res = GLOB_OK;
-
-  *amount = 1; /* default is one single string */
-
-  while (*pattern != '\0' && *pattern != '{' && *pattern != '[') {
-    if (*pattern == '}' || *pattern == ']')
-      return GLOB_ERROR;
-
-    /* only allow \ to escape known "special letters" */
-    if (*pattern == '\\' &&
-        (*(pattern+1) == '{' || *(pattern+1) == '[' ||
-         *(pattern+1) == '}' || *(pattern+1) == ']') ) {
-
-      /* escape character, skip '\' */
-      ++pattern;
-      ++pos;
-      if (*pattern == '\0')             /* but no escaping of '\0'! */
-        return GLOB_ERROR;
-    }
-    *buf++ = *pattern++;                /* copy character to literal */
-    ++pos;
-  }
-  *buf = '\0';
-  litindex = glob->size / 2;
-  /* literals 0,1,2,... correspond to size=0,2,4,... */
-  glob->literal[litindex] = strdup(glob->glob_buffer);
-  if(!glob->literal[litindex])
-    return GLOB_ERROR;
-  ++glob->size;
-
-  switch (*pattern) {
-  case '\0':
-    break;                      /* singular URL processed  */
-
-  case '{':
-    /* process set pattern */
-    res = glob_set(glob, ++pattern, ++pos, amount);
-    break;
-
-  case '[':
-    /* process range pattern */
-    res= glob_range(glob, ++pattern, ++pos, amount);
-    break;
-  }
-
-  if(GLOB_OK != res)
-    /* free that strdup'ed string again */
-    free(glob->literal[litindex]);
-
-  return res; /* something got wrong */
-}
-
-int glob_url(URLGlob** glob, char* url, int *urlnum, FILE *error)
-{
-  /*
-   * We can deal with any-size, just make a buffer with the same length
-   * as the specified URL!
-   */
-  URLGlob *glob_expand;
-  int amount;
-  char *glob_buffer = malloc(strlen(url)+1);
-
-  *glob = NULL;
-  if(NULL == glob_buffer)
-    return CURLE_OUT_OF_MEMORY;
-
-  glob_expand = calloc(1, sizeof(URLGlob));
-  if(NULL == glob_expand) {
-    free(glob_buffer);
-    return CURLE_OUT_OF_MEMORY;
-  }
-  glob_expand->size = 0;
-  glob_expand->urllen = strlen(url);
-  glob_expand->glob_buffer = glob_buffer;
-  glob_expand->beenhere=0;
-  if(GLOB_OK == glob_word(glob_expand, url, 1, &amount))
-    *urlnum = amount;
-  else {
-    if(error && glob_expand->errormsg[0]) {
-      /* send error description to the error-stream */
-      fprintf(error, "curl: (%d) [globbing] %s\n",
-              CURLE_URL_MALFORMAT, glob_expand->errormsg);
-    }
-    /* it failed, we cleanup */
-    free(glob_buffer);
-    free(glob_expand);
-    glob_expand = NULL;
-    *urlnum = 1;
-    return CURLE_URL_MALFORMAT;
-  }
-
-  *glob = glob_expand;
-  return CURLE_OK;
-}
-
-void glob_cleanup(URLGlob* glob)
-{
-  size_t i;
-  int elem;
-
-  for (i = glob->size - 1; i < glob->size; --i) {
-    if (!(i & 1)) {     /* even indexes contain literals */
-      free(glob->literal[i/2]);
-    }
-    else {              /* odd indexes contain sets or ranges */
-      if (glob->pattern[i/2].type == UPTSet) {
-        for (elem = glob->pattern[i/2].content.Set.size - 1;
-             elem >= 0;
-             --elem) {
-          free(glob->pattern[i/2].content.Set.elements[elem]);
-        }
-        free(glob->pattern[i/2].content.Set.elements);
-      }
-    }
-  }
-  free(glob->glob_buffer);
-  free(glob);
-}
-
-char *glob_next_url(URLGlob *glob)
-{
-  char *buf = glob->glob_buffer;
-  URLPattern *pat;
-  char *lit;
-  size_t i;
-  size_t j;
-  size_t buflen = glob->urllen+1;
-  size_t len;
-
-  if (!glob->beenhere)
-    glob->beenhere = 1;
-  else {
-    bool carry = TRUE;
-
-    /* implement a counter over the index ranges of all patterns,
-       starting with the rightmost pattern */
-    for (i = glob->size / 2 - 1; carry && i < glob->size; --i) {
-      carry = FALSE;
-      pat = &glob->pattern[i];
-      switch (pat->type) {
-      case UPTSet:
-        if (++pat->content.Set.ptr_s == pat->content.Set.size) {
-          pat->content.Set.ptr_s = 0;
-          carry = TRUE;
-        }
-        break;
-      case UPTCharRange:
-        pat->content.CharRange.ptr_c = (char)(pat->content.CharRange.step +
-                           (int)((unsigned char)pat->content.CharRange.ptr_c));
-        if (pat->content.CharRange.ptr_c > pat->content.CharRange.max_c) {
-          pat->content.CharRange.ptr_c = pat->content.CharRange.min_c;
-          carry = TRUE;
-        }
-        break;
-      case UPTNumRange:
-        pat->content.NumRange.ptr_n += pat->content.NumRange.step;
-        if (pat->content.NumRange.ptr_n > pat->content.NumRange.max_n) {
-          pat->content.NumRange.ptr_n = pat->content.NumRange.min_n;
-          carry = TRUE;
-        }
-        break;
-      default:
-        printf("internal error: invalid pattern type (%d)\n", (int)pat->type);
-        exit (CURLE_FAILED_INIT);
-      }
-    }
-    if (carry)          /* first pattern ptr has run into overflow, done! */
-      return NULL;
-  }
-
-  for (j = 0; j < glob->size; ++j) {
-    if (!(j&1)) {              /* every other term (j even) is a literal */
-      lit = glob->literal[j/2];
-      len = snprintf(buf, buflen, "%s", lit);
-      buf += len;
-      buflen -= len;
-    }
-    else {                              /* the rest (i odd) are patterns */
-      pat = &glob->pattern[j/2];
-      switch(pat->type) {
-      case UPTSet:
-        len = strlen(pat->content.Set.elements[pat->content.Set.ptr_s]);
-        snprintf(buf, buflen, "%s",
-                 pat->content.Set.elements[pat->content.Set.ptr_s]);
-        buf += len;
-        buflen -= len;
-        break;
-      case UPTCharRange:
-        *buf++ = pat->content.CharRange.ptr_c;
-        break;
-      case UPTNumRange:
-        len = snprintf(buf, buflen, "%0*d",
-                       pat->content.NumRange.padlength,
-                       pat->content.NumRange.ptr_n);
-        buf += len;
-        buflen -= len;
-        break;
-      default:
-        printf("internal error: invalid pattern type (%d)\n", (int)pat->type);
-        exit (CURLE_FAILED_INIT);
-      }
-    }
-  }
-  *buf = '\0';
-  return strdup(glob->glob_buffer);
-}
-
-char *glob_match_url(char *filename, URLGlob *glob)
-{
-  char *target;
-  size_t allocsize;
-  size_t stringlen=0;
-  char numbuf[18];
-  char *appendthis = NULL;
-  size_t appendlen = 0;
-
-  /* We cannot use the glob_buffer for storage here since the filename may
-   * be longer than the URL we use. We allocate a good start size, then
-   * we need to realloc in case of need.
-   */
-  allocsize=strlen(filename)+1; /* make it at least one byte to store the
-                                   trailing zero */
-  target = malloc(allocsize);
-  if(NULL == target)
-    return NULL; /* major failure */
-
-  while (*filename) {
-    if (*filename == '#' && ISDIGIT(filename[1])) {
-      unsigned long i;
-      char *ptr = filename;
-      unsigned long num = strtoul(&filename[1], &filename, 10);
-      i = num-1;
-
-      if (num && (i <= glob->size / 2)) {
-        URLPattern pat = glob->pattern[i];
-        switch (pat.type) {
-        case UPTSet:
-          appendthis = pat.content.Set.elements[pat.content.Set.ptr_s];
-          appendlen = strlen(pat.content.Set.elements[pat.content.Set.ptr_s]);
-          break;
-        case UPTCharRange:
-          numbuf[0]=pat.content.CharRange.ptr_c;
-          numbuf[1]=0;
-          appendthis=numbuf;
-          appendlen=1;
-          break;
-        case UPTNumRange:
-          snprintf(numbuf, sizeof(numbuf), "%0*d",
-                   pat.content.NumRange.padlength,
-                   pat.content.NumRange.ptr_n);
-          appendthis = numbuf;
-          appendlen = strlen(numbuf);
-          break;
-        default:
-          printf("internal error: invalid pattern type (%d)\n",
-                 (int)pat.type);
-          free(target);
-          return NULL;
-        }
-      }
-      else {
-        /* #[num] out of range, use the #[num] in the output */
-        filename = ptr;
-        appendthis=filename++;
-        appendlen=1;
-      }
-    }
-    else {
-      appendthis=filename++;
-      appendlen=1;
-    }
-    if(appendlen + stringlen >= allocsize) {
-      char *newstr;
-      /* we append a single byte to allow for the trailing byte to be appended
-         at the end of this function outside the while() loop */
-      allocsize = (appendlen + stringlen)*2;
-      newstr=realloc(target, allocsize + 1);
-      if(NULL ==newstr) {
-        free(target);
-        return NULL;
-      }
-      target=newstr;
-    }
-    memcpy(&target[stringlen], appendthis, appendlen);
-    stringlen += appendlen;
-  }
-  target[stringlen]= '\0';
-  return target;
-}
diff --git a/src/other/curl/src/urlglob.h b/src/other/curl/src/urlglob.h
deleted file mode 100644
index a5b789e..0000000
--- a/src/other/curl/src/urlglob.h
+++ /dev/null
@@ -1,67 +0,0 @@
-#ifndef __URLGLOB_H
-#define __URLGLOB_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-typedef enum {
-  UPTSet=1,
-  UPTCharRange,
-  UPTNumRange
-} URLPatternType;
-
-typedef struct {
-  URLPatternType type;
-  union {
-    struct {
-      char **elements;
-      short size;
-      short ptr_s;
-    } Set;
-    struct {
-      char min_c, max_c;
-      char ptr_c;
-      int step;
-    } CharRange;
-    struct {
-      int min_n, max_n;
-      short padlength;
-      int ptr_n;
-      int step;
-    } NumRange ;
-  } content;
-} URLPattern;
-
-typedef struct {
-  char* literal[10];
-  URLPattern pattern[9];
-  size_t size;
-  size_t urllen;
-  char *glob_buffer;
-  char beenhere;
-  char errormsg[80]; /* error message buffer */
-} URLGlob;
-
-int glob_url(URLGlob**, char*, int *, FILE *);
-char* glob_next_url(URLGlob*);
-char* glob_match_url(char*, URLGlob *);
-void glob_cleanup(URLGlob* glob);
-
-#endif
diff --git a/src/other/curl/src/vc6curlsrc.dsp b/src/other/curl/src/vc6curlsrc.dsp
deleted file mode 100644
index e4ed7c9..0000000
--- a/src/other/curl/src/vc6curlsrc.dsp
+++ /dev/null
@@ -1,258 +0,0 @@
-# Microsoft Developer Studio Project File - Name="curlsrc" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=curlsrc - Win32 using libcurl LIB Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "curlsrc.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "curlsrc.mak" CFG="curlsrc - Win32 using libcurl LIB Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "curlsrc - Win32 using libcurl DLL Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE "curlsrc - Win32 using libcurl DLL Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "curlsrc - Win32 using libcurl LIB Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE "curlsrc - Win32 using libcurl LIB Release" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "curlsrc - Win32 using libcurl DLL Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "DLL-Debug"
-# PROP BASE Intermediate_Dir "DLL-Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "DLL-Debug"
-# PROP Intermediate_Dir "DLL-Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\lib" /I "..\include" /I "." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\lib" /I "..\include" /I "." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" /FD /GZ /c
-# ADD BASE RSC /l 0x409 /i "..\include" /d "_DEBUG"
-# ADD RSC /l 0x409 /i "..\include" /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 libcurld_imp.lib kernel32.lib ws2_32.lib wldap32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"DLL-Debug/curl.exe" /pdbtype:sept /libpath:"..\lib\DLL-Debug"
-# ADD LINK32 libcurld_imp.lib kernel32.lib ws2_32.lib wldap32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"DLL-Debug/curl.exe" /pdbtype:sept /libpath:"..\lib\DLL-Debug"
-
-!ELSEIF  "$(CFG)" == "curlsrc - Win32 using libcurl DLL Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "DLL-Release"
-# PROP BASE Intermediate_Dir "DLL-Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "DLL-Release"
-# PROP Intermediate_Dir "DLL-Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "..\lib" /I "..\include" /I "." /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_CONSOLE" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\lib" /I "..\include" /I "." /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_CONSOLE" /FD /c
-# ADD BASE RSC /l 0x409 /i "..\include" /d "NDEBUG"
-# ADD RSC /l 0x409 /i "..\include" /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 libcurl_imp.lib kernel32.lib ws2_32.lib wldap32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"DLL-Release/curl.exe" /libpath:"..\lib\DLL-Release"
-# ADD LINK32 libcurl_imp.lib kernel32.lib ws2_32.lib wldap32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"DLL-Release/curl.exe" /libpath:"..\lib\DLL-Release"
-
-!ELSEIF  "$(CFG)" == "curlsrc - Win32 using libcurl LIB Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "LIB-Debug"
-# PROP BASE Intermediate_Dir "LIB-Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "LIB-Debug"
-# PROP Intermediate_Dir "LIB-Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\lib" /I "..\include" /I "." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\lib" /I "..\include" /I "." /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /GZ /c
-# ADD BASE RSC /l 0x409 /i "..\include" /d "_DEBUG"
-# ADD RSC /l 0x409 /i "..\include" /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 libcurld.lib kernel32.lib ws2_32.lib wldap32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"LIB-Debug/curl.exe" /pdbtype:sept /libpath:"..\lib\LIB-Debug"
-# ADD LINK32 libcurld.lib kernel32.lib ws2_32.lib wldap32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"LIB-Debug/curl.exe" /pdbtype:sept /libpath:"..\lib\LIB-Debug"
-
-!ELSEIF  "$(CFG)" == "curlsrc - Win32 using libcurl LIB Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "LIB-Release"
-# PROP BASE Intermediate_Dir "LIB-Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "LIB-Release"
-# PROP Intermediate_Dir "LIB-Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "..\lib" /I "..\include" /I "." /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\lib" /I "..\include" /I "." /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /c
-# ADD BASE RSC /l 0x409 /i "..\include" /d "NDEBUG"
-# ADD RSC /l 0x409 /i "..\include" /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 libcurl.lib kernel32.lib ws2_32.lib wldap32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"LIB-Release/curl.exe" /libpath:"..\lib\LIB-Release"
-# ADD LINK32 libcurl.lib kernel32.lib ws2_32.lib wldap32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"LIB-Release/curl.exe" /libpath:"..\lib\LIB-Release"
-
-!ENDIF 
-
-# Begin Target
-
-# Name "curlsrc - Win32 using libcurl DLL Debug"
-# Name "curlsrc - Win32 using libcurl DLL Release"
-# Name "curlsrc - Win32 using libcurl LIB Debug"
-# Name "curlsrc - Win32 using libcurl LIB Release"
-# Begin Group "Source Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\curlutil.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\getpass.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\homedir.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\hugehelp.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\main.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\os-specific.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\lib\nonblock.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\lib\rawstr.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\lib\strtoofft.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\urlglob.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\writeenv.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\writeout.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=".\config-win32.h"
-# End Source File
-# Begin Source File
-
-SOURCE=.\curlutil.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\getpass.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\homedir.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\hugehelp.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\os-specific.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\setup.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\lib\nonblock.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\lib\rawstr.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\lib\strtoofft.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\urlglob.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\version.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\writeenv.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\writeout.h
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\curl.rc
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/src/other/curl/src/vc6curlsrc.dsw b/src/other/curl/src/vc6curlsrc.dsw
deleted file mode 100644
index 1bb2c3a..0000000
--- a/src/other/curl/src/vc6curlsrc.dsw
+++ /dev/null
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "curlsrc"=".\vc6curlsrc.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
diff --git a/src/other/curl/src/version.h b/src/other/curl/src/version.h
deleted file mode 100644
index 8c091b2..0000000
--- a/src/other/curl/src/version.h
+++ /dev/null
@@ -1,35 +0,0 @@
-#ifndef HEADER_CURL_VERSION_H
-#define HEADER_CURL_VERSION_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include <curl/curlver.h>
-
-#define CURL_NAME "curl"
-#define CURL_COPYRIGHT LIBCURL_COPYRIGHT
-#define CURL_VERSION "7.20.1"
-#define CURL_VERSION_MAJOR LIBCURL_VERSION_MAJOR
-#define CURL_VERSION_MINOR LIBCURL_VERSION_MINOR
-#define CURL_VERSION_PATCH LIBCURL_VERSION_PATCH
-#define CURL_ID CURL_NAME " " CURL_VERSION " (" OS ") "
-
-#endif /* HEADER_CURL_VERSION_H */
diff --git a/src/other/curl/src/writeenv.c b/src/other/curl/src/writeenv.c
deleted file mode 100644
index 18e1a06..0000000
--- a/src/other/curl/src/writeenv.c
+++ /dev/null
@@ -1,120 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#ifdef USE_ENVIRONMENT
-
-#include <curl/curl.h>
-#include "writeenv.h"
-
-#ifdef __riscos__
-#include <kernel.h>
-#endif
-
-#define _MPRINTF_REPLACE /* use our functions only */
-#include <curl/mprintf.h>
-
-#if defined(CURLDEBUG) && defined(CURLTOOLDEBUG)
-#include "memdebug.h"
-#endif
-
-static const struct
-{
-  const char * name;
-  CURLINFO id;
-  enum {
-    writeenv_NONE,
-    writeenv_DOUBLE,
-    writeenv_LONG,
-    writeenv_STRING
-  } type;
-} variables[14] =
-{
-  {"curl_url_effective", CURLINFO_EFFECTIVE_URL, writeenv_STRING},
-  {"curl_http_code", CURLINFO_RESPONSE_CODE, writeenv_LONG},
-  {"curl_time_total", CURLINFO_TOTAL_TIME, writeenv_DOUBLE},
-  {"curl_time_namelookup", CURLINFO_NAMELOOKUP_TIME, writeenv_DOUBLE},
-  {"curl_time_connect", CURLINFO_CONNECT_TIME, writeenv_DOUBLE},
-  {"curl_time_pretransfer", CURLINFO_PRETRANSFER_TIME, writeenv_DOUBLE},
-  {"curl_time_starttransfer", CURLINFO_STARTTRANSFER_TIME, writeenv_DOUBLE},
-  {"curl_size_header", CURLINFO_HEADER_SIZE, writeenv_LONG},
-  {"curl_size_request", CURLINFO_REQUEST_SIZE, writeenv_LONG},
-  {"curl_size_download", CURLINFO_SIZE_DOWNLOAD, writeenv_DOUBLE},
-  {"curl_size_upload", CURLINFO_SIZE_UPLOAD, writeenv_DOUBLE},
-  {"curl_speed_download", CURLINFO_SPEED_DOWNLOAD, writeenv_DOUBLE},
-  {"curl_speed_upload", CURLINFO_SPEED_UPLOAD, writeenv_DOUBLE},
-  {NULL, 0, writeenv_NONE}
- };
-
-static void internalSetEnv(const char * name, char * value)
-{
-  /* Add your OS-specific code here. */
-#ifdef __riscos__
-  _kernel_setenv(name, value);
-#elif defined (CURLDEBUG)
-  curl_memlog("ENV %s = %s\n", name, value);
-#endif
-  return;
-}
-
-void ourWriteEnv(CURL *curl)
-{
-  unsigned int i;
-  char *string, numtext[10];
-  long longinfo;
-  double doubleinfo;
-
-  for (i=0; variables[i].name; i++) {
-    switch (variables[i].type) {
-    case writeenv_STRING:
-      if (curl_easy_getinfo(curl, variables[i].id, &string) == CURLE_OK)
-        internalSetEnv(variables[i].name, string);
-      else
-        internalSetEnv(variables[i].name, NULL);
-      break;
-
-    case writeenv_LONG:
-      if (curl_easy_getinfo(curl, variables[i].id, &longinfo) == CURLE_OK) {
-        curl_msprintf(numtext, "%5ld", longinfo);
-        internalSetEnv(variables[i].name, numtext);
-      }
-      else
-        internalSetEnv(variables[i].name, NULL);
-      break;
-    case writeenv_DOUBLE:
-      if (curl_easy_getinfo(curl, variables[i].id, &doubleinfo) == CURLE_OK) {
-        curl_msprintf(numtext, "%6.2f", doubleinfo);
-        internalSetEnv(variables[i].name, numtext);
-      }
-      else
-        internalSetEnv(variables[i].name, NULL);
-      break;
-    default:
-      break;
-    }
-  }
-
-  return;
-}
-
-#endif
diff --git a/src/other/curl/src/writeenv.h b/src/other/curl/src/writeenv.h
deleted file mode 100644
index 8d92f6c..0000000
--- a/src/other/curl/src/writeenv.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef HEADER_CURL_WRITEENV_H
-#define HEADER_CURL_WRITEENV_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-void ourWriteEnv(CURL *curl);
-
-#endif /* HEADER_CURL_WRITEENV_H */
diff --git a/src/other/curl/src/writeout.c b/src/other/curl/src/writeout.c
deleted file mode 100644
index b8801a4..0000000
--- a/src/other/curl/src/writeout.c
+++ /dev/null
@@ -1,295 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-#include "setup.h"
-
-#include <stdio.h>
-#include <string.h>
-
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#endif
-
-#include <curl/curl.h>
-
-#define _MPRINTF_REPLACE /* we want curl-functions instead of native ones */
-#include <curl/mprintf.h>
-
-#include "writeout.h"
-
-typedef enum {
-  VAR_NONE,       /* must be the first */
-  VAR_TOTAL_TIME,
-  VAR_NAMELOOKUP_TIME,
-  VAR_CONNECT_TIME,
-  VAR_APPCONNECT_TIME,
-  VAR_PRETRANSFER_TIME,
-  VAR_STARTTRANSFER_TIME,
-  VAR_SIZE_DOWNLOAD,
-  VAR_SIZE_UPLOAD,
-  VAR_SPEED_DOWNLOAD,
-  VAR_SPEED_UPLOAD,
-  VAR_HTTP_CODE,
-  VAR_HTTP_CODE_PROXY,
-  VAR_HEADER_SIZE,
-  VAR_REQUEST_SIZE,
-  VAR_EFFECTIVE_URL,
-  VAR_CONTENT_TYPE,
-  VAR_NUM_CONNECTS,
-  VAR_REDIRECT_TIME,
-  VAR_REDIRECT_COUNT,
-  VAR_FTP_ENTRY_PATH,
-  VAR_REDIRECT_URL,
-  VAR_SSL_VERIFY_RESULT,
-  VAR_NUM_OF_VARS /* must be the last */
-} replaceid;
-
-struct variable {
-  const char *name;
-  replaceid id;
-};
-
-
-static const struct variable replacements[]={
-  {"url_effective", VAR_EFFECTIVE_URL},
-  {"http_code", VAR_HTTP_CODE},
-  {"response_code", VAR_HTTP_CODE},
-  {"http_connect", VAR_HTTP_CODE_PROXY},
-  {"time_total", VAR_TOTAL_TIME},
-  {"time_namelookup", VAR_NAMELOOKUP_TIME},
-  {"time_connect", VAR_CONNECT_TIME},
-  {"time_appconnect", VAR_APPCONNECT_TIME},
-  {"time_pretransfer", VAR_PRETRANSFER_TIME},
-  {"time_starttransfer", VAR_STARTTRANSFER_TIME},
-  {"size_header", VAR_HEADER_SIZE},
-  {"size_request", VAR_REQUEST_SIZE},
-  {"size_download", VAR_SIZE_DOWNLOAD},
-  {"size_upload", VAR_SIZE_UPLOAD},
-  {"speed_download", VAR_SPEED_DOWNLOAD},
-  {"speed_upload", VAR_SPEED_UPLOAD},
-  {"content_type", VAR_CONTENT_TYPE},
-  {"num_connects", VAR_NUM_CONNECTS},
-  {"time_redirect", VAR_REDIRECT_TIME},
-  {"num_redirects", VAR_REDIRECT_COUNT},
-  {"ftp_entry_path", VAR_FTP_ENTRY_PATH},
-  {"redirect_url", VAR_REDIRECT_URL},
-  {"ssl_verify_result", VAR_SSL_VERIFY_RESULT},
-  {NULL, VAR_NONE}
-};
-
-void ourWriteOut(CURL *curl, const char *writeinfo)
-{
-  FILE *stream = stdout;
-  const char *ptr=writeinfo;
-  char *stringp;
-  long longinfo;
-  double doubleinfo;
-
-  while(ptr && *ptr) {
-    if('%' == *ptr) {
-      if('%' == ptr[1]) {
-        /* an escaped %-letter */
-        fputc('%', stream);
-        ptr+=2;
-      }
-      else {
-        /* this is meant as a variable to output */
-        char *end;
-        char keepit;
-        int i;
-        if(('{' == ptr[1]) && ((end = strchr(ptr, '}')) != NULL)) {
-          bool match = FALSE;
-          ptr+=2; /* pass the % and the { */
-          keepit=*end;
-          *end=0; /* zero terminate */
-          for(i=0; replacements[i].name; i++) {
-            if(curl_strequal(ptr, replacements[i].name)) {
-              match = TRUE;
-              switch(replacements[i].id) {
-              case VAR_EFFECTIVE_URL:
-                if((CURLE_OK ==
-                    curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &stringp))
-                   && stringp)
-                  fputs(stringp, stream);
-                break;
-              case VAR_HTTP_CODE:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &longinfo))
-                  fprintf(stream, "%03ld", longinfo);
-                break;
-              case VAR_HTTP_CODE_PROXY:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_HTTP_CONNECTCODE,
-                                     &longinfo))
-                  fprintf(stream, "%03ld", longinfo);
-                break;
-              case VAR_HEADER_SIZE:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_HEADER_SIZE, &longinfo))
-                  fprintf(stream, "%ld", longinfo);
-                break;
-              case VAR_REQUEST_SIZE:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_REQUEST_SIZE, &longinfo))
-                  fprintf(stream, "%ld", longinfo);
-                break;
-              case VAR_NUM_CONNECTS:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_NUM_CONNECTS, &longinfo))
-                  fprintf(stream, "%ld", longinfo);
-                break;
-              case VAR_REDIRECT_COUNT:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_REDIRECT_COUNT, &longinfo))
-                  fprintf(stream, "%ld", longinfo);
-                break;
-              case VAR_REDIRECT_TIME:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_REDIRECT_TIME, &doubleinfo))
-                  fprintf(stream, "%.3f", doubleinfo);
-                break;
-              case VAR_TOTAL_TIME:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_TOTAL_TIME, &doubleinfo))
-                  fprintf(stream, "%.3f", doubleinfo);
-                break;
-              case VAR_NAMELOOKUP_TIME:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_NAMELOOKUP_TIME,
-                                     &doubleinfo))
-                  fprintf(stream, "%.3f", doubleinfo);
-                break;
-              case VAR_CONNECT_TIME:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_CONNECT_TIME, &doubleinfo))
-                  fprintf(stream, "%.3f", doubleinfo);
-                break;
-              case VAR_APPCONNECT_TIME:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_APPCONNECT_TIME,
-                                     &doubleinfo))
-                  fprintf(stream, "%.3f", doubleinfo);
-                break;
-              case VAR_PRETRANSFER_TIME:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_PRETRANSFER_TIME,
-                                     &doubleinfo))
-                  fprintf(stream, "%.3f", doubleinfo);
-                break;
-              case VAR_STARTTRANSFER_TIME:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_STARTTRANSFER_TIME,
-                                     &doubleinfo))
-                  fprintf(stream, "%.3f", doubleinfo);
-                break;
-              case VAR_SIZE_UPLOAD:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_SIZE_UPLOAD, &doubleinfo))
-                  fprintf(stream, "%.0f", doubleinfo);
-                break;
-              case VAR_SIZE_DOWNLOAD:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_SIZE_DOWNLOAD, &doubleinfo))
-                  fprintf(stream, "%.0f", doubleinfo);
-                break;
-              case VAR_SPEED_DOWNLOAD:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_SPEED_DOWNLOAD, &doubleinfo))
-                  fprintf(stream, "%.3f", doubleinfo);
-                break;
-              case VAR_SPEED_UPLOAD:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_SPEED_UPLOAD, &doubleinfo))
-                  fprintf(stream, "%.3f", doubleinfo);
-                break;
-              case VAR_CONTENT_TYPE:
-                if((CURLE_OK ==
-                    curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &stringp))
-                   && stringp)
-                  fputs(stringp, stream);
-                break;
-              case VAR_FTP_ENTRY_PATH:
-                if((CURLE_OK ==
-                    curl_easy_getinfo(curl, CURLINFO_FTP_ENTRY_PATH, &stringp))
-                   && stringp)
-                  fputs(stringp, stream);
-                break;
-              case VAR_REDIRECT_URL:
-                if((CURLE_OK ==
-                    curl_easy_getinfo(curl, CURLINFO_REDIRECT_URL, &stringp))
-                   && stringp)
-                  fputs(stringp, stream);
-                break;
-              case VAR_SSL_VERIFY_RESULT:
-                if(CURLE_OK ==
-                   curl_easy_getinfo(curl, CURLINFO_SSL_VERIFYRESULT, &longinfo))
-                  fprintf(stream, "%ld", longinfo);
-                break;
-              default:
-                break;
-              }
-              break;
-            }
-          }
-          if(FALSE == match) {
-            fprintf(stderr, "curl: unknown --write-out variable: '%s'\n", ptr);
-          }
-          ptr=end+1; /* pass the end */
-          *end = keepit;
-        }
-        else {
-          /* illegal syntax, then just output the characters that are used */
-          fputc('%', stream);
-          fputc(ptr[1], stream);
-          ptr+=2;
-        }
-      }
-    }
-    else if('\\' == *ptr) {
-      switch(ptr[1]) {
-      case 'r':
-        fputc('\r', stream);
-        break;
-      case 'n':
-        fputc('\n', stream);
-        break;
-      case 't':
-        fputc('\t', stream);
-        break;
-      default:
-        /* unknown, just output this */
-        fputc(*ptr, stream);
-        fputc(ptr[1], stream);
-        break;
-      }
-      ptr+=2;
-    }
-    else {
-      fputc(*ptr, stream);
-      ptr++;
-    }
-  }
-
-}
diff --git a/src/other/curl/src/writeout.h b/src/other/curl/src/writeout.h
deleted file mode 100644
index 1b22102..0000000
--- a/src/other/curl/src/writeout.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef HEADER_CURL_WRITEOUT_H
-#define HEADER_CURL_WRITEOUT_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
- *
- * This software is licensed as described in the file COPYING, which
- * you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
- *
- * You may opt to use, copy, modify, merge, publish, distribute and/or sell
- * copies of the Software, and permit persons to whom the Software is
- * furnished to do so, under the terms of the COPYING file.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ***************************************************************************/
-
-void ourWriteOut(CURL *curl, const char *out);
-
-#endif /* HEADER_CURL_WRITEOUT_H */
diff --git a/src/other/curl/vc6curl.dsw b/src/other/curl/vc6curl.dsw
deleted file mode 100644
index 499bc10..0000000
--- a/src/other/curl/vc6curl.dsw
+++ /dev/null
@@ -1,44 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "libcurl"=".\lib\vc6libcurl.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "curlsrc"=".\src\vc6curlsrc.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name libcurl
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
diff --git a/src/other/glew/LICENSE.txt b/src/other/glew/LICENSE.txt
deleted file mode 100644
index f707804..0000000
--- a/src/other/glew/LICENSE.txt
+++ /dev/null
@@ -1,73 +0,0 @@
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2007, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2007, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
-
-
-Mesa 3-D graphics library
-Version:  7.0
-
-Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a
-copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation
-the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
-BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
-Copyright (c) 2007 The Khronos Group Inc.
-
-Permission is hereby granted, free of charge, to any person obtaining a
-copy of this software and/or associated documentation files (the
-"Materials"), to deal in the Materials without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Materials, and to
-permit persons to whom the Materials are furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Materials.
-
-THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
diff --git a/src/other/glew/Makefile b/src/other/glew/Makefile
deleted file mode 100644
index 1eb3206..0000000
--- a/src/other/glew/Makefile
+++ /dev/null
@@ -1,268 +0,0 @@
-#!gmake
-## The OpenGL Extension Wrangler Library
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002, Lev Povalahev
-## All rights reserved.
-## 
-## Redistribution and use in source and binary forms, with or without 
-## modification, are permitted provided that the following conditions are met:
-## 
-## * Redistributions of source code must retain the above copyright notice, 
-##   this list of conditions and the following disclaimer.
-## * Redistributions in binary form must reproduce the above copyright notice, 
-##   this list of conditions and the following disclaimer in the documentation 
-##   and/or other materials provided with the distribution.
-## * The name of the author may be used to endorse or promote products 
-##   derived from this software without specific prior written permission.
-##
-## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-## AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-## IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-## ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-## LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-## CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-## SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-## INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-## CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-## ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-## THE POSSIBILITY OF SUCH DAMAGE.
-
-include config/version
-
-SHELL = /bin/sh
-SYSTEM = $(shell config/config.guess | cut -d - -f 3 | sed -e 's/[0-9\.]//g;')
-SYSTEM.SUPPORTED = $(shell test -f config/Makefile.$(SYSTEM) && echo 1)
-
-ifeq ($(SYSTEM.SUPPORTED), 1)
-include config/Makefile.$(SYSTEM)
-else
-$(error "Platform '$(SYSTEM)' not supported")
-endif
-
-GLEW_DEST ?= /usr
-BINDIR ?= $(GLEW_DEST)/bin
-LIBDIR ?= $(GLEW_DEST)/lib
-INCDIR ?= $(GLEW_DEST)/include/GL
-SHARED_OBJ_EXT ?= o
-TARDIR = ../glew-$(GLEW_VERSION)
-TARBALL = ../glew-$(GLEW_VERSION).tar.gz
-
-DIST_DIR     = glew-$(GLEW_VERSION)
-DIST_WIN32   = glew-$(GLEW_VERSION)-win32.zip
-DIST_SRC_ZIP = glew-$(GLEW_VERSION).zip
-DIST_SRC_TGZ = glew-$(GLEW_VERSION).tgz
-
-AR = ar
-INSTALL = install
-STRIP = strip
-RM = rm -f
-LN = ln -sf
-ifeq ($(MAKECMDGOALS), debug)
-OPT = -g
-else
-OPT = $(POPT)
-endif
-INCLUDE = -Iinclude
-CFLAGS = $(OPT) $(WARN) $(INCLUDE) $(CFLAGS.EXTRA)
-
-LIB.SRCS = src/glew.c
-LIB.OBJS = $(LIB.SRCS:.c=.o)
-LIB.SOBJS = $(LIB.SRCS:.c=.$(SHARED_OBJ_EXT))
-LIB.LDFLAGS = $(LDFLAGS.EXTRA) $(LDFLAGS.GL)
-LIB.LIBS = $(GL_LDFLAGS)
-
-GLEWINFO.BIN = glewinfo$(BIN.SUFFIX)
-GLEWINFO.BIN.SRCS = src/glewinfo.c
-GLEWINFO.BIN.OBJS = $(GLEWINFO.BIN.SRCS:.c=.o)
-VISUALINFO.BIN = visualinfo$(BIN.SUFFIX)
-VISUALINFO.BIN.SRCS = src/visualinfo.c
-VISUALINFO.BIN.OBJS = $(VISUALINFO.BIN.SRCS:.c=.o)
-BIN.LIBS = -Llib $(LDFLAGS.DYNAMIC) -l$(NAME) $(LDFLAGS.EXTRA) $(LDFLAGS.GL)
-
-all debug: lib/$(LIB.SHARED) lib/$(LIB.STATIC) bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN) glew.pc
-
-lib:
-	mkdir lib
-
-lib/$(LIB.STATIC): $(LIB.OBJS)
-	$(AR) cr $@ $^
-
-lib/$(LIB.SHARED): $(LIB.SOBJS)
-	$(LD) $(LDFLAGS.SO) -o $@ $^ $(LIB.LDFLAGS) $(LIB.LIBS)
-ifeq ($(patsubst mingw%,mingw,$(SYSTEM)), mingw)
-else
-	$(LN) $(LIB.SHARED) lib/$(LIB.SONAME)
-	$(LN) $(LIB.SHARED) lib/$(LIB.DEVLNK)
-endif
-
-bin/$(GLEWINFO.BIN): $(GLEWINFO.BIN.OBJS) lib/$(LIB.SHARED)
-	$(CC) $(CFLAGS) -o $@ $(GLEWINFO.BIN.OBJS) $(BIN.LIBS)
-
-bin/$(VISUALINFO.BIN): $(VISUALINFO.BIN.OBJS) lib/$(LIB.SHARED)
-	$(CC) $(CFLAGS) -o $@ $(VISUALINFO.BIN.OBJS) $(BIN.LIBS)
-
-%.o: %.c
-	$(CC) -c $(CFLAGS) -o $@ $<
-
-src/glew.o: src/glew.c include/GL/glew.h include/GL/wglew.h include/GL/glxew.h
-	$(CC) $(CFLAGS) $(CFLAGS.SO) -o $@ -c $<
-
-src/glew.pic_o: src/glew.c include/GL/glew.h include/GL/wglew.h include/GL/glxew.h
-	$(CC) $(CFLAGS) $(PICFLAG) $(CFLAGS.SO) -o $@ -c $<
-
-glew.pc: glew.pc.in
-	sed \
-		-e "s|@prefix@|$(GLEW_DEST)|g" \
-		-e "s|@libdir@|$(LIBDIR)|g" \
-		-e "s|@exec_prefix@|$(BINDIR)|g" \
-		-e "s|@includedir@|$(INCDIR)|g" \
-		-e "s|@version@|$(GLEW_VERSION)|g" \
-		< $< > $@
-
-install: all
-# directories
-	$(INSTALL) -d -m 0755 $(BINDIR)
-	$(INSTALL) -d -m 0755 $(INCDIR)
-	$(INSTALL) -d -m 0755 $(LIBDIR)
-# runtime
-ifeq ($(patsubst mingw%,mingw,$(SYSTEM)), mingw)
-	$(STRIP) -x lib/$(LIB.SHARED)
-	$(INSTALL) -m 0644 lib/$(LIB.SHARED) $(BINDIR)/
-else
-	$(STRIP) -x lib/$(LIB.SHARED)
-	$(INSTALL) -m 0644 lib/$(LIB.SHARED) $(LIBDIR)/
-	$(LN) $(LIB.SHARED) $(LIBDIR)/$(LIB.SONAME)
-endif
-# development files
-	$(INSTALL) -m 0644 include/GL/wglew.h $(INCDIR)/
-	$(INSTALL) -m 0644 include/GL/glew.h $(INCDIR)/
-	$(INSTALL) -m 0644 include/GL/glxew.h $(INCDIR)/
-	$(INSTALL) -m 0644 glew.pc $(LIBDIR)/pkgconfig/
-ifeq ($(patsubst mingw%,mingw,$(SYSTEM)), mingw)
-	$(INSTALL) -m 0644 lib/$(LIB.DEVLNK) $(LIBDIR)/
-else
-	$(STRIP) -x lib/$(LIB.STATIC)
-	$(INSTALL) -m 0644 lib/$(LIB.STATIC) $(LIBDIR)/
-	$(LN) $(LIB.SHARED) $(LIBDIR)/$(LIB.DEVLNK)
-endif
-# utilities
-	$(INSTALL) -s -m 0755 bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN) $(BINDIR)/
-
-uninstall:
-	$(RM) $(INCDIR)/wglew.h
-	$(RM) $(INCDIR)/glew.h
-	$(RM) $(INCDIR)/glxew.h
-	$(RM) $(LIBDIR)/$(LIB.DEVLNK)
-ifeq ($(patsubst mingw%,mingw,$(SYSTEM)), mingw)
-	$(RM) $(BINDIR)/$(LIB.SHARED)
-else
-	$(RM) $(LIBDIR)/$(LIB.SONAME)
-	$(RM) $(LIBDIR)/$(LIB.SHARED)
-	$(RM) $(LIBDIR)/$(LIB.STATIC)
-endif
-	$(RM) $(BINDIR)/$(GLEWINFO.BIN) $(BINDIR)/$(VISUALINFO.BIN)
-
-clean:
-	$(RM) $(LIB.OBJS)
-	$(RM) $(LIB.SOBJS)
-	$(RM) lib/$(LIB.STATIC) lib/$(LIB.SHARED) lib/$(LIB.DEVLNK) lib/$(LIB.SONAME) $(LIB.STATIC)
-	$(RM) $(GLEWINFO.BIN.OBJS) bin/$(GLEWINFO.BIN) $(VISUALINFO.BIN.OBJS) bin/$(VISUALINFO.BIN)
-	$(RM) glew.pc
-# Compiler droppings
-	$(RM) so_locations
-
-distclean: clean
-	find . -name \*~ | xargs $(RM)
-	find . -name .\*.sw\? | xargs $(RM)
-
-tardist:
-	$(RM) -r $(TARDIR)
-	mkdir $(TARDIR)
-	cp -a . $(TARDIR)
-	find $(TARDIR) -name CVS -o -name .cvsignore | xargs $(RM) -r
-	find $(TARDIR) -name .svn | xargs $(RM) -r
-	$(MAKE) -C $(TARDIR) distclean
-	$(MAKE) -C $(TARDIR)
-	$(MAKE) -C $(TARDIR) distclean
-	$(RM) -r $(TARDIR)/auto/registry
-	env GZIP=-9 tar -C `dirname $(TARDIR)` -cvzf $(TARBALL) `basename $(TARDIR)`
-
-dist-win32:
-	$(RM) -r $(TARDIR)
-	mkdir -p $(TARDIR)
-	mkdir -p $(TARDIR)/bin
-	mkdir -p $(TARDIR)/lib
-	cp -a include $(TARDIR)
-	cp -a doc $(TARDIR)
-	cp -a *.txt $(TARDIR)
-	cp -a lib/glew32.lib     $(TARDIR)/lib
-	cp -a lib/glew32s.lib    $(TARDIR)/lib
-	cp -a bin/glew32.dll     $(TARDIR)/bin
-	cp -a bin/glewinfo.exe   $(TARDIR)/bin
-	cp -a bin/visualinfo.exe $(TARDIR)/bin
-	find $(TARDIR) -name CVS -o -name .cvsignore | xargs $(RM) -r
-	find $(TARDIR) -name .svn | xargs $(RM) -r
-	unix2dos $(TARDIR)/include/GL/*.h
-	unix2dos $(TARDIR)/doc/*.txt
-	unix2dos $(TARDIR)/doc/*.html
-	unix2dos $(TARDIR)/*.txt
-	rm -f ../$(DIST_WIN32)
-	cd .. && zip -rv9 $(DIST_WIN32) $(DIST_DIR)
-
-dist-src:
-	$(RM) -r $(TARDIR)
-	mkdir -p $(TARDIR)
-	mkdir -p $(TARDIR)/bin
-	mkdir -p $(TARDIR)/lib
-	cp -a auto $(TARDIR)
-	$(RM) -Rf $(TARDIR)/auto/registry
-	cp -a build $(TARDIR)
-	cp -a config $(TARDIR)
-	cp -a src $(TARDIR)
-	cp -a doc $(TARDIR)
-	cp -a include $(TARDIR)
-	cp -a *.txt $(TARDIR)
-	cp -a Makefile $(TARDIR)
-	cp -a glew.pc.in $(TARDIR)
-	find $(TARDIR) -name '*.o' | xargs $(RM) -r
-	find $(TARDIR) -name '*.pic_o' | xargs $(RM) -r
-	find $(TARDIR) -name '*~' | xargs $(RM) -r
-	find $(TARDIR) -name CVS -o -name .cvsignore | xargs $(RM) -r
-	find $(TARDIR) -name .svn | xargs $(RM) -r
-	unix2dos $(TARDIR)/config/*
-	unix2dos $(TARDIR)/auto/core/*
-	unix2dos $(TARDIR)/auto/extensions/*
-	find $(TARDIR) -name '*.h' | xargs unix2dos
-	find $(TARDIR) -name '*.c' | xargs unix2dos
-	find $(TARDIR) -name '*.txt' | xargs unix2dos
-	find $(TARDIR) -name '*.html' | xargs unix2dos
-	find $(TARDIR) -name '*.css' | xargs unix2dos
-	find $(TARDIR) -name '*.sh' | xargs unix2dos
-	find $(TARDIR) -name '*.pl' | xargs unix2dos
-	find $(TARDIR) -name 'Makefile' | xargs unix2dos
-	find $(TARDIR) -name '*.in' | xargs unix2dos
-	find $(TARDIR) -name '*.pm' | xargs unix2dos
-	find $(TARDIR) -name '*.rc' | xargs unix2dos
-	rm -f ../$(DIST_SRC_ZIP)
-	cd .. && zip -rv9 $(DIST_SRC_ZIP) $(DIST_DIR)
-	dos2unix $(TARDIR)/config/*
-	dos2unix $(TARDIR)/auto/core/*
-	dos2unix $(TARDIR)/auto/extensions/*
-	find $(TARDIR) -name '*.h' | xargs dos2unix
-	find $(TARDIR) -name '*.c' | xargs dos2unix
-	find $(TARDIR) -name '*.txt' | xargs dos2unix
-	find $(TARDIR) -name '*.html' | xargs dos2unix
-	find $(TARDIR) -name '*.css' | xargs dos2unix
-	find $(TARDIR) -name '*.sh' | xargs dos2unix
-	find $(TARDIR) -name '*.pl' | xargs dos2unix
-	find $(TARDIR) -name 'Makefile' | xargs dos2unix
-	find $(TARDIR) -name '*.in' | xargs dos2unix
-	find $(TARDIR) -name '*.pm' | xargs dos2unix
-	find $(TARDIR) -name '*.rc' | xargs dos2unix
-	cd .. && env GZIP=-9 tar cvzf $(DIST_SRC_TGZ) $(DIST_DIR)
-
-extensions:
-	$(MAKE) -C auto
-
-.PHONY: clean distclean tardist dist-win32 dist-src
diff --git a/src/other/glew/README.txt b/src/other/glew/README.txt
deleted file mode 100644
index 1b19c53..0000000
--- a/src/other/glew/README.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-See doc/index.html for more information.
-
-If you downloaded the tarball from the GLEW website, you just need to:
-
-    Unix:
-
-        make
-
-    Windows:
-
-        use the project file in build/vc6/
-
-If you wish to build GLEW from scratch (update the extension data from
-the net or add your own extension information), you need a Unix
-environment (including wget, perl, and GNU make).  The extension data
-is regenerated from the top level source directory with:
-
-        make extensions
diff --git a/src/other/glew/TODO.txt b/src/other/glew/TODO.txt
deleted file mode 100644
index d2701b6..0000000
--- a/src/other/glew/TODO.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-Major:
- - add support for windows mini-client drivers
- - add windows installer (msi)
- - separate build of static and shared object files (for mingw and
- cygwin)
- - start designing GLEW 2.0
-
-Minor:
- - make auto scripts work with text mode cygwin mounts
- - add support for all SUN, MTX, and OML extensions
- - make auto/Makefile more robust against auto/core/*~ mistakes
- - web poll on separating glew, glxew and wglew
diff --git a/src/other/glew/auto/Makefile b/src/other/glew/auto/Makefile
deleted file mode 100644
index 1016df4..0000000
--- a/src/other/glew/auto/Makefile
+++ /dev/null
@@ -1,371 +0,0 @@
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-include ../config/version
-
-#GLEW_SPLIT_SOURCE = yes
-
-SHELL = bash
-REGISTRY = registry
-REGISTRY_URL = http://www.opengl.org/registry/
-#http://oss.sgi.com/projects/ogl-sample/registry/
-BIN = bin
-SRC = src
-CORE = core
-EXT = extensions
-BLACKLIST = blacklist
-
-GL_CORE_SPEC := $(CORE)/GL_VERSION*
-GLX_CORE_SPEC := $(CORE)/GLX_VERSION*
-ifeq (custom,$(MAKECMDGOALS))
-#GL_CORE_SPEC := $(shell grep GL_VERSION custom.txt | sed -e 's/\(.*\)/$(CORE)\/\1/g;')
-GL_EXT_SPEC := $(shell grep "^[ \t]*GL_" custom.txt | grep -v GL_VERSION | sed -e 's/\(.*\)/$(EXT)\/\1/g;')
-WGL_EXT_SPEC := $(shell grep "^[ \t]*WGL_" custom.txt | sed -e 's/\(.*\)/$(EXT)\/\1/g;')
-#GLX_CORE_SPEC := $(shell grep GLX_VERSION custom.txt | sed -e 's/\(.*\)/$(CORE)\/\1/g;')
-GLX_EXT_SPEC := $(shell grep "^[ \t]*GLX_" custom.txt | grep -v GLX_VERSION | grep -v GLX_OML_sync_control | sed -e 's/\(.*\)/$(EXT)\/\1/g;')
-else
-GL_EXT_SPEC := $(EXT)/GL_*
-WGL_EXT_SPEC := $(EXT)/WGL_*
-GLX_EXT_SPEC := $(EXT)/GLX_*
-endif
-
-PARSE_SPEC = parse_spec.pl
-SYSTEM = $(strip $(shell uname -s))
-
-TOP = ..
-I.DEST = $(TOP)/include/GL
-S.DEST = $(TOP)/src
-D.DEST = $(TOP)/doc
-B.DEST = $(TOP)/build/vc6
-
-I.TARGETS = \
-	$(I.DEST)/glew.h \
-	$(I.DEST)/wglew.h \
-	$(I.DEST)/glxew.h
-
-ifeq (yes,$(GLEW_SPLIT_SOURCE))
-S.TARGETS = \
-	$(S.DEST)/glew_def.c \
-	$(S.DEST)/glew_init.c \
-	$(S.DEST)/glew_str.c \
-	$(S.DEST)/glewinfo.c
-else
-S.TARGETS = \
-	$(S.DEST)/glew.c \
-	$(S.DEST)/glewinfo.c
-endif
-
-D.TARGETS = \
-	$(D.DEST)/index.html \
-	$(D.DEST)/install.html \
-	$(D.DEST)/basic.html \
-	$(D.DEST)/advanced.html \
-	$(D.DEST)/credits.html \
-	$(D.DEST)/log.html \
-	$(D.DEST)/glew.html \
-	$(D.DEST)/wglew.html \
-	$(D.DEST)/glxew.html
-
-B.TARGETS = \
-	$(B.DEST)/glew.rc \
-	$(B.DEST)/glewinfo.rc \
-	$(B.DEST)/visualinfo.rc
-
-all custom: $(I.TARGETS) $(S.TARGETS) $(D.TARGETS) $(B.TARGETS)
-
-registry: $(REGISTRY)/.dummy
-ext: $(EXT)/.dummy
-
-$(REGISTRY)/.dummy: $(BIN)/update_registry.sh
-	@echo "--------------------------------------------------------------------"
-	@echo "Downloading registry"
-	@echo "--------------------------------------------------------------------"
-	$(BIN)/update_registry.sh $(REGISTRY) $(REGISTRY_URL)
-	touch $@
-
-$(EXT)/.dummy: $(REGISTRY)/.dummy
-	@echo "--------------------------------------------------------------------"
-	@echo "Creating descriptors"
-	@echo "--------------------------------------------------------------------"
-	rm -rf $(EXT)
-	$(BIN)/update_ext.sh $(EXT) $(REGISTRY) $(BLACKLIST)
-ifeq ($(patsubst Darwin%,Darwin,$(SYSTEM)), Darwin)
-	find $(CORE) -maxdepth 1 -type f | grep -v VERSION | grep -v "~" | \
-	xargs -J % cp % $(EXT)
-else
-	find $(CORE) -maxdepth 1 -type f | grep -v VERSION | grep -v "~" | \
-	xargs cp --target-directory=$(EXT)
-endif
-	touch $@
-
-$(I.DEST)/glew.h: $(EXT)/.dummy
-	@echo "--------------------------------------------------------------------"
-	@echo "Creating glew.h"
-	@echo "--------------------------------------------------------------------"
-	test -d $(I.DEST) || mkdir -p $(I.DEST)
-	cp -f $(SRC)/glew_license.h $@
-	cat $(SRC)/mesa_license.h >> $@
-	cat $(SRC)/khronos_license.h >> $@
-	cat $(SRC)/glew_head.h >> $@
-	$(BIN)/make_header.pl GLAPIENTRY GL $(GL_CORE_SPEC) >> $@
-	$(BIN)/make_header.pl GLAPIENTRY GL $(GL_EXT_SPEC) >> $@
-	echo -e "/* ------------------------------------------------------------------------- */\n\n#if defined(GLEW_MX) && defined(_WIN32)\n#define GLEW_FUN_EXPORT\n#else\n#define GLEW_FUN_EXPORT GLEWAPI\n#endif /* GLEW_MX */\n" >> $@
-	echo -e "#if defined(GLEW_MX)\n#define GLEW_VAR_EXPORT\n#else\n#define GLEW_VAR_EXPORT GLEWAPI\n#endif /* GLEW_MX */\n" >> $@
-	echo -e "#if defined(GLEW_MX) && defined(_WIN32)\nstruct GLEWContextStruct\n{\n#endif /* GLEW_MX */" >> $@
-	$(BIN)/make_struct_fun.pl GLEW_FUN_EXPORT $(GL_CORE_SPEC) $(GL_EXT_SPEC) >> $@
-	echo -e "\n#if defined(GLEW_MX) && !defined(_WIN32)\nstruct GLEWContextStruct\n{\n#endif /* GLEW_MX */\n" >> $@
-	$(BIN)/make_struct_var.pl GLEW_VAR_EXPORT $(GL_CORE_SPEC) $(GL_EXT_SPEC) >> $@
-	echo -e "\n#ifdef GLEW_MX\n}; /* GLEWContextStruct */\n#endif /* GLEW_MX */\n" >> $@
-	perl -e 's/GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2;/GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_1;\nGLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2;/' -pi $@
-	rm -f $@.bak
-	cat $(SRC)/glew_tail.h >> $@
-
-$(I.DEST)/wglew.h: $(EXT)/.dummy
-	@echo "--------------------------------------------------------------------"
-	@echo "Creating wglew.h"
-	@echo "--------------------------------------------------------------------"
-	cp -f $(SRC)/glew_license.h $@
-	cat $(SRC)/khronos_license.h >> $@
-	cat $(SRC)/wglew_head.h >> $@
-	$(BIN)/make_header.pl WINAPI WGL $(WGL_EXT_SPEC) >> $@
-	echo -e "/* ------------------------------------------------------------------------- */\n\n#ifdef GLEW_MX\n#define WGLEW_EXPORT\n#else\n#define WGLEW_EXPORT GLEWAPI\n#endif /* GLEW_MX */\n\n#ifdef GLEW_MX\nstruct WGLEWContextStruct\n{\n#endif /* GLEW_MX */" >> $@
-	$(BIN)/make_struct_fun.pl WGLEW_EXPORT $(WGL_EXT_SPEC) >> $@
-	$(BIN)/make_struct_var.pl WGLEW_EXPORT $(WGL_EXT_SPEC) >> $@
-	echo -e "\n#ifdef GLEW_MX\n}; /* WGLEWContextStruct */\n#endif /* GLEW_MX */\n" >> $@
-	cat $(SRC)/wglew_tail.h >> $@
-
-$(I.DEST)/glxew.h: $(EXT)/.dummy
-	@echo "--------------------------------------------------------------------"
-	@echo "Creating glxew.h"
-	@echo "--------------------------------------------------------------------"
-	cp -f $(SRC)/glew_license.h $@
-	cat $(SRC)/mesa_license.h >> $@
-	cat $(SRC)/khronos_license.h >> $@
-	cat $(SRC)/glxew_head.h >> $@
-	$(BIN)/make_header.pl '' GLX $(GLX_CORE_SPEC) >> $@
-	$(BIN)/make_header.pl '' GLX $(GLX_EXT_SPEC) >> $@
-	echo -e "/* ------------------------------------------------------------------------- */\n\n#ifdef GLEW_MX\n#define GLXEW_EXPORT\n#else\n#define GLXEW_EXPORT extern\n#endif /* GLEW_MX */" >> $@
-	$(BIN)/make_struct_fun.pl extern $(GLX_CORE_SPEC) $(GLX_EXT_SPEC) >> $@
-	echo -e "\n#if defined(GLEW_MX)\nstruct GLXEWContextStruct\n{\n#endif /* GLEW_MX */\n" >> $@
-	$(BIN)/make_struct_var.pl GLXEW_EXPORT $(GLX_CORE_SPEC) $(GLX_EXT_SPEC) >> $@
-	echo -e "\n#ifdef GLEW_MX\n}; /* GLXEWContextStruct */\n#endif /* GLEW_MX */\n" >> $@
-	perl -e 's/GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_2;/GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_0;\nGLXEW_EXPORT GLboolean __GLXEW_VERSION_1_1;\nGLXEW_EXPORT GLboolean __GLXEW_VERSION_1_2;/' -pi $@
-	cat $(SRC)/glxew_tail.h >> $@
-	$(BIN)/fix_OML_sync_control.sh $@
-
-$(S.DEST)/glew.c: $(EXT)/.dummy
-	@echo "--------------------------------------------------------------------"
-	@echo "Creating glew.c"
-	@echo "--------------------------------------------------------------------"
-	cp -f $(SRC)/glew_license.h $@
-	cat $(SRC)/glew_head.c >> $@
-	echo -e "\n#if !defined(_WIN32) || !defined(GLEW_MX)" >> $@
-	$(BIN)/make_def_fun.pl GL $(GL_CORE_SPEC) >> $@
-	$(BIN)/make_def_fun.pl GL $(GL_EXT_SPEC) >> $@
-	echo -e "\n#endif /* !WIN32 || !GLEW_MX */" >> $@
-	echo -e "\n#if !defined(GLEW_MX)" >> $@;
-	echo -e "\nGLboolean __GLEW_VERSION_1_1 = GL_FALSE;" >> $@
-	$(BIN)/make_def_var.pl GL $(GL_CORE_SPEC) >> $@
-	$(BIN)/make_def_var.pl GL $(GL_EXT_SPEC) >> $@
-	echo -e "\n#endif /* !GLEW_MX */\n" >> $@;
-	$(BIN)/make_init.pl GL $(GL_CORE_SPEC) >> $@
-	$(BIN)/make_init.pl GL $(GL_EXT_SPEC) >> $@
-	cat $(SRC)/glew_init_gl.c >> $@
-	$(BIN)/make_list.pl $(GL_CORE_SPEC) | grep -v '\"GL_VERSION' >> $@
-	$(BIN)/make_list.pl $(GL_EXT_SPEC) >> $@
-	echo -e "\n  return GLEW_OK;\n}\n" >> $@
-	echo -e "\n#if defined(_WIN32)" >> $@
-	echo -e "\n#if !defined(GLEW_MX)" >> $@
-	$(BIN)/make_def_fun.pl WGL $(WGL_EXT_SPEC) >> $@
-	$(BIN)/make_def_var.pl WGL $(WGL_EXT_SPEC) >> $@
-	echo -e "\n#endif /* !GLEW_MX */\n" >> $@;
-	$(BIN)/make_init.pl WGL $(WGL_EXT_SPEC) >> $@
-	cat $(SRC)/glew_init_wgl.c >> $@
-	$(BIN)/make_list.pl $(WGL_EXT_SPEC) >> $@
-	echo -e "\n  return GLEW_OK;\n}" >> $@;
-	echo -e "\n#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)" >> $@
-	$(BIN)/make_def_fun.pl GLX $(GLX_CORE_SPEC) >> $@
-	$(BIN)/make_def_fun.pl GLX $(GLX_EXT_SPEC) >> $@
-	echo -e "\n#if !defined(GLEW_MX)" >> $@;
-	echo -e "\nGLboolean __GLXEW_VERSION_1_0 = GL_FALSE;" >> $@
-	echo -e "GLboolean __GLXEW_VERSION_1_1 = GL_FALSE;" >> $@
-	$(BIN)/make_def_var.pl GLX $(GLX_CORE_SPEC) >> $@
-	$(BIN)/make_def_var.pl GLX $(GLX_EXT_SPEC) >> $@
-	echo -e "\n#endif /* !GLEW_MX */\n" >> $@;
-	$(BIN)/make_init.pl GLX $(GLX_CORE_SPEC) >> $@
-	$(BIN)/make_init.pl GLX $(GLX_EXT_SPEC) >> $@
-	cat $(SRC)/glew_init_glx.c >> $@
-	$(BIN)/make_list.pl $(CORE)/GLX_VERSION_1_3 | grep -v '\"GLX_VERSION' >> $@
-	$(BIN)/make_list.pl $(GLX_EXT_SPEC) >> $@
-	echo -e "\n  return GLEW_OK;\n}" >> $@
-	echo -e "\n#endif /* !__APPLE__ || GLEW_APPLE_GLX */\n" >> $@;
-	cat $(SRC)/glew_init_tail.c >> $@
-	cat $(SRC)/glew_str_head.c >> $@
-	$(BIN)/make_str.pl $(GL_CORE_SPEC) $(GL_EXT_SPEC) >> $@
-	cat $(SRC)/glew_str_wgl.c >> $@
-	$(BIN)/make_str.pl $(WGL_EXT_SPEC) >> $@
-	cat $(SRC)/glew_str_glx.c >> $@
-	$(BIN)/make_str.pl $(GLX_CORE_SPEC) $(GLX_EXT_SPEC) >> $@
-	cat $(SRC)/glew_str_tail.c >> $@
-	perl -e "s/GLEW_VERSION_STRING/$(GLEW_VERSION)/g" -pi $@
-	perl -e "s/GLEW_VERSION_MAJOR_STRING/$(GLEW_MAJOR)/g" -pi $@
-	perl -e "s/GLEW_VERSION_MINOR_STRING/$(GLEW_MINOR)/g" -pi $@
-	perl -e "s/GLEW_VERSION_MICRO_STRING/$(GLEW_MICRO)/g" -pi $@
-	perl -e "s/GLEW_ARB_vertex_shader = !_glewInit_GL_ARB_vertex_shader\(GLEW_CONTEXT_ARG_VAR_INIT\);/{ GLEW_ARB_vertex_shader = !_glewInit_GL_ARB_vertex_shader(GLEW_CONTEXT_ARG_VAR_INIT); _glewInit_GL_ARB_vertex_program(GLEW_CONTEXT_ARG_VAR_INIT); }/g" -pi $@
-	perl -e "s/\(\(glColorSubTable = /((glBlendEquation = (PFNGLBLENDEQUATIONPROC)glewGetProcAddress((const GLubyte*)\"glBlendEquation\")) == NULL) || r;\n  r = ((glColorSubTable = /g" -pi $@
-	$(BIN)/fix_OML_sync_control.sh $@
-	rm -f $@.bak
-
-$(S.DEST)/glew_def.c: $(EXT)/.dummy
-	cp -f $(SRC)/glew_license.h $@
-	echo -e "#include \"glew_utils.h\"\n\n#if !defined(_WIN32) || !defined(GLEW_MX)" >> $@
-	$(BIN)/make_def_fun.pl GL $(GL_CORE_SPEC) >> $@
-	$(BIN)/make_def_fun.pl GL $(GL_EXT_SPEC) >> $@
-	echo -e "\n#endif /* !WIN32 || !GLEW_MX */" >> $@
-	echo -e "\n#if !defined(GLEW_MX)\n\nGLboolean __GLEW_VERSION_1_1 = GL_FALSE;" >> $@
-	$(BIN)/make_def_var.pl GL $(GL_CORE_SPEC) >> $@
-	$(BIN)/make_def_var.pl GL $(GL_EXT_SPEC) >> $@
-	echo -e "\n#if defined(_WIN32)" >> $@
-	$(BIN)/make_def_fun.pl WGL $(WGL_EXT_SPEC) >> $@
-	$(BIN)/make_def_var.pl WGL $(WGL_EXT_SPEC) >> $@
-	echo -e "\n#endif /* _WIN32 */" >> $@
-	echo -e "\n#endif /* !GLEW_MX */" >> $@;
-	echo -e "\n#if !defined(_WIN32) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX))" >> $@
-	$(BIN)/make_def_fun.pl GLX $(GLX_CORE_SPEC) >> $@
-	$(BIN)/make_def_fun.pl GLX $(GLX_EXT_SPEC) >> $@
-	echo -e "\n#if !defined(GLEW_MX)" >> $@;
-	echo -e "\nGLboolean __GLXEW_VERSION_1_0 = GL_FALSE;" >> $@
-	echo -e "GLboolean __GLXEW_VERSION_1_1 = GL_FALSE;" >> $@
-	$(BIN)/make_def_var.pl GLX $(GLX_CORE_SPEC) >> $@
-	$(BIN)/make_def_var.pl GLX $(GLX_EXT_SPEC) >> $@
-	echo -e "\n#endif /* !GLEW_MX */" >> $@;
-	echo -e "\n#endif /* !__APPLE__ || GLEW_APPLE_GLX */" >> $@;
-	rm -f $@.bak
-
-$(S.DEST)/glew_init.c: $(EXT)/.dummy
-	cp -f $(SRC)/glew_license.h $@
-	echo -e "#include \"glew_utils.h\"\n" >> $@
-	$(BIN)/make_init.pl GL $(GL_CORE_SPEC) >> $@
-	$(BIN)/make_init.pl GL $(GL_EXT_SPEC) >> $@
-	cat $(SRC)/glew_init_gl.c >> $@
-	$(BIN)/make_list.pl $(GL_CORE_SPEC) | grep -v '\"GL_VERSION' >> $@
-	$(BIN)/make_list.pl $(GL_EXT_SPEC) >> $@
-	echo -e "\n  return GLEW_OK;\n}\n\n#if defined(_WIN32)\n" >> $@;
-	$(BIN)/make_init.pl WGL $(WGL_EXT_SPEC) >> $@
-	cat $(SRC)/glew_init_wgl.c >> $@
-	$(BIN)/make_list.pl $(WGL_EXT_SPEC) >> $@
-	echo -e "\n  return GLEW_OK;\n}\n\n" >> $@;
-	echo -e "\n#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)\n" >> $@
-	$(BIN)/make_init.pl GLX $(GLX_CORE_SPEC) >> $@
-	$(BIN)/make_init.pl GLX $(GLX_EXT_SPEC) >> $@
-	cat $(SRC)/glew_init_glx.c >> $@
-	$(BIN)/make_list.pl $(CORE)/GLX_VERSION_1_3 | grep -v '\"GLX_VERSION' >> $@
-	$(BIN)/make_list.pl $(GLX_EXT_SPEC) >> $@
-	echo -e "\n  return GLEW_OK;\n}\n\n#endif /* !__APPLE__ || GLEW_APPLE_GLX */\n" >> $@;
-	cat $(SRC)/glew_init_tail.c >> $@
-	perl -e "s/GLEW_VERSION_STRING/$(GLEW_VERSION)/g" -pi $@
-	perl -e "s/GLEW_VERSION_MAJOR_STRING/$(GLEW_MAJOR)/g" -pi $@
-	perl -e "s/GLEW_VERSION_MINOR_STRING/$(GLEW_MINOR)/g" -pi $@
-	perl -e "s/GLEW_VERSION_MICRO_STRING/$(GLEW_MICRO)/g" -pi $@
-	perl -e "s/GLEW_ARB_vertex_shader = !_glewInit_GL_ARB_vertex_shader\(GLEW_CONTEXT_ARG_VAR_INIT\);/{ GLEW_ARB_vertex_shader = !_glewInit_GL_ARB_vertex_shader(GLEW_CONTEXT_ARG_VAR_INIT); _glewInit_GL_ARB_vertex_program(GLEW_CONTEXT_ARG_VAR_INIT); }/g" -pi $@
-	perl -e "s/\(\(glBlendColor = /((glBlendEquation = (PFNGLBLENDEQUATIONPROC)glewGetProcAddress((const GLubyte*)\"glBlendEquation\")) == NULL) || r;\n  r = ((glBlendColor = /g" -pi $@
-	$(BIN)/fix_OML_sync_control.sh $@
-	rm -f $@.bak
-
-$(S.DEST)/glew_str.c: $(EXT)/.dummy
-	cp -f $(SRC)/glew_license.h $@
-	echo -e "\n#include \"glew_utils.h\"\n" >> $@
-	cat $(SRC)/glew_str_head.c >> $@
-	$(BIN)/make_str.pl $(GL_CORE_SPEC) $(GL_EXT_SPEC) >> $@
-	cat $(SRC)/glew_str_wgl.c >> $@
-	$(BIN)/make_str.pl $(WGL_EXT_SPEC) >> $@
-	cat $(SRC)/glew_str_glx.c >> $@
-	$(BIN)/make_str.pl $(GLX_CORE_SPEC) $(GLX_EXT_SPEC) >> $@
-	cat $(SRC)/glew_str_tail.c >> $@
-#	$(BIN)/fix_OML_sync_control.sh $@
-#	perl -e "s/GLEW_VERSION_STRING/$(GLEW_VERSION)/g" -pi $@
-#	perl -e "s/GLEW_ARB_vertex_shader = !_glewInit_GL_ARB_vertex_shader\(GLEW_CONTEXT_ARG_VAR_INIT\);/{ GLEW_ARB_vertex_shader = !_glewInit_GL_ARB_vertex_shader(GLEW_CONTEXT_ARG_VAR_INIT); _glewInit_GL_ARB_vertex_program(GLEW_CONTEXT_ARG_VAR_INIT); }/g" -pi $@
-	rm -f $@.bak
-
-$(S.DEST)/glewinfo.c: $(EXT)/.dummy
-	@echo "--------------------------------------------------------------------"
-	@echo "Creating glewinfo.c"
-	@echo "--------------------------------------------------------------------"
-	cp -f $(SRC)/glew_license.h $@
-	cat $(SRC)/glewinfo_head.c >> $@
-	$(BIN)/make_info.pl $(GL_CORE_SPEC) >> $@
-	$(BIN)/make_info.pl $(GL_EXT_SPEC) >> $@
-	echo -e "#ifdef _WIN32\n" >> $@
-	$(BIN)/make_info.pl $(WGL_EXT_SPEC) >> $@
-	echo -e "#else /* _UNIX */\n" >> $@
-	$(BIN)/make_info.pl $(GLX_CORE_SPEC) >> $@
-	$(BIN)/make_info.pl $(GLX_EXT_SPEC) >> $@
-	echo -e "#endif /* _WIN32 */\n" >> $@
-
-	cat $(SRC)/glewinfo_gl.c >> $@
-	$(BIN)/make_info_list.pl $(GL_CORE_SPEC) >> $@
-	$(BIN)/make_info_list.pl $(GL_EXT_SPEC) >> $@
-	cat $(SRC)/glewinfo_wgl.c >> $@
-	$(BIN)/make_info_list.pl $(WGL_EXT_SPEC) >> $@
-	cat $(SRC)/glewinfo_glx.c >> $@
-	$(BIN)/make_info_list.pl $(GLX_CORE_SPEC) >> $@
-	$(BIN)/make_info_list.pl $(GLX_EXT_SPEC) >> $@
-	cat $(SRC)/glewinfo_tail.c >> $@
-	$(BIN)/fix_OML_sync_control.sh $@
-	perl -e 's/"glColorSubTable"/"glBlendEquation", glBlendEquation == NULL);\n  glewInfoFunc("glColorSubTable"/g' -pi $@
-	rm -f $@.bak
-
-# Update documentation
-
-$(D.DEST)/%.html: doc/%.html
-	@echo "--------------------------------------------------------------------"
-	@echo "Creating $(@F)"
-	@echo "--------------------------------------------------------------------"
-	cat $(SRC)/header.html $< $(SRC)/footer.html | \
-  sed 's#<a href="$(@F)">\(.*\)</a>#\1#' > $@
-
-$(D.DEST)/glew.html: $(EXT)/.dummy
-	@echo "--------------------------------------------------------------------"
-	@echo "Creating glew.html"
-	@echo "--------------------------------------------------------------------"
-	cp -f $(SRC)/header.html $@
-	echo -e "<h2>Supported OpenGL Extensions</h2>\n" >> $@
-	$(BIN)/make_html.pl $(GL_EXT_SPEC) >> $@
-	cat $(SRC)/footer.html >> $@
-	sed -i 's#<a href="$(@F)">\(.*\)</a>#\1#' $@
-
-$(D.DEST)/wglew.html: $(EXT)/.dummy
-	@echo "--------------------------------------------------------------------"
-	@echo "Creating wglew.html"
-	@echo "--------------------------------------------------------------------"
-	cp -f $(SRC)/header.html $@
-	echo -e "<h2>Supported WGL Extensions</h2>\n" >> $@
-	$(BIN)/make_html.pl $(WGL_EXT_SPEC) >> $@
-	cat $(SRC)/footer.html >> $@
-	sed -i 's#<a href="$(@F)">\(.*\)</a>#\1#' $@
-
-$(D.DEST)/glxew.html: $(EXT)/.dummy
-	@echo "--------------------------------------------------------------------"
-	@echo "Creating glxew.html"
-	@echo "--------------------------------------------------------------------"
-	cp -f $(SRC)/header.html $@
-	echo -e "<h2>Supported GLX Extensions</h2>\n" >> $@
-	$(BIN)/make_html.pl $(GLX_EXT_SPEC) >> $@
-	cat $(SRC)/footer.html >> $@
-	sed -i 's#<a href="$(@F)">\(.*\)</a>#\1#' $@
-
-$(B.DEST)/%.rc: src/%.rc $(EXT)/.dummy
-	perl -e "s/GLEW_MAJOR/$(GLEW_MAJOR)/g;s/GLEW_MINOR/$(GLEW_MINOR)/g;s/GLEW_MICRO/$(GLEW_MICRO)/g;" -p $< > $@
-
-clean:
-	rm -rf $(I.TARGETS) $(S.TARGETS) $(D.TARGETS) $(B.TARGETS)
-
-clobber: clean
-	rm -rf $(EXT)
-
-destroy: clobber
-	rm -rf $(REGISTRY)
diff --git a/src/other/glew/auto/bin/fix_OML_sync_control.sh b/src/other/glew/auto/bin/fix_OML_sync_control.sh
deleted file mode 100755
index 2579ab4..0000000
--- a/src/other/glew/auto/bin/fix_OML_sync_control.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/sh
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-perl -e 's/#ifndef GLX_OML_sync_control/#if !defined(GLX_OML_sync_control) \&\& defined(__STDC_VERSION__) \&\& (__STDC_VERSION__ >= 199901L)\n#include <inttypes.h>/;' -pi $1
-perl -e 's/#ifdef GLX_OML_sync_control/#if defined(GLX_OML_sync_control) \&\& defined(__STDC_VERSION__) \&\& (__STDC_VERSION__ >= 199901L)\n#include <inttypes.h>/;' -pi $1
-perl -e 's/(extern PFNGLXGETMSCRATEOMLPROC __glewXGetMscRateOML;)/#ifdef GLX_OML_sync_control\n\1/' -pi $1
-perl -e 's/(extern PFNGLXWAITFORSBCOMLPROC __glewXWaitForSbcOML;)/\1\n#endif/' -pi $1
-perl -e 's/(extern GLboolean __GLXEW_OML_sync_control;)/#ifdef GLX_OML_sync_control\n\1\n#endif/' -pi $1
-perl -e 's/(PFNGLXGETMSCRATEOMLPROC __glewXGetMscRateOML = NULL;)/#ifdef GLX_OML_sync_control\n\1/' -pi $1
-perl -e 's/(PFNGLXWAITFORSBCOMLPROC __glewXWaitForSbcOML = NULL;)/\1\n#endif/' -pi $1
-perl -e 's/(GLboolean __GLXEW_OML_sync_control = GL_FALSE;)/#ifdef GLX_OML_sync_control\n\1\n#endif/' -pi $1
-rm -f $1.bak
diff --git a/src/other/glew/auto/bin/make.pl b/src/other/glew/auto/bin/make.pl
deleted file mode 100644
index c3e72c3..0000000
--- a/src/other/glew/auto/bin/make.pl
+++ /dev/null
@@ -1,188 +0,0 @@
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-my %regex = (
-    extname  => qr/^[A-Z][A-Za-z0-9_]+$/,
-    exturl   => qr/^http.+$/,
-    function => qr/^(.+) ([a-z][a-z0-9_]*) \((.+)\)$/i, 
-    token    => qr/^([A-Z][A-Z0-9_x]*)\s+((?:0x)?[0-9A-Fa-f]+|[A-Z][A-Z0-9_]*)$/,
-    type     => qr/^typedef\s+(.+)\s+([\*A-Za-z0-9_]+)$/,
-    exact    => qr/.*;$/,
-);
-
-# prefix function name with glew
-sub prefixname($)
-{
-    my $name = $_[0];
-    $name =~ s/^(.*)gl/__$1glew/;
-    return $name;
-}
-
-# prefix function name with glew
-sub prefix_varname($)
-{
-    my $name = $_[0];
-    $name =~ s/^(.*)GL(X*)EW/__$1GL$2EW/;
-    return $name;
-}
-
-#---------------------------------------------------------------------------------------
-
-sub make_exact($)
-{
-	my $exact = $_[0];
-	$exact =~ s/(; |{)/$1\n/g;
-    return $exact;
-}
-
-sub make_separator($)
-{
-    my $extname = $_[0];
-    my $l = length $extname;
-    my $s = (71 - $l)/2;
-    print "/* ";
-    my $j = 3;
-    for (my $i = 0; $i < $s; $i++)
-    {
-	print "-";
-	$j++;
-    }
-    print " $_[0] ";
-    $j += $l + 2;
-    while ($j < 76)
-    {
-	print "-";
-	$j++;
-    }
-    print " */\n\n";
-}
-
-#---------------------------------------------------------------------------------------
-
-sub parse_ext($)
-{
-    my $filename = shift;
-    my %functions = ();
-    my %tokens = ();
-    my %types = ();
-    my @exacts = ();
-    my $extname = "";    # Full extension name GL_FOO_extension
-    my $exturl = "";     # Info URL
-    my $extstring = "";  # Relevant extension string 
-
-    open EXT, "<$filename" or return;
-
-    # As of GLEW 1.5.3 the first three lines _must_ be
-    # the extension name, the URL and the GL extension
-    # string (which might be different to the name)
-    #
-    # For example GL_NV_geometry_program4 is available
-    # iff GL_NV_gpu_program4 appears in the extension
-    # string.
-    #
-    # For core OpenGL versions, the third line should
-    # be blank.
-    #
-    # If the URL is unknown, the second line should be
-    # blank.
-   
-    $extname   = readline(*EXT);
-    $exturl    = readline(*EXT);
-    $extstring = readline(*EXT);
-
-    chomp($extname);
-    chomp($exturl);
-    chomp($extstring);
-
-    while(<EXT>)
-    {
-        chomp;
-        if (s/^\s+//)
-        {
-            if (/$regex{exact}/)
-            {
-                push @exacts, $_;
-            }
-            elsif (/$regex{type}/)
-            {
-                my ($value, $name) = ($1, $2);
-                $types{$name} = $value;
-            }
-            elsif (/$regex{token}/)
-            {
-                my ($name, $value) = ($1, $2);
-                $tokens{$name} = $value;
-            }
-            elsif (/$regex{function}/)
-            {
-                my ($return, $name, $parms) = ($1, $2, $3);
-                $functions{$name} = {
-		    rtype => $return,
-		    parms => $parms,
-		};
-            } else {
-                print STDERR "'$_' matched no regex.\n";
-            }
-        }
-    }
-
-    close EXT;
-
-    return ($extname, $exturl, $extstring, \%types, \%tokens, \%functions, \@exacts);
-}
-
-sub output_tokens($$)
-{
-    my ($tbl, $fnc) = @_;
-    if (keys %{$tbl})
-    {
-        local $, = "\n";
-        print "\n";
-        print map { &{$fnc}($_, $tbl->{$_}) } sort { hex ${$tbl}{$a} <=> hex ${$tbl}{$b} } keys %{$tbl};
-        print "\n";
-    } else {
-        print STDERR "no keys in table!\n";
-    }
-}
-
-sub output_types($$)
-{
-    my ($tbl, $fnc) = @_;
-    if (keys %{$tbl})
-    {
-        local $, = "\n";
-        print "\n";
-        print map { &{$fnc}($_, $tbl->{$_}) } sort { ${$tbl}{$a} cmp ${$tbl}{$b} } keys %{$tbl};
-        print "\n";
-    }
-}
-
-sub output_decls($$)
-{
-    my ($tbl, $fnc) = @_;
-    if (keys %{$tbl})
-    {
-        local $, = "\n";
-        print "\n";
-        print map { &{$fnc}($_, $tbl->{$_}) } sort keys %{$tbl};
-        print "\n";
-    }
-}
-
-sub output_exacts($$)
-{
-    my ($tbl, $fnc) = @_;
-    if (scalar @{$tbl})
-    {
-        local $, = "\n";
-        print "\n";
-        print map { &{$fnc}($_) } sort @{$tbl};
-        print "\n";
-    }
-}
-
diff --git a/src/other/glew/auto/bin/make_def_fun.pl b/src/other/glew/auto/bin/make_def_fun.pl
deleted file mode 100644
index 40e67d5..0000000
--- a/src/other/glew/auto/bin/make_def_fun.pl
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/usr/bin/perl
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-use strict;
-use warnings;
-
-do 'bin/make.pl';
-
-# function pointer declaration
-sub make_pfn_decl($%)
-{
-    return "PFN" . (uc $_[0]) . "PROC " . prefixname($_[0]) . " = NULL;";
-}
-
-my @extlist = ();
-my %extensions = ();
-
-our $type = shift;
-
-if (@ARGV)
-{
-    @extlist = @ARGV;
-
-	foreach my $ext (sort @extlist)
-	{
-		my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
-		output_decls($functions, \&make_pfn_decl);
-	}
-}
diff --git a/src/other/glew/auto/bin/make_def_var.pl b/src/other/glew/auto/bin/make_def_var.pl
deleted file mode 100644
index e484194..0000000
--- a/src/other/glew/auto/bin/make_def_var.pl
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/usr/bin/perl
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-use strict;
-use warnings;
-
-do 'bin/make.pl';
-
-my @extlist = ();
-my %extensions = ();
-
-our $type = shift;
-
-if (@ARGV)
-{
-    @extlist = @ARGV;
-
-	foreach my $ext (sort @extlist)
-	{
-		my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
-		my $extvar = $extname;
-		$extvar =~ s/GL(X*)_/GL$1EW_/;
-		print "GLboolean " . prefix_varname($extvar) . " = GL_FALSE;\n";
-	}
-}
diff --git a/src/other/glew/auto/bin/make_header.pl b/src/other/glew/auto/bin/make_header.pl
deleted file mode 100644
index e58b46f..0000000
--- a/src/other/glew/auto/bin/make_header.pl
+++ /dev/null
@@ -1,71 +0,0 @@
-#!/usr/bin/perl
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-use strict;
-use warnings;
-
-do 'bin/make.pl';
-
-# token
-sub make_define($$)
-{
-    return "#define $_[0] $_[1]"
-}
-
-# type declaration
-sub make_type($$)
-{
-    return "typedef $_[1] $_[0];"
-}
-
-# function pointer type declaration
-sub make_pfn_type($%)
-{
-    our $api;
-    return join(' ', "typedef", $_[1]->{rtype},
-        "($api * PFN" . (uc $_[0]) . "PROC)",
-        "(" . $_[1]->{parms} . ")") . ";";
-}
-
-# function name alias
-sub make_pfn_alias($%)
-{
-    our $type;
-    return join(" ", "#define", $_[0], $type . "EW_GET_FUN(" . prefixname($_[0]) . ")")
-}
-
-my @extlist = ();
-my %extensions = ();
-
-our $api = shift;
-our $type = shift;
-
-if (@ARGV)
-{
-    @extlist = @ARGV;
-
-	foreach my $ext (sort @extlist)
-	{
-		my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
-
-		make_separator($extname);
-		print "#ifndef $extname\n#define $extname 1\n";
-		output_tokens($tokens, \&make_define);
-		output_types($types, \&make_type);
-		output_exacts($exacts, \&make_exact);
-		output_decls($functions, \&make_pfn_type);
-		output_decls($functions, \&make_pfn_alias);
-
-		my $extvar = $extname;
-		$extvar =~ s/GL(X*)_/GL$1EW_/;
-		
-		print "\n#define $extvar " . $type . "EW_GET_VAR(" . prefix_varname($extvar) . ")\n";
-		print "\n#endif /* $extname */\n\n";
-	}
-}
diff --git a/src/other/glew/auto/bin/make_html.pl b/src/other/glew/auto/bin/make_html.pl
deleted file mode 100644
index ee58196..0000000
--- a/src/other/glew/auto/bin/make_html.pl
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/usr/bin/perl
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-use strict;
-use warnings;
-
-do 'bin/make.pl';
-
-#---------------------------------------------------------------------------------------
-
-my @extlist = ();
-my %extensions = ();
-my $group = "";
-my $cur_group = "";
-
-if (@ARGV)
-{
-    @extlist = @ARGV;
-	my $n = 1;
-	print "<table border=\"0\" width=\"100%\" cellpadding=\"1\" cellspacing=\"0\" align=\"center\">\n";
-	foreach my $ext (sort @extlist)
-	{
-		my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
-		$cur_group = $extname;
-		$cur_group =~ s/^(?:W?)GL(?:X?)_([A-Z0-9]+?)_.*$/$1/;
-		$extname =~ s/^(?:W?)GL(?:X?)_(.*)$/$1/;
-		if ($cur_group ne $group)
-		{
-			if ($group ne "")
-			{
-				print "<tr><td><br></td><td></td><td></td></tr>\n";
-			}
-			$group = $cur_group;
-		}
-
-		{
-			if ($exturl)
-			{
-				print "<tr><td class=\"num\">$n</td><td> </td><td><a href=\"$exturl\">$extname</a></td></tr>\n";
-			}
-			else
-			{
-				print "<tr><td class=\"num\">$n</td><td> </td><td>$extname</td></tr>\n";
-			}
-			$n++;
-		}
-	}
-	print "</table>\n"
-}
diff --git a/src/other/glew/auto/bin/make_info.pl b/src/other/glew/auto/bin/make_info.pl
deleted file mode 100644
index 5d0c7f6..0000000
--- a/src/other/glew/auto/bin/make_info.pl
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/usr/bin/perl
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-use strict;
-use warnings;
-
-do 'bin/make.pl';
-
-#---------------------------------------------------------------------------------------
-
-# function pointer definition
-sub make_pfn_info($%)
-{
-    my $name = $_[0];
-    return "  glewInfoFunc(\"$_[0]\", $name == NULL);";
-}
-
-#---------------------------------------------------------------------------------------
-
-my @extlist = ();
-my %extensions = ();
-
-if (@ARGV)
-{
-    @extlist = @ARGV;
-
-	foreach my $ext (sort @extlist)
-	{
-		my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
-		my $extvar = $extname;
-		$extvar =~ s/GL(X*)_/GL$1EW_/;
-		my $extpre = $extname;
-		$extpre =~ s/(GLX|GLW|GL).*/$1/;
-		$extpre = lc $extpre;
-
-		#make_separator($extname);
-		print "#ifdef $extname\n\n";
-		print "static void _glewInfo_$extname (void)\n{\n";
-		if ($extvar =~ /VERSION/)
-		{
-			print "  glewPrintExt(\"$extname\", $extvar, $extvar, $extvar);\n";
-		}
-		else
-		{
-			print "  glewPrintExt(\"$extname\", $extvar, $extpre" .
-				"ewIsSupported(\"$extname\"), $extpre" .
-				"ewGetExtension(\"$extstring\"));\n";
-		}
-		output_decls($functions, \&make_pfn_info);
-		print "}\n\n";
-		print "#endif /* $extname */\n\n";
-	}
-}
diff --git a/src/other/glew/auto/bin/make_info_list.pl b/src/other/glew/auto/bin/make_info_list.pl
deleted file mode 100644
index a55106d..0000000
--- a/src/other/glew/auto/bin/make_info_list.pl
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/usr/bin/perl
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-use strict;
-use warnings;
-
-do 'bin/make.pl';
-
-#---------------------------------------------------------------------------------------
-
-# function pointer definition
-sub make_pfn_def($%)
-{
-    return "PFN" . (uc $_[0]) . "PROC " . prefixname($_[0]) . " = NULL;";
-}
-
-# function pointer definition
-sub make_init_call($%)
-{
-    my $name = prefixname($_[0]);
-    return "  r = r || (" . $name . " = (PFN" . (uc $_[0]) . "PROC)glewGetProcAddress((const GLubyte*)\"" . $name . "\")) == NULL;";
-}
-
-#---------------------------------------------------------------------------------------
-
-my @extlist = ();
-my %extensions = ();
-
-if (@ARGV)
-{
-    @extlist = @ARGV;
-
-	foreach my $ext (sort @extlist)
-	{
-		my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
-
-		print "#ifdef $extname\n";
-		print "  _glewInfo_$extname();\n";
-		print "#endif /* $extname */\n";
-	}
-}
diff --git a/src/other/glew/auto/bin/make_init.pl b/src/other/glew/auto/bin/make_init.pl
deleted file mode 100644
index 70abc98..0000000
--- a/src/other/glew/auto/bin/make_init.pl
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/usr/bin/perl
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-use strict;
-use warnings;
-
-do 'bin/make.pl';
-
-#-------------------------------------------------------------------------------
-
-# function pointer definition
-sub make_pfn_def_init($%)
-{
-    #my $name = prefixname($_[0]);
-    return "  r = ((" . $_[0] . " = (PFN" . (uc $_[0]) . "PROC)glewGetProcAddress((const GLubyte*)\"" . $_[0] . "\")) == NULL) || r;";
-}
-
-#-------------------------------------------------------------------------------
-
-my @extlist = ();
-my %extensions = ();
-
-our $type = shift;
-
-if (@ARGV)
-{
-    @extlist = @ARGV;
-
-	foreach my $ext (sort @extlist)
-	{
-		my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = 
-			parse_ext($ext);
-
-		#make_separator($extname);
-		print "#ifdef $extname\n\n";
-		my $extvar = $extname;
-		my $extvardef = $extname;
-		$extvar =~ s/GL(X*)_/GL$1EW_/;
-		if (keys %$functions)
-		{
-			print "static GLboolean _glewInit_$extname (" . $type . 
-				"EW_CONTEXT_ARG_DEF_INIT)\n{\n  GLboolean r = GL_FALSE;\n";
-			output_decls($functions, \&make_pfn_def_init);
-			print "\n  return r;\n}\n\n";
-		}
-		#print "\nGLboolean " . prefix_varname($extvar) . " = GL_FALSE;\n\n";
-		print "#endif /* $extname */\n\n";
-	}
-}
diff --git a/src/other/glew/auto/bin/make_list.pl b/src/other/glew/auto/bin/make_list.pl
deleted file mode 100644
index ceaa479..0000000
--- a/src/other/glew/auto/bin/make_list.pl
+++ /dev/null
@@ -1,66 +0,0 @@
-#!/usr/bin/perl
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-use strict;
-use warnings;
-
-do 'bin/make.pl';
-
-#---------------------------------------------------------------------------------------
-
-# function pointer definition
-sub make_init_call($%)
-{
-    my $name = prefixname($_[0]);
-    return "  r = r || (" . $_[0] . " = (PFN" . (uc $_[0]) . "PROC)glewGetProcAddress(\"" . $name . "\")) == NULL;";
-}
-
-#---------------------------------------------------------------------------------------
-
-my @extlist = ();
-my %extensions = ();
-
-if (@ARGV)
-{
-    @extlist = @ARGV;
-
-	foreach my $ext (sort @extlist)
-	{
-		my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
-
-		my $extvar = $extname;
-		$extvar =~ s/GL(X*)_/GL$1EW_/;
-
-		my $extpre = $extname;
-		$extpre =~ s/^(W?)GL(X?).*$/\l$1gl\l$2ew/;
-
-		#my $pextvar = prefix_varname($extvar);
-
-		print "#ifdef $extname\n";
-
-                if (length($extstring))
-                {
-		        print "  CONST_CAST(" . $extvar . ") = " . $extpre . "GetExtension(\"$extstring\");\n";
-                }
-
-		if (keys %$functions)
-		{
-			if ($extname =~ /WGL_.*/)
-			{
-				print "  if (glewExperimental || " . $extvar . "|| crippled) CONST_CAST(" . $extvar . ")= !_glewInit_$extname(GLEW_CONTEXT_ARG_VAR_INIT);\n";
-			}
-			else
-			{
-				print "  if (glewExperimental || " . $extvar . ") CONST_CAST(" . $extvar . ") = !_glewInit_$extname(GLEW_CONTEXT_ARG_VAR_INIT);\n";
-			}
-		}
-		print "#endif /* $extname */\n";
-	}
-
-}
diff --git a/src/other/glew/auto/bin/make_str.pl b/src/other/glew/auto/bin/make_str.pl
deleted file mode 100644
index ac4a366..0000000
--- a/src/other/glew/auto/bin/make_str.pl
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/usr/bin/perl
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-use strict;
-use warnings;
-
-do 'bin/make.pl';
-
-my @extlist = ();
-my %extensions = ();
-
-if (@ARGV)
-{
-    @extlist = @ARGV;
-
-	my $curexttype = "";
-	foreach my $ext (sort @extlist)
-	{
-		my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
-		my $exttype = $extname;
-		$exttype =~ s/(W*?)GL(X*?)_(.*?_)(.*)/$3/;
-		my $extrem = $extname;
-		$extrem =~ s/(W*?)GL(X*?)_(.*?_)(.*)/$4/;
-		my $extvar = $extname;
-		$extvar =~ s/(W*)GL(X*)_/$1GL$2EW_/;
-		if(!($exttype =~ $curexttype))
-		{
-			if(length($curexttype) > 0)
-			{
-				print "      }\n";
-			}
-			print "      if (_glewStrSame2(&pos, &len, (const GLubyte*)\"$exttype\", " . length($exttype) . "))\n";
-			print "      {\n";
-			$curexttype = $exttype;
-		}
-		print "#ifdef $extname\n";
-		print "        if (_glewStrSame3(&pos, &len, (const GLubyte*)\"$extrem\", ". length($extrem) . "))\n";
-		#print "        return $extvar;\n";
-		print "        {\n";
-		print "          ret = $extvar;\n";
-		print "          continue;\n";
-		print "        }\n";
-		print "#endif\n";
-	}
-
-	print "      }\n";
-}
diff --git a/src/other/glew/auto/bin/make_struct_fun.pl b/src/other/glew/auto/bin/make_struct_fun.pl
deleted file mode 100644
index c885960..0000000
--- a/src/other/glew/auto/bin/make_struct_fun.pl
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/usr/bin/perl
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-use strict;
-use warnings;
-
-do 'bin/make.pl';
-
-# function pointer declaration
-sub make_pfn_decl($%)
-{
-    our $export;
-    return $export . " PFN" . (uc $_[0]) . "PROC " . prefixname($_[0]) . ";";
-}
-
-my @extlist = ();
-my %extensions = ();
-
-our $export = shift;
-
-if (@ARGV)
-{
-    @extlist = @ARGV;
-
-	foreach my $ext (sort @extlist)
-	{
-		my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
-		output_decls($functions, \&make_pfn_decl);
-	}
-}
diff --git a/src/other/glew/auto/bin/make_struct_var.pl b/src/other/glew/auto/bin/make_struct_var.pl
deleted file mode 100644
index c7ba2f4..0000000
--- a/src/other/glew/auto/bin/make_struct_var.pl
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/usr/bin/perl
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-use strict;
-use warnings;
-
-do 'bin/make.pl';
-
-my @extlist = ();
-my %extensions = ();
-
-our $export = shift;
-
-if (@ARGV)
-{
-    @extlist = @ARGV;
-
-	foreach my $ext (sort @extlist)
-	{
-		my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
-		my $extvar = $extname;
-		$extvar =~ s/GL(X*)_/GL$1EW_/;
-		print $export . " GLboolean " . prefix_varname($extvar) . ";\n";
-	}
-}
diff --git a/src/other/glew/auto/bin/parse_spec.pl b/src/other/glew/auto/bin/parse_spec.pl
deleted file mode 100644
index d18fee7..0000000
--- a/src/other/glew/auto/bin/parse_spec.pl
+++ /dev/null
@@ -1,335 +0,0 @@
-#!/usr/bin/perl
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-use strict;
-use warnings;
-
-sub compile_regex
-{
-    my $regex = join('', @_);
-    return qr/$regex/
-}
-
-my @sections = (
-    "Name",
-    "Name Strings?",
-    "New Procedures and Functions",
-    "New Tokens",
-);
-
-my %typemap = (
-    bitfield => "GLbitfield",
-    boolean  => "GLboolean",
-    # fsck up in EXT_vertex_array
-    Boolean  => "GLboolean",
-    byte     => "GLbyte",
-    clampd   => "GLclampd",
-    clampf   => "GLclampf",
-    double   => "GLdouble",
-    enum     => "GLenum",
-    # Intel fsck up
-    Glenum   => "GLenum",
-    float    => "GLfloat",
-    half     => "GLhalf",
-    int      => "GLint",
-    short    => "GLshort",
-    sizei    => "GLsizei",
-    ubyte    => "GLubyte",
-    uint     => "GLuint",
-    ushort   => "GLushort",
-    DMbuffer => "void *",
-    # Nvidia video output fsck up
-    int64EXT => "GLint64EXT",
-    uint64EXT=> "GLuint64EXT",
-
-    # ARB VBO introduces these.
-
-    sizeiptr => "GLsizeiptr",
-    intptr   => "GLintptr",
-    sizeiptrARB => "GLsizeiptrARB",
-    intptrARB   => "GLintptrARB",
-
-    # ARB shader objects introduces these, charARB is at least 8 bits,
-    # handleARB is at least 32 bits
-    charARB => "GLcharARB",
-    handleARB => "GLhandleARB",
-
-    # OpenGL 3.2 and GL_ARB_sync
-
-    int64  => "GLint64",
-    uint64 => "GLuint64",
-    sync   => "GLsync",
-
-    # GLX 1.3 defines new types which might not be available at compile time
-
-    #GLXFBConfig   => "void*",
-    #GLXFBConfigID => "XID",
-    #GLXContextID  => "XID",
-    #GLXWindow     => "XID",
-    #GLXPbuffer    => "XID",
-
-    # Weird stuff to some SGIX extension
-
-    #GLXFBConfigSGIX   => "void*",
-    #GLXFBConfigIDSGIX => "XID",
-
-);
-
-my %voidtypemap = (
-    void    => "GLvoid",
-);
-
-my %taboo_tokens = (
-    GL_ZERO => 1,
-);
-
-# list of function definitions to be ignored, unless they are being defined in
-# the given spec.  This is an ugly hack arround the fact that people writing
-# spec files seem to shut down all brain activity while they are at this task.
-#
-# This will be moved to its own file eventually.
-#
-# (mem, 2003-03-19)
-
-my %fnc_ignore_list = (
-    "BindProgramARB"                => "ARB_vertex_program",
-    "ColorSubTableEXT"              => "EXT_color_subtable",
-    "DeleteProgramsARB"             => "ARB_vertex_program",
-    "GenProgramsARB"                => "ARB_vertex_program",
-    "GetProgramEnvParameterdvARB"   => "ARB_vertex_program",
-    "GetProgramEnvParameterfvARB"   => "ARB_vertex_program",
-    "GetProgramLocalParameterdvARB" => "ARB_vertex_program",
-    "GetProgramLocalParameterfvARB" => "ARB_vertex_program",
-    "GetProgramStringARB"           => "ARB_vertex_program",
-    "GetProgramivARB"               => "ARB_vertex_program",
-    "IsProgramARB"                  => "ARB_vertex_program",
-    "ProgramEnvParameter4dARB"      => "ARB_vertex_program",
-    "ProgramEnvParameter4dvARB"     => "ARB_vertex_program",
-    "ProgramEnvParameter4fARB"      => "ARB_vertex_program",
-    "ProgramEnvParameter4fvARB"     => "ARB_vertex_program",
-    "ProgramLocalParameter4dARB"    => "ARB_vertex_program",
-    "ProgramLocalParameter4dvARB"   => "ARB_vertex_program",
-    "ProgramLocalParameter4fARB"    => "ARB_vertex_program",
-    "ProgramLocalParameter4fvARB"   => "ARB_vertex_program",
-    "ProgramStringARB"              => "ARB_vertex_program",
-    "glXCreateContextAttribsARB"    => "ARB_create_context_profile",
-    "wglCreateContextAttribsARB"    => "WGL_ARB_create_context_profile",
-);
-
-my %regex = (
-    eofnc    => qr/(?:\);?$|^$)/, # )$ | );$ | ^$
-    extname  => qr/^[A-Z][A-Za-z0-9_]+$/,
-    none     => qr/^\(none\)$/,
-    function => qr/^(.+) ([a-z][a-z0-9_]*) \((.+)\)$/i,
-    prefix   => qr/^(?:[aw]?gl|glX)/, # gl | agl | wgl | glX
-    tprefix  => qr/^(?:[AW]?GL|GLX)_/, # GL_ | AGL_ | WGL_ | GLX_
-    section  => compile_regex('^(', join('|', @sections), ')$'), # sections in spec
-    token    => qr/^([A-Z0-9][A-Z0-9_]*):?\s+((?:0x)?[0-9A-F]+)(.*)$/, # define tokens
-    types    => compile_regex('\b(', join('|', keys %typemap), ')\b'), # var types
-    voidtype => compile_regex('\b(', keys %voidtypemap, ')\b '), # void type
-);
-
-# reshapes the the function declaration from multiline to single line form
-sub normalize_prototype
-{
-    local $_ = join(" ", @_);
-    s/\s+/ /g;                # multiple whitespace -> single space
-    s/\<.*\>//g;              # remove <comments> from direct state access extension
-    s/\<.*$//g;               # remove incomplete <comments> from direct state access extension
-    s/\s*\(\s*/ \(/;          # exactly one space before ( and none after
-    s/\s*\)\s*/\)/;           # no space before or after )
-    s/\s*\*([a-zA-Z])/\* $1/; # "* identifier"
-    s/\*wgl/\* wgl/;          # "* wgl"
-    s/\*glX/\* glX/;          # "* glX"
-    s/\.\.\./void/;           # ... -> void
-    s/;$//;                   # remove ; at the end of the line
-    return $_;
-}
-
-# Ugly hack to work arround the fact that functions are declared in more
-# than one spec file.
-sub ignore_function($$)
-{
-    return exists($fnc_ignore_list{$_[0]}) && $fnc_ignore_list{$_[0]} ne $_[1]
-}
-
-sub parse_spec($)
-{
-    my $filename = shift;
-    my $extname = "";
-    my $vendortag = "";
-    my @extnames = ();
-    my %functions = ();
-    my %tokens = ();
-
-    my $section = "";
-    my @fnc = ();
-
-    my %proc = (
-        "Name" => sub {
-            if (/^([a-z0-9]+)_([a-z0-9_]+)/i)
-            {
-                $extname = "$1_$2";
-                $vendortag = $1;
-            }
-        },
-
-        "Name Strings" => sub {
-            # Add extension name to extension list
-        
-           # Initially use $extname if (none) specified
-            if (/$regex{none}/)
-            {
-                $_ = $extname;
-            }
-
-            if (/$regex{extname}/)
-            {
-                # prefix with "GL_" if prefix not present
-                s/^/GL_/ unless /$regex{tprefix}/o;
-                # Add extension name to extension list
-                push @extnames, $_;
-            }
-        },
-
-        "New Procedures and Functions" => sub {
-            # if line matches end of function
-            if (/$regex{eofnc}/)
-            {
-                # add line to function declaration
-                push @fnc, $_;
-
-                # if normalized version of function looks like a function
-                if (normalize_prototype(@fnc) =~ /$regex{function}/)
-                {
-                    # get return type, name, and arguments from regex
-                    my ($return, $name, $parms) = ($1, $2, $3);
-                    if (!ignore_function($name, $extname))
-                    {
-                        # prefix with "gl" if prefix not present
-                        $name =~ s/^/gl/ unless $name =~ /$regex{prefix}/;
-                        # is this a pure GL function?
-                        if ($name =~ /^gl/ && $name !~ /^glX/)
-                        {
-                            # apply typemaps
-                            $return =~ s/$regex{types}/$typemap{$1}/og;
-                            $return =~ s/void\*/GLvoid */og;
-                            $parms =~ s/$regex{types}/$typemap{$1}/og;
-                            $parms =~ s/$regex{voidtype}/$voidtypemap{$1}/og;
-                        }
-                        # add to functions hash
-                        $functions{$name} = {
-                            rtype => $return,
-                            parms => $parms,
-                        };
-                    }
-                }
-                # reset function declaration
-                @fnc = ();
-            } elsif ($_ ne "" and $_ ne "None") {
-                # if not eof, add line to function declaration
-                push @fnc, $_
-            }
-        },
-
-        "New Tokens" => sub {
-            if (/$regex{token}/)
-            {
-                my ($name, $value) = ($1, $2);
-                # prefix with "GL_" if prefix not present
-                $name =~ s/^/GL_/ unless $name =~ /$regex{tprefix}/;
-                # Add (name, value) pair to tokens hash, unless it's taboo
-                $tokens{$name} = $value unless exists $taboo_tokens{$name};
-            }
-        },
-    );
-
-    # Some people can't read, the template clearly says "Name String_s_"
-    $proc{"Name String"} = $proc{"Name Strings"};
-
-    # Open spec file
-    open SPEC, "<$filename" or return;
-
-    # For each line of SPEC
-    while(<SPEC>)
-    {
-        # Delete trailing newline character
-        chomp;
-        # Remove trailing white spaces
-        s/\s+$//;
-        # If starts with a capital letter, it must be a new section
-        if (/^[A-Z]/)
-        {
-            # Match section name with one of the predefined names 
-            $section = /$regex{section}/o ? $1 : "default";
-        } else {
-            # Line is internal to a section
-            # Remove leading whitespace
-            s/^\s+//;
-            # Call appropriate section processing function if it exists
-            &{$proc{$section}} if exists $proc{$section};
-        }
-    }
-
-    close SPEC;
-
-    return ($extname, \@extnames, \%tokens, \%functions);
-}
-
-#----------------------------------------------------------------------------------------
-
-my @speclist = ();
-my %extensions = ();
-
-my $ext_dir = shift;
-my $reg_http = "http://www.opengl.org/registry/specs/";
-#my $reg_http = "http://oss.sgi.com/projects/ogl-sample/";
-
-# Take command line arguments or read list from file
-if (@ARGV)
-{
-    @speclist = @ARGV;
-} else {
-    local $/; #???
-    @speclist = split "\n", (<>);
-}
-
-foreach my $spec (sort @speclist)
-{
-    my ($extname, $extnames, $tokens, $functions) = parse_spec($spec);
-
-    foreach my $ext (@{$extnames})
-    {
-        my $info = "$ext_dir/" . $ext;
-        open EXT, ">$info";
-        print EXT $ext . "\n";                       # Extension name
-        my $specname = $spec;
-        $specname =~ s/registry\///;
-        print EXT $reg_http . $specname . "\n";      # Extension info URL
-        print EXT $ext . "\n";                       # Extension string
-
-        my $prefix = $ext;
-        $prefix =~ s/^(.+?)(_.+)$/$1/;
-        foreach my $token (sort { hex ${$tokens}{$a} <=> hex ${$tokens}{$b} } keys %{$tokens})
-        {
-            if ($token =~ /^$prefix\_.*/i)
-            {
-                print EXT "\t" . $token . " " . ${\%{$tokens}}{$token} . "\n";
-            }
-        }
-        foreach my $function (sort keys %{$functions})
-        {
-            if ($function =~ /^$prefix.*/i)
-            {
-                print EXT "\t" . ${$functions}{$function}{rtype} . " " . $function . " (" . ${$functions}{$function}{parms} . ")" . "\n";
-            }
-        }
-        close EXT;
-    }
-}
diff --git a/src/other/glew/auto/bin/update_ext.sh b/src/other/glew/auto/bin/update_ext.sh
deleted file mode 100755
index c660c68..0000000
--- a/src/other/glew/auto/bin/update_ext.sh
+++ /dev/null
@@ -1,280 +0,0 @@
-#!/bin/bash
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-##
-## Parameters:
-##
-##       $1: Extensions directory
-##       $2: Registry directory
-##       $3: The black list
-
-set -e
-
-if [ ! -d $1 ] ; then
-    mkdir $1
-
-# Parse each of the extensions in the registry
-    find $2 -name doc -type d -prune -o -name \*.txt -print | \
-	grep -v -f $3 | sort | bin/parse_spec.pl $1
-
-# fix GL_NV_texture_compression_vtc
-    grep -v EXT $1/GL_NV_texture_compression_vtc > tmp
-    mv tmp $1/GL_NV_texture_compression_vtc
-
-# remove duplicates from GL_ARB_vertex_program and GL_ARB_fragment_program
-    grep -v -F -f $1/GL_ARB_vertex_program $1/GL_ARB_fragment_program > tmp
-    mv tmp $1/GL_ARB_fragment_program
-
-# remove duplicates from GLX_EXT_visual_rating and GLX_EXT_visual_info
-    grep -v -F -f $1/GLX_EXT_visual_info $1/GLX_EXT_visual_rating > tmp
-    mv tmp $1/GLX_EXT_visual_rating
-
-# GL_EXT_draw_buffers2 and GL_EXT_transform_feedback both define glGetBooleanIndexedvEXT but with different parameter names
-    grep -v glGetBooleanIndexedvEXT $1/GL_EXT_transform_feedback > tmp
-    mv tmp $1/GL_EXT_transform_feedback    
-
-# GL_EXT_draw_buffers2 and GL_EXT_transform_feedback both define glGetIntegerIndexedvEXT but with different parameter names
-    grep -v glGetIntegerIndexedvEXT $1/GL_EXT_transform_feedback > tmp
-    mv tmp $1/GL_EXT_transform_feedback    
-
-# remove duplicates from GL_NV_present_video and GLX_NV_present_video
-    grep -v -F -f $1/GLX_NV_present_video $1/GL_NV_present_video > tmp
-    mv tmp $1/GL_NV_present_video
-
-# fix WGL_NV_present_video
-    cat >> $1/WGL_NV_present_video <<EOT
-    DECLARE_HANDLE(HVIDEOOUTPUTDEVICENV);
-EOT
-
-# fix WGL_NV_video_output
-    cat >> $1/WGL_NV_video_output <<EOT
-    DECLARE_HANDLE(HPVIDEODEV);
-EOT
-
-# fix GL_NV_occlusion_query and GL_HP_occlusion_test
-    grep -v '_HP' $1/GL_NV_occlusion_query > tmp
-    mv tmp $1/GL_NV_occlusion_query
-    perl -e's/OCCLUSION_TEST_HP.*/OCCLUSION_TEST_HP 0x8165/' -pi \
-	$1/GL_HP_occlusion_test
-    perl -e's/OCCLUSION_TEST_RESULT_HP.*/OCCLUSION_TEST_RESULT_HP 0x8166/' -pi \
-	$1/GL_HP_occlusion_test
-
-# fix GLvoid in GL_ARB_vertex_buffer_objects
-    perl -e 's/ void\*/ GLvoid\*/g' -pi \
-        $1/GL_ARB_vertex_buffer_object
-
-# add deprecated constants to GL_ATI_fragment_shader
-    cat >> $1/GL_ATI_fragment_shader <<EOT
-	GL_NUM_FRAGMENT_REGISTERS_ATI 0x896E
-	GL_NUM_FRAGMENT_CONSTANTS_ATI 0x896F
-	GL_NUM_PASSES_ATI 0x8970
-	GL_NUM_INSTRUCTIONS_PER_PASS_ATI 0x8971
-	GL_NUM_INSTRUCTIONS_TOTAL_ATI 0x8972
-	GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI 0x8973
-	GL_NUM_LOOPBACK_COMPONENTS_ATI 0x8974
-	GL_COLOR_ALPHA_PAIRING_ATI 0x8975
-	GL_SWIZZLE_STRQ_ATI 0x897A
-	GL_SWIZZLE_STRQ_DQ_ATI 0x897B
-EOT
-
-# add deprecated constants to GL_NV_texture_shader
-    cat >> $1/GL_NV_texture_shader <<EOT
-	GL_OFFSET_TEXTURE_2D_MATRIX_NV 0x86E1
-	GL_OFFSET_TEXTURE_2D_BIAS_NV 0x86E3
-	GL_OFFSET_TEXTURE_2D_SCALE_NV 0x86E2
-EOT
-	
-# fix WGL_ATI_pixel_format_float
-    cat >> $1/WGL_ATI_pixel_format_float <<EOT
-	GL_RGBA_FLOAT_MODE_ATI 0x8820
-	GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI 0x8835
-EOT
-
-# fix WGL_ARB_make_current_read
-    cat >> $1/WGL_ARB_make_current_read <<EOT
-	ERROR_INVALID_PIXEL_TYPE_ARB 0x2043
-	ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
-EOT
-
-# fix WGL_EXT_make_current_read
-    cat >> $1/WGL_EXT_make_current_read <<EOT
-	ERROR_INVALID_PIXEL_TYPE_EXT 0x2043
-EOT
-
-# add typedefs to GL_ARB_vertex_buffer_object; (from personal communication
-# with Marco Fabbricatore).
-#
-# Rationale.  The spec says:
-#
-#   "Both types are defined as signed integers large enough to contain
-#   any pointer value [...] The idea of making these types unsigned was
-#   considered, but was ultimately rejected ..."
-    cat >> $1/GL_ARB_vertex_buffer_object <<EOT
-	typedef ptrdiff_t GLsizeiptrARB
-	typedef ptrdiff_t GLintptrARB
-EOT
-
-# add typedefs to GLX_EXT_import_context
-    cat >> $1/GLX_EXT_import_context <<EOT
-	typedef XID GLXContextID
-EOT
-
-# add tokens to GLX_OML_swap_method
-    cat >> $1/GLX_OML_swap_method <<EOT
-	GLX_SWAP_EXCHANGE_OML 0x8061
-	GLX_SWAP_COPY_OML 0x8062
-	GLX_SWAP_UNDEFINED_OML 0x8063
-EOT
-
-# add typedefs to GLX_SGIX_fbconfig
-    cat >> $1/GLX_SGIX_fbconfig <<EOT
-	typedef XID GLXFBConfigIDSGIX
-	typedef struct __GLXFBConfigRec *GLXFBConfigSGIX
-EOT
-
-# add typedefs to GLX_SGIX_pbuffer
-    cat >> $1/GLX_SGIX_pbuffer <<EOT
-	typedef XID GLXPbufferSGIX
-	typedef struct { int type; unsigned long serial; Bool send_event; Display *display; GLXDrawable drawable; int event_type; int draw_type; unsigned int mask; int x, y; int width, height; int count; } GLXBufferClobberEventSGIX
-EOT
-
-# add typedef to GL_NV_half_float
-    cat >> $1/GL_NV_half_float <<EOT
-	typedef unsigned short GLhalf
-EOT
-
-# add handle to WGL_ARB_pbuffer
-    cat >> $1/WGL_ARB_pbuffer <<EOT
-	DECLARE_HANDLE(HPBUFFERARB);
-EOT
-
-# add handle to WGL_EXT_pbuffer
-    cat >> $1/WGL_EXT_pbuffer <<EOT
-	DECLARE_HANDLE(HPBUFFEREXT);
-EOT
-
-# get rid of GL_SUN_multi_draw_arrays
-    rm -f $1/GL_SUN_multi_draw_arrays
-
-# change variable names in GL_ARB_vertex_shader
-    perl -e 's/v0/x/g' -pi $1/GL_ARB_vertex_shader
-    perl -e 's/v1/y/g' -pi $1/GL_ARB_vertex_shader
-    perl -e 's/v2/z/g' -pi $1/GL_ARB_vertex_shader
-    perl -e 's/v3/w/g' -pi $1/GL_ARB_vertex_shader
-
-# remove triplicates in GL_ARB_shader_objects, GL_ARB_fragment_shader, 
-# and GL_ARB_vertex_shader
-    grep -v -F -f $1/GL_ARB_shader_objects $1/GL_ARB_fragment_shader > tmp
-    mv tmp $1/GL_ARB_fragment_shader
-    grep -v -F -f $1/GL_ARB_shader_objects $1/GL_ARB_vertex_shader > tmp
-    mv tmp $1/GL_ARB_vertex_shader
-
-# remove duplicates in GL_ARB_vertex_program and GL_ARB_vertex_shader
-    grep -v -F -f $1/GL_ARB_vertex_program $1/GL_ARB_vertex_shader > tmp
-    mv tmp $1/GL_ARB_vertex_shader
-
-# remove triplicates in GL_ARB_fragment_program, GL_ARB_fragment_shader,
-# and GL_ARB_vertex_shader
-    grep -v -F -f $1/GL_ARB_fragment_program $1/GL_ARB_fragment_shader > tmp
-    mv tmp $1/GL_ARB_fragment_shader
-    grep -v -F -f $1/GL_ARB_fragment_program $1/GL_ARB_vertex_shader > tmp
-    mv tmp $1/GL_ARB_vertex_shader
-
-# remove duplicates in GL_EXT_direct_state_access
-    grep -v "glGetBooleanIndexedvEXT" $1/GL_EXT_direct_state_access > tmp
-    mv tmp $1/GL_EXT_direct_state_access
-    grep -v "glGetIntegerIndexedvEXT" $1/GL_EXT_direct_state_access > tmp
-    mv tmp $1/GL_EXT_direct_state_access
-    grep -v "glDisableIndexedEXT" $1/GL_EXT_direct_state_access > tmp
-    mv tmp $1/GL_EXT_direct_state_access
-    grep -v "glEnableIndexedEXT" $1/GL_EXT_direct_state_access > tmp
-    mv tmp $1/GL_EXT_direct_state_access
-    grep -v "glIsEnabledIndexedEXT" $1/GL_EXT_direct_state_access > tmp
-    mv tmp $1/GL_EXT_direct_state_access
-
-# remove duplicates in GL_NV_explicit_multisample
-    grep -v "glGetBooleanIndexedvEXT" $1/GL_NV_explicit_multisample > tmp
-    mv tmp $1/GL_NV_explicit_multisample
-    grep -v "glGetIntegerIndexedvEXT" $1/GL_NV_explicit_multisample > tmp
-    mv tmp $1/GL_NV_explicit_multisample
-
-# fix bugs in GL_ARB_vertex_shader
-    grep -v "GL_FLOAT" $1/GL_ARB_vertex_shader > tmp
-    mv tmp $1/GL_ARB_vertex_shader
-    perl -e 's/handle /GLhandleARB /g' -pi $1/GL_ARB_vertex_shader
-
-# fix bugs in GL_ARB_shader_objects
-    grep -v "GL_FLOAT " $1/GL_ARB_shader_objects > tmp
-    mv tmp $1/GL_ARB_shader_objects
-    grep -v "GL_INT " $1/GL_ARB_shader_objects > tmp
-    mv tmp $1/GL_ARB_shader_objects
-
-# add typedefs to GL_ARB_shader_objects
-    cat >> $1/GL_ARB_shader_objects <<EOT
-	typedef char GLcharARB
-	typedef unsigned int GLhandleARB
-EOT
-
-# add missing functions to GL_ARB_transpose_matrix
-	cat >> $1/GL_ARB_transpose_matrix <<EOT
-	void glLoadTransposeMatrixfARB (GLfloat m[16])
-	void glLoadTransposeMatrixdARB (GLdouble m[16])
-	void glMultTransposeMatrixfARB (GLfloat m[16])
-	void glMultTransposeMatrixdARB (GLdouble m[16])
-EOT
-
-# add missing tokens to GL_EXT_framebuffer_multisample
-	cat >> $1/GL_EXT_framebuffer_multisample <<EOT
-	GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
-	GL_MAX_SAMPLES_EXT 0x8D57
-EOT
-
-# Filter out GL_NV_gpu_program_fp64 enums and functions
-    head -n3 $1/GL_NV_gpu_program_fp64 > tmp
-    mv tmp $1/GL_NV_gpu_program_fp64
-
-# Filter glGetUniformui64vNV from GL_NV_shader_buffer_load
-    grep -v "glGetUniformui64vNV" $1/GL_NV_shader_buffer_load > tmp
-    mv tmp $1/GL_NV_shader_buffer_load
-
-# Filter out GL_ARB_gpu_shader_fp64 enums and functions
-    head -n3 $1/GL_ARB_gpu_shader_fp64 > tmp
-    mv tmp $1/GL_ARB_gpu_shader_fp64
-
-# Filter out profile enumerations from GLX_ARB_create_context
-    grep -v "_PROFILE_" $1/GLX_ARB_create_context > tmp
-    mv tmp $1/GLX_ARB_create_context
-
-# Filter only profile related enumerations for GLX_ARB_create_context_profile
-    head -n3 $1/GLX_ARB_create_context_profile > tmp
-    grep "_PROFILE_" $1/GLX_ARB_create_context_profile >> tmp
-    mv tmp $1/GLX_ARB_create_context_profile
-
-# Filter out profile enumerations from WGL_ARB_create_context
-    grep -v "_PROFILE_" $1/WGL_ARB_create_context > tmp
-    mv tmp $1/WGL_ARB_create_context
-
-# Filter only profile related enumerations for WGL_ARB_create_context_profile
-    head -n3 $1/WGL_ARB_create_context_profile > tmp
-    grep "_PROFILE_" $1/WGL_ARB_create_context_profile >> tmp
-    mv tmp $1/WGL_ARB_create_context_profile
-
-# add missing function to GLX_NV_copy_image
-	cat >> $1/GLX_NV_copy_image <<EOT
-  void glXCopyImageSubDataNV (Display *dpy, GLXContext srcCtx, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLXContext dstCtx, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth)
-EOT
-
-# add missing function to WGL_NV_copy_image
-	cat >> $1/WGL_NV_copy_image <<EOT
-  BOOL wglCopyImageSubDataNV (HGLRC hSrcRC, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, HGLRC hDstRC, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth)
-EOT
-
-# clean up
-    rm -f $1/*.bak
-
-fi
diff --git a/src/other/glew/auto/bin/update_registry.sh b/src/other/glew/auto/bin/update_registry.sh
deleted file mode 100755
index a053d55..0000000
--- a/src/other/glew/auto/bin/update_registry.sh
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/bin/sh
-##
-## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-##
-## This program is distributed under the terms and conditions of the GNU
-## General Public License Version 2 as published by the Free Software
-## Foundation or, at your option, any later version.
-
-set -e
-
-if [ ! -d $1 ] ; then
-    mkdir $1
-fi
-cd $1
-
-wget                                                    \
-    --mirror                                            \
-    --no-parent                                         \
-    --no-host-directories                               \
-    --cut-dirs=2                                        \
-    --accept=txt,html                                   \
-    $2
-
diff --git a/src/other/glew/auto/blacklist b/src/other/glew/auto/blacklist
deleted file mode 100644
index e001284..0000000
--- a/src/other/glew/auto/blacklist
+++ /dev/null
@@ -1,15 +0,0 @@
-EXT/draw_range_elements.txt
-EXT/static_vertex_array.txt
-EXT/vertex_array_set.alt.txt
-EXT/vertex_array_set.txt
-EXT/nurbs_tessellator.txt
-EXT/object_space_tess.txt
-SGI/filter4_parameters.txt
-SGIS/texture_color_mask.txt
-SGIX/dmbuffer.txt
-SGIX/instruments.txt
-SGIX/video_source.txt
-SGIX/hyperpipe_group.txt
-OES/OES_fixed_point.txt
-OES/OES_query_matrix.txt
-NV/video_capture.txt
diff --git a/src/other/glew/auto/core/GLX_ARB_get_proc_address b/src/other/glew/auto/core/GLX_ARB_get_proc_address
deleted file mode 100644
index 5c066d7..0000000
--- a/src/other/glew/auto/core/GLX_ARB_get_proc_address
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_ARB_get_proc_address
-http://oss.sgi.com/projects/ogl-sample/registry/ARB/get_proc_address.txt
-GLX_ARB_get_proc_address
-	extern void ( * glXGetProcAddressARB (const GLubyte *procName)) (void);
diff --git a/src/other/glew/auto/core/GLX_ATI_pixel_format_float b/src/other/glew/auto/core/GLX_ATI_pixel_format_float
deleted file mode 100644
index 854ca71..0000000
--- a/src/other/glew/auto/core/GLX_ATI_pixel_format_float
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_ATI_pixel_format_float
-
-GLX_ATI_pixel_format_float
-	GLX_RGBA_FLOAT_ATI_BIT 0x00000100
diff --git a/src/other/glew/auto/core/GLX_ATI_render_texture b/src/other/glew/auto/core/GLX_ATI_render_texture
deleted file mode 100644
index 254eb9f..0000000
--- a/src/other/glew/auto/core/GLX_ATI_render_texture
+++ /dev/null
@@ -1,41 +0,0 @@
-GLX_ATI_render_texture
-
-GLX_ATI_render_texture
-	GLX_BIND_TO_TEXTURE_RGB_ATI         0x9800
-	GLX_BIND_TO_TEXTURE_RGBA_ATI        0x9801
-	GLX_TEXTURE_FORMAT_ATI              0x9802
-	GLX_TEXTURE_TARGET_ATI              0x9803
-	GLX_MIPMAP_TEXTURE_ATI              0x9804
-	GLX_TEXTURE_RGB_ATI                 0x9805
-	GLX_TEXTURE_RGBA_ATI                0x9806
-	GLX_NO_TEXTURE_ATI                  0x9807
-	GLX_TEXTURE_CUBE_MAP_ATI            0x9808
-	GLX_TEXTURE_1D_ATI                  0x9809
-	GLX_TEXTURE_2D_ATI                  0x980A
-	GLX_MIPMAP_LEVEL_ATI                0x980B
-	GLX_CUBE_MAP_FACE_ATI               0x980C
-	GLX_TEXTURE_CUBE_MAP_POSITIVE_X_ATI 0x980D
-	GLX_TEXTURE_CUBE_MAP_NEGATIVE_X_ATI 0x980E
-	GLX_TEXTURE_CUBE_MAP_POSITIVE_Y_ATI 0x980F
-	GLX_TEXTURE_CUBE_MAP_NEGATIVE_Y_ATI 0x9810
-	GLX_TEXTURE_CUBE_MAP_POSITIVE_Z_ATI 0x9811
-	GLX_TEXTURE_CUBE_MAP_NEGATIVE_Z_ATI 0x9812
-	GLX_FRONT_LEFT_ATI                  0x9813
-	GLX_FRONT_RIGHT_ATI                 0x9814
-	GLX_BACK_LEFT_ATI                   0x9815
-	GLX_BACK_RIGHT_ATI                  0x9816
-	GLX_AUX0_ATI                        0x9817
-	GLX_AUX1_ATI                        0x9818
-	GLX_AUX2_ATI                        0x9819
-	GLX_AUX3_ATI                        0x981A
-	GLX_AUX4_ATI                        0x981B
-	GLX_AUX5_ATI                        0x981C
-	GLX_AUX6_ATI                        0x981D
-	GLX_AUX7_ATI                        0x981E
-	GLX_AUX8_ATI                        0x981F
-	GLX_AUX9_ATI                        0x9820
-	GLX_BIND_TO_TEXTURE_LUMINANCE_ATI   0x9821
-	GLX_BIND_TO_TEXTURE_INTENSITY_ATI   0x9822
-	void glXBindTexImageATI (Display *dpy, GLXPbuffer pbuf, int buffer)
-	void glXReleaseTexImageATI (Display *dpy, GLXPbuffer pbuf, int buffer)
-	void glXDrawableAttribATI (Display *dpy, GLXDrawable draw, const int *attrib_list)
diff --git a/src/other/glew/auto/core/GLX_EXT_fbconfig_packed_float b/src/other/glew/auto/core/GLX_EXT_fbconfig_packed_float
deleted file mode 100644
index 7c7822d..0000000
--- a/src/other/glew/auto/core/GLX_EXT_fbconfig_packed_float
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_EXT_fbconfig_packed_float
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_packed_float.txt
-GLX_EXT_fbconfig_packed_float
-	GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT 0x20B1
-	GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT 0x00000008
diff --git a/src/other/glew/auto/core/GLX_EXT_framebuffer_sRGB b/src/other/glew/auto/core/GLX_EXT_framebuffer_sRGB
deleted file mode 100644
index f51c484..0000000
--- a/src/other/glew/auto/core/GLX_EXT_framebuffer_sRGB
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_EXT_framebuffer_sRGB
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_framebuffer_sRGB.txt
-GLX_EXT_framebuffer_sRGB
-	GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20B2
diff --git a/src/other/glew/auto/core/GLX_NV_float_buffer b/src/other/glew/auto/core/GLX_NV_float_buffer
deleted file mode 100644
index cc9185e..0000000
--- a/src/other/glew/auto/core/GLX_NV_float_buffer
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_NV_float_buffer
-http://cvs1.nvidia.com/inc/GL/glxtokens.h
-GLX_NV_float_buffer
-	GLX_FLOAT_COMPONENTS_NV 0x20B0
diff --git a/src/other/glew/auto/core/GLX_NV_vertex_array_range b/src/other/glew/auto/core/GLX_NV_vertex_array_range
deleted file mode 100644
index 11afe17..0000000
--- a/src/other/glew/auto/core/GLX_NV_vertex_array_range
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_NV_vertex_array_range
-http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_array_range.txt
-GLX_NV_vertex_array_range
-	void * glXAllocateMemoryNV (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority)
-	void glXFreeMemoryNV (void *pointer)
diff --git a/src/other/glew/auto/core/GLX_SGIS_shared_multisample b/src/other/glew/auto/core/GLX_SGIS_shared_multisample
deleted file mode 100644
index 274e90f..0000000
--- a/src/other/glew/auto/core/GLX_SGIS_shared_multisample
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_SGIS_shared_multisample
-
-GLX_SGIS_shared_multisample
-	GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026
-	GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027
diff --git a/src/other/glew/auto/core/GLX_SGIX_hyperpipe b/src/other/glew/auto/core/GLX_SGIX_hyperpipe
deleted file mode 100644
index 79ec302..0000000
--- a/src/other/glew/auto/core/GLX_SGIX_hyperpipe
+++ /dev/null
@@ -1,25 +0,0 @@
-GLX_SGIX_hyperpipe
-http://oss.sgi.com/projects/ogl-sample/registry/SGIX/hyperpipe_group.txt
-GLX_SGIX_hyperpipe
-	GLX_HYPERPIPE_ID_SGIX 0x8030
-	GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80
-	GLX_HYPERPIPE_DISPLAY_PIPE_SGIX 0x00000001
-	GLX_HYPERPIPE_RENDER_PIPE_SGIX 0x00000002
-	GLX_PIPE_RECT_SGIX 0x00000001
-	GLX_PIPE_RECT_LIMITS_SGIX 0x00000002
-	GLX_HYPERPIPE_STEREO_SGIX 0x00000003
-	GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX 0x00000004
-	GLX_BAD_HYPERPIPE_CONFIG_SGIX 91
-	GLX_BAD_HYPERPIPE_SGIX 92
-	typedef struct {  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];   int  networkId; } GLXHyperpipeNetworkSGIX;
-	typedef struct {  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];   int channel;   unsigned int participationType;   int timeSlice; } GLXHyperpipeConfigSGIX;
-	typedef struct {  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];   int srcXOrigin;   int srcYOrigin;   int srcWidth;   int srcHeight;   int destXOrigin;   int destYOrigin;   int destWidth;   int destHeight; } GLXPipeRect;
-	typedef struct {  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];   int XOrigin;   int YOrigin;   int maxHeight;   int maxWidth; } GLXPipeRectLimits;
-	GLXHyperpipeNetworkSGIX * glXQueryHyperpipeNetworkSGIX (Display *dpy, int *npipes)
-	int glXHyperpipeConfigSGIX (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId)
-	GLXHyperpipeConfigSGIX * glXQueryHyperpipeConfigSGIX (Display *dpy, int hpId, int *npipes)
-	int glXDestroyHyperpipeConfigSGIX (Display *dpy, int hpId)
-	int glXBindHyperpipeSGIX (Display *dpy, int hpId)
-	int glXQueryHyperpipeBestAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList)
-	int glXHyperpipeAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *attribList)
-	int glXQueryHyperpipeAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList)
diff --git a/src/other/glew/auto/core/GLX_SGIX_swap_barrier b/src/other/glew/auto/core/GLX_SGIX_swap_barrier
deleted file mode 100644
index 57dd60d..0000000
--- a/src/other/glew/auto/core/GLX_SGIX_swap_barrier
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_SGIX_swap_barrier
-http://oss.sgi.com/projects/ogl-sample/registry/SGIX/swap_barrier.txt
-GLX_SGIX_swap_barrier
-	void glXBindSwapBarrierSGIX (Display *dpy, GLXDrawable drawable, int barrier)
-	Bool glXQueryMaxSwapBarriersSGIX (Display *dpy, int screen, int *max)
diff --git a/src/other/glew/auto/core/GLX_SGIX_swap_group b/src/other/glew/auto/core/GLX_SGIX_swap_group
deleted file mode 100644
index 3530604..0000000
--- a/src/other/glew/auto/core/GLX_SGIX_swap_group
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_SGIX_swap_group
-http://oss.sgi.com/projects/ogl-sample/registry/SGIX/swap_group.txt
-GLX_SGIX_swap_group
-	void glXJoinSwapGroupSGIX (Display *dpy, GLXDrawable drawable, GLXDrawable member)
diff --git a/src/other/glew/auto/core/GLX_SUN_video_resize b/src/other/glew/auto/core/GLX_SUN_video_resize
deleted file mode 100644
index 0a0cefe..0000000
--- a/src/other/glew/auto/core/GLX_SUN_video_resize
+++ /dev/null
@@ -1,7 +0,0 @@
-GLX_SUN_video_resize
-http://wwws.sun.com/software/graphics/opengl/extensions/glx_sun_video_resize.txt
-GLX_SUN_video_resize
-	GL_VIDEO_RESIZE_COMPENSATION_SUN 0x85CD
-	GLX_VIDEO_RESIZE_SUN 0x8171
-	int glXVideoResizeSUN (Display* display, GLXDrawable window, float factor)
-	int glXGetVideoResizeSUN (Display* display, GLXDrawable window, float* factor)
diff --git a/src/other/glew/auto/core/GLX_VERSION_1_2 b/src/other/glew/auto/core/GLX_VERSION_1_2
deleted file mode 100644
index 39d7a09..0000000
--- a/src/other/glew/auto/core/GLX_VERSION_1_2
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_VERSION_1_2
-http://www.opengl.org/documentation/specs/glx/glx1.2.ps
-GLX_VERSION_1_2
-	Display* glXGetCurrentDisplay (void)
diff --git a/src/other/glew/auto/core/GLX_VERSION_1_3 b/src/other/glew/auto/core/GLX_VERSION_1_3
deleted file mode 100644
index 46eedb9..0000000
--- a/src/other/glew/auto/core/GLX_VERSION_1_3
+++ /dev/null
@@ -1,82 +0,0 @@
-GLX_VERSION_1_3
-http://www.opengl.org/documentation/specs/glx/glx1.3.pdf
-GLX_VERSION_1_3
-	GLX_WINDOW_BIT 0x00000001
-	GLX_PIXMAP_BIT 0x00000002
-	GLX_PBUFFER_BIT 0x00000004
-	GLX_RGBA_BIT 0x00000001
-	GLX_COLOR_INDEX_BIT 0x00000002
-	GLX_PBUFFER_CLOBBER_MASK 0x08000000
-	GLX_FRONT_LEFT_BUFFER_BIT 0x00000001
-	GLX_FRONT_RIGHT_BUFFER_BIT 0x00000002
-	GLX_BACK_LEFT_BUFFER_BIT 0x00000004
-	GLX_BACK_RIGHT_BUFFER_BIT 0x00000008
-	GLX_AUX_BUFFERS_BIT 0x00000010
-	GLX_DEPTH_BUFFER_BIT 0x00000020
-	GLX_STENCIL_BUFFER_BIT 0x00000040
-	GLX_ACCUM_BUFFER_BIT 0x00000080
-	GLX_CONFIG_CAVEAT 0x20
-	GLX_X_VISUAL_TYPE 0x22
-	GLX_TRANSPARENT_TYPE 0x23
-	GLX_TRANSPARENT_INDEX_VALUE 0x24
-	GLX_TRANSPARENT_RED_VALUE 0x25
-	GLX_TRANSPARENT_GREEN_VALUE 0x26
-	GLX_TRANSPARENT_BLUE_VALUE 0x27
-	GLX_TRANSPARENT_ALPHA_VALUE 0x28
-	GLX_DONT_CARE 0xFFFFFFFF
-	GLX_NONE 0x8000
-	GLX_SLOW_CONFIG 0x8001
-	GLX_TRUE_COLOR 0x8002
-	GLX_DIRECT_COLOR 0x8003
-	GLX_PSEUDO_COLOR 0x8004
-	GLX_STATIC_COLOR 0x8005
-	GLX_GRAY_SCALE 0x8006
-	GLX_STATIC_GRAY 0x8007
-	GLX_TRANSPARENT_RGB 0x8008
-	GLX_TRANSPARENT_INDEX 0x8009
-	GLX_VISUAL_ID 0x800B
-	GLX_SCREEN 0x800C
-	GLX_NON_CONFORMANT_CONFIG 0x800D
-	GLX_DRAWABLE_TYPE 0x8010
-	GLX_RENDER_TYPE 0x8011
-	GLX_X_RENDERABLE 0x8012
-	GLX_FBCONFIG_ID 0x8013
-	GLX_RGBA_TYPE 0x8014
-	GLX_COLOR_INDEX_TYPE 0x8015
-	GLX_MAX_PBUFFER_WIDTH 0x8016
-	GLX_MAX_PBUFFER_HEIGHT 0x8017
-	GLX_MAX_PBUFFER_PIXELS 0x8018
-	GLX_PRESERVED_CONTENTS 0x801B
-	GLX_LARGEST_PBUFFER 0x801C
-	GLX_WIDTH 0x801D
-	GLX_HEIGHT 0x801E
-	GLX_EVENT_MASK 0x801F
-	GLX_DAMAGED 0x8020
-	GLX_SAVED 0x8021
-	GLX_WINDOW 0x8022
-	GLX_PBUFFER 0x8023
-	GLX_PBUFFER_HEIGHT 0x8040
-	GLX_PBUFFER_WIDTH 0x8041
-	GLXFBConfig* glXChooseFBConfig (Display *dpy, int screen, const int *attrib_list, int *nelements)
-	GLXFBConfig* glXGetFBConfigs (Display *dpy, int screen, int *nelements)
-	XVisualInfo* glXGetVisualFromFBConfig (Display *dpy, GLXFBConfig config)
-	int glXGetFBConfigAttrib (Display *dpy, GLXFBConfig config, int attribute, int *value)
-	GLXWindow glXCreateWindow (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list)
-	void glXDestroyWindow (Display *dpy, GLXWindow win)
-	GLXPixmap glXCreatePixmap (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list)
-	void glXDestroyPixmap (Display *dpy, GLXPixmap pixmap)
-	GLXPbuffer glXCreatePbuffer (Display *dpy, GLXFBConfig config, const int *attrib_list)
-	void glXDestroyPbuffer (Display *dpy, GLXPbuffer pbuf)
-	void glXQueryDrawable (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value)
-	GLXContext glXCreateNewContext (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct)
-	Bool glXMakeContextCurrent (Display *display, GLXDrawable draw, GLXDrawable read, GLXContext ctx)
-	GLXDrawable glXGetCurrentReadDrawable (void)
-	int glXQueryContext (Display *dpy, GLXContext ctx, int attribute, int *value)
-	void glXSelectEvent (Display *dpy, GLXDrawable draw, unsigned long event_mask)
-	void glXGetSelectedEvent (Display *dpy, GLXDrawable draw, unsigned long *event_mask)
-	typedef XID GLXWindow
-	typedef XID GLXPbuffer
-	typedef XID GLXFBConfigID
-	typedef struct __GLXFBConfigRec *GLXFBConfig
-	typedef struct {  int event_type;   int draw_type;   unsigned long serial;   Bool send_event;   Display *display;   GLXDrawable drawable;   unsigned int buffer_mask;   unsigned int aux_buffer;   int x, y;   int width, height;   int count; } GLXPbufferClobberEvent;
-	typedef union __GLXEvent {  GLXPbufferClobberEvent glxpbufferclobber;   long pad[24]; } GLXEvent;
diff --git a/src/other/glew/auto/core/GLX_VERSION_1_4 b/src/other/glew/auto/core/GLX_VERSION_1_4
deleted file mode 100644
index 1382621..0000000
--- a/src/other/glew/auto/core/GLX_VERSION_1_4
+++ /dev/null
@@ -1,6 +0,0 @@
-GLX_VERSION_1_4
-http://www.opengl.org/documentation/specs/glx/glx1.4.pdf
-GLX_VERSION_1_4
-	GLX_SAMPLE_BUFFERS 100000
-	GLX_SAMPLES 100001
-	extern void ( * glXGetProcAddress (const GLubyte *procName)) (void);
diff --git a/src/other/glew/auto/core/GL_APPLE_float_pixels b/src/other/glew/auto/core/GL_APPLE_float_pixels
deleted file mode 100644
index 8a60870..0000000
--- a/src/other/glew/auto/core/GL_APPLE_float_pixels
+++ /dev/null
@@ -1,17 +0,0 @@
-GL_APPLE_float_pixels
-http://developer.apple.com/opengl/extensions/apple_float_pixels.html
-GL_APPLE_float_pixels
-	GL_HALF_APPLE 0x140B
-	GL_COLOR_FLOAT_APPLE 0x8A0F
-	GL_RGBA_FLOAT32_APPLE 0x8814
-	GL_RGB_FLOAT32_APPLE 0x8815
-	GL_ALPHA_FLOAT32_APPLE 0x8816
-	GL_INTENSITY_FLOAT32_APPLE 0x8817
-	GL_LUMINANCE_FLOAT32_APPLE 0x8818
-	GL_LUMINANCE_ALPHA_FLOAT32_APPLE 0x8819
-	GL_RGBA_FLOAT16_APPLE 0x881A
-	GL_RGB_FLOAT16_APPLE 0x881B
-	GL_ALPHA_FLOAT16_APPLE 0x881C
-	GL_INTENSITY_FLOAT16_APPLE 0x881D
-	GL_LUMINANCE_FLOAT16_APPLE 0x881E
-	GL_LUMINANCE_ALPHA_FLOAT16_APPLE 0x881F
diff --git a/src/other/glew/auto/core/GL_APPLE_pixel_buffer b/src/other/glew/auto/core/GL_APPLE_pixel_buffer
deleted file mode 100644
index 7449f29..0000000
--- a/src/other/glew/auto/core/GL_APPLE_pixel_buffer
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_APPLE_pixel_buffer
-
-GL_APPLE_pixel_buffer
-	GL_MIN_PBUFFER_VIEWPORT_DIMS_APPLE 0x8A10
diff --git a/src/other/glew/auto/core/GL_APPLE_texture_range b/src/other/glew/auto/core/GL_APPLE_texture_range
deleted file mode 100644
index 8c5165d..0000000
--- a/src/other/glew/auto/core/GL_APPLE_texture_range
+++ /dev/null
@@ -1,12 +0,0 @@
-GL_APPLE_texture_range
-http://developer.apple.com/opengl/extensions/apple_texture_range.html
-GL_APPLE_texture_range
-	GL_TEXTURE_STORAGE_HINT_APPLE 0x85BC
-	GL_STORAGE_PRIVATE_APPLE 0x85BD
-	GL_STORAGE_CACHED_APPLE 0x85BE
-	GL_STORAGE_SHARED_APPLE 0x85BF
-	GL_TEXTURE_RANGE_LENGTH_APPLE 0x85B7
-	GL_TEXTURE_RANGE_POINTER_APPLE 0x85B8
-	void glTextureRangeAPPLE (GLenum target, GLsizei length, GLvoid *pointer)
-	void glGetTexParameterPointervAPPLE (GLenum target, GLenum pname, GLvoid **params)
-
diff --git a/src/other/glew/auto/core/GL_ARB_imaging b/src/other/glew/auto/core/GL_ARB_imaging
deleted file mode 100644
index 0efd0c1..0000000
--- a/src/other/glew/auto/core/GL_ARB_imaging
+++ /dev/null
@@ -1,112 +0,0 @@
-GL_ARB_imaging
-
-GL_ARB_imaging
-	GL_CONSTANT_COLOR 0x8001
-	GL_ONE_MINUS_CONSTANT_COLOR 0x8002
-	GL_CONSTANT_ALPHA 0x8003
-	GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
-	GL_BLEND_COLOR 0x8005
-	GL_FUNC_ADD 0x8006
-	GL_MIN 0x8007
-	GL_MAX 0x8008
-	GL_BLEND_EQUATION 0x8009
-	GL_FUNC_SUBTRACT 0x800A
-	GL_FUNC_REVERSE_SUBTRACT 0x800B
-	GL_CONVOLUTION_1D 0x8010
-	GL_CONVOLUTION_2D 0x8011
-	GL_SEPARABLE_2D 0x8012
-	GL_CONVOLUTION_BORDER_MODE 0x8013
-	GL_CONVOLUTION_FILTER_SCALE 0x8014
-	GL_CONVOLUTION_FILTER_BIAS 0x8015
-	GL_REDUCE 0x8016
-	GL_CONVOLUTION_FORMAT 0x8017
-	GL_CONVOLUTION_WIDTH 0x8018
-	GL_CONVOLUTION_HEIGHT 0x8019
-	GL_MAX_CONVOLUTION_WIDTH 0x801A
-	GL_MAX_CONVOLUTION_HEIGHT 0x801B
-	GL_POST_CONVOLUTION_RED_SCALE 0x801C
-	GL_POST_CONVOLUTION_GREEN_SCALE 0x801D
-	GL_POST_CONVOLUTION_BLUE_SCALE 0x801E
-	GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F
-	GL_POST_CONVOLUTION_RED_BIAS 0x8020
-	GL_POST_CONVOLUTION_GREEN_BIAS 0x8021
-	GL_POST_CONVOLUTION_BLUE_BIAS 0x8022
-	GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023
-	GL_HISTOGRAM 0x8024
-	GL_PROXY_HISTOGRAM 0x8025
-	GL_HISTOGRAM_WIDTH 0x8026
-	GL_HISTOGRAM_FORMAT 0x8027
-	GL_HISTOGRAM_RED_SIZE 0x8028
-	GL_HISTOGRAM_GREEN_SIZE 0x8029
-	GL_HISTOGRAM_BLUE_SIZE 0x802A
-	GL_HISTOGRAM_ALPHA_SIZE 0x802B
-	GL_HISTOGRAM_LUMINANCE_SIZE 0x802C
-	GL_HISTOGRAM_SINK 0x802D
-	GL_MINMAX 0x802E
-	GL_MINMAX_FORMAT 0x802F
-	GL_MINMAX_SINK 0x8030
-	GL_TABLE_TOO_LARGE 0x8031
-	GL_COLOR_MATRIX 0x80B1
-	GL_COLOR_MATRIX_STACK_DEPTH 0x80B2
-	GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3
-	GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4
-	GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5
-	GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6
-	GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7
-	GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8
-	GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9
-	GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA
-	GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB
-	GL_COLOR_TABLE 0x80D0
-	GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1
-	GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2
-	GL_PROXY_COLOR_TABLE 0x80D3
-	GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4
-	GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5
-	GL_COLOR_TABLE_SCALE 0x80D6
-	GL_COLOR_TABLE_BIAS 0x80D7
-	GL_COLOR_TABLE_FORMAT 0x80D8
-	GL_COLOR_TABLE_WIDTH 0x80D9
-	GL_COLOR_TABLE_RED_SIZE 0x80DA
-	GL_COLOR_TABLE_GREEN_SIZE 0x80DB
-	GL_COLOR_TABLE_BLUE_SIZE 0x80DC
-	GL_COLOR_TABLE_ALPHA_SIZE 0x80DD
-	GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE
-	GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF
-	GL_IGNORE_BORDER 0x8150
-	GL_CONSTANT_BORDER 0x8151
-	GL_WRAP_BORDER 0x8152
-	GL_REPLICATE_BORDER 0x8153
-	GL_CONVOLUTION_BORDER_COLOR 0x8154
-	void glColorTable (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
-	void glColorSubTable (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
-	void glColorTableParameteriv (GLenum target, GLenum pname, const GLint *params)
-	void glColorTableParameterfv (GLenum target, GLenum pname, const GLfloat *params)
-	void glCopyColorSubTable (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
-	void glCopyColorTable (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
-	void glGetColorTable (GLenum target, GLenum format, GLenum type, GLvoid *table)
-	void glGetColorTableParameterfv (GLenum target, GLenum pname, GLfloat *params)
-	void glGetColorTableParameteriv (GLenum target, GLenum pname, GLint *params)
-	void glHistogram (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
-	void glResetHistogram (GLenum target)
-	void glGetHistogram (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
-	void glGetHistogramParameterfv (GLenum target, GLenum pname, GLfloat *params)
-	void glGetHistogramParameteriv (GLenum target, GLenum pname, GLint *params)
-	void glMinmax (GLenum target, GLenum internalformat, GLboolean sink)
-	void glResetMinmax (GLenum target)
-	void glGetMinmaxParameterfv (GLenum target, GLenum pname, GLfloat *params)
-	void glGetMinmaxParameteriv (GLenum target, GLenum pname, GLint *params)
-	void glConvolutionFilter1D (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
-	void glConvolutionFilter2D (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
-	void glConvolutionParameterf (GLenum target, GLenum pname, GLfloat params)
-	void glConvolutionParameterfv (GLenum target, GLenum pname, const GLfloat *params)
-	void glConvolutionParameteri (GLenum target, GLenum pname, GLint params)
-	void glConvolutionParameteriv (GLenum target, GLenum pname, const GLint *params)
-	void glCopyConvolutionFilter1D (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
-	void glCopyConvolutionFilter2D (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
-	void glGetConvolutionFilter (GLenum target, GLenum format, GLenum type, GLvoid *image)
-	void glGetConvolutionParameterfv (GLenum target, GLenum pname, GLfloat *params)
-	void glGetConvolutionParameteriv (GLenum target, GLenum pname, GLint *params)
-	void glSeparableFilter2D (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
-	void glGetSeparableFilter (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
-	void glGetMinmax (GLenum target, GLboolean reset, GLenum format, GLenum types, GLvoid *values)
diff --git a/src/other/glew/auto/core/GL_ARB_matrix_palette b/src/other/glew/auto/core/GL_ARB_matrix_palette
deleted file mode 100644
index 4b67c15..0000000
--- a/src/other/glew/auto/core/GL_ARB_matrix_palette
+++ /dev/null
@@ -1,18 +0,0 @@
-GL_ARB_matrix_palette
-http://oss.sgi.com/projects/ogl-sample/registry/ARB/matrix_palette.txt
-GL_ARB_matrix_palette
-	GL_MATRIX_PALETTE_ARB 0x8840
-	GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB 0x8841
-	GL_MAX_PALETTE_MATRICES_ARB 0x8842
-	GL_CURRENT_PALETTE_MATRIX_ARB 0x8843
-	GL_MATRIX_INDEX_ARRAY_ARB 0x8844
-	GL_CURRENT_MATRIX_INDEX_ARB 0x8845
-	GL_MATRIX_INDEX_ARRAY_SIZE_ARB 0x8846
-	GL_MATRIX_INDEX_ARRAY_TYPE_ARB 0x8847
-	GL_MATRIX_INDEX_ARRAY_STRIDE_ARB 0x8848
-	GL_MATRIX_INDEX_ARRAY_POINTER_ARB 0x8849
-	void glCurrentPaletteMatrixARB (GLint index)
-	void glMatrixIndexPointerARB (GLint size, GLenum type, GLsizei stride, GLvoid *pointer)
-	void glMatrixIndexubvARB (GLint size, GLubyte *indices)
-	void glMatrixIndexusvARB (GLint size, GLushort *indices)
-	void glMatrixIndexuivARB (GLint size, GLuint *indices)
diff --git a/src/other/glew/auto/core/GL_ARB_multitexture b/src/other/glew/auto/core/GL_ARB_multitexture
deleted file mode 100644
index ee80791..0000000
--- a/src/other/glew/auto/core/GL_ARB_multitexture
+++ /dev/null
@@ -1,72 +0,0 @@
-GL_ARB_multitexture
-http://oss.sgi.com/projects/ogl-sample/registry/ARB/multitexture.txt
-GL_ARB_multitexture
-	GL_TEXTURE0_ARB 0x84C0
-	GL_TEXTURE1_ARB 0x84C1
-	GL_TEXTURE2_ARB 0x84C2
-	GL_TEXTURE3_ARB 0x84C3
-	GL_TEXTURE4_ARB 0x84C4
-	GL_TEXTURE5_ARB 0x84C5
-	GL_TEXTURE6_ARB 0x84C6
-	GL_TEXTURE7_ARB 0x84C7
-	GL_TEXTURE8_ARB 0x84C8
-	GL_TEXTURE9_ARB 0x84C9
-	GL_TEXTURE10_ARB 0x84CA
-	GL_TEXTURE11_ARB 0x84CB
-	GL_TEXTURE12_ARB 0x84CC
-	GL_TEXTURE13_ARB 0x84CD
-	GL_TEXTURE14_ARB 0x84CE
-	GL_TEXTURE15_ARB 0x84CF
-	GL_TEXTURE16_ARB 0x84D0
-	GL_TEXTURE17_ARB 0x84D1
-	GL_TEXTURE18_ARB 0x84D2
-	GL_TEXTURE19_ARB 0x84D3
-	GL_TEXTURE20_ARB 0x84D4
-	GL_TEXTURE21_ARB 0x84D5
-	GL_TEXTURE22_ARB 0x84D6
-	GL_TEXTURE23_ARB 0x84D7
-	GL_TEXTURE24_ARB 0x84D8
-	GL_TEXTURE25_ARB 0x84D9
-	GL_TEXTURE26_ARB 0x84DA
-	GL_TEXTURE27_ARB 0x84DB
-	GL_TEXTURE28_ARB 0x84DC
-	GL_TEXTURE29_ARB 0x84DD
-	GL_TEXTURE30_ARB 0x84DE
-	GL_TEXTURE31_ARB 0x84DF
-	GL_ACTIVE_TEXTURE_ARB 0x84E0
-	GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1
-	GL_MAX_TEXTURE_UNITS_ARB 0x84E2
-	void glActiveTextureARB (GLenum texture)
-	void glClientActiveTextureARB (GLenum texture)
-	void glMultiTexCoord1dARB (GLenum target, GLdouble s)
-	void glMultiTexCoord1dvARB (GLenum target, const GLdouble *v)
-	void glMultiTexCoord1fARB (GLenum target, GLfloat s)
-	void glMultiTexCoord1fvARB (GLenum target, const GLfloat *v)
-	void glMultiTexCoord1iARB (GLenum target, GLint s)
-	void glMultiTexCoord1ivARB (GLenum target, const GLint *v)
-	void glMultiTexCoord1sARB (GLenum target, GLshort s)
-	void glMultiTexCoord1svARB (GLenum target, const GLshort *v)
-	void glMultiTexCoord2dARB (GLenum target, GLdouble s, GLdouble t)
-	void glMultiTexCoord2dvARB (GLenum target, const GLdouble *v)
-	void glMultiTexCoord2fARB (GLenum target, GLfloat s, GLfloat t)
-	void glMultiTexCoord2fvARB (GLenum target, const GLfloat *v)
-	void glMultiTexCoord2iARB (GLenum target, GLint s, GLint t)
-	void glMultiTexCoord2ivARB (GLenum target, const GLint *v)
-	void glMultiTexCoord2sARB (GLenum target, GLshort s, GLshort t)
-	void glMultiTexCoord2svARB (GLenum target, const GLshort *v)
-	void glMultiTexCoord3dARB (GLenum target, GLdouble s, GLdouble t, GLdouble r)
-	void glMultiTexCoord3dvARB (GLenum target, const GLdouble *v)
-	void glMultiTexCoord3fARB (GLenum target, GLfloat s, GLfloat t, GLfloat r)
-	void glMultiTexCoord3fvARB (GLenum target, const GLfloat *v)
-	void glMultiTexCoord3iARB (GLenum target, GLint s, GLint t, GLint r)
-	void glMultiTexCoord3ivARB (GLenum target, const GLint *v)
-	void glMultiTexCoord3sARB (GLenum target, GLshort s, GLshort t, GLshort r)
-	void glMultiTexCoord3svARB (GLenum target, const GLshort *v)
-	void glMultiTexCoord4dARB (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
-	void glMultiTexCoord4dvARB (GLenum target, const GLdouble *v)
-	void glMultiTexCoord4fARB (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
-	void glMultiTexCoord4fvARB (GLenum target, const GLfloat *v)
-	void glMultiTexCoord4iARB (GLenum target, GLint s, GLint t, GLint r, GLint q)
-	void glMultiTexCoord4ivARB (GLenum target, const GLint *v)
-	void glMultiTexCoord4sARB (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
-	void glMultiTexCoord4svARB (GLenum target, const GLshort *v)
diff --git a/src/other/glew/auto/core/GL_ARB_vertex_blend b/src/other/glew/auto/core/GL_ARB_vertex_blend
deleted file mode 100644
index 8da2c78..0000000
--- a/src/other/glew/auto/core/GL_ARB_vertex_blend
+++ /dev/null
@@ -1,55 +0,0 @@
-GL_ARB_vertex_blend
-http://oss.sgi.com/projects/ogl-sample/registry/ARB/vertex_blend.txt
-GL_ARB_vertex_blend
-	GL_MAX_VERTEX_UNITS_ARB 0x86A4
-	GL_ACTIVE_VERTEX_UNITS_ARB 0x86A5
-	GL_WEIGHT_SUM_UNITY_ARB 0x86A6
-	GL_VERTEX_BLEND_ARB 0x86A7
-	GL_CURRENT_WEIGHT_ARB 0x86A8
-	GL_WEIGHT_ARRAY_TYPE_ARB 0x86A9
-	GL_WEIGHT_ARRAY_STRIDE_ARB 0x86AA
-	GL_WEIGHT_ARRAY_SIZE_ARB 0x86AB
-	GL_WEIGHT_ARRAY_POINTER_ARB 0x86AC
-	GL_WEIGHT_ARRAY_ARB 0x86AD
-	GL_MODELVIEW0_ARB 0x1700
-	GL_MODELVIEW1_ARB 0x850A
-	GL_MODELVIEW2_ARB 0x8722
-	GL_MODELVIEW3_ARB 0x8723
-	GL_MODELVIEW4_ARB 0x8724
-	GL_MODELVIEW5_ARB 0x8725
-	GL_MODELVIEW6_ARB 0x8726
-	GL_MODELVIEW7_ARB 0x8727
-	GL_MODELVIEW8_ARB 0x8728
-	GL_MODELVIEW9_ARB 0x8729
-	GL_MODELVIEW10_ARB 0x872A
-	GL_MODELVIEW11_ARB 0x872B
-	GL_MODELVIEW12_ARB 0x872C
-	GL_MODELVIEW13_ARB 0x872D
-	GL_MODELVIEW14_ARB 0x872E
-	GL_MODELVIEW15_ARB 0x872F
-	GL_MODELVIEW16_ARB 0x8730
-	GL_MODELVIEW17_ARB 0x8731
-	GL_MODELVIEW18_ARB 0x8732
-	GL_MODELVIEW19_ARB 0x8733
-	GL_MODELVIEW20_ARB 0x8734
-	GL_MODELVIEW21_ARB 0x8735
-	GL_MODELVIEW22_ARB 0x8736
-	GL_MODELVIEW23_ARB 0x8737
-	GL_MODELVIEW24_ARB 0x8738
-	GL_MODELVIEW25_ARB 0x8739
-	GL_MODELVIEW26_ARB 0x873A
-	GL_MODELVIEW27_ARB 0x873B
-	GL_MODELVIEW28_ARB 0x873C
-	GL_MODELVIEW29_ARB 0x873D
-	GL_MODELVIEW30_ARB 0x873E
-	GL_MODELVIEW31_ARB 0x873F
-	void glWeightbvARB (GLint size, GLbyte *weights)
-	void glWeightsvARB (GLint size, GLshort *weights)
-	void glWeightivARB (GLint size, GLint *weights)
-	void glWeightfvARB (GLint size, GLfloat *weights)
-	void glWeightdvARB (GLint size, GLdouble *weights)
-	void glWeightubvARB (GLint size, GLubyte *weights)
-	void glWeightusvARB (GLint size, GLushort *weights)
-	void glWeightuivARB (GLint size, GLuint *weights)
-	void glWeightPointerARB (GLint size, GLenum type, GLsizei stride, GLvoid *pointer)
-	void glVertexBlendARB (GLint count)
diff --git a/src/other/glew/auto/core/GL_ATIX_point_sprites b/src/other/glew/auto/core/GL_ATIX_point_sprites
deleted file mode 100644
index 0f4f574..0000000
--- a/src/other/glew/auto/core/GL_ATIX_point_sprites
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_ATIX_point_sprites
-http://www.ati.com/developer/atiopengl.pdf
-GL_ATIX_point_sprites
-	GL_TEXTURE_POINT_MODE_ATIX 0x60B0
-	GL_TEXTURE_POINT_ONE_COORD_ATIX 0x60B1
-	GL_TEXTURE_POINT_SPRITE_ATIX 0x60B2
-	GL_POINT_SPRITE_CULL_MODE_ATIX 0x60B3
-	GL_POINT_SPRITE_CULL_CENTER_ATIX 0x60B4
-	GL_POINT_SPRITE_CULL_CLIP_ATIX 0x60B5
diff --git a/src/other/glew/auto/core/GL_ATIX_texture_env_combine3 b/src/other/glew/auto/core/GL_ATIX_texture_env_combine3
deleted file mode 100644
index 537426b..0000000
--- a/src/other/glew/auto/core/GL_ATIX_texture_env_combine3
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ATIX_texture_env_combine3
-http://www.ati.com/developer/atiopengl.pdf
-GL_ATIX_texture_env_combine3
-	GL_MODULATE_ADD_ATIX 0x8744
-	GL_MODULATE_SIGNED_ADD_ATIX 0x8745
-	GL_MODULATE_SUBTRACT_ATIX 0x8746
diff --git a/src/other/glew/auto/core/GL_ATIX_texture_env_route b/src/other/glew/auto/core/GL_ATIX_texture_env_route
deleted file mode 100644
index 939ae09..0000000
--- a/src/other/glew/auto/core/GL_ATIX_texture_env_route
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ATIX_texture_env_route
-http://www.ati.com/developer/sdk/RadeonSDK/Html/Info/ATIX_texture_env_route.txt
-GL_ATIX_texture_env_route
-	GL_SECONDARY_COLOR_ATIX 0x8747
-	GL_TEXTURE_OUTPUT_RGB_ATIX 0x8748
-	GL_TEXTURE_OUTPUT_ALPHA_ATIX 0x8749
diff --git a/src/other/glew/auto/core/GL_ATIX_vertex_shader_output_point_size b/src/other/glew/auto/core/GL_ATIX_vertex_shader_output_point_size
deleted file mode 100644
index 277a313..0000000
--- a/src/other/glew/auto/core/GL_ATIX_vertex_shader_output_point_size
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ATIX_vertex_shader_output_point_size
-http://www.ati.com/developer/atiopengl.pdf
-GL_ATIX_vertex_shader_output_point_size
-	GL_OUTPUT_POINT_SIZE_ATIX 0x610E
diff --git a/src/other/glew/auto/core/GL_ATI_envmap_bumpmap b/src/other/glew/auto/core/GL_ATI_envmap_bumpmap
deleted file mode 100644
index fbd9925..0000000
--- a/src/other/glew/auto/core/GL_ATI_envmap_bumpmap
+++ /dev/null
@@ -1,15 +0,0 @@
-GL_ATI_envmap_bumpmap
-http://oss.sgi.com/projects/ogl-sample/registry/ATI/envmap_bumpmap.txt
-GL_ATI_envmap_bumpmap
-	GL_BUMP_ROT_MATRIX_ATI 0x8775
-	GL_BUMP_ROT_MATRIX_SIZE_ATI 0x8776
-	GL_BUMP_NUM_TEX_UNITS_ATI 0x8777
-	GL_BUMP_TEX_UNITS_ATI 0x8778
-	GL_DUDV_ATI 0x8779
-	GL_DU8DV8_ATI 0x877A
-	GL_BUMP_ENVMAP_ATI 0x877B
-	GL_BUMP_TARGET_ATI 0x877C
-	void glTexBumpParameterivATI (GLenum pname, GLint *param)
-	void glTexBumpParameterfvATI (GLenum pname, GLfloat *param)
-	void glGetTexBumpParameterivATI (GLenum pname, GLint *param)
-	void glGetTexBumpParameterfvATI (GLenum pname, GLfloat *param)
diff --git a/src/other/glew/auto/core/GL_ATI_map_object_buffer b/src/other/glew/auto/core/GL_ATI_map_object_buffer
deleted file mode 100644
index f360fa2..0000000
--- a/src/other/glew/auto/core/GL_ATI_map_object_buffer
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_ATI_map_object_buffer
-http://www.ati.com/developer/sdk/RADEONSDK/Html/Info/ATI_map_object_buffer.txt
-GL_ATI_map_object_buffer
-	void* glMapObjectBufferATI (GLuint buffer)
-	void glUnmapObjectBufferATI (GLuint buffer)
diff --git a/src/other/glew/auto/core/GL_ATI_pn_triangles b/src/other/glew/auto/core/GL_ATI_pn_triangles
deleted file mode 100644
index 7b353b5..0000000
--- a/src/other/glew/auto/core/GL_ATI_pn_triangles
+++ /dev/null
@@ -1,14 +0,0 @@
-GL_ATI_pn_triangles
-http://www.ati.com/developer/sdk/RADEONSDK/Html/Info/ati_pn_triangles.txt
-GL_ATI_pn_triangles
-	GL_PN_TRIANGLES_ATI 0x87F0
-	GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F1
-	GL_PN_TRIANGLES_POINT_MODE_ATI 0x87F2
-	GL_PN_TRIANGLES_NORMAL_MODE_ATI 0x87F3
-	GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F4
-	GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI 0x87F5
-	GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI 0x87F6
-	GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI 0x87F7
-	GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI 0x87F8
-	void glPNTrianglesiATI (GLenum pname, GLint param)
-	void glPNTrianglesfATI (GLenum pname, GLfloat param)
diff --git a/src/other/glew/auto/core/GL_ATI_separate_stencil b/src/other/glew/auto/core/GL_ATI_separate_stencil
deleted file mode 100644
index c4d82ab..0000000
--- a/src/other/glew/auto/core/GL_ATI_separate_stencil
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_ATI_separate_stencil
-http://www.ati.com/developer/sdk/RadeonSDK/Html/Info/ATI_separate_stencil.txt
-GL_ATI_separate_stencil
-	GL_STENCIL_BACK_FUNC_ATI 0x8800
-	GL_STENCIL_BACK_FAIL_ATI 0x8801
-	GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI 0x8802
-	GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI 0x8803
-	void glStencilOpSeparateATI (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
-	void glStencilFuncSeparateATI (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask)
diff --git a/src/other/glew/auto/core/GL_ATI_shader_texture_lod b/src/other/glew/auto/core/GL_ATI_shader_texture_lod
deleted file mode 100644
index 5fbc624..0000000
--- a/src/other/glew/auto/core/GL_ATI_shader_texture_lod
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ATI_shader_texture_lod
-
-GL_ATI_shader_texture_lod
diff --git a/src/other/glew/auto/core/GL_ATI_texture_compression_3dc b/src/other/glew/auto/core/GL_ATI_texture_compression_3dc
deleted file mode 100644
index 2548b30..0000000
--- a/src/other/glew/auto/core/GL_ATI_texture_compression_3dc
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ATI_texture_compression_3dc
-
-GL_ATI_texture_compression_3dc
-	GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI 0x8837
diff --git a/src/other/glew/auto/core/GL_ATI_vertex_streams b/src/other/glew/auto/core/GL_ATI_vertex_streams
deleted file mode 100644
index 56005f9..0000000
--- a/src/other/glew/auto/core/GL_ATI_vertex_streams
+++ /dev/null
@@ -1,50 +0,0 @@
-GL_ATI_vertex_streams
-http://www.ati.com/developer/sdk/RADEONSDK/Html/Info/ATI_vertex_streams.txt
-GL_ATI_vertex_streams
-	GL_MAX_VERTEX_STREAMS_ATI 0x876B
-	GL_VERTEX_SOURCE_ATI 0x876C
-	GL_VERTEX_STREAM0_ATI 0x876D
-	GL_VERTEX_STREAM1_ATI 0x876E
-	GL_VERTEX_STREAM2_ATI 0x876F
-	GL_VERTEX_STREAM3_ATI 0x8770
-	GL_VERTEX_STREAM4_ATI 0x8771
-	GL_VERTEX_STREAM5_ATI 0x8772
-	GL_VERTEX_STREAM6_ATI 0x8773
-	GL_VERTEX_STREAM7_ATI 0x8774
-	void glClientActiveVertexStreamATI (GLenum stream)
-	void glVertexBlendEnviATI (GLenum pname, GLint param)
-	void glVertexBlendEnvfATI (GLenum pname, GLfloat param)
-	void glVertexStream2sATI (GLenum stream, GLshort x, GLshort y)
-	void glVertexStream2svATI (GLenum stream, const GLshort *v)
-	void glVertexStream2iATI (GLenum stream, GLint x, GLint y)
-	void glVertexStream2ivATI (GLenum stream, const GLint *v)
-	void glVertexStream2fATI (GLenum stream, GLfloat x, GLfloat y)
-	void glVertexStream2fvATI (GLenum stream, const GLfloat *v)
-	void glVertexStream2dATI (GLenum stream, GLdouble x, GLdouble y)
-	void glVertexStream2dvATI (GLenum stream, const GLdouble *v)
-	void glVertexStream3sATI (GLenum stream, GLshort x, GLshort y, GLshort z)
-	void glVertexStream3svATI (GLenum stream, const GLshort *v)
-	void glVertexStream3iATI (GLenum stream, GLint x, GLint y, GLint z)
-	void glVertexStream3ivATI (GLenum stream, const GLint *v)
-	void glVertexStream3fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z)
-	void glVertexStream3fvATI (GLenum stream, const GLfloat *v)
-	void glVertexStream3dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z)
-	void glVertexStream3dvATI (GLenum stream, const GLdouble *v)
-	void glVertexStream4sATI (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w)
-	void glVertexStream4svATI (GLenum stream, const GLshort *v)
-	void glVertexStream4iATI (GLenum stream, GLint x, GLint y, GLint z, GLint w)
-	void glVertexStream4ivATI (GLenum stream, const GLint *v)
-	void glVertexStream4fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glVertexStream4fvATI (GLenum stream, const GLfloat *v)
-	void glVertexStream4dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-	void glVertexStream4dvATI (GLenum stream, const GLdouble *v)
-	void glNormalStream3bATI (GLenum stream, GLbyte x, GLbyte y, GLbyte z)
-	void glNormalStream3bvATI (GLenum stream, const GLbyte *v)
-	void glNormalStream3sATI (GLenum stream, GLshort x, GLshort y, GLshort z)
-	void glNormalStream3svATI (GLenum stream, const GLshort *v)
-	void glNormalStream3iATI (GLenum stream, GLint x, GLint y, GLint z)
-	void glNormalStream3ivATI (GLenum stream, const GLint *v)
-	void glNormalStream3fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z)
-	void glNormalStream3fvATI (GLenum stream, const GLfloat *v)
-	void glNormalStream3dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z)
-	void glNormalStream3dvATI (GLenum stream, const GLdouble *v)
diff --git a/src/other/glew/auto/core/GL_EXT_Cg_shader b/src/other/glew/auto/core/GL_EXT_Cg_shader
deleted file mode 100644
index 34d3152..0000000
--- a/src/other/glew/auto/core/GL_EXT_Cg_shader
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_Cg_shader
-http://download.nvidia.com/developer/GLSL/GLSL%20Release%20Notes%20for%20Release%2060.pdf
-GL_EXT_Cg_shader
-	GL_CG_VERTEX_SHADER_EXT 0x890E
-	GL_CG_FRAGMENT_SHADER_EXT 0x890F
diff --git a/src/other/glew/auto/core/GL_EXT_bindable_uniform b/src/other/glew/auto/core/GL_EXT_bindable_uniform
deleted file mode 100644
index 809123b..0000000
--- a/src/other/glew/auto/core/GL_EXT_bindable_uniform
+++ /dev/null
@@ -1,12 +0,0 @@
-GL_EXT_bindable_uniform
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_bindable_uniform.txt
-GL_EXT_bindable_uniform
-	GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT 0x8DE2
-	GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT 0x8DE3
-	GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT 0x8DE4
-	GL_MAX_BINDABLE_UNIFORM_SIZE_EXT 0x8DED
-	GL_UNIFORM_BUFFER_BINDING_EXT 0x8DEF
-	GL_UNIFORM_BUFFER_EXT 0x8DEE
-	void glUniformBufferEXT (GLuint program, GLint location, GLuint buffer)
-	GLint glGetUniformBufferSizeEXT (GLuint program, GLint location)
-	GLintptr glGetUniformOffsetEXT (GLuint program, GLint location)
diff --git a/src/other/glew/auto/core/GL_EXT_depth_bounds_test b/src/other/glew/auto/core/GL_EXT_depth_bounds_test
deleted file mode 100644
index 62528b7..0000000
--- a/src/other/glew/auto/core/GL_EXT_depth_bounds_test
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_depth_bounds_test
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_depth_bounds_test.txt
-GL_EXT_depth_bounds_test
-	GL_DEPTH_BOUNDS_TEST_EXT 0x8890
-	GL_DEPTH_BOUNDS_EXT 0x8891
-	void glDepthBoundsEXT (GLclampd zmin, GLclampd zmax)
diff --git a/src/other/glew/auto/core/GL_EXT_draw_instanced b/src/other/glew/auto/core/GL_EXT_draw_instanced
deleted file mode 100644
index afafa27..0000000
--- a/src/other/glew/auto/core/GL_EXT_draw_instanced
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_draw_instanced
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_draw_instanced.txt
-GL_EXT_draw_instanced
-	void glDrawArraysInstancedEXT (GLenum mode, GLint start, GLsizei count, GLsizei primcount)
-	void glDrawElementsInstancedEXT (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount)
diff --git a/src/other/glew/auto/core/GL_EXT_draw_range_elements b/src/other/glew/auto/core/GL_EXT_draw_range_elements
deleted file mode 100644
index 2abc870..0000000
--- a/src/other/glew/auto/core/GL_EXT_draw_range_elements
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_draw_range_elements
-http://oss.sgi.com/projects/ogl-sample/registry/EXT/draw_range_elements.txt
-GL_EXT_draw_range_elements
-	GL_MAX_ELEMENTS_VERTICES 0x80E8
-	GL_MAX_ELEMENTS_INDICES 0x80E9
-	void glDrawRangeElementsEXT (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
diff --git a/src/other/glew/auto/core/GL_EXT_fog_coord b/src/other/glew/auto/core/GL_EXT_fog_coord
deleted file mode 100644
index ac7868a..0000000
--- a/src/other/glew/auto/core/GL_EXT_fog_coord
+++ /dev/null
@@ -1,16 +0,0 @@
-GL_EXT_fog_coord
-http://oss.sgi.com/projects/ogl-sample/registry/EXT/fog_coord.txt
-GL_EXT_fog_coord
-	GL_FOG_COORDINATE_SOURCE_EXT 0x8450
-	GL_FOG_COORDINATE_EXT 0x8451
-	GL_FRAGMENT_DEPTH_EXT 0x8452
-	GL_CURRENT_FOG_COORDINATE_EXT 0x8453
-	GL_FOG_COORDINATE_ARRAY_TYPE_EXT 0x8454
-	GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455
-	GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456
-	GL_FOG_COORDINATE_ARRAY_EXT 0x8457
-	void glFogCoordfEXT (GLfloat coord)
-	void glFogCoordfvEXT (const GLfloat *coord)
-	void glFogCoorddEXT (GLdouble coord)
-	void glFogCoorddvEXT (const GLdouble *coord)
-	void glFogCoordPointerEXT (GLenum type, GLsizei stride, const GLvoid *pointer)
diff --git a/src/other/glew/auto/core/GL_EXT_framebuffer_sRGB b/src/other/glew/auto/core/GL_EXT_framebuffer_sRGB
deleted file mode 100644
index 4ca897b..0000000
--- a/src/other/glew/auto/core/GL_EXT_framebuffer_sRGB
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_framebuffer_sRGB
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_framebuffer_sRGB.txt
-GL_EXT_framebuffer_sRGB
-	GL_FRAMEBUFFER_SRGB_EXT 0x8DB9
-	GL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x8DBA
diff --git a/src/other/glew/auto/core/GL_EXT_geometry_shader4 b/src/other/glew/auto/core/GL_EXT_geometry_shader4
deleted file mode 100644
index 888e500..0000000
--- a/src/other/glew/auto/core/GL_EXT_geometry_shader4
+++ /dev/null
@@ -1,27 +0,0 @@
-GL_EXT_geometry_shader4
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_geometry_shader4.txt
-GL_EXT_geometry_shader4
-	GL_GEOMETRY_SHADER_EXT 0x8DD9
-	GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT 0x8DDD
-	GL_MAX_VERTEX_VARYING_COMPONENTS_EXT 0x8DDE
-	GL_MAX_VARYING_COMPONENTS_EXT 0x8B4B
-	GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8DDF
-	GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT 0x8DE0
-	GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT 0x8DE1
-	GL_GEOMETRY_VERTICES_OUT_EXT 0x8DDA
-	GL_GEOMETRY_INPUT_TYPE_EXT 0x8DDB
-	GL_GEOMETRY_OUTPUT_TYPE_EXT 0x8DDC
-	GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT 0x8C29
-	GL_LINES_ADJACENCY_EXT 0xA
-	GL_LINE_STRIP_ADJACENCY_EXT 0xB
-	GL_TRIANGLES_ADJACENCY_EXT 0xC
-	GL_TRIANGLE_STRIP_ADJACENCY_EXT 0xD
-	GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT 0x8DA7
-	GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT 0x8DA8
-	GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT 0x8DA9
-	GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT 0x8CD4
-	GL_PROGRAM_POINT_SIZE_EXT 0x8642
-	void glProgramParameteriEXT (GLuint program, GLenum pname, GLint value)
-	void glFramebufferTextureEXT (GLenum target, GLenum attachment, GLuint texture, GLint level)
-	void glFramebufferTextureLayerEXT (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
-	void glFramebufferTextureFaceEXT (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face)
diff --git a/src/other/glew/auto/core/GL_EXT_gpu_program_parameters b/src/other/glew/auto/core/GL_EXT_gpu_program_parameters
deleted file mode 100644
index 9048c98..0000000
--- a/src/other/glew/auto/core/GL_EXT_gpu_program_parameters
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_gpu_program_parameters
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_gpu_program_parameters.txt
-GL_EXT_gpu_program_parameters
-	void glProgramEnvParameters4fvEXT (GLenum target, GLuint index, GLsizei count, const GLfloat* params)
-	void glProgramLocalParameters4fvEXT (GLenum target, GLuint index, GLsizei count, const GLfloat* params)
diff --git a/src/other/glew/auto/core/GL_EXT_gpu_shader4 b/src/other/glew/auto/core/GL_EXT_gpu_shader4
deleted file mode 100644
index 0e89f0d..0000000
--- a/src/other/glew/auto/core/GL_EXT_gpu_shader4
+++ /dev/null
@@ -1,63 +0,0 @@
-GL_EXT_gpu_shader4
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_gpu_shader4.txt
-GL_EXT_gpu_shader4
-	GL_SAMPLER_1D_ARRAY_EXT 0x8DC0
-	GL_SAMPLER_2D_ARRAY_EXT 0x8DC1
-	GL_SAMPLER_BUFFER_EXT 0x8DC2
-	GL_SAMPLER_1D_ARRAY_SHADOW_EXT 0x8DC3
-	GL_SAMPLER_2D_ARRAY_SHADOW_EXT 0x8DC4
-	GL_SAMPLER_CUBE_SHADOW_EXT 0x8DC5
-	GL_UNSIGNED_INT_VEC2_EXT 0x8DC6
-	GL_UNSIGNED_INT_VEC3_EXT 0x8DC7
-	GL_UNSIGNED_INT_VEC4_EXT 0x8DC8
-	GL_INT_SAMPLER_1D_EXT 0x8DC9
-	GL_INT_SAMPLER_2D_EXT 0x8DCA
-	GL_INT_SAMPLER_3D_EXT 0x8DCB
-	GL_INT_SAMPLER_CUBE_EXT 0x8DCC
-	GL_INT_SAMPLER_2D_RECT_EXT 0x8DCD
-	GL_INT_SAMPLER_1D_ARRAY_EXT 0x8DCE
-	GL_INT_SAMPLER_2D_ARRAY_EXT 0x8DCF
-	GL_INT_SAMPLER_BUFFER_EXT 0x8DD0
-	GL_UNSIGNED_INT_SAMPLER_1D_EXT 0x8DD1
-	GL_UNSIGNED_INT_SAMPLER_2D_EXT 0x8DD2
-	GL_UNSIGNED_INT_SAMPLER_3D_EXT 0x8DD3
-	GL_UNSIGNED_INT_SAMPLER_CUBE_EXT 0x8DD4
-	GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT 0x8DD5
-	GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT 0x8DD6
-	GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT 0x8DD7
-	GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT 0x8DD8
-	GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT 0x88FD
-	void glGetUniformuivEXT (GLuint program, GLint location, GLuint *params)
-	void glBindFragDataLocationEXT (GLuint program, GLuint color, const GLchar *name)
-	GLint glGetFragDataLocationEXT (GLuint program, const GLchar *name)
-	void glUniform1uiEXT (GLint location, GLuint v0)
-	void glUniform2uiEXT (GLint location, GLuint v0, GLuint v1)
-	void glUniform3uiEXT (GLint location, GLuint v0, GLuint v1, GLuint v2)
-	void glUniform4uiEXT (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
-	void glUniform1uivEXT (GLint location, GLsizei count, const GLuint *value)
-	void glUniform2uivEXT (GLint location, GLsizei count, const GLuint *value)
-	void glUniform3uivEXT (GLint location, GLsizei count, const GLuint *value)
-	void glUniform4uivEXT (GLint location, GLsizei count, const GLuint *value)
-	void glVertexAttribI1iEXT (GLuint index, GLint x)
-	void glVertexAttribI2iEXT (GLuint index, GLint x, GLint y)
-	void glVertexAttribI3iEXT (GLuint index, GLint x, GLint y, GLint z)
-	void glVertexAttribI4iEXT (GLuint index, GLint x, GLint y, GLint z, GLint w)
-	void glVertexAttribI1uiEXT (GLuint index, GLuint x)
-	void glVertexAttribI2uiEXT (GLuint index, GLuint x, GLuint y)
-	void glVertexAttribI3uiEXT (GLuint index, GLuint x, GLuint y, GLuint z)
-	void glVertexAttribI4uiEXT (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
-	void glVertexAttribI1ivEXT (GLuint index, const GLint *v)
-	void glVertexAttribI2ivEXT (GLuint index, const GLint *v)
-	void glVertexAttribI3ivEXT (GLuint index, const GLint *v)
-	void glVertexAttribI4ivEXT (GLuint index, const GLint *v)
-	void glVertexAttribI1uivEXT (GLuint index, const GLuint *v)
-	void glVertexAttribI2uivEXT (GLuint index, const GLuint *v)
-	void glVertexAttribI3uivEXT (GLuint index, const GLuint *v)
-	void glVertexAttribI4uivEXT (GLuint index, const GLuint *v)
-	void glVertexAttribI4bvEXT (GLuint index, const GLbyte *v)
-	void glVertexAttribI4svEXT (GLuint index, const GLshort *v)
-	void glVertexAttribI4ubvEXT (GLuint index, const GLubyte *v)
-	void glVertexAttribI4usvEXT (GLuint index, const GLushort *v)
-	void glVertexAttribIPointerEXT (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
-	void glGetVertexAttribIivEXT (GLuint index, GLenum pname, GLint *params)
-	void glGetVertexAttribIuivEXT (GLuint index, GLenum pname, GLuint *params)
diff --git a/src/other/glew/auto/core/GL_EXT_packed_float b/src/other/glew/auto/core/GL_EXT_packed_float
deleted file mode 100644
index bcb2255..0000000
--- a/src/other/glew/auto/core/GL_EXT_packed_float
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_packed_float
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_packed_float.txt
-GL_EXT_packed_float
-	GL_R11F_G11F_B10F_EXT 0x8C3A
-	GL_UNSIGNED_INT_10F_11F_11F_REV_EXT 0x8C3B
-	GL_RGBA_SIGNED_COMPONENTS_EXT 0x8C3C
diff --git a/src/other/glew/auto/core/GL_EXT_pixel_buffer_object b/src/other/glew/auto/core/GL_EXT_pixel_buffer_object
deleted file mode 100644
index a7f8f2c..0000000
--- a/src/other/glew/auto/core/GL_EXT_pixel_buffer_object
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_pixel_buffer_object
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_pixel_buffer_object.txt
-GL_EXT_pixel_buffer_object
-	GL_PIXEL_PACK_BUFFER_EXT 0x88EB
-	GL_PIXEL_UNPACK_BUFFER_EXT 0x88EC
-	GL_PIXEL_PACK_BUFFER_BINDING_EXT 0x88ED
-	GL_PIXEL_UNPACK_BUFFER_BINDING_EXT 0x88EF
diff --git a/src/other/glew/auto/core/GL_EXT_secondary_color b/src/other/glew/auto/core/GL_EXT_secondary_color
deleted file mode 100644
index 490dc64..0000000
--- a/src/other/glew/auto/core/GL_EXT_secondary_color
+++ /dev/null
@@ -1,27 +0,0 @@
-GL_EXT_secondary_color
-http://oss.sgi.com/projects/ogl-sample/registry/EXT/secondary_color.txt
-GL_EXT_secondary_color
-	GL_COLOR_SUM_EXT 0x8458
-	GL_CURRENT_SECONDARY_COLOR_EXT 0x8459
-	GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845A
-	GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845B
-	GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845C
-	GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845D
-	GL_SECONDARY_COLOR_ARRAY_EXT 0x845E
-	void glSecondaryColor3bEXT (GLbyte red, GLbyte green, GLbyte blue)
-	void glSecondaryColor3bvEXT (const GLbyte *v)
-	void glSecondaryColor3dEXT (GLdouble red, GLdouble green, GLdouble blue)
-	void glSecondaryColor3dvEXT (const GLdouble *v)
-	void glSecondaryColor3fEXT (GLfloat red, GLfloat green, GLfloat blue)
-	void glSecondaryColor3fvEXT (const GLfloat *v)
-	void glSecondaryColor3iEXT (GLint red, GLint green, GLint blue)
-	void glSecondaryColor3ivEXT (const GLint *v)
-	void glSecondaryColor3sEXT (GLshort red, GLshort green, GLshort blue)
-	void glSecondaryColor3svEXT (const GLshort *v)
-	void glSecondaryColor3ubEXT (GLubyte red, GLubyte green, GLubyte blue)
-	void glSecondaryColor3ubvEXT (const GLubyte *v)
-	void glSecondaryColor3uiEXT (GLuint red, GLuint green, GLuint blue)
-	void glSecondaryColor3uivEXT (const GLuint *v)
-	void glSecondaryColor3usEXT (GLushort red, GLushort green, GLushort blue)
-	void glSecondaryColor3usvEXT (const GLushort *v)
-	void glSecondaryColorPointerEXT (GLint size, GLenum type, GLsizei stride, GLvoid *pointer)
diff --git a/src/other/glew/auto/core/GL_EXT_texture_array b/src/other/glew/auto/core/GL_EXT_texture_array
deleted file mode 100644
index f61e72e..0000000
--- a/src/other/glew/auto/core/GL_EXT_texture_array
+++ /dev/null
@@ -1,11 +0,0 @@
-GL_EXT_texture_array
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_array.txt
-GL_EXT_texture_array
-	GL_TEXTURE_1D_ARRAY_EXT 0x8C18
-	GL_PROXY_TEXTURE_1D_ARRAY_EXT 0x8C19
-	GL_TEXTURE_2D_ARRAY_EXT 0x8C1A
-	GL_PROXY_TEXTURE_2D_ARRAY_EXT 0x8C1B
-	GL_TEXTURE_BINDING_1D_ARRAY_EXT 0x8C1C
-	GL_TEXTURE_BINDING_2D_ARRAY_EXT 0x8C1D
-	GL_MAX_ARRAY_TEXTURE_LAYERS_EXT 0x88FF
-	GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT 0x884E
diff --git a/src/other/glew/auto/core/GL_EXT_texture_buffer_object b/src/other/glew/auto/core/GL_EXT_texture_buffer_object
deleted file mode 100644
index c00e1f3..0000000
--- a/src/other/glew/auto/core/GL_EXT_texture_buffer_object
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_EXT_texture_buffer_object
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_buffer_object.txt
-GL_EXT_texture_buffer_object
-	GL_TEXTURE_BUFFER_EXT 0x8C2A
-	GL_MAX_TEXTURE_BUFFER_SIZE_EXT 0x8C2B
-	GL_TEXTURE_BINDING_BUFFER_EXT 0x8C2C
-	GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT 0x8C2D
-	GL_TEXTURE_BUFFER_FORMAT_EXT 0x8C2E
-	void glTexBufferEXT (GLenum target, GLenum internalformat, GLuint buffer)
diff --git a/src/other/glew/auto/core/GL_EXT_texture_compression_latc b/src/other/glew/auto/core/GL_EXT_texture_compression_latc
deleted file mode 100644
index ddf8d26..0000000
--- a/src/other/glew/auto/core/GL_EXT_texture_compression_latc
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_texture_compression_latc
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_compression_latc.txt
-GL_EXT_texture_compression_latc
-	GL_COMPRESSED_LUMINANCE_LATC1_EXT 0x8C70
-	GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT 0x8C71
-	GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT 0x8C72
-	GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT 0x8C73
diff --git a/src/other/glew/auto/core/GL_EXT_texture_compression_rgtc b/src/other/glew/auto/core/GL_EXT_texture_compression_rgtc
deleted file mode 100644
index 7c5c57f..0000000
--- a/src/other/glew/auto/core/GL_EXT_texture_compression_rgtc
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_texture_compression_rgtc
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_compression_rgtc.txt
-GL_EXT_texture_compression_rgtc
-	GL_COMPRESSED_RED_RGTC1_EXT 0x8DBB
-	GL_COMPRESSED_SIGNED_RED_RGTC1_EXT 0x8DBC
-	GL_COMPRESSED_RED_GREEN_RGTC2_EXT 0x8DBD
-	GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT 0x8DBE
diff --git a/src/other/glew/auto/core/GL_EXT_texture_cube_map b/src/other/glew/auto/core/GL_EXT_texture_cube_map
deleted file mode 100644
index 5909f48..0000000
--- a/src/other/glew/auto/core/GL_EXT_texture_cube_map
+++ /dev/null
@@ -1,15 +0,0 @@
-GL_EXT_texture_cube_map
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_texture_cube_map.txt
-GL_EXT_texture_cube_map
-	GL_NORMAL_MAP_EXT 0x8511
-	GL_REFLECTION_MAP_EXT 0x8512
-	GL_TEXTURE_CUBE_MAP_EXT 0x8513
-	GL_TEXTURE_BINDING_CUBE_MAP_EXT 0x8514
-	GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT 0x8515
-	GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT 0x8516
-	GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT 0x8517
-	GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT 0x8518
-	GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT 0x8519
-	GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT 0x851A
-	GL_PROXY_TEXTURE_CUBE_MAP_EXT 0x851B
-	GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT 0x851C
diff --git a/src/other/glew/auto/core/GL_EXT_texture_edge_clamp b/src/other/glew/auto/core/GL_EXT_texture_edge_clamp
deleted file mode 100644
index 4df0997..0000000
--- a/src/other/glew/auto/core/GL_EXT_texture_edge_clamp
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_EXT_texture_edge_clamp
-http://www.opengl.org/developers/documentation/Version1.2/1.2specs/texture_edge_clamp.txt
-GL_EXT_texture_edge_clamp
-	GL_CLAMP_TO_EDGE_EXT	0x812F
diff --git a/src/other/glew/auto/core/GL_EXT_texture_integer b/src/other/glew/auto/core/GL_EXT_texture_integer
deleted file mode 100644
index 1c57e40..0000000
--- a/src/other/glew/auto/core/GL_EXT_texture_integer
+++ /dev/null
@@ -1,56 +0,0 @@
-GL_EXT_texture_integer
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_integer.txt
-GL_EXT_texture_integer
-	GL_RGBA32UI_EXT 0x8D70
-	GL_RGB32UI_EXT 0x8D71
-	GL_ALPHA32UI_EXT 0x8D72
-	GL_INTENSITY32UI_EXT 0x8D73
-	GL_LUMINANCE32UI_EXT 0x8D74
-	GL_LUMINANCE_ALPHA32UI_EXT 0x8D75
-	GL_RGBA16UI_EXT 0x8D76
-	GL_RGB16UI_EXT 0x8D77
-	GL_ALPHA16UI_EXT 0x8D78
-	GL_INTENSITY16UI_EXT 0x8D79
-	GL_LUMINANCE16UI_EXT 0x8D7A
-	GL_LUMINANCE_ALPHA16UI_EXT 0x8D7B
-	GL_RGBA8UI_EXT 0x8D7C
-	GL_RGB8UI_EXT 0x8D7D
-	GL_ALPHA8UI_EXT 0x8D7E
-	GL_INTENSITY8UI_EXT 0x8D7F
-	GL_LUMINANCE8UI_EXT 0x8D80
-	GL_LUMINANCE_ALPHA8UI_EXT 0x8D81
-	GL_RGBA32I_EXT 0x8D82
-	GL_RGB32I_EXT 0x8D83
-	GL_ALPHA32I_EXT 0x8D84
-	GL_INTENSITY32I_EXT 0x8D85
-	GL_LUMINANCE32I_EXT 0x8D86
-	GL_LUMINANCE_ALPHA32I_EXT 0x8D87
-	GL_RGBA16I_EXT 0x8D88
-	GL_RGB16I_EXT 0x8D89
-	GL_ALPHA16I_EXT 0x8D8A
-	GL_INTENSITY16I_EXT 0x8D8B
-	GL_LUMINANCE16I_EXT 0x8D8C
-	GL_LUMINANCE_ALPHA16I_EXT 0x8D8D
-	GL_RGBA8I_EXT 0x8D8E
-	GL_RGB8I_EXT 0x8D8F
-	GL_ALPHA8I_EXT 0x8D90
-	GL_INTENSITY8I_EXT 0x8D91
-	GL_LUMINANCE8I_EXT 0x8D92
-	GL_LUMINANCE_ALPHA8I_EXT 0x8D93
-	GL_RED_INTEGER_EXT 0x8D94
-	GL_GREEN_INTEGER_EXT 0x8D95
-	GL_BLUE_INTEGER_EXT 0x8D96
-	GL_ALPHA_INTEGER_EXT 0x8D97
-	GL_RGB_INTEGER_EXT 0x8D98
-	GL_RGBA_INTEGER_EXT 0x8D99
-	GL_BGR_INTEGER_EXT 0x8D9A
-	GL_BGRA_INTEGER_EXT 0x8D9B
-	GL_LUMINANCE_INTEGER_EXT 0x8D9C
-	GL_LUMINANCE_ALPHA_INTEGER_EXT 0x8D9D
-	GL_RGBA_INTEGER_MODE_EXT 0x8D9E
-	void glTexParameterIivEXT (GLenum target, GLenum pname, const GLint *params)
-	void glTexParameterIuivEXT (GLenum target, GLenum pname, const GLuint *params)
-	void glGetTexParameterIivEXT (GLenum target, GLenum pname, GLint *params)
-	void glGetTexParameterIuivEXT (GLenum target, GLenum pname, GLuint *params)
-	void glClearColorIiEXT (GLint red, GLint green, GLint blue, GLint alpha)
-	void glClearColorIuiEXT (GLuint red, GLuint green, GLuint blue, GLuint alpha)
diff --git a/src/other/glew/auto/core/GL_EXT_texture_rectangle b/src/other/glew/auto/core/GL_EXT_texture_rectangle
deleted file mode 100644
index 4028a9e..0000000
--- a/src/other/glew/auto/core/GL_EXT_texture_rectangle
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_texture_rectangle
-http://developer.apple.com/opengl/extensions/ext_texture_rectangle.html
-GL_EXT_texture_rectangle
-	GL_TEXTURE_RECTANGLE_EXT 0x84F5
-	GL_TEXTURE_BINDING_RECTANGLE_EXT 0x84F6
-	GL_PROXY_TEXTURE_RECTANGLE_EXT 0x84F7
-	GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT 0x84F8
diff --git a/src/other/glew/auto/core/GL_EXT_texture_shared_exponent b/src/other/glew/auto/core/GL_EXT_texture_shared_exponent
deleted file mode 100644
index 4ff7efc..0000000
--- a/src/other/glew/auto/core/GL_EXT_texture_shared_exponent
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_texture_shared_exponent
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_shared_exponent.txt
-GL_EXT_texture_shared_exponent
-	GL_RGB9_E5_EXT 0x8C3D
-	GL_UNSIGNED_INT_5_9_9_9_REV_EXT 0x8C3E
-	GL_TEXTURE_SHARED_SIZE_EXT 0x8C3F
diff --git a/src/other/glew/auto/core/GL_EXT_timer_query b/src/other/glew/auto/core/GL_EXT_timer_query
deleted file mode 100644
index 390e6fc..0000000
--- a/src/other/glew/auto/core/GL_EXT_timer_query
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_timer_query
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_timer_query.txt
-GL_EXT_timer_query
-	GL_TIME_ELAPSED_EXT 0x88BF
-	void glGetQueryObjecti64vEXT (GLuint id, GLenum pname, GLint64EXT *params)
-	void glGetQueryObjectui64vEXT (GLuint id, GLenum pname, GLuint64EXT *params)
diff --git a/src/other/glew/auto/core/GL_EXT_vertex_shader b/src/other/glew/auto/core/GL_EXT_vertex_shader
deleted file mode 100644
index eb125b6..0000000
--- a/src/other/glew/auto/core/GL_EXT_vertex_shader
+++ /dev/null
@@ -1,156 +0,0 @@
-GL_EXT_vertex_shader
-http://oss.sgi.com/projects/ogl-sample/registry/EXT/vertex_shader.txt
-GL_EXT_vertex_shader
-	GL_VERTEX_SHADER_EXT 0x8780
-	GL_VERTEX_SHADER_BINDING_EXT 0x8781
-	GL_OP_INDEX_EXT 0x8782
-	GL_OP_NEGATE_EXT 0x8783
-	GL_OP_DOT3_EXT 0x8784
-	GL_OP_DOT4_EXT 0x8785
-	GL_OP_MUL_EXT 0x8786
-	GL_OP_ADD_EXT 0x8787
-	GL_OP_MADD_EXT 0x8788
-	GL_OP_FRAC_EXT 0x8789
-	GL_OP_MAX_EXT 0x878A
-	GL_OP_MIN_EXT 0x878B
-	GL_OP_SET_GE_EXT 0x878C
-	GL_OP_SET_LT_EXT 0x878D
-	GL_OP_CLAMP_EXT 0x878E
-	GL_OP_FLOOR_EXT 0x878F
-	GL_OP_ROUND_EXT 0x8790
-	GL_OP_EXP_BASE_2_EXT 0x8791
-	GL_OP_LOG_BASE_2_EXT 0x8792
-	GL_OP_POWER_EXT 0x8793
-	GL_OP_RECIP_EXT 0x8794
-	GL_OP_RECIP_SQRT_EXT 0x8795
-	GL_OP_SUB_EXT 0x8796
-	GL_OP_CROSS_PRODUCT_EXT 0x8797
-	GL_OP_MULTIPLY_MATRIX_EXT 0x8798
-	GL_OP_MOV_EXT 0x8799
-	GL_OUTPUT_VERTEX_EXT 0x879A
-	GL_OUTPUT_COLOR0_EXT 0x879B
-	GL_OUTPUT_COLOR1_EXT 0x879C
-	GL_OUTPUT_TEXTURE_COORD0_EXT 0x879D
-	GL_OUTPUT_TEXTURE_COORD1_EXT 0x879E
-	GL_OUTPUT_TEXTURE_COORD2_EXT 0x879F
-	GL_OUTPUT_TEXTURE_COORD3_EXT 0x87A0
-	GL_OUTPUT_TEXTURE_COORD4_EXT 0x87A1
-	GL_OUTPUT_TEXTURE_COORD5_EXT 0x87A2
-	GL_OUTPUT_TEXTURE_COORD6_EXT 0x87A3
-	GL_OUTPUT_TEXTURE_COORD7_EXT 0x87A4
-	GL_OUTPUT_TEXTURE_COORD8_EXT 0x87A5
-	GL_OUTPUT_TEXTURE_COORD9_EXT 0x87A6
-	GL_OUTPUT_TEXTURE_COORD10_EXT 0x87A7
-	GL_OUTPUT_TEXTURE_COORD11_EXT 0x87A8
-	GL_OUTPUT_TEXTURE_COORD12_EXT 0x87A9
-	GL_OUTPUT_TEXTURE_COORD13_EXT 0x87AA
-	GL_OUTPUT_TEXTURE_COORD14_EXT 0x87AB
-	GL_OUTPUT_TEXTURE_COORD15_EXT 0x87AC
-	GL_OUTPUT_TEXTURE_COORD16_EXT 0x87AD
-	GL_OUTPUT_TEXTURE_COORD17_EXT 0x87AE
-	GL_OUTPUT_TEXTURE_COORD18_EXT 0x87AF
-	GL_OUTPUT_TEXTURE_COORD19_EXT 0x87B0
-	GL_OUTPUT_TEXTURE_COORD20_EXT 0x87B1
-	GL_OUTPUT_TEXTURE_COORD21_EXT 0x87B2
-	GL_OUTPUT_TEXTURE_COORD22_EXT 0x87B3
-	GL_OUTPUT_TEXTURE_COORD23_EXT 0x87B4
-	GL_OUTPUT_TEXTURE_COORD24_EXT 0x87B5
-	GL_OUTPUT_TEXTURE_COORD25_EXT 0x87B6
-	GL_OUTPUT_TEXTURE_COORD26_EXT 0x87B7
-	GL_OUTPUT_TEXTURE_COORD27_EXT 0x87B8
-	GL_OUTPUT_TEXTURE_COORD28_EXT 0x87B9
-	GL_OUTPUT_TEXTURE_COORD29_EXT 0x87BA
-	GL_OUTPUT_TEXTURE_COORD30_EXT 0x87BB
-	GL_OUTPUT_TEXTURE_COORD31_EXT 0x87BC
-	GL_OUTPUT_FOG_EXT 0x87BD
-	GL_SCALAR_EXT 0x87BE
-	GL_VECTOR_EXT 0x87BF
-	GL_MATRIX_EXT 0x87C0
-	GL_VARIANT_EXT 0x87C1
-	GL_INVARIANT_EXT 0x87C2
-	GL_LOCAL_CONSTANT_EXT 0x87C3
-	GL_LOCAL_EXT 0x87C4
-	GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87C5
-	GL_MAX_VERTEX_SHADER_VARIANTS_EXT 0x87C6
-	GL_MAX_VERTEX_SHADER_INVARIANTS_EXT 0x87C7
-	GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87C8
-	GL_MAX_VERTEX_SHADER_LOCALS_EXT 0x87C9
-	GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CA
-	GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT 0x87CB
-	GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT 0x87CC
-	GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87CD
-	GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT 0x87CE
-	GL_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CF
-	GL_VERTEX_SHADER_VARIANTS_EXT 0x87D0
-	GL_VERTEX_SHADER_INVARIANTS_EXT 0x87D1
-	GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87D2
-	GL_VERTEX_SHADER_LOCALS_EXT 0x87D3
-	GL_VERTEX_SHADER_OPTIMIZED_EXT 0x87D4
-	GL_X_EXT 0x87D5
-	GL_Y_EXT 0x87D6
-	GL_Z_EXT 0x87D7
-	GL_W_EXT 0x87D8
-	GL_NEGATIVE_X_EXT 0x87D9
-	GL_NEGATIVE_Y_EXT 0x87DA
-	GL_NEGATIVE_Z_EXT 0x87DB
-	GL_NEGATIVE_W_EXT 0x87DC
-	GL_ZERO_EXT 0x87DD
-	GL_ONE_EXT 0x87DE
-	GL_NEGATIVE_ONE_EXT 0x87DF
-	GL_NORMALIZED_RANGE_EXT 0x87E0
-	GL_FULL_RANGE_EXT 0x87E1
-	GL_CURRENT_VERTEX_EXT 0x87E2
-	GL_MVP_MATRIX_EXT 0x87E3
-	GL_VARIANT_VALUE_EXT 0x87E4
-	GL_VARIANT_DATATYPE_EXT 0x87E5
-	GL_VARIANT_ARRAY_STRIDE_EXT 0x87E6
-	GL_VARIANT_ARRAY_TYPE_EXT 0x87E7
-	GL_VARIANT_ARRAY_EXT 0x87E8
-	GL_VARIANT_ARRAY_POINTER_EXT 0x87E9
-	GL_INVARIANT_VALUE_EXT 0x87EA
-	GL_INVARIANT_DATATYPE_EXT 0x87EB
-	GL_LOCAL_CONSTANT_VALUE_EXT 0x87EC
-	GL_LOCAL_CONSTANT_DATATYPE_EXT 0x87ED
-
-	void glBeginVertexShaderEXT (void)
-	void glEndVertexShaderEXT (void)
-	void glBindVertexShaderEXT (GLuint id)
-	GLuint glGenVertexShadersEXT (GLuint range)
-	void glDeleteVertexShaderEXT (GLuint id)
-	void glShaderOp1EXT (GLenum op, GLuint res, GLuint arg1)
-	void glShaderOp2EXT (GLenum op, GLuint res, GLuint arg1, GLuint arg2)
-	void glShaderOp3EXT (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3)
-	void glSwizzleEXT (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW)
-	void glWriteMaskEXT (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW)
-	void glInsertComponentEXT (GLuint res, GLuint src, GLuint num)
-	void glExtractComponentEXT (GLuint res, GLuint src, GLuint num)
-	GLuint glGenSymbolsEXT (GLenum dataType, GLenum storageType, GLenum range, GLuint components)
-	void glSetInvariantEXT (GLuint id, GLenum type, GLvoid *addr)
-	void glSetLocalConstantEXT (GLuint id, GLenum type, GLvoid *addr)
-	void glVariantbvEXT (GLuint id, GLbyte *addr)
-	void glVariantsvEXT (GLuint id, GLshort *addr)
-	void glVariantivEXT (GLuint id, GLint *addr)
-	void glVariantfvEXT (GLuint id, GLfloat *addr)
-	void glVariantdvEXT (GLuint id, GLdouble *addr)
-	void glVariantubvEXT (GLuint id, GLubyte *addr)
-	void glVariantusvEXT (GLuint id, GLushort *addr)
-	void glVariantuivEXT (GLuint id, GLuint *addr)
-	void glVariantPointerEXT (GLuint id, GLenum type, GLuint stride, GLvoid *addr)
-	void glEnableVariantClientStateEXT (GLuint id)
-	void glDisableVariantClientStateEXT (GLuint id)
-	GLuint glBindLightParameterEXT (GLenum light, GLenum value)
-	GLuint glBindMaterialParameterEXT (GLenum face, GLenum value)
-	GLuint glBindTexGenParameterEXT (GLenum unit, GLenum coord, GLenum value)
-	GLuint glBindTextureUnitParameterEXT (GLenum unit, GLenum value)
-	GLuint glBindParameterEXT (GLenum value)
-	GLboolean glIsVariantEnabledEXT (GLuint id, GLenum cap)
-	void glGetVariantBooleanvEXT (GLuint id, GLenum value, GLboolean *data)
-	void glGetVariantIntegervEXT (GLuint id, GLenum value, GLint *data)
-	void glGetVariantFloatvEXT (GLuint id, GLenum value, GLfloat *data)
-	void glGetVariantPointervEXT (GLuint id, GLenum value, GLvoid **data)
-	void glGetInvariantBooleanvEXT (GLuint id, GLenum value, GLboolean *data)
-	void glGetInvariantIntegervEXT (GLuint id, GLenum value, GLint *data)
-	void glGetInvariantFloatvEXT (GLuint id, GLenum value, GLfloat *data)
-	void glGetLocalConstantBooleanvEXT (GLuint id, GLenum value, GLboolean *data)
-	void glGetLocalConstantIntegervEXT (GLuint id, GLenum value, GLint *data)
-	void glGetLocalConstantFloatvEXT (GLuint id, GLenum value, GLfloat *data)
diff --git a/src/other/glew/auto/core/GL_KTX_buffer_region b/src/other/glew/auto/core/GL_KTX_buffer_region
deleted file mode 100644
index 22a59d3..0000000
--- a/src/other/glew/auto/core/GL_KTX_buffer_region
+++ /dev/null
@@ -1,12 +0,0 @@
-GL_KTX_buffer_region
-
-GL_KTX_buffer_region
-	GL_KTX_FRONT_REGION 0x0
-	GL_KTX_BACK_REGION 0x1
-	GL_KTX_Z_REGION 0x2
-	GL_KTX_STENCIL_REGION 0x3
-	GLuint glBufferRegionEnabledEXT (void)
-	GLuint glNewBufferRegionEXT (GLenum region)
-	void glDeleteBufferRegionEXT (GLenum region)
-	void glReadBufferRegionEXT (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height)
-	void glDrawBufferRegionEXT (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height, GLint xDest, GLint yDest)
diff --git a/src/other/glew/auto/core/GL_NV_depth_buffer_float b/src/other/glew/auto/core/GL_NV_depth_buffer_float
deleted file mode 100644
index 493b245..0000000
--- a/src/other/glew/auto/core/GL_NV_depth_buffer_float
+++ /dev/null
@@ -1,10 +0,0 @@
-GL_NV_depth_buffer_float
-http://developer.download.nvidia.com/opengl/specs/GL_NV_depth_buffer_float.txt
-GL_NV_depth_buffer_float
-	GL_DEPTH_COMPONENT32F_NV 0x8DAB
-	GL_DEPTH32F_STENCIL8_NV 0x8DAC
-	GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV 0x8DAD
-	GL_DEPTH_BUFFER_FLOAT_MODE_NV 0x8DAF
-	void glDepthRangedNV (GLdouble zNear, GLdouble zFar)
-	void glClearDepthdNV (GLdouble depth)
-	void glDepthBoundsdNV (GLdouble zmin, GLdouble zmax)
diff --git a/src/other/glew/auto/core/GL_NV_depth_range_unclamped b/src/other/glew/auto/core/GL_NV_depth_range_unclamped
deleted file mode 100644
index 62b4e59..0000000
--- a/src/other/glew/auto/core/GL_NV_depth_range_unclamped
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_NV_depth_range_unclamped
-
-GL_NV_depth_range_unclamped
-	GL_SAMPLE_COUNT_BITS_NV 0x8864
-	GL_CURRENT_SAMPLE_COUNT_QUERY_NV 0x8865
-	GL_QUERY_RESULT_NV 0x8866
-	GL_QUERY_RESULT_AVAILABLE_NV 0x8867
-	GL_SAMPLE_COUNT_NV 0x8914
diff --git a/src/other/glew/auto/core/GL_NV_fragment_program2 b/src/other/glew/auto/core/GL_NV_fragment_program2
deleted file mode 100644
index 7fb59ee..0000000
--- a/src/other/glew/auto/core/GL_NV_fragment_program2
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_NV_fragment_program2
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_fragment_program2.txt
-GL_NV_fragment_program2
-	GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4
-	GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5
-	GL_MAX_PROGRAM_IF_DEPTH_NV 0x88F6
-	GL_MAX_PROGRAM_LOOP_DEPTH_NV 0x88F7
-	GL_MAX_PROGRAM_LOOP_COUNT_NV 0x88F8
diff --git a/src/other/glew/auto/core/GL_NV_fragment_program4 b/src/other/glew/auto/core/GL_NV_fragment_program4
deleted file mode 100644
index 0ae2598..0000000
--- a/src/other/glew/auto/core/GL_NV_fragment_program4
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_fragment_program4
-http://developer.download.nvidia.com/opengl/specs/GL_NV_fragment_program4.txt
-GL_NV_gpu_program4
diff --git a/src/other/glew/auto/core/GL_NV_fragment_program_option b/src/other/glew/auto/core/GL_NV_fragment_program_option
deleted file mode 100644
index 7af9731..0000000
--- a/src/other/glew/auto/core/GL_NV_fragment_program_option
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_fragment_program_option
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_fragment_program_option.txt
-GL_NV_fragment_program_option
diff --git a/src/other/glew/auto/core/GL_NV_framebuffer_multisample_coverage b/src/other/glew/auto/core/GL_NV_framebuffer_multisample_coverage
deleted file mode 100644
index d1d0660..0000000
--- a/src/other/glew/auto/core/GL_NV_framebuffer_multisample_coverage
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_NV_framebuffer_multisample_coverage
-http://developer.download.nvidia.com/opengl/specs/GL_NV_framebuffer_multisample_coverage.txt
-GL_NV_framebuffer_multisample_coverage
-	GL_RENDERBUFFER_COVERAGE_SAMPLES_NV 0x8CAB
-	GL_RENDERBUFFER_COLOR_SAMPLES_NV  0x8E10
-	GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV 0x8E11
-	GL_MULTISAMPLE_COVERAGE_MODES_NV 0x8E12
-	void glRenderbufferStorageMultisampleCoverageNV (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height)
diff --git a/src/other/glew/auto/core/GL_NV_geometry_program4 b/src/other/glew/auto/core/GL_NV_geometry_program4
deleted file mode 100644
index 3f82b19..0000000
--- a/src/other/glew/auto/core/GL_NV_geometry_program4
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_NV_geometry_program4
-http://developer.download.nvidia.com/opengl/specs/GL_NV_geometry_program4.txt
-GL_NV_gpu_program4
-	GL_GEOMETRY_PROGRAM_NV 0x8C26
-	GL_MAX_PROGRAM_OUTPUT_VERTICES_NV 0x8C27
-	GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV 0x8C28
-	void glProgramVertexLimitNV (GLenum target, GLint limit)
diff --git a/src/other/glew/auto/core/GL_NV_geometry_shader4 b/src/other/glew/auto/core/GL_NV_geometry_shader4
deleted file mode 100644
index 2040c0d..0000000
--- a/src/other/glew/auto/core/GL_NV_geometry_shader4
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_geometry_shader4
-http://developer.download.nvidia.com/opengl/specs/GL_NV_geometry_shader4.txt
-GL_NV_geometry_shader4
diff --git a/src/other/glew/auto/core/GL_NV_gpu_program4 b/src/other/glew/auto/core/GL_NV_gpu_program4
deleted file mode 100644
index 030f68e..0000000
--- a/src/other/glew/auto/core/GL_NV_gpu_program4
+++ /dev/null
@@ -1,23 +0,0 @@
-GL_NV_gpu_program4
-http://developer.download.nvidia.com/opengl/specs/GL_NV_gpu_program4.txt
-GL_NV_gpu_program4
-	GL_MIN_PROGRAM_TEXEL_OFFSET_NV 0x8904
-	GL_MAX_PROGRAM_TEXEL_OFFSET_NV 0x8905
-	GL_PROGRAM_ATTRIB_COMPONENTS_NV 0x8906
-	GL_PROGRAM_RESULT_COMPONENTS_NV 0x8907
-	GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV 0x8908
-	GL_MAX_PROGRAM_RESULT_COMPONENTS_NV 0x8909
-	GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV 0x8DA5
-	GL_MAX_PROGRAM_GENERIC_RESULTS_NV 0x8DA6
-	void glProgramLocalParameterI4iNV (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w)
-	void glProgramLocalParameterI4ivNV (GLenum target, GLuint index, const GLint *params)
-	void glProgramLocalParametersI4ivNV (GLenum target, GLuint index, GLsizei count, const GLint *params)
-	void glProgramLocalParameterI4uiNV (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
-	void glProgramLocalParameterI4uivNV (GLenum target, GLuint index, const GLuint *params)
-	void glProgramLocalParametersI4uivNV (GLenum target, GLuint index, GLsizei count, const GLuint *params)
-	void glProgramEnvParameterI4iNV (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w)
-	void glProgramEnvParameterI4ivNV (GLenum target, GLuint index, const GLint *params)
-	void glProgramEnvParametersI4ivNV (GLenum target, GLuint index, GLsizei count, const GLint *params)
-	void glProgramEnvParameterI4uiNV (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
-	void glProgramEnvParameterI4uivNV (GLenum target, GLuint index, const GLuint *params)
-	void glProgramEnvParametersI4uivNV (GLenum target, GLuint index, GLsizei count, const GLuint *params)
diff --git a/src/other/glew/auto/core/GL_NV_parameter_buffer_object b/src/other/glew/auto/core/GL_NV_parameter_buffer_object
deleted file mode 100644
index d2525a1..0000000
--- a/src/other/glew/auto/core/GL_NV_parameter_buffer_object
+++ /dev/null
@@ -1,11 +0,0 @@
-GL_NV_parameter_buffer_object
-http://developer.download.nvidia.com/opengl/specs/GL_NV_parameter_buffer_object.txt
-GL_NV_parameter_buffer_object
-	GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV 0x8DA2
-	GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV 0x8DA3
-	GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV 0x8DA4
-	GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV 0x8DA0
-	GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV 0x8DA1
-	void glProgramBufferParametersfvNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLfloat *params)
-	void glProgramBufferParametersIivNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLint *params)
-	void glProgramBufferParametersIuivNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLuint *params)
diff --git a/src/other/glew/auto/core/GL_NV_present_video b/src/other/glew/auto/core/GL_NV_present_video
deleted file mode 100644
index 893c74c..0000000
--- a/src/other/glew/auto/core/GL_NV_present_video
+++ /dev/null
@@ -1,15 +0,0 @@
-GL_NV_present_video
-http://www.opengl.org/registry/specs/NV/present_video.txt
-GL_NV_present_video
-	GL_FRAME_NV 0x8E26
-	GL_FIELDS_NV 0x8E27
-	GL_CURRENT_TIME_NV 0x8E28
-	GL_NUM_FILL_STREAMS_NV 0x8E29
-	GL_PRESENT_TIME_NV 0x8E2A
-	GL_PRESENT_DURATION_NV 0x8E2B
-	void glGetVideoi64vNV (GLuint video_slot, GLenum pname, GLint64EXT* params)
-	void glGetVideoivNV (GLuint video_slot, GLenum pname, GLint* params)
-	void glGetVideoui64vNV (GLuint video_slot, GLenum pname, GLuint64EXT* params)
-	void glGetVideouivNV (GLuint video_slot, GLenum pname, GLuint* params)
-	void glPresentFrameDualFillNV (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLenum target1, GLuint fill1, GLenum target2, GLuint fill2, GLenum target3, GLuint fill3)
-	void glPresentFrameKeyedNV (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLuint key0, GLenum target1, GLuint fill1, GLuint key1)
diff --git a/src/other/glew/auto/core/GL_NV_tessellation_program5 b/src/other/glew/auto/core/GL_NV_tessellation_program5
deleted file mode 100644
index b663c97..0000000
--- a/src/other/glew/auto/core/GL_NV_tessellation_program5
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_NV_tessellation_program5
-http://www.opengl.org/registry/specs/NV/tessellation_program5.txt
-GL_NV_gpu_program5
-	GL_MAX_PROGRAM_PATCH_ATTRIBS_NV 0x86D8
-	GL_TESS_CONTROL_PROGRAM_NV 0x891E
-	GL_TESS_EVALUATION_PROGRAM_NV 0x891F
-	GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV 0x8C74
-	GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV 0x8C75
diff --git a/src/other/glew/auto/core/GL_NV_transform_feedback b/src/other/glew/auto/core/GL_NV_transform_feedback
deleted file mode 100644
index fce4757..0000000
--- a/src/other/glew/auto/core/GL_NV_transform_feedback
+++ /dev/null
@@ -1,39 +0,0 @@
-GL_NV_transform_feedback
-http://developer.download.nvidia.com/opengl/specs/GL_NV_transform_feedback.txt
-GL_NV_transform_feedback
-	GL_BACK_PRIMARY_COLOR_NV 0x8C77
-	GL_BACK_SECONDARY_COLOR_NV 0x8C78
-	GL_TEXTURE_COORD_NV 0x8C79
-	GL_CLIP_DISTANCE_NV 0x8C7A
-	GL_VERTEX_ID_NV 0x8C7B
-	GL_PRIMITIVE_ID_NV 0x8C7C
-	GL_GENERIC_ATTRIB_NV 0x8C7D
-	GL_TRANSFORM_FEEDBACK_ATTRIBS_NV 0x8C7E
-	GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV 0x8C7F
-	GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV 0x8C80
-	GL_ACTIVE_VARYINGS_NV 0x8C81
-	GL_ACTIVE_VARYING_MAX_LENGTH_NV 0x8C82
-	GL_TRANSFORM_FEEDBACK_VARYINGS_NV 0x8C83
-	GL_TRANSFORM_FEEDBACK_BUFFER_START_NV 0x8C84
-	GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV 0x8C85
-	GL_TRANSFORM_FEEDBACK_RECORD_NV 0x8C86
-	GL_PRIMITIVES_GENERATED_NV 0x8C87
-	GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV 0x8C88
-	GL_RASTERIZER_DISCARD_NV 0x8C89
-	GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV 0x8C8A
-	GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV 0x8C8B
-	GL_INTERLEAVED_ATTRIBS_NV 0x8C8C
-	GL_SEPARATE_ATTRIBS_NV 0x8C8D
-	GL_TRANSFORM_FEEDBACK_BUFFER_NV 0x8C8E
-	GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV 0x8C8F
-	void glBeginTransformFeedbackNV (GLenum primitiveMode)
-	void glEndTransformFeedbackNV (void)
-	void glTransformFeedbackAttribsNV (GLuint count, const GLint *attribs, GLenum bufferMode)
-	void glBindBufferRangeNV (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
-	void glBindBufferOffsetNV (GLenum target, GLuint index, GLuint buffer, GLintptr offset)
-	void glBindBufferBaseNV (GLenum target, GLuint index, GLuint buffer)
-	void glTransformFeedbackVaryingsNV (GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode)
-	void glActiveVaryingNV (GLuint program, const GLchar *name)
-	GLint glGetVaryingLocationNV (GLuint program, const GLchar *name)
-	void glGetActiveVaryingNV (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
-	void glGetTransformFeedbackVaryingNV (GLuint program, GLuint index, GLint *location)
diff --git a/src/other/glew/auto/core/GL_NV_vertex_program2_option b/src/other/glew/auto/core/GL_NV_vertex_program2_option
deleted file mode 100644
index 1fecc4c..0000000
--- a/src/other/glew/auto/core/GL_NV_vertex_program2_option
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_NV_vertex_program2_option
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_vertex_program2_option.txt
-GL_NV_vertex_program2_option
-	GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4
-	GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5
diff --git a/src/other/glew/auto/core/GL_NV_vertex_program3 b/src/other/glew/auto/core/GL_NV_vertex_program3
deleted file mode 100644
index 6510e06..0000000
--- a/src/other/glew/auto/core/GL_NV_vertex_program3
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_NV_vertex_program3
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_vertex_program3.txt
-GL_NV_vertex_program3
-	MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C
diff --git a/src/other/glew/auto/core/GL_NV_vertex_program4 b/src/other/glew/auto/core/GL_NV_vertex_program4
deleted file mode 100644
index 7e61b3a..0000000
--- a/src/other/glew/auto/core/GL_NV_vertex_program4
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_vertex_program4
-http://developer.download.nvidia.com/opengl/specs/GL_NV_vertex_program4.txt
-GL_NV_gpu_program4
diff --git a/src/other/glew/auto/core/GL_SGIX_shadow b/src/other/glew/auto/core/GL_SGIX_shadow
deleted file mode 100644
index 2b34cc8..0000000
--- a/src/other/glew/auto/core/GL_SGIX_shadow
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_SGIX_shadow
-http://oss.sgi.com/projects/ogl-sample/registry/SGIX/shadow.txt
-GL_SGIX_shadow
-	GL_TEXTURE_COMPARE_SGIX 0x819A
-	GL_TEXTURE_COMPARE_OPERATOR_SGIX 0x819B
-	GL_TEXTURE_LEQUAL_R_SGIX 0x819C
-	GL_TEXTURE_GEQUAL_R_SGIX 0x819D
diff --git a/src/other/glew/auto/core/GL_SUN_read_video_pixels b/src/other/glew/auto/core/GL_SUN_read_video_pixels
deleted file mode 100644
index faa55f9..0000000
--- a/src/other/glew/auto/core/GL_SUN_read_video_pixels
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SUN_read_video_pixels
-http://wwws.sun.com/software/graphics/opengl/extensions/gl_sun_read_video_pixels.txt
-GL_SUN_read_video_pixels
-	void glReadVideoPixelsSUN (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels)
diff --git a/src/other/glew/auto/core/GL_VERSION_1_2 b/src/other/glew/auto/core/GL_VERSION_1_2
deleted file mode 100644
index fb55054..0000000
--- a/src/other/glew/auto/core/GL_VERSION_1_2
+++ /dev/null
@@ -1,48 +0,0 @@
-GL_VERSION_1_2
-http://www.opengl.org/documentation/specs/version1.2/opengl1.2.1.pdf
-
-	GL_UNSIGNED_BYTE_3_3_2 0x8032
-	GL_UNSIGNED_SHORT_4_4_4_4 0x8033
-	GL_UNSIGNED_SHORT_5_5_5_1 0x8034
-	GL_UNSIGNED_INT_8_8_8_8 0x8035
-	GL_UNSIGNED_INT_10_10_10_2 0x8036
-	GL_RESCALE_NORMAL 0x803A
-	GL_UNSIGNED_BYTE_2_3_3_REV 0x8362
-	GL_UNSIGNED_SHORT_5_6_5 0x8363
-	GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
-	GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365
-	GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
-	GL_UNSIGNED_INT_8_8_8_8_REV 0x8367
-	GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
-	GL_BGR 0x80E0
-	GL_BGRA 0x80E1
-	GL_MAX_ELEMENTS_VERTICES 0x80E8
-	GL_MAX_ELEMENTS_INDICES 0x80E9
-	GL_CLAMP_TO_EDGE 0x812F
-	GL_TEXTURE_MIN_LOD 0x813A
-	GL_TEXTURE_MAX_LOD 0x813B
-	GL_TEXTURE_BASE_LEVEL 0x813C
-	GL_TEXTURE_MAX_LEVEL 0x813D
-	GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8
-	GL_SINGLE_COLOR 0x81F9
-	GL_SEPARATE_SPECULAR_COLOR 0x81FA
-	GL_SMOOTH_POINT_SIZE_RANGE 0x0B12
-	GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13
-	GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22
-	GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23
-	GL_ALIASED_POINT_SIZE_RANGE 0x846D
-	GL_ALIASED_LINE_WIDTH_RANGE 0x846E
-	GL_PACK_SKIP_IMAGES 0x806B
-	GL_PACK_IMAGE_HEIGHT 0x806C
-	GL_UNPACK_SKIP_IMAGES 0x806D
-	GL_UNPACK_IMAGE_HEIGHT 0x806E
-	GL_TEXTURE_3D 0x806F
-	GL_PROXY_TEXTURE_3D 0x8070
-	GL_TEXTURE_DEPTH 0x8071
-	GL_TEXTURE_WRAP_R 0x8072
-	GL_MAX_3D_TEXTURE_SIZE 0x8073
-	GL_TEXTURE_BINDING_3D 0x806A
-	void glDrawRangeElements (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
-	void glTexImage3D (GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
-	void glTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels)
-	void glCopyTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
diff --git a/src/other/glew/auto/core/GL_VERSION_1_3 b/src/other/glew/auto/core/GL_VERSION_1_3
deleted file mode 100644
index 737ad7c..0000000
--- a/src/other/glew/auto/core/GL_VERSION_1_3
+++ /dev/null
@@ -1,146 +0,0 @@
-GL_VERSION_1_3
-http://www.opengl.org/documentation/specs/version1.3/glspec13.pdf
-
-	GL_TEXTURE0 0x84C0
-	GL_TEXTURE1 0x84C1
-	GL_TEXTURE2 0x84C2
-	GL_TEXTURE3 0x84C3
-	GL_TEXTURE4 0x84C4
-	GL_TEXTURE5 0x84C5
-	GL_TEXTURE6 0x84C6
-	GL_TEXTURE7 0x84C7
-	GL_TEXTURE8 0x84C8
-	GL_TEXTURE9 0x84C9
-	GL_TEXTURE10 0x84CA
-	GL_TEXTURE11 0x84CB
-	GL_TEXTURE12 0x84CC
-	GL_TEXTURE13 0x84CD
-	GL_TEXTURE14 0x84CE
-	GL_TEXTURE15 0x84CF
-	GL_TEXTURE16 0x84D0
-	GL_TEXTURE17 0x84D1
-	GL_TEXTURE18 0x84D2
-	GL_TEXTURE19 0x84D3
-	GL_TEXTURE20 0x84D4
-	GL_TEXTURE21 0x84D5
-	GL_TEXTURE22 0x84D6
-	GL_TEXTURE23 0x84D7
-	GL_TEXTURE24 0x84D8
-	GL_TEXTURE25 0x84D9
-	GL_TEXTURE26 0x84DA
-	GL_TEXTURE27 0x84DB
-	GL_TEXTURE28 0x84DC
-	GL_TEXTURE29 0x84DD
-	GL_TEXTURE30 0x84DE
-	GL_TEXTURE31 0x84DF
-	GL_ACTIVE_TEXTURE 0x84E0
-	GL_CLIENT_ACTIVE_TEXTURE 0x84E1
-	GL_MAX_TEXTURE_UNITS 0x84E2
-	GL_NORMAL_MAP 0x8511
-	GL_REFLECTION_MAP 0x8512
-	GL_TEXTURE_CUBE_MAP 0x8513
-	GL_TEXTURE_BINDING_CUBE_MAP 0x8514
-	GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
-	GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
-	GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
-	GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
-	GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
-	GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
-	GL_PROXY_TEXTURE_CUBE_MAP 0x851B
-	GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
-	GL_COMPRESSED_ALPHA 0x84E9
-	GL_COMPRESSED_LUMINANCE 0x84EA
-	GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB
-	GL_COMPRESSED_INTENSITY 0x84EC
-	GL_COMPRESSED_RGB 0x84ED
-	GL_COMPRESSED_RGBA 0x84EE
-	GL_TEXTURE_COMPRESSION_HINT 0x84EF
-	GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0
-	GL_TEXTURE_COMPRESSED 0x86A1
-	GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
-	GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
-	GL_MULTISAMPLE 0x809D
-	GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
-	GL_SAMPLE_ALPHA_TO_ONE 0x809F
-	GL_SAMPLE_COVERAGE 0x80A0
-	GL_SAMPLE_BUFFERS 0x80A8
-	GL_SAMPLES 0x80A9
-	GL_SAMPLE_COVERAGE_VALUE 0x80AA
-	GL_SAMPLE_COVERAGE_INVERT 0x80AB
-	GL_MULTISAMPLE_BIT 0x20000000
-	GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3
-	GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4
-	GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5
-	GL_TRANSPOSE_COLOR_MATRIX 0x84E6
-	GL_COMBINE 0x8570
-	GL_COMBINE_RGB 0x8571
-	GL_COMBINE_ALPHA 0x8572
-	GL_SOURCE0_RGB 0x8580
-	GL_SOURCE1_RGB 0x8581
-	GL_SOURCE2_RGB 0x8582
-	GL_SOURCE0_ALPHA 0x8588
-	GL_SOURCE1_ALPHA 0x8589
-	GL_SOURCE2_ALPHA 0x858A
-	GL_OPERAND0_RGB 0x8590
-	GL_OPERAND1_RGB 0x8591
-	GL_OPERAND2_RGB 0x8592
-	GL_OPERAND0_ALPHA 0x8598
-	GL_OPERAND1_ALPHA 0x8599
-	GL_OPERAND2_ALPHA 0x859A
-	GL_RGB_SCALE 0x8573
-	GL_ADD_SIGNED 0x8574
-	GL_INTERPOLATE 0x8575
-	GL_SUBTRACT 0x84E7
-	GL_CONSTANT 0x8576
-	GL_PRIMARY_COLOR 0x8577
-	GL_PREVIOUS 0x8578
-	GL_DOT3_RGB 0x86AE
-	GL_DOT3_RGBA 0x86AF
-	GL_CLAMP_TO_BORDER 0x812D
-
-	void glActiveTexture (GLenum texture)
-	void glClientActiveTexture (GLenum texture)
-	void glCompressedTexImage1D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data)
-	void glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
-	void glCompressedTexImage3D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data)
-	void glCompressedTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data)
-	void glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data)
-	void glCompressedTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data)
-	void glGetCompressedTexImage (GLenum target, GLint lod, GLvoid *img)
-	void glLoadTransposeMatrixd (const GLdouble m[16])
-	void glLoadTransposeMatrixf (const GLfloat m[16])
-	void glMultTransposeMatrixd (const GLdouble m[16])
-	void glMultTransposeMatrixf (const GLfloat m[16])
-	void glMultiTexCoord1d (GLenum target, GLdouble s)
-	void glMultiTexCoord1dv (GLenum target, const GLdouble *v)
-	void glMultiTexCoord1f (GLenum target, GLfloat s)
-	void glMultiTexCoord1fv (GLenum target, const GLfloat *v)
-	void glMultiTexCoord1i (GLenum target, GLint s)
-	void glMultiTexCoord1iv (GLenum target, const GLint *v)
-	void glMultiTexCoord1s (GLenum target, GLshort s)
-	void glMultiTexCoord1sv (GLenum target, const GLshort *v)
-	void glMultiTexCoord2d (GLenum target, GLdouble s, GLdouble t)
-	void glMultiTexCoord2dv (GLenum target, const GLdouble *v)
-	void glMultiTexCoord2f (GLenum target, GLfloat s, GLfloat t)
-	void glMultiTexCoord2fv (GLenum target, const GLfloat *v)
-	void glMultiTexCoord2i (GLenum target, GLint s, GLint t)
-	void glMultiTexCoord2iv (GLenum target, const GLint *v)
-	void glMultiTexCoord2s (GLenum target, GLshort s, GLshort t)
-	void glMultiTexCoord2sv (GLenum target, const GLshort *v)
-	void glMultiTexCoord3d (GLenum target, GLdouble s, GLdouble t, GLdouble r)
-	void glMultiTexCoord3dv (GLenum target, const GLdouble *v)
-	void glMultiTexCoord3f (GLenum target, GLfloat s, GLfloat t, GLfloat r)
-	void glMultiTexCoord3fv (GLenum target, const GLfloat *v)
-	void glMultiTexCoord3i (GLenum target, GLint s, GLint t, GLint r)
-	void glMultiTexCoord3iv (GLenum target, const GLint *v)
-	void glMultiTexCoord3s (GLenum target, GLshort s, GLshort t, GLshort r)
-	void glMultiTexCoord3sv (GLenum target, const GLshort *v)
-	void glMultiTexCoord4d (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
-	void glMultiTexCoord4dv (GLenum target, const GLdouble *v)
-	void glMultiTexCoord4f (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
-	void glMultiTexCoord4fv (GLenum target, const GLfloat *v)
-	void glMultiTexCoord4i (GLenum target, GLint s, GLint t, GLint r, GLint q)
-	void glMultiTexCoord4iv (GLenum target, const GLint *v)
-	void glMultiTexCoord4s (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
-	void glMultiTexCoord4sv (GLenum target, const GLshort *v)
-	void glSampleCoverage (GLclampf value, GLboolean invert)
diff --git a/src/other/glew/auto/core/GL_VERSION_1_4 b/src/other/glew/auto/core/GL_VERSION_1_4
deleted file mode 100644
index a48fc23..0000000
--- a/src/other/glew/auto/core/GL_VERSION_1_4
+++ /dev/null
@@ -1,89 +0,0 @@
-GL_VERSION_1_4
-http://www.opengl.org/documentation/specs/version1.4/glspec14.pdf
-
-	GL_GENERATE_MIPMAP 0x8191
-	GL_GENERATE_MIPMAP_HINT 0x8192
-	GL_DEPTH_COMPONENT16 0x81A5
-	GL_DEPTH_COMPONENT24 0x81A6
-	GL_DEPTH_COMPONENT32 0x81A7
-	GL_TEXTURE_DEPTH_SIZE 0x884A
-	GL_DEPTH_TEXTURE_MODE 0x884B
-	GL_TEXTURE_COMPARE_MODE 0x884C
-	GL_TEXTURE_COMPARE_FUNC 0x884D
-	GL_COMPARE_R_TO_TEXTURE 0x884E
-	GL_FOG_COORDINATE_SOURCE 0x8450
-	GL_FOG_COORDINATE 0x8451
-	GL_FRAGMENT_DEPTH 0x8452
-	GL_CURRENT_FOG_COORDINATE 0x8453
-	GL_FOG_COORDINATE_ARRAY_TYPE 0x8454
-	GL_FOG_COORDINATE_ARRAY_STRIDE 0x8455
-	GL_FOG_COORDINATE_ARRAY_POINTER 0x8456
-	GL_FOG_COORDINATE_ARRAY 0x8457
-	GL_POINT_SIZE_MIN 0x8126
-	GL_POINT_SIZE_MAX 0x8127
-	GL_POINT_FADE_THRESHOLD_SIZE 0x8128
-	GL_POINT_DISTANCE_ATTENUATION 0x8129
-	GL_COLOR_SUM 0x8458
-	GL_CURRENT_SECONDARY_COLOR 0x8459
-	GL_SECONDARY_COLOR_ARRAY_SIZE 0x845A
-	GL_SECONDARY_COLOR_ARRAY_TYPE 0x845B
-	GL_SECONDARY_COLOR_ARRAY_STRIDE 0x845C
-	GL_SECONDARY_COLOR_ARRAY_POINTER 0x845D
-	GL_SECONDARY_COLOR_ARRAY 0x845E
-	GL_BLEND_DST_RGB 0x80C8
-	GL_BLEND_SRC_RGB 0x80C9
-	GL_BLEND_DST_ALPHA 0x80CA
-	GL_BLEND_SRC_ALPHA 0x80CB
-	GL_INCR_WRAP 0x8507
-	GL_DECR_WRAP 0x8508
-	GL_TEXTURE_FILTER_CONTROL 0x8500
-	GL_TEXTURE_LOD_BIAS 0x8501
-	GL_MAX_TEXTURE_LOD_BIAS 0x84FD
-	GL_MIRRORED_REPEAT 0x8370
-	void glBlendEquation (GLenum mode)
-	void glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
-	void glFogCoordf (GLfloat coord)
-	void glFogCoordfv (const GLfloat *coord)
-	void glFogCoordd (GLdouble coord)
-	void glFogCoorddv (const GLdouble *coord)
-	void glFogCoordPointer (GLenum type, GLsizei stride, const GLvoid *pointer)
-	void glMultiDrawArrays (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount)
-	void glMultiDrawElements (GLenum mode, GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount)
-	void glPointParameteri (GLenum pname, GLint param)
-	void glPointParameteriv (GLenum pname, const GLint *params)
-	void glPointParameterf (GLenum pname, GLfloat param)
-	void glPointParameterfv (GLenum pname, const GLfloat *params)
-	void glSecondaryColor3b (GLbyte red, GLbyte green, GLbyte blue)
-	void glSecondaryColor3bv (const GLbyte *v)
-	void glSecondaryColor3d (GLdouble red, GLdouble green, GLdouble blue)
-	void glSecondaryColor3dv (const GLdouble *v)
-	void glSecondaryColor3f (GLfloat red, GLfloat green, GLfloat blue)
-	void glSecondaryColor3fv (const GLfloat *v)
-	void glSecondaryColor3i (GLint red, GLint green, GLint blue)
-	void glSecondaryColor3iv (const GLint *v)
-	void glSecondaryColor3s (GLshort red, GLshort green, GLshort blue)
-	void glSecondaryColor3sv (const GLshort *v)
-	void glSecondaryColor3ub (GLubyte red, GLubyte green, GLubyte blue)
-	void glSecondaryColor3ubv (const GLubyte *v)
-	void glSecondaryColor3ui (GLuint red, GLuint green, GLuint blue)
-	void glSecondaryColor3uiv (const GLuint *v)
-	void glSecondaryColor3us (GLushort red, GLushort green, GLushort blue)
-	void glSecondaryColor3usv (const GLushort *v)
-	void glSecondaryColorPointer (GLint size, GLenum type, GLsizei stride, GLvoid *pointer)
-	void glBlendFuncSeparate (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
-	void glWindowPos2d (GLdouble x, GLdouble y)
-	void glWindowPos2f (GLfloat x, GLfloat y)
-	void glWindowPos2i (GLint x, GLint y)
-	void glWindowPos2s (GLshort x, GLshort y)
-	void glWindowPos2dv (const GLdouble *p)
-	void glWindowPos2fv (const GLfloat *p)
-	void glWindowPos2iv (const GLint *p)
-	void glWindowPos2sv (const GLshort *p)
-	void glWindowPos3d (GLdouble x, GLdouble y, GLdouble z)
-	void glWindowPos3f (GLfloat x, GLfloat y, GLfloat z)
-	void glWindowPos3i (GLint x, GLint y, GLint z)
-	void glWindowPos3s (GLshort x, GLshort y, GLshort z)
-	void glWindowPos3dv (const GLdouble *p)
-	void glWindowPos3fv (const GLfloat *p)
-	void glWindowPos3iv (const GLint *p)
-	void glWindowPos3sv (const GLshort *p)
diff --git a/src/other/glew/auto/core/GL_VERSION_1_5 b/src/other/glew/auto/core/GL_VERSION_1_5
deleted file mode 100644
index d1ec8d4..0000000
--- a/src/other/glew/auto/core/GL_VERSION_1_5
+++ /dev/null
@@ -1,74 +0,0 @@
-GL_VERSION_1_5
-http://www.opengl.org/documentation/specs/version1.5/glspec15.pdf
-
-	GL_BUFFER_SIZE 0x8764
-	GL_BUFFER_USAGE 0x8765
-	GL_QUERY_COUNTER_BITS 0x8864
-	GL_CURRENT_QUERY 0x8865
-	GL_QUERY_RESULT 0x8866
-	GL_QUERY_RESULT_AVAILABLE 0x8867
-	GL_ARRAY_BUFFER 0x8892
-	GL_ELEMENT_ARRAY_BUFFER 0x8893
-	GL_ARRAY_BUFFER_BINDING 0x8894
-	GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895
-	GL_VERTEX_ARRAY_BUFFER_BINDING 0x8896
-	GL_NORMAL_ARRAY_BUFFER_BINDING 0x8897
-	GL_COLOR_ARRAY_BUFFER_BINDING 0x8898
-	GL_INDEX_ARRAY_BUFFER_BINDING 0x8899
-	GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING 0x889A
-	GL_EDGE_FLAG_ARRAY_BUFFER_BINDING 0x889B
-	GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING 0x889C
-	GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING 0x889D
-	GL_WEIGHT_ARRAY_BUFFER_BINDING 0x889E
-	GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
-	GL_READ_ONLY 0x88B8
-	GL_WRITE_ONLY 0x88B9
-	GL_READ_WRITE 0x88BA
-	GL_BUFFER_ACCESS 0x88BB
-	GL_BUFFER_MAPPED 0x88BC
-	GL_BUFFER_MAP_POINTER 0x88BD
-	GL_STREAM_DRAW 0x88E0
-	GL_STREAM_READ 0x88E1
-	GL_STREAM_COPY 0x88E2
-	GL_STATIC_DRAW 0x88E4
-	GL_STATIC_READ 0x88E5
-	GL_STATIC_COPY 0x88E6
-	GL_DYNAMIC_DRAW 0x88E8
-	GL_DYNAMIC_READ 0x88E9
-	GL_DYNAMIC_COPY 0x88EA
-	GL_SAMPLES_PASSED 0x8914
-	GL_FOG_COORD_SRC GL_FOG_COORDINATE_SOURCE
-	GL_FOG_COORD GL_FOG_COORDINATE
-	GL_CURRENT_FOG_COORD GL_CURRENT_FOG_COORDINATE
-	GL_FOG_COORD_ARRAY_TYPE GL_FOG_COORDINATE_ARRAY_TYPE
-	GL_FOG_COORD_ARRAY_STRIDE GL_FOG_COORDINATE_ARRAY_STRIDE
-	GL_FOG_COORD_ARRAY_POINTER GL_FOG_COORDINATE_ARRAY_POINTER
-	GL_FOG_COORD_ARRAY GL_FOG_COORDINATE_ARRAY
-	GL_FOG_COORD_ARRAY_BUFFER_BINDING GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING
-	GL_SRC0_RGB GL_SOURCE0_RGB
-	GL_SRC1_RGB GL_SOURCE1_RGB
-	GL_SRC2_RGB GL_SOURCE2_RGB
-	GL_SRC0_ALPHA GL_SOURCE0_ALPHA
-	GL_SRC1_ALPHA GL_SOURCE1_ALPHA
-	GL_SRC2_ALPHA GL_SOURCE2_ALPHA
-	void glGenQueries (GLsizei n, GLuint* ids)
-	void glDeleteQueries (GLsizei n, const GLuint* ids)
-	GLboolean glIsQuery (GLuint id)
-	void glBeginQuery (GLenum target, GLuint id)
-	void glEndQuery (GLenum target)
-	void glGetQueryiv (GLenum target, GLenum pname, GLint* params)
-	void glGetQueryObjectiv (GLuint id, GLenum pname, GLint* params)
-	void glGetQueryObjectuiv (GLuint id, GLenum pname, GLuint* params)
-	void glBindBuffer (GLenum target, GLuint buffer)
-	void glDeleteBuffers (GLsizei n, const GLuint* buffers)
-	void glGenBuffers (GLsizei n, GLuint* buffers)
-	GLboolean glIsBuffer (GLuint buffer)
-	void glBufferData (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage)
-	void glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data)
-	void glGetBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, GLvoid* data)
-	GLvoid* glMapBuffer (GLenum target, GLenum access)
-	GLboolean glUnmapBuffer (GLenum target)
-	void glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params)
-	void glGetBufferPointerv (GLenum target, GLenum pname, GLvoid** params)
-	typedef ptrdiff_t GLsizeiptr
-	typedef ptrdiff_t GLintptr
diff --git a/src/other/glew/auto/core/GL_VERSION_2_0 b/src/other/glew/auto/core/GL_VERSION_2_0
deleted file mode 100644
index b1b5902..0000000
--- a/src/other/glew/auto/core/GL_VERSION_2_0
+++ /dev/null
@@ -1,181 +0,0 @@
-GL_VERSION_2_0
-http://www.opengl.org/documentation/specs/version2.0/glspec20.pdf
-
-	GL_BLEND_EQUATION_RGB GL_BLEND_EQUATION
-	GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
-	GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
-	GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
-	GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
-	GL_CURRENT_VERTEX_ATTRIB 0x8626
-	GL_VERTEX_PROGRAM_POINT_SIZE 0x8642
-	GL_VERTEX_PROGRAM_TWO_SIDE 0x8643
-	GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
-	GL_STENCIL_BACK_FUNC 0x8800
-	GL_STENCIL_BACK_FAIL 0x8801
-	GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802
-	GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803
-	GL_MAX_DRAW_BUFFERS 0x8824
-	GL_DRAW_BUFFER0 0x8825
-	GL_DRAW_BUFFER1 0x8826
-	GL_DRAW_BUFFER2 0x8827
-	GL_DRAW_BUFFER3 0x8828
-	GL_DRAW_BUFFER4 0x8829
-	GL_DRAW_BUFFER5 0x882A
-	GL_DRAW_BUFFER6 0x882B
-	GL_DRAW_BUFFER7 0x882C
-	GL_DRAW_BUFFER8 0x882D
-	GL_DRAW_BUFFER9 0x882E
-	GL_DRAW_BUFFER10 0x882F
-	GL_DRAW_BUFFER11 0x8830
-	GL_DRAW_BUFFER12 0x8831
-	GL_DRAW_BUFFER13 0x8832
-	GL_DRAW_BUFFER14 0x8833
-	GL_DRAW_BUFFER15 0x8834
-	GL_BLEND_EQUATION_ALPHA 0x883D
-	GL_POINT_SPRITE 0x8861
-	GL_COORD_REPLACE 0x8862
-	GL_MAX_VERTEX_ATTRIBS 0x8869
-	GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
-	GL_MAX_TEXTURE_COORDS 0x8871
-	GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
-	GL_FRAGMENT_SHADER 0x8B30
-	GL_VERTEX_SHADER 0x8B31
-	GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8B49
-	GL_MAX_VERTEX_UNIFORM_COMPONENTS 0x8B4A
-	GL_MAX_VARYING_FLOATS 0x8B4B
-	GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
-	GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
-	GL_SHADER_TYPE 0x8B4F
-	GL_FLOAT_VEC2 0x8B50
-	GL_FLOAT_VEC3 0x8B51
-	GL_FLOAT_VEC4 0x8B52
-	GL_INT_VEC2 0x8B53
-	GL_INT_VEC3 0x8B54
-	GL_INT_VEC4 0x8B55
-	GL_BOOL 0x8B56
-	GL_BOOL_VEC2 0x8B57
-	GL_BOOL_VEC3 0x8B58
-	GL_BOOL_VEC4 0x8B59
-	GL_FLOAT_MAT2 0x8B5A
-	GL_FLOAT_MAT3 0x8B5B
-	GL_FLOAT_MAT4 0x8B5C
-	GL_SAMPLER_1D 0x8B5D
-	GL_SAMPLER_2D 0x8B5E
-	GL_SAMPLER_3D 0x8B5F
-	GL_SAMPLER_CUBE 0x8B60
-	GL_SAMPLER_1D_SHADOW 0x8B61
-	GL_SAMPLER_2D_SHADOW 0x8B62
-	GL_DELETE_STATUS 0x8B80
-	GL_COMPILE_STATUS 0x8B81
-	GL_LINK_STATUS 0x8B82
-	GL_VALIDATE_STATUS 0x8B83
-	GL_INFO_LOG_LENGTH 0x8B84
-	GL_ATTACHED_SHADERS 0x8B85
-	GL_ACTIVE_UNIFORMS 0x8B86
-	GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87
-	GL_SHADER_SOURCE_LENGTH 0x8B88
-	GL_ACTIVE_ATTRIBUTES 0x8B89
-	GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A
-	GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8B8B
-	GL_SHADING_LANGUAGE_VERSION 0x8B8C
-	GL_CURRENT_PROGRAM 0x8B8D
-	GL_POINT_SPRITE_COORD_ORIGIN 0x8CA0
-	GL_LOWER_LEFT 0x8CA1
-	GL_UPPER_LEFT 0x8CA2
-	GL_STENCIL_BACK_REF 0x8CA3
-	GL_STENCIL_BACK_VALUE_MASK 0x8CA4
-	GL_STENCIL_BACK_WRITEMASK 0x8CA5
-	typedef char GLchar
-	void glBlendEquationSeparate (GLenum, GLenum)
-	void glDrawBuffers (GLsizei n, const GLenum* bufs)
-	void glStencilOpSeparate (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
-	void glStencilFuncSeparate (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask)
-	void glStencilMaskSeparate (GLenum, GLuint)
-	void glAttachShader (GLuint program, GLuint shader)
-	void glBindAttribLocation (GLuint program, GLuint index, const GLchar* name)
-	void glCompileShader (GLuint shader)
-	GLuint glCreateProgram (void)
-	GLuint glCreateShader (GLenum type)
-	void glDeleteProgram (GLuint program)
-	void glDeleteShader (GLuint shader)
-	void glDetachShader (GLuint program, GLuint shader)
-	void glDisableVertexAttribArray (GLuint)
-	void glEnableVertexAttribArray (GLuint)
-	void glGetActiveAttrib (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name)
-	void glGetActiveUniform (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name)
-	void glGetAttachedShaders (GLuint program, GLsizei maxCount, GLsizei* count, GLuint* shaders)
-	GLint glGetAttribLocation (GLuint program, const GLchar* name)
-	void glGetProgramiv (GLuint program, GLenum pname, GLint* param)
-	void glGetProgramInfoLog (GLuint program, GLsizei bufSize, GLsizei* length, GLchar* infoLog)
-	void glGetShaderiv (GLuint shader, GLenum pname, GLint* param)
-	void glGetShaderInfoLog (GLuint shader, GLsizei bufSize, GLsizei* length, GLchar* infoLog)
-	void glShaderSource (GLuint shader, GLsizei count, const GLchar** strings, const GLint* lengths)
-	GLint glGetUniformLocation (GLuint program, const GLchar* name)
-	void glGetUniformfv (GLuint program, GLint location, GLfloat* params)
-	void glGetUniformiv (GLuint program, GLint location, GLint* params)
-	void glGetVertexAttribdv (GLuint, GLenum, GLdouble*)
-	void glGetVertexAttribfv (GLuint, GLenum, GLfloat*)
-	void glGetVertexAttribiv (GLuint, GLenum, GLint*)
-	void glGetVertexAttribPointerv (GLuint, GLenum, GLvoid*)
-	GLboolean glIsProgram (GLuint program)
-	GLboolean glIsShader (GLuint shader)
-	void glLinkProgram (GLuint program)
-	void glGetShaderSource (GLint obj, GLsizei maxLength, GLsizei* length, GLchar* source)
-	void glUseProgram (GLuint program)
-	void glUniform1f (GLint location, GLfloat v0)
-	void glUniform1fv (GLint location, GLsizei count, const GLfloat* value)
-	void glUniform1i (GLint location, GLint v0)
-	void glUniform1iv (GLint location, GLsizei count, const GLint* value)
-	void glUniform2f (GLint location, GLfloat v0, GLfloat v1)
-	void glUniform2fv (GLint location, GLsizei count, const GLfloat* value)
-	void glUniform2i (GLint location, GLint v0, GLint v1)
-	void glUniform2iv (GLint location, GLsizei count, const GLint* value)
-	void glUniform3f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
-	void glUniform3fv (GLint location, GLsizei count, const GLfloat* value)
-	void glUniform3i (GLint location, GLint v0, GLint v1, GLint v2)
-	void glUniform3iv (GLint location, GLsizei count, const GLint* value)
-	void glUniform4f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
-	void glUniform4fv (GLint location, GLsizei count, const GLfloat* value)
-	void glUniform4i (GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
-	void glUniform4iv (GLint location, GLsizei count, const GLint* value)
-	void glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glValidateProgram (GLuint program)
-	void glVertexAttrib1d (GLuint index, GLdouble x)
-	void glVertexAttrib1dv (GLuint index, const GLdouble* v)
-	void glVertexAttrib1f (GLuint index, GLfloat x)
-	void glVertexAttrib1fv (GLuint index, const GLfloat* v)
-	void glVertexAttrib1s (GLuint index, GLshort x)
-	void glVertexAttrib1sv (GLuint index, const GLshort* v)
-	void glVertexAttrib2d (GLuint index, GLdouble x, GLdouble y)
-	void glVertexAttrib2dv (GLuint index, const GLdouble* v)
-	void glVertexAttrib2f (GLuint index, GLfloat x, GLfloat y)
-	void glVertexAttrib2fv (GLuint index, const GLfloat* v)
-	void glVertexAttrib2s (GLuint index, GLshort x, GLshort y)
-	void glVertexAttrib2sv (GLuint index, const GLshort* v)
-	void glVertexAttrib3d (GLuint index, GLdouble x, GLdouble y, GLdouble z)
-	void glVertexAttrib3dv (GLuint index, const GLdouble* v)
-	void glVertexAttrib3f (GLuint index, GLfloat x, GLfloat y, GLfloat z)
-	void glVertexAttrib3fv (GLuint index, const GLfloat* v)
-	void glVertexAttrib3s (GLuint index, GLshort x, GLshort y, GLshort z)
-	void glVertexAttrib3sv (GLuint index, const GLshort* v)
-	void glVertexAttrib4Nbv (GLuint index, const GLbyte* v)
-	void glVertexAttrib4Niv (GLuint index, const GLint* v)
-	void glVertexAttrib4Nsv (GLuint index, const GLshort* v)
-	void glVertexAttrib4Nub (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
-	void glVertexAttrib4Nubv (GLuint index, const GLubyte* v)
-	void glVertexAttrib4Nuiv (GLuint index, const GLuint* v)
-	void glVertexAttrib4Nusv (GLuint index, const GLushort* v)
-	void glVertexAttrib4bv (GLuint index, const GLbyte* v)
-	void glVertexAttrib4d (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-	void glVertexAttrib4dv (GLuint index, const GLdouble* v)
-	void glVertexAttrib4f (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glVertexAttrib4fv (GLuint index, const GLfloat* v)
-	void glVertexAttrib4iv (GLuint index, const GLint* v)
-	void glVertexAttrib4s (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
-	void glVertexAttrib4sv (GLuint index, const GLshort* v)
-	void glVertexAttrib4ubv (GLuint index, const GLubyte* v)
-	void glVertexAttrib4uiv (GLuint index, const GLuint* v)
-	void glVertexAttrib4usv (GLuint index, const GLushort* v)
-	void glVertexAttribPointer (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* pointer)
diff --git a/src/other/glew/auto/core/GL_VERSION_2_1 b/src/other/glew/auto/core/GL_VERSION_2_1
deleted file mode 100644
index 51aa95b..0000000
--- a/src/other/glew/auto/core/GL_VERSION_2_1
+++ /dev/null
@@ -1,32 +0,0 @@
-GL_VERSION_2_1
-http://www.opengl.org/documentation/specs/version2.1/glspec21.pdf
-
-	GL_CURRENT_RASTER_SECONDARY_COLOR 0x845F
-	GL_PIXEL_PACK_BUFFER 0x88EB
-	GL_PIXEL_UNPACK_BUFFER 0x88EC
-	GL_PIXEL_PACK_BUFFER_BINDING 0x88ED
-	GL_PIXEL_UNPACK_BUFFER_BINDING 0x88EF
-	GL_FLOAT_MAT2x3 0x8B65
-	GL_FLOAT_MAT2x4 0x8B66
-	GL_FLOAT_MAT3x2 0x8B67
-	GL_FLOAT_MAT3x4 0x8B68
-	GL_FLOAT_MAT4x2 0x8B69
-	GL_FLOAT_MAT4x3 0x8B6A
-	GL_SRGB 0x8C40
-	GL_SRGB8 0x8C41
-	GL_SRGB_ALPHA 0x8C42
-	GL_SRGB8_ALPHA8 0x8C43
-	GL_SLUMINANCE_ALPHA 0x8C44
-	GL_SLUMINANCE8_ALPHA8 0x8C45
-	GL_SLUMINANCE 0x8C46
-	GL_SLUMINANCE8 0x8C47
-	GL_COMPRESSED_SRGB 0x8C48
-	GL_COMPRESSED_SRGB_ALPHA 0x8C49
-	GL_COMPRESSED_SLUMINANCE 0x8C4A
-	GL_COMPRESSED_SLUMINANCE_ALPHA 0x8C4B
-	void glUniformMatrix2x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
-	void glUniformMatrix3x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
-	void glUniformMatrix2x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
-	void glUniformMatrix4x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
-	void glUniformMatrix3x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
-	void glUniformMatrix4x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value)
diff --git a/src/other/glew/auto/core/GL_VERSION_3_0 b/src/other/glew/auto/core/GL_VERSION_3_0
deleted file mode 100644
index 1a362f0..0000000
--- a/src/other/glew/auto/core/GL_VERSION_3_0
+++ /dev/null
@@ -1,166 +0,0 @@
-GL_VERSION_3_0
-http://www.opengl.org/registry/doc/glspec30.20080811.pdf
-
-	GL_COMPARE_REF_TO_TEXTURE GL_COMPARE_R_TO_TEXTURE_ARB
-	GL_CLIP_DISTANCE0 GL_CLIP_PLANE0
-	GL_CLIP_DISTANCE1 GL_CLIP_PLANE1
-	GL_CLIP_DISTANCE2 GL_CLIP_PLANE2
-	GL_CLIP_DISTANCE3 GL_CLIP_PLANE3
-	GL_CLIP_DISTANCE4 GL_CLIP_PLANE4
-	GL_CLIP_DISTANCE5 GL_CLIP_PLANE5
-	GL_MAX_CLIP_DISTANCES GL_MAX_CLIP_PLANES
-	GL_MAJOR_VERSION 0x821B
-	GL_MINOR_VERSION 0x821C
-	GL_NUM_EXTENSIONS 0x821D
-	GL_CONTEXT_FLAGS 0x821E
-	GL_DEPTH_BUFFER 0x8223
-	GL_STENCIL_BUFFER 0x8224
-	GL_COMPRESSED_RED 0x8225
-	GL_COMPRESSED_RG 0x8226
-	GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT 0x0001
-	GL_RGBA32F 0x8814
-	GL_RGB32F 0x8815
-	GL_RGBA16F 0x881A
-	GL_RGB16F 0x881B
-	GL_VERTEX_ATTRIB_ARRAY_INTEGER 0x88FD
-	GL_MAX_ARRAY_TEXTURE_LAYERS 0x88FF
-	GL_MIN_PROGRAM_TEXEL_OFFSET 0x8904
-	GL_MAX_PROGRAM_TEXEL_OFFSET 0x8905
-	GL_CLAMP_VERTEX_COLOR 0x891A
-	GL_CLAMP_FRAGMENT_COLOR 0x891B
-	GL_CLAMP_READ_COLOR 0x891C
-	GL_FIXED_ONLY 0x891D
-	GL_MAX_VARYING_COMPONENTS GL_MAX_VARYING_FLOATS
-	GL_TEXTURE_RED_TYPE 0x8C10
-	GL_TEXTURE_GREEN_TYPE 0x8C11
-	GL_TEXTURE_BLUE_TYPE 0x8C12
-	GL_TEXTURE_ALPHA_TYPE 0x8C13
-	GL_TEXTURE_LUMINANCE_TYPE 0x8C14
-	GL_TEXTURE_INTENSITY_TYPE 0x8C15
-	GL_TEXTURE_DEPTH_TYPE 0x8C16
-	GL_UNSIGNED_NORMALIZED 0x8C17
-	GL_TEXTURE_1D_ARRAY 0x8C18
-	GL_PROXY_TEXTURE_1D_ARRAY 0x8C19
-	GL_TEXTURE_2D_ARRAY 0x8C1A
-	GL_PROXY_TEXTURE_2D_ARRAY 0x8C1B
-	GL_TEXTURE_BINDING_1D_ARRAY 0x8C1C
-	GL_TEXTURE_BINDING_2D_ARRAY 0x8C1D
-	GL_R11F_G11F_B10F 0x8C3A
-	GL_UNSIGNED_INT_10F_11F_11F_REV 0x8C3B
-	GL_RGB9_E5 0x8C3D
-	GL_UNSIGNED_INT_5_9_9_9_REV 0x8C3E
-	GL_TEXTURE_SHARED_SIZE 0x8C3F
-	GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH 0x8C76
-	GL_TRANSFORM_FEEDBACK_BUFFER_MODE 0x8C7F
-	GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS 0x8C80
-	GL_TRANSFORM_FEEDBACK_VARYINGS 0x8C83
-	GL_TRANSFORM_FEEDBACK_BUFFER_START 0x8C84
-	GL_TRANSFORM_FEEDBACK_BUFFER_SIZE 0x8C85
-	GL_PRIMITIVES_GENERATED 0x8C87
-	GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN 0x8C88
-	GL_RASTERIZER_DISCARD 0x8C89
-	GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS 0x8C8A
-	GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS 0x8C8B
-	GL_INTERLEAVED_ATTRIBS 0x8C8C
-	GL_SEPARATE_ATTRIBS 0x8C8D
-	GL_TRANSFORM_FEEDBACK_BUFFER 0x8C8E
-	GL_TRANSFORM_FEEDBACK_BUFFER_BINDING 0x8C8F
-	GL_RGBA32UI 0x8D70
-	GL_RGB32UI 0x8D71
-	GL_RGBA16UI 0x8D76
-	GL_RGB16UI 0x8D77
-	GL_RGBA8UI 0x8D7C
-	GL_RGB8UI 0x8D7D
-	GL_RGBA32I 0x8D82
-	GL_RGB32I 0x8D83
-	GL_RGBA16I 0x8D88
-	GL_RGB16I 0x8D89
-	GL_RGBA8I 0x8D8E
-	GL_RGB8I 0x8D8F
-	GL_RED_INTEGER 0x8D94
-	GL_GREEN_INTEGER 0x8D95
-	GL_BLUE_INTEGER 0x8D96
-	GL_ALPHA_INTEGER 0x8D97
-	GL_RGB_INTEGER 0x8D98
-	GL_RGBA_INTEGER 0x8D99
-	GL_BGR_INTEGER 0x8D9A
-	GL_BGRA_INTEGER 0x8D9B
-	GL_SAMPLER_1D_ARRAY 0x8DC0
-	GL_SAMPLER_2D_ARRAY 0x8DC1
-	GL_SAMPLER_1D_ARRAY_SHADOW 0x8DC3
-	GL_SAMPLER_2D_ARRAY_SHADOW 0x8DC4
-	GL_SAMPLER_CUBE_SHADOW 0x8DC5
-	GL_UNSIGNED_INT_VEC2 0x8DC6
-	GL_UNSIGNED_INT_VEC3 0x8DC7
-	GL_UNSIGNED_INT_VEC4 0x8DC8
-	GL_INT_SAMPLER_1D 0x8DC9
-	GL_INT_SAMPLER_2D 0x8DCA
-	GL_INT_SAMPLER_3D 0x8DCB
-	GL_INT_SAMPLER_CUBE 0x8DCC
-	GL_INT_SAMPLER_1D_ARRAY 0x8DCE
-	GL_INT_SAMPLER_2D_ARRAY 0x8DCF
-	GL_UNSIGNED_INT_SAMPLER_1D 0x8DD1
-	GL_UNSIGNED_INT_SAMPLER_2D 0x8DD2
-	GL_UNSIGNED_INT_SAMPLER_3D 0x8DD3
-	GL_UNSIGNED_INT_SAMPLER_CUBE 0x8DD4
-	GL_UNSIGNED_INT_SAMPLER_1D_ARRAY 0x8DD6
-	GL_UNSIGNED_INT_SAMPLER_2D_ARRAY 0x8DD7
-	GL_QUERY_WAIT 0x8E13
-	GL_QUERY_NO_WAIT 0x8E14
-	GL_QUERY_BY_REGION_WAIT 0x8E15
-	GL_QUERY_BY_REGION_NO_WAIT 0x8E16
-	void glColorMaski (GLuint, GLboolean, GLboolean, GLboolean, GLboolean)
-	void glGetBooleani_v (GLenum, GLuint, GLboolean*)
-	void glEnablei (GLenum, GLuint)
-	void glDisablei (GLenum, GLuint)
-	GLboolean glIsEnabledi (GLenum, GLuint)
-	void glBeginTransformFeedback (GLenum)
-	void glEndTransformFeedback (void)
-	void glTransformFeedbackVaryings (GLuint, GLsizei, const GLchar **, GLenum)
-	void glGetTransformFeedbackVarying (GLuint, GLuint, GLint*)
-	void glClampColor (GLenum, GLenum)
-	void glBeginConditionalRender (GLuint, GLenum)
-	void glEndConditionalRender (void)
-	void glVertexAttribI1i (GLuint, GLint)
-	void glVertexAttribI2i (GLuint, GLint, GLint)
-	void glVertexAttribI3i (GLuint, GLint, GLint, GLint)
-	void glVertexAttribI4i (GLuint, GLint, GLint, GLint, GLint)
-	void glVertexAttribI1ui (GLuint, GLuint)
-	void glVertexAttribI2ui (GLuint, GLuint, GLuint)
-	void glVertexAttribI3ui (GLuint, GLuint, GLuint, GLuint)
-	void glVertexAttribI4ui (GLuint, GLuint, GLuint, GLuint, GLuint)
-	void glVertexAttribI1iv (GLuint, const GLint*)
-	void glVertexAttribI2iv (GLuint, const GLint*)
-	void glVertexAttribI3iv (GLuint, const GLint*)
-	void glVertexAttribI4iv (GLuint, const GLint*)
-	void glVertexAttribI1uiv (GLuint, const GLuint*)
-	void glVertexAttribI2uiv (GLuint, const GLuint*)
-	void glVertexAttribI3uiv (GLuint, const GLuint*)
-	void glVertexAttribI4uiv (GLuint, const GLuint*)
-	void glVertexAttribI4bv (GLuint, const GLbyte*)
-	void glVertexAttribI4sv (GLuint, const GLshort*)
-	void glVertexAttribI4ubv (GLuint, const GLubyte*)
-	void glVertexAttribI4usv (GLuint, const GLushort*)
-	void glVertexAttribIPointer (GLuint, GLint, GLenum, GLsizei, const GLvoid*)
-	void glGetVertexAttribIiv (GLuint, GLenum, GLint*)
-	void glGetVertexAttribIuiv (GLuint, GLenum, GLuint*)
-	void glGetUniformuiv (GLuint, GLint, GLuint*)
-	void glBindFragDataLocation (GLuint, GLuint, const GLchar*)
-	GLint glGetFragDataLocation (GLuint, const GLchar*)
-	void glUniform1ui (GLint, GLuint)
-	void glUniform2ui (GLint, GLuint, GLuint)
-	void glUniform3ui (GLint, GLuint, GLuint, GLuint)
-	void glUniform4ui (GLint, GLuint, GLuint, GLuint, GLuint)
-	void glUniform1uiv (GLint, GLsizei, const GLuint*)
-	void glUniform2uiv (GLint, GLsizei, const GLuint*)
-	void glUniform3uiv (GLint, GLsizei, const GLuint*)
-	void glUniform4uiv (GLint, GLsizei, const GLuint*)
-	void glTexParameterIiv (GLenum, GLenum, const GLint*)
-	void glTexParameterIuiv (GLenum, GLenum, const GLuint*)
-	void glGetTexParameterIiv (GLenum, GLenum, GLint*)
-	void glGetTexParameterIuiv (GLenum, GLenum, GLuint*)
-	void glClearBufferiv (GLenum, GLint, const GLint*)
-	void glClearBufferuiv (GLenum, GLint, const GLuint*)
-	void glClearBufferfv (GLenum, GLint, const GLfloat*)
-	void glClearBufferfi (GLenum, GLint, GLfloat, GLint)
-	const GLubyte* glGetStringi (GLenum, GLuint)
diff --git a/src/other/glew/auto/core/GL_VERSION_3_1 b/src/other/glew/auto/core/GL_VERSION_3_1
deleted file mode 100644
index 3e387a3..0000000
--- a/src/other/glew/auto/core/GL_VERSION_3_1
+++ /dev/null
@@ -1,41 +0,0 @@
-GL_VERSION_3_1
-http://www.opengl.org/registry/doc/glspec30.20080811.pdf
-
-	GL_SAMPLER_2D_RECT 0x8B63
-	GL_SAMPLER_2D_RECT_SHADOW 0x8B64
-	GL_SAMPLER_BUFFER 0x8DC2
-	GL_INT_SAMPLER_2D_RECT 0x8DCD
-	GL_INT_SAMPLER_BUFFER 0x8DD0
-	GL_UNSIGNED_INT_SAMPLER_2D_RECT 0x8DD5
-	GL_UNSIGNED_INT_SAMPLER_BUFFER 0x8DD8
-	GL_TEXTURE_BUFFER 0x8C2A
-	GL_MAX_TEXTURE_BUFFER_SIZE 0x8C2B
-	GL_TEXTURE_BINDING_BUFFER 0x8C2C
-	GL_TEXTURE_BUFFER_DATA_STORE_BINDING 0x8C2D
-	GL_TEXTURE_BUFFER_FORMAT 0x8C2E
-	GL_TEXTURE_RECTANGLE 0x84F5
-	GL_TEXTURE_BINDING_RECTANGLE 0x84F6
-	GL_PROXY_TEXTURE_RECTANGLE 0x84F7
-	GL_MAX_RECTANGLE_TEXTURE_SIZE 0x84F8
-	GL_RED_SNORM 0x8F90
-	GL_RG_SNORM 0x8F91
-	GL_RGB_SNORM 0x8F92
-	GL_RGBA_SNORM 0x8F93
-	GL_R8_SNORM 0x8F94
-	GL_RG8_SNORM 0x8F95
-	GL_RGB8_SNORM 0x8F96
-	GL_RGBA8_SNORM 0x8F97
-	GL_R16_SNORM 0x8F98
-	GL_RG16_SNORM 0x8F99
-	GL_RGB16_SNORM 0x8F9A
-	GL_RGBA16_SNORM 0x8F9B
-	GL_SIGNED_NORMALIZED 0x8F9C
-	GL_PRIMITIVE_RESTART 0x8F9D
-	GL_PRIMITIVE_RESTART_INDEX 0x8F9E
-	GL_BUFFER_ACCESS_FLAGS 0x911F
-	GL_BUFFER_MAP_LENGTH 0x9120
-	GL_BUFFER_MAP_OFFSET 0x9121
-	void glDrawArraysInstanced (GLenum, GLint, GLsizei, GLsizei)
-	void glDrawElementsInstanced (GLenum, GLsizei, GLenum, const GLvoid*, GLsizei)
-	void glTexBuffer (GLenum, GLenum, GLuint)
-	void glPrimitiveRestartIndex (GLuint)
diff --git a/src/other/glew/auto/core/GL_VERSION_3_2 b/src/other/glew/auto/core/GL_VERSION_3_2
deleted file mode 100644
index 81ba55d..0000000
--- a/src/other/glew/auto/core/GL_VERSION_3_2
+++ /dev/null
@@ -1,28 +0,0 @@
-GL_VERSION_3_2
-http://www.opengl.org/registry/doc/glspec32.core.20090803.pdf
-
- 	GL_CONTEXT_CORE_PROFILE_BIT 0x00000001
-	GL_CONTEXT_COMPATIBILITY_PROFILE_BIT 0x00000002
-	GL_LINES_ADJACENCY 0x000A
-	GL_LINE_STRIP_ADJACENCY 0x000B
-	GL_TRIANGLES_ADJACENCY 0x000C
-	GL_TRIANGLE_STRIP_ADJACENCY 0x000D
-	GL_PROGRAM_POINT_SIZE 0x8642
-	GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS 0x8C29
-	GL_FRAMEBUFFER_ATTACHMENT_LAYERED 0x8DA7
-	GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS 0x8DA8
-	GL_GEOMETRY_SHADER 0x8DD9
-	GL_GEOMETRY_VERTICES_OUT 0x8916
-	GL_GEOMETRY_INPUT_TYPE 0x8917
-	GL_GEOMETRY_OUTPUT_TYPE 0x8918
-	GL_MAX_GEOMETRY_UNIFORM_COMPONENTS 0x8DDF
-	GL_MAX_GEOMETRY_OUTPUT_VERTICES 0x8DE0
-	GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS 0x8DE1
-	GL_MAX_VERTEX_OUTPUT_COMPONENTS 0x9122
-	GL_MAX_GEOMETRY_INPUT_COMPONENTS 0x9123
-	GL_MAX_GEOMETRY_OUTPUT_COMPONENTS 0x9124
-	GL_MAX_FRAGMENT_INPUT_COMPONENTS 0x9125
-	GL_CONTEXT_PROFILE_MASK 0x9126
-	void glGetInteger64i_v (GLenum, GLuint, GLint64 *)
-	void glGetBufferParameteri64v (GLenum, GLenum, GLint64 *)
-	void glFramebufferTexture (GLenum, GLenum, GLuint, GLint)
diff --git a/src/other/glew/auto/core/GL_VERSION_3_3 b/src/other/glew/auto/core/GL_VERSION_3_3
deleted file mode 100644
index 799f530..0000000
--- a/src/other/glew/auto/core/GL_VERSION_3_3
+++ /dev/null
@@ -1,11 +0,0 @@
-GL_VERSION_3_3
-http://www.opengl.org/registry/doc/glspec32.core.20090803.pdf
-
-	GL_TEXTURE_SWIZZLE_R 0x8E42
-	GL_TEXTURE_SWIZZLE_G 0x8E43
-	GL_TEXTURE_SWIZZLE_B 0x8E44
-	GL_TEXTURE_SWIZZLE_A 0x8E45
-	GL_TEXTURE_SWIZZLE_RGBA 0x8E46
-	GL_RGB10_A2UI 0x906F
-	GL_ANY_SAMPLES_PASSED 0x8C2F
-	GL_VERTEX_ATTRIB_ARRAY_DIVISOR 0x88FE
diff --git a/src/other/glew/auto/core/GL_VERSION_4_0 b/src/other/glew/auto/core/GL_VERSION_4_0
deleted file mode 100644
index 9a118c9..0000000
--- a/src/other/glew/auto/core/GL_VERSION_4_0
+++ /dev/null
@@ -1,25 +0,0 @@
-GL_VERSION_4_0
-http://www.opengl.org/registry/doc/glspec32.core.20090803.pdf
-
-	GL_SAMPLE_SHADING 0x8C36
-	GL_MIN_SAMPLE_SHADING_VALUE 0x8C37
-	GL_GEOMETRY_SHADER_INVOCATIONS 0x887F
-	GL_MAX_GEOMETRY_SHADER_INVOCATIONS 0x8E5A
-	GL_MIN_FRAGMENT_INTERPOLATION_OFFSET 0x8E5B
-	GL_MAX_FRAGMENT_INTERPOLATION_OFFSET 0x8E5C
-	GL_FRAGMENT_INTERPOLATION_OFFSET_BITS 0x8E5D
-	GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5E
-	GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5F
-	GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS 0x8F9F
-	GL_TEXTURE_CUBE_MAP_ARRAY 0x9009
-	GL_TEXTURE_BINDING_CUBE_MAP_ARRAY 0x900A
-	GL_PROXY_TEXTURE_CUBE_MAP_ARRAY 0x900B
-	GL_SAMPLER_CUBE_MAP_ARRAY 0x900C
-	GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW 0x900D
-	GL_INT_SAMPLER_CUBE_MAP_ARRAY 0x900E
-	GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY 0x900F
-	void glMinSampleShading (GLclampf value)
-	void glBlendEquationSeparatei (GLuint buf, GLenum modeRGB, GLenum modeAlpha)
-	void glBlendEquationi (GLuint buf, GLenum mode)
-	void glBlendFuncSeparatei (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
-	void glBlendFunci (GLuint buf, GLenum src, GLenum dst)
diff --git a/src/other/glew/auto/core/GL_WIN_swap_hint b/src/other/glew/auto/core/GL_WIN_swap_hint
deleted file mode 100644
index 6916189..0000000
--- a/src/other/glew/auto/core/GL_WIN_swap_hint
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_WIN_swap_hint
-http://msdn.microsoft.com/library/default.asp?url=/library/en-us/opengl/glfunc01_16zy.asp
-GL_WIN_swap_hint
-	void glAddSwapHintRectWIN (GLint x, GLint y, GLsizei width, GLsizei height)
diff --git a/src/other/glew/auto/core/WGL_ATI_render_texture_rectangle b/src/other/glew/auto/core/WGL_ATI_render_texture_rectangle
deleted file mode 100644
index 55df114..0000000
--- a/src/other/glew/auto/core/WGL_ATI_render_texture_rectangle
+++ /dev/null
@@ -1,4 +0,0 @@
-WGL_ATI_render_texture_rectangle
-
-WGL_ATI_render_texture_rectangle
-	WGL_TEXTURE_RECTANGLE_ATI 0x21A5
diff --git a/src/other/glew/auto/core/WGL_EXT_framebuffer_sRGB b/src/other/glew/auto/core/WGL_EXT_framebuffer_sRGB
deleted file mode 100644
index e4a4032..0000000
--- a/src/other/glew/auto/core/WGL_EXT_framebuffer_sRGB
+++ /dev/null
@@ -1,4 +0,0 @@
-WGL_EXT_framebuffer_sRGB
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_framebuffer_sRGB.txt
-WGL_EXT_framebuffer_sRGB
-	WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9
diff --git a/src/other/glew/auto/core/WGL_EXT_pixel_format_packed_float b/src/other/glew/auto/core/WGL_EXT_pixel_format_packed_float
deleted file mode 100644
index 30925fc..0000000
--- a/src/other/glew/auto/core/WGL_EXT_pixel_format_packed_float
+++ /dev/null
@@ -1,4 +0,0 @@
-WGL_EXT_pixel_format_packed_float
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_packed_float.txt
-WGL_EXT_pixel_format_packed_float
-	WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8
diff --git a/src/other/glew/auto/core/WGL_NV_gpu_affinity b/src/other/glew/auto/core/WGL_NV_gpu_affinity
deleted file mode 100644
index f722204..0000000
--- a/src/other/glew/auto/core/WGL_NV_gpu_affinity
+++ /dev/null
@@ -1,12 +0,0 @@
-WGL_NV_gpu_affinity
-http://developer.download.nvidia.com/opengl/specs/WGL_nv_gpu_affinity.txt
-WGL_NV_gpu_affinity
-	WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0
-	WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1
-	BOOL wglEnumGpusNV (UINT iGpuIndex, HGPUNV *phGpu)
-	BOOL wglEnumGpuDevicesNV (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice)
-	HDC wglCreateAffinityDCNV (const HGPUNV *phGpuList)
-	BOOL wglEnumGpusFromAffinityDCNV (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu)
-	BOOL wglDeleteDCNV (HDC hdc)
-	DECLARE_HANDLE(HGPUNV);
-	typedef struct _GPU_DEVICE {  DWORD cb;   CHAR DeviceName[32];   CHAR DeviceString[128];   DWORD Flags;   RECT rcVirtualScreen; } GPU_DEVICE, *PGPU_DEVICE;
diff --git a/src/other/glew/auto/core/WGL_NV_vertex_array_range b/src/other/glew/auto/core/WGL_NV_vertex_array_range
deleted file mode 100644
index ca22d31..0000000
--- a/src/other/glew/auto/core/WGL_NV_vertex_array_range
+++ /dev/null
@@ -1,5 +0,0 @@
-WGL_NV_vertex_array_range
-http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_array_range.txt
-WGL_NV_vertex_array_range
-	void * wglAllocateMemoryNV (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority)
-	void wglFreeMemoryNV (void *pointer)
diff --git a/src/other/glew/auto/custom.txt b/src/other/glew/auto/custom.txt
deleted file mode 100644
index b797b95..0000000
--- a/src/other/glew/auto/custom.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-WGL_ARB_extensions_string
-WGL_EXT_extensions_string
-WGL_ARB_pixel_format
-WGL_ARB_pbuffer
-WGL_NV_float_buffer
-WGL_ATI_pixel_format_float
-WGL_ARB_multisample
diff --git a/src/other/glew/auto/doc/advanced.html b/src/other/glew/auto/doc/advanced.html
deleted file mode 100644
index 45a3ada..0000000
--- a/src/other/glew/auto/doc/advanced.html
+++ /dev/null
@@ -1,176 +0,0 @@
-<h2>Automatic Code Generation</h2>
-
-<p>
-Starting from release 1.1.0, the source code and parts of the
-documentation are automatically generated from the extension
-specifications in a two-step process.  In the first step,
-specification files from the OpenGL registry are downloaded and
-parsed. Skeleton descriptors are created for each extension.  These
-descriptors contain all necessary information for creating the source
-code and documentation in a simple and compact format, including the
-name of the extension, url link to the specification, tokens, function
-declarations, typedefs and struct definitions.  In the second step,
-the header files as well as the library and glewinfo source are
-generated from the descriptor files.  The code generation scripts are
-located in the <tt>auto</tt> subdirectory.
-</p>
-
-<p>
-The code generation scripts require GNU make, wget, and perl. On
-Windows, the simplest way to get access to these tools is to install
-<a href="http://www.cygwin.com/">Cygwin</a>, but make sure that the
-root directory is mounted in binary mode. The makefile in the
-<tt>auto</tt> directory provides the following build targets:
-</p>
-
-<center>
-<table border=0 cellpadding=0 cellspacing=0> <!-- bgcolor="#f0f0f0" -->
-<tr><td align="right" valign="top" width="25%"><tt>make</tt></td>
-<td>    </td>
-<td align=left>Create the source files from the descriptors. If the
-descriptors do not exist, create them from the spec files. If the spec
-files do not exist, download them from the OpenGL repository.</td></tr>
-<tr><td align="right" valign="top"><tt>make clean</tt></td>
-<td>    </td>
-<td align=left>Delete the source files.</td></tr>
-<tr><td align="right" valign="top"><tt>make clobber</tt></td>
-<td>    </td>
-<td align=left>Delete the source files and the descriptors.</td></tr>
-<tr><td align="right" valign="top"><tt>make destroy</tt></td>
-<td>    </td>
-<td align=left>Delete the source files, the descriptors, and the spec files.</td></tr>
-<tr><td align="right" valign="top"><tt>make custom</tt></td>
-<td>    </td>
-<td align=left>Create the source files for the extensions
-listed in <tt>auto/custom.txt</tt>. See "Custom Code
-Generation" below for more details.</td></tr>
-</table>
-</center>
-
-<h3>Adding a New Extension</h3>
-
-<p>
-To add a new extension, create a descriptor file for the extension in
-<tt>auto/core</tt> and rerun the code generation scripts by typing
-<tt>make clean; make</tt> in the <tt>auto</tt> directory.
-</p>
-
-<p>
-The format of the descriptor file is given below. Items in
-brackets are optional.
-</p>
-
-<p class="pre">
-<Extension Name><br>
-[<URL of Specification File>]<br>
-    [<Token Name> <Token Value>]<br>
-    [<Token Name> <Token Value>]<br>
-    ...<br>
-    [<Typedef>]<br>
-    [<Typedef>]<br>
-    ...<br>
-    [<Function Signature>]<br>
-    [<Function Signature>]<br>
-    ...<br>
-<!--     [<Function Definition>]<br>
-    [<Function Definition>]<br>
-    ...<br> -->
-</p>
-
-<!--
-<p>
-Note that <tt>Function Definitions</tt> are copied to the header files
-without changes and have to be terminated with a semicolon. In
-contrast, <tt>Tokens</tt>, <tt>Function signatures</tt>, and
-<tt>Typedefs</tt> should not be terminated with a semicolon.
-</p>
--->
-
-<p>
-Take a look at one of the files in <tt>auto/core</tt> for an
-example. Note that typedefs and function signatures should not be
-terminated with a semicolon.
-</p>
-
-<h3>Custom Code Generation</h3>
-<p>
-Starting from GLEW 1.3.0, it is possible to control which extensions
-to include in the libarary by specifying a list in
-<tt>auto/custom.txt</tt>. This is useful when you do not need all the
-extensions and would like to reduce the size of the source files.
-Type <tt>make clean; make custom</tt> in the <tt>auto</tt> directory
-to rerun the scripts with the custom list of extensions.
-</p>
-
-<p>
-For example, the following is the list of extensions needed to get GLEW and the
-utilities to compile.
-</p>
-
-<p class="pre">
-WGL_ARB_extensions_string<br>
-WGL_ARB_multisample<br>
-WGL_ARB_pixel_format<br>
-WGL_ARB_pbuffer<br>
-WGL_EXT_extensions_string<br>
-WGL_ATI_pixel_format_float<br>
-WGL_NV_float_buffer<br>
-</p>
-
-<h2>Multiple Rendering Contexts (GLEW MX)</h2>
-
-<p>Starting with release 1.2.0, thread-safe support for multiple
-rendering contexts, possibly with different capabilities, is
-available. Since this is not required by most users, it is not added
-to the binary releases to maintain compatibility between different
-versions. To include multi-context support, you have to do the
-following:</p>
-<ol>
-<li>Compile and use GLEW with the <tt>GLEW_MX</tt> preprocessor token
-defined.</li>
-<li>For each rendering context, create a <tt>GLEWContext</tt> object
-that will be available as long as the rendering context exists.</li>
-<li>Define a macro or function called <tt>glewGetContext()</tt> that
-returns a pointer to the <tt>GLEWContext</tt> object associated with
-the rendering context from which OpenGL/WGL/GLX calls are issued. This
-dispatch mechanism is primitive, but generic.
-<li>Make sure that you call <tt>glewInit()</tt> after creating the
-<tt>GLEWContext</tt> object in each rendering context.  Note, that the
-<tt>GLEWContext</tt> pointer returned by <tt>glewGetContext()</tt> has
-to reside in global or thread-local memory.
-</ol>
-
-<p>Note that according to the <a
-href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/opengl/ntopnglr_6yer.asp">MSDN
-WGL documentation</a>, you have to initialize the entry points for
-every rendering context that use pixel formats with different
-capabilities For example, the pixel formats provided by the generic
-software OpenGL implementation by Microsoft vs. the hardware
-accelerated pixel formats have different capabilities.  <b>GLEW by
-default ignores this requirement, and does not define per-context
-entry points (you can however do this using the steps described
-above).</b> Assuming a global namespace for the entry points works in
-most situations, because typically all hardware accelerated pixel
-formats provide the same entry points and capabilities. This means
-that unless you use the multi-context version of GLEW, you need to
-call <tt>glewInit()</tt> only once in your program, or more precisely,
-once per process.</p>
-
-<h2>Separate Namespace</h2>
-
-<p>
-To avoid name clashes when linking with libraries that include the
-same symbols, extension entry points are declared in a separate
-namespace (release 1.1.0 and up). This is achieved by aliasing OpenGL
-function names to their GLEW equivalents. For instance,
-<tt>glFancyFunction</tt> is simply an alias to
-<tt>glewFancyFunction</tt>.  The separate namespace does not effect
-token and function pointer definitions.
-</p>
-
-<h2>Known Issues</h2>
-
-<p>
-GLEW requires GLX 1.2 for compatibility with GLUT.
-</p>
-
diff --git a/src/other/glew/auto/doc/basic.html b/src/other/glew/auto/doc/basic.html
deleted file mode 100644
index 693575b..0000000
--- a/src/other/glew/auto/doc/basic.html
+++ /dev/null
@@ -1,180 +0,0 @@
-<h2>Initializing GLEW</h2>
-<p>
-First you need to create a valid OpenGL rendering context and call
-<tt>glewInit()</tt> to initialize the extension entry points.  If
-<tt>glewInit()</tt> returns <tt>GLEW_OK</tt>, the initialization
-succeeded and you can use the available extensions as well as core
-OpenGL functionality. For example:
-</p>
-
-<p class="pre">
-#include <GL/glew.h><br>
-#include <GL/glut.h><br>
-...<br>
-glutInit(&argc, argv);<br>
-glutCreateWindow("GLEW Test");<br>
-GLenum err = glewInit();<br>
-if (GLEW_OK != err)<br>
-{<br>
-  /* Problem: glewInit failed, something is seriously wrong. */<br>
-  fprintf(stderr, "Error: %s\n", glewGetErrorString(err));<br>
-  ...<br>
-}<br>
-fprintf(stdout, "Status: Using GLEW %s\n", glewGetString(GLEW_VERSION));<br>
-</p>
-
-<h2>Checking for Extensions</h2>
-
-<p>
-Starting from GLEW 1.1.0, you can find out if a particular extension
-is available on your platform by querying globally defined variables
-of the form <tt>GLEW_{extension_name}</tt>:
-</p>
-
-<p class="pre">
-if (GLEW_ARB_vertex_program)<br>
-{<br>
-  /* It is safe to use the ARB_vertex_program extension here. */<br>
-  glGenProgramsARB(...);<br>
-}<br>
-</p>
-
-<p>
-<b>In GLEW 1.0.x, a global structure was used for this task. To ensure
-binary compatibility between releases, the struct was replaced with a
-set of variables.</b>
-</p>
-
-<p>
-You can also check for core OpenGL functionality.  For example, to
-see if OpenGL 1.3 is supported, do the following:
-</p>
-
-<p class="pre">
-if (GLEW_VERSION_1_3)<br>
-{<br>
-  /* Yay! OpenGL 1.3 is supported! */<br>
-}<br>
-</p>
-
-<p>
-In general, you can check if <tt>GLEW_{extension_name}</tt> or
-<tt>GLEW_VERSION_{version}</tt> is true or false.
-</p>
-
-<p>
-It is also possible to perform extension checks from string
-input. Starting from the 1.3.0 release, use <tt>glewIsSupported</tt>
-to check if the required core or extension functionality is
-available:
-</p>
-
-<p class="pre">
-if (glewIsSupported("GL_VERSION_1_4  GL_ARB_point_sprite"))<br>
-{<br>
-  /* Great, we have OpenGL 1.4 + point sprites. */<br>
-}<br>
-</p>
-
-<p>
-For extensions only, <tt>glewGetExtension</tt> provides a slower alternative
-(GLEW 1.0.x-1.2.x). <b>Note that in the 1.3.0 release </b>
-<tt>glewGetExtension</tt> <b>was replaced with </b>
-<tt>glewIsSupported</tt>.
-</p>
-
-<p class="pre">
-if (glewGetExtension("GL_ARB_fragment_program"))<br>
-{<br>
-  /* Looks like ARB_fragment_program is supported. */<br>
-}<br>
-</p>
-
-<h2>Experimental Drivers</h2>
-
-<p>
-GLEW obtains information on the supported extensions from the graphics
-driver.  Experimental or pre-release drivers, however, might not
-report every available extension through the standard mechanism, in
-which case GLEW will report it unsupported.  To circumvent this
-situation, the <tt>glewExperimental</tt> global switch can be turned
-on by setting it to <tt>GL_TRUE</tt> before calling
-<tt>glewInit()</tt>, which ensures that all extensions with valid
-entry points will be exposed.
-</p>
-
-<h2>Platform Specific Extensions</h2>
-
-<p>
-Platform specific extensions are separated into two header files:
-<tt>wglew.h</tt> and <tt>glxew.h</tt>, which define the available
-<tt>WGL</tt> and <tt>GLX</tt> extensions.  To determine if a certain
-extension is supported, query <tt>WGLEW_{extension name}</tt> or
-<tt>GLXEW_{extension_name}</tt>.  For example:
-</p>
-
-<p class="pre">
-#include <GL/wglew.h><br>
-<br>
-if (WGLEW_ARB_pbuffer)<br>
-{<br>
-  /* OK, we can use pbuffers. */<br>
-}<br>
-else<br>
-{<br>
-  /* Sorry, pbuffers will not work on this platform. */<br>
-}<br>
-</p>
-
-<p>
-Alternatively, use <tt>wglewIsSupported</tt> or
-<tt>glxewIsSupported</tt> to check for extensions from a string:
-</p>
-
-<p class="pre">
-if (wglewIsSupported("WGL_ARB_pbuffer"))<br>
-{<br>
-  /* OK, we can use pbuffers. */<br>
-}<br>
-</p>
-
-<h2>Utilities</h2>
-
-<p>
-GLEW provides two command-line utilities: one for creating a list of
-available extensions and visuals; and another for verifying extension
-entry points.
-</p>
-
-<h3>visualinfo: extensions and visuals</h3>
-
-<p>
-<tt>visualinfo</tt> is an extended version of <tt>glxinfo</tt>. The
-Windows version creates a file called <tt>visualinfo.txt</tt>, which
-contains a list of available OpenGL, WGL, and GLU extensions as well
-as a table of visuals aka. pixel formats. Pbuffer and MRT capable
-visuals are also included. For additional usage information, type
-<tt>visualinfo -h</tt>.
-</p>
-
-<h3>glewinfo: extension verification utility</h3>
-
-<p>
-<tt>glewinfo</tt> allows you to verify the entry points for the
-extensions supported on your platform. The Windows version
-reports the results to a text file called <tt>glewinfo.txt</tt>. The
-Unix version prints the results to <tt>stdout</tt>.
-</p>
-
-<p>Windows usage:</p>
- <blockquote><pre>glewinfo [-pf <id>]</pre></blockquote>
-
-<p>where <tt><id></tt> is the pixel format id for which the
-capabilities are displayed.</p>
-
-<p>Unix usage:</p>
-<blockquote><pre>glewinfo [-display <dpy>] [-visual <id>]</pre></blockquote>
-
-<p>where <tt><dpy></tt> is the X11 display and <tt><id></tt> is
-the visual id for which the capabilities are displayed.</p>
-
diff --git a/src/other/glew/auto/doc/credits.html b/src/other/glew/auto/doc/credits.html
deleted file mode 100644
index 7f1b8d9..0000000
--- a/src/other/glew/auto/doc/credits.html
+++ /dev/null
@@ -1,25 +0,0 @@
-<h2>Credits</h2>
-
-<p>
-GLEW was developed by <a href="http://www.cs.utah.edu/~ikits/">Milan
-Ikits</a> and <a
-href="http://wwwvis.informatik.uni-stuttgart.de/~magallon/">Marcelo
-Magallon</a>.  They also perform occasional maintainance to make sure
-that GLEW stays in mint condition.  Aaron Lefohn, Joe Kniss, and Chris
-Wyman were the first users and also assisted with the design and
-debugging process.  The acronym GLEW originates from Aaron Lefohn.
-Pasi Kärkkäinen identified and fixed several problems with
-GLX and SDL.  Nate Robins created the <tt>wglinfo</tt> utility, to
-which modifications were made by Michael Wimmer.  
-</p>
-
-<h2>Copyright</h2>
-
-<p>
-GLEW is originally derived from the EXTGL project by Lev Povalahev.
-The source code is licensed under the <a href="glew.txt">Modified BSD
-License</a>, the <a href="mesa.txt">Mesa 3-D License</a> (MIT
-License), and the <a href="khronos.txt">Khronos License</a> (MIT
-License).  The automatic code generation scripts are released under
-the <a href="gpl.txt">GNU GPL</a>.
-</p>
diff --git a/src/other/glew/auto/doc/index.html b/src/other/glew/auto/doc/index.html
deleted file mode 100644
index 246d235..0000000
--- a/src/other/glew/auto/doc/index.html
+++ /dev/null
@@ -1,100 +0,0 @@
-<p>
-The OpenGL Extension Wrangler Library (GLEW) is a cross-platform
-open-source C/C++ extension loading library.  GLEW provides efficient
-run-time mechanisms for determining which OpenGL extensions are
-supported on the target platform.  OpenGL core and extension
-functionality is exposed in a single header file.  GLEW has been
-tested on a variety of operating systems, including Windows, Linux,
-Mac OS X, FreeBSD, Irix, and Solaris.
-</p>
-
-<h2>Download Center</h2>
-<p>
-<a href="http://sourceforge.net/projects/glew/">GLEW</a> is distributed
-as source and precompiled binaries. The latest release is
-<a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">1.5.4</a>
-[04-21-10]:
-</p>
-<p>
-</p>
-<p>
-<table border="1" cellpadding="5" cellspacing="0" bgcolor="#f0f0f0" align="center">
-<tr>
-<td>
-<table border="0" cellpadding="3" cellspacing="0">
-<tr>
-<td></td>
-<td align="right"><b>Source</b></td>
-<td></td>
-<td align="left">
-<a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/glew-1.5.4.zip/download">ZIP</a> | 
-<a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/glew-1.5.4.tgz/download">TGZ</a></td>
-<td></td>
-</tr>
-<tr>
-<td></td>
-<td align="right"><b>Binaries</b></td>
-<td></td>
-<td align="left">
-<a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/glew-1.5.4-win32.zip/download">Windows 32-bit</a> | 
-<a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/glew-1.5.4-win64.zip/download">64-bit</a> 
-</td>
-<td></td>
-</tr>
-</table>
-</tr>
-</table>
-<p></p>
-<p>
-An up-to-date copy is also available from the <a
-href="http://glew.svn.sourceforge.net/svnroot/glew/trunk/glew/">project
-repository</a>:
-</p>
-<p>
-<tt>svn co https://glew.svn.sourceforge.net/svnroot/glew/trunk/glew glew</tt>
-</p>
-
-<h2>Supported Extensions</h2>
-<p>
-The latest release contains support for OpenGL 3.3, OpenGL 4.0 and the following extensions:
-</p>
-<ul>
-<li><a href="glew.html">OpenGL extensions</a>
-<li><a href="wglew.html">WGL extensions</a>
-<li><a href="glxew.html">GLX extensions</a>
-</ul>
-
-<h2>News</h2>
-<ul>
-<li>[04-21-10] <a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">GLEW 1.5.4</a> adds support for OpenGL 3.3, OpenGL 4.0 and new extensions, fixes bugs</li>
-<li>[02-28-10] <a href="https://sourceforge.net/projects/glew/files/glew/1.5.3/">GLEW 1.5.3</a> fixes minor bugs and adds three new extensions</li>
-<li>[12-31-09] <a href="https://sourceforge.net/projects/glew/files/glew/1.5.2/">GLEW 1.5.2</a> adds support for OpenGL 3.1, OpenGL 3.2 and new extensions</li>
-<li>[11-03-08] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=637800">GLEW 1.5.1</a> adds support for OpenGL 3.0 and 31 new extensions</li>
-<li>[12-27-07] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=564464">GLEW 1.5.0</a> is released under less restrictive licenses</li>
-<li>[04-27-07] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=504079">GLEW 1.4.0</a> is released</li>
-<li>[03-08-07] GLEW is included in the <a href="http://developer.nvidia.com/object/sdk_home.html">NVIDIA OpenGL SDK</a></li>
-<li>[03-04-07] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=491113">GLEW 1.3.6</a> is released</li>
-<li>[02-28-07] <a href="http://glew.svn.sourceforge.net/svnroot/glew/trunk/glew/">Repository</a> is migrated to SVN</li>
-<li>[02-25-07] GLEW is included in the <a href="http://www.opengl.org/sdk/">OpenGL SDK</a></li>
-<li>[11-21-06] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=465334">GLEW 1.3.5</a> adds OpenGL 2.1 and NVIDIA G80 extensions</li>
-<li>[03-04-06] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=398455">GLEW 1.3.4</a> adds support for five new extensions</li>
-<li>[05-16-05] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=327647">GLEW 1.3.3</a> is released</li>
-<li>[03-16-05] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=313345">GLEW 1.3.2</a> adds support for GL_APPLE_pixel_buffer</li>
-<li>[02-11-05] <a href="http://gljava.sourceforge.net/">gljava</a> and <a href="http://sdljava.sourceforge.net/">sdljava</a> provide a Java binding to OpenGL via GLEW</li>
-<li>[02-02-05] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=302049">GLEW 1.3.1</a> adds support for <a href="http://www.opengl.org/documentation/extensions/EXT_framebuffer_object.txt">GL_EXT_framebuffer_object</a></li>
-<li>[01-04-05] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=294527">GLEW 1.3.0</a> adds core OpenGL 2.0 support plus many enhancements</li>
-<li>[12-22-04] <a href="http://glewpy.sf.net/">GLEWpy</a> Python wrapper announced</li>
-<li>[12-12-04] <a href="https://sourceforge.net/mail/?group_id=67586">Mailing lists</a> created on sourceforge</li>
-<li>[12-06-04] <a href="http://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=287948">GLEW 1.2.5</a> adds new extensions and support for FreeBSD</li>
-</ul>
-
-<h2>Links</h2>
-<ul>
-<li><a href="http://www.opengl.org/sdk/">OpenGL Software Development Kit</a></li>
-<li><a href="http://www.opengl.org/resources/features/OGLextensions/">All About OpenGL Extensions</a></li>
-<li><a href="http://www.opengl.org/registry/">OpenGL Extension Registry</a></li>
-<li><a href="http://ati.amd.com/developer/sdk/radeonSDK/html/info/Prog3D.html">ATI OpenGL Extension Specifications</a></li>
-<li><a href="http://developer.apple.com/graphicsimaging/opengl/extensions.html">APPLE OpenGL Extensions Guide</a></li>
-<li><a href="http://developer.nvidia.com/object/nvidia_opengl_specs.html">NVIDIA OpenGL Extension Specifications</a></li>
-</ul>
-
diff --git a/src/other/glew/auto/doc/install.html b/src/other/glew/auto/doc/install.html
deleted file mode 100644
index 448aafd..0000000
--- a/src/other/glew/auto/doc/install.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<h2>Installation</h2>
-
-<p>
-To use the shared library version of GLEW, you need to copy the
-headers and libraries into their destination directories. On Windows
-this typically boils down to copying:
-</p>
-
-<table border="0" cellpadding="0" cellspacing="0" align="center"> <!-- bgcolor="#f0f0f0" -->
-<tr><td align="left"><tt>bin/glew32.dll</tt></td><td>    to    </td>
-<td align="left"><tt>%SystemRoot%/system32</tt></td></tr>
-<tr><td align="left"><tt>lib/glew32.lib</tt></td><td>    to    </td>
-<td align="left"><tt>{VC Root}/Lib</tt></td></tr>
-<tr><td align="left"><tt>include/GL/glew.h</tt></td><td>    to    </td>
-<td align="left"><tt>{VC Root}/Include/GL</tt></td></tr>
-<tr><td align="left"><tt>include/GL/wglew.h</tt></td><td>    to    </td>
-<td align="left"><tt>{VC Root}/Include/GL</tt></td></tr>
-</table>
-<p>
-</p>
-
-<p>
-where <tt>{VC Root}</tt> is the Visual C++ root directory, typically
-<tt>C:/Program Files/Microsoft Visual Studio/VC98</tt> for Visual
-Studio 6.0 or <tt>C:/Program Files/Microsoft Visual
-Studio .NET 2003/Vc7/PlatformSDK</tt> for Visual Studio .NET.
-</p>
-
-<p>
-On Unix, typing <tt>make install</tt> will attempt to install GLEW
-into <tt>/usr/include/GL</tt> and <tt>/usr/lib</tt>.  You can
-customize the installation target via the <tt>GLEW_DEST</tt>
-environment variable if you do not have write access to these
-directories.
-</p>
-
-<h2>Building Your Project with GLEW</h2>
-<p>
-There are two ways to build your project with GLEW.
-</p>
-<h3>Including the source files / project file</h3>
-<p>
-The simpler but less flexible way is to include <tt>glew.h</tt> and
-<tt>glew.c</tt> into your project.  On Windows, you also need to
-define the <tt>GLEW_STATIC</tt> preprocessor token when building a
-static library or executable, and the <tt>GLEW_BUILD</tt> preprocessor
-token when building a dll.  You also need to replace
-<tt><GL/gl.h></tt> and <tt><GL/glu.h></tt> with
-<tt><glew.h></tt> in your code and set the appropriate include
-flag (<tt>-I</tt>) to tell the compiler where to look for it.  For
-example:
-</p>
-<p class="pre">
-#include <glew.h><br>
-#include <GL/glut.h><br>
-<gl, glu, and glut functionality is available here><br>
-</p>
-<p>
-Depending on where you put <tt>glew.h</tt> you may also need to change
-the include directives in <tt>glew.c</tt>. Note that if you are using
-GLEW together with GLUT, you have to include <tt>glew.h</tt> first.
-In addition, <tt>glew.h</tt> includes <tt>glu.h</tt>, so you do not
-need to include it separately.
-</p>
-<p>
-On Windows, you also have the option of adding the supplied project
-file <tt>glew_static.dsp</tt> to your workspace (solution) and compile
-it together with your other projects.  In this case you also need to
-change the <tt>GLEW_BUILD</tt> preprocessor constant to
-<tt>GLEW_STATIC</tt> when building a static library or executable,
-otherwise you get build errors.
-</p>
-<p>
-<b>Note that GLEW does not use the C
-runtime library, so it does not matter which version (single-threaded,
-multi-threaded or multi-threaded DLL) it is linked with (without
-debugging information). It is, however, always a good idea to compile all
-your projects including GLEW with the same C runtime settings.</b>
-</p>
-
-<h3>Using GLEW as a shared library</h3>
-
-<p>
-Alternatively, you can use the provided project files / makefile to
-build a separate shared library you can link your projects with later.
-In this case the best practice is to install <tt>glew.h</tt>,
-<tt>glew32.lib</tt>, and <tt>glew32.dll</tt> / <tt>libGLEW.so</tt> to
-where the OpenGL equivalents <tt>gl.h</tt>, <tt>opengl32.lib</tt>, and
-<tt>opengl32.dll</tt> / <tt>libGL.so</tt> are located.  Note that you
-need administrative privileges to do this.  If you do not have
-administrator access and your system administrator will not do it for
-you, you can install GLEW into your own lib and include subdirectories
-and tell the compiler where to find it. Then you can just replace
-<tt><GL/gl.h></tt> with <tt><GL/glew.h></tt> in your
-program:
-</p>
-
-<p class="pre">
-#include <GL/glew.h><br>
-#include <GL/glut.h><br>
-<gl, glu, and glut functionality is available here><br>
-</p>
-
-<p>
-or:
-</p>
-
-<p class="pre">
-#include <GL/glew.h><br>
-<gl and glu functionality is available here><br>
-</p>
-
-<p>
-Remember to link your project with <tt>glew32.lib</tt>,
-<tt>glu32.lib</tt>, and <tt>opengl32.lib</tt> on Windows and
-<tt>libGLEW.so</tt>, <tt>libGLU.so</tt>, and <tt>libGL.so</tt> on
-Unix (<tt>-lGLEW -lGLU -lGL</tt>).
-</p>
-
-<p>
-It is important to keep in mind that <tt>glew.h</tt> includes neither
-<tt>windows.h</tt> nor <tt>gl.h</tt>.  Also, GLEW will warn you by
-issuing a preprocessor error in case you have included <tt>gl.h</tt>,
-<tt>glext.h</tt>, or <tt>glATI.h</tt> before <tt>glew.h</tt>.
-</p>
-
diff --git a/src/other/glew/auto/doc/log.html b/src/other/glew/auto/doc/log.html
deleted file mode 100644
index 44183ce..0000000
--- a/src/other/glew/auto/doc/log.html
+++ /dev/null
@@ -1,602 +0,0 @@
-<h2>Change Log</h2>
-
-<hr align="center">
-<ul class="none">
-<li><b>1.5.4</b> [04-21-10]
-<ul>
-<li> New features:
-<ul>
-<li> Support for OpenGL 3.3
-<li> Support for OpenGL 4.0
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_AMD_conservative_depth
-<li> GL_ARB_blend_func_extended
-<li> GL_ARB_draw_indirect
-<li> GL_ARB_explicit_attrib_location
-<li> GL_ARB_gpu_shader5
-<li> GL_ARB_gpu_shader_fp64
-<li> GL_ARB_occlusion_query2
-<li> GL_ARB_sampler_objects
-<li> GL_ARB_shader_bit_encoding
-<li> GL_ARB_shader_subroutine
-<li> GL_ARB_shading_language_include
-<li> GL_ARB_tessellation_shader
-<li> GL_ARB_texture_buffer_object_rgb32
-<li> GL_ARB_texture_compression_bptc
-<li> GL_ARB_texture_rgb10_a2ui
-<li> GL_ARB_texture_swizzle
-<li> GL_ARB_timer_query
-<li> GL_ARB_transform_feedback2
-<li> GL_ARB_transform_feedback3
-<li> GL_ARB_vertex_type_2_10_10_10_rev
-<li> GL_EXT_shader_image_load_store
-<li> GL_EXT_vertex_attrib_64bit
-<li> GL_NV_gpu_program5
-<li> GL_NV_gpu_program_fp64
-<li> GL_NV_gpu_shader5
-<li> GL_NV_tessellation_program5
-<li> GL_NV_vertex_attrib_integer_64bit
-<li> GLX_ARB_vertex_buffer_object
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Parameter constness fix for glPointParameteriv and glPointParameterfv
-</ul>
-</ul>
-</ul>
-
-<hr align="center">
-<ul class="none">
-<li><b>1.5.3</b> [02-28-10]
-<ul>
-<li> New extensions:
-<ul>
-<li> GLX_INTEL_swap_event
-<li> GL_AMD_seamless_cubemap_per_texture
-<li> GL_AMD_shader_stencil_export
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Correct version detection for GL 3.1 and 3.2
-<li> Missing 3.1 enumerants
-<li> Add glew.pc
-</ul>
-</ul>
-</ul>
-
-<hr align="center">
-<ul class="none">
-<li><b>1.5.2</b> [12-31-09]
-<ul>
-<li> New features:
-<ul>
-<li> Support for OpenGL 3.1
-<li> Support for OpenGL 3.2
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_AMD_draw_buffers_blend
-<li> GL_AMD_performance_monitor
-<li> GL_AMD_texture_texture4
-<li> GL_AMD_vertex_shader_tessellator
-<li> GL_APPLE_aux_depth_stencil
-<li> GL_APPLE_object_purgeable
-<li> GL_APPLE_rgb_422
-<li> GL_APPLE_row_bytes
-<li> GL_APPLE_vertex_program_evaluators
-<li> GL_ARB_compatibility
-<li> GL_ARB_copy_buffer
-<li> GL_ARB_depth_clamp
-<li> GL_ARB_draw_buffers_blend
-<li> GL_ARB_draw_elements_base_vertex
-<li> GL_ARB_fragment_coord_conventions
-<li> GL_ARB_provoking_vertex
-<li> GL_ARB_sample_shading
-<li> GL_ARB_seamless_cube_map
-<li> GL_ARB_shader_texture_lod
-<li> GL_ARB_sync
-<li> GL_ARB_texture_cube_map_array
-<li> GL_ARB_texture_gather
-<li> GL_ARB_texture_multisample
-<li> GL_ARB_texture_query_lod
-<li> GL_ARB_uniform_buffer_object
-<li> GL_ARB_vertex_array_bgra
-<li> GL_ATI_meminfo
-<li> GL_EXT_provoking_vertex
-<li> GL_EXT_separate_shader_objects
-<li> GL_EXT_texture_snorm
-<li> GL_NV_copy_image
-<li> GL_NV_parameter_buffer_object2
-<li> GL_NV_shader_buffer_load
-<li> GL_NV_texture_barrier
-<li> GL_NV_transform_feedback2
-<li> GL_NV_vertex_buffer_unified_memory
-<li> WGL_AMD_gpu_association
-<li> WGL_ARB_create_context_profile
-<li> WGL_NV_copy_image
-<li> GLX_ARB_create_context_profile
-<li> GLX_EXT_swap_control
-<li> GLX_NV_copy_image
-</ul>
-<li> Bug fixes:
-<ul>
-<li> DOS line endings for windows .zip archives only.
-<li> glTransformFeedbackVaryings arguments.
-<li> Resource leak in glewinfo and visualinfo tools.
-<li> WIN32_LEAN_AND_MEAN preprocessor pollution.
-<li> Fixed version detection for GLEW_VERSION_2_1 and GLEW_VERSION_3_0.
-<li> MesaGLUT glut.h GLAPIENTRY dependency.
-<li> glFramebufferTextureLayer correction.
-<li> OSX compiler warnings resolved.
-<li> Cygwin linking to opengl32 by default, rather than X11 OpenGL.
-<li> SnowLeopard (OSX 10.6) gl.h detection.
-<li> Use $(STRIP) consistently.
-</ul>
-</ul>
-</ul>
-
-<hr align="center">
-<ul class="none">
-<li><b>1.5.1</b> [11-03-08]
-<ul>
-<li> New features:
-<ul>
-<li> Support for OpenGL 3.0
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_ARB_depth_buffer_float
-<li> GL_ARB_draw_instance,
-<li> GL_ARB_framebuffer_object
-<li> GL_ARB_framebuffer_sRGB
-<li> GL_ARB_geometry_shader4
-<li> GL_ARB_half_float_pixel
-<li> GL_ARB_half_float_vertex
-<li> GL_ARB_instanced_arrays
-<li> GL_ARB_map_buffer_range
-<li> GL_ARB_texture_buffer_object
-<li> GL_ARB_texture_compression_rgtc
-<li> GL_ARB_vertex_array_object
-<li> GL_EXT_direct_state_access
-<li> GL_EXT_texture_swizzle
-<li> GL_EXT_transform_feedback
-<li> GL_EXT_vertex_array_bgra
-<li> GL_NV_conditional_render
-<li> GL_NV_explicit_multisample
-<li> GL_NV_present_video
-<li> GL_SGIS_point_line_texgen
-<li> GL_SGIX_convolution_accuracy
-<li> WGL_ARB_create_context
-<li> WGL_ARB_framebuffer_sRGB
-<li> WGL_NV_present_video
-<li> WGL_NV_swap_group
-<li> WGL_NV_video_output
-<li> GLX_ARB_create_context
-<li> GLX_ARB_framebuffer_sRGB
-<li> GLX_NV_present_video
-<li> GLX_NV_swap_group
-<li> GLX_NV_video_output
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Licensing issues with documentation
-<li> Problems with long long and _MSC_VER on MINGW 
-<li> Incorrect parameter for glGetUniformLocation
-<li> glewGetExtension fails on last entry 
-<li> Incomplete GL_NV_texture_shader tokens
-<li> Scripting problems on Cygwin
-<li> Incorrect definition for GLint on OS X
-</ul> 
-</ul>
-</ul>
-
-<hr align="center">
-<ul class="none">
-<li><b>1.5.0</b> [12-27-07]
-<ul>
-<li> New features:
-<ul>
-<li> Licensing change (BSD, Mesa 3-D, Khronos)
-<li> Switch to using registry on <a href="http://www.opengl.org/registry/">www.opengl.org</a>
-<li> Support for major and minor version strings
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_APPLE_flush_buffer_range
-<li> GL_GREMEDY_frame_terminator
-<li> GLX_EXT_texture_from_pixmap
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Incorrent 64-bit type definitions
-<li> Do not strip static library on install
-<li> Missing tokens in GL_ATI_fragment_shader and WGL_{ARB,EXT}_make_current_read
-<li> Missing tokens in GL_VERSION_2_1
-<li> Missing functions in GL_VERSION_1_4
-<li> Incorrect parameter type for glXCopyContext
-</ul> 
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.4.0</b> [04-27-07]
-<ul>
-<li> New features:
-<ul>
-<li> Extension variables are declared const to avoid possible
-corruption of their values
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_NV_depth_range_unclamped
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Incorrect tokens in GL_NV_transform_feedback and GL_NV_framebuffer_multisample_coverage
-<li> Incorrect function names in GL_EXT_gpu_program_parameters
-<li> Missing tokens in GL_EXT_framebuffer_multisample
-<li> GLEW_MX initialization problem for WGL_{ARB,EXT}_extensions_string
-</ul> 
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.6</b> [03-04-07]
-<ul>
-<li> New extensions:
-<ul>
-<li> GL_ATI_shader_texture_lod
-<li> GL_EXT_gpu_program_parameters
-<li> GL_NV_geometry_shader4
-<li> WGL_NV_gpu_affinity
-<li> GLX_SGIX_hyperpipe
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Missing include guards in glxew.h
-<li> Makefile and install problems for Cygwin builds
-<li> Install problem for Linux AMD64 builds
-<li> Incorrent token in GL_ATI_texture_compression_3dc
-<li> Missing tokens from GL_ATIX_point_sprites
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.5</b> [11-21-06]
-<ul>
-<li> New features:
-<ul>
-<li> Support for core OpenGL 2.1
-<li> Debug support for glewIsSupported
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_EXT_bindable_uniform
-<li> GL_EXT_draw_buffers2
-<li> GL_EXT_draw_instanced
-<li> GL_EXT_framebuffer_sRGB
-<li> GL_EXT_geometry_shader4
-<li> GL_EXT_gpu_shader4
-<li> GL_EXT_packed_float
-<li> GL_EXT_texture_array
-<li> GL_EXT_texture_buffer_object
-<li> GL_EXT_texture_compression_latc
-<li> GL_EXT_texture_compression_rgtc
-<li> GL_EXT_texture_integer
-<li> GL_EXT_texture_shared_exponent
-<li> GL_EXT_timer_query
-<li> GL_NV_depth_buffer_float
-<li> GL_NV_fragment_program4
-<li> GL_NV_framebuffer_multisample_coverage
-<li> GL_NV_geometry_program4
-<li> GL_NV_gpu_program4
-<li> GL_NV_parameter_buffer_object
-<li> GL_NV_transform_feedback
-<li> GL_NV_vertex_program4
-<li> GL_OES_byte_coordinates
-<li> GL_OES_compressed_paletted_texture
-<li> GL_OES_read_format
-<li> GL_OES_single_precision
-<li> WGL_EXT_pixel_format_packed_float
-<li> WGL_EXT_framebuffer_sRGB
-<li> GLX_EXT_fbconfig_packed_float
-<li> GLX_EXT_framebuffer_sRGB
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Wrong GLXContext definition on Solaris
-<li> Makefile problem for parallel builds
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.4</b> [03-04-06]
-<ul>
-<li> New extensions:
-<ul>
-<li> GL_EXT_framebuffer_blit
-<li> GL_EXT_framebuffer_multisample
-<li> GL_EXT_packed_depth_stencil
-<li> GL_MESAX_texture_stack
-<li> WGL_3DL_stereo_control
-</ul>
-</ul>
-<ul>
-<li> Bug fixes:
-<ul>
-<li> glBlendEquation missing from GL_ARB_imaging
-<li> Wrong APIENTRY definition for Cygwin
-<li> Incorrect OS X OpenGL types
-<li> Unix 64-bit installation patch
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.3</b> [05-16-05]
-<ul>
-<li> New feature:
-<ul>
-<li> Code generation option to split source into multiple files
-</ul>
-</ul>
-<ul>
-<li> Bug fixes:
-<ul>
-<li> OpenGL 2.0 core initialization problems
-<li> Wrong value for token GL_SHADER_TYPE
-<li> Missing tokens in GL_ATI_fragment_shader
-<li> Missing entry points in GL_ARB_transpose_matrix
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.2</b> [03-16-05]
-<ul>
-<li> New extension:
-<ul>
-<li> GL_APPLE_pixel_buffer
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Missing OpenGL 2.0 entry points
-<li> Missing tokens in GL_SGIX_shadow
-<li> MinGW makefile problem
-<li> Check for incorrect OpenGL version string on SiS hardware
-<li> Documentation update to meet the HTML 4.01 Transitional specification
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.1</b> [02-02-05]
-<ul>
-<li> New features:
-<ul>
-<li> Consistent Unix and Windows versioning
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_EXT_framebuffer_object
-<li> GL_ARB_pixel_buffer_object
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Missing OpenGL 2.0 tokens
-<li> Incorrect typedefs (GLhandleARB and GLhalf)
-<li> Borland compiler problems
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.0</b> [01-04-05]
-<ul>
-<li> New features:
-<ul>
-<li> Support for core OpenGL 2.0
-<li> <tt>glewIsSupported</tt> provides efficient string-based extension checks
-<li> Custom code generation from a list of extensions
-<li> Makefile changes
-</ul>
-<li> New extensions:
-<ul>
-<li> WGL_ATI_render_texture_rectangle
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Incorrect function signature in OpenGL 1.5 core
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.2.5</b> [12-06-04]
-<ul>
-<li> New extensions:
-<ul>
-<li>GL_ATI_texture_compression_3dc
-<li>GL_EXT_Cg_shader
-<li>GL_EXT_draw_range_elements
-<li>GL_KTX_buffer_region
-</ul>
-<li> Bug fixes:
-<ul>
-<li> OpenGL version detection bug
-<li> Problems with wxWindows and MinGW compilation
-<li> <tt>visualinfo</tt> compilation problem with GLEW_MX specified
-<li> Wrong token name in OpenGL 1.5 core
-</ul>
-<li> Support for FreeBSD
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.2.4</b> [09-06-04]
-<ul>
-<li> Added ARB_draw_buffers and ARB_texture_rectangle
-<li> Fixed bug in ARB_shader_objects
-<li> Replaced <tt>wglinfo</tt> with <tt>visualinfo</tt>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.2.3</b> [06-10-04]
-<ul>
-<li> Added GL_NV_fragment_program2, GL_NV_fragment_program_option, GL_NV_vertex_program2_option, GL_NV_vertex_program3
-<li> Bug fix in GL_ARB_vertex_blend
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.2.2</b> [05-08-04]
-<ul>
-<li> Added GL_EXT_pixel_buffer_object, removed GL_NV_element_array
-<li> Fixed GLEW_MX problems
-<li> Bug fix in GL_EXT_texture_rectangle and <tt>wglinfo</tt>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.2.1</b> [03-18-04]
-<ul>
-<li> Bug fix in OpenGL version query (early release of 1.2.0 contained this bug)
-<li> Bug fix in GL_ARB_shader_objects and temporary bug fix in GL_ARB_vertex_shader
-<li> Added flags on GDI support and multisampling to <tt>wglinfo</tt>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.2.0</b> [02-19-04]
-<ul>
-<li> Added full OpenGL 1.5 support
-<li> Added support for multiple rendering contexts with different capabilities
-<li> Added command line flags to <tt>glewinfo</tt> for selecting displays and visuals
-<li> Added GLX_SGIS_multisample, GLX_SUN_video_resize, and GL_SUN_read_video_pixels
-<li> Added MinGW/MSYS support
-<li> Bug fixes in GL_ARB_shader_objects and the OS X build
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.1.4</b> [12-15-03]
-<ul>
-<li> Added GL_APPLE_float_pixels, GL_APPLE_texture_range, 
-GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp,
-GLX_ATI_pixel_format_float, and GLX_ATI_render_texture
-<li> Bug fixes in GL_ATI_map_object_buffer and GL_ATI_fragment_shader
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.1.3</b> [10-28-03]
-<ul>
-<li> Added Solaris and Darwin support
-<li> Added GL_ARB_fragment_shader, GL_ARB_shader_objects, and GL_ARB_vertex_shader
-<li> Fixed bug in GL_WIN_swap_hint
-<li> Removed <tt>glewinfo</tt>'s dependency on <tt>GLUT</tt>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.1.2</b> [09-15-03]
-<ul>
-<li> Removed dependency on WGL_{ARB,EXT}_extensions_string to make GLEW run on Matrox cards
-<li> Added glewGetString for querying the GLEW version string
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.1.1</b> [08-11-03]
-<ul>
-<li> Added GLX_NV_float_buffer, GL_ARB_shading_language_100, and GL_ARB_texture_non_power_of_two
-<li> Fixed bug in GL_ARB_vertex_buffer_object
-<li> Minor updates in documentation
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.1.0</b> [07-08-03]
-<ul>
-<li> Added automatic code generation
-<li> Added almost every extension in the registry
-<li> Added separate namespace
-<li> Added Irix support
-<li> Updated documentation
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.7</b> [06-29-03]
-<ul>
-<li> Added GL_EXT_depth_bounds_test
-<li> Fixed typos
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.6</b> [05-05-03]
-<ul>
-<li> Added ARB_vertex_buffer_object and NV_half_float
-<li> Updated <tt>wglinfo</tt>
-<li> Temporary Linux bug fixes (problems with SDL and MESA)
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.5</b> [02-17-03]
-<ul>
-<li> Bug fixes
-<li> Added <tt>wglinfo</tt>
-<li> Updated documentation
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.4</b> [02-02-03]
-<ul>
-<li> Added NV_texture_expand_normal
-<li> Added mingw support
-<li> Updated documentation
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.3</b> [01-09-03]
-<ul>
-<li> Cleaned up ATI extensions
-<li> Changed function prototypes to match glext.h
-<li> Added EXT_texture3D
-<li> Fixed typos in ATI_vertex_attrib_array_object and ATI_draw_buffers
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.2</b> [12-21-02]
-<ul>
-<li> Added list of supported extensions to documentation
-<li> Added NV_half_float and NV_texgen_emboss
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.1</b> [12-17-02]
-<ul>
-<li> Bug fixes
-<li> Added glewGetExtension
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.0</b> [12-12-02]
-<ul>
-<li> Initial release
-</ul>
-</ul>
-<hr align="center">
-
diff --git a/src/other/glew/auto/extensions/.dummy b/src/other/glew/auto/extensions/.dummy
deleted file mode 100644
index e69de29..0000000
diff --git a/src/other/glew/auto/extensions/GLX_3DFX_multisample b/src/other/glew/auto/extensions/GLX_3DFX_multisample
deleted file mode 100644
index 01b2150..0000000
--- a/src/other/glew/auto/extensions/GLX_3DFX_multisample
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_3DFX_multisample
-http://www.opengl.org/registry/specs/3DFX/3dfx_multisample.txt
-GLX_3DFX_multisample
-	GLX_SAMPLE_BUFFERS_3DFX 0x8050
-	GLX_SAMPLES_3DFX 0x8051
diff --git a/src/other/glew/auto/extensions/GLX_ARB_create_context b/src/other/glew/auto/extensions/GLX_ARB_create_context
deleted file mode 100644
index f7b7de6..0000000
--- a/src/other/glew/auto/extensions/GLX_ARB_create_context
+++ /dev/null
@@ -1,9 +0,0 @@
-GLX_ARB_create_context
-http://www.opengl.org/registry/specs/ARB/glx_create_context.txt
-GLX_ARB_create_context
-	GLX_CONTEXT_DEBUG_BIT_ARB 0x0001
-	GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002
-	GLX_CONTEXT_MAJOR_VERSION_ARB 0x2091
-	GLX_CONTEXT_MINOR_VERSION_ARB 0x2092
-	GLX_CONTEXT_FLAGS_ARB 0x2094
-	GLXContext glXCreateContextAttribsARB (Display* dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list)
diff --git a/src/other/glew/auto/extensions/GLX_ARB_create_context_profile b/src/other/glew/auto/extensions/GLX_ARB_create_context_profile
deleted file mode 100644
index 15540ce..0000000
--- a/src/other/glew/auto/extensions/GLX_ARB_create_context_profile
+++ /dev/null
@@ -1,6 +0,0 @@
-GLX_ARB_create_context_profile
-http://www.opengl.org/registry/specs/ARB/glx_create_context.txt
-GLX_ARB_create_context_profile
-	GLX_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
-	GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
-	GLX_CONTEXT_PROFILE_MASK_ARB 0x9126
diff --git a/src/other/glew/auto/extensions/GLX_ARB_fbconfig_float b/src/other/glew/auto/extensions/GLX_ARB_fbconfig_float
deleted file mode 100644
index 0e93c1b..0000000
--- a/src/other/glew/auto/extensions/GLX_ARB_fbconfig_float
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_ARB_fbconfig_float
-http://www.opengl.org/registry/specs/ARB/color_buffer_float.txt
-GLX_ARB_fbconfig_float
-	GLX_RGBA_FLOAT_BIT 0x00000004
-	GLX_RGBA_FLOAT_TYPE 0x20B9
diff --git a/src/other/glew/auto/extensions/GLX_ARB_framebuffer_sRGB b/src/other/glew/auto/extensions/GLX_ARB_framebuffer_sRGB
deleted file mode 100644
index b1b0ced..0000000
--- a/src/other/glew/auto/extensions/GLX_ARB_framebuffer_sRGB
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_ARB_framebuffer_sRGB
-http://www.opengl.org/registry/specs/ARB/framebuffer_sRGB.txt
-GLX_ARB_framebuffer_sRGB
-	GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20B2
diff --git a/src/other/glew/auto/extensions/GLX_ARB_get_proc_address b/src/other/glew/auto/extensions/GLX_ARB_get_proc_address
deleted file mode 100644
index 5c066d7..0000000
--- a/src/other/glew/auto/extensions/GLX_ARB_get_proc_address
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_ARB_get_proc_address
-http://oss.sgi.com/projects/ogl-sample/registry/ARB/get_proc_address.txt
-GLX_ARB_get_proc_address
-	extern void ( * glXGetProcAddressARB (const GLubyte *procName)) (void);
diff --git a/src/other/glew/auto/extensions/GLX_ARB_multisample b/src/other/glew/auto/extensions/GLX_ARB_multisample
deleted file mode 100644
index abae704..0000000
--- a/src/other/glew/auto/extensions/GLX_ARB_multisample
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_ARB_multisample
-http://www.opengl.org/registry/specs/ARB/multisample.txt
-GLX_ARB_multisample
-	GLX_SAMPLE_BUFFERS_ARB 100000
-	GLX_SAMPLES_ARB 100001
diff --git a/src/other/glew/auto/extensions/GLX_ARB_vertex_buffer_object b/src/other/glew/auto/extensions/GLX_ARB_vertex_buffer_object
deleted file mode 100644
index cb570ce..0000000
--- a/src/other/glew/auto/extensions/GLX_ARB_vertex_buffer_object
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_ARB_vertex_buffer_object
-http://www.opengl.org/registry/specs/ARB/vertex_buffer_object.txt
-GLX_ARB_vertex_buffer_object
-	GLX_CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB 0x2095
diff --git a/src/other/glew/auto/extensions/GLX_ATI_pixel_format_float b/src/other/glew/auto/extensions/GLX_ATI_pixel_format_float
deleted file mode 100644
index 854ca71..0000000
--- a/src/other/glew/auto/extensions/GLX_ATI_pixel_format_float
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_ATI_pixel_format_float
-
-GLX_ATI_pixel_format_float
-	GLX_RGBA_FLOAT_ATI_BIT 0x00000100
diff --git a/src/other/glew/auto/extensions/GLX_ATI_render_texture b/src/other/glew/auto/extensions/GLX_ATI_render_texture
deleted file mode 100644
index 254eb9f..0000000
--- a/src/other/glew/auto/extensions/GLX_ATI_render_texture
+++ /dev/null
@@ -1,41 +0,0 @@
-GLX_ATI_render_texture
-
-GLX_ATI_render_texture
-	GLX_BIND_TO_TEXTURE_RGB_ATI         0x9800
-	GLX_BIND_TO_TEXTURE_RGBA_ATI        0x9801
-	GLX_TEXTURE_FORMAT_ATI              0x9802
-	GLX_TEXTURE_TARGET_ATI              0x9803
-	GLX_MIPMAP_TEXTURE_ATI              0x9804
-	GLX_TEXTURE_RGB_ATI                 0x9805
-	GLX_TEXTURE_RGBA_ATI                0x9806
-	GLX_NO_TEXTURE_ATI                  0x9807
-	GLX_TEXTURE_CUBE_MAP_ATI            0x9808
-	GLX_TEXTURE_1D_ATI                  0x9809
-	GLX_TEXTURE_2D_ATI                  0x980A
-	GLX_MIPMAP_LEVEL_ATI                0x980B
-	GLX_CUBE_MAP_FACE_ATI               0x980C
-	GLX_TEXTURE_CUBE_MAP_POSITIVE_X_ATI 0x980D
-	GLX_TEXTURE_CUBE_MAP_NEGATIVE_X_ATI 0x980E
-	GLX_TEXTURE_CUBE_MAP_POSITIVE_Y_ATI 0x980F
-	GLX_TEXTURE_CUBE_MAP_NEGATIVE_Y_ATI 0x9810
-	GLX_TEXTURE_CUBE_MAP_POSITIVE_Z_ATI 0x9811
-	GLX_TEXTURE_CUBE_MAP_NEGATIVE_Z_ATI 0x9812
-	GLX_FRONT_LEFT_ATI                  0x9813
-	GLX_FRONT_RIGHT_ATI                 0x9814
-	GLX_BACK_LEFT_ATI                   0x9815
-	GLX_BACK_RIGHT_ATI                  0x9816
-	GLX_AUX0_ATI                        0x9817
-	GLX_AUX1_ATI                        0x9818
-	GLX_AUX2_ATI                        0x9819
-	GLX_AUX3_ATI                        0x981A
-	GLX_AUX4_ATI                        0x981B
-	GLX_AUX5_ATI                        0x981C
-	GLX_AUX6_ATI                        0x981D
-	GLX_AUX7_ATI                        0x981E
-	GLX_AUX8_ATI                        0x981F
-	GLX_AUX9_ATI                        0x9820
-	GLX_BIND_TO_TEXTURE_LUMINANCE_ATI   0x9821
-	GLX_BIND_TO_TEXTURE_INTENSITY_ATI   0x9822
-	void glXBindTexImageATI (Display *dpy, GLXPbuffer pbuf, int buffer)
-	void glXReleaseTexImageATI (Display *dpy, GLXPbuffer pbuf, int buffer)
-	void glXDrawableAttribATI (Display *dpy, GLXDrawable draw, const int *attrib_list)
diff --git a/src/other/glew/auto/extensions/GLX_EXT_fbconfig_packed_float b/src/other/glew/auto/extensions/GLX_EXT_fbconfig_packed_float
deleted file mode 100644
index 7c7822d..0000000
--- a/src/other/glew/auto/extensions/GLX_EXT_fbconfig_packed_float
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_EXT_fbconfig_packed_float
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_packed_float.txt
-GLX_EXT_fbconfig_packed_float
-	GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT 0x20B1
-	GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT 0x00000008
diff --git a/src/other/glew/auto/extensions/GLX_EXT_framebuffer_sRGB b/src/other/glew/auto/extensions/GLX_EXT_framebuffer_sRGB
deleted file mode 100644
index f51c484..0000000
--- a/src/other/glew/auto/extensions/GLX_EXT_framebuffer_sRGB
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_EXT_framebuffer_sRGB
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_framebuffer_sRGB.txt
-GLX_EXT_framebuffer_sRGB
-	GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20B2
diff --git a/src/other/glew/auto/extensions/GLX_EXT_import_context b/src/other/glew/auto/extensions/GLX_EXT_import_context
deleted file mode 100644
index ecca5fd..0000000
--- a/src/other/glew/auto/extensions/GLX_EXT_import_context
+++ /dev/null
@@ -1,11 +0,0 @@
-GLX_EXT_import_context
-http://www.opengl.org/registry/specs/EXT/import_context.txt
-GLX_EXT_import_context
-	GLX_SHARE_CONTEXT_EXT 0x800A
-	GLX_VISUAL_ID_EXT 0x800B
-	GLX_SCREEN_EXT 0x800C
-	void glXFreeContextEXT (Display* dpy, GLXContext context)
-	GLXContextID glXGetContextIDEXT (const GLXContext context)
-	GLXContext glXImportContextEXT (Display* dpy, GLXContextID contextID)
-	int glXQueryContextInfoEXT (Display* dpy, GLXContext context, int attribute,int *value)
-	typedef XID GLXContextID
diff --git a/src/other/glew/auto/extensions/GLX_EXT_scene_marker b/src/other/glew/auto/extensions/GLX_EXT_scene_marker
deleted file mode 100644
index 5c3fa86..0000000
--- a/src/other/glew/auto/extensions/GLX_EXT_scene_marker
+++ /dev/null
@@ -1,3 +0,0 @@
-GLX_EXT_scene_marker
-http://www.opengl.org/registry/specs/EXT/scene_marker.txt
-GLX_EXT_scene_marker
diff --git a/src/other/glew/auto/extensions/GLX_EXT_swap_control b/src/other/glew/auto/extensions/GLX_EXT_swap_control
deleted file mode 100644
index 56372c0..0000000
--- a/src/other/glew/auto/extensions/GLX_EXT_swap_control
+++ /dev/null
@@ -1,6 +0,0 @@
-GLX_EXT_swap_control
-http://www.opengl.org/registry/specs/EXT/swap_control.txt
-GLX_EXT_swap_control
-	GLX_SWAP_INTERVAL_EXT 0x20F1
-	GLX_MAX_SWAP_INTERVAL_EXT 0x20F2
-	void glXSwapIntervalEXT (Display* dpy, GLXDrawable drawable, int interval)
diff --git a/src/other/glew/auto/extensions/GLX_EXT_texture_from_pixmap b/src/other/glew/auto/extensions/GLX_EXT_texture_from_pixmap
deleted file mode 100644
index f835207..0000000
--- a/src/other/glew/auto/extensions/GLX_EXT_texture_from_pixmap
+++ /dev/null
@@ -1,36 +0,0 @@
-GLX_EXT_texture_from_pixmap
-http://www.opengl.org/registry/specs/EXT/texture_from_pixmap.txt
-GLX_EXT_texture_from_pixmap
-	GLX_TEXTURE_1D_BIT_EXT 0x00000001
-	GLX_TEXTURE_2D_BIT_EXT 0x00000002
-	GLX_TEXTURE_RECTANGLE_BIT_EXT 0x00000004
-	GLX_BIND_TO_TEXTURE_RGB_EXT 0x20D0
-	GLX_BIND_TO_TEXTURE_RGBA_EXT 0x20D1
-	GLX_BIND_TO_MIPMAP_TEXTURE_EXT 0x20D2
-	GLX_BIND_TO_TEXTURE_TARGETS_EXT 0x20D3
-	GLX_Y_INVERTED_EXT 0x20D4
-	GLX_TEXTURE_FORMAT_EXT 0x20D5
-	GLX_TEXTURE_TARGET_EXT 0x20D6
-	GLX_MIPMAP_TEXTURE_EXT 0x20D7
-	GLX_TEXTURE_FORMAT_NONE_EXT 0x20D8
-	GLX_TEXTURE_FORMAT_RGB_EXT 0x20D9
-	GLX_TEXTURE_FORMAT_RGBA_EXT 0x20DA
-	GLX_TEXTURE_1D_EXT 0x20DB
-	GLX_TEXTURE_2D_EXT 0x20DC
-	GLX_TEXTURE_RECTANGLE_EXT 0x20DD
-	GLX_FRONT_LEFT_EXT 0x20DE
-	GLX_FRONT_RIGHT_EXT 0x20DF
-	GLX_BACK_LEFT_EXT 0x20E0
-	GLX_BACK_RIGHT_EXT 0x20E1
-	GLX_AUX0_EXT 0x20E2
-	GLX_AUX1_EXT 0x20E3
-	GLX_AUX2_EXT 0x20E4
-	GLX_AUX3_EXT 0x20E5
-	GLX_AUX4_EXT 0x20E6
-	GLX_AUX5_EXT 0x20E7
-	GLX_AUX6_EXT 0x20E8
-	GLX_AUX7_EXT 0x20E9
-	GLX_AUX8_EXT 0x20EA
-	GLX_AUX9_EXT 0x20EB
-	void glXBindTexImageEXT (Display* display, GLXDrawable drawable, int buffer, const int *attrib_list)
-	void glXReleaseTexImageEXT (Display* display, GLXDrawable drawable, int buffer)
diff --git a/src/other/glew/auto/extensions/GLX_EXT_visual_info b/src/other/glew/auto/extensions/GLX_EXT_visual_info
deleted file mode 100644
index 7db919c..0000000
--- a/src/other/glew/auto/extensions/GLX_EXT_visual_info
+++ /dev/null
@@ -1,19 +0,0 @@
-GLX_EXT_visual_info
-http://www.opengl.org/registry/specs/EXT/visual_info.txt
-GLX_EXT_visual_info
-	GLX_X_VISUAL_TYPE_EXT 0x22
-	GLX_TRANSPARENT_TYPE_EXT 0x23
-	GLX_TRANSPARENT_INDEX_VALUE_EXT 0x24
-	GLX_TRANSPARENT_RED_VALUE_EXT 0x25
-	GLX_TRANSPARENT_GREEN_VALUE_EXT 0x26
-	GLX_TRANSPARENT_BLUE_VALUE_EXT 0x27
-	GLX_TRANSPARENT_ALPHA_VALUE_EXT 0x28
-	GLX_NONE_EXT 0x8000
-	GLX_TRUE_COLOR_EXT 0x8002
-	GLX_DIRECT_COLOR_EXT 0x8003
-	GLX_PSEUDO_COLOR_EXT 0x8004
-	GLX_STATIC_COLOR_EXT 0x8005
-	GLX_GRAY_SCALE_EXT 0x8006
-	GLX_STATIC_GRAY_EXT 0x8007
-	GLX_TRANSPARENT_RGB_EXT 0x8008
-	GLX_TRANSPARENT_INDEX_EXT 0x8009
diff --git a/src/other/glew/auto/extensions/GLX_EXT_visual_rating b/src/other/glew/auto/extensions/GLX_EXT_visual_rating
deleted file mode 100644
index fc86674..0000000
--- a/src/other/glew/auto/extensions/GLX_EXT_visual_rating
+++ /dev/null
@@ -1,6 +0,0 @@
-GLX_EXT_visual_rating
-http://www.opengl.org/registry/specs/EXT/visual_rating.txt
-GLX_EXT_visual_rating
-	GLX_VISUAL_CAVEAT_EXT 0x20
-	GLX_SLOW_VISUAL_EXT 0x8001
-	GLX_NON_CONFORMANT_VISUAL_EXT 0x800D
diff --git a/src/other/glew/auto/extensions/GLX_INTEL_swap_event b/src/other/glew/auto/extensions/GLX_INTEL_swap_event
deleted file mode 100644
index d9a7f7c..0000000
--- a/src/other/glew/auto/extensions/GLX_INTEL_swap_event
+++ /dev/null
@@ -1,7 +0,0 @@
-GLX_INTEL_swap_event
-http://www.opengl.org/registry/specs/INTEL/swap_event.txt
-GLX_INTEL_swap_event
-	GLX_EXCHANGE_COMPLETE_INTEL 0x8180
-	GLX_COPY_COMPLETE_INTEL 0x8181
-	GLX_FLIP_COMPLETE_INTEL 0x8182
-	GLX_BUFFER_SWAP_COMPLETE_INTEL_MASK 0x04000000
diff --git a/src/other/glew/auto/extensions/GLX_MESA_agp_offset b/src/other/glew/auto/extensions/GLX_MESA_agp_offset
deleted file mode 100644
index 5f307cd..0000000
--- a/src/other/glew/auto/extensions/GLX_MESA_agp_offset
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_MESA_agp_offset
-http://www.opengl.org/registry/specs/MESA/agp_offset.txt
-GLX_MESA_agp_offset
-	unsigned int glXGetAGPOffsetMESA (const void* pointer)
diff --git a/src/other/glew/auto/extensions/GLX_MESA_copy_sub_buffer b/src/other/glew/auto/extensions/GLX_MESA_copy_sub_buffer
deleted file mode 100644
index b6557e7..0000000
--- a/src/other/glew/auto/extensions/GLX_MESA_copy_sub_buffer
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_MESA_copy_sub_buffer
-http://www.opengl.org/registry/specs/MESA/copy_sub_buffer.txt
-GLX_MESA_copy_sub_buffer
-	void glXCopySubBufferMESA (Display* dpy, GLXDrawable drawable, int x, int y, int width, int height)
diff --git a/src/other/glew/auto/extensions/GLX_MESA_pixmap_colormap b/src/other/glew/auto/extensions/GLX_MESA_pixmap_colormap
deleted file mode 100644
index e59956c..0000000
--- a/src/other/glew/auto/extensions/GLX_MESA_pixmap_colormap
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_MESA_pixmap_colormap
-http://www.opengl.org/registry/specs/MESA/pixmap_colormap.txt
-GLX_MESA_pixmap_colormap
-	GLXPixmap glXCreateGLXPixmapMESA (Display* dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap)
diff --git a/src/other/glew/auto/extensions/GLX_MESA_release_buffers b/src/other/glew/auto/extensions/GLX_MESA_release_buffers
deleted file mode 100644
index cfd1091..0000000
--- a/src/other/glew/auto/extensions/GLX_MESA_release_buffers
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_MESA_release_buffers
-http://www.opengl.org/registry/specs/MESA/release_buffers.txt
-GLX_MESA_release_buffers
-	Bool glXReleaseBuffersMESA (Display* dpy, GLXDrawable d)
diff --git a/src/other/glew/auto/extensions/GLX_MESA_set_3dfx_mode b/src/other/glew/auto/extensions/GLX_MESA_set_3dfx_mode
deleted file mode 100644
index 03a263d..0000000
--- a/src/other/glew/auto/extensions/GLX_MESA_set_3dfx_mode
+++ /dev/null
@@ -1,6 +0,0 @@
-GLX_MESA_set_3dfx_mode
-http://www.opengl.org/registry/specs/MESA/set_3dfx_mode.txt
-GLX_MESA_set_3dfx_mode
-	GLX_3DFX_WINDOW_MODE_MESA 0x1
-	GLX_3DFX_FULLSCREEN_MODE_MESA 0x2
-	GLboolean glXSet3DfxModeMESA (GLint mode)
diff --git a/src/other/glew/auto/extensions/GLX_NV_copy_image b/src/other/glew/auto/extensions/GLX_NV_copy_image
deleted file mode 100644
index acaef8c..0000000
--- a/src/other/glew/auto/extensions/GLX_NV_copy_image
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_NV_copy_image
-http://www.opengl.org/registry/specs/NV/copy_image.txt
-GLX_NV_copy_image
-  void glXCopyImageSubDataNV (Display *dpy, GLXContext srcCtx, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLXContext dstCtx, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth)
diff --git a/src/other/glew/auto/extensions/GLX_NV_float_buffer b/src/other/glew/auto/extensions/GLX_NV_float_buffer
deleted file mode 100644
index cc9185e..0000000
--- a/src/other/glew/auto/extensions/GLX_NV_float_buffer
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_NV_float_buffer
-http://cvs1.nvidia.com/inc/GL/glxtokens.h
-GLX_NV_float_buffer
-	GLX_FLOAT_COMPONENTS_NV 0x20B0
diff --git a/src/other/glew/auto/extensions/GLX_NV_present_video b/src/other/glew/auto/extensions/GLX_NV_present_video
deleted file mode 100644
index 0078079..0000000
--- a/src/other/glew/auto/extensions/GLX_NV_present_video
+++ /dev/null
@@ -1,6 +0,0 @@
-GLX_NV_present_video
-http://www.opengl.org/registry/specs/NV/present_video.txt
-GLX_NV_present_video
-	GLX_NUM_VIDEO_SLOTS_NV 0x20F0
-	int glXBindVideoDeviceNV (Display* dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list)
-	unsigned int* glXEnumerateVideoDevicesNV (Display *dpy, int screen, int *nelements)
diff --git a/src/other/glew/auto/extensions/GLX_NV_swap_group b/src/other/glew/auto/extensions/GLX_NV_swap_group
deleted file mode 100644
index ec40bca..0000000
--- a/src/other/glew/auto/extensions/GLX_NV_swap_group
+++ /dev/null
@@ -1,9 +0,0 @@
-GLX_NV_swap_group
-http://www.opengl.org/registry/specs/NV/glx_swap_group.txt
-GLX_NV_swap_group
-	Bool glXBindSwapBarrierNV (Display* dpy, GLuint group, GLuint barrier)
-	Bool glXJoinSwapGroupNV (Display* dpy, GLXDrawable drawable, GLuint group)
-	Bool glXQueryFrameCountNV (Display* dpy, int screen, GLuint *count)
-	Bool glXQueryMaxSwapGroupsNV (Display* dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers)
-	Bool glXQuerySwapGroupNV (Display* dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier)
-	Bool glXResetFrameCountNV (Display* dpy, int screen)
diff --git a/src/other/glew/auto/extensions/GLX_NV_vertex_array_range b/src/other/glew/auto/extensions/GLX_NV_vertex_array_range
deleted file mode 100644
index 11afe17..0000000
--- a/src/other/glew/auto/extensions/GLX_NV_vertex_array_range
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_NV_vertex_array_range
-http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_array_range.txt
-GLX_NV_vertex_array_range
-	void * glXAllocateMemoryNV (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority)
-	void glXFreeMemoryNV (void *pointer)
diff --git a/src/other/glew/auto/extensions/GLX_NV_video_output b/src/other/glew/auto/extensions/GLX_NV_video_output
deleted file mode 100644
index 1bd30fc..0000000
--- a/src/other/glew/auto/extensions/GLX_NV_video_output
+++ /dev/null
@@ -1,19 +0,0 @@
-GLX_NV_video_output
-http://www.opengl.org/registry/specs/NV/glx_video_out.txt
-GLX_NV_video_output
-	GLX_VIDEO_OUT_COLOR_NV 0x20C3
-	GLX_VIDEO_OUT_ALPHA_NV 0x20C4
-	GLX_VIDEO_OUT_DEPTH_NV 0x20C5
-	GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
-	GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
-	GLX_VIDEO_OUT_FRAME_NV 0x20C8
-	GLX_VIDEO_OUT_FIELD_1_NV 0x20C9
-	GLX_VIDEO_OUT_FIELD_2_NV 0x20CA
-	GLX_VIDEO_OUT_STACKED_FIELDS_1_2_NV 0x20CB
-	GLX_VIDEO_OUT_STACKED_FIELDS_2_1_NV 0x20CC
-	int glXBindVideoImageNV (Display* dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer)
-	int glXGetVideoDeviceNV (Display* dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice)
-	int glXGetVideoInfoNV (Display* dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo)
-	int glXReleaseVideoDeviceNV (Display* dpy, int screen, GLXVideoDeviceNV VideoDevice)
-	int glXReleaseVideoImageNV (Display* dpy, GLXPbuffer pbuf)
-	int glXSendPbufferToVideoNV (Display* dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock)
diff --git a/src/other/glew/auto/extensions/GLX_OML_swap_method b/src/other/glew/auto/extensions/GLX_OML_swap_method
deleted file mode 100644
index 1ad2d4f..0000000
--- a/src/other/glew/auto/extensions/GLX_OML_swap_method
+++ /dev/null
@@ -1,7 +0,0 @@
-GLX_OML_swap_method
-http://www.opengl.org/registry/specs/OML/glx_swap_method.txt
-GLX_OML_swap_method
-	GLX_SWAP_METHOD_OML 0x8060
-	GLX_SWAP_EXCHANGE_OML 0x8061
-	GLX_SWAP_COPY_OML 0x8062
-	GLX_SWAP_UNDEFINED_OML 0x8063
diff --git a/src/other/glew/auto/extensions/GLX_OML_sync_control b/src/other/glew/auto/extensions/GLX_OML_sync_control
deleted file mode 100644
index 5de293b..0000000
--- a/src/other/glew/auto/extensions/GLX_OML_sync_control
+++ /dev/null
@@ -1,8 +0,0 @@
-GLX_OML_sync_control
-http://www.opengl.org/registry/specs/OML/glx_sync_control.txt
-GLX_OML_sync_control
-	Bool glXGetMscRateOML (Display* dpy, GLXDrawable drawable, int32_t* numerator, int32_t* denominator)
-	Bool glXGetSyncValuesOML (Display* dpy, GLXDrawable drawable, int64_t* ust, int64_t* msc, int64_t* sbc)
-	int64_t glXSwapBuffersMscOML (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder)
-	Bool glXWaitForMscOML (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder, int64_t* ust, int64_t* msc, int64_t* sbc)
-	Bool glXWaitForSbcOML (Display* dpy, GLXDrawable drawable, int64_t target_sbc, int64_t* ust, int64_t* msc, int64_t* sbc)
diff --git a/src/other/glew/auto/extensions/GLX_SGIS_blended_overlay b/src/other/glew/auto/extensions/GLX_SGIS_blended_overlay
deleted file mode 100644
index 27cc982..0000000
--- a/src/other/glew/auto/extensions/GLX_SGIS_blended_overlay
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_SGIS_blended_overlay
-http://www.opengl.org/registry/specs/SGIS/blended_overlay.txt
-GLX_SGIS_blended_overlay
-	GLX_BLENDED_RGBA_SGIS 0x8025
diff --git a/src/other/glew/auto/extensions/GLX_SGIS_color_range b/src/other/glew/auto/extensions/GLX_SGIS_color_range
deleted file mode 100644
index 5416dcb..0000000
--- a/src/other/glew/auto/extensions/GLX_SGIS_color_range
+++ /dev/null
@@ -1,12 +0,0 @@
-GLX_SGIS_color_range
-http://www.opengl.org/registry/specs/SGIS/color_range.txt
-GLX_SGIS_color_range
-	GLX_MAX_GREEN_SGIS 0
-	GLX_MIN_RED_SGIS 0
-	GLX_MIN_BLUE_SGIS 0
-	GLX_MAX_RED_SGIS 0
-	GLX_MAX_ALPHA_SGIS 0
-	GLX_MIN_GREEN_SGIS 0
-	GLX_MIN_ALPHA_SGIS 0
-	GLX_EXTENDED_RANGE_SGIS 0
-	GLX_MAX_BLUE_SGIS 0
diff --git a/src/other/glew/auto/extensions/GLX_SGIS_multisample b/src/other/glew/auto/extensions/GLX_SGIS_multisample
deleted file mode 100644
index 9d22b47..0000000
--- a/src/other/glew/auto/extensions/GLX_SGIS_multisample
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_SGIS_multisample
-http://www.opengl.org/registry/specs/SGIS/multisample.txt
-GLX_SGIS_multisample
-	GLX_SAMPLE_BUFFERS_SGIS 100000
-	GLX_SAMPLES_SGIS 100001
diff --git a/src/other/glew/auto/extensions/GLX_SGIS_shared_multisample b/src/other/glew/auto/extensions/GLX_SGIS_shared_multisample
deleted file mode 100644
index 274e90f..0000000
--- a/src/other/glew/auto/extensions/GLX_SGIS_shared_multisample
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_SGIS_shared_multisample
-
-GLX_SGIS_shared_multisample
-	GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026
-	GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027
diff --git a/src/other/glew/auto/extensions/GLX_SGIX_fbconfig b/src/other/glew/auto/extensions/GLX_SGIX_fbconfig
deleted file mode 100644
index ac0d049..0000000
--- a/src/other/glew/auto/extensions/GLX_SGIX_fbconfig
+++ /dev/null
@@ -1,22 +0,0 @@
-GLX_SGIX_fbconfig
-http://www.opengl.org/registry/specs/SGIX/fbconfig.txt
-GLX_SGIX_fbconfig
-	GLX_WINDOW_BIT_SGIX 0x00000001
-	GLX_RGBA_BIT_SGIX 0x00000001
-	GLX_PIXMAP_BIT_SGIX 0x00000002
-	GLX_COLOR_INDEX_BIT_SGIX 0x00000002
-	GLX_SCREEN_EXT 0x800C
-	GLX_DRAWABLE_TYPE_SGIX 0x8010
-	GLX_RENDER_TYPE_SGIX 0x8011
-	GLX_X_RENDERABLE_SGIX 0x8012
-	GLX_FBCONFIG_ID_SGIX 0x8013
-	GLX_RGBA_TYPE_SGIX 0x8014
-	GLX_COLOR_INDEX_TYPE_SGIX 0x8015
-	GLXFBConfigSGIX* glXChooseFBConfigSGIX (Display *dpy, int screen, const int *attrib_list, int *nelements)
-	GLXContext glXCreateContextWithConfigSGIX (Display* dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct)
-	GLXPixmap glXCreateGLXPixmapWithConfigSGIX (Display* dpy, GLXFBConfig config, Pixmap pixmap)
-	int glXGetFBConfigAttribSGIX (Display* dpy, GLXFBConfigSGIX config, int attribute, int *value)
-	GLXFBConfigSGIX glXGetFBConfigFromVisualSGIX (Display* dpy, XVisualInfo *vis)
-	XVisualInfo* glXGetVisualFromFBConfigSGIX (Display *dpy, GLXFBConfig config)
-	typedef XID GLXFBConfigIDSGIX
-	typedef struct __GLXFBConfigRec *GLXFBConfigSGIX
diff --git a/src/other/glew/auto/extensions/GLX_SGIX_hyperpipe b/src/other/glew/auto/extensions/GLX_SGIX_hyperpipe
deleted file mode 100644
index 79ec302..0000000
--- a/src/other/glew/auto/extensions/GLX_SGIX_hyperpipe
+++ /dev/null
@@ -1,25 +0,0 @@
-GLX_SGIX_hyperpipe
-http://oss.sgi.com/projects/ogl-sample/registry/SGIX/hyperpipe_group.txt
-GLX_SGIX_hyperpipe
-	GLX_HYPERPIPE_ID_SGIX 0x8030
-	GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80
-	GLX_HYPERPIPE_DISPLAY_PIPE_SGIX 0x00000001
-	GLX_HYPERPIPE_RENDER_PIPE_SGIX 0x00000002
-	GLX_PIPE_RECT_SGIX 0x00000001
-	GLX_PIPE_RECT_LIMITS_SGIX 0x00000002
-	GLX_HYPERPIPE_STEREO_SGIX 0x00000003
-	GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX 0x00000004
-	GLX_BAD_HYPERPIPE_CONFIG_SGIX 91
-	GLX_BAD_HYPERPIPE_SGIX 92
-	typedef struct {  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];   int  networkId; } GLXHyperpipeNetworkSGIX;
-	typedef struct {  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];   int channel;   unsigned int participationType;   int timeSlice; } GLXHyperpipeConfigSGIX;
-	typedef struct {  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];   int srcXOrigin;   int srcYOrigin;   int srcWidth;   int srcHeight;   int destXOrigin;   int destYOrigin;   int destWidth;   int destHeight; } GLXPipeRect;
-	typedef struct {  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX];   int XOrigin;   int YOrigin;   int maxHeight;   int maxWidth; } GLXPipeRectLimits;
-	GLXHyperpipeNetworkSGIX * glXQueryHyperpipeNetworkSGIX (Display *dpy, int *npipes)
-	int glXHyperpipeConfigSGIX (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId)
-	GLXHyperpipeConfigSGIX * glXQueryHyperpipeConfigSGIX (Display *dpy, int hpId, int *npipes)
-	int glXDestroyHyperpipeConfigSGIX (Display *dpy, int hpId)
-	int glXBindHyperpipeSGIX (Display *dpy, int hpId)
-	int glXQueryHyperpipeBestAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList)
-	int glXHyperpipeAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *attribList)
-	int glXQueryHyperpipeAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList)
diff --git a/src/other/glew/auto/extensions/GLX_SGIX_pbuffer b/src/other/glew/auto/extensions/GLX_SGIX_pbuffer
deleted file mode 100644
index 4acf71c..0000000
--- a/src/other/glew/auto/extensions/GLX_SGIX_pbuffer
+++ /dev/null
@@ -1,35 +0,0 @@
-GLX_SGIX_pbuffer
-http://www.opengl.org/registry/specs/SGIX/pbuffer.txt
-GLX_SGIX_pbuffer
-	GLX_FRONT_LEFT_BUFFER_BIT_SGIX 0x00000001
-	GLX_FRONT_RIGHT_BUFFER_BIT_SGIX 0x00000002
-	GLX_PBUFFER_BIT_SGIX 0x00000004
-	GLX_BACK_LEFT_BUFFER_BIT_SGIX 0x00000004
-	GLX_BACK_RIGHT_BUFFER_BIT_SGIX 0x00000008
-	GLX_AUX_BUFFERS_BIT_SGIX 0x00000010
-	GLX_DEPTH_BUFFER_BIT_SGIX 0x00000020
-	GLX_STENCIL_BUFFER_BIT_SGIX 0x00000040
-	GLX_ACCUM_BUFFER_BIT_SGIX 0x00000080
-	GLX_SAMPLE_BUFFERS_BIT_SGIX 0x00000100
-	GLX_MAX_PBUFFER_WIDTH_SGIX 0x8016
-	GLX_MAX_PBUFFER_HEIGHT_SGIX 0x8017
-	GLX_MAX_PBUFFER_PIXELS_SGIX 0x8018
-	GLX_OPTIMAL_PBUFFER_WIDTH_SGIX 0x8019
-	GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX 0x801A
-	GLX_PRESERVED_CONTENTS_SGIX 0x801B
-	GLX_LARGEST_PBUFFER_SGIX 0x801C
-	GLX_WIDTH_SGIX 0x801D
-	GLX_HEIGHT_SGIX 0x801E
-	GLX_EVENT_MASK_SGIX 0x801F
-	GLX_DAMAGED_SGIX 0x8020
-	GLX_SAVED_SGIX 0x8021
-	GLX_WINDOW_SGIX 0x8022
-	GLX_PBUFFER_SGIX 0x8023
-	GLX_BUFFER_CLOBBER_MASK_SGIX 0x08000000
-	GLXPbuffer glXCreateGLXPbufferSGIX (Display* dpy, GLXFBConfig config, unsigned int width, unsigned int height, int *attrib_list)
-	void glXDestroyGLXPbufferSGIX (Display* dpy, GLXPbuffer pbuf)
-	void glXGetSelectedEventSGIX (Display* dpy, GLXDrawable drawable, unsigned long *mask)
-	void glXQueryGLXPbufferSGIX (Display* dpy, GLXPbuffer pbuf, int attribute, unsigned int *value)
-	void glXSelectEventSGIX (Display* dpy, GLXDrawable drawable, unsigned long mask)
-	typedef XID GLXPbufferSGIX
-	typedef struct { int type; unsigned long serial; Bool send_event; Display *display; GLXDrawable drawable; int event_type; int draw_type; unsigned int mask; int x, y; int width, height; int count; } GLXBufferClobberEventSGIX
diff --git a/src/other/glew/auto/extensions/GLX_SGIX_swap_barrier b/src/other/glew/auto/extensions/GLX_SGIX_swap_barrier
deleted file mode 100644
index 57dd60d..0000000
--- a/src/other/glew/auto/extensions/GLX_SGIX_swap_barrier
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_SGIX_swap_barrier
-http://oss.sgi.com/projects/ogl-sample/registry/SGIX/swap_barrier.txt
-GLX_SGIX_swap_barrier
-	void glXBindSwapBarrierSGIX (Display *dpy, GLXDrawable drawable, int barrier)
-	Bool glXQueryMaxSwapBarriersSGIX (Display *dpy, int screen, int *max)
diff --git a/src/other/glew/auto/extensions/GLX_SGIX_swap_group b/src/other/glew/auto/extensions/GLX_SGIX_swap_group
deleted file mode 100644
index 3530604..0000000
--- a/src/other/glew/auto/extensions/GLX_SGIX_swap_group
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_SGIX_swap_group
-http://oss.sgi.com/projects/ogl-sample/registry/SGIX/swap_group.txt
-GLX_SGIX_swap_group
-	void glXJoinSwapGroupSGIX (Display *dpy, GLXDrawable drawable, GLXDrawable member)
diff --git a/src/other/glew/auto/extensions/GLX_SGIX_video_resize b/src/other/glew/auto/extensions/GLX_SGIX_video_resize
deleted file mode 100644
index cc91996..0000000
--- a/src/other/glew/auto/extensions/GLX_SGIX_video_resize
+++ /dev/null
@@ -1,10 +0,0 @@
-GLX_SGIX_video_resize
-http://www.opengl.org/registry/specs/SGIX/video_resize.txt
-GLX_SGIX_video_resize
-	GLX_SYNC_FRAME_SGIX 0x00000000
-	GLX_SYNC_SWAP_SGIX 0x00000001
-	int glXBindChannelToWindowSGIX (Display* display, int screen, int channel, Window window)
-	int glXChannelRectSGIX (Display* display, int screen, int channel, int x, int y, int w, int h)
-	int glXChannelRectSyncSGIX (Display* display, int screen, int channel, GLenum synctype)
-	int glXQueryChannelDeltasSGIX (Display* display, int screen, int channel, int *x, int *y, int *w, int *h)
-	int glXQueryChannelRectSGIX (Display* display, int screen, int channel, int *dx, int *dy, int *dw, int *dh)
diff --git a/src/other/glew/auto/extensions/GLX_SGIX_visual_select_group b/src/other/glew/auto/extensions/GLX_SGIX_visual_select_group
deleted file mode 100644
index 6c00691..0000000
--- a/src/other/glew/auto/extensions/GLX_SGIX_visual_select_group
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_SGIX_visual_select_group
-http://www.opengl.org/registry/specs/SGIX/visual_select_group.txt
-GLX_SGIX_visual_select_group
-	GLX_VISUAL_SELECT_GROUP_SGIX 0x8028
diff --git a/src/other/glew/auto/extensions/GLX_SGI_cushion b/src/other/glew/auto/extensions/GLX_SGI_cushion
deleted file mode 100644
index ce47e63..0000000
--- a/src/other/glew/auto/extensions/GLX_SGI_cushion
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_SGI_cushion
-http://www.opengl.org/registry/specs/SGI/cushion.txt
-GLX_SGI_cushion
-	void glXCushionSGI (Display* dpy, Window window, float cushion)
diff --git a/src/other/glew/auto/extensions/GLX_SGI_make_current_read b/src/other/glew/auto/extensions/GLX_SGI_make_current_read
deleted file mode 100644
index 857611e..0000000
--- a/src/other/glew/auto/extensions/GLX_SGI_make_current_read
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_SGI_make_current_read
-http://www.opengl.org/registry/specs/SGI/make_current_read.txt
-GLX_SGI_make_current_read
-	GLXDrawable glXGetCurrentReadDrawableSGI (void)
-	Bool glXMakeCurrentReadSGI (Display* dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx)
diff --git a/src/other/glew/auto/extensions/GLX_SGI_swap_control b/src/other/glew/auto/extensions/GLX_SGI_swap_control
deleted file mode 100644
index bab97bd..0000000
--- a/src/other/glew/auto/extensions/GLX_SGI_swap_control
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_SGI_swap_control
-http://www.opengl.org/registry/specs/SGI/swap_control.txt
-GLX_SGI_swap_control
-	int glXSwapIntervalSGI (int interval)
diff --git a/src/other/glew/auto/extensions/GLX_SGI_video_sync b/src/other/glew/auto/extensions/GLX_SGI_video_sync
deleted file mode 100644
index f76b79e..0000000
--- a/src/other/glew/auto/extensions/GLX_SGI_video_sync
+++ /dev/null
@@ -1,5 +0,0 @@
-GLX_SGI_video_sync
-http://www.opengl.org/registry/specs/SGI/video_sync.txt
-GLX_SGI_video_sync
-	int glXGetVideoSyncSGI (uint* count)
-	int glXWaitVideoSyncSGI (int divisor, int remainder, unsigned int* count)
diff --git a/src/other/glew/auto/extensions/GLX_SUN_get_transparent_index b/src/other/glew/auto/extensions/GLX_SUN_get_transparent_index
deleted file mode 100644
index f3b3b64..0000000
--- a/src/other/glew/auto/extensions/GLX_SUN_get_transparent_index
+++ /dev/null
@@ -1,4 +0,0 @@
-GLX_SUN_get_transparent_index
-http://www.opengl.org/registry/specs/SUN/get_transparent_index.txt
-GLX_SUN_get_transparent_index
-	Status glXGetTransparentIndexSUN (Display* dpy, Window overlay, Window underlay, unsigned long *pTransparentIndex)
diff --git a/src/other/glew/auto/extensions/GLX_SUN_video_resize b/src/other/glew/auto/extensions/GLX_SUN_video_resize
deleted file mode 100644
index 0a0cefe..0000000
--- a/src/other/glew/auto/extensions/GLX_SUN_video_resize
+++ /dev/null
@@ -1,7 +0,0 @@
-GLX_SUN_video_resize
-http://wwws.sun.com/software/graphics/opengl/extensions/glx_sun_video_resize.txt
-GLX_SUN_video_resize
-	GL_VIDEO_RESIZE_COMPENSATION_SUN 0x85CD
-	GLX_VIDEO_RESIZE_SUN 0x8171
-	int glXVideoResizeSUN (Display* display, GLXDrawable window, float factor)
-	int glXGetVideoResizeSUN (Display* display, GLXDrawable window, float* factor)
diff --git a/src/other/glew/auto/extensions/GL_3DFX_multisample b/src/other/glew/auto/extensions/GL_3DFX_multisample
deleted file mode 100644
index 7a58d3a..0000000
--- a/src/other/glew/auto/extensions/GL_3DFX_multisample
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_3DFX_multisample
-http://www.opengl.org/registry/specs/3DFX/3dfx_multisample.txt
-GL_3DFX_multisample
-	GL_MULTISAMPLE_3DFX 0x86B2
-	GL_SAMPLE_BUFFERS_3DFX 0x86B3
-	GL_SAMPLES_3DFX 0x86B4
-	GL_MULTISAMPLE_BIT_3DFX 0x20000000
diff --git a/src/other/glew/auto/extensions/GL_3DFX_tbuffer b/src/other/glew/auto/extensions/GL_3DFX_tbuffer
deleted file mode 100644
index d62d4c7..0000000
--- a/src/other/glew/auto/extensions/GL_3DFX_tbuffer
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_3DFX_tbuffer
-http://www.opengl.org/registry/specs/3DFX/tbuffer.txt
-GL_3DFX_tbuffer
-	void glTbufferMask3DFX (GLuint mask)
diff --git a/src/other/glew/auto/extensions/GL_3DFX_texture_compression_FXT1 b/src/other/glew/auto/extensions/GL_3DFX_texture_compression_FXT1
deleted file mode 100644
index c0e4581..0000000
--- a/src/other/glew/auto/extensions/GL_3DFX_texture_compression_FXT1
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_3DFX_texture_compression_FXT1
-http://www.opengl.org/registry/specs/3DFX/texture_compression_FXT1.txt
-GL_3DFX_texture_compression_FXT1
-	GL_COMPRESSED_RGB_FXT1_3DFX 0x86B0
-	GL_COMPRESSED_RGBA_FXT1_3DFX 0x86B1
diff --git a/src/other/glew/auto/extensions/GL_AMD_conservative_depth b/src/other/glew/auto/extensions/GL_AMD_conservative_depth
deleted file mode 100644
index c4489ed..0000000
--- a/src/other/glew/auto/extensions/GL_AMD_conservative_depth
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_AMD_conservative_depth
-http://www.opengl.org/registry/specs/AMD/conservative_depth.txt
-GL_AMD_conservative_depth
diff --git a/src/other/glew/auto/extensions/GL_AMD_draw_buffers_blend b/src/other/glew/auto/extensions/GL_AMD_draw_buffers_blend
deleted file mode 100644
index 74b33a1..0000000
--- a/src/other/glew/auto/extensions/GL_AMD_draw_buffers_blend
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_AMD_draw_buffers_blend
-http://www.opengl.org/registry/specs/AMD/draw_buffers_blend.txt
-GL_AMD_draw_buffers_blend
-	void glBlendEquationIndexedAMD (GLuint buf, GLenum mode)
-	void glBlendEquationSeparateIndexedAMD (GLuint buf, GLenum modeRGB, GLenum modeAlpha)
-	void glBlendFuncIndexedAMD (GLuint buf, GLenum src, GLenum dst)
-	void glBlendFuncSeparateIndexedAMD (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
diff --git a/src/other/glew/auto/extensions/GL_AMD_performance_monitor b/src/other/glew/auto/extensions/GL_AMD_performance_monitor
deleted file mode 100644
index 9cc6191..0000000
--- a/src/other/glew/auto/extensions/GL_AMD_performance_monitor
+++ /dev/null
@@ -1,23 +0,0 @@
-GL_AMD_performance_monitor
-http://www.opengl.org/registry/specs/AMD/performance_monitor.txt
-GL_AMD_performance_monitor
-	GL_UNSIGNED_INT 0x1405
-	GL_FLOAT 0x1406
-	GL_COUNTER_TYPE_AMD 0x8BC0
-	GL_COUNTER_RANGE_AMD 0x8BC1
-	GL_UNSIGNED_INT64_AMD 0x8BC2
-	GL_PERCENTAGE_AMD 0x8BC3
-	GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4
-	GL_PERFMON_RESULT_SIZE_AMD 0x8BC5
-	GL_PERFMON_RESULT_AMD 0x8BC6
-	void glBeginPerfMonitorAMD (GLuint monitor)
-	void glDeletePerfMonitorsAMD (GLsizei n, GLuint* monitors)
-	void glEndPerfMonitorAMD (GLuint monitor)
-	void glGenPerfMonitorsAMD (GLsizei n, GLuint* monitors)
-	void glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint* data, GLint *bytesWritten)
-	void glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, void* data)
-	void glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei* length, char *counterString)
-	void glGetPerfMonitorCountersAMD (GLuint group, GLint* numCounters, GLint *maxActiveCounters, GLsizei countersSize, GLuint *counters)
-	void glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei* length, char *groupString)
-	void glGetPerfMonitorGroupsAMD (GLint* numGroups, GLsizei groupsSize, GLuint *groups)
-	void glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint* counterList)
diff --git a/src/other/glew/auto/extensions/GL_AMD_seamless_cubemap_per_texture b/src/other/glew/auto/extensions/GL_AMD_seamless_cubemap_per_texture
deleted file mode 100644
index 3565655..0000000
--- a/src/other/glew/auto/extensions/GL_AMD_seamless_cubemap_per_texture
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_AMD_seamless_cubemap_per_texture
-http://www.opengl.org/registry/specs/AMD/seamless_cubemap_per_texture.txt
-GL_AMD_seamless_cubemap_per_texture
-	GL_TEXTURE_CUBE_MAP_SEAMLESS_ARB 0x884F
diff --git a/src/other/glew/auto/extensions/GL_AMD_shader_stencil_export b/src/other/glew/auto/extensions/GL_AMD_shader_stencil_export
deleted file mode 100644
index a7b91d7..0000000
--- a/src/other/glew/auto/extensions/GL_AMD_shader_stencil_export
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_AMD_shader_stencil_export
-http://www.opengl.org/registry/specs/AMD/shader_stencil_export.txt
-GL_AMD_shader_stencil_export
diff --git a/src/other/glew/auto/extensions/GL_AMD_texture_texture4 b/src/other/glew/auto/extensions/GL_AMD_texture_texture4
deleted file mode 100644
index 5736c5a..0000000
--- a/src/other/glew/auto/extensions/GL_AMD_texture_texture4
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_AMD_texture_texture4
-http://www.opengl.org/registry/specs/AMD/texture_texture4.txt
-GL_AMD_texture_texture4
diff --git a/src/other/glew/auto/extensions/GL_AMD_vertex_shader_tessellator b/src/other/glew/auto/extensions/GL_AMD_vertex_shader_tessellator
deleted file mode 100644
index db9e4b8..0000000
--- a/src/other/glew/auto/extensions/GL_AMD_vertex_shader_tessellator
+++ /dev/null
@@ -1,12 +0,0 @@
-GL_AMD_vertex_shader_tessellator
-http://www.opengl.org/registry/specs/AMD/vertex_shader_tessellator.txt
-GL_AMD_vertex_shader_tessellator
-	GL_SAMPLER_BUFFER_AMD 0x9001
-	GL_INT_SAMPLER_BUFFER_AMD 0x9002
-	GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD 0x9003
-	GL_TESSELLATION_MODE_AMD 0x9004
-	GL_TESSELLATION_FACTOR_AMD 0x9005
-	GL_DISCRETE_AMD 0x9006
-	GL_CONTINUOUS_AMD 0x9007
-	void glTessellationFactorAMD (GLfloat factor)
-	void glTessellationModeAMD (GLenum mode)
diff --git a/src/other/glew/auto/extensions/GL_APPLE_aux_depth_stencil b/src/other/glew/auto/extensions/GL_APPLE_aux_depth_stencil
deleted file mode 100644
index 34339d3..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_aux_depth_stencil
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_APPLE_aux_depth_stencil
-http://www.opengl.org/registry/specs/APPLE/aux_depth_stencil.txt
-GL_APPLE_aux_depth_stencil
-	GL_AUX_DEPTH_STENCIL_APPLE 0x8A14
diff --git a/src/other/glew/auto/extensions/GL_APPLE_client_storage b/src/other/glew/auto/extensions/GL_APPLE_client_storage
deleted file mode 100644
index 287b632..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_client_storage
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_APPLE_client_storage
-http://www.opengl.org/registry/specs/APPLE/client_storage.txt
-GL_APPLE_client_storage
-	GL_UNPACK_CLIENT_STORAGE_APPLE 0x85B2
diff --git a/src/other/glew/auto/extensions/GL_APPLE_element_array b/src/other/glew/auto/extensions/GL_APPLE_element_array
deleted file mode 100644
index c999f27..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_element_array
+++ /dev/null
@@ -1,11 +0,0 @@
-GL_APPLE_element_array
-http://www.opengl.org/registry/specs/APPLE/element_array.txt
-GL_APPLE_element_array
-	GL_ELEMENT_ARRAY_APPLE 0x8A0C
-	GL_ELEMENT_ARRAY_TYPE_APPLE 0x8A0D
-	GL_ELEMENT_ARRAY_POINTER_APPLE 0x8A0E
-	void glDrawElementArrayAPPLE (GLenum mode, GLint first, GLsizei count)
-	void glDrawRangeElementArrayAPPLE (GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count)
-	void glElementPointerAPPLE (GLenum type, const void* pointer)
-	void glMultiDrawElementArrayAPPLE (GLenum mode, const GLint* first, const GLsizei *count, GLsizei primcount)
-	void glMultiDrawRangeElementArrayAPPLE (GLenum mode, GLuint start, GLuint end, const GLint* first, const GLsizei *count, GLsizei primcount)
diff --git a/src/other/glew/auto/extensions/GL_APPLE_fence b/src/other/glew/auto/extensions/GL_APPLE_fence
deleted file mode 100644
index 1886b38..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_fence
+++ /dev/null
@@ -1,13 +0,0 @@
-GL_APPLE_fence
-http://www.opengl.org/registry/specs/APPLE/fence.txt
-GL_APPLE_fence
-	GL_DRAW_PIXELS_APPLE 0x8A0A
-	GL_FENCE_APPLE 0x8A0B
-	void glDeleteFencesAPPLE (GLsizei n, const GLuint* fences)
-	void glFinishFenceAPPLE (GLuint fence)
-	void glFinishObjectAPPLE (GLenum object, GLint name)
-	void glGenFencesAPPLE (GLsizei n, GLuint* fences)
-	GLboolean glIsFenceAPPLE (GLuint fence)
-	void glSetFenceAPPLE (GLuint fence)
-	GLboolean glTestFenceAPPLE (GLuint fence)
-	GLboolean glTestObjectAPPLE (GLenum object, GLuint name)
diff --git a/src/other/glew/auto/extensions/GL_APPLE_float_pixels b/src/other/glew/auto/extensions/GL_APPLE_float_pixels
deleted file mode 100644
index 8a60870..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_float_pixels
+++ /dev/null
@@ -1,17 +0,0 @@
-GL_APPLE_float_pixels
-http://developer.apple.com/opengl/extensions/apple_float_pixels.html
-GL_APPLE_float_pixels
-	GL_HALF_APPLE 0x140B
-	GL_COLOR_FLOAT_APPLE 0x8A0F
-	GL_RGBA_FLOAT32_APPLE 0x8814
-	GL_RGB_FLOAT32_APPLE 0x8815
-	GL_ALPHA_FLOAT32_APPLE 0x8816
-	GL_INTENSITY_FLOAT32_APPLE 0x8817
-	GL_LUMINANCE_FLOAT32_APPLE 0x8818
-	GL_LUMINANCE_ALPHA_FLOAT32_APPLE 0x8819
-	GL_RGBA_FLOAT16_APPLE 0x881A
-	GL_RGB_FLOAT16_APPLE 0x881B
-	GL_ALPHA_FLOAT16_APPLE 0x881C
-	GL_INTENSITY_FLOAT16_APPLE 0x881D
-	GL_LUMINANCE_FLOAT16_APPLE 0x881E
-	GL_LUMINANCE_ALPHA_FLOAT16_APPLE 0x881F
diff --git a/src/other/glew/auto/extensions/GL_APPLE_flush_buffer_range b/src/other/glew/auto/extensions/GL_APPLE_flush_buffer_range
deleted file mode 100644
index 243cff8..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_flush_buffer_range
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_APPLE_flush_buffer_range
-http://www.opengl.org/registry/specs/APPLE/flush_buffer_range.txt
-GL_APPLE_flush_buffer_range
-	GL_BUFFER_SERIALIZED_MODIFY_APPLE 0x8A12
-	GL_BUFFER_FLUSHING_UNMAP_APPLE 0x8A13
-	void glBufferParameteriAPPLE (GLenum target, GLenum pname, GLint param)
-	void glFlushMappedBufferRangeAPPLE (GLenum target, GLintptr offset, GLsizeiptr size)
diff --git a/src/other/glew/auto/extensions/GL_APPLE_object_purgeable b/src/other/glew/auto/extensions/GL_APPLE_object_purgeable
deleted file mode 100644
index a428e77..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_object_purgeable
+++ /dev/null
@@ -1,12 +0,0 @@
-GL_APPLE_object_purgeable
-http://www.opengl.org/registry/specs/APPLE/object_purgeable.txt
-GL_APPLE_object_purgeable
-	GL_BUFFER_OBJECT_APPLE 0x85B3
-	GL_RELEASED_APPLE 0x8A19
-	GL_VOLATILE_APPLE 0x8A1A
-	GL_RETAINED_APPLE 0x8A1B
-	GL_UNDEFINED_APPLE 0x8A1C
-	GL_PURGEABLE_APPLE 0x8A1D
-	void glGetObjectParameterivAPPLE (GLenum objectType, GLuint name, GLenum pname, GLint* params)
-	GLenum glObjectPurgeableAPPLE (GLenum objectType, GLuint name, GLenum option)
-	GLenum glObjectUnpurgeableAPPLE (GLenum objectType, GLuint name, GLenum option)
diff --git a/src/other/glew/auto/extensions/GL_APPLE_pixel_buffer b/src/other/glew/auto/extensions/GL_APPLE_pixel_buffer
deleted file mode 100644
index 7449f29..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_pixel_buffer
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_APPLE_pixel_buffer
-
-GL_APPLE_pixel_buffer
-	GL_MIN_PBUFFER_VIEWPORT_DIMS_APPLE 0x8A10
diff --git a/src/other/glew/auto/extensions/GL_APPLE_rgb_422 b/src/other/glew/auto/extensions/GL_APPLE_rgb_422
deleted file mode 100644
index 00e4355..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_rgb_422
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_APPLE_rgb_422
-http://www.opengl.org/registry/specs/APPLE/rgb_422.txt
-GL_APPLE_rgb_422
-	GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
-	GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
-	GL_RGB_422_APPLE 0x8A1F
diff --git a/src/other/glew/auto/extensions/GL_APPLE_row_bytes b/src/other/glew/auto/extensions/GL_APPLE_row_bytes
deleted file mode 100644
index 0c60b92..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_row_bytes
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_APPLE_row_bytes
-http://www.opengl.org/registry/specs/APPLE/row_bytes.txt
-GL_APPLE_row_bytes
-	GL_PACK_ROW_BYTES_APPLE 0x8A15
-	GL_UNPACK_ROW_BYTES_APPLE 0x8A16
diff --git a/src/other/glew/auto/extensions/GL_APPLE_specular_vector b/src/other/glew/auto/extensions/GL_APPLE_specular_vector
deleted file mode 100644
index 98a18fa..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_specular_vector
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_APPLE_specular_vector
-http://www.opengl.org/registry/specs/APPLE/specular_vector.txt
-GL_APPLE_specular_vector
-	GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE 0x85B0
diff --git a/src/other/glew/auto/extensions/GL_APPLE_texture_range b/src/other/glew/auto/extensions/GL_APPLE_texture_range
deleted file mode 100644
index 8c5165d..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_texture_range
+++ /dev/null
@@ -1,12 +0,0 @@
-GL_APPLE_texture_range
-http://developer.apple.com/opengl/extensions/apple_texture_range.html
-GL_APPLE_texture_range
-	GL_TEXTURE_STORAGE_HINT_APPLE 0x85BC
-	GL_STORAGE_PRIVATE_APPLE 0x85BD
-	GL_STORAGE_CACHED_APPLE 0x85BE
-	GL_STORAGE_SHARED_APPLE 0x85BF
-	GL_TEXTURE_RANGE_LENGTH_APPLE 0x85B7
-	GL_TEXTURE_RANGE_POINTER_APPLE 0x85B8
-	void glTextureRangeAPPLE (GLenum target, GLsizei length, GLvoid *pointer)
-	void glGetTexParameterPointervAPPLE (GLenum target, GLenum pname, GLvoid **params)
-
diff --git a/src/other/glew/auto/extensions/GL_APPLE_transform_hint b/src/other/glew/auto/extensions/GL_APPLE_transform_hint
deleted file mode 100644
index ac713eb..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_transform_hint
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_APPLE_transform_hint
-http://www.opengl.org/registry/specs/APPLE/transform_hint.txt
-GL_APPLE_transform_hint
-	GL_TRANSFORM_HINT_APPLE 0x85B1
diff --git a/src/other/glew/auto/extensions/GL_APPLE_vertex_array_object b/src/other/glew/auto/extensions/GL_APPLE_vertex_array_object
deleted file mode 100644
index 95da66d..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_vertex_array_object
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_APPLE_vertex_array_object
-http://www.opengl.org/registry/specs/APPLE/vertex_array_object.txt
-GL_APPLE_vertex_array_object
-	GL_VERTEX_ARRAY_BINDING_APPLE 0x85B5
-	void glBindVertexArrayAPPLE (GLuint array)
-	void glDeleteVertexArraysAPPLE (GLsizei n, const GLuint* arrays)
-	void glGenVertexArraysAPPLE (GLsizei n, const GLuint* arrays)
-	GLboolean glIsVertexArrayAPPLE (GLuint array)
diff --git a/src/other/glew/auto/extensions/GL_APPLE_vertex_array_range b/src/other/glew/auto/extensions/GL_APPLE_vertex_array_range
deleted file mode 100644
index 1536f07..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_vertex_array_range
+++ /dev/null
@@ -1,14 +0,0 @@
-GL_APPLE_vertex_array_range
-http://www.opengl.org/registry/specs/APPLE/vertex_array_range.txt
-GL_APPLE_vertex_array_range
-	GL_VERTEX_ARRAY_RANGE_APPLE 0x851D
-	GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE 0x851E
-	GL_VERTEX_ARRAY_STORAGE_HINT_APPLE 0x851F
-	GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_APPLE 0x8520
-	GL_VERTEX_ARRAY_RANGE_POINTER_APPLE 0x8521
-	GL_STORAGE_CLIENT_APPLE 0x85B4
-	GL_STORAGE_CACHED_APPLE 0x85BE
-	GL_STORAGE_SHARED_APPLE 0x85BF
-	void glFlushVertexArrayRangeAPPLE (GLsizei length, void* pointer)
-	void glVertexArrayParameteriAPPLE (GLenum pname, GLint param)
-	void glVertexArrayRangeAPPLE (GLsizei length, void* pointer)
diff --git a/src/other/glew/auto/extensions/GL_APPLE_vertex_program_evaluators b/src/other/glew/auto/extensions/GL_APPLE_vertex_program_evaluators
deleted file mode 100644
index 4bc8dea..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_vertex_program_evaluators
+++ /dev/null
@@ -1,20 +0,0 @@
-GL_APPLE_vertex_program_evaluators
-http://www.opengl.org/registry/specs/APPLE/vertex_program_evaluators.txt
-GL_APPLE_vertex_program_evaluators
-	GL_VERTEX_ATTRIB_MAP1_APPLE 0x8A00
-	GL_VERTEX_ATTRIB_MAP2_APPLE 0x8A01
-	GL_VERTEX_ATTRIB_MAP1_SIZE_APPLE 0x8A02
-	GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE 0x8A03
-	GL_VERTEX_ATTRIB_MAP1_ORDER_APPLE 0x8A04
-	GL_VERTEX_ATTRIB_MAP1_DOMAIN_APPLE 0x8A05
-	GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE 0x8A06
-	GL_VERTEX_ATTRIB_MAP2_COEFF_APPLE 0x8A07
-	GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE 0x8A08
-	GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE 0x8A09
-	void glDisableVertexAttribAPPLE (GLuint index, GLenum pname)
-	void glEnableVertexAttribAPPLE (GLuint index, GLenum pname)
-	GLboolean glIsVertexAttribEnabledAPPLE (GLuint index, GLenum pname)
-	void glMapVertexAttrib1dAPPLE (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble* points)
-	void glMapVertexAttrib1fAPPLE (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat* points)
-	void glMapVertexAttrib2dAPPLE (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble* points)
-	void glMapVertexAttrib2fAPPLE (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat* points)
diff --git a/src/other/glew/auto/extensions/GL_APPLE_ycbcr_422 b/src/other/glew/auto/extensions/GL_APPLE_ycbcr_422
deleted file mode 100644
index 3b85549..0000000
--- a/src/other/glew/auto/extensions/GL_APPLE_ycbcr_422
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_APPLE_ycbcr_422
-http://www.opengl.org/registry/specs/APPLE/ycbcr_422.txt
-GL_APPLE_ycbcr_422
-	GL_YCBCR_422_APPLE 0x85B9
-	GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
-	GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
diff --git a/src/other/glew/auto/extensions/GL_ARB_blend_func_extended b/src/other/glew/auto/extensions/GL_ARB_blend_func_extended
deleted file mode 100644
index c70d68d..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_blend_func_extended
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_ARB_blend_func_extended
-http://www.opengl.org/registry/specs/ARB/blend_func_extended.txt
-GL_ARB_blend_func_extended
-	GL_SRC1_COLOR 0x88F9
-	GL_ONE_MINUS_SRC1_COLOR 0x88FA
-	GL_ONE_MINUS_SRC1_ALPHA 0x88FB
-	GL_MAX_DUAL_SOURCE_DRAW_BUFFERS 0x88FC
-	void glBindFragDataLocationIndexed (GLuint program, GLuint colorNumber, GLuint index, const char * name)
-	GLint glGetFragDataIndex (GLuint program, const char * name)
diff --git a/src/other/glew/auto/extensions/GL_ARB_color_buffer_float b/src/other/glew/auto/extensions/GL_ARB_color_buffer_float
deleted file mode 100644
index 1d7ad05..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_color_buffer_float
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_ARB_color_buffer_float
-http://www.opengl.org/registry/specs/ARB/color_buffer_float.txt
-GL_ARB_color_buffer_float
-	GL_RGBA_FLOAT_MODE_ARB 0x8820
-	GL_CLAMP_VERTEX_COLOR_ARB 0x891A
-	GL_CLAMP_FRAGMENT_COLOR_ARB 0x891B
-	GL_CLAMP_READ_COLOR_ARB 0x891C
-	GL_FIXED_ONLY_ARB 0x891D
-	void glClampColorARB (GLenum target, GLenum clamp)
diff --git a/src/other/glew/auto/extensions/GL_ARB_compatibility b/src/other/glew/auto/extensions/GL_ARB_compatibility
deleted file mode 100644
index 60200c4..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_compatibility
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ARB_compatibility
-http://www.opengl.org/registry/specs/ARB/compatibility.txt
-GL_ARB_compatibility
diff --git a/src/other/glew/auto/extensions/GL_ARB_copy_buffer b/src/other/glew/auto/extensions/GL_ARB_copy_buffer
deleted file mode 100644
index 64f58b0..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_copy_buffer
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ARB_copy_buffer
-http://www.opengl.org/registry/specs/ARB/copy_buffer.txt
-GL_ARB_copy_buffer
-	GL_COPY_READ_BUFFER 0x8F36
-	GL_COPY_WRITE_BUFFER 0x8F37
-	void glCopyBufferSubData (GLenum readtarget, GLenum writetarget, GLintptr readoffset, GLintptr writeoffset, GLsizeiptr size)
diff --git a/src/other/glew/auto/extensions/GL_ARB_depth_buffer_float b/src/other/glew/auto/extensions/GL_ARB_depth_buffer_float
deleted file mode 100644
index f18f121..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_depth_buffer_float
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ARB_depth_buffer_float
-http://www.opengl.org/registry/specs/ARB/depth_buffer_float.txt
-GL_ARB_depth_buffer_float
-	GL_DEPTH_COMPONENT32F 0x8CAC
-	GL_DEPTH32F_STENCIL8 0x8CAD
-	GL_FLOAT_32_UNSIGNED_INT_24_8_REV 0x8DAD
diff --git a/src/other/glew/auto/extensions/GL_ARB_depth_clamp b/src/other/glew/auto/extensions/GL_ARB_depth_clamp
deleted file mode 100644
index 31cffa7..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_depth_clamp
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ARB_depth_clamp
-http://www.opengl.org/registry/specs/ARB/depth_clamp.txt
-GL_ARB_depth_clamp
-	GL_DEPTH_CLAMP 0x864F
diff --git a/src/other/glew/auto/extensions/GL_ARB_depth_texture b/src/other/glew/auto/extensions/GL_ARB_depth_texture
deleted file mode 100644
index d1aa476..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_depth_texture
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_ARB_depth_texture
-http://www.opengl.org/registry/specs/ARB/depth_texture.txt
-GL_ARB_depth_texture
-	GL_DEPTH_COMPONENT16_ARB 0x81A5
-	GL_DEPTH_COMPONENT24_ARB 0x81A6
-	GL_DEPTH_COMPONENT32_ARB 0x81A7
-	GL_TEXTURE_DEPTH_SIZE_ARB 0x884A
-	GL_DEPTH_TEXTURE_MODE_ARB 0x884B
diff --git a/src/other/glew/auto/extensions/GL_ARB_draw_buffers b/src/other/glew/auto/extensions/GL_ARB_draw_buffers
deleted file mode 100644
index 8c96b61..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_draw_buffers
+++ /dev/null
@@ -1,21 +0,0 @@
-GL_ARB_draw_buffers
-http://www.opengl.org/registry/specs/ARB/draw_buffers.txt
-GL_ARB_draw_buffers
-	GL_MAX_DRAW_BUFFERS_ARB 0x8824
-	GL_DRAW_BUFFER0_ARB 0x8825
-	GL_DRAW_BUFFER1_ARB 0x8826
-	GL_DRAW_BUFFER2_ARB 0x8827
-	GL_DRAW_BUFFER3_ARB 0x8828
-	GL_DRAW_BUFFER4_ARB 0x8829
-	GL_DRAW_BUFFER5_ARB 0x882A
-	GL_DRAW_BUFFER6_ARB 0x882B
-	GL_DRAW_BUFFER7_ARB 0x882C
-	GL_DRAW_BUFFER8_ARB 0x882D
-	GL_DRAW_BUFFER9_ARB 0x882E
-	GL_DRAW_BUFFER10_ARB 0x882F
-	GL_DRAW_BUFFER11_ARB 0x8830
-	GL_DRAW_BUFFER12_ARB 0x8831
-	GL_DRAW_BUFFER13_ARB 0x8832
-	GL_DRAW_BUFFER14_ARB 0x8833
-	GL_DRAW_BUFFER15_ARB 0x8834
-	void glDrawBuffersARB (GLsizei n, const GLenum* bufs)
diff --git a/src/other/glew/auto/extensions/GL_ARB_draw_buffers_blend b/src/other/glew/auto/extensions/GL_ARB_draw_buffers_blend
deleted file mode 100644
index 4f63320..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_draw_buffers_blend
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_ARB_draw_buffers_blend
-http://www.opengl.org/registry/specs/ARB/draw_buffers_blend.txt
-GL_ARB_draw_buffers_blend
-	void glBlendEquationSeparateiARB (GLuint buf, GLenum modeRGB, GLenum modeAlpha)
-	void glBlendEquationiARB (GLuint buf, GLenum mode)
-	void glBlendFuncSeparateiARB (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha)
-	void glBlendFunciARB (GLuint buf, GLenum src, GLenum dst)
diff --git a/src/other/glew/auto/extensions/GL_ARB_draw_elements_base_vertex b/src/other/glew/auto/extensions/GL_ARB_draw_elements_base_vertex
deleted file mode 100644
index 85c5be7..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_draw_elements_base_vertex
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_ARB_draw_elements_base_vertex
-http://www.opengl.org/registry/specs/ARB/draw_elements_base_vertex.txt
-GL_ARB_draw_elements_base_vertex
-	void glDrawElementsBaseVertex (GLenum mode, GLsizei count, GLenum type, void* indices, GLint basevertex)
-	void glDrawElementsInstancedBaseVertex (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount, GLint basevertex)
-	void glDrawRangeElementsBaseVertex (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, void* indices, GLint basevertex)
-	void glMultiDrawElementsBaseVertex (GLenum mode, GLsizei* count, GLenum type, GLvoid**indices, GLsizei primcount, GLint *basevertex)
diff --git a/src/other/glew/auto/extensions/GL_ARB_draw_indirect b/src/other/glew/auto/extensions/GL_ARB_draw_indirect
deleted file mode 100644
index 1423bc6..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_draw_indirect
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_ARB_draw_indirect
-http://www.opengl.org/registry/specs/ARB/draw_indirect.txt
-GL_ARB_draw_indirect
-	GL_DRAW_INDIRECT_BUFFER 0x8F3F
-	GL_DRAW_INDIRECT_BUFFER_BINDING 0x8F43
-	void glDrawArraysIndirect (GLenum mode, const void* indirect)
-	void glDrawElementsIndirect (GLenum mode, GLenum type, const void* indirect)
diff --git a/src/other/glew/auto/extensions/GL_ARB_draw_instanced b/src/other/glew/auto/extensions/GL_ARB_draw_instanced
deleted file mode 100644
index a1a0f37..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_draw_instanced
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_ARB_draw_instanced
-http://www.opengl.org/registry/specs/ARB/draw_instanced.txt
-GL_ARB_draw_instanced
-	void glDrawArraysInstancedARB (GLenum mode, GLint first, GLsizei count, GLsizei primcount)
-	void glDrawElementsInstancedARB (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount)
diff --git a/src/other/glew/auto/extensions/GL_ARB_explicit_attrib_location b/src/other/glew/auto/extensions/GL_ARB_explicit_attrib_location
deleted file mode 100644
index 76fe9ca..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_explicit_attrib_location
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ARB_explicit_attrib_location
-http://www.opengl.org/registry/specs/ARB/explicit_attrib_location.txt
-GL_ARB_explicit_attrib_location
diff --git a/src/other/glew/auto/extensions/GL_ARB_fragment_coord_conventions b/src/other/glew/auto/extensions/GL_ARB_fragment_coord_conventions
deleted file mode 100644
index f54b1fe..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_fragment_coord_conventions
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ARB_fragment_coord_conventions
-http://www.opengl.org/registry/specs/ARB/fragment_coord_conventions.txt
-GL_ARB_fragment_coord_conventions
diff --git a/src/other/glew/auto/extensions/GL_ARB_fragment_program b/src/other/glew/auto/extensions/GL_ARB_fragment_program
deleted file mode 100644
index ce63a34..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_fragment_program
+++ /dev/null
@@ -1,18 +0,0 @@
-GL_ARB_fragment_program
-http://www.opengl.org/registry/specs/ARB/fragment_program.txt
-GL_ARB_fragment_program
-	GL_FRAGMENT_PROGRAM_ARB 0x8804
-	GL_PROGRAM_ALU_INSTRUCTIONS_ARB 0x8805
-	GL_PROGRAM_TEX_INSTRUCTIONS_ARB 0x8806
-	GL_PROGRAM_TEX_INDIRECTIONS_ARB 0x8807
-	GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x8808
-	GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x8809
-	GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x880A
-	GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB 0x880B
-	GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB 0x880C
-	GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB 0x880D
-	GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x880E
-	GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x880F
-	GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x8810
-	GL_MAX_TEXTURE_COORDS_ARB 0x8871
-	GL_MAX_TEXTURE_IMAGE_UNITS_ARB 0x8872
diff --git a/src/other/glew/auto/extensions/GL_ARB_fragment_program_shadow b/src/other/glew/auto/extensions/GL_ARB_fragment_program_shadow
deleted file mode 100644
index cce0d48..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_fragment_program_shadow
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ARB_fragment_program_shadow
-http://www.opengl.org/registry/specs/ARB/fragment_program_shadow.txt
-GL_ARB_fragment_program_shadow
diff --git a/src/other/glew/auto/extensions/GL_ARB_fragment_shader b/src/other/glew/auto/extensions/GL_ARB_fragment_shader
deleted file mode 100644
index 07f4773..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_fragment_shader
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ARB_fragment_shader
-http://www.opengl.org/registry/specs/ARB/fragment_shader.txt
-GL_ARB_fragment_shader
-	GL_FRAGMENT_SHADER_ARB 0x8B30
-	GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB 0x8B49
-	GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB 0x8B8B
diff --git a/src/other/glew/auto/extensions/GL_ARB_framebuffer_object b/src/other/glew/auto/extensions/GL_ARB_framebuffer_object
deleted file mode 100644
index bb217e2..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_framebuffer_object
+++ /dev/null
@@ -1,97 +0,0 @@
-GL_ARB_framebuffer_object
-http://www.opengl.org/registry/specs/ARB/framebuffer_object.txt
-GL_ARB_framebuffer_object
-	GL_INVALID_FRAMEBUFFER_OPERATION 0x0506
-	GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING 0x8210
-	GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE 0x8211
-	GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE 0x8212
-	GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE 0x8213
-	GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE 0x8214
-	GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE 0x8215
-	GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE 0x8216
-	GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE 0x8217
-	GL_FRAMEBUFFER_DEFAULT 0x8218
-	GL_FRAMEBUFFER_UNDEFINED 0x8219
-	GL_DEPTH_STENCIL_ATTACHMENT 0x821A
-	GL_INDEX 0x8222
-	GL_MAX_RENDERBUFFER_SIZE 0x84E8
-	GL_DEPTH_STENCIL 0x84F9
-	GL_UNSIGNED_INT_24_8 0x84FA
-	GL_DEPTH24_STENCIL8 0x88F0
-	GL_TEXTURE_STENCIL_SIZE 0x88F1
-	GL_UNSIGNED_NORMALIZED 0x8C17
-	GL_SRGB 0x8C40
-	GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6
-	GL_FRAMEBUFFER_BINDING 0x8CA6
-	GL_RENDERBUFFER_BINDING 0x8CA7
-	GL_READ_FRAMEBUFFER 0x8CA8
-	GL_DRAW_FRAMEBUFFER 0x8CA9
-	GL_READ_FRAMEBUFFER_BINDING 0x8CAA
-	GL_RENDERBUFFER_SAMPLES 0x8CAB
-	GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
-	GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
-	GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
-	GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
-	GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4
-	GL_FRAMEBUFFER_COMPLETE 0x8CD5
-	GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
-	GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
-	GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER 0x8CDB
-	GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8CDC
-	GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD
-	GL_MAX_COLOR_ATTACHMENTS 0x8CDF
-	GL_COLOR_ATTACHMENT0 0x8CE0
-	GL_COLOR_ATTACHMENT1 0x8CE1
-	GL_COLOR_ATTACHMENT2 0x8CE2
-	GL_COLOR_ATTACHMENT3 0x8CE3
-	GL_COLOR_ATTACHMENT4 0x8CE4
-	GL_COLOR_ATTACHMENT5 0x8CE5
-	GL_COLOR_ATTACHMENT6 0x8CE6
-	GL_COLOR_ATTACHMENT7 0x8CE7
-	GL_COLOR_ATTACHMENT8 0x8CE8
-	GL_COLOR_ATTACHMENT9 0x8CE9
-	GL_COLOR_ATTACHMENT10 0x8CEA
-	GL_COLOR_ATTACHMENT11 0x8CEB
-	GL_COLOR_ATTACHMENT12 0x8CEC
-	GL_COLOR_ATTACHMENT13 0x8CED
-	GL_COLOR_ATTACHMENT14 0x8CEE
-	GL_COLOR_ATTACHMENT15 0x8CEF
-	GL_DEPTH_ATTACHMENT 0x8D00
-	GL_STENCIL_ATTACHMENT 0x8D20
-	GL_FRAMEBUFFER 0x8D40
-	GL_RENDERBUFFER 0x8D41
-	GL_RENDERBUFFER_WIDTH 0x8D42
-	GL_RENDERBUFFER_HEIGHT 0x8D43
-	GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44
-	GL_STENCIL_INDEX1 0x8D46
-	GL_STENCIL_INDEX4 0x8D47
-	GL_STENCIL_INDEX8 0x8D48
-	GL_STENCIL_INDEX16 0x8D49
-	GL_RENDERBUFFER_RED_SIZE 0x8D50
-	GL_RENDERBUFFER_GREEN_SIZE 0x8D51
-	GL_RENDERBUFFER_BLUE_SIZE 0x8D52
-	GL_RENDERBUFFER_ALPHA_SIZE 0x8D53
-	GL_RENDERBUFFER_DEPTH_SIZE 0x8D54
-	GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
-	GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56
-	GL_MAX_SAMPLES 0x8D57
-	void glBindFramebuffer (GLenum target, GLuint framebuffer)
-	void glBindRenderbuffer (GLenum target, GLuint renderbuffer)
-	void glBlitFramebuffer (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
-	GLenum glCheckFramebufferStatus (GLenum target)
-	void glDeleteFramebuffers (GLsizei n, const GLuint* framebuffers)
-	void glDeleteRenderbuffers (GLsizei n, const GLuint* renderbuffers)
-	void glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
-	void glFramebufferTexture1D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
-	void glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
-	void glFramebufferTexture3D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint layer)
-	void glFramebufferTextureLayer (GLenum target,GLenum attachment, GLuint texture,GLint level,GLint layer)
-	void glGenFramebuffers (GLsizei n, GLuint* framebuffers)
-	void glGenRenderbuffers (GLsizei n, GLuint* renderbuffers)
-	void glGenerateMipmap (GLenum target)
-	void glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params)
-	void glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params)
-	GLboolean glIsFramebuffer (GLuint framebuffer)
-	GLboolean glIsRenderbuffer (GLuint renderbuffer)
-	void glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
-	void glRenderbufferStorageMultisample (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
diff --git a/src/other/glew/auto/extensions/GL_ARB_framebuffer_sRGB b/src/other/glew/auto/extensions/GL_ARB_framebuffer_sRGB
deleted file mode 100644
index c9909bc..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_framebuffer_sRGB
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ARB_framebuffer_sRGB
-http://www.opengl.org/registry/specs/ARB/framebuffer_sRGB.txt
-GL_ARB_framebuffer_sRGB
-	GL_FRAMEBUFFER_SRGB 0x8DB9
diff --git a/src/other/glew/auto/extensions/GL_ARB_geometry_shader4 b/src/other/glew/auto/extensions/GL_ARB_geometry_shader4
deleted file mode 100644
index 76cfcbf..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_geometry_shader4
+++ /dev/null
@@ -1,26 +0,0 @@
-GL_ARB_geometry_shader4
-http://www.opengl.org/registry/specs/ARB/geometry_shader4.txt
-GL_ARB_geometry_shader4
-	GL_LINES_ADJACENCY_ARB 0xA
-	GL_LINE_STRIP_ADJACENCY_ARB 0xB
-	GL_TRIANGLES_ADJACENCY_ARB 0xC
-	GL_TRIANGLE_STRIP_ADJACENCY_ARB 0xD
-	GL_PROGRAM_POINT_SIZE_ARB 0x8642
-	GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB 0x8C29
-	GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4
-	GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB 0x8DA7
-	GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB 0x8DA8
-	GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB 0x8DA9
-	GL_GEOMETRY_SHADER_ARB 0x8DD9
-	GL_GEOMETRY_VERTICES_OUT_ARB 0x8DDA
-	GL_GEOMETRY_INPUT_TYPE_ARB 0x8DDB
-	GL_GEOMETRY_OUTPUT_TYPE_ARB 0x8DDC
-	GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB 0x8DDD
-	GL_MAX_VERTEX_VARYING_COMPONENTS_ARB 0x8DDE
-	GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB 0x8DDF
-	GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB 0x8DE0
-	GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB 0x8DE1
-	void glFramebufferTextureARB (GLenum target, GLenum attachment, GLuint texture, GLint level)
-	void glFramebufferTextureFaceARB (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face)
-	void glFramebufferTextureLayerARB (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
-	void glProgramParameteriARB (GLuint program, GLenum pname, GLint value)
diff --git a/src/other/glew/auto/extensions/GL_ARB_gpu_shader5 b/src/other/glew/auto/extensions/GL_ARB_gpu_shader5
deleted file mode 100644
index 816c894..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_gpu_shader5
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_ARB_gpu_shader5
-http://www.opengl.org/registry/specs/ARB/gpu_shader5.txt
-GL_ARB_gpu_shader5
-	GL_GEOMETRY_SHADER_INVOCATIONS 0x887F
-	GL_MAX_GEOMETRY_SHADER_INVOCATIONS 0x8E5A
-	GL_MIN_FRAGMENT_INTERPOLATION_OFFSET 0x8E5B
-	GL_MAX_FRAGMENT_INTERPOLATION_OFFSET 0x8E5C
-	GL_FRAGMENT_INTERPOLATION_OFFSET_BITS 0x8E5D
-	GL_MAX_VERTEX_STREAMS 0x8E71
diff --git a/src/other/glew/auto/extensions/GL_ARB_gpu_shader_fp64 b/src/other/glew/auto/extensions/GL_ARB_gpu_shader_fp64
deleted file mode 100644
index f452eeb..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_gpu_shader_fp64
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ARB_gpu_shader_fp64
-http://www.opengl.org/registry/specs/ARB/gpu_shader_fp64.txt
-GL_ARB_gpu_shader_fp64
diff --git a/src/other/glew/auto/extensions/GL_ARB_half_float_pixel b/src/other/glew/auto/extensions/GL_ARB_half_float_pixel
deleted file mode 100644
index 6cc72e8..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_half_float_pixel
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ARB_half_float_pixel
-http://www.opengl.org/registry/specs/ARB/half_float_pixel.txt
-GL_ARB_half_float_pixel
-	GL_HALF_FLOAT_ARB 0x140B
diff --git a/src/other/glew/auto/extensions/GL_ARB_half_float_vertex b/src/other/glew/auto/extensions/GL_ARB_half_float_vertex
deleted file mode 100644
index 2ecbbc3..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_half_float_vertex
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ARB_half_float_vertex
-http://www.opengl.org/registry/specs/ARB/half_float_vertex.txt
-GL_ARB_half_float_vertex
-	GL_HALF_FLOAT 0x140B
diff --git a/src/other/glew/auto/extensions/GL_ARB_imaging b/src/other/glew/auto/extensions/GL_ARB_imaging
deleted file mode 100644
index 0efd0c1..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_imaging
+++ /dev/null
@@ -1,112 +0,0 @@
-GL_ARB_imaging
-
-GL_ARB_imaging
-	GL_CONSTANT_COLOR 0x8001
-	GL_ONE_MINUS_CONSTANT_COLOR 0x8002
-	GL_CONSTANT_ALPHA 0x8003
-	GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
-	GL_BLEND_COLOR 0x8005
-	GL_FUNC_ADD 0x8006
-	GL_MIN 0x8007
-	GL_MAX 0x8008
-	GL_BLEND_EQUATION 0x8009
-	GL_FUNC_SUBTRACT 0x800A
-	GL_FUNC_REVERSE_SUBTRACT 0x800B
-	GL_CONVOLUTION_1D 0x8010
-	GL_CONVOLUTION_2D 0x8011
-	GL_SEPARABLE_2D 0x8012
-	GL_CONVOLUTION_BORDER_MODE 0x8013
-	GL_CONVOLUTION_FILTER_SCALE 0x8014
-	GL_CONVOLUTION_FILTER_BIAS 0x8015
-	GL_REDUCE 0x8016
-	GL_CONVOLUTION_FORMAT 0x8017
-	GL_CONVOLUTION_WIDTH 0x8018
-	GL_CONVOLUTION_HEIGHT 0x8019
-	GL_MAX_CONVOLUTION_WIDTH 0x801A
-	GL_MAX_CONVOLUTION_HEIGHT 0x801B
-	GL_POST_CONVOLUTION_RED_SCALE 0x801C
-	GL_POST_CONVOLUTION_GREEN_SCALE 0x801D
-	GL_POST_CONVOLUTION_BLUE_SCALE 0x801E
-	GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F
-	GL_POST_CONVOLUTION_RED_BIAS 0x8020
-	GL_POST_CONVOLUTION_GREEN_BIAS 0x8021
-	GL_POST_CONVOLUTION_BLUE_BIAS 0x8022
-	GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023
-	GL_HISTOGRAM 0x8024
-	GL_PROXY_HISTOGRAM 0x8025
-	GL_HISTOGRAM_WIDTH 0x8026
-	GL_HISTOGRAM_FORMAT 0x8027
-	GL_HISTOGRAM_RED_SIZE 0x8028
-	GL_HISTOGRAM_GREEN_SIZE 0x8029
-	GL_HISTOGRAM_BLUE_SIZE 0x802A
-	GL_HISTOGRAM_ALPHA_SIZE 0x802B
-	GL_HISTOGRAM_LUMINANCE_SIZE 0x802C
-	GL_HISTOGRAM_SINK 0x802D
-	GL_MINMAX 0x802E
-	GL_MINMAX_FORMAT 0x802F
-	GL_MINMAX_SINK 0x8030
-	GL_TABLE_TOO_LARGE 0x8031
-	GL_COLOR_MATRIX 0x80B1
-	GL_COLOR_MATRIX_STACK_DEPTH 0x80B2
-	GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3
-	GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4
-	GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5
-	GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6
-	GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7
-	GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8
-	GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9
-	GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA
-	GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB
-	GL_COLOR_TABLE 0x80D0
-	GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1
-	GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2
-	GL_PROXY_COLOR_TABLE 0x80D3
-	GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4
-	GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5
-	GL_COLOR_TABLE_SCALE 0x80D6
-	GL_COLOR_TABLE_BIAS 0x80D7
-	GL_COLOR_TABLE_FORMAT 0x80D8
-	GL_COLOR_TABLE_WIDTH 0x80D9
-	GL_COLOR_TABLE_RED_SIZE 0x80DA
-	GL_COLOR_TABLE_GREEN_SIZE 0x80DB
-	GL_COLOR_TABLE_BLUE_SIZE 0x80DC
-	GL_COLOR_TABLE_ALPHA_SIZE 0x80DD
-	GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE
-	GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF
-	GL_IGNORE_BORDER 0x8150
-	GL_CONSTANT_BORDER 0x8151
-	GL_WRAP_BORDER 0x8152
-	GL_REPLICATE_BORDER 0x8153
-	GL_CONVOLUTION_BORDER_COLOR 0x8154
-	void glColorTable (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table)
-	void glColorSubTable (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data)
-	void glColorTableParameteriv (GLenum target, GLenum pname, const GLint *params)
-	void glColorTableParameterfv (GLenum target, GLenum pname, const GLfloat *params)
-	void glCopyColorSubTable (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
-	void glCopyColorTable (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
-	void glGetColorTable (GLenum target, GLenum format, GLenum type, GLvoid *table)
-	void glGetColorTableParameterfv (GLenum target, GLenum pname, GLfloat *params)
-	void glGetColorTableParameteriv (GLenum target, GLenum pname, GLint *params)
-	void glHistogram (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
-	void glResetHistogram (GLenum target)
-	void glGetHistogram (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values)
-	void glGetHistogramParameterfv (GLenum target, GLenum pname, GLfloat *params)
-	void glGetHistogramParameteriv (GLenum target, GLenum pname, GLint *params)
-	void glMinmax (GLenum target, GLenum internalformat, GLboolean sink)
-	void glResetMinmax (GLenum target)
-	void glGetMinmaxParameterfv (GLenum target, GLenum pname, GLfloat *params)
-	void glGetMinmaxParameteriv (GLenum target, GLenum pname, GLint *params)
-	void glConvolutionFilter1D (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image)
-	void glConvolutionFilter2D (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image)
-	void glConvolutionParameterf (GLenum target, GLenum pname, GLfloat params)
-	void glConvolutionParameterfv (GLenum target, GLenum pname, const GLfloat *params)
-	void glConvolutionParameteri (GLenum target, GLenum pname, GLint params)
-	void glConvolutionParameteriv (GLenum target, GLenum pname, const GLint *params)
-	void glCopyConvolutionFilter1D (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
-	void glCopyConvolutionFilter2D (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
-	void glGetConvolutionFilter (GLenum target, GLenum format, GLenum type, GLvoid *image)
-	void glGetConvolutionParameterfv (GLenum target, GLenum pname, GLfloat *params)
-	void glGetConvolutionParameteriv (GLenum target, GLenum pname, GLint *params)
-	void glSeparableFilter2D (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column)
-	void glGetSeparableFilter (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span)
-	void glGetMinmax (GLenum target, GLboolean reset, GLenum format, GLenum types, GLvoid *values)
diff --git a/src/other/glew/auto/extensions/GL_ARB_instanced_arrays b/src/other/glew/auto/extensions/GL_ARB_instanced_arrays
deleted file mode 100644
index e3a5231..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_instanced_arrays
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_ARB_instanced_arrays
-http://www.opengl.org/registry/specs/ARB/instanced_arrays.txt
-GL_ARB_instanced_arrays
-	GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB 0x88FE
-	void glVertexAttribDivisorARB (GLuint index, GLuint divisor)
diff --git a/src/other/glew/auto/extensions/GL_ARB_map_buffer_range b/src/other/glew/auto/extensions/GL_ARB_map_buffer_range
deleted file mode 100644
index 6c55bf6..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_map_buffer_range
+++ /dev/null
@@ -1,11 +0,0 @@
-GL_ARB_map_buffer_range
-http://www.opengl.org/registry/specs/ARB/map_buffer_range.txt
-GL_ARB_map_buffer_range
-	GL_MAP_READ_BIT 0x0001
-	GL_MAP_WRITE_BIT 0x0002
-	GL_MAP_INVALIDATE_RANGE_BIT 0x0004
-	GL_MAP_INVALIDATE_BUFFER_BIT 0x0008
-	GL_MAP_FLUSH_EXPLICIT_BIT 0x0010
-	GL_MAP_UNSYNCHRONIZED_BIT 0x0020
-	void glFlushMappedBufferRange (GLenum target, GLintptr offset, GLsizeiptr length)
-	GLvoid * glMapBufferRange (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
diff --git a/src/other/glew/auto/extensions/GL_ARB_matrix_palette b/src/other/glew/auto/extensions/GL_ARB_matrix_palette
deleted file mode 100644
index 4b67c15..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_matrix_palette
+++ /dev/null
@@ -1,18 +0,0 @@
-GL_ARB_matrix_palette
-http://oss.sgi.com/projects/ogl-sample/registry/ARB/matrix_palette.txt
-GL_ARB_matrix_palette
-	GL_MATRIX_PALETTE_ARB 0x8840
-	GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB 0x8841
-	GL_MAX_PALETTE_MATRICES_ARB 0x8842
-	GL_CURRENT_PALETTE_MATRIX_ARB 0x8843
-	GL_MATRIX_INDEX_ARRAY_ARB 0x8844
-	GL_CURRENT_MATRIX_INDEX_ARB 0x8845
-	GL_MATRIX_INDEX_ARRAY_SIZE_ARB 0x8846
-	GL_MATRIX_INDEX_ARRAY_TYPE_ARB 0x8847
-	GL_MATRIX_INDEX_ARRAY_STRIDE_ARB 0x8848
-	GL_MATRIX_INDEX_ARRAY_POINTER_ARB 0x8849
-	void glCurrentPaletteMatrixARB (GLint index)
-	void glMatrixIndexPointerARB (GLint size, GLenum type, GLsizei stride, GLvoid *pointer)
-	void glMatrixIndexubvARB (GLint size, GLubyte *indices)
-	void glMatrixIndexusvARB (GLint size, GLushort *indices)
-	void glMatrixIndexuivARB (GLint size, GLuint *indices)
diff --git a/src/other/glew/auto/extensions/GL_ARB_multisample b/src/other/glew/auto/extensions/GL_ARB_multisample
deleted file mode 100644
index 6abf9e7..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_multisample
+++ /dev/null
@@ -1,13 +0,0 @@
-GL_ARB_multisample
-http://www.opengl.org/registry/specs/ARB/multisample.txt
-GL_ARB_multisample
-	GL_MULTISAMPLE_ARB 0x809D
-	GL_SAMPLE_ALPHA_TO_COVERAGE_ARB 0x809E
-	GL_SAMPLE_ALPHA_TO_ONE_ARB 0x809F
-	GL_SAMPLE_COVERAGE_ARB 0x80A0
-	GL_SAMPLE_BUFFERS_ARB 0x80A8
-	GL_SAMPLES_ARB 0x80A9
-	GL_SAMPLE_COVERAGE_VALUE_ARB 0x80AA
-	GL_SAMPLE_COVERAGE_INVERT_ARB 0x80AB
-	GL_MULTISAMPLE_BIT_ARB 0x20000000
-	void glSampleCoverageARB (GLclampf value, GLboolean invert)
diff --git a/src/other/glew/auto/extensions/GL_ARB_multitexture b/src/other/glew/auto/extensions/GL_ARB_multitexture
deleted file mode 100644
index ee80791..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_multitexture
+++ /dev/null
@@ -1,72 +0,0 @@
-GL_ARB_multitexture
-http://oss.sgi.com/projects/ogl-sample/registry/ARB/multitexture.txt
-GL_ARB_multitexture
-	GL_TEXTURE0_ARB 0x84C0
-	GL_TEXTURE1_ARB 0x84C1
-	GL_TEXTURE2_ARB 0x84C2
-	GL_TEXTURE3_ARB 0x84C3
-	GL_TEXTURE4_ARB 0x84C4
-	GL_TEXTURE5_ARB 0x84C5
-	GL_TEXTURE6_ARB 0x84C6
-	GL_TEXTURE7_ARB 0x84C7
-	GL_TEXTURE8_ARB 0x84C8
-	GL_TEXTURE9_ARB 0x84C9
-	GL_TEXTURE10_ARB 0x84CA
-	GL_TEXTURE11_ARB 0x84CB
-	GL_TEXTURE12_ARB 0x84CC
-	GL_TEXTURE13_ARB 0x84CD
-	GL_TEXTURE14_ARB 0x84CE
-	GL_TEXTURE15_ARB 0x84CF
-	GL_TEXTURE16_ARB 0x84D0
-	GL_TEXTURE17_ARB 0x84D1
-	GL_TEXTURE18_ARB 0x84D2
-	GL_TEXTURE19_ARB 0x84D3
-	GL_TEXTURE20_ARB 0x84D4
-	GL_TEXTURE21_ARB 0x84D5
-	GL_TEXTURE22_ARB 0x84D6
-	GL_TEXTURE23_ARB 0x84D7
-	GL_TEXTURE24_ARB 0x84D8
-	GL_TEXTURE25_ARB 0x84D9
-	GL_TEXTURE26_ARB 0x84DA
-	GL_TEXTURE27_ARB 0x84DB
-	GL_TEXTURE28_ARB 0x84DC
-	GL_TEXTURE29_ARB 0x84DD
-	GL_TEXTURE30_ARB 0x84DE
-	GL_TEXTURE31_ARB 0x84DF
-	GL_ACTIVE_TEXTURE_ARB 0x84E0
-	GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1
-	GL_MAX_TEXTURE_UNITS_ARB 0x84E2
-	void glActiveTextureARB (GLenum texture)
-	void glClientActiveTextureARB (GLenum texture)
-	void glMultiTexCoord1dARB (GLenum target, GLdouble s)
-	void glMultiTexCoord1dvARB (GLenum target, const GLdouble *v)
-	void glMultiTexCoord1fARB (GLenum target, GLfloat s)
-	void glMultiTexCoord1fvARB (GLenum target, const GLfloat *v)
-	void glMultiTexCoord1iARB (GLenum target, GLint s)
-	void glMultiTexCoord1ivARB (GLenum target, const GLint *v)
-	void glMultiTexCoord1sARB (GLenum target, GLshort s)
-	void glMultiTexCoord1svARB (GLenum target, const GLshort *v)
-	void glMultiTexCoord2dARB (GLenum target, GLdouble s, GLdouble t)
-	void glMultiTexCoord2dvARB (GLenum target, const GLdouble *v)
-	void glMultiTexCoord2fARB (GLenum target, GLfloat s, GLfloat t)
-	void glMultiTexCoord2fvARB (GLenum target, const GLfloat *v)
-	void glMultiTexCoord2iARB (GLenum target, GLint s, GLint t)
-	void glMultiTexCoord2ivARB (GLenum target, const GLint *v)
-	void glMultiTexCoord2sARB (GLenum target, GLshort s, GLshort t)
-	void glMultiTexCoord2svARB (GLenum target, const GLshort *v)
-	void glMultiTexCoord3dARB (GLenum target, GLdouble s, GLdouble t, GLdouble r)
-	void glMultiTexCoord3dvARB (GLenum target, const GLdouble *v)
-	void glMultiTexCoord3fARB (GLenum target, GLfloat s, GLfloat t, GLfloat r)
-	void glMultiTexCoord3fvARB (GLenum target, const GLfloat *v)
-	void glMultiTexCoord3iARB (GLenum target, GLint s, GLint t, GLint r)
-	void glMultiTexCoord3ivARB (GLenum target, const GLint *v)
-	void glMultiTexCoord3sARB (GLenum target, GLshort s, GLshort t, GLshort r)
-	void glMultiTexCoord3svARB (GLenum target, const GLshort *v)
-	void glMultiTexCoord4dARB (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
-	void glMultiTexCoord4dvARB (GLenum target, const GLdouble *v)
-	void glMultiTexCoord4fARB (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
-	void glMultiTexCoord4fvARB (GLenum target, const GLfloat *v)
-	void glMultiTexCoord4iARB (GLenum target, GLint s, GLint t, GLint r, GLint q)
-	void glMultiTexCoord4ivARB (GLenum target, const GLint *v)
-	void glMultiTexCoord4sARB (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
-	void glMultiTexCoord4svARB (GLenum target, const GLshort *v)
diff --git a/src/other/glew/auto/extensions/GL_ARB_occlusion_query b/src/other/glew/auto/extensions/GL_ARB_occlusion_query
deleted file mode 100644
index 18e10aa..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_occlusion_query
+++ /dev/null
@@ -1,16 +0,0 @@
-GL_ARB_occlusion_query
-http://www.opengl.org/registry/specs/ARB/occlusion_query.txt
-GL_ARB_occlusion_query
-	GL_QUERY_COUNTER_BITS_ARB 0x8864
-	GL_CURRENT_QUERY_ARB 0x8865
-	GL_QUERY_RESULT_ARB 0x8866
-	GL_QUERY_RESULT_AVAILABLE_ARB 0x8867
-	GL_SAMPLES_PASSED_ARB 0x8914
-	void glBeginQueryARB (GLenum target, GLuint id)
-	void glDeleteQueriesARB (GLsizei n, const GLuint* ids)
-	void glEndQueryARB (GLenum target)
-	void glGenQueriesARB (GLsizei n, GLuint* ids)
-	void glGetQueryObjectivARB (GLuint id, GLenum pname, GLint* params)
-	void glGetQueryObjectuivARB (GLuint id, GLenum pname, GLuint* params)
-	void glGetQueryivARB (GLenum target, GLenum pname, GLint* params)
-	GLboolean glIsQueryARB (GLuint id)
diff --git a/src/other/glew/auto/extensions/GL_ARB_occlusion_query2 b/src/other/glew/auto/extensions/GL_ARB_occlusion_query2
deleted file mode 100644
index 5dad013..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_occlusion_query2
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ARB_occlusion_query2
-http://www.opengl.org/registry/specs/ARB/occlusion_query2.txt
-GL_ARB_occlusion_query2
-	GL_ANY_SAMPLES_PASSED 0x8C2F
diff --git a/src/other/glew/auto/extensions/GL_ARB_pixel_buffer_object b/src/other/glew/auto/extensions/GL_ARB_pixel_buffer_object
deleted file mode 100644
index ccec4cc..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_pixel_buffer_object
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_ARB_pixel_buffer_object
-http://www.opengl.org/registry/specs/ARB/pixel_buffer_object.txt
-GL_ARB_pixel_buffer_object
-	GL_PIXEL_PACK_BUFFER_ARB 0x88EB
-	GL_PIXEL_UNPACK_BUFFER_ARB 0x88EC
-	GL_PIXEL_PACK_BUFFER_BINDING_ARB 0x88ED
-	GL_PIXEL_UNPACK_BUFFER_BINDING_ARB 0x88EF
diff --git a/src/other/glew/auto/extensions/GL_ARB_point_parameters b/src/other/glew/auto/extensions/GL_ARB_point_parameters
deleted file mode 100644
index 6c15a02..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_point_parameters
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_ARB_point_parameters
-http://www.opengl.org/registry/specs/ARB/point_parameters.txt
-GL_ARB_point_parameters
-	GL_POINT_SIZE_MIN_ARB 0x8126
-	GL_POINT_SIZE_MAX_ARB 0x8127
-	GL_POINT_FADE_THRESHOLD_SIZE_ARB 0x8128
-	GL_POINT_DISTANCE_ATTENUATION_ARB 0x8129
-	void glPointParameterfARB (GLenum pname, GLfloat param)
-	void glPointParameterfvARB (GLenum pname, GLfloat* params)
diff --git a/src/other/glew/auto/extensions/GL_ARB_point_sprite b/src/other/glew/auto/extensions/GL_ARB_point_sprite
deleted file mode 100644
index 8f2c2e8..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_point_sprite
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_ARB_point_sprite
-http://www.opengl.org/registry/specs/ARB/point_sprite.txt
-GL_ARB_point_sprite
-	GL_POINT_SPRITE_ARB 0x8861
-	GL_COORD_REPLACE_ARB 0x8862
diff --git a/src/other/glew/auto/extensions/GL_ARB_provoking_vertex b/src/other/glew/auto/extensions/GL_ARB_provoking_vertex
deleted file mode 100644
index 3e2f16d..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_provoking_vertex
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_ARB_provoking_vertex
-http://www.opengl.org/registry/specs/ARB/provoking_vertex.txt
-GL_ARB_provoking_vertex
-	GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION 0x8E4C
-	GL_FIRST_VERTEX_CONVENTION 0x8E4D
-	GL_LAST_VERTEX_CONVENTION 0x8E4E
-	GL_PROVOKING_VERTEX 0x8E4F
-	void glProvokingVertex (GLenum mode)
diff --git a/src/other/glew/auto/extensions/GL_ARB_sample_shading b/src/other/glew/auto/extensions/GL_ARB_sample_shading
deleted file mode 100644
index 0d8b105..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_sample_shading
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ARB_sample_shading
-http://www.opengl.org/registry/specs/ARB/sample_shading.txt
-GL_ARB_sample_shading
-	GL_SAMPLE_SHADING_ARB 0x8C36
-	GL_MIN_SAMPLE_SHADING_VALUE_ARB 0x8C37
-	void glMinSampleShadingARB (GLclampf value)
diff --git a/src/other/glew/auto/extensions/GL_ARB_sampler_objects b/src/other/glew/auto/extensions/GL_ARB_sampler_objects
deleted file mode 100644
index c942390..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_sampler_objects
+++ /dev/null
@@ -1,18 +0,0 @@
-GL_ARB_sampler_objects
-http://www.opengl.org/registry/specs/ARB/sampler_objects.txt
-GL_ARB_sampler_objects
-	GL_SAMPLER_BINDING 0x8919
-	void glBindSampler (GLuint unit, GLuint sampler)
-	void glDeleteSamplers (GLsizei count, const GLuint * samplers)
-	void glGenSamplers (GLsizei count, GLuint* samplers)
-	void glGetSamplerParameterIiv (GLuint sampler, GLenum pname, GLint* params)
-	void glGetSamplerParameterIuiv (GLuint sampler, GLenum pname, GLuint* params)
-	void glGetSamplerParameterfv (GLuint sampler, GLenum pname, GLfloat* params)
-	void glGetSamplerParameteriv (GLuint sampler, GLenum pname, GLint* params)
-	GLboolean glIsSampler (GLuint sampler)
-	void glSamplerParameterIiv (GLuint sampler, GLenum pname, const GLint* params)
-	void glSamplerParameterIuiv (GLuint sampler, GLenum pname, const GLuint* params)
-	void glSamplerParameterf (GLuint sampler, GLenum pname, GLfloat param)
-	void glSamplerParameterfv (GLuint sampler, GLenum pname, const GLfloat* params)
-	void glSamplerParameteri (GLuint sampler, GLenum pname, GLint param)
-	void glSamplerParameteriv (GLuint sampler, GLenum pname, const GLint* params)
diff --git a/src/other/glew/auto/extensions/GL_ARB_seamless_cube_map b/src/other/glew/auto/extensions/GL_ARB_seamless_cube_map
deleted file mode 100644
index c6b5941..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_seamless_cube_map
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ARB_seamless_cube_map
-http://www.opengl.org/registry/specs/ARB/seamless_cube_map.txt
-GL_ARB_seamless_cube_map
-	GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F
diff --git a/src/other/glew/auto/extensions/GL_ARB_shader_bit_encoding b/src/other/glew/auto/extensions/GL_ARB_shader_bit_encoding
deleted file mode 100644
index 9c00ed7..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_shader_bit_encoding
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ARB_shader_bit_encoding
-http://www.opengl.org/registry/specs/ARB/shader_bit_encoding.txt
-GL_ARB_shader_bit_encoding
diff --git a/src/other/glew/auto/extensions/GL_ARB_shader_objects b/src/other/glew/auto/extensions/GL_ARB_shader_objects
deleted file mode 100644
index fc24d97..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_shader_objects
+++ /dev/null
@@ -1,78 +0,0 @@
-GL_ARB_shader_objects
-http://www.opengl.org/registry/specs/ARB/shader_objects.txt
-GL_ARB_shader_objects
-	GL_PROGRAM_OBJECT_ARB 0x8B40
-	GL_SHADER_OBJECT_ARB 0x8B48
-	GL_OBJECT_TYPE_ARB 0x8B4E
-	GL_OBJECT_SUBTYPE_ARB 0x8B4F
-	GL_FLOAT_VEC2_ARB 0x8B50
-	GL_FLOAT_VEC3_ARB 0x8B51
-	GL_FLOAT_VEC4_ARB 0x8B52
-	GL_INT_VEC2_ARB 0x8B53
-	GL_INT_VEC3_ARB 0x8B54
-	GL_INT_VEC4_ARB 0x8B55
-	GL_BOOL_ARB 0x8B56
-	GL_BOOL_VEC2_ARB 0x8B57
-	GL_BOOL_VEC3_ARB 0x8B58
-	GL_BOOL_VEC4_ARB 0x8B59
-	GL_FLOAT_MAT2_ARB 0x8B5A
-	GL_FLOAT_MAT3_ARB 0x8B5B
-	GL_FLOAT_MAT4_ARB 0x8B5C
-	GL_SAMPLER_1D_ARB 0x8B5D
-	GL_SAMPLER_2D_ARB 0x8B5E
-	GL_SAMPLER_3D_ARB 0x8B5F
-	GL_SAMPLER_CUBE_ARB 0x8B60
-	GL_SAMPLER_1D_SHADOW_ARB 0x8B61
-	GL_SAMPLER_2D_SHADOW_ARB 0x8B62
-	GL_SAMPLER_2D_RECT_ARB 0x8B63
-	GL_SAMPLER_2D_RECT_SHADOW_ARB 0x8B64
-	GL_OBJECT_DELETE_STATUS_ARB 0x8B80
-	GL_OBJECT_COMPILE_STATUS_ARB 0x8B81
-	GL_OBJECT_LINK_STATUS_ARB 0x8B82
-	GL_OBJECT_VALIDATE_STATUS_ARB 0x8B83
-	GL_OBJECT_INFO_LOG_LENGTH_ARB 0x8B84
-	GL_OBJECT_ATTACHED_OBJECTS_ARB 0x8B85
-	GL_OBJECT_ACTIVE_UNIFORMS_ARB 0x8B86
-	GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB 0x8B87
-	GL_OBJECT_SHADER_SOURCE_LENGTH_ARB 0x8B88
-	void glAttachObjectARB (GLhandleARB containerObj, GLhandleARB obj)
-	void glCompileShaderARB (GLhandleARB shaderObj)
-	GLhandleARB glCreateProgramObjectARB (void)
-	GLhandleARB glCreateShaderObjectARB (GLenum shaderType)
-	void glDeleteObjectARB (GLhandleARB obj)
-	void glDetachObjectARB (GLhandleARB containerObj, GLhandleARB attachedObj)
-	void glGetActiveUniformARB (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint *size, GLenum *type, GLcharARB *name)
-	void glGetAttachedObjectsARB (GLhandleARB containerObj, GLsizei maxCount, GLsizei* count, GLhandleARB *obj)
-	GLhandleARB glGetHandleARB (GLenum pname)
-	void glGetInfoLogARB (GLhandleARB obj, GLsizei maxLength, GLsizei* length, GLcharARB *infoLog)
-	void glGetObjectParameterfvARB (GLhandleARB obj, GLenum pname, GLfloat* params)
-	void glGetObjectParameterivARB (GLhandleARB obj, GLenum pname, GLint* params)
-	void glGetShaderSourceARB (GLhandleARB obj, GLsizei maxLength, GLsizei* length, GLcharARB *source)
-	GLint glGetUniformLocationARB (GLhandleARB programObj, const GLcharARB* name)
-	void glGetUniformfvARB (GLhandleARB programObj, GLint location, GLfloat* params)
-	void glGetUniformivARB (GLhandleARB programObj, GLint location, GLint* params)
-	void glLinkProgramARB (GLhandleARB programObj)
-	void glShaderSourceARB (GLhandleARB shaderObj, GLsizei count, const GLcharARB ** string, const GLint *length)
-	void glUniform1fARB (GLint location, GLfloat v0)
-	void glUniform1fvARB (GLint location, GLsizei count, const GLfloat* value)
-	void glUniform1iARB (GLint location, GLint v0)
-	void glUniform1ivARB (GLint location, GLsizei count, const GLint* value)
-	void glUniform2fARB (GLint location, GLfloat v0, GLfloat v1)
-	void glUniform2fvARB (GLint location, GLsizei count, const GLfloat* value)
-	void glUniform2iARB (GLint location, GLint v0, GLint v1)
-	void glUniform2ivARB (GLint location, GLsizei count, const GLint* value)
-	void glUniform3fARB (GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
-	void glUniform3fvARB (GLint location, GLsizei count, const GLfloat* value)
-	void glUniform3iARB (GLint location, GLint v0, GLint v1, GLint v2)
-	void glUniform3ivARB (GLint location, GLsizei count, const GLint* value)
-	void glUniform4fARB (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
-	void glUniform4fvARB (GLint location, GLsizei count, const GLfloat* value)
-	void glUniform4iARB (GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
-	void glUniform4ivARB (GLint location, GLsizei count, const GLint* value)
-	void glUniformMatrix2fvARB (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glUniformMatrix3fvARB (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glUniformMatrix4fvARB (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glUseProgramObjectARB (GLhandleARB programObj)
-	void glValidateProgramARB (GLhandleARB programObj)
-	typedef char GLcharARB
-	typedef unsigned int GLhandleARB
diff --git a/src/other/glew/auto/extensions/GL_ARB_shader_subroutine b/src/other/glew/auto/extensions/GL_ARB_shader_subroutine
deleted file mode 100644
index a89f08f..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_shader_subroutine
+++ /dev/null
@@ -1,20 +0,0 @@
-GL_ARB_shader_subroutine
-http://www.opengl.org/registry/specs/ARB/shader_subroutine.txt
-GL_ARB_shader_subroutine
-	GL_ACTIVE_SUBROUTINES 0x8DE5
-	GL_ACTIVE_SUBROUTINE_UNIFORMS 0x8DE6
-	GL_MAX_SUBROUTINES 0x8DE7
-	GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS 0x8DE8
-	GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS 0x8E47
-	GL_ACTIVE_SUBROUTINE_MAX_LENGTH 0x8E48
-	GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH 0x8E49
-	GL_NUM_COMPATIBLE_SUBROUTINES 0x8E4A
-	GL_COMPATIBLE_SUBROUTINES 0x8E4B
-	void glGetActiveSubroutineName (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, char *name)
-	void glGetActiveSubroutineUniformName (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, char *name)
-	void glGetActiveSubroutineUniformiv (GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint* values)
-	void glGetProgramStageiv (GLuint program, GLenum shadertype, GLenum pname, GLint* values)
-	GLuint glGetSubroutineIndex (GLuint program, GLenum shadertype, const char* name)
-	GLint glGetSubroutineUniformLocation (GLuint program, GLenum shadertype, const char* name)
-	void glGetUniformSubroutineuiv (GLenum shadertype, GLint location, GLuint* params)
-	void glUniformSubroutinesuiv (GLenum shadertype, GLsizei count, const GLuint* indices)
diff --git a/src/other/glew/auto/extensions/GL_ARB_shader_texture_lod b/src/other/glew/auto/extensions/GL_ARB_shader_texture_lod
deleted file mode 100644
index 1366c86..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_shader_texture_lod
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ARB_shader_texture_lod
-http://www.opengl.org/registry/specs/ARB/shader_texture_lod.txt
-GL_ARB_shader_texture_lod
diff --git a/src/other/glew/auto/extensions/GL_ARB_shading_language_100 b/src/other/glew/auto/extensions/GL_ARB_shading_language_100
deleted file mode 100644
index 53cd0d4..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_shading_language_100
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ARB_shading_language_100
-http://www.opengl.org/registry/specs/ARB/shading_language_100.txt
-GL_ARB_shading_language_100
-	GL_SHADING_LANGUAGE_VERSION_ARB 0x8B8C
diff --git a/src/other/glew/auto/extensions/GL_ARB_shading_language_include b/src/other/glew/auto/extensions/GL_ARB_shading_language_include
deleted file mode 100644
index d8dd5b2..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_shading_language_include
+++ /dev/null
@@ -1,12 +0,0 @@
-GL_ARB_shading_language_include
-http://www.opengl.org/registry/specs/ARB/shading_language_include.txt
-GL_ARB_shading_language_include
-	GL_SHADER_INCLUDE_ARB 0x8DAE
-	GL_NAMED_STRING_LENGTH_ARB 0x8DE9
-	GL_NAMED_STRING_TYPE_ARB 0x8DEA
-	void glCompileShaderIncludeARB (GLuint shader, GLsizei count, const char ** path, const GLint *length)
-	void glDeleteNamedStringARB (GLint namelen, const char* name)
-	void glGetNamedStringARB (GLint namelen, const char* name, GLsizei bufSize, GLint *stringlen, char *string)
-	void glGetNamedStringivARB (GLint namelen, const char* name, GLenum pname, GLint *params)
-	GLboolean glIsNamedStringARB (GLint namelen, const char* name)
-	void glNamedStringARB (GLenum type, GLint namelen, const char* name, GLint stringlen, const char *string)
diff --git a/src/other/glew/auto/extensions/GL_ARB_shadow b/src/other/glew/auto/extensions/GL_ARB_shadow
deleted file mode 100644
index eeaca30..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_shadow
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ARB_shadow
-http://www.opengl.org/registry/specs/ARB/shadow.txt
-GL_ARB_shadow
-	GL_TEXTURE_COMPARE_MODE_ARB 0x884C
-	GL_TEXTURE_COMPARE_FUNC_ARB 0x884D
-	GL_COMPARE_R_TO_TEXTURE_ARB 0x884E
diff --git a/src/other/glew/auto/extensions/GL_ARB_shadow_ambient b/src/other/glew/auto/extensions/GL_ARB_shadow_ambient
deleted file mode 100644
index d2e13a0..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_shadow_ambient
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ARB_shadow_ambient
-http://www.opengl.org/registry/specs/ARB/shadow_ambient.txt
-GL_ARB_shadow_ambient
-	GL_TEXTURE_COMPARE_FAIL_VALUE_ARB 0x80BF
diff --git a/src/other/glew/auto/extensions/GL_ARB_sync b/src/other/glew/auto/extensions/GL_ARB_sync
deleted file mode 100644
index 883dc89..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_sync
+++ /dev/null
@@ -1,25 +0,0 @@
-GL_ARB_sync
-http://www.opengl.org/registry/specs/ARB/sync.txt
-GL_ARB_sync
-	GL_SYNC_FLUSH_COMMANDS_BIT 0x00000001
-	GL_MAX_SERVER_WAIT_TIMEOUT 0x9111
-	GL_OBJECT_TYPE 0x9112
-	GL_SYNC_CONDITION 0x9113
-	GL_SYNC_STATUS 0x9114
-	GL_SYNC_FLAGS 0x9115
-	GL_SYNC_FENCE 0x9116
-	GL_SYNC_GPU_COMMANDS_COMPLETE 0x9117
-	GL_UNSIGNALED 0x9118
-	GL_SIGNALED 0x9119
-	GL_ALREADY_SIGNALED 0x911A
-	GL_TIMEOUT_EXPIRED 0x911B
-	GL_CONDITION_SATISFIED 0x911C
-	GL_WAIT_FAILED 0x911D
-	GL_TIMEOUT_IGNORED 0xFFFFFFFFFFFFFFFF
-	GLenum glClientWaitSync (GLsync GLsync,GLbitfield flags,GLuint64 timeout)
-	void glDeleteSync (GLsync GLsync)
-	GLsync glFenceSync (GLenum condition,GLbitfield flags)
-	void glGetInteger64v (GLenum pname, GLint64* params)
-	void glGetSynciv (GLsync GLsync,GLenum pname,GLsizei bufSize,GLsizei* length, GLint *values)
-	GLboolean glIsSync (GLsync GLsync)
-	void glWaitSync (GLsync GLsync,GLbitfield flags,GLuint64 timeout)
diff --git a/src/other/glew/auto/extensions/GL_ARB_tessellation_shader b/src/other/glew/auto/extensions/GL_ARB_tessellation_shader
deleted file mode 100644
index c737650..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_tessellation_shader
+++ /dev/null
@@ -1,37 +0,0 @@
-GL_ARB_tessellation_shader
-http://www.opengl.org/registry/specs/ARB/tessellation_shader.txt
-GL_ARB_tessellation_shader
-	GL_PATCHES 0xE
-	GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER 0x84F0
-	GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER 0x84F1
-	GL_MAX_TESS_CONTROL_INPUT_COMPONENTS 0x886C
-	GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS 0x886D
-	GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E1E
-	GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E1F
-	GL_PATCH_VERTICES 0x8E72
-	GL_PATCH_DEFAULT_INNER_LEVEL 0x8E73
-	GL_PATCH_DEFAULT_OUTER_LEVEL 0x8E74
-	GL_TESS_CONTROL_OUTPUT_VERTICES 0x8E75
-	GL_TESS_GEN_MODE 0x8E76
-	GL_TESS_GEN_SPACING 0x8E77
-	GL_TESS_GEN_VERTEX_ORDER 0x8E78
-	GL_TESS_GEN_POINT_MODE 0x8E79
-	GL_ISOLINES 0x8E7A
-	GL_FRACTIONAL_ODD 0x8E7B
-	GL_FRACTIONAL_EVEN 0x8E7C
-	GL_MAX_PATCH_VERTICES 0x8E7D
-	GL_MAX_TESS_GEN_LEVEL 0x8E7E
-	GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E7F
-	GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E80
-	GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS 0x8E81
-	GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS 0x8E82
-	GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS 0x8E83
-	GL_MAX_TESS_PATCH_COMPONENTS 0x8E84
-	GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS 0x8E85
-	GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS 0x8E86
-	GL_TESS_EVALUATION_SHADER 0x8E87
-	GL_TESS_CONTROL_SHADER 0x8E88
-	GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS 0x8E89
-	GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS 0x8E8A
-	void glPatchParameterfv (GLenum pname, const GLfloat* values)
-	void glPatchParameteri (GLenum pname, GLint value)
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_border_clamp b/src/other/glew/auto/extensions/GL_ARB_texture_border_clamp
deleted file mode 100644
index 14e74fb..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_border_clamp
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ARB_texture_border_clamp
-http://www.opengl.org/registry/specs/ARB/texture_border_clamp.txt
-GL_ARB_texture_border_clamp
-	GL_CLAMP_TO_BORDER_ARB 0x812D
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_buffer_object b/src/other/glew/auto/extensions/GL_ARB_texture_buffer_object
deleted file mode 100644
index bae7fc6..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_buffer_object
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_ARB_texture_buffer_object
-http://www.opengl.org/registry/specs/ARB/texture_buffer_object.txt
-GL_ARB_texture_buffer_object
-	GL_TEXTURE_BUFFER_ARB 0x8C2A
-	GL_MAX_TEXTURE_BUFFER_SIZE_ARB 0x8C2B
-	GL_TEXTURE_BINDING_BUFFER_ARB 0x8C2C
-	GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB 0x8C2D
-	GL_TEXTURE_BUFFER_FORMAT_ARB 0x8C2E
-	void glTexBufferARB (GLenum target, GLenum internalformat, GLuint buffer)
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_buffer_object_rgb32 b/src/other/glew/auto/extensions/GL_ARB_texture_buffer_object_rgb32
deleted file mode 100644
index ddac257..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_buffer_object_rgb32
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ARB_texture_buffer_object_rgb32
-http://www.opengl.org/registry/specs/ARB/texture_buffer_object_rgb32.txt
-GL_ARB_texture_buffer_object_rgb32
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_compression b/src/other/glew/auto/extensions/GL_ARB_texture_compression
deleted file mode 100644
index c32a6fb..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_compression
+++ /dev/null
@@ -1,21 +0,0 @@
-GL_ARB_texture_compression
-http://www.opengl.org/registry/specs/ARB/texture_compression.txt
-GL_ARB_texture_compression
-	GL_COMPRESSED_ALPHA_ARB 0x84E9
-	GL_COMPRESSED_LUMINANCE_ARB 0x84EA
-	GL_COMPRESSED_LUMINANCE_ALPHA_ARB 0x84EB
-	GL_COMPRESSED_INTENSITY_ARB 0x84EC
-	GL_COMPRESSED_RGB_ARB 0x84ED
-	GL_COMPRESSED_RGBA_ARB 0x84EE
-	GL_TEXTURE_COMPRESSION_HINT_ARB 0x84EF
-	GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB 0x86A0
-	GL_TEXTURE_COMPRESSED_ARB 0x86A1
-	GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A2
-	GL_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A3
-	void glCompressedTexImage1DARB (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* data)
-	void glCompressedTexImage2DARB (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data)
-	void glCompressedTexImage3DARB (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data)
-	void glCompressedTexSubImage1DARB (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* data)
-	void glCompressedTexSubImage2DARB (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data)
-	void glCompressedTexSubImage3DARB (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data)
-	void glGetCompressedTexImageARB (GLenum target, GLint lod, void* img)
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_compression_bptc b/src/other/glew/auto/extensions/GL_ARB_texture_compression_bptc
deleted file mode 100644
index a476d78..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_compression_bptc
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_ARB_texture_compression_bptc
-http://www.opengl.org/registry/specs/ARB/texture_compression_bptc.txt
-GL_ARB_texture_compression_bptc
-	GL_COMPRESSED_RGBA_BPTC_UNORM_ARB 0x8E8C
-	GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB 0x8E8D
-	GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB 0x8E8E
-	GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB 0x8E8F
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_compression_rgtc b/src/other/glew/auto/extensions/GL_ARB_texture_compression_rgtc
deleted file mode 100644
index 233597e..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_compression_rgtc
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_ARB_texture_compression_rgtc
-http://www.opengl.org/registry/specs/ARB/texture_compression_rgtc.txt
-GL_ARB_texture_compression_rgtc
-	GL_COMPRESSED_RED_RGTC1 0x8DBB
-	GL_COMPRESSED_SIGNED_RED_RGTC1 0x8DBC
-	GL_COMPRESSED_RG_RGTC2 0x8DBD
-	GL_COMPRESSED_SIGNED_RG_RGTC2 0x8DBE
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_cube_map b/src/other/glew/auto/extensions/GL_ARB_texture_cube_map
deleted file mode 100644
index 67f232e..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_cube_map
+++ /dev/null
@@ -1,15 +0,0 @@
-GL_ARB_texture_cube_map
-http://www.opengl.org/registry/specs/ARB/texture_cube_map.txt
-GL_ARB_texture_cube_map
-	GL_NORMAL_MAP_ARB 0x8511
-	GL_REFLECTION_MAP_ARB 0x8512
-	GL_TEXTURE_CUBE_MAP_ARB 0x8513
-	GL_TEXTURE_BINDING_CUBE_MAP_ARB 0x8514
-	GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x8515
-	GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x8516
-	GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x8517
-	GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x8518
-	GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x8519
-	GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x851A
-	GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B
-	GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB 0x851C
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_cube_map_array b/src/other/glew/auto/extensions/GL_ARB_texture_cube_map_array
deleted file mode 100644
index fcb7223..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_cube_map_array
+++ /dev/null
@@ -1,10 +0,0 @@
-GL_ARB_texture_cube_map_array
-http://www.opengl.org/registry/specs/ARB/texture_cube_map_array.txt
-GL_ARB_texture_cube_map_array
-	GL_TEXTURE_CUBE_MAP_ARRAY_ARB 0x9009
-	GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB 0x900A
-	GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB 0x900B
-	GL_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900C
-	GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB 0x900D
-	GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900E
-	GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900F
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_env_add b/src/other/glew/auto/extensions/GL_ARB_texture_env_add
deleted file mode 100644
index 9f6f889..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_env_add
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ARB_texture_env_add
-http://www.opengl.org/registry/specs/ARB/texture_env_add.txt
-GL_ARB_texture_env_add
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_env_combine b/src/other/glew/auto/extensions/GL_ARB_texture_env_combine
deleted file mode 100644
index 94d689e..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_env_combine
+++ /dev/null
@@ -1,25 +0,0 @@
-GL_ARB_texture_env_combine
-http://www.opengl.org/registry/specs/ARB/texture_env_combine.txt
-GL_ARB_texture_env_combine
-	GL_SUBTRACT_ARB 0x84E7
-	GL_COMBINE_ARB 0x8570
-	GL_COMBINE_RGB_ARB 0x8571
-	GL_COMBINE_ALPHA_ARB 0x8572
-	GL_RGB_SCALE_ARB 0x8573
-	GL_ADD_SIGNED_ARB 0x8574
-	GL_INTERPOLATE_ARB 0x8575
-	GL_CONSTANT_ARB 0x8576
-	GL_PRIMARY_COLOR_ARB 0x8577
-	GL_PREVIOUS_ARB 0x8578
-	GL_SOURCE0_RGB_ARB 0x8580
-	GL_SOURCE1_RGB_ARB 0x8581
-	GL_SOURCE2_RGB_ARB 0x8582
-	GL_SOURCE0_ALPHA_ARB 0x8588
-	GL_SOURCE1_ALPHA_ARB 0x8589
-	GL_SOURCE2_ALPHA_ARB 0x858A
-	GL_OPERAND0_RGB_ARB 0x8590
-	GL_OPERAND1_RGB_ARB 0x8591
-	GL_OPERAND2_RGB_ARB 0x8592
-	GL_OPERAND0_ALPHA_ARB 0x8598
-	GL_OPERAND1_ALPHA_ARB 0x8599
-	GL_OPERAND2_ALPHA_ARB 0x859A
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_env_crossbar b/src/other/glew/auto/extensions/GL_ARB_texture_env_crossbar
deleted file mode 100644
index 93aa97f..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_env_crossbar
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ARB_texture_env_crossbar
-http://www.opengl.org/registry/specs/ARB/texture_env_crossbar.txt
-GL_ARB_texture_env_crossbar
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_env_dot3 b/src/other/glew/auto/extensions/GL_ARB_texture_env_dot3
deleted file mode 100644
index 6e6587f..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_env_dot3
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_ARB_texture_env_dot3
-http://www.opengl.org/registry/specs/ARB/texture_env_dot3.txt
-GL_ARB_texture_env_dot3
-	GL_DOT3_RGB_ARB 0x86AE
-	GL_DOT3_RGBA_ARB 0x86AF
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_float b/src/other/glew/auto/extensions/GL_ARB_texture_float
deleted file mode 100644
index 14d0de6..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_float
+++ /dev/null
@@ -1,23 +0,0 @@
-GL_ARB_texture_float
-http://www.opengl.org/registry/specs/ARB/texture_float.txt
-GL_ARB_texture_float
-	GL_RGBA32F_ARB 0x8814
-	GL_RGB32F_ARB 0x8815
-	GL_ALPHA32F_ARB 0x8816
-	GL_INTENSITY32F_ARB 0x8817
-	GL_LUMINANCE32F_ARB 0x8818
-	GL_LUMINANCE_ALPHA32F_ARB 0x8819
-	GL_RGBA16F_ARB 0x881A
-	GL_RGB16F_ARB 0x881B
-	GL_ALPHA16F_ARB 0x881C
-	GL_INTENSITY16F_ARB 0x881D
-	GL_LUMINANCE16F_ARB 0x881E
-	GL_LUMINANCE_ALPHA16F_ARB 0x881F
-	GL_TEXTURE_RED_TYPE_ARB 0x8C10
-	GL_TEXTURE_GREEN_TYPE_ARB 0x8C11
-	GL_TEXTURE_BLUE_TYPE_ARB 0x8C12
-	GL_TEXTURE_ALPHA_TYPE_ARB 0x8C13
-	GL_TEXTURE_LUMINANCE_TYPE_ARB 0x8C14
-	GL_TEXTURE_INTENSITY_TYPE_ARB 0x8C15
-	GL_TEXTURE_DEPTH_TYPE_ARB 0x8C16
-	GL_UNSIGNED_NORMALIZED_ARB 0x8C17
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_gather b/src/other/glew/auto/extensions/GL_ARB_texture_gather
deleted file mode 100644
index 0f5fd18..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_gather
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ARB_texture_gather
-http://www.opengl.org/registry/specs/ARB/texture_gather.txt
-GL_ARB_texture_gather
-	GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5E
-	GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5F
-	GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB 0x8F9F
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_mirrored_repeat b/src/other/glew/auto/extensions/GL_ARB_texture_mirrored_repeat
deleted file mode 100644
index 6d664e9..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_mirrored_repeat
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ARB_texture_mirrored_repeat
-http://www.opengl.org/registry/specs/ARB/texture_mirrored_repeat.txt
-GL_ARB_texture_mirrored_repeat
-	GL_MIRRORED_REPEAT_ARB 0x8370
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_multisample b/src/other/glew/auto/extensions/GL_ARB_texture_multisample
deleted file mode 100644
index 9e0e896..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_multisample
+++ /dev/null
@@ -1,28 +0,0 @@
-GL_ARB_texture_multisample
-http://www.opengl.org/registry/specs/ARB/texture_multisample.txt
-GL_ARB_texture_multisample
-	GL_SAMPLE_POSITION 0x8E50
-	GL_SAMPLE_MASK 0x8E51
-	GL_SAMPLE_MASK_VALUE 0x8E52
-	GL_MAX_SAMPLE_MASK_WORDS 0x8E59
-	GL_TEXTURE_2D_MULTISAMPLE 0x9100
-	GL_PROXY_TEXTURE_2D_MULTISAMPLE 0x9101
-	GL_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9102
-	GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9103
-	GL_TEXTURE_BINDING_2D_MULTISAMPLE 0x9104
-	GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY 0x9105
-	GL_TEXTURE_SAMPLES 0x9106
-	GL_TEXTURE_FIXED_SAMPLE_LOCATIONS 0x9107
-	GL_SAMPLER_2D_MULTISAMPLE 0x9108
-	GL_INT_SAMPLER_2D_MULTISAMPLE 0x9109
-	GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE 0x910A
-	GL_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910B
-	GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910C
-	GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910D
-	GL_MAX_COLOR_TEXTURE_SAMPLES 0x910E
-	GL_MAX_DEPTH_TEXTURE_SAMPLES 0x910F
-	GL_MAX_INTEGER_SAMPLES 0x9110
-	void glGetMultisamplefv (GLenum pname, GLuint index, GLfloat* val)
-	void glSampleMaski (GLuint index, GLbitfield mask)
-	void glTexImage2DMultisample (GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations)
-	void glTexImage3DMultisample (GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations)
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_non_power_of_two b/src/other/glew/auto/extensions/GL_ARB_texture_non_power_of_two
deleted file mode 100644
index c711111..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_non_power_of_two
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ARB_texture_non_power_of_two
-http://www.opengl.org/registry/specs/ARB/texture_non_power_of_two.txt
-GL_ARB_texture_non_power_of_two
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_query_lod b/src/other/glew/auto/extensions/GL_ARB_texture_query_lod
deleted file mode 100644
index 981dc84..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_query_lod
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ARB_texture_query_lod
-http://www.opengl.org/registry/specs/ARB/texture_query_lod.txt
-GL_ARB_texture_query_lod
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_rectangle b/src/other/glew/auto/extensions/GL_ARB_texture_rectangle
deleted file mode 100644
index 33915d1..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_rectangle
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_ARB_texture_rectangle
-http://www.opengl.org/registry/specs/ARB/texture_rectangle.txt
-GL_ARB_texture_rectangle
-	GL_TEXTURE_RECTANGLE_ARB 0x84F5
-	GL_TEXTURE_BINDING_RECTANGLE_ARB 0x84F6
-	GL_PROXY_TEXTURE_RECTANGLE_ARB 0x84F7
-	GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB 0x84F8
-	GL_SAMPLER_2D_RECT_ARB 0x8B63
-	GL_SAMPLER_2D_RECT_SHADOW_ARB 0x8B64
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_rg b/src/other/glew/auto/extensions/GL_ARB_texture_rg
deleted file mode 100644
index 1f55eff..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_rg
+++ /dev/null
@@ -1,28 +0,0 @@
-GL_ARB_texture_rg
-http://www.opengl.org/registry/specs/ARB/texture_rg.txt
-GL_ARB_texture_rg
-	GL_RED 0x1903
-	GL_COMPRESSED_RED 0x8225
-	GL_COMPRESSED_RG 0x8226
-	GL_RG 0x8227
-	GL_RG_INTEGER 0x8228
-	GL_R8 0x8229
-	GL_R16 0x822A
-	GL_RG8 0x822B
-	GL_RG16 0x822C
-	GL_R16F 0x822D
-	GL_R32F 0x822E
-	GL_RG16F 0x822F
-	GL_RG32F 0x8230
-	GL_R8I 0x8231
-	GL_R8UI 0x8232
-	GL_R16I 0x8233
-	GL_R16UI 0x8234
-	GL_R32I 0x8235
-	GL_R32UI 0x8236
-	GL_RG8I 0x8237
-	GL_RG8UI 0x8238
-	GL_RG16I 0x8239
-	GL_RG16UI 0x823A
-	GL_RG32I 0x823B
-	GL_RG32UI 0x823C
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_rgb10_a2ui b/src/other/glew/auto/extensions/GL_ARB_texture_rgb10_a2ui
deleted file mode 100644
index 7e5d4db..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_rgb10_a2ui
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ARB_texture_rgb10_a2ui
-http://www.opengl.org/registry/specs/ARB/texture_rgb10_a2ui.txt
-GL_ARB_texture_rgb10_a2ui
-	GL_RGB10_A2UI 0x906F
diff --git a/src/other/glew/auto/extensions/GL_ARB_texture_swizzle b/src/other/glew/auto/extensions/GL_ARB_texture_swizzle
deleted file mode 100644
index 4553324..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_texture_swizzle
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_ARB_texture_swizzle
-http://www.opengl.org/registry/specs/ARB/texture_swizzle.txt
-GL_ARB_texture_swizzle
-	GL_TEXTURE_SWIZZLE_R 0x8E42
-	GL_TEXTURE_SWIZZLE_G 0x8E43
-	GL_TEXTURE_SWIZZLE_B 0x8E44
-	GL_TEXTURE_SWIZZLE_A 0x8E45
-	GL_TEXTURE_SWIZZLE_RGBA 0x8E46
diff --git a/src/other/glew/auto/extensions/GL_ARB_timer_query b/src/other/glew/auto/extensions/GL_ARB_timer_query
deleted file mode 100644
index 6f64ace..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_timer_query
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_ARB_timer_query
-http://www.opengl.org/registry/specs/ARB/timer_query.txt
-GL_ARB_timer_query
-	GL_TIME_ELAPSED 0x88BF
-	GL_TIMESTAMP 0x8E28
-	void glGetQueryObjecti64v (GLuint id, GLenum pname, GLint64* params)
-	void glGetQueryObjectui64v (GLuint id, GLenum pname, GLuint64* params)
-	void glQueryCounter (GLuint id, GLenum target)
diff --git a/src/other/glew/auto/extensions/GL_ARB_transform_feedback2 b/src/other/glew/auto/extensions/GL_ARB_transform_feedback2
deleted file mode 100644
index 06c3626..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_transform_feedback2
+++ /dev/null
@@ -1,14 +0,0 @@
-GL_ARB_transform_feedback2
-http://www.opengl.org/registry/specs/ARB/transform_feedback2.txt
-GL_ARB_transform_feedback2
-	GL_TRANSFORM_FEEDBACK 0x8E22
-	GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED 0x8E23
-	GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE 0x8E24
-	GL_TRANSFORM_FEEDBACK_BINDING 0x8E25
-	void glBindTransformFeedback (GLenum target, GLuint id)
-	void glDeleteTransformFeedbacks (GLsizei n, const GLuint* ids)
-	void glDrawTransformFeedback (GLenum mode, GLuint id)
-	void glGenTransformFeedbacks (GLsizei n, GLuint* ids)
-	GLboolean glIsTransformFeedback (GLuint id)
-	void glPauseTransformFeedback (void)
-	void glResumeTransformFeedback (void)
diff --git a/src/other/glew/auto/extensions/GL_ARB_transform_feedback3 b/src/other/glew/auto/extensions/GL_ARB_transform_feedback3
deleted file mode 100644
index 37e8f35..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_transform_feedback3
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_ARB_transform_feedback3
-http://www.opengl.org/registry/specs/ARB/transform_feedback3.txt
-GL_ARB_transform_feedback3
-	GL_MAX_TRANSFORM_FEEDBACK_BUFFERS 0x8E70
-	GL_MAX_VERTEX_STREAMS 0x8E71
-	void glBeginQueryIndexed (GLenum target, GLuint index, GLuint id)
-	void glDrawTransformFeedbackStream (GLenum mode, GLuint id, GLuint stream)
-	void glEndQueryIndexed (GLenum target, GLuint index)
-	void glGetQueryIndexediv (GLenum target, GLuint index, GLenum pname, GLint* params)
diff --git a/src/other/glew/auto/extensions/GL_ARB_transpose_matrix b/src/other/glew/auto/extensions/GL_ARB_transpose_matrix
deleted file mode 100644
index e869bd5..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_transpose_matrix
+++ /dev/null
@@ -1,11 +0,0 @@
-GL_ARB_transpose_matrix
-http://www.opengl.org/registry/specs/ARB/transpose_matrix.txt
-GL_ARB_transpose_matrix
-	GL_TRANSPOSE_MODELVIEW_MATRIX_ARB 0x84E3
-	GL_TRANSPOSE_PROJECTION_MATRIX_ARB 0x84E4
-	GL_TRANSPOSE_TEXTURE_MATRIX_ARB 0x84E5
-	GL_TRANSPOSE_COLOR_MATRIX_ARB 0x84E6
-	void glLoadTransposeMatrixfARB (GLfloat m[16])
-	void glLoadTransposeMatrixdARB (GLdouble m[16])
-	void glMultTransposeMatrixfARB (GLfloat m[16])
-	void glMultTransposeMatrixdARB (GLdouble m[16])
diff --git a/src/other/glew/auto/extensions/GL_ARB_uniform_buffer_object b/src/other/glew/auto/extensions/GL_ARB_uniform_buffer_object
deleted file mode 100644
index c4992d1..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_uniform_buffer_object
+++ /dev/null
@@ -1,46 +0,0 @@
-GL_ARB_uniform_buffer_object
-http://www.opengl.org/registry/specs/ARB/uniform_buffer_object.txt
-GL_ARB_uniform_buffer_object
-	GL_UNIFORM_BUFFER 0x8A11
-	GL_UNIFORM_BUFFER_BINDING 0x8A28
-	GL_UNIFORM_BUFFER_START 0x8A29
-	GL_UNIFORM_BUFFER_SIZE 0x8A2A
-	GL_MAX_VERTEX_UNIFORM_BLOCKS 0x8A2B
-	GL_MAX_GEOMETRY_UNIFORM_BLOCKS 0x8A2C
-	GL_MAX_FRAGMENT_UNIFORM_BLOCKS 0x8A2D
-	GL_MAX_COMBINED_UNIFORM_BLOCKS 0x8A2E
-	GL_MAX_UNIFORM_BUFFER_BINDINGS 0x8A2F
-	GL_MAX_UNIFORM_BLOCK_SIZE 0x8A30
-	GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS 0x8A31
-	GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS 0x8A32
-	GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS 0x8A33
-	GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT 0x8A34
-	GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH 0x8A35
-	GL_ACTIVE_UNIFORM_BLOCKS 0x8A36
-	GL_UNIFORM_TYPE 0x8A37
-	GL_UNIFORM_SIZE 0x8A38
-	GL_UNIFORM_NAME_LENGTH 0x8A39
-	GL_UNIFORM_BLOCK_INDEX 0x8A3A
-	GL_UNIFORM_OFFSET 0x8A3B
-	GL_UNIFORM_ARRAY_STRIDE 0x8A3C
-	GL_UNIFORM_MATRIX_STRIDE 0x8A3D
-	GL_UNIFORM_IS_ROW_MAJOR 0x8A3E
-	GL_UNIFORM_BLOCK_BINDING 0x8A3F
-	GL_UNIFORM_BLOCK_DATA_SIZE 0x8A40
-	GL_UNIFORM_BLOCK_NAME_LENGTH 0x8A41
-	GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS 0x8A42
-	GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES 0x8A43
-	GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER 0x8A44
-	GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER 0x8A45
-	GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER 0x8A46
-	GL_INVALID_INDEX 0xFFFFFFFF
-	void glBindBufferBase (GLenum target, GLuint index, GLuint buffer)
-	void glBindBufferRange (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
-	void glGetActiveUniformBlockName (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, char* uniformBlockName)
-	void glGetActiveUniformBlockiv (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params)
-	void glGetActiveUniformName (GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei* length, char* uniformName)
-	void glGetActiveUniformsiv (GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params)
-	void glGetIntegeri_v (GLenum target, GLuint index, GLint* data)
-	GLuint glGetUniformBlockIndex (GLuint program, const char* uniformBlockName)
-	void glGetUniformIndices (GLuint program, GLsizei uniformCount, const char** uniformNames, GLuint* uniformIndices)
-	void glUniformBlockBinding (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
diff --git a/src/other/glew/auto/extensions/GL_ARB_vertex_array_bgra b/src/other/glew/auto/extensions/GL_ARB_vertex_array_bgra
deleted file mode 100644
index cf4ef09..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_vertex_array_bgra
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ARB_vertex_array_bgra
-http://www.opengl.org/registry/specs/ARB/vertex_array_bgra.txt
-GL_ARB_vertex_array_bgra
-	GL_BGRA 0x80E1
diff --git a/src/other/glew/auto/extensions/GL_ARB_vertex_array_object b/src/other/glew/auto/extensions/GL_ARB_vertex_array_object
deleted file mode 100644
index efe7d7c..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_vertex_array_object
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_ARB_vertex_array_object
-http://www.opengl.org/registry/specs/ARB/vertex_array_object.txt
-GL_ARB_vertex_array_object
-	GL_VERTEX_ARRAY_BINDING 0x85B5
-	void glBindVertexArray (GLuint array)
-	void glDeleteVertexArrays (GLsizei n, const GLuint* arrays)
-	void glGenVertexArrays (GLsizei n, GLuint* arrays)
-	GLboolean glIsVertexArray (GLuint array)
diff --git a/src/other/glew/auto/extensions/GL_ARB_vertex_blend b/src/other/glew/auto/extensions/GL_ARB_vertex_blend
deleted file mode 100644
index 8da2c78..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_vertex_blend
+++ /dev/null
@@ -1,55 +0,0 @@
-GL_ARB_vertex_blend
-http://oss.sgi.com/projects/ogl-sample/registry/ARB/vertex_blend.txt
-GL_ARB_vertex_blend
-	GL_MAX_VERTEX_UNITS_ARB 0x86A4
-	GL_ACTIVE_VERTEX_UNITS_ARB 0x86A5
-	GL_WEIGHT_SUM_UNITY_ARB 0x86A6
-	GL_VERTEX_BLEND_ARB 0x86A7
-	GL_CURRENT_WEIGHT_ARB 0x86A8
-	GL_WEIGHT_ARRAY_TYPE_ARB 0x86A9
-	GL_WEIGHT_ARRAY_STRIDE_ARB 0x86AA
-	GL_WEIGHT_ARRAY_SIZE_ARB 0x86AB
-	GL_WEIGHT_ARRAY_POINTER_ARB 0x86AC
-	GL_WEIGHT_ARRAY_ARB 0x86AD
-	GL_MODELVIEW0_ARB 0x1700
-	GL_MODELVIEW1_ARB 0x850A
-	GL_MODELVIEW2_ARB 0x8722
-	GL_MODELVIEW3_ARB 0x8723
-	GL_MODELVIEW4_ARB 0x8724
-	GL_MODELVIEW5_ARB 0x8725
-	GL_MODELVIEW6_ARB 0x8726
-	GL_MODELVIEW7_ARB 0x8727
-	GL_MODELVIEW8_ARB 0x8728
-	GL_MODELVIEW9_ARB 0x8729
-	GL_MODELVIEW10_ARB 0x872A
-	GL_MODELVIEW11_ARB 0x872B
-	GL_MODELVIEW12_ARB 0x872C
-	GL_MODELVIEW13_ARB 0x872D
-	GL_MODELVIEW14_ARB 0x872E
-	GL_MODELVIEW15_ARB 0x872F
-	GL_MODELVIEW16_ARB 0x8730
-	GL_MODELVIEW17_ARB 0x8731
-	GL_MODELVIEW18_ARB 0x8732
-	GL_MODELVIEW19_ARB 0x8733
-	GL_MODELVIEW20_ARB 0x8734
-	GL_MODELVIEW21_ARB 0x8735
-	GL_MODELVIEW22_ARB 0x8736
-	GL_MODELVIEW23_ARB 0x8737
-	GL_MODELVIEW24_ARB 0x8738
-	GL_MODELVIEW25_ARB 0x8739
-	GL_MODELVIEW26_ARB 0x873A
-	GL_MODELVIEW27_ARB 0x873B
-	GL_MODELVIEW28_ARB 0x873C
-	GL_MODELVIEW29_ARB 0x873D
-	GL_MODELVIEW30_ARB 0x873E
-	GL_MODELVIEW31_ARB 0x873F
-	void glWeightbvARB (GLint size, GLbyte *weights)
-	void glWeightsvARB (GLint size, GLshort *weights)
-	void glWeightivARB (GLint size, GLint *weights)
-	void glWeightfvARB (GLint size, GLfloat *weights)
-	void glWeightdvARB (GLint size, GLdouble *weights)
-	void glWeightubvARB (GLint size, GLubyte *weights)
-	void glWeightusvARB (GLint size, GLushort *weights)
-	void glWeightuivARB (GLint size, GLuint *weights)
-	void glWeightPointerARB (GLint size, GLenum type, GLsizei stride, GLvoid *pointer)
-	void glVertexBlendARB (GLint count)
diff --git a/src/other/glew/auto/extensions/GL_ARB_vertex_buffer_object b/src/other/glew/auto/extensions/GL_ARB_vertex_buffer_object
deleted file mode 100644
index bd2ddfa..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_vertex_buffer_object
+++ /dev/null
@@ -1,47 +0,0 @@
-GL_ARB_vertex_buffer_object
-http://www.opengl.org/registry/specs/ARB/vertex_buffer_object.txt
-GL_ARB_vertex_buffer_object
-	GL_BUFFER_SIZE_ARB 0x8764
-	GL_BUFFER_USAGE_ARB 0x8765
-	GL_ARRAY_BUFFER_ARB 0x8892
-	GL_ELEMENT_ARRAY_BUFFER_ARB 0x8893
-	GL_ARRAY_BUFFER_BINDING_ARB 0x8894
-	GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB 0x8895
-	GL_VERTEX_ARRAY_BUFFER_BINDING_ARB 0x8896
-	GL_NORMAL_ARRAY_BUFFER_BINDING_ARB 0x8897
-	GL_COLOR_ARRAY_BUFFER_BINDING_ARB 0x8898
-	GL_INDEX_ARRAY_BUFFER_BINDING_ARB 0x8899
-	GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB 0x889A
-	GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB 0x889B
-	GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB 0x889C
-	GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB 0x889D
-	GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB 0x889E
-	GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB 0x889F
-	GL_READ_ONLY_ARB 0x88B8
-	GL_WRITE_ONLY_ARB 0x88B9
-	GL_READ_WRITE_ARB 0x88BA
-	GL_BUFFER_ACCESS_ARB 0x88BB
-	GL_BUFFER_MAPPED_ARB 0x88BC
-	GL_BUFFER_MAP_POINTER_ARB 0x88BD
-	GL_STREAM_DRAW_ARB 0x88E0
-	GL_STREAM_READ_ARB 0x88E1
-	GL_STREAM_COPY_ARB 0x88E2
-	GL_STATIC_DRAW_ARB 0x88E4
-	GL_STATIC_READ_ARB 0x88E5
-	GL_STATIC_COPY_ARB 0x88E6
-	GL_DYNAMIC_DRAW_ARB 0x88E8
-	GL_DYNAMIC_READ_ARB 0x88E9
-	GL_DYNAMIC_COPY_ARB 0x88EA
-	void glBindBufferARB (GLenum target, GLuint buffer)
-	void glBufferDataARB (GLenum target, GLsizeiptrARB size, const GLvoid* data, GLenum usage)
-	void glBufferSubDataARB (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid* data)
-	void glDeleteBuffersARB (GLsizei n, const GLuint* buffers)
-	void glGenBuffersARB (GLsizei n, GLuint* buffers)
-	void glGetBufferParameterivARB (GLenum target, GLenum pname, GLint* params)
-	void glGetBufferPointervARB (GLenum target, GLenum pname, GLvoid** params)
-	void glGetBufferSubDataARB (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid* data)
-	GLboolean glIsBufferARB (GLuint buffer)
-	GLvoid * glMapBufferARB (GLenum target, GLenum access)
-	GLboolean glUnmapBufferARB (GLenum target)
-	typedef ptrdiff_t GLsizeiptrARB
-	typedef ptrdiff_t GLintptrARB
diff --git a/src/other/glew/auto/extensions/GL_ARB_vertex_program b/src/other/glew/auto/extensions/GL_ARB_vertex_program
deleted file mode 100644
index 81fd69d..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_vertex_program
+++ /dev/null
@@ -1,144 +0,0 @@
-GL_ARB_vertex_program
-http://www.opengl.org/registry/specs/ARB/vertex_program.txt
-GL_ARB_vertex_program
-	GL_COLOR_SUM_ARB 0x8458
-	GL_VERTEX_PROGRAM_ARB 0x8620
-	GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB 0x8622
-	GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB 0x8623
-	GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB 0x8624
-	GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB 0x8625
-	GL_CURRENT_VERTEX_ATTRIB_ARB 0x8626
-	GL_PROGRAM_LENGTH_ARB 0x8627
-	GL_PROGRAM_STRING_ARB 0x8628
-	GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB 0x862E
-	GL_MAX_PROGRAM_MATRICES_ARB 0x862F
-	GL_CURRENT_MATRIX_STACK_DEPTH_ARB 0x8640
-	GL_CURRENT_MATRIX_ARB 0x8641
-	GL_VERTEX_PROGRAM_POINT_SIZE_ARB 0x8642
-	GL_VERTEX_PROGRAM_TWO_SIDE_ARB 0x8643
-	GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB 0x8645
-	GL_PROGRAM_ERROR_POSITION_ARB 0x864B
-	GL_PROGRAM_BINDING_ARB 0x8677
-	GL_MAX_VERTEX_ATTRIBS_ARB 0x8869
-	GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB 0x886A
-	GL_PROGRAM_ERROR_STRING_ARB 0x8874
-	GL_PROGRAM_FORMAT_ASCII_ARB 0x8875
-	GL_PROGRAM_FORMAT_ARB 0x8876
-	GL_PROGRAM_INSTRUCTIONS_ARB 0x88A0
-	GL_MAX_PROGRAM_INSTRUCTIONS_ARB 0x88A1
-	GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A2
-	GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A3
-	GL_PROGRAM_TEMPORARIES_ARB 0x88A4
-	GL_MAX_PROGRAM_TEMPORARIES_ARB 0x88A5
-	GL_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A6
-	GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A7
-	GL_PROGRAM_PARAMETERS_ARB 0x88A8
-	GL_MAX_PROGRAM_PARAMETERS_ARB 0x88A9
-	GL_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AA
-	GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AB
-	GL_PROGRAM_ATTRIBS_ARB 0x88AC
-	GL_MAX_PROGRAM_ATTRIBS_ARB 0x88AD
-	GL_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AE
-	GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AF
-	GL_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B0
-	GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B1
-	GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B2
-	GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B3
-	GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB 0x88B4
-	GL_MAX_PROGRAM_ENV_PARAMETERS_ARB 0x88B5
-	GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB 0x88B6
-	GL_TRANSPOSE_CURRENT_MATRIX_ARB 0x88B7
-	GL_MATRIX0_ARB 0x88C0
-	GL_MATRIX1_ARB 0x88C1
-	GL_MATRIX2_ARB 0x88C2
-	GL_MATRIX3_ARB 0x88C3
-	GL_MATRIX4_ARB 0x88C4
-	GL_MATRIX5_ARB 0x88C5
-	GL_MATRIX6_ARB 0x88C6
-	GL_MATRIX7_ARB 0x88C7
-	GL_MATRIX8_ARB 0x88C8
-	GL_MATRIX9_ARB 0x88C9
-	GL_MATRIX10_ARB 0x88CA
-	GL_MATRIX11_ARB 0x88CB
-	GL_MATRIX12_ARB 0x88CC
-	GL_MATRIX13_ARB 0x88CD
-	GL_MATRIX14_ARB 0x88CE
-	GL_MATRIX15_ARB 0x88CF
-	GL_MATRIX16_ARB 0x88D0
-	GL_MATRIX17_ARB 0x88D1
-	GL_MATRIX18_ARB 0x88D2
-	GL_MATRIX19_ARB 0x88D3
-	GL_MATRIX20_ARB 0x88D4
-	GL_MATRIX21_ARB 0x88D5
-	GL_MATRIX22_ARB 0x88D6
-	GL_MATRIX23_ARB 0x88D7
-	GL_MATRIX24_ARB 0x88D8
-	GL_MATRIX25_ARB 0x88D9
-	GL_MATRIX26_ARB 0x88DA
-	GL_MATRIX27_ARB 0x88DB
-	GL_MATRIX28_ARB 0x88DC
-	GL_MATRIX29_ARB 0x88DD
-	GL_MATRIX30_ARB 0x88DE
-	GL_MATRIX31_ARB 0x88DF
-	void glBindProgramARB (GLenum target, GLuint program)
-	void glDeleteProgramsARB (GLsizei n, const GLuint* programs)
-	void glDisableVertexAttribArrayARB (GLuint index)
-	void glEnableVertexAttribArrayARB (GLuint index)
-	void glGenProgramsARB (GLsizei n, GLuint* programs)
-	void glGetProgramEnvParameterdvARB (GLenum target, GLuint index, GLdouble* params)
-	void glGetProgramEnvParameterfvARB (GLenum target, GLuint index, GLfloat* params)
-	void glGetProgramLocalParameterdvARB (GLenum target, GLuint index, GLdouble* params)
-	void glGetProgramLocalParameterfvARB (GLenum target, GLuint index, GLfloat* params)
-	void glGetProgramStringARB (GLenum target, GLenum pname, void* string)
-	void glGetProgramivARB (GLenum target, GLenum pname, GLint* params)
-	void glGetVertexAttribPointervARB (GLuint index, GLenum pname, GLvoid** pointer)
-	void glGetVertexAttribdvARB (GLuint index, GLenum pname, GLdouble* params)
-	void glGetVertexAttribfvARB (GLuint index, GLenum pname, GLfloat* params)
-	void glGetVertexAttribivARB (GLuint index, GLenum pname, GLint* params)
-	GLboolean glIsProgramARB (GLuint program)
-	void glProgramEnvParameter4dARB (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-	void glProgramEnvParameter4dvARB (GLenum target, GLuint index, const GLdouble* params)
-	void glProgramEnvParameter4fARB (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glProgramEnvParameter4fvARB (GLenum target, GLuint index, const GLfloat* params)
-	void glProgramLocalParameter4dARB (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-	void glProgramLocalParameter4dvARB (GLenum target, GLuint index, const GLdouble* params)
-	void glProgramLocalParameter4fARB (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glProgramLocalParameter4fvARB (GLenum target, GLuint index, const GLfloat* params)
-	void glProgramStringARB (GLenum target, GLenum format, GLsizei len, const void* string)
-	void glVertexAttrib1dARB (GLuint index, GLdouble x)
-	void glVertexAttrib1dvARB (GLuint index, const GLdouble* v)
-	void glVertexAttrib1fARB (GLuint index, GLfloat x)
-	void glVertexAttrib1fvARB (GLuint index, const GLfloat* v)
-	void glVertexAttrib1sARB (GLuint index, GLshort x)
-	void glVertexAttrib1svARB (GLuint index, const GLshort* v)
-	void glVertexAttrib2dARB (GLuint index, GLdouble x, GLdouble y)
-	void glVertexAttrib2dvARB (GLuint index, const GLdouble* v)
-	void glVertexAttrib2fARB (GLuint index, GLfloat x, GLfloat y)
-	void glVertexAttrib2fvARB (GLuint index, const GLfloat* v)
-	void glVertexAttrib2sARB (GLuint index, GLshort x, GLshort y)
-	void glVertexAttrib2svARB (GLuint index, const GLshort* v)
-	void glVertexAttrib3dARB (GLuint index, GLdouble x, GLdouble y, GLdouble z)
-	void glVertexAttrib3dvARB (GLuint index, const GLdouble* v)
-	void glVertexAttrib3fARB (GLuint index, GLfloat x, GLfloat y, GLfloat z)
-	void glVertexAttrib3fvARB (GLuint index, const GLfloat* v)
-	void glVertexAttrib3sARB (GLuint index, GLshort x, GLshort y, GLshort z)
-	void glVertexAttrib3svARB (GLuint index, const GLshort* v)
-	void glVertexAttrib4NbvARB (GLuint index, const GLbyte* v)
-	void glVertexAttrib4NivARB (GLuint index, const GLint* v)
-	void glVertexAttrib4NsvARB (GLuint index, const GLshort* v)
-	void glVertexAttrib4NubARB (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
-	void glVertexAttrib4NubvARB (GLuint index, const GLubyte* v)
-	void glVertexAttrib4NuivARB (GLuint index, const GLuint* v)
-	void glVertexAttrib4NusvARB (GLuint index, const GLushort* v)
-	void glVertexAttrib4bvARB (GLuint index, const GLbyte* v)
-	void glVertexAttrib4dARB (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-	void glVertexAttrib4dvARB (GLuint index, const GLdouble* v)
-	void glVertexAttrib4fARB (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glVertexAttrib4fvARB (GLuint index, const GLfloat* v)
-	void glVertexAttrib4ivARB (GLuint index, const GLint* v)
-	void glVertexAttrib4sARB (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
-	void glVertexAttrib4svARB (GLuint index, const GLshort* v)
-	void glVertexAttrib4ubvARB (GLuint index, const GLubyte* v)
-	void glVertexAttrib4uivARB (GLuint index, const GLuint* v)
-	void glVertexAttrib4usvARB (GLuint index, const GLushort* v)
-	void glVertexAttribPointerARB (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* pointer)
diff --git a/src/other/glew/auto/extensions/GL_ARB_vertex_shader b/src/other/glew/auto/extensions/GL_ARB_vertex_shader
deleted file mode 100644
index 08f5fe1..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_vertex_shader
+++ /dev/null
@@ -1,13 +0,0 @@
-GL_ARB_vertex_shader
-http://www.opengl.org/registry/specs/ARB/vertex_shader.txt
-GL_ARB_vertex_shader
-	GL_VERTEX_SHADER_ARB 0x8B31
-	GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB 0x8B4A
-	GL_MAX_VARYING_FLOATS_ARB 0x8B4B
-	GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C
-	GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB 0x8B4D
-	GL_OBJECT_ACTIVE_ATTRIBUTES_ARB 0x8B89
-	GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB 0x8B8A
-	void glBindAttribLocationARB (GLhandleARB programObj, GLuint index, const GLcharARB* name)
-	void glGetActiveAttribARB (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint *size, GLenum *type, GLcharARB *name)
-	GLint glGetAttribLocationARB (GLhandleARB programObj, const GLcharARB* name)
diff --git a/src/other/glew/auto/extensions/GL_ARB_vertex_type_2_10_10_10_rev b/src/other/glew/auto/extensions/GL_ARB_vertex_type_2_10_10_10_rev
deleted file mode 100644
index 5259063..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_vertex_type_2_10_10_10_rev
+++ /dev/null
@@ -1,43 +0,0 @@
-GL_ARB_vertex_type_2_10_10_10_rev
-http://www.opengl.org/registry/specs/ARB/vertex_type_2_10_10_10_rev.txt
-GL_ARB_vertex_type_2_10_10_10_rev
-	GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
-	GL_INT_2_10_10_10_REV 0x8D9F
-	void glColorP3ui (GLenum type, GLuint color)
-	void glColorP3uiv (GLenum type, const GLuint* color)
-	void glColorP4ui (GLenum type, GLuint color)
-	void glColorP4uiv (GLenum type, const GLuint* color)
-	void glMultiTexCoordP1ui (GLenum texture, GLenum type, GLuint coords)
-	void glMultiTexCoordP1uiv (GLenum texture, GLenum type, const GLuint* coords)
-	void glMultiTexCoordP2ui (GLenum texture, GLenum type, GLuint coords)
-	void glMultiTexCoordP2uiv (GLenum texture, GLenum type, const GLuint* coords)
-	void glMultiTexCoordP3ui (GLenum texture, GLenum type, GLuint coords)
-	void glMultiTexCoordP3uiv (GLenum texture, GLenum type, const GLuint* coords)
-	void glMultiTexCoordP4ui (GLenum texture, GLenum type, GLuint coords)
-	void glMultiTexCoordP4uiv (GLenum texture, GLenum type, const GLuint* coords)
-	void glNormalP3ui (GLenum type, GLuint coords)
-	void glNormalP3uiv (GLenum type, const GLuint* coords)
-	void glSecondaryColorP3ui (GLenum type, GLuint color)
-	void glSecondaryColorP3uiv (GLenum type, const GLuint* color)
-	void glTexCoordP1ui (GLenum type, GLuint coords)
-	void glTexCoordP1uiv (GLenum type, const GLuint* coords)
-	void glTexCoordP2ui (GLenum type, GLuint coords)
-	void glTexCoordP2uiv (GLenum type, const GLuint* coords)
-	void glTexCoordP3ui (GLenum type, GLuint coords)
-	void glTexCoordP3uiv (GLenum type, const GLuint* coords)
-	void glTexCoordP4ui (GLenum type, GLuint coords)
-	void glTexCoordP4uiv (GLenum type, const GLuint* coords)
-	void glVertexAttribP1ui (GLuint index, GLenum type, GLboolean normalized, GLuint value)
-	void glVertexAttribP1uiv (GLuint index, GLenum type, GLboolean normalized, const GLuint* value)
-	void glVertexAttribP2ui (GLuint index, GLenum type, GLboolean normalized, GLuint value)
-	void glVertexAttribP2uiv (GLuint index, GLenum type, GLboolean normalized, const GLuint* value)
-	void glVertexAttribP3ui (GLuint index, GLenum type, GLboolean normalized, GLuint value)
-	void glVertexAttribP3uiv (GLuint index, GLenum type, GLboolean normalized, const GLuint* value)
-	void glVertexAttribP4ui (GLuint index, GLenum type, GLboolean normalized, GLuint value)
-	void glVertexAttribP4uiv (GLuint index, GLenum type, GLboolean normalized, const GLuint* value)
-	void glVertexP2ui (GLenum type, GLuint value)
-	void glVertexP2uiv (GLenum type, const GLuint* value)
-	void glVertexP3ui (GLenum type, GLuint value)
-	void glVertexP3uiv (GLenum type, const GLuint* value)
-	void glVertexP4ui (GLenum type, GLuint value)
-	void glVertexP4uiv (GLenum type, const GLuint* value)
diff --git a/src/other/glew/auto/extensions/GL_ARB_window_pos b/src/other/glew/auto/extensions/GL_ARB_window_pos
deleted file mode 100644
index 15e5bf5..0000000
--- a/src/other/glew/auto/extensions/GL_ARB_window_pos
+++ /dev/null
@@ -1,19 +0,0 @@
-GL_ARB_window_pos
-http://www.opengl.org/registry/specs/ARB/window_pos.txt
-GL_ARB_window_pos
-	void glWindowPos2dARB (GLdouble x, GLdouble y)
-	void glWindowPos2dvARB (const GLdouble* p)
-	void glWindowPos2fARB (GLfloat x, GLfloat y)
-	void glWindowPos2fvARB (const GLfloat* p)
-	void glWindowPos2iARB (GLint x, GLint y)
-	void glWindowPos2ivARB (const GLint* p)
-	void glWindowPos2sARB (GLshort x, GLshort y)
-	void glWindowPos2svARB (const GLshort* p)
-	void glWindowPos3dARB (GLdouble x, GLdouble y, GLdouble z)
-	void glWindowPos3dvARB (const GLdouble* p)
-	void glWindowPos3fARB (GLfloat x, GLfloat y, GLfloat z)
-	void glWindowPos3fvARB (const GLfloat* p)
-	void glWindowPos3iARB (GLint x, GLint y, GLint z)
-	void glWindowPos3ivARB (const GLint* p)
-	void glWindowPos3sARB (GLshort x, GLshort y, GLshort z)
-	void glWindowPos3svARB (const GLshort* p)
diff --git a/src/other/glew/auto/extensions/GL_ATIX_point_sprites b/src/other/glew/auto/extensions/GL_ATIX_point_sprites
deleted file mode 100644
index 0f4f574..0000000
--- a/src/other/glew/auto/extensions/GL_ATIX_point_sprites
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_ATIX_point_sprites
-http://www.ati.com/developer/atiopengl.pdf
-GL_ATIX_point_sprites
-	GL_TEXTURE_POINT_MODE_ATIX 0x60B0
-	GL_TEXTURE_POINT_ONE_COORD_ATIX 0x60B1
-	GL_TEXTURE_POINT_SPRITE_ATIX 0x60B2
-	GL_POINT_SPRITE_CULL_MODE_ATIX 0x60B3
-	GL_POINT_SPRITE_CULL_CENTER_ATIX 0x60B4
-	GL_POINT_SPRITE_CULL_CLIP_ATIX 0x60B5
diff --git a/src/other/glew/auto/extensions/GL_ATIX_texture_env_combine3 b/src/other/glew/auto/extensions/GL_ATIX_texture_env_combine3
deleted file mode 100644
index 537426b..0000000
--- a/src/other/glew/auto/extensions/GL_ATIX_texture_env_combine3
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ATIX_texture_env_combine3
-http://www.ati.com/developer/atiopengl.pdf
-GL_ATIX_texture_env_combine3
-	GL_MODULATE_ADD_ATIX 0x8744
-	GL_MODULATE_SIGNED_ADD_ATIX 0x8745
-	GL_MODULATE_SUBTRACT_ATIX 0x8746
diff --git a/src/other/glew/auto/extensions/GL_ATIX_texture_env_route b/src/other/glew/auto/extensions/GL_ATIX_texture_env_route
deleted file mode 100644
index 939ae09..0000000
--- a/src/other/glew/auto/extensions/GL_ATIX_texture_env_route
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ATIX_texture_env_route
-http://www.ati.com/developer/sdk/RadeonSDK/Html/Info/ATIX_texture_env_route.txt
-GL_ATIX_texture_env_route
-	GL_SECONDARY_COLOR_ATIX 0x8747
-	GL_TEXTURE_OUTPUT_RGB_ATIX 0x8748
-	GL_TEXTURE_OUTPUT_ALPHA_ATIX 0x8749
diff --git a/src/other/glew/auto/extensions/GL_ATIX_vertex_shader_output_point_size b/src/other/glew/auto/extensions/GL_ATIX_vertex_shader_output_point_size
deleted file mode 100644
index 277a313..0000000
--- a/src/other/glew/auto/extensions/GL_ATIX_vertex_shader_output_point_size
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ATIX_vertex_shader_output_point_size
-http://www.ati.com/developer/atiopengl.pdf
-GL_ATIX_vertex_shader_output_point_size
-	GL_OUTPUT_POINT_SIZE_ATIX 0x610E
diff --git a/src/other/glew/auto/extensions/GL_ATI_draw_buffers b/src/other/glew/auto/extensions/GL_ATI_draw_buffers
deleted file mode 100644
index 3496637..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_draw_buffers
+++ /dev/null
@@ -1,21 +0,0 @@
-GL_ATI_draw_buffers
-http://www.opengl.org/registry/specs/ATI/draw_buffers.txt
-GL_ATI_draw_buffers
-	GL_MAX_DRAW_BUFFERS_ATI 0x8824
-	GL_DRAW_BUFFER0_ATI 0x8825
-	GL_DRAW_BUFFER1_ATI 0x8826
-	GL_DRAW_BUFFER2_ATI 0x8827
-	GL_DRAW_BUFFER3_ATI 0x8828
-	GL_DRAW_BUFFER4_ATI 0x8829
-	GL_DRAW_BUFFER5_ATI 0x882A
-	GL_DRAW_BUFFER6_ATI 0x882B
-	GL_DRAW_BUFFER7_ATI 0x882C
-	GL_DRAW_BUFFER8_ATI 0x882D
-	GL_DRAW_BUFFER9_ATI 0x882E
-	GL_DRAW_BUFFER10_ATI 0x882F
-	GL_DRAW_BUFFER11_ATI 0x8830
-	GL_DRAW_BUFFER12_ATI 0x8831
-	GL_DRAW_BUFFER13_ATI 0x8832
-	GL_DRAW_BUFFER14_ATI 0x8833
-	GL_DRAW_BUFFER15_ATI 0x8834
-	void glDrawBuffersATI (GLsizei n, const GLenum* bufs)
diff --git a/src/other/glew/auto/extensions/GL_ATI_element_array b/src/other/glew/auto/extensions/GL_ATI_element_array
deleted file mode 100644
index 8ad72ce..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_element_array
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_ATI_element_array
-http://www.opengl.org/registry/specs/ATI/element_array.txt
-GL_ATI_element_array
-	GL_ELEMENT_ARRAY_ATI 0x8768
-	GL_ELEMENT_ARRAY_TYPE_ATI 0x8769
-	GL_ELEMENT_ARRAY_POINTER_ATI 0x876A
-	void glDrawElementArrayATI (GLenum mode, GLsizei count)
-	void glDrawRangeElementArrayATI (GLenum mode, GLuint start, GLuint end, GLsizei count)
-	void glElementPointerATI (GLenum type, const void* pointer)
diff --git a/src/other/glew/auto/extensions/GL_ATI_envmap_bumpmap b/src/other/glew/auto/extensions/GL_ATI_envmap_bumpmap
deleted file mode 100644
index fbd9925..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_envmap_bumpmap
+++ /dev/null
@@ -1,15 +0,0 @@
-GL_ATI_envmap_bumpmap
-http://oss.sgi.com/projects/ogl-sample/registry/ATI/envmap_bumpmap.txt
-GL_ATI_envmap_bumpmap
-	GL_BUMP_ROT_MATRIX_ATI 0x8775
-	GL_BUMP_ROT_MATRIX_SIZE_ATI 0x8776
-	GL_BUMP_NUM_TEX_UNITS_ATI 0x8777
-	GL_BUMP_TEX_UNITS_ATI 0x8778
-	GL_DUDV_ATI 0x8779
-	GL_DU8DV8_ATI 0x877A
-	GL_BUMP_ENVMAP_ATI 0x877B
-	GL_BUMP_TARGET_ATI 0x877C
-	void glTexBumpParameterivATI (GLenum pname, GLint *param)
-	void glTexBumpParameterfvATI (GLenum pname, GLfloat *param)
-	void glGetTexBumpParameterivATI (GLenum pname, GLint *param)
-	void glGetTexBumpParameterfvATI (GLenum pname, GLfloat *param)
diff --git a/src/other/glew/auto/extensions/GL_ATI_fragment_shader b/src/other/glew/auto/extensions/GL_ATI_fragment_shader
deleted file mode 100644
index 2154d27..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_fragment_shader
+++ /dev/null
@@ -1,71 +0,0 @@
-GL_ATI_fragment_shader
-http://www.opengl.org/registry/specs/ATI/fragment_shader.txt
-GL_ATI_fragment_shader
-	GL_RED_BIT_ATI 0x00000001
-	GL_2X_BIT_ATI 0x00000001
-	GL_4X_BIT_ATI 0x00000002
-	GL_GREEN_BIT_ATI 0x00000002
-	GL_COMP_BIT_ATI 0x00000002
-	GL_BLUE_BIT_ATI 0x00000004
-	GL_8X_BIT_ATI 0x00000004
-	GL_NEGATE_BIT_ATI 0x00000004
-	GL_BIAS_BIT_ATI 0x00000008
-	GL_HALF_BIT_ATI 0x00000008
-	GL_QUARTER_BIT_ATI 0x00000010
-	GL_EIGHTH_BIT_ATI 0x00000020
-	GL_SATURATE_BIT_ATI 0x00000040
-	GL_FRAGMENT_SHADER_ATI 0x8920
-	GL_REG_0_ATI 0x8921
-	GL_REG_1_ATI 0x8922
-	GL_REG_2_ATI 0x8923
-	GL_REG_3_ATI 0x8924
-	GL_REG_4_ATI 0x8925
-	GL_REG_5_ATI 0x8926
-	GL_CON_0_ATI 0x8941
-	GL_CON_1_ATI 0x8942
-	GL_CON_2_ATI 0x8943
-	GL_CON_3_ATI 0x8944
-	GL_CON_4_ATI 0x8945
-	GL_CON_5_ATI 0x8946
-	GL_CON_6_ATI 0x8947
-	GL_CON_7_ATI 0x8948
-	GL_MOV_ATI 0x8961
-	GL_ADD_ATI 0x8963
-	GL_MUL_ATI 0x8964
-	GL_SUB_ATI 0x8965
-	GL_DOT3_ATI 0x8966
-	GL_DOT4_ATI 0x8967
-	GL_MAD_ATI 0x8968
-	GL_LERP_ATI 0x8969
-	GL_CND_ATI 0x896A
-	GL_CND0_ATI 0x896B
-	GL_DOT2_ADD_ATI 0x896C
-	GL_SECONDARY_INTERPOLATOR_ATI 0x896D
-	GL_SWIZZLE_STR_ATI 0x8976
-	GL_SWIZZLE_STQ_ATI 0x8977
-	GL_SWIZZLE_STR_DR_ATI 0x8978
-	GL_SWIZZLE_STQ_DQ_ATI 0x8979
-	void glAlphaFragmentOp1ATI (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)
-	void glAlphaFragmentOp2ATI (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)
-	void glAlphaFragmentOp3ATI (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)
-	void glBeginFragmentShaderATI (void)
-	void glBindFragmentShaderATI (GLuint id)
-	void glColorFragmentOp1ATI (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)
-	void glColorFragmentOp2ATI (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)
-	void glColorFragmentOp3ATI (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod)
-	void glDeleteFragmentShaderATI (GLuint id)
-	void glEndFragmentShaderATI (void)
-	GLuint glGenFragmentShadersATI (GLuint range)
-	void glPassTexCoordATI (GLuint dst, GLuint coord, GLenum swizzle)
-	void glSampleMapATI (GLuint dst, GLuint interp, GLenum swizzle)
-	void glSetFragmentShaderConstantATI (GLuint dst, const GLfloat* value)
-	GL_NUM_FRAGMENT_REGISTERS_ATI 0x896E
-	GL_NUM_FRAGMENT_CONSTANTS_ATI 0x896F
-	GL_NUM_PASSES_ATI 0x8970
-	GL_NUM_INSTRUCTIONS_PER_PASS_ATI 0x8971
-	GL_NUM_INSTRUCTIONS_TOTAL_ATI 0x8972
-	GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI 0x8973
-	GL_NUM_LOOPBACK_COMPONENTS_ATI 0x8974
-	GL_COLOR_ALPHA_PAIRING_ATI 0x8975
-	GL_SWIZZLE_STRQ_ATI 0x897A
-	GL_SWIZZLE_STRQ_DQ_ATI 0x897B
diff --git a/src/other/glew/auto/extensions/GL_ATI_map_object_buffer b/src/other/glew/auto/extensions/GL_ATI_map_object_buffer
deleted file mode 100644
index f360fa2..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_map_object_buffer
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_ATI_map_object_buffer
-http://www.ati.com/developer/sdk/RADEONSDK/Html/Info/ATI_map_object_buffer.txt
-GL_ATI_map_object_buffer
-	void* glMapObjectBufferATI (GLuint buffer)
-	void glUnmapObjectBufferATI (GLuint buffer)
diff --git a/src/other/glew/auto/extensions/GL_ATI_meminfo b/src/other/glew/auto/extensions/GL_ATI_meminfo
deleted file mode 100644
index 5a5719b..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_meminfo
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ATI_meminfo
-http://www.opengl.org/registry/specs/ATI/meminfo.txt
-GL_ATI_meminfo
-	GL_VBO_FREE_MEMORY_ATI 0x87FB
-	GL_TEXTURE_FREE_MEMORY_ATI 0x87FC
-	GL_RENDERBUFFER_FREE_MEMORY_ATI 0x87FD
diff --git a/src/other/glew/auto/extensions/GL_ATI_pn_triangles b/src/other/glew/auto/extensions/GL_ATI_pn_triangles
deleted file mode 100644
index 7b353b5..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_pn_triangles
+++ /dev/null
@@ -1,14 +0,0 @@
-GL_ATI_pn_triangles
-http://www.ati.com/developer/sdk/RADEONSDK/Html/Info/ati_pn_triangles.txt
-GL_ATI_pn_triangles
-	GL_PN_TRIANGLES_ATI 0x87F0
-	GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F1
-	GL_PN_TRIANGLES_POINT_MODE_ATI 0x87F2
-	GL_PN_TRIANGLES_NORMAL_MODE_ATI 0x87F3
-	GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F4
-	GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI 0x87F5
-	GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI 0x87F6
-	GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI 0x87F7
-	GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI 0x87F8
-	void glPNTrianglesiATI (GLenum pname, GLint param)
-	void glPNTrianglesfATI (GLenum pname, GLfloat param)
diff --git a/src/other/glew/auto/extensions/GL_ATI_separate_stencil b/src/other/glew/auto/extensions/GL_ATI_separate_stencil
deleted file mode 100644
index c4d82ab..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_separate_stencil
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_ATI_separate_stencil
-http://www.ati.com/developer/sdk/RadeonSDK/Html/Info/ATI_separate_stencil.txt
-GL_ATI_separate_stencil
-	GL_STENCIL_BACK_FUNC_ATI 0x8800
-	GL_STENCIL_BACK_FAIL_ATI 0x8801
-	GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI 0x8802
-	GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI 0x8803
-	void glStencilOpSeparateATI (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
-	void glStencilFuncSeparateATI (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask)
diff --git a/src/other/glew/auto/extensions/GL_ATI_shader_texture_lod b/src/other/glew/auto/extensions/GL_ATI_shader_texture_lod
deleted file mode 100644
index 5fbc624..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_shader_texture_lod
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_ATI_shader_texture_lod
-
-GL_ATI_shader_texture_lod
diff --git a/src/other/glew/auto/extensions/GL_ATI_text_fragment_shader b/src/other/glew/auto/extensions/GL_ATI_text_fragment_shader
deleted file mode 100644
index 926c300..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_text_fragment_shader
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ATI_text_fragment_shader
-http://www.opengl.org/registry/specs/ATI/text_fragment_shader.txt
-GL_ATI_text_fragment_shader
-	GL_TEXT_FRAGMENT_SHADER_ATI 0x8200
diff --git a/src/other/glew/auto/extensions/GL_ATI_texture_compression_3dc b/src/other/glew/auto/extensions/GL_ATI_texture_compression_3dc
deleted file mode 100644
index 2548b30..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_texture_compression_3dc
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_ATI_texture_compression_3dc
-
-GL_ATI_texture_compression_3dc
-	GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI 0x8837
diff --git a/src/other/glew/auto/extensions/GL_ATI_texture_env_combine3 b/src/other/glew/auto/extensions/GL_ATI_texture_env_combine3
deleted file mode 100644
index e65c170..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_texture_env_combine3
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ATI_texture_env_combine3
-http://www.opengl.org/registry/specs/ATI/texture_env_combine3.txt
-GL_ATI_texture_env_combine3
-	GL_MODULATE_ADD_ATI 0x8744
-	GL_MODULATE_SIGNED_ADD_ATI 0x8745
-	GL_MODULATE_SUBTRACT_ATI 0x8746
diff --git a/src/other/glew/auto/extensions/GL_ATI_texture_float b/src/other/glew/auto/extensions/GL_ATI_texture_float
deleted file mode 100644
index d8c9b89..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_texture_float
+++ /dev/null
@@ -1,15 +0,0 @@
-GL_ATI_texture_float
-http://www.opengl.org/registry/specs/ATI/texture_float.txt
-GL_ATI_texture_float
-	GL_RGBA_FLOAT32_ATI 0x8814
-	GL_RGB_FLOAT32_ATI 0x8815
-	GL_ALPHA_FLOAT32_ATI 0x8816
-	GL_INTENSITY_FLOAT32_ATI 0x8817
-	GL_LUMINANCE_FLOAT32_ATI 0x8818
-	GL_LUMINANCE_ALPHA_FLOAT32_ATI 0x8819
-	GL_RGBA_FLOAT16_ATI 0x881A
-	GL_RGB_FLOAT16_ATI 0x881B
-	GL_ALPHA_FLOAT16_ATI 0x881C
-	GL_INTENSITY_FLOAT16_ATI 0x881D
-	GL_LUMINANCE_FLOAT16_ATI 0x881E
-	GL_LUMINANCE_ALPHA_FLOAT16_ATI 0x881F
diff --git a/src/other/glew/auto/extensions/GL_ATI_texture_mirror_once b/src/other/glew/auto/extensions/GL_ATI_texture_mirror_once
deleted file mode 100644
index a1dabaf..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_texture_mirror_once
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_ATI_texture_mirror_once
-http://www.opengl.org/registry/specs/ATI/texture_mirror_once.txt
-GL_ATI_texture_mirror_once
-	GL_MIRROR_CLAMP_ATI 0x8742
-	GL_MIRROR_CLAMP_TO_EDGE_ATI 0x8743
diff --git a/src/other/glew/auto/extensions/GL_ATI_vertex_array_object b/src/other/glew/auto/extensions/GL_ATI_vertex_array_object
deleted file mode 100644
index 5e1a06a..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_vertex_array_object
+++ /dev/null
@@ -1,23 +0,0 @@
-GL_ATI_vertex_array_object
-http://www.opengl.org/registry/specs/ATI/vertex_array_object.txt
-GL_ATI_vertex_array_object
-	GL_STATIC_ATI 0x8760
-	GL_DYNAMIC_ATI 0x8761
-	GL_PRESERVE_ATI 0x8762
-	GL_DISCARD_ATI 0x8763
-	GL_OBJECT_BUFFER_SIZE_ATI 0x8764
-	GL_OBJECT_BUFFER_USAGE_ATI 0x8765
-	GL_ARRAY_OBJECT_BUFFER_ATI 0x8766
-	GL_ARRAY_OBJECT_OFFSET_ATI 0x8767
-	void glArrayObjectATI (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset)
-	void glFreeObjectBufferATI (GLuint buffer)
-	void glGetArrayObjectfvATI (GLenum array, GLenum pname, GLfloat* params)
-	void glGetArrayObjectivATI (GLenum array, GLenum pname, GLint* params)
-	void glGetObjectBufferfvATI (GLuint buffer, GLenum pname, GLfloat* params)
-	void glGetObjectBufferivATI (GLuint buffer, GLenum pname, GLint* params)
-	void glGetVariantArrayObjectfvATI (GLuint id, GLenum pname, GLfloat* params)
-	void glGetVariantArrayObjectivATI (GLuint id, GLenum pname, GLint* params)
-	GLboolean glIsObjectBufferATI (GLuint buffer)
-	GLuint glNewObjectBufferATI (GLsizei size, const void* pointer, GLenum usage)
-	void glUpdateObjectBufferATI (GLuint buffer, GLuint offset, GLsizei size, const void* pointer, GLenum preserve)
-	void glVariantArrayObjectATI (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset)
diff --git a/src/other/glew/auto/extensions/GL_ATI_vertex_attrib_array_object b/src/other/glew/auto/extensions/GL_ATI_vertex_attrib_array_object
deleted file mode 100644
index c8ce994..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_vertex_attrib_array_object
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_ATI_vertex_attrib_array_object
-http://www.opengl.org/registry/specs/ATI/vertex_attrib_array_object.txt
-GL_ATI_vertex_attrib_array_object
-	void glGetVertexAttribArrayObjectfvATI (GLuint index, GLenum pname, GLfloat* params)
-	void glGetVertexAttribArrayObjectivATI (GLuint index, GLenum pname, GLint* params)
-	void glVertexAttribArrayObjectATI (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset)
diff --git a/src/other/glew/auto/extensions/GL_ATI_vertex_streams b/src/other/glew/auto/extensions/GL_ATI_vertex_streams
deleted file mode 100644
index 56005f9..0000000
--- a/src/other/glew/auto/extensions/GL_ATI_vertex_streams
+++ /dev/null
@@ -1,50 +0,0 @@
-GL_ATI_vertex_streams
-http://www.ati.com/developer/sdk/RADEONSDK/Html/Info/ATI_vertex_streams.txt
-GL_ATI_vertex_streams
-	GL_MAX_VERTEX_STREAMS_ATI 0x876B
-	GL_VERTEX_SOURCE_ATI 0x876C
-	GL_VERTEX_STREAM0_ATI 0x876D
-	GL_VERTEX_STREAM1_ATI 0x876E
-	GL_VERTEX_STREAM2_ATI 0x876F
-	GL_VERTEX_STREAM3_ATI 0x8770
-	GL_VERTEX_STREAM4_ATI 0x8771
-	GL_VERTEX_STREAM5_ATI 0x8772
-	GL_VERTEX_STREAM6_ATI 0x8773
-	GL_VERTEX_STREAM7_ATI 0x8774
-	void glClientActiveVertexStreamATI (GLenum stream)
-	void glVertexBlendEnviATI (GLenum pname, GLint param)
-	void glVertexBlendEnvfATI (GLenum pname, GLfloat param)
-	void glVertexStream2sATI (GLenum stream, GLshort x, GLshort y)
-	void glVertexStream2svATI (GLenum stream, const GLshort *v)
-	void glVertexStream2iATI (GLenum stream, GLint x, GLint y)
-	void glVertexStream2ivATI (GLenum stream, const GLint *v)
-	void glVertexStream2fATI (GLenum stream, GLfloat x, GLfloat y)
-	void glVertexStream2fvATI (GLenum stream, const GLfloat *v)
-	void glVertexStream2dATI (GLenum stream, GLdouble x, GLdouble y)
-	void glVertexStream2dvATI (GLenum stream, const GLdouble *v)
-	void glVertexStream3sATI (GLenum stream, GLshort x, GLshort y, GLshort z)
-	void glVertexStream3svATI (GLenum stream, const GLshort *v)
-	void glVertexStream3iATI (GLenum stream, GLint x, GLint y, GLint z)
-	void glVertexStream3ivATI (GLenum stream, const GLint *v)
-	void glVertexStream3fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z)
-	void glVertexStream3fvATI (GLenum stream, const GLfloat *v)
-	void glVertexStream3dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z)
-	void glVertexStream3dvATI (GLenum stream, const GLdouble *v)
-	void glVertexStream4sATI (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w)
-	void glVertexStream4svATI (GLenum stream, const GLshort *v)
-	void glVertexStream4iATI (GLenum stream, GLint x, GLint y, GLint z, GLint w)
-	void glVertexStream4ivATI (GLenum stream, const GLint *v)
-	void glVertexStream4fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glVertexStream4fvATI (GLenum stream, const GLfloat *v)
-	void glVertexStream4dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-	void glVertexStream4dvATI (GLenum stream, const GLdouble *v)
-	void glNormalStream3bATI (GLenum stream, GLbyte x, GLbyte y, GLbyte z)
-	void glNormalStream3bvATI (GLenum stream, const GLbyte *v)
-	void glNormalStream3sATI (GLenum stream, GLshort x, GLshort y, GLshort z)
-	void glNormalStream3svATI (GLenum stream, const GLshort *v)
-	void glNormalStream3iATI (GLenum stream, GLint x, GLint y, GLint z)
-	void glNormalStream3ivATI (GLenum stream, const GLint *v)
-	void glNormalStream3fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z)
-	void glNormalStream3fvATI (GLenum stream, const GLfloat *v)
-	void glNormalStream3dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z)
-	void glNormalStream3dvATI (GLenum stream, const GLdouble *v)
diff --git a/src/other/glew/auto/extensions/GL_EXT_422_pixels b/src/other/glew/auto/extensions/GL_EXT_422_pixels
deleted file mode 100644
index 70d3d57..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_422_pixels
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_422_pixels
-http://www.opengl.org/registry/specs/EXT/422_pixels.txt
-GL_EXT_422_pixels
-	GL_422_EXT 0x80CC
-	GL_422_REV_EXT 0x80CD
-	GL_422_AVERAGE_EXT 0x80CE
-	GL_422_REV_AVERAGE_EXT 0x80CF
diff --git a/src/other/glew/auto/extensions/GL_EXT_Cg_shader b/src/other/glew/auto/extensions/GL_EXT_Cg_shader
deleted file mode 100644
index 34d3152..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_Cg_shader
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_Cg_shader
-http://download.nvidia.com/developer/GLSL/GLSL%20Release%20Notes%20for%20Release%2060.pdf
-GL_EXT_Cg_shader
-	GL_CG_VERTEX_SHADER_EXT 0x890E
-	GL_CG_FRAGMENT_SHADER_EXT 0x890F
diff --git a/src/other/glew/auto/extensions/GL_EXT_abgr b/src/other/glew/auto/extensions/GL_EXT_abgr
deleted file mode 100644
index 9c86889..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_abgr
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_EXT_abgr
-http://www.opengl.org/registry/specs/EXT/abgr.txt
-GL_EXT_abgr
-	GL_ABGR_EXT 0x8000
diff --git a/src/other/glew/auto/extensions/GL_EXT_bgra b/src/other/glew/auto/extensions/GL_EXT_bgra
deleted file mode 100644
index afe1c01..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_bgra
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_bgra
-http://www.opengl.org/registry/specs/EXT/bgra.txt
-GL_EXT_bgra
-	GL_BGR_EXT 0x80E0
-	GL_BGRA_EXT 0x80E1
diff --git a/src/other/glew/auto/extensions/GL_EXT_bindable_uniform b/src/other/glew/auto/extensions/GL_EXT_bindable_uniform
deleted file mode 100644
index 809123b..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_bindable_uniform
+++ /dev/null
@@ -1,12 +0,0 @@
-GL_EXT_bindable_uniform
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_bindable_uniform.txt
-GL_EXT_bindable_uniform
-	GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT 0x8DE2
-	GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT 0x8DE3
-	GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT 0x8DE4
-	GL_MAX_BINDABLE_UNIFORM_SIZE_EXT 0x8DED
-	GL_UNIFORM_BUFFER_BINDING_EXT 0x8DEF
-	GL_UNIFORM_BUFFER_EXT 0x8DEE
-	void glUniformBufferEXT (GLuint program, GLint location, GLuint buffer)
-	GLint glGetUniformBufferSizeEXT (GLuint program, GLint location)
-	GLintptr glGetUniformOffsetEXT (GLuint program, GLint location)
diff --git a/src/other/glew/auto/extensions/GL_EXT_blend_color b/src/other/glew/auto/extensions/GL_EXT_blend_color
deleted file mode 100644
index 706181e..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_blend_color
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_EXT_blend_color
-http://www.opengl.org/registry/specs/EXT/blend_color.txt
-GL_EXT_blend_color
-	GL_CONSTANT_COLOR_EXT 0x8001
-	GL_ONE_MINUS_CONSTANT_COLOR_EXT 0x8002
-	GL_CONSTANT_ALPHA_EXT 0x8003
-	GL_ONE_MINUS_CONSTANT_ALPHA_EXT 0x8004
-	GL_BLEND_COLOR_EXT 0x8005
-	void glBlendColorEXT (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
diff --git a/src/other/glew/auto/extensions/GL_EXT_blend_equation_separate b/src/other/glew/auto/extensions/GL_EXT_blend_equation_separate
deleted file mode 100644
index 7ac5975..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_blend_equation_separate
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_blend_equation_separate
-http://www.opengl.org/registry/specs/EXT/blend_equation_separate.txt
-GL_EXT_blend_equation_separate
-	GL_BLEND_EQUATION_RGB_EXT 0x8009
-	GL_BLEND_EQUATION_ALPHA_EXT 0x883D
-	void glBlendEquationSeparateEXT (GLenum modeRGB, GLenum modeAlpha)
diff --git a/src/other/glew/auto/extensions/GL_EXT_blend_func_separate b/src/other/glew/auto/extensions/GL_EXT_blend_func_separate
deleted file mode 100644
index 9517afc..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_blend_func_separate
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_EXT_blend_func_separate
-http://www.opengl.org/registry/specs/EXT/blend_func_separate.txt
-GL_EXT_blend_func_separate
-	GL_BLEND_DST_RGB_EXT 0x80C8
-	GL_BLEND_SRC_RGB_EXT 0x80C9
-	GL_BLEND_DST_ALPHA_EXT 0x80CA
-	GL_BLEND_SRC_ALPHA_EXT 0x80CB
-	void glBlendFuncSeparateEXT (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
diff --git a/src/other/glew/auto/extensions/GL_EXT_blend_logic_op b/src/other/glew/auto/extensions/GL_EXT_blend_logic_op
deleted file mode 100644
index 7e3027d..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_blend_logic_op
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_EXT_blend_logic_op
-http://www.opengl.org/registry/specs/EXT/blend_logic_op.txt
-GL_EXT_blend_logic_op
diff --git a/src/other/glew/auto/extensions/GL_EXT_blend_minmax b/src/other/glew/auto/extensions/GL_EXT_blend_minmax
deleted file mode 100644
index fee5af6..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_blend_minmax
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_EXT_blend_minmax
-http://www.opengl.org/registry/specs/EXT/blend_minmax.txt
-GL_EXT_blend_minmax
-	GL_FUNC_ADD_EXT 0x8006
-	GL_MIN_EXT 0x8007
-	GL_MAX_EXT 0x8008
-	GL_BLEND_EQUATION_EXT 0x8009
-	void glBlendEquationEXT (GLenum mode)
diff --git a/src/other/glew/auto/extensions/GL_EXT_blend_subtract b/src/other/glew/auto/extensions/GL_EXT_blend_subtract
deleted file mode 100644
index 8b9348b..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_blend_subtract
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_blend_subtract
-http://www.opengl.org/registry/specs/EXT/blend_subtract.txt
-GL_EXT_blend_subtract
-	GL_FUNC_SUBTRACT_EXT 0x800A
-	GL_FUNC_REVERSE_SUBTRACT_EXT 0x800B
diff --git a/src/other/glew/auto/extensions/GL_EXT_clip_volume_hint b/src/other/glew/auto/extensions/GL_EXT_clip_volume_hint
deleted file mode 100644
index 8959276..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_clip_volume_hint
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_EXT_clip_volume_hint
-http://www.opengl.org/registry/specs/EXT/clip_volume_hint.txt
-GL_EXT_clip_volume_hint
-	GL_CLIP_VOLUME_CLIPPING_HINT_EXT 0x80F0
diff --git a/src/other/glew/auto/extensions/GL_EXT_cmyka b/src/other/glew/auto/extensions/GL_EXT_cmyka
deleted file mode 100644
index 824654f..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_cmyka
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_cmyka
-http://www.opengl.org/registry/specs/EXT/cmyka.txt
-GL_EXT_cmyka
-	GL_CMYK_EXT 0x800C
-	GL_CMYKA_EXT 0x800D
-	GL_PACK_CMYK_HINT_EXT 0x800E
-	GL_UNPACK_CMYK_HINT_EXT 0x800F
diff --git a/src/other/glew/auto/extensions/GL_EXT_color_subtable b/src/other/glew/auto/extensions/GL_EXT_color_subtable
deleted file mode 100644
index 398c313..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_color_subtable
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_color_subtable
-http://www.opengl.org/registry/specs/EXT/color_subtable.txt
-GL_EXT_color_subtable
-	void glColorSubTableEXT (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const void* data)
-	void glCopyColorSubTableEXT (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
diff --git a/src/other/glew/auto/extensions/GL_EXT_compiled_vertex_array b/src/other/glew/auto/extensions/GL_EXT_compiled_vertex_array
deleted file mode 100644
index 0f8c5dc..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_compiled_vertex_array
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_compiled_vertex_array
-http://www.opengl.org/registry/specs/EXT/compiled_vertex_array.txt
-GL_EXT_compiled_vertex_array
-	GL_ARRAY_ELEMENT_LOCK_FIRST_EXT 0x81A8
-	GL_ARRAY_ELEMENT_LOCK_COUNT_EXT 0x81A9
-	void glLockArraysEXT (GLint first, GLsizei count)
-	void glUnlockArraysEXT (void)
diff --git a/src/other/glew/auto/extensions/GL_EXT_convolution b/src/other/glew/auto/extensions/GL_EXT_convolution
deleted file mode 100644
index 7fda5a6..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_convolution
+++ /dev/null
@@ -1,36 +0,0 @@
-GL_EXT_convolution
-http://www.opengl.org/registry/specs/EXT/convolution.txt
-GL_EXT_convolution
-	GL_CONVOLUTION_1D_EXT 0x8010
-	GL_CONVOLUTION_2D_EXT 0x8011
-	GL_SEPARABLE_2D_EXT 0x8012
-	GL_CONVOLUTION_BORDER_MODE_EXT 0x8013
-	GL_CONVOLUTION_FILTER_SCALE_EXT 0x8014
-	GL_CONVOLUTION_FILTER_BIAS_EXT 0x8015
-	GL_REDUCE_EXT 0x8016
-	GL_CONVOLUTION_FORMAT_EXT 0x8017
-	GL_CONVOLUTION_WIDTH_EXT 0x8018
-	GL_CONVOLUTION_HEIGHT_EXT 0x8019
-	GL_MAX_CONVOLUTION_WIDTH_EXT 0x801A
-	GL_MAX_CONVOLUTION_HEIGHT_EXT 0x801B
-	GL_POST_CONVOLUTION_RED_SCALE_EXT 0x801C
-	GL_POST_CONVOLUTION_GREEN_SCALE_EXT 0x801D
-	GL_POST_CONVOLUTION_BLUE_SCALE_EXT 0x801E
-	GL_POST_CONVOLUTION_ALPHA_SCALE_EXT 0x801F
-	GL_POST_CONVOLUTION_RED_BIAS_EXT 0x8020
-	GL_POST_CONVOLUTION_GREEN_BIAS_EXT 0x8021
-	GL_POST_CONVOLUTION_BLUE_BIAS_EXT 0x8022
-	GL_POST_CONVOLUTION_ALPHA_BIAS_EXT 0x8023
-	void glConvolutionFilter1DEXT (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* image)
-	void glConvolutionFilter2DEXT (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* image)
-	void glConvolutionParameterfEXT (GLenum target, GLenum pname, GLfloat param)
-	void glConvolutionParameterfvEXT (GLenum target, GLenum pname, const GLfloat* params)
-	void glConvolutionParameteriEXT (GLenum target, GLenum pname, GLint param)
-	void glConvolutionParameterivEXT (GLenum target, GLenum pname, const GLint* params)
-	void glCopyConvolutionFilter1DEXT (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
-	void glCopyConvolutionFilter2DEXT (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
-	void glGetConvolutionFilterEXT (GLenum target, GLenum format, GLenum type, void* image)
-	void glGetConvolutionParameterfvEXT (GLenum target, GLenum pname, GLfloat* params)
-	void glGetConvolutionParameterivEXT (GLenum target, GLenum pname, GLint* params)
-	void glGetSeparableFilterEXT (GLenum target, GLenum format, GLenum type, void* row, void* column, void* span)
-	void glSeparableFilter2DEXT (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* row, const void* column)
diff --git a/src/other/glew/auto/extensions/GL_EXT_coordinate_frame b/src/other/glew/auto/extensions/GL_EXT_coordinate_frame
deleted file mode 100644
index c85f235..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_coordinate_frame
+++ /dev/null
@@ -1,19 +0,0 @@
-GL_EXT_coordinate_frame
-http://www.opengl.org/registry/specs/EXT/coordinate_frame.txt
-GL_EXT_coordinate_frame
-	GL_TANGENT_ARRAY_EXT 0x8439
-	GL_BINORMAL_ARRAY_EXT 0x843A
-	GL_CURRENT_TANGENT_EXT 0x843B
-	GL_CURRENT_BINORMAL_EXT 0x843C
-	GL_TANGENT_ARRAY_TYPE_EXT 0x843E
-	GL_TANGENT_ARRAY_STRIDE_EXT 0x843F
-	GL_BINORMAL_ARRAY_TYPE_EXT 0x8440
-	GL_BINORMAL_ARRAY_STRIDE_EXT 0x8441
-	GL_TANGENT_ARRAY_POINTER_EXT 0x8442
-	GL_BINORMAL_ARRAY_POINTER_EXT 0x8443
-	GL_MAP1_TANGENT_EXT 0x8444
-	GL_MAP2_TANGENT_EXT 0x8445
-	GL_MAP1_BINORMAL_EXT 0x8446
-	GL_MAP2_BINORMAL_EXT 0x8447
-	void glBinormalPointerEXT (GLenum type, GLsizei stride, void* pointer)
-	void glTangentPointerEXT (GLenum type, GLsizei stride, void* pointer)
diff --git a/src/other/glew/auto/extensions/GL_EXT_copy_texture b/src/other/glew/auto/extensions/GL_EXT_copy_texture
deleted file mode 100644
index 4fff03e..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_copy_texture
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_EXT_copy_texture
-http://www.opengl.org/registry/specs/EXT/copy_texture.txt
-GL_EXT_copy_texture
-	void glCopyTexImage1DEXT (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
-	void glCopyTexImage2DEXT (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
-	void glCopyTexSubImage1DEXT (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
-	void glCopyTexSubImage2DEXT (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
-	void glCopyTexSubImage3DEXT (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
diff --git a/src/other/glew/auto/extensions/GL_EXT_cull_vertex b/src/other/glew/auto/extensions/GL_EXT_cull_vertex
deleted file mode 100644
index 0808ea2..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_cull_vertex
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_EXT_cull_vertex
-http://www.opengl.org/registry/specs/EXT/cull_vertex.txt
-GL_EXT_cull_vertex
-	GL_CULL_VERTEX_EXT 0x81AA
-	GL_CULL_VERTEX_EYE_POSITION_EXT 0x81AB
-	GL_CULL_VERTEX_OBJECT_POSITION_EXT 0x81AC
-	void glCullParameterdvEXT (GLenum pname, GLdouble* params)
-	void glCullParameterfvEXT (GLenum pname, GLfloat* params)
diff --git a/src/other/glew/auto/extensions/GL_EXT_depth_bounds_test b/src/other/glew/auto/extensions/GL_EXT_depth_bounds_test
deleted file mode 100644
index 62528b7..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_depth_bounds_test
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_depth_bounds_test
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_depth_bounds_test.txt
-GL_EXT_depth_bounds_test
-	GL_DEPTH_BOUNDS_TEST_EXT 0x8890
-	GL_DEPTH_BOUNDS_EXT 0x8891
-	void glDepthBoundsEXT (GLclampd zmin, GLclampd zmax)
diff --git a/src/other/glew/auto/extensions/GL_EXT_direct_state_access b/src/other/glew/auto/extensions/GL_EXT_direct_state_access
deleted file mode 100644
index 712683b..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_direct_state_access
+++ /dev/null
@@ -1,219 +0,0 @@
-GL_EXT_direct_state_access
-http://www.opengl.org/registry/specs/EXT/direct_state_access.txt
-GL_EXT_direct_state_access
-	GL_PROGRAM_MATRIX_EXT 0x8E2D
-	GL_TRANSPOSE_PROGRAM_MATRIX_EXT 0x8E2E
-	GL_PROGRAM_MATRIX_STACK_DEPTH_EXT 0x8E2F
-	void glBindMultiTextureEXT (GLenum texunit, GLenum target, GLuint texture)
-	GLenum glCheckNamedFramebufferStatusEXT (GLuint framebuffer, GLenum target)
-	void glClientAttribDefaultEXT (GLbitfield mask)
-	void glCompressedMultiTexImage1DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* data)
-	void glCompressedMultiTexImage2DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data)
-	void glCompressedMultiTexImage3DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data)
-	void glCompressedMultiTexSubImage1DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* data)
-	void glCompressedMultiTexSubImage2DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data)
-	void glCompressedMultiTexSubImage3DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data)
-	void glCompressedTextureImage1DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* data)
-	void glCompressedTextureImage2DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data)
-	void glCompressedTextureImage3DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data)
-	void glCompressedTextureSubImage1DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* data)
-	void glCompressedTextureSubImage2DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data)
-	void glCompressedTextureSubImage3DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data)
-	void glCopyMultiTexImage1DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
-	void glCopyMultiTexImage2DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
-	void glCopyMultiTexSubImage1DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
-	void glCopyMultiTexSubImage2DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
-	void glCopyMultiTexSubImage3DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
-	void glCopyTextureImage1DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
-	void glCopyTextureImage2DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
-	void glCopyTextureSubImage1DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
-	void glCopyTextureSubImage2DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
-	void glCopyTextureSubImage3DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
-	void glDisableClientStateIndexedEXT (GLenum array, GLuint index)
-	void glDisableClientStateiEXT (GLenum array, GLuint index)
-	void glDisableVertexArrayAttribEXT (GLuint vaobj, GLuint index)
-	void glDisableVertexArrayEXT (GLuint vaobj, GLenum array)
-	void glEnableClientStateIndexedEXT (GLenum array, GLuint index)
-	void glEnableClientStateiEXT (GLenum array, GLuint index)
-	void glEnableVertexArrayAttribEXT (GLuint vaobj, GLuint index)
-	void glEnableVertexArrayEXT (GLuint vaobj, GLenum array)
-	void glFlushMappedNamedBufferRangeEXT (GLuint buffer, GLintptr offset, GLsizeiptr length)
-	void glFramebufferDrawBufferEXT (GLuint framebuffer, GLenum mode)
-	void glFramebufferDrawBuffersEXT (GLuint framebuffer, GLsizei n, const GLenum* bufs)
-	void glFramebufferReadBufferEXT (GLuint framebuffer, GLenum mode)
-	void glGenerateMultiTexMipmapEXT (GLenum texunit, GLenum target)
-	void glGenerateTextureMipmapEXT (GLuint texture, GLenum target)
-	void glGetCompressedMultiTexImageEXT (GLenum texunit, GLenum target, GLint level, void* img)
-	void glGetCompressedTextureImageEXT (GLuint texture, GLenum target, GLint level, void* img)
-	void glGetDoubleIndexedvEXT (GLenum target, GLuint index, GLdouble* params)
-	void glGetDoublei_vEXT (GLenum pname, GLuint index, GLdouble* params)
-	void glGetFloatIndexedvEXT (GLenum target, GLuint index, GLfloat* params)
-	void glGetFloati_vEXT (GLenum pname, GLuint index, GLfloat* params)
-	void glGetFramebufferParameterivEXT (GLuint framebuffer, GLenum pname, GLint* param)
-	void glGetMultiTexEnvfvEXT (GLenum texunit, GLenum target, GLenum pname, GLfloat* params)
-	void glGetMultiTexEnvivEXT (GLenum texunit, GLenum target, GLenum pname, GLint* params)
-	void glGetMultiTexGendvEXT (GLenum texunit, GLenum coord, GLenum pname, GLdouble* params)
-	void glGetMultiTexGenfvEXT (GLenum texunit, GLenum coord, GLenum pname, GLfloat* params)
-	void glGetMultiTexGenivEXT (GLenum texunit, GLenum coord, GLenum pname, GLint* params)
-	void glGetMultiTexImageEXT (GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, void* pixels)
-	void glGetMultiTexLevelParameterfvEXT (GLenum texunit, GLenum target, GLint level, GLenum pname, GLfloat* params)
-	void glGetMultiTexLevelParameterivEXT (GLenum texunit, GLenum target, GLint level, GLenum pname, GLint* params)
-	void glGetMultiTexParameterIivEXT (GLenum texunit, GLenum target, GLenum pname, GLint* params)
-	void glGetMultiTexParameterIuivEXT (GLenum texunit, GLenum target, GLenum pname, GLuint* params)
-	void glGetMultiTexParameterfvEXT (GLenum texunit, GLenum target, GLenum pname, GLfloat* params)
-	void glGetMultiTexParameterivEXT (GLenum texunit, GLenum target, GLenum pname, GLint* params)
-	void glGetNamedBufferParameterivEXT (GLuint buffer, GLenum pname, GLint* params)
-	void glGetNamedBufferPointervEXT (GLuint buffer, GLenum pname, void** params)
-	void glGetNamedBufferSubDataEXT (GLuint buffer, GLintptr offset, GLsizeiptr size, void* data)
-	void glGetNamedFramebufferAttachmentParameterivEXT (GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params)
-	void glGetNamedProgramLocalParameterIivEXT (GLuint program, GLenum target, GLuint index, GLint* params)
-	void glGetNamedProgramLocalParameterIuivEXT (GLuint program, GLenum target, GLuint index, GLuint* params)
-	void glGetNamedProgramLocalParameterdvEXT (GLuint program, GLenum target, GLuint index, GLdouble* params)
-	void glGetNamedProgramLocalParameterfvEXT (GLuint program, GLenum target, GLuint index, GLfloat* params)
-	void glGetNamedProgramStringEXT (GLuint program, GLenum target, GLenum pname, void* string)
-	void glGetNamedProgramivEXT (GLuint program, GLenum target, GLenum pname, GLint* params)
-	void glGetNamedRenderbufferParameterivEXT (GLuint renderbuffer, GLenum pname, GLint* params)
-	void glGetPointerIndexedvEXT (GLenum target, GLuint index, GLvoid** params)
-	void glGetPointeri_vEXT (GLenum pname, GLuint index, GLvoid** params)
-	void glGetTextureImageEXT (GLuint texture, GLenum target, GLint level, GLenum format, GLenum type, void* pixels)
-	void glGetTextureLevelParameterfvEXT (GLuint texture, GLenum target, GLint level, GLenum pname, GLfloat* params)
-	void glGetTextureLevelParameterivEXT (GLuint texture, GLenum target, GLint level, GLenum pname, GLint* params)
-	void glGetTextureParameterIivEXT (GLuint texture, GLenum target, GLenum pname, GLint* params)
-	void glGetTextureParameterIuivEXT (GLuint texture, GLenum target, GLenum pname, GLuint* params)
-	void glGetTextureParameterfvEXT (GLuint texture, GLenum target, GLenum pname, GLfloat* params)
-	void glGetTextureParameterivEXT (GLuint texture, GLenum target, GLenum pname, GLint* params)
-	void glGetVertexArrayIntegeri_vEXT (GLuint vaobj, GLuint index, GLenum pname, GLint* param)
-	void glGetVertexArrayIntegervEXT (GLuint vaobj, GLenum pname, GLint* param)
-	void glGetVertexArrayPointeri_vEXT (GLuint vaobj, GLuint index, GLenum pname, GLvoid** param)
-	void glGetVertexArrayPointervEXT (GLuint vaobj, GLenum pname, GLvoid** param)
-	GLvoid * glMapNamedBufferEXT (GLuint buffer, GLenum access)
-	GLvoid * glMapNamedBufferRangeEXT (GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access)
-	void glMatrixFrustumEXT (GLenum matrixMode, GLdouble l, GLdouble r, GLdouble b, GLdouble t, GLdouble n, GLdouble f)
-	void glMatrixLoadIdentityEXT (GLenum matrixMode)
-	void glMatrixLoadTransposedEXT (GLenum matrixMode, const GLdouble* m)
-	void glMatrixLoadTransposefEXT (GLenum matrixMode, const GLfloat* m)
-	void glMatrixLoaddEXT (GLenum matrixMode, const GLdouble* m)
-	void glMatrixLoadfEXT (GLenum matrixMode, const GLfloat* m)
-	void glMatrixMultTransposedEXT (GLenum matrixMode, const GLdouble* m)
-	void glMatrixMultTransposefEXT (GLenum matrixMode, const GLfloat* m)
-	void glMatrixMultdEXT (GLenum matrixMode, const GLdouble* m)
-	void glMatrixMultfEXT (GLenum matrixMode, const GLfloat* m)
-	void glMatrixOrthoEXT (GLenum matrixMode, GLdouble l, GLdouble r, GLdouble b, GLdouble t, GLdouble n, GLdouble f)
-	void glMatrixPopEXT (GLenum matrixMode)
-	void glMatrixPushEXT (GLenum matrixMode)
-	void glMatrixRotatedEXT (GLenum matrixMode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
-	void glMatrixRotatefEXT (GLenum matrixMode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
-	void glMatrixScaledEXT (GLenum matrixMode, GLdouble x, GLdouble y, GLdouble z)
-	void glMatrixScalefEXT (GLenum matrixMode, GLfloat x, GLfloat y, GLfloat z)
-	void glMatrixTranslatedEXT (GLenum matrixMode, GLdouble x, GLdouble y, GLdouble z)
-	void glMatrixTranslatefEXT (GLenum matrixMode, GLfloat x, GLfloat y, GLfloat z)
-	void glMultiTexBufferEXT (GLenum texunit, GLenum target, GLenum internalformat, GLuint buffer)
-	void glMultiTexCoordPointerEXT (GLenum texunit, GLint size, GLenum type, GLsizei stride, const void* pointer)
-	void glMultiTexEnvfEXT (GLenum texunit, GLenum target, GLenum pname, GLfloat param)
-	void glMultiTexEnvfvEXT (GLenum texunit, GLenum target, GLenum pname, const GLfloat* params)
-	void glMultiTexEnviEXT (GLenum texunit, GLenum target, GLenum pname, GLint param)
-	void glMultiTexEnvivEXT (GLenum texunit, GLenum target, GLenum pname, const GLint* params)
-	void glMultiTexGendEXT (GLenum texunit, GLenum coord, GLenum pname, GLdouble param)
-	void glMultiTexGendvEXT (GLenum texunit, GLenum coord, GLenum pname, const GLdouble* params)
-	void glMultiTexGenfEXT (GLenum texunit, GLenum coord, GLenum pname, GLfloat param)
-	void glMultiTexGenfvEXT (GLenum texunit, GLenum coord, GLenum pname, const GLfloat* params)
-	void glMultiTexGeniEXT (GLenum texunit, GLenum coord, GLenum pname, GLint param)
-	void glMultiTexGenivEXT (GLenum texunit, GLenum coord, GLenum pname, const GLint* params)
-	void glMultiTexImage1DEXT (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void* pixels)
-	void glMultiTexImage2DEXT (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels)
-	void glMultiTexImage3DEXT (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels)
-	void glMultiTexParameterIivEXT (GLenum texunit, GLenum target, GLenum pname, const GLint* params)
-	void glMultiTexParameterIuivEXT (GLenum texunit, GLenum target, GLenum pname, const GLuint* params)
-	void glMultiTexParameterfEXT (GLenum texunit, GLenum target, GLenum pname, GLfloat param)
-	void glMultiTexParameterfvEXT (GLenum texunit, GLenum target, GLenum pname, const GLfloat* param)
-	void glMultiTexParameteriEXT (GLenum texunit, GLenum target, GLenum pname, GLint param)
-	void glMultiTexParameterivEXT (GLenum texunit, GLenum target, GLenum pname, const GLint* param)
-	void glMultiTexRenderbufferEXT (GLenum texunit, GLenum target, GLuint renderbuffer)
-	void glMultiTexSubImage1DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels)
-	void glMultiTexSubImage2DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels)
-	void glMultiTexSubImage3DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels)
-	void glNamedBufferDataEXT (GLuint buffer, GLsizeiptr size, const void* data, GLenum usage)
-	void glNamedBufferSubDataEXT (GLuint buffer, GLintptr offset, GLsizeiptr size, const void* data)
-	 void glNamedCopyBufferSubDataEXT (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
-	void glNamedFramebufferRenderbufferEXT (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
-	void glNamedFramebufferTexture1DEXT (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
-	void glNamedFramebufferTexture2DEXT (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
-	void glNamedFramebufferTexture3DEXT (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
-	void glNamedFramebufferTextureEXT (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level)
-	void glNamedFramebufferTextureFaceEXT (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLenum face)
-	void glNamedFramebufferTextureLayerEXT (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer)
-	void glNamedProgramLocalParameter4dEXT (GLuint program, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-	void glNamedProgramLocalParameter4dvEXT (GLuint program, GLenum target, GLuint index, const GLdouble* params)
-	void glNamedProgramLocalParameter4fEXT (GLuint program, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glNamedProgramLocalParameter4fvEXT (GLuint program, GLenum target, GLuint index, const GLfloat* params)
-	void glNamedProgramLocalParameterI4iEXT (GLuint program, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w)
-	void glNamedProgramLocalParameterI4ivEXT (GLuint program, GLenum target, GLuint index, const GLint* params)
-	void glNamedProgramLocalParameterI4uiEXT (GLuint program, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
-	void glNamedProgramLocalParameterI4uivEXT (GLuint program, GLenum target, GLuint index, const GLuint* params)
-	void glNamedProgramLocalParameters4fvEXT (GLuint program, GLenum target, GLuint index, GLsizei count, const GLfloat* params)
-	void glNamedProgramLocalParametersI4ivEXT (GLuint program, GLenum target, GLuint index, GLsizei count, const GLint* params)
-	void glNamedProgramLocalParametersI4uivEXT (GLuint program, GLenum target, GLuint index, GLsizei count, const GLuint* params)
-	void glNamedProgramStringEXT (GLuint program, GLenum target, GLenum format, GLsizei len, const void* string)
-	void glNamedRenderbufferStorageEXT (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height)
-	void glNamedRenderbufferStorageMultisampleCoverageEXT (GLuint renderbuffer, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height)
-	void glNamedRenderbufferStorageMultisampleEXT (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
-	void glProgramUniform1fEXT (GLuint program, GLint location, GLfloat v0)
-	void glProgramUniform1fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat* value)
-	void glProgramUniform1iEXT (GLuint program, GLint location, GLint v0)
-	void glProgramUniform1ivEXT (GLuint program, GLint location, GLsizei count, const GLint* value)
-	void glProgramUniform1uiEXT (GLuint program, GLint location, GLuint v0)
-	void glProgramUniform1uivEXT (GLuint program, GLint location, GLsizei count, const GLuint* value)
-	void glProgramUniform2fEXT (GLuint program, GLint location, GLfloat v0, GLfloat v1)
-	void glProgramUniform2fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat* value)
-	void glProgramUniform2iEXT (GLuint program, GLint location, GLint v0, GLint v1)
-	void glProgramUniform2ivEXT (GLuint program, GLint location, GLsizei count, const GLint* value)
-	void glProgramUniform2uiEXT (GLuint program, GLint location, GLuint v0, GLuint v1)
-	void glProgramUniform2uivEXT (GLuint program, GLint location, GLsizei count, const GLuint* value)
-	void glProgramUniform3fEXT (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
-	void glProgramUniform3fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat* value)
-	void glProgramUniform3iEXT (GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
-	void glProgramUniform3ivEXT (GLuint program, GLint location, GLsizei count, const GLint* value)
-	void glProgramUniform3uiEXT (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
-	void glProgramUniform3uivEXT (GLuint program, GLint location, GLsizei count, const GLuint* value)
-	void glProgramUniform4fEXT (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
-	void glProgramUniform4fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat* value)
-	void glProgramUniform4iEXT (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
-	void glProgramUniform4ivEXT (GLuint program, GLint location, GLsizei count, const GLint* value)
-	void glProgramUniform4uiEXT (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
-	void glProgramUniform4uivEXT (GLuint program, GLint location, GLsizei count, const GLuint* value)
-	void glProgramUniformMatrix2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glProgramUniformMatrix2x3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glProgramUniformMatrix2x4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glProgramUniformMatrix3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glProgramUniformMatrix3x2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glProgramUniformMatrix3x4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glProgramUniformMatrix4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glProgramUniformMatrix4x2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glProgramUniformMatrix4x3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value)
-	void glPushClientAttribDefaultEXT (GLbitfield mask)
-	void glTextureBufferEXT (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer)
-	void glTextureImage1DEXT (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void* pixels)
-	void glTextureImage2DEXT (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels)
-	void glTextureImage3DEXT (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels)
-	void glTextureParameterIivEXT (GLuint texture, GLenum target, GLenum pname, const GLint* params)
-	void glTextureParameterIuivEXT (GLuint texture, GLenum target, GLenum pname, const GLuint* params)
-	void glTextureParameterfEXT (GLuint texture, GLenum target, GLenum pname, GLfloat param)
-	void glTextureParameterfvEXT (GLuint texture, GLenum target, GLenum pname, const GLfloat* param)
-	void glTextureParameteriEXT (GLuint texture, GLenum target, GLenum pname, GLint param)
-	void glTextureParameterivEXT (GLuint texture, GLenum target, GLenum pname, const GLint* param)
-	void glTextureRenderbufferEXT (GLuint texture, GLenum target, GLuint renderbuffer)
-	void glTextureSubImage1DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels)
-	void glTextureSubImage2DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels)
-	void glTextureSubImage3DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels)
-	GLboolean glUnmapNamedBufferEXT (GLuint buffer)
-	void glVertexArrayColorOffsetEXT (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset)
-	void glVertexArrayEdgeFlagOffsetEXT (GLuint vaobj, GLuint buffer, GLsizei stride, GLintptr offset)
-	void glVertexArrayFogCoordOffsetEXT (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset)
-	void glVertexArrayIndexOffsetEXT (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset)
-	void glVertexArrayMultiTexCoordOffsetEXT (GLuint vaobj, GLuint buffer, GLenum texunit, GLint size, GLenum type, GLsizei stride, GLintptr offset)
-	void glVertexArrayNormalOffsetEXT (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset)
-	void glVertexArraySecondaryColorOffsetEXT (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset)
-	void glVertexArrayTexCoordOffsetEXT (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset)
-	void glVertexArrayVertexAttribIOffsetEXT (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset)
-	void glVertexArrayVertexAttribOffsetEXT (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLintptr offset)
-	void glVertexArrayVertexOffsetEXT (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset)
diff --git a/src/other/glew/auto/extensions/GL_EXT_draw_buffers2 b/src/other/glew/auto/extensions/GL_EXT_draw_buffers2
deleted file mode 100644
index 3917eb8..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_draw_buffers2
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_EXT_draw_buffers2
-http://www.opengl.org/registry/specs/EXT/draw_buffers2.txt
-GL_EXT_draw_buffers2
-	void glColorMaskIndexedEXT (GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
-	void glDisableIndexedEXT (GLenum target, GLuint index)
-	void glEnableIndexedEXT (GLenum target, GLuint index)
-	void glGetBooleanIndexedvEXT (GLenum value, GLuint index, GLboolean* data)
-	void glGetIntegerIndexedvEXT (GLenum value, GLuint index, GLint* data)
-	GLboolean glIsEnabledIndexedEXT (GLenum target, GLuint index)
diff --git a/src/other/glew/auto/extensions/GL_EXT_draw_instanced b/src/other/glew/auto/extensions/GL_EXT_draw_instanced
deleted file mode 100644
index afafa27..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_draw_instanced
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_draw_instanced
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_draw_instanced.txt
-GL_EXT_draw_instanced
-	void glDrawArraysInstancedEXT (GLenum mode, GLint start, GLsizei count, GLsizei primcount)
-	void glDrawElementsInstancedEXT (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount)
diff --git a/src/other/glew/auto/extensions/GL_EXT_draw_range_elements b/src/other/glew/auto/extensions/GL_EXT_draw_range_elements
deleted file mode 100644
index 2abc870..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_draw_range_elements
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_draw_range_elements
-http://oss.sgi.com/projects/ogl-sample/registry/EXT/draw_range_elements.txt
-GL_EXT_draw_range_elements
-	GL_MAX_ELEMENTS_VERTICES 0x80E8
-	GL_MAX_ELEMENTS_INDICES 0x80E9
-	void glDrawRangeElementsEXT (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices)
diff --git a/src/other/glew/auto/extensions/GL_EXT_fog_coord b/src/other/glew/auto/extensions/GL_EXT_fog_coord
deleted file mode 100644
index ac7868a..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_fog_coord
+++ /dev/null
@@ -1,16 +0,0 @@
-GL_EXT_fog_coord
-http://oss.sgi.com/projects/ogl-sample/registry/EXT/fog_coord.txt
-GL_EXT_fog_coord
-	GL_FOG_COORDINATE_SOURCE_EXT 0x8450
-	GL_FOG_COORDINATE_EXT 0x8451
-	GL_FRAGMENT_DEPTH_EXT 0x8452
-	GL_CURRENT_FOG_COORDINATE_EXT 0x8453
-	GL_FOG_COORDINATE_ARRAY_TYPE_EXT 0x8454
-	GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455
-	GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456
-	GL_FOG_COORDINATE_ARRAY_EXT 0x8457
-	void glFogCoordfEXT (GLfloat coord)
-	void glFogCoordfvEXT (const GLfloat *coord)
-	void glFogCoorddEXT (GLdouble coord)
-	void glFogCoorddvEXT (const GLdouble *coord)
-	void glFogCoordPointerEXT (GLenum type, GLsizei stride, const GLvoid *pointer)
diff --git a/src/other/glew/auto/extensions/GL_EXT_fragment_lighting b/src/other/glew/auto/extensions/GL_EXT_fragment_lighting
deleted file mode 100644
index ab6888d..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_fragment_lighting
+++ /dev/null
@@ -1,35 +0,0 @@
-GL_EXT_fragment_lighting
-http://www.opengl.org/registry/specs/EXT/fragment_lighting.txt
-GL_EXT_fragment_lighting
-	GL_FRAGMENT_LIGHTING_EXT 0x8400
-	GL_FRAGMENT_COLOR_MATERIAL_EXT 0x8401
-	GL_FRAGMENT_COLOR_MATERIAL_FACE_EXT 0x8402
-	GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_EXT 0x8403
-	GL_MAX_FRAGMENT_LIGHTS_EXT 0x8404
-	GL_MAX_ACTIVE_LIGHTS_EXT 0x8405
-	GL_CURRENT_RASTER_NORMAL_EXT 0x8406
-	GL_LIGHT_ENV_MODE_EXT 0x8407
-	GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_EXT 0x8408
-	GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_EXT 0x8409
-	GL_FRAGMENT_LIGHT_MODEL_AMBIENT_EXT 0x840A
-	GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_EXT 0x840B
-	GL_FRAGMENT_LIGHT0_EXT 0x840C
-	GL_FRAGMENT_LIGHT7_EXT 0x8413
-	void glFragmentColorMaterialEXT (GLenum face, GLenum mode)
-	void glFragmentLightModelfEXT (GLenum pname, GLfloat param)
-	void glFragmentLightModelfvEXT (GLenum pname, GLfloat* params)
-	void glFragmentLightModeliEXT (GLenum pname, GLint param)
-	void glFragmentLightModelivEXT (GLenum pname, GLint* params)
-	void glFragmentLightfEXT (GLenum light, GLenum pname, GLfloat param)
-	void glFragmentLightfvEXT (GLenum light, GLenum pname, GLfloat* params)
-	void glFragmentLightiEXT (GLenum light, GLenum pname, GLint param)
-	void glFragmentLightivEXT (GLenum light, GLenum pname, GLint* params)
-	void glFragmentMaterialfEXT (GLenum face, GLenum pname, const GLfloat param)
-	void glFragmentMaterialfvEXT (GLenum face, GLenum pname, const GLfloat* params)
-	void glFragmentMaterialiEXT (GLenum face, GLenum pname, const GLint param)
-	void glFragmentMaterialivEXT (GLenum face, GLenum pname, const GLint* params)
-	void glGetFragmentLightfvEXT (GLenum light, GLenum pname, GLfloat* params)
-	void glGetFragmentLightivEXT (GLenum light, GLenum pname, GLint* params)
-	void glGetFragmentMaterialfvEXT (GLenum face, GLenum pname, const GLfloat* params)
-	void glGetFragmentMaterialivEXT (GLenum face, GLenum pname, const GLint* params)
-	void glLightEnviEXT (GLenum pname, GLint param)
diff --git a/src/other/glew/auto/extensions/GL_EXT_framebuffer_blit b/src/other/glew/auto/extensions/GL_EXT_framebuffer_blit
deleted file mode 100644
index 22110c2..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_framebuffer_blit
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_EXT_framebuffer_blit
-http://www.opengl.org/registry/specs/EXT/framebuffer_blit.txt
-GL_EXT_framebuffer_blit
-	GL_DRAW_FRAMEBUFFER_BINDING_EXT 0x8CA6
-	GL_READ_FRAMEBUFFER_EXT 0x8CA8
-	GL_DRAW_FRAMEBUFFER_EXT 0x8CA9
-	GL_READ_FRAMEBUFFER_BINDING_EXT 0x8CAA
-	void glBlitFramebufferEXT (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
diff --git a/src/other/glew/auto/extensions/GL_EXT_framebuffer_multisample b/src/other/glew/auto/extensions/GL_EXT_framebuffer_multisample
deleted file mode 100644
index c512933..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_framebuffer_multisample
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_EXT_framebuffer_multisample
-http://www.opengl.org/registry/specs/EXT/framebuffer_multisample.txt
-GL_EXT_framebuffer_multisample
-	GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB
-	GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
-	GL_MAX_SAMPLES_EXT 0x8D57
-	void glRenderbufferStorageMultisampleEXT (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
-	GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
-	GL_MAX_SAMPLES_EXT 0x8D57
diff --git a/src/other/glew/auto/extensions/GL_EXT_framebuffer_object b/src/other/glew/auto/extensions/GL_EXT_framebuffer_object
deleted file mode 100644
index 1fb4998..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_framebuffer_object
+++ /dev/null
@@ -1,71 +0,0 @@
-GL_EXT_framebuffer_object
-http://www.opengl.org/registry/specs/EXT/framebuffer_object.txt
-GL_EXT_framebuffer_object
-	GL_INVALID_FRAMEBUFFER_OPERATION_EXT 0x0506
-	GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8
-	GL_FRAMEBUFFER_BINDING_EXT 0x8CA6
-	GL_RENDERBUFFER_BINDING_EXT 0x8CA7
-	GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT 0x8CD0
-	GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT 0x8CD1
-	GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT 0x8CD2
-	GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT 0x8CD3
-	GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT 0x8CD4
-	GL_FRAMEBUFFER_COMPLETE_EXT 0x8CD5
-	GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT 0x8CD6
-	GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7
-	GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT 0x8CD9
-	GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT 0x8CDA
-	GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT 0x8CDB
-	GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC
-	GL_FRAMEBUFFER_UNSUPPORTED_EXT 0x8CDD
-	GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF
-	GL_COLOR_ATTACHMENT0_EXT 0x8CE0
-	GL_COLOR_ATTACHMENT1_EXT 0x8CE1
-	GL_COLOR_ATTACHMENT2_EXT 0x8CE2
-	GL_COLOR_ATTACHMENT3_EXT 0x8CE3
-	GL_COLOR_ATTACHMENT4_EXT 0x8CE4
-	GL_COLOR_ATTACHMENT5_EXT 0x8CE5
-	GL_COLOR_ATTACHMENT6_EXT 0x8CE6
-	GL_COLOR_ATTACHMENT7_EXT 0x8CE7
-	GL_COLOR_ATTACHMENT8_EXT 0x8CE8
-	GL_COLOR_ATTACHMENT9_EXT 0x8CE9
-	GL_COLOR_ATTACHMENT10_EXT 0x8CEA
-	GL_COLOR_ATTACHMENT11_EXT 0x8CEB
-	GL_COLOR_ATTACHMENT12_EXT 0x8CEC
-	GL_COLOR_ATTACHMENT13_EXT 0x8CED
-	GL_COLOR_ATTACHMENT14_EXT 0x8CEE
-	GL_COLOR_ATTACHMENT15_EXT 0x8CEF
-	GL_DEPTH_ATTACHMENT_EXT 0x8D00
-	GL_STENCIL_ATTACHMENT_EXT 0x8D20
-	GL_FRAMEBUFFER_EXT 0x8D40
-	GL_RENDERBUFFER_EXT 0x8D41
-	GL_RENDERBUFFER_WIDTH_EXT 0x8D42
-	GL_RENDERBUFFER_HEIGHT_EXT 0x8D43
-	GL_RENDERBUFFER_INTERNAL_FORMAT_EXT 0x8D44
-	GL_STENCIL_INDEX1_EXT 0x8D46
-	GL_STENCIL_INDEX4_EXT 0x8D47
-	GL_STENCIL_INDEX8_EXT 0x8D48
-	GL_STENCIL_INDEX16_EXT 0x8D49
-	GL_RENDERBUFFER_RED_SIZE_EXT 0x8D50
-	GL_RENDERBUFFER_GREEN_SIZE_EXT 0x8D51
-	GL_RENDERBUFFER_BLUE_SIZE_EXT 0x8D52
-	GL_RENDERBUFFER_ALPHA_SIZE_EXT 0x8D53
-	GL_RENDERBUFFER_DEPTH_SIZE_EXT 0x8D54
-	GL_RENDERBUFFER_STENCIL_SIZE_EXT 0x8D55
-	void glBindFramebufferEXT (GLenum target, GLuint framebuffer)
-	void glBindRenderbufferEXT (GLenum target, GLuint renderbuffer)
-	GLenum glCheckFramebufferStatusEXT (GLenum target)
-	void glDeleteFramebuffersEXT (GLsizei n, const GLuint* framebuffers)
-	void glDeleteRenderbuffersEXT (GLsizei n, const GLuint* renderbuffers)
-	void glFramebufferRenderbufferEXT (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
-	void glFramebufferTexture1DEXT (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
-	void glFramebufferTexture2DEXT (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
-	void glFramebufferTexture3DEXT (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
-	void glGenFramebuffersEXT (GLsizei n, GLuint* framebuffers)
-	void glGenRenderbuffersEXT (GLsizei n, GLuint* renderbuffers)
-	void glGenerateMipmapEXT (GLenum target)
-	void glGetFramebufferAttachmentParameterivEXT (GLenum target, GLenum attachment, GLenum pname, GLint* params)
-	void glGetRenderbufferParameterivEXT (GLenum target, GLenum pname, GLint* params)
-	GLboolean glIsFramebufferEXT (GLuint framebuffer)
-	GLboolean glIsRenderbufferEXT (GLuint renderbuffer)
-	void glRenderbufferStorageEXT (GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
diff --git a/src/other/glew/auto/extensions/GL_EXT_framebuffer_sRGB b/src/other/glew/auto/extensions/GL_EXT_framebuffer_sRGB
deleted file mode 100644
index 4ca897b..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_framebuffer_sRGB
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_framebuffer_sRGB
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_framebuffer_sRGB.txt
-GL_EXT_framebuffer_sRGB
-	GL_FRAMEBUFFER_SRGB_EXT 0x8DB9
-	GL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x8DBA
diff --git a/src/other/glew/auto/extensions/GL_EXT_geometry_shader4 b/src/other/glew/auto/extensions/GL_EXT_geometry_shader4
deleted file mode 100644
index 888e500..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_geometry_shader4
+++ /dev/null
@@ -1,27 +0,0 @@
-GL_EXT_geometry_shader4
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_geometry_shader4.txt
-GL_EXT_geometry_shader4
-	GL_GEOMETRY_SHADER_EXT 0x8DD9
-	GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT 0x8DDD
-	GL_MAX_VERTEX_VARYING_COMPONENTS_EXT 0x8DDE
-	GL_MAX_VARYING_COMPONENTS_EXT 0x8B4B
-	GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8DDF
-	GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT 0x8DE0
-	GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT 0x8DE1
-	GL_GEOMETRY_VERTICES_OUT_EXT 0x8DDA
-	GL_GEOMETRY_INPUT_TYPE_EXT 0x8DDB
-	GL_GEOMETRY_OUTPUT_TYPE_EXT 0x8DDC
-	GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT 0x8C29
-	GL_LINES_ADJACENCY_EXT 0xA
-	GL_LINE_STRIP_ADJACENCY_EXT 0xB
-	GL_TRIANGLES_ADJACENCY_EXT 0xC
-	GL_TRIANGLE_STRIP_ADJACENCY_EXT 0xD
-	GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT 0x8DA7
-	GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT 0x8DA8
-	GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT 0x8DA9
-	GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT 0x8CD4
-	GL_PROGRAM_POINT_SIZE_EXT 0x8642
-	void glProgramParameteriEXT (GLuint program, GLenum pname, GLint value)
-	void glFramebufferTextureEXT (GLenum target, GLenum attachment, GLuint texture, GLint level)
-	void glFramebufferTextureLayerEXT (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
-	void glFramebufferTextureFaceEXT (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face)
diff --git a/src/other/glew/auto/extensions/GL_EXT_gpu_program_parameters b/src/other/glew/auto/extensions/GL_EXT_gpu_program_parameters
deleted file mode 100644
index 9048c98..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_gpu_program_parameters
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_gpu_program_parameters
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_gpu_program_parameters.txt
-GL_EXT_gpu_program_parameters
-	void glProgramEnvParameters4fvEXT (GLenum target, GLuint index, GLsizei count, const GLfloat* params)
-	void glProgramLocalParameters4fvEXT (GLenum target, GLuint index, GLsizei count, const GLfloat* params)
diff --git a/src/other/glew/auto/extensions/GL_EXT_gpu_shader4 b/src/other/glew/auto/extensions/GL_EXT_gpu_shader4
deleted file mode 100644
index 0e89f0d..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_gpu_shader4
+++ /dev/null
@@ -1,63 +0,0 @@
-GL_EXT_gpu_shader4
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_gpu_shader4.txt
-GL_EXT_gpu_shader4
-	GL_SAMPLER_1D_ARRAY_EXT 0x8DC0
-	GL_SAMPLER_2D_ARRAY_EXT 0x8DC1
-	GL_SAMPLER_BUFFER_EXT 0x8DC2
-	GL_SAMPLER_1D_ARRAY_SHADOW_EXT 0x8DC3
-	GL_SAMPLER_2D_ARRAY_SHADOW_EXT 0x8DC4
-	GL_SAMPLER_CUBE_SHADOW_EXT 0x8DC5
-	GL_UNSIGNED_INT_VEC2_EXT 0x8DC6
-	GL_UNSIGNED_INT_VEC3_EXT 0x8DC7
-	GL_UNSIGNED_INT_VEC4_EXT 0x8DC8
-	GL_INT_SAMPLER_1D_EXT 0x8DC9
-	GL_INT_SAMPLER_2D_EXT 0x8DCA
-	GL_INT_SAMPLER_3D_EXT 0x8DCB
-	GL_INT_SAMPLER_CUBE_EXT 0x8DCC
-	GL_INT_SAMPLER_2D_RECT_EXT 0x8DCD
-	GL_INT_SAMPLER_1D_ARRAY_EXT 0x8DCE
-	GL_INT_SAMPLER_2D_ARRAY_EXT 0x8DCF
-	GL_INT_SAMPLER_BUFFER_EXT 0x8DD0
-	GL_UNSIGNED_INT_SAMPLER_1D_EXT 0x8DD1
-	GL_UNSIGNED_INT_SAMPLER_2D_EXT 0x8DD2
-	GL_UNSIGNED_INT_SAMPLER_3D_EXT 0x8DD3
-	GL_UNSIGNED_INT_SAMPLER_CUBE_EXT 0x8DD4
-	GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT 0x8DD5
-	GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT 0x8DD6
-	GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT 0x8DD7
-	GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT 0x8DD8
-	GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT 0x88FD
-	void glGetUniformuivEXT (GLuint program, GLint location, GLuint *params)
-	void glBindFragDataLocationEXT (GLuint program, GLuint color, const GLchar *name)
-	GLint glGetFragDataLocationEXT (GLuint program, const GLchar *name)
-	void glUniform1uiEXT (GLint location, GLuint v0)
-	void glUniform2uiEXT (GLint location, GLuint v0, GLuint v1)
-	void glUniform3uiEXT (GLint location, GLuint v0, GLuint v1, GLuint v2)
-	void glUniform4uiEXT (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
-	void glUniform1uivEXT (GLint location, GLsizei count, const GLuint *value)
-	void glUniform2uivEXT (GLint location, GLsizei count, const GLuint *value)
-	void glUniform3uivEXT (GLint location, GLsizei count, const GLuint *value)
-	void glUniform4uivEXT (GLint location, GLsizei count, const GLuint *value)
-	void glVertexAttribI1iEXT (GLuint index, GLint x)
-	void glVertexAttribI2iEXT (GLuint index, GLint x, GLint y)
-	void glVertexAttribI3iEXT (GLuint index, GLint x, GLint y, GLint z)
-	void glVertexAttribI4iEXT (GLuint index, GLint x, GLint y, GLint z, GLint w)
-	void glVertexAttribI1uiEXT (GLuint index, GLuint x)
-	void glVertexAttribI2uiEXT (GLuint index, GLuint x, GLuint y)
-	void glVertexAttribI3uiEXT (GLuint index, GLuint x, GLuint y, GLuint z)
-	void glVertexAttribI4uiEXT (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
-	void glVertexAttribI1ivEXT (GLuint index, const GLint *v)
-	void glVertexAttribI2ivEXT (GLuint index, const GLint *v)
-	void glVertexAttribI3ivEXT (GLuint index, const GLint *v)
-	void glVertexAttribI4ivEXT (GLuint index, const GLint *v)
-	void glVertexAttribI1uivEXT (GLuint index, const GLuint *v)
-	void glVertexAttribI2uivEXT (GLuint index, const GLuint *v)
-	void glVertexAttribI3uivEXT (GLuint index, const GLuint *v)
-	void glVertexAttribI4uivEXT (GLuint index, const GLuint *v)
-	void glVertexAttribI4bvEXT (GLuint index, const GLbyte *v)
-	void glVertexAttribI4svEXT (GLuint index, const GLshort *v)
-	void glVertexAttribI4ubvEXT (GLuint index, const GLubyte *v)
-	void glVertexAttribI4usvEXT (GLuint index, const GLushort *v)
-	void glVertexAttribIPointerEXT (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer)
-	void glGetVertexAttribIivEXT (GLuint index, GLenum pname, GLint *params)
-	void glGetVertexAttribIuivEXT (GLuint index, GLenum pname, GLuint *params)
diff --git a/src/other/glew/auto/extensions/GL_EXT_histogram b/src/other/glew/auto/extensions/GL_EXT_histogram
deleted file mode 100644
index 14dfb52..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_histogram
+++ /dev/null
@@ -1,26 +0,0 @@
-GL_EXT_histogram
-http://www.opengl.org/registry/specs/EXT/histogram.txt
-GL_EXT_histogram
-	GL_HISTOGRAM_EXT 0x8024
-	GL_PROXY_HISTOGRAM_EXT 0x8025
-	GL_HISTOGRAM_WIDTH_EXT 0x8026
-	GL_HISTOGRAM_FORMAT_EXT 0x8027
-	GL_HISTOGRAM_RED_SIZE_EXT 0x8028
-	GL_HISTOGRAM_GREEN_SIZE_EXT 0x8029
-	GL_HISTOGRAM_BLUE_SIZE_EXT 0x802A
-	GL_HISTOGRAM_ALPHA_SIZE_EXT 0x802B
-	GL_HISTOGRAM_LUMINANCE_SIZE_EXT 0x802C
-	GL_HISTOGRAM_SINK_EXT 0x802D
-	GL_MINMAX_EXT 0x802E
-	GL_MINMAX_FORMAT_EXT 0x802F
-	GL_MINMAX_SINK_EXT 0x8030
-	void glGetHistogramEXT (GLenum target, GLboolean reset, GLenum format, GLenum type, void* values)
-	void glGetHistogramParameterfvEXT (GLenum target, GLenum pname, GLfloat* params)
-	void glGetHistogramParameterivEXT (GLenum target, GLenum pname, GLint* params)
-	void glGetMinmaxEXT (GLenum target, GLboolean reset, GLenum format, GLenum type, void* values)
-	void glGetMinmaxParameterfvEXT (GLenum target, GLenum pname, GLfloat* params)
-	void glGetMinmaxParameterivEXT (GLenum target, GLenum pname, GLint* params)
-	void glHistogramEXT (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
-	void glMinmaxEXT (GLenum target, GLenum internalformat, GLboolean sink)
-	void glResetHistogramEXT (GLenum target)
-	void glResetMinmaxEXT (GLenum target)
diff --git a/src/other/glew/auto/extensions/GL_EXT_index_array_formats b/src/other/glew/auto/extensions/GL_EXT_index_array_formats
deleted file mode 100644
index cc11b98..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_index_array_formats
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_EXT_index_array_formats
-http://www.opengl.org/registry/specs/EXT/index_array_formats.txt
-GL_EXT_index_array_formats
diff --git a/src/other/glew/auto/extensions/GL_EXT_index_func b/src/other/glew/auto/extensions/GL_EXT_index_func
deleted file mode 100644
index 8431c5a..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_index_func
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_EXT_index_func
-http://www.opengl.org/registry/specs/EXT/index_func.txt
-GL_EXT_index_func
-	void glIndexFuncEXT (GLenum func, GLfloat ref)
diff --git a/src/other/glew/auto/extensions/GL_EXT_index_material b/src/other/glew/auto/extensions/GL_EXT_index_material
deleted file mode 100644
index 7bb43d6..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_index_material
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_EXT_index_material
-http://www.opengl.org/registry/specs/EXT/index_material.txt
-GL_EXT_index_material
-	void glIndexMaterialEXT (GLenum face, GLenum mode)
diff --git a/src/other/glew/auto/extensions/GL_EXT_index_texture b/src/other/glew/auto/extensions/GL_EXT_index_texture
deleted file mode 100644
index c4ee051..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_index_texture
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_EXT_index_texture
-http://www.opengl.org/registry/specs/EXT/index_texture.txt
-GL_EXT_index_texture
diff --git a/src/other/glew/auto/extensions/GL_EXT_light_texture b/src/other/glew/auto/extensions/GL_EXT_light_texture
deleted file mode 100644
index d18049c..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_light_texture
+++ /dev/null
@@ -1,16 +0,0 @@
-GL_EXT_light_texture
-http://www.opengl.org/registry/specs/EXT/light_texture.txt
-GL_EXT_light_texture
-	GL_FRAGMENT_MATERIAL_EXT 0x8349
-	GL_FRAGMENT_NORMAL_EXT 0x834A
-	GL_FRAGMENT_COLOR_EXT 0x834C
-	GL_ATTENUATION_EXT 0x834D
-	GL_SHADOW_ATTENUATION_EXT 0x834E
-	GL_TEXTURE_APPLICATION_MODE_EXT 0x834F
-	GL_TEXTURE_LIGHT_EXT 0x8350
-	GL_TEXTURE_MATERIAL_FACE_EXT 0x8351
-	GL_TEXTURE_MATERIAL_PARAMETER_EXT 0x8352
-	GL_FRAGMENT_DEPTH_EXT 0x8452
-	void glApplyTextureEXT (GLenum mode)
-	void glTextureLightEXT (GLenum pname)
-	void glTextureMaterialEXT (GLenum face, GLenum mode)
diff --git a/src/other/glew/auto/extensions/GL_EXT_misc_attribute b/src/other/glew/auto/extensions/GL_EXT_misc_attribute
deleted file mode 100644
index ad4cee0..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_misc_attribute
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_EXT_misc_attribute
-http://www.opengl.org/registry/specs/EXT/misc_attribute.txt
-GL_EXT_misc_attribute
diff --git a/src/other/glew/auto/extensions/GL_EXT_multi_draw_arrays b/src/other/glew/auto/extensions/GL_EXT_multi_draw_arrays
deleted file mode 100644
index cf03e22..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_multi_draw_arrays
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_multi_draw_arrays
-http://www.opengl.org/registry/specs/EXT/multi_draw_arrays.txt
-GL_EXT_multi_draw_arrays
-	void glMultiDrawArraysEXT (GLenum mode, GLint* first, GLsizei *count, GLsizei primcount)
-	void glMultiDrawElementsEXT (GLenum mode, GLsizei* count, GLenum type, const GLvoid **indices, GLsizei primcount)
diff --git a/src/other/glew/auto/extensions/GL_EXT_multisample b/src/other/glew/auto/extensions/GL_EXT_multisample
deleted file mode 100644
index bdb1e16..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_multisample
+++ /dev/null
@@ -1,22 +0,0 @@
-GL_EXT_multisample
-http://www.opengl.org/registry/specs/EXT/wgl_multisample.txt
-GL_EXT_multisample
-	GL_MULTISAMPLE_EXT 0x809D
-	GL_SAMPLE_ALPHA_TO_MASK_EXT 0x809E
-	GL_SAMPLE_ALPHA_TO_ONE_EXT 0x809F
-	GL_SAMPLE_MASK_EXT 0x80A0
-	GL_1PASS_EXT 0x80A1
-	GL_2PASS_0_EXT 0x80A2
-	GL_2PASS_1_EXT 0x80A3
-	GL_4PASS_0_EXT 0x80A4
-	GL_4PASS_1_EXT 0x80A5
-	GL_4PASS_2_EXT 0x80A6
-	GL_4PASS_3_EXT 0x80A7
-	GL_SAMPLE_BUFFERS_EXT 0x80A8
-	GL_SAMPLES_EXT 0x80A9
-	GL_SAMPLE_MASK_VALUE_EXT 0x80AA
-	GL_SAMPLE_MASK_INVERT_EXT 0x80AB
-	GL_SAMPLE_PATTERN_EXT 0x80AC
-	GL_MULTISAMPLE_BIT_EXT 0x20000000
-	void glSampleMaskEXT (GLclampf value, GLboolean invert)
-	void glSamplePatternEXT (GLenum pattern)
diff --git a/src/other/glew/auto/extensions/GL_EXT_packed_depth_stencil b/src/other/glew/auto/extensions/GL_EXT_packed_depth_stencil
deleted file mode 100644
index 44a711c..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_packed_depth_stencil
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_packed_depth_stencil
-http://www.opengl.org/registry/specs/EXT/packed_depth_stencil.txt
-GL_EXT_packed_depth_stencil
-	GL_DEPTH_STENCIL_EXT 0x84F9
-	GL_UNSIGNED_INT_24_8_EXT 0x84FA
-	GL_DEPTH24_STENCIL8_EXT 0x88F0
-	GL_TEXTURE_STENCIL_SIZE_EXT 0x88F1
diff --git a/src/other/glew/auto/extensions/GL_EXT_packed_float b/src/other/glew/auto/extensions/GL_EXT_packed_float
deleted file mode 100644
index bcb2255..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_packed_float
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_packed_float
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_packed_float.txt
-GL_EXT_packed_float
-	GL_R11F_G11F_B10F_EXT 0x8C3A
-	GL_UNSIGNED_INT_10F_11F_11F_REV_EXT 0x8C3B
-	GL_RGBA_SIGNED_COMPONENTS_EXT 0x8C3C
diff --git a/src/other/glew/auto/extensions/GL_EXT_packed_pixels b/src/other/glew/auto/extensions/GL_EXT_packed_pixels
deleted file mode 100644
index ba47d59..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_packed_pixels
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_EXT_packed_pixels
-http://www.opengl.org/registry/specs/EXT/packed_pixels.txt
-GL_EXT_packed_pixels
-	GL_UNSIGNED_BYTE_3_3_2_EXT 0x8032
-	GL_UNSIGNED_SHORT_4_4_4_4_EXT 0x8033
-	GL_UNSIGNED_SHORT_5_5_5_1_EXT 0x8034
-	GL_UNSIGNED_INT_8_8_8_8_EXT 0x8035
-	GL_UNSIGNED_INT_10_10_10_2_EXT 0x8036
diff --git a/src/other/glew/auto/extensions/GL_EXT_paletted_texture b/src/other/glew/auto/extensions/GL_EXT_paletted_texture
deleted file mode 100644
index 6830acc..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_paletted_texture
+++ /dev/null
@@ -1,30 +0,0 @@
-GL_EXT_paletted_texture
-http://www.opengl.org/registry/specs/EXT/paletted_texture.txt
-GL_EXT_paletted_texture
-	GL_TEXTURE_1D 0x0DE0
-	GL_TEXTURE_2D 0x0DE1
-	GL_PROXY_TEXTURE_1D 0x8063
-	GL_PROXY_TEXTURE_2D 0x8064
-	GL_TEXTURE_3D_EXT 0x806F
-	GL_PROXY_TEXTURE_3D_EXT 0x8070
-	GL_COLOR_TABLE_FORMAT_EXT 0x80D8
-	GL_COLOR_TABLE_WIDTH_EXT 0x80D9
-	GL_COLOR_TABLE_RED_SIZE_EXT 0x80DA
-	GL_COLOR_TABLE_GREEN_SIZE_EXT 0x80DB
-	GL_COLOR_TABLE_BLUE_SIZE_EXT 0x80DC
-	GL_COLOR_TABLE_ALPHA_SIZE_EXT 0x80DD
-	GL_COLOR_TABLE_LUMINANCE_SIZE_EXT 0x80DE
-	GL_COLOR_TABLE_INTENSITY_SIZE_EXT 0x80DF
-	GL_COLOR_INDEX1_EXT 0x80E2
-	GL_COLOR_INDEX2_EXT 0x80E3
-	GL_COLOR_INDEX4_EXT 0x80E4
-	GL_COLOR_INDEX8_EXT 0x80E5
-	GL_COLOR_INDEX12_EXT 0x80E6
-	GL_COLOR_INDEX16_EXT 0x80E7
-	GL_TEXTURE_INDEX_SIZE_EXT 0x80ED
-	GL_TEXTURE_CUBE_MAP_ARB 0x8513
-	GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B
-	void glColorTableEXT (GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const void* data)
-	void glGetColorTableEXT (GLenum target, GLenum format, GLenum type, void* data)
-	void glGetColorTableParameterfvEXT (GLenum target, GLenum pname, GLfloat* params)
-	void glGetColorTableParameterivEXT (GLenum target, GLenum pname, GLint* params)
diff --git a/src/other/glew/auto/extensions/GL_EXT_pixel_buffer_object b/src/other/glew/auto/extensions/GL_EXT_pixel_buffer_object
deleted file mode 100644
index a7f8f2c..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_pixel_buffer_object
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_pixel_buffer_object
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_pixel_buffer_object.txt
-GL_EXT_pixel_buffer_object
-	GL_PIXEL_PACK_BUFFER_EXT 0x88EB
-	GL_PIXEL_UNPACK_BUFFER_EXT 0x88EC
-	GL_PIXEL_PACK_BUFFER_BINDING_EXT 0x88ED
-	GL_PIXEL_UNPACK_BUFFER_BINDING_EXT 0x88EF
diff --git a/src/other/glew/auto/extensions/GL_EXT_pixel_transform b/src/other/glew/auto/extensions/GL_EXT_pixel_transform
deleted file mode 100644
index 30fdbfb..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_pixel_transform
+++ /dev/null
@@ -1,18 +0,0 @@
-GL_EXT_pixel_transform
-http://www.opengl.org/registry/specs/EXT/pixel_transform.txt
-GL_EXT_pixel_transform
-	GL_PIXEL_TRANSFORM_2D_EXT 0x8330
-	GL_PIXEL_MAG_FILTER_EXT 0x8331
-	GL_PIXEL_MIN_FILTER_EXT 0x8332
-	GL_PIXEL_CUBIC_WEIGHT_EXT 0x8333
-	GL_CUBIC_EXT 0x8334
-	GL_AVERAGE_EXT 0x8335
-	GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8336
-	GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8337
-	GL_PIXEL_TRANSFORM_2D_MATRIX_EXT 0x8338
-	void glGetPixelTransformParameterfvEXT (GLenum target, GLenum pname, const GLfloat* params)
-	void glGetPixelTransformParameterivEXT (GLenum target, GLenum pname, const GLint* params)
-	void glPixelTransformParameterfEXT (GLenum target, GLenum pname, const GLfloat param)
-	void glPixelTransformParameterfvEXT (GLenum target, GLenum pname, const GLfloat* params)
-	void glPixelTransformParameteriEXT (GLenum target, GLenum pname, const GLint param)
-	void glPixelTransformParameterivEXT (GLenum target, GLenum pname, const GLint* params)
diff --git a/src/other/glew/auto/extensions/GL_EXT_pixel_transform_color_table b/src/other/glew/auto/extensions/GL_EXT_pixel_transform_color_table
deleted file mode 100644
index c53b731..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_pixel_transform_color_table
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_EXT_pixel_transform_color_table
-http://www.opengl.org/registry/specs/EXT/pixel_transform_color_table.txt
-GL_EXT_pixel_transform_color_table
diff --git a/src/other/glew/auto/extensions/GL_EXT_point_parameters b/src/other/glew/auto/extensions/GL_EXT_point_parameters
deleted file mode 100644
index 3128598..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_point_parameters
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_EXT_point_parameters
-http://www.opengl.org/registry/specs/EXT/point_parameters.txt
-GL_EXT_point_parameters
-	GL_POINT_SIZE_MIN_EXT 0x8126
-	GL_POINT_SIZE_MAX_EXT 0x8127
-	GL_POINT_FADE_THRESHOLD_SIZE_EXT 0x8128
-	GL_DISTANCE_ATTENUATION_EXT 0x8129
-	void glPointParameterfEXT (GLenum pname, GLfloat param)
-	void glPointParameterfvEXT (GLenum pname, GLfloat* params)
diff --git a/src/other/glew/auto/extensions/GL_EXT_polygon_offset b/src/other/glew/auto/extensions/GL_EXT_polygon_offset
deleted file mode 100644
index 66d81eb..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_polygon_offset
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_polygon_offset
-http://www.opengl.org/registry/specs/EXT/polygon_offset.txt
-GL_EXT_polygon_offset
-	GL_POLYGON_OFFSET_EXT 0x8037
-	GL_POLYGON_OFFSET_FACTOR_EXT 0x8038
-	GL_POLYGON_OFFSET_BIAS_EXT 0x8039
-	void glPolygonOffsetEXT (GLfloat factor, GLfloat bias)
diff --git a/src/other/glew/auto/extensions/GL_EXT_provoking_vertex b/src/other/glew/auto/extensions/GL_EXT_provoking_vertex
deleted file mode 100644
index 8512a05..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_provoking_vertex
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_EXT_provoking_vertex
-http://www.opengl.org/registry/specs/EXT/provoking_vertex.txt
-GL_EXT_provoking_vertex
-	GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT 0x8E4C
-	GL_FIRST_VERTEX_CONVENTION_EXT 0x8E4D
-	GL_LAST_VERTEX_CONVENTION_EXT 0x8E4E
-	GL_PROVOKING_VERTEX_EXT 0x8E4F
-	void glProvokingVertexEXT (GLenum mode)
diff --git a/src/other/glew/auto/extensions/GL_EXT_rescale_normal b/src/other/glew/auto/extensions/GL_EXT_rescale_normal
deleted file mode 100644
index d87b45d..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_rescale_normal
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_EXT_rescale_normal
-http://www.opengl.org/registry/specs/EXT/rescale_normal.txt
-GL_EXT_rescale_normal
-	GL_RESCALE_NORMAL_EXT 0x803A
diff --git a/src/other/glew/auto/extensions/GL_EXT_scene_marker b/src/other/glew/auto/extensions/GL_EXT_scene_marker
deleted file mode 100644
index 0ac0093..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_scene_marker
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_scene_marker
-http://www.opengl.org/registry/specs/EXT/scene_marker.txt
-GL_EXT_scene_marker
-	void glBeginSceneEXT (void)
-	void glEndSceneEXT (void)
diff --git a/src/other/glew/auto/extensions/GL_EXT_secondary_color b/src/other/glew/auto/extensions/GL_EXT_secondary_color
deleted file mode 100644
index 490dc64..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_secondary_color
+++ /dev/null
@@ -1,27 +0,0 @@
-GL_EXT_secondary_color
-http://oss.sgi.com/projects/ogl-sample/registry/EXT/secondary_color.txt
-GL_EXT_secondary_color
-	GL_COLOR_SUM_EXT 0x8458
-	GL_CURRENT_SECONDARY_COLOR_EXT 0x8459
-	GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845A
-	GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845B
-	GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845C
-	GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845D
-	GL_SECONDARY_COLOR_ARRAY_EXT 0x845E
-	void glSecondaryColor3bEXT (GLbyte red, GLbyte green, GLbyte blue)
-	void glSecondaryColor3bvEXT (const GLbyte *v)
-	void glSecondaryColor3dEXT (GLdouble red, GLdouble green, GLdouble blue)
-	void glSecondaryColor3dvEXT (const GLdouble *v)
-	void glSecondaryColor3fEXT (GLfloat red, GLfloat green, GLfloat blue)
-	void glSecondaryColor3fvEXT (const GLfloat *v)
-	void glSecondaryColor3iEXT (GLint red, GLint green, GLint blue)
-	void glSecondaryColor3ivEXT (const GLint *v)
-	void glSecondaryColor3sEXT (GLshort red, GLshort green, GLshort blue)
-	void glSecondaryColor3svEXT (const GLshort *v)
-	void glSecondaryColor3ubEXT (GLubyte red, GLubyte green, GLubyte blue)
-	void glSecondaryColor3ubvEXT (const GLubyte *v)
-	void glSecondaryColor3uiEXT (GLuint red, GLuint green, GLuint blue)
-	void glSecondaryColor3uivEXT (const GLuint *v)
-	void glSecondaryColor3usEXT (GLushort red, GLushort green, GLushort blue)
-	void glSecondaryColor3usvEXT (const GLushort *v)
-	void glSecondaryColorPointerEXT (GLint size, GLenum type, GLsizei stride, GLvoid *pointer)
diff --git a/src/other/glew/auto/extensions/GL_EXT_separate_shader_objects b/src/other/glew/auto/extensions/GL_EXT_separate_shader_objects
deleted file mode 100644
index f0bc8d1..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_separate_shader_objects
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_separate_shader_objects
-http://www.opengl.org/registry/specs/EXT/separate_shader_objects.txt
-GL_EXT_separate_shader_objects
-	GL_ACTIVE_PROGRAM_EXT 0x8B8D
-	void glActiveProgramEXT (GLuint program)
-	GLuint glCreateShaderProgramEXT (GLenum type, const char* string)
-	void glUseShaderProgramEXT (GLenum type, GLuint program)
diff --git a/src/other/glew/auto/extensions/GL_EXT_separate_specular_color b/src/other/glew/auto/extensions/GL_EXT_separate_specular_color
deleted file mode 100644
index 4b71768..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_separate_specular_color
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_separate_specular_color
-http://www.opengl.org/registry/specs/EXT/separate_specular_color.txt
-GL_EXT_separate_specular_color
-	GL_LIGHT_MODEL_COLOR_CONTROL_EXT 0x81F8
-	GL_SINGLE_COLOR_EXT 0x81F9
-	GL_SEPARATE_SPECULAR_COLOR_EXT 0x81FA
diff --git a/src/other/glew/auto/extensions/GL_EXT_shader_image_load_store b/src/other/glew/auto/extensions/GL_EXT_shader_image_load_store
deleted file mode 100644
index a6845b4..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_shader_image_load_store
+++ /dev/null
@@ -1,60 +0,0 @@
-GL_EXT_shader_image_load_store
-http://www.opengl.org/registry/specs/EXT/shader_image_load_store.txt
-GL_EXT_shader_image_load_store
-	GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT 0x00000001
-	GL_ELEMENT_ARRAY_BARRIER_BIT_EXT 0x00000002
-	GL_UNIFORM_BARRIER_BIT_EXT 0x00000004
-	GL_TEXTURE_FETCH_BARRIER_BIT_EXT 0x00000008
-	GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT 0x00000020
-	GL_COMMAND_BARRIER_BIT_EXT 0x00000040
-	GL_PIXEL_BUFFER_BARRIER_BIT_EXT 0x00000080
-	GL_TEXTURE_UPDATE_BARRIER_BIT_EXT 0x00000100
-	GL_BUFFER_UPDATE_BARRIER_BIT_EXT 0x00000200
-	GL_FRAMEBUFFER_BARRIER_BIT_EXT 0x00000400
-	GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT 0x00000800
-	GL_ATOMIC_COUNTER_BARRIER_BIT_EXT 0x00001000
-	GL_MAX_IMAGE_UNITS_EXT 0x8F38
-	GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT 0x8F39
-	GL_IMAGE_BINDING_NAME_EXT 0x8F3A
-	GL_IMAGE_BINDING_LEVEL_EXT 0x8F3B
-	GL_IMAGE_BINDING_LAYERED_EXT 0x8F3C
-	GL_IMAGE_BINDING_LAYER_EXT 0x8F3D
-	GL_IMAGE_BINDING_ACCESS_EXT 0x8F3E
-	GL_IMAGE_1D_EXT 0x904C
-	GL_IMAGE_2D_EXT 0x904D
-	GL_IMAGE_3D_EXT 0x904E
-	GL_IMAGE_2D_RECT_EXT 0x904F
-	GL_IMAGE_CUBE_EXT 0x9050
-	GL_IMAGE_BUFFER_EXT 0x9051
-	GL_IMAGE_1D_ARRAY_EXT 0x9052
-	GL_IMAGE_2D_ARRAY_EXT 0x9053
-	GL_IMAGE_CUBE_MAP_ARRAY_EXT 0x9054
-	GL_IMAGE_2D_MULTISAMPLE_EXT 0x9055
-	GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x9056
-	GL_INT_IMAGE_1D_EXT 0x9057
-	GL_INT_IMAGE_2D_EXT 0x9058
-	GL_INT_IMAGE_3D_EXT 0x9059
-	GL_INT_IMAGE_2D_RECT_EXT 0x905A
-	GL_INT_IMAGE_CUBE_EXT 0x905B
-	GL_INT_IMAGE_BUFFER_EXT 0x905C
-	GL_INT_IMAGE_1D_ARRAY_EXT 0x905D
-	GL_INT_IMAGE_2D_ARRAY_EXT 0x905E
-	GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x905F
-	GL_INT_IMAGE_2D_MULTISAMPLE_EXT 0x9060
-	GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x9061
-	GL_UNSIGNED_INT_IMAGE_1D_EXT 0x9062
-	GL_UNSIGNED_INT_IMAGE_2D_EXT 0x9063
-	GL_UNSIGNED_INT_IMAGE_3D_EXT 0x9064
-	GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT 0x9065
-	GL_UNSIGNED_INT_IMAGE_CUBE_EXT 0x9066
-	GL_UNSIGNED_INT_IMAGE_BUFFER_EXT 0x9067
-	GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT 0x9068
-	GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT 0x9069
-	GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x906A
-	GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT 0x906B
-	GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x906C
-	GL_MAX_IMAGE_SAMPLES_EXT 0x906D
-	GL_IMAGE_BINDING_FORMAT_EXT 0x906E
-	GL_ALL_BARRIER_BITS_EXT 0xFFFFFFFF
-	void glBindImageTextureEXT (GLuint index, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLint format)
-	void glMemoryBarrierEXT (GLbitfield barriers)
diff --git a/src/other/glew/auto/extensions/GL_EXT_shadow_funcs b/src/other/glew/auto/extensions/GL_EXT_shadow_funcs
deleted file mode 100644
index d92a7c4..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_shadow_funcs
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_EXT_shadow_funcs
-http://www.opengl.org/registry/specs/EXT/shadow_funcs.txt
-GL_EXT_shadow_funcs
diff --git a/src/other/glew/auto/extensions/GL_EXT_shared_texture_palette b/src/other/glew/auto/extensions/GL_EXT_shared_texture_palette
deleted file mode 100644
index 7ca0875..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_shared_texture_palette
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_EXT_shared_texture_palette
-http://www.opengl.org/registry/specs/EXT/shared_texture_palette.txt
-GL_EXT_shared_texture_palette
-	GL_SHARED_TEXTURE_PALETTE_EXT 0x81FB
diff --git a/src/other/glew/auto/extensions/GL_EXT_stencil_clear_tag b/src/other/glew/auto/extensions/GL_EXT_stencil_clear_tag
deleted file mode 100644
index a117d0e..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_stencil_clear_tag
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_stencil_clear_tag
-http://www.opengl.org/registry/specs/EXT/stencil_clear_tag.txt
-GL_EXT_stencil_clear_tag
-	GL_STENCIL_TAG_BITS_EXT 0x88F2
-	GL_STENCIL_CLEAR_TAG_VALUE_EXT 0x88F3
diff --git a/src/other/glew/auto/extensions/GL_EXT_stencil_two_side b/src/other/glew/auto/extensions/GL_EXT_stencil_two_side
deleted file mode 100644
index 4145dc8..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_stencil_two_side
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_stencil_two_side
-http://www.opengl.org/registry/specs/EXT/stencil_two_side.txt
-GL_EXT_stencil_two_side
-	GL_STENCIL_TEST_TWO_SIDE_EXT 0x8910
-	GL_ACTIVE_STENCIL_FACE_EXT 0x8911
-	void glActiveStencilFaceEXT (GLenum face)
diff --git a/src/other/glew/auto/extensions/GL_EXT_stencil_wrap b/src/other/glew/auto/extensions/GL_EXT_stencil_wrap
deleted file mode 100644
index b9ee8eb..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_stencil_wrap
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_stencil_wrap
-http://www.opengl.org/registry/specs/EXT/stencil_wrap.txt
-GL_EXT_stencil_wrap
-	GL_INCR_WRAP_EXT 0x8507
-	GL_DECR_WRAP_EXT 0x8508
diff --git a/src/other/glew/auto/extensions/GL_EXT_subtexture b/src/other/glew/auto/extensions/GL_EXT_subtexture
deleted file mode 100644
index 1592146..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_subtexture
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_subtexture
-http://www.opengl.org/registry/specs/EXT/subtexture.txt
-GL_EXT_subtexture
-	void glTexSubImage1DEXT (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels)
-	void glTexSubImage2DEXT (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels)
-	void glTexSubImage3DEXT (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels)
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture b/src/other/glew/auto/extensions/GL_EXT_texture
deleted file mode 100644
index 5e78f29..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture
+++ /dev/null
@@ -1,45 +0,0 @@
-GL_EXT_texture
-http://www.opengl.org/registry/specs/EXT/texture.txt
-GL_EXT_texture
-	GL_ALPHA4_EXT 0x803B
-	GL_ALPHA8_EXT 0x803C
-	GL_ALPHA12_EXT 0x803D
-	GL_ALPHA16_EXT 0x803E
-	GL_LUMINANCE4_EXT 0x803F
-	GL_LUMINANCE8_EXT 0x8040
-	GL_LUMINANCE12_EXT 0x8041
-	GL_LUMINANCE16_EXT 0x8042
-	GL_LUMINANCE4_ALPHA4_EXT 0x8043
-	GL_LUMINANCE6_ALPHA2_EXT 0x8044
-	GL_LUMINANCE8_ALPHA8_EXT 0x8045
-	GL_LUMINANCE12_ALPHA4_EXT 0x8046
-	GL_LUMINANCE12_ALPHA12_EXT 0x8047
-	GL_LUMINANCE16_ALPHA16_EXT 0x8048
-	GL_INTENSITY_EXT 0x8049
-	GL_INTENSITY4_EXT 0x804A
-	GL_INTENSITY8_EXT 0x804B
-	GL_INTENSITY12_EXT 0x804C
-	GL_INTENSITY16_EXT 0x804D
-	GL_RGB2_EXT 0x804E
-	GL_RGB4_EXT 0x804F
-	GL_RGB5_EXT 0x8050
-	GL_RGB8_EXT 0x8051
-	GL_RGB10_EXT 0x8052
-	GL_RGB12_EXT 0x8053
-	GL_RGB16_EXT 0x8054
-	GL_RGBA2_EXT 0x8055
-	GL_RGBA4_EXT 0x8056
-	GL_RGB5_A1_EXT 0x8057
-	GL_RGBA8_EXT 0x8058
-	GL_RGB10_A2_EXT 0x8059
-	GL_RGBA12_EXT 0x805A
-	GL_RGBA16_EXT 0x805B
-	GL_TEXTURE_RED_SIZE_EXT 0x805C
-	GL_TEXTURE_GREEN_SIZE_EXT 0x805D
-	GL_TEXTURE_BLUE_SIZE_EXT 0x805E
-	GL_TEXTURE_ALPHA_SIZE_EXT 0x805F
-	GL_TEXTURE_LUMINANCE_SIZE_EXT 0x8060
-	GL_TEXTURE_INTENSITY_SIZE_EXT 0x8061
-	GL_REPLACE_EXT 0x8062
-	GL_PROXY_TEXTURE_1D_EXT 0x8063
-	GL_PROXY_TEXTURE_2D_EXT 0x8064
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture3D b/src/other/glew/auto/extensions/GL_EXT_texture3D
deleted file mode 100644
index 5f248ba..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture3D
+++ /dev/null
@@ -1,13 +0,0 @@
-GL_EXT_texture3D
-http://www.opengl.org/registry/specs/EXT/texture3D.txt
-GL_EXT_texture3D
-	GL_PACK_SKIP_IMAGES_EXT 0x806B
-	GL_PACK_IMAGE_HEIGHT_EXT 0x806C
-	GL_UNPACK_SKIP_IMAGES_EXT 0x806D
-	GL_UNPACK_IMAGE_HEIGHT_EXT 0x806E
-	GL_TEXTURE_3D_EXT 0x806F
-	GL_PROXY_TEXTURE_3D_EXT 0x8070
-	GL_TEXTURE_DEPTH_EXT 0x8071
-	GL_TEXTURE_WRAP_R_EXT 0x8072
-	GL_MAX_3D_TEXTURE_SIZE_EXT 0x8073
-	void glTexImage3DEXT (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels)
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_array b/src/other/glew/auto/extensions/GL_EXT_texture_array
deleted file mode 100644
index f61e72e..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_array
+++ /dev/null
@@ -1,11 +0,0 @@
-GL_EXT_texture_array
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_array.txt
-GL_EXT_texture_array
-	GL_TEXTURE_1D_ARRAY_EXT 0x8C18
-	GL_PROXY_TEXTURE_1D_ARRAY_EXT 0x8C19
-	GL_TEXTURE_2D_ARRAY_EXT 0x8C1A
-	GL_PROXY_TEXTURE_2D_ARRAY_EXT 0x8C1B
-	GL_TEXTURE_BINDING_1D_ARRAY_EXT 0x8C1C
-	GL_TEXTURE_BINDING_2D_ARRAY_EXT 0x8C1D
-	GL_MAX_ARRAY_TEXTURE_LAYERS_EXT 0x88FF
-	GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT 0x884E
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_buffer_object b/src/other/glew/auto/extensions/GL_EXT_texture_buffer_object
deleted file mode 100644
index c00e1f3..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_buffer_object
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_EXT_texture_buffer_object
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_buffer_object.txt
-GL_EXT_texture_buffer_object
-	GL_TEXTURE_BUFFER_EXT 0x8C2A
-	GL_MAX_TEXTURE_BUFFER_SIZE_EXT 0x8C2B
-	GL_TEXTURE_BINDING_BUFFER_EXT 0x8C2C
-	GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT 0x8C2D
-	GL_TEXTURE_BUFFER_FORMAT_EXT 0x8C2E
-	void glTexBufferEXT (GLenum target, GLenum internalformat, GLuint buffer)
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_compression_dxt1 b/src/other/glew/auto/extensions/GL_EXT_texture_compression_dxt1
deleted file mode 100644
index 4e31f3d..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_compression_dxt1
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_texture_compression_dxt1
-http://www.opengl.org/registry/specs/EXT/texture_compression_dxt1.txt
-GL_EXT_texture_compression_dxt1
-	GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
-	GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_compression_latc b/src/other/glew/auto/extensions/GL_EXT_texture_compression_latc
deleted file mode 100644
index ddf8d26..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_compression_latc
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_texture_compression_latc
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_compression_latc.txt
-GL_EXT_texture_compression_latc
-	GL_COMPRESSED_LUMINANCE_LATC1_EXT 0x8C70
-	GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT 0x8C71
-	GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT 0x8C72
-	GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT 0x8C73
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_compression_rgtc b/src/other/glew/auto/extensions/GL_EXT_texture_compression_rgtc
deleted file mode 100644
index 7c5c57f..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_compression_rgtc
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_texture_compression_rgtc
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_compression_rgtc.txt
-GL_EXT_texture_compression_rgtc
-	GL_COMPRESSED_RED_RGTC1_EXT 0x8DBB
-	GL_COMPRESSED_SIGNED_RED_RGTC1_EXT 0x8DBC
-	GL_COMPRESSED_RED_GREEN_RGTC2_EXT 0x8DBD
-	GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT 0x8DBE
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_compression_s3tc b/src/other/glew/auto/extensions/GL_EXT_texture_compression_s3tc
deleted file mode 100644
index 6369ded..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_compression_s3tc
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_texture_compression_s3tc
-http://www.opengl.org/registry/specs/EXT/texture_compression_s3tc.txt
-GL_EXT_texture_compression_s3tc
-	GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
-	GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
-	GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
-	GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_cube_map b/src/other/glew/auto/extensions/GL_EXT_texture_cube_map
deleted file mode 100644
index 5909f48..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_cube_map
+++ /dev/null
@@ -1,15 +0,0 @@
-GL_EXT_texture_cube_map
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_texture_cube_map.txt
-GL_EXT_texture_cube_map
-	GL_NORMAL_MAP_EXT 0x8511
-	GL_REFLECTION_MAP_EXT 0x8512
-	GL_TEXTURE_CUBE_MAP_EXT 0x8513
-	GL_TEXTURE_BINDING_CUBE_MAP_EXT 0x8514
-	GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT 0x8515
-	GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT 0x8516
-	GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT 0x8517
-	GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT 0x8518
-	GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT 0x8519
-	GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT 0x851A
-	GL_PROXY_TEXTURE_CUBE_MAP_EXT 0x851B
-	GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT 0x851C
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_edge_clamp b/src/other/glew/auto/extensions/GL_EXT_texture_edge_clamp
deleted file mode 100644
index 4df0997..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_edge_clamp
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_EXT_texture_edge_clamp
-http://www.opengl.org/developers/documentation/Version1.2/1.2specs/texture_edge_clamp.txt
-GL_EXT_texture_edge_clamp
-	GL_CLAMP_TO_EDGE_EXT	0x812F
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_env b/src/other/glew/auto/extensions/GL_EXT_texture_env
deleted file mode 100644
index 73017c2..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_env
+++ /dev/null
@@ -1,14 +0,0 @@
-GL_EXT_texture_env
-http://www.opengl.org/registry/specs/EXT/texture_env.txt
-GL_EXT_texture_env
-	GL_TEXTURE_ENV0_EXT 0
-	GL_TEXTURE_ENV_SHIFT_EXT 0
-	GL_ENV_BLEND_EXT 0
-	GL_ENV_ADD_EXT 0
-	GL_ENV_REPLACE_EXT 0
-	GL_ENV_SUBTRACT_EXT 0
-	GL_TEXTURE_ENV_MODE_ALPHA_EXT 0
-	GL_ENV_REVERSE_BLEND_EXT 0
-	GL_ENV_REVERSE_SUBTRACT_EXT 0
-	GL_ENV_COPY_EXT 0
-	GL_ENV_MODULATE_EXT 0
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_env_add b/src/other/glew/auto/extensions/GL_EXT_texture_env_add
deleted file mode 100644
index 11eead6..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_env_add
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_EXT_texture_env_add
-http://www.opengl.org/registry/specs/EXT/texture_env_add.txt
-GL_EXT_texture_env_add
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_env_combine b/src/other/glew/auto/extensions/GL_EXT_texture_env_combine
deleted file mode 100644
index dda8891..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_env_combine
+++ /dev/null
@@ -1,24 +0,0 @@
-GL_EXT_texture_env_combine
-http://www.opengl.org/registry/specs/EXT/texture_env_combine.txt
-GL_EXT_texture_env_combine
-	GL_COMBINE_EXT 0x8570
-	GL_COMBINE_RGB_EXT 0x8571
-	GL_COMBINE_ALPHA_EXT 0x8572
-	GL_RGB_SCALE_EXT 0x8573
-	GL_ADD_SIGNED_EXT 0x8574
-	GL_INTERPOLATE_EXT 0x8575
-	GL_CONSTANT_EXT 0x8576
-	GL_PRIMARY_COLOR_EXT 0x8577
-	GL_PREVIOUS_EXT 0x8578
-	GL_SOURCE0_RGB_EXT 0x8580
-	GL_SOURCE1_RGB_EXT 0x8581
-	GL_SOURCE2_RGB_EXT 0x8582
-	GL_SOURCE0_ALPHA_EXT 0x8588
-	GL_SOURCE1_ALPHA_EXT 0x8589
-	GL_SOURCE2_ALPHA_EXT 0x858A
-	GL_OPERAND0_RGB_EXT 0x8590
-	GL_OPERAND1_RGB_EXT 0x8591
-	GL_OPERAND2_RGB_EXT 0x8592
-	GL_OPERAND0_ALPHA_EXT 0x8598
-	GL_OPERAND1_ALPHA_EXT 0x8599
-	GL_OPERAND2_ALPHA_EXT 0x859A
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_env_dot3 b/src/other/glew/auto/extensions/GL_EXT_texture_env_dot3
deleted file mode 100644
index 3b740d6..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_env_dot3
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_texture_env_dot3
-http://www.opengl.org/registry/specs/EXT/texture_env_dot3.txt
-GL_EXT_texture_env_dot3
-	GL_DOT3_RGB_EXT 0x8740
-	GL_DOT3_RGBA_EXT 0x8741
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_filter_anisotropic b/src/other/glew/auto/extensions/GL_EXT_texture_filter_anisotropic
deleted file mode 100644
index 1e4d780..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_filter_anisotropic
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_EXT_texture_filter_anisotropic
-http://www.opengl.org/registry/specs/EXT/texture_filter_anisotropic.txt
-GL_EXT_texture_filter_anisotropic
-	GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
-	GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_integer b/src/other/glew/auto/extensions/GL_EXT_texture_integer
deleted file mode 100644
index 1c57e40..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_integer
+++ /dev/null
@@ -1,56 +0,0 @@
-GL_EXT_texture_integer
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_integer.txt
-GL_EXT_texture_integer
-	GL_RGBA32UI_EXT 0x8D70
-	GL_RGB32UI_EXT 0x8D71
-	GL_ALPHA32UI_EXT 0x8D72
-	GL_INTENSITY32UI_EXT 0x8D73
-	GL_LUMINANCE32UI_EXT 0x8D74
-	GL_LUMINANCE_ALPHA32UI_EXT 0x8D75
-	GL_RGBA16UI_EXT 0x8D76
-	GL_RGB16UI_EXT 0x8D77
-	GL_ALPHA16UI_EXT 0x8D78
-	GL_INTENSITY16UI_EXT 0x8D79
-	GL_LUMINANCE16UI_EXT 0x8D7A
-	GL_LUMINANCE_ALPHA16UI_EXT 0x8D7B
-	GL_RGBA8UI_EXT 0x8D7C
-	GL_RGB8UI_EXT 0x8D7D
-	GL_ALPHA8UI_EXT 0x8D7E
-	GL_INTENSITY8UI_EXT 0x8D7F
-	GL_LUMINANCE8UI_EXT 0x8D80
-	GL_LUMINANCE_ALPHA8UI_EXT 0x8D81
-	GL_RGBA32I_EXT 0x8D82
-	GL_RGB32I_EXT 0x8D83
-	GL_ALPHA32I_EXT 0x8D84
-	GL_INTENSITY32I_EXT 0x8D85
-	GL_LUMINANCE32I_EXT 0x8D86
-	GL_LUMINANCE_ALPHA32I_EXT 0x8D87
-	GL_RGBA16I_EXT 0x8D88
-	GL_RGB16I_EXT 0x8D89
-	GL_ALPHA16I_EXT 0x8D8A
-	GL_INTENSITY16I_EXT 0x8D8B
-	GL_LUMINANCE16I_EXT 0x8D8C
-	GL_LUMINANCE_ALPHA16I_EXT 0x8D8D
-	GL_RGBA8I_EXT 0x8D8E
-	GL_RGB8I_EXT 0x8D8F
-	GL_ALPHA8I_EXT 0x8D90
-	GL_INTENSITY8I_EXT 0x8D91
-	GL_LUMINANCE8I_EXT 0x8D92
-	GL_LUMINANCE_ALPHA8I_EXT 0x8D93
-	GL_RED_INTEGER_EXT 0x8D94
-	GL_GREEN_INTEGER_EXT 0x8D95
-	GL_BLUE_INTEGER_EXT 0x8D96
-	GL_ALPHA_INTEGER_EXT 0x8D97
-	GL_RGB_INTEGER_EXT 0x8D98
-	GL_RGBA_INTEGER_EXT 0x8D99
-	GL_BGR_INTEGER_EXT 0x8D9A
-	GL_BGRA_INTEGER_EXT 0x8D9B
-	GL_LUMINANCE_INTEGER_EXT 0x8D9C
-	GL_LUMINANCE_ALPHA_INTEGER_EXT 0x8D9D
-	GL_RGBA_INTEGER_MODE_EXT 0x8D9E
-	void glTexParameterIivEXT (GLenum target, GLenum pname, const GLint *params)
-	void glTexParameterIuivEXT (GLenum target, GLenum pname, const GLuint *params)
-	void glGetTexParameterIivEXT (GLenum target, GLenum pname, GLint *params)
-	void glGetTexParameterIuivEXT (GLenum target, GLenum pname, GLuint *params)
-	void glClearColorIiEXT (GLint red, GLint green, GLint blue, GLint alpha)
-	void glClearColorIuiEXT (GLuint red, GLuint green, GLuint blue, GLuint alpha)
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_lod_bias b/src/other/glew/auto/extensions/GL_EXT_texture_lod_bias
deleted file mode 100644
index 2166126..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_lod_bias
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_texture_lod_bias
-http://www.opengl.org/registry/specs/EXT/texture_lod_bias.txt
-GL_EXT_texture_lod_bias
-	GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD
-	GL_TEXTURE_FILTER_CONTROL_EXT 0x8500
-	GL_TEXTURE_LOD_BIAS_EXT 0x8501
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_mirror_clamp b/src/other/glew/auto/extensions/GL_EXT_texture_mirror_clamp
deleted file mode 100644
index 6e3471c..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_mirror_clamp
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_texture_mirror_clamp
-http://www.opengl.org/registry/specs/EXT/texture_mirror_clamp.txt
-GL_EXT_texture_mirror_clamp
-	GL_MIRROR_CLAMP_EXT 0x8742
-	GL_MIRROR_CLAMP_TO_EDGE_EXT 0x8743
-	GL_MIRROR_CLAMP_TO_BORDER_EXT 0x8912
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_object b/src/other/glew/auto/extensions/GL_EXT_texture_object
deleted file mode 100644
index 13d4cde..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_object
+++ /dev/null
@@ -1,14 +0,0 @@
-GL_EXT_texture_object
-http://www.opengl.org/registry/specs/EXT/texture_object.txt
-GL_EXT_texture_object
-	GL_TEXTURE_PRIORITY_EXT 0x8066
-	GL_TEXTURE_RESIDENT_EXT 0x8067
-	GL_TEXTURE_1D_BINDING_EXT 0x8068
-	GL_TEXTURE_2D_BINDING_EXT 0x8069
-	GL_TEXTURE_3D_BINDING_EXT 0x806A
-	GLboolean glAreTexturesResidentEXT (GLsizei n, const GLuint* textures, GLboolean* residences)
-	void glBindTextureEXT (GLenum target, GLuint texture)
-	void glDeleteTexturesEXT (GLsizei n, const GLuint* textures)
-	void glGenTexturesEXT (GLsizei n, GLuint* textures)
-	GLboolean glIsTextureEXT (GLuint texture)
-	void glPrioritizeTexturesEXT (GLsizei n, const GLuint* textures, const GLclampf* priorities)
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_perturb_normal b/src/other/glew/auto/extensions/GL_EXT_texture_perturb_normal
deleted file mode 100644
index b852190..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_perturb_normal
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_texture_perturb_normal
-http://www.opengl.org/registry/specs/EXT/texture_perturb_normal.txt
-GL_EXT_texture_perturb_normal
-	GL_PERTURB_EXT 0x85AE
-	GL_TEXTURE_NORMAL_EXT 0x85AF
-	void glTextureNormalEXT (GLenum mode)
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_rectangle b/src/other/glew/auto/extensions/GL_EXT_texture_rectangle
deleted file mode 100644
index 4028a9e..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_rectangle
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_EXT_texture_rectangle
-http://developer.apple.com/opengl/extensions/ext_texture_rectangle.html
-GL_EXT_texture_rectangle
-	GL_TEXTURE_RECTANGLE_EXT 0x84F5
-	GL_TEXTURE_BINDING_RECTANGLE_EXT 0x84F6
-	GL_PROXY_TEXTURE_RECTANGLE_EXT 0x84F7
-	GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT 0x84F8
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_sRGB b/src/other/glew/auto/extensions/GL_EXT_texture_sRGB
deleted file mode 100644
index e38d9a9..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_sRGB
+++ /dev/null
@@ -1,19 +0,0 @@
-GL_EXT_texture_sRGB
-http://www.opengl.org/registry/specs/EXT/texture_sRGB.txt
-GL_EXT_texture_sRGB
-	GL_SRGB_EXT 0x8C40
-	GL_SRGB8_EXT 0x8C41
-	GL_SRGB_ALPHA_EXT 0x8C42
-	GL_SRGB8_ALPHA8_EXT 0x8C43
-	GL_SLUMINANCE_ALPHA_EXT 0x8C44
-	GL_SLUMINANCE8_ALPHA8_EXT 0x8C45
-	GL_SLUMINANCE_EXT 0x8C46
-	GL_SLUMINANCE8_EXT 0x8C47
-	GL_COMPRESSED_SRGB_EXT 0x8C48
-	GL_COMPRESSED_SRGB_ALPHA_EXT 0x8C49
-	GL_COMPRESSED_SLUMINANCE_EXT 0x8C4A
-	GL_COMPRESSED_SLUMINANCE_ALPHA_EXT 0x8C4B
-	GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C
-	GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D
-	GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
-	GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_shared_exponent b/src/other/glew/auto/extensions/GL_EXT_texture_shared_exponent
deleted file mode 100644
index 4ff7efc..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_shared_exponent
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_texture_shared_exponent
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_shared_exponent.txt
-GL_EXT_texture_shared_exponent
-	GL_RGB9_E5_EXT 0x8C3D
-	GL_UNSIGNED_INT_5_9_9_9_REV_EXT 0x8C3E
-	GL_TEXTURE_SHARED_SIZE_EXT 0x8C3F
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_snorm b/src/other/glew/auto/extensions/GL_EXT_texture_snorm
deleted file mode 100644
index 493a8be..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_snorm
+++ /dev/null
@@ -1,28 +0,0 @@
-GL_EXT_texture_snorm
-http://www.opengl.org/registry/specs/EXT/texture_snorm.txt
-GL_EXT_texture_snorm
-	GL_RED_SNORM 0x8F90
-	GL_RG_SNORM 0x8F91
-	GL_RGB_SNORM 0x8F92
-	GL_RGBA_SNORM 0x8F93
-	GL_R8_SNORM 0x8F94
-	GL_RG8_SNORM 0x8F95
-	GL_RGB8_SNORM 0x8F96
-	GL_RGBA8_SNORM 0x8F97
-	GL_R16_SNORM 0x8F98
-	GL_RG16_SNORM 0x8F99
-	GL_RGB16_SNORM 0x8F9A
-	GL_RGBA16_SNORM 0x8F9B
-	GL_SIGNED_NORMALIZED 0x8F9C
-	GL_ALPHA_SNORM 0x9010
-	GL_LUMINANCE_SNORM 0x9011
-	GL_LUMINANCE_ALPHA_SNORM 0x9012
-	GL_INTENSITY_SNORM 0x9013
-	GL_ALPHA8_SNORM 0x9014
-	GL_LUMINANCE8_SNORM 0x9015
-	GL_LUMINANCE8_ALPHA8_SNORM 0x9016
-	GL_INTENSITY8_SNORM 0x9017
-	GL_ALPHA16_SNORM 0x9018
-	GL_LUMINANCE16_SNORM 0x9019
-	GL_LUMINANCE16_ALPHA16_SNORM 0x901A
-	GL_INTENSITY16_SNORM 0x901B
diff --git a/src/other/glew/auto/extensions/GL_EXT_texture_swizzle b/src/other/glew/auto/extensions/GL_EXT_texture_swizzle
deleted file mode 100644
index 2d2884b..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_texture_swizzle
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_EXT_texture_swizzle
-http://www.opengl.org/registry/specs/EXT/texture_swizzle.txt
-GL_EXT_texture_swizzle
-	GL_TEXTURE_SWIZZLE_R_EXT 0x8E42
-	GL_TEXTURE_SWIZZLE_G_EXT 0x8E43
-	GL_TEXTURE_SWIZZLE_B_EXT 0x8E44
-	GL_TEXTURE_SWIZZLE_A_EXT 0x8E45
-	GL_TEXTURE_SWIZZLE_RGBA_EXT 0x8E46
diff --git a/src/other/glew/auto/extensions/GL_EXT_timer_query b/src/other/glew/auto/extensions/GL_EXT_timer_query
deleted file mode 100644
index 390e6fc..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_timer_query
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_EXT_timer_query
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_timer_query.txt
-GL_EXT_timer_query
-	GL_TIME_ELAPSED_EXT 0x88BF
-	void glGetQueryObjecti64vEXT (GLuint id, GLenum pname, GLint64EXT *params)
-	void glGetQueryObjectui64vEXT (GLuint id, GLenum pname, GLuint64EXT *params)
diff --git a/src/other/glew/auto/extensions/GL_EXT_transform_feedback b/src/other/glew/auto/extensions/GL_EXT_transform_feedback
deleted file mode 100644
index 72ae6fd..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_transform_feedback
+++ /dev/null
@@ -1,25 +0,0 @@
-GL_EXT_transform_feedback
-http://www.opengl.org/registry/specs/EXT/transform_feedback.txt
-GL_EXT_transform_feedback
-	GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT 0x8C76
-	GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT 0x8C7F
-	GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT 0x8C80
-	GL_TRANSFORM_FEEDBACK_VARYINGS_EXT 0x8C83
-	GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT 0x8C84
-	GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT 0x8C85
-	GL_PRIMITIVES_GENERATED_EXT 0x8C87
-	GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT 0x8C88
-	GL_RASTERIZER_DISCARD_EXT 0x8C89
-	GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT 0x8C8A
-	GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT 0x8C8B
-	GL_INTERLEAVED_ATTRIBS_EXT 0x8C8C
-	GL_SEPARATE_ATTRIBS_EXT 0x8C8D
-	GL_TRANSFORM_FEEDBACK_BUFFER_EXT 0x8C8E
-	GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT 0x8C8F
-	void glBeginTransformFeedbackEXT (GLenum primitiveMode)
-	void glBindBufferBaseEXT (GLenum target, GLuint index, GLuint buffer)
-	void glBindBufferOffsetEXT (GLenum target, GLuint index, GLuint buffer, GLintptr offset)
-	void glBindBufferRangeEXT (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
-	void glEndTransformFeedbackEXT (void)
-	void glGetTransformFeedbackVaryingEXT (GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei *size, GLenum *type, char *name)
-	void glTransformFeedbackVaryingsEXT (GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode)
diff --git a/src/other/glew/auto/extensions/GL_EXT_vertex_array b/src/other/glew/auto/extensions/GL_EXT_vertex_array
deleted file mode 100644
index 43bbe30..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_vertex_array
+++ /dev/null
@@ -1,45 +0,0 @@
-GL_EXT_vertex_array
-http://www.opengl.org/registry/specs/EXT/vertex_array.txt
-GL_EXT_vertex_array
-	GL_DOUBLE_EXT 0x140A
-	GL_VERTEX_ARRAY_EXT 0x8074
-	GL_NORMAL_ARRAY_EXT 0x8075
-	GL_COLOR_ARRAY_EXT 0x8076
-	GL_INDEX_ARRAY_EXT 0x8077
-	GL_TEXTURE_COORD_ARRAY_EXT 0x8078
-	GL_EDGE_FLAG_ARRAY_EXT 0x8079
-	GL_VERTEX_ARRAY_SIZE_EXT 0x807A
-	GL_VERTEX_ARRAY_TYPE_EXT 0x807B
-	GL_VERTEX_ARRAY_STRIDE_EXT 0x807C
-	GL_VERTEX_ARRAY_COUNT_EXT 0x807D
-	GL_NORMAL_ARRAY_TYPE_EXT 0x807E
-	GL_NORMAL_ARRAY_STRIDE_EXT 0x807F
-	GL_NORMAL_ARRAY_COUNT_EXT 0x8080
-	GL_COLOR_ARRAY_SIZE_EXT 0x8081
-	GL_COLOR_ARRAY_TYPE_EXT 0x8082
-	GL_COLOR_ARRAY_STRIDE_EXT 0x8083
-	GL_COLOR_ARRAY_COUNT_EXT 0x8084
-	GL_INDEX_ARRAY_TYPE_EXT 0x8085
-	GL_INDEX_ARRAY_STRIDE_EXT 0x8086
-	GL_INDEX_ARRAY_COUNT_EXT 0x8087
-	GL_TEXTURE_COORD_ARRAY_SIZE_EXT 0x8088
-	GL_TEXTURE_COORD_ARRAY_TYPE_EXT 0x8089
-	GL_TEXTURE_COORD_ARRAY_STRIDE_EXT 0x808A
-	GL_TEXTURE_COORD_ARRAY_COUNT_EXT 0x808B
-	GL_EDGE_FLAG_ARRAY_STRIDE_EXT 0x808C
-	GL_EDGE_FLAG_ARRAY_COUNT_EXT 0x808D
-	GL_VERTEX_ARRAY_POINTER_EXT 0x808E
-	GL_NORMAL_ARRAY_POINTER_EXT 0x808F
-	GL_COLOR_ARRAY_POINTER_EXT 0x8090
-	GL_INDEX_ARRAY_POINTER_EXT 0x8091
-	GL_TEXTURE_COORD_ARRAY_POINTER_EXT 0x8092
-	GL_EDGE_FLAG_ARRAY_POINTER_EXT 0x8093
-	void glArrayElementEXT (GLint i)
-	void glColorPointerEXT (GLint size, GLenum type, GLsizei stride, GLsizei count, const void* pointer)
-	void glDrawArraysEXT (GLenum mode, GLint first, GLsizei count)
-	void glEdgeFlagPointerEXT (GLsizei stride, GLsizei count, const GLboolean* pointer)
-	void glGetPointervEXT (GLenum pname, void** params)
-	void glIndexPointerEXT (GLenum type, GLsizei stride, GLsizei count, const void* pointer)
-	void glNormalPointerEXT (GLenum type, GLsizei stride, GLsizei count, const void* pointer)
-	void glTexCoordPointerEXT (GLint size, GLenum type, GLsizei stride, GLsizei count, const void* pointer)
-	void glVertexPointerEXT (GLint size, GLenum type, GLsizei stride, GLsizei count, const void* pointer)
diff --git a/src/other/glew/auto/extensions/GL_EXT_vertex_array_bgra b/src/other/glew/auto/extensions/GL_EXT_vertex_array_bgra
deleted file mode 100644
index ea2f99b..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_vertex_array_bgra
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_EXT_vertex_array_bgra
-http://www.opengl.org/registry/specs/EXT/vertex_array_bgra.txt
-GL_EXT_vertex_array_bgra
-	GL_BGRA 0x80E1
diff --git a/src/other/glew/auto/extensions/GL_EXT_vertex_attrib_64bit b/src/other/glew/auto/extensions/GL_EXT_vertex_attrib_64bit
deleted file mode 100644
index 4773342..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_vertex_attrib_64bit
+++ /dev/null
@@ -1,20 +0,0 @@
-GL_EXT_vertex_attrib_64bit
-http://www.opengl.org/registry/specs/EXT/vertex_attrib_64bit.txt
-GL_EXT_vertex_attrib_64bit
-	GL_DOUBLE_MAT2_EXT 0x8F46
-	GL_DOUBLE_MAT3_EXT 0x8F47
-	GL_DOUBLE_MAT4_EXT 0x8F48
-	GL_DOUBLE_VEC2_EXT 0x8FFC
-	GL_DOUBLE_VEC3_EXT 0x8FFD
-	GL_DOUBLE_VEC4_EXT 0x8FFE
-	void glGetVertexAttribLdvEXT (GLuint index, GLenum pname, GLdouble* params)
-	void glVertexArrayVertexAttribLOffsetEXT (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset)
-	void glVertexAttribL1dEXT (GLuint index, GLdouble x)
-	void glVertexAttribL1dvEXT (GLuint index, const GLdouble* v)
-	void glVertexAttribL2dEXT (GLuint index, GLdouble x, GLdouble y)
-	void glVertexAttribL2dvEXT (GLuint index, const GLdouble* v)
-	void glVertexAttribL3dEXT (GLuint index, GLdouble x, GLdouble y, GLdouble z)
-	void glVertexAttribL3dvEXT (GLuint index, const GLdouble* v)
-	void glVertexAttribL4dEXT (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-	void glVertexAttribL4dvEXT (GLuint index, const GLdouble* v)
-	void glVertexAttribLPointerEXT (GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer)
diff --git a/src/other/glew/auto/extensions/GL_EXT_vertex_shader b/src/other/glew/auto/extensions/GL_EXT_vertex_shader
deleted file mode 100644
index eb125b6..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_vertex_shader
+++ /dev/null
@@ -1,156 +0,0 @@
-GL_EXT_vertex_shader
-http://oss.sgi.com/projects/ogl-sample/registry/EXT/vertex_shader.txt
-GL_EXT_vertex_shader
-	GL_VERTEX_SHADER_EXT 0x8780
-	GL_VERTEX_SHADER_BINDING_EXT 0x8781
-	GL_OP_INDEX_EXT 0x8782
-	GL_OP_NEGATE_EXT 0x8783
-	GL_OP_DOT3_EXT 0x8784
-	GL_OP_DOT4_EXT 0x8785
-	GL_OP_MUL_EXT 0x8786
-	GL_OP_ADD_EXT 0x8787
-	GL_OP_MADD_EXT 0x8788
-	GL_OP_FRAC_EXT 0x8789
-	GL_OP_MAX_EXT 0x878A
-	GL_OP_MIN_EXT 0x878B
-	GL_OP_SET_GE_EXT 0x878C
-	GL_OP_SET_LT_EXT 0x878D
-	GL_OP_CLAMP_EXT 0x878E
-	GL_OP_FLOOR_EXT 0x878F
-	GL_OP_ROUND_EXT 0x8790
-	GL_OP_EXP_BASE_2_EXT 0x8791
-	GL_OP_LOG_BASE_2_EXT 0x8792
-	GL_OP_POWER_EXT 0x8793
-	GL_OP_RECIP_EXT 0x8794
-	GL_OP_RECIP_SQRT_EXT 0x8795
-	GL_OP_SUB_EXT 0x8796
-	GL_OP_CROSS_PRODUCT_EXT 0x8797
-	GL_OP_MULTIPLY_MATRIX_EXT 0x8798
-	GL_OP_MOV_EXT 0x8799
-	GL_OUTPUT_VERTEX_EXT 0x879A
-	GL_OUTPUT_COLOR0_EXT 0x879B
-	GL_OUTPUT_COLOR1_EXT 0x879C
-	GL_OUTPUT_TEXTURE_COORD0_EXT 0x879D
-	GL_OUTPUT_TEXTURE_COORD1_EXT 0x879E
-	GL_OUTPUT_TEXTURE_COORD2_EXT 0x879F
-	GL_OUTPUT_TEXTURE_COORD3_EXT 0x87A0
-	GL_OUTPUT_TEXTURE_COORD4_EXT 0x87A1
-	GL_OUTPUT_TEXTURE_COORD5_EXT 0x87A2
-	GL_OUTPUT_TEXTURE_COORD6_EXT 0x87A3
-	GL_OUTPUT_TEXTURE_COORD7_EXT 0x87A4
-	GL_OUTPUT_TEXTURE_COORD8_EXT 0x87A5
-	GL_OUTPUT_TEXTURE_COORD9_EXT 0x87A6
-	GL_OUTPUT_TEXTURE_COORD10_EXT 0x87A7
-	GL_OUTPUT_TEXTURE_COORD11_EXT 0x87A8
-	GL_OUTPUT_TEXTURE_COORD12_EXT 0x87A9
-	GL_OUTPUT_TEXTURE_COORD13_EXT 0x87AA
-	GL_OUTPUT_TEXTURE_COORD14_EXT 0x87AB
-	GL_OUTPUT_TEXTURE_COORD15_EXT 0x87AC
-	GL_OUTPUT_TEXTURE_COORD16_EXT 0x87AD
-	GL_OUTPUT_TEXTURE_COORD17_EXT 0x87AE
-	GL_OUTPUT_TEXTURE_COORD18_EXT 0x87AF
-	GL_OUTPUT_TEXTURE_COORD19_EXT 0x87B0
-	GL_OUTPUT_TEXTURE_COORD20_EXT 0x87B1
-	GL_OUTPUT_TEXTURE_COORD21_EXT 0x87B2
-	GL_OUTPUT_TEXTURE_COORD22_EXT 0x87B3
-	GL_OUTPUT_TEXTURE_COORD23_EXT 0x87B4
-	GL_OUTPUT_TEXTURE_COORD24_EXT 0x87B5
-	GL_OUTPUT_TEXTURE_COORD25_EXT 0x87B6
-	GL_OUTPUT_TEXTURE_COORD26_EXT 0x87B7
-	GL_OUTPUT_TEXTURE_COORD27_EXT 0x87B8
-	GL_OUTPUT_TEXTURE_COORD28_EXT 0x87B9
-	GL_OUTPUT_TEXTURE_COORD29_EXT 0x87BA
-	GL_OUTPUT_TEXTURE_COORD30_EXT 0x87BB
-	GL_OUTPUT_TEXTURE_COORD31_EXT 0x87BC
-	GL_OUTPUT_FOG_EXT 0x87BD
-	GL_SCALAR_EXT 0x87BE
-	GL_VECTOR_EXT 0x87BF
-	GL_MATRIX_EXT 0x87C0
-	GL_VARIANT_EXT 0x87C1
-	GL_INVARIANT_EXT 0x87C2
-	GL_LOCAL_CONSTANT_EXT 0x87C3
-	GL_LOCAL_EXT 0x87C4
-	GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87C5
-	GL_MAX_VERTEX_SHADER_VARIANTS_EXT 0x87C6
-	GL_MAX_VERTEX_SHADER_INVARIANTS_EXT 0x87C7
-	GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87C8
-	GL_MAX_VERTEX_SHADER_LOCALS_EXT 0x87C9
-	GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CA
-	GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT 0x87CB
-	GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT 0x87CC
-	GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87CD
-	GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT 0x87CE
-	GL_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CF
-	GL_VERTEX_SHADER_VARIANTS_EXT 0x87D0
-	GL_VERTEX_SHADER_INVARIANTS_EXT 0x87D1
-	GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87D2
-	GL_VERTEX_SHADER_LOCALS_EXT 0x87D3
-	GL_VERTEX_SHADER_OPTIMIZED_EXT 0x87D4
-	GL_X_EXT 0x87D5
-	GL_Y_EXT 0x87D6
-	GL_Z_EXT 0x87D7
-	GL_W_EXT 0x87D8
-	GL_NEGATIVE_X_EXT 0x87D9
-	GL_NEGATIVE_Y_EXT 0x87DA
-	GL_NEGATIVE_Z_EXT 0x87DB
-	GL_NEGATIVE_W_EXT 0x87DC
-	GL_ZERO_EXT 0x87DD
-	GL_ONE_EXT 0x87DE
-	GL_NEGATIVE_ONE_EXT 0x87DF
-	GL_NORMALIZED_RANGE_EXT 0x87E0
-	GL_FULL_RANGE_EXT 0x87E1
-	GL_CURRENT_VERTEX_EXT 0x87E2
-	GL_MVP_MATRIX_EXT 0x87E3
-	GL_VARIANT_VALUE_EXT 0x87E4
-	GL_VARIANT_DATATYPE_EXT 0x87E5
-	GL_VARIANT_ARRAY_STRIDE_EXT 0x87E6
-	GL_VARIANT_ARRAY_TYPE_EXT 0x87E7
-	GL_VARIANT_ARRAY_EXT 0x87E8
-	GL_VARIANT_ARRAY_POINTER_EXT 0x87E9
-	GL_INVARIANT_VALUE_EXT 0x87EA
-	GL_INVARIANT_DATATYPE_EXT 0x87EB
-	GL_LOCAL_CONSTANT_VALUE_EXT 0x87EC
-	GL_LOCAL_CONSTANT_DATATYPE_EXT 0x87ED
-
-	void glBeginVertexShaderEXT (void)
-	void glEndVertexShaderEXT (void)
-	void glBindVertexShaderEXT (GLuint id)
-	GLuint glGenVertexShadersEXT (GLuint range)
-	void glDeleteVertexShaderEXT (GLuint id)
-	void glShaderOp1EXT (GLenum op, GLuint res, GLuint arg1)
-	void glShaderOp2EXT (GLenum op, GLuint res, GLuint arg1, GLuint arg2)
-	void glShaderOp3EXT (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3)
-	void glSwizzleEXT (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW)
-	void glWriteMaskEXT (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW)
-	void glInsertComponentEXT (GLuint res, GLuint src, GLuint num)
-	void glExtractComponentEXT (GLuint res, GLuint src, GLuint num)
-	GLuint glGenSymbolsEXT (GLenum dataType, GLenum storageType, GLenum range, GLuint components)
-	void glSetInvariantEXT (GLuint id, GLenum type, GLvoid *addr)
-	void glSetLocalConstantEXT (GLuint id, GLenum type, GLvoid *addr)
-	void glVariantbvEXT (GLuint id, GLbyte *addr)
-	void glVariantsvEXT (GLuint id, GLshort *addr)
-	void glVariantivEXT (GLuint id, GLint *addr)
-	void glVariantfvEXT (GLuint id, GLfloat *addr)
-	void glVariantdvEXT (GLuint id, GLdouble *addr)
-	void glVariantubvEXT (GLuint id, GLubyte *addr)
-	void glVariantusvEXT (GLuint id, GLushort *addr)
-	void glVariantuivEXT (GLuint id, GLuint *addr)
-	void glVariantPointerEXT (GLuint id, GLenum type, GLuint stride, GLvoid *addr)
-	void glEnableVariantClientStateEXT (GLuint id)
-	void glDisableVariantClientStateEXT (GLuint id)
-	GLuint glBindLightParameterEXT (GLenum light, GLenum value)
-	GLuint glBindMaterialParameterEXT (GLenum face, GLenum value)
-	GLuint glBindTexGenParameterEXT (GLenum unit, GLenum coord, GLenum value)
-	GLuint glBindTextureUnitParameterEXT (GLenum unit, GLenum value)
-	GLuint glBindParameterEXT (GLenum value)
-	GLboolean glIsVariantEnabledEXT (GLuint id, GLenum cap)
-	void glGetVariantBooleanvEXT (GLuint id, GLenum value, GLboolean *data)
-	void glGetVariantIntegervEXT (GLuint id, GLenum value, GLint *data)
-	void glGetVariantFloatvEXT (GLuint id, GLenum value, GLfloat *data)
-	void glGetVariantPointervEXT (GLuint id, GLenum value, GLvoid **data)
-	void glGetInvariantBooleanvEXT (GLuint id, GLenum value, GLboolean *data)
-	void glGetInvariantIntegervEXT (GLuint id, GLenum value, GLint *data)
-	void glGetInvariantFloatvEXT (GLuint id, GLenum value, GLfloat *data)
-	void glGetLocalConstantBooleanvEXT (GLuint id, GLenum value, GLboolean *data)
-	void glGetLocalConstantIntegervEXT (GLuint id, GLenum value, GLint *data)
-	void glGetLocalConstantFloatvEXT (GLuint id, GLenum value, GLfloat *data)
diff --git a/src/other/glew/auto/extensions/GL_EXT_vertex_weighting b/src/other/glew/auto/extensions/GL_EXT_vertex_weighting
deleted file mode 100644
index 7a5a0f0..0000000
--- a/src/other/glew/auto/extensions/GL_EXT_vertex_weighting
+++ /dev/null
@@ -1,19 +0,0 @@
-GL_EXT_vertex_weighting
-http://www.opengl.org/registry/specs/EXT/vertex_weighting.txt
-GL_EXT_vertex_weighting
-	GL_MODELVIEW0_STACK_DEPTH_EXT 0x0BA3
-	GL_MODELVIEW0_MATRIX_EXT 0x0BA6
-	GL_MODELVIEW0_EXT 0x1700
-	GL_MODELVIEW1_STACK_DEPTH_EXT 0x8502
-	GL_MODELVIEW1_MATRIX_EXT 0x8506
-	GL_VERTEX_WEIGHTING_EXT 0x8509
-	GL_MODELVIEW1_EXT 0x850A
-	GL_CURRENT_VERTEX_WEIGHT_EXT 0x850B
-	GL_VERTEX_WEIGHT_ARRAY_EXT 0x850C
-	GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT 0x850D
-	GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT 0x850E
-	GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT 0x850F
-	GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT 0x8510
-	void glVertexWeightPointerEXT (GLint size, GLenum type, GLsizei stride, void* pointer)
-	void glVertexWeightfEXT (GLfloat weight)
-	void glVertexWeightfvEXT (GLfloat* weight)
diff --git a/src/other/glew/auto/extensions/GL_GREMEDY_frame_terminator b/src/other/glew/auto/extensions/GL_GREMEDY_frame_terminator
deleted file mode 100644
index 2832f55..0000000
--- a/src/other/glew/auto/extensions/GL_GREMEDY_frame_terminator
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_GREMEDY_frame_terminator
-http://www.opengl.org/registry/specs/GREMEDY/frame_terminator.txt
-GL_GREMEDY_frame_terminator
-	void glFrameTerminatorGREMEDY (void)
diff --git a/src/other/glew/auto/extensions/GL_GREMEDY_string_marker b/src/other/glew/auto/extensions/GL_GREMEDY_string_marker
deleted file mode 100644
index 34f07f9..0000000
--- a/src/other/glew/auto/extensions/GL_GREMEDY_string_marker
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_GREMEDY_string_marker
-http://www.opengl.org/registry/specs/GREMEDY/string_marker.txt
-GL_GREMEDY_string_marker
-	void glStringMarkerGREMEDY (GLsizei len, const void* string)
diff --git a/src/other/glew/auto/extensions/GL_HP_convolution_border_modes b/src/other/glew/auto/extensions/GL_HP_convolution_border_modes
deleted file mode 100644
index cfcdca0..0000000
--- a/src/other/glew/auto/extensions/GL_HP_convolution_border_modes
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_HP_convolution_border_modes
-http://www.opengl.org/registry/specs/HP/convolution_border_modes.txt
-GL_HP_convolution_border_modes
diff --git a/src/other/glew/auto/extensions/GL_HP_image_transform b/src/other/glew/auto/extensions/GL_HP_image_transform
deleted file mode 100644
index c184239..0000000
--- a/src/other/glew/auto/extensions/GL_HP_image_transform
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_HP_image_transform
-http://www.opengl.org/registry/specs/HP/image_transform.txt
-GL_HP_image_transform
-	void glGetImageTransformParameterfvHP (GLenum target, GLenum pname, const GLfloat* params)
-	void glGetImageTransformParameterivHP (GLenum target, GLenum pname, const GLint* params)
-	void glImageTransformParameterfHP (GLenum target, GLenum pname, const GLfloat param)
-	void glImageTransformParameterfvHP (GLenum target, GLenum pname, const GLfloat* params)
-	void glImageTransformParameteriHP (GLenum target, GLenum pname, const GLint param)
-	void glImageTransformParameterivHP (GLenum target, GLenum pname, const GLint* params)
diff --git a/src/other/glew/auto/extensions/GL_HP_occlusion_test b/src/other/glew/auto/extensions/GL_HP_occlusion_test
deleted file mode 100644
index f3e091e..0000000
--- a/src/other/glew/auto/extensions/GL_HP_occlusion_test
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_HP_occlusion_test
-http://www.opengl.org/registry/specs/HP/occlusion_test.txt
-GL_HP_occlusion_test
-	GL_OCCLUSION_TEST_RESULT_HP 0x8166
-	GL_OCCLUSION_TEST_HP 0x8165
diff --git a/src/other/glew/auto/extensions/GL_HP_texture_lighting b/src/other/glew/auto/extensions/GL_HP_texture_lighting
deleted file mode 100644
index d5d3f73..0000000
--- a/src/other/glew/auto/extensions/GL_HP_texture_lighting
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_HP_texture_lighting
-http://www.opengl.org/registry/specs/HP/texture_lighting.txt
-GL_HP_texture_lighting
diff --git a/src/other/glew/auto/extensions/GL_IBM_cull_vertex b/src/other/glew/auto/extensions/GL_IBM_cull_vertex
deleted file mode 100644
index 1b9c4d2..0000000
--- a/src/other/glew/auto/extensions/GL_IBM_cull_vertex
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_IBM_cull_vertex
-http://www.opengl.org/registry/specs/IBM/cull_vertex.txt
-GL_IBM_cull_vertex
-	GL_CULL_VERTEX_IBM 103050
diff --git a/src/other/glew/auto/extensions/GL_IBM_multimode_draw_arrays b/src/other/glew/auto/extensions/GL_IBM_multimode_draw_arrays
deleted file mode 100644
index be45e8c..0000000
--- a/src/other/glew/auto/extensions/GL_IBM_multimode_draw_arrays
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_IBM_multimode_draw_arrays
-http://www.opengl.org/registry/specs/IBM/multimode_draw_arrays.txt
-GL_IBM_multimode_draw_arrays
-	void glMultiModeDrawArraysIBM (const GLenum* mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride)
-	void glMultiModeDrawElementsIBM (const GLenum* mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride)
diff --git a/src/other/glew/auto/extensions/GL_IBM_rasterpos_clip b/src/other/glew/auto/extensions/GL_IBM_rasterpos_clip
deleted file mode 100644
index b219297..0000000
--- a/src/other/glew/auto/extensions/GL_IBM_rasterpos_clip
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_IBM_rasterpos_clip
-http://www.opengl.org/registry/specs/IBM/rasterpos_clip.txt
-GL_IBM_rasterpos_clip
-	GL_RASTER_POSITION_UNCLIPPED_IBM 103010
diff --git a/src/other/glew/auto/extensions/GL_IBM_static_data b/src/other/glew/auto/extensions/GL_IBM_static_data
deleted file mode 100644
index b31f7f9..0000000
--- a/src/other/glew/auto/extensions/GL_IBM_static_data
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_IBM_static_data
-http://www.opengl.org/registry/specs/IBM/static_data.txt
-GL_IBM_static_data
-	GL_ALL_STATIC_DATA_IBM 103060
-	GL_STATIC_VERTEX_ARRAY_IBM 103061
diff --git a/src/other/glew/auto/extensions/GL_IBM_texture_mirrored_repeat b/src/other/glew/auto/extensions/GL_IBM_texture_mirrored_repeat
deleted file mode 100644
index bf41e8e..0000000
--- a/src/other/glew/auto/extensions/GL_IBM_texture_mirrored_repeat
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_IBM_texture_mirrored_repeat
-http://www.opengl.org/registry/specs/IBM/texture_mirrored_repeat.txt
-GL_IBM_texture_mirrored_repeat
-	GL_MIRRORED_REPEAT_IBM 0x8370
diff --git a/src/other/glew/auto/extensions/GL_IBM_vertex_array_lists b/src/other/glew/auto/extensions/GL_IBM_vertex_array_lists
deleted file mode 100644
index a03313c..0000000
--- a/src/other/glew/auto/extensions/GL_IBM_vertex_array_lists
+++ /dev/null
@@ -1,27 +0,0 @@
-GL_IBM_vertex_array_lists
-http://www.opengl.org/registry/specs/IBM/vertex_array_lists.txt
-GL_IBM_vertex_array_lists
-	GL_VERTEX_ARRAY_LIST_IBM 103070
-	GL_NORMAL_ARRAY_LIST_IBM 103071
-	GL_COLOR_ARRAY_LIST_IBM 103072
-	GL_INDEX_ARRAY_LIST_IBM 103073
-	GL_TEXTURE_COORD_ARRAY_LIST_IBM 103074
-	GL_EDGE_FLAG_ARRAY_LIST_IBM 103075
-	GL_FOG_COORDINATE_ARRAY_LIST_IBM 103076
-	GL_SECONDARY_COLOR_ARRAY_LIST_IBM 103077
-	GL_VERTEX_ARRAY_LIST_STRIDE_IBM 103080
-	GL_NORMAL_ARRAY_LIST_STRIDE_IBM 103081
-	GL_COLOR_ARRAY_LIST_STRIDE_IBM 103082
-	GL_INDEX_ARRAY_LIST_STRIDE_IBM 103083
-	GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM 103084
-	GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM 103085
-	GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM 103086
-	GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM 103087
-	void glColorPointerListIBM (GLint size, GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride)
-	void glEdgeFlagPointerListIBM (GLint stride, const GLboolean ** pointer, GLint ptrstride)
-	void glFogCoordPointerListIBM (GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride)
-	void glIndexPointerListIBM (GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride)
-	void glNormalPointerListIBM (GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride)
-	void glSecondaryColorPointerListIBM (GLint size, GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride)
-	void glTexCoordPointerListIBM (GLint size, GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride)
-	void glVertexPointerListIBM (GLint size, GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride)
diff --git a/src/other/glew/auto/extensions/GL_INGR_color_clamp b/src/other/glew/auto/extensions/GL_INGR_color_clamp
deleted file mode 100644
index 15d27ef..0000000
--- a/src/other/glew/auto/extensions/GL_INGR_color_clamp
+++ /dev/null
@@ -1,11 +0,0 @@
-GL_INGR_color_clamp
-http://www.opengl.org/registry/specs/INGR/color_clamp.txt
-GL_INGR_color_clamp
-	GL_RED_MIN_CLAMP_INGR 0x8560
-	GL_GREEN_MIN_CLAMP_INGR 0x8561
-	GL_BLUE_MIN_CLAMP_INGR 0x8562
-	GL_ALPHA_MIN_CLAMP_INGR 0x8563
-	GL_RED_MAX_CLAMP_INGR 0x8564
-	GL_GREEN_MAX_CLAMP_INGR 0x8565
-	GL_BLUE_MAX_CLAMP_INGR 0x8566
-	GL_ALPHA_MAX_CLAMP_INGR 0x8567
diff --git a/src/other/glew/auto/extensions/GL_INGR_interlace_read b/src/other/glew/auto/extensions/GL_INGR_interlace_read
deleted file mode 100644
index 0523564..0000000
--- a/src/other/glew/auto/extensions/GL_INGR_interlace_read
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_INGR_interlace_read
-http://www.opengl.org/registry/specs/INGR/interlace_read.txt
-GL_INGR_interlace_read
-	GL_INTERLACE_READ_INGR 0x8568
diff --git a/src/other/glew/auto/extensions/GL_INTEL_parallel_arrays b/src/other/glew/auto/extensions/GL_INTEL_parallel_arrays
deleted file mode 100644
index 925a619..0000000
--- a/src/other/glew/auto/extensions/GL_INTEL_parallel_arrays
+++ /dev/null
@@ -1,12 +0,0 @@
-GL_INTEL_parallel_arrays
-http://www.opengl.org/registry/specs/INTEL/parallel_arrays.txt
-GL_INTEL_parallel_arrays
-	GL_PARALLEL_ARRAYS_INTEL 0x83F4
-	GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL 0x83F5
-	GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL 0x83F6
-	GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL 0x83F7
-	GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL 0x83F8
-	void glColorPointervINTEL (GLint size, GLenum type, const void** pointer)
-	void glNormalPointervINTEL (GLenum type, const void** pointer)
-	void glTexCoordPointervINTEL (GLint size, GLenum type, const void** pointer)
-	void glVertexPointervINTEL (GLint size, GLenum type, const void** pointer)
diff --git a/src/other/glew/auto/extensions/GL_INTEL_texture_scissor b/src/other/glew/auto/extensions/GL_INTEL_texture_scissor
deleted file mode 100644
index 732944b..0000000
--- a/src/other/glew/auto/extensions/GL_INTEL_texture_scissor
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_INTEL_texture_scissor
-http://www.opengl.org/registry/specs/INTEL/texture_scissor.txt
-GL_INTEL_texture_scissor
-	void glTexScissorFuncINTEL (GLenum target, GLenum lfunc, GLenum hfunc)
-	void glTexScissorINTEL (GLenum target, GLclampf tlow, GLclampf thigh)
diff --git a/src/other/glew/auto/extensions/GL_KTX_buffer_region b/src/other/glew/auto/extensions/GL_KTX_buffer_region
deleted file mode 100644
index 22a59d3..0000000
--- a/src/other/glew/auto/extensions/GL_KTX_buffer_region
+++ /dev/null
@@ -1,12 +0,0 @@
-GL_KTX_buffer_region
-
-GL_KTX_buffer_region
-	GL_KTX_FRONT_REGION 0x0
-	GL_KTX_BACK_REGION 0x1
-	GL_KTX_Z_REGION 0x2
-	GL_KTX_STENCIL_REGION 0x3
-	GLuint glBufferRegionEnabledEXT (void)
-	GLuint glNewBufferRegionEXT (GLenum region)
-	void glDeleteBufferRegionEXT (GLenum region)
-	void glReadBufferRegionEXT (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height)
-	void glDrawBufferRegionEXT (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height, GLint xDest, GLint yDest)
diff --git a/src/other/glew/auto/extensions/GL_MESAX_texture_stack b/src/other/glew/auto/extensions/GL_MESAX_texture_stack
deleted file mode 100644
index 1e7c58d..0000000
--- a/src/other/glew/auto/extensions/GL_MESAX_texture_stack
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_MESAX_texture_stack
-http://www.opengl.org/registry/specs/MESAX/texture_stack.txt
-GL_MESAX_texture_stack
-	GL_TEXTURE_1D_STACK_MESAX 0x8759
-	GL_TEXTURE_2D_STACK_MESAX 0x875A
-	GL_PROXY_TEXTURE_1D_STACK_MESAX 0x875B
-	GL_PROXY_TEXTURE_2D_STACK_MESAX 0x875C
-	GL_TEXTURE_1D_STACK_BINDING_MESAX 0x875D
-	GL_TEXTURE_2D_STACK_BINDING_MESAX 0x875E
diff --git a/src/other/glew/auto/extensions/GL_MESA_pack_invert b/src/other/glew/auto/extensions/GL_MESA_pack_invert
deleted file mode 100644
index dca9c64..0000000
--- a/src/other/glew/auto/extensions/GL_MESA_pack_invert
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_MESA_pack_invert
-http://www.opengl.org/registry/specs/MESA/pack_invert.txt
-GL_MESA_pack_invert
-	GL_PACK_INVERT_MESA 0x8758
diff --git a/src/other/glew/auto/extensions/GL_MESA_resize_buffers b/src/other/glew/auto/extensions/GL_MESA_resize_buffers
deleted file mode 100644
index 39649bd..0000000
--- a/src/other/glew/auto/extensions/GL_MESA_resize_buffers
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_MESA_resize_buffers
-http://www.opengl.org/registry/specs/MESA/resize_buffers.txt
-GL_MESA_resize_buffers
-	void glResizeBuffersMESA (void)
diff --git a/src/other/glew/auto/extensions/GL_MESA_window_pos b/src/other/glew/auto/extensions/GL_MESA_window_pos
deleted file mode 100644
index 290c52c..0000000
--- a/src/other/glew/auto/extensions/GL_MESA_window_pos
+++ /dev/null
@@ -1,27 +0,0 @@
-GL_MESA_window_pos
-http://www.opengl.org/registry/specs/MESA/window_pos.txt
-GL_MESA_window_pos
-	void glWindowPos2dMESA (GLdouble x, GLdouble y)
-	void glWindowPos2dvMESA (const GLdouble* p)
-	void glWindowPos2fMESA (GLfloat x, GLfloat y)
-	void glWindowPos2fvMESA (const GLfloat* p)
-	void glWindowPos2iMESA (GLint x, GLint y)
-	void glWindowPos2ivMESA (const GLint* p)
-	void glWindowPos2sMESA (GLshort x, GLshort y)
-	void glWindowPos2svMESA (const GLshort* p)
-	void glWindowPos3dMESA (GLdouble x, GLdouble y, GLdouble z)
-	void glWindowPos3dvMESA (const GLdouble* p)
-	void glWindowPos3fMESA (GLfloat x, GLfloat y, GLfloat z)
-	void glWindowPos3fvMESA (const GLfloat* p)
-	void glWindowPos3iMESA (GLint x, GLint y, GLint z)
-	void glWindowPos3ivMESA (const GLint* p)
-	void glWindowPos3sMESA (GLshort x, GLshort y, GLshort z)
-	void glWindowPos3svMESA (const GLshort* p)
-	void glWindowPos4dMESA (GLdouble x, GLdouble y, GLdouble z, GLdouble)
-	void glWindowPos4dvMESA (const GLdouble* p)
-	void glWindowPos4fMESA (GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glWindowPos4fvMESA (const GLfloat* p)
-	void glWindowPos4iMESA (GLint x, GLint y, GLint z, GLint w)
-	void glWindowPos4ivMESA (const GLint* p)
-	void glWindowPos4sMESA (GLshort x, GLshort y, GLshort z, GLshort w)
-	void glWindowPos4svMESA (const GLshort* p)
diff --git a/src/other/glew/auto/extensions/GL_MESA_ycbcr_texture b/src/other/glew/auto/extensions/GL_MESA_ycbcr_texture
deleted file mode 100644
index f26d387..0000000
--- a/src/other/glew/auto/extensions/GL_MESA_ycbcr_texture
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_MESA_ycbcr_texture
-http://www.opengl.org/registry/specs/MESA/ycbcr_texture.txt
-GL_MESA_ycbcr_texture
-	GL_UNSIGNED_SHORT_8_8_MESA 0x85BA
-	GL_UNSIGNED_SHORT_8_8_REV_MESA 0x85BB
-	GL_YCBCR_MESA 0x8757
diff --git a/src/other/glew/auto/extensions/GL_NV_blend_square b/src/other/glew/auto/extensions/GL_NV_blend_square
deleted file mode 100644
index 8aafdcc..0000000
--- a/src/other/glew/auto/extensions/GL_NV_blend_square
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_blend_square
-http://www.opengl.org/registry/specs/NV/blend_square.txt
-GL_NV_blend_square
diff --git a/src/other/glew/auto/extensions/GL_NV_conditional_render b/src/other/glew/auto/extensions/GL_NV_conditional_render
deleted file mode 100644
index f22d1af..0000000
--- a/src/other/glew/auto/extensions/GL_NV_conditional_render
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_NV_conditional_render
-http://www.opengl.org/registry/specs/NV/conditional_render.txt
-GL_NV_conditional_render
-	GL_QUERY_WAIT_NV 0x8E13
-	GL_QUERY_NO_WAIT_NV 0x8E14
-	GL_QUERY_BY_REGION_WAIT_NV 0x8E15
-	GL_QUERY_BY_REGION_NO_WAIT_NV 0x8E16
-	void glBeginConditionalRenderNV (GLuint id, GLenum mode)
-	void glEndConditionalRenderNV (void)
diff --git a/src/other/glew/auto/extensions/GL_NV_copy_depth_to_color b/src/other/glew/auto/extensions/GL_NV_copy_depth_to_color
deleted file mode 100644
index 7d48642..0000000
--- a/src/other/glew/auto/extensions/GL_NV_copy_depth_to_color
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_NV_copy_depth_to_color
-http://www.opengl.org/registry/specs/NV/copy_depth_to_color.txt
-GL_NV_copy_depth_to_color
-	GL_DEPTH_STENCIL_TO_RGBA_NV 0x886E
-	GL_DEPTH_STENCIL_TO_BGRA_NV 0x886F
diff --git a/src/other/glew/auto/extensions/GL_NV_copy_image b/src/other/glew/auto/extensions/GL_NV_copy_image
deleted file mode 100644
index 0cf53fd..0000000
--- a/src/other/glew/auto/extensions/GL_NV_copy_image
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_NV_copy_image
-http://www.opengl.org/registry/specs/NV/copy_image.txt
-GL_NV_copy_image
-	void glCopyImageSubDataNV (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth)
diff --git a/src/other/glew/auto/extensions/GL_NV_depth_buffer_float b/src/other/glew/auto/extensions/GL_NV_depth_buffer_float
deleted file mode 100644
index 493b245..0000000
--- a/src/other/glew/auto/extensions/GL_NV_depth_buffer_float
+++ /dev/null
@@ -1,10 +0,0 @@
-GL_NV_depth_buffer_float
-http://developer.download.nvidia.com/opengl/specs/GL_NV_depth_buffer_float.txt
-GL_NV_depth_buffer_float
-	GL_DEPTH_COMPONENT32F_NV 0x8DAB
-	GL_DEPTH32F_STENCIL8_NV 0x8DAC
-	GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV 0x8DAD
-	GL_DEPTH_BUFFER_FLOAT_MODE_NV 0x8DAF
-	void glDepthRangedNV (GLdouble zNear, GLdouble zFar)
-	void glClearDepthdNV (GLdouble depth)
-	void glDepthBoundsdNV (GLdouble zmin, GLdouble zmax)
diff --git a/src/other/glew/auto/extensions/GL_NV_depth_clamp b/src/other/glew/auto/extensions/GL_NV_depth_clamp
deleted file mode 100644
index 561a0c5..0000000
--- a/src/other/glew/auto/extensions/GL_NV_depth_clamp
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_NV_depth_clamp
-http://www.opengl.org/registry/specs/NV/depth_clamp.txt
-GL_NV_depth_clamp
-	GL_DEPTH_CLAMP_NV 0x864F
diff --git a/src/other/glew/auto/extensions/GL_NV_depth_range_unclamped b/src/other/glew/auto/extensions/GL_NV_depth_range_unclamped
deleted file mode 100644
index 62b4e59..0000000
--- a/src/other/glew/auto/extensions/GL_NV_depth_range_unclamped
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_NV_depth_range_unclamped
-
-GL_NV_depth_range_unclamped
-	GL_SAMPLE_COUNT_BITS_NV 0x8864
-	GL_CURRENT_SAMPLE_COUNT_QUERY_NV 0x8865
-	GL_QUERY_RESULT_NV 0x8866
-	GL_QUERY_RESULT_AVAILABLE_NV 0x8867
-	GL_SAMPLE_COUNT_NV 0x8914
diff --git a/src/other/glew/auto/extensions/GL_NV_evaluators b/src/other/glew/auto/extensions/GL_NV_evaluators
deleted file mode 100644
index 531ea7f..0000000
--- a/src/other/glew/auto/extensions/GL_NV_evaluators
+++ /dev/null
@@ -1,36 +0,0 @@
-GL_NV_evaluators
-http://www.opengl.org/registry/specs/NV/evaluators.txt
-GL_NV_evaluators
-	GL_EVAL_2D_NV 0x86C0
-	GL_EVAL_TRIANGULAR_2D_NV 0x86C1
-	GL_MAP_TESSELLATION_NV 0x86C2
-	GL_MAP_ATTRIB_U_ORDER_NV 0x86C3
-	GL_MAP_ATTRIB_V_ORDER_NV 0x86C4
-	GL_EVAL_FRACTIONAL_TESSELLATION_NV 0x86C5
-	GL_EVAL_VERTEX_ATTRIB0_NV 0x86C6
-	GL_EVAL_VERTEX_ATTRIB1_NV 0x86C7
-	GL_EVAL_VERTEX_ATTRIB2_NV 0x86C8
-	GL_EVAL_VERTEX_ATTRIB3_NV 0x86C9
-	GL_EVAL_VERTEX_ATTRIB4_NV 0x86CA
-	GL_EVAL_VERTEX_ATTRIB5_NV 0x86CB
-	GL_EVAL_VERTEX_ATTRIB6_NV 0x86CC
-	GL_EVAL_VERTEX_ATTRIB7_NV 0x86CD
-	GL_EVAL_VERTEX_ATTRIB8_NV 0x86CE
-	GL_EVAL_VERTEX_ATTRIB9_NV 0x86CF
-	GL_EVAL_VERTEX_ATTRIB10_NV 0x86D0
-	GL_EVAL_VERTEX_ATTRIB11_NV 0x86D1
-	GL_EVAL_VERTEX_ATTRIB12_NV 0x86D2
-	GL_EVAL_VERTEX_ATTRIB13_NV 0x86D3
-	GL_EVAL_VERTEX_ATTRIB14_NV 0x86D4
-	GL_EVAL_VERTEX_ATTRIB15_NV 0x86D5
-	GL_MAX_MAP_TESSELLATION_NV 0x86D6
-	GL_MAX_RATIONAL_EVAL_ORDER_NV 0x86D7
-	void glEvalMapsNV (GLenum target, GLenum mode)
-	void glGetMapAttribParameterfvNV (GLenum target, GLuint index, GLenum pname, GLfloat* params)
-	void glGetMapAttribParameterivNV (GLenum target, GLuint index, GLenum pname, GLint* params)
-	void glGetMapControlPointsNV (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, void* points)
-	void glGetMapParameterfvNV (GLenum target, GLenum pname, GLfloat* params)
-	void glGetMapParameterivNV (GLenum target, GLenum pname, GLint* params)
-	void glMapControlPointsNV (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const void* points)
-	void glMapParameterfvNV (GLenum target, GLenum pname, const GLfloat* params)
-	void glMapParameterivNV (GLenum target, GLenum pname, const GLint* params)
diff --git a/src/other/glew/auto/extensions/GL_NV_explicit_multisample b/src/other/glew/auto/extensions/GL_NV_explicit_multisample
deleted file mode 100644
index 0b87a17..0000000
--- a/src/other/glew/auto/extensions/GL_NV_explicit_multisample
+++ /dev/null
@@ -1,16 +0,0 @@
-GL_NV_explicit_multisample
-http://www.opengl.org/registry/specs/NV/explicit_multisample.txt
-GL_NV_explicit_multisample
-	GL_SAMPLE_POSITION_NV 0x8E50
-	GL_SAMPLE_MASK_NV 0x8E51
-	GL_SAMPLE_MASK_VALUE_NV 0x8E52
-	GL_TEXTURE_BINDING_RENDERBUFFER_NV 0x8E53
-	GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV 0x8E54
-	GL_TEXTURE_RENDERBUFFER_NV 0x8E55
-	GL_SAMPLER_RENDERBUFFER_NV 0x8E56
-	GL_INT_SAMPLER_RENDERBUFFER_NV 0x8E57
-	GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV 0x8E58
-	GL_MAX_SAMPLE_MASK_WORDS_NV 0x8E59
-	void glGetMultisamplefvNV (GLenum pname, GLuint index, GLfloat* val)
-	void glSampleMaskIndexedNV (GLuint index, GLbitfield mask)
-	void glTexRenderbufferNV (GLenum target, GLuint renderbuffer)
diff --git a/src/other/glew/auto/extensions/GL_NV_fence b/src/other/glew/auto/extensions/GL_NV_fence
deleted file mode 100644
index e59833f..0000000
--- a/src/other/glew/auto/extensions/GL_NV_fence
+++ /dev/null
@@ -1,13 +0,0 @@
-GL_NV_fence
-http://www.opengl.org/registry/specs/NV/fence.txt
-GL_NV_fence
-	GL_ALL_COMPLETED_NV 0x84F2
-	GL_FENCE_STATUS_NV 0x84F3
-	GL_FENCE_CONDITION_NV 0x84F4
-	void glDeleteFencesNV (GLsizei n, const GLuint* fences)
-	void glFinishFenceNV (GLuint fence)
-	void glGenFencesNV (GLsizei n, GLuint* fences)
-	void glGetFenceivNV (GLuint fence, GLenum pname, GLint* params)
-	GLboolean glIsFenceNV (GLuint fence)
-	void glSetFenceNV (GLuint fence, GLenum condition)
-	GLboolean glTestFenceNV (GLuint fence)
diff --git a/src/other/glew/auto/extensions/GL_NV_float_buffer b/src/other/glew/auto/extensions/GL_NV_float_buffer
deleted file mode 100644
index f44ae43..0000000
--- a/src/other/glew/auto/extensions/GL_NV_float_buffer
+++ /dev/null
@@ -1,18 +0,0 @@
-GL_NV_float_buffer
-http://www.opengl.org/registry/specs/NV/float_buffer.txt
-GL_NV_float_buffer
-	GL_FLOAT_R_NV 0x8880
-	GL_FLOAT_RG_NV 0x8881
-	GL_FLOAT_RGB_NV 0x8882
-	GL_FLOAT_RGBA_NV 0x8883
-	GL_FLOAT_R16_NV 0x8884
-	GL_FLOAT_R32_NV 0x8885
-	GL_FLOAT_RG16_NV 0x8886
-	GL_FLOAT_RG32_NV 0x8887
-	GL_FLOAT_RGB16_NV 0x8888
-	GL_FLOAT_RGB32_NV 0x8889
-	GL_FLOAT_RGBA16_NV 0x888A
-	GL_FLOAT_RGBA32_NV 0x888B
-	GL_TEXTURE_FLOAT_COMPONENTS_NV 0x888C
-	GL_FLOAT_CLEAR_COLOR_VALUE_NV 0x888D
-	GL_FLOAT_RGBA_MODE_NV 0x888E
diff --git a/src/other/glew/auto/extensions/GL_NV_fog_distance b/src/other/glew/auto/extensions/GL_NV_fog_distance
deleted file mode 100644
index 9cee59b..0000000
--- a/src/other/glew/auto/extensions/GL_NV_fog_distance
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_NV_fog_distance
-http://www.opengl.org/registry/specs/NV/fog_distance.txt
-GL_NV_fog_distance
-	GL_FOG_DISTANCE_MODE_NV 0x855A
-	GL_EYE_RADIAL_NV 0x855B
-	GL_EYE_PLANE_ABSOLUTE_NV 0x855C
diff --git a/src/other/glew/auto/extensions/GL_NV_fragment_program b/src/other/glew/auto/extensions/GL_NV_fragment_program
deleted file mode 100644
index 298808c..0000000
--- a/src/other/glew/auto/extensions/GL_NV_fragment_program
+++ /dev/null
@@ -1,15 +0,0 @@
-GL_NV_fragment_program
-http://www.opengl.org/registry/specs/NV/fragment_program.txt
-GL_NV_fragment_program
-	GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV 0x8868
-	GL_FRAGMENT_PROGRAM_NV 0x8870
-	GL_MAX_TEXTURE_COORDS_NV 0x8871
-	GL_MAX_TEXTURE_IMAGE_UNITS_NV 0x8872
-	GL_FRAGMENT_PROGRAM_BINDING_NV 0x8873
-	GL_PROGRAM_ERROR_STRING_NV 0x8874
-	void glGetProgramNamedParameterdvNV (GLuint id, GLsizei len, const GLubyte* name, GLdouble *params)
-	void glGetProgramNamedParameterfvNV (GLuint id, GLsizei len, const GLubyte* name, GLfloat *params)
-	void glProgramNamedParameter4dNV (GLuint id, GLsizei len, const GLubyte* name, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-	void glProgramNamedParameter4dvNV (GLuint id, GLsizei len, const GLubyte* name, const GLdouble v[])
-	void glProgramNamedParameter4fNV (GLuint id, GLsizei len, const GLubyte* name, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glProgramNamedParameter4fvNV (GLuint id, GLsizei len, const GLubyte* name, const GLfloat v[])
diff --git a/src/other/glew/auto/extensions/GL_NV_fragment_program2 b/src/other/glew/auto/extensions/GL_NV_fragment_program2
deleted file mode 100644
index 7fb59ee..0000000
--- a/src/other/glew/auto/extensions/GL_NV_fragment_program2
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_NV_fragment_program2
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_fragment_program2.txt
-GL_NV_fragment_program2
-	GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4
-	GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5
-	GL_MAX_PROGRAM_IF_DEPTH_NV 0x88F6
-	GL_MAX_PROGRAM_LOOP_DEPTH_NV 0x88F7
-	GL_MAX_PROGRAM_LOOP_COUNT_NV 0x88F8
diff --git a/src/other/glew/auto/extensions/GL_NV_fragment_program4 b/src/other/glew/auto/extensions/GL_NV_fragment_program4
deleted file mode 100644
index 0ae2598..0000000
--- a/src/other/glew/auto/extensions/GL_NV_fragment_program4
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_fragment_program4
-http://developer.download.nvidia.com/opengl/specs/GL_NV_fragment_program4.txt
-GL_NV_gpu_program4
diff --git a/src/other/glew/auto/extensions/GL_NV_fragment_program_option b/src/other/glew/auto/extensions/GL_NV_fragment_program_option
deleted file mode 100644
index 7af9731..0000000
--- a/src/other/glew/auto/extensions/GL_NV_fragment_program_option
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_fragment_program_option
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_fragment_program_option.txt
-GL_NV_fragment_program_option
diff --git a/src/other/glew/auto/extensions/GL_NV_framebuffer_multisample_coverage b/src/other/glew/auto/extensions/GL_NV_framebuffer_multisample_coverage
deleted file mode 100644
index d1d0660..0000000
--- a/src/other/glew/auto/extensions/GL_NV_framebuffer_multisample_coverage
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_NV_framebuffer_multisample_coverage
-http://developer.download.nvidia.com/opengl/specs/GL_NV_framebuffer_multisample_coverage.txt
-GL_NV_framebuffer_multisample_coverage
-	GL_RENDERBUFFER_COVERAGE_SAMPLES_NV 0x8CAB
-	GL_RENDERBUFFER_COLOR_SAMPLES_NV  0x8E10
-	GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV 0x8E11
-	GL_MULTISAMPLE_COVERAGE_MODES_NV 0x8E12
-	void glRenderbufferStorageMultisampleCoverageNV (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height)
diff --git a/src/other/glew/auto/extensions/GL_NV_geometry_program4 b/src/other/glew/auto/extensions/GL_NV_geometry_program4
deleted file mode 100644
index 3f82b19..0000000
--- a/src/other/glew/auto/extensions/GL_NV_geometry_program4
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_NV_geometry_program4
-http://developer.download.nvidia.com/opengl/specs/GL_NV_geometry_program4.txt
-GL_NV_gpu_program4
-	GL_GEOMETRY_PROGRAM_NV 0x8C26
-	GL_MAX_PROGRAM_OUTPUT_VERTICES_NV 0x8C27
-	GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV 0x8C28
-	void glProgramVertexLimitNV (GLenum target, GLint limit)
diff --git a/src/other/glew/auto/extensions/GL_NV_geometry_shader4 b/src/other/glew/auto/extensions/GL_NV_geometry_shader4
deleted file mode 100644
index 2040c0d..0000000
--- a/src/other/glew/auto/extensions/GL_NV_geometry_shader4
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_geometry_shader4
-http://developer.download.nvidia.com/opengl/specs/GL_NV_geometry_shader4.txt
-GL_NV_geometry_shader4
diff --git a/src/other/glew/auto/extensions/GL_NV_gpu_program4 b/src/other/glew/auto/extensions/GL_NV_gpu_program4
deleted file mode 100644
index 030f68e..0000000
--- a/src/other/glew/auto/extensions/GL_NV_gpu_program4
+++ /dev/null
@@ -1,23 +0,0 @@
-GL_NV_gpu_program4
-http://developer.download.nvidia.com/opengl/specs/GL_NV_gpu_program4.txt
-GL_NV_gpu_program4
-	GL_MIN_PROGRAM_TEXEL_OFFSET_NV 0x8904
-	GL_MAX_PROGRAM_TEXEL_OFFSET_NV 0x8905
-	GL_PROGRAM_ATTRIB_COMPONENTS_NV 0x8906
-	GL_PROGRAM_RESULT_COMPONENTS_NV 0x8907
-	GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV 0x8908
-	GL_MAX_PROGRAM_RESULT_COMPONENTS_NV 0x8909
-	GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV 0x8DA5
-	GL_MAX_PROGRAM_GENERIC_RESULTS_NV 0x8DA6
-	void glProgramLocalParameterI4iNV (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w)
-	void glProgramLocalParameterI4ivNV (GLenum target, GLuint index, const GLint *params)
-	void glProgramLocalParametersI4ivNV (GLenum target, GLuint index, GLsizei count, const GLint *params)
-	void glProgramLocalParameterI4uiNV (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
-	void glProgramLocalParameterI4uivNV (GLenum target, GLuint index, const GLuint *params)
-	void glProgramLocalParametersI4uivNV (GLenum target, GLuint index, GLsizei count, const GLuint *params)
-	void glProgramEnvParameterI4iNV (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w)
-	void glProgramEnvParameterI4ivNV (GLenum target, GLuint index, const GLint *params)
-	void glProgramEnvParametersI4ivNV (GLenum target, GLuint index, GLsizei count, const GLint *params)
-	void glProgramEnvParameterI4uiNV (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
-	void glProgramEnvParameterI4uivNV (GLenum target, GLuint index, const GLuint *params)
-	void glProgramEnvParametersI4uivNV (GLenum target, GLuint index, GLsizei count, const GLuint *params)
diff --git a/src/other/glew/auto/extensions/GL_NV_gpu_program5 b/src/other/glew/auto/extensions/GL_NV_gpu_program5
deleted file mode 100644
index b9e387b..0000000
--- a/src/other/glew/auto/extensions/GL_NV_gpu_program5
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_NV_gpu_program5
-http://www.opengl.org/registry/specs/NV/gpu_program5.txt
-GL_NV_gpu_program5
-	GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV 0x8E5A
-	GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV 0x8E5B
-	GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV 0x8E5C
-	GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV 0x8E5D
diff --git a/src/other/glew/auto/extensions/GL_NV_gpu_program_fp64 b/src/other/glew/auto/extensions/GL_NV_gpu_program_fp64
deleted file mode 100644
index b710ca5..0000000
--- a/src/other/glew/auto/extensions/GL_NV_gpu_program_fp64
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_gpu_program_fp64
-http://www.opengl.org/registry/specs/NV/gpu_program5.txt
-GL_NV_gpu_program_fp64
diff --git a/src/other/glew/auto/extensions/GL_NV_gpu_shader5 b/src/other/glew/auto/extensions/GL_NV_gpu_shader5
deleted file mode 100644
index 705286e..0000000
--- a/src/other/glew/auto/extensions/GL_NV_gpu_shader5
+++ /dev/null
@@ -1,65 +0,0 @@
-GL_NV_gpu_shader5
-http://www.opengl.org/registry/specs/NV/gpu_shader5.txt
-GL_NV_gpu_shader5
-	GL_INT64_NV 0x140E
-	GL_UNSIGNED_INT64_NV 0x140F
-	GL_INT8_NV 0x8FE0
-	GL_INT8_VEC2_NV 0x8FE1
-	GL_INT8_VEC3_NV 0x8FE2
-	GL_INT8_VEC4_NV 0x8FE3
-	GL_INT16_NV 0x8FE4
-	GL_INT16_VEC2_NV 0x8FE5
-	GL_INT16_VEC3_NV 0x8FE6
-	GL_INT16_VEC4_NV 0x8FE7
-	GL_INT64_VEC2_NV 0x8FE9
-	GL_INT64_VEC3_NV 0x8FEA
-	GL_INT64_VEC4_NV 0x8FEB
-	GL_UNSIGNED_INT8_NV 0x8FEC
-	GL_UNSIGNED_INT8_VEC2_NV 0x8FED
-	GL_UNSIGNED_INT8_VEC3_NV 0x8FEE
-	GL_UNSIGNED_INT8_VEC4_NV 0x8FEF
-	GL_UNSIGNED_INT16_NV 0x8FF0
-	GL_UNSIGNED_INT16_VEC2_NV 0x8FF1
-	GL_UNSIGNED_INT16_VEC3_NV 0x8FF2
-	GL_UNSIGNED_INT16_VEC4_NV 0x8FF3
-	GL_UNSIGNED_INT64_VEC2_NV 0x8FF5
-	GL_UNSIGNED_INT64_VEC3_NV 0x8FF6
-	GL_UNSIGNED_INT64_VEC4_NV 0x8FF7
-	GL_FLOAT16_NV 0x8FF8
-	GL_FLOAT16_VEC2_NV 0x8FF9
-	GL_FLOAT16_VEC3_NV 0x8FFA
-	GL_FLOAT16_VEC4_NV 0x8FFB
-	void glGetUniformi64vNV (GLuint program, GLint location, GLint64EXT* params)
-	void glGetUniformui64vNV (GLuint program, GLint location, GLuint64EXT* params)
-	void glProgramUniform1i64NV (GLuint program, GLint location, GLint64EXT x)
-	void glProgramUniform1i64vNV (GLuint program, GLint location, GLsizei count, const GLint64EXT* value)
-	void glProgramUniform1ui64NV (GLuint program, GLint location, GLuint64EXT x)
-	void glProgramUniform1ui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value)
-	void glProgramUniform2i64NV (GLuint program, GLint location, GLint64EXT x, GLint64EXT y)
-	void glProgramUniform2i64vNV (GLuint program, GLint location, GLsizei count, const GLint64EXT* value)
-	void glProgramUniform2ui64NV (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y)
-	void glProgramUniform2ui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value)
-	void glProgramUniform3i64NV (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z)
-	void glProgramUniform3i64vNV (GLuint program, GLint location, GLsizei count, const GLint64EXT* value)
-	void glProgramUniform3ui64NV (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z)
-	void glProgramUniform3ui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value)
-	void glProgramUniform4i64NV (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w)
-	void glProgramUniform4i64vNV (GLuint program, GLint location, GLsizei count, const GLint64EXT* value)
-	void glProgramUniform4ui64NV (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w)
-	void glProgramUniform4ui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value)
-	void glUniform1i64NV (GLint location, GLint64EXT x)
-	void glUniform1i64vNV (GLint location, GLsizei count, const GLint64EXT* value)
-	void glUniform1ui64NV (GLint location, GLuint64EXT x)
-	void glUniform1ui64vNV (GLint location, GLsizei count, const GLuint64EXT* value)
-	void glUniform2i64NV (GLint location, GLint64EXT x, GLint64EXT y)
-	void glUniform2i64vNV (GLint location, GLsizei count, const GLint64EXT* value)
-	void glUniform2ui64NV (GLint location, GLuint64EXT x, GLuint64EXT y)
-	void glUniform2ui64vNV (GLint location, GLsizei count, const GLuint64EXT* value)
-	void glUniform3i64NV (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z)
-	void glUniform3i64vNV (GLint location, GLsizei count, const GLint64EXT* value)
-	void glUniform3ui64NV (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z)
-	void glUniform3ui64vNV (GLint location, GLsizei count, const GLuint64EXT* value)
-	void glUniform4i64NV (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w)
-	void glUniform4i64vNV (GLint location, GLsizei count, const GLint64EXT* value)
-	void glUniform4ui64NV (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w)
-	void glUniform4ui64vNV (GLint location, GLsizei count, const GLuint64EXT* value)
diff --git a/src/other/glew/auto/extensions/GL_NV_half_float b/src/other/glew/auto/extensions/GL_NV_half_float
deleted file mode 100644
index ca309e9..0000000
--- a/src/other/glew/auto/extensions/GL_NV_half_float
+++ /dev/null
@@ -1,51 +0,0 @@
-GL_NV_half_float
-http://www.opengl.org/registry/specs/NV/half_float.txt
-GL_NV_half_float
-	GL_HALF_FLOAT_NV 0x140B
-	void glColor3hNV (GLhalf red, GLhalf green, GLhalf blue)
-	void glColor3hvNV (const GLhalf* v)
-	void glColor4hNV (GLhalf red, GLhalf green, GLhalf blue, GLhalf alpha)
-	void glColor4hvNV (const GLhalf* v)
-	void glFogCoordhNV (GLhalf fog)
-	void glFogCoordhvNV (const GLhalf* fog)
-	void glMultiTexCoord1hNV (GLenum target, GLhalf s)
-	void glMultiTexCoord1hvNV (GLenum target, const GLhalf* v)
-	void glMultiTexCoord2hNV (GLenum target, GLhalf s, GLhalf t)
-	void glMultiTexCoord2hvNV (GLenum target, const GLhalf* v)
-	void glMultiTexCoord3hNV (GLenum target, GLhalf s, GLhalf t, GLhalf r)
-	void glMultiTexCoord3hvNV (GLenum target, const GLhalf* v)
-	void glMultiTexCoord4hNV (GLenum target, GLhalf s, GLhalf t, GLhalf r, GLhalf q)
-	void glMultiTexCoord4hvNV (GLenum target, const GLhalf* v)
-	void glNormal3hNV (GLhalf nx, GLhalf ny, GLhalf nz)
-	void glNormal3hvNV (const GLhalf* v)
-	void glSecondaryColor3hNV (GLhalf red, GLhalf green, GLhalf blue)
-	void glSecondaryColor3hvNV (const GLhalf* v)
-	void glTexCoord1hNV (GLhalf s)
-	void glTexCoord1hvNV (const GLhalf* v)
-	void glTexCoord2hNV (GLhalf s, GLhalf t)
-	void glTexCoord2hvNV (const GLhalf* v)
-	void glTexCoord3hNV (GLhalf s, GLhalf t, GLhalf r)
-	void glTexCoord3hvNV (const GLhalf* v)
-	void glTexCoord4hNV (GLhalf s, GLhalf t, GLhalf r, GLhalf q)
-	void glTexCoord4hvNV (const GLhalf* v)
-	void glVertex2hNV (GLhalf x, GLhalf y)
-	void glVertex2hvNV (const GLhalf* v)
-	void glVertex3hNV (GLhalf x, GLhalf y, GLhalf z)
-	void glVertex3hvNV (const GLhalf* v)
-	void glVertex4hNV (GLhalf x, GLhalf y, GLhalf z, GLhalf w)
-	void glVertex4hvNV (const GLhalf* v)
-	void glVertexAttrib1hNV (GLuint index, GLhalf x)
-	void glVertexAttrib1hvNV (GLuint index, const GLhalf* v)
-	void glVertexAttrib2hNV (GLuint index, GLhalf x, GLhalf y)
-	void glVertexAttrib2hvNV (GLuint index, const GLhalf* v)
-	void glVertexAttrib3hNV (GLuint index, GLhalf x, GLhalf y, GLhalf z)
-	void glVertexAttrib3hvNV (GLuint index, const GLhalf* v)
-	void glVertexAttrib4hNV (GLuint index, GLhalf x, GLhalf y, GLhalf z, GLhalf w)
-	void glVertexAttrib4hvNV (GLuint index, const GLhalf* v)
-	void glVertexAttribs1hvNV (GLuint index, GLsizei n, const GLhalf* v)
-	void glVertexAttribs2hvNV (GLuint index, GLsizei n, const GLhalf* v)
-	void glVertexAttribs3hvNV (GLuint index, GLsizei n, const GLhalf* v)
-	void glVertexAttribs4hvNV (GLuint index, GLsizei n, const GLhalf* v)
-	void glVertexWeighthNV (GLhalf weight)
-	void glVertexWeighthvNV (const GLhalf* weight)
-	typedef unsigned short GLhalf
diff --git a/src/other/glew/auto/extensions/GL_NV_light_max_exponent b/src/other/glew/auto/extensions/GL_NV_light_max_exponent
deleted file mode 100644
index cacd6a2..0000000
--- a/src/other/glew/auto/extensions/GL_NV_light_max_exponent
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_NV_light_max_exponent
-http://www.opengl.org/registry/specs/NV/light_max_exponent.txt
-GL_NV_light_max_exponent
-	GL_MAX_SHININESS_NV 0x8504
-	GL_MAX_SPOT_EXPONENT_NV 0x8505
diff --git a/src/other/glew/auto/extensions/GL_NV_multisample_filter_hint b/src/other/glew/auto/extensions/GL_NV_multisample_filter_hint
deleted file mode 100644
index cad0240..0000000
--- a/src/other/glew/auto/extensions/GL_NV_multisample_filter_hint
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_NV_multisample_filter_hint
-http://www.opengl.org/registry/specs/NV/multisample_filter_hint.txt
-GL_NV_multisample_filter_hint
-	GL_MULTISAMPLE_FILTER_HINT_NV 0x8534
diff --git a/src/other/glew/auto/extensions/GL_NV_occlusion_query b/src/other/glew/auto/extensions/GL_NV_occlusion_query
deleted file mode 100644
index b3b1a14..0000000
--- a/src/other/glew/auto/extensions/GL_NV_occlusion_query
+++ /dev/null
@@ -1,14 +0,0 @@
-GL_NV_occlusion_query
-http://www.opengl.org/registry/specs/NV/occlusion_query.txt
-GL_NV_occlusion_query
-	GL_PIXEL_COUNTER_BITS_NV 0x8864
-	GL_CURRENT_OCCLUSION_QUERY_ID_NV 0x8865
-	GL_PIXEL_COUNT_NV 0x8866
-	GL_PIXEL_COUNT_AVAILABLE_NV 0x8867
-	void glBeginOcclusionQueryNV (GLuint id)
-	void glDeleteOcclusionQueriesNV (GLsizei n, const GLuint* ids)
-	void glEndOcclusionQueryNV (void)
-	void glGenOcclusionQueriesNV (GLsizei n, GLuint* ids)
-	void glGetOcclusionQueryivNV (GLuint id, GLenum pname, GLint* params)
-	void glGetOcclusionQueryuivNV (GLuint id, GLenum pname, GLuint* params)
-	GLboolean glIsOcclusionQueryNV (GLuint id)
diff --git a/src/other/glew/auto/extensions/GL_NV_packed_depth_stencil b/src/other/glew/auto/extensions/GL_NV_packed_depth_stencil
deleted file mode 100644
index e0de7ab..0000000
--- a/src/other/glew/auto/extensions/GL_NV_packed_depth_stencil
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_NV_packed_depth_stencil
-http://www.opengl.org/registry/specs/NV/packed_depth_stencil.txt
-GL_NV_packed_depth_stencil
-	GL_DEPTH_STENCIL_NV 0x84F9
-	GL_UNSIGNED_INT_24_8_NV 0x84FA
diff --git a/src/other/glew/auto/extensions/GL_NV_parameter_buffer_object b/src/other/glew/auto/extensions/GL_NV_parameter_buffer_object
deleted file mode 100644
index d2525a1..0000000
--- a/src/other/glew/auto/extensions/GL_NV_parameter_buffer_object
+++ /dev/null
@@ -1,11 +0,0 @@
-GL_NV_parameter_buffer_object
-http://developer.download.nvidia.com/opengl/specs/GL_NV_parameter_buffer_object.txt
-GL_NV_parameter_buffer_object
-	GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV 0x8DA2
-	GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV 0x8DA3
-	GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV 0x8DA4
-	GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV 0x8DA0
-	GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV 0x8DA1
-	void glProgramBufferParametersfvNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLfloat *params)
-	void glProgramBufferParametersIivNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLint *params)
-	void glProgramBufferParametersIuivNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLuint *params)
diff --git a/src/other/glew/auto/extensions/GL_NV_parameter_buffer_object2 b/src/other/glew/auto/extensions/GL_NV_parameter_buffer_object2
deleted file mode 100644
index d281d02..0000000
--- a/src/other/glew/auto/extensions/GL_NV_parameter_buffer_object2
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_parameter_buffer_object2
-http://www.opengl.org/registry/specs/NV/parameter_buffer_object2.txt
-GL_NV_parameter_buffer_object2
diff --git a/src/other/glew/auto/extensions/GL_NV_pixel_data_range b/src/other/glew/auto/extensions/GL_NV_pixel_data_range
deleted file mode 100644
index dd18c9c..0000000
--- a/src/other/glew/auto/extensions/GL_NV_pixel_data_range
+++ /dev/null
@@ -1,11 +0,0 @@
-GL_NV_pixel_data_range
-http://www.opengl.org/registry/specs/NV/pixel_data_range.txt
-GL_NV_pixel_data_range
-	GL_WRITE_PIXEL_DATA_RANGE_NV 0x8878
-	GL_READ_PIXEL_DATA_RANGE_NV 0x8879
-	GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV 0x887A
-	GL_READ_PIXEL_DATA_RANGE_LENGTH_NV 0x887B
-	GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV 0x887C
-	GL_READ_PIXEL_DATA_RANGE_POINTER_NV 0x887D
-	void glFlushPixelDataRangeNV (GLenum target)
-	void glPixelDataRangeNV (GLenum target, GLsizei length, void* pointer)
diff --git a/src/other/glew/auto/extensions/GL_NV_point_sprite b/src/other/glew/auto/extensions/GL_NV_point_sprite
deleted file mode 100644
index cb79d31..0000000
--- a/src/other/glew/auto/extensions/GL_NV_point_sprite
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_NV_point_sprite
-http://www.opengl.org/registry/specs/NV/point_sprite.txt
-GL_NV_point_sprite
-	GL_POINT_SPRITE_NV 0x8861
-	GL_COORD_REPLACE_NV 0x8862
-	GL_POINT_SPRITE_R_MODE_NV 0x8863
-	void glPointParameteriNV (GLenum pname, GLint param)
-	void glPointParameterivNV (GLenum pname, const GLint* params)
diff --git a/src/other/glew/auto/extensions/GL_NV_present_video b/src/other/glew/auto/extensions/GL_NV_present_video
deleted file mode 100644
index 893c74c..0000000
--- a/src/other/glew/auto/extensions/GL_NV_present_video
+++ /dev/null
@@ -1,15 +0,0 @@
-GL_NV_present_video
-http://www.opengl.org/registry/specs/NV/present_video.txt
-GL_NV_present_video
-	GL_FRAME_NV 0x8E26
-	GL_FIELDS_NV 0x8E27
-	GL_CURRENT_TIME_NV 0x8E28
-	GL_NUM_FILL_STREAMS_NV 0x8E29
-	GL_PRESENT_TIME_NV 0x8E2A
-	GL_PRESENT_DURATION_NV 0x8E2B
-	void glGetVideoi64vNV (GLuint video_slot, GLenum pname, GLint64EXT* params)
-	void glGetVideoivNV (GLuint video_slot, GLenum pname, GLint* params)
-	void glGetVideoui64vNV (GLuint video_slot, GLenum pname, GLuint64EXT* params)
-	void glGetVideouivNV (GLuint video_slot, GLenum pname, GLuint* params)
-	void glPresentFrameDualFillNV (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLenum target1, GLuint fill1, GLenum target2, GLuint fill2, GLenum target3, GLuint fill3)
-	void glPresentFrameKeyedNV (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLuint key0, GLenum target1, GLuint fill1, GLuint key1)
diff --git a/src/other/glew/auto/extensions/GL_NV_primitive_restart b/src/other/glew/auto/extensions/GL_NV_primitive_restart
deleted file mode 100644
index ebd1f7a..0000000
--- a/src/other/glew/auto/extensions/GL_NV_primitive_restart
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_NV_primitive_restart
-http://www.opengl.org/registry/specs/NV/primitive_restart.txt
-GL_NV_primitive_restart
-	GL_PRIMITIVE_RESTART_NV 0x8558
-	GL_PRIMITIVE_RESTART_INDEX_NV 0x8559
-	void glPrimitiveRestartIndexNV (GLuint index)
-	void glPrimitiveRestartNV (void)
diff --git a/src/other/glew/auto/extensions/GL_NV_register_combiners b/src/other/glew/auto/extensions/GL_NV_register_combiners
deleted file mode 100644
index e9255ab..0000000
--- a/src/other/glew/auto/extensions/GL_NV_register_combiners
+++ /dev/null
@@ -1,67 +0,0 @@
-GL_NV_register_combiners
-http://www.opengl.org/registry/specs/NV/register_combiners.txt
-GL_NV_register_combiners
-	GL_REGISTER_COMBINERS_NV 0x8522
-	GL_VARIABLE_A_NV 0x8523
-	GL_VARIABLE_B_NV 0x8524
-	GL_VARIABLE_C_NV 0x8525
-	GL_VARIABLE_D_NV 0x8526
-	GL_VARIABLE_E_NV 0x8527
-	GL_VARIABLE_F_NV 0x8528
-	GL_VARIABLE_G_NV 0x8529
-	GL_CONSTANT_COLOR0_NV 0x852A
-	GL_CONSTANT_COLOR1_NV 0x852B
-	GL_PRIMARY_COLOR_NV 0x852C
-	GL_SECONDARY_COLOR_NV 0x852D
-	GL_SPARE0_NV 0x852E
-	GL_SPARE1_NV 0x852F
-	GL_DISCARD_NV 0x8530
-	GL_E_TIMES_F_NV 0x8531
-	GL_SPARE0_PLUS_SECONDARY_COLOR_NV 0x8532
-	GL_UNSIGNED_IDENTITY_NV 0x8536
-	GL_UNSIGNED_INVERT_NV 0x8537
-	GL_EXPAND_NORMAL_NV 0x8538
-	GL_EXPAND_NEGATE_NV 0x8539
-	GL_HALF_BIAS_NORMAL_NV 0x853A
-	GL_HALF_BIAS_NEGATE_NV 0x853B
-	GL_SIGNED_IDENTITY_NV 0x853C
-	GL_SIGNED_NEGATE_NV 0x853D
-	GL_SCALE_BY_TWO_NV 0x853E
-	GL_SCALE_BY_FOUR_NV 0x853F
-	GL_SCALE_BY_ONE_HALF_NV 0x8540
-	GL_BIAS_BY_NEGATIVE_ONE_HALF_NV 0x8541
-	GL_COMBINER_INPUT_NV 0x8542
-	GL_COMBINER_MAPPING_NV 0x8543
-	GL_COMBINER_COMPONENT_USAGE_NV 0x8544
-	GL_COMBINER_AB_DOT_PRODUCT_NV 0x8545
-	GL_COMBINER_CD_DOT_PRODUCT_NV 0x8546
-	GL_COMBINER_MUX_SUM_NV 0x8547
-	GL_COMBINER_SCALE_NV 0x8548
-	GL_COMBINER_BIAS_NV 0x8549
-	GL_COMBINER_AB_OUTPUT_NV 0x854A
-	GL_COMBINER_CD_OUTPUT_NV 0x854B
-	GL_COMBINER_SUM_OUTPUT_NV 0x854C
-	GL_MAX_GENERAL_COMBINERS_NV 0x854D
-	GL_NUM_GENERAL_COMBINERS_NV 0x854E
-	GL_COLOR_SUM_CLAMP_NV 0x854F
-	GL_COMBINER0_NV 0x8550
-	GL_COMBINER1_NV 0x8551
-	GL_COMBINER2_NV 0x8552
-	GL_COMBINER3_NV 0x8553
-	GL_COMBINER4_NV 0x8554
-	GL_COMBINER5_NV 0x8555
-	GL_COMBINER6_NV 0x8556
-	GL_COMBINER7_NV 0x8557
-	void glCombinerInputNV (GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)
-	void glCombinerOutputNV (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum)
-	void glCombinerParameterfNV (GLenum pname, GLfloat param)
-	void glCombinerParameterfvNV (GLenum pname, const GLfloat* params)
-	void glCombinerParameteriNV (GLenum pname, GLint param)
-	void glCombinerParameterivNV (GLenum pname, const GLint* params)
-	void glFinalCombinerInputNV (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)
-	void glGetCombinerInputParameterfvNV (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat* params)
-	void glGetCombinerInputParameterivNV (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint* params)
-	void glGetCombinerOutputParameterfvNV (GLenum stage, GLenum portion, GLenum pname, GLfloat* params)
-	void glGetCombinerOutputParameterivNV (GLenum stage, GLenum portion, GLenum pname, GLint* params)
-	void glGetFinalCombinerInputParameterfvNV (GLenum variable, GLenum pname, GLfloat* params)
-	void glGetFinalCombinerInputParameterivNV (GLenum variable, GLenum pname, GLint* params)
diff --git a/src/other/glew/auto/extensions/GL_NV_register_combiners2 b/src/other/glew/auto/extensions/GL_NV_register_combiners2
deleted file mode 100644
index 166db25..0000000
--- a/src/other/glew/auto/extensions/GL_NV_register_combiners2
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_NV_register_combiners2
-http://www.opengl.org/registry/specs/NV/register_combiners2.txt
-GL_NV_register_combiners2
-	GL_PER_STAGE_CONSTANTS_NV 0x8535
-	void glCombinerStageParameterfvNV (GLenum stage, GLenum pname, const GLfloat* params)
-	void glGetCombinerStageParameterfvNV (GLenum stage, GLenum pname, GLfloat* params)
diff --git a/src/other/glew/auto/extensions/GL_NV_shader_buffer_load b/src/other/glew/auto/extensions/GL_NV_shader_buffer_load
deleted file mode 100644
index e58a6b1..0000000
--- a/src/other/glew/auto/extensions/GL_NV_shader_buffer_load
+++ /dev/null
@@ -1,19 +0,0 @@
-GL_NV_shader_buffer_load
-http://www.opengl.org/registry/specs/NV/shader_buffer_load.txt
-GL_NV_shader_buffer_load
-	GL_BUFFER_GPU_ADDRESS_NV 0x8F1D
-	GL_GPU_ADDRESS_NV 0x8F34
-	GL_MAX_SHADER_BUFFER_ADDRESS_NV 0x8F35
-	void glGetBufferParameterui64vNV (GLenum target, GLenum pname, GLuint64EXT* params)
-	void glGetIntegerui64vNV (GLenum value, GLuint64EXT* result)
-	void glGetNamedBufferParameterui64vNV (GLuint buffer, GLenum pname, GLuint64EXT* params)
-	GLboolean glIsBufferResidentNV (GLenum target)
-	GLboolean glIsNamedBufferResidentNV (GLuint buffer)
-	void glMakeBufferNonResidentNV (GLenum target)
-	void glMakeBufferResidentNV (GLenum target, GLenum access)
-	void glMakeNamedBufferNonResidentNV (GLuint buffer)
-	void glMakeNamedBufferResidentNV (GLuint buffer, GLenum access)
-	void glProgramUniformui64NV (GLuint program, GLint location, GLuint64EXT value)
-	void glProgramUniformui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value)
-	void glUniformui64NV (GLint location, GLuint64EXT value)
-	void glUniformui64vNV (GLint location, GLsizei count, const GLuint64EXT* value)
diff --git a/src/other/glew/auto/extensions/GL_NV_tessellation_program5 b/src/other/glew/auto/extensions/GL_NV_tessellation_program5
deleted file mode 100644
index b663c97..0000000
--- a/src/other/glew/auto/extensions/GL_NV_tessellation_program5
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_NV_tessellation_program5
-http://www.opengl.org/registry/specs/NV/tessellation_program5.txt
-GL_NV_gpu_program5
-	GL_MAX_PROGRAM_PATCH_ATTRIBS_NV 0x86D8
-	GL_TESS_CONTROL_PROGRAM_NV 0x891E
-	GL_TESS_EVALUATION_PROGRAM_NV 0x891F
-	GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV 0x8C74
-	GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV 0x8C75
diff --git a/src/other/glew/auto/extensions/GL_NV_texgen_emboss b/src/other/glew/auto/extensions/GL_NV_texgen_emboss
deleted file mode 100644
index 0b7492e..0000000
--- a/src/other/glew/auto/extensions/GL_NV_texgen_emboss
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_NV_texgen_emboss
-http://www.opengl.org/registry/specs/NV/texgen_emboss.txt
-GL_NV_texgen_emboss
-	GL_EMBOSS_LIGHT_NV 0x855D
-	GL_EMBOSS_CONSTANT_NV 0x855E
-	GL_EMBOSS_MAP_NV 0x855F
diff --git a/src/other/glew/auto/extensions/GL_NV_texgen_reflection b/src/other/glew/auto/extensions/GL_NV_texgen_reflection
deleted file mode 100644
index 252b3d1..0000000
--- a/src/other/glew/auto/extensions/GL_NV_texgen_reflection
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_NV_texgen_reflection
-http://www.opengl.org/registry/specs/NV/texgen_reflection.txt
-GL_NV_texgen_reflection
-	GL_NORMAL_MAP_NV 0x8511
-	GL_REFLECTION_MAP_NV 0x8512
diff --git a/src/other/glew/auto/extensions/GL_NV_texture_barrier b/src/other/glew/auto/extensions/GL_NV_texture_barrier
deleted file mode 100644
index ec6ce68..0000000
--- a/src/other/glew/auto/extensions/GL_NV_texture_barrier
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_NV_texture_barrier
-http://www.opengl.org/registry/specs/NV/texture_barrier.txt
-GL_NV_texture_barrier
-	void glTextureBarrierNV (void)
diff --git a/src/other/glew/auto/extensions/GL_NV_texture_compression_vtc b/src/other/glew/auto/extensions/GL_NV_texture_compression_vtc
deleted file mode 100644
index 86cfb6e..0000000
--- a/src/other/glew/auto/extensions/GL_NV_texture_compression_vtc
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_texture_compression_vtc
-http://www.opengl.org/registry/specs/NV/texture_compression_vtc.txt
-GL_NV_texture_compression_vtc
diff --git a/src/other/glew/auto/extensions/GL_NV_texture_env_combine4 b/src/other/glew/auto/extensions/GL_NV_texture_env_combine4
deleted file mode 100644
index 1e1adab..0000000
--- a/src/other/glew/auto/extensions/GL_NV_texture_env_combine4
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_NV_texture_env_combine4
-http://www.opengl.org/registry/specs/NV/texture_env_combine4.txt
-GL_NV_texture_env_combine4
-	GL_COMBINE4_NV 0x8503
-	GL_SOURCE3_RGB_NV 0x8583
-	GL_SOURCE3_ALPHA_NV 0x858B
-	GL_OPERAND3_RGB_NV 0x8593
-	GL_OPERAND3_ALPHA_NV 0x859B
diff --git a/src/other/glew/auto/extensions/GL_NV_texture_expand_normal b/src/other/glew/auto/extensions/GL_NV_texture_expand_normal
deleted file mode 100644
index 9d9b39b..0000000
--- a/src/other/glew/auto/extensions/GL_NV_texture_expand_normal
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_NV_texture_expand_normal
-http://www.opengl.org/registry/specs/NV/texture_expand_normal.txt
-GL_NV_texture_expand_normal
-	GL_TEXTURE_UNSIGNED_REMAP_MODE_NV 0x888F
diff --git a/src/other/glew/auto/extensions/GL_NV_texture_rectangle b/src/other/glew/auto/extensions/GL_NV_texture_rectangle
deleted file mode 100644
index 4da2762..0000000
--- a/src/other/glew/auto/extensions/GL_NV_texture_rectangle
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_NV_texture_rectangle
-http://www.opengl.org/registry/specs/NV/texture_rectangle.txt
-GL_NV_texture_rectangle
-	GL_TEXTURE_RECTANGLE_NV 0x84F5
-	GL_TEXTURE_BINDING_RECTANGLE_NV 0x84F6
-	GL_PROXY_TEXTURE_RECTANGLE_NV 0x84F7
-	GL_MAX_RECTANGLE_TEXTURE_SIZE_NV 0x84F8
diff --git a/src/other/glew/auto/extensions/GL_NV_texture_shader b/src/other/glew/auto/extensions/GL_NV_texture_shader
deleted file mode 100644
index 826db8f..0000000
--- a/src/other/glew/auto/extensions/GL_NV_texture_shader
+++ /dev/null
@@ -1,76 +0,0 @@
-GL_NV_texture_shader
-http://www.opengl.org/registry/specs/NV/texture_shader.txt
-GL_NV_texture_shader
-	GL_OFFSET_TEXTURE_RECTANGLE_NV 0x864C
-	GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV 0x864D
-	GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV 0x864E
-	GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV 0x86D9
-	GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86DA
-	GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86DB
-	GL_DSDT_MAG_INTENSITY_NV 0x86DC
-	GL_SHADER_CONSISTENT_NV 0x86DD
-	GL_TEXTURE_SHADER_NV 0x86DE
-	GL_SHADER_OPERATION_NV 0x86DF
-	GL_CULL_MODES_NV 0x86E0
-	GL_OFFSET_TEXTURE_MATRIX_NV 0x86E1
-	GL_OFFSET_TEXTURE_SCALE_NV 0x86E2
-	GL_OFFSET_TEXTURE_BIAS_NV 0x86E3
-	GL_PREVIOUS_TEXTURE_INPUT_NV 0x86E4
-	GL_CONST_EYE_NV 0x86E5
-	GL_PASS_THROUGH_NV 0x86E6
-	GL_CULL_FRAGMENT_NV 0x86E7
-	GL_OFFSET_TEXTURE_2D_NV 0x86E8
-	GL_DEPENDENT_AR_TEXTURE_2D_NV 0x86E9
-	GL_DEPENDENT_GB_TEXTURE_2D_NV 0x86EA
-	GL_DOT_PRODUCT_NV 0x86EC
-	GL_DOT_PRODUCT_DEPTH_REPLACE_NV 0x86ED
-	GL_DOT_PRODUCT_TEXTURE_2D_NV 0x86EE
-	GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV 0x86F0
-	GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV 0x86F1
-	GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV 0x86F2
-	GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV 0x86F3
-	GL_HILO_NV 0x86F4
-	GL_DSDT_NV 0x86F5
-	GL_DSDT_MAG_NV 0x86F6
-	GL_DSDT_MAG_VIB_NV 0x86F7
-	GL_HILO16_NV 0x86F8
-	GL_SIGNED_HILO_NV 0x86F9
-	GL_SIGNED_HILO16_NV 0x86FA
-	GL_SIGNED_RGBA_NV 0x86FB
-	GL_SIGNED_RGBA8_NV 0x86FC
-	GL_SIGNED_RGB_NV 0x86FE
-	GL_SIGNED_RGB8_NV 0x86FF
-	GL_SIGNED_LUMINANCE_NV 0x8701
-	GL_SIGNED_LUMINANCE8_NV 0x8702
-	GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703
-	GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704
-	GL_SIGNED_ALPHA_NV 0x8705
-	GL_SIGNED_ALPHA8_NV 0x8706
-	GL_SIGNED_INTENSITY_NV 0x8707
-	GL_SIGNED_INTENSITY8_NV 0x8708
-	GL_DSDT8_NV 0x8709
-	GL_DSDT8_MAG8_NV 0x870A
-	GL_DSDT8_MAG8_INTENSITY8_NV 0x870B
-	GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870C
-	GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D
-	GL_HI_SCALE_NV 0x870E
-	GL_LO_SCALE_NV 0x870F
-	GL_DS_SCALE_NV 0x8710
-	GL_DT_SCALE_NV 0x8711
-	GL_MAGNITUDE_SCALE_NV 0x8712
-	GL_VIBRANCE_SCALE_NV 0x8713
-	GL_HI_BIAS_NV 0x8714
-	GL_LO_BIAS_NV 0x8715
-	GL_DS_BIAS_NV 0x8716
-	GL_DT_BIAS_NV 0x8717
-	GL_MAGNITUDE_BIAS_NV 0x8718
-	GL_VIBRANCE_BIAS_NV 0x8719
-	GL_TEXTURE_BORDER_VALUES_NV 0x871A
-	GL_TEXTURE_HI_SIZE_NV 0x871B
-	GL_TEXTURE_LO_SIZE_NV 0x871C
-	GL_TEXTURE_DS_SIZE_NV 0x871D
-	GL_TEXTURE_DT_SIZE_NV 0x871E
-	GL_TEXTURE_MAG_SIZE_NV 0x871F
-	GL_OFFSET_TEXTURE_2D_MATRIX_NV 0x86E1
-	GL_OFFSET_TEXTURE_2D_BIAS_NV 0x86E3
-	GL_OFFSET_TEXTURE_2D_SCALE_NV 0x86E2
diff --git a/src/other/glew/auto/extensions/GL_NV_texture_shader2 b/src/other/glew/auto/extensions/GL_NV_texture_shader2
deleted file mode 100644
index c5cc92d..0000000
--- a/src/other/glew/auto/extensions/GL_NV_texture_shader2
+++ /dev/null
@@ -1,31 +0,0 @@
-GL_NV_texture_shader2
-http://www.opengl.org/registry/specs/NV/texture_shader2.txt
-GL_NV_texture_shader2
-	GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86DA
-	GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86DB
-	GL_DSDT_MAG_INTENSITY_NV 0x86DC
-	GL_DOT_PRODUCT_TEXTURE_3D_NV 0x86EF
-	GL_HILO_NV 0x86F4
-	GL_DSDT_NV 0x86F5
-	GL_DSDT_MAG_NV 0x86F6
-	GL_DSDT_MAG_VIB_NV 0x86F7
-	GL_HILO16_NV 0x86F8
-	GL_SIGNED_HILO_NV 0x86F9
-	GL_SIGNED_HILO16_NV 0x86FA
-	GL_SIGNED_RGBA_NV 0x86FB
-	GL_SIGNED_RGBA8_NV 0x86FC
-	GL_SIGNED_RGB_NV 0x86FE
-	GL_SIGNED_RGB8_NV 0x86FF
-	GL_SIGNED_LUMINANCE_NV 0x8701
-	GL_SIGNED_LUMINANCE8_NV 0x8702
-	GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703
-	GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704
-	GL_SIGNED_ALPHA_NV 0x8705
-	GL_SIGNED_ALPHA8_NV 0x8706
-	GL_SIGNED_INTENSITY_NV 0x8707
-	GL_SIGNED_INTENSITY8_NV 0x8708
-	GL_DSDT8_NV 0x8709
-	GL_DSDT8_MAG8_NV 0x870A
-	GL_DSDT8_MAG8_INTENSITY8_NV 0x870B
-	GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870C
-	GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D
diff --git a/src/other/glew/auto/extensions/GL_NV_texture_shader3 b/src/other/glew/auto/extensions/GL_NV_texture_shader3
deleted file mode 100644
index 5cc042b..0000000
--- a/src/other/glew/auto/extensions/GL_NV_texture_shader3
+++ /dev/null
@@ -1,20 +0,0 @@
-GL_NV_texture_shader3
-http://www.opengl.org/registry/specs/NV/texture_shader3.txt
-GL_NV_texture_shader3
-	GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV 0x8850
-	GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV 0x8851
-	GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8852
-	GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV 0x8853
-	GL_OFFSET_HILO_TEXTURE_2D_NV 0x8854
-	GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV 0x8855
-	GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV 0x8856
-	GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8857
-	GL_DEPENDENT_HILO_TEXTURE_2D_NV 0x8858
-	GL_DEPENDENT_RGB_TEXTURE_3D_NV 0x8859
-	GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV 0x885A
-	GL_DOT_PRODUCT_PASS_THROUGH_NV 0x885B
-	GL_DOT_PRODUCT_TEXTURE_1D_NV 0x885C
-	GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV 0x885D
-	GL_HILO8_NV 0x885E
-	GL_SIGNED_HILO8_NV 0x885F
-	GL_FORCE_BLUE_TO_ONE_NV 0x8860
diff --git a/src/other/glew/auto/extensions/GL_NV_transform_feedback b/src/other/glew/auto/extensions/GL_NV_transform_feedback
deleted file mode 100644
index fce4757..0000000
--- a/src/other/glew/auto/extensions/GL_NV_transform_feedback
+++ /dev/null
@@ -1,39 +0,0 @@
-GL_NV_transform_feedback
-http://developer.download.nvidia.com/opengl/specs/GL_NV_transform_feedback.txt
-GL_NV_transform_feedback
-	GL_BACK_PRIMARY_COLOR_NV 0x8C77
-	GL_BACK_SECONDARY_COLOR_NV 0x8C78
-	GL_TEXTURE_COORD_NV 0x8C79
-	GL_CLIP_DISTANCE_NV 0x8C7A
-	GL_VERTEX_ID_NV 0x8C7B
-	GL_PRIMITIVE_ID_NV 0x8C7C
-	GL_GENERIC_ATTRIB_NV 0x8C7D
-	GL_TRANSFORM_FEEDBACK_ATTRIBS_NV 0x8C7E
-	GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV 0x8C7F
-	GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV 0x8C80
-	GL_ACTIVE_VARYINGS_NV 0x8C81
-	GL_ACTIVE_VARYING_MAX_LENGTH_NV 0x8C82
-	GL_TRANSFORM_FEEDBACK_VARYINGS_NV 0x8C83
-	GL_TRANSFORM_FEEDBACK_BUFFER_START_NV 0x8C84
-	GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV 0x8C85
-	GL_TRANSFORM_FEEDBACK_RECORD_NV 0x8C86
-	GL_PRIMITIVES_GENERATED_NV 0x8C87
-	GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV 0x8C88
-	GL_RASTERIZER_DISCARD_NV 0x8C89
-	GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV 0x8C8A
-	GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV 0x8C8B
-	GL_INTERLEAVED_ATTRIBS_NV 0x8C8C
-	GL_SEPARATE_ATTRIBS_NV 0x8C8D
-	GL_TRANSFORM_FEEDBACK_BUFFER_NV 0x8C8E
-	GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV 0x8C8F
-	void glBeginTransformFeedbackNV (GLenum primitiveMode)
-	void glEndTransformFeedbackNV (void)
-	void glTransformFeedbackAttribsNV (GLuint count, const GLint *attribs, GLenum bufferMode)
-	void glBindBufferRangeNV (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
-	void glBindBufferOffsetNV (GLenum target, GLuint index, GLuint buffer, GLintptr offset)
-	void glBindBufferBaseNV (GLenum target, GLuint index, GLuint buffer)
-	void glTransformFeedbackVaryingsNV (GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode)
-	void glActiveVaryingNV (GLuint program, const GLchar *name)
-	GLint glGetVaryingLocationNV (GLuint program, const GLchar *name)
-	void glGetActiveVaryingNV (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name)
-	void glGetTransformFeedbackVaryingNV (GLuint program, GLuint index, GLint *location)
diff --git a/src/other/glew/auto/extensions/GL_NV_transform_feedback2 b/src/other/glew/auto/extensions/GL_NV_transform_feedback2
deleted file mode 100644
index 5513687..0000000
--- a/src/other/glew/auto/extensions/GL_NV_transform_feedback2
+++ /dev/null
@@ -1,14 +0,0 @@
-GL_NV_transform_feedback2
-http://www.opengl.org/registry/specs/NV/transform_feedback2.txt
-GL_NV_transform_feedback2
-	GL_TRANSFORM_FEEDBACK_NV 0x8E22
-	GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV 0x8E23
-	GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV 0x8E24
-	GL_TRANSFORM_FEEDBACK_BINDING_NV 0x8E25
-	void glBindTransformFeedbackNV (GLenum target, GLuint id)
-	void glDeleteTransformFeedbacksNV (GLsizei n, const GLuint* ids)
-	void glDrawTransformFeedbackNV (GLenum mode, GLuint id)
-	void glGenTransformFeedbacksNV (GLsizei n, GLuint* ids)
-	GLboolean glIsTransformFeedbackNV (GLuint id)
-	void glPauseTransformFeedbackNV (void)
-	void glResumeTransformFeedbackNV (void)
diff --git a/src/other/glew/auto/extensions/GL_NV_vertex_array_range b/src/other/glew/auto/extensions/GL_NV_vertex_array_range
deleted file mode 100644
index 32396aa..0000000
--- a/src/other/glew/auto/extensions/GL_NV_vertex_array_range
+++ /dev/null
@@ -1,10 +0,0 @@
-GL_NV_vertex_array_range
-http://www.opengl.org/registry/specs/NV/vertex_array_range.txt
-GL_NV_vertex_array_range
-	GL_VERTEX_ARRAY_RANGE_NV 0x851D
-	GL_VERTEX_ARRAY_RANGE_LENGTH_NV 0x851E
-	GL_VERTEX_ARRAY_RANGE_VALID_NV 0x851F
-	GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV 0x8520
-	GL_VERTEX_ARRAY_RANGE_POINTER_NV 0x8521
-	void glFlushVertexArrayRangeNV (void)
-	void glVertexArrayRangeNV (GLsizei length, void* pointer)
diff --git a/src/other/glew/auto/extensions/GL_NV_vertex_array_range2 b/src/other/glew/auto/extensions/GL_NV_vertex_array_range2
deleted file mode 100644
index 00fa72c..0000000
--- a/src/other/glew/auto/extensions/GL_NV_vertex_array_range2
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_NV_vertex_array_range2
-http://www.opengl.org/registry/specs/NV/vertex_array_range2.txt
-GL_NV_vertex_array_range2
-	GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV 0x8533
diff --git a/src/other/glew/auto/extensions/GL_NV_vertex_attrib_integer_64bit b/src/other/glew/auto/extensions/GL_NV_vertex_attrib_integer_64bit
deleted file mode 100644
index a34bb36..0000000
--- a/src/other/glew/auto/extensions/GL_NV_vertex_attrib_integer_64bit
+++ /dev/null
@@ -1,24 +0,0 @@
-GL_NV_vertex_attrib_integer_64bit
-http://www.opengl.org/registry/specs/NV/vertex_attrib_integer_64bit.txt
-GL_NV_vertex_attrib_integer_64bit
-	GL_INT64_NV 0x140E
-	GL_UNSIGNED_INT64_NV 0x140F
-	void glGetVertexAttribLi64vNV (GLuint index, GLenum pname, GLint64EXT* params)
-	void glGetVertexAttribLui64vNV (GLuint index, GLenum pname, GLuint64EXT* params)
-	void glVertexAttribL1i64NV (GLuint index, GLint64EXT x)
-	void glVertexAttribL1i64vNV (GLuint index, const GLint64EXT* v)
-	void glVertexAttribL1ui64NV (GLuint index, GLuint64EXT x)
-	void glVertexAttribL1ui64vNV (GLuint index, const GLuint64EXT* v)
-	void glVertexAttribL2i64NV (GLuint index, GLint64EXT x, GLint64EXT y)
-	void glVertexAttribL2i64vNV (GLuint index, const GLint64EXT* v)
-	void glVertexAttribL2ui64NV (GLuint index, GLuint64EXT x, GLuint64EXT y)
-	void glVertexAttribL2ui64vNV (GLuint index, const GLuint64EXT* v)
-	void glVertexAttribL3i64NV (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z)
-	void glVertexAttribL3i64vNV (GLuint index, const GLint64EXT* v)
-	void glVertexAttribL3ui64NV (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z)
-	void glVertexAttribL3ui64vNV (GLuint index, const GLuint64EXT* v)
-	void glVertexAttribL4i64NV (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w)
-	void glVertexAttribL4i64vNV (GLuint index, const GLint64EXT* v)
-	void glVertexAttribL4ui64NV (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w)
-	void glVertexAttribL4ui64vNV (GLuint index, const GLuint64EXT* v)
-	void glVertexAttribLFormatNV (GLuint index, GLint size, GLenum type, GLsizei stride)
diff --git a/src/other/glew/auto/extensions/GL_NV_vertex_buffer_unified_memory b/src/other/glew/auto/extensions/GL_NV_vertex_buffer_unified_memory
deleted file mode 100644
index 474d4f3..0000000
--- a/src/other/glew/auto/extensions/GL_NV_vertex_buffer_unified_memory
+++ /dev/null
@@ -1,37 +0,0 @@
-GL_NV_vertex_buffer_unified_memory
-http://www.opengl.org/registry/specs/NV/vertex_buffer_unified_memory.txt
-GL_NV_vertex_buffer_unified_memory
-	GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV 0x8F1E
-	GL_ELEMENT_ARRAY_UNIFIED_NV 0x8F1F
-	GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV 0x8F20
-	GL_VERTEX_ARRAY_ADDRESS_NV 0x8F21
-	GL_NORMAL_ARRAY_ADDRESS_NV 0x8F22
-	GL_COLOR_ARRAY_ADDRESS_NV 0x8F23
-	GL_INDEX_ARRAY_ADDRESS_NV 0x8F24
-	GL_TEXTURE_COORD_ARRAY_ADDRESS_NV 0x8F25
-	GL_EDGE_FLAG_ARRAY_ADDRESS_NV 0x8F26
-	GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV 0x8F27
-	GL_FOG_COORD_ARRAY_ADDRESS_NV 0x8F28
-	GL_ELEMENT_ARRAY_ADDRESS_NV 0x8F29
-	GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV 0x8F2A
-	GL_VERTEX_ARRAY_LENGTH_NV 0x8F2B
-	GL_NORMAL_ARRAY_LENGTH_NV 0x8F2C
-	GL_COLOR_ARRAY_LENGTH_NV 0x8F2D
-	GL_INDEX_ARRAY_LENGTH_NV 0x8F2E
-	GL_TEXTURE_COORD_ARRAY_LENGTH_NV 0x8F2F
-	GL_EDGE_FLAG_ARRAY_LENGTH_NV 0x8F30
-	GL_SECONDARY_COLOR_ARRAY_LENGTH_NV 0x8F31
-	GL_FOG_COORD_ARRAY_LENGTH_NV 0x8F32
-	GL_ELEMENT_ARRAY_LENGTH_NV 0x8F33
-	void glBufferAddressRangeNV (GLenum pname, GLuint index, GLuint64EXT address, GLsizeiptr length)
-	void glColorFormatNV (GLint size, GLenum type, GLsizei stride)
-	void glEdgeFlagFormatNV (GLsizei stride)
-	void glFogCoordFormatNV (GLenum type, GLsizei stride)
-	void glGetIntegerui64i_vNV (GLenum value, GLuint index, GLuint64EXT result[])
-	void glIndexFormatNV (GLenum type, GLsizei stride)
-	void glNormalFormatNV (GLenum type, GLsizei stride)
-	void glSecondaryColorFormatNV (GLint size, GLenum type, GLsizei stride)
-	void glTexCoordFormatNV (GLint size, GLenum type, GLsizei stride)
-	void glVertexAttribFormatNV (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride)
-	void glVertexAttribIFormatNV (GLuint index, GLint size, GLenum type, GLsizei stride)
-	void glVertexFormatNV (GLint size, GLenum type, GLsizei stride)
diff --git a/src/other/glew/auto/extensions/GL_NV_vertex_program b/src/other/glew/auto/extensions/GL_NV_vertex_program
deleted file mode 100644
index cb4cc8a..0000000
--- a/src/other/glew/auto/extensions/GL_NV_vertex_program
+++ /dev/null
@@ -1,150 +0,0 @@
-GL_NV_vertex_program
-http://www.opengl.org/registry/specs/NV/vertex_program.txt
-GL_NV_vertex_program
-	GL_VERTEX_PROGRAM_NV 0x8620
-	GL_VERTEX_STATE_PROGRAM_NV 0x8621
-	GL_ATTRIB_ARRAY_SIZE_NV 0x8623
-	GL_ATTRIB_ARRAY_STRIDE_NV 0x8624
-	GL_ATTRIB_ARRAY_TYPE_NV 0x8625
-	GL_CURRENT_ATTRIB_NV 0x8626
-	GL_PROGRAM_LENGTH_NV 0x8627
-	GL_PROGRAM_STRING_NV 0x8628
-	GL_MODELVIEW_PROJECTION_NV 0x8629
-	GL_IDENTITY_NV 0x862A
-	GL_INVERSE_NV 0x862B
-	GL_TRANSPOSE_NV 0x862C
-	GL_INVERSE_TRANSPOSE_NV 0x862D
-	GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV 0x862E
-	GL_MAX_TRACK_MATRICES_NV 0x862F
-	GL_MATRIX0_NV 0x8630
-	GL_MATRIX1_NV 0x8631
-	GL_MATRIX2_NV 0x8632
-	GL_MATRIX3_NV 0x8633
-	GL_MATRIX4_NV 0x8634
-	GL_MATRIX5_NV 0x8635
-	GL_MATRIX6_NV 0x8636
-	GL_MATRIX7_NV 0x8637
-	GL_CURRENT_MATRIX_STACK_DEPTH_NV 0x8640
-	GL_CURRENT_MATRIX_NV 0x8641
-	GL_VERTEX_PROGRAM_POINT_SIZE_NV 0x8642
-	GL_VERTEX_PROGRAM_TWO_SIDE_NV 0x8643
-	GL_PROGRAM_PARAMETER_NV 0x8644
-	GL_ATTRIB_ARRAY_POINTER_NV 0x8645
-	GL_PROGRAM_TARGET_NV 0x8646
-	GL_PROGRAM_RESIDENT_NV 0x8647
-	GL_TRACK_MATRIX_NV 0x8648
-	GL_TRACK_MATRIX_TRANSFORM_NV 0x8649
-	GL_VERTEX_PROGRAM_BINDING_NV 0x864A
-	GL_PROGRAM_ERROR_POSITION_NV 0x864B
-	GL_VERTEX_ATTRIB_ARRAY0_NV 0x8650
-	GL_VERTEX_ATTRIB_ARRAY1_NV 0x8651
-	GL_VERTEX_ATTRIB_ARRAY2_NV 0x8652
-	GL_VERTEX_ATTRIB_ARRAY3_NV 0x8653
-	GL_VERTEX_ATTRIB_ARRAY4_NV 0x8654
-	GL_VERTEX_ATTRIB_ARRAY5_NV 0x8655
-	GL_VERTEX_ATTRIB_ARRAY6_NV 0x8656
-	GL_VERTEX_ATTRIB_ARRAY7_NV 0x8657
-	GL_VERTEX_ATTRIB_ARRAY8_NV 0x8658
-	GL_VERTEX_ATTRIB_ARRAY9_NV 0x8659
-	GL_VERTEX_ATTRIB_ARRAY10_NV 0x865A
-	GL_VERTEX_ATTRIB_ARRAY11_NV 0x865B
-	GL_VERTEX_ATTRIB_ARRAY12_NV 0x865C
-	GL_VERTEX_ATTRIB_ARRAY13_NV 0x865D
-	GL_VERTEX_ATTRIB_ARRAY14_NV 0x865E
-	GL_VERTEX_ATTRIB_ARRAY15_NV 0x865F
-	GL_MAP1_VERTEX_ATTRIB0_4_NV 0x8660
-	GL_MAP1_VERTEX_ATTRIB1_4_NV 0x8661
-	GL_MAP1_VERTEX_ATTRIB2_4_NV 0x8662
-	GL_MAP1_VERTEX_ATTRIB3_4_NV 0x8663
-	GL_MAP1_VERTEX_ATTRIB4_4_NV 0x8664
-	GL_MAP1_VERTEX_ATTRIB5_4_NV 0x8665
-	GL_MAP1_VERTEX_ATTRIB6_4_NV 0x8666
-	GL_MAP1_VERTEX_ATTRIB7_4_NV 0x8667
-	GL_MAP1_VERTEX_ATTRIB8_4_NV 0x8668
-	GL_MAP1_VERTEX_ATTRIB9_4_NV 0x8669
-	GL_MAP1_VERTEX_ATTRIB10_4_NV 0x866A
-	GL_MAP1_VERTEX_ATTRIB11_4_NV 0x866B
-	GL_MAP1_VERTEX_ATTRIB12_4_NV 0x866C
-	GL_MAP1_VERTEX_ATTRIB13_4_NV 0x866D
-	GL_MAP1_VERTEX_ATTRIB14_4_NV 0x866E
-	GL_MAP1_VERTEX_ATTRIB15_4_NV 0x866F
-	GL_MAP2_VERTEX_ATTRIB0_4_NV 0x8670
-	GL_MAP2_VERTEX_ATTRIB1_4_NV 0x8671
-	GL_MAP2_VERTEX_ATTRIB2_4_NV 0x8672
-	GL_MAP2_VERTEX_ATTRIB3_4_NV 0x8673
-	GL_MAP2_VERTEX_ATTRIB4_4_NV 0x8674
-	GL_MAP2_VERTEX_ATTRIB5_4_NV 0x8675
-	GL_MAP2_VERTEX_ATTRIB6_4_NV 0x8676
-	GL_MAP2_VERTEX_ATTRIB7_4_NV 0x8677
-	GL_MAP2_VERTEX_ATTRIB8_4_NV 0x8678
-	GL_MAP2_VERTEX_ATTRIB9_4_NV 0x8679
-	GL_MAP2_VERTEX_ATTRIB10_4_NV 0x867A
-	GL_MAP2_VERTEX_ATTRIB11_4_NV 0x867B
-	GL_MAP2_VERTEX_ATTRIB12_4_NV 0x867C
-	GL_MAP2_VERTEX_ATTRIB13_4_NV 0x867D
-	GL_MAP2_VERTEX_ATTRIB14_4_NV 0x867E
-	GL_MAP2_VERTEX_ATTRIB15_4_NV 0x867F
-	GLboolean glAreProgramsResidentNV (GLsizei n, const GLuint* ids, GLboolean *residences)
-	void glBindProgramNV (GLenum target, GLuint id)
-	void glDeleteProgramsNV (GLsizei n, const GLuint* ids)
-	void glExecuteProgramNV (GLenum target, GLuint id, const GLfloat* params)
-	void glGenProgramsNV (GLsizei n, GLuint* ids)
-	void glGetProgramParameterdvNV (GLenum target, GLuint index, GLenum pname, GLdouble* params)
-	void glGetProgramParameterfvNV (GLenum target, GLuint index, GLenum pname, GLfloat* params)
-	void glGetProgramStringNV (GLuint id, GLenum pname, GLubyte* program)
-	void glGetProgramivNV (GLuint id, GLenum pname, GLint* params)
-	void glGetTrackMatrixivNV (GLenum target, GLuint address, GLenum pname, GLint* params)
-	void glGetVertexAttribPointervNV (GLuint index, GLenum pname, GLvoid** pointer)
-	void glGetVertexAttribdvNV (GLuint index, GLenum pname, GLdouble* params)
-	void glGetVertexAttribfvNV (GLuint index, GLenum pname, GLfloat* params)
-	void glGetVertexAttribivNV (GLuint index, GLenum pname, GLint* params)
-	GLboolean glIsProgramNV (GLuint id)
-	void glLoadProgramNV (GLenum target, GLuint id, GLsizei len, const GLubyte* program)
-	void glProgramParameter4dNV (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-	void glProgramParameter4dvNV (GLenum target, GLuint index, const GLdouble* params)
-	void glProgramParameter4fNV (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glProgramParameter4fvNV (GLenum target, GLuint index, const GLfloat* params)
-	void glProgramParameters4dvNV (GLenum target, GLuint index, GLuint num, const GLdouble* params)
-	void glProgramParameters4fvNV (GLenum target, GLuint index, GLuint num, const GLfloat* params)
-	void glRequestResidentProgramsNV (GLsizei n, GLuint* ids)
-	void glTrackMatrixNV (GLenum target, GLuint address, GLenum matrix, GLenum transform)
-	void glVertexAttrib1dNV (GLuint index, GLdouble x)
-	void glVertexAttrib1dvNV (GLuint index, const GLdouble* v)
-	void glVertexAttrib1fNV (GLuint index, GLfloat x)
-	void glVertexAttrib1fvNV (GLuint index, const GLfloat* v)
-	void glVertexAttrib1sNV (GLuint index, GLshort x)
-	void glVertexAttrib1svNV (GLuint index, const GLshort* v)
-	void glVertexAttrib2dNV (GLuint index, GLdouble x, GLdouble y)
-	void glVertexAttrib2dvNV (GLuint index, const GLdouble* v)
-	void glVertexAttrib2fNV (GLuint index, GLfloat x, GLfloat y)
-	void glVertexAttrib2fvNV (GLuint index, const GLfloat* v)
-	void glVertexAttrib2sNV (GLuint index, GLshort x, GLshort y)
-	void glVertexAttrib2svNV (GLuint index, const GLshort* v)
-	void glVertexAttrib3dNV (GLuint index, GLdouble x, GLdouble y, GLdouble z)
-	void glVertexAttrib3dvNV (GLuint index, const GLdouble* v)
-	void glVertexAttrib3fNV (GLuint index, GLfloat x, GLfloat y, GLfloat z)
-	void glVertexAttrib3fvNV (GLuint index, const GLfloat* v)
-	void glVertexAttrib3sNV (GLuint index, GLshort x, GLshort y, GLshort z)
-	void glVertexAttrib3svNV (GLuint index, const GLshort* v)
-	void glVertexAttrib4dNV (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-	void glVertexAttrib4dvNV (GLuint index, const GLdouble* v)
-	void glVertexAttrib4fNV (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glVertexAttrib4fvNV (GLuint index, const GLfloat* v)
-	void glVertexAttrib4sNV (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
-	void glVertexAttrib4svNV (GLuint index, const GLshort* v)
-	void glVertexAttrib4ubNV (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
-	void glVertexAttrib4ubvNV (GLuint index, const GLubyte* v)
-	void glVertexAttribPointerNV (GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer)
-	void glVertexAttribs1dvNV (GLuint index, GLsizei n, const GLdouble* v)
-	void glVertexAttribs1fvNV (GLuint index, GLsizei n, const GLfloat* v)
-	void glVertexAttribs1svNV (GLuint index, GLsizei n, const GLshort* v)
-	void glVertexAttribs2dvNV (GLuint index, GLsizei n, const GLdouble* v)
-	void glVertexAttribs2fvNV (GLuint index, GLsizei n, const GLfloat* v)
-	void glVertexAttribs2svNV (GLuint index, GLsizei n, const GLshort* v)
-	void glVertexAttribs3dvNV (GLuint index, GLsizei n, const GLdouble* v)
-	void glVertexAttribs3fvNV (GLuint index, GLsizei n, const GLfloat* v)
-	void glVertexAttribs3svNV (GLuint index, GLsizei n, const GLshort* v)
-	void glVertexAttribs4dvNV (GLuint index, GLsizei n, const GLdouble* v)
-	void glVertexAttribs4fvNV (GLuint index, GLsizei n, const GLfloat* v)
-	void glVertexAttribs4svNV (GLuint index, GLsizei n, const GLshort* v)
-	void glVertexAttribs4ubvNV (GLuint index, GLsizei n, const GLubyte* v)
diff --git a/src/other/glew/auto/extensions/GL_NV_vertex_program1_1 b/src/other/glew/auto/extensions/GL_NV_vertex_program1_1
deleted file mode 100644
index 929248a..0000000
--- a/src/other/glew/auto/extensions/GL_NV_vertex_program1_1
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_vertex_program1_1
-http://www.opengl.org/registry/specs/NV/vertex_program1_1.txt
-GL_NV_vertex_program1_1
diff --git a/src/other/glew/auto/extensions/GL_NV_vertex_program2 b/src/other/glew/auto/extensions/GL_NV_vertex_program2
deleted file mode 100644
index e80c7a4..0000000
--- a/src/other/glew/auto/extensions/GL_NV_vertex_program2
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_vertex_program2
-http://www.opengl.org/registry/specs/NV/vertex_program2.txt
-GL_NV_vertex_program2
diff --git a/src/other/glew/auto/extensions/GL_NV_vertex_program2_option b/src/other/glew/auto/extensions/GL_NV_vertex_program2_option
deleted file mode 100644
index 1fecc4c..0000000
--- a/src/other/glew/auto/extensions/GL_NV_vertex_program2_option
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_NV_vertex_program2_option
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_vertex_program2_option.txt
-GL_NV_vertex_program2_option
-	GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4
-	GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5
diff --git a/src/other/glew/auto/extensions/GL_NV_vertex_program3 b/src/other/glew/auto/extensions/GL_NV_vertex_program3
deleted file mode 100644
index 6510e06..0000000
--- a/src/other/glew/auto/extensions/GL_NV_vertex_program3
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_NV_vertex_program3
-http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_vertex_program3.txt
-GL_NV_vertex_program3
-	MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C
diff --git a/src/other/glew/auto/extensions/GL_NV_vertex_program4 b/src/other/glew/auto/extensions/GL_NV_vertex_program4
deleted file mode 100644
index 7e61b3a..0000000
--- a/src/other/glew/auto/extensions/GL_NV_vertex_program4
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_NV_vertex_program4
-http://developer.download.nvidia.com/opengl/specs/GL_NV_vertex_program4.txt
-GL_NV_gpu_program4
diff --git a/src/other/glew/auto/extensions/GL_OES_byte_coordinates b/src/other/glew/auto/extensions/GL_OES_byte_coordinates
deleted file mode 100644
index cf9d509..0000000
--- a/src/other/glew/auto/extensions/GL_OES_byte_coordinates
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_OES_byte_coordinates
-http://www.opengl.org/registry/specs/OES/OES_byte_coordinates.txt
-GL_OES_byte_coordinates
-	GL_BYTE 0x1400
diff --git a/src/other/glew/auto/extensions/GL_OES_compressed_paletted_texture b/src/other/glew/auto/extensions/GL_OES_compressed_paletted_texture
deleted file mode 100644
index d883838..0000000
--- a/src/other/glew/auto/extensions/GL_OES_compressed_paletted_texture
+++ /dev/null
@@ -1,13 +0,0 @@
-GL_OES_compressed_paletted_texture
-http://www.opengl.org/registry/specs/OES/OES_compressed_paletted_texture.txt
-GL_OES_compressed_paletted_texture
-	GL_PALETTE4_RGB8_OES 0x8B90
-	GL_PALETTE4_RGBA8_OES 0x8B91
-	GL_PALETTE4_R5_G6_B5_OES 0x8B92
-	GL_PALETTE4_RGBA4_OES 0x8B93
-	GL_PALETTE4_RGB5_A1_OES 0x8B94
-	GL_PALETTE8_RGB8_OES 0x8B95
-	GL_PALETTE8_RGBA8_OES 0x8B96
-	GL_PALETTE8_R5_G6_B5_OES 0x8B97
-	GL_PALETTE8_RGBA4_OES 0x8B98
-	GL_PALETTE8_RGB5_A1_OES 0x8B99
diff --git a/src/other/glew/auto/extensions/GL_OES_read_format b/src/other/glew/auto/extensions/GL_OES_read_format
deleted file mode 100644
index 08e91a4..0000000
--- a/src/other/glew/auto/extensions/GL_OES_read_format
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_OES_read_format
-http://www.opengl.org/registry/specs/OES/OES_read_format.txt
-GL_OES_read_format
-	GL_IMPLEMENTATION_COLOR_READ_TYPE_OES 0x8B9A
-	GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES 0x8B9B
diff --git a/src/other/glew/auto/extensions/GL_OES_single_precision b/src/other/glew/auto/extensions/GL_OES_single_precision
deleted file mode 100644
index 8702c6d..0000000
--- a/src/other/glew/auto/extensions/GL_OES_single_precision
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_OES_single_precision
-http://www.opengl.org/registry/specs/OES/OES_single_precision.txt
-GL_OES_single_precision
-	void glClearDepthfOES (GLclampd depth)
-	void glClipPlanefOES (GLenum plane, const GLfloat* equation)
-	void glDepthRangefOES (GLclampf n, GLclampf f)
-	void glFrustumfOES (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f)
-	void glGetClipPlanefOES (GLenum plane, GLfloat* equation)
-	void glOrthofOES (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f)
diff --git a/src/other/glew/auto/extensions/GL_OML_interlace b/src/other/glew/auto/extensions/GL_OML_interlace
deleted file mode 100644
index 384a43b..0000000
--- a/src/other/glew/auto/extensions/GL_OML_interlace
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_OML_interlace
-http://www.opengl.org/registry/specs/OML/interlace.txt
-GL_OML_interlace
-	GL_INTERLACE_OML 0x8980
-	GL_INTERLACE_READ_OML 0x8981
diff --git a/src/other/glew/auto/extensions/GL_OML_resample b/src/other/glew/auto/extensions/GL_OML_resample
deleted file mode 100644
index 6e702bf..0000000
--- a/src/other/glew/auto/extensions/GL_OML_resample
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_OML_resample
-http://www.opengl.org/registry/specs/OML/resample.txt
-GL_OML_resample
-	GL_PACK_RESAMPLE_OML 0x8984
-	GL_UNPACK_RESAMPLE_OML 0x8985
-	GL_RESAMPLE_REPLICATE_OML 0x8986
-	GL_RESAMPLE_ZERO_FILL_OML 0x8987
-	GL_RESAMPLE_AVERAGE_OML 0x8988
-	GL_RESAMPLE_DECIMATE_OML 0x8989
diff --git a/src/other/glew/auto/extensions/GL_OML_subsample b/src/other/glew/auto/extensions/GL_OML_subsample
deleted file mode 100644
index 3406ae7..0000000
--- a/src/other/glew/auto/extensions/GL_OML_subsample
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_OML_subsample
-http://www.opengl.org/registry/specs/OML/subsample.txt
-GL_OML_subsample
-	GL_FORMAT_SUBSAMPLE_24_24_OML 0x8982
-	GL_FORMAT_SUBSAMPLE_244_244_OML 0x8983
diff --git a/src/other/glew/auto/extensions/GL_PGI_misc_hints b/src/other/glew/auto/extensions/GL_PGI_misc_hints
deleted file mode 100644
index b8e88bd..0000000
--- a/src/other/glew/auto/extensions/GL_PGI_misc_hints
+++ /dev/null
@@ -1,23 +0,0 @@
-GL_PGI_misc_hints
-http://www.opengl.org/registry/specs/PGI/misc_hints.txt
-GL_PGI_misc_hints
-	GL_PREFER_DOUBLEBUFFER_HINT_PGI 107000
-	GL_CONSERVE_MEMORY_HINT_PGI 107005
-	GL_RECLAIM_MEMORY_HINT_PGI 107006
-	GL_NATIVE_GRAPHICS_HANDLE_PGI 107010
-	GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI 107011
-	GL_NATIVE_GRAPHICS_END_HINT_PGI 107012
-	GL_ALWAYS_FAST_HINT_PGI 107020
-	GL_ALWAYS_SOFT_HINT_PGI 107021
-	GL_ALLOW_DRAW_OBJ_HINT_PGI 107022
-	GL_ALLOW_DRAW_WIN_HINT_PGI 107023
-	GL_ALLOW_DRAW_FRG_HINT_PGI 107024
-	GL_ALLOW_DRAW_MEM_HINT_PGI 107025
-	GL_STRICT_DEPTHFUNC_HINT_PGI 107030
-	GL_STRICT_LIGHTING_HINT_PGI 107031
-	GL_STRICT_SCISSOR_HINT_PGI 107032
-	GL_FULL_STIPPLE_HINT_PGI 107033
-	GL_CLIP_NEAR_HINT_PGI 107040
-	GL_CLIP_FAR_HINT_PGI 107041
-	GL_WIDE_LINE_HINT_PGI 107042
-	GL_BACK_NORMALS_HINT_PGI 107043
diff --git a/src/other/glew/auto/extensions/GL_PGI_vertex_hints b/src/other/glew/auto/extensions/GL_PGI_vertex_hints
deleted file mode 100644
index 3550952..0000000
--- a/src/other/glew/auto/extensions/GL_PGI_vertex_hints
+++ /dev/null
@@ -1,25 +0,0 @@
-GL_PGI_vertex_hints
-http://www.opengl.org/registry/specs/PGI/vertex_hints.txt
-GL_PGI_vertex_hints
-	GL_VERTEX23_BIT_PGI 0x00000004
-	GL_VERTEX4_BIT_PGI 0x00000008
-	GL_COLOR3_BIT_PGI 0x00010000
-	GL_COLOR4_BIT_PGI 0x00020000
-	GL_EDGEFLAG_BIT_PGI 0x00040000
-	GL_INDEX_BIT_PGI 0x00080000
-	GL_MAT_AMBIENT_BIT_PGI 0x00100000
-	GL_VERTEX_DATA_HINT_PGI 107050
-	GL_VERTEX_CONSISTENT_HINT_PGI 107051
-	GL_MATERIAL_SIDE_HINT_PGI 107052
-	GL_MAX_VERTEX_HINT_PGI 107053
-	GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI 0x00200000
-	GL_MAT_DIFFUSE_BIT_PGI 0x00400000
-	GL_MAT_EMISSION_BIT_PGI 0x00800000
-	GL_MAT_COLOR_INDEXES_BIT_PGI 0x01000000
-	GL_MAT_SHININESS_BIT_PGI 0x02000000
-	GL_MAT_SPECULAR_BIT_PGI 0x04000000
-	GL_NORMAL_BIT_PGI 0x08000000
-	GL_TEXCOORD1_BIT_PGI 0x10000000
-	GL_TEXCOORD2_BIT_PGI 0x20000000
-	GL_TEXCOORD3_BIT_PGI 0x40000000
-	GL_TEXCOORD4_BIT_PGI 0x80000000
diff --git a/src/other/glew/auto/extensions/GL_REND_screen_coordinates b/src/other/glew/auto/extensions/GL_REND_screen_coordinates
deleted file mode 100644
index d4447ea..0000000
--- a/src/other/glew/auto/extensions/GL_REND_screen_coordinates
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_REND_screen_coordinates
-http://www.opengl.org/registry/specs/REND/screen_coordinates.txt
-GL_REND_screen_coordinates
-	GL_SCREEN_COORDINATES_REND 0x8490
-	GL_INVERTED_SCREEN_W_REND 0x8491
diff --git a/src/other/glew/auto/extensions/GL_S3_s3tc b/src/other/glew/auto/extensions/GL_S3_s3tc
deleted file mode 100644
index 1d9d71c..0000000
--- a/src/other/glew/auto/extensions/GL_S3_s3tc
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_S3_s3tc
-http://www.opengl.org/registry/specs/S3/s3tc.txt
-GL_S3_s3tc
-	GL_RGB_S3TC 0x83A0
-	GL_RGB4_S3TC 0x83A1
-	GL_RGBA_S3TC 0x83A2
-	GL_RGBA4_S3TC 0x83A3
-	GL_RGBA_DXT5_S3TC 0x83A4
-	GL_RGBA4_DXT5_S3TC 0x83A5
diff --git a/src/other/glew/auto/extensions/GL_SGIS_color_range b/src/other/glew/auto/extensions/GL_SGIS_color_range
deleted file mode 100644
index 71d39c5..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_color_range
+++ /dev/null
@@ -1,12 +0,0 @@
-GL_SGIS_color_range
-http://www.opengl.org/registry/specs/SGIS/color_range.txt
-GL_SGIS_color_range
-	GL_EXTENDED_RANGE_SGIS 0x85A5
-	GL_MIN_RED_SGIS 0x85A6
-	GL_MAX_RED_SGIS 0x85A7
-	GL_MIN_GREEN_SGIS 0x85A8
-	GL_MAX_GREEN_SGIS 0x85A9
-	GL_MIN_BLUE_SGIS 0x85AA
-	GL_MAX_BLUE_SGIS 0x85AB
-	GL_MIN_ALPHA_SGIS 0x85AC
-	GL_MAX_ALPHA_SGIS 0x85AD
diff --git a/src/other/glew/auto/extensions/GL_SGIS_detail_texture b/src/other/glew/auto/extensions/GL_SGIS_detail_texture
deleted file mode 100644
index 178f7b2..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_detail_texture
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SGIS_detail_texture
-http://www.opengl.org/registry/specs/SGIS/detail_texture.txt
-GL_SGIS_detail_texture
-	void glDetailTexFuncSGIS (GLenum target, GLsizei n, const GLfloat* points)
-	void glGetDetailTexFuncSGIS (GLenum target, GLfloat* points)
diff --git a/src/other/glew/auto/extensions/GL_SGIS_fog_function b/src/other/glew/auto/extensions/GL_SGIS_fog_function
deleted file mode 100644
index 3716d97..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_fog_function
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SGIS_fog_function
-http://www.opengl.org/registry/specs/SGIS/fog_func.txt
-GL_SGIS_fog_function
-	void glFogFuncSGIS (GLsizei n, const GLfloat* points)
-	void glGetFogFuncSGIS (GLfloat* points)
diff --git a/src/other/glew/auto/extensions/GL_SGIS_generate_mipmap b/src/other/glew/auto/extensions/GL_SGIS_generate_mipmap
deleted file mode 100644
index cc7b27b..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_generate_mipmap
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SGIS_generate_mipmap
-http://www.opengl.org/registry/specs/SGIS/generate_mipmap.txt
-GL_SGIS_generate_mipmap
-	GL_GENERATE_MIPMAP_SGIS 0x8191
-	GL_GENERATE_MIPMAP_HINT_SGIS 0x8192
diff --git a/src/other/glew/auto/extensions/GL_SGIS_multisample b/src/other/glew/auto/extensions/GL_SGIS_multisample
deleted file mode 100644
index 255de64..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_multisample
+++ /dev/null
@@ -1,22 +0,0 @@
-GL_SGIS_multisample
-http://www.opengl.org/registry/specs/SGIS/multisample.txt
-GL_SGIS_multisample
-	GL_MULTISAMPLE_SGIS 0x809D
-	GL_SAMPLE_ALPHA_TO_MASK_SGIS 0x809E
-	GL_SAMPLE_ALPHA_TO_ONE_SGIS 0x809F
-	GL_SAMPLE_MASK_SGIS 0x80A0
-	GL_1PASS_SGIS 0x80A1
-	GL_2PASS_0_SGIS 0x80A2
-	GL_2PASS_1_SGIS 0x80A3
-	GL_4PASS_0_SGIS 0x80A4
-	GL_4PASS_1_SGIS 0x80A5
-	GL_4PASS_2_SGIS 0x80A6
-	GL_4PASS_3_SGIS 0x80A7
-	GL_SAMPLE_BUFFERS_SGIS 0x80A8
-	GL_SAMPLES_SGIS 0x80A9
-	GL_SAMPLE_MASK_VALUE_SGIS 0x80AA
-	GL_SAMPLE_MASK_INVERT_SGIS 0x80AB
-	GL_SAMPLE_PATTERN_SGIS 0x80AC
-	GL_MULTISAMPLE_BIT_EXT 0x20000000
-	void glSampleMaskSGIS (GLclampf value, GLboolean invert)
-	void glSamplePatternSGIS (GLenum pattern)
diff --git a/src/other/glew/auto/extensions/GL_SGIS_pixel_texture b/src/other/glew/auto/extensions/GL_SGIS_pixel_texture
deleted file mode 100644
index 5939eb2..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_pixel_texture
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_SGIS_pixel_texture
-http://www.opengl.org/registry/specs/SGIS/pixel_texture.txt
-GL_SGIS_pixel_texture
diff --git a/src/other/glew/auto/extensions/GL_SGIS_point_line_texgen b/src/other/glew/auto/extensions/GL_SGIS_point_line_texgen
deleted file mode 100644
index ccf383d..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_point_line_texgen
+++ /dev/null
@@ -1,11 +0,0 @@
-GL_SGIS_point_line_texgen
-http://www.opengl.org/registry/specs/SGIS/point_line_texgen.txt
-GL_SGIS_point_line_texgen
-	GL_EYE_DISTANCE_TO_POINT_SGIS 0x81F0
-	GL_OBJECT_DISTANCE_TO_POINT_SGIS 0x81F1
-	GL_EYE_DISTANCE_TO_LINE_SGIS 0x81F2
-	GL_OBJECT_DISTANCE_TO_LINE_SGIS 0x81F3
-	GL_EYE_POINT_SGIS 0x81F4
-	GL_OBJECT_POINT_SGIS 0x81F5
-	GL_EYE_LINE_SGIS 0x81F6
-	GL_OBJECT_LINE_SGIS 0x81F7
diff --git a/src/other/glew/auto/extensions/GL_SGIS_sharpen_texture b/src/other/glew/auto/extensions/GL_SGIS_sharpen_texture
deleted file mode 100644
index 3ac1f6a..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_sharpen_texture
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SGIS_sharpen_texture
-http://www.opengl.org/registry/specs/SGIS/sharpen_texture.txt
-GL_SGIS_sharpen_texture
-	void glGetSharpenTexFuncSGIS (GLenum target, GLfloat* points)
-	void glSharpenTexFuncSGIS (GLenum target, GLsizei n, const GLfloat* points)
diff --git a/src/other/glew/auto/extensions/GL_SGIS_texture4D b/src/other/glew/auto/extensions/GL_SGIS_texture4D
deleted file mode 100644
index 00bf6a7..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_texture4D
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SGIS_texture4D
-http://www.opengl.org/registry/specs/SGIS/texture4D.txt
-GL_SGIS_texture4D
-	void glTexImage4DSGIS (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLsizei extent, GLint border, GLenum format, GLenum type, const void* pixels)
-	void glTexSubImage4DSGIS (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint woffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei extent, GLenum format, GLenum type, const void* pixels)
diff --git a/src/other/glew/auto/extensions/GL_SGIS_texture_border_clamp b/src/other/glew/auto/extensions/GL_SGIS_texture_border_clamp
deleted file mode 100644
index d397e7d..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_texture_border_clamp
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SGIS_texture_border_clamp
-http://www.opengl.org/registry/specs/SGIS/texture_border_clamp.txt
-GL_SGIS_texture_border_clamp
-	GL_CLAMP_TO_BORDER_SGIS 0x812D
diff --git a/src/other/glew/auto/extensions/GL_SGIS_texture_edge_clamp b/src/other/glew/auto/extensions/GL_SGIS_texture_edge_clamp
deleted file mode 100644
index 6b0fe03..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_texture_edge_clamp
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SGIS_texture_edge_clamp
-http://www.opengl.org/registry/specs/SGIS/texture_edge_clamp.txt
-GL_SGIS_texture_edge_clamp
-	GL_CLAMP_TO_EDGE_SGIS 0x812F
diff --git a/src/other/glew/auto/extensions/GL_SGIS_texture_filter4 b/src/other/glew/auto/extensions/GL_SGIS_texture_filter4
deleted file mode 100644
index 49fda19..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_texture_filter4
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SGIS_texture_filter4
-http://www.opengl.org/registry/specs/SGIS/texture_filter4.txt
-GL_SGIS_texture_filter4
-	void glGetTexFilterFuncSGIS (GLenum target, GLenum filter, GLfloat* weights)
-	void glTexFilterFuncSGIS (GLenum target, GLenum filter, GLsizei n, const GLfloat* weights)
diff --git a/src/other/glew/auto/extensions/GL_SGIS_texture_lod b/src/other/glew/auto/extensions/GL_SGIS_texture_lod
deleted file mode 100644
index c731a5f..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_texture_lod
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_SGIS_texture_lod
-http://www.opengl.org/registry/specs/SGIS/texture_lod.txt
-GL_SGIS_texture_lod
-	GL_TEXTURE_MIN_LOD_SGIS 0x813A
-	GL_TEXTURE_MAX_LOD_SGIS 0x813B
-	GL_TEXTURE_BASE_LEVEL_SGIS 0x813C
-	GL_TEXTURE_MAX_LEVEL_SGIS 0x813D
diff --git a/src/other/glew/auto/extensions/GL_SGIS_texture_select b/src/other/glew/auto/extensions/GL_SGIS_texture_select
deleted file mode 100644
index ba51bc8..0000000
--- a/src/other/glew/auto/extensions/GL_SGIS_texture_select
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_SGIS_texture_select
-http://www.opengl.org/registry/specs/SGIS/texture_select.txt
-GL_SGIS_texture_select
diff --git a/src/other/glew/auto/extensions/GL_SGIX_async b/src/other/glew/auto/extensions/GL_SGIX_async
deleted file mode 100644
index 05f0454..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_async
+++ /dev/null
@@ -1,10 +0,0 @@
-GL_SGIX_async
-http://www.opengl.org/registry/specs/SGIX/async.txt
-GL_SGIX_async
-	GL_ASYNC_MARKER_SGIX 0x8329
-	void glAsyncMarkerSGIX (GLuint marker)
-	void glDeleteAsyncMarkersSGIX (GLuint marker, GLsizei range)
-	GLint glFinishAsyncSGIX (GLuint* markerp)
-	GLuint glGenAsyncMarkersSGIX (GLsizei range)
-	GLboolean glIsAsyncMarkerSGIX (GLuint marker)
-	GLint glPollAsyncSGIX (GLuint* markerp)
diff --git a/src/other/glew/auto/extensions/GL_SGIX_async_histogram b/src/other/glew/auto/extensions/GL_SGIX_async_histogram
deleted file mode 100644
index ff5b40b..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_async_histogram
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SGIX_async_histogram
-http://www.opengl.org/registry/specs/SGIX/async_histogram.txt
-GL_SGIX_async_histogram
-	GL_ASYNC_HISTOGRAM_SGIX 0x832C
-	GL_MAX_ASYNC_HISTOGRAM_SGIX 0x832D
diff --git a/src/other/glew/auto/extensions/GL_SGIX_async_pixel b/src/other/glew/auto/extensions/GL_SGIX_async_pixel
deleted file mode 100644
index 7afb9df..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_async_pixel
+++ /dev/null
@@ -1,9 +0,0 @@
-GL_SGIX_async_pixel
-http://www.opengl.org/registry/specs/SGIX/async_pixel.txt
-GL_SGIX_async_pixel
-	GL_ASYNC_TEX_IMAGE_SGIX 0x835C
-	GL_ASYNC_DRAW_PIXELS_SGIX 0x835D
-	GL_ASYNC_READ_PIXELS_SGIX 0x835E
-	GL_MAX_ASYNC_TEX_IMAGE_SGIX 0x835F
-	GL_MAX_ASYNC_DRAW_PIXELS_SGIX 0x8360
-	GL_MAX_ASYNC_READ_PIXELS_SGIX 0x8361
diff --git a/src/other/glew/auto/extensions/GL_SGIX_blend_alpha_minmax b/src/other/glew/auto/extensions/GL_SGIX_blend_alpha_minmax
deleted file mode 100644
index 4451124..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_blend_alpha_minmax
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SGIX_blend_alpha_minmax
-http://www.opengl.org/registry/specs/SGIX/blend_alpha_minmax.txt
-GL_SGIX_blend_alpha_minmax
-	GL_ALPHA_MIN_SGIX 0x8320
-	GL_ALPHA_MAX_SGIX 0x8321
diff --git a/src/other/glew/auto/extensions/GL_SGIX_clipmap b/src/other/glew/auto/extensions/GL_SGIX_clipmap
deleted file mode 100644
index d467486..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_clipmap
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_SGIX_clipmap
-http://www.opengl.org/registry/specs/SGIX/clipmap.txt
-GL_SGIX_clipmap
diff --git a/src/other/glew/auto/extensions/GL_SGIX_convolution_accuracy b/src/other/glew/auto/extensions/GL_SGIX_convolution_accuracy
deleted file mode 100644
index 064ff2c..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_convolution_accuracy
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SGIX_convolution_accuracy
-http://www.opengl.org/registry/specs/SGIX/convolution_accuracy.txt
-GL_SGIX_convolution_accuracy
-	GL_CONVOLUTION_HINT_SGIX 0x8316
diff --git a/src/other/glew/auto/extensions/GL_SGIX_depth_texture b/src/other/glew/auto/extensions/GL_SGIX_depth_texture
deleted file mode 100644
index 5c5914e..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_depth_texture
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_SGIX_depth_texture
-http://www.opengl.org/registry/specs/SGIX/depth_texture.txt
-GL_SGIX_depth_texture
-	GL_DEPTH_COMPONENT16_SGIX 0x81A5
-	GL_DEPTH_COMPONENT24_SGIX 0x81A6
-	GL_DEPTH_COMPONENT32_SGIX 0x81A7
diff --git a/src/other/glew/auto/extensions/GL_SGIX_flush_raster b/src/other/glew/auto/extensions/GL_SGIX_flush_raster
deleted file mode 100644
index 9e62248..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_flush_raster
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SGIX_flush_raster
-http://www.opengl.org/registry/specs/SGIX/flush_raster.txt
-GL_SGIX_flush_raster
-	void glFlushRasterSGIX (void)
diff --git a/src/other/glew/auto/extensions/GL_SGIX_fog_offset b/src/other/glew/auto/extensions/GL_SGIX_fog_offset
deleted file mode 100644
index da1009a..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_fog_offset
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SGIX_fog_offset
-http://www.opengl.org/registry/specs/SGIX/fog_offset.txt
-GL_SGIX_fog_offset
-	GL_FOG_OFFSET_SGIX 0x8198
-	GL_FOG_OFFSET_VALUE_SGIX 0x8199
diff --git a/src/other/glew/auto/extensions/GL_SGIX_fog_texture b/src/other/glew/auto/extensions/GL_SGIX_fog_texture
deleted file mode 100644
index 3da0eda..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_fog_texture
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_SGIX_fog_texture
-http://www.opengl.org/registry/specs/SGIX/fog_texture.txt
-GL_SGIX_fog_texture
-	GL_TEXTURE_FOG_SGIX 0
-	GL_FOG_PATCHY_FACTOR_SGIX 0
-	GL_FRAGMENT_FOG_SGIX 0
-	void glTextureFogSGIX (GLenum pname)
diff --git a/src/other/glew/auto/extensions/GL_SGIX_fragment_specular_lighting b/src/other/glew/auto/extensions/GL_SGIX_fragment_specular_lighting
deleted file mode 100644
index 35937c9..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_fragment_specular_lighting
+++ /dev/null
@@ -1,20 +0,0 @@
-GL_SGIX_fragment_specular_lighting
-http://www.opengl.org/registry/specs/SGIX/fragment_specular_lighting.txt
-GL_SGIX_fragment_specular_lighting
-	void glFragmentColorMaterialSGIX (GLenum face, GLenum mode)
-	void glFragmentLightModelfSGIX (GLenum pname, GLfloat param)
-	void glFragmentLightModelfvSGIX (GLenum pname, GLfloat* params)
-	void glFragmentLightModeliSGIX (GLenum pname, GLint param)
-	void glFragmentLightModelivSGIX (GLenum pname, GLint* params)
-	void glFragmentLightfSGIX (GLenum light, GLenum pname, GLfloat param)
-	void glFragmentLightfvSGIX (GLenum light, GLenum pname, GLfloat* params)
-	void glFragmentLightiSGIX (GLenum light, GLenum pname, GLint param)
-	void glFragmentLightivSGIX (GLenum light, GLenum pname, GLint* params)
-	void glFragmentMaterialfSGIX (GLenum face, GLenum pname, const GLfloat param)
-	void glFragmentMaterialfvSGIX (GLenum face, GLenum pname, const GLfloat* params)
-	void glFragmentMaterialiSGIX (GLenum face, GLenum pname, const GLint param)
-	void glFragmentMaterialivSGIX (GLenum face, GLenum pname, const GLint* params)
-	void glGetFragmentLightfvSGIX (GLenum light, GLenum value, GLfloat* data)
-	void glGetFragmentLightivSGIX (GLenum light, GLenum value, GLint* data)
-	void glGetFragmentMaterialfvSGIX (GLenum face, GLenum pname, const GLfloat* data)
-	void glGetFragmentMaterialivSGIX (GLenum face, GLenum pname, const GLint* data)
diff --git a/src/other/glew/auto/extensions/GL_SGIX_framezoom b/src/other/glew/auto/extensions/GL_SGIX_framezoom
deleted file mode 100644
index a1569ac..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_framezoom
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SGIX_framezoom
-http://www.opengl.org/registry/specs/SGIX/framezoom.txt
-GL_SGIX_framezoom
-	void glFrameZoomSGIX (GLint factor)
diff --git a/src/other/glew/auto/extensions/GL_SGIX_interlace b/src/other/glew/auto/extensions/GL_SGIX_interlace
deleted file mode 100644
index 54d351e..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_interlace
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SGIX_interlace
-http://www.opengl.org/registry/specs/SGIX/interlace.txt
-GL_SGIX_interlace
-	GL_INTERLACE_SGIX 0x8094
diff --git a/src/other/glew/auto/extensions/GL_SGIX_ir_instrument1 b/src/other/glew/auto/extensions/GL_SGIX_ir_instrument1
deleted file mode 100644
index a6c586e..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_ir_instrument1
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_SGIX_ir_instrument1
-http://www.opengl.org/registry/specs/SGIX/ir_instrument1.txt
-GL_SGIX_ir_instrument1
diff --git a/src/other/glew/auto/extensions/GL_SGIX_list_priority b/src/other/glew/auto/extensions/GL_SGIX_list_priority
deleted file mode 100644
index 187219b..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_list_priority
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_SGIX_list_priority
-http://www.opengl.org/registry/specs/SGIX/list_priority.txt
-GL_SGIX_list_priority
diff --git a/src/other/glew/auto/extensions/GL_SGIX_pixel_texture b/src/other/glew/auto/extensions/GL_SGIX_pixel_texture
deleted file mode 100644
index 20bab95..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_pixel_texture
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SGIX_pixel_texture
-http://www.opengl.org/registry/specs/SGIX/sgix_pixel_texture.txt
-GL_SGIX_pixel_texture
-	void glPixelTexGenSGIX (GLenum mode)
diff --git a/src/other/glew/auto/extensions/GL_SGIX_pixel_texture_bits b/src/other/glew/auto/extensions/GL_SGIX_pixel_texture_bits
deleted file mode 100644
index e550316..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_pixel_texture_bits
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_SGIX_pixel_texture_bits
-http://www.opengl.org/registry/specs/SGIX/pixel_texture_bits.txt
-GL_SGIX_pixel_texture_bits
diff --git a/src/other/glew/auto/extensions/GL_SGIX_reference_plane b/src/other/glew/auto/extensions/GL_SGIX_reference_plane
deleted file mode 100644
index acce076..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_reference_plane
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SGIX_reference_plane
-http://www.opengl.org/registry/specs/SGIX/reference_plane.txt
-GL_SGIX_reference_plane
-	void glReferencePlaneSGIX (const GLdouble* equation)
diff --git a/src/other/glew/auto/extensions/GL_SGIX_resample b/src/other/glew/auto/extensions/GL_SGIX_resample
deleted file mode 100644
index 526e380..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_resample
+++ /dev/null
@@ -1,8 +0,0 @@
-GL_SGIX_resample
-http://www.opengl.org/registry/specs/SGIX/resample.txt
-GL_SGIX_resample
-	GL_PACK_RESAMPLE_SGIX 0x842E
-	GL_UNPACK_RESAMPLE_SGIX 0x842F
-	GL_RESAMPLE_DECIMATE_SGIX 0x8430
-	GL_RESAMPLE_REPLICATE_SGIX 0x8433
-	GL_RESAMPLE_ZERO_FILL_SGIX 0x8434
diff --git a/src/other/glew/auto/extensions/GL_SGIX_shadow b/src/other/glew/auto/extensions/GL_SGIX_shadow
deleted file mode 100644
index 2b34cc8..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_shadow
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_SGIX_shadow
-http://oss.sgi.com/projects/ogl-sample/registry/SGIX/shadow.txt
-GL_SGIX_shadow
-	GL_TEXTURE_COMPARE_SGIX 0x819A
-	GL_TEXTURE_COMPARE_OPERATOR_SGIX 0x819B
-	GL_TEXTURE_LEQUAL_R_SGIX 0x819C
-	GL_TEXTURE_GEQUAL_R_SGIX 0x819D
diff --git a/src/other/glew/auto/extensions/GL_SGIX_shadow_ambient b/src/other/glew/auto/extensions/GL_SGIX_shadow_ambient
deleted file mode 100644
index b3476b1..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_shadow_ambient
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SGIX_shadow_ambient
-http://www.opengl.org/registry/specs/SGIX/shadow_ambient.txt
-GL_SGIX_shadow_ambient
-	GL_SHADOW_AMBIENT_SGIX 0x80BF
diff --git a/src/other/glew/auto/extensions/GL_SGIX_sprite b/src/other/glew/auto/extensions/GL_SGIX_sprite
deleted file mode 100644
index 427a779..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_sprite
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_SGIX_sprite
-http://www.opengl.org/registry/specs/SGIX/sprite.txt
-GL_SGIX_sprite
-	void glSpriteParameterfSGIX (GLenum pname, GLfloat param)
-	void glSpriteParameterfvSGIX (GLenum pname, GLfloat* params)
-	void glSpriteParameteriSGIX (GLenum pname, GLint param)
-	void glSpriteParameterivSGIX (GLenum pname, GLint* params)
diff --git a/src/other/glew/auto/extensions/GL_SGIX_tag_sample_buffer b/src/other/glew/auto/extensions/GL_SGIX_tag_sample_buffer
deleted file mode 100644
index e17f53e..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_tag_sample_buffer
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SGIX_tag_sample_buffer
-http://www.opengl.org/registry/specs/SGIX/tag_sample_buffer.txt
-GL_SGIX_tag_sample_buffer
-	void glTagSampleBufferSGIX (void)
diff --git a/src/other/glew/auto/extensions/GL_SGIX_texture_add_env b/src/other/glew/auto/extensions/GL_SGIX_texture_add_env
deleted file mode 100644
index 19db14c..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_texture_add_env
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_SGIX_texture_add_env
-http://www.opengl.org/registry/specs/SGIX/texture_env_add.txt
-GL_SGIX_texture_add_env
diff --git a/src/other/glew/auto/extensions/GL_SGIX_texture_coordinate_clamp b/src/other/glew/auto/extensions/GL_SGIX_texture_coordinate_clamp
deleted file mode 100644
index cd6862d..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_texture_coordinate_clamp
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_SGIX_texture_coordinate_clamp
-http://www.opengl.org/registry/specs/SGIX/texture_coordinate_clamp.txt
-GL_SGIX_texture_coordinate_clamp
-	GL_TEXTURE_MAX_CLAMP_S_SGIX 0x8369
-	GL_TEXTURE_MAX_CLAMP_T_SGIX 0x836A
-	GL_TEXTURE_MAX_CLAMP_R_SGIX 0x836B
diff --git a/src/other/glew/auto/extensions/GL_SGIX_texture_lod_bias b/src/other/glew/auto/extensions/GL_SGIX_texture_lod_bias
deleted file mode 100644
index 2f8dfb6..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_texture_lod_bias
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_SGIX_texture_lod_bias
-http://www.opengl.org/registry/specs/SGIX/texture_lod_bias.txt
-GL_SGIX_texture_lod_bias
diff --git a/src/other/glew/auto/extensions/GL_SGIX_texture_multi_buffer b/src/other/glew/auto/extensions/GL_SGIX_texture_multi_buffer
deleted file mode 100644
index 0990319..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_texture_multi_buffer
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SGIX_texture_multi_buffer
-http://www.opengl.org/registry/specs/SGIX/texture_multi_buffer.txt
-GL_SGIX_texture_multi_buffer
-	GL_TEXTURE_MULTI_BUFFER_HINT_SGIX 0x812E
diff --git a/src/other/glew/auto/extensions/GL_SGIX_texture_range b/src/other/glew/auto/extensions/GL_SGIX_texture_range
deleted file mode 100644
index 2299caf..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_texture_range
+++ /dev/null
@@ -1,31 +0,0 @@
-GL_SGIX_texture_range
-http://www.opengl.org/registry/specs/SGIX/texture_range.txt
-GL_SGIX_texture_range
-	GL_RGB_SIGNED_SGIX 0x85E0
-	GL_RGBA_SIGNED_SGIX 0x85E1
-	GL_ALPHA_SIGNED_SGIX 0x85E2
-	GL_LUMINANCE_SIGNED_SGIX 0x85E3
-	GL_INTENSITY_SIGNED_SGIX 0x85E4
-	GL_LUMINANCE_ALPHA_SIGNED_SGIX 0x85E5
-	GL_RGB16_SIGNED_SGIX 0x85E6
-	GL_RGBA16_SIGNED_SGIX 0x85E7
-	GL_ALPHA16_SIGNED_SGIX 0x85E8
-	GL_LUMINANCE16_SIGNED_SGIX 0x85E9
-	GL_INTENSITY16_SIGNED_SGIX 0x85EA
-	GL_LUMINANCE16_ALPHA16_SIGNED_SGIX 0x85EB
-	GL_RGB_EXTENDED_RANGE_SGIX 0x85EC
-	GL_RGBA_EXTENDED_RANGE_SGIX 0x85ED
-	GL_ALPHA_EXTENDED_RANGE_SGIX 0x85EE
-	GL_LUMINANCE_EXTENDED_RANGE_SGIX 0x85EF
-	GL_INTENSITY_EXTENDED_RANGE_SGIX 0x85F0
-	GL_LUMINANCE_ALPHA_EXTENDED_RANGE_SGIX 0x85F1
-	GL_RGB16_EXTENDED_RANGE_SGIX 0x85F2
-	GL_RGBA16_EXTENDED_RANGE_SGIX 0x85F3
-	GL_ALPHA16_EXTENDED_RANGE_SGIX 0x85F4
-	GL_LUMINANCE16_EXTENDED_RANGE_SGIX 0x85F5
-	GL_INTENSITY16_EXTENDED_RANGE_SGIX 0x85F6
-	GL_LUMINANCE16_ALPHA16_EXTENDED_RANGE_SGIX 0x85F7
-	GL_MIN_LUMINANCE_SGIS 0x85F8
-	GL_MAX_LUMINANCE_SGIS 0x85F9
-	GL_MIN_INTENSITY_SGIS 0x85FA
-	GL_MAX_INTENSITY_SGIS 0x85FB
diff --git a/src/other/glew/auto/extensions/GL_SGIX_texture_scale_bias b/src/other/glew/auto/extensions/GL_SGIX_texture_scale_bias
deleted file mode 100644
index 83ff2ff..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_texture_scale_bias
+++ /dev/null
@@ -1,7 +0,0 @@
-GL_SGIX_texture_scale_bias
-http://www.opengl.org/registry/specs/SGIX/texture_scale_bias.txt
-GL_SGIX_texture_scale_bias
-	GL_POST_TEXTURE_FILTER_BIAS_SGIX 0x8179
-	GL_POST_TEXTURE_FILTER_SCALE_SGIX 0x817A
-	GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX 0x817B
-	GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX 0x817C
diff --git a/src/other/glew/auto/extensions/GL_SGIX_vertex_preclip b/src/other/glew/auto/extensions/GL_SGIX_vertex_preclip
deleted file mode 100644
index 9877255..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_vertex_preclip
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SGIX_vertex_preclip
-http://www.opengl.org/registry/specs/SGIX/vertex_preclip.txt
-GL_SGIX_vertex_preclip
-	GL_VERTEX_PRECLIP_SGIX 0x83EE
-	GL_VERTEX_PRECLIP_HINT_SGIX 0x83EF
diff --git a/src/other/glew/auto/extensions/GL_SGIX_vertex_preclip_hint b/src/other/glew/auto/extensions/GL_SGIX_vertex_preclip_hint
deleted file mode 100644
index 285bded..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_vertex_preclip_hint
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SGIX_vertex_preclip_hint
-http://www.opengl.org/registry/specs/SGIX/vertex_preclip.txt
-GL_SGIX_vertex_preclip_hint
-	GL_VERTEX_PRECLIP_SGIX 0x83EE
-	GL_VERTEX_PRECLIP_HINT_SGIX 0x83EF
diff --git a/src/other/glew/auto/extensions/GL_SGIX_ycrcb b/src/other/glew/auto/extensions/GL_SGIX_ycrcb
deleted file mode 100644
index 19e6034..0000000
--- a/src/other/glew/auto/extensions/GL_SGIX_ycrcb
+++ /dev/null
@@ -1,3 +0,0 @@
-GL_SGIX_ycrcb
-http://www.opengl.org/registry/specs/SGIX/ycrcb.txt
-GL_SGIX_ycrcb
diff --git a/src/other/glew/auto/extensions/GL_SGI_color_matrix b/src/other/glew/auto/extensions/GL_SGI_color_matrix
deleted file mode 100644
index 7db7e20..0000000
--- a/src/other/glew/auto/extensions/GL_SGI_color_matrix
+++ /dev/null
@@ -1,14 +0,0 @@
-GL_SGI_color_matrix
-http://www.opengl.org/registry/specs/SGI/color_matrix.txt
-GL_SGI_color_matrix
-	GL_COLOR_MATRIX_SGI 0x80B1
-	GL_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B2
-	GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B3
-	GL_POST_COLOR_MATRIX_RED_SCALE_SGI 0x80B4
-	GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI 0x80B5
-	GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI 0x80B6
-	GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI 0x80B7
-	GL_POST_COLOR_MATRIX_RED_BIAS_SGI 0x80B8
-	GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI 0x80B9
-	GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI 0x80BA
-	GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI 0x80BB
diff --git a/src/other/glew/auto/extensions/GL_SGI_color_table b/src/other/glew/auto/extensions/GL_SGI_color_table
deleted file mode 100644
index 756ba49..0000000
--- a/src/other/glew/auto/extensions/GL_SGI_color_table
+++ /dev/null
@@ -1,26 +0,0 @@
-GL_SGI_color_table
-http://www.opengl.org/registry/specs/SGI/color_table.txt
-GL_SGI_color_table
-	GL_COLOR_TABLE_SGI 0x80D0
-	GL_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D1
-	GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D2
-	GL_PROXY_COLOR_TABLE_SGI 0x80D3
-	GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D4
-	GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D5
-	GL_COLOR_TABLE_SCALE_SGI 0x80D6
-	GL_COLOR_TABLE_BIAS_SGI 0x80D7
-	GL_COLOR_TABLE_FORMAT_SGI 0x80D8
-	GL_COLOR_TABLE_WIDTH_SGI 0x80D9
-	GL_COLOR_TABLE_RED_SIZE_SGI 0x80DA
-	GL_COLOR_TABLE_GREEN_SIZE_SGI 0x80DB
-	GL_COLOR_TABLE_BLUE_SIZE_SGI 0x80DC
-	GL_COLOR_TABLE_ALPHA_SIZE_SGI 0x80DD
-	GL_COLOR_TABLE_LUMINANCE_SIZE_SGI 0x80DE
-	GL_COLOR_TABLE_INTENSITY_SIZE_SGI 0x80DF
-	void glColorTableParameterfvSGI (GLenum target, GLenum pname, const GLfloat* params)
-	void glColorTableParameterivSGI (GLenum target, GLenum pname, const GLint* params)
-	void glColorTableSGI (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* table)
-	void glCopyColorTableSGI (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
-	void glGetColorTableParameterfvSGI (GLenum target, GLenum pname, GLfloat* params)
-	void glGetColorTableParameterivSGI (GLenum target, GLenum pname, GLint* params)
-	void glGetColorTableSGI (GLenum target, GLenum format, GLenum type, void* table)
diff --git a/src/other/glew/auto/extensions/GL_SGI_texture_color_table b/src/other/glew/auto/extensions/GL_SGI_texture_color_table
deleted file mode 100644
index 2993170..0000000
--- a/src/other/glew/auto/extensions/GL_SGI_texture_color_table
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SGI_texture_color_table
-http://www.opengl.org/registry/specs/SGI/texture_color_table.txt
-GL_SGI_texture_color_table
-	GL_TEXTURE_COLOR_TABLE_SGI 0x80BC
-	GL_PROXY_TEXTURE_COLOR_TABLE_SGI 0x80BD
diff --git a/src/other/glew/auto/extensions/GL_SUNX_constant_data b/src/other/glew/auto/extensions/GL_SUNX_constant_data
deleted file mode 100644
index 5fe63c5..0000000
--- a/src/other/glew/auto/extensions/GL_SUNX_constant_data
+++ /dev/null
@@ -1,6 +0,0 @@
-GL_SUNX_constant_data
-http://www.opengl.org/registry/specs/SUNX/constant_data.txt
-GL_SUNX_constant_data
-	GL_UNPACK_CONSTANT_DATA_SUNX 0x81D5
-	GL_TEXTURE_CONSTANT_DATA_SUNX 0x81D6
-	void glFinishTextureSUNX (void)
diff --git a/src/other/glew/auto/extensions/GL_SUN_convolution_border_modes b/src/other/glew/auto/extensions/GL_SUN_convolution_border_modes
deleted file mode 100644
index 0c6fda8..0000000
--- a/src/other/glew/auto/extensions/GL_SUN_convolution_border_modes
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SUN_convolution_border_modes
-http://www.opengl.org/registry/specs/SUN/convolution_border_modes.txt
-GL_SUN_convolution_border_modes
-	GL_WRAP_BORDER_SUN 0x81D4
diff --git a/src/other/glew/auto/extensions/GL_SUN_global_alpha b/src/other/glew/auto/extensions/GL_SUN_global_alpha
deleted file mode 100644
index d7c5274..0000000
--- a/src/other/glew/auto/extensions/GL_SUN_global_alpha
+++ /dev/null
@@ -1,13 +0,0 @@
-GL_SUN_global_alpha
-http://www.opengl.org/registry/specs/SUN/global_alpha.txt
-GL_SUN_global_alpha
-	GL_GLOBAL_ALPHA_SUN 0x81D9
-	GL_GLOBAL_ALPHA_FACTOR_SUN 0x81DA
-	void glGlobalAlphaFactorbSUN (GLbyte factor)
-	void glGlobalAlphaFactordSUN (GLdouble factor)
-	void glGlobalAlphaFactorfSUN (GLfloat factor)
-	void glGlobalAlphaFactoriSUN (GLint factor)
-	void glGlobalAlphaFactorsSUN (GLshort factor)
-	void glGlobalAlphaFactorubSUN (GLubyte factor)
-	void glGlobalAlphaFactoruiSUN (GLuint factor)
-	void glGlobalAlphaFactorusSUN (GLushort factor)
diff --git a/src/other/glew/auto/extensions/GL_SUN_mesh_array b/src/other/glew/auto/extensions/GL_SUN_mesh_array
deleted file mode 100644
index 28229bf..0000000
--- a/src/other/glew/auto/extensions/GL_SUN_mesh_array
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_SUN_mesh_array
-http://www.opengl.org/registry/specs/SUN/mesh_array.txt
-GL_SUN_mesh_array
-	GL_QUAD_MESH_SUN 0x8614
-	GL_TRIANGLE_MESH_SUN 0x8615
diff --git a/src/other/glew/auto/extensions/GL_SUN_read_video_pixels b/src/other/glew/auto/extensions/GL_SUN_read_video_pixels
deleted file mode 100644
index faa55f9..0000000
--- a/src/other/glew/auto/extensions/GL_SUN_read_video_pixels
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SUN_read_video_pixels
-http://wwws.sun.com/software/graphics/opengl/extensions/gl_sun_read_video_pixels.txt
-GL_SUN_read_video_pixels
-	void glReadVideoPixelsSUN (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels)
diff --git a/src/other/glew/auto/extensions/GL_SUN_slice_accum b/src/other/glew/auto/extensions/GL_SUN_slice_accum
deleted file mode 100644
index 404237d..0000000
--- a/src/other/glew/auto/extensions/GL_SUN_slice_accum
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_SUN_slice_accum
-http://www.opengl.org/registry/specs/SUN/slice_accum.txt
-GL_SUN_slice_accum
-	GL_SLICE_ACCUM_SUN 0x85CC
diff --git a/src/other/glew/auto/extensions/GL_SUN_triangle_list b/src/other/glew/auto/extensions/GL_SUN_triangle_list
deleted file mode 100644
index a42af1f..0000000
--- a/src/other/glew/auto/extensions/GL_SUN_triangle_list
+++ /dev/null
@@ -1,27 +0,0 @@
-GL_SUN_triangle_list
-http://www.opengl.org/registry/specs/SUN/triangle_list.txt
-GL_SUN_triangle_list
-	GL_RESTART_SUN 0x01
-	GL_REPLACE_MIDDLE_SUN 0x02
-	GL_REPLACE_OLDEST_SUN 0x03
-	GL_TRIANGLE_LIST_SUN 0x81D7
-	GL_REPLACEMENT_CODE_SUN 0x81D8
-	GL_REPLACEMENT_CODE_ARRAY_SUN 0x85C0
-	GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN 0x85C1
-	GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN 0x85C2
-	GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN 0x85C3
-	GL_R1UI_V3F_SUN 0x85C4
-	GL_R1UI_C4UB_V3F_SUN 0x85C5
-	GL_R1UI_C3F_V3F_SUN 0x85C6
-	GL_R1UI_N3F_V3F_SUN 0x85C7
-	GL_R1UI_C4F_N3F_V3F_SUN 0x85C8
-	GL_R1UI_T2F_V3F_SUN 0x85C9
-	GL_R1UI_T2F_N3F_V3F_SUN 0x85CA
-	GL_R1UI_T2F_C4F_N3F_V3F_SUN 0x85CB
-	void glReplacementCodePointerSUN (GLenum type, GLsizei stride, const void* pointer)
-	void glReplacementCodeubSUN (GLubyte code)
-	void glReplacementCodeubvSUN (const GLubyte* code)
-	void glReplacementCodeuiSUN (GLuint code)
-	void glReplacementCodeuivSUN (const GLuint* code)
-	void glReplacementCodeusSUN (GLushort code)
-	void glReplacementCodeusvSUN (const GLushort* code)
diff --git a/src/other/glew/auto/extensions/GL_SUN_vertex b/src/other/glew/auto/extensions/GL_SUN_vertex
deleted file mode 100644
index 0111c01..0000000
--- a/src/other/glew/auto/extensions/GL_SUN_vertex
+++ /dev/null
@@ -1,43 +0,0 @@
-GL_SUN_vertex
-http://www.opengl.org/registry/specs/SUN/vertex.txt
-GL_SUN_vertex
-	void glColor3fVertex3fSUN (GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z)
-	void glColor3fVertex3fvSUN (const GLfloat* c, const GLfloat *v)
-	void glColor4fNormal3fVertex3fSUN (GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z)
-	void glColor4fNormal3fVertex3fvSUN (const GLfloat* c, const GLfloat *n, const GLfloat *v)
-	void glColor4ubVertex2fSUN (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y)
-	void glColor4ubVertex2fvSUN (const GLubyte* c, const GLfloat *v)
-	void glColor4ubVertex3fSUN (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z)
-	void glColor4ubVertex3fvSUN (const GLubyte* c, const GLfloat *v)
-	void glNormal3fVertex3fSUN (GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z)
-	void glNormal3fVertex3fvSUN (const GLfloat* n, const GLfloat *v)
-	void glReplacementCodeuiColor3fVertex3fSUN (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z)
-	void glReplacementCodeuiColor3fVertex3fvSUN (const GLuint* rc, const GLfloat *c, const GLfloat *v)
-	void glReplacementCodeuiColor4fNormal3fVertex3fSUN (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z)
-	void glReplacementCodeuiColor4fNormal3fVertex3fvSUN (const GLuint* rc, const GLfloat *c, const GLfloat *n, const GLfloat *v)
-	void glReplacementCodeuiColor4ubVertex3fSUN (GLuint rc, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z)
-	void glReplacementCodeuiColor4ubVertex3fvSUN (const GLuint* rc, const GLubyte *c, const GLfloat *v)
-	void glReplacementCodeuiNormal3fVertex3fSUN (GLuint rc, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z)
-	void glReplacementCodeuiNormal3fVertex3fvSUN (const GLuint* rc, const GLfloat *n, const GLfloat *v)
-	void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (GLuint rc, GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z)
-	void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (const GLuint* rc, const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v)
-	void glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (GLuint rc, GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z)
-	void glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (const GLuint* rc, const GLfloat *tc, const GLfloat *n, const GLfloat *v)
-	void glReplacementCodeuiTexCoord2fVertex3fSUN (GLuint rc, GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z)
-	void glReplacementCodeuiTexCoord2fVertex3fvSUN (const GLuint* rc, const GLfloat *tc, const GLfloat *v)
-	void glReplacementCodeuiVertex3fSUN (GLuint rc, GLfloat x, GLfloat y, GLfloat z)
-	void glReplacementCodeuiVertex3fvSUN (const GLuint* rc, const GLfloat *v)
-	void glTexCoord2fColor3fVertex3fSUN (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z)
-	void glTexCoord2fColor3fVertex3fvSUN (const GLfloat* tc, const GLfloat *c, const GLfloat *v)
-	void glTexCoord2fColor4fNormal3fVertex3fSUN (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z)
-	void glTexCoord2fColor4fNormal3fVertex3fvSUN (const GLfloat* tc, const GLfloat *c, const GLfloat *n, const GLfloat *v)
-	void glTexCoord2fColor4ubVertex3fSUN (GLfloat s, GLfloat t, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z)
-	void glTexCoord2fColor4ubVertex3fvSUN (const GLfloat* tc, const GLubyte *c, const GLfloat *v)
-	void glTexCoord2fNormal3fVertex3fSUN (GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z)
-	void glTexCoord2fNormal3fVertex3fvSUN (const GLfloat* tc, const GLfloat *n, const GLfloat *v)
-	void glTexCoord2fVertex3fSUN (GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z)
-	void glTexCoord2fVertex3fvSUN (const GLfloat* tc, const GLfloat *v)
-	void glTexCoord4fColor4fNormal3fVertex4fSUN (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glTexCoord4fColor4fNormal3fVertex4fvSUN (const GLfloat* tc, const GLfloat *c, const GLfloat *n, const GLfloat *v)
-	void glTexCoord4fVertex4fSUN (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-	void glTexCoord4fVertex4fvSUN (const GLfloat* tc, const GLfloat *v)
diff --git a/src/other/glew/auto/extensions/GL_WIN_phong_shading b/src/other/glew/auto/extensions/GL_WIN_phong_shading
deleted file mode 100644
index 9faadb8..0000000
--- a/src/other/glew/auto/extensions/GL_WIN_phong_shading
+++ /dev/null
@@ -1,5 +0,0 @@
-GL_WIN_phong_shading
-http://www.opengl.org/registry/specs/WIN/phong_shading.txt
-GL_WIN_phong_shading
-	GL_PHONG_WIN 0x80EA
-	GL_PHONG_HINT_WIN 0x80EB
diff --git a/src/other/glew/auto/extensions/GL_WIN_specular_fog b/src/other/glew/auto/extensions/GL_WIN_specular_fog
deleted file mode 100644
index 2cfcd01..0000000
--- a/src/other/glew/auto/extensions/GL_WIN_specular_fog
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_WIN_specular_fog
-http://www.opengl.org/registry/specs/WIN/specular_fog.txt
-GL_WIN_specular_fog
-	GL_FOG_SPECULAR_TEXTURE_WIN 0x80EC
diff --git a/src/other/glew/auto/extensions/GL_WIN_swap_hint b/src/other/glew/auto/extensions/GL_WIN_swap_hint
deleted file mode 100644
index 6916189..0000000
--- a/src/other/glew/auto/extensions/GL_WIN_swap_hint
+++ /dev/null
@@ -1,4 +0,0 @@
-GL_WIN_swap_hint
-http://msdn.microsoft.com/library/default.asp?url=/library/en-us/opengl/glfunc01_16zy.asp
-GL_WIN_swap_hint
-	void glAddSwapHintRectWIN (GLint x, GLint y, GLsizei width, GLsizei height)
diff --git a/src/other/glew/auto/extensions/WGL_3DFX_multisample b/src/other/glew/auto/extensions/WGL_3DFX_multisample
deleted file mode 100644
index f0d91e9..0000000
--- a/src/other/glew/auto/extensions/WGL_3DFX_multisample
+++ /dev/null
@@ -1,5 +0,0 @@
-WGL_3DFX_multisample
-http://www.opengl.org/registry/specs/3DFX/3dfx_multisample.txt
-WGL_3DFX_multisample
-	WGL_SAMPLE_BUFFERS_3DFX 0x2060
-	WGL_SAMPLES_3DFX 0x2061
diff --git a/src/other/glew/auto/extensions/WGL_3DL_stereo_control b/src/other/glew/auto/extensions/WGL_3DL_stereo_control
deleted file mode 100644
index 88fb1bb..0000000
--- a/src/other/glew/auto/extensions/WGL_3DL_stereo_control
+++ /dev/null
@@ -1,8 +0,0 @@
-WGL_3DL_stereo_control
-http://www.opengl.org/registry/specs/3DL/stereo_control.txt
-WGL_3DL_stereo_control
-	WGL_STEREO_EMITTER_ENABLE_3DL 0x2055
-	WGL_STEREO_EMITTER_DISABLE_3DL 0x2056
-	WGL_STEREO_POLARITY_NORMAL_3DL 0x2057
-	WGL_STEREO_POLARITY_INVERT_3DL 0x2058
-	BOOL wglSetStereoEmitterState3DL (HDC hDC, UINT uState)
diff --git a/src/other/glew/auto/extensions/WGL_AMD_gpu_association b/src/other/glew/auto/extensions/WGL_AMD_gpu_association
deleted file mode 100644
index 359b9ba..0000000
--- a/src/other/glew/auto/extensions/WGL_AMD_gpu_association
+++ /dev/null
@@ -1,22 +0,0 @@
-WGL_AMD_gpu_association
-http://www.opengl.org/registry/specs/AMD/wgl_gpu_association.txt
-WGL_AMD_gpu_association
-	WGL_GPU_VENDOR_AMD 0x1F00
-	WGL_GPU_RENDERER_STRING_AMD 0x1F01
-	WGL_GPU_OPENGL_VERSION_STRING_AMD 0x1F02
-	WGL_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2
-	WGL_GPU_RAM_AMD 0x21A3
-	WGL_GPU_CLOCK_AMD 0x21A4
-	WGL_GPU_NUM_PIPES_AMD 0x21A5
-	WGL_GPU_NUM_SIMD_AMD 0x21A6
-	WGL_GPU_NUM_RB_AMD 0x21A7
-	WGL_GPU_NUM_SPI_AMD 0x21A8
-	VOID wglBlitContextFramebufferAMD (HGLRC dstCtx, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter)
-	HGLRC wglCreateAssociatedContextAMD (UINT id)
-	HGLRC wglCreateAssociatedContextAttribsAMD (UINT id, HGLRC hShareContext, const int* attribList)
-	BOOL wglDeleteAssociatedContextAMD (HGLRC hglrc)
-	UINT wglGetContextGPUIDAMD (HGLRC hglrc)
-	HGLRC wglGetCurrentAssociatedContextAMD (void)
-	UINT wglGetGPUIDsAMD (UINT maxCount, UINT* ids)
-	INT wglGetGPUInfoAMD (UINT id, INT property, GLenum dataType, UINT size, void* data)
-	BOOL wglMakeAssociatedContextCurrentAMD (HGLRC hglrc)
diff --git a/src/other/glew/auto/extensions/WGL_ARB_buffer_region b/src/other/glew/auto/extensions/WGL_ARB_buffer_region
deleted file mode 100644
index 719f648..0000000
--- a/src/other/glew/auto/extensions/WGL_ARB_buffer_region
+++ /dev/null
@@ -1,11 +0,0 @@
-WGL_ARB_buffer_region
-http://www.opengl.org/registry/specs/ARB/wgl_buffer_region.txt
-WGL_ARB_buffer_region
-	WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
-	WGL_BACK_COLOR_BUFFER_BIT_ARB 0x00000002
-	WGL_DEPTH_BUFFER_BIT_ARB 0x00000004
-	WGL_STENCIL_BUFFER_BIT_ARB 0x00000008
-	HANDLE wglCreateBufferRegionARB (HDC hDC, int iLayerPlane, UINT uType)
-	VOID wglDeleteBufferRegionARB (HANDLE hRegion)
-	BOOL wglRestoreBufferRegionARB (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc)
-	BOOL wglSaveBufferRegionARB (HANDLE hRegion, int x, int y, int width, int height)
diff --git a/src/other/glew/auto/extensions/WGL_ARB_create_context b/src/other/glew/auto/extensions/WGL_ARB_create_context
deleted file mode 100644
index d864772..0000000
--- a/src/other/glew/auto/extensions/WGL_ARB_create_context
+++ /dev/null
@@ -1,10 +0,0 @@
-WGL_ARB_create_context
-http://www.opengl.org/registry/specs/ARB/wgl_create_context.txt
-WGL_ARB_create_context
-	WGL_CONTEXT_DEBUG_BIT_ARB 0x0001
-	WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002
-	WGL_CONTEXT_MAJOR_VERSION_ARB 0x2091
-	WGL_CONTEXT_MINOR_VERSION_ARB 0x2092
-	WGL_CONTEXT_LAYER_PLANE_ARB 0x2093
-	WGL_CONTEXT_FLAGS_ARB 0x2094
-	HGLRC wglCreateContextAttribsARB (HDC hDC, HGLRC hShareContext, const int* attribList)
diff --git a/src/other/glew/auto/extensions/WGL_ARB_create_context_profile b/src/other/glew/auto/extensions/WGL_ARB_create_context_profile
deleted file mode 100644
index 1b3c104..0000000
--- a/src/other/glew/auto/extensions/WGL_ARB_create_context_profile
+++ /dev/null
@@ -1,6 +0,0 @@
-WGL_ARB_create_context_profile
-http://www.opengl.org/registry/specs/ARB/wgl_create_context.txt
-WGL_ARB_create_context_profile
-	WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
-	WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
-	WGL_CONTEXT_PROFILE_MASK_ARB 0x9126
diff --git a/src/other/glew/auto/extensions/WGL_ARB_extensions_string b/src/other/glew/auto/extensions/WGL_ARB_extensions_string
deleted file mode 100644
index 1c13879..0000000
--- a/src/other/glew/auto/extensions/WGL_ARB_extensions_string
+++ /dev/null
@@ -1,4 +0,0 @@
-WGL_ARB_extensions_string
-http://www.opengl.org/registry/specs/ARB/wgl_extensions_string.txt
-WGL_ARB_extensions_string
-	const char* wglGetExtensionsStringARB (HDC hdc)
diff --git a/src/other/glew/auto/extensions/WGL_ARB_framebuffer_sRGB b/src/other/glew/auto/extensions/WGL_ARB_framebuffer_sRGB
deleted file mode 100644
index b166c5b..0000000
--- a/src/other/glew/auto/extensions/WGL_ARB_framebuffer_sRGB
+++ /dev/null
@@ -1,4 +0,0 @@
-WGL_ARB_framebuffer_sRGB
-http://www.opengl.org/registry/specs/ARB/framebuffer_sRGB.txt
-WGL_ARB_framebuffer_sRGB
-	WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20A9
diff --git a/src/other/glew/auto/extensions/WGL_ARB_make_current_read b/src/other/glew/auto/extensions/WGL_ARB_make_current_read
deleted file mode 100644
index 352f9cf..0000000
--- a/src/other/glew/auto/extensions/WGL_ARB_make_current_read
+++ /dev/null
@@ -1,7 +0,0 @@
-WGL_ARB_make_current_read
-http://www.opengl.org/registry/specs/ARB/wgl_make_current_read.txt
-WGL_ARB_make_current_read
-	HDC wglGetCurrentReadDCARB (VOID)
-	BOOL wglMakeContextCurrentARB (HDC hDrawDC, HDC hReadDC, HGLRC hglrc)
-	ERROR_INVALID_PIXEL_TYPE_ARB 0x2043
-	ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
diff --git a/src/other/glew/auto/extensions/WGL_ARB_multisample b/src/other/glew/auto/extensions/WGL_ARB_multisample
deleted file mode 100644
index 8f9f5c3..0000000
--- a/src/other/glew/auto/extensions/WGL_ARB_multisample
+++ /dev/null
@@ -1,5 +0,0 @@
-WGL_ARB_multisample
-http://www.opengl.org/registry/specs/ARB/multisample.txt
-WGL_ARB_multisample
-	WGL_SAMPLE_BUFFERS_ARB 0x2041
-	WGL_SAMPLES_ARB 0x2042
diff --git a/src/other/glew/auto/extensions/WGL_ARB_pbuffer b/src/other/glew/auto/extensions/WGL_ARB_pbuffer
deleted file mode 100644
index fa9f7c9..0000000
--- a/src/other/glew/auto/extensions/WGL_ARB_pbuffer
+++ /dev/null
@@ -1,17 +0,0 @@
-WGL_ARB_pbuffer
-http://www.opengl.org/registry/specs/ARB/wgl_pbuffer.txt
-WGL_ARB_pbuffer
-	WGL_DRAW_TO_PBUFFER_ARB 0x202D
-	WGL_MAX_PBUFFER_PIXELS_ARB 0x202E
-	WGL_MAX_PBUFFER_WIDTH_ARB 0x202F
-	WGL_MAX_PBUFFER_HEIGHT_ARB 0x2030
-	WGL_PBUFFER_LARGEST_ARB 0x2033
-	WGL_PBUFFER_WIDTH_ARB 0x2034
-	WGL_PBUFFER_HEIGHT_ARB 0x2035
-	WGL_PBUFFER_LOST_ARB 0x2036
-	HPBUFFERARB wglCreatePbufferARB (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int* piAttribList)
-	BOOL wglDestroyPbufferARB (HPBUFFERARB hPbuffer)
-	HDC wglGetPbufferDCARB (HPBUFFERARB hPbuffer)
-	BOOL wglQueryPbufferARB (HPBUFFERARB hPbuffer, int iAttribute, int* piValue)
-	int wglReleasePbufferDCARB (HPBUFFERARB hPbuffer, HDC hDC)
-	DECLARE_HANDLE(HPBUFFERARB);
diff --git a/src/other/glew/auto/extensions/WGL_ARB_pixel_format b/src/other/glew/auto/extensions/WGL_ARB_pixel_format
deleted file mode 100644
index 553353f..0000000
--- a/src/other/glew/auto/extensions/WGL_ARB_pixel_format
+++ /dev/null
@@ -1,55 +0,0 @@
-WGL_ARB_pixel_format
-http://www.opengl.org/registry/specs/ARB/wgl_pixel_format.txt
-WGL_ARB_pixel_format
-	WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000
-	WGL_DRAW_TO_WINDOW_ARB 0x2001
-	WGL_DRAW_TO_BITMAP_ARB 0x2002
-	WGL_ACCELERATION_ARB 0x2003
-	WGL_NEED_PALETTE_ARB 0x2004
-	WGL_NEED_SYSTEM_PALETTE_ARB 0x2005
-	WGL_SWAP_LAYER_BUFFERS_ARB 0x2006
-	WGL_SWAP_METHOD_ARB 0x2007
-	WGL_NUMBER_OVERLAYS_ARB 0x2008
-	WGL_NUMBER_UNDERLAYS_ARB 0x2009
-	WGL_TRANSPARENT_ARB 0x200A
-	WGL_SHARE_DEPTH_ARB 0x200C
-	WGL_SHARE_STENCIL_ARB 0x200D
-	WGL_SHARE_ACCUM_ARB 0x200E
-	WGL_SUPPORT_GDI_ARB 0x200F
-	WGL_SUPPORT_OPENGL_ARB 0x2010
-	WGL_DOUBLE_BUFFER_ARB 0x2011
-	WGL_STEREO_ARB 0x2012
-	WGL_PIXEL_TYPE_ARB 0x2013
-	WGL_COLOR_BITS_ARB 0x2014
-	WGL_RED_BITS_ARB 0x2015
-	WGL_RED_SHIFT_ARB 0x2016
-	WGL_GREEN_BITS_ARB 0x2017
-	WGL_GREEN_SHIFT_ARB 0x2018
-	WGL_BLUE_BITS_ARB 0x2019
-	WGL_BLUE_SHIFT_ARB 0x201A
-	WGL_ALPHA_BITS_ARB 0x201B
-	WGL_ALPHA_SHIFT_ARB 0x201C
-	WGL_ACCUM_BITS_ARB 0x201D
-	WGL_ACCUM_RED_BITS_ARB 0x201E
-	WGL_ACCUM_GREEN_BITS_ARB 0x201F
-	WGL_ACCUM_BLUE_BITS_ARB 0x2020
-	WGL_ACCUM_ALPHA_BITS_ARB 0x2021
-	WGL_DEPTH_BITS_ARB 0x2022
-	WGL_STENCIL_BITS_ARB 0x2023
-	WGL_AUX_BUFFERS_ARB 0x2024
-	WGL_NO_ACCELERATION_ARB 0x2025
-	WGL_GENERIC_ACCELERATION_ARB 0x2026
-	WGL_FULL_ACCELERATION_ARB 0x2027
-	WGL_SWAP_EXCHANGE_ARB 0x2028
-	WGL_SWAP_COPY_ARB 0x2029
-	WGL_SWAP_UNDEFINED_ARB 0x202A
-	WGL_TYPE_RGBA_ARB 0x202B
-	WGL_TYPE_COLORINDEX_ARB 0x202C
-	WGL_TRANSPARENT_RED_VALUE_ARB 0x2037
-	WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
-	WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
-	WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
-	WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
-	BOOL wglChoosePixelFormatARB (HDC hdc, const int* piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats)
-	BOOL wglGetPixelFormatAttribfvARB (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int* piAttributes, FLOAT *pfValues)
-	BOOL wglGetPixelFormatAttribivARB (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int* piAttributes, int *piValues)
diff --git a/src/other/glew/auto/extensions/WGL_ARB_pixel_format_float b/src/other/glew/auto/extensions/WGL_ARB_pixel_format_float
deleted file mode 100644
index f45294c..0000000
--- a/src/other/glew/auto/extensions/WGL_ARB_pixel_format_float
+++ /dev/null
@@ -1,4 +0,0 @@
-WGL_ARB_pixel_format_float
-http://www.opengl.org/registry/specs/ARB/color_buffer_float.txt
-WGL_ARB_pixel_format_float
-	WGL_TYPE_RGBA_FLOAT_ARB 0x21A0
diff --git a/src/other/glew/auto/extensions/WGL_ARB_render_texture b/src/other/glew/auto/extensions/WGL_ARB_render_texture
deleted file mode 100644
index 7821263..0000000
--- a/src/other/glew/auto/extensions/WGL_ARB_render_texture
+++ /dev/null
@@ -1,39 +0,0 @@
-WGL_ARB_render_texture
-http://www.opengl.org/registry/specs/ARB/wgl_render_texture.txt
-WGL_ARB_render_texture
-	WGL_BIND_TO_TEXTURE_RGB_ARB 0x2070
-	WGL_BIND_TO_TEXTURE_RGBA_ARB 0x2071
-	WGL_TEXTURE_FORMAT_ARB 0x2072
-	WGL_TEXTURE_TARGET_ARB 0x2073
-	WGL_MIPMAP_TEXTURE_ARB 0x2074
-	WGL_TEXTURE_RGB_ARB 0x2075
-	WGL_TEXTURE_RGBA_ARB 0x2076
-	WGL_NO_TEXTURE_ARB 0x2077
-	WGL_TEXTURE_CUBE_MAP_ARB 0x2078
-	WGL_TEXTURE_1D_ARB 0x2079
-	WGL_TEXTURE_2D_ARB 0x207A
-	WGL_MIPMAP_LEVEL_ARB 0x207B
-	WGL_CUBE_MAP_FACE_ARB 0x207C
-	WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D
-	WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E
-	WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F
-	WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080
-	WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081
-	WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082
-	WGL_FRONT_LEFT_ARB 0x2083
-	WGL_FRONT_RIGHT_ARB 0x2084
-	WGL_BACK_LEFT_ARB 0x2085
-	WGL_BACK_RIGHT_ARB 0x2086
-	WGL_AUX0_ARB 0x2087
-	WGL_AUX1_ARB 0x2088
-	WGL_AUX2_ARB 0x2089
-	WGL_AUX3_ARB 0x208A
-	WGL_AUX4_ARB 0x208B
-	WGL_AUX5_ARB 0x208C
-	WGL_AUX6_ARB 0x208D
-	WGL_AUX7_ARB 0x208E
-	WGL_AUX8_ARB 0x208F
-	WGL_AUX9_ARB 0x2090
-	BOOL wglBindTexImageARB (HPBUFFERARB hPbuffer, int iBuffer)
-	BOOL wglReleaseTexImageARB (HPBUFFERARB hPbuffer, int iBuffer)
-	BOOL wglSetPbufferAttribARB (HPBUFFERARB hPbuffer, const int* piAttribList)
diff --git a/src/other/glew/auto/extensions/WGL_ATI_pixel_format_float b/src/other/glew/auto/extensions/WGL_ATI_pixel_format_float
deleted file mode 100644
index ba6f51a..0000000
--- a/src/other/glew/auto/extensions/WGL_ATI_pixel_format_float
+++ /dev/null
@@ -1,6 +0,0 @@
-WGL_ATI_pixel_format_float
-http://www.opengl.org/registry/specs/ATI/pixel_format_float.txt
-WGL_ATI_pixel_format_float
-	WGL_TYPE_RGBA_FLOAT_ATI 0x21A0
-	GL_RGBA_FLOAT_MODE_ATI 0x8820
-	GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI 0x8835
diff --git a/src/other/glew/auto/extensions/WGL_ATI_render_texture_rectangle b/src/other/glew/auto/extensions/WGL_ATI_render_texture_rectangle
deleted file mode 100644
index 55df114..0000000
--- a/src/other/glew/auto/extensions/WGL_ATI_render_texture_rectangle
+++ /dev/null
@@ -1,4 +0,0 @@
-WGL_ATI_render_texture_rectangle
-
-WGL_ATI_render_texture_rectangle
-	WGL_TEXTURE_RECTANGLE_ATI 0x21A5
diff --git a/src/other/glew/auto/extensions/WGL_EXT_depth_float b/src/other/glew/auto/extensions/WGL_EXT_depth_float
deleted file mode 100644
index f8f3efe..0000000
--- a/src/other/glew/auto/extensions/WGL_EXT_depth_float
+++ /dev/null
@@ -1,4 +0,0 @@
-WGL_EXT_depth_float
-http://www.opengl.org/registry/specs/EXT/wgl_depth_float.txt
-WGL_EXT_depth_float
-	WGL_DEPTH_FLOAT_EXT 0x2040
diff --git a/src/other/glew/auto/extensions/WGL_EXT_display_color_table b/src/other/glew/auto/extensions/WGL_EXT_display_color_table
deleted file mode 100644
index 4de4a3d..0000000
--- a/src/other/glew/auto/extensions/WGL_EXT_display_color_table
+++ /dev/null
@@ -1,7 +0,0 @@
-WGL_EXT_display_color_table
-http://www.opengl.org/registry/specs/EXT/wgl_display_color_table.txt
-WGL_EXT_display_color_table
-	GLboolean wglBindDisplayColorTableEXT (GLushort id)
-	GLboolean wglCreateDisplayColorTableEXT (GLushort id)
-	void wglDestroyDisplayColorTableEXT (GLushort id)
-	GLboolean wglLoadDisplayColorTableEXT (GLushort* table, GLuint length)
diff --git a/src/other/glew/auto/extensions/WGL_EXT_extensions_string b/src/other/glew/auto/extensions/WGL_EXT_extensions_string
deleted file mode 100644
index 1f0cda0..0000000
--- a/src/other/glew/auto/extensions/WGL_EXT_extensions_string
+++ /dev/null
@@ -1,4 +0,0 @@
-WGL_EXT_extensions_string
-http://www.opengl.org/registry/specs/EXT/wgl_extensions_string.txt
-WGL_EXT_extensions_string
-	const char* wglGetExtensionsStringEXT (void)
diff --git a/src/other/glew/auto/extensions/WGL_EXT_framebuffer_sRGB b/src/other/glew/auto/extensions/WGL_EXT_framebuffer_sRGB
deleted file mode 100644
index e4a4032..0000000
--- a/src/other/glew/auto/extensions/WGL_EXT_framebuffer_sRGB
+++ /dev/null
@@ -1,4 +0,0 @@
-WGL_EXT_framebuffer_sRGB
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_framebuffer_sRGB.txt
-WGL_EXT_framebuffer_sRGB
-	WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9
diff --git a/src/other/glew/auto/extensions/WGL_EXT_make_current_read b/src/other/glew/auto/extensions/WGL_EXT_make_current_read
deleted file mode 100644
index d92c307..0000000
--- a/src/other/glew/auto/extensions/WGL_EXT_make_current_read
+++ /dev/null
@@ -1,6 +0,0 @@
-WGL_EXT_make_current_read
-http://www.opengl.org/registry/specs/EXT/wgl_make_current_read.txt
-WGL_EXT_make_current_read
-	HDC wglGetCurrentReadDCEXT (VOID)
-	BOOL wglMakeContextCurrentEXT (HDC hDrawDC, HDC hReadDC, HGLRC hglrc)
-	ERROR_INVALID_PIXEL_TYPE_EXT 0x2043
diff --git a/src/other/glew/auto/extensions/WGL_EXT_multisample b/src/other/glew/auto/extensions/WGL_EXT_multisample
deleted file mode 100644
index e419a33..0000000
--- a/src/other/glew/auto/extensions/WGL_EXT_multisample
+++ /dev/null
@@ -1,5 +0,0 @@
-WGL_EXT_multisample
-http://www.opengl.org/registry/specs/EXT/wgl_multisample.txt
-WGL_EXT_multisample
-	WGL_SAMPLE_BUFFERS_EXT 0x2041
-	WGL_SAMPLES_EXT 0x2042
diff --git a/src/other/glew/auto/extensions/WGL_EXT_pbuffer b/src/other/glew/auto/extensions/WGL_EXT_pbuffer
deleted file mode 100644
index d32a950..0000000
--- a/src/other/glew/auto/extensions/WGL_EXT_pbuffer
+++ /dev/null
@@ -1,18 +0,0 @@
-WGL_EXT_pbuffer
-http://www.opengl.org/registry/specs/EXT/wgl_pbuffer.txt
-WGL_EXT_pbuffer
-	WGL_DRAW_TO_PBUFFER_EXT 0x202D
-	WGL_MAX_PBUFFER_PIXELS_EXT 0x202E
-	WGL_MAX_PBUFFER_WIDTH_EXT 0x202F
-	WGL_MAX_PBUFFER_HEIGHT_EXT 0x2030
-	WGL_OPTIMAL_PBUFFER_WIDTH_EXT 0x2031
-	WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
-	WGL_PBUFFER_LARGEST_EXT 0x2033
-	WGL_PBUFFER_WIDTH_EXT 0x2034
-	WGL_PBUFFER_HEIGHT_EXT 0x2035
-	HPBUFFEREXT wglCreatePbufferEXT (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int* piAttribList)
-	BOOL wglDestroyPbufferEXT (HPBUFFEREXT hPbuffer)
-	HDC wglGetPbufferDCEXT (HPBUFFEREXT hPbuffer)
-	BOOL wglQueryPbufferEXT (HPBUFFEREXT hPbuffer, int iAttribute, int* piValue)
-	int wglReleasePbufferDCEXT (HPBUFFEREXT hPbuffer, HDC hDC)
-	DECLARE_HANDLE(HPBUFFEREXT);
diff --git a/src/other/glew/auto/extensions/WGL_EXT_pixel_format b/src/other/glew/auto/extensions/WGL_EXT_pixel_format
deleted file mode 100644
index 6b18933..0000000
--- a/src/other/glew/auto/extensions/WGL_EXT_pixel_format
+++ /dev/null
@@ -1,51 +0,0 @@
-WGL_EXT_pixel_format
-http://www.opengl.org/registry/specs/EXT/wgl_pixel_format.txt
-WGL_EXT_pixel_format
-	WGL_NUMBER_PIXEL_FORMATS_EXT 0x2000
-	WGL_DRAW_TO_WINDOW_EXT 0x2001
-	WGL_DRAW_TO_BITMAP_EXT 0x2002
-	WGL_ACCELERATION_EXT 0x2003
-	WGL_NEED_PALETTE_EXT 0x2004
-	WGL_NEED_SYSTEM_PALETTE_EXT 0x2005
-	WGL_SWAP_LAYER_BUFFERS_EXT 0x2006
-	WGL_SWAP_METHOD_EXT 0x2007
-	WGL_NUMBER_OVERLAYS_EXT 0x2008
-	WGL_NUMBER_UNDERLAYS_EXT 0x2009
-	WGL_TRANSPARENT_EXT 0x200A
-	WGL_TRANSPARENT_VALUE_EXT 0x200B
-	WGL_SHARE_DEPTH_EXT 0x200C
-	WGL_SHARE_STENCIL_EXT 0x200D
-	WGL_SHARE_ACCUM_EXT 0x200E
-	WGL_SUPPORT_GDI_EXT 0x200F
-	WGL_SUPPORT_OPENGL_EXT 0x2010
-	WGL_DOUBLE_BUFFER_EXT 0x2011
-	WGL_STEREO_EXT 0x2012
-	WGL_PIXEL_TYPE_EXT 0x2013
-	WGL_COLOR_BITS_EXT 0x2014
-	WGL_RED_BITS_EXT 0x2015
-	WGL_RED_SHIFT_EXT 0x2016
-	WGL_GREEN_BITS_EXT 0x2017
-	WGL_GREEN_SHIFT_EXT 0x2018
-	WGL_BLUE_BITS_EXT 0x2019
-	WGL_BLUE_SHIFT_EXT 0x201A
-	WGL_ALPHA_BITS_EXT 0x201B
-	WGL_ALPHA_SHIFT_EXT 0x201C
-	WGL_ACCUM_BITS_EXT 0x201D
-	WGL_ACCUM_RED_BITS_EXT 0x201E
-	WGL_ACCUM_GREEN_BITS_EXT 0x201F
-	WGL_ACCUM_BLUE_BITS_EXT 0x2020
-	WGL_ACCUM_ALPHA_BITS_EXT 0x2021
-	WGL_DEPTH_BITS_EXT 0x2022
-	WGL_STENCIL_BITS_EXT 0x2023
-	WGL_AUX_BUFFERS_EXT 0x2024
-	WGL_NO_ACCELERATION_EXT 0x2025
-	WGL_GENERIC_ACCELERATION_EXT 0x2026
-	WGL_FULL_ACCELERATION_EXT 0x2027
-	WGL_SWAP_EXCHANGE_EXT 0x2028
-	WGL_SWAP_COPY_EXT 0x2029
-	WGL_SWAP_UNDEFINED_EXT 0x202A
-	WGL_TYPE_RGBA_EXT 0x202B
-	WGL_TYPE_COLORINDEX_EXT 0x202C
-	BOOL wglChoosePixelFormatEXT (HDC hdc, const int* piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats)
-	BOOL wglGetPixelFormatAttribfvEXT (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int* piAttributes, FLOAT *pfValues)
-	BOOL wglGetPixelFormatAttribivEXT (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int* piAttributes, int *piValues)
diff --git a/src/other/glew/auto/extensions/WGL_EXT_pixel_format_packed_float b/src/other/glew/auto/extensions/WGL_EXT_pixel_format_packed_float
deleted file mode 100644
index 30925fc..0000000
--- a/src/other/glew/auto/extensions/WGL_EXT_pixel_format_packed_float
+++ /dev/null
@@ -1,4 +0,0 @@
-WGL_EXT_pixel_format_packed_float
-http://developer.download.nvidia.com/opengl/specs/GL_EXT_packed_float.txt
-WGL_EXT_pixel_format_packed_float
-	WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8
diff --git a/src/other/glew/auto/extensions/WGL_EXT_swap_control b/src/other/glew/auto/extensions/WGL_EXT_swap_control
deleted file mode 100644
index c3d63f5..0000000
--- a/src/other/glew/auto/extensions/WGL_EXT_swap_control
+++ /dev/null
@@ -1,5 +0,0 @@
-WGL_EXT_swap_control
-http://www.opengl.org/registry/specs/EXT/wgl_swap_control.txt
-WGL_EXT_swap_control
-	int wglGetSwapIntervalEXT (void)
-	BOOL wglSwapIntervalEXT (int interval)
diff --git a/src/other/glew/auto/extensions/WGL_I3D_digital_video_control b/src/other/glew/auto/extensions/WGL_I3D_digital_video_control
deleted file mode 100644
index 6dff1d3..0000000
--- a/src/other/glew/auto/extensions/WGL_I3D_digital_video_control
+++ /dev/null
@@ -1,9 +0,0 @@
-WGL_I3D_digital_video_control
-http://www.opengl.org/registry/specs/I3D/wgl_digital_video_control.txt
-WGL_I3D_digital_video_control
-	WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
-	WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
-	WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
-	WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
-	BOOL wglGetDigitalVideoParametersI3D (HDC hDC, int iAttribute, int* piValue)
-	BOOL wglSetDigitalVideoParametersI3D (HDC hDC, int iAttribute, const int* piValue)
diff --git a/src/other/glew/auto/extensions/WGL_I3D_gamma b/src/other/glew/auto/extensions/WGL_I3D_gamma
deleted file mode 100644
index 6df2a59..0000000
--- a/src/other/glew/auto/extensions/WGL_I3D_gamma
+++ /dev/null
@@ -1,9 +0,0 @@
-WGL_I3D_gamma
-http://www.opengl.org/registry/specs/I3D/wgl_gamma.txt
-WGL_I3D_gamma
-	WGL_GAMMA_TABLE_SIZE_I3D 0x204E
-	WGL_GAMMA_EXCLUDE_DESKTOP_I3D 0x204F
-	BOOL wglGetGammaTableI3D (HDC hDC, int iEntries, USHORT* puRed, USHORT *puGreen, USHORT *puBlue)
-	BOOL wglGetGammaTableParametersI3D (HDC hDC, int iAttribute, int* piValue)
-	BOOL wglSetGammaTableI3D (HDC hDC, int iEntries, const USHORT* puRed, const USHORT *puGreen, const USHORT *puBlue)
-	BOOL wglSetGammaTableParametersI3D (HDC hDC, int iAttribute, const int* piValue)
diff --git a/src/other/glew/auto/extensions/WGL_I3D_genlock b/src/other/glew/auto/extensions/WGL_I3D_genlock
deleted file mode 100644
index ef6a7aa..0000000
--- a/src/other/glew/auto/extensions/WGL_I3D_genlock
+++ /dev/null
@@ -1,24 +0,0 @@
-WGL_I3D_genlock
-http://www.opengl.org/registry/specs/I3D/wgl_genlock.txt
-WGL_I3D_genlock
-	WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
-	WGL_GENLOCK_SOURCE_EXTERNAL_SYNC_I3D 0x2045
-	WGL_GENLOCK_SOURCE_EXTERNAL_FIELD_I3D 0x2046
-	WGL_GENLOCK_SOURCE_EXTERNAL_TTL_I3D 0x2047
-	WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
-	WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
-	WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
-	WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
-	WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
-	BOOL wglDisableGenlockI3D (HDC hDC)
-	BOOL wglEnableGenlockI3D (HDC hDC)
-	BOOL wglGenlockSampleRateI3D (HDC hDC, UINT uRate)
-	BOOL wglGenlockSourceDelayI3D (HDC hDC, UINT uDelay)
-	BOOL wglGenlockSourceEdgeI3D (HDC hDC, UINT uEdge)
-	BOOL wglGenlockSourceI3D (HDC hDC, UINT uSource)
-	BOOL wglGetGenlockSampleRateI3D (HDC hDC, UINT* uRate)
-	BOOL wglGetGenlockSourceDelayI3D (HDC hDC, UINT* uDelay)
-	BOOL wglGetGenlockSourceEdgeI3D (HDC hDC, UINT* uEdge)
-	BOOL wglGetGenlockSourceI3D (HDC hDC, UINT* uSource)
-	BOOL wglIsEnabledGenlockI3D (HDC hDC, BOOL* pFlag)
-	BOOL wglQueryGenlockMaxSourceDelayI3D (HDC hDC, UINT* uMaxLineDelay, UINT *uMaxPixelDelay)
diff --git a/src/other/glew/auto/extensions/WGL_I3D_image_buffer b/src/other/glew/auto/extensions/WGL_I3D_image_buffer
deleted file mode 100644
index fa4a66d..0000000
--- a/src/other/glew/auto/extensions/WGL_I3D_image_buffer
+++ /dev/null
@@ -1,9 +0,0 @@
-WGL_I3D_image_buffer
-http://www.opengl.org/registry/specs/I3D/wgl_image_buffer.txt
-WGL_I3D_image_buffer
-	WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
-	WGL_IMAGE_BUFFER_LOCK_I3D 0x00000002
-	BOOL wglAssociateImageBufferEventsI3D (HDC hdc, HANDLE* pEvent, LPVOID *pAddress, DWORD *pSize, UINT count)
-	LPVOID wglCreateImageBufferI3D (HDC hDC, DWORD dwSize, UINT uFlags)
-	BOOL wglDestroyImageBufferI3D (HDC hDC, LPVOID pAddress)
-	BOOL wglReleaseImageBufferEventsI3D (HDC hdc, LPVOID* pAddress, UINT count)
diff --git a/src/other/glew/auto/extensions/WGL_I3D_swap_frame_lock b/src/other/glew/auto/extensions/WGL_I3D_swap_frame_lock
deleted file mode 100644
index 76cf91f..0000000
--- a/src/other/glew/auto/extensions/WGL_I3D_swap_frame_lock
+++ /dev/null
@@ -1,7 +0,0 @@
-WGL_I3D_swap_frame_lock
-http://www.opengl.org/registry/specs/I3D/wgl_swap_frame_lock.txt
-WGL_I3D_swap_frame_lock
-	BOOL wglDisableFrameLockI3D (VOID)
-	BOOL wglEnableFrameLockI3D (VOID)
-	BOOL wglIsEnabledFrameLockI3D (BOOL* pFlag)
-	BOOL wglQueryFrameLockMasterI3D (BOOL* pFlag)
diff --git a/src/other/glew/auto/extensions/WGL_I3D_swap_frame_usage b/src/other/glew/auto/extensions/WGL_I3D_swap_frame_usage
deleted file mode 100644
index 59546a5..0000000
--- a/src/other/glew/auto/extensions/WGL_I3D_swap_frame_usage
+++ /dev/null
@@ -1,7 +0,0 @@
-WGL_I3D_swap_frame_usage
-http://www.opengl.org/registry/specs/I3D/wgl_swap_frame_usage.txt
-WGL_I3D_swap_frame_usage
-	BOOL wglBeginFrameTrackingI3D (void)
-	BOOL wglEndFrameTrackingI3D (void)
-	BOOL wglGetFrameUsageI3D (float* pUsage)
-	BOOL wglQueryFrameTrackingI3D (DWORD* pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage)
diff --git a/src/other/glew/auto/extensions/WGL_NV_copy_image b/src/other/glew/auto/extensions/WGL_NV_copy_image
deleted file mode 100644
index 8b2a919..0000000
--- a/src/other/glew/auto/extensions/WGL_NV_copy_image
+++ /dev/null
@@ -1,4 +0,0 @@
-WGL_NV_copy_image
-http://www.opengl.org/registry/specs/NV/copy_image.txt
-WGL_NV_copy_image
-  BOOL wglCopyImageSubDataNV (HGLRC hSrcRC, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, HGLRC hDstRC, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth)
diff --git a/src/other/glew/auto/extensions/WGL_NV_float_buffer b/src/other/glew/auto/extensions/WGL_NV_float_buffer
deleted file mode 100644
index 508e82e..0000000
--- a/src/other/glew/auto/extensions/WGL_NV_float_buffer
+++ /dev/null
@@ -1,12 +0,0 @@
-WGL_NV_float_buffer
-http://www.opengl.org/registry/specs/NV/float_buffer.txt
-WGL_NV_float_buffer
-	WGL_FLOAT_COMPONENTS_NV 0x20B0
-	WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
-	WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
-	WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
-	WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
-	WGL_TEXTURE_FLOAT_R_NV 0x20B5
-	WGL_TEXTURE_FLOAT_RG_NV 0x20B6
-	WGL_TEXTURE_FLOAT_RGB_NV 0x20B7
-	WGL_TEXTURE_FLOAT_RGBA_NV 0x20B8
diff --git a/src/other/glew/auto/extensions/WGL_NV_gpu_affinity b/src/other/glew/auto/extensions/WGL_NV_gpu_affinity
deleted file mode 100644
index f722204..0000000
--- a/src/other/glew/auto/extensions/WGL_NV_gpu_affinity
+++ /dev/null
@@ -1,12 +0,0 @@
-WGL_NV_gpu_affinity
-http://developer.download.nvidia.com/opengl/specs/WGL_nv_gpu_affinity.txt
-WGL_NV_gpu_affinity
-	WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0
-	WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1
-	BOOL wglEnumGpusNV (UINT iGpuIndex, HGPUNV *phGpu)
-	BOOL wglEnumGpuDevicesNV (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice)
-	HDC wglCreateAffinityDCNV (const HGPUNV *phGpuList)
-	BOOL wglEnumGpusFromAffinityDCNV (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu)
-	BOOL wglDeleteDCNV (HDC hdc)
-	DECLARE_HANDLE(HGPUNV);
-	typedef struct _GPU_DEVICE {  DWORD cb;   CHAR DeviceName[32];   CHAR DeviceString[128];   DWORD Flags;   RECT rcVirtualScreen; } GPU_DEVICE, *PGPU_DEVICE;
diff --git a/src/other/glew/auto/extensions/WGL_NV_present_video b/src/other/glew/auto/extensions/WGL_NV_present_video
deleted file mode 100644
index 4e62467..0000000
--- a/src/other/glew/auto/extensions/WGL_NV_present_video
+++ /dev/null
@@ -1,8 +0,0 @@
-WGL_NV_present_video
-http://www.opengl.org/registry/specs/NV/present_video.txt
-WGL_NV_present_video
-	WGL_NUM_VIDEO_SLOTS_NV 0x20F0
-	BOOL wglBindVideoDeviceNV (HDC hDc, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int* piAttribList)
-	int wglEnumerateVideoDevicesNV (HDC hDc, HVIDEOOUTPUTDEVICENV* phDeviceList)
-	BOOL wglQueryCurrentContextNV (int iAttribute, int* piValue)
-    DECLARE_HANDLE(HVIDEOOUTPUTDEVICENV);
diff --git a/src/other/glew/auto/extensions/WGL_NV_render_depth_texture b/src/other/glew/auto/extensions/WGL_NV_render_depth_texture
deleted file mode 100644
index c2e359a..0000000
--- a/src/other/glew/auto/extensions/WGL_NV_render_depth_texture
+++ /dev/null
@@ -1,9 +0,0 @@
-WGL_NV_render_depth_texture
-http://www.opengl.org/registry/specs/NV/render_depth_texture.txt
-WGL_NV_render_depth_texture
-	WGL_NO_TEXTURE_ARB 0x2077
-	WGL_BIND_TO_TEXTURE_DEPTH_NV 0x20A3
-	WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
-	WGL_DEPTH_TEXTURE_FORMAT_NV 0x20A5
-	WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
-	WGL_DEPTH_COMPONENT_NV 0x20A7
diff --git a/src/other/glew/auto/extensions/WGL_NV_render_texture_rectangle b/src/other/glew/auto/extensions/WGL_NV_render_texture_rectangle
deleted file mode 100644
index ada7e7e..0000000
--- a/src/other/glew/auto/extensions/WGL_NV_render_texture_rectangle
+++ /dev/null
@@ -1,6 +0,0 @@
-WGL_NV_render_texture_rectangle
-http://www.opengl.org/registry/specs/NV/render_texture_rectangle.txt
-WGL_NV_render_texture_rectangle
-	WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
-	WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
-	WGL_TEXTURE_RECTANGLE_NV 0x20A2
diff --git a/src/other/glew/auto/extensions/WGL_NV_swap_group b/src/other/glew/auto/extensions/WGL_NV_swap_group
deleted file mode 100644
index c114a49..0000000
--- a/src/other/glew/auto/extensions/WGL_NV_swap_group
+++ /dev/null
@@ -1,9 +0,0 @@
-WGL_NV_swap_group
-http://www.opengl.org/registry/specs/NV/wgl_swap_group.txt
-WGL_NV_swap_group
-	BOOL wglBindSwapBarrierNV (GLuint group, GLuint barrier)
-	BOOL wglJoinSwapGroupNV (HDC hDC, GLuint group)
-	BOOL wglQueryFrameCountNV (HDC hDC, GLuint* count)
-	BOOL wglQueryMaxSwapGroupsNV (HDC hDC, GLuint* maxGroups, GLuint *maxBarriers)
-	BOOL wglQuerySwapGroupNV (HDC hDC, GLuint* group, GLuint *barrier)
-	BOOL wglResetFrameCountNV (HDC hDC)
diff --git a/src/other/glew/auto/extensions/WGL_NV_vertex_array_range b/src/other/glew/auto/extensions/WGL_NV_vertex_array_range
deleted file mode 100644
index ca22d31..0000000
--- a/src/other/glew/auto/extensions/WGL_NV_vertex_array_range
+++ /dev/null
@@ -1,5 +0,0 @@
-WGL_NV_vertex_array_range
-http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_array_range.txt
-WGL_NV_vertex_array_range
-	void * wglAllocateMemoryNV (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority)
-	void wglFreeMemoryNV (void *pointer)
diff --git a/src/other/glew/auto/extensions/WGL_NV_video_output b/src/other/glew/auto/extensions/WGL_NV_video_output
deleted file mode 100644
index 87f243f..0000000
--- a/src/other/glew/auto/extensions/WGL_NV_video_output
+++ /dev/null
@@ -1,23 +0,0 @@
-WGL_NV_video_output
-http://www.opengl.org/registry/specs/NV/wgl_video_out.txt
-WGL_NV_video_output
-	WGL_BIND_TO_VIDEO_RGB_NV 0x20C0
-	WGL_BIND_TO_VIDEO_RGBA_NV 0x20C1
-	WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV 0x20C2
-	WGL_VIDEO_OUT_COLOR_NV 0x20C3
-	WGL_VIDEO_OUT_ALPHA_NV 0x20C4
-	WGL_VIDEO_OUT_DEPTH_NV 0x20C5
-	WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
-	WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
-	WGL_VIDEO_OUT_FRAME 0x20C8
-	WGL_VIDEO_OUT_FIELD_1 0x20C9
-	WGL_VIDEO_OUT_FIELD_2 0x20CA
-	WGL_VIDEO_OUT_STACKED_FIELDS_1_2 0x20CB
-	WGL_VIDEO_OUT_STACKED_FIELDS_2_1 0x20CC
-	BOOL wglBindVideoImageNV (HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer)
-	BOOL wglGetVideoDeviceNV (HDC hDC, int numDevices, HPVIDEODEV* hVideoDevice)
-	BOOL wglGetVideoInfoNV (HPVIDEODEV hpVideoDevice, unsigned long* pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo)
-	BOOL wglReleaseVideoDeviceNV (HPVIDEODEV hVideoDevice)
-	BOOL wglReleaseVideoImageNV (HPBUFFERARB hPbuffer, int iVideoBuffer)
-	BOOL wglSendPbufferToVideoNV (HPBUFFERARB hPbuffer, int iBufferType, unsigned long* pulCounterPbuffer, BOOL bBlock)
-    DECLARE_HANDLE(HPVIDEODEV);
diff --git a/src/other/glew/auto/extensions/WGL_OML_sync_control b/src/other/glew/auto/extensions/WGL_OML_sync_control
deleted file mode 100644
index d3265c8..0000000
--- a/src/other/glew/auto/extensions/WGL_OML_sync_control
+++ /dev/null
@@ -1,9 +0,0 @@
-WGL_OML_sync_control
-http://www.opengl.org/registry/specs/OML/wgl_sync_control.txt
-WGL_OML_sync_control
-	BOOL wglGetMscRateOML (HDC hdc, INT32* numerator, INT32 *denominator)
-	BOOL wglGetSyncValuesOML (HDC hdc, INT64* ust, INT64 *msc, INT64 *sbc)
-	INT64 wglSwapBuffersMscOML (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder)
-	INT64 wglSwapLayerBuffersMscOML (HDC hdc, INT fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder)
-	BOOL wglWaitForMscOML (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64* ust, INT64 *msc, INT64 *sbc)
-	BOOL wglWaitForSbcOML (HDC hdc, INT64 target_sbc, INT64* ust, INT64 *msc, INT64 *sbc)
diff --git a/src/other/glew/auto/lib/OpenGL/Spec.pm b/src/other/glew/auto/lib/OpenGL/Spec.pm
deleted file mode 100644
index 1311b39..0000000
--- a/src/other/glew/auto/lib/OpenGL/Spec.pm
+++ /dev/null
@@ -1,202 +0,0 @@
-package OpenGL::Spec;
-
-# A very simple task further complicated by the fact that some people
-# can't read, others use legacy Operating Systems, and others don't give
-# a damn about using a halfway decent text editor.
-#
-# The code to parse the _template_ is so simple and straightforward...
-# yet the code to parse the real spec files is this mess.
-
-my %typemap = (
-    bitfield    => "GLbitfield",
-    boolean     => "GLboolean",
-    # fsck up in EXT_vertex_array
-    Boolean     => "GLboolean",
-    byte        => "GLbyte",
-    clampd      => "GLclampd",
-    clampf      => "GLclampf",
-    double      => "GLdouble",
-    enum        => "GLenum",
-    # Intel fsck up
-    Glenum      => "GLenum",
-    float       => "GLfloat",
-    half        => "GLuint",
-    int         => "GLint",
-    short       => "GLshort",
-    sizei       => "GLsizei",
-    ubyte       => "GLubyte",
-    uint        => "GLuint",
-    ushort      => "GLushort",
-    DMbuffer    => "void *",
-
-    # ARB VBO introduces these
-    sizeiptrARB => "GLsizeiptrARB",
-    intptrARB   => "GLintptrARB",
-
-    # ARB shader objects introduces these, charARB is at least 8 bits,
-    # handleARB is at least 32 bits
-    charARB     => "GLcharARB",
-    handleARB   => "GLhandleARB",
-
-    # GLX 1.3 defines new types which might not be available at compile time
-    #GLXFBConfig   => "void*",
-    #GLXFBConfigID => "XID",
-    #GLXContextID  => "XID",
-    #GLXWindow     => "XID",
-    #GLXPbuffer    => "XID",
-
-    # Weird stuff for some SGIX extension
-    #GLXFBConfigSGIX   => "void*",
-    #GLXFBConfigIDSGIX => "XID",
-);
-
-my %void_typemap = (
-    void    => "GLvoid",
-);
-
-my $section_re  = qr{^[A-Z]};
-my $function_re = qr{^(.+) ([a-z][a-z0-9_]*) \((.+)\)$}i;
-my $token_re    = qr{^([A-Z0-9][A-Z0-9_]*):?\s+((?:0x)?[0-9A-F]+)(.*)$};
-my $prefix_re   = qr{^(?:AGL | GLX | WGL)_}x;
-my $eofnc_re    = qr{ \);?$ | ^$ }x;
-my $function_re = qr{^(.+) ([a-z][a-z0-9_]*) \((.+)\)$}i;
-my $prefix_re   = qr{^(?:gl | agl | wgl | glX)}x;
-my $types_re    = __compile_wordlist_cap(keys %typemap);
-my $voidtype_re = __compile_wordlist_cap(keys %void_typemap);
-
-sub new($)
-{
-    my $class = shift;
-    my $self = { section => {} };
-    $self->{filename} = shift;
-    local $/;
-    open(my $fh, "<$self->{filename}") or die "Can't open $self->{filename}";
-    my $content = <$fh>;
-    my $section;
-    my $s = $self->{section};
-
-    $content =~ s{[ \t]+$}{}mg;
-    # Join lines that end with a word-character and ones that *begin*
-    # with one
-    $content =~ s{(\w)\n(\w)}{$1 $2}sg;
-
-    foreach (split /\n/, $content)
-    {
-        if (/$section_re/)
-        {
-            chomp;
-            s/^Name String$/Name Strings/; # Fix common mistake
-            $section = $_;
-            $s->{$section} = "";
-        }
-        elsif (defined $section and exists $s->{$section})
-        {
-            s{^\s+}{}mg; # Remove leading whitespace
-            $s->{$section} .= $_ . "\n";
-        }
-    }
-
-    $s->{$_} =~ s{(?:^\n+|\n+$)}{}s foreach keys %$s;
-
-    bless $self, $class;
-}
-
-sub sections()
-{
-    my $self = shift;
-    keys %{$self->{section}};
-}
-
-sub name()
-{
-    my $self = shift;
-    $self->{section}->{Name};
-}
-
-sub name_strings()
-{
-    my $self = shift;
-    split("\n", $self->{section}->{"Name Strings"});
-}
-
-sub tokens()
-{
-    my $self = shift;
-    my %tokens = ();
-    foreach (split /\n/, $self->{section}->{"New Tokens"})
-    {
-        next unless /$token_re/;
-        my ($name, $value) = ($1, $2);
-        $name =~ s{^}{GL_} unless $name =~ /$prefix_re/;
-        $tokens{$name} = $value;
-    }
-
-    return %tokens;
-}
-
-sub functions()
-{
-    my $self = shift;
-    my %functions = ();
-    my @fnc = ();
-
-    foreach (split /\n/, $self->{section}->{"New Procedures and Functions"})
-    {
-        push @fnc, $_ unless ($_ eq "" or $_ eq "None");
-
-        next unless /$eofnc_re/;
-
-        if (__normalize_proto(@fnc) =~ /$function_re/)
-        {
-            my ($return, $name, $parms) = ($1, $2, $3);
-            if (!__ignore_function($name, $extname))
-            {
-                $name =~ s/^/gl/ unless $name =~ /$prefix_re/;
-                if ($name =~ /^gl/ && $name !~ /^glX/)
-                {
-                    $return =~ s/$types_re/$typemap{$1}/g;
-                    $return =~ s/$voidtype_re/$void_typemap{$1}/g;
-                    $parms  =~ s/$types_re/$typemap{$1}/g;
-                    $parms  =~ s/$voidtype_re/$void_typemap{$1}/g;
-                }
-                $functions{$name} = {
-                    rtype => $return,
-                    parms => $parms,
-                };
-            }
-        }
-        @fnc = ();
-    }
-
-    return %functions;
-}
-
-sub __normalize_proto
-{
-    local $_ = join(" ", @_);
-    s/\s+/ /g;                # multiple whitespace -> single space
-    s/\s*\(\s*/ \(/;          # exactly one space before ( and none after
-    s/\s*\)\s*/\)/;           # no after before or after )
-    s/\s*\*([a-zA-Z])/\* $1/; # "* identifier" XXX: g missing?
-    s/\*wgl/\* wgl/;          # "* wgl"        XXX: why doesn't the
-    s/\*glX/\* glX/;          # "* glX"             previous re catch this?
-    s/\.\.\./void/;           # ... -> void
-    s/;$//;                   # remove ; at the end of the line
-    return $_;
-}
-
-sub __ignore_function
-{
-    return 0;
-}
-
-sub __compile_regex
-{
-    my $regex = join('', @_);
-    return qr/$regex/
-}
-
-sub __compile_wordlist_cap
-{
-    __compile_regex('\b(', join('|', @_), ')\b');
-}
diff --git a/src/other/glew/auto/src/footer.html b/src/other/glew/auto/src/footer.html
deleted file mode 100644
index 3adb9c1..0000000
--- a/src/other/glew/auto/src/footer.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<!-- begin footer.html -->
-</td></tr></table></body>
-<!-- end footer.html -->
-
diff --git a/src/other/glew/auto/src/glew.rc b/src/other/glew/auto/src/glew.rc
deleted file mode 100644
index 5674cc9..0000000
--- a/src/other/glew/auto/src/glew.rc
+++ /dev/null
@@ -1,77 +0,0 @@
-
-#include <windows.h>
-
-#ifdef GLEW_MX
-#  ifdef GLEW_STATIC
-#    ifdef _DEBUG
-#      define FILENAME "glew32mxsd.dll"
-#    else
-#      define FILENAME "glew32mxs.dll"
-#    endif
-#  else
-#    ifdef _DEBUG
-#      define FILENAME "glew32mxd.dll"
-#    else
-#      define FILENAME "glew32mx.dll"
-#    endif
-#  endif
-#else
-#  ifdef GLEW_STATIC
-#    ifdef _DEBUG
-#      define FILENAME "glew32sd.dll"
-#    else
-#      define FILENAME "glew32s.dll"
-#    endif
-#  else
-#    ifdef _DEBUG
-#      define FILENAME "glew32d.dll"
-#    else
-#      define FILENAME "glew32.dll"
-#    endif
-#  endif
-#endif
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Version
-//
-VS_VERSION_INFO VERSIONINFO 
-FILEVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0
-PRODUCTVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0
-FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
-#ifdef _DEBUG
-FILEFLAGS VS_FF_DEBUG
-#else
-FILEFLAGS 0x0L
-#endif
-FILEOS VOS__WINDOWS32
-#ifdef GLEW_STATIC
-FILETYPE VFT_STATIC_LIB
-#else
-FILETYPE VFT_DLL
-#endif
-FILESUBTYPE VFT2_UNKNOWN
-BEGIN
-    BLOCK "StringFileInfo"
-    BEGIN
-        BLOCK "040904b0"
-        BEGIN
-            VALUE "Comments", "The OpenGL Extension Wrangler Library\r\nCopyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>\r\nCopyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>\r\nCopyright (C) 2002, Lev Povalahev\r\nAll rights reserved.\r\n\r\nRedistribution and use in source and binary forms, with or without \r\nmodification, are permitted provided that the following conditions are met:\r\n\r\n* Redistributions of source code must retain the above copyright notice, \r\n  this list of conditions and the following disclaimer.\r\n* Redistributions in binary form must reproduce the above copyright notice, \r\n  this list of conditions and the following disclaimer in the documentation \r\n  and/or other materials provided with the distribution.\r\n* The name of the author may be used to endorse or promote products \r\n  derived from this software without specific prior written permission.\r\n\r\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ''AS IS'' \r\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\nARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r\nLIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r\nCONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r\nSUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\nINTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\nCONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\nARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r\nTHE POSSIBILITY OF SUCH DAMAGE.\r\n\r\n\r\nMesa 3-D graphics library\r\n\r\nVersion:  7.0\r\n\r\nCopyright (C) 1999-2007  Brian Paul   All Rights Reserved.\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a\r\ncopy of this software and associated documentation files (the ''Software''),\r\nto deal in the Software without restriction, including without limitation\r\nthe rights to use, copy, modify, merge, publish, distribute, sublicense,\r\nand/or sell copies of the Software, and to permit persons to whom the\r\nSoftware is furnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included\r\nin all copies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS\r\nOR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL\r\nBRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN\r\nAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r\nCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n\r\n\r\nCopyright (c) 2007 The Khronos Group Inc.\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a\r\ncopy of this software and/or associated documentation files (the\r\n''Materials''), to deal in the Materials without restriction, including\r\nwithout limitation the rights to use, copy, modify, merge, publish,\r\ndistribute, sublicense, and/or sell copies of the Materials, and to\r\npermit persons to whom the Materials are furnished to do so, subject to\r\nthe following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included\r\nin all copies or substantial portions of the Materials.\r\n\r\nTHE MATERIALS ARE PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND,\r\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r\nMATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.\0"
-            VALUE "CompanyName", "\0"
-            VALUE "FileDescription", "The OpenGL Extension Wrangler Library\0"
-            VALUE "FileVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0"
-            VALUE "InternalName", "GLEW\0"
-            VALUE "LegalCopyright", "© 2002-2008 Milan Ikits & Marcelo Magallon\0"
-            VALUE "LegalTrademarks", "\0"
-            VALUE "OriginalFilename", FILENAME "\0"
-            VALUE "PrivateBuild", "\0"
-            VALUE "ProductName", "The OpenGL Extension Wrangler Library\0"
-            VALUE "ProductVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0"
-            VALUE "SpecialBuild", "\0"
-        END
-    END
-    BLOCK "VarFileInfo"
-    BEGIN
-        VALUE "Translation", 0x409, 1200
-    END
-END
diff --git a/src/other/glew/auto/src/glew_head.c b/src/other/glew/auto/src/glew_head.c
deleted file mode 100644
index 19afd93..0000000
--- a/src/other/glew/auto/src/glew_head.c
+++ /dev/null
@@ -1,207 +0,0 @@
-#include <GL/glew.h>
-#if defined(_WIN32)
-#  include <GL/wglew.h>
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-#  include <GL/glxew.h>
-#endif
-
-/*
- * Define glewGetContext and related helper macros.
- */
-#ifdef GLEW_MX
-#  define glewGetContext() ctx
-#  ifdef _WIN32
-#    define GLEW_CONTEXT_ARG_DEF_INIT GLEWContext* ctx
-#    define GLEW_CONTEXT_ARG_VAR_INIT ctx
-#    define wglewGetContext() ctx
-#    define WGLEW_CONTEXT_ARG_DEF_INIT WGLEWContext* ctx
-#    define WGLEW_CONTEXT_ARG_DEF_LIST WGLEWContext* ctx
-#  else /* _WIN32 */
-#    define GLEW_CONTEXT_ARG_DEF_INIT void
-#    define GLEW_CONTEXT_ARG_VAR_INIT
-#    define glxewGetContext() ctx
-#    define GLXEW_CONTEXT_ARG_DEF_INIT void
-#    define GLXEW_CONTEXT_ARG_DEF_LIST GLXEWContext* ctx
-#  endif /* _WIN32 */
-#  define GLEW_CONTEXT_ARG_DEF_LIST GLEWContext* ctx
-#else /* GLEW_MX */
-#  define GLEW_CONTEXT_ARG_DEF_INIT void
-#  define GLEW_CONTEXT_ARG_VAR_INIT
-#  define GLEW_CONTEXT_ARG_DEF_LIST void
-#  define WGLEW_CONTEXT_ARG_DEF_INIT void
-#  define WGLEW_CONTEXT_ARG_DEF_LIST void
-#  define GLXEW_CONTEXT_ARG_DEF_INIT void
-#  define GLXEW_CONTEXT_ARG_DEF_LIST void
-#endif /* GLEW_MX */
-
-#if defined(__APPLE__)
-#include <stdlib.h>
-#include <string.h>
-#include <AvailabilityMacros.h>
-
-#ifdef MAC_OS_X_VERSION_10_3
-
-#include <dlfcn.h>
-
-void* NSGLGetProcAddress (const GLubyte *name)
-{
-  static void* image = NULL;
-  if (NULL == image) 
-  {
-    image = dlopen("/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL", RTLD_LAZY);
-  }
-  return image ? dlsym(image, (const char*)name) : NULL;
-}
-#else
-
-#include <mach-o/dyld.h>
-
-void* NSGLGetProcAddress (const GLubyte *name)
-{
-  static const struct mach_header* image = NULL;
-  NSSymbol symbol;
-  char* symbolName;
-  if (NULL == image)
-  {
-    image = NSAddImage("/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL", NSADDIMAGE_OPTION_RETURN_ON_ERROR);
-  }
-  /* prepend a '_' for the Unix C symbol mangling convention */
-  symbolName = malloc(strlen((const char*)name) + 2);
-  strcpy(symbolName+1, (const char*)name);
-  symbolName[0] = '_';
-  symbol = NULL;
-  /* if (NSIsSymbolNameDefined(symbolName))
-	 symbol = NSLookupAndBindSymbol(symbolName); */
-  symbol = image ? NSLookupSymbolInImage(image, symbolName, NSLOOKUPSYMBOLINIMAGE_OPTION_BIND | NSLOOKUPSYMBOLINIMAGE_OPTION_RETURN_ON_ERROR) : NULL;
-  free(symbolName);
-  return symbol ? NSAddressOfSymbol(symbol) : NULL;
-}
-#endif /* MAC_OS_X_VERSION_10_3 */
-#endif /* __APPLE__ */
-
-#if defined(__sgi) || defined (__sun)
-#include <dlfcn.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-void* dlGetProcAddress (const GLubyte* name)
-{
-  static void* h = NULL;
-  static void* gpa;
-
-  if (h == NULL)
-  {
-    if ((h = dlopen(NULL, RTLD_LAZY | RTLD_LOCAL)) == NULL) return NULL;
-    gpa = dlsym(h, "glXGetProcAddress");
-  }
-
-  if (gpa != NULL)
-    return ((void*(*)(const GLubyte*))gpa)(name);
-  else
-    return dlsym(h, (const char*)name);
-}
-#endif /* __sgi || __sun */
-
-/*
- * Define glewGetProcAddress.
- */
-#if defined(_WIN32)
-#  define glewGetProcAddress(name) wglGetProcAddress((LPCSTR)name)
-#else
-#  if defined(__APPLE__)
-#    define glewGetProcAddress(name) NSGLGetProcAddress(name)
-#  else
-#    if defined(__sgi) || defined(__sun)
-#      define glewGetProcAddress(name) dlGetProcAddress(name)
-#    else /* __linux */
-#      define glewGetProcAddress(name) (*glXGetProcAddressARB)(name)
-#    endif
-#  endif
-#endif
-
-/*
- * Define GLboolean const cast.
- */
-#define CONST_CAST(x) (*(GLboolean*)&x)
-
-/*
- * GLEW, just like OpenGL or GLU, does not rely on the standard C library.
- * These functions implement the functionality required in this file.
- */
-static GLuint _glewStrLen (const GLubyte* s)
-{
-  GLuint i=0;
-  if (s == NULL) return 0;
-  while (s[i] != '\0') i++;
-  return i;
-}
-
-static GLuint _glewStrCLen (const GLubyte* s, GLubyte c)
-{
-  GLuint i=0;
-  if (s == NULL) return 0;
-  while (s[i] != '\0' && s[i] != c) i++;
-  return (s[i] == '\0' || s[i] == c) ? i : 0;
-}
-
-static GLboolean _glewStrSame (const GLubyte* a, const GLubyte* b, GLuint n)
-{
-  GLuint i=0;
-  if(a == NULL || b == NULL)
-    return (a == NULL && b == NULL && n == 0) ? GL_TRUE : GL_FALSE;
-  while (i < n && a[i] != '\0' && b[i] != '\0' && a[i] == b[i]) i++;
-  return i == n ? GL_TRUE : GL_FALSE;
-}
-
-static GLboolean _glewStrSame1 (GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
-{
-  while (*na > 0 && (**a == ' ' || **a == '\n' || **a == '\r' || **a == '\t'))
-  {
-    (*a)++;
-    (*na)--;
-  }
-  if(*na >= nb)
-  {
-    GLuint i=0;
-    while (i < nb && (*a)+i != NULL && b+i != NULL && (*a)[i] == b[i]) i++;
-	if(i == nb)
-	{
-		*a = *a + nb;
-		*na = *na - nb;
-		return GL_TRUE;
-	}
-  }
-  return GL_FALSE;
-}
-
-static GLboolean _glewStrSame2 (GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
-{
-  if(*na >= nb)
-  {
-    GLuint i=0;
-    while (i < nb && (*a)+i != NULL && b+i != NULL && (*a)[i] == b[i]) i++;
-	if(i == nb)
-	{
-		*a = *a + nb;
-		*na = *na - nb;
-		return GL_TRUE;
-	}
-  }
-  return GL_FALSE;
-}
-
-static GLboolean _glewStrSame3 (GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
-{
-  if(*na >= nb)
-  {
-    GLuint i=0;
-    while (i < nb && (*a)+i != NULL && b+i != NULL && (*a)[i] == b[i]) i++;
-    if (i == nb && (*na == nb || (*a)[i] == ' ' || (*a)[i] == '\n' || (*a)[i] == '\r' || (*a)[i] == '\t'))
-    {
-      *a = *a + nb;
-      *na = *na - nb;
-      return GL_TRUE;
-    }
-  }
-  return GL_FALSE;
-}
diff --git a/src/other/glew/auto/src/glew_head.h b/src/other/glew/auto/src/glew_head.h
deleted file mode 100644
index ed49f50..0000000
--- a/src/other/glew/auto/src/glew_head.h
+++ /dev/null
@@ -1,1073 +0,0 @@
-#ifndef __glew_h__
-#define __glew_h__
-#define __GLEW_H__
-
-#if defined(__gl_h_) || defined(__GL_H__) || defined(__X_GL_H)
-#error gl.h included before glew.h
-#endif
-#if defined(__glext_h_) || defined(__GLEXT_H_)
-#error glext.h included before glew.h
-#endif
-#if defined(__gl_ATI_h_)
-#error glATI.h included before glew.h
-#endif
-
-#define __gl_h_
-#define __GL_H__
-#define __X_GL_H
-#define __glext_h_
-#define __GLEXT_H_
-#define __gl_ATI_h_
-
-#if defined(_WIN32)
-
-/*
- * GLEW does not include <windows.h> to avoid name space pollution.
- * GL needs GLAPI and GLAPIENTRY, GLU needs APIENTRY, CALLBACK, and wchar_t
- * defined properly.
- */
-/* <windef.h> */
-#ifndef APIENTRY
-#define GLEW_APIENTRY_DEFINED
-#  if defined(__MINGW32__) || defined(__CYGWIN__)
-#    define APIENTRY __stdcall
-#  elif (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED) || defined(__BORLANDC__)
-#    define APIENTRY __stdcall
-#  else
-#    define APIENTRY
-#  endif
-#endif
-#ifndef GLAPI
-#  if defined(__MINGW32__) || defined(__CYGWIN__)
-#    define GLAPI extern
-#  endif
-#endif
-/* <winnt.h> */
-#ifndef CALLBACK
-#define GLEW_CALLBACK_DEFINED
-#  if defined(__MINGW32__) || defined(__CYGWIN__)
-#    define CALLBACK __attribute__ ((__stdcall__))
-#  elif (defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA) || defined(_M_PPC)) && !defined(MIDL_PASS)
-#    define CALLBACK __stdcall
-#  else
-#    define CALLBACK
-#  endif
-#endif
-/* <wingdi.h> and <winnt.h> */
-#ifndef WINGDIAPI
-#define GLEW_WINGDIAPI_DEFINED
-#define WINGDIAPI __declspec(dllimport)
-#endif
-/* <ctype.h> */
-#if (defined(_MSC_VER) || defined(__BORLANDC__)) && !defined(_WCHAR_T_DEFINED)
-typedef unsigned short wchar_t;
-#  define _WCHAR_T_DEFINED
-#endif
-/* <stddef.h> */
-#if !defined(_W64)
-#  if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && defined(_MSC_VER) && _MSC_VER >= 1300
-#    define _W64 __w64
-#  else
-#    define _W64
-#  endif
-#endif
-#if !defined(_PTRDIFF_T_DEFINED) && !defined(_PTRDIFF_T_)
-#  ifdef _WIN64
-typedef __int64 ptrdiff_t;
-#  else
-typedef _W64 int ptrdiff_t;
-#  endif
-#  define _PTRDIFF_T_DEFINED
-#  define _PTRDIFF_T_
-#endif
-
-#ifndef GLAPI
-#  if defined(__MINGW32__) || defined(__CYGWIN__)
-#    define GLAPI extern
-#  else
-#    define GLAPI WINGDIAPI
-#  endif
-#endif
-
-#ifndef GLAPIENTRY
-#define GLAPIENTRY APIENTRY
-#endif
-
-/*
- * GLEW_STATIC needs to be set when using the static version.
- * GLEW_BUILD is set when building the DLL version.
- */
-#ifdef GLEW_STATIC
-#  define GLEWAPI extern
-#else
-#  ifdef GLEW_BUILD
-#    define GLEWAPI extern __declspec(dllexport)
-#  else
-#    define GLEWAPI extern __declspec(dllimport)
-#  endif
-#endif
-
-#else /* _UNIX */
-
-/*
- * Needed for ptrdiff_t in turn needed by VBO.  This is defined by ISO
- * C.  On my system, this amounts to _3 lines_ of included code, all of
- * them pretty much harmless.  If you know of a way of detecting 32 vs
- * 64 _targets_ at compile time you are free to replace this with
- * something that's portable.  For now, _this_ is the portable solution.
- * (mem, 2004-01-04)
- */
-
-#include <stddef.h>
-
-/* SGI MIPSPro doesn't like stdint.h in C++ mode */
-
-#if defined(__sgi) && !defined(__GNUC__)
-#include <inttypes.h>
-#else
-#include <stdint.h>
-#endif
-
-#define GLEW_APIENTRY_DEFINED
-#define APIENTRY
-#define GLEWAPI extern
-
-/* <glu.h> */
-#ifndef GLAPI
-#define GLAPI extern
-#endif
-#ifndef GLAPIENTRY
-#define GLAPIENTRY
-#endif
-
-#endif /* _WIN32 */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* ----------------------------- GL_VERSION_1_1 ---------------------------- */
-
-#ifndef GL_VERSION_1_1
-#define GL_VERSION_1_1 1
-
-typedef unsigned int GLenum;
-typedef unsigned int GLbitfield;
-typedef unsigned int GLuint;
-typedef int GLint;
-typedef int GLsizei;
-typedef unsigned char GLboolean;
-typedef signed char GLbyte;
-typedef short GLshort;
-typedef unsigned char GLubyte;
-typedef unsigned short GLushort;
-typedef unsigned long GLulong;
-typedef float GLfloat;
-typedef float GLclampf;
-typedef double GLdouble;
-typedef double GLclampd;
-typedef void GLvoid;
-#if defined(_MSC_VER)
-#  if _MSC_VER < 1400
-typedef __int64 GLint64EXT;
-typedef unsigned __int64 GLuint64EXT;
-#  else
-typedef signed long long GLint64EXT;
-typedef unsigned long long GLuint64EXT;
-#  endif
-#else
-#  if defined(__MINGW32__) || defined(__CYGWIN__)
-#include <inttypes.h>
-#  endif
-typedef int64_t GLint64EXT;
-typedef uint64_t GLuint64EXT;
-#endif
-typedef GLint64EXT  GLint64;
-typedef GLuint64EXT GLuint64;
-typedef struct __GLsync *GLsync;
-
-#define GL_ACCUM 0x0100
-#define GL_LOAD 0x0101
-#define GL_RETURN 0x0102
-#define GL_MULT 0x0103
-#define GL_ADD 0x0104
-#define GL_NEVER 0x0200
-#define GL_LESS 0x0201
-#define GL_EQUAL 0x0202
-#define GL_LEQUAL 0x0203
-#define GL_GREATER 0x0204
-#define GL_NOTEQUAL 0x0205
-#define GL_GEQUAL 0x0206
-#define GL_ALWAYS 0x0207
-#define GL_CURRENT_BIT 0x00000001
-#define GL_POINT_BIT 0x00000002
-#define GL_LINE_BIT 0x00000004
-#define GL_POLYGON_BIT 0x00000008
-#define GL_POLYGON_STIPPLE_BIT 0x00000010
-#define GL_PIXEL_MODE_BIT 0x00000020
-#define GL_LIGHTING_BIT 0x00000040
-#define GL_FOG_BIT 0x00000080
-#define GL_DEPTH_BUFFER_BIT 0x00000100
-#define GL_ACCUM_BUFFER_BIT 0x00000200
-#define GL_STENCIL_BUFFER_BIT 0x00000400
-#define GL_VIEWPORT_BIT 0x00000800
-#define GL_TRANSFORM_BIT 0x00001000
-#define GL_ENABLE_BIT 0x00002000
-#define GL_COLOR_BUFFER_BIT 0x00004000
-#define GL_HINT_BIT 0x00008000
-#define GL_EVAL_BIT 0x00010000
-#define GL_LIST_BIT 0x00020000
-#define GL_TEXTURE_BIT 0x00040000
-#define GL_SCISSOR_BIT 0x00080000
-#define GL_ALL_ATTRIB_BITS 0x000fffff
-#define GL_POINTS 0x0000
-#define GL_LINES 0x0001
-#define GL_LINE_LOOP 0x0002
-#define GL_LINE_STRIP 0x0003
-#define GL_TRIANGLES 0x0004
-#define GL_TRIANGLE_STRIP 0x0005
-#define GL_TRIANGLE_FAN 0x0006
-#define GL_QUADS 0x0007
-#define GL_QUAD_STRIP 0x0008
-#define GL_POLYGON 0x0009
-#define GL_ZERO 0
-#define GL_ONE 1
-#define GL_SRC_COLOR 0x0300
-#define GL_ONE_MINUS_SRC_COLOR 0x0301
-#define GL_SRC_ALPHA 0x0302
-#define GL_ONE_MINUS_SRC_ALPHA 0x0303
-#define GL_DST_ALPHA 0x0304
-#define GL_ONE_MINUS_DST_ALPHA 0x0305
-#define GL_DST_COLOR 0x0306
-#define GL_ONE_MINUS_DST_COLOR 0x0307
-#define GL_SRC_ALPHA_SATURATE 0x0308
-#define GL_TRUE 1
-#define GL_FALSE 0
-#define GL_CLIP_PLANE0 0x3000
-#define GL_CLIP_PLANE1 0x3001
-#define GL_CLIP_PLANE2 0x3002
-#define GL_CLIP_PLANE3 0x3003
-#define GL_CLIP_PLANE4 0x3004
-#define GL_CLIP_PLANE5 0x3005
-#define GL_BYTE 0x1400
-#define GL_UNSIGNED_BYTE 0x1401
-#define GL_SHORT 0x1402
-#define GL_UNSIGNED_SHORT 0x1403
-#define GL_INT 0x1404
-#define GL_UNSIGNED_INT 0x1405
-#define GL_FLOAT 0x1406
-#define GL_2_BYTES 0x1407
-#define GL_3_BYTES 0x1408
-#define GL_4_BYTES 0x1409
-#define GL_DOUBLE 0x140A
-#define GL_NONE 0
-#define GL_FRONT_LEFT 0x0400
-#define GL_FRONT_RIGHT 0x0401
-#define GL_BACK_LEFT 0x0402
-#define GL_BACK_RIGHT 0x0403
-#define GL_FRONT 0x0404
-#define GL_BACK 0x0405
-#define GL_LEFT 0x0406
-#define GL_RIGHT 0x0407
-#define GL_FRONT_AND_BACK 0x0408
-#define GL_AUX0 0x0409
-#define GL_AUX1 0x040A
-#define GL_AUX2 0x040B
-#define GL_AUX3 0x040C
-#define GL_NO_ERROR 0
-#define GL_INVALID_ENUM 0x0500
-#define GL_INVALID_VALUE 0x0501
-#define GL_INVALID_OPERATION 0x0502
-#define GL_STACK_OVERFLOW 0x0503
-#define GL_STACK_UNDERFLOW 0x0504
-#define GL_OUT_OF_MEMORY 0x0505
-#define GL_2D 0x0600
-#define GL_3D 0x0601
-#define GL_3D_COLOR 0x0602
-#define GL_3D_COLOR_TEXTURE 0x0603
-#define GL_4D_COLOR_TEXTURE 0x0604
-#define GL_PASS_THROUGH_TOKEN 0x0700
-#define GL_POINT_TOKEN 0x0701
-#define GL_LINE_TOKEN 0x0702
-#define GL_POLYGON_TOKEN 0x0703
-#define GL_BITMAP_TOKEN 0x0704
-#define GL_DRAW_PIXEL_TOKEN 0x0705
-#define GL_COPY_PIXEL_TOKEN 0x0706
-#define GL_LINE_RESET_TOKEN 0x0707
-#define GL_EXP 0x0800
-#define GL_EXP2 0x0801
-#define GL_CW 0x0900
-#define GL_CCW 0x0901
-#define GL_COEFF 0x0A00
-#define GL_ORDER 0x0A01
-#define GL_DOMAIN 0x0A02
-#define GL_CURRENT_COLOR 0x0B00
-#define GL_CURRENT_INDEX 0x0B01
-#define GL_CURRENT_NORMAL 0x0B02
-#define GL_CURRENT_TEXTURE_COORDS 0x0B03
-#define GL_CURRENT_RASTER_COLOR 0x0B04
-#define GL_CURRENT_RASTER_INDEX 0x0B05
-#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06
-#define GL_CURRENT_RASTER_POSITION 0x0B07
-#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08
-#define GL_CURRENT_RASTER_DISTANCE 0x0B09
-#define GL_POINT_SMOOTH 0x0B10
-#define GL_POINT_SIZE 0x0B11
-#define GL_POINT_SIZE_RANGE 0x0B12
-#define GL_POINT_SIZE_GRANULARITY 0x0B13
-#define GL_LINE_SMOOTH 0x0B20
-#define GL_LINE_WIDTH 0x0B21
-#define GL_LINE_WIDTH_RANGE 0x0B22
-#define GL_LINE_WIDTH_GRANULARITY 0x0B23
-#define GL_LINE_STIPPLE 0x0B24
-#define GL_LINE_STIPPLE_PATTERN 0x0B25
-#define GL_LINE_STIPPLE_REPEAT 0x0B26
-#define GL_LIST_MODE 0x0B30
-#define GL_MAX_LIST_NESTING 0x0B31
-#define GL_LIST_BASE 0x0B32
-#define GL_LIST_INDEX 0x0B33
-#define GL_POLYGON_MODE 0x0B40
-#define GL_POLYGON_SMOOTH 0x0B41
-#define GL_POLYGON_STIPPLE 0x0B42
-#define GL_EDGE_FLAG 0x0B43
-#define GL_CULL_FACE 0x0B44
-#define GL_CULL_FACE_MODE 0x0B45
-#define GL_FRONT_FACE 0x0B46
-#define GL_LIGHTING 0x0B50
-#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51
-#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52
-#define GL_LIGHT_MODEL_AMBIENT 0x0B53
-#define GL_SHADE_MODEL 0x0B54
-#define GL_COLOR_MATERIAL_FACE 0x0B55
-#define GL_COLOR_MATERIAL_PARAMETER 0x0B56
-#define GL_COLOR_MATERIAL 0x0B57
-#define GL_FOG 0x0B60
-#define GL_FOG_INDEX 0x0B61
-#define GL_FOG_DENSITY 0x0B62
-#define GL_FOG_START 0x0B63
-#define GL_FOG_END 0x0B64
-#define GL_FOG_MODE 0x0B65
-#define GL_FOG_COLOR 0x0B66
-#define GL_DEPTH_RANGE 0x0B70
-#define GL_DEPTH_TEST 0x0B71
-#define GL_DEPTH_WRITEMASK 0x0B72
-#define GL_DEPTH_CLEAR_VALUE 0x0B73
-#define GL_DEPTH_FUNC 0x0B74
-#define GL_ACCUM_CLEAR_VALUE 0x0B80
-#define GL_STENCIL_TEST 0x0B90
-#define GL_STENCIL_CLEAR_VALUE 0x0B91
-#define GL_STENCIL_FUNC 0x0B92
-#define GL_STENCIL_VALUE_MASK 0x0B93
-#define GL_STENCIL_FAIL 0x0B94
-#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
-#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
-#define GL_STENCIL_REF 0x0B97
-#define GL_STENCIL_WRITEMASK 0x0B98
-#define GL_MATRIX_MODE 0x0BA0
-#define GL_NORMALIZE 0x0BA1
-#define GL_VIEWPORT 0x0BA2
-#define GL_MODELVIEW_STACK_DEPTH 0x0BA3
-#define GL_PROJECTION_STACK_DEPTH 0x0BA4
-#define GL_TEXTURE_STACK_DEPTH 0x0BA5
-#define GL_MODELVIEW_MATRIX 0x0BA6
-#define GL_PROJECTION_MATRIX 0x0BA7
-#define GL_TEXTURE_MATRIX 0x0BA8
-#define GL_ATTRIB_STACK_DEPTH 0x0BB0
-#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1
-#define GL_ALPHA_TEST 0x0BC0
-#define GL_ALPHA_TEST_FUNC 0x0BC1
-#define GL_ALPHA_TEST_REF 0x0BC2
-#define GL_DITHER 0x0BD0
-#define GL_BLEND_DST 0x0BE0
-#define GL_BLEND_SRC 0x0BE1
-#define GL_BLEND 0x0BE2
-#define GL_LOGIC_OP_MODE 0x0BF0
-#define GL_INDEX_LOGIC_OP 0x0BF1
-#define GL_COLOR_LOGIC_OP 0x0BF2
-#define GL_AUX_BUFFERS 0x0C00
-#define GL_DRAW_BUFFER 0x0C01
-#define GL_READ_BUFFER 0x0C02
-#define GL_SCISSOR_BOX 0x0C10
-#define GL_SCISSOR_TEST 0x0C11
-#define GL_INDEX_CLEAR_VALUE 0x0C20
-#define GL_INDEX_WRITEMASK 0x0C21
-#define GL_COLOR_CLEAR_VALUE 0x0C22
-#define GL_COLOR_WRITEMASK 0x0C23
-#define GL_INDEX_MODE 0x0C30
-#define GL_RGBA_MODE 0x0C31
-#define GL_DOUBLEBUFFER 0x0C32
-#define GL_STEREO 0x0C33
-#define GL_RENDER_MODE 0x0C40
-#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50
-#define GL_POINT_SMOOTH_HINT 0x0C51
-#define GL_LINE_SMOOTH_HINT 0x0C52
-#define GL_POLYGON_SMOOTH_HINT 0x0C53
-#define GL_FOG_HINT 0x0C54
-#define GL_TEXTURE_GEN_S 0x0C60
-#define GL_TEXTURE_GEN_T 0x0C61
-#define GL_TEXTURE_GEN_R 0x0C62
-#define GL_TEXTURE_GEN_Q 0x0C63
-#define GL_PIXEL_MAP_I_TO_I 0x0C70
-#define GL_PIXEL_MAP_S_TO_S 0x0C71
-#define GL_PIXEL_MAP_I_TO_R 0x0C72
-#define GL_PIXEL_MAP_I_TO_G 0x0C73
-#define GL_PIXEL_MAP_I_TO_B 0x0C74
-#define GL_PIXEL_MAP_I_TO_A 0x0C75
-#define GL_PIXEL_MAP_R_TO_R 0x0C76
-#define GL_PIXEL_MAP_G_TO_G 0x0C77
-#define GL_PIXEL_MAP_B_TO_B 0x0C78
-#define GL_PIXEL_MAP_A_TO_A 0x0C79
-#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0
-#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1
-#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2
-#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3
-#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4
-#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5
-#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6
-#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7
-#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8
-#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9
-#define GL_UNPACK_SWAP_BYTES 0x0CF0
-#define GL_UNPACK_LSB_FIRST 0x0CF1
-#define GL_UNPACK_ROW_LENGTH 0x0CF2
-#define GL_UNPACK_SKIP_ROWS 0x0CF3
-#define GL_UNPACK_SKIP_PIXELS 0x0CF4
-#define GL_UNPACK_ALIGNMENT 0x0CF5
-#define GL_PACK_SWAP_BYTES 0x0D00
-#define GL_PACK_LSB_FIRST 0x0D01
-#define GL_PACK_ROW_LENGTH 0x0D02
-#define GL_PACK_SKIP_ROWS 0x0D03
-#define GL_PACK_SKIP_PIXELS 0x0D04
-#define GL_PACK_ALIGNMENT 0x0D05
-#define GL_MAP_COLOR 0x0D10
-#define GL_MAP_STENCIL 0x0D11
-#define GL_INDEX_SHIFT 0x0D12
-#define GL_INDEX_OFFSET 0x0D13
-#define GL_RED_SCALE 0x0D14
-#define GL_RED_BIAS 0x0D15
-#define GL_ZOOM_X 0x0D16
-#define GL_ZOOM_Y 0x0D17
-#define GL_GREEN_SCALE 0x0D18
-#define GL_GREEN_BIAS 0x0D19
-#define GL_BLUE_SCALE 0x0D1A
-#define GL_BLUE_BIAS 0x0D1B
-#define GL_ALPHA_SCALE 0x0D1C
-#define GL_ALPHA_BIAS 0x0D1D
-#define GL_DEPTH_SCALE 0x0D1E
-#define GL_DEPTH_BIAS 0x0D1F
-#define GL_MAX_EVAL_ORDER 0x0D30
-#define GL_MAX_LIGHTS 0x0D31
-#define GL_MAX_CLIP_PLANES 0x0D32
-#define GL_MAX_TEXTURE_SIZE 0x0D33
-#define GL_MAX_PIXEL_MAP_TABLE 0x0D34
-#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35
-#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36
-#define GL_MAX_NAME_STACK_DEPTH 0x0D37
-#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38
-#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39
-#define GL_MAX_VIEWPORT_DIMS 0x0D3A
-#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B
-#define GL_SUBPIXEL_BITS 0x0D50
-#define GL_INDEX_BITS 0x0D51
-#define GL_RED_BITS 0x0D52
-#define GL_GREEN_BITS 0x0D53
-#define GL_BLUE_BITS 0x0D54
-#define GL_ALPHA_BITS 0x0D55
-#define GL_DEPTH_BITS 0x0D56
-#define GL_STENCIL_BITS 0x0D57
-#define GL_ACCUM_RED_BITS 0x0D58
-#define GL_ACCUM_GREEN_BITS 0x0D59
-#define GL_ACCUM_BLUE_BITS 0x0D5A
-#define GL_ACCUM_ALPHA_BITS 0x0D5B
-#define GL_NAME_STACK_DEPTH 0x0D70
-#define GL_AUTO_NORMAL 0x0D80
-#define GL_MAP1_COLOR_4 0x0D90
-#define GL_MAP1_INDEX 0x0D91
-#define GL_MAP1_NORMAL 0x0D92
-#define GL_MAP1_TEXTURE_COORD_1 0x0D93
-#define GL_MAP1_TEXTURE_COORD_2 0x0D94
-#define GL_MAP1_TEXTURE_COORD_3 0x0D95
-#define GL_MAP1_TEXTURE_COORD_4 0x0D96
-#define GL_MAP1_VERTEX_3 0x0D97
-#define GL_MAP1_VERTEX_4 0x0D98
-#define GL_MAP2_COLOR_4 0x0DB0
-#define GL_MAP2_INDEX 0x0DB1
-#define GL_MAP2_NORMAL 0x0DB2
-#define GL_MAP2_TEXTURE_COORD_1 0x0DB3
-#define GL_MAP2_TEXTURE_COORD_2 0x0DB4
-#define GL_MAP2_TEXTURE_COORD_3 0x0DB5
-#define GL_MAP2_TEXTURE_COORD_4 0x0DB6
-#define GL_MAP2_VERTEX_3 0x0DB7
-#define GL_MAP2_VERTEX_4 0x0DB8
-#define GL_MAP1_GRID_DOMAIN 0x0DD0
-#define GL_MAP1_GRID_SEGMENTS 0x0DD1
-#define GL_MAP2_GRID_DOMAIN 0x0DD2
-#define GL_MAP2_GRID_SEGMENTS 0x0DD3
-#define GL_TEXTURE_1D 0x0DE0
-#define GL_TEXTURE_2D 0x0DE1
-#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0
-#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1
-#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2
-#define GL_SELECTION_BUFFER_POINTER 0x0DF3
-#define GL_SELECTION_BUFFER_SIZE 0x0DF4
-#define GL_TEXTURE_WIDTH 0x1000
-#define GL_TEXTURE_HEIGHT 0x1001
-#define GL_TEXTURE_INTERNAL_FORMAT 0x1003
-#define GL_TEXTURE_BORDER_COLOR 0x1004
-#define GL_TEXTURE_BORDER 0x1005
-#define GL_DONT_CARE 0x1100
-#define GL_FASTEST 0x1101
-#define GL_NICEST 0x1102
-#define GL_LIGHT0 0x4000
-#define GL_LIGHT1 0x4001
-#define GL_LIGHT2 0x4002
-#define GL_LIGHT3 0x4003
-#define GL_LIGHT4 0x4004
-#define GL_LIGHT5 0x4005
-#define GL_LIGHT6 0x4006
-#define GL_LIGHT7 0x4007
-#define GL_AMBIENT 0x1200
-#define GL_DIFFUSE 0x1201
-#define GL_SPECULAR 0x1202
-#define GL_POSITION 0x1203
-#define GL_SPOT_DIRECTION 0x1204
-#define GL_SPOT_EXPONENT 0x1205
-#define GL_SPOT_CUTOFF 0x1206
-#define GL_CONSTANT_ATTENUATION 0x1207
-#define GL_LINEAR_ATTENUATION 0x1208
-#define GL_QUADRATIC_ATTENUATION 0x1209
-#define GL_COMPILE 0x1300
-#define GL_COMPILE_AND_EXECUTE 0x1301
-#define GL_CLEAR 0x1500
-#define GL_AND 0x1501
-#define GL_AND_REVERSE 0x1502
-#define GL_COPY 0x1503
-#define GL_AND_INVERTED 0x1504
-#define GL_NOOP 0x1505
-#define GL_XOR 0x1506
-#define GL_OR 0x1507
-#define GL_NOR 0x1508
-#define GL_EQUIV 0x1509
-#define GL_INVERT 0x150A
-#define GL_OR_REVERSE 0x150B
-#define GL_COPY_INVERTED 0x150C
-#define GL_OR_INVERTED 0x150D
-#define GL_NAND 0x150E
-#define GL_SET 0x150F
-#define GL_EMISSION 0x1600
-#define GL_SHININESS 0x1601
-#define GL_AMBIENT_AND_DIFFUSE 0x1602
-#define GL_COLOR_INDEXES 0x1603
-#define GL_MODELVIEW 0x1700
-#define GL_PROJECTION 0x1701
-#define GL_TEXTURE 0x1702
-#define GL_COLOR 0x1800
-#define GL_DEPTH 0x1801
-#define GL_STENCIL 0x1802
-#define GL_COLOR_INDEX 0x1900
-#define GL_STENCIL_INDEX 0x1901
-#define GL_DEPTH_COMPONENT 0x1902
-#define GL_RED 0x1903
-#define GL_GREEN 0x1904
-#define GL_BLUE 0x1905
-#define GL_ALPHA 0x1906
-#define GL_RGB 0x1907
-#define GL_RGBA 0x1908
-#define GL_LUMINANCE 0x1909
-#define GL_LUMINANCE_ALPHA 0x190A
-#define GL_BITMAP 0x1A00
-#define GL_POINT 0x1B00
-#define GL_LINE 0x1B01
-#define GL_FILL 0x1B02
-#define GL_RENDER 0x1C00
-#define GL_FEEDBACK 0x1C01
-#define GL_SELECT 0x1C02
-#define GL_FLAT 0x1D00
-#define GL_SMOOTH 0x1D01
-#define GL_KEEP 0x1E00
-#define GL_REPLACE 0x1E01
-#define GL_INCR 0x1E02
-#define GL_DECR 0x1E03
-#define GL_VENDOR 0x1F00
-#define GL_RENDERER 0x1F01
-#define GL_VERSION 0x1F02
-#define GL_EXTENSIONS 0x1F03
-#define GL_S 0x2000
-#define GL_T 0x2001
-#define GL_R 0x2002
-#define GL_Q 0x2003
-#define GL_MODULATE 0x2100
-#define GL_DECAL 0x2101
-#define GL_TEXTURE_ENV_MODE 0x2200
-#define GL_TEXTURE_ENV_COLOR 0x2201
-#define GL_TEXTURE_ENV 0x2300
-#define GL_EYE_LINEAR 0x2400
-#define GL_OBJECT_LINEAR 0x2401
-#define GL_SPHERE_MAP 0x2402
-#define GL_TEXTURE_GEN_MODE 0x2500
-#define GL_OBJECT_PLANE 0x2501
-#define GL_EYE_PLANE 0x2502
-#define GL_NEAREST 0x2600
-#define GL_LINEAR 0x2601
-#define GL_NEAREST_MIPMAP_NEAREST 0x2700
-#define GL_LINEAR_MIPMAP_NEAREST 0x2701
-#define GL_NEAREST_MIPMAP_LINEAR 0x2702
-#define GL_LINEAR_MIPMAP_LINEAR 0x2703
-#define GL_TEXTURE_MAG_FILTER 0x2800
-#define GL_TEXTURE_MIN_FILTER 0x2801
-#define GL_TEXTURE_WRAP_S 0x2802
-#define GL_TEXTURE_WRAP_T 0x2803
-#define GL_CLAMP 0x2900
-#define GL_REPEAT 0x2901
-#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001
-#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002
-#define GL_CLIENT_ALL_ATTRIB_BITS 0xffffffff
-#define GL_POLYGON_OFFSET_FACTOR 0x8038
-#define GL_POLYGON_OFFSET_UNITS 0x2A00
-#define GL_POLYGON_OFFSET_POINT 0x2A01
-#define GL_POLYGON_OFFSET_LINE 0x2A02
-#define GL_POLYGON_OFFSET_FILL 0x8037
-#define GL_ALPHA4 0x803B
-#define GL_ALPHA8 0x803C
-#define GL_ALPHA12 0x803D
-#define GL_ALPHA16 0x803E
-#define GL_LUMINANCE4 0x803F
-#define GL_LUMINANCE8 0x8040
-#define GL_LUMINANCE12 0x8041
-#define GL_LUMINANCE16 0x8042
-#define GL_LUMINANCE4_ALPHA4 0x8043
-#define GL_LUMINANCE6_ALPHA2 0x8044
-#define GL_LUMINANCE8_ALPHA8 0x8045
-#define GL_LUMINANCE12_ALPHA4 0x8046
-#define GL_LUMINANCE12_ALPHA12 0x8047
-#define GL_LUMINANCE16_ALPHA16 0x8048
-#define GL_INTENSITY 0x8049
-#define GL_INTENSITY4 0x804A
-#define GL_INTENSITY8 0x804B
-#define GL_INTENSITY12 0x804C
-#define GL_INTENSITY16 0x804D
-#define GL_R3_G3_B2 0x2A10
-#define GL_RGB4 0x804F
-#define GL_RGB5 0x8050
-#define GL_RGB8 0x8051
-#define GL_RGB10 0x8052
-#define GL_RGB12 0x8053
-#define GL_RGB16 0x8054
-#define GL_RGBA2 0x8055
-#define GL_RGBA4 0x8056
-#define GL_RGB5_A1 0x8057
-#define GL_RGBA8 0x8058
-#define GL_RGB10_A2 0x8059
-#define GL_RGBA12 0x805A
-#define GL_RGBA16 0x805B
-#define GL_TEXTURE_RED_SIZE 0x805C
-#define GL_TEXTURE_GREEN_SIZE 0x805D
-#define GL_TEXTURE_BLUE_SIZE 0x805E
-#define GL_TEXTURE_ALPHA_SIZE 0x805F
-#define GL_TEXTURE_LUMINANCE_SIZE 0x8060
-#define GL_TEXTURE_INTENSITY_SIZE 0x8061
-#define GL_PROXY_TEXTURE_1D 0x8063
-#define GL_PROXY_TEXTURE_2D 0x8064
-#define GL_TEXTURE_PRIORITY 0x8066
-#define GL_TEXTURE_RESIDENT 0x8067
-#define GL_TEXTURE_BINDING_1D 0x8068
-#define GL_TEXTURE_BINDING_2D 0x8069
-#define GL_VERTEX_ARRAY 0x8074
-#define GL_NORMAL_ARRAY 0x8075
-#define GL_COLOR_ARRAY 0x8076
-#define GL_INDEX_ARRAY 0x8077
-#define GL_TEXTURE_COORD_ARRAY 0x8078
-#define GL_EDGE_FLAG_ARRAY 0x8079
-#define GL_VERTEX_ARRAY_SIZE 0x807A
-#define GL_VERTEX_ARRAY_TYPE 0x807B
-#define GL_VERTEX_ARRAY_STRIDE 0x807C
-#define GL_NORMAL_ARRAY_TYPE 0x807E
-#define GL_NORMAL_ARRAY_STRIDE 0x807F
-#define GL_COLOR_ARRAY_SIZE 0x8081
-#define GL_COLOR_ARRAY_TYPE 0x8082
-#define GL_COLOR_ARRAY_STRIDE 0x8083
-#define GL_INDEX_ARRAY_TYPE 0x8085
-#define GL_INDEX_ARRAY_STRIDE 0x8086
-#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088
-#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089
-#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A
-#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C
-#define GL_VERTEX_ARRAY_POINTER 0x808E
-#define GL_NORMAL_ARRAY_POINTER 0x808F
-#define GL_COLOR_ARRAY_POINTER 0x8090
-#define GL_INDEX_ARRAY_POINTER 0x8091
-#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092
-#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093
-#define GL_V2F 0x2A20
-#define GL_V3F 0x2A21
-#define GL_C4UB_V2F 0x2A22
-#define GL_C4UB_V3F 0x2A23
-#define GL_C3F_V3F 0x2A24
-#define GL_N3F_V3F 0x2A25
-#define GL_C4F_N3F_V3F 0x2A26
-#define GL_T2F_V3F 0x2A27
-#define GL_T4F_V4F 0x2A28
-#define GL_T2F_C4UB_V3F 0x2A29
-#define GL_T2F_C3F_V3F 0x2A2A
-#define GL_T2F_N3F_V3F 0x2A2B
-#define GL_T2F_C4F_N3F_V3F 0x2A2C
-#define GL_T4F_C4F_N3F_V4F 0x2A2D
-#define GL_LOGIC_OP GL_INDEX_LOGIC_OP
-#define GL_TEXTURE_COMPONENTS GL_TEXTURE_INTERNAL_FORMAT
-#define GL_COLOR_INDEX1_EXT 0x80E2
-#define GL_COLOR_INDEX2_EXT 0x80E3
-#define GL_COLOR_INDEX4_EXT 0x80E4
-#define GL_COLOR_INDEX8_EXT 0x80E5
-#define GL_COLOR_INDEX12_EXT 0x80E6
-#define GL_COLOR_INDEX16_EXT 0x80E7
-
-GLAPI void GLAPIENTRY glAccum (GLenum op, GLfloat value);
-GLAPI void GLAPIENTRY glAlphaFunc (GLenum func, GLclampf ref);
-GLAPI GLboolean GLAPIENTRY glAreTexturesResident (GLsizei n, const GLuint *textures, GLboolean *residences);
-GLAPI void GLAPIENTRY glArrayElement (GLint i);
-GLAPI void GLAPIENTRY glBegin (GLenum mode);
-GLAPI void GLAPIENTRY glBindTexture (GLenum target, GLuint texture);
-GLAPI void GLAPIENTRY glBitmap (GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
-GLAPI void GLAPIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
-GLAPI void GLAPIENTRY glCallList (GLuint list);
-GLAPI void GLAPIENTRY glCallLists (GLsizei n, GLenum type, const GLvoid *lists);
-GLAPI void GLAPIENTRY glClear (GLbitfield mask);
-GLAPI void GLAPIENTRY glClearAccum (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
-GLAPI void GLAPIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
-GLAPI void GLAPIENTRY glClearDepth (GLclampd depth);
-GLAPI void GLAPIENTRY glClearIndex (GLfloat c);
-GLAPI void GLAPIENTRY glClearStencil (GLint s);
-GLAPI void GLAPIENTRY glClipPlane (GLenum plane, const GLdouble *equation);
-GLAPI void GLAPIENTRY glColor3b (GLbyte red, GLbyte green, GLbyte blue);
-GLAPI void GLAPIENTRY glColor3bv (const GLbyte *v);
-GLAPI void GLAPIENTRY glColor3d (GLdouble red, GLdouble green, GLdouble blue);
-GLAPI void GLAPIENTRY glColor3dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glColor3f (GLfloat red, GLfloat green, GLfloat blue);
-GLAPI void GLAPIENTRY glColor3fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glColor3i (GLint red, GLint green, GLint blue);
-GLAPI void GLAPIENTRY glColor3iv (const GLint *v);
-GLAPI void GLAPIENTRY glColor3s (GLshort red, GLshort green, GLshort blue);
-GLAPI void GLAPIENTRY glColor3sv (const GLshort *v);
-GLAPI void GLAPIENTRY glColor3ub (GLubyte red, GLubyte green, GLubyte blue);
-GLAPI void GLAPIENTRY glColor3ubv (const GLubyte *v);
-GLAPI void GLAPIENTRY glColor3ui (GLuint red, GLuint green, GLuint blue);
-GLAPI void GLAPIENTRY glColor3uiv (const GLuint *v);
-GLAPI void GLAPIENTRY glColor3us (GLushort red, GLushort green, GLushort blue);
-GLAPI void GLAPIENTRY glColor3usv (const GLushort *v);
-GLAPI void GLAPIENTRY glColor4b (GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
-GLAPI void GLAPIENTRY glColor4bv (const GLbyte *v);
-GLAPI void GLAPIENTRY glColor4d (GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
-GLAPI void GLAPIENTRY glColor4dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glColor4f (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
-GLAPI void GLAPIENTRY glColor4fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glColor4i (GLint red, GLint green, GLint blue, GLint alpha);
-GLAPI void GLAPIENTRY glColor4iv (const GLint *v);
-GLAPI void GLAPIENTRY glColor4s (GLshort red, GLshort green, GLshort blue, GLshort alpha);
-GLAPI void GLAPIENTRY glColor4sv (const GLshort *v);
-GLAPI void GLAPIENTRY glColor4ub (GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
-GLAPI void GLAPIENTRY glColor4ubv (const GLubyte *v);
-GLAPI void GLAPIENTRY glColor4ui (GLuint red, GLuint green, GLuint blue, GLuint alpha);
-GLAPI void GLAPIENTRY glColor4uiv (const GLuint *v);
-GLAPI void GLAPIENTRY glColor4us (GLushort red, GLushort green, GLushort blue, GLushort alpha);
-GLAPI void GLAPIENTRY glColor4usv (const GLushort *v);
-GLAPI void GLAPIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
-GLAPI void GLAPIENTRY glColorMaterial (GLenum face, GLenum mode);
-GLAPI void GLAPIENTRY glColorPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
-GLAPI void GLAPIENTRY glCopyPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
-GLAPI void GLAPIENTRY glCopyTexImage1D (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border);
-GLAPI void GLAPIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
-GLAPI void GLAPIENTRY glCopyTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
-GLAPI void GLAPIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-GLAPI void GLAPIENTRY glCullFace (GLenum mode);
-GLAPI void GLAPIENTRY glDeleteLists (GLuint list, GLsizei range);
-GLAPI void GLAPIENTRY glDeleteTextures (GLsizei n, const GLuint *textures);
-GLAPI void GLAPIENTRY glDepthFunc (GLenum func);
-GLAPI void GLAPIENTRY glDepthMask (GLboolean flag);
-GLAPI void GLAPIENTRY glDepthRange (GLclampd zNear, GLclampd zFar);
-GLAPI void GLAPIENTRY glDisable (GLenum cap);
-GLAPI void GLAPIENTRY glDisableClientState (GLenum array);
-GLAPI void GLAPIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
-GLAPI void GLAPIENTRY glDrawBuffer (GLenum mode);
-GLAPI void GLAPIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
-GLAPI void GLAPIENTRY glDrawPixels (GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
-GLAPI void GLAPIENTRY glEdgeFlag (GLboolean flag);
-GLAPI void GLAPIENTRY glEdgeFlagPointer (GLsizei stride, const GLvoid *pointer);
-GLAPI void GLAPIENTRY glEdgeFlagv (const GLboolean *flag);
-GLAPI void GLAPIENTRY glEnable (GLenum cap);
-GLAPI void GLAPIENTRY glEnableClientState (GLenum array);
-GLAPI void GLAPIENTRY glEnd (void);
-GLAPI void GLAPIENTRY glEndList (void);
-GLAPI void GLAPIENTRY glEvalCoord1d (GLdouble u);
-GLAPI void GLAPIENTRY glEvalCoord1dv (const GLdouble *u);
-GLAPI void GLAPIENTRY glEvalCoord1f (GLfloat u);
-GLAPI void GLAPIENTRY glEvalCoord1fv (const GLfloat *u);
-GLAPI void GLAPIENTRY glEvalCoord2d (GLdouble u, GLdouble v);
-GLAPI void GLAPIENTRY glEvalCoord2dv (const GLdouble *u);
-GLAPI void GLAPIENTRY glEvalCoord2f (GLfloat u, GLfloat v);
-GLAPI void GLAPIENTRY glEvalCoord2fv (const GLfloat *u);
-GLAPI void GLAPIENTRY glEvalMesh1 (GLenum mode, GLint i1, GLint i2);
-GLAPI void GLAPIENTRY glEvalMesh2 (GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
-GLAPI void GLAPIENTRY glEvalPoint1 (GLint i);
-GLAPI void GLAPIENTRY glEvalPoint2 (GLint i, GLint j);
-GLAPI void GLAPIENTRY glFeedbackBuffer (GLsizei size, GLenum type, GLfloat *buffer);
-GLAPI void GLAPIENTRY glFinish (void);
-GLAPI void GLAPIENTRY glFlush (void);
-GLAPI void GLAPIENTRY glFogf (GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glFogfv (GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glFogi (GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glFogiv (GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glFrontFace (GLenum mode);
-GLAPI void GLAPIENTRY glFrustum (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
-GLAPI GLuint GLAPIENTRY glGenLists (GLsizei range);
-GLAPI void GLAPIENTRY glGenTextures (GLsizei n, GLuint *textures);
-GLAPI void GLAPIENTRY glGetBooleanv (GLenum pname, GLboolean *params);
-GLAPI void GLAPIENTRY glGetClipPlane (GLenum plane, GLdouble *equation);
-GLAPI void GLAPIENTRY glGetDoublev (GLenum pname, GLdouble *params);
-GLAPI GLenum GLAPIENTRY glGetError (void);
-GLAPI void GLAPIENTRY glGetFloatv (GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetIntegerv (GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glGetLightfv (GLenum light, GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetLightiv (GLenum light, GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glGetMapdv (GLenum target, GLenum query, GLdouble *v);
-GLAPI void GLAPIENTRY glGetMapfv (GLenum target, GLenum query, GLfloat *v);
-GLAPI void GLAPIENTRY glGetMapiv (GLenum target, GLenum query, GLint *v);
-GLAPI void GLAPIENTRY glGetMaterialfv (GLenum face, GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetMaterialiv (GLenum face, GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glGetPixelMapfv (GLenum map, GLfloat *values);
-GLAPI void GLAPIENTRY glGetPixelMapuiv (GLenum map, GLuint *values);
-GLAPI void GLAPIENTRY glGetPixelMapusv (GLenum map, GLushort *values);
-GLAPI void GLAPIENTRY glGetPointerv (GLenum pname, GLvoid* *params);
-GLAPI void GLAPIENTRY glGetPolygonStipple (GLubyte *mask);
-GLAPI const GLubyte * GLAPIENTRY glGetString (GLenum name);
-GLAPI void GLAPIENTRY glGetTexEnvfv (GLenum target, GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetTexEnviv (GLenum target, GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glGetTexGendv (GLenum coord, GLenum pname, GLdouble *params);
-GLAPI void GLAPIENTRY glGetTexGenfv (GLenum coord, GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetTexGeniv (GLenum coord, GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glGetTexImage (GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
-GLAPI void GLAPIENTRY glGetTexLevelParameterfv (GLenum target, GLint level, GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetTexLevelParameteriv (GLenum target, GLint level, GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glHint (GLenum target, GLenum mode);
-GLAPI void GLAPIENTRY glIndexMask (GLuint mask);
-GLAPI void GLAPIENTRY glIndexPointer (GLenum type, GLsizei stride, const GLvoid *pointer);
-GLAPI void GLAPIENTRY glIndexd (GLdouble c);
-GLAPI void GLAPIENTRY glIndexdv (const GLdouble *c);
-GLAPI void GLAPIENTRY glIndexf (GLfloat c);
-GLAPI void GLAPIENTRY glIndexfv (const GLfloat *c);
-GLAPI void GLAPIENTRY glIndexi (GLint c);
-GLAPI void GLAPIENTRY glIndexiv (const GLint *c);
-GLAPI void GLAPIENTRY glIndexs (GLshort c);
-GLAPI void GLAPIENTRY glIndexsv (const GLshort *c);
-GLAPI void GLAPIENTRY glIndexub (GLubyte c);
-GLAPI void GLAPIENTRY glIndexubv (const GLubyte *c);
-GLAPI void GLAPIENTRY glInitNames (void);
-GLAPI void GLAPIENTRY glInterleavedArrays (GLenum format, GLsizei stride, const GLvoid *pointer);
-GLAPI GLboolean GLAPIENTRY glIsEnabled (GLenum cap);
-GLAPI GLboolean GLAPIENTRY glIsList (GLuint list);
-GLAPI GLboolean GLAPIENTRY glIsTexture (GLuint texture);
-GLAPI void GLAPIENTRY glLightModelf (GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glLightModelfv (GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glLightModeli (GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glLightModeliv (GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glLightf (GLenum light, GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glLightfv (GLenum light, GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glLighti (GLenum light, GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glLightiv (GLenum light, GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glLineStipple (GLint factor, GLushort pattern);
-GLAPI void GLAPIENTRY glLineWidth (GLfloat width);
-GLAPI void GLAPIENTRY glListBase (GLuint base);
-GLAPI void GLAPIENTRY glLoadIdentity (void);
-GLAPI void GLAPIENTRY glLoadMatrixd (const GLdouble *m);
-GLAPI void GLAPIENTRY glLoadMatrixf (const GLfloat *m);
-GLAPI void GLAPIENTRY glLoadName (GLuint name);
-GLAPI void GLAPIENTRY glLogicOp (GLenum opcode);
-GLAPI void GLAPIENTRY glMap1d (GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
-GLAPI void GLAPIENTRY glMap1f (GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
-GLAPI void GLAPIENTRY glMap2d (GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
-GLAPI void GLAPIENTRY glMap2f (GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
-GLAPI void GLAPIENTRY glMapGrid1d (GLint un, GLdouble u1, GLdouble u2);
-GLAPI void GLAPIENTRY glMapGrid1f (GLint un, GLfloat u1, GLfloat u2);
-GLAPI void GLAPIENTRY glMapGrid2d (GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
-GLAPI void GLAPIENTRY glMapGrid2f (GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
-GLAPI void GLAPIENTRY glMaterialf (GLenum face, GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glMaterialfv (GLenum face, GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glMateriali (GLenum face, GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glMaterialiv (GLenum face, GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glMatrixMode (GLenum mode);
-GLAPI void GLAPIENTRY glMultMatrixd (const GLdouble *m);
-GLAPI void GLAPIENTRY glMultMatrixf (const GLfloat *m);
-GLAPI void GLAPIENTRY glNewList (GLuint list, GLenum mode);
-GLAPI void GLAPIENTRY glNormal3b (GLbyte nx, GLbyte ny, GLbyte nz);
-GLAPI void GLAPIENTRY glNormal3bv (const GLbyte *v);
-GLAPI void GLAPIENTRY glNormal3d (GLdouble nx, GLdouble ny, GLdouble nz);
-GLAPI void GLAPIENTRY glNormal3dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glNormal3f (GLfloat nx, GLfloat ny, GLfloat nz);
-GLAPI void GLAPIENTRY glNormal3fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glNormal3i (GLint nx, GLint ny, GLint nz);
-GLAPI void GLAPIENTRY glNormal3iv (const GLint *v);
-GLAPI void GLAPIENTRY glNormal3s (GLshort nx, GLshort ny, GLshort nz);
-GLAPI void GLAPIENTRY glNormal3sv (const GLshort *v);
-GLAPI void GLAPIENTRY glNormalPointer (GLenum type, GLsizei stride, const GLvoid *pointer);
-GLAPI void GLAPIENTRY glOrtho (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
-GLAPI void GLAPIENTRY glPassThrough (GLfloat token);
-GLAPI void GLAPIENTRY glPixelMapfv (GLenum map, GLsizei mapsize, const GLfloat *values);
-GLAPI void GLAPIENTRY glPixelMapuiv (GLenum map, GLsizei mapsize, const GLuint *values);
-GLAPI void GLAPIENTRY glPixelMapusv (GLenum map, GLsizei mapsize, const GLushort *values);
-GLAPI void GLAPIENTRY glPixelStoref (GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glPixelStorei (GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glPixelTransferf (GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glPixelTransferi (GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glPixelZoom (GLfloat xfactor, GLfloat yfactor);
-GLAPI void GLAPIENTRY glPointSize (GLfloat size);
-GLAPI void GLAPIENTRY glPolygonMode (GLenum face, GLenum mode);
-GLAPI void GLAPIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
-GLAPI void GLAPIENTRY glPolygonStipple (const GLubyte *mask);
-GLAPI void GLAPIENTRY glPopAttrib (void);
-GLAPI void GLAPIENTRY glPopClientAttrib (void);
-GLAPI void GLAPIENTRY glPopMatrix (void);
-GLAPI void GLAPIENTRY glPopName (void);
-GLAPI void GLAPIENTRY glPrioritizeTextures (GLsizei n, const GLuint *textures, const GLclampf *priorities);
-GLAPI void GLAPIENTRY glPushAttrib (GLbitfield mask);
-GLAPI void GLAPIENTRY glPushClientAttrib (GLbitfield mask);
-GLAPI void GLAPIENTRY glPushMatrix (void);
-GLAPI void GLAPIENTRY glPushName (GLuint name);
-GLAPI void GLAPIENTRY glRasterPos2d (GLdouble x, GLdouble y);
-GLAPI void GLAPIENTRY glRasterPos2dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glRasterPos2f (GLfloat x, GLfloat y);
-GLAPI void GLAPIENTRY glRasterPos2fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glRasterPos2i (GLint x, GLint y);
-GLAPI void GLAPIENTRY glRasterPos2iv (const GLint *v);
-GLAPI void GLAPIENTRY glRasterPos2s (GLshort x, GLshort y);
-GLAPI void GLAPIENTRY glRasterPos2sv (const GLshort *v);
-GLAPI void GLAPIENTRY glRasterPos3d (GLdouble x, GLdouble y, GLdouble z);
-GLAPI void GLAPIENTRY glRasterPos3dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glRasterPos3f (GLfloat x, GLfloat y, GLfloat z);
-GLAPI void GLAPIENTRY glRasterPos3fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glRasterPos3i (GLint x, GLint y, GLint z);
-GLAPI void GLAPIENTRY glRasterPos3iv (const GLint *v);
-GLAPI void GLAPIENTRY glRasterPos3s (GLshort x, GLshort y, GLshort z);
-GLAPI void GLAPIENTRY glRasterPos3sv (const GLshort *v);
-GLAPI void GLAPIENTRY glRasterPos4d (GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-GLAPI void GLAPIENTRY glRasterPos4dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glRasterPos4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-GLAPI void GLAPIENTRY glRasterPos4fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glRasterPos4i (GLint x, GLint y, GLint z, GLint w);
-GLAPI void GLAPIENTRY glRasterPos4iv (const GLint *v);
-GLAPI void GLAPIENTRY glRasterPos4s (GLshort x, GLshort y, GLshort z, GLshort w);
-GLAPI void GLAPIENTRY glRasterPos4sv (const GLshort *v);
-GLAPI void GLAPIENTRY glReadBuffer (GLenum mode);
-GLAPI void GLAPIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
-GLAPI void GLAPIENTRY glRectd (GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
-GLAPI void GLAPIENTRY glRectdv (const GLdouble *v1, const GLdouble *v2);
-GLAPI void GLAPIENTRY glRectf (GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
-GLAPI void GLAPIENTRY glRectfv (const GLfloat *v1, const GLfloat *v2);
-GLAPI void GLAPIENTRY glRecti (GLint x1, GLint y1, GLint x2, GLint y2);
-GLAPI void GLAPIENTRY glRectiv (const GLint *v1, const GLint *v2);
-GLAPI void GLAPIENTRY glRects (GLshort x1, GLshort y1, GLshort x2, GLshort y2);
-GLAPI void GLAPIENTRY glRectsv (const GLshort *v1, const GLshort *v2);
-GLAPI GLint GLAPIENTRY glRenderMode (GLenum mode);
-GLAPI void GLAPIENTRY glRotated (GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
-GLAPI void GLAPIENTRY glRotatef (GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
-GLAPI void GLAPIENTRY glScaled (GLdouble x, GLdouble y, GLdouble z);
-GLAPI void GLAPIENTRY glScalef (GLfloat x, GLfloat y, GLfloat z);
-GLAPI void GLAPIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
-GLAPI void GLAPIENTRY glSelectBuffer (GLsizei size, GLuint *buffer);
-GLAPI void GLAPIENTRY glShadeModel (GLenum mode);
-GLAPI void GLAPIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
-GLAPI void GLAPIENTRY glStencilMask (GLuint mask);
-GLAPI void GLAPIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
-GLAPI void GLAPIENTRY glTexCoord1d (GLdouble s);
-GLAPI void GLAPIENTRY glTexCoord1dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glTexCoord1f (GLfloat s);
-GLAPI void GLAPIENTRY glTexCoord1fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glTexCoord1i (GLint s);
-GLAPI void GLAPIENTRY glTexCoord1iv (const GLint *v);
-GLAPI void GLAPIENTRY glTexCoord1s (GLshort s);
-GLAPI void GLAPIENTRY glTexCoord1sv (const GLshort *v);
-GLAPI void GLAPIENTRY glTexCoord2d (GLdouble s, GLdouble t);
-GLAPI void GLAPIENTRY glTexCoord2dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glTexCoord2f (GLfloat s, GLfloat t);
-GLAPI void GLAPIENTRY glTexCoord2fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glTexCoord2i (GLint s, GLint t);
-GLAPI void GLAPIENTRY glTexCoord2iv (const GLint *v);
-GLAPI void GLAPIENTRY glTexCoord2s (GLshort s, GLshort t);
-GLAPI void GLAPIENTRY glTexCoord2sv (const GLshort *v);
-GLAPI void GLAPIENTRY glTexCoord3d (GLdouble s, GLdouble t, GLdouble r);
-GLAPI void GLAPIENTRY glTexCoord3dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glTexCoord3f (GLfloat s, GLfloat t, GLfloat r);
-GLAPI void GLAPIENTRY glTexCoord3fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glTexCoord3i (GLint s, GLint t, GLint r);
-GLAPI void GLAPIENTRY glTexCoord3iv (const GLint *v);
-GLAPI void GLAPIENTRY glTexCoord3s (GLshort s, GLshort t, GLshort r);
-GLAPI void GLAPIENTRY glTexCoord3sv (const GLshort *v);
-GLAPI void GLAPIENTRY glTexCoord4d (GLdouble s, GLdouble t, GLdouble r, GLdouble q);
-GLAPI void GLAPIENTRY glTexCoord4dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glTexCoord4f (GLfloat s, GLfloat t, GLfloat r, GLfloat q);
-GLAPI void GLAPIENTRY glTexCoord4fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glTexCoord4i (GLint s, GLint t, GLint r, GLint q);
-GLAPI void GLAPIENTRY glTexCoord4iv (const GLint *v);
-GLAPI void GLAPIENTRY glTexCoord4s (GLshort s, GLshort t, GLshort r, GLshort q);
-GLAPI void GLAPIENTRY glTexCoord4sv (const GLshort *v);
-GLAPI void GLAPIENTRY glTexCoordPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
-GLAPI void GLAPIENTRY glTexEnvf (GLenum target, GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glTexEnvfv (GLenum target, GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glTexEnvi (GLenum target, GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glTexEnviv (GLenum target, GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glTexGend (GLenum coord, GLenum pname, GLdouble param);
-GLAPI void GLAPIENTRY glTexGendv (GLenum coord, GLenum pname, const GLdouble *params);
-GLAPI void GLAPIENTRY glTexGenf (GLenum coord, GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glTexGenfv (GLenum coord, GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glTexGeni (GLenum coord, GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glTexGeniv (GLenum coord, GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glTexImage1D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
-GLAPI void GLAPIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
-GLAPI void GLAPIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
-GLAPI void GLAPIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
-GLAPI void GLAPIENTRY glTranslated (GLdouble x, GLdouble y, GLdouble z);
-GLAPI void GLAPIENTRY glTranslatef (GLfloat x, GLfloat y, GLfloat z);
-GLAPI void GLAPIENTRY glVertex2d (GLdouble x, GLdouble y);
-GLAPI void GLAPIENTRY glVertex2dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glVertex2f (GLfloat x, GLfloat y);
-GLAPI void GLAPIENTRY glVertex2fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glVertex2i (GLint x, GLint y);
-GLAPI void GLAPIENTRY glVertex2iv (const GLint *v);
-GLAPI void GLAPIENTRY glVertex2s (GLshort x, GLshort y);
-GLAPI void GLAPIENTRY glVertex2sv (const GLshort *v);
-GLAPI void GLAPIENTRY glVertex3d (GLdouble x, GLdouble y, GLdouble z);
-GLAPI void GLAPIENTRY glVertex3dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glVertex3f (GLfloat x, GLfloat y, GLfloat z);
-GLAPI void GLAPIENTRY glVertex3fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glVertex3i (GLint x, GLint y, GLint z);
-GLAPI void GLAPIENTRY glVertex3iv (const GLint *v);
-GLAPI void GLAPIENTRY glVertex3s (GLshort x, GLshort y, GLshort z);
-GLAPI void GLAPIENTRY glVertex3sv (const GLshort *v);
-GLAPI void GLAPIENTRY glVertex4d (GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-GLAPI void GLAPIENTRY glVertex4dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glVertex4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-GLAPI void GLAPIENTRY glVertex4fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glVertex4i (GLint x, GLint y, GLint z, GLint w);
-GLAPI void GLAPIENTRY glVertex4iv (const GLint *v);
-GLAPI void GLAPIENTRY glVertex4s (GLshort x, GLshort y, GLshort z, GLshort w);
-GLAPI void GLAPIENTRY glVertex4sv (const GLshort *v);
-GLAPI void GLAPIENTRY glVertexPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
-GLAPI void GLAPIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
-
-#define GLEW_VERSION_1_1 GLEW_GET_VAR(__GLEW_VERSION_1_1)
-
-#endif /* GL_VERSION_1_1 */
-
-/* ---------------------------------- GLU ---------------------------------- */
-
-/* this is where we can safely include GLU */
-#if defined(__APPLE__) && defined(__MACH__)
-#include <OpenGL/glu.h>
-#else
-#include <GL/glu.h>
-#endif
-
diff --git a/src/other/glew/auto/src/glew_init_gl.c b/src/other/glew/auto/src/glew_init_gl.c
deleted file mode 100644
index ff7d5a8..0000000
--- a/src/other/glew/auto/src/glew_init_gl.c
+++ /dev/null
@@ -1,70 +0,0 @@
-/* ------------------------------------------------------------------------- */
-
-/* 
- * Search for name in the extensions string. Use of strstr()
- * is not sufficient because extension names can be prefixes of
- * other extension names. Could use strtok() but the constant
- * string returned by glGetString might be in read-only memory.
- */
-GLboolean glewGetExtension (const char* name)
-{    
-  GLubyte* p;
-  GLubyte* end;
-  GLuint len = _glewStrLen((const GLubyte*)name);
-  p = (GLubyte*)glGetString(GL_EXTENSIONS);
-  if (0 == p) return GL_FALSE;
-  end = p + _glewStrLen(p);
-  while (p < end)
-  {
-    GLuint n = _glewStrCLen(p, ' ');
-    if (len == n && _glewStrSame((const GLubyte*)name, p, n)) return GL_TRUE;
-    p += n+1;
-  }
-  return GL_FALSE;
-}
-
-/* ------------------------------------------------------------------------- */
-
-#ifndef GLEW_MX
-static
-#endif
-GLenum glewContextInit (GLEW_CONTEXT_ARG_DEF_LIST)
-{
-  const GLubyte* s;
-  GLuint dot;
-  GLint major, minor;
-  /* query opengl version */
-  s = glGetString(GL_VERSION);
-  dot = _glewStrCLen(s, '.');
-  if (dot == 0)
-    return GLEW_ERROR_NO_GL_VERSION;
-  
-  major = s[dot-1]-'0';
-  minor = s[dot+1]-'0';
-
-  if (minor < 0 || minor > 9)
-    minor = 0;
-  if (major<0 || major>9)
-    return GLEW_ERROR_NO_GL_VERSION;
-  
-
-  if (major == 1 && minor == 0)
-  {
-    return GLEW_ERROR_GL_VERSION_10_ONLY;
-  }
-  else
-  {
-    CONST_CAST(GLEW_VERSION_4_0) = ( major > 4 )               || ( major == 4               ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_3_3) = GLEW_VERSION_4_0 == GL_TRUE || ( major == 3 && minor >= 3 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_3_2) = GLEW_VERSION_3_3 == GL_TRUE || ( major == 3 && minor >= 2 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_3_1) = GLEW_VERSION_3_2 == GL_TRUE || ( major == 3 && minor >= 1 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_3_0) = GLEW_VERSION_3_1 == GL_TRUE || ( major == 3               ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_2_1) = GLEW_VERSION_3_0 == GL_TRUE || ( major == 2 && minor >= 1 ) ? GL_TRUE : GL_FALSE;    
-    CONST_CAST(GLEW_VERSION_2_0) = GLEW_VERSION_2_1 == GL_TRUE || ( major == 2               ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_1_5) = GLEW_VERSION_2_0 == GL_TRUE || ( major == 1 && minor >= 5 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_1_4) = GLEW_VERSION_1_5 == GL_TRUE || ( major == 1 && minor >= 4 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_1_3) = GLEW_VERSION_1_4 == GL_TRUE || ( major == 1 && minor >= 3 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_1_2) = GLEW_VERSION_1_3 == GL_TRUE || ( major == 1 && minor >= 2 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_1_1) = GLEW_VERSION_1_2 == GL_TRUE || ( major == 1 && minor >= 1 ) ? GL_TRUE : GL_FALSE;
-  }
-  /* initialize extensions */
diff --git a/src/other/glew/auto/src/glew_init_glx.c b/src/other/glew/auto/src/glew_init_glx.c
deleted file mode 100644
index c66e24c..0000000
--- a/src/other/glew/auto/src/glew_init_glx.c
+++ /dev/null
@@ -1,52 +0,0 @@
-/* ------------------------------------------------------------------------ */
-
-GLboolean glxewGetExtension (const char* name)
-{    
-  GLubyte* p;
-  GLubyte* end;
-  GLuint len;
-
-  if (glXGetCurrentDisplay == NULL) return GL_FALSE;
-  len = _glewStrLen((const GLubyte*)name);
-  p = (GLubyte*)glXGetClientString(glXGetCurrentDisplay(), GLX_EXTENSIONS);
-  if (0 == p) return GL_FALSE;
-  end = p + _glewStrLen(p);
-  while (p < end)
-  {
-    GLuint n = _glewStrCLen(p, ' ');
-    if (len == n && _glewStrSame((const GLubyte*)name, p, n)) return GL_TRUE;
-    p += n+1;
-  }
-  return GL_FALSE;
-}
-
-GLenum glxewContextInit (GLXEW_CONTEXT_ARG_DEF_LIST)
-{
-  int major, minor;
-  /* initialize core GLX 1.2 */
-  if (_glewInit_GLX_VERSION_1_2(GLEW_CONTEXT_ARG_VAR_INIT)) return GLEW_ERROR_GLX_VERSION_11_ONLY;
-  /* initialize flags */
-  CONST_CAST(GLXEW_VERSION_1_0) = GL_TRUE;
-  CONST_CAST(GLXEW_VERSION_1_1) = GL_TRUE;
-  CONST_CAST(GLXEW_VERSION_1_2) = GL_TRUE;
-  CONST_CAST(GLXEW_VERSION_1_3) = GL_TRUE;
-  CONST_CAST(GLXEW_VERSION_1_4) = GL_TRUE;
-  /* query GLX version */
-  glXQueryVersion(glXGetCurrentDisplay(), &major, &minor);
-  if (major == 1 && minor <= 3)
-  {
-    switch (minor)
-    {
-      case 3:
-      CONST_CAST(GLXEW_VERSION_1_4) = GL_FALSE;
-      break;
-      case 2:
-      CONST_CAST(GLXEW_VERSION_1_4) = GL_FALSE;
-      CONST_CAST(GLXEW_VERSION_1_3) = GL_FALSE;
-      break;
-      default:
-      return GLEW_ERROR_GLX_VERSION_11_ONLY;
-      break;
-    }
-  }
-  /* initialize extensions */
diff --git a/src/other/glew/auto/src/glew_init_tail.c b/src/other/glew/auto/src/glew_init_tail.c
deleted file mode 100644
index 678b91c..0000000
--- a/src/other/glew/auto/src/glew_init_tail.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* ------------------------------------------------------------------------ */
-
-const GLubyte* glewGetErrorString (GLenum error)
-{
-  static const GLubyte* _glewErrorString[] =
-  {
-    (const GLubyte*)"No error",
-    (const GLubyte*)"Missing GL version",
-    (const GLubyte*)"GL 1.1 and up are not supported",
-    (const GLubyte*)"GLX 1.2 and up are not supported",
-    (const GLubyte*)"Unknown error"
-  };
-  const int max_error = sizeof(_glewErrorString)/sizeof(*_glewErrorString) - 1;
-  return _glewErrorString[(int)error > max_error ? max_error : (int)error];
-}
-
-const GLubyte* glewGetString (GLenum name)
-{
-  static const GLubyte* _glewString[] =
-  {
-    (const GLubyte*)NULL,
-    (const GLubyte*)"GLEW_VERSION_STRING",
-    (const GLubyte*)"GLEW_VERSION_MAJOR_STRING",
-    (const GLubyte*)"GLEW_VERSION_MINOR_STRING",
-    (const GLubyte*)"GLEW_VERSION_MICRO_STRING"
-  };
-  const int max_string = sizeof(_glewString)/sizeof(*_glewString) - 1;
-  return _glewString[(int)name > max_string ? 0 : (int)name];
-}
-
-/* ------------------------------------------------------------------------ */
-
-GLboolean glewExperimental = GL_FALSE;
-
-#if !defined(GLEW_MX)
-
-#if defined(_WIN32)
-extern GLenum wglewContextInit (void);
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX) /* _UNIX */
-extern GLenum glxewContextInit (void);
-#endif /* _WIN32 */
-
-GLenum glewInit ()
-{
-  GLenum r;
-  if ( (r = glewContextInit()) ) return r;
-#if defined(_WIN32)
-  return wglewContextInit();
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX) /* _UNIX */
-  return glxewContextInit();
-#else
-  return r;
-#endif /* _WIN32 */
-}
-
-#endif /* !GLEW_MX */
diff --git a/src/other/glew/auto/src/glew_init_wgl.c b/src/other/glew/auto/src/glew_init_wgl.c
deleted file mode 100644
index e66de42..0000000
--- a/src/other/glew/auto/src/glew_init_wgl.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* ------------------------------------------------------------------------- */
-
-static PFNWGLGETEXTENSIONSSTRINGARBPROC _wglewGetExtensionsStringARB = NULL;
-static PFNWGLGETEXTENSIONSSTRINGEXTPROC _wglewGetExtensionsStringEXT = NULL;
-
-GLboolean wglewGetExtension (const char* name)
-{    
-  GLubyte* p;
-  GLubyte* end;
-  GLuint len = _glewStrLen((const GLubyte*)name);
-  if (_wglewGetExtensionsStringARB == NULL)
-    if (_wglewGetExtensionsStringEXT == NULL)
-      return GL_FALSE;
-    else
-      p = (GLubyte*)_wglewGetExtensionsStringEXT();
-  else
-    p = (GLubyte*)_wglewGetExtensionsStringARB(wglGetCurrentDC());
-  if (0 == p) return GL_FALSE;
-  end = p + _glewStrLen(p);
-  while (p < end)
-  {
-    GLuint n = _glewStrCLen(p, ' ');
-    if (len == n && _glewStrSame((const GLubyte*)name, p, n)) return GL_TRUE;
-    p += n+1;
-  }
-  return GL_FALSE;
-}
-
-GLenum wglewContextInit (WGLEW_CONTEXT_ARG_DEF_LIST)
-{
-  GLboolean crippled;
-  /* find wgl extension string query functions */
-  _wglewGetExtensionsStringARB = (PFNWGLGETEXTENSIONSSTRINGARBPROC)glewGetProcAddress((const GLubyte*)"wglGetExtensionsStringARB");
-  _wglewGetExtensionsStringEXT = (PFNWGLGETEXTENSIONSSTRINGEXTPROC)glewGetProcAddress((const GLubyte*)"wglGetExtensionsStringEXT");
-  /* initialize extensions */
-  crippled = _wglewGetExtensionsStringARB == NULL && _wglewGetExtensionsStringEXT == NULL;
diff --git a/src/other/glew/auto/src/glew_license.h b/src/other/glew/auto/src/glew_license.h
deleted file mode 100644
index 5c3e781..0000000
--- a/src/other/glew/auto/src/glew_license.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
-** The OpenGL Extension Wrangler Library
-** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-** Copyright (C) 2002, Lev Povalahev
-** All rights reserved.
-** 
-** Redistribution and use in source and binary forms, with or without 
-** modification, are permitted provided that the following conditions are met:
-** 
-** * Redistributions of source code must retain the above copyright notice, 
-**   this list of conditions and the following disclaimer.
-** * Redistributions in binary form must reproduce the above copyright notice, 
-**   this list of conditions and the following disclaimer in the documentation 
-**   and/or other materials provided with the distribution.
-** * The name of the author may be used to endorse or promote products 
-**   derived from this software without specific prior written permission.
-**
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-** THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
diff --git a/src/other/glew/auto/src/glew_str_glx.c b/src/other/glew/auto/src/glew_str_glx.c
deleted file mode 100644
index 7c31405..0000000
--- a/src/other/glew/auto/src/glew_str_glx.c
+++ /dev/null
@@ -1,21 +0,0 @@
-    }
-    ret = (len == 0);
-  }
-  return ret;
-}
-
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-
-#if defined(GLEW_MX)
-GLboolean glxewContextIsSupported (GLXEWContext* ctx, const char* name)
-#else
-GLboolean glxewIsSupported (const char* name)
-#endif
-{
-  GLubyte* pos = (GLubyte*)name;
-  GLuint len = _glewStrLen(pos);
-  GLboolean ret = GL_TRUE;
-  while (ret && len > 0)
-  {
-    if(_glewStrSame1(&pos, &len, (const GLubyte*)"GLX_", 4))
-    {
diff --git a/src/other/glew/auto/src/glew_str_head.c b/src/other/glew/auto/src/glew_str_head.c
deleted file mode 100644
index 1f3ddf2..0000000
--- a/src/other/glew/auto/src/glew_str_head.c
+++ /dev/null
@@ -1,13 +0,0 @@
-#ifdef GLEW_MX
-GLboolean glewContextIsSupported (GLEWContext* ctx, const char* name)
-#else
-GLboolean glewIsSupported (const char* name)
-#endif
-{
-  GLubyte* pos = (GLubyte*)name;
-  GLuint len = _glewStrLen(pos);
-  GLboolean ret = GL_TRUE;
-  while (ret && len > 0)
-  {
-    if (_glewStrSame1(&pos, &len, (const GLubyte*)"GL_", 3))
-    {
diff --git a/src/other/glew/auto/src/glew_str_tail.c b/src/other/glew/auto/src/glew_str_tail.c
deleted file mode 100644
index caa9572..0000000
--- a/src/other/glew/auto/src/glew_str_tail.c
+++ /dev/null
@@ -1,7 +0,0 @@
-    }
-    ret = (len == 0);
-  }
-  return ret;
-}
-
-#endif /* _WIN32 */
diff --git a/src/other/glew/auto/src/glew_str_wgl.c b/src/other/glew/auto/src/glew_str_wgl.c
deleted file mode 100644
index 2398075..0000000
--- a/src/other/glew/auto/src/glew_str_wgl.c
+++ /dev/null
@@ -1,21 +0,0 @@
-    }
-    ret = (len == 0);
-  }
-  return ret;
-}
-
-#if defined(_WIN32)
-
-#if defined(GLEW_MX)
-GLboolean wglewContextIsSupported (WGLEWContext* ctx, const char* name)
-#else
-GLboolean wglewIsSupported (const char* name)
-#endif
-{
-  GLubyte* pos = (GLubyte*)name;
-  GLuint len = _glewStrLen(pos);
-  GLboolean ret = GL_TRUE;
-  while (ret && len > 0)
-  {
-    if (_glewStrSame1(&pos, &len, (const GLubyte*)"WGL_", 4))
-    {
diff --git a/src/other/glew/auto/src/glew_tail.h b/src/other/glew/auto/src/glew_tail.h
deleted file mode 100644
index 647c4cf..0000000
--- a/src/other/glew/auto/src/glew_tail.h
+++ /dev/null
@@ -1,74 +0,0 @@
-/* ------------------------------------------------------------------------- */
-
-/* error codes */
-#define GLEW_OK 0
-#define GLEW_NO_ERROR 0
-#define GLEW_ERROR_NO_GL_VERSION 1  /* missing GL version */
-#define GLEW_ERROR_GL_VERSION_10_ONLY 2  /* GL 1.1 and up are not supported */
-#define GLEW_ERROR_GLX_VERSION_11_ONLY 3  /* GLX 1.2 and up are not supported */
-
-/* string codes */
-#define GLEW_VERSION 1
-#define GLEW_VERSION_MAJOR 2
-#define GLEW_VERSION_MINOR 3
-#define GLEW_VERSION_MICRO 4
-
-/* API */
-#ifdef GLEW_MX
-
-typedef struct GLEWContextStruct GLEWContext;
-GLEWAPI GLenum glewContextInit (GLEWContext* ctx);
-GLEWAPI GLboolean glewContextIsSupported (GLEWContext* ctx, const char* name);
-
-#define glewInit() glewContextInit(glewGetContext())
-#define glewIsSupported(x) glewContextIsSupported(glewGetContext(), x)
-#define glewIsExtensionSupported(x) glewIsSupported(x)
-
-#define GLEW_GET_VAR(x) (*(const GLboolean*)&(glewGetContext()->x))
-#ifdef _WIN32
-#  define GLEW_GET_FUN(x) glewGetContext()->x
-#else
-#  define GLEW_GET_FUN(x) x
-#endif
-
-#else /* GLEW_MX */
-
-GLEWAPI GLenum glewInit ();
-GLEWAPI GLboolean glewIsSupported (const char* name);
-#define glewIsExtensionSupported(x) glewIsSupported(x)
-
-#define GLEW_GET_VAR(x) (*(const GLboolean*)&x)
-#define GLEW_GET_FUN(x) x
-
-#endif /* GLEW_MX */
-
-GLEWAPI GLboolean glewExperimental;
-GLEWAPI GLboolean glewGetExtension (const char* name);
-GLEWAPI const GLubyte* glewGetErrorString (GLenum error);
-GLEWAPI const GLubyte* glewGetString (GLenum name);
-
-#ifdef __cplusplus
-}
-#endif
-
-#ifdef GLEW_APIENTRY_DEFINED
-#undef GLEW_APIENTRY_DEFINED
-#undef APIENTRY
-#undef GLAPIENTRY
-#define GLAPIENTRY
-#endif
-
-#ifdef GLEW_CALLBACK_DEFINED
-#undef GLEW_CALLBACK_DEFINED
-#undef CALLBACK
-#endif
-
-#ifdef GLEW_WINGDIAPI_DEFINED
-#undef GLEW_WINGDIAPI_DEFINED
-#undef WINGDIAPI
-#endif
-
-#undef GLAPI
-/* #undef GLEWAPI */
-
-#endif /* __glew_h__ */
diff --git a/src/other/glew/auto/src/glew_utils.c b/src/other/glew/auto/src/glew_utils.c
deleted file mode 100644
index 85fb57f..0000000
--- a/src/other/glew/auto/src/glew_utils.c
+++ /dev/null
@@ -1,162 +0,0 @@
-/*
-** The OpenGL Extension Wrangler Library
-** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-** Copyright (C) 2002, Lev Povalahev
-** All rights reserved.
-** 
-** Redistribution and use in source and binary forms, with or without 
-** modification, are permitted provided that the following conditions are met:
-** 
-** * Redistributions of source code must retain the above copyright notice, 
-**   this list of conditions and the following disclaimer.
-** * Redistributions in binary form must reproduce the above copyright notice, 
-**   this list of conditions and the following disclaimer in the documentation 
-**   and/or other materials provided with the distribution.
-** * The name of the author may be used to endorse or promote products 
-**   derived from this software without specific prior written permission.
-**
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-** THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-#include <GL/glew.h>
-#if defined(_WIN32)
-#  include <GL/wglew.h>
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-#  include <GL/glxew.h>
-#endif
-
-#include "glew_utils.h"
-
-#if defined(__APPLE__)
-#include <mach-o/dyld.h>
-#include <stdlib.h>
-#include <string.h>
-
-void* NSGLGetProcAddress (const GLubyte *name)
-{
-  NSSymbol symbol;
-  char* symbolName;
-  /* prepend a '_' for the Unix C symbol mangling convention */
-  symbolName = malloc(strlen((const char*)name) + 2);
-  strcpy(symbolName+1, (const char*)name);
-  symbolName[0] = '_';
-  symbol = NULL;
-  if (NSIsSymbolNameDefined(symbolName))
-    symbol = NSLookupAndBindSymbol(symbolName);
-  free(symbolName);
-  return symbol ? NSAddressOfSymbol(symbol) : NULL;
-}
-#endif /* __APPLE__ */
-
-#if defined(__sgi) || defined (__sun)
-#include <dlfcn.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-void* dlGetProcAddress (const GLubyte* name)
-{
-  static void* h = NULL;
-  static void* gpa;
-
-  if (h == NULL)
-  {
-    if ((h = dlopen(NULL, RTLD_LAZY | RTLD_LOCAL)) == NULL) return NULL;
-    gpa = dlsym(h, "glXGetProcAddress");
-  }
-
-  if (gpa != NULL)
-    return ((void*(*)(const GLubyte*))gpa)(name);
-  else
-    return dlsym(h, (const char*)name);
-}
-#endif /* __sgi || __sun */
-
-/*
- * GLEW, just like OpenGL or GLU, does not rely on the standard C library.
- * These functions implement the functionality required in this file.
- */
-
-GLuint _glewStrLen (const GLubyte* s)
-{
-  GLuint i=0;
-  while (s+i != NULL && s[i] != '\0') i++;
-  return i;
-}
-
-GLuint _glewStrCLen (const GLubyte* s, GLubyte c)
-{
-  GLuint i=0;
-  while (s+i != NULL && s[i] != '\0' && s[i] != c) i++;
-  return i;
-}
-
-GLboolean _glewStrSame (const GLubyte* a, const GLubyte* b, GLuint n)
-{
-  GLuint i=0;
-  while (i < n && a+i != NULL && b+i != NULL && a[i] == b[i]) i++;
-  return i == n ? GL_TRUE : GL_FALSE;
-}
-
-GLboolean _glewStrSame1 (GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
-{
-  while (*na > 0 && (**a == ' ' || **a == '\n' || **a == '\r' || **a == '\t'))
-  {
-    *a++;
-    *na--;
-  }
-  if(*na >= nb)
-  {
-    GLuint i=0;
-    while (i < nb && *a+i != NULL && b+i != NULL && *a[i] == b[i]) i++;
-	if(i == nb)
-	{
-		*a = *a + nb;
-		*na = *na - nb;
-		return GL_TRUE;
-	}
-  }
-  return GL_FALSE;
-}
-
-GLboolean _glewStrSame2 (GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
-{
-  if(*na >= nb)
-  {
-    GLuint i=0;
-    while (i < nb && *a+i != NULL && b+i != NULL && *a[i] == b[i]) i++;
-	if(i == nb)
-	{
-		*a = *a + nb;
-		*na = *na - nb;
-		return GL_TRUE;
-	}
-  }
-  return GL_FALSE;
-}
-
-GLboolean _glewStrSame3 (GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
-{
-  if(*na >= nb)
-  {
-    GLuint i=0;
-    while (i < nb && *a+i != NULL && b+i != NULL && *a[i] == b[i]) i++;
-    if (i == nb && (*na == nb || *a[i] == ' ' || *a[i] == '\n' || *a[i] == '\r' || *a[i] == '\t'))
-    {
-      *a = *a + nb;
-      *na = *na - nb;
-      return GL_TRUE;
-    }
-  }
-  return GL_FALSE;
-}
diff --git a/src/other/glew/auto/src/glew_utils.h b/src/other/glew/auto/src/glew_utils.h
deleted file mode 100644
index 0060230..0000000
--- a/src/other/glew/auto/src/glew_utils.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
-** The OpenGL Extension Wrangler Library
-** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-** Copyright (C) 2002, Lev Povalahev
-** All rights reserved.
-** 
-** Redistribution and use in source and binary forms, with or without 
-** modification, are permitted provided that the following conditions are met:
-** 
-** * Redistributions of source code must retain the above copyright notice, 
-**   this list of conditions and the following disclaimer.
-** * Redistributions in binary form must reproduce the above copyright notice, 
-**   this list of conditions and the following disclaimer in the documentation 
-**   and/or other materials provided with the distribution.
-** * The name of the author may be used to endorse or promote products 
-**   derived from this software without specific prior written permission.
-**
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-** THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-#ifndef __glew_utils_h__
-#define __glew_utils_h__
-
-#include <GL/glew.h>
-#if defined(_WIN32)
-#  include <GL/wglew.h>
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-#  include <GL/glxew.h>
-#endif
-
-/*
- * Define glewGetContext and related helper macros.
- */
-#ifdef GLEW_MX
-#  define glewGetContext() ctx
-#  ifdef _WIN32
-#    define GLEW_CONTEXT_ARG_DEF_INIT GLEWContext* ctx
-#    define GLEW_CONTEXT_ARG_VAR_INIT ctx
-#    define wglewGetContext() ctx
-#    define WGLEW_CONTEXT_ARG_DEF_INIT WGLEWContext* ctx
-#    define WGLEW_CONTEXT_ARG_DEF_LIST WGLEWContext* ctx
-#  else /* _WIN32 */
-#    define GLEW_CONTEXT_ARG_DEF_INIT void
-#    define GLEW_CONTEXT_ARG_VAR_INIT
-#    define glxewGetContext() ctx
-#    define GLXEW_CONTEXT_ARG_DEF_INIT void
-#    define GLXEW_CONTEXT_ARG_DEF_LIST GLXEWContext* ctx
-#  endif /* _WIN32 */
-#  define GLEW_CONTEXT_ARG_DEF_LIST GLEWContext* ctx
-#else /* GLEW_MX */
-#  define GLEW_CONTEXT_ARG_DEF_INIT void
-#  define GLEW_CONTEXT_ARG_VAR_INIT
-#  define GLEW_CONTEXT_ARG_DEF_LIST void
-#  define WGLEW_CONTEXT_ARG_DEF_INIT void
-#  define WGLEW_CONTEXT_ARG_DEF_LIST void
-#  define GLXEW_CONTEXT_ARG_DEF_INIT void
-#  define GLXEW_CONTEXT_ARG_DEF_LIST void
-#endif /* GLEW_MX */
-
-/*
- * Define glewGetProcAddress.
- */
-#if defined(_WIN32)
-#  define glewGetProcAddress(name) wglGetProcAddress((LPCSTR)name)
-#else
-#  if defined(__APPLE__)
-     extern void* NSGLGetProcAddress (const GLubyte* name);
-#    define glewGetProcAddress(name) NSGLGetProcAddress(name)
-#  else
-#    if defined(__sgi) || defined(__sun)
-       extern void* dlGetProcAddress (const GLubyte* name);
-#      define glewGetProcAddress(name) dlGetProcAddress(name)
-#    else /* __linux */
-#      define glewGetProcAddress(name) (*glXGetProcAddressARB)(name)
-#    endif
-#  endif
-#endif
-
-/*
- * GLEW, just like OpenGL or GLU, does not rely on the standard C library.
- * These functions implement the string processing functionality required in the library.
- */
-extern GLuint _glewStrLen (const GLubyte* s);
-extern GLuint _glewStrCLen (const GLubyte* s, GLubyte c);
-extern GLboolean _glewStrSame (const GLubyte* a, const GLubyte* b, GLuint n);
-extern GLboolean _glewStrSame1 (GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb);
-extern GLboolean _glewStrSame2 (GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb);
-extern GLboolean _glewStrSame3 (GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
-
-#endif /* __glew_utils_h__ */
diff --git a/src/other/glew/auto/src/glewinfo.rc b/src/other/glew/auto/src/glewinfo.rc
deleted file mode 100644
index 60b001d..0000000
--- a/src/other/glew/auto/src/glewinfo.rc
+++ /dev/null
@@ -1,57 +0,0 @@
-
-#include <windows.h>
-
-#ifdef GLEW_MX
-#  ifdef _DEBUG
-#    define FILENAME "glewinfo-mxd.exe"
-#  else
-#    define FILENAME "glewinfo-mx.exe"
-#  endif
-#else
-#  ifdef _DEBUG
-#    define FILENAME "glewinfod.exe"
-#  else
-#    define FILENAME "glewinfo.exe"
-#  endif
-#endif
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Version
-//
-VS_VERSION_INFO VERSIONINFO 
-FILEVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0
-PRODUCTVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0
-FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
-#ifdef _DEBUG
-FILEFLAGS VS_FF_DEBUG
-#else
-FILEFLAGS 0x0L
-#endif
-FILEOS VOS__WINDOWS32
-FILETYPE VFT_APP
-FILESUBTYPE VFT2_UNKNOWN
-BEGIN
-    BLOCK "StringFileInfo"
-    BEGIN
-        BLOCK "040904b0"
-        BEGIN
-            VALUE "Comments", "The OpenGL Extension Wrangler Library\r\nCopyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>\r\nCopyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>\r\nCopyright (C) 2002, Lev Povalahev\r\nAll rights reserved.\r\n \r\nRedistribution and use in source and binary forms, with or without \r\nmodification, are permitted provided that the following conditions are met:\r\n\r\n* Redistributions of source code must retain the above copyright notice, \r\n  this list of conditions and the following disclaimer.\r\n* Redistributions in binary form must reproduce the above copyright notice, \r\n  this list of conditions and the following disclaimer in the documentation \r\n  and/or other materials provided with the distribution.\r\n* The name of the author may be used to endorse or promote products \r\n  derived from this software without specific prior written permission.\r\n\r\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS' \r\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\nARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r\nLIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r\nCONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r\nSUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\nINTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\nCONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\nARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r\nTHE POSSIBILITY OF SUCH DAMAGE.\r\n\r\nLicense Applicability. Except to the extent portions of this file are\r\nmade subject to an alternative license as permitted in the SGI Free\r\nSoftware License B, Version 1.1 (the 'License'), the contents of this\r\nfile are subject only to the provisions of the License. You may not use\r\nthis file except in compliance with the License. You may obtain a copy\r\nof the License at Silicon Graphics, Inc., attn: Legal Services, 1600\r\nAmphitheatre Parkway, Mountain View, CA 94043-1351, or at:\r\n\r\nhttp://oss.sgi.com/projects/FreeB\r\n\r\nNote that, as provided in the License, the Software is distributed on an\r\n'AS IS' basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS\r\nDISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND\r\nCONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A\r\nPARTICULAR PURPOSE, AND NON-INFRINGEMENT.\r\n\r\nOriginal Code. The Original Code is: OpenGL Sample Implementation,\r\nVersion 1.2.1, released January 26, 2000, developed by Silicon Graphics,\r\nInc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.\r\nCopyright in any portions created by third parties is as indicated\r\nelsewhere herein. All Rights Reserved.\r\n\r\nAdditional Notice Provisions: This software was created using the\r\nOpenGL(R) version 1.2.1 Sample Implementation published by SGI, but has\r\nnot been independently verified as being compliant with the OpenGL(R)\r\nversion 1.2.1 Specification.\0"
-            VALUE "CompanyName", "\0"
-            VALUE "FileDescription", "Utility for verifying extension entry points\0"
-            VALUE "FileVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0"
-            VALUE "InternalName", "glewinfo\0"
-            VALUE "LegalCopyright", "© 2002-2008 Milan Ikits & Marcelo Magallon\0"
-            VALUE "LegalTrademarks", "\0"
-            VALUE "OriginalFilename", FILENAME "\0"
-            VALUE "PrivateBuild", "\0"
-            VALUE "ProductName", "The OpenGL Extension Wrangler Library\0"
-            VALUE "ProductVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0"
-            VALUE "SpecialBuild", "\0"
-        END
-    END
-    BLOCK "VarFileInfo"
-    BEGIN
-        VALUE "Translation", 0x409, 1200
-    END
-END
diff --git a/src/other/glew/auto/src/glewinfo_gl.c b/src/other/glew/auto/src/glewinfo_gl.c
deleted file mode 100644
index 9d7835d..0000000
--- a/src/other/glew/auto/src/glewinfo_gl.c
+++ /dev/null
@@ -1,7 +0,0 @@
-/* ------------------------------------------------------------------------ */
-
-static void glewInfo (void)
-{
-#ifdef GL_VERSION_1_1
-  _glewInfo_GL_VERSION_1_1();
-#endif /* GL_VERSION_1_1 */
diff --git a/src/other/glew/auto/src/glewinfo_glx.c b/src/other/glew/auto/src/glewinfo_glx.c
deleted file mode 100644
index 287d7e1..0000000
--- a/src/other/glew/auto/src/glewinfo_glx.c
+++ /dev/null
@@ -1,6 +0,0 @@
-}
-
-#else /* _UNIX */
-
-static void glxewInfo ()
-{
diff --git a/src/other/glew/auto/src/glewinfo_head.c b/src/other/glew/auto/src/glewinfo_head.c
deleted file mode 100644
index e1070c5..0000000
--- a/src/other/glew/auto/src/glewinfo_head.c
+++ /dev/null
@@ -1,77 +0,0 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <GL/glew.h>
-#if defined(_WIN32)
-#include <GL/wglew.h>
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-#include <GL/glxew.h>
-#endif
-
-static FILE* f;
-
-#ifdef GLEW_MX
-GLEWContext _glewctx;
-#define glewGetContext() (&_glewctx)
-#ifdef _WIN32
-WGLEWContext _wglewctx;
-#define wglewGetContext() (&_wglewctx)
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-GLXEWContext _glxewctx;
-#define glxewGetContext() (&_glxewctx)
-#endif
-#endif
-
-#if defined(_WIN32)
-GLboolean glewCreateContext (int* pixelformat);
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-GLboolean glewCreateContext (const char* display, int* visual);
-#else
-GLboolean glewCreateContext ();
-#endif
-
-#if defined(_WIN32) || !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-GLboolean glewParseArgs (int argc, char** argv, char** display, int* visual);
-#endif
-
-void glewDestroyContext ();
-
-/* ------------------------------------------------------------------------- */
-
-static void glewPrintExt (const char* name, GLboolean def1, GLboolean def2, GLboolean def3)
-{
-  unsigned int i;
-  fprintf(f, "\n%s:", name);
-  for (i=0; i<62-strlen(name); i++) fprintf(f, " ");
-  fprintf(f, "%s ", def1 ? "OK" : "MISSING");
-  if (def1 != def2)
-    fprintf(f, "[%s] ", def2 ? "OK" : "MISSING");
-  if (def1 != def3)
-    fprintf(f, "[%s]\n", def3 ? "OK" : "MISSING");
-  else
-    fprintf(f, "\n");
-  for (i=0; i<strlen(name)+1; i++) fprintf(f, "-");
-  fprintf(f, "\n");
-  fflush(f);
-}
-
-static void glewInfoFunc (const char* name, GLint undefined)
-{
-  unsigned int i;
-  fprintf(f, "  %s:", name);
-  for (i=0; i<60-strlen(name); i++) fprintf(f, " ");
-  fprintf(f, "%s\n", undefined ? "MISSING" : "OK");
-  fflush(f);
-}
-
-/* ----------------------------- GL_VERSION_1_1 ---------------------------- */
-
-#ifdef GL_VERSION_1_1
-
-static void _glewInfo_GL_VERSION_1_1 (void)
-{
-  glewPrintExt("GL_VERSION_1_1", GLEW_VERSION_1_1, GLEW_VERSION_1_1, GLEW_VERSION_1_1);
-}
-
-#endif /* GL_VERSION_1_1 */
-
diff --git a/src/other/glew/auto/src/glewinfo_tail.c b/src/other/glew/auto/src/glewinfo_tail.c
deleted file mode 100644
index f778e71..0000000
--- a/src/other/glew/auto/src/glewinfo_tail.c
+++ /dev/null
@@ -1,279 +0,0 @@
-}
-
-#endif /* _WIN32 */
-
-/* ------------------------------------------------------------------------ */
-
-#if defined(_WIN32) || !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-int main (int argc, char** argv)
-#else
-int main (void)
-#endif
-{
-  GLuint err;
-
-#if defined(_WIN32) || !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-  char* display = NULL;
-  int visual = -1;
-
-  if (glewParseArgs(argc-1, argv+1, &display, &visual))
-  {
-#if defined(_WIN32)
-    fprintf(stderr, "Usage: glewinfo [-pf <id>]\n");
-#else
-    fprintf(stderr, "Usage: glewinfo [-display <display>] [-visual <id>]\n");
-#endif
-    return 1;
-  }
-#endif
-
-#if defined(_WIN32)
-  if (GL_TRUE == glewCreateContext(&visual))
-#elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX)
-  if (GL_TRUE == glewCreateContext())
-#else
-  if (GL_TRUE == glewCreateContext(display, &visual))
-#endif
-  {
-    fprintf(stderr, "Error: glewCreateContext failed\n");
-    glewDestroyContext();
-    return 1;
-  }
-  glewExperimental = GL_TRUE;
-#ifdef GLEW_MX
-  err = glewContextInit(glewGetContext());
-#ifdef _WIN32
-  err = err || wglewContextInit(wglewGetContext());
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-  err = err || glxewContextInit(glxewGetContext());
-#endif
-
-#else
-  err = glewInit();
-#endif
-  if (GLEW_OK != err)
-  {
-    fprintf(stderr, "Error [main]: glewInit failed: %s\n", glewGetErrorString(err));
-    glewDestroyContext();
-    return 1;
-  }
-#if defined(_WIN32)
-  f = fopen("glewinfo.txt", "w");
-  if (f == NULL) f = stdout;
-#else
-  f = stdout;
-#endif
-  fprintf(f, "---------------------------\n");
-  fprintf(f, "    GLEW Extension Info\n");
-  fprintf(f, "---------------------------\n\n");
-  fprintf(f, "GLEW version %s\n", glewGetString(GLEW_VERSION));
-#if defined(_WIN32)
-  fprintf(f, "Reporting capabilities of pixelformat %d\n", visual);
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-  fprintf(f, "Reporting capabilities of display %s, visual 0x%x\n", 
-    display == NULL ? getenv("DISPLAY") : display, visual);
-#endif
-  fprintf(f, "Running on a %s from %s\n", 
-	  glGetString(GL_RENDERER), glGetString(GL_VENDOR));
-  fprintf(f, "OpenGL version %s is supported\n", glGetString(GL_VERSION));
-  glewInfo();
-#if defined(_WIN32)
-  wglewInfo();
-#else
-  glxewInfo();
-#endif
-  if (f != stdout) fclose(f);
-  glewDestroyContext();
-  return 0;
-}
-
-/* ------------------------------------------------------------------------ */
-
-#if defined(_WIN32) || !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-GLboolean glewParseArgs (int argc, char** argv, char** display, int* visual)
-{
-  int p = 0;
-  while (p < argc)
-  {
-#if defined(_WIN32)
-    if (!strcmp(argv[p], "-pf") || !strcmp(argv[p], "-pixelformat"))
-    {
-      if (++p >= argc) return GL_TRUE;
-      *display = 0;
-      *visual = strtol(argv[p++], NULL, 0);
-    }
-    else
-      return GL_TRUE;
-#else
-    if (!strcmp(argv[p], "-display"))
-    {
-      if (++p >= argc) return GL_TRUE;
-      *display = argv[p++];
-    }
-    else if (!strcmp(argv[p], "-visual"))
-    {
-      if (++p >= argc) return GL_TRUE;
-      *visual = (int)strtol(argv[p++], NULL, 0);
-    }
-    else
-      return GL_TRUE;
-#endif
-  }
-  return GL_FALSE;
-}
-#endif
-
-/* ------------------------------------------------------------------------ */
-
-#if defined(_WIN32)
-
-HWND wnd = NULL;
-HDC dc = NULL;
-HGLRC rc = NULL;
-
-GLboolean glewCreateContext (int* pixelformat)
-{
-  WNDCLASS wc;
-  PIXELFORMATDESCRIPTOR pfd;
-  /* register window class */
-  ZeroMemory(&wc, sizeof(WNDCLASS));
-  wc.hInstance = GetModuleHandle(NULL);
-  wc.lpfnWndProc = DefWindowProc;
-  wc.lpszClassName = "GLEW";
-  if (0 == RegisterClass(&wc)) return GL_TRUE;
-  /* create window */
-  wnd = CreateWindow("GLEW", "GLEW", 0, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, 
-                     CW_USEDEFAULT, NULL, NULL, GetModuleHandle(NULL), NULL);
-  if (NULL == wnd) return GL_TRUE;
-  /* get the device context */
-  dc = GetDC(wnd);
-  if (NULL == dc) return GL_TRUE;
-  /* find pixel format */
-  ZeroMemory(&pfd, sizeof(PIXELFORMATDESCRIPTOR));
-  if (*pixelformat == -1) /* find default */
-  {
-    pfd.nSize = sizeof(PIXELFORMATDESCRIPTOR);
-    pfd.nVersion = 1;
-    pfd.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL;
-    *pixelformat = ChoosePixelFormat(dc, &pfd);
-    if (*pixelformat == 0) return GL_TRUE;
-  }
-  /* set the pixel format for the dc */
-  if (FALSE == SetPixelFormat(dc, *pixelformat, &pfd)) return GL_TRUE;
-  /* create rendering context */
-  rc = wglCreateContext(dc);
-  if (NULL == rc) return GL_TRUE;
-  if (FALSE == wglMakeCurrent(dc, rc)) return GL_TRUE;
-  return GL_FALSE;
-}
-
-void glewDestroyContext ()
-{
-  if (NULL != rc) wglMakeCurrent(NULL, NULL);
-  if (NULL != rc) wglDeleteContext(rc);
-  if (NULL != wnd && NULL != dc) ReleaseDC(wnd, dc);
-  if (NULL != wnd) DestroyWindow(wnd);
-  UnregisterClass("GLEW", GetModuleHandle(NULL));
-}
-
-/* ------------------------------------------------------------------------ */
-
-#elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX)
-
-#include <AGL/agl.h>
-
-AGLContext ctx, octx;
-
-GLboolean glewCreateContext ()
-{
-  int attrib[] = { AGL_RGBA, AGL_NONE };
-  AGLPixelFormat pf;
-  /*int major, minor;
-  SetPortWindowPort(wnd);
-  aglGetVersion(&major, &minor);
-  fprintf(stderr, "GL %d.%d\n", major, minor);*/
-  pf = aglChoosePixelFormat(NULL, 0, attrib);
-  if (NULL == pf) return GL_TRUE;
-  ctx = aglCreateContext(pf, NULL);
-  if (NULL == ctx || AGL_NO_ERROR != aglGetError()) return GL_TRUE;
-  aglDestroyPixelFormat(pf);
-  /*aglSetDrawable(ctx, GetWindowPort(wnd));*/
-  octx = aglGetCurrentContext();
-  if (GL_FALSE == aglSetCurrentContext(ctx)) return GL_TRUE;
-  return GL_FALSE;
-}
-
-void glewDestroyContext ()
-{
-  aglSetCurrentContext(octx);
-  if (NULL != ctx) aglDestroyContext(ctx);
-}
-
-/* ------------------------------------------------------------------------ */
-
-#else /* __UNIX || (__APPLE__ && GLEW_APPLE_GLX) */
-
-Display* dpy = NULL;
-XVisualInfo* vi = NULL;
-XVisualInfo* vis = NULL;
-GLXContext ctx = NULL;
-Window wnd = 0;
-Colormap cmap = 0;
-
-GLboolean glewCreateContext (const char* display, int* visual)
-{
-  int attrib[] = { GLX_RGBA, GLX_DOUBLEBUFFER, None };
-  int erb, evb;
-  XSetWindowAttributes swa;
-  /* open display */
-  dpy = XOpenDisplay(display);
-  if (NULL == dpy) return GL_TRUE;
-  /* query for glx */
-  if (!glXQueryExtension(dpy, &erb, &evb)) return GL_TRUE;
-  /* choose visual */
-  if (*visual == -1)
-  {
-    vi = glXChooseVisual(dpy, DefaultScreen(dpy), attrib);
-    if (NULL == vi) return GL_TRUE;
-    *visual = (int)XVisualIDFromVisual(vi->visual);
-  }
-  else
-  {
-    int n_vis, i;
-    vis = XGetVisualInfo(dpy, 0, NULL, &n_vis);
-    for (i=0; i<n_vis; i++)
-    {
-      if ((int)XVisualIDFromVisual(vis[i].visual) == *visual)
-        vi = &vis[i];
-    }
-    if (vi == NULL) return GL_TRUE;
-  }
-  /* create context */
-  ctx = glXCreateContext(dpy, vi, None, True);
-  if (NULL == ctx) return GL_TRUE;
-  /* create window */
-  /*wnd = XCreateSimpleWindow(dpy, RootWindow(dpy, vi->screen), 0, 0, 1, 1, 1, 0, 0);*/
-  cmap = XCreateColormap(dpy, RootWindow(dpy, vi->screen), vi->visual, AllocNone);
-  swa.border_pixel = 0;
-  swa.colormap = cmap;
-  wnd = XCreateWindow(dpy, RootWindow(dpy, vi->screen), 
-                      0, 0, 1, 1, 0, vi->depth, InputOutput, vi->visual, 
-                      CWBorderPixel | CWColormap, &swa);
-  /* make context current */
-  if (!glXMakeCurrent(dpy, wnd, ctx)) return GL_TRUE;
-  return GL_FALSE;
-}
-
-void glewDestroyContext ()
-{
-  if (NULL != dpy && NULL != ctx) glXDestroyContext(dpy, ctx);
-  if (NULL != dpy && 0 != wnd) XDestroyWindow(dpy, wnd);
-  if (NULL != dpy && 0 != cmap) XFreeColormap(dpy, cmap);
-  if (NULL != vis)
-    XFree(vis);
-  else if (NULL != vi)
-    XFree(vi);
-  if (NULL != dpy) XCloseDisplay(dpy);
-}
-
-#endif /* __UNIX || (__APPLE__ && GLEW_APPLE_GLX) */
diff --git a/src/other/glew/auto/src/glewinfo_wgl.c b/src/other/glew/auto/src/glewinfo_wgl.c
deleted file mode 100644
index 61f101a..0000000
--- a/src/other/glew/auto/src/glewinfo_wgl.c
+++ /dev/null
@@ -1,8 +0,0 @@
-}
-
-/* ------------------------------------------------------------------------ */
-
-#ifdef _WIN32
-
-static void wglewInfo ()
-{
diff --git a/src/other/glew/auto/src/glxew_head.h b/src/other/glew/auto/src/glxew_head.h
deleted file mode 100644
index 16fdfa4..0000000
--- a/src/other/glew/auto/src/glxew_head.h
+++ /dev/null
@@ -1,106 +0,0 @@
-#ifndef __glxew_h__
-#define __glxew_h__
-#define __GLXEW_H__
-
-#ifdef __glxext_h_
-#error glxext.h included before glxew.h
-#endif
-
-#if defined(GLX_H) || defined(__GLX_glx_h__) || defined(__glx_h__)
-#error glx.h included before glxew.h
-#endif
-
-#define __glxext_h_
-
-#define GLX_H
-#define __GLX_glx_h__
-#define __glx_h__
-
-#include <X11/Xlib.h>
-#include <X11/Xutil.h>
-#include <X11/Xmd.h>
-#include <GL/glew.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* ---------------------------- GLX_VERSION_1_0 --------------------------- */
-
-#ifndef GLX_VERSION_1_0
-#define GLX_VERSION_1_0 1
-
-#define GLX_USE_GL 1
-#define GLX_BUFFER_SIZE 2
-#define GLX_LEVEL 3
-#define GLX_RGBA 4
-#define GLX_DOUBLEBUFFER 5
-#define GLX_STEREO 6
-#define GLX_AUX_BUFFERS 7
-#define GLX_RED_SIZE 8
-#define GLX_GREEN_SIZE 9
-#define GLX_BLUE_SIZE 10
-#define GLX_ALPHA_SIZE 11
-#define GLX_DEPTH_SIZE 12
-#define GLX_STENCIL_SIZE 13
-#define GLX_ACCUM_RED_SIZE 14
-#define GLX_ACCUM_GREEN_SIZE 15
-#define GLX_ACCUM_BLUE_SIZE 16
-#define GLX_ACCUM_ALPHA_SIZE 17
-#define GLX_BAD_SCREEN 1
-#define GLX_BAD_ATTRIBUTE 2
-#define GLX_NO_EXTENSION 3
-#define GLX_BAD_VISUAL 4
-#define GLX_BAD_CONTEXT 5
-#define GLX_BAD_VALUE 6
-#define GLX_BAD_ENUM 7
-
-typedef XID GLXDrawable;
-typedef XID GLXPixmap;
-#ifdef __sun
-typedef struct __glXContextRec *GLXContext;
-#else
-typedef struct __GLXcontextRec *GLXContext;
-#endif
-
-typedef unsigned int GLXVideoDeviceNV; 
-
-extern Bool glXQueryExtension (Display *dpy, int *errorBase, int *eventBase);
-extern Bool glXQueryVersion (Display *dpy, int *major, int *minor);
-extern int glXGetConfig (Display *dpy, XVisualInfo *vis, int attrib, int *value);
-extern XVisualInfo* glXChooseVisual (Display *dpy, int screen, int *attribList);
-extern GLXPixmap glXCreateGLXPixmap (Display *dpy, XVisualInfo *vis, Pixmap pixmap);
-extern void glXDestroyGLXPixmap (Display *dpy, GLXPixmap pix);
-extern GLXContext glXCreateContext (Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct);
-extern void glXDestroyContext (Display *dpy, GLXContext ctx);
-extern Bool glXIsDirect (Display *dpy, GLXContext ctx);
-extern void glXCopyContext (Display *dpy, GLXContext src, GLXContext dst, GLulong mask);
-extern Bool glXMakeCurrent (Display *dpy, GLXDrawable drawable, GLXContext ctx);
-extern GLXContext glXGetCurrentContext (void);
-extern GLXDrawable glXGetCurrentDrawable (void);
-extern void glXWaitGL (void);
-extern void glXWaitX (void);
-extern void glXSwapBuffers (Display *dpy, GLXDrawable drawable);
-extern void glXUseXFont (Font font, int first, int count, int listBase);
-
-#define GLXEW_VERSION_1_0 GLXEW_GET_VAR(__GLXEW_VERSION_1_0)
-
-#endif /* GLX_VERSION_1_0 */
-
-/* ---------------------------- GLX_VERSION_1_1 --------------------------- */
-
-#ifndef GLX_VERSION_1_1
-#define GLX_VERSION_1_1
-
-#define GLX_VENDOR 0x1
-#define GLX_VERSION 0x2
-#define GLX_EXTENSIONS 0x3
-
-extern const char* glXQueryExtensionsString (Display *dpy, int screen);
-extern const char* glXGetClientString (Display *dpy, int name);
-extern const char* glXQueryServerString (Display *dpy, int screen, int name);
-
-#define GLXEW_VERSION_1_1 GLXEW_GET_VAR(__GLXEW_VERSION_1_1)
-
-#endif /* GLX_VERSION_1_1 */
-
diff --git a/src/other/glew/auto/src/glxew_tail.h b/src/other/glew/auto/src/glxew_tail.h
deleted file mode 100644
index 702eb94..0000000
--- a/src/other/glew/auto/src/glxew_tail.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* ------------------------------------------------------------------------ */
-
-#ifdef GLEW_MX
-
-typedef struct GLXEWContextStruct GLXEWContext;
-extern GLenum glxewContextInit (GLXEWContext* ctx);
-extern GLboolean glxewContextIsSupported (GLXEWContext* ctx, const char* name);
-
-#define glxewInit() glxewContextInit(glxewGetContext())
-#define glxewIsSupported(x) glxewContextIsSupported(glxewGetContext(), x)
-
-#define GLXEW_GET_VAR(x) (*(const GLboolean*)&(glxewGetContext()->x))
-#define GLXEW_GET_FUN(x) x
-
-#else /* GLEW_MX */
-
-#define GLXEW_GET_VAR(x) (*(const GLboolean*)&x)
-#define GLXEW_GET_FUN(x) x
-
-extern GLboolean glxewIsSupported (const char* name);
-
-#endif /* GLEW_MX */
-
-extern GLboolean glxewGetExtension (const char* name);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __glxew_h__ */
diff --git a/src/other/glew/auto/src/header.html b/src/other/glew/auto/src/header.html
deleted file mode 100644
index c33dd38..0000000
--- a/src/other/glew/auto/src/header.html
+++ /dev/null
@@ -1,98 +0,0 @@
-<!-- begin header.html -->
-<!--
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
--->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html/4/loose.dtd">
-<!--  <img src="new.png" height="12" alt="NEW!"> -->
-<html>
-<head>
-<title>GLEW: The OpenGL Extension Wrangler Library</title>
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> 
-<link href="glew.css" type="text/css" rel="stylesheet">
-</head>
-<body bgcolor="#fff0d0">
-<table border="0" width="100%" cellpadding="12" cellspacing="8" style="height:100%">
-<tr>
-<td bgcolor="#ffffff" align="left" valign="top" width="200">
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr>
-<td valign="top">
-
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">1.5.4</a></i></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center">
-<table border="0" cellpadding="0" cellspacing="0" align="center">
-<tr><td align="center"><a href="index.html">Download</a></td></tr>
-<tr><td align="center"><a href="install.html">Installation</a></td></tr>
-<tr><td align="center"><a href="basic.html">Basic Usage</a></td></tr>
-<tr><td align="center"><a href="advanced.html">Advanced Usage</a></td></tr>
-<tr><td align="center"><a href="credits.html">Credits & Copyright</a></td></tr>
-<tr><td align="center"><a href="log.html">Change Log</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/projects/glew/">Project Page</a></td></tr>
-<tr><td align="center"><a href="https://sourceforge.net/mail/?group_id=67586">Mailing Lists</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/tracker/?group_id=67586">Bug Tracker</a></td></tr>
-</table>
-<tr><td align="center"><br></tr>
-</table>
-</td>
-</tr>
-<tr>
-
-<td valign="bottom">
-<table border="0" width="100%" cellpadding="5" cellspacing="0" align="left">
-<tr><td align="center"><i>Last Update: 04-21-10</i></td></tr>
-<tr><td align="center">
-<a href="http://www.opengl.org"> <img src="./ogl_sm.jpg" width="68"
-height="35" border="0" alt="OpenGL Logo"></a>
-<a href="http://sourceforge.net"> <img
-src="http://sourceforge.net/sflogo.php?group_id=67586&type=1"
-width="88" height="31" border="0" alt="SourceForge Logo"></a>
-</td>
-</tr>
-<!--- <tr><td align="center"><a
-href="http://sourceforge.net/donate/index.php?group_id=67586"><img
-src="http://images.sourceforge.net/images/project-support.jpg"
-width="88" height="32" border="0" alt="Support This Project"></a></td></tr> -->
-</table>
-</td>
-</tr>
-</table>
-</td>
-
-<td bgcolor="#ffffff" align="left" valign="top">
-
-<h1>The OpenGL Extension Wrangler Library</h1>
-
-<!-- end header.html -->
-
-
diff --git a/src/other/glew/auto/src/khronos_license.h b/src/other/glew/auto/src/khronos_license.h
deleted file mode 100644
index 420cd72..0000000
--- a/src/other/glew/auto/src/khronos_license.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-** Copyright (c) 2007 The Khronos Group Inc.
-** 
-** Permission is hereby granted, free of charge, to any person obtaining a
-** copy of this software and/or associated documentation files (the
-** "Materials"), to deal in the Materials without restriction, including
-** without limitation the rights to use, copy, modify, merge, publish,
-** distribute, sublicense, and/or sell copies of the Materials, and to
-** permit persons to whom the Materials are furnished to do so, subject to
-** the following conditions:
-** 
-** The above copyright notice and this permission notice shall be included
-** in all copies or substantial portions of the Materials.
-** 
-** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
-*/
-
diff --git a/src/other/glew/auto/src/mesa_license.h b/src/other/glew/auto/src/mesa_license.h
deleted file mode 100644
index 3350cca..0000000
--- a/src/other/glew/auto/src/mesa_license.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  7.0
- *
- * Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
diff --git a/src/other/glew/auto/src/template.html b/src/other/glew/auto/src/template.html
deleted file mode 100644
index 88d3e44..0000000
--- a/src/other/glew/auto/src/template.html
+++ /dev/null
@@ -1,94 +0,0 @@
-<!--
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
--->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html/4/loose.dtd">
-<!--  <img src="new.png" height="12" alt="NEW!"> -->
-<html>
-<head>
-<title>
-GLEW: The OpenGL Extension Wrangler Library
-</title>
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> 
-<link href="glew.css" type="text/css" rel="stylesheet">
-</head>
-<body bgcolor="#fff0d0">
-<table border="0" width="100%" cellpadding="12" cellspacing="8" style="height:100%">
-<tr>
-<td bgcolor="#ffffff" align="left" valign="top" width="200">
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr>
-<td valign="top">
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=637800">1.5.1</a></i></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center">
-<table border="0" cellpadding="0" cellspacing="0" align="center">
-<tr><td align="center"><a href="index.html">Download</a></td></tr>
-<tr><td align="center"><a href="install.html">Installation</a></td></tr>
-<tr><td align="center"><a href="basic.html">Basic Usage</a></td></tr>
-<tr><td align="center"><a href="advanced.html">Advanced Usage</a></td></tr>
-<tr><td align="center"><a href="credits.html">Credits & Copyright</a></td></tr>
-<tr><td align="center"><a href="log.html">Change Log</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/projects/glew/">Project Page</a></td></tr>
-<tr><td align="center"><a href="https://sourceforge.net/mail/?group_id=67586">Mailing Lists</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/tracker/?group_id=67586">Bug Tracker</a></td></tr>
-</table>
-<tr><td align="center"><br></tr>
-</table>
-</td>
-</tr>
-<tr>
-<td valign="bottom">
-<table border="0" width="100%" cellpadding="5" cellspacing="0" align="left">
-<tr><td align="center"><i>Last Update: 11-03-08</i></td></tr>
-<tr><td align="center">
-<a href="http://www.opengl.org"> <img src="./ogl_sm.jpg" width="68"
-height="35" border="0" alt="OpenGL Logo"></a>
-<a href="http://sourceforge.net"> <img
-src="http://sourceforge.net/sflogo.php?group_id=67586&type=1"
-width="88" height="31" border="0" alt="SourceForge Logo"></a>
-</td>
-</tr>
-<tr><td align="center"><a
-href="http://sourceforge.net/donate/index.php?group_id=67586"><img
-src="http://images.sourceforge.net/images/project-support.jpg"
-width="88" height="32" border="0" alt="Support This Project"></a></td></tr>
-</table>
-</td>
-</tr>
-</table>
-</td>
-
-<td bgcolor="#ffffff" align="left" valign="top">
-
-<h1>The OpenGL Extension Wrangler Library</h1>
-
diff --git a/src/other/glew/auto/src/visualinfo.rc b/src/other/glew/auto/src/visualinfo.rc
deleted file mode 100644
index 2373944..0000000
--- a/src/other/glew/auto/src/visualinfo.rc
+++ /dev/null
@@ -1,57 +0,0 @@
-
-#include <windows.h>
-
-#ifdef GLEW_MX
-#  ifdef _DEBUG
-#    define FILENAME "visualinfo-mxd.exe"
-#  else
-#    define FILENAME "visualinfo-mx.exe"
-#  endif
-#else
-#  ifdef _DEBUG
-#    define FILENAME "visualinfod.exe"
-#  else
-#    define FILENAME "visualinfo.exe"
-#  endif
-#endif
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Version
-//
-VS_VERSION_INFO VERSIONINFO 
-FILEVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0
-PRODUCTVERSION GLEW_MAJOR, GLEW_MINOR, GLEW_MICRO, 0
-FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
-#ifdef _DEBUG
-FILEFLAGS VS_FF_DEBUG
-#else
-FILEFLAGS 0x0L
-#endif
-FILEOS VOS__WINDOWS32
-FILETYPE VFT_APP
-FILESUBTYPE VFT2_UNKNOWN
-BEGIN
-    BLOCK "StringFileInfo"
-    BEGIN
-        BLOCK "040904b0"
-        BEGIN
-            VALUE "Comments", "The OpenGL Extension Wrangler Library\r\nCopyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>\r\nCopyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>\r\nCopyright (C) 2002, Lev Povalahev\r\nAll rights reserved.\r\n \r\nRedistribution and use in source and binary forms, with or without \r\nmodification, are permitted provided that the following conditions are met:\r\n\r\n* Redistributions of source code must retain the above copyright notice, \r\n  this list of conditions and the following disclaimer.\r\n* Redistributions in binary form must reproduce the above copyright notice, \r\n  this list of conditions and the following disclaimer in the documentation \r\n  and/or other materials provided with the distribution.\r\n* The name of the author may be used to endorse or promote products \r\n  derived from this software without specific prior written permission.\r\n\r\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS' \r\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\nARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r\nLIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r\nCONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r\nSUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\nINTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\nCONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\nARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r\nTHE POSSIBILITY OF SUCH DAMAGE.\r\n\r\nLicense Applicability. Except to the extent portions of this file are\r\nmade subject to an alternative license as permitted in the SGI Free\r\nSoftware License B, Version 1.1 (the 'License'), the contents of this\r\nfile are subject only to the provisions of the License. You may not use\r\nthis file except in compliance with the License. You may obtain a copy\r\nof the License at Silicon Graphics, Inc., attn: Legal Services, 1600\r\nAmphitheatre Parkway, Mountain View, CA 94043-1351, or at:\r\n\r\nhttp://oss.sgi.com/projects/FreeB\r\n\r\nNote that, as provided in the License, the Software is distributed on an\r\n'AS IS' basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS\r\nDISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND\r\nCONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A\r\nPARTICULAR PURPOSE, AND NON-INFRINGEMENT.\r\n\r\nOriginal Code. The Original Code is: OpenGL Sample Implementation,\r\nVersion 1.2.1, released January 26, 2000, developed by Silicon Graphics,\r\nInc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.\r\nCopyright in any portions created by third parties is as indicated\r\nelsewhere herein. All Rights Reserved.\r\n\r\nAdditional Notice Provisions: This software was created using the\r\nOpenGL(R) version 1.2.1 Sample Implementation published by SGI, but has\r\nnot been independently verified as being compliant with the OpenGL(R)\r\nversion 1.2.1 Specification.\0"
-            VALUE "CompanyName", "\0"
-            VALUE "FileDescription", "Utility for listing pixelformat capabilities\0"
-            VALUE "FileVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0"
-            VALUE "InternalName", "visualinfo\0"
-            VALUE "LegalCopyright", "© 2002-2008 Milan Ikits & Marcelo Magallon\0"
-            VALUE "LegalTrademarks", "\0"
-            VALUE "OriginalFilename", FILENAME "\0"
-            VALUE "PrivateBuild", "\0"
-            VALUE "ProductName", "The OpenGL Extension Wrangler Library\0"
-            VALUE "ProductVersion", "GLEW_MAJOR,GLEW_MINOR,GLEW_MICRO,0\0"
-            VALUE "SpecialBuild", "\0"
-        END
-    END
-    BLOCK "VarFileInfo"
-    BEGIN
-        VALUE "Translation", 0x409, 1200
-    END
-END
diff --git a/src/other/glew/auto/src/wglew_head.h b/src/other/glew/auto/src/wglew_head.h
deleted file mode 100644
index df88503..0000000
--- a/src/other/glew/auto/src/wglew_head.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#ifndef __wglew_h__
-#define __wglew_h__
-#define __WGLEW_H__
-
-#ifdef __wglext_h_
-#error wglext.h included before wglew.h
-#endif
-
-#define __wglext_h_
-
-#if !defined(WINAPI)
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN 1
-#  endif
-#include <windows.h>
-#  undef WIN32_LEAN_AND_MEAN
-#endif
-
-/*
- * GLEW_STATIC needs to be set when using the static version.
- * GLEW_BUILD is set when building the DLL version.
- */
-#ifdef GLEW_STATIC
-#  define GLEWAPI extern
-#else
-#  ifdef GLEW_BUILD
-#    define GLEWAPI extern __declspec(dllexport)
-#  else
-#    define GLEWAPI extern __declspec(dllimport)
-#  endif
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
diff --git a/src/other/glew/auto/src/wglew_tail.h b/src/other/glew/auto/src/wglew_tail.h
deleted file mode 100644
index 7bb9bf8..0000000
--- a/src/other/glew/auto/src/wglew_tail.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/* ------------------------------------------------------------------------- */
-
-#ifdef GLEW_MX
-
-typedef struct WGLEWContextStruct WGLEWContext;
-GLEWAPI GLenum wglewContextInit (WGLEWContext* ctx);
-GLEWAPI GLboolean wglewContextIsSupported (WGLEWContext* ctx, const char* name);
-
-#define wglewInit() wglewContextInit(wglewGetContext())
-#define wglewIsSupported(x) wglewContextIsSupported(wglewGetContext(), x)
-
-#define WGLEW_GET_VAR(x) (*(const GLboolean*)&(wglewGetContext()->x))
-#define WGLEW_GET_FUN(x) wglewGetContext()->x
-
-#else /* GLEW_MX */
-
-#define WGLEW_GET_VAR(x) (*(const GLboolean*)&x)
-#define WGLEW_GET_FUN(x) x
-
-GLEWAPI GLboolean wglewIsSupported (const char* name);
-
-#endif /* GLEW_MX */
-
-GLEWAPI GLboolean wglewGetExtension (const char* name);
-
-#ifdef __cplusplus
-}
-#endif
-
-#undef GLEWAPI
-
-#endif /* __wglew_h__ */
diff --git a/src/other/glew/build/vc6/Makefile b/src/other/glew/build/vc6/Makefile
deleted file mode 100644
index 9f0ab41..0000000
--- a/src/other/glew/build/vc6/Makefile
+++ /dev/null
@@ -1,28 +0,0 @@
-MSDEV := msdev
-RM := rm -rf
-
-default:
-	$(MSDEV) glew.dsw /make \
-	"glew_static - Win32 Release" \
-	"glew_shared - Win32 Release" \
-	"glewinfo - Win32 Release" \
-	"visualinfo - Win32 Release" /build
-
-mx:
-	$(MSDEV) glew.dsw /make \
-	"glew_static - Win32 Release MX" \
-	"glew_shared - Win32 Release MX" \
-	"glewinfo - Win32 Release MX" \
-	"visualinfo - Win32 Release MX" /build
-
-debug:
-	$(MSDEV) glew.dsw /make \
-	"glew_static - Win32 Debug" \
-	"glew_shared - Win32 Debug" \
-	"glewinfo - Win32 Debug" \
-	"visualinfo - Win32 Debug" /build
-
-
-clean:
-	$(MSDEV) glew.dsw /make all /clean
-	$(RM) static shared *.plg *.ncb *.opt
diff --git a/src/other/glew/build/vc6/glew.dsw b/src/other/glew/build/vc6/glew.dsw
deleted file mode 100644
index cd9a35b..0000000
--- a/src/other/glew/build/vc6/glew.dsw
+++ /dev/null
@@ -1,71 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "glew_shared"=.\glew_shared.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "glew_static"=.\glew_static.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "glewinfo"=.\glewinfo.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name glew_static
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Project: "visualinfo"=.\visualinfo.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name glew_static
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
diff --git a/src/other/glew/build/vc6/glew.rc b/src/other/glew/build/vc6/glew.rc
deleted file mode 100644
index a806f71..0000000
--- a/src/other/glew/build/vc6/glew.rc
+++ /dev/null
@@ -1,77 +0,0 @@
-
-#include <windows.h>
-
-#ifdef GLEW_MX
-#  ifdef GLEW_STATIC
-#    ifdef _DEBUG
-#      define FILENAME "glew32mxsd.dll"
-#    else
-#      define FILENAME "glew32mxs.dll"
-#    endif
-#  else
-#    ifdef _DEBUG
-#      define FILENAME "glew32mxd.dll"
-#    else
-#      define FILENAME "glew32mx.dll"
-#    endif
-#  endif
-#else
-#  ifdef GLEW_STATIC
-#    ifdef _DEBUG
-#      define FILENAME "glew32sd.dll"
-#    else
-#      define FILENAME "glew32s.dll"
-#    endif
-#  else
-#    ifdef _DEBUG
-#      define FILENAME "glew32d.dll"
-#    else
-#      define FILENAME "glew32.dll"
-#    endif
-#  endif
-#endif
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Version
-//
-VS_VERSION_INFO VERSIONINFO 
-FILEVERSION 1, 5, 4, 0
-PRODUCTVERSION 1, 5, 4, 0
-FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
-#ifdef _DEBUG
-FILEFLAGS VS_FF_DEBUG
-#else
-FILEFLAGS 0x0L
-#endif
-FILEOS VOS__WINDOWS32
-#ifdef GLEW_STATIC
-FILETYPE VFT_STATIC_LIB
-#else
-FILETYPE VFT_DLL
-#endif
-FILESUBTYPE VFT2_UNKNOWN
-BEGIN
-    BLOCK "StringFileInfo"
-    BEGIN
-        BLOCK "040904b0"
-        BEGIN
-            VALUE "Comments", "The OpenGL Extension Wrangler Library\r\nCopyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>\r\nCopyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>\r\nCopyright (C) 2002, Lev Povalahev\r\nAll rights reserved.\r\n\r\nRedistribution and use in source and binary forms, with or without \r\nmodification, are permitted provided that the following conditions are met:\r\n\r\n* Redistributions of source code must retain the above copyright notice, \r\n  this list of conditions and the following disclaimer.\r\n* Redistributions in binary form must reproduce the above copyright notice, \r\n  this list of conditions and the following disclaimer in the documentation \r\n  and/or other materials provided with the distribution.\r\n* The name of the author may be used to endorse or promote products \r\n  derived from this software without specific prior written permission.\r\n\r\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ''AS IS'' \r\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\nARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r\nLIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r\nCONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r\nSUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\nINTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\nCONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\nARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r\nTHE POSSIBILITY OF SUCH DAMAGE.\r\n\r\n\r\nMesa 3-D graphics library\r\n\r\nVersion:  7.0\r\n\r\nCopyright (C) 1999-2007  Brian Paul   All Rights Reserved.\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a\r\ncopy of this software and associated documentation files (the ''Software''),\r\nto deal in the Software without restriction, including without limitation\r\nthe rights to use, copy, modify, merge, publish, distribute, sublicense,\r\nand/or sell copies of the Software, and to permit persons to whom the\r\nSoftware is furnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included\r\nin all copies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS\r\nOR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL\r\nBRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN\r\nAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r\nCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r\n\r\n\r\nCopyright (c) 2007 The Khronos Group Inc.\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a\r\ncopy of this software and/or associated documentation files (the\r\n''Materials''), to deal in the Materials without restriction, including\r\nwithout limitation the rights to use, copy, modify, merge, publish,\r\ndistribute, sublicense, and/or sell copies of the Materials, and to\r\npermit persons to whom the Materials are furnished to do so, subject to\r\nthe following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included\r\nin all copies or substantial portions of the Materials.\r\n\r\nTHE MATERIALS ARE PROVIDED ''AS IS'', WITHOUT WARRANTY OF ANY KIND,\r\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r\nMATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.\0"
-            VALUE "CompanyName", "\0"
-            VALUE "FileDescription", "The OpenGL Extension Wrangler Library\0"
-            VALUE "FileVersion", "1,5,4,0\0"
-            VALUE "InternalName", "GLEW\0"
-            VALUE "LegalCopyright", "© 2002-2008 Milan Ikits & Marcelo Magallon\0"
-            VALUE "LegalTrademarks", "\0"
-            VALUE "OriginalFilename", FILENAME "\0"
-            VALUE "PrivateBuild", "\0"
-            VALUE "ProductName", "The OpenGL Extension Wrangler Library\0"
-            VALUE "ProductVersion", "1,5,4,0\0"
-            VALUE "SpecialBuild", "\0"
-        END
-    END
-    BLOCK "VarFileInfo"
-    BEGIN
-        VALUE "Translation", 0x409, 1200
-    END
-END
diff --git a/src/other/glew/build/vc6/glew.sln b/src/other/glew/build/vc6/glew.sln
deleted file mode 100644
index 085d663..0000000
--- a/src/other/glew/build/vc6/glew.sln
+++ /dev/null
@@ -1,47 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glew_shared", "glew_shared.vcproj", "{ECBE486B-F274-4180-82B7-9615747F1D82}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glew_static", "glew_static.vcproj", "{6C4DBDEF-A58A-452B-9155-6CB07D58D1BA}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glewinfo", "glewinfo.vcproj", "{C0D56707-0E16-4602-843F-4CF1BB009B10}"
-	ProjectSection(ProjectDependencies) = postProject
-		{6C4DBDEF-A58A-452B-9155-6CB07D58D1BA} = {6C4DBDEF-A58A-452B-9155-6CB07D58D1BA}
-	EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "visualinfo", "visualinfo.vcproj", "{0F39E9EF-F5E8-4AE5-BB3D-1F38F4D449EC}"
-	ProjectSection(ProjectDependencies) = postProject
-		{6C4DBDEF-A58A-452B-9155-6CB07D58D1BA} = {6C4DBDEF-A58A-452B-9155-6CB07D58D1BA}
-	EndProjectSection
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug MX|Win32 = Debug MX|Win32
-		Debug|Win32 = Debug|Win32
-		Release MX|Win32 = Release MX|Win32
-		Release|Win32 = Release|Win32
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-
-		{ECBE486B-F274-4180-82B7-9615747F1D82}.Debug|Win32.ActiveCfg = Debug|Win32
-		{ECBE486B-F274-4180-82B7-9615747F1D82}.Debug|Win32.Build.0 = Debug|Win32
-		{ECBE486B-F274-4180-82B7-9615747F1D82}.Release|Win32.ActiveCfg = Release|Win32
-		{ECBE486B-F274-4180-82B7-9615747F1D82}.Release|Win32.Build.0 = Release|Win32
-		{6C4DBDEF-A58A-452B-9155-6CB07D58D1BA}.Debug|Win32.ActiveCfg = Debug|Win32
-		{6C4DBDEF-A58A-452B-9155-6CB07D58D1BA}.Debug|Win32.Build.0 = Debug|Win32
-		{6C4DBDEF-A58A-452B-9155-6CB07D58D1BA}.Release|Win32.ActiveCfg = Release|Win32
-		{6C4DBDEF-A58A-452B-9155-6CB07D58D1BA}.Release|Win32.Build.0 = Release|Win32
-		{C0D56707-0E16-4602-843F-4CF1BB009B10}.Debug|Win32.ActiveCfg = Debug|Win32
-		{C0D56707-0E16-4602-843F-4CF1BB009B10}.Debug|Win32.Build.0 = Debug|Win32
-		{C0D56707-0E16-4602-843F-4CF1BB009B10}.Release|Win32.ActiveCfg = Release|Win32
-		{C0D56707-0E16-4602-843F-4CF1BB009B10}.Release|Win32.Build.0 = Release|Win32
-		{0F39E9EF-F5E8-4AE5-BB3D-1F38F4D449EC}.Debug|Win32.ActiveCfg = Debug|Win32
-		{0F39E9EF-F5E8-4AE5-BB3D-1F38F4D449EC}.Debug|Win32.Build.0 = Debug|Win32
-		{0F39E9EF-F5E8-4AE5-BB3D-1F38F4D449EC}.Release|Win32.ActiveCfg = Release|Win32
-		{0F39E9EF-F5E8-4AE5-BB3D-1F38F4D449EC}.Release|Win32.Build.0 = Release|Win32
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal
diff --git a/src/other/glew/build/vc6/glew_shared.dsp b/src/other/glew/build/vc6/glew_shared.dsp
deleted file mode 100644
index 9368704..0000000
--- a/src/other/glew/build/vc6/glew_shared.dsp
+++ /dev/null
@@ -1,184 +0,0 @@
-# Microsoft Developer Studio Project File - Name="glew_shared" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
-
-CFG=glew_shared - Win32 Debug MX
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "glew_shared.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "glew_shared.mak" CFG="glew_shared - Win32 Debug MX"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "glew_shared - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "glew_shared - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "glew_shared - Win32 Debug MX" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "glew_shared - Win32 Release MX" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "glew_shared - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "../../lib"
-# PROP Intermediate_Dir "shared/release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GLEW_EXPORTS" /YX /FD /c
-# ADD CPP /nologo /W3 /O2 /I "../../include" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRALEAN" /D "GLEW_BUILD" /YX /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
-# ADD LINK32 opengl32.lib /nologo /dll /pdb:none /machine:I386 /out:"../../bin/glew32.dll" /ignore:4089
-# ADD LINK32 /base:0x62AA0000
-
-!ELSEIF  "$(CFG)" == "glew_shared - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../../lib"
-# PROP Intermediate_Dir "shared/debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GLEW_EXPORTS" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "../../include" /D "WIN32" /D "WIN32_MEAN_AND_LEAN" /D "VC_EXTRALEAN" /D "GLEW_BUILD" /YX /FD /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 opengl32.lib /nologo /dll /incremental:no /debug /machine:I386 /out:"../../bin/glew32d.dll" /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-# ADD LINK32 /base:0x62AA0000
-
-!ELSEIF  "$(CFG)" == "glew_shared - Win32 Debug MX"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "glew_shared___Win32_Debug_MX"
-# PROP BASE Intermediate_Dir "glew_shared___Win32_Debug_MX"
-# PROP BASE Ignore_Export_Lib 0
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../../lib"
-# PROP Intermediate_Dir "shared/debug-mx"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "../../include" /D "WIN32" /D "WIN32_MEAN_AND_LEAN" /D "VC_EXTRALEAN" /D "GLEW_BUILD" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "../../include" /D "WIN32" /D "WIN32_MEAN_AND_LEAN" /D "VC_EXTRALEAN" /D "GLEW_MX" /D "GLEW_BUILD" /YX /FD /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG" /d "GLEW_MX"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 opengl32.lib /nologo /dll /incremental:no /pdb:"../../lib/glew32d.pdb" /debug /machine:I386 /out:"../../lib/glew32d.dll" /implib:"../../lib/glew32d.lib" /pdbtype:sept
-# SUBTRACT BASE LINK32 /pdb:none
-# ADD LINK32 opengl32.lib /nologo /dll /incremental:no /debug /machine:I386 /out:"../../bin/glew32mxd.dll" /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-# ADD LINK32 /base:0x62AA0000
-
-!ELSEIF  "$(CFG)" == "glew_shared - Win32 Release MX"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "glew_shared___Win32_Release_MX"
-# PROP BASE Intermediate_Dir "glew_shared___Win32_Release_MX"
-# PROP BASE Ignore_Export_Lib 0
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "../../lib"
-# PROP Intermediate_Dir "shared/release-mx"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /O2 /I "../../include" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRALEAN" /D "GLEW_BUILD" /YX /FD /c
-# ADD CPP /nologo /W3 /O2 /I "../../include" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRALEAN" /D "GLEW_MX" /D "GLEW_BUILD" /YX /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG" /d "GLEW_MX"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 opengl32.lib /nologo /dll /pdb:none /machine:I386 /out:"../../lib/glew32.dll" /implib:"../../lib/glew32.lib" /ignore:4089
-# ADD LINK32 opengl32.lib /nologo /dll /pdb:none /machine:I386 /out:"../../bin/glew32mx.dll" /ignore:4089
-# ADD LINK32 /base:0x62AA0000
-
-!ENDIF 
-
-# Begin Target
-
-# Name "glew_shared - Win32 Release"
-# Name "glew_shared - Win32 Debug"
-# Name "glew_shared - Win32 Debug MX"
-# Name "glew_shared - Win32 Release MX"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=..\..\src\glew.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=..\..\include\GL\glew.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\include\GL\wglew.h
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\glew.rc
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/src/other/glew/build/vc6/glew_shared.vcproj b/src/other/glew/build/vc6/glew_shared.vcproj
deleted file mode 100644
index bef46bb..0000000
--- a/src/other/glew/build/vc6/glew_shared.vcproj
+++ /dev/null
@@ -1,494 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-	ProjectType="Visual C++"
-	Version="9.00"
-	Name="glew_shared"
-	ProjectGUID="{ECBE486B-F274-4180-82B7-9615747F1D82}"
-	TargetFrameworkVersion="0"
-	>
-	<Platforms>
-		<Platform
-			Name="Win32"
-		/>
-	</Platforms>
-	<ToolFiles>
-	</ToolFiles>
-	<Configurations>
-		<Configuration
-			Name="Release|Win32"
-			OutputDirectory=".\../../lib"
-			IntermediateDirectory=".\shared/release"
-			ConfigurationType="2"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				PreprocessorDefinitions="NDEBUG"
-				MkTypLibCompatible="true"
-				SuppressStartupBanner="true"
-				TargetEnvironment="1"
-				TypeLibraryName=".\../../lib/glew_shared.tlb"
-				HeaderFileName=""
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="2"
-				InlineFunctionExpansion="1"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRALEAN;GLEW_BUILD"
-				StringPooling="true"
-				RuntimeLibrary="2"
-				EnableFunctionLevelLinking="true"
-				PrecompiledHeaderFile=".\shared/release/glew_shared.pch"
-				AssemblerListingLocation=".\shared/release/"
-				ObjectFile=".\shared/release/"
-				ProgramDataBaseFileName=".\shared/release/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="NDEBUG"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalOptions="/ignore:4089"
-				AdditionalDependencies="opengl32.lib"
-				OutputFile="../../bin/glew32.dll"
-				LinkIncremental="1"
-				SuppressStartupBanner="true"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-				ImportLibrary=".\../../lib/glew32.lib"
-				TargetMachine="1"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../lib/glew_shared.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-		<Configuration
-			Name="Debug MX|Win32"
-			OutputDirectory=".\../../lib"
-			IntermediateDirectory=".\shared/debug-mx"
-			ConfigurationType="2"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				PreprocessorDefinitions="_DEBUG"
-				MkTypLibCompatible="true"
-				SuppressStartupBanner="true"
-				TargetEnvironment="1"
-				TypeLibraryName=".\../../lib/glew_shared.tlb"
-				HeaderFileName=""
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="0"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;WIN32_MEAN_AND_LEAN;VC_EXTRALEAN;GLEW_MX;GLEW_BUILD"
-				BasicRuntimeChecks="3"
-				RuntimeLibrary="3"
-				PrecompiledHeaderFile=".\shared/debug-mx/glew_shared.pch"
-				AssemblerListingLocation=".\shared/debug-mx/"
-				ObjectFile=".\shared/debug-mx/"
-				ProgramDataBaseFileName=".\shared/debug-mx/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-				DebugInformationFormat="3"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="_DEBUG,GLEW_MX"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalDependencies="opengl32.lib"
-				OutputFile="../../bin/glew32mxd.dll"
-				LinkIncremental="1"
-				SuppressStartupBanner="true"
-				GenerateDebugInformation="true"
-				ProgramDatabaseFile=".\../../lib/glew32mxd.pdb"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-				ImportLibrary=".\../../lib/glew32mxd.lib"
-				TargetMachine="1"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../lib/glew_shared.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-		<Configuration
-			Name="Debug|Win32"
-			OutputDirectory=".\../../lib"
-			IntermediateDirectory=".\shared/debug"
-			ConfigurationType="2"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				PreprocessorDefinitions="_DEBUG"
-				MkTypLibCompatible="true"
-				SuppressStartupBanner="true"
-				TargetEnvironment="1"
-				TypeLibraryName=".\../../lib/glew_shared.tlb"
-				HeaderFileName=""
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="0"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;WIN32_MEAN_AND_LEAN;VC_EXTRALEAN;GLEW_BUILD"
-				BasicRuntimeChecks="3"
-				RuntimeLibrary="3"
-				PrecompiledHeaderFile=".\shared/debug/glew_shared.pch"
-				AssemblerListingLocation=".\shared/debug/"
-				ObjectFile=".\shared/debug/"
-				ProgramDataBaseFileName=".\shared/debug/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-				DebugInformationFormat="3"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="_DEBUG"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalDependencies="opengl32.lib"
-				OutputFile="../../bin/glew32d.dll"
-				LinkIncremental="1"
-				SuppressStartupBanner="true"
-				GenerateDebugInformation="true"
-				ProgramDatabaseFile=".\../../lib/glew32d.pdb"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-				ImportLibrary=".\../../lib/glew32d.lib"
-				TargetMachine="1"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../lib/glew_shared.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-		<Configuration
-			Name="Release MX|Win32"
-			OutputDirectory=".\../../lib"
-			IntermediateDirectory=".\shared/release-mx"
-			ConfigurationType="2"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				PreprocessorDefinitions="NDEBUG"
-				MkTypLibCompatible="true"
-				SuppressStartupBanner="true"
-				TargetEnvironment="1"
-				TypeLibraryName=".\../../lib/glew_shared.tlb"
-				HeaderFileName=""
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="2"
-				InlineFunctionExpansion="1"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRALEAN;GLEW_MX;GLEW_BUILD"
-				StringPooling="true"
-				RuntimeLibrary="0"
-				EnableFunctionLevelLinking="true"
-				PrecompiledHeaderFile=".\shared/release-mx/glew_shared.pch"
-				AssemblerListingLocation=".\shared/release-mx/"
-				ObjectFile=".\shared/release-mx/"
-				ProgramDataBaseFileName=".\shared/release-mx/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="NDEBUG,GLEW_MX"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalOptions="/ignore:4089"
-				AdditionalDependencies="opengl32.lib"
-				OutputFile="../../bin/glew32mx.dll"
-				LinkIncremental="1"
-				SuppressStartupBanner="true"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-				ImportLibrary=".\../../lib/glew32mx.lib"
-				TargetMachine="1"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../lib/glew_shared.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-	</Configurations>
-	<References>
-	</References>
-	<Files>
-		<Filter
-			Name="Source Files"
-			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-			>
-			<File
-				RelativePath="..\..\src\glew.c"
-				>
-				<FileConfiguration
-					Name="Release|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Debug MX|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Debug|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Release MX|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-			</File>
-		</Filter>
-		<Filter
-			Name="Header Files"
-			Filter="h;hpp;hxx;hm;inl"
-			>
-			<File
-				RelativePath="..\..\include\GL\glew.h"
-				>
-			</File>
-			<File
-				RelativePath="..\..\include\GL\wglew.h"
-				>
-			</File>
-		</Filter>
-		<Filter
-			Name="Resource Files"
-			>
-			<File
-				RelativePath="glew.rc"
-				>
-				<FileConfiguration
-					Name="Release|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Debug MX|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Debug|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Release MX|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-			</File>
-		</Filter>
-	</Files>
-	<Globals>
-	</Globals>
-</VisualStudioProject>
diff --git a/src/other/glew/build/vc6/glew_static.dsp b/src/other/glew/build/vc6/glew_static.dsp
deleted file mode 100644
index 298e2d0..0000000
--- a/src/other/glew/build/vc6/glew_static.dsp
+++ /dev/null
@@ -1,162 +0,0 @@
-# Microsoft Developer Studio Project File - Name="glew_static" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Static Library" 0x0104
-
-CFG=glew_static - Win32 Debug MX
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "glew_static.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "glew_static.mak" CFG="glew_static - Win32 Debug MX"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "glew_static - Win32 Release" (based on "Win32 (x86) Static Library")
-!MESSAGE "glew_static - Win32 Debug" (based on "Win32 (x86) Static Library")
-!MESSAGE "glew_static - Win32 Debug MX" (based on "Win32 (x86) Static Library")
-!MESSAGE "glew_static - Win32 Release MX" (based on "Win32 (x86) Static Library")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "glew_static - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "../../lib"
-# PROP Intermediate_Dir "static/release"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "../../include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRALEAN" /D "GLEW_STATIC" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG" /d "GLEW_STATIC"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo
-# ADD LIB32 /nologo /out:"../../lib/glew32s.lib"
-
-!ELSEIF  "$(CFG)" == "glew_static - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../../lib"
-# PROP Intermediate_Dir "static/debug"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "../../include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRALEAN" /D "GLEW_STATIC" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG" /d "GLEW_STATIC"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo
-# ADD LIB32 /nologo /out:"../../lib/glew32sd.lib"
-
-!ELSEIF  "$(CFG)" == "glew_static - Win32 Debug MX"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "glew_static___Win32_Debug_MX"
-# PROP BASE Intermediate_Dir "glew_static___Win32_Debug_MX"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../../lib"
-# PROP Intermediate_Dir "static/debug-mx"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /GX /Zi /Od /I "../../include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRALEAN" /D "GLEW_STATIC" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "../../include" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRALEAN" /D "GLEW_MX" /D "GLEW_STATIC" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG" /d "GLEW_MX" /d "GLEW_STATIC"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo /out:"../../lib/glew32sd.lib"
-# ADD LIB32 /nologo /out:"../../lib/glew32mxsd.lib"
-
-!ELSEIF  "$(CFG)" == "glew_static - Win32 Release MX"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "glew_static___Win32_Release_MX"
-# PROP BASE Intermediate_Dir "glew_static___Win32_Release_MX"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "../../lib"
-# PROP Intermediate_Dir "static/release-mx"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /I "../../include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRALEAN" /D "GLEW_STATIC" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "../../include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRALEAN" /D "GLEW_MX" /D "GLEW_STATIC" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG" /d "GLEW_MX" /d "GLEW_STATIC"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LIB32=link.exe -lib
-# ADD BASE LIB32 /nologo /out:"../../lib/glew32s.lib"
-# ADD LIB32 /nologo /out:"../../lib/glew32mxs.lib"
-
-!ENDIF 
-
-# Begin Target
-
-# Name "glew_static - Win32 Release"
-# Name "glew_static - Win32 Debug"
-# Name "glew_static - Win32 Debug MX"
-# Name "glew_static - Win32 Release MX"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=..\..\src\glew.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=..\..\include\GL\glew.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\include\GL\wglew.h
-# End Source File
-# End Group
-# Begin Group "Resources"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\glew.rc
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/src/other/glew/build/vc6/glew_static.vcproj b/src/other/glew/build/vc6/glew_static.vcproj
deleted file mode 100644
index 5405079..0000000
--- a/src/other/glew/build/vc6/glew_static.vcproj
+++ /dev/null
@@ -1,271 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-	ProjectType="Visual C++"
-	Version="9.00"
-	Name="glew_static"
-	ProjectGUID="{6C4DBDEF-A58A-452B-9155-6CB07D58D1BA}"
-	TargetFrameworkVersion="0"
-	>
-	<Platforms>
-		<Platform
-			Name="Win32"
-		/>
-	</Platforms>
-	<ToolFiles>
-	</ToolFiles>
-	<Configurations>
-		<Configuration
-			Name="Debug|Win32"
-			OutputDirectory=".\../../lib"
-			IntermediateDirectory=".\static/debug"
-			ConfigurationType="4"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			CharacterSet="2"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="0"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;_DEBUG;_LIB;WIN32_LEAN_AND_MEAN;VC_EXTRALEAN;GLEW_STATIC"
-				BasicRuntimeChecks="3"
-				RuntimeLibrary="3"
-				PrecompiledHeaderFile=".\static/debug/glew_static.pch"
-				AssemblerListingLocation=".\static/debug/"
-				ObjectFile=".\static/debug/"
-				ProgramDataBaseFileName=".\static/debug/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-				DebugInformationFormat="3"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="_DEBUG,GLEW_STATIC"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLibrarianTool"
-				OutputFile="../../lib/glew32sd.lib"
-				SuppressStartupBanner="true"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../lib/glew_static.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-		<Configuration
-			Name="Release|Win32"
-			OutputDirectory=".\../../lib"
-			IntermediateDirectory=".\static/release"
-			ConfigurationType="4"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			CharacterSet="2"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="2"
-				InlineFunctionExpansion="1"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;NDEBUG;_LIB;WIN32_LEAN_AND_MEAN;VC_EXTRALEAN;GLEW_STATIC"
-				StringPooling="true"
-				RuntimeLibrary="2"
-				EnableFunctionLevelLinking="true"
-				PrecompiledHeaderFile=".\static/release/glew_static.pch"
-				AssemblerListingLocation=".\static/release/"
-				ObjectFile=".\static/release/"
-				ProgramDataBaseFileName=".\static/release/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="NDEBUG,GLEW_STATIC"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLibrarianTool"
-				OutputFile="../../lib/glew32s.lib"
-				SuppressStartupBanner="true"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../lib/glew_static.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-	</Configurations>
-	<References>
-	</References>
-	<Files>
-		<Filter
-			Name="Source Files"
-			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-			>
-			<File
-				RelativePath="..\..\src\glew.c"
-				>
-				<FileConfiguration
-					Name="Debug|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Debug MX|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Release|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Release MX|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-			</File>
-		</Filter>
-		<Filter
-			Name="Header Files"
-			Filter="h;hpp;hxx;hm;inl"
-			>
-			<File
-				RelativePath="..\..\include\GL\glew.h"
-				>
-			</File>
-			<File
-				RelativePath="..\..\include\GL\wglew.h"
-				>
-			</File>
-		</Filter>
-		<Filter
-			Name="Resources"
-			>
-			<File
-				RelativePath="glew.rc"
-				>
-				<FileConfiguration
-					Name="Debug|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Debug MX|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Release|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Release MX|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-			</File>
-		</Filter>
-	</Files>
-	<Globals>
-	</Globals>
-</VisualStudioProject>
diff --git a/src/other/glew/build/vc6/glewinfo.dsp b/src/other/glew/build/vc6/glewinfo.dsp
deleted file mode 100644
index 97359b9..0000000
--- a/src/other/glew/build/vc6/glewinfo.dsp
+++ /dev/null
@@ -1,159 +0,0 @@
-# Microsoft Developer Studio Project File - Name="glewinfo" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=glewinfo - Win32 Debug MX
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "glewinfo.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "glewinfo.mak" CFG="glewinfo - Win32 Debug MX"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "glewinfo - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "glewinfo - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE "glewinfo - Win32 Debug MX" (based on "Win32 (x86) Console Application")
-!MESSAGE "glewinfo - Win32 Release MX" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "glewinfo - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "../../bin"
-# PROP Intermediate_Dir "static/release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "../../include" /D "WIN32" /D "WIN32_MEAN_AND_LEAN" /D "VC_EXTRALEAN" /D "GLEW_STATIC" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 ../../lib/glew32s.lib opengl32.lib gdi32.lib user32.lib /nologo /subsystem:console /machine:I386
-
-!ELSEIF  "$(CFG)" == "glewinfo - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../../bin"
-# PROP Intermediate_Dir "static/debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "../../include" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRA_LEAN" /D "GLEW_STATIC" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 ../../lib/glew32sd.lib opengl32.lib gdi32.lib user32.lib /nologo /subsystem:console /incremental:no /pdb:"static/debug/glewinfod.pdb" /debug /machine:I386 /out:"../../bin/glewinfod.exe" /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF  "$(CFG)" == "glewinfo - Win32 Debug MX"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "glewinfo___Win32_Debug_MX"
-# PROP BASE Intermediate_Dir "glewinfo___Win32_Debug_MX"
-# PROP BASE Ignore_Export_Lib 0
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../../bin"
-# PROP Intermediate_Dir "static/debug-mx"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /GX /Zi /Od /I "../../include" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRA_LEAN" /D "GLEW_STATIC" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "../../include" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRA_LEAN" /D "GLEW_MX" /D "GLEW_STATIC" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG" /d "GLEW_MX"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 ../../lib/glew32sd.lib opengl32.lib gdi32.lib user32.lib /nologo /subsystem:console /incremental:no /pdb:"static/debug/glewinfod.pdb" /debug /machine:I386 /out:"../../bin/glewinfod.exe" /pdbtype:sept
-# SUBTRACT BASE LINK32 /pdb:none
-# ADD LINK32 ../../lib/glew32mxsd.lib opengl32.lib gdi32.lib user32.lib /nologo /subsystem:console /incremental:no /pdb:"static/debug/glewinfod.pdb" /debug /machine:I386 /out:"../../bin/glewinfo-mxd.exe" /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF  "$(CFG)" == "glewinfo - Win32 Release MX"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "glewinfo___Win32_Release_MX"
-# PROP BASE Intermediate_Dir "glewinfo___Win32_Release_MX"
-# PROP BASE Ignore_Export_Lib 0
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "../../bin"
-# PROP Intermediate_Dir "static/release-mx"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /I "../../include" /D "WIN32" /D "WIN32_MEAN_AND_LEAN" /D "VC_EXTRALEAN" /D "GLEW_STATIC" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "../../include" /D "WIN32" /D "WIN32_MEAN_AND_LEAN" /D "VC_EXTRALEAN" /D "GLEW_MX" /D "GLEW_STATIC" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG" /d "GLEW_MX"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 ../../lib/glew32s.lib opengl32.lib gdi32.lib user32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 ../../lib/glew32mxs.lib opengl32.lib gdi32.lib user32.lib /nologo /subsystem:console /machine:I386 /out:"../../bin/glewinfo-mx.exe"
-
-!ENDIF 
-
-# Begin Target
-
-# Name "glewinfo - Win32 Release"
-# Name "glewinfo - Win32 Debug"
-# Name "glewinfo - Win32 Debug MX"
-# Name "glewinfo - Win32 Release MX"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=..\..\src\glewinfo.c
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\glewinfo.rc
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/src/other/glew/build/vc6/glewinfo.rc b/src/other/glew/build/vc6/glewinfo.rc
deleted file mode 100644
index e3d3956..0000000
--- a/src/other/glew/build/vc6/glewinfo.rc
+++ /dev/null
@@ -1,57 +0,0 @@
-
-#include <windows.h>
-
-#ifdef GLEW_MX
-#  ifdef _DEBUG
-#    define FILENAME "glewinfo-mxd.exe"
-#  else
-#    define FILENAME "glewinfo-mx.exe"
-#  endif
-#else
-#  ifdef _DEBUG
-#    define FILENAME "glewinfod.exe"
-#  else
-#    define FILENAME "glewinfo.exe"
-#  endif
-#endif
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Version
-//
-VS_VERSION_INFO VERSIONINFO 
-FILEVERSION 1, 5, 4, 0
-PRODUCTVERSION 1, 5, 4, 0
-FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
-#ifdef _DEBUG
-FILEFLAGS VS_FF_DEBUG
-#else
-FILEFLAGS 0x0L
-#endif
-FILEOS VOS__WINDOWS32
-FILETYPE VFT_APP
-FILESUBTYPE VFT2_UNKNOWN
-BEGIN
-    BLOCK "StringFileInfo"
-    BEGIN
-        BLOCK "040904b0"
-        BEGIN
-            VALUE "Comments", "The OpenGL Extension Wrangler Library\r\nCopyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>\r\nCopyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>\r\nCopyright (C) 2002, Lev Povalahev\r\nAll rights reserved.\r\n \r\nRedistribution and use in source and binary forms, with or without \r\nmodification, are permitted provided that the following conditions are met:\r\n\r\n* Redistributions of source code must retain the above copyright notice, \r\n  this list of conditions and the following disclaimer.\r\n* Redistributions in binary form must reproduce the above copyright notice, \r\n  this list of conditions and the following disclaimer in the documentation \r\n  and/or other materials provided with the distribution.\r\n* The name of the author may be used to endorse or promote products \r\n  derived from this software without specific prior written permission.\r\n\r\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS' \r\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\nARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r\nLIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r\nCONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r\nSUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\nINTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\nCONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\nARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r\nTHE POSSIBILITY OF SUCH DAMAGE.\r\n\r\nLicense Applicability. Except to the extent portions of this file are\r\nmade subject to an alternative license as permitted in the SGI Free\r\nSoftware License B, Version 1.1 (the 'License'), the contents of this\r\nfile are subject only to the provisions of the License. You may not use\r\nthis file except in compliance with the License. You may obtain a copy\r\nof the License at Silicon Graphics, Inc., attn: Legal Services, 1600\r\nAmphitheatre Parkway, Mountain View, CA 94043-1351, or at:\r\n\r\nhttp://oss.sgi.com/projects/FreeB\r\n\r\nNote that, as provided in the License, the Software is distributed on an\r\n'AS IS' basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS\r\nDISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND\r\nCONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A\r\nPARTICULAR PURPOSE, AND NON-INFRINGEMENT.\r\n\r\nOriginal Code. The Original Code is: OpenGL Sample Implementation,\r\nVersion 1.2.1, released January 26, 2000, developed by Silicon Graphics,\r\nInc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.\r\nCopyright in any portions created by third parties is as indicated\r\nelsewhere herein. All Rights Reserved.\r\n\r\nAdditional Notice Provisions: This software was created using the\r\nOpenGL(R) version 1.2.1 Sample Implementation published by SGI, but has\r\nnot been independently verified as being compliant with the OpenGL(R)\r\nversion 1.2.1 Specification.\0"
-            VALUE "CompanyName", "\0"
-            VALUE "FileDescription", "Utility for verifying extension entry points\0"
-            VALUE "FileVersion", "1,5,4,0\0"
-            VALUE "InternalName", "glewinfo\0"
-            VALUE "LegalCopyright", "© 2002-2008 Milan Ikits & Marcelo Magallon\0"
-            VALUE "LegalTrademarks", "\0"
-            VALUE "OriginalFilename", FILENAME "\0"
-            VALUE "PrivateBuild", "\0"
-            VALUE "ProductName", "The OpenGL Extension Wrangler Library\0"
-            VALUE "ProductVersion", "1,5,4,0\0"
-            VALUE "SpecialBuild", "\0"
-        END
-    END
-    BLOCK "VarFileInfo"
-    BEGIN
-        VALUE "Translation", 0x409, 1200
-    END
-END
diff --git a/src/other/glew/build/vc6/glewinfo.vcproj b/src/other/glew/build/vc6/glewinfo.vcproj
deleted file mode 100644
index f91ced1..0000000
--- a/src/other/glew/build/vc6/glewinfo.vcproj
+++ /dev/null
@@ -1,465 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-	ProjectType="Visual C++"
-	Version="9.00"
-	Name="glewinfo"
-	ProjectGUID="{C0D56707-0E16-4602-843F-4CF1BB009B10}"
-	TargetFrameworkVersion="0"
-	>
-	<Platforms>
-		<Platform
-			Name="Win32"
-		/>
-	</Platforms>
-	<ToolFiles>
-	</ToolFiles>
-	<Configurations>
-		<Configuration
-			Name="Release MX|Win32"
-			OutputDirectory=".\../../bin"
-			IntermediateDirectory=".\static/release-mx"
-			ConfigurationType="1"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				TypeLibraryName=".\../../bin/glewinfo.tlb"
-				HeaderFileName=""
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="2"
-				InlineFunctionExpansion="1"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;WIN32_MEAN_AND_LEAN;VC_EXTRALEAN;GLEW_MX;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS"
-				StringPooling="true"
-				RuntimeLibrary="0"
-				EnableFunctionLevelLinking="true"
-				PrecompiledHeaderFile=".\static/release-mx/glewinfo.pch"
-				AssemblerListingLocation=".\static/release-mx/"
-				ObjectFile=".\static/release-mx/"
-				ProgramDataBaseFileName=".\static/release-mx/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="NDEBUG,GLEW_MX"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalDependencies="../../lib/glew32mxs.lib opengl32.lib"
-				OutputFile="../../bin/glewinfo-mx.exe"
-				LinkIncremental="1"
-				SuppressStartupBanner="true"
-				ProgramDatabaseFile=".\../../bin/glewinfo-mx.pdb"
-				SubSystem="1"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-				TargetMachine="1"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../bin/glewinfo.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-		<Configuration
-			Name="Debug MX|Win32"
-			OutputDirectory=".\../../bin"
-			IntermediateDirectory=".\static/debug-mx"
-			ConfigurationType="1"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				TypeLibraryName=".\../../bin/glewinfo.tlb"
-				HeaderFileName=""
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="0"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_MX;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS"
-				BasicRuntimeChecks="3"
-				RuntimeLibrary="3"
-				PrecompiledHeaderFile=".\static/debug-mx/glewinfo.pch"
-				AssemblerListingLocation=".\static/debug-mx/"
-				ObjectFile=".\static/debug-mx/"
-				ProgramDataBaseFileName=".\static/debug-mx/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-				DebugInformationFormat="3"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="_DEBUG,GLEW_MX"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalDependencies="../../lib/glew32mxsd.lib opengl32.lib"
-				OutputFile="../../bin/glewinfo-mxd.exe"
-				LinkIncremental="1"
-				SuppressStartupBanner="true"
-				GenerateDebugInformation="true"
-				ProgramDatabaseFile="static/debug/glewinfod.pdb"
-				SubSystem="1"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-				TargetMachine="1"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../bin/glewinfo.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-		<Configuration
-			Name="Debug|Win32"
-			OutputDirectory=".\../../bin"
-			IntermediateDirectory=".\static/debug"
-			ConfigurationType="1"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				TypeLibraryName=".\../../bin/glewinfo.tlb"
-				HeaderFileName=""
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="0"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS"
-				BasicRuntimeChecks="3"
-				RuntimeLibrary="3"
-				PrecompiledHeaderFile=".\static/debug/glewinfo.pch"
-				AssemblerListingLocation=".\static/debug/"
-				ObjectFile=".\static/debug/"
-				ProgramDataBaseFileName=".\static/debug/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-				DebugInformationFormat="3"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="_DEBUG"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalDependencies="../../lib/glew32sd.lib opengl32.lib"
-				OutputFile="../../bin/glewinfod.exe"
-				LinkIncremental="1"
-				SuppressStartupBanner="true"
-				GenerateDebugInformation="true"
-				ProgramDatabaseFile="static/debug/glewinfod.pdb"
-				SubSystem="1"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-				TargetMachine="1"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../bin/glewinfo.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-		<Configuration
-			Name="Release|Win32"
-			OutputDirectory=".\../../bin"
-			IntermediateDirectory=".\static/release"
-			ConfigurationType="1"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				TypeLibraryName=".\../../bin/glewinfo.tlb"
-				HeaderFileName=""
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="2"
-				InlineFunctionExpansion="1"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;WIN32_MEAN_AND_LEAN;VC_EXTRALEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS"
-				StringPooling="true"
-				RuntimeLibrary="0"
-				EnableFunctionLevelLinking="true"
-				PrecompiledHeaderFile=".\static/release/glewinfo.pch"
-				AssemblerListingLocation=".\static/release/"
-				ObjectFile=".\static/release/"
-				ProgramDataBaseFileName=".\static/release/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="NDEBUG"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalDependencies="../../lib/glew32s.lib opengl32.lib"
-				OutputFile=".\../../bin/glewinfo.exe"
-				LinkIncremental="1"
-				SuppressStartupBanner="true"
-				ProgramDatabaseFile=".\../../bin/glewinfo.pdb"
-				SubSystem="1"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-				TargetMachine="1"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../bin/glewinfo.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-	</Configurations>
-	<References>
-	</References>
-	<Files>
-		<Filter
-			Name="Source Files"
-			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-			>
-			<File
-				RelativePath="..\..\src\glewinfo.c"
-				>
-				<FileConfiguration
-					Name="Release MX|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Debug MX|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Debug|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Release|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-			</File>
-		</Filter>
-		<Filter
-			Name="Resource Files"
-			>
-			<File
-				RelativePath="glewinfo.rc"
-				>
-				<FileConfiguration
-					Name="Release MX|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Debug MX|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Debug|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Release|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-			</File>
-		</Filter>
-	</Files>
-	<Globals>
-	</Globals>
-</VisualStudioProject>
diff --git a/src/other/glew/build/vc6/visualinfo.dsp b/src/other/glew/build/vc6/visualinfo.dsp
deleted file mode 100644
index ae591e4..0000000
--- a/src/other/glew/build/vc6/visualinfo.dsp
+++ /dev/null
@@ -1,159 +0,0 @@
-# Microsoft Developer Studio Project File - Name="visualinfo" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=visualinfo - Win32 Debug MX
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "visualinfo.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "visualinfo.mak" CFG="visualinfo - Win32 Debug MX"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "visualinfo - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "visualinfo - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE "visualinfo - Win32 Debug MX" (based on "Win32 (x86) Console Application")
-!MESSAGE "visualinfo - Win32 Release MX" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "visualinfo - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "../../bin"
-# PROP Intermediate_Dir "static/release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "../../include" /D "WIN32" /D "WIN32_MEAN_AND_LEAN" /D "VC_EXTRALEAN" /D "GLEW_STATIC" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 ../../lib/glew32s.lib glu32.lib opengl32.lib gdi32.lib user32.lib kernel32.lib /nologo /subsystem:console /machine:I386
-
-!ELSEIF  "$(CFG)" == "visualinfo - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../../bin"
-# PROP Intermediate_Dir "static/debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "../../include" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRA_LEAN" /D "GLEW_STATIC" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 ../../lib/glew32sd.lib glu32.lib opengl32.lib gdi32.lib user32.lib kernel32.lib /nologo /subsystem:console /incremental:no /pdb:"static/debug/visualinfod.pdb" /debug /machine:I386 /out:"../../bin/visualinfod.exe" /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF  "$(CFG)" == "visualinfo - Win32 Debug MX"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "visualinfo___Win32_Debug_MX"
-# PROP BASE Intermediate_Dir "visualinfo___Win32_Debug_MX"
-# PROP BASE Ignore_Export_Lib 0
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../../bin"
-# PROP Intermediate_Dir "static/debug-mx"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /GX /Zi /Od /I "../../include" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRA_LEAN" /D "GLEW_STATIC" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "../../include" /D "WIN32" /D "WIN32_LEAN_AND_MEAN" /D "VC_EXTRA_LEAN" /D "GLEW_MX" /D "GLEW_STATIC" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG" /d "GLEW_MX"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 ../../lib/glew32sd.lib glu32.lib opengl32.lib gdi32.lib user32.lib kernel32.lib /nologo /subsystem:console /incremental:no /pdb:"static/debug/visualinfod.pdb" /debug /machine:I386 /out:"../../bin/visualinfod.exe" /pdbtype:sept
-# SUBTRACT BASE LINK32 /pdb:none
-# ADD LINK32 ../../lib/glew32mxsd.lib glu32.lib opengl32.lib gdi32.lib user32.lib kernel32.lib /nologo /subsystem:console /incremental:no /pdb:"static/debug/visualinfod.pdb" /debug /machine:I386 /out:"../../bin/visualinfo-mxd.exe" /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF  "$(CFG)" == "visualinfo - Win32 Release MX"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "visualinfo___Win32_Release_MX"
-# PROP BASE Intermediate_Dir "visualinfo___Win32_Release_MX"
-# PROP BASE Ignore_Export_Lib 0
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "../../bin"
-# PROP Intermediate_Dir "static/release-mx"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /I "../../include" /D "WIN32" /D "WIN32_MEAN_AND_LEAN" /D "VC_EXTRALEAN" /D "GLEW_STATIC" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "../../include" /D "WIN32" /D "WIN32_MEAN_AND_LEAN" /D "VC_EXTRALEAN" /D "GLEW_MX" /D "GLEW_STATIC" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG" /d "GLEW_MX"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 ../../lib/glew32s.lib glu32.lib opengl32.lib gdi32.lib user32.lib kernel32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 ../../lib/glew32mxs.lib glu32.lib opengl32.lib gdi32.lib user32.lib kernel32.lib /nologo /subsystem:console /machine:I386 /out:"../../bin/visualinfo-mx.exe"
-
-!ENDIF 
-
-# Begin Target
-
-# Name "visualinfo - Win32 Release"
-# Name "visualinfo - Win32 Debug"
-# Name "visualinfo - Win32 Debug MX"
-# Name "visualinfo - Win32 Release MX"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=..\..\src\visualinfo.c
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\visualinfo.rc
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/src/other/glew/build/vc6/visualinfo.rc b/src/other/glew/build/vc6/visualinfo.rc
deleted file mode 100644
index 873ce78..0000000
--- a/src/other/glew/build/vc6/visualinfo.rc
+++ /dev/null
@@ -1,57 +0,0 @@
-
-#include <windows.h>
-
-#ifdef GLEW_MX
-#  ifdef _DEBUG
-#    define FILENAME "visualinfo-mxd.exe"
-#  else
-#    define FILENAME "visualinfo-mx.exe"
-#  endif
-#else
-#  ifdef _DEBUG
-#    define FILENAME "visualinfod.exe"
-#  else
-#    define FILENAME "visualinfo.exe"
-#  endif
-#endif
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Version
-//
-VS_VERSION_INFO VERSIONINFO 
-FILEVERSION 1, 5, 4, 0
-PRODUCTVERSION 1, 5, 4, 0
-FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
-#ifdef _DEBUG
-FILEFLAGS VS_FF_DEBUG
-#else
-FILEFLAGS 0x0L
-#endif
-FILEOS VOS__WINDOWS32
-FILETYPE VFT_APP
-FILESUBTYPE VFT2_UNKNOWN
-BEGIN
-    BLOCK "StringFileInfo"
-    BEGIN
-        BLOCK "040904b0"
-        BEGIN
-            VALUE "Comments", "The OpenGL Extension Wrangler Library\r\nCopyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>\r\nCopyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>\r\nCopyright (C) 2002, Lev Povalahev\r\nAll rights reserved.\r\n \r\nRedistribution and use in source and binary forms, with or without \r\nmodification, are permitted provided that the following conditions are met:\r\n\r\n* Redistributions of source code must retain the above copyright notice, \r\n  this list of conditions and the following disclaimer.\r\n* Redistributions in binary form must reproduce the above copyright notice, \r\n  this list of conditions and the following disclaimer in the documentation \r\n  and/or other materials provided with the distribution.\r\n* The name of the author may be used to endorse or promote products \r\n  derived from this software without specific prior written permission.\r\n\r\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS' \r\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\nARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r\nLIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r\nCONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r\nSUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\nINTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\nCONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\nARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r\nTHE POSSIBILITY OF SUCH DAMAGE.\r\n\r\nLicense Applicability. Except to the extent portions of this file are\r\nmade subject to an alternative license as permitted in the SGI Free\r\nSoftware License B, Version 1.1 (the 'License'), the contents of this\r\nfile are subject only to the provisions of the License. You may not use\r\nthis file except in compliance with the License. You may obtain a copy\r\nof the License at Silicon Graphics, Inc., attn: Legal Services, 1600\r\nAmphitheatre Parkway, Mountain View, CA 94043-1351, or at:\r\n\r\nhttp://oss.sgi.com/projects/FreeB\r\n\r\nNote that, as provided in the License, the Software is distributed on an\r\n'AS IS' basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS\r\nDISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND\r\nCONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A\r\nPARTICULAR PURPOSE, AND NON-INFRINGEMENT.\r\n\r\nOriginal Code. The Original Code is: OpenGL Sample Implementation,\r\nVersion 1.2.1, released January 26, 2000, developed by Silicon Graphics,\r\nInc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.\r\nCopyright in any portions created by third parties is as indicated\r\nelsewhere herein. All Rights Reserved.\r\n\r\nAdditional Notice Provisions: This software was created using the\r\nOpenGL(R) version 1.2.1 Sample Implementation published by SGI, but has\r\nnot been independently verified as being compliant with the OpenGL(R)\r\nversion 1.2.1 Specification.\0"
-            VALUE "CompanyName", "\0"
-            VALUE "FileDescription", "Utility for listing pixelformat capabilities\0"
-            VALUE "FileVersion", "1,5,4,0\0"
-            VALUE "InternalName", "visualinfo\0"
-            VALUE "LegalCopyright", "© 2002-2008 Milan Ikits & Marcelo Magallon\0"
-            VALUE "LegalTrademarks", "\0"
-            VALUE "OriginalFilename", FILENAME "\0"
-            VALUE "PrivateBuild", "\0"
-            VALUE "ProductName", "The OpenGL Extension Wrangler Library\0"
-            VALUE "ProductVersion", "1,5,4,0\0"
-            VALUE "SpecialBuild", "\0"
-        END
-    END
-    BLOCK "VarFileInfo"
-    BEGIN
-        VALUE "Translation", 0x409, 1200
-    END
-END
diff --git a/src/other/glew/build/vc6/visualinfo.vcproj b/src/other/glew/build/vc6/visualinfo.vcproj
deleted file mode 100644
index 1191b86..0000000
--- a/src/other/glew/build/vc6/visualinfo.vcproj
+++ /dev/null
@@ -1,465 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-	ProjectType="Visual C++"
-	Version="9.00"
-	Name="visualinfo"
-	ProjectGUID="{0F39E9EF-F5E8-4AE5-BB3D-1F38F4D449EC}"
-	TargetFrameworkVersion="0"
-	>
-	<Platforms>
-		<Platform
-			Name="Win32"
-		/>
-	</Platforms>
-	<ToolFiles>
-	</ToolFiles>
-	<Configurations>
-		<Configuration
-			Name="Debug|Win32"
-			OutputDirectory=".\../../bin"
-			IntermediateDirectory=".\static/debug"
-			ConfigurationType="1"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				TypeLibraryName=".\../../bin/visualinfo.tlb"
-				HeaderFileName=""
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="0"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS"
-				BasicRuntimeChecks="3"
-				RuntimeLibrary="3"
-				PrecompiledHeaderFile=".\static/debug/visualinfo.pch"
-				AssemblerListingLocation=".\static/debug/"
-				ObjectFile=".\static/debug/"
-				ProgramDataBaseFileName=".\static/debug/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-				DebugInformationFormat="3"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="_DEBUG"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalDependencies="../../lib/glew32sd.lib glu32.lib opengl32.lib"
-				OutputFile="../../bin/visualinfod.exe"
-				LinkIncremental="1"
-				SuppressStartupBanner="true"
-				GenerateDebugInformation="true"
-				ProgramDatabaseFile="static/debug/visualinfod.pdb"
-				SubSystem="1"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-				TargetMachine="1"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../bin/visualinfo.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-		<Configuration
-			Name="Release|Win32"
-			OutputDirectory=".\../../bin"
-			IntermediateDirectory=".\static/release"
-			ConfigurationType="1"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				TypeLibraryName=".\../../bin/visualinfo.tlb"
-				HeaderFileName=""
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="2"
-				InlineFunctionExpansion="1"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;WIN32_MEAN_AND_LEAN;VC_EXTRALEAN;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS"
-				StringPooling="true"
-				RuntimeLibrary="0"
-				EnableFunctionLevelLinking="true"
-				PrecompiledHeaderFile=".\static/release/visualinfo.pch"
-				AssemblerListingLocation=".\static/release/"
-				ObjectFile=".\static/release/"
-				ProgramDataBaseFileName=".\static/release/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="NDEBUG"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalDependencies="../../lib/glew32s.lib glu32.lib opengl32.lib"
-				OutputFile=".\../../bin/visualinfo.exe"
-				LinkIncremental="1"
-				SuppressStartupBanner="true"
-				ProgramDatabaseFile=".\../../bin/visualinfo.pdb"
-				SubSystem="1"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-				TargetMachine="1"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../bin/visualinfo.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-		<Configuration
-			Name="Release MX|Win32"
-			OutputDirectory=".\../../bin"
-			IntermediateDirectory=".\static/release-mx"
-			ConfigurationType="1"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				TypeLibraryName=".\../../bin/visualinfo.tlb"
-				HeaderFileName=""
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="2"
-				InlineFunctionExpansion="1"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;WIN32_MEAN_AND_LEAN;VC_EXTRALEAN;GLEW_MX;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS"
-				StringPooling="true"
-				RuntimeLibrary="0"
-				EnableFunctionLevelLinking="true"
-				PrecompiledHeaderFile=".\static/release-mx/visualinfo.pch"
-				AssemblerListingLocation=".\static/release-mx/"
-				ObjectFile=".\static/release-mx/"
-				ProgramDataBaseFileName=".\static/release-mx/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="NDEBUG,GLEW_MX"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalDependencies="../../lib/glew32mxs.lib glu32.lib opengl32.lib"
-				OutputFile="../../bin/visualinfo-mx.exe"
-				LinkIncremental="1"
-				SuppressStartupBanner="true"
-				ProgramDatabaseFile=".\../../bin/visualinfo-mx.pdb"
-				SubSystem="1"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-				TargetMachine="1"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../bin/visualinfo.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-		<Configuration
-			Name="Debug MX|Win32"
-			OutputDirectory=".\../../bin"
-			IntermediateDirectory=".\static/debug-mx"
-			ConfigurationType="1"
-			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
-			UseOfMFC="0"
-			ATLMinimizesCRunTimeLibraryUsage="false"
-			>
-			<Tool
-				Name="VCPreBuildEventTool"
-			/>
-			<Tool
-				Name="VCCustomBuildTool"
-			/>
-			<Tool
-				Name="VCXMLDataGeneratorTool"
-			/>
-			<Tool
-				Name="VCWebServiceProxyGeneratorTool"
-			/>
-			<Tool
-				Name="VCMIDLTool"
-				TypeLibraryName=".\../../bin/visualinfo.tlb"
-				HeaderFileName=""
-			/>
-			<Tool
-				Name="VCCLCompilerTool"
-				Optimization="0"
-				AdditionalIncludeDirectories="../../include"
-				PreprocessorDefinitions="WIN32;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;GLEW_MX;GLEW_STATIC;_CRT_SECURE_NO_WARNINGS"
-				BasicRuntimeChecks="3"
-				RuntimeLibrary="3"
-				PrecompiledHeaderFile=".\static/debug-mx/visualinfo.pch"
-				AssemblerListingLocation=".\static/debug-mx/"
-				ObjectFile=".\static/debug-mx/"
-				ProgramDataBaseFileName=".\static/debug-mx/"
-				WarningLevel="3"
-				SuppressStartupBanner="true"
-				DebugInformationFormat="3"
-			/>
-			<Tool
-				Name="VCManagedResourceCompilerTool"
-			/>
-			<Tool
-				Name="VCResourceCompilerTool"
-				PreprocessorDefinitions="_DEBUG,GLEW_MX"
-				Culture="1033"
-			/>
-			<Tool
-				Name="VCPreLinkEventTool"
-			/>
-			<Tool
-				Name="VCLinkerTool"
-				AdditionalDependencies="../../lib/glew32mxsd.lib glu32.lib opengl32.lib"
-				OutputFile="../../bin/visualinfo-mxd.exe"
-				LinkIncremental="1"
-				SuppressStartupBanner="true"
-				GenerateDebugInformation="true"
-				ProgramDatabaseFile="static/debug/visualinfod.pdb"
-				SubSystem="1"
-				RandomizedBaseAddress="1"
-				DataExecutionPrevention="0"
-				TargetMachine="1"
-			/>
-			<Tool
-				Name="VCALinkTool"
-			/>
-			<Tool
-				Name="VCManifestTool"
-			/>
-			<Tool
-				Name="VCXDCMakeTool"
-			/>
-			<Tool
-				Name="VCBscMakeTool"
-				SuppressStartupBanner="true"
-				OutputFile=".\../../bin/visualinfo.bsc"
-			/>
-			<Tool
-				Name="VCFxCopTool"
-			/>
-			<Tool
-				Name="VCAppVerifierTool"
-			/>
-			<Tool
-				Name="VCPostBuildEventTool"
-			/>
-		</Configuration>
-	</Configurations>
-	<References>
-	</References>
-	<Files>
-		<Filter
-			Name="Source Files"
-			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-			>
-			<File
-				RelativePath="..\..\src\visualinfo.c"
-				>
-				<FileConfiguration
-					Name="Debug|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Release|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Release MX|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Debug MX|Win32"
-					>
-					<Tool
-						Name="VCCLCompilerTool"
-						AdditionalIncludeDirectories=""
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-			</File>
-		</Filter>
-		<Filter
-			Name="Resource Files"
-			>
-			<File
-				RelativePath="visualinfo.rc"
-				>
-				<FileConfiguration
-					Name="Debug|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Release|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Release MX|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-				<FileConfiguration
-					Name="Debug MX|Win32"
-					>
-					<Tool
-						Name="VCResourceCompilerTool"
-						PreprocessorDefinitions=""
-					/>
-				</FileConfiguration>
-			</File>
-		</Filter>
-	</Files>
-	<Globals>
-	</Globals>
-</VisualStudioProject>
diff --git a/src/other/glew/config/Makefile.cygming b/src/other/glew/config/Makefile.cygming
deleted file mode 100644
index d1d6062..0000000
--- a/src/other/glew/config/Makefile.cygming
+++ /dev/null
@@ -1,22 +0,0 @@
-NAME = glew32
-GLEW_DEST = /usr
-BINDIR = /usr/bin
-LIBDIR = /usr/lib/mingw
-INCDIR = /usr/include/mingw/GL
-CC = gcc -mno-cygwin
-# use gcc for linking, with ld it does not work
-LD = gcc -mno-cygwin
-ifneq (undefined, $(origin GLEW_MX))
-CFLAGS.EXTRA = -DGLEW_MX
-endif
-CFLAGS.SO = -DGLEW_BUILD
-LDFLAGS.SO = -shared -Wl,-soname,$(LIB.SONAME) -Wl,--out-implib,lib/$(LIB.DEVLNK)
-LDFLAGS.GL = -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32
-LDFLAGS.EXTRA = -L$(LIBDIR)
-WARN = -Wall -W
-POPT = -O2
-BIN.SUFFIX = .exe
-LIB.SONAME = lib$(NAME).dll
-LIB.DEVLNK = lib$(NAME).dll.a    # for mingw this is the dll import lib
-LIB.SHARED = $(NAME).dll
-LIB.STATIC = lib$(NAME).a     # the static lib will be broken (see CFLAGS.SO)
diff --git a/src/other/glew/config/Makefile.cygwin b/src/other/glew/config/Makefile.cygwin
deleted file mode 100644
index c724e42..0000000
--- a/src/other/glew/config/Makefile.cygwin
+++ /dev/null
@@ -1,21 +0,0 @@
-NAME = GLEW
-GLEW_DEST ?= /usr/X11R6
-CC = cc
-# use gcc for linking, with ld it does not work
-LD = cc
-ifneq (undefined, $(origin GLEW_MX))
-CFLAGS.EXTRA = -DGLEW_MX
-endif
-LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME)
-LDFLAGS.EXTRA = -L/usr/X11R6/lib
-LIBDIR = $(GLEW_DEST)/lib
-LDFLAGS.GL = -lXmu -lXi -lGLU -lGL -lXext -lX11
-LDFLAGS.STATIC = -Wl,-Bstatic
-LDFLAGS.DYNAMIC = -Wl,-Bdynamic
-WARN = -Wall -W
-POPT = -O2
-BIN.SUFFIX =
-LIB.SONAME = lib$(NAME).so.$(SO_MAJOR)
-LIB.DEVLNK = lib$(NAME).so
-LIB.SHARED = lib$(NAME).so.$(SO_VERSION)
-LIB.STATIC = lib$(NAME).a
diff --git a/src/other/glew/config/Makefile.darwin b/src/other/glew/config/Makefile.darwin
deleted file mode 100644
index a80acac..0000000
--- a/src/other/glew/config/Makefile.darwin
+++ /dev/null
@@ -1,26 +0,0 @@
-NAME = $(GLEW_NAME)
-CC = cc
-LD = cc
-CFLAGS.EXTRA = -no-cpp-precomp -dynamic -fno-common
-ifneq (undefined, $(origin GLEW_MX))
-CFLAGS.EXTRA += -DGLEW_MX
-endif
-PICFLAG = -fPIC
-LDFLAGS.SO = -dynamiclib -install_name $(GLEW_DEST)/lib/$(LIB.SHARED)
-LDFLAGS.EXTRA =
-ifneq (undefined, $(origin GLEW_APPLE_GLX))
-CFLAGS.EXTRA += -I/usr/X11R6/include -D'GLEW_APPLE_GLX'
-LDFLAGS.GL = -L/usr/X11R6/lib -lXmu -lXi -lGLU -lGL -lXext -lX11
-else
-LDFLAGS.GL = -framework AGL -framework OpenGL
-endif
-LDFLAGS.STATIC =
-LDFLAGS.DYNAMIC =
-WARN = -Wall -W
-POPT = -O2
-BIN.SUFFIX =
-LIB.SONAME = lib$(NAME).$(SO_MAJOR).dylib
-LIB.DEVLNK = lib$(NAME).dylib
-LIB.SHARED = lib$(NAME).$(SO_VERSION).dylib
-LIB.STATIC = lib$(NAME).a
-SHARED_OBJ_EXT = pic_o
diff --git a/src/other/glew/config/Makefile.freebsd b/src/other/glew/config/Makefile.freebsd
deleted file mode 100644
index 3bbc545..0000000
--- a/src/other/glew/config/Makefile.freebsd
+++ /dev/null
@@ -1,20 +0,0 @@
-NAME = $(GLEW_NAME)
-CC = cc
-LD = ld
-ifneq (undefined, $(origin GLEW_MX))
-CFLAGS.EXTRA = -DGLEW_MX
-endif
-LDFLAGS.SO = -shared -soname $(LIB.SONAME)
-LDFLAGS.EXTRA = -L/usr/X11R6/lib
-LDFLAGS.GL = -lXmu -lXi -lGLU -lGL -lXext -lX11
-LDFLAGS.STATIC = -Wl,-Bstatic
-LDFLAGS.DYNAMIC = -Wl,-Bdynamic
-CFLAGS.EXTRA += -I/usr/X11R6/include
-NAME = GLEW
-WARN = -Wall -W
-POPT = -O2
-BIN.SUFFIX =
-LIB.SONAME = lib$(NAME).so.$(SO_MAJOR)
-LIB.DEVLNK = lib$(NAME).so
-LIB.SHARED = lib$(NAME).so.$(SO_VERSION)
-LIB.STATIC = lib$(NAME).a
diff --git a/src/other/glew/config/Makefile.gnu b/src/other/glew/config/Makefile.gnu
deleted file mode 100644
index 69846ab..0000000
--- a/src/other/glew/config/Makefile.gnu
+++ /dev/null
@@ -1,21 +0,0 @@
-NAME = $(GLEW_NAME)
-CC = cc
-LD = cc
-ifneq (undefined, $(origin GLEW_MX))
-CFLAGS.EXTRA = -DGLEW_MX
-endif
-PICFLAG = -fPIC
-LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME)
-LDFLAGS.EXTRA = -L/usr/X11R6/lib
-LDFLAGS.GL = -lXmu -lXi -lGLU -lGL -lXext -lX11
-LDFLAGS.STATIC = -Wl,-Bstatic
-LDFLAGS.DYNAMIC = -Wl,-Bdynamic
-NAME = GLEW
-WARN = -Wall -W
-POPT = -O2
-BIN.SUFFIX =
-LIB.SONAME = lib$(NAME).so.$(SO_MAJOR)
-LIB.DEVLNK = lib$(NAME).so
-LIB.SHARED = lib$(NAME).so.$(SO_VERSION)
-LIB.STATIC = lib$(NAME).a
-SHARED_OBJ_EXT = pic_o
diff --git a/src/other/glew/config/Makefile.irix b/src/other/glew/config/Makefile.irix
deleted file mode 100644
index c618224..0000000
--- a/src/other/glew/config/Makefile.irix
+++ /dev/null
@@ -1,20 +0,0 @@
-NAME = $(GLEW_NAME)
-CC = cc
-LD = ld
-ABI = -64# -n32
-CC += $(ABI)
-LD += $(ABI)
-ifneq (undefined, $(origin GLEW_MX))
-CFLAGS.EXTRA = -DGLEW_MX
-endif
-LDFLAGS.SO = -shared -soname $(LIB.SONAME)
-LDFLAGS.EXTRA =
-LDFLAGS.GL = -lGLU -lGL -lXext -lX11
-NAME = GLEW
-WARN = -fullwarn -woff 1110,1498
-POPT = -O2 -OPT:Olimit=0
-BIN.SUFFIX =
-LIB.SONAME = lib$(NAME).so.$(SO_MAJOR)
-LIB.DEVLNK = lib$(NAME).so
-LIB.SHARED = lib$(NAME).so.$(SO_VERSION)
-LIB.STATIC = lib$(NAME).a
diff --git a/src/other/glew/config/Makefile.kfreebsd b/src/other/glew/config/Makefile.kfreebsd
deleted file mode 100644
index ace80ff..0000000
--- a/src/other/glew/config/Makefile.kfreebsd
+++ /dev/null
@@ -1,21 +0,0 @@
-NAME = $(GLEW_NAME)
-CC = cc
-LD = cc
-ifneq (undefined, $(origin GLEW_MX))
-CFLAGS.EXTRA = -DGLEW_MX
-endif
-PICFLAG = -fPIC
-LDFLAGS.SO = -shared -Wl,-soname $(LIB.SONAME)
-LDFLAGS.EXTRA = -L/usr/X11R6/lib
-LDFLAGS.GL = -lXmu -lXi -lGLU -lGL -lXext -lX11
-LDFLAGS.STATIC = -Wl,-Bstatic
-LDFLAGS.DYNAMIC = -Wl,-Bdynamic
-NAME = GLEW
-WARN = -Wall -W
-POPT = -O2
-BIN.SUFFIX =
-LIB.SONAME = lib$(NAME).so.$(SO_MAJOR)
-LIB.DEVLNK = lib$(NAME).so
-LIB.SHARED = lib$(NAME).so.$(SO_VERSION)
-LIB.STATIC = lib$(NAME).a
-SHARED_OBJ_EXT = pic_o
diff --git a/src/other/glew/config/Makefile.linux b/src/other/glew/config/Makefile.linux
deleted file mode 100644
index fd8a2d1..0000000
--- a/src/other/glew/config/Makefile.linux
+++ /dev/null
@@ -1,28 +0,0 @@
-NAME = $(GLEW_NAME)
-CC = cc
-LD = cc
-ifneq (undefined, $(origin GLEW_MX))
-CFLAGS.EXTRA = -DGLEW_MX
-endif
-PICFLAG = -fPIC
-LDFLAGS.SO = -shared -Wl,-soname=$(LIB.SONAME)
-M_ARCH ?= $(shell uname -m)
-ifeq (x86_64,${M_ARCH})
-LDFLAGS.EXTRA = -L/usr/X11R6/lib64
-LIBDIR = $(GLEW_DEST)/lib64
-else
-LDFLAGS.EXTRA = -L/usr/X11R6/lib
-LIBDIR = $(GLEW_DEST)/lib
-endif
-LDFLAGS.GL = -lXmu -lXi -lGLU -lGL -lXext -lX11
-LDFLAGS.STATIC = -Wl,-Bstatic
-LDFLAGS.DYNAMIC = -Wl,-Bdynamic
-NAME = GLEW
-WARN = -Wall -W
-POPT = -O2
-BIN.SUFFIX =
-LIB.SONAME = lib$(NAME).so.$(SO_MAJOR)
-LIB.DEVLNK = lib$(NAME).so
-LIB.SHARED = lib$(NAME).so.$(SO_VERSION)
-LIB.STATIC = lib$(NAME).a
-SHARED_OBJ_EXT = pic_o
diff --git a/src/other/glew/config/Makefile.mingw b/src/other/glew/config/Makefile.mingw
deleted file mode 100644
index 6b98a44..0000000
--- a/src/other/glew/config/Makefile.mingw
+++ /dev/null
@@ -1,19 +0,0 @@
-NAME = glew32
-CC = gcc
-# use gcc for linking, with ld it does not work
-LD = gcc
-ifneq (undefined, $(origin GLEW_MX))
-CFLAGS.EXTRA = -DGLEW_MX
-endif
-CFLAGS.SO = -DGLEW_BUILD
-#LDFLAGS.SO = -shared -soname $(LIB.SONAME) --out-implib lib/$(LIB.DEVLNK)
-LDFLAGS.SO = -shared -Wl,-soname,$(LIB.SONAME) -Wl,--out-implib,lib/$(LIB.DEVLNK)
-LDFLAGS.GL = -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32
-LDFLAGS.EXTRA = -L/mingw/lib
-WARN = -Wall -W
-POPT = -O2
-BIN.SUFFIX = .exe
-LIB.SONAME = lib$(NAME).dll
-LIB.DEVLNK = lib$(NAME).dll.a    # for mingw this is the dll import lib
-LIB.SHARED = $(NAME).dll
-LIB.STATIC = lib$(NAME).a     # the static lib will be broken (see CFLAGS.SO)
diff --git a/src/other/glew/config/Makefile.solaris b/src/other/glew/config/Makefile.solaris
deleted file mode 100644
index d7dfa9c..0000000
--- a/src/other/glew/config/Makefile.solaris
+++ /dev/null
@@ -1,17 +0,0 @@
-NAME = $(GLEW_NAME)
-CC = cc
-LD = ld
-CFLAGS.EXTRA = -I/usr/openwin/include
-ifneq (undefined, $(origin GLEW_MX))
-CFLAGS.EXTRA += -DGLEW_MX
-endif
-LDFLAGS.SO = -G
-LDFLAGS.EXTRA = -L/usr/openwin/lib
-LDFLAGS.GL = -lXmu -lXi -lGLU -lGL -lXext -lX11
-NAME = GLEW
-BIN.SUFFIX =
-POPT = -xO2
-LIB.SONAME = lib$(NAME).so.$(SO_MAJOR)
-LIB.DEVLNK = lib$(NAME).so
-LIB.SHARED = lib$(NAME).so.$(SO_VERSION)
-LIB.STATIC = lib$(NAME).a
diff --git a/src/other/glew/config/config.guess b/src/other/glew/config/config.guess
deleted file mode 100755
index da83314..0000000
--- a/src/other/glew/config/config.guess
+++ /dev/null
@@ -1,1561 +0,0 @@
-#! /bin/sh
-# Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
-#   Free Software Foundation, Inc.
-
-timestamp='2009-04-27'
-
-# 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 2 of the License, 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
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner <per at bothner.com>.
-# Please send patches to <config-patches at gnu.org>.  Submit a context
-# diff and a properly formatted ChangeLog entry.
-#
-# This script attempts to guess a canonical system name similar to
-# config.sub.  If it succeeds, it prints the system name on stdout, and
-# exits with 0.  Otherwise, it exits with 1.
-#
-# The plan is that this can be called by configure scripts if you
-# don't specify an explicit build system type.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION]
-
-Output the configuration name of the system \`$me' is run on.
-
-Operation modes:
-  -h, --help         print this help, then exit
-  -t, --time-stamp   print date of last modification, then exit
-  -v, --version      print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.guess ($timestamp)
-
-Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 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."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
-  case $1 in
-    --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit ;;
-    --version | -v )
-       echo "$version" ; exit ;;
-    --help | --h* | -h )
-       echo "$usage"; exit ;;
-    -- )     # Stop option processing
-       shift; break ;;
-    - )	# Use stdin as input.
-       break ;;
-    -* )
-       echo "$me: invalid option $1$help" >&2
-       exit 1 ;;
-    * )
-       break ;;
-  esac
-done
-
-if test $# != 0; then
-  echo "$me: too many arguments$help" >&2
-  exit 1
-fi
-
-trap 'exit 1' 1 2 15
-
-# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
-# compiler to aid in system detection is discouraged as it requires
-# temporary files to be created and, as you can see below, it is a
-# headache to deal with in a portable fashion.
-
-# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-# use `HOST_CC' if defined, but it is deprecated.
-
-# Portable tmp directory creation inspired by the Autoconf team.
-
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,)    echo "int x;" > $dummy.c ;
-	for c in cc gcc c89 c99 ; do
-	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
-	     CC_FOR_BUILD="$c"; break ;
-	  fi ;
-	done ;
-	if test x"$CC_FOR_BUILD" = x ; then
-	  CC_FOR_BUILD=no_compiler_found ;
-	fi
-	;;
- ,,*)   CC_FOR_BUILD=$CC ;;
- ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
-
-# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi at noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
-	PATH=$PATH:/.attbin ; export PATH
-fi
-
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-# Note: order is significant - the case branches are not exclusive.
-
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
-    *:NetBSD:*:*)
-	# NetBSD (nbsd) targets should (where applicable) match one or
-	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
-	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
-	# switched to ELF, *-*-netbsd* would select the old
-	# object file format.  This provides both forward
-	# compatibility and a consistent mechanism for selecting the
-	# object file format.
-	#
-	# Note: NetBSD doesn't particularly care about the vendor
-	# portion of the name.  We always set it to "unknown".
-	sysctl="sysctl -n hw.machine_arch"
-	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
-	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
-	case "${UNAME_MACHINE_ARCH}" in
-	    armeb) machine=armeb-unknown ;;
-	    arm*) machine=arm-unknown ;;
-	    sh3el) machine=shl-unknown ;;
-	    sh3eb) machine=sh-unknown ;;
-	    sh5el) machine=sh5le-unknown ;;
-	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
-	esac
-	# The Operating System including object format, if it has switched
-	# to ELF recently, or will in the future.
-	case "${UNAME_MACHINE_ARCH}" in
-	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
-		eval $set_cc_for_build
-		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-			| grep __ELF__ >/dev/null
-		then
-		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
-		    # Return netbsd for either.  FIX?
-		    os=netbsd
-		else
-		    os=netbsdelf
-		fi
-		;;
-	    *)
-	        os=netbsd
-		;;
-	esac
-	# The OS release
-	# Debian GNU/NetBSD machines have a different userland, and
-	# thus, need a distinct triplet. However, they do not need
-	# kernel version information, so it can be replaced with a
-	# suitable tag, in the style of linux-gnu.
-	case "${UNAME_VERSION}" in
-	    Debian*)
-		release='-gnu'
-		;;
-	    *)
-		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-		;;
-	esac
-	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
-	# contains redundant information, the shorter form:
-	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-	echo "${machine}-${os}${release}"
-	exit ;;
-    *:OpenBSD:*:*)
-	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
-	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
-	exit ;;
-    *:ekkoBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
-	exit ;;
-    *:SolidBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
-	exit ;;
-    macppc:MirBSD:*:*)
-	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
-	exit ;;
-    *:MirBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
-	exit ;;
-    alpha:OSF1:*:*)
-	case $UNAME_RELEASE in
-	*4.0)
-		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
-		;;
-	*5.*)
-	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
-		;;
-	esac
-	# According to Compaq, /usr/sbin/psrinfo has been available on
-	# OSF/1 and Tru64 systems produced since 1995.  I hope that
-	# covers most systems running today.  This code pipes the CPU
-	# types through head -n 1, so we only detect the type of CPU 0.
-	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
-	case "$ALPHA_CPU_TYPE" in
-	    "EV4 (21064)")
-		UNAME_MACHINE="alpha" ;;
-	    "EV4.5 (21064)")
-		UNAME_MACHINE="alpha" ;;
-	    "LCA4 (21066/21068)")
-		UNAME_MACHINE="alpha" ;;
-	    "EV5 (21164)")
-		UNAME_MACHINE="alphaev5" ;;
-	    "EV5.6 (21164A)")
-		UNAME_MACHINE="alphaev56" ;;
-	    "EV5.6 (21164PC)")
-		UNAME_MACHINE="alphapca56" ;;
-	    "EV5.7 (21164PC)")
-		UNAME_MACHINE="alphapca57" ;;
-	    "EV6 (21264)")
-		UNAME_MACHINE="alphaev6" ;;
-	    "EV6.7 (21264A)")
-		UNAME_MACHINE="alphaev67" ;;
-	    "EV6.8CB (21264C)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.8AL (21264B)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.8CX (21264D)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.9A (21264/EV69A)")
-		UNAME_MACHINE="alphaev69" ;;
-	    "EV7 (21364)")
-		UNAME_MACHINE="alphaev7" ;;
-	    "EV7.9 (21364A)")
-		UNAME_MACHINE="alphaev79" ;;
-	esac
-	# A Pn.n version is a patched version.
-	# A Vn.n version is a released version.
-	# A Tn.n version is a released field test version.
-	# A Xn.n version is an unreleased experimental baselevel.
-	# 1.2 uses "1.2" for uname -r.
-	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-	exit ;;
-    Alpha\ *:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# Should we change UNAME_MACHINE based on the output of uname instead
-	# of the specific Alpha model?
-	echo alpha-pc-interix
-	exit ;;
-    21064:Windows_NT:50:3)
-	echo alpha-dec-winnt3.5
-	exit ;;
-    Amiga*:UNIX_System_V:4.0:*)
-	echo m68k-unknown-sysv4
-	exit ;;
-    *:[Aa]miga[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-amigaos
-	exit ;;
-    *:[Mm]orph[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-morphos
-	exit ;;
-    *:OS/390:*:*)
-	echo i370-ibm-openedition
-	exit ;;
-    *:z/VM:*:*)
-	echo s390-ibm-zvmoe
-	exit ;;
-    *:OS400:*:*)
-        echo powerpc-ibm-os400
-	exit ;;
-    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
-	echo arm-acorn-riscix${UNAME_RELEASE}
-	exit ;;
-    arm:riscos:*:*|arm:RISCOS:*:*)
-	echo arm-unknown-riscos
-	exit ;;
-    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
-	echo hppa1.1-hitachi-hiuxmpp
-	exit ;;
-    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
-	# akee at wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
-	if test "`(/bin/universe) 2>/dev/null`" = att ; then
-		echo pyramid-pyramid-sysv3
-	else
-		echo pyramid-pyramid-bsd
-	fi
-	exit ;;
-    NILE*:*:*:dcosx)
-	echo pyramid-pyramid-svr4
-	exit ;;
-    DRS?6000:unix:4.0:6*)
-	echo sparc-icl-nx6
-	exit ;;
-    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
-	case `/usr/bin/uname -p` in
-	    sparc) echo sparc-icl-nx7; exit ;;
-	esac ;;
-    s390x:SunOS:*:*)
-	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4H:SunOS:5.*:*)
-	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
-	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
-	eval $set_cc_for_build
-	SUN_ARCH="i386"
-	# If there is a compiler, see if it is configured for 64-bit objects.
-	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
-	# This test works for both compilers.
-	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
-		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		grep IS_64BIT_ARCH >/dev/null
-	    then
-		SUN_ARCH="x86_64"
-	    fi
-	fi
-	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:6*:*)
-	# According to config.sub, this is the proper way to canonicalize
-	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
-	# it's likely to be more like Solaris than SunOS4.
-	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:*:*)
-	case "`/usr/bin/arch -k`" in
-	    Series*|S4*)
-		UNAME_RELEASE=`uname -v`
-		;;
-	esac
-	# Japanese Language versions have a version number like `4.1.3-JL'.
-	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
-	exit ;;
-    sun3*:SunOS:*:*)
-	echo m68k-sun-sunos${UNAME_RELEASE}
-	exit ;;
-    sun*:*:4.2BSD:*)
-	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
-	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
-	case "`/bin/arch`" in
-	    sun3)
-		echo m68k-sun-sunos${UNAME_RELEASE}
-		;;
-	    sun4)
-		echo sparc-sun-sunos${UNAME_RELEASE}
-		;;
-	esac
-	exit ;;
-    aushp:SunOS:*:*)
-	echo sparc-auspex-sunos${UNAME_RELEASE}
-	exit ;;
-    # The situation for MiNT is a little confusing.  The machine name
-    # can be virtually everything (everything which is not
-    # "atarist" or "atariste" at least should have a processor
-    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
-    # to the lowercase version "mint" (or "freemint").  Finally
-    # the system name "TOS" denotes a system which is actually not
-    # MiNT.  But MiNT is downward compatible to TOS, so this should
-    # be no problem.
-    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
-        echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
-    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
-        exit ;;
-    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
-        echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
-    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
-        echo m68k-milan-mint${UNAME_RELEASE}
-        exit ;;
-    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
-        echo m68k-hades-mint${UNAME_RELEASE}
-        exit ;;
-    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-        echo m68k-unknown-mint${UNAME_RELEASE}
-        exit ;;
-    m68k:machten:*:*)
-	echo m68k-apple-machten${UNAME_RELEASE}
-	exit ;;
-    powerpc:machten:*:*)
-	echo powerpc-apple-machten${UNAME_RELEASE}
-	exit ;;
-    RISC*:Mach:*:*)
-	echo mips-dec-mach_bsd4.3
-	exit ;;
-    RISC*:ULTRIX:*:*)
-	echo mips-dec-ultrix${UNAME_RELEASE}
-	exit ;;
-    VAX*:ULTRIX*:*:*)
-	echo vax-dec-ultrix${UNAME_RELEASE}
-	exit ;;
-    2020:CLIX:*:* | 2430:CLIX:*:*)
-	echo clipper-intergraph-clix${UNAME_RELEASE}
-	exit ;;
-    mips:*:*:UMIPS | mips:*:*:RISCos)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-#ifdef __cplusplus
-#include <stdio.h>  /* for printf() prototype */
-	int main (int argc, char *argv[]) {
-#else
-	int main (argc, argv) int argc; char *argv[]; {
-#endif
-	#if defined (host_mips) && defined (MIPSEB)
-	#if defined (SYSTYPE_SYSV)
-	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
-	#endif
-	#if defined (SYSTYPE_SVR4)
-	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
-	#endif
-	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
-	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
-	#endif
-	#endif
-	  exit (-1);
-	}
-EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c &&
-	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
-	  SYSTEM_NAME=`$dummy $dummyarg` &&
-	    { echo "$SYSTEM_NAME"; exit; }
-	echo mips-mips-riscos${UNAME_RELEASE}
-	exit ;;
-    Motorola:PowerMAX_OS:*:*)
-	echo powerpc-motorola-powermax
-	exit ;;
-    Motorola:*:4.3:PL8-*)
-	echo powerpc-harris-powermax
-	exit ;;
-    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
-	echo powerpc-harris-powermax
-	exit ;;
-    Night_Hawk:Power_UNIX:*:*)
-	echo powerpc-harris-powerunix
-	exit ;;
-    m88k:CX/UX:7*:*)
-	echo m88k-harris-cxux7
-	exit ;;
-    m88k:*:4*:R4*)
-	echo m88k-motorola-sysv4
-	exit ;;
-    m88k:*:3*:R3*)
-	echo m88k-motorola-sysv3
-	exit ;;
-    AViiON:dgux:*:*)
-        # DG/UX returns AViiON for all architectures
-        UNAME_PROCESSOR=`/usr/bin/uname -p`
-	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
-	then
-	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
-	       [ ${TARGET_BINARY_INTERFACE}x = x ]
-	    then
-		echo m88k-dg-dgux${UNAME_RELEASE}
-	    else
-		echo m88k-dg-dguxbcs${UNAME_RELEASE}
-	    fi
-	else
-	    echo i586-dg-dgux${UNAME_RELEASE}
-	fi
- 	exit ;;
-    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
-	echo m88k-dolphin-sysv3
-	exit ;;
-    M88*:*:R3*:*)
-	# Delta 88k system running SVR3
-	echo m88k-motorola-sysv3
-	exit ;;
-    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
-	echo m88k-tektronix-sysv3
-	exit ;;
-    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
-	echo m68k-tektronix-bsd
-	exit ;;
-    *:IRIX*:*:*)
-	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
-	exit ;;
-    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
-	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
-	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
-    i*86:AIX:*:*)
-	echo i386-ibm-aix
-	exit ;;
-    ia64:AIX:*:*)
-	if [ -x /usr/bin/oslevel ] ; then
-		IBM_REV=`/usr/bin/oslevel`
-	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-	fi
-	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
-	exit ;;
-    *:AIX:2:3)
-	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
-		eval $set_cc_for_build
-		sed 's/^		//' << EOF >$dummy.c
-		#include <sys/systemcfg.h>
-
-		main()
-			{
-			if (!__power_pc())
-				exit(1);
-			puts("powerpc-ibm-aix3.2.5");
-			exit(0);
-			}
-EOF
-		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
-		then
-			echo "$SYSTEM_NAME"
-		else
-			echo rs6000-ibm-aix3.2.5
-		fi
-	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
-		echo rs6000-ibm-aix3.2.4
-	else
-		echo rs6000-ibm-aix3.2
-	fi
-	exit ;;
-    *:AIX:*:[456])
-	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
-	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
-		IBM_ARCH=rs6000
-	else
-		IBM_ARCH=powerpc
-	fi
-	if [ -x /usr/bin/oslevel ] ; then
-		IBM_REV=`/usr/bin/oslevel`
-	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-	fi
-	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
-	exit ;;
-    *:AIX:*:*)
-	echo rs6000-ibm-aix
-	exit ;;
-    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
-	echo romp-ibm-bsd4.4
-	exit ;;
-    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
-	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
-	exit ;;                             # report: romp-ibm BSD 4.3
-    *:BOSX:*:*)
-	echo rs6000-bull-bosx
-	exit ;;
-    DPX/2?00:B.O.S.:*:*)
-	echo m68k-bull-sysv3
-	exit ;;
-    9000/[34]??:4.3bsd:1.*:*)
-	echo m68k-hp-bsd
-	exit ;;
-    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
-	echo m68k-hp-bsd4.4
-	exit ;;
-    9000/[34678]??:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	case "${UNAME_MACHINE}" in
-	    9000/31? )            HP_ARCH=m68000 ;;
-	    9000/[34]?? )         HP_ARCH=m68k ;;
-	    9000/[678][0-9][0-9])
-		if [ -x /usr/bin/getconf ]; then
-		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
-                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
-                    case "${sc_cpu_version}" in
-                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
-                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
-                      532)                      # CPU_PA_RISC2_0
-                        case "${sc_kernel_bits}" in
-                          32) HP_ARCH="hppa2.0n" ;;
-                          64) HP_ARCH="hppa2.0w" ;;
-			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
-                        esac ;;
-                    esac
-		fi
-		if [ "${HP_ARCH}" = "" ]; then
-		    eval $set_cc_for_build
-		    sed 's/^              //' << EOF >$dummy.c
-
-              #define _HPUX_SOURCE
-              #include <stdlib.h>
-              #include <unistd.h>
-
-              int main ()
-              {
-              #if defined(_SC_KERNEL_BITS)
-                  long bits = sysconf(_SC_KERNEL_BITS);
-              #endif
-                  long cpu  = sysconf (_SC_CPU_VERSION);
-
-                  switch (cpu)
-              	{
-              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
-              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
-              	case CPU_PA_RISC2_0:
-              #if defined(_SC_KERNEL_BITS)
-              	    switch (bits)
-              		{
-              		case 64: puts ("hppa2.0w"); break;
-              		case 32: puts ("hppa2.0n"); break;
-              		default: puts ("hppa2.0"); break;
-              		} break;
-              #else  /* !defined(_SC_KERNEL_BITS) */
-              	    puts ("hppa2.0"); break;
-              #endif
-              	default: puts ("hppa1.0"); break;
-              	}
-                  exit (0);
-              }
-EOF
-		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
-		    test -z "$HP_ARCH" && HP_ARCH=hppa
-		fi ;;
-	esac
-	if [ ${HP_ARCH} = "hppa2.0w" ]
-	then
-	    eval $set_cc_for_build
-
-	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
-	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
-	    # generating 64-bit code.  GNU and HP use different nomenclature:
-	    #
-	    # $ CC_FOR_BUILD=cc ./config.guess
-	    # => hppa2.0w-hp-hpux11.23
-	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
-	    # => hppa64-hp-hpux11.23
-
-	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
-		grep __LP64__ >/dev/null
-	    then
-		HP_ARCH="hppa2.0w"
-	    else
-		HP_ARCH="hppa64"
-	    fi
-	fi
-	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
-	exit ;;
-    ia64:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	echo ia64-hp-hpux${HPUX_REV}
-	exit ;;
-    3050*:HI-UX:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#include <unistd.h>
-	int
-	main ()
-	{
-	  long cpu = sysconf (_SC_CPU_VERSION);
-	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
-	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
-	     results, however.  */
-	  if (CPU_IS_PA_RISC (cpu))
-	    {
-	      switch (cpu)
-		{
-		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
-		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
-		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
-		  default: puts ("hppa-hitachi-hiuxwe2"); break;
-		}
-	    }
-	  else if (CPU_IS_HP_MC68K (cpu))
-	    puts ("m68k-hitachi-hiuxwe2");
-	  else puts ("unknown-hitachi-hiuxwe2");
-	  exit (0);
-	}
-EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
-		{ echo "$SYSTEM_NAME"; exit; }
-	echo unknown-hitachi-hiuxwe2
-	exit ;;
-    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
-	echo hppa1.1-hp-bsd
-	exit ;;
-    9000/8??:4.3bsd:*:*)
-	echo hppa1.0-hp-bsd
-	exit ;;
-    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
-	echo hppa1.0-hp-mpeix
-	exit ;;
-    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
-	echo hppa1.1-hp-osf
-	exit ;;
-    hp8??:OSF1:*:*)
-	echo hppa1.0-hp-osf
-	exit ;;
-    i*86:OSF1:*:*)
-	if [ -x /usr/sbin/sysversion ] ; then
-	    echo ${UNAME_MACHINE}-unknown-osf1mk
-	else
-	    echo ${UNAME_MACHINE}-unknown-osf1
-	fi
-	exit ;;
-    parisc*:Lites*:*:*)
-	echo hppa1.1-hp-lites
-	exit ;;
-    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
-	echo c1-convex-bsd
-        exit ;;
-    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
-	if getsysinfo -f scalar_acc
-	then echo c32-convex-bsd
-	else echo c2-convex-bsd
-	fi
-        exit ;;
-    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
-	echo c34-convex-bsd
-        exit ;;
-    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
-	echo c38-convex-bsd
-        exit ;;
-    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
-	echo c4-convex-bsd
-        exit ;;
-    CRAY*Y-MP:*:*:*)
-	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*[A-Z]90:*:*:*)
-	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
-	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-	      -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*TS:*:*:*)
-	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*T3E:*:*:*)
-	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*SV1:*:*:*)
-	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    *:UNICOS/mp:*:*)
-	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
-	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
-        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-        exit ;;
-    5000:UNIX_System_V:4.*:*)
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
-        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-	exit ;;
-    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
-	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
-	exit ;;
-    sparc*:BSD/OS:*:*)
-	echo sparc-unknown-bsdi${UNAME_RELEASE}
-	exit ;;
-    *:BSD/OS:*:*)
-	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
-	exit ;;
-    *:FreeBSD:*:*)
-	case ${UNAME_MACHINE} in
-	    pc98)
-		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	    amd64)
-		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	    *)
-		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	esac
-	exit ;;
-    i*:CYGWIN*:*)
-	echo ${UNAME_MACHINE}-pc-cygwin
-	exit ;;
-    *:MINGW*:*)
-	echo ${UNAME_MACHINE}-pc-mingw32
-	exit ;;
-    i*:windows32*:*)
-    	# uname -m includes "-pc" on this system.
-    	echo ${UNAME_MACHINE}-mingw32
-	exit ;;
-    i*:PW*:*)
-	echo ${UNAME_MACHINE}-pc-pw32
-	exit ;;
-    *:Interix*:[3456]*)
-    	case ${UNAME_MACHINE} in
-	    x86)
-		echo i586-pc-interix${UNAME_RELEASE}
-		exit ;;
-	    EM64T | authenticamd | genuineintel)
-		echo x86_64-unknown-interix${UNAME_RELEASE}
-		exit ;;
-	    IA64)
-		echo ia64-unknown-interix${UNAME_RELEASE}
-		exit ;;
-	esac ;;
-    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
-	echo i${UNAME_MACHINE}-pc-mks
-	exit ;;
-    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
-	# UNAME_MACHINE based on the output of uname instead of i386?
-	echo i586-pc-interix
-	exit ;;
-    i*:UWIN*:*)
-	echo ${UNAME_MACHINE}-pc-uwin
-	exit ;;
-    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
-	echo x86_64-unknown-cygwin
-	exit ;;
-    p*:CYGWIN*:*)
-	echo powerpcle-unknown-cygwin
-	exit ;;
-    prep*:SunOS:5.*:*)
-	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    *:GNU:*:*)
-	# the GNU system
-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
-	exit ;;
-    *:GNU/*:*:*)
-	# other systems with GNU libc and userland
-	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
-	exit ;;
-    i*86:Minix:*:*)
-	echo ${UNAME_MACHINE}-pc-minix
-	exit ;;
-    arm*:Linux:*:*)
-	eval $set_cc_for_build
-	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
-	    | grep -q __ARM_EABI__
-	then
-	    echo ${UNAME_MACHINE}-unknown-linux-gnu
-	else
-	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
-	fi
-	exit ;;
-    avr32*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    cris:Linux:*:*)
-	echo cris-axis-linux-gnu
-	exit ;;
-    crisv32:Linux:*:*)
-	echo crisv32-axis-linux-gnu
-	exit ;;
-    frv:Linux:*:*)
-    	echo frv-unknown-linux-gnu
-	exit ;;
-    ia64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    m32r*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    m68*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    mips:Linux:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#undef CPU
-	#undef mips
-	#undef mipsel
-	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=mipsel
-	#else
-	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=mips
-	#else
-	CPU=
-	#endif
-	#endif
-EOF
-	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-	    /^CPU/{
-		s: ::g
-		p
-	    }'`"
-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-	;;
-    mips64:Linux:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#undef CPU
-	#undef mips64
-	#undef mips64el
-	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=mips64el
-	#else
-	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=mips64
-	#else
-	CPU=
-	#endif
-	#endif
-EOF
-	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-	    /^CPU/{
-		s: ::g
-		p
-	    }'`"
-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-	;;
-    or32:Linux:*:*)
-	echo or32-unknown-linux-gnu
-	exit ;;
-    ppc:Linux:*:*)
-	echo powerpc-unknown-linux-gnu
-	exit ;;
-    ppc64:Linux:*:*)
-	echo powerpc64-unknown-linux-gnu
-	exit ;;
-    alpha:Linux:*:*)
-	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-	  EV5)   UNAME_MACHINE=alphaev5 ;;
-	  EV56)  UNAME_MACHINE=alphaev56 ;;
-	  PCA56) UNAME_MACHINE=alphapca56 ;;
-	  PCA57) UNAME_MACHINE=alphapca56 ;;
-	  EV6)   UNAME_MACHINE=alphaev6 ;;
-	  EV67)  UNAME_MACHINE=alphaev67 ;;
-	  EV68*) UNAME_MACHINE=alphaev68 ;;
-        esac
-	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
-	exit ;;
-    padre:Linux:*:*)
-	echo sparc-unknown-linux-gnu
-	exit ;;
-    parisc:Linux:*:* | hppa:Linux:*:*)
-	# Look for CPU level
-	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
-	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
-	  *)    echo hppa-unknown-linux-gnu ;;
-	esac
-	exit ;;
-    parisc64:Linux:*:* | hppa64:Linux:*:*)
-	echo hppa64-unknown-linux-gnu
-	exit ;;
-    s390:Linux:*:* | s390x:Linux:*:*)
-	echo ${UNAME_MACHINE}-ibm-linux
-	exit ;;
-    sh64*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    sh*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    sparc:Linux:*:* | sparc64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    vax:Linux:*:*)
-	echo ${UNAME_MACHINE}-dec-linux-gnu
-	exit ;;
-    x86_64:Linux:*:*)
-	echo x86_64-unknown-linux-gnu
-	exit ;;
-    xtensa*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    i*86:Linux:*:*)
-	# The BFD linker knows what the default object file format is, so
-	# first see if it will tell us. cd to the root directory to prevent
-	# problems with other programs or directories called `ld' in the path.
-	# Set LC_ALL=C to ensure ld outputs messages in English.
-	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
-			 | sed -ne '/supported targets:/!d
-				    s/[ 	][ 	]*/ /g
-				    s/.*supported targets: *//
-				    s/ .*//
-				    p'`
-        case "$ld_supported_targets" in
-	  elf32-i386)
-		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
-		;;
-	  a.out-i386-linux)
-		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
-		exit ;;
-	  "")
-		# Either a pre-BFD a.out linker (linux-gnuoldld) or
-		# one that does not give us useful --help.
-		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
-		exit ;;
-	esac
-	# Determine whether the default compiler is a.out or elf
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#include <features.h>
-	#ifdef __ELF__
-	# ifdef __GLIBC__
-	#  if __GLIBC__ >= 2
-	LIBC=gnu
-	#  else
-	LIBC=gnulibc1
-	#  endif
-	# else
-	LIBC=gnulibc1
-	# endif
-	#else
-	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
-	LIBC=gnu
-	#else
-	LIBC=gnuaout
-	#endif
-	#endif
-	#ifdef __dietlibc__
-	LIBC=dietlibc
-	#endif
-EOF
-	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-	    /^LIBC/{
-		s: ::g
-		p
-	    }'`"
-	test x"${LIBC}" != x && {
-		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
-		exit
-	}
-	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
-	;;
-    i*86:DYNIX/ptx:4*:*)
-	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
-	# earlier versions are messed up and put the nodename in both
-	# sysname and nodename.
-	echo i386-sequent-sysv4
-	exit ;;
-    i*86:UNIX_SV:4.2MP:2.*)
-        # Unixware is an offshoot of SVR4, but it has its own version
-        # number series starting with 2...
-        # I am not positive that other SVR4 systems won't match this,
-	# I just have to hope.  -- rms.
-        # Use sysv4.2uw... so that sysv4* matches it.
-	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
-	exit ;;
-    i*86:OS/2:*:*)
-	# If we were able to find `uname', then EMX Unix compatibility
-	# is probably installed.
-	echo ${UNAME_MACHINE}-pc-os2-emx
-	exit ;;
-    i*86:XTS-300:*:STOP)
-	echo ${UNAME_MACHINE}-unknown-stop
-	exit ;;
-    i*86:atheos:*:*)
-	echo ${UNAME_MACHINE}-unknown-atheos
-	exit ;;
-    i*86:syllable:*:*)
-	echo ${UNAME_MACHINE}-pc-syllable
-	exit ;;
-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
-	echo i386-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    i*86:*DOS:*:*)
-	echo ${UNAME_MACHINE}-pc-msdosdjgpp
-	exit ;;
-    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
-	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
-	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
-		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
-	else
-		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
-	fi
-	exit ;;
-    i*86:*:5:[678]*)
-    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
-	case `/bin/uname -X | grep "^Machine"` in
-	    *486*)	     UNAME_MACHINE=i486 ;;
-	    *Pentium)	     UNAME_MACHINE=i586 ;;
-	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
-	esac
-	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
-	exit ;;
-    i*86:*:3.2:*)
-	if test -f /usr/options/cb.name; then
-		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
-		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
-	elif /bin/uname -X 2>/dev/null >/dev/null ; then
-		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
-		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
-		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
-			&& UNAME_MACHINE=i586
-		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
-			&& UNAME_MACHINE=i686
-		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
-			&& UNAME_MACHINE=i686
-		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
-	else
-		echo ${UNAME_MACHINE}-pc-sysv32
-	fi
-	exit ;;
-    pc:*:*:*)
-	# Left here for compatibility:
-        # uname -m prints for DJGPP always 'pc', but it prints nothing about
-        # the processor, so we play safe by assuming i586.
-	# Note: whatever this is, it MUST be the same as what config.sub
-	# prints for the "djgpp" host, or else GDB configury will decide that
-	# this is a cross-build.
-	echo i586-pc-msdosdjgpp
-        exit ;;
-    Intel:Mach:3*:*)
-	echo i386-pc-mach3
-	exit ;;
-    paragon:*:*:*)
-	echo i860-intel-osf1
-	exit ;;
-    i860:*:4.*:*) # i860-SVR4
-	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
-	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
-	else # Add other i860-SVR4 vendors below as they are discovered.
-	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
-	fi
-	exit ;;
-    mini*:CTIX:SYS*5:*)
-	# "miniframe"
-	echo m68010-convergent-sysv
-	exit ;;
-    mc68k:UNIX:SYSTEM5:3.51m)
-	echo m68k-convergent-sysv
-	exit ;;
-    M680?0:D-NIX:5.3:*)
-	echo m68k-diab-dnix
-	exit ;;
-    M68*:*:R3V[5678]*:*)
-	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
-    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
-	OS_REL=''
-	test -r /etc/.relid \
-	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
-	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
-    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
-        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-          && { echo i486-ncr-sysv4; exit; } ;;
-    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
-	OS_REL='.3'
-	test -r /etc/.relid \
-	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
-	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
-    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
-	echo m68k-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    mc68030:UNIX_System_V:4.*:*)
-	echo m68k-atari-sysv4
-	exit ;;
-    TSUNAMI:LynxOS:2.*:*)
-	echo sparc-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    rs6000:LynxOS:2.*:*)
-	echo rs6000-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
-	echo powerpc-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    SM[BE]S:UNIX_SV:*:*)
-	echo mips-dde-sysv${UNAME_RELEASE}
-	exit ;;
-    RM*:ReliantUNIX-*:*:*)
-	echo mips-sni-sysv4
-	exit ;;
-    RM*:SINIX-*:*:*)
-	echo mips-sni-sysv4
-	exit ;;
-    *:SINIX-*:*:*)
-	if uname -p 2>/dev/null >/dev/null ; then
-		UNAME_MACHINE=`(uname -p) 2>/dev/null`
-		echo ${UNAME_MACHINE}-sni-sysv4
-	else
-		echo ns32k-sni-sysv
-	fi
-	exit ;;
-    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-                      # says <Richard.M.Bartel at ccMail.Census.GOV>
-        echo i586-unisys-sysv4
-        exit ;;
-    *:UNIX_System_V:4*:FTX*)
-	# From Gerald Hewes <hewes at openmarket.com>.
-	# How about differentiating between stratus architectures? -djm
-	echo hppa1.1-stratus-sysv4
-	exit ;;
-    *:*:*:FTX*)
-	# From seanf at swdc.stratus.com.
-	echo i860-stratus-sysv4
-	exit ;;
-    i*86:VOS:*:*)
-	# From Paul.Green at stratus.com.
-	echo ${UNAME_MACHINE}-stratus-vos
-	exit ;;
-    *:VOS:*:*)
-	# From Paul.Green at stratus.com.
-	echo hppa1.1-stratus-vos
-	exit ;;
-    mc68*:A/UX:*:*)
-	echo m68k-apple-aux${UNAME_RELEASE}
-	exit ;;
-    news*:NEWS-OS:6*:*)
-	echo mips-sony-newsos6
-	exit ;;
-    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
-	if [ -d /usr/nec ]; then
-	        echo mips-nec-sysv${UNAME_RELEASE}
-	else
-	        echo mips-unknown-sysv${UNAME_RELEASE}
-	fi
-        exit ;;
-    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
-	echo powerpc-be-beos
-	exit ;;
-    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
-	echo powerpc-apple-beos
-	exit ;;
-    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
-	echo i586-pc-beos
-	exit ;;
-    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
-	echo i586-pc-haiku
-	exit ;;
-    SX-4:SUPER-UX:*:*)
-	echo sx4-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-5:SUPER-UX:*:*)
-	echo sx5-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-6:SUPER-UX:*:*)
-	echo sx6-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-7:SUPER-UX:*:*)
-	echo sx7-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-8:SUPER-UX:*:*)
-	echo sx8-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-8R:SUPER-UX:*:*)
-	echo sx8r-nec-superux${UNAME_RELEASE}
-	exit ;;
-    Power*:Rhapsody:*:*)
-	echo powerpc-apple-rhapsody${UNAME_RELEASE}
-	exit ;;
-    *:Rhapsody:*:*)
-	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
-	exit ;;
-    *:Darwin:*:*)
-	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-	case $UNAME_PROCESSOR in
-	    unknown) UNAME_PROCESSOR=powerpc ;;
-	esac
-	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
-	exit ;;
-    *:procnto*:*:* | *:QNX:[0123456789]*:*)
-	UNAME_PROCESSOR=`uname -p`
-	if test "$UNAME_PROCESSOR" = "x86"; then
-		UNAME_PROCESSOR=i386
-		UNAME_MACHINE=pc
-	fi
-	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
-	exit ;;
-    *:QNX:*:4*)
-	echo i386-pc-qnx
-	exit ;;
-    NSE-?:NONSTOP_KERNEL:*:*)
-	echo nse-tandem-nsk${UNAME_RELEASE}
-	exit ;;
-    NSR-?:NONSTOP_KERNEL:*:*)
-	echo nsr-tandem-nsk${UNAME_RELEASE}
-	exit ;;
-    *:NonStop-UX:*:*)
-	echo mips-compaq-nonstopux
-	exit ;;
-    BS2000:POSIX*:*:*)
-	echo bs2000-siemens-sysv
-	exit ;;
-    DS/*:UNIX_System_V:*:*)
-	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
-	exit ;;
-    *:Plan9:*:*)
-	# "uname -m" is not consistent, so use $cputype instead. 386
-	# is converted to i386 for consistency with other x86
-	# operating systems.
-	if test "$cputype" = "386"; then
-	    UNAME_MACHINE=i386
-	else
-	    UNAME_MACHINE="$cputype"
-	fi
-	echo ${UNAME_MACHINE}-unknown-plan9
-	exit ;;
-    *:TOPS-10:*:*)
-	echo pdp10-unknown-tops10
-	exit ;;
-    *:TENEX:*:*)
-	echo pdp10-unknown-tenex
-	exit ;;
-    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
-	echo pdp10-dec-tops20
-	exit ;;
-    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
-	echo pdp10-xkl-tops20
-	exit ;;
-    *:TOPS-20:*:*)
-	echo pdp10-unknown-tops20
-	exit ;;
-    *:ITS:*:*)
-	echo pdp10-unknown-its
-	exit ;;
-    SEI:*:*:SEIUX)
-        echo mips-sei-seiux${UNAME_RELEASE}
-	exit ;;
-    *:DragonFly:*:*)
-	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-	exit ;;
-    *:*VMS:*:*)
-    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
-	case "${UNAME_MACHINE}" in
-	    A*) echo alpha-dec-vms ; exit ;;
-	    I*) echo ia64-dec-vms ; exit ;;
-	    V*) echo vax-dec-vms ; exit ;;
-	esac ;;
-    *:XENIX:*:SysV)
-	echo i386-pc-xenix
-	exit ;;
-    i*86:skyos:*:*)
-	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
-	exit ;;
-    i*86:rdos:*:*)
-	echo ${UNAME_MACHINE}-pc-rdos
-	exit ;;
-    i*86:AROS:*:*)
-	echo ${UNAME_MACHINE}-pc-aros
-	exit ;;
-esac
-
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
-  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
-     I don't know....  */
-  printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
-  printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
-          "4"
-#else
-	  ""
-#endif
-         ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
-  printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
-  printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
-  int version;
-  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
-  if (version < 4)
-    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
-  else
-    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
-  exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
-  printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
-  printf ("ns32k-encore-mach\n"); exit (0);
-#else
-  printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
-  printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
-  printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
-  printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
-    struct utsname un;
-
-    uname(&un);
-
-    if (strncmp(un.version, "V2", 2) == 0) {
-	printf ("i386-sequent-ptx2\n"); exit (0);
-    }
-    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
-	printf ("i386-sequent-ptx1\n"); exit (0);
-    }
-    printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-#  include <sys/param.h>
-#  if defined (BSD)
-#   if BSD == 43
-      printf ("vax-dec-bsd4.3\n"); exit (0);
-#   else
-#    if BSD == 199006
-      printf ("vax-dec-bsd4.3reno\n"); exit (0);
-#    else
-      printf ("vax-dec-bsd\n"); exit (0);
-#    endif
-#   endif
-#  else
-    printf ("vax-dec-bsd\n"); exit (0);
-#  endif
-# else
-    printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
-  printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
-  exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
-	{ echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
-    case `getsysinfo -f cpu_type` in
-    c1*)
-	echo c1-convex-bsd
-	exit ;;
-    c2*)
-	if getsysinfo -f scalar_acc
-	then echo c32-convex-bsd
-	else echo c2-convex-bsd
-	fi
-	exit ;;
-    c34*)
-	echo c34-convex-bsd
-	exit ;;
-    c38*)
-	echo c38-convex-bsd
-	exit ;;
-    c4*)
-	echo c4-convex-bsd
-	exit ;;
-    esac
-fi
-
-cat >&2 <<EOF
-$0: unable to guess system type
-
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
-
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-and
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patches at gnu.org> in order to provide the needed
-information to handle your system.
-
-config.guess timestamp = $timestamp
-
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
-
-hostinfo               = `(hostinfo) 2>/dev/null`
-/bin/universe          = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch              = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM  = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
-EOF
-
-exit 1
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/src/other/glew/config/version b/src/other/glew/config/version
deleted file mode 100644
index 42b850f..0000000
--- a/src/other/glew/config/version
+++ /dev/null
@@ -1,7 +0,0 @@
-GLEW_MAJOR = 1
-GLEW_MINOR = 5
-GLEW_MICRO = 4
-GLEW_VERSION = $(GLEW_MAJOR).$(GLEW_MINOR).$(GLEW_MICRO)
-GLEW_NAME = GLEW
-SO_MAJOR = $(GLEW_MAJOR).$(GLEW_MINOR)
-SO_VERSION = $(GLEW_VERSION)
diff --git a/src/other/glew/doc/advanced.html b/src/other/glew/doc/advanced.html
deleted file mode 100644
index 4f722d4..0000000
--- a/src/other/glew/doc/advanced.html
+++ /dev/null
@@ -1,278 +0,0 @@
-<!-- begin header.html -->
-<!--
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
--->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html/4/loose.dtd">
-<!--  <img src="new.png" height="12" alt="NEW!"> -->
-<html>
-<head>
-<title>GLEW: The OpenGL Extension Wrangler Library</title>
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> 
-<link href="glew.css" type="text/css" rel="stylesheet">
-</head>
-<body bgcolor="#fff0d0">
-<table border="0" width="100%" cellpadding="12" cellspacing="8" style="height:100%">
-<tr>
-<td bgcolor="#ffffff" align="left" valign="top" width="200">
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr>
-<td valign="top">
-
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">1.5.4</a></i></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center">
-<table border="0" cellpadding="0" cellspacing="0" align="center">
-<tr><td align="center"><a href="index.html">Download</a></td></tr>
-<tr><td align="center"><a href="install.html">Installation</a></td></tr>
-<tr><td align="center"><a href="basic.html">Basic Usage</a></td></tr>
-<tr><td align="center">Advanced Usage</td></tr>
-<tr><td align="center"><a href="credits.html">Credits & Copyright</a></td></tr>
-<tr><td align="center"><a href="log.html">Change Log</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/projects/glew/">Project Page</a></td></tr>
-<tr><td align="center"><a href="https://sourceforge.net/mail/?group_id=67586">Mailing Lists</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/tracker/?group_id=67586">Bug Tracker</a></td></tr>
-</table>
-<tr><td align="center"><br></tr>
-</table>
-</td>
-</tr>
-<tr>
-
-<td valign="bottom">
-<table border="0" width="100%" cellpadding="5" cellspacing="0" align="left">
-<tr><td align="center"><i>Last Update: 04-21-10</i></td></tr>
-<tr><td align="center">
-<a href="http://www.opengl.org"> <img src="./ogl_sm.jpg" width="68"
-height="35" border="0" alt="OpenGL Logo"></a>
-<a href="http://sourceforge.net"> <img
-src="http://sourceforge.net/sflogo.php?group_id=67586&type=1"
-width="88" height="31" border="0" alt="SourceForge Logo"></a>
-</td>
-</tr>
-<!--- <tr><td align="center"><a
-href="http://sourceforge.net/donate/index.php?group_id=67586"><img
-src="http://images.sourceforge.net/images/project-support.jpg"
-width="88" height="32" border="0" alt="Support This Project"></a></td></tr> -->
-</table>
-</td>
-</tr>
-</table>
-</td>
-
-<td bgcolor="#ffffff" align="left" valign="top">
-
-<h1>The OpenGL Extension Wrangler Library</h1>
-
-<!-- end header.html -->
-
-
-<h2>Automatic Code Generation</h2>
-
-<p>
-Starting from release 1.1.0, the source code and parts of the
-documentation are automatically generated from the extension
-specifications in a two-step process.  In the first step,
-specification files from the OpenGL registry are downloaded and
-parsed. Skeleton descriptors are created for each extension.  These
-descriptors contain all necessary information for creating the source
-code and documentation in a simple and compact format, including the
-name of the extension, url link to the specification, tokens, function
-declarations, typedefs and struct definitions.  In the second step,
-the header files as well as the library and glewinfo source are
-generated from the descriptor files.  The code generation scripts are
-located in the <tt>auto</tt> subdirectory.
-</p>
-
-<p>
-The code generation scripts require GNU make, wget, and perl. On
-Windows, the simplest way to get access to these tools is to install
-<a href="http://www.cygwin.com/">Cygwin</a>, but make sure that the
-root directory is mounted in binary mode. The makefile in the
-<tt>auto</tt> directory provides the following build targets:
-</p>
-
-<center>
-<table border=0 cellpadding=0 cellspacing=0> <!-- bgcolor="#f0f0f0" -->
-<tr><td align="right" valign="top" width="25%"><tt>make</tt></td>
-<td>    </td>
-<td align=left>Create the source files from the descriptors. If the
-descriptors do not exist, create them from the spec files. If the spec
-files do not exist, download them from the OpenGL repository.</td></tr>
-<tr><td align="right" valign="top"><tt>make clean</tt></td>
-<td>    </td>
-<td align=left>Delete the source files.</td></tr>
-<tr><td align="right" valign="top"><tt>make clobber</tt></td>
-<td>    </td>
-<td align=left>Delete the source files and the descriptors.</td></tr>
-<tr><td align="right" valign="top"><tt>make destroy</tt></td>
-<td>    </td>
-<td align=left>Delete the source files, the descriptors, and the spec files.</td></tr>
-<tr><td align="right" valign="top"><tt>make custom</tt></td>
-<td>    </td>
-<td align=left>Create the source files for the extensions
-listed in <tt>auto/custom.txt</tt>. See "Custom Code
-Generation" below for more details.</td></tr>
-</table>
-</center>
-
-<h3>Adding a New Extension</h3>
-
-<p>
-To add a new extension, create a descriptor file for the extension in
-<tt>auto/core</tt> and rerun the code generation scripts by typing
-<tt>make clean; make</tt> in the <tt>auto</tt> directory.
-</p>
-
-<p>
-The format of the descriptor file is given below. Items in
-brackets are optional.
-</p>
-
-<p class="pre">
-<Extension Name><br>
-[<URL of Specification File>]<br>
-    [<Token Name> <Token Value>]<br>
-    [<Token Name> <Token Value>]<br>
-    ...<br>
-    [<Typedef>]<br>
-    [<Typedef>]<br>
-    ...<br>
-    [<Function Signature>]<br>
-    [<Function Signature>]<br>
-    ...<br>
-<!--     [<Function Definition>]<br>
-    [<Function Definition>]<br>
-    ...<br> -->
-</p>
-
-<!--
-<p>
-Note that <tt>Function Definitions</tt> are copied to the header files
-without changes and have to be terminated with a semicolon. In
-contrast, <tt>Tokens</tt>, <tt>Function signatures</tt>, and
-<tt>Typedefs</tt> should not be terminated with a semicolon.
-</p>
--->
-
-<p>
-Take a look at one of the files in <tt>auto/core</tt> for an
-example. Note that typedefs and function signatures should not be
-terminated with a semicolon.
-</p>
-
-<h3>Custom Code Generation</h3>
-<p>
-Starting from GLEW 1.3.0, it is possible to control which extensions
-to include in the libarary by specifying a list in
-<tt>auto/custom.txt</tt>. This is useful when you do not need all the
-extensions and would like to reduce the size of the source files.
-Type <tt>make clean; make custom</tt> in the <tt>auto</tt> directory
-to rerun the scripts with the custom list of extensions.
-</p>
-
-<p>
-For example, the following is the list of extensions needed to get GLEW and the
-utilities to compile.
-</p>
-
-<p class="pre">
-WGL_ARB_extensions_string<br>
-WGL_ARB_multisample<br>
-WGL_ARB_pixel_format<br>
-WGL_ARB_pbuffer<br>
-WGL_EXT_extensions_string<br>
-WGL_ATI_pixel_format_float<br>
-WGL_NV_float_buffer<br>
-</p>
-
-<h2>Multiple Rendering Contexts (GLEW MX)</h2>
-
-<p>Starting with release 1.2.0, thread-safe support for multiple
-rendering contexts, possibly with different capabilities, is
-available. Since this is not required by most users, it is not added
-to the binary releases to maintain compatibility between different
-versions. To include multi-context support, you have to do the
-following:</p>
-<ol>
-<li>Compile and use GLEW with the <tt>GLEW_MX</tt> preprocessor token
-defined.</li>
-<li>For each rendering context, create a <tt>GLEWContext</tt> object
-that will be available as long as the rendering context exists.</li>
-<li>Define a macro or function called <tt>glewGetContext()</tt> that
-returns a pointer to the <tt>GLEWContext</tt> object associated with
-the rendering context from which OpenGL/WGL/GLX calls are issued. This
-dispatch mechanism is primitive, but generic.
-<li>Make sure that you call <tt>glewInit()</tt> after creating the
-<tt>GLEWContext</tt> object in each rendering context.  Note, that the
-<tt>GLEWContext</tt> pointer returned by <tt>glewGetContext()</tt> has
-to reside in global or thread-local memory.
-</ol>
-
-<p>Note that according to the <a
-href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/opengl/ntopnglr_6yer.asp">MSDN
-WGL documentation</a>, you have to initialize the entry points for
-every rendering context that use pixel formats with different
-capabilities For example, the pixel formats provided by the generic
-software OpenGL implementation by Microsoft vs. the hardware
-accelerated pixel formats have different capabilities.  <b>GLEW by
-default ignores this requirement, and does not define per-context
-entry points (you can however do this using the steps described
-above).</b> Assuming a global namespace for the entry points works in
-most situations, because typically all hardware accelerated pixel
-formats provide the same entry points and capabilities. This means
-that unless you use the multi-context version of GLEW, you need to
-call <tt>glewInit()</tt> only once in your program, or more precisely,
-once per process.</p>
-
-<h2>Separate Namespace</h2>
-
-<p>
-To avoid name clashes when linking with libraries that include the
-same symbols, extension entry points are declared in a separate
-namespace (release 1.1.0 and up). This is achieved by aliasing OpenGL
-function names to their GLEW equivalents. For instance,
-<tt>glFancyFunction</tt> is simply an alias to
-<tt>glewFancyFunction</tt>.  The separate namespace does not effect
-token and function pointer definitions.
-</p>
-
-<h2>Known Issues</h2>
-
-<p>
-GLEW requires GLX 1.2 for compatibility with GLUT.
-</p>
-
-<!-- begin footer.html -->
-</td></tr></table></body>
-<!-- end footer.html -->
-
diff --git a/src/other/glew/doc/basic.html b/src/other/glew/doc/basic.html
deleted file mode 100644
index 0627831..0000000
--- a/src/other/glew/doc/basic.html
+++ /dev/null
@@ -1,282 +0,0 @@
-<!-- begin header.html -->
-<!--
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
--->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html/4/loose.dtd">
-<!--  <img src="new.png" height="12" alt="NEW!"> -->
-<html>
-<head>
-<title>GLEW: The OpenGL Extension Wrangler Library</title>
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> 
-<link href="glew.css" type="text/css" rel="stylesheet">
-</head>
-<body bgcolor="#fff0d0">
-<table border="0" width="100%" cellpadding="12" cellspacing="8" style="height:100%">
-<tr>
-<td bgcolor="#ffffff" align="left" valign="top" width="200">
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr>
-<td valign="top">
-
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">1.5.4</a></i></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center">
-<table border="0" cellpadding="0" cellspacing="0" align="center">
-<tr><td align="center"><a href="index.html">Download</a></td></tr>
-<tr><td align="center"><a href="install.html">Installation</a></td></tr>
-<tr><td align="center">Basic Usage</td></tr>
-<tr><td align="center"><a href="advanced.html">Advanced Usage</a></td></tr>
-<tr><td align="center"><a href="credits.html">Credits & Copyright</a></td></tr>
-<tr><td align="center"><a href="log.html">Change Log</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/projects/glew/">Project Page</a></td></tr>
-<tr><td align="center"><a href="https://sourceforge.net/mail/?group_id=67586">Mailing Lists</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/tracker/?group_id=67586">Bug Tracker</a></td></tr>
-</table>
-<tr><td align="center"><br></tr>
-</table>
-</td>
-</tr>
-<tr>
-
-<td valign="bottom">
-<table border="0" width="100%" cellpadding="5" cellspacing="0" align="left">
-<tr><td align="center"><i>Last Update: 04-21-10</i></td></tr>
-<tr><td align="center">
-<a href="http://www.opengl.org"> <img src="./ogl_sm.jpg" width="68"
-height="35" border="0" alt="OpenGL Logo"></a>
-<a href="http://sourceforge.net"> <img
-src="http://sourceforge.net/sflogo.php?group_id=67586&type=1"
-width="88" height="31" border="0" alt="SourceForge Logo"></a>
-</td>
-</tr>
-<!--- <tr><td align="center"><a
-href="http://sourceforge.net/donate/index.php?group_id=67586"><img
-src="http://images.sourceforge.net/images/project-support.jpg"
-width="88" height="32" border="0" alt="Support This Project"></a></td></tr> -->
-</table>
-</td>
-</tr>
-</table>
-</td>
-
-<td bgcolor="#ffffff" align="left" valign="top">
-
-<h1>The OpenGL Extension Wrangler Library</h1>
-
-<!-- end header.html -->
-
-
-<h2>Initializing GLEW</h2>
-<p>
-First you need to create a valid OpenGL rendering context and call
-<tt>glewInit()</tt> to initialize the extension entry points.  If
-<tt>glewInit()</tt> returns <tt>GLEW_OK</tt>, the initialization
-succeeded and you can use the available extensions as well as core
-OpenGL functionality. For example:
-</p>
-
-<p class="pre">
-#include <GL/glew.h><br>
-#include <GL/glut.h><br>
-...<br>
-glutInit(&argc, argv);<br>
-glutCreateWindow("GLEW Test");<br>
-GLenum err = glewInit();<br>
-if (GLEW_OK != err)<br>
-{<br>
-  /* Problem: glewInit failed, something is seriously wrong. */<br>
-  fprintf(stderr, "Error: %s\n", glewGetErrorString(err));<br>
-  ...<br>
-}<br>
-fprintf(stdout, "Status: Using GLEW %s\n", glewGetString(GLEW_VERSION));<br>
-</p>
-
-<h2>Checking for Extensions</h2>
-
-<p>
-Starting from GLEW 1.1.0, you can find out if a particular extension
-is available on your platform by querying globally defined variables
-of the form <tt>GLEW_{extension_name}</tt>:
-</p>
-
-<p class="pre">
-if (GLEW_ARB_vertex_program)<br>
-{<br>
-  /* It is safe to use the ARB_vertex_program extension here. */<br>
-  glGenProgramsARB(...);<br>
-}<br>
-</p>
-
-<p>
-<b>In GLEW 1.0.x, a global structure was used for this task. To ensure
-binary compatibility between releases, the struct was replaced with a
-set of variables.</b>
-</p>
-
-<p>
-You can also check for core OpenGL functionality.  For example, to
-see if OpenGL 1.3 is supported, do the following:
-</p>
-
-<p class="pre">
-if (GLEW_VERSION_1_3)<br>
-{<br>
-  /* Yay! OpenGL 1.3 is supported! */<br>
-}<br>
-</p>
-
-<p>
-In general, you can check if <tt>GLEW_{extension_name}</tt> or
-<tt>GLEW_VERSION_{version}</tt> is true or false.
-</p>
-
-<p>
-It is also possible to perform extension checks from string
-input. Starting from the 1.3.0 release, use <tt>glewIsSupported</tt>
-to check if the required core or extension functionality is
-available:
-</p>
-
-<p class="pre">
-if (glewIsSupported("GL_VERSION_1_4  GL_ARB_point_sprite"))<br>
-{<br>
-  /* Great, we have OpenGL 1.4 + point sprites. */<br>
-}<br>
-</p>
-
-<p>
-For extensions only, <tt>glewGetExtension</tt> provides a slower alternative
-(GLEW 1.0.x-1.2.x). <b>Note that in the 1.3.0 release </b>
-<tt>glewGetExtension</tt> <b>was replaced with </b>
-<tt>glewIsSupported</tt>.
-</p>
-
-<p class="pre">
-if (glewGetExtension("GL_ARB_fragment_program"))<br>
-{<br>
-  /* Looks like ARB_fragment_program is supported. */<br>
-}<br>
-</p>
-
-<h2>Experimental Drivers</h2>
-
-<p>
-GLEW obtains information on the supported extensions from the graphics
-driver.  Experimental or pre-release drivers, however, might not
-report every available extension through the standard mechanism, in
-which case GLEW will report it unsupported.  To circumvent this
-situation, the <tt>glewExperimental</tt> global switch can be turned
-on by setting it to <tt>GL_TRUE</tt> before calling
-<tt>glewInit()</tt>, which ensures that all extensions with valid
-entry points will be exposed.
-</p>
-
-<h2>Platform Specific Extensions</h2>
-
-<p>
-Platform specific extensions are separated into two header files:
-<tt>wglew.h</tt> and <tt>glxew.h</tt>, which define the available
-<tt>WGL</tt> and <tt>GLX</tt> extensions.  To determine if a certain
-extension is supported, query <tt>WGLEW_{extension name}</tt> or
-<tt>GLXEW_{extension_name}</tt>.  For example:
-</p>
-
-<p class="pre">
-#include <GL/wglew.h><br>
-<br>
-if (WGLEW_ARB_pbuffer)<br>
-{<br>
-  /* OK, we can use pbuffers. */<br>
-}<br>
-else<br>
-{<br>
-  /* Sorry, pbuffers will not work on this platform. */<br>
-}<br>
-</p>
-
-<p>
-Alternatively, use <tt>wglewIsSupported</tt> or
-<tt>glxewIsSupported</tt> to check for extensions from a string:
-</p>
-
-<p class="pre">
-if (wglewIsSupported("WGL_ARB_pbuffer"))<br>
-{<br>
-  /* OK, we can use pbuffers. */<br>
-}<br>
-</p>
-
-<h2>Utilities</h2>
-
-<p>
-GLEW provides two command-line utilities: one for creating a list of
-available extensions and visuals; and another for verifying extension
-entry points.
-</p>
-
-<h3>visualinfo: extensions and visuals</h3>
-
-<p>
-<tt>visualinfo</tt> is an extended version of <tt>glxinfo</tt>. The
-Windows version creates a file called <tt>visualinfo.txt</tt>, which
-contains a list of available OpenGL, WGL, and GLU extensions as well
-as a table of visuals aka. pixel formats. Pbuffer and MRT capable
-visuals are also included. For additional usage information, type
-<tt>visualinfo -h</tt>.
-</p>
-
-<h3>glewinfo: extension verification utility</h3>
-
-<p>
-<tt>glewinfo</tt> allows you to verify the entry points for the
-extensions supported on your platform. The Windows version
-reports the results to a text file called <tt>glewinfo.txt</tt>. The
-Unix version prints the results to <tt>stdout</tt>.
-</p>
-
-<p>Windows usage:</p>
- <blockquote><pre>glewinfo [-pf <id>]</pre></blockquote>
-
-<p>where <tt><id></tt> is the pixel format id for which the
-capabilities are displayed.</p>
-
-<p>Unix usage:</p>
-<blockquote><pre>glewinfo [-display <dpy>] [-visual <id>]</pre></blockquote>
-
-<p>where <tt><dpy></tt> is the X11 display and <tt><id></tt> is
-the visual id for which the capabilities are displayed.</p>
-
-<!-- begin footer.html -->
-</td></tr></table></body>
-<!-- end footer.html -->
-
diff --git a/src/other/glew/doc/credits.html b/src/other/glew/doc/credits.html
deleted file mode 100644
index 9fb3959..0000000
--- a/src/other/glew/doc/credits.html
+++ /dev/null
@@ -1,127 +0,0 @@
-<!-- begin header.html -->
-<!--
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
--->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html/4/loose.dtd">
-<!--  <img src="new.png" height="12" alt="NEW!"> -->
-<html>
-<head>
-<title>GLEW: The OpenGL Extension Wrangler Library</title>
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> 
-<link href="glew.css" type="text/css" rel="stylesheet">
-</head>
-<body bgcolor="#fff0d0">
-<table border="0" width="100%" cellpadding="12" cellspacing="8" style="height:100%">
-<tr>
-<td bgcolor="#ffffff" align="left" valign="top" width="200">
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr>
-<td valign="top">
-
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">1.5.4</a></i></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center">
-<table border="0" cellpadding="0" cellspacing="0" align="center">
-<tr><td align="center"><a href="index.html">Download</a></td></tr>
-<tr><td align="center"><a href="install.html">Installation</a></td></tr>
-<tr><td align="center"><a href="basic.html">Basic Usage</a></td></tr>
-<tr><td align="center"><a href="advanced.html">Advanced Usage</a></td></tr>
-<tr><td align="center">Credits & Copyright</td></tr>
-<tr><td align="center"><a href="log.html">Change Log</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/projects/glew/">Project Page</a></td></tr>
-<tr><td align="center"><a href="https://sourceforge.net/mail/?group_id=67586">Mailing Lists</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/tracker/?group_id=67586">Bug Tracker</a></td></tr>
-</table>
-<tr><td align="center"><br></tr>
-</table>
-</td>
-</tr>
-<tr>
-
-<td valign="bottom">
-<table border="0" width="100%" cellpadding="5" cellspacing="0" align="left">
-<tr><td align="center"><i>Last Update: 04-21-10</i></td></tr>
-<tr><td align="center">
-<a href="http://www.opengl.org"> <img src="./ogl_sm.jpg" width="68"
-height="35" border="0" alt="OpenGL Logo"></a>
-<a href="http://sourceforge.net"> <img
-src="http://sourceforge.net/sflogo.php?group_id=67586&type=1"
-width="88" height="31" border="0" alt="SourceForge Logo"></a>
-</td>
-</tr>
-<!--- <tr><td align="center"><a
-href="http://sourceforge.net/donate/index.php?group_id=67586"><img
-src="http://images.sourceforge.net/images/project-support.jpg"
-width="88" height="32" border="0" alt="Support This Project"></a></td></tr> -->
-</table>
-</td>
-</tr>
-</table>
-</td>
-
-<td bgcolor="#ffffff" align="left" valign="top">
-
-<h1>The OpenGL Extension Wrangler Library</h1>
-
-<!-- end header.html -->
-
-
-<h2>Credits</h2>
-
-<p>
-GLEW was developed by <a href="http://www.cs.utah.edu/~ikits/">Milan
-Ikits</a> and <a
-href="http://wwwvis.informatik.uni-stuttgart.de/~magallon/">Marcelo
-Magallon</a>.  They also perform occasional maintainance to make sure
-that GLEW stays in mint condition.  Aaron Lefohn, Joe Kniss, and Chris
-Wyman were the first users and also assisted with the design and
-debugging process.  The acronym GLEW originates from Aaron Lefohn.
-Pasi Kärkkäinen identified and fixed several problems with
-GLX and SDL.  Nate Robins created the <tt>wglinfo</tt> utility, to
-which modifications were made by Michael Wimmer.  
-</p>
-
-<h2>Copyright</h2>
-
-<p>
-GLEW is originally derived from the EXTGL project by Lev Povalahev.
-The source code is licensed under the <a href="glew.txt">Modified BSD
-License</a>, the <a href="mesa.txt">Mesa 3-D License</a> (MIT
-License), and the <a href="khronos.txt">Khronos License</a> (MIT
-License).  The automatic code generation scripts are released under
-the <a href="gpl.txt">GNU GPL</a>.
-</p>
-<!-- begin footer.html -->
-</td></tr></table></body>
-<!-- end footer.html -->
-
diff --git a/src/other/glew/doc/glew.css b/src/other/glew/doc/glew.css
deleted file mode 100644
index 1bb7dd1..0000000
--- a/src/other/glew/doc/glew.css
+++ /dev/null
@@ -1,187 +0,0 @@
-h1 
-{   
-  color: black;
-  font: 23px "Verdana", "Arial", "Helvetica", sans-serif;
-  font-weight: bold;
-  text-align: center;
-  margin-top: 12px;
-  margin-bottom: 18px;
-}
-
-h2
-{   
-  color: black;
-  font: 18px "Verdana", "Arial", "Helvetica", sans-serif;
-  font-weight: bold;
-  text-align: left;
-  padding-top: 0px;
-  padding-bottom: 0px;
-  margin-top: 18px;
-  margin-bottom: 12px;
-}
-
-h3
-{   
-  color: black;
-  font: 17px "Verdana", "Arial", "Helvetica", sans-serif;
-  text-align: left;
-  padding-top: 0px;
-  padding-bottom: 0px;
-  margin-top: 12px;
-  margin-bottom: 12px;
-}
-
-small
-{
-  font: 8pt "Verdana", "Arial", "Helvetica", sans-serif;
-}
-
-body
-{
-  color: black;
-  font: 10pt "Verdana", "Arial", "Helvetica", sans-serif;
-  text-align: left;
-}
-
-td
-{
-  color: black;
-  font: 10pt "Verdana", "Arial", "Helvetica", sans-serif;
-}
-
-tt
-{
-  color: rgb(0,120,0);
-}
-/* color: maroon; */
-
-td.num
-{
-  color: lightgrey;
-  font: 10pt "Verdana", "Arial", "Helvetica", sans-serif;
-  text-align: right;
-}
-
-blockquote
-{
-  color: rgb(0,120,0);
-  background: #f0f0f0;
-  text-align: left;
-  margin-left: 40px;
-  margin-right: 40px;
-  margin-bottom: 6px;
-  padding-bottom: 0px;
-  margin-top: 0px;
-  padding-top: 0px;
-  border-top: 0px;
-  border-width: 0px;
-}
-
-pre
-{
-  color: rgb(0,120,0);
-  background: #f0f0f0;
-  text-align: left;
-  margin-left: 40px;
-  margin-right: 40px;
-  margin-bottom: 6px;
-  padding-bottom: 0px;
-  margin-top: 0px;
-  padding-top: 0px;
-  border-top: 0px;
-  border-width: 0px;
-}
-
-p
-{ 
-  color: black;
-  font: 10pt "Verdana", "Arial", "Helvetica", sans-serif;
-  text-align: left;
-  margin-bottom: 0px;
-  padding-bottom: 6px;
-  margin-top: 0px;
-  padding-top: 0px;
-}
-
-p.right
-{ 
-  color: black;
-  font: 10pt "Verdana", "Arial", "Helvetica", sans-serif;
-  text-align: right;
-  margin-bottom: 0px;
-  padding-bottom: 6px;
-  margin-top: 0px;
-  padding-top: 0px;
-}
-
-p.pre
-{
-  color: rgb(0,120,0);
-  font: 10pt "Courier New", "Courier", monospace;
-  background: #f0f0f0;
-  text-align: left;
-  margin-top: 0px;
-  margin-bottom: 6px;
-  margin-left: 40px;
-  margin-right: 40px;
-  padding-top: 0px;
-  padding-bottom: 6px;
-  padding-left: 6px;
-  padding-right: 6px;
-  border-top: 0px;
-  border-width: 0px;
-}
-
-a:link
-{    
-  color: rgb(0,0,139);
-  text-decoration: none;
-}
-
-a:visited
-{    
-  color: rgb(220,20,60);
-  text-decoration: none;
-}
-
-a:hover
-{    
-  color: rgb(220,20,60);
-  text-decoration: underline;
-  background: "#e8e8e8";
-}
-
-ul
-{
-  list-style-type: disc;
-  text-align: left;
-  margin-left: 40px;
-  margin-top: 0px;
-  padding-top: 0px;
-  margin-bottom: 0px;
-  padding-bottom: 3px;
-}
-
-ul.none
-{
-  list-style-type: none;
-}
-
-ol
-{
-  text-align: left;
-  margin-left: 40px;
-  margin-top: 0px;
-  padding-top: 0px;
-  margin-bottom: 0px;
-  padding-bottom: 12px;
-}
-
-hr
-{
-  color: maroon;
-  background-color: maroon;
-  height: 1px;
-  border: 0px;
-  width: 80%;
-}
diff --git a/src/other/glew/doc/glew.html b/src/other/glew/doc/glew.html
deleted file mode 100644
index 70002b7..0000000
--- a/src/other/glew/doc/glew.html
+++ /dev/null
@@ -1,513 +0,0 @@
-<!-- begin header.html -->
-<!--
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
--->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html/4/loose.dtd">
-<!--  <img src="new.png" height="12" alt="NEW!"> -->
-<html>
-<head>
-<title>GLEW: The OpenGL Extension Wrangler Library</title>
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> 
-<link href="glew.css" type="text/css" rel="stylesheet">
-</head>
-<body bgcolor="#fff0d0">
-<table border="0" width="100%" cellpadding="12" cellspacing="8" style="height:100%">
-<tr>
-<td bgcolor="#ffffff" align="left" valign="top" width="200">
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr>
-<td valign="top">
-
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">1.5.4</a></i></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center">
-<table border="0" cellpadding="0" cellspacing="0" align="center">
-<tr><td align="center"><a href="index.html">Download</a></td></tr>
-<tr><td align="center"><a href="install.html">Installation</a></td></tr>
-<tr><td align="center"><a href="basic.html">Basic Usage</a></td></tr>
-<tr><td align="center"><a href="advanced.html">Advanced Usage</a></td></tr>
-<tr><td align="center"><a href="credits.html">Credits & Copyright</a></td></tr>
-<tr><td align="center"><a href="log.html">Change Log</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/projects/glew/">Project Page</a></td></tr>
-<tr><td align="center"><a href="https://sourceforge.net/mail/?group_id=67586">Mailing Lists</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/tracker/?group_id=67586">Bug Tracker</a></td></tr>
-</table>
-<tr><td align="center"><br></tr>
-</table>
-</td>
-</tr>
-<tr>
-
-<td valign="bottom">
-<table border="0" width="100%" cellpadding="5" cellspacing="0" align="left">
-<tr><td align="center"><i>Last Update: 04-21-10</i></td></tr>
-<tr><td align="center">
-<a href="http://www.opengl.org"> <img src="./ogl_sm.jpg" width="68"
-height="35" border="0" alt="OpenGL Logo"></a>
-<a href="http://sourceforge.net"> <img
-src="http://sourceforge.net/sflogo.php?group_id=67586&type=1"
-width="88" height="31" border="0" alt="SourceForge Logo"></a>
-</td>
-</tr>
-<!--- <tr><td align="center"><a
-href="http://sourceforge.net/donate/index.php?group_id=67586"><img
-src="http://images.sourceforge.net/images/project-support.jpg"
-width="88" height="32" border="0" alt="Support This Project"></a></td></tr> -->
-</table>
-</td>
-</tr>
-</table>
-</td>
-
-<td bgcolor="#ffffff" align="left" valign="top">
-
-<h1>The OpenGL Extension Wrangler Library</h1>
-
-<!-- end header.html -->
-
-
-<h2>Supported OpenGL Extensions</h2>
-
-<table border="0" width="100%" cellpadding="1" cellspacing="0" align="center">
-<tr><td class="num">1</td><td> </td><td><a href="http://www.opengl.org/registry/specs/3DFX/3dfx_multisample.txt">3DFX_multisample</a></td></tr>
-<tr><td class="num">2</td><td> </td><td><a href="http://www.opengl.org/registry/specs/3DFX/tbuffer.txt">3DFX_tbuffer</a></td></tr>
-<tr><td class="num">3</td><td> </td><td><a href="http://www.opengl.org/registry/specs/3DFX/texture_compression_FXT1.txt">3DFX_texture_compression_FXT1</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">4</td><td> </td><td><a href="http://www.opengl.org/registry/specs/AMD/conservative_depth.txt">AMD_conservative_depth</a></td></tr>
-<tr><td class="num">5</td><td> </td><td><a href="http://www.opengl.org/registry/specs/AMD/draw_buffers_blend.txt">AMD_draw_buffers_blend</a></td></tr>
-<tr><td class="num">6</td><td> </td><td><a href="http://www.opengl.org/registry/specs/AMD/performance_monitor.txt">AMD_performance_monitor</a></td></tr>
-<tr><td class="num">7</td><td> </td><td><a href="http://www.opengl.org/registry/specs/AMD/seamless_cubemap_per_texture.txt">AMD_seamless_cubemap_per_texture</a></td></tr>
-<tr><td class="num">8</td><td> </td><td><a href="http://www.opengl.org/registry/specs/AMD/shader_stencil_export.txt">AMD_shader_stencil_export</a></td></tr>
-<tr><td class="num">9</td><td> </td><td><a href="http://www.opengl.org/registry/specs/AMD/texture_texture4.txt">AMD_texture_texture4</a></td></tr>
-<tr><td class="num">10</td><td> </td><td><a href="http://www.opengl.org/registry/specs/AMD/vertex_shader_tessellator.txt">AMD_vertex_shader_tessellator</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">11</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/aux_depth_stencil.txt">APPLE_aux_depth_stencil</a></td></tr>
-<tr><td class="num">12</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/client_storage.txt">APPLE_client_storage</a></td></tr>
-<tr><td class="num">13</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/element_array.txt">APPLE_element_array</a></td></tr>
-<tr><td class="num">14</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/fence.txt">APPLE_fence</a></td></tr>
-<tr><td class="num">15</td><td> </td><td><a href="http://developer.apple.com/opengl/extensions/apple_float_pixels.html">APPLE_float_pixels</a></td></tr>
-<tr><td class="num">16</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/flush_buffer_range.txt">APPLE_flush_buffer_range</a></td></tr>
-<tr><td class="num">17</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/object_purgeable.txt">APPLE_object_purgeable</a></td></tr>
-<tr><td class="num">18</td><td> </td><td>APPLE_pixel_buffer</td></tr>
-<tr><td class="num">19</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/rgb_422.txt">APPLE_rgb_422</a></td></tr>
-<tr><td class="num">20</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/row_bytes.txt">APPLE_row_bytes</a></td></tr>
-<tr><td class="num">21</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/specular_vector.txt">APPLE_specular_vector</a></td></tr>
-<tr><td class="num">22</td><td> </td><td><a href="http://developer.apple.com/opengl/extensions/apple_texture_range.html">APPLE_texture_range</a></td></tr>
-<tr><td class="num">23</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/transform_hint.txt">APPLE_transform_hint</a></td></tr>
-<tr><td class="num">24</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/vertex_array_object.txt">APPLE_vertex_array_object</a></td></tr>
-<tr><td class="num">25</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/vertex_array_range.txt">APPLE_vertex_array_range</a></td></tr>
-<tr><td class="num">26</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/vertex_program_evaluators.txt">APPLE_vertex_program_evaluators</a></td></tr>
-<tr><td class="num">27</td><td> </td><td><a href="http://www.opengl.org/registry/specs/APPLE/ycbcr_422.txt">APPLE_ycbcr_422</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">28</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/blend_func_extended.txt">ARB_blend_func_extended</a></td></tr>
-<tr><td class="num">29</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/color_buffer_float.txt">ARB_color_buffer_float</a></td></tr>
-<tr><td class="num">30</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/compatibility.txt">ARB_compatibility</a></td></tr>
-<tr><td class="num">31</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/copy_buffer.txt">ARB_copy_buffer</a></td></tr>
-<tr><td class="num">32</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/depth_buffer_float.txt">ARB_depth_buffer_float</a></td></tr>
-<tr><td class="num">33</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/depth_clamp.txt">ARB_depth_clamp</a></td></tr>
-<tr><td class="num">34</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/depth_texture.txt">ARB_depth_texture</a></td></tr>
-<tr><td class="num">35</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/draw_buffers.txt">ARB_draw_buffers</a></td></tr>
-<tr><td class="num">36</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/draw_buffers_blend.txt">ARB_draw_buffers_blend</a></td></tr>
-<tr><td class="num">37</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/draw_elements_base_vertex.txt">ARB_draw_elements_base_vertex</a></td></tr>
-<tr><td class="num">38</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/draw_indirect.txt">ARB_draw_indirect</a></td></tr>
-<tr><td class="num">39</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/draw_instanced.txt">ARB_draw_instanced</a></td></tr>
-<tr><td class="num">40</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/explicit_attrib_location.txt">ARB_explicit_attrib_location</a></td></tr>
-<tr><td class="num">41</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/fragment_coord_conventions.txt">ARB_fragment_coord_conventions</a></td></tr>
-<tr><td class="num">42</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/fragment_program.txt">ARB_fragment_program</a></td></tr>
-<tr><td class="num">43</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/fragment_program_shadow.txt">ARB_fragment_program_shadow</a></td></tr>
-<tr><td class="num">44</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/fragment_shader.txt">ARB_fragment_shader</a></td></tr>
-<tr><td class="num">45</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/framebuffer_object.txt">ARB_framebuffer_object</a></td></tr>
-<tr><td class="num">46</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/framebuffer_sRGB.txt">ARB_framebuffer_sRGB</a></td></tr>
-<tr><td class="num">47</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/geometry_shader4.txt">ARB_geometry_shader4</a></td></tr>
-<tr><td class="num">48</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/gpu_shader5.txt">ARB_gpu_shader5</a></td></tr>
-<tr><td class="num">49</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/gpu_shader_fp64.txt">ARB_gpu_shader_fp64</a></td></tr>
-<tr><td class="num">50</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/half_float_pixel.txt">ARB_half_float_pixel</a></td></tr>
-<tr><td class="num">51</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/half_float_vertex.txt">ARB_half_float_vertex</a></td></tr>
-<tr><td class="num">52</td><td> </td><td>ARB_imaging</td></tr>
-<tr><td class="num">53</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/instanced_arrays.txt">ARB_instanced_arrays</a></td></tr>
-<tr><td class="num">54</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/map_buffer_range.txt">ARB_map_buffer_range</a></td></tr>
-<tr><td class="num">55</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/ARB/matrix_palette.txt">ARB_matrix_palette</a></td></tr>
-<tr><td class="num">56</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/multisample.txt">ARB_multisample</a></td></tr>
-<tr><td class="num">57</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/ARB/multitexture.txt">ARB_multitexture</a></td></tr>
-<tr><td class="num">58</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/occlusion_query.txt">ARB_occlusion_query</a></td></tr>
-<tr><td class="num">59</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/occlusion_query2.txt">ARB_occlusion_query2</a></td></tr>
-<tr><td class="num">60</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/pixel_buffer_object.txt">ARB_pixel_buffer_object</a></td></tr>
-<tr><td class="num">61</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/point_parameters.txt">ARB_point_parameters</a></td></tr>
-<tr><td class="num">62</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/point_sprite.txt">ARB_point_sprite</a></td></tr>
-<tr><td class="num">63</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/provoking_vertex.txt">ARB_provoking_vertex</a></td></tr>
-<tr><td class="num">64</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/sample_shading.txt">ARB_sample_shading</a></td></tr>
-<tr><td class="num">65</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/sampler_objects.txt">ARB_sampler_objects</a></td></tr>
-<tr><td class="num">66</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/seamless_cube_map.txt">ARB_seamless_cube_map</a></td></tr>
-<tr><td class="num">67</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/shader_bit_encoding.txt">ARB_shader_bit_encoding</a></td></tr>
-<tr><td class="num">68</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/shader_objects.txt">ARB_shader_objects</a></td></tr>
-<tr><td class="num">69</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/shader_subroutine.txt">ARB_shader_subroutine</a></td></tr>
-<tr><td class="num">70</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/shader_texture_lod.txt">ARB_shader_texture_lod</a></td></tr>
-<tr><td class="num">71</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/shading_language_100.txt">ARB_shading_language_100</a></td></tr>
-<tr><td class="num">72</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/shading_language_include.txt">ARB_shading_language_include</a></td></tr>
-<tr><td class="num">73</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/shadow.txt">ARB_shadow</a></td></tr>
-<tr><td class="num">74</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/shadow_ambient.txt">ARB_shadow_ambient</a></td></tr>
-<tr><td class="num">75</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/sync.txt">ARB_sync</a></td></tr>
-<tr><td class="num">76</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/tessellation_shader.txt">ARB_tessellation_shader</a></td></tr>
-<tr><td class="num">77</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_border_clamp.txt">ARB_texture_border_clamp</a></td></tr>
-<tr><td class="num">78</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_buffer_object.txt">ARB_texture_buffer_object</a></td></tr>
-<tr><td class="num">79</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_buffer_object_rgb32.txt">ARB_texture_buffer_object_rgb32</a></td></tr>
-<tr><td class="num">80</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_compression.txt">ARB_texture_compression</a></td></tr>
-<tr><td class="num">81</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_compression_bptc.txt">ARB_texture_compression_bptc</a></td></tr>
-<tr><td class="num">82</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_compression_rgtc.txt">ARB_texture_compression_rgtc</a></td></tr>
-<tr><td class="num">83</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_cube_map.txt">ARB_texture_cube_map</a></td></tr>
-<tr><td class="num">84</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_cube_map_array.txt">ARB_texture_cube_map_array</a></td></tr>
-<tr><td class="num">85</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_env_add.txt">ARB_texture_env_add</a></td></tr>
-<tr><td class="num">86</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_env_combine.txt">ARB_texture_env_combine</a></td></tr>
-<tr><td class="num">87</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_env_crossbar.txt">ARB_texture_env_crossbar</a></td></tr>
-<tr><td class="num">88</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_env_dot3.txt">ARB_texture_env_dot3</a></td></tr>
-<tr><td class="num">89</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_float.txt">ARB_texture_float</a></td></tr>
-<tr><td class="num">90</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_gather.txt">ARB_texture_gather</a></td></tr>
-<tr><td class="num">91</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_mirrored_repeat.txt">ARB_texture_mirrored_repeat</a></td></tr>
-<tr><td class="num">92</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_multisample.txt">ARB_texture_multisample</a></td></tr>
-<tr><td class="num">93</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_non_power_of_two.txt">ARB_texture_non_power_of_two</a></td></tr>
-<tr><td class="num">94</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_query_lod.txt">ARB_texture_query_lod</a></td></tr>
-<tr><td class="num">95</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_rectangle.txt">ARB_texture_rectangle</a></td></tr>
-<tr><td class="num">96</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_rg.txt">ARB_texture_rg</a></td></tr>
-<tr><td class="num">97</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_rgb10_a2ui.txt">ARB_texture_rgb10_a2ui</a></td></tr>
-<tr><td class="num">98</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/texture_swizzle.txt">ARB_texture_swizzle</a></td></tr>
-<tr><td class="num">99</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/timer_query.txt">ARB_timer_query</a></td></tr>
-<tr><td class="num">100</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/transform_feedback2.txt">ARB_transform_feedback2</a></td></tr>
-<tr><td class="num">101</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/transform_feedback3.txt">ARB_transform_feedback3</a></td></tr>
-<tr><td class="num">102</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/transpose_matrix.txt">ARB_transpose_matrix</a></td></tr>
-<tr><td class="num">103</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/uniform_buffer_object.txt">ARB_uniform_buffer_object</a></td></tr>
-<tr><td class="num">104</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/vertex_array_bgra.txt">ARB_vertex_array_bgra</a></td></tr>
-<tr><td class="num">105</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/vertex_array_object.txt">ARB_vertex_array_object</a></td></tr>
-<tr><td class="num">106</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/ARB/vertex_blend.txt">ARB_vertex_blend</a></td></tr>
-<tr><td class="num">107</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/vertex_buffer_object.txt">ARB_vertex_buffer_object</a></td></tr>
-<tr><td class="num">108</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/vertex_program.txt">ARB_vertex_program</a></td></tr>
-<tr><td class="num">109</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/vertex_shader.txt">ARB_vertex_shader</a></td></tr>
-<tr><td class="num">110</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/vertex_type_2_10_10_10_rev.txt">ARB_vertex_type_2_10_10_10_rev</a></td></tr>
-<tr><td class="num">111</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/window_pos.txt">ARB_window_pos</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">112</td><td> </td><td><a href="http://www.ati.com/developer/atiopengl.pdf">ATIX_point_sprites</a></td></tr>
-<tr><td class="num">113</td><td> </td><td><a href="http://www.ati.com/developer/atiopengl.pdf">ATIX_texture_env_combine3</a></td></tr>
-<tr><td class="num">114</td><td> </td><td><a href="http://www.ati.com/developer/sdk/RadeonSDK/Html/Info/ATIX_texture_env_route.txt">ATIX_texture_env_route</a></td></tr>
-<tr><td class="num">115</td><td> </td><td><a href="http://www.ati.com/developer/atiopengl.pdf">ATIX_vertex_shader_output_point_size</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">116</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ATI/draw_buffers.txt">ATI_draw_buffers</a></td></tr>
-<tr><td class="num">117</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ATI/element_array.txt">ATI_element_array</a></td></tr>
-<tr><td class="num">118</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/ATI/envmap_bumpmap.txt">ATI_envmap_bumpmap</a></td></tr>
-<tr><td class="num">119</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ATI/fragment_shader.txt">ATI_fragment_shader</a></td></tr>
-<tr><td class="num">120</td><td> </td><td><a href="http://www.ati.com/developer/sdk/RADEONSDK/Html/Info/ATI_map_object_buffer.txt">ATI_map_object_buffer</a></td></tr>
-<tr><td class="num">121</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ATI/meminfo.txt">ATI_meminfo</a></td></tr>
-<tr><td class="num">122</td><td> </td><td><a href="http://www.ati.com/developer/sdk/RADEONSDK/Html/Info/ati_pn_triangles.txt">ATI_pn_triangles</a></td></tr>
-<tr><td class="num">123</td><td> </td><td><a href="http://www.ati.com/developer/sdk/RadeonSDK/Html/Info/ATI_separate_stencil.txt">ATI_separate_stencil</a></td></tr>
-<tr><td class="num">124</td><td> </td><td>ATI_shader_texture_lod</td></tr>
-<tr><td class="num">125</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ATI/text_fragment_shader.txt">ATI_text_fragment_shader</a></td></tr>
-<tr><td class="num">126</td><td> </td><td>ATI_texture_compression_3dc</td></tr>
-<tr><td class="num">127</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ATI/texture_env_combine3.txt">ATI_texture_env_combine3</a></td></tr>
-<tr><td class="num">128</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ATI/texture_float.txt">ATI_texture_float</a></td></tr>
-<tr><td class="num">129</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ATI/texture_mirror_once.txt">ATI_texture_mirror_once</a></td></tr>
-<tr><td class="num">130</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ATI/vertex_array_object.txt">ATI_vertex_array_object</a></td></tr>
-<tr><td class="num">131</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ATI/vertex_attrib_array_object.txt">ATI_vertex_attrib_array_object</a></td></tr>
-<tr><td class="num">132</td><td> </td><td><a href="http://www.ati.com/developer/sdk/RADEONSDK/Html/Info/ATI_vertex_streams.txt">ATI_vertex_streams</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">133</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/422_pixels.txt">EXT_422_pixels</a></td></tr>
-<tr><td class="num">134</td><td> </td><td><a href="http://download.nvidia.com/developer/GLSL/GLSL%20Release%20Notes%20for%20Release%2060.pdf">EXT_Cg_shader</a></td></tr>
-<tr><td class="num">135</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/abgr.txt">EXT_abgr</a></td></tr>
-<tr><td class="num">136</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/bgra.txt">EXT_bgra</a></td></tr>
-<tr><td class="num">137</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_bindable_uniform.txt">EXT_bindable_uniform</a></td></tr>
-<tr><td class="num">138</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/blend_color.txt">EXT_blend_color</a></td></tr>
-<tr><td class="num">139</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/blend_equation_separate.txt">EXT_blend_equation_separate</a></td></tr>
-<tr><td class="num">140</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/blend_func_separate.txt">EXT_blend_func_separate</a></td></tr>
-<tr><td class="num">141</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/blend_logic_op.txt">EXT_blend_logic_op</a></td></tr>
-<tr><td class="num">142</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/blend_minmax.txt">EXT_blend_minmax</a></td></tr>
-<tr><td class="num">143</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/blend_subtract.txt">EXT_blend_subtract</a></td></tr>
-<tr><td class="num">144</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/clip_volume_hint.txt">EXT_clip_volume_hint</a></td></tr>
-<tr><td class="num">145</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/cmyka.txt">EXT_cmyka</a></td></tr>
-<tr><td class="num">146</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/color_subtable.txt">EXT_color_subtable</a></td></tr>
-<tr><td class="num">147</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/compiled_vertex_array.txt">EXT_compiled_vertex_array</a></td></tr>
-<tr><td class="num">148</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/convolution.txt">EXT_convolution</a></td></tr>
-<tr><td class="num">149</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/coordinate_frame.txt">EXT_coordinate_frame</a></td></tr>
-<tr><td class="num">150</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/copy_texture.txt">EXT_copy_texture</a></td></tr>
-<tr><td class="num">151</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/cull_vertex.txt">EXT_cull_vertex</a></td></tr>
-<tr><td class="num">152</td><td> </td><td><a href="http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_depth_bounds_test.txt">EXT_depth_bounds_test</a></td></tr>
-<tr><td class="num">153</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/direct_state_access.txt">EXT_direct_state_access</a></td></tr>
-<tr><td class="num">154</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/draw_buffers2.txt">EXT_draw_buffers2</a></td></tr>
-<tr><td class="num">155</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_draw_instanced.txt">EXT_draw_instanced</a></td></tr>
-<tr><td class="num">156</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/EXT/draw_range_elements.txt">EXT_draw_range_elements</a></td></tr>
-<tr><td class="num">157</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/EXT/fog_coord.txt">EXT_fog_coord</a></td></tr>
-<tr><td class="num">158</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/fragment_lighting.txt">EXT_fragment_lighting</a></td></tr>
-<tr><td class="num">159</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/framebuffer_blit.txt">EXT_framebuffer_blit</a></td></tr>
-<tr><td class="num">160</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/framebuffer_multisample.txt">EXT_framebuffer_multisample</a></td></tr>
-<tr><td class="num">161</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/framebuffer_object.txt">EXT_framebuffer_object</a></td></tr>
-<tr><td class="num">162</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_framebuffer_sRGB.txt">EXT_framebuffer_sRGB</a></td></tr>
-<tr><td class="num">163</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_geometry_shader4.txt">EXT_geometry_shader4</a></td></tr>
-<tr><td class="num">164</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_gpu_program_parameters.txt">EXT_gpu_program_parameters</a></td></tr>
-<tr><td class="num">165</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_gpu_shader4.txt">EXT_gpu_shader4</a></td></tr>
-<tr><td class="num">166</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/histogram.txt">EXT_histogram</a></td></tr>
-<tr><td class="num">167</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/index_array_formats.txt">EXT_index_array_formats</a></td></tr>
-<tr><td class="num">168</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/index_func.txt">EXT_index_func</a></td></tr>
-<tr><td class="num">169</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/index_material.txt">EXT_index_material</a></td></tr>
-<tr><td class="num">170</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/index_texture.txt">EXT_index_texture</a></td></tr>
-<tr><td class="num">171</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/light_texture.txt">EXT_light_texture</a></td></tr>
-<tr><td class="num">172</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/misc_attribute.txt">EXT_misc_attribute</a></td></tr>
-<tr><td class="num">173</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/multi_draw_arrays.txt">EXT_multi_draw_arrays</a></td></tr>
-<tr><td class="num">174</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/wgl_multisample.txt">EXT_multisample</a></td></tr>
-<tr><td class="num">175</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/packed_depth_stencil.txt">EXT_packed_depth_stencil</a></td></tr>
-<tr><td class="num">176</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_packed_float.txt">EXT_packed_float</a></td></tr>
-<tr><td class="num">177</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/packed_pixels.txt">EXT_packed_pixels</a></td></tr>
-<tr><td class="num">178</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/paletted_texture.txt">EXT_paletted_texture</a></td></tr>
-<tr><td class="num">179</td><td> </td><td><a href="http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_pixel_buffer_object.txt">EXT_pixel_buffer_object</a></td></tr>
-<tr><td class="num">180</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/pixel_transform.txt">EXT_pixel_transform</a></td></tr>
-<tr><td class="num">181</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/pixel_transform_color_table.txt">EXT_pixel_transform_color_table</a></td></tr>
-<tr><td class="num">182</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/point_parameters.txt">EXT_point_parameters</a></td></tr>
-<tr><td class="num">183</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/polygon_offset.txt">EXT_polygon_offset</a></td></tr>
-<tr><td class="num">184</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/provoking_vertex.txt">EXT_provoking_vertex</a></td></tr>
-<tr><td class="num">185</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/rescale_normal.txt">EXT_rescale_normal</a></td></tr>
-<tr><td class="num">186</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/scene_marker.txt">EXT_scene_marker</a></td></tr>
-<tr><td class="num">187</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/EXT/secondary_color.txt">EXT_secondary_color</a></td></tr>
-<tr><td class="num">188</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/separate_shader_objects.txt">EXT_separate_shader_objects</a></td></tr>
-<tr><td class="num">189</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/separate_specular_color.txt">EXT_separate_specular_color</a></td></tr>
-<tr><td class="num">190</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/shader_image_load_store.txt">EXT_shader_image_load_store</a></td></tr>
-<tr><td class="num">191</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/shadow_funcs.txt">EXT_shadow_funcs</a></td></tr>
-<tr><td class="num">192</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/shared_texture_palette.txt">EXT_shared_texture_palette</a></td></tr>
-<tr><td class="num">193</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/stencil_clear_tag.txt">EXT_stencil_clear_tag</a></td></tr>
-<tr><td class="num">194</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/stencil_two_side.txt">EXT_stencil_two_side</a></td></tr>
-<tr><td class="num">195</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/stencil_wrap.txt">EXT_stencil_wrap</a></td></tr>
-<tr><td class="num">196</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/subtexture.txt">EXT_subtexture</a></td></tr>
-<tr><td class="num">197</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture.txt">EXT_texture</a></td></tr>
-<tr><td class="num">198</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture3D.txt">EXT_texture3D</a></td></tr>
-<tr><td class="num">199</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_array.txt">EXT_texture_array</a></td></tr>
-<tr><td class="num">200</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_buffer_object.txt">EXT_texture_buffer_object</a></td></tr>
-<tr><td class="num">201</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_compression_dxt1.txt">EXT_texture_compression_dxt1</a></td></tr>
-<tr><td class="num">202</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_compression_latc.txt">EXT_texture_compression_latc</a></td></tr>
-<tr><td class="num">203</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_compression_rgtc.txt">EXT_texture_compression_rgtc</a></td></tr>
-<tr><td class="num">204</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_compression_s3tc.txt">EXT_texture_compression_s3tc</a></td></tr>
-<tr><td class="num">205</td><td> </td><td><a href="http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_texture_cube_map.txt">EXT_texture_cube_map</a></td></tr>
-<tr><td class="num">206</td><td> </td><td><a href="http://www.opengl.org/developers/documentation/Version1.2/1.2specs/texture_edge_clamp.txt">EXT_texture_edge_clamp</a></td></tr>
-<tr><td class="num">207</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_env.txt">EXT_texture_env</a></td></tr>
-<tr><td class="num">208</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_env_add.txt">EXT_texture_env_add</a></td></tr>
-<tr><td class="num">209</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_env_combine.txt">EXT_texture_env_combine</a></td></tr>
-<tr><td class="num">210</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_env_dot3.txt">EXT_texture_env_dot3</a></td></tr>
-<tr><td class="num">211</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_filter_anisotropic.txt">EXT_texture_filter_anisotropic</a></td></tr>
-<tr><td class="num">212</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_integer.txt">EXT_texture_integer</a></td></tr>
-<tr><td class="num">213</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_lod_bias.txt">EXT_texture_lod_bias</a></td></tr>
-<tr><td class="num">214</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_mirror_clamp.txt">EXT_texture_mirror_clamp</a></td></tr>
-<tr><td class="num">215</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_object.txt">EXT_texture_object</a></td></tr>
-<tr><td class="num">216</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_perturb_normal.txt">EXT_texture_perturb_normal</a></td></tr>
-<tr><td class="num">217</td><td> </td><td><a href="http://developer.apple.com/opengl/extensions/ext_texture_rectangle.html">EXT_texture_rectangle</a></td></tr>
-<tr><td class="num">218</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_sRGB.txt">EXT_texture_sRGB</a></td></tr>
-<tr><td class="num">219</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_shared_exponent.txt">EXT_texture_shared_exponent</a></td></tr>
-<tr><td class="num">220</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_snorm.txt">EXT_texture_snorm</a></td></tr>
-<tr><td class="num">221</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_swizzle.txt">EXT_texture_swizzle</a></td></tr>
-<tr><td class="num">222</td><td> </td><td><a href="http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_timer_query.txt">EXT_timer_query</a></td></tr>
-<tr><td class="num">223</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/transform_feedback.txt">EXT_transform_feedback</a></td></tr>
-<tr><td class="num">224</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/vertex_array.txt">EXT_vertex_array</a></td></tr>
-<tr><td class="num">225</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/vertex_array_bgra.txt">EXT_vertex_array_bgra</a></td></tr>
-<tr><td class="num">226</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/vertex_attrib_64bit.txt">EXT_vertex_attrib_64bit</a></td></tr>
-<tr><td class="num">227</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/EXT/vertex_shader.txt">EXT_vertex_shader</a></td></tr>
-<tr><td class="num">228</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/vertex_weighting.txt">EXT_vertex_weighting</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">229</td><td> </td><td><a href="http://www.opengl.org/registry/specs/GREMEDY/frame_terminator.txt">GREMEDY_frame_terminator</a></td></tr>
-<tr><td class="num">230</td><td> </td><td><a href="http://www.opengl.org/registry/specs/GREMEDY/string_marker.txt">GREMEDY_string_marker</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">231</td><td> </td><td><a href="http://www.opengl.org/registry/specs/HP/convolution_border_modes.txt">HP_convolution_border_modes</a></td></tr>
-<tr><td class="num">232</td><td> </td><td><a href="http://www.opengl.org/registry/specs/HP/image_transform.txt">HP_image_transform</a></td></tr>
-<tr><td class="num">233</td><td> </td><td><a href="http://www.opengl.org/registry/specs/HP/occlusion_test.txt">HP_occlusion_test</a></td></tr>
-<tr><td class="num">234</td><td> </td><td><a href="http://www.opengl.org/registry/specs/HP/texture_lighting.txt">HP_texture_lighting</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">235</td><td> </td><td><a href="http://www.opengl.org/registry/specs/IBM/cull_vertex.txt">IBM_cull_vertex</a></td></tr>
-<tr><td class="num">236</td><td> </td><td><a href="http://www.opengl.org/registry/specs/IBM/multimode_draw_arrays.txt">IBM_multimode_draw_arrays</a></td></tr>
-<tr><td class="num">237</td><td> </td><td><a href="http://www.opengl.org/registry/specs/IBM/rasterpos_clip.txt">IBM_rasterpos_clip</a></td></tr>
-<tr><td class="num">238</td><td> </td><td><a href="http://www.opengl.org/registry/specs/IBM/static_data.txt">IBM_static_data</a></td></tr>
-<tr><td class="num">239</td><td> </td><td><a href="http://www.opengl.org/registry/specs/IBM/texture_mirrored_repeat.txt">IBM_texture_mirrored_repeat</a></td></tr>
-<tr><td class="num">240</td><td> </td><td><a href="http://www.opengl.org/registry/specs/IBM/vertex_array_lists.txt">IBM_vertex_array_lists</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">241</td><td> </td><td><a href="http://www.opengl.org/registry/specs/INGR/color_clamp.txt">INGR_color_clamp</a></td></tr>
-<tr><td class="num">242</td><td> </td><td><a href="http://www.opengl.org/registry/specs/INGR/interlace_read.txt">INGR_interlace_read</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">243</td><td> </td><td><a href="http://www.opengl.org/registry/specs/INTEL/parallel_arrays.txt">INTEL_parallel_arrays</a></td></tr>
-<tr><td class="num">244</td><td> </td><td><a href="http://www.opengl.org/registry/specs/INTEL/texture_scissor.txt">INTEL_texture_scissor</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">245</td><td> </td><td>KTX_buffer_region</td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">246</td><td> </td><td><a href="http://www.opengl.org/registry/specs/MESAX/texture_stack.txt">MESAX_texture_stack</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">247</td><td> </td><td><a href="http://www.opengl.org/registry/specs/MESA/pack_invert.txt">MESA_pack_invert</a></td></tr>
-<tr><td class="num">248</td><td> </td><td><a href="http://www.opengl.org/registry/specs/MESA/resize_buffers.txt">MESA_resize_buffers</a></td></tr>
-<tr><td class="num">249</td><td> </td><td><a href="http://www.opengl.org/registry/specs/MESA/window_pos.txt">MESA_window_pos</a></td></tr>
-<tr><td class="num">250</td><td> </td><td><a href="http://www.opengl.org/registry/specs/MESA/ycbcr_texture.txt">MESA_ycbcr_texture</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">251</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/blend_square.txt">NV_blend_square</a></td></tr>
-<tr><td class="num">252</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/conditional_render.txt">NV_conditional_render</a></td></tr>
-<tr><td class="num">253</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/copy_depth_to_color.txt">NV_copy_depth_to_color</a></td></tr>
-<tr><td class="num">254</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/copy_image.txt">NV_copy_image</a></td></tr>
-<tr><td class="num">255</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_NV_depth_buffer_float.txt">NV_depth_buffer_float</a></td></tr>
-<tr><td class="num">256</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/depth_clamp.txt">NV_depth_clamp</a></td></tr>
-<tr><td class="num">257</td><td> </td><td>NV_depth_range_unclamped</td></tr>
-<tr><td class="num">258</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/evaluators.txt">NV_evaluators</a></td></tr>
-<tr><td class="num">259</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/explicit_multisample.txt">NV_explicit_multisample</a></td></tr>
-<tr><td class="num">260</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/fence.txt">NV_fence</a></td></tr>
-<tr><td class="num">261</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/float_buffer.txt">NV_float_buffer</a></td></tr>
-<tr><td class="num">262</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/fog_distance.txt">NV_fog_distance</a></td></tr>
-<tr><td class="num">263</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/fragment_program.txt">NV_fragment_program</a></td></tr>
-<tr><td class="num">264</td><td> </td><td><a href="http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_fragment_program2.txt">NV_fragment_program2</a></td></tr>
-<tr><td class="num">265</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_NV_fragment_program4.txt">NV_fragment_program4</a></td></tr>
-<tr><td class="num">266</td><td> </td><td><a href="http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_fragment_program_option.txt">NV_fragment_program_option</a></td></tr>
-<tr><td class="num">267</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_NV_framebuffer_multisample_coverage.txt">NV_framebuffer_multisample_coverage</a></td></tr>
-<tr><td class="num">268</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_NV_geometry_program4.txt">NV_geometry_program4</a></td></tr>
-<tr><td class="num">269</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_NV_geometry_shader4.txt">NV_geometry_shader4</a></td></tr>
-<tr><td class="num">270</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_NV_gpu_program4.txt">NV_gpu_program4</a></td></tr>
-<tr><td class="num">271</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/gpu_program5.txt">NV_gpu_program5</a></td></tr>
-<tr><td class="num">272</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/gpu_program5.txt">NV_gpu_program_fp64</a></td></tr>
-<tr><td class="num">273</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/gpu_shader5.txt">NV_gpu_shader5</a></td></tr>
-<tr><td class="num">274</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/half_float.txt">NV_half_float</a></td></tr>
-<tr><td class="num">275</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/light_max_exponent.txt">NV_light_max_exponent</a></td></tr>
-<tr><td class="num">276</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/multisample_filter_hint.txt">NV_multisample_filter_hint</a></td></tr>
-<tr><td class="num">277</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/occlusion_query.txt">NV_occlusion_query</a></td></tr>
-<tr><td class="num">278</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/packed_depth_stencil.txt">NV_packed_depth_stencil</a></td></tr>
-<tr><td class="num">279</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_NV_parameter_buffer_object.txt">NV_parameter_buffer_object</a></td></tr>
-<tr><td class="num">280</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/parameter_buffer_object2.txt">NV_parameter_buffer_object2</a></td></tr>
-<tr><td class="num">281</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/pixel_data_range.txt">NV_pixel_data_range</a></td></tr>
-<tr><td class="num">282</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/point_sprite.txt">NV_point_sprite</a></td></tr>
-<tr><td class="num">283</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/present_video.txt">NV_present_video</a></td></tr>
-<tr><td class="num">284</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/primitive_restart.txt">NV_primitive_restart</a></td></tr>
-<tr><td class="num">285</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/register_combiners.txt">NV_register_combiners</a></td></tr>
-<tr><td class="num">286</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/register_combiners2.txt">NV_register_combiners2</a></td></tr>
-<tr><td class="num">287</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/shader_buffer_load.txt">NV_shader_buffer_load</a></td></tr>
-<tr><td class="num">288</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/tessellation_program5.txt">NV_tessellation_program5</a></td></tr>
-<tr><td class="num">289</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/texgen_emboss.txt">NV_texgen_emboss</a></td></tr>
-<tr><td class="num">290</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/texgen_reflection.txt">NV_texgen_reflection</a></td></tr>
-<tr><td class="num">291</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/texture_barrier.txt">NV_texture_barrier</a></td></tr>
-<tr><td class="num">292</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/texture_compression_vtc.txt">NV_texture_compression_vtc</a></td></tr>
-<tr><td class="num">293</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/texture_env_combine4.txt">NV_texture_env_combine4</a></td></tr>
-<tr><td class="num">294</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/texture_expand_normal.txt">NV_texture_expand_normal</a></td></tr>
-<tr><td class="num">295</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/texture_rectangle.txt">NV_texture_rectangle</a></td></tr>
-<tr><td class="num">296</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/texture_shader.txt">NV_texture_shader</a></td></tr>
-<tr><td class="num">297</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/texture_shader2.txt">NV_texture_shader2</a></td></tr>
-<tr><td class="num">298</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/texture_shader3.txt">NV_texture_shader3</a></td></tr>
-<tr><td class="num">299</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_NV_transform_feedback.txt">NV_transform_feedback</a></td></tr>
-<tr><td class="num">300</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/transform_feedback2.txt">NV_transform_feedback2</a></td></tr>
-<tr><td class="num">301</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/vertex_array_range.txt">NV_vertex_array_range</a></td></tr>
-<tr><td class="num">302</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/vertex_array_range2.txt">NV_vertex_array_range2</a></td></tr>
-<tr><td class="num">303</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/vertex_attrib_integer_64bit.txt">NV_vertex_attrib_integer_64bit</a></td></tr>
-<tr><td class="num">304</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/vertex_buffer_unified_memory.txt">NV_vertex_buffer_unified_memory</a></td></tr>
-<tr><td class="num">305</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/vertex_program.txt">NV_vertex_program</a></td></tr>
-<tr><td class="num">306</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/vertex_program1_1.txt">NV_vertex_program1_1</a></td></tr>
-<tr><td class="num">307</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/vertex_program2.txt">NV_vertex_program2</a></td></tr>
-<tr><td class="num">308</td><td> </td><td><a href="http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_vertex_program2_option.txt">NV_vertex_program2_option</a></td></tr>
-<tr><td class="num">309</td><td> </td><td><a href="http://www.nvidia.com/dev_content/nvopenglspecs/GL_NV_vertex_program3.txt">NV_vertex_program3</a></td></tr>
-<tr><td class="num">310</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_NV_vertex_program4.txt">NV_vertex_program4</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">311</td><td> </td><td><a href="http://www.opengl.org/registry/specs/OES/OES_byte_coordinates.txt">OES_byte_coordinates</a></td></tr>
-<tr><td class="num">312</td><td> </td><td><a href="http://www.opengl.org/registry/specs/OES/OES_compressed_paletted_texture.txt">OES_compressed_paletted_texture</a></td></tr>
-<tr><td class="num">313</td><td> </td><td><a href="http://www.opengl.org/registry/specs/OES/OES_read_format.txt">OES_read_format</a></td></tr>
-<tr><td class="num">314</td><td> </td><td><a href="http://www.opengl.org/registry/specs/OES/OES_single_precision.txt">OES_single_precision</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">315</td><td> </td><td><a href="http://www.opengl.org/registry/specs/OML/interlace.txt">OML_interlace</a></td></tr>
-<tr><td class="num">316</td><td> </td><td><a href="http://www.opengl.org/registry/specs/OML/resample.txt">OML_resample</a></td></tr>
-<tr><td class="num">317</td><td> </td><td><a href="http://www.opengl.org/registry/specs/OML/subsample.txt">OML_subsample</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">318</td><td> </td><td><a href="http://www.opengl.org/registry/specs/PGI/misc_hints.txt">PGI_misc_hints</a></td></tr>
-<tr><td class="num">319</td><td> </td><td><a href="http://www.opengl.org/registry/specs/PGI/vertex_hints.txt">PGI_vertex_hints</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">320</td><td> </td><td><a href="http://www.opengl.org/registry/specs/REND/screen_coordinates.txt">REND_screen_coordinates</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">321</td><td> </td><td><a href="http://www.opengl.org/registry/specs/S3/s3tc.txt">S3_s3tc</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">322</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/color_range.txt">SGIS_color_range</a></td></tr>
-<tr><td class="num">323</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/detail_texture.txt">SGIS_detail_texture</a></td></tr>
-<tr><td class="num">324</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/fog_func.txt">SGIS_fog_function</a></td></tr>
-<tr><td class="num">325</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/generate_mipmap.txt">SGIS_generate_mipmap</a></td></tr>
-<tr><td class="num">326</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/multisample.txt">SGIS_multisample</a></td></tr>
-<tr><td class="num">327</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/pixel_texture.txt">SGIS_pixel_texture</a></td></tr>
-<tr><td class="num">328</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/point_line_texgen.txt">SGIS_point_line_texgen</a></td></tr>
-<tr><td class="num">329</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/sharpen_texture.txt">SGIS_sharpen_texture</a></td></tr>
-<tr><td class="num">330</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/texture4D.txt">SGIS_texture4D</a></td></tr>
-<tr><td class="num">331</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/texture_border_clamp.txt">SGIS_texture_border_clamp</a></td></tr>
-<tr><td class="num">332</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/texture_edge_clamp.txt">SGIS_texture_edge_clamp</a></td></tr>
-<tr><td class="num">333</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/texture_filter4.txt">SGIS_texture_filter4</a></td></tr>
-<tr><td class="num">334</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/texture_lod.txt">SGIS_texture_lod</a></td></tr>
-<tr><td class="num">335</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/texture_select.txt">SGIS_texture_select</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">336</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/async.txt">SGIX_async</a></td></tr>
-<tr><td class="num">337</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/async_histogram.txt">SGIX_async_histogram</a></td></tr>
-<tr><td class="num">338</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/async_pixel.txt">SGIX_async_pixel</a></td></tr>
-<tr><td class="num">339</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/blend_alpha_minmax.txt">SGIX_blend_alpha_minmax</a></td></tr>
-<tr><td class="num">340</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/clipmap.txt">SGIX_clipmap</a></td></tr>
-<tr><td class="num">341</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/convolution_accuracy.txt">SGIX_convolution_accuracy</a></td></tr>
-<tr><td class="num">342</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/depth_texture.txt">SGIX_depth_texture</a></td></tr>
-<tr><td class="num">343</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/flush_raster.txt">SGIX_flush_raster</a></td></tr>
-<tr><td class="num">344</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/fog_offset.txt">SGIX_fog_offset</a></td></tr>
-<tr><td class="num">345</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/fog_texture.txt">SGIX_fog_texture</a></td></tr>
-<tr><td class="num">346</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/fragment_specular_lighting.txt">SGIX_fragment_specular_lighting</a></td></tr>
-<tr><td class="num">347</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/framezoom.txt">SGIX_framezoom</a></td></tr>
-<tr><td class="num">348</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/interlace.txt">SGIX_interlace</a></td></tr>
-<tr><td class="num">349</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/ir_instrument1.txt">SGIX_ir_instrument1</a></td></tr>
-<tr><td class="num">350</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/list_priority.txt">SGIX_list_priority</a></td></tr>
-<tr><td class="num">351</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/sgix_pixel_texture.txt">SGIX_pixel_texture</a></td></tr>
-<tr><td class="num">352</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/pixel_texture_bits.txt">SGIX_pixel_texture_bits</a></td></tr>
-<tr><td class="num">353</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/reference_plane.txt">SGIX_reference_plane</a></td></tr>
-<tr><td class="num">354</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/resample.txt">SGIX_resample</a></td></tr>
-<tr><td class="num">355</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/SGIX/shadow.txt">SGIX_shadow</a></td></tr>
-<tr><td class="num">356</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/shadow_ambient.txt">SGIX_shadow_ambient</a></td></tr>
-<tr><td class="num">357</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/sprite.txt">SGIX_sprite</a></td></tr>
-<tr><td class="num">358</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/tag_sample_buffer.txt">SGIX_tag_sample_buffer</a></td></tr>
-<tr><td class="num">359</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/texture_env_add.txt">SGIX_texture_add_env</a></td></tr>
-<tr><td class="num">360</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/texture_coordinate_clamp.txt">SGIX_texture_coordinate_clamp</a></td></tr>
-<tr><td class="num">361</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/texture_lod_bias.txt">SGIX_texture_lod_bias</a></td></tr>
-<tr><td class="num">362</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/texture_multi_buffer.txt">SGIX_texture_multi_buffer</a></td></tr>
-<tr><td class="num">363</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/texture_range.txt">SGIX_texture_range</a></td></tr>
-<tr><td class="num">364</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/texture_scale_bias.txt">SGIX_texture_scale_bias</a></td></tr>
-<tr><td class="num">365</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/vertex_preclip.txt">SGIX_vertex_preclip</a></td></tr>
-<tr><td class="num">366</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/vertex_preclip.txt">SGIX_vertex_preclip_hint</a></td></tr>
-<tr><td class="num">367</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/ycrcb.txt">SGIX_ycrcb</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">368</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGI/color_matrix.txt">SGI_color_matrix</a></td></tr>
-<tr><td class="num">369</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGI/color_table.txt">SGI_color_table</a></td></tr>
-<tr><td class="num">370</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGI/texture_color_table.txt">SGI_texture_color_table</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">371</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SUNX/constant_data.txt">SUNX_constant_data</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">372</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SUN/convolution_border_modes.txt">SUN_convolution_border_modes</a></td></tr>
-<tr><td class="num">373</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SUN/global_alpha.txt">SUN_global_alpha</a></td></tr>
-<tr><td class="num">374</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SUN/mesh_array.txt">SUN_mesh_array</a></td></tr>
-<tr><td class="num">375</td><td> </td><td><a href="http://wwws.sun.com/software/graphics/opengl/extensions/gl_sun_read_video_pixels.txt">SUN_read_video_pixels</a></td></tr>
-<tr><td class="num">376</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SUN/slice_accum.txt">SUN_slice_accum</a></td></tr>
-<tr><td class="num">377</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SUN/triangle_list.txt">SUN_triangle_list</a></td></tr>
-<tr><td class="num">378</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SUN/vertex.txt">SUN_vertex</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">379</td><td> </td><td><a href="http://www.opengl.org/registry/specs/WIN/phong_shading.txt">WIN_phong_shading</a></td></tr>
-<tr><td class="num">380</td><td> </td><td><a href="http://www.opengl.org/registry/specs/WIN/specular_fog.txt">WIN_specular_fog</a></td></tr>
-<tr><td class="num">381</td><td> </td><td><a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/opengl/glfunc01_16zy.asp">WIN_swap_hint</a></td></tr>
-</table>
-<!-- begin footer.html -->
-</td></tr></table></body>
-<!-- end footer.html -->
-
diff --git a/src/other/glew/doc/glew.png b/src/other/glew/doc/glew.png
deleted file mode 100644
index d46550f..0000000
Binary files a/src/other/glew/doc/glew.png and /dev/null differ
diff --git a/src/other/glew/doc/glew.txt b/src/other/glew/doc/glew.txt
deleted file mode 100644
index 31a31d3..0000000
--- a/src/other/glew/doc/glew.txt
+++ /dev/null
@@ -1,28 +0,0 @@
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/src/other/glew/doc/glxew.html b/src/other/glew/doc/glxew.html
deleted file mode 100644
index 9818b60..0000000
--- a/src/other/glew/doc/glxew.html
+++ /dev/null
@@ -1,166 +0,0 @@
-<!-- begin header.html -->
-<!--
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
--->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html/4/loose.dtd">
-<!--  <img src="new.png" height="12" alt="NEW!"> -->
-<html>
-<head>
-<title>GLEW: The OpenGL Extension Wrangler Library</title>
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> 
-<link href="glew.css" type="text/css" rel="stylesheet">
-</head>
-<body bgcolor="#fff0d0">
-<table border="0" width="100%" cellpadding="12" cellspacing="8" style="height:100%">
-<tr>
-<td bgcolor="#ffffff" align="left" valign="top" width="200">
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr>
-<td valign="top">
-
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">1.5.4</a></i></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center">
-<table border="0" cellpadding="0" cellspacing="0" align="center">
-<tr><td align="center"><a href="index.html">Download</a></td></tr>
-<tr><td align="center"><a href="install.html">Installation</a></td></tr>
-<tr><td align="center"><a href="basic.html">Basic Usage</a></td></tr>
-<tr><td align="center"><a href="advanced.html">Advanced Usage</a></td></tr>
-<tr><td align="center"><a href="credits.html">Credits & Copyright</a></td></tr>
-<tr><td align="center"><a href="log.html">Change Log</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/projects/glew/">Project Page</a></td></tr>
-<tr><td align="center"><a href="https://sourceforge.net/mail/?group_id=67586">Mailing Lists</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/tracker/?group_id=67586">Bug Tracker</a></td></tr>
-</table>
-<tr><td align="center"><br></tr>
-</table>
-</td>
-</tr>
-<tr>
-
-<td valign="bottom">
-<table border="0" width="100%" cellpadding="5" cellspacing="0" align="left">
-<tr><td align="center"><i>Last Update: 04-21-10</i></td></tr>
-<tr><td align="center">
-<a href="http://www.opengl.org"> <img src="./ogl_sm.jpg" width="68"
-height="35" border="0" alt="OpenGL Logo"></a>
-<a href="http://sourceforge.net"> <img
-src="http://sourceforge.net/sflogo.php?group_id=67586&type=1"
-width="88" height="31" border="0" alt="SourceForge Logo"></a>
-</td>
-</tr>
-<!--- <tr><td align="center"><a
-href="http://sourceforge.net/donate/index.php?group_id=67586"><img
-src="http://images.sourceforge.net/images/project-support.jpg"
-width="88" height="32" border="0" alt="Support This Project"></a></td></tr> -->
-</table>
-</td>
-</tr>
-</table>
-</td>
-
-<td bgcolor="#ffffff" align="left" valign="top">
-
-<h1>The OpenGL Extension Wrangler Library</h1>
-
-<!-- end header.html -->
-
-
-<h2>Supported GLX Extensions</h2>
-
-<table border="0" width="100%" cellpadding="1" cellspacing="0" align="center">
-<tr><td class="num">1</td><td> </td><td><a href="http://www.opengl.org/registry/specs/3DFX/3dfx_multisample.txt">3DFX_multisample</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">2</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/glx_create_context.txt">ARB_create_context</a></td></tr>
-<tr><td class="num">3</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/glx_create_context.txt">ARB_create_context_profile</a></td></tr>
-<tr><td class="num">4</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/color_buffer_float.txt">ARB_fbconfig_float</a></td></tr>
-<tr><td class="num">5</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/framebuffer_sRGB.txt">ARB_framebuffer_sRGB</a></td></tr>
-<tr><td class="num">6</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/ARB/get_proc_address.txt">ARB_get_proc_address</a></td></tr>
-<tr><td class="num">7</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/multisample.txt">ARB_multisample</a></td></tr>
-<tr><td class="num">8</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/vertex_buffer_object.txt">ARB_vertex_buffer_object</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">9</td><td> </td><td>ATI_pixel_format_float</td></tr>
-<tr><td class="num">10</td><td> </td><td>ATI_render_texture</td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">11</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_packed_float.txt">EXT_fbconfig_packed_float</a></td></tr>
-<tr><td class="num">12</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_framebuffer_sRGB.txt">EXT_framebuffer_sRGB</a></td></tr>
-<tr><td class="num">13</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/import_context.txt">EXT_import_context</a></td></tr>
-<tr><td class="num">14</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/scene_marker.txt">EXT_scene_marker</a></td></tr>
-<tr><td class="num">15</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/swap_control.txt">EXT_swap_control</a></td></tr>
-<tr><td class="num">16</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/texture_from_pixmap.txt">EXT_texture_from_pixmap</a></td></tr>
-<tr><td class="num">17</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/visual_info.txt">EXT_visual_info</a></td></tr>
-<tr><td class="num">18</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/visual_rating.txt">EXT_visual_rating</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">19</td><td> </td><td><a href="http://www.opengl.org/registry/specs/INTEL/swap_event.txt">INTEL_swap_event</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">20</td><td> </td><td><a href="http://www.opengl.org/registry/specs/MESA/agp_offset.txt">MESA_agp_offset</a></td></tr>
-<tr><td class="num">21</td><td> </td><td><a href="http://www.opengl.org/registry/specs/MESA/copy_sub_buffer.txt">MESA_copy_sub_buffer</a></td></tr>
-<tr><td class="num">22</td><td> </td><td><a href="http://www.opengl.org/registry/specs/MESA/pixmap_colormap.txt">MESA_pixmap_colormap</a></td></tr>
-<tr><td class="num">23</td><td> </td><td><a href="http://www.opengl.org/registry/specs/MESA/release_buffers.txt">MESA_release_buffers</a></td></tr>
-<tr><td class="num">24</td><td> </td><td><a href="http://www.opengl.org/registry/specs/MESA/set_3dfx_mode.txt">MESA_set_3dfx_mode</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">25</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/copy_image.txt">NV_copy_image</a></td></tr>
-<tr><td class="num">26</td><td> </td><td><a href="http://cvs1.nvidia.com/inc/GL/glxtokens.h">NV_float_buffer</a></td></tr>
-<tr><td class="num">27</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/present_video.txt">NV_present_video</a></td></tr>
-<tr><td class="num">28</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/glx_swap_group.txt">NV_swap_group</a></td></tr>
-<tr><td class="num">29</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_array_range.txt">NV_vertex_array_range</a></td></tr>
-<tr><td class="num">30</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/glx_video_out.txt">NV_video_output</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">31</td><td> </td><td><a href="http://www.opengl.org/registry/specs/OML/glx_swap_method.txt">OML_swap_method</a></td></tr>
-<tr><td class="num">32</td><td> </td><td><a href="http://www.opengl.org/registry/specs/OML/glx_sync_control.txt">OML_sync_control</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">33</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/blended_overlay.txt">SGIS_blended_overlay</a></td></tr>
-<tr><td class="num">34</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/color_range.txt">SGIS_color_range</a></td></tr>
-<tr><td class="num">35</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIS/multisample.txt">SGIS_multisample</a></td></tr>
-<tr><td class="num">36</td><td> </td><td>SGIS_shared_multisample</td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">37</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/fbconfig.txt">SGIX_fbconfig</a></td></tr>
-<tr><td class="num">38</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/SGIX/hyperpipe_group.txt">SGIX_hyperpipe</a></td></tr>
-<tr><td class="num">39</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/pbuffer.txt">SGIX_pbuffer</a></td></tr>
-<tr><td class="num">40</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/SGIX/swap_barrier.txt">SGIX_swap_barrier</a></td></tr>
-<tr><td class="num">41</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/SGIX/swap_group.txt">SGIX_swap_group</a></td></tr>
-<tr><td class="num">42</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/video_resize.txt">SGIX_video_resize</a></td></tr>
-<tr><td class="num">43</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGIX/visual_select_group.txt">SGIX_visual_select_group</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">44</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGI/cushion.txt">SGI_cushion</a></td></tr>
-<tr><td class="num">45</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGI/make_current_read.txt">SGI_make_current_read</a></td></tr>
-<tr><td class="num">46</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGI/swap_control.txt">SGI_swap_control</a></td></tr>
-<tr><td class="num">47</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SGI/video_sync.txt">SGI_video_sync</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">48</td><td> </td><td><a href="http://www.opengl.org/registry/specs/SUN/get_transparent_index.txt">SUN_get_transparent_index</a></td></tr>
-<tr><td class="num">49</td><td> </td><td><a href="http://wwws.sun.com/software/graphics/opengl/extensions/glx_sun_video_resize.txt">SUN_video_resize</a></td></tr>
-</table>
-<!-- begin footer.html -->
-</td></tr></table></body>
-<!-- end footer.html -->
-
diff --git a/src/other/glew/doc/gpl.txt b/src/other/glew/doc/gpl.txt
deleted file mode 100644
index b7b5f53..0000000
--- a/src/other/glew/doc/gpl.txt
+++ /dev/null
@@ -1,340 +0,0 @@
-		    GNU GENERAL PUBLIC LICENSE
-		       Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-	51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-			    Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-		    GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-			    NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-		     END OF TERMS AND CONDITIONS
-
-	    How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    This program 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.
-
-    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 General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) year  name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/src/other/glew/doc/index.html b/src/other/glew/doc/index.html
deleted file mode 100644
index f95035b..0000000
--- a/src/other/glew/doc/index.html
+++ /dev/null
@@ -1,202 +0,0 @@
-<!-- begin header.html -->
-<!--
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
--->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html/4/loose.dtd">
-<!--  <img src="new.png" height="12" alt="NEW!"> -->
-<html>
-<head>
-<title>GLEW: The OpenGL Extension Wrangler Library</title>
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> 
-<link href="glew.css" type="text/css" rel="stylesheet">
-</head>
-<body bgcolor="#fff0d0">
-<table border="0" width="100%" cellpadding="12" cellspacing="8" style="height:100%">
-<tr>
-<td bgcolor="#ffffff" align="left" valign="top" width="200">
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr>
-<td valign="top">
-
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">1.5.4</a></i></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center">
-<table border="0" cellpadding="0" cellspacing="0" align="center">
-<tr><td align="center">Download</td></tr>
-<tr><td align="center"><a href="install.html">Installation</a></td></tr>
-<tr><td align="center"><a href="basic.html">Basic Usage</a></td></tr>
-<tr><td align="center"><a href="advanced.html">Advanced Usage</a></td></tr>
-<tr><td align="center"><a href="credits.html">Credits & Copyright</a></td></tr>
-<tr><td align="center"><a href="log.html">Change Log</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/projects/glew/">Project Page</a></td></tr>
-<tr><td align="center"><a href="https://sourceforge.net/mail/?group_id=67586">Mailing Lists</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/tracker/?group_id=67586">Bug Tracker</a></td></tr>
-</table>
-<tr><td align="center"><br></tr>
-</table>
-</td>
-</tr>
-<tr>
-
-<td valign="bottom">
-<table border="0" width="100%" cellpadding="5" cellspacing="0" align="left">
-<tr><td align="center"><i>Last Update: 04-21-10</i></td></tr>
-<tr><td align="center">
-<a href="http://www.opengl.org"> <img src="./ogl_sm.jpg" width="68"
-height="35" border="0" alt="OpenGL Logo"></a>
-<a href="http://sourceforge.net"> <img
-src="http://sourceforge.net/sflogo.php?group_id=67586&type=1"
-width="88" height="31" border="0" alt="SourceForge Logo"></a>
-</td>
-</tr>
-<!--- <tr><td align="center"><a
-href="http://sourceforge.net/donate/index.php?group_id=67586"><img
-src="http://images.sourceforge.net/images/project-support.jpg"
-width="88" height="32" border="0" alt="Support This Project"></a></td></tr> -->
-</table>
-</td>
-</tr>
-</table>
-</td>
-
-<td bgcolor="#ffffff" align="left" valign="top">
-
-<h1>The OpenGL Extension Wrangler Library</h1>
-
-<!-- end header.html -->
-
-
-<p>
-The OpenGL Extension Wrangler Library (GLEW) is a cross-platform
-open-source C/C++ extension loading library.  GLEW provides efficient
-run-time mechanisms for determining which OpenGL extensions are
-supported on the target platform.  OpenGL core and extension
-functionality is exposed in a single header file.  GLEW has been
-tested on a variety of operating systems, including Windows, Linux,
-Mac OS X, FreeBSD, Irix, and Solaris.
-</p>
-
-<h2>Download Center</h2>
-<p>
-<a href="http://sourceforge.net/projects/glew/">GLEW</a> is distributed
-as source and precompiled binaries. The latest release is
-<a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">1.5.4</a>
-[04-21-10]:
-</p>
-<p>
-</p>
-<p>
-<table border="1" cellpadding="5" cellspacing="0" bgcolor="#f0f0f0" align="center">
-<tr>
-<td>
-<table border="0" cellpadding="3" cellspacing="0">
-<tr>
-<td></td>
-<td align="right"><b>Source</b></td>
-<td></td>
-<td align="left">
-<a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/glew-1.5.4.zip/download">ZIP</a> | 
-<a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/glew-1.5.4.tgz/download">TGZ</a></td>
-<td></td>
-</tr>
-<tr>
-<td></td>
-<td align="right"><b>Binaries</b></td>
-<td></td>
-<td align="left">
-<a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/glew-1.5.4-win32.zip/download">Windows 32-bit</a> | 
-<a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/glew-1.5.4-win64.zip/download">64-bit</a> 
-</td>
-<td></td>
-</tr>
-</table>
-</tr>
-</table>
-<p></p>
-<p>
-An up-to-date copy is also available from the <a
-href="http://glew.svn.sourceforge.net/svnroot/glew/trunk/glew/">project
-repository</a>:
-</p>
-<p>
-<tt>svn co https://glew.svn.sourceforge.net/svnroot/glew/trunk/glew glew</tt>
-</p>
-
-<h2>Supported Extensions</h2>
-<p>
-The latest release contains support for OpenGL 3.3, OpenGL 4.0 and the following extensions:
-</p>
-<ul>
-<li><a href="glew.html">OpenGL extensions</a>
-<li><a href="wglew.html">WGL extensions</a>
-<li><a href="glxew.html">GLX extensions</a>
-</ul>
-
-<h2>News</h2>
-<ul>
-<li>[04-21-10] <a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">GLEW 1.5.4</a> adds support for OpenGL 3.3, OpenGL 4.0 and new extensions, fixes bugs</li>
-<li>[02-28-10] <a href="https://sourceforge.net/projects/glew/files/glew/1.5.3/">GLEW 1.5.3</a> fixes minor bugs and adds three new extensions</li>
-<li>[12-31-09] <a href="https://sourceforge.net/projects/glew/files/glew/1.5.2/">GLEW 1.5.2</a> adds support for OpenGL 3.1, OpenGL 3.2 and new extensions</li>
-<li>[11-03-08] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=637800">GLEW 1.5.1</a> adds support for OpenGL 3.0 and 31 new extensions</li>
-<li>[12-27-07] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=564464">GLEW 1.5.0</a> is released under less restrictive licenses</li>
-<li>[04-27-07] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=504079">GLEW 1.4.0</a> is released</li>
-<li>[03-08-07] GLEW is included in the <a href="http://developer.nvidia.com/object/sdk_home.html">NVIDIA OpenGL SDK</a></li>
-<li>[03-04-07] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=491113">GLEW 1.3.6</a> is released</li>
-<li>[02-28-07] <a href="http://glew.svn.sourceforge.net/svnroot/glew/trunk/glew/">Repository</a> is migrated to SVN</li>
-<li>[02-25-07] GLEW is included in the <a href="http://www.opengl.org/sdk/">OpenGL SDK</a></li>
-<li>[11-21-06] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=465334">GLEW 1.3.5</a> adds OpenGL 2.1 and NVIDIA G80 extensions</li>
-<li>[03-04-06] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=398455">GLEW 1.3.4</a> adds support for five new extensions</li>
-<li>[05-16-05] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=327647">GLEW 1.3.3</a> is released</li>
-<li>[03-16-05] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=313345">GLEW 1.3.2</a> adds support for GL_APPLE_pixel_buffer</li>
-<li>[02-11-05] <a href="http://gljava.sourceforge.net/">gljava</a> and <a href="http://sdljava.sourceforge.net/">sdljava</a> provide a Java binding to OpenGL via GLEW</li>
-<li>[02-02-05] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=302049">GLEW 1.3.1</a> adds support for <a href="http://www.opengl.org/documentation/extensions/EXT_framebuffer_object.txt">GL_EXT_framebuffer_object</a></li>
-<li>[01-04-05] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=294527">GLEW 1.3.0</a> adds core OpenGL 2.0 support plus many enhancements</li>
-<li>[12-22-04] <a href="http://glewpy.sf.net/">GLEWpy</a> Python wrapper announced</li>
-<li>[12-12-04] <a href="https://sourceforge.net/mail/?group_id=67586">Mailing lists</a> created on sourceforge</li>
-<li>[12-06-04] <a href="http://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=287948">GLEW 1.2.5</a> adds new extensions and support for FreeBSD</li>
-</ul>
-
-<h2>Links</h2>
-<ul>
-<li><a href="http://www.opengl.org/sdk/">OpenGL Software Development Kit</a></li>
-<li><a href="http://www.opengl.org/resources/features/OGLextensions/">All About OpenGL Extensions</a></li>
-<li><a href="http://www.opengl.org/registry/">OpenGL Extension Registry</a></li>
-<li><a href="http://ati.amd.com/developer/sdk/radeonSDK/html/info/Prog3D.html">ATI OpenGL Extension Specifications</a></li>
-<li><a href="http://developer.apple.com/graphicsimaging/opengl/extensions.html">APPLE OpenGL Extensions Guide</a></li>
-<li><a href="http://developer.nvidia.com/object/nvidia_opengl_specs.html">NVIDIA OpenGL Extension Specifications</a></li>
-</ul>
-
-<!-- begin footer.html -->
-</td></tr></table></body>
-<!-- end footer.html -->
-
diff --git a/src/other/glew/doc/install.html b/src/other/glew/doc/install.html
deleted file mode 100644
index 45d4524..0000000
--- a/src/other/glew/doc/install.html
+++ /dev/null
@@ -1,228 +0,0 @@
-<!-- begin header.html -->
-<!--
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
--->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html/4/loose.dtd">
-<!--  <img src="new.png" height="12" alt="NEW!"> -->
-<html>
-<head>
-<title>GLEW: The OpenGL Extension Wrangler Library</title>
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> 
-<link href="glew.css" type="text/css" rel="stylesheet">
-</head>
-<body bgcolor="#fff0d0">
-<table border="0" width="100%" cellpadding="12" cellspacing="8" style="height:100%">
-<tr>
-<td bgcolor="#ffffff" align="left" valign="top" width="200">
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr>
-<td valign="top">
-
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">1.5.4</a></i></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center">
-<table border="0" cellpadding="0" cellspacing="0" align="center">
-<tr><td align="center"><a href="index.html">Download</a></td></tr>
-<tr><td align="center">Installation</td></tr>
-<tr><td align="center"><a href="basic.html">Basic Usage</a></td></tr>
-<tr><td align="center"><a href="advanced.html">Advanced Usage</a></td></tr>
-<tr><td align="center"><a href="credits.html">Credits & Copyright</a></td></tr>
-<tr><td align="center"><a href="log.html">Change Log</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/projects/glew/">Project Page</a></td></tr>
-<tr><td align="center"><a href="https://sourceforge.net/mail/?group_id=67586">Mailing Lists</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/tracker/?group_id=67586">Bug Tracker</a></td></tr>
-</table>
-<tr><td align="center"><br></tr>
-</table>
-</td>
-</tr>
-<tr>
-
-<td valign="bottom">
-<table border="0" width="100%" cellpadding="5" cellspacing="0" align="left">
-<tr><td align="center"><i>Last Update: 04-21-10</i></td></tr>
-<tr><td align="center">
-<a href="http://www.opengl.org"> <img src="./ogl_sm.jpg" width="68"
-height="35" border="0" alt="OpenGL Logo"></a>
-<a href="http://sourceforge.net"> <img
-src="http://sourceforge.net/sflogo.php?group_id=67586&type=1"
-width="88" height="31" border="0" alt="SourceForge Logo"></a>
-</td>
-</tr>
-<!--- <tr><td align="center"><a
-href="http://sourceforge.net/donate/index.php?group_id=67586"><img
-src="http://images.sourceforge.net/images/project-support.jpg"
-width="88" height="32" border="0" alt="Support This Project"></a></td></tr> -->
-</table>
-</td>
-</tr>
-</table>
-</td>
-
-<td bgcolor="#ffffff" align="left" valign="top">
-
-<h1>The OpenGL Extension Wrangler Library</h1>
-
-<!-- end header.html -->
-
-
-<h2>Installation</h2>
-
-<p>
-To use the shared library version of GLEW, you need to copy the
-headers and libraries into their destination directories. On Windows
-this typically boils down to copying:
-</p>
-
-<table border="0" cellpadding="0" cellspacing="0" align="center"> <!-- bgcolor="#f0f0f0" -->
-<tr><td align="left"><tt>bin/glew32.dll</tt></td><td>    to    </td>
-<td align="left"><tt>%SystemRoot%/system32</tt></td></tr>
-<tr><td align="left"><tt>lib/glew32.lib</tt></td><td>    to    </td>
-<td align="left"><tt>{VC Root}/Lib</tt></td></tr>
-<tr><td align="left"><tt>include/GL/glew.h</tt></td><td>    to    </td>
-<td align="left"><tt>{VC Root}/Include/GL</tt></td></tr>
-<tr><td align="left"><tt>include/GL/wglew.h</tt></td><td>    to    </td>
-<td align="left"><tt>{VC Root}/Include/GL</tt></td></tr>
-</table>
-<p>
-</p>
-
-<p>
-where <tt>{VC Root}</tt> is the Visual C++ root directory, typically
-<tt>C:/Program Files/Microsoft Visual Studio/VC98</tt> for Visual
-Studio 6.0 or <tt>C:/Program Files/Microsoft Visual
-Studio .NET 2003/Vc7/PlatformSDK</tt> for Visual Studio .NET.
-</p>
-
-<p>
-On Unix, typing <tt>make install</tt> will attempt to install GLEW
-into <tt>/usr/include/GL</tt> and <tt>/usr/lib</tt>.  You can
-customize the installation target via the <tt>GLEW_DEST</tt>
-environment variable if you do not have write access to these
-directories.
-</p>
-
-<h2>Building Your Project with GLEW</h2>
-<p>
-There are two ways to build your project with GLEW.
-</p>
-<h3>Including the source files / project file</h3>
-<p>
-The simpler but less flexible way is to include <tt>glew.h</tt> and
-<tt>glew.c</tt> into your project.  On Windows, you also need to
-define the <tt>GLEW_STATIC</tt> preprocessor token when building a
-static library or executable, and the <tt>GLEW_BUILD</tt> preprocessor
-token when building a dll.  You also need to replace
-<tt><GL/gl.h></tt> and <tt><GL/glu.h></tt> with
-<tt><glew.h></tt> in your code and set the appropriate include
-flag (<tt>-I</tt>) to tell the compiler where to look for it.  For
-example:
-</p>
-<p class="pre">
-#include <glew.h><br>
-#include <GL/glut.h><br>
-<gl, glu, and glut functionality is available here><br>
-</p>
-<p>
-Depending on where you put <tt>glew.h</tt> you may also need to change
-the include directives in <tt>glew.c</tt>. Note that if you are using
-GLEW together with GLUT, you have to include <tt>glew.h</tt> first.
-In addition, <tt>glew.h</tt> includes <tt>glu.h</tt>, so you do not
-need to include it separately.
-</p>
-<p>
-On Windows, you also have the option of adding the supplied project
-file <tt>glew_static.dsp</tt> to your workspace (solution) and compile
-it together with your other projects.  In this case you also need to
-change the <tt>GLEW_BUILD</tt> preprocessor constant to
-<tt>GLEW_STATIC</tt> when building a static library or executable,
-otherwise you get build errors.
-</p>
-<p>
-<b>Note that GLEW does not use the C
-runtime library, so it does not matter which version (single-threaded,
-multi-threaded or multi-threaded DLL) it is linked with (without
-debugging information). It is, however, always a good idea to compile all
-your projects including GLEW with the same C runtime settings.</b>
-</p>
-
-<h3>Using GLEW as a shared library</h3>
-
-<p>
-Alternatively, you can use the provided project files / makefile to
-build a separate shared library you can link your projects with later.
-In this case the best practice is to install <tt>glew.h</tt>,
-<tt>glew32.lib</tt>, and <tt>glew32.dll</tt> / <tt>libGLEW.so</tt> to
-where the OpenGL equivalents <tt>gl.h</tt>, <tt>opengl32.lib</tt>, and
-<tt>opengl32.dll</tt> / <tt>libGL.so</tt> are located.  Note that you
-need administrative privileges to do this.  If you do not have
-administrator access and your system administrator will not do it for
-you, you can install GLEW into your own lib and include subdirectories
-and tell the compiler where to find it. Then you can just replace
-<tt><GL/gl.h></tt> with <tt><GL/glew.h></tt> in your
-program:
-</p>
-
-<p class="pre">
-#include <GL/glew.h><br>
-#include <GL/glut.h><br>
-<gl, glu, and glut functionality is available here><br>
-</p>
-
-<p>
-or:
-</p>
-
-<p class="pre">
-#include <GL/glew.h><br>
-<gl and glu functionality is available here><br>
-</p>
-
-<p>
-Remember to link your project with <tt>glew32.lib</tt>,
-<tt>glu32.lib</tt>, and <tt>opengl32.lib</tt> on Windows and
-<tt>libGLEW.so</tt>, <tt>libGLU.so</tt>, and <tt>libGL.so</tt> on
-Unix (<tt>-lGLEW -lGLU -lGL</tt>).
-</p>
-
-<p>
-It is important to keep in mind that <tt>glew.h</tt> includes neither
-<tt>windows.h</tt> nor <tt>gl.h</tt>.  Also, GLEW will warn you by
-issuing a preprocessor error in case you have included <tt>gl.h</tt>,
-<tt>glext.h</tt>, or <tt>glATI.h</tt> before <tt>glew.h</tt>.
-</p>
-
-<!-- begin footer.html -->
-</td></tr></table></body>
-<!-- end footer.html -->
-
diff --git a/src/other/glew/doc/khronos.txt b/src/other/glew/doc/khronos.txt
deleted file mode 100644
index ffc271c..0000000
--- a/src/other/glew/doc/khronos.txt
+++ /dev/null
@@ -1,20 +0,0 @@
-Copyright (c) 2007 The Khronos Group Inc.
-
-Permission is hereby granted, free of charge, to any person obtaining a
-copy of this software and/or associated documentation files (the
-"Materials"), to deal in the Materials without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Materials, and to
-permit persons to whom the Materials are furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Materials.
-
-THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
diff --git a/src/other/glew/doc/log.html b/src/other/glew/doc/log.html
deleted file mode 100644
index 610a769..0000000
--- a/src/other/glew/doc/log.html
+++ /dev/null
@@ -1,704 +0,0 @@
-<!-- begin header.html -->
-<!--
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
--->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html/4/loose.dtd">
-<!--  <img src="new.png" height="12" alt="NEW!"> -->
-<html>
-<head>
-<title>GLEW: The OpenGL Extension Wrangler Library</title>
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> 
-<link href="glew.css" type="text/css" rel="stylesheet">
-</head>
-<body bgcolor="#fff0d0">
-<table border="0" width="100%" cellpadding="12" cellspacing="8" style="height:100%">
-<tr>
-<td bgcolor="#ffffff" align="left" valign="top" width="200">
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr>
-<td valign="top">
-
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">1.5.4</a></i></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center">
-<table border="0" cellpadding="0" cellspacing="0" align="center">
-<tr><td align="center"><a href="index.html">Download</a></td></tr>
-<tr><td align="center"><a href="install.html">Installation</a></td></tr>
-<tr><td align="center"><a href="basic.html">Basic Usage</a></td></tr>
-<tr><td align="center"><a href="advanced.html">Advanced Usage</a></td></tr>
-<tr><td align="center"><a href="credits.html">Credits & Copyright</a></td></tr>
-<tr><td align="center">Change Log</td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/projects/glew/">Project Page</a></td></tr>
-<tr><td align="center"><a href="https://sourceforge.net/mail/?group_id=67586">Mailing Lists</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/tracker/?group_id=67586">Bug Tracker</a></td></tr>
-</table>
-<tr><td align="center"><br></tr>
-</table>
-</td>
-</tr>
-<tr>
-
-<td valign="bottom">
-<table border="0" width="100%" cellpadding="5" cellspacing="0" align="left">
-<tr><td align="center"><i>Last Update: 04-21-10</i></td></tr>
-<tr><td align="center">
-<a href="http://www.opengl.org"> <img src="./ogl_sm.jpg" width="68"
-height="35" border="0" alt="OpenGL Logo"></a>
-<a href="http://sourceforge.net"> <img
-src="http://sourceforge.net/sflogo.php?group_id=67586&type=1"
-width="88" height="31" border="0" alt="SourceForge Logo"></a>
-</td>
-</tr>
-<!--- <tr><td align="center"><a
-href="http://sourceforge.net/donate/index.php?group_id=67586"><img
-src="http://images.sourceforge.net/images/project-support.jpg"
-width="88" height="32" border="0" alt="Support This Project"></a></td></tr> -->
-</table>
-</td>
-</tr>
-</table>
-</td>
-
-<td bgcolor="#ffffff" align="left" valign="top">
-
-<h1>The OpenGL Extension Wrangler Library</h1>
-
-<!-- end header.html -->
-
-
-<h2>Change Log</h2>
-
-<hr align="center">
-<ul class="none">
-<li><b>1.5.4</b> [04-21-10]
-<ul>
-<li> New features:
-<ul>
-<li> Support for OpenGL 3.3
-<li> Support for OpenGL 4.0
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_AMD_conservative_depth
-<li> GL_ARB_blend_func_extended
-<li> GL_ARB_draw_indirect
-<li> GL_ARB_explicit_attrib_location
-<li> GL_ARB_gpu_shader5
-<li> GL_ARB_gpu_shader_fp64
-<li> GL_ARB_occlusion_query2
-<li> GL_ARB_sampler_objects
-<li> GL_ARB_shader_bit_encoding
-<li> GL_ARB_shader_subroutine
-<li> GL_ARB_shading_language_include
-<li> GL_ARB_tessellation_shader
-<li> GL_ARB_texture_buffer_object_rgb32
-<li> GL_ARB_texture_compression_bptc
-<li> GL_ARB_texture_rgb10_a2ui
-<li> GL_ARB_texture_swizzle
-<li> GL_ARB_timer_query
-<li> GL_ARB_transform_feedback2
-<li> GL_ARB_transform_feedback3
-<li> GL_ARB_vertex_type_2_10_10_10_rev
-<li> GL_EXT_shader_image_load_store
-<li> GL_EXT_vertex_attrib_64bit
-<li> GL_NV_gpu_program5
-<li> GL_NV_gpu_program_fp64
-<li> GL_NV_gpu_shader5
-<li> GL_NV_tessellation_program5
-<li> GL_NV_vertex_attrib_integer_64bit
-<li> GLX_ARB_vertex_buffer_object
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Parameter constness fix for glPointParameteriv and glPointParameterfv
-</ul>
-</ul>
-</ul>
-
-<hr align="center">
-<ul class="none">
-<li><b>1.5.3</b> [02-28-10]
-<ul>
-<li> New extensions:
-<ul>
-<li> GLX_INTEL_swap_event
-<li> GL_AMD_seamless_cubemap_per_texture
-<li> GL_AMD_shader_stencil_export
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Correct version detection for GL 3.1 and 3.2
-<li> Missing 3.1 enumerants
-<li> Add glew.pc
-</ul>
-</ul>
-</ul>
-
-<hr align="center">
-<ul class="none">
-<li><b>1.5.2</b> [12-31-09]
-<ul>
-<li> New features:
-<ul>
-<li> Support for OpenGL 3.1
-<li> Support for OpenGL 3.2
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_AMD_draw_buffers_blend
-<li> GL_AMD_performance_monitor
-<li> GL_AMD_texture_texture4
-<li> GL_AMD_vertex_shader_tessellator
-<li> GL_APPLE_aux_depth_stencil
-<li> GL_APPLE_object_purgeable
-<li> GL_APPLE_rgb_422
-<li> GL_APPLE_row_bytes
-<li> GL_APPLE_vertex_program_evaluators
-<li> GL_ARB_compatibility
-<li> GL_ARB_copy_buffer
-<li> GL_ARB_depth_clamp
-<li> GL_ARB_draw_buffers_blend
-<li> GL_ARB_draw_elements_base_vertex
-<li> GL_ARB_fragment_coord_conventions
-<li> GL_ARB_provoking_vertex
-<li> GL_ARB_sample_shading
-<li> GL_ARB_seamless_cube_map
-<li> GL_ARB_shader_texture_lod
-<li> GL_ARB_sync
-<li> GL_ARB_texture_cube_map_array
-<li> GL_ARB_texture_gather
-<li> GL_ARB_texture_multisample
-<li> GL_ARB_texture_query_lod
-<li> GL_ARB_uniform_buffer_object
-<li> GL_ARB_vertex_array_bgra
-<li> GL_ATI_meminfo
-<li> GL_EXT_provoking_vertex
-<li> GL_EXT_separate_shader_objects
-<li> GL_EXT_texture_snorm
-<li> GL_NV_copy_image
-<li> GL_NV_parameter_buffer_object2
-<li> GL_NV_shader_buffer_load
-<li> GL_NV_texture_barrier
-<li> GL_NV_transform_feedback2
-<li> GL_NV_vertex_buffer_unified_memory
-<li> WGL_AMD_gpu_association
-<li> WGL_ARB_create_context_profile
-<li> WGL_NV_copy_image
-<li> GLX_ARB_create_context_profile
-<li> GLX_EXT_swap_control
-<li> GLX_NV_copy_image
-</ul>
-<li> Bug fixes:
-<ul>
-<li> DOS line endings for windows .zip archives only.
-<li> glTransformFeedbackVaryings arguments.
-<li> Resource leak in glewinfo and visualinfo tools.
-<li> WIN32_LEAN_AND_MEAN preprocessor pollution.
-<li> Fixed version detection for GLEW_VERSION_2_1 and GLEW_VERSION_3_0.
-<li> MesaGLUT glut.h GLAPIENTRY dependency.
-<li> glFramebufferTextureLayer correction.
-<li> OSX compiler warnings resolved.
-<li> Cygwin linking to opengl32 by default, rather than X11 OpenGL.
-<li> SnowLeopard (OSX 10.6) gl.h detection.
-<li> Use $(STRIP) consistently.
-</ul>
-</ul>
-</ul>
-
-<hr align="center">
-<ul class="none">
-<li><b>1.5.1</b> [11-03-08]
-<ul>
-<li> New features:
-<ul>
-<li> Support for OpenGL 3.0
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_ARB_depth_buffer_float
-<li> GL_ARB_draw_instance,
-<li> GL_ARB_framebuffer_object
-<li> GL_ARB_framebuffer_sRGB
-<li> GL_ARB_geometry_shader4
-<li> GL_ARB_half_float_pixel
-<li> GL_ARB_half_float_vertex
-<li> GL_ARB_instanced_arrays
-<li> GL_ARB_map_buffer_range
-<li> GL_ARB_texture_buffer_object
-<li> GL_ARB_texture_compression_rgtc
-<li> GL_ARB_vertex_array_object
-<li> GL_EXT_direct_state_access
-<li> GL_EXT_texture_swizzle
-<li> GL_EXT_transform_feedback
-<li> GL_EXT_vertex_array_bgra
-<li> GL_NV_conditional_render
-<li> GL_NV_explicit_multisample
-<li> GL_NV_present_video
-<li> GL_SGIS_point_line_texgen
-<li> GL_SGIX_convolution_accuracy
-<li> WGL_ARB_create_context
-<li> WGL_ARB_framebuffer_sRGB
-<li> WGL_NV_present_video
-<li> WGL_NV_swap_group
-<li> WGL_NV_video_output
-<li> GLX_ARB_create_context
-<li> GLX_ARB_framebuffer_sRGB
-<li> GLX_NV_present_video
-<li> GLX_NV_swap_group
-<li> GLX_NV_video_output
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Licensing issues with documentation
-<li> Problems with long long and _MSC_VER on MINGW 
-<li> Incorrect parameter for glGetUniformLocation
-<li> glewGetExtension fails on last entry 
-<li> Incomplete GL_NV_texture_shader tokens
-<li> Scripting problems on Cygwin
-<li> Incorrect definition for GLint on OS X
-</ul> 
-</ul>
-</ul>
-
-<hr align="center">
-<ul class="none">
-<li><b>1.5.0</b> [12-27-07]
-<ul>
-<li> New features:
-<ul>
-<li> Licensing change (BSD, Mesa 3-D, Khronos)
-<li> Switch to using registry on <a href="http://www.opengl.org/registry/">www.opengl.org</a>
-<li> Support for major and minor version strings
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_APPLE_flush_buffer_range
-<li> GL_GREMEDY_frame_terminator
-<li> GLX_EXT_texture_from_pixmap
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Incorrent 64-bit type definitions
-<li> Do not strip static library on install
-<li> Missing tokens in GL_ATI_fragment_shader and WGL_{ARB,EXT}_make_current_read
-<li> Missing tokens in GL_VERSION_2_1
-<li> Missing functions in GL_VERSION_1_4
-<li> Incorrect parameter type for glXCopyContext
-</ul> 
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.4.0</b> [04-27-07]
-<ul>
-<li> New features:
-<ul>
-<li> Extension variables are declared const to avoid possible
-corruption of their values
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_NV_depth_range_unclamped
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Incorrect tokens in GL_NV_transform_feedback and GL_NV_framebuffer_multisample_coverage
-<li> Incorrect function names in GL_EXT_gpu_program_parameters
-<li> Missing tokens in GL_EXT_framebuffer_multisample
-<li> GLEW_MX initialization problem for WGL_{ARB,EXT}_extensions_string
-</ul> 
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.6</b> [03-04-07]
-<ul>
-<li> New extensions:
-<ul>
-<li> GL_ATI_shader_texture_lod
-<li> GL_EXT_gpu_program_parameters
-<li> GL_NV_geometry_shader4
-<li> WGL_NV_gpu_affinity
-<li> GLX_SGIX_hyperpipe
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Missing include guards in glxew.h
-<li> Makefile and install problems for Cygwin builds
-<li> Install problem for Linux AMD64 builds
-<li> Incorrent token in GL_ATI_texture_compression_3dc
-<li> Missing tokens from GL_ATIX_point_sprites
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.5</b> [11-21-06]
-<ul>
-<li> New features:
-<ul>
-<li> Support for core OpenGL 2.1
-<li> Debug support for glewIsSupported
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_EXT_bindable_uniform
-<li> GL_EXT_draw_buffers2
-<li> GL_EXT_draw_instanced
-<li> GL_EXT_framebuffer_sRGB
-<li> GL_EXT_geometry_shader4
-<li> GL_EXT_gpu_shader4
-<li> GL_EXT_packed_float
-<li> GL_EXT_texture_array
-<li> GL_EXT_texture_buffer_object
-<li> GL_EXT_texture_compression_latc
-<li> GL_EXT_texture_compression_rgtc
-<li> GL_EXT_texture_integer
-<li> GL_EXT_texture_shared_exponent
-<li> GL_EXT_timer_query
-<li> GL_NV_depth_buffer_float
-<li> GL_NV_fragment_program4
-<li> GL_NV_framebuffer_multisample_coverage
-<li> GL_NV_geometry_program4
-<li> GL_NV_gpu_program4
-<li> GL_NV_parameter_buffer_object
-<li> GL_NV_transform_feedback
-<li> GL_NV_vertex_program4
-<li> GL_OES_byte_coordinates
-<li> GL_OES_compressed_paletted_texture
-<li> GL_OES_read_format
-<li> GL_OES_single_precision
-<li> WGL_EXT_pixel_format_packed_float
-<li> WGL_EXT_framebuffer_sRGB
-<li> GLX_EXT_fbconfig_packed_float
-<li> GLX_EXT_framebuffer_sRGB
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Wrong GLXContext definition on Solaris
-<li> Makefile problem for parallel builds
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.4</b> [03-04-06]
-<ul>
-<li> New extensions:
-<ul>
-<li> GL_EXT_framebuffer_blit
-<li> GL_EXT_framebuffer_multisample
-<li> GL_EXT_packed_depth_stencil
-<li> GL_MESAX_texture_stack
-<li> WGL_3DL_stereo_control
-</ul>
-</ul>
-<ul>
-<li> Bug fixes:
-<ul>
-<li> glBlendEquation missing from GL_ARB_imaging
-<li> Wrong APIENTRY definition for Cygwin
-<li> Incorrect OS X OpenGL types
-<li> Unix 64-bit installation patch
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.3</b> [05-16-05]
-<ul>
-<li> New feature:
-<ul>
-<li> Code generation option to split source into multiple files
-</ul>
-</ul>
-<ul>
-<li> Bug fixes:
-<ul>
-<li> OpenGL 2.0 core initialization problems
-<li> Wrong value for token GL_SHADER_TYPE
-<li> Missing tokens in GL_ATI_fragment_shader
-<li> Missing entry points in GL_ARB_transpose_matrix
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.2</b> [03-16-05]
-<ul>
-<li> New extension:
-<ul>
-<li> GL_APPLE_pixel_buffer
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Missing OpenGL 2.0 entry points
-<li> Missing tokens in GL_SGIX_shadow
-<li> MinGW makefile problem
-<li> Check for incorrect OpenGL version string on SiS hardware
-<li> Documentation update to meet the HTML 4.01 Transitional specification
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.1</b> [02-02-05]
-<ul>
-<li> New features:
-<ul>
-<li> Consistent Unix and Windows versioning
-</ul>
-<li> New extensions:
-<ul>
-<li> GL_EXT_framebuffer_object
-<li> GL_ARB_pixel_buffer_object
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Missing OpenGL 2.0 tokens
-<li> Incorrect typedefs (GLhandleARB and GLhalf)
-<li> Borland compiler problems
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.3.0</b> [01-04-05]
-<ul>
-<li> New features:
-<ul>
-<li> Support for core OpenGL 2.0
-<li> <tt>glewIsSupported</tt> provides efficient string-based extension checks
-<li> Custom code generation from a list of extensions
-<li> Makefile changes
-</ul>
-<li> New extensions:
-<ul>
-<li> WGL_ATI_render_texture_rectangle
-</ul>
-<li> Bug fixes:
-<ul>
-<li> Incorrect function signature in OpenGL 1.5 core
-</ul>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.2.5</b> [12-06-04]
-<ul>
-<li> New extensions:
-<ul>
-<li>GL_ATI_texture_compression_3dc
-<li>GL_EXT_Cg_shader
-<li>GL_EXT_draw_range_elements
-<li>GL_KTX_buffer_region
-</ul>
-<li> Bug fixes:
-<ul>
-<li> OpenGL version detection bug
-<li> Problems with wxWindows and MinGW compilation
-<li> <tt>visualinfo</tt> compilation problem with GLEW_MX specified
-<li> Wrong token name in OpenGL 1.5 core
-</ul>
-<li> Support for FreeBSD
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.2.4</b> [09-06-04]
-<ul>
-<li> Added ARB_draw_buffers and ARB_texture_rectangle
-<li> Fixed bug in ARB_shader_objects
-<li> Replaced <tt>wglinfo</tt> with <tt>visualinfo</tt>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.2.3</b> [06-10-04]
-<ul>
-<li> Added GL_NV_fragment_program2, GL_NV_fragment_program_option, GL_NV_vertex_program2_option, GL_NV_vertex_program3
-<li> Bug fix in GL_ARB_vertex_blend
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.2.2</b> [05-08-04]
-<ul>
-<li> Added GL_EXT_pixel_buffer_object, removed GL_NV_element_array
-<li> Fixed GLEW_MX problems
-<li> Bug fix in GL_EXT_texture_rectangle and <tt>wglinfo</tt>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.2.1</b> [03-18-04]
-<ul>
-<li> Bug fix in OpenGL version query (early release of 1.2.0 contained this bug)
-<li> Bug fix in GL_ARB_shader_objects and temporary bug fix in GL_ARB_vertex_shader
-<li> Added flags on GDI support and multisampling to <tt>wglinfo</tt>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.2.0</b> [02-19-04]
-<ul>
-<li> Added full OpenGL 1.5 support
-<li> Added support for multiple rendering contexts with different capabilities
-<li> Added command line flags to <tt>glewinfo</tt> for selecting displays and visuals
-<li> Added GLX_SGIS_multisample, GLX_SUN_video_resize, and GL_SUN_read_video_pixels
-<li> Added MinGW/MSYS support
-<li> Bug fixes in GL_ARB_shader_objects and the OS X build
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.1.4</b> [12-15-03]
-<ul>
-<li> Added GL_APPLE_float_pixels, GL_APPLE_texture_range, 
-GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp,
-GLX_ATI_pixel_format_float, and GLX_ATI_render_texture
-<li> Bug fixes in GL_ATI_map_object_buffer and GL_ATI_fragment_shader
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.1.3</b> [10-28-03]
-<ul>
-<li> Added Solaris and Darwin support
-<li> Added GL_ARB_fragment_shader, GL_ARB_shader_objects, and GL_ARB_vertex_shader
-<li> Fixed bug in GL_WIN_swap_hint
-<li> Removed <tt>glewinfo</tt>'s dependency on <tt>GLUT</tt>
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.1.2</b> [09-15-03]
-<ul>
-<li> Removed dependency on WGL_{ARB,EXT}_extensions_string to make GLEW run on Matrox cards
-<li> Added glewGetString for querying the GLEW version string
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.1.1</b> [08-11-03]
-<ul>
-<li> Added GLX_NV_float_buffer, GL_ARB_shading_language_100, and GL_ARB_texture_non_power_of_two
-<li> Fixed bug in GL_ARB_vertex_buffer_object
-<li> Minor updates in documentation
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.1.0</b> [07-08-03]
-<ul>
-<li> Added automatic code generation
-<li> Added almost every extension in the registry
-<li> Added separate namespace
-<li> Added Irix support
-<li> Updated documentation
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.7</b> [06-29-03]
-<ul>
-<li> Added GL_EXT_depth_bounds_test
-<li> Fixed typos
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.6</b> [05-05-03]
-<ul>
-<li> Added ARB_vertex_buffer_object and NV_half_float
-<li> Updated <tt>wglinfo</tt>
-<li> Temporary Linux bug fixes (problems with SDL and MESA)
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.5</b> [02-17-03]
-<ul>
-<li> Bug fixes
-<li> Added <tt>wglinfo</tt>
-<li> Updated documentation
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.4</b> [02-02-03]
-<ul>
-<li> Added NV_texture_expand_normal
-<li> Added mingw support
-<li> Updated documentation
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.3</b> [01-09-03]
-<ul>
-<li> Cleaned up ATI extensions
-<li> Changed function prototypes to match glext.h
-<li> Added EXT_texture3D
-<li> Fixed typos in ATI_vertex_attrib_array_object and ATI_draw_buffers
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.2</b> [12-21-02]
-<ul>
-<li> Added list of supported extensions to documentation
-<li> Added NV_half_float and NV_texgen_emboss
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.1</b> [12-17-02]
-<ul>
-<li> Bug fixes
-<li> Added glewGetExtension
-</ul>
-</ul>
-<hr align="center">
-<ul class="none">
-<li><b>1.0.0</b> [12-12-02]
-<ul>
-<li> Initial release
-</ul>
-</ul>
-<hr align="center">
-
-<!-- begin footer.html -->
-</td></tr></table></body>
-<!-- end footer.html -->
-
diff --git a/src/other/glew/doc/mesa.txt b/src/other/glew/doc/mesa.txt
deleted file mode 100644
index a82dd4b..0000000
--- a/src/other/glew/doc/mesa.txt
+++ /dev/null
@@ -1,21 +0,0 @@
-Mesa 3-D graphics library
-Version:  7.0
-
-Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a
-copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation
-the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
-BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/src/other/glew/doc/new.png b/src/other/glew/doc/new.png
deleted file mode 100644
index 7ce2b47..0000000
Binary files a/src/other/glew/doc/new.png and /dev/null differ
diff --git a/src/other/glew/doc/ogl_sm.jpg b/src/other/glew/doc/ogl_sm.jpg
deleted file mode 100644
index f318d76..0000000
Binary files a/src/other/glew/doc/ogl_sm.jpg and /dev/null differ
diff --git a/src/other/glew/doc/wglew.html b/src/other/glew/doc/wglew.html
deleted file mode 100644
index a8ebe0f..0000000
--- a/src/other/glew/doc/wglew.html
+++ /dev/null
@@ -1,156 +0,0 @@
-<!-- begin header.html -->
-<!--
-The OpenGL Extension Wrangler Library
-Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-Copyright (C) 2002, Lev Povalahev
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without 
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, 
-  this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, 
-  this list of conditions and the following disclaimer in the documentation 
-  and/or other materials provided with the distribution.
-* The name of the author may be used to endorse or promote products 
-  derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGE.
--->
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html/4/loose.dtd">
-<!--  <img src="new.png" height="12" alt="NEW!"> -->
-<html>
-<head>
-<title>GLEW: The OpenGL Extension Wrangler Library</title>
-<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> 
-<link href="glew.css" type="text/css" rel="stylesheet">
-</head>
-<body bgcolor="#fff0d0">
-<table border="0" width="100%" cellpadding="12" cellspacing="8" style="height:100%">
-<tr>
-<td bgcolor="#ffffff" align="left" valign="top" width="200">
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr>
-<td valign="top">
-
-<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
-<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/projects/glew/files/glew/1.5.4/">1.5.4</a></i></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
-<tr><td align="center"><br></td></tr>
-<tr><td align="center">
-<table border="0" cellpadding="0" cellspacing="0" align="center">
-<tr><td align="center"><a href="index.html">Download</a></td></tr>
-<tr><td align="center"><a href="install.html">Installation</a></td></tr>
-<tr><td align="center"><a href="basic.html">Basic Usage</a></td></tr>
-<tr><td align="center"><a href="advanced.html">Advanced Usage</a></td></tr>
-<tr><td align="center"><a href="credits.html">Credits & Copyright</a></td></tr>
-<tr><td align="center"><a href="log.html">Change Log</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/projects/glew/">Project Page</a></td></tr>
-<tr><td align="center"><a href="https://sourceforge.net/mail/?group_id=67586">Mailing Lists</a></td></tr>
-<tr><td align="center"><a href="http://sourceforge.net/tracker/?group_id=67586">Bug Tracker</a></td></tr>
-</table>
-<tr><td align="center"><br></tr>
-</table>
-</td>
-</tr>
-<tr>
-
-<td valign="bottom">
-<table border="0" width="100%" cellpadding="5" cellspacing="0" align="left">
-<tr><td align="center"><i>Last Update: 04-21-10</i></td></tr>
-<tr><td align="center">
-<a href="http://www.opengl.org"> <img src="./ogl_sm.jpg" width="68"
-height="35" border="0" alt="OpenGL Logo"></a>
-<a href="http://sourceforge.net"> <img
-src="http://sourceforge.net/sflogo.php?group_id=67586&type=1"
-width="88" height="31" border="0" alt="SourceForge Logo"></a>
-</td>
-</tr>
-<!--- <tr><td align="center"><a
-href="http://sourceforge.net/donate/index.php?group_id=67586"><img
-src="http://images.sourceforge.net/images/project-support.jpg"
-width="88" height="32" border="0" alt="Support This Project"></a></td></tr> -->
-</table>
-</td>
-</tr>
-</table>
-</td>
-
-<td bgcolor="#ffffff" align="left" valign="top">
-
-<h1>The OpenGL Extension Wrangler Library</h1>
-
-<!-- end header.html -->
-
-
-<h2>Supported WGL Extensions</h2>
-
-<table border="0" width="100%" cellpadding="1" cellspacing="0" align="center">
-<tr><td class="num">1</td><td> </td><td><a href="http://www.opengl.org/registry/specs/3DFX/3dfx_multisample.txt">3DFX_multisample</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">2</td><td> </td><td><a href="http://www.opengl.org/registry/specs/3DL/stereo_control.txt">3DL_stereo_control</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">3</td><td> </td><td><a href="http://www.opengl.org/registry/specs/AMD/wgl_gpu_association.txt">AMD_gpu_association</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">4</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/wgl_buffer_region.txt">ARB_buffer_region</a></td></tr>
-<tr><td class="num">5</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/wgl_create_context.txt">ARB_create_context</a></td></tr>
-<tr><td class="num">6</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/wgl_create_context.txt">ARB_create_context_profile</a></td></tr>
-<tr><td class="num">7</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/wgl_extensions_string.txt">ARB_extensions_string</a></td></tr>
-<tr><td class="num">8</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/framebuffer_sRGB.txt">ARB_framebuffer_sRGB</a></td></tr>
-<tr><td class="num">9</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/wgl_make_current_read.txt">ARB_make_current_read</a></td></tr>
-<tr><td class="num">10</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/multisample.txt">ARB_multisample</a></td></tr>
-<tr><td class="num">11</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/wgl_pbuffer.txt">ARB_pbuffer</a></td></tr>
-<tr><td class="num">12</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/wgl_pixel_format.txt">ARB_pixel_format</a></td></tr>
-<tr><td class="num">13</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/color_buffer_float.txt">ARB_pixel_format_float</a></td></tr>
-<tr><td class="num">14</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ARB/wgl_render_texture.txt">ARB_render_texture</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">15</td><td> </td><td><a href="http://www.opengl.org/registry/specs/ATI/pixel_format_float.txt">ATI_pixel_format_float</a></td></tr>
-<tr><td class="num">16</td><td> </td><td>ATI_render_texture_rectangle</td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">17</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/wgl_depth_float.txt">EXT_depth_float</a></td></tr>
-<tr><td class="num">18</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/wgl_display_color_table.txt">EXT_display_color_table</a></td></tr>
-<tr><td class="num">19</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/wgl_extensions_string.txt">EXT_extensions_string</a></td></tr>
-<tr><td class="num">20</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_framebuffer_sRGB.txt">EXT_framebuffer_sRGB</a></td></tr>
-<tr><td class="num">21</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/wgl_make_current_read.txt">EXT_make_current_read</a></td></tr>
-<tr><td class="num">22</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/wgl_multisample.txt">EXT_multisample</a></td></tr>
-<tr><td class="num">23</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/wgl_pbuffer.txt">EXT_pbuffer</a></td></tr>
-<tr><td class="num">24</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/wgl_pixel_format.txt">EXT_pixel_format</a></td></tr>
-<tr><td class="num">25</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/GL_EXT_packed_float.txt">EXT_pixel_format_packed_float</a></td></tr>
-<tr><td class="num">26</td><td> </td><td><a href="http://www.opengl.org/registry/specs/EXT/wgl_swap_control.txt">EXT_swap_control</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">27</td><td> </td><td><a href="http://www.opengl.org/registry/specs/I3D/wgl_digital_video_control.txt">I3D_digital_video_control</a></td></tr>
-<tr><td class="num">28</td><td> </td><td><a href="http://www.opengl.org/registry/specs/I3D/wgl_gamma.txt">I3D_gamma</a></td></tr>
-<tr><td class="num">29</td><td> </td><td><a href="http://www.opengl.org/registry/specs/I3D/wgl_genlock.txt">I3D_genlock</a></td></tr>
-<tr><td class="num">30</td><td> </td><td><a href="http://www.opengl.org/registry/specs/I3D/wgl_image_buffer.txt">I3D_image_buffer</a></td></tr>
-<tr><td class="num">31</td><td> </td><td><a href="http://www.opengl.org/registry/specs/I3D/wgl_swap_frame_lock.txt">I3D_swap_frame_lock</a></td></tr>
-<tr><td class="num">32</td><td> </td><td><a href="http://www.opengl.org/registry/specs/I3D/wgl_swap_frame_usage.txt">I3D_swap_frame_usage</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">33</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/copy_image.txt">NV_copy_image</a></td></tr>
-<tr><td class="num">34</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/float_buffer.txt">NV_float_buffer</a></td></tr>
-<tr><td class="num">35</td><td> </td><td><a href="http://developer.download.nvidia.com/opengl/specs/WGL_nv_gpu_affinity.txt">NV_gpu_affinity</a></td></tr>
-<tr><td class="num">36</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/present_video.txt">NV_present_video</a></td></tr>
-<tr><td class="num">37</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/render_depth_texture.txt">NV_render_depth_texture</a></td></tr>
-<tr><td class="num">38</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/render_texture_rectangle.txt">NV_render_texture_rectangle</a></td></tr>
-<tr><td class="num">39</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/wgl_swap_group.txt">NV_swap_group</a></td></tr>
-<tr><td class="num">40</td><td> </td><td><a href="http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_array_range.txt">NV_vertex_array_range</a></td></tr>
-<tr><td class="num">41</td><td> </td><td><a href="http://www.opengl.org/registry/specs/NV/wgl_video_out.txt">NV_video_output</a></td></tr>
-<tr><td><br></td><td></td><td></td></tr>
-<tr><td class="num">42</td><td> </td><td><a href="http://www.opengl.org/registry/specs/OML/wgl_sync_control.txt">OML_sync_control</a></td></tr>
-</table>
-<!-- begin footer.html -->
-</td></tr></table></body>
-<!-- end footer.html -->
-
diff --git a/src/other/glew/include/GL/glew.h b/src/other/glew/include/GL/glew.h
deleted file mode 100644
index 189270e..0000000
--- a/src/other/glew/include/GL/glew.h
+++ /dev/null
@@ -1,14435 +0,0 @@
-/*
-** The OpenGL Extension Wrangler Library
-** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-** Copyright (C) 2002, Lev Povalahev
-** All rights reserved.
-** 
-** Redistribution and use in source and binary forms, with or without 
-** modification, are permitted provided that the following conditions are met:
-** 
-** * Redistributions of source code must retain the above copyright notice, 
-**   this list of conditions and the following disclaimer.
-** * Redistributions in binary form must reproduce the above copyright notice, 
-**   this list of conditions and the following disclaimer in the documentation 
-**   and/or other materials provided with the distribution.
-** * The name of the author may be used to endorse or promote products 
-**   derived from this software without specific prior written permission.
-**
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-** THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*
- * Mesa 3-D graphics library
- * Version:  7.0
- *
- * Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-/*
-** Copyright (c) 2007 The Khronos Group Inc.
-** 
-** Permission is hereby granted, free of charge, to any person obtaining a
-** copy of this software and/or associated documentation files (the
-** "Materials"), to deal in the Materials without restriction, including
-** without limitation the rights to use, copy, modify, merge, publish,
-** distribute, sublicense, and/or sell copies of the Materials, and to
-** permit persons to whom the Materials are furnished to do so, subject to
-** the following conditions:
-** 
-** The above copyright notice and this permission notice shall be included
-** in all copies or substantial portions of the Materials.
-** 
-** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
-*/
-
-#ifndef __glew_h__
-#define __glew_h__
-#define __GLEW_H__
-
-#if defined(__gl_h_) || defined(__GL_H__) || defined(__X_GL_H)
-#error gl.h included before glew.h
-#endif
-#if defined(__glext_h_) || defined(__GLEXT_H_)
-#error glext.h included before glew.h
-#endif
-#if defined(__gl_ATI_h_)
-#error glATI.h included before glew.h
-#endif
-
-#define __gl_h_
-#define __GL_H__
-#define __X_GL_H
-#define __glext_h_
-#define __GLEXT_H_
-#define __gl_ATI_h_
-
-#if defined(_WIN32)
-
-/*
- * GLEW does not include <windows.h> to avoid name space pollution.
- * GL needs GLAPI and GLAPIENTRY, GLU needs APIENTRY, CALLBACK, and wchar_t
- * defined properly.
- */
-/* <windef.h> */
-#ifndef APIENTRY
-#define GLEW_APIENTRY_DEFINED
-#  if defined(__MINGW32__) || defined(__CYGWIN__)
-#    define APIENTRY __stdcall
-#  elif (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED) || defined(__BORLANDC__)
-#    define APIENTRY __stdcall
-#  else
-#    define APIENTRY
-#  endif
-#endif
-#ifndef GLAPI
-#  if defined(__MINGW32__) || defined(__CYGWIN__)
-#    define GLAPI extern
-#  endif
-#endif
-/* <winnt.h> */
-#ifndef CALLBACK
-#define GLEW_CALLBACK_DEFINED
-#  if defined(__MINGW32__) || defined(__CYGWIN__)
-#    define CALLBACK __attribute__ ((__stdcall__))
-#  elif (defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA) || defined(_M_PPC)) && !defined(MIDL_PASS)
-#    define CALLBACK __stdcall
-#  else
-#    define CALLBACK
-#  endif
-#endif
-/* <wingdi.h> and <winnt.h> */
-#ifndef WINGDIAPI
-#define GLEW_WINGDIAPI_DEFINED
-#define WINGDIAPI __declspec(dllimport)
-#endif
-/* <ctype.h> */
-#if (defined(_MSC_VER) || defined(__BORLANDC__)) && !defined(_WCHAR_T_DEFINED)
-typedef unsigned short wchar_t;
-#  define _WCHAR_T_DEFINED
-#endif
-/* <stddef.h> */
-#if !defined(_W64)
-#  if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && defined(_MSC_VER) && _MSC_VER >= 1300
-#    define _W64 __w64
-#  else
-#    define _W64
-#  endif
-#endif
-#if !defined(_PTRDIFF_T_DEFINED) && !defined(_PTRDIFF_T_)
-#  ifdef _WIN64
-typedef __int64 ptrdiff_t;
-#  else
-typedef _W64 int ptrdiff_t;
-#  endif
-#  define _PTRDIFF_T_DEFINED
-#  define _PTRDIFF_T_
-#endif
-
-#ifndef GLAPI
-#  if defined(__MINGW32__) || defined(__CYGWIN__)
-#    define GLAPI extern
-#  else
-#    define GLAPI WINGDIAPI
-#  endif
-#endif
-
-#ifndef GLAPIENTRY
-#define GLAPIENTRY APIENTRY
-#endif
-
-/*
- * GLEW_STATIC needs to be set when using the static version.
- * GLEW_BUILD is set when building the DLL version.
- */
-#ifdef GLEW_STATIC
-#  define GLEWAPI extern
-#else
-#  ifdef GLEW_BUILD
-#    define GLEWAPI extern __declspec(dllexport)
-#  else
-#    define GLEWAPI extern __declspec(dllimport)
-#  endif
-#endif
-
-#else /* _UNIX */
-
-/*
- * Needed for ptrdiff_t in turn needed by VBO.  This is defined by ISO
- * C.  On my system, this amounts to _3 lines_ of included code, all of
- * them pretty much harmless.  If you know of a way of detecting 32 vs
- * 64 _targets_ at compile time you are free to replace this with
- * something that's portable.  For now, _this_ is the portable solution.
- * (mem, 2004-01-04)
- */
-
-#include <stddef.h>
-
-/* SGI MIPSPro doesn't like stdint.h in C++ mode */
-
-#if defined(__sgi) && !defined(__GNUC__)
-#include <inttypes.h>
-#else
-#include <stdint.h>
-#endif
-
-#define GLEW_APIENTRY_DEFINED
-#define APIENTRY
-#define GLEWAPI extern
-
-/* <glu.h> */
-#ifndef GLAPI
-#define GLAPI extern
-#endif
-#ifndef GLAPIENTRY
-#define GLAPIENTRY
-#endif
-
-#endif /* _WIN32 */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* ----------------------------- GL_VERSION_1_1 ---------------------------- */
-
-#ifndef GL_VERSION_1_1
-#define GL_VERSION_1_1 1
-
-typedef unsigned int GLenum;
-typedef unsigned int GLbitfield;
-typedef unsigned int GLuint;
-typedef int GLint;
-typedef int GLsizei;
-typedef unsigned char GLboolean;
-typedef signed char GLbyte;
-typedef short GLshort;
-typedef unsigned char GLubyte;
-typedef unsigned short GLushort;
-typedef unsigned long GLulong;
-typedef float GLfloat;
-typedef float GLclampf;
-typedef double GLdouble;
-typedef double GLclampd;
-typedef void GLvoid;
-#if defined(_MSC_VER)
-#  if _MSC_VER < 1400
-typedef __int64 GLint64EXT;
-typedef unsigned __int64 GLuint64EXT;
-#  else
-typedef signed long long GLint64EXT;
-typedef unsigned long long GLuint64EXT;
-#  endif
-#else
-#  if defined(__MINGW32__) || defined(__CYGWIN__)
-#include <inttypes.h>
-#  endif
-typedef int64_t GLint64EXT;
-typedef uint64_t GLuint64EXT;
-#endif
-typedef GLint64EXT  GLint64;
-typedef GLuint64EXT GLuint64;
-typedef struct __GLsync *GLsync;
-
-#define GL_ACCUM 0x0100
-#define GL_LOAD 0x0101
-#define GL_RETURN 0x0102
-#define GL_MULT 0x0103
-#define GL_ADD 0x0104
-#define GL_NEVER 0x0200
-#define GL_LESS 0x0201
-#define GL_EQUAL 0x0202
-#define GL_LEQUAL 0x0203
-#define GL_GREATER 0x0204
-#define GL_NOTEQUAL 0x0205
-#define GL_GEQUAL 0x0206
-#define GL_ALWAYS 0x0207
-#define GL_CURRENT_BIT 0x00000001
-#define GL_POINT_BIT 0x00000002
-#define GL_LINE_BIT 0x00000004
-#define GL_POLYGON_BIT 0x00000008
-#define GL_POLYGON_STIPPLE_BIT 0x00000010
-#define GL_PIXEL_MODE_BIT 0x00000020
-#define GL_LIGHTING_BIT 0x00000040
-#define GL_FOG_BIT 0x00000080
-#define GL_DEPTH_BUFFER_BIT 0x00000100
-#define GL_ACCUM_BUFFER_BIT 0x00000200
-#define GL_STENCIL_BUFFER_BIT 0x00000400
-#define GL_VIEWPORT_BIT 0x00000800
-#define GL_TRANSFORM_BIT 0x00001000
-#define GL_ENABLE_BIT 0x00002000
-#define GL_COLOR_BUFFER_BIT 0x00004000
-#define GL_HINT_BIT 0x00008000
-#define GL_EVAL_BIT 0x00010000
-#define GL_LIST_BIT 0x00020000
-#define GL_TEXTURE_BIT 0x00040000
-#define GL_SCISSOR_BIT 0x00080000
-#define GL_ALL_ATTRIB_BITS 0x000fffff
-#define GL_POINTS 0x0000
-#define GL_LINES 0x0001
-#define GL_LINE_LOOP 0x0002
-#define GL_LINE_STRIP 0x0003
-#define GL_TRIANGLES 0x0004
-#define GL_TRIANGLE_STRIP 0x0005
-#define GL_TRIANGLE_FAN 0x0006
-#define GL_QUADS 0x0007
-#define GL_QUAD_STRIP 0x0008
-#define GL_POLYGON 0x0009
-#define GL_ZERO 0
-#define GL_ONE 1
-#define GL_SRC_COLOR 0x0300
-#define GL_ONE_MINUS_SRC_COLOR 0x0301
-#define GL_SRC_ALPHA 0x0302
-#define GL_ONE_MINUS_SRC_ALPHA 0x0303
-#define GL_DST_ALPHA 0x0304
-#define GL_ONE_MINUS_DST_ALPHA 0x0305
-#define GL_DST_COLOR 0x0306
-#define GL_ONE_MINUS_DST_COLOR 0x0307
-#define GL_SRC_ALPHA_SATURATE 0x0308
-#define GL_TRUE 1
-#define GL_FALSE 0
-#define GL_CLIP_PLANE0 0x3000
-#define GL_CLIP_PLANE1 0x3001
-#define GL_CLIP_PLANE2 0x3002
-#define GL_CLIP_PLANE3 0x3003
-#define GL_CLIP_PLANE4 0x3004
-#define GL_CLIP_PLANE5 0x3005
-#define GL_BYTE 0x1400
-#define GL_UNSIGNED_BYTE 0x1401
-#define GL_SHORT 0x1402
-#define GL_UNSIGNED_SHORT 0x1403
-#define GL_INT 0x1404
-#define GL_UNSIGNED_INT 0x1405
-#define GL_FLOAT 0x1406
-#define GL_2_BYTES 0x1407
-#define GL_3_BYTES 0x1408
-#define GL_4_BYTES 0x1409
-#define GL_DOUBLE 0x140A
-#define GL_NONE 0
-#define GL_FRONT_LEFT 0x0400
-#define GL_FRONT_RIGHT 0x0401
-#define GL_BACK_LEFT 0x0402
-#define GL_BACK_RIGHT 0x0403
-#define GL_FRONT 0x0404
-#define GL_BACK 0x0405
-#define GL_LEFT 0x0406
-#define GL_RIGHT 0x0407
-#define GL_FRONT_AND_BACK 0x0408
-#define GL_AUX0 0x0409
-#define GL_AUX1 0x040A
-#define GL_AUX2 0x040B
-#define GL_AUX3 0x040C
-#define GL_NO_ERROR 0
-#define GL_INVALID_ENUM 0x0500
-#define GL_INVALID_VALUE 0x0501
-#define GL_INVALID_OPERATION 0x0502
-#define GL_STACK_OVERFLOW 0x0503
-#define GL_STACK_UNDERFLOW 0x0504
-#define GL_OUT_OF_MEMORY 0x0505
-#define GL_2D 0x0600
-#define GL_3D 0x0601
-#define GL_3D_COLOR 0x0602
-#define GL_3D_COLOR_TEXTURE 0x0603
-#define GL_4D_COLOR_TEXTURE 0x0604
-#define GL_PASS_THROUGH_TOKEN 0x0700
-#define GL_POINT_TOKEN 0x0701
-#define GL_LINE_TOKEN 0x0702
-#define GL_POLYGON_TOKEN 0x0703
-#define GL_BITMAP_TOKEN 0x0704
-#define GL_DRAW_PIXEL_TOKEN 0x0705
-#define GL_COPY_PIXEL_TOKEN 0x0706
-#define GL_LINE_RESET_TOKEN 0x0707
-#define GL_EXP 0x0800
-#define GL_EXP2 0x0801
-#define GL_CW 0x0900
-#define GL_CCW 0x0901
-#define GL_COEFF 0x0A00
-#define GL_ORDER 0x0A01
-#define GL_DOMAIN 0x0A02
-#define GL_CURRENT_COLOR 0x0B00
-#define GL_CURRENT_INDEX 0x0B01
-#define GL_CURRENT_NORMAL 0x0B02
-#define GL_CURRENT_TEXTURE_COORDS 0x0B03
-#define GL_CURRENT_RASTER_COLOR 0x0B04
-#define GL_CURRENT_RASTER_INDEX 0x0B05
-#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06
-#define GL_CURRENT_RASTER_POSITION 0x0B07
-#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08
-#define GL_CURRENT_RASTER_DISTANCE 0x0B09
-#define GL_POINT_SMOOTH 0x0B10
-#define GL_POINT_SIZE 0x0B11
-#define GL_POINT_SIZE_RANGE 0x0B12
-#define GL_POINT_SIZE_GRANULARITY 0x0B13
-#define GL_LINE_SMOOTH 0x0B20
-#define GL_LINE_WIDTH 0x0B21
-#define GL_LINE_WIDTH_RANGE 0x0B22
-#define GL_LINE_WIDTH_GRANULARITY 0x0B23
-#define GL_LINE_STIPPLE 0x0B24
-#define GL_LINE_STIPPLE_PATTERN 0x0B25
-#define GL_LINE_STIPPLE_REPEAT 0x0B26
-#define GL_LIST_MODE 0x0B30
-#define GL_MAX_LIST_NESTING 0x0B31
-#define GL_LIST_BASE 0x0B32
-#define GL_LIST_INDEX 0x0B33
-#define GL_POLYGON_MODE 0x0B40
-#define GL_POLYGON_SMOOTH 0x0B41
-#define GL_POLYGON_STIPPLE 0x0B42
-#define GL_EDGE_FLAG 0x0B43
-#define GL_CULL_FACE 0x0B44
-#define GL_CULL_FACE_MODE 0x0B45
-#define GL_FRONT_FACE 0x0B46
-#define GL_LIGHTING 0x0B50
-#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51
-#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52
-#define GL_LIGHT_MODEL_AMBIENT 0x0B53
-#define GL_SHADE_MODEL 0x0B54
-#define GL_COLOR_MATERIAL_FACE 0x0B55
-#define GL_COLOR_MATERIAL_PARAMETER 0x0B56
-#define GL_COLOR_MATERIAL 0x0B57
-#define GL_FOG 0x0B60
-#define GL_FOG_INDEX 0x0B61
-#define GL_FOG_DENSITY 0x0B62
-#define GL_FOG_START 0x0B63
-#define GL_FOG_END 0x0B64
-#define GL_FOG_MODE 0x0B65
-#define GL_FOG_COLOR 0x0B66
-#define GL_DEPTH_RANGE 0x0B70
-#define GL_DEPTH_TEST 0x0B71
-#define GL_DEPTH_WRITEMASK 0x0B72
-#define GL_DEPTH_CLEAR_VALUE 0x0B73
-#define GL_DEPTH_FUNC 0x0B74
-#define GL_ACCUM_CLEAR_VALUE 0x0B80
-#define GL_STENCIL_TEST 0x0B90
-#define GL_STENCIL_CLEAR_VALUE 0x0B91
-#define GL_STENCIL_FUNC 0x0B92
-#define GL_STENCIL_VALUE_MASK 0x0B93
-#define GL_STENCIL_FAIL 0x0B94
-#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95
-#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96
-#define GL_STENCIL_REF 0x0B97
-#define GL_STENCIL_WRITEMASK 0x0B98
-#define GL_MATRIX_MODE 0x0BA0
-#define GL_NORMALIZE 0x0BA1
-#define GL_VIEWPORT 0x0BA2
-#define GL_MODELVIEW_STACK_DEPTH 0x0BA3
-#define GL_PROJECTION_STACK_DEPTH 0x0BA4
-#define GL_TEXTURE_STACK_DEPTH 0x0BA5
-#define GL_MODELVIEW_MATRIX 0x0BA6
-#define GL_PROJECTION_MATRIX 0x0BA7
-#define GL_TEXTURE_MATRIX 0x0BA8
-#define GL_ATTRIB_STACK_DEPTH 0x0BB0
-#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1
-#define GL_ALPHA_TEST 0x0BC0
-#define GL_ALPHA_TEST_FUNC 0x0BC1
-#define GL_ALPHA_TEST_REF 0x0BC2
-#define GL_DITHER 0x0BD0
-#define GL_BLEND_DST 0x0BE0
-#define GL_BLEND_SRC 0x0BE1
-#define GL_BLEND 0x0BE2
-#define GL_LOGIC_OP_MODE 0x0BF0
-#define GL_INDEX_LOGIC_OP 0x0BF1
-#define GL_COLOR_LOGIC_OP 0x0BF2
-#define GL_AUX_BUFFERS 0x0C00
-#define GL_DRAW_BUFFER 0x0C01
-#define GL_READ_BUFFER 0x0C02
-#define GL_SCISSOR_BOX 0x0C10
-#define GL_SCISSOR_TEST 0x0C11
-#define GL_INDEX_CLEAR_VALUE 0x0C20
-#define GL_INDEX_WRITEMASK 0x0C21
-#define GL_COLOR_CLEAR_VALUE 0x0C22
-#define GL_COLOR_WRITEMASK 0x0C23
-#define GL_INDEX_MODE 0x0C30
-#define GL_RGBA_MODE 0x0C31
-#define GL_DOUBLEBUFFER 0x0C32
-#define GL_STEREO 0x0C33
-#define GL_RENDER_MODE 0x0C40
-#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50
-#define GL_POINT_SMOOTH_HINT 0x0C51
-#define GL_LINE_SMOOTH_HINT 0x0C52
-#define GL_POLYGON_SMOOTH_HINT 0x0C53
-#define GL_FOG_HINT 0x0C54
-#define GL_TEXTURE_GEN_S 0x0C60
-#define GL_TEXTURE_GEN_T 0x0C61
-#define GL_TEXTURE_GEN_R 0x0C62
-#define GL_TEXTURE_GEN_Q 0x0C63
-#define GL_PIXEL_MAP_I_TO_I 0x0C70
-#define GL_PIXEL_MAP_S_TO_S 0x0C71
-#define GL_PIXEL_MAP_I_TO_R 0x0C72
-#define GL_PIXEL_MAP_I_TO_G 0x0C73
-#define GL_PIXEL_MAP_I_TO_B 0x0C74
-#define GL_PIXEL_MAP_I_TO_A 0x0C75
-#define GL_PIXEL_MAP_R_TO_R 0x0C76
-#define GL_PIXEL_MAP_G_TO_G 0x0C77
-#define GL_PIXEL_MAP_B_TO_B 0x0C78
-#define GL_PIXEL_MAP_A_TO_A 0x0C79
-#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0
-#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1
-#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2
-#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3
-#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4
-#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5
-#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6
-#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7
-#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8
-#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9
-#define GL_UNPACK_SWAP_BYTES 0x0CF0
-#define GL_UNPACK_LSB_FIRST 0x0CF1
-#define GL_UNPACK_ROW_LENGTH 0x0CF2
-#define GL_UNPACK_SKIP_ROWS 0x0CF3
-#define GL_UNPACK_SKIP_PIXELS 0x0CF4
-#define GL_UNPACK_ALIGNMENT 0x0CF5
-#define GL_PACK_SWAP_BYTES 0x0D00
-#define GL_PACK_LSB_FIRST 0x0D01
-#define GL_PACK_ROW_LENGTH 0x0D02
-#define GL_PACK_SKIP_ROWS 0x0D03
-#define GL_PACK_SKIP_PIXELS 0x0D04
-#define GL_PACK_ALIGNMENT 0x0D05
-#define GL_MAP_COLOR 0x0D10
-#define GL_MAP_STENCIL 0x0D11
-#define GL_INDEX_SHIFT 0x0D12
-#define GL_INDEX_OFFSET 0x0D13
-#define GL_RED_SCALE 0x0D14
-#define GL_RED_BIAS 0x0D15
-#define GL_ZOOM_X 0x0D16
-#define GL_ZOOM_Y 0x0D17
-#define GL_GREEN_SCALE 0x0D18
-#define GL_GREEN_BIAS 0x0D19
-#define GL_BLUE_SCALE 0x0D1A
-#define GL_BLUE_BIAS 0x0D1B
-#define GL_ALPHA_SCALE 0x0D1C
-#define GL_ALPHA_BIAS 0x0D1D
-#define GL_DEPTH_SCALE 0x0D1E
-#define GL_DEPTH_BIAS 0x0D1F
-#define GL_MAX_EVAL_ORDER 0x0D30
-#define GL_MAX_LIGHTS 0x0D31
-#define GL_MAX_CLIP_PLANES 0x0D32
-#define GL_MAX_TEXTURE_SIZE 0x0D33
-#define GL_MAX_PIXEL_MAP_TABLE 0x0D34
-#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35
-#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36
-#define GL_MAX_NAME_STACK_DEPTH 0x0D37
-#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38
-#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39
-#define GL_MAX_VIEWPORT_DIMS 0x0D3A
-#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B
-#define GL_SUBPIXEL_BITS 0x0D50
-#define GL_INDEX_BITS 0x0D51
-#define GL_RED_BITS 0x0D52
-#define GL_GREEN_BITS 0x0D53
-#define GL_BLUE_BITS 0x0D54
-#define GL_ALPHA_BITS 0x0D55
-#define GL_DEPTH_BITS 0x0D56
-#define GL_STENCIL_BITS 0x0D57
-#define GL_ACCUM_RED_BITS 0x0D58
-#define GL_ACCUM_GREEN_BITS 0x0D59
-#define GL_ACCUM_BLUE_BITS 0x0D5A
-#define GL_ACCUM_ALPHA_BITS 0x0D5B
-#define GL_NAME_STACK_DEPTH 0x0D70
-#define GL_AUTO_NORMAL 0x0D80
-#define GL_MAP1_COLOR_4 0x0D90
-#define GL_MAP1_INDEX 0x0D91
-#define GL_MAP1_NORMAL 0x0D92
-#define GL_MAP1_TEXTURE_COORD_1 0x0D93
-#define GL_MAP1_TEXTURE_COORD_2 0x0D94
-#define GL_MAP1_TEXTURE_COORD_3 0x0D95
-#define GL_MAP1_TEXTURE_COORD_4 0x0D96
-#define GL_MAP1_VERTEX_3 0x0D97
-#define GL_MAP1_VERTEX_4 0x0D98
-#define GL_MAP2_COLOR_4 0x0DB0
-#define GL_MAP2_INDEX 0x0DB1
-#define GL_MAP2_NORMAL 0x0DB2
-#define GL_MAP2_TEXTURE_COORD_1 0x0DB3
-#define GL_MAP2_TEXTURE_COORD_2 0x0DB4
-#define GL_MAP2_TEXTURE_COORD_3 0x0DB5
-#define GL_MAP2_TEXTURE_COORD_4 0x0DB6
-#define GL_MAP2_VERTEX_3 0x0DB7
-#define GL_MAP2_VERTEX_4 0x0DB8
-#define GL_MAP1_GRID_DOMAIN 0x0DD0
-#define GL_MAP1_GRID_SEGMENTS 0x0DD1
-#define GL_MAP2_GRID_DOMAIN 0x0DD2
-#define GL_MAP2_GRID_SEGMENTS 0x0DD3
-#define GL_TEXTURE_1D 0x0DE0
-#define GL_TEXTURE_2D 0x0DE1
-#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0
-#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1
-#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2
-#define GL_SELECTION_BUFFER_POINTER 0x0DF3
-#define GL_SELECTION_BUFFER_SIZE 0x0DF4
-#define GL_TEXTURE_WIDTH 0x1000
-#define GL_TEXTURE_HEIGHT 0x1001
-#define GL_TEXTURE_INTERNAL_FORMAT 0x1003
-#define GL_TEXTURE_BORDER_COLOR 0x1004
-#define GL_TEXTURE_BORDER 0x1005
-#define GL_DONT_CARE 0x1100
-#define GL_FASTEST 0x1101
-#define GL_NICEST 0x1102
-#define GL_LIGHT0 0x4000
-#define GL_LIGHT1 0x4001
-#define GL_LIGHT2 0x4002
-#define GL_LIGHT3 0x4003
-#define GL_LIGHT4 0x4004
-#define GL_LIGHT5 0x4005
-#define GL_LIGHT6 0x4006
-#define GL_LIGHT7 0x4007
-#define GL_AMBIENT 0x1200
-#define GL_DIFFUSE 0x1201
-#define GL_SPECULAR 0x1202
-#define GL_POSITION 0x1203
-#define GL_SPOT_DIRECTION 0x1204
-#define GL_SPOT_EXPONENT 0x1205
-#define GL_SPOT_CUTOFF 0x1206
-#define GL_CONSTANT_ATTENUATION 0x1207
-#define GL_LINEAR_ATTENUATION 0x1208
-#define GL_QUADRATIC_ATTENUATION 0x1209
-#define GL_COMPILE 0x1300
-#define GL_COMPILE_AND_EXECUTE 0x1301
-#define GL_CLEAR 0x1500
-#define GL_AND 0x1501
-#define GL_AND_REVERSE 0x1502
-#define GL_COPY 0x1503
-#define GL_AND_INVERTED 0x1504
-#define GL_NOOP 0x1505
-#define GL_XOR 0x1506
-#define GL_OR 0x1507
-#define GL_NOR 0x1508
-#define GL_EQUIV 0x1509
-#define GL_INVERT 0x150A
-#define GL_OR_REVERSE 0x150B
-#define GL_COPY_INVERTED 0x150C
-#define GL_OR_INVERTED 0x150D
-#define GL_NAND 0x150E
-#define GL_SET 0x150F
-#define GL_EMISSION 0x1600
-#define GL_SHININESS 0x1601
-#define GL_AMBIENT_AND_DIFFUSE 0x1602
-#define GL_COLOR_INDEXES 0x1603
-#define GL_MODELVIEW 0x1700
-#define GL_PROJECTION 0x1701
-#define GL_TEXTURE 0x1702
-#define GL_COLOR 0x1800
-#define GL_DEPTH 0x1801
-#define GL_STENCIL 0x1802
-#define GL_COLOR_INDEX 0x1900
-#define GL_STENCIL_INDEX 0x1901
-#define GL_DEPTH_COMPONENT 0x1902
-#define GL_RED 0x1903
-#define GL_GREEN 0x1904
-#define GL_BLUE 0x1905
-#define GL_ALPHA 0x1906
-#define GL_RGB 0x1907
-#define GL_RGBA 0x1908
-#define GL_LUMINANCE 0x1909
-#define GL_LUMINANCE_ALPHA 0x190A
-#define GL_BITMAP 0x1A00
-#define GL_POINT 0x1B00
-#define GL_LINE 0x1B01
-#define GL_FILL 0x1B02
-#define GL_RENDER 0x1C00
-#define GL_FEEDBACK 0x1C01
-#define GL_SELECT 0x1C02
-#define GL_FLAT 0x1D00
-#define GL_SMOOTH 0x1D01
-#define GL_KEEP 0x1E00
-#define GL_REPLACE 0x1E01
-#define GL_INCR 0x1E02
-#define GL_DECR 0x1E03
-#define GL_VENDOR 0x1F00
-#define GL_RENDERER 0x1F01
-#define GL_VERSION 0x1F02
-#define GL_EXTENSIONS 0x1F03
-#define GL_S 0x2000
-#define GL_T 0x2001
-#define GL_R 0x2002
-#define GL_Q 0x2003
-#define GL_MODULATE 0x2100
-#define GL_DECAL 0x2101
-#define GL_TEXTURE_ENV_MODE 0x2200
-#define GL_TEXTURE_ENV_COLOR 0x2201
-#define GL_TEXTURE_ENV 0x2300
-#define GL_EYE_LINEAR 0x2400
-#define GL_OBJECT_LINEAR 0x2401
-#define GL_SPHERE_MAP 0x2402
-#define GL_TEXTURE_GEN_MODE 0x2500
-#define GL_OBJECT_PLANE 0x2501
-#define GL_EYE_PLANE 0x2502
-#define GL_NEAREST 0x2600
-#define GL_LINEAR 0x2601
-#define GL_NEAREST_MIPMAP_NEAREST 0x2700
-#define GL_LINEAR_MIPMAP_NEAREST 0x2701
-#define GL_NEAREST_MIPMAP_LINEAR 0x2702
-#define GL_LINEAR_MIPMAP_LINEAR 0x2703
-#define GL_TEXTURE_MAG_FILTER 0x2800
-#define GL_TEXTURE_MIN_FILTER 0x2801
-#define GL_TEXTURE_WRAP_S 0x2802
-#define GL_TEXTURE_WRAP_T 0x2803
-#define GL_CLAMP 0x2900
-#define GL_REPEAT 0x2901
-#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001
-#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002
-#define GL_CLIENT_ALL_ATTRIB_BITS 0xffffffff
-#define GL_POLYGON_OFFSET_FACTOR 0x8038
-#define GL_POLYGON_OFFSET_UNITS 0x2A00
-#define GL_POLYGON_OFFSET_POINT 0x2A01
-#define GL_POLYGON_OFFSET_LINE 0x2A02
-#define GL_POLYGON_OFFSET_FILL 0x8037
-#define GL_ALPHA4 0x803B
-#define GL_ALPHA8 0x803C
-#define GL_ALPHA12 0x803D
-#define GL_ALPHA16 0x803E
-#define GL_LUMINANCE4 0x803F
-#define GL_LUMINANCE8 0x8040
-#define GL_LUMINANCE12 0x8041
-#define GL_LUMINANCE16 0x8042
-#define GL_LUMINANCE4_ALPHA4 0x8043
-#define GL_LUMINANCE6_ALPHA2 0x8044
-#define GL_LUMINANCE8_ALPHA8 0x8045
-#define GL_LUMINANCE12_ALPHA4 0x8046
-#define GL_LUMINANCE12_ALPHA12 0x8047
-#define GL_LUMINANCE16_ALPHA16 0x8048
-#define GL_INTENSITY 0x8049
-#define GL_INTENSITY4 0x804A
-#define GL_INTENSITY8 0x804B
-#define GL_INTENSITY12 0x804C
-#define GL_INTENSITY16 0x804D
-#define GL_R3_G3_B2 0x2A10
-#define GL_RGB4 0x804F
-#define GL_RGB5 0x8050
-#define GL_RGB8 0x8051
-#define GL_RGB10 0x8052
-#define GL_RGB12 0x8053
-#define GL_RGB16 0x8054
-#define GL_RGBA2 0x8055
-#define GL_RGBA4 0x8056
-#define GL_RGB5_A1 0x8057
-#define GL_RGBA8 0x8058
-#define GL_RGB10_A2 0x8059
-#define GL_RGBA12 0x805A
-#define GL_RGBA16 0x805B
-#define GL_TEXTURE_RED_SIZE 0x805C
-#define GL_TEXTURE_GREEN_SIZE 0x805D
-#define GL_TEXTURE_BLUE_SIZE 0x805E
-#define GL_TEXTURE_ALPHA_SIZE 0x805F
-#define GL_TEXTURE_LUMINANCE_SIZE 0x8060
-#define GL_TEXTURE_INTENSITY_SIZE 0x8061
-#define GL_PROXY_TEXTURE_1D 0x8063
-#define GL_PROXY_TEXTURE_2D 0x8064
-#define GL_TEXTURE_PRIORITY 0x8066
-#define GL_TEXTURE_RESIDENT 0x8067
-#define GL_TEXTURE_BINDING_1D 0x8068
-#define GL_TEXTURE_BINDING_2D 0x8069
-#define GL_VERTEX_ARRAY 0x8074
-#define GL_NORMAL_ARRAY 0x8075
-#define GL_COLOR_ARRAY 0x8076
-#define GL_INDEX_ARRAY 0x8077
-#define GL_TEXTURE_COORD_ARRAY 0x8078
-#define GL_EDGE_FLAG_ARRAY 0x8079
-#define GL_VERTEX_ARRAY_SIZE 0x807A
-#define GL_VERTEX_ARRAY_TYPE 0x807B
-#define GL_VERTEX_ARRAY_STRIDE 0x807C
-#define GL_NORMAL_ARRAY_TYPE 0x807E
-#define GL_NORMAL_ARRAY_STRIDE 0x807F
-#define GL_COLOR_ARRAY_SIZE 0x8081
-#define GL_COLOR_ARRAY_TYPE 0x8082
-#define GL_COLOR_ARRAY_STRIDE 0x8083
-#define GL_INDEX_ARRAY_TYPE 0x8085
-#define GL_INDEX_ARRAY_STRIDE 0x8086
-#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088
-#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089
-#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A
-#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C
-#define GL_VERTEX_ARRAY_POINTER 0x808E
-#define GL_NORMAL_ARRAY_POINTER 0x808F
-#define GL_COLOR_ARRAY_POINTER 0x8090
-#define GL_INDEX_ARRAY_POINTER 0x8091
-#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092
-#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093
-#define GL_V2F 0x2A20
-#define GL_V3F 0x2A21
-#define GL_C4UB_V2F 0x2A22
-#define GL_C4UB_V3F 0x2A23
-#define GL_C3F_V3F 0x2A24
-#define GL_N3F_V3F 0x2A25
-#define GL_C4F_N3F_V3F 0x2A26
-#define GL_T2F_V3F 0x2A27
-#define GL_T4F_V4F 0x2A28
-#define GL_T2F_C4UB_V3F 0x2A29
-#define GL_T2F_C3F_V3F 0x2A2A
-#define GL_T2F_N3F_V3F 0x2A2B
-#define GL_T2F_C4F_N3F_V3F 0x2A2C
-#define GL_T4F_C4F_N3F_V4F 0x2A2D
-#define GL_LOGIC_OP GL_INDEX_LOGIC_OP
-#define GL_TEXTURE_COMPONENTS GL_TEXTURE_INTERNAL_FORMAT
-#define GL_COLOR_INDEX1_EXT 0x80E2
-#define GL_COLOR_INDEX2_EXT 0x80E3
-#define GL_COLOR_INDEX4_EXT 0x80E4
-#define GL_COLOR_INDEX8_EXT 0x80E5
-#define GL_COLOR_INDEX12_EXT 0x80E6
-#define GL_COLOR_INDEX16_EXT 0x80E7
-
-GLAPI void GLAPIENTRY glAccum (GLenum op, GLfloat value);
-GLAPI void GLAPIENTRY glAlphaFunc (GLenum func, GLclampf ref);
-GLAPI GLboolean GLAPIENTRY glAreTexturesResident (GLsizei n, const GLuint *textures, GLboolean *residences);
-GLAPI void GLAPIENTRY glArrayElement (GLint i);
-GLAPI void GLAPIENTRY glBegin (GLenum mode);
-GLAPI void GLAPIENTRY glBindTexture (GLenum target, GLuint texture);
-GLAPI void GLAPIENTRY glBitmap (GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
-GLAPI void GLAPIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
-GLAPI void GLAPIENTRY glCallList (GLuint list);
-GLAPI void GLAPIENTRY glCallLists (GLsizei n, GLenum type, const GLvoid *lists);
-GLAPI void GLAPIENTRY glClear (GLbitfield mask);
-GLAPI void GLAPIENTRY glClearAccum (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
-GLAPI void GLAPIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
-GLAPI void GLAPIENTRY glClearDepth (GLclampd depth);
-GLAPI void GLAPIENTRY glClearIndex (GLfloat c);
-GLAPI void GLAPIENTRY glClearStencil (GLint s);
-GLAPI void GLAPIENTRY glClipPlane (GLenum plane, const GLdouble *equation);
-GLAPI void GLAPIENTRY glColor3b (GLbyte red, GLbyte green, GLbyte blue);
-GLAPI void GLAPIENTRY glColor3bv (const GLbyte *v);
-GLAPI void GLAPIENTRY glColor3d (GLdouble red, GLdouble green, GLdouble blue);
-GLAPI void GLAPIENTRY glColor3dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glColor3f (GLfloat red, GLfloat green, GLfloat blue);
-GLAPI void GLAPIENTRY glColor3fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glColor3i (GLint red, GLint green, GLint blue);
-GLAPI void GLAPIENTRY glColor3iv (const GLint *v);
-GLAPI void GLAPIENTRY glColor3s (GLshort red, GLshort green, GLshort blue);
-GLAPI void GLAPIENTRY glColor3sv (const GLshort *v);
-GLAPI void GLAPIENTRY glColor3ub (GLubyte red, GLubyte green, GLubyte blue);
-GLAPI void GLAPIENTRY glColor3ubv (const GLubyte *v);
-GLAPI void GLAPIENTRY glColor3ui (GLuint red, GLuint green, GLuint blue);
-GLAPI void GLAPIENTRY glColor3uiv (const GLuint *v);
-GLAPI void GLAPIENTRY glColor3us (GLushort red, GLushort green, GLushort blue);
-GLAPI void GLAPIENTRY glColor3usv (const GLushort *v);
-GLAPI void GLAPIENTRY glColor4b (GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
-GLAPI void GLAPIENTRY glColor4bv (const GLbyte *v);
-GLAPI void GLAPIENTRY glColor4d (GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
-GLAPI void GLAPIENTRY glColor4dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glColor4f (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
-GLAPI void GLAPIENTRY glColor4fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glColor4i (GLint red, GLint green, GLint blue, GLint alpha);
-GLAPI void GLAPIENTRY glColor4iv (const GLint *v);
-GLAPI void GLAPIENTRY glColor4s (GLshort red, GLshort green, GLshort blue, GLshort alpha);
-GLAPI void GLAPIENTRY glColor4sv (const GLshort *v);
-GLAPI void GLAPIENTRY glColor4ub (GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
-GLAPI void GLAPIENTRY glColor4ubv (const GLubyte *v);
-GLAPI void GLAPIENTRY glColor4ui (GLuint red, GLuint green, GLuint blue, GLuint alpha);
-GLAPI void GLAPIENTRY glColor4uiv (const GLuint *v);
-GLAPI void GLAPIENTRY glColor4us (GLushort red, GLushort green, GLushort blue, GLushort alpha);
-GLAPI void GLAPIENTRY glColor4usv (const GLushort *v);
-GLAPI void GLAPIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
-GLAPI void GLAPIENTRY glColorMaterial (GLenum face, GLenum mode);
-GLAPI void GLAPIENTRY glColorPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
-GLAPI void GLAPIENTRY glCopyPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
-GLAPI void GLAPIENTRY glCopyTexImage1D (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border);
-GLAPI void GLAPIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
-GLAPI void GLAPIENTRY glCopyTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
-GLAPI void GLAPIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-GLAPI void GLAPIENTRY glCullFace (GLenum mode);
-GLAPI void GLAPIENTRY glDeleteLists (GLuint list, GLsizei range);
-GLAPI void GLAPIENTRY glDeleteTextures (GLsizei n, const GLuint *textures);
-GLAPI void GLAPIENTRY glDepthFunc (GLenum func);
-GLAPI void GLAPIENTRY glDepthMask (GLboolean flag);
-GLAPI void GLAPIENTRY glDepthRange (GLclampd zNear, GLclampd zFar);
-GLAPI void GLAPIENTRY glDisable (GLenum cap);
-GLAPI void GLAPIENTRY glDisableClientState (GLenum array);
-GLAPI void GLAPIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
-GLAPI void GLAPIENTRY glDrawBuffer (GLenum mode);
-GLAPI void GLAPIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
-GLAPI void GLAPIENTRY glDrawPixels (GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
-GLAPI void GLAPIENTRY glEdgeFlag (GLboolean flag);
-GLAPI void GLAPIENTRY glEdgeFlagPointer (GLsizei stride, const GLvoid *pointer);
-GLAPI void GLAPIENTRY glEdgeFlagv (const GLboolean *flag);
-GLAPI void GLAPIENTRY glEnable (GLenum cap);
-GLAPI void GLAPIENTRY glEnableClientState (GLenum array);
-GLAPI void GLAPIENTRY glEnd (void);
-GLAPI void GLAPIENTRY glEndList (void);
-GLAPI void GLAPIENTRY glEvalCoord1d (GLdouble u);
-GLAPI void GLAPIENTRY glEvalCoord1dv (const GLdouble *u);
-GLAPI void GLAPIENTRY glEvalCoord1f (GLfloat u);
-GLAPI void GLAPIENTRY glEvalCoord1fv (const GLfloat *u);
-GLAPI void GLAPIENTRY glEvalCoord2d (GLdouble u, GLdouble v);
-GLAPI void GLAPIENTRY glEvalCoord2dv (const GLdouble *u);
-GLAPI void GLAPIENTRY glEvalCoord2f (GLfloat u, GLfloat v);
-GLAPI void GLAPIENTRY glEvalCoord2fv (const GLfloat *u);
-GLAPI void GLAPIENTRY glEvalMesh1 (GLenum mode, GLint i1, GLint i2);
-GLAPI void GLAPIENTRY glEvalMesh2 (GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
-GLAPI void GLAPIENTRY glEvalPoint1 (GLint i);
-GLAPI void GLAPIENTRY glEvalPoint2 (GLint i, GLint j);
-GLAPI void GLAPIENTRY glFeedbackBuffer (GLsizei size, GLenum type, GLfloat *buffer);
-GLAPI void GLAPIENTRY glFinish (void);
-GLAPI void GLAPIENTRY glFlush (void);
-GLAPI void GLAPIENTRY glFogf (GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glFogfv (GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glFogi (GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glFogiv (GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glFrontFace (GLenum mode);
-GLAPI void GLAPIENTRY glFrustum (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
-GLAPI GLuint GLAPIENTRY glGenLists (GLsizei range);
-GLAPI void GLAPIENTRY glGenTextures (GLsizei n, GLuint *textures);
-GLAPI void GLAPIENTRY glGetBooleanv (GLenum pname, GLboolean *params);
-GLAPI void GLAPIENTRY glGetClipPlane (GLenum plane, GLdouble *equation);
-GLAPI void GLAPIENTRY glGetDoublev (GLenum pname, GLdouble *params);
-GLAPI GLenum GLAPIENTRY glGetError (void);
-GLAPI void GLAPIENTRY glGetFloatv (GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetIntegerv (GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glGetLightfv (GLenum light, GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetLightiv (GLenum light, GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glGetMapdv (GLenum target, GLenum query, GLdouble *v);
-GLAPI void GLAPIENTRY glGetMapfv (GLenum target, GLenum query, GLfloat *v);
-GLAPI void GLAPIENTRY glGetMapiv (GLenum target, GLenum query, GLint *v);
-GLAPI void GLAPIENTRY glGetMaterialfv (GLenum face, GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetMaterialiv (GLenum face, GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glGetPixelMapfv (GLenum map, GLfloat *values);
-GLAPI void GLAPIENTRY glGetPixelMapuiv (GLenum map, GLuint *values);
-GLAPI void GLAPIENTRY glGetPixelMapusv (GLenum map, GLushort *values);
-GLAPI void GLAPIENTRY glGetPointerv (GLenum pname, GLvoid* *params);
-GLAPI void GLAPIENTRY glGetPolygonStipple (GLubyte *mask);
-GLAPI const GLubyte * GLAPIENTRY glGetString (GLenum name);
-GLAPI void GLAPIENTRY glGetTexEnvfv (GLenum target, GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetTexEnviv (GLenum target, GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glGetTexGendv (GLenum coord, GLenum pname, GLdouble *params);
-GLAPI void GLAPIENTRY glGetTexGenfv (GLenum coord, GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetTexGeniv (GLenum coord, GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glGetTexImage (GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
-GLAPI void GLAPIENTRY glGetTexLevelParameterfv (GLenum target, GLint level, GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetTexLevelParameteriv (GLenum target, GLint level, GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat *params);
-GLAPI void GLAPIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint *params);
-GLAPI void GLAPIENTRY glHint (GLenum target, GLenum mode);
-GLAPI void GLAPIENTRY glIndexMask (GLuint mask);
-GLAPI void GLAPIENTRY glIndexPointer (GLenum type, GLsizei stride, const GLvoid *pointer);
-GLAPI void GLAPIENTRY glIndexd (GLdouble c);
-GLAPI void GLAPIENTRY glIndexdv (const GLdouble *c);
-GLAPI void GLAPIENTRY glIndexf (GLfloat c);
-GLAPI void GLAPIENTRY glIndexfv (const GLfloat *c);
-GLAPI void GLAPIENTRY glIndexi (GLint c);
-GLAPI void GLAPIENTRY glIndexiv (const GLint *c);
-GLAPI void GLAPIENTRY glIndexs (GLshort c);
-GLAPI void GLAPIENTRY glIndexsv (const GLshort *c);
-GLAPI void GLAPIENTRY glIndexub (GLubyte c);
-GLAPI void GLAPIENTRY glIndexubv (const GLubyte *c);
-GLAPI void GLAPIENTRY glInitNames (void);
-GLAPI void GLAPIENTRY glInterleavedArrays (GLenum format, GLsizei stride, const GLvoid *pointer);
-GLAPI GLboolean GLAPIENTRY glIsEnabled (GLenum cap);
-GLAPI GLboolean GLAPIENTRY glIsList (GLuint list);
-GLAPI GLboolean GLAPIENTRY glIsTexture (GLuint texture);
-GLAPI void GLAPIENTRY glLightModelf (GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glLightModelfv (GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glLightModeli (GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glLightModeliv (GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glLightf (GLenum light, GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glLightfv (GLenum light, GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glLighti (GLenum light, GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glLightiv (GLenum light, GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glLineStipple (GLint factor, GLushort pattern);
-GLAPI void GLAPIENTRY glLineWidth (GLfloat width);
-GLAPI void GLAPIENTRY glListBase (GLuint base);
-GLAPI void GLAPIENTRY glLoadIdentity (void);
-GLAPI void GLAPIENTRY glLoadMatrixd (const GLdouble *m);
-GLAPI void GLAPIENTRY glLoadMatrixf (const GLfloat *m);
-GLAPI void GLAPIENTRY glLoadName (GLuint name);
-GLAPI void GLAPIENTRY glLogicOp (GLenum opcode);
-GLAPI void GLAPIENTRY glMap1d (GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
-GLAPI void GLAPIENTRY glMap1f (GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
-GLAPI void GLAPIENTRY glMap2d (GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
-GLAPI void GLAPIENTRY glMap2f (GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
-GLAPI void GLAPIENTRY glMapGrid1d (GLint un, GLdouble u1, GLdouble u2);
-GLAPI void GLAPIENTRY glMapGrid1f (GLint un, GLfloat u1, GLfloat u2);
-GLAPI void GLAPIENTRY glMapGrid2d (GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
-GLAPI void GLAPIENTRY glMapGrid2f (GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
-GLAPI void GLAPIENTRY glMaterialf (GLenum face, GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glMaterialfv (GLenum face, GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glMateriali (GLenum face, GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glMaterialiv (GLenum face, GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glMatrixMode (GLenum mode);
-GLAPI void GLAPIENTRY glMultMatrixd (const GLdouble *m);
-GLAPI void GLAPIENTRY glMultMatrixf (const GLfloat *m);
-GLAPI void GLAPIENTRY glNewList (GLuint list, GLenum mode);
-GLAPI void GLAPIENTRY glNormal3b (GLbyte nx, GLbyte ny, GLbyte nz);
-GLAPI void GLAPIENTRY glNormal3bv (const GLbyte *v);
-GLAPI void GLAPIENTRY glNormal3d (GLdouble nx, GLdouble ny, GLdouble nz);
-GLAPI void GLAPIENTRY glNormal3dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glNormal3f (GLfloat nx, GLfloat ny, GLfloat nz);
-GLAPI void GLAPIENTRY glNormal3fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glNormal3i (GLint nx, GLint ny, GLint nz);
-GLAPI void GLAPIENTRY glNormal3iv (const GLint *v);
-GLAPI void GLAPIENTRY glNormal3s (GLshort nx, GLshort ny, GLshort nz);
-GLAPI void GLAPIENTRY glNormal3sv (const GLshort *v);
-GLAPI void GLAPIENTRY glNormalPointer (GLenum type, GLsizei stride, const GLvoid *pointer);
-GLAPI void GLAPIENTRY glOrtho (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
-GLAPI void GLAPIENTRY glPassThrough (GLfloat token);
-GLAPI void GLAPIENTRY glPixelMapfv (GLenum map, GLsizei mapsize, const GLfloat *values);
-GLAPI void GLAPIENTRY glPixelMapuiv (GLenum map, GLsizei mapsize, const GLuint *values);
-GLAPI void GLAPIENTRY glPixelMapusv (GLenum map, GLsizei mapsize, const GLushort *values);
-GLAPI void GLAPIENTRY glPixelStoref (GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glPixelStorei (GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glPixelTransferf (GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glPixelTransferi (GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glPixelZoom (GLfloat xfactor, GLfloat yfactor);
-GLAPI void GLAPIENTRY glPointSize (GLfloat size);
-GLAPI void GLAPIENTRY glPolygonMode (GLenum face, GLenum mode);
-GLAPI void GLAPIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
-GLAPI void GLAPIENTRY glPolygonStipple (const GLubyte *mask);
-GLAPI void GLAPIENTRY glPopAttrib (void);
-GLAPI void GLAPIENTRY glPopClientAttrib (void);
-GLAPI void GLAPIENTRY glPopMatrix (void);
-GLAPI void GLAPIENTRY glPopName (void);
-GLAPI void GLAPIENTRY glPrioritizeTextures (GLsizei n, const GLuint *textures, const GLclampf *priorities);
-GLAPI void GLAPIENTRY glPushAttrib (GLbitfield mask);
-GLAPI void GLAPIENTRY glPushClientAttrib (GLbitfield mask);
-GLAPI void GLAPIENTRY glPushMatrix (void);
-GLAPI void GLAPIENTRY glPushName (GLuint name);
-GLAPI void GLAPIENTRY glRasterPos2d (GLdouble x, GLdouble y);
-GLAPI void GLAPIENTRY glRasterPos2dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glRasterPos2f (GLfloat x, GLfloat y);
-GLAPI void GLAPIENTRY glRasterPos2fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glRasterPos2i (GLint x, GLint y);
-GLAPI void GLAPIENTRY glRasterPos2iv (const GLint *v);
-GLAPI void GLAPIENTRY glRasterPos2s (GLshort x, GLshort y);
-GLAPI void GLAPIENTRY glRasterPos2sv (const GLshort *v);
-GLAPI void GLAPIENTRY glRasterPos3d (GLdouble x, GLdouble y, GLdouble z);
-GLAPI void GLAPIENTRY glRasterPos3dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glRasterPos3f (GLfloat x, GLfloat y, GLfloat z);
-GLAPI void GLAPIENTRY glRasterPos3fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glRasterPos3i (GLint x, GLint y, GLint z);
-GLAPI void GLAPIENTRY glRasterPos3iv (const GLint *v);
-GLAPI void GLAPIENTRY glRasterPos3s (GLshort x, GLshort y, GLshort z);
-GLAPI void GLAPIENTRY glRasterPos3sv (const GLshort *v);
-GLAPI void GLAPIENTRY glRasterPos4d (GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-GLAPI void GLAPIENTRY glRasterPos4dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glRasterPos4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-GLAPI void GLAPIENTRY glRasterPos4fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glRasterPos4i (GLint x, GLint y, GLint z, GLint w);
-GLAPI void GLAPIENTRY glRasterPos4iv (const GLint *v);
-GLAPI void GLAPIENTRY glRasterPos4s (GLshort x, GLshort y, GLshort z, GLshort w);
-GLAPI void GLAPIENTRY glRasterPos4sv (const GLshort *v);
-GLAPI void GLAPIENTRY glReadBuffer (GLenum mode);
-GLAPI void GLAPIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
-GLAPI void GLAPIENTRY glRectd (GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
-GLAPI void GLAPIENTRY glRectdv (const GLdouble *v1, const GLdouble *v2);
-GLAPI void GLAPIENTRY glRectf (GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
-GLAPI void GLAPIENTRY glRectfv (const GLfloat *v1, const GLfloat *v2);
-GLAPI void GLAPIENTRY glRecti (GLint x1, GLint y1, GLint x2, GLint y2);
-GLAPI void GLAPIENTRY glRectiv (const GLint *v1, const GLint *v2);
-GLAPI void GLAPIENTRY glRects (GLshort x1, GLshort y1, GLshort x2, GLshort y2);
-GLAPI void GLAPIENTRY glRectsv (const GLshort *v1, const GLshort *v2);
-GLAPI GLint GLAPIENTRY glRenderMode (GLenum mode);
-GLAPI void GLAPIENTRY glRotated (GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
-GLAPI void GLAPIENTRY glRotatef (GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
-GLAPI void GLAPIENTRY glScaled (GLdouble x, GLdouble y, GLdouble z);
-GLAPI void GLAPIENTRY glScalef (GLfloat x, GLfloat y, GLfloat z);
-GLAPI void GLAPIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
-GLAPI void GLAPIENTRY glSelectBuffer (GLsizei size, GLuint *buffer);
-GLAPI void GLAPIENTRY glShadeModel (GLenum mode);
-GLAPI void GLAPIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
-GLAPI void GLAPIENTRY glStencilMask (GLuint mask);
-GLAPI void GLAPIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
-GLAPI void GLAPIENTRY glTexCoord1d (GLdouble s);
-GLAPI void GLAPIENTRY glTexCoord1dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glTexCoord1f (GLfloat s);
-GLAPI void GLAPIENTRY glTexCoord1fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glTexCoord1i (GLint s);
-GLAPI void GLAPIENTRY glTexCoord1iv (const GLint *v);
-GLAPI void GLAPIENTRY glTexCoord1s (GLshort s);
-GLAPI void GLAPIENTRY glTexCoord1sv (const GLshort *v);
-GLAPI void GLAPIENTRY glTexCoord2d (GLdouble s, GLdouble t);
-GLAPI void GLAPIENTRY glTexCoord2dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glTexCoord2f (GLfloat s, GLfloat t);
-GLAPI void GLAPIENTRY glTexCoord2fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glTexCoord2i (GLint s, GLint t);
-GLAPI void GLAPIENTRY glTexCoord2iv (const GLint *v);
-GLAPI void GLAPIENTRY glTexCoord2s (GLshort s, GLshort t);
-GLAPI void GLAPIENTRY glTexCoord2sv (const GLshort *v);
-GLAPI void GLAPIENTRY glTexCoord3d (GLdouble s, GLdouble t, GLdouble r);
-GLAPI void GLAPIENTRY glTexCoord3dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glTexCoord3f (GLfloat s, GLfloat t, GLfloat r);
-GLAPI void GLAPIENTRY glTexCoord3fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glTexCoord3i (GLint s, GLint t, GLint r);
-GLAPI void GLAPIENTRY glTexCoord3iv (const GLint *v);
-GLAPI void GLAPIENTRY glTexCoord3s (GLshort s, GLshort t, GLshort r);
-GLAPI void GLAPIENTRY glTexCoord3sv (const GLshort *v);
-GLAPI void GLAPIENTRY glTexCoord4d (GLdouble s, GLdouble t, GLdouble r, GLdouble q);
-GLAPI void GLAPIENTRY glTexCoord4dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glTexCoord4f (GLfloat s, GLfloat t, GLfloat r, GLfloat q);
-GLAPI void GLAPIENTRY glTexCoord4fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glTexCoord4i (GLint s, GLint t, GLint r, GLint q);
-GLAPI void GLAPIENTRY glTexCoord4iv (const GLint *v);
-GLAPI void GLAPIENTRY glTexCoord4s (GLshort s, GLshort t, GLshort r, GLshort q);
-GLAPI void GLAPIENTRY glTexCoord4sv (const GLshort *v);
-GLAPI void GLAPIENTRY glTexCoordPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
-GLAPI void GLAPIENTRY glTexEnvf (GLenum target, GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glTexEnvfv (GLenum target, GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glTexEnvi (GLenum target, GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glTexEnviv (GLenum target, GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glTexGend (GLenum coord, GLenum pname, GLdouble param);
-GLAPI void GLAPIENTRY glTexGendv (GLenum coord, GLenum pname, const GLdouble *params);
-GLAPI void GLAPIENTRY glTexGenf (GLenum coord, GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glTexGenfv (GLenum coord, GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glTexGeni (GLenum coord, GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glTexGeniv (GLenum coord, GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glTexImage1D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
-GLAPI void GLAPIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
-GLAPI void GLAPIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
-GLAPI void GLAPIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat *params);
-GLAPI void GLAPIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
-GLAPI void GLAPIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint *params);
-GLAPI void GLAPIENTRY glTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
-GLAPI void GLAPIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
-GLAPI void GLAPIENTRY glTranslated (GLdouble x, GLdouble y, GLdouble z);
-GLAPI void GLAPIENTRY glTranslatef (GLfloat x, GLfloat y, GLfloat z);
-GLAPI void GLAPIENTRY glVertex2d (GLdouble x, GLdouble y);
-GLAPI void GLAPIENTRY glVertex2dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glVertex2f (GLfloat x, GLfloat y);
-GLAPI void GLAPIENTRY glVertex2fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glVertex2i (GLint x, GLint y);
-GLAPI void GLAPIENTRY glVertex2iv (const GLint *v);
-GLAPI void GLAPIENTRY glVertex2s (GLshort x, GLshort y);
-GLAPI void GLAPIENTRY glVertex2sv (const GLshort *v);
-GLAPI void GLAPIENTRY glVertex3d (GLdouble x, GLdouble y, GLdouble z);
-GLAPI void GLAPIENTRY glVertex3dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glVertex3f (GLfloat x, GLfloat y, GLfloat z);
-GLAPI void GLAPIENTRY glVertex3fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glVertex3i (GLint x, GLint y, GLint z);
-GLAPI void GLAPIENTRY glVertex3iv (const GLint *v);
-GLAPI void GLAPIENTRY glVertex3s (GLshort x, GLshort y, GLshort z);
-GLAPI void GLAPIENTRY glVertex3sv (const GLshort *v);
-GLAPI void GLAPIENTRY glVertex4d (GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-GLAPI void GLAPIENTRY glVertex4dv (const GLdouble *v);
-GLAPI void GLAPIENTRY glVertex4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-GLAPI void GLAPIENTRY glVertex4fv (const GLfloat *v);
-GLAPI void GLAPIENTRY glVertex4i (GLint x, GLint y, GLint z, GLint w);
-GLAPI void GLAPIENTRY glVertex4iv (const GLint *v);
-GLAPI void GLAPIENTRY glVertex4s (GLshort x, GLshort y, GLshort z, GLshort w);
-GLAPI void GLAPIENTRY glVertex4sv (const GLshort *v);
-GLAPI void GLAPIENTRY glVertexPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
-GLAPI void GLAPIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
-
-#define GLEW_VERSION_1_1 GLEW_GET_VAR(__GLEW_VERSION_1_1)
-
-#endif /* GL_VERSION_1_1 */
-
-/* ---------------------------------- GLU ---------------------------------- */
-
-/* this is where we can safely include GLU */
-#if defined(__APPLE__) && defined(__MACH__)
-#include <OpenGL/glu.h>
-#else
-#include <GL/glu.h>
-#endif
-
-/* ----------------------------- GL_VERSION_1_2 ---------------------------- */
-
-#ifndef GL_VERSION_1_2
-#define GL_VERSION_1_2 1
-
-#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12
-#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13
-#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22
-#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23
-#define GL_UNSIGNED_BYTE_3_3_2 0x8032
-#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
-#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
-#define GL_UNSIGNED_INT_8_8_8_8 0x8035
-#define GL_UNSIGNED_INT_10_10_10_2 0x8036
-#define GL_RESCALE_NORMAL 0x803A
-#define GL_TEXTURE_BINDING_3D 0x806A
-#define GL_PACK_SKIP_IMAGES 0x806B
-#define GL_PACK_IMAGE_HEIGHT 0x806C
-#define GL_UNPACK_SKIP_IMAGES 0x806D
-#define GL_UNPACK_IMAGE_HEIGHT 0x806E
-#define GL_TEXTURE_3D 0x806F
-#define GL_PROXY_TEXTURE_3D 0x8070
-#define GL_TEXTURE_DEPTH 0x8071
-#define GL_TEXTURE_WRAP_R 0x8072
-#define GL_MAX_3D_TEXTURE_SIZE 0x8073
-#define GL_BGR 0x80E0
-#define GL_BGRA 0x80E1
-#define GL_MAX_ELEMENTS_VERTICES 0x80E8
-#define GL_MAX_ELEMENTS_INDICES 0x80E9
-#define GL_CLAMP_TO_EDGE 0x812F
-#define GL_TEXTURE_MIN_LOD 0x813A
-#define GL_TEXTURE_MAX_LOD 0x813B
-#define GL_TEXTURE_BASE_LEVEL 0x813C
-#define GL_TEXTURE_MAX_LEVEL 0x813D
-#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8
-#define GL_SINGLE_COLOR 0x81F9
-#define GL_SEPARATE_SPECULAR_COLOR 0x81FA
-#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362
-#define GL_UNSIGNED_SHORT_5_6_5 0x8363
-#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364
-#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365
-#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
-#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367
-#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
-#define GL_ALIASED_POINT_SIZE_RANGE 0x846D
-#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
-
-typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
-typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
-typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
-
-#define glCopyTexSubImage3D GLEW_GET_FUN(__glewCopyTexSubImage3D)
-#define glDrawRangeElements GLEW_GET_FUN(__glewDrawRangeElements)
-#define glTexImage3D GLEW_GET_FUN(__glewTexImage3D)
-#define glTexSubImage3D GLEW_GET_FUN(__glewTexSubImage3D)
-
-#define GLEW_VERSION_1_2 GLEW_GET_VAR(__GLEW_VERSION_1_2)
-
-#endif /* GL_VERSION_1_2 */
-
-/* ----------------------------- GL_VERSION_1_3 ---------------------------- */
-
-#ifndef GL_VERSION_1_3
-#define GL_VERSION_1_3 1
-
-#define GL_MULTISAMPLE 0x809D
-#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
-#define GL_SAMPLE_ALPHA_TO_ONE 0x809F
-#define GL_SAMPLE_COVERAGE 0x80A0
-#define GL_SAMPLE_BUFFERS 0x80A8
-#define GL_SAMPLES 0x80A9
-#define GL_SAMPLE_COVERAGE_VALUE 0x80AA
-#define GL_SAMPLE_COVERAGE_INVERT 0x80AB
-#define GL_CLAMP_TO_BORDER 0x812D
-#define GL_TEXTURE0 0x84C0
-#define GL_TEXTURE1 0x84C1
-#define GL_TEXTURE2 0x84C2
-#define GL_TEXTURE3 0x84C3
-#define GL_TEXTURE4 0x84C4
-#define GL_TEXTURE5 0x84C5
-#define GL_TEXTURE6 0x84C6
-#define GL_TEXTURE7 0x84C7
-#define GL_TEXTURE8 0x84C8
-#define GL_TEXTURE9 0x84C9
-#define GL_TEXTURE10 0x84CA
-#define GL_TEXTURE11 0x84CB
-#define GL_TEXTURE12 0x84CC
-#define GL_TEXTURE13 0x84CD
-#define GL_TEXTURE14 0x84CE
-#define GL_TEXTURE15 0x84CF
-#define GL_TEXTURE16 0x84D0
-#define GL_TEXTURE17 0x84D1
-#define GL_TEXTURE18 0x84D2
-#define GL_TEXTURE19 0x84D3
-#define GL_TEXTURE20 0x84D4
-#define GL_TEXTURE21 0x84D5
-#define GL_TEXTURE22 0x84D6
-#define GL_TEXTURE23 0x84D7
-#define GL_TEXTURE24 0x84D8
-#define GL_TEXTURE25 0x84D9
-#define GL_TEXTURE26 0x84DA
-#define GL_TEXTURE27 0x84DB
-#define GL_TEXTURE28 0x84DC
-#define GL_TEXTURE29 0x84DD
-#define GL_TEXTURE30 0x84DE
-#define GL_TEXTURE31 0x84DF
-#define GL_ACTIVE_TEXTURE 0x84E0
-#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1
-#define GL_MAX_TEXTURE_UNITS 0x84E2
-#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3
-#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4
-#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5
-#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6
-#define GL_SUBTRACT 0x84E7
-#define GL_COMPRESSED_ALPHA 0x84E9
-#define GL_COMPRESSED_LUMINANCE 0x84EA
-#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB
-#define GL_COMPRESSED_INTENSITY 0x84EC
-#define GL_COMPRESSED_RGB 0x84ED
-#define GL_COMPRESSED_RGBA 0x84EE
-#define GL_TEXTURE_COMPRESSION_HINT 0x84EF
-#define GL_NORMAL_MAP 0x8511
-#define GL_REFLECTION_MAP 0x8512
-#define GL_TEXTURE_CUBE_MAP 0x8513
-#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
-#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B
-#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
-#define GL_COMBINE 0x8570
-#define GL_COMBINE_RGB 0x8571
-#define GL_COMBINE_ALPHA 0x8572
-#define GL_RGB_SCALE 0x8573
-#define GL_ADD_SIGNED 0x8574
-#define GL_INTERPOLATE 0x8575
-#define GL_CONSTANT 0x8576
-#define GL_PRIMARY_COLOR 0x8577
-#define GL_PREVIOUS 0x8578
-#define GL_SOURCE0_RGB 0x8580
-#define GL_SOURCE1_RGB 0x8581
-#define GL_SOURCE2_RGB 0x8582
-#define GL_SOURCE0_ALPHA 0x8588
-#define GL_SOURCE1_ALPHA 0x8589
-#define GL_SOURCE2_ALPHA 0x858A
-#define GL_OPERAND0_RGB 0x8590
-#define GL_OPERAND1_RGB 0x8591
-#define GL_OPERAND2_RGB 0x8592
-#define GL_OPERAND0_ALPHA 0x8598
-#define GL_OPERAND1_ALPHA 0x8599
-#define GL_OPERAND2_ALPHA 0x859A
-#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0
-#define GL_TEXTURE_COMPRESSED 0x86A1
-#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
-#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
-#define GL_DOT3_RGB 0x86AE
-#define GL_DOT3_RGBA 0x86AF
-#define GL_MULTISAMPLE_BIT 0x20000000
-
-typedef void (GLAPIENTRY * PFNGLACTIVETEXTUREPROC) (GLenum texture);
-typedef void (GLAPIENTRY * PFNGLCLIENTACTIVETEXTUREPROC) (GLenum texture);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
-typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint lod, GLvoid *img);
-typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXDPROC) (const GLdouble m[16]);
-typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXFPROC) (const GLfloat m[16]);
-typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXDPROC) (const GLdouble m[16]);
-typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXFPROC) (const GLfloat m[16]);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DPROC) (GLenum target, GLdouble s);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DVPROC) (GLenum target, const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FPROC) (GLenum target, GLfloat s);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FVPROC) (GLenum target, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IPROC) (GLenum target, GLint s);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IVPROC) (GLenum target, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SPROC) (GLenum target, GLshort s);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SVPROC) (GLenum target, const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DPROC) (GLenum target, GLdouble s, GLdouble t);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DVPROC) (GLenum target, const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FVPROC) (GLenum target, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IPROC) (GLenum target, GLint s, GLint t);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IVPROC) (GLenum target, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SPROC) (GLenum target, GLshort s, GLshort t);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SVPROC) (GLenum target, const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DVPROC) (GLenum target, const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FVPROC) (GLenum target, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IPROC) (GLenum target, GLint s, GLint t, GLint r);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IVPROC) (GLenum target, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SVPROC) (GLenum target, const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DVPROC) (GLenum target, const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FVPROC) (GLenum target, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IVPROC) (GLenum target, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SVPROC) (GLenum target, const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert);
-
-#define glActiveTexture GLEW_GET_FUN(__glewActiveTexture)
-#define glClientActiveTexture GLEW_GET_FUN(__glewClientActiveTexture)
-#define glCompressedTexImage1D GLEW_GET_FUN(__glewCompressedTexImage1D)
-#define glCompressedTexImage2D GLEW_GET_FUN(__glewCompressedTexImage2D)
-#define glCompressedTexImage3D GLEW_GET_FUN(__glewCompressedTexImage3D)
-#define glCompressedTexSubImage1D GLEW_GET_FUN(__glewCompressedTexSubImage1D)
-#define glCompressedTexSubImage2D GLEW_GET_FUN(__glewCompressedTexSubImage2D)
-#define glCompressedTexSubImage3D GLEW_GET_FUN(__glewCompressedTexSubImage3D)
-#define glGetCompressedTexImage GLEW_GET_FUN(__glewGetCompressedTexImage)
-#define glLoadTransposeMatrixd GLEW_GET_FUN(__glewLoadTransposeMatrixd)
-#define glLoadTransposeMatrixf GLEW_GET_FUN(__glewLoadTransposeMatrixf)
-#define glMultTransposeMatrixd GLEW_GET_FUN(__glewMultTransposeMatrixd)
-#define glMultTransposeMatrixf GLEW_GET_FUN(__glewMultTransposeMatrixf)
-#define glMultiTexCoord1d GLEW_GET_FUN(__glewMultiTexCoord1d)
-#define glMultiTexCoord1dv GLEW_GET_FUN(__glewMultiTexCoord1dv)
-#define glMultiTexCoord1f GLEW_GET_FUN(__glewMultiTexCoord1f)
-#define glMultiTexCoord1fv GLEW_GET_FUN(__glewMultiTexCoord1fv)
-#define glMultiTexCoord1i GLEW_GET_FUN(__glewMultiTexCoord1i)
-#define glMultiTexCoord1iv GLEW_GET_FUN(__glewMultiTexCoord1iv)
-#define glMultiTexCoord1s GLEW_GET_FUN(__glewMultiTexCoord1s)
-#define glMultiTexCoord1sv GLEW_GET_FUN(__glewMultiTexCoord1sv)
-#define glMultiTexCoord2d GLEW_GET_FUN(__glewMultiTexCoord2d)
-#define glMultiTexCoord2dv GLEW_GET_FUN(__glewMultiTexCoord2dv)
-#define glMultiTexCoord2f GLEW_GET_FUN(__glewMultiTexCoord2f)
-#define glMultiTexCoord2fv GLEW_GET_FUN(__glewMultiTexCoord2fv)
-#define glMultiTexCoord2i GLEW_GET_FUN(__glewMultiTexCoord2i)
-#define glMultiTexCoord2iv GLEW_GET_FUN(__glewMultiTexCoord2iv)
-#define glMultiTexCoord2s GLEW_GET_FUN(__glewMultiTexCoord2s)
-#define glMultiTexCoord2sv GLEW_GET_FUN(__glewMultiTexCoord2sv)
-#define glMultiTexCoord3d GLEW_GET_FUN(__glewMultiTexCoord3d)
-#define glMultiTexCoord3dv GLEW_GET_FUN(__glewMultiTexCoord3dv)
-#define glMultiTexCoord3f GLEW_GET_FUN(__glewMultiTexCoord3f)
-#define glMultiTexCoord3fv GLEW_GET_FUN(__glewMultiTexCoord3fv)
-#define glMultiTexCoord3i GLEW_GET_FUN(__glewMultiTexCoord3i)
-#define glMultiTexCoord3iv GLEW_GET_FUN(__glewMultiTexCoord3iv)
-#define glMultiTexCoord3s GLEW_GET_FUN(__glewMultiTexCoord3s)
-#define glMultiTexCoord3sv GLEW_GET_FUN(__glewMultiTexCoord3sv)
-#define glMultiTexCoord4d GLEW_GET_FUN(__glewMultiTexCoord4d)
-#define glMultiTexCoord4dv GLEW_GET_FUN(__glewMultiTexCoord4dv)
-#define glMultiTexCoord4f GLEW_GET_FUN(__glewMultiTexCoord4f)
-#define glMultiTexCoord4fv GLEW_GET_FUN(__glewMultiTexCoord4fv)
-#define glMultiTexCoord4i GLEW_GET_FUN(__glewMultiTexCoord4i)
-#define glMultiTexCoord4iv GLEW_GET_FUN(__glewMultiTexCoord4iv)
-#define glMultiTexCoord4s GLEW_GET_FUN(__glewMultiTexCoord4s)
-#define glMultiTexCoord4sv GLEW_GET_FUN(__glewMultiTexCoord4sv)
-#define glSampleCoverage GLEW_GET_FUN(__glewSampleCoverage)
-
-#define GLEW_VERSION_1_3 GLEW_GET_VAR(__GLEW_VERSION_1_3)
-
-#endif /* GL_VERSION_1_3 */
-
-/* ----------------------------- GL_VERSION_1_4 ---------------------------- */
-
-#ifndef GL_VERSION_1_4
-#define GL_VERSION_1_4 1
-
-#define GL_BLEND_DST_RGB 0x80C8
-#define GL_BLEND_SRC_RGB 0x80C9
-#define GL_BLEND_DST_ALPHA 0x80CA
-#define GL_BLEND_SRC_ALPHA 0x80CB
-#define GL_POINT_SIZE_MIN 0x8126
-#define GL_POINT_SIZE_MAX 0x8127
-#define GL_POINT_FADE_THRESHOLD_SIZE 0x8128
-#define GL_POINT_DISTANCE_ATTENUATION 0x8129
-#define GL_GENERATE_MIPMAP 0x8191
-#define GL_GENERATE_MIPMAP_HINT 0x8192
-#define GL_DEPTH_COMPONENT16 0x81A5
-#define GL_DEPTH_COMPONENT24 0x81A6
-#define GL_DEPTH_COMPONENT32 0x81A7
-#define GL_MIRRORED_REPEAT 0x8370
-#define GL_FOG_COORDINATE_SOURCE 0x8450
-#define GL_FOG_COORDINATE 0x8451
-#define GL_FRAGMENT_DEPTH 0x8452
-#define GL_CURRENT_FOG_COORDINATE 0x8453
-#define GL_FOG_COORDINATE_ARRAY_TYPE 0x8454
-#define GL_FOG_COORDINATE_ARRAY_STRIDE 0x8455
-#define GL_FOG_COORDINATE_ARRAY_POINTER 0x8456
-#define GL_FOG_COORDINATE_ARRAY 0x8457
-#define GL_COLOR_SUM 0x8458
-#define GL_CURRENT_SECONDARY_COLOR 0x8459
-#define GL_SECONDARY_COLOR_ARRAY_SIZE 0x845A
-#define GL_SECONDARY_COLOR_ARRAY_TYPE 0x845B
-#define GL_SECONDARY_COLOR_ARRAY_STRIDE 0x845C
-#define GL_SECONDARY_COLOR_ARRAY_POINTER 0x845D
-#define GL_SECONDARY_COLOR_ARRAY 0x845E
-#define GL_MAX_TEXTURE_LOD_BIAS 0x84FD
-#define GL_TEXTURE_FILTER_CONTROL 0x8500
-#define GL_TEXTURE_LOD_BIAS 0x8501
-#define GL_INCR_WRAP 0x8507
-#define GL_DECR_WRAP 0x8508
-#define GL_TEXTURE_DEPTH_SIZE 0x884A
-#define GL_DEPTH_TEXTURE_MODE 0x884B
-#define GL_TEXTURE_COMPARE_MODE 0x884C
-#define GL_TEXTURE_COMPARE_FUNC 0x884D
-#define GL_COMPARE_R_TO_TEXTURE 0x884E
-
-typedef void (GLAPIENTRY * PFNGLBLENDCOLORPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONPROC) (GLenum mode);
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDPOINTERPROC) (GLenum type, GLsizei stride, const GLvoid *pointer);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDDPROC) (GLdouble coord);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDDVPROC) (const GLdouble *coord);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDFPROC) (GLfloat coord);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDFVPROC) (const GLfloat *coord);
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSPROC) (GLenum mode, GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount);
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFPROC) (GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFVPROC) (GLenum pname, const GLfloat *params);
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERIPROC) (GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERIVPROC) (GLenum pname, const GLint *params);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BPROC) (GLbyte red, GLbyte green, GLbyte blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BVPROC) (const GLbyte *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DPROC) (GLdouble red, GLdouble green, GLdouble blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DVPROC) (const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FPROC) (GLfloat red, GLfloat green, GLfloat blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FVPROC) (const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IPROC) (GLint red, GLint green, GLint blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IVPROC) (const GLint *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SPROC) (GLshort red, GLshort green, GLshort blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SVPROC) (const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBPROC) (GLubyte red, GLubyte green, GLubyte blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBVPROC) (const GLubyte *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIPROC) (GLuint red, GLuint green, GLuint blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIVPROC) (const GLuint *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USPROC) (GLushort red, GLushort green, GLushort blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USVPROC) (const GLushort *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORPOINTERPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DPROC) (GLdouble x, GLdouble y);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DVPROC) (const GLdouble *p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FPROC) (GLfloat x, GLfloat y);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FVPROC) (const GLfloat *p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IPROC) (GLint x, GLint y);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IVPROC) (const GLint *p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SPROC) (GLshort x, GLshort y);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SVPROC) (const GLshort *p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DPROC) (GLdouble x, GLdouble y, GLdouble z);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DVPROC) (const GLdouble *p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FPROC) (GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FVPROC) (const GLfloat *p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IPROC) (GLint x, GLint y, GLint z);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IVPROC) (const GLint *p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SPROC) (GLshort x, GLshort y, GLshort z);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SVPROC) (const GLshort *p);
-
-#define glBlendColor GLEW_GET_FUN(__glewBlendColor)
-#define glBlendEquation GLEW_GET_FUN(__glewBlendEquation)
-#define glBlendFuncSeparate GLEW_GET_FUN(__glewBlendFuncSeparate)
-#define glFogCoordPointer GLEW_GET_FUN(__glewFogCoordPointer)
-#define glFogCoordd GLEW_GET_FUN(__glewFogCoordd)
-#define glFogCoorddv GLEW_GET_FUN(__glewFogCoorddv)
-#define glFogCoordf GLEW_GET_FUN(__glewFogCoordf)
-#define glFogCoordfv GLEW_GET_FUN(__glewFogCoordfv)
-#define glMultiDrawArrays GLEW_GET_FUN(__glewMultiDrawArrays)
-#define glMultiDrawElements GLEW_GET_FUN(__glewMultiDrawElements)
-#define glPointParameterf GLEW_GET_FUN(__glewPointParameterf)
-#define glPointParameterfv GLEW_GET_FUN(__glewPointParameterfv)
-#define glPointParameteri GLEW_GET_FUN(__glewPointParameteri)
-#define glPointParameteriv GLEW_GET_FUN(__glewPointParameteriv)
-#define glSecondaryColor3b GLEW_GET_FUN(__glewSecondaryColor3b)
-#define glSecondaryColor3bv GLEW_GET_FUN(__glewSecondaryColor3bv)
-#define glSecondaryColor3d GLEW_GET_FUN(__glewSecondaryColor3d)
-#define glSecondaryColor3dv GLEW_GET_FUN(__glewSecondaryColor3dv)
-#define glSecondaryColor3f GLEW_GET_FUN(__glewSecondaryColor3f)
-#define glSecondaryColor3fv GLEW_GET_FUN(__glewSecondaryColor3fv)
-#define glSecondaryColor3i GLEW_GET_FUN(__glewSecondaryColor3i)
-#define glSecondaryColor3iv GLEW_GET_FUN(__glewSecondaryColor3iv)
-#define glSecondaryColor3s GLEW_GET_FUN(__glewSecondaryColor3s)
-#define glSecondaryColor3sv GLEW_GET_FUN(__glewSecondaryColor3sv)
-#define glSecondaryColor3ub GLEW_GET_FUN(__glewSecondaryColor3ub)
-#define glSecondaryColor3ubv GLEW_GET_FUN(__glewSecondaryColor3ubv)
-#define glSecondaryColor3ui GLEW_GET_FUN(__glewSecondaryColor3ui)
-#define glSecondaryColor3uiv GLEW_GET_FUN(__glewSecondaryColor3uiv)
-#define glSecondaryColor3us GLEW_GET_FUN(__glewSecondaryColor3us)
-#define glSecondaryColor3usv GLEW_GET_FUN(__glewSecondaryColor3usv)
-#define glSecondaryColorPointer GLEW_GET_FUN(__glewSecondaryColorPointer)
-#define glWindowPos2d GLEW_GET_FUN(__glewWindowPos2d)
-#define glWindowPos2dv GLEW_GET_FUN(__glewWindowPos2dv)
-#define glWindowPos2f GLEW_GET_FUN(__glewWindowPos2f)
-#define glWindowPos2fv GLEW_GET_FUN(__glewWindowPos2fv)
-#define glWindowPos2i GLEW_GET_FUN(__glewWindowPos2i)
-#define glWindowPos2iv GLEW_GET_FUN(__glewWindowPos2iv)
-#define glWindowPos2s GLEW_GET_FUN(__glewWindowPos2s)
-#define glWindowPos2sv GLEW_GET_FUN(__glewWindowPos2sv)
-#define glWindowPos3d GLEW_GET_FUN(__glewWindowPos3d)
-#define glWindowPos3dv GLEW_GET_FUN(__glewWindowPos3dv)
-#define glWindowPos3f GLEW_GET_FUN(__glewWindowPos3f)
-#define glWindowPos3fv GLEW_GET_FUN(__glewWindowPos3fv)
-#define glWindowPos3i GLEW_GET_FUN(__glewWindowPos3i)
-#define glWindowPos3iv GLEW_GET_FUN(__glewWindowPos3iv)
-#define glWindowPos3s GLEW_GET_FUN(__glewWindowPos3s)
-#define glWindowPos3sv GLEW_GET_FUN(__glewWindowPos3sv)
-
-#define GLEW_VERSION_1_4 GLEW_GET_VAR(__GLEW_VERSION_1_4)
-
-#endif /* GL_VERSION_1_4 */
-
-/* ----------------------------- GL_VERSION_1_5 ---------------------------- */
-
-#ifndef GL_VERSION_1_5
-#define GL_VERSION_1_5 1
-
-#define GL_FOG_COORD_SRC GL_FOG_COORDINATE_SOURCE
-#define GL_FOG_COORD GL_FOG_COORDINATE
-#define GL_FOG_COORD_ARRAY GL_FOG_COORDINATE_ARRAY
-#define GL_SRC0_RGB GL_SOURCE0_RGB
-#define GL_FOG_COORD_ARRAY_POINTER GL_FOG_COORDINATE_ARRAY_POINTER
-#define GL_FOG_COORD_ARRAY_TYPE GL_FOG_COORDINATE_ARRAY_TYPE
-#define GL_SRC1_ALPHA GL_SOURCE1_ALPHA
-#define GL_CURRENT_FOG_COORD GL_CURRENT_FOG_COORDINATE
-#define GL_FOG_COORD_ARRAY_STRIDE GL_FOG_COORDINATE_ARRAY_STRIDE
-#define GL_SRC0_ALPHA GL_SOURCE0_ALPHA
-#define GL_SRC1_RGB GL_SOURCE1_RGB
-#define GL_FOG_COORD_ARRAY_BUFFER_BINDING GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING
-#define GL_SRC2_ALPHA GL_SOURCE2_ALPHA
-#define GL_SRC2_RGB GL_SOURCE2_RGB
-#define GL_BUFFER_SIZE 0x8764
-#define GL_BUFFER_USAGE 0x8765
-#define GL_QUERY_COUNTER_BITS 0x8864
-#define GL_CURRENT_QUERY 0x8865
-#define GL_QUERY_RESULT 0x8866
-#define GL_QUERY_RESULT_AVAILABLE 0x8867
-#define GL_ARRAY_BUFFER 0x8892
-#define GL_ELEMENT_ARRAY_BUFFER 0x8893
-#define GL_ARRAY_BUFFER_BINDING 0x8894
-#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895
-#define GL_VERTEX_ARRAY_BUFFER_BINDING 0x8896
-#define GL_NORMAL_ARRAY_BUFFER_BINDING 0x8897
-#define GL_COLOR_ARRAY_BUFFER_BINDING 0x8898
-#define GL_INDEX_ARRAY_BUFFER_BINDING 0x8899
-#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING 0x889A
-#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING 0x889B
-#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING 0x889C
-#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING 0x889D
-#define GL_WEIGHT_ARRAY_BUFFER_BINDING 0x889E
-#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
-#define GL_READ_ONLY 0x88B8
-#define GL_WRITE_ONLY 0x88B9
-#define GL_READ_WRITE 0x88BA
-#define GL_BUFFER_ACCESS 0x88BB
-#define GL_BUFFER_MAPPED 0x88BC
-#define GL_BUFFER_MAP_POINTER 0x88BD
-#define GL_STREAM_DRAW 0x88E0
-#define GL_STREAM_READ 0x88E1
-#define GL_STREAM_COPY 0x88E2
-#define GL_STATIC_DRAW 0x88E4
-#define GL_STATIC_READ 0x88E5
-#define GL_STATIC_COPY 0x88E6
-#define GL_DYNAMIC_DRAW 0x88E8
-#define GL_DYNAMIC_READ 0x88E9
-#define GL_DYNAMIC_COPY 0x88EA
-#define GL_SAMPLES_PASSED 0x8914
-
-typedef ptrdiff_t GLsizeiptr;
-typedef ptrdiff_t GLintptr;
-
-typedef void (GLAPIENTRY * PFNGLBEGINQUERYPROC) (GLenum target, GLuint id);
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERPROC) (GLenum target, GLuint buffer);
-typedef void (GLAPIENTRY * PFNGLBUFFERDATAPROC) (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
-typedef void (GLAPIENTRY * PFNGLBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
-typedef void (GLAPIENTRY * PFNGLDELETEBUFFERSPROC) (GLsizei n, const GLuint* buffers);
-typedef void (GLAPIENTRY * PFNGLDELETEQUERIESPROC) (GLsizei n, const GLuint* ids);
-typedef void (GLAPIENTRY * PFNGLENDQUERYPROC) (GLenum target);
-typedef void (GLAPIENTRY * PFNGLGENBUFFERSPROC) (GLsizei n, GLuint* buffers);
-typedef void (GLAPIENTRY * PFNGLGENQUERIESPROC) (GLsizei n, GLuint* ids);
-typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETBUFFERPOINTERVPROC) (GLenum target, GLenum pname, GLvoid** params);
-typedef void (GLAPIENTRY * PFNGLGETBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLvoid* data);
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVPROC) (GLuint id, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVPROC) (GLuint id, GLenum pname, GLuint* params);
-typedef void (GLAPIENTRY * PFNGLGETQUERYIVPROC) (GLenum target, GLenum pname, GLint* params);
-typedef GLboolean (GLAPIENTRY * PFNGLISBUFFERPROC) (GLuint buffer);
-typedef GLboolean (GLAPIENTRY * PFNGLISQUERYPROC) (GLuint id);
-typedef GLvoid* (GLAPIENTRY * PFNGLMAPBUFFERPROC) (GLenum target, GLenum access);
-typedef GLboolean (GLAPIENTRY * PFNGLUNMAPBUFFERPROC) (GLenum target);
-
-#define glBeginQuery GLEW_GET_FUN(__glewBeginQuery)
-#define glBindBuffer GLEW_GET_FUN(__glewBindBuffer)
-#define glBufferData GLEW_GET_FUN(__glewBufferData)
-#define glBufferSubData GLEW_GET_FUN(__glewBufferSubData)
-#define glDeleteBuffers GLEW_GET_FUN(__glewDeleteBuffers)
-#define glDeleteQueries GLEW_GET_FUN(__glewDeleteQueries)
-#define glEndQuery GLEW_GET_FUN(__glewEndQuery)
-#define glGenBuffers GLEW_GET_FUN(__glewGenBuffers)
-#define glGenQueries GLEW_GET_FUN(__glewGenQueries)
-#define glGetBufferParameteriv GLEW_GET_FUN(__glewGetBufferParameteriv)
-#define glGetBufferPointerv GLEW_GET_FUN(__glewGetBufferPointerv)
-#define glGetBufferSubData GLEW_GET_FUN(__glewGetBufferSubData)
-#define glGetQueryObjectiv GLEW_GET_FUN(__glewGetQueryObjectiv)
-#define glGetQueryObjectuiv GLEW_GET_FUN(__glewGetQueryObjectuiv)
-#define glGetQueryiv GLEW_GET_FUN(__glewGetQueryiv)
-#define glIsBuffer GLEW_GET_FUN(__glewIsBuffer)
-#define glIsQuery GLEW_GET_FUN(__glewIsQuery)
-#define glMapBuffer GLEW_GET_FUN(__glewMapBuffer)
-#define glUnmapBuffer GLEW_GET_FUN(__glewUnmapBuffer)
-
-#define GLEW_VERSION_1_5 GLEW_GET_VAR(__GLEW_VERSION_1_5)
-
-#endif /* GL_VERSION_1_5 */
-
-/* ----------------------------- GL_VERSION_2_0 ---------------------------- */
-
-#ifndef GL_VERSION_2_0
-#define GL_VERSION_2_0 1
-
-#define GL_BLEND_EQUATION_RGB GL_BLEND_EQUATION
-#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
-#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
-#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
-#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
-#define GL_CURRENT_VERTEX_ATTRIB 0x8626
-#define GL_VERTEX_PROGRAM_POINT_SIZE 0x8642
-#define GL_VERTEX_PROGRAM_TWO_SIDE 0x8643
-#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
-#define GL_STENCIL_BACK_FUNC 0x8800
-#define GL_STENCIL_BACK_FAIL 0x8801
-#define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802
-#define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803
-#define GL_MAX_DRAW_BUFFERS 0x8824
-#define GL_DRAW_BUFFER0 0x8825
-#define GL_DRAW_BUFFER1 0x8826
-#define GL_DRAW_BUFFER2 0x8827
-#define GL_DRAW_BUFFER3 0x8828
-#define GL_DRAW_BUFFER4 0x8829
-#define GL_DRAW_BUFFER5 0x882A
-#define GL_DRAW_BUFFER6 0x882B
-#define GL_DRAW_BUFFER7 0x882C
-#define GL_DRAW_BUFFER8 0x882D
-#define GL_DRAW_BUFFER9 0x882E
-#define GL_DRAW_BUFFER10 0x882F
-#define GL_DRAW_BUFFER11 0x8830
-#define GL_DRAW_BUFFER12 0x8831
-#define GL_DRAW_BUFFER13 0x8832
-#define GL_DRAW_BUFFER14 0x8833
-#define GL_DRAW_BUFFER15 0x8834
-#define GL_BLEND_EQUATION_ALPHA 0x883D
-#define GL_POINT_SPRITE 0x8861
-#define GL_COORD_REPLACE 0x8862
-#define GL_MAX_VERTEX_ATTRIBS 0x8869
-#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
-#define GL_MAX_TEXTURE_COORDS 0x8871
-#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
-#define GL_FRAGMENT_SHADER 0x8B30
-#define GL_VERTEX_SHADER 0x8B31
-#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8B49
-#define GL_MAX_VERTEX_UNIFORM_COMPONENTS 0x8B4A
-#define GL_MAX_VARYING_FLOATS 0x8B4B
-#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
-#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
-#define GL_SHADER_TYPE 0x8B4F
-#define GL_FLOAT_VEC2 0x8B50
-#define GL_FLOAT_VEC3 0x8B51
-#define GL_FLOAT_VEC4 0x8B52
-#define GL_INT_VEC2 0x8B53
-#define GL_INT_VEC3 0x8B54
-#define GL_INT_VEC4 0x8B55
-#define GL_BOOL 0x8B56
-#define GL_BOOL_VEC2 0x8B57
-#define GL_BOOL_VEC3 0x8B58
-#define GL_BOOL_VEC4 0x8B59
-#define GL_FLOAT_MAT2 0x8B5A
-#define GL_FLOAT_MAT3 0x8B5B
-#define GL_FLOAT_MAT4 0x8B5C
-#define GL_SAMPLER_1D 0x8B5D
-#define GL_SAMPLER_2D 0x8B5E
-#define GL_SAMPLER_3D 0x8B5F
-#define GL_SAMPLER_CUBE 0x8B60
-#define GL_SAMPLER_1D_SHADOW 0x8B61
-#define GL_SAMPLER_2D_SHADOW 0x8B62
-#define GL_DELETE_STATUS 0x8B80
-#define GL_COMPILE_STATUS 0x8B81
-#define GL_LINK_STATUS 0x8B82
-#define GL_VALIDATE_STATUS 0x8B83
-#define GL_INFO_LOG_LENGTH 0x8B84
-#define GL_ATTACHED_SHADERS 0x8B85
-#define GL_ACTIVE_UNIFORMS 0x8B86
-#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87
-#define GL_SHADER_SOURCE_LENGTH 0x8B88
-#define GL_ACTIVE_ATTRIBUTES 0x8B89
-#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A
-#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8B8B
-#define GL_SHADING_LANGUAGE_VERSION 0x8B8C
-#define GL_CURRENT_PROGRAM 0x8B8D
-#define GL_POINT_SPRITE_COORD_ORIGIN 0x8CA0
-#define GL_LOWER_LEFT 0x8CA1
-#define GL_UPPER_LEFT 0x8CA2
-#define GL_STENCIL_BACK_REF 0x8CA3
-#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4
-#define GL_STENCIL_BACK_WRITEMASK 0x8CA5
-
-typedef char GLchar;
-
-typedef void (GLAPIENTRY * PFNGLATTACHSHADERPROC) (GLuint program, GLuint shader);
-typedef void (GLAPIENTRY * PFNGLBINDATTRIBLOCATIONPROC) (GLuint program, GLuint index, const GLchar* name);
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEPROC) (GLenum, GLenum);
-typedef void (GLAPIENTRY * PFNGLCOMPILESHADERPROC) (GLuint shader);
-typedef GLuint (GLAPIENTRY * PFNGLCREATEPROGRAMPROC) (void);
-typedef GLuint (GLAPIENTRY * PFNGLCREATESHADERPROC) (GLenum type);
-typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMPROC) (GLuint program);
-typedef void (GLAPIENTRY * PFNGLDELETESHADERPROC) (GLuint shader);
-typedef void (GLAPIENTRY * PFNGLDETACHSHADERPROC) (GLuint program, GLuint shader);
-typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBARRAYPROC) (GLuint);
-typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSPROC) (GLsizei n, const GLenum* bufs);
-typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBARRAYPROC) (GLuint);
-typedef void (GLAPIENTRY * PFNGLGETACTIVEATTRIBPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
-typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
-typedef void (GLAPIENTRY * PFNGLGETATTACHEDSHADERSPROC) (GLuint program, GLsizei maxCount, GLsizei* count, GLuint* shaders);
-typedef GLint (GLAPIENTRY * PFNGLGETATTRIBLOCATIONPROC) (GLuint program, const GLchar* name);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMINFOLOGPROC) (GLuint program, GLsizei bufSize, GLsizei* length, GLchar* infoLog);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVPROC) (GLuint program, GLenum pname, GLint* param);
-typedef void (GLAPIENTRY * PFNGLGETSHADERINFOLOGPROC) (GLuint shader, GLsizei bufSize, GLsizei* length, GLchar* infoLog);
-typedef void (GLAPIENTRY * PFNGLGETSHADERSOURCEPROC) (GLint obj, GLsizei maxLength, GLsizei* length, GLchar* source);
-typedef void (GLAPIENTRY * PFNGLGETSHADERIVPROC) (GLuint shader, GLenum pname, GLint* param);
-typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMLOCATIONPROC) (GLuint program, const GLchar* name);
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMFVPROC) (GLuint program, GLint location, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMIVPROC) (GLuint program, GLint location, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVPROC) (GLuint, GLenum, GLvoid*);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBDVPROC) (GLuint, GLenum, GLdouble*);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVPROC) (GLuint, GLenum, GLfloat*);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVPROC) (GLuint, GLenum, GLint*);
-typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMPROC) (GLuint program);
-typedef GLboolean (GLAPIENTRY * PFNGLISSHADERPROC) (GLuint shader);
-typedef void (GLAPIENTRY * PFNGLLINKPROGRAMPROC) (GLuint program);
-typedef void (GLAPIENTRY * PFNGLSHADERSOURCEPROC) (GLuint shader, GLsizei count, const GLchar** strings, const GLint* lengths);
-typedef void (GLAPIENTRY * PFNGLSTENCILFUNCSEPARATEPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
-typedef void (GLAPIENTRY * PFNGLSTENCILMASKSEPARATEPROC) (GLenum, GLuint);
-typedef void (GLAPIENTRY * PFNGLSTENCILOPSEPARATEPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1FPROC) (GLint location, GLfloat v0);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1FVPROC) (GLint location, GLsizei count, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1IPROC) (GLint location, GLint v0);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1IVPROC) (GLint location, GLsizei count, const GLint* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2FPROC) (GLint location, GLfloat v0, GLfloat v1);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2FVPROC) (GLint location, GLsizei count, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2IPROC) (GLint location, GLint v0, GLint v1);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2IVPROC) (GLint location, GLsizei count, const GLint* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3FVPROC) (GLint location, GLsizei count, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3IPROC) (GLint location, GLint v0, GLint v1, GLint v2);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3IVPROC) (GLint location, GLsizei count, const GLint* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4FVPROC) (GLint location, GLsizei count, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4IPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4IVPROC) (GLint location, GLsizei count, const GLint* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUSEPROGRAMPROC) (GLuint program);
-typedef void (GLAPIENTRY * PFNGLVALIDATEPROGRAMPROC) (GLuint program);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DPROC) (GLuint index, GLdouble x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DVPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FPROC) (GLuint index, GLfloat x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVPROC) (GLuint index, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SPROC) (GLuint index, GLshort x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SVPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DPROC) (GLuint index, GLdouble x, GLdouble y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DVPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FPROC) (GLuint index, GLfloat x, GLfloat y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVPROC) (GLuint index, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SPROC) (GLuint index, GLshort x, GLshort y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SVPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DVPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVPROC) (GLuint index, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SPROC) (GLuint index, GLshort x, GLshort y, GLshort z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SVPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NBVPROC) (GLuint index, const GLbyte* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NIVPROC) (GLuint index, const GLint* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NSVPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBVPROC) (GLuint index, const GLubyte* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUIVPROC) (GLuint index, const GLuint* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUSVPROC) (GLuint index, const GLushort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4BVPROC) (GLuint index, const GLbyte* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DVPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVPROC) (GLuint index, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4IVPROC) (GLuint index, const GLint* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SVPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBVPROC) (GLuint index, const GLubyte* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UIVPROC) (GLuint index, const GLuint* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4USVPROC) (GLuint index, const GLushort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* pointer);
-
-#define glAttachShader GLEW_GET_FUN(__glewAttachShader)
-#define glBindAttribLocation GLEW_GET_FUN(__glewBindAttribLocation)
-#define glBlendEquationSeparate GLEW_GET_FUN(__glewBlendEquationSeparate)
-#define glCompileShader GLEW_GET_FUN(__glewCompileShader)
-#define glCreateProgram GLEW_GET_FUN(__glewCreateProgram)
-#define glCreateShader GLEW_GET_FUN(__glewCreateShader)
-#define glDeleteProgram GLEW_GET_FUN(__glewDeleteProgram)
-#define glDeleteShader GLEW_GET_FUN(__glewDeleteShader)
-#define glDetachShader GLEW_GET_FUN(__glewDetachShader)
-#define glDisableVertexAttribArray GLEW_GET_FUN(__glewDisableVertexAttribArray)
-#define glDrawBuffers GLEW_GET_FUN(__glewDrawBuffers)
-#define glEnableVertexAttribArray GLEW_GET_FUN(__glewEnableVertexAttribArray)
-#define glGetActiveAttrib GLEW_GET_FUN(__glewGetActiveAttrib)
-#define glGetActiveUniform GLEW_GET_FUN(__glewGetActiveUniform)
-#define glGetAttachedShaders GLEW_GET_FUN(__glewGetAttachedShaders)
-#define glGetAttribLocation GLEW_GET_FUN(__glewGetAttribLocation)
-#define glGetProgramInfoLog GLEW_GET_FUN(__glewGetProgramInfoLog)
-#define glGetProgramiv GLEW_GET_FUN(__glewGetProgramiv)
-#define glGetShaderInfoLog GLEW_GET_FUN(__glewGetShaderInfoLog)
-#define glGetShaderSource GLEW_GET_FUN(__glewGetShaderSource)
-#define glGetShaderiv GLEW_GET_FUN(__glewGetShaderiv)
-#define glGetUniformLocation GLEW_GET_FUN(__glewGetUniformLocation)
-#define glGetUniformfv GLEW_GET_FUN(__glewGetUniformfv)
-#define glGetUniformiv GLEW_GET_FUN(__glewGetUniformiv)
-#define glGetVertexAttribPointerv GLEW_GET_FUN(__glewGetVertexAttribPointerv)
-#define glGetVertexAttribdv GLEW_GET_FUN(__glewGetVertexAttribdv)
-#define glGetVertexAttribfv GLEW_GET_FUN(__glewGetVertexAttribfv)
-#define glGetVertexAttribiv GLEW_GET_FUN(__glewGetVertexAttribiv)
-#define glIsProgram GLEW_GET_FUN(__glewIsProgram)
-#define glIsShader GLEW_GET_FUN(__glewIsShader)
-#define glLinkProgram GLEW_GET_FUN(__glewLinkProgram)
-#define glShaderSource GLEW_GET_FUN(__glewShaderSource)
-#define glStencilFuncSeparate GLEW_GET_FUN(__glewStencilFuncSeparate)
-#define glStencilMaskSeparate GLEW_GET_FUN(__glewStencilMaskSeparate)
-#define glStencilOpSeparate GLEW_GET_FUN(__glewStencilOpSeparate)
-#define glUniform1f GLEW_GET_FUN(__glewUniform1f)
-#define glUniform1fv GLEW_GET_FUN(__glewUniform1fv)
-#define glUniform1i GLEW_GET_FUN(__glewUniform1i)
-#define glUniform1iv GLEW_GET_FUN(__glewUniform1iv)
-#define glUniform2f GLEW_GET_FUN(__glewUniform2f)
-#define glUniform2fv GLEW_GET_FUN(__glewUniform2fv)
-#define glUniform2i GLEW_GET_FUN(__glewUniform2i)
-#define glUniform2iv GLEW_GET_FUN(__glewUniform2iv)
-#define glUniform3f GLEW_GET_FUN(__glewUniform3f)
-#define glUniform3fv GLEW_GET_FUN(__glewUniform3fv)
-#define glUniform3i GLEW_GET_FUN(__glewUniform3i)
-#define glUniform3iv GLEW_GET_FUN(__glewUniform3iv)
-#define glUniform4f GLEW_GET_FUN(__glewUniform4f)
-#define glUniform4fv GLEW_GET_FUN(__glewUniform4fv)
-#define glUniform4i GLEW_GET_FUN(__glewUniform4i)
-#define glUniform4iv GLEW_GET_FUN(__glewUniform4iv)
-#define glUniformMatrix2fv GLEW_GET_FUN(__glewUniformMatrix2fv)
-#define glUniformMatrix3fv GLEW_GET_FUN(__glewUniformMatrix3fv)
-#define glUniformMatrix4fv GLEW_GET_FUN(__glewUniformMatrix4fv)
-#define glUseProgram GLEW_GET_FUN(__glewUseProgram)
-#define glValidateProgram GLEW_GET_FUN(__glewValidateProgram)
-#define glVertexAttrib1d GLEW_GET_FUN(__glewVertexAttrib1d)
-#define glVertexAttrib1dv GLEW_GET_FUN(__glewVertexAttrib1dv)
-#define glVertexAttrib1f GLEW_GET_FUN(__glewVertexAttrib1f)
-#define glVertexAttrib1fv GLEW_GET_FUN(__glewVertexAttrib1fv)
-#define glVertexAttrib1s GLEW_GET_FUN(__glewVertexAttrib1s)
-#define glVertexAttrib1sv GLEW_GET_FUN(__glewVertexAttrib1sv)
-#define glVertexAttrib2d GLEW_GET_FUN(__glewVertexAttrib2d)
-#define glVertexAttrib2dv GLEW_GET_FUN(__glewVertexAttrib2dv)
-#define glVertexAttrib2f GLEW_GET_FUN(__glewVertexAttrib2f)
-#define glVertexAttrib2fv GLEW_GET_FUN(__glewVertexAttrib2fv)
-#define glVertexAttrib2s GLEW_GET_FUN(__glewVertexAttrib2s)
-#define glVertexAttrib2sv GLEW_GET_FUN(__glewVertexAttrib2sv)
-#define glVertexAttrib3d GLEW_GET_FUN(__glewVertexAttrib3d)
-#define glVertexAttrib3dv GLEW_GET_FUN(__glewVertexAttrib3dv)
-#define glVertexAttrib3f GLEW_GET_FUN(__glewVertexAttrib3f)
-#define glVertexAttrib3fv GLEW_GET_FUN(__glewVertexAttrib3fv)
-#define glVertexAttrib3s GLEW_GET_FUN(__glewVertexAttrib3s)
-#define glVertexAttrib3sv GLEW_GET_FUN(__glewVertexAttrib3sv)
-#define glVertexAttrib4Nbv GLEW_GET_FUN(__glewVertexAttrib4Nbv)
-#define glVertexAttrib4Niv GLEW_GET_FUN(__glewVertexAttrib4Niv)
-#define glVertexAttrib4Nsv GLEW_GET_FUN(__glewVertexAttrib4Nsv)
-#define glVertexAttrib4Nub GLEW_GET_FUN(__glewVertexAttrib4Nub)
-#define glVertexAttrib4Nubv GLEW_GET_FUN(__glewVertexAttrib4Nubv)
-#define glVertexAttrib4Nuiv GLEW_GET_FUN(__glewVertexAttrib4Nuiv)
-#define glVertexAttrib4Nusv GLEW_GET_FUN(__glewVertexAttrib4Nusv)
-#define glVertexAttrib4bv GLEW_GET_FUN(__glewVertexAttrib4bv)
-#define glVertexAttrib4d GLEW_GET_FUN(__glewVertexAttrib4d)
-#define glVertexAttrib4dv GLEW_GET_FUN(__glewVertexAttrib4dv)
-#define glVertexAttrib4f GLEW_GET_FUN(__glewVertexAttrib4f)
-#define glVertexAttrib4fv GLEW_GET_FUN(__glewVertexAttrib4fv)
-#define glVertexAttrib4iv GLEW_GET_FUN(__glewVertexAttrib4iv)
-#define glVertexAttrib4s GLEW_GET_FUN(__glewVertexAttrib4s)
-#define glVertexAttrib4sv GLEW_GET_FUN(__glewVertexAttrib4sv)
-#define glVertexAttrib4ubv GLEW_GET_FUN(__glewVertexAttrib4ubv)
-#define glVertexAttrib4uiv GLEW_GET_FUN(__glewVertexAttrib4uiv)
-#define glVertexAttrib4usv GLEW_GET_FUN(__glewVertexAttrib4usv)
-#define glVertexAttribPointer GLEW_GET_FUN(__glewVertexAttribPointer)
-
-#define GLEW_VERSION_2_0 GLEW_GET_VAR(__GLEW_VERSION_2_0)
-
-#endif /* GL_VERSION_2_0 */
-
-/* ----------------------------- GL_VERSION_2_1 ---------------------------- */
-
-#ifndef GL_VERSION_2_1
-#define GL_VERSION_2_1 1
-
-#define GL_CURRENT_RASTER_SECONDARY_COLOR 0x845F
-#define GL_PIXEL_PACK_BUFFER 0x88EB
-#define GL_PIXEL_UNPACK_BUFFER 0x88EC
-#define GL_PIXEL_PACK_BUFFER_BINDING 0x88ED
-#define GL_PIXEL_UNPACK_BUFFER_BINDING 0x88EF
-#define GL_FLOAT_MAT2x3 0x8B65
-#define GL_FLOAT_MAT2x4 0x8B66
-#define GL_FLOAT_MAT3x2 0x8B67
-#define GL_FLOAT_MAT3x4 0x8B68
-#define GL_FLOAT_MAT4x2 0x8B69
-#define GL_FLOAT_MAT4x3 0x8B6A
-#define GL_SRGB 0x8C40
-#define GL_SRGB8 0x8C41
-#define GL_SRGB_ALPHA 0x8C42
-#define GL_SRGB8_ALPHA8 0x8C43
-#define GL_SLUMINANCE_ALPHA 0x8C44
-#define GL_SLUMINANCE8_ALPHA8 0x8C45
-#define GL_SLUMINANCE 0x8C46
-#define GL_SLUMINANCE8 0x8C47
-#define GL_COMPRESSED_SRGB 0x8C48
-#define GL_COMPRESSED_SRGB_ALPHA 0x8C49
-#define GL_COMPRESSED_SLUMINANCE 0x8C4A
-#define GL_COMPRESSED_SLUMINANCE_ALPHA 0x8C4B
-
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
-
-#define glUniformMatrix2x3fv GLEW_GET_FUN(__glewUniformMatrix2x3fv)
-#define glUniformMatrix2x4fv GLEW_GET_FUN(__glewUniformMatrix2x4fv)
-#define glUniformMatrix3x2fv GLEW_GET_FUN(__glewUniformMatrix3x2fv)
-#define glUniformMatrix3x4fv GLEW_GET_FUN(__glewUniformMatrix3x4fv)
-#define glUniformMatrix4x2fv GLEW_GET_FUN(__glewUniformMatrix4x2fv)
-#define glUniformMatrix4x3fv GLEW_GET_FUN(__glewUniformMatrix4x3fv)
-
-#define GLEW_VERSION_2_1 GLEW_GET_VAR(__GLEW_VERSION_2_1)
-
-#endif /* GL_VERSION_2_1 */
-
-/* ----------------------------- GL_VERSION_3_0 ---------------------------- */
-
-#ifndef GL_VERSION_3_0
-#define GL_VERSION_3_0 1
-
-#define GL_MAX_CLIP_DISTANCES GL_MAX_CLIP_PLANES
-#define GL_CLIP_DISTANCE5 GL_CLIP_PLANE5
-#define GL_CLIP_DISTANCE1 GL_CLIP_PLANE1
-#define GL_CLIP_DISTANCE3 GL_CLIP_PLANE3
-#define GL_COMPARE_REF_TO_TEXTURE GL_COMPARE_R_TO_TEXTURE_ARB
-#define GL_CLIP_DISTANCE0 GL_CLIP_PLANE0
-#define GL_CLIP_DISTANCE4 GL_CLIP_PLANE4
-#define GL_CLIP_DISTANCE2 GL_CLIP_PLANE2
-#define GL_MAX_VARYING_COMPONENTS GL_MAX_VARYING_FLOATS
-#define GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT 0x0001
-#define GL_MAJOR_VERSION 0x821B
-#define GL_MINOR_VERSION 0x821C
-#define GL_NUM_EXTENSIONS 0x821D
-#define GL_CONTEXT_FLAGS 0x821E
-#define GL_DEPTH_BUFFER 0x8223
-#define GL_STENCIL_BUFFER 0x8224
-#define GL_COMPRESSED_RED 0x8225
-#define GL_COMPRESSED_RG 0x8226
-#define GL_RGBA32F 0x8814
-#define GL_RGB32F 0x8815
-#define GL_RGBA16F 0x881A
-#define GL_RGB16F 0x881B
-#define GL_VERTEX_ATTRIB_ARRAY_INTEGER 0x88FD
-#define GL_MAX_ARRAY_TEXTURE_LAYERS 0x88FF
-#define GL_MIN_PROGRAM_TEXEL_OFFSET 0x8904
-#define GL_MAX_PROGRAM_TEXEL_OFFSET 0x8905
-#define GL_CLAMP_VERTEX_COLOR 0x891A
-#define GL_CLAMP_FRAGMENT_COLOR 0x891B
-#define GL_CLAMP_READ_COLOR 0x891C
-#define GL_FIXED_ONLY 0x891D
-#define GL_TEXTURE_RED_TYPE 0x8C10
-#define GL_TEXTURE_GREEN_TYPE 0x8C11
-#define GL_TEXTURE_BLUE_TYPE 0x8C12
-#define GL_TEXTURE_ALPHA_TYPE 0x8C13
-#define GL_TEXTURE_LUMINANCE_TYPE 0x8C14
-#define GL_TEXTURE_INTENSITY_TYPE 0x8C15
-#define GL_TEXTURE_DEPTH_TYPE 0x8C16
-#define GL_UNSIGNED_NORMALIZED 0x8C17
-#define GL_TEXTURE_1D_ARRAY 0x8C18
-#define GL_PROXY_TEXTURE_1D_ARRAY 0x8C19
-#define GL_TEXTURE_2D_ARRAY 0x8C1A
-#define GL_PROXY_TEXTURE_2D_ARRAY 0x8C1B
-#define GL_TEXTURE_BINDING_1D_ARRAY 0x8C1C
-#define GL_TEXTURE_BINDING_2D_ARRAY 0x8C1D
-#define GL_R11F_G11F_B10F 0x8C3A
-#define GL_UNSIGNED_INT_10F_11F_11F_REV 0x8C3B
-#define GL_RGB9_E5 0x8C3D
-#define GL_UNSIGNED_INT_5_9_9_9_REV 0x8C3E
-#define GL_TEXTURE_SHARED_SIZE 0x8C3F
-#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH 0x8C76
-#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE 0x8C7F
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS 0x8C80
-#define GL_TRANSFORM_FEEDBACK_VARYINGS 0x8C83
-#define GL_TRANSFORM_FEEDBACK_BUFFER_START 0x8C84
-#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE 0x8C85
-#define GL_PRIMITIVES_GENERATED 0x8C87
-#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN 0x8C88
-#define GL_RASTERIZER_DISCARD 0x8C89
-#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS 0x8C8A
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS 0x8C8B
-#define GL_INTERLEAVED_ATTRIBS 0x8C8C
-#define GL_SEPARATE_ATTRIBS 0x8C8D
-#define GL_TRANSFORM_FEEDBACK_BUFFER 0x8C8E
-#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING 0x8C8F
-#define GL_RGBA32UI 0x8D70
-#define GL_RGB32UI 0x8D71
-#define GL_RGBA16UI 0x8D76
-#define GL_RGB16UI 0x8D77
-#define GL_RGBA8UI 0x8D7C
-#define GL_RGB8UI 0x8D7D
-#define GL_RGBA32I 0x8D82
-#define GL_RGB32I 0x8D83
-#define GL_RGBA16I 0x8D88
-#define GL_RGB16I 0x8D89
-#define GL_RGBA8I 0x8D8E
-#define GL_RGB8I 0x8D8F
-#define GL_RED_INTEGER 0x8D94
-#define GL_GREEN_INTEGER 0x8D95
-#define GL_BLUE_INTEGER 0x8D96
-#define GL_ALPHA_INTEGER 0x8D97
-#define GL_RGB_INTEGER 0x8D98
-#define GL_RGBA_INTEGER 0x8D99
-#define GL_BGR_INTEGER 0x8D9A
-#define GL_BGRA_INTEGER 0x8D9B
-#define GL_SAMPLER_1D_ARRAY 0x8DC0
-#define GL_SAMPLER_2D_ARRAY 0x8DC1
-#define GL_SAMPLER_1D_ARRAY_SHADOW 0x8DC3
-#define GL_SAMPLER_2D_ARRAY_SHADOW 0x8DC4
-#define GL_SAMPLER_CUBE_SHADOW 0x8DC5
-#define GL_UNSIGNED_INT_VEC2 0x8DC6
-#define GL_UNSIGNED_INT_VEC3 0x8DC7
-#define GL_UNSIGNED_INT_VEC4 0x8DC8
-#define GL_INT_SAMPLER_1D 0x8DC9
-#define GL_INT_SAMPLER_2D 0x8DCA
-#define GL_INT_SAMPLER_3D 0x8DCB
-#define GL_INT_SAMPLER_CUBE 0x8DCC
-#define GL_INT_SAMPLER_1D_ARRAY 0x8DCE
-#define GL_INT_SAMPLER_2D_ARRAY 0x8DCF
-#define GL_UNSIGNED_INT_SAMPLER_1D 0x8DD1
-#define GL_UNSIGNED_INT_SAMPLER_2D 0x8DD2
-#define GL_UNSIGNED_INT_SAMPLER_3D 0x8DD3
-#define GL_UNSIGNED_INT_SAMPLER_CUBE 0x8DD4
-#define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY 0x8DD6
-#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY 0x8DD7
-#define GL_QUERY_WAIT 0x8E13
-#define GL_QUERY_NO_WAIT 0x8E14
-#define GL_QUERY_BY_REGION_WAIT 0x8E15
-#define GL_QUERY_BY_REGION_NO_WAIT 0x8E16
-
-typedef void (GLAPIENTRY * PFNGLBEGINCONDITIONALRENDERPROC) (GLuint, GLenum);
-typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACKPROC) (GLenum);
-typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONPROC) (GLuint, GLuint, const GLchar*);
-typedef void (GLAPIENTRY * PFNGLCLAMPCOLORPROC) (GLenum, GLenum);
-typedef void (GLAPIENTRY * PFNGLCLEARBUFFERFIPROC) (GLenum, GLint, GLfloat, GLint);
-typedef void (GLAPIENTRY * PFNGLCLEARBUFFERFVPROC) (GLenum, GLint, const GLfloat*);
-typedef void (GLAPIENTRY * PFNGLCLEARBUFFERIVPROC) (GLenum, GLint, const GLint*);
-typedef void (GLAPIENTRY * PFNGLCLEARBUFFERUIVPROC) (GLenum, GLint, const GLuint*);
-typedef void (GLAPIENTRY * PFNGLCOLORMASKIPROC) (GLuint, GLboolean, GLboolean, GLboolean, GLboolean);
-typedef void (GLAPIENTRY * PFNGLDISABLEIPROC) (GLenum, GLuint);
-typedef void (GLAPIENTRY * PFNGLENABLEIPROC) (GLenum, GLuint);
-typedef void (GLAPIENTRY * PFNGLENDCONDITIONALRENDERPROC) (void);
-typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACKPROC) (void);
-typedef void (GLAPIENTRY * PFNGLGETBOOLEANI_VPROC) (GLenum, GLuint, GLboolean*);
-typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATALOCATIONPROC) (GLuint, const GLchar*);
-typedef const GLubyte* (GLAPIENTRY * PFNGLGETSTRINGIPROC) (GLenum, GLuint);
-typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIIVPROC) (GLenum, GLenum, GLint*);
-typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIUIVPROC) (GLenum, GLenum, GLuint*);
-typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYINGPROC) (GLuint, GLuint, GLint*);
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMUIVPROC) (GLuint, GLint, GLuint*);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIIVPROC) (GLuint, GLenum, GLint*);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIUIVPROC) (GLuint, GLenum, GLuint*);
-typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDIPROC) (GLenum, GLuint);
-typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIIVPROC) (GLenum, GLenum, const GLint*);
-typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIUIVPROC) (GLenum, GLenum, const GLuint*);
-typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGSPROC) (GLuint, GLsizei, const GLchar **, GLenum);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1UIPROC) (GLint, GLuint);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1UIVPROC) (GLint, GLsizei, const GLuint*);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2UIPROC) (GLint, GLuint, GLuint);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2UIVPROC) (GLint, GLsizei, const GLuint*);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3UIPROC) (GLint, GLuint, GLuint, GLuint);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3UIVPROC) (GLint, GLsizei, const GLuint*);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4UIPROC) (GLint, GLuint, GLuint, GLuint, GLuint);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4UIVPROC) (GLint, GLsizei, const GLuint*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IPROC) (GLuint, GLint);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IVPROC) (GLuint, const GLint*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIPROC) (GLuint, GLuint);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIVPROC) (GLuint, const GLuint*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IPROC) (GLuint, GLint, GLint);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IVPROC) (GLuint, const GLint*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIPROC) (GLuint, GLuint, GLuint);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIVPROC) (GLuint, const GLuint*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IPROC) (GLuint, GLint, GLint, GLint);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IVPROC) (GLuint, const GLint*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIPROC) (GLuint, GLuint, GLuint, GLuint);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIVPROC) (GLuint, const GLuint*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4BVPROC) (GLuint, const GLbyte*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IPROC) (GLuint, GLint, GLint, GLint, GLint);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IVPROC) (GLuint, const GLint*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4SVPROC) (GLuint, const GLshort*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UBVPROC) (GLuint, const GLubyte*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIPROC) (GLuint, GLuint, GLuint, GLuint, GLuint);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIVPROC) (GLuint, const GLuint*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4USVPROC) (GLuint, const GLushort*);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIPOINTERPROC) (GLuint, GLint, GLenum, GLsizei, const GLvoid*);
-
-#define glBeginConditionalRender GLEW_GET_FUN(__glewBeginConditionalRender)
-#define glBeginTransformFeedback GLEW_GET_FUN(__glewBeginTransformFeedback)
-#define glBindFragDataLocation GLEW_GET_FUN(__glewBindFragDataLocation)
-#define glClampColor GLEW_GET_FUN(__glewClampColor)
-#define glClearBufferfi GLEW_GET_FUN(__glewClearBufferfi)
-#define glClearBufferfv GLEW_GET_FUN(__glewClearBufferfv)
-#define glClearBufferiv GLEW_GET_FUN(__glewClearBufferiv)
-#define glClearBufferuiv GLEW_GET_FUN(__glewClearBufferuiv)
-#define glColorMaski GLEW_GET_FUN(__glewColorMaski)
-#define glDisablei GLEW_GET_FUN(__glewDisablei)
-#define glEnablei GLEW_GET_FUN(__glewEnablei)
-#define glEndConditionalRender GLEW_GET_FUN(__glewEndConditionalRender)
-#define glEndTransformFeedback GLEW_GET_FUN(__glewEndTransformFeedback)
-#define glGetBooleani_v GLEW_GET_FUN(__glewGetBooleani_v)
-#define glGetFragDataLocation GLEW_GET_FUN(__glewGetFragDataLocation)
-#define glGetStringi GLEW_GET_FUN(__glewGetStringi)
-#define glGetTexParameterIiv GLEW_GET_FUN(__glewGetTexParameterIiv)
-#define glGetTexParameterIuiv GLEW_GET_FUN(__glewGetTexParameterIuiv)
-#define glGetTransformFeedbackVarying GLEW_GET_FUN(__glewGetTransformFeedbackVarying)
-#define glGetUniformuiv GLEW_GET_FUN(__glewGetUniformuiv)
-#define glGetVertexAttribIiv GLEW_GET_FUN(__glewGetVertexAttribIiv)
-#define glGetVertexAttribIuiv GLEW_GET_FUN(__glewGetVertexAttribIuiv)
-#define glIsEnabledi GLEW_GET_FUN(__glewIsEnabledi)
-#define glTexParameterIiv GLEW_GET_FUN(__glewTexParameterIiv)
-#define glTexParameterIuiv GLEW_GET_FUN(__glewTexParameterIuiv)
-#define glTransformFeedbackVaryings GLEW_GET_FUN(__glewTransformFeedbackVaryings)
-#define glUniform1ui GLEW_GET_FUN(__glewUniform1ui)
-#define glUniform1uiv GLEW_GET_FUN(__glewUniform1uiv)
-#define glUniform2ui GLEW_GET_FUN(__glewUniform2ui)
-#define glUniform2uiv GLEW_GET_FUN(__glewUniform2uiv)
-#define glUniform3ui GLEW_GET_FUN(__glewUniform3ui)
-#define glUniform3uiv GLEW_GET_FUN(__glewUniform3uiv)
-#define glUniform4ui GLEW_GET_FUN(__glewUniform4ui)
-#define glUniform4uiv GLEW_GET_FUN(__glewUniform4uiv)
-#define glVertexAttribI1i GLEW_GET_FUN(__glewVertexAttribI1i)
-#define glVertexAttribI1iv GLEW_GET_FUN(__glewVertexAttribI1iv)
-#define glVertexAttribI1ui GLEW_GET_FUN(__glewVertexAttribI1ui)
-#define glVertexAttribI1uiv GLEW_GET_FUN(__glewVertexAttribI1uiv)
-#define glVertexAttribI2i GLEW_GET_FUN(__glewVertexAttribI2i)
-#define glVertexAttribI2iv GLEW_GET_FUN(__glewVertexAttribI2iv)
-#define glVertexAttribI2ui GLEW_GET_FUN(__glewVertexAttribI2ui)
-#define glVertexAttribI2uiv GLEW_GET_FUN(__glewVertexAttribI2uiv)
-#define glVertexAttribI3i GLEW_GET_FUN(__glewVertexAttribI3i)
-#define glVertexAttribI3iv GLEW_GET_FUN(__glewVertexAttribI3iv)
-#define glVertexAttribI3ui GLEW_GET_FUN(__glewVertexAttribI3ui)
-#define glVertexAttribI3uiv GLEW_GET_FUN(__glewVertexAttribI3uiv)
-#define glVertexAttribI4bv GLEW_GET_FUN(__glewVertexAttribI4bv)
-#define glVertexAttribI4i GLEW_GET_FUN(__glewVertexAttribI4i)
-#define glVertexAttribI4iv GLEW_GET_FUN(__glewVertexAttribI4iv)
-#define glVertexAttribI4sv GLEW_GET_FUN(__glewVertexAttribI4sv)
-#define glVertexAttribI4ubv GLEW_GET_FUN(__glewVertexAttribI4ubv)
-#define glVertexAttribI4ui GLEW_GET_FUN(__glewVertexAttribI4ui)
-#define glVertexAttribI4uiv GLEW_GET_FUN(__glewVertexAttribI4uiv)
-#define glVertexAttribI4usv GLEW_GET_FUN(__glewVertexAttribI4usv)
-#define glVertexAttribIPointer GLEW_GET_FUN(__glewVertexAttribIPointer)
-
-#define GLEW_VERSION_3_0 GLEW_GET_VAR(__GLEW_VERSION_3_0)
-
-#endif /* GL_VERSION_3_0 */
-
-/* ----------------------------- GL_VERSION_3_1 ---------------------------- */
-
-#ifndef GL_VERSION_3_1
-#define GL_VERSION_3_1 1
-
-#define GL_TEXTURE_RECTANGLE 0x84F5
-#define GL_TEXTURE_BINDING_RECTANGLE 0x84F6
-#define GL_PROXY_TEXTURE_RECTANGLE 0x84F7
-#define GL_MAX_RECTANGLE_TEXTURE_SIZE 0x84F8
-#define GL_SAMPLER_2D_RECT 0x8B63
-#define GL_SAMPLER_2D_RECT_SHADOW 0x8B64
-#define GL_TEXTURE_BUFFER 0x8C2A
-#define GL_MAX_TEXTURE_BUFFER_SIZE 0x8C2B
-#define GL_TEXTURE_BINDING_BUFFER 0x8C2C
-#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING 0x8C2D
-#define GL_TEXTURE_BUFFER_FORMAT 0x8C2E
-#define GL_SAMPLER_BUFFER 0x8DC2
-#define GL_INT_SAMPLER_2D_RECT 0x8DCD
-#define GL_INT_SAMPLER_BUFFER 0x8DD0
-#define GL_UNSIGNED_INT_SAMPLER_2D_RECT 0x8DD5
-#define GL_UNSIGNED_INT_SAMPLER_BUFFER 0x8DD8
-#define GL_RED_SNORM 0x8F90
-#define GL_RG_SNORM 0x8F91
-#define GL_RGB_SNORM 0x8F92
-#define GL_RGBA_SNORM 0x8F93
-#define GL_R8_SNORM 0x8F94
-#define GL_RG8_SNORM 0x8F95
-#define GL_RGB8_SNORM 0x8F96
-#define GL_RGBA8_SNORM 0x8F97
-#define GL_R16_SNORM 0x8F98
-#define GL_RG16_SNORM 0x8F99
-#define GL_RGB16_SNORM 0x8F9A
-#define GL_RGBA16_SNORM 0x8F9B
-#define GL_SIGNED_NORMALIZED 0x8F9C
-#define GL_PRIMITIVE_RESTART 0x8F9D
-#define GL_PRIMITIVE_RESTART_INDEX 0x8F9E
-#define GL_BUFFER_ACCESS_FLAGS 0x911F
-#define GL_BUFFER_MAP_LENGTH 0x9120
-#define GL_BUFFER_MAP_OFFSET 0x9121
-
-typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDPROC) (GLenum, GLint, GLsizei, GLsizei);
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDPROC) (GLenum, GLsizei, GLenum, const GLvoid*, GLsizei);
-typedef void (GLAPIENTRY * PFNGLPRIMITIVERESTARTINDEXPROC) (GLuint);
-typedef void (GLAPIENTRY * PFNGLTEXBUFFERPROC) (GLenum, GLenum, GLuint);
-
-#define glDrawArraysInstanced GLEW_GET_FUN(__glewDrawArraysInstanced)
-#define glDrawElementsInstanced GLEW_GET_FUN(__glewDrawElementsInstanced)
-#define glPrimitiveRestartIndex GLEW_GET_FUN(__glewPrimitiveRestartIndex)
-#define glTexBuffer GLEW_GET_FUN(__glewTexBuffer)
-
-#define GLEW_VERSION_3_1 GLEW_GET_VAR(__GLEW_VERSION_3_1)
-
-#endif /* GL_VERSION_3_1 */
-
-/* ----------------------------- GL_VERSION_3_2 ---------------------------- */
-
-#ifndef GL_VERSION_3_2
-#define GL_VERSION_3_2 1
-
-#define GL_CONTEXT_CORE_PROFILE_BIT 0x00000001
-#define GL_CONTEXT_COMPATIBILITY_PROFILE_BIT 0x00000002
-#define GL_LINES_ADJACENCY 0x000A
-#define GL_LINE_STRIP_ADJACENCY 0x000B
-#define GL_TRIANGLES_ADJACENCY 0x000C
-#define GL_TRIANGLE_STRIP_ADJACENCY 0x000D
-#define GL_PROGRAM_POINT_SIZE 0x8642
-#define GL_GEOMETRY_VERTICES_OUT 0x8916
-#define GL_GEOMETRY_INPUT_TYPE 0x8917
-#define GL_GEOMETRY_OUTPUT_TYPE 0x8918
-#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS 0x8C29
-#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED 0x8DA7
-#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS 0x8DA8
-#define GL_GEOMETRY_SHADER 0x8DD9
-#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS 0x8DDF
-#define GL_MAX_GEOMETRY_OUTPUT_VERTICES 0x8DE0
-#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS 0x8DE1
-#define GL_MAX_VERTEX_OUTPUT_COMPONENTS 0x9122
-#define GL_MAX_GEOMETRY_INPUT_COMPONENTS 0x9123
-#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS 0x9124
-#define GL_MAX_FRAGMENT_INPUT_COMPONENTS 0x9125
-#define GL_CONTEXT_PROFILE_MASK 0x9126
-
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREPROC) (GLenum, GLenum, GLuint, GLint);
-typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERI64VPROC) (GLenum, GLenum, GLint64 *);
-typedef void (GLAPIENTRY * PFNGLGETINTEGER64I_VPROC) (GLenum, GLuint, GLint64 *);
-
-#define glFramebufferTexture GLEW_GET_FUN(__glewFramebufferTexture)
-#define glGetBufferParameteri64v GLEW_GET_FUN(__glewGetBufferParameteri64v)
-#define glGetInteger64i_v GLEW_GET_FUN(__glewGetInteger64i_v)
-
-#define GLEW_VERSION_3_2 GLEW_GET_VAR(__GLEW_VERSION_3_2)
-
-#endif /* GL_VERSION_3_2 */
-
-/* ----------------------------- GL_VERSION_3_3 ---------------------------- */
-
-#ifndef GL_VERSION_3_3
-#define GL_VERSION_3_3 1
-
-#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR 0x88FE
-#define GL_ANY_SAMPLES_PASSED 0x8C2F
-#define GL_TEXTURE_SWIZZLE_R 0x8E42
-#define GL_TEXTURE_SWIZZLE_G 0x8E43
-#define GL_TEXTURE_SWIZZLE_B 0x8E44
-#define GL_TEXTURE_SWIZZLE_A 0x8E45
-#define GL_TEXTURE_SWIZZLE_RGBA 0x8E46
-#define GL_RGB10_A2UI 0x906F
-
-#define GLEW_VERSION_3_3 GLEW_GET_VAR(__GLEW_VERSION_3_3)
-
-#endif /* GL_VERSION_3_3 */
-
-/* ----------------------------- GL_VERSION_4_0 ---------------------------- */
-
-#ifndef GL_VERSION_4_0
-#define GL_VERSION_4_0 1
-
-#define GL_GEOMETRY_SHADER_INVOCATIONS 0x887F
-#define GL_SAMPLE_SHADING 0x8C36
-#define GL_MIN_SAMPLE_SHADING_VALUE 0x8C37
-#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS 0x8E5A
-#define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET 0x8E5B
-#define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET 0x8E5C
-#define GL_FRAGMENT_INTERPOLATION_OFFSET_BITS 0x8E5D
-#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5E
-#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5F
-#define GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS 0x8F9F
-#define GL_TEXTURE_CUBE_MAP_ARRAY 0x9009
-#define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY 0x900A
-#define GL_PROXY_TEXTURE_CUBE_MAP_ARRAY 0x900B
-#define GL_SAMPLER_CUBE_MAP_ARRAY 0x900C
-#define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW 0x900D
-#define GL_INT_SAMPLER_CUBE_MAP_ARRAY 0x900E
-#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY 0x900F
-
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEIPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONIPROC) (GLuint buf, GLenum mode);
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEIPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCIPROC) (GLuint buf, GLenum src, GLenum dst);
-typedef void (GLAPIENTRY * PFNGLMINSAMPLESHADINGPROC) (GLclampf value);
-
-#define glBlendEquationSeparatei GLEW_GET_FUN(__glewBlendEquationSeparatei)
-#define glBlendEquationi GLEW_GET_FUN(__glewBlendEquationi)
-#define glBlendFuncSeparatei GLEW_GET_FUN(__glewBlendFuncSeparatei)
-#define glBlendFunci GLEW_GET_FUN(__glewBlendFunci)
-#define glMinSampleShading GLEW_GET_FUN(__glewMinSampleShading)
-
-#define GLEW_VERSION_4_0 GLEW_GET_VAR(__GLEW_VERSION_4_0)
-
-#endif /* GL_VERSION_4_0 */
-
-/* -------------------------- GL_3DFX_multisample -------------------------- */
-
-#ifndef GL_3DFX_multisample
-#define GL_3DFX_multisample 1
-
-#define GL_MULTISAMPLE_3DFX 0x86B2
-#define GL_SAMPLE_BUFFERS_3DFX 0x86B3
-#define GL_SAMPLES_3DFX 0x86B4
-#define GL_MULTISAMPLE_BIT_3DFX 0x20000000
-
-#define GLEW_3DFX_multisample GLEW_GET_VAR(__GLEW_3DFX_multisample)
-
-#endif /* GL_3DFX_multisample */
-
-/* ---------------------------- GL_3DFX_tbuffer ---------------------------- */
-
-#ifndef GL_3DFX_tbuffer
-#define GL_3DFX_tbuffer 1
-
-typedef void (GLAPIENTRY * PFNGLTBUFFERMASK3DFXPROC) (GLuint mask);
-
-#define glTbufferMask3DFX GLEW_GET_FUN(__glewTbufferMask3DFX)
-
-#define GLEW_3DFX_tbuffer GLEW_GET_VAR(__GLEW_3DFX_tbuffer)
-
-#endif /* GL_3DFX_tbuffer */
-
-/* -------------------- GL_3DFX_texture_compression_FXT1 ------------------- */
-
-#ifndef GL_3DFX_texture_compression_FXT1
-#define GL_3DFX_texture_compression_FXT1 1
-
-#define GL_COMPRESSED_RGB_FXT1_3DFX 0x86B0
-#define GL_COMPRESSED_RGBA_FXT1_3DFX 0x86B1
-
-#define GLEW_3DFX_texture_compression_FXT1 GLEW_GET_VAR(__GLEW_3DFX_texture_compression_FXT1)
-
-#endif /* GL_3DFX_texture_compression_FXT1 */
-
-/* ----------------------- GL_AMD_conservative_depth ----------------------- */
-
-#ifndef GL_AMD_conservative_depth
-#define GL_AMD_conservative_depth 1
-
-#define GLEW_AMD_conservative_depth GLEW_GET_VAR(__GLEW_AMD_conservative_depth)
-
-#endif /* GL_AMD_conservative_depth */
-
-/* ----------------------- GL_AMD_draw_buffers_blend ----------------------- */
-
-#ifndef GL_AMD_draw_buffers_blend
-#define GL_AMD_draw_buffers_blend 1
-
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONINDEXEDAMDPROC) (GLuint buf, GLenum mode);
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCINDEXEDAMDPROC) (GLuint buf, GLenum src, GLenum dst);
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
-
-#define glBlendEquationIndexedAMD GLEW_GET_FUN(__glewBlendEquationIndexedAMD)
-#define glBlendEquationSeparateIndexedAMD GLEW_GET_FUN(__glewBlendEquationSeparateIndexedAMD)
-#define glBlendFuncIndexedAMD GLEW_GET_FUN(__glewBlendFuncIndexedAMD)
-#define glBlendFuncSeparateIndexedAMD GLEW_GET_FUN(__glewBlendFuncSeparateIndexedAMD)
-
-#define GLEW_AMD_draw_buffers_blend GLEW_GET_VAR(__GLEW_AMD_draw_buffers_blend)
-
-#endif /* GL_AMD_draw_buffers_blend */
-
-/* ----------------------- GL_AMD_performance_monitor ---------------------- */
-
-#ifndef GL_AMD_performance_monitor
-#define GL_AMD_performance_monitor 1
-
-#define GL_UNSIGNED_INT 0x1405
-#define GL_FLOAT 0x1406
-#define GL_COUNTER_TYPE_AMD 0x8BC0
-#define GL_COUNTER_RANGE_AMD 0x8BC1
-#define GL_UNSIGNED_INT64_AMD 0x8BC2
-#define GL_PERCENTAGE_AMD 0x8BC3
-#define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4
-#define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5
-#define GL_PERFMON_RESULT_AMD 0x8BC6
-
-typedef void (GLAPIENTRY * PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor);
-typedef void (GLAPIENTRY * PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint* monitors);
-typedef void (GLAPIENTRY * PFNGLENDPERFMONITORAMDPROC) (GLuint monitor);
-typedef void (GLAPIENTRY * PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint* monitors);
-typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint* data, GLint *bytesWritten);
-typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, void* data);
-typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei* length, char *counterString);
-typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint* numCounters, GLint *maxActiveCounters, GLsizei countersSize, GLuint *counters);
-typedef void (GLAPIENTRY * PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei* length, char *groupString);
-typedef void (GLAPIENTRY * PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint* numGroups, GLsizei groupsSize, GLuint *groups);
-typedef void (GLAPIENTRY * PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint* counterList);
-
-#define glBeginPerfMonitorAMD GLEW_GET_FUN(__glewBeginPerfMonitorAMD)
-#define glDeletePerfMonitorsAMD GLEW_GET_FUN(__glewDeletePerfMonitorsAMD)
-#define glEndPerfMonitorAMD GLEW_GET_FUN(__glewEndPerfMonitorAMD)
-#define glGenPerfMonitorsAMD GLEW_GET_FUN(__glewGenPerfMonitorsAMD)
-#define glGetPerfMonitorCounterDataAMD GLEW_GET_FUN(__glewGetPerfMonitorCounterDataAMD)
-#define glGetPerfMonitorCounterInfoAMD GLEW_GET_FUN(__glewGetPerfMonitorCounterInfoAMD)
-#define glGetPerfMonitorCounterStringAMD GLEW_GET_FUN(__glewGetPerfMonitorCounterStringAMD)
-#define glGetPerfMonitorCountersAMD GLEW_GET_FUN(__glewGetPerfMonitorCountersAMD)
-#define glGetPerfMonitorGroupStringAMD GLEW_GET_FUN(__glewGetPerfMonitorGroupStringAMD)
-#define glGetPerfMonitorGroupsAMD GLEW_GET_FUN(__glewGetPerfMonitorGroupsAMD)
-#define glSelectPerfMonitorCountersAMD GLEW_GET_FUN(__glewSelectPerfMonitorCountersAMD)
-
-#define GLEW_AMD_performance_monitor GLEW_GET_VAR(__GLEW_AMD_performance_monitor)
-
-#endif /* GL_AMD_performance_monitor */
-
-/* ------------------ GL_AMD_seamless_cubemap_per_texture ------------------ */
-
-#ifndef GL_AMD_seamless_cubemap_per_texture
-#define GL_AMD_seamless_cubemap_per_texture 1
-
-#define GL_TEXTURE_CUBE_MAP_SEAMLESS_ARB 0x884F
-
-#define GLEW_AMD_seamless_cubemap_per_texture GLEW_GET_VAR(__GLEW_AMD_seamless_cubemap_per_texture)
-
-#endif /* GL_AMD_seamless_cubemap_per_texture */
-
-/* ---------------------- GL_AMD_shader_stencil_export --------------------- */
-
-#ifndef GL_AMD_shader_stencil_export
-#define GL_AMD_shader_stencil_export 1
-
-#define GLEW_AMD_shader_stencil_export GLEW_GET_VAR(__GLEW_AMD_shader_stencil_export)
-
-#endif /* GL_AMD_shader_stencil_export */
-
-/* ------------------------ GL_AMD_texture_texture4 ------------------------ */
-
-#ifndef GL_AMD_texture_texture4
-#define GL_AMD_texture_texture4 1
-
-#define GLEW_AMD_texture_texture4 GLEW_GET_VAR(__GLEW_AMD_texture_texture4)
-
-#endif /* GL_AMD_texture_texture4 */
-
-/* -------------------- GL_AMD_vertex_shader_tessellator ------------------- */
-
-#ifndef GL_AMD_vertex_shader_tessellator
-#define GL_AMD_vertex_shader_tessellator 1
-
-#define GL_SAMPLER_BUFFER_AMD 0x9001
-#define GL_INT_SAMPLER_BUFFER_AMD 0x9002
-#define GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD 0x9003
-#define GL_TESSELLATION_MODE_AMD 0x9004
-#define GL_TESSELLATION_FACTOR_AMD 0x9005
-#define GL_DISCRETE_AMD 0x9006
-#define GL_CONTINUOUS_AMD 0x9007
-
-typedef void (GLAPIENTRY * PFNGLTESSELLATIONFACTORAMDPROC) (GLfloat factor);
-typedef void (GLAPIENTRY * PFNGLTESSELLATIONMODEAMDPROC) (GLenum mode);
-
-#define glTessellationFactorAMD GLEW_GET_FUN(__glewTessellationFactorAMD)
-#define glTessellationModeAMD GLEW_GET_FUN(__glewTessellationModeAMD)
-
-#define GLEW_AMD_vertex_shader_tessellator GLEW_GET_VAR(__GLEW_AMD_vertex_shader_tessellator)
-
-#endif /* GL_AMD_vertex_shader_tessellator */
-
-/* ----------------------- GL_APPLE_aux_depth_stencil ---------------------- */
-
-#ifndef GL_APPLE_aux_depth_stencil
-#define GL_APPLE_aux_depth_stencil 1
-
-#define GL_AUX_DEPTH_STENCIL_APPLE 0x8A14
-
-#define GLEW_APPLE_aux_depth_stencil GLEW_GET_VAR(__GLEW_APPLE_aux_depth_stencil)
-
-#endif /* GL_APPLE_aux_depth_stencil */
-
-/* ------------------------ GL_APPLE_client_storage ------------------------ */
-
-#ifndef GL_APPLE_client_storage
-#define GL_APPLE_client_storage 1
-
-#define GL_UNPACK_CLIENT_STORAGE_APPLE 0x85B2
-
-#define GLEW_APPLE_client_storage GLEW_GET_VAR(__GLEW_APPLE_client_storage)
-
-#endif /* GL_APPLE_client_storage */
-
-/* ------------------------- GL_APPLE_element_array ------------------------ */
-
-#ifndef GL_APPLE_element_array
-#define GL_APPLE_element_array 1
-
-#define GL_ELEMENT_ARRAY_APPLE 0x8A0C
-#define GL_ELEMENT_ARRAY_TYPE_APPLE 0x8A0D
-#define GL_ELEMENT_ARRAY_POINTER_APPLE 0x8A0E
-
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, GLint first, GLsizei count);
-typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count);
-typedef void (GLAPIENTRY * PFNGLELEMENTPOINTERAPPLEPROC) (GLenum type, const void* pointer);
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, const GLint* first, const GLsizei *count, GLsizei primcount);
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, const GLint* first, const GLsizei *count, GLsizei primcount);
-
-#define glDrawElementArrayAPPLE GLEW_GET_FUN(__glewDrawElementArrayAPPLE)
-#define glDrawRangeElementArrayAPPLE GLEW_GET_FUN(__glewDrawRangeElementArrayAPPLE)
-#define glElementPointerAPPLE GLEW_GET_FUN(__glewElementPointerAPPLE)
-#define glMultiDrawElementArrayAPPLE GLEW_GET_FUN(__glewMultiDrawElementArrayAPPLE)
-#define glMultiDrawRangeElementArrayAPPLE GLEW_GET_FUN(__glewMultiDrawRangeElementArrayAPPLE)
-
-#define GLEW_APPLE_element_array GLEW_GET_VAR(__GLEW_APPLE_element_array)
-
-#endif /* GL_APPLE_element_array */
-
-/* ----------------------------- GL_APPLE_fence ---------------------------- */
-
-#ifndef GL_APPLE_fence
-#define GL_APPLE_fence 1
-
-#define GL_DRAW_PIXELS_APPLE 0x8A0A
-#define GL_FENCE_APPLE 0x8A0B
-
-typedef void (GLAPIENTRY * PFNGLDELETEFENCESAPPLEPROC) (GLsizei n, const GLuint* fences);
-typedef void (GLAPIENTRY * PFNGLFINISHFENCEAPPLEPROC) (GLuint fence);
-typedef void (GLAPIENTRY * PFNGLFINISHOBJECTAPPLEPROC) (GLenum object, GLint name);
-typedef void (GLAPIENTRY * PFNGLGENFENCESAPPLEPROC) (GLsizei n, GLuint* fences);
-typedef GLboolean (GLAPIENTRY * PFNGLISFENCEAPPLEPROC) (GLuint fence);
-typedef void (GLAPIENTRY * PFNGLSETFENCEAPPLEPROC) (GLuint fence);
-typedef GLboolean (GLAPIENTRY * PFNGLTESTFENCEAPPLEPROC) (GLuint fence);
-typedef GLboolean (GLAPIENTRY * PFNGLTESTOBJECTAPPLEPROC) (GLenum object, GLuint name);
-
-#define glDeleteFencesAPPLE GLEW_GET_FUN(__glewDeleteFencesAPPLE)
-#define glFinishFenceAPPLE GLEW_GET_FUN(__glewFinishFenceAPPLE)
-#define glFinishObjectAPPLE GLEW_GET_FUN(__glewFinishObjectAPPLE)
-#define glGenFencesAPPLE GLEW_GET_FUN(__glewGenFencesAPPLE)
-#define glIsFenceAPPLE GLEW_GET_FUN(__glewIsFenceAPPLE)
-#define glSetFenceAPPLE GLEW_GET_FUN(__glewSetFenceAPPLE)
-#define glTestFenceAPPLE GLEW_GET_FUN(__glewTestFenceAPPLE)
-#define glTestObjectAPPLE GLEW_GET_FUN(__glewTestObjectAPPLE)
-
-#define GLEW_APPLE_fence GLEW_GET_VAR(__GLEW_APPLE_fence)
-
-#endif /* GL_APPLE_fence */
-
-/* ------------------------- GL_APPLE_float_pixels ------------------------- */
-
-#ifndef GL_APPLE_float_pixels
-#define GL_APPLE_float_pixels 1
-
-#define GL_HALF_APPLE 0x140B
-#define GL_RGBA_FLOAT32_APPLE 0x8814
-#define GL_RGB_FLOAT32_APPLE 0x8815
-#define GL_ALPHA_FLOAT32_APPLE 0x8816
-#define GL_INTENSITY_FLOAT32_APPLE 0x8817
-#define GL_LUMINANCE_FLOAT32_APPLE 0x8818
-#define GL_LUMINANCE_ALPHA_FLOAT32_APPLE 0x8819
-#define GL_RGBA_FLOAT16_APPLE 0x881A
-#define GL_RGB_FLOAT16_APPLE 0x881B
-#define GL_ALPHA_FLOAT16_APPLE 0x881C
-#define GL_INTENSITY_FLOAT16_APPLE 0x881D
-#define GL_LUMINANCE_FLOAT16_APPLE 0x881E
-#define GL_LUMINANCE_ALPHA_FLOAT16_APPLE 0x881F
-#define GL_COLOR_FLOAT_APPLE 0x8A0F
-
-#define GLEW_APPLE_float_pixels GLEW_GET_VAR(__GLEW_APPLE_float_pixels)
-
-#endif /* GL_APPLE_float_pixels */
-
-/* ---------------------- GL_APPLE_flush_buffer_range ---------------------- */
-
-#ifndef GL_APPLE_flush_buffer_range
-#define GL_APPLE_flush_buffer_range 1
-
-#define GL_BUFFER_SERIALIZED_MODIFY_APPLE 0x8A12
-#define GL_BUFFER_FLUSHING_UNMAP_APPLE 0x8A13
-
-typedef void (GLAPIENTRY * PFNGLBUFFERPARAMETERIAPPLEPROC) (GLenum target, GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC) (GLenum target, GLintptr offset, GLsizeiptr size);
-
-#define glBufferParameteriAPPLE GLEW_GET_FUN(__glewBufferParameteriAPPLE)
-#define glFlushMappedBufferRangeAPPLE GLEW_GET_FUN(__glewFlushMappedBufferRangeAPPLE)
-
-#define GLEW_APPLE_flush_buffer_range GLEW_GET_VAR(__GLEW_APPLE_flush_buffer_range)
-
-#endif /* GL_APPLE_flush_buffer_range */
-
-/* ----------------------- GL_APPLE_object_purgeable ----------------------- */
-
-#ifndef GL_APPLE_object_purgeable
-#define GL_APPLE_object_purgeable 1
-
-#define GL_BUFFER_OBJECT_APPLE 0x85B3
-#define GL_RELEASED_APPLE 0x8A19
-#define GL_VOLATILE_APPLE 0x8A1A
-#define GL_RETAINED_APPLE 0x8A1B
-#define GL_UNDEFINED_APPLE 0x8A1C
-#define GL_PURGEABLE_APPLE 0x8A1D
-
-typedef void (GLAPIENTRY * PFNGLGETOBJECTPARAMETERIVAPPLEPROC) (GLenum objectType, GLuint name, GLenum pname, GLint* params);
-typedef GLenum (GLAPIENTRY * PFNGLOBJECTPURGEABLEAPPLEPROC) (GLenum objectType, GLuint name, GLenum option);
-typedef GLenum (GLAPIENTRY * PFNGLOBJECTUNPURGEABLEAPPLEPROC) (GLenum objectType, GLuint name, GLenum option);
-
-#define glGetObjectParameterivAPPLE GLEW_GET_FUN(__glewGetObjectParameterivAPPLE)
-#define glObjectPurgeableAPPLE GLEW_GET_FUN(__glewObjectPurgeableAPPLE)
-#define glObjectUnpurgeableAPPLE GLEW_GET_FUN(__glewObjectUnpurgeableAPPLE)
-
-#define GLEW_APPLE_object_purgeable GLEW_GET_VAR(__GLEW_APPLE_object_purgeable)
-
-#endif /* GL_APPLE_object_purgeable */
-
-/* ------------------------- GL_APPLE_pixel_buffer ------------------------- */
-
-#ifndef GL_APPLE_pixel_buffer
-#define GL_APPLE_pixel_buffer 1
-
-#define GL_MIN_PBUFFER_VIEWPORT_DIMS_APPLE 0x8A10
-
-#define GLEW_APPLE_pixel_buffer GLEW_GET_VAR(__GLEW_APPLE_pixel_buffer)
-
-#endif /* GL_APPLE_pixel_buffer */
-
-/* ---------------------------- GL_APPLE_rgb_422 --------------------------- */
-
-#ifndef GL_APPLE_rgb_422
-#define GL_APPLE_rgb_422 1
-
-#define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
-#define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
-#define GL_RGB_422_APPLE 0x8A1F
-
-#define GLEW_APPLE_rgb_422 GLEW_GET_VAR(__GLEW_APPLE_rgb_422)
-
-#endif /* GL_APPLE_rgb_422 */
-
-/* --------------------------- GL_APPLE_row_bytes -------------------------- */
-
-#ifndef GL_APPLE_row_bytes
-#define GL_APPLE_row_bytes 1
-
-#define GL_PACK_ROW_BYTES_APPLE 0x8A15
-#define GL_UNPACK_ROW_BYTES_APPLE 0x8A16
-
-#define GLEW_APPLE_row_bytes GLEW_GET_VAR(__GLEW_APPLE_row_bytes)
-
-#endif /* GL_APPLE_row_bytes */
-
-/* ------------------------ GL_APPLE_specular_vector ----------------------- */
-
-#ifndef GL_APPLE_specular_vector
-#define GL_APPLE_specular_vector 1
-
-#define GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE 0x85B0
-
-#define GLEW_APPLE_specular_vector GLEW_GET_VAR(__GLEW_APPLE_specular_vector)
-
-#endif /* GL_APPLE_specular_vector */
-
-/* ------------------------- GL_APPLE_texture_range ------------------------ */
-
-#ifndef GL_APPLE_texture_range
-#define GL_APPLE_texture_range 1
-
-#define GL_TEXTURE_RANGE_LENGTH_APPLE 0x85B7
-#define GL_TEXTURE_RANGE_POINTER_APPLE 0x85B8
-#define GL_TEXTURE_STORAGE_HINT_APPLE 0x85BC
-#define GL_STORAGE_PRIVATE_APPLE 0x85BD
-#define GL_STORAGE_CACHED_APPLE 0x85BE
-#define GL_STORAGE_SHARED_APPLE 0x85BF
-
-typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC) (GLenum target, GLenum pname, GLvoid **params);
-typedef void (GLAPIENTRY * PFNGLTEXTURERANGEAPPLEPROC) (GLenum target, GLsizei length, GLvoid *pointer);
-
-#define glGetTexParameterPointervAPPLE GLEW_GET_FUN(__glewGetTexParameterPointervAPPLE)
-#define glTextureRangeAPPLE GLEW_GET_FUN(__glewTextureRangeAPPLE)
-
-#define GLEW_APPLE_texture_range GLEW_GET_VAR(__GLEW_APPLE_texture_range)
-
-#endif /* GL_APPLE_texture_range */
-
-/* ------------------------ GL_APPLE_transform_hint ------------------------ */
-
-#ifndef GL_APPLE_transform_hint
-#define GL_APPLE_transform_hint 1
-
-#define GL_TRANSFORM_HINT_APPLE 0x85B1
-
-#define GLEW_APPLE_transform_hint GLEW_GET_VAR(__GLEW_APPLE_transform_hint)
-
-#endif /* GL_APPLE_transform_hint */
-
-/* ---------------------- GL_APPLE_vertex_array_object --------------------- */
-
-#ifndef GL_APPLE_vertex_array_object
-#define GL_APPLE_vertex_array_object 1
-
-#define GL_VERTEX_ARRAY_BINDING_APPLE 0x85B5
-
-typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYAPPLEPROC) (GLuint array);
-typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYSAPPLEPROC) (GLsizei n, const GLuint* arrays);
-typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYSAPPLEPROC) (GLsizei n, const GLuint* arrays);
-typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXARRAYAPPLEPROC) (GLuint array);
-
-#define glBindVertexArrayAPPLE GLEW_GET_FUN(__glewBindVertexArrayAPPLE)
-#define glDeleteVertexArraysAPPLE GLEW_GET_FUN(__glewDeleteVertexArraysAPPLE)
-#define glGenVertexArraysAPPLE GLEW_GET_FUN(__glewGenVertexArraysAPPLE)
-#define glIsVertexArrayAPPLE GLEW_GET_FUN(__glewIsVertexArrayAPPLE)
-
-#define GLEW_APPLE_vertex_array_object GLEW_GET_VAR(__GLEW_APPLE_vertex_array_object)
-
-#endif /* GL_APPLE_vertex_array_object */
-
-/* ---------------------- GL_APPLE_vertex_array_range ---------------------- */
-
-#ifndef GL_APPLE_vertex_array_range
-#define GL_APPLE_vertex_array_range 1
-
-#define GL_VERTEX_ARRAY_RANGE_APPLE 0x851D
-#define GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE 0x851E
-#define GL_VERTEX_ARRAY_STORAGE_HINT_APPLE 0x851F
-#define GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_APPLE 0x8520
-#define GL_VERTEX_ARRAY_RANGE_POINTER_APPLE 0x8521
-#define GL_STORAGE_CLIENT_APPLE 0x85B4
-#define GL_STORAGE_CACHED_APPLE 0x85BE
-#define GL_STORAGE_SHARED_APPLE 0x85BF
-
-typedef void (GLAPIENTRY * PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, void* pointer);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYPARAMETERIAPPLEPROC) (GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, void* pointer);
-
-#define glFlushVertexArrayRangeAPPLE GLEW_GET_FUN(__glewFlushVertexArrayRangeAPPLE)
-#define glVertexArrayParameteriAPPLE GLEW_GET_FUN(__glewVertexArrayParameteriAPPLE)
-#define glVertexArrayRangeAPPLE GLEW_GET_FUN(__glewVertexArrayRangeAPPLE)
-
-#define GLEW_APPLE_vertex_array_range GLEW_GET_VAR(__GLEW_APPLE_vertex_array_range)
-
-#endif /* GL_APPLE_vertex_array_range */
-
-/* ------------------- GL_APPLE_vertex_program_evaluators ------------------ */
-
-#ifndef GL_APPLE_vertex_program_evaluators
-#define GL_APPLE_vertex_program_evaluators 1
-
-#define GL_VERTEX_ATTRIB_MAP1_APPLE 0x8A00
-#define GL_VERTEX_ATTRIB_MAP2_APPLE 0x8A01
-#define GL_VERTEX_ATTRIB_MAP1_SIZE_APPLE 0x8A02
-#define GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE 0x8A03
-#define GL_VERTEX_ATTRIB_MAP1_ORDER_APPLE 0x8A04
-#define GL_VERTEX_ATTRIB_MAP1_DOMAIN_APPLE 0x8A05
-#define GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE 0x8A06
-#define GL_VERTEX_ATTRIB_MAP2_COEFF_APPLE 0x8A07
-#define GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE 0x8A08
-#define GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE 0x8A09
-
-typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBAPPLEPROC) (GLuint index, GLenum pname);
-typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBAPPLEPROC) (GLuint index, GLenum pname);
-typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXATTRIBENABLEDAPPLEPROC) (GLuint index, GLenum pname);
-typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB1DAPPLEPROC) (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble* points);
-typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB1FAPPLEPROC) (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat* points);
-typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB2DAPPLEPROC) (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble* points);
-typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB2FAPPLEPROC) (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat* points);
-
-#define glDisableVertexAttribAPPLE GLEW_GET_FUN(__glewDisableVertexAttribAPPLE)
-#define glEnableVertexAttribAPPLE GLEW_GET_FUN(__glewEnableVertexAttribAPPLE)
-#define glIsVertexAttribEnabledAPPLE GLEW_GET_FUN(__glewIsVertexAttribEnabledAPPLE)
-#define glMapVertexAttrib1dAPPLE GLEW_GET_FUN(__glewMapVertexAttrib1dAPPLE)
-#define glMapVertexAttrib1fAPPLE GLEW_GET_FUN(__glewMapVertexAttrib1fAPPLE)
-#define glMapVertexAttrib2dAPPLE GLEW_GET_FUN(__glewMapVertexAttrib2dAPPLE)
-#define glMapVertexAttrib2fAPPLE GLEW_GET_FUN(__glewMapVertexAttrib2fAPPLE)
-
-#define GLEW_APPLE_vertex_program_evaluators GLEW_GET_VAR(__GLEW_APPLE_vertex_program_evaluators)
-
-#endif /* GL_APPLE_vertex_program_evaluators */
-
-/* --------------------------- GL_APPLE_ycbcr_422 -------------------------- */
-
-#ifndef GL_APPLE_ycbcr_422
-#define GL_APPLE_ycbcr_422 1
-
-#define GL_YCBCR_422_APPLE 0x85B9
-#define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
-#define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
-
-#define GLEW_APPLE_ycbcr_422 GLEW_GET_VAR(__GLEW_APPLE_ycbcr_422)
-
-#endif /* GL_APPLE_ycbcr_422 */
-
-/* ----------------------- GL_ARB_blend_func_extended ---------------------- */
-
-#ifndef GL_ARB_blend_func_extended
-#define GL_ARB_blend_func_extended 1
-
-#define GL_SRC1_COLOR 0x88F9
-#define GL_ONE_MINUS_SRC1_COLOR 0x88FA
-#define GL_ONE_MINUS_SRC1_ALPHA 0x88FB
-#define GL_MAX_DUAL_SOURCE_DRAW_BUFFERS 0x88FC
-
-typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONINDEXEDPROC) (GLuint program, GLuint colorNumber, GLuint index, const char * name);
-typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATAINDEXPROC) (GLuint program, const char * name);
-
-#define glBindFragDataLocationIndexed GLEW_GET_FUN(__glewBindFragDataLocationIndexed)
-#define glGetFragDataIndex GLEW_GET_FUN(__glewGetFragDataIndex)
-
-#define GLEW_ARB_blend_func_extended GLEW_GET_VAR(__GLEW_ARB_blend_func_extended)
-
-#endif /* GL_ARB_blend_func_extended */
-
-/* ----------------------- GL_ARB_color_buffer_float ----------------------- */
-
-#ifndef GL_ARB_color_buffer_float
-#define GL_ARB_color_buffer_float 1
-
-#define GL_RGBA_FLOAT_MODE_ARB 0x8820
-#define GL_CLAMP_VERTEX_COLOR_ARB 0x891A
-#define GL_CLAMP_FRAGMENT_COLOR_ARB 0x891B
-#define GL_CLAMP_READ_COLOR_ARB 0x891C
-#define GL_FIXED_ONLY_ARB 0x891D
-
-typedef void (GLAPIENTRY * PFNGLCLAMPCOLORARBPROC) (GLenum target, GLenum clamp);
-
-#define glClampColorARB GLEW_GET_FUN(__glewClampColorARB)
-
-#define GLEW_ARB_color_buffer_float GLEW_GET_VAR(__GLEW_ARB_color_buffer_float)
-
-#endif /* GL_ARB_color_buffer_float */
-
-/* -------------------------- GL_ARB_compatibility ------------------------- */
-
-#ifndef GL_ARB_compatibility
-#define GL_ARB_compatibility 1
-
-#define GLEW_ARB_compatibility GLEW_GET_VAR(__GLEW_ARB_compatibility)
-
-#endif /* GL_ARB_compatibility */
-
-/* --------------------------- GL_ARB_copy_buffer -------------------------- */
-
-#ifndef GL_ARB_copy_buffer
-#define GL_ARB_copy_buffer 1
-
-#define GL_COPY_READ_BUFFER 0x8F36
-#define GL_COPY_WRITE_BUFFER 0x8F37
-
-typedef void (GLAPIENTRY * PFNGLCOPYBUFFERSUBDATAPROC) (GLenum readtarget, GLenum writetarget, GLintptr readoffset, GLintptr writeoffset, GLsizeiptr size);
-
-#define glCopyBufferSubData GLEW_GET_FUN(__glewCopyBufferSubData)
-
-#define GLEW_ARB_copy_buffer GLEW_GET_VAR(__GLEW_ARB_copy_buffer)
-
-#endif /* GL_ARB_copy_buffer */
-
-/* ----------------------- GL_ARB_depth_buffer_float ----------------------- */
-
-#ifndef GL_ARB_depth_buffer_float
-#define GL_ARB_depth_buffer_float 1
-
-#define GL_DEPTH_COMPONENT32F 0x8CAC
-#define GL_DEPTH32F_STENCIL8 0x8CAD
-#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV 0x8DAD
-
-#define GLEW_ARB_depth_buffer_float GLEW_GET_VAR(__GLEW_ARB_depth_buffer_float)
-
-#endif /* GL_ARB_depth_buffer_float */
-
-/* --------------------------- GL_ARB_depth_clamp -------------------------- */
-
-#ifndef GL_ARB_depth_clamp
-#define GL_ARB_depth_clamp 1
-
-#define GL_DEPTH_CLAMP 0x864F
-
-#define GLEW_ARB_depth_clamp GLEW_GET_VAR(__GLEW_ARB_depth_clamp)
-
-#endif /* GL_ARB_depth_clamp */
-
-/* -------------------------- GL_ARB_depth_texture ------------------------- */
-
-#ifndef GL_ARB_depth_texture
-#define GL_ARB_depth_texture 1
-
-#define GL_DEPTH_COMPONENT16_ARB 0x81A5
-#define GL_DEPTH_COMPONENT24_ARB 0x81A6
-#define GL_DEPTH_COMPONENT32_ARB 0x81A7
-#define GL_TEXTURE_DEPTH_SIZE_ARB 0x884A
-#define GL_DEPTH_TEXTURE_MODE_ARB 0x884B
-
-#define GLEW_ARB_depth_texture GLEW_GET_VAR(__GLEW_ARB_depth_texture)
-
-#endif /* GL_ARB_depth_texture */
-
-/* -------------------------- GL_ARB_draw_buffers -------------------------- */
-
-#ifndef GL_ARB_draw_buffers
-#define GL_ARB_draw_buffers 1
-
-#define GL_MAX_DRAW_BUFFERS_ARB 0x8824
-#define GL_DRAW_BUFFER0_ARB 0x8825
-#define GL_DRAW_BUFFER1_ARB 0x8826
-#define GL_DRAW_BUFFER2_ARB 0x8827
-#define GL_DRAW_BUFFER3_ARB 0x8828
-#define GL_DRAW_BUFFER4_ARB 0x8829
-#define GL_DRAW_BUFFER5_ARB 0x882A
-#define GL_DRAW_BUFFER6_ARB 0x882B
-#define GL_DRAW_BUFFER7_ARB 0x882C
-#define GL_DRAW_BUFFER8_ARB 0x882D
-#define GL_DRAW_BUFFER9_ARB 0x882E
-#define GL_DRAW_BUFFER10_ARB 0x882F
-#define GL_DRAW_BUFFER11_ARB 0x8830
-#define GL_DRAW_BUFFER12_ARB 0x8831
-#define GL_DRAW_BUFFER13_ARB 0x8832
-#define GL_DRAW_BUFFER14_ARB 0x8833
-#define GL_DRAW_BUFFER15_ARB 0x8834
-
-typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSARBPROC) (GLsizei n, const GLenum* bufs);
-
-#define glDrawBuffersARB GLEW_GET_FUN(__glewDrawBuffersARB)
-
-#define GLEW_ARB_draw_buffers GLEW_GET_VAR(__GLEW_ARB_draw_buffers)
-
-#endif /* GL_ARB_draw_buffers */
-
-/* ----------------------- GL_ARB_draw_buffers_blend ----------------------- */
-
-#ifndef GL_ARB_draw_buffers_blend
-#define GL_ARB_draw_buffers_blend 1
-
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEIARBPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONIARBPROC) (GLuint buf, GLenum mode);
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEIARBPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCIARBPROC) (GLuint buf, GLenum src, GLenum dst);
-
-#define glBlendEquationSeparateiARB GLEW_GET_FUN(__glewBlendEquationSeparateiARB)
-#define glBlendEquationiARB GLEW_GET_FUN(__glewBlendEquationiARB)
-#define glBlendFuncSeparateiARB GLEW_GET_FUN(__glewBlendFuncSeparateiARB)
-#define glBlendFunciARB GLEW_GET_FUN(__glewBlendFunciARB)
-
-#define GLEW_ARB_draw_buffers_blend GLEW_GET_VAR(__GLEW_ARB_draw_buffers_blend)
-
-#endif /* GL_ARB_draw_buffers_blend */
-
-/* -------------------- GL_ARB_draw_elements_base_vertex ------------------- */
-
-#ifndef GL_ARB_draw_elements_base_vertex
-#define GL_ARB_draw_elements_base_vertex 1
-
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, void* indices, GLint basevertex);
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount, GLint basevertex);
-typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, void* indices, GLint basevertex);
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, GLsizei* count, GLenum type, GLvoid**indices, GLsizei primcount, GLint *basevertex);
-
-#define glDrawElementsBaseVertex GLEW_GET_FUN(__glewDrawElementsBaseVertex)
-#define glDrawElementsInstancedBaseVertex GLEW_GET_FUN(__glewDrawElementsInstancedBaseVertex)
-#define glDrawRangeElementsBaseVertex GLEW_GET_FUN(__glewDrawRangeElementsBaseVertex)
-#define glMultiDrawElementsBaseVertex GLEW_GET_FUN(__glewMultiDrawElementsBaseVertex)
-
-#define GLEW_ARB_draw_elements_base_vertex GLEW_GET_VAR(__GLEW_ARB_draw_elements_base_vertex)
-
-#endif /* GL_ARB_draw_elements_base_vertex */
-
-/* -------------------------- GL_ARB_draw_indirect ------------------------- */
-
-#ifndef GL_ARB_draw_indirect
-#define GL_ARB_draw_indirect 1
-
-#define GL_DRAW_INDIRECT_BUFFER 0x8F3F
-#define GL_DRAW_INDIRECT_BUFFER_BINDING 0x8F43
-
-typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINDIRECTPROC) (GLenum mode, const void* indirect);
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINDIRECTPROC) (GLenum mode, GLenum type, const void* indirect);
-
-#define glDrawArraysIndirect GLEW_GET_FUN(__glewDrawArraysIndirect)
-#define glDrawElementsIndirect GLEW_GET_FUN(__glewDrawElementsIndirect)
-
-#define GLEW_ARB_draw_indirect GLEW_GET_VAR(__GLEW_ARB_draw_indirect)
-
-#endif /* GL_ARB_draw_indirect */
-
-/* ------------------------- GL_ARB_draw_instanced ------------------------- */
-
-#ifndef GL_ARB_draw_instanced
-#define GL_ARB_draw_instanced 1
-
-typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDARBPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDARBPROC) (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount);
-
-#define glDrawArraysInstancedARB GLEW_GET_FUN(__glewDrawArraysInstancedARB)
-#define glDrawElementsInstancedARB GLEW_GET_FUN(__glewDrawElementsInstancedARB)
-
-#define GLEW_ARB_draw_instanced GLEW_GET_VAR(__GLEW_ARB_draw_instanced)
-
-#endif /* GL_ARB_draw_instanced */
-
-/* -------------------- GL_ARB_explicit_attrib_location -------------------- */
-
-#ifndef GL_ARB_explicit_attrib_location
-#define GL_ARB_explicit_attrib_location 1
-
-#define GLEW_ARB_explicit_attrib_location GLEW_GET_VAR(__GLEW_ARB_explicit_attrib_location)
-
-#endif /* GL_ARB_explicit_attrib_location */
-
-/* ------------------- GL_ARB_fragment_coord_conventions ------------------- */
-
-#ifndef GL_ARB_fragment_coord_conventions
-#define GL_ARB_fragment_coord_conventions 1
-
-#define GLEW_ARB_fragment_coord_conventions GLEW_GET_VAR(__GLEW_ARB_fragment_coord_conventions)
-
-#endif /* GL_ARB_fragment_coord_conventions */
-
-/* ------------------------ GL_ARB_fragment_program ------------------------ */
-
-#ifndef GL_ARB_fragment_program
-#define GL_ARB_fragment_program 1
-
-#define GL_FRAGMENT_PROGRAM_ARB 0x8804
-#define GL_PROGRAM_ALU_INSTRUCTIONS_ARB 0x8805
-#define GL_PROGRAM_TEX_INSTRUCTIONS_ARB 0x8806
-#define GL_PROGRAM_TEX_INDIRECTIONS_ARB 0x8807
-#define GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x8808
-#define GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x8809
-#define GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x880A
-#define GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB 0x880B
-#define GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB 0x880C
-#define GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB 0x880D
-#define GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x880E
-#define GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x880F
-#define GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x8810
-#define GL_MAX_TEXTURE_COORDS_ARB 0x8871
-#define GL_MAX_TEXTURE_IMAGE_UNITS_ARB 0x8872
-
-#define GLEW_ARB_fragment_program GLEW_GET_VAR(__GLEW_ARB_fragment_program)
-
-#endif /* GL_ARB_fragment_program */
-
-/* --------------------- GL_ARB_fragment_program_shadow -------------------- */
-
-#ifndef GL_ARB_fragment_program_shadow
-#define GL_ARB_fragment_program_shadow 1
-
-#define GLEW_ARB_fragment_program_shadow GLEW_GET_VAR(__GLEW_ARB_fragment_program_shadow)
-
-#endif /* GL_ARB_fragment_program_shadow */
-
-/* ------------------------- GL_ARB_fragment_shader ------------------------ */
-
-#ifndef GL_ARB_fragment_shader
-#define GL_ARB_fragment_shader 1
-
-#define GL_FRAGMENT_SHADER_ARB 0x8B30
-#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB 0x8B49
-#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB 0x8B8B
-
-#define GLEW_ARB_fragment_shader GLEW_GET_VAR(__GLEW_ARB_fragment_shader)
-
-#endif /* GL_ARB_fragment_shader */
-
-/* ----------------------- GL_ARB_framebuffer_object ----------------------- */
-
-#ifndef GL_ARB_framebuffer_object
-#define GL_ARB_framebuffer_object 1
-
-#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506
-#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING 0x8210
-#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE 0x8211
-#define GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE 0x8212
-#define GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE 0x8213
-#define GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE 0x8214
-#define GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE 0x8215
-#define GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE 0x8216
-#define GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE 0x8217
-#define GL_FRAMEBUFFER_DEFAULT 0x8218
-#define GL_FRAMEBUFFER_UNDEFINED 0x8219
-#define GL_DEPTH_STENCIL_ATTACHMENT 0x821A
-#define GL_INDEX 0x8222
-#define GL_MAX_RENDERBUFFER_SIZE 0x84E8
-#define GL_DEPTH_STENCIL 0x84F9
-#define GL_UNSIGNED_INT_24_8 0x84FA
-#define GL_DEPTH24_STENCIL8 0x88F0
-#define GL_TEXTURE_STENCIL_SIZE 0x88F1
-#define GL_UNSIGNED_NORMALIZED 0x8C17
-#define GL_SRGB 0x8C40
-#define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6
-#define GL_FRAMEBUFFER_BINDING 0x8CA6
-#define GL_RENDERBUFFER_BINDING 0x8CA7
-#define GL_READ_FRAMEBUFFER 0x8CA8
-#define GL_DRAW_FRAMEBUFFER 0x8CA9
-#define GL_READ_FRAMEBUFFER_BINDING 0x8CAA
-#define GL_RENDERBUFFER_SAMPLES 0x8CAB
-#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
-#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4
-#define GL_FRAMEBUFFER_COMPLETE 0x8CD5
-#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
-#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
-#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER 0x8CDB
-#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8CDC
-#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD
-#define GL_MAX_COLOR_ATTACHMENTS 0x8CDF
-#define GL_COLOR_ATTACHMENT0 0x8CE0
-#define GL_COLOR_ATTACHMENT1 0x8CE1
-#define GL_COLOR_ATTACHMENT2 0x8CE2
-#define GL_COLOR_ATTACHMENT3 0x8CE3
-#define GL_COLOR_ATTACHMENT4 0x8CE4
-#define GL_COLOR_ATTACHMENT5 0x8CE5
-#define GL_COLOR_ATTACHMENT6 0x8CE6
-#define GL_COLOR_ATTACHMENT7 0x8CE7
-#define GL_COLOR_ATTACHMENT8 0x8CE8
-#define GL_COLOR_ATTACHMENT9 0x8CE9
-#define GL_COLOR_ATTACHMENT10 0x8CEA
-#define GL_COLOR_ATTACHMENT11 0x8CEB
-#define GL_COLOR_ATTACHMENT12 0x8CEC
-#define GL_COLOR_ATTACHMENT13 0x8CED
-#define GL_COLOR_ATTACHMENT14 0x8CEE
-#define GL_COLOR_ATTACHMENT15 0x8CEF
-#define GL_DEPTH_ATTACHMENT 0x8D00
-#define GL_STENCIL_ATTACHMENT 0x8D20
-#define GL_FRAMEBUFFER 0x8D40
-#define GL_RENDERBUFFER 0x8D41
-#define GL_RENDERBUFFER_WIDTH 0x8D42
-#define GL_RENDERBUFFER_HEIGHT 0x8D43
-#define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44
-#define GL_STENCIL_INDEX1 0x8D46
-#define GL_STENCIL_INDEX4 0x8D47
-#define GL_STENCIL_INDEX8 0x8D48
-#define GL_STENCIL_INDEX16 0x8D49
-#define GL_RENDERBUFFER_RED_SIZE 0x8D50
-#define GL_RENDERBUFFER_GREEN_SIZE 0x8D51
-#define GL_RENDERBUFFER_BLUE_SIZE 0x8D52
-#define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53
-#define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54
-#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
-#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56
-#define GL_MAX_SAMPLES 0x8D57
-
-typedef void (GLAPIENTRY * PFNGLBINDFRAMEBUFFERPROC) (GLenum target, GLuint framebuffer);
-typedef void (GLAPIENTRY * PFNGLBINDRENDERBUFFERPROC) (GLenum target, GLuint renderbuffer);
-typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFERPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
-typedef GLenum (GLAPIENTRY * PFNGLCHECKFRAMEBUFFERSTATUSPROC) (GLenum target);
-typedef void (GLAPIENTRY * PFNGLDELETEFRAMEBUFFERSPROC) (GLsizei n, const GLuint* framebuffers);
-typedef void (GLAPIENTRY * PFNGLDELETERENDERBUFFERSPROC) (GLsizei n, const GLuint* renderbuffers);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERRENDERBUFFERPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE1DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE3DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint layer);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYERPROC) (GLenum target,GLenum attachment, GLuint texture,GLint level,GLint layer);
-typedef void (GLAPIENTRY * PFNGLGENFRAMEBUFFERSPROC) (GLsizei n, GLuint* framebuffers);
-typedef void (GLAPIENTRY * PFNGLGENRENDERBUFFERSPROC) (GLsizei n, GLuint* renderbuffers);
-typedef void (GLAPIENTRY * PFNGLGENERATEMIPMAPPROC) (GLenum target);
-typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETRENDERBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint* params);
-typedef GLboolean (GLAPIENTRY * PFNGLISFRAMEBUFFERPROC) (GLuint framebuffer);
-typedef GLboolean (GLAPIENTRY * PFNGLISRENDERBUFFERPROC) (GLuint renderbuffer);
-typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
-typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
-
-#define glBindFramebuffer GLEW_GET_FUN(__glewBindFramebuffer)
-#define glBindRenderbuffer GLEW_GET_FUN(__glewBindRenderbuffer)
-#define glBlitFramebuffer GLEW_GET_FUN(__glewBlitFramebuffer)
-#define glCheckFramebufferStatus GLEW_GET_FUN(__glewCheckFramebufferStatus)
-#define glDeleteFramebuffers GLEW_GET_FUN(__glewDeleteFramebuffers)
-#define glDeleteRenderbuffers GLEW_GET_FUN(__glewDeleteRenderbuffers)
-#define glFramebufferRenderbuffer GLEW_GET_FUN(__glewFramebufferRenderbuffer)
-#define glFramebufferTexture1D GLEW_GET_FUN(__glewFramebufferTexture1D)
-#define glFramebufferTexture2D GLEW_GET_FUN(__glewFramebufferTexture2D)
-#define glFramebufferTexture3D GLEW_GET_FUN(__glewFramebufferTexture3D)
-#define glFramebufferTextureLayer GLEW_GET_FUN(__glewFramebufferTextureLayer)
-#define glGenFramebuffers GLEW_GET_FUN(__glewGenFramebuffers)
-#define glGenRenderbuffers GLEW_GET_FUN(__glewGenRenderbuffers)
-#define glGenerateMipmap GLEW_GET_FUN(__glewGenerateMipmap)
-#define glGetFramebufferAttachmentParameteriv GLEW_GET_FUN(__glewGetFramebufferAttachmentParameteriv)
-#define glGetRenderbufferParameteriv GLEW_GET_FUN(__glewGetRenderbufferParameteriv)
-#define glIsFramebuffer GLEW_GET_FUN(__glewIsFramebuffer)
-#define glIsRenderbuffer GLEW_GET_FUN(__glewIsRenderbuffer)
-#define glRenderbufferStorage GLEW_GET_FUN(__glewRenderbufferStorage)
-#define glRenderbufferStorageMultisample GLEW_GET_FUN(__glewRenderbufferStorageMultisample)
-
-#define GLEW_ARB_framebuffer_object GLEW_GET_VAR(__GLEW_ARB_framebuffer_object)
-
-#endif /* GL_ARB_framebuffer_object */
-
-/* ------------------------ GL_ARB_framebuffer_sRGB ------------------------ */
-
-#ifndef GL_ARB_framebuffer_sRGB
-#define GL_ARB_framebuffer_sRGB 1
-
-#define GL_FRAMEBUFFER_SRGB 0x8DB9
-
-#define GLEW_ARB_framebuffer_sRGB GLEW_GET_VAR(__GLEW_ARB_framebuffer_sRGB)
-
-#endif /* GL_ARB_framebuffer_sRGB */
-
-/* ------------------------ GL_ARB_geometry_shader4 ------------------------ */
-
-#ifndef GL_ARB_geometry_shader4
-#define GL_ARB_geometry_shader4 1
-
-#define GL_LINES_ADJACENCY_ARB 0xA
-#define GL_LINE_STRIP_ADJACENCY_ARB 0xB
-#define GL_TRIANGLES_ADJACENCY_ARB 0xC
-#define GL_TRIANGLE_STRIP_ADJACENCY_ARB 0xD
-#define GL_PROGRAM_POINT_SIZE_ARB 0x8642
-#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB 0x8C29
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4
-#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB 0x8DA7
-#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB 0x8DA8
-#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB 0x8DA9
-#define GL_GEOMETRY_SHADER_ARB 0x8DD9
-#define GL_GEOMETRY_VERTICES_OUT_ARB 0x8DDA
-#define GL_GEOMETRY_INPUT_TYPE_ARB 0x8DDB
-#define GL_GEOMETRY_OUTPUT_TYPE_ARB 0x8DDC
-#define GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB 0x8DDD
-#define GL_MAX_VERTEX_VARYING_COMPONENTS_ARB 0x8DDE
-#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB 0x8DDF
-#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB 0x8DE0
-#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB 0x8DE1
-
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREFACEARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYERARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERIARBPROC) (GLuint program, GLenum pname, GLint value);
-
-#define glFramebufferTextureARB GLEW_GET_FUN(__glewFramebufferTextureARB)
-#define glFramebufferTextureFaceARB GLEW_GET_FUN(__glewFramebufferTextureFaceARB)
-#define glFramebufferTextureLayerARB GLEW_GET_FUN(__glewFramebufferTextureLayerARB)
-#define glProgramParameteriARB GLEW_GET_FUN(__glewProgramParameteriARB)
-
-#define GLEW_ARB_geometry_shader4 GLEW_GET_VAR(__GLEW_ARB_geometry_shader4)
-
-#endif /* GL_ARB_geometry_shader4 */
-
-/* --------------------------- GL_ARB_gpu_shader5 -------------------------- */
-
-#ifndef GL_ARB_gpu_shader5
-#define GL_ARB_gpu_shader5 1
-
-#define GL_GEOMETRY_SHADER_INVOCATIONS 0x887F
-#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS 0x8E5A
-#define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET 0x8E5B
-#define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET 0x8E5C
-#define GL_FRAGMENT_INTERPOLATION_OFFSET_BITS 0x8E5D
-#define GL_MAX_VERTEX_STREAMS 0x8E71
-
-#define GLEW_ARB_gpu_shader5 GLEW_GET_VAR(__GLEW_ARB_gpu_shader5)
-
-#endif /* GL_ARB_gpu_shader5 */
-
-/* ------------------------- GL_ARB_gpu_shader_fp64 ------------------------ */
-
-#ifndef GL_ARB_gpu_shader_fp64
-#define GL_ARB_gpu_shader_fp64 1
-
-#define GLEW_ARB_gpu_shader_fp64 GLEW_GET_VAR(__GLEW_ARB_gpu_shader_fp64)
-
-#endif /* GL_ARB_gpu_shader_fp64 */
-
-/* ------------------------ GL_ARB_half_float_pixel ------------------------ */
-
-#ifndef GL_ARB_half_float_pixel
-#define GL_ARB_half_float_pixel 1
-
-#define GL_HALF_FLOAT_ARB 0x140B
-
-#define GLEW_ARB_half_float_pixel GLEW_GET_VAR(__GLEW_ARB_half_float_pixel)
-
-#endif /* GL_ARB_half_float_pixel */
-
-/* ------------------------ GL_ARB_half_float_vertex ----------------------- */
-
-#ifndef GL_ARB_half_float_vertex
-#define GL_ARB_half_float_vertex 1
-
-#define GL_HALF_FLOAT 0x140B
-
-#define GLEW_ARB_half_float_vertex GLEW_GET_VAR(__GLEW_ARB_half_float_vertex)
-
-#endif /* GL_ARB_half_float_vertex */
-
-/* ----------------------------- GL_ARB_imaging ---------------------------- */
-
-#ifndef GL_ARB_imaging
-#define GL_ARB_imaging 1
-
-#define GL_CONSTANT_COLOR 0x8001
-#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002
-#define GL_CONSTANT_ALPHA 0x8003
-#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
-#define GL_BLEND_COLOR 0x8005
-#define GL_FUNC_ADD 0x8006
-#define GL_MIN 0x8007
-#define GL_MAX 0x8008
-#define GL_BLEND_EQUATION 0x8009
-#define GL_FUNC_SUBTRACT 0x800A
-#define GL_FUNC_REVERSE_SUBTRACT 0x800B
-#define GL_CONVOLUTION_1D 0x8010
-#define GL_CONVOLUTION_2D 0x8011
-#define GL_SEPARABLE_2D 0x8012
-#define GL_CONVOLUTION_BORDER_MODE 0x8013
-#define GL_CONVOLUTION_FILTER_SCALE 0x8014
-#define GL_CONVOLUTION_FILTER_BIAS 0x8015
-#define GL_REDUCE 0x8016
-#define GL_CONVOLUTION_FORMAT 0x8017
-#define GL_CONVOLUTION_WIDTH 0x8018
-#define GL_CONVOLUTION_HEIGHT 0x8019
-#define GL_MAX_CONVOLUTION_WIDTH 0x801A
-#define GL_MAX_CONVOLUTION_HEIGHT 0x801B
-#define GL_POST_CONVOLUTION_RED_SCALE 0x801C
-#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D
-#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E
-#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F
-#define GL_POST_CONVOLUTION_RED_BIAS 0x8020
-#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021
-#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022
-#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023
-#define GL_HISTOGRAM 0x8024
-#define GL_PROXY_HISTOGRAM 0x8025
-#define GL_HISTOGRAM_WIDTH 0x8026
-#define GL_HISTOGRAM_FORMAT 0x8027
-#define GL_HISTOGRAM_RED_SIZE 0x8028
-#define GL_HISTOGRAM_GREEN_SIZE 0x8029
-#define GL_HISTOGRAM_BLUE_SIZE 0x802A
-#define GL_HISTOGRAM_ALPHA_SIZE 0x802B
-#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C
-#define GL_HISTOGRAM_SINK 0x802D
-#define GL_MINMAX 0x802E
-#define GL_MINMAX_FORMAT 0x802F
-#define GL_MINMAX_SINK 0x8030
-#define GL_TABLE_TOO_LARGE 0x8031
-#define GL_COLOR_MATRIX 0x80B1
-#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2
-#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3
-#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4
-#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5
-#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6
-#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7
-#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8
-#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9
-#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA
-#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB
-#define GL_COLOR_TABLE 0x80D0
-#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1
-#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2
-#define GL_PROXY_COLOR_TABLE 0x80D3
-#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4
-#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5
-#define GL_COLOR_TABLE_SCALE 0x80D6
-#define GL_COLOR_TABLE_BIAS 0x80D7
-#define GL_COLOR_TABLE_FORMAT 0x80D8
-#define GL_COLOR_TABLE_WIDTH 0x80D9
-#define GL_COLOR_TABLE_RED_SIZE 0x80DA
-#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB
-#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC
-#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD
-#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE
-#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF
-#define GL_IGNORE_BORDER 0x8150
-#define GL_CONSTANT_BORDER 0x8151
-#define GL_WRAP_BORDER 0x8152
-#define GL_REPLICATE_BORDER 0x8153
-#define GL_CONVOLUTION_BORDER_COLOR 0x8154
-
-typedef void (GLAPIENTRY * PFNGLCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
-typedef void (GLAPIENTRY * PFNGLCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
-typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
-typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat params);
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIPROC) (GLenum target, GLenum pname, GLint params);
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
-typedef void (GLAPIENTRY * PFNGLCOPYCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
-typedef void (GLAPIENTRY * PFNGLCOPYCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
-typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
-typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPROC) (GLenum target, GLenum format, GLenum type, GLvoid *table);
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
-typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONFILTERPROC) (GLenum target, GLenum format, GLenum type, GLvoid *image);
-typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
-typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
-typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
-typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
-typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
-typedef void (GLAPIENTRY * PFNGLGETMINMAXPROC) (GLenum target, GLboolean reset, GLenum format, GLenum types, GLvoid *values);
-typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
-typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
-typedef void (GLAPIENTRY * PFNGLGETSEPARABLEFILTERPROC) (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
-typedef void (GLAPIENTRY * PFNGLHISTOGRAMPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
-typedef void (GLAPIENTRY * PFNGLMINMAXPROC) (GLenum target, GLenum internalformat, GLboolean sink);
-typedef void (GLAPIENTRY * PFNGLRESETHISTOGRAMPROC) (GLenum target);
-typedef void (GLAPIENTRY * PFNGLRESETMINMAXPROC) (GLenum target);
-typedef void (GLAPIENTRY * PFNGLSEPARABLEFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
-
-#define glColorSubTable GLEW_GET_FUN(__glewColorSubTable)
-#define glColorTable GLEW_GET_FUN(__glewColorTable)
-#define glColorTableParameterfv GLEW_GET_FUN(__glewColorTableParameterfv)
-#define glColorTableParameteriv GLEW_GET_FUN(__glewColorTableParameteriv)
-#define glConvolutionFilter1D GLEW_GET_FUN(__glewConvolutionFilter1D)
-#define glConvolutionFilter2D GLEW_GET_FUN(__glewConvolutionFilter2D)
-#define glConvolutionParameterf GLEW_GET_FUN(__glewConvolutionParameterf)
-#define glConvolutionParameterfv GLEW_GET_FUN(__glewConvolutionParameterfv)
-#define glConvolutionParameteri GLEW_GET_FUN(__glewConvolutionParameteri)
-#define glConvolutionParameteriv GLEW_GET_FUN(__glewConvolutionParameteriv)
-#define glCopyColorSubTable GLEW_GET_FUN(__glewCopyColorSubTable)
-#define glCopyColorTable GLEW_GET_FUN(__glewCopyColorTable)
-#define glCopyConvolutionFilter1D GLEW_GET_FUN(__glewCopyConvolutionFilter1D)
-#define glCopyConvolutionFilter2D GLEW_GET_FUN(__glewCopyConvolutionFilter2D)
-#define glGetColorTable GLEW_GET_FUN(__glewGetColorTable)
-#define glGetColorTableParameterfv GLEW_GET_FUN(__glewGetColorTableParameterfv)
-#define glGetColorTableParameteriv GLEW_GET_FUN(__glewGetColorTableParameteriv)
-#define glGetConvolutionFilter GLEW_GET_FUN(__glewGetConvolutionFilter)
-#define glGetConvolutionParameterfv GLEW_GET_FUN(__glewGetConvolutionParameterfv)
-#define glGetConvolutionParameteriv GLEW_GET_FUN(__glewGetConvolutionParameteriv)
-#define glGetHistogram GLEW_GET_FUN(__glewGetHistogram)
-#define glGetHistogramParameterfv GLEW_GET_FUN(__glewGetHistogramParameterfv)
-#define glGetHistogramParameteriv GLEW_GET_FUN(__glewGetHistogramParameteriv)
-#define glGetMinmax GLEW_GET_FUN(__glewGetMinmax)
-#define glGetMinmaxParameterfv GLEW_GET_FUN(__glewGetMinmaxParameterfv)
-#define glGetMinmaxParameteriv GLEW_GET_FUN(__glewGetMinmaxParameteriv)
-#define glGetSeparableFilter GLEW_GET_FUN(__glewGetSeparableFilter)
-#define glHistogram GLEW_GET_FUN(__glewHistogram)
-#define glMinmax GLEW_GET_FUN(__glewMinmax)
-#define glResetHistogram GLEW_GET_FUN(__glewResetHistogram)
-#define glResetMinmax GLEW_GET_FUN(__glewResetMinmax)
-#define glSeparableFilter2D GLEW_GET_FUN(__glewSeparableFilter2D)
-
-#define GLEW_ARB_imaging GLEW_GET_VAR(__GLEW_ARB_imaging)
-
-#endif /* GL_ARB_imaging */
-
-/* ------------------------ GL_ARB_instanced_arrays ------------------------ */
-
-#ifndef GL_ARB_instanced_arrays
-#define GL_ARB_instanced_arrays 1
-
-#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB 0x88FE
-
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISORARBPROC) (GLuint index, GLuint divisor);
-
-#define glVertexAttribDivisorARB GLEW_GET_FUN(__glewVertexAttribDivisorARB)
-
-#define GLEW_ARB_instanced_arrays GLEW_GET_VAR(__GLEW_ARB_instanced_arrays)
-
-#endif /* GL_ARB_instanced_arrays */
-
-/* ------------------------ GL_ARB_map_buffer_range ------------------------ */
-
-#ifndef GL_ARB_map_buffer_range
-#define GL_ARB_map_buffer_range 1
-
-#define GL_MAP_READ_BIT 0x0001
-#define GL_MAP_WRITE_BIT 0x0002
-#define GL_MAP_INVALIDATE_RANGE_BIT 0x0004
-#define GL_MAP_INVALIDATE_BUFFER_BIT 0x0008
-#define GL_MAP_FLUSH_EXPLICIT_BIT 0x0010
-#define GL_MAP_UNSYNCHRONIZED_BIT 0x0020
-
-typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length);
-typedef GLvoid * (GLAPIENTRY * PFNGLMAPBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
-
-#define glFlushMappedBufferRange GLEW_GET_FUN(__glewFlushMappedBufferRange)
-#define glMapBufferRange GLEW_GET_FUN(__glewMapBufferRange)
-
-#define GLEW_ARB_map_buffer_range GLEW_GET_VAR(__GLEW_ARB_map_buffer_range)
-
-#endif /* GL_ARB_map_buffer_range */
-
-/* ------------------------- GL_ARB_matrix_palette ------------------------- */
-
-#ifndef GL_ARB_matrix_palette
-#define GL_ARB_matrix_palette 1
-
-#define GL_MATRIX_PALETTE_ARB 0x8840
-#define GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB 0x8841
-#define GL_MAX_PALETTE_MATRICES_ARB 0x8842
-#define GL_CURRENT_PALETTE_MATRIX_ARB 0x8843
-#define GL_MATRIX_INDEX_ARRAY_ARB 0x8844
-#define GL_CURRENT_MATRIX_INDEX_ARB 0x8845
-#define GL_MATRIX_INDEX_ARRAY_SIZE_ARB 0x8846
-#define GL_MATRIX_INDEX_ARRAY_TYPE_ARB 0x8847
-#define GL_MATRIX_INDEX_ARRAY_STRIDE_ARB 0x8848
-#define GL_MATRIX_INDEX_ARRAY_POINTER_ARB 0x8849
-
-typedef void (GLAPIENTRY * PFNGLCURRENTPALETTEMATRIXARBPROC) (GLint index);
-typedef void (GLAPIENTRY * PFNGLMATRIXINDEXPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer);
-typedef void (GLAPIENTRY * PFNGLMATRIXINDEXUBVARBPROC) (GLint size, GLubyte *indices);
-typedef void (GLAPIENTRY * PFNGLMATRIXINDEXUIVARBPROC) (GLint size, GLuint *indices);
-typedef void (GLAPIENTRY * PFNGLMATRIXINDEXUSVARBPROC) (GLint size, GLushort *indices);
-
-#define glCurrentPaletteMatrixARB GLEW_GET_FUN(__glewCurrentPaletteMatrixARB)
-#define glMatrixIndexPointerARB GLEW_GET_FUN(__glewMatrixIndexPointerARB)
-#define glMatrixIndexubvARB GLEW_GET_FUN(__glewMatrixIndexubvARB)
-#define glMatrixIndexuivARB GLEW_GET_FUN(__glewMatrixIndexuivARB)
-#define glMatrixIndexusvARB GLEW_GET_FUN(__glewMatrixIndexusvARB)
-
-#define GLEW_ARB_matrix_palette GLEW_GET_VAR(__GLEW_ARB_matrix_palette)
-
-#endif /* GL_ARB_matrix_palette */
-
-/* --------------------------- GL_ARB_multisample -------------------------- */
-
-#ifndef GL_ARB_multisample
-#define GL_ARB_multisample 1
-
-#define GL_MULTISAMPLE_ARB 0x809D
-#define GL_SAMPLE_ALPHA_TO_COVERAGE_ARB 0x809E
-#define GL_SAMPLE_ALPHA_TO_ONE_ARB 0x809F
-#define GL_SAMPLE_COVERAGE_ARB 0x80A0
-#define GL_SAMPLE_BUFFERS_ARB 0x80A8
-#define GL_SAMPLES_ARB 0x80A9
-#define GL_SAMPLE_COVERAGE_VALUE_ARB 0x80AA
-#define GL_SAMPLE_COVERAGE_INVERT_ARB 0x80AB
-#define GL_MULTISAMPLE_BIT_ARB 0x20000000
-
-typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEARBPROC) (GLclampf value, GLboolean invert);
-
-#define glSampleCoverageARB GLEW_GET_FUN(__glewSampleCoverageARB)
-
-#define GLEW_ARB_multisample GLEW_GET_VAR(__GLEW_ARB_multisample)
-
-#endif /* GL_ARB_multisample */
-
-/* -------------------------- GL_ARB_multitexture -------------------------- */
-
-#ifndef GL_ARB_multitexture
-#define GL_ARB_multitexture 1
-
-#define GL_TEXTURE0_ARB 0x84C0
-#define GL_TEXTURE1_ARB 0x84C1
-#define GL_TEXTURE2_ARB 0x84C2
-#define GL_TEXTURE3_ARB 0x84C3
-#define GL_TEXTURE4_ARB 0x84C4
-#define GL_TEXTURE5_ARB 0x84C5
-#define GL_TEXTURE6_ARB 0x84C6
-#define GL_TEXTURE7_ARB 0x84C7
-#define GL_TEXTURE8_ARB 0x84C8
-#define GL_TEXTURE9_ARB 0x84C9
-#define GL_TEXTURE10_ARB 0x84CA
-#define GL_TEXTURE11_ARB 0x84CB
-#define GL_TEXTURE12_ARB 0x84CC
-#define GL_TEXTURE13_ARB 0x84CD
-#define GL_TEXTURE14_ARB 0x84CE
-#define GL_TEXTURE15_ARB 0x84CF
-#define GL_TEXTURE16_ARB 0x84D0
-#define GL_TEXTURE17_ARB 0x84D1
-#define GL_TEXTURE18_ARB 0x84D2
-#define GL_TEXTURE19_ARB 0x84D3
-#define GL_TEXTURE20_ARB 0x84D4
-#define GL_TEXTURE21_ARB 0x84D5
-#define GL_TEXTURE22_ARB 0x84D6
-#define GL_TEXTURE23_ARB 0x84D7
-#define GL_TEXTURE24_ARB 0x84D8
-#define GL_TEXTURE25_ARB 0x84D9
-#define GL_TEXTURE26_ARB 0x84DA
-#define GL_TEXTURE27_ARB 0x84DB
-#define GL_TEXTURE28_ARB 0x84DC
-#define GL_TEXTURE29_ARB 0x84DD
-#define GL_TEXTURE30_ARB 0x84DE
-#define GL_TEXTURE31_ARB 0x84DF
-#define GL_ACTIVE_TEXTURE_ARB 0x84E0
-#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1
-#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2
-
-typedef void (GLAPIENTRY * PFNGLACTIVETEXTUREARBPROC) (GLenum texture);
-typedef void (GLAPIENTRY * PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v);
-
-#define glActiveTextureARB GLEW_GET_FUN(__glewActiveTextureARB)
-#define glClientActiveTextureARB GLEW_GET_FUN(__glewClientActiveTextureARB)
-#define glMultiTexCoord1dARB GLEW_GET_FUN(__glewMultiTexCoord1dARB)
-#define glMultiTexCoord1dvARB GLEW_GET_FUN(__glewMultiTexCoord1dvARB)
-#define glMultiTexCoord1fARB GLEW_GET_FUN(__glewMultiTexCoord1fARB)
-#define glMultiTexCoord1fvARB GLEW_GET_FUN(__glewMultiTexCoord1fvARB)
-#define glMultiTexCoord1iARB GLEW_GET_FUN(__glewMultiTexCoord1iARB)
-#define glMultiTexCoord1ivARB GLEW_GET_FUN(__glewMultiTexCoord1ivARB)
-#define glMultiTexCoord1sARB GLEW_GET_FUN(__glewMultiTexCoord1sARB)
-#define glMultiTexCoord1svARB GLEW_GET_FUN(__glewMultiTexCoord1svARB)
-#define glMultiTexCoord2dARB GLEW_GET_FUN(__glewMultiTexCoord2dARB)
-#define glMultiTexCoord2dvARB GLEW_GET_FUN(__glewMultiTexCoord2dvARB)
-#define glMultiTexCoord2fARB GLEW_GET_FUN(__glewMultiTexCoord2fARB)
-#define glMultiTexCoord2fvARB GLEW_GET_FUN(__glewMultiTexCoord2fvARB)
-#define glMultiTexCoord2iARB GLEW_GET_FUN(__glewMultiTexCoord2iARB)
-#define glMultiTexCoord2ivARB GLEW_GET_FUN(__glewMultiTexCoord2ivARB)
-#define glMultiTexCoord2sARB GLEW_GET_FUN(__glewMultiTexCoord2sARB)
-#define glMultiTexCoord2svARB GLEW_GET_FUN(__glewMultiTexCoord2svARB)
-#define glMultiTexCoord3dARB GLEW_GET_FUN(__glewMultiTexCoord3dARB)
-#define glMultiTexCoord3dvARB GLEW_GET_FUN(__glewMultiTexCoord3dvARB)
-#define glMultiTexCoord3fARB GLEW_GET_FUN(__glewMultiTexCoord3fARB)
-#define glMultiTexCoord3fvARB GLEW_GET_FUN(__glewMultiTexCoord3fvARB)
-#define glMultiTexCoord3iARB GLEW_GET_FUN(__glewMultiTexCoord3iARB)
-#define glMultiTexCoord3ivARB GLEW_GET_FUN(__glewMultiTexCoord3ivARB)
-#define glMultiTexCoord3sARB GLEW_GET_FUN(__glewMultiTexCoord3sARB)
-#define glMultiTexCoord3svARB GLEW_GET_FUN(__glewMultiTexCoord3svARB)
-#define glMultiTexCoord4dARB GLEW_GET_FUN(__glewMultiTexCoord4dARB)
-#define glMultiTexCoord4dvARB GLEW_GET_FUN(__glewMultiTexCoord4dvARB)
-#define glMultiTexCoord4fARB GLEW_GET_FUN(__glewMultiTexCoord4fARB)
-#define glMultiTexCoord4fvARB GLEW_GET_FUN(__glewMultiTexCoord4fvARB)
-#define glMultiTexCoord4iARB GLEW_GET_FUN(__glewMultiTexCoord4iARB)
-#define glMultiTexCoord4ivARB GLEW_GET_FUN(__glewMultiTexCoord4ivARB)
-#define glMultiTexCoord4sARB GLEW_GET_FUN(__glewMultiTexCoord4sARB)
-#define glMultiTexCoord4svARB GLEW_GET_FUN(__glewMultiTexCoord4svARB)
-
-#define GLEW_ARB_multitexture GLEW_GET_VAR(__GLEW_ARB_multitexture)
-
-#endif /* GL_ARB_multitexture */
-
-/* ------------------------- GL_ARB_occlusion_query ------------------------ */
-
-#ifndef GL_ARB_occlusion_query
-#define GL_ARB_occlusion_query 1
-
-#define GL_QUERY_COUNTER_BITS_ARB 0x8864
-#define GL_CURRENT_QUERY_ARB 0x8865
-#define GL_QUERY_RESULT_ARB 0x8866
-#define GL_QUERY_RESULT_AVAILABLE_ARB 0x8867
-#define GL_SAMPLES_PASSED_ARB 0x8914
-
-typedef void (GLAPIENTRY * PFNGLBEGINQUERYARBPROC) (GLenum target, GLuint id);
-typedef void (GLAPIENTRY * PFNGLDELETEQUERIESARBPROC) (GLsizei n, const GLuint* ids);
-typedef void (GLAPIENTRY * PFNGLENDQUERYARBPROC) (GLenum target);
-typedef void (GLAPIENTRY * PFNGLGENQUERIESARBPROC) (GLsizei n, GLuint* ids);
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVARBPROC) (GLuint id, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVARBPROC) (GLuint id, GLenum pname, GLuint* params);
-typedef void (GLAPIENTRY * PFNGLGETQUERYIVARBPROC) (GLenum target, GLenum pname, GLint* params);
-typedef GLboolean (GLAPIENTRY * PFNGLISQUERYARBPROC) (GLuint id);
-
-#define glBeginQueryARB GLEW_GET_FUN(__glewBeginQueryARB)
-#define glDeleteQueriesARB GLEW_GET_FUN(__glewDeleteQueriesARB)
-#define glEndQueryARB GLEW_GET_FUN(__glewEndQueryARB)
-#define glGenQueriesARB GLEW_GET_FUN(__glewGenQueriesARB)
-#define glGetQueryObjectivARB GLEW_GET_FUN(__glewGetQueryObjectivARB)
-#define glGetQueryObjectuivARB GLEW_GET_FUN(__glewGetQueryObjectuivARB)
-#define glGetQueryivARB GLEW_GET_FUN(__glewGetQueryivARB)
-#define glIsQueryARB GLEW_GET_FUN(__glewIsQueryARB)
-
-#define GLEW_ARB_occlusion_query GLEW_GET_VAR(__GLEW_ARB_occlusion_query)
-
-#endif /* GL_ARB_occlusion_query */
-
-/* ------------------------ GL_ARB_occlusion_query2 ------------------------ */
-
-#ifndef GL_ARB_occlusion_query2
-#define GL_ARB_occlusion_query2 1
-
-#define GL_ANY_SAMPLES_PASSED 0x8C2F
-
-#define GLEW_ARB_occlusion_query2 GLEW_GET_VAR(__GLEW_ARB_occlusion_query2)
-
-#endif /* GL_ARB_occlusion_query2 */
-
-/* ----------------------- GL_ARB_pixel_buffer_object ---------------------- */
-
-#ifndef GL_ARB_pixel_buffer_object
-#define GL_ARB_pixel_buffer_object 1
-
-#define GL_PIXEL_PACK_BUFFER_ARB 0x88EB
-#define GL_PIXEL_UNPACK_BUFFER_ARB 0x88EC
-#define GL_PIXEL_PACK_BUFFER_BINDING_ARB 0x88ED
-#define GL_PIXEL_UNPACK_BUFFER_BINDING_ARB 0x88EF
-
-#define GLEW_ARB_pixel_buffer_object GLEW_GET_VAR(__GLEW_ARB_pixel_buffer_object)
-
-#endif /* GL_ARB_pixel_buffer_object */
-
-/* ------------------------ GL_ARB_point_parameters ------------------------ */
-
-#ifndef GL_ARB_point_parameters
-#define GL_ARB_point_parameters 1
-
-#define GL_POINT_SIZE_MIN_ARB 0x8126
-#define GL_POINT_SIZE_MAX_ARB 0x8127
-#define GL_POINT_FADE_THRESHOLD_SIZE_ARB 0x8128
-#define GL_POINT_DISTANCE_ATTENUATION_ARB 0x8129
-
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFARBPROC) (GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFVARBPROC) (GLenum pname, GLfloat* params);
-
-#define glPointParameterfARB GLEW_GET_FUN(__glewPointParameterfARB)
-#define glPointParameterfvARB GLEW_GET_FUN(__glewPointParameterfvARB)
-
-#define GLEW_ARB_point_parameters GLEW_GET_VAR(__GLEW_ARB_point_parameters)
-
-#endif /* GL_ARB_point_parameters */
-
-/* -------------------------- GL_ARB_point_sprite -------------------------- */
-
-#ifndef GL_ARB_point_sprite
-#define GL_ARB_point_sprite 1
-
-#define GL_POINT_SPRITE_ARB 0x8861
-#define GL_COORD_REPLACE_ARB 0x8862
-
-#define GLEW_ARB_point_sprite GLEW_GET_VAR(__GLEW_ARB_point_sprite)
-
-#endif /* GL_ARB_point_sprite */
-
-/* ------------------------ GL_ARB_provoking_vertex ------------------------ */
-
-#ifndef GL_ARB_provoking_vertex
-#define GL_ARB_provoking_vertex 1
-
-#define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION 0x8E4C
-#define GL_FIRST_VERTEX_CONVENTION 0x8E4D
-#define GL_LAST_VERTEX_CONVENTION 0x8E4E
-#define GL_PROVOKING_VERTEX 0x8E4F
-
-typedef void (GLAPIENTRY * PFNGLPROVOKINGVERTEXPROC) (GLenum mode);
-
-#define glProvokingVertex GLEW_GET_FUN(__glewProvokingVertex)
-
-#define GLEW_ARB_provoking_vertex GLEW_GET_VAR(__GLEW_ARB_provoking_vertex)
-
-#endif /* GL_ARB_provoking_vertex */
-
-/* ------------------------- GL_ARB_sample_shading ------------------------- */
-
-#ifndef GL_ARB_sample_shading
-#define GL_ARB_sample_shading 1
-
-#define GL_SAMPLE_SHADING_ARB 0x8C36
-#define GL_MIN_SAMPLE_SHADING_VALUE_ARB 0x8C37
-
-typedef void (GLAPIENTRY * PFNGLMINSAMPLESHADINGARBPROC) (GLclampf value);
-
-#define glMinSampleShadingARB GLEW_GET_FUN(__glewMinSampleShadingARB)
-
-#define GLEW_ARB_sample_shading GLEW_GET_VAR(__GLEW_ARB_sample_shading)
-
-#endif /* GL_ARB_sample_shading */
-
-/* ------------------------- GL_ARB_sampler_objects ------------------------ */
-
-#ifndef GL_ARB_sampler_objects
-#define GL_ARB_sampler_objects 1
-
-#define GL_SAMPLER_BINDING 0x8919
-
-typedef void (GLAPIENTRY * PFNGLBINDSAMPLERPROC) (GLuint unit, GLuint sampler);
-typedef void (GLAPIENTRY * PFNGLDELETESAMPLERSPROC) (GLsizei count, const GLuint * samplers);
-typedef void (GLAPIENTRY * PFNGLGENSAMPLERSPROC) (GLsizei count, GLuint* samplers);
-typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, GLuint* params);
-typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, GLint* params);
-typedef GLboolean (GLAPIENTRY * PFNGLISSAMPLERPROC) (GLuint sampler);
-typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, const GLuint* params);
-typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERFPROC) (GLuint sampler, GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIPROC) (GLuint sampler, GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, const GLint* params);
-
-#define glBindSampler GLEW_GET_FUN(__glewBindSampler)
-#define glDeleteSamplers GLEW_GET_FUN(__glewDeleteSamplers)
-#define glGenSamplers GLEW_GET_FUN(__glewGenSamplers)
-#define glGetSamplerParameterIiv GLEW_GET_FUN(__glewGetSamplerParameterIiv)
-#define glGetSamplerParameterIuiv GLEW_GET_FUN(__glewGetSamplerParameterIuiv)
-#define glGetSamplerParameterfv GLEW_GET_FUN(__glewGetSamplerParameterfv)
-#define glGetSamplerParameteriv GLEW_GET_FUN(__glewGetSamplerParameteriv)
-#define glIsSampler GLEW_GET_FUN(__glewIsSampler)
-#define glSamplerParameterIiv GLEW_GET_FUN(__glewSamplerParameterIiv)
-#define glSamplerParameterIuiv GLEW_GET_FUN(__glewSamplerParameterIuiv)
-#define glSamplerParameterf GLEW_GET_FUN(__glewSamplerParameterf)
-#define glSamplerParameterfv GLEW_GET_FUN(__glewSamplerParameterfv)
-#define glSamplerParameteri GLEW_GET_FUN(__glewSamplerParameteri)
-#define glSamplerParameteriv GLEW_GET_FUN(__glewSamplerParameteriv)
-
-#define GLEW_ARB_sampler_objects GLEW_GET_VAR(__GLEW_ARB_sampler_objects)
-
-#endif /* GL_ARB_sampler_objects */
-
-/* ------------------------ GL_ARB_seamless_cube_map ----------------------- */
-
-#ifndef GL_ARB_seamless_cube_map
-#define GL_ARB_seamless_cube_map 1
-
-#define GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F
-
-#define GLEW_ARB_seamless_cube_map GLEW_GET_VAR(__GLEW_ARB_seamless_cube_map)
-
-#endif /* GL_ARB_seamless_cube_map */
-
-/* ----------------------- GL_ARB_shader_bit_encoding ---------------------- */
-
-#ifndef GL_ARB_shader_bit_encoding
-#define GL_ARB_shader_bit_encoding 1
-
-#define GLEW_ARB_shader_bit_encoding GLEW_GET_VAR(__GLEW_ARB_shader_bit_encoding)
-
-#endif /* GL_ARB_shader_bit_encoding */
-
-/* ------------------------- GL_ARB_shader_objects ------------------------- */
-
-#ifndef GL_ARB_shader_objects
-#define GL_ARB_shader_objects 1
-
-#define GL_PROGRAM_OBJECT_ARB 0x8B40
-#define GL_SHADER_OBJECT_ARB 0x8B48
-#define GL_OBJECT_TYPE_ARB 0x8B4E
-#define GL_OBJECT_SUBTYPE_ARB 0x8B4F
-#define GL_FLOAT_VEC2_ARB 0x8B50
-#define GL_FLOAT_VEC3_ARB 0x8B51
-#define GL_FLOAT_VEC4_ARB 0x8B52
-#define GL_INT_VEC2_ARB 0x8B53
-#define GL_INT_VEC3_ARB 0x8B54
-#define GL_INT_VEC4_ARB 0x8B55
-#define GL_BOOL_ARB 0x8B56
-#define GL_BOOL_VEC2_ARB 0x8B57
-#define GL_BOOL_VEC3_ARB 0x8B58
-#define GL_BOOL_VEC4_ARB 0x8B59
-#define GL_FLOAT_MAT2_ARB 0x8B5A
-#define GL_FLOAT_MAT3_ARB 0x8B5B
-#define GL_FLOAT_MAT4_ARB 0x8B5C
-#define GL_SAMPLER_1D_ARB 0x8B5D
-#define GL_SAMPLER_2D_ARB 0x8B5E
-#define GL_SAMPLER_3D_ARB 0x8B5F
-#define GL_SAMPLER_CUBE_ARB 0x8B60
-#define GL_SAMPLER_1D_SHADOW_ARB 0x8B61
-#define GL_SAMPLER_2D_SHADOW_ARB 0x8B62
-#define GL_SAMPLER_2D_RECT_ARB 0x8B63
-#define GL_SAMPLER_2D_RECT_SHADOW_ARB 0x8B64
-#define GL_OBJECT_DELETE_STATUS_ARB 0x8B80
-#define GL_OBJECT_COMPILE_STATUS_ARB 0x8B81
-#define GL_OBJECT_LINK_STATUS_ARB 0x8B82
-#define GL_OBJECT_VALIDATE_STATUS_ARB 0x8B83
-#define GL_OBJECT_INFO_LOG_LENGTH_ARB 0x8B84
-#define GL_OBJECT_ATTACHED_OBJECTS_ARB 0x8B85
-#define GL_OBJECT_ACTIVE_UNIFORMS_ARB 0x8B86
-#define GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB 0x8B87
-#define GL_OBJECT_SHADER_SOURCE_LENGTH_ARB 0x8B88
-
-typedef char GLcharARB;
-typedef unsigned int GLhandleARB;
-
-typedef void (GLAPIENTRY * PFNGLATTACHOBJECTARBPROC) (GLhandleARB containerObj, GLhandleARB obj);
-typedef void (GLAPIENTRY * PFNGLCOMPILESHADERARBPROC) (GLhandleARB shaderObj);
-typedef GLhandleARB (GLAPIENTRY * PFNGLCREATEPROGRAMOBJECTARBPROC) (void);
-typedef GLhandleARB (GLAPIENTRY * PFNGLCREATESHADEROBJECTARBPROC) (GLenum shaderType);
-typedef void (GLAPIENTRY * PFNGLDELETEOBJECTARBPROC) (GLhandleARB obj);
-typedef void (GLAPIENTRY * PFNGLDETACHOBJECTARBPROC) (GLhandleARB containerObj, GLhandleARB attachedObj);
-typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint *size, GLenum *type, GLcharARB *name);
-typedef void (GLAPIENTRY * PFNGLGETATTACHEDOBJECTSARBPROC) (GLhandleARB containerObj, GLsizei maxCount, GLsizei* count, GLhandleARB *obj);
-typedef GLhandleARB (GLAPIENTRY * PFNGLGETHANDLEARBPROC) (GLenum pname);
-typedef void (GLAPIENTRY * PFNGLGETINFOLOGARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei* length, GLcharARB *infoLog);
-typedef void (GLAPIENTRY * PFNGLGETOBJECTPARAMETERFVARBPROC) (GLhandleARB obj, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETOBJECTPARAMETERIVARBPROC) (GLhandleARB obj, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETSHADERSOURCEARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei* length, GLcharARB *source);
-typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMLOCATIONARBPROC) (GLhandleARB programObj, const GLcharARB* name);
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMFVARBPROC) (GLhandleARB programObj, GLint location, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMIVARBPROC) (GLhandleARB programObj, GLint location, GLint* params);
-typedef void (GLAPIENTRY * PFNGLLINKPROGRAMARBPROC) (GLhandleARB programObj);
-typedef void (GLAPIENTRY * PFNGLSHADERSOURCEARBPROC) (GLhandleARB shaderObj, GLsizei count, const GLcharARB ** string, const GLint *length);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1FARBPROC) (GLint location, GLfloat v0);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1FVARBPROC) (GLint location, GLsizei count, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1IARBPROC) (GLint location, GLint v0);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1IVARBPROC) (GLint location, GLsizei count, const GLint* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2FARBPROC) (GLint location, GLfloat v0, GLfloat v1);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2FVARBPROC) (GLint location, GLsizei count, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2IARBPROC) (GLint location, GLint v0, GLint v1);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2IVARBPROC) (GLint location, GLsizei count, const GLint* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3FARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3FVARBPROC) (GLint location, GLsizei count, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3IARBPROC) (GLint location, GLint v0, GLint v1, GLint v2);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3IVARBPROC) (GLint location, GLsizei count, const GLint* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4FARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4FVARBPROC) (GLint location, GLsizei count, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4IARBPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4IVARBPROC) (GLint location, GLsizei count, const GLint* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLUSEPROGRAMOBJECTARBPROC) (GLhandleARB programObj);
-typedef void (GLAPIENTRY * PFNGLVALIDATEPROGRAMARBPROC) (GLhandleARB programObj);
-
-#define glAttachObjectARB GLEW_GET_FUN(__glewAttachObjectARB)
-#define glCompileShaderARB GLEW_GET_FUN(__glewCompileShaderARB)
-#define glCreateProgramObjectARB GLEW_GET_FUN(__glewCreateProgramObjectARB)
-#define glCreateShaderObjectARB GLEW_GET_FUN(__glewCreateShaderObjectARB)
-#define glDeleteObjectARB GLEW_GET_FUN(__glewDeleteObjectARB)
-#define glDetachObjectARB GLEW_GET_FUN(__glewDetachObjectARB)
-#define glGetActiveUniformARB GLEW_GET_FUN(__glewGetActiveUniformARB)
-#define glGetAttachedObjectsARB GLEW_GET_FUN(__glewGetAttachedObjectsARB)
-#define glGetHandleARB GLEW_GET_FUN(__glewGetHandleARB)
-#define glGetInfoLogARB GLEW_GET_FUN(__glewGetInfoLogARB)
-#define glGetObjectParameterfvARB GLEW_GET_FUN(__glewGetObjectParameterfvARB)
-#define glGetObjectParameterivARB GLEW_GET_FUN(__glewGetObjectParameterivARB)
-#define glGetShaderSourceARB GLEW_GET_FUN(__glewGetShaderSourceARB)
-#define glGetUniformLocationARB GLEW_GET_FUN(__glewGetUniformLocationARB)
-#define glGetUniformfvARB GLEW_GET_FUN(__glewGetUniformfvARB)
-#define glGetUniformivARB GLEW_GET_FUN(__glewGetUniformivARB)
-#define glLinkProgramARB GLEW_GET_FUN(__glewLinkProgramARB)
-#define glShaderSourceARB GLEW_GET_FUN(__glewShaderSourceARB)
-#define glUniform1fARB GLEW_GET_FUN(__glewUniform1fARB)
-#define glUniform1fvARB GLEW_GET_FUN(__glewUniform1fvARB)
-#define glUniform1iARB GLEW_GET_FUN(__glewUniform1iARB)
-#define glUniform1ivARB GLEW_GET_FUN(__glewUniform1ivARB)
-#define glUniform2fARB GLEW_GET_FUN(__glewUniform2fARB)
-#define glUniform2fvARB GLEW_GET_FUN(__glewUniform2fvARB)
-#define glUniform2iARB GLEW_GET_FUN(__glewUniform2iARB)
-#define glUniform2ivARB GLEW_GET_FUN(__glewUniform2ivARB)
-#define glUniform3fARB GLEW_GET_FUN(__glewUniform3fARB)
-#define glUniform3fvARB GLEW_GET_FUN(__glewUniform3fvARB)
-#define glUniform3iARB GLEW_GET_FUN(__glewUniform3iARB)
-#define glUniform3ivARB GLEW_GET_FUN(__glewUniform3ivARB)
-#define glUniform4fARB GLEW_GET_FUN(__glewUniform4fARB)
-#define glUniform4fvARB GLEW_GET_FUN(__glewUniform4fvARB)
-#define glUniform4iARB GLEW_GET_FUN(__glewUniform4iARB)
-#define glUniform4ivARB GLEW_GET_FUN(__glewUniform4ivARB)
-#define glUniformMatrix2fvARB GLEW_GET_FUN(__glewUniformMatrix2fvARB)
-#define glUniformMatrix3fvARB GLEW_GET_FUN(__glewUniformMatrix3fvARB)
-#define glUniformMatrix4fvARB GLEW_GET_FUN(__glewUniformMatrix4fvARB)
-#define glUseProgramObjectARB GLEW_GET_FUN(__glewUseProgramObjectARB)
-#define glValidateProgramARB GLEW_GET_FUN(__glewValidateProgramARB)
-
-#define GLEW_ARB_shader_objects GLEW_GET_VAR(__GLEW_ARB_shader_objects)
-
-#endif /* GL_ARB_shader_objects */
-
-/* ------------------------ GL_ARB_shader_subroutine ----------------------- */
-
-#ifndef GL_ARB_shader_subroutine
-#define GL_ARB_shader_subroutine 1
-
-#define GL_ACTIVE_SUBROUTINES 0x8DE5
-#define GL_ACTIVE_SUBROUTINE_UNIFORMS 0x8DE6
-#define GL_MAX_SUBROUTINES 0x8DE7
-#define GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS 0x8DE8
-#define GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS 0x8E47
-#define GL_ACTIVE_SUBROUTINE_MAX_LENGTH 0x8E48
-#define GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH 0x8E49
-#define GL_NUM_COMPATIBLE_SUBROUTINES 0x8E4A
-#define GL_COMPATIBLE_SUBROUTINES 0x8E4B
-
-typedef void (GLAPIENTRY * PFNGLGETACTIVESUBROUTINENAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, char *name);
-typedef void (GLAPIENTRY * PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, char *name);
-typedef void (GLAPIENTRY * PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC) (GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint* values);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMSTAGEIVPROC) (GLuint program, GLenum shadertype, GLenum pname, GLint* values);
-typedef GLuint (GLAPIENTRY * PFNGLGETSUBROUTINEINDEXPROC) (GLuint program, GLenum shadertype, const char* name);
-typedef GLint (GLAPIENTRY * PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC) (GLuint program, GLenum shadertype, const char* name);
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMSUBROUTINEUIVPROC) (GLenum shadertype, GLint location, GLuint* params);
-typedef void (GLAPIENTRY * PFNGLUNIFORMSUBROUTINESUIVPROC) (GLenum shadertype, GLsizei count, const GLuint* indices);
-
-#define glGetActiveSubroutineName GLEW_GET_FUN(__glewGetActiveSubroutineName)
-#define glGetActiveSubroutineUniformName GLEW_GET_FUN(__glewGetActiveSubroutineUniformName)
-#define glGetActiveSubroutineUniformiv GLEW_GET_FUN(__glewGetActiveSubroutineUniformiv)
-#define glGetProgramStageiv GLEW_GET_FUN(__glewGetProgramStageiv)
-#define glGetSubroutineIndex GLEW_GET_FUN(__glewGetSubroutineIndex)
-#define glGetSubroutineUniformLocation GLEW_GET_FUN(__glewGetSubroutineUniformLocation)
-#define glGetUniformSubroutineuiv GLEW_GET_FUN(__glewGetUniformSubroutineuiv)
-#define glUniformSubroutinesuiv GLEW_GET_FUN(__glewUniformSubroutinesuiv)
-
-#define GLEW_ARB_shader_subroutine GLEW_GET_VAR(__GLEW_ARB_shader_subroutine)
-
-#endif /* GL_ARB_shader_subroutine */
-
-/* ----------------------- GL_ARB_shader_texture_lod ----------------------- */
-
-#ifndef GL_ARB_shader_texture_lod
-#define GL_ARB_shader_texture_lod 1
-
-#define GLEW_ARB_shader_texture_lod GLEW_GET_VAR(__GLEW_ARB_shader_texture_lod)
-
-#endif /* GL_ARB_shader_texture_lod */
-
-/* ---------------------- GL_ARB_shading_language_100 ---------------------- */
-
-#ifndef GL_ARB_shading_language_100
-#define GL_ARB_shading_language_100 1
-
-#define GL_SHADING_LANGUAGE_VERSION_ARB 0x8B8C
-
-#define GLEW_ARB_shading_language_100 GLEW_GET_VAR(__GLEW_ARB_shading_language_100)
-
-#endif /* GL_ARB_shading_language_100 */
-
-/* -------------------- GL_ARB_shading_language_include -------------------- */
-
-#ifndef GL_ARB_shading_language_include
-#define GL_ARB_shading_language_include 1
-
-#define GL_SHADER_INCLUDE_ARB 0x8DAE
-#define GL_NAMED_STRING_LENGTH_ARB 0x8DE9
-#define GL_NAMED_STRING_TYPE_ARB 0x8DEA
-
-typedef void (GLAPIENTRY * PFNGLCOMPILESHADERINCLUDEARBPROC) (GLuint shader, GLsizei count, const char ** path, const GLint *length);
-typedef void (GLAPIENTRY * PFNGLDELETENAMEDSTRINGARBPROC) (GLint namelen, const char* name);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDSTRINGARBPROC) (GLint namelen, const char* name, GLsizei bufSize, GLint *stringlen, char *string);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDSTRINGIVARBPROC) (GLint namelen, const char* name, GLenum pname, GLint *params);
-typedef GLboolean (GLAPIENTRY * PFNGLISNAMEDSTRINGARBPROC) (GLint namelen, const char* name);
-typedef void (GLAPIENTRY * PFNGLNAMEDSTRINGARBPROC) (GLenum type, GLint namelen, const char* name, GLint stringlen, const char *string);
-
-#define glCompileShaderIncludeARB GLEW_GET_FUN(__glewCompileShaderIncludeARB)
-#define glDeleteNamedStringARB GLEW_GET_FUN(__glewDeleteNamedStringARB)
-#define glGetNamedStringARB GLEW_GET_FUN(__glewGetNamedStringARB)
-#define glGetNamedStringivARB GLEW_GET_FUN(__glewGetNamedStringivARB)
-#define glIsNamedStringARB GLEW_GET_FUN(__glewIsNamedStringARB)
-#define glNamedStringARB GLEW_GET_FUN(__glewNamedStringARB)
-
-#define GLEW_ARB_shading_language_include GLEW_GET_VAR(__GLEW_ARB_shading_language_include)
-
-#endif /* GL_ARB_shading_language_include */
-
-/* ----------------------------- GL_ARB_shadow ----------------------------- */
-
-#ifndef GL_ARB_shadow
-#define GL_ARB_shadow 1
-
-#define GL_TEXTURE_COMPARE_MODE_ARB 0x884C
-#define GL_TEXTURE_COMPARE_FUNC_ARB 0x884D
-#define GL_COMPARE_R_TO_TEXTURE_ARB 0x884E
-
-#define GLEW_ARB_shadow GLEW_GET_VAR(__GLEW_ARB_shadow)
-
-#endif /* GL_ARB_shadow */
-
-/* ------------------------- GL_ARB_shadow_ambient ------------------------- */
-
-#ifndef GL_ARB_shadow_ambient
-#define GL_ARB_shadow_ambient 1
-
-#define GL_TEXTURE_COMPARE_FAIL_VALUE_ARB 0x80BF
-
-#define GLEW_ARB_shadow_ambient GLEW_GET_VAR(__GLEW_ARB_shadow_ambient)
-
-#endif /* GL_ARB_shadow_ambient */
-
-/* ------------------------------ GL_ARB_sync ------------------------------ */
-
-#ifndef GL_ARB_sync
-#define GL_ARB_sync 1
-
-#define GL_SYNC_FLUSH_COMMANDS_BIT 0x00000001
-#define GL_MAX_SERVER_WAIT_TIMEOUT 0x9111
-#define GL_OBJECT_TYPE 0x9112
-#define GL_SYNC_CONDITION 0x9113
-#define GL_SYNC_STATUS 0x9114
-#define GL_SYNC_FLAGS 0x9115
-#define GL_SYNC_FENCE 0x9116
-#define GL_SYNC_GPU_COMMANDS_COMPLETE 0x9117
-#define GL_UNSIGNALED 0x9118
-#define GL_SIGNALED 0x9119
-#define GL_ALREADY_SIGNALED 0x911A
-#define GL_TIMEOUT_EXPIRED 0x911B
-#define GL_CONDITION_SATISFIED 0x911C
-#define GL_WAIT_FAILED 0x911D
-#define GL_TIMEOUT_IGNORED 0xFFFFFFFFFFFFFFFF
-
-typedef GLenum (GLAPIENTRY * PFNGLCLIENTWAITSYNCPROC) (GLsync GLsync,GLbitfield flags,GLuint64 timeout);
-typedef void (GLAPIENTRY * PFNGLDELETESYNCPROC) (GLsync GLsync);
-typedef GLsync (GLAPIENTRY * PFNGLFENCESYNCPROC) (GLenum condition,GLbitfield flags);
-typedef void (GLAPIENTRY * PFNGLGETINTEGER64VPROC) (GLenum pname, GLint64* params);
-typedef void (GLAPIENTRY * PFNGLGETSYNCIVPROC) (GLsync GLsync,GLenum pname,GLsizei bufSize,GLsizei* length, GLint *values);
-typedef GLboolean (GLAPIENTRY * PFNGLISSYNCPROC) (GLsync GLsync);
-typedef void (GLAPIENTRY * PFNGLWAITSYNCPROC) (GLsync GLsync,GLbitfield flags,GLuint64 timeout);
-
-#define glClientWaitSync GLEW_GET_FUN(__glewClientWaitSync)
-#define glDeleteSync GLEW_GET_FUN(__glewDeleteSync)
-#define glFenceSync GLEW_GET_FUN(__glewFenceSync)
-#define glGetInteger64v GLEW_GET_FUN(__glewGetInteger64v)
-#define glGetSynciv GLEW_GET_FUN(__glewGetSynciv)
-#define glIsSync GLEW_GET_FUN(__glewIsSync)
-#define glWaitSync GLEW_GET_FUN(__glewWaitSync)
-
-#define GLEW_ARB_sync GLEW_GET_VAR(__GLEW_ARB_sync)
-
-#endif /* GL_ARB_sync */
-
-/* ----------------------- GL_ARB_tessellation_shader ---------------------- */
-
-#ifndef GL_ARB_tessellation_shader
-#define GL_ARB_tessellation_shader 1
-
-#define GL_PATCHES 0xE
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER 0x84F0
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER 0x84F1
-#define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS 0x886C
-#define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS 0x886D
-#define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E1E
-#define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E1F
-#define GL_PATCH_VERTICES 0x8E72
-#define GL_PATCH_DEFAULT_INNER_LEVEL 0x8E73
-#define GL_PATCH_DEFAULT_OUTER_LEVEL 0x8E74
-#define GL_TESS_CONTROL_OUTPUT_VERTICES 0x8E75
-#define GL_TESS_GEN_MODE 0x8E76
-#define GL_TESS_GEN_SPACING 0x8E77
-#define GL_TESS_GEN_VERTEX_ORDER 0x8E78
-#define GL_TESS_GEN_POINT_MODE 0x8E79
-#define GL_ISOLINES 0x8E7A
-#define GL_FRACTIONAL_ODD 0x8E7B
-#define GL_FRACTIONAL_EVEN 0x8E7C
-#define GL_MAX_PATCH_VERTICES 0x8E7D
-#define GL_MAX_TESS_GEN_LEVEL 0x8E7E
-#define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E7F
-#define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E80
-#define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS 0x8E81
-#define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS 0x8E82
-#define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS 0x8E83
-#define GL_MAX_TESS_PATCH_COMPONENTS 0x8E84
-#define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS 0x8E85
-#define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS 0x8E86
-#define GL_TESS_EVALUATION_SHADER 0x8E87
-#define GL_TESS_CONTROL_SHADER 0x8E88
-#define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS 0x8E89
-#define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS 0x8E8A
-
-typedef void (GLAPIENTRY * PFNGLPATCHPARAMETERFVPROC) (GLenum pname, const GLfloat* values);
-typedef void (GLAPIENTRY * PFNGLPATCHPARAMETERIPROC) (GLenum pname, GLint value);
-
-#define glPatchParameterfv GLEW_GET_FUN(__glewPatchParameterfv)
-#define glPatchParameteri GLEW_GET_FUN(__glewPatchParameteri)
-
-#define GLEW_ARB_tessellation_shader GLEW_GET_VAR(__GLEW_ARB_tessellation_shader)
-
-#endif /* GL_ARB_tessellation_shader */
-
-/* ---------------------- GL_ARB_texture_border_clamp ---------------------- */
-
-#ifndef GL_ARB_texture_border_clamp
-#define GL_ARB_texture_border_clamp 1
-
-#define GL_CLAMP_TO_BORDER_ARB 0x812D
-
-#define GLEW_ARB_texture_border_clamp GLEW_GET_VAR(__GLEW_ARB_texture_border_clamp)
-
-#endif /* GL_ARB_texture_border_clamp */
-
-/* ---------------------- GL_ARB_texture_buffer_object --------------------- */
-
-#ifndef GL_ARB_texture_buffer_object
-#define GL_ARB_texture_buffer_object 1
-
-#define GL_TEXTURE_BUFFER_ARB 0x8C2A
-#define GL_MAX_TEXTURE_BUFFER_SIZE_ARB 0x8C2B
-#define GL_TEXTURE_BINDING_BUFFER_ARB 0x8C2C
-#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB 0x8C2D
-#define GL_TEXTURE_BUFFER_FORMAT_ARB 0x8C2E
-
-typedef void (GLAPIENTRY * PFNGLTEXBUFFERARBPROC) (GLenum target, GLenum internalformat, GLuint buffer);
-
-#define glTexBufferARB GLEW_GET_FUN(__glewTexBufferARB)
-
-#define GLEW_ARB_texture_buffer_object GLEW_GET_VAR(__GLEW_ARB_texture_buffer_object)
-
-#endif /* GL_ARB_texture_buffer_object */
-
-/* ------------------- GL_ARB_texture_buffer_object_rgb32 ------------------ */
-
-#ifndef GL_ARB_texture_buffer_object_rgb32
-#define GL_ARB_texture_buffer_object_rgb32 1
-
-#define GLEW_ARB_texture_buffer_object_rgb32 GLEW_GET_VAR(__GLEW_ARB_texture_buffer_object_rgb32)
-
-#endif /* GL_ARB_texture_buffer_object_rgb32 */
-
-/* ----------------------- GL_ARB_texture_compression ---------------------- */
-
-#ifndef GL_ARB_texture_compression
-#define GL_ARB_texture_compression 1
-
-#define GL_COMPRESSED_ALPHA_ARB 0x84E9
-#define GL_COMPRESSED_LUMINANCE_ARB 0x84EA
-#define GL_COMPRESSED_LUMINANCE_ALPHA_ARB 0x84EB
-#define GL_COMPRESSED_INTENSITY_ARB 0x84EC
-#define GL_COMPRESSED_RGB_ARB 0x84ED
-#define GL_COMPRESSED_RGBA_ARB 0x84EE
-#define GL_TEXTURE_COMPRESSION_HINT_ARB 0x84EF
-#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB 0x86A0
-#define GL_TEXTURE_COMPRESSED_ARB 0x86A1
-#define GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A2
-#define GL_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A3
-
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEARBPROC) (GLenum target, GLint lod, void* img);
-
-#define glCompressedTexImage1DARB GLEW_GET_FUN(__glewCompressedTexImage1DARB)
-#define glCompressedTexImage2DARB GLEW_GET_FUN(__glewCompressedTexImage2DARB)
-#define glCompressedTexImage3DARB GLEW_GET_FUN(__glewCompressedTexImage3DARB)
-#define glCompressedTexSubImage1DARB GLEW_GET_FUN(__glewCompressedTexSubImage1DARB)
-#define glCompressedTexSubImage2DARB GLEW_GET_FUN(__glewCompressedTexSubImage2DARB)
-#define glCompressedTexSubImage3DARB GLEW_GET_FUN(__glewCompressedTexSubImage3DARB)
-#define glGetCompressedTexImageARB GLEW_GET_FUN(__glewGetCompressedTexImageARB)
-
-#define GLEW_ARB_texture_compression GLEW_GET_VAR(__GLEW_ARB_texture_compression)
-
-#endif /* GL_ARB_texture_compression */
-
-/* -------------------- GL_ARB_texture_compression_bptc -------------------- */
-
-#ifndef GL_ARB_texture_compression_bptc
-#define GL_ARB_texture_compression_bptc 1
-
-#define GL_COMPRESSED_RGBA_BPTC_UNORM_ARB 0x8E8C
-#define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB 0x8E8D
-#define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB 0x8E8E
-#define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB 0x8E8F
-
-#define GLEW_ARB_texture_compression_bptc GLEW_GET_VAR(__GLEW_ARB_texture_compression_bptc)
-
-#endif /* GL_ARB_texture_compression_bptc */
-
-/* -------------------- GL_ARB_texture_compression_rgtc -------------------- */
-
-#ifndef GL_ARB_texture_compression_rgtc
-#define GL_ARB_texture_compression_rgtc 1
-
-#define GL_COMPRESSED_RED_RGTC1 0x8DBB
-#define GL_COMPRESSED_SIGNED_RED_RGTC1 0x8DBC
-#define GL_COMPRESSED_RG_RGTC2 0x8DBD
-#define GL_COMPRESSED_SIGNED_RG_RGTC2 0x8DBE
-
-#define GLEW_ARB_texture_compression_rgtc GLEW_GET_VAR(__GLEW_ARB_texture_compression_rgtc)
-
-#endif /* GL_ARB_texture_compression_rgtc */
-
-/* ------------------------ GL_ARB_texture_cube_map ------------------------ */
-
-#ifndef GL_ARB_texture_cube_map
-#define GL_ARB_texture_cube_map 1
-
-#define GL_NORMAL_MAP_ARB 0x8511
-#define GL_REFLECTION_MAP_ARB 0x8512
-#define GL_TEXTURE_CUBE_MAP_ARB 0x8513
-#define GL_TEXTURE_BINDING_CUBE_MAP_ARB 0x8514
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x8515
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x8516
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x8517
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x8518
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x8519
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x851A
-#define GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B
-#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB 0x851C
-
-#define GLEW_ARB_texture_cube_map GLEW_GET_VAR(__GLEW_ARB_texture_cube_map)
-
-#endif /* GL_ARB_texture_cube_map */
-
-/* --------------------- GL_ARB_texture_cube_map_array --------------------- */
-
-#ifndef GL_ARB_texture_cube_map_array
-#define GL_ARB_texture_cube_map_array 1
-
-#define GL_TEXTURE_CUBE_MAP_ARRAY_ARB 0x9009
-#define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB 0x900A
-#define GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB 0x900B
-#define GL_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900C
-#define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB 0x900D
-#define GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900E
-#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900F
-
-#define GLEW_ARB_texture_cube_map_array GLEW_GET_VAR(__GLEW_ARB_texture_cube_map_array)
-
-#endif /* GL_ARB_texture_cube_map_array */
-
-/* ------------------------- GL_ARB_texture_env_add ------------------------ */
-
-#ifndef GL_ARB_texture_env_add
-#define GL_ARB_texture_env_add 1
-
-#define GLEW_ARB_texture_env_add GLEW_GET_VAR(__GLEW_ARB_texture_env_add)
-
-#endif /* GL_ARB_texture_env_add */
-
-/* ----------------------- GL_ARB_texture_env_combine ---------------------- */
-
-#ifndef GL_ARB_texture_env_combine
-#define GL_ARB_texture_env_combine 1
-
-#define GL_SUBTRACT_ARB 0x84E7
-#define GL_COMBINE_ARB 0x8570
-#define GL_COMBINE_RGB_ARB 0x8571
-#define GL_COMBINE_ALPHA_ARB 0x8572
-#define GL_RGB_SCALE_ARB 0x8573
-#define GL_ADD_SIGNED_ARB 0x8574
-#define GL_INTERPOLATE_ARB 0x8575
-#define GL_CONSTANT_ARB 0x8576
-#define GL_PRIMARY_COLOR_ARB 0x8577
-#define GL_PREVIOUS_ARB 0x8578
-#define GL_SOURCE0_RGB_ARB 0x8580
-#define GL_SOURCE1_RGB_ARB 0x8581
-#define GL_SOURCE2_RGB_ARB 0x8582
-#define GL_SOURCE0_ALPHA_ARB 0x8588
-#define GL_SOURCE1_ALPHA_ARB 0x8589
-#define GL_SOURCE2_ALPHA_ARB 0x858A
-#define GL_OPERAND0_RGB_ARB 0x8590
-#define GL_OPERAND1_RGB_ARB 0x8591
-#define GL_OPERAND2_RGB_ARB 0x8592
-#define GL_OPERAND0_ALPHA_ARB 0x8598
-#define GL_OPERAND1_ALPHA_ARB 0x8599
-#define GL_OPERAND2_ALPHA_ARB 0x859A
-
-#define GLEW_ARB_texture_env_combine GLEW_GET_VAR(__GLEW_ARB_texture_env_combine)
-
-#endif /* GL_ARB_texture_env_combine */
-
-/* ---------------------- GL_ARB_texture_env_crossbar ---------------------- */
-
-#ifndef GL_ARB_texture_env_crossbar
-#define GL_ARB_texture_env_crossbar 1
-
-#define GLEW_ARB_texture_env_crossbar GLEW_GET_VAR(__GLEW_ARB_texture_env_crossbar)
-
-#endif /* GL_ARB_texture_env_crossbar */
-
-/* ------------------------ GL_ARB_texture_env_dot3 ------------------------ */
-
-#ifndef GL_ARB_texture_env_dot3
-#define GL_ARB_texture_env_dot3 1
-
-#define GL_DOT3_RGB_ARB 0x86AE
-#define GL_DOT3_RGBA_ARB 0x86AF
-
-#define GLEW_ARB_texture_env_dot3 GLEW_GET_VAR(__GLEW_ARB_texture_env_dot3)
-
-#endif /* GL_ARB_texture_env_dot3 */
-
-/* -------------------------- GL_ARB_texture_float ------------------------- */
-
-#ifndef GL_ARB_texture_float
-#define GL_ARB_texture_float 1
-
-#define GL_RGBA32F_ARB 0x8814
-#define GL_RGB32F_ARB 0x8815
-#define GL_ALPHA32F_ARB 0x8816
-#define GL_INTENSITY32F_ARB 0x8817
-#define GL_LUMINANCE32F_ARB 0x8818
-#define GL_LUMINANCE_ALPHA32F_ARB 0x8819
-#define GL_RGBA16F_ARB 0x881A
-#define GL_RGB16F_ARB 0x881B
-#define GL_ALPHA16F_ARB 0x881C
-#define GL_INTENSITY16F_ARB 0x881D
-#define GL_LUMINANCE16F_ARB 0x881E
-#define GL_LUMINANCE_ALPHA16F_ARB 0x881F
-#define GL_TEXTURE_RED_TYPE_ARB 0x8C10
-#define GL_TEXTURE_GREEN_TYPE_ARB 0x8C11
-#define GL_TEXTURE_BLUE_TYPE_ARB 0x8C12
-#define GL_TEXTURE_ALPHA_TYPE_ARB 0x8C13
-#define GL_TEXTURE_LUMINANCE_TYPE_ARB 0x8C14
-#define GL_TEXTURE_INTENSITY_TYPE_ARB 0x8C15
-#define GL_TEXTURE_DEPTH_TYPE_ARB 0x8C16
-#define GL_UNSIGNED_NORMALIZED_ARB 0x8C17
-
-#define GLEW_ARB_texture_float GLEW_GET_VAR(__GLEW_ARB_texture_float)
-
-#endif /* GL_ARB_texture_float */
-
-/* ------------------------- GL_ARB_texture_gather ------------------------- */
-
-#ifndef GL_ARB_texture_gather
-#define GL_ARB_texture_gather 1
-
-#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5E
-#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5F
-#define GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB 0x8F9F
-
-#define GLEW_ARB_texture_gather GLEW_GET_VAR(__GLEW_ARB_texture_gather)
-
-#endif /* GL_ARB_texture_gather */
-
-/* --------------------- GL_ARB_texture_mirrored_repeat -------------------- */
-
-#ifndef GL_ARB_texture_mirrored_repeat
-#define GL_ARB_texture_mirrored_repeat 1
-
-#define GL_MIRRORED_REPEAT_ARB 0x8370
-
-#define GLEW_ARB_texture_mirrored_repeat GLEW_GET_VAR(__GLEW_ARB_texture_mirrored_repeat)
-
-#endif /* GL_ARB_texture_mirrored_repeat */
-
-/* ----------------------- GL_ARB_texture_multisample ---------------------- */
-
-#ifndef GL_ARB_texture_multisample
-#define GL_ARB_texture_multisample 1
-
-#define GL_SAMPLE_POSITION 0x8E50
-#define GL_SAMPLE_MASK 0x8E51
-#define GL_SAMPLE_MASK_VALUE 0x8E52
-#define GL_MAX_SAMPLE_MASK_WORDS 0x8E59
-#define GL_TEXTURE_2D_MULTISAMPLE 0x9100
-#define GL_PROXY_TEXTURE_2D_MULTISAMPLE 0x9101
-#define GL_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9102
-#define GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9103
-#define GL_TEXTURE_BINDING_2D_MULTISAMPLE 0x9104
-#define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY 0x9105
-#define GL_TEXTURE_SAMPLES 0x9106
-#define GL_TEXTURE_FIXED_SAMPLE_LOCATIONS 0x9107
-#define GL_SAMPLER_2D_MULTISAMPLE 0x9108
-#define GL_INT_SAMPLER_2D_MULTISAMPLE 0x9109
-#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE 0x910A
-#define GL_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910B
-#define GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910C
-#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910D
-#define GL_MAX_COLOR_TEXTURE_SAMPLES 0x910E
-#define GL_MAX_DEPTH_TEXTURE_SAMPLES 0x910F
-#define GL_MAX_INTEGER_SAMPLES 0x9110
-
-typedef void (GLAPIENTRY * PFNGLGETMULTISAMPLEFVPROC) (GLenum pname, GLuint index, GLfloat* val);
-typedef void (GLAPIENTRY * PFNGLSAMPLEMASKIPROC) (GLuint index, GLbitfield mask);
-typedef void (GLAPIENTRY * PFNGLTEXIMAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
-typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
-
-#define glGetMultisamplefv GLEW_GET_FUN(__glewGetMultisamplefv)
-#define glSampleMaski GLEW_GET_FUN(__glewSampleMaski)
-#define glTexImage2DMultisample GLEW_GET_FUN(__glewTexImage2DMultisample)
-#define glTexImage3DMultisample GLEW_GET_FUN(__glewTexImage3DMultisample)
-
-#define GLEW_ARB_texture_multisample GLEW_GET_VAR(__GLEW_ARB_texture_multisample)
-
-#endif /* GL_ARB_texture_multisample */
-
-/* -------------------- GL_ARB_texture_non_power_of_two -------------------- */
-
-#ifndef GL_ARB_texture_non_power_of_two
-#define GL_ARB_texture_non_power_of_two 1
-
-#define GLEW_ARB_texture_non_power_of_two GLEW_GET_VAR(__GLEW_ARB_texture_non_power_of_two)
-
-#endif /* GL_ARB_texture_non_power_of_two */
-
-/* ------------------------ GL_ARB_texture_query_lod ----------------------- */
-
-#ifndef GL_ARB_texture_query_lod
-#define GL_ARB_texture_query_lod 1
-
-#define GLEW_ARB_texture_query_lod GLEW_GET_VAR(__GLEW_ARB_texture_query_lod)
-
-#endif /* GL_ARB_texture_query_lod */
-
-/* ------------------------ GL_ARB_texture_rectangle ----------------------- */
-
-#ifndef GL_ARB_texture_rectangle
-#define GL_ARB_texture_rectangle 1
-
-#define GL_TEXTURE_RECTANGLE_ARB 0x84F5
-#define GL_TEXTURE_BINDING_RECTANGLE_ARB 0x84F6
-#define GL_PROXY_TEXTURE_RECTANGLE_ARB 0x84F7
-#define GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB 0x84F8
-#define GL_SAMPLER_2D_RECT_ARB 0x8B63
-#define GL_SAMPLER_2D_RECT_SHADOW_ARB 0x8B64
-
-#define GLEW_ARB_texture_rectangle GLEW_GET_VAR(__GLEW_ARB_texture_rectangle)
-
-#endif /* GL_ARB_texture_rectangle */
-
-/* --------------------------- GL_ARB_texture_rg --------------------------- */
-
-#ifndef GL_ARB_texture_rg
-#define GL_ARB_texture_rg 1
-
-#define GL_RED 0x1903
-#define GL_COMPRESSED_RED 0x8225
-#define GL_COMPRESSED_RG 0x8226
-#define GL_RG 0x8227
-#define GL_RG_INTEGER 0x8228
-#define GL_R8 0x8229
-#define GL_R16 0x822A
-#define GL_RG8 0x822B
-#define GL_RG16 0x822C
-#define GL_R16F 0x822D
-#define GL_R32F 0x822E
-#define GL_RG16F 0x822F
-#define GL_RG32F 0x8230
-#define GL_R8I 0x8231
-#define GL_R8UI 0x8232
-#define GL_R16I 0x8233
-#define GL_R16UI 0x8234
-#define GL_R32I 0x8235
-#define GL_R32UI 0x8236
-#define GL_RG8I 0x8237
-#define GL_RG8UI 0x8238
-#define GL_RG16I 0x8239
-#define GL_RG16UI 0x823A
-#define GL_RG32I 0x823B
-#define GL_RG32UI 0x823C
-
-#define GLEW_ARB_texture_rg GLEW_GET_VAR(__GLEW_ARB_texture_rg)
-
-#endif /* GL_ARB_texture_rg */
-
-/* ----------------------- GL_ARB_texture_rgb10_a2ui ----------------------- */
-
-#ifndef GL_ARB_texture_rgb10_a2ui
-#define GL_ARB_texture_rgb10_a2ui 1
-
-#define GL_RGB10_A2UI 0x906F
-
-#define GLEW_ARB_texture_rgb10_a2ui GLEW_GET_VAR(__GLEW_ARB_texture_rgb10_a2ui)
-
-#endif /* GL_ARB_texture_rgb10_a2ui */
-
-/* ------------------------- GL_ARB_texture_swizzle ------------------------ */
-
-#ifndef GL_ARB_texture_swizzle
-#define GL_ARB_texture_swizzle 1
-
-#define GL_TEXTURE_SWIZZLE_R 0x8E42
-#define GL_TEXTURE_SWIZZLE_G 0x8E43
-#define GL_TEXTURE_SWIZZLE_B 0x8E44
-#define GL_TEXTURE_SWIZZLE_A 0x8E45
-#define GL_TEXTURE_SWIZZLE_RGBA 0x8E46
-
-#define GLEW_ARB_texture_swizzle GLEW_GET_VAR(__GLEW_ARB_texture_swizzle)
-
-#endif /* GL_ARB_texture_swizzle */
-
-/* --------------------------- GL_ARB_timer_query -------------------------- */
-
-#ifndef GL_ARB_timer_query
-#define GL_ARB_timer_query 1
-
-#define GL_TIME_ELAPSED 0x88BF
-#define GL_TIMESTAMP 0x8E28
-
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTI64VPROC) (GLuint id, GLenum pname, GLint64* params);
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUI64VPROC) (GLuint id, GLenum pname, GLuint64* params);
-typedef void (GLAPIENTRY * PFNGLQUERYCOUNTERPROC) (GLuint id, GLenum target);
-
-#define glGetQueryObjecti64v GLEW_GET_FUN(__glewGetQueryObjecti64v)
-#define glGetQueryObjectui64v GLEW_GET_FUN(__glewGetQueryObjectui64v)
-#define glQueryCounter GLEW_GET_FUN(__glewQueryCounter)
-
-#define GLEW_ARB_timer_query GLEW_GET_VAR(__GLEW_ARB_timer_query)
-
-#endif /* GL_ARB_timer_query */
-
-/* ----------------------- GL_ARB_transform_feedback2 ---------------------- */
-
-#ifndef GL_ARB_transform_feedback2
-#define GL_ARB_transform_feedback2 1
-
-#define GL_TRANSFORM_FEEDBACK 0x8E22
-#define GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED 0x8E23
-#define GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE 0x8E24
-#define GL_TRANSFORM_FEEDBACK_BINDING 0x8E25
-
-typedef void (GLAPIENTRY * PFNGLBINDTRANSFORMFEEDBACKPROC) (GLenum target, GLuint id);
-typedef void (GLAPIENTRY * PFNGLDELETETRANSFORMFEEDBACKSPROC) (GLsizei n, const GLuint* ids);
-typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKPROC) (GLenum mode, GLuint id);
-typedef void (GLAPIENTRY * PFNGLGENTRANSFORMFEEDBACKSPROC) (GLsizei n, GLuint* ids);
-typedef GLboolean (GLAPIENTRY * PFNGLISTRANSFORMFEEDBACKPROC) (GLuint id);
-typedef void (GLAPIENTRY * PFNGLPAUSETRANSFORMFEEDBACKPROC) (void);
-typedef void (GLAPIENTRY * PFNGLRESUMETRANSFORMFEEDBACKPROC) (void);
-
-#define glBindTransformFeedback GLEW_GET_FUN(__glewBindTransformFeedback)
-#define glDeleteTransformFeedbacks GLEW_GET_FUN(__glewDeleteTransformFeedbacks)
-#define glDrawTransformFeedback GLEW_GET_FUN(__glewDrawTransformFeedback)
-#define glGenTransformFeedbacks GLEW_GET_FUN(__glewGenTransformFeedbacks)
-#define glIsTransformFeedback GLEW_GET_FUN(__glewIsTransformFeedback)
-#define glPauseTransformFeedback GLEW_GET_FUN(__glewPauseTransformFeedback)
-#define glResumeTransformFeedback GLEW_GET_FUN(__glewResumeTransformFeedback)
-
-#define GLEW_ARB_transform_feedback2 GLEW_GET_VAR(__GLEW_ARB_transform_feedback2)
-
-#endif /* GL_ARB_transform_feedback2 */
-
-/* ----------------------- GL_ARB_transform_feedback3 ---------------------- */
-
-#ifndef GL_ARB_transform_feedback3
-#define GL_ARB_transform_feedback3 1
-
-#define GL_MAX_TRANSFORM_FEEDBACK_BUFFERS 0x8E70
-#define GL_MAX_VERTEX_STREAMS 0x8E71
-
-typedef void (GLAPIENTRY * PFNGLBEGINQUERYINDEXEDPROC) (GLenum target, GLuint index, GLuint id);
-typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC) (GLenum mode, GLuint id, GLuint stream);
-typedef void (GLAPIENTRY * PFNGLENDQUERYINDEXEDPROC) (GLenum target, GLuint index);
-typedef void (GLAPIENTRY * PFNGLGETQUERYINDEXEDIVPROC) (GLenum target, GLuint index, GLenum pname, GLint* params);
-
-#define glBeginQueryIndexed GLEW_GET_FUN(__glewBeginQueryIndexed)
-#define glDrawTransformFeedbackStream GLEW_GET_FUN(__glewDrawTransformFeedbackStream)
-#define glEndQueryIndexed GLEW_GET_FUN(__glewEndQueryIndexed)
-#define glGetQueryIndexediv GLEW_GET_FUN(__glewGetQueryIndexediv)
-
-#define GLEW_ARB_transform_feedback3 GLEW_GET_VAR(__GLEW_ARB_transform_feedback3)
-
-#endif /* GL_ARB_transform_feedback3 */
-
-/* ------------------------ GL_ARB_transpose_matrix ------------------------ */
-
-#ifndef GL_ARB_transpose_matrix
-#define GL_ARB_transpose_matrix 1
-
-#define GL_TRANSPOSE_MODELVIEW_MATRIX_ARB 0x84E3
-#define GL_TRANSPOSE_PROJECTION_MATRIX_ARB 0x84E4
-#define GL_TRANSPOSE_TEXTURE_MATRIX_ARB 0x84E5
-#define GL_TRANSPOSE_COLOR_MATRIX_ARB 0x84E6
-
-typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXDARBPROC) (GLdouble m[16]);
-typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXFARBPROC) (GLfloat m[16]);
-typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXDARBPROC) (GLdouble m[16]);
-typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXFARBPROC) (GLfloat m[16]);
-
-#define glLoadTransposeMatrixdARB GLEW_GET_FUN(__glewLoadTransposeMatrixdARB)
-#define glLoadTransposeMatrixfARB GLEW_GET_FUN(__glewLoadTransposeMatrixfARB)
-#define glMultTransposeMatrixdARB GLEW_GET_FUN(__glewMultTransposeMatrixdARB)
-#define glMultTransposeMatrixfARB GLEW_GET_FUN(__glewMultTransposeMatrixfARB)
-
-#define GLEW_ARB_transpose_matrix GLEW_GET_VAR(__GLEW_ARB_transpose_matrix)
-
-#endif /* GL_ARB_transpose_matrix */
-
-/* ---------------------- GL_ARB_uniform_buffer_object --------------------- */
-
-#ifndef GL_ARB_uniform_buffer_object
-#define GL_ARB_uniform_buffer_object 1
-
-#define GL_UNIFORM_BUFFER 0x8A11
-#define GL_UNIFORM_BUFFER_BINDING 0x8A28
-#define GL_UNIFORM_BUFFER_START 0x8A29
-#define GL_UNIFORM_BUFFER_SIZE 0x8A2A
-#define GL_MAX_VERTEX_UNIFORM_BLOCKS 0x8A2B
-#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS 0x8A2C
-#define GL_MAX_FRAGMENT_UNIFORM_BLOCKS 0x8A2D
-#define GL_MAX_COMBINED_UNIFORM_BLOCKS 0x8A2E
-#define GL_MAX_UNIFORM_BUFFER_BINDINGS 0x8A2F
-#define GL_MAX_UNIFORM_BLOCK_SIZE 0x8A30
-#define GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS 0x8A31
-#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS 0x8A32
-#define GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS 0x8A33
-#define GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT 0x8A34
-#define GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH 0x8A35
-#define GL_ACTIVE_UNIFORM_BLOCKS 0x8A36
-#define GL_UNIFORM_TYPE 0x8A37
-#define GL_UNIFORM_SIZE 0x8A38
-#define GL_UNIFORM_NAME_LENGTH 0x8A39
-#define GL_UNIFORM_BLOCK_INDEX 0x8A3A
-#define GL_UNIFORM_OFFSET 0x8A3B
-#define GL_UNIFORM_ARRAY_STRIDE 0x8A3C
-#define GL_UNIFORM_MATRIX_STRIDE 0x8A3D
-#define GL_UNIFORM_IS_ROW_MAJOR 0x8A3E
-#define GL_UNIFORM_BLOCK_BINDING 0x8A3F
-#define GL_UNIFORM_BLOCK_DATA_SIZE 0x8A40
-#define GL_UNIFORM_BLOCK_NAME_LENGTH 0x8A41
-#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS 0x8A42
-#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES 0x8A43
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER 0x8A44
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER 0x8A45
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER 0x8A46
-#define GL_INVALID_INDEX 0xFFFFFFFF
-
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASEPROC) (GLenum target, GLuint index, GLuint buffer);
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGEPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
-typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC) (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, char* uniformBlockName);
-typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMBLOCKIVPROC) (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMNAMEPROC) (GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei* length, char* uniformName);
-typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMSIVPROC) (GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETINTEGERI_VPROC) (GLenum target, GLuint index, GLint* data);
-typedef GLuint (GLAPIENTRY * PFNGLGETUNIFORMBLOCKINDEXPROC) (GLuint program, const char* uniformBlockName);
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMINDICESPROC) (GLuint program, GLsizei uniformCount, const char** uniformNames, GLuint* uniformIndices);
-typedef void (GLAPIENTRY * PFNGLUNIFORMBLOCKBINDINGPROC) (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
-
-#define glBindBufferBase GLEW_GET_FUN(__glewBindBufferBase)
-#define glBindBufferRange GLEW_GET_FUN(__glewBindBufferRange)
-#define glGetActiveUniformBlockName GLEW_GET_FUN(__glewGetActiveUniformBlockName)
-#define glGetActiveUniformBlockiv GLEW_GET_FUN(__glewGetActiveUniformBlockiv)
-#define glGetActiveUniformName GLEW_GET_FUN(__glewGetActiveUniformName)
-#define glGetActiveUniformsiv GLEW_GET_FUN(__glewGetActiveUniformsiv)
-#define glGetIntegeri_v GLEW_GET_FUN(__glewGetIntegeri_v)
-#define glGetUniformBlockIndex GLEW_GET_FUN(__glewGetUniformBlockIndex)
-#define glGetUniformIndices GLEW_GET_FUN(__glewGetUniformIndices)
-#define glUniformBlockBinding GLEW_GET_FUN(__glewUniformBlockBinding)
-
-#define GLEW_ARB_uniform_buffer_object GLEW_GET_VAR(__GLEW_ARB_uniform_buffer_object)
-
-#endif /* GL_ARB_uniform_buffer_object */
-
-/* ------------------------ GL_ARB_vertex_array_bgra ----------------------- */
-
-#ifndef GL_ARB_vertex_array_bgra
-#define GL_ARB_vertex_array_bgra 1
-
-#define GL_BGRA 0x80E1
-
-#define GLEW_ARB_vertex_array_bgra GLEW_GET_VAR(__GLEW_ARB_vertex_array_bgra)
-
-#endif /* GL_ARB_vertex_array_bgra */
-
-/* ----------------------- GL_ARB_vertex_array_object ---------------------- */
-
-#ifndef GL_ARB_vertex_array_object
-#define GL_ARB_vertex_array_object 1
-
-#define GL_VERTEX_ARRAY_BINDING 0x85B5
-
-typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYPROC) (GLuint array);
-typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYSPROC) (GLsizei n, const GLuint* arrays);
-typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYSPROC) (GLsizei n, GLuint* arrays);
-typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXARRAYPROC) (GLuint array);
-
-#define glBindVertexArray GLEW_GET_FUN(__glewBindVertexArray)
-#define glDeleteVertexArrays GLEW_GET_FUN(__glewDeleteVertexArrays)
-#define glGenVertexArrays GLEW_GET_FUN(__glewGenVertexArrays)
-#define glIsVertexArray GLEW_GET_FUN(__glewIsVertexArray)
-
-#define GLEW_ARB_vertex_array_object GLEW_GET_VAR(__GLEW_ARB_vertex_array_object)
-
-#endif /* GL_ARB_vertex_array_object */
-
-/* -------------------------- GL_ARB_vertex_blend -------------------------- */
-
-#ifndef GL_ARB_vertex_blend
-#define GL_ARB_vertex_blend 1
-
-#define GL_MODELVIEW0_ARB 0x1700
-#define GL_MODELVIEW1_ARB 0x850A
-#define GL_MAX_VERTEX_UNITS_ARB 0x86A4
-#define GL_ACTIVE_VERTEX_UNITS_ARB 0x86A5
-#define GL_WEIGHT_SUM_UNITY_ARB 0x86A6
-#define GL_VERTEX_BLEND_ARB 0x86A7
-#define GL_CURRENT_WEIGHT_ARB 0x86A8
-#define GL_WEIGHT_ARRAY_TYPE_ARB 0x86A9
-#define GL_WEIGHT_ARRAY_STRIDE_ARB 0x86AA
-#define GL_WEIGHT_ARRAY_SIZE_ARB 0x86AB
-#define GL_WEIGHT_ARRAY_POINTER_ARB 0x86AC
-#define GL_WEIGHT_ARRAY_ARB 0x86AD
-#define GL_MODELVIEW2_ARB 0x8722
-#define GL_MODELVIEW3_ARB 0x8723
-#define GL_MODELVIEW4_ARB 0x8724
-#define GL_MODELVIEW5_ARB 0x8725
-#define GL_MODELVIEW6_ARB 0x8726
-#define GL_MODELVIEW7_ARB 0x8727
-#define GL_MODELVIEW8_ARB 0x8728
-#define GL_MODELVIEW9_ARB 0x8729
-#define GL_MODELVIEW10_ARB 0x872A
-#define GL_MODELVIEW11_ARB 0x872B
-#define GL_MODELVIEW12_ARB 0x872C
-#define GL_MODELVIEW13_ARB 0x872D
-#define GL_MODELVIEW14_ARB 0x872E
-#define GL_MODELVIEW15_ARB 0x872F
-#define GL_MODELVIEW16_ARB 0x8730
-#define GL_MODELVIEW17_ARB 0x8731
-#define GL_MODELVIEW18_ARB 0x8732
-#define GL_MODELVIEW19_ARB 0x8733
-#define GL_MODELVIEW20_ARB 0x8734
-#define GL_MODELVIEW21_ARB 0x8735
-#define GL_MODELVIEW22_ARB 0x8736
-#define GL_MODELVIEW23_ARB 0x8737
-#define GL_MODELVIEW24_ARB 0x8738
-#define GL_MODELVIEW25_ARB 0x8739
-#define GL_MODELVIEW26_ARB 0x873A
-#define GL_MODELVIEW27_ARB 0x873B
-#define GL_MODELVIEW28_ARB 0x873C
-#define GL_MODELVIEW29_ARB 0x873D
-#define GL_MODELVIEW30_ARB 0x873E
-#define GL_MODELVIEW31_ARB 0x873F
-
-typedef void (GLAPIENTRY * PFNGLVERTEXBLENDARBPROC) (GLint count);
-typedef void (GLAPIENTRY * PFNGLWEIGHTPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer);
-typedef void (GLAPIENTRY * PFNGLWEIGHTBVARBPROC) (GLint size, GLbyte *weights);
-typedef void (GLAPIENTRY * PFNGLWEIGHTDVARBPROC) (GLint size, GLdouble *weights);
-typedef void (GLAPIENTRY * PFNGLWEIGHTFVARBPROC) (GLint size, GLfloat *weights);
-typedef void (GLAPIENTRY * PFNGLWEIGHTIVARBPROC) (GLint size, GLint *weights);
-typedef void (GLAPIENTRY * PFNGLWEIGHTSVARBPROC) (GLint size, GLshort *weights);
-typedef void (GLAPIENTRY * PFNGLWEIGHTUBVARBPROC) (GLint size, GLubyte *weights);
-typedef void (GLAPIENTRY * PFNGLWEIGHTUIVARBPROC) (GLint size, GLuint *weights);
-typedef void (GLAPIENTRY * PFNGLWEIGHTUSVARBPROC) (GLint size, GLushort *weights);
-
-#define glVertexBlendARB GLEW_GET_FUN(__glewVertexBlendARB)
-#define glWeightPointerARB GLEW_GET_FUN(__glewWeightPointerARB)
-#define glWeightbvARB GLEW_GET_FUN(__glewWeightbvARB)
-#define glWeightdvARB GLEW_GET_FUN(__glewWeightdvARB)
-#define glWeightfvARB GLEW_GET_FUN(__glewWeightfvARB)
-#define glWeightivARB GLEW_GET_FUN(__glewWeightivARB)
-#define glWeightsvARB GLEW_GET_FUN(__glewWeightsvARB)
-#define glWeightubvARB GLEW_GET_FUN(__glewWeightubvARB)
-#define glWeightuivARB GLEW_GET_FUN(__glewWeightuivARB)
-#define glWeightusvARB GLEW_GET_FUN(__glewWeightusvARB)
-
-#define GLEW_ARB_vertex_blend GLEW_GET_VAR(__GLEW_ARB_vertex_blend)
-
-#endif /* GL_ARB_vertex_blend */
-
-/* ---------------------- GL_ARB_vertex_buffer_object ---------------------- */
-
-#ifndef GL_ARB_vertex_buffer_object
-#define GL_ARB_vertex_buffer_object 1
-
-#define GL_BUFFER_SIZE_ARB 0x8764
-#define GL_BUFFER_USAGE_ARB 0x8765
-#define GL_ARRAY_BUFFER_ARB 0x8892
-#define GL_ELEMENT_ARRAY_BUFFER_ARB 0x8893
-#define GL_ARRAY_BUFFER_BINDING_ARB 0x8894
-#define GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB 0x8895
-#define GL_VERTEX_ARRAY_BUFFER_BINDING_ARB 0x8896
-#define GL_NORMAL_ARRAY_BUFFER_BINDING_ARB 0x8897
-#define GL_COLOR_ARRAY_BUFFER_BINDING_ARB 0x8898
-#define GL_INDEX_ARRAY_BUFFER_BINDING_ARB 0x8899
-#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB 0x889A
-#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB 0x889B
-#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB 0x889C
-#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB 0x889D
-#define GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB 0x889E
-#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB 0x889F
-#define GL_READ_ONLY_ARB 0x88B8
-#define GL_WRITE_ONLY_ARB 0x88B9
-#define GL_READ_WRITE_ARB 0x88BA
-#define GL_BUFFER_ACCESS_ARB 0x88BB
-#define GL_BUFFER_MAPPED_ARB 0x88BC
-#define GL_BUFFER_MAP_POINTER_ARB 0x88BD
-#define GL_STREAM_DRAW_ARB 0x88E0
-#define GL_STREAM_READ_ARB 0x88E1
-#define GL_STREAM_COPY_ARB 0x88E2
-#define GL_STATIC_DRAW_ARB 0x88E4
-#define GL_STATIC_READ_ARB 0x88E5
-#define GL_STATIC_COPY_ARB 0x88E6
-#define GL_DYNAMIC_DRAW_ARB 0x88E8
-#define GL_DYNAMIC_READ_ARB 0x88E9
-#define GL_DYNAMIC_COPY_ARB 0x88EA
-
-typedef ptrdiff_t GLsizeiptrARB;
-typedef ptrdiff_t GLintptrARB;
-
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERARBPROC) (GLenum target, GLuint buffer);
-typedef void (GLAPIENTRY * PFNGLBUFFERDATAARBPROC) (GLenum target, GLsizeiptrARB size, const GLvoid* data, GLenum usage);
-typedef void (GLAPIENTRY * PFNGLBUFFERSUBDATAARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid* data);
-typedef void (GLAPIENTRY * PFNGLDELETEBUFFERSARBPROC) (GLsizei n, const GLuint* buffers);
-typedef void (GLAPIENTRY * PFNGLGENBUFFERSARBPROC) (GLsizei n, GLuint* buffers);
-typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERIVARBPROC) (GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETBUFFERPOINTERVARBPROC) (GLenum target, GLenum pname, GLvoid** params);
-typedef void (GLAPIENTRY * PFNGLGETBUFFERSUBDATAARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid* data);
-typedef GLboolean (GLAPIENTRY * PFNGLISBUFFERARBPROC) (GLuint buffer);
-typedef GLvoid * (GLAPIENTRY * PFNGLMAPBUFFERARBPROC) (GLenum target, GLenum access);
-typedef GLboolean (GLAPIENTRY * PFNGLUNMAPBUFFERARBPROC) (GLenum target);
-
-#define glBindBufferARB GLEW_GET_FUN(__glewBindBufferARB)
-#define glBufferDataARB GLEW_GET_FUN(__glewBufferDataARB)
-#define glBufferSubDataARB GLEW_GET_FUN(__glewBufferSubDataARB)
-#define glDeleteBuffersARB GLEW_GET_FUN(__glewDeleteBuffersARB)
-#define glGenBuffersARB GLEW_GET_FUN(__glewGenBuffersARB)
-#define glGetBufferParameterivARB GLEW_GET_FUN(__glewGetBufferParameterivARB)
-#define glGetBufferPointervARB GLEW_GET_FUN(__glewGetBufferPointervARB)
-#define glGetBufferSubDataARB GLEW_GET_FUN(__glewGetBufferSubDataARB)
-#define glIsBufferARB GLEW_GET_FUN(__glewIsBufferARB)
-#define glMapBufferARB GLEW_GET_FUN(__glewMapBufferARB)
-#define glUnmapBufferARB GLEW_GET_FUN(__glewUnmapBufferARB)
-
-#define GLEW_ARB_vertex_buffer_object GLEW_GET_VAR(__GLEW_ARB_vertex_buffer_object)
-
-#endif /* GL_ARB_vertex_buffer_object */
-
-/* ------------------------- GL_ARB_vertex_program ------------------------- */
-
-#ifndef GL_ARB_vertex_program
-#define GL_ARB_vertex_program 1
-
-#define GL_COLOR_SUM_ARB 0x8458
-#define GL_VERTEX_PROGRAM_ARB 0x8620
-#define GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB 0x8622
-#define GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB 0x8623
-#define GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB 0x8624
-#define GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB 0x8625
-#define GL_CURRENT_VERTEX_ATTRIB_ARB 0x8626
-#define GL_PROGRAM_LENGTH_ARB 0x8627
-#define GL_PROGRAM_STRING_ARB 0x8628
-#define GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB 0x862E
-#define GL_MAX_PROGRAM_MATRICES_ARB 0x862F
-#define GL_CURRENT_MATRIX_STACK_DEPTH_ARB 0x8640
-#define GL_CURRENT_MATRIX_ARB 0x8641
-#define GL_VERTEX_PROGRAM_POINT_SIZE_ARB 0x8642
-#define GL_VERTEX_PROGRAM_TWO_SIDE_ARB 0x8643
-#define GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB 0x8645
-#define GL_PROGRAM_ERROR_POSITION_ARB 0x864B
-#define GL_PROGRAM_BINDING_ARB 0x8677
-#define GL_MAX_VERTEX_ATTRIBS_ARB 0x8869
-#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB 0x886A
-#define GL_PROGRAM_ERROR_STRING_ARB 0x8874
-#define GL_PROGRAM_FORMAT_ASCII_ARB 0x8875
-#define GL_PROGRAM_FORMAT_ARB 0x8876
-#define GL_PROGRAM_INSTRUCTIONS_ARB 0x88A0
-#define GL_MAX_PROGRAM_INSTRUCTIONS_ARB 0x88A1
-#define GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A2
-#define GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A3
-#define GL_PROGRAM_TEMPORARIES_ARB 0x88A4
-#define GL_MAX_PROGRAM_TEMPORARIES_ARB 0x88A5
-#define GL_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A6
-#define GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A7
-#define GL_PROGRAM_PARAMETERS_ARB 0x88A8
-#define GL_MAX_PROGRAM_PARAMETERS_ARB 0x88A9
-#define GL_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AA
-#define GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AB
-#define GL_PROGRAM_ATTRIBS_ARB 0x88AC
-#define GL_MAX_PROGRAM_ATTRIBS_ARB 0x88AD
-#define GL_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AE
-#define GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AF
-#define GL_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B0
-#define GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B1
-#define GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B2
-#define GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B3
-#define GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB 0x88B4
-#define GL_MAX_PROGRAM_ENV_PARAMETERS_ARB 0x88B5
-#define GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB 0x88B6
-#define GL_TRANSPOSE_CURRENT_MATRIX_ARB 0x88B7
-#define GL_MATRIX0_ARB 0x88C0
-#define GL_MATRIX1_ARB 0x88C1
-#define GL_MATRIX2_ARB 0x88C2
-#define GL_MATRIX3_ARB 0x88C3
-#define GL_MATRIX4_ARB 0x88C4
-#define GL_MATRIX5_ARB 0x88C5
-#define GL_MATRIX6_ARB 0x88C6
-#define GL_MATRIX7_ARB 0x88C7
-#define GL_MATRIX8_ARB 0x88C8
-#define GL_MATRIX9_ARB 0x88C9
-#define GL_MATRIX10_ARB 0x88CA
-#define GL_MATRIX11_ARB 0x88CB
-#define GL_MATRIX12_ARB 0x88CC
-#define GL_MATRIX13_ARB 0x88CD
-#define GL_MATRIX14_ARB 0x88CE
-#define GL_MATRIX15_ARB 0x88CF
-#define GL_MATRIX16_ARB 0x88D0
-#define GL_MATRIX17_ARB 0x88D1
-#define GL_MATRIX18_ARB 0x88D2
-#define GL_MATRIX19_ARB 0x88D3
-#define GL_MATRIX20_ARB 0x88D4
-#define GL_MATRIX21_ARB 0x88D5
-#define GL_MATRIX22_ARB 0x88D6
-#define GL_MATRIX23_ARB 0x88D7
-#define GL_MATRIX24_ARB 0x88D8
-#define GL_MATRIX25_ARB 0x88D9
-#define GL_MATRIX26_ARB 0x88DA
-#define GL_MATRIX27_ARB 0x88DB
-#define GL_MATRIX28_ARB 0x88DC
-#define GL_MATRIX29_ARB 0x88DD
-#define GL_MATRIX30_ARB 0x88DE
-#define GL_MATRIX31_ARB 0x88DF
-
-typedef void (GLAPIENTRY * PFNGLBINDPROGRAMARBPROC) (GLenum target, GLuint program);
-typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMSARBPROC) (GLsizei n, const GLuint* programs);
-typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBARRAYARBPROC) (GLuint index);
-typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBARRAYARBPROC) (GLuint index);
-typedef void (GLAPIENTRY * PFNGLGENPROGRAMSARBPROC) (GLsizei n, GLuint* programs);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMENVPARAMETERDVARBPROC) (GLenum target, GLuint index, GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMENVPARAMETERFVARBPROC) (GLenum target, GLuint index, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC) (GLenum target, GLuint index, GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC) (GLenum target, GLuint index, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMSTRINGARBPROC) (GLenum target, GLenum pname, void* string);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVARBPROC) (GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVARBPROC) (GLuint index, GLenum pname, GLvoid** pointer);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBDVARBPROC) (GLuint index, GLenum pname, GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVARBPROC) (GLuint index, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVARBPROC) (GLuint index, GLenum pname, GLint* params);
-typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMARBPROC) (GLuint program);
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4DARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4DVARBPROC) (GLenum target, GLuint index, const GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4FARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4FVARBPROC) (GLenum target, GLuint index, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4DARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4DVARBPROC) (GLenum target, GLuint index, const GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4FARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4FVARBPROC) (GLenum target, GLuint index, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMSTRINGARBPROC) (GLenum target, GLenum format, GLsizei len, const void* string);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DARBPROC) (GLuint index, GLdouble x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DVARBPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FARBPROC) (GLuint index, GLfloat x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVARBPROC) (GLuint index, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SARBPROC) (GLuint index, GLshort x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SVARBPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DARBPROC) (GLuint index, GLdouble x, GLdouble y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DVARBPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FARBPROC) (GLuint index, GLfloat x, GLfloat y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVARBPROC) (GLuint index, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SARBPROC) (GLuint index, GLshort x, GLshort y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SVARBPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DVARBPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVARBPROC) (GLuint index, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SVARBPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NBVARBPROC) (GLuint index, const GLbyte* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NIVARBPROC) (GLuint index, const GLint* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NSVARBPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBARBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBVARBPROC) (GLuint index, const GLubyte* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUIVARBPROC) (GLuint index, const GLuint* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUSVARBPROC) (GLuint index, const GLushort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4BVARBPROC) (GLuint index, const GLbyte* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DVARBPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVARBPROC) (GLuint index, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4IVARBPROC) (GLuint index, const GLint* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SVARBPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBVARBPROC) (GLuint index, const GLubyte* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UIVARBPROC) (GLuint index, const GLuint* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4USVARBPROC) (GLuint index, const GLushort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERARBPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* pointer);
-
-#define glBindProgramARB GLEW_GET_FUN(__glewBindProgramARB)
-#define glDeleteProgramsARB GLEW_GET_FUN(__glewDeleteProgramsARB)
-#define glDisableVertexAttribArrayARB GLEW_GET_FUN(__glewDisableVertexAttribArrayARB)
-#define glEnableVertexAttribArrayARB GLEW_GET_FUN(__glewEnableVertexAttribArrayARB)
-#define glGenProgramsARB GLEW_GET_FUN(__glewGenProgramsARB)
-#define glGetProgramEnvParameterdvARB GLEW_GET_FUN(__glewGetProgramEnvParameterdvARB)
-#define glGetProgramEnvParameterfvARB GLEW_GET_FUN(__glewGetProgramEnvParameterfvARB)
-#define glGetProgramLocalParameterdvARB GLEW_GET_FUN(__glewGetProgramLocalParameterdvARB)
-#define glGetProgramLocalParameterfvARB GLEW_GET_FUN(__glewGetProgramLocalParameterfvARB)
-#define glGetProgramStringARB GLEW_GET_FUN(__glewGetProgramStringARB)
-#define glGetProgramivARB GLEW_GET_FUN(__glewGetProgramivARB)
-#define glGetVertexAttribPointervARB GLEW_GET_FUN(__glewGetVertexAttribPointervARB)
-#define glGetVertexAttribdvARB GLEW_GET_FUN(__glewGetVertexAttribdvARB)
-#define glGetVertexAttribfvARB GLEW_GET_FUN(__glewGetVertexAttribfvARB)
-#define glGetVertexAttribivARB GLEW_GET_FUN(__glewGetVertexAttribivARB)
-#define glIsProgramARB GLEW_GET_FUN(__glewIsProgramARB)
-#define glProgramEnvParameter4dARB GLEW_GET_FUN(__glewProgramEnvParameter4dARB)
-#define glProgramEnvParameter4dvARB GLEW_GET_FUN(__glewProgramEnvParameter4dvARB)
-#define glProgramEnvParameter4fARB GLEW_GET_FUN(__glewProgramEnvParameter4fARB)
-#define glProgramEnvParameter4fvARB GLEW_GET_FUN(__glewProgramEnvParameter4fvARB)
-#define glProgramLocalParameter4dARB GLEW_GET_FUN(__glewProgramLocalParameter4dARB)
-#define glProgramLocalParameter4dvARB GLEW_GET_FUN(__glewProgramLocalParameter4dvARB)
-#define glProgramLocalParameter4fARB GLEW_GET_FUN(__glewProgramLocalParameter4fARB)
-#define glProgramLocalParameter4fvARB GLEW_GET_FUN(__glewProgramLocalParameter4fvARB)
-#define glProgramStringARB GLEW_GET_FUN(__glewProgramStringARB)
-#define glVertexAttrib1dARB GLEW_GET_FUN(__glewVertexAttrib1dARB)
-#define glVertexAttrib1dvARB GLEW_GET_FUN(__glewVertexAttrib1dvARB)
-#define glVertexAttrib1fARB GLEW_GET_FUN(__glewVertexAttrib1fARB)
-#define glVertexAttrib1fvARB GLEW_GET_FUN(__glewVertexAttrib1fvARB)
-#define glVertexAttrib1sARB GLEW_GET_FUN(__glewVertexAttrib1sARB)
-#define glVertexAttrib1svARB GLEW_GET_FUN(__glewVertexAttrib1svARB)
-#define glVertexAttrib2dARB GLEW_GET_FUN(__glewVertexAttrib2dARB)
-#define glVertexAttrib2dvARB GLEW_GET_FUN(__glewVertexAttrib2dvARB)
-#define glVertexAttrib2fARB GLEW_GET_FUN(__glewVertexAttrib2fARB)
-#define glVertexAttrib2fvARB GLEW_GET_FUN(__glewVertexAttrib2fvARB)
-#define glVertexAttrib2sARB GLEW_GET_FUN(__glewVertexAttrib2sARB)
-#define glVertexAttrib2svARB GLEW_GET_FUN(__glewVertexAttrib2svARB)
-#define glVertexAttrib3dARB GLEW_GET_FUN(__glewVertexAttrib3dARB)
-#define glVertexAttrib3dvARB GLEW_GET_FUN(__glewVertexAttrib3dvARB)
-#define glVertexAttrib3fARB GLEW_GET_FUN(__glewVertexAttrib3fARB)
-#define glVertexAttrib3fvARB GLEW_GET_FUN(__glewVertexAttrib3fvARB)
-#define glVertexAttrib3sARB GLEW_GET_FUN(__glewVertexAttrib3sARB)
-#define glVertexAttrib3svARB GLEW_GET_FUN(__glewVertexAttrib3svARB)
-#define glVertexAttrib4NbvARB GLEW_GET_FUN(__glewVertexAttrib4NbvARB)
-#define glVertexAttrib4NivARB GLEW_GET_FUN(__glewVertexAttrib4NivARB)
-#define glVertexAttrib4NsvARB GLEW_GET_FUN(__glewVertexAttrib4NsvARB)
-#define glVertexAttrib4NubARB GLEW_GET_FUN(__glewVertexAttrib4NubARB)
-#define glVertexAttrib4NubvARB GLEW_GET_FUN(__glewVertexAttrib4NubvARB)
-#define glVertexAttrib4NuivARB GLEW_GET_FUN(__glewVertexAttrib4NuivARB)
-#define glVertexAttrib4NusvARB GLEW_GET_FUN(__glewVertexAttrib4NusvARB)
-#define glVertexAttrib4bvARB GLEW_GET_FUN(__glewVertexAttrib4bvARB)
-#define glVertexAttrib4dARB GLEW_GET_FUN(__glewVertexAttrib4dARB)
-#define glVertexAttrib4dvARB GLEW_GET_FUN(__glewVertexAttrib4dvARB)
-#define glVertexAttrib4fARB GLEW_GET_FUN(__glewVertexAttrib4fARB)
-#define glVertexAttrib4fvARB GLEW_GET_FUN(__glewVertexAttrib4fvARB)
-#define glVertexAttrib4ivARB GLEW_GET_FUN(__glewVertexAttrib4ivARB)
-#define glVertexAttrib4sARB GLEW_GET_FUN(__glewVertexAttrib4sARB)
-#define glVertexAttrib4svARB GLEW_GET_FUN(__glewVertexAttrib4svARB)
-#define glVertexAttrib4ubvARB GLEW_GET_FUN(__glewVertexAttrib4ubvARB)
-#define glVertexAttrib4uivARB GLEW_GET_FUN(__glewVertexAttrib4uivARB)
-#define glVertexAttrib4usvARB GLEW_GET_FUN(__glewVertexAttrib4usvARB)
-#define glVertexAttribPointerARB GLEW_GET_FUN(__glewVertexAttribPointerARB)
-
-#define GLEW_ARB_vertex_program GLEW_GET_VAR(__GLEW_ARB_vertex_program)
-
-#endif /* GL_ARB_vertex_program */
-
-/* -------------------------- GL_ARB_vertex_shader ------------------------- */
-
-#ifndef GL_ARB_vertex_shader
-#define GL_ARB_vertex_shader 1
-
-#define GL_VERTEX_SHADER_ARB 0x8B31
-#define GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB 0x8B4A
-#define GL_MAX_VARYING_FLOATS_ARB 0x8B4B
-#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C
-#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB 0x8B4D
-#define GL_OBJECT_ACTIVE_ATTRIBUTES_ARB 0x8B89
-#define GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB 0x8B8A
-
-typedef void (GLAPIENTRY * PFNGLBINDATTRIBLOCATIONARBPROC) (GLhandleARB programObj, GLuint index, const GLcharARB* name);
-typedef void (GLAPIENTRY * PFNGLGETACTIVEATTRIBARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint *size, GLenum *type, GLcharARB *name);
-typedef GLint (GLAPIENTRY * PFNGLGETATTRIBLOCATIONARBPROC) (GLhandleARB programObj, const GLcharARB* name);
-
-#define glBindAttribLocationARB GLEW_GET_FUN(__glewBindAttribLocationARB)
-#define glGetActiveAttribARB GLEW_GET_FUN(__glewGetActiveAttribARB)
-#define glGetAttribLocationARB GLEW_GET_FUN(__glewGetAttribLocationARB)
-
-#define GLEW_ARB_vertex_shader GLEW_GET_VAR(__GLEW_ARB_vertex_shader)
-
-#endif /* GL_ARB_vertex_shader */
-
-/* ------------------- GL_ARB_vertex_type_2_10_10_10_rev ------------------- */
-
-#ifndef GL_ARB_vertex_type_2_10_10_10_rev
-#define GL_ARB_vertex_type_2_10_10_10_rev 1
-
-#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
-#define GL_INT_2_10_10_10_REV 0x8D9F
-
-typedef void (GLAPIENTRY * PFNGLCOLORP3UIPROC) (GLenum type, GLuint color);
-typedef void (GLAPIENTRY * PFNGLCOLORP3UIVPROC) (GLenum type, const GLuint* color);
-typedef void (GLAPIENTRY * PFNGLCOLORP4UIPROC) (GLenum type, GLuint color);
-typedef void (GLAPIENTRY * PFNGLCOLORP4UIVPROC) (GLenum type, const GLuint* color);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP1UIPROC) (GLenum texture, GLenum type, GLuint coords);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP1UIVPROC) (GLenum texture, GLenum type, const GLuint* coords);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP2UIPROC) (GLenum texture, GLenum type, GLuint coords);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP2UIVPROC) (GLenum texture, GLenum type, const GLuint* coords);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP3UIPROC) (GLenum texture, GLenum type, GLuint coords);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP3UIVPROC) (GLenum texture, GLenum type, const GLuint* coords);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP4UIPROC) (GLenum texture, GLenum type, GLuint coords);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP4UIVPROC) (GLenum texture, GLenum type, const GLuint* coords);
-typedef void (GLAPIENTRY * PFNGLNORMALP3UIPROC) (GLenum type, GLuint coords);
-typedef void (GLAPIENTRY * PFNGLNORMALP3UIVPROC) (GLenum type, const GLuint* coords);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORP3UIPROC) (GLenum type, GLuint color);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORP3UIVPROC) (GLenum type, const GLuint* color);
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP1UIPROC) (GLenum type, GLuint coords);
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP1UIVPROC) (GLenum type, const GLuint* coords);
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP2UIPROC) (GLenum type, GLuint coords);
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP2UIVPROC) (GLenum type, const GLuint* coords);
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP3UIPROC) (GLenum type, GLuint coords);
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP3UIVPROC) (GLenum type, const GLuint* coords);
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP4UIPROC) (GLenum type, GLuint coords);
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP4UIVPROC) (GLenum type, const GLuint* coords);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP1UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP1UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP2UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP2UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP3UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP3UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP4UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP4UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value);
-typedef void (GLAPIENTRY * PFNGLVERTEXP2UIPROC) (GLenum type, GLuint value);
-typedef void (GLAPIENTRY * PFNGLVERTEXP2UIVPROC) (GLenum type, const GLuint* value);
-typedef void (GLAPIENTRY * PFNGLVERTEXP3UIPROC) (GLenum type, GLuint value);
-typedef void (GLAPIENTRY * PFNGLVERTEXP3UIVPROC) (GLenum type, const GLuint* value);
-typedef void (GLAPIENTRY * PFNGLVERTEXP4UIPROC) (GLenum type, GLuint value);
-typedef void (GLAPIENTRY * PFNGLVERTEXP4UIVPROC) (GLenum type, const GLuint* value);
-
-#define glColorP3ui GLEW_GET_FUN(__glewColorP3ui)
-#define glColorP3uiv GLEW_GET_FUN(__glewColorP3uiv)
-#define glColorP4ui GLEW_GET_FUN(__glewColorP4ui)
-#define glColorP4uiv GLEW_GET_FUN(__glewColorP4uiv)
-#define glMultiTexCoordP1ui GLEW_GET_FUN(__glewMultiTexCoordP1ui)
-#define glMultiTexCoordP1uiv GLEW_GET_FUN(__glewMultiTexCoordP1uiv)
-#define glMultiTexCoordP2ui GLEW_GET_FUN(__glewMultiTexCoordP2ui)
-#define glMultiTexCoordP2uiv GLEW_GET_FUN(__glewMultiTexCoordP2uiv)
-#define glMultiTexCoordP3ui GLEW_GET_FUN(__glewMultiTexCoordP3ui)
-#define glMultiTexCoordP3uiv GLEW_GET_FUN(__glewMultiTexCoordP3uiv)
-#define glMultiTexCoordP4ui GLEW_GET_FUN(__glewMultiTexCoordP4ui)
-#define glMultiTexCoordP4uiv GLEW_GET_FUN(__glewMultiTexCoordP4uiv)
-#define glNormalP3ui GLEW_GET_FUN(__glewNormalP3ui)
-#define glNormalP3uiv GLEW_GET_FUN(__glewNormalP3uiv)
-#define glSecondaryColorP3ui GLEW_GET_FUN(__glewSecondaryColorP3ui)
-#define glSecondaryColorP3uiv GLEW_GET_FUN(__glewSecondaryColorP3uiv)
-#define glTexCoordP1ui GLEW_GET_FUN(__glewTexCoordP1ui)
-#define glTexCoordP1uiv GLEW_GET_FUN(__glewTexCoordP1uiv)
-#define glTexCoordP2ui GLEW_GET_FUN(__glewTexCoordP2ui)
-#define glTexCoordP2uiv GLEW_GET_FUN(__glewTexCoordP2uiv)
-#define glTexCoordP3ui GLEW_GET_FUN(__glewTexCoordP3ui)
-#define glTexCoordP3uiv GLEW_GET_FUN(__glewTexCoordP3uiv)
-#define glTexCoordP4ui GLEW_GET_FUN(__glewTexCoordP4ui)
-#define glTexCoordP4uiv GLEW_GET_FUN(__glewTexCoordP4uiv)
-#define glVertexAttribP1ui GLEW_GET_FUN(__glewVertexAttribP1ui)
-#define glVertexAttribP1uiv GLEW_GET_FUN(__glewVertexAttribP1uiv)
-#define glVertexAttribP2ui GLEW_GET_FUN(__glewVertexAttribP2ui)
-#define glVertexAttribP2uiv GLEW_GET_FUN(__glewVertexAttribP2uiv)
-#define glVertexAttribP3ui GLEW_GET_FUN(__glewVertexAttribP3ui)
-#define glVertexAttribP3uiv GLEW_GET_FUN(__glewVertexAttribP3uiv)
-#define glVertexAttribP4ui GLEW_GET_FUN(__glewVertexAttribP4ui)
-#define glVertexAttribP4uiv GLEW_GET_FUN(__glewVertexAttribP4uiv)
-#define glVertexP2ui GLEW_GET_FUN(__glewVertexP2ui)
-#define glVertexP2uiv GLEW_GET_FUN(__glewVertexP2uiv)
-#define glVertexP3ui GLEW_GET_FUN(__glewVertexP3ui)
-#define glVertexP3uiv GLEW_GET_FUN(__glewVertexP3uiv)
-#define glVertexP4ui GLEW_GET_FUN(__glewVertexP4ui)
-#define glVertexP4uiv GLEW_GET_FUN(__glewVertexP4uiv)
-
-#define GLEW_ARB_vertex_type_2_10_10_10_rev GLEW_GET_VAR(__GLEW_ARB_vertex_type_2_10_10_10_rev)
-
-#endif /* GL_ARB_vertex_type_2_10_10_10_rev */
-
-/* --------------------------- GL_ARB_window_pos --------------------------- */
-
-#ifndef GL_ARB_window_pos
-#define GL_ARB_window_pos 1
-
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DARBPROC) (GLdouble x, GLdouble y);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DVARBPROC) (const GLdouble* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FARBPROC) (GLfloat x, GLfloat y);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FVARBPROC) (const GLfloat* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IARBPROC) (GLint x, GLint y);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IVARBPROC) (const GLint* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SARBPROC) (GLshort x, GLshort y);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SVARBPROC) (const GLshort* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DARBPROC) (GLdouble x, GLdouble y, GLdouble z);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DVARBPROC) (const GLdouble* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FARBPROC) (GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FVARBPROC) (const GLfloat* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IARBPROC) (GLint x, GLint y, GLint z);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IVARBPROC) (const GLint* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SARBPROC) (GLshort x, GLshort y, GLshort z);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SVARBPROC) (const GLshort* p);
-
-#define glWindowPos2dARB GLEW_GET_FUN(__glewWindowPos2dARB)
-#define glWindowPos2dvARB GLEW_GET_FUN(__glewWindowPos2dvARB)
-#define glWindowPos2fARB GLEW_GET_FUN(__glewWindowPos2fARB)
-#define glWindowPos2fvARB GLEW_GET_FUN(__glewWindowPos2fvARB)
-#define glWindowPos2iARB GLEW_GET_FUN(__glewWindowPos2iARB)
-#define glWindowPos2ivARB GLEW_GET_FUN(__glewWindowPos2ivARB)
-#define glWindowPos2sARB GLEW_GET_FUN(__glewWindowPos2sARB)
-#define glWindowPos2svARB GLEW_GET_FUN(__glewWindowPos2svARB)
-#define glWindowPos3dARB GLEW_GET_FUN(__glewWindowPos3dARB)
-#define glWindowPos3dvARB GLEW_GET_FUN(__glewWindowPos3dvARB)
-#define glWindowPos3fARB GLEW_GET_FUN(__glewWindowPos3fARB)
-#define glWindowPos3fvARB GLEW_GET_FUN(__glewWindowPos3fvARB)
-#define glWindowPos3iARB GLEW_GET_FUN(__glewWindowPos3iARB)
-#define glWindowPos3ivARB GLEW_GET_FUN(__glewWindowPos3ivARB)
-#define glWindowPos3sARB GLEW_GET_FUN(__glewWindowPos3sARB)
-#define glWindowPos3svARB GLEW_GET_FUN(__glewWindowPos3svARB)
-
-#define GLEW_ARB_window_pos GLEW_GET_VAR(__GLEW_ARB_window_pos)
-
-#endif /* GL_ARB_window_pos */
-
-/* ------------------------- GL_ATIX_point_sprites ------------------------- */
-
-#ifndef GL_ATIX_point_sprites
-#define GL_ATIX_point_sprites 1
-
-#define GL_TEXTURE_POINT_MODE_ATIX 0x60B0
-#define GL_TEXTURE_POINT_ONE_COORD_ATIX 0x60B1
-#define GL_TEXTURE_POINT_SPRITE_ATIX 0x60B2
-#define GL_POINT_SPRITE_CULL_MODE_ATIX 0x60B3
-#define GL_POINT_SPRITE_CULL_CENTER_ATIX 0x60B4
-#define GL_POINT_SPRITE_CULL_CLIP_ATIX 0x60B5
-
-#define GLEW_ATIX_point_sprites GLEW_GET_VAR(__GLEW_ATIX_point_sprites)
-
-#endif /* GL_ATIX_point_sprites */
-
-/* ---------------------- GL_ATIX_texture_env_combine3 --------------------- */
-
-#ifndef GL_ATIX_texture_env_combine3
-#define GL_ATIX_texture_env_combine3 1
-
-#define GL_MODULATE_ADD_ATIX 0x8744
-#define GL_MODULATE_SIGNED_ADD_ATIX 0x8745
-#define GL_MODULATE_SUBTRACT_ATIX 0x8746
-
-#define GLEW_ATIX_texture_env_combine3 GLEW_GET_VAR(__GLEW_ATIX_texture_env_combine3)
-
-#endif /* GL_ATIX_texture_env_combine3 */
-
-/* ----------------------- GL_ATIX_texture_env_route ----------------------- */
-
-#ifndef GL_ATIX_texture_env_route
-#define GL_ATIX_texture_env_route 1
-
-#define GL_SECONDARY_COLOR_ATIX 0x8747
-#define GL_TEXTURE_OUTPUT_RGB_ATIX 0x8748
-#define GL_TEXTURE_OUTPUT_ALPHA_ATIX 0x8749
-
-#define GLEW_ATIX_texture_env_route GLEW_GET_VAR(__GLEW_ATIX_texture_env_route)
-
-#endif /* GL_ATIX_texture_env_route */
-
-/* ---------------- GL_ATIX_vertex_shader_output_point_size ---------------- */
-
-#ifndef GL_ATIX_vertex_shader_output_point_size
-#define GL_ATIX_vertex_shader_output_point_size 1
-
-#define GL_OUTPUT_POINT_SIZE_ATIX 0x610E
-
-#define GLEW_ATIX_vertex_shader_output_point_size GLEW_GET_VAR(__GLEW_ATIX_vertex_shader_output_point_size)
-
-#endif /* GL_ATIX_vertex_shader_output_point_size */
-
-/* -------------------------- GL_ATI_draw_buffers -------------------------- */
-
-#ifndef GL_ATI_draw_buffers
-#define GL_ATI_draw_buffers 1
-
-#define GL_MAX_DRAW_BUFFERS_ATI 0x8824
-#define GL_DRAW_BUFFER0_ATI 0x8825
-#define GL_DRAW_BUFFER1_ATI 0x8826
-#define GL_DRAW_BUFFER2_ATI 0x8827
-#define GL_DRAW_BUFFER3_ATI 0x8828
-#define GL_DRAW_BUFFER4_ATI 0x8829
-#define GL_DRAW_BUFFER5_ATI 0x882A
-#define GL_DRAW_BUFFER6_ATI 0x882B
-#define GL_DRAW_BUFFER7_ATI 0x882C
-#define GL_DRAW_BUFFER8_ATI 0x882D
-#define GL_DRAW_BUFFER9_ATI 0x882E
-#define GL_DRAW_BUFFER10_ATI 0x882F
-#define GL_DRAW_BUFFER11_ATI 0x8830
-#define GL_DRAW_BUFFER12_ATI 0x8831
-#define GL_DRAW_BUFFER13_ATI 0x8832
-#define GL_DRAW_BUFFER14_ATI 0x8833
-#define GL_DRAW_BUFFER15_ATI 0x8834
-
-typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSATIPROC) (GLsizei n, const GLenum* bufs);
-
-#define glDrawBuffersATI GLEW_GET_FUN(__glewDrawBuffersATI)
-
-#define GLEW_ATI_draw_buffers GLEW_GET_VAR(__GLEW_ATI_draw_buffers)
-
-#endif /* GL_ATI_draw_buffers */
-
-/* -------------------------- GL_ATI_element_array ------------------------- */
-
-#ifndef GL_ATI_element_array
-#define GL_ATI_element_array 1
-
-#define GL_ELEMENT_ARRAY_ATI 0x8768
-#define GL_ELEMENT_ARRAY_TYPE_ATI 0x8769
-#define GL_ELEMENT_ARRAY_POINTER_ATI 0x876A
-
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTARRAYATIPROC) (GLenum mode, GLsizei count);
-typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTARRAYATIPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count);
-typedef void (GLAPIENTRY * PFNGLELEMENTPOINTERATIPROC) (GLenum type, const void* pointer);
-
-#define glDrawElementArrayATI GLEW_GET_FUN(__glewDrawElementArrayATI)
-#define glDrawRangeElementArrayATI GLEW_GET_FUN(__glewDrawRangeElementArrayATI)
-#define glElementPointerATI GLEW_GET_FUN(__glewElementPointerATI)
-
-#define GLEW_ATI_element_array GLEW_GET_VAR(__GLEW_ATI_element_array)
-
-#endif /* GL_ATI_element_array */
-
-/* ------------------------- GL_ATI_envmap_bumpmap ------------------------- */
-
-#ifndef GL_ATI_envmap_bumpmap
-#define GL_ATI_envmap_bumpmap 1
-
-#define GL_BUMP_ROT_MATRIX_ATI 0x8775
-#define GL_BUMP_ROT_MATRIX_SIZE_ATI 0x8776
-#define GL_BUMP_NUM_TEX_UNITS_ATI 0x8777
-#define GL_BUMP_TEX_UNITS_ATI 0x8778
-#define GL_DUDV_ATI 0x8779
-#define GL_DU8DV8_ATI 0x877A
-#define GL_BUMP_ENVMAP_ATI 0x877B
-#define GL_BUMP_TARGET_ATI 0x877C
-
-typedef void (GLAPIENTRY * PFNGLGETTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param);
-typedef void (GLAPIENTRY * PFNGLGETTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param);
-typedef void (GLAPIENTRY * PFNGLTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param);
-typedef void (GLAPIENTRY * PFNGLTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param);
-
-#define glGetTexBumpParameterfvATI GLEW_GET_FUN(__glewGetTexBumpParameterfvATI)
-#define glGetTexBumpParameterivATI GLEW_GET_FUN(__glewGetTexBumpParameterivATI)
-#define glTexBumpParameterfvATI GLEW_GET_FUN(__glewTexBumpParameterfvATI)
-#define glTexBumpParameterivATI GLEW_GET_FUN(__glewTexBumpParameterivATI)
-
-#define GLEW_ATI_envmap_bumpmap GLEW_GET_VAR(__GLEW_ATI_envmap_bumpmap)
-
-#endif /* GL_ATI_envmap_bumpmap */
-
-/* ------------------------- GL_ATI_fragment_shader ------------------------ */
-
-#ifndef GL_ATI_fragment_shader
-#define GL_ATI_fragment_shader 1
-
-#define GL_RED_BIT_ATI 0x00000001
-#define GL_2X_BIT_ATI 0x00000001
-#define GL_4X_BIT_ATI 0x00000002
-#define GL_GREEN_BIT_ATI 0x00000002
-#define GL_COMP_BIT_ATI 0x00000002
-#define GL_BLUE_BIT_ATI 0x00000004
-#define GL_8X_BIT_ATI 0x00000004
-#define GL_NEGATE_BIT_ATI 0x00000004
-#define GL_BIAS_BIT_ATI 0x00000008
-#define GL_HALF_BIT_ATI 0x00000008
-#define GL_QUARTER_BIT_ATI 0x00000010
-#define GL_EIGHTH_BIT_ATI 0x00000020
-#define GL_SATURATE_BIT_ATI 0x00000040
-#define GL_FRAGMENT_SHADER_ATI 0x8920
-#define GL_REG_0_ATI 0x8921
-#define GL_REG_1_ATI 0x8922
-#define GL_REG_2_ATI 0x8923
-#define GL_REG_3_ATI 0x8924
-#define GL_REG_4_ATI 0x8925
-#define GL_REG_5_ATI 0x8926
-#define GL_CON_0_ATI 0x8941
-#define GL_CON_1_ATI 0x8942
-#define GL_CON_2_ATI 0x8943
-#define GL_CON_3_ATI 0x8944
-#define GL_CON_4_ATI 0x8945
-#define GL_CON_5_ATI 0x8946
-#define GL_CON_6_ATI 0x8947
-#define GL_CON_7_ATI 0x8948
-#define GL_MOV_ATI 0x8961
-#define GL_ADD_ATI 0x8963
-#define GL_MUL_ATI 0x8964
-#define GL_SUB_ATI 0x8965
-#define GL_DOT3_ATI 0x8966
-#define GL_DOT4_ATI 0x8967
-#define GL_MAD_ATI 0x8968
-#define GL_LERP_ATI 0x8969
-#define GL_CND_ATI 0x896A
-#define GL_CND0_ATI 0x896B
-#define GL_DOT2_ADD_ATI 0x896C
-#define GL_SECONDARY_INTERPOLATOR_ATI 0x896D
-#define GL_NUM_FRAGMENT_REGISTERS_ATI 0x896E
-#define GL_NUM_FRAGMENT_CONSTANTS_ATI 0x896F
-#define GL_NUM_PASSES_ATI 0x8970
-#define GL_NUM_INSTRUCTIONS_PER_PASS_ATI 0x8971
-#define GL_NUM_INSTRUCTIONS_TOTAL_ATI 0x8972
-#define GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI 0x8973
-#define GL_NUM_LOOPBACK_COMPONENTS_ATI 0x8974
-#define GL_COLOR_ALPHA_PAIRING_ATI 0x8975
-#define GL_SWIZZLE_STR_ATI 0x8976
-#define GL_SWIZZLE_STQ_ATI 0x8977
-#define GL_SWIZZLE_STR_DR_ATI 0x8978
-#define GL_SWIZZLE_STQ_DQ_ATI 0x8979
-#define GL_SWIZZLE_STRQ_ATI 0x897A
-#define GL_SWIZZLE_STRQ_DQ_ATI 0x897B
-
-typedef void (GLAPIENTRY * PFNGLALPHAFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
-typedef void (GLAPIENTRY * PFNGLALPHAFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
-typedef void (GLAPIENTRY * PFNGLALPHAFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
-typedef void (GLAPIENTRY * PFNGLBEGINFRAGMENTSHADERATIPROC) (void);
-typedef void (GLAPIENTRY * PFNGLBINDFRAGMENTSHADERATIPROC) (GLuint id);
-typedef void (GLAPIENTRY * PFNGLCOLORFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
-typedef void (GLAPIENTRY * PFNGLCOLORFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
-typedef void (GLAPIENTRY * PFNGLCOLORFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
-typedef void (GLAPIENTRY * PFNGLDELETEFRAGMENTSHADERATIPROC) (GLuint id);
-typedef void (GLAPIENTRY * PFNGLENDFRAGMENTSHADERATIPROC) (void);
-typedef GLuint (GLAPIENTRY * PFNGLGENFRAGMENTSHADERSATIPROC) (GLuint range);
-typedef void (GLAPIENTRY * PFNGLPASSTEXCOORDATIPROC) (GLuint dst, GLuint coord, GLenum swizzle);
-typedef void (GLAPIENTRY * PFNGLSAMPLEMAPATIPROC) (GLuint dst, GLuint interp, GLenum swizzle);
-typedef void (GLAPIENTRY * PFNGLSETFRAGMENTSHADERCONSTANTATIPROC) (GLuint dst, const GLfloat* value);
-
-#define glAlphaFragmentOp1ATI GLEW_GET_FUN(__glewAlphaFragmentOp1ATI)
-#define glAlphaFragmentOp2ATI GLEW_GET_FUN(__glewAlphaFragmentOp2ATI)
-#define glAlphaFragmentOp3ATI GLEW_GET_FUN(__glewAlphaFragmentOp3ATI)
-#define glBeginFragmentShaderATI GLEW_GET_FUN(__glewBeginFragmentShaderATI)
-#define glBindFragmentShaderATI GLEW_GET_FUN(__glewBindFragmentShaderATI)
-#define glColorFragmentOp1ATI GLEW_GET_FUN(__glewColorFragmentOp1ATI)
-#define glColorFragmentOp2ATI GLEW_GET_FUN(__glewColorFragmentOp2ATI)
-#define glColorFragmentOp3ATI GLEW_GET_FUN(__glewColorFragmentOp3ATI)
-#define glDeleteFragmentShaderATI GLEW_GET_FUN(__glewDeleteFragmentShaderATI)
-#define glEndFragmentShaderATI GLEW_GET_FUN(__glewEndFragmentShaderATI)
-#define glGenFragmentShadersATI GLEW_GET_FUN(__glewGenFragmentShadersATI)
-#define glPassTexCoordATI GLEW_GET_FUN(__glewPassTexCoordATI)
-#define glSampleMapATI GLEW_GET_FUN(__glewSampleMapATI)
-#define glSetFragmentShaderConstantATI GLEW_GET_FUN(__glewSetFragmentShaderConstantATI)
-
-#define GLEW_ATI_fragment_shader GLEW_GET_VAR(__GLEW_ATI_fragment_shader)
-
-#endif /* GL_ATI_fragment_shader */
-
-/* ------------------------ GL_ATI_map_object_buffer ----------------------- */
-
-#ifndef GL_ATI_map_object_buffer
-#define GL_ATI_map_object_buffer 1
-
-typedef void* (GLAPIENTRY * PFNGLMAPOBJECTBUFFERATIPROC) (GLuint buffer);
-typedef void (GLAPIENTRY * PFNGLUNMAPOBJECTBUFFERATIPROC) (GLuint buffer);
-
-#define glMapObjectBufferATI GLEW_GET_FUN(__glewMapObjectBufferATI)
-#define glUnmapObjectBufferATI GLEW_GET_FUN(__glewUnmapObjectBufferATI)
-
-#define GLEW_ATI_map_object_buffer GLEW_GET_VAR(__GLEW_ATI_map_object_buffer)
-
-#endif /* GL_ATI_map_object_buffer */
-
-/* ----------------------------- GL_ATI_meminfo ---------------------------- */
-
-#ifndef GL_ATI_meminfo
-#define GL_ATI_meminfo 1
-
-#define GL_VBO_FREE_MEMORY_ATI 0x87FB
-#define GL_TEXTURE_FREE_MEMORY_ATI 0x87FC
-#define GL_RENDERBUFFER_FREE_MEMORY_ATI 0x87FD
-
-#define GLEW_ATI_meminfo GLEW_GET_VAR(__GLEW_ATI_meminfo)
-
-#endif /* GL_ATI_meminfo */
-
-/* -------------------------- GL_ATI_pn_triangles -------------------------- */
-
-#ifndef GL_ATI_pn_triangles
-#define GL_ATI_pn_triangles 1
-
-#define GL_PN_TRIANGLES_ATI 0x87F0
-#define GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F1
-#define GL_PN_TRIANGLES_POINT_MODE_ATI 0x87F2
-#define GL_PN_TRIANGLES_NORMAL_MODE_ATI 0x87F3
-#define GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F4
-#define GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI 0x87F5
-#define GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI 0x87F6
-#define GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI 0x87F7
-#define GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI 0x87F8
-
-typedef void (GLAPIENTRY * PFNGLPNTRIANGLESFATIPROC) (GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLPNTRIANGLESIATIPROC) (GLenum pname, GLint param);
-
-#define glPNTrianglesfATI GLEW_GET_FUN(__glPNTrianglewesfATI)
-#define glPNTrianglesiATI GLEW_GET_FUN(__glPNTrianglewesiATI)
-
-#define GLEW_ATI_pn_triangles GLEW_GET_VAR(__GLEW_ATI_pn_triangles)
-
-#endif /* GL_ATI_pn_triangles */
-
-/* ------------------------ GL_ATI_separate_stencil ------------------------ */
-
-#ifndef GL_ATI_separate_stencil
-#define GL_ATI_separate_stencil 1
-
-#define GL_STENCIL_BACK_FUNC_ATI 0x8800
-#define GL_STENCIL_BACK_FAIL_ATI 0x8801
-#define GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI 0x8802
-#define GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI 0x8803
-
-typedef void (GLAPIENTRY * PFNGLSTENCILFUNCSEPARATEATIPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
-typedef void (GLAPIENTRY * PFNGLSTENCILOPSEPARATEATIPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
-
-#define glStencilFuncSeparateATI GLEW_GET_FUN(__glewStencilFuncSeparateATI)
-#define glStencilOpSeparateATI GLEW_GET_FUN(__glewStencilOpSeparateATI)
-
-#define GLEW_ATI_separate_stencil GLEW_GET_VAR(__GLEW_ATI_separate_stencil)
-
-#endif /* GL_ATI_separate_stencil */
-
-/* ----------------------- GL_ATI_shader_texture_lod ----------------------- */
-
-#ifndef GL_ATI_shader_texture_lod
-#define GL_ATI_shader_texture_lod 1
-
-#define GLEW_ATI_shader_texture_lod GLEW_GET_VAR(__GLEW_ATI_shader_texture_lod)
-
-#endif /* GL_ATI_shader_texture_lod */
-
-/* ---------------------- GL_ATI_text_fragment_shader ---------------------- */
-
-#ifndef GL_ATI_text_fragment_shader
-#define GL_ATI_text_fragment_shader 1
-
-#define GL_TEXT_FRAGMENT_SHADER_ATI 0x8200
-
-#define GLEW_ATI_text_fragment_shader GLEW_GET_VAR(__GLEW_ATI_text_fragment_shader)
-
-#endif /* GL_ATI_text_fragment_shader */
-
-/* --------------------- GL_ATI_texture_compression_3dc -------------------- */
-
-#ifndef GL_ATI_texture_compression_3dc
-#define GL_ATI_texture_compression_3dc 1
-
-#define GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI 0x8837
-
-#define GLEW_ATI_texture_compression_3dc GLEW_GET_VAR(__GLEW_ATI_texture_compression_3dc)
-
-#endif /* GL_ATI_texture_compression_3dc */
-
-/* ---------------------- GL_ATI_texture_env_combine3 ---------------------- */
-
-#ifndef GL_ATI_texture_env_combine3
-#define GL_ATI_texture_env_combine3 1
-
-#define GL_MODULATE_ADD_ATI 0x8744
-#define GL_MODULATE_SIGNED_ADD_ATI 0x8745
-#define GL_MODULATE_SUBTRACT_ATI 0x8746
-
-#define GLEW_ATI_texture_env_combine3 GLEW_GET_VAR(__GLEW_ATI_texture_env_combine3)
-
-#endif /* GL_ATI_texture_env_combine3 */
-
-/* -------------------------- GL_ATI_texture_float ------------------------- */
-
-#ifndef GL_ATI_texture_float
-#define GL_ATI_texture_float 1
-
-#define GL_RGBA_FLOAT32_ATI 0x8814
-#define GL_RGB_FLOAT32_ATI 0x8815
-#define GL_ALPHA_FLOAT32_ATI 0x8816
-#define GL_INTENSITY_FLOAT32_ATI 0x8817
-#define GL_LUMINANCE_FLOAT32_ATI 0x8818
-#define GL_LUMINANCE_ALPHA_FLOAT32_ATI 0x8819
-#define GL_RGBA_FLOAT16_ATI 0x881A
-#define GL_RGB_FLOAT16_ATI 0x881B
-#define GL_ALPHA_FLOAT16_ATI 0x881C
-#define GL_INTENSITY_FLOAT16_ATI 0x881D
-#define GL_LUMINANCE_FLOAT16_ATI 0x881E
-#define GL_LUMINANCE_ALPHA_FLOAT16_ATI 0x881F
-
-#define GLEW_ATI_texture_float GLEW_GET_VAR(__GLEW_ATI_texture_float)
-
-#endif /* GL_ATI_texture_float */
-
-/* ----------------------- GL_ATI_texture_mirror_once ---------------------- */
-
-#ifndef GL_ATI_texture_mirror_once
-#define GL_ATI_texture_mirror_once 1
-
-#define GL_MIRROR_CLAMP_ATI 0x8742
-#define GL_MIRROR_CLAMP_TO_EDGE_ATI 0x8743
-
-#define GLEW_ATI_texture_mirror_once GLEW_GET_VAR(__GLEW_ATI_texture_mirror_once)
-
-#endif /* GL_ATI_texture_mirror_once */
-
-/* ----------------------- GL_ATI_vertex_array_object ---------------------- */
-
-#ifndef GL_ATI_vertex_array_object
-#define GL_ATI_vertex_array_object 1
-
-#define GL_STATIC_ATI 0x8760
-#define GL_DYNAMIC_ATI 0x8761
-#define GL_PRESERVE_ATI 0x8762
-#define GL_DISCARD_ATI 0x8763
-#define GL_OBJECT_BUFFER_SIZE_ATI 0x8764
-#define GL_OBJECT_BUFFER_USAGE_ATI 0x8765
-#define GL_ARRAY_OBJECT_BUFFER_ATI 0x8766
-#define GL_ARRAY_OBJECT_OFFSET_ATI 0x8767
-
-typedef void (GLAPIENTRY * PFNGLARRAYOBJECTATIPROC) (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);
-typedef void (GLAPIENTRY * PFNGLFREEOBJECTBUFFERATIPROC) (GLuint buffer);
-typedef void (GLAPIENTRY * PFNGLGETARRAYOBJECTFVATIPROC) (GLenum array, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETARRAYOBJECTIVATIPROC) (GLenum array, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETOBJECTBUFFERFVATIPROC) (GLuint buffer, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETOBJECTBUFFERIVATIPROC) (GLuint buffer, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETVARIANTARRAYOBJECTFVATIPROC) (GLuint id, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETVARIANTARRAYOBJECTIVATIPROC) (GLuint id, GLenum pname, GLint* params);
-typedef GLboolean (GLAPIENTRY * PFNGLISOBJECTBUFFERATIPROC) (GLuint buffer);
-typedef GLuint (GLAPIENTRY * PFNGLNEWOBJECTBUFFERATIPROC) (GLsizei size, const void* pointer, GLenum usage);
-typedef void (GLAPIENTRY * PFNGLUPDATEOBJECTBUFFERATIPROC) (GLuint buffer, GLuint offset, GLsizei size, const void* pointer, GLenum preserve);
-typedef void (GLAPIENTRY * PFNGLVARIANTARRAYOBJECTATIPROC) (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);
-
-#define glArrayObjectATI GLEW_GET_FUN(__glewArrayObjectATI)
-#define glFreeObjectBufferATI GLEW_GET_FUN(__glewFreeObjectBufferATI)
-#define glGetArrayObjectfvATI GLEW_GET_FUN(__glewGetArrayObjectfvATI)
-#define glGetArrayObjectivATI GLEW_GET_FUN(__glewGetArrayObjectivATI)
-#define glGetObjectBufferfvATI GLEW_GET_FUN(__glewGetObjectBufferfvATI)
-#define glGetObjectBufferivATI GLEW_GET_FUN(__glewGetObjectBufferivATI)
-#define glGetVariantArrayObjectfvATI GLEW_GET_FUN(__glewGetVariantArrayObjectfvATI)
-#define glGetVariantArrayObjectivATI GLEW_GET_FUN(__glewGetVariantArrayObjectivATI)
-#define glIsObjectBufferATI GLEW_GET_FUN(__glewIsObjectBufferATI)
-#define glNewObjectBufferATI GLEW_GET_FUN(__glewNewObjectBufferATI)
-#define glUpdateObjectBufferATI GLEW_GET_FUN(__glewUpdateObjectBufferATI)
-#define glVariantArrayObjectATI GLEW_GET_FUN(__glewVariantArrayObjectATI)
-
-#define GLEW_ATI_vertex_array_object GLEW_GET_VAR(__GLEW_ATI_vertex_array_object)
-
-#endif /* GL_ATI_vertex_array_object */
-
-/* ------------------- GL_ATI_vertex_attrib_array_object ------------------- */
-
-#ifndef GL_ATI_vertex_attrib_array_object
-#define GL_ATI_vertex_attrib_array_object 1
-
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC) (GLuint index, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC) (GLuint index, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBARRAYOBJECTATIPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset);
-
-#define glGetVertexAttribArrayObjectfvATI GLEW_GET_FUN(__glewGetVertexAttribArrayObjectfvATI)
-#define glGetVertexAttribArrayObjectivATI GLEW_GET_FUN(__glewGetVertexAttribArrayObjectivATI)
-#define glVertexAttribArrayObjectATI GLEW_GET_FUN(__glewVertexAttribArrayObjectATI)
-
-#define GLEW_ATI_vertex_attrib_array_object GLEW_GET_VAR(__GLEW_ATI_vertex_attrib_array_object)
-
-#endif /* GL_ATI_vertex_attrib_array_object */
-
-/* ------------------------- GL_ATI_vertex_streams ------------------------- */
-
-#ifndef GL_ATI_vertex_streams
-#define GL_ATI_vertex_streams 1
-
-#define GL_MAX_VERTEX_STREAMS_ATI 0x876B
-#define GL_VERTEX_SOURCE_ATI 0x876C
-#define GL_VERTEX_STREAM0_ATI 0x876D
-#define GL_VERTEX_STREAM1_ATI 0x876E
-#define GL_VERTEX_STREAM2_ATI 0x876F
-#define GL_VERTEX_STREAM3_ATI 0x8770
-#define GL_VERTEX_STREAM4_ATI 0x8771
-#define GL_VERTEX_STREAM5_ATI 0x8772
-#define GL_VERTEX_STREAM6_ATI 0x8773
-#define GL_VERTEX_STREAM7_ATI 0x8774
-
-typedef void (GLAPIENTRY * PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC) (GLenum stream);
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3BATIPROC) (GLenum stream, GLbyte x, GLbyte y, GLbyte z);
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3BVATIPROC) (GLenum stream, const GLbyte *v);
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z);
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3DVATIPROC) (GLenum stream, const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3FVATIPROC) (GLenum stream, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z);
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3IVATIPROC) (GLenum stream, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z);
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3SVATIPROC) (GLenum stream, const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXBLENDENVFATIPROC) (GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLVERTEXBLENDENVIATIPROC) (GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2DATIPROC) (GLenum stream, GLdouble x, GLdouble y);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2DVATIPROC) (GLenum stream, const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2FATIPROC) (GLenum stream, GLfloat x, GLfloat y);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2FVATIPROC) (GLenum stream, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2IATIPROC) (GLenum stream, GLint x, GLint y);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2IVATIPROC) (GLenum stream, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2SATIPROC) (GLenum stream, GLshort x, GLshort y);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2SVATIPROC) (GLenum stream, const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3DVATIPROC) (GLenum stream, const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3FVATIPROC) (GLenum stream, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3IVATIPROC) (GLenum stream, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3SVATIPROC) (GLenum stream, const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4DVATIPROC) (GLenum stream, const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4FVATIPROC) (GLenum stream, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4IATIPROC) (GLenum stream, GLint x, GLint y, GLint z, GLint w);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4IVATIPROC) (GLenum stream, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w);
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4SVATIPROC) (GLenum stream, const GLshort *v);
-
-#define glClientActiveVertexStreamATI GLEW_GET_FUN(__glewClientActiveVertexStreamATI)
-#define glNormalStream3bATI GLEW_GET_FUN(__glewNormalStream3bATI)
-#define glNormalStream3bvATI GLEW_GET_FUN(__glewNormalStream3bvATI)
-#define glNormalStream3dATI GLEW_GET_FUN(__glewNormalStream3dATI)
-#define glNormalStream3dvATI GLEW_GET_FUN(__glewNormalStream3dvATI)
-#define glNormalStream3fATI GLEW_GET_FUN(__glewNormalStream3fATI)
-#define glNormalStream3fvATI GLEW_GET_FUN(__glewNormalStream3fvATI)
-#define glNormalStream3iATI GLEW_GET_FUN(__glewNormalStream3iATI)
-#define glNormalStream3ivATI GLEW_GET_FUN(__glewNormalStream3ivATI)
-#define glNormalStream3sATI GLEW_GET_FUN(__glewNormalStream3sATI)
-#define glNormalStream3svATI GLEW_GET_FUN(__glewNormalStream3svATI)
-#define glVertexBlendEnvfATI GLEW_GET_FUN(__glewVertexBlendEnvfATI)
-#define glVertexBlendEnviATI GLEW_GET_FUN(__glewVertexBlendEnviATI)
-#define glVertexStream2dATI GLEW_GET_FUN(__glewVertexStream2dATI)
-#define glVertexStream2dvATI GLEW_GET_FUN(__glewVertexStream2dvATI)
-#define glVertexStream2fATI GLEW_GET_FUN(__glewVertexStream2fATI)
-#define glVertexStream2fvATI GLEW_GET_FUN(__glewVertexStream2fvATI)
-#define glVertexStream2iATI GLEW_GET_FUN(__glewVertexStream2iATI)
-#define glVertexStream2ivATI GLEW_GET_FUN(__glewVertexStream2ivATI)
-#define glVertexStream2sATI GLEW_GET_FUN(__glewVertexStream2sATI)
-#define glVertexStream2svATI GLEW_GET_FUN(__glewVertexStream2svATI)
-#define glVertexStream3dATI GLEW_GET_FUN(__glewVertexStream3dATI)
-#define glVertexStream3dvATI GLEW_GET_FUN(__glewVertexStream3dvATI)
-#define glVertexStream3fATI GLEW_GET_FUN(__glewVertexStream3fATI)
-#define glVertexStream3fvATI GLEW_GET_FUN(__glewVertexStream3fvATI)
-#define glVertexStream3iATI GLEW_GET_FUN(__glewVertexStream3iATI)
-#define glVertexStream3ivATI GLEW_GET_FUN(__glewVertexStream3ivATI)
-#define glVertexStream3sATI GLEW_GET_FUN(__glewVertexStream3sATI)
-#define glVertexStream3svATI GLEW_GET_FUN(__glewVertexStream3svATI)
-#define glVertexStream4dATI GLEW_GET_FUN(__glewVertexStream4dATI)
-#define glVertexStream4dvATI GLEW_GET_FUN(__glewVertexStream4dvATI)
-#define glVertexStream4fATI GLEW_GET_FUN(__glewVertexStream4fATI)
-#define glVertexStream4fvATI GLEW_GET_FUN(__glewVertexStream4fvATI)
-#define glVertexStream4iATI GLEW_GET_FUN(__glewVertexStream4iATI)
-#define glVertexStream4ivATI GLEW_GET_FUN(__glewVertexStream4ivATI)
-#define glVertexStream4sATI GLEW_GET_FUN(__glewVertexStream4sATI)
-#define glVertexStream4svATI GLEW_GET_FUN(__glewVertexStream4svATI)
-
-#define GLEW_ATI_vertex_streams GLEW_GET_VAR(__GLEW_ATI_vertex_streams)
-
-#endif /* GL_ATI_vertex_streams */
-
-/* --------------------------- GL_EXT_422_pixels --------------------------- */
-
-#ifndef GL_EXT_422_pixels
-#define GL_EXT_422_pixels 1
-
-#define GL_422_EXT 0x80CC
-#define GL_422_REV_EXT 0x80CD
-#define GL_422_AVERAGE_EXT 0x80CE
-#define GL_422_REV_AVERAGE_EXT 0x80CF
-
-#define GLEW_EXT_422_pixels GLEW_GET_VAR(__GLEW_EXT_422_pixels)
-
-#endif /* GL_EXT_422_pixels */
-
-/* ---------------------------- GL_EXT_Cg_shader --------------------------- */
-
-#ifndef GL_EXT_Cg_shader
-#define GL_EXT_Cg_shader 1
-
-#define GL_CG_VERTEX_SHADER_EXT 0x890E
-#define GL_CG_FRAGMENT_SHADER_EXT 0x890F
-
-#define GLEW_EXT_Cg_shader GLEW_GET_VAR(__GLEW_EXT_Cg_shader)
-
-#endif /* GL_EXT_Cg_shader */
-
-/* ------------------------------ GL_EXT_abgr ------------------------------ */
-
-#ifndef GL_EXT_abgr
-#define GL_EXT_abgr 1
-
-#define GL_ABGR_EXT 0x8000
-
-#define GLEW_EXT_abgr GLEW_GET_VAR(__GLEW_EXT_abgr)
-
-#endif /* GL_EXT_abgr */
-
-/* ------------------------------ GL_EXT_bgra ------------------------------ */
-
-#ifndef GL_EXT_bgra
-#define GL_EXT_bgra 1
-
-#define GL_BGR_EXT 0x80E0
-#define GL_BGRA_EXT 0x80E1
-
-#define GLEW_EXT_bgra GLEW_GET_VAR(__GLEW_EXT_bgra)
-
-#endif /* GL_EXT_bgra */
-
-/* ------------------------ GL_EXT_bindable_uniform ------------------------ */
-
-#ifndef GL_EXT_bindable_uniform
-#define GL_EXT_bindable_uniform 1
-
-#define GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT 0x8DE2
-#define GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT 0x8DE3
-#define GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT 0x8DE4
-#define GL_MAX_BINDABLE_UNIFORM_SIZE_EXT 0x8DED
-#define GL_UNIFORM_BUFFER_EXT 0x8DEE
-#define GL_UNIFORM_BUFFER_BINDING_EXT 0x8DEF
-
-typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMBUFFERSIZEEXTPROC) (GLuint program, GLint location);
-typedef GLintptr (GLAPIENTRY * PFNGLGETUNIFORMOFFSETEXTPROC) (GLuint program, GLint location);
-typedef void (GLAPIENTRY * PFNGLUNIFORMBUFFEREXTPROC) (GLuint program, GLint location, GLuint buffer);
-
-#define glGetUniformBufferSizeEXT GLEW_GET_FUN(__glewGetUniformBufferSizeEXT)
-#define glGetUniformOffsetEXT GLEW_GET_FUN(__glewGetUniformOffsetEXT)
-#define glUniformBufferEXT GLEW_GET_FUN(__glewUniformBufferEXT)
-
-#define GLEW_EXT_bindable_uniform GLEW_GET_VAR(__GLEW_EXT_bindable_uniform)
-
-#endif /* GL_EXT_bindable_uniform */
-
-/* --------------------------- GL_EXT_blend_color -------------------------- */
-
-#ifndef GL_EXT_blend_color
-#define GL_EXT_blend_color 1
-
-#define GL_CONSTANT_COLOR_EXT 0x8001
-#define GL_ONE_MINUS_CONSTANT_COLOR_EXT 0x8002
-#define GL_CONSTANT_ALPHA_EXT 0x8003
-#define GL_ONE_MINUS_CONSTANT_ALPHA_EXT 0x8004
-#define GL_BLEND_COLOR_EXT 0x8005
-
-typedef void (GLAPIENTRY * PFNGLBLENDCOLOREXTPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
-
-#define glBlendColorEXT GLEW_GET_FUN(__glewBlendColorEXT)
-
-#define GLEW_EXT_blend_color GLEW_GET_VAR(__GLEW_EXT_blend_color)
-
-#endif /* GL_EXT_blend_color */
-
-/* --------------------- GL_EXT_blend_equation_separate -------------------- */
-
-#ifndef GL_EXT_blend_equation_separate
-#define GL_EXT_blend_equation_separate 1
-
-#define GL_BLEND_EQUATION_RGB_EXT 0x8009
-#define GL_BLEND_EQUATION_ALPHA_EXT 0x883D
-
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEEXTPROC) (GLenum modeRGB, GLenum modeAlpha);
-
-#define glBlendEquationSeparateEXT GLEW_GET_FUN(__glewBlendEquationSeparateEXT)
-
-#define GLEW_EXT_blend_equation_separate GLEW_GET_VAR(__GLEW_EXT_blend_equation_separate)
-
-#endif /* GL_EXT_blend_equation_separate */
-
-/* ----------------------- GL_EXT_blend_func_separate ---------------------- */
-
-#ifndef GL_EXT_blend_func_separate
-#define GL_EXT_blend_func_separate 1
-
-#define GL_BLEND_DST_RGB_EXT 0x80C8
-#define GL_BLEND_SRC_RGB_EXT 0x80C9
-#define GL_BLEND_DST_ALPHA_EXT 0x80CA
-#define GL_BLEND_SRC_ALPHA_EXT 0x80CB
-
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEEXTPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
-
-#define glBlendFuncSeparateEXT GLEW_GET_FUN(__glewBlendFuncSeparateEXT)
-
-#define GLEW_EXT_blend_func_separate GLEW_GET_VAR(__GLEW_EXT_blend_func_separate)
-
-#endif /* GL_EXT_blend_func_separate */
-
-/* ------------------------- GL_EXT_blend_logic_op ------------------------- */
-
-#ifndef GL_EXT_blend_logic_op
-#define GL_EXT_blend_logic_op 1
-
-#define GLEW_EXT_blend_logic_op GLEW_GET_VAR(__GLEW_EXT_blend_logic_op)
-
-#endif /* GL_EXT_blend_logic_op */
-
-/* -------------------------- GL_EXT_blend_minmax -------------------------- */
-
-#ifndef GL_EXT_blend_minmax
-#define GL_EXT_blend_minmax 1
-
-#define GL_FUNC_ADD_EXT 0x8006
-#define GL_MIN_EXT 0x8007
-#define GL_MAX_EXT 0x8008
-#define GL_BLEND_EQUATION_EXT 0x8009
-
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONEXTPROC) (GLenum mode);
-
-#define glBlendEquationEXT GLEW_GET_FUN(__glewBlendEquationEXT)
-
-#define GLEW_EXT_blend_minmax GLEW_GET_VAR(__GLEW_EXT_blend_minmax)
-
-#endif /* GL_EXT_blend_minmax */
-
-/* ------------------------- GL_EXT_blend_subtract ------------------------- */
-
-#ifndef GL_EXT_blend_subtract
-#define GL_EXT_blend_subtract 1
-
-#define GL_FUNC_SUBTRACT_EXT 0x800A
-#define GL_FUNC_REVERSE_SUBTRACT_EXT 0x800B
-
-#define GLEW_EXT_blend_subtract GLEW_GET_VAR(__GLEW_EXT_blend_subtract)
-
-#endif /* GL_EXT_blend_subtract */
-
-/* ------------------------ GL_EXT_clip_volume_hint ------------------------ */
-
-#ifndef GL_EXT_clip_volume_hint
-#define GL_EXT_clip_volume_hint 1
-
-#define GL_CLIP_VOLUME_CLIPPING_HINT_EXT 0x80F0
-
-#define GLEW_EXT_clip_volume_hint GLEW_GET_VAR(__GLEW_EXT_clip_volume_hint)
-
-#endif /* GL_EXT_clip_volume_hint */
-
-/* ------------------------------ GL_EXT_cmyka ----------------------------- */
-
-#ifndef GL_EXT_cmyka
-#define GL_EXT_cmyka 1
-
-#define GL_CMYK_EXT 0x800C
-#define GL_CMYKA_EXT 0x800D
-#define GL_PACK_CMYK_HINT_EXT 0x800E
-#define GL_UNPACK_CMYK_HINT_EXT 0x800F
-
-#define GLEW_EXT_cmyka GLEW_GET_VAR(__GLEW_EXT_cmyka)
-
-#endif /* GL_EXT_cmyka */
-
-/* ------------------------- GL_EXT_color_subtable ------------------------- */
-
-#ifndef GL_EXT_color_subtable
-#define GL_EXT_color_subtable 1
-
-typedef void (GLAPIENTRY * PFNGLCOLORSUBTABLEEXTPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOPYCOLORSUBTABLEEXTPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
-
-#define glColorSubTableEXT GLEW_GET_FUN(__glewColorSubTableEXT)
-#define glCopyColorSubTableEXT GLEW_GET_FUN(__glewCopyColorSubTableEXT)
-
-#define GLEW_EXT_color_subtable GLEW_GET_VAR(__GLEW_EXT_color_subtable)
-
-#endif /* GL_EXT_color_subtable */
-
-/* ---------------------- GL_EXT_compiled_vertex_array --------------------- */
-
-#ifndef GL_EXT_compiled_vertex_array
-#define GL_EXT_compiled_vertex_array 1
-
-#define GL_ARRAY_ELEMENT_LOCK_FIRST_EXT 0x81A8
-#define GL_ARRAY_ELEMENT_LOCK_COUNT_EXT 0x81A9
-
-typedef void (GLAPIENTRY * PFNGLLOCKARRAYSEXTPROC) (GLint first, GLsizei count);
-typedef void (GLAPIENTRY * PFNGLUNLOCKARRAYSEXTPROC) (void);
-
-#define glLockArraysEXT GLEW_GET_FUN(__glewLockArraysEXT)
-#define glUnlockArraysEXT GLEW_GET_FUN(__glewUnlockArraysEXT)
-
-#define GLEW_EXT_compiled_vertex_array GLEW_GET_VAR(__GLEW_EXT_compiled_vertex_array)
-
-#endif /* GL_EXT_compiled_vertex_array */
-
-/* --------------------------- GL_EXT_convolution -------------------------- */
-
-#ifndef GL_EXT_convolution
-#define GL_EXT_convolution 1
-
-#define GL_CONVOLUTION_1D_EXT 0x8010
-#define GL_CONVOLUTION_2D_EXT 0x8011
-#define GL_SEPARABLE_2D_EXT 0x8012
-#define GL_CONVOLUTION_BORDER_MODE_EXT 0x8013
-#define GL_CONVOLUTION_FILTER_SCALE_EXT 0x8014
-#define GL_CONVOLUTION_FILTER_BIAS_EXT 0x8015
-#define GL_REDUCE_EXT 0x8016
-#define GL_CONVOLUTION_FORMAT_EXT 0x8017
-#define GL_CONVOLUTION_WIDTH_EXT 0x8018
-#define GL_CONVOLUTION_HEIGHT_EXT 0x8019
-#define GL_MAX_CONVOLUTION_WIDTH_EXT 0x801A
-#define GL_MAX_CONVOLUTION_HEIGHT_EXT 0x801B
-#define GL_POST_CONVOLUTION_RED_SCALE_EXT 0x801C
-#define GL_POST_CONVOLUTION_GREEN_SCALE_EXT 0x801D
-#define GL_POST_CONVOLUTION_BLUE_SCALE_EXT 0x801E
-#define GL_POST_CONVOLUTION_ALPHA_SCALE_EXT 0x801F
-#define GL_POST_CONVOLUTION_RED_BIAS_EXT 0x8020
-#define GL_POST_CONVOLUTION_GREEN_BIAS_EXT 0x8021
-#define GL_POST_CONVOLUTION_BLUE_BIAS_EXT 0x8022
-#define GL_POST_CONVOLUTION_ALPHA_BIAS_EXT 0x8023
-
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER1DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* image);
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* image);
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFEXTPROC) (GLenum target, GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIEXTPROC) (GLenum target, GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
-typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
-typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONFILTEREXTPROC) (GLenum target, GLenum format, GLenum type, void* image);
-typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETSEPARABLEFILTEREXTPROC) (GLenum target, GLenum format, GLenum type, void* row, void* column, void* span);
-typedef void (GLAPIENTRY * PFNGLSEPARABLEFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* row, const void* column);
-
-#define glConvolutionFilter1DEXT GLEW_GET_FUN(__glewConvolutionFilter1DEXT)
-#define glConvolutionFilter2DEXT GLEW_GET_FUN(__glewConvolutionFilter2DEXT)
-#define glConvolutionParameterfEXT GLEW_GET_FUN(__glewConvolutionParameterfEXT)
-#define glConvolutionParameterfvEXT GLEW_GET_FUN(__glewConvolutionParameterfvEXT)
-#define glConvolutionParameteriEXT GLEW_GET_FUN(__glewConvolutionParameteriEXT)
-#define glConvolutionParameterivEXT GLEW_GET_FUN(__glewConvolutionParameterivEXT)
-#define glCopyConvolutionFilter1DEXT GLEW_GET_FUN(__glewCopyConvolutionFilter1DEXT)
-#define glCopyConvolutionFilter2DEXT GLEW_GET_FUN(__glewCopyConvolutionFilter2DEXT)
-#define glGetConvolutionFilterEXT GLEW_GET_FUN(__glewGetConvolutionFilterEXT)
-#define glGetConvolutionParameterfvEXT GLEW_GET_FUN(__glewGetConvolutionParameterfvEXT)
-#define glGetConvolutionParameterivEXT GLEW_GET_FUN(__glewGetConvolutionParameterivEXT)
-#define glGetSeparableFilterEXT GLEW_GET_FUN(__glewGetSeparableFilterEXT)
-#define glSeparableFilter2DEXT GLEW_GET_FUN(__glewSeparableFilter2DEXT)
-
-#define GLEW_EXT_convolution GLEW_GET_VAR(__GLEW_EXT_convolution)
-
-#endif /* GL_EXT_convolution */
-
-/* ------------------------ GL_EXT_coordinate_frame ------------------------ */
-
-#ifndef GL_EXT_coordinate_frame
-#define GL_EXT_coordinate_frame 1
-
-#define GL_TANGENT_ARRAY_EXT 0x8439
-#define GL_BINORMAL_ARRAY_EXT 0x843A
-#define GL_CURRENT_TANGENT_EXT 0x843B
-#define GL_CURRENT_BINORMAL_EXT 0x843C
-#define GL_TANGENT_ARRAY_TYPE_EXT 0x843E
-#define GL_TANGENT_ARRAY_STRIDE_EXT 0x843F
-#define GL_BINORMAL_ARRAY_TYPE_EXT 0x8440
-#define GL_BINORMAL_ARRAY_STRIDE_EXT 0x8441
-#define GL_TANGENT_ARRAY_POINTER_EXT 0x8442
-#define GL_BINORMAL_ARRAY_POINTER_EXT 0x8443
-#define GL_MAP1_TANGENT_EXT 0x8444
-#define GL_MAP2_TANGENT_EXT 0x8445
-#define GL_MAP1_BINORMAL_EXT 0x8446
-#define GL_MAP2_BINORMAL_EXT 0x8447
-
-typedef void (GLAPIENTRY * PFNGLBINORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, void* pointer);
-typedef void (GLAPIENTRY * PFNGLTANGENTPOINTEREXTPROC) (GLenum type, GLsizei stride, void* pointer);
-
-#define glBinormalPointerEXT GLEW_GET_FUN(__glewBinormalPointerEXT)
-#define glTangentPointerEXT GLEW_GET_FUN(__glewTangentPointerEXT)
-
-#define GLEW_EXT_coordinate_frame GLEW_GET_VAR(__GLEW_EXT_coordinate_frame)
-
-#endif /* GL_EXT_coordinate_frame */
-
-/* -------------------------- GL_EXT_copy_texture -------------------------- */
-
-#ifndef GL_EXT_copy_texture
-#define GL_EXT_copy_texture 1
-
-typedef void (GLAPIENTRY * PFNGLCOPYTEXIMAGE1DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
-typedef void (GLAPIENTRY * PFNGLCOPYTEXIMAGE2DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
-typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE1DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
-typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE2DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE3DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-
-#define glCopyTexImage1DEXT GLEW_GET_FUN(__glewCopyTexImage1DEXT)
-#define glCopyTexImage2DEXT GLEW_GET_FUN(__glewCopyTexImage2DEXT)
-#define glCopyTexSubImage1DEXT GLEW_GET_FUN(__glewCopyTexSubImage1DEXT)
-#define glCopyTexSubImage2DEXT GLEW_GET_FUN(__glewCopyTexSubImage2DEXT)
-#define glCopyTexSubImage3DEXT GLEW_GET_FUN(__glewCopyTexSubImage3DEXT)
-
-#define GLEW_EXT_copy_texture GLEW_GET_VAR(__GLEW_EXT_copy_texture)
-
-#endif /* GL_EXT_copy_texture */
-
-/* --------------------------- GL_EXT_cull_vertex -------------------------- */
-
-#ifndef GL_EXT_cull_vertex
-#define GL_EXT_cull_vertex 1
-
-#define GL_CULL_VERTEX_EXT 0x81AA
-#define GL_CULL_VERTEX_EYE_POSITION_EXT 0x81AB
-#define GL_CULL_VERTEX_OBJECT_POSITION_EXT 0x81AC
-
-typedef void (GLAPIENTRY * PFNGLCULLPARAMETERDVEXTPROC) (GLenum pname, GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLCULLPARAMETERFVEXTPROC) (GLenum pname, GLfloat* params);
-
-#define glCullParameterdvEXT GLEW_GET_FUN(__glewCullParameterdvEXT)
-#define glCullParameterfvEXT GLEW_GET_FUN(__glewCullParameterfvEXT)
-
-#define GLEW_EXT_cull_vertex GLEW_GET_VAR(__GLEW_EXT_cull_vertex)
-
-#endif /* GL_EXT_cull_vertex */
-
-/* ------------------------ GL_EXT_depth_bounds_test ----------------------- */
-
-#ifndef GL_EXT_depth_bounds_test
-#define GL_EXT_depth_bounds_test 1
-
-#define GL_DEPTH_BOUNDS_TEST_EXT 0x8890
-#define GL_DEPTH_BOUNDS_EXT 0x8891
-
-typedef void (GLAPIENTRY * PFNGLDEPTHBOUNDSEXTPROC) (GLclampd zmin, GLclampd zmax);
-
-#define glDepthBoundsEXT GLEW_GET_FUN(__glewDepthBoundsEXT)
-
-#define GLEW_EXT_depth_bounds_test GLEW_GET_VAR(__GLEW_EXT_depth_bounds_test)
-
-#endif /* GL_EXT_depth_bounds_test */
-
-/* ----------------------- GL_EXT_direct_state_access ---------------------- */
-
-#ifndef GL_EXT_direct_state_access
-#define GL_EXT_direct_state_access 1
-
-#define GL_PROGRAM_MATRIX_EXT 0x8E2D
-#define GL_TRANSPOSE_PROGRAM_MATRIX_EXT 0x8E2E
-#define GL_PROGRAM_MATRIX_STACK_DEPTH_EXT 0x8E2F
-
-typedef void (GLAPIENTRY * PFNGLBINDMULTITEXTUREEXTPROC) (GLenum texunit, GLenum target, GLuint texture);
-typedef GLenum (GLAPIENTRY * PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC) (GLuint framebuffer, GLenum target);
-typedef void (GLAPIENTRY * PFNGLCLIENTATTRIBDEFAULTEXTPROC) (GLbitfield mask);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data);
-typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
-typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
-typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
-typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-typedef void (GLAPIENTRY * PFNGLCOPYTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
-typedef void (GLAPIENTRY * PFNGLCOPYTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
-typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
-typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
-typedef void (GLAPIENTRY * PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC) (GLenum array, GLuint index);
-typedef void (GLAPIENTRY * PFNGLDISABLECLIENTSTATEIEXTPROC) (GLenum array, GLuint index);
-typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXARRAYATTRIBEXTPROC) (GLuint vaobj, GLuint index);
-typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXARRAYEXTPROC) (GLuint vaobj, GLenum array);
-typedef void (GLAPIENTRY * PFNGLENABLECLIENTSTATEINDEXEDEXTPROC) (GLenum array, GLuint index);
-typedef void (GLAPIENTRY * PFNGLENABLECLIENTSTATEIEXTPROC) (GLenum array, GLuint index);
-typedef void (GLAPIENTRY * PFNGLENABLEVERTEXARRAYATTRIBEXTPROC) (GLuint vaobj, GLuint index);
-typedef void (GLAPIENTRY * PFNGLENABLEVERTEXARRAYEXTPROC) (GLuint vaobj, GLenum array);
-typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC) (GLuint framebuffer, GLenum mode);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC) (GLuint framebuffer, GLsizei n, const GLenum* bufs);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERREADBUFFEREXTPROC) (GLuint framebuffer, GLenum mode);
-typedef void (GLAPIENTRY * PFNGLGENERATEMULTITEXMIPMAPEXTPROC) (GLenum texunit, GLenum target);
-typedef void (GLAPIENTRY * PFNGLGENERATETEXTUREMIPMAPEXTPROC) (GLuint texture, GLenum target);
-typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC) (GLenum texunit, GLenum target, GLint level, void* img);
-typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC) (GLuint texture, GLenum target, GLint level, void* img);
-typedef void (GLAPIENTRY * PFNGLGETDOUBLEINDEXEDVEXTPROC) (GLenum target, GLuint index, GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLGETDOUBLEI_VEXTPROC) (GLenum pname, GLuint index, GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLGETFLOATINDEXEDVEXTPROC) (GLenum target, GLuint index, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETFLOATI_VEXTPROC) (GLenum pname, GLuint index, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum pname, GLint* param);
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXENVFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXENVIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXGENDVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXGENFVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXGENIVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXIMAGEEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, void* pixels);
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERIIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERIUIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLuint* params);
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC) (GLuint buffer, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPOINTERVEXTPROC) (GLuint buffer, GLenum pname, void** params);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, void* data);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLuint* params);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC) (GLuint program, GLenum target, GLuint index, GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC) (GLuint program, GLenum target, GLuint index, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMSTRINGEXTPROC) (GLuint program, GLenum target, GLenum pname, void* string);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMIVEXTPROC) (GLuint program, GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC) (GLuint renderbuffer, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETPOINTERINDEXEDVEXTPROC) (GLenum target, GLuint index, GLvoid** params);
-typedef void (GLAPIENTRY * PFNGLGETPOINTERI_VEXTPROC) (GLenum pname, GLuint index, GLvoid** params);
-typedef void (GLAPIENTRY * PFNGLGETTEXTUREIMAGEEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum format, GLenum type, void* pixels);
-typedef void (GLAPIENTRY * PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIUIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLuint* params);
-typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYINTEGERI_VEXTPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint* param);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYINTEGERVEXTPROC) (GLuint vaobj, GLenum pname, GLint* param);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYPOINTERI_VEXTPROC) (GLuint vaobj, GLuint index, GLenum pname, GLvoid** param);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYPOINTERVEXTPROC) (GLuint vaobj, GLenum pname, GLvoid** param);
-typedef GLvoid * (GLAPIENTRY * PFNGLMAPNAMEDBUFFEREXTPROC) (GLuint buffer, GLenum access);
-typedef GLvoid * (GLAPIENTRY * PFNGLMAPNAMEDBUFFERRANGEEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access);
-typedef void (GLAPIENTRY * PFNGLMATRIXFRUSTUMEXTPROC) (GLenum matrixMode, GLdouble l, GLdouble r, GLdouble b, GLdouble t, GLdouble n, GLdouble f);
-typedef void (GLAPIENTRY * PFNGLMATRIXLOADIDENTITYEXTPROC) (GLenum matrixMode);
-typedef void (GLAPIENTRY * PFNGLMATRIXLOADTRANSPOSEDEXTPROC) (GLenum matrixMode, const GLdouble* m);
-typedef void (GLAPIENTRY * PFNGLMATRIXLOADTRANSPOSEFEXTPROC) (GLenum matrixMode, const GLfloat* m);
-typedef void (GLAPIENTRY * PFNGLMATRIXLOADDEXTPROC) (GLenum matrixMode, const GLdouble* m);
-typedef void (GLAPIENTRY * PFNGLMATRIXLOADFEXTPROC) (GLenum matrixMode, const GLfloat* m);
-typedef void (GLAPIENTRY * PFNGLMATRIXMULTTRANSPOSEDEXTPROC) (GLenum matrixMode, const GLdouble* m);
-typedef void (GLAPIENTRY * PFNGLMATRIXMULTTRANSPOSEFEXTPROC) (GLenum matrixMode, const GLfloat* m);
-typedef void (GLAPIENTRY * PFNGLMATRIXMULTDEXTPROC) (GLenum matrixMode, const GLdouble* m);
-typedef void (GLAPIENTRY * PFNGLMATRIXMULTFEXTPROC) (GLenum matrixMode, const GLfloat* m);
-typedef void (GLAPIENTRY * PFNGLMATRIXORTHOEXTPROC) (GLenum matrixMode, GLdouble l, GLdouble r, GLdouble b, GLdouble t, GLdouble n, GLdouble f);
-typedef void (GLAPIENTRY * PFNGLMATRIXPOPEXTPROC) (GLenum matrixMode);
-typedef void (GLAPIENTRY * PFNGLMATRIXPUSHEXTPROC) (GLenum matrixMode);
-typedef void (GLAPIENTRY * PFNGLMATRIXROTATEDEXTPROC) (GLenum matrixMode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
-typedef void (GLAPIENTRY * PFNGLMATRIXROTATEFEXTPROC) (GLenum matrixMode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLMATRIXSCALEDEXTPROC) (GLenum matrixMode, GLdouble x, GLdouble y, GLdouble z);
-typedef void (GLAPIENTRY * PFNGLMATRIXSCALEFEXTPROC) (GLenum matrixMode, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLMATRIXTRANSLATEDEXTPROC) (GLenum matrixMode, GLdouble x, GLdouble y, GLdouble z);
-typedef void (GLAPIENTRY * PFNGLMATRIXTRANSLATEFEXTPROC) (GLenum matrixMode, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLMULTITEXBUFFEREXTPROC) (GLenum texunit, GLenum target, GLenum internalformat, GLuint buffer);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDPOINTEREXTPROC) (GLenum texunit, GLint size, GLenum type, GLsizei stride, const void* pointer);
-typedef void (GLAPIENTRY * PFNGLMULTITEXENVFEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLMULTITEXENVFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLMULTITEXENVIEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLMULTITEXENVIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLMULTITEXGENDEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble param);
-typedef void (GLAPIENTRY * PFNGLMULTITEXGENDVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLMULTITEXGENFEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLMULTITEXGENFVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLMULTITEXGENIEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLMULTITEXGENIVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLMULTITEXIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIUIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLuint* params);
-typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERFEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat* param);
-typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint* param);
-typedef void (GLAPIENTRY * PFNGLMULTITEXRENDERBUFFEREXTPROC) (GLenum texunit, GLenum target, GLuint renderbuffer);
-typedef void (GLAPIENTRY * PFNGLMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERDATAEXTPROC) (GLuint buffer, GLsizeiptr size, const void* data, GLenum usage);
-typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, const void* data);
-typedef void (GLAPIENTRY * PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC) (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC) (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level);
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLenum face);
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer);
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC) (GLuint program, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC) (GLuint program, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC) (GLuint program, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC) (GLuint program, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLuint* params);
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLuint* params);
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMSTRINGEXTPROC) (GLuint program, GLenum target, GLenum format, GLsizei len, const void* string);
-typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC) (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height);
-typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC) (GLuint renderbuffer, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height);
-typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat v0);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint v0);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIEXTPROC) (GLuint program, GLint location, GLuint v0);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
-typedef void (GLAPIENTRY * PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC) (GLbitfield mask);
-typedef void (GLAPIENTRY * PFNGLTEXTUREBUFFEREXTPROC) (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer);
-typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIUIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLuint* params);
-typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERFEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLfloat* param);
-typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLint* param);
-typedef void (GLAPIENTRY * PFNGLTEXTURERENDERBUFFEREXTPROC) (GLuint texture, GLenum target, GLuint renderbuffer);
-typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels);
-typedef GLboolean (GLAPIENTRY * PFNGLUNMAPNAMEDBUFFEREXTPROC) (GLuint buffer);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYCOLOROFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYEDGEFLAGOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLsizei stride, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYFOGCOORDOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYINDEXOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYMULTITEXCOORDOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum texunit, GLint size, GLenum type, GLsizei stride, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYNORMALOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYSECONDARYCOLOROFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYTEXCOORDOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBIOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset);
-
-#define glBindMultiTextureEXT GLEW_GET_FUN(__glewBindMultiTextureEXT)
-#define glCheckNamedFramebufferStatusEXT GLEW_GET_FUN(__glewCheckNamedFramebufferStatusEXT)
-#define glClientAttribDefaultEXT GLEW_GET_FUN(__glewClientAttribDefaultEXT)
-#define glCompressedMultiTexImage1DEXT GLEW_GET_FUN(__glewCompressedMultiTexImage1DEXT)
-#define glCompressedMultiTexImage2DEXT GLEW_GET_FUN(__glewCompressedMultiTexImage2DEXT)
-#define glCompressedMultiTexImage3DEXT GLEW_GET_FUN(__glewCompressedMultiTexImage3DEXT)
-#define glCompressedMultiTexSubImage1DEXT GLEW_GET_FUN(__glewCompressedMultiTexSubImage1DEXT)
-#define glCompressedMultiTexSubImage2DEXT GLEW_GET_FUN(__glewCompressedMultiTexSubImage2DEXT)
-#define glCompressedMultiTexSubImage3DEXT GLEW_GET_FUN(__glewCompressedMultiTexSubImage3DEXT)
-#define glCompressedTextureImage1DEXT GLEW_GET_FUN(__glewCompressedTextureImage1DEXT)
-#define glCompressedTextureImage2DEXT GLEW_GET_FUN(__glewCompressedTextureImage2DEXT)
-#define glCompressedTextureImage3DEXT GLEW_GET_FUN(__glewCompressedTextureImage3DEXT)
-#define glCompressedTextureSubImage1DEXT GLEW_GET_FUN(__glewCompressedTextureSubImage1DEXT)
-#define glCompressedTextureSubImage2DEXT GLEW_GET_FUN(__glewCompressedTextureSubImage2DEXT)
-#define glCompressedTextureSubImage3DEXT GLEW_GET_FUN(__glewCompressedTextureSubImage3DEXT)
-#define glCopyMultiTexImage1DEXT GLEW_GET_FUN(__glewCopyMultiTexImage1DEXT)
-#define glCopyMultiTexImage2DEXT GLEW_GET_FUN(__glewCopyMultiTexImage2DEXT)
-#define glCopyMultiTexSubImage1DEXT GLEW_GET_FUN(__glewCopyMultiTexSubImage1DEXT)
-#define glCopyMultiTexSubImage2DEXT GLEW_GET_FUN(__glewCopyMultiTexSubImage2DEXT)
-#define glCopyMultiTexSubImage3DEXT GLEW_GET_FUN(__glewCopyMultiTexSubImage3DEXT)
-#define glCopyTextureImage1DEXT GLEW_GET_FUN(__glewCopyTextureImage1DEXT)
-#define glCopyTextureImage2DEXT GLEW_GET_FUN(__glewCopyTextureImage2DEXT)
-#define glCopyTextureSubImage1DEXT GLEW_GET_FUN(__glewCopyTextureSubImage1DEXT)
-#define glCopyTextureSubImage2DEXT GLEW_GET_FUN(__glewCopyTextureSubImage2DEXT)
-#define glCopyTextureSubImage3DEXT GLEW_GET_FUN(__glewCopyTextureSubImage3DEXT)
-#define glDisableClientStateIndexedEXT GLEW_GET_FUN(__glewDisableClientStateIndexedEXT)
-#define glDisableClientStateiEXT GLEW_GET_FUN(__glewDisableClientStateiEXT)
-#define glDisableVertexArrayAttribEXT GLEW_GET_FUN(__glewDisableVertexArrayAttribEXT)
-#define glDisableVertexArrayEXT GLEW_GET_FUN(__glewDisableVertexArrayEXT)
-#define glEnableClientStateIndexedEXT GLEW_GET_FUN(__glewEnableClientStateIndexedEXT)
-#define glEnableClientStateiEXT GLEW_GET_FUN(__glewEnableClientStateiEXT)
-#define glEnableVertexArrayAttribEXT GLEW_GET_FUN(__glewEnableVertexArrayAttribEXT)
-#define glEnableVertexArrayEXT GLEW_GET_FUN(__glewEnableVertexArrayEXT)
-#define glFlushMappedNamedBufferRangeEXT GLEW_GET_FUN(__glewFlushMappedNamedBufferRangeEXT)
-#define glFramebufferDrawBufferEXT GLEW_GET_FUN(__glewFramebufferDrawBufferEXT)
-#define glFramebufferDrawBuffersEXT GLEW_GET_FUN(__glewFramebufferDrawBuffersEXT)
-#define glFramebufferReadBufferEXT GLEW_GET_FUN(__glewFramebufferReadBufferEXT)
-#define glGenerateMultiTexMipmapEXT GLEW_GET_FUN(__glewGenerateMultiTexMipmapEXT)
-#define glGenerateTextureMipmapEXT GLEW_GET_FUN(__glewGenerateTextureMipmapEXT)
-#define glGetCompressedMultiTexImageEXT GLEW_GET_FUN(__glewGetCompressedMultiTexImageEXT)
-#define glGetCompressedTextureImageEXT GLEW_GET_FUN(__glewGetCompressedTextureImageEXT)
-#define glGetDoubleIndexedvEXT GLEW_GET_FUN(__glewGetDoubleIndexedvEXT)
-#define glGetDoublei_vEXT GLEW_GET_FUN(__glewGetDoublei_vEXT)
-#define glGetFloatIndexedvEXT GLEW_GET_FUN(__glewGetFloatIndexedvEXT)
-#define glGetFloati_vEXT GLEW_GET_FUN(__glewGetFloati_vEXT)
-#define glGetFramebufferParameterivEXT GLEW_GET_FUN(__glewGetFramebufferParameterivEXT)
-#define glGetMultiTexEnvfvEXT GLEW_GET_FUN(__glewGetMultiTexEnvfvEXT)
-#define glGetMultiTexEnvivEXT GLEW_GET_FUN(__glewGetMultiTexEnvivEXT)
-#define glGetMultiTexGendvEXT GLEW_GET_FUN(__glewGetMultiTexGendvEXT)
-#define glGetMultiTexGenfvEXT GLEW_GET_FUN(__glewGetMultiTexGenfvEXT)
-#define glGetMultiTexGenivEXT GLEW_GET_FUN(__glewGetMultiTexGenivEXT)
-#define glGetMultiTexImageEXT GLEW_GET_FUN(__glewGetMultiTexImageEXT)
-#define glGetMultiTexLevelParameterfvEXT GLEW_GET_FUN(__glewGetMultiTexLevelParameterfvEXT)
-#define glGetMultiTexLevelParameterivEXT GLEW_GET_FUN(__glewGetMultiTexLevelParameterivEXT)
-#define glGetMultiTexParameterIivEXT GLEW_GET_FUN(__glewGetMultiTexParameterIivEXT)
-#define glGetMultiTexParameterIuivEXT GLEW_GET_FUN(__glewGetMultiTexParameterIuivEXT)
-#define glGetMultiTexParameterfvEXT GLEW_GET_FUN(__glewGetMultiTexParameterfvEXT)
-#define glGetMultiTexParameterivEXT GLEW_GET_FUN(__glewGetMultiTexParameterivEXT)
-#define glGetNamedBufferParameterivEXT GLEW_GET_FUN(__glewGetNamedBufferParameterivEXT)
-#define glGetNamedBufferPointervEXT GLEW_GET_FUN(__glewGetNamedBufferPointervEXT)
-#define glGetNamedBufferSubDataEXT GLEW_GET_FUN(__glewGetNamedBufferSubDataEXT)
-#define glGetNamedFramebufferAttachmentParameterivEXT GLEW_GET_FUN(__glewGetNamedFramebufferAttachmentParameterivEXT)
-#define glGetNamedProgramLocalParameterIivEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterIivEXT)
-#define glGetNamedProgramLocalParameterIuivEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterIuivEXT)
-#define glGetNamedProgramLocalParameterdvEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterdvEXT)
-#define glGetNamedProgramLocalParameterfvEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterfvEXT)
-#define glGetNamedProgramStringEXT GLEW_GET_FUN(__glewGetNamedProgramStringEXT)
-#define glGetNamedProgramivEXT GLEW_GET_FUN(__glewGetNamedProgramivEXT)
-#define glGetNamedRenderbufferParameterivEXT GLEW_GET_FUN(__glewGetNamedRenderbufferParameterivEXT)
-#define glGetPointerIndexedvEXT GLEW_GET_FUN(__glewGetPointerIndexedvEXT)
-#define glGetPointeri_vEXT GLEW_GET_FUN(__glewGetPointeri_vEXT)
-#define glGetTextureImageEXT GLEW_GET_FUN(__glewGetTextureImageEXT)
-#define glGetTextureLevelParameterfvEXT GLEW_GET_FUN(__glewGetTextureLevelParameterfvEXT)
-#define glGetTextureLevelParameterivEXT GLEW_GET_FUN(__glewGetTextureLevelParameterivEXT)
-#define glGetTextureParameterIivEXT GLEW_GET_FUN(__glewGetTextureParameterIivEXT)
-#define glGetTextureParameterIuivEXT GLEW_GET_FUN(__glewGetTextureParameterIuivEXT)
-#define glGetTextureParameterfvEXT GLEW_GET_FUN(__glewGetTextureParameterfvEXT)
-#define glGetTextureParameterivEXT GLEW_GET_FUN(__glewGetTextureParameterivEXT)
-#define glGetVertexArrayIntegeri_vEXT GLEW_GET_FUN(__glewGetVertexArrayIntegeri_vEXT)
-#define glGetVertexArrayIntegervEXT GLEW_GET_FUN(__glewGetVertexArrayIntegervEXT)
-#define glGetVertexArrayPointeri_vEXT GLEW_GET_FUN(__glewGetVertexArrayPointeri_vEXT)
-#define glGetVertexArrayPointervEXT GLEW_GET_FUN(__glewGetVertexArrayPointervEXT)
-#define glMapNamedBufferEXT GLEW_GET_FUN(__glewMapNamedBufferEXT)
-#define glMapNamedBufferRangeEXT GLEW_GET_FUN(__glewMapNamedBufferRangeEXT)
-#define glMatrixFrustumEXT GLEW_GET_FUN(__glewMatrixFrustumEXT)
-#define glMatrixLoadIdentityEXT GLEW_GET_FUN(__glewMatrixLoadIdentityEXT)
-#define glMatrixLoadTransposedEXT GLEW_GET_FUN(__glewMatrixLoadTransposedEXT)
-#define glMatrixLoadTransposefEXT GLEW_GET_FUN(__glewMatrixLoadTransposefEXT)
-#define glMatrixLoaddEXT GLEW_GET_FUN(__glewMatrixLoaddEXT)
-#define glMatrixLoadfEXT GLEW_GET_FUN(__glewMatrixLoadfEXT)
-#define glMatrixMultTransposedEXT GLEW_GET_FUN(__glewMatrixMultTransposedEXT)
-#define glMatrixMultTransposefEXT GLEW_GET_FUN(__glewMatrixMultTransposefEXT)
-#define glMatrixMultdEXT GLEW_GET_FUN(__glewMatrixMultdEXT)
-#define glMatrixMultfEXT GLEW_GET_FUN(__glewMatrixMultfEXT)
-#define glMatrixOrthoEXT GLEW_GET_FUN(__glewMatrixOrthoEXT)
-#define glMatrixPopEXT GLEW_GET_FUN(__glewMatrixPopEXT)
-#define glMatrixPushEXT GLEW_GET_FUN(__glewMatrixPushEXT)
-#define glMatrixRotatedEXT GLEW_GET_FUN(__glewMatrixRotatedEXT)
-#define glMatrixRotatefEXT GLEW_GET_FUN(__glewMatrixRotatefEXT)
-#define glMatrixScaledEXT GLEW_GET_FUN(__glewMatrixScaledEXT)
-#define glMatrixScalefEXT GLEW_GET_FUN(__glewMatrixScalefEXT)
-#define glMatrixTranslatedEXT GLEW_GET_FUN(__glewMatrixTranslatedEXT)
-#define glMatrixTranslatefEXT GLEW_GET_FUN(__glewMatrixTranslatefEXT)
-#define glMultiTexBufferEXT GLEW_GET_FUN(__glewMultiTexBufferEXT)
-#define glMultiTexCoordPointerEXT GLEW_GET_FUN(__glewMultiTexCoordPointerEXT)
-#define glMultiTexEnvfEXT GLEW_GET_FUN(__glewMultiTexEnvfEXT)
-#define glMultiTexEnvfvEXT GLEW_GET_FUN(__glewMultiTexEnvfvEXT)
-#define glMultiTexEnviEXT GLEW_GET_FUN(__glewMultiTexEnviEXT)
-#define glMultiTexEnvivEXT GLEW_GET_FUN(__glewMultiTexEnvivEXT)
-#define glMultiTexGendEXT GLEW_GET_FUN(__glewMultiTexGendEXT)
-#define glMultiTexGendvEXT GLEW_GET_FUN(__glewMultiTexGendvEXT)
-#define glMultiTexGenfEXT GLEW_GET_FUN(__glewMultiTexGenfEXT)
-#define glMultiTexGenfvEXT GLEW_GET_FUN(__glewMultiTexGenfvEXT)
-#define glMultiTexGeniEXT GLEW_GET_FUN(__glewMultiTexGeniEXT)
-#define glMultiTexGenivEXT GLEW_GET_FUN(__glewMultiTexGenivEXT)
-#define glMultiTexImage1DEXT GLEW_GET_FUN(__glewMultiTexImage1DEXT)
-#define glMultiTexImage2DEXT GLEW_GET_FUN(__glewMultiTexImage2DEXT)
-#define glMultiTexImage3DEXT GLEW_GET_FUN(__glewMultiTexImage3DEXT)
-#define glMultiTexParameterIivEXT GLEW_GET_FUN(__glewMultiTexParameterIivEXT)
-#define glMultiTexParameterIuivEXT GLEW_GET_FUN(__glewMultiTexParameterIuivEXT)
-#define glMultiTexParameterfEXT GLEW_GET_FUN(__glewMultiTexParameterfEXT)
-#define glMultiTexParameterfvEXT GLEW_GET_FUN(__glewMultiTexParameterfvEXT)
-#define glMultiTexParameteriEXT GLEW_GET_FUN(__glewMultiTexParameteriEXT)
-#define glMultiTexParameterivEXT GLEW_GET_FUN(__glewMultiTexParameterivEXT)
-#define glMultiTexRenderbufferEXT GLEW_GET_FUN(__glewMultiTexRenderbufferEXT)
-#define glMultiTexSubImage1DEXT GLEW_GET_FUN(__glewMultiTexSubImage1DEXT)
-#define glMultiTexSubImage2DEXT GLEW_GET_FUN(__glewMultiTexSubImage2DEXT)
-#define glMultiTexSubImage3DEXT GLEW_GET_FUN(__glewMultiTexSubImage3DEXT)
-#define glNamedBufferDataEXT GLEW_GET_FUN(__glewNamedBufferDataEXT)
-#define glNamedBufferSubDataEXT GLEW_GET_FUN(__glewNamedBufferSubDataEXT)
-#define glNamedCopyBufferSubDataEXT GLEW_GET_FUN(__glewNamedCopyBufferSubDataEXT)
-#define glNamedFramebufferRenderbufferEXT GLEW_GET_FUN(__glewNamedFramebufferRenderbufferEXT)
-#define glNamedFramebufferTexture1DEXT GLEW_GET_FUN(__glewNamedFramebufferTexture1DEXT)
-#define glNamedFramebufferTexture2DEXT GLEW_GET_FUN(__glewNamedFramebufferTexture2DEXT)
-#define glNamedFramebufferTexture3DEXT GLEW_GET_FUN(__glewNamedFramebufferTexture3DEXT)
-#define glNamedFramebufferTextureEXT GLEW_GET_FUN(__glewNamedFramebufferTextureEXT)
-#define glNamedFramebufferTextureFaceEXT GLEW_GET_FUN(__glewNamedFramebufferTextureFaceEXT)
-#define glNamedFramebufferTextureLayerEXT GLEW_GET_FUN(__glewNamedFramebufferTextureLayerEXT)
-#define glNamedProgramLocalParameter4dEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4dEXT)
-#define glNamedProgramLocalParameter4dvEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4dvEXT)
-#define glNamedProgramLocalParameter4fEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4fEXT)
-#define glNamedProgramLocalParameter4fvEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4fvEXT)
-#define glNamedProgramLocalParameterI4iEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4iEXT)
-#define glNamedProgramLocalParameterI4ivEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4ivEXT)
-#define glNamedProgramLocalParameterI4uiEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4uiEXT)
-#define glNamedProgramLocalParameterI4uivEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4uivEXT)
-#define glNamedProgramLocalParameters4fvEXT GLEW_GET_FUN(__glewNamedProgramLocalParameters4fvEXT)
-#define glNamedProgramLocalParametersI4ivEXT GLEW_GET_FUN(__glewNamedProgramLocalParametersI4ivEXT)
-#define glNamedProgramLocalParametersI4uivEXT GLEW_GET_FUN(__glewNamedProgramLocalParametersI4uivEXT)
-#define glNamedProgramStringEXT GLEW_GET_FUN(__glewNamedProgramStringEXT)
-#define glNamedRenderbufferStorageEXT GLEW_GET_FUN(__glewNamedRenderbufferStorageEXT)
-#define glNamedRenderbufferStorageMultisampleCoverageEXT GLEW_GET_FUN(__glewNamedRenderbufferStorageMultisampleCoverageEXT)
-#define glNamedRenderbufferStorageMultisampleEXT GLEW_GET_FUN(__glewNamedRenderbufferStorageMultisampleEXT)
-#define glProgramUniform1fEXT GLEW_GET_FUN(__glewProgramUniform1fEXT)
-#define glProgramUniform1fvEXT GLEW_GET_FUN(__glewProgramUniform1fvEXT)
-#define glProgramUniform1iEXT GLEW_GET_FUN(__glewProgramUniform1iEXT)
-#define glProgramUniform1ivEXT GLEW_GET_FUN(__glewProgramUniform1ivEXT)
-#define glProgramUniform1uiEXT GLEW_GET_FUN(__glewProgramUniform1uiEXT)
-#define glProgramUniform1uivEXT GLEW_GET_FUN(__glewProgramUniform1uivEXT)
-#define glProgramUniform2fEXT GLEW_GET_FUN(__glewProgramUniform2fEXT)
-#define glProgramUniform2fvEXT GLEW_GET_FUN(__glewProgramUniform2fvEXT)
-#define glProgramUniform2iEXT GLEW_GET_FUN(__glewProgramUniform2iEXT)
-#define glProgramUniform2ivEXT GLEW_GET_FUN(__glewProgramUniform2ivEXT)
-#define glProgramUniform2uiEXT GLEW_GET_FUN(__glewProgramUniform2uiEXT)
-#define glProgramUniform2uivEXT GLEW_GET_FUN(__glewProgramUniform2uivEXT)
-#define glProgramUniform3fEXT GLEW_GET_FUN(__glewProgramUniform3fEXT)
-#define glProgramUniform3fvEXT GLEW_GET_FUN(__glewProgramUniform3fvEXT)
-#define glProgramUniform3iEXT GLEW_GET_FUN(__glewProgramUniform3iEXT)
-#define glProgramUniform3ivEXT GLEW_GET_FUN(__glewProgramUniform3ivEXT)
-#define glProgramUniform3uiEXT GLEW_GET_FUN(__glewProgramUniform3uiEXT)
-#define glProgramUniform3uivEXT GLEW_GET_FUN(__glewProgramUniform3uivEXT)
-#define glProgramUniform4fEXT GLEW_GET_FUN(__glewProgramUniform4fEXT)
-#define glProgramUniform4fvEXT GLEW_GET_FUN(__glewProgramUniform4fvEXT)
-#define glProgramUniform4iEXT GLEW_GET_FUN(__glewProgramUniform4iEXT)
-#define glProgramUniform4ivEXT GLEW_GET_FUN(__glewProgramUniform4ivEXT)
-#define glProgramUniform4uiEXT GLEW_GET_FUN(__glewProgramUniform4uiEXT)
-#define glProgramUniform4uivEXT GLEW_GET_FUN(__glewProgramUniform4uivEXT)
-#define glProgramUniformMatrix2fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2fvEXT)
-#define glProgramUniformMatrix2x3fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2x3fvEXT)
-#define glProgramUniformMatrix2x4fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2x4fvEXT)
-#define glProgramUniformMatrix3fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3fvEXT)
-#define glProgramUniformMatrix3x2fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3x2fvEXT)
-#define glProgramUniformMatrix3x4fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3x4fvEXT)
-#define glProgramUniformMatrix4fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4fvEXT)
-#define glProgramUniformMatrix4x2fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4x2fvEXT)
-#define glProgramUniformMatrix4x3fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4x3fvEXT)
-#define glPushClientAttribDefaultEXT GLEW_GET_FUN(__glewPushClientAttribDefaultEXT)
-#define glTextureBufferEXT GLEW_GET_FUN(__glewTextureBufferEXT)
-#define glTextureImage1DEXT GLEW_GET_FUN(__glewTextureImage1DEXT)
-#define glTextureImage2DEXT GLEW_GET_FUN(__glewTextureImage2DEXT)
-#define glTextureImage3DEXT GLEW_GET_FUN(__glewTextureImage3DEXT)
-#define glTextureParameterIivEXT GLEW_GET_FUN(__glewTextureParameterIivEXT)
-#define glTextureParameterIuivEXT GLEW_GET_FUN(__glewTextureParameterIuivEXT)
-#define glTextureParameterfEXT GLEW_GET_FUN(__glewTextureParameterfEXT)
-#define glTextureParameterfvEXT GLEW_GET_FUN(__glewTextureParameterfvEXT)
-#define glTextureParameteriEXT GLEW_GET_FUN(__glewTextureParameteriEXT)
-#define glTextureParameterivEXT GLEW_GET_FUN(__glewTextureParameterivEXT)
-#define glTextureRenderbufferEXT GLEW_GET_FUN(__glewTextureRenderbufferEXT)
-#define glTextureSubImage1DEXT GLEW_GET_FUN(__glewTextureSubImage1DEXT)
-#define glTextureSubImage2DEXT GLEW_GET_FUN(__glewTextureSubImage2DEXT)
-#define glTextureSubImage3DEXT GLEW_GET_FUN(__glewTextureSubImage3DEXT)
-#define glUnmapNamedBufferEXT GLEW_GET_FUN(__glewUnmapNamedBufferEXT)
-#define glVertexArrayColorOffsetEXT GLEW_GET_FUN(__glewVertexArrayColorOffsetEXT)
-#define glVertexArrayEdgeFlagOffsetEXT GLEW_GET_FUN(__glewVertexArrayEdgeFlagOffsetEXT)
-#define glVertexArrayFogCoordOffsetEXT GLEW_GET_FUN(__glewVertexArrayFogCoordOffsetEXT)
-#define glVertexArrayIndexOffsetEXT GLEW_GET_FUN(__glewVertexArrayIndexOffsetEXT)
-#define glVertexArrayMultiTexCoordOffsetEXT GLEW_GET_FUN(__glewVertexArrayMultiTexCoordOffsetEXT)
-#define glVertexArrayNormalOffsetEXT GLEW_GET_FUN(__glewVertexArrayNormalOffsetEXT)
-#define glVertexArraySecondaryColorOffsetEXT GLEW_GET_FUN(__glewVertexArraySecondaryColorOffsetEXT)
-#define glVertexArrayTexCoordOffsetEXT GLEW_GET_FUN(__glewVertexArrayTexCoordOffsetEXT)
-#define glVertexArrayVertexAttribIOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribIOffsetEXT)
-#define glVertexArrayVertexAttribOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribOffsetEXT)
-#define glVertexArrayVertexOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexOffsetEXT)
-
-#define GLEW_EXT_direct_state_access GLEW_GET_VAR(__GLEW_EXT_direct_state_access)
-
-#endif /* GL_EXT_direct_state_access */
-
-/* -------------------------- GL_EXT_draw_buffers2 ------------------------- */
-
-#ifndef GL_EXT_draw_buffers2
-#define GL_EXT_draw_buffers2 1
-
-typedef void (GLAPIENTRY * PFNGLCOLORMASKINDEXEDEXTPROC) (GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
-typedef void (GLAPIENTRY * PFNGLDISABLEINDEXEDEXTPROC) (GLenum target, GLuint index);
-typedef void (GLAPIENTRY * PFNGLENABLEINDEXEDEXTPROC) (GLenum target, GLuint index);
-typedef void (GLAPIENTRY * PFNGLGETBOOLEANINDEXEDVEXTPROC) (GLenum value, GLuint index, GLboolean* data);
-typedef void (GLAPIENTRY * PFNGLGETINTEGERINDEXEDVEXTPROC) (GLenum value, GLuint index, GLint* data);
-typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDINDEXEDEXTPROC) (GLenum target, GLuint index);
-
-#define glColorMaskIndexedEXT GLEW_GET_FUN(__glewColorMaskIndexedEXT)
-#define glDisableIndexedEXT GLEW_GET_FUN(__glewDisableIndexedEXT)
-#define glEnableIndexedEXT GLEW_GET_FUN(__glewEnableIndexedEXT)
-#define glGetBooleanIndexedvEXT GLEW_GET_FUN(__glewGetBooleanIndexedvEXT)
-#define glGetIntegerIndexedvEXT GLEW_GET_FUN(__glewGetIntegerIndexedvEXT)
-#define glIsEnabledIndexedEXT GLEW_GET_FUN(__glewIsEnabledIndexedEXT)
-
-#define GLEW_EXT_draw_buffers2 GLEW_GET_VAR(__GLEW_EXT_draw_buffers2)
-
-#endif /* GL_EXT_draw_buffers2 */
-
-/* ------------------------- GL_EXT_draw_instanced ------------------------- */
-
-#ifndef GL_EXT_draw_instanced
-#define GL_EXT_draw_instanced 1
-
-typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDEXTPROC) (GLenum mode, GLint start, GLsizei count, GLsizei primcount);
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDEXTPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
-
-#define glDrawArraysInstancedEXT GLEW_GET_FUN(__glewDrawArraysInstancedEXT)
-#define glDrawElementsInstancedEXT GLEW_GET_FUN(__glewDrawElementsInstancedEXT)
-
-#define GLEW_EXT_draw_instanced GLEW_GET_VAR(__GLEW_EXT_draw_instanced)
-
-#endif /* GL_EXT_draw_instanced */
-
-/* ----------------------- GL_EXT_draw_range_elements ---------------------- */
-
-#ifndef GL_EXT_draw_range_elements
-#define GL_EXT_draw_range_elements 1
-
-#define GL_MAX_ELEMENTS_VERTICES 0x80E8
-#define GL_MAX_ELEMENTS_INDICES 0x80E9
-
-typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSEXTPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
-
-#define glDrawRangeElementsEXT GLEW_GET_FUN(__glewDrawRangeElementsEXT)
-
-#define GLEW_EXT_draw_range_elements GLEW_GET_VAR(__GLEW_EXT_draw_range_elements)
-
-#endif /* GL_EXT_draw_range_elements */
-
-/* ---------------------------- GL_EXT_fog_coord --------------------------- */
-
-#ifndef GL_EXT_fog_coord
-#define GL_EXT_fog_coord 1
-
-#define GL_FOG_COORDINATE_SOURCE_EXT 0x8450
-#define GL_FOG_COORDINATE_EXT 0x8451
-#define GL_FRAGMENT_DEPTH_EXT 0x8452
-#define GL_CURRENT_FOG_COORDINATE_EXT 0x8453
-#define GL_FOG_COORDINATE_ARRAY_TYPE_EXT 0x8454
-#define GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455
-#define GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456
-#define GL_FOG_COORDINATE_ARRAY_EXT 0x8457
-
-typedef void (GLAPIENTRY * PFNGLFOGCOORDPOINTEREXTPROC) (GLenum type, GLsizei stride, const GLvoid *pointer);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDDEXTPROC) (GLdouble coord);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDDVEXTPROC) (const GLdouble *coord);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDFEXTPROC) (GLfloat coord);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDFVEXTPROC) (const GLfloat *coord);
-
-#define glFogCoordPointerEXT GLEW_GET_FUN(__glewFogCoordPointerEXT)
-#define glFogCoorddEXT GLEW_GET_FUN(__glewFogCoorddEXT)
-#define glFogCoorddvEXT GLEW_GET_FUN(__glewFogCoorddvEXT)
-#define glFogCoordfEXT GLEW_GET_FUN(__glewFogCoordfEXT)
-#define glFogCoordfvEXT GLEW_GET_FUN(__glewFogCoordfvEXT)
-
-#define GLEW_EXT_fog_coord GLEW_GET_VAR(__GLEW_EXT_fog_coord)
-
-#endif /* GL_EXT_fog_coord */
-
-/* ------------------------ GL_EXT_fragment_lighting ----------------------- */
-
-#ifndef GL_EXT_fragment_lighting
-#define GL_EXT_fragment_lighting 1
-
-#define GL_FRAGMENT_LIGHTING_EXT 0x8400
-#define GL_FRAGMENT_COLOR_MATERIAL_EXT 0x8401
-#define GL_FRAGMENT_COLOR_MATERIAL_FACE_EXT 0x8402
-#define GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_EXT 0x8403
-#define GL_MAX_FRAGMENT_LIGHTS_EXT 0x8404
-#define GL_MAX_ACTIVE_LIGHTS_EXT 0x8405
-#define GL_CURRENT_RASTER_NORMAL_EXT 0x8406
-#define GL_LIGHT_ENV_MODE_EXT 0x8407
-#define GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_EXT 0x8408
-#define GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_EXT 0x8409
-#define GL_FRAGMENT_LIGHT_MODEL_AMBIENT_EXT 0x840A
-#define GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_EXT 0x840B
-#define GL_FRAGMENT_LIGHT0_EXT 0x840C
-#define GL_FRAGMENT_LIGHT7_EXT 0x8413
-
-typedef void (GLAPIENTRY * PFNGLFRAGMENTCOLORMATERIALEXTPROC) (GLenum face, GLenum mode);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFEXTPROC) (GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFVEXTPROC) (GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELIEXTPROC) (GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELIVEXTPROC) (GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFEXTPROC) (GLenum light, GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFVEXTPROC) (GLenum light, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTIEXTPROC) (GLenum light, GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTIVEXTPROC) (GLenum light, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFEXTPROC) (GLenum face, GLenum pname, const GLfloat param);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFVEXTPROC) (GLenum face, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALIEXTPROC) (GLenum face, GLenum pname, const GLint param);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALIVEXTPROC) (GLenum face, GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTFVEXTPROC) (GLenum light, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTIVEXTPROC) (GLenum light, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALFVEXTPROC) (GLenum face, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALIVEXTPROC) (GLenum face, GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLLIGHTENVIEXTPROC) (GLenum pname, GLint param);
-
-#define glFragmentColorMaterialEXT GLEW_GET_FUN(__glewFragmentColorMaterialEXT)
-#define glFragmentLightModelfEXT GLEW_GET_FUN(__glewFragmentLightModelfEXT)
-#define glFragmentLightModelfvEXT GLEW_GET_FUN(__glewFragmentLightModelfvEXT)
-#define glFragmentLightModeliEXT GLEW_GET_FUN(__glewFragmentLightModeliEXT)
-#define glFragmentLightModelivEXT GLEW_GET_FUN(__glewFragmentLightModelivEXT)
-#define glFragmentLightfEXT GLEW_GET_FUN(__glewFragmentLightfEXT)
-#define glFragmentLightfvEXT GLEW_GET_FUN(__glewFragmentLightfvEXT)
-#define glFragmentLightiEXT GLEW_GET_FUN(__glewFragmentLightiEXT)
-#define glFragmentLightivEXT GLEW_GET_FUN(__glewFragmentLightivEXT)
-#define glFragmentMaterialfEXT GLEW_GET_FUN(__glewFragmentMaterialfEXT)
-#define glFragmentMaterialfvEXT GLEW_GET_FUN(__glewFragmentMaterialfvEXT)
-#define glFragmentMaterialiEXT GLEW_GET_FUN(__glewFragmentMaterialiEXT)
-#define glFragmentMaterialivEXT GLEW_GET_FUN(__glewFragmentMaterialivEXT)
-#define glGetFragmentLightfvEXT GLEW_GET_FUN(__glewGetFragmentLightfvEXT)
-#define glGetFragmentLightivEXT GLEW_GET_FUN(__glewGetFragmentLightivEXT)
-#define glGetFragmentMaterialfvEXT GLEW_GET_FUN(__glewGetFragmentMaterialfvEXT)
-#define glGetFragmentMaterialivEXT GLEW_GET_FUN(__glewGetFragmentMaterialivEXT)
-#define glLightEnviEXT GLEW_GET_FUN(__glewLightEnviEXT)
-
-#define GLEW_EXT_fragment_lighting GLEW_GET_VAR(__GLEW_EXT_fragment_lighting)
-
-#endif /* GL_EXT_fragment_lighting */
-
-/* ------------------------ GL_EXT_framebuffer_blit ------------------------ */
-
-#ifndef GL_EXT_framebuffer_blit
-#define GL_EXT_framebuffer_blit 1
-
-#define GL_DRAW_FRAMEBUFFER_BINDING_EXT 0x8CA6
-#define GL_READ_FRAMEBUFFER_EXT 0x8CA8
-#define GL_DRAW_FRAMEBUFFER_EXT 0x8CA9
-#define GL_READ_FRAMEBUFFER_BINDING_EXT 0x8CAA
-
-typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFEREXTPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
-
-#define glBlitFramebufferEXT GLEW_GET_FUN(__glewBlitFramebufferEXT)
-
-#define GLEW_EXT_framebuffer_blit GLEW_GET_VAR(__GLEW_EXT_framebuffer_blit)
-
-#endif /* GL_EXT_framebuffer_blit */
-
-/* --------------------- GL_EXT_framebuffer_multisample -------------------- */
-
-#ifndef GL_EXT_framebuffer_multisample
-#define GL_EXT_framebuffer_multisample 1
-
-#define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB
-#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
-#define GL_MAX_SAMPLES_EXT 0x8D57
-
-typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
-
-#define glRenderbufferStorageMultisampleEXT GLEW_GET_FUN(__glewRenderbufferStorageMultisampleEXT)
-
-#define GLEW_EXT_framebuffer_multisample GLEW_GET_VAR(__GLEW_EXT_framebuffer_multisample)
-
-#endif /* GL_EXT_framebuffer_multisample */
-
-/* ----------------------- GL_EXT_framebuffer_object ----------------------- */
-
-#ifndef GL_EXT_framebuffer_object
-#define GL_EXT_framebuffer_object 1
-
-#define GL_INVALID_FRAMEBUFFER_OPERATION_EXT 0x0506
-#define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8
-#define GL_FRAMEBUFFER_BINDING_EXT 0x8CA6
-#define GL_RENDERBUFFER_BINDING_EXT 0x8CA7
-#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT 0x8CD0
-#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT 0x8CD1
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT 0x8CD2
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT 0x8CD3
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT 0x8CD4
-#define GL_FRAMEBUFFER_COMPLETE_EXT 0x8CD5
-#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT 0x8CD6
-#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7
-#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT 0x8CD9
-#define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT 0x8CDA
-#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT 0x8CDB
-#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC
-#define GL_FRAMEBUFFER_UNSUPPORTED_EXT 0x8CDD
-#define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF
-#define GL_COLOR_ATTACHMENT0_EXT 0x8CE0
-#define GL_COLOR_ATTACHMENT1_EXT 0x8CE1
-#define GL_COLOR_ATTACHMENT2_EXT 0x8CE2
-#define GL_COLOR_ATTACHMENT3_EXT 0x8CE3
-#define GL_COLOR_ATTACHMENT4_EXT 0x8CE4
-#define GL_COLOR_ATTACHMENT5_EXT 0x8CE5
-#define GL_COLOR_ATTACHMENT6_EXT 0x8CE6
-#define GL_COLOR_ATTACHMENT7_EXT 0x8CE7
-#define GL_COLOR_ATTACHMENT8_EXT 0x8CE8
-#define GL_COLOR_ATTACHMENT9_EXT 0x8CE9
-#define GL_COLOR_ATTACHMENT10_EXT 0x8CEA
-#define GL_COLOR_ATTACHMENT11_EXT 0x8CEB
-#define GL_COLOR_ATTACHMENT12_EXT 0x8CEC
-#define GL_COLOR_ATTACHMENT13_EXT 0x8CED
-#define GL_COLOR_ATTACHMENT14_EXT 0x8CEE
-#define GL_COLOR_ATTACHMENT15_EXT 0x8CEF
-#define GL_DEPTH_ATTACHMENT_EXT 0x8D00
-#define GL_STENCIL_ATTACHMENT_EXT 0x8D20
-#define GL_FRAMEBUFFER_EXT 0x8D40
-#define GL_RENDERBUFFER_EXT 0x8D41
-#define GL_RENDERBUFFER_WIDTH_EXT 0x8D42
-#define GL_RENDERBUFFER_HEIGHT_EXT 0x8D43
-#define GL_RENDERBUFFER_INTERNAL_FORMAT_EXT 0x8D44
-#define GL_STENCIL_INDEX1_EXT 0x8D46
-#define GL_STENCIL_INDEX4_EXT 0x8D47
-#define GL_STENCIL_INDEX8_EXT 0x8D48
-#define GL_STENCIL_INDEX16_EXT 0x8D49
-#define GL_RENDERBUFFER_RED_SIZE_EXT 0x8D50
-#define GL_RENDERBUFFER_GREEN_SIZE_EXT 0x8D51
-#define GL_RENDERBUFFER_BLUE_SIZE_EXT 0x8D52
-#define GL_RENDERBUFFER_ALPHA_SIZE_EXT 0x8D53
-#define GL_RENDERBUFFER_DEPTH_SIZE_EXT 0x8D54
-#define GL_RENDERBUFFER_STENCIL_SIZE_EXT 0x8D55
-
-typedef void (GLAPIENTRY * PFNGLBINDFRAMEBUFFEREXTPROC) (GLenum target, GLuint framebuffer);
-typedef void (GLAPIENTRY * PFNGLBINDRENDERBUFFEREXTPROC) (GLenum target, GLuint renderbuffer);
-typedef GLenum (GLAPIENTRY * PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC) (GLenum target);
-typedef void (GLAPIENTRY * PFNGLDELETEFRAMEBUFFERSEXTPROC) (GLsizei n, const GLuint* framebuffers);
-typedef void (GLAPIENTRY * PFNGLDELETERENDERBUFFERSEXTPROC) (GLsizei n, const GLuint* renderbuffers);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE1DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE3DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
-typedef void (GLAPIENTRY * PFNGLGENFRAMEBUFFERSEXTPROC) (GLsizei n, GLuint* framebuffers);
-typedef void (GLAPIENTRY * PFNGLGENRENDERBUFFERSEXTPROC) (GLsizei n, GLuint* renderbuffers);
-typedef void (GLAPIENTRY * PFNGLGENERATEMIPMAPEXTPROC) (GLenum target);
-typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params);
-typedef GLboolean (GLAPIENTRY * PFNGLISFRAMEBUFFEREXTPROC) (GLuint framebuffer);
-typedef GLboolean (GLAPIENTRY * PFNGLISRENDERBUFFEREXTPROC) (GLuint renderbuffer);
-typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
-
-#define glBindFramebufferEXT GLEW_GET_FUN(__glewBindFramebufferEXT)
-#define glBindRenderbufferEXT GLEW_GET_FUN(__glewBindRenderbufferEXT)
-#define glCheckFramebufferStatusEXT GLEW_GET_FUN(__glewCheckFramebufferStatusEXT)
-#define glDeleteFramebuffersEXT GLEW_GET_FUN(__glewDeleteFramebuffersEXT)
-#define glDeleteRenderbuffersEXT GLEW_GET_FUN(__glewDeleteRenderbuffersEXT)
-#define glFramebufferRenderbufferEXT GLEW_GET_FUN(__glewFramebufferRenderbufferEXT)
-#define glFramebufferTexture1DEXT GLEW_GET_FUN(__glewFramebufferTexture1DEXT)
-#define glFramebufferTexture2DEXT GLEW_GET_FUN(__glewFramebufferTexture2DEXT)
-#define glFramebufferTexture3DEXT GLEW_GET_FUN(__glewFramebufferTexture3DEXT)
-#define glGenFramebuffersEXT GLEW_GET_FUN(__glewGenFramebuffersEXT)
-#define glGenRenderbuffersEXT GLEW_GET_FUN(__glewGenRenderbuffersEXT)
-#define glGenerateMipmapEXT GLEW_GET_FUN(__glewGenerateMipmapEXT)
-#define glGetFramebufferAttachmentParameterivEXT GLEW_GET_FUN(__glewGetFramebufferAttachmentParameterivEXT)
-#define glGetRenderbufferParameterivEXT GLEW_GET_FUN(__glewGetRenderbufferParameterivEXT)
-#define glIsFramebufferEXT GLEW_GET_FUN(__glewIsFramebufferEXT)
-#define glIsRenderbufferEXT GLEW_GET_FUN(__glewIsRenderbufferEXT)
-#define glRenderbufferStorageEXT GLEW_GET_FUN(__glewRenderbufferStorageEXT)
-
-#define GLEW_EXT_framebuffer_object GLEW_GET_VAR(__GLEW_EXT_framebuffer_object)
-
-#endif /* GL_EXT_framebuffer_object */
-
-/* ------------------------ GL_EXT_framebuffer_sRGB ------------------------ */
-
-#ifndef GL_EXT_framebuffer_sRGB
-#define GL_EXT_framebuffer_sRGB 1
-
-#define GL_FRAMEBUFFER_SRGB_EXT 0x8DB9
-#define GL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x8DBA
-
-#define GLEW_EXT_framebuffer_sRGB GLEW_GET_VAR(__GLEW_EXT_framebuffer_sRGB)
-
-#endif /* GL_EXT_framebuffer_sRGB */
-
-/* ------------------------ GL_EXT_geometry_shader4 ------------------------ */
-
-#ifndef GL_EXT_geometry_shader4
-#define GL_EXT_geometry_shader4 1
-
-#define GL_LINES_ADJACENCY_EXT 0xA
-#define GL_LINE_STRIP_ADJACENCY_EXT 0xB
-#define GL_TRIANGLES_ADJACENCY_EXT 0xC
-#define GL_TRIANGLE_STRIP_ADJACENCY_EXT 0xD
-#define GL_PROGRAM_POINT_SIZE_EXT 0x8642
-#define GL_MAX_VARYING_COMPONENTS_EXT 0x8B4B
-#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT 0x8C29
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT 0x8CD4
-#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT 0x8DA7
-#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT 0x8DA8
-#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT 0x8DA9
-#define GL_GEOMETRY_SHADER_EXT 0x8DD9
-#define GL_GEOMETRY_VERTICES_OUT_EXT 0x8DDA
-#define GL_GEOMETRY_INPUT_TYPE_EXT 0x8DDB
-#define GL_GEOMETRY_OUTPUT_TYPE_EXT 0x8DDC
-#define GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT 0x8DDD
-#define GL_MAX_VERTEX_VARYING_COMPONENTS_EXT 0x8DDE
-#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8DDF
-#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT 0x8DE0
-#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT 0x8DE1
-
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREEXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value);
-
-#define glFramebufferTextureEXT GLEW_GET_FUN(__glewFramebufferTextureEXT)
-#define glFramebufferTextureFaceEXT GLEW_GET_FUN(__glewFramebufferTextureFaceEXT)
-#define glFramebufferTextureLayerEXT GLEW_GET_FUN(__glewFramebufferTextureLayerEXT)
-#define glProgramParameteriEXT GLEW_GET_FUN(__glewProgramParameteriEXT)
-
-#define GLEW_EXT_geometry_shader4 GLEW_GET_VAR(__GLEW_EXT_geometry_shader4)
-
-#endif /* GL_EXT_geometry_shader4 */
-
-/* --------------------- GL_EXT_gpu_program_parameters --------------------- */
-
-#ifndef GL_EXT_gpu_program_parameters
-#define GL_EXT_gpu_program_parameters 1
-
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERS4FVEXTPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat* params);
-
-#define glProgramEnvParameters4fvEXT GLEW_GET_FUN(__glewProgramEnvParameters4fvEXT)
-#define glProgramLocalParameters4fvEXT GLEW_GET_FUN(__glewProgramLocalParameters4fvEXT)
-
-#define GLEW_EXT_gpu_program_parameters GLEW_GET_VAR(__GLEW_EXT_gpu_program_parameters)
-
-#endif /* GL_EXT_gpu_program_parameters */
-
-/* --------------------------- GL_EXT_gpu_shader4 -------------------------- */
-
-#ifndef GL_EXT_gpu_shader4
-#define GL_EXT_gpu_shader4 1
-
-#define GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT 0x88FD
-#define GL_SAMPLER_1D_ARRAY_EXT 0x8DC0
-#define GL_SAMPLER_2D_ARRAY_EXT 0x8DC1
-#define GL_SAMPLER_BUFFER_EXT 0x8DC2
-#define GL_SAMPLER_1D_ARRAY_SHADOW_EXT 0x8DC3
-#define GL_SAMPLER_2D_ARRAY_SHADOW_EXT 0x8DC4
-#define GL_SAMPLER_CUBE_SHADOW_EXT 0x8DC5
-#define GL_UNSIGNED_INT_VEC2_EXT 0x8DC6
-#define GL_UNSIGNED_INT_VEC3_EXT 0x8DC7
-#define GL_UNSIGNED_INT_VEC4_EXT 0x8DC8
-#define GL_INT_SAMPLER_1D_EXT 0x8DC9
-#define GL_INT_SAMPLER_2D_EXT 0x8DCA
-#define GL_INT_SAMPLER_3D_EXT 0x8DCB
-#define GL_INT_SAMPLER_CUBE_EXT 0x8DCC
-#define GL_INT_SAMPLER_2D_RECT_EXT 0x8DCD
-#define GL_INT_SAMPLER_1D_ARRAY_EXT 0x8DCE
-#define GL_INT_SAMPLER_2D_ARRAY_EXT 0x8DCF
-#define GL_INT_SAMPLER_BUFFER_EXT 0x8DD0
-#define GL_UNSIGNED_INT_SAMPLER_1D_EXT 0x8DD1
-#define GL_UNSIGNED_INT_SAMPLER_2D_EXT 0x8DD2
-#define GL_UNSIGNED_INT_SAMPLER_3D_EXT 0x8DD3
-#define GL_UNSIGNED_INT_SAMPLER_CUBE_EXT 0x8DD4
-#define GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT 0x8DD5
-#define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT 0x8DD6
-#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT 0x8DD7
-#define GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT 0x8DD8
-
-typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONEXTPROC) (GLuint program, GLuint color, const GLchar *name);
-typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATALOCATIONEXTPROC) (GLuint program, const GLchar *name);
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMUIVEXTPROC) (GLuint program, GLint location, GLuint *params);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIIVEXTPROC) (GLuint index, GLenum pname, GLint *params);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIUIVEXTPROC) (GLuint index, GLenum pname, GLuint *params);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1UIEXTPROC) (GLint location, GLuint v0);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2UIEXTPROC) (GLint location, GLuint v0, GLuint v1);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3UIEXTPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4UIEXTPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IEXTPROC) (GLuint index, GLint x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IVEXTPROC) (GLuint index, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIEXTPROC) (GLuint index, GLuint x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIVEXTPROC) (GLuint index, const GLuint *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IEXTPROC) (GLuint index, GLint x, GLint y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IVEXTPROC) (GLuint index, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIEXTPROC) (GLuint index, GLuint x, GLuint y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIVEXTPROC) (GLuint index, const GLuint *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IEXTPROC) (GLuint index, GLint x, GLint y, GLint z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IVEXTPROC) (GLuint index, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIEXTPROC) (GLuint index, GLuint x, GLuint y, GLuint z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIVEXTPROC) (GLuint index, const GLuint *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4BVEXTPROC) (GLuint index, const GLbyte *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IEXTPROC) (GLuint index, GLint x, GLint y, GLint z, GLint w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IVEXTPROC) (GLuint index, const GLint *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4SVEXTPROC) (GLuint index, const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UBVEXTPROC) (GLuint index, const GLubyte *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIEXTPROC) (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIVEXTPROC) (GLuint index, const GLuint *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4USVEXTPROC) (GLuint index, const GLushort *v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIPOINTEREXTPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
-
-#define glBindFragDataLocationEXT GLEW_GET_FUN(__glewBindFragDataLocationEXT)
-#define glGetFragDataLocationEXT GLEW_GET_FUN(__glewGetFragDataLocationEXT)
-#define glGetUniformuivEXT GLEW_GET_FUN(__glewGetUniformuivEXT)
-#define glGetVertexAttribIivEXT GLEW_GET_FUN(__glewGetVertexAttribIivEXT)
-#define glGetVertexAttribIuivEXT GLEW_GET_FUN(__glewGetVertexAttribIuivEXT)
-#define glUniform1uiEXT GLEW_GET_FUN(__glewUniform1uiEXT)
-#define glUniform1uivEXT GLEW_GET_FUN(__glewUniform1uivEXT)
-#define glUniform2uiEXT GLEW_GET_FUN(__glewUniform2uiEXT)
-#define glUniform2uivEXT GLEW_GET_FUN(__glewUniform2uivEXT)
-#define glUniform3uiEXT GLEW_GET_FUN(__glewUniform3uiEXT)
-#define glUniform3uivEXT GLEW_GET_FUN(__glewUniform3uivEXT)
-#define glUniform4uiEXT GLEW_GET_FUN(__glewUniform4uiEXT)
-#define glUniform4uivEXT GLEW_GET_FUN(__glewUniform4uivEXT)
-#define glVertexAttribI1iEXT GLEW_GET_FUN(__glewVertexAttribI1iEXT)
-#define glVertexAttribI1ivEXT GLEW_GET_FUN(__glewVertexAttribI1ivEXT)
-#define glVertexAttribI1uiEXT GLEW_GET_FUN(__glewVertexAttribI1uiEXT)
-#define glVertexAttribI1uivEXT GLEW_GET_FUN(__glewVertexAttribI1uivEXT)
-#define glVertexAttribI2iEXT GLEW_GET_FUN(__glewVertexAttribI2iEXT)
-#define glVertexAttribI2ivEXT GLEW_GET_FUN(__glewVertexAttribI2ivEXT)
-#define glVertexAttribI2uiEXT GLEW_GET_FUN(__glewVertexAttribI2uiEXT)
-#define glVertexAttribI2uivEXT GLEW_GET_FUN(__glewVertexAttribI2uivEXT)
-#define glVertexAttribI3iEXT GLEW_GET_FUN(__glewVertexAttribI3iEXT)
-#define glVertexAttribI3ivEXT GLEW_GET_FUN(__glewVertexAttribI3ivEXT)
-#define glVertexAttribI3uiEXT GLEW_GET_FUN(__glewVertexAttribI3uiEXT)
-#define glVertexAttribI3uivEXT GLEW_GET_FUN(__glewVertexAttribI3uivEXT)
-#define glVertexAttribI4bvEXT GLEW_GET_FUN(__glewVertexAttribI4bvEXT)
-#define glVertexAttribI4iEXT GLEW_GET_FUN(__glewVertexAttribI4iEXT)
-#define glVertexAttribI4ivEXT GLEW_GET_FUN(__glewVertexAttribI4ivEXT)
-#define glVertexAttribI4svEXT GLEW_GET_FUN(__glewVertexAttribI4svEXT)
-#define glVertexAttribI4ubvEXT GLEW_GET_FUN(__glewVertexAttribI4ubvEXT)
-#define glVertexAttribI4uiEXT GLEW_GET_FUN(__glewVertexAttribI4uiEXT)
-#define glVertexAttribI4uivEXT GLEW_GET_FUN(__glewVertexAttribI4uivEXT)
-#define glVertexAttribI4usvEXT GLEW_GET_FUN(__glewVertexAttribI4usvEXT)
-#define glVertexAttribIPointerEXT GLEW_GET_FUN(__glewVertexAttribIPointerEXT)
-
-#define GLEW_EXT_gpu_shader4 GLEW_GET_VAR(__GLEW_EXT_gpu_shader4)
-
-#endif /* GL_EXT_gpu_shader4 */
-
-/* ---------------------------- GL_EXT_histogram --------------------------- */
-
-#ifndef GL_EXT_histogram
-#define GL_EXT_histogram 1
-
-#define GL_HISTOGRAM_EXT 0x8024
-#define GL_PROXY_HISTOGRAM_EXT 0x8025
-#define GL_HISTOGRAM_WIDTH_EXT 0x8026
-#define GL_HISTOGRAM_FORMAT_EXT 0x8027
-#define GL_HISTOGRAM_RED_SIZE_EXT 0x8028
-#define GL_HISTOGRAM_GREEN_SIZE_EXT 0x8029
-#define GL_HISTOGRAM_BLUE_SIZE_EXT 0x802A
-#define GL_HISTOGRAM_ALPHA_SIZE_EXT 0x802B
-#define GL_HISTOGRAM_LUMINANCE_SIZE_EXT 0x802C
-#define GL_HISTOGRAM_SINK_EXT 0x802D
-#define GL_MINMAX_EXT 0x802E
-#define GL_MINMAX_FORMAT_EXT 0x802F
-#define GL_MINMAX_SINK_EXT 0x8030
-
-typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMEXTPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void* values);
-typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETMINMAXEXTPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void* values);
-typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLHISTOGRAMEXTPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
-typedef void (GLAPIENTRY * PFNGLMINMAXEXTPROC) (GLenum target, GLenum internalformat, GLboolean sink);
-typedef void (GLAPIENTRY * PFNGLRESETHISTOGRAMEXTPROC) (GLenum target);
-typedef void (GLAPIENTRY * PFNGLRESETMINMAXEXTPROC) (GLenum target);
-
-#define glGetHistogramEXT GLEW_GET_FUN(__glewGetHistogramEXT)
-#define glGetHistogramParameterfvEXT GLEW_GET_FUN(__glewGetHistogramParameterfvEXT)
-#define glGetHistogramParameterivEXT GLEW_GET_FUN(__glewGetHistogramParameterivEXT)
-#define glGetMinmaxEXT GLEW_GET_FUN(__glewGetMinmaxEXT)
-#define glGetMinmaxParameterfvEXT GLEW_GET_FUN(__glewGetMinmaxParameterfvEXT)
-#define glGetMinmaxParameterivEXT GLEW_GET_FUN(__glewGetMinmaxParameterivEXT)
-#define glHistogramEXT GLEW_GET_FUN(__glewHistogramEXT)
-#define glMinmaxEXT GLEW_GET_FUN(__glewMinmaxEXT)
-#define glResetHistogramEXT GLEW_GET_FUN(__glewResetHistogramEXT)
-#define glResetMinmaxEXT GLEW_GET_FUN(__glewResetMinmaxEXT)
-
-#define GLEW_EXT_histogram GLEW_GET_VAR(__GLEW_EXT_histogram)
-
-#endif /* GL_EXT_histogram */
-
-/* ----------------------- GL_EXT_index_array_formats ---------------------- */
-
-#ifndef GL_EXT_index_array_formats
-#define GL_EXT_index_array_formats 1
-
-#define GLEW_EXT_index_array_formats GLEW_GET_VAR(__GLEW_EXT_index_array_formats)
-
-#endif /* GL_EXT_index_array_formats */
-
-/* --------------------------- GL_EXT_index_func --------------------------- */
-
-#ifndef GL_EXT_index_func
-#define GL_EXT_index_func 1
-
-typedef void (GLAPIENTRY * PFNGLINDEXFUNCEXTPROC) (GLenum func, GLfloat ref);
-
-#define glIndexFuncEXT GLEW_GET_FUN(__glewIndexFuncEXT)
-
-#define GLEW_EXT_index_func GLEW_GET_VAR(__GLEW_EXT_index_func)
-
-#endif /* GL_EXT_index_func */
-
-/* ------------------------- GL_EXT_index_material ------------------------- */
-
-#ifndef GL_EXT_index_material
-#define GL_EXT_index_material 1
-
-typedef void (GLAPIENTRY * PFNGLINDEXMATERIALEXTPROC) (GLenum face, GLenum mode);
-
-#define glIndexMaterialEXT GLEW_GET_FUN(__glewIndexMaterialEXT)
-
-#define GLEW_EXT_index_material GLEW_GET_VAR(__GLEW_EXT_index_material)
-
-#endif /* GL_EXT_index_material */
-
-/* -------------------------- GL_EXT_index_texture ------------------------- */
-
-#ifndef GL_EXT_index_texture
-#define GL_EXT_index_texture 1
-
-#define GLEW_EXT_index_texture GLEW_GET_VAR(__GLEW_EXT_index_texture)
-
-#endif /* GL_EXT_index_texture */
-
-/* -------------------------- GL_EXT_light_texture ------------------------- */
-
-#ifndef GL_EXT_light_texture
-#define GL_EXT_light_texture 1
-
-#define GL_FRAGMENT_MATERIAL_EXT 0x8349
-#define GL_FRAGMENT_NORMAL_EXT 0x834A
-#define GL_FRAGMENT_COLOR_EXT 0x834C
-#define GL_ATTENUATION_EXT 0x834D
-#define GL_SHADOW_ATTENUATION_EXT 0x834E
-#define GL_TEXTURE_APPLICATION_MODE_EXT 0x834F
-#define GL_TEXTURE_LIGHT_EXT 0x8350
-#define GL_TEXTURE_MATERIAL_FACE_EXT 0x8351
-#define GL_TEXTURE_MATERIAL_PARAMETER_EXT 0x8352
-#define GL_FRAGMENT_DEPTH_EXT 0x8452
-
-typedef void (GLAPIENTRY * PFNGLAPPLYTEXTUREEXTPROC) (GLenum mode);
-typedef void (GLAPIENTRY * PFNGLTEXTURELIGHTEXTPROC) (GLenum pname);
-typedef void (GLAPIENTRY * PFNGLTEXTUREMATERIALEXTPROC) (GLenum face, GLenum mode);
-
-#define glApplyTextureEXT GLEW_GET_FUN(__glewApplyTextureEXT)
-#define glTextureLightEXT GLEW_GET_FUN(__glewTextureLightEXT)
-#define glTextureMaterialEXT GLEW_GET_FUN(__glewTextureMaterialEXT)
-
-#define GLEW_EXT_light_texture GLEW_GET_VAR(__GLEW_EXT_light_texture)
-
-#endif /* GL_EXT_light_texture */
-
-/* ------------------------- GL_EXT_misc_attribute ------------------------- */
-
-#ifndef GL_EXT_misc_attribute
-#define GL_EXT_misc_attribute 1
-
-#define GLEW_EXT_misc_attribute GLEW_GET_VAR(__GLEW_EXT_misc_attribute)
-
-#endif /* GL_EXT_misc_attribute */
-
-/* ------------------------ GL_EXT_multi_draw_arrays ----------------------- */
-
-#ifndef GL_EXT_multi_draw_arrays
-#define GL_EXT_multi_draw_arrays 1
-
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint* first, GLsizei *count, GLsizei primcount);
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, GLsizei* count, GLenum type, const GLvoid **indices, GLsizei primcount);
-
-#define glMultiDrawArraysEXT GLEW_GET_FUN(__glewMultiDrawArraysEXT)
-#define glMultiDrawElementsEXT GLEW_GET_FUN(__glewMultiDrawElementsEXT)
-
-#define GLEW_EXT_multi_draw_arrays GLEW_GET_VAR(__GLEW_EXT_multi_draw_arrays)
-
-#endif /* GL_EXT_multi_draw_arrays */
-
-/* --------------------------- GL_EXT_multisample -------------------------- */
-
-#ifndef GL_EXT_multisample
-#define GL_EXT_multisample 1
-
-#define GL_MULTISAMPLE_EXT 0x809D
-#define GL_SAMPLE_ALPHA_TO_MASK_EXT 0x809E
-#define GL_SAMPLE_ALPHA_TO_ONE_EXT 0x809F
-#define GL_SAMPLE_MASK_EXT 0x80A0
-#define GL_1PASS_EXT 0x80A1
-#define GL_2PASS_0_EXT 0x80A2
-#define GL_2PASS_1_EXT 0x80A3
-#define GL_4PASS_0_EXT 0x80A4
-#define GL_4PASS_1_EXT 0x80A5
-#define GL_4PASS_2_EXT 0x80A6
-#define GL_4PASS_3_EXT 0x80A7
-#define GL_SAMPLE_BUFFERS_EXT 0x80A8
-#define GL_SAMPLES_EXT 0x80A9
-#define GL_SAMPLE_MASK_VALUE_EXT 0x80AA
-#define GL_SAMPLE_MASK_INVERT_EXT 0x80AB
-#define GL_SAMPLE_PATTERN_EXT 0x80AC
-#define GL_MULTISAMPLE_BIT_EXT 0x20000000
-
-typedef void (GLAPIENTRY * PFNGLSAMPLEMASKEXTPROC) (GLclampf value, GLboolean invert);
-typedef void (GLAPIENTRY * PFNGLSAMPLEPATTERNEXTPROC) (GLenum pattern);
-
-#define glSampleMaskEXT GLEW_GET_FUN(__glewSampleMaskEXT)
-#define glSamplePatternEXT GLEW_GET_FUN(__glewSamplePatternEXT)
-
-#define GLEW_EXT_multisample GLEW_GET_VAR(__GLEW_EXT_multisample)
-
-#endif /* GL_EXT_multisample */
-
-/* ---------------------- GL_EXT_packed_depth_stencil ---------------------- */
-
-#ifndef GL_EXT_packed_depth_stencil
-#define GL_EXT_packed_depth_stencil 1
-
-#define GL_DEPTH_STENCIL_EXT 0x84F9
-#define GL_UNSIGNED_INT_24_8_EXT 0x84FA
-#define GL_DEPTH24_STENCIL8_EXT 0x88F0
-#define GL_TEXTURE_STENCIL_SIZE_EXT 0x88F1
-
-#define GLEW_EXT_packed_depth_stencil GLEW_GET_VAR(__GLEW_EXT_packed_depth_stencil)
-
-#endif /* GL_EXT_packed_depth_stencil */
-
-/* -------------------------- GL_EXT_packed_float -------------------------- */
-
-#ifndef GL_EXT_packed_float
-#define GL_EXT_packed_float 1
-
-#define GL_R11F_G11F_B10F_EXT 0x8C3A
-#define GL_UNSIGNED_INT_10F_11F_11F_REV_EXT 0x8C3B
-#define GL_RGBA_SIGNED_COMPONENTS_EXT 0x8C3C
-
-#define GLEW_EXT_packed_float GLEW_GET_VAR(__GLEW_EXT_packed_float)
-
-#endif /* GL_EXT_packed_float */
-
-/* -------------------------- GL_EXT_packed_pixels ------------------------- */
-
-#ifndef GL_EXT_packed_pixels
-#define GL_EXT_packed_pixels 1
-
-#define GL_UNSIGNED_BYTE_3_3_2_EXT 0x8032
-#define GL_UNSIGNED_SHORT_4_4_4_4_EXT 0x8033
-#define GL_UNSIGNED_SHORT_5_5_5_1_EXT 0x8034
-#define GL_UNSIGNED_INT_8_8_8_8_EXT 0x8035
-#define GL_UNSIGNED_INT_10_10_10_2_EXT 0x8036
-
-#define GLEW_EXT_packed_pixels GLEW_GET_VAR(__GLEW_EXT_packed_pixels)
-
-#endif /* GL_EXT_packed_pixels */
-
-/* ------------------------ GL_EXT_paletted_texture ------------------------ */
-
-#ifndef GL_EXT_paletted_texture
-#define GL_EXT_paletted_texture 1
-
-#define GL_TEXTURE_1D 0x0DE0
-#define GL_TEXTURE_2D 0x0DE1
-#define GL_PROXY_TEXTURE_1D 0x8063
-#define GL_PROXY_TEXTURE_2D 0x8064
-#define GL_TEXTURE_3D_EXT 0x806F
-#define GL_PROXY_TEXTURE_3D_EXT 0x8070
-#define GL_COLOR_TABLE_FORMAT_EXT 0x80D8
-#define GL_COLOR_TABLE_WIDTH_EXT 0x80D9
-#define GL_COLOR_TABLE_RED_SIZE_EXT 0x80DA
-#define GL_COLOR_TABLE_GREEN_SIZE_EXT 0x80DB
-#define GL_COLOR_TABLE_BLUE_SIZE_EXT 0x80DC
-#define GL_COLOR_TABLE_ALPHA_SIZE_EXT 0x80DD
-#define GL_COLOR_TABLE_LUMINANCE_SIZE_EXT 0x80DE
-#define GL_COLOR_TABLE_INTENSITY_SIZE_EXT 0x80DF
-#define GL_COLOR_INDEX1_EXT 0x80E2
-#define GL_COLOR_INDEX2_EXT 0x80E3
-#define GL_COLOR_INDEX4_EXT 0x80E4
-#define GL_COLOR_INDEX8_EXT 0x80E5
-#define GL_COLOR_INDEX12_EXT 0x80E6
-#define GL_COLOR_INDEX16_EXT 0x80E7
-#define GL_TEXTURE_INDEX_SIZE_EXT 0x80ED
-#define GL_TEXTURE_CUBE_MAP_ARB 0x8513
-#define GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B
-
-typedef void (GLAPIENTRY * PFNGLCOLORTABLEEXTPROC) (GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const void* data);
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEEXTPROC) (GLenum target, GLenum format, GLenum type, void* data);
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params);
-
-#define glColorTableEXT GLEW_GET_FUN(__glewColorTableEXT)
-#define glGetColorTableEXT GLEW_GET_FUN(__glewGetColorTableEXT)
-#define glGetColorTableParameterfvEXT GLEW_GET_FUN(__glewGetColorTableParameterfvEXT)
-#define glGetColorTableParameterivEXT GLEW_GET_FUN(__glewGetColorTableParameterivEXT)
-
-#define GLEW_EXT_paletted_texture GLEW_GET_VAR(__GLEW_EXT_paletted_texture)
-
-#endif /* GL_EXT_paletted_texture */
-
-/* ----------------------- GL_EXT_pixel_buffer_object ---------------------- */
-
-#ifndef GL_EXT_pixel_buffer_object
-#define GL_EXT_pixel_buffer_object 1
-
-#define GL_PIXEL_PACK_BUFFER_EXT 0x88EB
-#define GL_PIXEL_UNPACK_BUFFER_EXT 0x88EC
-#define GL_PIXEL_PACK_BUFFER_BINDING_EXT 0x88ED
-#define GL_PIXEL_UNPACK_BUFFER_BINDING_EXT 0x88EF
-
-#define GLEW_EXT_pixel_buffer_object GLEW_GET_VAR(__GLEW_EXT_pixel_buffer_object)
-
-#endif /* GL_EXT_pixel_buffer_object */
-
-/* ------------------------- GL_EXT_pixel_transform ------------------------ */
-
-#ifndef GL_EXT_pixel_transform
-#define GL_EXT_pixel_transform 1
-
-#define GL_PIXEL_TRANSFORM_2D_EXT 0x8330
-#define GL_PIXEL_MAG_FILTER_EXT 0x8331
-#define GL_PIXEL_MIN_FILTER_EXT 0x8332
-#define GL_PIXEL_CUBIC_WEIGHT_EXT 0x8333
-#define GL_CUBIC_EXT 0x8334
-#define GL_AVERAGE_EXT 0x8335
-#define GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8336
-#define GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8337
-#define GL_PIXEL_TRANSFORM_2D_MATRIX_EXT 0x8338
-
-typedef void (GLAPIENTRY * PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERFEXTPROC) (GLenum target, GLenum pname, const GLfloat param);
-typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERIEXTPROC) (GLenum target, GLenum pname, const GLint param);
-typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint* params);
-
-#define glGetPixelTransformParameterfvEXT GLEW_GET_FUN(__glewGetPixelTransformParameterfvEXT)
-#define glGetPixelTransformParameterivEXT GLEW_GET_FUN(__glewGetPixelTransformParameterivEXT)
-#define glPixelTransformParameterfEXT GLEW_GET_FUN(__glewPixelTransformParameterfEXT)
-#define glPixelTransformParameterfvEXT GLEW_GET_FUN(__glewPixelTransformParameterfvEXT)
-#define glPixelTransformParameteriEXT GLEW_GET_FUN(__glewPixelTransformParameteriEXT)
-#define glPixelTransformParameterivEXT GLEW_GET_FUN(__glewPixelTransformParameterivEXT)
-
-#define GLEW_EXT_pixel_transform GLEW_GET_VAR(__GLEW_EXT_pixel_transform)
-
-#endif /* GL_EXT_pixel_transform */
-
-/* ------------------- GL_EXT_pixel_transform_color_table ------------------ */
-
-#ifndef GL_EXT_pixel_transform_color_table
-#define GL_EXT_pixel_transform_color_table 1
-
-#define GLEW_EXT_pixel_transform_color_table GLEW_GET_VAR(__GLEW_EXT_pixel_transform_color_table)
-
-#endif /* GL_EXT_pixel_transform_color_table */
-
-/* ------------------------ GL_EXT_point_parameters ------------------------ */
-
-#ifndef GL_EXT_point_parameters
-#define GL_EXT_point_parameters 1
-
-#define GL_POINT_SIZE_MIN_EXT 0x8126
-#define GL_POINT_SIZE_MAX_EXT 0x8127
-#define GL_POINT_FADE_THRESHOLD_SIZE_EXT 0x8128
-#define GL_DISTANCE_ATTENUATION_EXT 0x8129
-
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFEXTPROC) (GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFVEXTPROC) (GLenum pname, GLfloat* params);
-
-#define glPointParameterfEXT GLEW_GET_FUN(__glewPointParameterfEXT)
-#define glPointParameterfvEXT GLEW_GET_FUN(__glewPointParameterfvEXT)
-
-#define GLEW_EXT_point_parameters GLEW_GET_VAR(__GLEW_EXT_point_parameters)
-
-#endif /* GL_EXT_point_parameters */
-
-/* ------------------------- GL_EXT_polygon_offset ------------------------- */
-
-#ifndef GL_EXT_polygon_offset
-#define GL_EXT_polygon_offset 1
-
-#define GL_POLYGON_OFFSET_EXT 0x8037
-#define GL_POLYGON_OFFSET_FACTOR_EXT 0x8038
-#define GL_POLYGON_OFFSET_BIAS_EXT 0x8039
-
-typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETEXTPROC) (GLfloat factor, GLfloat bias);
-
-#define glPolygonOffsetEXT GLEW_GET_FUN(__glewPolygonOffsetEXT)
-
-#define GLEW_EXT_polygon_offset GLEW_GET_VAR(__GLEW_EXT_polygon_offset)
-
-#endif /* GL_EXT_polygon_offset */
-
-/* ------------------------ GL_EXT_provoking_vertex ------------------------ */
-
-#ifndef GL_EXT_provoking_vertex
-#define GL_EXT_provoking_vertex 1
-
-#define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT 0x8E4C
-#define GL_FIRST_VERTEX_CONVENTION_EXT 0x8E4D
-#define GL_LAST_VERTEX_CONVENTION_EXT 0x8E4E
-#define GL_PROVOKING_VERTEX_EXT 0x8E4F
-
-typedef void (GLAPIENTRY * PFNGLPROVOKINGVERTEXEXTPROC) (GLenum mode);
-
-#define glProvokingVertexEXT GLEW_GET_FUN(__glewProvokingVertexEXT)
-
-#define GLEW_EXT_provoking_vertex GLEW_GET_VAR(__GLEW_EXT_provoking_vertex)
-
-#endif /* GL_EXT_provoking_vertex */
-
-/* ------------------------- GL_EXT_rescale_normal ------------------------- */
-
-#ifndef GL_EXT_rescale_normal
-#define GL_EXT_rescale_normal 1
-
-#define GL_RESCALE_NORMAL_EXT 0x803A
-
-#define GLEW_EXT_rescale_normal GLEW_GET_VAR(__GLEW_EXT_rescale_normal)
-
-#endif /* GL_EXT_rescale_normal */
-
-/* -------------------------- GL_EXT_scene_marker -------------------------- */
-
-#ifndef GL_EXT_scene_marker
-#define GL_EXT_scene_marker 1
-
-typedef void (GLAPIENTRY * PFNGLBEGINSCENEEXTPROC) (void);
-typedef void (GLAPIENTRY * PFNGLENDSCENEEXTPROC) (void);
-
-#define glBeginSceneEXT GLEW_GET_FUN(__glewBeginSceneEXT)
-#define glEndSceneEXT GLEW_GET_FUN(__glewEndSceneEXT)
-
-#define GLEW_EXT_scene_marker GLEW_GET_VAR(__GLEW_EXT_scene_marker)
-
-#endif /* GL_EXT_scene_marker */
-
-/* ------------------------- GL_EXT_secondary_color ------------------------ */
-
-#ifndef GL_EXT_secondary_color
-#define GL_EXT_secondary_color 1
-
-#define GL_COLOR_SUM_EXT 0x8458
-#define GL_CURRENT_SECONDARY_COLOR_EXT 0x8459
-#define GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845A
-#define GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845B
-#define GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845C
-#define GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845D
-#define GL_SECONDARY_COLOR_ARRAY_EXT 0x845E
-
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BEXTPROC) (GLbyte red, GLbyte green, GLbyte blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BVEXTPROC) (const GLbyte *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DEXTPROC) (GLdouble red, GLdouble green, GLdouble blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DVEXTPROC) (const GLdouble *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FEXTPROC) (GLfloat red, GLfloat green, GLfloat blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FVEXTPROC) (const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IEXTPROC) (GLint red, GLint green, GLint blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IVEXTPROC) (const GLint *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SEXTPROC) (GLshort red, GLshort green, GLshort blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SVEXTPROC) (const GLshort *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBEXTPROC) (GLubyte red, GLubyte green, GLubyte blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBVEXTPROC) (const GLubyte *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIEXTPROC) (GLuint red, GLuint green, GLuint blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIVEXTPROC) (const GLuint *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USEXTPROC) (GLushort red, GLushort green, GLushort blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USVEXTPROC) (const GLushort *v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer);
-
-#define glSecondaryColor3bEXT GLEW_GET_FUN(__glewSecondaryColor3bEXT)
-#define glSecondaryColor3bvEXT GLEW_GET_FUN(__glewSecondaryColor3bvEXT)
-#define glSecondaryColor3dEXT GLEW_GET_FUN(__glewSecondaryColor3dEXT)
-#define glSecondaryColor3dvEXT GLEW_GET_FUN(__glewSecondaryColor3dvEXT)
-#define glSecondaryColor3fEXT GLEW_GET_FUN(__glewSecondaryColor3fEXT)
-#define glSecondaryColor3fvEXT GLEW_GET_FUN(__glewSecondaryColor3fvEXT)
-#define glSecondaryColor3iEXT GLEW_GET_FUN(__glewSecondaryColor3iEXT)
-#define glSecondaryColor3ivEXT GLEW_GET_FUN(__glewSecondaryColor3ivEXT)
-#define glSecondaryColor3sEXT GLEW_GET_FUN(__glewSecondaryColor3sEXT)
-#define glSecondaryColor3svEXT GLEW_GET_FUN(__glewSecondaryColor3svEXT)
-#define glSecondaryColor3ubEXT GLEW_GET_FUN(__glewSecondaryColor3ubEXT)
-#define glSecondaryColor3ubvEXT GLEW_GET_FUN(__glewSecondaryColor3ubvEXT)
-#define glSecondaryColor3uiEXT GLEW_GET_FUN(__glewSecondaryColor3uiEXT)
-#define glSecondaryColor3uivEXT GLEW_GET_FUN(__glewSecondaryColor3uivEXT)
-#define glSecondaryColor3usEXT GLEW_GET_FUN(__glewSecondaryColor3usEXT)
-#define glSecondaryColor3usvEXT GLEW_GET_FUN(__glewSecondaryColor3usvEXT)
-#define glSecondaryColorPointerEXT GLEW_GET_FUN(__glewSecondaryColorPointerEXT)
-
-#define GLEW_EXT_secondary_color GLEW_GET_VAR(__GLEW_EXT_secondary_color)
-
-#endif /* GL_EXT_secondary_color */
-
-/* --------------------- GL_EXT_separate_shader_objects -------------------- */
-
-#ifndef GL_EXT_separate_shader_objects
-#define GL_EXT_separate_shader_objects 1
-
-#define GL_ACTIVE_PROGRAM_EXT 0x8B8D
-
-typedef void (GLAPIENTRY * PFNGLACTIVEPROGRAMEXTPROC) (GLuint program);
-typedef GLuint (GLAPIENTRY * PFNGLCREATESHADERPROGRAMEXTPROC) (GLenum type, const char* string);
-typedef void (GLAPIENTRY * PFNGLUSESHADERPROGRAMEXTPROC) (GLenum type, GLuint program);
-
-#define glActiveProgramEXT GLEW_GET_FUN(__glewActiveProgramEXT)
-#define glCreateShaderProgramEXT GLEW_GET_FUN(__glewCreateShaderProgramEXT)
-#define glUseShaderProgramEXT GLEW_GET_FUN(__glewUseShaderProgramEXT)
-
-#define GLEW_EXT_separate_shader_objects GLEW_GET_VAR(__GLEW_EXT_separate_shader_objects)
-
-#endif /* GL_EXT_separate_shader_objects */
-
-/* --------------------- GL_EXT_separate_specular_color -------------------- */
-
-#ifndef GL_EXT_separate_specular_color
-#define GL_EXT_separate_specular_color 1
-
-#define GL_LIGHT_MODEL_COLOR_CONTROL_EXT 0x81F8
-#define GL_SINGLE_COLOR_EXT 0x81F9
-#define GL_SEPARATE_SPECULAR_COLOR_EXT 0x81FA
-
-#define GLEW_EXT_separate_specular_color GLEW_GET_VAR(__GLEW_EXT_separate_specular_color)
-
-#endif /* GL_EXT_separate_specular_color */
-
-/* --------------------- GL_EXT_shader_image_load_store -------------------- */
-
-#ifndef GL_EXT_shader_image_load_store
-#define GL_EXT_shader_image_load_store 1
-
-#define GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT 0x00000001
-#define GL_ELEMENT_ARRAY_BARRIER_BIT_EXT 0x00000002
-#define GL_UNIFORM_BARRIER_BIT_EXT 0x00000004
-#define GL_TEXTURE_FETCH_BARRIER_BIT_EXT 0x00000008
-#define GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT 0x00000020
-#define GL_COMMAND_BARRIER_BIT_EXT 0x00000040
-#define GL_PIXEL_BUFFER_BARRIER_BIT_EXT 0x00000080
-#define GL_TEXTURE_UPDATE_BARRIER_BIT_EXT 0x00000100
-#define GL_BUFFER_UPDATE_BARRIER_BIT_EXT 0x00000200
-#define GL_FRAMEBUFFER_BARRIER_BIT_EXT 0x00000400
-#define GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT 0x00000800
-#define GL_ATOMIC_COUNTER_BARRIER_BIT_EXT 0x00001000
-#define GL_MAX_IMAGE_UNITS_EXT 0x8F38
-#define GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT 0x8F39
-#define GL_IMAGE_BINDING_NAME_EXT 0x8F3A
-#define GL_IMAGE_BINDING_LEVEL_EXT 0x8F3B
-#define GL_IMAGE_BINDING_LAYERED_EXT 0x8F3C
-#define GL_IMAGE_BINDING_LAYER_EXT 0x8F3D
-#define GL_IMAGE_BINDING_ACCESS_EXT 0x8F3E
-#define GL_IMAGE_1D_EXT 0x904C
-#define GL_IMAGE_2D_EXT 0x904D
-#define GL_IMAGE_3D_EXT 0x904E
-#define GL_IMAGE_2D_RECT_EXT 0x904F
-#define GL_IMAGE_CUBE_EXT 0x9050
-#define GL_IMAGE_BUFFER_EXT 0x9051
-#define GL_IMAGE_1D_ARRAY_EXT 0x9052
-#define GL_IMAGE_2D_ARRAY_EXT 0x9053
-#define GL_IMAGE_CUBE_MAP_ARRAY_EXT 0x9054
-#define GL_IMAGE_2D_MULTISAMPLE_EXT 0x9055
-#define GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x9056
-#define GL_INT_IMAGE_1D_EXT 0x9057
-#define GL_INT_IMAGE_2D_EXT 0x9058
-#define GL_INT_IMAGE_3D_EXT 0x9059
-#define GL_INT_IMAGE_2D_RECT_EXT 0x905A
-#define GL_INT_IMAGE_CUBE_EXT 0x905B
-#define GL_INT_IMAGE_BUFFER_EXT 0x905C
-#define GL_INT_IMAGE_1D_ARRAY_EXT 0x905D
-#define GL_INT_IMAGE_2D_ARRAY_EXT 0x905E
-#define GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x905F
-#define GL_INT_IMAGE_2D_MULTISAMPLE_EXT 0x9060
-#define GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x9061
-#define GL_UNSIGNED_INT_IMAGE_1D_EXT 0x9062
-#define GL_UNSIGNED_INT_IMAGE_2D_EXT 0x9063
-#define GL_UNSIGNED_INT_IMAGE_3D_EXT 0x9064
-#define GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT 0x9065
-#define GL_UNSIGNED_INT_IMAGE_CUBE_EXT 0x9066
-#define GL_UNSIGNED_INT_IMAGE_BUFFER_EXT 0x9067
-#define GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT 0x9068
-#define GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT 0x9069
-#define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x906A
-#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT 0x906B
-#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x906C
-#define GL_MAX_IMAGE_SAMPLES_EXT 0x906D
-#define GL_IMAGE_BINDING_FORMAT_EXT 0x906E
-#define GL_ALL_BARRIER_BITS_EXT 0xFFFFFFFF
-
-typedef void (GLAPIENTRY * PFNGLBINDIMAGETEXTUREEXTPROC) (GLuint index, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLint format);
-typedef void (GLAPIENTRY * PFNGLMEMORYBARRIEREXTPROC) (GLbitfield barriers);
-
-#define glBindImageTextureEXT GLEW_GET_FUN(__glewBindImageTextureEXT)
-#define glMemoryBarrierEXT GLEW_GET_FUN(__glewMemoryBarrierEXT)
-
-#define GLEW_EXT_shader_image_load_store GLEW_GET_VAR(__GLEW_EXT_shader_image_load_store)
-
-#endif /* GL_EXT_shader_image_load_store */
-
-/* -------------------------- GL_EXT_shadow_funcs -------------------------- */
-
-#ifndef GL_EXT_shadow_funcs
-#define GL_EXT_shadow_funcs 1
-
-#define GLEW_EXT_shadow_funcs GLEW_GET_VAR(__GLEW_EXT_shadow_funcs)
-
-#endif /* GL_EXT_shadow_funcs */
-
-/* --------------------- GL_EXT_shared_texture_palette --------------------- */
-
-#ifndef GL_EXT_shared_texture_palette
-#define GL_EXT_shared_texture_palette 1
-
-#define GL_SHARED_TEXTURE_PALETTE_EXT 0x81FB
-
-#define GLEW_EXT_shared_texture_palette GLEW_GET_VAR(__GLEW_EXT_shared_texture_palette)
-
-#endif /* GL_EXT_shared_texture_palette */
-
-/* ------------------------ GL_EXT_stencil_clear_tag ----------------------- */
-
-#ifndef GL_EXT_stencil_clear_tag
-#define GL_EXT_stencil_clear_tag 1
-
-#define GL_STENCIL_TAG_BITS_EXT 0x88F2
-#define GL_STENCIL_CLEAR_TAG_VALUE_EXT 0x88F3
-
-#define GLEW_EXT_stencil_clear_tag GLEW_GET_VAR(__GLEW_EXT_stencil_clear_tag)
-
-#endif /* GL_EXT_stencil_clear_tag */
-
-/* ------------------------ GL_EXT_stencil_two_side ------------------------ */
-
-#ifndef GL_EXT_stencil_two_side
-#define GL_EXT_stencil_two_side 1
-
-#define GL_STENCIL_TEST_TWO_SIDE_EXT 0x8910
-#define GL_ACTIVE_STENCIL_FACE_EXT 0x8911
-
-typedef void (GLAPIENTRY * PFNGLACTIVESTENCILFACEEXTPROC) (GLenum face);
-
-#define glActiveStencilFaceEXT GLEW_GET_FUN(__glewActiveStencilFaceEXT)
-
-#define GLEW_EXT_stencil_two_side GLEW_GET_VAR(__GLEW_EXT_stencil_two_side)
-
-#endif /* GL_EXT_stencil_two_side */
-
-/* -------------------------- GL_EXT_stencil_wrap -------------------------- */
-
-#ifndef GL_EXT_stencil_wrap
-#define GL_EXT_stencil_wrap 1
-
-#define GL_INCR_WRAP_EXT 0x8507
-#define GL_DECR_WRAP_EXT 0x8508
-
-#define GLEW_EXT_stencil_wrap GLEW_GET_VAR(__GLEW_EXT_stencil_wrap)
-
-#endif /* GL_EXT_stencil_wrap */
-
-/* --------------------------- GL_EXT_subtexture --------------------------- */
-
-#ifndef GL_EXT_subtexture
-#define GL_EXT_subtexture 1
-
-typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE1DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE2DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE3DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels);
-
-#define glTexSubImage1DEXT GLEW_GET_FUN(__glewTexSubImage1DEXT)
-#define glTexSubImage2DEXT GLEW_GET_FUN(__glewTexSubImage2DEXT)
-#define glTexSubImage3DEXT GLEW_GET_FUN(__glewTexSubImage3DEXT)
-
-#define GLEW_EXT_subtexture GLEW_GET_VAR(__GLEW_EXT_subtexture)
-
-#endif /* GL_EXT_subtexture */
-
-/* ----------------------------- GL_EXT_texture ---------------------------- */
-
-#ifndef GL_EXT_texture
-#define GL_EXT_texture 1
-
-#define GL_ALPHA4_EXT 0x803B
-#define GL_ALPHA8_EXT 0x803C
-#define GL_ALPHA12_EXT 0x803D
-#define GL_ALPHA16_EXT 0x803E
-#define GL_LUMINANCE4_EXT 0x803F
-#define GL_LUMINANCE8_EXT 0x8040
-#define GL_LUMINANCE12_EXT 0x8041
-#define GL_LUMINANCE16_EXT 0x8042
-#define GL_LUMINANCE4_ALPHA4_EXT 0x8043
-#define GL_LUMINANCE6_ALPHA2_EXT 0x8044
-#define GL_LUMINANCE8_ALPHA8_EXT 0x8045
-#define GL_LUMINANCE12_ALPHA4_EXT 0x8046
-#define GL_LUMINANCE12_ALPHA12_EXT 0x8047
-#define GL_LUMINANCE16_ALPHA16_EXT 0x8048
-#define GL_INTENSITY_EXT 0x8049
-#define GL_INTENSITY4_EXT 0x804A
-#define GL_INTENSITY8_EXT 0x804B
-#define GL_INTENSITY12_EXT 0x804C
-#define GL_INTENSITY16_EXT 0x804D
-#define GL_RGB2_EXT 0x804E
-#define GL_RGB4_EXT 0x804F
-#define GL_RGB5_EXT 0x8050
-#define GL_RGB8_EXT 0x8051
-#define GL_RGB10_EXT 0x8052
-#define GL_RGB12_EXT 0x8053
-#define GL_RGB16_EXT 0x8054
-#define GL_RGBA2_EXT 0x8055
-#define GL_RGBA4_EXT 0x8056
-#define GL_RGB5_A1_EXT 0x8057
-#define GL_RGBA8_EXT 0x8058
-#define GL_RGB10_A2_EXT 0x8059
-#define GL_RGBA12_EXT 0x805A
-#define GL_RGBA16_EXT 0x805B
-#define GL_TEXTURE_RED_SIZE_EXT 0x805C
-#define GL_TEXTURE_GREEN_SIZE_EXT 0x805D
-#define GL_TEXTURE_BLUE_SIZE_EXT 0x805E
-#define GL_TEXTURE_ALPHA_SIZE_EXT 0x805F
-#define GL_TEXTURE_LUMINANCE_SIZE_EXT 0x8060
-#define GL_TEXTURE_INTENSITY_SIZE_EXT 0x8061
-#define GL_REPLACE_EXT 0x8062
-#define GL_PROXY_TEXTURE_1D_EXT 0x8063
-#define GL_PROXY_TEXTURE_2D_EXT 0x8064
-
-#define GLEW_EXT_texture GLEW_GET_VAR(__GLEW_EXT_texture)
-
-#endif /* GL_EXT_texture */
-
-/* ---------------------------- GL_EXT_texture3D --------------------------- */
-
-#ifndef GL_EXT_texture3D
-#define GL_EXT_texture3D 1
-
-#define GL_PACK_SKIP_IMAGES_EXT 0x806B
-#define GL_PACK_IMAGE_HEIGHT_EXT 0x806C
-#define GL_UNPACK_SKIP_IMAGES_EXT 0x806D
-#define GL_UNPACK_IMAGE_HEIGHT_EXT 0x806E
-#define GL_TEXTURE_3D_EXT 0x806F
-#define GL_PROXY_TEXTURE_3D_EXT 0x8070
-#define GL_TEXTURE_DEPTH_EXT 0x8071
-#define GL_TEXTURE_WRAP_R_EXT 0x8072
-#define GL_MAX_3D_TEXTURE_SIZE_EXT 0x8073
-
-typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels);
-
-#define glTexImage3DEXT GLEW_GET_FUN(__glewTexImage3DEXT)
-
-#define GLEW_EXT_texture3D GLEW_GET_VAR(__GLEW_EXT_texture3D)
-
-#endif /* GL_EXT_texture3D */
-
-/* -------------------------- GL_EXT_texture_array ------------------------- */
-
-#ifndef GL_EXT_texture_array
-#define GL_EXT_texture_array 1
-
-#define GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT 0x884E
-#define GL_MAX_ARRAY_TEXTURE_LAYERS_EXT 0x88FF
-#define GL_TEXTURE_1D_ARRAY_EXT 0x8C18
-#define GL_PROXY_TEXTURE_1D_ARRAY_EXT 0x8C19
-#define GL_TEXTURE_2D_ARRAY_EXT 0x8C1A
-#define GL_PROXY_TEXTURE_2D_ARRAY_EXT 0x8C1B
-#define GL_TEXTURE_BINDING_1D_ARRAY_EXT 0x8C1C
-#define GL_TEXTURE_BINDING_2D_ARRAY_EXT 0x8C1D
-
-#define GLEW_EXT_texture_array GLEW_GET_VAR(__GLEW_EXT_texture_array)
-
-#endif /* GL_EXT_texture_array */
-
-/* ---------------------- GL_EXT_texture_buffer_object --------------------- */
-
-#ifndef GL_EXT_texture_buffer_object
-#define GL_EXT_texture_buffer_object 1
-
-#define GL_TEXTURE_BUFFER_EXT 0x8C2A
-#define GL_MAX_TEXTURE_BUFFER_SIZE_EXT 0x8C2B
-#define GL_TEXTURE_BINDING_BUFFER_EXT 0x8C2C
-#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT 0x8C2D
-#define GL_TEXTURE_BUFFER_FORMAT_EXT 0x8C2E
-
-typedef void (GLAPIENTRY * PFNGLTEXBUFFEREXTPROC) (GLenum target, GLenum internalformat, GLuint buffer);
-
-#define glTexBufferEXT GLEW_GET_FUN(__glewTexBufferEXT)
-
-#define GLEW_EXT_texture_buffer_object GLEW_GET_VAR(__GLEW_EXT_texture_buffer_object)
-
-#endif /* GL_EXT_texture_buffer_object */
-
-/* -------------------- GL_EXT_texture_compression_dxt1 -------------------- */
-
-#ifndef GL_EXT_texture_compression_dxt1
-#define GL_EXT_texture_compression_dxt1 1
-
-#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
-#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
-
-#define GLEW_EXT_texture_compression_dxt1 GLEW_GET_VAR(__GLEW_EXT_texture_compression_dxt1)
-
-#endif /* GL_EXT_texture_compression_dxt1 */
-
-/* -------------------- GL_EXT_texture_compression_latc -------------------- */
-
-#ifndef GL_EXT_texture_compression_latc
-#define GL_EXT_texture_compression_latc 1
-
-#define GL_COMPRESSED_LUMINANCE_LATC1_EXT 0x8C70
-#define GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT 0x8C71
-#define GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT 0x8C72
-#define GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT 0x8C73
-
-#define GLEW_EXT_texture_compression_latc GLEW_GET_VAR(__GLEW_EXT_texture_compression_latc)
-
-#endif /* GL_EXT_texture_compression_latc */
-
-/* -------------------- GL_EXT_texture_compression_rgtc -------------------- */
-
-#ifndef GL_EXT_texture_compression_rgtc
-#define GL_EXT_texture_compression_rgtc 1
-
-#define GL_COMPRESSED_RED_RGTC1_EXT 0x8DBB
-#define GL_COMPRESSED_SIGNED_RED_RGTC1_EXT 0x8DBC
-#define GL_COMPRESSED_RED_GREEN_RGTC2_EXT 0x8DBD
-#define GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT 0x8DBE
-
-#define GLEW_EXT_texture_compression_rgtc GLEW_GET_VAR(__GLEW_EXT_texture_compression_rgtc)
-
-#endif /* GL_EXT_texture_compression_rgtc */
-
-/* -------------------- GL_EXT_texture_compression_s3tc -------------------- */
-
-#ifndef GL_EXT_texture_compression_s3tc
-#define GL_EXT_texture_compression_s3tc 1
-
-#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
-#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
-#define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
-#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
-
-#define GLEW_EXT_texture_compression_s3tc GLEW_GET_VAR(__GLEW_EXT_texture_compression_s3tc)
-
-#endif /* GL_EXT_texture_compression_s3tc */
-
-/* ------------------------ GL_EXT_texture_cube_map ------------------------ */
-
-#ifndef GL_EXT_texture_cube_map
-#define GL_EXT_texture_cube_map 1
-
-#define GL_NORMAL_MAP_EXT 0x8511
-#define GL_REFLECTION_MAP_EXT 0x8512
-#define GL_TEXTURE_CUBE_MAP_EXT 0x8513
-#define GL_TEXTURE_BINDING_CUBE_MAP_EXT 0x8514
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT 0x8515
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT 0x8516
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT 0x8517
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT 0x8518
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT 0x8519
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT 0x851A
-#define GL_PROXY_TEXTURE_CUBE_MAP_EXT 0x851B
-#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT 0x851C
-
-#define GLEW_EXT_texture_cube_map GLEW_GET_VAR(__GLEW_EXT_texture_cube_map)
-
-#endif /* GL_EXT_texture_cube_map */
-
-/* ----------------------- GL_EXT_texture_edge_clamp ----------------------- */
-
-#ifndef GL_EXT_texture_edge_clamp
-#define GL_EXT_texture_edge_clamp 1
-
-#define GL_CLAMP_TO_EDGE_EXT 0x812F
-
-#define GLEW_EXT_texture_edge_clamp GLEW_GET_VAR(__GLEW_EXT_texture_edge_clamp)
-
-#endif /* GL_EXT_texture_edge_clamp */
-
-/* --------------------------- GL_EXT_texture_env -------------------------- */
-
-#ifndef GL_EXT_texture_env
-#define GL_EXT_texture_env 1
-
-#define GL_TEXTURE_ENV0_EXT 0
-#define GL_ENV_BLEND_EXT 0
-#define GL_TEXTURE_ENV_SHIFT_EXT 0
-#define GL_ENV_REPLACE_EXT 0
-#define GL_ENV_ADD_EXT 0
-#define GL_ENV_SUBTRACT_EXT 0
-#define GL_TEXTURE_ENV_MODE_ALPHA_EXT 0
-#define GL_ENV_REVERSE_SUBTRACT_EXT 0
-#define GL_ENV_REVERSE_BLEND_EXT 0
-#define GL_ENV_COPY_EXT 0
-#define GL_ENV_MODULATE_EXT 0
-
-#define GLEW_EXT_texture_env GLEW_GET_VAR(__GLEW_EXT_texture_env)
-
-#endif /* GL_EXT_texture_env */
-
-/* ------------------------- GL_EXT_texture_env_add ------------------------ */
-
-#ifndef GL_EXT_texture_env_add
-#define GL_EXT_texture_env_add 1
-
-#define GLEW_EXT_texture_env_add GLEW_GET_VAR(__GLEW_EXT_texture_env_add)
-
-#endif /* GL_EXT_texture_env_add */
-
-/* ----------------------- GL_EXT_texture_env_combine ---------------------- */
-
-#ifndef GL_EXT_texture_env_combine
-#define GL_EXT_texture_env_combine 1
-
-#define GL_COMBINE_EXT 0x8570
-#define GL_COMBINE_RGB_EXT 0x8571
-#define GL_COMBINE_ALPHA_EXT 0x8572
-#define GL_RGB_SCALE_EXT 0x8573
-#define GL_ADD_SIGNED_EXT 0x8574
-#define GL_INTERPOLATE_EXT 0x8575
-#define GL_CONSTANT_EXT 0x8576
-#define GL_PRIMARY_COLOR_EXT 0x8577
-#define GL_PREVIOUS_EXT 0x8578
-#define GL_SOURCE0_RGB_EXT 0x8580
-#define GL_SOURCE1_RGB_EXT 0x8581
-#define GL_SOURCE2_RGB_EXT 0x8582
-#define GL_SOURCE0_ALPHA_EXT 0x8588
-#define GL_SOURCE1_ALPHA_EXT 0x8589
-#define GL_SOURCE2_ALPHA_EXT 0x858A
-#define GL_OPERAND0_RGB_EXT 0x8590
-#define GL_OPERAND1_RGB_EXT 0x8591
-#define GL_OPERAND2_RGB_EXT 0x8592
-#define GL_OPERAND0_ALPHA_EXT 0x8598
-#define GL_OPERAND1_ALPHA_EXT 0x8599
-#define GL_OPERAND2_ALPHA_EXT 0x859A
-
-#define GLEW_EXT_texture_env_combine GLEW_GET_VAR(__GLEW_EXT_texture_env_combine)
-
-#endif /* GL_EXT_texture_env_combine */
-
-/* ------------------------ GL_EXT_texture_env_dot3 ------------------------ */
-
-#ifndef GL_EXT_texture_env_dot3
-#define GL_EXT_texture_env_dot3 1
-
-#define GL_DOT3_RGB_EXT 0x8740
-#define GL_DOT3_RGBA_EXT 0x8741
-
-#define GLEW_EXT_texture_env_dot3 GLEW_GET_VAR(__GLEW_EXT_texture_env_dot3)
-
-#endif /* GL_EXT_texture_env_dot3 */
-
-/* ------------------- GL_EXT_texture_filter_anisotropic ------------------- */
-
-#ifndef GL_EXT_texture_filter_anisotropic
-#define GL_EXT_texture_filter_anisotropic 1
-
-#define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
-#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
-
-#define GLEW_EXT_texture_filter_anisotropic GLEW_GET_VAR(__GLEW_EXT_texture_filter_anisotropic)
-
-#endif /* GL_EXT_texture_filter_anisotropic */
-
-/* ------------------------- GL_EXT_texture_integer ------------------------ */
-
-#ifndef GL_EXT_texture_integer
-#define GL_EXT_texture_integer 1
-
-#define GL_RGBA32UI_EXT 0x8D70
-#define GL_RGB32UI_EXT 0x8D71
-#define GL_ALPHA32UI_EXT 0x8D72
-#define GL_INTENSITY32UI_EXT 0x8D73
-#define GL_LUMINANCE32UI_EXT 0x8D74
-#define GL_LUMINANCE_ALPHA32UI_EXT 0x8D75
-#define GL_RGBA16UI_EXT 0x8D76
-#define GL_RGB16UI_EXT 0x8D77
-#define GL_ALPHA16UI_EXT 0x8D78
-#define GL_INTENSITY16UI_EXT 0x8D79
-#define GL_LUMINANCE16UI_EXT 0x8D7A
-#define GL_LUMINANCE_ALPHA16UI_EXT 0x8D7B
-#define GL_RGBA8UI_EXT 0x8D7C
-#define GL_RGB8UI_EXT 0x8D7D
-#define GL_ALPHA8UI_EXT 0x8D7E
-#define GL_INTENSITY8UI_EXT 0x8D7F
-#define GL_LUMINANCE8UI_EXT 0x8D80
-#define GL_LUMINANCE_ALPHA8UI_EXT 0x8D81
-#define GL_RGBA32I_EXT 0x8D82
-#define GL_RGB32I_EXT 0x8D83
-#define GL_ALPHA32I_EXT 0x8D84
-#define GL_INTENSITY32I_EXT 0x8D85
-#define GL_LUMINANCE32I_EXT 0x8D86
-#define GL_LUMINANCE_ALPHA32I_EXT 0x8D87
-#define GL_RGBA16I_EXT 0x8D88
-#define GL_RGB16I_EXT 0x8D89
-#define GL_ALPHA16I_EXT 0x8D8A
-#define GL_INTENSITY16I_EXT 0x8D8B
-#define GL_LUMINANCE16I_EXT 0x8D8C
-#define GL_LUMINANCE_ALPHA16I_EXT 0x8D8D
-#define GL_RGBA8I_EXT 0x8D8E
-#define GL_RGB8I_EXT 0x8D8F
-#define GL_ALPHA8I_EXT 0x8D90
-#define GL_INTENSITY8I_EXT 0x8D91
-#define GL_LUMINANCE8I_EXT 0x8D92
-#define GL_LUMINANCE_ALPHA8I_EXT 0x8D93
-#define GL_RED_INTEGER_EXT 0x8D94
-#define GL_GREEN_INTEGER_EXT 0x8D95
-#define GL_BLUE_INTEGER_EXT 0x8D96
-#define GL_ALPHA_INTEGER_EXT 0x8D97
-#define GL_RGB_INTEGER_EXT 0x8D98
-#define GL_RGBA_INTEGER_EXT 0x8D99
-#define GL_BGR_INTEGER_EXT 0x8D9A
-#define GL_BGRA_INTEGER_EXT 0x8D9B
-#define GL_LUMINANCE_INTEGER_EXT 0x8D9C
-#define GL_LUMINANCE_ALPHA_INTEGER_EXT 0x8D9D
-#define GL_RGBA_INTEGER_MODE_EXT 0x8D9E
-
-typedef void (GLAPIENTRY * PFNGLCLEARCOLORIIEXTPROC) (GLint red, GLint green, GLint blue, GLint alpha);
-typedef void (GLAPIENTRY * PFNGLCLEARCOLORIUIEXTPROC) (GLuint red, GLuint green, GLuint blue, GLuint alpha);
-typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
-typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIUIVEXTPROC) (GLenum target, GLenum pname, GLuint *params);
-typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIIVEXTPROC) (GLenum target, GLenum pname, const GLint *params);
-typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIUIVEXTPROC) (GLenum target, GLenum pname, const GLuint *params);
-
-#define glClearColorIiEXT GLEW_GET_FUN(__glewClearColorIiEXT)
-#define glClearColorIuiEXT GLEW_GET_FUN(__glewClearColorIuiEXT)
-#define glGetTexParameterIivEXT GLEW_GET_FUN(__glewGetTexParameterIivEXT)
-#define glGetTexParameterIuivEXT GLEW_GET_FUN(__glewGetTexParameterIuivEXT)
-#define glTexParameterIivEXT GLEW_GET_FUN(__glewTexParameterIivEXT)
-#define glTexParameterIuivEXT GLEW_GET_FUN(__glewTexParameterIuivEXT)
-
-#define GLEW_EXT_texture_integer GLEW_GET_VAR(__GLEW_EXT_texture_integer)
-
-#endif /* GL_EXT_texture_integer */
-
-/* ------------------------ GL_EXT_texture_lod_bias ------------------------ */
-
-#ifndef GL_EXT_texture_lod_bias
-#define GL_EXT_texture_lod_bias 1
-
-#define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD
-#define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500
-#define GL_TEXTURE_LOD_BIAS_EXT 0x8501
-
-#define GLEW_EXT_texture_lod_bias GLEW_GET_VAR(__GLEW_EXT_texture_lod_bias)
-
-#endif /* GL_EXT_texture_lod_bias */
-
-/* ---------------------- GL_EXT_texture_mirror_clamp ---------------------- */
-
-#ifndef GL_EXT_texture_mirror_clamp
-#define GL_EXT_texture_mirror_clamp 1
-
-#define GL_MIRROR_CLAMP_EXT 0x8742
-#define GL_MIRROR_CLAMP_TO_EDGE_EXT 0x8743
-#define GL_MIRROR_CLAMP_TO_BORDER_EXT 0x8912
-
-#define GLEW_EXT_texture_mirror_clamp GLEW_GET_VAR(__GLEW_EXT_texture_mirror_clamp)
-
-#endif /* GL_EXT_texture_mirror_clamp */
-
-/* ------------------------- GL_EXT_texture_object ------------------------- */
-
-#ifndef GL_EXT_texture_object
-#define GL_EXT_texture_object 1
-
-#define GL_TEXTURE_PRIORITY_EXT 0x8066
-#define GL_TEXTURE_RESIDENT_EXT 0x8067
-#define GL_TEXTURE_1D_BINDING_EXT 0x8068
-#define GL_TEXTURE_2D_BINDING_EXT 0x8069
-#define GL_TEXTURE_3D_BINDING_EXT 0x806A
-
-typedef GLboolean (GLAPIENTRY * PFNGLARETEXTURESRESIDENTEXTPROC) (GLsizei n, const GLuint* textures, GLboolean* residences);
-typedef void (GLAPIENTRY * PFNGLBINDTEXTUREEXTPROC) (GLenum target, GLuint texture);
-typedef void (GLAPIENTRY * PFNGLDELETETEXTURESEXTPROC) (GLsizei n, const GLuint* textures);
-typedef void (GLAPIENTRY * PFNGLGENTEXTURESEXTPROC) (GLsizei n, GLuint* textures);
-typedef GLboolean (GLAPIENTRY * PFNGLISTEXTUREEXTPROC) (GLuint texture);
-typedef void (GLAPIENTRY * PFNGLPRIORITIZETEXTURESEXTPROC) (GLsizei n, const GLuint* textures, const GLclampf* priorities);
-
-#define glAreTexturesResidentEXT GLEW_GET_FUN(__glewAreTexturesResidentEXT)
-#define glBindTextureEXT GLEW_GET_FUN(__glewBindTextureEXT)
-#define glDeleteTexturesEXT GLEW_GET_FUN(__glewDeleteTexturesEXT)
-#define glGenTexturesEXT GLEW_GET_FUN(__glewGenTexturesEXT)
-#define glIsTextureEXT GLEW_GET_FUN(__glewIsTextureEXT)
-#define glPrioritizeTexturesEXT GLEW_GET_FUN(__glewPrioritizeTexturesEXT)
-
-#define GLEW_EXT_texture_object GLEW_GET_VAR(__GLEW_EXT_texture_object)
-
-#endif /* GL_EXT_texture_object */
-
-/* --------------------- GL_EXT_texture_perturb_normal --------------------- */
-
-#ifndef GL_EXT_texture_perturb_normal
-#define GL_EXT_texture_perturb_normal 1
-
-#define GL_PERTURB_EXT 0x85AE
-#define GL_TEXTURE_NORMAL_EXT 0x85AF
-
-typedef void (GLAPIENTRY * PFNGLTEXTURENORMALEXTPROC) (GLenum mode);
-
-#define glTextureNormalEXT GLEW_GET_FUN(__glewTextureNormalEXT)
-
-#define GLEW_EXT_texture_perturb_normal GLEW_GET_VAR(__GLEW_EXT_texture_perturb_normal)
-
-#endif /* GL_EXT_texture_perturb_normal */
-
-/* ------------------------ GL_EXT_texture_rectangle ----------------------- */
-
-#ifndef GL_EXT_texture_rectangle
-#define GL_EXT_texture_rectangle 1
-
-#define GL_TEXTURE_RECTANGLE_EXT 0x84F5
-#define GL_TEXTURE_BINDING_RECTANGLE_EXT 0x84F6
-#define GL_PROXY_TEXTURE_RECTANGLE_EXT 0x84F7
-#define GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT 0x84F8
-
-#define GLEW_EXT_texture_rectangle GLEW_GET_VAR(__GLEW_EXT_texture_rectangle)
-
-#endif /* GL_EXT_texture_rectangle */
-
-/* -------------------------- GL_EXT_texture_sRGB -------------------------- */
-
-#ifndef GL_EXT_texture_sRGB
-#define GL_EXT_texture_sRGB 1
-
-#define GL_SRGB_EXT 0x8C40
-#define GL_SRGB8_EXT 0x8C41
-#define GL_SRGB_ALPHA_EXT 0x8C42
-#define GL_SRGB8_ALPHA8_EXT 0x8C43
-#define GL_SLUMINANCE_ALPHA_EXT 0x8C44
-#define GL_SLUMINANCE8_ALPHA8_EXT 0x8C45
-#define GL_SLUMINANCE_EXT 0x8C46
-#define GL_SLUMINANCE8_EXT 0x8C47
-#define GL_COMPRESSED_SRGB_EXT 0x8C48
-#define GL_COMPRESSED_SRGB_ALPHA_EXT 0x8C49
-#define GL_COMPRESSED_SLUMINANCE_EXT 0x8C4A
-#define GL_COMPRESSED_SLUMINANCE_ALPHA_EXT 0x8C4B
-#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C
-#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D
-#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
-#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
-
-#define GLEW_EXT_texture_sRGB GLEW_GET_VAR(__GLEW_EXT_texture_sRGB)
-
-#endif /* GL_EXT_texture_sRGB */
-
-/* --------------------- GL_EXT_texture_shared_exponent -------------------- */
-
-#ifndef GL_EXT_texture_shared_exponent
-#define GL_EXT_texture_shared_exponent 1
-
-#define GL_RGB9_E5_EXT 0x8C3D
-#define GL_UNSIGNED_INT_5_9_9_9_REV_EXT 0x8C3E
-#define GL_TEXTURE_SHARED_SIZE_EXT 0x8C3F
-
-#define GLEW_EXT_texture_shared_exponent GLEW_GET_VAR(__GLEW_EXT_texture_shared_exponent)
-
-#endif /* GL_EXT_texture_shared_exponent */
-
-/* -------------------------- GL_EXT_texture_snorm ------------------------- */
-
-#ifndef GL_EXT_texture_snorm
-#define GL_EXT_texture_snorm 1
-
-#define GL_RED_SNORM 0x8F90
-#define GL_RG_SNORM 0x8F91
-#define GL_RGB_SNORM 0x8F92
-#define GL_RGBA_SNORM 0x8F93
-#define GL_R8_SNORM 0x8F94
-#define GL_RG8_SNORM 0x8F95
-#define GL_RGB8_SNORM 0x8F96
-#define GL_RGBA8_SNORM 0x8F97
-#define GL_R16_SNORM 0x8F98
-#define GL_RG16_SNORM 0x8F99
-#define GL_RGB16_SNORM 0x8F9A
-#define GL_RGBA16_SNORM 0x8F9B
-#define GL_SIGNED_NORMALIZED 0x8F9C
-#define GL_ALPHA_SNORM 0x9010
-#define GL_LUMINANCE_SNORM 0x9011
-#define GL_LUMINANCE_ALPHA_SNORM 0x9012
-#define GL_INTENSITY_SNORM 0x9013
-#define GL_ALPHA8_SNORM 0x9014
-#define GL_LUMINANCE8_SNORM 0x9015
-#define GL_LUMINANCE8_ALPHA8_SNORM 0x9016
-#define GL_INTENSITY8_SNORM 0x9017
-#define GL_ALPHA16_SNORM 0x9018
-#define GL_LUMINANCE16_SNORM 0x9019
-#define GL_LUMINANCE16_ALPHA16_SNORM 0x901A
-#define GL_INTENSITY16_SNORM 0x901B
-
-#define GLEW_EXT_texture_snorm GLEW_GET_VAR(__GLEW_EXT_texture_snorm)
-
-#endif /* GL_EXT_texture_snorm */
-
-/* ------------------------- GL_EXT_texture_swizzle ------------------------ */
-
-#ifndef GL_EXT_texture_swizzle
-#define GL_EXT_texture_swizzle 1
-
-#define GL_TEXTURE_SWIZZLE_R_EXT 0x8E42
-#define GL_TEXTURE_SWIZZLE_G_EXT 0x8E43
-#define GL_TEXTURE_SWIZZLE_B_EXT 0x8E44
-#define GL_TEXTURE_SWIZZLE_A_EXT 0x8E45
-#define GL_TEXTURE_SWIZZLE_RGBA_EXT 0x8E46
-
-#define GLEW_EXT_texture_swizzle GLEW_GET_VAR(__GLEW_EXT_texture_swizzle)
-
-#endif /* GL_EXT_texture_swizzle */
-
-/* --------------------------- GL_EXT_timer_query -------------------------- */
-
-#ifndef GL_EXT_timer_query
-#define GL_EXT_timer_query 1
-
-#define GL_TIME_ELAPSED_EXT 0x88BF
-
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTI64VEXTPROC) (GLuint id, GLenum pname, GLint64EXT *params);
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUI64VEXTPROC) (GLuint id, GLenum pname, GLuint64EXT *params);
-
-#define glGetQueryObjecti64vEXT GLEW_GET_FUN(__glewGetQueryObjecti64vEXT)
-#define glGetQueryObjectui64vEXT GLEW_GET_FUN(__glewGetQueryObjectui64vEXT)
-
-#define GLEW_EXT_timer_query GLEW_GET_VAR(__GLEW_EXT_timer_query)
-
-#endif /* GL_EXT_timer_query */
-
-/* ----------------------- GL_EXT_transform_feedback ----------------------- */
-
-#ifndef GL_EXT_transform_feedback
-#define GL_EXT_transform_feedback 1
-
-#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT 0x8C76
-#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT 0x8C7F
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT 0x8C80
-#define GL_TRANSFORM_FEEDBACK_VARYINGS_EXT 0x8C83
-#define GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT 0x8C84
-#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT 0x8C85
-#define GL_PRIMITIVES_GENERATED_EXT 0x8C87
-#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT 0x8C88
-#define GL_RASTERIZER_DISCARD_EXT 0x8C89
-#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT 0x8C8A
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT 0x8C8B
-#define GL_INTERLEAVED_ATTRIBS_EXT 0x8C8C
-#define GL_SEPARATE_ATTRIBS_EXT 0x8C8D
-#define GL_TRANSFORM_FEEDBACK_BUFFER_EXT 0x8C8E
-#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT 0x8C8F
-
-typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACKEXTPROC) (GLenum primitiveMode);
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASEEXTPROC) (GLenum target, GLuint index, GLuint buffer);
-typedef void (GLAPIENTRY * PFNGLBINDBUFFEROFFSETEXTPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGEEXTPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
-typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACKEXTPROC) (void);
-typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei *size, GLenum *type, char *name);
-typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC) (GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode);
-
-#define glBeginTransformFeedbackEXT GLEW_GET_FUN(__glewBeginTransformFeedbackEXT)
-#define glBindBufferBaseEXT GLEW_GET_FUN(__glewBindBufferBaseEXT)
-#define glBindBufferOffsetEXT GLEW_GET_FUN(__glewBindBufferOffsetEXT)
-#define glBindBufferRangeEXT GLEW_GET_FUN(__glewBindBufferRangeEXT)
-#define glEndTransformFeedbackEXT GLEW_GET_FUN(__glewEndTransformFeedbackEXT)
-#define glGetTransformFeedbackVaryingEXT GLEW_GET_FUN(__glewGetTransformFeedbackVaryingEXT)
-#define glTransformFeedbackVaryingsEXT GLEW_GET_FUN(__glewTransformFeedbackVaryingsEXT)
-
-#define GLEW_EXT_transform_feedback GLEW_GET_VAR(__GLEW_EXT_transform_feedback)
-
-#endif /* GL_EXT_transform_feedback */
-
-/* -------------------------- GL_EXT_vertex_array -------------------------- */
-
-#ifndef GL_EXT_vertex_array
-#define GL_EXT_vertex_array 1
-
-#define GL_DOUBLE_EXT 0x140A
-#define GL_VERTEX_ARRAY_EXT 0x8074
-#define GL_NORMAL_ARRAY_EXT 0x8075
-#define GL_COLOR_ARRAY_EXT 0x8076
-#define GL_INDEX_ARRAY_EXT 0x8077
-#define GL_TEXTURE_COORD_ARRAY_EXT 0x8078
-#define GL_EDGE_FLAG_ARRAY_EXT 0x8079
-#define GL_VERTEX_ARRAY_SIZE_EXT 0x807A
-#define GL_VERTEX_ARRAY_TYPE_EXT 0x807B
-#define GL_VERTEX_ARRAY_STRIDE_EXT 0x807C
-#define GL_VERTEX_ARRAY_COUNT_EXT 0x807D
-#define GL_NORMAL_ARRAY_TYPE_EXT 0x807E
-#define GL_NORMAL_ARRAY_STRIDE_EXT 0x807F
-#define GL_NORMAL_ARRAY_COUNT_EXT 0x8080
-#define GL_COLOR_ARRAY_SIZE_EXT 0x8081
-#define GL_COLOR_ARRAY_TYPE_EXT 0x8082
-#define GL_COLOR_ARRAY_STRIDE_EXT 0x8083
-#define GL_COLOR_ARRAY_COUNT_EXT 0x8084
-#define GL_INDEX_ARRAY_TYPE_EXT 0x8085
-#define GL_INDEX_ARRAY_STRIDE_EXT 0x8086
-#define GL_INDEX_ARRAY_COUNT_EXT 0x8087
-#define GL_TEXTURE_COORD_ARRAY_SIZE_EXT 0x8088
-#define GL_TEXTURE_COORD_ARRAY_TYPE_EXT 0x8089
-#define GL_TEXTURE_COORD_ARRAY_STRIDE_EXT 0x808A
-#define GL_TEXTURE_COORD_ARRAY_COUNT_EXT 0x808B
-#define GL_EDGE_FLAG_ARRAY_STRIDE_EXT 0x808C
-#define GL_EDGE_FLAG_ARRAY_COUNT_EXT 0x808D
-#define GL_VERTEX_ARRAY_POINTER_EXT 0x808E
-#define GL_NORMAL_ARRAY_POINTER_EXT 0x808F
-#define GL_COLOR_ARRAY_POINTER_EXT 0x8090
-#define GL_INDEX_ARRAY_POINTER_EXT 0x8091
-#define GL_TEXTURE_COORD_ARRAY_POINTER_EXT 0x8092
-#define GL_EDGE_FLAG_ARRAY_POINTER_EXT 0x8093
-
-typedef void (GLAPIENTRY * PFNGLARRAYELEMENTEXTPROC) (GLint i);
-typedef void (GLAPIENTRY * PFNGLCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void* pointer);
-typedef void (GLAPIENTRY * PFNGLDRAWARRAYSEXTPROC) (GLenum mode, GLint first, GLsizei count);
-typedef void (GLAPIENTRY * PFNGLEDGEFLAGPOINTEREXTPROC) (GLsizei stride, GLsizei count, const GLboolean* pointer);
-typedef void (GLAPIENTRY * PFNGLGETPOINTERVEXTPROC) (GLenum pname, void** params);
-typedef void (GLAPIENTRY * PFNGLINDEXPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const void* pointer);
-typedef void (GLAPIENTRY * PFNGLNORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const void* pointer);
-typedef void (GLAPIENTRY * PFNGLTEXCOORDPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void* pointer);
-typedef void (GLAPIENTRY * PFNGLVERTEXPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void* pointer);
-
-#define glArrayElementEXT GLEW_GET_FUN(__glewArrayElementEXT)
-#define glColorPointerEXT GLEW_GET_FUN(__glewColorPointerEXT)
-#define glDrawArraysEXT GLEW_GET_FUN(__glewDrawArraysEXT)
-#define glEdgeFlagPointerEXT GLEW_GET_FUN(__glewEdgeFlagPointerEXT)
-#define glGetPointervEXT GLEW_GET_FUN(__glewGetPointervEXT)
-#define glIndexPointerEXT GLEW_GET_FUN(__glewIndexPointerEXT)
-#define glNormalPointerEXT GLEW_GET_FUN(__glewNormalPointerEXT)
-#define glTexCoordPointerEXT GLEW_GET_FUN(__glewTexCoordPointerEXT)
-#define glVertexPointerEXT GLEW_GET_FUN(__glewVertexPointerEXT)
-
-#define GLEW_EXT_vertex_array GLEW_GET_VAR(__GLEW_EXT_vertex_array)
-
-#endif /* GL_EXT_vertex_array */
-
-/* ------------------------ GL_EXT_vertex_array_bgra ----------------------- */
-
-#ifndef GL_EXT_vertex_array_bgra
-#define GL_EXT_vertex_array_bgra 1
-
-#define GL_BGRA 0x80E1
-
-#define GLEW_EXT_vertex_array_bgra GLEW_GET_VAR(__GLEW_EXT_vertex_array_bgra)
-
-#endif /* GL_EXT_vertex_array_bgra */
-
-/* ----------------------- GL_EXT_vertex_attrib_64bit ---------------------- */
-
-#ifndef GL_EXT_vertex_attrib_64bit
-#define GL_EXT_vertex_attrib_64bit 1
-
-#define GL_DOUBLE_MAT2_EXT 0x8F46
-#define GL_DOUBLE_MAT3_EXT 0x8F47
-#define GL_DOUBLE_MAT4_EXT 0x8F48
-#define GL_DOUBLE_VEC2_EXT 0x8FFC
-#define GL_DOUBLE_VEC3_EXT 0x8FFD
-#define GL_DOUBLE_VEC4_EXT 0x8FFE
-
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLDVEXTPROC) (GLuint index, GLenum pname, GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DEXTPROC) (GLuint index, GLdouble x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DVEXTPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DEXTPROC) (GLuint index, GLdouble x, GLdouble y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DVEXTPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DEXTPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DVEXTPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DEXTPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DVEXTPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLPOINTEREXTPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer);
-
-#define glGetVertexAttribLdvEXT GLEW_GET_FUN(__glewGetVertexAttribLdvEXT)
-#define glVertexArrayVertexAttribLOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribLOffsetEXT)
-#define glVertexAttribL1dEXT GLEW_GET_FUN(__glewVertexAttribL1dEXT)
-#define glVertexAttribL1dvEXT GLEW_GET_FUN(__glewVertexAttribL1dvEXT)
-#define glVertexAttribL2dEXT GLEW_GET_FUN(__glewVertexAttribL2dEXT)
-#define glVertexAttribL2dvEXT GLEW_GET_FUN(__glewVertexAttribL2dvEXT)
-#define glVertexAttribL3dEXT GLEW_GET_FUN(__glewVertexAttribL3dEXT)
-#define glVertexAttribL3dvEXT GLEW_GET_FUN(__glewVertexAttribL3dvEXT)
-#define glVertexAttribL4dEXT GLEW_GET_FUN(__glewVertexAttribL4dEXT)
-#define glVertexAttribL4dvEXT GLEW_GET_FUN(__glewVertexAttribL4dvEXT)
-#define glVertexAttribLPointerEXT GLEW_GET_FUN(__glewVertexAttribLPointerEXT)
-
-#define GLEW_EXT_vertex_attrib_64bit GLEW_GET_VAR(__GLEW_EXT_vertex_attrib_64bit)
-
-#endif /* GL_EXT_vertex_attrib_64bit */
-
-/* -------------------------- GL_EXT_vertex_shader ------------------------- */
-
-#ifndef GL_EXT_vertex_shader
-#define GL_EXT_vertex_shader 1
-
-#define GL_VERTEX_SHADER_EXT 0x8780
-#define GL_VERTEX_SHADER_BINDING_EXT 0x8781
-#define GL_OP_INDEX_EXT 0x8782
-#define GL_OP_NEGATE_EXT 0x8783
-#define GL_OP_DOT3_EXT 0x8784
-#define GL_OP_DOT4_EXT 0x8785
-#define GL_OP_MUL_EXT 0x8786
-#define GL_OP_ADD_EXT 0x8787
-#define GL_OP_MADD_EXT 0x8788
-#define GL_OP_FRAC_EXT 0x8789
-#define GL_OP_MAX_EXT 0x878A
-#define GL_OP_MIN_EXT 0x878B
-#define GL_OP_SET_GE_EXT 0x878C
-#define GL_OP_SET_LT_EXT 0x878D
-#define GL_OP_CLAMP_EXT 0x878E
-#define GL_OP_FLOOR_EXT 0x878F
-#define GL_OP_ROUND_EXT 0x8790
-#define GL_OP_EXP_BASE_2_EXT 0x8791
-#define GL_OP_LOG_BASE_2_EXT 0x8792
-#define GL_OP_POWER_EXT 0x8793
-#define GL_OP_RECIP_EXT 0x8794
-#define GL_OP_RECIP_SQRT_EXT 0x8795
-#define GL_OP_SUB_EXT 0x8796
-#define GL_OP_CROSS_PRODUCT_EXT 0x8797
-#define GL_OP_MULTIPLY_MATRIX_EXT 0x8798
-#define GL_OP_MOV_EXT 0x8799
-#define GL_OUTPUT_VERTEX_EXT 0x879A
-#define GL_OUTPUT_COLOR0_EXT 0x879B
-#define GL_OUTPUT_COLOR1_EXT 0x879C
-#define GL_OUTPUT_TEXTURE_COORD0_EXT 0x879D
-#define GL_OUTPUT_TEXTURE_COORD1_EXT 0x879E
-#define GL_OUTPUT_TEXTURE_COORD2_EXT 0x879F
-#define GL_OUTPUT_TEXTURE_COORD3_EXT 0x87A0
-#define GL_OUTPUT_TEXTURE_COORD4_EXT 0x87A1
-#define GL_OUTPUT_TEXTURE_COORD5_EXT 0x87A2
-#define GL_OUTPUT_TEXTURE_COORD6_EXT 0x87A3
-#define GL_OUTPUT_TEXTURE_COORD7_EXT 0x87A4
-#define GL_OUTPUT_TEXTURE_COORD8_EXT 0x87A5
-#define GL_OUTPUT_TEXTURE_COORD9_EXT 0x87A6
-#define GL_OUTPUT_TEXTURE_COORD10_EXT 0x87A7
-#define GL_OUTPUT_TEXTURE_COORD11_EXT 0x87A8
-#define GL_OUTPUT_TEXTURE_COORD12_EXT 0x87A9
-#define GL_OUTPUT_TEXTURE_COORD13_EXT 0x87AA
-#define GL_OUTPUT_TEXTURE_COORD14_EXT 0x87AB
-#define GL_OUTPUT_TEXTURE_COORD15_EXT 0x87AC
-#define GL_OUTPUT_TEXTURE_COORD16_EXT 0x87AD
-#define GL_OUTPUT_TEXTURE_COORD17_EXT 0x87AE
-#define GL_OUTPUT_TEXTURE_COORD18_EXT 0x87AF
-#define GL_OUTPUT_TEXTURE_COORD19_EXT 0x87B0
-#define GL_OUTPUT_TEXTURE_COORD20_EXT 0x87B1
-#define GL_OUTPUT_TEXTURE_COORD21_EXT 0x87B2
-#define GL_OUTPUT_TEXTURE_COORD22_EXT 0x87B3
-#define GL_OUTPUT_TEXTURE_COORD23_EXT 0x87B4
-#define GL_OUTPUT_TEXTURE_COORD24_EXT 0x87B5
-#define GL_OUTPUT_TEXTURE_COORD25_EXT 0x87B6
-#define GL_OUTPUT_TEXTURE_COORD26_EXT 0x87B7
-#define GL_OUTPUT_TEXTURE_COORD27_EXT 0x87B8
-#define GL_OUTPUT_TEXTURE_COORD28_EXT 0x87B9
-#define GL_OUTPUT_TEXTURE_COORD29_EXT 0x87BA
-#define GL_OUTPUT_TEXTURE_COORD30_EXT 0x87BB
-#define GL_OUTPUT_TEXTURE_COORD31_EXT 0x87BC
-#define GL_OUTPUT_FOG_EXT 0x87BD
-#define GL_SCALAR_EXT 0x87BE
-#define GL_VECTOR_EXT 0x87BF
-#define GL_MATRIX_EXT 0x87C0
-#define GL_VARIANT_EXT 0x87C1
-#define GL_INVARIANT_EXT 0x87C2
-#define GL_LOCAL_CONSTANT_EXT 0x87C3
-#define GL_LOCAL_EXT 0x87C4
-#define GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87C5
-#define GL_MAX_VERTEX_SHADER_VARIANTS_EXT 0x87C6
-#define GL_MAX_VERTEX_SHADER_INVARIANTS_EXT 0x87C7
-#define GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87C8
-#define GL_MAX_VERTEX_SHADER_LOCALS_EXT 0x87C9
-#define GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CA
-#define GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT 0x87CB
-#define GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT 0x87CC
-#define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87CD
-#define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT 0x87CE
-#define GL_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CF
-#define GL_VERTEX_SHADER_VARIANTS_EXT 0x87D0
-#define GL_VERTEX_SHADER_INVARIANTS_EXT 0x87D1
-#define GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87D2
-#define GL_VERTEX_SHADER_LOCALS_EXT 0x87D3
-#define GL_VERTEX_SHADER_OPTIMIZED_EXT 0x87D4
-#define GL_X_EXT 0x87D5
-#define GL_Y_EXT 0x87D6
-#define GL_Z_EXT 0x87D7
-#define GL_W_EXT 0x87D8
-#define GL_NEGATIVE_X_EXT 0x87D9
-#define GL_NEGATIVE_Y_EXT 0x87DA
-#define GL_NEGATIVE_Z_EXT 0x87DB
-#define GL_NEGATIVE_W_EXT 0x87DC
-#define GL_ZERO_EXT 0x87DD
-#define GL_ONE_EXT 0x87DE
-#define GL_NEGATIVE_ONE_EXT 0x87DF
-#define GL_NORMALIZED_RANGE_EXT 0x87E0
-#define GL_FULL_RANGE_EXT 0x87E1
-#define GL_CURRENT_VERTEX_EXT 0x87E2
-#define GL_MVP_MATRIX_EXT 0x87E3
-#define GL_VARIANT_VALUE_EXT 0x87E4
-#define GL_VARIANT_DATATYPE_EXT 0x87E5
-#define GL_VARIANT_ARRAY_STRIDE_EXT 0x87E6
-#define GL_VARIANT_ARRAY_TYPE_EXT 0x87E7
-#define GL_VARIANT_ARRAY_EXT 0x87E8
-#define GL_VARIANT_ARRAY_POINTER_EXT 0x87E9
-#define GL_INVARIANT_VALUE_EXT 0x87EA
-#define GL_INVARIANT_DATATYPE_EXT 0x87EB
-#define GL_LOCAL_CONSTANT_VALUE_EXT 0x87EC
-#define GL_LOCAL_CONSTANT_DATATYPE_EXT 0x87ED
-
-typedef void (GLAPIENTRY * PFNGLBEGINVERTEXSHADEREXTPROC) (void);
-typedef GLuint (GLAPIENTRY * PFNGLBINDLIGHTPARAMETEREXTPROC) (GLenum light, GLenum value);
-typedef GLuint (GLAPIENTRY * PFNGLBINDMATERIALPARAMETEREXTPROC) (GLenum face, GLenum value);
-typedef GLuint (GLAPIENTRY * PFNGLBINDPARAMETEREXTPROC) (GLenum value);
-typedef GLuint (GLAPIENTRY * PFNGLBINDTEXGENPARAMETEREXTPROC) (GLenum unit, GLenum coord, GLenum value);
-typedef GLuint (GLAPIENTRY * PFNGLBINDTEXTUREUNITPARAMETEREXTPROC) (GLenum unit, GLenum value);
-typedef void (GLAPIENTRY * PFNGLBINDVERTEXSHADEREXTPROC) (GLuint id);
-typedef void (GLAPIENTRY * PFNGLDELETEVERTEXSHADEREXTPROC) (GLuint id);
-typedef void (GLAPIENTRY * PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id);
-typedef void (GLAPIENTRY * PFNGLENABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id);
-typedef void (GLAPIENTRY * PFNGLENDVERTEXSHADEREXTPROC) (void);
-typedef void (GLAPIENTRY * PFNGLEXTRACTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num);
-typedef GLuint (GLAPIENTRY * PFNGLGENSYMBOLSEXTPROC) (GLenum dataType, GLenum storageType, GLenum range, GLuint components);
-typedef GLuint (GLAPIENTRY * PFNGLGENVERTEXSHADERSEXTPROC) (GLuint range);
-typedef void (GLAPIENTRY * PFNGLGETINVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data);
-typedef void (GLAPIENTRY * PFNGLGETINVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data);
-typedef void (GLAPIENTRY * PFNGLGETINVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data);
-typedef void (GLAPIENTRY * PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data);
-typedef void (GLAPIENTRY * PFNGLGETLOCALCONSTANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data);
-typedef void (GLAPIENTRY * PFNGLGETLOCALCONSTANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data);
-typedef void (GLAPIENTRY * PFNGLGETVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data);
-typedef void (GLAPIENTRY * PFNGLGETVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data);
-typedef void (GLAPIENTRY * PFNGLGETVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data);
-typedef void (GLAPIENTRY * PFNGLGETVARIANTPOINTERVEXTPROC) (GLuint id, GLenum value, GLvoid **data);
-typedef void (GLAPIENTRY * PFNGLINSERTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num);
-typedef GLboolean (GLAPIENTRY * PFNGLISVARIANTENABLEDEXTPROC) (GLuint id, GLenum cap);
-typedef void (GLAPIENTRY * PFNGLSETINVARIANTEXTPROC) (GLuint id, GLenum type, GLvoid *addr);
-typedef void (GLAPIENTRY * PFNGLSETLOCALCONSTANTEXTPROC) (GLuint id, GLenum type, GLvoid *addr);
-typedef void (GLAPIENTRY * PFNGLSHADEROP1EXTPROC) (GLenum op, GLuint res, GLuint arg1);
-typedef void (GLAPIENTRY * PFNGLSHADEROP2EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2);
-typedef void (GLAPIENTRY * PFNGLSHADEROP3EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3);
-typedef void (GLAPIENTRY * PFNGLSWIZZLEEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);
-typedef void (GLAPIENTRY * PFNGLVARIANTPOINTEREXTPROC) (GLuint id, GLenum type, GLuint stride, GLvoid *addr);
-typedef void (GLAPIENTRY * PFNGLVARIANTBVEXTPROC) (GLuint id, GLbyte *addr);
-typedef void (GLAPIENTRY * PFNGLVARIANTDVEXTPROC) (GLuint id, GLdouble *addr);
-typedef void (GLAPIENTRY * PFNGLVARIANTFVEXTPROC) (GLuint id, GLfloat *addr);
-typedef void (GLAPIENTRY * PFNGLVARIANTIVEXTPROC) (GLuint id, GLint *addr);
-typedef void (GLAPIENTRY * PFNGLVARIANTSVEXTPROC) (GLuint id, GLshort *addr);
-typedef void (GLAPIENTRY * PFNGLVARIANTUBVEXTPROC) (GLuint id, GLubyte *addr);
-typedef void (GLAPIENTRY * PFNGLVARIANTUIVEXTPROC) (GLuint id, GLuint *addr);
-typedef void (GLAPIENTRY * PFNGLVARIANTUSVEXTPROC) (GLuint id, GLushort *addr);
-typedef void (GLAPIENTRY * PFNGLWRITEMASKEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);
-
-#define glBeginVertexShaderEXT GLEW_GET_FUN(__glewBeginVertexShaderEXT)
-#define glBindLightParameterEXT GLEW_GET_FUN(__glewBindLightParameterEXT)
-#define glBindMaterialParameterEXT GLEW_GET_FUN(__glewBindMaterialParameterEXT)
-#define glBindParameterEXT GLEW_GET_FUN(__glewBindParameterEXT)
-#define glBindTexGenParameterEXT GLEW_GET_FUN(__glewBindTexGenParameterEXT)
-#define glBindTextureUnitParameterEXT GLEW_GET_FUN(__glewBindTextureUnitParameterEXT)
-#define glBindVertexShaderEXT GLEW_GET_FUN(__glewBindVertexShaderEXT)
-#define glDeleteVertexShaderEXT GLEW_GET_FUN(__glewDeleteVertexShaderEXT)
-#define glDisableVariantClientStateEXT GLEW_GET_FUN(__glewDisableVariantClientStateEXT)
-#define glEnableVariantClientStateEXT GLEW_GET_FUN(__glewEnableVariantClientStateEXT)
-#define glEndVertexShaderEXT GLEW_GET_FUN(__glewEndVertexShaderEXT)
-#define glExtractComponentEXT GLEW_GET_FUN(__glewExtractComponentEXT)
-#define glGenSymbolsEXT GLEW_GET_FUN(__glewGenSymbolsEXT)
-#define glGenVertexShadersEXT GLEW_GET_FUN(__glewGenVertexShadersEXT)
-#define glGetInvariantBooleanvEXT GLEW_GET_FUN(__glewGetInvariantBooleanvEXT)
-#define glGetInvariantFloatvEXT GLEW_GET_FUN(__glewGetInvariantFloatvEXT)
-#define glGetInvariantIntegervEXT GLEW_GET_FUN(__glewGetInvariantIntegervEXT)
-#define glGetLocalConstantBooleanvEXT GLEW_GET_FUN(__glewGetLocalConstantBooleanvEXT)
-#define glGetLocalConstantFloatvEXT GLEW_GET_FUN(__glewGetLocalConstantFloatvEXT)
-#define glGetLocalConstantIntegervEXT GLEW_GET_FUN(__glewGetLocalConstantIntegervEXT)
-#define glGetVariantBooleanvEXT GLEW_GET_FUN(__glewGetVariantBooleanvEXT)
-#define glGetVariantFloatvEXT GLEW_GET_FUN(__glewGetVariantFloatvEXT)
-#define glGetVariantIntegervEXT GLEW_GET_FUN(__glewGetVariantIntegervEXT)
-#define glGetVariantPointervEXT GLEW_GET_FUN(__glewGetVariantPointervEXT)
-#define glInsertComponentEXT GLEW_GET_FUN(__glewInsertComponentEXT)
-#define glIsVariantEnabledEXT GLEW_GET_FUN(__glewIsVariantEnabledEXT)
-#define glSetInvariantEXT GLEW_GET_FUN(__glewSetInvariantEXT)
-#define glSetLocalConstantEXT GLEW_GET_FUN(__glewSetLocalConstantEXT)
-#define glShaderOp1EXT GLEW_GET_FUN(__glewShaderOp1EXT)
-#define glShaderOp2EXT GLEW_GET_FUN(__glewShaderOp2EXT)
-#define glShaderOp3EXT GLEW_GET_FUN(__glewShaderOp3EXT)
-#define glSwizzleEXT GLEW_GET_FUN(__glewSwizzleEXT)
-#define glVariantPointerEXT GLEW_GET_FUN(__glewVariantPointerEXT)
-#define glVariantbvEXT GLEW_GET_FUN(__glewVariantbvEXT)
-#define glVariantdvEXT GLEW_GET_FUN(__glewVariantdvEXT)
-#define glVariantfvEXT GLEW_GET_FUN(__glewVariantfvEXT)
-#define glVariantivEXT GLEW_GET_FUN(__glewVariantivEXT)
-#define glVariantsvEXT GLEW_GET_FUN(__glewVariantsvEXT)
-#define glVariantubvEXT GLEW_GET_FUN(__glewVariantubvEXT)
-#define glVariantuivEXT GLEW_GET_FUN(__glewVariantuivEXT)
-#define glVariantusvEXT GLEW_GET_FUN(__glewVariantusvEXT)
-#define glWriteMaskEXT GLEW_GET_FUN(__glewWriteMaskEXT)
-
-#define GLEW_EXT_vertex_shader GLEW_GET_VAR(__GLEW_EXT_vertex_shader)
-
-#endif /* GL_EXT_vertex_shader */
-
-/* ------------------------ GL_EXT_vertex_weighting ------------------------ */
-
-#ifndef GL_EXT_vertex_weighting
-#define GL_EXT_vertex_weighting 1
-
-#define GL_MODELVIEW0_STACK_DEPTH_EXT 0x0BA3
-#define GL_MODELVIEW0_MATRIX_EXT 0x0BA6
-#define GL_MODELVIEW0_EXT 0x1700
-#define GL_MODELVIEW1_STACK_DEPTH_EXT 0x8502
-#define GL_MODELVIEW1_MATRIX_EXT 0x8506
-#define GL_VERTEX_WEIGHTING_EXT 0x8509
-#define GL_MODELVIEW1_EXT 0x850A
-#define GL_CURRENT_VERTEX_WEIGHT_EXT 0x850B
-#define GL_VERTEX_WEIGHT_ARRAY_EXT 0x850C
-#define GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT 0x850D
-#define GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT 0x850E
-#define GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT 0x850F
-#define GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT 0x8510
-
-typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, void* pointer);
-typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTFEXTPROC) (GLfloat weight);
-typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTFVEXTPROC) (GLfloat* weight);
-
-#define glVertexWeightPointerEXT GLEW_GET_FUN(__glewVertexWeightPointerEXT)
-#define glVertexWeightfEXT GLEW_GET_FUN(__glewVertexWeightfEXT)
-#define glVertexWeightfvEXT GLEW_GET_FUN(__glewVertexWeightfvEXT)
-
-#define GLEW_EXT_vertex_weighting GLEW_GET_VAR(__GLEW_EXT_vertex_weighting)
-
-#endif /* GL_EXT_vertex_weighting */
-
-/* ---------------------- GL_GREMEDY_frame_terminator ---------------------- */
-
-#ifndef GL_GREMEDY_frame_terminator
-#define GL_GREMEDY_frame_terminator 1
-
-typedef void (GLAPIENTRY * PFNGLFRAMETERMINATORGREMEDYPROC) (void);
-
-#define glFrameTerminatorGREMEDY GLEW_GET_FUN(__glewFrameTerminatorGREMEDY)
-
-#define GLEW_GREMEDY_frame_terminator GLEW_GET_VAR(__GLEW_GREMEDY_frame_terminator)
-
-#endif /* GL_GREMEDY_frame_terminator */
-
-/* ------------------------ GL_GREMEDY_string_marker ----------------------- */
-
-#ifndef GL_GREMEDY_string_marker
-#define GL_GREMEDY_string_marker 1
-
-typedef void (GLAPIENTRY * PFNGLSTRINGMARKERGREMEDYPROC) (GLsizei len, const void* string);
-
-#define glStringMarkerGREMEDY GLEW_GET_FUN(__glewStringMarkerGREMEDY)
-
-#define GLEW_GREMEDY_string_marker GLEW_GET_VAR(__GLEW_GREMEDY_string_marker)
-
-#endif /* GL_GREMEDY_string_marker */
-
-/* --------------------- GL_HP_convolution_border_modes -------------------- */
-
-#ifndef GL_HP_convolution_border_modes
-#define GL_HP_convolution_border_modes 1
-
-#define GLEW_HP_convolution_border_modes GLEW_GET_VAR(__GLEW_HP_convolution_border_modes)
-
-#endif /* GL_HP_convolution_border_modes */
-
-/* ------------------------- GL_HP_image_transform ------------------------- */
-
-#ifndef GL_HP_image_transform
-#define GL_HP_image_transform 1
-
-typedef void (GLAPIENTRY * PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERFHPPROC) (GLenum target, GLenum pname, const GLfloat param);
-typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERIHPPROC) (GLenum target, GLenum pname, const GLint param);
-typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, const GLint* params);
-
-#define glGetImageTransformParameterfvHP GLEW_GET_FUN(__glewGetImageTransformParameterfvHP)
-#define glGetImageTransformParameterivHP GLEW_GET_FUN(__glewGetImageTransformParameterivHP)
-#define glImageTransformParameterfHP GLEW_GET_FUN(__glewImageTransformParameterfHP)
-#define glImageTransformParameterfvHP GLEW_GET_FUN(__glewImageTransformParameterfvHP)
-#define glImageTransformParameteriHP GLEW_GET_FUN(__glewImageTransformParameteriHP)
-#define glImageTransformParameterivHP GLEW_GET_FUN(__glewImageTransformParameterivHP)
-
-#define GLEW_HP_image_transform GLEW_GET_VAR(__GLEW_HP_image_transform)
-
-#endif /* GL_HP_image_transform */
-
-/* -------------------------- GL_HP_occlusion_test ------------------------- */
-
-#ifndef GL_HP_occlusion_test
-#define GL_HP_occlusion_test 1
-
-#define GL_OCCLUSION_TEST_HP 0x8165
-#define GL_OCCLUSION_TEST_RESULT_HP 0x8166
-
-#define GLEW_HP_occlusion_test GLEW_GET_VAR(__GLEW_HP_occlusion_test)
-
-#endif /* GL_HP_occlusion_test */
-
-/* ------------------------- GL_HP_texture_lighting ------------------------ */
-
-#ifndef GL_HP_texture_lighting
-#define GL_HP_texture_lighting 1
-
-#define GLEW_HP_texture_lighting GLEW_GET_VAR(__GLEW_HP_texture_lighting)
-
-#endif /* GL_HP_texture_lighting */
-
-/* --------------------------- GL_IBM_cull_vertex -------------------------- */
-
-#ifndef GL_IBM_cull_vertex
-#define GL_IBM_cull_vertex 1
-
-#define GL_CULL_VERTEX_IBM 103050
-
-#define GLEW_IBM_cull_vertex GLEW_GET_VAR(__GLEW_IBM_cull_vertex)
-
-#endif /* GL_IBM_cull_vertex */
-
-/* ---------------------- GL_IBM_multimode_draw_arrays --------------------- */
-
-#ifndef GL_IBM_multimode_draw_arrays
-#define GL_IBM_multimode_draw_arrays 1
-
-typedef void (GLAPIENTRY * PFNGLMULTIMODEDRAWARRAYSIBMPROC) (const GLenum* mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride);
-typedef void (GLAPIENTRY * PFNGLMULTIMODEDRAWELEMENTSIBMPROC) (const GLenum* mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride);
-
-#define glMultiModeDrawArraysIBM GLEW_GET_FUN(__glewMultiModeDrawArraysIBM)
-#define glMultiModeDrawElementsIBM GLEW_GET_FUN(__glewMultiModeDrawElementsIBM)
-
-#define GLEW_IBM_multimode_draw_arrays GLEW_GET_VAR(__GLEW_IBM_multimode_draw_arrays)
-
-#endif /* GL_IBM_multimode_draw_arrays */
-
-/* ------------------------- GL_IBM_rasterpos_clip ------------------------- */
-
-#ifndef GL_IBM_rasterpos_clip
-#define GL_IBM_rasterpos_clip 1
-
-#define GL_RASTER_POSITION_UNCLIPPED_IBM 103010
-
-#define GLEW_IBM_rasterpos_clip GLEW_GET_VAR(__GLEW_IBM_rasterpos_clip)
-
-#endif /* GL_IBM_rasterpos_clip */
-
-/* --------------------------- GL_IBM_static_data -------------------------- */
-
-#ifndef GL_IBM_static_data
-#define GL_IBM_static_data 1
-
-#define GL_ALL_STATIC_DATA_IBM 103060
-#define GL_STATIC_VERTEX_ARRAY_IBM 103061
-
-#define GLEW_IBM_static_data GLEW_GET_VAR(__GLEW_IBM_static_data)
-
-#endif /* GL_IBM_static_data */
-
-/* --------------------- GL_IBM_texture_mirrored_repeat -------------------- */
-
-#ifndef GL_IBM_texture_mirrored_repeat
-#define GL_IBM_texture_mirrored_repeat 1
-
-#define GL_MIRRORED_REPEAT_IBM 0x8370
-
-#define GLEW_IBM_texture_mirrored_repeat GLEW_GET_VAR(__GLEW_IBM_texture_mirrored_repeat)
-
-#endif /* GL_IBM_texture_mirrored_repeat */
-
-/* ----------------------- GL_IBM_vertex_array_lists ----------------------- */
-
-#ifndef GL_IBM_vertex_array_lists
-#define GL_IBM_vertex_array_lists 1
-
-#define GL_VERTEX_ARRAY_LIST_IBM 103070
-#define GL_NORMAL_ARRAY_LIST_IBM 103071
-#define GL_COLOR_ARRAY_LIST_IBM 103072
-#define GL_INDEX_ARRAY_LIST_IBM 103073
-#define GL_TEXTURE_COORD_ARRAY_LIST_IBM 103074
-#define GL_EDGE_FLAG_ARRAY_LIST_IBM 103075
-#define GL_FOG_COORDINATE_ARRAY_LIST_IBM 103076
-#define GL_SECONDARY_COLOR_ARRAY_LIST_IBM 103077
-#define GL_VERTEX_ARRAY_LIST_STRIDE_IBM 103080
-#define GL_NORMAL_ARRAY_LIST_STRIDE_IBM 103081
-#define GL_COLOR_ARRAY_LIST_STRIDE_IBM 103082
-#define GL_INDEX_ARRAY_LIST_STRIDE_IBM 103083
-#define GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM 103084
-#define GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM 103085
-#define GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM 103086
-#define GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM 103087
-
-typedef void (GLAPIENTRY * PFNGLCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);
-typedef void (GLAPIENTRY * PFNGLEDGEFLAGPOINTERLISTIBMPROC) (GLint stride, const GLboolean ** pointer, GLint ptrstride);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDPOINTERLISTIBMPROC) (GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);
-typedef void (GLAPIENTRY * PFNGLINDEXPOINTERLISTIBMPROC) (GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);
-typedef void (GLAPIENTRY * PFNGLNORMALPOINTERLISTIBMPROC) (GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);
-typedef void (GLAPIENTRY * PFNGLTEXCOORDPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);
-typedef void (GLAPIENTRY * PFNGLVERTEXPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);
-
-#define glColorPointerListIBM GLEW_GET_FUN(__glewColorPointerListIBM)
-#define glEdgeFlagPointerListIBM GLEW_GET_FUN(__glewEdgeFlagPointerListIBM)
-#define glFogCoordPointerListIBM GLEW_GET_FUN(__glewFogCoordPointerListIBM)
-#define glIndexPointerListIBM GLEW_GET_FUN(__glewIndexPointerListIBM)
-#define glNormalPointerListIBM GLEW_GET_FUN(__glewNormalPointerListIBM)
-#define glSecondaryColorPointerListIBM GLEW_GET_FUN(__glewSecondaryColorPointerListIBM)
-#define glTexCoordPointerListIBM GLEW_GET_FUN(__glewTexCoordPointerListIBM)
-#define glVertexPointerListIBM GLEW_GET_FUN(__glewVertexPointerListIBM)
-
-#define GLEW_IBM_vertex_array_lists GLEW_GET_VAR(__GLEW_IBM_vertex_array_lists)
-
-#endif /* GL_IBM_vertex_array_lists */
-
-/* -------------------------- GL_INGR_color_clamp -------------------------- */
-
-#ifndef GL_INGR_color_clamp
-#define GL_INGR_color_clamp 1
-
-#define GL_RED_MIN_CLAMP_INGR 0x8560
-#define GL_GREEN_MIN_CLAMP_INGR 0x8561
-#define GL_BLUE_MIN_CLAMP_INGR 0x8562
-#define GL_ALPHA_MIN_CLAMP_INGR 0x8563
-#define GL_RED_MAX_CLAMP_INGR 0x8564
-#define GL_GREEN_MAX_CLAMP_INGR 0x8565
-#define GL_BLUE_MAX_CLAMP_INGR 0x8566
-#define GL_ALPHA_MAX_CLAMP_INGR 0x8567
-
-#define GLEW_INGR_color_clamp GLEW_GET_VAR(__GLEW_INGR_color_clamp)
-
-#endif /* GL_INGR_color_clamp */
-
-/* ------------------------- GL_INGR_interlace_read ------------------------ */
-
-#ifndef GL_INGR_interlace_read
-#define GL_INGR_interlace_read 1
-
-#define GL_INTERLACE_READ_INGR 0x8568
-
-#define GLEW_INGR_interlace_read GLEW_GET_VAR(__GLEW_INGR_interlace_read)
-
-#endif /* GL_INGR_interlace_read */
-
-/* ------------------------ GL_INTEL_parallel_arrays ----------------------- */
-
-#ifndef GL_INTEL_parallel_arrays
-#define GL_INTEL_parallel_arrays 1
-
-#define GL_PARALLEL_ARRAYS_INTEL 0x83F4
-#define GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL 0x83F5
-#define GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL 0x83F6
-#define GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL 0x83F7
-#define GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL 0x83F8
-
-typedef void (GLAPIENTRY * PFNGLCOLORPOINTERVINTELPROC) (GLint size, GLenum type, const void** pointer);
-typedef void (GLAPIENTRY * PFNGLNORMALPOINTERVINTELPROC) (GLenum type, const void** pointer);
-typedef void (GLAPIENTRY * PFNGLTEXCOORDPOINTERVINTELPROC) (GLint size, GLenum type, const void** pointer);
-typedef void (GLAPIENTRY * PFNGLVERTEXPOINTERVINTELPROC) (GLint size, GLenum type, const void** pointer);
-
-#define glColorPointervINTEL GLEW_GET_FUN(__glewColorPointervINTEL)
-#define glNormalPointervINTEL GLEW_GET_FUN(__glewNormalPointervINTEL)
-#define glTexCoordPointervINTEL GLEW_GET_FUN(__glewTexCoordPointervINTEL)
-#define glVertexPointervINTEL GLEW_GET_FUN(__glewVertexPointervINTEL)
-
-#define GLEW_INTEL_parallel_arrays GLEW_GET_VAR(__GLEW_INTEL_parallel_arrays)
-
-#endif /* GL_INTEL_parallel_arrays */
-
-/* ------------------------ GL_INTEL_texture_scissor ----------------------- */
-
-#ifndef GL_INTEL_texture_scissor
-#define GL_INTEL_texture_scissor 1
-
-typedef void (GLAPIENTRY * PFNGLTEXSCISSORFUNCINTELPROC) (GLenum target, GLenum lfunc, GLenum hfunc);
-typedef void (GLAPIENTRY * PFNGLTEXSCISSORINTELPROC) (GLenum target, GLclampf tlow, GLclampf thigh);
-
-#define glTexScissorFuncINTEL GLEW_GET_FUN(__glewTexScissorFuncINTEL)
-#define glTexScissorINTEL GLEW_GET_FUN(__glewTexScissorINTEL)
-
-#define GLEW_INTEL_texture_scissor GLEW_GET_VAR(__GLEW_INTEL_texture_scissor)
-
-#endif /* GL_INTEL_texture_scissor */
-
-/* -------------------------- GL_KTX_buffer_region ------------------------- */
-
-#ifndef GL_KTX_buffer_region
-#define GL_KTX_buffer_region 1
-
-#define GL_KTX_FRONT_REGION 0x0
-#define GL_KTX_BACK_REGION 0x1
-#define GL_KTX_Z_REGION 0x2
-#define GL_KTX_STENCIL_REGION 0x3
-
-typedef GLuint (GLAPIENTRY * PFNGLBUFFERREGIONENABLEDEXTPROC) (void);
-typedef void (GLAPIENTRY * PFNGLDELETEBUFFERREGIONEXTPROC) (GLenum region);
-typedef void (GLAPIENTRY * PFNGLDRAWBUFFERREGIONEXTPROC) (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height, GLint xDest, GLint yDest);
-typedef GLuint (GLAPIENTRY * PFNGLNEWBUFFERREGIONEXTPROC) (GLenum region);
-typedef void (GLAPIENTRY * PFNGLREADBUFFERREGIONEXTPROC) (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height);
-
-#define glBufferRegionEnabledEXT GLEW_GET_FUN(__glewBufferRegionEnabledEXT)
-#define glDeleteBufferRegionEXT GLEW_GET_FUN(__glewDeleteBufferRegionEXT)
-#define glDrawBufferRegionEXT GLEW_GET_FUN(__glewDrawBufferRegionEXT)
-#define glNewBufferRegionEXT GLEW_GET_FUN(__glewNewBufferRegionEXT)
-#define glReadBufferRegionEXT GLEW_GET_FUN(__glewReadBufferRegionEXT)
-
-#define GLEW_KTX_buffer_region GLEW_GET_VAR(__GLEW_KTX_buffer_region)
-
-#endif /* GL_KTX_buffer_region */
-
-/* ------------------------- GL_MESAX_texture_stack ------------------------ */
-
-#ifndef GL_MESAX_texture_stack
-#define GL_MESAX_texture_stack 1
-
-#define GL_TEXTURE_1D_STACK_MESAX 0x8759
-#define GL_TEXTURE_2D_STACK_MESAX 0x875A
-#define GL_PROXY_TEXTURE_1D_STACK_MESAX 0x875B
-#define GL_PROXY_TEXTURE_2D_STACK_MESAX 0x875C
-#define GL_TEXTURE_1D_STACK_BINDING_MESAX 0x875D
-#define GL_TEXTURE_2D_STACK_BINDING_MESAX 0x875E
-
-#define GLEW_MESAX_texture_stack GLEW_GET_VAR(__GLEW_MESAX_texture_stack)
-
-#endif /* GL_MESAX_texture_stack */
-
-/* -------------------------- GL_MESA_pack_invert -------------------------- */
-
-#ifndef GL_MESA_pack_invert
-#define GL_MESA_pack_invert 1
-
-#define GL_PACK_INVERT_MESA 0x8758
-
-#define GLEW_MESA_pack_invert GLEW_GET_VAR(__GLEW_MESA_pack_invert)
-
-#endif /* GL_MESA_pack_invert */
-
-/* ------------------------- GL_MESA_resize_buffers ------------------------ */
-
-#ifndef GL_MESA_resize_buffers
-#define GL_MESA_resize_buffers 1
-
-typedef void (GLAPIENTRY * PFNGLRESIZEBUFFERSMESAPROC) (void);
-
-#define glResizeBuffersMESA GLEW_GET_FUN(__glewResizeBuffersMESA)
-
-#define GLEW_MESA_resize_buffers GLEW_GET_VAR(__GLEW_MESA_resize_buffers)
-
-#endif /* GL_MESA_resize_buffers */
-
-/* --------------------------- GL_MESA_window_pos -------------------------- */
-
-#ifndef GL_MESA_window_pos
-#define GL_MESA_window_pos 1
-
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DMESAPROC) (GLdouble x, GLdouble y);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DVMESAPROC) (const GLdouble* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FMESAPROC) (GLfloat x, GLfloat y);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FVMESAPROC) (const GLfloat* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IMESAPROC) (GLint x, GLint y);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IVMESAPROC) (const GLint* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SMESAPROC) (GLshort x, GLshort y);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SVMESAPROC) (const GLshort* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DMESAPROC) (GLdouble x, GLdouble y, GLdouble z);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DVMESAPROC) (const GLdouble* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FMESAPROC) (GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FVMESAPROC) (const GLfloat* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IMESAPROC) (GLint x, GLint y, GLint z);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IVMESAPROC) (const GLint* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SMESAPROC) (GLshort x, GLshort y, GLshort z);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SVMESAPROC) (const GLshort* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4DMESAPROC) (GLdouble x, GLdouble y, GLdouble z, GLdouble);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4DVMESAPROC) (const GLdouble* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4FMESAPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4FVMESAPROC) (const GLfloat* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4IMESAPROC) (GLint x, GLint y, GLint z, GLint w);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4IVMESAPROC) (const GLint* p);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4SMESAPROC) (GLshort x, GLshort y, GLshort z, GLshort w);
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4SVMESAPROC) (const GLshort* p);
-
-#define glWindowPos2dMESA GLEW_GET_FUN(__glewWindowPos2dMESA)
-#define glWindowPos2dvMESA GLEW_GET_FUN(__glewWindowPos2dvMESA)
-#define glWindowPos2fMESA GLEW_GET_FUN(__glewWindowPos2fMESA)
-#define glWindowPos2fvMESA GLEW_GET_FUN(__glewWindowPos2fvMESA)
-#define glWindowPos2iMESA GLEW_GET_FUN(__glewWindowPos2iMESA)
-#define glWindowPos2ivMESA GLEW_GET_FUN(__glewWindowPos2ivMESA)
-#define glWindowPos2sMESA GLEW_GET_FUN(__glewWindowPos2sMESA)
-#define glWindowPos2svMESA GLEW_GET_FUN(__glewWindowPos2svMESA)
-#define glWindowPos3dMESA GLEW_GET_FUN(__glewWindowPos3dMESA)
-#define glWindowPos3dvMESA GLEW_GET_FUN(__glewWindowPos3dvMESA)
-#define glWindowPos3fMESA GLEW_GET_FUN(__glewWindowPos3fMESA)
-#define glWindowPos3fvMESA GLEW_GET_FUN(__glewWindowPos3fvMESA)
-#define glWindowPos3iMESA GLEW_GET_FUN(__glewWindowPos3iMESA)
-#define glWindowPos3ivMESA GLEW_GET_FUN(__glewWindowPos3ivMESA)
-#define glWindowPos3sMESA GLEW_GET_FUN(__glewWindowPos3sMESA)
-#define glWindowPos3svMESA GLEW_GET_FUN(__glewWindowPos3svMESA)
-#define glWindowPos4dMESA GLEW_GET_FUN(__glewWindowPos4dMESA)
-#define glWindowPos4dvMESA GLEW_GET_FUN(__glewWindowPos4dvMESA)
-#define glWindowPos4fMESA GLEW_GET_FUN(__glewWindowPos4fMESA)
-#define glWindowPos4fvMESA GLEW_GET_FUN(__glewWindowPos4fvMESA)
-#define glWindowPos4iMESA GLEW_GET_FUN(__glewWindowPos4iMESA)
-#define glWindowPos4ivMESA GLEW_GET_FUN(__glewWindowPos4ivMESA)
-#define glWindowPos4sMESA GLEW_GET_FUN(__glewWindowPos4sMESA)
-#define glWindowPos4svMESA GLEW_GET_FUN(__glewWindowPos4svMESA)
-
-#define GLEW_MESA_window_pos GLEW_GET_VAR(__GLEW_MESA_window_pos)
-
-#endif /* GL_MESA_window_pos */
-
-/* ------------------------- GL_MESA_ycbcr_texture ------------------------- */
-
-#ifndef GL_MESA_ycbcr_texture
-#define GL_MESA_ycbcr_texture 1
-
-#define GL_UNSIGNED_SHORT_8_8_MESA 0x85BA
-#define GL_UNSIGNED_SHORT_8_8_REV_MESA 0x85BB
-#define GL_YCBCR_MESA 0x8757
-
-#define GLEW_MESA_ycbcr_texture GLEW_GET_VAR(__GLEW_MESA_ycbcr_texture)
-
-#endif /* GL_MESA_ycbcr_texture */
-
-/* --------------------------- GL_NV_blend_square -------------------------- */
-
-#ifndef GL_NV_blend_square
-#define GL_NV_blend_square 1
-
-#define GLEW_NV_blend_square GLEW_GET_VAR(__GLEW_NV_blend_square)
-
-#endif /* GL_NV_blend_square */
-
-/* ------------------------ GL_NV_conditional_render ----------------------- */
-
-#ifndef GL_NV_conditional_render
-#define GL_NV_conditional_render 1
-
-#define GL_QUERY_WAIT_NV 0x8E13
-#define GL_QUERY_NO_WAIT_NV 0x8E14
-#define GL_QUERY_BY_REGION_WAIT_NV 0x8E15
-#define GL_QUERY_BY_REGION_NO_WAIT_NV 0x8E16
-
-typedef void (GLAPIENTRY * PFNGLBEGINCONDITIONALRENDERNVPROC) (GLuint id, GLenum mode);
-typedef void (GLAPIENTRY * PFNGLENDCONDITIONALRENDERNVPROC) (void);
-
-#define glBeginConditionalRenderNV GLEW_GET_FUN(__glewBeginConditionalRenderNV)
-#define glEndConditionalRenderNV GLEW_GET_FUN(__glewEndConditionalRenderNV)
-
-#define GLEW_NV_conditional_render GLEW_GET_VAR(__GLEW_NV_conditional_render)
-
-#endif /* GL_NV_conditional_render */
-
-/* ----------------------- GL_NV_copy_depth_to_color ----------------------- */
-
-#ifndef GL_NV_copy_depth_to_color
-#define GL_NV_copy_depth_to_color 1
-
-#define GL_DEPTH_STENCIL_TO_RGBA_NV 0x886E
-#define GL_DEPTH_STENCIL_TO_BGRA_NV 0x886F
-
-#define GLEW_NV_copy_depth_to_color GLEW_GET_VAR(__GLEW_NV_copy_depth_to_color)
-
-#endif /* GL_NV_copy_depth_to_color */
-
-/* ---------------------------- GL_NV_copy_image --------------------------- */
-
-#ifndef GL_NV_copy_image
-#define GL_NV_copy_image 1
-
-typedef void (GLAPIENTRY * PFNGLCOPYIMAGESUBDATANVPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
-
-#define glCopyImageSubDataNV GLEW_GET_FUN(__glewCopyImageSubDataNV)
-
-#define GLEW_NV_copy_image GLEW_GET_VAR(__GLEW_NV_copy_image)
-
-#endif /* GL_NV_copy_image */
-
-/* ------------------------ GL_NV_depth_buffer_float ----------------------- */
-
-#ifndef GL_NV_depth_buffer_float
-#define GL_NV_depth_buffer_float 1
-
-#define GL_DEPTH_COMPONENT32F_NV 0x8DAB
-#define GL_DEPTH32F_STENCIL8_NV 0x8DAC
-#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV 0x8DAD
-#define GL_DEPTH_BUFFER_FLOAT_MODE_NV 0x8DAF
-
-typedef void (GLAPIENTRY * PFNGLCLEARDEPTHDNVPROC) (GLdouble depth);
-typedef void (GLAPIENTRY * PFNGLDEPTHBOUNDSDNVPROC) (GLdouble zmin, GLdouble zmax);
-typedef void (GLAPIENTRY * PFNGLDEPTHRANGEDNVPROC) (GLdouble zNear, GLdouble zFar);
-
-#define glClearDepthdNV GLEW_GET_FUN(__glewClearDepthdNV)
-#define glDepthBoundsdNV GLEW_GET_FUN(__glewDepthBoundsdNV)
-#define glDepthRangedNV GLEW_GET_FUN(__glewDepthRangedNV)
-
-#define GLEW_NV_depth_buffer_float GLEW_GET_VAR(__GLEW_NV_depth_buffer_float)
-
-#endif /* GL_NV_depth_buffer_float */
-
-/* --------------------------- GL_NV_depth_clamp --------------------------- */
-
-#ifndef GL_NV_depth_clamp
-#define GL_NV_depth_clamp 1
-
-#define GL_DEPTH_CLAMP_NV 0x864F
-
-#define GLEW_NV_depth_clamp GLEW_GET_VAR(__GLEW_NV_depth_clamp)
-
-#endif /* GL_NV_depth_clamp */
-
-/* ---------------------- GL_NV_depth_range_unclamped ---------------------- */
-
-#ifndef GL_NV_depth_range_unclamped
-#define GL_NV_depth_range_unclamped 1
-
-#define GL_SAMPLE_COUNT_BITS_NV 0x8864
-#define GL_CURRENT_SAMPLE_COUNT_QUERY_NV 0x8865
-#define GL_QUERY_RESULT_NV 0x8866
-#define GL_QUERY_RESULT_AVAILABLE_NV 0x8867
-#define GL_SAMPLE_COUNT_NV 0x8914
-
-#define GLEW_NV_depth_range_unclamped GLEW_GET_VAR(__GLEW_NV_depth_range_unclamped)
-
-#endif /* GL_NV_depth_range_unclamped */
-
-/* ---------------------------- GL_NV_evaluators --------------------------- */
-
-#ifndef GL_NV_evaluators
-#define GL_NV_evaluators 1
-
-#define GL_EVAL_2D_NV 0x86C0
-#define GL_EVAL_TRIANGULAR_2D_NV 0x86C1
-#define GL_MAP_TESSELLATION_NV 0x86C2
-#define GL_MAP_ATTRIB_U_ORDER_NV 0x86C3
-#define GL_MAP_ATTRIB_V_ORDER_NV 0x86C4
-#define GL_EVAL_FRACTIONAL_TESSELLATION_NV 0x86C5
-#define GL_EVAL_VERTEX_ATTRIB0_NV 0x86C6
-#define GL_EVAL_VERTEX_ATTRIB1_NV 0x86C7
-#define GL_EVAL_VERTEX_ATTRIB2_NV 0x86C8
-#define GL_EVAL_VERTEX_ATTRIB3_NV 0x86C9
-#define GL_EVAL_VERTEX_ATTRIB4_NV 0x86CA
-#define GL_EVAL_VERTEX_ATTRIB5_NV 0x86CB
-#define GL_EVAL_VERTEX_ATTRIB6_NV 0x86CC
-#define GL_EVAL_VERTEX_ATTRIB7_NV 0x86CD
-#define GL_EVAL_VERTEX_ATTRIB8_NV 0x86CE
-#define GL_EVAL_VERTEX_ATTRIB9_NV 0x86CF
-#define GL_EVAL_VERTEX_ATTRIB10_NV 0x86D0
-#define GL_EVAL_VERTEX_ATTRIB11_NV 0x86D1
-#define GL_EVAL_VERTEX_ATTRIB12_NV 0x86D2
-#define GL_EVAL_VERTEX_ATTRIB13_NV 0x86D3
-#define GL_EVAL_VERTEX_ATTRIB14_NV 0x86D4
-#define GL_EVAL_VERTEX_ATTRIB15_NV 0x86D5
-#define GL_MAX_MAP_TESSELLATION_NV 0x86D6
-#define GL_MAX_RATIONAL_EVAL_ORDER_NV 0x86D7
-
-typedef void (GLAPIENTRY * PFNGLEVALMAPSNVPROC) (GLenum target, GLenum mode);
-typedef void (GLAPIENTRY * PFNGLGETMAPATTRIBPARAMETERFVNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETMAPATTRIBPARAMETERIVNVPROC) (GLenum target, GLuint index, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETMAPCONTROLPOINTSNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, void* points);
-typedef void (GLAPIENTRY * PFNGLGETMAPPARAMETERFVNVPROC) (GLenum target, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETMAPPARAMETERIVNVPROC) (GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLMAPCONTROLPOINTSNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const void* points);
-typedef void (GLAPIENTRY * PFNGLMAPPARAMETERFVNVPROC) (GLenum target, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLMAPPARAMETERIVNVPROC) (GLenum target, GLenum pname, const GLint* params);
-
-#define glEvalMapsNV GLEW_GET_FUN(__glewEvalMapsNV)
-#define glGetMapAttribParameterfvNV GLEW_GET_FUN(__glewGetMapAttribParameterfvNV)
-#define glGetMapAttribParameterivNV GLEW_GET_FUN(__glewGetMapAttribParameterivNV)
-#define glGetMapControlPointsNV GLEW_GET_FUN(__glewGetMapControlPointsNV)
-#define glGetMapParameterfvNV GLEW_GET_FUN(__glewGetMapParameterfvNV)
-#define glGetMapParameterivNV GLEW_GET_FUN(__glewGetMapParameterivNV)
-#define glMapControlPointsNV GLEW_GET_FUN(__glewMapControlPointsNV)
-#define glMapParameterfvNV GLEW_GET_FUN(__glewMapParameterfvNV)
-#define glMapParameterivNV GLEW_GET_FUN(__glewMapParameterivNV)
-
-#define GLEW_NV_evaluators GLEW_GET_VAR(__GLEW_NV_evaluators)
-
-#endif /* GL_NV_evaluators */
-
-/* ----------------------- GL_NV_explicit_multisample ---------------------- */
-
-#ifndef GL_NV_explicit_multisample
-#define GL_NV_explicit_multisample 1
-
-#define GL_SAMPLE_POSITION_NV 0x8E50
-#define GL_SAMPLE_MASK_NV 0x8E51
-#define GL_SAMPLE_MASK_VALUE_NV 0x8E52
-#define GL_TEXTURE_BINDING_RENDERBUFFER_NV 0x8E53
-#define GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV 0x8E54
-#define GL_TEXTURE_RENDERBUFFER_NV 0x8E55
-#define GL_SAMPLER_RENDERBUFFER_NV 0x8E56
-#define GL_INT_SAMPLER_RENDERBUFFER_NV 0x8E57
-#define GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV 0x8E58
-#define GL_MAX_SAMPLE_MASK_WORDS_NV 0x8E59
-
-typedef void (GLAPIENTRY * PFNGLGETMULTISAMPLEFVNVPROC) (GLenum pname, GLuint index, GLfloat* val);
-typedef void (GLAPIENTRY * PFNGLSAMPLEMASKINDEXEDNVPROC) (GLuint index, GLbitfield mask);
-typedef void (GLAPIENTRY * PFNGLTEXRENDERBUFFERNVPROC) (GLenum target, GLuint renderbuffer);
-
-#define glGetMultisamplefvNV GLEW_GET_FUN(__glewGetMultisamplefvNV)
-#define glSampleMaskIndexedNV GLEW_GET_FUN(__glewSampleMaskIndexedNV)
-#define glTexRenderbufferNV GLEW_GET_FUN(__glewTexRenderbufferNV)
-
-#define GLEW_NV_explicit_multisample GLEW_GET_VAR(__GLEW_NV_explicit_multisample)
-
-#endif /* GL_NV_explicit_multisample */
-
-/* ------------------------------ GL_NV_fence ------------------------------ */
-
-#ifndef GL_NV_fence
-#define GL_NV_fence 1
-
-#define GL_ALL_COMPLETED_NV 0x84F2
-#define GL_FENCE_STATUS_NV 0x84F3
-#define GL_FENCE_CONDITION_NV 0x84F4
-
-typedef void (GLAPIENTRY * PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint* fences);
-typedef void (GLAPIENTRY * PFNGLFINISHFENCENVPROC) (GLuint fence);
-typedef void (GLAPIENTRY * PFNGLGENFENCESNVPROC) (GLsizei n, GLuint* fences);
-typedef void (GLAPIENTRY * PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint* params);
-typedef GLboolean (GLAPIENTRY * PFNGLISFENCENVPROC) (GLuint fence);
-typedef void (GLAPIENTRY * PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
-typedef GLboolean (GLAPIENTRY * PFNGLTESTFENCENVPROC) (GLuint fence);
-
-#define glDeleteFencesNV GLEW_GET_FUN(__glewDeleteFencesNV)
-#define glFinishFenceNV GLEW_GET_FUN(__glewFinishFenceNV)
-#define glGenFencesNV GLEW_GET_FUN(__glewGenFencesNV)
-#define glGetFenceivNV GLEW_GET_FUN(__glewGetFenceivNV)
-#define glIsFenceNV GLEW_GET_FUN(__glewIsFenceNV)
-#define glSetFenceNV GLEW_GET_FUN(__glewSetFenceNV)
-#define glTestFenceNV GLEW_GET_FUN(__glewTestFenceNV)
-
-#define GLEW_NV_fence GLEW_GET_VAR(__GLEW_NV_fence)
-
-#endif /* GL_NV_fence */
-
-/* --------------------------- GL_NV_float_buffer -------------------------- */
-
-#ifndef GL_NV_float_buffer
-#define GL_NV_float_buffer 1
-
-#define GL_FLOAT_R_NV 0x8880
-#define GL_FLOAT_RG_NV 0x8881
-#define GL_FLOAT_RGB_NV 0x8882
-#define GL_FLOAT_RGBA_NV 0x8883
-#define GL_FLOAT_R16_NV 0x8884
-#define GL_FLOAT_R32_NV 0x8885
-#define GL_FLOAT_RG16_NV 0x8886
-#define GL_FLOAT_RG32_NV 0x8887
-#define GL_FLOAT_RGB16_NV 0x8888
-#define GL_FLOAT_RGB32_NV 0x8889
-#define GL_FLOAT_RGBA16_NV 0x888A
-#define GL_FLOAT_RGBA32_NV 0x888B
-#define GL_TEXTURE_FLOAT_COMPONENTS_NV 0x888C
-#define GL_FLOAT_CLEAR_COLOR_VALUE_NV 0x888D
-#define GL_FLOAT_RGBA_MODE_NV 0x888E
-
-#define GLEW_NV_float_buffer GLEW_GET_VAR(__GLEW_NV_float_buffer)
-
-#endif /* GL_NV_float_buffer */
-
-/* --------------------------- GL_NV_fog_distance -------------------------- */
-
-#ifndef GL_NV_fog_distance
-#define GL_NV_fog_distance 1
-
-#define GL_FOG_DISTANCE_MODE_NV 0x855A
-#define GL_EYE_RADIAL_NV 0x855B
-#define GL_EYE_PLANE_ABSOLUTE_NV 0x855C
-
-#define GLEW_NV_fog_distance GLEW_GET_VAR(__GLEW_NV_fog_distance)
-
-#endif /* GL_NV_fog_distance */
-
-/* ------------------------- GL_NV_fragment_program ------------------------ */
-
-#ifndef GL_NV_fragment_program
-#define GL_NV_fragment_program 1
-
-#define GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV 0x8868
-#define GL_FRAGMENT_PROGRAM_NV 0x8870
-#define GL_MAX_TEXTURE_COORDS_NV 0x8871
-#define GL_MAX_TEXTURE_IMAGE_UNITS_NV 0x8872
-#define GL_FRAGMENT_PROGRAM_BINDING_NV 0x8873
-#define GL_PROGRAM_ERROR_STRING_NV 0x8874
-
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLdouble *params);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLfloat *params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4DNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, const GLdouble v[]);
-typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4FNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, const GLfloat v[]);
-
-#define glGetProgramNamedParameterdvNV GLEW_GET_FUN(__glewGetProgramNamedParameterdvNV)
-#define glGetProgramNamedParameterfvNV GLEW_GET_FUN(__glewGetProgramNamedParameterfvNV)
-#define glProgramNamedParameter4dNV GLEW_GET_FUN(__glewProgramNamedParameter4dNV)
-#define glProgramNamedParameter4dvNV GLEW_GET_FUN(__glewProgramNamedParameter4dvNV)
-#define glProgramNamedParameter4fNV GLEW_GET_FUN(__glewProgramNamedParameter4fNV)
-#define glProgramNamedParameter4fvNV GLEW_GET_FUN(__glewProgramNamedParameter4fvNV)
-
-#define GLEW_NV_fragment_program GLEW_GET_VAR(__GLEW_NV_fragment_program)
-
-#endif /* GL_NV_fragment_program */
-
-/* ------------------------ GL_NV_fragment_program2 ------------------------ */
-
-#ifndef GL_NV_fragment_program2
-#define GL_NV_fragment_program2 1
-
-#define GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4
-#define GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5
-#define GL_MAX_PROGRAM_IF_DEPTH_NV 0x88F6
-#define GL_MAX_PROGRAM_LOOP_DEPTH_NV 0x88F7
-#define GL_MAX_PROGRAM_LOOP_COUNT_NV 0x88F8
-
-#define GLEW_NV_fragment_program2 GLEW_GET_VAR(__GLEW_NV_fragment_program2)
-
-#endif /* GL_NV_fragment_program2 */
-
-/* ------------------------ GL_NV_fragment_program4 ------------------------ */
-
-#ifndef GL_NV_fragment_program4
-#define GL_NV_fragment_program4 1
-
-#define GLEW_NV_fragment_program4 GLEW_GET_VAR(__GLEW_NV_fragment_program4)
-
-#endif /* GL_NV_fragment_program4 */
-
-/* --------------------- GL_NV_fragment_program_option --------------------- */
-
-#ifndef GL_NV_fragment_program_option
-#define GL_NV_fragment_program_option 1
-
-#define GLEW_NV_fragment_program_option GLEW_GET_VAR(__GLEW_NV_fragment_program_option)
-
-#endif /* GL_NV_fragment_program_option */
-
-/* ----------------- GL_NV_framebuffer_multisample_coverage ---------------- */
-
-#ifndef GL_NV_framebuffer_multisample_coverage
-#define GL_NV_framebuffer_multisample_coverage 1
-
-#define GL_RENDERBUFFER_COVERAGE_SAMPLES_NV 0x8CAB
-#define GL_RENDERBUFFER_COLOR_SAMPLES_NV 0x8E10
-#define GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV 0x8E11
-#define GL_MULTISAMPLE_COVERAGE_MODES_NV 0x8E12
-
-typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height);
-
-#define glRenderbufferStorageMultisampleCoverageNV GLEW_GET_FUN(__glewRenderbufferStorageMultisampleCoverageNV)
-
-#define GLEW_NV_framebuffer_multisample_coverage GLEW_GET_VAR(__GLEW_NV_framebuffer_multisample_coverage)
-
-#endif /* GL_NV_framebuffer_multisample_coverage */
-
-/* ------------------------ GL_NV_geometry_program4 ------------------------ */
-
-#ifndef GL_NV_geometry_program4
-#define GL_NV_geometry_program4 1
-
-#define GL_GEOMETRY_PROGRAM_NV 0x8C26
-#define GL_MAX_PROGRAM_OUTPUT_VERTICES_NV 0x8C27
-#define GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV 0x8C28
-
-typedef void (GLAPIENTRY * PFNGLPROGRAMVERTEXLIMITNVPROC) (GLenum target, GLint limit);
-
-#define glProgramVertexLimitNV GLEW_GET_FUN(__glewProgramVertexLimitNV)
-
-#define GLEW_NV_geometry_program4 GLEW_GET_VAR(__GLEW_NV_geometry_program4)
-
-#endif /* GL_NV_geometry_program4 */
-
-/* ------------------------- GL_NV_geometry_shader4 ------------------------ */
-
-#ifndef GL_NV_geometry_shader4
-#define GL_NV_geometry_shader4 1
-
-#define GLEW_NV_geometry_shader4 GLEW_GET_VAR(__GLEW_NV_geometry_shader4)
-
-#endif /* GL_NV_geometry_shader4 */
-
-/* --------------------------- GL_NV_gpu_program4 -------------------------- */
-
-#ifndef GL_NV_gpu_program4
-#define GL_NV_gpu_program4 1
-
-#define GL_MIN_PROGRAM_TEXEL_OFFSET_NV 0x8904
-#define GL_MAX_PROGRAM_TEXEL_OFFSET_NV 0x8905
-#define GL_PROGRAM_ATTRIB_COMPONENTS_NV 0x8906
-#define GL_PROGRAM_RESULT_COMPONENTS_NV 0x8907
-#define GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV 0x8908
-#define GL_MAX_PROGRAM_RESULT_COMPONENTS_NV 0x8909
-#define GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV 0x8DA5
-#define GL_MAX_PROGRAM_GENERIC_RESULTS_NV 0x8DA6
-
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4INVPROC) (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4IVNVPROC) (GLenum target, GLuint index, const GLint *params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4UINVPROC) (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4UIVNVPROC) (GLenum target, GLuint index, const GLuint *params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERSI4IVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLint *params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLuint *params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4INVPROC) (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC) (GLenum target, GLuint index, const GLint *params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4UINVPROC) (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC) (GLenum target, GLuint index, const GLuint *params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLint *params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLuint *params);
-
-#define glProgramEnvParameterI4iNV GLEW_GET_FUN(__glewProgramEnvParameterI4iNV)
-#define glProgramEnvParameterI4ivNV GLEW_GET_FUN(__glewProgramEnvParameterI4ivNV)
-#define glProgramEnvParameterI4uiNV GLEW_GET_FUN(__glewProgramEnvParameterI4uiNV)
-#define glProgramEnvParameterI4uivNV GLEW_GET_FUN(__glewProgramEnvParameterI4uivNV)
-#define glProgramEnvParametersI4ivNV GLEW_GET_FUN(__glewProgramEnvParametersI4ivNV)
-#define glProgramEnvParametersI4uivNV GLEW_GET_FUN(__glewProgramEnvParametersI4uivNV)
-#define glProgramLocalParameterI4iNV GLEW_GET_FUN(__glewProgramLocalParameterI4iNV)
-#define glProgramLocalParameterI4ivNV GLEW_GET_FUN(__glewProgramLocalParameterI4ivNV)
-#define glProgramLocalParameterI4uiNV GLEW_GET_FUN(__glewProgramLocalParameterI4uiNV)
-#define glProgramLocalParameterI4uivNV GLEW_GET_FUN(__glewProgramLocalParameterI4uivNV)
-#define glProgramLocalParametersI4ivNV GLEW_GET_FUN(__glewProgramLocalParametersI4ivNV)
-#define glProgramLocalParametersI4uivNV GLEW_GET_FUN(__glewProgramLocalParametersI4uivNV)
-
-#define GLEW_NV_gpu_program4 GLEW_GET_VAR(__GLEW_NV_gpu_program4)
-
-#endif /* GL_NV_gpu_program4 */
-
-/* --------------------------- GL_NV_gpu_program5 -------------------------- */
-
-#ifndef GL_NV_gpu_program5
-#define GL_NV_gpu_program5 1
-
-#define GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV 0x8E5A
-#define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV 0x8E5B
-#define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV 0x8E5C
-#define GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV 0x8E5D
-
-#define GLEW_NV_gpu_program5 GLEW_GET_VAR(__GLEW_NV_gpu_program5)
-
-#endif /* GL_NV_gpu_program5 */
-
-/* ------------------------- GL_NV_gpu_program_fp64 ------------------------ */
-
-#ifndef GL_NV_gpu_program_fp64
-#define GL_NV_gpu_program_fp64 1
-
-#define GLEW_NV_gpu_program_fp64 GLEW_GET_VAR(__GLEW_NV_gpu_program_fp64)
-
-#endif /* GL_NV_gpu_program_fp64 */
-
-/* --------------------------- GL_NV_gpu_shader5 --------------------------- */
-
-#ifndef GL_NV_gpu_shader5
-#define GL_NV_gpu_shader5 1
-
-#define GL_INT64_NV 0x140E
-#define GL_UNSIGNED_INT64_NV 0x140F
-#define GL_INT8_NV 0x8FE0
-#define GL_INT8_VEC2_NV 0x8FE1
-#define GL_INT8_VEC3_NV 0x8FE2
-#define GL_INT8_VEC4_NV 0x8FE3
-#define GL_INT16_NV 0x8FE4
-#define GL_INT16_VEC2_NV 0x8FE5
-#define GL_INT16_VEC3_NV 0x8FE6
-#define GL_INT16_VEC4_NV 0x8FE7
-#define GL_INT64_VEC2_NV 0x8FE9
-#define GL_INT64_VEC3_NV 0x8FEA
-#define GL_INT64_VEC4_NV 0x8FEB
-#define GL_UNSIGNED_INT8_NV 0x8FEC
-#define GL_UNSIGNED_INT8_VEC2_NV 0x8FED
-#define GL_UNSIGNED_INT8_VEC3_NV 0x8FEE
-#define GL_UNSIGNED_INT8_VEC4_NV 0x8FEF
-#define GL_UNSIGNED_INT16_NV 0x8FF0
-#define GL_UNSIGNED_INT16_VEC2_NV 0x8FF1
-#define GL_UNSIGNED_INT16_VEC3_NV 0x8FF2
-#define GL_UNSIGNED_INT16_VEC4_NV 0x8FF3
-#define GL_UNSIGNED_INT64_VEC2_NV 0x8FF5
-#define GL_UNSIGNED_INT64_VEC3_NV 0x8FF6
-#define GL_UNSIGNED_INT64_VEC4_NV 0x8FF7
-#define GL_FLOAT16_NV 0x8FF8
-#define GL_FLOAT16_VEC2_NV 0x8FF9
-#define GL_FLOAT16_VEC3_NV 0x8FFA
-#define GL_FLOAT16_VEC4_NV 0x8FFB
-
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMI64VNVPROC) (GLuint program, GLint location, GLint64EXT* params);
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMUI64VNVPROC) (GLuint program, GLint location, GLuint64EXT* params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1I64NVPROC) (GLuint program, GLint location, GLint64EXT x);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1I64NVPROC) (GLint location, GLint64EXT x);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1UI64NVPROC) (GLint location, GLuint64EXT x);
-typedef void (GLAPIENTRY * PFNGLUNIFORM1UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y);
-typedef void (GLAPIENTRY * PFNGLUNIFORM2UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
-typedef void (GLAPIENTRY * PFNGLUNIFORM3UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
-typedef void (GLAPIENTRY * PFNGLUNIFORM4UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value);
-
-#define glGetUniformi64vNV GLEW_GET_FUN(__glewGetUniformi64vNV)
-#define glGetUniformui64vNV GLEW_GET_FUN(__glewGetUniformui64vNV)
-#define glProgramUniform1i64NV GLEW_GET_FUN(__glewProgramUniform1i64NV)
-#define glProgramUniform1i64vNV GLEW_GET_FUN(__glewProgramUniform1i64vNV)
-#define glProgramUniform1ui64NV GLEW_GET_FUN(__glewProgramUniform1ui64NV)
-#define glProgramUniform1ui64vNV GLEW_GET_FUN(__glewProgramUniform1ui64vNV)
-#define glProgramUniform2i64NV GLEW_GET_FUN(__glewProgramUniform2i64NV)
-#define glProgramUniform2i64vNV GLEW_GET_FUN(__glewProgramUniform2i64vNV)
-#define glProgramUniform2ui64NV GLEW_GET_FUN(__glewProgramUniform2ui64NV)
-#define glProgramUniform2ui64vNV GLEW_GET_FUN(__glewProgramUniform2ui64vNV)
-#define glProgramUniform3i64NV GLEW_GET_FUN(__glewProgramUniform3i64NV)
-#define glProgramUniform3i64vNV GLEW_GET_FUN(__glewProgramUniform3i64vNV)
-#define glProgramUniform3ui64NV GLEW_GET_FUN(__glewProgramUniform3ui64NV)
-#define glProgramUniform3ui64vNV GLEW_GET_FUN(__glewProgramUniform3ui64vNV)
-#define glProgramUniform4i64NV GLEW_GET_FUN(__glewProgramUniform4i64NV)
-#define glProgramUniform4i64vNV GLEW_GET_FUN(__glewProgramUniform4i64vNV)
-#define glProgramUniform4ui64NV GLEW_GET_FUN(__glewProgramUniform4ui64NV)
-#define glProgramUniform4ui64vNV GLEW_GET_FUN(__glewProgramUniform4ui64vNV)
-#define glUniform1i64NV GLEW_GET_FUN(__glewUniform1i64NV)
-#define glUniform1i64vNV GLEW_GET_FUN(__glewUniform1i64vNV)
-#define glUniform1ui64NV GLEW_GET_FUN(__glewUniform1ui64NV)
-#define glUniform1ui64vNV GLEW_GET_FUN(__glewUniform1ui64vNV)
-#define glUniform2i64NV GLEW_GET_FUN(__glewUniform2i64NV)
-#define glUniform2i64vNV GLEW_GET_FUN(__glewUniform2i64vNV)
-#define glUniform2ui64NV GLEW_GET_FUN(__glewUniform2ui64NV)
-#define glUniform2ui64vNV GLEW_GET_FUN(__glewUniform2ui64vNV)
-#define glUniform3i64NV GLEW_GET_FUN(__glewUniform3i64NV)
-#define glUniform3i64vNV GLEW_GET_FUN(__glewUniform3i64vNV)
-#define glUniform3ui64NV GLEW_GET_FUN(__glewUniform3ui64NV)
-#define glUniform3ui64vNV GLEW_GET_FUN(__glewUniform3ui64vNV)
-#define glUniform4i64NV GLEW_GET_FUN(__glewUniform4i64NV)
-#define glUniform4i64vNV GLEW_GET_FUN(__glewUniform4i64vNV)
-#define glUniform4ui64NV GLEW_GET_FUN(__glewUniform4ui64NV)
-#define glUniform4ui64vNV GLEW_GET_FUN(__glewUniform4ui64vNV)
-
-#define GLEW_NV_gpu_shader5 GLEW_GET_VAR(__GLEW_NV_gpu_shader5)
-
-#endif /* GL_NV_gpu_shader5 */
-
-/* ---------------------------- GL_NV_half_float --------------------------- */
-
-#ifndef GL_NV_half_float
-#define GL_NV_half_float 1
-
-#define GL_HALF_FLOAT_NV 0x140B
-
-typedef unsigned short GLhalf;
-
-typedef void (GLAPIENTRY * PFNGLCOLOR3HNVPROC) (GLhalf red, GLhalf green, GLhalf blue);
-typedef void (GLAPIENTRY * PFNGLCOLOR3HVNVPROC) (const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLCOLOR4HNVPROC) (GLhalf red, GLhalf green, GLhalf blue, GLhalf alpha);
-typedef void (GLAPIENTRY * PFNGLCOLOR4HVNVPROC) (const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDHNVPROC) (GLhalf fog);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDHVNVPROC) (const GLhalf* fog);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1HNVPROC) (GLenum target, GLhalf s);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1HVNVPROC) (GLenum target, const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2HNVPROC) (GLenum target, GLhalf s, GLhalf t);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2HVNVPROC) (GLenum target, const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3HNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3HVNVPROC) (GLenum target, const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4HNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r, GLhalf q);
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4HVNVPROC) (GLenum target, const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLNORMAL3HNVPROC) (GLhalf nx, GLhalf ny, GLhalf nz);
-typedef void (GLAPIENTRY * PFNGLNORMAL3HVNVPROC) (const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3HNVPROC) (GLhalf red, GLhalf green, GLhalf blue);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3HVNVPROC) (const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD1HNVPROC) (GLhalf s);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD1HVNVPROC) (const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2HNVPROC) (GLhalf s, GLhalf t);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2HVNVPROC) (const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD3HNVPROC) (GLhalf s, GLhalf t, GLhalf r);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD3HVNVPROC) (const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD4HNVPROC) (GLhalf s, GLhalf t, GLhalf r, GLhalf q);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD4HVNVPROC) (const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLVERTEX2HNVPROC) (GLhalf x, GLhalf y);
-typedef void (GLAPIENTRY * PFNGLVERTEX2HVNVPROC) (const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLVERTEX3HNVPROC) (GLhalf x, GLhalf y, GLhalf z);
-typedef void (GLAPIENTRY * PFNGLVERTEX3HVNVPROC) (const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLVERTEX4HNVPROC) (GLhalf x, GLhalf y, GLhalf z, GLhalf w);
-typedef void (GLAPIENTRY * PFNGLVERTEX4HVNVPROC) (const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1HNVPROC) (GLuint index, GLhalf x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1HVNVPROC) (GLuint index, const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2HNVPROC) (GLuint index, GLhalf x, GLhalf y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2HVNVPROC) (GLuint index, const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3HNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3HVNVPROC) (GLuint index, const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4HNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z, GLhalf w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4HVNVPROC) (GLuint index, const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTHNVPROC) (GLhalf weight);
-typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTHVNVPROC) (const GLhalf* weight);
-
-#define glColor3hNV GLEW_GET_FUN(__glewColor3hNV)
-#define glColor3hvNV GLEW_GET_FUN(__glewColor3hvNV)
-#define glColor4hNV GLEW_GET_FUN(__glewColor4hNV)
-#define glColor4hvNV GLEW_GET_FUN(__glewColor4hvNV)
-#define glFogCoordhNV GLEW_GET_FUN(__glewFogCoordhNV)
-#define glFogCoordhvNV GLEW_GET_FUN(__glewFogCoordhvNV)
-#define glMultiTexCoord1hNV GLEW_GET_FUN(__glewMultiTexCoord1hNV)
-#define glMultiTexCoord1hvNV GLEW_GET_FUN(__glewMultiTexCoord1hvNV)
-#define glMultiTexCoord2hNV GLEW_GET_FUN(__glewMultiTexCoord2hNV)
-#define glMultiTexCoord2hvNV GLEW_GET_FUN(__glewMultiTexCoord2hvNV)
-#define glMultiTexCoord3hNV GLEW_GET_FUN(__glewMultiTexCoord3hNV)
-#define glMultiTexCoord3hvNV GLEW_GET_FUN(__glewMultiTexCoord3hvNV)
-#define glMultiTexCoord4hNV GLEW_GET_FUN(__glewMultiTexCoord4hNV)
-#define glMultiTexCoord4hvNV GLEW_GET_FUN(__glewMultiTexCoord4hvNV)
-#define glNormal3hNV GLEW_GET_FUN(__glewNormal3hNV)
-#define glNormal3hvNV GLEW_GET_FUN(__glewNormal3hvNV)
-#define glSecondaryColor3hNV GLEW_GET_FUN(__glewSecondaryColor3hNV)
-#define glSecondaryColor3hvNV GLEW_GET_FUN(__glewSecondaryColor3hvNV)
-#define glTexCoord1hNV GLEW_GET_FUN(__glewTexCoord1hNV)
-#define glTexCoord1hvNV GLEW_GET_FUN(__glewTexCoord1hvNV)
-#define glTexCoord2hNV GLEW_GET_FUN(__glewTexCoord2hNV)
-#define glTexCoord2hvNV GLEW_GET_FUN(__glewTexCoord2hvNV)
-#define glTexCoord3hNV GLEW_GET_FUN(__glewTexCoord3hNV)
-#define glTexCoord3hvNV GLEW_GET_FUN(__glewTexCoord3hvNV)
-#define glTexCoord4hNV GLEW_GET_FUN(__glewTexCoord4hNV)
-#define glTexCoord4hvNV GLEW_GET_FUN(__glewTexCoord4hvNV)
-#define glVertex2hNV GLEW_GET_FUN(__glewVertex2hNV)
-#define glVertex2hvNV GLEW_GET_FUN(__glewVertex2hvNV)
-#define glVertex3hNV GLEW_GET_FUN(__glewVertex3hNV)
-#define glVertex3hvNV GLEW_GET_FUN(__glewVertex3hvNV)
-#define glVertex4hNV GLEW_GET_FUN(__glewVertex4hNV)
-#define glVertex4hvNV GLEW_GET_FUN(__glewVertex4hvNV)
-#define glVertexAttrib1hNV GLEW_GET_FUN(__glewVertexAttrib1hNV)
-#define glVertexAttrib1hvNV GLEW_GET_FUN(__glewVertexAttrib1hvNV)
-#define glVertexAttrib2hNV GLEW_GET_FUN(__glewVertexAttrib2hNV)
-#define glVertexAttrib2hvNV GLEW_GET_FUN(__glewVertexAttrib2hvNV)
-#define glVertexAttrib3hNV GLEW_GET_FUN(__glewVertexAttrib3hNV)
-#define glVertexAttrib3hvNV GLEW_GET_FUN(__glewVertexAttrib3hvNV)
-#define glVertexAttrib4hNV GLEW_GET_FUN(__glewVertexAttrib4hNV)
-#define glVertexAttrib4hvNV GLEW_GET_FUN(__glewVertexAttrib4hvNV)
-#define glVertexAttribs1hvNV GLEW_GET_FUN(__glewVertexAttribs1hvNV)
-#define glVertexAttribs2hvNV GLEW_GET_FUN(__glewVertexAttribs2hvNV)
-#define glVertexAttribs3hvNV GLEW_GET_FUN(__glewVertexAttribs3hvNV)
-#define glVertexAttribs4hvNV GLEW_GET_FUN(__glewVertexAttribs4hvNV)
-#define glVertexWeighthNV GLEW_GET_FUN(__glewVertexWeighthNV)
-#define glVertexWeighthvNV GLEW_GET_FUN(__glewVertexWeighthvNV)
-
-#define GLEW_NV_half_float GLEW_GET_VAR(__GLEW_NV_half_float)
-
-#endif /* GL_NV_half_float */
-
-/* ------------------------ GL_NV_light_max_exponent ----------------------- */
-
-#ifndef GL_NV_light_max_exponent
-#define GL_NV_light_max_exponent 1
-
-#define GL_MAX_SHININESS_NV 0x8504
-#define GL_MAX_SPOT_EXPONENT_NV 0x8505
-
-#define GLEW_NV_light_max_exponent GLEW_GET_VAR(__GLEW_NV_light_max_exponent)
-
-#endif /* GL_NV_light_max_exponent */
-
-/* --------------------- GL_NV_multisample_filter_hint --------------------- */
-
-#ifndef GL_NV_multisample_filter_hint
-#define GL_NV_multisample_filter_hint 1
-
-#define GL_MULTISAMPLE_FILTER_HINT_NV 0x8534
-
-#define GLEW_NV_multisample_filter_hint GLEW_GET_VAR(__GLEW_NV_multisample_filter_hint)
-
-#endif /* GL_NV_multisample_filter_hint */
-
-/* ------------------------- GL_NV_occlusion_query ------------------------- */
-
-#ifndef GL_NV_occlusion_query
-#define GL_NV_occlusion_query 1
-
-#define GL_PIXEL_COUNTER_BITS_NV 0x8864
-#define GL_CURRENT_OCCLUSION_QUERY_ID_NV 0x8865
-#define GL_PIXEL_COUNT_NV 0x8866
-#define GL_PIXEL_COUNT_AVAILABLE_NV 0x8867
-
-typedef void (GLAPIENTRY * PFNGLBEGINOCCLUSIONQUERYNVPROC) (GLuint id);
-typedef void (GLAPIENTRY * PFNGLDELETEOCCLUSIONQUERIESNVPROC) (GLsizei n, const GLuint* ids);
-typedef void (GLAPIENTRY * PFNGLENDOCCLUSIONQUERYNVPROC) (void);
-typedef void (GLAPIENTRY * PFNGLGENOCCLUSIONQUERIESNVPROC) (GLsizei n, GLuint* ids);
-typedef void (GLAPIENTRY * PFNGLGETOCCLUSIONQUERYIVNVPROC) (GLuint id, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETOCCLUSIONQUERYUIVNVPROC) (GLuint id, GLenum pname, GLuint* params);
-typedef GLboolean (GLAPIENTRY * PFNGLISOCCLUSIONQUERYNVPROC) (GLuint id);
-
-#define glBeginOcclusionQueryNV GLEW_GET_FUN(__glewBeginOcclusionQueryNV)
-#define glDeleteOcclusionQueriesNV GLEW_GET_FUN(__glewDeleteOcclusionQueriesNV)
-#define glEndOcclusionQueryNV GLEW_GET_FUN(__glewEndOcclusionQueryNV)
-#define glGenOcclusionQueriesNV GLEW_GET_FUN(__glewGenOcclusionQueriesNV)
-#define glGetOcclusionQueryivNV GLEW_GET_FUN(__glewGetOcclusionQueryivNV)
-#define glGetOcclusionQueryuivNV GLEW_GET_FUN(__glewGetOcclusionQueryuivNV)
-#define glIsOcclusionQueryNV GLEW_GET_FUN(__glewIsOcclusionQueryNV)
-
-#define GLEW_NV_occlusion_query GLEW_GET_VAR(__GLEW_NV_occlusion_query)
-
-#endif /* GL_NV_occlusion_query */
-
-/* ----------------------- GL_NV_packed_depth_stencil ---------------------- */
-
-#ifndef GL_NV_packed_depth_stencil
-#define GL_NV_packed_depth_stencil 1
-
-#define GL_DEPTH_STENCIL_NV 0x84F9
-#define GL_UNSIGNED_INT_24_8_NV 0x84FA
-
-#define GLEW_NV_packed_depth_stencil GLEW_GET_VAR(__GLEW_NV_packed_depth_stencil)
-
-#endif /* GL_NV_packed_depth_stencil */
-
-/* --------------------- GL_NV_parameter_buffer_object --------------------- */
-
-#ifndef GL_NV_parameter_buffer_object
-#define GL_NV_parameter_buffer_object 1
-
-#define GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV 0x8DA0
-#define GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV 0x8DA1
-#define GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV 0x8DA2
-#define GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV 0x8DA3
-#define GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV 0x8DA4
-
-typedef void (GLAPIENTRY * PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLint *params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLuint *params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLfloat *params);
-
-#define glProgramBufferParametersIivNV GLEW_GET_FUN(__glewProgramBufferParametersIivNV)
-#define glProgramBufferParametersIuivNV GLEW_GET_FUN(__glewProgramBufferParametersIuivNV)
-#define glProgramBufferParametersfvNV GLEW_GET_FUN(__glewProgramBufferParametersfvNV)
-
-#define GLEW_NV_parameter_buffer_object GLEW_GET_VAR(__GLEW_NV_parameter_buffer_object)
-
-#endif /* GL_NV_parameter_buffer_object */
-
-/* --------------------- GL_NV_parameter_buffer_object2 -------------------- */
-
-#ifndef GL_NV_parameter_buffer_object2
-#define GL_NV_parameter_buffer_object2 1
-
-#define GLEW_NV_parameter_buffer_object2 GLEW_GET_VAR(__GLEW_NV_parameter_buffer_object2)
-
-#endif /* GL_NV_parameter_buffer_object2 */
-
-/* ------------------------- GL_NV_pixel_data_range ------------------------ */
-
-#ifndef GL_NV_pixel_data_range
-#define GL_NV_pixel_data_range 1
-
-#define GL_WRITE_PIXEL_DATA_RANGE_NV 0x8878
-#define GL_READ_PIXEL_DATA_RANGE_NV 0x8879
-#define GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV 0x887A
-#define GL_READ_PIXEL_DATA_RANGE_LENGTH_NV 0x887B
-#define GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV 0x887C
-#define GL_READ_PIXEL_DATA_RANGE_POINTER_NV 0x887D
-
-typedef void (GLAPIENTRY * PFNGLFLUSHPIXELDATARANGENVPROC) (GLenum target);
-typedef void (GLAPIENTRY * PFNGLPIXELDATARANGENVPROC) (GLenum target, GLsizei length, void* pointer);
-
-#define glFlushPixelDataRangeNV GLEW_GET_FUN(__glewFlushPixelDataRangeNV)
-#define glPixelDataRangeNV GLEW_GET_FUN(__glewPixelDataRangeNV)
-
-#define GLEW_NV_pixel_data_range GLEW_GET_VAR(__GLEW_NV_pixel_data_range)
-
-#endif /* GL_NV_pixel_data_range */
-
-/* --------------------------- GL_NV_point_sprite -------------------------- */
-
-#ifndef GL_NV_point_sprite
-#define GL_NV_point_sprite 1
-
-#define GL_POINT_SPRITE_NV 0x8861
-#define GL_COORD_REPLACE_NV 0x8862
-#define GL_POINT_SPRITE_R_MODE_NV 0x8863
-
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERINVPROC) (GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERIVNVPROC) (GLenum pname, const GLint* params);
-
-#define glPointParameteriNV GLEW_GET_FUN(__glewPointParameteriNV)
-#define glPointParameterivNV GLEW_GET_FUN(__glewPointParameterivNV)
-
-#define GLEW_NV_point_sprite GLEW_GET_VAR(__GLEW_NV_point_sprite)
-
-#endif /* GL_NV_point_sprite */
-
-/* -------------------------- GL_NV_present_video -------------------------- */
-
-#ifndef GL_NV_present_video
-#define GL_NV_present_video 1
-
-#define GL_FRAME_NV 0x8E26
-#define GL_FIELDS_NV 0x8E27
-#define GL_CURRENT_TIME_NV 0x8E28
-#define GL_NUM_FILL_STREAMS_NV 0x8E29
-#define GL_PRESENT_TIME_NV 0x8E2A
-#define GL_PRESENT_DURATION_NV 0x8E2B
-
-typedef void (GLAPIENTRY * PFNGLGETVIDEOI64VNVPROC) (GLuint video_slot, GLenum pname, GLint64EXT* params);
-typedef void (GLAPIENTRY * PFNGLGETVIDEOIVNVPROC) (GLuint video_slot, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETVIDEOUI64VNVPROC) (GLuint video_slot, GLenum pname, GLuint64EXT* params);
-typedef void (GLAPIENTRY * PFNGLGETVIDEOUIVNVPROC) (GLuint video_slot, GLenum pname, GLuint* params);
-typedef void (GLAPIENTRY * PFNGLPRESENTFRAMEDUALFILLNVPROC) (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLenum target1, GLuint fill1, GLenum target2, GLuint fill2, GLenum target3, GLuint fill3);
-typedef void (GLAPIENTRY * PFNGLPRESENTFRAMEKEYEDNVPROC) (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLuint key0, GLenum target1, GLuint fill1, GLuint key1);
-
-#define glGetVideoi64vNV GLEW_GET_FUN(__glewGetVideoi64vNV)
-#define glGetVideoivNV GLEW_GET_FUN(__glewGetVideoivNV)
-#define glGetVideoui64vNV GLEW_GET_FUN(__glewGetVideoui64vNV)
-#define glGetVideouivNV GLEW_GET_FUN(__glewGetVideouivNV)
-#define glPresentFrameDualFillNV GLEW_GET_FUN(__glewPresentFrameDualFillNV)
-#define glPresentFrameKeyedNV GLEW_GET_FUN(__glewPresentFrameKeyedNV)
-
-#define GLEW_NV_present_video GLEW_GET_VAR(__GLEW_NV_present_video)
-
-#endif /* GL_NV_present_video */
-
-/* ------------------------ GL_NV_primitive_restart ------------------------ */
-
-#ifndef GL_NV_primitive_restart
-#define GL_NV_primitive_restart 1
-
-#define GL_PRIMITIVE_RESTART_NV 0x8558
-#define GL_PRIMITIVE_RESTART_INDEX_NV 0x8559
-
-typedef void (GLAPIENTRY * PFNGLPRIMITIVERESTARTINDEXNVPROC) (GLuint index);
-typedef void (GLAPIENTRY * PFNGLPRIMITIVERESTARTNVPROC) (void);
-
-#define glPrimitiveRestartIndexNV GLEW_GET_FUN(__glewPrimitiveRestartIndexNV)
-#define glPrimitiveRestartNV GLEW_GET_FUN(__glewPrimitiveRestartNV)
-
-#define GLEW_NV_primitive_restart GLEW_GET_VAR(__GLEW_NV_primitive_restart)
-
-#endif /* GL_NV_primitive_restart */
-
-/* ------------------------ GL_NV_register_combiners ----------------------- */
-
-#ifndef GL_NV_register_combiners
-#define GL_NV_register_combiners 1
-
-#define GL_REGISTER_COMBINERS_NV 0x8522
-#define GL_VARIABLE_A_NV 0x8523
-#define GL_VARIABLE_B_NV 0x8524
-#define GL_VARIABLE_C_NV 0x8525
-#define GL_VARIABLE_D_NV 0x8526
-#define GL_VARIABLE_E_NV 0x8527
-#define GL_VARIABLE_F_NV 0x8528
-#define GL_VARIABLE_G_NV 0x8529
-#define GL_CONSTANT_COLOR0_NV 0x852A
-#define GL_CONSTANT_COLOR1_NV 0x852B
-#define GL_PRIMARY_COLOR_NV 0x852C
-#define GL_SECONDARY_COLOR_NV 0x852D
-#define GL_SPARE0_NV 0x852E
-#define GL_SPARE1_NV 0x852F
-#define GL_DISCARD_NV 0x8530
-#define GL_E_TIMES_F_NV 0x8531
-#define GL_SPARE0_PLUS_SECONDARY_COLOR_NV 0x8532
-#define GL_UNSIGNED_IDENTITY_NV 0x8536
-#define GL_UNSIGNED_INVERT_NV 0x8537
-#define GL_EXPAND_NORMAL_NV 0x8538
-#define GL_EXPAND_NEGATE_NV 0x8539
-#define GL_HALF_BIAS_NORMAL_NV 0x853A
-#define GL_HALF_BIAS_NEGATE_NV 0x853B
-#define GL_SIGNED_IDENTITY_NV 0x853C
-#define GL_SIGNED_NEGATE_NV 0x853D
-#define GL_SCALE_BY_TWO_NV 0x853E
-#define GL_SCALE_BY_FOUR_NV 0x853F
-#define GL_SCALE_BY_ONE_HALF_NV 0x8540
-#define GL_BIAS_BY_NEGATIVE_ONE_HALF_NV 0x8541
-#define GL_COMBINER_INPUT_NV 0x8542
-#define GL_COMBINER_MAPPING_NV 0x8543
-#define GL_COMBINER_COMPONENT_USAGE_NV 0x8544
-#define GL_COMBINER_AB_DOT_PRODUCT_NV 0x8545
-#define GL_COMBINER_CD_DOT_PRODUCT_NV 0x8546
-#define GL_COMBINER_MUX_SUM_NV 0x8547
-#define GL_COMBINER_SCALE_NV 0x8548
-#define GL_COMBINER_BIAS_NV 0x8549
-#define GL_COMBINER_AB_OUTPUT_NV 0x854A
-#define GL_COMBINER_CD_OUTPUT_NV 0x854B
-#define GL_COMBINER_SUM_OUTPUT_NV 0x854C
-#define GL_MAX_GENERAL_COMBINERS_NV 0x854D
-#define GL_NUM_GENERAL_COMBINERS_NV 0x854E
-#define GL_COLOR_SUM_CLAMP_NV 0x854F
-#define GL_COMBINER0_NV 0x8550
-#define GL_COMBINER1_NV 0x8551
-#define GL_COMBINER2_NV 0x8552
-#define GL_COMBINER3_NV 0x8553
-#define GL_COMBINER4_NV 0x8554
-#define GL_COMBINER5_NV 0x8555
-#define GL_COMBINER6_NV 0x8556
-#define GL_COMBINER7_NV 0x8557
-
-typedef void (GLAPIENTRY * PFNGLCOMBINERINPUTNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
-typedef void (GLAPIENTRY * PFNGLCOMBINEROUTPUTNVPROC) (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum);
-typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERFNVPROC) (GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERFVNVPROC) (GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERINVPROC) (GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERIVNVPROC) (GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLFINALCOMBINERINPUTNVPROC) (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
-typedef void (GLAPIENTRY * PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC) (GLenum variable, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC) (GLenum variable, GLenum pname, GLint* params);
-
-#define glCombinerInputNV GLEW_GET_FUN(__glewCombinerInputNV)
-#define glCombinerOutputNV GLEW_GET_FUN(__glewCombinerOutputNV)
-#define glCombinerParameterfNV GLEW_GET_FUN(__glewCombinerParameterfNV)
-#define glCombinerParameterfvNV GLEW_GET_FUN(__glewCombinerParameterfvNV)
-#define glCombinerParameteriNV GLEW_GET_FUN(__glewCombinerParameteriNV)
-#define glCombinerParameterivNV GLEW_GET_FUN(__glewCombinerParameterivNV)
-#define glFinalCombinerInputNV GLEW_GET_FUN(__glewFinalCombinerInputNV)
-#define glGetCombinerInputParameterfvNV GLEW_GET_FUN(__glewGetCombinerInputParameterfvNV)
-#define glGetCombinerInputParameterivNV GLEW_GET_FUN(__glewGetCombinerInputParameterivNV)
-#define glGetCombinerOutputParameterfvNV GLEW_GET_FUN(__glewGetCombinerOutputParameterfvNV)
-#define glGetCombinerOutputParameterivNV GLEW_GET_FUN(__glewGetCombinerOutputParameterivNV)
-#define glGetFinalCombinerInputParameterfvNV GLEW_GET_FUN(__glewGetFinalCombinerInputParameterfvNV)
-#define glGetFinalCombinerInputParameterivNV GLEW_GET_FUN(__glewGetFinalCombinerInputParameterivNV)
-
-#define GLEW_NV_register_combiners GLEW_GET_VAR(__GLEW_NV_register_combiners)
-
-#endif /* GL_NV_register_combiners */
-
-/* ----------------------- GL_NV_register_combiners2 ----------------------- */
-
-#ifndef GL_NV_register_combiners2
-#define GL_NV_register_combiners2 1
-
-#define GL_PER_STAGE_CONSTANTS_NV 0x8535
-
-typedef void (GLAPIENTRY * PFNGLCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage, GLenum pname, GLfloat* params);
-
-#define glCombinerStageParameterfvNV GLEW_GET_FUN(__glewCombinerStageParameterfvNV)
-#define glGetCombinerStageParameterfvNV GLEW_GET_FUN(__glewGetCombinerStageParameterfvNV)
-
-#define GLEW_NV_register_combiners2 GLEW_GET_VAR(__GLEW_NV_register_combiners2)
-
-#endif /* GL_NV_register_combiners2 */
-
-/* ------------------------ GL_NV_shader_buffer_load ----------------------- */
-
-#ifndef GL_NV_shader_buffer_load
-#define GL_NV_shader_buffer_load 1
-
-#define GL_BUFFER_GPU_ADDRESS_NV 0x8F1D
-#define GL_GPU_ADDRESS_NV 0x8F34
-#define GL_MAX_SHADER_BUFFER_ADDRESS_NV 0x8F35
-
-typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERUI64VNVPROC) (GLenum target, GLenum pname, GLuint64EXT* params);
-typedef void (GLAPIENTRY * PFNGLGETINTEGERUI64VNVPROC) (GLenum value, GLuint64EXT* result);
-typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC) (GLuint buffer, GLenum pname, GLuint64EXT* params);
-typedef GLboolean (GLAPIENTRY * PFNGLISBUFFERRESIDENTNVPROC) (GLenum target);
-typedef GLboolean (GLAPIENTRY * PFNGLISNAMEDBUFFERRESIDENTNVPROC) (GLuint buffer);
-typedef void (GLAPIENTRY * PFNGLMAKEBUFFERNONRESIDENTNVPROC) (GLenum target);
-typedef void (GLAPIENTRY * PFNGLMAKEBUFFERRESIDENTNVPROC) (GLenum target, GLenum access);
-typedef void (GLAPIENTRY * PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC) (GLuint buffer);
-typedef void (GLAPIENTRY * PFNGLMAKENAMEDBUFFERRESIDENTNVPROC) (GLuint buffer, GLenum access);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMUI64NVPROC) (GLuint program, GLint location, GLuint64EXT value);
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMUI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMUI64NVPROC) (GLint location, GLuint64EXT value);
-typedef void (GLAPIENTRY * PFNGLUNIFORMUI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value);
-
-#define glGetBufferParameterui64vNV GLEW_GET_FUN(__glewGetBufferParameterui64vNV)
-#define glGetIntegerui64vNV GLEW_GET_FUN(__glewGetIntegerui64vNV)
-#define glGetNamedBufferParameterui64vNV GLEW_GET_FUN(__glewGetNamedBufferParameterui64vNV)
-#define glIsBufferResidentNV GLEW_GET_FUN(__glewIsBufferResidentNV)
-#define glIsNamedBufferResidentNV GLEW_GET_FUN(__glewIsNamedBufferResidentNV)
-#define glMakeBufferNonResidentNV GLEW_GET_FUN(__glewMakeBufferNonResidentNV)
-#define glMakeBufferResidentNV GLEW_GET_FUN(__glewMakeBufferResidentNV)
-#define glMakeNamedBufferNonResidentNV GLEW_GET_FUN(__glewMakeNamedBufferNonResidentNV)
-#define glMakeNamedBufferResidentNV GLEW_GET_FUN(__glewMakeNamedBufferResidentNV)
-#define glProgramUniformui64NV GLEW_GET_FUN(__glewProgramUniformui64NV)
-#define glProgramUniformui64vNV GLEW_GET_FUN(__glewProgramUniformui64vNV)
-#define glUniformui64NV GLEW_GET_FUN(__glewUniformui64NV)
-#define glUniformui64vNV GLEW_GET_FUN(__glewUniformui64vNV)
-
-#define GLEW_NV_shader_buffer_load GLEW_GET_VAR(__GLEW_NV_shader_buffer_load)
-
-#endif /* GL_NV_shader_buffer_load */
-
-/* ---------------------- GL_NV_tessellation_program5 ---------------------- */
-
-#ifndef GL_NV_tessellation_program5
-#define GL_NV_tessellation_program5 1
-
-#define GL_MAX_PROGRAM_PATCH_ATTRIBS_NV 0x86D8
-#define GL_TESS_CONTROL_PROGRAM_NV 0x891E
-#define GL_TESS_EVALUATION_PROGRAM_NV 0x891F
-#define GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV 0x8C74
-#define GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV 0x8C75
-
-#define GLEW_NV_tessellation_program5 GLEW_GET_VAR(__GLEW_NV_tessellation_program5)
-
-#endif /* GL_NV_tessellation_program5 */
-
-/* -------------------------- GL_NV_texgen_emboss -------------------------- */
-
-#ifndef GL_NV_texgen_emboss
-#define GL_NV_texgen_emboss 1
-
-#define GL_EMBOSS_LIGHT_NV 0x855D
-#define GL_EMBOSS_CONSTANT_NV 0x855E
-#define GL_EMBOSS_MAP_NV 0x855F
-
-#define GLEW_NV_texgen_emboss GLEW_GET_VAR(__GLEW_NV_texgen_emboss)
-
-#endif /* GL_NV_texgen_emboss */
-
-/* ------------------------ GL_NV_texgen_reflection ------------------------ */
-
-#ifndef GL_NV_texgen_reflection
-#define GL_NV_texgen_reflection 1
-
-#define GL_NORMAL_MAP_NV 0x8511
-#define GL_REFLECTION_MAP_NV 0x8512
-
-#define GLEW_NV_texgen_reflection GLEW_GET_VAR(__GLEW_NV_texgen_reflection)
-
-#endif /* GL_NV_texgen_reflection */
-
-/* ------------------------- GL_NV_texture_barrier ------------------------- */
-
-#ifndef GL_NV_texture_barrier
-#define GL_NV_texture_barrier 1
-
-typedef void (GLAPIENTRY * PFNGLTEXTUREBARRIERNVPROC) (void);
-
-#define glTextureBarrierNV GLEW_GET_FUN(__glewTextureBarrierNV)
-
-#define GLEW_NV_texture_barrier GLEW_GET_VAR(__GLEW_NV_texture_barrier)
-
-#endif /* GL_NV_texture_barrier */
-
-/* --------------------- GL_NV_texture_compression_vtc --------------------- */
-
-#ifndef GL_NV_texture_compression_vtc
-#define GL_NV_texture_compression_vtc 1
-
-#define GLEW_NV_texture_compression_vtc GLEW_GET_VAR(__GLEW_NV_texture_compression_vtc)
-
-#endif /* GL_NV_texture_compression_vtc */
-
-/* ----------------------- GL_NV_texture_env_combine4 ---------------------- */
-
-#ifndef GL_NV_texture_env_combine4
-#define GL_NV_texture_env_combine4 1
-
-#define GL_COMBINE4_NV 0x8503
-#define GL_SOURCE3_RGB_NV 0x8583
-#define GL_SOURCE3_ALPHA_NV 0x858B
-#define GL_OPERAND3_RGB_NV 0x8593
-#define GL_OPERAND3_ALPHA_NV 0x859B
-
-#define GLEW_NV_texture_env_combine4 GLEW_GET_VAR(__GLEW_NV_texture_env_combine4)
-
-#endif /* GL_NV_texture_env_combine4 */
-
-/* ---------------------- GL_NV_texture_expand_normal ---------------------- */
-
-#ifndef GL_NV_texture_expand_normal
-#define GL_NV_texture_expand_normal 1
-
-#define GL_TEXTURE_UNSIGNED_REMAP_MODE_NV 0x888F
-
-#define GLEW_NV_texture_expand_normal GLEW_GET_VAR(__GLEW_NV_texture_expand_normal)
-
-#endif /* GL_NV_texture_expand_normal */
-
-/* ------------------------ GL_NV_texture_rectangle ------------------------ */
-
-#ifndef GL_NV_texture_rectangle
-#define GL_NV_texture_rectangle 1
-
-#define GL_TEXTURE_RECTANGLE_NV 0x84F5
-#define GL_TEXTURE_BINDING_RECTANGLE_NV 0x84F6
-#define GL_PROXY_TEXTURE_RECTANGLE_NV 0x84F7
-#define GL_MAX_RECTANGLE_TEXTURE_SIZE_NV 0x84F8
-
-#define GLEW_NV_texture_rectangle GLEW_GET_VAR(__GLEW_NV_texture_rectangle)
-
-#endif /* GL_NV_texture_rectangle */
-
-/* -------------------------- GL_NV_texture_shader ------------------------- */
-
-#ifndef GL_NV_texture_shader
-#define GL_NV_texture_shader 1
-
-#define GL_OFFSET_TEXTURE_RECTANGLE_NV 0x864C
-#define GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV 0x864D
-#define GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV 0x864E
-#define GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV 0x86D9
-#define GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86DA
-#define GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86DB
-#define GL_DSDT_MAG_INTENSITY_NV 0x86DC
-#define GL_SHADER_CONSISTENT_NV 0x86DD
-#define GL_TEXTURE_SHADER_NV 0x86DE
-#define GL_SHADER_OPERATION_NV 0x86DF
-#define GL_CULL_MODES_NV 0x86E0
-#define GL_OFFSET_TEXTURE_2D_MATRIX_NV 0x86E1
-#define GL_OFFSET_TEXTURE_MATRIX_NV 0x86E1
-#define GL_OFFSET_TEXTURE_2D_SCALE_NV 0x86E2
-#define GL_OFFSET_TEXTURE_SCALE_NV 0x86E2
-#define GL_OFFSET_TEXTURE_BIAS_NV 0x86E3
-#define GL_OFFSET_TEXTURE_2D_BIAS_NV 0x86E3
-#define GL_PREVIOUS_TEXTURE_INPUT_NV 0x86E4
-#define GL_CONST_EYE_NV 0x86E5
-#define GL_PASS_THROUGH_NV 0x86E6
-#define GL_CULL_FRAGMENT_NV 0x86E7
-#define GL_OFFSET_TEXTURE_2D_NV 0x86E8
-#define GL_DEPENDENT_AR_TEXTURE_2D_NV 0x86E9
-#define GL_DEPENDENT_GB_TEXTURE_2D_NV 0x86EA
-#define GL_DOT_PRODUCT_NV 0x86EC
-#define GL_DOT_PRODUCT_DEPTH_REPLACE_NV 0x86ED
-#define GL_DOT_PRODUCT_TEXTURE_2D_NV 0x86EE
-#define GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV 0x86F0
-#define GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV 0x86F1
-#define GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV 0x86F2
-#define GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV 0x86F3
-#define GL_HILO_NV 0x86F4
-#define GL_DSDT_NV 0x86F5
-#define GL_DSDT_MAG_NV 0x86F6
-#define GL_DSDT_MAG_VIB_NV 0x86F7
-#define GL_HILO16_NV 0x86F8
-#define GL_SIGNED_HILO_NV 0x86F9
-#define GL_SIGNED_HILO16_NV 0x86FA
-#define GL_SIGNED_RGBA_NV 0x86FB
-#define GL_SIGNED_RGBA8_NV 0x86FC
-#define GL_SIGNED_RGB_NV 0x86FE
-#define GL_SIGNED_RGB8_NV 0x86FF
-#define GL_SIGNED_LUMINANCE_NV 0x8701
-#define GL_SIGNED_LUMINANCE8_NV 0x8702
-#define GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703
-#define GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704
-#define GL_SIGNED_ALPHA_NV 0x8705
-#define GL_SIGNED_ALPHA8_NV 0x8706
-#define GL_SIGNED_INTENSITY_NV 0x8707
-#define GL_SIGNED_INTENSITY8_NV 0x8708
-#define GL_DSDT8_NV 0x8709
-#define GL_DSDT8_MAG8_NV 0x870A
-#define GL_DSDT8_MAG8_INTENSITY8_NV 0x870B
-#define GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870C
-#define GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D
-#define GL_HI_SCALE_NV 0x870E
-#define GL_LO_SCALE_NV 0x870F
-#define GL_DS_SCALE_NV 0x8710
-#define GL_DT_SCALE_NV 0x8711
-#define GL_MAGNITUDE_SCALE_NV 0x8712
-#define GL_VIBRANCE_SCALE_NV 0x8713
-#define GL_HI_BIAS_NV 0x8714
-#define GL_LO_BIAS_NV 0x8715
-#define GL_DS_BIAS_NV 0x8716
-#define GL_DT_BIAS_NV 0x8717
-#define GL_MAGNITUDE_BIAS_NV 0x8718
-#define GL_VIBRANCE_BIAS_NV 0x8719
-#define GL_TEXTURE_BORDER_VALUES_NV 0x871A
-#define GL_TEXTURE_HI_SIZE_NV 0x871B
-#define GL_TEXTURE_LO_SIZE_NV 0x871C
-#define GL_TEXTURE_DS_SIZE_NV 0x871D
-#define GL_TEXTURE_DT_SIZE_NV 0x871E
-#define GL_TEXTURE_MAG_SIZE_NV 0x871F
-
-#define GLEW_NV_texture_shader GLEW_GET_VAR(__GLEW_NV_texture_shader)
-
-#endif /* GL_NV_texture_shader */
-
-/* ------------------------- GL_NV_texture_shader2 ------------------------- */
-
-#ifndef GL_NV_texture_shader2
-#define GL_NV_texture_shader2 1
-
-#define GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86DA
-#define GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86DB
-#define GL_DSDT_MAG_INTENSITY_NV 0x86DC
-#define GL_DOT_PRODUCT_TEXTURE_3D_NV 0x86EF
-#define GL_HILO_NV 0x86F4
-#define GL_DSDT_NV 0x86F5
-#define GL_DSDT_MAG_NV 0x86F6
-#define GL_DSDT_MAG_VIB_NV 0x86F7
-#define GL_HILO16_NV 0x86F8
-#define GL_SIGNED_HILO_NV 0x86F9
-#define GL_SIGNED_HILO16_NV 0x86FA
-#define GL_SIGNED_RGBA_NV 0x86FB
-#define GL_SIGNED_RGBA8_NV 0x86FC
-#define GL_SIGNED_RGB_NV 0x86FE
-#define GL_SIGNED_RGB8_NV 0x86FF
-#define GL_SIGNED_LUMINANCE_NV 0x8701
-#define GL_SIGNED_LUMINANCE8_NV 0x8702
-#define GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703
-#define GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704
-#define GL_SIGNED_ALPHA_NV 0x8705
-#define GL_SIGNED_ALPHA8_NV 0x8706
-#define GL_SIGNED_INTENSITY_NV 0x8707
-#define GL_SIGNED_INTENSITY8_NV 0x8708
-#define GL_DSDT8_NV 0x8709
-#define GL_DSDT8_MAG8_NV 0x870A
-#define GL_DSDT8_MAG8_INTENSITY8_NV 0x870B
-#define GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870C
-#define GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D
-
-#define GLEW_NV_texture_shader2 GLEW_GET_VAR(__GLEW_NV_texture_shader2)
-
-#endif /* GL_NV_texture_shader2 */
-
-/* ------------------------- GL_NV_texture_shader3 ------------------------- */
-
-#ifndef GL_NV_texture_shader3
-#define GL_NV_texture_shader3 1
-
-#define GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV 0x8850
-#define GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV 0x8851
-#define GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8852
-#define GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV 0x8853
-#define GL_OFFSET_HILO_TEXTURE_2D_NV 0x8854
-#define GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV 0x8855
-#define GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV 0x8856
-#define GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8857
-#define GL_DEPENDENT_HILO_TEXTURE_2D_NV 0x8858
-#define GL_DEPENDENT_RGB_TEXTURE_3D_NV 0x8859
-#define GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV 0x885A
-#define GL_DOT_PRODUCT_PASS_THROUGH_NV 0x885B
-#define GL_DOT_PRODUCT_TEXTURE_1D_NV 0x885C
-#define GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV 0x885D
-#define GL_HILO8_NV 0x885E
-#define GL_SIGNED_HILO8_NV 0x885F
-#define GL_FORCE_BLUE_TO_ONE_NV 0x8860
-
-#define GLEW_NV_texture_shader3 GLEW_GET_VAR(__GLEW_NV_texture_shader3)
-
-#endif /* GL_NV_texture_shader3 */
-
-/* ------------------------ GL_NV_transform_feedback ----------------------- */
-
-#ifndef GL_NV_transform_feedback
-#define GL_NV_transform_feedback 1
-
-#define GL_BACK_PRIMARY_COLOR_NV 0x8C77
-#define GL_BACK_SECONDARY_COLOR_NV 0x8C78
-#define GL_TEXTURE_COORD_NV 0x8C79
-#define GL_CLIP_DISTANCE_NV 0x8C7A
-#define GL_VERTEX_ID_NV 0x8C7B
-#define GL_PRIMITIVE_ID_NV 0x8C7C
-#define GL_GENERIC_ATTRIB_NV 0x8C7D
-#define GL_TRANSFORM_FEEDBACK_ATTRIBS_NV 0x8C7E
-#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV 0x8C7F
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV 0x8C80
-#define GL_ACTIVE_VARYINGS_NV 0x8C81
-#define GL_ACTIVE_VARYING_MAX_LENGTH_NV 0x8C82
-#define GL_TRANSFORM_FEEDBACK_VARYINGS_NV 0x8C83
-#define GL_TRANSFORM_FEEDBACK_BUFFER_START_NV 0x8C84
-#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV 0x8C85
-#define GL_TRANSFORM_FEEDBACK_RECORD_NV 0x8C86
-#define GL_PRIMITIVES_GENERATED_NV 0x8C87
-#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV 0x8C88
-#define GL_RASTERIZER_DISCARD_NV 0x8C89
-#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV 0x8C8A
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV 0x8C8B
-#define GL_INTERLEAVED_ATTRIBS_NV 0x8C8C
-#define GL_SEPARATE_ATTRIBS_NV 0x8C8D
-#define GL_TRANSFORM_FEEDBACK_BUFFER_NV 0x8C8E
-#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV 0x8C8F
-
-typedef void (GLAPIENTRY * PFNGLACTIVEVARYINGNVPROC) (GLuint program, const GLchar *name);
-typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACKNVPROC) (GLenum primitiveMode);
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASENVPROC) (GLenum target, GLuint index, GLuint buffer);
-typedef void (GLAPIENTRY * PFNGLBINDBUFFEROFFSETNVPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset);
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGENVPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
-typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACKNVPROC) (void);
-typedef void (GLAPIENTRY * PFNGLGETACTIVEVARYINGNVPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
-typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC) (GLuint program, GLuint index, GLint *location);
-typedef GLint (GLAPIENTRY * PFNGLGETVARYINGLOCATIONNVPROC) (GLuint program, const GLchar *name);
-typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC) (GLuint count, const GLint *attribs, GLenum bufferMode);
-typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC) (GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode);
-
-#define glActiveVaryingNV GLEW_GET_FUN(__glewActiveVaryingNV)
-#define glBeginTransformFeedbackNV GLEW_GET_FUN(__glewBeginTransformFeedbackNV)
-#define glBindBufferBaseNV GLEW_GET_FUN(__glewBindBufferBaseNV)
-#define glBindBufferOffsetNV GLEW_GET_FUN(__glewBindBufferOffsetNV)
-#define glBindBufferRangeNV GLEW_GET_FUN(__glewBindBufferRangeNV)
-#define glEndTransformFeedbackNV GLEW_GET_FUN(__glewEndTransformFeedbackNV)
-#define glGetActiveVaryingNV GLEW_GET_FUN(__glewGetActiveVaryingNV)
-#define glGetTransformFeedbackVaryingNV GLEW_GET_FUN(__glewGetTransformFeedbackVaryingNV)
-#define glGetVaryingLocationNV GLEW_GET_FUN(__glewGetVaryingLocationNV)
-#define glTransformFeedbackAttribsNV GLEW_GET_FUN(__glewTransformFeedbackAttribsNV)
-#define glTransformFeedbackVaryingsNV GLEW_GET_FUN(__glewTransformFeedbackVaryingsNV)
-
-#define GLEW_NV_transform_feedback GLEW_GET_VAR(__GLEW_NV_transform_feedback)
-
-#endif /* GL_NV_transform_feedback */
-
-/* ----------------------- GL_NV_transform_feedback2 ----------------------- */
-
-#ifndef GL_NV_transform_feedback2
-#define GL_NV_transform_feedback2 1
-
-#define GL_TRANSFORM_FEEDBACK_NV 0x8E22
-#define GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV 0x8E23
-#define GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV 0x8E24
-#define GL_TRANSFORM_FEEDBACK_BINDING_NV 0x8E25
-
-typedef void (GLAPIENTRY * PFNGLBINDTRANSFORMFEEDBACKNVPROC) (GLenum target, GLuint id);
-typedef void (GLAPIENTRY * PFNGLDELETETRANSFORMFEEDBACKSNVPROC) (GLsizei n, const GLuint* ids);
-typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKNVPROC) (GLenum mode, GLuint id);
-typedef void (GLAPIENTRY * PFNGLGENTRANSFORMFEEDBACKSNVPROC) (GLsizei n, GLuint* ids);
-typedef GLboolean (GLAPIENTRY * PFNGLISTRANSFORMFEEDBACKNVPROC) (GLuint id);
-typedef void (GLAPIENTRY * PFNGLPAUSETRANSFORMFEEDBACKNVPROC) (void);
-typedef void (GLAPIENTRY * PFNGLRESUMETRANSFORMFEEDBACKNVPROC) (void);
-
-#define glBindTransformFeedbackNV GLEW_GET_FUN(__glewBindTransformFeedbackNV)
-#define glDeleteTransformFeedbacksNV GLEW_GET_FUN(__glewDeleteTransformFeedbacksNV)
-#define glDrawTransformFeedbackNV GLEW_GET_FUN(__glewDrawTransformFeedbackNV)
-#define glGenTransformFeedbacksNV GLEW_GET_FUN(__glewGenTransformFeedbacksNV)
-#define glIsTransformFeedbackNV GLEW_GET_FUN(__glewIsTransformFeedbackNV)
-#define glPauseTransformFeedbackNV GLEW_GET_FUN(__glewPauseTransformFeedbackNV)
-#define glResumeTransformFeedbackNV GLEW_GET_FUN(__glewResumeTransformFeedbackNV)
-
-#define GLEW_NV_transform_feedback2 GLEW_GET_VAR(__GLEW_NV_transform_feedback2)
-
-#endif /* GL_NV_transform_feedback2 */
-
-/* ------------------------ GL_NV_vertex_array_range ----------------------- */
-
-#ifndef GL_NV_vertex_array_range
-#define GL_NV_vertex_array_range 1
-
-#define GL_VERTEX_ARRAY_RANGE_NV 0x851D
-#define GL_VERTEX_ARRAY_RANGE_LENGTH_NV 0x851E
-#define GL_VERTEX_ARRAY_RANGE_VALID_NV 0x851F
-#define GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV 0x8520
-#define GL_VERTEX_ARRAY_RANGE_POINTER_NV 0x8521
-
-typedef void (GLAPIENTRY * PFNGLFLUSHVERTEXARRAYRANGENVPROC) (void);
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYRANGENVPROC) (GLsizei length, void* pointer);
-
-#define glFlushVertexArrayRangeNV GLEW_GET_FUN(__glewFlushVertexArrayRangeNV)
-#define glVertexArrayRangeNV GLEW_GET_FUN(__glewVertexArrayRangeNV)
-
-#define GLEW_NV_vertex_array_range GLEW_GET_VAR(__GLEW_NV_vertex_array_range)
-
-#endif /* GL_NV_vertex_array_range */
-
-/* ----------------------- GL_NV_vertex_array_range2 ----------------------- */
-
-#ifndef GL_NV_vertex_array_range2
-#define GL_NV_vertex_array_range2 1
-
-#define GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV 0x8533
-
-#define GLEW_NV_vertex_array_range2 GLEW_GET_VAR(__GLEW_NV_vertex_array_range2)
-
-#endif /* GL_NV_vertex_array_range2 */
-
-/* ------------------- GL_NV_vertex_attrib_integer_64bit ------------------- */
-
-#ifndef GL_NV_vertex_attrib_integer_64bit
-#define GL_NV_vertex_attrib_integer_64bit 1
-
-#define GL_INT64_NV 0x140E
-#define GL_UNSIGNED_INT64_NV 0x140F
-
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLI64VNVPROC) (GLuint index, GLenum pname, GLint64EXT* params);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLUI64VNVPROC) (GLuint index, GLenum pname, GLuint64EXT* params);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1I64NVPROC) (GLuint index, GLint64EXT x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1I64VNVPROC) (GLuint index, const GLint64EXT* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1UI64NVPROC) (GLuint index, GLuint64EXT x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1UI64VNVPROC) (GLuint index, const GLuint64EXT* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2I64VNVPROC) (GLuint index, const GLint64EXT* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2UI64VNVPROC) (GLuint index, const GLuint64EXT* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3I64VNVPROC) (GLuint index, const GLint64EXT* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3UI64VNVPROC) (GLuint index, const GLuint64EXT* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4I64VNVPROC) (GLuint index, const GLint64EXT* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4UI64VNVPROC) (GLuint index, const GLuint64EXT* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride);
-
-#define glGetVertexAttribLi64vNV GLEW_GET_FUN(__glewGetVertexAttribLi64vNV)
-#define glGetVertexAttribLui64vNV GLEW_GET_FUN(__glewGetVertexAttribLui64vNV)
-#define glVertexAttribL1i64NV GLEW_GET_FUN(__glewVertexAttribL1i64NV)
-#define glVertexAttribL1i64vNV GLEW_GET_FUN(__glewVertexAttribL1i64vNV)
-#define glVertexAttribL1ui64NV GLEW_GET_FUN(__glewVertexAttribL1ui64NV)
-#define glVertexAttribL1ui64vNV GLEW_GET_FUN(__glewVertexAttribL1ui64vNV)
-#define glVertexAttribL2i64NV GLEW_GET_FUN(__glewVertexAttribL2i64NV)
-#define glVertexAttribL2i64vNV GLEW_GET_FUN(__glewVertexAttribL2i64vNV)
-#define glVertexAttribL2ui64NV GLEW_GET_FUN(__glewVertexAttribL2ui64NV)
-#define glVertexAttribL2ui64vNV GLEW_GET_FUN(__glewVertexAttribL2ui64vNV)
-#define glVertexAttribL3i64NV GLEW_GET_FUN(__glewVertexAttribL3i64NV)
-#define glVertexAttribL3i64vNV GLEW_GET_FUN(__glewVertexAttribL3i64vNV)
-#define glVertexAttribL3ui64NV GLEW_GET_FUN(__glewVertexAttribL3ui64NV)
-#define glVertexAttribL3ui64vNV GLEW_GET_FUN(__glewVertexAttribL3ui64vNV)
-#define glVertexAttribL4i64NV GLEW_GET_FUN(__glewVertexAttribL4i64NV)
-#define glVertexAttribL4i64vNV GLEW_GET_FUN(__glewVertexAttribL4i64vNV)
-#define glVertexAttribL4ui64NV GLEW_GET_FUN(__glewVertexAttribL4ui64NV)
-#define glVertexAttribL4ui64vNV GLEW_GET_FUN(__glewVertexAttribL4ui64vNV)
-#define glVertexAttribLFormatNV GLEW_GET_FUN(__glewVertexAttribLFormatNV)
-
-#define GLEW_NV_vertex_attrib_integer_64bit GLEW_GET_VAR(__GLEW_NV_vertex_attrib_integer_64bit)
-
-#endif /* GL_NV_vertex_attrib_integer_64bit */
-
-/* ------------------- GL_NV_vertex_buffer_unified_memory ------------------ */
-
-#ifndef GL_NV_vertex_buffer_unified_memory
-#define GL_NV_vertex_buffer_unified_memory 1
-
-#define GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV 0x8F1E
-#define GL_ELEMENT_ARRAY_UNIFIED_NV 0x8F1F
-#define GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV 0x8F20
-#define GL_VERTEX_ARRAY_ADDRESS_NV 0x8F21
-#define GL_NORMAL_ARRAY_ADDRESS_NV 0x8F22
-#define GL_COLOR_ARRAY_ADDRESS_NV 0x8F23
-#define GL_INDEX_ARRAY_ADDRESS_NV 0x8F24
-#define GL_TEXTURE_COORD_ARRAY_ADDRESS_NV 0x8F25
-#define GL_EDGE_FLAG_ARRAY_ADDRESS_NV 0x8F26
-#define GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV 0x8F27
-#define GL_FOG_COORD_ARRAY_ADDRESS_NV 0x8F28
-#define GL_ELEMENT_ARRAY_ADDRESS_NV 0x8F29
-#define GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV 0x8F2A
-#define GL_VERTEX_ARRAY_LENGTH_NV 0x8F2B
-#define GL_NORMAL_ARRAY_LENGTH_NV 0x8F2C
-#define GL_COLOR_ARRAY_LENGTH_NV 0x8F2D
-#define GL_INDEX_ARRAY_LENGTH_NV 0x8F2E
-#define GL_TEXTURE_COORD_ARRAY_LENGTH_NV 0x8F2F
-#define GL_EDGE_FLAG_ARRAY_LENGTH_NV 0x8F30
-#define GL_SECONDARY_COLOR_ARRAY_LENGTH_NV 0x8F31
-#define GL_FOG_COORD_ARRAY_LENGTH_NV 0x8F32
-#define GL_ELEMENT_ARRAY_LENGTH_NV 0x8F33
-
-typedef void (GLAPIENTRY * PFNGLBUFFERADDRESSRANGENVPROC) (GLenum pname, GLuint index, GLuint64EXT address, GLsizeiptr length);
-typedef void (GLAPIENTRY * PFNGLCOLORFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);
-typedef void (GLAPIENTRY * PFNGLEDGEFLAGFORMATNVPROC) (GLsizei stride);
-typedef void (GLAPIENTRY * PFNGLFOGCOORDFORMATNVPROC) (GLenum type, GLsizei stride);
-typedef void (GLAPIENTRY * PFNGLGETINTEGERUI64I_VNVPROC) (GLenum value, GLuint index, GLuint64EXT result[]);
-typedef void (GLAPIENTRY * PFNGLINDEXFORMATNVPROC) (GLenum type, GLsizei stride);
-typedef void (GLAPIENTRY * PFNGLNORMALFORMATNVPROC) (GLenum type, GLsizei stride);
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);
-typedef void (GLAPIENTRY * PFNGLTEXCOORDFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride);
-typedef void (GLAPIENTRY * PFNGLVERTEXFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);
-
-#define glBufferAddressRangeNV GLEW_GET_FUN(__glewBufferAddressRangeNV)
-#define glColorFormatNV GLEW_GET_FUN(__glewColorFormatNV)
-#define glEdgeFlagFormatNV GLEW_GET_FUN(__glewEdgeFlagFormatNV)
-#define glFogCoordFormatNV GLEW_GET_FUN(__glewFogCoordFormatNV)
-#define glGetIntegerui64i_vNV GLEW_GET_FUN(__glewGetIntegerui64i_vNV)
-#define glIndexFormatNV GLEW_GET_FUN(__glewIndexFormatNV)
-#define glNormalFormatNV GLEW_GET_FUN(__glewNormalFormatNV)
-#define glSecondaryColorFormatNV GLEW_GET_FUN(__glewSecondaryColorFormatNV)
-#define glTexCoordFormatNV GLEW_GET_FUN(__glewTexCoordFormatNV)
-#define glVertexAttribFormatNV GLEW_GET_FUN(__glewVertexAttribFormatNV)
-#define glVertexAttribIFormatNV GLEW_GET_FUN(__glewVertexAttribIFormatNV)
-#define glVertexFormatNV GLEW_GET_FUN(__glewVertexFormatNV)
-
-#define GLEW_NV_vertex_buffer_unified_memory GLEW_GET_VAR(__GLEW_NV_vertex_buffer_unified_memory)
-
-#endif /* GL_NV_vertex_buffer_unified_memory */
-
-/* -------------------------- GL_NV_vertex_program ------------------------- */
-
-#ifndef GL_NV_vertex_program
-#define GL_NV_vertex_program 1
-
-#define GL_VERTEX_PROGRAM_NV 0x8620
-#define GL_VERTEX_STATE_PROGRAM_NV 0x8621
-#define GL_ATTRIB_ARRAY_SIZE_NV 0x8623
-#define GL_ATTRIB_ARRAY_STRIDE_NV 0x8624
-#define GL_ATTRIB_ARRAY_TYPE_NV 0x8625
-#define GL_CURRENT_ATTRIB_NV 0x8626
-#define GL_PROGRAM_LENGTH_NV 0x8627
-#define GL_PROGRAM_STRING_NV 0x8628
-#define GL_MODELVIEW_PROJECTION_NV 0x8629
-#define GL_IDENTITY_NV 0x862A
-#define GL_INVERSE_NV 0x862B
-#define GL_TRANSPOSE_NV 0x862C
-#define GL_INVERSE_TRANSPOSE_NV 0x862D
-#define GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV 0x862E
-#define GL_MAX_TRACK_MATRICES_NV 0x862F
-#define GL_MATRIX0_NV 0x8630
-#define GL_MATRIX1_NV 0x8631
-#define GL_MATRIX2_NV 0x8632
-#define GL_MATRIX3_NV 0x8633
-#define GL_MATRIX4_NV 0x8634
-#define GL_MATRIX5_NV 0x8635
-#define GL_MATRIX6_NV 0x8636
-#define GL_MATRIX7_NV 0x8637
-#define GL_CURRENT_MATRIX_STACK_DEPTH_NV 0x8640
-#define GL_CURRENT_MATRIX_NV 0x8641
-#define GL_VERTEX_PROGRAM_POINT_SIZE_NV 0x8642
-#define GL_VERTEX_PROGRAM_TWO_SIDE_NV 0x8643
-#define GL_PROGRAM_PARAMETER_NV 0x8644
-#define GL_ATTRIB_ARRAY_POINTER_NV 0x8645
-#define GL_PROGRAM_TARGET_NV 0x8646
-#define GL_PROGRAM_RESIDENT_NV 0x8647
-#define GL_TRACK_MATRIX_NV 0x8648
-#define GL_TRACK_MATRIX_TRANSFORM_NV 0x8649
-#define GL_VERTEX_PROGRAM_BINDING_NV 0x864A
-#define GL_PROGRAM_ERROR_POSITION_NV 0x864B
-#define GL_VERTEX_ATTRIB_ARRAY0_NV 0x8650
-#define GL_VERTEX_ATTRIB_ARRAY1_NV 0x8651
-#define GL_VERTEX_ATTRIB_ARRAY2_NV 0x8652
-#define GL_VERTEX_ATTRIB_ARRAY3_NV 0x8653
-#define GL_VERTEX_ATTRIB_ARRAY4_NV 0x8654
-#define GL_VERTEX_ATTRIB_ARRAY5_NV 0x8655
-#define GL_VERTEX_ATTRIB_ARRAY6_NV 0x8656
-#define GL_VERTEX_ATTRIB_ARRAY7_NV 0x8657
-#define GL_VERTEX_ATTRIB_ARRAY8_NV 0x8658
-#define GL_VERTEX_ATTRIB_ARRAY9_NV 0x8659
-#define GL_VERTEX_ATTRIB_ARRAY10_NV 0x865A
-#define GL_VERTEX_ATTRIB_ARRAY11_NV 0x865B
-#define GL_VERTEX_ATTRIB_ARRAY12_NV 0x865C
-#define GL_VERTEX_ATTRIB_ARRAY13_NV 0x865D
-#define GL_VERTEX_ATTRIB_ARRAY14_NV 0x865E
-#define GL_VERTEX_ATTRIB_ARRAY15_NV 0x865F
-#define GL_MAP1_VERTEX_ATTRIB0_4_NV 0x8660
-#define GL_MAP1_VERTEX_ATTRIB1_4_NV 0x8661
-#define GL_MAP1_VERTEX_ATTRIB2_4_NV 0x8662
-#define GL_MAP1_VERTEX_ATTRIB3_4_NV 0x8663
-#define GL_MAP1_VERTEX_ATTRIB4_4_NV 0x8664
-#define GL_MAP1_VERTEX_ATTRIB5_4_NV 0x8665
-#define GL_MAP1_VERTEX_ATTRIB6_4_NV 0x8666
-#define GL_MAP1_VERTEX_ATTRIB7_4_NV 0x8667
-#define GL_MAP1_VERTEX_ATTRIB8_4_NV 0x8668
-#define GL_MAP1_VERTEX_ATTRIB9_4_NV 0x8669
-#define GL_MAP1_VERTEX_ATTRIB10_4_NV 0x866A
-#define GL_MAP1_VERTEX_ATTRIB11_4_NV 0x866B
-#define GL_MAP1_VERTEX_ATTRIB12_4_NV 0x866C
-#define GL_MAP1_VERTEX_ATTRIB13_4_NV 0x866D
-#define GL_MAP1_VERTEX_ATTRIB14_4_NV 0x866E
-#define GL_MAP1_VERTEX_ATTRIB15_4_NV 0x866F
-#define GL_MAP2_VERTEX_ATTRIB0_4_NV 0x8670
-#define GL_MAP2_VERTEX_ATTRIB1_4_NV 0x8671
-#define GL_MAP2_VERTEX_ATTRIB2_4_NV 0x8672
-#define GL_MAP2_VERTEX_ATTRIB3_4_NV 0x8673
-#define GL_MAP2_VERTEX_ATTRIB4_4_NV 0x8674
-#define GL_MAP2_VERTEX_ATTRIB5_4_NV 0x8675
-#define GL_MAP2_VERTEX_ATTRIB6_4_NV 0x8676
-#define GL_MAP2_VERTEX_ATTRIB7_4_NV 0x8677
-#define GL_MAP2_VERTEX_ATTRIB8_4_NV 0x8678
-#define GL_MAP2_VERTEX_ATTRIB9_4_NV 0x8679
-#define GL_MAP2_VERTEX_ATTRIB10_4_NV 0x867A
-#define GL_MAP2_VERTEX_ATTRIB11_4_NV 0x867B
-#define GL_MAP2_VERTEX_ATTRIB12_4_NV 0x867C
-#define GL_MAP2_VERTEX_ATTRIB13_4_NV 0x867D
-#define GL_MAP2_VERTEX_ATTRIB14_4_NV 0x867E
-#define GL_MAP2_VERTEX_ATTRIB15_4_NV 0x867F
-
-typedef GLboolean (GLAPIENTRY * PFNGLAREPROGRAMSRESIDENTNVPROC) (GLsizei n, const GLuint* ids, GLboolean *residences);
-typedef void (GLAPIENTRY * PFNGLBINDPROGRAMNVPROC) (GLenum target, GLuint id);
-typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMSNVPROC) (GLsizei n, const GLuint* ids);
-typedef void (GLAPIENTRY * PFNGLEXECUTEPROGRAMNVPROC) (GLenum target, GLuint id, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGENPROGRAMSNVPROC) (GLsizei n, GLuint* ids);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMPARAMETERDVNVPROC) (GLenum target, GLuint index, GLenum pname, GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMPARAMETERFVNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMSTRINGNVPROC) (GLuint id, GLenum pname, GLubyte* program);
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVNVPROC) (GLuint id, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETTRACKMATRIXIVNVPROC) (GLenum target, GLuint address, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVNVPROC) (GLuint index, GLenum pname, GLvoid** pointer);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBDVNVPROC) (GLuint index, GLenum pname, GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVNVPROC) (GLuint index, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVNVPROC) (GLuint index, GLenum pname, GLint* params);
-typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMNVPROC) (GLuint id);
-typedef void (GLAPIENTRY * PFNGLLOADPROGRAMNVPROC) (GLenum target, GLuint id, GLsizei len, const GLubyte* program);
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4DNVPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4DVNVPROC) (GLenum target, GLuint index, const GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4FNVPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4FVNVPROC) (GLenum target, GLuint index, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERS4DVNVPROC) (GLenum target, GLuint index, GLuint num, const GLdouble* params);
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERS4FVNVPROC) (GLenum target, GLuint index, GLuint num, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLREQUESTRESIDENTPROGRAMSNVPROC) (GLsizei n, GLuint* ids);
-typedef void (GLAPIENTRY * PFNGLTRACKMATRIXNVPROC) (GLenum target, GLuint address, GLenum matrix, GLenum transform);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DNVPROC) (GLuint index, GLdouble x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DVNVPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FNVPROC) (GLuint index, GLfloat x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVNVPROC) (GLuint index, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SNVPROC) (GLuint index, GLshort x);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SVNVPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DNVPROC) (GLuint index, GLdouble x, GLdouble y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DVNVPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FNVPROC) (GLuint index, GLfloat x, GLfloat y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVNVPROC) (GLuint index, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SNVPROC) (GLuint index, GLshort x, GLshort y);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SVNVPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DVNVPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVNVPROC) (GLuint index, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SVNVPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DVNVPROC) (GLuint index, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVNVPROC) (GLuint index, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SVNVPROC) (GLuint index, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBNVPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBVNVPROC) (GLuint index, const GLubyte* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1SVNVPROC) (GLuint index, GLsizei n, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2SVNVPROC) (GLuint index, GLsizei n, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3SVNVPROC) (GLuint index, GLsizei n, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4SVNVPROC) (GLuint index, GLsizei n, const GLshort* v);
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4UBVNVPROC) (GLuint index, GLsizei n, const GLubyte* v);
-
-#define glAreProgramsResidentNV GLEW_GET_FUN(__glewAreProgramsResidentNV)
-#define glBindProgramNV GLEW_GET_FUN(__glewBindProgramNV)
-#define glDeleteProgramsNV GLEW_GET_FUN(__glewDeleteProgramsNV)
-#define glExecuteProgramNV GLEW_GET_FUN(__glewExecuteProgramNV)
-#define glGenProgramsNV GLEW_GET_FUN(__glewGenProgramsNV)
-#define glGetProgramParameterdvNV GLEW_GET_FUN(__glewGetProgramParameterdvNV)
-#define glGetProgramParameterfvNV GLEW_GET_FUN(__glewGetProgramParameterfvNV)
-#define glGetProgramStringNV GLEW_GET_FUN(__glewGetProgramStringNV)
-#define glGetProgramivNV GLEW_GET_FUN(__glewGetProgramivNV)
-#define glGetTrackMatrixivNV GLEW_GET_FUN(__glewGetTrackMatrixivNV)
-#define glGetVertexAttribPointervNV GLEW_GET_FUN(__glewGetVertexAttribPointervNV)
-#define glGetVertexAttribdvNV GLEW_GET_FUN(__glewGetVertexAttribdvNV)
-#define glGetVertexAttribfvNV GLEW_GET_FUN(__glewGetVertexAttribfvNV)
-#define glGetVertexAttribivNV GLEW_GET_FUN(__glewGetVertexAttribivNV)
-#define glIsProgramNV GLEW_GET_FUN(__glewIsProgramNV)
-#define glLoadProgramNV GLEW_GET_FUN(__glewLoadProgramNV)
-#define glProgramParameter4dNV GLEW_GET_FUN(__glewProgramParameter4dNV)
-#define glProgramParameter4dvNV GLEW_GET_FUN(__glewProgramParameter4dvNV)
-#define glProgramParameter4fNV GLEW_GET_FUN(__glewProgramParameter4fNV)
-#define glProgramParameter4fvNV GLEW_GET_FUN(__glewProgramParameter4fvNV)
-#define glProgramParameters4dvNV GLEW_GET_FUN(__glewProgramParameters4dvNV)
-#define glProgramParameters4fvNV GLEW_GET_FUN(__glewProgramParameters4fvNV)
-#define glRequestResidentProgramsNV GLEW_GET_FUN(__glewRequestResidentProgramsNV)
-#define glTrackMatrixNV GLEW_GET_FUN(__glewTrackMatrixNV)
-#define glVertexAttrib1dNV GLEW_GET_FUN(__glewVertexAttrib1dNV)
-#define glVertexAttrib1dvNV GLEW_GET_FUN(__glewVertexAttrib1dvNV)
-#define glVertexAttrib1fNV GLEW_GET_FUN(__glewVertexAttrib1fNV)
-#define glVertexAttrib1fvNV GLEW_GET_FUN(__glewVertexAttrib1fvNV)
-#define glVertexAttrib1sNV GLEW_GET_FUN(__glewVertexAttrib1sNV)
-#define glVertexAttrib1svNV GLEW_GET_FUN(__glewVertexAttrib1svNV)
-#define glVertexAttrib2dNV GLEW_GET_FUN(__glewVertexAttrib2dNV)
-#define glVertexAttrib2dvNV GLEW_GET_FUN(__glewVertexAttrib2dvNV)
-#define glVertexAttrib2fNV GLEW_GET_FUN(__glewVertexAttrib2fNV)
-#define glVertexAttrib2fvNV GLEW_GET_FUN(__glewVertexAttrib2fvNV)
-#define glVertexAttrib2sNV GLEW_GET_FUN(__glewVertexAttrib2sNV)
-#define glVertexAttrib2svNV GLEW_GET_FUN(__glewVertexAttrib2svNV)
-#define glVertexAttrib3dNV GLEW_GET_FUN(__glewVertexAttrib3dNV)
-#define glVertexAttrib3dvNV GLEW_GET_FUN(__glewVertexAttrib3dvNV)
-#define glVertexAttrib3fNV GLEW_GET_FUN(__glewVertexAttrib3fNV)
-#define glVertexAttrib3fvNV GLEW_GET_FUN(__glewVertexAttrib3fvNV)
-#define glVertexAttrib3sNV GLEW_GET_FUN(__glewVertexAttrib3sNV)
-#define glVertexAttrib3svNV GLEW_GET_FUN(__glewVertexAttrib3svNV)
-#define glVertexAttrib4dNV GLEW_GET_FUN(__glewVertexAttrib4dNV)
-#define glVertexAttrib4dvNV GLEW_GET_FUN(__glewVertexAttrib4dvNV)
-#define glVertexAttrib4fNV GLEW_GET_FUN(__glewVertexAttrib4fNV)
-#define glVertexAttrib4fvNV GLEW_GET_FUN(__glewVertexAttrib4fvNV)
-#define glVertexAttrib4sNV GLEW_GET_FUN(__glewVertexAttrib4sNV)
-#define glVertexAttrib4svNV GLEW_GET_FUN(__glewVertexAttrib4svNV)
-#define glVertexAttrib4ubNV GLEW_GET_FUN(__glewVertexAttrib4ubNV)
-#define glVertexAttrib4ubvNV GLEW_GET_FUN(__glewVertexAttrib4ubvNV)
-#define glVertexAttribPointerNV GLEW_GET_FUN(__glewVertexAttribPointerNV)
-#define glVertexAttribs1dvNV GLEW_GET_FUN(__glewVertexAttribs1dvNV)
-#define glVertexAttribs1fvNV GLEW_GET_FUN(__glewVertexAttribs1fvNV)
-#define glVertexAttribs1svNV GLEW_GET_FUN(__glewVertexAttribs1svNV)
-#define glVertexAttribs2dvNV GLEW_GET_FUN(__glewVertexAttribs2dvNV)
-#define glVertexAttribs2fvNV GLEW_GET_FUN(__glewVertexAttribs2fvNV)
-#define glVertexAttribs2svNV GLEW_GET_FUN(__glewVertexAttribs2svNV)
-#define glVertexAttribs3dvNV GLEW_GET_FUN(__glewVertexAttribs3dvNV)
-#define glVertexAttribs3fvNV GLEW_GET_FUN(__glewVertexAttribs3fvNV)
-#define glVertexAttribs3svNV GLEW_GET_FUN(__glewVertexAttribs3svNV)
-#define glVertexAttribs4dvNV GLEW_GET_FUN(__glewVertexAttribs4dvNV)
-#define glVertexAttribs4fvNV GLEW_GET_FUN(__glewVertexAttribs4fvNV)
-#define glVertexAttribs4svNV GLEW_GET_FUN(__glewVertexAttribs4svNV)
-#define glVertexAttribs4ubvNV GLEW_GET_FUN(__glewVertexAttribs4ubvNV)
-
-#define GLEW_NV_vertex_program GLEW_GET_VAR(__GLEW_NV_vertex_program)
-
-#endif /* GL_NV_vertex_program */
-
-/* ------------------------ GL_NV_vertex_program1_1 ------------------------ */
-
-#ifndef GL_NV_vertex_program1_1
-#define GL_NV_vertex_program1_1 1
-
-#define GLEW_NV_vertex_program1_1 GLEW_GET_VAR(__GLEW_NV_vertex_program1_1)
-
-#endif /* GL_NV_vertex_program1_1 */
-
-/* ------------------------- GL_NV_vertex_program2 ------------------------- */
-
-#ifndef GL_NV_vertex_program2
-#define GL_NV_vertex_program2 1
-
-#define GLEW_NV_vertex_program2 GLEW_GET_VAR(__GLEW_NV_vertex_program2)
-
-#endif /* GL_NV_vertex_program2 */
-
-/* ---------------------- GL_NV_vertex_program2_option --------------------- */
-
-#ifndef GL_NV_vertex_program2_option
-#define GL_NV_vertex_program2_option 1
-
-#define GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4
-#define GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5
-
-#define GLEW_NV_vertex_program2_option GLEW_GET_VAR(__GLEW_NV_vertex_program2_option)
-
-#endif /* GL_NV_vertex_program2_option */
-
-/* ------------------------- GL_NV_vertex_program3 ------------------------- */
-
-#ifndef GL_NV_vertex_program3
-#define GL_NV_vertex_program3 1
-
-#define MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C
-
-#define GLEW_NV_vertex_program3 GLEW_GET_VAR(__GLEW_NV_vertex_program3)
-
-#endif /* GL_NV_vertex_program3 */
-
-/* ------------------------- GL_NV_vertex_program4 ------------------------- */
-
-#ifndef GL_NV_vertex_program4
-#define GL_NV_vertex_program4 1
-
-#define GLEW_NV_vertex_program4 GLEW_GET_VAR(__GLEW_NV_vertex_program4)
-
-#endif /* GL_NV_vertex_program4 */
-
-/* ------------------------ GL_OES_byte_coordinates ------------------------ */
-
-#ifndef GL_OES_byte_coordinates
-#define GL_OES_byte_coordinates 1
-
-#define GL_BYTE 0x1400
-
-#define GLEW_OES_byte_coordinates GLEW_GET_VAR(__GLEW_OES_byte_coordinates)
-
-#endif /* GL_OES_byte_coordinates */
-
-/* ------------------- GL_OES_compressed_paletted_texture ------------------ */
-
-#ifndef GL_OES_compressed_paletted_texture
-#define GL_OES_compressed_paletted_texture 1
-
-#define GL_PALETTE4_RGB8_OES 0x8B90
-#define GL_PALETTE4_RGBA8_OES 0x8B91
-#define GL_PALETTE4_R5_G6_B5_OES 0x8B92
-#define GL_PALETTE4_RGBA4_OES 0x8B93
-#define GL_PALETTE4_RGB5_A1_OES 0x8B94
-#define GL_PALETTE8_RGB8_OES 0x8B95
-#define GL_PALETTE8_RGBA8_OES 0x8B96
-#define GL_PALETTE8_R5_G6_B5_OES 0x8B97
-#define GL_PALETTE8_RGBA4_OES 0x8B98
-#define GL_PALETTE8_RGB5_A1_OES 0x8B99
-
-#define GLEW_OES_compressed_paletted_texture GLEW_GET_VAR(__GLEW_OES_compressed_paletted_texture)
-
-#endif /* GL_OES_compressed_paletted_texture */
-
-/* --------------------------- GL_OES_read_format -------------------------- */
-
-#ifndef GL_OES_read_format
-#define GL_OES_read_format 1
-
-#define GL_IMPLEMENTATION_COLOR_READ_TYPE_OES 0x8B9A
-#define GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES 0x8B9B
-
-#define GLEW_OES_read_format GLEW_GET_VAR(__GLEW_OES_read_format)
-
-#endif /* GL_OES_read_format */
-
-/* ------------------------ GL_OES_single_precision ------------------------ */
-
-#ifndef GL_OES_single_precision
-#define GL_OES_single_precision 1
-
-typedef void (GLAPIENTRY * PFNGLCLEARDEPTHFOESPROC) (GLclampd depth);
-typedef void (GLAPIENTRY * PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat* equation);
-typedef void (GLAPIENTRY * PFNGLDEPTHRANGEFOESPROC) (GLclampf n, GLclampf f);
-typedef void (GLAPIENTRY * PFNGLFRUSTUMFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
-typedef void (GLAPIENTRY * PFNGLGETCLIPPLANEFOESPROC) (GLenum plane, GLfloat* equation);
-typedef void (GLAPIENTRY * PFNGLORTHOFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
-
-#define glClearDepthfOES GLEW_GET_FUN(__glewClearDepthfOES)
-#define glClipPlanefOES GLEW_GET_FUN(__glewClipPlanefOES)
-#define glDepthRangefOES GLEW_GET_FUN(__glewDepthRangefOES)
-#define glFrustumfOES GLEW_GET_FUN(__glewFrustumfOES)
-#define glGetClipPlanefOES GLEW_GET_FUN(__glewGetClipPlanefOES)
-#define glOrthofOES GLEW_GET_FUN(__glewOrthofOES)
-
-#define GLEW_OES_single_precision GLEW_GET_VAR(__GLEW_OES_single_precision)
-
-#endif /* GL_OES_single_precision */
-
-/* ---------------------------- GL_OML_interlace --------------------------- */
-
-#ifndef GL_OML_interlace
-#define GL_OML_interlace 1
-
-#define GL_INTERLACE_OML 0x8980
-#define GL_INTERLACE_READ_OML 0x8981
-
-#define GLEW_OML_interlace GLEW_GET_VAR(__GLEW_OML_interlace)
-
-#endif /* GL_OML_interlace */
-
-/* ---------------------------- GL_OML_resample ---------------------------- */
-
-#ifndef GL_OML_resample
-#define GL_OML_resample 1
-
-#define GL_PACK_RESAMPLE_OML 0x8984
-#define GL_UNPACK_RESAMPLE_OML 0x8985
-#define GL_RESAMPLE_REPLICATE_OML 0x8986
-#define GL_RESAMPLE_ZERO_FILL_OML 0x8987
-#define GL_RESAMPLE_AVERAGE_OML 0x8988
-#define GL_RESAMPLE_DECIMATE_OML 0x8989
-
-#define GLEW_OML_resample GLEW_GET_VAR(__GLEW_OML_resample)
-
-#endif /* GL_OML_resample */
-
-/* ---------------------------- GL_OML_subsample --------------------------- */
-
-#ifndef GL_OML_subsample
-#define GL_OML_subsample 1
-
-#define GL_FORMAT_SUBSAMPLE_24_24_OML 0x8982
-#define GL_FORMAT_SUBSAMPLE_244_244_OML 0x8983
-
-#define GLEW_OML_subsample GLEW_GET_VAR(__GLEW_OML_subsample)
-
-#endif /* GL_OML_subsample */
-
-/* --------------------------- GL_PGI_misc_hints --------------------------- */
-
-#ifndef GL_PGI_misc_hints
-#define GL_PGI_misc_hints 1
-
-#define GL_PREFER_DOUBLEBUFFER_HINT_PGI 107000
-#define GL_CONSERVE_MEMORY_HINT_PGI 107005
-#define GL_RECLAIM_MEMORY_HINT_PGI 107006
-#define GL_NATIVE_GRAPHICS_HANDLE_PGI 107010
-#define GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI 107011
-#define GL_NATIVE_GRAPHICS_END_HINT_PGI 107012
-#define GL_ALWAYS_FAST_HINT_PGI 107020
-#define GL_ALWAYS_SOFT_HINT_PGI 107021
-#define GL_ALLOW_DRAW_OBJ_HINT_PGI 107022
-#define GL_ALLOW_DRAW_WIN_HINT_PGI 107023
-#define GL_ALLOW_DRAW_FRG_HINT_PGI 107024
-#define GL_ALLOW_DRAW_MEM_HINT_PGI 107025
-#define GL_STRICT_DEPTHFUNC_HINT_PGI 107030
-#define GL_STRICT_LIGHTING_HINT_PGI 107031
-#define GL_STRICT_SCISSOR_HINT_PGI 107032
-#define GL_FULL_STIPPLE_HINT_PGI 107033
-#define GL_CLIP_NEAR_HINT_PGI 107040
-#define GL_CLIP_FAR_HINT_PGI 107041
-#define GL_WIDE_LINE_HINT_PGI 107042
-#define GL_BACK_NORMALS_HINT_PGI 107043
-
-#define GLEW_PGI_misc_hints GLEW_GET_VAR(__GLEW_PGI_misc_hints)
-
-#endif /* GL_PGI_misc_hints */
-
-/* -------------------------- GL_PGI_vertex_hints -------------------------- */
-
-#ifndef GL_PGI_vertex_hints
-#define GL_PGI_vertex_hints 1
-
-#define GL_VERTEX23_BIT_PGI 0x00000004
-#define GL_VERTEX4_BIT_PGI 0x00000008
-#define GL_COLOR3_BIT_PGI 0x00010000
-#define GL_COLOR4_BIT_PGI 0x00020000
-#define GL_EDGEFLAG_BIT_PGI 0x00040000
-#define GL_INDEX_BIT_PGI 0x00080000
-#define GL_MAT_AMBIENT_BIT_PGI 0x00100000
-#define GL_VERTEX_DATA_HINT_PGI 107050
-#define GL_VERTEX_CONSISTENT_HINT_PGI 107051
-#define GL_MATERIAL_SIDE_HINT_PGI 107052
-#define GL_MAX_VERTEX_HINT_PGI 107053
-#define GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI 0x00200000
-#define GL_MAT_DIFFUSE_BIT_PGI 0x00400000
-#define GL_MAT_EMISSION_BIT_PGI 0x00800000
-#define GL_MAT_COLOR_INDEXES_BIT_PGI 0x01000000
-#define GL_MAT_SHININESS_BIT_PGI 0x02000000
-#define GL_MAT_SPECULAR_BIT_PGI 0x04000000
-#define GL_NORMAL_BIT_PGI 0x08000000
-#define GL_TEXCOORD1_BIT_PGI 0x10000000
-#define GL_TEXCOORD2_BIT_PGI 0x20000000
-#define GL_TEXCOORD3_BIT_PGI 0x40000000
-#define GL_TEXCOORD4_BIT_PGI 0x80000000
-
-#define GLEW_PGI_vertex_hints GLEW_GET_VAR(__GLEW_PGI_vertex_hints)
-
-#endif /* GL_PGI_vertex_hints */
-
-/* ----------------------- GL_REND_screen_coordinates ---------------------- */
-
-#ifndef GL_REND_screen_coordinates
-#define GL_REND_screen_coordinates 1
-
-#define GL_SCREEN_COORDINATES_REND 0x8490
-#define GL_INVERTED_SCREEN_W_REND 0x8491
-
-#define GLEW_REND_screen_coordinates GLEW_GET_VAR(__GLEW_REND_screen_coordinates)
-
-#endif /* GL_REND_screen_coordinates */
-
-/* ------------------------------- GL_S3_s3tc ------------------------------ */
-
-#ifndef GL_S3_s3tc
-#define GL_S3_s3tc 1
-
-#define GL_RGB_S3TC 0x83A0
-#define GL_RGB4_S3TC 0x83A1
-#define GL_RGBA_S3TC 0x83A2
-#define GL_RGBA4_S3TC 0x83A3
-#define GL_RGBA_DXT5_S3TC 0x83A4
-#define GL_RGBA4_DXT5_S3TC 0x83A5
-
-#define GLEW_S3_s3tc GLEW_GET_VAR(__GLEW_S3_s3tc)
-
-#endif /* GL_S3_s3tc */
-
-/* -------------------------- GL_SGIS_color_range -------------------------- */
-
-#ifndef GL_SGIS_color_range
-#define GL_SGIS_color_range 1
-
-#define GL_EXTENDED_RANGE_SGIS 0x85A5
-#define GL_MIN_RED_SGIS 0x85A6
-#define GL_MAX_RED_SGIS 0x85A7
-#define GL_MIN_GREEN_SGIS 0x85A8
-#define GL_MAX_GREEN_SGIS 0x85A9
-#define GL_MIN_BLUE_SGIS 0x85AA
-#define GL_MAX_BLUE_SGIS 0x85AB
-#define GL_MIN_ALPHA_SGIS 0x85AC
-#define GL_MAX_ALPHA_SGIS 0x85AD
-
-#define GLEW_SGIS_color_range GLEW_GET_VAR(__GLEW_SGIS_color_range)
-
-#endif /* GL_SGIS_color_range */
-
-/* ------------------------- GL_SGIS_detail_texture ------------------------ */
-
-#ifndef GL_SGIS_detail_texture
-#define GL_SGIS_detail_texture 1
-
-typedef void (GLAPIENTRY * PFNGLDETAILTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat* points);
-typedef void (GLAPIENTRY * PFNGLGETDETAILTEXFUNCSGISPROC) (GLenum target, GLfloat* points);
-
-#define glDetailTexFuncSGIS GLEW_GET_FUN(__glewDetailTexFuncSGIS)
-#define glGetDetailTexFuncSGIS GLEW_GET_FUN(__glewGetDetailTexFuncSGIS)
-
-#define GLEW_SGIS_detail_texture GLEW_GET_VAR(__GLEW_SGIS_detail_texture)
-
-#endif /* GL_SGIS_detail_texture */
-
-/* -------------------------- GL_SGIS_fog_function ------------------------- */
-
-#ifndef GL_SGIS_fog_function
-#define GL_SGIS_fog_function 1
-
-typedef void (GLAPIENTRY * PFNGLFOGFUNCSGISPROC) (GLsizei n, const GLfloat* points);
-typedef void (GLAPIENTRY * PFNGLGETFOGFUNCSGISPROC) (GLfloat* points);
-
-#define glFogFuncSGIS GLEW_GET_FUN(__glewFogFuncSGIS)
-#define glGetFogFuncSGIS GLEW_GET_FUN(__glewGetFogFuncSGIS)
-
-#define GLEW_SGIS_fog_function GLEW_GET_VAR(__GLEW_SGIS_fog_function)
-
-#endif /* GL_SGIS_fog_function */
-
-/* ------------------------ GL_SGIS_generate_mipmap ------------------------ */
-
-#ifndef GL_SGIS_generate_mipmap
-#define GL_SGIS_generate_mipmap 1
-
-#define GL_GENERATE_MIPMAP_SGIS 0x8191
-#define GL_GENERATE_MIPMAP_HINT_SGIS 0x8192
-
-#define GLEW_SGIS_generate_mipmap GLEW_GET_VAR(__GLEW_SGIS_generate_mipmap)
-
-#endif /* GL_SGIS_generate_mipmap */
-
-/* -------------------------- GL_SGIS_multisample -------------------------- */
-
-#ifndef GL_SGIS_multisample
-#define GL_SGIS_multisample 1
-
-#define GL_MULTISAMPLE_SGIS 0x809D
-#define GL_SAMPLE_ALPHA_TO_MASK_SGIS 0x809E
-#define GL_SAMPLE_ALPHA_TO_ONE_SGIS 0x809F
-#define GL_SAMPLE_MASK_SGIS 0x80A0
-#define GL_1PASS_SGIS 0x80A1
-#define GL_2PASS_0_SGIS 0x80A2
-#define GL_2PASS_1_SGIS 0x80A3
-#define GL_4PASS_0_SGIS 0x80A4
-#define GL_4PASS_1_SGIS 0x80A5
-#define GL_4PASS_2_SGIS 0x80A6
-#define GL_4PASS_3_SGIS 0x80A7
-#define GL_SAMPLE_BUFFERS_SGIS 0x80A8
-#define GL_SAMPLES_SGIS 0x80A9
-#define GL_SAMPLE_MASK_VALUE_SGIS 0x80AA
-#define GL_SAMPLE_MASK_INVERT_SGIS 0x80AB
-#define GL_SAMPLE_PATTERN_SGIS 0x80AC
-#define GL_MULTISAMPLE_BIT_EXT 0x20000000
-
-typedef void (GLAPIENTRY * PFNGLSAMPLEMASKSGISPROC) (GLclampf value, GLboolean invert);
-typedef void (GLAPIENTRY * PFNGLSAMPLEPATTERNSGISPROC) (GLenum pattern);
-
-#define glSampleMaskSGIS GLEW_GET_FUN(__glewSampleMaskSGIS)
-#define glSamplePatternSGIS GLEW_GET_FUN(__glewSamplePatternSGIS)
-
-#define GLEW_SGIS_multisample GLEW_GET_VAR(__GLEW_SGIS_multisample)
-
-#endif /* GL_SGIS_multisample */
-
-/* ------------------------- GL_SGIS_pixel_texture ------------------------- */
-
-#ifndef GL_SGIS_pixel_texture
-#define GL_SGIS_pixel_texture 1
-
-#define GLEW_SGIS_pixel_texture GLEW_GET_VAR(__GLEW_SGIS_pixel_texture)
-
-#endif /* GL_SGIS_pixel_texture */
-
-/* ----------------------- GL_SGIS_point_line_texgen ----------------------- */
-
-#ifndef GL_SGIS_point_line_texgen
-#define GL_SGIS_point_line_texgen 1
-
-#define GL_EYE_DISTANCE_TO_POINT_SGIS 0x81F0
-#define GL_OBJECT_DISTANCE_TO_POINT_SGIS 0x81F1
-#define GL_EYE_DISTANCE_TO_LINE_SGIS 0x81F2
-#define GL_OBJECT_DISTANCE_TO_LINE_SGIS 0x81F3
-#define GL_EYE_POINT_SGIS 0x81F4
-#define GL_OBJECT_POINT_SGIS 0x81F5
-#define GL_EYE_LINE_SGIS 0x81F6
-#define GL_OBJECT_LINE_SGIS 0x81F7
-
-#define GLEW_SGIS_point_line_texgen GLEW_GET_VAR(__GLEW_SGIS_point_line_texgen)
-
-#endif /* GL_SGIS_point_line_texgen */
-
-/* ------------------------ GL_SGIS_sharpen_texture ------------------------ */
-
-#ifndef GL_SGIS_sharpen_texture
-#define GL_SGIS_sharpen_texture 1
-
-typedef void (GLAPIENTRY * PFNGLGETSHARPENTEXFUNCSGISPROC) (GLenum target, GLfloat* points);
-typedef void (GLAPIENTRY * PFNGLSHARPENTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat* points);
-
-#define glGetSharpenTexFuncSGIS GLEW_GET_FUN(__glewGetSharpenTexFuncSGIS)
-#define glSharpenTexFuncSGIS GLEW_GET_FUN(__glewSharpenTexFuncSGIS)
-
-#define GLEW_SGIS_sharpen_texture GLEW_GET_VAR(__GLEW_SGIS_sharpen_texture)
-
-#endif /* GL_SGIS_sharpen_texture */
-
-/* --------------------------- GL_SGIS_texture4D --------------------------- */
-
-#ifndef GL_SGIS_texture4D
-#define GL_SGIS_texture4D 1
-
-typedef void (GLAPIENTRY * PFNGLTEXIMAGE4DSGISPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLsizei extent, GLint border, GLenum format, GLenum type, const void* pixels);
-typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE4DSGISPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint woffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei extent, GLenum format, GLenum type, const void* pixels);
-
-#define glTexImage4DSGIS GLEW_GET_FUN(__glewTexImage4DSGIS)
-#define glTexSubImage4DSGIS GLEW_GET_FUN(__glewTexSubImage4DSGIS)
-
-#define GLEW_SGIS_texture4D GLEW_GET_VAR(__GLEW_SGIS_texture4D)
-
-#endif /* GL_SGIS_texture4D */
-
-/* ---------------------- GL_SGIS_texture_border_clamp --------------------- */
-
-#ifndef GL_SGIS_texture_border_clamp
-#define GL_SGIS_texture_border_clamp 1
-
-#define GL_CLAMP_TO_BORDER_SGIS 0x812D
-
-#define GLEW_SGIS_texture_border_clamp GLEW_GET_VAR(__GLEW_SGIS_texture_border_clamp)
-
-#endif /* GL_SGIS_texture_border_clamp */
-
-/* ----------------------- GL_SGIS_texture_edge_clamp ---------------------- */
-
-#ifndef GL_SGIS_texture_edge_clamp
-#define GL_SGIS_texture_edge_clamp 1
-
-#define GL_CLAMP_TO_EDGE_SGIS 0x812F
-
-#define GLEW_SGIS_texture_edge_clamp GLEW_GET_VAR(__GLEW_SGIS_texture_edge_clamp)
-
-#endif /* GL_SGIS_texture_edge_clamp */
-
-/* ------------------------ GL_SGIS_texture_filter4 ------------------------ */
-
-#ifndef GL_SGIS_texture_filter4
-#define GL_SGIS_texture_filter4 1
-
-typedef void (GLAPIENTRY * PFNGLGETTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLfloat* weights);
-typedef void (GLAPIENTRY * PFNGLTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLsizei n, const GLfloat* weights);
-
-#define glGetTexFilterFuncSGIS GLEW_GET_FUN(__glewGetTexFilterFuncSGIS)
-#define glTexFilterFuncSGIS GLEW_GET_FUN(__glewTexFilterFuncSGIS)
-
-#define GLEW_SGIS_texture_filter4 GLEW_GET_VAR(__GLEW_SGIS_texture_filter4)
-
-#endif /* GL_SGIS_texture_filter4 */
-
-/* -------------------------- GL_SGIS_texture_lod -------------------------- */
-
-#ifndef GL_SGIS_texture_lod
-#define GL_SGIS_texture_lod 1
-
-#define GL_TEXTURE_MIN_LOD_SGIS 0x813A
-#define GL_TEXTURE_MAX_LOD_SGIS 0x813B
-#define GL_TEXTURE_BASE_LEVEL_SGIS 0x813C
-#define GL_TEXTURE_MAX_LEVEL_SGIS 0x813D
-
-#define GLEW_SGIS_texture_lod GLEW_GET_VAR(__GLEW_SGIS_texture_lod)
-
-#endif /* GL_SGIS_texture_lod */
-
-/* ------------------------- GL_SGIS_texture_select ------------------------ */
-
-#ifndef GL_SGIS_texture_select
-#define GL_SGIS_texture_select 1
-
-#define GLEW_SGIS_texture_select GLEW_GET_VAR(__GLEW_SGIS_texture_select)
-
-#endif /* GL_SGIS_texture_select */
-
-/* ----------------------------- GL_SGIX_async ----------------------------- */
-
-#ifndef GL_SGIX_async
-#define GL_SGIX_async 1
-
-#define GL_ASYNC_MARKER_SGIX 0x8329
-
-typedef void (GLAPIENTRY * PFNGLASYNCMARKERSGIXPROC) (GLuint marker);
-typedef void (GLAPIENTRY * PFNGLDELETEASYNCMARKERSSGIXPROC) (GLuint marker, GLsizei range);
-typedef GLint (GLAPIENTRY * PFNGLFINISHASYNCSGIXPROC) (GLuint* markerp);
-typedef GLuint (GLAPIENTRY * PFNGLGENASYNCMARKERSSGIXPROC) (GLsizei range);
-typedef GLboolean (GLAPIENTRY * PFNGLISASYNCMARKERSGIXPROC) (GLuint marker);
-typedef GLint (GLAPIENTRY * PFNGLPOLLASYNCSGIXPROC) (GLuint* markerp);
-
-#define glAsyncMarkerSGIX GLEW_GET_FUN(__glewAsyncMarkerSGIX)
-#define glDeleteAsyncMarkersSGIX GLEW_GET_FUN(__glewDeleteAsyncMarkersSGIX)
-#define glFinishAsyncSGIX GLEW_GET_FUN(__glewFinishAsyncSGIX)
-#define glGenAsyncMarkersSGIX GLEW_GET_FUN(__glewGenAsyncMarkersSGIX)
-#define glIsAsyncMarkerSGIX GLEW_GET_FUN(__glewIsAsyncMarkerSGIX)
-#define glPollAsyncSGIX GLEW_GET_FUN(__glewPollAsyncSGIX)
-
-#define GLEW_SGIX_async GLEW_GET_VAR(__GLEW_SGIX_async)
-
-#endif /* GL_SGIX_async */
-
-/* ------------------------ GL_SGIX_async_histogram ------------------------ */
-
-#ifndef GL_SGIX_async_histogram
-#define GL_SGIX_async_histogram 1
-
-#define GL_ASYNC_HISTOGRAM_SGIX 0x832C
-#define GL_MAX_ASYNC_HISTOGRAM_SGIX 0x832D
-
-#define GLEW_SGIX_async_histogram GLEW_GET_VAR(__GLEW_SGIX_async_histogram)
-
-#endif /* GL_SGIX_async_histogram */
-
-/* -------------------------- GL_SGIX_async_pixel -------------------------- */
-
-#ifndef GL_SGIX_async_pixel
-#define GL_SGIX_async_pixel 1
-
-#define GL_ASYNC_TEX_IMAGE_SGIX 0x835C
-#define GL_ASYNC_DRAW_PIXELS_SGIX 0x835D
-#define GL_ASYNC_READ_PIXELS_SGIX 0x835E
-#define GL_MAX_ASYNC_TEX_IMAGE_SGIX 0x835F
-#define GL_MAX_ASYNC_DRAW_PIXELS_SGIX 0x8360
-#define GL_MAX_ASYNC_READ_PIXELS_SGIX 0x8361
-
-#define GLEW_SGIX_async_pixel GLEW_GET_VAR(__GLEW_SGIX_async_pixel)
-
-#endif /* GL_SGIX_async_pixel */
-
-/* ----------------------- GL_SGIX_blend_alpha_minmax ---------------------- */
-
-#ifndef GL_SGIX_blend_alpha_minmax
-#define GL_SGIX_blend_alpha_minmax 1
-
-#define GL_ALPHA_MIN_SGIX 0x8320
-#define GL_ALPHA_MAX_SGIX 0x8321
-
-#define GLEW_SGIX_blend_alpha_minmax GLEW_GET_VAR(__GLEW_SGIX_blend_alpha_minmax)
-
-#endif /* GL_SGIX_blend_alpha_minmax */
-
-/* ---------------------------- GL_SGIX_clipmap ---------------------------- */
-
-#ifndef GL_SGIX_clipmap
-#define GL_SGIX_clipmap 1
-
-#define GLEW_SGIX_clipmap GLEW_GET_VAR(__GLEW_SGIX_clipmap)
-
-#endif /* GL_SGIX_clipmap */
-
-/* ---------------------- GL_SGIX_convolution_accuracy --------------------- */
-
-#ifndef GL_SGIX_convolution_accuracy
-#define GL_SGIX_convolution_accuracy 1
-
-#define GL_CONVOLUTION_HINT_SGIX 0x8316
-
-#define GLEW_SGIX_convolution_accuracy GLEW_GET_VAR(__GLEW_SGIX_convolution_accuracy)
-
-#endif /* GL_SGIX_convolution_accuracy */
-
-/* ------------------------- GL_SGIX_depth_texture ------------------------- */
-
-#ifndef GL_SGIX_depth_texture
-#define GL_SGIX_depth_texture 1
-
-#define GL_DEPTH_COMPONENT16_SGIX 0x81A5
-#define GL_DEPTH_COMPONENT24_SGIX 0x81A6
-#define GL_DEPTH_COMPONENT32_SGIX 0x81A7
-
-#define GLEW_SGIX_depth_texture GLEW_GET_VAR(__GLEW_SGIX_depth_texture)
-
-#endif /* GL_SGIX_depth_texture */
-
-/* -------------------------- GL_SGIX_flush_raster ------------------------- */
-
-#ifndef GL_SGIX_flush_raster
-#define GL_SGIX_flush_raster 1
-
-typedef void (GLAPIENTRY * PFNGLFLUSHRASTERSGIXPROC) (void);
-
-#define glFlushRasterSGIX GLEW_GET_FUN(__glewFlushRasterSGIX)
-
-#define GLEW_SGIX_flush_raster GLEW_GET_VAR(__GLEW_SGIX_flush_raster)
-
-#endif /* GL_SGIX_flush_raster */
-
-/* --------------------------- GL_SGIX_fog_offset -------------------------- */
-
-#ifndef GL_SGIX_fog_offset
-#define GL_SGIX_fog_offset 1
-
-#define GL_FOG_OFFSET_SGIX 0x8198
-#define GL_FOG_OFFSET_VALUE_SGIX 0x8199
-
-#define GLEW_SGIX_fog_offset GLEW_GET_VAR(__GLEW_SGIX_fog_offset)
-
-#endif /* GL_SGIX_fog_offset */
-
-/* -------------------------- GL_SGIX_fog_texture -------------------------- */
-
-#ifndef GL_SGIX_fog_texture
-#define GL_SGIX_fog_texture 1
-
-#define GL_TEXTURE_FOG_SGIX 0
-#define GL_FOG_PATCHY_FACTOR_SGIX 0
-#define GL_FRAGMENT_FOG_SGIX 0
-
-typedef void (GLAPIENTRY * PFNGLTEXTUREFOGSGIXPROC) (GLenum pname);
-
-#define glTextureFogSGIX GLEW_GET_FUN(__glewTextureFogSGIX)
-
-#define GLEW_SGIX_fog_texture GLEW_GET_VAR(__GLEW_SGIX_fog_texture)
-
-#endif /* GL_SGIX_fog_texture */
-
-/* ------------------- GL_SGIX_fragment_specular_lighting ------------------ */
-
-#ifndef GL_SGIX_fragment_specular_lighting
-#define GL_SGIX_fragment_specular_lighting 1
-
-typedef void (GLAPIENTRY * PFNGLFRAGMENTCOLORMATERIALSGIXPROC) (GLenum face, GLenum mode);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFSGIXPROC) (GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFVSGIXPROC) (GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELISGIXPROC) (GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELIVSGIXPROC) (GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFSGIXPROC) (GLenum light, GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFVSGIXPROC) (GLenum light, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTISGIXPROC) (GLenum light, GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTIVSGIXPROC) (GLenum light, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFSGIXPROC) (GLenum face, GLenum pname, const GLfloat param);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFVSGIXPROC) (GLenum face, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALISGIXPROC) (GLenum face, GLenum pname, const GLint param);
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALIVSGIXPROC) (GLenum face, GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTFVSGIXPROC) (GLenum light, GLenum value, GLfloat* data);
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTIVSGIXPROC) (GLenum light, GLenum value, GLint* data);
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALFVSGIXPROC) (GLenum face, GLenum pname, const GLfloat* data);
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALIVSGIXPROC) (GLenum face, GLenum pname, const GLint* data);
-
-#define glFragmentColorMaterialSGIX GLEW_GET_FUN(__glewFragmentColorMaterialSGIX)
-#define glFragmentLightModelfSGIX GLEW_GET_FUN(__glewFragmentLightModelfSGIX)
-#define glFragmentLightModelfvSGIX GLEW_GET_FUN(__glewFragmentLightModelfvSGIX)
-#define glFragmentLightModeliSGIX GLEW_GET_FUN(__glewFragmentLightModeliSGIX)
-#define glFragmentLightModelivSGIX GLEW_GET_FUN(__glewFragmentLightModelivSGIX)
-#define glFragmentLightfSGIX GLEW_GET_FUN(__glewFragmentLightfSGIX)
-#define glFragmentLightfvSGIX GLEW_GET_FUN(__glewFragmentLightfvSGIX)
-#define glFragmentLightiSGIX GLEW_GET_FUN(__glewFragmentLightiSGIX)
-#define glFragmentLightivSGIX GLEW_GET_FUN(__glewFragmentLightivSGIX)
-#define glFragmentMaterialfSGIX GLEW_GET_FUN(__glewFragmentMaterialfSGIX)
-#define glFragmentMaterialfvSGIX GLEW_GET_FUN(__glewFragmentMaterialfvSGIX)
-#define glFragmentMaterialiSGIX GLEW_GET_FUN(__glewFragmentMaterialiSGIX)
-#define glFragmentMaterialivSGIX GLEW_GET_FUN(__glewFragmentMaterialivSGIX)
-#define glGetFragmentLightfvSGIX GLEW_GET_FUN(__glewGetFragmentLightfvSGIX)
-#define glGetFragmentLightivSGIX GLEW_GET_FUN(__glewGetFragmentLightivSGIX)
-#define glGetFragmentMaterialfvSGIX GLEW_GET_FUN(__glewGetFragmentMaterialfvSGIX)
-#define glGetFragmentMaterialivSGIX GLEW_GET_FUN(__glewGetFragmentMaterialivSGIX)
-
-#define GLEW_SGIX_fragment_specular_lighting GLEW_GET_VAR(__GLEW_SGIX_fragment_specular_lighting)
-
-#endif /* GL_SGIX_fragment_specular_lighting */
-
-/* --------------------------- GL_SGIX_framezoom --------------------------- */
-
-#ifndef GL_SGIX_framezoom
-#define GL_SGIX_framezoom 1
-
-typedef void (GLAPIENTRY * PFNGLFRAMEZOOMSGIXPROC) (GLint factor);
-
-#define glFrameZoomSGIX GLEW_GET_FUN(__glewFrameZoomSGIX)
-
-#define GLEW_SGIX_framezoom GLEW_GET_VAR(__GLEW_SGIX_framezoom)
-
-#endif /* GL_SGIX_framezoom */
-
-/* --------------------------- GL_SGIX_interlace --------------------------- */
-
-#ifndef GL_SGIX_interlace
-#define GL_SGIX_interlace 1
-
-#define GL_INTERLACE_SGIX 0x8094
-
-#define GLEW_SGIX_interlace GLEW_GET_VAR(__GLEW_SGIX_interlace)
-
-#endif /* GL_SGIX_interlace */
-
-/* ------------------------- GL_SGIX_ir_instrument1 ------------------------ */
-
-#ifndef GL_SGIX_ir_instrument1
-#define GL_SGIX_ir_instrument1 1
-
-#define GLEW_SGIX_ir_instrument1 GLEW_GET_VAR(__GLEW_SGIX_ir_instrument1)
-
-#endif /* GL_SGIX_ir_instrument1 */
-
-/* ------------------------- GL_SGIX_list_priority ------------------------- */
-
-#ifndef GL_SGIX_list_priority
-#define GL_SGIX_list_priority 1
-
-#define GLEW_SGIX_list_priority GLEW_GET_VAR(__GLEW_SGIX_list_priority)
-
-#endif /* GL_SGIX_list_priority */
-
-/* ------------------------- GL_SGIX_pixel_texture ------------------------- */
-
-#ifndef GL_SGIX_pixel_texture
-#define GL_SGIX_pixel_texture 1
-
-typedef void (GLAPIENTRY * PFNGLPIXELTEXGENSGIXPROC) (GLenum mode);
-
-#define glPixelTexGenSGIX GLEW_GET_FUN(__glewPixelTexGenSGIX)
-
-#define GLEW_SGIX_pixel_texture GLEW_GET_VAR(__GLEW_SGIX_pixel_texture)
-
-#endif /* GL_SGIX_pixel_texture */
-
-/* ----------------------- GL_SGIX_pixel_texture_bits ---------------------- */
-
-#ifndef GL_SGIX_pixel_texture_bits
-#define GL_SGIX_pixel_texture_bits 1
-
-#define GLEW_SGIX_pixel_texture_bits GLEW_GET_VAR(__GLEW_SGIX_pixel_texture_bits)
-
-#endif /* GL_SGIX_pixel_texture_bits */
-
-/* ------------------------ GL_SGIX_reference_plane ------------------------ */
-
-#ifndef GL_SGIX_reference_plane
-#define GL_SGIX_reference_plane 1
-
-typedef void (GLAPIENTRY * PFNGLREFERENCEPLANESGIXPROC) (const GLdouble* equation);
-
-#define glReferencePlaneSGIX GLEW_GET_FUN(__glewReferencePlaneSGIX)
-
-#define GLEW_SGIX_reference_plane GLEW_GET_VAR(__GLEW_SGIX_reference_plane)
-
-#endif /* GL_SGIX_reference_plane */
-
-/* ---------------------------- GL_SGIX_resample --------------------------- */
-
-#ifndef GL_SGIX_resample
-#define GL_SGIX_resample 1
-
-#define GL_PACK_RESAMPLE_SGIX 0x842E
-#define GL_UNPACK_RESAMPLE_SGIX 0x842F
-#define GL_RESAMPLE_DECIMATE_SGIX 0x8430
-#define GL_RESAMPLE_REPLICATE_SGIX 0x8433
-#define GL_RESAMPLE_ZERO_FILL_SGIX 0x8434
-
-#define GLEW_SGIX_resample GLEW_GET_VAR(__GLEW_SGIX_resample)
-
-#endif /* GL_SGIX_resample */
-
-/* ----------------------------- GL_SGIX_shadow ---------------------------- */
-
-#ifndef GL_SGIX_shadow
-#define GL_SGIX_shadow 1
-
-#define GL_TEXTURE_COMPARE_SGIX 0x819A
-#define GL_TEXTURE_COMPARE_OPERATOR_SGIX 0x819B
-#define GL_TEXTURE_LEQUAL_R_SGIX 0x819C
-#define GL_TEXTURE_GEQUAL_R_SGIX 0x819D
-
-#define GLEW_SGIX_shadow GLEW_GET_VAR(__GLEW_SGIX_shadow)
-
-#endif /* GL_SGIX_shadow */
-
-/* ------------------------- GL_SGIX_shadow_ambient ------------------------ */
-
-#ifndef GL_SGIX_shadow_ambient
-#define GL_SGIX_shadow_ambient 1
-
-#define GL_SHADOW_AMBIENT_SGIX 0x80BF
-
-#define GLEW_SGIX_shadow_ambient GLEW_GET_VAR(__GLEW_SGIX_shadow_ambient)
-
-#endif /* GL_SGIX_shadow_ambient */
-
-/* ----------------------------- GL_SGIX_sprite ---------------------------- */
-
-#ifndef GL_SGIX_sprite
-#define GL_SGIX_sprite 1
-
-typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERFSGIXPROC) (GLenum pname, GLfloat param);
-typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERFVSGIXPROC) (GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERISGIXPROC) (GLenum pname, GLint param);
-typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERIVSGIXPROC) (GLenum pname, GLint* params);
-
-#define glSpriteParameterfSGIX GLEW_GET_FUN(__glewSpriteParameterfSGIX)
-#define glSpriteParameterfvSGIX GLEW_GET_FUN(__glewSpriteParameterfvSGIX)
-#define glSpriteParameteriSGIX GLEW_GET_FUN(__glewSpriteParameteriSGIX)
-#define glSpriteParameterivSGIX GLEW_GET_FUN(__glewSpriteParameterivSGIX)
-
-#define GLEW_SGIX_sprite GLEW_GET_VAR(__GLEW_SGIX_sprite)
-
-#endif /* GL_SGIX_sprite */
-
-/* ----------------------- GL_SGIX_tag_sample_buffer ----------------------- */
-
-#ifndef GL_SGIX_tag_sample_buffer
-#define GL_SGIX_tag_sample_buffer 1
-
-typedef void (GLAPIENTRY * PFNGLTAGSAMPLEBUFFERSGIXPROC) (void);
-
-#define glTagSampleBufferSGIX GLEW_GET_FUN(__glewTagSampleBufferSGIX)
-
-#define GLEW_SGIX_tag_sample_buffer GLEW_GET_VAR(__GLEW_SGIX_tag_sample_buffer)
-
-#endif /* GL_SGIX_tag_sample_buffer */
-
-/* ------------------------ GL_SGIX_texture_add_env ------------------------ */
-
-#ifndef GL_SGIX_texture_add_env
-#define GL_SGIX_texture_add_env 1
-
-#define GLEW_SGIX_texture_add_env GLEW_GET_VAR(__GLEW_SGIX_texture_add_env)
-
-#endif /* GL_SGIX_texture_add_env */
-
-/* -------------------- GL_SGIX_texture_coordinate_clamp ------------------- */
-
-#ifndef GL_SGIX_texture_coordinate_clamp
-#define GL_SGIX_texture_coordinate_clamp 1
-
-#define GL_TEXTURE_MAX_CLAMP_S_SGIX 0x8369
-#define GL_TEXTURE_MAX_CLAMP_T_SGIX 0x836A
-#define GL_TEXTURE_MAX_CLAMP_R_SGIX 0x836B
-
-#define GLEW_SGIX_texture_coordinate_clamp GLEW_GET_VAR(__GLEW_SGIX_texture_coordinate_clamp)
-
-#endif /* GL_SGIX_texture_coordinate_clamp */
-
-/* ------------------------ GL_SGIX_texture_lod_bias ----------------------- */
-
-#ifndef GL_SGIX_texture_lod_bias
-#define GL_SGIX_texture_lod_bias 1
-
-#define GLEW_SGIX_texture_lod_bias GLEW_GET_VAR(__GLEW_SGIX_texture_lod_bias)
-
-#endif /* GL_SGIX_texture_lod_bias */
-
-/* ---------------------- GL_SGIX_texture_multi_buffer --------------------- */
-
-#ifndef GL_SGIX_texture_multi_buffer
-#define GL_SGIX_texture_multi_buffer 1
-
-#define GL_TEXTURE_MULTI_BUFFER_HINT_SGIX 0x812E
-
-#define GLEW_SGIX_texture_multi_buffer GLEW_GET_VAR(__GLEW_SGIX_texture_multi_buffer)
-
-#endif /* GL_SGIX_texture_multi_buffer */
-
-/* ------------------------- GL_SGIX_texture_range ------------------------- */
-
-#ifndef GL_SGIX_texture_range
-#define GL_SGIX_texture_range 1
-
-#define GL_RGB_SIGNED_SGIX 0x85E0
-#define GL_RGBA_SIGNED_SGIX 0x85E1
-#define GL_ALPHA_SIGNED_SGIX 0x85E2
-#define GL_LUMINANCE_SIGNED_SGIX 0x85E3
-#define GL_INTENSITY_SIGNED_SGIX 0x85E4
-#define GL_LUMINANCE_ALPHA_SIGNED_SGIX 0x85E5
-#define GL_RGB16_SIGNED_SGIX 0x85E6
-#define GL_RGBA16_SIGNED_SGIX 0x85E7
-#define GL_ALPHA16_SIGNED_SGIX 0x85E8
-#define GL_LUMINANCE16_SIGNED_SGIX 0x85E9
-#define GL_INTENSITY16_SIGNED_SGIX 0x85EA
-#define GL_LUMINANCE16_ALPHA16_SIGNED_SGIX 0x85EB
-#define GL_RGB_EXTENDED_RANGE_SGIX 0x85EC
-#define GL_RGBA_EXTENDED_RANGE_SGIX 0x85ED
-#define GL_ALPHA_EXTENDED_RANGE_SGIX 0x85EE
-#define GL_LUMINANCE_EXTENDED_RANGE_SGIX 0x85EF
-#define GL_INTENSITY_EXTENDED_RANGE_SGIX 0x85F0
-#define GL_LUMINANCE_ALPHA_EXTENDED_RANGE_SGIX 0x85F1
-#define GL_RGB16_EXTENDED_RANGE_SGIX 0x85F2
-#define GL_RGBA16_EXTENDED_RANGE_SGIX 0x85F3
-#define GL_ALPHA16_EXTENDED_RANGE_SGIX 0x85F4
-#define GL_LUMINANCE16_EXTENDED_RANGE_SGIX 0x85F5
-#define GL_INTENSITY16_EXTENDED_RANGE_SGIX 0x85F6
-#define GL_LUMINANCE16_ALPHA16_EXTENDED_RANGE_SGIX 0x85F7
-#define GL_MIN_LUMINANCE_SGIS 0x85F8
-#define GL_MAX_LUMINANCE_SGIS 0x85F9
-#define GL_MIN_INTENSITY_SGIS 0x85FA
-#define GL_MAX_INTENSITY_SGIS 0x85FB
-
-#define GLEW_SGIX_texture_range GLEW_GET_VAR(__GLEW_SGIX_texture_range)
-
-#endif /* GL_SGIX_texture_range */
-
-/* ----------------------- GL_SGIX_texture_scale_bias ---------------------- */
-
-#ifndef GL_SGIX_texture_scale_bias
-#define GL_SGIX_texture_scale_bias 1
-
-#define GL_POST_TEXTURE_FILTER_BIAS_SGIX 0x8179
-#define GL_POST_TEXTURE_FILTER_SCALE_SGIX 0x817A
-#define GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX 0x817B
-#define GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX 0x817C
-
-#define GLEW_SGIX_texture_scale_bias GLEW_GET_VAR(__GLEW_SGIX_texture_scale_bias)
-
-#endif /* GL_SGIX_texture_scale_bias */
-
-/* ------------------------- GL_SGIX_vertex_preclip ------------------------ */
-
-#ifndef GL_SGIX_vertex_preclip
-#define GL_SGIX_vertex_preclip 1
-
-#define GL_VERTEX_PRECLIP_SGIX 0x83EE
-#define GL_VERTEX_PRECLIP_HINT_SGIX 0x83EF
-
-#define GLEW_SGIX_vertex_preclip GLEW_GET_VAR(__GLEW_SGIX_vertex_preclip)
-
-#endif /* GL_SGIX_vertex_preclip */
-
-/* ---------------------- GL_SGIX_vertex_preclip_hint ---------------------- */
-
-#ifndef GL_SGIX_vertex_preclip_hint
-#define GL_SGIX_vertex_preclip_hint 1
-
-#define GL_VERTEX_PRECLIP_SGIX 0x83EE
-#define GL_VERTEX_PRECLIP_HINT_SGIX 0x83EF
-
-#define GLEW_SGIX_vertex_preclip_hint GLEW_GET_VAR(__GLEW_SGIX_vertex_preclip_hint)
-
-#endif /* GL_SGIX_vertex_preclip_hint */
-
-/* ----------------------------- GL_SGIX_ycrcb ----------------------------- */
-
-#ifndef GL_SGIX_ycrcb
-#define GL_SGIX_ycrcb 1
-
-#define GLEW_SGIX_ycrcb GLEW_GET_VAR(__GLEW_SGIX_ycrcb)
-
-#endif /* GL_SGIX_ycrcb */
-
-/* -------------------------- GL_SGI_color_matrix -------------------------- */
-
-#ifndef GL_SGI_color_matrix
-#define GL_SGI_color_matrix 1
-
-#define GL_COLOR_MATRIX_SGI 0x80B1
-#define GL_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B2
-#define GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B3
-#define GL_POST_COLOR_MATRIX_RED_SCALE_SGI 0x80B4
-#define GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI 0x80B5
-#define GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI 0x80B6
-#define GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI 0x80B7
-#define GL_POST_COLOR_MATRIX_RED_BIAS_SGI 0x80B8
-#define GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI 0x80B9
-#define GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI 0x80BA
-#define GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI 0x80BB
-
-#define GLEW_SGI_color_matrix GLEW_GET_VAR(__GLEW_SGI_color_matrix)
-
-#endif /* GL_SGI_color_matrix */
-
-/* --------------------------- GL_SGI_color_table -------------------------- */
-
-#ifndef GL_SGI_color_table
-#define GL_SGI_color_table 1
-
-#define GL_COLOR_TABLE_SGI 0x80D0
-#define GL_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D1
-#define GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D2
-#define GL_PROXY_COLOR_TABLE_SGI 0x80D3
-#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D4
-#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D5
-#define GL_COLOR_TABLE_SCALE_SGI 0x80D6
-#define GL_COLOR_TABLE_BIAS_SGI 0x80D7
-#define GL_COLOR_TABLE_FORMAT_SGI 0x80D8
-#define GL_COLOR_TABLE_WIDTH_SGI 0x80D9
-#define GL_COLOR_TABLE_RED_SIZE_SGI 0x80DA
-#define GL_COLOR_TABLE_GREEN_SIZE_SGI 0x80DB
-#define GL_COLOR_TABLE_BLUE_SIZE_SGI 0x80DC
-#define GL_COLOR_TABLE_ALPHA_SIZE_SGI 0x80DD
-#define GL_COLOR_TABLE_LUMINANCE_SIZE_SGI 0x80DE
-#define GL_COLOR_TABLE_INTENSITY_SIZE_SGI 0x80DF
-
-typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, const GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, const GLint* params);
-typedef void (GLAPIENTRY * PFNGLCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* table);
-typedef void (GLAPIENTRY * PFNGLCOPYCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, GLfloat* params);
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, GLint* params);
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLESGIPROC) (GLenum target, GLenum format, GLenum type, void* table);
-
-#define glColorTableParameterfvSGI GLEW_GET_FUN(__glewColorTableParameterfvSGI)
-#define glColorTableParameterivSGI GLEW_GET_FUN(__glewColorTableParameterivSGI)
-#define glColorTableSGI GLEW_GET_FUN(__glewColorTableSGI)
-#define glCopyColorTableSGI GLEW_GET_FUN(__glewCopyColorTableSGI)
-#define glGetColorTableParameterfvSGI GLEW_GET_FUN(__glewGetColorTableParameterfvSGI)
-#define glGetColorTableParameterivSGI GLEW_GET_FUN(__glewGetColorTableParameterivSGI)
-#define glGetColorTableSGI GLEW_GET_FUN(__glewGetColorTableSGI)
-
-#define GLEW_SGI_color_table GLEW_GET_VAR(__GLEW_SGI_color_table)
-
-#endif /* GL_SGI_color_table */
-
-/* ----------------------- GL_SGI_texture_color_table ---------------------- */
-
-#ifndef GL_SGI_texture_color_table
-#define GL_SGI_texture_color_table 1
-
-#define GL_TEXTURE_COLOR_TABLE_SGI 0x80BC
-#define GL_PROXY_TEXTURE_COLOR_TABLE_SGI 0x80BD
-
-#define GLEW_SGI_texture_color_table GLEW_GET_VAR(__GLEW_SGI_texture_color_table)
-
-#endif /* GL_SGI_texture_color_table */
-
-/* ------------------------- GL_SUNX_constant_data ------------------------- */
-
-#ifndef GL_SUNX_constant_data
-#define GL_SUNX_constant_data 1
-
-#define GL_UNPACK_CONSTANT_DATA_SUNX 0x81D5
-#define GL_TEXTURE_CONSTANT_DATA_SUNX 0x81D6
-
-typedef void (GLAPIENTRY * PFNGLFINISHTEXTURESUNXPROC) (void);
-
-#define glFinishTextureSUNX GLEW_GET_FUN(__glewFinishTextureSUNX)
-
-#define GLEW_SUNX_constant_data GLEW_GET_VAR(__GLEW_SUNX_constant_data)
-
-#endif /* GL_SUNX_constant_data */
-
-/* -------------------- GL_SUN_convolution_border_modes -------------------- */
-
-#ifndef GL_SUN_convolution_border_modes
-#define GL_SUN_convolution_border_modes 1
-
-#define GL_WRAP_BORDER_SUN 0x81D4
-
-#define GLEW_SUN_convolution_border_modes GLEW_GET_VAR(__GLEW_SUN_convolution_border_modes)
-
-#endif /* GL_SUN_convolution_border_modes */
-
-/* -------------------------- GL_SUN_global_alpha -------------------------- */
-
-#ifndef GL_SUN_global_alpha
-#define GL_SUN_global_alpha 1
-
-#define GL_GLOBAL_ALPHA_SUN 0x81D9
-#define GL_GLOBAL_ALPHA_FACTOR_SUN 0x81DA
-
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORBSUNPROC) (GLbyte factor);
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORDSUNPROC) (GLdouble factor);
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORFSUNPROC) (GLfloat factor);
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORISUNPROC) (GLint factor);
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORSSUNPROC) (GLshort factor);
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORUBSUNPROC) (GLubyte factor);
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORUISUNPROC) (GLuint factor);
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORUSSUNPROC) (GLushort factor);
-
-#define glGlobalAlphaFactorbSUN GLEW_GET_FUN(__glewGlobalAlphaFactorbSUN)
-#define glGlobalAlphaFactordSUN GLEW_GET_FUN(__glewGlobalAlphaFactordSUN)
-#define glGlobalAlphaFactorfSUN GLEW_GET_FUN(__glewGlobalAlphaFactorfSUN)
-#define glGlobalAlphaFactoriSUN GLEW_GET_FUN(__glewGlobalAlphaFactoriSUN)
-#define glGlobalAlphaFactorsSUN GLEW_GET_FUN(__glewGlobalAlphaFactorsSUN)
-#define glGlobalAlphaFactorubSUN GLEW_GET_FUN(__glewGlobalAlphaFactorubSUN)
-#define glGlobalAlphaFactoruiSUN GLEW_GET_FUN(__glewGlobalAlphaFactoruiSUN)
-#define glGlobalAlphaFactorusSUN GLEW_GET_FUN(__glewGlobalAlphaFactorusSUN)
-
-#define GLEW_SUN_global_alpha GLEW_GET_VAR(__GLEW_SUN_global_alpha)
-
-#endif /* GL_SUN_global_alpha */
-
-/* --------------------------- GL_SUN_mesh_array --------------------------- */
-
-#ifndef GL_SUN_mesh_array
-#define GL_SUN_mesh_array 1
-
-#define GL_QUAD_MESH_SUN 0x8614
-#define GL_TRIANGLE_MESH_SUN 0x8615
-
-#define GLEW_SUN_mesh_array GLEW_GET_VAR(__GLEW_SUN_mesh_array)
-
-#endif /* GL_SUN_mesh_array */
-
-/* ------------------------ GL_SUN_read_video_pixels ----------------------- */
-
-#ifndef GL_SUN_read_video_pixels
-#define GL_SUN_read_video_pixels 1
-
-typedef void (GLAPIENTRY * PFNGLREADVIDEOPIXELSSUNPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
-
-#define glReadVideoPixelsSUN GLEW_GET_FUN(__glewReadVideoPixelsSUN)
-
-#define GLEW_SUN_read_video_pixels GLEW_GET_VAR(__GLEW_SUN_read_video_pixels)
-
-#endif /* GL_SUN_read_video_pixels */
-
-/* --------------------------- GL_SUN_slice_accum -------------------------- */
-
-#ifndef GL_SUN_slice_accum
-#define GL_SUN_slice_accum 1
-
-#define GL_SLICE_ACCUM_SUN 0x85CC
-
-#define GLEW_SUN_slice_accum GLEW_GET_VAR(__GLEW_SUN_slice_accum)
-
-#endif /* GL_SUN_slice_accum */
-
-/* -------------------------- GL_SUN_triangle_list ------------------------- */
-
-#ifndef GL_SUN_triangle_list
-#define GL_SUN_triangle_list 1
-
-#define GL_RESTART_SUN 0x01
-#define GL_REPLACE_MIDDLE_SUN 0x02
-#define GL_REPLACE_OLDEST_SUN 0x03
-#define GL_TRIANGLE_LIST_SUN 0x81D7
-#define GL_REPLACEMENT_CODE_SUN 0x81D8
-#define GL_REPLACEMENT_CODE_ARRAY_SUN 0x85C0
-#define GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN 0x85C1
-#define GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN 0x85C2
-#define GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN 0x85C3
-#define GL_R1UI_V3F_SUN 0x85C4
-#define GL_R1UI_C4UB_V3F_SUN 0x85C5
-#define GL_R1UI_C3F_V3F_SUN 0x85C6
-#define GL_R1UI_N3F_V3F_SUN 0x85C7
-#define GL_R1UI_C4F_N3F_V3F_SUN 0x85C8
-#define GL_R1UI_T2F_V3F_SUN 0x85C9
-#define GL_R1UI_T2F_N3F_V3F_SUN 0x85CA
-#define GL_R1UI_T2F_C4F_N3F_V3F_SUN 0x85CB
-
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEPOINTERSUNPROC) (GLenum type, GLsizei stride, const void* pointer);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUBSUNPROC) (GLubyte code);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUBVSUNPROC) (const GLubyte* code);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUISUNPROC) (GLuint code);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUIVSUNPROC) (const GLuint* code);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUSSUNPROC) (GLushort code);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUSVSUNPROC) (const GLushort* code);
-
-#define glReplacementCodePointerSUN GLEW_GET_FUN(__glewReplacementCodePointerSUN)
-#define glReplacementCodeubSUN GLEW_GET_FUN(__glewReplacementCodeubSUN)
-#define glReplacementCodeubvSUN GLEW_GET_FUN(__glewReplacementCodeubvSUN)
-#define glReplacementCodeuiSUN GLEW_GET_FUN(__glewReplacementCodeuiSUN)
-#define glReplacementCodeuivSUN GLEW_GET_FUN(__glewReplacementCodeuivSUN)
-#define glReplacementCodeusSUN GLEW_GET_FUN(__glewReplacementCodeusSUN)
-#define glReplacementCodeusvSUN GLEW_GET_FUN(__glewReplacementCodeusvSUN)
-
-#define GLEW_SUN_triangle_list GLEW_GET_VAR(__GLEW_SUN_triangle_list)
-
-#endif /* GL_SUN_triangle_list */
-
-/* ----------------------------- GL_SUN_vertex ----------------------------- */
-
-#ifndef GL_SUN_vertex
-#define GL_SUN_vertex 1
-
-typedef void (GLAPIENTRY * PFNGLCOLOR3FVERTEX3FSUNPROC) (GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLCOLOR3FVERTEX3FVSUNPROC) (const GLfloat* c, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* c, const GLfloat *n, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX2FSUNPROC) (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y);
-typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX2FVSUNPROC) (const GLubyte* c, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX3FSUNPROC) (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX3FVSUNPROC) (const GLubyte* c, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLNORMAL3FVERTEX3FSUNPROC) (GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* n, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC) (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *c, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC) (GLuint rc, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC) (const GLuint* rc, const GLubyte *c, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *n, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *tc, const GLfloat *n, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *tc, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC) (GLuint rc, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *c, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC) (const GLfloat* tc, const GLubyte *c, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *n, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC) (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC) (const GLfloat* tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD4FVERTEX4FSUNPROC) (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
-typedef void (GLAPIENTRY * PFNGLTEXCOORD4FVERTEX4FVSUNPROC) (const GLfloat* tc, const GLfloat *v);
-
-#define glColor3fVertex3fSUN GLEW_GET_FUN(__glewColor3fVertex3fSUN)
-#define glColor3fVertex3fvSUN GLEW_GET_FUN(__glewColor3fVertex3fvSUN)
-#define glColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewColor4fNormal3fVertex3fSUN)
-#define glColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewColor4fNormal3fVertex3fvSUN)
-#define glColor4ubVertex2fSUN GLEW_GET_FUN(__glewColor4ubVertex2fSUN)
-#define glColor4ubVertex2fvSUN GLEW_GET_FUN(__glewColor4ubVertex2fvSUN)
-#define glColor4ubVertex3fSUN GLEW_GET_FUN(__glewColor4ubVertex3fSUN)
-#define glColor4ubVertex3fvSUN GLEW_GET_FUN(__glewColor4ubVertex3fvSUN)
-#define glNormal3fVertex3fSUN GLEW_GET_FUN(__glewNormal3fVertex3fSUN)
-#define glNormal3fVertex3fvSUN GLEW_GET_FUN(__glewNormal3fVertex3fvSUN)
-#define glReplacementCodeuiColor3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiColor3fVertex3fSUN)
-#define glReplacementCodeuiColor3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiColor3fVertex3fvSUN)
-#define glReplacementCodeuiColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4fNormal3fVertex3fSUN)
-#define glReplacementCodeuiColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4fNormal3fVertex3fvSUN)
-#define glReplacementCodeuiColor4ubVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4ubVertex3fSUN)
-#define glReplacementCodeuiColor4ubVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4ubVertex3fvSUN)
-#define glReplacementCodeuiNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiNormal3fVertex3fSUN)
-#define glReplacementCodeuiNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiNormal3fVertex3fvSUN)
-#define glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN)
-#define glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN)
-#define glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fNormal3fVertex3fSUN)
-#define glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN)
-#define glReplacementCodeuiTexCoord2fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fVertex3fSUN)
-#define glReplacementCodeuiTexCoord2fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fVertex3fvSUN)
-#define glReplacementCodeuiVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiVertex3fSUN)
-#define glReplacementCodeuiVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiVertex3fvSUN)
-#define glTexCoord2fColor3fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fColor3fVertex3fSUN)
-#define glTexCoord2fColor3fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fColor3fVertex3fvSUN)
-#define glTexCoord2fColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fColor4fNormal3fVertex3fSUN)
-#define glTexCoord2fColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fColor4fNormal3fVertex3fvSUN)
-#define glTexCoord2fColor4ubVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fColor4ubVertex3fSUN)
-#define glTexCoord2fColor4ubVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fColor4ubVertex3fvSUN)
-#define glTexCoord2fNormal3fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fNormal3fVertex3fSUN)
-#define glTexCoord2fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fNormal3fVertex3fvSUN)
-#define glTexCoord2fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fVertex3fSUN)
-#define glTexCoord2fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fVertex3fvSUN)
-#define glTexCoord4fColor4fNormal3fVertex4fSUN GLEW_GET_FUN(__glewTexCoord4fColor4fNormal3fVertex4fSUN)
-#define glTexCoord4fColor4fNormal3fVertex4fvSUN GLEW_GET_FUN(__glewTexCoord4fColor4fNormal3fVertex4fvSUN)
-#define glTexCoord4fVertex4fSUN GLEW_GET_FUN(__glewTexCoord4fVertex4fSUN)
-#define glTexCoord4fVertex4fvSUN GLEW_GET_FUN(__glewTexCoord4fVertex4fvSUN)
-
-#define GLEW_SUN_vertex GLEW_GET_VAR(__GLEW_SUN_vertex)
-
-#endif /* GL_SUN_vertex */
-
-/* -------------------------- GL_WIN_phong_shading ------------------------- */
-
-#ifndef GL_WIN_phong_shading
-#define GL_WIN_phong_shading 1
-
-#define GL_PHONG_WIN 0x80EA
-#define GL_PHONG_HINT_WIN 0x80EB
-
-#define GLEW_WIN_phong_shading GLEW_GET_VAR(__GLEW_WIN_phong_shading)
-
-#endif /* GL_WIN_phong_shading */
-
-/* -------------------------- GL_WIN_specular_fog -------------------------- */
-
-#ifndef GL_WIN_specular_fog
-#define GL_WIN_specular_fog 1
-
-#define GL_FOG_SPECULAR_TEXTURE_WIN 0x80EC
-
-#define GLEW_WIN_specular_fog GLEW_GET_VAR(__GLEW_WIN_specular_fog)
-
-#endif /* GL_WIN_specular_fog */
-
-/* ---------------------------- GL_WIN_swap_hint --------------------------- */
-
-#ifndef GL_WIN_swap_hint
-#define GL_WIN_swap_hint 1
-
-typedef void (GLAPIENTRY * PFNGLADDSWAPHINTRECTWINPROC) (GLint x, GLint y, GLsizei width, GLsizei height);
-
-#define glAddSwapHintRectWIN GLEW_GET_FUN(__glewAddSwapHintRectWIN)
-
-#define GLEW_WIN_swap_hint GLEW_GET_VAR(__GLEW_WIN_swap_hint)
-
-#endif /* GL_WIN_swap_hint */
-
-/* ------------------------------------------------------------------------- */
-
-#if defined(GLEW_MX) && defined(_WIN32)
-#define GLEW_FUN_EXPORT
-#else
-#define GLEW_FUN_EXPORT GLEWAPI
-#endif /* GLEW_MX */
-
-#if defined(GLEW_MX)
-#define GLEW_VAR_EXPORT
-#else
-#define GLEW_VAR_EXPORT GLEWAPI
-#endif /* GLEW_MX */
-
-#if defined(GLEW_MX) && defined(_WIN32)
-struct GLEWContextStruct
-{
-#endif /* GLEW_MX */
-
-GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE3DPROC __glewCopyTexSubImage3D;
-GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSPROC __glewDrawRangeElements;
-GLEW_FUN_EXPORT PFNGLTEXIMAGE3DPROC __glewTexImage3D;
-GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE3DPROC __glewTexSubImage3D;
-
-GLEW_FUN_EXPORT PFNGLACTIVETEXTUREPROC __glewActiveTexture;
-GLEW_FUN_EXPORT PFNGLCLIENTACTIVETEXTUREPROC __glewClientActiveTexture;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE1DPROC __glewCompressedTexImage1D;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE2DPROC __glewCompressedTexImage2D;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE3DPROC __glewCompressedTexImage3D;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC __glewCompressedTexSubImage1D;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC __glewCompressedTexSubImage2D;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC __glewCompressedTexSubImage3D;
-GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXIMAGEPROC __glewGetCompressedTexImage;
-GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXDPROC __glewLoadTransposeMatrixd;
-GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXFPROC __glewLoadTransposeMatrixf;
-GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXDPROC __glewMultTransposeMatrixd;
-GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXFPROC __glewMultTransposeMatrixf;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DPROC __glewMultiTexCoord1d;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DVPROC __glewMultiTexCoord1dv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FPROC __glewMultiTexCoord1f;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FVPROC __glewMultiTexCoord1fv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IPROC __glewMultiTexCoord1i;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IVPROC __glewMultiTexCoord1iv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SPROC __glewMultiTexCoord1s;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SVPROC __glewMultiTexCoord1sv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DPROC __glewMultiTexCoord2d;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DVPROC __glewMultiTexCoord2dv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FPROC __glewMultiTexCoord2f;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FVPROC __glewMultiTexCoord2fv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IPROC __glewMultiTexCoord2i;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IVPROC __glewMultiTexCoord2iv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SPROC __glewMultiTexCoord2s;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SVPROC __glewMultiTexCoord2sv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DPROC __glewMultiTexCoord3d;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DVPROC __glewMultiTexCoord3dv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FPROC __glewMultiTexCoord3f;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FVPROC __glewMultiTexCoord3fv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IPROC __glewMultiTexCoord3i;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IVPROC __glewMultiTexCoord3iv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SPROC __glewMultiTexCoord3s;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SVPROC __glewMultiTexCoord3sv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DPROC __glewMultiTexCoord4d;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DVPROC __glewMultiTexCoord4dv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FPROC __glewMultiTexCoord4f;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FVPROC __glewMultiTexCoord4fv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IPROC __glewMultiTexCoord4i;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IVPROC __glewMultiTexCoord4iv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SPROC __glewMultiTexCoord4s;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SVPROC __glewMultiTexCoord4sv;
-GLEW_FUN_EXPORT PFNGLSAMPLECOVERAGEPROC __glewSampleCoverage;
-
-GLEW_FUN_EXPORT PFNGLBLENDCOLORPROC __glewBlendColor;
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONPROC __glewBlendEquation;
-GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEPROC __glewBlendFuncSeparate;
-GLEW_FUN_EXPORT PFNGLFOGCOORDPOINTERPROC __glewFogCoordPointer;
-GLEW_FUN_EXPORT PFNGLFOGCOORDDPROC __glewFogCoordd;
-GLEW_FUN_EXPORT PFNGLFOGCOORDDVPROC __glewFogCoorddv;
-GLEW_FUN_EXPORT PFNGLFOGCOORDFPROC __glewFogCoordf;
-GLEW_FUN_EXPORT PFNGLFOGCOORDFVPROC __glewFogCoordfv;
-GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSPROC __glewMultiDrawArrays;
-GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSPROC __glewMultiDrawElements;
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFPROC __glewPointParameterf;
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFVPROC __glewPointParameterfv;
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERIPROC __glewPointParameteri;
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERIVPROC __glewPointParameteriv;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BPROC __glewSecondaryColor3b;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BVPROC __glewSecondaryColor3bv;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DPROC __glewSecondaryColor3d;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DVPROC __glewSecondaryColor3dv;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FPROC __glewSecondaryColor3f;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FVPROC __glewSecondaryColor3fv;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IPROC __glewSecondaryColor3i;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IVPROC __glewSecondaryColor3iv;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SPROC __glewSecondaryColor3s;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SVPROC __glewSecondaryColor3sv;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBPROC __glewSecondaryColor3ub;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBVPROC __glewSecondaryColor3ubv;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIPROC __glewSecondaryColor3ui;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIVPROC __glewSecondaryColor3uiv;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USPROC __glewSecondaryColor3us;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USVPROC __glewSecondaryColor3usv;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLORPOINTERPROC __glewSecondaryColorPointer;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2DPROC __glewWindowPos2d;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2DVPROC __glewWindowPos2dv;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2FPROC __glewWindowPos2f;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2FVPROC __glewWindowPos2fv;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2IPROC __glewWindowPos2i;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2IVPROC __glewWindowPos2iv;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2SPROC __glewWindowPos2s;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2SVPROC __glewWindowPos2sv;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3DPROC __glewWindowPos3d;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3DVPROC __glewWindowPos3dv;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3FPROC __glewWindowPos3f;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3FVPROC __glewWindowPos3fv;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3IPROC __glewWindowPos3i;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3IVPROC __glewWindowPos3iv;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3SPROC __glewWindowPos3s;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3SVPROC __glewWindowPos3sv;
-
-GLEW_FUN_EXPORT PFNGLBEGINQUERYPROC __glewBeginQuery;
-GLEW_FUN_EXPORT PFNGLBINDBUFFERPROC __glewBindBuffer;
-GLEW_FUN_EXPORT PFNGLBUFFERDATAPROC __glewBufferData;
-GLEW_FUN_EXPORT PFNGLBUFFERSUBDATAPROC __glewBufferSubData;
-GLEW_FUN_EXPORT PFNGLDELETEBUFFERSPROC __glewDeleteBuffers;
-GLEW_FUN_EXPORT PFNGLDELETEQUERIESPROC __glewDeleteQueries;
-GLEW_FUN_EXPORT PFNGLENDQUERYPROC __glewEndQuery;
-GLEW_FUN_EXPORT PFNGLGENBUFFERSPROC __glewGenBuffers;
-GLEW_FUN_EXPORT PFNGLGENQUERIESPROC __glewGenQueries;
-GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERIVPROC __glewGetBufferParameteriv;
-GLEW_FUN_EXPORT PFNGLGETBUFFERPOINTERVPROC __glewGetBufferPointerv;
-GLEW_FUN_EXPORT PFNGLGETBUFFERSUBDATAPROC __glewGetBufferSubData;
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTIVPROC __glewGetQueryObjectiv;
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUIVPROC __glewGetQueryObjectuiv;
-GLEW_FUN_EXPORT PFNGLGETQUERYIVPROC __glewGetQueryiv;
-GLEW_FUN_EXPORT PFNGLISBUFFERPROC __glewIsBuffer;
-GLEW_FUN_EXPORT PFNGLISQUERYPROC __glewIsQuery;
-GLEW_FUN_EXPORT PFNGLMAPBUFFERPROC __glewMapBuffer;
-GLEW_FUN_EXPORT PFNGLUNMAPBUFFERPROC __glewUnmapBuffer;
-
-GLEW_FUN_EXPORT PFNGLATTACHSHADERPROC __glewAttachShader;
-GLEW_FUN_EXPORT PFNGLBINDATTRIBLOCATIONPROC __glewBindAttribLocation;
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEPROC __glewBlendEquationSeparate;
-GLEW_FUN_EXPORT PFNGLCOMPILESHADERPROC __glewCompileShader;
-GLEW_FUN_EXPORT PFNGLCREATEPROGRAMPROC __glewCreateProgram;
-GLEW_FUN_EXPORT PFNGLCREATESHADERPROC __glewCreateShader;
-GLEW_FUN_EXPORT PFNGLDELETEPROGRAMPROC __glewDeleteProgram;
-GLEW_FUN_EXPORT PFNGLDELETESHADERPROC __glewDeleteShader;
-GLEW_FUN_EXPORT PFNGLDETACHSHADERPROC __glewDetachShader;
-GLEW_FUN_EXPORT PFNGLDISABLEVERTEXATTRIBARRAYPROC __glewDisableVertexAttribArray;
-GLEW_FUN_EXPORT PFNGLDRAWBUFFERSPROC __glewDrawBuffers;
-GLEW_FUN_EXPORT PFNGLENABLEVERTEXATTRIBARRAYPROC __glewEnableVertexAttribArray;
-GLEW_FUN_EXPORT PFNGLGETACTIVEATTRIBPROC __glewGetActiveAttrib;
-GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMPROC __glewGetActiveUniform;
-GLEW_FUN_EXPORT PFNGLGETATTACHEDSHADERSPROC __glewGetAttachedShaders;
-GLEW_FUN_EXPORT PFNGLGETATTRIBLOCATIONPROC __glewGetAttribLocation;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMINFOLOGPROC __glewGetProgramInfoLog;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMIVPROC __glewGetProgramiv;
-GLEW_FUN_EXPORT PFNGLGETSHADERINFOLOGPROC __glewGetShaderInfoLog;
-GLEW_FUN_EXPORT PFNGLGETSHADERSOURCEPROC __glewGetShaderSource;
-GLEW_FUN_EXPORT PFNGLGETSHADERIVPROC __glewGetShaderiv;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMLOCATIONPROC __glewGetUniformLocation;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMFVPROC __glewGetUniformfv;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMIVPROC __glewGetUniformiv;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBPOINTERVPROC __glewGetVertexAttribPointerv;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBDVPROC __glewGetVertexAttribdv;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBFVPROC __glewGetVertexAttribfv;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIVPROC __glewGetVertexAttribiv;
-GLEW_FUN_EXPORT PFNGLISPROGRAMPROC __glewIsProgram;
-GLEW_FUN_EXPORT PFNGLISSHADERPROC __glewIsShader;
-GLEW_FUN_EXPORT PFNGLLINKPROGRAMPROC __glewLinkProgram;
-GLEW_FUN_EXPORT PFNGLSHADERSOURCEPROC __glewShaderSource;
-GLEW_FUN_EXPORT PFNGLSTENCILFUNCSEPARATEPROC __glewStencilFuncSeparate;
-GLEW_FUN_EXPORT PFNGLSTENCILMASKSEPARATEPROC __glewStencilMaskSeparate;
-GLEW_FUN_EXPORT PFNGLSTENCILOPSEPARATEPROC __glewStencilOpSeparate;
-GLEW_FUN_EXPORT PFNGLUNIFORM1FPROC __glewUniform1f;
-GLEW_FUN_EXPORT PFNGLUNIFORM1FVPROC __glewUniform1fv;
-GLEW_FUN_EXPORT PFNGLUNIFORM1IPROC __glewUniform1i;
-GLEW_FUN_EXPORT PFNGLUNIFORM1IVPROC __glewUniform1iv;
-GLEW_FUN_EXPORT PFNGLUNIFORM2FPROC __glewUniform2f;
-GLEW_FUN_EXPORT PFNGLUNIFORM2FVPROC __glewUniform2fv;
-GLEW_FUN_EXPORT PFNGLUNIFORM2IPROC __glewUniform2i;
-GLEW_FUN_EXPORT PFNGLUNIFORM2IVPROC __glewUniform2iv;
-GLEW_FUN_EXPORT PFNGLUNIFORM3FPROC __glewUniform3f;
-GLEW_FUN_EXPORT PFNGLUNIFORM3FVPROC __glewUniform3fv;
-GLEW_FUN_EXPORT PFNGLUNIFORM3IPROC __glewUniform3i;
-GLEW_FUN_EXPORT PFNGLUNIFORM3IVPROC __glewUniform3iv;
-GLEW_FUN_EXPORT PFNGLUNIFORM4FPROC __glewUniform4f;
-GLEW_FUN_EXPORT PFNGLUNIFORM4FVPROC __glewUniform4fv;
-GLEW_FUN_EXPORT PFNGLUNIFORM4IPROC __glewUniform4i;
-GLEW_FUN_EXPORT PFNGLUNIFORM4IVPROC __glewUniform4iv;
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2FVPROC __glewUniformMatrix2fv;
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3FVPROC __glewUniformMatrix3fv;
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4FVPROC __glewUniformMatrix4fv;
-GLEW_FUN_EXPORT PFNGLUSEPROGRAMPROC __glewUseProgram;
-GLEW_FUN_EXPORT PFNGLVALIDATEPROGRAMPROC __glewValidateProgram;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DPROC __glewVertexAttrib1d;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DVPROC __glewVertexAttrib1dv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FPROC __glewVertexAttrib1f;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FVPROC __glewVertexAttrib1fv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SPROC __glewVertexAttrib1s;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SVPROC __glewVertexAttrib1sv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DPROC __glewVertexAttrib2d;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DVPROC __glewVertexAttrib2dv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FPROC __glewVertexAttrib2f;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FVPROC __glewVertexAttrib2fv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SPROC __glewVertexAttrib2s;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SVPROC __glewVertexAttrib2sv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DPROC __glewVertexAttrib3d;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DVPROC __glewVertexAttrib3dv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FPROC __glewVertexAttrib3f;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FVPROC __glewVertexAttrib3fv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SPROC __glewVertexAttrib3s;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SVPROC __glewVertexAttrib3sv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NBVPROC __glewVertexAttrib4Nbv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NIVPROC __glewVertexAttrib4Niv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NSVPROC __glewVertexAttrib4Nsv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBPROC __glewVertexAttrib4Nub;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBVPROC __glewVertexAttrib4Nubv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUIVPROC __glewVertexAttrib4Nuiv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUSVPROC __glewVertexAttrib4Nusv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4BVPROC __glewVertexAttrib4bv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DPROC __glewVertexAttrib4d;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DVPROC __glewVertexAttrib4dv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FPROC __glewVertexAttrib4f;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FVPROC __glewVertexAttrib4fv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4IVPROC __glewVertexAttrib4iv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SPROC __glewVertexAttrib4s;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SVPROC __glewVertexAttrib4sv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBVPROC __glewVertexAttrib4ubv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UIVPROC __glewVertexAttrib4uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4USVPROC __glewVertexAttrib4usv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPOINTERPROC __glewVertexAttribPointer;
-
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X3FVPROC __glewUniformMatrix2x3fv;
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X4FVPROC __glewUniformMatrix2x4fv;
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X2FVPROC __glewUniformMatrix3x2fv;
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X4FVPROC __glewUniformMatrix3x4fv;
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X2FVPROC __glewUniformMatrix4x2fv;
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X3FVPROC __glewUniformMatrix4x3fv;
-
-GLEW_FUN_EXPORT PFNGLBEGINCONDITIONALRENDERPROC __glewBeginConditionalRender;
-GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKPROC __glewBeginTransformFeedback;
-GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONPROC __glewBindFragDataLocation;
-GLEW_FUN_EXPORT PFNGLCLAMPCOLORPROC __glewClampColor;
-GLEW_FUN_EXPORT PFNGLCLEARBUFFERFIPROC __glewClearBufferfi;
-GLEW_FUN_EXPORT PFNGLCLEARBUFFERFVPROC __glewClearBufferfv;
-GLEW_FUN_EXPORT PFNGLCLEARBUFFERIVPROC __glewClearBufferiv;
-GLEW_FUN_EXPORT PFNGLCLEARBUFFERUIVPROC __glewClearBufferuiv;
-GLEW_FUN_EXPORT PFNGLCOLORMASKIPROC __glewColorMaski;
-GLEW_FUN_EXPORT PFNGLDISABLEIPROC __glewDisablei;
-GLEW_FUN_EXPORT PFNGLENABLEIPROC __glewEnablei;
-GLEW_FUN_EXPORT PFNGLENDCONDITIONALRENDERPROC __glewEndConditionalRender;
-GLEW_FUN_EXPORT PFNGLENDTRANSFORMFEEDBACKPROC __glewEndTransformFeedback;
-GLEW_FUN_EXPORT PFNGLGETBOOLEANI_VPROC __glewGetBooleani_v;
-GLEW_FUN_EXPORT PFNGLGETFRAGDATALOCATIONPROC __glewGetFragDataLocation;
-GLEW_FUN_EXPORT PFNGLGETSTRINGIPROC __glewGetStringi;
-GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIIVPROC __glewGetTexParameterIiv;
-GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIUIVPROC __glewGetTexParameterIuiv;
-GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKVARYINGPROC __glewGetTransformFeedbackVarying;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMUIVPROC __glewGetUniformuiv;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIIVPROC __glewGetVertexAttribIiv;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIUIVPROC __glewGetVertexAttribIuiv;
-GLEW_FUN_EXPORT PFNGLISENABLEDIPROC __glewIsEnabledi;
-GLEW_FUN_EXPORT PFNGLTEXPARAMETERIIVPROC __glewTexParameterIiv;
-GLEW_FUN_EXPORT PFNGLTEXPARAMETERIUIVPROC __glewTexParameterIuiv;
-GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKVARYINGSPROC __glewTransformFeedbackVaryings;
-GLEW_FUN_EXPORT PFNGLUNIFORM1UIPROC __glewUniform1ui;
-GLEW_FUN_EXPORT PFNGLUNIFORM1UIVPROC __glewUniform1uiv;
-GLEW_FUN_EXPORT PFNGLUNIFORM2UIPROC __glewUniform2ui;
-GLEW_FUN_EXPORT PFNGLUNIFORM2UIVPROC __glewUniform2uiv;
-GLEW_FUN_EXPORT PFNGLUNIFORM3UIPROC __glewUniform3ui;
-GLEW_FUN_EXPORT PFNGLUNIFORM3UIVPROC __glewUniform3uiv;
-GLEW_FUN_EXPORT PFNGLUNIFORM4UIPROC __glewUniform4ui;
-GLEW_FUN_EXPORT PFNGLUNIFORM4UIVPROC __glewUniform4uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IPROC __glewVertexAttribI1i;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IVPROC __glewVertexAttribI1iv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIPROC __glewVertexAttribI1ui;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIVPROC __glewVertexAttribI1uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IPROC __glewVertexAttribI2i;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IVPROC __glewVertexAttribI2iv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIPROC __glewVertexAttribI2ui;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIVPROC __glewVertexAttribI2uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IPROC __glewVertexAttribI3i;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IVPROC __glewVertexAttribI3iv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIPROC __glewVertexAttribI3ui;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIVPROC __glewVertexAttribI3uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4BVPROC __glewVertexAttribI4bv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IPROC __glewVertexAttribI4i;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IVPROC __glewVertexAttribI4iv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4SVPROC __glewVertexAttribI4sv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UBVPROC __glewVertexAttribI4ubv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIPROC __glewVertexAttribI4ui;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIVPROC __glewVertexAttribI4uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4USVPROC __glewVertexAttribI4usv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIPOINTERPROC __glewVertexAttribIPointer;
-
-GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDPROC __glewDrawArraysInstanced;
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDPROC __glewDrawElementsInstanced;
-GLEW_FUN_EXPORT PFNGLPRIMITIVERESTARTINDEXPROC __glewPrimitiveRestartIndex;
-GLEW_FUN_EXPORT PFNGLTEXBUFFERPROC __glewTexBuffer;
-
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREPROC __glewFramebufferTexture;
-GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERI64VPROC __glewGetBufferParameteri64v;
-GLEW_FUN_EXPORT PFNGLGETINTEGER64I_VPROC __glewGetInteger64i_v;
-
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEIPROC __glewBlendEquationSeparatei;
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONIPROC __glewBlendEquationi;
-GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEIPROC __glewBlendFuncSeparatei;
-GLEW_FUN_EXPORT PFNGLBLENDFUNCIPROC __glewBlendFunci;
-GLEW_FUN_EXPORT PFNGLMINSAMPLESHADINGPROC __glewMinSampleShading;
-
-GLEW_FUN_EXPORT PFNGLTBUFFERMASK3DFXPROC __glewTbufferMask3DFX;
-
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONINDEXEDAMDPROC __glewBlendEquationIndexedAMD;
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC __glewBlendEquationSeparateIndexedAMD;
-GLEW_FUN_EXPORT PFNGLBLENDFUNCINDEXEDAMDPROC __glewBlendFuncIndexedAMD;
-GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC __glewBlendFuncSeparateIndexedAMD;
-
-GLEW_FUN_EXPORT PFNGLBEGINPERFMONITORAMDPROC __glewBeginPerfMonitorAMD;
-GLEW_FUN_EXPORT PFNGLDELETEPERFMONITORSAMDPROC __glewDeletePerfMonitorsAMD;
-GLEW_FUN_EXPORT PFNGLENDPERFMONITORAMDPROC __glewEndPerfMonitorAMD;
-GLEW_FUN_EXPORT PFNGLGENPERFMONITORSAMDPROC __glewGenPerfMonitorsAMD;
-GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERDATAAMDPROC __glewGetPerfMonitorCounterDataAMD;
-GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERINFOAMDPROC __glewGetPerfMonitorCounterInfoAMD;
-GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC __glewGetPerfMonitorCounterStringAMD;
-GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERSAMDPROC __glewGetPerfMonitorCountersAMD;
-GLEW_FUN_EXPORT PFNGLGETPERFMONITORGROUPSTRINGAMDPROC __glewGetPerfMonitorGroupStringAMD;
-GLEW_FUN_EXPORT PFNGLGETPERFMONITORGROUPSAMDPROC __glewGetPerfMonitorGroupsAMD;
-GLEW_FUN_EXPORT PFNGLSELECTPERFMONITORCOUNTERSAMDPROC __glewSelectPerfMonitorCountersAMD;
-
-GLEW_FUN_EXPORT PFNGLTESSELLATIONFACTORAMDPROC __glewTessellationFactorAMD;
-GLEW_FUN_EXPORT PFNGLTESSELLATIONMODEAMDPROC __glewTessellationModeAMD;
-
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTARRAYAPPLEPROC __glewDrawElementArrayAPPLE;
-GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC __glewDrawRangeElementArrayAPPLE;
-GLEW_FUN_EXPORT PFNGLELEMENTPOINTERAPPLEPROC __glewElementPointerAPPLE;
-GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC __glewMultiDrawElementArrayAPPLE;
-GLEW_FUN_EXPORT PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC __glewMultiDrawRangeElementArrayAPPLE;
-
-GLEW_FUN_EXPORT PFNGLDELETEFENCESAPPLEPROC __glewDeleteFencesAPPLE;
-GLEW_FUN_EXPORT PFNGLFINISHFENCEAPPLEPROC __glewFinishFenceAPPLE;
-GLEW_FUN_EXPORT PFNGLFINISHOBJECTAPPLEPROC __glewFinishObjectAPPLE;
-GLEW_FUN_EXPORT PFNGLGENFENCESAPPLEPROC __glewGenFencesAPPLE;
-GLEW_FUN_EXPORT PFNGLISFENCEAPPLEPROC __glewIsFenceAPPLE;
-GLEW_FUN_EXPORT PFNGLSETFENCEAPPLEPROC __glewSetFenceAPPLE;
-GLEW_FUN_EXPORT PFNGLTESTFENCEAPPLEPROC __glewTestFenceAPPLE;
-GLEW_FUN_EXPORT PFNGLTESTOBJECTAPPLEPROC __glewTestObjectAPPLE;
-
-GLEW_FUN_EXPORT PFNGLBUFFERPARAMETERIAPPLEPROC __glewBufferParameteriAPPLE;
-GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC __glewFlushMappedBufferRangeAPPLE;
-
-GLEW_FUN_EXPORT PFNGLGETOBJECTPARAMETERIVAPPLEPROC __glewGetObjectParameterivAPPLE;
-GLEW_FUN_EXPORT PFNGLOBJECTPURGEABLEAPPLEPROC __glewObjectPurgeableAPPLE;
-GLEW_FUN_EXPORT PFNGLOBJECTUNPURGEABLEAPPLEPROC __glewObjectUnpurgeableAPPLE;
-
-GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC __glewGetTexParameterPointervAPPLE;
-GLEW_FUN_EXPORT PFNGLTEXTURERANGEAPPLEPROC __glewTextureRangeAPPLE;
-
-GLEW_FUN_EXPORT PFNGLBINDVERTEXARRAYAPPLEPROC __glewBindVertexArrayAPPLE;
-GLEW_FUN_EXPORT PFNGLDELETEVERTEXARRAYSAPPLEPROC __glewDeleteVertexArraysAPPLE;
-GLEW_FUN_EXPORT PFNGLGENVERTEXARRAYSAPPLEPROC __glewGenVertexArraysAPPLE;
-GLEW_FUN_EXPORT PFNGLISVERTEXARRAYAPPLEPROC __glewIsVertexArrayAPPLE;
-
-GLEW_FUN_EXPORT PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC __glewFlushVertexArrayRangeAPPLE;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYPARAMETERIAPPLEPROC __glewVertexArrayParameteriAPPLE;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYRANGEAPPLEPROC __glewVertexArrayRangeAPPLE;
-
-GLEW_FUN_EXPORT PFNGLDISABLEVERTEXATTRIBAPPLEPROC __glewDisableVertexAttribAPPLE;
-GLEW_FUN_EXPORT PFNGLENABLEVERTEXATTRIBAPPLEPROC __glewEnableVertexAttribAPPLE;
-GLEW_FUN_EXPORT PFNGLISVERTEXATTRIBENABLEDAPPLEPROC __glewIsVertexAttribEnabledAPPLE;
-GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB1DAPPLEPROC __glewMapVertexAttrib1dAPPLE;
-GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB1FAPPLEPROC __glewMapVertexAttrib1fAPPLE;
-GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB2DAPPLEPROC __glewMapVertexAttrib2dAPPLE;
-GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB2FAPPLEPROC __glewMapVertexAttrib2fAPPLE;
-
-GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONINDEXEDPROC __glewBindFragDataLocationIndexed;
-GLEW_FUN_EXPORT PFNGLGETFRAGDATAINDEXPROC __glewGetFragDataIndex;
-
-GLEW_FUN_EXPORT PFNGLCLAMPCOLORARBPROC __glewClampColorARB;
-
-GLEW_FUN_EXPORT PFNGLCOPYBUFFERSUBDATAPROC __glewCopyBufferSubData;
-
-GLEW_FUN_EXPORT PFNGLDRAWBUFFERSARBPROC __glewDrawBuffersARB;
-
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEIARBPROC __glewBlendEquationSeparateiARB;
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONIARBPROC __glewBlendEquationiARB;
-GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEIARBPROC __glewBlendFuncSeparateiARB;
-GLEW_FUN_EXPORT PFNGLBLENDFUNCIARBPROC __glewBlendFunciARB;
-
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSBASEVERTEXPROC __glewDrawElementsBaseVertex;
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC __glewDrawElementsInstancedBaseVertex;
-GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC __glewDrawRangeElementsBaseVertex;
-GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC __glewMultiDrawElementsBaseVertex;
-
-GLEW_FUN_EXPORT PFNGLDRAWARRAYSINDIRECTPROC __glewDrawArraysIndirect;
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINDIRECTPROC __glewDrawElementsIndirect;
-
-GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDARBPROC __glewDrawArraysInstancedARB;
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDARBPROC __glewDrawElementsInstancedARB;
-
-GLEW_FUN_EXPORT PFNGLBINDFRAMEBUFFERPROC __glewBindFramebuffer;
-GLEW_FUN_EXPORT PFNGLBINDRENDERBUFFERPROC __glewBindRenderbuffer;
-GLEW_FUN_EXPORT PFNGLBLITFRAMEBUFFERPROC __glewBlitFramebuffer;
-GLEW_FUN_EXPORT PFNGLCHECKFRAMEBUFFERSTATUSPROC __glewCheckFramebufferStatus;
-GLEW_FUN_EXPORT PFNGLDELETEFRAMEBUFFERSPROC __glewDeleteFramebuffers;
-GLEW_FUN_EXPORT PFNGLDELETERENDERBUFFERSPROC __glewDeleteRenderbuffers;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERRENDERBUFFERPROC __glewFramebufferRenderbuffer;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE1DPROC __glewFramebufferTexture1D;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DPROC __glewFramebufferTexture2D;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE3DPROC __glewFramebufferTexture3D;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYERPROC __glewFramebufferTextureLayer;
-GLEW_FUN_EXPORT PFNGLGENFRAMEBUFFERSPROC __glewGenFramebuffers;
-GLEW_FUN_EXPORT PFNGLGENRENDERBUFFERSPROC __glewGenRenderbuffers;
-GLEW_FUN_EXPORT PFNGLGENERATEMIPMAPPROC __glewGenerateMipmap;
-GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC __glewGetFramebufferAttachmentParameteriv;
-GLEW_FUN_EXPORT PFNGLGETRENDERBUFFERPARAMETERIVPROC __glewGetRenderbufferParameteriv;
-GLEW_FUN_EXPORT PFNGLISFRAMEBUFFERPROC __glewIsFramebuffer;
-GLEW_FUN_EXPORT PFNGLISRENDERBUFFERPROC __glewIsRenderbuffer;
-GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEPROC __glewRenderbufferStorage;
-GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC __glewRenderbufferStorageMultisample;
-
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREARBPROC __glewFramebufferTextureARB;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREFACEARBPROC __glewFramebufferTextureFaceARB;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYERARBPROC __glewFramebufferTextureLayerARB;
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERIARBPROC __glewProgramParameteriARB;
-
-GLEW_FUN_EXPORT PFNGLCOLORSUBTABLEPROC __glewColorSubTable;
-GLEW_FUN_EXPORT PFNGLCOLORTABLEPROC __glewColorTable;
-GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERFVPROC __glewColorTableParameterfv;
-GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERIVPROC __glewColorTableParameteriv;
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER1DPROC __glewConvolutionFilter1D;
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER2DPROC __glewConvolutionFilter2D;
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFPROC __glewConvolutionParameterf;
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFVPROC __glewConvolutionParameterfv;
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIPROC __glewConvolutionParameteri;
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIVPROC __glewConvolutionParameteriv;
-GLEW_FUN_EXPORT PFNGLCOPYCOLORSUBTABLEPROC __glewCopyColorSubTable;
-GLEW_FUN_EXPORT PFNGLCOPYCOLORTABLEPROC __glewCopyColorTable;
-GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER1DPROC __glewCopyConvolutionFilter1D;
-GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER2DPROC __glewCopyConvolutionFilter2D;
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPROC __glewGetColorTable;
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERFVPROC __glewGetColorTableParameterfv;
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERIVPROC __glewGetColorTableParameteriv;
-GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONFILTERPROC __glewGetConvolutionFilter;
-GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERFVPROC __glewGetConvolutionParameterfv;
-GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERIVPROC __glewGetConvolutionParameteriv;
-GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPROC __glewGetHistogram;
-GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERFVPROC __glewGetHistogramParameterfv;
-GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERIVPROC __glewGetHistogramParameteriv;
-GLEW_FUN_EXPORT PFNGLGETMINMAXPROC __glewGetMinmax;
-GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERFVPROC __glewGetMinmaxParameterfv;
-GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERIVPROC __glewGetMinmaxParameteriv;
-GLEW_FUN_EXPORT PFNGLGETSEPARABLEFILTERPROC __glewGetSeparableFilter;
-GLEW_FUN_EXPORT PFNGLHISTOGRAMPROC __glewHistogram;
-GLEW_FUN_EXPORT PFNGLMINMAXPROC __glewMinmax;
-GLEW_FUN_EXPORT PFNGLRESETHISTOGRAMPROC __glewResetHistogram;
-GLEW_FUN_EXPORT PFNGLRESETMINMAXPROC __glewResetMinmax;
-GLEW_FUN_EXPORT PFNGLSEPARABLEFILTER2DPROC __glewSeparableFilter2D;
-
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISORARBPROC __glewVertexAttribDivisorARB;
-
-GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDBUFFERRANGEPROC __glewFlushMappedBufferRange;
-GLEW_FUN_EXPORT PFNGLMAPBUFFERRANGEPROC __glewMapBufferRange;
-
-GLEW_FUN_EXPORT PFNGLCURRENTPALETTEMATRIXARBPROC __glewCurrentPaletteMatrixARB;
-GLEW_FUN_EXPORT PFNGLMATRIXINDEXPOINTERARBPROC __glewMatrixIndexPointerARB;
-GLEW_FUN_EXPORT PFNGLMATRIXINDEXUBVARBPROC __glewMatrixIndexubvARB;
-GLEW_FUN_EXPORT PFNGLMATRIXINDEXUIVARBPROC __glewMatrixIndexuivARB;
-GLEW_FUN_EXPORT PFNGLMATRIXINDEXUSVARBPROC __glewMatrixIndexusvARB;
-
-GLEW_FUN_EXPORT PFNGLSAMPLECOVERAGEARBPROC __glewSampleCoverageARB;
-
-GLEW_FUN_EXPORT PFNGLACTIVETEXTUREARBPROC __glewActiveTextureARB;
-GLEW_FUN_EXPORT PFNGLCLIENTACTIVETEXTUREARBPROC __glewClientActiveTextureARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DARBPROC __glewMultiTexCoord1dARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DVARBPROC __glewMultiTexCoord1dvARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FARBPROC __glewMultiTexCoord1fARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FVARBPROC __glewMultiTexCoord1fvARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IARBPROC __glewMultiTexCoord1iARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IVARBPROC __glewMultiTexCoord1ivARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SARBPROC __glewMultiTexCoord1sARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SVARBPROC __glewMultiTexCoord1svARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DARBPROC __glewMultiTexCoord2dARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DVARBPROC __glewMultiTexCoord2dvARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FARBPROC __glewMultiTexCoord2fARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FVARBPROC __glewMultiTexCoord2fvARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IARBPROC __glewMultiTexCoord2iARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IVARBPROC __glewMultiTexCoord2ivARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SARBPROC __glewMultiTexCoord2sARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SVARBPROC __glewMultiTexCoord2svARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DARBPROC __glewMultiTexCoord3dARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DVARBPROC __glewMultiTexCoord3dvARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FARBPROC __glewMultiTexCoord3fARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FVARBPROC __glewMultiTexCoord3fvARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IARBPROC __glewMultiTexCoord3iARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IVARBPROC __glewMultiTexCoord3ivARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SARBPROC __glewMultiTexCoord3sARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SVARBPROC __glewMultiTexCoord3svARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DARBPROC __glewMultiTexCoord4dARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DVARBPROC __glewMultiTexCoord4dvARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FARBPROC __glewMultiTexCoord4fARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FVARBPROC __glewMultiTexCoord4fvARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IARBPROC __glewMultiTexCoord4iARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IVARBPROC __glewMultiTexCoord4ivARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SARBPROC __glewMultiTexCoord4sARB;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SVARBPROC __glewMultiTexCoord4svARB;
-
-GLEW_FUN_EXPORT PFNGLBEGINQUERYARBPROC __glewBeginQueryARB;
-GLEW_FUN_EXPORT PFNGLDELETEQUERIESARBPROC __glewDeleteQueriesARB;
-GLEW_FUN_EXPORT PFNGLENDQUERYARBPROC __glewEndQueryARB;
-GLEW_FUN_EXPORT PFNGLGENQUERIESARBPROC __glewGenQueriesARB;
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTIVARBPROC __glewGetQueryObjectivARB;
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUIVARBPROC __glewGetQueryObjectuivARB;
-GLEW_FUN_EXPORT PFNGLGETQUERYIVARBPROC __glewGetQueryivARB;
-GLEW_FUN_EXPORT PFNGLISQUERYARBPROC __glewIsQueryARB;
-
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFARBPROC __glewPointParameterfARB;
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFVARBPROC __glewPointParameterfvARB;
-
-GLEW_FUN_EXPORT PFNGLPROVOKINGVERTEXPROC __glewProvokingVertex;
-
-GLEW_FUN_EXPORT PFNGLMINSAMPLESHADINGARBPROC __glewMinSampleShadingARB;
-
-GLEW_FUN_EXPORT PFNGLBINDSAMPLERPROC __glewBindSampler;
-GLEW_FUN_EXPORT PFNGLDELETESAMPLERSPROC __glewDeleteSamplers;
-GLEW_FUN_EXPORT PFNGLGENSAMPLERSPROC __glewGenSamplers;
-GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIIVPROC __glewGetSamplerParameterIiv;
-GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIUIVPROC __glewGetSamplerParameterIuiv;
-GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERFVPROC __glewGetSamplerParameterfv;
-GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIVPROC __glewGetSamplerParameteriv;
-GLEW_FUN_EXPORT PFNGLISSAMPLERPROC __glewIsSampler;
-GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIIVPROC __glewSamplerParameterIiv;
-GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIUIVPROC __glewSamplerParameterIuiv;
-GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERFPROC __glewSamplerParameterf;
-GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERFVPROC __glewSamplerParameterfv;
-GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIPROC __glewSamplerParameteri;
-GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIVPROC __glewSamplerParameteriv;
-
-GLEW_FUN_EXPORT PFNGLATTACHOBJECTARBPROC __glewAttachObjectARB;
-GLEW_FUN_EXPORT PFNGLCOMPILESHADERARBPROC __glewCompileShaderARB;
-GLEW_FUN_EXPORT PFNGLCREATEPROGRAMOBJECTARBPROC __glewCreateProgramObjectARB;
-GLEW_FUN_EXPORT PFNGLCREATESHADEROBJECTARBPROC __glewCreateShaderObjectARB;
-GLEW_FUN_EXPORT PFNGLDELETEOBJECTARBPROC __glewDeleteObjectARB;
-GLEW_FUN_EXPORT PFNGLDETACHOBJECTARBPROC __glewDetachObjectARB;
-GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMARBPROC __glewGetActiveUniformARB;
-GLEW_FUN_EXPORT PFNGLGETATTACHEDOBJECTSARBPROC __glewGetAttachedObjectsARB;
-GLEW_FUN_EXPORT PFNGLGETHANDLEARBPROC __glewGetHandleARB;
-GLEW_FUN_EXPORT PFNGLGETINFOLOGARBPROC __glewGetInfoLogARB;
-GLEW_FUN_EXPORT PFNGLGETOBJECTPARAMETERFVARBPROC __glewGetObjectParameterfvARB;
-GLEW_FUN_EXPORT PFNGLGETOBJECTPARAMETERIVARBPROC __glewGetObjectParameterivARB;
-GLEW_FUN_EXPORT PFNGLGETSHADERSOURCEARBPROC __glewGetShaderSourceARB;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMLOCATIONARBPROC __glewGetUniformLocationARB;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMFVARBPROC __glewGetUniformfvARB;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMIVARBPROC __glewGetUniformivARB;
-GLEW_FUN_EXPORT PFNGLLINKPROGRAMARBPROC __glewLinkProgramARB;
-GLEW_FUN_EXPORT PFNGLSHADERSOURCEARBPROC __glewShaderSourceARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM1FARBPROC __glewUniform1fARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM1FVARBPROC __glewUniform1fvARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM1IARBPROC __glewUniform1iARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM1IVARBPROC __glewUniform1ivARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM2FARBPROC __glewUniform2fARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM2FVARBPROC __glewUniform2fvARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM2IARBPROC __glewUniform2iARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM2IVARBPROC __glewUniform2ivARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM3FARBPROC __glewUniform3fARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM3FVARBPROC __glewUniform3fvARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM3IARBPROC __glewUniform3iARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM3IVARBPROC __glewUniform3ivARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM4FARBPROC __glewUniform4fARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM4FVARBPROC __glewUniform4fvARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM4IARBPROC __glewUniform4iARB;
-GLEW_FUN_EXPORT PFNGLUNIFORM4IVARBPROC __glewUniform4ivARB;
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2FVARBPROC __glewUniformMatrix2fvARB;
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3FVARBPROC __glewUniformMatrix3fvARB;
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4FVARBPROC __glewUniformMatrix4fvARB;
-GLEW_FUN_EXPORT PFNGLUSEPROGRAMOBJECTARBPROC __glewUseProgramObjectARB;
-GLEW_FUN_EXPORT PFNGLVALIDATEPROGRAMARBPROC __glewValidateProgramARB;
-
-GLEW_FUN_EXPORT PFNGLGETACTIVESUBROUTINENAMEPROC __glewGetActiveSubroutineName;
-GLEW_FUN_EXPORT PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC __glewGetActiveSubroutineUniformName;
-GLEW_FUN_EXPORT PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC __glewGetActiveSubroutineUniformiv;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMSTAGEIVPROC __glewGetProgramStageiv;
-GLEW_FUN_EXPORT PFNGLGETSUBROUTINEINDEXPROC __glewGetSubroutineIndex;
-GLEW_FUN_EXPORT PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC __glewGetSubroutineUniformLocation;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMSUBROUTINEUIVPROC __glewGetUniformSubroutineuiv;
-GLEW_FUN_EXPORT PFNGLUNIFORMSUBROUTINESUIVPROC __glewUniformSubroutinesuiv;
-
-GLEW_FUN_EXPORT PFNGLCOMPILESHADERINCLUDEARBPROC __glewCompileShaderIncludeARB;
-GLEW_FUN_EXPORT PFNGLDELETENAMEDSTRINGARBPROC __glewDeleteNamedStringARB;
-GLEW_FUN_EXPORT PFNGLGETNAMEDSTRINGARBPROC __glewGetNamedStringARB;
-GLEW_FUN_EXPORT PFNGLGETNAMEDSTRINGIVARBPROC __glewGetNamedStringivARB;
-GLEW_FUN_EXPORT PFNGLISNAMEDSTRINGARBPROC __glewIsNamedStringARB;
-GLEW_FUN_EXPORT PFNGLNAMEDSTRINGARBPROC __glewNamedStringARB;
-
-GLEW_FUN_EXPORT PFNGLCLIENTWAITSYNCPROC __glewClientWaitSync;
-GLEW_FUN_EXPORT PFNGLDELETESYNCPROC __glewDeleteSync;
-GLEW_FUN_EXPORT PFNGLFENCESYNCPROC __glewFenceSync;
-GLEW_FUN_EXPORT PFNGLGETINTEGER64VPROC __glewGetInteger64v;
-GLEW_FUN_EXPORT PFNGLGETSYNCIVPROC __glewGetSynciv;
-GLEW_FUN_EXPORT PFNGLISSYNCPROC __glewIsSync;
-GLEW_FUN_EXPORT PFNGLWAITSYNCPROC __glewWaitSync;
-
-GLEW_FUN_EXPORT PFNGLPATCHPARAMETERFVPROC __glewPatchParameterfv;
-GLEW_FUN_EXPORT PFNGLPATCHPARAMETERIPROC __glewPatchParameteri;
-
-GLEW_FUN_EXPORT PFNGLTEXBUFFERARBPROC __glewTexBufferARB;
-
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE1DARBPROC __glewCompressedTexImage1DARB;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE2DARBPROC __glewCompressedTexImage2DARB;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE3DARBPROC __glewCompressedTexImage3DARB;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC __glewCompressedTexSubImage1DARB;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC __glewCompressedTexSubImage2DARB;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC __glewCompressedTexSubImage3DARB;
-GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXIMAGEARBPROC __glewGetCompressedTexImageARB;
-
-GLEW_FUN_EXPORT PFNGLGETMULTISAMPLEFVPROC __glewGetMultisamplefv;
-GLEW_FUN_EXPORT PFNGLSAMPLEMASKIPROC __glewSampleMaski;
-GLEW_FUN_EXPORT PFNGLTEXIMAGE2DMULTISAMPLEPROC __glewTexImage2DMultisample;
-GLEW_FUN_EXPORT PFNGLTEXIMAGE3DMULTISAMPLEPROC __glewTexImage3DMultisample;
-
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTI64VPROC __glewGetQueryObjecti64v;
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUI64VPROC __glewGetQueryObjectui64v;
-GLEW_FUN_EXPORT PFNGLQUERYCOUNTERPROC __glewQueryCounter;
-
-GLEW_FUN_EXPORT PFNGLBINDTRANSFORMFEEDBACKPROC __glewBindTransformFeedback;
-GLEW_FUN_EXPORT PFNGLDELETETRANSFORMFEEDBACKSPROC __glewDeleteTransformFeedbacks;
-GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKPROC __glewDrawTransformFeedback;
-GLEW_FUN_EXPORT PFNGLGENTRANSFORMFEEDBACKSPROC __glewGenTransformFeedbacks;
-GLEW_FUN_EXPORT PFNGLISTRANSFORMFEEDBACKPROC __glewIsTransformFeedback;
-GLEW_FUN_EXPORT PFNGLPAUSETRANSFORMFEEDBACKPROC __glewPauseTransformFeedback;
-GLEW_FUN_EXPORT PFNGLRESUMETRANSFORMFEEDBACKPROC __glewResumeTransformFeedback;
-
-GLEW_FUN_EXPORT PFNGLBEGINQUERYINDEXEDPROC __glewBeginQueryIndexed;
-GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC __glewDrawTransformFeedbackStream;
-GLEW_FUN_EXPORT PFNGLENDQUERYINDEXEDPROC __glewEndQueryIndexed;
-GLEW_FUN_EXPORT PFNGLGETQUERYINDEXEDIVPROC __glewGetQueryIndexediv;
-
-GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXDARBPROC __glewLoadTransposeMatrixdARB;
-GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXFARBPROC __glewLoadTransposeMatrixfARB;
-GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXDARBPROC __glewMultTransposeMatrixdARB;
-GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXFARBPROC __glewMultTransposeMatrixfARB;
-
-GLEW_FUN_EXPORT PFNGLBINDBUFFERBASEPROC __glewBindBufferBase;
-GLEW_FUN_EXPORT PFNGLBINDBUFFERRANGEPROC __glewBindBufferRange;
-GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC __glewGetActiveUniformBlockName;
-GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMBLOCKIVPROC __glewGetActiveUniformBlockiv;
-GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMNAMEPROC __glewGetActiveUniformName;
-GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMSIVPROC __glewGetActiveUniformsiv;
-GLEW_FUN_EXPORT PFNGLGETINTEGERI_VPROC __glewGetIntegeri_v;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMBLOCKINDEXPROC __glewGetUniformBlockIndex;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMINDICESPROC __glewGetUniformIndices;
-GLEW_FUN_EXPORT PFNGLUNIFORMBLOCKBINDINGPROC __glewUniformBlockBinding;
-
-GLEW_FUN_EXPORT PFNGLBINDVERTEXARRAYPROC __glewBindVertexArray;
-GLEW_FUN_EXPORT PFNGLDELETEVERTEXARRAYSPROC __glewDeleteVertexArrays;
-GLEW_FUN_EXPORT PFNGLGENVERTEXARRAYSPROC __glewGenVertexArrays;
-GLEW_FUN_EXPORT PFNGLISVERTEXARRAYPROC __glewIsVertexArray;
-
-GLEW_FUN_EXPORT PFNGLVERTEXBLENDARBPROC __glewVertexBlendARB;
-GLEW_FUN_EXPORT PFNGLWEIGHTPOINTERARBPROC __glewWeightPointerARB;
-GLEW_FUN_EXPORT PFNGLWEIGHTBVARBPROC __glewWeightbvARB;
-GLEW_FUN_EXPORT PFNGLWEIGHTDVARBPROC __glewWeightdvARB;
-GLEW_FUN_EXPORT PFNGLWEIGHTFVARBPROC __glewWeightfvARB;
-GLEW_FUN_EXPORT PFNGLWEIGHTIVARBPROC __glewWeightivARB;
-GLEW_FUN_EXPORT PFNGLWEIGHTSVARBPROC __glewWeightsvARB;
-GLEW_FUN_EXPORT PFNGLWEIGHTUBVARBPROC __glewWeightubvARB;
-GLEW_FUN_EXPORT PFNGLWEIGHTUIVARBPROC __glewWeightuivARB;
-GLEW_FUN_EXPORT PFNGLWEIGHTUSVARBPROC __glewWeightusvARB;
-
-GLEW_FUN_EXPORT PFNGLBINDBUFFERARBPROC __glewBindBufferARB;
-GLEW_FUN_EXPORT PFNGLBUFFERDATAARBPROC __glewBufferDataARB;
-GLEW_FUN_EXPORT PFNGLBUFFERSUBDATAARBPROC __glewBufferSubDataARB;
-GLEW_FUN_EXPORT PFNGLDELETEBUFFERSARBPROC __glewDeleteBuffersARB;
-GLEW_FUN_EXPORT PFNGLGENBUFFERSARBPROC __glewGenBuffersARB;
-GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERIVARBPROC __glewGetBufferParameterivARB;
-GLEW_FUN_EXPORT PFNGLGETBUFFERPOINTERVARBPROC __glewGetBufferPointervARB;
-GLEW_FUN_EXPORT PFNGLGETBUFFERSUBDATAARBPROC __glewGetBufferSubDataARB;
-GLEW_FUN_EXPORT PFNGLISBUFFERARBPROC __glewIsBufferARB;
-GLEW_FUN_EXPORT PFNGLMAPBUFFERARBPROC __glewMapBufferARB;
-GLEW_FUN_EXPORT PFNGLUNMAPBUFFERARBPROC __glewUnmapBufferARB;
-
-GLEW_FUN_EXPORT PFNGLBINDPROGRAMARBPROC __glewBindProgramARB;
-GLEW_FUN_EXPORT PFNGLDELETEPROGRAMSARBPROC __glewDeleteProgramsARB;
-GLEW_FUN_EXPORT PFNGLDISABLEVERTEXATTRIBARRAYARBPROC __glewDisableVertexAttribArrayARB;
-GLEW_FUN_EXPORT PFNGLENABLEVERTEXATTRIBARRAYARBPROC __glewEnableVertexAttribArrayARB;
-GLEW_FUN_EXPORT PFNGLGENPROGRAMSARBPROC __glewGenProgramsARB;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMENVPARAMETERDVARBPROC __glewGetProgramEnvParameterdvARB;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMENVPARAMETERFVARBPROC __glewGetProgramEnvParameterfvARB;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC __glewGetProgramLocalParameterdvARB;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC __glewGetProgramLocalParameterfvARB;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMSTRINGARBPROC __glewGetProgramStringARB;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMIVARBPROC __glewGetProgramivARB;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBPOINTERVARBPROC __glewGetVertexAttribPointervARB;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBDVARBPROC __glewGetVertexAttribdvARB;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBFVARBPROC __glewGetVertexAttribfvARB;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIVARBPROC __glewGetVertexAttribivARB;
-GLEW_FUN_EXPORT PFNGLISPROGRAMARBPROC __glewIsProgramARB;
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4DARBPROC __glewProgramEnvParameter4dARB;
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4DVARBPROC __glewProgramEnvParameter4dvARB;
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4FARBPROC __glewProgramEnvParameter4fARB;
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4FVARBPROC __glewProgramEnvParameter4fvARB;
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4DARBPROC __glewProgramLocalParameter4dARB;
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4DVARBPROC __glewProgramLocalParameter4dvARB;
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4FARBPROC __glewProgramLocalParameter4fARB;
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4FVARBPROC __glewProgramLocalParameter4fvARB;
-GLEW_FUN_EXPORT PFNGLPROGRAMSTRINGARBPROC __glewProgramStringARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DARBPROC __glewVertexAttrib1dARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DVARBPROC __glewVertexAttrib1dvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FARBPROC __glewVertexAttrib1fARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FVARBPROC __glewVertexAttrib1fvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SARBPROC __glewVertexAttrib1sARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SVARBPROC __glewVertexAttrib1svARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DARBPROC __glewVertexAttrib2dARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DVARBPROC __glewVertexAttrib2dvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FARBPROC __glewVertexAttrib2fARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FVARBPROC __glewVertexAttrib2fvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SARBPROC __glewVertexAttrib2sARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SVARBPROC __glewVertexAttrib2svARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DARBPROC __glewVertexAttrib3dARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DVARBPROC __glewVertexAttrib3dvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FARBPROC __glewVertexAttrib3fARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FVARBPROC __glewVertexAttrib3fvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SARBPROC __glewVertexAttrib3sARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SVARBPROC __glewVertexAttrib3svARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NBVARBPROC __glewVertexAttrib4NbvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NIVARBPROC __glewVertexAttrib4NivARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NSVARBPROC __glewVertexAttrib4NsvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBARBPROC __glewVertexAttrib4NubARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBVARBPROC __glewVertexAttrib4NubvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUIVARBPROC __glewVertexAttrib4NuivARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUSVARBPROC __glewVertexAttrib4NusvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4BVARBPROC __glewVertexAttrib4bvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DARBPROC __glewVertexAttrib4dARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DVARBPROC __glewVertexAttrib4dvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FARBPROC __glewVertexAttrib4fARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FVARBPROC __glewVertexAttrib4fvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4IVARBPROC __glewVertexAttrib4ivARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SARBPROC __glewVertexAttrib4sARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SVARBPROC __glewVertexAttrib4svARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBVARBPROC __glewVertexAttrib4ubvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UIVARBPROC __glewVertexAttrib4uivARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4USVARBPROC __glewVertexAttrib4usvARB;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPOINTERARBPROC __glewVertexAttribPointerARB;
-
-GLEW_FUN_EXPORT PFNGLBINDATTRIBLOCATIONARBPROC __glewBindAttribLocationARB;
-GLEW_FUN_EXPORT PFNGLGETACTIVEATTRIBARBPROC __glewGetActiveAttribARB;
-GLEW_FUN_EXPORT PFNGLGETATTRIBLOCATIONARBPROC __glewGetAttribLocationARB;
-
-GLEW_FUN_EXPORT PFNGLCOLORP3UIPROC __glewColorP3ui;
-GLEW_FUN_EXPORT PFNGLCOLORP3UIVPROC __glewColorP3uiv;
-GLEW_FUN_EXPORT PFNGLCOLORP4UIPROC __glewColorP4ui;
-GLEW_FUN_EXPORT PFNGLCOLORP4UIVPROC __glewColorP4uiv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP1UIPROC __glewMultiTexCoordP1ui;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP1UIVPROC __glewMultiTexCoordP1uiv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP2UIPROC __glewMultiTexCoordP2ui;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP2UIVPROC __glewMultiTexCoordP2uiv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP3UIPROC __glewMultiTexCoordP3ui;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP3UIVPROC __glewMultiTexCoordP3uiv;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP4UIPROC __glewMultiTexCoordP4ui;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP4UIVPROC __glewMultiTexCoordP4uiv;
-GLEW_FUN_EXPORT PFNGLNORMALP3UIPROC __glewNormalP3ui;
-GLEW_FUN_EXPORT PFNGLNORMALP3UIVPROC __glewNormalP3uiv;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLORP3UIPROC __glewSecondaryColorP3ui;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLORP3UIVPROC __glewSecondaryColorP3uiv;
-GLEW_FUN_EXPORT PFNGLTEXCOORDP1UIPROC __glewTexCoordP1ui;
-GLEW_FUN_EXPORT PFNGLTEXCOORDP1UIVPROC __glewTexCoordP1uiv;
-GLEW_FUN_EXPORT PFNGLTEXCOORDP2UIPROC __glewTexCoordP2ui;
-GLEW_FUN_EXPORT PFNGLTEXCOORDP2UIVPROC __glewTexCoordP2uiv;
-GLEW_FUN_EXPORT PFNGLTEXCOORDP3UIPROC __glewTexCoordP3ui;
-GLEW_FUN_EXPORT PFNGLTEXCOORDP3UIVPROC __glewTexCoordP3uiv;
-GLEW_FUN_EXPORT PFNGLTEXCOORDP4UIPROC __glewTexCoordP4ui;
-GLEW_FUN_EXPORT PFNGLTEXCOORDP4UIVPROC __glewTexCoordP4uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP1UIPROC __glewVertexAttribP1ui;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP1UIVPROC __glewVertexAttribP1uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP2UIPROC __glewVertexAttribP2ui;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP2UIVPROC __glewVertexAttribP2uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP3UIPROC __glewVertexAttribP3ui;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP3UIVPROC __glewVertexAttribP3uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP4UIPROC __glewVertexAttribP4ui;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP4UIVPROC __glewVertexAttribP4uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXP2UIPROC __glewVertexP2ui;
-GLEW_FUN_EXPORT PFNGLVERTEXP2UIVPROC __glewVertexP2uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXP3UIPROC __glewVertexP3ui;
-GLEW_FUN_EXPORT PFNGLVERTEXP3UIVPROC __glewVertexP3uiv;
-GLEW_FUN_EXPORT PFNGLVERTEXP4UIPROC __glewVertexP4ui;
-GLEW_FUN_EXPORT PFNGLVERTEXP4UIVPROC __glewVertexP4uiv;
-
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2DARBPROC __glewWindowPos2dARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2DVARBPROC __glewWindowPos2dvARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2FARBPROC __glewWindowPos2fARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2FVARBPROC __glewWindowPos2fvARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2IARBPROC __glewWindowPos2iARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2IVARBPROC __glewWindowPos2ivARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2SARBPROC __glewWindowPos2sARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2SVARBPROC __glewWindowPos2svARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3DARBPROC __glewWindowPos3dARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3DVARBPROC __glewWindowPos3dvARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3FARBPROC __glewWindowPos3fARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3FVARBPROC __glewWindowPos3fvARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3IARBPROC __glewWindowPos3iARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3IVARBPROC __glewWindowPos3ivARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3SARBPROC __glewWindowPos3sARB;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3SVARBPROC __glewWindowPos3svARB;
-
-GLEW_FUN_EXPORT PFNGLDRAWBUFFERSATIPROC __glewDrawBuffersATI;
-
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTARRAYATIPROC __glewDrawElementArrayATI;
-GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTARRAYATIPROC __glewDrawRangeElementArrayATI;
-GLEW_FUN_EXPORT PFNGLELEMENTPOINTERATIPROC __glewElementPointerATI;
-
-GLEW_FUN_EXPORT PFNGLGETTEXBUMPPARAMETERFVATIPROC __glewGetTexBumpParameterfvATI;
-GLEW_FUN_EXPORT PFNGLGETTEXBUMPPARAMETERIVATIPROC __glewGetTexBumpParameterivATI;
-GLEW_FUN_EXPORT PFNGLTEXBUMPPARAMETERFVATIPROC __glewTexBumpParameterfvATI;
-GLEW_FUN_EXPORT PFNGLTEXBUMPPARAMETERIVATIPROC __glewTexBumpParameterivATI;
-
-GLEW_FUN_EXPORT PFNGLALPHAFRAGMENTOP1ATIPROC __glewAlphaFragmentOp1ATI;
-GLEW_FUN_EXPORT PFNGLALPHAFRAGMENTOP2ATIPROC __glewAlphaFragmentOp2ATI;
-GLEW_FUN_EXPORT PFNGLALPHAFRAGMENTOP3ATIPROC __glewAlphaFragmentOp3ATI;
-GLEW_FUN_EXPORT PFNGLBEGINFRAGMENTSHADERATIPROC __glewBeginFragmentShaderATI;
-GLEW_FUN_EXPORT PFNGLBINDFRAGMENTSHADERATIPROC __glewBindFragmentShaderATI;
-GLEW_FUN_EXPORT PFNGLCOLORFRAGMENTOP1ATIPROC __glewColorFragmentOp1ATI;
-GLEW_FUN_EXPORT PFNGLCOLORFRAGMENTOP2ATIPROC __glewColorFragmentOp2ATI;
-GLEW_FUN_EXPORT PFNGLCOLORFRAGMENTOP3ATIPROC __glewColorFragmentOp3ATI;
-GLEW_FUN_EXPORT PFNGLDELETEFRAGMENTSHADERATIPROC __glewDeleteFragmentShaderATI;
-GLEW_FUN_EXPORT PFNGLENDFRAGMENTSHADERATIPROC __glewEndFragmentShaderATI;
-GLEW_FUN_EXPORT PFNGLGENFRAGMENTSHADERSATIPROC __glewGenFragmentShadersATI;
-GLEW_FUN_EXPORT PFNGLPASSTEXCOORDATIPROC __glewPassTexCoordATI;
-GLEW_FUN_EXPORT PFNGLSAMPLEMAPATIPROC __glewSampleMapATI;
-GLEW_FUN_EXPORT PFNGLSETFRAGMENTSHADERCONSTANTATIPROC __glewSetFragmentShaderConstantATI;
-
-GLEW_FUN_EXPORT PFNGLMAPOBJECTBUFFERATIPROC __glewMapObjectBufferATI;
-GLEW_FUN_EXPORT PFNGLUNMAPOBJECTBUFFERATIPROC __glewUnmapObjectBufferATI;
-
-GLEW_FUN_EXPORT PFNGLPNTRIANGLESFATIPROC __glPNTrianglewesfATI;
-GLEW_FUN_EXPORT PFNGLPNTRIANGLESIATIPROC __glPNTrianglewesiATI;
-
-GLEW_FUN_EXPORT PFNGLSTENCILFUNCSEPARATEATIPROC __glewStencilFuncSeparateATI;
-GLEW_FUN_EXPORT PFNGLSTENCILOPSEPARATEATIPROC __glewStencilOpSeparateATI;
-
-GLEW_FUN_EXPORT PFNGLARRAYOBJECTATIPROC __glewArrayObjectATI;
-GLEW_FUN_EXPORT PFNGLFREEOBJECTBUFFERATIPROC __glewFreeObjectBufferATI;
-GLEW_FUN_EXPORT PFNGLGETARRAYOBJECTFVATIPROC __glewGetArrayObjectfvATI;
-GLEW_FUN_EXPORT PFNGLGETARRAYOBJECTIVATIPROC __glewGetArrayObjectivATI;
-GLEW_FUN_EXPORT PFNGLGETOBJECTBUFFERFVATIPROC __glewGetObjectBufferfvATI;
-GLEW_FUN_EXPORT PFNGLGETOBJECTBUFFERIVATIPROC __glewGetObjectBufferivATI;
-GLEW_FUN_EXPORT PFNGLGETVARIANTARRAYOBJECTFVATIPROC __glewGetVariantArrayObjectfvATI;
-GLEW_FUN_EXPORT PFNGLGETVARIANTARRAYOBJECTIVATIPROC __glewGetVariantArrayObjectivATI;
-GLEW_FUN_EXPORT PFNGLISOBJECTBUFFERATIPROC __glewIsObjectBufferATI;
-GLEW_FUN_EXPORT PFNGLNEWOBJECTBUFFERATIPROC __glewNewObjectBufferATI;
-GLEW_FUN_EXPORT PFNGLUPDATEOBJECTBUFFERATIPROC __glewUpdateObjectBufferATI;
-GLEW_FUN_EXPORT PFNGLVARIANTARRAYOBJECTATIPROC __glewVariantArrayObjectATI;
-
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC __glewGetVertexAttribArrayObjectfvATI;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC __glewGetVertexAttribArrayObjectivATI;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBARRAYOBJECTATIPROC __glewVertexAttribArrayObjectATI;
-
-GLEW_FUN_EXPORT PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC __glewClientActiveVertexStreamATI;
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3BATIPROC __glewNormalStream3bATI;
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3BVATIPROC __glewNormalStream3bvATI;
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3DATIPROC __glewNormalStream3dATI;
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3DVATIPROC __glewNormalStream3dvATI;
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3FATIPROC __glewNormalStream3fATI;
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3FVATIPROC __glewNormalStream3fvATI;
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3IATIPROC __glewNormalStream3iATI;
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3IVATIPROC __glewNormalStream3ivATI;
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3SATIPROC __glewNormalStream3sATI;
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3SVATIPROC __glewNormalStream3svATI;
-GLEW_FUN_EXPORT PFNGLVERTEXBLENDENVFATIPROC __glewVertexBlendEnvfATI;
-GLEW_FUN_EXPORT PFNGLVERTEXBLENDENVIATIPROC __glewVertexBlendEnviATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2DATIPROC __glewVertexStream2dATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2DVATIPROC __glewVertexStream2dvATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2FATIPROC __glewVertexStream2fATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2FVATIPROC __glewVertexStream2fvATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2IATIPROC __glewVertexStream2iATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2IVATIPROC __glewVertexStream2ivATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2SATIPROC __glewVertexStream2sATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2SVATIPROC __glewVertexStream2svATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3DATIPROC __glewVertexStream3dATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3DVATIPROC __glewVertexStream3dvATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3FATIPROC __glewVertexStream3fATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3FVATIPROC __glewVertexStream3fvATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3IATIPROC __glewVertexStream3iATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3IVATIPROC __glewVertexStream3ivATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3SATIPROC __glewVertexStream3sATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3SVATIPROC __glewVertexStream3svATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4DATIPROC __glewVertexStream4dATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4DVATIPROC __glewVertexStream4dvATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4FATIPROC __glewVertexStream4fATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4FVATIPROC __glewVertexStream4fvATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4IATIPROC __glewVertexStream4iATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4IVATIPROC __glewVertexStream4ivATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4SATIPROC __glewVertexStream4sATI;
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4SVATIPROC __glewVertexStream4svATI;
-
-GLEW_FUN_EXPORT PFNGLGETUNIFORMBUFFERSIZEEXTPROC __glewGetUniformBufferSizeEXT;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMOFFSETEXTPROC __glewGetUniformOffsetEXT;
-GLEW_FUN_EXPORT PFNGLUNIFORMBUFFEREXTPROC __glewUniformBufferEXT;
-
-GLEW_FUN_EXPORT PFNGLBLENDCOLOREXTPROC __glewBlendColorEXT;
-
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEEXTPROC __glewBlendEquationSeparateEXT;
-
-GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEEXTPROC __glewBlendFuncSeparateEXT;
-
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONEXTPROC __glewBlendEquationEXT;
-
-GLEW_FUN_EXPORT PFNGLCOLORSUBTABLEEXTPROC __glewColorSubTableEXT;
-GLEW_FUN_EXPORT PFNGLCOPYCOLORSUBTABLEEXTPROC __glewCopyColorSubTableEXT;
-
-GLEW_FUN_EXPORT PFNGLLOCKARRAYSEXTPROC __glewLockArraysEXT;
-GLEW_FUN_EXPORT PFNGLUNLOCKARRAYSEXTPROC __glewUnlockArraysEXT;
-
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER1DEXTPROC __glewConvolutionFilter1DEXT;
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER2DEXTPROC __glewConvolutionFilter2DEXT;
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFEXTPROC __glewConvolutionParameterfEXT;
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFVEXTPROC __glewConvolutionParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIEXTPROC __glewConvolutionParameteriEXT;
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIVEXTPROC __glewConvolutionParameterivEXT;
-GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC __glewCopyConvolutionFilter1DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC __glewCopyConvolutionFilter2DEXT;
-GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONFILTEREXTPROC __glewGetConvolutionFilterEXT;
-GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC __glewGetConvolutionParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC __glewGetConvolutionParameterivEXT;
-GLEW_FUN_EXPORT PFNGLGETSEPARABLEFILTEREXTPROC __glewGetSeparableFilterEXT;
-GLEW_FUN_EXPORT PFNGLSEPARABLEFILTER2DEXTPROC __glewSeparableFilter2DEXT;
-
-GLEW_FUN_EXPORT PFNGLBINORMALPOINTEREXTPROC __glewBinormalPointerEXT;
-GLEW_FUN_EXPORT PFNGLTANGENTPOINTEREXTPROC __glewTangentPointerEXT;
-
-GLEW_FUN_EXPORT PFNGLCOPYTEXIMAGE1DEXTPROC __glewCopyTexImage1DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYTEXIMAGE2DEXTPROC __glewCopyTexImage2DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE1DEXTPROC __glewCopyTexSubImage1DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE2DEXTPROC __glewCopyTexSubImage2DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE3DEXTPROC __glewCopyTexSubImage3DEXT;
-
-GLEW_FUN_EXPORT PFNGLCULLPARAMETERDVEXTPROC __glewCullParameterdvEXT;
-GLEW_FUN_EXPORT PFNGLCULLPARAMETERFVEXTPROC __glewCullParameterfvEXT;
-
-GLEW_FUN_EXPORT PFNGLDEPTHBOUNDSEXTPROC __glewDepthBoundsEXT;
-
-GLEW_FUN_EXPORT PFNGLBINDMULTITEXTUREEXTPROC __glewBindMultiTextureEXT;
-GLEW_FUN_EXPORT PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC __glewCheckNamedFramebufferStatusEXT;
-GLEW_FUN_EXPORT PFNGLCLIENTATTRIBDEFAULTEXTPROC __glewClientAttribDefaultEXT;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC __glewCompressedMultiTexImage1DEXT;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC __glewCompressedMultiTexImage2DEXT;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC __glewCompressedMultiTexImage3DEXT;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC __glewCompressedMultiTexSubImage1DEXT;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC __glewCompressedMultiTexSubImage2DEXT;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC __glewCompressedMultiTexSubImage3DEXT;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC __glewCompressedTextureImage1DEXT;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC __glewCompressedTextureImage2DEXT;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC __glewCompressedTextureImage3DEXT;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC __glewCompressedTextureSubImage1DEXT;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC __glewCompressedTextureSubImage2DEXT;
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC __glewCompressedTextureSubImage3DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYMULTITEXIMAGE1DEXTPROC __glewCopyMultiTexImage1DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYMULTITEXIMAGE2DEXTPROC __glewCopyMultiTexImage2DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC __glewCopyMultiTexSubImage1DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC __glewCopyMultiTexSubImage2DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC __glewCopyMultiTexSubImage3DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYTEXTUREIMAGE1DEXTPROC __glewCopyTextureImage1DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYTEXTUREIMAGE2DEXTPROC __glewCopyTextureImage2DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC __glewCopyTextureSubImage1DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC __glewCopyTextureSubImage2DEXT;
-GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC __glewCopyTextureSubImage3DEXT;
-GLEW_FUN_EXPORT PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC __glewDisableClientStateIndexedEXT;
-GLEW_FUN_EXPORT PFNGLDISABLECLIENTSTATEIEXTPROC __glewDisableClientStateiEXT;
-GLEW_FUN_EXPORT PFNGLDISABLEVERTEXARRAYATTRIBEXTPROC __glewDisableVertexArrayAttribEXT;
-GLEW_FUN_EXPORT PFNGLDISABLEVERTEXARRAYEXTPROC __glewDisableVertexArrayEXT;
-GLEW_FUN_EXPORT PFNGLENABLECLIENTSTATEINDEXEDEXTPROC __glewEnableClientStateIndexedEXT;
-GLEW_FUN_EXPORT PFNGLENABLECLIENTSTATEIEXTPROC __glewEnableClientStateiEXT;
-GLEW_FUN_EXPORT PFNGLENABLEVERTEXARRAYATTRIBEXTPROC __glewEnableVertexArrayAttribEXT;
-GLEW_FUN_EXPORT PFNGLENABLEVERTEXARRAYEXTPROC __glewEnableVertexArrayEXT;
-GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC __glewFlushMappedNamedBufferRangeEXT;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC __glewFramebufferDrawBufferEXT;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC __glewFramebufferDrawBuffersEXT;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERREADBUFFEREXTPROC __glewFramebufferReadBufferEXT;
-GLEW_FUN_EXPORT PFNGLGENERATEMULTITEXMIPMAPEXTPROC __glewGenerateMultiTexMipmapEXT;
-GLEW_FUN_EXPORT PFNGLGENERATETEXTUREMIPMAPEXTPROC __glewGenerateTextureMipmapEXT;
-GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC __glewGetCompressedMultiTexImageEXT;
-GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC __glewGetCompressedTextureImageEXT;
-GLEW_FUN_EXPORT PFNGLGETDOUBLEINDEXEDVEXTPROC __glewGetDoubleIndexedvEXT;
-GLEW_FUN_EXPORT PFNGLGETDOUBLEI_VEXTPROC __glewGetDoublei_vEXT;
-GLEW_FUN_EXPORT PFNGLGETFLOATINDEXEDVEXTPROC __glewGetFloatIndexedvEXT;
-GLEW_FUN_EXPORT PFNGLGETFLOATI_VEXTPROC __glewGetFloati_vEXT;
-GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC __glewGetFramebufferParameterivEXT;
-GLEW_FUN_EXPORT PFNGLGETMULTITEXENVFVEXTPROC __glewGetMultiTexEnvfvEXT;
-GLEW_FUN_EXPORT PFNGLGETMULTITEXENVIVEXTPROC __glewGetMultiTexEnvivEXT;
-GLEW_FUN_EXPORT PFNGLGETMULTITEXGENDVEXTPROC __glewGetMultiTexGendvEXT;
-GLEW_FUN_EXPORT PFNGLGETMULTITEXGENFVEXTPROC __glewGetMultiTexGenfvEXT;
-GLEW_FUN_EXPORT PFNGLGETMULTITEXGENIVEXTPROC __glewGetMultiTexGenivEXT;
-GLEW_FUN_EXPORT PFNGLGETMULTITEXIMAGEEXTPROC __glewGetMultiTexImageEXT;
-GLEW_FUN_EXPORT PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC __glewGetMultiTexLevelParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC __glewGetMultiTexLevelParameterivEXT;
-GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERIIVEXTPROC __glewGetMultiTexParameterIivEXT;
-GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERIUIVEXTPROC __glewGetMultiTexParameterIuivEXT;
-GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERFVEXTPROC __glewGetMultiTexParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERIVEXTPROC __glewGetMultiTexParameterivEXT;
-GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC __glewGetNamedBufferParameterivEXT;
-GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPOINTERVEXTPROC __glewGetNamedBufferPointervEXT;
-GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERSUBDATAEXTPROC __glewGetNamedBufferSubDataEXT;
-GLEW_FUN_EXPORT PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC __glewGetNamedFramebufferAttachmentParameterivEXT;
-GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC __glewGetNamedProgramLocalParameterIivEXT;
-GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC __glewGetNamedProgramLocalParameterIuivEXT;
-GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC __glewGetNamedProgramLocalParameterdvEXT;
-GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC __glewGetNamedProgramLocalParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMSTRINGEXTPROC __glewGetNamedProgramStringEXT;
-GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMIVEXTPROC __glewGetNamedProgramivEXT;
-GLEW_FUN_EXPORT PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC __glewGetNamedRenderbufferParameterivEXT;
-GLEW_FUN_EXPORT PFNGLGETPOINTERINDEXEDVEXTPROC __glewGetPointerIndexedvEXT;
-GLEW_FUN_EXPORT PFNGLGETPOINTERI_VEXTPROC __glewGetPointeri_vEXT;
-GLEW_FUN_EXPORT PFNGLGETTEXTUREIMAGEEXTPROC __glewGetTextureImageEXT;
-GLEW_FUN_EXPORT PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC __glewGetTextureLevelParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC __glewGetTextureLevelParameterivEXT;
-GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIIVEXTPROC __glewGetTextureParameterIivEXT;
-GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIUIVEXTPROC __glewGetTextureParameterIuivEXT;
-GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERFVEXTPROC __glewGetTextureParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIVEXTPROC __glewGetTextureParameterivEXT;
-GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYINTEGERI_VEXTPROC __glewGetVertexArrayIntegeri_vEXT;
-GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYINTEGERVEXTPROC __glewGetVertexArrayIntegervEXT;
-GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYPOINTERI_VEXTPROC __glewGetVertexArrayPointeri_vEXT;
-GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYPOINTERVEXTPROC __glewGetVertexArrayPointervEXT;
-GLEW_FUN_EXPORT PFNGLMAPNAMEDBUFFEREXTPROC __glewMapNamedBufferEXT;
-GLEW_FUN_EXPORT PFNGLMAPNAMEDBUFFERRANGEEXTPROC __glewMapNamedBufferRangeEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXFRUSTUMEXTPROC __glewMatrixFrustumEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXLOADIDENTITYEXTPROC __glewMatrixLoadIdentityEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXLOADTRANSPOSEDEXTPROC __glewMatrixLoadTransposedEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXLOADTRANSPOSEFEXTPROC __glewMatrixLoadTransposefEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXLOADDEXTPROC __glewMatrixLoaddEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXLOADFEXTPROC __glewMatrixLoadfEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXMULTTRANSPOSEDEXTPROC __glewMatrixMultTransposedEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXMULTTRANSPOSEFEXTPROC __glewMatrixMultTransposefEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXMULTDEXTPROC __glewMatrixMultdEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXMULTFEXTPROC __glewMatrixMultfEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXORTHOEXTPROC __glewMatrixOrthoEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXPOPEXTPROC __glewMatrixPopEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXPUSHEXTPROC __glewMatrixPushEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXROTATEDEXTPROC __glewMatrixRotatedEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXROTATEFEXTPROC __glewMatrixRotatefEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXSCALEDEXTPROC __glewMatrixScaledEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXSCALEFEXTPROC __glewMatrixScalefEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXTRANSLATEDEXTPROC __glewMatrixTranslatedEXT;
-GLEW_FUN_EXPORT PFNGLMATRIXTRANSLATEFEXTPROC __glewMatrixTranslatefEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXBUFFEREXTPROC __glewMultiTexBufferEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDPOINTEREXTPROC __glewMultiTexCoordPointerEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXENVFEXTPROC __glewMultiTexEnvfEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXENVFVEXTPROC __glewMultiTexEnvfvEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXENVIEXTPROC __glewMultiTexEnviEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXENVIVEXTPROC __glewMultiTexEnvivEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXGENDEXTPROC __glewMultiTexGendEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXGENDVEXTPROC __glewMultiTexGendvEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXGENFEXTPROC __glewMultiTexGenfEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXGENFVEXTPROC __glewMultiTexGenfvEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXGENIEXTPROC __glewMultiTexGeniEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXGENIVEXTPROC __glewMultiTexGenivEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXIMAGE1DEXTPROC __glewMultiTexImage1DEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXIMAGE2DEXTPROC __glewMultiTexImage2DEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXIMAGE3DEXTPROC __glewMultiTexImage3DEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIIVEXTPROC __glewMultiTexParameterIivEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIUIVEXTPROC __glewMultiTexParameterIuivEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERFEXTPROC __glewMultiTexParameterfEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERFVEXTPROC __glewMultiTexParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIEXTPROC __glewMultiTexParameteriEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIVEXTPROC __glewMultiTexParameterivEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXRENDERBUFFEREXTPROC __glewMultiTexRenderbufferEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXSUBIMAGE1DEXTPROC __glewMultiTexSubImage1DEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXSUBIMAGE2DEXTPROC __glewMultiTexSubImage2DEXT;
-GLEW_FUN_EXPORT PFNGLMULTITEXSUBIMAGE3DEXTPROC __glewMultiTexSubImage3DEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDBUFFERDATAEXTPROC __glewNamedBufferDataEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSUBDATAEXTPROC __glewNamedBufferSubDataEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC __glewNamedCopyBufferSubDataEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC __glewNamedFramebufferRenderbufferEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC __glewNamedFramebufferTexture1DEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC __glewNamedFramebufferTexture2DEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC __glewNamedFramebufferTexture3DEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC __glewNamedFramebufferTextureEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC __glewNamedFramebufferTextureFaceEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC __glewNamedFramebufferTextureLayerEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC __glewNamedProgramLocalParameter4dEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC __glewNamedProgramLocalParameter4dvEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC __glewNamedProgramLocalParameter4fEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC __glewNamedProgramLocalParameter4fvEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC __glewNamedProgramLocalParameterI4iEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC __glewNamedProgramLocalParameterI4ivEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC __glewNamedProgramLocalParameterI4uiEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC __glewNamedProgramLocalParameterI4uivEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC __glewNamedProgramLocalParameters4fvEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC __glewNamedProgramLocalParametersI4ivEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC __glewNamedProgramLocalParametersI4uivEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMSTRINGEXTPROC __glewNamedProgramStringEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC __glewNamedRenderbufferStorageEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC __glewNamedRenderbufferStorageMultisampleCoverageEXT;
-GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC __glewNamedRenderbufferStorageMultisampleEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FEXTPROC __glewProgramUniform1fEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FVEXTPROC __glewProgramUniform1fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IEXTPROC __glewProgramUniform1iEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IVEXTPROC __glewProgramUniform1ivEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIEXTPROC __glewProgramUniform1uiEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIVEXTPROC __glewProgramUniform1uivEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FEXTPROC __glewProgramUniform2fEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FVEXTPROC __glewProgramUniform2fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IEXTPROC __glewProgramUniform2iEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IVEXTPROC __glewProgramUniform2ivEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIEXTPROC __glewProgramUniform2uiEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIVEXTPROC __glewProgramUniform2uivEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FEXTPROC __glewProgramUniform3fEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FVEXTPROC __glewProgramUniform3fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IEXTPROC __glewProgramUniform3iEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IVEXTPROC __glewProgramUniform3ivEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIEXTPROC __glewProgramUniform3uiEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIVEXTPROC __glewProgramUniform3uivEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FEXTPROC __glewProgramUniform4fEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FVEXTPROC __glewProgramUniform4fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IEXTPROC __glewProgramUniform4iEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IVEXTPROC __glewProgramUniform4ivEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIEXTPROC __glewProgramUniform4uiEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIVEXTPROC __glewProgramUniform4uivEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC __glewProgramUniformMatrix2fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC __glewProgramUniformMatrix2x3fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC __glewProgramUniformMatrix2x4fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC __glewProgramUniformMatrix3fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC __glewProgramUniformMatrix3x2fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC __glewProgramUniformMatrix3x4fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC __glewProgramUniformMatrix4fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC __glewProgramUniformMatrix4x2fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC __glewProgramUniformMatrix4x3fvEXT;
-GLEW_FUN_EXPORT PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC __glewPushClientAttribDefaultEXT;
-GLEW_FUN_EXPORT PFNGLTEXTUREBUFFEREXTPROC __glewTextureBufferEXT;
-GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE1DEXTPROC __glewTextureImage1DEXT;
-GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE2DEXTPROC __glewTextureImage2DEXT;
-GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE3DEXTPROC __glewTextureImage3DEXT;
-GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIIVEXTPROC __glewTextureParameterIivEXT;
-GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIUIVEXTPROC __glewTextureParameterIuivEXT;
-GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERFEXTPROC __glewTextureParameterfEXT;
-GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERFVEXTPROC __glewTextureParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIEXTPROC __glewTextureParameteriEXT;
-GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIVEXTPROC __glewTextureParameterivEXT;
-GLEW_FUN_EXPORT PFNGLTEXTURERENDERBUFFEREXTPROC __glewTextureRenderbufferEXT;
-GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE1DEXTPROC __glewTextureSubImage1DEXT;
-GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE2DEXTPROC __glewTextureSubImage2DEXT;
-GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE3DEXTPROC __glewTextureSubImage3DEXT;
-GLEW_FUN_EXPORT PFNGLUNMAPNAMEDBUFFEREXTPROC __glewUnmapNamedBufferEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYCOLOROFFSETEXTPROC __glewVertexArrayColorOffsetEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYEDGEFLAGOFFSETEXTPROC __glewVertexArrayEdgeFlagOffsetEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYFOGCOORDOFFSETEXTPROC __glewVertexArrayFogCoordOffsetEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYINDEXOFFSETEXTPROC __glewVertexArrayIndexOffsetEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYMULTITEXCOORDOFFSETEXTPROC __glewVertexArrayMultiTexCoordOffsetEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYNORMALOFFSETEXTPROC __glewVertexArrayNormalOffsetEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYSECONDARYCOLOROFFSETEXTPROC __glewVertexArraySecondaryColorOffsetEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYTEXCOORDOFFSETEXTPROC __glewVertexArrayTexCoordOffsetEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBIOFFSETEXTPROC __glewVertexArrayVertexAttribIOffsetEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBOFFSETEXTPROC __glewVertexArrayVertexAttribOffsetEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXOFFSETEXTPROC __glewVertexArrayVertexOffsetEXT;
-
-GLEW_FUN_EXPORT PFNGLCOLORMASKINDEXEDEXTPROC __glewColorMaskIndexedEXT;
-GLEW_FUN_EXPORT PFNGLDISABLEINDEXEDEXTPROC __glewDisableIndexedEXT;
-GLEW_FUN_EXPORT PFNGLENABLEINDEXEDEXTPROC __glewEnableIndexedEXT;
-GLEW_FUN_EXPORT PFNGLGETBOOLEANINDEXEDVEXTPROC __glewGetBooleanIndexedvEXT;
-GLEW_FUN_EXPORT PFNGLGETINTEGERINDEXEDVEXTPROC __glewGetIntegerIndexedvEXT;
-GLEW_FUN_EXPORT PFNGLISENABLEDINDEXEDEXTPROC __glewIsEnabledIndexedEXT;
-
-GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDEXTPROC __glewDrawArraysInstancedEXT;
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDEXTPROC __glewDrawElementsInstancedEXT;
-
-GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSEXTPROC __glewDrawRangeElementsEXT;
-
-GLEW_FUN_EXPORT PFNGLFOGCOORDPOINTEREXTPROC __glewFogCoordPointerEXT;
-GLEW_FUN_EXPORT PFNGLFOGCOORDDEXTPROC __glewFogCoorddEXT;
-GLEW_FUN_EXPORT PFNGLFOGCOORDDVEXTPROC __glewFogCoorddvEXT;
-GLEW_FUN_EXPORT PFNGLFOGCOORDFEXTPROC __glewFogCoordfEXT;
-GLEW_FUN_EXPORT PFNGLFOGCOORDFVEXTPROC __glewFogCoordfvEXT;
-
-GLEW_FUN_EXPORT PFNGLFRAGMENTCOLORMATERIALEXTPROC __glewFragmentColorMaterialEXT;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFEXTPROC __glewFragmentLightModelfEXT;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFVEXTPROC __glewFragmentLightModelfvEXT;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELIEXTPROC __glewFragmentLightModeliEXT;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELIVEXTPROC __glewFragmentLightModelivEXT;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFEXTPROC __glewFragmentLightfEXT;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFVEXTPROC __glewFragmentLightfvEXT;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTIEXTPROC __glewFragmentLightiEXT;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTIVEXTPROC __glewFragmentLightivEXT;
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFEXTPROC __glewFragmentMaterialfEXT;
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFVEXTPROC __glewFragmentMaterialfvEXT;
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALIEXTPROC __glewFragmentMaterialiEXT;
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALIVEXTPROC __glewFragmentMaterialivEXT;
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTFVEXTPROC __glewGetFragmentLightfvEXT;
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTIVEXTPROC __glewGetFragmentLightivEXT;
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALFVEXTPROC __glewGetFragmentMaterialfvEXT;
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALIVEXTPROC __glewGetFragmentMaterialivEXT;
-GLEW_FUN_EXPORT PFNGLLIGHTENVIEXTPROC __glewLightEnviEXT;
-
-GLEW_FUN_EXPORT PFNGLBLITFRAMEBUFFEREXTPROC __glewBlitFramebufferEXT;
-
-GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC __glewRenderbufferStorageMultisampleEXT;
-
-GLEW_FUN_EXPORT PFNGLBINDFRAMEBUFFEREXTPROC __glewBindFramebufferEXT;
-GLEW_FUN_EXPORT PFNGLBINDRENDERBUFFEREXTPROC __glewBindRenderbufferEXT;
-GLEW_FUN_EXPORT PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC __glewCheckFramebufferStatusEXT;
-GLEW_FUN_EXPORT PFNGLDELETEFRAMEBUFFERSEXTPROC __glewDeleteFramebuffersEXT;
-GLEW_FUN_EXPORT PFNGLDELETERENDERBUFFERSEXTPROC __glewDeleteRenderbuffersEXT;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC __glewFramebufferRenderbufferEXT;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE1DEXTPROC __glewFramebufferTexture1DEXT;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DEXTPROC __glewFramebufferTexture2DEXT;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE3DEXTPROC __glewFramebufferTexture3DEXT;
-GLEW_FUN_EXPORT PFNGLGENFRAMEBUFFERSEXTPROC __glewGenFramebuffersEXT;
-GLEW_FUN_EXPORT PFNGLGENRENDERBUFFERSEXTPROC __glewGenRenderbuffersEXT;
-GLEW_FUN_EXPORT PFNGLGENERATEMIPMAPEXTPROC __glewGenerateMipmapEXT;
-GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC __glewGetFramebufferAttachmentParameterivEXT;
-GLEW_FUN_EXPORT PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC __glewGetRenderbufferParameterivEXT;
-GLEW_FUN_EXPORT PFNGLISFRAMEBUFFEREXTPROC __glewIsFramebufferEXT;
-GLEW_FUN_EXPORT PFNGLISRENDERBUFFEREXTPROC __glewIsRenderbufferEXT;
-GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEEXTPROC __glewRenderbufferStorageEXT;
-
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREEXTPROC __glewFramebufferTextureEXT;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC __glewFramebufferTextureFaceEXT;
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC __glewFramebufferTextureLayerEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERIEXTPROC __glewProgramParameteriEXT;
-
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERS4FVEXTPROC __glewProgramEnvParameters4fvEXT;
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC __glewProgramLocalParameters4fvEXT;
-
-GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONEXTPROC __glewBindFragDataLocationEXT;
-GLEW_FUN_EXPORT PFNGLGETFRAGDATALOCATIONEXTPROC __glewGetFragDataLocationEXT;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMUIVEXTPROC __glewGetUniformuivEXT;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIIVEXTPROC __glewGetVertexAttribIivEXT;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIUIVEXTPROC __glewGetVertexAttribIuivEXT;
-GLEW_FUN_EXPORT PFNGLUNIFORM1UIEXTPROC __glewUniform1uiEXT;
-GLEW_FUN_EXPORT PFNGLUNIFORM1UIVEXTPROC __glewUniform1uivEXT;
-GLEW_FUN_EXPORT PFNGLUNIFORM2UIEXTPROC __glewUniform2uiEXT;
-GLEW_FUN_EXPORT PFNGLUNIFORM2UIVEXTPROC __glewUniform2uivEXT;
-GLEW_FUN_EXPORT PFNGLUNIFORM3UIEXTPROC __glewUniform3uiEXT;
-GLEW_FUN_EXPORT PFNGLUNIFORM3UIVEXTPROC __glewUniform3uivEXT;
-GLEW_FUN_EXPORT PFNGLUNIFORM4UIEXTPROC __glewUniform4uiEXT;
-GLEW_FUN_EXPORT PFNGLUNIFORM4UIVEXTPROC __glewUniform4uivEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IEXTPROC __glewVertexAttribI1iEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IVEXTPROC __glewVertexAttribI1ivEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIEXTPROC __glewVertexAttribI1uiEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIVEXTPROC __glewVertexAttribI1uivEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IEXTPROC __glewVertexAttribI2iEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IVEXTPROC __glewVertexAttribI2ivEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIEXTPROC __glewVertexAttribI2uiEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIVEXTPROC __glewVertexAttribI2uivEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IEXTPROC __glewVertexAttribI3iEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IVEXTPROC __glewVertexAttribI3ivEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIEXTPROC __glewVertexAttribI3uiEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIVEXTPROC __glewVertexAttribI3uivEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4BVEXTPROC __glewVertexAttribI4bvEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IEXTPROC __glewVertexAttribI4iEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IVEXTPROC __glewVertexAttribI4ivEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4SVEXTPROC __glewVertexAttribI4svEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UBVEXTPROC __glewVertexAttribI4ubvEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIEXTPROC __glewVertexAttribI4uiEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIVEXTPROC __glewVertexAttribI4uivEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4USVEXTPROC __glewVertexAttribI4usvEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIPOINTEREXTPROC __glewVertexAttribIPointerEXT;
-
-GLEW_FUN_EXPORT PFNGLGETHISTOGRAMEXTPROC __glewGetHistogramEXT;
-GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERFVEXTPROC __glewGetHistogramParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERIVEXTPROC __glewGetHistogramParameterivEXT;
-GLEW_FUN_EXPORT PFNGLGETMINMAXEXTPROC __glewGetMinmaxEXT;
-GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERFVEXTPROC __glewGetMinmaxParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERIVEXTPROC __glewGetMinmaxParameterivEXT;
-GLEW_FUN_EXPORT PFNGLHISTOGRAMEXTPROC __glewHistogramEXT;
-GLEW_FUN_EXPORT PFNGLMINMAXEXTPROC __glewMinmaxEXT;
-GLEW_FUN_EXPORT PFNGLRESETHISTOGRAMEXTPROC __glewResetHistogramEXT;
-GLEW_FUN_EXPORT PFNGLRESETMINMAXEXTPROC __glewResetMinmaxEXT;
-
-GLEW_FUN_EXPORT PFNGLINDEXFUNCEXTPROC __glewIndexFuncEXT;
-
-GLEW_FUN_EXPORT PFNGLINDEXMATERIALEXTPROC __glewIndexMaterialEXT;
-
-GLEW_FUN_EXPORT PFNGLAPPLYTEXTUREEXTPROC __glewApplyTextureEXT;
-GLEW_FUN_EXPORT PFNGLTEXTURELIGHTEXTPROC __glewTextureLightEXT;
-GLEW_FUN_EXPORT PFNGLTEXTUREMATERIALEXTPROC __glewTextureMaterialEXT;
-
-GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSEXTPROC __glewMultiDrawArraysEXT;
-GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSEXTPROC __glewMultiDrawElementsEXT;
-
-GLEW_FUN_EXPORT PFNGLSAMPLEMASKEXTPROC __glewSampleMaskEXT;
-GLEW_FUN_EXPORT PFNGLSAMPLEPATTERNEXTPROC __glewSamplePatternEXT;
-
-GLEW_FUN_EXPORT PFNGLCOLORTABLEEXTPROC __glewColorTableEXT;
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEEXTPROC __glewGetColorTableEXT;
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERFVEXTPROC __glewGetColorTableParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERIVEXTPROC __glewGetColorTableParameterivEXT;
-
-GLEW_FUN_EXPORT PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC __glewGetPixelTransformParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC __glewGetPixelTransformParameterivEXT;
-GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERFEXTPROC __glewPixelTransformParameterfEXT;
-GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC __glewPixelTransformParameterfvEXT;
-GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERIEXTPROC __glewPixelTransformParameteriEXT;
-GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC __glewPixelTransformParameterivEXT;
-
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFEXTPROC __glewPointParameterfEXT;
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFVEXTPROC __glewPointParameterfvEXT;
-
-GLEW_FUN_EXPORT PFNGLPOLYGONOFFSETEXTPROC __glewPolygonOffsetEXT;
-
-GLEW_FUN_EXPORT PFNGLPROVOKINGVERTEXEXTPROC __glewProvokingVertexEXT;
-
-GLEW_FUN_EXPORT PFNGLBEGINSCENEEXTPROC __glewBeginSceneEXT;
-GLEW_FUN_EXPORT PFNGLENDSCENEEXTPROC __glewEndSceneEXT;
-
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BEXTPROC __glewSecondaryColor3bEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BVEXTPROC __glewSecondaryColor3bvEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DEXTPROC __glewSecondaryColor3dEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DVEXTPROC __glewSecondaryColor3dvEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FEXTPROC __glewSecondaryColor3fEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FVEXTPROC __glewSecondaryColor3fvEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IEXTPROC __glewSecondaryColor3iEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IVEXTPROC __glewSecondaryColor3ivEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SEXTPROC __glewSecondaryColor3sEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SVEXTPROC __glewSecondaryColor3svEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBEXTPROC __glewSecondaryColor3ubEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBVEXTPROC __glewSecondaryColor3ubvEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIEXTPROC __glewSecondaryColor3uiEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIVEXTPROC __glewSecondaryColor3uivEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USEXTPROC __glewSecondaryColor3usEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USVEXTPROC __glewSecondaryColor3usvEXT;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLORPOINTEREXTPROC __glewSecondaryColorPointerEXT;
-
-GLEW_FUN_EXPORT PFNGLACTIVEPROGRAMEXTPROC __glewActiveProgramEXT;
-GLEW_FUN_EXPORT PFNGLCREATESHADERPROGRAMEXTPROC __glewCreateShaderProgramEXT;
-GLEW_FUN_EXPORT PFNGLUSESHADERPROGRAMEXTPROC __glewUseShaderProgramEXT;
-
-GLEW_FUN_EXPORT PFNGLBINDIMAGETEXTUREEXTPROC __glewBindImageTextureEXT;
-GLEW_FUN_EXPORT PFNGLMEMORYBARRIEREXTPROC __glewMemoryBarrierEXT;
-
-GLEW_FUN_EXPORT PFNGLACTIVESTENCILFACEEXTPROC __glewActiveStencilFaceEXT;
-
-GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE1DEXTPROC __glewTexSubImage1DEXT;
-GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE2DEXTPROC __glewTexSubImage2DEXT;
-GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE3DEXTPROC __glewTexSubImage3DEXT;
-
-GLEW_FUN_EXPORT PFNGLTEXIMAGE3DEXTPROC __glewTexImage3DEXT;
-
-GLEW_FUN_EXPORT PFNGLTEXBUFFEREXTPROC __glewTexBufferEXT;
-
-GLEW_FUN_EXPORT PFNGLCLEARCOLORIIEXTPROC __glewClearColorIiEXT;
-GLEW_FUN_EXPORT PFNGLCLEARCOLORIUIEXTPROC __glewClearColorIuiEXT;
-GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIIVEXTPROC __glewGetTexParameterIivEXT;
-GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIUIVEXTPROC __glewGetTexParameterIuivEXT;
-GLEW_FUN_EXPORT PFNGLTEXPARAMETERIIVEXTPROC __glewTexParameterIivEXT;
-GLEW_FUN_EXPORT PFNGLTEXPARAMETERIUIVEXTPROC __glewTexParameterIuivEXT;
-
-GLEW_FUN_EXPORT PFNGLARETEXTURESRESIDENTEXTPROC __glewAreTexturesResidentEXT;
-GLEW_FUN_EXPORT PFNGLBINDTEXTUREEXTPROC __glewBindTextureEXT;
-GLEW_FUN_EXPORT PFNGLDELETETEXTURESEXTPROC __glewDeleteTexturesEXT;
-GLEW_FUN_EXPORT PFNGLGENTEXTURESEXTPROC __glewGenTexturesEXT;
-GLEW_FUN_EXPORT PFNGLISTEXTUREEXTPROC __glewIsTextureEXT;
-GLEW_FUN_EXPORT PFNGLPRIORITIZETEXTURESEXTPROC __glewPrioritizeTexturesEXT;
-
-GLEW_FUN_EXPORT PFNGLTEXTURENORMALEXTPROC __glewTextureNormalEXT;
-
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTI64VEXTPROC __glewGetQueryObjecti64vEXT;
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUI64VEXTPROC __glewGetQueryObjectui64vEXT;
-
-GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKEXTPROC __glewBeginTransformFeedbackEXT;
-GLEW_FUN_EXPORT PFNGLBINDBUFFERBASEEXTPROC __glewBindBufferBaseEXT;
-GLEW_FUN_EXPORT PFNGLBINDBUFFEROFFSETEXTPROC __glewBindBufferOffsetEXT;
-GLEW_FUN_EXPORT PFNGLBINDBUFFERRANGEEXTPROC __glewBindBufferRangeEXT;
-GLEW_FUN_EXPORT PFNGLENDTRANSFORMFEEDBACKEXTPROC __glewEndTransformFeedbackEXT;
-GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC __glewGetTransformFeedbackVaryingEXT;
-GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC __glewTransformFeedbackVaryingsEXT;
-
-GLEW_FUN_EXPORT PFNGLARRAYELEMENTEXTPROC __glewArrayElementEXT;
-GLEW_FUN_EXPORT PFNGLCOLORPOINTEREXTPROC __glewColorPointerEXT;
-GLEW_FUN_EXPORT PFNGLDRAWARRAYSEXTPROC __glewDrawArraysEXT;
-GLEW_FUN_EXPORT PFNGLEDGEFLAGPOINTEREXTPROC __glewEdgeFlagPointerEXT;
-GLEW_FUN_EXPORT PFNGLGETPOINTERVEXTPROC __glewGetPointervEXT;
-GLEW_FUN_EXPORT PFNGLINDEXPOINTEREXTPROC __glewIndexPointerEXT;
-GLEW_FUN_EXPORT PFNGLNORMALPOINTEREXTPROC __glewNormalPointerEXT;
-GLEW_FUN_EXPORT PFNGLTEXCOORDPOINTEREXTPROC __glewTexCoordPointerEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXPOINTEREXTPROC __glewVertexPointerEXT;
-
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLDVEXTPROC __glewGetVertexAttribLdvEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC __glewVertexArrayVertexAttribLOffsetEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DEXTPROC __glewVertexAttribL1dEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DVEXTPROC __glewVertexAttribL1dvEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DEXTPROC __glewVertexAttribL2dEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DVEXTPROC __glewVertexAttribL2dvEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DEXTPROC __glewVertexAttribL3dEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DVEXTPROC __glewVertexAttribL3dvEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DEXTPROC __glewVertexAttribL4dEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DVEXTPROC __glewVertexAttribL4dvEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLPOINTEREXTPROC __glewVertexAttribLPointerEXT;
-
-GLEW_FUN_EXPORT PFNGLBEGINVERTEXSHADEREXTPROC __glewBeginVertexShaderEXT;
-GLEW_FUN_EXPORT PFNGLBINDLIGHTPARAMETEREXTPROC __glewBindLightParameterEXT;
-GLEW_FUN_EXPORT PFNGLBINDMATERIALPARAMETEREXTPROC __glewBindMaterialParameterEXT;
-GLEW_FUN_EXPORT PFNGLBINDPARAMETEREXTPROC __glewBindParameterEXT;
-GLEW_FUN_EXPORT PFNGLBINDTEXGENPARAMETEREXTPROC __glewBindTexGenParameterEXT;
-GLEW_FUN_EXPORT PFNGLBINDTEXTUREUNITPARAMETEREXTPROC __glewBindTextureUnitParameterEXT;
-GLEW_FUN_EXPORT PFNGLBINDVERTEXSHADEREXTPROC __glewBindVertexShaderEXT;
-GLEW_FUN_EXPORT PFNGLDELETEVERTEXSHADEREXTPROC __glewDeleteVertexShaderEXT;
-GLEW_FUN_EXPORT PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC __glewDisableVariantClientStateEXT;
-GLEW_FUN_EXPORT PFNGLENABLEVARIANTCLIENTSTATEEXTPROC __glewEnableVariantClientStateEXT;
-GLEW_FUN_EXPORT PFNGLENDVERTEXSHADEREXTPROC __glewEndVertexShaderEXT;
-GLEW_FUN_EXPORT PFNGLEXTRACTCOMPONENTEXTPROC __glewExtractComponentEXT;
-GLEW_FUN_EXPORT PFNGLGENSYMBOLSEXTPROC __glewGenSymbolsEXT;
-GLEW_FUN_EXPORT PFNGLGENVERTEXSHADERSEXTPROC __glewGenVertexShadersEXT;
-GLEW_FUN_EXPORT PFNGLGETINVARIANTBOOLEANVEXTPROC __glewGetInvariantBooleanvEXT;
-GLEW_FUN_EXPORT PFNGLGETINVARIANTFLOATVEXTPROC __glewGetInvariantFloatvEXT;
-GLEW_FUN_EXPORT PFNGLGETINVARIANTINTEGERVEXTPROC __glewGetInvariantIntegervEXT;
-GLEW_FUN_EXPORT PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC __glewGetLocalConstantBooleanvEXT;
-GLEW_FUN_EXPORT PFNGLGETLOCALCONSTANTFLOATVEXTPROC __glewGetLocalConstantFloatvEXT;
-GLEW_FUN_EXPORT PFNGLGETLOCALCONSTANTINTEGERVEXTPROC __glewGetLocalConstantIntegervEXT;
-GLEW_FUN_EXPORT PFNGLGETVARIANTBOOLEANVEXTPROC __glewGetVariantBooleanvEXT;
-GLEW_FUN_EXPORT PFNGLGETVARIANTFLOATVEXTPROC __glewGetVariantFloatvEXT;
-GLEW_FUN_EXPORT PFNGLGETVARIANTINTEGERVEXTPROC __glewGetVariantIntegervEXT;
-GLEW_FUN_EXPORT PFNGLGETVARIANTPOINTERVEXTPROC __glewGetVariantPointervEXT;
-GLEW_FUN_EXPORT PFNGLINSERTCOMPONENTEXTPROC __glewInsertComponentEXT;
-GLEW_FUN_EXPORT PFNGLISVARIANTENABLEDEXTPROC __glewIsVariantEnabledEXT;
-GLEW_FUN_EXPORT PFNGLSETINVARIANTEXTPROC __glewSetInvariantEXT;
-GLEW_FUN_EXPORT PFNGLSETLOCALCONSTANTEXTPROC __glewSetLocalConstantEXT;
-GLEW_FUN_EXPORT PFNGLSHADEROP1EXTPROC __glewShaderOp1EXT;
-GLEW_FUN_EXPORT PFNGLSHADEROP2EXTPROC __glewShaderOp2EXT;
-GLEW_FUN_EXPORT PFNGLSHADEROP3EXTPROC __glewShaderOp3EXT;
-GLEW_FUN_EXPORT PFNGLSWIZZLEEXTPROC __glewSwizzleEXT;
-GLEW_FUN_EXPORT PFNGLVARIANTPOINTEREXTPROC __glewVariantPointerEXT;
-GLEW_FUN_EXPORT PFNGLVARIANTBVEXTPROC __glewVariantbvEXT;
-GLEW_FUN_EXPORT PFNGLVARIANTDVEXTPROC __glewVariantdvEXT;
-GLEW_FUN_EXPORT PFNGLVARIANTFVEXTPROC __glewVariantfvEXT;
-GLEW_FUN_EXPORT PFNGLVARIANTIVEXTPROC __glewVariantivEXT;
-GLEW_FUN_EXPORT PFNGLVARIANTSVEXTPROC __glewVariantsvEXT;
-GLEW_FUN_EXPORT PFNGLVARIANTUBVEXTPROC __glewVariantubvEXT;
-GLEW_FUN_EXPORT PFNGLVARIANTUIVEXTPROC __glewVariantuivEXT;
-GLEW_FUN_EXPORT PFNGLVARIANTUSVEXTPROC __glewVariantusvEXT;
-GLEW_FUN_EXPORT PFNGLWRITEMASKEXTPROC __glewWriteMaskEXT;
-
-GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTPOINTEREXTPROC __glewVertexWeightPointerEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTFEXTPROC __glewVertexWeightfEXT;
-GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTFVEXTPROC __glewVertexWeightfvEXT;
-
-GLEW_FUN_EXPORT PFNGLFRAMETERMINATORGREMEDYPROC __glewFrameTerminatorGREMEDY;
-
-GLEW_FUN_EXPORT PFNGLSTRINGMARKERGREMEDYPROC __glewStringMarkerGREMEDY;
-
-GLEW_FUN_EXPORT PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC __glewGetImageTransformParameterfvHP;
-GLEW_FUN_EXPORT PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC __glewGetImageTransformParameterivHP;
-GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERFHPPROC __glewImageTransformParameterfHP;
-GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERFVHPPROC __glewImageTransformParameterfvHP;
-GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERIHPPROC __glewImageTransformParameteriHP;
-GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERIVHPPROC __glewImageTransformParameterivHP;
-
-GLEW_FUN_EXPORT PFNGLMULTIMODEDRAWARRAYSIBMPROC __glewMultiModeDrawArraysIBM;
-GLEW_FUN_EXPORT PFNGLMULTIMODEDRAWELEMENTSIBMPROC __glewMultiModeDrawElementsIBM;
-
-GLEW_FUN_EXPORT PFNGLCOLORPOINTERLISTIBMPROC __glewColorPointerListIBM;
-GLEW_FUN_EXPORT PFNGLEDGEFLAGPOINTERLISTIBMPROC __glewEdgeFlagPointerListIBM;
-GLEW_FUN_EXPORT PFNGLFOGCOORDPOINTERLISTIBMPROC __glewFogCoordPointerListIBM;
-GLEW_FUN_EXPORT PFNGLINDEXPOINTERLISTIBMPROC __glewIndexPointerListIBM;
-GLEW_FUN_EXPORT PFNGLNORMALPOINTERLISTIBMPROC __glewNormalPointerListIBM;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLORPOINTERLISTIBMPROC __glewSecondaryColorPointerListIBM;
-GLEW_FUN_EXPORT PFNGLTEXCOORDPOINTERLISTIBMPROC __glewTexCoordPointerListIBM;
-GLEW_FUN_EXPORT PFNGLVERTEXPOINTERLISTIBMPROC __glewVertexPointerListIBM;
-
-GLEW_FUN_EXPORT PFNGLCOLORPOINTERVINTELPROC __glewColorPointervINTEL;
-GLEW_FUN_EXPORT PFNGLNORMALPOINTERVINTELPROC __glewNormalPointervINTEL;
-GLEW_FUN_EXPORT PFNGLTEXCOORDPOINTERVINTELPROC __glewTexCoordPointervINTEL;
-GLEW_FUN_EXPORT PFNGLVERTEXPOINTERVINTELPROC __glewVertexPointervINTEL;
-
-GLEW_FUN_EXPORT PFNGLTEXSCISSORFUNCINTELPROC __glewTexScissorFuncINTEL;
-GLEW_FUN_EXPORT PFNGLTEXSCISSORINTELPROC __glewTexScissorINTEL;
-
-GLEW_FUN_EXPORT PFNGLBUFFERREGIONENABLEDEXTPROC __glewBufferRegionEnabledEXT;
-GLEW_FUN_EXPORT PFNGLDELETEBUFFERREGIONEXTPROC __glewDeleteBufferRegionEXT;
-GLEW_FUN_EXPORT PFNGLDRAWBUFFERREGIONEXTPROC __glewDrawBufferRegionEXT;
-GLEW_FUN_EXPORT PFNGLNEWBUFFERREGIONEXTPROC __glewNewBufferRegionEXT;
-GLEW_FUN_EXPORT PFNGLREADBUFFERREGIONEXTPROC __glewReadBufferRegionEXT;
-
-GLEW_FUN_EXPORT PFNGLRESIZEBUFFERSMESAPROC __glewResizeBuffersMESA;
-
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2DMESAPROC __glewWindowPos2dMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2DVMESAPROC __glewWindowPos2dvMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2FMESAPROC __glewWindowPos2fMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2FVMESAPROC __glewWindowPos2fvMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2IMESAPROC __glewWindowPos2iMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2IVMESAPROC __glewWindowPos2ivMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2SMESAPROC __glewWindowPos2sMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2SVMESAPROC __glewWindowPos2svMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3DMESAPROC __glewWindowPos3dMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3DVMESAPROC __glewWindowPos3dvMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3FMESAPROC __glewWindowPos3fMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3FVMESAPROC __glewWindowPos3fvMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3IMESAPROC __glewWindowPos3iMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3IVMESAPROC __glewWindowPos3ivMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3SMESAPROC __glewWindowPos3sMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3SVMESAPROC __glewWindowPos3svMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4DMESAPROC __glewWindowPos4dMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4DVMESAPROC __glewWindowPos4dvMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4FMESAPROC __glewWindowPos4fMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4FVMESAPROC __glewWindowPos4fvMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4IMESAPROC __glewWindowPos4iMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4IVMESAPROC __glewWindowPos4ivMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4SMESAPROC __glewWindowPos4sMESA;
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4SVMESAPROC __glewWindowPos4svMESA;
-
-GLEW_FUN_EXPORT PFNGLBEGINCONDITIONALRENDERNVPROC __glewBeginConditionalRenderNV;
-GLEW_FUN_EXPORT PFNGLENDCONDITIONALRENDERNVPROC __glewEndConditionalRenderNV;
-
-GLEW_FUN_EXPORT PFNGLCOPYIMAGESUBDATANVPROC __glewCopyImageSubDataNV;
-
-GLEW_FUN_EXPORT PFNGLCLEARDEPTHDNVPROC __glewClearDepthdNV;
-GLEW_FUN_EXPORT PFNGLDEPTHBOUNDSDNVPROC __glewDepthBoundsdNV;
-GLEW_FUN_EXPORT PFNGLDEPTHRANGEDNVPROC __glewDepthRangedNV;
-
-GLEW_FUN_EXPORT PFNGLEVALMAPSNVPROC __glewEvalMapsNV;
-GLEW_FUN_EXPORT PFNGLGETMAPATTRIBPARAMETERFVNVPROC __glewGetMapAttribParameterfvNV;
-GLEW_FUN_EXPORT PFNGLGETMAPATTRIBPARAMETERIVNVPROC __glewGetMapAttribParameterivNV;
-GLEW_FUN_EXPORT PFNGLGETMAPCONTROLPOINTSNVPROC __glewGetMapControlPointsNV;
-GLEW_FUN_EXPORT PFNGLGETMAPPARAMETERFVNVPROC __glewGetMapParameterfvNV;
-GLEW_FUN_EXPORT PFNGLGETMAPPARAMETERIVNVPROC __glewGetMapParameterivNV;
-GLEW_FUN_EXPORT PFNGLMAPCONTROLPOINTSNVPROC __glewMapControlPointsNV;
-GLEW_FUN_EXPORT PFNGLMAPPARAMETERFVNVPROC __glewMapParameterfvNV;
-GLEW_FUN_EXPORT PFNGLMAPPARAMETERIVNVPROC __glewMapParameterivNV;
-
-GLEW_FUN_EXPORT PFNGLGETMULTISAMPLEFVNVPROC __glewGetMultisamplefvNV;
-GLEW_FUN_EXPORT PFNGLSAMPLEMASKINDEXEDNVPROC __glewSampleMaskIndexedNV;
-GLEW_FUN_EXPORT PFNGLTEXRENDERBUFFERNVPROC __glewTexRenderbufferNV;
-
-GLEW_FUN_EXPORT PFNGLDELETEFENCESNVPROC __glewDeleteFencesNV;
-GLEW_FUN_EXPORT PFNGLFINISHFENCENVPROC __glewFinishFenceNV;
-GLEW_FUN_EXPORT PFNGLGENFENCESNVPROC __glewGenFencesNV;
-GLEW_FUN_EXPORT PFNGLGETFENCEIVNVPROC __glewGetFenceivNV;
-GLEW_FUN_EXPORT PFNGLISFENCENVPROC __glewIsFenceNV;
-GLEW_FUN_EXPORT PFNGLSETFENCENVPROC __glewSetFenceNV;
-GLEW_FUN_EXPORT PFNGLTESTFENCENVPROC __glewTestFenceNV;
-
-GLEW_FUN_EXPORT PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC __glewGetProgramNamedParameterdvNV;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC __glewGetProgramNamedParameterfvNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4DNVPROC __glewProgramNamedParameter4dNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC __glewProgramNamedParameter4dvNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4FNVPROC __glewProgramNamedParameter4fNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC __glewProgramNamedParameter4fvNV;
-
-GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC __glewRenderbufferStorageMultisampleCoverageNV;
-
-GLEW_FUN_EXPORT PFNGLPROGRAMVERTEXLIMITNVPROC __glewProgramVertexLimitNV;
-
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4INVPROC __glewProgramEnvParameterI4iNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4IVNVPROC __glewProgramEnvParameterI4ivNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4UINVPROC __glewProgramEnvParameterI4uiNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4UIVNVPROC __glewProgramEnvParameterI4uivNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERSI4IVNVPROC __glewProgramEnvParametersI4ivNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC __glewProgramEnvParametersI4uivNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4INVPROC __glewProgramLocalParameterI4iNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC __glewProgramLocalParameterI4ivNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4UINVPROC __glewProgramLocalParameterI4uiNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC __glewProgramLocalParameterI4uivNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC __glewProgramLocalParametersI4ivNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC __glewProgramLocalParametersI4uivNV;
-
-GLEW_FUN_EXPORT PFNGLGETUNIFORMI64VNVPROC __glewGetUniformi64vNV;
-GLEW_FUN_EXPORT PFNGLGETUNIFORMUI64VNVPROC __glewGetUniformui64vNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1I64NVPROC __glewProgramUniform1i64NV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1I64VNVPROC __glewProgramUniform1i64vNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UI64NVPROC __glewProgramUniform1ui64NV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UI64VNVPROC __glewProgramUniform1ui64vNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2I64NVPROC __glewProgramUniform2i64NV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2I64VNVPROC __glewProgramUniform2i64vNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UI64NVPROC __glewProgramUniform2ui64NV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UI64VNVPROC __glewProgramUniform2ui64vNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3I64NVPROC __glewProgramUniform3i64NV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3I64VNVPROC __glewProgramUniform3i64vNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UI64NVPROC __glewProgramUniform3ui64NV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UI64VNVPROC __glewProgramUniform3ui64vNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4I64NVPROC __glewProgramUniform4i64NV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4I64VNVPROC __glewProgramUniform4i64vNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UI64NVPROC __glewProgramUniform4ui64NV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UI64VNVPROC __glewProgramUniform4ui64vNV;
-GLEW_FUN_EXPORT PFNGLUNIFORM1I64NVPROC __glewUniform1i64NV;
-GLEW_FUN_EXPORT PFNGLUNIFORM1I64VNVPROC __glewUniform1i64vNV;
-GLEW_FUN_EXPORT PFNGLUNIFORM1UI64NVPROC __glewUniform1ui64NV;
-GLEW_FUN_EXPORT PFNGLUNIFORM1UI64VNVPROC __glewUniform1ui64vNV;
-GLEW_FUN_EXPORT PFNGLUNIFORM2I64NVPROC __glewUniform2i64NV;
-GLEW_FUN_EXPORT PFNGLUNIFORM2I64VNVPROC __glewUniform2i64vNV;
-GLEW_FUN_EXPORT PFNGLUNIFORM2UI64NVPROC __glewUniform2ui64NV;
-GLEW_FUN_EXPORT PFNGLUNIFORM2UI64VNVPROC __glewUniform2ui64vNV;
-GLEW_FUN_EXPORT PFNGLUNIFORM3I64NVPROC __glewUniform3i64NV;
-GLEW_FUN_EXPORT PFNGLUNIFORM3I64VNVPROC __glewUniform3i64vNV;
-GLEW_FUN_EXPORT PFNGLUNIFORM3UI64NVPROC __glewUniform3ui64NV;
-GLEW_FUN_EXPORT PFNGLUNIFORM3UI64VNVPROC __glewUniform3ui64vNV;
-GLEW_FUN_EXPORT PFNGLUNIFORM4I64NVPROC __glewUniform4i64NV;
-GLEW_FUN_EXPORT PFNGLUNIFORM4I64VNVPROC __glewUniform4i64vNV;
-GLEW_FUN_EXPORT PFNGLUNIFORM4UI64NVPROC __glewUniform4ui64NV;
-GLEW_FUN_EXPORT PFNGLUNIFORM4UI64VNVPROC __glewUniform4ui64vNV;
-
-GLEW_FUN_EXPORT PFNGLCOLOR3HNVPROC __glewColor3hNV;
-GLEW_FUN_EXPORT PFNGLCOLOR3HVNVPROC __glewColor3hvNV;
-GLEW_FUN_EXPORT PFNGLCOLOR4HNVPROC __glewColor4hNV;
-GLEW_FUN_EXPORT PFNGLCOLOR4HVNVPROC __glewColor4hvNV;
-GLEW_FUN_EXPORT PFNGLFOGCOORDHNVPROC __glewFogCoordhNV;
-GLEW_FUN_EXPORT PFNGLFOGCOORDHVNVPROC __glewFogCoordhvNV;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1HNVPROC __glewMultiTexCoord1hNV;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1HVNVPROC __glewMultiTexCoord1hvNV;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2HNVPROC __glewMultiTexCoord2hNV;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2HVNVPROC __glewMultiTexCoord2hvNV;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3HNVPROC __glewMultiTexCoord3hNV;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3HVNVPROC __glewMultiTexCoord3hvNV;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4HNVPROC __glewMultiTexCoord4hNV;
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4HVNVPROC __glewMultiTexCoord4hvNV;
-GLEW_FUN_EXPORT PFNGLNORMAL3HNVPROC __glewNormal3hNV;
-GLEW_FUN_EXPORT PFNGLNORMAL3HVNVPROC __glewNormal3hvNV;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3HNVPROC __glewSecondaryColor3hNV;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3HVNVPROC __glewSecondaryColor3hvNV;
-GLEW_FUN_EXPORT PFNGLTEXCOORD1HNVPROC __glewTexCoord1hNV;
-GLEW_FUN_EXPORT PFNGLTEXCOORD1HVNVPROC __glewTexCoord1hvNV;
-GLEW_FUN_EXPORT PFNGLTEXCOORD2HNVPROC __glewTexCoord2hNV;
-GLEW_FUN_EXPORT PFNGLTEXCOORD2HVNVPROC __glewTexCoord2hvNV;
-GLEW_FUN_EXPORT PFNGLTEXCOORD3HNVPROC __glewTexCoord3hNV;
-GLEW_FUN_EXPORT PFNGLTEXCOORD3HVNVPROC __glewTexCoord3hvNV;
-GLEW_FUN_EXPORT PFNGLTEXCOORD4HNVPROC __glewTexCoord4hNV;
-GLEW_FUN_EXPORT PFNGLTEXCOORD4HVNVPROC __glewTexCoord4hvNV;
-GLEW_FUN_EXPORT PFNGLVERTEX2HNVPROC __glewVertex2hNV;
-GLEW_FUN_EXPORT PFNGLVERTEX2HVNVPROC __glewVertex2hvNV;
-GLEW_FUN_EXPORT PFNGLVERTEX3HNVPROC __glewVertex3hNV;
-GLEW_FUN_EXPORT PFNGLVERTEX3HVNVPROC __glewVertex3hvNV;
-GLEW_FUN_EXPORT PFNGLVERTEX4HNVPROC __glewVertex4hNV;
-GLEW_FUN_EXPORT PFNGLVERTEX4HVNVPROC __glewVertex4hvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1HNVPROC __glewVertexAttrib1hNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1HVNVPROC __glewVertexAttrib1hvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2HNVPROC __glewVertexAttrib2hNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2HVNVPROC __glewVertexAttrib2hvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3HNVPROC __glewVertexAttrib3hNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3HVNVPROC __glewVertexAttrib3hvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4HNVPROC __glewVertexAttrib4hNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4HVNVPROC __glewVertexAttrib4hvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1HVNVPROC __glewVertexAttribs1hvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2HVNVPROC __glewVertexAttribs2hvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3HVNVPROC __glewVertexAttribs3hvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4HVNVPROC __glewVertexAttribs4hvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTHNVPROC __glewVertexWeighthNV;
-GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTHVNVPROC __glewVertexWeighthvNV;
-
-GLEW_FUN_EXPORT PFNGLBEGINOCCLUSIONQUERYNVPROC __glewBeginOcclusionQueryNV;
-GLEW_FUN_EXPORT PFNGLDELETEOCCLUSIONQUERIESNVPROC __glewDeleteOcclusionQueriesNV;
-GLEW_FUN_EXPORT PFNGLENDOCCLUSIONQUERYNVPROC __glewEndOcclusionQueryNV;
-GLEW_FUN_EXPORT PFNGLGENOCCLUSIONQUERIESNVPROC __glewGenOcclusionQueriesNV;
-GLEW_FUN_EXPORT PFNGLGETOCCLUSIONQUERYIVNVPROC __glewGetOcclusionQueryivNV;
-GLEW_FUN_EXPORT PFNGLGETOCCLUSIONQUERYUIVNVPROC __glewGetOcclusionQueryuivNV;
-GLEW_FUN_EXPORT PFNGLISOCCLUSIONQUERYNVPROC __glewIsOcclusionQueryNV;
-
-GLEW_FUN_EXPORT PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC __glewProgramBufferParametersIivNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC __glewProgramBufferParametersIuivNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC __glewProgramBufferParametersfvNV;
-
-GLEW_FUN_EXPORT PFNGLFLUSHPIXELDATARANGENVPROC __glewFlushPixelDataRangeNV;
-GLEW_FUN_EXPORT PFNGLPIXELDATARANGENVPROC __glewPixelDataRangeNV;
-
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERINVPROC __glewPointParameteriNV;
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERIVNVPROC __glewPointParameterivNV;
-
-GLEW_FUN_EXPORT PFNGLGETVIDEOI64VNVPROC __glewGetVideoi64vNV;
-GLEW_FUN_EXPORT PFNGLGETVIDEOIVNVPROC __glewGetVideoivNV;
-GLEW_FUN_EXPORT PFNGLGETVIDEOUI64VNVPROC __glewGetVideoui64vNV;
-GLEW_FUN_EXPORT PFNGLGETVIDEOUIVNVPROC __glewGetVideouivNV;
-GLEW_FUN_EXPORT PFNGLPRESENTFRAMEDUALFILLNVPROC __glewPresentFrameDualFillNV;
-GLEW_FUN_EXPORT PFNGLPRESENTFRAMEKEYEDNVPROC __glewPresentFrameKeyedNV;
-
-GLEW_FUN_EXPORT PFNGLPRIMITIVERESTARTINDEXNVPROC __glewPrimitiveRestartIndexNV;
-GLEW_FUN_EXPORT PFNGLPRIMITIVERESTARTNVPROC __glewPrimitiveRestartNV;
-
-GLEW_FUN_EXPORT PFNGLCOMBINERINPUTNVPROC __glewCombinerInputNV;
-GLEW_FUN_EXPORT PFNGLCOMBINEROUTPUTNVPROC __glewCombinerOutputNV;
-GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERFNVPROC __glewCombinerParameterfNV;
-GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERFVNVPROC __glewCombinerParameterfvNV;
-GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERINVPROC __glewCombinerParameteriNV;
-GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERIVNVPROC __glewCombinerParameterivNV;
-GLEW_FUN_EXPORT PFNGLFINALCOMBINERINPUTNVPROC __glewFinalCombinerInputNV;
-GLEW_FUN_EXPORT PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC __glewGetCombinerInputParameterfvNV;
-GLEW_FUN_EXPORT PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC __glewGetCombinerInputParameterivNV;
-GLEW_FUN_EXPORT PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC __glewGetCombinerOutputParameterfvNV;
-GLEW_FUN_EXPORT PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC __glewGetCombinerOutputParameterivNV;
-GLEW_FUN_EXPORT PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC __glewGetFinalCombinerInputParameterfvNV;
-GLEW_FUN_EXPORT PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC __glewGetFinalCombinerInputParameterivNV;
-
-GLEW_FUN_EXPORT PFNGLCOMBINERSTAGEPARAMETERFVNVPROC __glewCombinerStageParameterfvNV;
-GLEW_FUN_EXPORT PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC __glewGetCombinerStageParameterfvNV;
-
-GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERUI64VNVPROC __glewGetBufferParameterui64vNV;
-GLEW_FUN_EXPORT PFNGLGETINTEGERUI64VNVPROC __glewGetIntegerui64vNV;
-GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC __glewGetNamedBufferParameterui64vNV;
-GLEW_FUN_EXPORT PFNGLISBUFFERRESIDENTNVPROC __glewIsBufferResidentNV;
-GLEW_FUN_EXPORT PFNGLISNAMEDBUFFERRESIDENTNVPROC __glewIsNamedBufferResidentNV;
-GLEW_FUN_EXPORT PFNGLMAKEBUFFERNONRESIDENTNVPROC __glewMakeBufferNonResidentNV;
-GLEW_FUN_EXPORT PFNGLMAKEBUFFERRESIDENTNVPROC __glewMakeBufferResidentNV;
-GLEW_FUN_EXPORT PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC __glewMakeNamedBufferNonResidentNV;
-GLEW_FUN_EXPORT PFNGLMAKENAMEDBUFFERRESIDENTNVPROC __glewMakeNamedBufferResidentNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMUI64NVPROC __glewProgramUniformui64NV;
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMUI64VNVPROC __glewProgramUniformui64vNV;
-GLEW_FUN_EXPORT PFNGLUNIFORMUI64NVPROC __glewUniformui64NV;
-GLEW_FUN_EXPORT PFNGLUNIFORMUI64VNVPROC __glewUniformui64vNV;
-
-GLEW_FUN_EXPORT PFNGLTEXTUREBARRIERNVPROC __glewTextureBarrierNV;
-
-GLEW_FUN_EXPORT PFNGLACTIVEVARYINGNVPROC __glewActiveVaryingNV;
-GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKNVPROC __glewBeginTransformFeedbackNV;
-GLEW_FUN_EXPORT PFNGLBINDBUFFERBASENVPROC __glewBindBufferBaseNV;
-GLEW_FUN_EXPORT PFNGLBINDBUFFEROFFSETNVPROC __glewBindBufferOffsetNV;
-GLEW_FUN_EXPORT PFNGLBINDBUFFERRANGENVPROC __glewBindBufferRangeNV;
-GLEW_FUN_EXPORT PFNGLENDTRANSFORMFEEDBACKNVPROC __glewEndTransformFeedbackNV;
-GLEW_FUN_EXPORT PFNGLGETACTIVEVARYINGNVPROC __glewGetActiveVaryingNV;
-GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC __glewGetTransformFeedbackVaryingNV;
-GLEW_FUN_EXPORT PFNGLGETVARYINGLOCATIONNVPROC __glewGetVaryingLocationNV;
-GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC __glewTransformFeedbackAttribsNV;
-GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC __glewTransformFeedbackVaryingsNV;
-
-GLEW_FUN_EXPORT PFNGLBINDTRANSFORMFEEDBACKNVPROC __glewBindTransformFeedbackNV;
-GLEW_FUN_EXPORT PFNGLDELETETRANSFORMFEEDBACKSNVPROC __glewDeleteTransformFeedbacksNV;
-GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKNVPROC __glewDrawTransformFeedbackNV;
-GLEW_FUN_EXPORT PFNGLGENTRANSFORMFEEDBACKSNVPROC __glewGenTransformFeedbacksNV;
-GLEW_FUN_EXPORT PFNGLISTRANSFORMFEEDBACKNVPROC __glewIsTransformFeedbackNV;
-GLEW_FUN_EXPORT PFNGLPAUSETRANSFORMFEEDBACKNVPROC __glewPauseTransformFeedbackNV;
-GLEW_FUN_EXPORT PFNGLRESUMETRANSFORMFEEDBACKNVPROC __glewResumeTransformFeedbackNV;
-
-GLEW_FUN_EXPORT PFNGLFLUSHVERTEXARRAYRANGENVPROC __glewFlushVertexArrayRangeNV;
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYRANGENVPROC __glewVertexArrayRangeNV;
-
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLI64VNVPROC __glewGetVertexAttribLi64vNV;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLUI64VNVPROC __glewGetVertexAttribLui64vNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1I64NVPROC __glewVertexAttribL1i64NV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1I64VNVPROC __glewVertexAttribL1i64vNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1UI64NVPROC __glewVertexAttribL1ui64NV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1UI64VNVPROC __glewVertexAttribL1ui64vNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2I64NVPROC __glewVertexAttribL2i64NV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2I64VNVPROC __glewVertexAttribL2i64vNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2UI64NVPROC __glewVertexAttribL2ui64NV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2UI64VNVPROC __glewVertexAttribL2ui64vNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3I64NVPROC __glewVertexAttribL3i64NV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3I64VNVPROC __glewVertexAttribL3i64vNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3UI64NVPROC __glewVertexAttribL3ui64NV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3UI64VNVPROC __glewVertexAttribL3ui64vNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4I64NVPROC __glewVertexAttribL4i64NV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4I64VNVPROC __glewVertexAttribL4i64vNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4UI64NVPROC __glewVertexAttribL4ui64NV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4UI64VNVPROC __glewVertexAttribL4ui64vNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLFORMATNVPROC __glewVertexAttribLFormatNV;
-
-GLEW_FUN_EXPORT PFNGLBUFFERADDRESSRANGENVPROC __glewBufferAddressRangeNV;
-GLEW_FUN_EXPORT PFNGLCOLORFORMATNVPROC __glewColorFormatNV;
-GLEW_FUN_EXPORT PFNGLEDGEFLAGFORMATNVPROC __glewEdgeFlagFormatNV;
-GLEW_FUN_EXPORT PFNGLFOGCOORDFORMATNVPROC __glewFogCoordFormatNV;
-GLEW_FUN_EXPORT PFNGLGETINTEGERUI64I_VNVPROC __glewGetIntegerui64i_vNV;
-GLEW_FUN_EXPORT PFNGLINDEXFORMATNVPROC __glewIndexFormatNV;
-GLEW_FUN_EXPORT PFNGLNORMALFORMATNVPROC __glewNormalFormatNV;
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLORFORMATNVPROC __glewSecondaryColorFormatNV;
-GLEW_FUN_EXPORT PFNGLTEXCOORDFORMATNVPROC __glewTexCoordFormatNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBFORMATNVPROC __glewVertexAttribFormatNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIFORMATNVPROC __glewVertexAttribIFormatNV;
-GLEW_FUN_EXPORT PFNGLVERTEXFORMATNVPROC __glewVertexFormatNV;
-
-GLEW_FUN_EXPORT PFNGLAREPROGRAMSRESIDENTNVPROC __glewAreProgramsResidentNV;
-GLEW_FUN_EXPORT PFNGLBINDPROGRAMNVPROC __glewBindProgramNV;
-GLEW_FUN_EXPORT PFNGLDELETEPROGRAMSNVPROC __glewDeleteProgramsNV;
-GLEW_FUN_EXPORT PFNGLEXECUTEPROGRAMNVPROC __glewExecuteProgramNV;
-GLEW_FUN_EXPORT PFNGLGENPROGRAMSNVPROC __glewGenProgramsNV;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMPARAMETERDVNVPROC __glewGetProgramParameterdvNV;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMPARAMETERFVNVPROC __glewGetProgramParameterfvNV;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMSTRINGNVPROC __glewGetProgramStringNV;
-GLEW_FUN_EXPORT PFNGLGETPROGRAMIVNVPROC __glewGetProgramivNV;
-GLEW_FUN_EXPORT PFNGLGETTRACKMATRIXIVNVPROC __glewGetTrackMatrixivNV;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBPOINTERVNVPROC __glewGetVertexAttribPointervNV;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBDVNVPROC __glewGetVertexAttribdvNV;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBFVNVPROC __glewGetVertexAttribfvNV;
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIVNVPROC __glewGetVertexAttribivNV;
-GLEW_FUN_EXPORT PFNGLISPROGRAMNVPROC __glewIsProgramNV;
-GLEW_FUN_EXPORT PFNGLLOADPROGRAMNVPROC __glewLoadProgramNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4DNVPROC __glewProgramParameter4dNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4DVNVPROC __glewProgramParameter4dvNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4FNVPROC __glewProgramParameter4fNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4FVNVPROC __glewProgramParameter4fvNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERS4DVNVPROC __glewProgramParameters4dvNV;
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERS4FVNVPROC __glewProgramParameters4fvNV;
-GLEW_FUN_EXPORT PFNGLREQUESTRESIDENTPROGRAMSNVPROC __glewRequestResidentProgramsNV;
-GLEW_FUN_EXPORT PFNGLTRACKMATRIXNVPROC __glewTrackMatrixNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DNVPROC __glewVertexAttrib1dNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DVNVPROC __glewVertexAttrib1dvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FNVPROC __glewVertexAttrib1fNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FVNVPROC __glewVertexAttrib1fvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SNVPROC __glewVertexAttrib1sNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SVNVPROC __glewVertexAttrib1svNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DNVPROC __glewVertexAttrib2dNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DVNVPROC __glewVertexAttrib2dvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FNVPROC __glewVertexAttrib2fNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FVNVPROC __glewVertexAttrib2fvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SNVPROC __glewVertexAttrib2sNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SVNVPROC __glewVertexAttrib2svNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DNVPROC __glewVertexAttrib3dNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DVNVPROC __glewVertexAttrib3dvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FNVPROC __glewVertexAttrib3fNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FVNVPROC __glewVertexAttrib3fvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SNVPROC __glewVertexAttrib3sNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SVNVPROC __glewVertexAttrib3svNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DNVPROC __glewVertexAttrib4dNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DVNVPROC __glewVertexAttrib4dvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FNVPROC __glewVertexAttrib4fNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FVNVPROC __glewVertexAttrib4fvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SNVPROC __glewVertexAttrib4sNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SVNVPROC __glewVertexAttrib4svNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBNVPROC __glewVertexAttrib4ubNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBVNVPROC __glewVertexAttrib4ubvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPOINTERNVPROC __glewVertexAttribPointerNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1DVNVPROC __glewVertexAttribs1dvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1FVNVPROC __glewVertexAttribs1fvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1SVNVPROC __glewVertexAttribs1svNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2DVNVPROC __glewVertexAttribs2dvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2FVNVPROC __glewVertexAttribs2fvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2SVNVPROC __glewVertexAttribs2svNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3DVNVPROC __glewVertexAttribs3dvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3FVNVPROC __glewVertexAttribs3fvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3SVNVPROC __glewVertexAttribs3svNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4DVNVPROC __glewVertexAttribs4dvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4FVNVPROC __glewVertexAttribs4fvNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4SVNVPROC __glewVertexAttribs4svNV;
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4UBVNVPROC __glewVertexAttribs4ubvNV;
-
-GLEW_FUN_EXPORT PFNGLCLEARDEPTHFOESPROC __glewClearDepthfOES;
-GLEW_FUN_EXPORT PFNGLCLIPPLANEFOESPROC __glewClipPlanefOES;
-GLEW_FUN_EXPORT PFNGLDEPTHRANGEFOESPROC __glewDepthRangefOES;
-GLEW_FUN_EXPORT PFNGLFRUSTUMFOESPROC __glewFrustumfOES;
-GLEW_FUN_EXPORT PFNGLGETCLIPPLANEFOESPROC __glewGetClipPlanefOES;
-GLEW_FUN_EXPORT PFNGLORTHOFOESPROC __glewOrthofOES;
-
-GLEW_FUN_EXPORT PFNGLDETAILTEXFUNCSGISPROC __glewDetailTexFuncSGIS;
-GLEW_FUN_EXPORT PFNGLGETDETAILTEXFUNCSGISPROC __glewGetDetailTexFuncSGIS;
-
-GLEW_FUN_EXPORT PFNGLFOGFUNCSGISPROC __glewFogFuncSGIS;
-GLEW_FUN_EXPORT PFNGLGETFOGFUNCSGISPROC __glewGetFogFuncSGIS;
-
-GLEW_FUN_EXPORT PFNGLSAMPLEMASKSGISPROC __glewSampleMaskSGIS;
-GLEW_FUN_EXPORT PFNGLSAMPLEPATTERNSGISPROC __glewSamplePatternSGIS;
-
-GLEW_FUN_EXPORT PFNGLGETSHARPENTEXFUNCSGISPROC __glewGetSharpenTexFuncSGIS;
-GLEW_FUN_EXPORT PFNGLSHARPENTEXFUNCSGISPROC __glewSharpenTexFuncSGIS;
-
-GLEW_FUN_EXPORT PFNGLTEXIMAGE4DSGISPROC __glewTexImage4DSGIS;
-GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE4DSGISPROC __glewTexSubImage4DSGIS;
-
-GLEW_FUN_EXPORT PFNGLGETTEXFILTERFUNCSGISPROC __glewGetTexFilterFuncSGIS;
-GLEW_FUN_EXPORT PFNGLTEXFILTERFUNCSGISPROC __glewTexFilterFuncSGIS;
-
-GLEW_FUN_EXPORT PFNGLASYNCMARKERSGIXPROC __glewAsyncMarkerSGIX;
-GLEW_FUN_EXPORT PFNGLDELETEASYNCMARKERSSGIXPROC __glewDeleteAsyncMarkersSGIX;
-GLEW_FUN_EXPORT PFNGLFINISHASYNCSGIXPROC __glewFinishAsyncSGIX;
-GLEW_FUN_EXPORT PFNGLGENASYNCMARKERSSGIXPROC __glewGenAsyncMarkersSGIX;
-GLEW_FUN_EXPORT PFNGLISASYNCMARKERSGIXPROC __glewIsAsyncMarkerSGIX;
-GLEW_FUN_EXPORT PFNGLPOLLASYNCSGIXPROC __glewPollAsyncSGIX;
-
-GLEW_FUN_EXPORT PFNGLFLUSHRASTERSGIXPROC __glewFlushRasterSGIX;
-
-GLEW_FUN_EXPORT PFNGLTEXTUREFOGSGIXPROC __glewTextureFogSGIX;
-
-GLEW_FUN_EXPORT PFNGLFRAGMENTCOLORMATERIALSGIXPROC __glewFragmentColorMaterialSGIX;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFSGIXPROC __glewFragmentLightModelfSGIX;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFVSGIXPROC __glewFragmentLightModelfvSGIX;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELISGIXPROC __glewFragmentLightModeliSGIX;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELIVSGIXPROC __glewFragmentLightModelivSGIX;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFSGIXPROC __glewFragmentLightfSGIX;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFVSGIXPROC __glewFragmentLightfvSGIX;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTISGIXPROC __glewFragmentLightiSGIX;
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTIVSGIXPROC __glewFragmentLightivSGIX;
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFSGIXPROC __glewFragmentMaterialfSGIX;
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFVSGIXPROC __glewFragmentMaterialfvSGIX;
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALISGIXPROC __glewFragmentMaterialiSGIX;
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALIVSGIXPROC __glewFragmentMaterialivSGIX;
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTFVSGIXPROC __glewGetFragmentLightfvSGIX;
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTIVSGIXPROC __glewGetFragmentLightivSGIX;
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALFVSGIXPROC __glewGetFragmentMaterialfvSGIX;
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALIVSGIXPROC __glewGetFragmentMaterialivSGIX;
-
-GLEW_FUN_EXPORT PFNGLFRAMEZOOMSGIXPROC __glewFrameZoomSGIX;
-
-GLEW_FUN_EXPORT PFNGLPIXELTEXGENSGIXPROC __glewPixelTexGenSGIX;
-
-GLEW_FUN_EXPORT PFNGLREFERENCEPLANESGIXPROC __glewReferencePlaneSGIX;
-
-GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERFSGIXPROC __glewSpriteParameterfSGIX;
-GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERFVSGIXPROC __glewSpriteParameterfvSGIX;
-GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERISGIXPROC __glewSpriteParameteriSGIX;
-GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERIVSGIXPROC __glewSpriteParameterivSGIX;
-
-GLEW_FUN_EXPORT PFNGLTAGSAMPLEBUFFERSGIXPROC __glewTagSampleBufferSGIX;
-
-GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERFVSGIPROC __glewColorTableParameterfvSGI;
-GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERIVSGIPROC __glewColorTableParameterivSGI;
-GLEW_FUN_EXPORT PFNGLCOLORTABLESGIPROC __glewColorTableSGI;
-GLEW_FUN_EXPORT PFNGLCOPYCOLORTABLESGIPROC __glewCopyColorTableSGI;
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERFVSGIPROC __glewGetColorTableParameterfvSGI;
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERIVSGIPROC __glewGetColorTableParameterivSGI;
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLESGIPROC __glewGetColorTableSGI;
-
-GLEW_FUN_EXPORT PFNGLFINISHTEXTURESUNXPROC __glewFinishTextureSUNX;
-
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORBSUNPROC __glewGlobalAlphaFactorbSUN;
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORDSUNPROC __glewGlobalAlphaFactordSUN;
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORFSUNPROC __glewGlobalAlphaFactorfSUN;
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORISUNPROC __glewGlobalAlphaFactoriSUN;
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORSSUNPROC __glewGlobalAlphaFactorsSUN;
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORUBSUNPROC __glewGlobalAlphaFactorubSUN;
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORUISUNPROC __glewGlobalAlphaFactoruiSUN;
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORUSSUNPROC __glewGlobalAlphaFactorusSUN;
-
-GLEW_FUN_EXPORT PFNGLREADVIDEOPIXELSSUNPROC __glewReadVideoPixelsSUN;
-
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEPOINTERSUNPROC __glewReplacementCodePointerSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUBSUNPROC __glewReplacementCodeubSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUBVSUNPROC __glewReplacementCodeubvSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUISUNPROC __glewReplacementCodeuiSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUIVSUNPROC __glewReplacementCodeuivSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUSSUNPROC __glewReplacementCodeusSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUSVSUNPROC __glewReplacementCodeusvSUN;
-
-GLEW_FUN_EXPORT PFNGLCOLOR3FVERTEX3FSUNPROC __glewColor3fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLCOLOR3FVERTEX3FVSUNPROC __glewColor3fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewColor4fNormal3fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewColor4fNormal3fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX2FSUNPROC __glewColor4ubVertex2fSUN;
-GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX2FVSUNPROC __glewColor4ubVertex2fvSUN;
-GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX3FSUNPROC __glewColor4ubVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX3FVSUNPROC __glewColor4ubVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLNORMAL3FVERTEX3FSUNPROC __glewNormal3fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLNORMAL3FVERTEX3FVSUNPROC __glewNormal3fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC __glewReplacementCodeuiColor3fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC __glewReplacementCodeuiColor3fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiColor4fNormal3fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiColor4fNormal3fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC __glewReplacementCodeuiColor4ubVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC __glewReplacementCodeuiColor4ubVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiNormal3fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiNormal3fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fNormal3fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC __glewReplacementCodeuiVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC __glewReplacementCodeuiVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC __glewTexCoord2fColor3fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC __glewTexCoord2fColor3fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewTexCoord2fColor4fNormal3fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewTexCoord2fColor4fNormal3fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC __glewTexCoord2fColor4ubVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC __glewTexCoord2fColor4ubVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC __glewTexCoord2fNormal3fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC __glewTexCoord2fNormal3fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FVERTEX3FSUNPROC __glewTexCoord2fVertex3fSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FVERTEX3FVSUNPROC __glewTexCoord2fVertex3fvSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC __glewTexCoord4fColor4fNormal3fVertex4fSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC __glewTexCoord4fColor4fNormal3fVertex4fvSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD4FVERTEX4FSUNPROC __glewTexCoord4fVertex4fSUN;
-GLEW_FUN_EXPORT PFNGLTEXCOORD4FVERTEX4FVSUNPROC __glewTexCoord4fVertex4fvSUN;
-
-GLEW_FUN_EXPORT PFNGLADDSWAPHINTRECTWINPROC __glewAddSwapHintRectWIN;
-
-#if defined(GLEW_MX) && !defined(_WIN32)
-struct GLEWContextStruct
-{
-#endif /* GLEW_MX */
-
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_1;
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2;
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_3;
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_4;
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_5;
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_2_0;
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_2_1;
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_0;
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_1;
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_2;
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_3;
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_0;
-GLEW_VAR_EXPORT GLboolean __GLEW_3DFX_multisample;
-GLEW_VAR_EXPORT GLboolean __GLEW_3DFX_tbuffer;
-GLEW_VAR_EXPORT GLboolean __GLEW_3DFX_texture_compression_FXT1;
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_conservative_depth;
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_draw_buffers_blend;
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_performance_monitor;
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_seamless_cubemap_per_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_stencil_export;
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_texture_texture4;
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_vertex_shader_tessellator;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_aux_depth_stencil;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_client_storage;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_element_array;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_fence;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_float_pixels;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_flush_buffer_range;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_object_purgeable;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_pixel_buffer;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_rgb_422;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_row_bytes;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_specular_vector;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_texture_range;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_transform_hint;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_vertex_array_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_vertex_array_range;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_vertex_program_evaluators;
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_ycbcr_422;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_blend_func_extended;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_color_buffer_float;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_compatibility;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_copy_buffer;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_depth_buffer_float;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_depth_clamp;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_depth_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_buffers;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_buffers_blend;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_elements_base_vertex;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_indirect;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_instanced;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_explicit_attrib_location;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_coord_conventions;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_program;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_program_shadow;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_shader;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_framebuffer_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_framebuffer_sRGB;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_geometry_shader4;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_gpu_shader5;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_gpu_shader_fp64;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_half_float_pixel;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_half_float_vertex;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_imaging;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_instanced_arrays;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_map_buffer_range;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_matrix_palette;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_multisample;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_multitexture;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_occlusion_query;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_occlusion_query2;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_pixel_buffer_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_point_parameters;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_point_sprite;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_provoking_vertex;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sample_shading;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sampler_objects;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_seamless_cube_map;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_bit_encoding;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_objects;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_subroutine;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_texture_lod;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_100;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_include;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shadow;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shadow_ambient;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sync;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_tessellation_shader;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_border_clamp;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_buffer_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_buffer_object_rgb32;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_compression;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_compression_bptc;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_compression_rgtc;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_cube_map;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_cube_map_array;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_add;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_combine;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_crossbar;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_dot3;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_float;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_gather;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_mirrored_repeat;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_multisample;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_non_power_of_two;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_query_lod;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_rectangle;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_rg;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_rgb10_a2ui;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_swizzle;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_timer_query;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback2;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback3;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transpose_matrix;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_uniform_buffer_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_array_bgra;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_array_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_blend;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_buffer_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_program;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_shader;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_type_2_10_10_10_rev;
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_window_pos;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_point_sprites;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_texture_env_combine3;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_texture_env_route;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_vertex_shader_output_point_size;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_draw_buffers;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_element_array;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_envmap_bumpmap;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_fragment_shader;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_map_object_buffer;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_meminfo;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_pn_triangles;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_separate_stencil;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_shader_texture_lod;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_text_fragment_shader;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_compression_3dc;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_env_combine3;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_float;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_mirror_once;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_vertex_array_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_vertex_attrib_array_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_vertex_streams;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_422_pixels;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_Cg_shader;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_abgr;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_bgra;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_bindable_uniform;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_color;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_equation_separate;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_func_separate;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_logic_op;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_minmax;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_subtract;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_clip_volume_hint;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_cmyka;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_color_subtable;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_compiled_vertex_array;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_convolution;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_coordinate_frame;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_copy_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_cull_vertex;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_depth_bounds_test;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_direct_state_access;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_buffers2;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_instanced;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_range_elements;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_fog_coord;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_fragment_lighting;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_blit;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_multisample;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_sRGB;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_geometry_shader4;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_gpu_program_parameters;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_gpu_shader4;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_histogram;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_array_formats;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_func;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_material;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_light_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_misc_attribute;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multi_draw_arrays;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multisample;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_packed_depth_stencil;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_packed_float;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_packed_pixels;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_paletted_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pixel_buffer_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pixel_transform;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pixel_transform_color_table;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_point_parameters;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_polygon_offset;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_provoking_vertex;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_rescale_normal;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_scene_marker;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_secondary_color;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_separate_shader_objects;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_separate_specular_color;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_image_load_store;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shadow_funcs;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shared_texture_palette;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_stencil_clear_tag;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_stencil_two_side;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_stencil_wrap;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_subtexture;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture3D;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_array;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_buffer_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_dxt1;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_latc;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_rgtc;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_s3tc;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_cube_map;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_edge_clamp;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env_add;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env_combine;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env_dot3;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_filter_anisotropic;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_integer;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_lod_bias;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_mirror_clamp;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_perturb_normal;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_rectangle;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_sRGB;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_shared_exponent;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_snorm;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_swizzle;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_timer_query;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_transform_feedback;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_array;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_array_bgra;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_attrib_64bit;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_shader;
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_weighting;
-GLEW_VAR_EXPORT GLboolean __GLEW_GREMEDY_frame_terminator;
-GLEW_VAR_EXPORT GLboolean __GLEW_GREMEDY_string_marker;
-GLEW_VAR_EXPORT GLboolean __GLEW_HP_convolution_border_modes;
-GLEW_VAR_EXPORT GLboolean __GLEW_HP_image_transform;
-GLEW_VAR_EXPORT GLboolean __GLEW_HP_occlusion_test;
-GLEW_VAR_EXPORT GLboolean __GLEW_HP_texture_lighting;
-GLEW_VAR_EXPORT GLboolean __GLEW_IBM_cull_vertex;
-GLEW_VAR_EXPORT GLboolean __GLEW_IBM_multimode_draw_arrays;
-GLEW_VAR_EXPORT GLboolean __GLEW_IBM_rasterpos_clip;
-GLEW_VAR_EXPORT GLboolean __GLEW_IBM_static_data;
-GLEW_VAR_EXPORT GLboolean __GLEW_IBM_texture_mirrored_repeat;
-GLEW_VAR_EXPORT GLboolean __GLEW_IBM_vertex_array_lists;
-GLEW_VAR_EXPORT GLboolean __GLEW_INGR_color_clamp;
-GLEW_VAR_EXPORT GLboolean __GLEW_INGR_interlace_read;
-GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_parallel_arrays;
-GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_texture_scissor;
-GLEW_VAR_EXPORT GLboolean __GLEW_KTX_buffer_region;
-GLEW_VAR_EXPORT GLboolean __GLEW_MESAX_texture_stack;
-GLEW_VAR_EXPORT GLboolean __GLEW_MESA_pack_invert;
-GLEW_VAR_EXPORT GLboolean __GLEW_MESA_resize_buffers;
-GLEW_VAR_EXPORT GLboolean __GLEW_MESA_window_pos;
-GLEW_VAR_EXPORT GLboolean __GLEW_MESA_ycbcr_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_blend_square;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_conditional_render;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_copy_depth_to_color;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_copy_image;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_buffer_float;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_clamp;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_range_unclamped;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_evaluators;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_explicit_multisample;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_fence;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_float_buffer;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_fog_distance;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program2;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program4;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program_option;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_framebuffer_multisample_coverage;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_geometry_program4;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_geometry_shader4;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program4;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program5;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program_fp64;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_shader5;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_half_float;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_light_max_exponent;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_multisample_filter_hint;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_occlusion_query;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_packed_depth_stencil;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_parameter_buffer_object;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_parameter_buffer_object2;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_pixel_data_range;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_point_sprite;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_present_video;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_primitive_restart;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_register_combiners;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_register_combiners2;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_buffer_load;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_tessellation_program5;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texgen_emboss;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texgen_reflection;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_barrier;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_compression_vtc;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_env_combine4;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_expand_normal;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_rectangle;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader2;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader3;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_transform_feedback;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_transform_feedback2;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_array_range;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_array_range2;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_attrib_integer_64bit;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_buffer_unified_memory;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program1_1;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program2;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program2_option;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program3;
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program4;
-GLEW_VAR_EXPORT GLboolean __GLEW_OES_byte_coordinates;
-GLEW_VAR_EXPORT GLboolean __GLEW_OES_compressed_paletted_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_OES_read_format;
-GLEW_VAR_EXPORT GLboolean __GLEW_OES_single_precision;
-GLEW_VAR_EXPORT GLboolean __GLEW_OML_interlace;
-GLEW_VAR_EXPORT GLboolean __GLEW_OML_resample;
-GLEW_VAR_EXPORT GLboolean __GLEW_OML_subsample;
-GLEW_VAR_EXPORT GLboolean __GLEW_PGI_misc_hints;
-GLEW_VAR_EXPORT GLboolean __GLEW_PGI_vertex_hints;
-GLEW_VAR_EXPORT GLboolean __GLEW_REND_screen_coordinates;
-GLEW_VAR_EXPORT GLboolean __GLEW_S3_s3tc;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_color_range;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_detail_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_fog_function;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_generate_mipmap;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_multisample;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_pixel_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_point_line_texgen;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_sharpen_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture4D;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_border_clamp;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_edge_clamp;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_filter4;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_lod;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_select;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_async;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_async_histogram;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_async_pixel;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_blend_alpha_minmax;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_clipmap;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_convolution_accuracy;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_depth_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_flush_raster;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_offset;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fragment_specular_lighting;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_framezoom;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_interlace;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_ir_instrument1;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_list_priority;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_pixel_texture;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_pixel_texture_bits;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_reference_plane;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_resample;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_shadow;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_shadow_ambient;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_sprite;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_tag_sample_buffer;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_add_env;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_coordinate_clamp;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_lod_bias;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_multi_buffer;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_range;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_scale_bias;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_vertex_preclip;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_vertex_preclip_hint;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_ycrcb;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGI_color_matrix;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGI_color_table;
-GLEW_VAR_EXPORT GLboolean __GLEW_SGI_texture_color_table;
-GLEW_VAR_EXPORT GLboolean __GLEW_SUNX_constant_data;
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_convolution_border_modes;
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_global_alpha;
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_mesh_array;
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_read_video_pixels;
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_slice_accum;
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_triangle_list;
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_vertex;
-GLEW_VAR_EXPORT GLboolean __GLEW_WIN_phong_shading;
-GLEW_VAR_EXPORT GLboolean __GLEW_WIN_specular_fog;
-GLEW_VAR_EXPORT GLboolean __GLEW_WIN_swap_hint;
-
-#ifdef GLEW_MX
-}; /* GLEWContextStruct */
-#endif /* GLEW_MX */
-
-/* ------------------------------------------------------------------------- */
-
-/* error codes */
-#define GLEW_OK 0
-#define GLEW_NO_ERROR 0
-#define GLEW_ERROR_NO_GL_VERSION 1  /* missing GL version */
-#define GLEW_ERROR_GL_VERSION_10_ONLY 2  /* GL 1.1 and up are not supported */
-#define GLEW_ERROR_GLX_VERSION_11_ONLY 3  /* GLX 1.2 and up are not supported */
-
-/* string codes */
-#define GLEW_VERSION 1
-#define GLEW_VERSION_MAJOR 2
-#define GLEW_VERSION_MINOR 3
-#define GLEW_VERSION_MICRO 4
-
-/* API */
-#ifdef GLEW_MX
-
-typedef struct GLEWContextStruct GLEWContext;
-GLEWAPI GLenum glewContextInit (GLEWContext* ctx);
-GLEWAPI GLboolean glewContextIsSupported (GLEWContext* ctx, const char* name);
-
-#define glewInit() glewContextInit(glewGetContext())
-#define glewIsSupported(x) glewContextIsSupported(glewGetContext(), x)
-#define glewIsExtensionSupported(x) glewIsSupported(x)
-
-#define GLEW_GET_VAR(x) (*(const GLboolean*)&(glewGetContext()->x))
-#ifdef _WIN32
-#  define GLEW_GET_FUN(x) glewGetContext()->x
-#else
-#  define GLEW_GET_FUN(x) x
-#endif
-
-#else /* GLEW_MX */
-
-GLEWAPI GLenum glewInit ();
-GLEWAPI GLboolean glewIsSupported (const char* name);
-#define glewIsExtensionSupported(x) glewIsSupported(x)
-
-#define GLEW_GET_VAR(x) (*(const GLboolean*)&x)
-#define GLEW_GET_FUN(x) x
-
-#endif /* GLEW_MX */
-
-GLEWAPI GLboolean glewExperimental;
-GLEWAPI GLboolean glewGetExtension (const char* name);
-GLEWAPI const GLubyte* glewGetErrorString (GLenum error);
-GLEWAPI const GLubyte* glewGetString (GLenum name);
-
-#ifdef __cplusplus
-}
-#endif
-
-#ifdef GLEW_APIENTRY_DEFINED
-#undef GLEW_APIENTRY_DEFINED
-#undef APIENTRY
-#undef GLAPIENTRY
-#define GLAPIENTRY
-#endif
-
-#ifdef GLEW_CALLBACK_DEFINED
-#undef GLEW_CALLBACK_DEFINED
-#undef CALLBACK
-#endif
-
-#ifdef GLEW_WINGDIAPI_DEFINED
-#undef GLEW_WINGDIAPI_DEFINED
-#undef WINGDIAPI
-#endif
-
-#undef GLAPI
-/* #undef GLEWAPI */
-
-#endif /* __glew_h__ */
diff --git a/src/other/glew/include/GL/glxew.h b/src/other/glew/include/GL/glxew.h
deleted file mode 100644
index 637ef1e..0000000
--- a/src/other/glew/include/GL/glxew.h
+++ /dev/null
@@ -1,1476 +0,0 @@
-/*
-** The OpenGL Extension Wrangler Library
-** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-** Copyright (C) 2002, Lev Povalahev
-** All rights reserved.
-** 
-** Redistribution and use in source and binary forms, with or without 
-** modification, are permitted provided that the following conditions are met:
-** 
-** * Redistributions of source code must retain the above copyright notice, 
-**   this list of conditions and the following disclaimer.
-** * Redistributions in binary form must reproduce the above copyright notice, 
-**   this list of conditions and the following disclaimer in the documentation 
-**   and/or other materials provided with the distribution.
-** * The name of the author may be used to endorse or promote products 
-**   derived from this software without specific prior written permission.
-**
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-** THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*
- * Mesa 3-D graphics library
- * Version:  7.0
- *
- * Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-/*
-** Copyright (c) 2007 The Khronos Group Inc.
-** 
-** Permission is hereby granted, free of charge, to any person obtaining a
-** copy of this software and/or associated documentation files (the
-** "Materials"), to deal in the Materials without restriction, including
-** without limitation the rights to use, copy, modify, merge, publish,
-** distribute, sublicense, and/or sell copies of the Materials, and to
-** permit persons to whom the Materials are furnished to do so, subject to
-** the following conditions:
-** 
-** The above copyright notice and this permission notice shall be included
-** in all copies or substantial portions of the Materials.
-** 
-** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
-*/
-
-#ifndef __glxew_h__
-#define __glxew_h__
-#define __GLXEW_H__
-
-#ifdef __glxext_h_
-#error glxext.h included before glxew.h
-#endif
-
-#if defined(GLX_H) || defined(__GLX_glx_h__) || defined(__glx_h__)
-#error glx.h included before glxew.h
-#endif
-
-#define __glxext_h_
-
-#define GLX_H
-#define __GLX_glx_h__
-#define __glx_h__
-
-#include <X11/Xlib.h>
-#include <X11/Xutil.h>
-#include <X11/Xmd.h>
-#include <GL/glew.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* ---------------------------- GLX_VERSION_1_0 --------------------------- */
-
-#ifndef GLX_VERSION_1_0
-#define GLX_VERSION_1_0 1
-
-#define GLX_USE_GL 1
-#define GLX_BUFFER_SIZE 2
-#define GLX_LEVEL 3
-#define GLX_RGBA 4
-#define GLX_DOUBLEBUFFER 5
-#define GLX_STEREO 6
-#define GLX_AUX_BUFFERS 7
-#define GLX_RED_SIZE 8
-#define GLX_GREEN_SIZE 9
-#define GLX_BLUE_SIZE 10
-#define GLX_ALPHA_SIZE 11
-#define GLX_DEPTH_SIZE 12
-#define GLX_STENCIL_SIZE 13
-#define GLX_ACCUM_RED_SIZE 14
-#define GLX_ACCUM_GREEN_SIZE 15
-#define GLX_ACCUM_BLUE_SIZE 16
-#define GLX_ACCUM_ALPHA_SIZE 17
-#define GLX_BAD_SCREEN 1
-#define GLX_BAD_ATTRIBUTE 2
-#define GLX_NO_EXTENSION 3
-#define GLX_BAD_VISUAL 4
-#define GLX_BAD_CONTEXT 5
-#define GLX_BAD_VALUE 6
-#define GLX_BAD_ENUM 7
-
-typedef XID GLXDrawable;
-typedef XID GLXPixmap;
-#ifdef __sun
-typedef struct __glXContextRec *GLXContext;
-#else
-typedef struct __GLXcontextRec *GLXContext;
-#endif
-
-typedef unsigned int GLXVideoDeviceNV; 
-
-extern Bool glXQueryExtension (Display *dpy, int *errorBase, int *eventBase);
-extern Bool glXQueryVersion (Display *dpy, int *major, int *minor);
-extern int glXGetConfig (Display *dpy, XVisualInfo *vis, int attrib, int *value);
-extern XVisualInfo* glXChooseVisual (Display *dpy, int screen, int *attribList);
-extern GLXPixmap glXCreateGLXPixmap (Display *dpy, XVisualInfo *vis, Pixmap pixmap);
-extern void glXDestroyGLXPixmap (Display *dpy, GLXPixmap pix);
-extern GLXContext glXCreateContext (Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct);
-extern void glXDestroyContext (Display *dpy, GLXContext ctx);
-extern Bool glXIsDirect (Display *dpy, GLXContext ctx);
-extern void glXCopyContext (Display *dpy, GLXContext src, GLXContext dst, GLulong mask);
-extern Bool glXMakeCurrent (Display *dpy, GLXDrawable drawable, GLXContext ctx);
-extern GLXContext glXGetCurrentContext (void);
-extern GLXDrawable glXGetCurrentDrawable (void);
-extern void glXWaitGL (void);
-extern void glXWaitX (void);
-extern void glXSwapBuffers (Display *dpy, GLXDrawable drawable);
-extern void glXUseXFont (Font font, int first, int count, int listBase);
-
-#define GLXEW_VERSION_1_0 GLXEW_GET_VAR(__GLXEW_VERSION_1_0)
-
-#endif /* GLX_VERSION_1_0 */
-
-/* ---------------------------- GLX_VERSION_1_1 --------------------------- */
-
-#ifndef GLX_VERSION_1_1
-#define GLX_VERSION_1_1
-
-#define GLX_VENDOR 0x1
-#define GLX_VERSION 0x2
-#define GLX_EXTENSIONS 0x3
-
-extern const char* glXQueryExtensionsString (Display *dpy, int screen);
-extern const char* glXGetClientString (Display *dpy, int name);
-extern const char* glXQueryServerString (Display *dpy, int screen, int name);
-
-#define GLXEW_VERSION_1_1 GLXEW_GET_VAR(__GLXEW_VERSION_1_1)
-
-#endif /* GLX_VERSION_1_1 */
-
-/* ---------------------------- GLX_VERSION_1_2 ---------------------------- */
-
-#ifndef GLX_VERSION_1_2
-#define GLX_VERSION_1_2 1
-
-typedef Display* ( * PFNGLXGETCURRENTDISPLAYPROC) (void);
-
-#define glXGetCurrentDisplay GLXEW_GET_FUN(__glewXGetCurrentDisplay)
-
-#define GLXEW_VERSION_1_2 GLXEW_GET_VAR(__GLXEW_VERSION_1_2)
-
-#endif /* GLX_VERSION_1_2 */
-
-/* ---------------------------- GLX_VERSION_1_3 ---------------------------- */
-
-#ifndef GLX_VERSION_1_3
-#define GLX_VERSION_1_3 1
-
-#define GLX_RGBA_BIT 0x00000001
-#define GLX_FRONT_LEFT_BUFFER_BIT 0x00000001
-#define GLX_WINDOW_BIT 0x00000001
-#define GLX_COLOR_INDEX_BIT 0x00000002
-#define GLX_PIXMAP_BIT 0x00000002
-#define GLX_FRONT_RIGHT_BUFFER_BIT 0x00000002
-#define GLX_BACK_LEFT_BUFFER_BIT 0x00000004
-#define GLX_PBUFFER_BIT 0x00000004
-#define GLX_BACK_RIGHT_BUFFER_BIT 0x00000008
-#define GLX_AUX_BUFFERS_BIT 0x00000010
-#define GLX_CONFIG_CAVEAT 0x20
-#define GLX_DEPTH_BUFFER_BIT 0x00000020
-#define GLX_X_VISUAL_TYPE 0x22
-#define GLX_TRANSPARENT_TYPE 0x23
-#define GLX_TRANSPARENT_INDEX_VALUE 0x24
-#define GLX_TRANSPARENT_RED_VALUE 0x25
-#define GLX_TRANSPARENT_GREEN_VALUE 0x26
-#define GLX_TRANSPARENT_BLUE_VALUE 0x27
-#define GLX_TRANSPARENT_ALPHA_VALUE 0x28
-#define GLX_STENCIL_BUFFER_BIT 0x00000040
-#define GLX_ACCUM_BUFFER_BIT 0x00000080
-#define GLX_NONE 0x8000
-#define GLX_SLOW_CONFIG 0x8001
-#define GLX_TRUE_COLOR 0x8002
-#define GLX_DIRECT_COLOR 0x8003
-#define GLX_PSEUDO_COLOR 0x8004
-#define GLX_STATIC_COLOR 0x8005
-#define GLX_GRAY_SCALE 0x8006
-#define GLX_STATIC_GRAY 0x8007
-#define GLX_TRANSPARENT_RGB 0x8008
-#define GLX_TRANSPARENT_INDEX 0x8009
-#define GLX_VISUAL_ID 0x800B
-#define GLX_SCREEN 0x800C
-#define GLX_NON_CONFORMANT_CONFIG 0x800D
-#define GLX_DRAWABLE_TYPE 0x8010
-#define GLX_RENDER_TYPE 0x8011
-#define GLX_X_RENDERABLE 0x8012
-#define GLX_FBCONFIG_ID 0x8013
-#define GLX_RGBA_TYPE 0x8014
-#define GLX_COLOR_INDEX_TYPE 0x8015
-#define GLX_MAX_PBUFFER_WIDTH 0x8016
-#define GLX_MAX_PBUFFER_HEIGHT 0x8017
-#define GLX_MAX_PBUFFER_PIXELS 0x8018
-#define GLX_PRESERVED_CONTENTS 0x801B
-#define GLX_LARGEST_PBUFFER 0x801C
-#define GLX_WIDTH 0x801D
-#define GLX_HEIGHT 0x801E
-#define GLX_EVENT_MASK 0x801F
-#define GLX_DAMAGED 0x8020
-#define GLX_SAVED 0x8021
-#define GLX_WINDOW 0x8022
-#define GLX_PBUFFER 0x8023
-#define GLX_PBUFFER_HEIGHT 0x8040
-#define GLX_PBUFFER_WIDTH 0x8041
-#define GLX_PBUFFER_CLOBBER_MASK 0x08000000
-#define GLX_DONT_CARE 0xFFFFFFFF
-
-typedef XID GLXFBConfigID;
-typedef XID GLXWindow;
-typedef XID GLXPbuffer;
-typedef struct __GLXFBConfigRec *GLXFBConfig;
-
-typedef struct {
-  int event_type; 
-  int draw_type; 
-  unsigned long serial; 
-  Bool send_event; 
-  Display *display; 
-  GLXDrawable drawable; 
-  unsigned int buffer_mask; 
-  unsigned int aux_buffer; 
-  int x, y; 
-  int width, height; 
-  int count; 
-} GLXPbufferClobberEvent;
-typedef union __GLXEvent {
-  GLXPbufferClobberEvent glxpbufferclobber; 
-  long pad[24]; 
-} GLXEvent;
-
-typedef GLXFBConfig* ( * PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
-typedef GLXContext ( * PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
-typedef GLXPbuffer ( * PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConfig config, const int *attrib_list);
-typedef GLXPixmap ( * PFNGLXCREATEPIXMAPPROC) (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
-typedef GLXWindow ( * PFNGLXCREATEWINDOWPROC) (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
-typedef void ( * PFNGLXDESTROYPBUFFERPROC) (Display *dpy, GLXPbuffer pbuf);
-typedef void ( * PFNGLXDESTROYPIXMAPPROC) (Display *dpy, GLXPixmap pixmap);
-typedef void ( * PFNGLXDESTROYWINDOWPROC) (Display *dpy, GLXWindow win);
-typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLEPROC) (void);
-typedef int ( * PFNGLXGETFBCONFIGATTRIBPROC) (Display *dpy, GLXFBConfig config, int attribute, int *value);
-typedef GLXFBConfig* ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);
-typedef void ( * PFNGLXGETSELECTEDEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
-typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy, GLXFBConfig config);
-typedef Bool ( * PFNGLXMAKECONTEXTCURRENTPROC) (Display *display, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
-typedef int ( * PFNGLXQUERYCONTEXTPROC) (Display *dpy, GLXContext ctx, int attribute, int *value);
-typedef void ( * PFNGLXQUERYDRAWABLEPROC) (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
-typedef void ( * PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long event_mask);
-
-#define glXChooseFBConfig GLXEW_GET_FUN(__glewXChooseFBConfig)
-#define glXCreateNewContext GLXEW_GET_FUN(__glewXCreateNewContext)
-#define glXCreatePbuffer GLXEW_GET_FUN(__glewXCreatePbuffer)
-#define glXCreatePixmap GLXEW_GET_FUN(__glewXCreatePixmap)
-#define glXCreateWindow GLXEW_GET_FUN(__glewXCreateWindow)
-#define glXDestroyPbuffer GLXEW_GET_FUN(__glewXDestroyPbuffer)
-#define glXDestroyPixmap GLXEW_GET_FUN(__glewXDestroyPixmap)
-#define glXDestroyWindow GLXEW_GET_FUN(__glewXDestroyWindow)
-#define glXGetCurrentReadDrawable GLXEW_GET_FUN(__glewXGetCurrentReadDrawable)
-#define glXGetFBConfigAttrib GLXEW_GET_FUN(__glewXGetFBConfigAttrib)
-#define glXGetFBConfigs GLXEW_GET_FUN(__glewXGetFBConfigs)
-#define glXGetSelectedEvent GLXEW_GET_FUN(__glewXGetSelectedEvent)
-#define glXGetVisualFromFBConfig GLXEW_GET_FUN(__glewXGetVisualFromFBConfig)
-#define glXMakeContextCurrent GLXEW_GET_FUN(__glewXMakeContextCurrent)
-#define glXQueryContext GLXEW_GET_FUN(__glewXQueryContext)
-#define glXQueryDrawable GLXEW_GET_FUN(__glewXQueryDrawable)
-#define glXSelectEvent GLXEW_GET_FUN(__glewXSelectEvent)
-
-#define GLXEW_VERSION_1_3 GLXEW_GET_VAR(__GLXEW_VERSION_1_3)
-
-#endif /* GLX_VERSION_1_3 */
-
-/* ---------------------------- GLX_VERSION_1_4 ---------------------------- */
-
-#ifndef GLX_VERSION_1_4
-#define GLX_VERSION_1_4 1
-
-#define GLX_SAMPLE_BUFFERS 100000
-#define GLX_SAMPLES 100001
-
-extern void ( * glXGetProcAddress (const GLubyte *procName)) (void);
-
-#define GLXEW_VERSION_1_4 GLXEW_GET_VAR(__GLXEW_VERSION_1_4)
-
-#endif /* GLX_VERSION_1_4 */
-
-/* -------------------------- GLX_3DFX_multisample ------------------------- */
-
-#ifndef GLX_3DFX_multisample
-#define GLX_3DFX_multisample 1
-
-#define GLX_SAMPLE_BUFFERS_3DFX 0x8050
-#define GLX_SAMPLES_3DFX 0x8051
-
-#define GLXEW_3DFX_multisample GLXEW_GET_VAR(__GLXEW_3DFX_multisample)
-
-#endif /* GLX_3DFX_multisample */
-
-/* ------------------------- GLX_ARB_create_context ------------------------ */
-
-#ifndef GLX_ARB_create_context
-#define GLX_ARB_create_context 1
-
-#define GLX_CONTEXT_DEBUG_BIT_ARB 0x0001
-#define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002
-#define GLX_CONTEXT_MAJOR_VERSION_ARB 0x2091
-#define GLX_CONTEXT_MINOR_VERSION_ARB 0x2092
-#define GLX_CONTEXT_FLAGS_ARB 0x2094
-
-typedef GLXContext ( * PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display* dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);
-
-#define glXCreateContextAttribsARB GLXEW_GET_FUN(__glewXCreateContextAttribsARB)
-
-#define GLXEW_ARB_create_context GLXEW_GET_VAR(__GLXEW_ARB_create_context)
-
-#endif /* GLX_ARB_create_context */
-
-/* --------------------- GLX_ARB_create_context_profile -------------------- */
-
-#ifndef GLX_ARB_create_context_profile
-#define GLX_ARB_create_context_profile 1
-
-#define GLX_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
-#define GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
-#define GLX_CONTEXT_PROFILE_MASK_ARB 0x9126
-
-#define GLXEW_ARB_create_context_profile GLXEW_GET_VAR(__GLXEW_ARB_create_context_profile)
-
-#endif /* GLX_ARB_create_context_profile */
-
-/* ------------------------- GLX_ARB_fbconfig_float ------------------------ */
-
-#ifndef GLX_ARB_fbconfig_float
-#define GLX_ARB_fbconfig_float 1
-
-#define GLX_RGBA_FLOAT_BIT 0x00000004
-#define GLX_RGBA_FLOAT_TYPE 0x20B9
-
-#define GLXEW_ARB_fbconfig_float GLXEW_GET_VAR(__GLXEW_ARB_fbconfig_float)
-
-#endif /* GLX_ARB_fbconfig_float */
-
-/* ------------------------ GLX_ARB_framebuffer_sRGB ----------------------- */
-
-#ifndef GLX_ARB_framebuffer_sRGB
-#define GLX_ARB_framebuffer_sRGB 1
-
-#define GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20B2
-
-#define GLXEW_ARB_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_ARB_framebuffer_sRGB)
-
-#endif /* GLX_ARB_framebuffer_sRGB */
-
-/* ------------------------ GLX_ARB_get_proc_address ----------------------- */
-
-#ifndef GLX_ARB_get_proc_address
-#define GLX_ARB_get_proc_address 1
-
-extern void ( * glXGetProcAddressARB (const GLubyte *procName)) (void);
-
-#define GLXEW_ARB_get_proc_address GLXEW_GET_VAR(__GLXEW_ARB_get_proc_address)
-
-#endif /* GLX_ARB_get_proc_address */
-
-/* -------------------------- GLX_ARB_multisample -------------------------- */
-
-#ifndef GLX_ARB_multisample
-#define GLX_ARB_multisample 1
-
-#define GLX_SAMPLE_BUFFERS_ARB 100000
-#define GLX_SAMPLES_ARB 100001
-
-#define GLXEW_ARB_multisample GLXEW_GET_VAR(__GLXEW_ARB_multisample)
-
-#endif /* GLX_ARB_multisample */
-
-/* ---------------------- GLX_ARB_vertex_buffer_object --------------------- */
-
-#ifndef GLX_ARB_vertex_buffer_object
-#define GLX_ARB_vertex_buffer_object 1
-
-#define GLX_CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB 0x2095
-
-#define GLXEW_ARB_vertex_buffer_object GLXEW_GET_VAR(__GLXEW_ARB_vertex_buffer_object)
-
-#endif /* GLX_ARB_vertex_buffer_object */
-
-/* ----------------------- GLX_ATI_pixel_format_float ---------------------- */
-
-#ifndef GLX_ATI_pixel_format_float
-#define GLX_ATI_pixel_format_float 1
-
-#define GLX_RGBA_FLOAT_ATI_BIT 0x00000100
-
-#define GLXEW_ATI_pixel_format_float GLXEW_GET_VAR(__GLXEW_ATI_pixel_format_float)
-
-#endif /* GLX_ATI_pixel_format_float */
-
-/* ------------------------- GLX_ATI_render_texture ------------------------ */
-
-#ifndef GLX_ATI_render_texture
-#define GLX_ATI_render_texture 1
-
-#define GLX_BIND_TO_TEXTURE_RGB_ATI 0x9800
-#define GLX_BIND_TO_TEXTURE_RGBA_ATI 0x9801
-#define GLX_TEXTURE_FORMAT_ATI 0x9802
-#define GLX_TEXTURE_TARGET_ATI 0x9803
-#define GLX_MIPMAP_TEXTURE_ATI 0x9804
-#define GLX_TEXTURE_RGB_ATI 0x9805
-#define GLX_TEXTURE_RGBA_ATI 0x9806
-#define GLX_NO_TEXTURE_ATI 0x9807
-#define GLX_TEXTURE_CUBE_MAP_ATI 0x9808
-#define GLX_TEXTURE_1D_ATI 0x9809
-#define GLX_TEXTURE_2D_ATI 0x980A
-#define GLX_MIPMAP_LEVEL_ATI 0x980B
-#define GLX_CUBE_MAP_FACE_ATI 0x980C
-#define GLX_TEXTURE_CUBE_MAP_POSITIVE_X_ATI 0x980D
-#define GLX_TEXTURE_CUBE_MAP_NEGATIVE_X_ATI 0x980E
-#define GLX_TEXTURE_CUBE_MAP_POSITIVE_Y_ATI 0x980F
-#define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Y_ATI 0x9810
-#define GLX_TEXTURE_CUBE_MAP_POSITIVE_Z_ATI 0x9811
-#define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Z_ATI 0x9812
-#define GLX_FRONT_LEFT_ATI 0x9813
-#define GLX_FRONT_RIGHT_ATI 0x9814
-#define GLX_BACK_LEFT_ATI 0x9815
-#define GLX_BACK_RIGHT_ATI 0x9816
-#define GLX_AUX0_ATI 0x9817
-#define GLX_AUX1_ATI 0x9818
-#define GLX_AUX2_ATI 0x9819
-#define GLX_AUX3_ATI 0x981A
-#define GLX_AUX4_ATI 0x981B
-#define GLX_AUX5_ATI 0x981C
-#define GLX_AUX6_ATI 0x981D
-#define GLX_AUX7_ATI 0x981E
-#define GLX_AUX8_ATI 0x981F
-#define GLX_AUX9_ATI 0x9820
-#define GLX_BIND_TO_TEXTURE_LUMINANCE_ATI 0x9821
-#define GLX_BIND_TO_TEXTURE_INTENSITY_ATI 0x9822
-
-typedef void ( * PFNGLXBINDTEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);
-typedef void ( * PFNGLXDRAWABLEATTRIBATIPROC) (Display *dpy, GLXDrawable draw, const int *attrib_list);
-typedef void ( * PFNGLXRELEASETEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);
-
-#define glXBindTexImageATI GLXEW_GET_FUN(__glewXBindTexImageATI)
-#define glXDrawableAttribATI GLXEW_GET_FUN(__glewXDrawableAttribATI)
-#define glXReleaseTexImageATI GLXEW_GET_FUN(__glewXReleaseTexImageATI)
-
-#define GLXEW_ATI_render_texture GLXEW_GET_VAR(__GLXEW_ATI_render_texture)
-
-#endif /* GLX_ATI_render_texture */
-
-/* --------------------- GLX_EXT_fbconfig_packed_float --------------------- */
-
-#ifndef GLX_EXT_fbconfig_packed_float
-#define GLX_EXT_fbconfig_packed_float 1
-
-#define GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT 0x00000008
-#define GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT 0x20B1
-
-#define GLXEW_EXT_fbconfig_packed_float GLXEW_GET_VAR(__GLXEW_EXT_fbconfig_packed_float)
-
-#endif /* GLX_EXT_fbconfig_packed_float */
-
-/* ------------------------ GLX_EXT_framebuffer_sRGB ----------------------- */
-
-#ifndef GLX_EXT_framebuffer_sRGB
-#define GLX_EXT_framebuffer_sRGB 1
-
-#define GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20B2
-
-#define GLXEW_EXT_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_EXT_framebuffer_sRGB)
-
-#endif /* GLX_EXT_framebuffer_sRGB */
-
-/* ------------------------- GLX_EXT_import_context ------------------------ */
-
-#ifndef GLX_EXT_import_context
-#define GLX_EXT_import_context 1
-
-#define GLX_SHARE_CONTEXT_EXT 0x800A
-#define GLX_VISUAL_ID_EXT 0x800B
-#define GLX_SCREEN_EXT 0x800C
-
-typedef XID GLXContextID;
-
-typedef void ( * PFNGLXFREECONTEXTEXTPROC) (Display* dpy, GLXContext context);
-typedef GLXContextID ( * PFNGLXGETCONTEXTIDEXTPROC) (const GLXContext context);
-typedef GLXContext ( * PFNGLXIMPORTCONTEXTEXTPROC) (Display* dpy, GLXContextID contextID);
-typedef int ( * PFNGLXQUERYCONTEXTINFOEXTPROC) (Display* dpy, GLXContext context, int attribute,int *value);
-
-#define glXFreeContextEXT GLXEW_GET_FUN(__glewXFreeContextEXT)
-#define glXGetContextIDEXT GLXEW_GET_FUN(__glewXGetContextIDEXT)
-#define glXImportContextEXT GLXEW_GET_FUN(__glewXImportContextEXT)
-#define glXQueryContextInfoEXT GLXEW_GET_FUN(__glewXQueryContextInfoEXT)
-
-#define GLXEW_EXT_import_context GLXEW_GET_VAR(__GLXEW_EXT_import_context)
-
-#endif /* GLX_EXT_import_context */
-
-/* -------------------------- GLX_EXT_scene_marker ------------------------- */
-
-#ifndef GLX_EXT_scene_marker
-#define GLX_EXT_scene_marker 1
-
-#define GLXEW_EXT_scene_marker GLXEW_GET_VAR(__GLXEW_EXT_scene_marker)
-
-#endif /* GLX_EXT_scene_marker */
-
-/* -------------------------- GLX_EXT_swap_control ------------------------- */
-
-#ifndef GLX_EXT_swap_control
-#define GLX_EXT_swap_control 1
-
-#define GLX_SWAP_INTERVAL_EXT 0x20F1
-#define GLX_MAX_SWAP_INTERVAL_EXT 0x20F2
-
-typedef void ( * PFNGLXSWAPINTERVALEXTPROC) (Display* dpy, GLXDrawable drawable, int interval);
-
-#define glXSwapIntervalEXT GLXEW_GET_FUN(__glewXSwapIntervalEXT)
-
-#define GLXEW_EXT_swap_control GLXEW_GET_VAR(__GLXEW_EXT_swap_control)
-
-#endif /* GLX_EXT_swap_control */
-
-/* ---------------------- GLX_EXT_texture_from_pixmap ---------------------- */
-
-#ifndef GLX_EXT_texture_from_pixmap
-#define GLX_EXT_texture_from_pixmap 1
-
-#define GLX_TEXTURE_1D_BIT_EXT 0x00000001
-#define GLX_TEXTURE_2D_BIT_EXT 0x00000002
-#define GLX_TEXTURE_RECTANGLE_BIT_EXT 0x00000004
-#define GLX_BIND_TO_TEXTURE_RGB_EXT 0x20D0
-#define GLX_BIND_TO_TEXTURE_RGBA_EXT 0x20D1
-#define GLX_BIND_TO_MIPMAP_TEXTURE_EXT 0x20D2
-#define GLX_BIND_TO_TEXTURE_TARGETS_EXT 0x20D3
-#define GLX_Y_INVERTED_EXT 0x20D4
-#define GLX_TEXTURE_FORMAT_EXT 0x20D5
-#define GLX_TEXTURE_TARGET_EXT 0x20D6
-#define GLX_MIPMAP_TEXTURE_EXT 0x20D7
-#define GLX_TEXTURE_FORMAT_NONE_EXT 0x20D8
-#define GLX_TEXTURE_FORMAT_RGB_EXT 0x20D9
-#define GLX_TEXTURE_FORMAT_RGBA_EXT 0x20DA
-#define GLX_TEXTURE_1D_EXT 0x20DB
-#define GLX_TEXTURE_2D_EXT 0x20DC
-#define GLX_TEXTURE_RECTANGLE_EXT 0x20DD
-#define GLX_FRONT_LEFT_EXT 0x20DE
-#define GLX_FRONT_RIGHT_EXT 0x20DF
-#define GLX_BACK_LEFT_EXT 0x20E0
-#define GLX_BACK_RIGHT_EXT 0x20E1
-#define GLX_AUX0_EXT 0x20E2
-#define GLX_AUX1_EXT 0x20E3
-#define GLX_AUX2_EXT 0x20E4
-#define GLX_AUX3_EXT 0x20E5
-#define GLX_AUX4_EXT 0x20E6
-#define GLX_AUX5_EXT 0x20E7
-#define GLX_AUX6_EXT 0x20E8
-#define GLX_AUX7_EXT 0x20E9
-#define GLX_AUX8_EXT 0x20EA
-#define GLX_AUX9_EXT 0x20EB
-
-typedef void ( * PFNGLXBINDTEXIMAGEEXTPROC) (Display* display, GLXDrawable drawable, int buffer, const int *attrib_list);
-typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display* display, GLXDrawable drawable, int buffer);
-
-#define glXBindTexImageEXT GLXEW_GET_FUN(__glewXBindTexImageEXT)
-#define glXReleaseTexImageEXT GLXEW_GET_FUN(__glewXReleaseTexImageEXT)
-
-#define GLXEW_EXT_texture_from_pixmap GLXEW_GET_VAR(__GLXEW_EXT_texture_from_pixmap)
-
-#endif /* GLX_EXT_texture_from_pixmap */
-
-/* -------------------------- GLX_EXT_visual_info -------------------------- */
-
-#ifndef GLX_EXT_visual_info
-#define GLX_EXT_visual_info 1
-
-#define GLX_X_VISUAL_TYPE_EXT 0x22
-#define GLX_TRANSPARENT_TYPE_EXT 0x23
-#define GLX_TRANSPARENT_INDEX_VALUE_EXT 0x24
-#define GLX_TRANSPARENT_RED_VALUE_EXT 0x25
-#define GLX_TRANSPARENT_GREEN_VALUE_EXT 0x26
-#define GLX_TRANSPARENT_BLUE_VALUE_EXT 0x27
-#define GLX_TRANSPARENT_ALPHA_VALUE_EXT 0x28
-#define GLX_NONE_EXT 0x8000
-#define GLX_TRUE_COLOR_EXT 0x8002
-#define GLX_DIRECT_COLOR_EXT 0x8003
-#define GLX_PSEUDO_COLOR_EXT 0x8004
-#define GLX_STATIC_COLOR_EXT 0x8005
-#define GLX_GRAY_SCALE_EXT 0x8006
-#define GLX_STATIC_GRAY_EXT 0x8007
-#define GLX_TRANSPARENT_RGB_EXT 0x8008
-#define GLX_TRANSPARENT_INDEX_EXT 0x8009
-
-#define GLXEW_EXT_visual_info GLXEW_GET_VAR(__GLXEW_EXT_visual_info)
-
-#endif /* GLX_EXT_visual_info */
-
-/* ------------------------- GLX_EXT_visual_rating ------------------------- */
-
-#ifndef GLX_EXT_visual_rating
-#define GLX_EXT_visual_rating 1
-
-#define GLX_VISUAL_CAVEAT_EXT 0x20
-#define GLX_SLOW_VISUAL_EXT 0x8001
-#define GLX_NON_CONFORMANT_VISUAL_EXT 0x800D
-
-#define GLXEW_EXT_visual_rating GLXEW_GET_VAR(__GLXEW_EXT_visual_rating)
-
-#endif /* GLX_EXT_visual_rating */
-
-/* -------------------------- GLX_INTEL_swap_event ------------------------- */
-
-#ifndef GLX_INTEL_swap_event
-#define GLX_INTEL_swap_event 1
-
-#define GLX_EXCHANGE_COMPLETE_INTEL 0x8180
-#define GLX_COPY_COMPLETE_INTEL 0x8181
-#define GLX_FLIP_COMPLETE_INTEL 0x8182
-#define GLX_BUFFER_SWAP_COMPLETE_INTEL_MASK 0x04000000
-
-#define GLXEW_INTEL_swap_event GLXEW_GET_VAR(__GLXEW_INTEL_swap_event)
-
-#endif /* GLX_INTEL_swap_event */
-
-/* -------------------------- GLX_MESA_agp_offset -------------------------- */
-
-#ifndef GLX_MESA_agp_offset
-#define GLX_MESA_agp_offset 1
-
-typedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void* pointer);
-
-#define glXGetAGPOffsetMESA GLXEW_GET_FUN(__glewXGetAGPOffsetMESA)
-
-#define GLXEW_MESA_agp_offset GLXEW_GET_VAR(__GLXEW_MESA_agp_offset)
-
-#endif /* GLX_MESA_agp_offset */
-
-/* ------------------------ GLX_MESA_copy_sub_buffer ----------------------- */
-
-#ifndef GLX_MESA_copy_sub_buffer
-#define GLX_MESA_copy_sub_buffer 1
-
-typedef void ( * PFNGLXCOPYSUBBUFFERMESAPROC) (Display* dpy, GLXDrawable drawable, int x, int y, int width, int height);
-
-#define glXCopySubBufferMESA GLXEW_GET_FUN(__glewXCopySubBufferMESA)
-
-#define GLXEW_MESA_copy_sub_buffer GLXEW_GET_VAR(__GLXEW_MESA_copy_sub_buffer)
-
-#endif /* GLX_MESA_copy_sub_buffer */
-
-/* ------------------------ GLX_MESA_pixmap_colormap ----------------------- */
-
-#ifndef GLX_MESA_pixmap_colormap
-#define GLX_MESA_pixmap_colormap 1
-
-typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display* dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
-
-#define glXCreateGLXPixmapMESA GLXEW_GET_FUN(__glewXCreateGLXPixmapMESA)
-
-#define GLXEW_MESA_pixmap_colormap GLXEW_GET_VAR(__GLXEW_MESA_pixmap_colormap)
-
-#endif /* GLX_MESA_pixmap_colormap */
-
-/* ------------------------ GLX_MESA_release_buffers ----------------------- */
-
-#ifndef GLX_MESA_release_buffers
-#define GLX_MESA_release_buffers 1
-
-typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display* dpy, GLXDrawable d);
-
-#define glXReleaseBuffersMESA GLXEW_GET_FUN(__glewXReleaseBuffersMESA)
-
-#define GLXEW_MESA_release_buffers GLXEW_GET_VAR(__GLXEW_MESA_release_buffers)
-
-#endif /* GLX_MESA_release_buffers */
-
-/* ------------------------- GLX_MESA_set_3dfx_mode ------------------------ */
-
-#ifndef GLX_MESA_set_3dfx_mode
-#define GLX_MESA_set_3dfx_mode 1
-
-#define GLX_3DFX_WINDOW_MODE_MESA 0x1
-#define GLX_3DFX_FULLSCREEN_MODE_MESA 0x2
-
-typedef GLboolean ( * PFNGLXSET3DFXMODEMESAPROC) (GLint mode);
-
-#define glXSet3DfxModeMESA GLXEW_GET_FUN(__glewXSet3DfxModeMESA)
-
-#define GLXEW_MESA_set_3dfx_mode GLXEW_GET_VAR(__GLXEW_MESA_set_3dfx_mode)
-
-#endif /* GLX_MESA_set_3dfx_mode */
-
-/* --------------------------- GLX_NV_copy_image --------------------------- */
-
-#ifndef GLX_NV_copy_image
-#define GLX_NV_copy_image 1
-
-typedef void ( * PFNGLXCOPYIMAGESUBDATANVPROC) (Display *dpy, GLXContext srcCtx, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLXContext dstCtx, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
-
-#define glXCopyImageSubDataNV GLXEW_GET_FUN(__glewXCopyImageSubDataNV)
-
-#define GLXEW_NV_copy_image GLXEW_GET_VAR(__GLXEW_NV_copy_image)
-
-#endif /* GLX_NV_copy_image */
-
-/* -------------------------- GLX_NV_float_buffer -------------------------- */
-
-#ifndef GLX_NV_float_buffer
-#define GLX_NV_float_buffer 1
-
-#define GLX_FLOAT_COMPONENTS_NV 0x20B0
-
-#define GLXEW_NV_float_buffer GLXEW_GET_VAR(__GLXEW_NV_float_buffer)
-
-#endif /* GLX_NV_float_buffer */
-
-/* -------------------------- GLX_NV_present_video ------------------------- */
-
-#ifndef GLX_NV_present_video
-#define GLX_NV_present_video 1
-
-#define GLX_NUM_VIDEO_SLOTS_NV 0x20F0
-
-typedef int ( * PFNGLXBINDVIDEODEVICENVPROC) (Display* dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);
-typedef unsigned int* ( * PFNGLXENUMERATEVIDEODEVICESNVPROC) (Display *dpy, int screen, int *nelements);
-
-#define glXBindVideoDeviceNV GLXEW_GET_FUN(__glewXBindVideoDeviceNV)
-#define glXEnumerateVideoDevicesNV GLXEW_GET_FUN(__glewXEnumerateVideoDevicesNV)
-
-#define GLXEW_NV_present_video GLXEW_GET_VAR(__GLXEW_NV_present_video)
-
-#endif /* GLX_NV_present_video */
-
-/* --------------------------- GLX_NV_swap_group --------------------------- */
-
-#ifndef GLX_NV_swap_group
-#define GLX_NV_swap_group 1
-
-typedef Bool ( * PFNGLXBINDSWAPBARRIERNVPROC) (Display* dpy, GLuint group, GLuint barrier);
-typedef Bool ( * PFNGLXJOINSWAPGROUPNVPROC) (Display* dpy, GLXDrawable drawable, GLuint group);
-typedef Bool ( * PFNGLXQUERYFRAMECOUNTNVPROC) (Display* dpy, int screen, GLuint *count);
-typedef Bool ( * PFNGLXQUERYMAXSWAPGROUPSNVPROC) (Display* dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);
-typedef Bool ( * PFNGLXQUERYSWAPGROUPNVPROC) (Display* dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);
-typedef Bool ( * PFNGLXRESETFRAMECOUNTNVPROC) (Display* dpy, int screen);
-
-#define glXBindSwapBarrierNV GLXEW_GET_FUN(__glewXBindSwapBarrierNV)
-#define glXJoinSwapGroupNV GLXEW_GET_FUN(__glewXJoinSwapGroupNV)
-#define glXQueryFrameCountNV GLXEW_GET_FUN(__glewXQueryFrameCountNV)
-#define glXQueryMaxSwapGroupsNV GLXEW_GET_FUN(__glewXQueryMaxSwapGroupsNV)
-#define glXQuerySwapGroupNV GLXEW_GET_FUN(__glewXQuerySwapGroupNV)
-#define glXResetFrameCountNV GLXEW_GET_FUN(__glewXResetFrameCountNV)
-
-#define GLXEW_NV_swap_group GLXEW_GET_VAR(__GLXEW_NV_swap_group)
-
-#endif /* GLX_NV_swap_group */
-
-/* ----------------------- GLX_NV_vertex_array_range ----------------------- */
-
-#ifndef GLX_NV_vertex_array_range
-#define GLX_NV_vertex_array_range 1
-
-typedef void * ( * PFNGLXALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority);
-typedef void ( * PFNGLXFREEMEMORYNVPROC) (void *pointer);
-
-#define glXAllocateMemoryNV GLXEW_GET_FUN(__glewXAllocateMemoryNV)
-#define glXFreeMemoryNV GLXEW_GET_FUN(__glewXFreeMemoryNV)
-
-#define GLXEW_NV_vertex_array_range GLXEW_GET_VAR(__GLXEW_NV_vertex_array_range)
-
-#endif /* GLX_NV_vertex_array_range */
-
-/* -------------------------- GLX_NV_video_output -------------------------- */
-
-#ifndef GLX_NV_video_output
-#define GLX_NV_video_output 1
-
-#define GLX_VIDEO_OUT_COLOR_NV 0x20C3
-#define GLX_VIDEO_OUT_ALPHA_NV 0x20C4
-#define GLX_VIDEO_OUT_DEPTH_NV 0x20C5
-#define GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
-#define GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
-#define GLX_VIDEO_OUT_FRAME_NV 0x20C8
-#define GLX_VIDEO_OUT_FIELD_1_NV 0x20C9
-#define GLX_VIDEO_OUT_FIELD_2_NV 0x20CA
-#define GLX_VIDEO_OUT_STACKED_FIELDS_1_2_NV 0x20CB
-#define GLX_VIDEO_OUT_STACKED_FIELDS_2_1_NV 0x20CC
-
-typedef int ( * PFNGLXBINDVIDEOIMAGENVPROC) (Display* dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);
-typedef int ( * PFNGLXGETVIDEODEVICENVPROC) (Display* dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);
-typedef int ( * PFNGLXGETVIDEOINFONVPROC) (Display* dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
-typedef int ( * PFNGLXRELEASEVIDEODEVICENVPROC) (Display* dpy, int screen, GLXVideoDeviceNV VideoDevice);
-typedef int ( * PFNGLXRELEASEVIDEOIMAGENVPROC) (Display* dpy, GLXPbuffer pbuf);
-typedef int ( * PFNGLXSENDPBUFFERTOVIDEONVPROC) (Display* dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);
-
-#define glXBindVideoImageNV GLXEW_GET_FUN(__glewXBindVideoImageNV)
-#define glXGetVideoDeviceNV GLXEW_GET_FUN(__glewXGetVideoDeviceNV)
-#define glXGetVideoInfoNV GLXEW_GET_FUN(__glewXGetVideoInfoNV)
-#define glXReleaseVideoDeviceNV GLXEW_GET_FUN(__glewXReleaseVideoDeviceNV)
-#define glXReleaseVideoImageNV GLXEW_GET_FUN(__glewXReleaseVideoImageNV)
-#define glXSendPbufferToVideoNV GLXEW_GET_FUN(__glewXSendPbufferToVideoNV)
-
-#define GLXEW_NV_video_output GLXEW_GET_VAR(__GLXEW_NV_video_output)
-
-#endif /* GLX_NV_video_output */
-
-/* -------------------------- GLX_OML_swap_method -------------------------- */
-
-#ifndef GLX_OML_swap_method
-#define GLX_OML_swap_method 1
-
-#define GLX_SWAP_METHOD_OML 0x8060
-#define GLX_SWAP_EXCHANGE_OML 0x8061
-#define GLX_SWAP_COPY_OML 0x8062
-#define GLX_SWAP_UNDEFINED_OML 0x8063
-
-#define GLXEW_OML_swap_method GLXEW_GET_VAR(__GLXEW_OML_swap_method)
-
-#endif /* GLX_OML_swap_method */
-
-/* -------------------------- GLX_OML_sync_control ------------------------- */
-
-#if !defined(GLX_OML_sync_control) && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
-#include <inttypes.h>
-#define GLX_OML_sync_control 1
-
-typedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display* dpy, GLXDrawable drawable, int32_t* numerator, int32_t* denominator);
-typedef Bool ( * PFNGLXGETSYNCVALUESOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t* ust, int64_t* msc, int64_t* sbc);
-typedef int64_t ( * PFNGLXSWAPBUFFERSMSCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder);
-typedef Bool ( * PFNGLXWAITFORMSCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder, int64_t* ust, int64_t* msc, int64_t* sbc);
-typedef Bool ( * PFNGLXWAITFORSBCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_sbc, int64_t* ust, int64_t* msc, int64_t* sbc);
-
-#define glXGetMscRateOML GLXEW_GET_FUN(__glewXGetMscRateOML)
-#define glXGetSyncValuesOML GLXEW_GET_FUN(__glewXGetSyncValuesOML)
-#define glXSwapBuffersMscOML GLXEW_GET_FUN(__glewXSwapBuffersMscOML)
-#define glXWaitForMscOML GLXEW_GET_FUN(__glewXWaitForMscOML)
-#define glXWaitForSbcOML GLXEW_GET_FUN(__glewXWaitForSbcOML)
-
-#define GLXEW_OML_sync_control GLXEW_GET_VAR(__GLXEW_OML_sync_control)
-
-#endif /* GLX_OML_sync_control */
-
-/* ------------------------ GLX_SGIS_blended_overlay ----------------------- */
-
-#ifndef GLX_SGIS_blended_overlay
-#define GLX_SGIS_blended_overlay 1
-
-#define GLX_BLENDED_RGBA_SGIS 0x8025
-
-#define GLXEW_SGIS_blended_overlay GLXEW_GET_VAR(__GLXEW_SGIS_blended_overlay)
-
-#endif /* GLX_SGIS_blended_overlay */
-
-/* -------------------------- GLX_SGIS_color_range ------------------------- */
-
-#ifndef GLX_SGIS_color_range
-#define GLX_SGIS_color_range 1
-
-#define GLX_MIN_RED_SGIS 0
-#define GLX_MAX_GREEN_SGIS 0
-#define GLX_MIN_BLUE_SGIS 0
-#define GLX_MAX_ALPHA_SGIS 0
-#define GLX_MIN_GREEN_SGIS 0
-#define GLX_MIN_ALPHA_SGIS 0
-#define GLX_MAX_RED_SGIS 0
-#define GLX_EXTENDED_RANGE_SGIS 0
-#define GLX_MAX_BLUE_SGIS 0
-
-#define GLXEW_SGIS_color_range GLXEW_GET_VAR(__GLXEW_SGIS_color_range)
-
-#endif /* GLX_SGIS_color_range */
-
-/* -------------------------- GLX_SGIS_multisample ------------------------- */
-
-#ifndef GLX_SGIS_multisample
-#define GLX_SGIS_multisample 1
-
-#define GLX_SAMPLE_BUFFERS_SGIS 100000
-#define GLX_SAMPLES_SGIS 100001
-
-#define GLXEW_SGIS_multisample GLXEW_GET_VAR(__GLXEW_SGIS_multisample)
-
-#endif /* GLX_SGIS_multisample */
-
-/* ---------------------- GLX_SGIS_shared_multisample ---------------------- */
-
-#ifndef GLX_SGIS_shared_multisample
-#define GLX_SGIS_shared_multisample 1
-
-#define GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026
-#define GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027
-
-#define GLXEW_SGIS_shared_multisample GLXEW_GET_VAR(__GLXEW_SGIS_shared_multisample)
-
-#endif /* GLX_SGIS_shared_multisample */
-
-/* --------------------------- GLX_SGIX_fbconfig --------------------------- */
-
-#ifndef GLX_SGIX_fbconfig
-#define GLX_SGIX_fbconfig 1
-
-#define GLX_WINDOW_BIT_SGIX 0x00000001
-#define GLX_RGBA_BIT_SGIX 0x00000001
-#define GLX_PIXMAP_BIT_SGIX 0x00000002
-#define GLX_COLOR_INDEX_BIT_SGIX 0x00000002
-#define GLX_SCREEN_EXT 0x800C
-#define GLX_DRAWABLE_TYPE_SGIX 0x8010
-#define GLX_RENDER_TYPE_SGIX 0x8011
-#define GLX_X_RENDERABLE_SGIX 0x8012
-#define GLX_FBCONFIG_ID_SGIX 0x8013
-#define GLX_RGBA_TYPE_SGIX 0x8014
-#define GLX_COLOR_INDEX_TYPE_SGIX 0x8015
-
-typedef XID GLXFBConfigIDSGIX;
-typedef struct __GLXFBConfigRec *GLXFBConfigSGIX;
-
-typedef GLXFBConfigSGIX* ( * PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
-typedef GLXContext ( * PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
-typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, Pixmap pixmap);
-typedef int ( * PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display* dpy, GLXFBConfigSGIX config, int attribute, int *value);
-typedef GLXFBConfigSGIX ( * PFNGLXGETFBCONFIGFROMVISUALSGIXPROC) (Display* dpy, XVisualInfo *vis);
-typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGSGIXPROC) (Display *dpy, GLXFBConfig config);
-
-#define glXChooseFBConfigSGIX GLXEW_GET_FUN(__glewXChooseFBConfigSGIX)
-#define glXCreateContextWithConfigSGIX GLXEW_GET_FUN(__glewXCreateContextWithConfigSGIX)
-#define glXCreateGLXPixmapWithConfigSGIX GLXEW_GET_FUN(__glewXCreateGLXPixmapWithConfigSGIX)
-#define glXGetFBConfigAttribSGIX GLXEW_GET_FUN(__glewXGetFBConfigAttribSGIX)
-#define glXGetFBConfigFromVisualSGIX GLXEW_GET_FUN(__glewXGetFBConfigFromVisualSGIX)
-#define glXGetVisualFromFBConfigSGIX GLXEW_GET_FUN(__glewXGetVisualFromFBConfigSGIX)
-
-#define GLXEW_SGIX_fbconfig GLXEW_GET_VAR(__GLXEW_SGIX_fbconfig)
-
-#endif /* GLX_SGIX_fbconfig */
-
-/* --------------------------- GLX_SGIX_hyperpipe -------------------------- */
-
-#ifndef GLX_SGIX_hyperpipe
-#define GLX_SGIX_hyperpipe 1
-
-#define GLX_HYPERPIPE_DISPLAY_PIPE_SGIX 0x00000001
-#define GLX_PIPE_RECT_SGIX 0x00000001
-#define GLX_PIPE_RECT_LIMITS_SGIX 0x00000002
-#define GLX_HYPERPIPE_RENDER_PIPE_SGIX 0x00000002
-#define GLX_HYPERPIPE_STEREO_SGIX 0x00000003
-#define GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX 0x00000004
-#define GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80
-#define GLX_BAD_HYPERPIPE_CONFIG_SGIX 91
-#define GLX_BAD_HYPERPIPE_SGIX 92
-#define GLX_HYPERPIPE_ID_SGIX 0x8030
-
-typedef struct {
-  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; 
-  int  networkId; 
-} GLXHyperpipeNetworkSGIX;
-typedef struct {
-  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; 
-  int XOrigin; 
-  int YOrigin; 
-  int maxHeight; 
-  int maxWidth; 
-} GLXPipeRectLimits;
-typedef struct {
-  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; 
-  int channel; 
-  unsigned int participationType; 
-  int timeSlice; 
-} GLXHyperpipeConfigSGIX;
-typedef struct {
-  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; 
-  int srcXOrigin; 
-  int srcYOrigin; 
-  int srcWidth; 
-  int srcHeight; 
-  int destXOrigin; 
-  int destYOrigin; 
-  int destWidth; 
-  int destHeight; 
-} GLXPipeRect;
-
-typedef int ( * PFNGLXBINDHYPERPIPESGIXPROC) (Display *dpy, int hpId);
-typedef int ( * PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId);
-typedef int ( * PFNGLXHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList);
-typedef int ( * PFNGLXHYPERPIPECONFIGSGIXPROC) (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);
-typedef int ( * PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList);
-typedef int ( * PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList);
-typedef GLXHyperpipeConfigSGIX * ( * PFNGLXQUERYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId, int *npipes);
-typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);
-
-#define glXBindHyperpipeSGIX GLXEW_GET_FUN(__glewXBindHyperpipeSGIX)
-#define glXDestroyHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXDestroyHyperpipeConfigSGIX)
-#define glXHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXHyperpipeAttribSGIX)
-#define glXHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXHyperpipeConfigSGIX)
-#define glXQueryHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeAttribSGIX)
-#define glXQueryHyperpipeBestAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeBestAttribSGIX)
-#define glXQueryHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeConfigSGIX)
-#define glXQueryHyperpipeNetworkSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeNetworkSGIX)
-
-#define GLXEW_SGIX_hyperpipe GLXEW_GET_VAR(__GLXEW_SGIX_hyperpipe)
-
-#endif /* GLX_SGIX_hyperpipe */
-
-/* ---------------------------- GLX_SGIX_pbuffer --------------------------- */
-
-#ifndef GLX_SGIX_pbuffer
-#define GLX_SGIX_pbuffer 1
-
-#define GLX_FRONT_LEFT_BUFFER_BIT_SGIX 0x00000001
-#define GLX_FRONT_RIGHT_BUFFER_BIT_SGIX 0x00000002
-#define GLX_PBUFFER_BIT_SGIX 0x00000004
-#define GLX_BACK_LEFT_BUFFER_BIT_SGIX 0x00000004
-#define GLX_BACK_RIGHT_BUFFER_BIT_SGIX 0x00000008
-#define GLX_AUX_BUFFERS_BIT_SGIX 0x00000010
-#define GLX_DEPTH_BUFFER_BIT_SGIX 0x00000020
-#define GLX_STENCIL_BUFFER_BIT_SGIX 0x00000040
-#define GLX_ACCUM_BUFFER_BIT_SGIX 0x00000080
-#define GLX_SAMPLE_BUFFERS_BIT_SGIX 0x00000100
-#define GLX_MAX_PBUFFER_WIDTH_SGIX 0x8016
-#define GLX_MAX_PBUFFER_HEIGHT_SGIX 0x8017
-#define GLX_MAX_PBUFFER_PIXELS_SGIX 0x8018
-#define GLX_OPTIMAL_PBUFFER_WIDTH_SGIX 0x8019
-#define GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX 0x801A
-#define GLX_PRESERVED_CONTENTS_SGIX 0x801B
-#define GLX_LARGEST_PBUFFER_SGIX 0x801C
-#define GLX_WIDTH_SGIX 0x801D
-#define GLX_HEIGHT_SGIX 0x801E
-#define GLX_EVENT_MASK_SGIX 0x801F
-#define GLX_DAMAGED_SGIX 0x8020
-#define GLX_SAVED_SGIX 0x8021
-#define GLX_WINDOW_SGIX 0x8022
-#define GLX_PBUFFER_SGIX 0x8023
-#define GLX_BUFFER_CLOBBER_MASK_SGIX 0x08000000
-
-typedef XID GLXPbufferSGIX;
-typedef struct { int type; unsigned long serial; Bool send_event; Display *display; GLXDrawable drawable; int event_type; int draw_type; unsigned int mask; int x, y; int width, height; int count; } GLXBufferClobberEventSGIX;
-
-typedef GLXPbuffer ( * PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display* dpy, GLXFBConfig config, unsigned int width, unsigned int height, int *attrib_list);
-typedef void ( * PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf);
-typedef void ( * PFNGLXGETSELECTEDEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long *mask);
-typedef void ( * PFNGLXQUERYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf, int attribute, unsigned int *value);
-typedef void ( * PFNGLXSELECTEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long mask);
-
-#define glXCreateGLXPbufferSGIX GLXEW_GET_FUN(__glewXCreateGLXPbufferSGIX)
-#define glXDestroyGLXPbufferSGIX GLXEW_GET_FUN(__glewXDestroyGLXPbufferSGIX)
-#define glXGetSelectedEventSGIX GLXEW_GET_FUN(__glewXGetSelectedEventSGIX)
-#define glXQueryGLXPbufferSGIX GLXEW_GET_FUN(__glewXQueryGLXPbufferSGIX)
-#define glXSelectEventSGIX GLXEW_GET_FUN(__glewXSelectEventSGIX)
-
-#define GLXEW_SGIX_pbuffer GLXEW_GET_VAR(__GLXEW_SGIX_pbuffer)
-
-#endif /* GLX_SGIX_pbuffer */
-
-/* ------------------------- GLX_SGIX_swap_barrier ------------------------- */
-
-#ifndef GLX_SGIX_swap_barrier
-#define GLX_SGIX_swap_barrier 1
-
-typedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);
-typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);
-
-#define glXBindSwapBarrierSGIX GLXEW_GET_FUN(__glewXBindSwapBarrierSGIX)
-#define glXQueryMaxSwapBarriersSGIX GLXEW_GET_FUN(__glewXQueryMaxSwapBarriersSGIX)
-
-#define GLXEW_SGIX_swap_barrier GLXEW_GET_VAR(__GLXEW_SGIX_swap_barrier)
-
-#endif /* GLX_SGIX_swap_barrier */
-
-/* -------------------------- GLX_SGIX_swap_group -------------------------- */
-
-#ifndef GLX_SGIX_swap_group
-#define GLX_SGIX_swap_group 1
-
-typedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);
-
-#define glXJoinSwapGroupSGIX GLXEW_GET_FUN(__glewXJoinSwapGroupSGIX)
-
-#define GLXEW_SGIX_swap_group GLXEW_GET_VAR(__GLXEW_SGIX_swap_group)
-
-#endif /* GLX_SGIX_swap_group */
-
-/* ------------------------- GLX_SGIX_video_resize ------------------------- */
-
-#ifndef GLX_SGIX_video_resize
-#define GLX_SGIX_video_resize 1
-
-#define GLX_SYNC_FRAME_SGIX 0x00000000
-#define GLX_SYNC_SWAP_SGIX 0x00000001
-
-typedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display* display, int screen, int channel, Window window);
-typedef int ( * PFNGLXCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int x, int y, int w, int h);
-typedef int ( * PFNGLXCHANNELRECTSYNCSGIXPROC) (Display* display, int screen, int channel, GLenum synctype);
-typedef int ( * PFNGLXQUERYCHANNELDELTASSGIXPROC) (Display* display, int screen, int channel, int *x, int *y, int *w, int *h);
-typedef int ( * PFNGLXQUERYCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int *dx, int *dy, int *dw, int *dh);
-
-#define glXBindChannelToWindowSGIX GLXEW_GET_FUN(__glewXBindChannelToWindowSGIX)
-#define glXChannelRectSGIX GLXEW_GET_FUN(__glewXChannelRectSGIX)
-#define glXChannelRectSyncSGIX GLXEW_GET_FUN(__glewXChannelRectSyncSGIX)
-#define glXQueryChannelDeltasSGIX GLXEW_GET_FUN(__glewXQueryChannelDeltasSGIX)
-#define glXQueryChannelRectSGIX GLXEW_GET_FUN(__glewXQueryChannelRectSGIX)
-
-#define GLXEW_SGIX_video_resize GLXEW_GET_VAR(__GLXEW_SGIX_video_resize)
-
-#endif /* GLX_SGIX_video_resize */
-
-/* ---------------------- GLX_SGIX_visual_select_group --------------------- */
-
-#ifndef GLX_SGIX_visual_select_group
-#define GLX_SGIX_visual_select_group 1
-
-#define GLX_VISUAL_SELECT_GROUP_SGIX 0x8028
-
-#define GLXEW_SGIX_visual_select_group GLXEW_GET_VAR(__GLXEW_SGIX_visual_select_group)
-
-#endif /* GLX_SGIX_visual_select_group */
-
-/* ---------------------------- GLX_SGI_cushion ---------------------------- */
-
-#ifndef GLX_SGI_cushion
-#define GLX_SGI_cushion 1
-
-typedef void ( * PFNGLXCUSHIONSGIPROC) (Display* dpy, Window window, float cushion);
-
-#define glXCushionSGI GLXEW_GET_FUN(__glewXCushionSGI)
-
-#define GLXEW_SGI_cushion GLXEW_GET_VAR(__GLXEW_SGI_cushion)
-
-#endif /* GLX_SGI_cushion */
-
-/* ----------------------- GLX_SGI_make_current_read ----------------------- */
-
-#ifndef GLX_SGI_make_current_read
-#define GLX_SGI_make_current_read 1
-
-typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLESGIPROC) (void);
-typedef Bool ( * PFNGLXMAKECURRENTREADSGIPROC) (Display* dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
-
-#define glXGetCurrentReadDrawableSGI GLXEW_GET_FUN(__glewXGetCurrentReadDrawableSGI)
-#define glXMakeCurrentReadSGI GLXEW_GET_FUN(__glewXMakeCurrentReadSGI)
-
-#define GLXEW_SGI_make_current_read GLXEW_GET_VAR(__GLXEW_SGI_make_current_read)
-
-#endif /* GLX_SGI_make_current_read */
-
-/* -------------------------- GLX_SGI_swap_control ------------------------- */
-
-#ifndef GLX_SGI_swap_control
-#define GLX_SGI_swap_control 1
-
-typedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval);
-
-#define glXSwapIntervalSGI GLXEW_GET_FUN(__glewXSwapIntervalSGI)
-
-#define GLXEW_SGI_swap_control GLXEW_GET_VAR(__GLXEW_SGI_swap_control)
-
-#endif /* GLX_SGI_swap_control */
-
-/* --------------------------- GLX_SGI_video_sync -------------------------- */
-
-#ifndef GLX_SGI_video_sync
-#define GLX_SGI_video_sync 1
-
-typedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (uint* count);
-typedef int ( * PFNGLXWAITVIDEOSYNCSGIPROC) (int divisor, int remainder, unsigned int* count);
-
-#define glXGetVideoSyncSGI GLXEW_GET_FUN(__glewXGetVideoSyncSGI)
-#define glXWaitVideoSyncSGI GLXEW_GET_FUN(__glewXWaitVideoSyncSGI)
-
-#define GLXEW_SGI_video_sync GLXEW_GET_VAR(__GLXEW_SGI_video_sync)
-
-#endif /* GLX_SGI_video_sync */
-
-/* --------------------- GLX_SUN_get_transparent_index --------------------- */
-
-#ifndef GLX_SUN_get_transparent_index
-#define GLX_SUN_get_transparent_index 1
-
-typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display* dpy, Window overlay, Window underlay, unsigned long *pTransparentIndex);
-
-#define glXGetTransparentIndexSUN GLXEW_GET_FUN(__glewXGetTransparentIndexSUN)
-
-#define GLXEW_SUN_get_transparent_index GLXEW_GET_VAR(__GLXEW_SUN_get_transparent_index)
-
-#endif /* GLX_SUN_get_transparent_index */
-
-/* -------------------------- GLX_SUN_video_resize ------------------------- */
-
-#ifndef GLX_SUN_video_resize
-#define GLX_SUN_video_resize 1
-
-#define GLX_VIDEO_RESIZE_SUN 0x8171
-#define GL_VIDEO_RESIZE_COMPENSATION_SUN 0x85CD
-
-typedef int ( * PFNGLXGETVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float* factor);
-typedef int ( * PFNGLXVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float factor);
-
-#define glXGetVideoResizeSUN GLXEW_GET_FUN(__glewXGetVideoResizeSUN)
-#define glXVideoResizeSUN GLXEW_GET_FUN(__glewXVideoResizeSUN)
-
-#define GLXEW_SUN_video_resize GLXEW_GET_VAR(__GLXEW_SUN_video_resize)
-
-#endif /* GLX_SUN_video_resize */
-
-/* ------------------------------------------------------------------------- */
-
-#ifdef GLEW_MX
-#define GLXEW_EXPORT
-#else
-#define GLXEW_EXPORT extern
-#endif /* GLEW_MX */
-
-extern PFNGLXGETCURRENTDISPLAYPROC __glewXGetCurrentDisplay;
-
-extern PFNGLXCHOOSEFBCONFIGPROC __glewXChooseFBConfig;
-extern PFNGLXCREATENEWCONTEXTPROC __glewXCreateNewContext;
-extern PFNGLXCREATEPBUFFERPROC __glewXCreatePbuffer;
-extern PFNGLXCREATEPIXMAPPROC __glewXCreatePixmap;
-extern PFNGLXCREATEWINDOWPROC __glewXCreateWindow;
-extern PFNGLXDESTROYPBUFFERPROC __glewXDestroyPbuffer;
-extern PFNGLXDESTROYPIXMAPPROC __glewXDestroyPixmap;
-extern PFNGLXDESTROYWINDOWPROC __glewXDestroyWindow;
-extern PFNGLXGETCURRENTREADDRAWABLEPROC __glewXGetCurrentReadDrawable;
-extern PFNGLXGETFBCONFIGATTRIBPROC __glewXGetFBConfigAttrib;
-extern PFNGLXGETFBCONFIGSPROC __glewXGetFBConfigs;
-extern PFNGLXGETSELECTEDEVENTPROC __glewXGetSelectedEvent;
-extern PFNGLXGETVISUALFROMFBCONFIGPROC __glewXGetVisualFromFBConfig;
-extern PFNGLXMAKECONTEXTCURRENTPROC __glewXMakeContextCurrent;
-extern PFNGLXQUERYCONTEXTPROC __glewXQueryContext;
-extern PFNGLXQUERYDRAWABLEPROC __glewXQueryDrawable;
-extern PFNGLXSELECTEVENTPROC __glewXSelectEvent;
-
-extern PFNGLXCREATECONTEXTATTRIBSARBPROC __glewXCreateContextAttribsARB;
-
-extern PFNGLXBINDTEXIMAGEATIPROC __glewXBindTexImageATI;
-extern PFNGLXDRAWABLEATTRIBATIPROC __glewXDrawableAttribATI;
-extern PFNGLXRELEASETEXIMAGEATIPROC __glewXReleaseTexImageATI;
-
-extern PFNGLXFREECONTEXTEXTPROC __glewXFreeContextEXT;
-extern PFNGLXGETCONTEXTIDEXTPROC __glewXGetContextIDEXT;
-extern PFNGLXIMPORTCONTEXTEXTPROC __glewXImportContextEXT;
-extern PFNGLXQUERYCONTEXTINFOEXTPROC __glewXQueryContextInfoEXT;
-
-extern PFNGLXSWAPINTERVALEXTPROC __glewXSwapIntervalEXT;
-
-extern PFNGLXBINDTEXIMAGEEXTPROC __glewXBindTexImageEXT;
-extern PFNGLXRELEASETEXIMAGEEXTPROC __glewXReleaseTexImageEXT;
-
-extern PFNGLXGETAGPOFFSETMESAPROC __glewXGetAGPOffsetMESA;
-
-extern PFNGLXCOPYSUBBUFFERMESAPROC __glewXCopySubBufferMESA;
-
-extern PFNGLXCREATEGLXPIXMAPMESAPROC __glewXCreateGLXPixmapMESA;
-
-extern PFNGLXRELEASEBUFFERSMESAPROC __glewXReleaseBuffersMESA;
-
-extern PFNGLXSET3DFXMODEMESAPROC __glewXSet3DfxModeMESA;
-
-extern PFNGLXCOPYIMAGESUBDATANVPROC __glewXCopyImageSubDataNV;
-
-extern PFNGLXBINDVIDEODEVICENVPROC __glewXBindVideoDeviceNV;
-extern PFNGLXENUMERATEVIDEODEVICESNVPROC __glewXEnumerateVideoDevicesNV;
-
-extern PFNGLXBINDSWAPBARRIERNVPROC __glewXBindSwapBarrierNV;
-extern PFNGLXJOINSWAPGROUPNVPROC __glewXJoinSwapGroupNV;
-extern PFNGLXQUERYFRAMECOUNTNVPROC __glewXQueryFrameCountNV;
-extern PFNGLXQUERYMAXSWAPGROUPSNVPROC __glewXQueryMaxSwapGroupsNV;
-extern PFNGLXQUERYSWAPGROUPNVPROC __glewXQuerySwapGroupNV;
-extern PFNGLXRESETFRAMECOUNTNVPROC __glewXResetFrameCountNV;
-
-extern PFNGLXALLOCATEMEMORYNVPROC __glewXAllocateMemoryNV;
-extern PFNGLXFREEMEMORYNVPROC __glewXFreeMemoryNV;
-
-extern PFNGLXBINDVIDEOIMAGENVPROC __glewXBindVideoImageNV;
-extern PFNGLXGETVIDEODEVICENVPROC __glewXGetVideoDeviceNV;
-extern PFNGLXGETVIDEOINFONVPROC __glewXGetVideoInfoNV;
-extern PFNGLXRELEASEVIDEODEVICENVPROC __glewXReleaseVideoDeviceNV;
-extern PFNGLXRELEASEVIDEOIMAGENVPROC __glewXReleaseVideoImageNV;
-extern PFNGLXSENDPBUFFERTOVIDEONVPROC __glewXSendPbufferToVideoNV;
-
-#ifdef GLX_OML_sync_control
-extern PFNGLXGETMSCRATEOMLPROC __glewXGetMscRateOML;
-extern PFNGLXGETSYNCVALUESOMLPROC __glewXGetSyncValuesOML;
-extern PFNGLXSWAPBUFFERSMSCOMLPROC __glewXSwapBuffersMscOML;
-extern PFNGLXWAITFORMSCOMLPROC __glewXWaitForMscOML;
-extern PFNGLXWAITFORSBCOMLPROC __glewXWaitForSbcOML;
-#endif
-
-extern PFNGLXCHOOSEFBCONFIGSGIXPROC __glewXChooseFBConfigSGIX;
-extern PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC __glewXCreateContextWithConfigSGIX;
-extern PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC __glewXCreateGLXPixmapWithConfigSGIX;
-extern PFNGLXGETFBCONFIGATTRIBSGIXPROC __glewXGetFBConfigAttribSGIX;
-extern PFNGLXGETFBCONFIGFROMVISUALSGIXPROC __glewXGetFBConfigFromVisualSGIX;
-extern PFNGLXGETVISUALFROMFBCONFIGSGIXPROC __glewXGetVisualFromFBConfigSGIX;
-
-extern PFNGLXBINDHYPERPIPESGIXPROC __glewXBindHyperpipeSGIX;
-extern PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC __glewXDestroyHyperpipeConfigSGIX;
-extern PFNGLXHYPERPIPEATTRIBSGIXPROC __glewXHyperpipeAttribSGIX;
-extern PFNGLXHYPERPIPECONFIGSGIXPROC __glewXHyperpipeConfigSGIX;
-extern PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC __glewXQueryHyperpipeAttribSGIX;
-extern PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC __glewXQueryHyperpipeBestAttribSGIX;
-extern PFNGLXQUERYHYPERPIPECONFIGSGIXPROC __glewXQueryHyperpipeConfigSGIX;
-extern PFNGLXQUERYHYPERPIPENETWORKSGIXPROC __glewXQueryHyperpipeNetworkSGIX;
-
-extern PFNGLXCREATEGLXPBUFFERSGIXPROC __glewXCreateGLXPbufferSGIX;
-extern PFNGLXDESTROYGLXPBUFFERSGIXPROC __glewXDestroyGLXPbufferSGIX;
-extern PFNGLXGETSELECTEDEVENTSGIXPROC __glewXGetSelectedEventSGIX;
-extern PFNGLXQUERYGLXPBUFFERSGIXPROC __glewXQueryGLXPbufferSGIX;
-extern PFNGLXSELECTEVENTSGIXPROC __glewXSelectEventSGIX;
-
-extern PFNGLXBINDSWAPBARRIERSGIXPROC __glewXBindSwapBarrierSGIX;
-extern PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC __glewXQueryMaxSwapBarriersSGIX;
-
-extern PFNGLXJOINSWAPGROUPSGIXPROC __glewXJoinSwapGroupSGIX;
-
-extern PFNGLXBINDCHANNELTOWINDOWSGIXPROC __glewXBindChannelToWindowSGIX;
-extern PFNGLXCHANNELRECTSGIXPROC __glewXChannelRectSGIX;
-extern PFNGLXCHANNELRECTSYNCSGIXPROC __glewXChannelRectSyncSGIX;
-extern PFNGLXQUERYCHANNELDELTASSGIXPROC __glewXQueryChannelDeltasSGIX;
-extern PFNGLXQUERYCHANNELRECTSGIXPROC __glewXQueryChannelRectSGIX;
-
-extern PFNGLXCUSHIONSGIPROC __glewXCushionSGI;
-
-extern PFNGLXGETCURRENTREADDRAWABLESGIPROC __glewXGetCurrentReadDrawableSGI;
-extern PFNGLXMAKECURRENTREADSGIPROC __glewXMakeCurrentReadSGI;
-
-extern PFNGLXSWAPINTERVALSGIPROC __glewXSwapIntervalSGI;
-
-extern PFNGLXGETVIDEOSYNCSGIPROC __glewXGetVideoSyncSGI;
-extern PFNGLXWAITVIDEOSYNCSGIPROC __glewXWaitVideoSyncSGI;
-
-extern PFNGLXGETTRANSPARENTINDEXSUNPROC __glewXGetTransparentIndexSUN;
-
-extern PFNGLXGETVIDEORESIZESUNPROC __glewXGetVideoResizeSUN;
-extern PFNGLXVIDEORESIZESUNPROC __glewXVideoResizeSUN;
-
-#if defined(GLEW_MX)
-struct GLXEWContextStruct
-{
-#endif /* GLEW_MX */
-
-GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_0;
-GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_1;
-GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_2;
-GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_3;
-GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_4;
-GLXEW_EXPORT GLboolean __GLXEW_3DFX_multisample;
-GLXEW_EXPORT GLboolean __GLXEW_ARB_create_context;
-GLXEW_EXPORT GLboolean __GLXEW_ARB_create_context_profile;
-GLXEW_EXPORT GLboolean __GLXEW_ARB_fbconfig_float;
-GLXEW_EXPORT GLboolean __GLXEW_ARB_framebuffer_sRGB;
-GLXEW_EXPORT GLboolean __GLXEW_ARB_get_proc_address;
-GLXEW_EXPORT GLboolean __GLXEW_ARB_multisample;
-GLXEW_EXPORT GLboolean __GLXEW_ARB_vertex_buffer_object;
-GLXEW_EXPORT GLboolean __GLXEW_ATI_pixel_format_float;
-GLXEW_EXPORT GLboolean __GLXEW_ATI_render_texture;
-GLXEW_EXPORT GLboolean __GLXEW_EXT_fbconfig_packed_float;
-GLXEW_EXPORT GLboolean __GLXEW_EXT_framebuffer_sRGB;
-GLXEW_EXPORT GLboolean __GLXEW_EXT_import_context;
-GLXEW_EXPORT GLboolean __GLXEW_EXT_scene_marker;
-GLXEW_EXPORT GLboolean __GLXEW_EXT_swap_control;
-GLXEW_EXPORT GLboolean __GLXEW_EXT_texture_from_pixmap;
-GLXEW_EXPORT GLboolean __GLXEW_EXT_visual_info;
-GLXEW_EXPORT GLboolean __GLXEW_EXT_visual_rating;
-GLXEW_EXPORT GLboolean __GLXEW_INTEL_swap_event;
-GLXEW_EXPORT GLboolean __GLXEW_MESA_agp_offset;
-GLXEW_EXPORT GLboolean __GLXEW_MESA_copy_sub_buffer;
-GLXEW_EXPORT GLboolean __GLXEW_MESA_pixmap_colormap;
-GLXEW_EXPORT GLboolean __GLXEW_MESA_release_buffers;
-GLXEW_EXPORT GLboolean __GLXEW_MESA_set_3dfx_mode;
-GLXEW_EXPORT GLboolean __GLXEW_NV_copy_image;
-GLXEW_EXPORT GLboolean __GLXEW_NV_float_buffer;
-GLXEW_EXPORT GLboolean __GLXEW_NV_present_video;
-GLXEW_EXPORT GLboolean __GLXEW_NV_swap_group;
-GLXEW_EXPORT GLboolean __GLXEW_NV_vertex_array_range;
-GLXEW_EXPORT GLboolean __GLXEW_NV_video_output;
-GLXEW_EXPORT GLboolean __GLXEW_OML_swap_method;
-GLXEW_EXPORT GLboolean __GLXEW_OML_sync_control;
-GLXEW_EXPORT GLboolean __GLXEW_SGIS_blended_overlay;
-GLXEW_EXPORT GLboolean __GLXEW_SGIS_color_range;
-GLXEW_EXPORT GLboolean __GLXEW_SGIS_multisample;
-GLXEW_EXPORT GLboolean __GLXEW_SGIS_shared_multisample;
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_fbconfig;
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_hyperpipe;
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_pbuffer;
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_swap_barrier;
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_swap_group;
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_video_resize;
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_visual_select_group;
-GLXEW_EXPORT GLboolean __GLXEW_SGI_cushion;
-GLXEW_EXPORT GLboolean __GLXEW_SGI_make_current_read;
-GLXEW_EXPORT GLboolean __GLXEW_SGI_swap_control;
-GLXEW_EXPORT GLboolean __GLXEW_SGI_video_sync;
-GLXEW_EXPORT GLboolean __GLXEW_SUN_get_transparent_index;
-GLXEW_EXPORT GLboolean __GLXEW_SUN_video_resize;
-
-#ifdef GLEW_MX
-}; /* GLXEWContextStruct */
-#endif /* GLEW_MX */
-
-/* ------------------------------------------------------------------------ */
-
-#ifdef GLEW_MX
-
-typedef struct GLXEWContextStruct GLXEWContext;
-extern GLenum glxewContextInit (GLXEWContext* ctx);
-extern GLboolean glxewContextIsSupported (GLXEWContext* ctx, const char* name);
-
-#define glxewInit() glxewContextInit(glxewGetContext())
-#define glxewIsSupported(x) glxewContextIsSupported(glxewGetContext(), x)
-
-#define GLXEW_GET_VAR(x) (*(const GLboolean*)&(glxewGetContext()->x))
-#define GLXEW_GET_FUN(x) x
-
-#else /* GLEW_MX */
-
-#define GLXEW_GET_VAR(x) (*(const GLboolean*)&x)
-#define GLXEW_GET_FUN(x) x
-
-extern GLboolean glxewIsSupported (const char* name);
-
-#endif /* GLEW_MX */
-
-extern GLboolean glxewGetExtension (const char* name);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __glxew_h__ */
diff --git a/src/other/glew/include/GL/wglew.h b/src/other/glew/include/GL/wglew.h
deleted file mode 100644
index 7c7a380..0000000
--- a/src/other/glew/include/GL/wglew.h
+++ /dev/null
@@ -1,1247 +0,0 @@
-/*
-** The OpenGL Extension Wrangler Library
-** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-** Copyright (C) 2002, Lev Povalahev
-** All rights reserved.
-** 
-** Redistribution and use in source and binary forms, with or without 
-** modification, are permitted provided that the following conditions are met:
-** 
-** * Redistributions of source code must retain the above copyright notice, 
-**   this list of conditions and the following disclaimer.
-** * Redistributions in binary form must reproduce the above copyright notice, 
-**   this list of conditions and the following disclaimer in the documentation 
-**   and/or other materials provided with the distribution.
-** * The name of the author may be used to endorse or promote products 
-**   derived from this software without specific prior written permission.
-**
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-** THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/*
-** Copyright (c) 2007 The Khronos Group Inc.
-** 
-** Permission is hereby granted, free of charge, to any person obtaining a
-** copy of this software and/or associated documentation files (the
-** "Materials"), to deal in the Materials without restriction, including
-** without limitation the rights to use, copy, modify, merge, publish,
-** distribute, sublicense, and/or sell copies of the Materials, and to
-** permit persons to whom the Materials are furnished to do so, subject to
-** the following conditions:
-** 
-** The above copyright notice and this permission notice shall be included
-** in all copies or substantial portions of the Materials.
-** 
-** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
-*/
-
-#ifndef __wglew_h__
-#define __wglew_h__
-#define __WGLEW_H__
-
-#ifdef __wglext_h_
-#error wglext.h included before wglew.h
-#endif
-
-#define __wglext_h_
-
-#if !defined(WINAPI)
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN 1
-#  endif
-#include <windows.h>
-#  undef WIN32_LEAN_AND_MEAN
-#endif
-
-/*
- * GLEW_STATIC needs to be set when using the static version.
- * GLEW_BUILD is set when building the DLL version.
- */
-#ifdef GLEW_STATIC
-#  define GLEWAPI extern
-#else
-#  ifdef GLEW_BUILD
-#    define GLEWAPI extern __declspec(dllexport)
-#  else
-#    define GLEWAPI extern __declspec(dllimport)
-#  endif
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* -------------------------- WGL_3DFX_multisample ------------------------- */
-
-#ifndef WGL_3DFX_multisample
-#define WGL_3DFX_multisample 1
-
-#define WGL_SAMPLE_BUFFERS_3DFX 0x2060
-#define WGL_SAMPLES_3DFX 0x2061
-
-#define WGLEW_3DFX_multisample WGLEW_GET_VAR(__WGLEW_3DFX_multisample)
-
-#endif /* WGL_3DFX_multisample */
-
-/* ------------------------- WGL_3DL_stereo_control ------------------------ */
-
-#ifndef WGL_3DL_stereo_control
-#define WGL_3DL_stereo_control 1
-
-#define WGL_STEREO_EMITTER_ENABLE_3DL 0x2055
-#define WGL_STEREO_EMITTER_DISABLE_3DL 0x2056
-#define WGL_STEREO_POLARITY_NORMAL_3DL 0x2057
-#define WGL_STEREO_POLARITY_INVERT_3DL 0x2058
-
-typedef BOOL (WINAPI * PFNWGLSETSTEREOEMITTERSTATE3DLPROC) (HDC hDC, UINT uState);
-
-#define wglSetStereoEmitterState3DL WGLEW_GET_FUN(__wglewSetStereoEmitterState3DL)
-
-#define WGLEW_3DL_stereo_control WGLEW_GET_VAR(__WGLEW_3DL_stereo_control)
-
-#endif /* WGL_3DL_stereo_control */
-
-/* ------------------------ WGL_AMD_gpu_association ------------------------ */
-
-#ifndef WGL_AMD_gpu_association
-#define WGL_AMD_gpu_association 1
-
-#define WGL_GPU_VENDOR_AMD 0x1F00
-#define WGL_GPU_RENDERER_STRING_AMD 0x1F01
-#define WGL_GPU_OPENGL_VERSION_STRING_AMD 0x1F02
-#define WGL_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2
-#define WGL_GPU_RAM_AMD 0x21A3
-#define WGL_GPU_CLOCK_AMD 0x21A4
-#define WGL_GPU_NUM_PIPES_AMD 0x21A5
-#define WGL_GPU_NUM_SIMD_AMD 0x21A6
-#define WGL_GPU_NUM_RB_AMD 0x21A7
-#define WGL_GPU_NUM_SPI_AMD 0x21A8
-
-typedef VOID (WINAPI * PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC) (HGLRC dstCtx, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
-typedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC) (UINT id);
-typedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC) (UINT id, HGLRC hShareContext, const int* attribList);
-typedef BOOL (WINAPI * PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC) (HGLRC hglrc);
-typedef UINT (WINAPI * PFNWGLGETCONTEXTGPUIDAMDPROC) (HGLRC hglrc);
-typedef HGLRC (WINAPI * PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC) (void);
-typedef UINT (WINAPI * PFNWGLGETGPUIDSAMDPROC) (UINT maxCount, UINT* ids);
-typedef INT (WINAPI * PFNWGLGETGPUINFOAMDPROC) (UINT id, INT property, GLenum dataType, UINT size, void* data);
-typedef BOOL (WINAPI * PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC) (HGLRC hglrc);
-
-#define wglBlitContextFramebufferAMD WGLEW_GET_FUN(__wglewBlitContextFramebufferAMD)
-#define wglCreateAssociatedContextAMD WGLEW_GET_FUN(__wglewCreateAssociatedContextAMD)
-#define wglCreateAssociatedContextAttribsAMD WGLEW_GET_FUN(__wglewCreateAssociatedContextAttribsAMD)
-#define wglDeleteAssociatedContextAMD WGLEW_GET_FUN(__wglewDeleteAssociatedContextAMD)
-#define wglGetContextGPUIDAMD WGLEW_GET_FUN(__wglewGetContextGPUIDAMD)
-#define wglGetCurrentAssociatedContextAMD WGLEW_GET_FUN(__wglewGetCurrentAssociatedContextAMD)
-#define wglGetGPUIDsAMD WGLEW_GET_FUN(__wglewGetGPUIDsAMD)
-#define wglGetGPUInfoAMD WGLEW_GET_FUN(__wglewGetGPUInfoAMD)
-#define wglMakeAssociatedContextCurrentAMD WGLEW_GET_FUN(__wglewMakeAssociatedContextCurrentAMD)
-
-#define WGLEW_AMD_gpu_association WGLEW_GET_VAR(__WGLEW_AMD_gpu_association)
-
-#endif /* WGL_AMD_gpu_association */
-
-/* ------------------------- WGL_ARB_buffer_region ------------------------- */
-
-#ifndef WGL_ARB_buffer_region
-#define WGL_ARB_buffer_region 1
-
-#define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
-#define WGL_BACK_COLOR_BUFFER_BIT_ARB 0x00000002
-#define WGL_DEPTH_BUFFER_BIT_ARB 0x00000004
-#define WGL_STENCIL_BUFFER_BIT_ARB 0x00000008
-
-typedef HANDLE (WINAPI * PFNWGLCREATEBUFFERREGIONARBPROC) (HDC hDC, int iLayerPlane, UINT uType);
-typedef VOID (WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC) (HANDLE hRegion);
-typedef BOOL (WINAPI * PFNWGLRESTOREBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
-typedef BOOL (WINAPI * PFNWGLSAVEBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height);
-
-#define wglCreateBufferRegionARB WGLEW_GET_FUN(__wglewCreateBufferRegionARB)
-#define wglDeleteBufferRegionARB WGLEW_GET_FUN(__wglewDeleteBufferRegionARB)
-#define wglRestoreBufferRegionARB WGLEW_GET_FUN(__wglewRestoreBufferRegionARB)
-#define wglSaveBufferRegionARB WGLEW_GET_FUN(__wglewSaveBufferRegionARB)
-
-#define WGLEW_ARB_buffer_region WGLEW_GET_VAR(__WGLEW_ARB_buffer_region)
-
-#endif /* WGL_ARB_buffer_region */
-
-/* ------------------------- WGL_ARB_create_context ------------------------ */
-
-#ifndef WGL_ARB_create_context
-#define WGL_ARB_create_context 1
-
-#define WGL_CONTEXT_DEBUG_BIT_ARB 0x0001
-#define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002
-#define WGL_CONTEXT_MAJOR_VERSION_ARB 0x2091
-#define WGL_CONTEXT_MINOR_VERSION_ARB 0x2092
-#define WGL_CONTEXT_LAYER_PLANE_ARB 0x2093
-#define WGL_CONTEXT_FLAGS_ARB 0x2094
-
-typedef HGLRC (WINAPI * PFNWGLCREATECONTEXTATTRIBSARBPROC) (HDC hDC, HGLRC hShareContext, const int* attribList);
-
-#define wglCreateContextAttribsARB WGLEW_GET_FUN(__wglewCreateContextAttribsARB)
-
-#define WGLEW_ARB_create_context WGLEW_GET_VAR(__WGLEW_ARB_create_context)
-
-#endif /* WGL_ARB_create_context */
-
-/* --------------------- WGL_ARB_create_context_profile -------------------- */
-
-#ifndef WGL_ARB_create_context_profile
-#define WGL_ARB_create_context_profile 1
-
-#define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
-#define WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
-#define WGL_CONTEXT_PROFILE_MASK_ARB 0x9126
-
-#define WGLEW_ARB_create_context_profile WGLEW_GET_VAR(__WGLEW_ARB_create_context_profile)
-
-#endif /* WGL_ARB_create_context_profile */
-
-/* ----------------------- WGL_ARB_extensions_string ----------------------- */
-
-#ifndef WGL_ARB_extensions_string
-#define WGL_ARB_extensions_string 1
-
-typedef const char* (WINAPI * PFNWGLGETEXTENSIONSSTRINGARBPROC) (HDC hdc);
-
-#define wglGetExtensionsStringARB WGLEW_GET_FUN(__wglewGetExtensionsStringARB)
-
-#define WGLEW_ARB_extensions_string WGLEW_GET_VAR(__WGLEW_ARB_extensions_string)
-
-#endif /* WGL_ARB_extensions_string */
-
-/* ------------------------ WGL_ARB_framebuffer_sRGB ----------------------- */
-
-#ifndef WGL_ARB_framebuffer_sRGB
-#define WGL_ARB_framebuffer_sRGB 1
-
-#define WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20A9
-
-#define WGLEW_ARB_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_ARB_framebuffer_sRGB)
-
-#endif /* WGL_ARB_framebuffer_sRGB */
-
-/* ----------------------- WGL_ARB_make_current_read ----------------------- */
-
-#ifndef WGL_ARB_make_current_read
-#define WGL_ARB_make_current_read 1
-
-#define ERROR_INVALID_PIXEL_TYPE_ARB 0x2043
-#define ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
-
-typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCARBPROC) (VOID);
-typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTARBPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
-
-#define wglGetCurrentReadDCARB WGLEW_GET_FUN(__wglewGetCurrentReadDCARB)
-#define wglMakeContextCurrentARB WGLEW_GET_FUN(__wglewMakeContextCurrentARB)
-
-#define WGLEW_ARB_make_current_read WGLEW_GET_VAR(__WGLEW_ARB_make_current_read)
-
-#endif /* WGL_ARB_make_current_read */
-
-/* -------------------------- WGL_ARB_multisample -------------------------- */
-
-#ifndef WGL_ARB_multisample
-#define WGL_ARB_multisample 1
-
-#define WGL_SAMPLE_BUFFERS_ARB 0x2041
-#define WGL_SAMPLES_ARB 0x2042
-
-#define WGLEW_ARB_multisample WGLEW_GET_VAR(__WGLEW_ARB_multisample)
-
-#endif /* WGL_ARB_multisample */
-
-/* ---------------------------- WGL_ARB_pbuffer ---------------------------- */
-
-#ifndef WGL_ARB_pbuffer
-#define WGL_ARB_pbuffer 1
-
-#define WGL_DRAW_TO_PBUFFER_ARB 0x202D
-#define WGL_MAX_PBUFFER_PIXELS_ARB 0x202E
-#define WGL_MAX_PBUFFER_WIDTH_ARB 0x202F
-#define WGL_MAX_PBUFFER_HEIGHT_ARB 0x2030
-#define WGL_PBUFFER_LARGEST_ARB 0x2033
-#define WGL_PBUFFER_WIDTH_ARB 0x2034
-#define WGL_PBUFFER_HEIGHT_ARB 0x2035
-#define WGL_PBUFFER_LOST_ARB 0x2036
-
-DECLARE_HANDLE(HPBUFFERARB);
-
-typedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int* piAttribList);
-typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFERARBPROC) (HPBUFFERARB hPbuffer);
-typedef HDC (WINAPI * PFNWGLGETPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer);
-typedef BOOL (WINAPI * PFNWGLQUERYPBUFFERARBPROC) (HPBUFFERARB hPbuffer, int iAttribute, int* piValue);
-typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer, HDC hDC);
-
-#define wglCreatePbufferARB WGLEW_GET_FUN(__wglewCreatePbufferARB)
-#define wglDestroyPbufferARB WGLEW_GET_FUN(__wglewDestroyPbufferARB)
-#define wglGetPbufferDCARB WGLEW_GET_FUN(__wglewGetPbufferDCARB)
-#define wglQueryPbufferARB WGLEW_GET_FUN(__wglewQueryPbufferARB)
-#define wglReleasePbufferDCARB WGLEW_GET_FUN(__wglewReleasePbufferDCARB)
-
-#define WGLEW_ARB_pbuffer WGLEW_GET_VAR(__WGLEW_ARB_pbuffer)
-
-#endif /* WGL_ARB_pbuffer */
-
-/* -------------------------- WGL_ARB_pixel_format ------------------------- */
-
-#ifndef WGL_ARB_pixel_format
-#define WGL_ARB_pixel_format 1
-
-#define WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000
-#define WGL_DRAW_TO_WINDOW_ARB 0x2001
-#define WGL_DRAW_TO_BITMAP_ARB 0x2002
-#define WGL_ACCELERATION_ARB 0x2003
-#define WGL_NEED_PALETTE_ARB 0x2004
-#define WGL_NEED_SYSTEM_PALETTE_ARB 0x2005
-#define WGL_SWAP_LAYER_BUFFERS_ARB 0x2006
-#define WGL_SWAP_METHOD_ARB 0x2007
-#define WGL_NUMBER_OVERLAYS_ARB 0x2008
-#define WGL_NUMBER_UNDERLAYS_ARB 0x2009
-#define WGL_TRANSPARENT_ARB 0x200A
-#define WGL_SHARE_DEPTH_ARB 0x200C
-#define WGL_SHARE_STENCIL_ARB 0x200D
-#define WGL_SHARE_ACCUM_ARB 0x200E
-#define WGL_SUPPORT_GDI_ARB 0x200F
-#define WGL_SUPPORT_OPENGL_ARB 0x2010
-#define WGL_DOUBLE_BUFFER_ARB 0x2011
-#define WGL_STEREO_ARB 0x2012
-#define WGL_PIXEL_TYPE_ARB 0x2013
-#define WGL_COLOR_BITS_ARB 0x2014
-#define WGL_RED_BITS_ARB 0x2015
-#define WGL_RED_SHIFT_ARB 0x2016
-#define WGL_GREEN_BITS_ARB 0x2017
-#define WGL_GREEN_SHIFT_ARB 0x2018
-#define WGL_BLUE_BITS_ARB 0x2019
-#define WGL_BLUE_SHIFT_ARB 0x201A
-#define WGL_ALPHA_BITS_ARB 0x201B
-#define WGL_ALPHA_SHIFT_ARB 0x201C
-#define WGL_ACCUM_BITS_ARB 0x201D
-#define WGL_ACCUM_RED_BITS_ARB 0x201E
-#define WGL_ACCUM_GREEN_BITS_ARB 0x201F
-#define WGL_ACCUM_BLUE_BITS_ARB 0x2020
-#define WGL_ACCUM_ALPHA_BITS_ARB 0x2021
-#define WGL_DEPTH_BITS_ARB 0x2022
-#define WGL_STENCIL_BITS_ARB 0x2023
-#define WGL_AUX_BUFFERS_ARB 0x2024
-#define WGL_NO_ACCELERATION_ARB 0x2025
-#define WGL_GENERIC_ACCELERATION_ARB 0x2026
-#define WGL_FULL_ACCELERATION_ARB 0x2027
-#define WGL_SWAP_EXCHANGE_ARB 0x2028
-#define WGL_SWAP_COPY_ARB 0x2029
-#define WGL_SWAP_UNDEFINED_ARB 0x202A
-#define WGL_TYPE_RGBA_ARB 0x202B
-#define WGL_TYPE_COLORINDEX_ARB 0x202C
-#define WGL_TRANSPARENT_RED_VALUE_ARB 0x2037
-#define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
-#define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
-#define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
-#define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
-
-typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const int* piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
-typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int* piAttributes, FLOAT *pfValues);
-typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int* piAttributes, int *piValues);
-
-#define wglChoosePixelFormatARB WGLEW_GET_FUN(__wglewChoosePixelFormatARB)
-#define wglGetPixelFormatAttribfvARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvARB)
-#define wglGetPixelFormatAttribivARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribivARB)
-
-#define WGLEW_ARB_pixel_format WGLEW_GET_VAR(__WGLEW_ARB_pixel_format)
-
-#endif /* WGL_ARB_pixel_format */
-
-/* ----------------------- WGL_ARB_pixel_format_float ---------------------- */
-
-#ifndef WGL_ARB_pixel_format_float
-#define WGL_ARB_pixel_format_float 1
-
-#define WGL_TYPE_RGBA_FLOAT_ARB 0x21A0
-
-#define WGLEW_ARB_pixel_format_float WGLEW_GET_VAR(__WGLEW_ARB_pixel_format_float)
-
-#endif /* WGL_ARB_pixel_format_float */
-
-/* ------------------------- WGL_ARB_render_texture ------------------------ */
-
-#ifndef WGL_ARB_render_texture
-#define WGL_ARB_render_texture 1
-
-#define WGL_BIND_TO_TEXTURE_RGB_ARB 0x2070
-#define WGL_BIND_TO_TEXTURE_RGBA_ARB 0x2071
-#define WGL_TEXTURE_FORMAT_ARB 0x2072
-#define WGL_TEXTURE_TARGET_ARB 0x2073
-#define WGL_MIPMAP_TEXTURE_ARB 0x2074
-#define WGL_TEXTURE_RGB_ARB 0x2075
-#define WGL_TEXTURE_RGBA_ARB 0x2076
-#define WGL_NO_TEXTURE_ARB 0x2077
-#define WGL_TEXTURE_CUBE_MAP_ARB 0x2078
-#define WGL_TEXTURE_1D_ARB 0x2079
-#define WGL_TEXTURE_2D_ARB 0x207A
-#define WGL_MIPMAP_LEVEL_ARB 0x207B
-#define WGL_CUBE_MAP_FACE_ARB 0x207C
-#define WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D
-#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E
-#define WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F
-#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080
-#define WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081
-#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082
-#define WGL_FRONT_LEFT_ARB 0x2083
-#define WGL_FRONT_RIGHT_ARB 0x2084
-#define WGL_BACK_LEFT_ARB 0x2085
-#define WGL_BACK_RIGHT_ARB 0x2086
-#define WGL_AUX0_ARB 0x2087
-#define WGL_AUX1_ARB 0x2088
-#define WGL_AUX2_ARB 0x2089
-#define WGL_AUX3_ARB 0x208A
-#define WGL_AUX4_ARB 0x208B
-#define WGL_AUX5_ARB 0x208C
-#define WGL_AUX6_ARB 0x208D
-#define WGL_AUX7_ARB 0x208E
-#define WGL_AUX8_ARB 0x208F
-#define WGL_AUX9_ARB 0x2090
-
-typedef BOOL (WINAPI * PFNWGLBINDTEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
-typedef BOOL (WINAPI * PFNWGLRELEASETEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
-typedef BOOL (WINAPI * PFNWGLSETPBUFFERATTRIBARBPROC) (HPBUFFERARB hPbuffer, const int* piAttribList);
-
-#define wglBindTexImageARB WGLEW_GET_FUN(__wglewBindTexImageARB)
-#define wglReleaseTexImageARB WGLEW_GET_FUN(__wglewReleaseTexImageARB)
-#define wglSetPbufferAttribARB WGLEW_GET_FUN(__wglewSetPbufferAttribARB)
-
-#define WGLEW_ARB_render_texture WGLEW_GET_VAR(__WGLEW_ARB_render_texture)
-
-#endif /* WGL_ARB_render_texture */
-
-/* ----------------------- WGL_ATI_pixel_format_float ---------------------- */
-
-#ifndef WGL_ATI_pixel_format_float
-#define WGL_ATI_pixel_format_float 1
-
-#define WGL_TYPE_RGBA_FLOAT_ATI 0x21A0
-#define GL_RGBA_FLOAT_MODE_ATI 0x8820
-#define GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI 0x8835
-
-#define WGLEW_ATI_pixel_format_float WGLEW_GET_VAR(__WGLEW_ATI_pixel_format_float)
-
-#endif /* WGL_ATI_pixel_format_float */
-
-/* -------------------- WGL_ATI_render_texture_rectangle ------------------- */
-
-#ifndef WGL_ATI_render_texture_rectangle
-#define WGL_ATI_render_texture_rectangle 1
-
-#define WGL_TEXTURE_RECTANGLE_ATI 0x21A5
-
-#define WGLEW_ATI_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_ATI_render_texture_rectangle)
-
-#endif /* WGL_ATI_render_texture_rectangle */
-
-/* -------------------------- WGL_EXT_depth_float -------------------------- */
-
-#ifndef WGL_EXT_depth_float
-#define WGL_EXT_depth_float 1
-
-#define WGL_DEPTH_FLOAT_EXT 0x2040
-
-#define WGLEW_EXT_depth_float WGLEW_GET_VAR(__WGLEW_EXT_depth_float)
-
-#endif /* WGL_EXT_depth_float */
-
-/* ---------------------- WGL_EXT_display_color_table ---------------------- */
-
-#ifndef WGL_EXT_display_color_table
-#define WGL_EXT_display_color_table 1
-
-typedef GLboolean (WINAPI * PFNWGLBINDDISPLAYCOLORTABLEEXTPROC) (GLushort id);
-typedef GLboolean (WINAPI * PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC) (GLushort id);
-typedef void (WINAPI * PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) (GLushort id);
-typedef GLboolean (WINAPI * PFNWGLLOADDISPLAYCOLORTABLEEXTPROC) (GLushort* table, GLuint length);
-
-#define wglBindDisplayColorTableEXT WGLEW_GET_FUN(__wglewBindDisplayColorTableEXT)
-#define wglCreateDisplayColorTableEXT WGLEW_GET_FUN(__wglewCreateDisplayColorTableEXT)
-#define wglDestroyDisplayColorTableEXT WGLEW_GET_FUN(__wglewDestroyDisplayColorTableEXT)
-#define wglLoadDisplayColorTableEXT WGLEW_GET_FUN(__wglewLoadDisplayColorTableEXT)
-
-#define WGLEW_EXT_display_color_table WGLEW_GET_VAR(__WGLEW_EXT_display_color_table)
-
-#endif /* WGL_EXT_display_color_table */
-
-/* ----------------------- WGL_EXT_extensions_string ----------------------- */
-
-#ifndef WGL_EXT_extensions_string
-#define WGL_EXT_extensions_string 1
-
-typedef const char* (WINAPI * PFNWGLGETEXTENSIONSSTRINGEXTPROC) (void);
-
-#define wglGetExtensionsStringEXT WGLEW_GET_FUN(__wglewGetExtensionsStringEXT)
-
-#define WGLEW_EXT_extensions_string WGLEW_GET_VAR(__WGLEW_EXT_extensions_string)
-
-#endif /* WGL_EXT_extensions_string */
-
-/* ------------------------ WGL_EXT_framebuffer_sRGB ----------------------- */
-
-#ifndef WGL_EXT_framebuffer_sRGB
-#define WGL_EXT_framebuffer_sRGB 1
-
-#define WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9
-
-#define WGLEW_EXT_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_EXT_framebuffer_sRGB)
-
-#endif /* WGL_EXT_framebuffer_sRGB */
-
-/* ----------------------- WGL_EXT_make_current_read ----------------------- */
-
-#ifndef WGL_EXT_make_current_read
-#define WGL_EXT_make_current_read 1
-
-#define ERROR_INVALID_PIXEL_TYPE_EXT 0x2043
-
-typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCEXTPROC) (VOID);
-typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTEXTPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
-
-#define wglGetCurrentReadDCEXT WGLEW_GET_FUN(__wglewGetCurrentReadDCEXT)
-#define wglMakeContextCurrentEXT WGLEW_GET_FUN(__wglewMakeContextCurrentEXT)
-
-#define WGLEW_EXT_make_current_read WGLEW_GET_VAR(__WGLEW_EXT_make_current_read)
-
-#endif /* WGL_EXT_make_current_read */
-
-/* -------------------------- WGL_EXT_multisample -------------------------- */
-
-#ifndef WGL_EXT_multisample
-#define WGL_EXT_multisample 1
-
-#define WGL_SAMPLE_BUFFERS_EXT 0x2041
-#define WGL_SAMPLES_EXT 0x2042
-
-#define WGLEW_EXT_multisample WGLEW_GET_VAR(__WGLEW_EXT_multisample)
-
-#endif /* WGL_EXT_multisample */
-
-/* ---------------------------- WGL_EXT_pbuffer ---------------------------- */
-
-#ifndef WGL_EXT_pbuffer
-#define WGL_EXT_pbuffer 1
-
-#define WGL_DRAW_TO_PBUFFER_EXT 0x202D
-#define WGL_MAX_PBUFFER_PIXELS_EXT 0x202E
-#define WGL_MAX_PBUFFER_WIDTH_EXT 0x202F
-#define WGL_MAX_PBUFFER_HEIGHT_EXT 0x2030
-#define WGL_OPTIMAL_PBUFFER_WIDTH_EXT 0x2031
-#define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
-#define WGL_PBUFFER_LARGEST_EXT 0x2033
-#define WGL_PBUFFER_WIDTH_EXT 0x2034
-#define WGL_PBUFFER_HEIGHT_EXT 0x2035
-
-DECLARE_HANDLE(HPBUFFEREXT);
-
-typedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int* piAttribList);
-typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer);
-typedef HDC (WINAPI * PFNWGLGETPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer);
-typedef BOOL (WINAPI * PFNWGLQUERYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer, int iAttribute, int* piValue);
-typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer, HDC hDC);
-
-#define wglCreatePbufferEXT WGLEW_GET_FUN(__wglewCreatePbufferEXT)
-#define wglDestroyPbufferEXT WGLEW_GET_FUN(__wglewDestroyPbufferEXT)
-#define wglGetPbufferDCEXT WGLEW_GET_FUN(__wglewGetPbufferDCEXT)
-#define wglQueryPbufferEXT WGLEW_GET_FUN(__wglewQueryPbufferEXT)
-#define wglReleasePbufferDCEXT WGLEW_GET_FUN(__wglewReleasePbufferDCEXT)
-
-#define WGLEW_EXT_pbuffer WGLEW_GET_VAR(__WGLEW_EXT_pbuffer)
-
-#endif /* WGL_EXT_pbuffer */
-
-/* -------------------------- WGL_EXT_pixel_format ------------------------- */
-
-#ifndef WGL_EXT_pixel_format
-#define WGL_EXT_pixel_format 1
-
-#define WGL_NUMBER_PIXEL_FORMATS_EXT 0x2000
-#define WGL_DRAW_TO_WINDOW_EXT 0x2001
-#define WGL_DRAW_TO_BITMAP_EXT 0x2002
-#define WGL_ACCELERATION_EXT 0x2003
-#define WGL_NEED_PALETTE_EXT 0x2004
-#define WGL_NEED_SYSTEM_PALETTE_EXT 0x2005
-#define WGL_SWAP_LAYER_BUFFERS_EXT 0x2006
-#define WGL_SWAP_METHOD_EXT 0x2007
-#define WGL_NUMBER_OVERLAYS_EXT 0x2008
-#define WGL_NUMBER_UNDERLAYS_EXT 0x2009
-#define WGL_TRANSPARENT_EXT 0x200A
-#define WGL_TRANSPARENT_VALUE_EXT 0x200B
-#define WGL_SHARE_DEPTH_EXT 0x200C
-#define WGL_SHARE_STENCIL_EXT 0x200D
-#define WGL_SHARE_ACCUM_EXT 0x200E
-#define WGL_SUPPORT_GDI_EXT 0x200F
-#define WGL_SUPPORT_OPENGL_EXT 0x2010
-#define WGL_DOUBLE_BUFFER_EXT 0x2011
-#define WGL_STEREO_EXT 0x2012
-#define WGL_PIXEL_TYPE_EXT 0x2013
-#define WGL_COLOR_BITS_EXT 0x2014
-#define WGL_RED_BITS_EXT 0x2015
-#define WGL_RED_SHIFT_EXT 0x2016
-#define WGL_GREEN_BITS_EXT 0x2017
-#define WGL_GREEN_SHIFT_EXT 0x2018
-#define WGL_BLUE_BITS_EXT 0x2019
-#define WGL_BLUE_SHIFT_EXT 0x201A
-#define WGL_ALPHA_BITS_EXT 0x201B
-#define WGL_ALPHA_SHIFT_EXT 0x201C
-#define WGL_ACCUM_BITS_EXT 0x201D
-#define WGL_ACCUM_RED_BITS_EXT 0x201E
-#define WGL_ACCUM_GREEN_BITS_EXT 0x201F
-#define WGL_ACCUM_BLUE_BITS_EXT 0x2020
-#define WGL_ACCUM_ALPHA_BITS_EXT 0x2021
-#define WGL_DEPTH_BITS_EXT 0x2022
-#define WGL_STENCIL_BITS_EXT 0x2023
-#define WGL_AUX_BUFFERS_EXT 0x2024
-#define WGL_NO_ACCELERATION_EXT 0x2025
-#define WGL_GENERIC_ACCELERATION_EXT 0x2026
-#define WGL_FULL_ACCELERATION_EXT 0x2027
-#define WGL_SWAP_EXCHANGE_EXT 0x2028
-#define WGL_SWAP_COPY_EXT 0x2029
-#define WGL_SWAP_UNDEFINED_EXT 0x202A
-#define WGL_TYPE_RGBA_EXT 0x202B
-#define WGL_TYPE_COLORINDEX_EXT 0x202C
-
-typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const int* piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
-typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int* piAttributes, FLOAT *pfValues);
-typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int* piAttributes, int *piValues);
-
-#define wglChoosePixelFormatEXT WGLEW_GET_FUN(__wglewChoosePixelFormatEXT)
-#define wglGetPixelFormatAttribfvEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvEXT)
-#define wglGetPixelFormatAttribivEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribivEXT)
-
-#define WGLEW_EXT_pixel_format WGLEW_GET_VAR(__WGLEW_EXT_pixel_format)
-
-#endif /* WGL_EXT_pixel_format */
-
-/* ------------------- WGL_EXT_pixel_format_packed_float ------------------- */
-
-#ifndef WGL_EXT_pixel_format_packed_float
-#define WGL_EXT_pixel_format_packed_float 1
-
-#define WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8
-
-#define WGLEW_EXT_pixel_format_packed_float WGLEW_GET_VAR(__WGLEW_EXT_pixel_format_packed_float)
-
-#endif /* WGL_EXT_pixel_format_packed_float */
-
-/* -------------------------- WGL_EXT_swap_control ------------------------- */
-
-#ifndef WGL_EXT_swap_control
-#define WGL_EXT_swap_control 1
-
-typedef int (WINAPI * PFNWGLGETSWAPINTERVALEXTPROC) (void);
-typedef BOOL (WINAPI * PFNWGLSWAPINTERVALEXTPROC) (int interval);
-
-#define wglGetSwapIntervalEXT WGLEW_GET_FUN(__wglewGetSwapIntervalEXT)
-#define wglSwapIntervalEXT WGLEW_GET_FUN(__wglewSwapIntervalEXT)
-
-#define WGLEW_EXT_swap_control WGLEW_GET_VAR(__WGLEW_EXT_swap_control)
-
-#endif /* WGL_EXT_swap_control */
-
-/* --------------------- WGL_I3D_digital_video_control --------------------- */
-
-#ifndef WGL_I3D_digital_video_control
-#define WGL_I3D_digital_video_control 1
-
-#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
-#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
-#define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
-#define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
-
-typedef BOOL (WINAPI * PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int* piValue);
-typedef BOOL (WINAPI * PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int* piValue);
-
-#define wglGetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewGetDigitalVideoParametersI3D)
-#define wglSetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewSetDigitalVideoParametersI3D)
-
-#define WGLEW_I3D_digital_video_control WGLEW_GET_VAR(__WGLEW_I3D_digital_video_control)
-
-#endif /* WGL_I3D_digital_video_control */
-
-/* ----------------------------- WGL_I3D_gamma ----------------------------- */
-
-#ifndef WGL_I3D_gamma
-#define WGL_I3D_gamma 1
-
-#define WGL_GAMMA_TABLE_SIZE_I3D 0x204E
-#define WGL_GAMMA_EXCLUDE_DESKTOP_I3D 0x204F
-
-typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, USHORT* puRed, USHORT *puGreen, USHORT *puBlue);
-typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int* piValue);
-typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, const USHORT* puRed, const USHORT *puGreen, const USHORT *puBlue);
-typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int* piValue);
-
-#define wglGetGammaTableI3D WGLEW_GET_FUN(__wglewGetGammaTableI3D)
-#define wglGetGammaTableParametersI3D WGLEW_GET_FUN(__wglewGetGammaTableParametersI3D)
-#define wglSetGammaTableI3D WGLEW_GET_FUN(__wglewSetGammaTableI3D)
-#define wglSetGammaTableParametersI3D WGLEW_GET_FUN(__wglewSetGammaTableParametersI3D)
-
-#define WGLEW_I3D_gamma WGLEW_GET_VAR(__WGLEW_I3D_gamma)
-
-#endif /* WGL_I3D_gamma */
-
-/* ---------------------------- WGL_I3D_genlock ---------------------------- */
-
-#ifndef WGL_I3D_genlock
-#define WGL_I3D_genlock 1
-
-#define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
-#define WGL_GENLOCK_SOURCE_EXTERNAL_SYNC_I3D 0x2045
-#define WGL_GENLOCK_SOURCE_EXTERNAL_FIELD_I3D 0x2046
-#define WGL_GENLOCK_SOURCE_EXTERNAL_TTL_I3D 0x2047
-#define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
-#define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
-#define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
-#define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
-#define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
-
-typedef BOOL (WINAPI * PFNWGLDISABLEGENLOCKI3DPROC) (HDC hDC);
-typedef BOOL (WINAPI * PFNWGLENABLEGENLOCKI3DPROC) (HDC hDC);
-typedef BOOL (WINAPI * PFNWGLGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT uRate);
-typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT uDelay);
-typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT uEdge);
-typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEI3DPROC) (HDC hDC, UINT uSource);
-typedef BOOL (WINAPI * PFNWGLGETGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT* uRate);
-typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT* uDelay);
-typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT* uEdge);
-typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEI3DPROC) (HDC hDC, UINT* uSource);
-typedef BOOL (WINAPI * PFNWGLISENABLEDGENLOCKI3DPROC) (HDC hDC, BOOL* pFlag);
-typedef BOOL (WINAPI * PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC) (HDC hDC, UINT* uMaxLineDelay, UINT *uMaxPixelDelay);
-
-#define wglDisableGenlockI3D WGLEW_GET_FUN(__wglewDisableGenlockI3D)
-#define wglEnableGenlockI3D WGLEW_GET_FUN(__wglewEnableGenlockI3D)
-#define wglGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGenlockSampleRateI3D)
-#define wglGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGenlockSourceDelayI3D)
-#define wglGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGenlockSourceEdgeI3D)
-#define wglGenlockSourceI3D WGLEW_GET_FUN(__wglewGenlockSourceI3D)
-#define wglGetGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGetGenlockSampleRateI3D)
-#define wglGetGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGetGenlockSourceDelayI3D)
-#define wglGetGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGetGenlockSourceEdgeI3D)
-#define wglGetGenlockSourceI3D WGLEW_GET_FUN(__wglewGetGenlockSourceI3D)
-#define wglIsEnabledGenlockI3D WGLEW_GET_FUN(__wglewIsEnabledGenlockI3D)
-#define wglQueryGenlockMaxSourceDelayI3D WGLEW_GET_FUN(__wglewQueryGenlockMaxSourceDelayI3D)
-
-#define WGLEW_I3D_genlock WGLEW_GET_VAR(__WGLEW_I3D_genlock)
-
-#endif /* WGL_I3D_genlock */
-
-/* -------------------------- WGL_I3D_image_buffer ------------------------- */
-
-#ifndef WGL_I3D_image_buffer
-#define WGL_I3D_image_buffer 1
-
-#define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
-#define WGL_IMAGE_BUFFER_LOCK_I3D 0x00000002
-
-typedef BOOL (WINAPI * PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC) (HDC hdc, HANDLE* pEvent, LPVOID *pAddress, DWORD *pSize, UINT count);
-typedef LPVOID (WINAPI * PFNWGLCREATEIMAGEBUFFERI3DPROC) (HDC hDC, DWORD dwSize, UINT uFlags);
-typedef BOOL (WINAPI * PFNWGLDESTROYIMAGEBUFFERI3DPROC) (HDC hDC, LPVOID pAddress);
-typedef BOOL (WINAPI * PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC) (HDC hdc, LPVOID* pAddress, UINT count);
-
-#define wglAssociateImageBufferEventsI3D WGLEW_GET_FUN(__wglewAssociateImageBufferEventsI3D)
-#define wglCreateImageBufferI3D WGLEW_GET_FUN(__wglewCreateImageBufferI3D)
-#define wglDestroyImageBufferI3D WGLEW_GET_FUN(__wglewDestroyImageBufferI3D)
-#define wglReleaseImageBufferEventsI3D WGLEW_GET_FUN(__wglewReleaseImageBufferEventsI3D)
-
-#define WGLEW_I3D_image_buffer WGLEW_GET_VAR(__WGLEW_I3D_image_buffer)
-
-#endif /* WGL_I3D_image_buffer */
-
-/* ------------------------ WGL_I3D_swap_frame_lock ------------------------ */
-
-#ifndef WGL_I3D_swap_frame_lock
-#define WGL_I3D_swap_frame_lock 1
-
-typedef BOOL (WINAPI * PFNWGLDISABLEFRAMELOCKI3DPROC) (VOID);
-typedef BOOL (WINAPI * PFNWGLENABLEFRAMELOCKI3DPROC) (VOID);
-typedef BOOL (WINAPI * PFNWGLISENABLEDFRAMELOCKI3DPROC) (BOOL* pFlag);
-typedef BOOL (WINAPI * PFNWGLQUERYFRAMELOCKMASTERI3DPROC) (BOOL* pFlag);
-
-#define wglDisableFrameLockI3D WGLEW_GET_FUN(__wglewDisableFrameLockI3D)
-#define wglEnableFrameLockI3D WGLEW_GET_FUN(__wglewEnableFrameLockI3D)
-#define wglIsEnabledFrameLockI3D WGLEW_GET_FUN(__wglewIsEnabledFrameLockI3D)
-#define wglQueryFrameLockMasterI3D WGLEW_GET_FUN(__wglewQueryFrameLockMasterI3D)
-
-#define WGLEW_I3D_swap_frame_lock WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_lock)
-
-#endif /* WGL_I3D_swap_frame_lock */
-
-/* ------------------------ WGL_I3D_swap_frame_usage ----------------------- */
-
-#ifndef WGL_I3D_swap_frame_usage
-#define WGL_I3D_swap_frame_usage 1
-
-typedef BOOL (WINAPI * PFNWGLBEGINFRAMETRACKINGI3DPROC) (void);
-typedef BOOL (WINAPI * PFNWGLENDFRAMETRACKINGI3DPROC) (void);
-typedef BOOL (WINAPI * PFNWGLGETFRAMEUSAGEI3DPROC) (float* pUsage);
-typedef BOOL (WINAPI * PFNWGLQUERYFRAMETRACKINGI3DPROC) (DWORD* pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);
-
-#define wglBeginFrameTrackingI3D WGLEW_GET_FUN(__wglewBeginFrameTrackingI3D)
-#define wglEndFrameTrackingI3D WGLEW_GET_FUN(__wglewEndFrameTrackingI3D)
-#define wglGetFrameUsageI3D WGLEW_GET_FUN(__wglewGetFrameUsageI3D)
-#define wglQueryFrameTrackingI3D WGLEW_GET_FUN(__wglewQueryFrameTrackingI3D)
-
-#define WGLEW_I3D_swap_frame_usage WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_usage)
-
-#endif /* WGL_I3D_swap_frame_usage */
-
-/* --------------------------- WGL_NV_copy_image --------------------------- */
-
-#ifndef WGL_NV_copy_image
-#define WGL_NV_copy_image 1
-
-typedef BOOL (WINAPI * PFNWGLCOPYIMAGESUBDATANVPROC) (HGLRC hSrcRC, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, HGLRC hDstRC, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
-
-#define wglCopyImageSubDataNV WGLEW_GET_FUN(__wglewCopyImageSubDataNV)
-
-#define WGLEW_NV_copy_image WGLEW_GET_VAR(__WGLEW_NV_copy_image)
-
-#endif /* WGL_NV_copy_image */
-
-/* -------------------------- WGL_NV_float_buffer -------------------------- */
-
-#ifndef WGL_NV_float_buffer
-#define WGL_NV_float_buffer 1
-
-#define WGL_FLOAT_COMPONENTS_NV 0x20B0
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
-#define WGL_TEXTURE_FLOAT_R_NV 0x20B5
-#define WGL_TEXTURE_FLOAT_RG_NV 0x20B6
-#define WGL_TEXTURE_FLOAT_RGB_NV 0x20B7
-#define WGL_TEXTURE_FLOAT_RGBA_NV 0x20B8
-
-#define WGLEW_NV_float_buffer WGLEW_GET_VAR(__WGLEW_NV_float_buffer)
-
-#endif /* WGL_NV_float_buffer */
-
-/* -------------------------- WGL_NV_gpu_affinity -------------------------- */
-
-#ifndef WGL_NV_gpu_affinity
-#define WGL_NV_gpu_affinity 1
-
-#define WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0
-#define WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1
-
-DECLARE_HANDLE(HGPUNV);
-typedef struct _GPU_DEVICE {
-  DWORD cb; 
-  CHAR DeviceName[32]; 
-  CHAR DeviceString[128]; 
-  DWORD Flags; 
-  RECT rcVirtualScreen; 
-} GPU_DEVICE, *PGPU_DEVICE;
-
-typedef HDC (WINAPI * PFNWGLCREATEAFFINITYDCNVPROC) (const HGPUNV *phGpuList);
-typedef BOOL (WINAPI * PFNWGLDELETEDCNVPROC) (HDC hdc);
-typedef BOOL (WINAPI * PFNWGLENUMGPUDEVICESNVPROC) (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice);
-typedef BOOL (WINAPI * PFNWGLENUMGPUSFROMAFFINITYDCNVPROC) (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu);
-typedef BOOL (WINAPI * PFNWGLENUMGPUSNVPROC) (UINT iGpuIndex, HGPUNV *phGpu);
-
-#define wglCreateAffinityDCNV WGLEW_GET_FUN(__wglewCreateAffinityDCNV)
-#define wglDeleteDCNV WGLEW_GET_FUN(__wglewDeleteDCNV)
-#define wglEnumGpuDevicesNV WGLEW_GET_FUN(__wglewEnumGpuDevicesNV)
-#define wglEnumGpusFromAffinityDCNV WGLEW_GET_FUN(__wglewEnumGpusFromAffinityDCNV)
-#define wglEnumGpusNV WGLEW_GET_FUN(__wglewEnumGpusNV)
-
-#define WGLEW_NV_gpu_affinity WGLEW_GET_VAR(__WGLEW_NV_gpu_affinity)
-
-#endif /* WGL_NV_gpu_affinity */
-
-/* -------------------------- WGL_NV_present_video ------------------------- */
-
-#ifndef WGL_NV_present_video
-#define WGL_NV_present_video 1
-
-#define WGL_NUM_VIDEO_SLOTS_NV 0x20F0
-
-DECLARE_HANDLE(HVIDEOOUTPUTDEVICENV);
-
-typedef BOOL (WINAPI * PFNWGLBINDVIDEODEVICENVPROC) (HDC hDc, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int* piAttribList);
-typedef int (WINAPI * PFNWGLENUMERATEVIDEODEVICESNVPROC) (HDC hDc, HVIDEOOUTPUTDEVICENV* phDeviceList);
-typedef BOOL (WINAPI * PFNWGLQUERYCURRENTCONTEXTNVPROC) (int iAttribute, int* piValue);
-
-#define wglBindVideoDeviceNV WGLEW_GET_FUN(__wglewBindVideoDeviceNV)
-#define wglEnumerateVideoDevicesNV WGLEW_GET_FUN(__wglewEnumerateVideoDevicesNV)
-#define wglQueryCurrentContextNV WGLEW_GET_FUN(__wglewQueryCurrentContextNV)
-
-#define WGLEW_NV_present_video WGLEW_GET_VAR(__WGLEW_NV_present_video)
-
-#endif /* WGL_NV_present_video */
-
-/* ---------------------- WGL_NV_render_depth_texture ---------------------- */
-
-#ifndef WGL_NV_render_depth_texture
-#define WGL_NV_render_depth_texture 1
-
-#define WGL_NO_TEXTURE_ARB 0x2077
-#define WGL_BIND_TO_TEXTURE_DEPTH_NV 0x20A3
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
-#define WGL_DEPTH_TEXTURE_FORMAT_NV 0x20A5
-#define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
-#define WGL_DEPTH_COMPONENT_NV 0x20A7
-
-#define WGLEW_NV_render_depth_texture WGLEW_GET_VAR(__WGLEW_NV_render_depth_texture)
-
-#endif /* WGL_NV_render_depth_texture */
-
-/* -------------------- WGL_NV_render_texture_rectangle -------------------- */
-
-#ifndef WGL_NV_render_texture_rectangle
-#define WGL_NV_render_texture_rectangle 1
-
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
-#define WGL_TEXTURE_RECTANGLE_NV 0x20A2
-
-#define WGLEW_NV_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_NV_render_texture_rectangle)
-
-#endif /* WGL_NV_render_texture_rectangle */
-
-/* --------------------------- WGL_NV_swap_group --------------------------- */
-
-#ifndef WGL_NV_swap_group
-#define WGL_NV_swap_group 1
-
-typedef BOOL (WINAPI * PFNWGLBINDSWAPBARRIERNVPROC) (GLuint group, GLuint barrier);
-typedef BOOL (WINAPI * PFNWGLJOINSWAPGROUPNVPROC) (HDC hDC, GLuint group);
-typedef BOOL (WINAPI * PFNWGLQUERYFRAMECOUNTNVPROC) (HDC hDC, GLuint* count);
-typedef BOOL (WINAPI * PFNWGLQUERYMAXSWAPGROUPSNVPROC) (HDC hDC, GLuint* maxGroups, GLuint *maxBarriers);
-typedef BOOL (WINAPI * PFNWGLQUERYSWAPGROUPNVPROC) (HDC hDC, GLuint* group, GLuint *barrier);
-typedef BOOL (WINAPI * PFNWGLRESETFRAMECOUNTNVPROC) (HDC hDC);
-
-#define wglBindSwapBarrierNV WGLEW_GET_FUN(__wglewBindSwapBarrierNV)
-#define wglJoinSwapGroupNV WGLEW_GET_FUN(__wglewJoinSwapGroupNV)
-#define wglQueryFrameCountNV WGLEW_GET_FUN(__wglewQueryFrameCountNV)
-#define wglQueryMaxSwapGroupsNV WGLEW_GET_FUN(__wglewQueryMaxSwapGroupsNV)
-#define wglQuerySwapGroupNV WGLEW_GET_FUN(__wglewQuerySwapGroupNV)
-#define wglResetFrameCountNV WGLEW_GET_FUN(__wglewResetFrameCountNV)
-
-#define WGLEW_NV_swap_group WGLEW_GET_VAR(__WGLEW_NV_swap_group)
-
-#endif /* WGL_NV_swap_group */
-
-/* ----------------------- WGL_NV_vertex_array_range ----------------------- */
-
-#ifndef WGL_NV_vertex_array_range
-#define WGL_NV_vertex_array_range 1
-
-typedef void * (WINAPI * PFNWGLALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority);
-typedef void (WINAPI * PFNWGLFREEMEMORYNVPROC) (void *pointer);
-
-#define wglAllocateMemoryNV WGLEW_GET_FUN(__wglewAllocateMemoryNV)
-#define wglFreeMemoryNV WGLEW_GET_FUN(__wglewFreeMemoryNV)
-
-#define WGLEW_NV_vertex_array_range WGLEW_GET_VAR(__WGLEW_NV_vertex_array_range)
-
-#endif /* WGL_NV_vertex_array_range */
-
-/* -------------------------- WGL_NV_video_output -------------------------- */
-
-#ifndef WGL_NV_video_output
-#define WGL_NV_video_output 1
-
-#define WGL_BIND_TO_VIDEO_RGB_NV 0x20C0
-#define WGL_BIND_TO_VIDEO_RGBA_NV 0x20C1
-#define WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV 0x20C2
-#define WGL_VIDEO_OUT_COLOR_NV 0x20C3
-#define WGL_VIDEO_OUT_ALPHA_NV 0x20C4
-#define WGL_VIDEO_OUT_DEPTH_NV 0x20C5
-#define WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
-#define WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
-#define WGL_VIDEO_OUT_FRAME 0x20C8
-#define WGL_VIDEO_OUT_FIELD_1 0x20C9
-#define WGL_VIDEO_OUT_FIELD_2 0x20CA
-#define WGL_VIDEO_OUT_STACKED_FIELDS_1_2 0x20CB
-#define WGL_VIDEO_OUT_STACKED_FIELDS_2_1 0x20CC
-
-DECLARE_HANDLE(HPVIDEODEV);
-
-typedef BOOL (WINAPI * PFNWGLBINDVIDEOIMAGENVPROC) (HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer);
-typedef BOOL (WINAPI * PFNWGLGETVIDEODEVICENVPROC) (HDC hDC, int numDevices, HPVIDEODEV* hVideoDevice);
-typedef BOOL (WINAPI * PFNWGLGETVIDEOINFONVPROC) (HPVIDEODEV hpVideoDevice, unsigned long* pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
-typedef BOOL (WINAPI * PFNWGLRELEASEVIDEODEVICENVPROC) (HPVIDEODEV hVideoDevice);
-typedef BOOL (WINAPI * PFNWGLRELEASEVIDEOIMAGENVPROC) (HPBUFFERARB hPbuffer, int iVideoBuffer);
-typedef BOOL (WINAPI * PFNWGLSENDPBUFFERTOVIDEONVPROC) (HPBUFFERARB hPbuffer, int iBufferType, unsigned long* pulCounterPbuffer, BOOL bBlock);
-
-#define wglBindVideoImageNV WGLEW_GET_FUN(__wglewBindVideoImageNV)
-#define wglGetVideoDeviceNV WGLEW_GET_FUN(__wglewGetVideoDeviceNV)
-#define wglGetVideoInfoNV WGLEW_GET_FUN(__wglewGetVideoInfoNV)
-#define wglReleaseVideoDeviceNV WGLEW_GET_FUN(__wglewReleaseVideoDeviceNV)
-#define wglReleaseVideoImageNV WGLEW_GET_FUN(__wglewReleaseVideoImageNV)
-#define wglSendPbufferToVideoNV WGLEW_GET_FUN(__wglewSendPbufferToVideoNV)
-
-#define WGLEW_NV_video_output WGLEW_GET_VAR(__WGLEW_NV_video_output)
-
-#endif /* WGL_NV_video_output */
-
-/* -------------------------- WGL_OML_sync_control ------------------------- */
-
-#ifndef WGL_OML_sync_control
-#define WGL_OML_sync_control 1
-
-typedef BOOL (WINAPI * PFNWGLGETMSCRATEOMLPROC) (HDC hdc, INT32* numerator, INT32 *denominator);
-typedef BOOL (WINAPI * PFNWGLGETSYNCVALUESOMLPROC) (HDC hdc, INT64* ust, INT64 *msc, INT64 *sbc);
-typedef INT64 (WINAPI * PFNWGLSWAPBUFFERSMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);
-typedef INT64 (WINAPI * PFNWGLSWAPLAYERBUFFERSMSCOMLPROC) (HDC hdc, INT fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);
-typedef BOOL (WINAPI * PFNWGLWAITFORMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64* ust, INT64 *msc, INT64 *sbc);
-typedef BOOL (WINAPI * PFNWGLWAITFORSBCOMLPROC) (HDC hdc, INT64 target_sbc, INT64* ust, INT64 *msc, INT64 *sbc);
-
-#define wglGetMscRateOML WGLEW_GET_FUN(__wglewGetMscRateOML)
-#define wglGetSyncValuesOML WGLEW_GET_FUN(__wglewGetSyncValuesOML)
-#define wglSwapBuffersMscOML WGLEW_GET_FUN(__wglewSwapBuffersMscOML)
-#define wglSwapLayerBuffersMscOML WGLEW_GET_FUN(__wglewSwapLayerBuffersMscOML)
-#define wglWaitForMscOML WGLEW_GET_FUN(__wglewWaitForMscOML)
-#define wglWaitForSbcOML WGLEW_GET_FUN(__wglewWaitForSbcOML)
-
-#define WGLEW_OML_sync_control WGLEW_GET_VAR(__WGLEW_OML_sync_control)
-
-#endif /* WGL_OML_sync_control */
-
-/* ------------------------------------------------------------------------- */
-
-#ifdef GLEW_MX
-#define WGLEW_EXPORT
-#else
-#define WGLEW_EXPORT GLEWAPI
-#endif /* GLEW_MX */
-
-#ifdef GLEW_MX
-struct WGLEWContextStruct
-{
-#endif /* GLEW_MX */
-
-WGLEW_EXPORT PFNWGLSETSTEREOEMITTERSTATE3DLPROC __wglewSetStereoEmitterState3DL;
-
-WGLEW_EXPORT PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC __wglewBlitContextFramebufferAMD;
-WGLEW_EXPORT PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC __wglewCreateAssociatedContextAMD;
-WGLEW_EXPORT PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC __wglewCreateAssociatedContextAttribsAMD;
-WGLEW_EXPORT PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC __wglewDeleteAssociatedContextAMD;
-WGLEW_EXPORT PFNWGLGETCONTEXTGPUIDAMDPROC __wglewGetContextGPUIDAMD;
-WGLEW_EXPORT PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC __wglewGetCurrentAssociatedContextAMD;
-WGLEW_EXPORT PFNWGLGETGPUIDSAMDPROC __wglewGetGPUIDsAMD;
-WGLEW_EXPORT PFNWGLGETGPUINFOAMDPROC __wglewGetGPUInfoAMD;
-WGLEW_EXPORT PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC __wglewMakeAssociatedContextCurrentAMD;
-
-WGLEW_EXPORT PFNWGLCREATEBUFFERREGIONARBPROC __wglewCreateBufferRegionARB;
-WGLEW_EXPORT PFNWGLDELETEBUFFERREGIONARBPROC __wglewDeleteBufferRegionARB;
-WGLEW_EXPORT PFNWGLRESTOREBUFFERREGIONARBPROC __wglewRestoreBufferRegionARB;
-WGLEW_EXPORT PFNWGLSAVEBUFFERREGIONARBPROC __wglewSaveBufferRegionARB;
-
-WGLEW_EXPORT PFNWGLCREATECONTEXTATTRIBSARBPROC __wglewCreateContextAttribsARB;
-
-WGLEW_EXPORT PFNWGLGETEXTENSIONSSTRINGARBPROC __wglewGetExtensionsStringARB;
-
-WGLEW_EXPORT PFNWGLGETCURRENTREADDCARBPROC __wglewGetCurrentReadDCARB;
-WGLEW_EXPORT PFNWGLMAKECONTEXTCURRENTARBPROC __wglewMakeContextCurrentARB;
-
-WGLEW_EXPORT PFNWGLCREATEPBUFFERARBPROC __wglewCreatePbufferARB;
-WGLEW_EXPORT PFNWGLDESTROYPBUFFERARBPROC __wglewDestroyPbufferARB;
-WGLEW_EXPORT PFNWGLGETPBUFFERDCARBPROC __wglewGetPbufferDCARB;
-WGLEW_EXPORT PFNWGLQUERYPBUFFERARBPROC __wglewQueryPbufferARB;
-WGLEW_EXPORT PFNWGLRELEASEPBUFFERDCARBPROC __wglewReleasePbufferDCARB;
-
-WGLEW_EXPORT PFNWGLCHOOSEPIXELFORMATARBPROC __wglewChoosePixelFormatARB;
-WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBFVARBPROC __wglewGetPixelFormatAttribfvARB;
-WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBIVARBPROC __wglewGetPixelFormatAttribivARB;
-
-WGLEW_EXPORT PFNWGLBINDTEXIMAGEARBPROC __wglewBindTexImageARB;
-WGLEW_EXPORT PFNWGLRELEASETEXIMAGEARBPROC __wglewReleaseTexImageARB;
-WGLEW_EXPORT PFNWGLSETPBUFFERATTRIBARBPROC __wglewSetPbufferAttribARB;
-
-WGLEW_EXPORT PFNWGLBINDDISPLAYCOLORTABLEEXTPROC __wglewBindDisplayColorTableEXT;
-WGLEW_EXPORT PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC __wglewCreateDisplayColorTableEXT;
-WGLEW_EXPORT PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC __wglewDestroyDisplayColorTableEXT;
-WGLEW_EXPORT PFNWGLLOADDISPLAYCOLORTABLEEXTPROC __wglewLoadDisplayColorTableEXT;
-
-WGLEW_EXPORT PFNWGLGETEXTENSIONSSTRINGEXTPROC __wglewGetExtensionsStringEXT;
-
-WGLEW_EXPORT PFNWGLGETCURRENTREADDCEXTPROC __wglewGetCurrentReadDCEXT;
-WGLEW_EXPORT PFNWGLMAKECONTEXTCURRENTEXTPROC __wglewMakeContextCurrentEXT;
-
-WGLEW_EXPORT PFNWGLCREATEPBUFFEREXTPROC __wglewCreatePbufferEXT;
-WGLEW_EXPORT PFNWGLDESTROYPBUFFEREXTPROC __wglewDestroyPbufferEXT;
-WGLEW_EXPORT PFNWGLGETPBUFFERDCEXTPROC __wglewGetPbufferDCEXT;
-WGLEW_EXPORT PFNWGLQUERYPBUFFEREXTPROC __wglewQueryPbufferEXT;
-WGLEW_EXPORT PFNWGLRELEASEPBUFFERDCEXTPROC __wglewReleasePbufferDCEXT;
-
-WGLEW_EXPORT PFNWGLCHOOSEPIXELFORMATEXTPROC __wglewChoosePixelFormatEXT;
-WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBFVEXTPROC __wglewGetPixelFormatAttribfvEXT;
-WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBIVEXTPROC __wglewGetPixelFormatAttribivEXT;
-
-WGLEW_EXPORT PFNWGLGETSWAPINTERVALEXTPROC __wglewGetSwapIntervalEXT;
-WGLEW_EXPORT PFNWGLSWAPINTERVALEXTPROC __wglewSwapIntervalEXT;
-
-WGLEW_EXPORT PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC __wglewGetDigitalVideoParametersI3D;
-WGLEW_EXPORT PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC __wglewSetDigitalVideoParametersI3D;
-
-WGLEW_EXPORT PFNWGLGETGAMMATABLEI3DPROC __wglewGetGammaTableI3D;
-WGLEW_EXPORT PFNWGLGETGAMMATABLEPARAMETERSI3DPROC __wglewGetGammaTableParametersI3D;
-WGLEW_EXPORT PFNWGLSETGAMMATABLEI3DPROC __wglewSetGammaTableI3D;
-WGLEW_EXPORT PFNWGLSETGAMMATABLEPARAMETERSI3DPROC __wglewSetGammaTableParametersI3D;
-
-WGLEW_EXPORT PFNWGLDISABLEGENLOCKI3DPROC __wglewDisableGenlockI3D;
-WGLEW_EXPORT PFNWGLENABLEGENLOCKI3DPROC __wglewEnableGenlockI3D;
-WGLEW_EXPORT PFNWGLGENLOCKSAMPLERATEI3DPROC __wglewGenlockSampleRateI3D;
-WGLEW_EXPORT PFNWGLGENLOCKSOURCEDELAYI3DPROC __wglewGenlockSourceDelayI3D;
-WGLEW_EXPORT PFNWGLGENLOCKSOURCEEDGEI3DPROC __wglewGenlockSourceEdgeI3D;
-WGLEW_EXPORT PFNWGLGENLOCKSOURCEI3DPROC __wglewGenlockSourceI3D;
-WGLEW_EXPORT PFNWGLGETGENLOCKSAMPLERATEI3DPROC __wglewGetGenlockSampleRateI3D;
-WGLEW_EXPORT PFNWGLGETGENLOCKSOURCEDELAYI3DPROC __wglewGetGenlockSourceDelayI3D;
-WGLEW_EXPORT PFNWGLGETGENLOCKSOURCEEDGEI3DPROC __wglewGetGenlockSourceEdgeI3D;
-WGLEW_EXPORT PFNWGLGETGENLOCKSOURCEI3DPROC __wglewGetGenlockSourceI3D;
-WGLEW_EXPORT PFNWGLISENABLEDGENLOCKI3DPROC __wglewIsEnabledGenlockI3D;
-WGLEW_EXPORT PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC __wglewQueryGenlockMaxSourceDelayI3D;
-
-WGLEW_EXPORT PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC __wglewAssociateImageBufferEventsI3D;
-WGLEW_EXPORT PFNWGLCREATEIMAGEBUFFERI3DPROC __wglewCreateImageBufferI3D;
-WGLEW_EXPORT PFNWGLDESTROYIMAGEBUFFERI3DPROC __wglewDestroyImageBufferI3D;
-WGLEW_EXPORT PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC __wglewReleaseImageBufferEventsI3D;
-
-WGLEW_EXPORT PFNWGLDISABLEFRAMELOCKI3DPROC __wglewDisableFrameLockI3D;
-WGLEW_EXPORT PFNWGLENABLEFRAMELOCKI3DPROC __wglewEnableFrameLockI3D;
-WGLEW_EXPORT PFNWGLISENABLEDFRAMELOCKI3DPROC __wglewIsEnabledFrameLockI3D;
-WGLEW_EXPORT PFNWGLQUERYFRAMELOCKMASTERI3DPROC __wglewQueryFrameLockMasterI3D;
-
-WGLEW_EXPORT PFNWGLBEGINFRAMETRACKINGI3DPROC __wglewBeginFrameTrackingI3D;
-WGLEW_EXPORT PFNWGLENDFRAMETRACKINGI3DPROC __wglewEndFrameTrackingI3D;
-WGLEW_EXPORT PFNWGLGETFRAMEUSAGEI3DPROC __wglewGetFrameUsageI3D;
-WGLEW_EXPORT PFNWGLQUERYFRAMETRACKINGI3DPROC __wglewQueryFrameTrackingI3D;
-
-WGLEW_EXPORT PFNWGLCOPYIMAGESUBDATANVPROC __wglewCopyImageSubDataNV;
-
-WGLEW_EXPORT PFNWGLCREATEAFFINITYDCNVPROC __wglewCreateAffinityDCNV;
-WGLEW_EXPORT PFNWGLDELETEDCNVPROC __wglewDeleteDCNV;
-WGLEW_EXPORT PFNWGLENUMGPUDEVICESNVPROC __wglewEnumGpuDevicesNV;
-WGLEW_EXPORT PFNWGLENUMGPUSFROMAFFINITYDCNVPROC __wglewEnumGpusFromAffinityDCNV;
-WGLEW_EXPORT PFNWGLENUMGPUSNVPROC __wglewEnumGpusNV;
-
-WGLEW_EXPORT PFNWGLBINDVIDEODEVICENVPROC __wglewBindVideoDeviceNV;
-WGLEW_EXPORT PFNWGLENUMERATEVIDEODEVICESNVPROC __wglewEnumerateVideoDevicesNV;
-WGLEW_EXPORT PFNWGLQUERYCURRENTCONTEXTNVPROC __wglewQueryCurrentContextNV;
-
-WGLEW_EXPORT PFNWGLBINDSWAPBARRIERNVPROC __wglewBindSwapBarrierNV;
-WGLEW_EXPORT PFNWGLJOINSWAPGROUPNVPROC __wglewJoinSwapGroupNV;
-WGLEW_EXPORT PFNWGLQUERYFRAMECOUNTNVPROC __wglewQueryFrameCountNV;
-WGLEW_EXPORT PFNWGLQUERYMAXSWAPGROUPSNVPROC __wglewQueryMaxSwapGroupsNV;
-WGLEW_EXPORT PFNWGLQUERYSWAPGROUPNVPROC __wglewQuerySwapGroupNV;
-WGLEW_EXPORT PFNWGLRESETFRAMECOUNTNVPROC __wglewResetFrameCountNV;
-
-WGLEW_EXPORT PFNWGLALLOCATEMEMORYNVPROC __wglewAllocateMemoryNV;
-WGLEW_EXPORT PFNWGLFREEMEMORYNVPROC __wglewFreeMemoryNV;
-
-WGLEW_EXPORT PFNWGLBINDVIDEOIMAGENVPROC __wglewBindVideoImageNV;
-WGLEW_EXPORT PFNWGLGETVIDEODEVICENVPROC __wglewGetVideoDeviceNV;
-WGLEW_EXPORT PFNWGLGETVIDEOINFONVPROC __wglewGetVideoInfoNV;
-WGLEW_EXPORT PFNWGLRELEASEVIDEODEVICENVPROC __wglewReleaseVideoDeviceNV;
-WGLEW_EXPORT PFNWGLRELEASEVIDEOIMAGENVPROC __wglewReleaseVideoImageNV;
-WGLEW_EXPORT PFNWGLSENDPBUFFERTOVIDEONVPROC __wglewSendPbufferToVideoNV;
-
-WGLEW_EXPORT PFNWGLGETMSCRATEOMLPROC __wglewGetMscRateOML;
-WGLEW_EXPORT PFNWGLGETSYNCVALUESOMLPROC __wglewGetSyncValuesOML;
-WGLEW_EXPORT PFNWGLSWAPBUFFERSMSCOMLPROC __wglewSwapBuffersMscOML;
-WGLEW_EXPORT PFNWGLSWAPLAYERBUFFERSMSCOMLPROC __wglewSwapLayerBuffersMscOML;
-WGLEW_EXPORT PFNWGLWAITFORMSCOMLPROC __wglewWaitForMscOML;
-WGLEW_EXPORT PFNWGLWAITFORSBCOMLPROC __wglewWaitForSbcOML;
-WGLEW_EXPORT GLboolean __WGLEW_3DFX_multisample;
-WGLEW_EXPORT GLboolean __WGLEW_3DL_stereo_control;
-WGLEW_EXPORT GLboolean __WGLEW_AMD_gpu_association;
-WGLEW_EXPORT GLboolean __WGLEW_ARB_buffer_region;
-WGLEW_EXPORT GLboolean __WGLEW_ARB_create_context;
-WGLEW_EXPORT GLboolean __WGLEW_ARB_create_context_profile;
-WGLEW_EXPORT GLboolean __WGLEW_ARB_extensions_string;
-WGLEW_EXPORT GLboolean __WGLEW_ARB_framebuffer_sRGB;
-WGLEW_EXPORT GLboolean __WGLEW_ARB_make_current_read;
-WGLEW_EXPORT GLboolean __WGLEW_ARB_multisample;
-WGLEW_EXPORT GLboolean __WGLEW_ARB_pbuffer;
-WGLEW_EXPORT GLboolean __WGLEW_ARB_pixel_format;
-WGLEW_EXPORT GLboolean __WGLEW_ARB_pixel_format_float;
-WGLEW_EXPORT GLboolean __WGLEW_ARB_render_texture;
-WGLEW_EXPORT GLboolean __WGLEW_ATI_pixel_format_float;
-WGLEW_EXPORT GLboolean __WGLEW_ATI_render_texture_rectangle;
-WGLEW_EXPORT GLboolean __WGLEW_EXT_depth_float;
-WGLEW_EXPORT GLboolean __WGLEW_EXT_display_color_table;
-WGLEW_EXPORT GLboolean __WGLEW_EXT_extensions_string;
-WGLEW_EXPORT GLboolean __WGLEW_EXT_framebuffer_sRGB;
-WGLEW_EXPORT GLboolean __WGLEW_EXT_make_current_read;
-WGLEW_EXPORT GLboolean __WGLEW_EXT_multisample;
-WGLEW_EXPORT GLboolean __WGLEW_EXT_pbuffer;
-WGLEW_EXPORT GLboolean __WGLEW_EXT_pixel_format;
-WGLEW_EXPORT GLboolean __WGLEW_EXT_pixel_format_packed_float;
-WGLEW_EXPORT GLboolean __WGLEW_EXT_swap_control;
-WGLEW_EXPORT GLboolean __WGLEW_I3D_digital_video_control;
-WGLEW_EXPORT GLboolean __WGLEW_I3D_gamma;
-WGLEW_EXPORT GLboolean __WGLEW_I3D_genlock;
-WGLEW_EXPORT GLboolean __WGLEW_I3D_image_buffer;
-WGLEW_EXPORT GLboolean __WGLEW_I3D_swap_frame_lock;
-WGLEW_EXPORT GLboolean __WGLEW_I3D_swap_frame_usage;
-WGLEW_EXPORT GLboolean __WGLEW_NV_copy_image;
-WGLEW_EXPORT GLboolean __WGLEW_NV_float_buffer;
-WGLEW_EXPORT GLboolean __WGLEW_NV_gpu_affinity;
-WGLEW_EXPORT GLboolean __WGLEW_NV_present_video;
-WGLEW_EXPORT GLboolean __WGLEW_NV_render_depth_texture;
-WGLEW_EXPORT GLboolean __WGLEW_NV_render_texture_rectangle;
-WGLEW_EXPORT GLboolean __WGLEW_NV_swap_group;
-WGLEW_EXPORT GLboolean __WGLEW_NV_vertex_array_range;
-WGLEW_EXPORT GLboolean __WGLEW_NV_video_output;
-WGLEW_EXPORT GLboolean __WGLEW_OML_sync_control;
-
-#ifdef GLEW_MX
-}; /* WGLEWContextStruct */
-#endif /* GLEW_MX */
-
-/* ------------------------------------------------------------------------- */
-
-#ifdef GLEW_MX
-
-typedef struct WGLEWContextStruct WGLEWContext;
-GLEWAPI GLenum wglewContextInit (WGLEWContext* ctx);
-GLEWAPI GLboolean wglewContextIsSupported (WGLEWContext* ctx, const char* name);
-
-#define wglewInit() wglewContextInit(wglewGetContext())
-#define wglewIsSupported(x) wglewContextIsSupported(wglewGetContext(), x)
-
-#define WGLEW_GET_VAR(x) (*(const GLboolean*)&(wglewGetContext()->x))
-#define WGLEW_GET_FUN(x) wglewGetContext()->x
-
-#else /* GLEW_MX */
-
-#define WGLEW_GET_VAR(x) (*(const GLboolean*)&x)
-#define WGLEW_GET_FUN(x) x
-
-GLEWAPI GLboolean wglewIsSupported (const char* name);
-
-#endif /* GLEW_MX */
-
-GLEWAPI GLboolean wglewGetExtension (const char* name);
-
-#ifdef __cplusplus
-}
-#endif
-
-#undef GLEWAPI
-
-#endif /* __wglew_h__ */
diff --git a/src/other/glew/src/glew.c b/src/other/glew/src/glew.c
deleted file mode 100644
index 987236b..0000000
--- a/src/other/glew/src/glew.c
+++ /dev/null
@@ -1,14320 +0,0 @@
-/*
-** The OpenGL Extension Wrangler Library
-** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-** Copyright (C) 2002, Lev Povalahev
-** All rights reserved.
-** 
-** Redistribution and use in source and binary forms, with or without 
-** modification, are permitted provided that the following conditions are met:
-** 
-** * Redistributions of source code must retain the above copyright notice, 
-**   this list of conditions and the following disclaimer.
-** * Redistributions in binary form must reproduce the above copyright notice, 
-**   this list of conditions and the following disclaimer in the documentation 
-**   and/or other materials provided with the distribution.
-** * The name of the author may be used to endorse or promote products 
-**   derived from this software without specific prior written permission.
-**
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-** THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-#include <GL/glew.h>
-#if defined(_WIN32)
-#  include <GL/wglew.h>
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-#  include <GL/glxew.h>
-#endif
-
-/*
- * Define glewGetContext and related helper macros.
- */
-#ifdef GLEW_MX
-#  define glewGetContext() ctx
-#  ifdef _WIN32
-#    define GLEW_CONTEXT_ARG_DEF_INIT GLEWContext* ctx
-#    define GLEW_CONTEXT_ARG_VAR_INIT ctx
-#    define wglewGetContext() ctx
-#    define WGLEW_CONTEXT_ARG_DEF_INIT WGLEWContext* ctx
-#    define WGLEW_CONTEXT_ARG_DEF_LIST WGLEWContext* ctx
-#  else /* _WIN32 */
-#    define GLEW_CONTEXT_ARG_DEF_INIT void
-#    define GLEW_CONTEXT_ARG_VAR_INIT
-#    define glxewGetContext() ctx
-#    define GLXEW_CONTEXT_ARG_DEF_INIT void
-#    define GLXEW_CONTEXT_ARG_DEF_LIST GLXEWContext* ctx
-#  endif /* _WIN32 */
-#  define GLEW_CONTEXT_ARG_DEF_LIST GLEWContext* ctx
-#else /* GLEW_MX */
-#  define GLEW_CONTEXT_ARG_DEF_INIT void
-#  define GLEW_CONTEXT_ARG_VAR_INIT
-#  define GLEW_CONTEXT_ARG_DEF_LIST void
-#  define WGLEW_CONTEXT_ARG_DEF_INIT void
-#  define WGLEW_CONTEXT_ARG_DEF_LIST void
-#  define GLXEW_CONTEXT_ARG_DEF_INIT void
-#  define GLXEW_CONTEXT_ARG_DEF_LIST void
-#endif /* GLEW_MX */
-
-#if defined(__APPLE__)
-#include <stdlib.h>
-#include <string.h>
-#include <AvailabilityMacros.h>
-
-#ifdef MAC_OS_X_VERSION_10_3
-
-#include <dlfcn.h>
-
-void* NSGLGetProcAddress (const GLubyte *name)
-{
-  static void* image = NULL;
-  if (NULL == image) 
-  {
-    image = dlopen("/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL", RTLD_LAZY);
-  }
-  return image ? dlsym(image, (const char*)name) : NULL;
-}
-#else
-
-#include <mach-o/dyld.h>
-
-void* NSGLGetProcAddress (const GLubyte *name)
-{
-  static const struct mach_header* image = NULL;
-  NSSymbol symbol;
-  char* symbolName;
-  if (NULL == image)
-  {
-    image = NSAddImage("/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL", NSADDIMAGE_OPTION_RETURN_ON_ERROR);
-  }
-  /* prepend a '_' for the Unix C symbol mangling convention */
-  symbolName = malloc(strlen((const char*)name) + 2);
-  strcpy(symbolName+1, (const char*)name);
-  symbolName[0] = '_';
-  symbol = NULL;
-  /* if (NSIsSymbolNameDefined(symbolName))
-	 symbol = NSLookupAndBindSymbol(symbolName); */
-  symbol = image ? NSLookupSymbolInImage(image, symbolName, NSLOOKUPSYMBOLINIMAGE_OPTION_BIND | NSLOOKUPSYMBOLINIMAGE_OPTION_RETURN_ON_ERROR) : NULL;
-  free(symbolName);
-  return symbol ? NSAddressOfSymbol(symbol) : NULL;
-}
-#endif /* MAC_OS_X_VERSION_10_3 */
-#endif /* __APPLE__ */
-
-#if defined(__sgi) || defined (__sun)
-#include <dlfcn.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-void* dlGetProcAddress (const GLubyte* name)
-{
-  static void* h = NULL;
-  static void* gpa;
-
-  if (h == NULL)
-  {
-    if ((h = dlopen(NULL, RTLD_LAZY | RTLD_LOCAL)) == NULL) return NULL;
-    gpa = dlsym(h, "glXGetProcAddress");
-  }
-
-  if (gpa != NULL)
-    return ((void*(*)(const GLubyte*))gpa)(name);
-  else
-    return dlsym(h, (const char*)name);
-}
-#endif /* __sgi || __sun */
-
-/*
- * Define glewGetProcAddress.
- */
-#if defined(_WIN32)
-#  define glewGetProcAddress(name) wglGetProcAddress((LPCSTR)name)
-#else
-#  if defined(__APPLE__)
-#    define glewGetProcAddress(name) NSGLGetProcAddress(name)
-#  else
-#    if defined(__sgi) || defined(__sun)
-#      define glewGetProcAddress(name) dlGetProcAddress(name)
-#    else /* __linux */
-#      define glewGetProcAddress(name) (*glXGetProcAddressARB)(name)
-#    endif
-#  endif
-#endif
-
-/*
- * Define GLboolean const cast.
- */
-#define CONST_CAST(x) (*(GLboolean*)&x)
-
-/*
- * GLEW, just like OpenGL or GLU, does not rely on the standard C library.
- * These functions implement the functionality required in this file.
- */
-static GLuint _glewStrLen (const GLubyte* s)
-{
-  GLuint i=0;
-  if (s == NULL) return 0;
-  while (s[i] != '\0') i++;
-  return i;
-}
-
-static GLuint _glewStrCLen (const GLubyte* s, GLubyte c)
-{
-  GLuint i=0;
-  if (s == NULL) return 0;
-  while (s[i] != '\0' && s[i] != c) i++;
-  return (s[i] == '\0' || s[i] == c) ? i : 0;
-}
-
-static GLboolean _glewStrSame (const GLubyte* a, const GLubyte* b, GLuint n)
-{
-  GLuint i=0;
-  if(a == NULL || b == NULL)
-    return (a == NULL && b == NULL && n == 0) ? GL_TRUE : GL_FALSE;
-  while (i < n && a[i] != '\0' && b[i] != '\0' && a[i] == b[i]) i++;
-  return i == n ? GL_TRUE : GL_FALSE;
-}
-
-static GLboolean _glewStrSame1 (GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
-{
-  while (*na > 0 && (**a == ' ' || **a == '\n' || **a == '\r' || **a == '\t'))
-  {
-    (*a)++;
-    (*na)--;
-  }
-  if(*na >= nb)
-  {
-    GLuint i=0;
-    while (i < nb && (*a)+i != NULL && b+i != NULL && (*a)[i] == b[i]) i++;
-	if(i == nb)
-	{
-		*a = *a + nb;
-		*na = *na - nb;
-		return GL_TRUE;
-	}
-  }
-  return GL_FALSE;
-}
-
-static GLboolean _glewStrSame2 (GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
-{
-  if(*na >= nb)
-  {
-    GLuint i=0;
-    while (i < nb && (*a)+i != NULL && b+i != NULL && (*a)[i] == b[i]) i++;
-	if(i == nb)
-	{
-		*a = *a + nb;
-		*na = *na - nb;
-		return GL_TRUE;
-	}
-  }
-  return GL_FALSE;
-}
-
-static GLboolean _glewStrSame3 (GLubyte** a, GLuint* na, const GLubyte* b, GLuint nb)
-{
-  if(*na >= nb)
-  {
-    GLuint i=0;
-    while (i < nb && (*a)+i != NULL && b+i != NULL && (*a)[i] == b[i]) i++;
-    if (i == nb && (*na == nb || (*a)[i] == ' ' || (*a)[i] == '\n' || (*a)[i] == '\r' || (*a)[i] == '\t'))
-    {
-      *a = *a + nb;
-      *na = *na - nb;
-      return GL_TRUE;
-    }
-  }
-  return GL_FALSE;
-}
-
-#if !defined(_WIN32) || !defined(GLEW_MX)
-
-PFNGLCOPYTEXSUBIMAGE3DPROC __glewCopyTexSubImage3D = NULL;
-PFNGLDRAWRANGEELEMENTSPROC __glewDrawRangeElements = NULL;
-PFNGLTEXIMAGE3DPROC __glewTexImage3D = NULL;
-PFNGLTEXSUBIMAGE3DPROC __glewTexSubImage3D = NULL;
-
-PFNGLACTIVETEXTUREPROC __glewActiveTexture = NULL;
-PFNGLCLIENTACTIVETEXTUREPROC __glewClientActiveTexture = NULL;
-PFNGLCOMPRESSEDTEXIMAGE1DPROC __glewCompressedTexImage1D = NULL;
-PFNGLCOMPRESSEDTEXIMAGE2DPROC __glewCompressedTexImage2D = NULL;
-PFNGLCOMPRESSEDTEXIMAGE3DPROC __glewCompressedTexImage3D = NULL;
-PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC __glewCompressedTexSubImage1D = NULL;
-PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC __glewCompressedTexSubImage2D = NULL;
-PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC __glewCompressedTexSubImage3D = NULL;
-PFNGLGETCOMPRESSEDTEXIMAGEPROC __glewGetCompressedTexImage = NULL;
-PFNGLLOADTRANSPOSEMATRIXDPROC __glewLoadTransposeMatrixd = NULL;
-PFNGLLOADTRANSPOSEMATRIXFPROC __glewLoadTransposeMatrixf = NULL;
-PFNGLMULTTRANSPOSEMATRIXDPROC __glewMultTransposeMatrixd = NULL;
-PFNGLMULTTRANSPOSEMATRIXFPROC __glewMultTransposeMatrixf = NULL;
-PFNGLMULTITEXCOORD1DPROC __glewMultiTexCoord1d = NULL;
-PFNGLMULTITEXCOORD1DVPROC __glewMultiTexCoord1dv = NULL;
-PFNGLMULTITEXCOORD1FPROC __glewMultiTexCoord1f = NULL;
-PFNGLMULTITEXCOORD1FVPROC __glewMultiTexCoord1fv = NULL;
-PFNGLMULTITEXCOORD1IPROC __glewMultiTexCoord1i = NULL;
-PFNGLMULTITEXCOORD1IVPROC __glewMultiTexCoord1iv = NULL;
-PFNGLMULTITEXCOORD1SPROC __glewMultiTexCoord1s = NULL;
-PFNGLMULTITEXCOORD1SVPROC __glewMultiTexCoord1sv = NULL;
-PFNGLMULTITEXCOORD2DPROC __glewMultiTexCoord2d = NULL;
-PFNGLMULTITEXCOORD2DVPROC __glewMultiTexCoord2dv = NULL;
-PFNGLMULTITEXCOORD2FPROC __glewMultiTexCoord2f = NULL;
-PFNGLMULTITEXCOORD2FVPROC __glewMultiTexCoord2fv = NULL;
-PFNGLMULTITEXCOORD2IPROC __glewMultiTexCoord2i = NULL;
-PFNGLMULTITEXCOORD2IVPROC __glewMultiTexCoord2iv = NULL;
-PFNGLMULTITEXCOORD2SPROC __glewMultiTexCoord2s = NULL;
-PFNGLMULTITEXCOORD2SVPROC __glewMultiTexCoord2sv = NULL;
-PFNGLMULTITEXCOORD3DPROC __glewMultiTexCoord3d = NULL;
-PFNGLMULTITEXCOORD3DVPROC __glewMultiTexCoord3dv = NULL;
-PFNGLMULTITEXCOORD3FPROC __glewMultiTexCoord3f = NULL;
-PFNGLMULTITEXCOORD3FVPROC __glewMultiTexCoord3fv = NULL;
-PFNGLMULTITEXCOORD3IPROC __glewMultiTexCoord3i = NULL;
-PFNGLMULTITEXCOORD3IVPROC __glewMultiTexCoord3iv = NULL;
-PFNGLMULTITEXCOORD3SPROC __glewMultiTexCoord3s = NULL;
-PFNGLMULTITEXCOORD3SVPROC __glewMultiTexCoord3sv = NULL;
-PFNGLMULTITEXCOORD4DPROC __glewMultiTexCoord4d = NULL;
-PFNGLMULTITEXCOORD4DVPROC __glewMultiTexCoord4dv = NULL;
-PFNGLMULTITEXCOORD4FPROC __glewMultiTexCoord4f = NULL;
-PFNGLMULTITEXCOORD4FVPROC __glewMultiTexCoord4fv = NULL;
-PFNGLMULTITEXCOORD4IPROC __glewMultiTexCoord4i = NULL;
-PFNGLMULTITEXCOORD4IVPROC __glewMultiTexCoord4iv = NULL;
-PFNGLMULTITEXCOORD4SPROC __glewMultiTexCoord4s = NULL;
-PFNGLMULTITEXCOORD4SVPROC __glewMultiTexCoord4sv = NULL;
-PFNGLSAMPLECOVERAGEPROC __glewSampleCoverage = NULL;
-
-PFNGLBLENDCOLORPROC __glewBlendColor = NULL;
-PFNGLBLENDEQUATIONPROC __glewBlendEquation = NULL;
-PFNGLBLENDFUNCSEPARATEPROC __glewBlendFuncSeparate = NULL;
-PFNGLFOGCOORDPOINTERPROC __glewFogCoordPointer = NULL;
-PFNGLFOGCOORDDPROC __glewFogCoordd = NULL;
-PFNGLFOGCOORDDVPROC __glewFogCoorddv = NULL;
-PFNGLFOGCOORDFPROC __glewFogCoordf = NULL;
-PFNGLFOGCOORDFVPROC __glewFogCoordfv = NULL;
-PFNGLMULTIDRAWARRAYSPROC __glewMultiDrawArrays = NULL;
-PFNGLMULTIDRAWELEMENTSPROC __glewMultiDrawElements = NULL;
-PFNGLPOINTPARAMETERFPROC __glewPointParameterf = NULL;
-PFNGLPOINTPARAMETERFVPROC __glewPointParameterfv = NULL;
-PFNGLPOINTPARAMETERIPROC __glewPointParameteri = NULL;
-PFNGLPOINTPARAMETERIVPROC __glewPointParameteriv = NULL;
-PFNGLSECONDARYCOLOR3BPROC __glewSecondaryColor3b = NULL;
-PFNGLSECONDARYCOLOR3BVPROC __glewSecondaryColor3bv = NULL;
-PFNGLSECONDARYCOLOR3DPROC __glewSecondaryColor3d = NULL;
-PFNGLSECONDARYCOLOR3DVPROC __glewSecondaryColor3dv = NULL;
-PFNGLSECONDARYCOLOR3FPROC __glewSecondaryColor3f = NULL;
-PFNGLSECONDARYCOLOR3FVPROC __glewSecondaryColor3fv = NULL;
-PFNGLSECONDARYCOLOR3IPROC __glewSecondaryColor3i = NULL;
-PFNGLSECONDARYCOLOR3IVPROC __glewSecondaryColor3iv = NULL;
-PFNGLSECONDARYCOLOR3SPROC __glewSecondaryColor3s = NULL;
-PFNGLSECONDARYCOLOR3SVPROC __glewSecondaryColor3sv = NULL;
-PFNGLSECONDARYCOLOR3UBPROC __glewSecondaryColor3ub = NULL;
-PFNGLSECONDARYCOLOR3UBVPROC __glewSecondaryColor3ubv = NULL;
-PFNGLSECONDARYCOLOR3UIPROC __glewSecondaryColor3ui = NULL;
-PFNGLSECONDARYCOLOR3UIVPROC __glewSecondaryColor3uiv = NULL;
-PFNGLSECONDARYCOLOR3USPROC __glewSecondaryColor3us = NULL;
-PFNGLSECONDARYCOLOR3USVPROC __glewSecondaryColor3usv = NULL;
-PFNGLSECONDARYCOLORPOINTERPROC __glewSecondaryColorPointer = NULL;
-PFNGLWINDOWPOS2DPROC __glewWindowPos2d = NULL;
-PFNGLWINDOWPOS2DVPROC __glewWindowPos2dv = NULL;
-PFNGLWINDOWPOS2FPROC __glewWindowPos2f = NULL;
-PFNGLWINDOWPOS2FVPROC __glewWindowPos2fv = NULL;
-PFNGLWINDOWPOS2IPROC __glewWindowPos2i = NULL;
-PFNGLWINDOWPOS2IVPROC __glewWindowPos2iv = NULL;
-PFNGLWINDOWPOS2SPROC __glewWindowPos2s = NULL;
-PFNGLWINDOWPOS2SVPROC __glewWindowPos2sv = NULL;
-PFNGLWINDOWPOS3DPROC __glewWindowPos3d = NULL;
-PFNGLWINDOWPOS3DVPROC __glewWindowPos3dv = NULL;
-PFNGLWINDOWPOS3FPROC __glewWindowPos3f = NULL;
-PFNGLWINDOWPOS3FVPROC __glewWindowPos3fv = NULL;
-PFNGLWINDOWPOS3IPROC __glewWindowPos3i = NULL;
-PFNGLWINDOWPOS3IVPROC __glewWindowPos3iv = NULL;
-PFNGLWINDOWPOS3SPROC __glewWindowPos3s = NULL;
-PFNGLWINDOWPOS3SVPROC __glewWindowPos3sv = NULL;
-
-PFNGLBEGINQUERYPROC __glewBeginQuery = NULL;
-PFNGLBINDBUFFERPROC __glewBindBuffer = NULL;
-PFNGLBUFFERDATAPROC __glewBufferData = NULL;
-PFNGLBUFFERSUBDATAPROC __glewBufferSubData = NULL;
-PFNGLDELETEBUFFERSPROC __glewDeleteBuffers = NULL;
-PFNGLDELETEQUERIESPROC __glewDeleteQueries = NULL;
-PFNGLENDQUERYPROC __glewEndQuery = NULL;
-PFNGLGENBUFFERSPROC __glewGenBuffers = NULL;
-PFNGLGENQUERIESPROC __glewGenQueries = NULL;
-PFNGLGETBUFFERPARAMETERIVPROC __glewGetBufferParameteriv = NULL;
-PFNGLGETBUFFERPOINTERVPROC __glewGetBufferPointerv = NULL;
-PFNGLGETBUFFERSUBDATAPROC __glewGetBufferSubData = NULL;
-PFNGLGETQUERYOBJECTIVPROC __glewGetQueryObjectiv = NULL;
-PFNGLGETQUERYOBJECTUIVPROC __glewGetQueryObjectuiv = NULL;
-PFNGLGETQUERYIVPROC __glewGetQueryiv = NULL;
-PFNGLISBUFFERPROC __glewIsBuffer = NULL;
-PFNGLISQUERYPROC __glewIsQuery = NULL;
-PFNGLMAPBUFFERPROC __glewMapBuffer = NULL;
-PFNGLUNMAPBUFFERPROC __glewUnmapBuffer = NULL;
-
-PFNGLATTACHSHADERPROC __glewAttachShader = NULL;
-PFNGLBINDATTRIBLOCATIONPROC __glewBindAttribLocation = NULL;
-PFNGLBLENDEQUATIONSEPARATEPROC __glewBlendEquationSeparate = NULL;
-PFNGLCOMPILESHADERPROC __glewCompileShader = NULL;
-PFNGLCREATEPROGRAMPROC __glewCreateProgram = NULL;
-PFNGLCREATESHADERPROC __glewCreateShader = NULL;
-PFNGLDELETEPROGRAMPROC __glewDeleteProgram = NULL;
-PFNGLDELETESHADERPROC __glewDeleteShader = NULL;
-PFNGLDETACHSHADERPROC __glewDetachShader = NULL;
-PFNGLDISABLEVERTEXATTRIBARRAYPROC __glewDisableVertexAttribArray = NULL;
-PFNGLDRAWBUFFERSPROC __glewDrawBuffers = NULL;
-PFNGLENABLEVERTEXATTRIBARRAYPROC __glewEnableVertexAttribArray = NULL;
-PFNGLGETACTIVEATTRIBPROC __glewGetActiveAttrib = NULL;
-PFNGLGETACTIVEUNIFORMPROC __glewGetActiveUniform = NULL;
-PFNGLGETATTACHEDSHADERSPROC __glewGetAttachedShaders = NULL;
-PFNGLGETATTRIBLOCATIONPROC __glewGetAttribLocation = NULL;
-PFNGLGETPROGRAMINFOLOGPROC __glewGetProgramInfoLog = NULL;
-PFNGLGETPROGRAMIVPROC __glewGetProgramiv = NULL;
-PFNGLGETSHADERINFOLOGPROC __glewGetShaderInfoLog = NULL;
-PFNGLGETSHADERSOURCEPROC __glewGetShaderSource = NULL;
-PFNGLGETSHADERIVPROC __glewGetShaderiv = NULL;
-PFNGLGETUNIFORMLOCATIONPROC __glewGetUniformLocation = NULL;
-PFNGLGETUNIFORMFVPROC __glewGetUniformfv = NULL;
-PFNGLGETUNIFORMIVPROC __glewGetUniformiv = NULL;
-PFNGLGETVERTEXATTRIBPOINTERVPROC __glewGetVertexAttribPointerv = NULL;
-PFNGLGETVERTEXATTRIBDVPROC __glewGetVertexAttribdv = NULL;
-PFNGLGETVERTEXATTRIBFVPROC __glewGetVertexAttribfv = NULL;
-PFNGLGETVERTEXATTRIBIVPROC __glewGetVertexAttribiv = NULL;
-PFNGLISPROGRAMPROC __glewIsProgram = NULL;
-PFNGLISSHADERPROC __glewIsShader = NULL;
-PFNGLLINKPROGRAMPROC __glewLinkProgram = NULL;
-PFNGLSHADERSOURCEPROC __glewShaderSource = NULL;
-PFNGLSTENCILFUNCSEPARATEPROC __glewStencilFuncSeparate = NULL;
-PFNGLSTENCILMASKSEPARATEPROC __glewStencilMaskSeparate = NULL;
-PFNGLSTENCILOPSEPARATEPROC __glewStencilOpSeparate = NULL;
-PFNGLUNIFORM1FPROC __glewUniform1f = NULL;
-PFNGLUNIFORM1FVPROC __glewUniform1fv = NULL;
-PFNGLUNIFORM1IPROC __glewUniform1i = NULL;
-PFNGLUNIFORM1IVPROC __glewUniform1iv = NULL;
-PFNGLUNIFORM2FPROC __glewUniform2f = NULL;
-PFNGLUNIFORM2FVPROC __glewUniform2fv = NULL;
-PFNGLUNIFORM2IPROC __glewUniform2i = NULL;
-PFNGLUNIFORM2IVPROC __glewUniform2iv = NULL;
-PFNGLUNIFORM3FPROC __glewUniform3f = NULL;
-PFNGLUNIFORM3FVPROC __glewUniform3fv = NULL;
-PFNGLUNIFORM3IPROC __glewUniform3i = NULL;
-PFNGLUNIFORM3IVPROC __glewUniform3iv = NULL;
-PFNGLUNIFORM4FPROC __glewUniform4f = NULL;
-PFNGLUNIFORM4FVPROC __glewUniform4fv = NULL;
-PFNGLUNIFORM4IPROC __glewUniform4i = NULL;
-PFNGLUNIFORM4IVPROC __glewUniform4iv = NULL;
-PFNGLUNIFORMMATRIX2FVPROC __glewUniformMatrix2fv = NULL;
-PFNGLUNIFORMMATRIX3FVPROC __glewUniformMatrix3fv = NULL;
-PFNGLUNIFORMMATRIX4FVPROC __glewUniformMatrix4fv = NULL;
-PFNGLUSEPROGRAMPROC __glewUseProgram = NULL;
-PFNGLVALIDATEPROGRAMPROC __glewValidateProgram = NULL;
-PFNGLVERTEXATTRIB1DPROC __glewVertexAttrib1d = NULL;
-PFNGLVERTEXATTRIB1DVPROC __glewVertexAttrib1dv = NULL;
-PFNGLVERTEXATTRIB1FPROC __glewVertexAttrib1f = NULL;
-PFNGLVERTEXATTRIB1FVPROC __glewVertexAttrib1fv = NULL;
-PFNGLVERTEXATTRIB1SPROC __glewVertexAttrib1s = NULL;
-PFNGLVERTEXATTRIB1SVPROC __glewVertexAttrib1sv = NULL;
-PFNGLVERTEXATTRIB2DPROC __glewVertexAttrib2d = NULL;
-PFNGLVERTEXATTRIB2DVPROC __glewVertexAttrib2dv = NULL;
-PFNGLVERTEXATTRIB2FPROC __glewVertexAttrib2f = NULL;
-PFNGLVERTEXATTRIB2FVPROC __glewVertexAttrib2fv = NULL;
-PFNGLVERTEXATTRIB2SPROC __glewVertexAttrib2s = NULL;
-PFNGLVERTEXATTRIB2SVPROC __glewVertexAttrib2sv = NULL;
-PFNGLVERTEXATTRIB3DPROC __glewVertexAttrib3d = NULL;
-PFNGLVERTEXATTRIB3DVPROC __glewVertexAttrib3dv = NULL;
-PFNGLVERTEXATTRIB3FPROC __glewVertexAttrib3f = NULL;
-PFNGLVERTEXATTRIB3FVPROC __glewVertexAttrib3fv = NULL;
-PFNGLVERTEXATTRIB3SPROC __glewVertexAttrib3s = NULL;
-PFNGLVERTEXATTRIB3SVPROC __glewVertexAttrib3sv = NULL;
-PFNGLVERTEXATTRIB4NBVPROC __glewVertexAttrib4Nbv = NULL;
-PFNGLVERTEXATTRIB4NIVPROC __glewVertexAttrib4Niv = NULL;
-PFNGLVERTEXATTRIB4NSVPROC __glewVertexAttrib4Nsv = NULL;
-PFNGLVERTEXATTRIB4NUBPROC __glewVertexAttrib4Nub = NULL;
-PFNGLVERTEXATTRIB4NUBVPROC __glewVertexAttrib4Nubv = NULL;
-PFNGLVERTEXATTRIB4NUIVPROC __glewVertexAttrib4Nuiv = NULL;
-PFNGLVERTEXATTRIB4NUSVPROC __glewVertexAttrib4Nusv = NULL;
-PFNGLVERTEXATTRIB4BVPROC __glewVertexAttrib4bv = NULL;
-PFNGLVERTEXATTRIB4DPROC __glewVertexAttrib4d = NULL;
-PFNGLVERTEXATTRIB4DVPROC __glewVertexAttrib4dv = NULL;
-PFNGLVERTEXATTRIB4FPROC __glewVertexAttrib4f = NULL;
-PFNGLVERTEXATTRIB4FVPROC __glewVertexAttrib4fv = NULL;
-PFNGLVERTEXATTRIB4IVPROC __glewVertexAttrib4iv = NULL;
-PFNGLVERTEXATTRIB4SPROC __glewVertexAttrib4s = NULL;
-PFNGLVERTEXATTRIB4SVPROC __glewVertexAttrib4sv = NULL;
-PFNGLVERTEXATTRIB4UBVPROC __glewVertexAttrib4ubv = NULL;
-PFNGLVERTEXATTRIB4UIVPROC __glewVertexAttrib4uiv = NULL;
-PFNGLVERTEXATTRIB4USVPROC __glewVertexAttrib4usv = NULL;
-PFNGLVERTEXATTRIBPOINTERPROC __glewVertexAttribPointer = NULL;
-
-PFNGLUNIFORMMATRIX2X3FVPROC __glewUniformMatrix2x3fv = NULL;
-PFNGLUNIFORMMATRIX2X4FVPROC __glewUniformMatrix2x4fv = NULL;
-PFNGLUNIFORMMATRIX3X2FVPROC __glewUniformMatrix3x2fv = NULL;
-PFNGLUNIFORMMATRIX3X4FVPROC __glewUniformMatrix3x4fv = NULL;
-PFNGLUNIFORMMATRIX4X2FVPROC __glewUniformMatrix4x2fv = NULL;
-PFNGLUNIFORMMATRIX4X3FVPROC __glewUniformMatrix4x3fv = NULL;
-
-PFNGLBEGINCONDITIONALRENDERPROC __glewBeginConditionalRender = NULL;
-PFNGLBEGINTRANSFORMFEEDBACKPROC __glewBeginTransformFeedback = NULL;
-PFNGLBINDFRAGDATALOCATIONPROC __glewBindFragDataLocation = NULL;
-PFNGLCLAMPCOLORPROC __glewClampColor = NULL;
-PFNGLCLEARBUFFERFIPROC __glewClearBufferfi = NULL;
-PFNGLCLEARBUFFERFVPROC __glewClearBufferfv = NULL;
-PFNGLCLEARBUFFERIVPROC __glewClearBufferiv = NULL;
-PFNGLCLEARBUFFERUIVPROC __glewClearBufferuiv = NULL;
-PFNGLCOLORMASKIPROC __glewColorMaski = NULL;
-PFNGLDISABLEIPROC __glewDisablei = NULL;
-PFNGLENABLEIPROC __glewEnablei = NULL;
-PFNGLENDCONDITIONALRENDERPROC __glewEndConditionalRender = NULL;
-PFNGLENDTRANSFORMFEEDBACKPROC __glewEndTransformFeedback = NULL;
-PFNGLGETBOOLEANI_VPROC __glewGetBooleani_v = NULL;
-PFNGLGETFRAGDATALOCATIONPROC __glewGetFragDataLocation = NULL;
-PFNGLGETSTRINGIPROC __glewGetStringi = NULL;
-PFNGLGETTEXPARAMETERIIVPROC __glewGetTexParameterIiv = NULL;
-PFNGLGETTEXPARAMETERIUIVPROC __glewGetTexParameterIuiv = NULL;
-PFNGLGETTRANSFORMFEEDBACKVARYINGPROC __glewGetTransformFeedbackVarying = NULL;
-PFNGLGETUNIFORMUIVPROC __glewGetUniformuiv = NULL;
-PFNGLGETVERTEXATTRIBIIVPROC __glewGetVertexAttribIiv = NULL;
-PFNGLGETVERTEXATTRIBIUIVPROC __glewGetVertexAttribIuiv = NULL;
-PFNGLISENABLEDIPROC __glewIsEnabledi = NULL;
-PFNGLTEXPARAMETERIIVPROC __glewTexParameterIiv = NULL;
-PFNGLTEXPARAMETERIUIVPROC __glewTexParameterIuiv = NULL;
-PFNGLTRANSFORMFEEDBACKVARYINGSPROC __glewTransformFeedbackVaryings = NULL;
-PFNGLUNIFORM1UIPROC __glewUniform1ui = NULL;
-PFNGLUNIFORM1UIVPROC __glewUniform1uiv = NULL;
-PFNGLUNIFORM2UIPROC __glewUniform2ui = NULL;
-PFNGLUNIFORM2UIVPROC __glewUniform2uiv = NULL;
-PFNGLUNIFORM3UIPROC __glewUniform3ui = NULL;
-PFNGLUNIFORM3UIVPROC __glewUniform3uiv = NULL;
-PFNGLUNIFORM4UIPROC __glewUniform4ui = NULL;
-PFNGLUNIFORM4UIVPROC __glewUniform4uiv = NULL;
-PFNGLVERTEXATTRIBI1IPROC __glewVertexAttribI1i = NULL;
-PFNGLVERTEXATTRIBI1IVPROC __glewVertexAttribI1iv = NULL;
-PFNGLVERTEXATTRIBI1UIPROC __glewVertexAttribI1ui = NULL;
-PFNGLVERTEXATTRIBI1UIVPROC __glewVertexAttribI1uiv = NULL;
-PFNGLVERTEXATTRIBI2IPROC __glewVertexAttribI2i = NULL;
-PFNGLVERTEXATTRIBI2IVPROC __glewVertexAttribI2iv = NULL;
-PFNGLVERTEXATTRIBI2UIPROC __glewVertexAttribI2ui = NULL;
-PFNGLVERTEXATTRIBI2UIVPROC __glewVertexAttribI2uiv = NULL;
-PFNGLVERTEXATTRIBI3IPROC __glewVertexAttribI3i = NULL;
-PFNGLVERTEXATTRIBI3IVPROC __glewVertexAttribI3iv = NULL;
-PFNGLVERTEXATTRIBI3UIPROC __glewVertexAttribI3ui = NULL;
-PFNGLVERTEXATTRIBI3UIVPROC __glewVertexAttribI3uiv = NULL;
-PFNGLVERTEXATTRIBI4BVPROC __glewVertexAttribI4bv = NULL;
-PFNGLVERTEXATTRIBI4IPROC __glewVertexAttribI4i = NULL;
-PFNGLVERTEXATTRIBI4IVPROC __glewVertexAttribI4iv = NULL;
-PFNGLVERTEXATTRIBI4SVPROC __glewVertexAttribI4sv = NULL;
-PFNGLVERTEXATTRIBI4UBVPROC __glewVertexAttribI4ubv = NULL;
-PFNGLVERTEXATTRIBI4UIPROC __glewVertexAttribI4ui = NULL;
-PFNGLVERTEXATTRIBI4UIVPROC __glewVertexAttribI4uiv = NULL;
-PFNGLVERTEXATTRIBI4USVPROC __glewVertexAttribI4usv = NULL;
-PFNGLVERTEXATTRIBIPOINTERPROC __glewVertexAttribIPointer = NULL;
-
-PFNGLDRAWARRAYSINSTANCEDPROC __glewDrawArraysInstanced = NULL;
-PFNGLDRAWELEMENTSINSTANCEDPROC __glewDrawElementsInstanced = NULL;
-PFNGLPRIMITIVERESTARTINDEXPROC __glewPrimitiveRestartIndex = NULL;
-PFNGLTEXBUFFERPROC __glewTexBuffer = NULL;
-
-PFNGLFRAMEBUFFERTEXTUREPROC __glewFramebufferTexture = NULL;
-PFNGLGETBUFFERPARAMETERI64VPROC __glewGetBufferParameteri64v = NULL;
-PFNGLGETINTEGER64I_VPROC __glewGetInteger64i_v = NULL;
-
-PFNGLBLENDEQUATIONSEPARATEIPROC __glewBlendEquationSeparatei = NULL;
-PFNGLBLENDEQUATIONIPROC __glewBlendEquationi = NULL;
-PFNGLBLENDFUNCSEPARATEIPROC __glewBlendFuncSeparatei = NULL;
-PFNGLBLENDFUNCIPROC __glewBlendFunci = NULL;
-PFNGLMINSAMPLESHADINGPROC __glewMinSampleShading = NULL;
-
-PFNGLTBUFFERMASK3DFXPROC __glewTbufferMask3DFX = NULL;
-
-PFNGLBLENDEQUATIONINDEXEDAMDPROC __glewBlendEquationIndexedAMD = NULL;
-PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC __glewBlendEquationSeparateIndexedAMD = NULL;
-PFNGLBLENDFUNCINDEXEDAMDPROC __glewBlendFuncIndexedAMD = NULL;
-PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC __glewBlendFuncSeparateIndexedAMD = NULL;
-
-PFNGLBEGINPERFMONITORAMDPROC __glewBeginPerfMonitorAMD = NULL;
-PFNGLDELETEPERFMONITORSAMDPROC __glewDeletePerfMonitorsAMD = NULL;
-PFNGLENDPERFMONITORAMDPROC __glewEndPerfMonitorAMD = NULL;
-PFNGLGENPERFMONITORSAMDPROC __glewGenPerfMonitorsAMD = NULL;
-PFNGLGETPERFMONITORCOUNTERDATAAMDPROC __glewGetPerfMonitorCounterDataAMD = NULL;
-PFNGLGETPERFMONITORCOUNTERINFOAMDPROC __glewGetPerfMonitorCounterInfoAMD = NULL;
-PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC __glewGetPerfMonitorCounterStringAMD = NULL;
-PFNGLGETPERFMONITORCOUNTERSAMDPROC __glewGetPerfMonitorCountersAMD = NULL;
-PFNGLGETPERFMONITORGROUPSTRINGAMDPROC __glewGetPerfMonitorGroupStringAMD = NULL;
-PFNGLGETPERFMONITORGROUPSAMDPROC __glewGetPerfMonitorGroupsAMD = NULL;
-PFNGLSELECTPERFMONITORCOUNTERSAMDPROC __glewSelectPerfMonitorCountersAMD = NULL;
-
-PFNGLTESSELLATIONFACTORAMDPROC __glewTessellationFactorAMD = NULL;
-PFNGLTESSELLATIONMODEAMDPROC __glewTessellationModeAMD = NULL;
-
-PFNGLDRAWELEMENTARRAYAPPLEPROC __glewDrawElementArrayAPPLE = NULL;
-PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC __glewDrawRangeElementArrayAPPLE = NULL;
-PFNGLELEMENTPOINTERAPPLEPROC __glewElementPointerAPPLE = NULL;
-PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC __glewMultiDrawElementArrayAPPLE = NULL;
-PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC __glewMultiDrawRangeElementArrayAPPLE = NULL;
-
-PFNGLDELETEFENCESAPPLEPROC __glewDeleteFencesAPPLE = NULL;
-PFNGLFINISHFENCEAPPLEPROC __glewFinishFenceAPPLE = NULL;
-PFNGLFINISHOBJECTAPPLEPROC __glewFinishObjectAPPLE = NULL;
-PFNGLGENFENCESAPPLEPROC __glewGenFencesAPPLE = NULL;
-PFNGLISFENCEAPPLEPROC __glewIsFenceAPPLE = NULL;
-PFNGLSETFENCEAPPLEPROC __glewSetFenceAPPLE = NULL;
-PFNGLTESTFENCEAPPLEPROC __glewTestFenceAPPLE = NULL;
-PFNGLTESTOBJECTAPPLEPROC __glewTestObjectAPPLE = NULL;
-
-PFNGLBUFFERPARAMETERIAPPLEPROC __glewBufferParameteriAPPLE = NULL;
-PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC __glewFlushMappedBufferRangeAPPLE = NULL;
-
-PFNGLGETOBJECTPARAMETERIVAPPLEPROC __glewGetObjectParameterivAPPLE = NULL;
-PFNGLOBJECTPURGEABLEAPPLEPROC __glewObjectPurgeableAPPLE = NULL;
-PFNGLOBJECTUNPURGEABLEAPPLEPROC __glewObjectUnpurgeableAPPLE = NULL;
-
-PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC __glewGetTexParameterPointervAPPLE = NULL;
-PFNGLTEXTURERANGEAPPLEPROC __glewTextureRangeAPPLE = NULL;
-
-PFNGLBINDVERTEXARRAYAPPLEPROC __glewBindVertexArrayAPPLE = NULL;
-PFNGLDELETEVERTEXARRAYSAPPLEPROC __glewDeleteVertexArraysAPPLE = NULL;
-PFNGLGENVERTEXARRAYSAPPLEPROC __glewGenVertexArraysAPPLE = NULL;
-PFNGLISVERTEXARRAYAPPLEPROC __glewIsVertexArrayAPPLE = NULL;
-
-PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC __glewFlushVertexArrayRangeAPPLE = NULL;
-PFNGLVERTEXARRAYPARAMETERIAPPLEPROC __glewVertexArrayParameteriAPPLE = NULL;
-PFNGLVERTEXARRAYRANGEAPPLEPROC __glewVertexArrayRangeAPPLE = NULL;
-
-PFNGLDISABLEVERTEXATTRIBAPPLEPROC __glewDisableVertexAttribAPPLE = NULL;
-PFNGLENABLEVERTEXATTRIBAPPLEPROC __glewEnableVertexAttribAPPLE = NULL;
-PFNGLISVERTEXATTRIBENABLEDAPPLEPROC __glewIsVertexAttribEnabledAPPLE = NULL;
-PFNGLMAPVERTEXATTRIB1DAPPLEPROC __glewMapVertexAttrib1dAPPLE = NULL;
-PFNGLMAPVERTEXATTRIB1FAPPLEPROC __glewMapVertexAttrib1fAPPLE = NULL;
-PFNGLMAPVERTEXATTRIB2DAPPLEPROC __glewMapVertexAttrib2dAPPLE = NULL;
-PFNGLMAPVERTEXATTRIB2FAPPLEPROC __glewMapVertexAttrib2fAPPLE = NULL;
-
-PFNGLBINDFRAGDATALOCATIONINDEXEDPROC __glewBindFragDataLocationIndexed = NULL;
-PFNGLGETFRAGDATAINDEXPROC __glewGetFragDataIndex = NULL;
-
-PFNGLCLAMPCOLORARBPROC __glewClampColorARB = NULL;
-
-PFNGLCOPYBUFFERSUBDATAPROC __glewCopyBufferSubData = NULL;
-
-PFNGLDRAWBUFFERSARBPROC __glewDrawBuffersARB = NULL;
-
-PFNGLBLENDEQUATIONSEPARATEIARBPROC __glewBlendEquationSeparateiARB = NULL;
-PFNGLBLENDEQUATIONIARBPROC __glewBlendEquationiARB = NULL;
-PFNGLBLENDFUNCSEPARATEIARBPROC __glewBlendFuncSeparateiARB = NULL;
-PFNGLBLENDFUNCIARBPROC __glewBlendFunciARB = NULL;
-
-PFNGLDRAWELEMENTSBASEVERTEXPROC __glewDrawElementsBaseVertex = NULL;
-PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC __glewDrawElementsInstancedBaseVertex = NULL;
-PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC __glewDrawRangeElementsBaseVertex = NULL;
-PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC __glewMultiDrawElementsBaseVertex = NULL;
-
-PFNGLDRAWARRAYSINDIRECTPROC __glewDrawArraysIndirect = NULL;
-PFNGLDRAWELEMENTSINDIRECTPROC __glewDrawElementsIndirect = NULL;
-
-PFNGLDRAWARRAYSINSTANCEDARBPROC __glewDrawArraysInstancedARB = NULL;
-PFNGLDRAWELEMENTSINSTANCEDARBPROC __glewDrawElementsInstancedARB = NULL;
-
-PFNGLBINDFRAMEBUFFERPROC __glewBindFramebuffer = NULL;
-PFNGLBINDRENDERBUFFERPROC __glewBindRenderbuffer = NULL;
-PFNGLBLITFRAMEBUFFERPROC __glewBlitFramebuffer = NULL;
-PFNGLCHECKFRAMEBUFFERSTATUSPROC __glewCheckFramebufferStatus = NULL;
-PFNGLDELETEFRAMEBUFFERSPROC __glewDeleteFramebuffers = NULL;
-PFNGLDELETERENDERBUFFERSPROC __glewDeleteRenderbuffers = NULL;
-PFNGLFRAMEBUFFERRENDERBUFFERPROC __glewFramebufferRenderbuffer = NULL;
-PFNGLFRAMEBUFFERTEXTURE1DPROC __glewFramebufferTexture1D = NULL;
-PFNGLFRAMEBUFFERTEXTURE2DPROC __glewFramebufferTexture2D = NULL;
-PFNGLFRAMEBUFFERTEXTURE3DPROC __glewFramebufferTexture3D = NULL;
-PFNGLFRAMEBUFFERTEXTURELAYERPROC __glewFramebufferTextureLayer = NULL;
-PFNGLGENFRAMEBUFFERSPROC __glewGenFramebuffers = NULL;
-PFNGLGENRENDERBUFFERSPROC __glewGenRenderbuffers = NULL;
-PFNGLGENERATEMIPMAPPROC __glewGenerateMipmap = NULL;
-PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC __glewGetFramebufferAttachmentParameteriv = NULL;
-PFNGLGETRENDERBUFFERPARAMETERIVPROC __glewGetRenderbufferParameteriv = NULL;
-PFNGLISFRAMEBUFFERPROC __glewIsFramebuffer = NULL;
-PFNGLISRENDERBUFFERPROC __glewIsRenderbuffer = NULL;
-PFNGLRENDERBUFFERSTORAGEPROC __glewRenderbufferStorage = NULL;
-PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC __glewRenderbufferStorageMultisample = NULL;
-
-PFNGLFRAMEBUFFERTEXTUREARBPROC __glewFramebufferTextureARB = NULL;
-PFNGLFRAMEBUFFERTEXTUREFACEARBPROC __glewFramebufferTextureFaceARB = NULL;
-PFNGLFRAMEBUFFERTEXTURELAYERARBPROC __glewFramebufferTextureLayerARB = NULL;
-PFNGLPROGRAMPARAMETERIARBPROC __glewProgramParameteriARB = NULL;
-
-PFNGLCOLORSUBTABLEPROC __glewColorSubTable = NULL;
-PFNGLCOLORTABLEPROC __glewColorTable = NULL;
-PFNGLCOLORTABLEPARAMETERFVPROC __glewColorTableParameterfv = NULL;
-PFNGLCOLORTABLEPARAMETERIVPROC __glewColorTableParameteriv = NULL;
-PFNGLCONVOLUTIONFILTER1DPROC __glewConvolutionFilter1D = NULL;
-PFNGLCONVOLUTIONFILTER2DPROC __glewConvolutionFilter2D = NULL;
-PFNGLCONVOLUTIONPARAMETERFPROC __glewConvolutionParameterf = NULL;
-PFNGLCONVOLUTIONPARAMETERFVPROC __glewConvolutionParameterfv = NULL;
-PFNGLCONVOLUTIONPARAMETERIPROC __glewConvolutionParameteri = NULL;
-PFNGLCONVOLUTIONPARAMETERIVPROC __glewConvolutionParameteriv = NULL;
-PFNGLCOPYCOLORSUBTABLEPROC __glewCopyColorSubTable = NULL;
-PFNGLCOPYCOLORTABLEPROC __glewCopyColorTable = NULL;
-PFNGLCOPYCONVOLUTIONFILTER1DPROC __glewCopyConvolutionFilter1D = NULL;
-PFNGLCOPYCONVOLUTIONFILTER2DPROC __glewCopyConvolutionFilter2D = NULL;
-PFNGLGETCOLORTABLEPROC __glewGetColorTable = NULL;
-PFNGLGETCOLORTABLEPARAMETERFVPROC __glewGetColorTableParameterfv = NULL;
-PFNGLGETCOLORTABLEPARAMETERIVPROC __glewGetColorTableParameteriv = NULL;
-PFNGLGETCONVOLUTIONFILTERPROC __glewGetConvolutionFilter = NULL;
-PFNGLGETCONVOLUTIONPARAMETERFVPROC __glewGetConvolutionParameterfv = NULL;
-PFNGLGETCONVOLUTIONPARAMETERIVPROC __glewGetConvolutionParameteriv = NULL;
-PFNGLGETHISTOGRAMPROC __glewGetHistogram = NULL;
-PFNGLGETHISTOGRAMPARAMETERFVPROC __glewGetHistogramParameterfv = NULL;
-PFNGLGETHISTOGRAMPARAMETERIVPROC __glewGetHistogramParameteriv = NULL;
-PFNGLGETMINMAXPROC __glewGetMinmax = NULL;
-PFNGLGETMINMAXPARAMETERFVPROC __glewGetMinmaxParameterfv = NULL;
-PFNGLGETMINMAXPARAMETERIVPROC __glewGetMinmaxParameteriv = NULL;
-PFNGLGETSEPARABLEFILTERPROC __glewGetSeparableFilter = NULL;
-PFNGLHISTOGRAMPROC __glewHistogram = NULL;
-PFNGLMINMAXPROC __glewMinmax = NULL;
-PFNGLRESETHISTOGRAMPROC __glewResetHistogram = NULL;
-PFNGLRESETMINMAXPROC __glewResetMinmax = NULL;
-PFNGLSEPARABLEFILTER2DPROC __glewSeparableFilter2D = NULL;
-
-PFNGLVERTEXATTRIBDIVISORARBPROC __glewVertexAttribDivisorARB = NULL;
-
-PFNGLFLUSHMAPPEDBUFFERRANGEPROC __glewFlushMappedBufferRange = NULL;
-PFNGLMAPBUFFERRANGEPROC __glewMapBufferRange = NULL;
-
-PFNGLCURRENTPALETTEMATRIXARBPROC __glewCurrentPaletteMatrixARB = NULL;
-PFNGLMATRIXINDEXPOINTERARBPROC __glewMatrixIndexPointerARB = NULL;
-PFNGLMATRIXINDEXUBVARBPROC __glewMatrixIndexubvARB = NULL;
-PFNGLMATRIXINDEXUIVARBPROC __glewMatrixIndexuivARB = NULL;
-PFNGLMATRIXINDEXUSVARBPROC __glewMatrixIndexusvARB = NULL;
-
-PFNGLSAMPLECOVERAGEARBPROC __glewSampleCoverageARB = NULL;
-
-PFNGLACTIVETEXTUREARBPROC __glewActiveTextureARB = NULL;
-PFNGLCLIENTACTIVETEXTUREARBPROC __glewClientActiveTextureARB = NULL;
-PFNGLMULTITEXCOORD1DARBPROC __glewMultiTexCoord1dARB = NULL;
-PFNGLMULTITEXCOORD1DVARBPROC __glewMultiTexCoord1dvARB = NULL;
-PFNGLMULTITEXCOORD1FARBPROC __glewMultiTexCoord1fARB = NULL;
-PFNGLMULTITEXCOORD1FVARBPROC __glewMultiTexCoord1fvARB = NULL;
-PFNGLMULTITEXCOORD1IARBPROC __glewMultiTexCoord1iARB = NULL;
-PFNGLMULTITEXCOORD1IVARBPROC __glewMultiTexCoord1ivARB = NULL;
-PFNGLMULTITEXCOORD1SARBPROC __glewMultiTexCoord1sARB = NULL;
-PFNGLMULTITEXCOORD1SVARBPROC __glewMultiTexCoord1svARB = NULL;
-PFNGLMULTITEXCOORD2DARBPROC __glewMultiTexCoord2dARB = NULL;
-PFNGLMULTITEXCOORD2DVARBPROC __glewMultiTexCoord2dvARB = NULL;
-PFNGLMULTITEXCOORD2FARBPROC __glewMultiTexCoord2fARB = NULL;
-PFNGLMULTITEXCOORD2FVARBPROC __glewMultiTexCoord2fvARB = NULL;
-PFNGLMULTITEXCOORD2IARBPROC __glewMultiTexCoord2iARB = NULL;
-PFNGLMULTITEXCOORD2IVARBPROC __glewMultiTexCoord2ivARB = NULL;
-PFNGLMULTITEXCOORD2SARBPROC __glewMultiTexCoord2sARB = NULL;
-PFNGLMULTITEXCOORD2SVARBPROC __glewMultiTexCoord2svARB = NULL;
-PFNGLMULTITEXCOORD3DARBPROC __glewMultiTexCoord3dARB = NULL;
-PFNGLMULTITEXCOORD3DVARBPROC __glewMultiTexCoord3dvARB = NULL;
-PFNGLMULTITEXCOORD3FARBPROC __glewMultiTexCoord3fARB = NULL;
-PFNGLMULTITEXCOORD3FVARBPROC __glewMultiTexCoord3fvARB = NULL;
-PFNGLMULTITEXCOORD3IARBPROC __glewMultiTexCoord3iARB = NULL;
-PFNGLMULTITEXCOORD3IVARBPROC __glewMultiTexCoord3ivARB = NULL;
-PFNGLMULTITEXCOORD3SARBPROC __glewMultiTexCoord3sARB = NULL;
-PFNGLMULTITEXCOORD3SVARBPROC __glewMultiTexCoord3svARB = NULL;
-PFNGLMULTITEXCOORD4DARBPROC __glewMultiTexCoord4dARB = NULL;
-PFNGLMULTITEXCOORD4DVARBPROC __glewMultiTexCoord4dvARB = NULL;
-PFNGLMULTITEXCOORD4FARBPROC __glewMultiTexCoord4fARB = NULL;
-PFNGLMULTITEXCOORD4FVARBPROC __glewMultiTexCoord4fvARB = NULL;
-PFNGLMULTITEXCOORD4IARBPROC __glewMultiTexCoord4iARB = NULL;
-PFNGLMULTITEXCOORD4IVARBPROC __glewMultiTexCoord4ivARB = NULL;
-PFNGLMULTITEXCOORD4SARBPROC __glewMultiTexCoord4sARB = NULL;
-PFNGLMULTITEXCOORD4SVARBPROC __glewMultiTexCoord4svARB = NULL;
-
-PFNGLBEGINQUERYARBPROC __glewBeginQueryARB = NULL;
-PFNGLDELETEQUERIESARBPROC __glewDeleteQueriesARB = NULL;
-PFNGLENDQUERYARBPROC __glewEndQueryARB = NULL;
-PFNGLGENQUERIESARBPROC __glewGenQueriesARB = NULL;
-PFNGLGETQUERYOBJECTIVARBPROC __glewGetQueryObjectivARB = NULL;
-PFNGLGETQUERYOBJECTUIVARBPROC __glewGetQueryObjectuivARB = NULL;
-PFNGLGETQUERYIVARBPROC __glewGetQueryivARB = NULL;
-PFNGLISQUERYARBPROC __glewIsQueryARB = NULL;
-
-PFNGLPOINTPARAMETERFARBPROC __glewPointParameterfARB = NULL;
-PFNGLPOINTPARAMETERFVARBPROC __glewPointParameterfvARB = NULL;
-
-PFNGLPROVOKINGVERTEXPROC __glewProvokingVertex = NULL;
-
-PFNGLMINSAMPLESHADINGARBPROC __glewMinSampleShadingARB = NULL;
-
-PFNGLBINDSAMPLERPROC __glewBindSampler = NULL;
-PFNGLDELETESAMPLERSPROC __glewDeleteSamplers = NULL;
-PFNGLGENSAMPLERSPROC __glewGenSamplers = NULL;
-PFNGLGETSAMPLERPARAMETERIIVPROC __glewGetSamplerParameterIiv = NULL;
-PFNGLGETSAMPLERPARAMETERIUIVPROC __glewGetSamplerParameterIuiv = NULL;
-PFNGLGETSAMPLERPARAMETERFVPROC __glewGetSamplerParameterfv = NULL;
-PFNGLGETSAMPLERPARAMETERIVPROC __glewGetSamplerParameteriv = NULL;
-PFNGLISSAMPLERPROC __glewIsSampler = NULL;
-PFNGLSAMPLERPARAMETERIIVPROC __glewSamplerParameterIiv = NULL;
-PFNGLSAMPLERPARAMETERIUIVPROC __glewSamplerParameterIuiv = NULL;
-PFNGLSAMPLERPARAMETERFPROC __glewSamplerParameterf = NULL;
-PFNGLSAMPLERPARAMETERFVPROC __glewSamplerParameterfv = NULL;
-PFNGLSAMPLERPARAMETERIPROC __glewSamplerParameteri = NULL;
-PFNGLSAMPLERPARAMETERIVPROC __glewSamplerParameteriv = NULL;
-
-PFNGLATTACHOBJECTARBPROC __glewAttachObjectARB = NULL;
-PFNGLCOMPILESHADERARBPROC __glewCompileShaderARB = NULL;
-PFNGLCREATEPROGRAMOBJECTARBPROC __glewCreateProgramObjectARB = NULL;
-PFNGLCREATESHADEROBJECTARBPROC __glewCreateShaderObjectARB = NULL;
-PFNGLDELETEOBJECTARBPROC __glewDeleteObjectARB = NULL;
-PFNGLDETACHOBJECTARBPROC __glewDetachObjectARB = NULL;
-PFNGLGETACTIVEUNIFORMARBPROC __glewGetActiveUniformARB = NULL;
-PFNGLGETATTACHEDOBJECTSARBPROC __glewGetAttachedObjectsARB = NULL;
-PFNGLGETHANDLEARBPROC __glewGetHandleARB = NULL;
-PFNGLGETINFOLOGARBPROC __glewGetInfoLogARB = NULL;
-PFNGLGETOBJECTPARAMETERFVARBPROC __glewGetObjectParameterfvARB = NULL;
-PFNGLGETOBJECTPARAMETERIVARBPROC __glewGetObjectParameterivARB = NULL;
-PFNGLGETSHADERSOURCEARBPROC __glewGetShaderSourceARB = NULL;
-PFNGLGETUNIFORMLOCATIONARBPROC __glewGetUniformLocationARB = NULL;
-PFNGLGETUNIFORMFVARBPROC __glewGetUniformfvARB = NULL;
-PFNGLGETUNIFORMIVARBPROC __glewGetUniformivARB = NULL;
-PFNGLLINKPROGRAMARBPROC __glewLinkProgramARB = NULL;
-PFNGLSHADERSOURCEARBPROC __glewShaderSourceARB = NULL;
-PFNGLUNIFORM1FARBPROC __glewUniform1fARB = NULL;
-PFNGLUNIFORM1FVARBPROC __glewUniform1fvARB = NULL;
-PFNGLUNIFORM1IARBPROC __glewUniform1iARB = NULL;
-PFNGLUNIFORM1IVARBPROC __glewUniform1ivARB = NULL;
-PFNGLUNIFORM2FARBPROC __glewUniform2fARB = NULL;
-PFNGLUNIFORM2FVARBPROC __glewUniform2fvARB = NULL;
-PFNGLUNIFORM2IARBPROC __glewUniform2iARB = NULL;
-PFNGLUNIFORM2IVARBPROC __glewUniform2ivARB = NULL;
-PFNGLUNIFORM3FARBPROC __glewUniform3fARB = NULL;
-PFNGLUNIFORM3FVARBPROC __glewUniform3fvARB = NULL;
-PFNGLUNIFORM3IARBPROC __glewUniform3iARB = NULL;
-PFNGLUNIFORM3IVARBPROC __glewUniform3ivARB = NULL;
-PFNGLUNIFORM4FARBPROC __glewUniform4fARB = NULL;
-PFNGLUNIFORM4FVARBPROC __glewUniform4fvARB = NULL;
-PFNGLUNIFORM4IARBPROC __glewUniform4iARB = NULL;
-PFNGLUNIFORM4IVARBPROC __glewUniform4ivARB = NULL;
-PFNGLUNIFORMMATRIX2FVARBPROC __glewUniformMatrix2fvARB = NULL;
-PFNGLUNIFORMMATRIX3FVARBPROC __glewUniformMatrix3fvARB = NULL;
-PFNGLUNIFORMMATRIX4FVARBPROC __glewUniformMatrix4fvARB = NULL;
-PFNGLUSEPROGRAMOBJECTARBPROC __glewUseProgramObjectARB = NULL;
-PFNGLVALIDATEPROGRAMARBPROC __glewValidateProgramARB = NULL;
-
-PFNGLGETACTIVESUBROUTINENAMEPROC __glewGetActiveSubroutineName = NULL;
-PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC __glewGetActiveSubroutineUniformName = NULL;
-PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC __glewGetActiveSubroutineUniformiv = NULL;
-PFNGLGETPROGRAMSTAGEIVPROC __glewGetProgramStageiv = NULL;
-PFNGLGETSUBROUTINEINDEXPROC __glewGetSubroutineIndex = NULL;
-PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC __glewGetSubroutineUniformLocation = NULL;
-PFNGLGETUNIFORMSUBROUTINEUIVPROC __glewGetUniformSubroutineuiv = NULL;
-PFNGLUNIFORMSUBROUTINESUIVPROC __glewUniformSubroutinesuiv = NULL;
-
-PFNGLCOMPILESHADERINCLUDEARBPROC __glewCompileShaderIncludeARB = NULL;
-PFNGLDELETENAMEDSTRINGARBPROC __glewDeleteNamedStringARB = NULL;
-PFNGLGETNAMEDSTRINGARBPROC __glewGetNamedStringARB = NULL;
-PFNGLGETNAMEDSTRINGIVARBPROC __glewGetNamedStringivARB = NULL;
-PFNGLISNAMEDSTRINGARBPROC __glewIsNamedStringARB = NULL;
-PFNGLNAMEDSTRINGARBPROC __glewNamedStringARB = NULL;
-
-PFNGLCLIENTWAITSYNCPROC __glewClientWaitSync = NULL;
-PFNGLDELETESYNCPROC __glewDeleteSync = NULL;
-PFNGLFENCESYNCPROC __glewFenceSync = NULL;
-PFNGLGETINTEGER64VPROC __glewGetInteger64v = NULL;
-PFNGLGETSYNCIVPROC __glewGetSynciv = NULL;
-PFNGLISSYNCPROC __glewIsSync = NULL;
-PFNGLWAITSYNCPROC __glewWaitSync = NULL;
-
-PFNGLPATCHPARAMETERFVPROC __glewPatchParameterfv = NULL;
-PFNGLPATCHPARAMETERIPROC __glewPatchParameteri = NULL;
-
-PFNGLTEXBUFFERARBPROC __glewTexBufferARB = NULL;
-
-PFNGLCOMPRESSEDTEXIMAGE1DARBPROC __glewCompressedTexImage1DARB = NULL;
-PFNGLCOMPRESSEDTEXIMAGE2DARBPROC __glewCompressedTexImage2DARB = NULL;
-PFNGLCOMPRESSEDTEXIMAGE3DARBPROC __glewCompressedTexImage3DARB = NULL;
-PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC __glewCompressedTexSubImage1DARB = NULL;
-PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC __glewCompressedTexSubImage2DARB = NULL;
-PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC __glewCompressedTexSubImage3DARB = NULL;
-PFNGLGETCOMPRESSEDTEXIMAGEARBPROC __glewGetCompressedTexImageARB = NULL;
-
-PFNGLGETMULTISAMPLEFVPROC __glewGetMultisamplefv = NULL;
-PFNGLSAMPLEMASKIPROC __glewSampleMaski = NULL;
-PFNGLTEXIMAGE2DMULTISAMPLEPROC __glewTexImage2DMultisample = NULL;
-PFNGLTEXIMAGE3DMULTISAMPLEPROC __glewTexImage3DMultisample = NULL;
-
-PFNGLGETQUERYOBJECTI64VPROC __glewGetQueryObjecti64v = NULL;
-PFNGLGETQUERYOBJECTUI64VPROC __glewGetQueryObjectui64v = NULL;
-PFNGLQUERYCOUNTERPROC __glewQueryCounter = NULL;
-
-PFNGLBINDTRANSFORMFEEDBACKPROC __glewBindTransformFeedback = NULL;
-PFNGLDELETETRANSFORMFEEDBACKSPROC __glewDeleteTransformFeedbacks = NULL;
-PFNGLDRAWTRANSFORMFEEDBACKPROC __glewDrawTransformFeedback = NULL;
-PFNGLGENTRANSFORMFEEDBACKSPROC __glewGenTransformFeedbacks = NULL;
-PFNGLISTRANSFORMFEEDBACKPROC __glewIsTransformFeedback = NULL;
-PFNGLPAUSETRANSFORMFEEDBACKPROC __glewPauseTransformFeedback = NULL;
-PFNGLRESUMETRANSFORMFEEDBACKPROC __glewResumeTransformFeedback = NULL;
-
-PFNGLBEGINQUERYINDEXEDPROC __glewBeginQueryIndexed = NULL;
-PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC __glewDrawTransformFeedbackStream = NULL;
-PFNGLENDQUERYINDEXEDPROC __glewEndQueryIndexed = NULL;
-PFNGLGETQUERYINDEXEDIVPROC __glewGetQueryIndexediv = NULL;
-
-PFNGLLOADTRANSPOSEMATRIXDARBPROC __glewLoadTransposeMatrixdARB = NULL;
-PFNGLLOADTRANSPOSEMATRIXFARBPROC __glewLoadTransposeMatrixfARB = NULL;
-PFNGLMULTTRANSPOSEMATRIXDARBPROC __glewMultTransposeMatrixdARB = NULL;
-PFNGLMULTTRANSPOSEMATRIXFARBPROC __glewMultTransposeMatrixfARB = NULL;
-
-PFNGLBINDBUFFERBASEPROC __glewBindBufferBase = NULL;
-PFNGLBINDBUFFERRANGEPROC __glewBindBufferRange = NULL;
-PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC __glewGetActiveUniformBlockName = NULL;
-PFNGLGETACTIVEUNIFORMBLOCKIVPROC __glewGetActiveUniformBlockiv = NULL;
-PFNGLGETACTIVEUNIFORMNAMEPROC __glewGetActiveUniformName = NULL;
-PFNGLGETACTIVEUNIFORMSIVPROC __glewGetActiveUniformsiv = NULL;
-PFNGLGETINTEGERI_VPROC __glewGetIntegeri_v = NULL;
-PFNGLGETUNIFORMBLOCKINDEXPROC __glewGetUniformBlockIndex = NULL;
-PFNGLGETUNIFORMINDICESPROC __glewGetUniformIndices = NULL;
-PFNGLUNIFORMBLOCKBINDINGPROC __glewUniformBlockBinding = NULL;
-
-PFNGLBINDVERTEXARRAYPROC __glewBindVertexArray = NULL;
-PFNGLDELETEVERTEXARRAYSPROC __glewDeleteVertexArrays = NULL;
-PFNGLGENVERTEXARRAYSPROC __glewGenVertexArrays = NULL;
-PFNGLISVERTEXARRAYPROC __glewIsVertexArray = NULL;
-
-PFNGLVERTEXBLENDARBPROC __glewVertexBlendARB = NULL;
-PFNGLWEIGHTPOINTERARBPROC __glewWeightPointerARB = NULL;
-PFNGLWEIGHTBVARBPROC __glewWeightbvARB = NULL;
-PFNGLWEIGHTDVARBPROC __glewWeightdvARB = NULL;
-PFNGLWEIGHTFVARBPROC __glewWeightfvARB = NULL;
-PFNGLWEIGHTIVARBPROC __glewWeightivARB = NULL;
-PFNGLWEIGHTSVARBPROC __glewWeightsvARB = NULL;
-PFNGLWEIGHTUBVARBPROC __glewWeightubvARB = NULL;
-PFNGLWEIGHTUIVARBPROC __glewWeightuivARB = NULL;
-PFNGLWEIGHTUSVARBPROC __glewWeightusvARB = NULL;
-
-PFNGLBINDBUFFERARBPROC __glewBindBufferARB = NULL;
-PFNGLBUFFERDATAARBPROC __glewBufferDataARB = NULL;
-PFNGLBUFFERSUBDATAARBPROC __glewBufferSubDataARB = NULL;
-PFNGLDELETEBUFFERSARBPROC __glewDeleteBuffersARB = NULL;
-PFNGLGENBUFFERSARBPROC __glewGenBuffersARB = NULL;
-PFNGLGETBUFFERPARAMETERIVARBPROC __glewGetBufferParameterivARB = NULL;
-PFNGLGETBUFFERPOINTERVARBPROC __glewGetBufferPointervARB = NULL;
-PFNGLGETBUFFERSUBDATAARBPROC __glewGetBufferSubDataARB = NULL;
-PFNGLISBUFFERARBPROC __glewIsBufferARB = NULL;
-PFNGLMAPBUFFERARBPROC __glewMapBufferARB = NULL;
-PFNGLUNMAPBUFFERARBPROC __glewUnmapBufferARB = NULL;
-
-PFNGLBINDPROGRAMARBPROC __glewBindProgramARB = NULL;
-PFNGLDELETEPROGRAMSARBPROC __glewDeleteProgramsARB = NULL;
-PFNGLDISABLEVERTEXATTRIBARRAYARBPROC __glewDisableVertexAttribArrayARB = NULL;
-PFNGLENABLEVERTEXATTRIBARRAYARBPROC __glewEnableVertexAttribArrayARB = NULL;
-PFNGLGENPROGRAMSARBPROC __glewGenProgramsARB = NULL;
-PFNGLGETPROGRAMENVPARAMETERDVARBPROC __glewGetProgramEnvParameterdvARB = NULL;
-PFNGLGETPROGRAMENVPARAMETERFVARBPROC __glewGetProgramEnvParameterfvARB = NULL;
-PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC __glewGetProgramLocalParameterdvARB = NULL;
-PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC __glewGetProgramLocalParameterfvARB = NULL;
-PFNGLGETPROGRAMSTRINGARBPROC __glewGetProgramStringARB = NULL;
-PFNGLGETPROGRAMIVARBPROC __glewGetProgramivARB = NULL;
-PFNGLGETVERTEXATTRIBPOINTERVARBPROC __glewGetVertexAttribPointervARB = NULL;
-PFNGLGETVERTEXATTRIBDVARBPROC __glewGetVertexAttribdvARB = NULL;
-PFNGLGETVERTEXATTRIBFVARBPROC __glewGetVertexAttribfvARB = NULL;
-PFNGLGETVERTEXATTRIBIVARBPROC __glewGetVertexAttribivARB = NULL;
-PFNGLISPROGRAMARBPROC __glewIsProgramARB = NULL;
-PFNGLPROGRAMENVPARAMETER4DARBPROC __glewProgramEnvParameter4dARB = NULL;
-PFNGLPROGRAMENVPARAMETER4DVARBPROC __glewProgramEnvParameter4dvARB = NULL;
-PFNGLPROGRAMENVPARAMETER4FARBPROC __glewProgramEnvParameter4fARB = NULL;
-PFNGLPROGRAMENVPARAMETER4FVARBPROC __glewProgramEnvParameter4fvARB = NULL;
-PFNGLPROGRAMLOCALPARAMETER4DARBPROC __glewProgramLocalParameter4dARB = NULL;
-PFNGLPROGRAMLOCALPARAMETER4DVARBPROC __glewProgramLocalParameter4dvARB = NULL;
-PFNGLPROGRAMLOCALPARAMETER4FARBPROC __glewProgramLocalParameter4fARB = NULL;
-PFNGLPROGRAMLOCALPARAMETER4FVARBPROC __glewProgramLocalParameter4fvARB = NULL;
-PFNGLPROGRAMSTRINGARBPROC __glewProgramStringARB = NULL;
-PFNGLVERTEXATTRIB1DARBPROC __glewVertexAttrib1dARB = NULL;
-PFNGLVERTEXATTRIB1DVARBPROC __glewVertexAttrib1dvARB = NULL;
-PFNGLVERTEXATTRIB1FARBPROC __glewVertexAttrib1fARB = NULL;
-PFNGLVERTEXATTRIB1FVARBPROC __glewVertexAttrib1fvARB = NULL;
-PFNGLVERTEXATTRIB1SARBPROC __glewVertexAttrib1sARB = NULL;
-PFNGLVERTEXATTRIB1SVARBPROC __glewVertexAttrib1svARB = NULL;
-PFNGLVERTEXATTRIB2DARBPROC __glewVertexAttrib2dARB = NULL;
-PFNGLVERTEXATTRIB2DVARBPROC __glewVertexAttrib2dvARB = NULL;
-PFNGLVERTEXATTRIB2FARBPROC __glewVertexAttrib2fARB = NULL;
-PFNGLVERTEXATTRIB2FVARBPROC __glewVertexAttrib2fvARB = NULL;
-PFNGLVERTEXATTRIB2SARBPROC __glewVertexAttrib2sARB = NULL;
-PFNGLVERTEXATTRIB2SVARBPROC __glewVertexAttrib2svARB = NULL;
-PFNGLVERTEXATTRIB3DARBPROC __glewVertexAttrib3dARB = NULL;
-PFNGLVERTEXATTRIB3DVARBPROC __glewVertexAttrib3dvARB = NULL;
-PFNGLVERTEXATTRIB3FARBPROC __glewVertexAttrib3fARB = NULL;
-PFNGLVERTEXATTRIB3FVARBPROC __glewVertexAttrib3fvARB = NULL;
-PFNGLVERTEXATTRIB3SARBPROC __glewVertexAttrib3sARB = NULL;
-PFNGLVERTEXATTRIB3SVARBPROC __glewVertexAttrib3svARB = NULL;
-PFNGLVERTEXATTRIB4NBVARBPROC __glewVertexAttrib4NbvARB = NULL;
-PFNGLVERTEXATTRIB4NIVARBPROC __glewVertexAttrib4NivARB = NULL;
-PFNGLVERTEXATTRIB4NSVARBPROC __glewVertexAttrib4NsvARB = NULL;
-PFNGLVERTEXATTRIB4NUBARBPROC __glewVertexAttrib4NubARB = NULL;
-PFNGLVERTEXATTRIB4NUBVARBPROC __glewVertexAttrib4NubvARB = NULL;
-PFNGLVERTEXATTRIB4NUIVARBPROC __glewVertexAttrib4NuivARB = NULL;
-PFNGLVERTEXATTRIB4NUSVARBPROC __glewVertexAttrib4NusvARB = NULL;
-PFNGLVERTEXATTRIB4BVARBPROC __glewVertexAttrib4bvARB = NULL;
-PFNGLVERTEXATTRIB4DARBPROC __glewVertexAttrib4dARB = NULL;
-PFNGLVERTEXATTRIB4DVARBPROC __glewVertexAttrib4dvARB = NULL;
-PFNGLVERTEXATTRIB4FARBPROC __glewVertexAttrib4fARB = NULL;
-PFNGLVERTEXATTRIB4FVARBPROC __glewVertexAttrib4fvARB = NULL;
-PFNGLVERTEXATTRIB4IVARBPROC __glewVertexAttrib4ivARB = NULL;
-PFNGLVERTEXATTRIB4SARBPROC __glewVertexAttrib4sARB = NULL;
-PFNGLVERTEXATTRIB4SVARBPROC __glewVertexAttrib4svARB = NULL;
-PFNGLVERTEXATTRIB4UBVARBPROC __glewVertexAttrib4ubvARB = NULL;
-PFNGLVERTEXATTRIB4UIVARBPROC __glewVertexAttrib4uivARB = NULL;
-PFNGLVERTEXATTRIB4USVARBPROC __glewVertexAttrib4usvARB = NULL;
-PFNGLVERTEXATTRIBPOINTERARBPROC __glewVertexAttribPointerARB = NULL;
-
-PFNGLBINDATTRIBLOCATIONARBPROC __glewBindAttribLocationARB = NULL;
-PFNGLGETACTIVEATTRIBARBPROC __glewGetActiveAttribARB = NULL;
-PFNGLGETATTRIBLOCATIONARBPROC __glewGetAttribLocationARB = NULL;
-
-PFNGLCOLORP3UIPROC __glewColorP3ui = NULL;
-PFNGLCOLORP3UIVPROC __glewColorP3uiv = NULL;
-PFNGLCOLORP4UIPROC __glewColorP4ui = NULL;
-PFNGLCOLORP4UIVPROC __glewColorP4uiv = NULL;
-PFNGLMULTITEXCOORDP1UIPROC __glewMultiTexCoordP1ui = NULL;
-PFNGLMULTITEXCOORDP1UIVPROC __glewMultiTexCoordP1uiv = NULL;
-PFNGLMULTITEXCOORDP2UIPROC __glewMultiTexCoordP2ui = NULL;
-PFNGLMULTITEXCOORDP2UIVPROC __glewMultiTexCoordP2uiv = NULL;
-PFNGLMULTITEXCOORDP3UIPROC __glewMultiTexCoordP3ui = NULL;
-PFNGLMULTITEXCOORDP3UIVPROC __glewMultiTexCoordP3uiv = NULL;
-PFNGLMULTITEXCOORDP4UIPROC __glewMultiTexCoordP4ui = NULL;
-PFNGLMULTITEXCOORDP4UIVPROC __glewMultiTexCoordP4uiv = NULL;
-PFNGLNORMALP3UIPROC __glewNormalP3ui = NULL;
-PFNGLNORMALP3UIVPROC __glewNormalP3uiv = NULL;
-PFNGLSECONDARYCOLORP3UIPROC __glewSecondaryColorP3ui = NULL;
-PFNGLSECONDARYCOLORP3UIVPROC __glewSecondaryColorP3uiv = NULL;
-PFNGLTEXCOORDP1UIPROC __glewTexCoordP1ui = NULL;
-PFNGLTEXCOORDP1UIVPROC __glewTexCoordP1uiv = NULL;
-PFNGLTEXCOORDP2UIPROC __glewTexCoordP2ui = NULL;
-PFNGLTEXCOORDP2UIVPROC __glewTexCoordP2uiv = NULL;
-PFNGLTEXCOORDP3UIPROC __glewTexCoordP3ui = NULL;
-PFNGLTEXCOORDP3UIVPROC __glewTexCoordP3uiv = NULL;
-PFNGLTEXCOORDP4UIPROC __glewTexCoordP4ui = NULL;
-PFNGLTEXCOORDP4UIVPROC __glewTexCoordP4uiv = NULL;
-PFNGLVERTEXATTRIBP1UIPROC __glewVertexAttribP1ui = NULL;
-PFNGLVERTEXATTRIBP1UIVPROC __glewVertexAttribP1uiv = NULL;
-PFNGLVERTEXATTRIBP2UIPROC __glewVertexAttribP2ui = NULL;
-PFNGLVERTEXATTRIBP2UIVPROC __glewVertexAttribP2uiv = NULL;
-PFNGLVERTEXATTRIBP3UIPROC __glewVertexAttribP3ui = NULL;
-PFNGLVERTEXATTRIBP3UIVPROC __glewVertexAttribP3uiv = NULL;
-PFNGLVERTEXATTRIBP4UIPROC __glewVertexAttribP4ui = NULL;
-PFNGLVERTEXATTRIBP4UIVPROC __glewVertexAttribP4uiv = NULL;
-PFNGLVERTEXP2UIPROC __glewVertexP2ui = NULL;
-PFNGLVERTEXP2UIVPROC __glewVertexP2uiv = NULL;
-PFNGLVERTEXP3UIPROC __glewVertexP3ui = NULL;
-PFNGLVERTEXP3UIVPROC __glewVertexP3uiv = NULL;
-PFNGLVERTEXP4UIPROC __glewVertexP4ui = NULL;
-PFNGLVERTEXP4UIVPROC __glewVertexP4uiv = NULL;
-
-PFNGLWINDOWPOS2DARBPROC __glewWindowPos2dARB = NULL;
-PFNGLWINDOWPOS2DVARBPROC __glewWindowPos2dvARB = NULL;
-PFNGLWINDOWPOS2FARBPROC __glewWindowPos2fARB = NULL;
-PFNGLWINDOWPOS2FVARBPROC __glewWindowPos2fvARB = NULL;
-PFNGLWINDOWPOS2IARBPROC __glewWindowPos2iARB = NULL;
-PFNGLWINDOWPOS2IVARBPROC __glewWindowPos2ivARB = NULL;
-PFNGLWINDOWPOS2SARBPROC __glewWindowPos2sARB = NULL;
-PFNGLWINDOWPOS2SVARBPROC __glewWindowPos2svARB = NULL;
-PFNGLWINDOWPOS3DARBPROC __glewWindowPos3dARB = NULL;
-PFNGLWINDOWPOS3DVARBPROC __glewWindowPos3dvARB = NULL;
-PFNGLWINDOWPOS3FARBPROC __glewWindowPos3fARB = NULL;
-PFNGLWINDOWPOS3FVARBPROC __glewWindowPos3fvARB = NULL;
-PFNGLWINDOWPOS3IARBPROC __glewWindowPos3iARB = NULL;
-PFNGLWINDOWPOS3IVARBPROC __glewWindowPos3ivARB = NULL;
-PFNGLWINDOWPOS3SARBPROC __glewWindowPos3sARB = NULL;
-PFNGLWINDOWPOS3SVARBPROC __glewWindowPos3svARB = NULL;
-
-PFNGLDRAWBUFFERSATIPROC __glewDrawBuffersATI = NULL;
-
-PFNGLDRAWELEMENTARRAYATIPROC __glewDrawElementArrayATI = NULL;
-PFNGLDRAWRANGEELEMENTARRAYATIPROC __glewDrawRangeElementArrayATI = NULL;
-PFNGLELEMENTPOINTERATIPROC __glewElementPointerATI = NULL;
-
-PFNGLGETTEXBUMPPARAMETERFVATIPROC __glewGetTexBumpParameterfvATI = NULL;
-PFNGLGETTEXBUMPPARAMETERIVATIPROC __glewGetTexBumpParameterivATI = NULL;
-PFNGLTEXBUMPPARAMETERFVATIPROC __glewTexBumpParameterfvATI = NULL;
-PFNGLTEXBUMPPARAMETERIVATIPROC __glewTexBumpParameterivATI = NULL;
-
-PFNGLALPHAFRAGMENTOP1ATIPROC __glewAlphaFragmentOp1ATI = NULL;
-PFNGLALPHAFRAGMENTOP2ATIPROC __glewAlphaFragmentOp2ATI = NULL;
-PFNGLALPHAFRAGMENTOP3ATIPROC __glewAlphaFragmentOp3ATI = NULL;
-PFNGLBEGINFRAGMENTSHADERATIPROC __glewBeginFragmentShaderATI = NULL;
-PFNGLBINDFRAGMENTSHADERATIPROC __glewBindFragmentShaderATI = NULL;
-PFNGLCOLORFRAGMENTOP1ATIPROC __glewColorFragmentOp1ATI = NULL;
-PFNGLCOLORFRAGMENTOP2ATIPROC __glewColorFragmentOp2ATI = NULL;
-PFNGLCOLORFRAGMENTOP3ATIPROC __glewColorFragmentOp3ATI = NULL;
-PFNGLDELETEFRAGMENTSHADERATIPROC __glewDeleteFragmentShaderATI = NULL;
-PFNGLENDFRAGMENTSHADERATIPROC __glewEndFragmentShaderATI = NULL;
-PFNGLGENFRAGMENTSHADERSATIPROC __glewGenFragmentShadersATI = NULL;
-PFNGLPASSTEXCOORDATIPROC __glewPassTexCoordATI = NULL;
-PFNGLSAMPLEMAPATIPROC __glewSampleMapATI = NULL;
-PFNGLSETFRAGMENTSHADERCONSTANTATIPROC __glewSetFragmentShaderConstantATI = NULL;
-
-PFNGLMAPOBJECTBUFFERATIPROC __glewMapObjectBufferATI = NULL;
-PFNGLUNMAPOBJECTBUFFERATIPROC __glewUnmapObjectBufferATI = NULL;
-
-PFNGLPNTRIANGLESFATIPROC __glPNTrianglewesfATI = NULL;
-PFNGLPNTRIANGLESIATIPROC __glPNTrianglewesiATI = NULL;
-
-PFNGLSTENCILFUNCSEPARATEATIPROC __glewStencilFuncSeparateATI = NULL;
-PFNGLSTENCILOPSEPARATEATIPROC __glewStencilOpSeparateATI = NULL;
-
-PFNGLARRAYOBJECTATIPROC __glewArrayObjectATI = NULL;
-PFNGLFREEOBJECTBUFFERATIPROC __glewFreeObjectBufferATI = NULL;
-PFNGLGETARRAYOBJECTFVATIPROC __glewGetArrayObjectfvATI = NULL;
-PFNGLGETARRAYOBJECTIVATIPROC __glewGetArrayObjectivATI = NULL;
-PFNGLGETOBJECTBUFFERFVATIPROC __glewGetObjectBufferfvATI = NULL;
-PFNGLGETOBJECTBUFFERIVATIPROC __glewGetObjectBufferivATI = NULL;
-PFNGLGETVARIANTARRAYOBJECTFVATIPROC __glewGetVariantArrayObjectfvATI = NULL;
-PFNGLGETVARIANTARRAYOBJECTIVATIPROC __glewGetVariantArrayObjectivATI = NULL;
-PFNGLISOBJECTBUFFERATIPROC __glewIsObjectBufferATI = NULL;
-PFNGLNEWOBJECTBUFFERATIPROC __glewNewObjectBufferATI = NULL;
-PFNGLUPDATEOBJECTBUFFERATIPROC __glewUpdateObjectBufferATI = NULL;
-PFNGLVARIANTARRAYOBJECTATIPROC __glewVariantArrayObjectATI = NULL;
-
-PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC __glewGetVertexAttribArrayObjectfvATI = NULL;
-PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC __glewGetVertexAttribArrayObjectivATI = NULL;
-PFNGLVERTEXATTRIBARRAYOBJECTATIPROC __glewVertexAttribArrayObjectATI = NULL;
-
-PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC __glewClientActiveVertexStreamATI = NULL;
-PFNGLNORMALSTREAM3BATIPROC __glewNormalStream3bATI = NULL;
-PFNGLNORMALSTREAM3BVATIPROC __glewNormalStream3bvATI = NULL;
-PFNGLNORMALSTREAM3DATIPROC __glewNormalStream3dATI = NULL;
-PFNGLNORMALSTREAM3DVATIPROC __glewNormalStream3dvATI = NULL;
-PFNGLNORMALSTREAM3FATIPROC __glewNormalStream3fATI = NULL;
-PFNGLNORMALSTREAM3FVATIPROC __glewNormalStream3fvATI = NULL;
-PFNGLNORMALSTREAM3IATIPROC __glewNormalStream3iATI = NULL;
-PFNGLNORMALSTREAM3IVATIPROC __glewNormalStream3ivATI = NULL;
-PFNGLNORMALSTREAM3SATIPROC __glewNormalStream3sATI = NULL;
-PFNGLNORMALSTREAM3SVATIPROC __glewNormalStream3svATI = NULL;
-PFNGLVERTEXBLENDENVFATIPROC __glewVertexBlendEnvfATI = NULL;
-PFNGLVERTEXBLENDENVIATIPROC __glewVertexBlendEnviATI = NULL;
-PFNGLVERTEXSTREAM2DATIPROC __glewVertexStream2dATI = NULL;
-PFNGLVERTEXSTREAM2DVATIPROC __glewVertexStream2dvATI = NULL;
-PFNGLVERTEXSTREAM2FATIPROC __glewVertexStream2fATI = NULL;
-PFNGLVERTEXSTREAM2FVATIPROC __glewVertexStream2fvATI = NULL;
-PFNGLVERTEXSTREAM2IATIPROC __glewVertexStream2iATI = NULL;
-PFNGLVERTEXSTREAM2IVATIPROC __glewVertexStream2ivATI = NULL;
-PFNGLVERTEXSTREAM2SATIPROC __glewVertexStream2sATI = NULL;
-PFNGLVERTEXSTREAM2SVATIPROC __glewVertexStream2svATI = NULL;
-PFNGLVERTEXSTREAM3DATIPROC __glewVertexStream3dATI = NULL;
-PFNGLVERTEXSTREAM3DVATIPROC __glewVertexStream3dvATI = NULL;
-PFNGLVERTEXSTREAM3FATIPROC __glewVertexStream3fATI = NULL;
-PFNGLVERTEXSTREAM3FVATIPROC __glewVertexStream3fvATI = NULL;
-PFNGLVERTEXSTREAM3IATIPROC __glewVertexStream3iATI = NULL;
-PFNGLVERTEXSTREAM3IVATIPROC __glewVertexStream3ivATI = NULL;
-PFNGLVERTEXSTREAM3SATIPROC __glewVertexStream3sATI = NULL;
-PFNGLVERTEXSTREAM3SVATIPROC __glewVertexStream3svATI = NULL;
-PFNGLVERTEXSTREAM4DATIPROC __glewVertexStream4dATI = NULL;
-PFNGLVERTEXSTREAM4DVATIPROC __glewVertexStream4dvATI = NULL;
-PFNGLVERTEXSTREAM4FATIPROC __glewVertexStream4fATI = NULL;
-PFNGLVERTEXSTREAM4FVATIPROC __glewVertexStream4fvATI = NULL;
-PFNGLVERTEXSTREAM4IATIPROC __glewVertexStream4iATI = NULL;
-PFNGLVERTEXSTREAM4IVATIPROC __glewVertexStream4ivATI = NULL;
-PFNGLVERTEXSTREAM4SATIPROC __glewVertexStream4sATI = NULL;
-PFNGLVERTEXSTREAM4SVATIPROC __glewVertexStream4svATI = NULL;
-
-PFNGLGETUNIFORMBUFFERSIZEEXTPROC __glewGetUniformBufferSizeEXT = NULL;
-PFNGLGETUNIFORMOFFSETEXTPROC __glewGetUniformOffsetEXT = NULL;
-PFNGLUNIFORMBUFFEREXTPROC __glewUniformBufferEXT = NULL;
-
-PFNGLBLENDCOLOREXTPROC __glewBlendColorEXT = NULL;
-
-PFNGLBLENDEQUATIONSEPARATEEXTPROC __glewBlendEquationSeparateEXT = NULL;
-
-PFNGLBLENDFUNCSEPARATEEXTPROC __glewBlendFuncSeparateEXT = NULL;
-
-PFNGLBLENDEQUATIONEXTPROC __glewBlendEquationEXT = NULL;
-
-PFNGLCOLORSUBTABLEEXTPROC __glewColorSubTableEXT = NULL;
-PFNGLCOPYCOLORSUBTABLEEXTPROC __glewCopyColorSubTableEXT = NULL;
-
-PFNGLLOCKARRAYSEXTPROC __glewLockArraysEXT = NULL;
-PFNGLUNLOCKARRAYSEXTPROC __glewUnlockArraysEXT = NULL;
-
-PFNGLCONVOLUTIONFILTER1DEXTPROC __glewConvolutionFilter1DEXT = NULL;
-PFNGLCONVOLUTIONFILTER2DEXTPROC __glewConvolutionFilter2DEXT = NULL;
-PFNGLCONVOLUTIONPARAMETERFEXTPROC __glewConvolutionParameterfEXT = NULL;
-PFNGLCONVOLUTIONPARAMETERFVEXTPROC __glewConvolutionParameterfvEXT = NULL;
-PFNGLCONVOLUTIONPARAMETERIEXTPROC __glewConvolutionParameteriEXT = NULL;
-PFNGLCONVOLUTIONPARAMETERIVEXTPROC __glewConvolutionParameterivEXT = NULL;
-PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC __glewCopyConvolutionFilter1DEXT = NULL;
-PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC __glewCopyConvolutionFilter2DEXT = NULL;
-PFNGLGETCONVOLUTIONFILTEREXTPROC __glewGetConvolutionFilterEXT = NULL;
-PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC __glewGetConvolutionParameterfvEXT = NULL;
-PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC __glewGetConvolutionParameterivEXT = NULL;
-PFNGLGETSEPARABLEFILTEREXTPROC __glewGetSeparableFilterEXT = NULL;
-PFNGLSEPARABLEFILTER2DEXTPROC __glewSeparableFilter2DEXT = NULL;
-
-PFNGLBINORMALPOINTEREXTPROC __glewBinormalPointerEXT = NULL;
-PFNGLTANGENTPOINTEREXTPROC __glewTangentPointerEXT = NULL;
-
-PFNGLCOPYTEXIMAGE1DEXTPROC __glewCopyTexImage1DEXT = NULL;
-PFNGLCOPYTEXIMAGE2DEXTPROC __glewCopyTexImage2DEXT = NULL;
-PFNGLCOPYTEXSUBIMAGE1DEXTPROC __glewCopyTexSubImage1DEXT = NULL;
-PFNGLCOPYTEXSUBIMAGE2DEXTPROC __glewCopyTexSubImage2DEXT = NULL;
-PFNGLCOPYTEXSUBIMAGE3DEXTPROC __glewCopyTexSubImage3DEXT = NULL;
-
-PFNGLCULLPARAMETERDVEXTPROC __glewCullParameterdvEXT = NULL;
-PFNGLCULLPARAMETERFVEXTPROC __glewCullParameterfvEXT = NULL;
-
-PFNGLDEPTHBOUNDSEXTPROC __glewDepthBoundsEXT = NULL;
-
-PFNGLBINDMULTITEXTUREEXTPROC __glewBindMultiTextureEXT = NULL;
-PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC __glewCheckNamedFramebufferStatusEXT = NULL;
-PFNGLCLIENTATTRIBDEFAULTEXTPROC __glewClientAttribDefaultEXT = NULL;
-PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC __glewCompressedMultiTexImage1DEXT = NULL;
-PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC __glewCompressedMultiTexImage2DEXT = NULL;
-PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC __glewCompressedMultiTexImage3DEXT = NULL;
-PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC __glewCompressedMultiTexSubImage1DEXT = NULL;
-PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC __glewCompressedMultiTexSubImage2DEXT = NULL;
-PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC __glewCompressedMultiTexSubImage3DEXT = NULL;
-PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC __glewCompressedTextureImage1DEXT = NULL;
-PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC __glewCompressedTextureImage2DEXT = NULL;
-PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC __glewCompressedTextureImage3DEXT = NULL;
-PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC __glewCompressedTextureSubImage1DEXT = NULL;
-PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC __glewCompressedTextureSubImage2DEXT = NULL;
-PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC __glewCompressedTextureSubImage3DEXT = NULL;
-PFNGLCOPYMULTITEXIMAGE1DEXTPROC __glewCopyMultiTexImage1DEXT = NULL;
-PFNGLCOPYMULTITEXIMAGE2DEXTPROC __glewCopyMultiTexImage2DEXT = NULL;
-PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC __glewCopyMultiTexSubImage1DEXT = NULL;
-PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC __glewCopyMultiTexSubImage2DEXT = NULL;
-PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC __glewCopyMultiTexSubImage3DEXT = NULL;
-PFNGLCOPYTEXTUREIMAGE1DEXTPROC __glewCopyTextureImage1DEXT = NULL;
-PFNGLCOPYTEXTUREIMAGE2DEXTPROC __glewCopyTextureImage2DEXT = NULL;
-PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC __glewCopyTextureSubImage1DEXT = NULL;
-PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC __glewCopyTextureSubImage2DEXT = NULL;
-PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC __glewCopyTextureSubImage3DEXT = NULL;
-PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC __glewDisableClientStateIndexedEXT = NULL;
-PFNGLDISABLECLIENTSTATEIEXTPROC __glewDisableClientStateiEXT = NULL;
-PFNGLDISABLEVERTEXARRAYATTRIBEXTPROC __glewDisableVertexArrayAttribEXT = NULL;
-PFNGLDISABLEVERTEXARRAYEXTPROC __glewDisableVertexArrayEXT = NULL;
-PFNGLENABLECLIENTSTATEINDEXEDEXTPROC __glewEnableClientStateIndexedEXT = NULL;
-PFNGLENABLECLIENTSTATEIEXTPROC __glewEnableClientStateiEXT = NULL;
-PFNGLENABLEVERTEXARRAYATTRIBEXTPROC __glewEnableVertexArrayAttribEXT = NULL;
-PFNGLENABLEVERTEXARRAYEXTPROC __glewEnableVertexArrayEXT = NULL;
-PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC __glewFlushMappedNamedBufferRangeEXT = NULL;
-PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC __glewFramebufferDrawBufferEXT = NULL;
-PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC __glewFramebufferDrawBuffersEXT = NULL;
-PFNGLFRAMEBUFFERREADBUFFEREXTPROC __glewFramebufferReadBufferEXT = NULL;
-PFNGLGENERATEMULTITEXMIPMAPEXTPROC __glewGenerateMultiTexMipmapEXT = NULL;
-PFNGLGENERATETEXTUREMIPMAPEXTPROC __glewGenerateTextureMipmapEXT = NULL;
-PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC __glewGetCompressedMultiTexImageEXT = NULL;
-PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC __glewGetCompressedTextureImageEXT = NULL;
-PFNGLGETDOUBLEINDEXEDVEXTPROC __glewGetDoubleIndexedvEXT = NULL;
-PFNGLGETDOUBLEI_VEXTPROC __glewGetDoublei_vEXT = NULL;
-PFNGLGETFLOATINDEXEDVEXTPROC __glewGetFloatIndexedvEXT = NULL;
-PFNGLGETFLOATI_VEXTPROC __glewGetFloati_vEXT = NULL;
-PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC __glewGetFramebufferParameterivEXT = NULL;
-PFNGLGETMULTITEXENVFVEXTPROC __glewGetMultiTexEnvfvEXT = NULL;
-PFNGLGETMULTITEXENVIVEXTPROC __glewGetMultiTexEnvivEXT = NULL;
-PFNGLGETMULTITEXGENDVEXTPROC __glewGetMultiTexGendvEXT = NULL;
-PFNGLGETMULTITEXGENFVEXTPROC __glewGetMultiTexGenfvEXT = NULL;
-PFNGLGETMULTITEXGENIVEXTPROC __glewGetMultiTexGenivEXT = NULL;
-PFNGLGETMULTITEXIMAGEEXTPROC __glewGetMultiTexImageEXT = NULL;
-PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC __glewGetMultiTexLevelParameterfvEXT = NULL;
-PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC __glewGetMultiTexLevelParameterivEXT = NULL;
-PFNGLGETMULTITEXPARAMETERIIVEXTPROC __glewGetMultiTexParameterIivEXT = NULL;
-PFNGLGETMULTITEXPARAMETERIUIVEXTPROC __glewGetMultiTexParameterIuivEXT = NULL;
-PFNGLGETMULTITEXPARAMETERFVEXTPROC __glewGetMultiTexParameterfvEXT = NULL;
-PFNGLGETMULTITEXPARAMETERIVEXTPROC __glewGetMultiTexParameterivEXT = NULL;
-PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC __glewGetNamedBufferParameterivEXT = NULL;
-PFNGLGETNAMEDBUFFERPOINTERVEXTPROC __glewGetNamedBufferPointervEXT = NULL;
-PFNGLGETNAMEDBUFFERSUBDATAEXTPROC __glewGetNamedBufferSubDataEXT = NULL;
-PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC __glewGetNamedFramebufferAttachmentParameterivEXT = NULL;
-PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC __glewGetNamedProgramLocalParameterIivEXT = NULL;
-PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC __glewGetNamedProgramLocalParameterIuivEXT = NULL;
-PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC __glewGetNamedProgramLocalParameterdvEXT = NULL;
-PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC __glewGetNamedProgramLocalParameterfvEXT = NULL;
-PFNGLGETNAMEDPROGRAMSTRINGEXTPROC __glewGetNamedProgramStringEXT = NULL;
-PFNGLGETNAMEDPROGRAMIVEXTPROC __glewGetNamedProgramivEXT = NULL;
-PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC __glewGetNamedRenderbufferParameterivEXT = NULL;
-PFNGLGETPOINTERINDEXEDVEXTPROC __glewGetPointerIndexedvEXT = NULL;
-PFNGLGETPOINTERI_VEXTPROC __glewGetPointeri_vEXT = NULL;
-PFNGLGETTEXTUREIMAGEEXTPROC __glewGetTextureImageEXT = NULL;
-PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC __glewGetTextureLevelParameterfvEXT = NULL;
-PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC __glewGetTextureLevelParameterivEXT = NULL;
-PFNGLGETTEXTUREPARAMETERIIVEXTPROC __glewGetTextureParameterIivEXT = NULL;
-PFNGLGETTEXTUREPARAMETERIUIVEXTPROC __glewGetTextureParameterIuivEXT = NULL;
-PFNGLGETTEXTUREPARAMETERFVEXTPROC __glewGetTextureParameterfvEXT = NULL;
-PFNGLGETTEXTUREPARAMETERIVEXTPROC __glewGetTextureParameterivEXT = NULL;
-PFNGLGETVERTEXARRAYINTEGERI_VEXTPROC __glewGetVertexArrayIntegeri_vEXT = NULL;
-PFNGLGETVERTEXARRAYINTEGERVEXTPROC __glewGetVertexArrayIntegervEXT = NULL;
-PFNGLGETVERTEXARRAYPOINTERI_VEXTPROC __glewGetVertexArrayPointeri_vEXT = NULL;
-PFNGLGETVERTEXARRAYPOINTERVEXTPROC __glewGetVertexArrayPointervEXT = NULL;
-PFNGLMAPNAMEDBUFFEREXTPROC __glewMapNamedBufferEXT = NULL;
-PFNGLMAPNAMEDBUFFERRANGEEXTPROC __glewMapNamedBufferRangeEXT = NULL;
-PFNGLMATRIXFRUSTUMEXTPROC __glewMatrixFrustumEXT = NULL;
-PFNGLMATRIXLOADIDENTITYEXTPROC __glewMatrixLoadIdentityEXT = NULL;
-PFNGLMATRIXLOADTRANSPOSEDEXTPROC __glewMatrixLoadTransposedEXT = NULL;
-PFNGLMATRIXLOADTRANSPOSEFEXTPROC __glewMatrixLoadTransposefEXT = NULL;
-PFNGLMATRIXLOADDEXTPROC __glewMatrixLoaddEXT = NULL;
-PFNGLMATRIXLOADFEXTPROC __glewMatrixLoadfEXT = NULL;
-PFNGLMATRIXMULTTRANSPOSEDEXTPROC __glewMatrixMultTransposedEXT = NULL;
-PFNGLMATRIXMULTTRANSPOSEFEXTPROC __glewMatrixMultTransposefEXT = NULL;
-PFNGLMATRIXMULTDEXTPROC __glewMatrixMultdEXT = NULL;
-PFNGLMATRIXMULTFEXTPROC __glewMatrixMultfEXT = NULL;
-PFNGLMATRIXORTHOEXTPROC __glewMatrixOrthoEXT = NULL;
-PFNGLMATRIXPOPEXTPROC __glewMatrixPopEXT = NULL;
-PFNGLMATRIXPUSHEXTPROC __glewMatrixPushEXT = NULL;
-PFNGLMATRIXROTATEDEXTPROC __glewMatrixRotatedEXT = NULL;
-PFNGLMATRIXROTATEFEXTPROC __glewMatrixRotatefEXT = NULL;
-PFNGLMATRIXSCALEDEXTPROC __glewMatrixScaledEXT = NULL;
-PFNGLMATRIXSCALEFEXTPROC __glewMatrixScalefEXT = NULL;
-PFNGLMATRIXTRANSLATEDEXTPROC __glewMatrixTranslatedEXT = NULL;
-PFNGLMATRIXTRANSLATEFEXTPROC __glewMatrixTranslatefEXT = NULL;
-PFNGLMULTITEXBUFFEREXTPROC __glewMultiTexBufferEXT = NULL;
-PFNGLMULTITEXCOORDPOINTEREXTPROC __glewMultiTexCoordPointerEXT = NULL;
-PFNGLMULTITEXENVFEXTPROC __glewMultiTexEnvfEXT = NULL;
-PFNGLMULTITEXENVFVEXTPROC __glewMultiTexEnvfvEXT = NULL;
-PFNGLMULTITEXENVIEXTPROC __glewMultiTexEnviEXT = NULL;
-PFNGLMULTITEXENVIVEXTPROC __glewMultiTexEnvivEXT = NULL;
-PFNGLMULTITEXGENDEXTPROC __glewMultiTexGendEXT = NULL;
-PFNGLMULTITEXGENDVEXTPROC __glewMultiTexGendvEXT = NULL;
-PFNGLMULTITEXGENFEXTPROC __glewMultiTexGenfEXT = NULL;
-PFNGLMULTITEXGENFVEXTPROC __glewMultiTexGenfvEXT = NULL;
-PFNGLMULTITEXGENIEXTPROC __glewMultiTexGeniEXT = NULL;
-PFNGLMULTITEXGENIVEXTPROC __glewMultiTexGenivEXT = NULL;
-PFNGLMULTITEXIMAGE1DEXTPROC __glewMultiTexImage1DEXT = NULL;
-PFNGLMULTITEXIMAGE2DEXTPROC __glewMultiTexImage2DEXT = NULL;
-PFNGLMULTITEXIMAGE3DEXTPROC __glewMultiTexImage3DEXT = NULL;
-PFNGLMULTITEXPARAMETERIIVEXTPROC __glewMultiTexParameterIivEXT = NULL;
-PFNGLMULTITEXPARAMETERIUIVEXTPROC __glewMultiTexParameterIuivEXT = NULL;
-PFNGLMULTITEXPARAMETERFEXTPROC __glewMultiTexParameterfEXT = NULL;
-PFNGLMULTITEXPARAMETERFVEXTPROC __glewMultiTexParameterfvEXT = NULL;
-PFNGLMULTITEXPARAMETERIEXTPROC __glewMultiTexParameteriEXT = NULL;
-PFNGLMULTITEXPARAMETERIVEXTPROC __glewMultiTexParameterivEXT = NULL;
-PFNGLMULTITEXRENDERBUFFEREXTPROC __glewMultiTexRenderbufferEXT = NULL;
-PFNGLMULTITEXSUBIMAGE1DEXTPROC __glewMultiTexSubImage1DEXT = NULL;
-PFNGLMULTITEXSUBIMAGE2DEXTPROC __glewMultiTexSubImage2DEXT = NULL;
-PFNGLMULTITEXSUBIMAGE3DEXTPROC __glewMultiTexSubImage3DEXT = NULL;
-PFNGLNAMEDBUFFERDATAEXTPROC __glewNamedBufferDataEXT = NULL;
-PFNGLNAMEDBUFFERSUBDATAEXTPROC __glewNamedBufferSubDataEXT = NULL;
-PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC __glewNamedCopyBufferSubDataEXT = NULL;
-PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC __glewNamedFramebufferRenderbufferEXT = NULL;
-PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC __glewNamedFramebufferTexture1DEXT = NULL;
-PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC __glewNamedFramebufferTexture2DEXT = NULL;
-PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC __glewNamedFramebufferTexture3DEXT = NULL;
-PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC __glewNamedFramebufferTextureEXT = NULL;
-PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC __glewNamedFramebufferTextureFaceEXT = NULL;
-PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC __glewNamedFramebufferTextureLayerEXT = NULL;
-PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC __glewNamedProgramLocalParameter4dEXT = NULL;
-PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC __glewNamedProgramLocalParameter4dvEXT = NULL;
-PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC __glewNamedProgramLocalParameter4fEXT = NULL;
-PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC __glewNamedProgramLocalParameter4fvEXT = NULL;
-PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC __glewNamedProgramLocalParameterI4iEXT = NULL;
-PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC __glewNamedProgramLocalParameterI4ivEXT = NULL;
-PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC __glewNamedProgramLocalParameterI4uiEXT = NULL;
-PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC __glewNamedProgramLocalParameterI4uivEXT = NULL;
-PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC __glewNamedProgramLocalParameters4fvEXT = NULL;
-PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC __glewNamedProgramLocalParametersI4ivEXT = NULL;
-PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC __glewNamedProgramLocalParametersI4uivEXT = NULL;
-PFNGLNAMEDPROGRAMSTRINGEXTPROC __glewNamedProgramStringEXT = NULL;
-PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC __glewNamedRenderbufferStorageEXT = NULL;
-PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC __glewNamedRenderbufferStorageMultisampleCoverageEXT = NULL;
-PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC __glewNamedRenderbufferStorageMultisampleEXT = NULL;
-PFNGLPROGRAMUNIFORM1FEXTPROC __glewProgramUniform1fEXT = NULL;
-PFNGLPROGRAMUNIFORM1FVEXTPROC __glewProgramUniform1fvEXT = NULL;
-PFNGLPROGRAMUNIFORM1IEXTPROC __glewProgramUniform1iEXT = NULL;
-PFNGLPROGRAMUNIFORM1IVEXTPROC __glewProgramUniform1ivEXT = NULL;
-PFNGLPROGRAMUNIFORM1UIEXTPROC __glewProgramUniform1uiEXT = NULL;
-PFNGLPROGRAMUNIFORM1UIVEXTPROC __glewProgramUniform1uivEXT = NULL;
-PFNGLPROGRAMUNIFORM2FEXTPROC __glewProgramUniform2fEXT = NULL;
-PFNGLPROGRAMUNIFORM2FVEXTPROC __glewProgramUniform2fvEXT = NULL;
-PFNGLPROGRAMUNIFORM2IEXTPROC __glewProgramUniform2iEXT = NULL;
-PFNGLPROGRAMUNIFORM2IVEXTPROC __glewProgramUniform2ivEXT = NULL;
-PFNGLPROGRAMUNIFORM2UIEXTPROC __glewProgramUniform2uiEXT = NULL;
-PFNGLPROGRAMUNIFORM2UIVEXTPROC __glewProgramUniform2uivEXT = NULL;
-PFNGLPROGRAMUNIFORM3FEXTPROC __glewProgramUniform3fEXT = NULL;
-PFNGLPROGRAMUNIFORM3FVEXTPROC __glewProgramUniform3fvEXT = NULL;
-PFNGLPROGRAMUNIFORM3IEXTPROC __glewProgramUniform3iEXT = NULL;
-PFNGLPROGRAMUNIFORM3IVEXTPROC __glewProgramUniform3ivEXT = NULL;
-PFNGLPROGRAMUNIFORM3UIEXTPROC __glewProgramUniform3uiEXT = NULL;
-PFNGLPROGRAMUNIFORM3UIVEXTPROC __glewProgramUniform3uivEXT = NULL;
-PFNGLPROGRAMUNIFORM4FEXTPROC __glewProgramUniform4fEXT = NULL;
-PFNGLPROGRAMUNIFORM4FVEXTPROC __glewProgramUniform4fvEXT = NULL;
-PFNGLPROGRAMUNIFORM4IEXTPROC __glewProgramUniform4iEXT = NULL;
-PFNGLPROGRAMUNIFORM4IVEXTPROC __glewProgramUniform4ivEXT = NULL;
-PFNGLPROGRAMUNIFORM4UIEXTPROC __glewProgramUniform4uiEXT = NULL;
-PFNGLPROGRAMUNIFORM4UIVEXTPROC __glewProgramUniform4uivEXT = NULL;
-PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC __glewProgramUniformMatrix2fvEXT = NULL;
-PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC __glewProgramUniformMatrix2x3fvEXT = NULL;
-PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC __glewProgramUniformMatrix2x4fvEXT = NULL;
-PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC __glewProgramUniformMatrix3fvEXT = NULL;
-PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC __glewProgramUniformMatrix3x2fvEXT = NULL;
-PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC __glewProgramUniformMatrix3x4fvEXT = NULL;
-PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC __glewProgramUniformMatrix4fvEXT = NULL;
-PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC __glewProgramUniformMatrix4x2fvEXT = NULL;
-PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC __glewProgramUniformMatrix4x3fvEXT = NULL;
-PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC __glewPushClientAttribDefaultEXT = NULL;
-PFNGLTEXTUREBUFFEREXTPROC __glewTextureBufferEXT = NULL;
-PFNGLTEXTUREIMAGE1DEXTPROC __glewTextureImage1DEXT = NULL;
-PFNGLTEXTUREIMAGE2DEXTPROC __glewTextureImage2DEXT = NULL;
-PFNGLTEXTUREIMAGE3DEXTPROC __glewTextureImage3DEXT = NULL;
-PFNGLTEXTUREPARAMETERIIVEXTPROC __glewTextureParameterIivEXT = NULL;
-PFNGLTEXTUREPARAMETERIUIVEXTPROC __glewTextureParameterIuivEXT = NULL;
-PFNGLTEXTUREPARAMETERFEXTPROC __glewTextureParameterfEXT = NULL;
-PFNGLTEXTUREPARAMETERFVEXTPROC __glewTextureParameterfvEXT = NULL;
-PFNGLTEXTUREPARAMETERIEXTPROC __glewTextureParameteriEXT = NULL;
-PFNGLTEXTUREPARAMETERIVEXTPROC __glewTextureParameterivEXT = NULL;
-PFNGLTEXTURERENDERBUFFEREXTPROC __glewTextureRenderbufferEXT = NULL;
-PFNGLTEXTURESUBIMAGE1DEXTPROC __glewTextureSubImage1DEXT = NULL;
-PFNGLTEXTURESUBIMAGE2DEXTPROC __glewTextureSubImage2DEXT = NULL;
-PFNGLTEXTURESUBIMAGE3DEXTPROC __glewTextureSubImage3DEXT = NULL;
-PFNGLUNMAPNAMEDBUFFEREXTPROC __glewUnmapNamedBufferEXT = NULL;
-PFNGLVERTEXARRAYCOLOROFFSETEXTPROC __glewVertexArrayColorOffsetEXT = NULL;
-PFNGLVERTEXARRAYEDGEFLAGOFFSETEXTPROC __glewVertexArrayEdgeFlagOffsetEXT = NULL;
-PFNGLVERTEXARRAYFOGCOORDOFFSETEXTPROC __glewVertexArrayFogCoordOffsetEXT = NULL;
-PFNGLVERTEXARRAYINDEXOFFSETEXTPROC __glewVertexArrayIndexOffsetEXT = NULL;
-PFNGLVERTEXARRAYMULTITEXCOORDOFFSETEXTPROC __glewVertexArrayMultiTexCoordOffsetEXT = NULL;
-PFNGLVERTEXARRAYNORMALOFFSETEXTPROC __glewVertexArrayNormalOffsetEXT = NULL;
-PFNGLVERTEXARRAYSECONDARYCOLOROFFSETEXTPROC __glewVertexArraySecondaryColorOffsetEXT = NULL;
-PFNGLVERTEXARRAYTEXCOORDOFFSETEXTPROC __glewVertexArrayTexCoordOffsetEXT = NULL;
-PFNGLVERTEXARRAYVERTEXATTRIBIOFFSETEXTPROC __glewVertexArrayVertexAttribIOffsetEXT = NULL;
-PFNGLVERTEXARRAYVERTEXATTRIBOFFSETEXTPROC __glewVertexArrayVertexAttribOffsetEXT = NULL;
-PFNGLVERTEXARRAYVERTEXOFFSETEXTPROC __glewVertexArrayVertexOffsetEXT = NULL;
-
-PFNGLCOLORMASKINDEXEDEXTPROC __glewColorMaskIndexedEXT = NULL;
-PFNGLDISABLEINDEXEDEXTPROC __glewDisableIndexedEXT = NULL;
-PFNGLENABLEINDEXEDEXTPROC __glewEnableIndexedEXT = NULL;
-PFNGLGETBOOLEANINDEXEDVEXTPROC __glewGetBooleanIndexedvEXT = NULL;
-PFNGLGETINTEGERINDEXEDVEXTPROC __glewGetIntegerIndexedvEXT = NULL;
-PFNGLISENABLEDINDEXEDEXTPROC __glewIsEnabledIndexedEXT = NULL;
-
-PFNGLDRAWARRAYSINSTANCEDEXTPROC __glewDrawArraysInstancedEXT = NULL;
-PFNGLDRAWELEMENTSINSTANCEDEXTPROC __glewDrawElementsInstancedEXT = NULL;
-
-PFNGLDRAWRANGEELEMENTSEXTPROC __glewDrawRangeElementsEXT = NULL;
-
-PFNGLFOGCOORDPOINTEREXTPROC __glewFogCoordPointerEXT = NULL;
-PFNGLFOGCOORDDEXTPROC __glewFogCoorddEXT = NULL;
-PFNGLFOGCOORDDVEXTPROC __glewFogCoorddvEXT = NULL;
-PFNGLFOGCOORDFEXTPROC __glewFogCoordfEXT = NULL;
-PFNGLFOGCOORDFVEXTPROC __glewFogCoordfvEXT = NULL;
-
-PFNGLFRAGMENTCOLORMATERIALEXTPROC __glewFragmentColorMaterialEXT = NULL;
-PFNGLFRAGMENTLIGHTMODELFEXTPROC __glewFragmentLightModelfEXT = NULL;
-PFNGLFRAGMENTLIGHTMODELFVEXTPROC __glewFragmentLightModelfvEXT = NULL;
-PFNGLFRAGMENTLIGHTMODELIEXTPROC __glewFragmentLightModeliEXT = NULL;
-PFNGLFRAGMENTLIGHTMODELIVEXTPROC __glewFragmentLightModelivEXT = NULL;
-PFNGLFRAGMENTLIGHTFEXTPROC __glewFragmentLightfEXT = NULL;
-PFNGLFRAGMENTLIGHTFVEXTPROC __glewFragmentLightfvEXT = NULL;
-PFNGLFRAGMENTLIGHTIEXTPROC __glewFragmentLightiEXT = NULL;
-PFNGLFRAGMENTLIGHTIVEXTPROC __glewFragmentLightivEXT = NULL;
-PFNGLFRAGMENTMATERIALFEXTPROC __glewFragmentMaterialfEXT = NULL;
-PFNGLFRAGMENTMATERIALFVEXTPROC __glewFragmentMaterialfvEXT = NULL;
-PFNGLFRAGMENTMATERIALIEXTPROC __glewFragmentMaterialiEXT = NULL;
-PFNGLFRAGMENTMATERIALIVEXTPROC __glewFragmentMaterialivEXT = NULL;
-PFNGLGETFRAGMENTLIGHTFVEXTPROC __glewGetFragmentLightfvEXT = NULL;
-PFNGLGETFRAGMENTLIGHTIVEXTPROC __glewGetFragmentLightivEXT = NULL;
-PFNGLGETFRAGMENTMATERIALFVEXTPROC __glewGetFragmentMaterialfvEXT = NULL;
-PFNGLGETFRAGMENTMATERIALIVEXTPROC __glewGetFragmentMaterialivEXT = NULL;
-PFNGLLIGHTENVIEXTPROC __glewLightEnviEXT = NULL;
-
-PFNGLBLITFRAMEBUFFEREXTPROC __glewBlitFramebufferEXT = NULL;
-
-PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC __glewRenderbufferStorageMultisampleEXT = NULL;
-
-PFNGLBINDFRAMEBUFFEREXTPROC __glewBindFramebufferEXT = NULL;
-PFNGLBINDRENDERBUFFEREXTPROC __glewBindRenderbufferEXT = NULL;
-PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC __glewCheckFramebufferStatusEXT = NULL;
-PFNGLDELETEFRAMEBUFFERSEXTPROC __glewDeleteFramebuffersEXT = NULL;
-PFNGLDELETERENDERBUFFERSEXTPROC __glewDeleteRenderbuffersEXT = NULL;
-PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC __glewFramebufferRenderbufferEXT = NULL;
-PFNGLFRAMEBUFFERTEXTURE1DEXTPROC __glewFramebufferTexture1DEXT = NULL;
-PFNGLFRAMEBUFFERTEXTURE2DEXTPROC __glewFramebufferTexture2DEXT = NULL;
-PFNGLFRAMEBUFFERTEXTURE3DEXTPROC __glewFramebufferTexture3DEXT = NULL;
-PFNGLGENFRAMEBUFFERSEXTPROC __glewGenFramebuffersEXT = NULL;
-PFNGLGENRENDERBUFFERSEXTPROC __glewGenRenderbuffersEXT = NULL;
-PFNGLGENERATEMIPMAPEXTPROC __glewGenerateMipmapEXT = NULL;
-PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC __glewGetFramebufferAttachmentParameterivEXT = NULL;
-PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC __glewGetRenderbufferParameterivEXT = NULL;
-PFNGLISFRAMEBUFFEREXTPROC __glewIsFramebufferEXT = NULL;
-PFNGLISRENDERBUFFEREXTPROC __glewIsRenderbufferEXT = NULL;
-PFNGLRENDERBUFFERSTORAGEEXTPROC __glewRenderbufferStorageEXT = NULL;
-
-PFNGLFRAMEBUFFERTEXTUREEXTPROC __glewFramebufferTextureEXT = NULL;
-PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC __glewFramebufferTextureFaceEXT = NULL;
-PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC __glewFramebufferTextureLayerEXT = NULL;
-PFNGLPROGRAMPARAMETERIEXTPROC __glewProgramParameteriEXT = NULL;
-
-PFNGLPROGRAMENVPARAMETERS4FVEXTPROC __glewProgramEnvParameters4fvEXT = NULL;
-PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC __glewProgramLocalParameters4fvEXT = NULL;
-
-PFNGLBINDFRAGDATALOCATIONEXTPROC __glewBindFragDataLocationEXT = NULL;
-PFNGLGETFRAGDATALOCATIONEXTPROC __glewGetFragDataLocationEXT = NULL;
-PFNGLGETUNIFORMUIVEXTPROC __glewGetUniformuivEXT = NULL;
-PFNGLGETVERTEXATTRIBIIVEXTPROC __glewGetVertexAttribIivEXT = NULL;
-PFNGLGETVERTEXATTRIBIUIVEXTPROC __glewGetVertexAttribIuivEXT = NULL;
-PFNGLUNIFORM1UIEXTPROC __glewUniform1uiEXT = NULL;
-PFNGLUNIFORM1UIVEXTPROC __glewUniform1uivEXT = NULL;
-PFNGLUNIFORM2UIEXTPROC __glewUniform2uiEXT = NULL;
-PFNGLUNIFORM2UIVEXTPROC __glewUniform2uivEXT = NULL;
-PFNGLUNIFORM3UIEXTPROC __glewUniform3uiEXT = NULL;
-PFNGLUNIFORM3UIVEXTPROC __glewUniform3uivEXT = NULL;
-PFNGLUNIFORM4UIEXTPROC __glewUniform4uiEXT = NULL;
-PFNGLUNIFORM4UIVEXTPROC __glewUniform4uivEXT = NULL;
-PFNGLVERTEXATTRIBI1IEXTPROC __glewVertexAttribI1iEXT = NULL;
-PFNGLVERTEXATTRIBI1IVEXTPROC __glewVertexAttribI1ivEXT = NULL;
-PFNGLVERTEXATTRIBI1UIEXTPROC __glewVertexAttribI1uiEXT = NULL;
-PFNGLVERTEXATTRIBI1UIVEXTPROC __glewVertexAttribI1uivEXT = NULL;
-PFNGLVERTEXATTRIBI2IEXTPROC __glewVertexAttribI2iEXT = NULL;
-PFNGLVERTEXATTRIBI2IVEXTPROC __glewVertexAttribI2ivEXT = NULL;
-PFNGLVERTEXATTRIBI2UIEXTPROC __glewVertexAttribI2uiEXT = NULL;
-PFNGLVERTEXATTRIBI2UIVEXTPROC __glewVertexAttribI2uivEXT = NULL;
-PFNGLVERTEXATTRIBI3IEXTPROC __glewVertexAttribI3iEXT = NULL;
-PFNGLVERTEXATTRIBI3IVEXTPROC __glewVertexAttribI3ivEXT = NULL;
-PFNGLVERTEXATTRIBI3UIEXTPROC __glewVertexAttribI3uiEXT = NULL;
-PFNGLVERTEXATTRIBI3UIVEXTPROC __glewVertexAttribI3uivEXT = NULL;
-PFNGLVERTEXATTRIBI4BVEXTPROC __glewVertexAttribI4bvEXT = NULL;
-PFNGLVERTEXATTRIBI4IEXTPROC __glewVertexAttribI4iEXT = NULL;
-PFNGLVERTEXATTRIBI4IVEXTPROC __glewVertexAttribI4ivEXT = NULL;
-PFNGLVERTEXATTRIBI4SVEXTPROC __glewVertexAttribI4svEXT = NULL;
-PFNGLVERTEXATTRIBI4UBVEXTPROC __glewVertexAttribI4ubvEXT = NULL;
-PFNGLVERTEXATTRIBI4UIEXTPROC __glewVertexAttribI4uiEXT = NULL;
-PFNGLVERTEXATTRIBI4UIVEXTPROC __glewVertexAttribI4uivEXT = NULL;
-PFNGLVERTEXATTRIBI4USVEXTPROC __glewVertexAttribI4usvEXT = NULL;
-PFNGLVERTEXATTRIBIPOINTEREXTPROC __glewVertexAttribIPointerEXT = NULL;
-
-PFNGLGETHISTOGRAMEXTPROC __glewGetHistogramEXT = NULL;
-PFNGLGETHISTOGRAMPARAMETERFVEXTPROC __glewGetHistogramParameterfvEXT = NULL;
-PFNGLGETHISTOGRAMPARAMETERIVEXTPROC __glewGetHistogramParameterivEXT = NULL;
-PFNGLGETMINMAXEXTPROC __glewGetMinmaxEXT = NULL;
-PFNGLGETMINMAXPARAMETERFVEXTPROC __glewGetMinmaxParameterfvEXT = NULL;
-PFNGLGETMINMAXPARAMETERIVEXTPROC __glewGetMinmaxParameterivEXT = NULL;
-PFNGLHISTOGRAMEXTPROC __glewHistogramEXT = NULL;
-PFNGLMINMAXEXTPROC __glewMinmaxEXT = NULL;
-PFNGLRESETHISTOGRAMEXTPROC __glewResetHistogramEXT = NULL;
-PFNGLRESETMINMAXEXTPROC __glewResetMinmaxEXT = NULL;
-
-PFNGLINDEXFUNCEXTPROC __glewIndexFuncEXT = NULL;
-
-PFNGLINDEXMATERIALEXTPROC __glewIndexMaterialEXT = NULL;
-
-PFNGLAPPLYTEXTUREEXTPROC __glewApplyTextureEXT = NULL;
-PFNGLTEXTURELIGHTEXTPROC __glewTextureLightEXT = NULL;
-PFNGLTEXTUREMATERIALEXTPROC __glewTextureMaterialEXT = NULL;
-
-PFNGLMULTIDRAWARRAYSEXTPROC __glewMultiDrawArraysEXT = NULL;
-PFNGLMULTIDRAWELEMENTSEXTPROC __glewMultiDrawElementsEXT = NULL;
-
-PFNGLSAMPLEMASKEXTPROC __glewSampleMaskEXT = NULL;
-PFNGLSAMPLEPATTERNEXTPROC __glewSamplePatternEXT = NULL;
-
-PFNGLCOLORTABLEEXTPROC __glewColorTableEXT = NULL;
-PFNGLGETCOLORTABLEEXTPROC __glewGetColorTableEXT = NULL;
-PFNGLGETCOLORTABLEPARAMETERFVEXTPROC __glewGetColorTableParameterfvEXT = NULL;
-PFNGLGETCOLORTABLEPARAMETERIVEXTPROC __glewGetColorTableParameterivEXT = NULL;
-
-PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC __glewGetPixelTransformParameterfvEXT = NULL;
-PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC __glewGetPixelTransformParameterivEXT = NULL;
-PFNGLPIXELTRANSFORMPARAMETERFEXTPROC __glewPixelTransformParameterfEXT = NULL;
-PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC __glewPixelTransformParameterfvEXT = NULL;
-PFNGLPIXELTRANSFORMPARAMETERIEXTPROC __glewPixelTransformParameteriEXT = NULL;
-PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC __glewPixelTransformParameterivEXT = NULL;
-
-PFNGLPOINTPARAMETERFEXTPROC __glewPointParameterfEXT = NULL;
-PFNGLPOINTPARAMETERFVEXTPROC __glewPointParameterfvEXT = NULL;
-
-PFNGLPOLYGONOFFSETEXTPROC __glewPolygonOffsetEXT = NULL;
-
-PFNGLPROVOKINGVERTEXEXTPROC __glewProvokingVertexEXT = NULL;
-
-PFNGLBEGINSCENEEXTPROC __glewBeginSceneEXT = NULL;
-PFNGLENDSCENEEXTPROC __glewEndSceneEXT = NULL;
-
-PFNGLSECONDARYCOLOR3BEXTPROC __glewSecondaryColor3bEXT = NULL;
-PFNGLSECONDARYCOLOR3BVEXTPROC __glewSecondaryColor3bvEXT = NULL;
-PFNGLSECONDARYCOLOR3DEXTPROC __glewSecondaryColor3dEXT = NULL;
-PFNGLSECONDARYCOLOR3DVEXTPROC __glewSecondaryColor3dvEXT = NULL;
-PFNGLSECONDARYCOLOR3FEXTPROC __glewSecondaryColor3fEXT = NULL;
-PFNGLSECONDARYCOLOR3FVEXTPROC __glewSecondaryColor3fvEXT = NULL;
-PFNGLSECONDARYCOLOR3IEXTPROC __glewSecondaryColor3iEXT = NULL;
-PFNGLSECONDARYCOLOR3IVEXTPROC __glewSecondaryColor3ivEXT = NULL;
-PFNGLSECONDARYCOLOR3SEXTPROC __glewSecondaryColor3sEXT = NULL;
-PFNGLSECONDARYCOLOR3SVEXTPROC __glewSecondaryColor3svEXT = NULL;
-PFNGLSECONDARYCOLOR3UBEXTPROC __glewSecondaryColor3ubEXT = NULL;
-PFNGLSECONDARYCOLOR3UBVEXTPROC __glewSecondaryColor3ubvEXT = NULL;
-PFNGLSECONDARYCOLOR3UIEXTPROC __glewSecondaryColor3uiEXT = NULL;
-PFNGLSECONDARYCOLOR3UIVEXTPROC __glewSecondaryColor3uivEXT = NULL;
-PFNGLSECONDARYCOLOR3USEXTPROC __glewSecondaryColor3usEXT = NULL;
-PFNGLSECONDARYCOLOR3USVEXTPROC __glewSecondaryColor3usvEXT = NULL;
-PFNGLSECONDARYCOLORPOINTEREXTPROC __glewSecondaryColorPointerEXT = NULL;
-
-PFNGLACTIVEPROGRAMEXTPROC __glewActiveProgramEXT = NULL;
-PFNGLCREATESHADERPROGRAMEXTPROC __glewCreateShaderProgramEXT = NULL;
-PFNGLUSESHADERPROGRAMEXTPROC __glewUseShaderProgramEXT = NULL;
-
-PFNGLBINDIMAGETEXTUREEXTPROC __glewBindImageTextureEXT = NULL;
-PFNGLMEMORYBARRIEREXTPROC __glewMemoryBarrierEXT = NULL;
-
-PFNGLACTIVESTENCILFACEEXTPROC __glewActiveStencilFaceEXT = NULL;
-
-PFNGLTEXSUBIMAGE1DEXTPROC __glewTexSubImage1DEXT = NULL;
-PFNGLTEXSUBIMAGE2DEXTPROC __glewTexSubImage2DEXT = NULL;
-PFNGLTEXSUBIMAGE3DEXTPROC __glewTexSubImage3DEXT = NULL;
-
-PFNGLTEXIMAGE3DEXTPROC __glewTexImage3DEXT = NULL;
-
-PFNGLTEXBUFFEREXTPROC __glewTexBufferEXT = NULL;
-
-PFNGLCLEARCOLORIIEXTPROC __glewClearColorIiEXT = NULL;
-PFNGLCLEARCOLORIUIEXTPROC __glewClearColorIuiEXT = NULL;
-PFNGLGETTEXPARAMETERIIVEXTPROC __glewGetTexParameterIivEXT = NULL;
-PFNGLGETTEXPARAMETERIUIVEXTPROC __glewGetTexParameterIuivEXT = NULL;
-PFNGLTEXPARAMETERIIVEXTPROC __glewTexParameterIivEXT = NULL;
-PFNGLTEXPARAMETERIUIVEXTPROC __glewTexParameterIuivEXT = NULL;
-
-PFNGLARETEXTURESRESIDENTEXTPROC __glewAreTexturesResidentEXT = NULL;
-PFNGLBINDTEXTUREEXTPROC __glewBindTextureEXT = NULL;
-PFNGLDELETETEXTURESEXTPROC __glewDeleteTexturesEXT = NULL;
-PFNGLGENTEXTURESEXTPROC __glewGenTexturesEXT = NULL;
-PFNGLISTEXTUREEXTPROC __glewIsTextureEXT = NULL;
-PFNGLPRIORITIZETEXTURESEXTPROC __glewPrioritizeTexturesEXT = NULL;
-
-PFNGLTEXTURENORMALEXTPROC __glewTextureNormalEXT = NULL;
-
-PFNGLGETQUERYOBJECTI64VEXTPROC __glewGetQueryObjecti64vEXT = NULL;
-PFNGLGETQUERYOBJECTUI64VEXTPROC __glewGetQueryObjectui64vEXT = NULL;
-
-PFNGLBEGINTRANSFORMFEEDBACKEXTPROC __glewBeginTransformFeedbackEXT = NULL;
-PFNGLBINDBUFFERBASEEXTPROC __glewBindBufferBaseEXT = NULL;
-PFNGLBINDBUFFEROFFSETEXTPROC __glewBindBufferOffsetEXT = NULL;
-PFNGLBINDBUFFERRANGEEXTPROC __glewBindBufferRangeEXT = NULL;
-PFNGLENDTRANSFORMFEEDBACKEXTPROC __glewEndTransformFeedbackEXT = NULL;
-PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC __glewGetTransformFeedbackVaryingEXT = NULL;
-PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC __glewTransformFeedbackVaryingsEXT = NULL;
-
-PFNGLARRAYELEMENTEXTPROC __glewArrayElementEXT = NULL;
-PFNGLCOLORPOINTEREXTPROC __glewColorPointerEXT = NULL;
-PFNGLDRAWARRAYSEXTPROC __glewDrawArraysEXT = NULL;
-PFNGLEDGEFLAGPOINTEREXTPROC __glewEdgeFlagPointerEXT = NULL;
-PFNGLGETPOINTERVEXTPROC __glewGetPointervEXT = NULL;
-PFNGLINDEXPOINTEREXTPROC __glewIndexPointerEXT = NULL;
-PFNGLNORMALPOINTEREXTPROC __glewNormalPointerEXT = NULL;
-PFNGLTEXCOORDPOINTEREXTPROC __glewTexCoordPointerEXT = NULL;
-PFNGLVERTEXPOINTEREXTPROC __glewVertexPointerEXT = NULL;
-
-PFNGLGETVERTEXATTRIBLDVEXTPROC __glewGetVertexAttribLdvEXT = NULL;
-PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC __glewVertexArrayVertexAttribLOffsetEXT = NULL;
-PFNGLVERTEXATTRIBL1DEXTPROC __glewVertexAttribL1dEXT = NULL;
-PFNGLVERTEXATTRIBL1DVEXTPROC __glewVertexAttribL1dvEXT = NULL;
-PFNGLVERTEXATTRIBL2DEXTPROC __glewVertexAttribL2dEXT = NULL;
-PFNGLVERTEXATTRIBL2DVEXTPROC __glewVertexAttribL2dvEXT = NULL;
-PFNGLVERTEXATTRIBL3DEXTPROC __glewVertexAttribL3dEXT = NULL;
-PFNGLVERTEXATTRIBL3DVEXTPROC __glewVertexAttribL3dvEXT = NULL;
-PFNGLVERTEXATTRIBL4DEXTPROC __glewVertexAttribL4dEXT = NULL;
-PFNGLVERTEXATTRIBL4DVEXTPROC __glewVertexAttribL4dvEXT = NULL;
-PFNGLVERTEXATTRIBLPOINTEREXTPROC __glewVertexAttribLPointerEXT = NULL;
-
-PFNGLBEGINVERTEXSHADEREXTPROC __glewBeginVertexShaderEXT = NULL;
-PFNGLBINDLIGHTPARAMETEREXTPROC __glewBindLightParameterEXT = NULL;
-PFNGLBINDMATERIALPARAMETEREXTPROC __glewBindMaterialParameterEXT = NULL;
-PFNGLBINDPARAMETEREXTPROC __glewBindParameterEXT = NULL;
-PFNGLBINDTEXGENPARAMETEREXTPROC __glewBindTexGenParameterEXT = NULL;
-PFNGLBINDTEXTUREUNITPARAMETEREXTPROC __glewBindTextureUnitParameterEXT = NULL;
-PFNGLBINDVERTEXSHADEREXTPROC __glewBindVertexShaderEXT = NULL;
-PFNGLDELETEVERTEXSHADEREXTPROC __glewDeleteVertexShaderEXT = NULL;
-PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC __glewDisableVariantClientStateEXT = NULL;
-PFNGLENABLEVARIANTCLIENTSTATEEXTPROC __glewEnableVariantClientStateEXT = NULL;
-PFNGLENDVERTEXSHADEREXTPROC __glewEndVertexShaderEXT = NULL;
-PFNGLEXTRACTCOMPONENTEXTPROC __glewExtractComponentEXT = NULL;
-PFNGLGENSYMBOLSEXTPROC __glewGenSymbolsEXT = NULL;
-PFNGLGENVERTEXSHADERSEXTPROC __glewGenVertexShadersEXT = NULL;
-PFNGLGETINVARIANTBOOLEANVEXTPROC __glewGetInvariantBooleanvEXT = NULL;
-PFNGLGETINVARIANTFLOATVEXTPROC __glewGetInvariantFloatvEXT = NULL;
-PFNGLGETINVARIANTINTEGERVEXTPROC __glewGetInvariantIntegervEXT = NULL;
-PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC __glewGetLocalConstantBooleanvEXT = NULL;
-PFNGLGETLOCALCONSTANTFLOATVEXTPROC __glewGetLocalConstantFloatvEXT = NULL;
-PFNGLGETLOCALCONSTANTINTEGERVEXTPROC __glewGetLocalConstantIntegervEXT = NULL;
-PFNGLGETVARIANTBOOLEANVEXTPROC __glewGetVariantBooleanvEXT = NULL;
-PFNGLGETVARIANTFLOATVEXTPROC __glewGetVariantFloatvEXT = NULL;
-PFNGLGETVARIANTINTEGERVEXTPROC __glewGetVariantIntegervEXT = NULL;
-PFNGLGETVARIANTPOINTERVEXTPROC __glewGetVariantPointervEXT = NULL;
-PFNGLINSERTCOMPONENTEXTPROC __glewInsertComponentEXT = NULL;
-PFNGLISVARIANTENABLEDEXTPROC __glewIsVariantEnabledEXT = NULL;
-PFNGLSETINVARIANTEXTPROC __glewSetInvariantEXT = NULL;
-PFNGLSETLOCALCONSTANTEXTPROC __glewSetLocalConstantEXT = NULL;
-PFNGLSHADEROP1EXTPROC __glewShaderOp1EXT = NULL;
-PFNGLSHADEROP2EXTPROC __glewShaderOp2EXT = NULL;
-PFNGLSHADEROP3EXTPROC __glewShaderOp3EXT = NULL;
-PFNGLSWIZZLEEXTPROC __glewSwizzleEXT = NULL;
-PFNGLVARIANTPOINTEREXTPROC __glewVariantPointerEXT = NULL;
-PFNGLVARIANTBVEXTPROC __glewVariantbvEXT = NULL;
-PFNGLVARIANTDVEXTPROC __glewVariantdvEXT = NULL;
-PFNGLVARIANTFVEXTPROC __glewVariantfvEXT = NULL;
-PFNGLVARIANTIVEXTPROC __glewVariantivEXT = NULL;
-PFNGLVARIANTSVEXTPROC __glewVariantsvEXT = NULL;
-PFNGLVARIANTUBVEXTPROC __glewVariantubvEXT = NULL;
-PFNGLVARIANTUIVEXTPROC __glewVariantuivEXT = NULL;
-PFNGLVARIANTUSVEXTPROC __glewVariantusvEXT = NULL;
-PFNGLWRITEMASKEXTPROC __glewWriteMaskEXT = NULL;
-
-PFNGLVERTEXWEIGHTPOINTEREXTPROC __glewVertexWeightPointerEXT = NULL;
-PFNGLVERTEXWEIGHTFEXTPROC __glewVertexWeightfEXT = NULL;
-PFNGLVERTEXWEIGHTFVEXTPROC __glewVertexWeightfvEXT = NULL;
-
-PFNGLFRAMETERMINATORGREMEDYPROC __glewFrameTerminatorGREMEDY = NULL;
-
-PFNGLSTRINGMARKERGREMEDYPROC __glewStringMarkerGREMEDY = NULL;
-
-PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC __glewGetImageTransformParameterfvHP = NULL;
-PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC __glewGetImageTransformParameterivHP = NULL;
-PFNGLIMAGETRANSFORMPARAMETERFHPPROC __glewImageTransformParameterfHP = NULL;
-PFNGLIMAGETRANSFORMPARAMETERFVHPPROC __glewImageTransformParameterfvHP = NULL;
-PFNGLIMAGETRANSFORMPARAMETERIHPPROC __glewImageTransformParameteriHP = NULL;
-PFNGLIMAGETRANSFORMPARAMETERIVHPPROC __glewImageTransformParameterivHP = NULL;
-
-PFNGLMULTIMODEDRAWARRAYSIBMPROC __glewMultiModeDrawArraysIBM = NULL;
-PFNGLMULTIMODEDRAWELEMENTSIBMPROC __glewMultiModeDrawElementsIBM = NULL;
-
-PFNGLCOLORPOINTERLISTIBMPROC __glewColorPointerListIBM = NULL;
-PFNGLEDGEFLAGPOINTERLISTIBMPROC __glewEdgeFlagPointerListIBM = NULL;
-PFNGLFOGCOORDPOINTERLISTIBMPROC __glewFogCoordPointerListIBM = NULL;
-PFNGLINDEXPOINTERLISTIBMPROC __glewIndexPointerListIBM = NULL;
-PFNGLNORMALPOINTERLISTIBMPROC __glewNormalPointerListIBM = NULL;
-PFNGLSECONDARYCOLORPOINTERLISTIBMPROC __glewSecondaryColorPointerListIBM = NULL;
-PFNGLTEXCOORDPOINTERLISTIBMPROC __glewTexCoordPointerListIBM = NULL;
-PFNGLVERTEXPOINTERLISTIBMPROC __glewVertexPointerListIBM = NULL;
-
-PFNGLCOLORPOINTERVINTELPROC __glewColorPointervINTEL = NULL;
-PFNGLNORMALPOINTERVINTELPROC __glewNormalPointervINTEL = NULL;
-PFNGLTEXCOORDPOINTERVINTELPROC __glewTexCoordPointervINTEL = NULL;
-PFNGLVERTEXPOINTERVINTELPROC __glewVertexPointervINTEL = NULL;
-
-PFNGLTEXSCISSORFUNCINTELPROC __glewTexScissorFuncINTEL = NULL;
-PFNGLTEXSCISSORINTELPROC __glewTexScissorINTEL = NULL;
-
-PFNGLBUFFERREGIONENABLEDEXTPROC __glewBufferRegionEnabledEXT = NULL;
-PFNGLDELETEBUFFERREGIONEXTPROC __glewDeleteBufferRegionEXT = NULL;
-PFNGLDRAWBUFFERREGIONEXTPROC __glewDrawBufferRegionEXT = NULL;
-PFNGLNEWBUFFERREGIONEXTPROC __glewNewBufferRegionEXT = NULL;
-PFNGLREADBUFFERREGIONEXTPROC __glewReadBufferRegionEXT = NULL;
-
-PFNGLRESIZEBUFFERSMESAPROC __glewResizeBuffersMESA = NULL;
-
-PFNGLWINDOWPOS2DMESAPROC __glewWindowPos2dMESA = NULL;
-PFNGLWINDOWPOS2DVMESAPROC __glewWindowPos2dvMESA = NULL;
-PFNGLWINDOWPOS2FMESAPROC __glewWindowPos2fMESA = NULL;
-PFNGLWINDOWPOS2FVMESAPROC __glewWindowPos2fvMESA = NULL;
-PFNGLWINDOWPOS2IMESAPROC __glewWindowPos2iMESA = NULL;
-PFNGLWINDOWPOS2IVMESAPROC __glewWindowPos2ivMESA = NULL;
-PFNGLWINDOWPOS2SMESAPROC __glewWindowPos2sMESA = NULL;
-PFNGLWINDOWPOS2SVMESAPROC __glewWindowPos2svMESA = NULL;
-PFNGLWINDOWPOS3DMESAPROC __glewWindowPos3dMESA = NULL;
-PFNGLWINDOWPOS3DVMESAPROC __glewWindowPos3dvMESA = NULL;
-PFNGLWINDOWPOS3FMESAPROC __glewWindowPos3fMESA = NULL;
-PFNGLWINDOWPOS3FVMESAPROC __glewWindowPos3fvMESA = NULL;
-PFNGLWINDOWPOS3IMESAPROC __glewWindowPos3iMESA = NULL;
-PFNGLWINDOWPOS3IVMESAPROC __glewWindowPos3ivMESA = NULL;
-PFNGLWINDOWPOS3SMESAPROC __glewWindowPos3sMESA = NULL;
-PFNGLWINDOWPOS3SVMESAPROC __glewWindowPos3svMESA = NULL;
-PFNGLWINDOWPOS4DMESAPROC __glewWindowPos4dMESA = NULL;
-PFNGLWINDOWPOS4DVMESAPROC __glewWindowPos4dvMESA = NULL;
-PFNGLWINDOWPOS4FMESAPROC __glewWindowPos4fMESA = NULL;
-PFNGLWINDOWPOS4FVMESAPROC __glewWindowPos4fvMESA = NULL;
-PFNGLWINDOWPOS4IMESAPROC __glewWindowPos4iMESA = NULL;
-PFNGLWINDOWPOS4IVMESAPROC __glewWindowPos4ivMESA = NULL;
-PFNGLWINDOWPOS4SMESAPROC __glewWindowPos4sMESA = NULL;
-PFNGLWINDOWPOS4SVMESAPROC __glewWindowPos4svMESA = NULL;
-
-PFNGLBEGINCONDITIONALRENDERNVPROC __glewBeginConditionalRenderNV = NULL;
-PFNGLENDCONDITIONALRENDERNVPROC __glewEndConditionalRenderNV = NULL;
-
-PFNGLCOPYIMAGESUBDATANVPROC __glewCopyImageSubDataNV = NULL;
-
-PFNGLCLEARDEPTHDNVPROC __glewClearDepthdNV = NULL;
-PFNGLDEPTHBOUNDSDNVPROC __glewDepthBoundsdNV = NULL;
-PFNGLDEPTHRANGEDNVPROC __glewDepthRangedNV = NULL;
-
-PFNGLEVALMAPSNVPROC __glewEvalMapsNV = NULL;
-PFNGLGETMAPATTRIBPARAMETERFVNVPROC __glewGetMapAttribParameterfvNV = NULL;
-PFNGLGETMAPATTRIBPARAMETERIVNVPROC __glewGetMapAttribParameterivNV = NULL;
-PFNGLGETMAPCONTROLPOINTSNVPROC __glewGetMapControlPointsNV = NULL;
-PFNGLGETMAPPARAMETERFVNVPROC __glewGetMapParameterfvNV = NULL;
-PFNGLGETMAPPARAMETERIVNVPROC __glewGetMapParameterivNV = NULL;
-PFNGLMAPCONTROLPOINTSNVPROC __glewMapControlPointsNV = NULL;
-PFNGLMAPPARAMETERFVNVPROC __glewMapParameterfvNV = NULL;
-PFNGLMAPPARAMETERIVNVPROC __glewMapParameterivNV = NULL;
-
-PFNGLGETMULTISAMPLEFVNVPROC __glewGetMultisamplefvNV = NULL;
-PFNGLSAMPLEMASKINDEXEDNVPROC __glewSampleMaskIndexedNV = NULL;
-PFNGLTEXRENDERBUFFERNVPROC __glewTexRenderbufferNV = NULL;
-
-PFNGLDELETEFENCESNVPROC __glewDeleteFencesNV = NULL;
-PFNGLFINISHFENCENVPROC __glewFinishFenceNV = NULL;
-PFNGLGENFENCESNVPROC __glewGenFencesNV = NULL;
-PFNGLGETFENCEIVNVPROC __glewGetFenceivNV = NULL;
-PFNGLISFENCENVPROC __glewIsFenceNV = NULL;
-PFNGLSETFENCENVPROC __glewSetFenceNV = NULL;
-PFNGLTESTFENCENVPROC __glewTestFenceNV = NULL;
-
-PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC __glewGetProgramNamedParameterdvNV = NULL;
-PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC __glewGetProgramNamedParameterfvNV = NULL;
-PFNGLPROGRAMNAMEDPARAMETER4DNVPROC __glewProgramNamedParameter4dNV = NULL;
-PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC __glewProgramNamedParameter4dvNV = NULL;
-PFNGLPROGRAMNAMEDPARAMETER4FNVPROC __glewProgramNamedParameter4fNV = NULL;
-PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC __glewProgramNamedParameter4fvNV = NULL;
-
-PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC __glewRenderbufferStorageMultisampleCoverageNV = NULL;
-
-PFNGLPROGRAMVERTEXLIMITNVPROC __glewProgramVertexLimitNV = NULL;
-
-PFNGLPROGRAMENVPARAMETERI4INVPROC __glewProgramEnvParameterI4iNV = NULL;
-PFNGLPROGRAMENVPARAMETERI4IVNVPROC __glewProgramEnvParameterI4ivNV = NULL;
-PFNGLPROGRAMENVPARAMETERI4UINVPROC __glewProgramEnvParameterI4uiNV = NULL;
-PFNGLPROGRAMENVPARAMETERI4UIVNVPROC __glewProgramEnvParameterI4uivNV = NULL;
-PFNGLPROGRAMENVPARAMETERSI4IVNVPROC __glewProgramEnvParametersI4ivNV = NULL;
-PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC __glewProgramEnvParametersI4uivNV = NULL;
-PFNGLPROGRAMLOCALPARAMETERI4INVPROC __glewProgramLocalParameterI4iNV = NULL;
-PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC __glewProgramLocalParameterI4ivNV = NULL;
-PFNGLPROGRAMLOCALPARAMETERI4UINVPROC __glewProgramLocalParameterI4uiNV = NULL;
-PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC __glewProgramLocalParameterI4uivNV = NULL;
-PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC __glewProgramLocalParametersI4ivNV = NULL;
-PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC __glewProgramLocalParametersI4uivNV = NULL;
-
-PFNGLGETUNIFORMI64VNVPROC __glewGetUniformi64vNV = NULL;
-PFNGLGETUNIFORMUI64VNVPROC __glewGetUniformui64vNV = NULL;
-PFNGLPROGRAMUNIFORM1I64NVPROC __glewProgramUniform1i64NV = NULL;
-PFNGLPROGRAMUNIFORM1I64VNVPROC __glewProgramUniform1i64vNV = NULL;
-PFNGLPROGRAMUNIFORM1UI64NVPROC __glewProgramUniform1ui64NV = NULL;
-PFNGLPROGRAMUNIFORM1UI64VNVPROC __glewProgramUniform1ui64vNV = NULL;
-PFNGLPROGRAMUNIFORM2I64NVPROC __glewProgramUniform2i64NV = NULL;
-PFNGLPROGRAMUNIFORM2I64VNVPROC __glewProgramUniform2i64vNV = NULL;
-PFNGLPROGRAMUNIFORM2UI64NVPROC __glewProgramUniform2ui64NV = NULL;
-PFNGLPROGRAMUNIFORM2UI64VNVPROC __glewProgramUniform2ui64vNV = NULL;
-PFNGLPROGRAMUNIFORM3I64NVPROC __glewProgramUniform3i64NV = NULL;
-PFNGLPROGRAMUNIFORM3I64VNVPROC __glewProgramUniform3i64vNV = NULL;
-PFNGLPROGRAMUNIFORM3UI64NVPROC __glewProgramUniform3ui64NV = NULL;
-PFNGLPROGRAMUNIFORM3UI64VNVPROC __glewProgramUniform3ui64vNV = NULL;
-PFNGLPROGRAMUNIFORM4I64NVPROC __glewProgramUniform4i64NV = NULL;
-PFNGLPROGRAMUNIFORM4I64VNVPROC __glewProgramUniform4i64vNV = NULL;
-PFNGLPROGRAMUNIFORM4UI64NVPROC __glewProgramUniform4ui64NV = NULL;
-PFNGLPROGRAMUNIFORM4UI64VNVPROC __glewProgramUniform4ui64vNV = NULL;
-PFNGLUNIFORM1I64NVPROC __glewUniform1i64NV = NULL;
-PFNGLUNIFORM1I64VNVPROC __glewUniform1i64vNV = NULL;
-PFNGLUNIFORM1UI64NVPROC __glewUniform1ui64NV = NULL;
-PFNGLUNIFORM1UI64VNVPROC __glewUniform1ui64vNV = NULL;
-PFNGLUNIFORM2I64NVPROC __glewUniform2i64NV = NULL;
-PFNGLUNIFORM2I64VNVPROC __glewUniform2i64vNV = NULL;
-PFNGLUNIFORM2UI64NVPROC __glewUniform2ui64NV = NULL;
-PFNGLUNIFORM2UI64VNVPROC __glewUniform2ui64vNV = NULL;
-PFNGLUNIFORM3I64NVPROC __glewUniform3i64NV = NULL;
-PFNGLUNIFORM3I64VNVPROC __glewUniform3i64vNV = NULL;
-PFNGLUNIFORM3UI64NVPROC __glewUniform3ui64NV = NULL;
-PFNGLUNIFORM3UI64VNVPROC __glewUniform3ui64vNV = NULL;
-PFNGLUNIFORM4I64NVPROC __glewUniform4i64NV = NULL;
-PFNGLUNIFORM4I64VNVPROC __glewUniform4i64vNV = NULL;
-PFNGLUNIFORM4UI64NVPROC __glewUniform4ui64NV = NULL;
-PFNGLUNIFORM4UI64VNVPROC __glewUniform4ui64vNV = NULL;
-
-PFNGLCOLOR3HNVPROC __glewColor3hNV = NULL;
-PFNGLCOLOR3HVNVPROC __glewColor3hvNV = NULL;
-PFNGLCOLOR4HNVPROC __glewColor4hNV = NULL;
-PFNGLCOLOR4HVNVPROC __glewColor4hvNV = NULL;
-PFNGLFOGCOORDHNVPROC __glewFogCoordhNV = NULL;
-PFNGLFOGCOORDHVNVPROC __glewFogCoordhvNV = NULL;
-PFNGLMULTITEXCOORD1HNVPROC __glewMultiTexCoord1hNV = NULL;
-PFNGLMULTITEXCOORD1HVNVPROC __glewMultiTexCoord1hvNV = NULL;
-PFNGLMULTITEXCOORD2HNVPROC __glewMultiTexCoord2hNV = NULL;
-PFNGLMULTITEXCOORD2HVNVPROC __glewMultiTexCoord2hvNV = NULL;
-PFNGLMULTITEXCOORD3HNVPROC __glewMultiTexCoord3hNV = NULL;
-PFNGLMULTITEXCOORD3HVNVPROC __glewMultiTexCoord3hvNV = NULL;
-PFNGLMULTITEXCOORD4HNVPROC __glewMultiTexCoord4hNV = NULL;
-PFNGLMULTITEXCOORD4HVNVPROC __glewMultiTexCoord4hvNV = NULL;
-PFNGLNORMAL3HNVPROC __glewNormal3hNV = NULL;
-PFNGLNORMAL3HVNVPROC __glewNormal3hvNV = NULL;
-PFNGLSECONDARYCOLOR3HNVPROC __glewSecondaryColor3hNV = NULL;
-PFNGLSECONDARYCOLOR3HVNVPROC __glewSecondaryColor3hvNV = NULL;
-PFNGLTEXCOORD1HNVPROC __glewTexCoord1hNV = NULL;
-PFNGLTEXCOORD1HVNVPROC __glewTexCoord1hvNV = NULL;
-PFNGLTEXCOORD2HNVPROC __glewTexCoord2hNV = NULL;
-PFNGLTEXCOORD2HVNVPROC __glewTexCoord2hvNV = NULL;
-PFNGLTEXCOORD3HNVPROC __glewTexCoord3hNV = NULL;
-PFNGLTEXCOORD3HVNVPROC __glewTexCoord3hvNV = NULL;
-PFNGLTEXCOORD4HNVPROC __glewTexCoord4hNV = NULL;
-PFNGLTEXCOORD4HVNVPROC __glewTexCoord4hvNV = NULL;
-PFNGLVERTEX2HNVPROC __glewVertex2hNV = NULL;
-PFNGLVERTEX2HVNVPROC __glewVertex2hvNV = NULL;
-PFNGLVERTEX3HNVPROC __glewVertex3hNV = NULL;
-PFNGLVERTEX3HVNVPROC __glewVertex3hvNV = NULL;
-PFNGLVERTEX4HNVPROC __glewVertex4hNV = NULL;
-PFNGLVERTEX4HVNVPROC __glewVertex4hvNV = NULL;
-PFNGLVERTEXATTRIB1HNVPROC __glewVertexAttrib1hNV = NULL;
-PFNGLVERTEXATTRIB1HVNVPROC __glewVertexAttrib1hvNV = NULL;
-PFNGLVERTEXATTRIB2HNVPROC __glewVertexAttrib2hNV = NULL;
-PFNGLVERTEXATTRIB2HVNVPROC __glewVertexAttrib2hvNV = NULL;
-PFNGLVERTEXATTRIB3HNVPROC __glewVertexAttrib3hNV = NULL;
-PFNGLVERTEXATTRIB3HVNVPROC __glewVertexAttrib3hvNV = NULL;
-PFNGLVERTEXATTRIB4HNVPROC __glewVertexAttrib4hNV = NULL;
-PFNGLVERTEXATTRIB4HVNVPROC __glewVertexAttrib4hvNV = NULL;
-PFNGLVERTEXATTRIBS1HVNVPROC __glewVertexAttribs1hvNV = NULL;
-PFNGLVERTEXATTRIBS2HVNVPROC __glewVertexAttribs2hvNV = NULL;
-PFNGLVERTEXATTRIBS3HVNVPROC __glewVertexAttribs3hvNV = NULL;
-PFNGLVERTEXATTRIBS4HVNVPROC __glewVertexAttribs4hvNV = NULL;
-PFNGLVERTEXWEIGHTHNVPROC __glewVertexWeighthNV = NULL;
-PFNGLVERTEXWEIGHTHVNVPROC __glewVertexWeighthvNV = NULL;
-
-PFNGLBEGINOCCLUSIONQUERYNVPROC __glewBeginOcclusionQueryNV = NULL;
-PFNGLDELETEOCCLUSIONQUERIESNVPROC __glewDeleteOcclusionQueriesNV = NULL;
-PFNGLENDOCCLUSIONQUERYNVPROC __glewEndOcclusionQueryNV = NULL;
-PFNGLGENOCCLUSIONQUERIESNVPROC __glewGenOcclusionQueriesNV = NULL;
-PFNGLGETOCCLUSIONQUERYIVNVPROC __glewGetOcclusionQueryivNV = NULL;
-PFNGLGETOCCLUSIONQUERYUIVNVPROC __glewGetOcclusionQueryuivNV = NULL;
-PFNGLISOCCLUSIONQUERYNVPROC __glewIsOcclusionQueryNV = NULL;
-
-PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC __glewProgramBufferParametersIivNV = NULL;
-PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC __glewProgramBufferParametersIuivNV = NULL;
-PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC __glewProgramBufferParametersfvNV = NULL;
-
-PFNGLFLUSHPIXELDATARANGENVPROC __glewFlushPixelDataRangeNV = NULL;
-PFNGLPIXELDATARANGENVPROC __glewPixelDataRangeNV = NULL;
-
-PFNGLPOINTPARAMETERINVPROC __glewPointParameteriNV = NULL;
-PFNGLPOINTPARAMETERIVNVPROC __glewPointParameterivNV = NULL;
-
-PFNGLGETVIDEOI64VNVPROC __glewGetVideoi64vNV = NULL;
-PFNGLGETVIDEOIVNVPROC __glewGetVideoivNV = NULL;
-PFNGLGETVIDEOUI64VNVPROC __glewGetVideoui64vNV = NULL;
-PFNGLGETVIDEOUIVNVPROC __glewGetVideouivNV = NULL;
-PFNGLPRESENTFRAMEDUALFILLNVPROC __glewPresentFrameDualFillNV = NULL;
-PFNGLPRESENTFRAMEKEYEDNVPROC __glewPresentFrameKeyedNV = NULL;
-
-PFNGLPRIMITIVERESTARTINDEXNVPROC __glewPrimitiveRestartIndexNV = NULL;
-PFNGLPRIMITIVERESTARTNVPROC __glewPrimitiveRestartNV = NULL;
-
-PFNGLCOMBINERINPUTNVPROC __glewCombinerInputNV = NULL;
-PFNGLCOMBINEROUTPUTNVPROC __glewCombinerOutputNV = NULL;
-PFNGLCOMBINERPARAMETERFNVPROC __glewCombinerParameterfNV = NULL;
-PFNGLCOMBINERPARAMETERFVNVPROC __glewCombinerParameterfvNV = NULL;
-PFNGLCOMBINERPARAMETERINVPROC __glewCombinerParameteriNV = NULL;
-PFNGLCOMBINERPARAMETERIVNVPROC __glewCombinerParameterivNV = NULL;
-PFNGLFINALCOMBINERINPUTNVPROC __glewFinalCombinerInputNV = NULL;
-PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC __glewGetCombinerInputParameterfvNV = NULL;
-PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC __glewGetCombinerInputParameterivNV = NULL;
-PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC __glewGetCombinerOutputParameterfvNV = NULL;
-PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC __glewGetCombinerOutputParameterivNV = NULL;
-PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC __glewGetFinalCombinerInputParameterfvNV = NULL;
-PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC __glewGetFinalCombinerInputParameterivNV = NULL;
-
-PFNGLCOMBINERSTAGEPARAMETERFVNVPROC __glewCombinerStageParameterfvNV = NULL;
-PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC __glewGetCombinerStageParameterfvNV = NULL;
-
-PFNGLGETBUFFERPARAMETERUI64VNVPROC __glewGetBufferParameterui64vNV = NULL;
-PFNGLGETINTEGERUI64VNVPROC __glewGetIntegerui64vNV = NULL;
-PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC __glewGetNamedBufferParameterui64vNV = NULL;
-PFNGLISBUFFERRESIDENTNVPROC __glewIsBufferResidentNV = NULL;
-PFNGLISNAMEDBUFFERRESIDENTNVPROC __glewIsNamedBufferResidentNV = NULL;
-PFNGLMAKEBUFFERNONRESIDENTNVPROC __glewMakeBufferNonResidentNV = NULL;
-PFNGLMAKEBUFFERRESIDENTNVPROC __glewMakeBufferResidentNV = NULL;
-PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC __glewMakeNamedBufferNonResidentNV = NULL;
-PFNGLMAKENAMEDBUFFERRESIDENTNVPROC __glewMakeNamedBufferResidentNV = NULL;
-PFNGLPROGRAMUNIFORMUI64NVPROC __glewProgramUniformui64NV = NULL;
-PFNGLPROGRAMUNIFORMUI64VNVPROC __glewProgramUniformui64vNV = NULL;
-PFNGLUNIFORMUI64NVPROC __glewUniformui64NV = NULL;
-PFNGLUNIFORMUI64VNVPROC __glewUniformui64vNV = NULL;
-
-PFNGLTEXTUREBARRIERNVPROC __glewTextureBarrierNV = NULL;
-
-PFNGLACTIVEVARYINGNVPROC __glewActiveVaryingNV = NULL;
-PFNGLBEGINTRANSFORMFEEDBACKNVPROC __glewBeginTransformFeedbackNV = NULL;
-PFNGLBINDBUFFERBASENVPROC __glewBindBufferBaseNV = NULL;
-PFNGLBINDBUFFEROFFSETNVPROC __glewBindBufferOffsetNV = NULL;
-PFNGLBINDBUFFERRANGENVPROC __glewBindBufferRangeNV = NULL;
-PFNGLENDTRANSFORMFEEDBACKNVPROC __glewEndTransformFeedbackNV = NULL;
-PFNGLGETACTIVEVARYINGNVPROC __glewGetActiveVaryingNV = NULL;
-PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC __glewGetTransformFeedbackVaryingNV = NULL;
-PFNGLGETVARYINGLOCATIONNVPROC __glewGetVaryingLocationNV = NULL;
-PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC __glewTransformFeedbackAttribsNV = NULL;
-PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC __glewTransformFeedbackVaryingsNV = NULL;
-
-PFNGLBINDTRANSFORMFEEDBACKNVPROC __glewBindTransformFeedbackNV = NULL;
-PFNGLDELETETRANSFORMFEEDBACKSNVPROC __glewDeleteTransformFeedbacksNV = NULL;
-PFNGLDRAWTRANSFORMFEEDBACKNVPROC __glewDrawTransformFeedbackNV = NULL;
-PFNGLGENTRANSFORMFEEDBACKSNVPROC __glewGenTransformFeedbacksNV = NULL;
-PFNGLISTRANSFORMFEEDBACKNVPROC __glewIsTransformFeedbackNV = NULL;
-PFNGLPAUSETRANSFORMFEEDBACKNVPROC __glewPauseTransformFeedbackNV = NULL;
-PFNGLRESUMETRANSFORMFEEDBACKNVPROC __glewResumeTransformFeedbackNV = NULL;
-
-PFNGLFLUSHVERTEXARRAYRANGENVPROC __glewFlushVertexArrayRangeNV = NULL;
-PFNGLVERTEXARRAYRANGENVPROC __glewVertexArrayRangeNV = NULL;
-
-PFNGLGETVERTEXATTRIBLI64VNVPROC __glewGetVertexAttribLi64vNV = NULL;
-PFNGLGETVERTEXATTRIBLUI64VNVPROC __glewGetVertexAttribLui64vNV = NULL;
-PFNGLVERTEXATTRIBL1I64NVPROC __glewVertexAttribL1i64NV = NULL;
-PFNGLVERTEXATTRIBL1I64VNVPROC __glewVertexAttribL1i64vNV = NULL;
-PFNGLVERTEXATTRIBL1UI64NVPROC __glewVertexAttribL1ui64NV = NULL;
-PFNGLVERTEXATTRIBL1UI64VNVPROC __glewVertexAttribL1ui64vNV = NULL;
-PFNGLVERTEXATTRIBL2I64NVPROC __glewVertexAttribL2i64NV = NULL;
-PFNGLVERTEXATTRIBL2I64VNVPROC __glewVertexAttribL2i64vNV = NULL;
-PFNGLVERTEXATTRIBL2UI64NVPROC __glewVertexAttribL2ui64NV = NULL;
-PFNGLVERTEXATTRIBL2UI64VNVPROC __glewVertexAttribL2ui64vNV = NULL;
-PFNGLVERTEXATTRIBL3I64NVPROC __glewVertexAttribL3i64NV = NULL;
-PFNGLVERTEXATTRIBL3I64VNVPROC __glewVertexAttribL3i64vNV = NULL;
-PFNGLVERTEXATTRIBL3UI64NVPROC __glewVertexAttribL3ui64NV = NULL;
-PFNGLVERTEXATTRIBL3UI64VNVPROC __glewVertexAttribL3ui64vNV = NULL;
-PFNGLVERTEXATTRIBL4I64NVPROC __glewVertexAttribL4i64NV = NULL;
-PFNGLVERTEXATTRIBL4I64VNVPROC __glewVertexAttribL4i64vNV = NULL;
-PFNGLVERTEXATTRIBL4UI64NVPROC __glewVertexAttribL4ui64NV = NULL;
-PFNGLVERTEXATTRIBL4UI64VNVPROC __glewVertexAttribL4ui64vNV = NULL;
-PFNGLVERTEXATTRIBLFORMATNVPROC __glewVertexAttribLFormatNV = NULL;
-
-PFNGLBUFFERADDRESSRANGENVPROC __glewBufferAddressRangeNV = NULL;
-PFNGLCOLORFORMATNVPROC __glewColorFormatNV = NULL;
-PFNGLEDGEFLAGFORMATNVPROC __glewEdgeFlagFormatNV = NULL;
-PFNGLFOGCOORDFORMATNVPROC __glewFogCoordFormatNV = NULL;
-PFNGLGETINTEGERUI64I_VNVPROC __glewGetIntegerui64i_vNV = NULL;
-PFNGLINDEXFORMATNVPROC __glewIndexFormatNV = NULL;
-PFNGLNORMALFORMATNVPROC __glewNormalFormatNV = NULL;
-PFNGLSECONDARYCOLORFORMATNVPROC __glewSecondaryColorFormatNV = NULL;
-PFNGLTEXCOORDFORMATNVPROC __glewTexCoordFormatNV = NULL;
-PFNGLVERTEXATTRIBFORMATNVPROC __glewVertexAttribFormatNV = NULL;
-PFNGLVERTEXATTRIBIFORMATNVPROC __glewVertexAttribIFormatNV = NULL;
-PFNGLVERTEXFORMATNVPROC __glewVertexFormatNV = NULL;
-
-PFNGLAREPROGRAMSRESIDENTNVPROC __glewAreProgramsResidentNV = NULL;
-PFNGLBINDPROGRAMNVPROC __glewBindProgramNV = NULL;
-PFNGLDELETEPROGRAMSNVPROC __glewDeleteProgramsNV = NULL;
-PFNGLEXECUTEPROGRAMNVPROC __glewExecuteProgramNV = NULL;
-PFNGLGENPROGRAMSNVPROC __glewGenProgramsNV = NULL;
-PFNGLGETPROGRAMPARAMETERDVNVPROC __glewGetProgramParameterdvNV = NULL;
-PFNGLGETPROGRAMPARAMETERFVNVPROC __glewGetProgramParameterfvNV = NULL;
-PFNGLGETPROGRAMSTRINGNVPROC __glewGetProgramStringNV = NULL;
-PFNGLGETPROGRAMIVNVPROC __glewGetProgramivNV = NULL;
-PFNGLGETTRACKMATRIXIVNVPROC __glewGetTrackMatrixivNV = NULL;
-PFNGLGETVERTEXATTRIBPOINTERVNVPROC __glewGetVertexAttribPointervNV = NULL;
-PFNGLGETVERTEXATTRIBDVNVPROC __glewGetVertexAttribdvNV = NULL;
-PFNGLGETVERTEXATTRIBFVNVPROC __glewGetVertexAttribfvNV = NULL;
-PFNGLGETVERTEXATTRIBIVNVPROC __glewGetVertexAttribivNV = NULL;
-PFNGLISPROGRAMNVPROC __glewIsProgramNV = NULL;
-PFNGLLOADPROGRAMNVPROC __glewLoadProgramNV = NULL;
-PFNGLPROGRAMPARAMETER4DNVPROC __glewProgramParameter4dNV = NULL;
-PFNGLPROGRAMPARAMETER4DVNVPROC __glewProgramParameter4dvNV = NULL;
-PFNGLPROGRAMPARAMETER4FNVPROC __glewProgramParameter4fNV = NULL;
-PFNGLPROGRAMPARAMETER4FVNVPROC __glewProgramParameter4fvNV = NULL;
-PFNGLPROGRAMPARAMETERS4DVNVPROC __glewProgramParameters4dvNV = NULL;
-PFNGLPROGRAMPARAMETERS4FVNVPROC __glewProgramParameters4fvNV = NULL;
-PFNGLREQUESTRESIDENTPROGRAMSNVPROC __glewRequestResidentProgramsNV = NULL;
-PFNGLTRACKMATRIXNVPROC __glewTrackMatrixNV = NULL;
-PFNGLVERTEXATTRIB1DNVPROC __glewVertexAttrib1dNV = NULL;
-PFNGLVERTEXATTRIB1DVNVPROC __glewVertexAttrib1dvNV = NULL;
-PFNGLVERTEXATTRIB1FNVPROC __glewVertexAttrib1fNV = NULL;
-PFNGLVERTEXATTRIB1FVNVPROC __glewVertexAttrib1fvNV = NULL;
-PFNGLVERTEXATTRIB1SNVPROC __glewVertexAttrib1sNV = NULL;
-PFNGLVERTEXATTRIB1SVNVPROC __glewVertexAttrib1svNV = NULL;
-PFNGLVERTEXATTRIB2DNVPROC __glewVertexAttrib2dNV = NULL;
-PFNGLVERTEXATTRIB2DVNVPROC __glewVertexAttrib2dvNV = NULL;
-PFNGLVERTEXATTRIB2FNVPROC __glewVertexAttrib2fNV = NULL;
-PFNGLVERTEXATTRIB2FVNVPROC __glewVertexAttrib2fvNV = NULL;
-PFNGLVERTEXATTRIB2SNVPROC __glewVertexAttrib2sNV = NULL;
-PFNGLVERTEXATTRIB2SVNVPROC __glewVertexAttrib2svNV = NULL;
-PFNGLVERTEXATTRIB3DNVPROC __glewVertexAttrib3dNV = NULL;
-PFNGLVERTEXATTRIB3DVNVPROC __glewVertexAttrib3dvNV = NULL;
-PFNGLVERTEXATTRIB3FNVPROC __glewVertexAttrib3fNV = NULL;
-PFNGLVERTEXATTRIB3FVNVPROC __glewVertexAttrib3fvNV = NULL;
-PFNGLVERTEXATTRIB3SNVPROC __glewVertexAttrib3sNV = NULL;
-PFNGLVERTEXATTRIB3SVNVPROC __glewVertexAttrib3svNV = NULL;
-PFNGLVERTEXATTRIB4DNVPROC __glewVertexAttrib4dNV = NULL;
-PFNGLVERTEXATTRIB4DVNVPROC __glewVertexAttrib4dvNV = NULL;
-PFNGLVERTEXATTRIB4FNVPROC __glewVertexAttrib4fNV = NULL;
-PFNGLVERTEXATTRIB4FVNVPROC __glewVertexAttrib4fvNV = NULL;
-PFNGLVERTEXATTRIB4SNVPROC __glewVertexAttrib4sNV = NULL;
-PFNGLVERTEXATTRIB4SVNVPROC __glewVertexAttrib4svNV = NULL;
-PFNGLVERTEXATTRIB4UBNVPROC __glewVertexAttrib4ubNV = NULL;
-PFNGLVERTEXATTRIB4UBVNVPROC __glewVertexAttrib4ubvNV = NULL;
-PFNGLVERTEXATTRIBPOINTERNVPROC __glewVertexAttribPointerNV = NULL;
-PFNGLVERTEXATTRIBS1DVNVPROC __glewVertexAttribs1dvNV = NULL;
-PFNGLVERTEXATTRIBS1FVNVPROC __glewVertexAttribs1fvNV = NULL;
-PFNGLVERTEXATTRIBS1SVNVPROC __glewVertexAttribs1svNV = NULL;
-PFNGLVERTEXATTRIBS2DVNVPROC __glewVertexAttribs2dvNV = NULL;
-PFNGLVERTEXATTRIBS2FVNVPROC __glewVertexAttribs2fvNV = NULL;
-PFNGLVERTEXATTRIBS2SVNVPROC __glewVertexAttribs2svNV = NULL;
-PFNGLVERTEXATTRIBS3DVNVPROC __glewVertexAttribs3dvNV = NULL;
-PFNGLVERTEXATTRIBS3FVNVPROC __glewVertexAttribs3fvNV = NULL;
-PFNGLVERTEXATTRIBS3SVNVPROC __glewVertexAttribs3svNV = NULL;
-PFNGLVERTEXATTRIBS4DVNVPROC __glewVertexAttribs4dvNV = NULL;
-PFNGLVERTEXATTRIBS4FVNVPROC __glewVertexAttribs4fvNV = NULL;
-PFNGLVERTEXATTRIBS4SVNVPROC __glewVertexAttribs4svNV = NULL;
-PFNGLVERTEXATTRIBS4UBVNVPROC __glewVertexAttribs4ubvNV = NULL;
-
-PFNGLCLEARDEPTHFOESPROC __glewClearDepthfOES = NULL;
-PFNGLCLIPPLANEFOESPROC __glewClipPlanefOES = NULL;
-PFNGLDEPTHRANGEFOESPROC __glewDepthRangefOES = NULL;
-PFNGLFRUSTUMFOESPROC __glewFrustumfOES = NULL;
-PFNGLGETCLIPPLANEFOESPROC __glewGetClipPlanefOES = NULL;
-PFNGLORTHOFOESPROC __glewOrthofOES = NULL;
-
-PFNGLDETAILTEXFUNCSGISPROC __glewDetailTexFuncSGIS = NULL;
-PFNGLGETDETAILTEXFUNCSGISPROC __glewGetDetailTexFuncSGIS = NULL;
-
-PFNGLFOGFUNCSGISPROC __glewFogFuncSGIS = NULL;
-PFNGLGETFOGFUNCSGISPROC __glewGetFogFuncSGIS = NULL;
-
-PFNGLSAMPLEMASKSGISPROC __glewSampleMaskSGIS = NULL;
-PFNGLSAMPLEPATTERNSGISPROC __glewSamplePatternSGIS = NULL;
-
-PFNGLGETSHARPENTEXFUNCSGISPROC __glewGetSharpenTexFuncSGIS = NULL;
-PFNGLSHARPENTEXFUNCSGISPROC __glewSharpenTexFuncSGIS = NULL;
-
-PFNGLTEXIMAGE4DSGISPROC __glewTexImage4DSGIS = NULL;
-PFNGLTEXSUBIMAGE4DSGISPROC __glewTexSubImage4DSGIS = NULL;
-
-PFNGLGETTEXFILTERFUNCSGISPROC __glewGetTexFilterFuncSGIS = NULL;
-PFNGLTEXFILTERFUNCSGISPROC __glewTexFilterFuncSGIS = NULL;
-
-PFNGLASYNCMARKERSGIXPROC __glewAsyncMarkerSGIX = NULL;
-PFNGLDELETEASYNCMARKERSSGIXPROC __glewDeleteAsyncMarkersSGIX = NULL;
-PFNGLFINISHASYNCSGIXPROC __glewFinishAsyncSGIX = NULL;
-PFNGLGENASYNCMARKERSSGIXPROC __glewGenAsyncMarkersSGIX = NULL;
-PFNGLISASYNCMARKERSGIXPROC __glewIsAsyncMarkerSGIX = NULL;
-PFNGLPOLLASYNCSGIXPROC __glewPollAsyncSGIX = NULL;
-
-PFNGLFLUSHRASTERSGIXPROC __glewFlushRasterSGIX = NULL;
-
-PFNGLTEXTUREFOGSGIXPROC __glewTextureFogSGIX = NULL;
-
-PFNGLFRAGMENTCOLORMATERIALSGIXPROC __glewFragmentColorMaterialSGIX = NULL;
-PFNGLFRAGMENTLIGHTMODELFSGIXPROC __glewFragmentLightModelfSGIX = NULL;
-PFNGLFRAGMENTLIGHTMODELFVSGIXPROC __glewFragmentLightModelfvSGIX = NULL;
-PFNGLFRAGMENTLIGHTMODELISGIXPROC __glewFragmentLightModeliSGIX = NULL;
-PFNGLFRAGMENTLIGHTMODELIVSGIXPROC __glewFragmentLightModelivSGIX = NULL;
-PFNGLFRAGMENTLIGHTFSGIXPROC __glewFragmentLightfSGIX = NULL;
-PFNGLFRAGMENTLIGHTFVSGIXPROC __glewFragmentLightfvSGIX = NULL;
-PFNGLFRAGMENTLIGHTISGIXPROC __glewFragmentLightiSGIX = NULL;
-PFNGLFRAGMENTLIGHTIVSGIXPROC __glewFragmentLightivSGIX = NULL;
-PFNGLFRAGMENTMATERIALFSGIXPROC __glewFragmentMaterialfSGIX = NULL;
-PFNGLFRAGMENTMATERIALFVSGIXPROC __glewFragmentMaterialfvSGIX = NULL;
-PFNGLFRAGMENTMATERIALISGIXPROC __glewFragmentMaterialiSGIX = NULL;
-PFNGLFRAGMENTMATERIALIVSGIXPROC __glewFragmentMaterialivSGIX = NULL;
-PFNGLGETFRAGMENTLIGHTFVSGIXPROC __glewGetFragmentLightfvSGIX = NULL;
-PFNGLGETFRAGMENTLIGHTIVSGIXPROC __glewGetFragmentLightivSGIX = NULL;
-PFNGLGETFRAGMENTMATERIALFVSGIXPROC __glewGetFragmentMaterialfvSGIX = NULL;
-PFNGLGETFRAGMENTMATERIALIVSGIXPROC __glewGetFragmentMaterialivSGIX = NULL;
-
-PFNGLFRAMEZOOMSGIXPROC __glewFrameZoomSGIX = NULL;
-
-PFNGLPIXELTEXGENSGIXPROC __glewPixelTexGenSGIX = NULL;
-
-PFNGLREFERENCEPLANESGIXPROC __glewReferencePlaneSGIX = NULL;
-
-PFNGLSPRITEPARAMETERFSGIXPROC __glewSpriteParameterfSGIX = NULL;
-PFNGLSPRITEPARAMETERFVSGIXPROC __glewSpriteParameterfvSGIX = NULL;
-PFNGLSPRITEPARAMETERISGIXPROC __glewSpriteParameteriSGIX = NULL;
-PFNGLSPRITEPARAMETERIVSGIXPROC __glewSpriteParameterivSGIX = NULL;
-
-PFNGLTAGSAMPLEBUFFERSGIXPROC __glewTagSampleBufferSGIX = NULL;
-
-PFNGLCOLORTABLEPARAMETERFVSGIPROC __glewColorTableParameterfvSGI = NULL;
-PFNGLCOLORTABLEPARAMETERIVSGIPROC __glewColorTableParameterivSGI = NULL;
-PFNGLCOLORTABLESGIPROC __glewColorTableSGI = NULL;
-PFNGLCOPYCOLORTABLESGIPROC __glewCopyColorTableSGI = NULL;
-PFNGLGETCOLORTABLEPARAMETERFVSGIPROC __glewGetColorTableParameterfvSGI = NULL;
-PFNGLGETCOLORTABLEPARAMETERIVSGIPROC __glewGetColorTableParameterivSGI = NULL;
-PFNGLGETCOLORTABLESGIPROC __glewGetColorTableSGI = NULL;
-
-PFNGLFINISHTEXTURESUNXPROC __glewFinishTextureSUNX = NULL;
-
-PFNGLGLOBALALPHAFACTORBSUNPROC __glewGlobalAlphaFactorbSUN = NULL;
-PFNGLGLOBALALPHAFACTORDSUNPROC __glewGlobalAlphaFactordSUN = NULL;
-PFNGLGLOBALALPHAFACTORFSUNPROC __glewGlobalAlphaFactorfSUN = NULL;
-PFNGLGLOBALALPHAFACTORISUNPROC __glewGlobalAlphaFactoriSUN = NULL;
-PFNGLGLOBALALPHAFACTORSSUNPROC __glewGlobalAlphaFactorsSUN = NULL;
-PFNGLGLOBALALPHAFACTORUBSUNPROC __glewGlobalAlphaFactorubSUN = NULL;
-PFNGLGLOBALALPHAFACTORUISUNPROC __glewGlobalAlphaFactoruiSUN = NULL;
-PFNGLGLOBALALPHAFACTORUSSUNPROC __glewGlobalAlphaFactorusSUN = NULL;
-
-PFNGLREADVIDEOPIXELSSUNPROC __glewReadVideoPixelsSUN = NULL;
-
-PFNGLREPLACEMENTCODEPOINTERSUNPROC __glewReplacementCodePointerSUN = NULL;
-PFNGLREPLACEMENTCODEUBSUNPROC __glewReplacementCodeubSUN = NULL;
-PFNGLREPLACEMENTCODEUBVSUNPROC __glewReplacementCodeubvSUN = NULL;
-PFNGLREPLACEMENTCODEUISUNPROC __glewReplacementCodeuiSUN = NULL;
-PFNGLREPLACEMENTCODEUIVSUNPROC __glewReplacementCodeuivSUN = NULL;
-PFNGLREPLACEMENTCODEUSSUNPROC __glewReplacementCodeusSUN = NULL;
-PFNGLREPLACEMENTCODEUSVSUNPROC __glewReplacementCodeusvSUN = NULL;
-
-PFNGLCOLOR3FVERTEX3FSUNPROC __glewColor3fVertex3fSUN = NULL;
-PFNGLCOLOR3FVERTEX3FVSUNPROC __glewColor3fVertex3fvSUN = NULL;
-PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewColor4fNormal3fVertex3fSUN = NULL;
-PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewColor4fNormal3fVertex3fvSUN = NULL;
-PFNGLCOLOR4UBVERTEX2FSUNPROC __glewColor4ubVertex2fSUN = NULL;
-PFNGLCOLOR4UBVERTEX2FVSUNPROC __glewColor4ubVertex2fvSUN = NULL;
-PFNGLCOLOR4UBVERTEX3FSUNPROC __glewColor4ubVertex3fSUN = NULL;
-PFNGLCOLOR4UBVERTEX3FVSUNPROC __glewColor4ubVertex3fvSUN = NULL;
-PFNGLNORMAL3FVERTEX3FSUNPROC __glewNormal3fVertex3fSUN = NULL;
-PFNGLNORMAL3FVERTEX3FVSUNPROC __glewNormal3fVertex3fvSUN = NULL;
-PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC __glewReplacementCodeuiColor3fVertex3fSUN = NULL;
-PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC __glewReplacementCodeuiColor3fVertex3fvSUN = NULL;
-PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiColor4fNormal3fVertex3fSUN = NULL;
-PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiColor4fNormal3fVertex3fvSUN = NULL;
-PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC __glewReplacementCodeuiColor4ubVertex3fSUN = NULL;
-PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC __glewReplacementCodeuiColor4ubVertex3fvSUN = NULL;
-PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiNormal3fVertex3fSUN = NULL;
-PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiNormal3fVertex3fvSUN = NULL;
-PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN = NULL;
-PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN = NULL;
-PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fNormal3fVertex3fSUN = NULL;
-PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN = NULL;
-PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fVertex3fSUN = NULL;
-PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fVertex3fvSUN = NULL;
-PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC __glewReplacementCodeuiVertex3fSUN = NULL;
-PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC __glewReplacementCodeuiVertex3fvSUN = NULL;
-PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC __glewTexCoord2fColor3fVertex3fSUN = NULL;
-PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC __glewTexCoord2fColor3fVertex3fvSUN = NULL;
-PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewTexCoord2fColor4fNormal3fVertex3fSUN = NULL;
-PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewTexCoord2fColor4fNormal3fVertex3fvSUN = NULL;
-PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC __glewTexCoord2fColor4ubVertex3fSUN = NULL;
-PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC __glewTexCoord2fColor4ubVertex3fvSUN = NULL;
-PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC __glewTexCoord2fNormal3fVertex3fSUN = NULL;
-PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC __glewTexCoord2fNormal3fVertex3fvSUN = NULL;
-PFNGLTEXCOORD2FVERTEX3FSUNPROC __glewTexCoord2fVertex3fSUN = NULL;
-PFNGLTEXCOORD2FVERTEX3FVSUNPROC __glewTexCoord2fVertex3fvSUN = NULL;
-PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC __glewTexCoord4fColor4fNormal3fVertex4fSUN = NULL;
-PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC __glewTexCoord4fColor4fNormal3fVertex4fvSUN = NULL;
-PFNGLTEXCOORD4FVERTEX4FSUNPROC __glewTexCoord4fVertex4fSUN = NULL;
-PFNGLTEXCOORD4FVERTEX4FVSUNPROC __glewTexCoord4fVertex4fvSUN = NULL;
-
-PFNGLADDSWAPHINTRECTWINPROC __glewAddSwapHintRectWIN = NULL;
-
-#endif /* !WIN32 || !GLEW_MX */
-
-#if !defined(GLEW_MX)
-
-GLboolean __GLEW_VERSION_1_1 = GL_FALSE;
-GLboolean __GLEW_VERSION_1_2 = GL_FALSE;
-GLboolean __GLEW_VERSION_1_3 = GL_FALSE;
-GLboolean __GLEW_VERSION_1_4 = GL_FALSE;
-GLboolean __GLEW_VERSION_1_5 = GL_FALSE;
-GLboolean __GLEW_VERSION_2_0 = GL_FALSE;
-GLboolean __GLEW_VERSION_2_1 = GL_FALSE;
-GLboolean __GLEW_VERSION_3_0 = GL_FALSE;
-GLboolean __GLEW_VERSION_3_1 = GL_FALSE;
-GLboolean __GLEW_VERSION_3_2 = GL_FALSE;
-GLboolean __GLEW_VERSION_3_3 = GL_FALSE;
-GLboolean __GLEW_VERSION_4_0 = GL_FALSE;
-GLboolean __GLEW_3DFX_multisample = GL_FALSE;
-GLboolean __GLEW_3DFX_tbuffer = GL_FALSE;
-GLboolean __GLEW_3DFX_texture_compression_FXT1 = GL_FALSE;
-GLboolean __GLEW_AMD_conservative_depth = GL_FALSE;
-GLboolean __GLEW_AMD_draw_buffers_blend = GL_FALSE;
-GLboolean __GLEW_AMD_performance_monitor = GL_FALSE;
-GLboolean __GLEW_AMD_seamless_cubemap_per_texture = GL_FALSE;
-GLboolean __GLEW_AMD_shader_stencil_export = GL_FALSE;
-GLboolean __GLEW_AMD_texture_texture4 = GL_FALSE;
-GLboolean __GLEW_AMD_vertex_shader_tessellator = GL_FALSE;
-GLboolean __GLEW_APPLE_aux_depth_stencil = GL_FALSE;
-GLboolean __GLEW_APPLE_client_storage = GL_FALSE;
-GLboolean __GLEW_APPLE_element_array = GL_FALSE;
-GLboolean __GLEW_APPLE_fence = GL_FALSE;
-GLboolean __GLEW_APPLE_float_pixels = GL_FALSE;
-GLboolean __GLEW_APPLE_flush_buffer_range = GL_FALSE;
-GLboolean __GLEW_APPLE_object_purgeable = GL_FALSE;
-GLboolean __GLEW_APPLE_pixel_buffer = GL_FALSE;
-GLboolean __GLEW_APPLE_rgb_422 = GL_FALSE;
-GLboolean __GLEW_APPLE_row_bytes = GL_FALSE;
-GLboolean __GLEW_APPLE_specular_vector = GL_FALSE;
-GLboolean __GLEW_APPLE_texture_range = GL_FALSE;
-GLboolean __GLEW_APPLE_transform_hint = GL_FALSE;
-GLboolean __GLEW_APPLE_vertex_array_object = GL_FALSE;
-GLboolean __GLEW_APPLE_vertex_array_range = GL_FALSE;
-GLboolean __GLEW_APPLE_vertex_program_evaluators = GL_FALSE;
-GLboolean __GLEW_APPLE_ycbcr_422 = GL_FALSE;
-GLboolean __GLEW_ARB_blend_func_extended = GL_FALSE;
-GLboolean __GLEW_ARB_color_buffer_float = GL_FALSE;
-GLboolean __GLEW_ARB_compatibility = GL_FALSE;
-GLboolean __GLEW_ARB_copy_buffer = GL_FALSE;
-GLboolean __GLEW_ARB_depth_buffer_float = GL_FALSE;
-GLboolean __GLEW_ARB_depth_clamp = GL_FALSE;
-GLboolean __GLEW_ARB_depth_texture = GL_FALSE;
-GLboolean __GLEW_ARB_draw_buffers = GL_FALSE;
-GLboolean __GLEW_ARB_draw_buffers_blend = GL_FALSE;
-GLboolean __GLEW_ARB_draw_elements_base_vertex = GL_FALSE;
-GLboolean __GLEW_ARB_draw_indirect = GL_FALSE;
-GLboolean __GLEW_ARB_draw_instanced = GL_FALSE;
-GLboolean __GLEW_ARB_explicit_attrib_location = GL_FALSE;
-GLboolean __GLEW_ARB_fragment_coord_conventions = GL_FALSE;
-GLboolean __GLEW_ARB_fragment_program = GL_FALSE;
-GLboolean __GLEW_ARB_fragment_program_shadow = GL_FALSE;
-GLboolean __GLEW_ARB_fragment_shader = GL_FALSE;
-GLboolean __GLEW_ARB_framebuffer_object = GL_FALSE;
-GLboolean __GLEW_ARB_framebuffer_sRGB = GL_FALSE;
-GLboolean __GLEW_ARB_geometry_shader4 = GL_FALSE;
-GLboolean __GLEW_ARB_gpu_shader5 = GL_FALSE;
-GLboolean __GLEW_ARB_gpu_shader_fp64 = GL_FALSE;
-GLboolean __GLEW_ARB_half_float_pixel = GL_FALSE;
-GLboolean __GLEW_ARB_half_float_vertex = GL_FALSE;
-GLboolean __GLEW_ARB_imaging = GL_FALSE;
-GLboolean __GLEW_ARB_instanced_arrays = GL_FALSE;
-GLboolean __GLEW_ARB_map_buffer_range = GL_FALSE;
-GLboolean __GLEW_ARB_matrix_palette = GL_FALSE;
-GLboolean __GLEW_ARB_multisample = GL_FALSE;
-GLboolean __GLEW_ARB_multitexture = GL_FALSE;
-GLboolean __GLEW_ARB_occlusion_query = GL_FALSE;
-GLboolean __GLEW_ARB_occlusion_query2 = GL_FALSE;
-GLboolean __GLEW_ARB_pixel_buffer_object = GL_FALSE;
-GLboolean __GLEW_ARB_point_parameters = GL_FALSE;
-GLboolean __GLEW_ARB_point_sprite = GL_FALSE;
-GLboolean __GLEW_ARB_provoking_vertex = GL_FALSE;
-GLboolean __GLEW_ARB_sample_shading = GL_FALSE;
-GLboolean __GLEW_ARB_sampler_objects = GL_FALSE;
-GLboolean __GLEW_ARB_seamless_cube_map = GL_FALSE;
-GLboolean __GLEW_ARB_shader_bit_encoding = GL_FALSE;
-GLboolean __GLEW_ARB_shader_objects = GL_FALSE;
-GLboolean __GLEW_ARB_shader_subroutine = GL_FALSE;
-GLboolean __GLEW_ARB_shader_texture_lod = GL_FALSE;
-GLboolean __GLEW_ARB_shading_language_100 = GL_FALSE;
-GLboolean __GLEW_ARB_shading_language_include = GL_FALSE;
-GLboolean __GLEW_ARB_shadow = GL_FALSE;
-GLboolean __GLEW_ARB_shadow_ambient = GL_FALSE;
-GLboolean __GLEW_ARB_sync = GL_FALSE;
-GLboolean __GLEW_ARB_tessellation_shader = GL_FALSE;
-GLboolean __GLEW_ARB_texture_border_clamp = GL_FALSE;
-GLboolean __GLEW_ARB_texture_buffer_object = GL_FALSE;
-GLboolean __GLEW_ARB_texture_buffer_object_rgb32 = GL_FALSE;
-GLboolean __GLEW_ARB_texture_compression = GL_FALSE;
-GLboolean __GLEW_ARB_texture_compression_bptc = GL_FALSE;
-GLboolean __GLEW_ARB_texture_compression_rgtc = GL_FALSE;
-GLboolean __GLEW_ARB_texture_cube_map = GL_FALSE;
-GLboolean __GLEW_ARB_texture_cube_map_array = GL_FALSE;
-GLboolean __GLEW_ARB_texture_env_add = GL_FALSE;
-GLboolean __GLEW_ARB_texture_env_combine = GL_FALSE;
-GLboolean __GLEW_ARB_texture_env_crossbar = GL_FALSE;
-GLboolean __GLEW_ARB_texture_env_dot3 = GL_FALSE;
-GLboolean __GLEW_ARB_texture_float = GL_FALSE;
-GLboolean __GLEW_ARB_texture_gather = GL_FALSE;
-GLboolean __GLEW_ARB_texture_mirrored_repeat = GL_FALSE;
-GLboolean __GLEW_ARB_texture_multisample = GL_FALSE;
-GLboolean __GLEW_ARB_texture_non_power_of_two = GL_FALSE;
-GLboolean __GLEW_ARB_texture_query_lod = GL_FALSE;
-GLboolean __GLEW_ARB_texture_rectangle = GL_FALSE;
-GLboolean __GLEW_ARB_texture_rg = GL_FALSE;
-GLboolean __GLEW_ARB_texture_rgb10_a2ui = GL_FALSE;
-GLboolean __GLEW_ARB_texture_swizzle = GL_FALSE;
-GLboolean __GLEW_ARB_timer_query = GL_FALSE;
-GLboolean __GLEW_ARB_transform_feedback2 = GL_FALSE;
-GLboolean __GLEW_ARB_transform_feedback3 = GL_FALSE;
-GLboolean __GLEW_ARB_transpose_matrix = GL_FALSE;
-GLboolean __GLEW_ARB_uniform_buffer_object = GL_FALSE;
-GLboolean __GLEW_ARB_vertex_array_bgra = GL_FALSE;
-GLboolean __GLEW_ARB_vertex_array_object = GL_FALSE;
-GLboolean __GLEW_ARB_vertex_blend = GL_FALSE;
-GLboolean __GLEW_ARB_vertex_buffer_object = GL_FALSE;
-GLboolean __GLEW_ARB_vertex_program = GL_FALSE;
-GLboolean __GLEW_ARB_vertex_shader = GL_FALSE;
-GLboolean __GLEW_ARB_vertex_type_2_10_10_10_rev = GL_FALSE;
-GLboolean __GLEW_ARB_window_pos = GL_FALSE;
-GLboolean __GLEW_ATIX_point_sprites = GL_FALSE;
-GLboolean __GLEW_ATIX_texture_env_combine3 = GL_FALSE;
-GLboolean __GLEW_ATIX_texture_env_route = GL_FALSE;
-GLboolean __GLEW_ATIX_vertex_shader_output_point_size = GL_FALSE;
-GLboolean __GLEW_ATI_draw_buffers = GL_FALSE;
-GLboolean __GLEW_ATI_element_array = GL_FALSE;
-GLboolean __GLEW_ATI_envmap_bumpmap = GL_FALSE;
-GLboolean __GLEW_ATI_fragment_shader = GL_FALSE;
-GLboolean __GLEW_ATI_map_object_buffer = GL_FALSE;
-GLboolean __GLEW_ATI_meminfo = GL_FALSE;
-GLboolean __GLEW_ATI_pn_triangles = GL_FALSE;
-GLboolean __GLEW_ATI_separate_stencil = GL_FALSE;
-GLboolean __GLEW_ATI_shader_texture_lod = GL_FALSE;
-GLboolean __GLEW_ATI_text_fragment_shader = GL_FALSE;
-GLboolean __GLEW_ATI_texture_compression_3dc = GL_FALSE;
-GLboolean __GLEW_ATI_texture_env_combine3 = GL_FALSE;
-GLboolean __GLEW_ATI_texture_float = GL_FALSE;
-GLboolean __GLEW_ATI_texture_mirror_once = GL_FALSE;
-GLboolean __GLEW_ATI_vertex_array_object = GL_FALSE;
-GLboolean __GLEW_ATI_vertex_attrib_array_object = GL_FALSE;
-GLboolean __GLEW_ATI_vertex_streams = GL_FALSE;
-GLboolean __GLEW_EXT_422_pixels = GL_FALSE;
-GLboolean __GLEW_EXT_Cg_shader = GL_FALSE;
-GLboolean __GLEW_EXT_abgr = GL_FALSE;
-GLboolean __GLEW_EXT_bgra = GL_FALSE;
-GLboolean __GLEW_EXT_bindable_uniform = GL_FALSE;
-GLboolean __GLEW_EXT_blend_color = GL_FALSE;
-GLboolean __GLEW_EXT_blend_equation_separate = GL_FALSE;
-GLboolean __GLEW_EXT_blend_func_separate = GL_FALSE;
-GLboolean __GLEW_EXT_blend_logic_op = GL_FALSE;
-GLboolean __GLEW_EXT_blend_minmax = GL_FALSE;
-GLboolean __GLEW_EXT_blend_subtract = GL_FALSE;
-GLboolean __GLEW_EXT_clip_volume_hint = GL_FALSE;
-GLboolean __GLEW_EXT_cmyka = GL_FALSE;
-GLboolean __GLEW_EXT_color_subtable = GL_FALSE;
-GLboolean __GLEW_EXT_compiled_vertex_array = GL_FALSE;
-GLboolean __GLEW_EXT_convolution = GL_FALSE;
-GLboolean __GLEW_EXT_coordinate_frame = GL_FALSE;
-GLboolean __GLEW_EXT_copy_texture = GL_FALSE;
-GLboolean __GLEW_EXT_cull_vertex = GL_FALSE;
-GLboolean __GLEW_EXT_depth_bounds_test = GL_FALSE;
-GLboolean __GLEW_EXT_direct_state_access = GL_FALSE;
-GLboolean __GLEW_EXT_draw_buffers2 = GL_FALSE;
-GLboolean __GLEW_EXT_draw_instanced = GL_FALSE;
-GLboolean __GLEW_EXT_draw_range_elements = GL_FALSE;
-GLboolean __GLEW_EXT_fog_coord = GL_FALSE;
-GLboolean __GLEW_EXT_fragment_lighting = GL_FALSE;
-GLboolean __GLEW_EXT_framebuffer_blit = GL_FALSE;
-GLboolean __GLEW_EXT_framebuffer_multisample = GL_FALSE;
-GLboolean __GLEW_EXT_framebuffer_object = GL_FALSE;
-GLboolean __GLEW_EXT_framebuffer_sRGB = GL_FALSE;
-GLboolean __GLEW_EXT_geometry_shader4 = GL_FALSE;
-GLboolean __GLEW_EXT_gpu_program_parameters = GL_FALSE;
-GLboolean __GLEW_EXT_gpu_shader4 = GL_FALSE;
-GLboolean __GLEW_EXT_histogram = GL_FALSE;
-GLboolean __GLEW_EXT_index_array_formats = GL_FALSE;
-GLboolean __GLEW_EXT_index_func = GL_FALSE;
-GLboolean __GLEW_EXT_index_material = GL_FALSE;
-GLboolean __GLEW_EXT_index_texture = GL_FALSE;
-GLboolean __GLEW_EXT_light_texture = GL_FALSE;
-GLboolean __GLEW_EXT_misc_attribute = GL_FALSE;
-GLboolean __GLEW_EXT_multi_draw_arrays = GL_FALSE;
-GLboolean __GLEW_EXT_multisample = GL_FALSE;
-GLboolean __GLEW_EXT_packed_depth_stencil = GL_FALSE;
-GLboolean __GLEW_EXT_packed_float = GL_FALSE;
-GLboolean __GLEW_EXT_packed_pixels = GL_FALSE;
-GLboolean __GLEW_EXT_paletted_texture = GL_FALSE;
-GLboolean __GLEW_EXT_pixel_buffer_object = GL_FALSE;
-GLboolean __GLEW_EXT_pixel_transform = GL_FALSE;
-GLboolean __GLEW_EXT_pixel_transform_color_table = GL_FALSE;
-GLboolean __GLEW_EXT_point_parameters = GL_FALSE;
-GLboolean __GLEW_EXT_polygon_offset = GL_FALSE;
-GLboolean __GLEW_EXT_provoking_vertex = GL_FALSE;
-GLboolean __GLEW_EXT_rescale_normal = GL_FALSE;
-GLboolean __GLEW_EXT_scene_marker = GL_FALSE;
-GLboolean __GLEW_EXT_secondary_color = GL_FALSE;
-GLboolean __GLEW_EXT_separate_shader_objects = GL_FALSE;
-GLboolean __GLEW_EXT_separate_specular_color = GL_FALSE;
-GLboolean __GLEW_EXT_shader_image_load_store = GL_FALSE;
-GLboolean __GLEW_EXT_shadow_funcs = GL_FALSE;
-GLboolean __GLEW_EXT_shared_texture_palette = GL_FALSE;
-GLboolean __GLEW_EXT_stencil_clear_tag = GL_FALSE;
-GLboolean __GLEW_EXT_stencil_two_side = GL_FALSE;
-GLboolean __GLEW_EXT_stencil_wrap = GL_FALSE;
-GLboolean __GLEW_EXT_subtexture = GL_FALSE;
-GLboolean __GLEW_EXT_texture = GL_FALSE;
-GLboolean __GLEW_EXT_texture3D = GL_FALSE;
-GLboolean __GLEW_EXT_texture_array = GL_FALSE;
-GLboolean __GLEW_EXT_texture_buffer_object = GL_FALSE;
-GLboolean __GLEW_EXT_texture_compression_dxt1 = GL_FALSE;
-GLboolean __GLEW_EXT_texture_compression_latc = GL_FALSE;
-GLboolean __GLEW_EXT_texture_compression_rgtc = GL_FALSE;
-GLboolean __GLEW_EXT_texture_compression_s3tc = GL_FALSE;
-GLboolean __GLEW_EXT_texture_cube_map = GL_FALSE;
-GLboolean __GLEW_EXT_texture_edge_clamp = GL_FALSE;
-GLboolean __GLEW_EXT_texture_env = GL_FALSE;
-GLboolean __GLEW_EXT_texture_env_add = GL_FALSE;
-GLboolean __GLEW_EXT_texture_env_combine = GL_FALSE;
-GLboolean __GLEW_EXT_texture_env_dot3 = GL_FALSE;
-GLboolean __GLEW_EXT_texture_filter_anisotropic = GL_FALSE;
-GLboolean __GLEW_EXT_texture_integer = GL_FALSE;
-GLboolean __GLEW_EXT_texture_lod_bias = GL_FALSE;
-GLboolean __GLEW_EXT_texture_mirror_clamp = GL_FALSE;
-GLboolean __GLEW_EXT_texture_object = GL_FALSE;
-GLboolean __GLEW_EXT_texture_perturb_normal = GL_FALSE;
-GLboolean __GLEW_EXT_texture_rectangle = GL_FALSE;
-GLboolean __GLEW_EXT_texture_sRGB = GL_FALSE;
-GLboolean __GLEW_EXT_texture_shared_exponent = GL_FALSE;
-GLboolean __GLEW_EXT_texture_snorm = GL_FALSE;
-GLboolean __GLEW_EXT_texture_swizzle = GL_FALSE;
-GLboolean __GLEW_EXT_timer_query = GL_FALSE;
-GLboolean __GLEW_EXT_transform_feedback = GL_FALSE;
-GLboolean __GLEW_EXT_vertex_array = GL_FALSE;
-GLboolean __GLEW_EXT_vertex_array_bgra = GL_FALSE;
-GLboolean __GLEW_EXT_vertex_attrib_64bit = GL_FALSE;
-GLboolean __GLEW_EXT_vertex_shader = GL_FALSE;
-GLboolean __GLEW_EXT_vertex_weighting = GL_FALSE;
-GLboolean __GLEW_GREMEDY_frame_terminator = GL_FALSE;
-GLboolean __GLEW_GREMEDY_string_marker = GL_FALSE;
-GLboolean __GLEW_HP_convolution_border_modes = GL_FALSE;
-GLboolean __GLEW_HP_image_transform = GL_FALSE;
-GLboolean __GLEW_HP_occlusion_test = GL_FALSE;
-GLboolean __GLEW_HP_texture_lighting = GL_FALSE;
-GLboolean __GLEW_IBM_cull_vertex = GL_FALSE;
-GLboolean __GLEW_IBM_multimode_draw_arrays = GL_FALSE;
-GLboolean __GLEW_IBM_rasterpos_clip = GL_FALSE;
-GLboolean __GLEW_IBM_static_data = GL_FALSE;
-GLboolean __GLEW_IBM_texture_mirrored_repeat = GL_FALSE;
-GLboolean __GLEW_IBM_vertex_array_lists = GL_FALSE;
-GLboolean __GLEW_INGR_color_clamp = GL_FALSE;
-GLboolean __GLEW_INGR_interlace_read = GL_FALSE;
-GLboolean __GLEW_INTEL_parallel_arrays = GL_FALSE;
-GLboolean __GLEW_INTEL_texture_scissor = GL_FALSE;
-GLboolean __GLEW_KTX_buffer_region = GL_FALSE;
-GLboolean __GLEW_MESAX_texture_stack = GL_FALSE;
-GLboolean __GLEW_MESA_pack_invert = GL_FALSE;
-GLboolean __GLEW_MESA_resize_buffers = GL_FALSE;
-GLboolean __GLEW_MESA_window_pos = GL_FALSE;
-GLboolean __GLEW_MESA_ycbcr_texture = GL_FALSE;
-GLboolean __GLEW_NV_blend_square = GL_FALSE;
-GLboolean __GLEW_NV_conditional_render = GL_FALSE;
-GLboolean __GLEW_NV_copy_depth_to_color = GL_FALSE;
-GLboolean __GLEW_NV_copy_image = GL_FALSE;
-GLboolean __GLEW_NV_depth_buffer_float = GL_FALSE;
-GLboolean __GLEW_NV_depth_clamp = GL_FALSE;
-GLboolean __GLEW_NV_depth_range_unclamped = GL_FALSE;
-GLboolean __GLEW_NV_evaluators = GL_FALSE;
-GLboolean __GLEW_NV_explicit_multisample = GL_FALSE;
-GLboolean __GLEW_NV_fence = GL_FALSE;
-GLboolean __GLEW_NV_float_buffer = GL_FALSE;
-GLboolean __GLEW_NV_fog_distance = GL_FALSE;
-GLboolean __GLEW_NV_fragment_program = GL_FALSE;
-GLboolean __GLEW_NV_fragment_program2 = GL_FALSE;
-GLboolean __GLEW_NV_fragment_program4 = GL_FALSE;
-GLboolean __GLEW_NV_fragment_program_option = GL_FALSE;
-GLboolean __GLEW_NV_framebuffer_multisample_coverage = GL_FALSE;
-GLboolean __GLEW_NV_geometry_program4 = GL_FALSE;
-GLboolean __GLEW_NV_geometry_shader4 = GL_FALSE;
-GLboolean __GLEW_NV_gpu_program4 = GL_FALSE;
-GLboolean __GLEW_NV_gpu_program5 = GL_FALSE;
-GLboolean __GLEW_NV_gpu_program_fp64 = GL_FALSE;
-GLboolean __GLEW_NV_gpu_shader5 = GL_FALSE;
-GLboolean __GLEW_NV_half_float = GL_FALSE;
-GLboolean __GLEW_NV_light_max_exponent = GL_FALSE;
-GLboolean __GLEW_NV_multisample_filter_hint = GL_FALSE;
-GLboolean __GLEW_NV_occlusion_query = GL_FALSE;
-GLboolean __GLEW_NV_packed_depth_stencil = GL_FALSE;
-GLboolean __GLEW_NV_parameter_buffer_object = GL_FALSE;
-GLboolean __GLEW_NV_parameter_buffer_object2 = GL_FALSE;
-GLboolean __GLEW_NV_pixel_data_range = GL_FALSE;
-GLboolean __GLEW_NV_point_sprite = GL_FALSE;
-GLboolean __GLEW_NV_present_video = GL_FALSE;
-GLboolean __GLEW_NV_primitive_restart = GL_FALSE;
-GLboolean __GLEW_NV_register_combiners = GL_FALSE;
-GLboolean __GLEW_NV_register_combiners2 = GL_FALSE;
-GLboolean __GLEW_NV_shader_buffer_load = GL_FALSE;
-GLboolean __GLEW_NV_tessellation_program5 = GL_FALSE;
-GLboolean __GLEW_NV_texgen_emboss = GL_FALSE;
-GLboolean __GLEW_NV_texgen_reflection = GL_FALSE;
-GLboolean __GLEW_NV_texture_barrier = GL_FALSE;
-GLboolean __GLEW_NV_texture_compression_vtc = GL_FALSE;
-GLboolean __GLEW_NV_texture_env_combine4 = GL_FALSE;
-GLboolean __GLEW_NV_texture_expand_normal = GL_FALSE;
-GLboolean __GLEW_NV_texture_rectangle = GL_FALSE;
-GLboolean __GLEW_NV_texture_shader = GL_FALSE;
-GLboolean __GLEW_NV_texture_shader2 = GL_FALSE;
-GLboolean __GLEW_NV_texture_shader3 = GL_FALSE;
-GLboolean __GLEW_NV_transform_feedback = GL_FALSE;
-GLboolean __GLEW_NV_transform_feedback2 = GL_FALSE;
-GLboolean __GLEW_NV_vertex_array_range = GL_FALSE;
-GLboolean __GLEW_NV_vertex_array_range2 = GL_FALSE;
-GLboolean __GLEW_NV_vertex_attrib_integer_64bit = GL_FALSE;
-GLboolean __GLEW_NV_vertex_buffer_unified_memory = GL_FALSE;
-GLboolean __GLEW_NV_vertex_program = GL_FALSE;
-GLboolean __GLEW_NV_vertex_program1_1 = GL_FALSE;
-GLboolean __GLEW_NV_vertex_program2 = GL_FALSE;
-GLboolean __GLEW_NV_vertex_program2_option = GL_FALSE;
-GLboolean __GLEW_NV_vertex_program3 = GL_FALSE;
-GLboolean __GLEW_NV_vertex_program4 = GL_FALSE;
-GLboolean __GLEW_OES_byte_coordinates = GL_FALSE;
-GLboolean __GLEW_OES_compressed_paletted_texture = GL_FALSE;
-GLboolean __GLEW_OES_read_format = GL_FALSE;
-GLboolean __GLEW_OES_single_precision = GL_FALSE;
-GLboolean __GLEW_OML_interlace = GL_FALSE;
-GLboolean __GLEW_OML_resample = GL_FALSE;
-GLboolean __GLEW_OML_subsample = GL_FALSE;
-GLboolean __GLEW_PGI_misc_hints = GL_FALSE;
-GLboolean __GLEW_PGI_vertex_hints = GL_FALSE;
-GLboolean __GLEW_REND_screen_coordinates = GL_FALSE;
-GLboolean __GLEW_S3_s3tc = GL_FALSE;
-GLboolean __GLEW_SGIS_color_range = GL_FALSE;
-GLboolean __GLEW_SGIS_detail_texture = GL_FALSE;
-GLboolean __GLEW_SGIS_fog_function = GL_FALSE;
-GLboolean __GLEW_SGIS_generate_mipmap = GL_FALSE;
-GLboolean __GLEW_SGIS_multisample = GL_FALSE;
-GLboolean __GLEW_SGIS_pixel_texture = GL_FALSE;
-GLboolean __GLEW_SGIS_point_line_texgen = GL_FALSE;
-GLboolean __GLEW_SGIS_sharpen_texture = GL_FALSE;
-GLboolean __GLEW_SGIS_texture4D = GL_FALSE;
-GLboolean __GLEW_SGIS_texture_border_clamp = GL_FALSE;
-GLboolean __GLEW_SGIS_texture_edge_clamp = GL_FALSE;
-GLboolean __GLEW_SGIS_texture_filter4 = GL_FALSE;
-GLboolean __GLEW_SGIS_texture_lod = GL_FALSE;
-GLboolean __GLEW_SGIS_texture_select = GL_FALSE;
-GLboolean __GLEW_SGIX_async = GL_FALSE;
-GLboolean __GLEW_SGIX_async_histogram = GL_FALSE;
-GLboolean __GLEW_SGIX_async_pixel = GL_FALSE;
-GLboolean __GLEW_SGIX_blend_alpha_minmax = GL_FALSE;
-GLboolean __GLEW_SGIX_clipmap = GL_FALSE;
-GLboolean __GLEW_SGIX_convolution_accuracy = GL_FALSE;
-GLboolean __GLEW_SGIX_depth_texture = GL_FALSE;
-GLboolean __GLEW_SGIX_flush_raster = GL_FALSE;
-GLboolean __GLEW_SGIX_fog_offset = GL_FALSE;
-GLboolean __GLEW_SGIX_fog_texture = GL_FALSE;
-GLboolean __GLEW_SGIX_fragment_specular_lighting = GL_FALSE;
-GLboolean __GLEW_SGIX_framezoom = GL_FALSE;
-GLboolean __GLEW_SGIX_interlace = GL_FALSE;
-GLboolean __GLEW_SGIX_ir_instrument1 = GL_FALSE;
-GLboolean __GLEW_SGIX_list_priority = GL_FALSE;
-GLboolean __GLEW_SGIX_pixel_texture = GL_FALSE;
-GLboolean __GLEW_SGIX_pixel_texture_bits = GL_FALSE;
-GLboolean __GLEW_SGIX_reference_plane = GL_FALSE;
-GLboolean __GLEW_SGIX_resample = GL_FALSE;
-GLboolean __GLEW_SGIX_shadow = GL_FALSE;
-GLboolean __GLEW_SGIX_shadow_ambient = GL_FALSE;
-GLboolean __GLEW_SGIX_sprite = GL_FALSE;
-GLboolean __GLEW_SGIX_tag_sample_buffer = GL_FALSE;
-GLboolean __GLEW_SGIX_texture_add_env = GL_FALSE;
-GLboolean __GLEW_SGIX_texture_coordinate_clamp = GL_FALSE;
-GLboolean __GLEW_SGIX_texture_lod_bias = GL_FALSE;
-GLboolean __GLEW_SGIX_texture_multi_buffer = GL_FALSE;
-GLboolean __GLEW_SGIX_texture_range = GL_FALSE;
-GLboolean __GLEW_SGIX_texture_scale_bias = GL_FALSE;
-GLboolean __GLEW_SGIX_vertex_preclip = GL_FALSE;
-GLboolean __GLEW_SGIX_vertex_preclip_hint = GL_FALSE;
-GLboolean __GLEW_SGIX_ycrcb = GL_FALSE;
-GLboolean __GLEW_SGI_color_matrix = GL_FALSE;
-GLboolean __GLEW_SGI_color_table = GL_FALSE;
-GLboolean __GLEW_SGI_texture_color_table = GL_FALSE;
-GLboolean __GLEW_SUNX_constant_data = GL_FALSE;
-GLboolean __GLEW_SUN_convolution_border_modes = GL_FALSE;
-GLboolean __GLEW_SUN_global_alpha = GL_FALSE;
-GLboolean __GLEW_SUN_mesh_array = GL_FALSE;
-GLboolean __GLEW_SUN_read_video_pixels = GL_FALSE;
-GLboolean __GLEW_SUN_slice_accum = GL_FALSE;
-GLboolean __GLEW_SUN_triangle_list = GL_FALSE;
-GLboolean __GLEW_SUN_vertex = GL_FALSE;
-GLboolean __GLEW_WIN_phong_shading = GL_FALSE;
-GLboolean __GLEW_WIN_specular_fog = GL_FALSE;
-GLboolean __GLEW_WIN_swap_hint = GL_FALSE;
-
-#endif /* !GLEW_MX */
-
-#ifdef GL_VERSION_1_2
-
-static GLboolean _glewInit_GL_VERSION_1_2 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glCopyTexSubImage3D = (PFNGLCOPYTEXSUBIMAGE3DPROC)glewGetProcAddress((const GLubyte*)"glCopyTexSubImage3D")) == NULL) || r;
-  r = ((glDrawRangeElements = (PFNGLDRAWRANGEELEMENTSPROC)glewGetProcAddress((const GLubyte*)"glDrawRangeElements")) == NULL) || r;
-  r = ((glTexImage3D = (PFNGLTEXIMAGE3DPROC)glewGetProcAddress((const GLubyte*)"glTexImage3D")) == NULL) || r;
-  r = ((glTexSubImage3D = (PFNGLTEXSUBIMAGE3DPROC)glewGetProcAddress((const GLubyte*)"glTexSubImage3D")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_VERSION_1_2 */
-
-#ifdef GL_VERSION_1_3
-
-static GLboolean _glewInit_GL_VERSION_1_3 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glActiveTexture = (PFNGLACTIVETEXTUREPROC)glewGetProcAddress((const GLubyte*)"glActiveTexture")) == NULL) || r;
-  r = ((glClientActiveTexture = (PFNGLCLIENTACTIVETEXTUREPROC)glewGetProcAddress((const GLubyte*)"glClientActiveTexture")) == NULL) || r;
-  r = ((glCompressedTexImage1D = (PFNGLCOMPRESSEDTEXIMAGE1DPROC)glewGetProcAddress((const GLubyte*)"glCompressedTexImage1D")) == NULL) || r;
-  r = ((glCompressedTexImage2D = (PFNGLCOMPRESSEDTEXIMAGE2DPROC)glewGetProcAddress((const GLubyte*)"glCompressedTexImage2D")) == NULL) || r;
-  r = ((glCompressedTexImage3D = (PFNGLCOMPRESSEDTEXIMAGE3DPROC)glewGetProcAddress((const GLubyte*)"glCompressedTexImage3D")) == NULL) || r;
-  r = ((glCompressedTexSubImage1D = (PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC)glewGetProcAddress((const GLubyte*)"glCompressedTexSubImage1D")) == NULL) || r;
-  r = ((glCompressedTexSubImage2D = (PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC)glewGetProcAddress((const GLubyte*)"glCompressedTexSubImage2D")) == NULL) || r;
-  r = ((glCompressedTexSubImage3D = (PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC)glewGetProcAddress((const GLubyte*)"glCompressedTexSubImage3D")) == NULL) || r;
-  r = ((glGetCompressedTexImage = (PFNGLGETCOMPRESSEDTEXIMAGEPROC)glewGetProcAddress((const GLubyte*)"glGetCompressedTexImage")) == NULL) || r;
-  r = ((glLoadTransposeMatrixd = (PFNGLLOADTRANSPOSEMATRIXDPROC)glewGetProcAddress((const GLubyte*)"glLoadTransposeMatrixd")) == NULL) || r;
-  r = ((glLoadTransposeMatrixf = (PFNGLLOADTRANSPOSEMATRIXFPROC)glewGetProcAddress((const GLubyte*)"glLoadTransposeMatrixf")) == NULL) || r;
-  r = ((glMultTransposeMatrixd = (PFNGLMULTTRANSPOSEMATRIXDPROC)glewGetProcAddress((const GLubyte*)"glMultTransposeMatrixd")) == NULL) || r;
-  r = ((glMultTransposeMatrixf = (PFNGLMULTTRANSPOSEMATRIXFPROC)glewGetProcAddress((const GLubyte*)"glMultTransposeMatrixf")) == NULL) || r;
-  r = ((glMultiTexCoord1d = (PFNGLMULTITEXCOORD1DPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1d")) == NULL) || r;
-  r = ((glMultiTexCoord1dv = (PFNGLMULTITEXCOORD1DVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1dv")) == NULL) || r;
-  r = ((glMultiTexCoord1f = (PFNGLMULTITEXCOORD1FPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1f")) == NULL) || r;
-  r = ((glMultiTexCoord1fv = (PFNGLMULTITEXCOORD1FVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1fv")) == NULL) || r;
-  r = ((glMultiTexCoord1i = (PFNGLMULTITEXCOORD1IPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1i")) == NULL) || r;
-  r = ((glMultiTexCoord1iv = (PFNGLMULTITEXCOORD1IVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1iv")) == NULL) || r;
-  r = ((glMultiTexCoord1s = (PFNGLMULTITEXCOORD1SPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1s")) == NULL) || r;
-  r = ((glMultiTexCoord1sv = (PFNGLMULTITEXCOORD1SVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1sv")) == NULL) || r;
-  r = ((glMultiTexCoord2d = (PFNGLMULTITEXCOORD2DPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2d")) == NULL) || r;
-  r = ((glMultiTexCoord2dv = (PFNGLMULTITEXCOORD2DVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2dv")) == NULL) || r;
-  r = ((glMultiTexCoord2f = (PFNGLMULTITEXCOORD2FPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2f")) == NULL) || r;
-  r = ((glMultiTexCoord2fv = (PFNGLMULTITEXCOORD2FVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2fv")) == NULL) || r;
-  r = ((glMultiTexCoord2i = (PFNGLMULTITEXCOORD2IPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2i")) == NULL) || r;
-  r = ((glMultiTexCoord2iv = (PFNGLMULTITEXCOORD2IVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2iv")) == NULL) || r;
-  r = ((glMultiTexCoord2s = (PFNGLMULTITEXCOORD2SPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2s")) == NULL) || r;
-  r = ((glMultiTexCoord2sv = (PFNGLMULTITEXCOORD2SVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2sv")) == NULL) || r;
-  r = ((glMultiTexCoord3d = (PFNGLMULTITEXCOORD3DPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3d")) == NULL) || r;
-  r = ((glMultiTexCoord3dv = (PFNGLMULTITEXCOORD3DVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3dv")) == NULL) || r;
-  r = ((glMultiTexCoord3f = (PFNGLMULTITEXCOORD3FPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3f")) == NULL) || r;
-  r = ((glMultiTexCoord3fv = (PFNGLMULTITEXCOORD3FVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3fv")) == NULL) || r;
-  r = ((glMultiTexCoord3i = (PFNGLMULTITEXCOORD3IPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3i")) == NULL) || r;
-  r = ((glMultiTexCoord3iv = (PFNGLMULTITEXCOORD3IVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3iv")) == NULL) || r;
-  r = ((glMultiTexCoord3s = (PFNGLMULTITEXCOORD3SPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3s")) == NULL) || r;
-  r = ((glMultiTexCoord3sv = (PFNGLMULTITEXCOORD3SVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3sv")) == NULL) || r;
-  r = ((glMultiTexCoord4d = (PFNGLMULTITEXCOORD4DPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4d")) == NULL) || r;
-  r = ((glMultiTexCoord4dv = (PFNGLMULTITEXCOORD4DVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4dv")) == NULL) || r;
-  r = ((glMultiTexCoord4f = (PFNGLMULTITEXCOORD4FPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4f")) == NULL) || r;
-  r = ((glMultiTexCoord4fv = (PFNGLMULTITEXCOORD4FVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4fv")) == NULL) || r;
-  r = ((glMultiTexCoord4i = (PFNGLMULTITEXCOORD4IPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4i")) == NULL) || r;
-  r = ((glMultiTexCoord4iv = (PFNGLMULTITEXCOORD4IVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4iv")) == NULL) || r;
-  r = ((glMultiTexCoord4s = (PFNGLMULTITEXCOORD4SPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4s")) == NULL) || r;
-  r = ((glMultiTexCoord4sv = (PFNGLMULTITEXCOORD4SVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4sv")) == NULL) || r;
-  r = ((glSampleCoverage = (PFNGLSAMPLECOVERAGEPROC)glewGetProcAddress((const GLubyte*)"glSampleCoverage")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_VERSION_1_3 */
-
-#ifdef GL_VERSION_1_4
-
-static GLboolean _glewInit_GL_VERSION_1_4 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBlendColor = (PFNGLBLENDCOLORPROC)glewGetProcAddress((const GLubyte*)"glBlendColor")) == NULL) || r;
-  r = ((glBlendEquation = (PFNGLBLENDEQUATIONPROC)glewGetProcAddress((const GLubyte*)"glBlendEquation")) == NULL) || r;
-  r = ((glBlendFuncSeparate = (PFNGLBLENDFUNCSEPARATEPROC)glewGetProcAddress((const GLubyte*)"glBlendFuncSeparate")) == NULL) || r;
-  r = ((glFogCoordPointer = (PFNGLFOGCOORDPOINTERPROC)glewGetProcAddress((const GLubyte*)"glFogCoordPointer")) == NULL) || r;
-  r = ((glFogCoordd = (PFNGLFOGCOORDDPROC)glewGetProcAddress((const GLubyte*)"glFogCoordd")) == NULL) || r;
-  r = ((glFogCoorddv = (PFNGLFOGCOORDDVPROC)glewGetProcAddress((const GLubyte*)"glFogCoorddv")) == NULL) || r;
-  r = ((glFogCoordf = (PFNGLFOGCOORDFPROC)glewGetProcAddress((const GLubyte*)"glFogCoordf")) == NULL) || r;
-  r = ((glFogCoordfv = (PFNGLFOGCOORDFVPROC)glewGetProcAddress((const GLubyte*)"glFogCoordfv")) == NULL) || r;
-  r = ((glMultiDrawArrays = (PFNGLMULTIDRAWARRAYSPROC)glewGetProcAddress((const GLubyte*)"glMultiDrawArrays")) == NULL) || r;
-  r = ((glMultiDrawElements = (PFNGLMULTIDRAWELEMENTSPROC)glewGetProcAddress((const GLubyte*)"glMultiDrawElements")) == NULL) || r;
-  r = ((glPointParameterf = (PFNGLPOINTPARAMETERFPROC)glewGetProcAddress((const GLubyte*)"glPointParameterf")) == NULL) || r;
-  r = ((glPointParameterfv = (PFNGLPOINTPARAMETERFVPROC)glewGetProcAddress((const GLubyte*)"glPointParameterfv")) == NULL) || r;
-  r = ((glPointParameteri = (PFNGLPOINTPARAMETERIPROC)glewGetProcAddress((const GLubyte*)"glPointParameteri")) == NULL) || r;
-  r = ((glPointParameteriv = (PFNGLPOINTPARAMETERIVPROC)glewGetProcAddress((const GLubyte*)"glPointParameteriv")) == NULL) || r;
-  r = ((glSecondaryColor3b = (PFNGLSECONDARYCOLOR3BPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3b")) == NULL) || r;
-  r = ((glSecondaryColor3bv = (PFNGLSECONDARYCOLOR3BVPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3bv")) == NULL) || r;
-  r = ((glSecondaryColor3d = (PFNGLSECONDARYCOLOR3DPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3d")) == NULL) || r;
-  r = ((glSecondaryColor3dv = (PFNGLSECONDARYCOLOR3DVPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3dv")) == NULL) || r;
-  r = ((glSecondaryColor3f = (PFNGLSECONDARYCOLOR3FPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3f")) == NULL) || r;
-  r = ((glSecondaryColor3fv = (PFNGLSECONDARYCOLOR3FVPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3fv")) == NULL) || r;
-  r = ((glSecondaryColor3i = (PFNGLSECONDARYCOLOR3IPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3i")) == NULL) || r;
-  r = ((glSecondaryColor3iv = (PFNGLSECONDARYCOLOR3IVPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3iv")) == NULL) || r;
-  r = ((glSecondaryColor3s = (PFNGLSECONDARYCOLOR3SPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3s")) == NULL) || r;
-  r = ((glSecondaryColor3sv = (PFNGLSECONDARYCOLOR3SVPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3sv")) == NULL) || r;
-  r = ((glSecondaryColor3ub = (PFNGLSECONDARYCOLOR3UBPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3ub")) == NULL) || r;
-  r = ((glSecondaryColor3ubv = (PFNGLSECONDARYCOLOR3UBVPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3ubv")) == NULL) || r;
-  r = ((glSecondaryColor3ui = (PFNGLSECONDARYCOLOR3UIPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3ui")) == NULL) || r;
-  r = ((glSecondaryColor3uiv = (PFNGLSECONDARYCOLOR3UIVPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3uiv")) == NULL) || r;
-  r = ((glSecondaryColor3us = (PFNGLSECONDARYCOLOR3USPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3us")) == NULL) || r;
-  r = ((glSecondaryColor3usv = (PFNGLSECONDARYCOLOR3USVPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3usv")) == NULL) || r;
-  r = ((glSecondaryColorPointer = (PFNGLSECONDARYCOLORPOINTERPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColorPointer")) == NULL) || r;
-  r = ((glWindowPos2d = (PFNGLWINDOWPOS2DPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2d")) == NULL) || r;
-  r = ((glWindowPos2dv = (PFNGLWINDOWPOS2DVPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2dv")) == NULL) || r;
-  r = ((glWindowPos2f = (PFNGLWINDOWPOS2FPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2f")) == NULL) || r;
-  r = ((glWindowPos2fv = (PFNGLWINDOWPOS2FVPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2fv")) == NULL) || r;
-  r = ((glWindowPos2i = (PFNGLWINDOWPOS2IPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2i")) == NULL) || r;
-  r = ((glWindowPos2iv = (PFNGLWINDOWPOS2IVPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2iv")) == NULL) || r;
-  r = ((glWindowPos2s = (PFNGLWINDOWPOS2SPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2s")) == NULL) || r;
-  r = ((glWindowPos2sv = (PFNGLWINDOWPOS2SVPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2sv")) == NULL) || r;
-  r = ((glWindowPos3d = (PFNGLWINDOWPOS3DPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3d")) == NULL) || r;
-  r = ((glWindowPos3dv = (PFNGLWINDOWPOS3DVPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3dv")) == NULL) || r;
-  r = ((glWindowPos3f = (PFNGLWINDOWPOS3FPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3f")) == NULL) || r;
-  r = ((glWindowPos3fv = (PFNGLWINDOWPOS3FVPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3fv")) == NULL) || r;
-  r = ((glWindowPos3i = (PFNGLWINDOWPOS3IPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3i")) == NULL) || r;
-  r = ((glWindowPos3iv = (PFNGLWINDOWPOS3IVPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3iv")) == NULL) || r;
-  r = ((glWindowPos3s = (PFNGLWINDOWPOS3SPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3s")) == NULL) || r;
-  r = ((glWindowPos3sv = (PFNGLWINDOWPOS3SVPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3sv")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_VERSION_1_4 */
-
-#ifdef GL_VERSION_1_5
-
-static GLboolean _glewInit_GL_VERSION_1_5 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBeginQuery = (PFNGLBEGINQUERYPROC)glewGetProcAddress((const GLubyte*)"glBeginQuery")) == NULL) || r;
-  r = ((glBindBuffer = (PFNGLBINDBUFFERPROC)glewGetProcAddress((const GLubyte*)"glBindBuffer")) == NULL) || r;
-  r = ((glBufferData = (PFNGLBUFFERDATAPROC)glewGetProcAddress((const GLubyte*)"glBufferData")) == NULL) || r;
-  r = ((glBufferSubData = (PFNGLBUFFERSUBDATAPROC)glewGetProcAddress((const GLubyte*)"glBufferSubData")) == NULL) || r;
-  r = ((glDeleteBuffers = (PFNGLDELETEBUFFERSPROC)glewGetProcAddress((const GLubyte*)"glDeleteBuffers")) == NULL) || r;
-  r = ((glDeleteQueries = (PFNGLDELETEQUERIESPROC)glewGetProcAddress((const GLubyte*)"glDeleteQueries")) == NULL) || r;
-  r = ((glEndQuery = (PFNGLENDQUERYPROC)glewGetProcAddress((const GLubyte*)"glEndQuery")) == NULL) || r;
-  r = ((glGenBuffers = (PFNGLGENBUFFERSPROC)glewGetProcAddress((const GLubyte*)"glGenBuffers")) == NULL) || r;
-  r = ((glGenQueries = (PFNGLGENQUERIESPROC)glewGetProcAddress((const GLubyte*)"glGenQueries")) == NULL) || r;
-  r = ((glGetBufferParameteriv = (PFNGLGETBUFFERPARAMETERIVPROC)glewGetProcAddress((const GLubyte*)"glGetBufferParameteriv")) == NULL) || r;
-  r = ((glGetBufferPointerv = (PFNGLGETBUFFERPOINTERVPROC)glewGetProcAddress((const GLubyte*)"glGetBufferPointerv")) == NULL) || r;
-  r = ((glGetBufferSubData = (PFNGLGETBUFFERSUBDATAPROC)glewGetProcAddress((const GLubyte*)"glGetBufferSubData")) == NULL) || r;
-  r = ((glGetQueryObjectiv = (PFNGLGETQUERYOBJECTIVPROC)glewGetProcAddress((const GLubyte*)"glGetQueryObjectiv")) == NULL) || r;
-  r = ((glGetQueryObjectuiv = (PFNGLGETQUERYOBJECTUIVPROC)glewGetProcAddress((const GLubyte*)"glGetQueryObjectuiv")) == NULL) || r;
-  r = ((glGetQueryiv = (PFNGLGETQUERYIVPROC)glewGetProcAddress((const GLubyte*)"glGetQueryiv")) == NULL) || r;
-  r = ((glIsBuffer = (PFNGLISBUFFERPROC)glewGetProcAddress((const GLubyte*)"glIsBuffer")) == NULL) || r;
-  r = ((glIsQuery = (PFNGLISQUERYPROC)glewGetProcAddress((const GLubyte*)"glIsQuery")) == NULL) || r;
-  r = ((glMapBuffer = (PFNGLMAPBUFFERPROC)glewGetProcAddress((const GLubyte*)"glMapBuffer")) == NULL) || r;
-  r = ((glUnmapBuffer = (PFNGLUNMAPBUFFERPROC)glewGetProcAddress((const GLubyte*)"glUnmapBuffer")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_VERSION_1_5 */
-
-#ifdef GL_VERSION_2_0
-
-static GLboolean _glewInit_GL_VERSION_2_0 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glAttachShader = (PFNGLATTACHSHADERPROC)glewGetProcAddress((const GLubyte*)"glAttachShader")) == NULL) || r;
-  r = ((glBindAttribLocation = (PFNGLBINDATTRIBLOCATIONPROC)glewGetProcAddress((const GLubyte*)"glBindAttribLocation")) == NULL) || r;
-  r = ((glBlendEquationSeparate = (PFNGLBLENDEQUATIONSEPARATEPROC)glewGetProcAddress((const GLubyte*)"glBlendEquationSeparate")) == NULL) || r;
-  r = ((glCompileShader = (PFNGLCOMPILESHADERPROC)glewGetProcAddress((const GLubyte*)"glCompileShader")) == NULL) || r;
-  r = ((glCreateProgram = (PFNGLCREATEPROGRAMPROC)glewGetProcAddress((const GLubyte*)"glCreateProgram")) == NULL) || r;
-  r = ((glCreateShader = (PFNGLCREATESHADERPROC)glewGetProcAddress((const GLubyte*)"glCreateShader")) == NULL) || r;
-  r = ((glDeleteProgram = (PFNGLDELETEPROGRAMPROC)glewGetProcAddress((const GLubyte*)"glDeleteProgram")) == NULL) || r;
-  r = ((glDeleteShader = (PFNGLDELETESHADERPROC)glewGetProcAddress((const GLubyte*)"glDeleteShader")) == NULL) || r;
-  r = ((glDetachShader = (PFNGLDETACHSHADERPROC)glewGetProcAddress((const GLubyte*)"glDetachShader")) == NULL) || r;
-  r = ((glDisableVertexAttribArray = (PFNGLDISABLEVERTEXATTRIBARRAYPROC)glewGetProcAddress((const GLubyte*)"glDisableVertexAttribArray")) == NULL) || r;
-  r = ((glDrawBuffers = (PFNGLDRAWBUFFERSPROC)glewGetProcAddress((const GLubyte*)"glDrawBuffers")) == NULL) || r;
-  r = ((glEnableVertexAttribArray = (PFNGLENABLEVERTEXATTRIBARRAYPROC)glewGetProcAddress((const GLubyte*)"glEnableVertexAttribArray")) == NULL) || r;
-  r = ((glGetActiveAttrib = (PFNGLGETACTIVEATTRIBPROC)glewGetProcAddress((const GLubyte*)"glGetActiveAttrib")) == NULL) || r;
-  r = ((glGetActiveUniform = (PFNGLGETACTIVEUNIFORMPROC)glewGetProcAddress((const GLubyte*)"glGetActiveUniform")) == NULL) || r;
-  r = ((glGetAttachedShaders = (PFNGLGETATTACHEDSHADERSPROC)glewGetProcAddress((const GLubyte*)"glGetAttachedShaders")) == NULL) || r;
-  r = ((glGetAttribLocation = (PFNGLGETATTRIBLOCATIONPROC)glewGetProcAddress((const GLubyte*)"glGetAttribLocation")) == NULL) || r;
-  r = ((glGetProgramInfoLog = (PFNGLGETPROGRAMINFOLOGPROC)glewGetProcAddress((const GLubyte*)"glGetProgramInfoLog")) == NULL) || r;
-  r = ((glGetProgramiv = (PFNGLGETPROGRAMIVPROC)glewGetProcAddress((const GLubyte*)"glGetProgramiv")) == NULL) || r;
-  r = ((glGetShaderInfoLog = (PFNGLGETSHADERINFOLOGPROC)glewGetProcAddress((const GLubyte*)"glGetShaderInfoLog")) == NULL) || r;
-  r = ((glGetShaderSource = (PFNGLGETSHADERSOURCEPROC)glewGetProcAddress((const GLubyte*)"glGetShaderSource")) == NULL) || r;
-  r = ((glGetShaderiv = (PFNGLGETSHADERIVPROC)glewGetProcAddress((const GLubyte*)"glGetShaderiv")) == NULL) || r;
-  r = ((glGetUniformLocation = (PFNGLGETUNIFORMLOCATIONPROC)glewGetProcAddress((const GLubyte*)"glGetUniformLocation")) == NULL) || r;
-  r = ((glGetUniformfv = (PFNGLGETUNIFORMFVPROC)glewGetProcAddress((const GLubyte*)"glGetUniformfv")) == NULL) || r;
-  r = ((glGetUniformiv = (PFNGLGETUNIFORMIVPROC)glewGetProcAddress((const GLubyte*)"glGetUniformiv")) == NULL) || r;
-  r = ((glGetVertexAttribPointerv = (PFNGLGETVERTEXATTRIBPOINTERVPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribPointerv")) == NULL) || r;
-  r = ((glGetVertexAttribdv = (PFNGLGETVERTEXATTRIBDVPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribdv")) == NULL) || r;
-  r = ((glGetVertexAttribfv = (PFNGLGETVERTEXATTRIBFVPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribfv")) == NULL) || r;
-  r = ((glGetVertexAttribiv = (PFNGLGETVERTEXATTRIBIVPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribiv")) == NULL) || r;
-  r = ((glIsProgram = (PFNGLISPROGRAMPROC)glewGetProcAddress((const GLubyte*)"glIsProgram")) == NULL) || r;
-  r = ((glIsShader = (PFNGLISSHADERPROC)glewGetProcAddress((const GLubyte*)"glIsShader")) == NULL) || r;
-  r = ((glLinkProgram = (PFNGLLINKPROGRAMPROC)glewGetProcAddress((const GLubyte*)"glLinkProgram")) == NULL) || r;
-  r = ((glShaderSource = (PFNGLSHADERSOURCEPROC)glewGetProcAddress((const GLubyte*)"glShaderSource")) == NULL) || r;
-  r = ((glStencilFuncSeparate = (PFNGLSTENCILFUNCSEPARATEPROC)glewGetProcAddress((const GLubyte*)"glStencilFuncSeparate")) == NULL) || r;
-  r = ((glStencilMaskSeparate = (PFNGLSTENCILMASKSEPARATEPROC)glewGetProcAddress((const GLubyte*)"glStencilMaskSeparate")) == NULL) || r;
-  r = ((glStencilOpSeparate = (PFNGLSTENCILOPSEPARATEPROC)glewGetProcAddress((const GLubyte*)"glStencilOpSeparate")) == NULL) || r;
-  r = ((glUniform1f = (PFNGLUNIFORM1FPROC)glewGetProcAddress((const GLubyte*)"glUniform1f")) == NULL) || r;
-  r = ((glUniform1fv = (PFNGLUNIFORM1FVPROC)glewGetProcAddress((const GLubyte*)"glUniform1fv")) == NULL) || r;
-  r = ((glUniform1i = (PFNGLUNIFORM1IPROC)glewGetProcAddress((const GLubyte*)"glUniform1i")) == NULL) || r;
-  r = ((glUniform1iv = (PFNGLUNIFORM1IVPROC)glewGetProcAddress((const GLubyte*)"glUniform1iv")) == NULL) || r;
-  r = ((glUniform2f = (PFNGLUNIFORM2FPROC)glewGetProcAddress((const GLubyte*)"glUniform2f")) == NULL) || r;
-  r = ((glUniform2fv = (PFNGLUNIFORM2FVPROC)glewGetProcAddress((const GLubyte*)"glUniform2fv")) == NULL) || r;
-  r = ((glUniform2i = (PFNGLUNIFORM2IPROC)glewGetProcAddress((const GLubyte*)"glUniform2i")) == NULL) || r;
-  r = ((glUniform2iv = (PFNGLUNIFORM2IVPROC)glewGetProcAddress((const GLubyte*)"glUniform2iv")) == NULL) || r;
-  r = ((glUniform3f = (PFNGLUNIFORM3FPROC)glewGetProcAddress((const GLubyte*)"glUniform3f")) == NULL) || r;
-  r = ((glUniform3fv = (PFNGLUNIFORM3FVPROC)glewGetProcAddress((const GLubyte*)"glUniform3fv")) == NULL) || r;
-  r = ((glUniform3i = (PFNGLUNIFORM3IPROC)glewGetProcAddress((const GLubyte*)"glUniform3i")) == NULL) || r;
-  r = ((glUniform3iv = (PFNGLUNIFORM3IVPROC)glewGetProcAddress((const GLubyte*)"glUniform3iv")) == NULL) || r;
-  r = ((glUniform4f = (PFNGLUNIFORM4FPROC)glewGetProcAddress((const GLubyte*)"glUniform4f")) == NULL) || r;
-  r = ((glUniform4fv = (PFNGLUNIFORM4FVPROC)glewGetProcAddress((const GLubyte*)"glUniform4fv")) == NULL) || r;
-  r = ((glUniform4i = (PFNGLUNIFORM4IPROC)glewGetProcAddress((const GLubyte*)"glUniform4i")) == NULL) || r;
-  r = ((glUniform4iv = (PFNGLUNIFORM4IVPROC)glewGetProcAddress((const GLubyte*)"glUniform4iv")) == NULL) || r;
-  r = ((glUniformMatrix2fv = (PFNGLUNIFORMMATRIX2FVPROC)glewGetProcAddress((const GLubyte*)"glUniformMatrix2fv")) == NULL) || r;
-  r = ((glUniformMatrix3fv = (PFNGLUNIFORMMATRIX3FVPROC)glewGetProcAddress((const GLubyte*)"glUniformMatrix3fv")) == NULL) || r;
-  r = ((glUniformMatrix4fv = (PFNGLUNIFORMMATRIX4FVPROC)glewGetProcAddress((const GLubyte*)"glUniformMatrix4fv")) == NULL) || r;
-  r = ((glUseProgram = (PFNGLUSEPROGRAMPROC)glewGetProcAddress((const GLubyte*)"glUseProgram")) == NULL) || r;
-  r = ((glValidateProgram = (PFNGLVALIDATEPROGRAMPROC)glewGetProcAddress((const GLubyte*)"glValidateProgram")) == NULL) || r;
-  r = ((glVertexAttrib1d = (PFNGLVERTEXATTRIB1DPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1d")) == NULL) || r;
-  r = ((glVertexAttrib1dv = (PFNGLVERTEXATTRIB1DVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1dv")) == NULL) || r;
-  r = ((glVertexAttrib1f = (PFNGLVERTEXATTRIB1FPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1f")) == NULL) || r;
-  r = ((glVertexAttrib1fv = (PFNGLVERTEXATTRIB1FVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1fv")) == NULL) || r;
-  r = ((glVertexAttrib1s = (PFNGLVERTEXATTRIB1SPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1s")) == NULL) || r;
-  r = ((glVertexAttrib1sv = (PFNGLVERTEXATTRIB1SVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1sv")) == NULL) || r;
-  r = ((glVertexAttrib2d = (PFNGLVERTEXATTRIB2DPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2d")) == NULL) || r;
-  r = ((glVertexAttrib2dv = (PFNGLVERTEXATTRIB2DVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2dv")) == NULL) || r;
-  r = ((glVertexAttrib2f = (PFNGLVERTEXATTRIB2FPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2f")) == NULL) || r;
-  r = ((glVertexAttrib2fv = (PFNGLVERTEXATTRIB2FVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2fv")) == NULL) || r;
-  r = ((glVertexAttrib2s = (PFNGLVERTEXATTRIB2SPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2s")) == NULL) || r;
-  r = ((glVertexAttrib2sv = (PFNGLVERTEXATTRIB2SVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2sv")) == NULL) || r;
-  r = ((glVertexAttrib3d = (PFNGLVERTEXATTRIB3DPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3d")) == NULL) || r;
-  r = ((glVertexAttrib3dv = (PFNGLVERTEXATTRIB3DVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3dv")) == NULL) || r;
-  r = ((glVertexAttrib3f = (PFNGLVERTEXATTRIB3FPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3f")) == NULL) || r;
-  r = ((glVertexAttrib3fv = (PFNGLVERTEXATTRIB3FVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3fv")) == NULL) || r;
-  r = ((glVertexAttrib3s = (PFNGLVERTEXATTRIB3SPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3s")) == NULL) || r;
-  r = ((glVertexAttrib3sv = (PFNGLVERTEXATTRIB3SVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3sv")) == NULL) || r;
-  r = ((glVertexAttrib4Nbv = (PFNGLVERTEXATTRIB4NBVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4Nbv")) == NULL) || r;
-  r = ((glVertexAttrib4Niv = (PFNGLVERTEXATTRIB4NIVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4Niv")) == NULL) || r;
-  r = ((glVertexAttrib4Nsv = (PFNGLVERTEXATTRIB4NSVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4Nsv")) == NULL) || r;
-  r = ((glVertexAttrib4Nub = (PFNGLVERTEXATTRIB4NUBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4Nub")) == NULL) || r;
-  r = ((glVertexAttrib4Nubv = (PFNGLVERTEXATTRIB4NUBVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4Nubv")) == NULL) || r;
-  r = ((glVertexAttrib4Nuiv = (PFNGLVERTEXATTRIB4NUIVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4Nuiv")) == NULL) || r;
-  r = ((glVertexAttrib4Nusv = (PFNGLVERTEXATTRIB4NUSVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4Nusv")) == NULL) || r;
-  r = ((glVertexAttrib4bv = (PFNGLVERTEXATTRIB4BVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4bv")) == NULL) || r;
-  r = ((glVertexAttrib4d = (PFNGLVERTEXATTRIB4DPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4d")) == NULL) || r;
-  r = ((glVertexAttrib4dv = (PFNGLVERTEXATTRIB4DVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4dv")) == NULL) || r;
-  r = ((glVertexAttrib4f = (PFNGLVERTEXATTRIB4FPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4f")) == NULL) || r;
-  r = ((glVertexAttrib4fv = (PFNGLVERTEXATTRIB4FVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4fv")) == NULL) || r;
-  r = ((glVertexAttrib4iv = (PFNGLVERTEXATTRIB4IVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4iv")) == NULL) || r;
-  r = ((glVertexAttrib4s = (PFNGLVERTEXATTRIB4SPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4s")) == NULL) || r;
-  r = ((glVertexAttrib4sv = (PFNGLVERTEXATTRIB4SVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4sv")) == NULL) || r;
-  r = ((glVertexAttrib4ubv = (PFNGLVERTEXATTRIB4UBVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4ubv")) == NULL) || r;
-  r = ((glVertexAttrib4uiv = (PFNGLVERTEXATTRIB4UIVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4uiv")) == NULL) || r;
-  r = ((glVertexAttrib4usv = (PFNGLVERTEXATTRIB4USVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4usv")) == NULL) || r;
-  r = ((glVertexAttribPointer = (PFNGLVERTEXATTRIBPOINTERPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribPointer")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_VERSION_2_0 */
-
-#ifdef GL_VERSION_2_1
-
-static GLboolean _glewInit_GL_VERSION_2_1 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glUniformMatrix2x3fv = (PFNGLUNIFORMMATRIX2X3FVPROC)glewGetProcAddress((const GLubyte*)"glUniformMatrix2x3fv")) == NULL) || r;
-  r = ((glUniformMatrix2x4fv = (PFNGLUNIFORMMATRIX2X4FVPROC)glewGetProcAddress((const GLubyte*)"glUniformMatrix2x4fv")) == NULL) || r;
-  r = ((glUniformMatrix3x2fv = (PFNGLUNIFORMMATRIX3X2FVPROC)glewGetProcAddress((const GLubyte*)"glUniformMatrix3x2fv")) == NULL) || r;
-  r = ((glUniformMatrix3x4fv = (PFNGLUNIFORMMATRIX3X4FVPROC)glewGetProcAddress((const GLubyte*)"glUniformMatrix3x4fv")) == NULL) || r;
-  r = ((glUniformMatrix4x2fv = (PFNGLUNIFORMMATRIX4X2FVPROC)glewGetProcAddress((const GLubyte*)"glUniformMatrix4x2fv")) == NULL) || r;
-  r = ((glUniformMatrix4x3fv = (PFNGLUNIFORMMATRIX4X3FVPROC)glewGetProcAddress((const GLubyte*)"glUniformMatrix4x3fv")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_VERSION_2_1 */
-
-#ifdef GL_VERSION_3_0
-
-static GLboolean _glewInit_GL_VERSION_3_0 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBeginConditionalRender = (PFNGLBEGINCONDITIONALRENDERPROC)glewGetProcAddress((const GLubyte*)"glBeginConditionalRender")) == NULL) || r;
-  r = ((glBeginTransformFeedback = (PFNGLBEGINTRANSFORMFEEDBACKPROC)glewGetProcAddress((const GLubyte*)"glBeginTransformFeedback")) == NULL) || r;
-  r = ((glBindFragDataLocation = (PFNGLBINDFRAGDATALOCATIONPROC)glewGetProcAddress((const GLubyte*)"glBindFragDataLocation")) == NULL) || r;
-  r = ((glClampColor = (PFNGLCLAMPCOLORPROC)glewGetProcAddress((const GLubyte*)"glClampColor")) == NULL) || r;
-  r = ((glClearBufferfi = (PFNGLCLEARBUFFERFIPROC)glewGetProcAddress((const GLubyte*)"glClearBufferfi")) == NULL) || r;
-  r = ((glClearBufferfv = (PFNGLCLEARBUFFERFVPROC)glewGetProcAddress((const GLubyte*)"glClearBufferfv")) == NULL) || r;
-  r = ((glClearBufferiv = (PFNGLCLEARBUFFERIVPROC)glewGetProcAddress((const GLubyte*)"glClearBufferiv")) == NULL) || r;
-  r = ((glClearBufferuiv = (PFNGLCLEARBUFFERUIVPROC)glewGetProcAddress((const GLubyte*)"glClearBufferuiv")) == NULL) || r;
-  r = ((glColorMaski = (PFNGLCOLORMASKIPROC)glewGetProcAddress((const GLubyte*)"glColorMaski")) == NULL) || r;
-  r = ((glDisablei = (PFNGLDISABLEIPROC)glewGetProcAddress((const GLubyte*)"glDisablei")) == NULL) || r;
-  r = ((glEnablei = (PFNGLENABLEIPROC)glewGetProcAddress((const GLubyte*)"glEnablei")) == NULL) || r;
-  r = ((glEndConditionalRender = (PFNGLENDCONDITIONALRENDERPROC)glewGetProcAddress((const GLubyte*)"glEndConditionalRender")) == NULL) || r;
-  r = ((glEndTransformFeedback = (PFNGLENDTRANSFORMFEEDBACKPROC)glewGetProcAddress((const GLubyte*)"glEndTransformFeedback")) == NULL) || r;
-  r = ((glGetBooleani_v = (PFNGLGETBOOLEANI_VPROC)glewGetProcAddress((const GLubyte*)"glGetBooleani_v")) == NULL) || r;
-  r = ((glGetFragDataLocation = (PFNGLGETFRAGDATALOCATIONPROC)glewGetProcAddress((const GLubyte*)"glGetFragDataLocation")) == NULL) || r;
-  r = ((glGetStringi = (PFNGLGETSTRINGIPROC)glewGetProcAddress((const GLubyte*)"glGetStringi")) == NULL) || r;
-  r = ((glGetTexParameterIiv = (PFNGLGETTEXPARAMETERIIVPROC)glewGetProcAddress((const GLubyte*)"glGetTexParameterIiv")) == NULL) || r;
-  r = ((glGetTexParameterIuiv = (PFNGLGETTEXPARAMETERIUIVPROC)glewGetProcAddress((const GLubyte*)"glGetTexParameterIuiv")) == NULL) || r;
-  r = ((glGetTransformFeedbackVarying = (PFNGLGETTRANSFORMFEEDBACKVARYINGPROC)glewGetProcAddress((const GLubyte*)"glGetTransformFeedbackVarying")) == NULL) || r;
-  r = ((glGetUniformuiv = (PFNGLGETUNIFORMUIVPROC)glewGetProcAddress((const GLubyte*)"glGetUniformuiv")) == NULL) || r;
-  r = ((glGetVertexAttribIiv = (PFNGLGETVERTEXATTRIBIIVPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribIiv")) == NULL) || r;
-  r = ((glGetVertexAttribIuiv = (PFNGLGETVERTEXATTRIBIUIVPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribIuiv")) == NULL) || r;
-  r = ((glIsEnabledi = (PFNGLISENABLEDIPROC)glewGetProcAddress((const GLubyte*)"glIsEnabledi")) == NULL) || r;
-  r = ((glTexParameterIiv = (PFNGLTEXPARAMETERIIVPROC)glewGetProcAddress((const GLubyte*)"glTexParameterIiv")) == NULL) || r;
-  r = ((glTexParameterIuiv = (PFNGLTEXPARAMETERIUIVPROC)glewGetProcAddress((const GLubyte*)"glTexParameterIuiv")) == NULL) || r;
-  r = ((glTransformFeedbackVaryings = (PFNGLTRANSFORMFEEDBACKVARYINGSPROC)glewGetProcAddress((const GLubyte*)"glTransformFeedbackVaryings")) == NULL) || r;
-  r = ((glUniform1ui = (PFNGLUNIFORM1UIPROC)glewGetProcAddress((const GLubyte*)"glUniform1ui")) == NULL) || r;
-  r = ((glUniform1uiv = (PFNGLUNIFORM1UIVPROC)glewGetProcAddress((const GLubyte*)"glUniform1uiv")) == NULL) || r;
-  r = ((glUniform2ui = (PFNGLUNIFORM2UIPROC)glewGetProcAddress((const GLubyte*)"glUniform2ui")) == NULL) || r;
-  r = ((glUniform2uiv = (PFNGLUNIFORM2UIVPROC)glewGetProcAddress((const GLubyte*)"glUniform2uiv")) == NULL) || r;
-  r = ((glUniform3ui = (PFNGLUNIFORM3UIPROC)glewGetProcAddress((const GLubyte*)"glUniform3ui")) == NULL) || r;
-  r = ((glUniform3uiv = (PFNGLUNIFORM3UIVPROC)glewGetProcAddress((const GLubyte*)"glUniform3uiv")) == NULL) || r;
-  r = ((glUniform4ui = (PFNGLUNIFORM4UIPROC)glewGetProcAddress((const GLubyte*)"glUniform4ui")) == NULL) || r;
-  r = ((glUniform4uiv = (PFNGLUNIFORM4UIVPROC)glewGetProcAddress((const GLubyte*)"glUniform4uiv")) == NULL) || r;
-  r = ((glVertexAttribI1i = (PFNGLVERTEXATTRIBI1IPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI1i")) == NULL) || r;
-  r = ((glVertexAttribI1iv = (PFNGLVERTEXATTRIBI1IVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI1iv")) == NULL) || r;
-  r = ((glVertexAttribI1ui = (PFNGLVERTEXATTRIBI1UIPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI1ui")) == NULL) || r;
-  r = ((glVertexAttribI1uiv = (PFNGLVERTEXATTRIBI1UIVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI1uiv")) == NULL) || r;
-  r = ((glVertexAttribI2i = (PFNGLVERTEXATTRIBI2IPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI2i")) == NULL) || r;
-  r = ((glVertexAttribI2iv = (PFNGLVERTEXATTRIBI2IVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI2iv")) == NULL) || r;
-  r = ((glVertexAttribI2ui = (PFNGLVERTEXATTRIBI2UIPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI2ui")) == NULL) || r;
-  r = ((glVertexAttribI2uiv = (PFNGLVERTEXATTRIBI2UIVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI2uiv")) == NULL) || r;
-  r = ((glVertexAttribI3i = (PFNGLVERTEXATTRIBI3IPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI3i")) == NULL) || r;
-  r = ((glVertexAttribI3iv = (PFNGLVERTEXATTRIBI3IVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI3iv")) == NULL) || r;
-  r = ((glVertexAttribI3ui = (PFNGLVERTEXATTRIBI3UIPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI3ui")) == NULL) || r;
-  r = ((glVertexAttribI3uiv = (PFNGLVERTEXATTRIBI3UIVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI3uiv")) == NULL) || r;
-  r = ((glVertexAttribI4bv = (PFNGLVERTEXATTRIBI4BVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4bv")) == NULL) || r;
-  r = ((glVertexAttribI4i = (PFNGLVERTEXATTRIBI4IPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4i")) == NULL) || r;
-  r = ((glVertexAttribI4iv = (PFNGLVERTEXATTRIBI4IVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4iv")) == NULL) || r;
-  r = ((glVertexAttribI4sv = (PFNGLVERTEXATTRIBI4SVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4sv")) == NULL) || r;
-  r = ((glVertexAttribI4ubv = (PFNGLVERTEXATTRIBI4UBVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4ubv")) == NULL) || r;
-  r = ((glVertexAttribI4ui = (PFNGLVERTEXATTRIBI4UIPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4ui")) == NULL) || r;
-  r = ((glVertexAttribI4uiv = (PFNGLVERTEXATTRIBI4UIVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4uiv")) == NULL) || r;
-  r = ((glVertexAttribI4usv = (PFNGLVERTEXATTRIBI4USVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4usv")) == NULL) || r;
-  r = ((glVertexAttribIPointer = (PFNGLVERTEXATTRIBIPOINTERPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribIPointer")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_VERSION_3_0 */
-
-#ifdef GL_VERSION_3_1
-
-static GLboolean _glewInit_GL_VERSION_3_1 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDrawArraysInstanced = (PFNGLDRAWARRAYSINSTANCEDPROC)glewGetProcAddress((const GLubyte*)"glDrawArraysInstanced")) == NULL) || r;
-  r = ((glDrawElementsInstanced = (PFNGLDRAWELEMENTSINSTANCEDPROC)glewGetProcAddress((const GLubyte*)"glDrawElementsInstanced")) == NULL) || r;
-  r = ((glPrimitiveRestartIndex = (PFNGLPRIMITIVERESTARTINDEXPROC)glewGetProcAddress((const GLubyte*)"glPrimitiveRestartIndex")) == NULL) || r;
-  r = ((glTexBuffer = (PFNGLTEXBUFFERPROC)glewGetProcAddress((const GLubyte*)"glTexBuffer")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_VERSION_3_1 */
-
-#ifdef GL_VERSION_3_2
-
-static GLboolean _glewInit_GL_VERSION_3_2 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFramebufferTexture = (PFNGLFRAMEBUFFERTEXTUREPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTexture")) == NULL) || r;
-  r = ((glGetBufferParameteri64v = (PFNGLGETBUFFERPARAMETERI64VPROC)glewGetProcAddress((const GLubyte*)"glGetBufferParameteri64v")) == NULL) || r;
-  r = ((glGetInteger64i_v = (PFNGLGETINTEGER64I_VPROC)glewGetProcAddress((const GLubyte*)"glGetInteger64i_v")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_VERSION_3_2 */
-
-#ifdef GL_VERSION_3_3
-
-#endif /* GL_VERSION_3_3 */
-
-#ifdef GL_VERSION_4_0
-
-static GLboolean _glewInit_GL_VERSION_4_0 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBlendEquationSeparatei = (PFNGLBLENDEQUATIONSEPARATEIPROC)glewGetProcAddress((const GLubyte*)"glBlendEquationSeparatei")) == NULL) || r;
-  r = ((glBlendEquationi = (PFNGLBLENDEQUATIONIPROC)glewGetProcAddress((const GLubyte*)"glBlendEquationi")) == NULL) || r;
-  r = ((glBlendFuncSeparatei = (PFNGLBLENDFUNCSEPARATEIPROC)glewGetProcAddress((const GLubyte*)"glBlendFuncSeparatei")) == NULL) || r;
-  r = ((glBlendFunci = (PFNGLBLENDFUNCIPROC)glewGetProcAddress((const GLubyte*)"glBlendFunci")) == NULL) || r;
-  r = ((glMinSampleShading = (PFNGLMINSAMPLESHADINGPROC)glewGetProcAddress((const GLubyte*)"glMinSampleShading")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_VERSION_4_0 */
-
-#ifdef GL_3DFX_multisample
-
-#endif /* GL_3DFX_multisample */
-
-#ifdef GL_3DFX_tbuffer
-
-static GLboolean _glewInit_GL_3DFX_tbuffer (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glTbufferMask3DFX = (PFNGLTBUFFERMASK3DFXPROC)glewGetProcAddress((const GLubyte*)"glTbufferMask3DFX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_3DFX_tbuffer */
-
-#ifdef GL_3DFX_texture_compression_FXT1
-
-#endif /* GL_3DFX_texture_compression_FXT1 */
-
-#ifdef GL_AMD_conservative_depth
-
-#endif /* GL_AMD_conservative_depth */
-
-#ifdef GL_AMD_draw_buffers_blend
-
-static GLboolean _glewInit_GL_AMD_draw_buffers_blend (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBlendEquationIndexedAMD = (PFNGLBLENDEQUATIONINDEXEDAMDPROC)glewGetProcAddress((const GLubyte*)"glBlendEquationIndexedAMD")) == NULL) || r;
-  r = ((glBlendEquationSeparateIndexedAMD = (PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC)glewGetProcAddress((const GLubyte*)"glBlendEquationSeparateIndexedAMD")) == NULL) || r;
-  r = ((glBlendFuncIndexedAMD = (PFNGLBLENDFUNCINDEXEDAMDPROC)glewGetProcAddress((const GLubyte*)"glBlendFuncIndexedAMD")) == NULL) || r;
-  r = ((glBlendFuncSeparateIndexedAMD = (PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC)glewGetProcAddress((const GLubyte*)"glBlendFuncSeparateIndexedAMD")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_AMD_draw_buffers_blend */
-
-#ifdef GL_AMD_performance_monitor
-
-static GLboolean _glewInit_GL_AMD_performance_monitor (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBeginPerfMonitorAMD = (PFNGLBEGINPERFMONITORAMDPROC)glewGetProcAddress((const GLubyte*)"glBeginPerfMonitorAMD")) == NULL) || r;
-  r = ((glDeletePerfMonitorsAMD = (PFNGLDELETEPERFMONITORSAMDPROC)glewGetProcAddress((const GLubyte*)"glDeletePerfMonitorsAMD")) == NULL) || r;
-  r = ((glEndPerfMonitorAMD = (PFNGLENDPERFMONITORAMDPROC)glewGetProcAddress((const GLubyte*)"glEndPerfMonitorAMD")) == NULL) || r;
-  r = ((glGenPerfMonitorsAMD = (PFNGLGENPERFMONITORSAMDPROC)glewGetProcAddress((const GLubyte*)"glGenPerfMonitorsAMD")) == NULL) || r;
-  r = ((glGetPerfMonitorCounterDataAMD = (PFNGLGETPERFMONITORCOUNTERDATAAMDPROC)glewGetProcAddress((const GLubyte*)"glGetPerfMonitorCounterDataAMD")) == NULL) || r;
-  r = ((glGetPerfMonitorCounterInfoAMD = (PFNGLGETPERFMONITORCOUNTERINFOAMDPROC)glewGetProcAddress((const GLubyte*)"glGetPerfMonitorCounterInfoAMD")) == NULL) || r;
-  r = ((glGetPerfMonitorCounterStringAMD = (PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC)glewGetProcAddress((const GLubyte*)"glGetPerfMonitorCounterStringAMD")) == NULL) || r;
-  r = ((glGetPerfMonitorCountersAMD = (PFNGLGETPERFMONITORCOUNTERSAMDPROC)glewGetProcAddress((const GLubyte*)"glGetPerfMonitorCountersAMD")) == NULL) || r;
-  r = ((glGetPerfMonitorGroupStringAMD = (PFNGLGETPERFMONITORGROUPSTRINGAMDPROC)glewGetProcAddress((const GLubyte*)"glGetPerfMonitorGroupStringAMD")) == NULL) || r;
-  r = ((glGetPerfMonitorGroupsAMD = (PFNGLGETPERFMONITORGROUPSAMDPROC)glewGetProcAddress((const GLubyte*)"glGetPerfMonitorGroupsAMD")) == NULL) || r;
-  r = ((glSelectPerfMonitorCountersAMD = (PFNGLSELECTPERFMONITORCOUNTERSAMDPROC)glewGetProcAddress((const GLubyte*)"glSelectPerfMonitorCountersAMD")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_AMD_performance_monitor */
-
-#ifdef GL_AMD_seamless_cubemap_per_texture
-
-#endif /* GL_AMD_seamless_cubemap_per_texture */
-
-#ifdef GL_AMD_shader_stencil_export
-
-#endif /* GL_AMD_shader_stencil_export */
-
-#ifdef GL_AMD_texture_texture4
-
-#endif /* GL_AMD_texture_texture4 */
-
-#ifdef GL_AMD_vertex_shader_tessellator
-
-static GLboolean _glewInit_GL_AMD_vertex_shader_tessellator (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glTessellationFactorAMD = (PFNGLTESSELLATIONFACTORAMDPROC)glewGetProcAddress((const GLubyte*)"glTessellationFactorAMD")) == NULL) || r;
-  r = ((glTessellationModeAMD = (PFNGLTESSELLATIONMODEAMDPROC)glewGetProcAddress((const GLubyte*)"glTessellationModeAMD")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_AMD_vertex_shader_tessellator */
-
-#ifdef GL_APPLE_aux_depth_stencil
-
-#endif /* GL_APPLE_aux_depth_stencil */
-
-#ifdef GL_APPLE_client_storage
-
-#endif /* GL_APPLE_client_storage */
-
-#ifdef GL_APPLE_element_array
-
-static GLboolean _glewInit_GL_APPLE_element_array (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDrawElementArrayAPPLE = (PFNGLDRAWELEMENTARRAYAPPLEPROC)glewGetProcAddress((const GLubyte*)"glDrawElementArrayAPPLE")) == NULL) || r;
-  r = ((glDrawRangeElementArrayAPPLE = (PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC)glewGetProcAddress((const GLubyte*)"glDrawRangeElementArrayAPPLE")) == NULL) || r;
-  r = ((glElementPointerAPPLE = (PFNGLELEMENTPOINTERAPPLEPROC)glewGetProcAddress((const GLubyte*)"glElementPointerAPPLE")) == NULL) || r;
-  r = ((glMultiDrawElementArrayAPPLE = (PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC)glewGetProcAddress((const GLubyte*)"glMultiDrawElementArrayAPPLE")) == NULL) || r;
-  r = ((glMultiDrawRangeElementArrayAPPLE = (PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC)glewGetProcAddress((const GLubyte*)"glMultiDrawRangeElementArrayAPPLE")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_APPLE_element_array */
-
-#ifdef GL_APPLE_fence
-
-static GLboolean _glewInit_GL_APPLE_fence (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDeleteFencesAPPLE = (PFNGLDELETEFENCESAPPLEPROC)glewGetProcAddress((const GLubyte*)"glDeleteFencesAPPLE")) == NULL) || r;
-  r = ((glFinishFenceAPPLE = (PFNGLFINISHFENCEAPPLEPROC)glewGetProcAddress((const GLubyte*)"glFinishFenceAPPLE")) == NULL) || r;
-  r = ((glFinishObjectAPPLE = (PFNGLFINISHOBJECTAPPLEPROC)glewGetProcAddress((const GLubyte*)"glFinishObjectAPPLE")) == NULL) || r;
-  r = ((glGenFencesAPPLE = (PFNGLGENFENCESAPPLEPROC)glewGetProcAddress((const GLubyte*)"glGenFencesAPPLE")) == NULL) || r;
-  r = ((glIsFenceAPPLE = (PFNGLISFENCEAPPLEPROC)glewGetProcAddress((const GLubyte*)"glIsFenceAPPLE")) == NULL) || r;
-  r = ((glSetFenceAPPLE = (PFNGLSETFENCEAPPLEPROC)glewGetProcAddress((const GLubyte*)"glSetFenceAPPLE")) == NULL) || r;
-  r = ((glTestFenceAPPLE = (PFNGLTESTFENCEAPPLEPROC)glewGetProcAddress((const GLubyte*)"glTestFenceAPPLE")) == NULL) || r;
-  r = ((glTestObjectAPPLE = (PFNGLTESTOBJECTAPPLEPROC)glewGetProcAddress((const GLubyte*)"glTestObjectAPPLE")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_APPLE_fence */
-
-#ifdef GL_APPLE_float_pixels
-
-#endif /* GL_APPLE_float_pixels */
-
-#ifdef GL_APPLE_flush_buffer_range
-
-static GLboolean _glewInit_GL_APPLE_flush_buffer_range (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBufferParameteriAPPLE = (PFNGLBUFFERPARAMETERIAPPLEPROC)glewGetProcAddress((const GLubyte*)"glBufferParameteriAPPLE")) == NULL) || r;
-  r = ((glFlushMappedBufferRangeAPPLE = (PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC)glewGetProcAddress((const GLubyte*)"glFlushMappedBufferRangeAPPLE")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_APPLE_flush_buffer_range */
-
-#ifdef GL_APPLE_object_purgeable
-
-static GLboolean _glewInit_GL_APPLE_object_purgeable (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetObjectParameterivAPPLE = (PFNGLGETOBJECTPARAMETERIVAPPLEPROC)glewGetProcAddress((const GLubyte*)"glGetObjectParameterivAPPLE")) == NULL) || r;
-  r = ((glObjectPurgeableAPPLE = (PFNGLOBJECTPURGEABLEAPPLEPROC)glewGetProcAddress((const GLubyte*)"glObjectPurgeableAPPLE")) == NULL) || r;
-  r = ((glObjectUnpurgeableAPPLE = (PFNGLOBJECTUNPURGEABLEAPPLEPROC)glewGetProcAddress((const GLubyte*)"glObjectUnpurgeableAPPLE")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_APPLE_object_purgeable */
-
-#ifdef GL_APPLE_pixel_buffer
-
-#endif /* GL_APPLE_pixel_buffer */
-
-#ifdef GL_APPLE_rgb_422
-
-#endif /* GL_APPLE_rgb_422 */
-
-#ifdef GL_APPLE_row_bytes
-
-#endif /* GL_APPLE_row_bytes */
-
-#ifdef GL_APPLE_specular_vector
-
-#endif /* GL_APPLE_specular_vector */
-
-#ifdef GL_APPLE_texture_range
-
-static GLboolean _glewInit_GL_APPLE_texture_range (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetTexParameterPointervAPPLE = (PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC)glewGetProcAddress((const GLubyte*)"glGetTexParameterPointervAPPLE")) == NULL) || r;
-  r = ((glTextureRangeAPPLE = (PFNGLTEXTURERANGEAPPLEPROC)glewGetProcAddress((const GLubyte*)"glTextureRangeAPPLE")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_APPLE_texture_range */
-
-#ifdef GL_APPLE_transform_hint
-
-#endif /* GL_APPLE_transform_hint */
-
-#ifdef GL_APPLE_vertex_array_object
-
-static GLboolean _glewInit_GL_APPLE_vertex_array_object (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindVertexArrayAPPLE = (PFNGLBINDVERTEXARRAYAPPLEPROC)glewGetProcAddress((const GLubyte*)"glBindVertexArrayAPPLE")) == NULL) || r;
-  r = ((glDeleteVertexArraysAPPLE = (PFNGLDELETEVERTEXARRAYSAPPLEPROC)glewGetProcAddress((const GLubyte*)"glDeleteVertexArraysAPPLE")) == NULL) || r;
-  r = ((glGenVertexArraysAPPLE = (PFNGLGENVERTEXARRAYSAPPLEPROC)glewGetProcAddress((const GLubyte*)"glGenVertexArraysAPPLE")) == NULL) || r;
-  r = ((glIsVertexArrayAPPLE = (PFNGLISVERTEXARRAYAPPLEPROC)glewGetProcAddress((const GLubyte*)"glIsVertexArrayAPPLE")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_APPLE_vertex_array_object */
-
-#ifdef GL_APPLE_vertex_array_range
-
-static GLboolean _glewInit_GL_APPLE_vertex_array_range (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFlushVertexArrayRangeAPPLE = (PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC)glewGetProcAddress((const GLubyte*)"glFlushVertexArrayRangeAPPLE")) == NULL) || r;
-  r = ((glVertexArrayParameteriAPPLE = (PFNGLVERTEXARRAYPARAMETERIAPPLEPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayParameteriAPPLE")) == NULL) || r;
-  r = ((glVertexArrayRangeAPPLE = (PFNGLVERTEXARRAYRANGEAPPLEPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayRangeAPPLE")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_APPLE_vertex_array_range */
-
-#ifdef GL_APPLE_vertex_program_evaluators
-
-static GLboolean _glewInit_GL_APPLE_vertex_program_evaluators (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDisableVertexAttribAPPLE = (PFNGLDISABLEVERTEXATTRIBAPPLEPROC)glewGetProcAddress((const GLubyte*)"glDisableVertexAttribAPPLE")) == NULL) || r;
-  r = ((glEnableVertexAttribAPPLE = (PFNGLENABLEVERTEXATTRIBAPPLEPROC)glewGetProcAddress((const GLubyte*)"glEnableVertexAttribAPPLE")) == NULL) || r;
-  r = ((glIsVertexAttribEnabledAPPLE = (PFNGLISVERTEXATTRIBENABLEDAPPLEPROC)glewGetProcAddress((const GLubyte*)"glIsVertexAttribEnabledAPPLE")) == NULL) || r;
-  r = ((glMapVertexAttrib1dAPPLE = (PFNGLMAPVERTEXATTRIB1DAPPLEPROC)glewGetProcAddress((const GLubyte*)"glMapVertexAttrib1dAPPLE")) == NULL) || r;
-  r = ((glMapVertexAttrib1fAPPLE = (PFNGLMAPVERTEXATTRIB1FAPPLEPROC)glewGetProcAddress((const GLubyte*)"glMapVertexAttrib1fAPPLE")) == NULL) || r;
-  r = ((glMapVertexAttrib2dAPPLE = (PFNGLMAPVERTEXATTRIB2DAPPLEPROC)glewGetProcAddress((const GLubyte*)"glMapVertexAttrib2dAPPLE")) == NULL) || r;
-  r = ((glMapVertexAttrib2fAPPLE = (PFNGLMAPVERTEXATTRIB2FAPPLEPROC)glewGetProcAddress((const GLubyte*)"glMapVertexAttrib2fAPPLE")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_APPLE_vertex_program_evaluators */
-
-#ifdef GL_APPLE_ycbcr_422
-
-#endif /* GL_APPLE_ycbcr_422 */
-
-#ifdef GL_ARB_blend_func_extended
-
-static GLboolean _glewInit_GL_ARB_blend_func_extended (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindFragDataLocationIndexed = (PFNGLBINDFRAGDATALOCATIONINDEXEDPROC)glewGetProcAddress((const GLubyte*)"glBindFragDataLocationIndexed")) == NULL) || r;
-  r = ((glGetFragDataIndex = (PFNGLGETFRAGDATAINDEXPROC)glewGetProcAddress((const GLubyte*)"glGetFragDataIndex")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_blend_func_extended */
-
-#ifdef GL_ARB_color_buffer_float
-
-static GLboolean _glewInit_GL_ARB_color_buffer_float (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glClampColorARB = (PFNGLCLAMPCOLORARBPROC)glewGetProcAddress((const GLubyte*)"glClampColorARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_color_buffer_float */
-
-#ifdef GL_ARB_compatibility
-
-#endif /* GL_ARB_compatibility */
-
-#ifdef GL_ARB_copy_buffer
-
-static GLboolean _glewInit_GL_ARB_copy_buffer (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glCopyBufferSubData = (PFNGLCOPYBUFFERSUBDATAPROC)glewGetProcAddress((const GLubyte*)"glCopyBufferSubData")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_copy_buffer */
-
-#ifdef GL_ARB_depth_buffer_float
-
-#endif /* GL_ARB_depth_buffer_float */
-
-#ifdef GL_ARB_depth_clamp
-
-#endif /* GL_ARB_depth_clamp */
-
-#ifdef GL_ARB_depth_texture
-
-#endif /* GL_ARB_depth_texture */
-
-#ifdef GL_ARB_draw_buffers
-
-static GLboolean _glewInit_GL_ARB_draw_buffers (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDrawBuffersARB = (PFNGLDRAWBUFFERSARBPROC)glewGetProcAddress((const GLubyte*)"glDrawBuffersARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_draw_buffers */
-
-#ifdef GL_ARB_draw_buffers_blend
-
-static GLboolean _glewInit_GL_ARB_draw_buffers_blend (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBlendEquationSeparateiARB = (PFNGLBLENDEQUATIONSEPARATEIARBPROC)glewGetProcAddress((const GLubyte*)"glBlendEquationSeparateiARB")) == NULL) || r;
-  r = ((glBlendEquationiARB = (PFNGLBLENDEQUATIONIARBPROC)glewGetProcAddress((const GLubyte*)"glBlendEquationiARB")) == NULL) || r;
-  r = ((glBlendFuncSeparateiARB = (PFNGLBLENDFUNCSEPARATEIARBPROC)glewGetProcAddress((const GLubyte*)"glBlendFuncSeparateiARB")) == NULL) || r;
-  r = ((glBlendFunciARB = (PFNGLBLENDFUNCIARBPROC)glewGetProcAddress((const GLubyte*)"glBlendFunciARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_draw_buffers_blend */
-
-#ifdef GL_ARB_draw_elements_base_vertex
-
-static GLboolean _glewInit_GL_ARB_draw_elements_base_vertex (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDrawElementsBaseVertex = (PFNGLDRAWELEMENTSBASEVERTEXPROC)glewGetProcAddress((const GLubyte*)"glDrawElementsBaseVertex")) == NULL) || r;
-  r = ((glDrawElementsInstancedBaseVertex = (PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC)glewGetProcAddress((const GLubyte*)"glDrawElementsInstancedBaseVertex")) == NULL) || r;
-  r = ((glDrawRangeElementsBaseVertex = (PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC)glewGetProcAddress((const GLubyte*)"glDrawRangeElementsBaseVertex")) == NULL) || r;
-  r = ((glMultiDrawElementsBaseVertex = (PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC)glewGetProcAddress((const GLubyte*)"glMultiDrawElementsBaseVertex")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_draw_elements_base_vertex */
-
-#ifdef GL_ARB_draw_indirect
-
-static GLboolean _glewInit_GL_ARB_draw_indirect (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDrawArraysIndirect = (PFNGLDRAWARRAYSINDIRECTPROC)glewGetProcAddress((const GLubyte*)"glDrawArraysIndirect")) == NULL) || r;
-  r = ((glDrawElementsIndirect = (PFNGLDRAWELEMENTSINDIRECTPROC)glewGetProcAddress((const GLubyte*)"glDrawElementsIndirect")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_draw_indirect */
-
-#ifdef GL_ARB_draw_instanced
-
-static GLboolean _glewInit_GL_ARB_draw_instanced (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDrawArraysInstancedARB = (PFNGLDRAWARRAYSINSTANCEDARBPROC)glewGetProcAddress((const GLubyte*)"glDrawArraysInstancedARB")) == NULL) || r;
-  r = ((glDrawElementsInstancedARB = (PFNGLDRAWELEMENTSINSTANCEDARBPROC)glewGetProcAddress((const GLubyte*)"glDrawElementsInstancedARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_draw_instanced */
-
-#ifdef GL_ARB_explicit_attrib_location
-
-#endif /* GL_ARB_explicit_attrib_location */
-
-#ifdef GL_ARB_fragment_coord_conventions
-
-#endif /* GL_ARB_fragment_coord_conventions */
-
-#ifdef GL_ARB_fragment_program
-
-#endif /* GL_ARB_fragment_program */
-
-#ifdef GL_ARB_fragment_program_shadow
-
-#endif /* GL_ARB_fragment_program_shadow */
-
-#ifdef GL_ARB_fragment_shader
-
-#endif /* GL_ARB_fragment_shader */
-
-#ifdef GL_ARB_framebuffer_object
-
-static GLboolean _glewInit_GL_ARB_framebuffer_object (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindFramebuffer = (PFNGLBINDFRAMEBUFFERPROC)glewGetProcAddress((const GLubyte*)"glBindFramebuffer")) == NULL) || r;
-  r = ((glBindRenderbuffer = (PFNGLBINDRENDERBUFFERPROC)glewGetProcAddress((const GLubyte*)"glBindRenderbuffer")) == NULL) || r;
-  r = ((glBlitFramebuffer = (PFNGLBLITFRAMEBUFFERPROC)glewGetProcAddress((const GLubyte*)"glBlitFramebuffer")) == NULL) || r;
-  r = ((glCheckFramebufferStatus = (PFNGLCHECKFRAMEBUFFERSTATUSPROC)glewGetProcAddress((const GLubyte*)"glCheckFramebufferStatus")) == NULL) || r;
-  r = ((glDeleteFramebuffers = (PFNGLDELETEFRAMEBUFFERSPROC)glewGetProcAddress((const GLubyte*)"glDeleteFramebuffers")) == NULL) || r;
-  r = ((glDeleteRenderbuffers = (PFNGLDELETERENDERBUFFERSPROC)glewGetProcAddress((const GLubyte*)"glDeleteRenderbuffers")) == NULL) || r;
-  r = ((glFramebufferRenderbuffer = (PFNGLFRAMEBUFFERRENDERBUFFERPROC)glewGetProcAddress((const GLubyte*)"glFramebufferRenderbuffer")) == NULL) || r;
-  r = ((glFramebufferTexture1D = (PFNGLFRAMEBUFFERTEXTURE1DPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTexture1D")) == NULL) || r;
-  r = ((glFramebufferTexture2D = (PFNGLFRAMEBUFFERTEXTURE2DPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTexture2D")) == NULL) || r;
-  r = ((glFramebufferTexture3D = (PFNGLFRAMEBUFFERTEXTURE3DPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTexture3D")) == NULL) || r;
-  r = ((glFramebufferTextureLayer = (PFNGLFRAMEBUFFERTEXTURELAYERPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTextureLayer")) == NULL) || r;
-  r = ((glGenFramebuffers = (PFNGLGENFRAMEBUFFERSPROC)glewGetProcAddress((const GLubyte*)"glGenFramebuffers")) == NULL) || r;
-  r = ((glGenRenderbuffers = (PFNGLGENRENDERBUFFERSPROC)glewGetProcAddress((const GLubyte*)"glGenRenderbuffers")) == NULL) || r;
-  r = ((glGenerateMipmap = (PFNGLGENERATEMIPMAPPROC)glewGetProcAddress((const GLubyte*)"glGenerateMipmap")) == NULL) || r;
-  r = ((glGetFramebufferAttachmentParameteriv = (PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)glewGetProcAddress((const GLubyte*)"glGetFramebufferAttachmentParameteriv")) == NULL) || r;
-  r = ((glGetRenderbufferParameteriv = (PFNGLGETRENDERBUFFERPARAMETERIVPROC)glewGetProcAddress((const GLubyte*)"glGetRenderbufferParameteriv")) == NULL) || r;
-  r = ((glIsFramebuffer = (PFNGLISFRAMEBUFFERPROC)glewGetProcAddress((const GLubyte*)"glIsFramebuffer")) == NULL) || r;
-  r = ((glIsRenderbuffer = (PFNGLISRENDERBUFFERPROC)glewGetProcAddress((const GLubyte*)"glIsRenderbuffer")) == NULL) || r;
-  r = ((glRenderbufferStorage = (PFNGLRENDERBUFFERSTORAGEPROC)glewGetProcAddress((const GLubyte*)"glRenderbufferStorage")) == NULL) || r;
-  r = ((glRenderbufferStorageMultisample = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC)glewGetProcAddress((const GLubyte*)"glRenderbufferStorageMultisample")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_framebuffer_object */
-
-#ifdef GL_ARB_framebuffer_sRGB
-
-#endif /* GL_ARB_framebuffer_sRGB */
-
-#ifdef GL_ARB_geometry_shader4
-
-static GLboolean _glewInit_GL_ARB_geometry_shader4 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFramebufferTextureARB = (PFNGLFRAMEBUFFERTEXTUREARBPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTextureARB")) == NULL) || r;
-  r = ((glFramebufferTextureFaceARB = (PFNGLFRAMEBUFFERTEXTUREFACEARBPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTextureFaceARB")) == NULL) || r;
-  r = ((glFramebufferTextureLayerARB = (PFNGLFRAMEBUFFERTEXTURELAYERARBPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTextureLayerARB")) == NULL) || r;
-  r = ((glProgramParameteriARB = (PFNGLPROGRAMPARAMETERIARBPROC)glewGetProcAddress((const GLubyte*)"glProgramParameteriARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_geometry_shader4 */
-
-#ifdef GL_ARB_gpu_shader5
-
-#endif /* GL_ARB_gpu_shader5 */
-
-#ifdef GL_ARB_gpu_shader_fp64
-
-#endif /* GL_ARB_gpu_shader_fp64 */
-
-#ifdef GL_ARB_half_float_pixel
-
-#endif /* GL_ARB_half_float_pixel */
-
-#ifdef GL_ARB_half_float_vertex
-
-#endif /* GL_ARB_half_float_vertex */
-
-#ifdef GL_ARB_imaging
-
-static GLboolean _glewInit_GL_ARB_imaging (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBlendEquation = (PFNGLBLENDEQUATIONPROC)glewGetProcAddress((const GLubyte*)"glBlendEquation")) == NULL) || r;
-  r = ((glColorSubTable = (PFNGLCOLORSUBTABLEPROC)glewGetProcAddress((const GLubyte*)"glColorSubTable")) == NULL) || r;
-  r = ((glColorTable = (PFNGLCOLORTABLEPROC)glewGetProcAddress((const GLubyte*)"glColorTable")) == NULL) || r;
-  r = ((glColorTableParameterfv = (PFNGLCOLORTABLEPARAMETERFVPROC)glewGetProcAddress((const GLubyte*)"glColorTableParameterfv")) == NULL) || r;
-  r = ((glColorTableParameteriv = (PFNGLCOLORTABLEPARAMETERIVPROC)glewGetProcAddress((const GLubyte*)"glColorTableParameteriv")) == NULL) || r;
-  r = ((glConvolutionFilter1D = (PFNGLCONVOLUTIONFILTER1DPROC)glewGetProcAddress((const GLubyte*)"glConvolutionFilter1D")) == NULL) || r;
-  r = ((glConvolutionFilter2D = (PFNGLCONVOLUTIONFILTER2DPROC)glewGetProcAddress((const GLubyte*)"glConvolutionFilter2D")) == NULL) || r;
-  r = ((glConvolutionParameterf = (PFNGLCONVOLUTIONPARAMETERFPROC)glewGetProcAddress((const GLubyte*)"glConvolutionParameterf")) == NULL) || r;
-  r = ((glConvolutionParameterfv = (PFNGLCONVOLUTIONPARAMETERFVPROC)glewGetProcAddress((const GLubyte*)"glConvolutionParameterfv")) == NULL) || r;
-  r = ((glConvolutionParameteri = (PFNGLCONVOLUTIONPARAMETERIPROC)glewGetProcAddress((const GLubyte*)"glConvolutionParameteri")) == NULL) || r;
-  r = ((glConvolutionParameteriv = (PFNGLCONVOLUTIONPARAMETERIVPROC)glewGetProcAddress((const GLubyte*)"glConvolutionParameteriv")) == NULL) || r;
-  r = ((glCopyColorSubTable = (PFNGLCOPYCOLORSUBTABLEPROC)glewGetProcAddress((const GLubyte*)"glCopyColorSubTable")) == NULL) || r;
-  r = ((glCopyColorTable = (PFNGLCOPYCOLORTABLEPROC)glewGetProcAddress((const GLubyte*)"glCopyColorTable")) == NULL) || r;
-  r = ((glCopyConvolutionFilter1D = (PFNGLCOPYCONVOLUTIONFILTER1DPROC)glewGetProcAddress((const GLubyte*)"glCopyConvolutionFilter1D")) == NULL) || r;
-  r = ((glCopyConvolutionFilter2D = (PFNGLCOPYCONVOLUTIONFILTER2DPROC)glewGetProcAddress((const GLubyte*)"glCopyConvolutionFilter2D")) == NULL) || r;
-  r = ((glGetColorTable = (PFNGLGETCOLORTABLEPROC)glewGetProcAddress((const GLubyte*)"glGetColorTable")) == NULL) || r;
-  r = ((glGetColorTableParameterfv = (PFNGLGETCOLORTABLEPARAMETERFVPROC)glewGetProcAddress((const GLubyte*)"glGetColorTableParameterfv")) == NULL) || r;
-  r = ((glGetColorTableParameteriv = (PFNGLGETCOLORTABLEPARAMETERIVPROC)glewGetProcAddress((const GLubyte*)"glGetColorTableParameteriv")) == NULL) || r;
-  r = ((glGetConvolutionFilter = (PFNGLGETCONVOLUTIONFILTERPROC)glewGetProcAddress((const GLubyte*)"glGetConvolutionFilter")) == NULL) || r;
-  r = ((glGetConvolutionParameterfv = (PFNGLGETCONVOLUTIONPARAMETERFVPROC)glewGetProcAddress((const GLubyte*)"glGetConvolutionParameterfv")) == NULL) || r;
-  r = ((glGetConvolutionParameteriv = (PFNGLGETCONVOLUTIONPARAMETERIVPROC)glewGetProcAddress((const GLubyte*)"glGetConvolutionParameteriv")) == NULL) || r;
-  r = ((glGetHistogram = (PFNGLGETHISTOGRAMPROC)glewGetProcAddress((const GLubyte*)"glGetHistogram")) == NULL) || r;
-  r = ((glGetHistogramParameterfv = (PFNGLGETHISTOGRAMPARAMETERFVPROC)glewGetProcAddress((const GLubyte*)"glGetHistogramParameterfv")) == NULL) || r;
-  r = ((glGetHistogramParameteriv = (PFNGLGETHISTOGRAMPARAMETERIVPROC)glewGetProcAddress((const GLubyte*)"glGetHistogramParameteriv")) == NULL) || r;
-  r = ((glGetMinmax = (PFNGLGETMINMAXPROC)glewGetProcAddress((const GLubyte*)"glGetMinmax")) == NULL) || r;
-  r = ((glGetMinmaxParameterfv = (PFNGLGETMINMAXPARAMETERFVPROC)glewGetProcAddress((const GLubyte*)"glGetMinmaxParameterfv")) == NULL) || r;
-  r = ((glGetMinmaxParameteriv = (PFNGLGETMINMAXPARAMETERIVPROC)glewGetProcAddress((const GLubyte*)"glGetMinmaxParameteriv")) == NULL) || r;
-  r = ((glGetSeparableFilter = (PFNGLGETSEPARABLEFILTERPROC)glewGetProcAddress((const GLubyte*)"glGetSeparableFilter")) == NULL) || r;
-  r = ((glHistogram = (PFNGLHISTOGRAMPROC)glewGetProcAddress((const GLubyte*)"glHistogram")) == NULL) || r;
-  r = ((glMinmax = (PFNGLMINMAXPROC)glewGetProcAddress((const GLubyte*)"glMinmax")) == NULL) || r;
-  r = ((glResetHistogram = (PFNGLRESETHISTOGRAMPROC)glewGetProcAddress((const GLubyte*)"glResetHistogram")) == NULL) || r;
-  r = ((glResetMinmax = (PFNGLRESETMINMAXPROC)glewGetProcAddress((const GLubyte*)"glResetMinmax")) == NULL) || r;
-  r = ((glSeparableFilter2D = (PFNGLSEPARABLEFILTER2DPROC)glewGetProcAddress((const GLubyte*)"glSeparableFilter2D")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_imaging */
-
-#ifdef GL_ARB_instanced_arrays
-
-static GLboolean _glewInit_GL_ARB_instanced_arrays (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glVertexAttribDivisorARB = (PFNGLVERTEXATTRIBDIVISORARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribDivisorARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_instanced_arrays */
-
-#ifdef GL_ARB_map_buffer_range
-
-static GLboolean _glewInit_GL_ARB_map_buffer_range (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFlushMappedBufferRange = (PFNGLFLUSHMAPPEDBUFFERRANGEPROC)glewGetProcAddress((const GLubyte*)"glFlushMappedBufferRange")) == NULL) || r;
-  r = ((glMapBufferRange = (PFNGLMAPBUFFERRANGEPROC)glewGetProcAddress((const GLubyte*)"glMapBufferRange")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_map_buffer_range */
-
-#ifdef GL_ARB_matrix_palette
-
-static GLboolean _glewInit_GL_ARB_matrix_palette (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glCurrentPaletteMatrixARB = (PFNGLCURRENTPALETTEMATRIXARBPROC)glewGetProcAddress((const GLubyte*)"glCurrentPaletteMatrixARB")) == NULL) || r;
-  r = ((glMatrixIndexPointerARB = (PFNGLMATRIXINDEXPOINTERARBPROC)glewGetProcAddress((const GLubyte*)"glMatrixIndexPointerARB")) == NULL) || r;
-  r = ((glMatrixIndexubvARB = (PFNGLMATRIXINDEXUBVARBPROC)glewGetProcAddress((const GLubyte*)"glMatrixIndexubvARB")) == NULL) || r;
-  r = ((glMatrixIndexuivARB = (PFNGLMATRIXINDEXUIVARBPROC)glewGetProcAddress((const GLubyte*)"glMatrixIndexuivARB")) == NULL) || r;
-  r = ((glMatrixIndexusvARB = (PFNGLMATRIXINDEXUSVARBPROC)glewGetProcAddress((const GLubyte*)"glMatrixIndexusvARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_matrix_palette */
-
-#ifdef GL_ARB_multisample
-
-static GLboolean _glewInit_GL_ARB_multisample (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glSampleCoverageARB = (PFNGLSAMPLECOVERAGEARBPROC)glewGetProcAddress((const GLubyte*)"glSampleCoverageARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_multisample */
-
-#ifdef GL_ARB_multitexture
-
-static GLboolean _glewInit_GL_ARB_multitexture (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glActiveTextureARB = (PFNGLACTIVETEXTUREARBPROC)glewGetProcAddress((const GLubyte*)"glActiveTextureARB")) == NULL) || r;
-  r = ((glClientActiveTextureARB = (PFNGLCLIENTACTIVETEXTUREARBPROC)glewGetProcAddress((const GLubyte*)"glClientActiveTextureARB")) == NULL) || r;
-  r = ((glMultiTexCoord1dARB = (PFNGLMULTITEXCOORD1DARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1dARB")) == NULL) || r;
-  r = ((glMultiTexCoord1dvARB = (PFNGLMULTITEXCOORD1DVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1dvARB")) == NULL) || r;
-  r = ((glMultiTexCoord1fARB = (PFNGLMULTITEXCOORD1FARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1fARB")) == NULL) || r;
-  r = ((glMultiTexCoord1fvARB = (PFNGLMULTITEXCOORD1FVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1fvARB")) == NULL) || r;
-  r = ((glMultiTexCoord1iARB = (PFNGLMULTITEXCOORD1IARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1iARB")) == NULL) || r;
-  r = ((glMultiTexCoord1ivARB = (PFNGLMULTITEXCOORD1IVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1ivARB")) == NULL) || r;
-  r = ((glMultiTexCoord1sARB = (PFNGLMULTITEXCOORD1SARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1sARB")) == NULL) || r;
-  r = ((glMultiTexCoord1svARB = (PFNGLMULTITEXCOORD1SVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1svARB")) == NULL) || r;
-  r = ((glMultiTexCoord2dARB = (PFNGLMULTITEXCOORD2DARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2dARB")) == NULL) || r;
-  r = ((glMultiTexCoord2dvARB = (PFNGLMULTITEXCOORD2DVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2dvARB")) == NULL) || r;
-  r = ((glMultiTexCoord2fARB = (PFNGLMULTITEXCOORD2FARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2fARB")) == NULL) || r;
-  r = ((glMultiTexCoord2fvARB = (PFNGLMULTITEXCOORD2FVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2fvARB")) == NULL) || r;
-  r = ((glMultiTexCoord2iARB = (PFNGLMULTITEXCOORD2IARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2iARB")) == NULL) || r;
-  r = ((glMultiTexCoord2ivARB = (PFNGLMULTITEXCOORD2IVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2ivARB")) == NULL) || r;
-  r = ((glMultiTexCoord2sARB = (PFNGLMULTITEXCOORD2SARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2sARB")) == NULL) || r;
-  r = ((glMultiTexCoord2svARB = (PFNGLMULTITEXCOORD2SVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2svARB")) == NULL) || r;
-  r = ((glMultiTexCoord3dARB = (PFNGLMULTITEXCOORD3DARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3dARB")) == NULL) || r;
-  r = ((glMultiTexCoord3dvARB = (PFNGLMULTITEXCOORD3DVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3dvARB")) == NULL) || r;
-  r = ((glMultiTexCoord3fARB = (PFNGLMULTITEXCOORD3FARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3fARB")) == NULL) || r;
-  r = ((glMultiTexCoord3fvARB = (PFNGLMULTITEXCOORD3FVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3fvARB")) == NULL) || r;
-  r = ((glMultiTexCoord3iARB = (PFNGLMULTITEXCOORD3IARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3iARB")) == NULL) || r;
-  r = ((glMultiTexCoord3ivARB = (PFNGLMULTITEXCOORD3IVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3ivARB")) == NULL) || r;
-  r = ((glMultiTexCoord3sARB = (PFNGLMULTITEXCOORD3SARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3sARB")) == NULL) || r;
-  r = ((glMultiTexCoord3svARB = (PFNGLMULTITEXCOORD3SVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3svARB")) == NULL) || r;
-  r = ((glMultiTexCoord4dARB = (PFNGLMULTITEXCOORD4DARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4dARB")) == NULL) || r;
-  r = ((glMultiTexCoord4dvARB = (PFNGLMULTITEXCOORD4DVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4dvARB")) == NULL) || r;
-  r = ((glMultiTexCoord4fARB = (PFNGLMULTITEXCOORD4FARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4fARB")) == NULL) || r;
-  r = ((glMultiTexCoord4fvARB = (PFNGLMULTITEXCOORD4FVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4fvARB")) == NULL) || r;
-  r = ((glMultiTexCoord4iARB = (PFNGLMULTITEXCOORD4IARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4iARB")) == NULL) || r;
-  r = ((glMultiTexCoord4ivARB = (PFNGLMULTITEXCOORD4IVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4ivARB")) == NULL) || r;
-  r = ((glMultiTexCoord4sARB = (PFNGLMULTITEXCOORD4SARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4sARB")) == NULL) || r;
-  r = ((glMultiTexCoord4svARB = (PFNGLMULTITEXCOORD4SVARBPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4svARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_multitexture */
-
-#ifdef GL_ARB_occlusion_query
-
-static GLboolean _glewInit_GL_ARB_occlusion_query (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBeginQueryARB = (PFNGLBEGINQUERYARBPROC)glewGetProcAddress((const GLubyte*)"glBeginQueryARB")) == NULL) || r;
-  r = ((glDeleteQueriesARB = (PFNGLDELETEQUERIESARBPROC)glewGetProcAddress((const GLubyte*)"glDeleteQueriesARB")) == NULL) || r;
-  r = ((glEndQueryARB = (PFNGLENDQUERYARBPROC)glewGetProcAddress((const GLubyte*)"glEndQueryARB")) == NULL) || r;
-  r = ((glGenQueriesARB = (PFNGLGENQUERIESARBPROC)glewGetProcAddress((const GLubyte*)"glGenQueriesARB")) == NULL) || r;
-  r = ((glGetQueryObjectivARB = (PFNGLGETQUERYOBJECTIVARBPROC)glewGetProcAddress((const GLubyte*)"glGetQueryObjectivARB")) == NULL) || r;
-  r = ((glGetQueryObjectuivARB = (PFNGLGETQUERYOBJECTUIVARBPROC)glewGetProcAddress((const GLubyte*)"glGetQueryObjectuivARB")) == NULL) || r;
-  r = ((glGetQueryivARB = (PFNGLGETQUERYIVARBPROC)glewGetProcAddress((const GLubyte*)"glGetQueryivARB")) == NULL) || r;
-  r = ((glIsQueryARB = (PFNGLISQUERYARBPROC)glewGetProcAddress((const GLubyte*)"glIsQueryARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_occlusion_query */
-
-#ifdef GL_ARB_occlusion_query2
-
-#endif /* GL_ARB_occlusion_query2 */
-
-#ifdef GL_ARB_pixel_buffer_object
-
-#endif /* GL_ARB_pixel_buffer_object */
-
-#ifdef GL_ARB_point_parameters
-
-static GLboolean _glewInit_GL_ARB_point_parameters (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glPointParameterfARB = (PFNGLPOINTPARAMETERFARBPROC)glewGetProcAddress((const GLubyte*)"glPointParameterfARB")) == NULL) || r;
-  r = ((glPointParameterfvARB = (PFNGLPOINTPARAMETERFVARBPROC)glewGetProcAddress((const GLubyte*)"glPointParameterfvARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_point_parameters */
-
-#ifdef GL_ARB_point_sprite
-
-#endif /* GL_ARB_point_sprite */
-
-#ifdef GL_ARB_provoking_vertex
-
-static GLboolean _glewInit_GL_ARB_provoking_vertex (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glProvokingVertex = (PFNGLPROVOKINGVERTEXPROC)glewGetProcAddress((const GLubyte*)"glProvokingVertex")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_provoking_vertex */
-
-#ifdef GL_ARB_sample_shading
-
-static GLboolean _glewInit_GL_ARB_sample_shading (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glMinSampleShadingARB = (PFNGLMINSAMPLESHADINGARBPROC)glewGetProcAddress((const GLubyte*)"glMinSampleShadingARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_sample_shading */
-
-#ifdef GL_ARB_sampler_objects
-
-static GLboolean _glewInit_GL_ARB_sampler_objects (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindSampler = (PFNGLBINDSAMPLERPROC)glewGetProcAddress((const GLubyte*)"glBindSampler")) == NULL) || r;
-  r = ((glDeleteSamplers = (PFNGLDELETESAMPLERSPROC)glewGetProcAddress((const GLubyte*)"glDeleteSamplers")) == NULL) || r;
-  r = ((glGenSamplers = (PFNGLGENSAMPLERSPROC)glewGetProcAddress((const GLubyte*)"glGenSamplers")) == NULL) || r;
-  r = ((glGetSamplerParameterIiv = (PFNGLGETSAMPLERPARAMETERIIVPROC)glewGetProcAddress((const GLubyte*)"glGetSamplerParameterIiv")) == NULL) || r;
-  r = ((glGetSamplerParameterIuiv = (PFNGLGETSAMPLERPARAMETERIUIVPROC)glewGetProcAddress((const GLubyte*)"glGetSamplerParameterIuiv")) == NULL) || r;
-  r = ((glGetSamplerParameterfv = (PFNGLGETSAMPLERPARAMETERFVPROC)glewGetProcAddress((const GLubyte*)"glGetSamplerParameterfv")) == NULL) || r;
-  r = ((glGetSamplerParameteriv = (PFNGLGETSAMPLERPARAMETERIVPROC)glewGetProcAddress((const GLubyte*)"glGetSamplerParameteriv")) == NULL) || r;
-  r = ((glIsSampler = (PFNGLISSAMPLERPROC)glewGetProcAddress((const GLubyte*)"glIsSampler")) == NULL) || r;
-  r = ((glSamplerParameterIiv = (PFNGLSAMPLERPARAMETERIIVPROC)glewGetProcAddress((const GLubyte*)"glSamplerParameterIiv")) == NULL) || r;
-  r = ((glSamplerParameterIuiv = (PFNGLSAMPLERPARAMETERIUIVPROC)glewGetProcAddress((const GLubyte*)"glSamplerParameterIuiv")) == NULL) || r;
-  r = ((glSamplerParameterf = (PFNGLSAMPLERPARAMETERFPROC)glewGetProcAddress((const GLubyte*)"glSamplerParameterf")) == NULL) || r;
-  r = ((glSamplerParameterfv = (PFNGLSAMPLERPARAMETERFVPROC)glewGetProcAddress((const GLubyte*)"glSamplerParameterfv")) == NULL) || r;
-  r = ((glSamplerParameteri = (PFNGLSAMPLERPARAMETERIPROC)glewGetProcAddress((const GLubyte*)"glSamplerParameteri")) == NULL) || r;
-  r = ((glSamplerParameteriv = (PFNGLSAMPLERPARAMETERIVPROC)glewGetProcAddress((const GLubyte*)"glSamplerParameteriv")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_sampler_objects */
-
-#ifdef GL_ARB_seamless_cube_map
-
-#endif /* GL_ARB_seamless_cube_map */
-
-#ifdef GL_ARB_shader_bit_encoding
-
-#endif /* GL_ARB_shader_bit_encoding */
-
-#ifdef GL_ARB_shader_objects
-
-static GLboolean _glewInit_GL_ARB_shader_objects (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glAttachObjectARB = (PFNGLATTACHOBJECTARBPROC)glewGetProcAddress((const GLubyte*)"glAttachObjectARB")) == NULL) || r;
-  r = ((glCompileShaderARB = (PFNGLCOMPILESHADERARBPROC)glewGetProcAddress((const GLubyte*)"glCompileShaderARB")) == NULL) || r;
-  r = ((glCreateProgramObjectARB = (PFNGLCREATEPROGRAMOBJECTARBPROC)glewGetProcAddress((const GLubyte*)"glCreateProgramObjectARB")) == NULL) || r;
-  r = ((glCreateShaderObjectARB = (PFNGLCREATESHADEROBJECTARBPROC)glewGetProcAddress((const GLubyte*)"glCreateShaderObjectARB")) == NULL) || r;
-  r = ((glDeleteObjectARB = (PFNGLDELETEOBJECTARBPROC)glewGetProcAddress((const GLubyte*)"glDeleteObjectARB")) == NULL) || r;
-  r = ((glDetachObjectARB = (PFNGLDETACHOBJECTARBPROC)glewGetProcAddress((const GLubyte*)"glDetachObjectARB")) == NULL) || r;
-  r = ((glGetActiveUniformARB = (PFNGLGETACTIVEUNIFORMARBPROC)glewGetProcAddress((const GLubyte*)"glGetActiveUniformARB")) == NULL) || r;
-  r = ((glGetAttachedObjectsARB = (PFNGLGETATTACHEDOBJECTSARBPROC)glewGetProcAddress((const GLubyte*)"glGetAttachedObjectsARB")) == NULL) || r;
-  r = ((glGetHandleARB = (PFNGLGETHANDLEARBPROC)glewGetProcAddress((const GLubyte*)"glGetHandleARB")) == NULL) || r;
-  r = ((glGetInfoLogARB = (PFNGLGETINFOLOGARBPROC)glewGetProcAddress((const GLubyte*)"glGetInfoLogARB")) == NULL) || r;
-  r = ((glGetObjectParameterfvARB = (PFNGLGETOBJECTPARAMETERFVARBPROC)glewGetProcAddress((const GLubyte*)"glGetObjectParameterfvARB")) == NULL) || r;
-  r = ((glGetObjectParameterivARB = (PFNGLGETOBJECTPARAMETERIVARBPROC)glewGetProcAddress((const GLubyte*)"glGetObjectParameterivARB")) == NULL) || r;
-  r = ((glGetShaderSourceARB = (PFNGLGETSHADERSOURCEARBPROC)glewGetProcAddress((const GLubyte*)"glGetShaderSourceARB")) == NULL) || r;
-  r = ((glGetUniformLocationARB = (PFNGLGETUNIFORMLOCATIONARBPROC)glewGetProcAddress((const GLubyte*)"glGetUniformLocationARB")) == NULL) || r;
-  r = ((glGetUniformfvARB = (PFNGLGETUNIFORMFVARBPROC)glewGetProcAddress((const GLubyte*)"glGetUniformfvARB")) == NULL) || r;
-  r = ((glGetUniformivARB = (PFNGLGETUNIFORMIVARBPROC)glewGetProcAddress((const GLubyte*)"glGetUniformivARB")) == NULL) || r;
-  r = ((glLinkProgramARB = (PFNGLLINKPROGRAMARBPROC)glewGetProcAddress((const GLubyte*)"glLinkProgramARB")) == NULL) || r;
-  r = ((glShaderSourceARB = (PFNGLSHADERSOURCEARBPROC)glewGetProcAddress((const GLubyte*)"glShaderSourceARB")) == NULL) || r;
-  r = ((glUniform1fARB = (PFNGLUNIFORM1FARBPROC)glewGetProcAddress((const GLubyte*)"glUniform1fARB")) == NULL) || r;
-  r = ((glUniform1fvARB = (PFNGLUNIFORM1FVARBPROC)glewGetProcAddress((const GLubyte*)"glUniform1fvARB")) == NULL) || r;
-  r = ((glUniform1iARB = (PFNGLUNIFORM1IARBPROC)glewGetProcAddress((const GLubyte*)"glUniform1iARB")) == NULL) || r;
-  r = ((glUniform1ivARB = (PFNGLUNIFORM1IVARBPROC)glewGetProcAddress((const GLubyte*)"glUniform1ivARB")) == NULL) || r;
-  r = ((glUniform2fARB = (PFNGLUNIFORM2FARBPROC)glewGetProcAddress((const GLubyte*)"glUniform2fARB")) == NULL) || r;
-  r = ((glUniform2fvARB = (PFNGLUNIFORM2FVARBPROC)glewGetProcAddress((const GLubyte*)"glUniform2fvARB")) == NULL) || r;
-  r = ((glUniform2iARB = (PFNGLUNIFORM2IARBPROC)glewGetProcAddress((const GLubyte*)"glUniform2iARB")) == NULL) || r;
-  r = ((glUniform2ivARB = (PFNGLUNIFORM2IVARBPROC)glewGetProcAddress((const GLubyte*)"glUniform2ivARB")) == NULL) || r;
-  r = ((glUniform3fARB = (PFNGLUNIFORM3FARBPROC)glewGetProcAddress((const GLubyte*)"glUniform3fARB")) == NULL) || r;
-  r = ((glUniform3fvARB = (PFNGLUNIFORM3FVARBPROC)glewGetProcAddress((const GLubyte*)"glUniform3fvARB")) == NULL) || r;
-  r = ((glUniform3iARB = (PFNGLUNIFORM3IARBPROC)glewGetProcAddress((const GLubyte*)"glUniform3iARB")) == NULL) || r;
-  r = ((glUniform3ivARB = (PFNGLUNIFORM3IVARBPROC)glewGetProcAddress((const GLubyte*)"glUniform3ivARB")) == NULL) || r;
-  r = ((glUniform4fARB = (PFNGLUNIFORM4FARBPROC)glewGetProcAddress((const GLubyte*)"glUniform4fARB")) == NULL) || r;
-  r = ((glUniform4fvARB = (PFNGLUNIFORM4FVARBPROC)glewGetProcAddress((const GLubyte*)"glUniform4fvARB")) == NULL) || r;
-  r = ((glUniform4iARB = (PFNGLUNIFORM4IARBPROC)glewGetProcAddress((const GLubyte*)"glUniform4iARB")) == NULL) || r;
-  r = ((glUniform4ivARB = (PFNGLUNIFORM4IVARBPROC)glewGetProcAddress((const GLubyte*)"glUniform4ivARB")) == NULL) || r;
-  r = ((glUniformMatrix2fvARB = (PFNGLUNIFORMMATRIX2FVARBPROC)glewGetProcAddress((const GLubyte*)"glUniformMatrix2fvARB")) == NULL) || r;
-  r = ((glUniformMatrix3fvARB = (PFNGLUNIFORMMATRIX3FVARBPROC)glewGetProcAddress((const GLubyte*)"glUniformMatrix3fvARB")) == NULL) || r;
-  r = ((glUniformMatrix4fvARB = (PFNGLUNIFORMMATRIX4FVARBPROC)glewGetProcAddress((const GLubyte*)"glUniformMatrix4fvARB")) == NULL) || r;
-  r = ((glUseProgramObjectARB = (PFNGLUSEPROGRAMOBJECTARBPROC)glewGetProcAddress((const GLubyte*)"glUseProgramObjectARB")) == NULL) || r;
-  r = ((glValidateProgramARB = (PFNGLVALIDATEPROGRAMARBPROC)glewGetProcAddress((const GLubyte*)"glValidateProgramARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_shader_objects */
-
-#ifdef GL_ARB_shader_subroutine
-
-static GLboolean _glewInit_GL_ARB_shader_subroutine (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetActiveSubroutineName = (PFNGLGETACTIVESUBROUTINENAMEPROC)glewGetProcAddress((const GLubyte*)"glGetActiveSubroutineName")) == NULL) || r;
-  r = ((glGetActiveSubroutineUniformName = (PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC)glewGetProcAddress((const GLubyte*)"glGetActiveSubroutineUniformName")) == NULL) || r;
-  r = ((glGetActiveSubroutineUniformiv = (PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC)glewGetProcAddress((const GLubyte*)"glGetActiveSubroutineUniformiv")) == NULL) || r;
-  r = ((glGetProgramStageiv = (PFNGLGETPROGRAMSTAGEIVPROC)glewGetProcAddress((const GLubyte*)"glGetProgramStageiv")) == NULL) || r;
-  r = ((glGetSubroutineIndex = (PFNGLGETSUBROUTINEINDEXPROC)glewGetProcAddress((const GLubyte*)"glGetSubroutineIndex")) == NULL) || r;
-  r = ((glGetSubroutineUniformLocation = (PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC)glewGetProcAddress((const GLubyte*)"glGetSubroutineUniformLocation")) == NULL) || r;
-  r = ((glGetUniformSubroutineuiv = (PFNGLGETUNIFORMSUBROUTINEUIVPROC)glewGetProcAddress((const GLubyte*)"glGetUniformSubroutineuiv")) == NULL) || r;
-  r = ((glUniformSubroutinesuiv = (PFNGLUNIFORMSUBROUTINESUIVPROC)glewGetProcAddress((const GLubyte*)"glUniformSubroutinesuiv")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_shader_subroutine */
-
-#ifdef GL_ARB_shader_texture_lod
-
-#endif /* GL_ARB_shader_texture_lod */
-
-#ifdef GL_ARB_shading_language_100
-
-#endif /* GL_ARB_shading_language_100 */
-
-#ifdef GL_ARB_shading_language_include
-
-static GLboolean _glewInit_GL_ARB_shading_language_include (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glCompileShaderIncludeARB = (PFNGLCOMPILESHADERINCLUDEARBPROC)glewGetProcAddress((const GLubyte*)"glCompileShaderIncludeARB")) == NULL) || r;
-  r = ((glDeleteNamedStringARB = (PFNGLDELETENAMEDSTRINGARBPROC)glewGetProcAddress((const GLubyte*)"glDeleteNamedStringARB")) == NULL) || r;
-  r = ((glGetNamedStringARB = (PFNGLGETNAMEDSTRINGARBPROC)glewGetProcAddress((const GLubyte*)"glGetNamedStringARB")) == NULL) || r;
-  r = ((glGetNamedStringivARB = (PFNGLGETNAMEDSTRINGIVARBPROC)glewGetProcAddress((const GLubyte*)"glGetNamedStringivARB")) == NULL) || r;
-  r = ((glIsNamedStringARB = (PFNGLISNAMEDSTRINGARBPROC)glewGetProcAddress((const GLubyte*)"glIsNamedStringARB")) == NULL) || r;
-  r = ((glNamedStringARB = (PFNGLNAMEDSTRINGARBPROC)glewGetProcAddress((const GLubyte*)"glNamedStringARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_shading_language_include */
-
-#ifdef GL_ARB_shadow
-
-#endif /* GL_ARB_shadow */
-
-#ifdef GL_ARB_shadow_ambient
-
-#endif /* GL_ARB_shadow_ambient */
-
-#ifdef GL_ARB_sync
-
-static GLboolean _glewInit_GL_ARB_sync (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glClientWaitSync = (PFNGLCLIENTWAITSYNCPROC)glewGetProcAddress((const GLubyte*)"glClientWaitSync")) == NULL) || r;
-  r = ((glDeleteSync = (PFNGLDELETESYNCPROC)glewGetProcAddress((const GLubyte*)"glDeleteSync")) == NULL) || r;
-  r = ((glFenceSync = (PFNGLFENCESYNCPROC)glewGetProcAddress((const GLubyte*)"glFenceSync")) == NULL) || r;
-  r = ((glGetInteger64v = (PFNGLGETINTEGER64VPROC)glewGetProcAddress((const GLubyte*)"glGetInteger64v")) == NULL) || r;
-  r = ((glGetSynciv = (PFNGLGETSYNCIVPROC)glewGetProcAddress((const GLubyte*)"glGetSynciv")) == NULL) || r;
-  r = ((glIsSync = (PFNGLISSYNCPROC)glewGetProcAddress((const GLubyte*)"glIsSync")) == NULL) || r;
-  r = ((glWaitSync = (PFNGLWAITSYNCPROC)glewGetProcAddress((const GLubyte*)"glWaitSync")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_sync */
-
-#ifdef GL_ARB_tessellation_shader
-
-static GLboolean _glewInit_GL_ARB_tessellation_shader (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glPatchParameterfv = (PFNGLPATCHPARAMETERFVPROC)glewGetProcAddress((const GLubyte*)"glPatchParameterfv")) == NULL) || r;
-  r = ((glPatchParameteri = (PFNGLPATCHPARAMETERIPROC)glewGetProcAddress((const GLubyte*)"glPatchParameteri")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_tessellation_shader */
-
-#ifdef GL_ARB_texture_border_clamp
-
-#endif /* GL_ARB_texture_border_clamp */
-
-#ifdef GL_ARB_texture_buffer_object
-
-static GLboolean _glewInit_GL_ARB_texture_buffer_object (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glTexBufferARB = (PFNGLTEXBUFFERARBPROC)glewGetProcAddress((const GLubyte*)"glTexBufferARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_texture_buffer_object */
-
-#ifdef GL_ARB_texture_buffer_object_rgb32
-
-#endif /* GL_ARB_texture_buffer_object_rgb32 */
-
-#ifdef GL_ARB_texture_compression
-
-static GLboolean _glewInit_GL_ARB_texture_compression (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glCompressedTexImage1DARB = (PFNGLCOMPRESSEDTEXIMAGE1DARBPROC)glewGetProcAddress((const GLubyte*)"glCompressedTexImage1DARB")) == NULL) || r;
-  r = ((glCompressedTexImage2DARB = (PFNGLCOMPRESSEDTEXIMAGE2DARBPROC)glewGetProcAddress((const GLubyte*)"glCompressedTexImage2DARB")) == NULL) || r;
-  r = ((glCompressedTexImage3DARB = (PFNGLCOMPRESSEDTEXIMAGE3DARBPROC)glewGetProcAddress((const GLubyte*)"glCompressedTexImage3DARB")) == NULL) || r;
-  r = ((glCompressedTexSubImage1DARB = (PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC)glewGetProcAddress((const GLubyte*)"glCompressedTexSubImage1DARB")) == NULL) || r;
-  r = ((glCompressedTexSubImage2DARB = (PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC)glewGetProcAddress((const GLubyte*)"glCompressedTexSubImage2DARB")) == NULL) || r;
-  r = ((glCompressedTexSubImage3DARB = (PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC)glewGetProcAddress((const GLubyte*)"glCompressedTexSubImage3DARB")) == NULL) || r;
-  r = ((glGetCompressedTexImageARB = (PFNGLGETCOMPRESSEDTEXIMAGEARBPROC)glewGetProcAddress((const GLubyte*)"glGetCompressedTexImageARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_texture_compression */
-
-#ifdef GL_ARB_texture_compression_bptc
-
-#endif /* GL_ARB_texture_compression_bptc */
-
-#ifdef GL_ARB_texture_compression_rgtc
-
-#endif /* GL_ARB_texture_compression_rgtc */
-
-#ifdef GL_ARB_texture_cube_map
-
-#endif /* GL_ARB_texture_cube_map */
-
-#ifdef GL_ARB_texture_cube_map_array
-
-#endif /* GL_ARB_texture_cube_map_array */
-
-#ifdef GL_ARB_texture_env_add
-
-#endif /* GL_ARB_texture_env_add */
-
-#ifdef GL_ARB_texture_env_combine
-
-#endif /* GL_ARB_texture_env_combine */
-
-#ifdef GL_ARB_texture_env_crossbar
-
-#endif /* GL_ARB_texture_env_crossbar */
-
-#ifdef GL_ARB_texture_env_dot3
-
-#endif /* GL_ARB_texture_env_dot3 */
-
-#ifdef GL_ARB_texture_float
-
-#endif /* GL_ARB_texture_float */
-
-#ifdef GL_ARB_texture_gather
-
-#endif /* GL_ARB_texture_gather */
-
-#ifdef GL_ARB_texture_mirrored_repeat
-
-#endif /* GL_ARB_texture_mirrored_repeat */
-
-#ifdef GL_ARB_texture_multisample
-
-static GLboolean _glewInit_GL_ARB_texture_multisample (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetMultisamplefv = (PFNGLGETMULTISAMPLEFVPROC)glewGetProcAddress((const GLubyte*)"glGetMultisamplefv")) == NULL) || r;
-  r = ((glSampleMaski = (PFNGLSAMPLEMASKIPROC)glewGetProcAddress((const GLubyte*)"glSampleMaski")) == NULL) || r;
-  r = ((glTexImage2DMultisample = (PFNGLTEXIMAGE2DMULTISAMPLEPROC)glewGetProcAddress((const GLubyte*)"glTexImage2DMultisample")) == NULL) || r;
-  r = ((glTexImage3DMultisample = (PFNGLTEXIMAGE3DMULTISAMPLEPROC)glewGetProcAddress((const GLubyte*)"glTexImage3DMultisample")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_texture_multisample */
-
-#ifdef GL_ARB_texture_non_power_of_two
-
-#endif /* GL_ARB_texture_non_power_of_two */
-
-#ifdef GL_ARB_texture_query_lod
-
-#endif /* GL_ARB_texture_query_lod */
-
-#ifdef GL_ARB_texture_rectangle
-
-#endif /* GL_ARB_texture_rectangle */
-
-#ifdef GL_ARB_texture_rg
-
-#endif /* GL_ARB_texture_rg */
-
-#ifdef GL_ARB_texture_rgb10_a2ui
-
-#endif /* GL_ARB_texture_rgb10_a2ui */
-
-#ifdef GL_ARB_texture_swizzle
-
-#endif /* GL_ARB_texture_swizzle */
-
-#ifdef GL_ARB_timer_query
-
-static GLboolean _glewInit_GL_ARB_timer_query (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetQueryObjecti64v = (PFNGLGETQUERYOBJECTI64VPROC)glewGetProcAddress((const GLubyte*)"glGetQueryObjecti64v")) == NULL) || r;
-  r = ((glGetQueryObjectui64v = (PFNGLGETQUERYOBJECTUI64VPROC)glewGetProcAddress((const GLubyte*)"glGetQueryObjectui64v")) == NULL) || r;
-  r = ((glQueryCounter = (PFNGLQUERYCOUNTERPROC)glewGetProcAddress((const GLubyte*)"glQueryCounter")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_timer_query */
-
-#ifdef GL_ARB_transform_feedback2
-
-static GLboolean _glewInit_GL_ARB_transform_feedback2 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindTransformFeedback = (PFNGLBINDTRANSFORMFEEDBACKPROC)glewGetProcAddress((const GLubyte*)"glBindTransformFeedback")) == NULL) || r;
-  r = ((glDeleteTransformFeedbacks = (PFNGLDELETETRANSFORMFEEDBACKSPROC)glewGetProcAddress((const GLubyte*)"glDeleteTransformFeedbacks")) == NULL) || r;
-  r = ((glDrawTransformFeedback = (PFNGLDRAWTRANSFORMFEEDBACKPROC)glewGetProcAddress((const GLubyte*)"glDrawTransformFeedback")) == NULL) || r;
-  r = ((glGenTransformFeedbacks = (PFNGLGENTRANSFORMFEEDBACKSPROC)glewGetProcAddress((const GLubyte*)"glGenTransformFeedbacks")) == NULL) || r;
-  r = ((glIsTransformFeedback = (PFNGLISTRANSFORMFEEDBACKPROC)glewGetProcAddress((const GLubyte*)"glIsTransformFeedback")) == NULL) || r;
-  r = ((glPauseTransformFeedback = (PFNGLPAUSETRANSFORMFEEDBACKPROC)glewGetProcAddress((const GLubyte*)"glPauseTransformFeedback")) == NULL) || r;
-  r = ((glResumeTransformFeedback = (PFNGLRESUMETRANSFORMFEEDBACKPROC)glewGetProcAddress((const GLubyte*)"glResumeTransformFeedback")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_transform_feedback2 */
-
-#ifdef GL_ARB_transform_feedback3
-
-static GLboolean _glewInit_GL_ARB_transform_feedback3 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBeginQueryIndexed = (PFNGLBEGINQUERYINDEXEDPROC)glewGetProcAddress((const GLubyte*)"glBeginQueryIndexed")) == NULL) || r;
-  r = ((glDrawTransformFeedbackStream = (PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC)glewGetProcAddress((const GLubyte*)"glDrawTransformFeedbackStream")) == NULL) || r;
-  r = ((glEndQueryIndexed = (PFNGLENDQUERYINDEXEDPROC)glewGetProcAddress((const GLubyte*)"glEndQueryIndexed")) == NULL) || r;
-  r = ((glGetQueryIndexediv = (PFNGLGETQUERYINDEXEDIVPROC)glewGetProcAddress((const GLubyte*)"glGetQueryIndexediv")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_transform_feedback3 */
-
-#ifdef GL_ARB_transpose_matrix
-
-static GLboolean _glewInit_GL_ARB_transpose_matrix (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glLoadTransposeMatrixdARB = (PFNGLLOADTRANSPOSEMATRIXDARBPROC)glewGetProcAddress((const GLubyte*)"glLoadTransposeMatrixdARB")) == NULL) || r;
-  r = ((glLoadTransposeMatrixfARB = (PFNGLLOADTRANSPOSEMATRIXFARBPROC)glewGetProcAddress((const GLubyte*)"glLoadTransposeMatrixfARB")) == NULL) || r;
-  r = ((glMultTransposeMatrixdARB = (PFNGLMULTTRANSPOSEMATRIXDARBPROC)glewGetProcAddress((const GLubyte*)"glMultTransposeMatrixdARB")) == NULL) || r;
-  r = ((glMultTransposeMatrixfARB = (PFNGLMULTTRANSPOSEMATRIXFARBPROC)glewGetProcAddress((const GLubyte*)"glMultTransposeMatrixfARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_transpose_matrix */
-
-#ifdef GL_ARB_uniform_buffer_object
-
-static GLboolean _glewInit_GL_ARB_uniform_buffer_object (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindBufferBase = (PFNGLBINDBUFFERBASEPROC)glewGetProcAddress((const GLubyte*)"glBindBufferBase")) == NULL) || r;
-  r = ((glBindBufferRange = (PFNGLBINDBUFFERRANGEPROC)glewGetProcAddress((const GLubyte*)"glBindBufferRange")) == NULL) || r;
-  r = ((glGetActiveUniformBlockName = (PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC)glewGetProcAddress((const GLubyte*)"glGetActiveUniformBlockName")) == NULL) || r;
-  r = ((glGetActiveUniformBlockiv = (PFNGLGETACTIVEUNIFORMBLOCKIVPROC)glewGetProcAddress((const GLubyte*)"glGetActiveUniformBlockiv")) == NULL) || r;
-  r = ((glGetActiveUniformName = (PFNGLGETACTIVEUNIFORMNAMEPROC)glewGetProcAddress((const GLubyte*)"glGetActiveUniformName")) == NULL) || r;
-  r = ((glGetActiveUniformsiv = (PFNGLGETACTIVEUNIFORMSIVPROC)glewGetProcAddress((const GLubyte*)"glGetActiveUniformsiv")) == NULL) || r;
-  r = ((glGetIntegeri_v = (PFNGLGETINTEGERI_VPROC)glewGetProcAddress((const GLubyte*)"glGetIntegeri_v")) == NULL) || r;
-  r = ((glGetUniformBlockIndex = (PFNGLGETUNIFORMBLOCKINDEXPROC)glewGetProcAddress((const GLubyte*)"glGetUniformBlockIndex")) == NULL) || r;
-  r = ((glGetUniformIndices = (PFNGLGETUNIFORMINDICESPROC)glewGetProcAddress((const GLubyte*)"glGetUniformIndices")) == NULL) || r;
-  r = ((glUniformBlockBinding = (PFNGLUNIFORMBLOCKBINDINGPROC)glewGetProcAddress((const GLubyte*)"glUniformBlockBinding")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_uniform_buffer_object */
-
-#ifdef GL_ARB_vertex_array_bgra
-
-#endif /* GL_ARB_vertex_array_bgra */
-
-#ifdef GL_ARB_vertex_array_object
-
-static GLboolean _glewInit_GL_ARB_vertex_array_object (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindVertexArray = (PFNGLBINDVERTEXARRAYPROC)glewGetProcAddress((const GLubyte*)"glBindVertexArray")) == NULL) || r;
-  r = ((glDeleteVertexArrays = (PFNGLDELETEVERTEXARRAYSPROC)glewGetProcAddress((const GLubyte*)"glDeleteVertexArrays")) == NULL) || r;
-  r = ((glGenVertexArrays = (PFNGLGENVERTEXARRAYSPROC)glewGetProcAddress((const GLubyte*)"glGenVertexArrays")) == NULL) || r;
-  r = ((glIsVertexArray = (PFNGLISVERTEXARRAYPROC)glewGetProcAddress((const GLubyte*)"glIsVertexArray")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_vertex_array_object */
-
-#ifdef GL_ARB_vertex_blend
-
-static GLboolean _glewInit_GL_ARB_vertex_blend (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glVertexBlendARB = (PFNGLVERTEXBLENDARBPROC)glewGetProcAddress((const GLubyte*)"glVertexBlendARB")) == NULL) || r;
-  r = ((glWeightPointerARB = (PFNGLWEIGHTPOINTERARBPROC)glewGetProcAddress((const GLubyte*)"glWeightPointerARB")) == NULL) || r;
-  r = ((glWeightbvARB = (PFNGLWEIGHTBVARBPROC)glewGetProcAddress((const GLubyte*)"glWeightbvARB")) == NULL) || r;
-  r = ((glWeightdvARB = (PFNGLWEIGHTDVARBPROC)glewGetProcAddress((const GLubyte*)"glWeightdvARB")) == NULL) || r;
-  r = ((glWeightfvARB = (PFNGLWEIGHTFVARBPROC)glewGetProcAddress((const GLubyte*)"glWeightfvARB")) == NULL) || r;
-  r = ((glWeightivARB = (PFNGLWEIGHTIVARBPROC)glewGetProcAddress((const GLubyte*)"glWeightivARB")) == NULL) || r;
-  r = ((glWeightsvARB = (PFNGLWEIGHTSVARBPROC)glewGetProcAddress((const GLubyte*)"glWeightsvARB")) == NULL) || r;
-  r = ((glWeightubvARB = (PFNGLWEIGHTUBVARBPROC)glewGetProcAddress((const GLubyte*)"glWeightubvARB")) == NULL) || r;
-  r = ((glWeightuivARB = (PFNGLWEIGHTUIVARBPROC)glewGetProcAddress((const GLubyte*)"glWeightuivARB")) == NULL) || r;
-  r = ((glWeightusvARB = (PFNGLWEIGHTUSVARBPROC)glewGetProcAddress((const GLubyte*)"glWeightusvARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_vertex_blend */
-
-#ifdef GL_ARB_vertex_buffer_object
-
-static GLboolean _glewInit_GL_ARB_vertex_buffer_object (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindBufferARB = (PFNGLBINDBUFFERARBPROC)glewGetProcAddress((const GLubyte*)"glBindBufferARB")) == NULL) || r;
-  r = ((glBufferDataARB = (PFNGLBUFFERDATAARBPROC)glewGetProcAddress((const GLubyte*)"glBufferDataARB")) == NULL) || r;
-  r = ((glBufferSubDataARB = (PFNGLBUFFERSUBDATAARBPROC)glewGetProcAddress((const GLubyte*)"glBufferSubDataARB")) == NULL) || r;
-  r = ((glDeleteBuffersARB = (PFNGLDELETEBUFFERSARBPROC)glewGetProcAddress((const GLubyte*)"glDeleteBuffersARB")) == NULL) || r;
-  r = ((glGenBuffersARB = (PFNGLGENBUFFERSARBPROC)glewGetProcAddress((const GLubyte*)"glGenBuffersARB")) == NULL) || r;
-  r = ((glGetBufferParameterivARB = (PFNGLGETBUFFERPARAMETERIVARBPROC)glewGetProcAddress((const GLubyte*)"glGetBufferParameterivARB")) == NULL) || r;
-  r = ((glGetBufferPointervARB = (PFNGLGETBUFFERPOINTERVARBPROC)glewGetProcAddress((const GLubyte*)"glGetBufferPointervARB")) == NULL) || r;
-  r = ((glGetBufferSubDataARB = (PFNGLGETBUFFERSUBDATAARBPROC)glewGetProcAddress((const GLubyte*)"glGetBufferSubDataARB")) == NULL) || r;
-  r = ((glIsBufferARB = (PFNGLISBUFFERARBPROC)glewGetProcAddress((const GLubyte*)"glIsBufferARB")) == NULL) || r;
-  r = ((glMapBufferARB = (PFNGLMAPBUFFERARBPROC)glewGetProcAddress((const GLubyte*)"glMapBufferARB")) == NULL) || r;
-  r = ((glUnmapBufferARB = (PFNGLUNMAPBUFFERARBPROC)glewGetProcAddress((const GLubyte*)"glUnmapBufferARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_vertex_buffer_object */
-
-#ifdef GL_ARB_vertex_program
-
-static GLboolean _glewInit_GL_ARB_vertex_program (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindProgramARB = (PFNGLBINDPROGRAMARBPROC)glewGetProcAddress((const GLubyte*)"glBindProgramARB")) == NULL) || r;
-  r = ((glDeleteProgramsARB = (PFNGLDELETEPROGRAMSARBPROC)glewGetProcAddress((const GLubyte*)"glDeleteProgramsARB")) == NULL) || r;
-  r = ((glDisableVertexAttribArrayARB = (PFNGLDISABLEVERTEXATTRIBARRAYARBPROC)glewGetProcAddress((const GLubyte*)"glDisableVertexAttribArrayARB")) == NULL) || r;
-  r = ((glEnableVertexAttribArrayARB = (PFNGLENABLEVERTEXATTRIBARRAYARBPROC)glewGetProcAddress((const GLubyte*)"glEnableVertexAttribArrayARB")) == NULL) || r;
-  r = ((glGenProgramsARB = (PFNGLGENPROGRAMSARBPROC)glewGetProcAddress((const GLubyte*)"glGenProgramsARB")) == NULL) || r;
-  r = ((glGetProgramEnvParameterdvARB = (PFNGLGETPROGRAMENVPARAMETERDVARBPROC)glewGetProcAddress((const GLubyte*)"glGetProgramEnvParameterdvARB")) == NULL) || r;
-  r = ((glGetProgramEnvParameterfvARB = (PFNGLGETPROGRAMENVPARAMETERFVARBPROC)glewGetProcAddress((const GLubyte*)"glGetProgramEnvParameterfvARB")) == NULL) || r;
-  r = ((glGetProgramLocalParameterdvARB = (PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC)glewGetProcAddress((const GLubyte*)"glGetProgramLocalParameterdvARB")) == NULL) || r;
-  r = ((glGetProgramLocalParameterfvARB = (PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC)glewGetProcAddress((const GLubyte*)"glGetProgramLocalParameterfvARB")) == NULL) || r;
-  r = ((glGetProgramStringARB = (PFNGLGETPROGRAMSTRINGARBPROC)glewGetProcAddress((const GLubyte*)"glGetProgramStringARB")) == NULL) || r;
-  r = ((glGetProgramivARB = (PFNGLGETPROGRAMIVARBPROC)glewGetProcAddress((const GLubyte*)"glGetProgramivARB")) == NULL) || r;
-  r = ((glGetVertexAttribPointervARB = (PFNGLGETVERTEXATTRIBPOINTERVARBPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribPointervARB")) == NULL) || r;
-  r = ((glGetVertexAttribdvARB = (PFNGLGETVERTEXATTRIBDVARBPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribdvARB")) == NULL) || r;
-  r = ((glGetVertexAttribfvARB = (PFNGLGETVERTEXATTRIBFVARBPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribfvARB")) == NULL) || r;
-  r = ((glGetVertexAttribivARB = (PFNGLGETVERTEXATTRIBIVARBPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribivARB")) == NULL) || r;
-  r = ((glIsProgramARB = (PFNGLISPROGRAMARBPROC)glewGetProcAddress((const GLubyte*)"glIsProgramARB")) == NULL) || r;
-  r = ((glProgramEnvParameter4dARB = (PFNGLPROGRAMENVPARAMETER4DARBPROC)glewGetProcAddress((const GLubyte*)"glProgramEnvParameter4dARB")) == NULL) || r;
-  r = ((glProgramEnvParameter4dvARB = (PFNGLPROGRAMENVPARAMETER4DVARBPROC)glewGetProcAddress((const GLubyte*)"glProgramEnvParameter4dvARB")) == NULL) || r;
-  r = ((glProgramEnvParameter4fARB = (PFNGLPROGRAMENVPARAMETER4FARBPROC)glewGetProcAddress((const GLubyte*)"glProgramEnvParameter4fARB")) == NULL) || r;
-  r = ((glProgramEnvParameter4fvARB = (PFNGLPROGRAMENVPARAMETER4FVARBPROC)glewGetProcAddress((const GLubyte*)"glProgramEnvParameter4fvARB")) == NULL) || r;
-  r = ((glProgramLocalParameter4dARB = (PFNGLPROGRAMLOCALPARAMETER4DARBPROC)glewGetProcAddress((const GLubyte*)"glProgramLocalParameter4dARB")) == NULL) || r;
-  r = ((glProgramLocalParameter4dvARB = (PFNGLPROGRAMLOCALPARAMETER4DVARBPROC)glewGetProcAddress((const GLubyte*)"glProgramLocalParameter4dvARB")) == NULL) || r;
-  r = ((glProgramLocalParameter4fARB = (PFNGLPROGRAMLOCALPARAMETER4FARBPROC)glewGetProcAddress((const GLubyte*)"glProgramLocalParameter4fARB")) == NULL) || r;
-  r = ((glProgramLocalParameter4fvARB = (PFNGLPROGRAMLOCALPARAMETER4FVARBPROC)glewGetProcAddress((const GLubyte*)"glProgramLocalParameter4fvARB")) == NULL) || r;
-  r = ((glProgramStringARB = (PFNGLPROGRAMSTRINGARBPROC)glewGetProcAddress((const GLubyte*)"glProgramStringARB")) == NULL) || r;
-  r = ((glVertexAttrib1dARB = (PFNGLVERTEXATTRIB1DARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1dARB")) == NULL) || r;
-  r = ((glVertexAttrib1dvARB = (PFNGLVERTEXATTRIB1DVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1dvARB")) == NULL) || r;
-  r = ((glVertexAttrib1fARB = (PFNGLVERTEXATTRIB1FARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1fARB")) == NULL) || r;
-  r = ((glVertexAttrib1fvARB = (PFNGLVERTEXATTRIB1FVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1fvARB")) == NULL) || r;
-  r = ((glVertexAttrib1sARB = (PFNGLVERTEXATTRIB1SARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1sARB")) == NULL) || r;
-  r = ((glVertexAttrib1svARB = (PFNGLVERTEXATTRIB1SVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1svARB")) == NULL) || r;
-  r = ((glVertexAttrib2dARB = (PFNGLVERTEXATTRIB2DARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2dARB")) == NULL) || r;
-  r = ((glVertexAttrib2dvARB = (PFNGLVERTEXATTRIB2DVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2dvARB")) == NULL) || r;
-  r = ((glVertexAttrib2fARB = (PFNGLVERTEXATTRIB2FARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2fARB")) == NULL) || r;
-  r = ((glVertexAttrib2fvARB = (PFNGLVERTEXATTRIB2FVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2fvARB")) == NULL) || r;
-  r = ((glVertexAttrib2sARB = (PFNGLVERTEXATTRIB2SARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2sARB")) == NULL) || r;
-  r = ((glVertexAttrib2svARB = (PFNGLVERTEXATTRIB2SVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2svARB")) == NULL) || r;
-  r = ((glVertexAttrib3dARB = (PFNGLVERTEXATTRIB3DARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3dARB")) == NULL) || r;
-  r = ((glVertexAttrib3dvARB = (PFNGLVERTEXATTRIB3DVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3dvARB")) == NULL) || r;
-  r = ((glVertexAttrib3fARB = (PFNGLVERTEXATTRIB3FARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3fARB")) == NULL) || r;
-  r = ((glVertexAttrib3fvARB = (PFNGLVERTEXATTRIB3FVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3fvARB")) == NULL) || r;
-  r = ((glVertexAttrib3sARB = (PFNGLVERTEXATTRIB3SARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3sARB")) == NULL) || r;
-  r = ((glVertexAttrib3svARB = (PFNGLVERTEXATTRIB3SVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3svARB")) == NULL) || r;
-  r = ((glVertexAttrib4NbvARB = (PFNGLVERTEXATTRIB4NBVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4NbvARB")) == NULL) || r;
-  r = ((glVertexAttrib4NivARB = (PFNGLVERTEXATTRIB4NIVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4NivARB")) == NULL) || r;
-  r = ((glVertexAttrib4NsvARB = (PFNGLVERTEXATTRIB4NSVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4NsvARB")) == NULL) || r;
-  r = ((glVertexAttrib4NubARB = (PFNGLVERTEXATTRIB4NUBARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4NubARB")) == NULL) || r;
-  r = ((glVertexAttrib4NubvARB = (PFNGLVERTEXATTRIB4NUBVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4NubvARB")) == NULL) || r;
-  r = ((glVertexAttrib4NuivARB = (PFNGLVERTEXATTRIB4NUIVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4NuivARB")) == NULL) || r;
-  r = ((glVertexAttrib4NusvARB = (PFNGLVERTEXATTRIB4NUSVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4NusvARB")) == NULL) || r;
-  r = ((glVertexAttrib4bvARB = (PFNGLVERTEXATTRIB4BVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4bvARB")) == NULL) || r;
-  r = ((glVertexAttrib4dARB = (PFNGLVERTEXATTRIB4DARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4dARB")) == NULL) || r;
-  r = ((glVertexAttrib4dvARB = (PFNGLVERTEXATTRIB4DVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4dvARB")) == NULL) || r;
-  r = ((glVertexAttrib4fARB = (PFNGLVERTEXATTRIB4FARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4fARB")) == NULL) || r;
-  r = ((glVertexAttrib4fvARB = (PFNGLVERTEXATTRIB4FVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4fvARB")) == NULL) || r;
-  r = ((glVertexAttrib4ivARB = (PFNGLVERTEXATTRIB4IVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4ivARB")) == NULL) || r;
-  r = ((glVertexAttrib4sARB = (PFNGLVERTEXATTRIB4SARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4sARB")) == NULL) || r;
-  r = ((glVertexAttrib4svARB = (PFNGLVERTEXATTRIB4SVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4svARB")) == NULL) || r;
-  r = ((glVertexAttrib4ubvARB = (PFNGLVERTEXATTRIB4UBVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4ubvARB")) == NULL) || r;
-  r = ((glVertexAttrib4uivARB = (PFNGLVERTEXATTRIB4UIVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4uivARB")) == NULL) || r;
-  r = ((glVertexAttrib4usvARB = (PFNGLVERTEXATTRIB4USVARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4usvARB")) == NULL) || r;
-  r = ((glVertexAttribPointerARB = (PFNGLVERTEXATTRIBPOINTERARBPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribPointerARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_vertex_program */
-
-#ifdef GL_ARB_vertex_shader
-
-static GLboolean _glewInit_GL_ARB_vertex_shader (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindAttribLocationARB = (PFNGLBINDATTRIBLOCATIONARBPROC)glewGetProcAddress((const GLubyte*)"glBindAttribLocationARB")) == NULL) || r;
-  r = ((glGetActiveAttribARB = (PFNGLGETACTIVEATTRIBARBPROC)glewGetProcAddress((const GLubyte*)"glGetActiveAttribARB")) == NULL) || r;
-  r = ((glGetAttribLocationARB = (PFNGLGETATTRIBLOCATIONARBPROC)glewGetProcAddress((const GLubyte*)"glGetAttribLocationARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_vertex_shader */
-
-#ifdef GL_ARB_vertex_type_2_10_10_10_rev
-
-static GLboolean _glewInit_GL_ARB_vertex_type_2_10_10_10_rev (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glColorP3ui = (PFNGLCOLORP3UIPROC)glewGetProcAddress((const GLubyte*)"glColorP3ui")) == NULL) || r;
-  r = ((glColorP3uiv = (PFNGLCOLORP3UIVPROC)glewGetProcAddress((const GLubyte*)"glColorP3uiv")) == NULL) || r;
-  r = ((glColorP4ui = (PFNGLCOLORP4UIPROC)glewGetProcAddress((const GLubyte*)"glColorP4ui")) == NULL) || r;
-  r = ((glColorP4uiv = (PFNGLCOLORP4UIVPROC)glewGetProcAddress((const GLubyte*)"glColorP4uiv")) == NULL) || r;
-  r = ((glMultiTexCoordP1ui = (PFNGLMULTITEXCOORDP1UIPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoordP1ui")) == NULL) || r;
-  r = ((glMultiTexCoordP1uiv = (PFNGLMULTITEXCOORDP1UIVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoordP1uiv")) == NULL) || r;
-  r = ((glMultiTexCoordP2ui = (PFNGLMULTITEXCOORDP2UIPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoordP2ui")) == NULL) || r;
-  r = ((glMultiTexCoordP2uiv = (PFNGLMULTITEXCOORDP2UIVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoordP2uiv")) == NULL) || r;
-  r = ((glMultiTexCoordP3ui = (PFNGLMULTITEXCOORDP3UIPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoordP3ui")) == NULL) || r;
-  r = ((glMultiTexCoordP3uiv = (PFNGLMULTITEXCOORDP3UIVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoordP3uiv")) == NULL) || r;
-  r = ((glMultiTexCoordP4ui = (PFNGLMULTITEXCOORDP4UIPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoordP4ui")) == NULL) || r;
-  r = ((glMultiTexCoordP4uiv = (PFNGLMULTITEXCOORDP4UIVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoordP4uiv")) == NULL) || r;
-  r = ((glNormalP3ui = (PFNGLNORMALP3UIPROC)glewGetProcAddress((const GLubyte*)"glNormalP3ui")) == NULL) || r;
-  r = ((glNormalP3uiv = (PFNGLNORMALP3UIVPROC)glewGetProcAddress((const GLubyte*)"glNormalP3uiv")) == NULL) || r;
-  r = ((glSecondaryColorP3ui = (PFNGLSECONDARYCOLORP3UIPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColorP3ui")) == NULL) || r;
-  r = ((glSecondaryColorP3uiv = (PFNGLSECONDARYCOLORP3UIVPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColorP3uiv")) == NULL) || r;
-  r = ((glTexCoordP1ui = (PFNGLTEXCOORDP1UIPROC)glewGetProcAddress((const GLubyte*)"glTexCoordP1ui")) == NULL) || r;
-  r = ((glTexCoordP1uiv = (PFNGLTEXCOORDP1UIVPROC)glewGetProcAddress((const GLubyte*)"glTexCoordP1uiv")) == NULL) || r;
-  r = ((glTexCoordP2ui = (PFNGLTEXCOORDP2UIPROC)glewGetProcAddress((const GLubyte*)"glTexCoordP2ui")) == NULL) || r;
-  r = ((glTexCoordP2uiv = (PFNGLTEXCOORDP2UIVPROC)glewGetProcAddress((const GLubyte*)"glTexCoordP2uiv")) == NULL) || r;
-  r = ((glTexCoordP3ui = (PFNGLTEXCOORDP3UIPROC)glewGetProcAddress((const GLubyte*)"glTexCoordP3ui")) == NULL) || r;
-  r = ((glTexCoordP3uiv = (PFNGLTEXCOORDP3UIVPROC)glewGetProcAddress((const GLubyte*)"glTexCoordP3uiv")) == NULL) || r;
-  r = ((glTexCoordP4ui = (PFNGLTEXCOORDP4UIPROC)glewGetProcAddress((const GLubyte*)"glTexCoordP4ui")) == NULL) || r;
-  r = ((glTexCoordP4uiv = (PFNGLTEXCOORDP4UIVPROC)glewGetProcAddress((const GLubyte*)"glTexCoordP4uiv")) == NULL) || r;
-  r = ((glVertexAttribP1ui = (PFNGLVERTEXATTRIBP1UIPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribP1ui")) == NULL) || r;
-  r = ((glVertexAttribP1uiv = (PFNGLVERTEXATTRIBP1UIVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribP1uiv")) == NULL) || r;
-  r = ((glVertexAttribP2ui = (PFNGLVERTEXATTRIBP2UIPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribP2ui")) == NULL) || r;
-  r = ((glVertexAttribP2uiv = (PFNGLVERTEXATTRIBP2UIVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribP2uiv")) == NULL) || r;
-  r = ((glVertexAttribP3ui = (PFNGLVERTEXATTRIBP3UIPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribP3ui")) == NULL) || r;
-  r = ((glVertexAttribP3uiv = (PFNGLVERTEXATTRIBP3UIVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribP3uiv")) == NULL) || r;
-  r = ((glVertexAttribP4ui = (PFNGLVERTEXATTRIBP4UIPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribP4ui")) == NULL) || r;
-  r = ((glVertexAttribP4uiv = (PFNGLVERTEXATTRIBP4UIVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribP4uiv")) == NULL) || r;
-  r = ((glVertexP2ui = (PFNGLVERTEXP2UIPROC)glewGetProcAddress((const GLubyte*)"glVertexP2ui")) == NULL) || r;
-  r = ((glVertexP2uiv = (PFNGLVERTEXP2UIVPROC)glewGetProcAddress((const GLubyte*)"glVertexP2uiv")) == NULL) || r;
-  r = ((glVertexP3ui = (PFNGLVERTEXP3UIPROC)glewGetProcAddress((const GLubyte*)"glVertexP3ui")) == NULL) || r;
-  r = ((glVertexP3uiv = (PFNGLVERTEXP3UIVPROC)glewGetProcAddress((const GLubyte*)"glVertexP3uiv")) == NULL) || r;
-  r = ((glVertexP4ui = (PFNGLVERTEXP4UIPROC)glewGetProcAddress((const GLubyte*)"glVertexP4ui")) == NULL) || r;
-  r = ((glVertexP4uiv = (PFNGLVERTEXP4UIVPROC)glewGetProcAddress((const GLubyte*)"glVertexP4uiv")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_vertex_type_2_10_10_10_rev */
-
-#ifdef GL_ARB_window_pos
-
-static GLboolean _glewInit_GL_ARB_window_pos (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glWindowPos2dARB = (PFNGLWINDOWPOS2DARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2dARB")) == NULL) || r;
-  r = ((glWindowPos2dvARB = (PFNGLWINDOWPOS2DVARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2dvARB")) == NULL) || r;
-  r = ((glWindowPos2fARB = (PFNGLWINDOWPOS2FARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2fARB")) == NULL) || r;
-  r = ((glWindowPos2fvARB = (PFNGLWINDOWPOS2FVARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2fvARB")) == NULL) || r;
-  r = ((glWindowPos2iARB = (PFNGLWINDOWPOS2IARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2iARB")) == NULL) || r;
-  r = ((glWindowPos2ivARB = (PFNGLWINDOWPOS2IVARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2ivARB")) == NULL) || r;
-  r = ((glWindowPos2sARB = (PFNGLWINDOWPOS2SARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2sARB")) == NULL) || r;
-  r = ((glWindowPos2svARB = (PFNGLWINDOWPOS2SVARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2svARB")) == NULL) || r;
-  r = ((glWindowPos3dARB = (PFNGLWINDOWPOS3DARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3dARB")) == NULL) || r;
-  r = ((glWindowPos3dvARB = (PFNGLWINDOWPOS3DVARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3dvARB")) == NULL) || r;
-  r = ((glWindowPos3fARB = (PFNGLWINDOWPOS3FARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3fARB")) == NULL) || r;
-  r = ((glWindowPos3fvARB = (PFNGLWINDOWPOS3FVARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3fvARB")) == NULL) || r;
-  r = ((glWindowPos3iARB = (PFNGLWINDOWPOS3IARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3iARB")) == NULL) || r;
-  r = ((glWindowPos3ivARB = (PFNGLWINDOWPOS3IVARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3ivARB")) == NULL) || r;
-  r = ((glWindowPos3sARB = (PFNGLWINDOWPOS3SARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3sARB")) == NULL) || r;
-  r = ((glWindowPos3svARB = (PFNGLWINDOWPOS3SVARBPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3svARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ARB_window_pos */
-
-#ifdef GL_ATIX_point_sprites
-
-#endif /* GL_ATIX_point_sprites */
-
-#ifdef GL_ATIX_texture_env_combine3
-
-#endif /* GL_ATIX_texture_env_combine3 */
-
-#ifdef GL_ATIX_texture_env_route
-
-#endif /* GL_ATIX_texture_env_route */
-
-#ifdef GL_ATIX_vertex_shader_output_point_size
-
-#endif /* GL_ATIX_vertex_shader_output_point_size */
-
-#ifdef GL_ATI_draw_buffers
-
-static GLboolean _glewInit_GL_ATI_draw_buffers (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDrawBuffersATI = (PFNGLDRAWBUFFERSATIPROC)glewGetProcAddress((const GLubyte*)"glDrawBuffersATI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ATI_draw_buffers */
-
-#ifdef GL_ATI_element_array
-
-static GLboolean _glewInit_GL_ATI_element_array (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDrawElementArrayATI = (PFNGLDRAWELEMENTARRAYATIPROC)glewGetProcAddress((const GLubyte*)"glDrawElementArrayATI")) == NULL) || r;
-  r = ((glDrawRangeElementArrayATI = (PFNGLDRAWRANGEELEMENTARRAYATIPROC)glewGetProcAddress((const GLubyte*)"glDrawRangeElementArrayATI")) == NULL) || r;
-  r = ((glElementPointerATI = (PFNGLELEMENTPOINTERATIPROC)glewGetProcAddress((const GLubyte*)"glElementPointerATI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ATI_element_array */
-
-#ifdef GL_ATI_envmap_bumpmap
-
-static GLboolean _glewInit_GL_ATI_envmap_bumpmap (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetTexBumpParameterfvATI = (PFNGLGETTEXBUMPPARAMETERFVATIPROC)glewGetProcAddress((const GLubyte*)"glGetTexBumpParameterfvATI")) == NULL) || r;
-  r = ((glGetTexBumpParameterivATI = (PFNGLGETTEXBUMPPARAMETERIVATIPROC)glewGetProcAddress((const GLubyte*)"glGetTexBumpParameterivATI")) == NULL) || r;
-  r = ((glTexBumpParameterfvATI = (PFNGLTEXBUMPPARAMETERFVATIPROC)glewGetProcAddress((const GLubyte*)"glTexBumpParameterfvATI")) == NULL) || r;
-  r = ((glTexBumpParameterivATI = (PFNGLTEXBUMPPARAMETERIVATIPROC)glewGetProcAddress((const GLubyte*)"glTexBumpParameterivATI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ATI_envmap_bumpmap */
-
-#ifdef GL_ATI_fragment_shader
-
-static GLboolean _glewInit_GL_ATI_fragment_shader (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glAlphaFragmentOp1ATI = (PFNGLALPHAFRAGMENTOP1ATIPROC)glewGetProcAddress((const GLubyte*)"glAlphaFragmentOp1ATI")) == NULL) || r;
-  r = ((glAlphaFragmentOp2ATI = (PFNGLALPHAFRAGMENTOP2ATIPROC)glewGetProcAddress((const GLubyte*)"glAlphaFragmentOp2ATI")) == NULL) || r;
-  r = ((glAlphaFragmentOp3ATI = (PFNGLALPHAFRAGMENTOP3ATIPROC)glewGetProcAddress((const GLubyte*)"glAlphaFragmentOp3ATI")) == NULL) || r;
-  r = ((glBeginFragmentShaderATI = (PFNGLBEGINFRAGMENTSHADERATIPROC)glewGetProcAddress((const GLubyte*)"glBeginFragmentShaderATI")) == NULL) || r;
-  r = ((glBindFragmentShaderATI = (PFNGLBINDFRAGMENTSHADERATIPROC)glewGetProcAddress((const GLubyte*)"glBindFragmentShaderATI")) == NULL) || r;
-  r = ((glColorFragmentOp1ATI = (PFNGLCOLORFRAGMENTOP1ATIPROC)glewGetProcAddress((const GLubyte*)"glColorFragmentOp1ATI")) == NULL) || r;
-  r = ((glColorFragmentOp2ATI = (PFNGLCOLORFRAGMENTOP2ATIPROC)glewGetProcAddress((const GLubyte*)"glColorFragmentOp2ATI")) == NULL) || r;
-  r = ((glColorFragmentOp3ATI = (PFNGLCOLORFRAGMENTOP3ATIPROC)glewGetProcAddress((const GLubyte*)"glColorFragmentOp3ATI")) == NULL) || r;
-  r = ((glDeleteFragmentShaderATI = (PFNGLDELETEFRAGMENTSHADERATIPROC)glewGetProcAddress((const GLubyte*)"glDeleteFragmentShaderATI")) == NULL) || r;
-  r = ((glEndFragmentShaderATI = (PFNGLENDFRAGMENTSHADERATIPROC)glewGetProcAddress((const GLubyte*)"glEndFragmentShaderATI")) == NULL) || r;
-  r = ((glGenFragmentShadersATI = (PFNGLGENFRAGMENTSHADERSATIPROC)glewGetProcAddress((const GLubyte*)"glGenFragmentShadersATI")) == NULL) || r;
-  r = ((glPassTexCoordATI = (PFNGLPASSTEXCOORDATIPROC)glewGetProcAddress((const GLubyte*)"glPassTexCoordATI")) == NULL) || r;
-  r = ((glSampleMapATI = (PFNGLSAMPLEMAPATIPROC)glewGetProcAddress((const GLubyte*)"glSampleMapATI")) == NULL) || r;
-  r = ((glSetFragmentShaderConstantATI = (PFNGLSETFRAGMENTSHADERCONSTANTATIPROC)glewGetProcAddress((const GLubyte*)"glSetFragmentShaderConstantATI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ATI_fragment_shader */
-
-#ifdef GL_ATI_map_object_buffer
-
-static GLboolean _glewInit_GL_ATI_map_object_buffer (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glMapObjectBufferATI = (PFNGLMAPOBJECTBUFFERATIPROC)glewGetProcAddress((const GLubyte*)"glMapObjectBufferATI")) == NULL) || r;
-  r = ((glUnmapObjectBufferATI = (PFNGLUNMAPOBJECTBUFFERATIPROC)glewGetProcAddress((const GLubyte*)"glUnmapObjectBufferATI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ATI_map_object_buffer */
-
-#ifdef GL_ATI_meminfo
-
-#endif /* GL_ATI_meminfo */
-
-#ifdef GL_ATI_pn_triangles
-
-static GLboolean _glewInit_GL_ATI_pn_triangles (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glPNTrianglesfATI = (PFNGLPNTRIANGLESFATIPROC)glewGetProcAddress((const GLubyte*)"glPNTrianglesfATI")) == NULL) || r;
-  r = ((glPNTrianglesiATI = (PFNGLPNTRIANGLESIATIPROC)glewGetProcAddress((const GLubyte*)"glPNTrianglesiATI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ATI_pn_triangles */
-
-#ifdef GL_ATI_separate_stencil
-
-static GLboolean _glewInit_GL_ATI_separate_stencil (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glStencilFuncSeparateATI = (PFNGLSTENCILFUNCSEPARATEATIPROC)glewGetProcAddress((const GLubyte*)"glStencilFuncSeparateATI")) == NULL) || r;
-  r = ((glStencilOpSeparateATI = (PFNGLSTENCILOPSEPARATEATIPROC)glewGetProcAddress((const GLubyte*)"glStencilOpSeparateATI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ATI_separate_stencil */
-
-#ifdef GL_ATI_shader_texture_lod
-
-#endif /* GL_ATI_shader_texture_lod */
-
-#ifdef GL_ATI_text_fragment_shader
-
-#endif /* GL_ATI_text_fragment_shader */
-
-#ifdef GL_ATI_texture_compression_3dc
-
-#endif /* GL_ATI_texture_compression_3dc */
-
-#ifdef GL_ATI_texture_env_combine3
-
-#endif /* GL_ATI_texture_env_combine3 */
-
-#ifdef GL_ATI_texture_float
-
-#endif /* GL_ATI_texture_float */
-
-#ifdef GL_ATI_texture_mirror_once
-
-#endif /* GL_ATI_texture_mirror_once */
-
-#ifdef GL_ATI_vertex_array_object
-
-static GLboolean _glewInit_GL_ATI_vertex_array_object (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glArrayObjectATI = (PFNGLARRAYOBJECTATIPROC)glewGetProcAddress((const GLubyte*)"glArrayObjectATI")) == NULL) || r;
-  r = ((glFreeObjectBufferATI = (PFNGLFREEOBJECTBUFFERATIPROC)glewGetProcAddress((const GLubyte*)"glFreeObjectBufferATI")) == NULL) || r;
-  r = ((glGetArrayObjectfvATI = (PFNGLGETARRAYOBJECTFVATIPROC)glewGetProcAddress((const GLubyte*)"glGetArrayObjectfvATI")) == NULL) || r;
-  r = ((glGetArrayObjectivATI = (PFNGLGETARRAYOBJECTIVATIPROC)glewGetProcAddress((const GLubyte*)"glGetArrayObjectivATI")) == NULL) || r;
-  r = ((glGetObjectBufferfvATI = (PFNGLGETOBJECTBUFFERFVATIPROC)glewGetProcAddress((const GLubyte*)"glGetObjectBufferfvATI")) == NULL) || r;
-  r = ((glGetObjectBufferivATI = (PFNGLGETOBJECTBUFFERIVATIPROC)glewGetProcAddress((const GLubyte*)"glGetObjectBufferivATI")) == NULL) || r;
-  r = ((glGetVariantArrayObjectfvATI = (PFNGLGETVARIANTARRAYOBJECTFVATIPROC)glewGetProcAddress((const GLubyte*)"glGetVariantArrayObjectfvATI")) == NULL) || r;
-  r = ((glGetVariantArrayObjectivATI = (PFNGLGETVARIANTARRAYOBJECTIVATIPROC)glewGetProcAddress((const GLubyte*)"glGetVariantArrayObjectivATI")) == NULL) || r;
-  r = ((glIsObjectBufferATI = (PFNGLISOBJECTBUFFERATIPROC)glewGetProcAddress((const GLubyte*)"glIsObjectBufferATI")) == NULL) || r;
-  r = ((glNewObjectBufferATI = (PFNGLNEWOBJECTBUFFERATIPROC)glewGetProcAddress((const GLubyte*)"glNewObjectBufferATI")) == NULL) || r;
-  r = ((glUpdateObjectBufferATI = (PFNGLUPDATEOBJECTBUFFERATIPROC)glewGetProcAddress((const GLubyte*)"glUpdateObjectBufferATI")) == NULL) || r;
-  r = ((glVariantArrayObjectATI = (PFNGLVARIANTARRAYOBJECTATIPROC)glewGetProcAddress((const GLubyte*)"glVariantArrayObjectATI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ATI_vertex_array_object */
-
-#ifdef GL_ATI_vertex_attrib_array_object
-
-static GLboolean _glewInit_GL_ATI_vertex_attrib_array_object (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetVertexAttribArrayObjectfvATI = (PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribArrayObjectfvATI")) == NULL) || r;
-  r = ((glGetVertexAttribArrayObjectivATI = (PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribArrayObjectivATI")) == NULL) || r;
-  r = ((glVertexAttribArrayObjectATI = (PFNGLVERTEXATTRIBARRAYOBJECTATIPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribArrayObjectATI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ATI_vertex_attrib_array_object */
-
-#ifdef GL_ATI_vertex_streams
-
-static GLboolean _glewInit_GL_ATI_vertex_streams (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glClientActiveVertexStreamATI = (PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC)glewGetProcAddress((const GLubyte*)"glClientActiveVertexStreamATI")) == NULL) || r;
-  r = ((glNormalStream3bATI = (PFNGLNORMALSTREAM3BATIPROC)glewGetProcAddress((const GLubyte*)"glNormalStream3bATI")) == NULL) || r;
-  r = ((glNormalStream3bvATI = (PFNGLNORMALSTREAM3BVATIPROC)glewGetProcAddress((const GLubyte*)"glNormalStream3bvATI")) == NULL) || r;
-  r = ((glNormalStream3dATI = (PFNGLNORMALSTREAM3DATIPROC)glewGetProcAddress((const GLubyte*)"glNormalStream3dATI")) == NULL) || r;
-  r = ((glNormalStream3dvATI = (PFNGLNORMALSTREAM3DVATIPROC)glewGetProcAddress((const GLubyte*)"glNormalStream3dvATI")) == NULL) || r;
-  r = ((glNormalStream3fATI = (PFNGLNORMALSTREAM3FATIPROC)glewGetProcAddress((const GLubyte*)"glNormalStream3fATI")) == NULL) || r;
-  r = ((glNormalStream3fvATI = (PFNGLNORMALSTREAM3FVATIPROC)glewGetProcAddress((const GLubyte*)"glNormalStream3fvATI")) == NULL) || r;
-  r = ((glNormalStream3iATI = (PFNGLNORMALSTREAM3IATIPROC)glewGetProcAddress((const GLubyte*)"glNormalStream3iATI")) == NULL) || r;
-  r = ((glNormalStream3ivATI = (PFNGLNORMALSTREAM3IVATIPROC)glewGetProcAddress((const GLubyte*)"glNormalStream3ivATI")) == NULL) || r;
-  r = ((glNormalStream3sATI = (PFNGLNORMALSTREAM3SATIPROC)glewGetProcAddress((const GLubyte*)"glNormalStream3sATI")) == NULL) || r;
-  r = ((glNormalStream3svATI = (PFNGLNORMALSTREAM3SVATIPROC)glewGetProcAddress((const GLubyte*)"glNormalStream3svATI")) == NULL) || r;
-  r = ((glVertexBlendEnvfATI = (PFNGLVERTEXBLENDENVFATIPROC)glewGetProcAddress((const GLubyte*)"glVertexBlendEnvfATI")) == NULL) || r;
-  r = ((glVertexBlendEnviATI = (PFNGLVERTEXBLENDENVIATIPROC)glewGetProcAddress((const GLubyte*)"glVertexBlendEnviATI")) == NULL) || r;
-  r = ((glVertexStream2dATI = (PFNGLVERTEXSTREAM2DATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream2dATI")) == NULL) || r;
-  r = ((glVertexStream2dvATI = (PFNGLVERTEXSTREAM2DVATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream2dvATI")) == NULL) || r;
-  r = ((glVertexStream2fATI = (PFNGLVERTEXSTREAM2FATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream2fATI")) == NULL) || r;
-  r = ((glVertexStream2fvATI = (PFNGLVERTEXSTREAM2FVATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream2fvATI")) == NULL) || r;
-  r = ((glVertexStream2iATI = (PFNGLVERTEXSTREAM2IATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream2iATI")) == NULL) || r;
-  r = ((glVertexStream2ivATI = (PFNGLVERTEXSTREAM2IVATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream2ivATI")) == NULL) || r;
-  r = ((glVertexStream2sATI = (PFNGLVERTEXSTREAM2SATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream2sATI")) == NULL) || r;
-  r = ((glVertexStream2svATI = (PFNGLVERTEXSTREAM2SVATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream2svATI")) == NULL) || r;
-  r = ((glVertexStream3dATI = (PFNGLVERTEXSTREAM3DATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream3dATI")) == NULL) || r;
-  r = ((glVertexStream3dvATI = (PFNGLVERTEXSTREAM3DVATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream3dvATI")) == NULL) || r;
-  r = ((glVertexStream3fATI = (PFNGLVERTEXSTREAM3FATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream3fATI")) == NULL) || r;
-  r = ((glVertexStream3fvATI = (PFNGLVERTEXSTREAM3FVATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream3fvATI")) == NULL) || r;
-  r = ((glVertexStream3iATI = (PFNGLVERTEXSTREAM3IATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream3iATI")) == NULL) || r;
-  r = ((glVertexStream3ivATI = (PFNGLVERTEXSTREAM3IVATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream3ivATI")) == NULL) || r;
-  r = ((glVertexStream3sATI = (PFNGLVERTEXSTREAM3SATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream3sATI")) == NULL) || r;
-  r = ((glVertexStream3svATI = (PFNGLVERTEXSTREAM3SVATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream3svATI")) == NULL) || r;
-  r = ((glVertexStream4dATI = (PFNGLVERTEXSTREAM4DATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream4dATI")) == NULL) || r;
-  r = ((glVertexStream4dvATI = (PFNGLVERTEXSTREAM4DVATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream4dvATI")) == NULL) || r;
-  r = ((glVertexStream4fATI = (PFNGLVERTEXSTREAM4FATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream4fATI")) == NULL) || r;
-  r = ((glVertexStream4fvATI = (PFNGLVERTEXSTREAM4FVATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream4fvATI")) == NULL) || r;
-  r = ((glVertexStream4iATI = (PFNGLVERTEXSTREAM4IATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream4iATI")) == NULL) || r;
-  r = ((glVertexStream4ivATI = (PFNGLVERTEXSTREAM4IVATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream4ivATI")) == NULL) || r;
-  r = ((glVertexStream4sATI = (PFNGLVERTEXSTREAM4SATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream4sATI")) == NULL) || r;
-  r = ((glVertexStream4svATI = (PFNGLVERTEXSTREAM4SVATIPROC)glewGetProcAddress((const GLubyte*)"glVertexStream4svATI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_ATI_vertex_streams */
-
-#ifdef GL_EXT_422_pixels
-
-#endif /* GL_EXT_422_pixels */
-
-#ifdef GL_EXT_Cg_shader
-
-#endif /* GL_EXT_Cg_shader */
-
-#ifdef GL_EXT_abgr
-
-#endif /* GL_EXT_abgr */
-
-#ifdef GL_EXT_bgra
-
-#endif /* GL_EXT_bgra */
-
-#ifdef GL_EXT_bindable_uniform
-
-static GLboolean _glewInit_GL_EXT_bindable_uniform (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetUniformBufferSizeEXT = (PFNGLGETUNIFORMBUFFERSIZEEXTPROC)glewGetProcAddress((const GLubyte*)"glGetUniformBufferSizeEXT")) == NULL) || r;
-  r = ((glGetUniformOffsetEXT = (PFNGLGETUNIFORMOFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glGetUniformOffsetEXT")) == NULL) || r;
-  r = ((glUniformBufferEXT = (PFNGLUNIFORMBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glUniformBufferEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_bindable_uniform */
-
-#ifdef GL_EXT_blend_color
-
-static GLboolean _glewInit_GL_EXT_blend_color (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBlendColorEXT = (PFNGLBLENDCOLOREXTPROC)glewGetProcAddress((const GLubyte*)"glBlendColorEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_blend_color */
-
-#ifdef GL_EXT_blend_equation_separate
-
-static GLboolean _glewInit_GL_EXT_blend_equation_separate (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBlendEquationSeparateEXT = (PFNGLBLENDEQUATIONSEPARATEEXTPROC)glewGetProcAddress((const GLubyte*)"glBlendEquationSeparateEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_blend_equation_separate */
-
-#ifdef GL_EXT_blend_func_separate
-
-static GLboolean _glewInit_GL_EXT_blend_func_separate (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBlendFuncSeparateEXT = (PFNGLBLENDFUNCSEPARATEEXTPROC)glewGetProcAddress((const GLubyte*)"glBlendFuncSeparateEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_blend_func_separate */
-
-#ifdef GL_EXT_blend_logic_op
-
-#endif /* GL_EXT_blend_logic_op */
-
-#ifdef GL_EXT_blend_minmax
-
-static GLboolean _glewInit_GL_EXT_blend_minmax (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBlendEquationEXT = (PFNGLBLENDEQUATIONEXTPROC)glewGetProcAddress((const GLubyte*)"glBlendEquationEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_blend_minmax */
-
-#ifdef GL_EXT_blend_subtract
-
-#endif /* GL_EXT_blend_subtract */
-
-#ifdef GL_EXT_clip_volume_hint
-
-#endif /* GL_EXT_clip_volume_hint */
-
-#ifdef GL_EXT_cmyka
-
-#endif /* GL_EXT_cmyka */
-
-#ifdef GL_EXT_color_subtable
-
-static GLboolean _glewInit_GL_EXT_color_subtable (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glColorSubTableEXT = (PFNGLCOLORSUBTABLEEXTPROC)glewGetProcAddress((const GLubyte*)"glColorSubTableEXT")) == NULL) || r;
-  r = ((glCopyColorSubTableEXT = (PFNGLCOPYCOLORSUBTABLEEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyColorSubTableEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_color_subtable */
-
-#ifdef GL_EXT_compiled_vertex_array
-
-static GLboolean _glewInit_GL_EXT_compiled_vertex_array (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glLockArraysEXT = (PFNGLLOCKARRAYSEXTPROC)glewGetProcAddress((const GLubyte*)"glLockArraysEXT")) == NULL) || r;
-  r = ((glUnlockArraysEXT = (PFNGLUNLOCKARRAYSEXTPROC)glewGetProcAddress((const GLubyte*)"glUnlockArraysEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_compiled_vertex_array */
-
-#ifdef GL_EXT_convolution
-
-static GLboolean _glewInit_GL_EXT_convolution (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glConvolutionFilter1DEXT = (PFNGLCONVOLUTIONFILTER1DEXTPROC)glewGetProcAddress((const GLubyte*)"glConvolutionFilter1DEXT")) == NULL) || r;
-  r = ((glConvolutionFilter2DEXT = (PFNGLCONVOLUTIONFILTER2DEXTPROC)glewGetProcAddress((const GLubyte*)"glConvolutionFilter2DEXT")) == NULL) || r;
-  r = ((glConvolutionParameterfEXT = (PFNGLCONVOLUTIONPARAMETERFEXTPROC)glewGetProcAddress((const GLubyte*)"glConvolutionParameterfEXT")) == NULL) || r;
-  r = ((glConvolutionParameterfvEXT = (PFNGLCONVOLUTIONPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glConvolutionParameterfvEXT")) == NULL) || r;
-  r = ((glConvolutionParameteriEXT = (PFNGLCONVOLUTIONPARAMETERIEXTPROC)glewGetProcAddress((const GLubyte*)"glConvolutionParameteriEXT")) == NULL) || r;
-  r = ((glConvolutionParameterivEXT = (PFNGLCONVOLUTIONPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glConvolutionParameterivEXT")) == NULL) || r;
-  r = ((glCopyConvolutionFilter1DEXT = (PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyConvolutionFilter1DEXT")) == NULL) || r;
-  r = ((glCopyConvolutionFilter2DEXT = (PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyConvolutionFilter2DEXT")) == NULL) || r;
-  r = ((glGetConvolutionFilterEXT = (PFNGLGETCONVOLUTIONFILTEREXTPROC)glewGetProcAddress((const GLubyte*)"glGetConvolutionFilterEXT")) == NULL) || r;
-  r = ((glGetConvolutionParameterfvEXT = (PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetConvolutionParameterfvEXT")) == NULL) || r;
-  r = ((glGetConvolutionParameterivEXT = (PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetConvolutionParameterivEXT")) == NULL) || r;
-  r = ((glGetSeparableFilterEXT = (PFNGLGETSEPARABLEFILTEREXTPROC)glewGetProcAddress((const GLubyte*)"glGetSeparableFilterEXT")) == NULL) || r;
-  r = ((glSeparableFilter2DEXT = (PFNGLSEPARABLEFILTER2DEXTPROC)glewGetProcAddress((const GLubyte*)"glSeparableFilter2DEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_convolution */
-
-#ifdef GL_EXT_coordinate_frame
-
-static GLboolean _glewInit_GL_EXT_coordinate_frame (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBinormalPointerEXT = (PFNGLBINORMALPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glBinormalPointerEXT")) == NULL) || r;
-  r = ((glTangentPointerEXT = (PFNGLTANGENTPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glTangentPointerEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_coordinate_frame */
-
-#ifdef GL_EXT_copy_texture
-
-static GLboolean _glewInit_GL_EXT_copy_texture (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glCopyTexImage1DEXT = (PFNGLCOPYTEXIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyTexImage1DEXT")) == NULL) || r;
-  r = ((glCopyTexImage2DEXT = (PFNGLCOPYTEXIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyTexImage2DEXT")) == NULL) || r;
-  r = ((glCopyTexSubImage1DEXT = (PFNGLCOPYTEXSUBIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyTexSubImage1DEXT")) == NULL) || r;
-  r = ((glCopyTexSubImage2DEXT = (PFNGLCOPYTEXSUBIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyTexSubImage2DEXT")) == NULL) || r;
-  r = ((glCopyTexSubImage3DEXT = (PFNGLCOPYTEXSUBIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyTexSubImage3DEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_copy_texture */
-
-#ifdef GL_EXT_cull_vertex
-
-static GLboolean _glewInit_GL_EXT_cull_vertex (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glCullParameterdvEXT = (PFNGLCULLPARAMETERDVEXTPROC)glewGetProcAddress((const GLubyte*)"glCullParameterdvEXT")) == NULL) || r;
-  r = ((glCullParameterfvEXT = (PFNGLCULLPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glCullParameterfvEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_cull_vertex */
-
-#ifdef GL_EXT_depth_bounds_test
-
-static GLboolean _glewInit_GL_EXT_depth_bounds_test (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDepthBoundsEXT = (PFNGLDEPTHBOUNDSEXTPROC)glewGetProcAddress((const GLubyte*)"glDepthBoundsEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_depth_bounds_test */
-
-#ifdef GL_EXT_direct_state_access
-
-static GLboolean _glewInit_GL_EXT_direct_state_access (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindMultiTextureEXT = (PFNGLBINDMULTITEXTUREEXTPROC)glewGetProcAddress((const GLubyte*)"glBindMultiTextureEXT")) == NULL) || r;
-  r = ((glCheckNamedFramebufferStatusEXT = (PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC)glewGetProcAddress((const GLubyte*)"glCheckNamedFramebufferStatusEXT")) == NULL) || r;
-  r = ((glClientAttribDefaultEXT = (PFNGLCLIENTATTRIBDEFAULTEXTPROC)glewGetProcAddress((const GLubyte*)"glClientAttribDefaultEXT")) == NULL) || r;
-  r = ((glCompressedMultiTexImage1DEXT = (PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glCompressedMultiTexImage1DEXT")) == NULL) || r;
-  r = ((glCompressedMultiTexImage2DEXT = (PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glCompressedMultiTexImage2DEXT")) == NULL) || r;
-  r = ((glCompressedMultiTexImage3DEXT = (PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glCompressedMultiTexImage3DEXT")) == NULL) || r;
-  r = ((glCompressedMultiTexSubImage1DEXT = (PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glCompressedMultiTexSubImage1DEXT")) == NULL) || r;
-  r = ((glCompressedMultiTexSubImage2DEXT = (PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glCompressedMultiTexSubImage2DEXT")) == NULL) || r;
-  r = ((glCompressedMultiTexSubImage3DEXT = (PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glCompressedMultiTexSubImage3DEXT")) == NULL) || r;
-  r = ((glCompressedTextureImage1DEXT = (PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glCompressedTextureImage1DEXT")) == NULL) || r;
-  r = ((glCompressedTextureImage2DEXT = (PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glCompressedTextureImage2DEXT")) == NULL) || r;
-  r = ((glCompressedTextureImage3DEXT = (PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glCompressedTextureImage3DEXT")) == NULL) || r;
-  r = ((glCompressedTextureSubImage1DEXT = (PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glCompressedTextureSubImage1DEXT")) == NULL) || r;
-  r = ((glCompressedTextureSubImage2DEXT = (PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glCompressedTextureSubImage2DEXT")) == NULL) || r;
-  r = ((glCompressedTextureSubImage3DEXT = (PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glCompressedTextureSubImage3DEXT")) == NULL) || r;
-  r = ((glCopyMultiTexImage1DEXT = (PFNGLCOPYMULTITEXIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyMultiTexImage1DEXT")) == NULL) || r;
-  r = ((glCopyMultiTexImage2DEXT = (PFNGLCOPYMULTITEXIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyMultiTexImage2DEXT")) == NULL) || r;
-  r = ((glCopyMultiTexSubImage1DEXT = (PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyMultiTexSubImage1DEXT")) == NULL) || r;
-  r = ((glCopyMultiTexSubImage2DEXT = (PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyMultiTexSubImage2DEXT")) == NULL) || r;
-  r = ((glCopyMultiTexSubImage3DEXT = (PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyMultiTexSubImage3DEXT")) == NULL) || r;
-  r = ((glCopyTextureImage1DEXT = (PFNGLCOPYTEXTUREIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyTextureImage1DEXT")) == NULL) || r;
-  r = ((glCopyTextureImage2DEXT = (PFNGLCOPYTEXTUREIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyTextureImage2DEXT")) == NULL) || r;
-  r = ((glCopyTextureSubImage1DEXT = (PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyTextureSubImage1DEXT")) == NULL) || r;
-  r = ((glCopyTextureSubImage2DEXT = (PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyTextureSubImage2DEXT")) == NULL) || r;
-  r = ((glCopyTextureSubImage3DEXT = (PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glCopyTextureSubImage3DEXT")) == NULL) || r;
-  r = ((glDisableClientStateIndexedEXT = (PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC)glewGetProcAddress((const GLubyte*)"glDisableClientStateIndexedEXT")) == NULL) || r;
-  r = ((glDisableClientStateiEXT = (PFNGLDISABLECLIENTSTATEIEXTPROC)glewGetProcAddress((const GLubyte*)"glDisableClientStateiEXT")) == NULL) || r;
-  r = ((glDisableVertexArrayAttribEXT = (PFNGLDISABLEVERTEXARRAYATTRIBEXTPROC)glewGetProcAddress((const GLubyte*)"glDisableVertexArrayAttribEXT")) == NULL) || r;
-  r = ((glDisableVertexArrayEXT = (PFNGLDISABLEVERTEXARRAYEXTPROC)glewGetProcAddress((const GLubyte*)"glDisableVertexArrayEXT")) == NULL) || r;
-  r = ((glEnableClientStateIndexedEXT = (PFNGLENABLECLIENTSTATEINDEXEDEXTPROC)glewGetProcAddress((const GLubyte*)"glEnableClientStateIndexedEXT")) == NULL) || r;
-  r = ((glEnableClientStateiEXT = (PFNGLENABLECLIENTSTATEIEXTPROC)glewGetProcAddress((const GLubyte*)"glEnableClientStateiEXT")) == NULL) || r;
-  r = ((glEnableVertexArrayAttribEXT = (PFNGLENABLEVERTEXARRAYATTRIBEXTPROC)glewGetProcAddress((const GLubyte*)"glEnableVertexArrayAttribEXT")) == NULL) || r;
-  r = ((glEnableVertexArrayEXT = (PFNGLENABLEVERTEXARRAYEXTPROC)glewGetProcAddress((const GLubyte*)"glEnableVertexArrayEXT")) == NULL) || r;
-  r = ((glFlushMappedNamedBufferRangeEXT = (PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC)glewGetProcAddress((const GLubyte*)"glFlushMappedNamedBufferRangeEXT")) == NULL) || r;
-  r = ((glFramebufferDrawBufferEXT = (PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glFramebufferDrawBufferEXT")) == NULL) || r;
-  r = ((glFramebufferDrawBuffersEXT = (PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC)glewGetProcAddress((const GLubyte*)"glFramebufferDrawBuffersEXT")) == NULL) || r;
-  r = ((glFramebufferReadBufferEXT = (PFNGLFRAMEBUFFERREADBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glFramebufferReadBufferEXT")) == NULL) || r;
-  r = ((glGenerateMultiTexMipmapEXT = (PFNGLGENERATEMULTITEXMIPMAPEXTPROC)glewGetProcAddress((const GLubyte*)"glGenerateMultiTexMipmapEXT")) == NULL) || r;
-  r = ((glGenerateTextureMipmapEXT = (PFNGLGENERATETEXTUREMIPMAPEXTPROC)glewGetProcAddress((const GLubyte*)"glGenerateTextureMipmapEXT")) == NULL) || r;
-  r = ((glGetCompressedMultiTexImageEXT = (PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC)glewGetProcAddress((const GLubyte*)"glGetCompressedMultiTexImageEXT")) == NULL) || r;
-  r = ((glGetCompressedTextureImageEXT = (PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC)glewGetProcAddress((const GLubyte*)"glGetCompressedTextureImageEXT")) == NULL) || r;
-  r = ((glGetDoubleIndexedvEXT = (PFNGLGETDOUBLEINDEXEDVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetDoubleIndexedvEXT")) == NULL) || r;
-  r = ((glGetDoublei_vEXT = (PFNGLGETDOUBLEI_VEXTPROC)glewGetProcAddress((const GLubyte*)"glGetDoublei_vEXT")) == NULL) || r;
-  r = ((glGetFloatIndexedvEXT = (PFNGLGETFLOATINDEXEDVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetFloatIndexedvEXT")) == NULL) || r;
-  r = ((glGetFloati_vEXT = (PFNGLGETFLOATI_VEXTPROC)glewGetProcAddress((const GLubyte*)"glGetFloati_vEXT")) == NULL) || r;
-  r = ((glGetFramebufferParameterivEXT = (PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetFramebufferParameterivEXT")) == NULL) || r;
-  r = ((glGetMultiTexEnvfvEXT = (PFNGLGETMULTITEXENVFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMultiTexEnvfvEXT")) == NULL) || r;
-  r = ((glGetMultiTexEnvivEXT = (PFNGLGETMULTITEXENVIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMultiTexEnvivEXT")) == NULL) || r;
-  r = ((glGetMultiTexGendvEXT = (PFNGLGETMULTITEXGENDVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMultiTexGendvEXT")) == NULL) || r;
-  r = ((glGetMultiTexGenfvEXT = (PFNGLGETMULTITEXGENFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMultiTexGenfvEXT")) == NULL) || r;
-  r = ((glGetMultiTexGenivEXT = (PFNGLGETMULTITEXGENIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMultiTexGenivEXT")) == NULL) || r;
-  r = ((glGetMultiTexImageEXT = (PFNGLGETMULTITEXIMAGEEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMultiTexImageEXT")) == NULL) || r;
-  r = ((glGetMultiTexLevelParameterfvEXT = (PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMultiTexLevelParameterfvEXT")) == NULL) || r;
-  r = ((glGetMultiTexLevelParameterivEXT = (PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMultiTexLevelParameterivEXT")) == NULL) || r;
-  r = ((glGetMultiTexParameterIivEXT = (PFNGLGETMULTITEXPARAMETERIIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMultiTexParameterIivEXT")) == NULL) || r;
-  r = ((glGetMultiTexParameterIuivEXT = (PFNGLGETMULTITEXPARAMETERIUIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMultiTexParameterIuivEXT")) == NULL) || r;
-  r = ((glGetMultiTexParameterfvEXT = (PFNGLGETMULTITEXPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMultiTexParameterfvEXT")) == NULL) || r;
-  r = ((glGetMultiTexParameterivEXT = (PFNGLGETMULTITEXPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMultiTexParameterivEXT")) == NULL) || r;
-  r = ((glGetNamedBufferParameterivEXT = (PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetNamedBufferParameterivEXT")) == NULL) || r;
-  r = ((glGetNamedBufferPointervEXT = (PFNGLGETNAMEDBUFFERPOINTERVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetNamedBufferPointervEXT")) == NULL) || r;
-  r = ((glGetNamedBufferSubDataEXT = (PFNGLGETNAMEDBUFFERSUBDATAEXTPROC)glewGetProcAddress((const GLubyte*)"glGetNamedBufferSubDataEXT")) == NULL) || r;
-  r = ((glGetNamedFramebufferAttachmentParameterivEXT = (PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetNamedFramebufferAttachmentParameterivEXT")) == NULL) || r;
-  r = ((glGetNamedProgramLocalParameterIivEXT = (PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetNamedProgramLocalParameterIivEXT")) == NULL) || r;
-  r = ((glGetNamedProgramLocalParameterIuivEXT = (PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetNamedProgramLocalParameterIuivEXT")) == NULL) || r;
-  r = ((glGetNamedProgramLocalParameterdvEXT = (PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetNamedProgramLocalParameterdvEXT")) == NULL) || r;
-  r = ((glGetNamedProgramLocalParameterfvEXT = (PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetNamedProgramLocalParameterfvEXT")) == NULL) || r;
-  r = ((glGetNamedProgramStringEXT = (PFNGLGETNAMEDPROGRAMSTRINGEXTPROC)glewGetProcAddress((const GLubyte*)"glGetNamedProgramStringEXT")) == NULL) || r;
-  r = ((glGetNamedProgramivEXT = (PFNGLGETNAMEDPROGRAMIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetNamedProgramivEXT")) == NULL) || r;
-  r = ((glGetNamedRenderbufferParameterivEXT = (PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetNamedRenderbufferParameterivEXT")) == NULL) || r;
-  r = ((glGetPointerIndexedvEXT = (PFNGLGETPOINTERINDEXEDVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetPointerIndexedvEXT")) == NULL) || r;
-  r = ((glGetPointeri_vEXT = (PFNGLGETPOINTERI_VEXTPROC)glewGetProcAddress((const GLubyte*)"glGetPointeri_vEXT")) == NULL) || r;
-  r = ((glGetTextureImageEXT = (PFNGLGETTEXTUREIMAGEEXTPROC)glewGetProcAddress((const GLubyte*)"glGetTextureImageEXT")) == NULL) || r;
-  r = ((glGetTextureLevelParameterfvEXT = (PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetTextureLevelParameterfvEXT")) == NULL) || r;
-  r = ((glGetTextureLevelParameterivEXT = (PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetTextureLevelParameterivEXT")) == NULL) || r;
-  r = ((glGetTextureParameterIivEXT = (PFNGLGETTEXTUREPARAMETERIIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetTextureParameterIivEXT")) == NULL) || r;
-  r = ((glGetTextureParameterIuivEXT = (PFNGLGETTEXTUREPARAMETERIUIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetTextureParameterIuivEXT")) == NULL) || r;
-  r = ((glGetTextureParameterfvEXT = (PFNGLGETTEXTUREPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetTextureParameterfvEXT")) == NULL) || r;
-  r = ((glGetTextureParameterivEXT = (PFNGLGETTEXTUREPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetTextureParameterivEXT")) == NULL) || r;
-  r = ((glGetVertexArrayIntegeri_vEXT = (PFNGLGETVERTEXARRAYINTEGERI_VEXTPROC)glewGetProcAddress((const GLubyte*)"glGetVertexArrayIntegeri_vEXT")) == NULL) || r;
-  r = ((glGetVertexArrayIntegervEXT = (PFNGLGETVERTEXARRAYINTEGERVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetVertexArrayIntegervEXT")) == NULL) || r;
-  r = ((glGetVertexArrayPointeri_vEXT = (PFNGLGETVERTEXARRAYPOINTERI_VEXTPROC)glewGetProcAddress((const GLubyte*)"glGetVertexArrayPointeri_vEXT")) == NULL) || r;
-  r = ((glGetVertexArrayPointervEXT = (PFNGLGETVERTEXARRAYPOINTERVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetVertexArrayPointervEXT")) == NULL) || r;
-  r = ((glMapNamedBufferEXT = (PFNGLMAPNAMEDBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glMapNamedBufferEXT")) == NULL) || r;
-  r = ((glMapNamedBufferRangeEXT = (PFNGLMAPNAMEDBUFFERRANGEEXTPROC)glewGetProcAddress((const GLubyte*)"glMapNamedBufferRangeEXT")) == NULL) || r;
-  r = ((glMatrixFrustumEXT = (PFNGLMATRIXFRUSTUMEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixFrustumEXT")) == NULL) || r;
-  r = ((glMatrixLoadIdentityEXT = (PFNGLMATRIXLOADIDENTITYEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixLoadIdentityEXT")) == NULL) || r;
-  r = ((glMatrixLoadTransposedEXT = (PFNGLMATRIXLOADTRANSPOSEDEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixLoadTransposedEXT")) == NULL) || r;
-  r = ((glMatrixLoadTransposefEXT = (PFNGLMATRIXLOADTRANSPOSEFEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixLoadTransposefEXT")) == NULL) || r;
-  r = ((glMatrixLoaddEXT = (PFNGLMATRIXLOADDEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixLoaddEXT")) == NULL) || r;
-  r = ((glMatrixLoadfEXT = (PFNGLMATRIXLOADFEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixLoadfEXT")) == NULL) || r;
-  r = ((glMatrixMultTransposedEXT = (PFNGLMATRIXMULTTRANSPOSEDEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixMultTransposedEXT")) == NULL) || r;
-  r = ((glMatrixMultTransposefEXT = (PFNGLMATRIXMULTTRANSPOSEFEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixMultTransposefEXT")) == NULL) || r;
-  r = ((glMatrixMultdEXT = (PFNGLMATRIXMULTDEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixMultdEXT")) == NULL) || r;
-  r = ((glMatrixMultfEXT = (PFNGLMATRIXMULTFEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixMultfEXT")) == NULL) || r;
-  r = ((glMatrixOrthoEXT = (PFNGLMATRIXORTHOEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixOrthoEXT")) == NULL) || r;
-  r = ((glMatrixPopEXT = (PFNGLMATRIXPOPEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixPopEXT")) == NULL) || r;
-  r = ((glMatrixPushEXT = (PFNGLMATRIXPUSHEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixPushEXT")) == NULL) || r;
-  r = ((glMatrixRotatedEXT = (PFNGLMATRIXROTATEDEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixRotatedEXT")) == NULL) || r;
-  r = ((glMatrixRotatefEXT = (PFNGLMATRIXROTATEFEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixRotatefEXT")) == NULL) || r;
-  r = ((glMatrixScaledEXT = (PFNGLMATRIXSCALEDEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixScaledEXT")) == NULL) || r;
-  r = ((glMatrixScalefEXT = (PFNGLMATRIXSCALEFEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixScalefEXT")) == NULL) || r;
-  r = ((glMatrixTranslatedEXT = (PFNGLMATRIXTRANSLATEDEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixTranslatedEXT")) == NULL) || r;
-  r = ((glMatrixTranslatefEXT = (PFNGLMATRIXTRANSLATEFEXTPROC)glewGetProcAddress((const GLubyte*)"glMatrixTranslatefEXT")) == NULL) || r;
-  r = ((glMultiTexBufferEXT = (PFNGLMULTITEXBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexBufferEXT")) == NULL) || r;
-  r = ((glMultiTexCoordPointerEXT = (PFNGLMULTITEXCOORDPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoordPointerEXT")) == NULL) || r;
-  r = ((glMultiTexEnvfEXT = (PFNGLMULTITEXENVFEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexEnvfEXT")) == NULL) || r;
-  r = ((glMultiTexEnvfvEXT = (PFNGLMULTITEXENVFVEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexEnvfvEXT")) == NULL) || r;
-  r = ((glMultiTexEnviEXT = (PFNGLMULTITEXENVIEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexEnviEXT")) == NULL) || r;
-  r = ((glMultiTexEnvivEXT = (PFNGLMULTITEXENVIVEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexEnvivEXT")) == NULL) || r;
-  r = ((glMultiTexGendEXT = (PFNGLMULTITEXGENDEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexGendEXT")) == NULL) || r;
-  r = ((glMultiTexGendvEXT = (PFNGLMULTITEXGENDVEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexGendvEXT")) == NULL) || r;
-  r = ((glMultiTexGenfEXT = (PFNGLMULTITEXGENFEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexGenfEXT")) == NULL) || r;
-  r = ((glMultiTexGenfvEXT = (PFNGLMULTITEXGENFVEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexGenfvEXT")) == NULL) || r;
-  r = ((glMultiTexGeniEXT = (PFNGLMULTITEXGENIEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexGeniEXT")) == NULL) || r;
-  r = ((glMultiTexGenivEXT = (PFNGLMULTITEXGENIVEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexGenivEXT")) == NULL) || r;
-  r = ((glMultiTexImage1DEXT = (PFNGLMULTITEXIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexImage1DEXT")) == NULL) || r;
-  r = ((glMultiTexImage2DEXT = (PFNGLMULTITEXIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexImage2DEXT")) == NULL) || r;
-  r = ((glMultiTexImage3DEXT = (PFNGLMULTITEXIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexImage3DEXT")) == NULL) || r;
-  r = ((glMultiTexParameterIivEXT = (PFNGLMULTITEXPARAMETERIIVEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexParameterIivEXT")) == NULL) || r;
-  r = ((glMultiTexParameterIuivEXT = (PFNGLMULTITEXPARAMETERIUIVEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexParameterIuivEXT")) == NULL) || r;
-  r = ((glMultiTexParameterfEXT = (PFNGLMULTITEXPARAMETERFEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexParameterfEXT")) == NULL) || r;
-  r = ((glMultiTexParameterfvEXT = (PFNGLMULTITEXPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexParameterfvEXT")) == NULL) || r;
-  r = ((glMultiTexParameteriEXT = (PFNGLMULTITEXPARAMETERIEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexParameteriEXT")) == NULL) || r;
-  r = ((glMultiTexParameterivEXT = (PFNGLMULTITEXPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexParameterivEXT")) == NULL) || r;
-  r = ((glMultiTexRenderbufferEXT = (PFNGLMULTITEXRENDERBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexRenderbufferEXT")) == NULL) || r;
-  r = ((glMultiTexSubImage1DEXT = (PFNGLMULTITEXSUBIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexSubImage1DEXT")) == NULL) || r;
-  r = ((glMultiTexSubImage2DEXT = (PFNGLMULTITEXSUBIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexSubImage2DEXT")) == NULL) || r;
-  r = ((glMultiTexSubImage3DEXT = (PFNGLMULTITEXSUBIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiTexSubImage3DEXT")) == NULL) || r;
-  r = ((glNamedBufferDataEXT = (PFNGLNAMEDBUFFERDATAEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedBufferDataEXT")) == NULL) || r;
-  r = ((glNamedBufferSubDataEXT = (PFNGLNAMEDBUFFERSUBDATAEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedBufferSubDataEXT")) == NULL) || r;
-  r = ((glNamedCopyBufferSubDataEXT = (PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedCopyBufferSubDataEXT")) == NULL) || r;
-  r = ((glNamedFramebufferRenderbufferEXT = (PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glNamedFramebufferRenderbufferEXT")) == NULL) || r;
-  r = ((glNamedFramebufferTexture1DEXT = (PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedFramebufferTexture1DEXT")) == NULL) || r;
-  r = ((glNamedFramebufferTexture2DEXT = (PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedFramebufferTexture2DEXT")) == NULL) || r;
-  r = ((glNamedFramebufferTexture3DEXT = (PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedFramebufferTexture3DEXT")) == NULL) || r;
-  r = ((glNamedFramebufferTextureEXT = (PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedFramebufferTextureEXT")) == NULL) || r;
-  r = ((glNamedFramebufferTextureFaceEXT = (PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedFramebufferTextureFaceEXT")) == NULL) || r;
-  r = ((glNamedFramebufferTextureLayerEXT = (PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC)glewGetProcAddress((const GLubyte*)"glNamedFramebufferTextureLayerEXT")) == NULL) || r;
-  r = ((glNamedProgramLocalParameter4dEXT = (PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedProgramLocalParameter4dEXT")) == NULL) || r;
-  r = ((glNamedProgramLocalParameter4dvEXT = (PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedProgramLocalParameter4dvEXT")) == NULL) || r;
-  r = ((glNamedProgramLocalParameter4fEXT = (PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedProgramLocalParameter4fEXT")) == NULL) || r;
-  r = ((glNamedProgramLocalParameter4fvEXT = (PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedProgramLocalParameter4fvEXT")) == NULL) || r;
-  r = ((glNamedProgramLocalParameterI4iEXT = (PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedProgramLocalParameterI4iEXT")) == NULL) || r;
-  r = ((glNamedProgramLocalParameterI4ivEXT = (PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedProgramLocalParameterI4ivEXT")) == NULL) || r;
-  r = ((glNamedProgramLocalParameterI4uiEXT = (PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedProgramLocalParameterI4uiEXT")) == NULL) || r;
-  r = ((glNamedProgramLocalParameterI4uivEXT = (PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedProgramLocalParameterI4uivEXT")) == NULL) || r;
-  r = ((glNamedProgramLocalParameters4fvEXT = (PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedProgramLocalParameters4fvEXT")) == NULL) || r;
-  r = ((glNamedProgramLocalParametersI4ivEXT = (PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedProgramLocalParametersI4ivEXT")) == NULL) || r;
-  r = ((glNamedProgramLocalParametersI4uivEXT = (PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedProgramLocalParametersI4uivEXT")) == NULL) || r;
-  r = ((glNamedProgramStringEXT = (PFNGLNAMEDPROGRAMSTRINGEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedProgramStringEXT")) == NULL) || r;
-  r = ((glNamedRenderbufferStorageEXT = (PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedRenderbufferStorageEXT")) == NULL) || r;
-  r = ((glNamedRenderbufferStorageMultisampleCoverageEXT = (PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedRenderbufferStorageMultisampleCoverageEXT")) == NULL) || r;
-  r = ((glNamedRenderbufferStorageMultisampleEXT = (PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC)glewGetProcAddress((const GLubyte*)"glNamedRenderbufferStorageMultisampleEXT")) == NULL) || r;
-  r = ((glProgramUniform1fEXT = (PFNGLPROGRAMUNIFORM1FEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform1fEXT")) == NULL) || r;
-  r = ((glProgramUniform1fvEXT = (PFNGLPROGRAMUNIFORM1FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform1fvEXT")) == NULL) || r;
-  r = ((glProgramUniform1iEXT = (PFNGLPROGRAMUNIFORM1IEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform1iEXT")) == NULL) || r;
-  r = ((glProgramUniform1ivEXT = (PFNGLPROGRAMUNIFORM1IVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform1ivEXT")) == NULL) || r;
-  r = ((glProgramUniform1uiEXT = (PFNGLPROGRAMUNIFORM1UIEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform1uiEXT")) == NULL) || r;
-  r = ((glProgramUniform1uivEXT = (PFNGLPROGRAMUNIFORM1UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform1uivEXT")) == NULL) || r;
-  r = ((glProgramUniform2fEXT = (PFNGLPROGRAMUNIFORM2FEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform2fEXT")) == NULL) || r;
-  r = ((glProgramUniform2fvEXT = (PFNGLPROGRAMUNIFORM2FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform2fvEXT")) == NULL) || r;
-  r = ((glProgramUniform2iEXT = (PFNGLPROGRAMUNIFORM2IEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform2iEXT")) == NULL) || r;
-  r = ((glProgramUniform2ivEXT = (PFNGLPROGRAMUNIFORM2IVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform2ivEXT")) == NULL) || r;
-  r = ((glProgramUniform2uiEXT = (PFNGLPROGRAMUNIFORM2UIEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform2uiEXT")) == NULL) || r;
-  r = ((glProgramUniform2uivEXT = (PFNGLPROGRAMUNIFORM2UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform2uivEXT")) == NULL) || r;
-  r = ((glProgramUniform3fEXT = (PFNGLPROGRAMUNIFORM3FEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform3fEXT")) == NULL) || r;
-  r = ((glProgramUniform3fvEXT = (PFNGLPROGRAMUNIFORM3FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform3fvEXT")) == NULL) || r;
-  r = ((glProgramUniform3iEXT = (PFNGLPROGRAMUNIFORM3IEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform3iEXT")) == NULL) || r;
-  r = ((glProgramUniform3ivEXT = (PFNGLPROGRAMUNIFORM3IVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform3ivEXT")) == NULL) || r;
-  r = ((glProgramUniform3uiEXT = (PFNGLPROGRAMUNIFORM3UIEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform3uiEXT")) == NULL) || r;
-  r = ((glProgramUniform3uivEXT = (PFNGLPROGRAMUNIFORM3UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform3uivEXT")) == NULL) || r;
-  r = ((glProgramUniform4fEXT = (PFNGLPROGRAMUNIFORM4FEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform4fEXT")) == NULL) || r;
-  r = ((glProgramUniform4fvEXT = (PFNGLPROGRAMUNIFORM4FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform4fvEXT")) == NULL) || r;
-  r = ((glProgramUniform4iEXT = (PFNGLPROGRAMUNIFORM4IEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform4iEXT")) == NULL) || r;
-  r = ((glProgramUniform4ivEXT = (PFNGLPROGRAMUNIFORM4IVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform4ivEXT")) == NULL) || r;
-  r = ((glProgramUniform4uiEXT = (PFNGLPROGRAMUNIFORM4UIEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform4uiEXT")) == NULL) || r;
-  r = ((glProgramUniform4uivEXT = (PFNGLPROGRAMUNIFORM4UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform4uivEXT")) == NULL) || r;
-  r = ((glProgramUniformMatrix2fvEXT = (PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniformMatrix2fvEXT")) == NULL) || r;
-  r = ((glProgramUniformMatrix2x3fvEXT = (PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniformMatrix2x3fvEXT")) == NULL) || r;
-  r = ((glProgramUniformMatrix2x4fvEXT = (PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniformMatrix2x4fvEXT")) == NULL) || r;
-  r = ((glProgramUniformMatrix3fvEXT = (PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniformMatrix3fvEXT")) == NULL) || r;
-  r = ((glProgramUniformMatrix3x2fvEXT = (PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniformMatrix3x2fvEXT")) == NULL) || r;
-  r = ((glProgramUniformMatrix3x4fvEXT = (PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniformMatrix3x4fvEXT")) == NULL) || r;
-  r = ((glProgramUniformMatrix4fvEXT = (PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniformMatrix4fvEXT")) == NULL) || r;
-  r = ((glProgramUniformMatrix4x2fvEXT = (PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniformMatrix4x2fvEXT")) == NULL) || r;
-  r = ((glProgramUniformMatrix4x3fvEXT = (PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramUniformMatrix4x3fvEXT")) == NULL) || r;
-  r = ((glPushClientAttribDefaultEXT = (PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC)glewGetProcAddress((const GLubyte*)"glPushClientAttribDefaultEXT")) == NULL) || r;
-  r = ((glTextureBufferEXT = (PFNGLTEXTUREBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glTextureBufferEXT")) == NULL) || r;
-  r = ((glTextureImage1DEXT = (PFNGLTEXTUREIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureImage1DEXT")) == NULL) || r;
-  r = ((glTextureImage2DEXT = (PFNGLTEXTUREIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureImage2DEXT")) == NULL) || r;
-  r = ((glTextureImage3DEXT = (PFNGLTEXTUREIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureImage3DEXT")) == NULL) || r;
-  r = ((glTextureParameterIivEXT = (PFNGLTEXTUREPARAMETERIIVEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureParameterIivEXT")) == NULL) || r;
-  r = ((glTextureParameterIuivEXT = (PFNGLTEXTUREPARAMETERIUIVEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureParameterIuivEXT")) == NULL) || r;
-  r = ((glTextureParameterfEXT = (PFNGLTEXTUREPARAMETERFEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureParameterfEXT")) == NULL) || r;
-  r = ((glTextureParameterfvEXT = (PFNGLTEXTUREPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureParameterfvEXT")) == NULL) || r;
-  r = ((glTextureParameteriEXT = (PFNGLTEXTUREPARAMETERIEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureParameteriEXT")) == NULL) || r;
-  r = ((glTextureParameterivEXT = (PFNGLTEXTUREPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureParameterivEXT")) == NULL) || r;
-  r = ((glTextureRenderbufferEXT = (PFNGLTEXTURERENDERBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glTextureRenderbufferEXT")) == NULL) || r;
-  r = ((glTextureSubImage1DEXT = (PFNGLTEXTURESUBIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureSubImage1DEXT")) == NULL) || r;
-  r = ((glTextureSubImage2DEXT = (PFNGLTEXTURESUBIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureSubImage2DEXT")) == NULL) || r;
-  r = ((glTextureSubImage3DEXT = (PFNGLTEXTURESUBIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureSubImage3DEXT")) == NULL) || r;
-  r = ((glUnmapNamedBufferEXT = (PFNGLUNMAPNAMEDBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glUnmapNamedBufferEXT")) == NULL) || r;
-  r = ((glVertexArrayColorOffsetEXT = (PFNGLVERTEXARRAYCOLOROFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayColorOffsetEXT")) == NULL) || r;
-  r = ((glVertexArrayEdgeFlagOffsetEXT = (PFNGLVERTEXARRAYEDGEFLAGOFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayEdgeFlagOffsetEXT")) == NULL) || r;
-  r = ((glVertexArrayFogCoordOffsetEXT = (PFNGLVERTEXARRAYFOGCOORDOFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayFogCoordOffsetEXT")) == NULL) || r;
-  r = ((glVertexArrayIndexOffsetEXT = (PFNGLVERTEXARRAYINDEXOFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayIndexOffsetEXT")) == NULL) || r;
-  r = ((glVertexArrayMultiTexCoordOffsetEXT = (PFNGLVERTEXARRAYMULTITEXCOORDOFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayMultiTexCoordOffsetEXT")) == NULL) || r;
-  r = ((glVertexArrayNormalOffsetEXT = (PFNGLVERTEXARRAYNORMALOFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayNormalOffsetEXT")) == NULL) || r;
-  r = ((glVertexArraySecondaryColorOffsetEXT = (PFNGLVERTEXARRAYSECONDARYCOLOROFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexArraySecondaryColorOffsetEXT")) == NULL) || r;
-  r = ((glVertexArrayTexCoordOffsetEXT = (PFNGLVERTEXARRAYTEXCOORDOFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayTexCoordOffsetEXT")) == NULL) || r;
-  r = ((glVertexArrayVertexAttribIOffsetEXT = (PFNGLVERTEXARRAYVERTEXATTRIBIOFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayVertexAttribIOffsetEXT")) == NULL) || r;
-  r = ((glVertexArrayVertexAttribOffsetEXT = (PFNGLVERTEXARRAYVERTEXATTRIBOFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayVertexAttribOffsetEXT")) == NULL) || r;
-  r = ((glVertexArrayVertexOffsetEXT = (PFNGLVERTEXARRAYVERTEXOFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayVertexOffsetEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_direct_state_access */
-
-#ifdef GL_EXT_draw_buffers2
-
-static GLboolean _glewInit_GL_EXT_draw_buffers2 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glColorMaskIndexedEXT = (PFNGLCOLORMASKINDEXEDEXTPROC)glewGetProcAddress((const GLubyte*)"glColorMaskIndexedEXT")) == NULL) || r;
-  r = ((glDisableIndexedEXT = (PFNGLDISABLEINDEXEDEXTPROC)glewGetProcAddress((const GLubyte*)"glDisableIndexedEXT")) == NULL) || r;
-  r = ((glEnableIndexedEXT = (PFNGLENABLEINDEXEDEXTPROC)glewGetProcAddress((const GLubyte*)"glEnableIndexedEXT")) == NULL) || r;
-  r = ((glGetBooleanIndexedvEXT = (PFNGLGETBOOLEANINDEXEDVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetBooleanIndexedvEXT")) == NULL) || r;
-  r = ((glGetIntegerIndexedvEXT = (PFNGLGETINTEGERINDEXEDVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetIntegerIndexedvEXT")) == NULL) || r;
-  r = ((glIsEnabledIndexedEXT = (PFNGLISENABLEDINDEXEDEXTPROC)glewGetProcAddress((const GLubyte*)"glIsEnabledIndexedEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_draw_buffers2 */
-
-#ifdef GL_EXT_draw_instanced
-
-static GLboolean _glewInit_GL_EXT_draw_instanced (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDrawArraysInstancedEXT = (PFNGLDRAWARRAYSINSTANCEDEXTPROC)glewGetProcAddress((const GLubyte*)"glDrawArraysInstancedEXT")) == NULL) || r;
-  r = ((glDrawElementsInstancedEXT = (PFNGLDRAWELEMENTSINSTANCEDEXTPROC)glewGetProcAddress((const GLubyte*)"glDrawElementsInstancedEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_draw_instanced */
-
-#ifdef GL_EXT_draw_range_elements
-
-static GLboolean _glewInit_GL_EXT_draw_range_elements (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDrawRangeElementsEXT = (PFNGLDRAWRANGEELEMENTSEXTPROC)glewGetProcAddress((const GLubyte*)"glDrawRangeElementsEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_draw_range_elements */
-
-#ifdef GL_EXT_fog_coord
-
-static GLboolean _glewInit_GL_EXT_fog_coord (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFogCoordPointerEXT = (PFNGLFOGCOORDPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glFogCoordPointerEXT")) == NULL) || r;
-  r = ((glFogCoorddEXT = (PFNGLFOGCOORDDEXTPROC)glewGetProcAddress((const GLubyte*)"glFogCoorddEXT")) == NULL) || r;
-  r = ((glFogCoorddvEXT = (PFNGLFOGCOORDDVEXTPROC)glewGetProcAddress((const GLubyte*)"glFogCoorddvEXT")) == NULL) || r;
-  r = ((glFogCoordfEXT = (PFNGLFOGCOORDFEXTPROC)glewGetProcAddress((const GLubyte*)"glFogCoordfEXT")) == NULL) || r;
-  r = ((glFogCoordfvEXT = (PFNGLFOGCOORDFVEXTPROC)glewGetProcAddress((const GLubyte*)"glFogCoordfvEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_fog_coord */
-
-#ifdef GL_EXT_fragment_lighting
-
-static GLboolean _glewInit_GL_EXT_fragment_lighting (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFragmentColorMaterialEXT = (PFNGLFRAGMENTCOLORMATERIALEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentColorMaterialEXT")) == NULL) || r;
-  r = ((glFragmentLightModelfEXT = (PFNGLFRAGMENTLIGHTMODELFEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightModelfEXT")) == NULL) || r;
-  r = ((glFragmentLightModelfvEXT = (PFNGLFRAGMENTLIGHTMODELFVEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightModelfvEXT")) == NULL) || r;
-  r = ((glFragmentLightModeliEXT = (PFNGLFRAGMENTLIGHTMODELIEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightModeliEXT")) == NULL) || r;
-  r = ((glFragmentLightModelivEXT = (PFNGLFRAGMENTLIGHTMODELIVEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightModelivEXT")) == NULL) || r;
-  r = ((glFragmentLightfEXT = (PFNGLFRAGMENTLIGHTFEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightfEXT")) == NULL) || r;
-  r = ((glFragmentLightfvEXT = (PFNGLFRAGMENTLIGHTFVEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightfvEXT")) == NULL) || r;
-  r = ((glFragmentLightiEXT = (PFNGLFRAGMENTLIGHTIEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightiEXT")) == NULL) || r;
-  r = ((glFragmentLightivEXT = (PFNGLFRAGMENTLIGHTIVEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightivEXT")) == NULL) || r;
-  r = ((glFragmentMaterialfEXT = (PFNGLFRAGMENTMATERIALFEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentMaterialfEXT")) == NULL) || r;
-  r = ((glFragmentMaterialfvEXT = (PFNGLFRAGMENTMATERIALFVEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentMaterialfvEXT")) == NULL) || r;
-  r = ((glFragmentMaterialiEXT = (PFNGLFRAGMENTMATERIALIEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentMaterialiEXT")) == NULL) || r;
-  r = ((glFragmentMaterialivEXT = (PFNGLFRAGMENTMATERIALIVEXTPROC)glewGetProcAddress((const GLubyte*)"glFragmentMaterialivEXT")) == NULL) || r;
-  r = ((glGetFragmentLightfvEXT = (PFNGLGETFRAGMENTLIGHTFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetFragmentLightfvEXT")) == NULL) || r;
-  r = ((glGetFragmentLightivEXT = (PFNGLGETFRAGMENTLIGHTIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetFragmentLightivEXT")) == NULL) || r;
-  r = ((glGetFragmentMaterialfvEXT = (PFNGLGETFRAGMENTMATERIALFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetFragmentMaterialfvEXT")) == NULL) || r;
-  r = ((glGetFragmentMaterialivEXT = (PFNGLGETFRAGMENTMATERIALIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetFragmentMaterialivEXT")) == NULL) || r;
-  r = ((glLightEnviEXT = (PFNGLLIGHTENVIEXTPROC)glewGetProcAddress((const GLubyte*)"glLightEnviEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_fragment_lighting */
-
-#ifdef GL_EXT_framebuffer_blit
-
-static GLboolean _glewInit_GL_EXT_framebuffer_blit (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBlitFramebufferEXT = (PFNGLBLITFRAMEBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glBlitFramebufferEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_framebuffer_blit */
-
-#ifdef GL_EXT_framebuffer_multisample
-
-static GLboolean _glewInit_GL_EXT_framebuffer_multisample (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glRenderbufferStorageMultisampleEXT = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC)glewGetProcAddress((const GLubyte*)"glRenderbufferStorageMultisampleEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_framebuffer_multisample */
-
-#ifdef GL_EXT_framebuffer_object
-
-static GLboolean _glewInit_GL_EXT_framebuffer_object (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindFramebufferEXT = (PFNGLBINDFRAMEBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glBindFramebufferEXT")) == NULL) || r;
-  r = ((glBindRenderbufferEXT = (PFNGLBINDRENDERBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glBindRenderbufferEXT")) == NULL) || r;
-  r = ((glCheckFramebufferStatusEXT = (PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC)glewGetProcAddress((const GLubyte*)"glCheckFramebufferStatusEXT")) == NULL) || r;
-  r = ((glDeleteFramebuffersEXT = (PFNGLDELETEFRAMEBUFFERSEXTPROC)glewGetProcAddress((const GLubyte*)"glDeleteFramebuffersEXT")) == NULL) || r;
-  r = ((glDeleteRenderbuffersEXT = (PFNGLDELETERENDERBUFFERSEXTPROC)glewGetProcAddress((const GLubyte*)"glDeleteRenderbuffersEXT")) == NULL) || r;
-  r = ((glFramebufferRenderbufferEXT = (PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glFramebufferRenderbufferEXT")) == NULL) || r;
-  r = ((glFramebufferTexture1DEXT = (PFNGLFRAMEBUFFERTEXTURE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTexture1DEXT")) == NULL) || r;
-  r = ((glFramebufferTexture2DEXT = (PFNGLFRAMEBUFFERTEXTURE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTexture2DEXT")) == NULL) || r;
-  r = ((glFramebufferTexture3DEXT = (PFNGLFRAMEBUFFERTEXTURE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTexture3DEXT")) == NULL) || r;
-  r = ((glGenFramebuffersEXT = (PFNGLGENFRAMEBUFFERSEXTPROC)glewGetProcAddress((const GLubyte*)"glGenFramebuffersEXT")) == NULL) || r;
-  r = ((glGenRenderbuffersEXT = (PFNGLGENRENDERBUFFERSEXTPROC)glewGetProcAddress((const GLubyte*)"glGenRenderbuffersEXT")) == NULL) || r;
-  r = ((glGenerateMipmapEXT = (PFNGLGENERATEMIPMAPEXTPROC)glewGetProcAddress((const GLubyte*)"glGenerateMipmapEXT")) == NULL) || r;
-  r = ((glGetFramebufferAttachmentParameterivEXT = (PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetFramebufferAttachmentParameterivEXT")) == NULL) || r;
-  r = ((glGetRenderbufferParameterivEXT = (PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetRenderbufferParameterivEXT")) == NULL) || r;
-  r = ((glIsFramebufferEXT = (PFNGLISFRAMEBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glIsFramebufferEXT")) == NULL) || r;
-  r = ((glIsRenderbufferEXT = (PFNGLISRENDERBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glIsRenderbufferEXT")) == NULL) || r;
-  r = ((glRenderbufferStorageEXT = (PFNGLRENDERBUFFERSTORAGEEXTPROC)glewGetProcAddress((const GLubyte*)"glRenderbufferStorageEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_framebuffer_object */
-
-#ifdef GL_EXT_framebuffer_sRGB
-
-#endif /* GL_EXT_framebuffer_sRGB */
-
-#ifdef GL_EXT_geometry_shader4
-
-static GLboolean _glewInit_GL_EXT_geometry_shader4 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFramebufferTextureEXT = (PFNGLFRAMEBUFFERTEXTUREEXTPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTextureEXT")) == NULL) || r;
-  r = ((glFramebufferTextureFaceEXT = (PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTextureFaceEXT")) == NULL) || r;
-  r = ((glFramebufferTextureLayerEXT = (PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC)glewGetProcAddress((const GLubyte*)"glFramebufferTextureLayerEXT")) == NULL) || r;
-  r = ((glProgramParameteriEXT = (PFNGLPROGRAMPARAMETERIEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramParameteriEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_geometry_shader4 */
-
-#ifdef GL_EXT_gpu_program_parameters
-
-static GLboolean _glewInit_GL_EXT_gpu_program_parameters (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glProgramEnvParameters4fvEXT = (PFNGLPROGRAMENVPARAMETERS4FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramEnvParameters4fvEXT")) == NULL) || r;
-  r = ((glProgramLocalParameters4fvEXT = (PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC)glewGetProcAddress((const GLubyte*)"glProgramLocalParameters4fvEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_gpu_program_parameters */
-
-#ifdef GL_EXT_gpu_shader4
-
-static GLboolean _glewInit_GL_EXT_gpu_shader4 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindFragDataLocationEXT = (PFNGLBINDFRAGDATALOCATIONEXTPROC)glewGetProcAddress((const GLubyte*)"glBindFragDataLocationEXT")) == NULL) || r;
-  r = ((glGetFragDataLocationEXT = (PFNGLGETFRAGDATALOCATIONEXTPROC)glewGetProcAddress((const GLubyte*)"glGetFragDataLocationEXT")) == NULL) || r;
-  r = ((glGetUniformuivEXT = (PFNGLGETUNIFORMUIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetUniformuivEXT")) == NULL) || r;
-  r = ((glGetVertexAttribIivEXT = (PFNGLGETVERTEXATTRIBIIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribIivEXT")) == NULL) || r;
-  r = ((glGetVertexAttribIuivEXT = (PFNGLGETVERTEXATTRIBIUIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribIuivEXT")) == NULL) || r;
-  r = ((glUniform1uiEXT = (PFNGLUNIFORM1UIEXTPROC)glewGetProcAddress((const GLubyte*)"glUniform1uiEXT")) == NULL) || r;
-  r = ((glUniform1uivEXT = (PFNGLUNIFORM1UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glUniform1uivEXT")) == NULL) || r;
-  r = ((glUniform2uiEXT = (PFNGLUNIFORM2UIEXTPROC)glewGetProcAddress((const GLubyte*)"glUniform2uiEXT")) == NULL) || r;
-  r = ((glUniform2uivEXT = (PFNGLUNIFORM2UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glUniform2uivEXT")) == NULL) || r;
-  r = ((glUniform3uiEXT = (PFNGLUNIFORM3UIEXTPROC)glewGetProcAddress((const GLubyte*)"glUniform3uiEXT")) == NULL) || r;
-  r = ((glUniform3uivEXT = (PFNGLUNIFORM3UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glUniform3uivEXT")) == NULL) || r;
-  r = ((glUniform4uiEXT = (PFNGLUNIFORM4UIEXTPROC)glewGetProcAddress((const GLubyte*)"glUniform4uiEXT")) == NULL) || r;
-  r = ((glUniform4uivEXT = (PFNGLUNIFORM4UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glUniform4uivEXT")) == NULL) || r;
-  r = ((glVertexAttribI1iEXT = (PFNGLVERTEXATTRIBI1IEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI1iEXT")) == NULL) || r;
-  r = ((glVertexAttribI1ivEXT = (PFNGLVERTEXATTRIBI1IVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI1ivEXT")) == NULL) || r;
-  r = ((glVertexAttribI1uiEXT = (PFNGLVERTEXATTRIBI1UIEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI1uiEXT")) == NULL) || r;
-  r = ((glVertexAttribI1uivEXT = (PFNGLVERTEXATTRIBI1UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI1uivEXT")) == NULL) || r;
-  r = ((glVertexAttribI2iEXT = (PFNGLVERTEXATTRIBI2IEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI2iEXT")) == NULL) || r;
-  r = ((glVertexAttribI2ivEXT = (PFNGLVERTEXATTRIBI2IVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI2ivEXT")) == NULL) || r;
-  r = ((glVertexAttribI2uiEXT = (PFNGLVERTEXATTRIBI2UIEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI2uiEXT")) == NULL) || r;
-  r = ((glVertexAttribI2uivEXT = (PFNGLVERTEXATTRIBI2UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI2uivEXT")) == NULL) || r;
-  r = ((glVertexAttribI3iEXT = (PFNGLVERTEXATTRIBI3IEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI3iEXT")) == NULL) || r;
-  r = ((glVertexAttribI3ivEXT = (PFNGLVERTEXATTRIBI3IVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI3ivEXT")) == NULL) || r;
-  r = ((glVertexAttribI3uiEXT = (PFNGLVERTEXATTRIBI3UIEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI3uiEXT")) == NULL) || r;
-  r = ((glVertexAttribI3uivEXT = (PFNGLVERTEXATTRIBI3UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI3uivEXT")) == NULL) || r;
-  r = ((glVertexAttribI4bvEXT = (PFNGLVERTEXATTRIBI4BVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4bvEXT")) == NULL) || r;
-  r = ((glVertexAttribI4iEXT = (PFNGLVERTEXATTRIBI4IEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4iEXT")) == NULL) || r;
-  r = ((glVertexAttribI4ivEXT = (PFNGLVERTEXATTRIBI4IVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4ivEXT")) == NULL) || r;
-  r = ((glVertexAttribI4svEXT = (PFNGLVERTEXATTRIBI4SVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4svEXT")) == NULL) || r;
-  r = ((glVertexAttribI4ubvEXT = (PFNGLVERTEXATTRIBI4UBVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4ubvEXT")) == NULL) || r;
-  r = ((glVertexAttribI4uiEXT = (PFNGLVERTEXATTRIBI4UIEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4uiEXT")) == NULL) || r;
-  r = ((glVertexAttribI4uivEXT = (PFNGLVERTEXATTRIBI4UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4uivEXT")) == NULL) || r;
-  r = ((glVertexAttribI4usvEXT = (PFNGLVERTEXATTRIBI4USVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribI4usvEXT")) == NULL) || r;
-  r = ((glVertexAttribIPointerEXT = (PFNGLVERTEXATTRIBIPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribIPointerEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_gpu_shader4 */
-
-#ifdef GL_EXT_histogram
-
-static GLboolean _glewInit_GL_EXT_histogram (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetHistogramEXT = (PFNGLGETHISTOGRAMEXTPROC)glewGetProcAddress((const GLubyte*)"glGetHistogramEXT")) == NULL) || r;
-  r = ((glGetHistogramParameterfvEXT = (PFNGLGETHISTOGRAMPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetHistogramParameterfvEXT")) == NULL) || r;
-  r = ((glGetHistogramParameterivEXT = (PFNGLGETHISTOGRAMPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetHistogramParameterivEXT")) == NULL) || r;
-  r = ((glGetMinmaxEXT = (PFNGLGETMINMAXEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMinmaxEXT")) == NULL) || r;
-  r = ((glGetMinmaxParameterfvEXT = (PFNGLGETMINMAXPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMinmaxParameterfvEXT")) == NULL) || r;
-  r = ((glGetMinmaxParameterivEXT = (PFNGLGETMINMAXPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetMinmaxParameterivEXT")) == NULL) || r;
-  r = ((glHistogramEXT = (PFNGLHISTOGRAMEXTPROC)glewGetProcAddress((const GLubyte*)"glHistogramEXT")) == NULL) || r;
-  r = ((glMinmaxEXT = (PFNGLMINMAXEXTPROC)glewGetProcAddress((const GLubyte*)"glMinmaxEXT")) == NULL) || r;
-  r = ((glResetHistogramEXT = (PFNGLRESETHISTOGRAMEXTPROC)glewGetProcAddress((const GLubyte*)"glResetHistogramEXT")) == NULL) || r;
-  r = ((glResetMinmaxEXT = (PFNGLRESETMINMAXEXTPROC)glewGetProcAddress((const GLubyte*)"glResetMinmaxEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_histogram */
-
-#ifdef GL_EXT_index_array_formats
-
-#endif /* GL_EXT_index_array_formats */
-
-#ifdef GL_EXT_index_func
-
-static GLboolean _glewInit_GL_EXT_index_func (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glIndexFuncEXT = (PFNGLINDEXFUNCEXTPROC)glewGetProcAddress((const GLubyte*)"glIndexFuncEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_index_func */
-
-#ifdef GL_EXT_index_material
-
-static GLboolean _glewInit_GL_EXT_index_material (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glIndexMaterialEXT = (PFNGLINDEXMATERIALEXTPROC)glewGetProcAddress((const GLubyte*)"glIndexMaterialEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_index_material */
-
-#ifdef GL_EXT_index_texture
-
-#endif /* GL_EXT_index_texture */
-
-#ifdef GL_EXT_light_texture
-
-static GLboolean _glewInit_GL_EXT_light_texture (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glApplyTextureEXT = (PFNGLAPPLYTEXTUREEXTPROC)glewGetProcAddress((const GLubyte*)"glApplyTextureEXT")) == NULL) || r;
-  r = ((glTextureLightEXT = (PFNGLTEXTURELIGHTEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureLightEXT")) == NULL) || r;
-  r = ((glTextureMaterialEXT = (PFNGLTEXTUREMATERIALEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureMaterialEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_light_texture */
-
-#ifdef GL_EXT_misc_attribute
-
-#endif /* GL_EXT_misc_attribute */
-
-#ifdef GL_EXT_multi_draw_arrays
-
-static GLboolean _glewInit_GL_EXT_multi_draw_arrays (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glMultiDrawArraysEXT = (PFNGLMULTIDRAWARRAYSEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiDrawArraysEXT")) == NULL) || r;
-  r = ((glMultiDrawElementsEXT = (PFNGLMULTIDRAWELEMENTSEXTPROC)glewGetProcAddress((const GLubyte*)"glMultiDrawElementsEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_multi_draw_arrays */
-
-#ifdef GL_EXT_multisample
-
-static GLboolean _glewInit_GL_EXT_multisample (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glSampleMaskEXT = (PFNGLSAMPLEMASKEXTPROC)glewGetProcAddress((const GLubyte*)"glSampleMaskEXT")) == NULL) || r;
-  r = ((glSamplePatternEXT = (PFNGLSAMPLEPATTERNEXTPROC)glewGetProcAddress((const GLubyte*)"glSamplePatternEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_multisample */
-
-#ifdef GL_EXT_packed_depth_stencil
-
-#endif /* GL_EXT_packed_depth_stencil */
-
-#ifdef GL_EXT_packed_float
-
-#endif /* GL_EXT_packed_float */
-
-#ifdef GL_EXT_packed_pixels
-
-#endif /* GL_EXT_packed_pixels */
-
-#ifdef GL_EXT_paletted_texture
-
-static GLboolean _glewInit_GL_EXT_paletted_texture (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glColorTableEXT = (PFNGLCOLORTABLEEXTPROC)glewGetProcAddress((const GLubyte*)"glColorTableEXT")) == NULL) || r;
-  r = ((glGetColorTableEXT = (PFNGLGETCOLORTABLEEXTPROC)glewGetProcAddress((const GLubyte*)"glGetColorTableEXT")) == NULL) || r;
-  r = ((glGetColorTableParameterfvEXT = (PFNGLGETCOLORTABLEPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetColorTableParameterfvEXT")) == NULL) || r;
-  r = ((glGetColorTableParameterivEXT = (PFNGLGETCOLORTABLEPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetColorTableParameterivEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_paletted_texture */
-
-#ifdef GL_EXT_pixel_buffer_object
-
-#endif /* GL_EXT_pixel_buffer_object */
-
-#ifdef GL_EXT_pixel_transform
-
-static GLboolean _glewInit_GL_EXT_pixel_transform (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetPixelTransformParameterfvEXT = (PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetPixelTransformParameterfvEXT")) == NULL) || r;
-  r = ((glGetPixelTransformParameterivEXT = (PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetPixelTransformParameterivEXT")) == NULL) || r;
-  r = ((glPixelTransformParameterfEXT = (PFNGLPIXELTRANSFORMPARAMETERFEXTPROC)glewGetProcAddress((const GLubyte*)"glPixelTransformParameterfEXT")) == NULL) || r;
-  r = ((glPixelTransformParameterfvEXT = (PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glPixelTransformParameterfvEXT")) == NULL) || r;
-  r = ((glPixelTransformParameteriEXT = (PFNGLPIXELTRANSFORMPARAMETERIEXTPROC)glewGetProcAddress((const GLubyte*)"glPixelTransformParameteriEXT")) == NULL) || r;
-  r = ((glPixelTransformParameterivEXT = (PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC)glewGetProcAddress((const GLubyte*)"glPixelTransformParameterivEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_pixel_transform */
-
-#ifdef GL_EXT_pixel_transform_color_table
-
-#endif /* GL_EXT_pixel_transform_color_table */
-
-#ifdef GL_EXT_point_parameters
-
-static GLboolean _glewInit_GL_EXT_point_parameters (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glPointParameterfEXT = (PFNGLPOINTPARAMETERFEXTPROC)glewGetProcAddress((const GLubyte*)"glPointParameterfEXT")) == NULL) || r;
-  r = ((glPointParameterfvEXT = (PFNGLPOINTPARAMETERFVEXTPROC)glewGetProcAddress((const GLubyte*)"glPointParameterfvEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_point_parameters */
-
-#ifdef GL_EXT_polygon_offset
-
-static GLboolean _glewInit_GL_EXT_polygon_offset (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glPolygonOffsetEXT = (PFNGLPOLYGONOFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glPolygonOffsetEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_polygon_offset */
-
-#ifdef GL_EXT_provoking_vertex
-
-static GLboolean _glewInit_GL_EXT_provoking_vertex (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glProvokingVertexEXT = (PFNGLPROVOKINGVERTEXEXTPROC)glewGetProcAddress((const GLubyte*)"glProvokingVertexEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_provoking_vertex */
-
-#ifdef GL_EXT_rescale_normal
-
-#endif /* GL_EXT_rescale_normal */
-
-#ifdef GL_EXT_scene_marker
-
-static GLboolean _glewInit_GL_EXT_scene_marker (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBeginSceneEXT = (PFNGLBEGINSCENEEXTPROC)glewGetProcAddress((const GLubyte*)"glBeginSceneEXT")) == NULL) || r;
-  r = ((glEndSceneEXT = (PFNGLENDSCENEEXTPROC)glewGetProcAddress((const GLubyte*)"glEndSceneEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_scene_marker */
-
-#ifdef GL_EXT_secondary_color
-
-static GLboolean _glewInit_GL_EXT_secondary_color (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glSecondaryColor3bEXT = (PFNGLSECONDARYCOLOR3BEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3bEXT")) == NULL) || r;
-  r = ((glSecondaryColor3bvEXT = (PFNGLSECONDARYCOLOR3BVEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3bvEXT")) == NULL) || r;
-  r = ((glSecondaryColor3dEXT = (PFNGLSECONDARYCOLOR3DEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3dEXT")) == NULL) || r;
-  r = ((glSecondaryColor3dvEXT = (PFNGLSECONDARYCOLOR3DVEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3dvEXT")) == NULL) || r;
-  r = ((glSecondaryColor3fEXT = (PFNGLSECONDARYCOLOR3FEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3fEXT")) == NULL) || r;
-  r = ((glSecondaryColor3fvEXT = (PFNGLSECONDARYCOLOR3FVEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3fvEXT")) == NULL) || r;
-  r = ((glSecondaryColor3iEXT = (PFNGLSECONDARYCOLOR3IEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3iEXT")) == NULL) || r;
-  r = ((glSecondaryColor3ivEXT = (PFNGLSECONDARYCOLOR3IVEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3ivEXT")) == NULL) || r;
-  r = ((glSecondaryColor3sEXT = (PFNGLSECONDARYCOLOR3SEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3sEXT")) == NULL) || r;
-  r = ((glSecondaryColor3svEXT = (PFNGLSECONDARYCOLOR3SVEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3svEXT")) == NULL) || r;
-  r = ((glSecondaryColor3ubEXT = (PFNGLSECONDARYCOLOR3UBEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3ubEXT")) == NULL) || r;
-  r = ((glSecondaryColor3ubvEXT = (PFNGLSECONDARYCOLOR3UBVEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3ubvEXT")) == NULL) || r;
-  r = ((glSecondaryColor3uiEXT = (PFNGLSECONDARYCOLOR3UIEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3uiEXT")) == NULL) || r;
-  r = ((glSecondaryColor3uivEXT = (PFNGLSECONDARYCOLOR3UIVEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3uivEXT")) == NULL) || r;
-  r = ((glSecondaryColor3usEXT = (PFNGLSECONDARYCOLOR3USEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3usEXT")) == NULL) || r;
-  r = ((glSecondaryColor3usvEXT = (PFNGLSECONDARYCOLOR3USVEXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3usvEXT")) == NULL) || r;
-  r = ((glSecondaryColorPointerEXT = (PFNGLSECONDARYCOLORPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColorPointerEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_secondary_color */
-
-#ifdef GL_EXT_separate_shader_objects
-
-static GLboolean _glewInit_GL_EXT_separate_shader_objects (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glActiveProgramEXT = (PFNGLACTIVEPROGRAMEXTPROC)glewGetProcAddress((const GLubyte*)"glActiveProgramEXT")) == NULL) || r;
-  r = ((glCreateShaderProgramEXT = (PFNGLCREATESHADERPROGRAMEXTPROC)glewGetProcAddress((const GLubyte*)"glCreateShaderProgramEXT")) == NULL) || r;
-  r = ((glUseShaderProgramEXT = (PFNGLUSESHADERPROGRAMEXTPROC)glewGetProcAddress((const GLubyte*)"glUseShaderProgramEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_separate_shader_objects */
-
-#ifdef GL_EXT_separate_specular_color
-
-#endif /* GL_EXT_separate_specular_color */
-
-#ifdef GL_EXT_shader_image_load_store
-
-static GLboolean _glewInit_GL_EXT_shader_image_load_store (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindImageTextureEXT = (PFNGLBINDIMAGETEXTUREEXTPROC)glewGetProcAddress((const GLubyte*)"glBindImageTextureEXT")) == NULL) || r;
-  r = ((glMemoryBarrierEXT = (PFNGLMEMORYBARRIEREXTPROC)glewGetProcAddress((const GLubyte*)"glMemoryBarrierEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_shader_image_load_store */
-
-#ifdef GL_EXT_shadow_funcs
-
-#endif /* GL_EXT_shadow_funcs */
-
-#ifdef GL_EXT_shared_texture_palette
-
-#endif /* GL_EXT_shared_texture_palette */
-
-#ifdef GL_EXT_stencil_clear_tag
-
-#endif /* GL_EXT_stencil_clear_tag */
-
-#ifdef GL_EXT_stencil_two_side
-
-static GLboolean _glewInit_GL_EXT_stencil_two_side (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glActiveStencilFaceEXT = (PFNGLACTIVESTENCILFACEEXTPROC)glewGetProcAddress((const GLubyte*)"glActiveStencilFaceEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_stencil_two_side */
-
-#ifdef GL_EXT_stencil_wrap
-
-#endif /* GL_EXT_stencil_wrap */
-
-#ifdef GL_EXT_subtexture
-
-static GLboolean _glewInit_GL_EXT_subtexture (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glTexSubImage1DEXT = (PFNGLTEXSUBIMAGE1DEXTPROC)glewGetProcAddress((const GLubyte*)"glTexSubImage1DEXT")) == NULL) || r;
-  r = ((glTexSubImage2DEXT = (PFNGLTEXSUBIMAGE2DEXTPROC)glewGetProcAddress((const GLubyte*)"glTexSubImage2DEXT")) == NULL) || r;
-  r = ((glTexSubImage3DEXT = (PFNGLTEXSUBIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glTexSubImage3DEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_subtexture */
-
-#ifdef GL_EXT_texture
-
-#endif /* GL_EXT_texture */
-
-#ifdef GL_EXT_texture3D
-
-static GLboolean _glewInit_GL_EXT_texture3D (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glTexImage3DEXT = (PFNGLTEXIMAGE3DEXTPROC)glewGetProcAddress((const GLubyte*)"glTexImage3DEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_texture3D */
-
-#ifdef GL_EXT_texture_array
-
-#endif /* GL_EXT_texture_array */
-
-#ifdef GL_EXT_texture_buffer_object
-
-static GLboolean _glewInit_GL_EXT_texture_buffer_object (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glTexBufferEXT = (PFNGLTEXBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"glTexBufferEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_texture_buffer_object */
-
-#ifdef GL_EXT_texture_compression_dxt1
-
-#endif /* GL_EXT_texture_compression_dxt1 */
-
-#ifdef GL_EXT_texture_compression_latc
-
-#endif /* GL_EXT_texture_compression_latc */
-
-#ifdef GL_EXT_texture_compression_rgtc
-
-#endif /* GL_EXT_texture_compression_rgtc */
-
-#ifdef GL_EXT_texture_compression_s3tc
-
-#endif /* GL_EXT_texture_compression_s3tc */
-
-#ifdef GL_EXT_texture_cube_map
-
-#endif /* GL_EXT_texture_cube_map */
-
-#ifdef GL_EXT_texture_edge_clamp
-
-#endif /* GL_EXT_texture_edge_clamp */
-
-#ifdef GL_EXT_texture_env
-
-#endif /* GL_EXT_texture_env */
-
-#ifdef GL_EXT_texture_env_add
-
-#endif /* GL_EXT_texture_env_add */
-
-#ifdef GL_EXT_texture_env_combine
-
-#endif /* GL_EXT_texture_env_combine */
-
-#ifdef GL_EXT_texture_env_dot3
-
-#endif /* GL_EXT_texture_env_dot3 */
-
-#ifdef GL_EXT_texture_filter_anisotropic
-
-#endif /* GL_EXT_texture_filter_anisotropic */
-
-#ifdef GL_EXT_texture_integer
-
-static GLboolean _glewInit_GL_EXT_texture_integer (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glClearColorIiEXT = (PFNGLCLEARCOLORIIEXTPROC)glewGetProcAddress((const GLubyte*)"glClearColorIiEXT")) == NULL) || r;
-  r = ((glClearColorIuiEXT = (PFNGLCLEARCOLORIUIEXTPROC)glewGetProcAddress((const GLubyte*)"glClearColorIuiEXT")) == NULL) || r;
-  r = ((glGetTexParameterIivEXT = (PFNGLGETTEXPARAMETERIIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetTexParameterIivEXT")) == NULL) || r;
-  r = ((glGetTexParameterIuivEXT = (PFNGLGETTEXPARAMETERIUIVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetTexParameterIuivEXT")) == NULL) || r;
-  r = ((glTexParameterIivEXT = (PFNGLTEXPARAMETERIIVEXTPROC)glewGetProcAddress((const GLubyte*)"glTexParameterIivEXT")) == NULL) || r;
-  r = ((glTexParameterIuivEXT = (PFNGLTEXPARAMETERIUIVEXTPROC)glewGetProcAddress((const GLubyte*)"glTexParameterIuivEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_texture_integer */
-
-#ifdef GL_EXT_texture_lod_bias
-
-#endif /* GL_EXT_texture_lod_bias */
-
-#ifdef GL_EXT_texture_mirror_clamp
-
-#endif /* GL_EXT_texture_mirror_clamp */
-
-#ifdef GL_EXT_texture_object
-
-static GLboolean _glewInit_GL_EXT_texture_object (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glAreTexturesResidentEXT = (PFNGLARETEXTURESRESIDENTEXTPROC)glewGetProcAddress((const GLubyte*)"glAreTexturesResidentEXT")) == NULL) || r;
-  r = ((glBindTextureEXT = (PFNGLBINDTEXTUREEXTPROC)glewGetProcAddress((const GLubyte*)"glBindTextureEXT")) == NULL) || r;
-  r = ((glDeleteTexturesEXT = (PFNGLDELETETEXTURESEXTPROC)glewGetProcAddress((const GLubyte*)"glDeleteTexturesEXT")) == NULL) || r;
-  r = ((glGenTexturesEXT = (PFNGLGENTEXTURESEXTPROC)glewGetProcAddress((const GLubyte*)"glGenTexturesEXT")) == NULL) || r;
-  r = ((glIsTextureEXT = (PFNGLISTEXTUREEXTPROC)glewGetProcAddress((const GLubyte*)"glIsTextureEXT")) == NULL) || r;
-  r = ((glPrioritizeTexturesEXT = (PFNGLPRIORITIZETEXTURESEXTPROC)glewGetProcAddress((const GLubyte*)"glPrioritizeTexturesEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_texture_object */
-
-#ifdef GL_EXT_texture_perturb_normal
-
-static GLboolean _glewInit_GL_EXT_texture_perturb_normal (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glTextureNormalEXT = (PFNGLTEXTURENORMALEXTPROC)glewGetProcAddress((const GLubyte*)"glTextureNormalEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_texture_perturb_normal */
-
-#ifdef GL_EXT_texture_rectangle
-
-#endif /* GL_EXT_texture_rectangle */
-
-#ifdef GL_EXT_texture_sRGB
-
-#endif /* GL_EXT_texture_sRGB */
-
-#ifdef GL_EXT_texture_shared_exponent
-
-#endif /* GL_EXT_texture_shared_exponent */
-
-#ifdef GL_EXT_texture_snorm
-
-#endif /* GL_EXT_texture_snorm */
-
-#ifdef GL_EXT_texture_swizzle
-
-#endif /* GL_EXT_texture_swizzle */
-
-#ifdef GL_EXT_timer_query
-
-static GLboolean _glewInit_GL_EXT_timer_query (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetQueryObjecti64vEXT = (PFNGLGETQUERYOBJECTI64VEXTPROC)glewGetProcAddress((const GLubyte*)"glGetQueryObjecti64vEXT")) == NULL) || r;
-  r = ((glGetQueryObjectui64vEXT = (PFNGLGETQUERYOBJECTUI64VEXTPROC)glewGetProcAddress((const GLubyte*)"glGetQueryObjectui64vEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_timer_query */
-
-#ifdef GL_EXT_transform_feedback
-
-static GLboolean _glewInit_GL_EXT_transform_feedback (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBeginTransformFeedbackEXT = (PFNGLBEGINTRANSFORMFEEDBACKEXTPROC)glewGetProcAddress((const GLubyte*)"glBeginTransformFeedbackEXT")) == NULL) || r;
-  r = ((glBindBufferBaseEXT = (PFNGLBINDBUFFERBASEEXTPROC)glewGetProcAddress((const GLubyte*)"glBindBufferBaseEXT")) == NULL) || r;
-  r = ((glBindBufferOffsetEXT = (PFNGLBINDBUFFEROFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glBindBufferOffsetEXT")) == NULL) || r;
-  r = ((glBindBufferRangeEXT = (PFNGLBINDBUFFERRANGEEXTPROC)glewGetProcAddress((const GLubyte*)"glBindBufferRangeEXT")) == NULL) || r;
-  r = ((glEndTransformFeedbackEXT = (PFNGLENDTRANSFORMFEEDBACKEXTPROC)glewGetProcAddress((const GLubyte*)"glEndTransformFeedbackEXT")) == NULL) || r;
-  r = ((glGetTransformFeedbackVaryingEXT = (PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC)glewGetProcAddress((const GLubyte*)"glGetTransformFeedbackVaryingEXT")) == NULL) || r;
-  r = ((glTransformFeedbackVaryingsEXT = (PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC)glewGetProcAddress((const GLubyte*)"glTransformFeedbackVaryingsEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_transform_feedback */
-
-#ifdef GL_EXT_vertex_array
-
-static GLboolean _glewInit_GL_EXT_vertex_array (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glArrayElementEXT = (PFNGLARRAYELEMENTEXTPROC)glewGetProcAddress((const GLubyte*)"glArrayElementEXT")) == NULL) || r;
-  r = ((glColorPointerEXT = (PFNGLCOLORPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glColorPointerEXT")) == NULL) || r;
-  r = ((glDrawArraysEXT = (PFNGLDRAWARRAYSEXTPROC)glewGetProcAddress((const GLubyte*)"glDrawArraysEXT")) == NULL) || r;
-  r = ((glEdgeFlagPointerEXT = (PFNGLEDGEFLAGPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glEdgeFlagPointerEXT")) == NULL) || r;
-  r = ((glGetPointervEXT = (PFNGLGETPOINTERVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetPointervEXT")) == NULL) || r;
-  r = ((glIndexPointerEXT = (PFNGLINDEXPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glIndexPointerEXT")) == NULL) || r;
-  r = ((glNormalPointerEXT = (PFNGLNORMALPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glNormalPointerEXT")) == NULL) || r;
-  r = ((glTexCoordPointerEXT = (PFNGLTEXCOORDPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glTexCoordPointerEXT")) == NULL) || r;
-  r = ((glVertexPointerEXT = (PFNGLVERTEXPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glVertexPointerEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_vertex_array */
-
-#ifdef GL_EXT_vertex_array_bgra
-
-#endif /* GL_EXT_vertex_array_bgra */
-
-#ifdef GL_EXT_vertex_attrib_64bit
-
-static GLboolean _glewInit_GL_EXT_vertex_attrib_64bit (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetVertexAttribLdvEXT = (PFNGLGETVERTEXATTRIBLDVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribLdvEXT")) == NULL) || r;
-  r = ((glVertexArrayVertexAttribLOffsetEXT = (PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayVertexAttribLOffsetEXT")) == NULL) || r;
-  r = ((glVertexAttribL1dEXT = (PFNGLVERTEXATTRIBL1DEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL1dEXT")) == NULL) || r;
-  r = ((glVertexAttribL1dvEXT = (PFNGLVERTEXATTRIBL1DVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL1dvEXT")) == NULL) || r;
-  r = ((glVertexAttribL2dEXT = (PFNGLVERTEXATTRIBL2DEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL2dEXT")) == NULL) || r;
-  r = ((glVertexAttribL2dvEXT = (PFNGLVERTEXATTRIBL2DVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL2dvEXT")) == NULL) || r;
-  r = ((glVertexAttribL3dEXT = (PFNGLVERTEXATTRIBL3DEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL3dEXT")) == NULL) || r;
-  r = ((glVertexAttribL3dvEXT = (PFNGLVERTEXATTRIBL3DVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL3dvEXT")) == NULL) || r;
-  r = ((glVertexAttribL4dEXT = (PFNGLVERTEXATTRIBL4DEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL4dEXT")) == NULL) || r;
-  r = ((glVertexAttribL4dvEXT = (PFNGLVERTEXATTRIBL4DVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL4dvEXT")) == NULL) || r;
-  r = ((glVertexAttribLPointerEXT = (PFNGLVERTEXATTRIBLPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribLPointerEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_vertex_attrib_64bit */
-
-#ifdef GL_EXT_vertex_shader
-
-static GLboolean _glewInit_GL_EXT_vertex_shader (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBeginVertexShaderEXT = (PFNGLBEGINVERTEXSHADEREXTPROC)glewGetProcAddress((const GLubyte*)"glBeginVertexShaderEXT")) == NULL) || r;
-  r = ((glBindLightParameterEXT = (PFNGLBINDLIGHTPARAMETEREXTPROC)glewGetProcAddress((const GLubyte*)"glBindLightParameterEXT")) == NULL) || r;
-  r = ((glBindMaterialParameterEXT = (PFNGLBINDMATERIALPARAMETEREXTPROC)glewGetProcAddress((const GLubyte*)"glBindMaterialParameterEXT")) == NULL) || r;
-  r = ((glBindParameterEXT = (PFNGLBINDPARAMETEREXTPROC)glewGetProcAddress((const GLubyte*)"glBindParameterEXT")) == NULL) || r;
-  r = ((glBindTexGenParameterEXT = (PFNGLBINDTEXGENPARAMETEREXTPROC)glewGetProcAddress((const GLubyte*)"glBindTexGenParameterEXT")) == NULL) || r;
-  r = ((glBindTextureUnitParameterEXT = (PFNGLBINDTEXTUREUNITPARAMETEREXTPROC)glewGetProcAddress((const GLubyte*)"glBindTextureUnitParameterEXT")) == NULL) || r;
-  r = ((glBindVertexShaderEXT = (PFNGLBINDVERTEXSHADEREXTPROC)glewGetProcAddress((const GLubyte*)"glBindVertexShaderEXT")) == NULL) || r;
-  r = ((glDeleteVertexShaderEXT = (PFNGLDELETEVERTEXSHADEREXTPROC)glewGetProcAddress((const GLubyte*)"glDeleteVertexShaderEXT")) == NULL) || r;
-  r = ((glDisableVariantClientStateEXT = (PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC)glewGetProcAddress((const GLubyte*)"glDisableVariantClientStateEXT")) == NULL) || r;
-  r = ((glEnableVariantClientStateEXT = (PFNGLENABLEVARIANTCLIENTSTATEEXTPROC)glewGetProcAddress((const GLubyte*)"glEnableVariantClientStateEXT")) == NULL) || r;
-  r = ((glEndVertexShaderEXT = (PFNGLENDVERTEXSHADEREXTPROC)glewGetProcAddress((const GLubyte*)"glEndVertexShaderEXT")) == NULL) || r;
-  r = ((glExtractComponentEXT = (PFNGLEXTRACTCOMPONENTEXTPROC)glewGetProcAddress((const GLubyte*)"glExtractComponentEXT")) == NULL) || r;
-  r = ((glGenSymbolsEXT = (PFNGLGENSYMBOLSEXTPROC)glewGetProcAddress((const GLubyte*)"glGenSymbolsEXT")) == NULL) || r;
-  r = ((glGenVertexShadersEXT = (PFNGLGENVERTEXSHADERSEXTPROC)glewGetProcAddress((const GLubyte*)"glGenVertexShadersEXT")) == NULL) || r;
-  r = ((glGetInvariantBooleanvEXT = (PFNGLGETINVARIANTBOOLEANVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetInvariantBooleanvEXT")) == NULL) || r;
-  r = ((glGetInvariantFloatvEXT = (PFNGLGETINVARIANTFLOATVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetInvariantFloatvEXT")) == NULL) || r;
-  r = ((glGetInvariantIntegervEXT = (PFNGLGETINVARIANTINTEGERVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetInvariantIntegervEXT")) == NULL) || r;
-  r = ((glGetLocalConstantBooleanvEXT = (PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetLocalConstantBooleanvEXT")) == NULL) || r;
-  r = ((glGetLocalConstantFloatvEXT = (PFNGLGETLOCALCONSTANTFLOATVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetLocalConstantFloatvEXT")) == NULL) || r;
-  r = ((glGetLocalConstantIntegervEXT = (PFNGLGETLOCALCONSTANTINTEGERVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetLocalConstantIntegervEXT")) == NULL) || r;
-  r = ((glGetVariantBooleanvEXT = (PFNGLGETVARIANTBOOLEANVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetVariantBooleanvEXT")) == NULL) || r;
-  r = ((glGetVariantFloatvEXT = (PFNGLGETVARIANTFLOATVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetVariantFloatvEXT")) == NULL) || r;
-  r = ((glGetVariantIntegervEXT = (PFNGLGETVARIANTINTEGERVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetVariantIntegervEXT")) == NULL) || r;
-  r = ((glGetVariantPointervEXT = (PFNGLGETVARIANTPOINTERVEXTPROC)glewGetProcAddress((const GLubyte*)"glGetVariantPointervEXT")) == NULL) || r;
-  r = ((glInsertComponentEXT = (PFNGLINSERTCOMPONENTEXTPROC)glewGetProcAddress((const GLubyte*)"glInsertComponentEXT")) == NULL) || r;
-  r = ((glIsVariantEnabledEXT = (PFNGLISVARIANTENABLEDEXTPROC)glewGetProcAddress((const GLubyte*)"glIsVariantEnabledEXT")) == NULL) || r;
-  r = ((glSetInvariantEXT = (PFNGLSETINVARIANTEXTPROC)glewGetProcAddress((const GLubyte*)"glSetInvariantEXT")) == NULL) || r;
-  r = ((glSetLocalConstantEXT = (PFNGLSETLOCALCONSTANTEXTPROC)glewGetProcAddress((const GLubyte*)"glSetLocalConstantEXT")) == NULL) || r;
-  r = ((glShaderOp1EXT = (PFNGLSHADEROP1EXTPROC)glewGetProcAddress((const GLubyte*)"glShaderOp1EXT")) == NULL) || r;
-  r = ((glShaderOp2EXT = (PFNGLSHADEROP2EXTPROC)glewGetProcAddress((const GLubyte*)"glShaderOp2EXT")) == NULL) || r;
-  r = ((glShaderOp3EXT = (PFNGLSHADEROP3EXTPROC)glewGetProcAddress((const GLubyte*)"glShaderOp3EXT")) == NULL) || r;
-  r = ((glSwizzleEXT = (PFNGLSWIZZLEEXTPROC)glewGetProcAddress((const GLubyte*)"glSwizzleEXT")) == NULL) || r;
-  r = ((glVariantPointerEXT = (PFNGLVARIANTPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glVariantPointerEXT")) == NULL) || r;
-  r = ((glVariantbvEXT = (PFNGLVARIANTBVEXTPROC)glewGetProcAddress((const GLubyte*)"glVariantbvEXT")) == NULL) || r;
-  r = ((glVariantdvEXT = (PFNGLVARIANTDVEXTPROC)glewGetProcAddress((const GLubyte*)"glVariantdvEXT")) == NULL) || r;
-  r = ((glVariantfvEXT = (PFNGLVARIANTFVEXTPROC)glewGetProcAddress((const GLubyte*)"glVariantfvEXT")) == NULL) || r;
-  r = ((glVariantivEXT = (PFNGLVARIANTIVEXTPROC)glewGetProcAddress((const GLubyte*)"glVariantivEXT")) == NULL) || r;
-  r = ((glVariantsvEXT = (PFNGLVARIANTSVEXTPROC)glewGetProcAddress((const GLubyte*)"glVariantsvEXT")) == NULL) || r;
-  r = ((glVariantubvEXT = (PFNGLVARIANTUBVEXTPROC)glewGetProcAddress((const GLubyte*)"glVariantubvEXT")) == NULL) || r;
-  r = ((glVariantuivEXT = (PFNGLVARIANTUIVEXTPROC)glewGetProcAddress((const GLubyte*)"glVariantuivEXT")) == NULL) || r;
-  r = ((glVariantusvEXT = (PFNGLVARIANTUSVEXTPROC)glewGetProcAddress((const GLubyte*)"glVariantusvEXT")) == NULL) || r;
-  r = ((glWriteMaskEXT = (PFNGLWRITEMASKEXTPROC)glewGetProcAddress((const GLubyte*)"glWriteMaskEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_vertex_shader */
-
-#ifdef GL_EXT_vertex_weighting
-
-static GLboolean _glewInit_GL_EXT_vertex_weighting (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glVertexWeightPointerEXT = (PFNGLVERTEXWEIGHTPOINTEREXTPROC)glewGetProcAddress((const GLubyte*)"glVertexWeightPointerEXT")) == NULL) || r;
-  r = ((glVertexWeightfEXT = (PFNGLVERTEXWEIGHTFEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexWeightfEXT")) == NULL) || r;
-  r = ((glVertexWeightfvEXT = (PFNGLVERTEXWEIGHTFVEXTPROC)glewGetProcAddress((const GLubyte*)"glVertexWeightfvEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_EXT_vertex_weighting */
-
-#ifdef GL_GREMEDY_frame_terminator
-
-static GLboolean _glewInit_GL_GREMEDY_frame_terminator (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFrameTerminatorGREMEDY = (PFNGLFRAMETERMINATORGREMEDYPROC)glewGetProcAddress((const GLubyte*)"glFrameTerminatorGREMEDY")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_GREMEDY_frame_terminator */
-
-#ifdef GL_GREMEDY_string_marker
-
-static GLboolean _glewInit_GL_GREMEDY_string_marker (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glStringMarkerGREMEDY = (PFNGLSTRINGMARKERGREMEDYPROC)glewGetProcAddress((const GLubyte*)"glStringMarkerGREMEDY")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_GREMEDY_string_marker */
-
-#ifdef GL_HP_convolution_border_modes
-
-#endif /* GL_HP_convolution_border_modes */
-
-#ifdef GL_HP_image_transform
-
-static GLboolean _glewInit_GL_HP_image_transform (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetImageTransformParameterfvHP = (PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC)glewGetProcAddress((const GLubyte*)"glGetImageTransformParameterfvHP")) == NULL) || r;
-  r = ((glGetImageTransformParameterivHP = (PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC)glewGetProcAddress((const GLubyte*)"glGetImageTransformParameterivHP")) == NULL) || r;
-  r = ((glImageTransformParameterfHP = (PFNGLIMAGETRANSFORMPARAMETERFHPPROC)glewGetProcAddress((const GLubyte*)"glImageTransformParameterfHP")) == NULL) || r;
-  r = ((glImageTransformParameterfvHP = (PFNGLIMAGETRANSFORMPARAMETERFVHPPROC)glewGetProcAddress((const GLubyte*)"glImageTransformParameterfvHP")) == NULL) || r;
-  r = ((glImageTransformParameteriHP = (PFNGLIMAGETRANSFORMPARAMETERIHPPROC)glewGetProcAddress((const GLubyte*)"glImageTransformParameteriHP")) == NULL) || r;
-  r = ((glImageTransformParameterivHP = (PFNGLIMAGETRANSFORMPARAMETERIVHPPROC)glewGetProcAddress((const GLubyte*)"glImageTransformParameterivHP")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_HP_image_transform */
-
-#ifdef GL_HP_occlusion_test
-
-#endif /* GL_HP_occlusion_test */
-
-#ifdef GL_HP_texture_lighting
-
-#endif /* GL_HP_texture_lighting */
-
-#ifdef GL_IBM_cull_vertex
-
-#endif /* GL_IBM_cull_vertex */
-
-#ifdef GL_IBM_multimode_draw_arrays
-
-static GLboolean _glewInit_GL_IBM_multimode_draw_arrays (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glMultiModeDrawArraysIBM = (PFNGLMULTIMODEDRAWARRAYSIBMPROC)glewGetProcAddress((const GLubyte*)"glMultiModeDrawArraysIBM")) == NULL) || r;
-  r = ((glMultiModeDrawElementsIBM = (PFNGLMULTIMODEDRAWELEMENTSIBMPROC)glewGetProcAddress((const GLubyte*)"glMultiModeDrawElementsIBM")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_IBM_multimode_draw_arrays */
-
-#ifdef GL_IBM_rasterpos_clip
-
-#endif /* GL_IBM_rasterpos_clip */
-
-#ifdef GL_IBM_static_data
-
-#endif /* GL_IBM_static_data */
-
-#ifdef GL_IBM_texture_mirrored_repeat
-
-#endif /* GL_IBM_texture_mirrored_repeat */
-
-#ifdef GL_IBM_vertex_array_lists
-
-static GLboolean _glewInit_GL_IBM_vertex_array_lists (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glColorPointerListIBM = (PFNGLCOLORPOINTERLISTIBMPROC)glewGetProcAddress((const GLubyte*)"glColorPointerListIBM")) == NULL) || r;
-  r = ((glEdgeFlagPointerListIBM = (PFNGLEDGEFLAGPOINTERLISTIBMPROC)glewGetProcAddress((const GLubyte*)"glEdgeFlagPointerListIBM")) == NULL) || r;
-  r = ((glFogCoordPointerListIBM = (PFNGLFOGCOORDPOINTERLISTIBMPROC)glewGetProcAddress((const GLubyte*)"glFogCoordPointerListIBM")) == NULL) || r;
-  r = ((glIndexPointerListIBM = (PFNGLINDEXPOINTERLISTIBMPROC)glewGetProcAddress((const GLubyte*)"glIndexPointerListIBM")) == NULL) || r;
-  r = ((glNormalPointerListIBM = (PFNGLNORMALPOINTERLISTIBMPROC)glewGetProcAddress((const GLubyte*)"glNormalPointerListIBM")) == NULL) || r;
-  r = ((glSecondaryColorPointerListIBM = (PFNGLSECONDARYCOLORPOINTERLISTIBMPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColorPointerListIBM")) == NULL) || r;
-  r = ((glTexCoordPointerListIBM = (PFNGLTEXCOORDPOINTERLISTIBMPROC)glewGetProcAddress((const GLubyte*)"glTexCoordPointerListIBM")) == NULL) || r;
-  r = ((glVertexPointerListIBM = (PFNGLVERTEXPOINTERLISTIBMPROC)glewGetProcAddress((const GLubyte*)"glVertexPointerListIBM")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_IBM_vertex_array_lists */
-
-#ifdef GL_INGR_color_clamp
-
-#endif /* GL_INGR_color_clamp */
-
-#ifdef GL_INGR_interlace_read
-
-#endif /* GL_INGR_interlace_read */
-
-#ifdef GL_INTEL_parallel_arrays
-
-static GLboolean _glewInit_GL_INTEL_parallel_arrays (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glColorPointervINTEL = (PFNGLCOLORPOINTERVINTELPROC)glewGetProcAddress((const GLubyte*)"glColorPointervINTEL")) == NULL) || r;
-  r = ((glNormalPointervINTEL = (PFNGLNORMALPOINTERVINTELPROC)glewGetProcAddress((const GLubyte*)"glNormalPointervINTEL")) == NULL) || r;
-  r = ((glTexCoordPointervINTEL = (PFNGLTEXCOORDPOINTERVINTELPROC)glewGetProcAddress((const GLubyte*)"glTexCoordPointervINTEL")) == NULL) || r;
-  r = ((glVertexPointervINTEL = (PFNGLVERTEXPOINTERVINTELPROC)glewGetProcAddress((const GLubyte*)"glVertexPointervINTEL")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_INTEL_parallel_arrays */
-
-#ifdef GL_INTEL_texture_scissor
-
-static GLboolean _glewInit_GL_INTEL_texture_scissor (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glTexScissorFuncINTEL = (PFNGLTEXSCISSORFUNCINTELPROC)glewGetProcAddress((const GLubyte*)"glTexScissorFuncINTEL")) == NULL) || r;
-  r = ((glTexScissorINTEL = (PFNGLTEXSCISSORINTELPROC)glewGetProcAddress((const GLubyte*)"glTexScissorINTEL")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_INTEL_texture_scissor */
-
-#ifdef GL_KTX_buffer_region
-
-static GLboolean _glewInit_GL_KTX_buffer_region (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBufferRegionEnabledEXT = (PFNGLBUFFERREGIONENABLEDEXTPROC)glewGetProcAddress((const GLubyte*)"glBufferRegionEnabledEXT")) == NULL) || r;
-  r = ((glDeleteBufferRegionEXT = (PFNGLDELETEBUFFERREGIONEXTPROC)glewGetProcAddress((const GLubyte*)"glDeleteBufferRegionEXT")) == NULL) || r;
-  r = ((glDrawBufferRegionEXT = (PFNGLDRAWBUFFERREGIONEXTPROC)glewGetProcAddress((const GLubyte*)"glDrawBufferRegionEXT")) == NULL) || r;
-  r = ((glNewBufferRegionEXT = (PFNGLNEWBUFFERREGIONEXTPROC)glewGetProcAddress((const GLubyte*)"glNewBufferRegionEXT")) == NULL) || r;
-  r = ((glReadBufferRegionEXT = (PFNGLREADBUFFERREGIONEXTPROC)glewGetProcAddress((const GLubyte*)"glReadBufferRegionEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_KTX_buffer_region */
-
-#ifdef GL_MESAX_texture_stack
-
-#endif /* GL_MESAX_texture_stack */
-
-#ifdef GL_MESA_pack_invert
-
-#endif /* GL_MESA_pack_invert */
-
-#ifdef GL_MESA_resize_buffers
-
-static GLboolean _glewInit_GL_MESA_resize_buffers (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glResizeBuffersMESA = (PFNGLRESIZEBUFFERSMESAPROC)glewGetProcAddress((const GLubyte*)"glResizeBuffersMESA")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_MESA_resize_buffers */
-
-#ifdef GL_MESA_window_pos
-
-static GLboolean _glewInit_GL_MESA_window_pos (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glWindowPos2dMESA = (PFNGLWINDOWPOS2DMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2dMESA")) == NULL) || r;
-  r = ((glWindowPos2dvMESA = (PFNGLWINDOWPOS2DVMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2dvMESA")) == NULL) || r;
-  r = ((glWindowPos2fMESA = (PFNGLWINDOWPOS2FMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2fMESA")) == NULL) || r;
-  r = ((glWindowPos2fvMESA = (PFNGLWINDOWPOS2FVMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2fvMESA")) == NULL) || r;
-  r = ((glWindowPos2iMESA = (PFNGLWINDOWPOS2IMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2iMESA")) == NULL) || r;
-  r = ((glWindowPos2ivMESA = (PFNGLWINDOWPOS2IVMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2ivMESA")) == NULL) || r;
-  r = ((glWindowPos2sMESA = (PFNGLWINDOWPOS2SMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2sMESA")) == NULL) || r;
-  r = ((glWindowPos2svMESA = (PFNGLWINDOWPOS2SVMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos2svMESA")) == NULL) || r;
-  r = ((glWindowPos3dMESA = (PFNGLWINDOWPOS3DMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3dMESA")) == NULL) || r;
-  r = ((glWindowPos3dvMESA = (PFNGLWINDOWPOS3DVMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3dvMESA")) == NULL) || r;
-  r = ((glWindowPos3fMESA = (PFNGLWINDOWPOS3FMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3fMESA")) == NULL) || r;
-  r = ((glWindowPos3fvMESA = (PFNGLWINDOWPOS3FVMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3fvMESA")) == NULL) || r;
-  r = ((glWindowPos3iMESA = (PFNGLWINDOWPOS3IMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3iMESA")) == NULL) || r;
-  r = ((glWindowPos3ivMESA = (PFNGLWINDOWPOS3IVMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3ivMESA")) == NULL) || r;
-  r = ((glWindowPos3sMESA = (PFNGLWINDOWPOS3SMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3sMESA")) == NULL) || r;
-  r = ((glWindowPos3svMESA = (PFNGLWINDOWPOS3SVMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos3svMESA")) == NULL) || r;
-  r = ((glWindowPos4dMESA = (PFNGLWINDOWPOS4DMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos4dMESA")) == NULL) || r;
-  r = ((glWindowPos4dvMESA = (PFNGLWINDOWPOS4DVMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos4dvMESA")) == NULL) || r;
-  r = ((glWindowPos4fMESA = (PFNGLWINDOWPOS4FMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos4fMESA")) == NULL) || r;
-  r = ((glWindowPos4fvMESA = (PFNGLWINDOWPOS4FVMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos4fvMESA")) == NULL) || r;
-  r = ((glWindowPos4iMESA = (PFNGLWINDOWPOS4IMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos4iMESA")) == NULL) || r;
-  r = ((glWindowPos4ivMESA = (PFNGLWINDOWPOS4IVMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos4ivMESA")) == NULL) || r;
-  r = ((glWindowPos4sMESA = (PFNGLWINDOWPOS4SMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos4sMESA")) == NULL) || r;
-  r = ((glWindowPos4svMESA = (PFNGLWINDOWPOS4SVMESAPROC)glewGetProcAddress((const GLubyte*)"glWindowPos4svMESA")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_MESA_window_pos */
-
-#ifdef GL_MESA_ycbcr_texture
-
-#endif /* GL_MESA_ycbcr_texture */
-
-#ifdef GL_NV_blend_square
-
-#endif /* GL_NV_blend_square */
-
-#ifdef GL_NV_conditional_render
-
-static GLboolean _glewInit_GL_NV_conditional_render (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBeginConditionalRenderNV = (PFNGLBEGINCONDITIONALRENDERNVPROC)glewGetProcAddress((const GLubyte*)"glBeginConditionalRenderNV")) == NULL) || r;
-  r = ((glEndConditionalRenderNV = (PFNGLENDCONDITIONALRENDERNVPROC)glewGetProcAddress((const GLubyte*)"glEndConditionalRenderNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_conditional_render */
-
-#ifdef GL_NV_copy_depth_to_color
-
-#endif /* GL_NV_copy_depth_to_color */
-
-#ifdef GL_NV_copy_image
-
-static GLboolean _glewInit_GL_NV_copy_image (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glCopyImageSubDataNV = (PFNGLCOPYIMAGESUBDATANVPROC)glewGetProcAddress((const GLubyte*)"glCopyImageSubDataNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_copy_image */
-
-#ifdef GL_NV_depth_buffer_float
-
-static GLboolean _glewInit_GL_NV_depth_buffer_float (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glClearDepthdNV = (PFNGLCLEARDEPTHDNVPROC)glewGetProcAddress((const GLubyte*)"glClearDepthdNV")) == NULL) || r;
-  r = ((glDepthBoundsdNV = (PFNGLDEPTHBOUNDSDNVPROC)glewGetProcAddress((const GLubyte*)"glDepthBoundsdNV")) == NULL) || r;
-  r = ((glDepthRangedNV = (PFNGLDEPTHRANGEDNVPROC)glewGetProcAddress((const GLubyte*)"glDepthRangedNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_depth_buffer_float */
-
-#ifdef GL_NV_depth_clamp
-
-#endif /* GL_NV_depth_clamp */
-
-#ifdef GL_NV_depth_range_unclamped
-
-#endif /* GL_NV_depth_range_unclamped */
-
-#ifdef GL_NV_evaluators
-
-static GLboolean _glewInit_GL_NV_evaluators (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glEvalMapsNV = (PFNGLEVALMAPSNVPROC)glewGetProcAddress((const GLubyte*)"glEvalMapsNV")) == NULL) || r;
-  r = ((glGetMapAttribParameterfvNV = (PFNGLGETMAPATTRIBPARAMETERFVNVPROC)glewGetProcAddress((const GLubyte*)"glGetMapAttribParameterfvNV")) == NULL) || r;
-  r = ((glGetMapAttribParameterivNV = (PFNGLGETMAPATTRIBPARAMETERIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetMapAttribParameterivNV")) == NULL) || r;
-  r = ((glGetMapControlPointsNV = (PFNGLGETMAPCONTROLPOINTSNVPROC)glewGetProcAddress((const GLubyte*)"glGetMapControlPointsNV")) == NULL) || r;
-  r = ((glGetMapParameterfvNV = (PFNGLGETMAPPARAMETERFVNVPROC)glewGetProcAddress((const GLubyte*)"glGetMapParameterfvNV")) == NULL) || r;
-  r = ((glGetMapParameterivNV = (PFNGLGETMAPPARAMETERIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetMapParameterivNV")) == NULL) || r;
-  r = ((glMapControlPointsNV = (PFNGLMAPCONTROLPOINTSNVPROC)glewGetProcAddress((const GLubyte*)"glMapControlPointsNV")) == NULL) || r;
-  r = ((glMapParameterfvNV = (PFNGLMAPPARAMETERFVNVPROC)glewGetProcAddress((const GLubyte*)"glMapParameterfvNV")) == NULL) || r;
-  r = ((glMapParameterivNV = (PFNGLMAPPARAMETERIVNVPROC)glewGetProcAddress((const GLubyte*)"glMapParameterivNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_evaluators */
-
-#ifdef GL_NV_explicit_multisample
-
-static GLboolean _glewInit_GL_NV_explicit_multisample (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetMultisamplefvNV = (PFNGLGETMULTISAMPLEFVNVPROC)glewGetProcAddress((const GLubyte*)"glGetMultisamplefvNV")) == NULL) || r;
-  r = ((glSampleMaskIndexedNV = (PFNGLSAMPLEMASKINDEXEDNVPROC)glewGetProcAddress((const GLubyte*)"glSampleMaskIndexedNV")) == NULL) || r;
-  r = ((glTexRenderbufferNV = (PFNGLTEXRENDERBUFFERNVPROC)glewGetProcAddress((const GLubyte*)"glTexRenderbufferNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_explicit_multisample */
-
-#ifdef GL_NV_fence
-
-static GLboolean _glewInit_GL_NV_fence (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDeleteFencesNV = (PFNGLDELETEFENCESNVPROC)glewGetProcAddress((const GLubyte*)"glDeleteFencesNV")) == NULL) || r;
-  r = ((glFinishFenceNV = (PFNGLFINISHFENCENVPROC)glewGetProcAddress((const GLubyte*)"glFinishFenceNV")) == NULL) || r;
-  r = ((glGenFencesNV = (PFNGLGENFENCESNVPROC)glewGetProcAddress((const GLubyte*)"glGenFencesNV")) == NULL) || r;
-  r = ((glGetFenceivNV = (PFNGLGETFENCEIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetFenceivNV")) == NULL) || r;
-  r = ((glIsFenceNV = (PFNGLISFENCENVPROC)glewGetProcAddress((const GLubyte*)"glIsFenceNV")) == NULL) || r;
-  r = ((glSetFenceNV = (PFNGLSETFENCENVPROC)glewGetProcAddress((const GLubyte*)"glSetFenceNV")) == NULL) || r;
-  r = ((glTestFenceNV = (PFNGLTESTFENCENVPROC)glewGetProcAddress((const GLubyte*)"glTestFenceNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_fence */
-
-#ifdef GL_NV_float_buffer
-
-#endif /* GL_NV_float_buffer */
-
-#ifdef GL_NV_fog_distance
-
-#endif /* GL_NV_fog_distance */
-
-#ifdef GL_NV_fragment_program
-
-static GLboolean _glewInit_GL_NV_fragment_program (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetProgramNamedParameterdvNV = (PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC)glewGetProcAddress((const GLubyte*)"glGetProgramNamedParameterdvNV")) == NULL) || r;
-  r = ((glGetProgramNamedParameterfvNV = (PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC)glewGetProcAddress((const GLubyte*)"glGetProgramNamedParameterfvNV")) == NULL) || r;
-  r = ((glProgramNamedParameter4dNV = (PFNGLPROGRAMNAMEDPARAMETER4DNVPROC)glewGetProcAddress((const GLubyte*)"glProgramNamedParameter4dNV")) == NULL) || r;
-  r = ((glProgramNamedParameter4dvNV = (PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramNamedParameter4dvNV")) == NULL) || r;
-  r = ((glProgramNamedParameter4fNV = (PFNGLPROGRAMNAMEDPARAMETER4FNVPROC)glewGetProcAddress((const GLubyte*)"glProgramNamedParameter4fNV")) == NULL) || r;
-  r = ((glProgramNamedParameter4fvNV = (PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramNamedParameter4fvNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_fragment_program */
-
-#ifdef GL_NV_fragment_program2
-
-#endif /* GL_NV_fragment_program2 */
-
-#ifdef GL_NV_fragment_program4
-
-#endif /* GL_NV_fragment_program4 */
-
-#ifdef GL_NV_fragment_program_option
-
-#endif /* GL_NV_fragment_program_option */
-
-#ifdef GL_NV_framebuffer_multisample_coverage
-
-static GLboolean _glewInit_GL_NV_framebuffer_multisample_coverage (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glRenderbufferStorageMultisampleCoverageNV = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC)glewGetProcAddress((const GLubyte*)"glRenderbufferStorageMultisampleCoverageNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_framebuffer_multisample_coverage */
-
-#ifdef GL_NV_geometry_program4
-
-static GLboolean _glewInit_GL_NV_geometry_program4 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glProgramVertexLimitNV = (PFNGLPROGRAMVERTEXLIMITNVPROC)glewGetProcAddress((const GLubyte*)"glProgramVertexLimitNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_geometry_program4 */
-
-#ifdef GL_NV_geometry_shader4
-
-#endif /* GL_NV_geometry_shader4 */
-
-#ifdef GL_NV_gpu_program4
-
-static GLboolean _glewInit_GL_NV_gpu_program4 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glProgramEnvParameterI4iNV = (PFNGLPROGRAMENVPARAMETERI4INVPROC)glewGetProcAddress((const GLubyte*)"glProgramEnvParameterI4iNV")) == NULL) || r;
-  r = ((glProgramEnvParameterI4ivNV = (PFNGLPROGRAMENVPARAMETERI4IVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramEnvParameterI4ivNV")) == NULL) || r;
-  r = ((glProgramEnvParameterI4uiNV = (PFNGLPROGRAMENVPARAMETERI4UINVPROC)glewGetProcAddress((const GLubyte*)"glProgramEnvParameterI4uiNV")) == NULL) || r;
-  r = ((glProgramEnvParameterI4uivNV = (PFNGLPROGRAMENVPARAMETERI4UIVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramEnvParameterI4uivNV")) == NULL) || r;
-  r = ((glProgramEnvParametersI4ivNV = (PFNGLPROGRAMENVPARAMETERSI4IVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramEnvParametersI4ivNV")) == NULL) || r;
-  r = ((glProgramEnvParametersI4uivNV = (PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramEnvParametersI4uivNV")) == NULL) || r;
-  r = ((glProgramLocalParameterI4iNV = (PFNGLPROGRAMLOCALPARAMETERI4INVPROC)glewGetProcAddress((const GLubyte*)"glProgramLocalParameterI4iNV")) == NULL) || r;
-  r = ((glProgramLocalParameterI4ivNV = (PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramLocalParameterI4ivNV")) == NULL) || r;
-  r = ((glProgramLocalParameterI4uiNV = (PFNGLPROGRAMLOCALPARAMETERI4UINVPROC)glewGetProcAddress((const GLubyte*)"glProgramLocalParameterI4uiNV")) == NULL) || r;
-  r = ((glProgramLocalParameterI4uivNV = (PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramLocalParameterI4uivNV")) == NULL) || r;
-  r = ((glProgramLocalParametersI4ivNV = (PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramLocalParametersI4ivNV")) == NULL) || r;
-  r = ((glProgramLocalParametersI4uivNV = (PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramLocalParametersI4uivNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_gpu_program4 */
-
-#ifdef GL_NV_gpu_program5
-
-#endif /* GL_NV_gpu_program5 */
-
-#ifdef GL_NV_gpu_program_fp64
-
-#endif /* GL_NV_gpu_program_fp64 */
-
-#ifdef GL_NV_gpu_shader5
-
-static GLboolean _glewInit_GL_NV_gpu_shader5 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetUniformi64vNV = (PFNGLGETUNIFORMI64VNVPROC)glewGetProcAddress((const GLubyte*)"glGetUniformi64vNV")) == NULL) || r;
-  r = ((glGetUniformui64vNV = (PFNGLGETUNIFORMUI64VNVPROC)glewGetProcAddress((const GLubyte*)"glGetUniformui64vNV")) == NULL) || r;
-  r = ((glProgramUniform1i64NV = (PFNGLPROGRAMUNIFORM1I64NVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform1i64NV")) == NULL) || r;
-  r = ((glProgramUniform1i64vNV = (PFNGLPROGRAMUNIFORM1I64VNVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform1i64vNV")) == NULL) || r;
-  r = ((glProgramUniform1ui64NV = (PFNGLPROGRAMUNIFORM1UI64NVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform1ui64NV")) == NULL) || r;
-  r = ((glProgramUniform1ui64vNV = (PFNGLPROGRAMUNIFORM1UI64VNVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform1ui64vNV")) == NULL) || r;
-  r = ((glProgramUniform2i64NV = (PFNGLPROGRAMUNIFORM2I64NVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform2i64NV")) == NULL) || r;
-  r = ((glProgramUniform2i64vNV = (PFNGLPROGRAMUNIFORM2I64VNVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform2i64vNV")) == NULL) || r;
-  r = ((glProgramUniform2ui64NV = (PFNGLPROGRAMUNIFORM2UI64NVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform2ui64NV")) == NULL) || r;
-  r = ((glProgramUniform2ui64vNV = (PFNGLPROGRAMUNIFORM2UI64VNVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform2ui64vNV")) == NULL) || r;
-  r = ((glProgramUniform3i64NV = (PFNGLPROGRAMUNIFORM3I64NVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform3i64NV")) == NULL) || r;
-  r = ((glProgramUniform3i64vNV = (PFNGLPROGRAMUNIFORM3I64VNVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform3i64vNV")) == NULL) || r;
-  r = ((glProgramUniform3ui64NV = (PFNGLPROGRAMUNIFORM3UI64NVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform3ui64NV")) == NULL) || r;
-  r = ((glProgramUniform3ui64vNV = (PFNGLPROGRAMUNIFORM3UI64VNVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform3ui64vNV")) == NULL) || r;
-  r = ((glProgramUniform4i64NV = (PFNGLPROGRAMUNIFORM4I64NVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform4i64NV")) == NULL) || r;
-  r = ((glProgramUniform4i64vNV = (PFNGLPROGRAMUNIFORM4I64VNVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform4i64vNV")) == NULL) || r;
-  r = ((glProgramUniform4ui64NV = (PFNGLPROGRAMUNIFORM4UI64NVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform4ui64NV")) == NULL) || r;
-  r = ((glProgramUniform4ui64vNV = (PFNGLPROGRAMUNIFORM4UI64VNVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniform4ui64vNV")) == NULL) || r;
-  r = ((glUniform1i64NV = (PFNGLUNIFORM1I64NVPROC)glewGetProcAddress((const GLubyte*)"glUniform1i64NV")) == NULL) || r;
-  r = ((glUniform1i64vNV = (PFNGLUNIFORM1I64VNVPROC)glewGetProcAddress((const GLubyte*)"glUniform1i64vNV")) == NULL) || r;
-  r = ((glUniform1ui64NV = (PFNGLUNIFORM1UI64NVPROC)glewGetProcAddress((const GLubyte*)"glUniform1ui64NV")) == NULL) || r;
-  r = ((glUniform1ui64vNV = (PFNGLUNIFORM1UI64VNVPROC)glewGetProcAddress((const GLubyte*)"glUniform1ui64vNV")) == NULL) || r;
-  r = ((glUniform2i64NV = (PFNGLUNIFORM2I64NVPROC)glewGetProcAddress((const GLubyte*)"glUniform2i64NV")) == NULL) || r;
-  r = ((glUniform2i64vNV = (PFNGLUNIFORM2I64VNVPROC)glewGetProcAddress((const GLubyte*)"glUniform2i64vNV")) == NULL) || r;
-  r = ((glUniform2ui64NV = (PFNGLUNIFORM2UI64NVPROC)glewGetProcAddress((const GLubyte*)"glUniform2ui64NV")) == NULL) || r;
-  r = ((glUniform2ui64vNV = (PFNGLUNIFORM2UI64VNVPROC)glewGetProcAddress((const GLubyte*)"glUniform2ui64vNV")) == NULL) || r;
-  r = ((glUniform3i64NV = (PFNGLUNIFORM3I64NVPROC)glewGetProcAddress((const GLubyte*)"glUniform3i64NV")) == NULL) || r;
-  r = ((glUniform3i64vNV = (PFNGLUNIFORM3I64VNVPROC)glewGetProcAddress((const GLubyte*)"glUniform3i64vNV")) == NULL) || r;
-  r = ((glUniform3ui64NV = (PFNGLUNIFORM3UI64NVPROC)glewGetProcAddress((const GLubyte*)"glUniform3ui64NV")) == NULL) || r;
-  r = ((glUniform3ui64vNV = (PFNGLUNIFORM3UI64VNVPROC)glewGetProcAddress((const GLubyte*)"glUniform3ui64vNV")) == NULL) || r;
-  r = ((glUniform4i64NV = (PFNGLUNIFORM4I64NVPROC)glewGetProcAddress((const GLubyte*)"glUniform4i64NV")) == NULL) || r;
-  r = ((glUniform4i64vNV = (PFNGLUNIFORM4I64VNVPROC)glewGetProcAddress((const GLubyte*)"glUniform4i64vNV")) == NULL) || r;
-  r = ((glUniform4ui64NV = (PFNGLUNIFORM4UI64NVPROC)glewGetProcAddress((const GLubyte*)"glUniform4ui64NV")) == NULL) || r;
-  r = ((glUniform4ui64vNV = (PFNGLUNIFORM4UI64VNVPROC)glewGetProcAddress((const GLubyte*)"glUniform4ui64vNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_gpu_shader5 */
-
-#ifdef GL_NV_half_float
-
-static GLboolean _glewInit_GL_NV_half_float (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glColor3hNV = (PFNGLCOLOR3HNVPROC)glewGetProcAddress((const GLubyte*)"glColor3hNV")) == NULL) || r;
-  r = ((glColor3hvNV = (PFNGLCOLOR3HVNVPROC)glewGetProcAddress((const GLubyte*)"glColor3hvNV")) == NULL) || r;
-  r = ((glColor4hNV = (PFNGLCOLOR4HNVPROC)glewGetProcAddress((const GLubyte*)"glColor4hNV")) == NULL) || r;
-  r = ((glColor4hvNV = (PFNGLCOLOR4HVNVPROC)glewGetProcAddress((const GLubyte*)"glColor4hvNV")) == NULL) || r;
-  r = ((glFogCoordhNV = (PFNGLFOGCOORDHNVPROC)glewGetProcAddress((const GLubyte*)"glFogCoordhNV")) == NULL) || r;
-  r = ((glFogCoordhvNV = (PFNGLFOGCOORDHVNVPROC)glewGetProcAddress((const GLubyte*)"glFogCoordhvNV")) == NULL) || r;
-  r = ((glMultiTexCoord1hNV = (PFNGLMULTITEXCOORD1HNVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1hNV")) == NULL) || r;
-  r = ((glMultiTexCoord1hvNV = (PFNGLMULTITEXCOORD1HVNVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord1hvNV")) == NULL) || r;
-  r = ((glMultiTexCoord2hNV = (PFNGLMULTITEXCOORD2HNVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2hNV")) == NULL) || r;
-  r = ((glMultiTexCoord2hvNV = (PFNGLMULTITEXCOORD2HVNVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord2hvNV")) == NULL) || r;
-  r = ((glMultiTexCoord3hNV = (PFNGLMULTITEXCOORD3HNVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3hNV")) == NULL) || r;
-  r = ((glMultiTexCoord3hvNV = (PFNGLMULTITEXCOORD3HVNVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord3hvNV")) == NULL) || r;
-  r = ((glMultiTexCoord4hNV = (PFNGLMULTITEXCOORD4HNVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4hNV")) == NULL) || r;
-  r = ((glMultiTexCoord4hvNV = (PFNGLMULTITEXCOORD4HVNVPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4hvNV")) == NULL) || r;
-  r = ((glNormal3hNV = (PFNGLNORMAL3HNVPROC)glewGetProcAddress((const GLubyte*)"glNormal3hNV")) == NULL) || r;
-  r = ((glNormal3hvNV = (PFNGLNORMAL3HVNVPROC)glewGetProcAddress((const GLubyte*)"glNormal3hvNV")) == NULL) || r;
-  r = ((glSecondaryColor3hNV = (PFNGLSECONDARYCOLOR3HNVPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3hNV")) == NULL) || r;
-  r = ((glSecondaryColor3hvNV = (PFNGLSECONDARYCOLOR3HVNVPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColor3hvNV")) == NULL) || r;
-  r = ((glTexCoord1hNV = (PFNGLTEXCOORD1HNVPROC)glewGetProcAddress((const GLubyte*)"glTexCoord1hNV")) == NULL) || r;
-  r = ((glTexCoord1hvNV = (PFNGLTEXCOORD1HVNVPROC)glewGetProcAddress((const GLubyte*)"glTexCoord1hvNV")) == NULL) || r;
-  r = ((glTexCoord2hNV = (PFNGLTEXCOORD2HNVPROC)glewGetProcAddress((const GLubyte*)"glTexCoord2hNV")) == NULL) || r;
-  r = ((glTexCoord2hvNV = (PFNGLTEXCOORD2HVNVPROC)glewGetProcAddress((const GLubyte*)"glTexCoord2hvNV")) == NULL) || r;
-  r = ((glTexCoord3hNV = (PFNGLTEXCOORD3HNVPROC)glewGetProcAddress((const GLubyte*)"glTexCoord3hNV")) == NULL) || r;
-  r = ((glTexCoord3hvNV = (PFNGLTEXCOORD3HVNVPROC)glewGetProcAddress((const GLubyte*)"glTexCoord3hvNV")) == NULL) || r;
-  r = ((glTexCoord4hNV = (PFNGLTEXCOORD4HNVPROC)glewGetProcAddress((const GLubyte*)"glTexCoord4hNV")) == NULL) || r;
-  r = ((glTexCoord4hvNV = (PFNGLTEXCOORD4HVNVPROC)glewGetProcAddress((const GLubyte*)"glTexCoord4hvNV")) == NULL) || r;
-  r = ((glVertex2hNV = (PFNGLVERTEX2HNVPROC)glewGetProcAddress((const GLubyte*)"glVertex2hNV")) == NULL) || r;
-  r = ((glVertex2hvNV = (PFNGLVERTEX2HVNVPROC)glewGetProcAddress((const GLubyte*)"glVertex2hvNV")) == NULL) || r;
-  r = ((glVertex3hNV = (PFNGLVERTEX3HNVPROC)glewGetProcAddress((const GLubyte*)"glVertex3hNV")) == NULL) || r;
-  r = ((glVertex3hvNV = (PFNGLVERTEX3HVNVPROC)glewGetProcAddress((const GLubyte*)"glVertex3hvNV")) == NULL) || r;
-  r = ((glVertex4hNV = (PFNGLVERTEX4HNVPROC)glewGetProcAddress((const GLubyte*)"glVertex4hNV")) == NULL) || r;
-  r = ((glVertex4hvNV = (PFNGLVERTEX4HVNVPROC)glewGetProcAddress((const GLubyte*)"glVertex4hvNV")) == NULL) || r;
-  r = ((glVertexAttrib1hNV = (PFNGLVERTEXATTRIB1HNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1hNV")) == NULL) || r;
-  r = ((glVertexAttrib1hvNV = (PFNGLVERTEXATTRIB1HVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1hvNV")) == NULL) || r;
-  r = ((glVertexAttrib2hNV = (PFNGLVERTEXATTRIB2HNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2hNV")) == NULL) || r;
-  r = ((glVertexAttrib2hvNV = (PFNGLVERTEXATTRIB2HVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2hvNV")) == NULL) || r;
-  r = ((glVertexAttrib3hNV = (PFNGLVERTEXATTRIB3HNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3hNV")) == NULL) || r;
-  r = ((glVertexAttrib3hvNV = (PFNGLVERTEXATTRIB3HVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3hvNV")) == NULL) || r;
-  r = ((glVertexAttrib4hNV = (PFNGLVERTEXATTRIB4HNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4hNV")) == NULL) || r;
-  r = ((glVertexAttrib4hvNV = (PFNGLVERTEXATTRIB4HVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4hvNV")) == NULL) || r;
-  r = ((glVertexAttribs1hvNV = (PFNGLVERTEXATTRIBS1HVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs1hvNV")) == NULL) || r;
-  r = ((glVertexAttribs2hvNV = (PFNGLVERTEXATTRIBS2HVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs2hvNV")) == NULL) || r;
-  r = ((glVertexAttribs3hvNV = (PFNGLVERTEXATTRIBS3HVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs3hvNV")) == NULL) || r;
-  r = ((glVertexAttribs4hvNV = (PFNGLVERTEXATTRIBS4HVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs4hvNV")) == NULL) || r;
-  r = ((glVertexWeighthNV = (PFNGLVERTEXWEIGHTHNVPROC)glewGetProcAddress((const GLubyte*)"glVertexWeighthNV")) == NULL) || r;
-  r = ((glVertexWeighthvNV = (PFNGLVERTEXWEIGHTHVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexWeighthvNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_half_float */
-
-#ifdef GL_NV_light_max_exponent
-
-#endif /* GL_NV_light_max_exponent */
-
-#ifdef GL_NV_multisample_filter_hint
-
-#endif /* GL_NV_multisample_filter_hint */
-
-#ifdef GL_NV_occlusion_query
-
-static GLboolean _glewInit_GL_NV_occlusion_query (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBeginOcclusionQueryNV = (PFNGLBEGINOCCLUSIONQUERYNVPROC)glewGetProcAddress((const GLubyte*)"glBeginOcclusionQueryNV")) == NULL) || r;
-  r = ((glDeleteOcclusionQueriesNV = (PFNGLDELETEOCCLUSIONQUERIESNVPROC)glewGetProcAddress((const GLubyte*)"glDeleteOcclusionQueriesNV")) == NULL) || r;
-  r = ((glEndOcclusionQueryNV = (PFNGLENDOCCLUSIONQUERYNVPROC)glewGetProcAddress((const GLubyte*)"glEndOcclusionQueryNV")) == NULL) || r;
-  r = ((glGenOcclusionQueriesNV = (PFNGLGENOCCLUSIONQUERIESNVPROC)glewGetProcAddress((const GLubyte*)"glGenOcclusionQueriesNV")) == NULL) || r;
-  r = ((glGetOcclusionQueryivNV = (PFNGLGETOCCLUSIONQUERYIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetOcclusionQueryivNV")) == NULL) || r;
-  r = ((glGetOcclusionQueryuivNV = (PFNGLGETOCCLUSIONQUERYUIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetOcclusionQueryuivNV")) == NULL) || r;
-  r = ((glIsOcclusionQueryNV = (PFNGLISOCCLUSIONQUERYNVPROC)glewGetProcAddress((const GLubyte*)"glIsOcclusionQueryNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_occlusion_query */
-
-#ifdef GL_NV_packed_depth_stencil
-
-#endif /* GL_NV_packed_depth_stencil */
-
-#ifdef GL_NV_parameter_buffer_object
-
-static GLboolean _glewInit_GL_NV_parameter_buffer_object (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glProgramBufferParametersIivNV = (PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramBufferParametersIivNV")) == NULL) || r;
-  r = ((glProgramBufferParametersIuivNV = (PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramBufferParametersIuivNV")) == NULL) || r;
-  r = ((glProgramBufferParametersfvNV = (PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramBufferParametersfvNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_parameter_buffer_object */
-
-#ifdef GL_NV_parameter_buffer_object2
-
-#endif /* GL_NV_parameter_buffer_object2 */
-
-#ifdef GL_NV_pixel_data_range
-
-static GLboolean _glewInit_GL_NV_pixel_data_range (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFlushPixelDataRangeNV = (PFNGLFLUSHPIXELDATARANGENVPROC)glewGetProcAddress((const GLubyte*)"glFlushPixelDataRangeNV")) == NULL) || r;
-  r = ((glPixelDataRangeNV = (PFNGLPIXELDATARANGENVPROC)glewGetProcAddress((const GLubyte*)"glPixelDataRangeNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_pixel_data_range */
-
-#ifdef GL_NV_point_sprite
-
-static GLboolean _glewInit_GL_NV_point_sprite (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glPointParameteriNV = (PFNGLPOINTPARAMETERINVPROC)glewGetProcAddress((const GLubyte*)"glPointParameteriNV")) == NULL) || r;
-  r = ((glPointParameterivNV = (PFNGLPOINTPARAMETERIVNVPROC)glewGetProcAddress((const GLubyte*)"glPointParameterivNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_point_sprite */
-
-#ifdef GL_NV_present_video
-
-static GLboolean _glewInit_GL_NV_present_video (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetVideoi64vNV = (PFNGLGETVIDEOI64VNVPROC)glewGetProcAddress((const GLubyte*)"glGetVideoi64vNV")) == NULL) || r;
-  r = ((glGetVideoivNV = (PFNGLGETVIDEOIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetVideoivNV")) == NULL) || r;
-  r = ((glGetVideoui64vNV = (PFNGLGETVIDEOUI64VNVPROC)glewGetProcAddress((const GLubyte*)"glGetVideoui64vNV")) == NULL) || r;
-  r = ((glGetVideouivNV = (PFNGLGETVIDEOUIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetVideouivNV")) == NULL) || r;
-  r = ((glPresentFrameDualFillNV = (PFNGLPRESENTFRAMEDUALFILLNVPROC)glewGetProcAddress((const GLubyte*)"glPresentFrameDualFillNV")) == NULL) || r;
-  r = ((glPresentFrameKeyedNV = (PFNGLPRESENTFRAMEKEYEDNVPROC)glewGetProcAddress((const GLubyte*)"glPresentFrameKeyedNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_present_video */
-
-#ifdef GL_NV_primitive_restart
-
-static GLboolean _glewInit_GL_NV_primitive_restart (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glPrimitiveRestartIndexNV = (PFNGLPRIMITIVERESTARTINDEXNVPROC)glewGetProcAddress((const GLubyte*)"glPrimitiveRestartIndexNV")) == NULL) || r;
-  r = ((glPrimitiveRestartNV = (PFNGLPRIMITIVERESTARTNVPROC)glewGetProcAddress((const GLubyte*)"glPrimitiveRestartNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_primitive_restart */
-
-#ifdef GL_NV_register_combiners
-
-static GLboolean _glewInit_GL_NV_register_combiners (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glCombinerInputNV = (PFNGLCOMBINERINPUTNVPROC)glewGetProcAddress((const GLubyte*)"glCombinerInputNV")) == NULL) || r;
-  r = ((glCombinerOutputNV = (PFNGLCOMBINEROUTPUTNVPROC)glewGetProcAddress((const GLubyte*)"glCombinerOutputNV")) == NULL) || r;
-  r = ((glCombinerParameterfNV = (PFNGLCOMBINERPARAMETERFNVPROC)glewGetProcAddress((const GLubyte*)"glCombinerParameterfNV")) == NULL) || r;
-  r = ((glCombinerParameterfvNV = (PFNGLCOMBINERPARAMETERFVNVPROC)glewGetProcAddress((const GLubyte*)"glCombinerParameterfvNV")) == NULL) || r;
-  r = ((glCombinerParameteriNV = (PFNGLCOMBINERPARAMETERINVPROC)glewGetProcAddress((const GLubyte*)"glCombinerParameteriNV")) == NULL) || r;
-  r = ((glCombinerParameterivNV = (PFNGLCOMBINERPARAMETERIVNVPROC)glewGetProcAddress((const GLubyte*)"glCombinerParameterivNV")) == NULL) || r;
-  r = ((glFinalCombinerInputNV = (PFNGLFINALCOMBINERINPUTNVPROC)glewGetProcAddress((const GLubyte*)"glFinalCombinerInputNV")) == NULL) || r;
-  r = ((glGetCombinerInputParameterfvNV = (PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC)glewGetProcAddress((const GLubyte*)"glGetCombinerInputParameterfvNV")) == NULL) || r;
-  r = ((glGetCombinerInputParameterivNV = (PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetCombinerInputParameterivNV")) == NULL) || r;
-  r = ((glGetCombinerOutputParameterfvNV = (PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC)glewGetProcAddress((const GLubyte*)"glGetCombinerOutputParameterfvNV")) == NULL) || r;
-  r = ((glGetCombinerOutputParameterivNV = (PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetCombinerOutputParameterivNV")) == NULL) || r;
-  r = ((glGetFinalCombinerInputParameterfvNV = (PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC)glewGetProcAddress((const GLubyte*)"glGetFinalCombinerInputParameterfvNV")) == NULL) || r;
-  r = ((glGetFinalCombinerInputParameterivNV = (PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetFinalCombinerInputParameterivNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_register_combiners */
-
-#ifdef GL_NV_register_combiners2
-
-static GLboolean _glewInit_GL_NV_register_combiners2 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glCombinerStageParameterfvNV = (PFNGLCOMBINERSTAGEPARAMETERFVNVPROC)glewGetProcAddress((const GLubyte*)"glCombinerStageParameterfvNV")) == NULL) || r;
-  r = ((glGetCombinerStageParameterfvNV = (PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC)glewGetProcAddress((const GLubyte*)"glGetCombinerStageParameterfvNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_register_combiners2 */
-
-#ifdef GL_NV_shader_buffer_load
-
-static GLboolean _glewInit_GL_NV_shader_buffer_load (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetBufferParameterui64vNV = (PFNGLGETBUFFERPARAMETERUI64VNVPROC)glewGetProcAddress((const GLubyte*)"glGetBufferParameterui64vNV")) == NULL) || r;
-  r = ((glGetIntegerui64vNV = (PFNGLGETINTEGERUI64VNVPROC)glewGetProcAddress((const GLubyte*)"glGetIntegerui64vNV")) == NULL) || r;
-  r = ((glGetNamedBufferParameterui64vNV = (PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC)glewGetProcAddress((const GLubyte*)"glGetNamedBufferParameterui64vNV")) == NULL) || r;
-  r = ((glIsBufferResidentNV = (PFNGLISBUFFERRESIDENTNVPROC)glewGetProcAddress((const GLubyte*)"glIsBufferResidentNV")) == NULL) || r;
-  r = ((glIsNamedBufferResidentNV = (PFNGLISNAMEDBUFFERRESIDENTNVPROC)glewGetProcAddress((const GLubyte*)"glIsNamedBufferResidentNV")) == NULL) || r;
-  r = ((glMakeBufferNonResidentNV = (PFNGLMAKEBUFFERNONRESIDENTNVPROC)glewGetProcAddress((const GLubyte*)"glMakeBufferNonResidentNV")) == NULL) || r;
-  r = ((glMakeBufferResidentNV = (PFNGLMAKEBUFFERRESIDENTNVPROC)glewGetProcAddress((const GLubyte*)"glMakeBufferResidentNV")) == NULL) || r;
-  r = ((glMakeNamedBufferNonResidentNV = (PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC)glewGetProcAddress((const GLubyte*)"glMakeNamedBufferNonResidentNV")) == NULL) || r;
-  r = ((glMakeNamedBufferResidentNV = (PFNGLMAKENAMEDBUFFERRESIDENTNVPROC)glewGetProcAddress((const GLubyte*)"glMakeNamedBufferResidentNV")) == NULL) || r;
-  r = ((glProgramUniformui64NV = (PFNGLPROGRAMUNIFORMUI64NVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniformui64NV")) == NULL) || r;
-  r = ((glProgramUniformui64vNV = (PFNGLPROGRAMUNIFORMUI64VNVPROC)glewGetProcAddress((const GLubyte*)"glProgramUniformui64vNV")) == NULL) || r;
-  r = ((glUniformui64NV = (PFNGLUNIFORMUI64NVPROC)glewGetProcAddress((const GLubyte*)"glUniformui64NV")) == NULL) || r;
-  r = ((glUniformui64vNV = (PFNGLUNIFORMUI64VNVPROC)glewGetProcAddress((const GLubyte*)"glUniformui64vNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_shader_buffer_load */
-
-#ifdef GL_NV_tessellation_program5
-
-#endif /* GL_NV_tessellation_program5 */
-
-#ifdef GL_NV_texgen_emboss
-
-#endif /* GL_NV_texgen_emboss */
-
-#ifdef GL_NV_texgen_reflection
-
-#endif /* GL_NV_texgen_reflection */
-
-#ifdef GL_NV_texture_barrier
-
-static GLboolean _glewInit_GL_NV_texture_barrier (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glTextureBarrierNV = (PFNGLTEXTUREBARRIERNVPROC)glewGetProcAddress((const GLubyte*)"glTextureBarrierNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_texture_barrier */
-
-#ifdef GL_NV_texture_compression_vtc
-
-#endif /* GL_NV_texture_compression_vtc */
-
-#ifdef GL_NV_texture_env_combine4
-
-#endif /* GL_NV_texture_env_combine4 */
-
-#ifdef GL_NV_texture_expand_normal
-
-#endif /* GL_NV_texture_expand_normal */
-
-#ifdef GL_NV_texture_rectangle
-
-#endif /* GL_NV_texture_rectangle */
-
-#ifdef GL_NV_texture_shader
-
-#endif /* GL_NV_texture_shader */
-
-#ifdef GL_NV_texture_shader2
-
-#endif /* GL_NV_texture_shader2 */
-
-#ifdef GL_NV_texture_shader3
-
-#endif /* GL_NV_texture_shader3 */
-
-#ifdef GL_NV_transform_feedback
-
-static GLboolean _glewInit_GL_NV_transform_feedback (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glActiveVaryingNV = (PFNGLACTIVEVARYINGNVPROC)glewGetProcAddress((const GLubyte*)"glActiveVaryingNV")) == NULL) || r;
-  r = ((glBeginTransformFeedbackNV = (PFNGLBEGINTRANSFORMFEEDBACKNVPROC)glewGetProcAddress((const GLubyte*)"glBeginTransformFeedbackNV")) == NULL) || r;
-  r = ((glBindBufferBaseNV = (PFNGLBINDBUFFERBASENVPROC)glewGetProcAddress((const GLubyte*)"glBindBufferBaseNV")) == NULL) || r;
-  r = ((glBindBufferOffsetNV = (PFNGLBINDBUFFEROFFSETNVPROC)glewGetProcAddress((const GLubyte*)"glBindBufferOffsetNV")) == NULL) || r;
-  r = ((glBindBufferRangeNV = (PFNGLBINDBUFFERRANGENVPROC)glewGetProcAddress((const GLubyte*)"glBindBufferRangeNV")) == NULL) || r;
-  r = ((glEndTransformFeedbackNV = (PFNGLENDTRANSFORMFEEDBACKNVPROC)glewGetProcAddress((const GLubyte*)"glEndTransformFeedbackNV")) == NULL) || r;
-  r = ((glGetActiveVaryingNV = (PFNGLGETACTIVEVARYINGNVPROC)glewGetProcAddress((const GLubyte*)"glGetActiveVaryingNV")) == NULL) || r;
-  r = ((glGetTransformFeedbackVaryingNV = (PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC)glewGetProcAddress((const GLubyte*)"glGetTransformFeedbackVaryingNV")) == NULL) || r;
-  r = ((glGetVaryingLocationNV = (PFNGLGETVARYINGLOCATIONNVPROC)glewGetProcAddress((const GLubyte*)"glGetVaryingLocationNV")) == NULL) || r;
-  r = ((glTransformFeedbackAttribsNV = (PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC)glewGetProcAddress((const GLubyte*)"glTransformFeedbackAttribsNV")) == NULL) || r;
-  r = ((glTransformFeedbackVaryingsNV = (PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC)glewGetProcAddress((const GLubyte*)"glTransformFeedbackVaryingsNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_transform_feedback */
-
-#ifdef GL_NV_transform_feedback2
-
-static GLboolean _glewInit_GL_NV_transform_feedback2 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBindTransformFeedbackNV = (PFNGLBINDTRANSFORMFEEDBACKNVPROC)glewGetProcAddress((const GLubyte*)"glBindTransformFeedbackNV")) == NULL) || r;
-  r = ((glDeleteTransformFeedbacksNV = (PFNGLDELETETRANSFORMFEEDBACKSNVPROC)glewGetProcAddress((const GLubyte*)"glDeleteTransformFeedbacksNV")) == NULL) || r;
-  r = ((glDrawTransformFeedbackNV = (PFNGLDRAWTRANSFORMFEEDBACKNVPROC)glewGetProcAddress((const GLubyte*)"glDrawTransformFeedbackNV")) == NULL) || r;
-  r = ((glGenTransformFeedbacksNV = (PFNGLGENTRANSFORMFEEDBACKSNVPROC)glewGetProcAddress((const GLubyte*)"glGenTransformFeedbacksNV")) == NULL) || r;
-  r = ((glIsTransformFeedbackNV = (PFNGLISTRANSFORMFEEDBACKNVPROC)glewGetProcAddress((const GLubyte*)"glIsTransformFeedbackNV")) == NULL) || r;
-  r = ((glPauseTransformFeedbackNV = (PFNGLPAUSETRANSFORMFEEDBACKNVPROC)glewGetProcAddress((const GLubyte*)"glPauseTransformFeedbackNV")) == NULL) || r;
-  r = ((glResumeTransformFeedbackNV = (PFNGLRESUMETRANSFORMFEEDBACKNVPROC)glewGetProcAddress((const GLubyte*)"glResumeTransformFeedbackNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_transform_feedback2 */
-
-#ifdef GL_NV_vertex_array_range
-
-static GLboolean _glewInit_GL_NV_vertex_array_range (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFlushVertexArrayRangeNV = (PFNGLFLUSHVERTEXARRAYRANGENVPROC)glewGetProcAddress((const GLubyte*)"glFlushVertexArrayRangeNV")) == NULL) || r;
-  r = ((glVertexArrayRangeNV = (PFNGLVERTEXARRAYRANGENVPROC)glewGetProcAddress((const GLubyte*)"glVertexArrayRangeNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_vertex_array_range */
-
-#ifdef GL_NV_vertex_array_range2
-
-#endif /* GL_NV_vertex_array_range2 */
-
-#ifdef GL_NV_vertex_attrib_integer_64bit
-
-static GLboolean _glewInit_GL_NV_vertex_attrib_integer_64bit (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetVertexAttribLi64vNV = (PFNGLGETVERTEXATTRIBLI64VNVPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribLi64vNV")) == NULL) || r;
-  r = ((glGetVertexAttribLui64vNV = (PFNGLGETVERTEXATTRIBLUI64VNVPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribLui64vNV")) == NULL) || r;
-  r = ((glVertexAttribL1i64NV = (PFNGLVERTEXATTRIBL1I64NVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL1i64NV")) == NULL) || r;
-  r = ((glVertexAttribL1i64vNV = (PFNGLVERTEXATTRIBL1I64VNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL1i64vNV")) == NULL) || r;
-  r = ((glVertexAttribL1ui64NV = (PFNGLVERTEXATTRIBL1UI64NVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL1ui64NV")) == NULL) || r;
-  r = ((glVertexAttribL1ui64vNV = (PFNGLVERTEXATTRIBL1UI64VNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL1ui64vNV")) == NULL) || r;
-  r = ((glVertexAttribL2i64NV = (PFNGLVERTEXATTRIBL2I64NVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL2i64NV")) == NULL) || r;
-  r = ((glVertexAttribL2i64vNV = (PFNGLVERTEXATTRIBL2I64VNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL2i64vNV")) == NULL) || r;
-  r = ((glVertexAttribL2ui64NV = (PFNGLVERTEXATTRIBL2UI64NVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL2ui64NV")) == NULL) || r;
-  r = ((glVertexAttribL2ui64vNV = (PFNGLVERTEXATTRIBL2UI64VNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL2ui64vNV")) == NULL) || r;
-  r = ((glVertexAttribL3i64NV = (PFNGLVERTEXATTRIBL3I64NVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL3i64NV")) == NULL) || r;
-  r = ((glVertexAttribL3i64vNV = (PFNGLVERTEXATTRIBL3I64VNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL3i64vNV")) == NULL) || r;
-  r = ((glVertexAttribL3ui64NV = (PFNGLVERTEXATTRIBL3UI64NVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL3ui64NV")) == NULL) || r;
-  r = ((glVertexAttribL3ui64vNV = (PFNGLVERTEXATTRIBL3UI64VNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL3ui64vNV")) == NULL) || r;
-  r = ((glVertexAttribL4i64NV = (PFNGLVERTEXATTRIBL4I64NVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL4i64NV")) == NULL) || r;
-  r = ((glVertexAttribL4i64vNV = (PFNGLVERTEXATTRIBL4I64VNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL4i64vNV")) == NULL) || r;
-  r = ((glVertexAttribL4ui64NV = (PFNGLVERTEXATTRIBL4UI64NVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL4ui64NV")) == NULL) || r;
-  r = ((glVertexAttribL4ui64vNV = (PFNGLVERTEXATTRIBL4UI64VNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribL4ui64vNV")) == NULL) || r;
-  r = ((glVertexAttribLFormatNV = (PFNGLVERTEXATTRIBLFORMATNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribLFormatNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_vertex_attrib_integer_64bit */
-
-#ifdef GL_NV_vertex_buffer_unified_memory
-
-static GLboolean _glewInit_GL_NV_vertex_buffer_unified_memory (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glBufferAddressRangeNV = (PFNGLBUFFERADDRESSRANGENVPROC)glewGetProcAddress((const GLubyte*)"glBufferAddressRangeNV")) == NULL) || r;
-  r = ((glColorFormatNV = (PFNGLCOLORFORMATNVPROC)glewGetProcAddress((const GLubyte*)"glColorFormatNV")) == NULL) || r;
-  r = ((glEdgeFlagFormatNV = (PFNGLEDGEFLAGFORMATNVPROC)glewGetProcAddress((const GLubyte*)"glEdgeFlagFormatNV")) == NULL) || r;
-  r = ((glFogCoordFormatNV = (PFNGLFOGCOORDFORMATNVPROC)glewGetProcAddress((const GLubyte*)"glFogCoordFormatNV")) == NULL) || r;
-  r = ((glGetIntegerui64i_vNV = (PFNGLGETINTEGERUI64I_VNVPROC)glewGetProcAddress((const GLubyte*)"glGetIntegerui64i_vNV")) == NULL) || r;
-  r = ((glIndexFormatNV = (PFNGLINDEXFORMATNVPROC)glewGetProcAddress((const GLubyte*)"glIndexFormatNV")) == NULL) || r;
-  r = ((glNormalFormatNV = (PFNGLNORMALFORMATNVPROC)glewGetProcAddress((const GLubyte*)"glNormalFormatNV")) == NULL) || r;
-  r = ((glSecondaryColorFormatNV = (PFNGLSECONDARYCOLORFORMATNVPROC)glewGetProcAddress((const GLubyte*)"glSecondaryColorFormatNV")) == NULL) || r;
-  r = ((glTexCoordFormatNV = (PFNGLTEXCOORDFORMATNVPROC)glewGetProcAddress((const GLubyte*)"glTexCoordFormatNV")) == NULL) || r;
-  r = ((glVertexAttribFormatNV = (PFNGLVERTEXATTRIBFORMATNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribFormatNV")) == NULL) || r;
-  r = ((glVertexAttribIFormatNV = (PFNGLVERTEXATTRIBIFORMATNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribIFormatNV")) == NULL) || r;
-  r = ((glVertexFormatNV = (PFNGLVERTEXFORMATNVPROC)glewGetProcAddress((const GLubyte*)"glVertexFormatNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_vertex_buffer_unified_memory */
-
-#ifdef GL_NV_vertex_program
-
-static GLboolean _glewInit_GL_NV_vertex_program (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glAreProgramsResidentNV = (PFNGLAREPROGRAMSRESIDENTNVPROC)glewGetProcAddress((const GLubyte*)"glAreProgramsResidentNV")) == NULL) || r;
-  r = ((glBindProgramNV = (PFNGLBINDPROGRAMNVPROC)glewGetProcAddress((const GLubyte*)"glBindProgramNV")) == NULL) || r;
-  r = ((glDeleteProgramsNV = (PFNGLDELETEPROGRAMSNVPROC)glewGetProcAddress((const GLubyte*)"glDeleteProgramsNV")) == NULL) || r;
-  r = ((glExecuteProgramNV = (PFNGLEXECUTEPROGRAMNVPROC)glewGetProcAddress((const GLubyte*)"glExecuteProgramNV")) == NULL) || r;
-  r = ((glGenProgramsNV = (PFNGLGENPROGRAMSNVPROC)glewGetProcAddress((const GLubyte*)"glGenProgramsNV")) == NULL) || r;
-  r = ((glGetProgramParameterdvNV = (PFNGLGETPROGRAMPARAMETERDVNVPROC)glewGetProcAddress((const GLubyte*)"glGetProgramParameterdvNV")) == NULL) || r;
-  r = ((glGetProgramParameterfvNV = (PFNGLGETPROGRAMPARAMETERFVNVPROC)glewGetProcAddress((const GLubyte*)"glGetProgramParameterfvNV")) == NULL) || r;
-  r = ((glGetProgramStringNV = (PFNGLGETPROGRAMSTRINGNVPROC)glewGetProcAddress((const GLubyte*)"glGetProgramStringNV")) == NULL) || r;
-  r = ((glGetProgramivNV = (PFNGLGETPROGRAMIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetProgramivNV")) == NULL) || r;
-  r = ((glGetTrackMatrixivNV = (PFNGLGETTRACKMATRIXIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetTrackMatrixivNV")) == NULL) || r;
-  r = ((glGetVertexAttribPointervNV = (PFNGLGETVERTEXATTRIBPOINTERVNVPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribPointervNV")) == NULL) || r;
-  r = ((glGetVertexAttribdvNV = (PFNGLGETVERTEXATTRIBDVNVPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribdvNV")) == NULL) || r;
-  r = ((glGetVertexAttribfvNV = (PFNGLGETVERTEXATTRIBFVNVPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribfvNV")) == NULL) || r;
-  r = ((glGetVertexAttribivNV = (PFNGLGETVERTEXATTRIBIVNVPROC)glewGetProcAddress((const GLubyte*)"glGetVertexAttribivNV")) == NULL) || r;
-  r = ((glIsProgramNV = (PFNGLISPROGRAMNVPROC)glewGetProcAddress((const GLubyte*)"glIsProgramNV")) == NULL) || r;
-  r = ((glLoadProgramNV = (PFNGLLOADPROGRAMNVPROC)glewGetProcAddress((const GLubyte*)"glLoadProgramNV")) == NULL) || r;
-  r = ((glProgramParameter4dNV = (PFNGLPROGRAMPARAMETER4DNVPROC)glewGetProcAddress((const GLubyte*)"glProgramParameter4dNV")) == NULL) || r;
-  r = ((glProgramParameter4dvNV = (PFNGLPROGRAMPARAMETER4DVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramParameter4dvNV")) == NULL) || r;
-  r = ((glProgramParameter4fNV = (PFNGLPROGRAMPARAMETER4FNVPROC)glewGetProcAddress((const GLubyte*)"glProgramParameter4fNV")) == NULL) || r;
-  r = ((glProgramParameter4fvNV = (PFNGLPROGRAMPARAMETER4FVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramParameter4fvNV")) == NULL) || r;
-  r = ((glProgramParameters4dvNV = (PFNGLPROGRAMPARAMETERS4DVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramParameters4dvNV")) == NULL) || r;
-  r = ((glProgramParameters4fvNV = (PFNGLPROGRAMPARAMETERS4FVNVPROC)glewGetProcAddress((const GLubyte*)"glProgramParameters4fvNV")) == NULL) || r;
-  r = ((glRequestResidentProgramsNV = (PFNGLREQUESTRESIDENTPROGRAMSNVPROC)glewGetProcAddress((const GLubyte*)"glRequestResidentProgramsNV")) == NULL) || r;
-  r = ((glTrackMatrixNV = (PFNGLTRACKMATRIXNVPROC)glewGetProcAddress((const GLubyte*)"glTrackMatrixNV")) == NULL) || r;
-  r = ((glVertexAttrib1dNV = (PFNGLVERTEXATTRIB1DNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1dNV")) == NULL) || r;
-  r = ((glVertexAttrib1dvNV = (PFNGLVERTEXATTRIB1DVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1dvNV")) == NULL) || r;
-  r = ((glVertexAttrib1fNV = (PFNGLVERTEXATTRIB1FNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1fNV")) == NULL) || r;
-  r = ((glVertexAttrib1fvNV = (PFNGLVERTEXATTRIB1FVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1fvNV")) == NULL) || r;
-  r = ((glVertexAttrib1sNV = (PFNGLVERTEXATTRIB1SNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1sNV")) == NULL) || r;
-  r = ((glVertexAttrib1svNV = (PFNGLVERTEXATTRIB1SVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib1svNV")) == NULL) || r;
-  r = ((glVertexAttrib2dNV = (PFNGLVERTEXATTRIB2DNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2dNV")) == NULL) || r;
-  r = ((glVertexAttrib2dvNV = (PFNGLVERTEXATTRIB2DVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2dvNV")) == NULL) || r;
-  r = ((glVertexAttrib2fNV = (PFNGLVERTEXATTRIB2FNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2fNV")) == NULL) || r;
-  r = ((glVertexAttrib2fvNV = (PFNGLVERTEXATTRIB2FVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2fvNV")) == NULL) || r;
-  r = ((glVertexAttrib2sNV = (PFNGLVERTEXATTRIB2SNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2sNV")) == NULL) || r;
-  r = ((glVertexAttrib2svNV = (PFNGLVERTEXATTRIB2SVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib2svNV")) == NULL) || r;
-  r = ((glVertexAttrib3dNV = (PFNGLVERTEXATTRIB3DNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3dNV")) == NULL) || r;
-  r = ((glVertexAttrib3dvNV = (PFNGLVERTEXATTRIB3DVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3dvNV")) == NULL) || r;
-  r = ((glVertexAttrib3fNV = (PFNGLVERTEXATTRIB3FNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3fNV")) == NULL) || r;
-  r = ((glVertexAttrib3fvNV = (PFNGLVERTEXATTRIB3FVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3fvNV")) == NULL) || r;
-  r = ((glVertexAttrib3sNV = (PFNGLVERTEXATTRIB3SNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3sNV")) == NULL) || r;
-  r = ((glVertexAttrib3svNV = (PFNGLVERTEXATTRIB3SVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib3svNV")) == NULL) || r;
-  r = ((glVertexAttrib4dNV = (PFNGLVERTEXATTRIB4DNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4dNV")) == NULL) || r;
-  r = ((glVertexAttrib4dvNV = (PFNGLVERTEXATTRIB4DVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4dvNV")) == NULL) || r;
-  r = ((glVertexAttrib4fNV = (PFNGLVERTEXATTRIB4FNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4fNV")) == NULL) || r;
-  r = ((glVertexAttrib4fvNV = (PFNGLVERTEXATTRIB4FVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4fvNV")) == NULL) || r;
-  r = ((glVertexAttrib4sNV = (PFNGLVERTEXATTRIB4SNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4sNV")) == NULL) || r;
-  r = ((glVertexAttrib4svNV = (PFNGLVERTEXATTRIB4SVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4svNV")) == NULL) || r;
-  r = ((glVertexAttrib4ubNV = (PFNGLVERTEXATTRIB4UBNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4ubNV")) == NULL) || r;
-  r = ((glVertexAttrib4ubvNV = (PFNGLVERTEXATTRIB4UBVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttrib4ubvNV")) == NULL) || r;
-  r = ((glVertexAttribPointerNV = (PFNGLVERTEXATTRIBPOINTERNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribPointerNV")) == NULL) || r;
-  r = ((glVertexAttribs1dvNV = (PFNGLVERTEXATTRIBS1DVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs1dvNV")) == NULL) || r;
-  r = ((glVertexAttribs1fvNV = (PFNGLVERTEXATTRIBS1FVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs1fvNV")) == NULL) || r;
-  r = ((glVertexAttribs1svNV = (PFNGLVERTEXATTRIBS1SVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs1svNV")) == NULL) || r;
-  r = ((glVertexAttribs2dvNV = (PFNGLVERTEXATTRIBS2DVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs2dvNV")) == NULL) || r;
-  r = ((glVertexAttribs2fvNV = (PFNGLVERTEXATTRIBS2FVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs2fvNV")) == NULL) || r;
-  r = ((glVertexAttribs2svNV = (PFNGLVERTEXATTRIBS2SVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs2svNV")) == NULL) || r;
-  r = ((glVertexAttribs3dvNV = (PFNGLVERTEXATTRIBS3DVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs3dvNV")) == NULL) || r;
-  r = ((glVertexAttribs3fvNV = (PFNGLVERTEXATTRIBS3FVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs3fvNV")) == NULL) || r;
-  r = ((glVertexAttribs3svNV = (PFNGLVERTEXATTRIBS3SVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs3svNV")) == NULL) || r;
-  r = ((glVertexAttribs4dvNV = (PFNGLVERTEXATTRIBS4DVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs4dvNV")) == NULL) || r;
-  r = ((glVertexAttribs4fvNV = (PFNGLVERTEXATTRIBS4FVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs4fvNV")) == NULL) || r;
-  r = ((glVertexAttribs4svNV = (PFNGLVERTEXATTRIBS4SVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs4svNV")) == NULL) || r;
-  r = ((glVertexAttribs4ubvNV = (PFNGLVERTEXATTRIBS4UBVNVPROC)glewGetProcAddress((const GLubyte*)"glVertexAttribs4ubvNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_NV_vertex_program */
-
-#ifdef GL_NV_vertex_program1_1
-
-#endif /* GL_NV_vertex_program1_1 */
-
-#ifdef GL_NV_vertex_program2
-
-#endif /* GL_NV_vertex_program2 */
-
-#ifdef GL_NV_vertex_program2_option
-
-#endif /* GL_NV_vertex_program2_option */
-
-#ifdef GL_NV_vertex_program3
-
-#endif /* GL_NV_vertex_program3 */
-
-#ifdef GL_NV_vertex_program4
-
-#endif /* GL_NV_vertex_program4 */
-
-#ifdef GL_OES_byte_coordinates
-
-#endif /* GL_OES_byte_coordinates */
-
-#ifdef GL_OES_compressed_paletted_texture
-
-#endif /* GL_OES_compressed_paletted_texture */
-
-#ifdef GL_OES_read_format
-
-#endif /* GL_OES_read_format */
-
-#ifdef GL_OES_single_precision
-
-static GLboolean _glewInit_GL_OES_single_precision (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glClearDepthfOES = (PFNGLCLEARDEPTHFOESPROC)glewGetProcAddress((const GLubyte*)"glClearDepthfOES")) == NULL) || r;
-  r = ((glClipPlanefOES = (PFNGLCLIPPLANEFOESPROC)glewGetProcAddress((const GLubyte*)"glClipPlanefOES")) == NULL) || r;
-  r = ((glDepthRangefOES = (PFNGLDEPTHRANGEFOESPROC)glewGetProcAddress((const GLubyte*)"glDepthRangefOES")) == NULL) || r;
-  r = ((glFrustumfOES = (PFNGLFRUSTUMFOESPROC)glewGetProcAddress((const GLubyte*)"glFrustumfOES")) == NULL) || r;
-  r = ((glGetClipPlanefOES = (PFNGLGETCLIPPLANEFOESPROC)glewGetProcAddress((const GLubyte*)"glGetClipPlanefOES")) == NULL) || r;
-  r = ((glOrthofOES = (PFNGLORTHOFOESPROC)glewGetProcAddress((const GLubyte*)"glOrthofOES")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_OES_single_precision */
-
-#ifdef GL_OML_interlace
-
-#endif /* GL_OML_interlace */
-
-#ifdef GL_OML_resample
-
-#endif /* GL_OML_resample */
-
-#ifdef GL_OML_subsample
-
-#endif /* GL_OML_subsample */
-
-#ifdef GL_PGI_misc_hints
-
-#endif /* GL_PGI_misc_hints */
-
-#ifdef GL_PGI_vertex_hints
-
-#endif /* GL_PGI_vertex_hints */
-
-#ifdef GL_REND_screen_coordinates
-
-#endif /* GL_REND_screen_coordinates */
-
-#ifdef GL_S3_s3tc
-
-#endif /* GL_S3_s3tc */
-
-#ifdef GL_SGIS_color_range
-
-#endif /* GL_SGIS_color_range */
-
-#ifdef GL_SGIS_detail_texture
-
-static GLboolean _glewInit_GL_SGIS_detail_texture (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glDetailTexFuncSGIS = (PFNGLDETAILTEXFUNCSGISPROC)glewGetProcAddress((const GLubyte*)"glDetailTexFuncSGIS")) == NULL) || r;
-  r = ((glGetDetailTexFuncSGIS = (PFNGLGETDETAILTEXFUNCSGISPROC)glewGetProcAddress((const GLubyte*)"glGetDetailTexFuncSGIS")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIS_detail_texture */
-
-#ifdef GL_SGIS_fog_function
-
-static GLboolean _glewInit_GL_SGIS_fog_function (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFogFuncSGIS = (PFNGLFOGFUNCSGISPROC)glewGetProcAddress((const GLubyte*)"glFogFuncSGIS")) == NULL) || r;
-  r = ((glGetFogFuncSGIS = (PFNGLGETFOGFUNCSGISPROC)glewGetProcAddress((const GLubyte*)"glGetFogFuncSGIS")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIS_fog_function */
-
-#ifdef GL_SGIS_generate_mipmap
-
-#endif /* GL_SGIS_generate_mipmap */
-
-#ifdef GL_SGIS_multisample
-
-static GLboolean _glewInit_GL_SGIS_multisample (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glSampleMaskSGIS = (PFNGLSAMPLEMASKSGISPROC)glewGetProcAddress((const GLubyte*)"glSampleMaskSGIS")) == NULL) || r;
-  r = ((glSamplePatternSGIS = (PFNGLSAMPLEPATTERNSGISPROC)glewGetProcAddress((const GLubyte*)"glSamplePatternSGIS")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIS_multisample */
-
-#ifdef GL_SGIS_pixel_texture
-
-#endif /* GL_SGIS_pixel_texture */
-
-#ifdef GL_SGIS_point_line_texgen
-
-#endif /* GL_SGIS_point_line_texgen */
-
-#ifdef GL_SGIS_sharpen_texture
-
-static GLboolean _glewInit_GL_SGIS_sharpen_texture (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetSharpenTexFuncSGIS = (PFNGLGETSHARPENTEXFUNCSGISPROC)glewGetProcAddress((const GLubyte*)"glGetSharpenTexFuncSGIS")) == NULL) || r;
-  r = ((glSharpenTexFuncSGIS = (PFNGLSHARPENTEXFUNCSGISPROC)glewGetProcAddress((const GLubyte*)"glSharpenTexFuncSGIS")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIS_sharpen_texture */
-
-#ifdef GL_SGIS_texture4D
-
-static GLboolean _glewInit_GL_SGIS_texture4D (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glTexImage4DSGIS = (PFNGLTEXIMAGE4DSGISPROC)glewGetProcAddress((const GLubyte*)"glTexImage4DSGIS")) == NULL) || r;
-  r = ((glTexSubImage4DSGIS = (PFNGLTEXSUBIMAGE4DSGISPROC)glewGetProcAddress((const GLubyte*)"glTexSubImage4DSGIS")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIS_texture4D */
-
-#ifdef GL_SGIS_texture_border_clamp
-
-#endif /* GL_SGIS_texture_border_clamp */
-
-#ifdef GL_SGIS_texture_edge_clamp
-
-#endif /* GL_SGIS_texture_edge_clamp */
-
-#ifdef GL_SGIS_texture_filter4
-
-static GLboolean _glewInit_GL_SGIS_texture_filter4 (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGetTexFilterFuncSGIS = (PFNGLGETTEXFILTERFUNCSGISPROC)glewGetProcAddress((const GLubyte*)"glGetTexFilterFuncSGIS")) == NULL) || r;
-  r = ((glTexFilterFuncSGIS = (PFNGLTEXFILTERFUNCSGISPROC)glewGetProcAddress((const GLubyte*)"glTexFilterFuncSGIS")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIS_texture_filter4 */
-
-#ifdef GL_SGIS_texture_lod
-
-#endif /* GL_SGIS_texture_lod */
-
-#ifdef GL_SGIS_texture_select
-
-#endif /* GL_SGIS_texture_select */
-
-#ifdef GL_SGIX_async
-
-static GLboolean _glewInit_GL_SGIX_async (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glAsyncMarkerSGIX = (PFNGLASYNCMARKERSGIXPROC)glewGetProcAddress((const GLubyte*)"glAsyncMarkerSGIX")) == NULL) || r;
-  r = ((glDeleteAsyncMarkersSGIX = (PFNGLDELETEASYNCMARKERSSGIXPROC)glewGetProcAddress((const GLubyte*)"glDeleteAsyncMarkersSGIX")) == NULL) || r;
-  r = ((glFinishAsyncSGIX = (PFNGLFINISHASYNCSGIXPROC)glewGetProcAddress((const GLubyte*)"glFinishAsyncSGIX")) == NULL) || r;
-  r = ((glGenAsyncMarkersSGIX = (PFNGLGENASYNCMARKERSSGIXPROC)glewGetProcAddress((const GLubyte*)"glGenAsyncMarkersSGIX")) == NULL) || r;
-  r = ((glIsAsyncMarkerSGIX = (PFNGLISASYNCMARKERSGIXPROC)glewGetProcAddress((const GLubyte*)"glIsAsyncMarkerSGIX")) == NULL) || r;
-  r = ((glPollAsyncSGIX = (PFNGLPOLLASYNCSGIXPROC)glewGetProcAddress((const GLubyte*)"glPollAsyncSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIX_async */
-
-#ifdef GL_SGIX_async_histogram
-
-#endif /* GL_SGIX_async_histogram */
-
-#ifdef GL_SGIX_async_pixel
-
-#endif /* GL_SGIX_async_pixel */
-
-#ifdef GL_SGIX_blend_alpha_minmax
-
-#endif /* GL_SGIX_blend_alpha_minmax */
-
-#ifdef GL_SGIX_clipmap
-
-#endif /* GL_SGIX_clipmap */
-
-#ifdef GL_SGIX_convolution_accuracy
-
-#endif /* GL_SGIX_convolution_accuracy */
-
-#ifdef GL_SGIX_depth_texture
-
-#endif /* GL_SGIX_depth_texture */
-
-#ifdef GL_SGIX_flush_raster
-
-static GLboolean _glewInit_GL_SGIX_flush_raster (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFlushRasterSGIX = (PFNGLFLUSHRASTERSGIXPROC)glewGetProcAddress((const GLubyte*)"glFlushRasterSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIX_flush_raster */
-
-#ifdef GL_SGIX_fog_offset
-
-#endif /* GL_SGIX_fog_offset */
-
-#ifdef GL_SGIX_fog_texture
-
-static GLboolean _glewInit_GL_SGIX_fog_texture (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glTextureFogSGIX = (PFNGLTEXTUREFOGSGIXPROC)glewGetProcAddress((const GLubyte*)"glTextureFogSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIX_fog_texture */
-
-#ifdef GL_SGIX_fragment_specular_lighting
-
-static GLboolean _glewInit_GL_SGIX_fragment_specular_lighting (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFragmentColorMaterialSGIX = (PFNGLFRAGMENTCOLORMATERIALSGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentColorMaterialSGIX")) == NULL) || r;
-  r = ((glFragmentLightModelfSGIX = (PFNGLFRAGMENTLIGHTMODELFSGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightModelfSGIX")) == NULL) || r;
-  r = ((glFragmentLightModelfvSGIX = (PFNGLFRAGMENTLIGHTMODELFVSGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightModelfvSGIX")) == NULL) || r;
-  r = ((glFragmentLightModeliSGIX = (PFNGLFRAGMENTLIGHTMODELISGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightModeliSGIX")) == NULL) || r;
-  r = ((glFragmentLightModelivSGIX = (PFNGLFRAGMENTLIGHTMODELIVSGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightModelivSGIX")) == NULL) || r;
-  r = ((glFragmentLightfSGIX = (PFNGLFRAGMENTLIGHTFSGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightfSGIX")) == NULL) || r;
-  r = ((glFragmentLightfvSGIX = (PFNGLFRAGMENTLIGHTFVSGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightfvSGIX")) == NULL) || r;
-  r = ((glFragmentLightiSGIX = (PFNGLFRAGMENTLIGHTISGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightiSGIX")) == NULL) || r;
-  r = ((glFragmentLightivSGIX = (PFNGLFRAGMENTLIGHTIVSGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentLightivSGIX")) == NULL) || r;
-  r = ((glFragmentMaterialfSGIX = (PFNGLFRAGMENTMATERIALFSGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentMaterialfSGIX")) == NULL) || r;
-  r = ((glFragmentMaterialfvSGIX = (PFNGLFRAGMENTMATERIALFVSGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentMaterialfvSGIX")) == NULL) || r;
-  r = ((glFragmentMaterialiSGIX = (PFNGLFRAGMENTMATERIALISGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentMaterialiSGIX")) == NULL) || r;
-  r = ((glFragmentMaterialivSGIX = (PFNGLFRAGMENTMATERIALIVSGIXPROC)glewGetProcAddress((const GLubyte*)"glFragmentMaterialivSGIX")) == NULL) || r;
-  r = ((glGetFragmentLightfvSGIX = (PFNGLGETFRAGMENTLIGHTFVSGIXPROC)glewGetProcAddress((const GLubyte*)"glGetFragmentLightfvSGIX")) == NULL) || r;
-  r = ((glGetFragmentLightivSGIX = (PFNGLGETFRAGMENTLIGHTIVSGIXPROC)glewGetProcAddress((const GLubyte*)"glGetFragmentLightivSGIX")) == NULL) || r;
-  r = ((glGetFragmentMaterialfvSGIX = (PFNGLGETFRAGMENTMATERIALFVSGIXPROC)glewGetProcAddress((const GLubyte*)"glGetFragmentMaterialfvSGIX")) == NULL) || r;
-  r = ((glGetFragmentMaterialivSGIX = (PFNGLGETFRAGMENTMATERIALIVSGIXPROC)glewGetProcAddress((const GLubyte*)"glGetFragmentMaterialivSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIX_fragment_specular_lighting */
-
-#ifdef GL_SGIX_framezoom
-
-static GLboolean _glewInit_GL_SGIX_framezoom (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFrameZoomSGIX = (PFNGLFRAMEZOOMSGIXPROC)glewGetProcAddress((const GLubyte*)"glFrameZoomSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIX_framezoom */
-
-#ifdef GL_SGIX_interlace
-
-#endif /* GL_SGIX_interlace */
-
-#ifdef GL_SGIX_ir_instrument1
-
-#endif /* GL_SGIX_ir_instrument1 */
-
-#ifdef GL_SGIX_list_priority
-
-#endif /* GL_SGIX_list_priority */
-
-#ifdef GL_SGIX_pixel_texture
-
-static GLboolean _glewInit_GL_SGIX_pixel_texture (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glPixelTexGenSGIX = (PFNGLPIXELTEXGENSGIXPROC)glewGetProcAddress((const GLubyte*)"glPixelTexGenSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIX_pixel_texture */
-
-#ifdef GL_SGIX_pixel_texture_bits
-
-#endif /* GL_SGIX_pixel_texture_bits */
-
-#ifdef GL_SGIX_reference_plane
-
-static GLboolean _glewInit_GL_SGIX_reference_plane (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glReferencePlaneSGIX = (PFNGLREFERENCEPLANESGIXPROC)glewGetProcAddress((const GLubyte*)"glReferencePlaneSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIX_reference_plane */
-
-#ifdef GL_SGIX_resample
-
-#endif /* GL_SGIX_resample */
-
-#ifdef GL_SGIX_shadow
-
-#endif /* GL_SGIX_shadow */
-
-#ifdef GL_SGIX_shadow_ambient
-
-#endif /* GL_SGIX_shadow_ambient */
-
-#ifdef GL_SGIX_sprite
-
-static GLboolean _glewInit_GL_SGIX_sprite (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glSpriteParameterfSGIX = (PFNGLSPRITEPARAMETERFSGIXPROC)glewGetProcAddress((const GLubyte*)"glSpriteParameterfSGIX")) == NULL) || r;
-  r = ((glSpriteParameterfvSGIX = (PFNGLSPRITEPARAMETERFVSGIXPROC)glewGetProcAddress((const GLubyte*)"glSpriteParameterfvSGIX")) == NULL) || r;
-  r = ((glSpriteParameteriSGIX = (PFNGLSPRITEPARAMETERISGIXPROC)glewGetProcAddress((const GLubyte*)"glSpriteParameteriSGIX")) == NULL) || r;
-  r = ((glSpriteParameterivSGIX = (PFNGLSPRITEPARAMETERIVSGIXPROC)glewGetProcAddress((const GLubyte*)"glSpriteParameterivSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIX_sprite */
-
-#ifdef GL_SGIX_tag_sample_buffer
-
-static GLboolean _glewInit_GL_SGIX_tag_sample_buffer (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glTagSampleBufferSGIX = (PFNGLTAGSAMPLEBUFFERSGIXPROC)glewGetProcAddress((const GLubyte*)"glTagSampleBufferSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGIX_tag_sample_buffer */
-
-#ifdef GL_SGIX_texture_add_env
-
-#endif /* GL_SGIX_texture_add_env */
-
-#ifdef GL_SGIX_texture_coordinate_clamp
-
-#endif /* GL_SGIX_texture_coordinate_clamp */
-
-#ifdef GL_SGIX_texture_lod_bias
-
-#endif /* GL_SGIX_texture_lod_bias */
-
-#ifdef GL_SGIX_texture_multi_buffer
-
-#endif /* GL_SGIX_texture_multi_buffer */
-
-#ifdef GL_SGIX_texture_range
-
-#endif /* GL_SGIX_texture_range */
-
-#ifdef GL_SGIX_texture_scale_bias
-
-#endif /* GL_SGIX_texture_scale_bias */
-
-#ifdef GL_SGIX_vertex_preclip
-
-#endif /* GL_SGIX_vertex_preclip */
-
-#ifdef GL_SGIX_vertex_preclip_hint
-
-#endif /* GL_SGIX_vertex_preclip_hint */
-
-#ifdef GL_SGIX_ycrcb
-
-#endif /* GL_SGIX_ycrcb */
-
-#ifdef GL_SGI_color_matrix
-
-#endif /* GL_SGI_color_matrix */
-
-#ifdef GL_SGI_color_table
-
-static GLboolean _glewInit_GL_SGI_color_table (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glColorTableParameterfvSGI = (PFNGLCOLORTABLEPARAMETERFVSGIPROC)glewGetProcAddress((const GLubyte*)"glColorTableParameterfvSGI")) == NULL) || r;
-  r = ((glColorTableParameterivSGI = (PFNGLCOLORTABLEPARAMETERIVSGIPROC)glewGetProcAddress((const GLubyte*)"glColorTableParameterivSGI")) == NULL) || r;
-  r = ((glColorTableSGI = (PFNGLCOLORTABLESGIPROC)glewGetProcAddress((const GLubyte*)"glColorTableSGI")) == NULL) || r;
-  r = ((glCopyColorTableSGI = (PFNGLCOPYCOLORTABLESGIPROC)glewGetProcAddress((const GLubyte*)"glCopyColorTableSGI")) == NULL) || r;
-  r = ((glGetColorTableParameterfvSGI = (PFNGLGETCOLORTABLEPARAMETERFVSGIPROC)glewGetProcAddress((const GLubyte*)"glGetColorTableParameterfvSGI")) == NULL) || r;
-  r = ((glGetColorTableParameterivSGI = (PFNGLGETCOLORTABLEPARAMETERIVSGIPROC)glewGetProcAddress((const GLubyte*)"glGetColorTableParameterivSGI")) == NULL) || r;
-  r = ((glGetColorTableSGI = (PFNGLGETCOLORTABLESGIPROC)glewGetProcAddress((const GLubyte*)"glGetColorTableSGI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SGI_color_table */
-
-#ifdef GL_SGI_texture_color_table
-
-#endif /* GL_SGI_texture_color_table */
-
-#ifdef GL_SUNX_constant_data
-
-static GLboolean _glewInit_GL_SUNX_constant_data (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glFinishTextureSUNX = (PFNGLFINISHTEXTURESUNXPROC)glewGetProcAddress((const GLubyte*)"glFinishTextureSUNX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SUNX_constant_data */
-
-#ifdef GL_SUN_convolution_border_modes
-
-#endif /* GL_SUN_convolution_border_modes */
-
-#ifdef GL_SUN_global_alpha
-
-static GLboolean _glewInit_GL_SUN_global_alpha (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glGlobalAlphaFactorbSUN = (PFNGLGLOBALALPHAFACTORBSUNPROC)glewGetProcAddress((const GLubyte*)"glGlobalAlphaFactorbSUN")) == NULL) || r;
-  r = ((glGlobalAlphaFactordSUN = (PFNGLGLOBALALPHAFACTORDSUNPROC)glewGetProcAddress((const GLubyte*)"glGlobalAlphaFactordSUN")) == NULL) || r;
-  r = ((glGlobalAlphaFactorfSUN = (PFNGLGLOBALALPHAFACTORFSUNPROC)glewGetProcAddress((const GLubyte*)"glGlobalAlphaFactorfSUN")) == NULL) || r;
-  r = ((glGlobalAlphaFactoriSUN = (PFNGLGLOBALALPHAFACTORISUNPROC)glewGetProcAddress((const GLubyte*)"glGlobalAlphaFactoriSUN")) == NULL) || r;
-  r = ((glGlobalAlphaFactorsSUN = (PFNGLGLOBALALPHAFACTORSSUNPROC)glewGetProcAddress((const GLubyte*)"glGlobalAlphaFactorsSUN")) == NULL) || r;
-  r = ((glGlobalAlphaFactorubSUN = (PFNGLGLOBALALPHAFACTORUBSUNPROC)glewGetProcAddress((const GLubyte*)"glGlobalAlphaFactorubSUN")) == NULL) || r;
-  r = ((glGlobalAlphaFactoruiSUN = (PFNGLGLOBALALPHAFACTORUISUNPROC)glewGetProcAddress((const GLubyte*)"glGlobalAlphaFactoruiSUN")) == NULL) || r;
-  r = ((glGlobalAlphaFactorusSUN = (PFNGLGLOBALALPHAFACTORUSSUNPROC)glewGetProcAddress((const GLubyte*)"glGlobalAlphaFactorusSUN")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SUN_global_alpha */
-
-#ifdef GL_SUN_mesh_array
-
-#endif /* GL_SUN_mesh_array */
-
-#ifdef GL_SUN_read_video_pixels
-
-static GLboolean _glewInit_GL_SUN_read_video_pixels (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glReadVideoPixelsSUN = (PFNGLREADVIDEOPIXELSSUNPROC)glewGetProcAddress((const GLubyte*)"glReadVideoPixelsSUN")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SUN_read_video_pixels */
-
-#ifdef GL_SUN_slice_accum
-
-#endif /* GL_SUN_slice_accum */
-
-#ifdef GL_SUN_triangle_list
-
-static GLboolean _glewInit_GL_SUN_triangle_list (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glReplacementCodePointerSUN = (PFNGLREPLACEMENTCODEPOINTERSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodePointerSUN")) == NULL) || r;
-  r = ((glReplacementCodeubSUN = (PFNGLREPLACEMENTCODEUBSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeubSUN")) == NULL) || r;
-  r = ((glReplacementCodeubvSUN = (PFNGLREPLACEMENTCODEUBVSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeubvSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiSUN = (PFNGLREPLACEMENTCODEUISUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiSUN")) == NULL) || r;
-  r = ((glReplacementCodeuivSUN = (PFNGLREPLACEMENTCODEUIVSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuivSUN")) == NULL) || r;
-  r = ((glReplacementCodeusSUN = (PFNGLREPLACEMENTCODEUSSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeusSUN")) == NULL) || r;
-  r = ((glReplacementCodeusvSUN = (PFNGLREPLACEMENTCODEUSVSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeusvSUN")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SUN_triangle_list */
-
-#ifdef GL_SUN_vertex
-
-static GLboolean _glewInit_GL_SUN_vertex (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glColor3fVertex3fSUN = (PFNGLCOLOR3FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glColor3fVertex3fSUN")) == NULL) || r;
-  r = ((glColor3fVertex3fvSUN = (PFNGLCOLOR3FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glColor3fVertex3fvSUN")) == NULL) || r;
-  r = ((glColor4fNormal3fVertex3fSUN = (PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glColor4fNormal3fVertex3fSUN")) == NULL) || r;
-  r = ((glColor4fNormal3fVertex3fvSUN = (PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glColor4fNormal3fVertex3fvSUN")) == NULL) || r;
-  r = ((glColor4ubVertex2fSUN = (PFNGLCOLOR4UBVERTEX2FSUNPROC)glewGetProcAddress((const GLubyte*)"glColor4ubVertex2fSUN")) == NULL) || r;
-  r = ((glColor4ubVertex2fvSUN = (PFNGLCOLOR4UBVERTEX2FVSUNPROC)glewGetProcAddress((const GLubyte*)"glColor4ubVertex2fvSUN")) == NULL) || r;
-  r = ((glColor4ubVertex3fSUN = (PFNGLCOLOR4UBVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glColor4ubVertex3fSUN")) == NULL) || r;
-  r = ((glColor4ubVertex3fvSUN = (PFNGLCOLOR4UBVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glColor4ubVertex3fvSUN")) == NULL) || r;
-  r = ((glNormal3fVertex3fSUN = (PFNGLNORMAL3FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glNormal3fVertex3fSUN")) == NULL) || r;
-  r = ((glNormal3fVertex3fvSUN = (PFNGLNORMAL3FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glNormal3fVertex3fvSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiColor3fVertex3fSUN = (PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiColor3fVertex3fSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiColor3fVertex3fvSUN = (PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiColor3fVertex3fvSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiColor4fNormal3fVertex3fSUN = (PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiColor4fNormal3fVertex3fSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiColor4fNormal3fVertex3fvSUN = (PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiColor4fNormal3fVertex3fvSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiColor4ubVertex3fSUN = (PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiColor4ubVertex3fSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiColor4ubVertex3fvSUN = (PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiColor4ubVertex3fvSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiNormal3fVertex3fSUN = (PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiNormal3fVertex3fSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiNormal3fVertex3fvSUN = (PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiNormal3fVertex3fvSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN = (PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN = (PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN = (PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN = (PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiTexCoord2fVertex3fSUN = (PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiTexCoord2fVertex3fSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiTexCoord2fVertex3fvSUN = (PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiTexCoord2fVertex3fvSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiVertex3fSUN = (PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiVertex3fSUN")) == NULL) || r;
-  r = ((glReplacementCodeuiVertex3fvSUN = (PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glReplacementCodeuiVertex3fvSUN")) == NULL) || r;
-  r = ((glTexCoord2fColor3fVertex3fSUN = (PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord2fColor3fVertex3fSUN")) == NULL) || r;
-  r = ((glTexCoord2fColor3fVertex3fvSUN = (PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord2fColor3fVertex3fvSUN")) == NULL) || r;
-  r = ((glTexCoord2fColor4fNormal3fVertex3fSUN = (PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord2fColor4fNormal3fVertex3fSUN")) == NULL) || r;
-  r = ((glTexCoord2fColor4fNormal3fVertex3fvSUN = (PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord2fColor4fNormal3fVertex3fvSUN")) == NULL) || r;
-  r = ((glTexCoord2fColor4ubVertex3fSUN = (PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord2fColor4ubVertex3fSUN")) == NULL) || r;
-  r = ((glTexCoord2fColor4ubVertex3fvSUN = (PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord2fColor4ubVertex3fvSUN")) == NULL) || r;
-  r = ((glTexCoord2fNormal3fVertex3fSUN = (PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord2fNormal3fVertex3fSUN")) == NULL) || r;
-  r = ((glTexCoord2fNormal3fVertex3fvSUN = (PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord2fNormal3fVertex3fvSUN")) == NULL) || r;
-  r = ((glTexCoord2fVertex3fSUN = (PFNGLTEXCOORD2FVERTEX3FSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord2fVertex3fSUN")) == NULL) || r;
-  r = ((glTexCoord2fVertex3fvSUN = (PFNGLTEXCOORD2FVERTEX3FVSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord2fVertex3fvSUN")) == NULL) || r;
-  r = ((glTexCoord4fColor4fNormal3fVertex4fSUN = (PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord4fColor4fNormal3fVertex4fSUN")) == NULL) || r;
-  r = ((glTexCoord4fColor4fNormal3fVertex4fvSUN = (PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord4fColor4fNormal3fVertex4fvSUN")) == NULL) || r;
-  r = ((glTexCoord4fVertex4fSUN = (PFNGLTEXCOORD4FVERTEX4FSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord4fVertex4fSUN")) == NULL) || r;
-  r = ((glTexCoord4fVertex4fvSUN = (PFNGLTEXCOORD4FVERTEX4FVSUNPROC)glewGetProcAddress((const GLubyte*)"glTexCoord4fVertex4fvSUN")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_SUN_vertex */
-
-#ifdef GL_WIN_phong_shading
-
-#endif /* GL_WIN_phong_shading */
-
-#ifdef GL_WIN_specular_fog
-
-#endif /* GL_WIN_specular_fog */
-
-#ifdef GL_WIN_swap_hint
-
-static GLboolean _glewInit_GL_WIN_swap_hint (GLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glAddSwapHintRectWIN = (PFNGLADDSWAPHINTRECTWINPROC)glewGetProcAddress((const GLubyte*)"glAddSwapHintRectWIN")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GL_WIN_swap_hint */
-
-/* ------------------------------------------------------------------------- */
-
-/* 
- * Search for name in the extensions string. Use of strstr()
- * is not sufficient because extension names can be prefixes of
- * other extension names. Could use strtok() but the constant
- * string returned by glGetString might be in read-only memory.
- */
-GLboolean glewGetExtension (const char* name)
-{    
-  GLubyte* p;
-  GLubyte* end;
-  GLuint len = _glewStrLen((const GLubyte*)name);
-  p = (GLubyte*)glGetString(GL_EXTENSIONS);
-  if (0 == p) return GL_FALSE;
-  end = p + _glewStrLen(p);
-  while (p < end)
-  {
-    GLuint n = _glewStrCLen(p, ' ');
-    if (len == n && _glewStrSame((const GLubyte*)name, p, n)) return GL_TRUE;
-    p += n+1;
-  }
-  return GL_FALSE;
-}
-
-/* ------------------------------------------------------------------------- */
-
-#ifndef GLEW_MX
-static
-#endif
-GLenum glewContextInit (GLEW_CONTEXT_ARG_DEF_LIST)
-{
-  const GLubyte* s;
-  GLuint dot;
-  GLint major, minor;
-  /* query opengl version */
-  s = glGetString(GL_VERSION);
-  dot = _glewStrCLen(s, '.');
-  if (dot == 0)
-    return GLEW_ERROR_NO_GL_VERSION;
-  
-  major = s[dot-1]-'0';
-  minor = s[dot+1]-'0';
-
-  if (minor < 0 || minor > 9)
-    minor = 0;
-  if (major<0 || major>9)
-    return GLEW_ERROR_NO_GL_VERSION;
-  
-
-  if (major == 1 && minor == 0)
-  {
-    return GLEW_ERROR_GL_VERSION_10_ONLY;
-  }
-  else
-  {
-    CONST_CAST(GLEW_VERSION_4_0) = ( major > 4 )               || ( major == 4               ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_3_3) = GLEW_VERSION_4_0 == GL_TRUE || ( major == 3 && minor >= 3 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_3_2) = GLEW_VERSION_3_3 == GL_TRUE || ( major == 3 && minor >= 2 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_3_1) = GLEW_VERSION_3_2 == GL_TRUE || ( major == 3 && minor >= 1 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_3_0) = GLEW_VERSION_3_1 == GL_TRUE || ( major == 3               ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_2_1) = GLEW_VERSION_3_0 == GL_TRUE || ( major == 2 && minor >= 1 ) ? GL_TRUE : GL_FALSE;    
-    CONST_CAST(GLEW_VERSION_2_0) = GLEW_VERSION_2_1 == GL_TRUE || ( major == 2               ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_1_5) = GLEW_VERSION_2_0 == GL_TRUE || ( major == 1 && minor >= 5 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_1_4) = GLEW_VERSION_1_5 == GL_TRUE || ( major == 1 && minor >= 4 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_1_3) = GLEW_VERSION_1_4 == GL_TRUE || ( major == 1 && minor >= 3 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_1_2) = GLEW_VERSION_1_3 == GL_TRUE || ( major == 1 && minor >= 2 ) ? GL_TRUE : GL_FALSE;
-    CONST_CAST(GLEW_VERSION_1_1) = GLEW_VERSION_1_2 == GL_TRUE || ( major == 1 && minor >= 1 ) ? GL_TRUE : GL_FALSE;
-  }
-  /* initialize extensions */
-#ifdef GL_VERSION_1_2
-  if (glewExperimental || GLEW_VERSION_1_2) CONST_CAST(GLEW_VERSION_1_2) = !_glewInit_GL_VERSION_1_2(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_VERSION_1_2 */
-#ifdef GL_VERSION_1_3
-  if (glewExperimental || GLEW_VERSION_1_3) CONST_CAST(GLEW_VERSION_1_3) = !_glewInit_GL_VERSION_1_3(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_VERSION_1_3 */
-#ifdef GL_VERSION_1_4
-  if (glewExperimental || GLEW_VERSION_1_4) CONST_CAST(GLEW_VERSION_1_4) = !_glewInit_GL_VERSION_1_4(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_VERSION_1_4 */
-#ifdef GL_VERSION_1_5
-  if (glewExperimental || GLEW_VERSION_1_5) CONST_CAST(GLEW_VERSION_1_5) = !_glewInit_GL_VERSION_1_5(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_VERSION_1_5 */
-#ifdef GL_VERSION_2_0
-  if (glewExperimental || GLEW_VERSION_2_0) CONST_CAST(GLEW_VERSION_2_0) = !_glewInit_GL_VERSION_2_0(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_VERSION_2_0 */
-#ifdef GL_VERSION_2_1
-  if (glewExperimental || GLEW_VERSION_2_1) CONST_CAST(GLEW_VERSION_2_1) = !_glewInit_GL_VERSION_2_1(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_VERSION_2_1 */
-#ifdef GL_VERSION_3_0
-  if (glewExperimental || GLEW_VERSION_3_0) CONST_CAST(GLEW_VERSION_3_0) = !_glewInit_GL_VERSION_3_0(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_VERSION_3_0 */
-#ifdef GL_VERSION_3_1
-  if (glewExperimental || GLEW_VERSION_3_1) CONST_CAST(GLEW_VERSION_3_1) = !_glewInit_GL_VERSION_3_1(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_VERSION_3_1 */
-#ifdef GL_VERSION_3_2
-  if (glewExperimental || GLEW_VERSION_3_2) CONST_CAST(GLEW_VERSION_3_2) = !_glewInit_GL_VERSION_3_2(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_VERSION_3_2 */
-#ifdef GL_VERSION_3_3
-#endif /* GL_VERSION_3_3 */
-#ifdef GL_VERSION_4_0
-  if (glewExperimental || GLEW_VERSION_4_0) CONST_CAST(GLEW_VERSION_4_0) = !_glewInit_GL_VERSION_4_0(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_VERSION_4_0 */
-#ifdef GL_3DFX_multisample
-  CONST_CAST(GLEW_3DFX_multisample) = glewGetExtension("GL_3DFX_multisample");
-#endif /* GL_3DFX_multisample */
-#ifdef GL_3DFX_tbuffer
-  CONST_CAST(GLEW_3DFX_tbuffer) = glewGetExtension("GL_3DFX_tbuffer");
-  if (glewExperimental || GLEW_3DFX_tbuffer) CONST_CAST(GLEW_3DFX_tbuffer) = !_glewInit_GL_3DFX_tbuffer(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_3DFX_tbuffer */
-#ifdef GL_3DFX_texture_compression_FXT1
-  CONST_CAST(GLEW_3DFX_texture_compression_FXT1) = glewGetExtension("GL_3DFX_texture_compression_FXT1");
-#endif /* GL_3DFX_texture_compression_FXT1 */
-#ifdef GL_AMD_conservative_depth
-  CONST_CAST(GLEW_AMD_conservative_depth) = glewGetExtension("GL_AMD_conservative_depth");
-#endif /* GL_AMD_conservative_depth */
-#ifdef GL_AMD_draw_buffers_blend
-  CONST_CAST(GLEW_AMD_draw_buffers_blend) = glewGetExtension("GL_AMD_draw_buffers_blend");
-  if (glewExperimental || GLEW_AMD_draw_buffers_blend) CONST_CAST(GLEW_AMD_draw_buffers_blend) = !_glewInit_GL_AMD_draw_buffers_blend(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_AMD_draw_buffers_blend */
-#ifdef GL_AMD_performance_monitor
-  CONST_CAST(GLEW_AMD_performance_monitor) = glewGetExtension("GL_AMD_performance_monitor");
-  if (glewExperimental || GLEW_AMD_performance_monitor) CONST_CAST(GLEW_AMD_performance_monitor) = !_glewInit_GL_AMD_performance_monitor(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_AMD_performance_monitor */
-#ifdef GL_AMD_seamless_cubemap_per_texture
-  CONST_CAST(GLEW_AMD_seamless_cubemap_per_texture) = glewGetExtension("GL_AMD_seamless_cubemap_per_texture");
-#endif /* GL_AMD_seamless_cubemap_per_texture */
-#ifdef GL_AMD_shader_stencil_export
-  CONST_CAST(GLEW_AMD_shader_stencil_export) = glewGetExtension("GL_AMD_shader_stencil_export");
-#endif /* GL_AMD_shader_stencil_export */
-#ifdef GL_AMD_texture_texture4
-  CONST_CAST(GLEW_AMD_texture_texture4) = glewGetExtension("GL_AMD_texture_texture4");
-#endif /* GL_AMD_texture_texture4 */
-#ifdef GL_AMD_vertex_shader_tessellator
-  CONST_CAST(GLEW_AMD_vertex_shader_tessellator) = glewGetExtension("GL_AMD_vertex_shader_tessellator");
-  if (glewExperimental || GLEW_AMD_vertex_shader_tessellator) CONST_CAST(GLEW_AMD_vertex_shader_tessellator) = !_glewInit_GL_AMD_vertex_shader_tessellator(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_AMD_vertex_shader_tessellator */
-#ifdef GL_APPLE_aux_depth_stencil
-  CONST_CAST(GLEW_APPLE_aux_depth_stencil) = glewGetExtension("GL_APPLE_aux_depth_stencil");
-#endif /* GL_APPLE_aux_depth_stencil */
-#ifdef GL_APPLE_client_storage
-  CONST_CAST(GLEW_APPLE_client_storage) = glewGetExtension("GL_APPLE_client_storage");
-#endif /* GL_APPLE_client_storage */
-#ifdef GL_APPLE_element_array
-  CONST_CAST(GLEW_APPLE_element_array) = glewGetExtension("GL_APPLE_element_array");
-  if (glewExperimental || GLEW_APPLE_element_array) CONST_CAST(GLEW_APPLE_element_array) = !_glewInit_GL_APPLE_element_array(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_APPLE_element_array */
-#ifdef GL_APPLE_fence
-  CONST_CAST(GLEW_APPLE_fence) = glewGetExtension("GL_APPLE_fence");
-  if (glewExperimental || GLEW_APPLE_fence) CONST_CAST(GLEW_APPLE_fence) = !_glewInit_GL_APPLE_fence(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_APPLE_fence */
-#ifdef GL_APPLE_float_pixels
-  CONST_CAST(GLEW_APPLE_float_pixels) = glewGetExtension("GL_APPLE_float_pixels");
-#endif /* GL_APPLE_float_pixels */
-#ifdef GL_APPLE_flush_buffer_range
-  CONST_CAST(GLEW_APPLE_flush_buffer_range) = glewGetExtension("GL_APPLE_flush_buffer_range");
-  if (glewExperimental || GLEW_APPLE_flush_buffer_range) CONST_CAST(GLEW_APPLE_flush_buffer_range) = !_glewInit_GL_APPLE_flush_buffer_range(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_APPLE_flush_buffer_range */
-#ifdef GL_APPLE_object_purgeable
-  CONST_CAST(GLEW_APPLE_object_purgeable) = glewGetExtension("GL_APPLE_object_purgeable");
-  if (glewExperimental || GLEW_APPLE_object_purgeable) CONST_CAST(GLEW_APPLE_object_purgeable) = !_glewInit_GL_APPLE_object_purgeable(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_APPLE_object_purgeable */
-#ifdef GL_APPLE_pixel_buffer
-  CONST_CAST(GLEW_APPLE_pixel_buffer) = glewGetExtension("GL_APPLE_pixel_buffer");
-#endif /* GL_APPLE_pixel_buffer */
-#ifdef GL_APPLE_rgb_422
-  CONST_CAST(GLEW_APPLE_rgb_422) = glewGetExtension("GL_APPLE_rgb_422");
-#endif /* GL_APPLE_rgb_422 */
-#ifdef GL_APPLE_row_bytes
-  CONST_CAST(GLEW_APPLE_row_bytes) = glewGetExtension("GL_APPLE_row_bytes");
-#endif /* GL_APPLE_row_bytes */
-#ifdef GL_APPLE_specular_vector
-  CONST_CAST(GLEW_APPLE_specular_vector) = glewGetExtension("GL_APPLE_specular_vector");
-#endif /* GL_APPLE_specular_vector */
-#ifdef GL_APPLE_texture_range
-  CONST_CAST(GLEW_APPLE_texture_range) = glewGetExtension("GL_APPLE_texture_range");
-  if (glewExperimental || GLEW_APPLE_texture_range) CONST_CAST(GLEW_APPLE_texture_range) = !_glewInit_GL_APPLE_texture_range(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_APPLE_texture_range */
-#ifdef GL_APPLE_transform_hint
-  CONST_CAST(GLEW_APPLE_transform_hint) = glewGetExtension("GL_APPLE_transform_hint");
-#endif /* GL_APPLE_transform_hint */
-#ifdef GL_APPLE_vertex_array_object
-  CONST_CAST(GLEW_APPLE_vertex_array_object) = glewGetExtension("GL_APPLE_vertex_array_object");
-  if (glewExperimental || GLEW_APPLE_vertex_array_object) CONST_CAST(GLEW_APPLE_vertex_array_object) = !_glewInit_GL_APPLE_vertex_array_object(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_APPLE_vertex_array_object */
-#ifdef GL_APPLE_vertex_array_range
-  CONST_CAST(GLEW_APPLE_vertex_array_range) = glewGetExtension("GL_APPLE_vertex_array_range");
-  if (glewExperimental || GLEW_APPLE_vertex_array_range) CONST_CAST(GLEW_APPLE_vertex_array_range) = !_glewInit_GL_APPLE_vertex_array_range(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_APPLE_vertex_array_range */
-#ifdef GL_APPLE_vertex_program_evaluators
-  CONST_CAST(GLEW_APPLE_vertex_program_evaluators) = glewGetExtension("GL_APPLE_vertex_program_evaluators");
-  if (glewExperimental || GLEW_APPLE_vertex_program_evaluators) CONST_CAST(GLEW_APPLE_vertex_program_evaluators) = !_glewInit_GL_APPLE_vertex_program_evaluators(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_APPLE_vertex_program_evaluators */
-#ifdef GL_APPLE_ycbcr_422
-  CONST_CAST(GLEW_APPLE_ycbcr_422) = glewGetExtension("GL_APPLE_ycbcr_422");
-#endif /* GL_APPLE_ycbcr_422 */
-#ifdef GL_ARB_blend_func_extended
-  CONST_CAST(GLEW_ARB_blend_func_extended) = glewGetExtension("GL_ARB_blend_func_extended");
-  if (glewExperimental || GLEW_ARB_blend_func_extended) CONST_CAST(GLEW_ARB_blend_func_extended) = !_glewInit_GL_ARB_blend_func_extended(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_blend_func_extended */
-#ifdef GL_ARB_color_buffer_float
-  CONST_CAST(GLEW_ARB_color_buffer_float) = glewGetExtension("GL_ARB_color_buffer_float");
-  if (glewExperimental || GLEW_ARB_color_buffer_float) CONST_CAST(GLEW_ARB_color_buffer_float) = !_glewInit_GL_ARB_color_buffer_float(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_color_buffer_float */
-#ifdef GL_ARB_compatibility
-  CONST_CAST(GLEW_ARB_compatibility) = glewGetExtension("GL_ARB_compatibility");
-#endif /* GL_ARB_compatibility */
-#ifdef GL_ARB_copy_buffer
-  CONST_CAST(GLEW_ARB_copy_buffer) = glewGetExtension("GL_ARB_copy_buffer");
-  if (glewExperimental || GLEW_ARB_copy_buffer) CONST_CAST(GLEW_ARB_copy_buffer) = !_glewInit_GL_ARB_copy_buffer(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_copy_buffer */
-#ifdef GL_ARB_depth_buffer_float
-  CONST_CAST(GLEW_ARB_depth_buffer_float) = glewGetExtension("GL_ARB_depth_buffer_float");
-#endif /* GL_ARB_depth_buffer_float */
-#ifdef GL_ARB_depth_clamp
-  CONST_CAST(GLEW_ARB_depth_clamp) = glewGetExtension("GL_ARB_depth_clamp");
-#endif /* GL_ARB_depth_clamp */
-#ifdef GL_ARB_depth_texture
-  CONST_CAST(GLEW_ARB_depth_texture) = glewGetExtension("GL_ARB_depth_texture");
-#endif /* GL_ARB_depth_texture */
-#ifdef GL_ARB_draw_buffers
-  CONST_CAST(GLEW_ARB_draw_buffers) = glewGetExtension("GL_ARB_draw_buffers");
-  if (glewExperimental || GLEW_ARB_draw_buffers) CONST_CAST(GLEW_ARB_draw_buffers) = !_glewInit_GL_ARB_draw_buffers(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_draw_buffers */
-#ifdef GL_ARB_draw_buffers_blend
-  CONST_CAST(GLEW_ARB_draw_buffers_blend) = glewGetExtension("GL_ARB_draw_buffers_blend");
-  if (glewExperimental || GLEW_ARB_draw_buffers_blend) CONST_CAST(GLEW_ARB_draw_buffers_blend) = !_glewInit_GL_ARB_draw_buffers_blend(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_draw_buffers_blend */
-#ifdef GL_ARB_draw_elements_base_vertex
-  CONST_CAST(GLEW_ARB_draw_elements_base_vertex) = glewGetExtension("GL_ARB_draw_elements_base_vertex");
-  if (glewExperimental || GLEW_ARB_draw_elements_base_vertex) CONST_CAST(GLEW_ARB_draw_elements_base_vertex) = !_glewInit_GL_ARB_draw_elements_base_vertex(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_draw_elements_base_vertex */
-#ifdef GL_ARB_draw_indirect
-  CONST_CAST(GLEW_ARB_draw_indirect) = glewGetExtension("GL_ARB_draw_indirect");
-  if (glewExperimental || GLEW_ARB_draw_indirect) CONST_CAST(GLEW_ARB_draw_indirect) = !_glewInit_GL_ARB_draw_indirect(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_draw_indirect */
-#ifdef GL_ARB_draw_instanced
-  CONST_CAST(GLEW_ARB_draw_instanced) = glewGetExtension("GL_ARB_draw_instanced");
-  if (glewExperimental || GLEW_ARB_draw_instanced) CONST_CAST(GLEW_ARB_draw_instanced) = !_glewInit_GL_ARB_draw_instanced(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_draw_instanced */
-#ifdef GL_ARB_explicit_attrib_location
-  CONST_CAST(GLEW_ARB_explicit_attrib_location) = glewGetExtension("GL_ARB_explicit_attrib_location");
-#endif /* GL_ARB_explicit_attrib_location */
-#ifdef GL_ARB_fragment_coord_conventions
-  CONST_CAST(GLEW_ARB_fragment_coord_conventions) = glewGetExtension("GL_ARB_fragment_coord_conventions");
-#endif /* GL_ARB_fragment_coord_conventions */
-#ifdef GL_ARB_fragment_program
-  CONST_CAST(GLEW_ARB_fragment_program) = glewGetExtension("GL_ARB_fragment_program");
-#endif /* GL_ARB_fragment_program */
-#ifdef GL_ARB_fragment_program_shadow
-  CONST_CAST(GLEW_ARB_fragment_program_shadow) = glewGetExtension("GL_ARB_fragment_program_shadow");
-#endif /* GL_ARB_fragment_program_shadow */
-#ifdef GL_ARB_fragment_shader
-  CONST_CAST(GLEW_ARB_fragment_shader) = glewGetExtension("GL_ARB_fragment_shader");
-#endif /* GL_ARB_fragment_shader */
-#ifdef GL_ARB_framebuffer_object
-  CONST_CAST(GLEW_ARB_framebuffer_object) = glewGetExtension("GL_ARB_framebuffer_object");
-  if (glewExperimental || GLEW_ARB_framebuffer_object) CONST_CAST(GLEW_ARB_framebuffer_object) = !_glewInit_GL_ARB_framebuffer_object(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_framebuffer_object */
-#ifdef GL_ARB_framebuffer_sRGB
-  CONST_CAST(GLEW_ARB_framebuffer_sRGB) = glewGetExtension("GL_ARB_framebuffer_sRGB");
-#endif /* GL_ARB_framebuffer_sRGB */
-#ifdef GL_ARB_geometry_shader4
-  CONST_CAST(GLEW_ARB_geometry_shader4) = glewGetExtension("GL_ARB_geometry_shader4");
-  if (glewExperimental || GLEW_ARB_geometry_shader4) CONST_CAST(GLEW_ARB_geometry_shader4) = !_glewInit_GL_ARB_geometry_shader4(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_geometry_shader4 */
-#ifdef GL_ARB_gpu_shader5
-  CONST_CAST(GLEW_ARB_gpu_shader5) = glewGetExtension("GL_ARB_gpu_shader5");
-#endif /* GL_ARB_gpu_shader5 */
-#ifdef GL_ARB_gpu_shader_fp64
-  CONST_CAST(GLEW_ARB_gpu_shader_fp64) = glewGetExtension("GL_ARB_gpu_shader_fp64");
-#endif /* GL_ARB_gpu_shader_fp64 */
-#ifdef GL_ARB_half_float_pixel
-  CONST_CAST(GLEW_ARB_half_float_pixel) = glewGetExtension("GL_ARB_half_float_pixel");
-#endif /* GL_ARB_half_float_pixel */
-#ifdef GL_ARB_half_float_vertex
-  CONST_CAST(GLEW_ARB_half_float_vertex) = glewGetExtension("GL_ARB_half_float_vertex");
-#endif /* GL_ARB_half_float_vertex */
-#ifdef GL_ARB_imaging
-  CONST_CAST(GLEW_ARB_imaging) = glewGetExtension("GL_ARB_imaging");
-  if (glewExperimental || GLEW_ARB_imaging) CONST_CAST(GLEW_ARB_imaging) = !_glewInit_GL_ARB_imaging(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_imaging */
-#ifdef GL_ARB_instanced_arrays
-  CONST_CAST(GLEW_ARB_instanced_arrays) = glewGetExtension("GL_ARB_instanced_arrays");
-  if (glewExperimental || GLEW_ARB_instanced_arrays) CONST_CAST(GLEW_ARB_instanced_arrays) = !_glewInit_GL_ARB_instanced_arrays(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_instanced_arrays */
-#ifdef GL_ARB_map_buffer_range
-  CONST_CAST(GLEW_ARB_map_buffer_range) = glewGetExtension("GL_ARB_map_buffer_range");
-  if (glewExperimental || GLEW_ARB_map_buffer_range) CONST_CAST(GLEW_ARB_map_buffer_range) = !_glewInit_GL_ARB_map_buffer_range(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_map_buffer_range */
-#ifdef GL_ARB_matrix_palette
-  CONST_CAST(GLEW_ARB_matrix_palette) = glewGetExtension("GL_ARB_matrix_palette");
-  if (glewExperimental || GLEW_ARB_matrix_palette) CONST_CAST(GLEW_ARB_matrix_palette) = !_glewInit_GL_ARB_matrix_palette(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_matrix_palette */
-#ifdef GL_ARB_multisample
-  CONST_CAST(GLEW_ARB_multisample) = glewGetExtension("GL_ARB_multisample");
-  if (glewExperimental || GLEW_ARB_multisample) CONST_CAST(GLEW_ARB_multisample) = !_glewInit_GL_ARB_multisample(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_multisample */
-#ifdef GL_ARB_multitexture
-  CONST_CAST(GLEW_ARB_multitexture) = glewGetExtension("GL_ARB_multitexture");
-  if (glewExperimental || GLEW_ARB_multitexture) CONST_CAST(GLEW_ARB_multitexture) = !_glewInit_GL_ARB_multitexture(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_multitexture */
-#ifdef GL_ARB_occlusion_query
-  CONST_CAST(GLEW_ARB_occlusion_query) = glewGetExtension("GL_ARB_occlusion_query");
-  if (glewExperimental || GLEW_ARB_occlusion_query) CONST_CAST(GLEW_ARB_occlusion_query) = !_glewInit_GL_ARB_occlusion_query(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_occlusion_query */
-#ifdef GL_ARB_occlusion_query2
-  CONST_CAST(GLEW_ARB_occlusion_query2) = glewGetExtension("GL_ARB_occlusion_query2");
-#endif /* GL_ARB_occlusion_query2 */
-#ifdef GL_ARB_pixel_buffer_object
-  CONST_CAST(GLEW_ARB_pixel_buffer_object) = glewGetExtension("GL_ARB_pixel_buffer_object");
-#endif /* GL_ARB_pixel_buffer_object */
-#ifdef GL_ARB_point_parameters
-  CONST_CAST(GLEW_ARB_point_parameters) = glewGetExtension("GL_ARB_point_parameters");
-  if (glewExperimental || GLEW_ARB_point_parameters) CONST_CAST(GLEW_ARB_point_parameters) = !_glewInit_GL_ARB_point_parameters(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_point_parameters */
-#ifdef GL_ARB_point_sprite
-  CONST_CAST(GLEW_ARB_point_sprite) = glewGetExtension("GL_ARB_point_sprite");
-#endif /* GL_ARB_point_sprite */
-#ifdef GL_ARB_provoking_vertex
-  CONST_CAST(GLEW_ARB_provoking_vertex) = glewGetExtension("GL_ARB_provoking_vertex");
-  if (glewExperimental || GLEW_ARB_provoking_vertex) CONST_CAST(GLEW_ARB_provoking_vertex) = !_glewInit_GL_ARB_provoking_vertex(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_provoking_vertex */
-#ifdef GL_ARB_sample_shading
-  CONST_CAST(GLEW_ARB_sample_shading) = glewGetExtension("GL_ARB_sample_shading");
-  if (glewExperimental || GLEW_ARB_sample_shading) CONST_CAST(GLEW_ARB_sample_shading) = !_glewInit_GL_ARB_sample_shading(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_sample_shading */
-#ifdef GL_ARB_sampler_objects
-  CONST_CAST(GLEW_ARB_sampler_objects) = glewGetExtension("GL_ARB_sampler_objects");
-  if (glewExperimental || GLEW_ARB_sampler_objects) CONST_CAST(GLEW_ARB_sampler_objects) = !_glewInit_GL_ARB_sampler_objects(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_sampler_objects */
-#ifdef GL_ARB_seamless_cube_map
-  CONST_CAST(GLEW_ARB_seamless_cube_map) = glewGetExtension("GL_ARB_seamless_cube_map");
-#endif /* GL_ARB_seamless_cube_map */
-#ifdef GL_ARB_shader_bit_encoding
-  CONST_CAST(GLEW_ARB_shader_bit_encoding) = glewGetExtension("GL_ARB_shader_bit_encoding");
-#endif /* GL_ARB_shader_bit_encoding */
-#ifdef GL_ARB_shader_objects
-  CONST_CAST(GLEW_ARB_shader_objects) = glewGetExtension("GL_ARB_shader_objects");
-  if (glewExperimental || GLEW_ARB_shader_objects) CONST_CAST(GLEW_ARB_shader_objects) = !_glewInit_GL_ARB_shader_objects(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_shader_objects */
-#ifdef GL_ARB_shader_subroutine
-  CONST_CAST(GLEW_ARB_shader_subroutine) = glewGetExtension("GL_ARB_shader_subroutine");
-  if (glewExperimental || GLEW_ARB_shader_subroutine) CONST_CAST(GLEW_ARB_shader_subroutine) = !_glewInit_GL_ARB_shader_subroutine(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_shader_subroutine */
-#ifdef GL_ARB_shader_texture_lod
-  CONST_CAST(GLEW_ARB_shader_texture_lod) = glewGetExtension("GL_ARB_shader_texture_lod");
-#endif /* GL_ARB_shader_texture_lod */
-#ifdef GL_ARB_shading_language_100
-  CONST_CAST(GLEW_ARB_shading_language_100) = glewGetExtension("GL_ARB_shading_language_100");
-#endif /* GL_ARB_shading_language_100 */
-#ifdef GL_ARB_shading_language_include
-  CONST_CAST(GLEW_ARB_shading_language_include) = glewGetExtension("GL_ARB_shading_language_include");
-  if (glewExperimental || GLEW_ARB_shading_language_include) CONST_CAST(GLEW_ARB_shading_language_include) = !_glewInit_GL_ARB_shading_language_include(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_shading_language_include */
-#ifdef GL_ARB_shadow
-  CONST_CAST(GLEW_ARB_shadow) = glewGetExtension("GL_ARB_shadow");
-#endif /* GL_ARB_shadow */
-#ifdef GL_ARB_shadow_ambient
-  CONST_CAST(GLEW_ARB_shadow_ambient) = glewGetExtension("GL_ARB_shadow_ambient");
-#endif /* GL_ARB_shadow_ambient */
-#ifdef GL_ARB_sync
-  CONST_CAST(GLEW_ARB_sync) = glewGetExtension("GL_ARB_sync");
-  if (glewExperimental || GLEW_ARB_sync) CONST_CAST(GLEW_ARB_sync) = !_glewInit_GL_ARB_sync(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_sync */
-#ifdef GL_ARB_tessellation_shader
-  CONST_CAST(GLEW_ARB_tessellation_shader) = glewGetExtension("GL_ARB_tessellation_shader");
-  if (glewExperimental || GLEW_ARB_tessellation_shader) CONST_CAST(GLEW_ARB_tessellation_shader) = !_glewInit_GL_ARB_tessellation_shader(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_tessellation_shader */
-#ifdef GL_ARB_texture_border_clamp
-  CONST_CAST(GLEW_ARB_texture_border_clamp) = glewGetExtension("GL_ARB_texture_border_clamp");
-#endif /* GL_ARB_texture_border_clamp */
-#ifdef GL_ARB_texture_buffer_object
-  CONST_CAST(GLEW_ARB_texture_buffer_object) = glewGetExtension("GL_ARB_texture_buffer_object");
-  if (glewExperimental || GLEW_ARB_texture_buffer_object) CONST_CAST(GLEW_ARB_texture_buffer_object) = !_glewInit_GL_ARB_texture_buffer_object(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_texture_buffer_object */
-#ifdef GL_ARB_texture_buffer_object_rgb32
-  CONST_CAST(GLEW_ARB_texture_buffer_object_rgb32) = glewGetExtension("GL_ARB_texture_buffer_object_rgb32");
-#endif /* GL_ARB_texture_buffer_object_rgb32 */
-#ifdef GL_ARB_texture_compression
-  CONST_CAST(GLEW_ARB_texture_compression) = glewGetExtension("GL_ARB_texture_compression");
-  if (glewExperimental || GLEW_ARB_texture_compression) CONST_CAST(GLEW_ARB_texture_compression) = !_glewInit_GL_ARB_texture_compression(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_texture_compression */
-#ifdef GL_ARB_texture_compression_bptc
-  CONST_CAST(GLEW_ARB_texture_compression_bptc) = glewGetExtension("GL_ARB_texture_compression_bptc");
-#endif /* GL_ARB_texture_compression_bptc */
-#ifdef GL_ARB_texture_compression_rgtc
-  CONST_CAST(GLEW_ARB_texture_compression_rgtc) = glewGetExtension("GL_ARB_texture_compression_rgtc");
-#endif /* GL_ARB_texture_compression_rgtc */
-#ifdef GL_ARB_texture_cube_map
-  CONST_CAST(GLEW_ARB_texture_cube_map) = glewGetExtension("GL_ARB_texture_cube_map");
-#endif /* GL_ARB_texture_cube_map */
-#ifdef GL_ARB_texture_cube_map_array
-  CONST_CAST(GLEW_ARB_texture_cube_map_array) = glewGetExtension("GL_ARB_texture_cube_map_array");
-#endif /* GL_ARB_texture_cube_map_array */
-#ifdef GL_ARB_texture_env_add
-  CONST_CAST(GLEW_ARB_texture_env_add) = glewGetExtension("GL_ARB_texture_env_add");
-#endif /* GL_ARB_texture_env_add */
-#ifdef GL_ARB_texture_env_combine
-  CONST_CAST(GLEW_ARB_texture_env_combine) = glewGetExtension("GL_ARB_texture_env_combine");
-#endif /* GL_ARB_texture_env_combine */
-#ifdef GL_ARB_texture_env_crossbar
-  CONST_CAST(GLEW_ARB_texture_env_crossbar) = glewGetExtension("GL_ARB_texture_env_crossbar");
-#endif /* GL_ARB_texture_env_crossbar */
-#ifdef GL_ARB_texture_env_dot3
-  CONST_CAST(GLEW_ARB_texture_env_dot3) = glewGetExtension("GL_ARB_texture_env_dot3");
-#endif /* GL_ARB_texture_env_dot3 */
-#ifdef GL_ARB_texture_float
-  CONST_CAST(GLEW_ARB_texture_float) = glewGetExtension("GL_ARB_texture_float");
-#endif /* GL_ARB_texture_float */
-#ifdef GL_ARB_texture_gather
-  CONST_CAST(GLEW_ARB_texture_gather) = glewGetExtension("GL_ARB_texture_gather");
-#endif /* GL_ARB_texture_gather */
-#ifdef GL_ARB_texture_mirrored_repeat
-  CONST_CAST(GLEW_ARB_texture_mirrored_repeat) = glewGetExtension("GL_ARB_texture_mirrored_repeat");
-#endif /* GL_ARB_texture_mirrored_repeat */
-#ifdef GL_ARB_texture_multisample
-  CONST_CAST(GLEW_ARB_texture_multisample) = glewGetExtension("GL_ARB_texture_multisample");
-  if (glewExperimental || GLEW_ARB_texture_multisample) CONST_CAST(GLEW_ARB_texture_multisample) = !_glewInit_GL_ARB_texture_multisample(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_texture_multisample */
-#ifdef GL_ARB_texture_non_power_of_two
-  CONST_CAST(GLEW_ARB_texture_non_power_of_two) = glewGetExtension("GL_ARB_texture_non_power_of_two");
-#endif /* GL_ARB_texture_non_power_of_two */
-#ifdef GL_ARB_texture_query_lod
-  CONST_CAST(GLEW_ARB_texture_query_lod) = glewGetExtension("GL_ARB_texture_query_lod");
-#endif /* GL_ARB_texture_query_lod */
-#ifdef GL_ARB_texture_rectangle
-  CONST_CAST(GLEW_ARB_texture_rectangle) = glewGetExtension("GL_ARB_texture_rectangle");
-#endif /* GL_ARB_texture_rectangle */
-#ifdef GL_ARB_texture_rg
-  CONST_CAST(GLEW_ARB_texture_rg) = glewGetExtension("GL_ARB_texture_rg");
-#endif /* GL_ARB_texture_rg */
-#ifdef GL_ARB_texture_rgb10_a2ui
-  CONST_CAST(GLEW_ARB_texture_rgb10_a2ui) = glewGetExtension("GL_ARB_texture_rgb10_a2ui");
-#endif /* GL_ARB_texture_rgb10_a2ui */
-#ifdef GL_ARB_texture_swizzle
-  CONST_CAST(GLEW_ARB_texture_swizzle) = glewGetExtension("GL_ARB_texture_swizzle");
-#endif /* GL_ARB_texture_swizzle */
-#ifdef GL_ARB_timer_query
-  CONST_CAST(GLEW_ARB_timer_query) = glewGetExtension("GL_ARB_timer_query");
-  if (glewExperimental || GLEW_ARB_timer_query) CONST_CAST(GLEW_ARB_timer_query) = !_glewInit_GL_ARB_timer_query(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_timer_query */
-#ifdef GL_ARB_transform_feedback2
-  CONST_CAST(GLEW_ARB_transform_feedback2) = glewGetExtension("GL_ARB_transform_feedback2");
-  if (glewExperimental || GLEW_ARB_transform_feedback2) CONST_CAST(GLEW_ARB_transform_feedback2) = !_glewInit_GL_ARB_transform_feedback2(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_transform_feedback2 */
-#ifdef GL_ARB_transform_feedback3
-  CONST_CAST(GLEW_ARB_transform_feedback3) = glewGetExtension("GL_ARB_transform_feedback3");
-  if (glewExperimental || GLEW_ARB_transform_feedback3) CONST_CAST(GLEW_ARB_transform_feedback3) = !_glewInit_GL_ARB_transform_feedback3(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_transform_feedback3 */
-#ifdef GL_ARB_transpose_matrix
-  CONST_CAST(GLEW_ARB_transpose_matrix) = glewGetExtension("GL_ARB_transpose_matrix");
-  if (glewExperimental || GLEW_ARB_transpose_matrix) CONST_CAST(GLEW_ARB_transpose_matrix) = !_glewInit_GL_ARB_transpose_matrix(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_transpose_matrix */
-#ifdef GL_ARB_uniform_buffer_object
-  CONST_CAST(GLEW_ARB_uniform_buffer_object) = glewGetExtension("GL_ARB_uniform_buffer_object");
-  if (glewExperimental || GLEW_ARB_uniform_buffer_object) CONST_CAST(GLEW_ARB_uniform_buffer_object) = !_glewInit_GL_ARB_uniform_buffer_object(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_uniform_buffer_object */
-#ifdef GL_ARB_vertex_array_bgra
-  CONST_CAST(GLEW_ARB_vertex_array_bgra) = glewGetExtension("GL_ARB_vertex_array_bgra");
-#endif /* GL_ARB_vertex_array_bgra */
-#ifdef GL_ARB_vertex_array_object
-  CONST_CAST(GLEW_ARB_vertex_array_object) = glewGetExtension("GL_ARB_vertex_array_object");
-  if (glewExperimental || GLEW_ARB_vertex_array_object) CONST_CAST(GLEW_ARB_vertex_array_object) = !_glewInit_GL_ARB_vertex_array_object(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_vertex_array_object */
-#ifdef GL_ARB_vertex_blend
-  CONST_CAST(GLEW_ARB_vertex_blend) = glewGetExtension("GL_ARB_vertex_blend");
-  if (glewExperimental || GLEW_ARB_vertex_blend) CONST_CAST(GLEW_ARB_vertex_blend) = !_glewInit_GL_ARB_vertex_blend(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_vertex_blend */
-#ifdef GL_ARB_vertex_buffer_object
-  CONST_CAST(GLEW_ARB_vertex_buffer_object) = glewGetExtension("GL_ARB_vertex_buffer_object");
-  if (glewExperimental || GLEW_ARB_vertex_buffer_object) CONST_CAST(GLEW_ARB_vertex_buffer_object) = !_glewInit_GL_ARB_vertex_buffer_object(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_vertex_buffer_object */
-#ifdef GL_ARB_vertex_program
-  CONST_CAST(GLEW_ARB_vertex_program) = glewGetExtension("GL_ARB_vertex_program");
-  if (glewExperimental || GLEW_ARB_vertex_program) CONST_CAST(GLEW_ARB_vertex_program) = !_glewInit_GL_ARB_vertex_program(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_vertex_program */
-#ifdef GL_ARB_vertex_shader
-  CONST_CAST(GLEW_ARB_vertex_shader) = glewGetExtension("GL_ARB_vertex_shader");
-  if (glewExperimental || GLEW_ARB_vertex_shader) CONST_CAST(GLEW_ARB_vertex_shader) = !_glewInit_GL_ARB_vertex_shader(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_vertex_shader */
-#ifdef GL_ARB_vertex_type_2_10_10_10_rev
-  CONST_CAST(GLEW_ARB_vertex_type_2_10_10_10_rev) = glewGetExtension("GL_ARB_vertex_type_2_10_10_10_rev");
-  if (glewExperimental || GLEW_ARB_vertex_type_2_10_10_10_rev) CONST_CAST(GLEW_ARB_vertex_type_2_10_10_10_rev) = !_glewInit_GL_ARB_vertex_type_2_10_10_10_rev(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_vertex_type_2_10_10_10_rev */
-#ifdef GL_ARB_window_pos
-  CONST_CAST(GLEW_ARB_window_pos) = glewGetExtension("GL_ARB_window_pos");
-  if (glewExperimental || GLEW_ARB_window_pos) CONST_CAST(GLEW_ARB_window_pos) = !_glewInit_GL_ARB_window_pos(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ARB_window_pos */
-#ifdef GL_ATIX_point_sprites
-  CONST_CAST(GLEW_ATIX_point_sprites) = glewGetExtension("GL_ATIX_point_sprites");
-#endif /* GL_ATIX_point_sprites */
-#ifdef GL_ATIX_texture_env_combine3
-  CONST_CAST(GLEW_ATIX_texture_env_combine3) = glewGetExtension("GL_ATIX_texture_env_combine3");
-#endif /* GL_ATIX_texture_env_combine3 */
-#ifdef GL_ATIX_texture_env_route
-  CONST_CAST(GLEW_ATIX_texture_env_route) = glewGetExtension("GL_ATIX_texture_env_route");
-#endif /* GL_ATIX_texture_env_route */
-#ifdef GL_ATIX_vertex_shader_output_point_size
-  CONST_CAST(GLEW_ATIX_vertex_shader_output_point_size) = glewGetExtension("GL_ATIX_vertex_shader_output_point_size");
-#endif /* GL_ATIX_vertex_shader_output_point_size */
-#ifdef GL_ATI_draw_buffers
-  CONST_CAST(GLEW_ATI_draw_buffers) = glewGetExtension("GL_ATI_draw_buffers");
-  if (glewExperimental || GLEW_ATI_draw_buffers) CONST_CAST(GLEW_ATI_draw_buffers) = !_glewInit_GL_ATI_draw_buffers(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ATI_draw_buffers */
-#ifdef GL_ATI_element_array
-  CONST_CAST(GLEW_ATI_element_array) = glewGetExtension("GL_ATI_element_array");
-  if (glewExperimental || GLEW_ATI_element_array) CONST_CAST(GLEW_ATI_element_array) = !_glewInit_GL_ATI_element_array(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ATI_element_array */
-#ifdef GL_ATI_envmap_bumpmap
-  CONST_CAST(GLEW_ATI_envmap_bumpmap) = glewGetExtension("GL_ATI_envmap_bumpmap");
-  if (glewExperimental || GLEW_ATI_envmap_bumpmap) CONST_CAST(GLEW_ATI_envmap_bumpmap) = !_glewInit_GL_ATI_envmap_bumpmap(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ATI_envmap_bumpmap */
-#ifdef GL_ATI_fragment_shader
-  CONST_CAST(GLEW_ATI_fragment_shader) = glewGetExtension("GL_ATI_fragment_shader");
-  if (glewExperimental || GLEW_ATI_fragment_shader) CONST_CAST(GLEW_ATI_fragment_shader) = !_glewInit_GL_ATI_fragment_shader(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ATI_fragment_shader */
-#ifdef GL_ATI_map_object_buffer
-  CONST_CAST(GLEW_ATI_map_object_buffer) = glewGetExtension("GL_ATI_map_object_buffer");
-  if (glewExperimental || GLEW_ATI_map_object_buffer) CONST_CAST(GLEW_ATI_map_object_buffer) = !_glewInit_GL_ATI_map_object_buffer(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ATI_map_object_buffer */
-#ifdef GL_ATI_meminfo
-  CONST_CAST(GLEW_ATI_meminfo) = glewGetExtension("GL_ATI_meminfo");
-#endif /* GL_ATI_meminfo */
-#ifdef GL_ATI_pn_triangles
-  CONST_CAST(GLEW_ATI_pn_triangles) = glewGetExtension("GL_ATI_pn_triangles");
-  if (glewExperimental || GLEW_ATI_pn_triangles) CONST_CAST(GLEW_ATI_pn_triangles) = !_glewInit_GL_ATI_pn_triangles(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ATI_pn_triangles */
-#ifdef GL_ATI_separate_stencil
-  CONST_CAST(GLEW_ATI_separate_stencil) = glewGetExtension("GL_ATI_separate_stencil");
-  if (glewExperimental || GLEW_ATI_separate_stencil) CONST_CAST(GLEW_ATI_separate_stencil) = !_glewInit_GL_ATI_separate_stencil(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ATI_separate_stencil */
-#ifdef GL_ATI_shader_texture_lod
-  CONST_CAST(GLEW_ATI_shader_texture_lod) = glewGetExtension("GL_ATI_shader_texture_lod");
-#endif /* GL_ATI_shader_texture_lod */
-#ifdef GL_ATI_text_fragment_shader
-  CONST_CAST(GLEW_ATI_text_fragment_shader) = glewGetExtension("GL_ATI_text_fragment_shader");
-#endif /* GL_ATI_text_fragment_shader */
-#ifdef GL_ATI_texture_compression_3dc
-  CONST_CAST(GLEW_ATI_texture_compression_3dc) = glewGetExtension("GL_ATI_texture_compression_3dc");
-#endif /* GL_ATI_texture_compression_3dc */
-#ifdef GL_ATI_texture_env_combine3
-  CONST_CAST(GLEW_ATI_texture_env_combine3) = glewGetExtension("GL_ATI_texture_env_combine3");
-#endif /* GL_ATI_texture_env_combine3 */
-#ifdef GL_ATI_texture_float
-  CONST_CAST(GLEW_ATI_texture_float) = glewGetExtension("GL_ATI_texture_float");
-#endif /* GL_ATI_texture_float */
-#ifdef GL_ATI_texture_mirror_once
-  CONST_CAST(GLEW_ATI_texture_mirror_once) = glewGetExtension("GL_ATI_texture_mirror_once");
-#endif /* GL_ATI_texture_mirror_once */
-#ifdef GL_ATI_vertex_array_object
-  CONST_CAST(GLEW_ATI_vertex_array_object) = glewGetExtension("GL_ATI_vertex_array_object");
-  if (glewExperimental || GLEW_ATI_vertex_array_object) CONST_CAST(GLEW_ATI_vertex_array_object) = !_glewInit_GL_ATI_vertex_array_object(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ATI_vertex_array_object */
-#ifdef GL_ATI_vertex_attrib_array_object
-  CONST_CAST(GLEW_ATI_vertex_attrib_array_object) = glewGetExtension("GL_ATI_vertex_attrib_array_object");
-  if (glewExperimental || GLEW_ATI_vertex_attrib_array_object) CONST_CAST(GLEW_ATI_vertex_attrib_array_object) = !_glewInit_GL_ATI_vertex_attrib_array_object(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ATI_vertex_attrib_array_object */
-#ifdef GL_ATI_vertex_streams
-  CONST_CAST(GLEW_ATI_vertex_streams) = glewGetExtension("GL_ATI_vertex_streams");
-  if (glewExperimental || GLEW_ATI_vertex_streams) CONST_CAST(GLEW_ATI_vertex_streams) = !_glewInit_GL_ATI_vertex_streams(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_ATI_vertex_streams */
-#ifdef GL_EXT_422_pixels
-  CONST_CAST(GLEW_EXT_422_pixels) = glewGetExtension("GL_EXT_422_pixels");
-#endif /* GL_EXT_422_pixels */
-#ifdef GL_EXT_Cg_shader
-  CONST_CAST(GLEW_EXT_Cg_shader) = glewGetExtension("GL_EXT_Cg_shader");
-#endif /* GL_EXT_Cg_shader */
-#ifdef GL_EXT_abgr
-  CONST_CAST(GLEW_EXT_abgr) = glewGetExtension("GL_EXT_abgr");
-#endif /* GL_EXT_abgr */
-#ifdef GL_EXT_bgra
-  CONST_CAST(GLEW_EXT_bgra) = glewGetExtension("GL_EXT_bgra");
-#endif /* GL_EXT_bgra */
-#ifdef GL_EXT_bindable_uniform
-  CONST_CAST(GLEW_EXT_bindable_uniform) = glewGetExtension("GL_EXT_bindable_uniform");
-  if (glewExperimental || GLEW_EXT_bindable_uniform) CONST_CAST(GLEW_EXT_bindable_uniform) = !_glewInit_GL_EXT_bindable_uniform(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_bindable_uniform */
-#ifdef GL_EXT_blend_color
-  CONST_CAST(GLEW_EXT_blend_color) = glewGetExtension("GL_EXT_blend_color");
-  if (glewExperimental || GLEW_EXT_blend_color) CONST_CAST(GLEW_EXT_blend_color) = !_glewInit_GL_EXT_blend_color(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_blend_color */
-#ifdef GL_EXT_blend_equation_separate
-  CONST_CAST(GLEW_EXT_blend_equation_separate) = glewGetExtension("GL_EXT_blend_equation_separate");
-  if (glewExperimental || GLEW_EXT_blend_equation_separate) CONST_CAST(GLEW_EXT_blend_equation_separate) = !_glewInit_GL_EXT_blend_equation_separate(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_blend_equation_separate */
-#ifdef GL_EXT_blend_func_separate
-  CONST_CAST(GLEW_EXT_blend_func_separate) = glewGetExtension("GL_EXT_blend_func_separate");
-  if (glewExperimental || GLEW_EXT_blend_func_separate) CONST_CAST(GLEW_EXT_blend_func_separate) = !_glewInit_GL_EXT_blend_func_separate(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_blend_func_separate */
-#ifdef GL_EXT_blend_logic_op
-  CONST_CAST(GLEW_EXT_blend_logic_op) = glewGetExtension("GL_EXT_blend_logic_op");
-#endif /* GL_EXT_blend_logic_op */
-#ifdef GL_EXT_blend_minmax
-  CONST_CAST(GLEW_EXT_blend_minmax) = glewGetExtension("GL_EXT_blend_minmax");
-  if (glewExperimental || GLEW_EXT_blend_minmax) CONST_CAST(GLEW_EXT_blend_minmax) = !_glewInit_GL_EXT_blend_minmax(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_blend_minmax */
-#ifdef GL_EXT_blend_subtract
-  CONST_CAST(GLEW_EXT_blend_subtract) = glewGetExtension("GL_EXT_blend_subtract");
-#endif /* GL_EXT_blend_subtract */
-#ifdef GL_EXT_clip_volume_hint
-  CONST_CAST(GLEW_EXT_clip_volume_hint) = glewGetExtension("GL_EXT_clip_volume_hint");
-#endif /* GL_EXT_clip_volume_hint */
-#ifdef GL_EXT_cmyka
-  CONST_CAST(GLEW_EXT_cmyka) = glewGetExtension("GL_EXT_cmyka");
-#endif /* GL_EXT_cmyka */
-#ifdef GL_EXT_color_subtable
-  CONST_CAST(GLEW_EXT_color_subtable) = glewGetExtension("GL_EXT_color_subtable");
-  if (glewExperimental || GLEW_EXT_color_subtable) CONST_CAST(GLEW_EXT_color_subtable) = !_glewInit_GL_EXT_color_subtable(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_color_subtable */
-#ifdef GL_EXT_compiled_vertex_array
-  CONST_CAST(GLEW_EXT_compiled_vertex_array) = glewGetExtension("GL_EXT_compiled_vertex_array");
-  if (glewExperimental || GLEW_EXT_compiled_vertex_array) CONST_CAST(GLEW_EXT_compiled_vertex_array) = !_glewInit_GL_EXT_compiled_vertex_array(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_compiled_vertex_array */
-#ifdef GL_EXT_convolution
-  CONST_CAST(GLEW_EXT_convolution) = glewGetExtension("GL_EXT_convolution");
-  if (glewExperimental || GLEW_EXT_convolution) CONST_CAST(GLEW_EXT_convolution) = !_glewInit_GL_EXT_convolution(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_convolution */
-#ifdef GL_EXT_coordinate_frame
-  CONST_CAST(GLEW_EXT_coordinate_frame) = glewGetExtension("GL_EXT_coordinate_frame");
-  if (glewExperimental || GLEW_EXT_coordinate_frame) CONST_CAST(GLEW_EXT_coordinate_frame) = !_glewInit_GL_EXT_coordinate_frame(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_coordinate_frame */
-#ifdef GL_EXT_copy_texture
-  CONST_CAST(GLEW_EXT_copy_texture) = glewGetExtension("GL_EXT_copy_texture");
-  if (glewExperimental || GLEW_EXT_copy_texture) CONST_CAST(GLEW_EXT_copy_texture) = !_glewInit_GL_EXT_copy_texture(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_copy_texture */
-#ifdef GL_EXT_cull_vertex
-  CONST_CAST(GLEW_EXT_cull_vertex) = glewGetExtension("GL_EXT_cull_vertex");
-  if (glewExperimental || GLEW_EXT_cull_vertex) CONST_CAST(GLEW_EXT_cull_vertex) = !_glewInit_GL_EXT_cull_vertex(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_cull_vertex */
-#ifdef GL_EXT_depth_bounds_test
-  CONST_CAST(GLEW_EXT_depth_bounds_test) = glewGetExtension("GL_EXT_depth_bounds_test");
-  if (glewExperimental || GLEW_EXT_depth_bounds_test) CONST_CAST(GLEW_EXT_depth_bounds_test) = !_glewInit_GL_EXT_depth_bounds_test(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_depth_bounds_test */
-#ifdef GL_EXT_direct_state_access
-  CONST_CAST(GLEW_EXT_direct_state_access) = glewGetExtension("GL_EXT_direct_state_access");
-  if (glewExperimental || GLEW_EXT_direct_state_access) CONST_CAST(GLEW_EXT_direct_state_access) = !_glewInit_GL_EXT_direct_state_access(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_direct_state_access */
-#ifdef GL_EXT_draw_buffers2
-  CONST_CAST(GLEW_EXT_draw_buffers2) = glewGetExtension("GL_EXT_draw_buffers2");
-  if (glewExperimental || GLEW_EXT_draw_buffers2) CONST_CAST(GLEW_EXT_draw_buffers2) = !_glewInit_GL_EXT_draw_buffers2(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_draw_buffers2 */
-#ifdef GL_EXT_draw_instanced
-  CONST_CAST(GLEW_EXT_draw_instanced) = glewGetExtension("GL_EXT_draw_instanced");
-  if (glewExperimental || GLEW_EXT_draw_instanced) CONST_CAST(GLEW_EXT_draw_instanced) = !_glewInit_GL_EXT_draw_instanced(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_draw_instanced */
-#ifdef GL_EXT_draw_range_elements
-  CONST_CAST(GLEW_EXT_draw_range_elements) = glewGetExtension("GL_EXT_draw_range_elements");
-  if (glewExperimental || GLEW_EXT_draw_range_elements) CONST_CAST(GLEW_EXT_draw_range_elements) = !_glewInit_GL_EXT_draw_range_elements(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_draw_range_elements */
-#ifdef GL_EXT_fog_coord
-  CONST_CAST(GLEW_EXT_fog_coord) = glewGetExtension("GL_EXT_fog_coord");
-  if (glewExperimental || GLEW_EXT_fog_coord) CONST_CAST(GLEW_EXT_fog_coord) = !_glewInit_GL_EXT_fog_coord(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_fog_coord */
-#ifdef GL_EXT_fragment_lighting
-  CONST_CAST(GLEW_EXT_fragment_lighting) = glewGetExtension("GL_EXT_fragment_lighting");
-  if (glewExperimental || GLEW_EXT_fragment_lighting) CONST_CAST(GLEW_EXT_fragment_lighting) = !_glewInit_GL_EXT_fragment_lighting(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_fragment_lighting */
-#ifdef GL_EXT_framebuffer_blit
-  CONST_CAST(GLEW_EXT_framebuffer_blit) = glewGetExtension("GL_EXT_framebuffer_blit");
-  if (glewExperimental || GLEW_EXT_framebuffer_blit) CONST_CAST(GLEW_EXT_framebuffer_blit) = !_glewInit_GL_EXT_framebuffer_blit(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_framebuffer_blit */
-#ifdef GL_EXT_framebuffer_multisample
-  CONST_CAST(GLEW_EXT_framebuffer_multisample) = glewGetExtension("GL_EXT_framebuffer_multisample");
-  if (glewExperimental || GLEW_EXT_framebuffer_multisample) CONST_CAST(GLEW_EXT_framebuffer_multisample) = !_glewInit_GL_EXT_framebuffer_multisample(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_framebuffer_multisample */
-#ifdef GL_EXT_framebuffer_object
-  CONST_CAST(GLEW_EXT_framebuffer_object) = glewGetExtension("GL_EXT_framebuffer_object");
-  if (glewExperimental || GLEW_EXT_framebuffer_object) CONST_CAST(GLEW_EXT_framebuffer_object) = !_glewInit_GL_EXT_framebuffer_object(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_framebuffer_object */
-#ifdef GL_EXT_framebuffer_sRGB
-  CONST_CAST(GLEW_EXT_framebuffer_sRGB) = glewGetExtension("GL_EXT_framebuffer_sRGB");
-#endif /* GL_EXT_framebuffer_sRGB */
-#ifdef GL_EXT_geometry_shader4
-  CONST_CAST(GLEW_EXT_geometry_shader4) = glewGetExtension("GL_EXT_geometry_shader4");
-  if (glewExperimental || GLEW_EXT_geometry_shader4) CONST_CAST(GLEW_EXT_geometry_shader4) = !_glewInit_GL_EXT_geometry_shader4(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_geometry_shader4 */
-#ifdef GL_EXT_gpu_program_parameters
-  CONST_CAST(GLEW_EXT_gpu_program_parameters) = glewGetExtension("GL_EXT_gpu_program_parameters");
-  if (glewExperimental || GLEW_EXT_gpu_program_parameters) CONST_CAST(GLEW_EXT_gpu_program_parameters) = !_glewInit_GL_EXT_gpu_program_parameters(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_gpu_program_parameters */
-#ifdef GL_EXT_gpu_shader4
-  CONST_CAST(GLEW_EXT_gpu_shader4) = glewGetExtension("GL_EXT_gpu_shader4");
-  if (glewExperimental || GLEW_EXT_gpu_shader4) CONST_CAST(GLEW_EXT_gpu_shader4) = !_glewInit_GL_EXT_gpu_shader4(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_gpu_shader4 */
-#ifdef GL_EXT_histogram
-  CONST_CAST(GLEW_EXT_histogram) = glewGetExtension("GL_EXT_histogram");
-  if (glewExperimental || GLEW_EXT_histogram) CONST_CAST(GLEW_EXT_histogram) = !_glewInit_GL_EXT_histogram(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_histogram */
-#ifdef GL_EXT_index_array_formats
-  CONST_CAST(GLEW_EXT_index_array_formats) = glewGetExtension("GL_EXT_index_array_formats");
-#endif /* GL_EXT_index_array_formats */
-#ifdef GL_EXT_index_func
-  CONST_CAST(GLEW_EXT_index_func) = glewGetExtension("GL_EXT_index_func");
-  if (glewExperimental || GLEW_EXT_index_func) CONST_CAST(GLEW_EXT_index_func) = !_glewInit_GL_EXT_index_func(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_index_func */
-#ifdef GL_EXT_index_material
-  CONST_CAST(GLEW_EXT_index_material) = glewGetExtension("GL_EXT_index_material");
-  if (glewExperimental || GLEW_EXT_index_material) CONST_CAST(GLEW_EXT_index_material) = !_glewInit_GL_EXT_index_material(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_index_material */
-#ifdef GL_EXT_index_texture
-  CONST_CAST(GLEW_EXT_index_texture) = glewGetExtension("GL_EXT_index_texture");
-#endif /* GL_EXT_index_texture */
-#ifdef GL_EXT_light_texture
-  CONST_CAST(GLEW_EXT_light_texture) = glewGetExtension("GL_EXT_light_texture");
-  if (glewExperimental || GLEW_EXT_light_texture) CONST_CAST(GLEW_EXT_light_texture) = !_glewInit_GL_EXT_light_texture(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_light_texture */
-#ifdef GL_EXT_misc_attribute
-  CONST_CAST(GLEW_EXT_misc_attribute) = glewGetExtension("GL_EXT_misc_attribute");
-#endif /* GL_EXT_misc_attribute */
-#ifdef GL_EXT_multi_draw_arrays
-  CONST_CAST(GLEW_EXT_multi_draw_arrays) = glewGetExtension("GL_EXT_multi_draw_arrays");
-  if (glewExperimental || GLEW_EXT_multi_draw_arrays) CONST_CAST(GLEW_EXT_multi_draw_arrays) = !_glewInit_GL_EXT_multi_draw_arrays(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_multi_draw_arrays */
-#ifdef GL_EXT_multisample
-  CONST_CAST(GLEW_EXT_multisample) = glewGetExtension("GL_EXT_multisample");
-  if (glewExperimental || GLEW_EXT_multisample) CONST_CAST(GLEW_EXT_multisample) = !_glewInit_GL_EXT_multisample(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_multisample */
-#ifdef GL_EXT_packed_depth_stencil
-  CONST_CAST(GLEW_EXT_packed_depth_stencil) = glewGetExtension("GL_EXT_packed_depth_stencil");
-#endif /* GL_EXT_packed_depth_stencil */
-#ifdef GL_EXT_packed_float
-  CONST_CAST(GLEW_EXT_packed_float) = glewGetExtension("GL_EXT_packed_float");
-#endif /* GL_EXT_packed_float */
-#ifdef GL_EXT_packed_pixels
-  CONST_CAST(GLEW_EXT_packed_pixels) = glewGetExtension("GL_EXT_packed_pixels");
-#endif /* GL_EXT_packed_pixels */
-#ifdef GL_EXT_paletted_texture
-  CONST_CAST(GLEW_EXT_paletted_texture) = glewGetExtension("GL_EXT_paletted_texture");
-  if (glewExperimental || GLEW_EXT_paletted_texture) CONST_CAST(GLEW_EXT_paletted_texture) = !_glewInit_GL_EXT_paletted_texture(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_paletted_texture */
-#ifdef GL_EXT_pixel_buffer_object
-  CONST_CAST(GLEW_EXT_pixel_buffer_object) = glewGetExtension("GL_EXT_pixel_buffer_object");
-#endif /* GL_EXT_pixel_buffer_object */
-#ifdef GL_EXT_pixel_transform
-  CONST_CAST(GLEW_EXT_pixel_transform) = glewGetExtension("GL_EXT_pixel_transform");
-  if (glewExperimental || GLEW_EXT_pixel_transform) CONST_CAST(GLEW_EXT_pixel_transform) = !_glewInit_GL_EXT_pixel_transform(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_pixel_transform */
-#ifdef GL_EXT_pixel_transform_color_table
-  CONST_CAST(GLEW_EXT_pixel_transform_color_table) = glewGetExtension("GL_EXT_pixel_transform_color_table");
-#endif /* GL_EXT_pixel_transform_color_table */
-#ifdef GL_EXT_point_parameters
-  CONST_CAST(GLEW_EXT_point_parameters) = glewGetExtension("GL_EXT_point_parameters");
-  if (glewExperimental || GLEW_EXT_point_parameters) CONST_CAST(GLEW_EXT_point_parameters) = !_glewInit_GL_EXT_point_parameters(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_point_parameters */
-#ifdef GL_EXT_polygon_offset
-  CONST_CAST(GLEW_EXT_polygon_offset) = glewGetExtension("GL_EXT_polygon_offset");
-  if (glewExperimental || GLEW_EXT_polygon_offset) CONST_CAST(GLEW_EXT_polygon_offset) = !_glewInit_GL_EXT_polygon_offset(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_polygon_offset */
-#ifdef GL_EXT_provoking_vertex
-  CONST_CAST(GLEW_EXT_provoking_vertex) = glewGetExtension("GL_EXT_provoking_vertex");
-  if (glewExperimental || GLEW_EXT_provoking_vertex) CONST_CAST(GLEW_EXT_provoking_vertex) = !_glewInit_GL_EXT_provoking_vertex(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_provoking_vertex */
-#ifdef GL_EXT_rescale_normal
-  CONST_CAST(GLEW_EXT_rescale_normal) = glewGetExtension("GL_EXT_rescale_normal");
-#endif /* GL_EXT_rescale_normal */
-#ifdef GL_EXT_scene_marker
-  CONST_CAST(GLEW_EXT_scene_marker) = glewGetExtension("GL_EXT_scene_marker");
-  if (glewExperimental || GLEW_EXT_scene_marker) CONST_CAST(GLEW_EXT_scene_marker) = !_glewInit_GL_EXT_scene_marker(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_scene_marker */
-#ifdef GL_EXT_secondary_color
-  CONST_CAST(GLEW_EXT_secondary_color) = glewGetExtension("GL_EXT_secondary_color");
-  if (glewExperimental || GLEW_EXT_secondary_color) CONST_CAST(GLEW_EXT_secondary_color) = !_glewInit_GL_EXT_secondary_color(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_secondary_color */
-#ifdef GL_EXT_separate_shader_objects
-  CONST_CAST(GLEW_EXT_separate_shader_objects) = glewGetExtension("GL_EXT_separate_shader_objects");
-  if (glewExperimental || GLEW_EXT_separate_shader_objects) CONST_CAST(GLEW_EXT_separate_shader_objects) = !_glewInit_GL_EXT_separate_shader_objects(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_separate_shader_objects */
-#ifdef GL_EXT_separate_specular_color
-  CONST_CAST(GLEW_EXT_separate_specular_color) = glewGetExtension("GL_EXT_separate_specular_color");
-#endif /* GL_EXT_separate_specular_color */
-#ifdef GL_EXT_shader_image_load_store
-  CONST_CAST(GLEW_EXT_shader_image_load_store) = glewGetExtension("GL_EXT_shader_image_load_store");
-  if (glewExperimental || GLEW_EXT_shader_image_load_store) CONST_CAST(GLEW_EXT_shader_image_load_store) = !_glewInit_GL_EXT_shader_image_load_store(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_shader_image_load_store */
-#ifdef GL_EXT_shadow_funcs
-  CONST_CAST(GLEW_EXT_shadow_funcs) = glewGetExtension("GL_EXT_shadow_funcs");
-#endif /* GL_EXT_shadow_funcs */
-#ifdef GL_EXT_shared_texture_palette
-  CONST_CAST(GLEW_EXT_shared_texture_palette) = glewGetExtension("GL_EXT_shared_texture_palette");
-#endif /* GL_EXT_shared_texture_palette */
-#ifdef GL_EXT_stencil_clear_tag
-  CONST_CAST(GLEW_EXT_stencil_clear_tag) = glewGetExtension("GL_EXT_stencil_clear_tag");
-#endif /* GL_EXT_stencil_clear_tag */
-#ifdef GL_EXT_stencil_two_side
-  CONST_CAST(GLEW_EXT_stencil_two_side) = glewGetExtension("GL_EXT_stencil_two_side");
-  if (glewExperimental || GLEW_EXT_stencil_two_side) CONST_CAST(GLEW_EXT_stencil_two_side) = !_glewInit_GL_EXT_stencil_two_side(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_stencil_two_side */
-#ifdef GL_EXT_stencil_wrap
-  CONST_CAST(GLEW_EXT_stencil_wrap) = glewGetExtension("GL_EXT_stencil_wrap");
-#endif /* GL_EXT_stencil_wrap */
-#ifdef GL_EXT_subtexture
-  CONST_CAST(GLEW_EXT_subtexture) = glewGetExtension("GL_EXT_subtexture");
-  if (glewExperimental || GLEW_EXT_subtexture) CONST_CAST(GLEW_EXT_subtexture) = !_glewInit_GL_EXT_subtexture(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_subtexture */
-#ifdef GL_EXT_texture
-  CONST_CAST(GLEW_EXT_texture) = glewGetExtension("GL_EXT_texture");
-#endif /* GL_EXT_texture */
-#ifdef GL_EXT_texture3D
-  CONST_CAST(GLEW_EXT_texture3D) = glewGetExtension("GL_EXT_texture3D");
-  if (glewExperimental || GLEW_EXT_texture3D) CONST_CAST(GLEW_EXT_texture3D) = !_glewInit_GL_EXT_texture3D(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_texture3D */
-#ifdef GL_EXT_texture_array
-  CONST_CAST(GLEW_EXT_texture_array) = glewGetExtension("GL_EXT_texture_array");
-#endif /* GL_EXT_texture_array */
-#ifdef GL_EXT_texture_buffer_object
-  CONST_CAST(GLEW_EXT_texture_buffer_object) = glewGetExtension("GL_EXT_texture_buffer_object");
-  if (glewExperimental || GLEW_EXT_texture_buffer_object) CONST_CAST(GLEW_EXT_texture_buffer_object) = !_glewInit_GL_EXT_texture_buffer_object(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_texture_buffer_object */
-#ifdef GL_EXT_texture_compression_dxt1
-  CONST_CAST(GLEW_EXT_texture_compression_dxt1) = glewGetExtension("GL_EXT_texture_compression_dxt1");
-#endif /* GL_EXT_texture_compression_dxt1 */
-#ifdef GL_EXT_texture_compression_latc
-  CONST_CAST(GLEW_EXT_texture_compression_latc) = glewGetExtension("GL_EXT_texture_compression_latc");
-#endif /* GL_EXT_texture_compression_latc */
-#ifdef GL_EXT_texture_compression_rgtc
-  CONST_CAST(GLEW_EXT_texture_compression_rgtc) = glewGetExtension("GL_EXT_texture_compression_rgtc");
-#endif /* GL_EXT_texture_compression_rgtc */
-#ifdef GL_EXT_texture_compression_s3tc
-  CONST_CAST(GLEW_EXT_texture_compression_s3tc) = glewGetExtension("GL_EXT_texture_compression_s3tc");
-#endif /* GL_EXT_texture_compression_s3tc */
-#ifdef GL_EXT_texture_cube_map
-  CONST_CAST(GLEW_EXT_texture_cube_map) = glewGetExtension("GL_EXT_texture_cube_map");
-#endif /* GL_EXT_texture_cube_map */
-#ifdef GL_EXT_texture_edge_clamp
-  CONST_CAST(GLEW_EXT_texture_edge_clamp) = glewGetExtension("GL_EXT_texture_edge_clamp");
-#endif /* GL_EXT_texture_edge_clamp */
-#ifdef GL_EXT_texture_env
-  CONST_CAST(GLEW_EXT_texture_env) = glewGetExtension("GL_EXT_texture_env");
-#endif /* GL_EXT_texture_env */
-#ifdef GL_EXT_texture_env_add
-  CONST_CAST(GLEW_EXT_texture_env_add) = glewGetExtension("GL_EXT_texture_env_add");
-#endif /* GL_EXT_texture_env_add */
-#ifdef GL_EXT_texture_env_combine
-  CONST_CAST(GLEW_EXT_texture_env_combine) = glewGetExtension("GL_EXT_texture_env_combine");
-#endif /* GL_EXT_texture_env_combine */
-#ifdef GL_EXT_texture_env_dot3
-  CONST_CAST(GLEW_EXT_texture_env_dot3) = glewGetExtension("GL_EXT_texture_env_dot3");
-#endif /* GL_EXT_texture_env_dot3 */
-#ifdef GL_EXT_texture_filter_anisotropic
-  CONST_CAST(GLEW_EXT_texture_filter_anisotropic) = glewGetExtension("GL_EXT_texture_filter_anisotropic");
-#endif /* GL_EXT_texture_filter_anisotropic */
-#ifdef GL_EXT_texture_integer
-  CONST_CAST(GLEW_EXT_texture_integer) = glewGetExtension("GL_EXT_texture_integer");
-  if (glewExperimental || GLEW_EXT_texture_integer) CONST_CAST(GLEW_EXT_texture_integer) = !_glewInit_GL_EXT_texture_integer(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_texture_integer */
-#ifdef GL_EXT_texture_lod_bias
-  CONST_CAST(GLEW_EXT_texture_lod_bias) = glewGetExtension("GL_EXT_texture_lod_bias");
-#endif /* GL_EXT_texture_lod_bias */
-#ifdef GL_EXT_texture_mirror_clamp
-  CONST_CAST(GLEW_EXT_texture_mirror_clamp) = glewGetExtension("GL_EXT_texture_mirror_clamp");
-#endif /* GL_EXT_texture_mirror_clamp */
-#ifdef GL_EXT_texture_object
-  CONST_CAST(GLEW_EXT_texture_object) = glewGetExtension("GL_EXT_texture_object");
-  if (glewExperimental || GLEW_EXT_texture_object) CONST_CAST(GLEW_EXT_texture_object) = !_glewInit_GL_EXT_texture_object(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_texture_object */
-#ifdef GL_EXT_texture_perturb_normal
-  CONST_CAST(GLEW_EXT_texture_perturb_normal) = glewGetExtension("GL_EXT_texture_perturb_normal");
-  if (glewExperimental || GLEW_EXT_texture_perturb_normal) CONST_CAST(GLEW_EXT_texture_perturb_normal) = !_glewInit_GL_EXT_texture_perturb_normal(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_texture_perturb_normal */
-#ifdef GL_EXT_texture_rectangle
-  CONST_CAST(GLEW_EXT_texture_rectangle) = glewGetExtension("GL_EXT_texture_rectangle");
-#endif /* GL_EXT_texture_rectangle */
-#ifdef GL_EXT_texture_sRGB
-  CONST_CAST(GLEW_EXT_texture_sRGB) = glewGetExtension("GL_EXT_texture_sRGB");
-#endif /* GL_EXT_texture_sRGB */
-#ifdef GL_EXT_texture_shared_exponent
-  CONST_CAST(GLEW_EXT_texture_shared_exponent) = glewGetExtension("GL_EXT_texture_shared_exponent");
-#endif /* GL_EXT_texture_shared_exponent */
-#ifdef GL_EXT_texture_snorm
-  CONST_CAST(GLEW_EXT_texture_snorm) = glewGetExtension("GL_EXT_texture_snorm");
-#endif /* GL_EXT_texture_snorm */
-#ifdef GL_EXT_texture_swizzle
-  CONST_CAST(GLEW_EXT_texture_swizzle) = glewGetExtension("GL_EXT_texture_swizzle");
-#endif /* GL_EXT_texture_swizzle */
-#ifdef GL_EXT_timer_query
-  CONST_CAST(GLEW_EXT_timer_query) = glewGetExtension("GL_EXT_timer_query");
-  if (glewExperimental || GLEW_EXT_timer_query) CONST_CAST(GLEW_EXT_timer_query) = !_glewInit_GL_EXT_timer_query(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_timer_query */
-#ifdef GL_EXT_transform_feedback
-  CONST_CAST(GLEW_EXT_transform_feedback) = glewGetExtension("GL_EXT_transform_feedback");
-  if (glewExperimental || GLEW_EXT_transform_feedback) CONST_CAST(GLEW_EXT_transform_feedback) = !_glewInit_GL_EXT_transform_feedback(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_transform_feedback */
-#ifdef GL_EXT_vertex_array
-  CONST_CAST(GLEW_EXT_vertex_array) = glewGetExtension("GL_EXT_vertex_array");
-  if (glewExperimental || GLEW_EXT_vertex_array) CONST_CAST(GLEW_EXT_vertex_array) = !_glewInit_GL_EXT_vertex_array(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_vertex_array */
-#ifdef GL_EXT_vertex_array_bgra
-  CONST_CAST(GLEW_EXT_vertex_array_bgra) = glewGetExtension("GL_EXT_vertex_array_bgra");
-#endif /* GL_EXT_vertex_array_bgra */
-#ifdef GL_EXT_vertex_attrib_64bit
-  CONST_CAST(GLEW_EXT_vertex_attrib_64bit) = glewGetExtension("GL_EXT_vertex_attrib_64bit");
-  if (glewExperimental || GLEW_EXT_vertex_attrib_64bit) CONST_CAST(GLEW_EXT_vertex_attrib_64bit) = !_glewInit_GL_EXT_vertex_attrib_64bit(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_vertex_attrib_64bit */
-#ifdef GL_EXT_vertex_shader
-  CONST_CAST(GLEW_EXT_vertex_shader) = glewGetExtension("GL_EXT_vertex_shader");
-  if (glewExperimental || GLEW_EXT_vertex_shader) CONST_CAST(GLEW_EXT_vertex_shader) = !_glewInit_GL_EXT_vertex_shader(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_vertex_shader */
-#ifdef GL_EXT_vertex_weighting
-  CONST_CAST(GLEW_EXT_vertex_weighting) = glewGetExtension("GL_EXT_vertex_weighting");
-  if (glewExperimental || GLEW_EXT_vertex_weighting) CONST_CAST(GLEW_EXT_vertex_weighting) = !_glewInit_GL_EXT_vertex_weighting(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_EXT_vertex_weighting */
-#ifdef GL_GREMEDY_frame_terminator
-  CONST_CAST(GLEW_GREMEDY_frame_terminator) = glewGetExtension("GL_GREMEDY_frame_terminator");
-  if (glewExperimental || GLEW_GREMEDY_frame_terminator) CONST_CAST(GLEW_GREMEDY_frame_terminator) = !_glewInit_GL_GREMEDY_frame_terminator(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_GREMEDY_frame_terminator */
-#ifdef GL_GREMEDY_string_marker
-  CONST_CAST(GLEW_GREMEDY_string_marker) = glewGetExtension("GL_GREMEDY_string_marker");
-  if (glewExperimental || GLEW_GREMEDY_string_marker) CONST_CAST(GLEW_GREMEDY_string_marker) = !_glewInit_GL_GREMEDY_string_marker(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_GREMEDY_string_marker */
-#ifdef GL_HP_convolution_border_modes
-  CONST_CAST(GLEW_HP_convolution_border_modes) = glewGetExtension("GL_HP_convolution_border_modes");
-#endif /* GL_HP_convolution_border_modes */
-#ifdef GL_HP_image_transform
-  CONST_CAST(GLEW_HP_image_transform) = glewGetExtension("GL_HP_image_transform");
-  if (glewExperimental || GLEW_HP_image_transform) CONST_CAST(GLEW_HP_image_transform) = !_glewInit_GL_HP_image_transform(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_HP_image_transform */
-#ifdef GL_HP_occlusion_test
-  CONST_CAST(GLEW_HP_occlusion_test) = glewGetExtension("GL_HP_occlusion_test");
-#endif /* GL_HP_occlusion_test */
-#ifdef GL_HP_texture_lighting
-  CONST_CAST(GLEW_HP_texture_lighting) = glewGetExtension("GL_HP_texture_lighting");
-#endif /* GL_HP_texture_lighting */
-#ifdef GL_IBM_cull_vertex
-  CONST_CAST(GLEW_IBM_cull_vertex) = glewGetExtension("GL_IBM_cull_vertex");
-#endif /* GL_IBM_cull_vertex */
-#ifdef GL_IBM_multimode_draw_arrays
-  CONST_CAST(GLEW_IBM_multimode_draw_arrays) = glewGetExtension("GL_IBM_multimode_draw_arrays");
-  if (glewExperimental || GLEW_IBM_multimode_draw_arrays) CONST_CAST(GLEW_IBM_multimode_draw_arrays) = !_glewInit_GL_IBM_multimode_draw_arrays(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_IBM_multimode_draw_arrays */
-#ifdef GL_IBM_rasterpos_clip
-  CONST_CAST(GLEW_IBM_rasterpos_clip) = glewGetExtension("GL_IBM_rasterpos_clip");
-#endif /* GL_IBM_rasterpos_clip */
-#ifdef GL_IBM_static_data
-  CONST_CAST(GLEW_IBM_static_data) = glewGetExtension("GL_IBM_static_data");
-#endif /* GL_IBM_static_data */
-#ifdef GL_IBM_texture_mirrored_repeat
-  CONST_CAST(GLEW_IBM_texture_mirrored_repeat) = glewGetExtension("GL_IBM_texture_mirrored_repeat");
-#endif /* GL_IBM_texture_mirrored_repeat */
-#ifdef GL_IBM_vertex_array_lists
-  CONST_CAST(GLEW_IBM_vertex_array_lists) = glewGetExtension("GL_IBM_vertex_array_lists");
-  if (glewExperimental || GLEW_IBM_vertex_array_lists) CONST_CAST(GLEW_IBM_vertex_array_lists) = !_glewInit_GL_IBM_vertex_array_lists(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_IBM_vertex_array_lists */
-#ifdef GL_INGR_color_clamp
-  CONST_CAST(GLEW_INGR_color_clamp) = glewGetExtension("GL_INGR_color_clamp");
-#endif /* GL_INGR_color_clamp */
-#ifdef GL_INGR_interlace_read
-  CONST_CAST(GLEW_INGR_interlace_read) = glewGetExtension("GL_INGR_interlace_read");
-#endif /* GL_INGR_interlace_read */
-#ifdef GL_INTEL_parallel_arrays
-  CONST_CAST(GLEW_INTEL_parallel_arrays) = glewGetExtension("GL_INTEL_parallel_arrays");
-  if (glewExperimental || GLEW_INTEL_parallel_arrays) CONST_CAST(GLEW_INTEL_parallel_arrays) = !_glewInit_GL_INTEL_parallel_arrays(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_INTEL_parallel_arrays */
-#ifdef GL_INTEL_texture_scissor
-  CONST_CAST(GLEW_INTEL_texture_scissor) = glewGetExtension("GL_INTEL_texture_scissor");
-  if (glewExperimental || GLEW_INTEL_texture_scissor) CONST_CAST(GLEW_INTEL_texture_scissor) = !_glewInit_GL_INTEL_texture_scissor(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_INTEL_texture_scissor */
-#ifdef GL_KTX_buffer_region
-  CONST_CAST(GLEW_KTX_buffer_region) = glewGetExtension("GL_KTX_buffer_region");
-  if (glewExperimental || GLEW_KTX_buffer_region) CONST_CAST(GLEW_KTX_buffer_region) = !_glewInit_GL_KTX_buffer_region(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_KTX_buffer_region */
-#ifdef GL_MESAX_texture_stack
-  CONST_CAST(GLEW_MESAX_texture_stack) = glewGetExtension("GL_MESAX_texture_stack");
-#endif /* GL_MESAX_texture_stack */
-#ifdef GL_MESA_pack_invert
-  CONST_CAST(GLEW_MESA_pack_invert) = glewGetExtension("GL_MESA_pack_invert");
-#endif /* GL_MESA_pack_invert */
-#ifdef GL_MESA_resize_buffers
-  CONST_CAST(GLEW_MESA_resize_buffers) = glewGetExtension("GL_MESA_resize_buffers");
-  if (glewExperimental || GLEW_MESA_resize_buffers) CONST_CAST(GLEW_MESA_resize_buffers) = !_glewInit_GL_MESA_resize_buffers(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_MESA_resize_buffers */
-#ifdef GL_MESA_window_pos
-  CONST_CAST(GLEW_MESA_window_pos) = glewGetExtension("GL_MESA_window_pos");
-  if (glewExperimental || GLEW_MESA_window_pos) CONST_CAST(GLEW_MESA_window_pos) = !_glewInit_GL_MESA_window_pos(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_MESA_window_pos */
-#ifdef GL_MESA_ycbcr_texture
-  CONST_CAST(GLEW_MESA_ycbcr_texture) = glewGetExtension("GL_MESA_ycbcr_texture");
-#endif /* GL_MESA_ycbcr_texture */
-#ifdef GL_NV_blend_square
-  CONST_CAST(GLEW_NV_blend_square) = glewGetExtension("GL_NV_blend_square");
-#endif /* GL_NV_blend_square */
-#ifdef GL_NV_conditional_render
-  CONST_CAST(GLEW_NV_conditional_render) = glewGetExtension("GL_NV_conditional_render");
-  if (glewExperimental || GLEW_NV_conditional_render) CONST_CAST(GLEW_NV_conditional_render) = !_glewInit_GL_NV_conditional_render(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_conditional_render */
-#ifdef GL_NV_copy_depth_to_color
-  CONST_CAST(GLEW_NV_copy_depth_to_color) = glewGetExtension("GL_NV_copy_depth_to_color");
-#endif /* GL_NV_copy_depth_to_color */
-#ifdef GL_NV_copy_image
-  CONST_CAST(GLEW_NV_copy_image) = glewGetExtension("GL_NV_copy_image");
-  if (glewExperimental || GLEW_NV_copy_image) CONST_CAST(GLEW_NV_copy_image) = !_glewInit_GL_NV_copy_image(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_copy_image */
-#ifdef GL_NV_depth_buffer_float
-  CONST_CAST(GLEW_NV_depth_buffer_float) = glewGetExtension("GL_NV_depth_buffer_float");
-  if (glewExperimental || GLEW_NV_depth_buffer_float) CONST_CAST(GLEW_NV_depth_buffer_float) = !_glewInit_GL_NV_depth_buffer_float(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_depth_buffer_float */
-#ifdef GL_NV_depth_clamp
-  CONST_CAST(GLEW_NV_depth_clamp) = glewGetExtension("GL_NV_depth_clamp");
-#endif /* GL_NV_depth_clamp */
-#ifdef GL_NV_depth_range_unclamped
-  CONST_CAST(GLEW_NV_depth_range_unclamped) = glewGetExtension("GL_NV_depth_range_unclamped");
-#endif /* GL_NV_depth_range_unclamped */
-#ifdef GL_NV_evaluators
-  CONST_CAST(GLEW_NV_evaluators) = glewGetExtension("GL_NV_evaluators");
-  if (glewExperimental || GLEW_NV_evaluators) CONST_CAST(GLEW_NV_evaluators) = !_glewInit_GL_NV_evaluators(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_evaluators */
-#ifdef GL_NV_explicit_multisample
-  CONST_CAST(GLEW_NV_explicit_multisample) = glewGetExtension("GL_NV_explicit_multisample");
-  if (glewExperimental || GLEW_NV_explicit_multisample) CONST_CAST(GLEW_NV_explicit_multisample) = !_glewInit_GL_NV_explicit_multisample(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_explicit_multisample */
-#ifdef GL_NV_fence
-  CONST_CAST(GLEW_NV_fence) = glewGetExtension("GL_NV_fence");
-  if (glewExperimental || GLEW_NV_fence) CONST_CAST(GLEW_NV_fence) = !_glewInit_GL_NV_fence(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_fence */
-#ifdef GL_NV_float_buffer
-  CONST_CAST(GLEW_NV_float_buffer) = glewGetExtension("GL_NV_float_buffer");
-#endif /* GL_NV_float_buffer */
-#ifdef GL_NV_fog_distance
-  CONST_CAST(GLEW_NV_fog_distance) = glewGetExtension("GL_NV_fog_distance");
-#endif /* GL_NV_fog_distance */
-#ifdef GL_NV_fragment_program
-  CONST_CAST(GLEW_NV_fragment_program) = glewGetExtension("GL_NV_fragment_program");
-  if (glewExperimental || GLEW_NV_fragment_program) CONST_CAST(GLEW_NV_fragment_program) = !_glewInit_GL_NV_fragment_program(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_fragment_program */
-#ifdef GL_NV_fragment_program2
-  CONST_CAST(GLEW_NV_fragment_program2) = glewGetExtension("GL_NV_fragment_program2");
-#endif /* GL_NV_fragment_program2 */
-#ifdef GL_NV_fragment_program4
-  CONST_CAST(GLEW_NV_fragment_program4) = glewGetExtension("GL_NV_gpu_program4");
-#endif /* GL_NV_fragment_program4 */
-#ifdef GL_NV_fragment_program_option
-  CONST_CAST(GLEW_NV_fragment_program_option) = glewGetExtension("GL_NV_fragment_program_option");
-#endif /* GL_NV_fragment_program_option */
-#ifdef GL_NV_framebuffer_multisample_coverage
-  CONST_CAST(GLEW_NV_framebuffer_multisample_coverage) = glewGetExtension("GL_NV_framebuffer_multisample_coverage");
-  if (glewExperimental || GLEW_NV_framebuffer_multisample_coverage) CONST_CAST(GLEW_NV_framebuffer_multisample_coverage) = !_glewInit_GL_NV_framebuffer_multisample_coverage(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_framebuffer_multisample_coverage */
-#ifdef GL_NV_geometry_program4
-  CONST_CAST(GLEW_NV_geometry_program4) = glewGetExtension("GL_NV_gpu_program4");
-  if (glewExperimental || GLEW_NV_geometry_program4) CONST_CAST(GLEW_NV_geometry_program4) = !_glewInit_GL_NV_geometry_program4(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_geometry_program4 */
-#ifdef GL_NV_geometry_shader4
-  CONST_CAST(GLEW_NV_geometry_shader4) = glewGetExtension("GL_NV_geometry_shader4");
-#endif /* GL_NV_geometry_shader4 */
-#ifdef GL_NV_gpu_program4
-  CONST_CAST(GLEW_NV_gpu_program4) = glewGetExtension("GL_NV_gpu_program4");
-  if (glewExperimental || GLEW_NV_gpu_program4) CONST_CAST(GLEW_NV_gpu_program4) = !_glewInit_GL_NV_gpu_program4(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_gpu_program4 */
-#ifdef GL_NV_gpu_program5
-  CONST_CAST(GLEW_NV_gpu_program5) = glewGetExtension("GL_NV_gpu_program5");
-#endif /* GL_NV_gpu_program5 */
-#ifdef GL_NV_gpu_program_fp64
-  CONST_CAST(GLEW_NV_gpu_program_fp64) = glewGetExtension("GL_NV_gpu_program_fp64");
-#endif /* GL_NV_gpu_program_fp64 */
-#ifdef GL_NV_gpu_shader5
-  CONST_CAST(GLEW_NV_gpu_shader5) = glewGetExtension("GL_NV_gpu_shader5");
-  if (glewExperimental || GLEW_NV_gpu_shader5) CONST_CAST(GLEW_NV_gpu_shader5) = !_glewInit_GL_NV_gpu_shader5(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_gpu_shader5 */
-#ifdef GL_NV_half_float
-  CONST_CAST(GLEW_NV_half_float) = glewGetExtension("GL_NV_half_float");
-  if (glewExperimental || GLEW_NV_half_float) CONST_CAST(GLEW_NV_half_float) = !_glewInit_GL_NV_half_float(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_half_float */
-#ifdef GL_NV_light_max_exponent
-  CONST_CAST(GLEW_NV_light_max_exponent) = glewGetExtension("GL_NV_light_max_exponent");
-#endif /* GL_NV_light_max_exponent */
-#ifdef GL_NV_multisample_filter_hint
-  CONST_CAST(GLEW_NV_multisample_filter_hint) = glewGetExtension("GL_NV_multisample_filter_hint");
-#endif /* GL_NV_multisample_filter_hint */
-#ifdef GL_NV_occlusion_query
-  CONST_CAST(GLEW_NV_occlusion_query) = glewGetExtension("GL_NV_occlusion_query");
-  if (glewExperimental || GLEW_NV_occlusion_query) CONST_CAST(GLEW_NV_occlusion_query) = !_glewInit_GL_NV_occlusion_query(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_occlusion_query */
-#ifdef GL_NV_packed_depth_stencil
-  CONST_CAST(GLEW_NV_packed_depth_stencil) = glewGetExtension("GL_NV_packed_depth_stencil");
-#endif /* GL_NV_packed_depth_stencil */
-#ifdef GL_NV_parameter_buffer_object
-  CONST_CAST(GLEW_NV_parameter_buffer_object) = glewGetExtension("GL_NV_parameter_buffer_object");
-  if (glewExperimental || GLEW_NV_parameter_buffer_object) CONST_CAST(GLEW_NV_parameter_buffer_object) = !_glewInit_GL_NV_parameter_buffer_object(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_parameter_buffer_object */
-#ifdef GL_NV_parameter_buffer_object2
-  CONST_CAST(GLEW_NV_parameter_buffer_object2) = glewGetExtension("GL_NV_parameter_buffer_object2");
-#endif /* GL_NV_parameter_buffer_object2 */
-#ifdef GL_NV_pixel_data_range
-  CONST_CAST(GLEW_NV_pixel_data_range) = glewGetExtension("GL_NV_pixel_data_range");
-  if (glewExperimental || GLEW_NV_pixel_data_range) CONST_CAST(GLEW_NV_pixel_data_range) = !_glewInit_GL_NV_pixel_data_range(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_pixel_data_range */
-#ifdef GL_NV_point_sprite
-  CONST_CAST(GLEW_NV_point_sprite) = glewGetExtension("GL_NV_point_sprite");
-  if (glewExperimental || GLEW_NV_point_sprite) CONST_CAST(GLEW_NV_point_sprite) = !_glewInit_GL_NV_point_sprite(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_point_sprite */
-#ifdef GL_NV_present_video
-  CONST_CAST(GLEW_NV_present_video) = glewGetExtension("GL_NV_present_video");
-  if (glewExperimental || GLEW_NV_present_video) CONST_CAST(GLEW_NV_present_video) = !_glewInit_GL_NV_present_video(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_present_video */
-#ifdef GL_NV_primitive_restart
-  CONST_CAST(GLEW_NV_primitive_restart) = glewGetExtension("GL_NV_primitive_restart");
-  if (glewExperimental || GLEW_NV_primitive_restart) CONST_CAST(GLEW_NV_primitive_restart) = !_glewInit_GL_NV_primitive_restart(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_primitive_restart */
-#ifdef GL_NV_register_combiners
-  CONST_CAST(GLEW_NV_register_combiners) = glewGetExtension("GL_NV_register_combiners");
-  if (glewExperimental || GLEW_NV_register_combiners) CONST_CAST(GLEW_NV_register_combiners) = !_glewInit_GL_NV_register_combiners(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_register_combiners */
-#ifdef GL_NV_register_combiners2
-  CONST_CAST(GLEW_NV_register_combiners2) = glewGetExtension("GL_NV_register_combiners2");
-  if (glewExperimental || GLEW_NV_register_combiners2) CONST_CAST(GLEW_NV_register_combiners2) = !_glewInit_GL_NV_register_combiners2(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_register_combiners2 */
-#ifdef GL_NV_shader_buffer_load
-  CONST_CAST(GLEW_NV_shader_buffer_load) = glewGetExtension("GL_NV_shader_buffer_load");
-  if (glewExperimental || GLEW_NV_shader_buffer_load) CONST_CAST(GLEW_NV_shader_buffer_load) = !_glewInit_GL_NV_shader_buffer_load(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_shader_buffer_load */
-#ifdef GL_NV_tessellation_program5
-  CONST_CAST(GLEW_NV_tessellation_program5) = glewGetExtension("GL_NV_gpu_program5");
-#endif /* GL_NV_tessellation_program5 */
-#ifdef GL_NV_texgen_emboss
-  CONST_CAST(GLEW_NV_texgen_emboss) = glewGetExtension("GL_NV_texgen_emboss");
-#endif /* GL_NV_texgen_emboss */
-#ifdef GL_NV_texgen_reflection
-  CONST_CAST(GLEW_NV_texgen_reflection) = glewGetExtension("GL_NV_texgen_reflection");
-#endif /* GL_NV_texgen_reflection */
-#ifdef GL_NV_texture_barrier
-  CONST_CAST(GLEW_NV_texture_barrier) = glewGetExtension("GL_NV_texture_barrier");
-  if (glewExperimental || GLEW_NV_texture_barrier) CONST_CAST(GLEW_NV_texture_barrier) = !_glewInit_GL_NV_texture_barrier(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_texture_barrier */
-#ifdef GL_NV_texture_compression_vtc
-  CONST_CAST(GLEW_NV_texture_compression_vtc) = glewGetExtension("GL_NV_texture_compression_vtc");
-#endif /* GL_NV_texture_compression_vtc */
-#ifdef GL_NV_texture_env_combine4
-  CONST_CAST(GLEW_NV_texture_env_combine4) = glewGetExtension("GL_NV_texture_env_combine4");
-#endif /* GL_NV_texture_env_combine4 */
-#ifdef GL_NV_texture_expand_normal
-  CONST_CAST(GLEW_NV_texture_expand_normal) = glewGetExtension("GL_NV_texture_expand_normal");
-#endif /* GL_NV_texture_expand_normal */
-#ifdef GL_NV_texture_rectangle
-  CONST_CAST(GLEW_NV_texture_rectangle) = glewGetExtension("GL_NV_texture_rectangle");
-#endif /* GL_NV_texture_rectangle */
-#ifdef GL_NV_texture_shader
-  CONST_CAST(GLEW_NV_texture_shader) = glewGetExtension("GL_NV_texture_shader");
-#endif /* GL_NV_texture_shader */
-#ifdef GL_NV_texture_shader2
-  CONST_CAST(GLEW_NV_texture_shader2) = glewGetExtension("GL_NV_texture_shader2");
-#endif /* GL_NV_texture_shader2 */
-#ifdef GL_NV_texture_shader3
-  CONST_CAST(GLEW_NV_texture_shader3) = glewGetExtension("GL_NV_texture_shader3");
-#endif /* GL_NV_texture_shader3 */
-#ifdef GL_NV_transform_feedback
-  CONST_CAST(GLEW_NV_transform_feedback) = glewGetExtension("GL_NV_transform_feedback");
-  if (glewExperimental || GLEW_NV_transform_feedback) CONST_CAST(GLEW_NV_transform_feedback) = !_glewInit_GL_NV_transform_feedback(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_transform_feedback */
-#ifdef GL_NV_transform_feedback2
-  CONST_CAST(GLEW_NV_transform_feedback2) = glewGetExtension("GL_NV_transform_feedback2");
-  if (glewExperimental || GLEW_NV_transform_feedback2) CONST_CAST(GLEW_NV_transform_feedback2) = !_glewInit_GL_NV_transform_feedback2(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_transform_feedback2 */
-#ifdef GL_NV_vertex_array_range
-  CONST_CAST(GLEW_NV_vertex_array_range) = glewGetExtension("GL_NV_vertex_array_range");
-  if (glewExperimental || GLEW_NV_vertex_array_range) CONST_CAST(GLEW_NV_vertex_array_range) = !_glewInit_GL_NV_vertex_array_range(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_vertex_array_range */
-#ifdef GL_NV_vertex_array_range2
-  CONST_CAST(GLEW_NV_vertex_array_range2) = glewGetExtension("GL_NV_vertex_array_range2");
-#endif /* GL_NV_vertex_array_range2 */
-#ifdef GL_NV_vertex_attrib_integer_64bit
-  CONST_CAST(GLEW_NV_vertex_attrib_integer_64bit) = glewGetExtension("GL_NV_vertex_attrib_integer_64bit");
-  if (glewExperimental || GLEW_NV_vertex_attrib_integer_64bit) CONST_CAST(GLEW_NV_vertex_attrib_integer_64bit) = !_glewInit_GL_NV_vertex_attrib_integer_64bit(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_vertex_attrib_integer_64bit */
-#ifdef GL_NV_vertex_buffer_unified_memory
-  CONST_CAST(GLEW_NV_vertex_buffer_unified_memory) = glewGetExtension("GL_NV_vertex_buffer_unified_memory");
-  if (glewExperimental || GLEW_NV_vertex_buffer_unified_memory) CONST_CAST(GLEW_NV_vertex_buffer_unified_memory) = !_glewInit_GL_NV_vertex_buffer_unified_memory(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_vertex_buffer_unified_memory */
-#ifdef GL_NV_vertex_program
-  CONST_CAST(GLEW_NV_vertex_program) = glewGetExtension("GL_NV_vertex_program");
-  if (glewExperimental || GLEW_NV_vertex_program) CONST_CAST(GLEW_NV_vertex_program) = !_glewInit_GL_NV_vertex_program(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_NV_vertex_program */
-#ifdef GL_NV_vertex_program1_1
-  CONST_CAST(GLEW_NV_vertex_program1_1) = glewGetExtension("GL_NV_vertex_program1_1");
-#endif /* GL_NV_vertex_program1_1 */
-#ifdef GL_NV_vertex_program2
-  CONST_CAST(GLEW_NV_vertex_program2) = glewGetExtension("GL_NV_vertex_program2");
-#endif /* GL_NV_vertex_program2 */
-#ifdef GL_NV_vertex_program2_option
-  CONST_CAST(GLEW_NV_vertex_program2_option) = glewGetExtension("GL_NV_vertex_program2_option");
-#endif /* GL_NV_vertex_program2_option */
-#ifdef GL_NV_vertex_program3
-  CONST_CAST(GLEW_NV_vertex_program3) = glewGetExtension("GL_NV_vertex_program3");
-#endif /* GL_NV_vertex_program3 */
-#ifdef GL_NV_vertex_program4
-  CONST_CAST(GLEW_NV_vertex_program4) = glewGetExtension("GL_NV_gpu_program4");
-#endif /* GL_NV_vertex_program4 */
-#ifdef GL_OES_byte_coordinates
-  CONST_CAST(GLEW_OES_byte_coordinates) = glewGetExtension("GL_OES_byte_coordinates");
-#endif /* GL_OES_byte_coordinates */
-#ifdef GL_OES_compressed_paletted_texture
-  CONST_CAST(GLEW_OES_compressed_paletted_texture) = glewGetExtension("GL_OES_compressed_paletted_texture");
-#endif /* GL_OES_compressed_paletted_texture */
-#ifdef GL_OES_read_format
-  CONST_CAST(GLEW_OES_read_format) = glewGetExtension("GL_OES_read_format");
-#endif /* GL_OES_read_format */
-#ifdef GL_OES_single_precision
-  CONST_CAST(GLEW_OES_single_precision) = glewGetExtension("GL_OES_single_precision");
-  if (glewExperimental || GLEW_OES_single_precision) CONST_CAST(GLEW_OES_single_precision) = !_glewInit_GL_OES_single_precision(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_OES_single_precision */
-#ifdef GL_OML_interlace
-  CONST_CAST(GLEW_OML_interlace) = glewGetExtension("GL_OML_interlace");
-#endif /* GL_OML_interlace */
-#ifdef GL_OML_resample
-  CONST_CAST(GLEW_OML_resample) = glewGetExtension("GL_OML_resample");
-#endif /* GL_OML_resample */
-#ifdef GL_OML_subsample
-  CONST_CAST(GLEW_OML_subsample) = glewGetExtension("GL_OML_subsample");
-#endif /* GL_OML_subsample */
-#ifdef GL_PGI_misc_hints
-  CONST_CAST(GLEW_PGI_misc_hints) = glewGetExtension("GL_PGI_misc_hints");
-#endif /* GL_PGI_misc_hints */
-#ifdef GL_PGI_vertex_hints
-  CONST_CAST(GLEW_PGI_vertex_hints) = glewGetExtension("GL_PGI_vertex_hints");
-#endif /* GL_PGI_vertex_hints */
-#ifdef GL_REND_screen_coordinates
-  CONST_CAST(GLEW_REND_screen_coordinates) = glewGetExtension("GL_REND_screen_coordinates");
-#endif /* GL_REND_screen_coordinates */
-#ifdef GL_S3_s3tc
-  CONST_CAST(GLEW_S3_s3tc) = glewGetExtension("GL_S3_s3tc");
-#endif /* GL_S3_s3tc */
-#ifdef GL_SGIS_color_range
-  CONST_CAST(GLEW_SGIS_color_range) = glewGetExtension("GL_SGIS_color_range");
-#endif /* GL_SGIS_color_range */
-#ifdef GL_SGIS_detail_texture
-  CONST_CAST(GLEW_SGIS_detail_texture) = glewGetExtension("GL_SGIS_detail_texture");
-  if (glewExperimental || GLEW_SGIS_detail_texture) CONST_CAST(GLEW_SGIS_detail_texture) = !_glewInit_GL_SGIS_detail_texture(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIS_detail_texture */
-#ifdef GL_SGIS_fog_function
-  CONST_CAST(GLEW_SGIS_fog_function) = glewGetExtension("GL_SGIS_fog_function");
-  if (glewExperimental || GLEW_SGIS_fog_function) CONST_CAST(GLEW_SGIS_fog_function) = !_glewInit_GL_SGIS_fog_function(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIS_fog_function */
-#ifdef GL_SGIS_generate_mipmap
-  CONST_CAST(GLEW_SGIS_generate_mipmap) = glewGetExtension("GL_SGIS_generate_mipmap");
-#endif /* GL_SGIS_generate_mipmap */
-#ifdef GL_SGIS_multisample
-  CONST_CAST(GLEW_SGIS_multisample) = glewGetExtension("GL_SGIS_multisample");
-  if (glewExperimental || GLEW_SGIS_multisample) CONST_CAST(GLEW_SGIS_multisample) = !_glewInit_GL_SGIS_multisample(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIS_multisample */
-#ifdef GL_SGIS_pixel_texture
-  CONST_CAST(GLEW_SGIS_pixel_texture) = glewGetExtension("GL_SGIS_pixel_texture");
-#endif /* GL_SGIS_pixel_texture */
-#ifdef GL_SGIS_point_line_texgen
-  CONST_CAST(GLEW_SGIS_point_line_texgen) = glewGetExtension("GL_SGIS_point_line_texgen");
-#endif /* GL_SGIS_point_line_texgen */
-#ifdef GL_SGIS_sharpen_texture
-  CONST_CAST(GLEW_SGIS_sharpen_texture) = glewGetExtension("GL_SGIS_sharpen_texture");
-  if (glewExperimental || GLEW_SGIS_sharpen_texture) CONST_CAST(GLEW_SGIS_sharpen_texture) = !_glewInit_GL_SGIS_sharpen_texture(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIS_sharpen_texture */
-#ifdef GL_SGIS_texture4D
-  CONST_CAST(GLEW_SGIS_texture4D) = glewGetExtension("GL_SGIS_texture4D");
-  if (glewExperimental || GLEW_SGIS_texture4D) CONST_CAST(GLEW_SGIS_texture4D) = !_glewInit_GL_SGIS_texture4D(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIS_texture4D */
-#ifdef GL_SGIS_texture_border_clamp
-  CONST_CAST(GLEW_SGIS_texture_border_clamp) = glewGetExtension("GL_SGIS_texture_border_clamp");
-#endif /* GL_SGIS_texture_border_clamp */
-#ifdef GL_SGIS_texture_edge_clamp
-  CONST_CAST(GLEW_SGIS_texture_edge_clamp) = glewGetExtension("GL_SGIS_texture_edge_clamp");
-#endif /* GL_SGIS_texture_edge_clamp */
-#ifdef GL_SGIS_texture_filter4
-  CONST_CAST(GLEW_SGIS_texture_filter4) = glewGetExtension("GL_SGIS_texture_filter4");
-  if (glewExperimental || GLEW_SGIS_texture_filter4) CONST_CAST(GLEW_SGIS_texture_filter4) = !_glewInit_GL_SGIS_texture_filter4(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIS_texture_filter4 */
-#ifdef GL_SGIS_texture_lod
-  CONST_CAST(GLEW_SGIS_texture_lod) = glewGetExtension("GL_SGIS_texture_lod");
-#endif /* GL_SGIS_texture_lod */
-#ifdef GL_SGIS_texture_select
-  CONST_CAST(GLEW_SGIS_texture_select) = glewGetExtension("GL_SGIS_texture_select");
-#endif /* GL_SGIS_texture_select */
-#ifdef GL_SGIX_async
-  CONST_CAST(GLEW_SGIX_async) = glewGetExtension("GL_SGIX_async");
-  if (glewExperimental || GLEW_SGIX_async) CONST_CAST(GLEW_SGIX_async) = !_glewInit_GL_SGIX_async(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIX_async */
-#ifdef GL_SGIX_async_histogram
-  CONST_CAST(GLEW_SGIX_async_histogram) = glewGetExtension("GL_SGIX_async_histogram");
-#endif /* GL_SGIX_async_histogram */
-#ifdef GL_SGIX_async_pixel
-  CONST_CAST(GLEW_SGIX_async_pixel) = glewGetExtension("GL_SGIX_async_pixel");
-#endif /* GL_SGIX_async_pixel */
-#ifdef GL_SGIX_blend_alpha_minmax
-  CONST_CAST(GLEW_SGIX_blend_alpha_minmax) = glewGetExtension("GL_SGIX_blend_alpha_minmax");
-#endif /* GL_SGIX_blend_alpha_minmax */
-#ifdef GL_SGIX_clipmap
-  CONST_CAST(GLEW_SGIX_clipmap) = glewGetExtension("GL_SGIX_clipmap");
-#endif /* GL_SGIX_clipmap */
-#ifdef GL_SGIX_convolution_accuracy
-  CONST_CAST(GLEW_SGIX_convolution_accuracy) = glewGetExtension("GL_SGIX_convolution_accuracy");
-#endif /* GL_SGIX_convolution_accuracy */
-#ifdef GL_SGIX_depth_texture
-  CONST_CAST(GLEW_SGIX_depth_texture) = glewGetExtension("GL_SGIX_depth_texture");
-#endif /* GL_SGIX_depth_texture */
-#ifdef GL_SGIX_flush_raster
-  CONST_CAST(GLEW_SGIX_flush_raster) = glewGetExtension("GL_SGIX_flush_raster");
-  if (glewExperimental || GLEW_SGIX_flush_raster) CONST_CAST(GLEW_SGIX_flush_raster) = !_glewInit_GL_SGIX_flush_raster(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIX_flush_raster */
-#ifdef GL_SGIX_fog_offset
-  CONST_CAST(GLEW_SGIX_fog_offset) = glewGetExtension("GL_SGIX_fog_offset");
-#endif /* GL_SGIX_fog_offset */
-#ifdef GL_SGIX_fog_texture
-  CONST_CAST(GLEW_SGIX_fog_texture) = glewGetExtension("GL_SGIX_fog_texture");
-  if (glewExperimental || GLEW_SGIX_fog_texture) CONST_CAST(GLEW_SGIX_fog_texture) = !_glewInit_GL_SGIX_fog_texture(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIX_fog_texture */
-#ifdef GL_SGIX_fragment_specular_lighting
-  CONST_CAST(GLEW_SGIX_fragment_specular_lighting) = glewGetExtension("GL_SGIX_fragment_specular_lighting");
-  if (glewExperimental || GLEW_SGIX_fragment_specular_lighting) CONST_CAST(GLEW_SGIX_fragment_specular_lighting) = !_glewInit_GL_SGIX_fragment_specular_lighting(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIX_fragment_specular_lighting */
-#ifdef GL_SGIX_framezoom
-  CONST_CAST(GLEW_SGIX_framezoom) = glewGetExtension("GL_SGIX_framezoom");
-  if (glewExperimental || GLEW_SGIX_framezoom) CONST_CAST(GLEW_SGIX_framezoom) = !_glewInit_GL_SGIX_framezoom(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIX_framezoom */
-#ifdef GL_SGIX_interlace
-  CONST_CAST(GLEW_SGIX_interlace) = glewGetExtension("GL_SGIX_interlace");
-#endif /* GL_SGIX_interlace */
-#ifdef GL_SGIX_ir_instrument1
-  CONST_CAST(GLEW_SGIX_ir_instrument1) = glewGetExtension("GL_SGIX_ir_instrument1");
-#endif /* GL_SGIX_ir_instrument1 */
-#ifdef GL_SGIX_list_priority
-  CONST_CAST(GLEW_SGIX_list_priority) = glewGetExtension("GL_SGIX_list_priority");
-#endif /* GL_SGIX_list_priority */
-#ifdef GL_SGIX_pixel_texture
-  CONST_CAST(GLEW_SGIX_pixel_texture) = glewGetExtension("GL_SGIX_pixel_texture");
-  if (glewExperimental || GLEW_SGIX_pixel_texture) CONST_CAST(GLEW_SGIX_pixel_texture) = !_glewInit_GL_SGIX_pixel_texture(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIX_pixel_texture */
-#ifdef GL_SGIX_pixel_texture_bits
-  CONST_CAST(GLEW_SGIX_pixel_texture_bits) = glewGetExtension("GL_SGIX_pixel_texture_bits");
-#endif /* GL_SGIX_pixel_texture_bits */
-#ifdef GL_SGIX_reference_plane
-  CONST_CAST(GLEW_SGIX_reference_plane) = glewGetExtension("GL_SGIX_reference_plane");
-  if (glewExperimental || GLEW_SGIX_reference_plane) CONST_CAST(GLEW_SGIX_reference_plane) = !_glewInit_GL_SGIX_reference_plane(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIX_reference_plane */
-#ifdef GL_SGIX_resample
-  CONST_CAST(GLEW_SGIX_resample) = glewGetExtension("GL_SGIX_resample");
-#endif /* GL_SGIX_resample */
-#ifdef GL_SGIX_shadow
-  CONST_CAST(GLEW_SGIX_shadow) = glewGetExtension("GL_SGIX_shadow");
-#endif /* GL_SGIX_shadow */
-#ifdef GL_SGIX_shadow_ambient
-  CONST_CAST(GLEW_SGIX_shadow_ambient) = glewGetExtension("GL_SGIX_shadow_ambient");
-#endif /* GL_SGIX_shadow_ambient */
-#ifdef GL_SGIX_sprite
-  CONST_CAST(GLEW_SGIX_sprite) = glewGetExtension("GL_SGIX_sprite");
-  if (glewExperimental || GLEW_SGIX_sprite) CONST_CAST(GLEW_SGIX_sprite) = !_glewInit_GL_SGIX_sprite(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIX_sprite */
-#ifdef GL_SGIX_tag_sample_buffer
-  CONST_CAST(GLEW_SGIX_tag_sample_buffer) = glewGetExtension("GL_SGIX_tag_sample_buffer");
-  if (glewExperimental || GLEW_SGIX_tag_sample_buffer) CONST_CAST(GLEW_SGIX_tag_sample_buffer) = !_glewInit_GL_SGIX_tag_sample_buffer(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGIX_tag_sample_buffer */
-#ifdef GL_SGIX_texture_add_env
-  CONST_CAST(GLEW_SGIX_texture_add_env) = glewGetExtension("GL_SGIX_texture_add_env");
-#endif /* GL_SGIX_texture_add_env */
-#ifdef GL_SGIX_texture_coordinate_clamp
-  CONST_CAST(GLEW_SGIX_texture_coordinate_clamp) = glewGetExtension("GL_SGIX_texture_coordinate_clamp");
-#endif /* GL_SGIX_texture_coordinate_clamp */
-#ifdef GL_SGIX_texture_lod_bias
-  CONST_CAST(GLEW_SGIX_texture_lod_bias) = glewGetExtension("GL_SGIX_texture_lod_bias");
-#endif /* GL_SGIX_texture_lod_bias */
-#ifdef GL_SGIX_texture_multi_buffer
-  CONST_CAST(GLEW_SGIX_texture_multi_buffer) = glewGetExtension("GL_SGIX_texture_multi_buffer");
-#endif /* GL_SGIX_texture_multi_buffer */
-#ifdef GL_SGIX_texture_range
-  CONST_CAST(GLEW_SGIX_texture_range) = glewGetExtension("GL_SGIX_texture_range");
-#endif /* GL_SGIX_texture_range */
-#ifdef GL_SGIX_texture_scale_bias
-  CONST_CAST(GLEW_SGIX_texture_scale_bias) = glewGetExtension("GL_SGIX_texture_scale_bias");
-#endif /* GL_SGIX_texture_scale_bias */
-#ifdef GL_SGIX_vertex_preclip
-  CONST_CAST(GLEW_SGIX_vertex_preclip) = glewGetExtension("GL_SGIX_vertex_preclip");
-#endif /* GL_SGIX_vertex_preclip */
-#ifdef GL_SGIX_vertex_preclip_hint
-  CONST_CAST(GLEW_SGIX_vertex_preclip_hint) = glewGetExtension("GL_SGIX_vertex_preclip_hint");
-#endif /* GL_SGIX_vertex_preclip_hint */
-#ifdef GL_SGIX_ycrcb
-  CONST_CAST(GLEW_SGIX_ycrcb) = glewGetExtension("GL_SGIX_ycrcb");
-#endif /* GL_SGIX_ycrcb */
-#ifdef GL_SGI_color_matrix
-  CONST_CAST(GLEW_SGI_color_matrix) = glewGetExtension("GL_SGI_color_matrix");
-#endif /* GL_SGI_color_matrix */
-#ifdef GL_SGI_color_table
-  CONST_CAST(GLEW_SGI_color_table) = glewGetExtension("GL_SGI_color_table");
-  if (glewExperimental || GLEW_SGI_color_table) CONST_CAST(GLEW_SGI_color_table) = !_glewInit_GL_SGI_color_table(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SGI_color_table */
-#ifdef GL_SGI_texture_color_table
-  CONST_CAST(GLEW_SGI_texture_color_table) = glewGetExtension("GL_SGI_texture_color_table");
-#endif /* GL_SGI_texture_color_table */
-#ifdef GL_SUNX_constant_data
-  CONST_CAST(GLEW_SUNX_constant_data) = glewGetExtension("GL_SUNX_constant_data");
-  if (glewExperimental || GLEW_SUNX_constant_data) CONST_CAST(GLEW_SUNX_constant_data) = !_glewInit_GL_SUNX_constant_data(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SUNX_constant_data */
-#ifdef GL_SUN_convolution_border_modes
-  CONST_CAST(GLEW_SUN_convolution_border_modes) = glewGetExtension("GL_SUN_convolution_border_modes");
-#endif /* GL_SUN_convolution_border_modes */
-#ifdef GL_SUN_global_alpha
-  CONST_CAST(GLEW_SUN_global_alpha) = glewGetExtension("GL_SUN_global_alpha");
-  if (glewExperimental || GLEW_SUN_global_alpha) CONST_CAST(GLEW_SUN_global_alpha) = !_glewInit_GL_SUN_global_alpha(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SUN_global_alpha */
-#ifdef GL_SUN_mesh_array
-  CONST_CAST(GLEW_SUN_mesh_array) = glewGetExtension("GL_SUN_mesh_array");
-#endif /* GL_SUN_mesh_array */
-#ifdef GL_SUN_read_video_pixels
-  CONST_CAST(GLEW_SUN_read_video_pixels) = glewGetExtension("GL_SUN_read_video_pixels");
-  if (glewExperimental || GLEW_SUN_read_video_pixels) CONST_CAST(GLEW_SUN_read_video_pixels) = !_glewInit_GL_SUN_read_video_pixels(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SUN_read_video_pixels */
-#ifdef GL_SUN_slice_accum
-  CONST_CAST(GLEW_SUN_slice_accum) = glewGetExtension("GL_SUN_slice_accum");
-#endif /* GL_SUN_slice_accum */
-#ifdef GL_SUN_triangle_list
-  CONST_CAST(GLEW_SUN_triangle_list) = glewGetExtension("GL_SUN_triangle_list");
-  if (glewExperimental || GLEW_SUN_triangle_list) CONST_CAST(GLEW_SUN_triangle_list) = !_glewInit_GL_SUN_triangle_list(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SUN_triangle_list */
-#ifdef GL_SUN_vertex
-  CONST_CAST(GLEW_SUN_vertex) = glewGetExtension("GL_SUN_vertex");
-  if (glewExperimental || GLEW_SUN_vertex) CONST_CAST(GLEW_SUN_vertex) = !_glewInit_GL_SUN_vertex(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_SUN_vertex */
-#ifdef GL_WIN_phong_shading
-  CONST_CAST(GLEW_WIN_phong_shading) = glewGetExtension("GL_WIN_phong_shading");
-#endif /* GL_WIN_phong_shading */
-#ifdef GL_WIN_specular_fog
-  CONST_CAST(GLEW_WIN_specular_fog) = glewGetExtension("GL_WIN_specular_fog");
-#endif /* GL_WIN_specular_fog */
-#ifdef GL_WIN_swap_hint
-  CONST_CAST(GLEW_WIN_swap_hint) = glewGetExtension("GL_WIN_swap_hint");
-  if (glewExperimental || GLEW_WIN_swap_hint) CONST_CAST(GLEW_WIN_swap_hint) = !_glewInit_GL_WIN_swap_hint(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GL_WIN_swap_hint */
-
-  return GLEW_OK;
-}
-
-
-#if defined(_WIN32)
-
-#if !defined(GLEW_MX)
-
-PFNWGLSETSTEREOEMITTERSTATE3DLPROC __wglewSetStereoEmitterState3DL = NULL;
-
-PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC __wglewBlitContextFramebufferAMD = NULL;
-PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC __wglewCreateAssociatedContextAMD = NULL;
-PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC __wglewCreateAssociatedContextAttribsAMD = NULL;
-PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC __wglewDeleteAssociatedContextAMD = NULL;
-PFNWGLGETCONTEXTGPUIDAMDPROC __wglewGetContextGPUIDAMD = NULL;
-PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC __wglewGetCurrentAssociatedContextAMD = NULL;
-PFNWGLGETGPUIDSAMDPROC __wglewGetGPUIDsAMD = NULL;
-PFNWGLGETGPUINFOAMDPROC __wglewGetGPUInfoAMD = NULL;
-PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC __wglewMakeAssociatedContextCurrentAMD = NULL;
-
-PFNWGLCREATEBUFFERREGIONARBPROC __wglewCreateBufferRegionARB = NULL;
-PFNWGLDELETEBUFFERREGIONARBPROC __wglewDeleteBufferRegionARB = NULL;
-PFNWGLRESTOREBUFFERREGIONARBPROC __wglewRestoreBufferRegionARB = NULL;
-PFNWGLSAVEBUFFERREGIONARBPROC __wglewSaveBufferRegionARB = NULL;
-
-PFNWGLCREATECONTEXTATTRIBSARBPROC __wglewCreateContextAttribsARB = NULL;
-
-PFNWGLGETEXTENSIONSSTRINGARBPROC __wglewGetExtensionsStringARB = NULL;
-
-PFNWGLGETCURRENTREADDCARBPROC __wglewGetCurrentReadDCARB = NULL;
-PFNWGLMAKECONTEXTCURRENTARBPROC __wglewMakeContextCurrentARB = NULL;
-
-PFNWGLCREATEPBUFFERARBPROC __wglewCreatePbufferARB = NULL;
-PFNWGLDESTROYPBUFFERARBPROC __wglewDestroyPbufferARB = NULL;
-PFNWGLGETPBUFFERDCARBPROC __wglewGetPbufferDCARB = NULL;
-PFNWGLQUERYPBUFFERARBPROC __wglewQueryPbufferARB = NULL;
-PFNWGLRELEASEPBUFFERDCARBPROC __wglewReleasePbufferDCARB = NULL;
-
-PFNWGLCHOOSEPIXELFORMATARBPROC __wglewChoosePixelFormatARB = NULL;
-PFNWGLGETPIXELFORMATATTRIBFVARBPROC __wglewGetPixelFormatAttribfvARB = NULL;
-PFNWGLGETPIXELFORMATATTRIBIVARBPROC __wglewGetPixelFormatAttribivARB = NULL;
-
-PFNWGLBINDTEXIMAGEARBPROC __wglewBindTexImageARB = NULL;
-PFNWGLRELEASETEXIMAGEARBPROC __wglewReleaseTexImageARB = NULL;
-PFNWGLSETPBUFFERATTRIBARBPROC __wglewSetPbufferAttribARB = NULL;
-
-PFNWGLBINDDISPLAYCOLORTABLEEXTPROC __wglewBindDisplayColorTableEXT = NULL;
-PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC __wglewCreateDisplayColorTableEXT = NULL;
-PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC __wglewDestroyDisplayColorTableEXT = NULL;
-PFNWGLLOADDISPLAYCOLORTABLEEXTPROC __wglewLoadDisplayColorTableEXT = NULL;
-
-PFNWGLGETEXTENSIONSSTRINGEXTPROC __wglewGetExtensionsStringEXT = NULL;
-
-PFNWGLGETCURRENTREADDCEXTPROC __wglewGetCurrentReadDCEXT = NULL;
-PFNWGLMAKECONTEXTCURRENTEXTPROC __wglewMakeContextCurrentEXT = NULL;
-
-PFNWGLCREATEPBUFFEREXTPROC __wglewCreatePbufferEXT = NULL;
-PFNWGLDESTROYPBUFFEREXTPROC __wglewDestroyPbufferEXT = NULL;
-PFNWGLGETPBUFFERDCEXTPROC __wglewGetPbufferDCEXT = NULL;
-PFNWGLQUERYPBUFFEREXTPROC __wglewQueryPbufferEXT = NULL;
-PFNWGLRELEASEPBUFFERDCEXTPROC __wglewReleasePbufferDCEXT = NULL;
-
-PFNWGLCHOOSEPIXELFORMATEXTPROC __wglewChoosePixelFormatEXT = NULL;
-PFNWGLGETPIXELFORMATATTRIBFVEXTPROC __wglewGetPixelFormatAttribfvEXT = NULL;
-PFNWGLGETPIXELFORMATATTRIBIVEXTPROC __wglewGetPixelFormatAttribivEXT = NULL;
-
-PFNWGLGETSWAPINTERVALEXTPROC __wglewGetSwapIntervalEXT = NULL;
-PFNWGLSWAPINTERVALEXTPROC __wglewSwapIntervalEXT = NULL;
-
-PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC __wglewGetDigitalVideoParametersI3D = NULL;
-PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC __wglewSetDigitalVideoParametersI3D = NULL;
-
-PFNWGLGETGAMMATABLEI3DPROC __wglewGetGammaTableI3D = NULL;
-PFNWGLGETGAMMATABLEPARAMETERSI3DPROC __wglewGetGammaTableParametersI3D = NULL;
-PFNWGLSETGAMMATABLEI3DPROC __wglewSetGammaTableI3D = NULL;
-PFNWGLSETGAMMATABLEPARAMETERSI3DPROC __wglewSetGammaTableParametersI3D = NULL;
-
-PFNWGLDISABLEGENLOCKI3DPROC __wglewDisableGenlockI3D = NULL;
-PFNWGLENABLEGENLOCKI3DPROC __wglewEnableGenlockI3D = NULL;
-PFNWGLGENLOCKSAMPLERATEI3DPROC __wglewGenlockSampleRateI3D = NULL;
-PFNWGLGENLOCKSOURCEDELAYI3DPROC __wglewGenlockSourceDelayI3D = NULL;
-PFNWGLGENLOCKSOURCEEDGEI3DPROC __wglewGenlockSourceEdgeI3D = NULL;
-PFNWGLGENLOCKSOURCEI3DPROC __wglewGenlockSourceI3D = NULL;
-PFNWGLGETGENLOCKSAMPLERATEI3DPROC __wglewGetGenlockSampleRateI3D = NULL;
-PFNWGLGETGENLOCKSOURCEDELAYI3DPROC __wglewGetGenlockSourceDelayI3D = NULL;
-PFNWGLGETGENLOCKSOURCEEDGEI3DPROC __wglewGetGenlockSourceEdgeI3D = NULL;
-PFNWGLGETGENLOCKSOURCEI3DPROC __wglewGetGenlockSourceI3D = NULL;
-PFNWGLISENABLEDGENLOCKI3DPROC __wglewIsEnabledGenlockI3D = NULL;
-PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC __wglewQueryGenlockMaxSourceDelayI3D = NULL;
-
-PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC __wglewAssociateImageBufferEventsI3D = NULL;
-PFNWGLCREATEIMAGEBUFFERI3DPROC __wglewCreateImageBufferI3D = NULL;
-PFNWGLDESTROYIMAGEBUFFERI3DPROC __wglewDestroyImageBufferI3D = NULL;
-PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC __wglewReleaseImageBufferEventsI3D = NULL;
-
-PFNWGLDISABLEFRAMELOCKI3DPROC __wglewDisableFrameLockI3D = NULL;
-PFNWGLENABLEFRAMELOCKI3DPROC __wglewEnableFrameLockI3D = NULL;
-PFNWGLISENABLEDFRAMELOCKI3DPROC __wglewIsEnabledFrameLockI3D = NULL;
-PFNWGLQUERYFRAMELOCKMASTERI3DPROC __wglewQueryFrameLockMasterI3D = NULL;
-
-PFNWGLBEGINFRAMETRACKINGI3DPROC __wglewBeginFrameTrackingI3D = NULL;
-PFNWGLENDFRAMETRACKINGI3DPROC __wglewEndFrameTrackingI3D = NULL;
-PFNWGLGETFRAMEUSAGEI3DPROC __wglewGetFrameUsageI3D = NULL;
-PFNWGLQUERYFRAMETRACKINGI3DPROC __wglewQueryFrameTrackingI3D = NULL;
-
-PFNWGLCOPYIMAGESUBDATANVPROC __wglewCopyImageSubDataNV = NULL;
-
-PFNWGLCREATEAFFINITYDCNVPROC __wglewCreateAffinityDCNV = NULL;
-PFNWGLDELETEDCNVPROC __wglewDeleteDCNV = NULL;
-PFNWGLENUMGPUDEVICESNVPROC __wglewEnumGpuDevicesNV = NULL;
-PFNWGLENUMGPUSFROMAFFINITYDCNVPROC __wglewEnumGpusFromAffinityDCNV = NULL;
-PFNWGLENUMGPUSNVPROC __wglewEnumGpusNV = NULL;
-
-PFNWGLBINDVIDEODEVICENVPROC __wglewBindVideoDeviceNV = NULL;
-PFNWGLENUMERATEVIDEODEVICESNVPROC __wglewEnumerateVideoDevicesNV = NULL;
-PFNWGLQUERYCURRENTCONTEXTNVPROC __wglewQueryCurrentContextNV = NULL;
-
-PFNWGLBINDSWAPBARRIERNVPROC __wglewBindSwapBarrierNV = NULL;
-PFNWGLJOINSWAPGROUPNVPROC __wglewJoinSwapGroupNV = NULL;
-PFNWGLQUERYFRAMECOUNTNVPROC __wglewQueryFrameCountNV = NULL;
-PFNWGLQUERYMAXSWAPGROUPSNVPROC __wglewQueryMaxSwapGroupsNV = NULL;
-PFNWGLQUERYSWAPGROUPNVPROC __wglewQuerySwapGroupNV = NULL;
-PFNWGLRESETFRAMECOUNTNVPROC __wglewResetFrameCountNV = NULL;
-
-PFNWGLALLOCATEMEMORYNVPROC __wglewAllocateMemoryNV = NULL;
-PFNWGLFREEMEMORYNVPROC __wglewFreeMemoryNV = NULL;
-
-PFNWGLBINDVIDEOIMAGENVPROC __wglewBindVideoImageNV = NULL;
-PFNWGLGETVIDEODEVICENVPROC __wglewGetVideoDeviceNV = NULL;
-PFNWGLGETVIDEOINFONVPROC __wglewGetVideoInfoNV = NULL;
-PFNWGLRELEASEVIDEODEVICENVPROC __wglewReleaseVideoDeviceNV = NULL;
-PFNWGLRELEASEVIDEOIMAGENVPROC __wglewReleaseVideoImageNV = NULL;
-PFNWGLSENDPBUFFERTOVIDEONVPROC __wglewSendPbufferToVideoNV = NULL;
-
-PFNWGLGETMSCRATEOMLPROC __wglewGetMscRateOML = NULL;
-PFNWGLGETSYNCVALUESOMLPROC __wglewGetSyncValuesOML = NULL;
-PFNWGLSWAPBUFFERSMSCOMLPROC __wglewSwapBuffersMscOML = NULL;
-PFNWGLSWAPLAYERBUFFERSMSCOMLPROC __wglewSwapLayerBuffersMscOML = NULL;
-PFNWGLWAITFORMSCOMLPROC __wglewWaitForMscOML = NULL;
-PFNWGLWAITFORSBCOMLPROC __wglewWaitForSbcOML = NULL;
-GLboolean __WGLEW_3DFX_multisample = GL_FALSE;
-GLboolean __WGLEW_3DL_stereo_control = GL_FALSE;
-GLboolean __WGLEW_AMD_gpu_association = GL_FALSE;
-GLboolean __WGLEW_ARB_buffer_region = GL_FALSE;
-GLboolean __WGLEW_ARB_create_context = GL_FALSE;
-GLboolean __WGLEW_ARB_create_context_profile = GL_FALSE;
-GLboolean __WGLEW_ARB_extensions_string = GL_FALSE;
-GLboolean __WGLEW_ARB_framebuffer_sRGB = GL_FALSE;
-GLboolean __WGLEW_ARB_make_current_read = GL_FALSE;
-GLboolean __WGLEW_ARB_multisample = GL_FALSE;
-GLboolean __WGLEW_ARB_pbuffer = GL_FALSE;
-GLboolean __WGLEW_ARB_pixel_format = GL_FALSE;
-GLboolean __WGLEW_ARB_pixel_format_float = GL_FALSE;
-GLboolean __WGLEW_ARB_render_texture = GL_FALSE;
-GLboolean __WGLEW_ATI_pixel_format_float = GL_FALSE;
-GLboolean __WGLEW_ATI_render_texture_rectangle = GL_FALSE;
-GLboolean __WGLEW_EXT_depth_float = GL_FALSE;
-GLboolean __WGLEW_EXT_display_color_table = GL_FALSE;
-GLboolean __WGLEW_EXT_extensions_string = GL_FALSE;
-GLboolean __WGLEW_EXT_framebuffer_sRGB = GL_FALSE;
-GLboolean __WGLEW_EXT_make_current_read = GL_FALSE;
-GLboolean __WGLEW_EXT_multisample = GL_FALSE;
-GLboolean __WGLEW_EXT_pbuffer = GL_FALSE;
-GLboolean __WGLEW_EXT_pixel_format = GL_FALSE;
-GLboolean __WGLEW_EXT_pixel_format_packed_float = GL_FALSE;
-GLboolean __WGLEW_EXT_swap_control = GL_FALSE;
-GLboolean __WGLEW_I3D_digital_video_control = GL_FALSE;
-GLboolean __WGLEW_I3D_gamma = GL_FALSE;
-GLboolean __WGLEW_I3D_genlock = GL_FALSE;
-GLboolean __WGLEW_I3D_image_buffer = GL_FALSE;
-GLboolean __WGLEW_I3D_swap_frame_lock = GL_FALSE;
-GLboolean __WGLEW_I3D_swap_frame_usage = GL_FALSE;
-GLboolean __WGLEW_NV_copy_image = GL_FALSE;
-GLboolean __WGLEW_NV_float_buffer = GL_FALSE;
-GLboolean __WGLEW_NV_gpu_affinity = GL_FALSE;
-GLboolean __WGLEW_NV_present_video = GL_FALSE;
-GLboolean __WGLEW_NV_render_depth_texture = GL_FALSE;
-GLboolean __WGLEW_NV_render_texture_rectangle = GL_FALSE;
-GLboolean __WGLEW_NV_swap_group = GL_FALSE;
-GLboolean __WGLEW_NV_vertex_array_range = GL_FALSE;
-GLboolean __WGLEW_NV_video_output = GL_FALSE;
-GLboolean __WGLEW_OML_sync_control = GL_FALSE;
-
-#endif /* !GLEW_MX */
-
-#ifdef WGL_3DFX_multisample
-
-#endif /* WGL_3DFX_multisample */
-
-#ifdef WGL_3DL_stereo_control
-
-static GLboolean _glewInit_WGL_3DL_stereo_control (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglSetStereoEmitterState3DL = (PFNWGLSETSTEREOEMITTERSTATE3DLPROC)glewGetProcAddress((const GLubyte*)"wglSetStereoEmitterState3DL")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_3DL_stereo_control */
-
-#ifdef WGL_AMD_gpu_association
-
-static GLboolean _glewInit_WGL_AMD_gpu_association (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglBlitContextFramebufferAMD = (PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC)glewGetProcAddress((const GLubyte*)"wglBlitContextFramebufferAMD")) == NULL) || r;
-  r = ((wglCreateAssociatedContextAMD = (PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC)glewGetProcAddress((const GLubyte*)"wglCreateAssociatedContextAMD")) == NULL) || r;
-  r = ((wglCreateAssociatedContextAttribsAMD = (PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC)glewGetProcAddress((const GLubyte*)"wglCreateAssociatedContextAttribsAMD")) == NULL) || r;
-  r = ((wglDeleteAssociatedContextAMD = (PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC)glewGetProcAddress((const GLubyte*)"wglDeleteAssociatedContextAMD")) == NULL) || r;
-  r = ((wglGetContextGPUIDAMD = (PFNWGLGETCONTEXTGPUIDAMDPROC)glewGetProcAddress((const GLubyte*)"wglGetContextGPUIDAMD")) == NULL) || r;
-  r = ((wglGetCurrentAssociatedContextAMD = (PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC)glewGetProcAddress((const GLubyte*)"wglGetCurrentAssociatedContextAMD")) == NULL) || r;
-  r = ((wglGetGPUIDsAMD = (PFNWGLGETGPUIDSAMDPROC)glewGetProcAddress((const GLubyte*)"wglGetGPUIDsAMD")) == NULL) || r;
-  r = ((wglGetGPUInfoAMD = (PFNWGLGETGPUINFOAMDPROC)glewGetProcAddress((const GLubyte*)"wglGetGPUInfoAMD")) == NULL) || r;
-  r = ((wglMakeAssociatedContextCurrentAMD = (PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC)glewGetProcAddress((const GLubyte*)"wglMakeAssociatedContextCurrentAMD")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_AMD_gpu_association */
-
-#ifdef WGL_ARB_buffer_region
-
-static GLboolean _glewInit_WGL_ARB_buffer_region (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglCreateBufferRegionARB = (PFNWGLCREATEBUFFERREGIONARBPROC)glewGetProcAddress((const GLubyte*)"wglCreateBufferRegionARB")) == NULL) || r;
-  r = ((wglDeleteBufferRegionARB = (PFNWGLDELETEBUFFERREGIONARBPROC)glewGetProcAddress((const GLubyte*)"wglDeleteBufferRegionARB")) == NULL) || r;
-  r = ((wglRestoreBufferRegionARB = (PFNWGLRESTOREBUFFERREGIONARBPROC)glewGetProcAddress((const GLubyte*)"wglRestoreBufferRegionARB")) == NULL) || r;
-  r = ((wglSaveBufferRegionARB = (PFNWGLSAVEBUFFERREGIONARBPROC)glewGetProcAddress((const GLubyte*)"wglSaveBufferRegionARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_ARB_buffer_region */
-
-#ifdef WGL_ARB_create_context
-
-static GLboolean _glewInit_WGL_ARB_create_context (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglCreateContextAttribsARB = (PFNWGLCREATECONTEXTATTRIBSARBPROC)glewGetProcAddress((const GLubyte*)"wglCreateContextAttribsARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_ARB_create_context */
-
-#ifdef WGL_ARB_create_context_profile
-
-#endif /* WGL_ARB_create_context_profile */
-
-#ifdef WGL_ARB_extensions_string
-
-static GLboolean _glewInit_WGL_ARB_extensions_string (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglGetExtensionsStringARB = (PFNWGLGETEXTENSIONSSTRINGARBPROC)glewGetProcAddress((const GLubyte*)"wglGetExtensionsStringARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_ARB_extensions_string */
-
-#ifdef WGL_ARB_framebuffer_sRGB
-
-#endif /* WGL_ARB_framebuffer_sRGB */
-
-#ifdef WGL_ARB_make_current_read
-
-static GLboolean _glewInit_WGL_ARB_make_current_read (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglGetCurrentReadDCARB = (PFNWGLGETCURRENTREADDCARBPROC)glewGetProcAddress((const GLubyte*)"wglGetCurrentReadDCARB")) == NULL) || r;
-  r = ((wglMakeContextCurrentARB = (PFNWGLMAKECONTEXTCURRENTARBPROC)glewGetProcAddress((const GLubyte*)"wglMakeContextCurrentARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_ARB_make_current_read */
-
-#ifdef WGL_ARB_multisample
-
-#endif /* WGL_ARB_multisample */
-
-#ifdef WGL_ARB_pbuffer
-
-static GLboolean _glewInit_WGL_ARB_pbuffer (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglCreatePbufferARB = (PFNWGLCREATEPBUFFERARBPROC)glewGetProcAddress((const GLubyte*)"wglCreatePbufferARB")) == NULL) || r;
-  r = ((wglDestroyPbufferARB = (PFNWGLDESTROYPBUFFERARBPROC)glewGetProcAddress((const GLubyte*)"wglDestroyPbufferARB")) == NULL) || r;
-  r = ((wglGetPbufferDCARB = (PFNWGLGETPBUFFERDCARBPROC)glewGetProcAddress((const GLubyte*)"wglGetPbufferDCARB")) == NULL) || r;
-  r = ((wglQueryPbufferARB = (PFNWGLQUERYPBUFFERARBPROC)glewGetProcAddress((const GLubyte*)"wglQueryPbufferARB")) == NULL) || r;
-  r = ((wglReleasePbufferDCARB = (PFNWGLRELEASEPBUFFERDCARBPROC)glewGetProcAddress((const GLubyte*)"wglReleasePbufferDCARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_ARB_pbuffer */
-
-#ifdef WGL_ARB_pixel_format
-
-static GLboolean _glewInit_WGL_ARB_pixel_format (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglChoosePixelFormatARB = (PFNWGLCHOOSEPIXELFORMATARBPROC)glewGetProcAddress((const GLubyte*)"wglChoosePixelFormatARB")) == NULL) || r;
-  r = ((wglGetPixelFormatAttribfvARB = (PFNWGLGETPIXELFORMATATTRIBFVARBPROC)glewGetProcAddress((const GLubyte*)"wglGetPixelFormatAttribfvARB")) == NULL) || r;
-  r = ((wglGetPixelFormatAttribivARB = (PFNWGLGETPIXELFORMATATTRIBIVARBPROC)glewGetProcAddress((const GLubyte*)"wglGetPixelFormatAttribivARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_ARB_pixel_format */
-
-#ifdef WGL_ARB_pixel_format_float
-
-#endif /* WGL_ARB_pixel_format_float */
-
-#ifdef WGL_ARB_render_texture
-
-static GLboolean _glewInit_WGL_ARB_render_texture (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglBindTexImageARB = (PFNWGLBINDTEXIMAGEARBPROC)glewGetProcAddress((const GLubyte*)"wglBindTexImageARB")) == NULL) || r;
-  r = ((wglReleaseTexImageARB = (PFNWGLRELEASETEXIMAGEARBPROC)glewGetProcAddress((const GLubyte*)"wglReleaseTexImageARB")) == NULL) || r;
-  r = ((wglSetPbufferAttribARB = (PFNWGLSETPBUFFERATTRIBARBPROC)glewGetProcAddress((const GLubyte*)"wglSetPbufferAttribARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_ARB_render_texture */
-
-#ifdef WGL_ATI_pixel_format_float
-
-#endif /* WGL_ATI_pixel_format_float */
-
-#ifdef WGL_ATI_render_texture_rectangle
-
-#endif /* WGL_ATI_render_texture_rectangle */
-
-#ifdef WGL_EXT_depth_float
-
-#endif /* WGL_EXT_depth_float */
-
-#ifdef WGL_EXT_display_color_table
-
-static GLboolean _glewInit_WGL_EXT_display_color_table (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglBindDisplayColorTableEXT = (PFNWGLBINDDISPLAYCOLORTABLEEXTPROC)glewGetProcAddress((const GLubyte*)"wglBindDisplayColorTableEXT")) == NULL) || r;
-  r = ((wglCreateDisplayColorTableEXT = (PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC)glewGetProcAddress((const GLubyte*)"wglCreateDisplayColorTableEXT")) == NULL) || r;
-  r = ((wglDestroyDisplayColorTableEXT = (PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC)glewGetProcAddress((const GLubyte*)"wglDestroyDisplayColorTableEXT")) == NULL) || r;
-  r = ((wglLoadDisplayColorTableEXT = (PFNWGLLOADDISPLAYCOLORTABLEEXTPROC)glewGetProcAddress((const GLubyte*)"wglLoadDisplayColorTableEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_EXT_display_color_table */
-
-#ifdef WGL_EXT_extensions_string
-
-static GLboolean _glewInit_WGL_EXT_extensions_string (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglGetExtensionsStringEXT = (PFNWGLGETEXTENSIONSSTRINGEXTPROC)glewGetProcAddress((const GLubyte*)"wglGetExtensionsStringEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_EXT_extensions_string */
-
-#ifdef WGL_EXT_framebuffer_sRGB
-
-#endif /* WGL_EXT_framebuffer_sRGB */
-
-#ifdef WGL_EXT_make_current_read
-
-static GLboolean _glewInit_WGL_EXT_make_current_read (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglGetCurrentReadDCEXT = (PFNWGLGETCURRENTREADDCEXTPROC)glewGetProcAddress((const GLubyte*)"wglGetCurrentReadDCEXT")) == NULL) || r;
-  r = ((wglMakeContextCurrentEXT = (PFNWGLMAKECONTEXTCURRENTEXTPROC)glewGetProcAddress((const GLubyte*)"wglMakeContextCurrentEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_EXT_make_current_read */
-
-#ifdef WGL_EXT_multisample
-
-#endif /* WGL_EXT_multisample */
-
-#ifdef WGL_EXT_pbuffer
-
-static GLboolean _glewInit_WGL_EXT_pbuffer (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglCreatePbufferEXT = (PFNWGLCREATEPBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"wglCreatePbufferEXT")) == NULL) || r;
-  r = ((wglDestroyPbufferEXT = (PFNWGLDESTROYPBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"wglDestroyPbufferEXT")) == NULL) || r;
-  r = ((wglGetPbufferDCEXT = (PFNWGLGETPBUFFERDCEXTPROC)glewGetProcAddress((const GLubyte*)"wglGetPbufferDCEXT")) == NULL) || r;
-  r = ((wglQueryPbufferEXT = (PFNWGLQUERYPBUFFEREXTPROC)glewGetProcAddress((const GLubyte*)"wglQueryPbufferEXT")) == NULL) || r;
-  r = ((wglReleasePbufferDCEXT = (PFNWGLRELEASEPBUFFERDCEXTPROC)glewGetProcAddress((const GLubyte*)"wglReleasePbufferDCEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_EXT_pbuffer */
-
-#ifdef WGL_EXT_pixel_format
-
-static GLboolean _glewInit_WGL_EXT_pixel_format (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglChoosePixelFormatEXT = (PFNWGLCHOOSEPIXELFORMATEXTPROC)glewGetProcAddress((const GLubyte*)"wglChoosePixelFormatEXT")) == NULL) || r;
-  r = ((wglGetPixelFormatAttribfvEXT = (PFNWGLGETPIXELFORMATATTRIBFVEXTPROC)glewGetProcAddress((const GLubyte*)"wglGetPixelFormatAttribfvEXT")) == NULL) || r;
-  r = ((wglGetPixelFormatAttribivEXT = (PFNWGLGETPIXELFORMATATTRIBIVEXTPROC)glewGetProcAddress((const GLubyte*)"wglGetPixelFormatAttribivEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_EXT_pixel_format */
-
-#ifdef WGL_EXT_pixel_format_packed_float
-
-#endif /* WGL_EXT_pixel_format_packed_float */
-
-#ifdef WGL_EXT_swap_control
-
-static GLboolean _glewInit_WGL_EXT_swap_control (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglGetSwapIntervalEXT = (PFNWGLGETSWAPINTERVALEXTPROC)glewGetProcAddress((const GLubyte*)"wglGetSwapIntervalEXT")) == NULL) || r;
-  r = ((wglSwapIntervalEXT = (PFNWGLSWAPINTERVALEXTPROC)glewGetProcAddress((const GLubyte*)"wglSwapIntervalEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_EXT_swap_control */
-
-#ifdef WGL_I3D_digital_video_control
-
-static GLboolean _glewInit_WGL_I3D_digital_video_control (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglGetDigitalVideoParametersI3D = (PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC)glewGetProcAddress((const GLubyte*)"wglGetDigitalVideoParametersI3D")) == NULL) || r;
-  r = ((wglSetDigitalVideoParametersI3D = (PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC)glewGetProcAddress((const GLubyte*)"wglSetDigitalVideoParametersI3D")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_I3D_digital_video_control */
-
-#ifdef WGL_I3D_gamma
-
-static GLboolean _glewInit_WGL_I3D_gamma (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglGetGammaTableI3D = (PFNWGLGETGAMMATABLEI3DPROC)glewGetProcAddress((const GLubyte*)"wglGetGammaTableI3D")) == NULL) || r;
-  r = ((wglGetGammaTableParametersI3D = (PFNWGLGETGAMMATABLEPARAMETERSI3DPROC)glewGetProcAddress((const GLubyte*)"wglGetGammaTableParametersI3D")) == NULL) || r;
-  r = ((wglSetGammaTableI3D = (PFNWGLSETGAMMATABLEI3DPROC)glewGetProcAddress((const GLubyte*)"wglSetGammaTableI3D")) == NULL) || r;
-  r = ((wglSetGammaTableParametersI3D = (PFNWGLSETGAMMATABLEPARAMETERSI3DPROC)glewGetProcAddress((const GLubyte*)"wglSetGammaTableParametersI3D")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_I3D_gamma */
-
-#ifdef WGL_I3D_genlock
-
-static GLboolean _glewInit_WGL_I3D_genlock (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglDisableGenlockI3D = (PFNWGLDISABLEGENLOCKI3DPROC)glewGetProcAddress((const GLubyte*)"wglDisableGenlockI3D")) == NULL) || r;
-  r = ((wglEnableGenlockI3D = (PFNWGLENABLEGENLOCKI3DPROC)glewGetProcAddress((const GLubyte*)"wglEnableGenlockI3D")) == NULL) || r;
-  r = ((wglGenlockSampleRateI3D = (PFNWGLGENLOCKSAMPLERATEI3DPROC)glewGetProcAddress((const GLubyte*)"wglGenlockSampleRateI3D")) == NULL) || r;
-  r = ((wglGenlockSourceDelayI3D = (PFNWGLGENLOCKSOURCEDELAYI3DPROC)glewGetProcAddress((const GLubyte*)"wglGenlockSourceDelayI3D")) == NULL) || r;
-  r = ((wglGenlockSourceEdgeI3D = (PFNWGLGENLOCKSOURCEEDGEI3DPROC)glewGetProcAddress((const GLubyte*)"wglGenlockSourceEdgeI3D")) == NULL) || r;
-  r = ((wglGenlockSourceI3D = (PFNWGLGENLOCKSOURCEI3DPROC)glewGetProcAddress((const GLubyte*)"wglGenlockSourceI3D")) == NULL) || r;
-  r = ((wglGetGenlockSampleRateI3D = (PFNWGLGETGENLOCKSAMPLERATEI3DPROC)glewGetProcAddress((const GLubyte*)"wglGetGenlockSampleRateI3D")) == NULL) || r;
-  r = ((wglGetGenlockSourceDelayI3D = (PFNWGLGETGENLOCKSOURCEDELAYI3DPROC)glewGetProcAddress((const GLubyte*)"wglGetGenlockSourceDelayI3D")) == NULL) || r;
-  r = ((wglGetGenlockSourceEdgeI3D = (PFNWGLGETGENLOCKSOURCEEDGEI3DPROC)glewGetProcAddress((const GLubyte*)"wglGetGenlockSourceEdgeI3D")) == NULL) || r;
-  r = ((wglGetGenlockSourceI3D = (PFNWGLGETGENLOCKSOURCEI3DPROC)glewGetProcAddress((const GLubyte*)"wglGetGenlockSourceI3D")) == NULL) || r;
-  r = ((wglIsEnabledGenlockI3D = (PFNWGLISENABLEDGENLOCKI3DPROC)glewGetProcAddress((const GLubyte*)"wglIsEnabledGenlockI3D")) == NULL) || r;
-  r = ((wglQueryGenlockMaxSourceDelayI3D = (PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC)glewGetProcAddress((const GLubyte*)"wglQueryGenlockMaxSourceDelayI3D")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_I3D_genlock */
-
-#ifdef WGL_I3D_image_buffer
-
-static GLboolean _glewInit_WGL_I3D_image_buffer (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglAssociateImageBufferEventsI3D = (PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC)glewGetProcAddress((const GLubyte*)"wglAssociateImageBufferEventsI3D")) == NULL) || r;
-  r = ((wglCreateImageBufferI3D = (PFNWGLCREATEIMAGEBUFFERI3DPROC)glewGetProcAddress((const GLubyte*)"wglCreateImageBufferI3D")) == NULL) || r;
-  r = ((wglDestroyImageBufferI3D = (PFNWGLDESTROYIMAGEBUFFERI3DPROC)glewGetProcAddress((const GLubyte*)"wglDestroyImageBufferI3D")) == NULL) || r;
-  r = ((wglReleaseImageBufferEventsI3D = (PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC)glewGetProcAddress((const GLubyte*)"wglReleaseImageBufferEventsI3D")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_I3D_image_buffer */
-
-#ifdef WGL_I3D_swap_frame_lock
-
-static GLboolean _glewInit_WGL_I3D_swap_frame_lock (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglDisableFrameLockI3D = (PFNWGLDISABLEFRAMELOCKI3DPROC)glewGetProcAddress((const GLubyte*)"wglDisableFrameLockI3D")) == NULL) || r;
-  r = ((wglEnableFrameLockI3D = (PFNWGLENABLEFRAMELOCKI3DPROC)glewGetProcAddress((const GLubyte*)"wglEnableFrameLockI3D")) == NULL) || r;
-  r = ((wglIsEnabledFrameLockI3D = (PFNWGLISENABLEDFRAMELOCKI3DPROC)glewGetProcAddress((const GLubyte*)"wglIsEnabledFrameLockI3D")) == NULL) || r;
-  r = ((wglQueryFrameLockMasterI3D = (PFNWGLQUERYFRAMELOCKMASTERI3DPROC)glewGetProcAddress((const GLubyte*)"wglQueryFrameLockMasterI3D")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_I3D_swap_frame_lock */
-
-#ifdef WGL_I3D_swap_frame_usage
-
-static GLboolean _glewInit_WGL_I3D_swap_frame_usage (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglBeginFrameTrackingI3D = (PFNWGLBEGINFRAMETRACKINGI3DPROC)glewGetProcAddress((const GLubyte*)"wglBeginFrameTrackingI3D")) == NULL) || r;
-  r = ((wglEndFrameTrackingI3D = (PFNWGLENDFRAMETRACKINGI3DPROC)glewGetProcAddress((const GLubyte*)"wglEndFrameTrackingI3D")) == NULL) || r;
-  r = ((wglGetFrameUsageI3D = (PFNWGLGETFRAMEUSAGEI3DPROC)glewGetProcAddress((const GLubyte*)"wglGetFrameUsageI3D")) == NULL) || r;
-  r = ((wglQueryFrameTrackingI3D = (PFNWGLQUERYFRAMETRACKINGI3DPROC)glewGetProcAddress((const GLubyte*)"wglQueryFrameTrackingI3D")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_I3D_swap_frame_usage */
-
-#ifdef WGL_NV_copy_image
-
-static GLboolean _glewInit_WGL_NV_copy_image (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglCopyImageSubDataNV = (PFNWGLCOPYIMAGESUBDATANVPROC)glewGetProcAddress((const GLubyte*)"wglCopyImageSubDataNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_NV_copy_image */
-
-#ifdef WGL_NV_float_buffer
-
-#endif /* WGL_NV_float_buffer */
-
-#ifdef WGL_NV_gpu_affinity
-
-static GLboolean _glewInit_WGL_NV_gpu_affinity (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglCreateAffinityDCNV = (PFNWGLCREATEAFFINITYDCNVPROC)glewGetProcAddress((const GLubyte*)"wglCreateAffinityDCNV")) == NULL) || r;
-  r = ((wglDeleteDCNV = (PFNWGLDELETEDCNVPROC)glewGetProcAddress((const GLubyte*)"wglDeleteDCNV")) == NULL) || r;
-  r = ((wglEnumGpuDevicesNV = (PFNWGLENUMGPUDEVICESNVPROC)glewGetProcAddress((const GLubyte*)"wglEnumGpuDevicesNV")) == NULL) || r;
-  r = ((wglEnumGpusFromAffinityDCNV = (PFNWGLENUMGPUSFROMAFFINITYDCNVPROC)glewGetProcAddress((const GLubyte*)"wglEnumGpusFromAffinityDCNV")) == NULL) || r;
-  r = ((wglEnumGpusNV = (PFNWGLENUMGPUSNVPROC)glewGetProcAddress((const GLubyte*)"wglEnumGpusNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_NV_gpu_affinity */
-
-#ifdef WGL_NV_present_video
-
-static GLboolean _glewInit_WGL_NV_present_video (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglBindVideoDeviceNV = (PFNWGLBINDVIDEODEVICENVPROC)glewGetProcAddress((const GLubyte*)"wglBindVideoDeviceNV")) == NULL) || r;
-  r = ((wglEnumerateVideoDevicesNV = (PFNWGLENUMERATEVIDEODEVICESNVPROC)glewGetProcAddress((const GLubyte*)"wglEnumerateVideoDevicesNV")) == NULL) || r;
-  r = ((wglQueryCurrentContextNV = (PFNWGLQUERYCURRENTCONTEXTNVPROC)glewGetProcAddress((const GLubyte*)"wglQueryCurrentContextNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_NV_present_video */
-
-#ifdef WGL_NV_render_depth_texture
-
-#endif /* WGL_NV_render_depth_texture */
-
-#ifdef WGL_NV_render_texture_rectangle
-
-#endif /* WGL_NV_render_texture_rectangle */
-
-#ifdef WGL_NV_swap_group
-
-static GLboolean _glewInit_WGL_NV_swap_group (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglBindSwapBarrierNV = (PFNWGLBINDSWAPBARRIERNVPROC)glewGetProcAddress((const GLubyte*)"wglBindSwapBarrierNV")) == NULL) || r;
-  r = ((wglJoinSwapGroupNV = (PFNWGLJOINSWAPGROUPNVPROC)glewGetProcAddress((const GLubyte*)"wglJoinSwapGroupNV")) == NULL) || r;
-  r = ((wglQueryFrameCountNV = (PFNWGLQUERYFRAMECOUNTNVPROC)glewGetProcAddress((const GLubyte*)"wglQueryFrameCountNV")) == NULL) || r;
-  r = ((wglQueryMaxSwapGroupsNV = (PFNWGLQUERYMAXSWAPGROUPSNVPROC)glewGetProcAddress((const GLubyte*)"wglQueryMaxSwapGroupsNV")) == NULL) || r;
-  r = ((wglQuerySwapGroupNV = (PFNWGLQUERYSWAPGROUPNVPROC)glewGetProcAddress((const GLubyte*)"wglQuerySwapGroupNV")) == NULL) || r;
-  r = ((wglResetFrameCountNV = (PFNWGLRESETFRAMECOUNTNVPROC)glewGetProcAddress((const GLubyte*)"wglResetFrameCountNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_NV_swap_group */
-
-#ifdef WGL_NV_vertex_array_range
-
-static GLboolean _glewInit_WGL_NV_vertex_array_range (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglAllocateMemoryNV = (PFNWGLALLOCATEMEMORYNVPROC)glewGetProcAddress((const GLubyte*)"wglAllocateMemoryNV")) == NULL) || r;
-  r = ((wglFreeMemoryNV = (PFNWGLFREEMEMORYNVPROC)glewGetProcAddress((const GLubyte*)"wglFreeMemoryNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_NV_vertex_array_range */
-
-#ifdef WGL_NV_video_output
-
-static GLboolean _glewInit_WGL_NV_video_output (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglBindVideoImageNV = (PFNWGLBINDVIDEOIMAGENVPROC)glewGetProcAddress((const GLubyte*)"wglBindVideoImageNV")) == NULL) || r;
-  r = ((wglGetVideoDeviceNV = (PFNWGLGETVIDEODEVICENVPROC)glewGetProcAddress((const GLubyte*)"wglGetVideoDeviceNV")) == NULL) || r;
-  r = ((wglGetVideoInfoNV = (PFNWGLGETVIDEOINFONVPROC)glewGetProcAddress((const GLubyte*)"wglGetVideoInfoNV")) == NULL) || r;
-  r = ((wglReleaseVideoDeviceNV = (PFNWGLRELEASEVIDEODEVICENVPROC)glewGetProcAddress((const GLubyte*)"wglReleaseVideoDeviceNV")) == NULL) || r;
-  r = ((wglReleaseVideoImageNV = (PFNWGLRELEASEVIDEOIMAGENVPROC)glewGetProcAddress((const GLubyte*)"wglReleaseVideoImageNV")) == NULL) || r;
-  r = ((wglSendPbufferToVideoNV = (PFNWGLSENDPBUFFERTOVIDEONVPROC)glewGetProcAddress((const GLubyte*)"wglSendPbufferToVideoNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_NV_video_output */
-
-#ifdef WGL_OML_sync_control
-
-static GLboolean _glewInit_WGL_OML_sync_control (WGLEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((wglGetMscRateOML = (PFNWGLGETMSCRATEOMLPROC)glewGetProcAddress((const GLubyte*)"wglGetMscRateOML")) == NULL) || r;
-  r = ((wglGetSyncValuesOML = (PFNWGLGETSYNCVALUESOMLPROC)glewGetProcAddress((const GLubyte*)"wglGetSyncValuesOML")) == NULL) || r;
-  r = ((wglSwapBuffersMscOML = (PFNWGLSWAPBUFFERSMSCOMLPROC)glewGetProcAddress((const GLubyte*)"wglSwapBuffersMscOML")) == NULL) || r;
-  r = ((wglSwapLayerBuffersMscOML = (PFNWGLSWAPLAYERBUFFERSMSCOMLPROC)glewGetProcAddress((const GLubyte*)"wglSwapLayerBuffersMscOML")) == NULL) || r;
-  r = ((wglWaitForMscOML = (PFNWGLWAITFORMSCOMLPROC)glewGetProcAddress((const GLubyte*)"wglWaitForMscOML")) == NULL) || r;
-  r = ((wglWaitForSbcOML = (PFNWGLWAITFORSBCOMLPROC)glewGetProcAddress((const GLubyte*)"wglWaitForSbcOML")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* WGL_OML_sync_control */
-
-/* ------------------------------------------------------------------------- */
-
-static PFNWGLGETEXTENSIONSSTRINGARBPROC _wglewGetExtensionsStringARB = NULL;
-static PFNWGLGETEXTENSIONSSTRINGEXTPROC _wglewGetExtensionsStringEXT = NULL;
-
-GLboolean wglewGetExtension (const char* name)
-{    
-  GLubyte* p;
-  GLubyte* end;
-  GLuint len = _glewStrLen((const GLubyte*)name);
-  if (_wglewGetExtensionsStringARB == NULL)
-    if (_wglewGetExtensionsStringEXT == NULL)
-      return GL_FALSE;
-    else
-      p = (GLubyte*)_wglewGetExtensionsStringEXT();
-  else
-    p = (GLubyte*)_wglewGetExtensionsStringARB(wglGetCurrentDC());
-  if (0 == p) return GL_FALSE;
-  end = p + _glewStrLen(p);
-  while (p < end)
-  {
-    GLuint n = _glewStrCLen(p, ' ');
-    if (len == n && _glewStrSame((const GLubyte*)name, p, n)) return GL_TRUE;
-    p += n+1;
-  }
-  return GL_FALSE;
-}
-
-GLenum wglewContextInit (WGLEW_CONTEXT_ARG_DEF_LIST)
-{
-  GLboolean crippled;
-  /* find wgl extension string query functions */
-  _wglewGetExtensionsStringARB = (PFNWGLGETEXTENSIONSSTRINGARBPROC)glewGetProcAddress((const GLubyte*)"wglGetExtensionsStringARB");
-  _wglewGetExtensionsStringEXT = (PFNWGLGETEXTENSIONSSTRINGEXTPROC)glewGetProcAddress((const GLubyte*)"wglGetExtensionsStringEXT");
-  /* initialize extensions */
-  crippled = _wglewGetExtensionsStringARB == NULL && _wglewGetExtensionsStringEXT == NULL;
-#ifdef WGL_3DFX_multisample
-  CONST_CAST(WGLEW_3DFX_multisample) = wglewGetExtension("WGL_3DFX_multisample");
-#endif /* WGL_3DFX_multisample */
-#ifdef WGL_3DL_stereo_control
-  CONST_CAST(WGLEW_3DL_stereo_control) = wglewGetExtension("WGL_3DL_stereo_control");
-  if (glewExperimental || WGLEW_3DL_stereo_control|| crippled) CONST_CAST(WGLEW_3DL_stereo_control)= !_glewInit_WGL_3DL_stereo_control(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_3DL_stereo_control */
-#ifdef WGL_AMD_gpu_association
-  CONST_CAST(WGLEW_AMD_gpu_association) = wglewGetExtension("WGL_AMD_gpu_association");
-  if (glewExperimental || WGLEW_AMD_gpu_association|| crippled) CONST_CAST(WGLEW_AMD_gpu_association)= !_glewInit_WGL_AMD_gpu_association(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_AMD_gpu_association */
-#ifdef WGL_ARB_buffer_region
-  CONST_CAST(WGLEW_ARB_buffer_region) = wglewGetExtension("WGL_ARB_buffer_region");
-  if (glewExperimental || WGLEW_ARB_buffer_region|| crippled) CONST_CAST(WGLEW_ARB_buffer_region)= !_glewInit_WGL_ARB_buffer_region(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_ARB_buffer_region */
-#ifdef WGL_ARB_create_context
-  CONST_CAST(WGLEW_ARB_create_context) = wglewGetExtension("WGL_ARB_create_context");
-  if (glewExperimental || WGLEW_ARB_create_context|| crippled) CONST_CAST(WGLEW_ARB_create_context)= !_glewInit_WGL_ARB_create_context(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_ARB_create_context */
-#ifdef WGL_ARB_create_context_profile
-  CONST_CAST(WGLEW_ARB_create_context_profile) = wglewGetExtension("WGL_ARB_create_context_profile");
-#endif /* WGL_ARB_create_context_profile */
-#ifdef WGL_ARB_extensions_string
-  CONST_CAST(WGLEW_ARB_extensions_string) = wglewGetExtension("WGL_ARB_extensions_string");
-  if (glewExperimental || WGLEW_ARB_extensions_string|| crippled) CONST_CAST(WGLEW_ARB_extensions_string)= !_glewInit_WGL_ARB_extensions_string(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_ARB_extensions_string */
-#ifdef WGL_ARB_framebuffer_sRGB
-  CONST_CAST(WGLEW_ARB_framebuffer_sRGB) = wglewGetExtension("WGL_ARB_framebuffer_sRGB");
-#endif /* WGL_ARB_framebuffer_sRGB */
-#ifdef WGL_ARB_make_current_read
-  CONST_CAST(WGLEW_ARB_make_current_read) = wglewGetExtension("WGL_ARB_make_current_read");
-  if (glewExperimental || WGLEW_ARB_make_current_read|| crippled) CONST_CAST(WGLEW_ARB_make_current_read)= !_glewInit_WGL_ARB_make_current_read(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_ARB_make_current_read */
-#ifdef WGL_ARB_multisample
-  CONST_CAST(WGLEW_ARB_multisample) = wglewGetExtension("WGL_ARB_multisample");
-#endif /* WGL_ARB_multisample */
-#ifdef WGL_ARB_pbuffer
-  CONST_CAST(WGLEW_ARB_pbuffer) = wglewGetExtension("WGL_ARB_pbuffer");
-  if (glewExperimental || WGLEW_ARB_pbuffer|| crippled) CONST_CAST(WGLEW_ARB_pbuffer)= !_glewInit_WGL_ARB_pbuffer(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_ARB_pbuffer */
-#ifdef WGL_ARB_pixel_format
-  CONST_CAST(WGLEW_ARB_pixel_format) = wglewGetExtension("WGL_ARB_pixel_format");
-  if (glewExperimental || WGLEW_ARB_pixel_format|| crippled) CONST_CAST(WGLEW_ARB_pixel_format)= !_glewInit_WGL_ARB_pixel_format(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_ARB_pixel_format */
-#ifdef WGL_ARB_pixel_format_float
-  CONST_CAST(WGLEW_ARB_pixel_format_float) = wglewGetExtension("WGL_ARB_pixel_format_float");
-#endif /* WGL_ARB_pixel_format_float */
-#ifdef WGL_ARB_render_texture
-  CONST_CAST(WGLEW_ARB_render_texture) = wglewGetExtension("WGL_ARB_render_texture");
-  if (glewExperimental || WGLEW_ARB_render_texture|| crippled) CONST_CAST(WGLEW_ARB_render_texture)= !_glewInit_WGL_ARB_render_texture(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_ARB_render_texture */
-#ifdef WGL_ATI_pixel_format_float
-  CONST_CAST(WGLEW_ATI_pixel_format_float) = wglewGetExtension("WGL_ATI_pixel_format_float");
-#endif /* WGL_ATI_pixel_format_float */
-#ifdef WGL_ATI_render_texture_rectangle
-  CONST_CAST(WGLEW_ATI_render_texture_rectangle) = wglewGetExtension("WGL_ATI_render_texture_rectangle");
-#endif /* WGL_ATI_render_texture_rectangle */
-#ifdef WGL_EXT_depth_float
-  CONST_CAST(WGLEW_EXT_depth_float) = wglewGetExtension("WGL_EXT_depth_float");
-#endif /* WGL_EXT_depth_float */
-#ifdef WGL_EXT_display_color_table
-  CONST_CAST(WGLEW_EXT_display_color_table) = wglewGetExtension("WGL_EXT_display_color_table");
-  if (glewExperimental || WGLEW_EXT_display_color_table|| crippled) CONST_CAST(WGLEW_EXT_display_color_table)= !_glewInit_WGL_EXT_display_color_table(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_EXT_display_color_table */
-#ifdef WGL_EXT_extensions_string
-  CONST_CAST(WGLEW_EXT_extensions_string) = wglewGetExtension("WGL_EXT_extensions_string");
-  if (glewExperimental || WGLEW_EXT_extensions_string|| crippled) CONST_CAST(WGLEW_EXT_extensions_string)= !_glewInit_WGL_EXT_extensions_string(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_EXT_extensions_string */
-#ifdef WGL_EXT_framebuffer_sRGB
-  CONST_CAST(WGLEW_EXT_framebuffer_sRGB) = wglewGetExtension("WGL_EXT_framebuffer_sRGB");
-#endif /* WGL_EXT_framebuffer_sRGB */
-#ifdef WGL_EXT_make_current_read
-  CONST_CAST(WGLEW_EXT_make_current_read) = wglewGetExtension("WGL_EXT_make_current_read");
-  if (glewExperimental || WGLEW_EXT_make_current_read|| crippled) CONST_CAST(WGLEW_EXT_make_current_read)= !_glewInit_WGL_EXT_make_current_read(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_EXT_make_current_read */
-#ifdef WGL_EXT_multisample
-  CONST_CAST(WGLEW_EXT_multisample) = wglewGetExtension("WGL_EXT_multisample");
-#endif /* WGL_EXT_multisample */
-#ifdef WGL_EXT_pbuffer
-  CONST_CAST(WGLEW_EXT_pbuffer) = wglewGetExtension("WGL_EXT_pbuffer");
-  if (glewExperimental || WGLEW_EXT_pbuffer|| crippled) CONST_CAST(WGLEW_EXT_pbuffer)= !_glewInit_WGL_EXT_pbuffer(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_EXT_pbuffer */
-#ifdef WGL_EXT_pixel_format
-  CONST_CAST(WGLEW_EXT_pixel_format) = wglewGetExtension("WGL_EXT_pixel_format");
-  if (glewExperimental || WGLEW_EXT_pixel_format|| crippled) CONST_CAST(WGLEW_EXT_pixel_format)= !_glewInit_WGL_EXT_pixel_format(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_EXT_pixel_format */
-#ifdef WGL_EXT_pixel_format_packed_float
-  CONST_CAST(WGLEW_EXT_pixel_format_packed_float) = wglewGetExtension("WGL_EXT_pixel_format_packed_float");
-#endif /* WGL_EXT_pixel_format_packed_float */
-#ifdef WGL_EXT_swap_control
-  CONST_CAST(WGLEW_EXT_swap_control) = wglewGetExtension("WGL_EXT_swap_control");
-  if (glewExperimental || WGLEW_EXT_swap_control|| crippled) CONST_CAST(WGLEW_EXT_swap_control)= !_glewInit_WGL_EXT_swap_control(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_EXT_swap_control */
-#ifdef WGL_I3D_digital_video_control
-  CONST_CAST(WGLEW_I3D_digital_video_control) = wglewGetExtension("WGL_I3D_digital_video_control");
-  if (glewExperimental || WGLEW_I3D_digital_video_control|| crippled) CONST_CAST(WGLEW_I3D_digital_video_control)= !_glewInit_WGL_I3D_digital_video_control(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_I3D_digital_video_control */
-#ifdef WGL_I3D_gamma
-  CONST_CAST(WGLEW_I3D_gamma) = wglewGetExtension("WGL_I3D_gamma");
-  if (glewExperimental || WGLEW_I3D_gamma|| crippled) CONST_CAST(WGLEW_I3D_gamma)= !_glewInit_WGL_I3D_gamma(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_I3D_gamma */
-#ifdef WGL_I3D_genlock
-  CONST_CAST(WGLEW_I3D_genlock) = wglewGetExtension("WGL_I3D_genlock");
-  if (glewExperimental || WGLEW_I3D_genlock|| crippled) CONST_CAST(WGLEW_I3D_genlock)= !_glewInit_WGL_I3D_genlock(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_I3D_genlock */
-#ifdef WGL_I3D_image_buffer
-  CONST_CAST(WGLEW_I3D_image_buffer) = wglewGetExtension("WGL_I3D_image_buffer");
-  if (glewExperimental || WGLEW_I3D_image_buffer|| crippled) CONST_CAST(WGLEW_I3D_image_buffer)= !_glewInit_WGL_I3D_image_buffer(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_I3D_image_buffer */
-#ifdef WGL_I3D_swap_frame_lock
-  CONST_CAST(WGLEW_I3D_swap_frame_lock) = wglewGetExtension("WGL_I3D_swap_frame_lock");
-  if (glewExperimental || WGLEW_I3D_swap_frame_lock|| crippled) CONST_CAST(WGLEW_I3D_swap_frame_lock)= !_glewInit_WGL_I3D_swap_frame_lock(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_I3D_swap_frame_lock */
-#ifdef WGL_I3D_swap_frame_usage
-  CONST_CAST(WGLEW_I3D_swap_frame_usage) = wglewGetExtension("WGL_I3D_swap_frame_usage");
-  if (glewExperimental || WGLEW_I3D_swap_frame_usage|| crippled) CONST_CAST(WGLEW_I3D_swap_frame_usage)= !_glewInit_WGL_I3D_swap_frame_usage(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_I3D_swap_frame_usage */
-#ifdef WGL_NV_copy_image
-  CONST_CAST(WGLEW_NV_copy_image) = wglewGetExtension("WGL_NV_copy_image");
-  if (glewExperimental || WGLEW_NV_copy_image|| crippled) CONST_CAST(WGLEW_NV_copy_image)= !_glewInit_WGL_NV_copy_image(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_NV_copy_image */
-#ifdef WGL_NV_float_buffer
-  CONST_CAST(WGLEW_NV_float_buffer) = wglewGetExtension("WGL_NV_float_buffer");
-#endif /* WGL_NV_float_buffer */
-#ifdef WGL_NV_gpu_affinity
-  CONST_CAST(WGLEW_NV_gpu_affinity) = wglewGetExtension("WGL_NV_gpu_affinity");
-  if (glewExperimental || WGLEW_NV_gpu_affinity|| crippled) CONST_CAST(WGLEW_NV_gpu_affinity)= !_glewInit_WGL_NV_gpu_affinity(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_NV_gpu_affinity */
-#ifdef WGL_NV_present_video
-  CONST_CAST(WGLEW_NV_present_video) = wglewGetExtension("WGL_NV_present_video");
-  if (glewExperimental || WGLEW_NV_present_video|| crippled) CONST_CAST(WGLEW_NV_present_video)= !_glewInit_WGL_NV_present_video(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_NV_present_video */
-#ifdef WGL_NV_render_depth_texture
-  CONST_CAST(WGLEW_NV_render_depth_texture) = wglewGetExtension("WGL_NV_render_depth_texture");
-#endif /* WGL_NV_render_depth_texture */
-#ifdef WGL_NV_render_texture_rectangle
-  CONST_CAST(WGLEW_NV_render_texture_rectangle) = wglewGetExtension("WGL_NV_render_texture_rectangle");
-#endif /* WGL_NV_render_texture_rectangle */
-#ifdef WGL_NV_swap_group
-  CONST_CAST(WGLEW_NV_swap_group) = wglewGetExtension("WGL_NV_swap_group");
-  if (glewExperimental || WGLEW_NV_swap_group|| crippled) CONST_CAST(WGLEW_NV_swap_group)= !_glewInit_WGL_NV_swap_group(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_NV_swap_group */
-#ifdef WGL_NV_vertex_array_range
-  CONST_CAST(WGLEW_NV_vertex_array_range) = wglewGetExtension("WGL_NV_vertex_array_range");
-  if (glewExperimental || WGLEW_NV_vertex_array_range|| crippled) CONST_CAST(WGLEW_NV_vertex_array_range)= !_glewInit_WGL_NV_vertex_array_range(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_NV_vertex_array_range */
-#ifdef WGL_NV_video_output
-  CONST_CAST(WGLEW_NV_video_output) = wglewGetExtension("WGL_NV_video_output");
-  if (glewExperimental || WGLEW_NV_video_output|| crippled) CONST_CAST(WGLEW_NV_video_output)= !_glewInit_WGL_NV_video_output(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_NV_video_output */
-#ifdef WGL_OML_sync_control
-  CONST_CAST(WGLEW_OML_sync_control) = wglewGetExtension("WGL_OML_sync_control");
-  if (glewExperimental || WGLEW_OML_sync_control|| crippled) CONST_CAST(WGLEW_OML_sync_control)= !_glewInit_WGL_OML_sync_control(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* WGL_OML_sync_control */
-
-  return GLEW_OK;
-}
-
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-
-PFNGLXGETCURRENTDISPLAYPROC __glewXGetCurrentDisplay = NULL;
-
-PFNGLXCHOOSEFBCONFIGPROC __glewXChooseFBConfig = NULL;
-PFNGLXCREATENEWCONTEXTPROC __glewXCreateNewContext = NULL;
-PFNGLXCREATEPBUFFERPROC __glewXCreatePbuffer = NULL;
-PFNGLXCREATEPIXMAPPROC __glewXCreatePixmap = NULL;
-PFNGLXCREATEWINDOWPROC __glewXCreateWindow = NULL;
-PFNGLXDESTROYPBUFFERPROC __glewXDestroyPbuffer = NULL;
-PFNGLXDESTROYPIXMAPPROC __glewXDestroyPixmap = NULL;
-PFNGLXDESTROYWINDOWPROC __glewXDestroyWindow = NULL;
-PFNGLXGETCURRENTREADDRAWABLEPROC __glewXGetCurrentReadDrawable = NULL;
-PFNGLXGETFBCONFIGATTRIBPROC __glewXGetFBConfigAttrib = NULL;
-PFNGLXGETFBCONFIGSPROC __glewXGetFBConfigs = NULL;
-PFNGLXGETSELECTEDEVENTPROC __glewXGetSelectedEvent = NULL;
-PFNGLXGETVISUALFROMFBCONFIGPROC __glewXGetVisualFromFBConfig = NULL;
-PFNGLXMAKECONTEXTCURRENTPROC __glewXMakeContextCurrent = NULL;
-PFNGLXQUERYCONTEXTPROC __glewXQueryContext = NULL;
-PFNGLXQUERYDRAWABLEPROC __glewXQueryDrawable = NULL;
-PFNGLXSELECTEVENTPROC __glewXSelectEvent = NULL;
-
-PFNGLXCREATECONTEXTATTRIBSARBPROC __glewXCreateContextAttribsARB = NULL;
-
-PFNGLXBINDTEXIMAGEATIPROC __glewXBindTexImageATI = NULL;
-PFNGLXDRAWABLEATTRIBATIPROC __glewXDrawableAttribATI = NULL;
-PFNGLXRELEASETEXIMAGEATIPROC __glewXReleaseTexImageATI = NULL;
-
-PFNGLXFREECONTEXTEXTPROC __glewXFreeContextEXT = NULL;
-PFNGLXGETCONTEXTIDEXTPROC __glewXGetContextIDEXT = NULL;
-PFNGLXIMPORTCONTEXTEXTPROC __glewXImportContextEXT = NULL;
-PFNGLXQUERYCONTEXTINFOEXTPROC __glewXQueryContextInfoEXT = NULL;
-
-PFNGLXSWAPINTERVALEXTPROC __glewXSwapIntervalEXT = NULL;
-
-PFNGLXBINDTEXIMAGEEXTPROC __glewXBindTexImageEXT = NULL;
-PFNGLXRELEASETEXIMAGEEXTPROC __glewXReleaseTexImageEXT = NULL;
-
-PFNGLXGETAGPOFFSETMESAPROC __glewXGetAGPOffsetMESA = NULL;
-
-PFNGLXCOPYSUBBUFFERMESAPROC __glewXCopySubBufferMESA = NULL;
-
-PFNGLXCREATEGLXPIXMAPMESAPROC __glewXCreateGLXPixmapMESA = NULL;
-
-PFNGLXRELEASEBUFFERSMESAPROC __glewXReleaseBuffersMESA = NULL;
-
-PFNGLXSET3DFXMODEMESAPROC __glewXSet3DfxModeMESA = NULL;
-
-PFNGLXCOPYIMAGESUBDATANVPROC __glewXCopyImageSubDataNV = NULL;
-
-PFNGLXBINDVIDEODEVICENVPROC __glewXBindVideoDeviceNV = NULL;
-PFNGLXENUMERATEVIDEODEVICESNVPROC __glewXEnumerateVideoDevicesNV = NULL;
-
-PFNGLXBINDSWAPBARRIERNVPROC __glewXBindSwapBarrierNV = NULL;
-PFNGLXJOINSWAPGROUPNVPROC __glewXJoinSwapGroupNV = NULL;
-PFNGLXQUERYFRAMECOUNTNVPROC __glewXQueryFrameCountNV = NULL;
-PFNGLXQUERYMAXSWAPGROUPSNVPROC __glewXQueryMaxSwapGroupsNV = NULL;
-PFNGLXQUERYSWAPGROUPNVPROC __glewXQuerySwapGroupNV = NULL;
-PFNGLXRESETFRAMECOUNTNVPROC __glewXResetFrameCountNV = NULL;
-
-PFNGLXALLOCATEMEMORYNVPROC __glewXAllocateMemoryNV = NULL;
-PFNGLXFREEMEMORYNVPROC __glewXFreeMemoryNV = NULL;
-
-PFNGLXBINDVIDEOIMAGENVPROC __glewXBindVideoImageNV = NULL;
-PFNGLXGETVIDEODEVICENVPROC __glewXGetVideoDeviceNV = NULL;
-PFNGLXGETVIDEOINFONVPROC __glewXGetVideoInfoNV = NULL;
-PFNGLXRELEASEVIDEODEVICENVPROC __glewXReleaseVideoDeviceNV = NULL;
-PFNGLXRELEASEVIDEOIMAGENVPROC __glewXReleaseVideoImageNV = NULL;
-PFNGLXSENDPBUFFERTOVIDEONVPROC __glewXSendPbufferToVideoNV = NULL;
-
-#ifdef GLX_OML_sync_control
-PFNGLXGETMSCRATEOMLPROC __glewXGetMscRateOML = NULL;
-PFNGLXGETSYNCVALUESOMLPROC __glewXGetSyncValuesOML = NULL;
-PFNGLXSWAPBUFFERSMSCOMLPROC __glewXSwapBuffersMscOML = NULL;
-PFNGLXWAITFORMSCOMLPROC __glewXWaitForMscOML = NULL;
-PFNGLXWAITFORSBCOMLPROC __glewXWaitForSbcOML = NULL;
-#endif
-
-PFNGLXCHOOSEFBCONFIGSGIXPROC __glewXChooseFBConfigSGIX = NULL;
-PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC __glewXCreateContextWithConfigSGIX = NULL;
-PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC __glewXCreateGLXPixmapWithConfigSGIX = NULL;
-PFNGLXGETFBCONFIGATTRIBSGIXPROC __glewXGetFBConfigAttribSGIX = NULL;
-PFNGLXGETFBCONFIGFROMVISUALSGIXPROC __glewXGetFBConfigFromVisualSGIX = NULL;
-PFNGLXGETVISUALFROMFBCONFIGSGIXPROC __glewXGetVisualFromFBConfigSGIX = NULL;
-
-PFNGLXBINDHYPERPIPESGIXPROC __glewXBindHyperpipeSGIX = NULL;
-PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC __glewXDestroyHyperpipeConfigSGIX = NULL;
-PFNGLXHYPERPIPEATTRIBSGIXPROC __glewXHyperpipeAttribSGIX = NULL;
-PFNGLXHYPERPIPECONFIGSGIXPROC __glewXHyperpipeConfigSGIX = NULL;
-PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC __glewXQueryHyperpipeAttribSGIX = NULL;
-PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC __glewXQueryHyperpipeBestAttribSGIX = NULL;
-PFNGLXQUERYHYPERPIPECONFIGSGIXPROC __glewXQueryHyperpipeConfigSGIX = NULL;
-PFNGLXQUERYHYPERPIPENETWORKSGIXPROC __glewXQueryHyperpipeNetworkSGIX = NULL;
-
-PFNGLXCREATEGLXPBUFFERSGIXPROC __glewXCreateGLXPbufferSGIX = NULL;
-PFNGLXDESTROYGLXPBUFFERSGIXPROC __glewXDestroyGLXPbufferSGIX = NULL;
-PFNGLXGETSELECTEDEVENTSGIXPROC __glewXGetSelectedEventSGIX = NULL;
-PFNGLXQUERYGLXPBUFFERSGIXPROC __glewXQueryGLXPbufferSGIX = NULL;
-PFNGLXSELECTEVENTSGIXPROC __glewXSelectEventSGIX = NULL;
-
-PFNGLXBINDSWAPBARRIERSGIXPROC __glewXBindSwapBarrierSGIX = NULL;
-PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC __glewXQueryMaxSwapBarriersSGIX = NULL;
-
-PFNGLXJOINSWAPGROUPSGIXPROC __glewXJoinSwapGroupSGIX = NULL;
-
-PFNGLXBINDCHANNELTOWINDOWSGIXPROC __glewXBindChannelToWindowSGIX = NULL;
-PFNGLXCHANNELRECTSGIXPROC __glewXChannelRectSGIX = NULL;
-PFNGLXCHANNELRECTSYNCSGIXPROC __glewXChannelRectSyncSGIX = NULL;
-PFNGLXQUERYCHANNELDELTASSGIXPROC __glewXQueryChannelDeltasSGIX = NULL;
-PFNGLXQUERYCHANNELRECTSGIXPROC __glewXQueryChannelRectSGIX = NULL;
-
-PFNGLXCUSHIONSGIPROC __glewXCushionSGI = NULL;
-
-PFNGLXGETCURRENTREADDRAWABLESGIPROC __glewXGetCurrentReadDrawableSGI = NULL;
-PFNGLXMAKECURRENTREADSGIPROC __glewXMakeCurrentReadSGI = NULL;
-
-PFNGLXSWAPINTERVALSGIPROC __glewXSwapIntervalSGI = NULL;
-
-PFNGLXGETVIDEOSYNCSGIPROC __glewXGetVideoSyncSGI = NULL;
-PFNGLXWAITVIDEOSYNCSGIPROC __glewXWaitVideoSyncSGI = NULL;
-
-PFNGLXGETTRANSPARENTINDEXSUNPROC __glewXGetTransparentIndexSUN = NULL;
-
-PFNGLXGETVIDEORESIZESUNPROC __glewXGetVideoResizeSUN = NULL;
-PFNGLXVIDEORESIZESUNPROC __glewXVideoResizeSUN = NULL;
-
-#if !defined(GLEW_MX)
-
-GLboolean __GLXEW_VERSION_1_0 = GL_FALSE;
-GLboolean __GLXEW_VERSION_1_1 = GL_FALSE;
-GLboolean __GLXEW_VERSION_1_2 = GL_FALSE;
-GLboolean __GLXEW_VERSION_1_3 = GL_FALSE;
-GLboolean __GLXEW_VERSION_1_4 = GL_FALSE;
-GLboolean __GLXEW_3DFX_multisample = GL_FALSE;
-GLboolean __GLXEW_ARB_create_context = GL_FALSE;
-GLboolean __GLXEW_ARB_create_context_profile = GL_FALSE;
-GLboolean __GLXEW_ARB_fbconfig_float = GL_FALSE;
-GLboolean __GLXEW_ARB_framebuffer_sRGB = GL_FALSE;
-GLboolean __GLXEW_ARB_get_proc_address = GL_FALSE;
-GLboolean __GLXEW_ARB_multisample = GL_FALSE;
-GLboolean __GLXEW_ARB_vertex_buffer_object = GL_FALSE;
-GLboolean __GLXEW_ATI_pixel_format_float = GL_FALSE;
-GLboolean __GLXEW_ATI_render_texture = GL_FALSE;
-GLboolean __GLXEW_EXT_fbconfig_packed_float = GL_FALSE;
-GLboolean __GLXEW_EXT_framebuffer_sRGB = GL_FALSE;
-GLboolean __GLXEW_EXT_import_context = GL_FALSE;
-GLboolean __GLXEW_EXT_scene_marker = GL_FALSE;
-GLboolean __GLXEW_EXT_swap_control = GL_FALSE;
-GLboolean __GLXEW_EXT_texture_from_pixmap = GL_FALSE;
-GLboolean __GLXEW_EXT_visual_info = GL_FALSE;
-GLboolean __GLXEW_EXT_visual_rating = GL_FALSE;
-GLboolean __GLXEW_INTEL_swap_event = GL_FALSE;
-GLboolean __GLXEW_MESA_agp_offset = GL_FALSE;
-GLboolean __GLXEW_MESA_copy_sub_buffer = GL_FALSE;
-GLboolean __GLXEW_MESA_pixmap_colormap = GL_FALSE;
-GLboolean __GLXEW_MESA_release_buffers = GL_FALSE;
-GLboolean __GLXEW_MESA_set_3dfx_mode = GL_FALSE;
-GLboolean __GLXEW_NV_copy_image = GL_FALSE;
-GLboolean __GLXEW_NV_float_buffer = GL_FALSE;
-GLboolean __GLXEW_NV_present_video = GL_FALSE;
-GLboolean __GLXEW_NV_swap_group = GL_FALSE;
-GLboolean __GLXEW_NV_vertex_array_range = GL_FALSE;
-GLboolean __GLXEW_NV_video_output = GL_FALSE;
-GLboolean __GLXEW_OML_swap_method = GL_FALSE;
-#ifdef GLX_OML_sync_control
-GLboolean __GLXEW_OML_sync_control = GL_FALSE;
-#endif
-GLboolean __GLXEW_SGIS_blended_overlay = GL_FALSE;
-GLboolean __GLXEW_SGIS_color_range = GL_FALSE;
-GLboolean __GLXEW_SGIS_multisample = GL_FALSE;
-GLboolean __GLXEW_SGIS_shared_multisample = GL_FALSE;
-GLboolean __GLXEW_SGIX_fbconfig = GL_FALSE;
-GLboolean __GLXEW_SGIX_hyperpipe = GL_FALSE;
-GLboolean __GLXEW_SGIX_pbuffer = GL_FALSE;
-GLboolean __GLXEW_SGIX_swap_barrier = GL_FALSE;
-GLboolean __GLXEW_SGIX_swap_group = GL_FALSE;
-GLboolean __GLXEW_SGIX_video_resize = GL_FALSE;
-GLboolean __GLXEW_SGIX_visual_select_group = GL_FALSE;
-GLboolean __GLXEW_SGI_cushion = GL_FALSE;
-GLboolean __GLXEW_SGI_make_current_read = GL_FALSE;
-GLboolean __GLXEW_SGI_swap_control = GL_FALSE;
-GLboolean __GLXEW_SGI_video_sync = GL_FALSE;
-GLboolean __GLXEW_SUN_get_transparent_index = GL_FALSE;
-GLboolean __GLXEW_SUN_video_resize = GL_FALSE;
-
-#endif /* !GLEW_MX */
-
-#ifdef GLX_VERSION_1_2
-
-static GLboolean _glewInit_GLX_VERSION_1_2 (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXGetCurrentDisplay = (PFNGLXGETCURRENTDISPLAYPROC)glewGetProcAddress((const GLubyte*)"glXGetCurrentDisplay")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_VERSION_1_2 */
-
-#ifdef GLX_VERSION_1_3
-
-static GLboolean _glewInit_GLX_VERSION_1_3 (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXChooseFBConfig = (PFNGLXCHOOSEFBCONFIGPROC)glewGetProcAddress((const GLubyte*)"glXChooseFBConfig")) == NULL) || r;
-  r = ((glXCreateNewContext = (PFNGLXCREATENEWCONTEXTPROC)glewGetProcAddress((const GLubyte*)"glXCreateNewContext")) == NULL) || r;
-  r = ((glXCreatePbuffer = (PFNGLXCREATEPBUFFERPROC)glewGetProcAddress((const GLubyte*)"glXCreatePbuffer")) == NULL) || r;
-  r = ((glXCreatePixmap = (PFNGLXCREATEPIXMAPPROC)glewGetProcAddress((const GLubyte*)"glXCreatePixmap")) == NULL) || r;
-  r = ((glXCreateWindow = (PFNGLXCREATEWINDOWPROC)glewGetProcAddress((const GLubyte*)"glXCreateWindow")) == NULL) || r;
-  r = ((glXDestroyPbuffer = (PFNGLXDESTROYPBUFFERPROC)glewGetProcAddress((const GLubyte*)"glXDestroyPbuffer")) == NULL) || r;
-  r = ((glXDestroyPixmap = (PFNGLXDESTROYPIXMAPPROC)glewGetProcAddress((const GLubyte*)"glXDestroyPixmap")) == NULL) || r;
-  r = ((glXDestroyWindow = (PFNGLXDESTROYWINDOWPROC)glewGetProcAddress((const GLubyte*)"glXDestroyWindow")) == NULL) || r;
-  r = ((glXGetCurrentReadDrawable = (PFNGLXGETCURRENTREADDRAWABLEPROC)glewGetProcAddress((const GLubyte*)"glXGetCurrentReadDrawable")) == NULL) || r;
-  r = ((glXGetFBConfigAttrib = (PFNGLXGETFBCONFIGATTRIBPROC)glewGetProcAddress((const GLubyte*)"glXGetFBConfigAttrib")) == NULL) || r;
-  r = ((glXGetFBConfigs = (PFNGLXGETFBCONFIGSPROC)glewGetProcAddress((const GLubyte*)"glXGetFBConfigs")) == NULL) || r;
-  r = ((glXGetSelectedEvent = (PFNGLXGETSELECTEDEVENTPROC)glewGetProcAddress((const GLubyte*)"glXGetSelectedEvent")) == NULL) || r;
-  r = ((glXGetVisualFromFBConfig = (PFNGLXGETVISUALFROMFBCONFIGPROC)glewGetProcAddress((const GLubyte*)"glXGetVisualFromFBConfig")) == NULL) || r;
-  r = ((glXMakeContextCurrent = (PFNGLXMAKECONTEXTCURRENTPROC)glewGetProcAddress((const GLubyte*)"glXMakeContextCurrent")) == NULL) || r;
-  r = ((glXQueryContext = (PFNGLXQUERYCONTEXTPROC)glewGetProcAddress((const GLubyte*)"glXQueryContext")) == NULL) || r;
-  r = ((glXQueryDrawable = (PFNGLXQUERYDRAWABLEPROC)glewGetProcAddress((const GLubyte*)"glXQueryDrawable")) == NULL) || r;
-  r = ((glXSelectEvent = (PFNGLXSELECTEVENTPROC)glewGetProcAddress((const GLubyte*)"glXSelectEvent")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_VERSION_1_3 */
-
-#ifdef GLX_VERSION_1_4
-
-#endif /* GLX_VERSION_1_4 */
-
-#ifdef GLX_3DFX_multisample
-
-#endif /* GLX_3DFX_multisample */
-
-#ifdef GLX_ARB_create_context
-
-static GLboolean _glewInit_GLX_ARB_create_context (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXCreateContextAttribsARB = (PFNGLXCREATECONTEXTATTRIBSARBPROC)glewGetProcAddress((const GLubyte*)"glXCreateContextAttribsARB")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_ARB_create_context */
-
-#ifdef GLX_ARB_create_context_profile
-
-#endif /* GLX_ARB_create_context_profile */
-
-#ifdef GLX_ARB_fbconfig_float
-
-#endif /* GLX_ARB_fbconfig_float */
-
-#ifdef GLX_ARB_framebuffer_sRGB
-
-#endif /* GLX_ARB_framebuffer_sRGB */
-
-#ifdef GLX_ARB_get_proc_address
-
-#endif /* GLX_ARB_get_proc_address */
-
-#ifdef GLX_ARB_multisample
-
-#endif /* GLX_ARB_multisample */
-
-#ifdef GLX_ARB_vertex_buffer_object
-
-#endif /* GLX_ARB_vertex_buffer_object */
-
-#ifdef GLX_ATI_pixel_format_float
-
-#endif /* GLX_ATI_pixel_format_float */
-
-#ifdef GLX_ATI_render_texture
-
-static GLboolean _glewInit_GLX_ATI_render_texture (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXBindTexImageATI = (PFNGLXBINDTEXIMAGEATIPROC)glewGetProcAddress((const GLubyte*)"glXBindTexImageATI")) == NULL) || r;
-  r = ((glXDrawableAttribATI = (PFNGLXDRAWABLEATTRIBATIPROC)glewGetProcAddress((const GLubyte*)"glXDrawableAttribATI")) == NULL) || r;
-  r = ((glXReleaseTexImageATI = (PFNGLXRELEASETEXIMAGEATIPROC)glewGetProcAddress((const GLubyte*)"glXReleaseTexImageATI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_ATI_render_texture */
-
-#ifdef GLX_EXT_fbconfig_packed_float
-
-#endif /* GLX_EXT_fbconfig_packed_float */
-
-#ifdef GLX_EXT_framebuffer_sRGB
-
-#endif /* GLX_EXT_framebuffer_sRGB */
-
-#ifdef GLX_EXT_import_context
-
-static GLboolean _glewInit_GLX_EXT_import_context (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXFreeContextEXT = (PFNGLXFREECONTEXTEXTPROC)glewGetProcAddress((const GLubyte*)"glXFreeContextEXT")) == NULL) || r;
-  r = ((glXGetContextIDEXT = (PFNGLXGETCONTEXTIDEXTPROC)glewGetProcAddress((const GLubyte*)"glXGetContextIDEXT")) == NULL) || r;
-  r = ((glXImportContextEXT = (PFNGLXIMPORTCONTEXTEXTPROC)glewGetProcAddress((const GLubyte*)"glXImportContextEXT")) == NULL) || r;
-  r = ((glXQueryContextInfoEXT = (PFNGLXQUERYCONTEXTINFOEXTPROC)glewGetProcAddress((const GLubyte*)"glXQueryContextInfoEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_EXT_import_context */
-
-#ifdef GLX_EXT_scene_marker
-
-#endif /* GLX_EXT_scene_marker */
-
-#ifdef GLX_EXT_swap_control
-
-static GLboolean _glewInit_GLX_EXT_swap_control (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXSwapIntervalEXT = (PFNGLXSWAPINTERVALEXTPROC)glewGetProcAddress((const GLubyte*)"glXSwapIntervalEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_EXT_swap_control */
-
-#ifdef GLX_EXT_texture_from_pixmap
-
-static GLboolean _glewInit_GLX_EXT_texture_from_pixmap (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXBindTexImageEXT = (PFNGLXBINDTEXIMAGEEXTPROC)glewGetProcAddress((const GLubyte*)"glXBindTexImageEXT")) == NULL) || r;
-  r = ((glXReleaseTexImageEXT = (PFNGLXRELEASETEXIMAGEEXTPROC)glewGetProcAddress((const GLubyte*)"glXReleaseTexImageEXT")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_EXT_texture_from_pixmap */
-
-#ifdef GLX_EXT_visual_info
-
-#endif /* GLX_EXT_visual_info */
-
-#ifdef GLX_EXT_visual_rating
-
-#endif /* GLX_EXT_visual_rating */
-
-#ifdef GLX_INTEL_swap_event
-
-#endif /* GLX_INTEL_swap_event */
-
-#ifdef GLX_MESA_agp_offset
-
-static GLboolean _glewInit_GLX_MESA_agp_offset (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXGetAGPOffsetMESA = (PFNGLXGETAGPOFFSETMESAPROC)glewGetProcAddress((const GLubyte*)"glXGetAGPOffsetMESA")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_MESA_agp_offset */
-
-#ifdef GLX_MESA_copy_sub_buffer
-
-static GLboolean _glewInit_GLX_MESA_copy_sub_buffer (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXCopySubBufferMESA = (PFNGLXCOPYSUBBUFFERMESAPROC)glewGetProcAddress((const GLubyte*)"glXCopySubBufferMESA")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_MESA_copy_sub_buffer */
-
-#ifdef GLX_MESA_pixmap_colormap
-
-static GLboolean _glewInit_GLX_MESA_pixmap_colormap (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXCreateGLXPixmapMESA = (PFNGLXCREATEGLXPIXMAPMESAPROC)glewGetProcAddress((const GLubyte*)"glXCreateGLXPixmapMESA")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_MESA_pixmap_colormap */
-
-#ifdef GLX_MESA_release_buffers
-
-static GLboolean _glewInit_GLX_MESA_release_buffers (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXReleaseBuffersMESA = (PFNGLXRELEASEBUFFERSMESAPROC)glewGetProcAddress((const GLubyte*)"glXReleaseBuffersMESA")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_MESA_release_buffers */
-
-#ifdef GLX_MESA_set_3dfx_mode
-
-static GLboolean _glewInit_GLX_MESA_set_3dfx_mode (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXSet3DfxModeMESA = (PFNGLXSET3DFXMODEMESAPROC)glewGetProcAddress((const GLubyte*)"glXSet3DfxModeMESA")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_MESA_set_3dfx_mode */
-
-#ifdef GLX_NV_copy_image
-
-static GLboolean _glewInit_GLX_NV_copy_image (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXCopyImageSubDataNV = (PFNGLXCOPYIMAGESUBDATANVPROC)glewGetProcAddress((const GLubyte*)"glXCopyImageSubDataNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_NV_copy_image */
-
-#ifdef GLX_NV_float_buffer
-
-#endif /* GLX_NV_float_buffer */
-
-#ifdef GLX_NV_present_video
-
-static GLboolean _glewInit_GLX_NV_present_video (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXBindVideoDeviceNV = (PFNGLXBINDVIDEODEVICENVPROC)glewGetProcAddress((const GLubyte*)"glXBindVideoDeviceNV")) == NULL) || r;
-  r = ((glXEnumerateVideoDevicesNV = (PFNGLXENUMERATEVIDEODEVICESNVPROC)glewGetProcAddress((const GLubyte*)"glXEnumerateVideoDevicesNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_NV_present_video */
-
-#ifdef GLX_NV_swap_group
-
-static GLboolean _glewInit_GLX_NV_swap_group (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXBindSwapBarrierNV = (PFNGLXBINDSWAPBARRIERNVPROC)glewGetProcAddress((const GLubyte*)"glXBindSwapBarrierNV")) == NULL) || r;
-  r = ((glXJoinSwapGroupNV = (PFNGLXJOINSWAPGROUPNVPROC)glewGetProcAddress((const GLubyte*)"glXJoinSwapGroupNV")) == NULL) || r;
-  r = ((glXQueryFrameCountNV = (PFNGLXQUERYFRAMECOUNTNVPROC)glewGetProcAddress((const GLubyte*)"glXQueryFrameCountNV")) == NULL) || r;
-  r = ((glXQueryMaxSwapGroupsNV = (PFNGLXQUERYMAXSWAPGROUPSNVPROC)glewGetProcAddress((const GLubyte*)"glXQueryMaxSwapGroupsNV")) == NULL) || r;
-  r = ((glXQuerySwapGroupNV = (PFNGLXQUERYSWAPGROUPNVPROC)glewGetProcAddress((const GLubyte*)"glXQuerySwapGroupNV")) == NULL) || r;
-  r = ((glXResetFrameCountNV = (PFNGLXRESETFRAMECOUNTNVPROC)glewGetProcAddress((const GLubyte*)"glXResetFrameCountNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_NV_swap_group */
-
-#ifdef GLX_NV_vertex_array_range
-
-static GLboolean _glewInit_GLX_NV_vertex_array_range (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXAllocateMemoryNV = (PFNGLXALLOCATEMEMORYNVPROC)glewGetProcAddress((const GLubyte*)"glXAllocateMemoryNV")) == NULL) || r;
-  r = ((glXFreeMemoryNV = (PFNGLXFREEMEMORYNVPROC)glewGetProcAddress((const GLubyte*)"glXFreeMemoryNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_NV_vertex_array_range */
-
-#ifdef GLX_NV_video_output
-
-static GLboolean _glewInit_GLX_NV_video_output (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXBindVideoImageNV = (PFNGLXBINDVIDEOIMAGENVPROC)glewGetProcAddress((const GLubyte*)"glXBindVideoImageNV")) == NULL) || r;
-  r = ((glXGetVideoDeviceNV = (PFNGLXGETVIDEODEVICENVPROC)glewGetProcAddress((const GLubyte*)"glXGetVideoDeviceNV")) == NULL) || r;
-  r = ((glXGetVideoInfoNV = (PFNGLXGETVIDEOINFONVPROC)glewGetProcAddress((const GLubyte*)"glXGetVideoInfoNV")) == NULL) || r;
-  r = ((glXReleaseVideoDeviceNV = (PFNGLXRELEASEVIDEODEVICENVPROC)glewGetProcAddress((const GLubyte*)"glXReleaseVideoDeviceNV")) == NULL) || r;
-  r = ((glXReleaseVideoImageNV = (PFNGLXRELEASEVIDEOIMAGENVPROC)glewGetProcAddress((const GLubyte*)"glXReleaseVideoImageNV")) == NULL) || r;
-  r = ((glXSendPbufferToVideoNV = (PFNGLXSENDPBUFFERTOVIDEONVPROC)glewGetProcAddress((const GLubyte*)"glXSendPbufferToVideoNV")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_NV_video_output */
-
-#ifdef GLX_OML_swap_method
-
-#endif /* GLX_OML_swap_method */
-
-#if defined(GLX_OML_sync_control) && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
-#include <inttypes.h>
-
-static GLboolean _glewInit_GLX_OML_sync_control (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXGetMscRateOML = (PFNGLXGETMSCRATEOMLPROC)glewGetProcAddress((const GLubyte*)"glXGetMscRateOML")) == NULL) || r;
-  r = ((glXGetSyncValuesOML = (PFNGLXGETSYNCVALUESOMLPROC)glewGetProcAddress((const GLubyte*)"glXGetSyncValuesOML")) == NULL) || r;
-  r = ((glXSwapBuffersMscOML = (PFNGLXSWAPBUFFERSMSCOMLPROC)glewGetProcAddress((const GLubyte*)"glXSwapBuffersMscOML")) == NULL) || r;
-  r = ((glXWaitForMscOML = (PFNGLXWAITFORMSCOMLPROC)glewGetProcAddress((const GLubyte*)"glXWaitForMscOML")) == NULL) || r;
-  r = ((glXWaitForSbcOML = (PFNGLXWAITFORSBCOMLPROC)glewGetProcAddress((const GLubyte*)"glXWaitForSbcOML")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_OML_sync_control */
-
-#ifdef GLX_SGIS_blended_overlay
-
-#endif /* GLX_SGIS_blended_overlay */
-
-#ifdef GLX_SGIS_color_range
-
-#endif /* GLX_SGIS_color_range */
-
-#ifdef GLX_SGIS_multisample
-
-#endif /* GLX_SGIS_multisample */
-
-#ifdef GLX_SGIS_shared_multisample
-
-#endif /* GLX_SGIS_shared_multisample */
-
-#ifdef GLX_SGIX_fbconfig
-
-static GLboolean _glewInit_GLX_SGIX_fbconfig (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXChooseFBConfigSGIX = (PFNGLXCHOOSEFBCONFIGSGIXPROC)glewGetProcAddress((const GLubyte*)"glXChooseFBConfigSGIX")) == NULL) || r;
-  r = ((glXCreateContextWithConfigSGIX = (PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC)glewGetProcAddress((const GLubyte*)"glXCreateContextWithConfigSGIX")) == NULL) || r;
-  r = ((glXCreateGLXPixmapWithConfigSGIX = (PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC)glewGetProcAddress((const GLubyte*)"glXCreateGLXPixmapWithConfigSGIX")) == NULL) || r;
-  r = ((glXGetFBConfigAttribSGIX = (PFNGLXGETFBCONFIGATTRIBSGIXPROC)glewGetProcAddress((const GLubyte*)"glXGetFBConfigAttribSGIX")) == NULL) || r;
-  r = ((glXGetFBConfigFromVisualSGIX = (PFNGLXGETFBCONFIGFROMVISUALSGIXPROC)glewGetProcAddress((const GLubyte*)"glXGetFBConfigFromVisualSGIX")) == NULL) || r;
-  r = ((glXGetVisualFromFBConfigSGIX = (PFNGLXGETVISUALFROMFBCONFIGSGIXPROC)glewGetProcAddress((const GLubyte*)"glXGetVisualFromFBConfigSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_SGIX_fbconfig */
-
-#ifdef GLX_SGIX_hyperpipe
-
-static GLboolean _glewInit_GLX_SGIX_hyperpipe (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXBindHyperpipeSGIX = (PFNGLXBINDHYPERPIPESGIXPROC)glewGetProcAddress((const GLubyte*)"glXBindHyperpipeSGIX")) == NULL) || r;
-  r = ((glXDestroyHyperpipeConfigSGIX = (PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC)glewGetProcAddress((const GLubyte*)"glXDestroyHyperpipeConfigSGIX")) == NULL) || r;
-  r = ((glXHyperpipeAttribSGIX = (PFNGLXHYPERPIPEATTRIBSGIXPROC)glewGetProcAddress((const GLubyte*)"glXHyperpipeAttribSGIX")) == NULL) || r;
-  r = ((glXHyperpipeConfigSGIX = (PFNGLXHYPERPIPECONFIGSGIXPROC)glewGetProcAddress((const GLubyte*)"glXHyperpipeConfigSGIX")) == NULL) || r;
-  r = ((glXQueryHyperpipeAttribSGIX = (PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC)glewGetProcAddress((const GLubyte*)"glXQueryHyperpipeAttribSGIX")) == NULL) || r;
-  r = ((glXQueryHyperpipeBestAttribSGIX = (PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC)glewGetProcAddress((const GLubyte*)"glXQueryHyperpipeBestAttribSGIX")) == NULL) || r;
-  r = ((glXQueryHyperpipeConfigSGIX = (PFNGLXQUERYHYPERPIPECONFIGSGIXPROC)glewGetProcAddress((const GLubyte*)"glXQueryHyperpipeConfigSGIX")) == NULL) || r;
-  r = ((glXQueryHyperpipeNetworkSGIX = (PFNGLXQUERYHYPERPIPENETWORKSGIXPROC)glewGetProcAddress((const GLubyte*)"glXQueryHyperpipeNetworkSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_SGIX_hyperpipe */
-
-#ifdef GLX_SGIX_pbuffer
-
-static GLboolean _glewInit_GLX_SGIX_pbuffer (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXCreateGLXPbufferSGIX = (PFNGLXCREATEGLXPBUFFERSGIXPROC)glewGetProcAddress((const GLubyte*)"glXCreateGLXPbufferSGIX")) == NULL) || r;
-  r = ((glXDestroyGLXPbufferSGIX = (PFNGLXDESTROYGLXPBUFFERSGIXPROC)glewGetProcAddress((const GLubyte*)"glXDestroyGLXPbufferSGIX")) == NULL) || r;
-  r = ((glXGetSelectedEventSGIX = (PFNGLXGETSELECTEDEVENTSGIXPROC)glewGetProcAddress((const GLubyte*)"glXGetSelectedEventSGIX")) == NULL) || r;
-  r = ((glXQueryGLXPbufferSGIX = (PFNGLXQUERYGLXPBUFFERSGIXPROC)glewGetProcAddress((const GLubyte*)"glXQueryGLXPbufferSGIX")) == NULL) || r;
-  r = ((glXSelectEventSGIX = (PFNGLXSELECTEVENTSGIXPROC)glewGetProcAddress((const GLubyte*)"glXSelectEventSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_SGIX_pbuffer */
-
-#ifdef GLX_SGIX_swap_barrier
-
-static GLboolean _glewInit_GLX_SGIX_swap_barrier (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXBindSwapBarrierSGIX = (PFNGLXBINDSWAPBARRIERSGIXPROC)glewGetProcAddress((const GLubyte*)"glXBindSwapBarrierSGIX")) == NULL) || r;
-  r = ((glXQueryMaxSwapBarriersSGIX = (PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC)glewGetProcAddress((const GLubyte*)"glXQueryMaxSwapBarriersSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_SGIX_swap_barrier */
-
-#ifdef GLX_SGIX_swap_group
-
-static GLboolean _glewInit_GLX_SGIX_swap_group (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXJoinSwapGroupSGIX = (PFNGLXJOINSWAPGROUPSGIXPROC)glewGetProcAddress((const GLubyte*)"glXJoinSwapGroupSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_SGIX_swap_group */
-
-#ifdef GLX_SGIX_video_resize
-
-static GLboolean _glewInit_GLX_SGIX_video_resize (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXBindChannelToWindowSGIX = (PFNGLXBINDCHANNELTOWINDOWSGIXPROC)glewGetProcAddress((const GLubyte*)"glXBindChannelToWindowSGIX")) == NULL) || r;
-  r = ((glXChannelRectSGIX = (PFNGLXCHANNELRECTSGIXPROC)glewGetProcAddress((const GLubyte*)"glXChannelRectSGIX")) == NULL) || r;
-  r = ((glXChannelRectSyncSGIX = (PFNGLXCHANNELRECTSYNCSGIXPROC)glewGetProcAddress((const GLubyte*)"glXChannelRectSyncSGIX")) == NULL) || r;
-  r = ((glXQueryChannelDeltasSGIX = (PFNGLXQUERYCHANNELDELTASSGIXPROC)glewGetProcAddress((const GLubyte*)"glXQueryChannelDeltasSGIX")) == NULL) || r;
-  r = ((glXQueryChannelRectSGIX = (PFNGLXQUERYCHANNELRECTSGIXPROC)glewGetProcAddress((const GLubyte*)"glXQueryChannelRectSGIX")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_SGIX_video_resize */
-
-#ifdef GLX_SGIX_visual_select_group
-
-#endif /* GLX_SGIX_visual_select_group */
-
-#ifdef GLX_SGI_cushion
-
-static GLboolean _glewInit_GLX_SGI_cushion (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXCushionSGI = (PFNGLXCUSHIONSGIPROC)glewGetProcAddress((const GLubyte*)"glXCushionSGI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_SGI_cushion */
-
-#ifdef GLX_SGI_make_current_read
-
-static GLboolean _glewInit_GLX_SGI_make_current_read (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXGetCurrentReadDrawableSGI = (PFNGLXGETCURRENTREADDRAWABLESGIPROC)glewGetProcAddress((const GLubyte*)"glXGetCurrentReadDrawableSGI")) == NULL) || r;
-  r = ((glXMakeCurrentReadSGI = (PFNGLXMAKECURRENTREADSGIPROC)glewGetProcAddress((const GLubyte*)"glXMakeCurrentReadSGI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_SGI_make_current_read */
-
-#ifdef GLX_SGI_swap_control
-
-static GLboolean _glewInit_GLX_SGI_swap_control (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXSwapIntervalSGI = (PFNGLXSWAPINTERVALSGIPROC)glewGetProcAddress((const GLubyte*)"glXSwapIntervalSGI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_SGI_swap_control */
-
-#ifdef GLX_SGI_video_sync
-
-static GLboolean _glewInit_GLX_SGI_video_sync (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXGetVideoSyncSGI = (PFNGLXGETVIDEOSYNCSGIPROC)glewGetProcAddress((const GLubyte*)"glXGetVideoSyncSGI")) == NULL) || r;
-  r = ((glXWaitVideoSyncSGI = (PFNGLXWAITVIDEOSYNCSGIPROC)glewGetProcAddress((const GLubyte*)"glXWaitVideoSyncSGI")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_SGI_video_sync */
-
-#ifdef GLX_SUN_get_transparent_index
-
-static GLboolean _glewInit_GLX_SUN_get_transparent_index (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXGetTransparentIndexSUN = (PFNGLXGETTRANSPARENTINDEXSUNPROC)glewGetProcAddress((const GLubyte*)"glXGetTransparentIndexSUN")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_SUN_get_transparent_index */
-
-#ifdef GLX_SUN_video_resize
-
-static GLboolean _glewInit_GLX_SUN_video_resize (GLXEW_CONTEXT_ARG_DEF_INIT)
-{
-  GLboolean r = GL_FALSE;
-
-  r = ((glXGetVideoResizeSUN = (PFNGLXGETVIDEORESIZESUNPROC)glewGetProcAddress((const GLubyte*)"glXGetVideoResizeSUN")) == NULL) || r;
-  r = ((glXVideoResizeSUN = (PFNGLXVIDEORESIZESUNPROC)glewGetProcAddress((const GLubyte*)"glXVideoResizeSUN")) == NULL) || r;
-
-  return r;
-}
-
-#endif /* GLX_SUN_video_resize */
-
-/* ------------------------------------------------------------------------ */
-
-GLboolean glxewGetExtension (const char* name)
-{    
-  GLubyte* p;
-  GLubyte* end;
-  GLuint len;
-
-  if (glXGetCurrentDisplay == NULL) return GL_FALSE;
-  len = _glewStrLen((const GLubyte*)name);
-  p = (GLubyte*)glXGetClientString(glXGetCurrentDisplay(), GLX_EXTENSIONS);
-  if (0 == p) return GL_FALSE;
-  end = p + _glewStrLen(p);
-  while (p < end)
-  {
-    GLuint n = _glewStrCLen(p, ' ');
-    if (len == n && _glewStrSame((const GLubyte*)name, p, n)) return GL_TRUE;
-    p += n+1;
-  }
-  return GL_FALSE;
-}
-
-GLenum glxewContextInit (GLXEW_CONTEXT_ARG_DEF_LIST)
-{
-  int major, minor;
-  /* initialize core GLX 1.2 */
-  if (_glewInit_GLX_VERSION_1_2(GLEW_CONTEXT_ARG_VAR_INIT)) return GLEW_ERROR_GLX_VERSION_11_ONLY;
-  /* initialize flags */
-  CONST_CAST(GLXEW_VERSION_1_0) = GL_TRUE;
-  CONST_CAST(GLXEW_VERSION_1_1) = GL_TRUE;
-  CONST_CAST(GLXEW_VERSION_1_2) = GL_TRUE;
-  CONST_CAST(GLXEW_VERSION_1_3) = GL_TRUE;
-  CONST_CAST(GLXEW_VERSION_1_4) = GL_TRUE;
-  /* query GLX version */
-  glXQueryVersion(glXGetCurrentDisplay(), &major, &minor);
-  if (major == 1 && minor <= 3)
-  {
-    switch (minor)
-    {
-      case 3:
-      CONST_CAST(GLXEW_VERSION_1_4) = GL_FALSE;
-      break;
-      case 2:
-      CONST_CAST(GLXEW_VERSION_1_4) = GL_FALSE;
-      CONST_CAST(GLXEW_VERSION_1_3) = GL_FALSE;
-      break;
-      default:
-      return GLEW_ERROR_GLX_VERSION_11_ONLY;
-      break;
-    }
-  }
-  /* initialize extensions */
-#ifdef GLX_VERSION_1_3
-  if (glewExperimental || GLXEW_VERSION_1_3) CONST_CAST(GLXEW_VERSION_1_3) = !_glewInit_GLX_VERSION_1_3(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_VERSION_1_3 */
-#ifdef GLX_3DFX_multisample
-  CONST_CAST(GLXEW_3DFX_multisample) = glxewGetExtension("GLX_3DFX_multisample");
-#endif /* GLX_3DFX_multisample */
-#ifdef GLX_ARB_create_context
-  CONST_CAST(GLXEW_ARB_create_context) = glxewGetExtension("GLX_ARB_create_context");
-  if (glewExperimental || GLXEW_ARB_create_context) CONST_CAST(GLXEW_ARB_create_context) = !_glewInit_GLX_ARB_create_context(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_ARB_create_context */
-#ifdef GLX_ARB_create_context_profile
-  CONST_CAST(GLXEW_ARB_create_context_profile) = glxewGetExtension("GLX_ARB_create_context_profile");
-#endif /* GLX_ARB_create_context_profile */
-#ifdef GLX_ARB_fbconfig_float
-  CONST_CAST(GLXEW_ARB_fbconfig_float) = glxewGetExtension("GLX_ARB_fbconfig_float");
-#endif /* GLX_ARB_fbconfig_float */
-#ifdef GLX_ARB_framebuffer_sRGB
-  CONST_CAST(GLXEW_ARB_framebuffer_sRGB) = glxewGetExtension("GLX_ARB_framebuffer_sRGB");
-#endif /* GLX_ARB_framebuffer_sRGB */
-#ifdef GLX_ARB_get_proc_address
-  CONST_CAST(GLXEW_ARB_get_proc_address) = glxewGetExtension("GLX_ARB_get_proc_address");
-#endif /* GLX_ARB_get_proc_address */
-#ifdef GLX_ARB_multisample
-  CONST_CAST(GLXEW_ARB_multisample) = glxewGetExtension("GLX_ARB_multisample");
-#endif /* GLX_ARB_multisample */
-#ifdef GLX_ARB_vertex_buffer_object
-  CONST_CAST(GLXEW_ARB_vertex_buffer_object) = glxewGetExtension("GLX_ARB_vertex_buffer_object");
-#endif /* GLX_ARB_vertex_buffer_object */
-#ifdef GLX_ATI_pixel_format_float
-  CONST_CAST(GLXEW_ATI_pixel_format_float) = glxewGetExtension("GLX_ATI_pixel_format_float");
-#endif /* GLX_ATI_pixel_format_float */
-#ifdef GLX_ATI_render_texture
-  CONST_CAST(GLXEW_ATI_render_texture) = glxewGetExtension("GLX_ATI_render_texture");
-  if (glewExperimental || GLXEW_ATI_render_texture) CONST_CAST(GLXEW_ATI_render_texture) = !_glewInit_GLX_ATI_render_texture(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_ATI_render_texture */
-#ifdef GLX_EXT_fbconfig_packed_float
-  CONST_CAST(GLXEW_EXT_fbconfig_packed_float) = glxewGetExtension("GLX_EXT_fbconfig_packed_float");
-#endif /* GLX_EXT_fbconfig_packed_float */
-#ifdef GLX_EXT_framebuffer_sRGB
-  CONST_CAST(GLXEW_EXT_framebuffer_sRGB) = glxewGetExtension("GLX_EXT_framebuffer_sRGB");
-#endif /* GLX_EXT_framebuffer_sRGB */
-#ifdef GLX_EXT_import_context
-  CONST_CAST(GLXEW_EXT_import_context) = glxewGetExtension("GLX_EXT_import_context");
-  if (glewExperimental || GLXEW_EXT_import_context) CONST_CAST(GLXEW_EXT_import_context) = !_glewInit_GLX_EXT_import_context(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_EXT_import_context */
-#ifdef GLX_EXT_scene_marker
-  CONST_CAST(GLXEW_EXT_scene_marker) = glxewGetExtension("GLX_EXT_scene_marker");
-#endif /* GLX_EXT_scene_marker */
-#ifdef GLX_EXT_swap_control
-  CONST_CAST(GLXEW_EXT_swap_control) = glxewGetExtension("GLX_EXT_swap_control");
-  if (glewExperimental || GLXEW_EXT_swap_control) CONST_CAST(GLXEW_EXT_swap_control) = !_glewInit_GLX_EXT_swap_control(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_EXT_swap_control */
-#ifdef GLX_EXT_texture_from_pixmap
-  CONST_CAST(GLXEW_EXT_texture_from_pixmap) = glxewGetExtension("GLX_EXT_texture_from_pixmap");
-  if (glewExperimental || GLXEW_EXT_texture_from_pixmap) CONST_CAST(GLXEW_EXT_texture_from_pixmap) = !_glewInit_GLX_EXT_texture_from_pixmap(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_EXT_texture_from_pixmap */
-#ifdef GLX_EXT_visual_info
-  CONST_CAST(GLXEW_EXT_visual_info) = glxewGetExtension("GLX_EXT_visual_info");
-#endif /* GLX_EXT_visual_info */
-#ifdef GLX_EXT_visual_rating
-  CONST_CAST(GLXEW_EXT_visual_rating) = glxewGetExtension("GLX_EXT_visual_rating");
-#endif /* GLX_EXT_visual_rating */
-#ifdef GLX_INTEL_swap_event
-  CONST_CAST(GLXEW_INTEL_swap_event) = glxewGetExtension("GLX_INTEL_swap_event");
-#endif /* GLX_INTEL_swap_event */
-#ifdef GLX_MESA_agp_offset
-  CONST_CAST(GLXEW_MESA_agp_offset) = glxewGetExtension("GLX_MESA_agp_offset");
-  if (glewExperimental || GLXEW_MESA_agp_offset) CONST_CAST(GLXEW_MESA_agp_offset) = !_glewInit_GLX_MESA_agp_offset(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_MESA_agp_offset */
-#ifdef GLX_MESA_copy_sub_buffer
-  CONST_CAST(GLXEW_MESA_copy_sub_buffer) = glxewGetExtension("GLX_MESA_copy_sub_buffer");
-  if (glewExperimental || GLXEW_MESA_copy_sub_buffer) CONST_CAST(GLXEW_MESA_copy_sub_buffer) = !_glewInit_GLX_MESA_copy_sub_buffer(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_MESA_copy_sub_buffer */
-#ifdef GLX_MESA_pixmap_colormap
-  CONST_CAST(GLXEW_MESA_pixmap_colormap) = glxewGetExtension("GLX_MESA_pixmap_colormap");
-  if (glewExperimental || GLXEW_MESA_pixmap_colormap) CONST_CAST(GLXEW_MESA_pixmap_colormap) = !_glewInit_GLX_MESA_pixmap_colormap(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_MESA_pixmap_colormap */
-#ifdef GLX_MESA_release_buffers
-  CONST_CAST(GLXEW_MESA_release_buffers) = glxewGetExtension("GLX_MESA_release_buffers");
-  if (glewExperimental || GLXEW_MESA_release_buffers) CONST_CAST(GLXEW_MESA_release_buffers) = !_glewInit_GLX_MESA_release_buffers(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_MESA_release_buffers */
-#ifdef GLX_MESA_set_3dfx_mode
-  CONST_CAST(GLXEW_MESA_set_3dfx_mode) = glxewGetExtension("GLX_MESA_set_3dfx_mode");
-  if (glewExperimental || GLXEW_MESA_set_3dfx_mode) CONST_CAST(GLXEW_MESA_set_3dfx_mode) = !_glewInit_GLX_MESA_set_3dfx_mode(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_MESA_set_3dfx_mode */
-#ifdef GLX_NV_copy_image
-  CONST_CAST(GLXEW_NV_copy_image) = glxewGetExtension("GLX_NV_copy_image");
-  if (glewExperimental || GLXEW_NV_copy_image) CONST_CAST(GLXEW_NV_copy_image) = !_glewInit_GLX_NV_copy_image(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_NV_copy_image */
-#ifdef GLX_NV_float_buffer
-  CONST_CAST(GLXEW_NV_float_buffer) = glxewGetExtension("GLX_NV_float_buffer");
-#endif /* GLX_NV_float_buffer */
-#ifdef GLX_NV_present_video
-  CONST_CAST(GLXEW_NV_present_video) = glxewGetExtension("GLX_NV_present_video");
-  if (glewExperimental || GLXEW_NV_present_video) CONST_CAST(GLXEW_NV_present_video) = !_glewInit_GLX_NV_present_video(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_NV_present_video */
-#ifdef GLX_NV_swap_group
-  CONST_CAST(GLXEW_NV_swap_group) = glxewGetExtension("GLX_NV_swap_group");
-  if (glewExperimental || GLXEW_NV_swap_group) CONST_CAST(GLXEW_NV_swap_group) = !_glewInit_GLX_NV_swap_group(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_NV_swap_group */
-#ifdef GLX_NV_vertex_array_range
-  CONST_CAST(GLXEW_NV_vertex_array_range) = glxewGetExtension("GLX_NV_vertex_array_range");
-  if (glewExperimental || GLXEW_NV_vertex_array_range) CONST_CAST(GLXEW_NV_vertex_array_range) = !_glewInit_GLX_NV_vertex_array_range(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_NV_vertex_array_range */
-#ifdef GLX_NV_video_output
-  CONST_CAST(GLXEW_NV_video_output) = glxewGetExtension("GLX_NV_video_output");
-  if (glewExperimental || GLXEW_NV_video_output) CONST_CAST(GLXEW_NV_video_output) = !_glewInit_GLX_NV_video_output(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_NV_video_output */
-#ifdef GLX_OML_swap_method
-  CONST_CAST(GLXEW_OML_swap_method) = glxewGetExtension("GLX_OML_swap_method");
-#endif /* GLX_OML_swap_method */
-#if defined(GLX_OML_sync_control) && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
-#include <inttypes.h>
-  CONST_CAST(GLXEW_OML_sync_control) = glxewGetExtension("GLX_OML_sync_control");
-  if (glewExperimental || GLXEW_OML_sync_control) CONST_CAST(GLXEW_OML_sync_control) = !_glewInit_GLX_OML_sync_control(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_OML_sync_control */
-#ifdef GLX_SGIS_blended_overlay
-  CONST_CAST(GLXEW_SGIS_blended_overlay) = glxewGetExtension("GLX_SGIS_blended_overlay");
-#endif /* GLX_SGIS_blended_overlay */
-#ifdef GLX_SGIS_color_range
-  CONST_CAST(GLXEW_SGIS_color_range) = glxewGetExtension("GLX_SGIS_color_range");
-#endif /* GLX_SGIS_color_range */
-#ifdef GLX_SGIS_multisample
-  CONST_CAST(GLXEW_SGIS_multisample) = glxewGetExtension("GLX_SGIS_multisample");
-#endif /* GLX_SGIS_multisample */
-#ifdef GLX_SGIS_shared_multisample
-  CONST_CAST(GLXEW_SGIS_shared_multisample) = glxewGetExtension("GLX_SGIS_shared_multisample");
-#endif /* GLX_SGIS_shared_multisample */
-#ifdef GLX_SGIX_fbconfig
-  CONST_CAST(GLXEW_SGIX_fbconfig) = glxewGetExtension("GLX_SGIX_fbconfig");
-  if (glewExperimental || GLXEW_SGIX_fbconfig) CONST_CAST(GLXEW_SGIX_fbconfig) = !_glewInit_GLX_SGIX_fbconfig(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_SGIX_fbconfig */
-#ifdef GLX_SGIX_hyperpipe
-  CONST_CAST(GLXEW_SGIX_hyperpipe) = glxewGetExtension("GLX_SGIX_hyperpipe");
-  if (glewExperimental || GLXEW_SGIX_hyperpipe) CONST_CAST(GLXEW_SGIX_hyperpipe) = !_glewInit_GLX_SGIX_hyperpipe(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_SGIX_hyperpipe */
-#ifdef GLX_SGIX_pbuffer
-  CONST_CAST(GLXEW_SGIX_pbuffer) = glxewGetExtension("GLX_SGIX_pbuffer");
-  if (glewExperimental || GLXEW_SGIX_pbuffer) CONST_CAST(GLXEW_SGIX_pbuffer) = !_glewInit_GLX_SGIX_pbuffer(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_SGIX_pbuffer */
-#ifdef GLX_SGIX_swap_barrier
-  CONST_CAST(GLXEW_SGIX_swap_barrier) = glxewGetExtension("GLX_SGIX_swap_barrier");
-  if (glewExperimental || GLXEW_SGIX_swap_barrier) CONST_CAST(GLXEW_SGIX_swap_barrier) = !_glewInit_GLX_SGIX_swap_barrier(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_SGIX_swap_barrier */
-#ifdef GLX_SGIX_swap_group
-  CONST_CAST(GLXEW_SGIX_swap_group) = glxewGetExtension("GLX_SGIX_swap_group");
-  if (glewExperimental || GLXEW_SGIX_swap_group) CONST_CAST(GLXEW_SGIX_swap_group) = !_glewInit_GLX_SGIX_swap_group(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_SGIX_swap_group */
-#ifdef GLX_SGIX_video_resize
-  CONST_CAST(GLXEW_SGIX_video_resize) = glxewGetExtension("GLX_SGIX_video_resize");
-  if (glewExperimental || GLXEW_SGIX_video_resize) CONST_CAST(GLXEW_SGIX_video_resize) = !_glewInit_GLX_SGIX_video_resize(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_SGIX_video_resize */
-#ifdef GLX_SGIX_visual_select_group
-  CONST_CAST(GLXEW_SGIX_visual_select_group) = glxewGetExtension("GLX_SGIX_visual_select_group");
-#endif /* GLX_SGIX_visual_select_group */
-#ifdef GLX_SGI_cushion
-  CONST_CAST(GLXEW_SGI_cushion) = glxewGetExtension("GLX_SGI_cushion");
-  if (glewExperimental || GLXEW_SGI_cushion) CONST_CAST(GLXEW_SGI_cushion) = !_glewInit_GLX_SGI_cushion(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_SGI_cushion */
-#ifdef GLX_SGI_make_current_read
-  CONST_CAST(GLXEW_SGI_make_current_read) = glxewGetExtension("GLX_SGI_make_current_read");
-  if (glewExperimental || GLXEW_SGI_make_current_read) CONST_CAST(GLXEW_SGI_make_current_read) = !_glewInit_GLX_SGI_make_current_read(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_SGI_make_current_read */
-#ifdef GLX_SGI_swap_control
-  CONST_CAST(GLXEW_SGI_swap_control) = glxewGetExtension("GLX_SGI_swap_control");
-  if (glewExperimental || GLXEW_SGI_swap_control) CONST_CAST(GLXEW_SGI_swap_control) = !_glewInit_GLX_SGI_swap_control(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_SGI_swap_control */
-#ifdef GLX_SGI_video_sync
-  CONST_CAST(GLXEW_SGI_video_sync) = glxewGetExtension("GLX_SGI_video_sync");
-  if (glewExperimental || GLXEW_SGI_video_sync) CONST_CAST(GLXEW_SGI_video_sync) = !_glewInit_GLX_SGI_video_sync(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_SGI_video_sync */
-#ifdef GLX_SUN_get_transparent_index
-  CONST_CAST(GLXEW_SUN_get_transparent_index) = glxewGetExtension("GLX_SUN_get_transparent_index");
-  if (glewExperimental || GLXEW_SUN_get_transparent_index) CONST_CAST(GLXEW_SUN_get_transparent_index) = !_glewInit_GLX_SUN_get_transparent_index(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_SUN_get_transparent_index */
-#ifdef GLX_SUN_video_resize
-  CONST_CAST(GLXEW_SUN_video_resize) = glxewGetExtension("GLX_SUN_video_resize");
-  if (glewExperimental || GLXEW_SUN_video_resize) CONST_CAST(GLXEW_SUN_video_resize) = !_glewInit_GLX_SUN_video_resize(GLEW_CONTEXT_ARG_VAR_INIT);
-#endif /* GLX_SUN_video_resize */
-
-  return GLEW_OK;
-}
-
-#endif /* !__APPLE__ || GLEW_APPLE_GLX */
-
-/* ------------------------------------------------------------------------ */
-
-const GLubyte* glewGetErrorString (GLenum error)
-{
-  static const GLubyte* _glewErrorString[] =
-  {
-    (const GLubyte*)"No error",
-    (const GLubyte*)"Missing GL version",
-    (const GLubyte*)"GL 1.1 and up are not supported",
-    (const GLubyte*)"GLX 1.2 and up are not supported",
-    (const GLubyte*)"Unknown error"
-  };
-  const int max_error = sizeof(_glewErrorString)/sizeof(*_glewErrorString) - 1;
-  return _glewErrorString[(int)error > max_error ? max_error : (int)error];
-}
-
-const GLubyte* glewGetString (GLenum name)
-{
-  static const GLubyte* _glewString[] =
-  {
-    (const GLubyte*)NULL,
-    (const GLubyte*)"1.5.4",
-    (const GLubyte*)"1",
-    (const GLubyte*)"5",
-    (const GLubyte*)"4"
-  };
-  const int max_string = sizeof(_glewString)/sizeof(*_glewString) - 1;
-  return _glewString[(int)name > max_string ? 0 : (int)name];
-}
-
-/* ------------------------------------------------------------------------ */
-
-GLboolean glewExperimental = GL_FALSE;
-
-#if !defined(GLEW_MX)
-
-#if defined(_WIN32)
-extern GLenum wglewContextInit (void);
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX) /* _UNIX */
-extern GLenum glxewContextInit (void);
-#endif /* _WIN32 */
-
-GLenum glewInit ()
-{
-  GLenum r;
-  if ( (r = glewContextInit()) ) return r;
-#if defined(_WIN32)
-  return wglewContextInit();
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX) /* _UNIX */
-  return glxewContextInit();
-#else
-  return r;
-#endif /* _WIN32 */
-}
-
-#endif /* !GLEW_MX */
-#ifdef GLEW_MX
-GLboolean glewContextIsSupported (GLEWContext* ctx, const char* name)
-#else
-GLboolean glewIsSupported (const char* name)
-#endif
-{
-  GLubyte* pos = (GLubyte*)name;
-  GLuint len = _glewStrLen(pos);
-  GLboolean ret = GL_TRUE;
-  while (ret && len > 0)
-  {
-    if (_glewStrSame1(&pos, &len, (const GLubyte*)"GL_", 3))
-    {
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"VERSION_", 8))
-      {
-#ifdef GL_VERSION_1_2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"1_2", 3))
-        {
-          ret = GLEW_VERSION_1_2;
-          continue;
-        }
-#endif
-#ifdef GL_VERSION_1_3
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"1_3", 3))
-        {
-          ret = GLEW_VERSION_1_3;
-          continue;
-        }
-#endif
-#ifdef GL_VERSION_1_4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"1_4", 3))
-        {
-          ret = GLEW_VERSION_1_4;
-          continue;
-        }
-#endif
-#ifdef GL_VERSION_1_5
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"1_5", 3))
-        {
-          ret = GLEW_VERSION_1_5;
-          continue;
-        }
-#endif
-#ifdef GL_VERSION_2_0
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"2_0", 3))
-        {
-          ret = GLEW_VERSION_2_0;
-          continue;
-        }
-#endif
-#ifdef GL_VERSION_2_1
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"2_1", 3))
-        {
-          ret = GLEW_VERSION_2_1;
-          continue;
-        }
-#endif
-#ifdef GL_VERSION_3_0
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"3_0", 3))
-        {
-          ret = GLEW_VERSION_3_0;
-          continue;
-        }
-#endif
-#ifdef GL_VERSION_3_1
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"3_1", 3))
-        {
-          ret = GLEW_VERSION_3_1;
-          continue;
-        }
-#endif
-#ifdef GL_VERSION_3_2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"3_2", 3))
-        {
-          ret = GLEW_VERSION_3_2;
-          continue;
-        }
-#endif
-#ifdef GL_VERSION_3_3
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"3_3", 3))
-        {
-          ret = GLEW_VERSION_3_3;
-          continue;
-        }
-#endif
-#ifdef GL_VERSION_4_0
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"4_0", 3))
-        {
-          ret = GLEW_VERSION_4_0;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"3DFX_", 5))
-      {
-#ifdef GL_3DFX_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multisample", 11))
-        {
-          ret = GLEW_3DFX_multisample;
-          continue;
-        }
-#endif
-#ifdef GL_3DFX_tbuffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"tbuffer", 7))
-        {
-          ret = GLEW_3DFX_tbuffer;
-          continue;
-        }
-#endif
-#ifdef GL_3DFX_texture_compression_FXT1
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_compression_FXT1", 24))
-        {
-          ret = GLEW_3DFX_texture_compression_FXT1;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"AMD_", 4))
-      {
-#ifdef GL_AMD_conservative_depth
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"conservative_depth", 18))
-        {
-          ret = GLEW_AMD_conservative_depth;
-          continue;
-        }
-#endif
-#ifdef GL_AMD_draw_buffers_blend
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"draw_buffers_blend", 18))
-        {
-          ret = GLEW_AMD_draw_buffers_blend;
-          continue;
-        }
-#endif
-#ifdef GL_AMD_performance_monitor
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"performance_monitor", 19))
-        {
-          ret = GLEW_AMD_performance_monitor;
-          continue;
-        }
-#endif
-#ifdef GL_AMD_seamless_cubemap_per_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"seamless_cubemap_per_texture", 28))
-        {
-          ret = GLEW_AMD_seamless_cubemap_per_texture;
-          continue;
-        }
-#endif
-#ifdef GL_AMD_shader_stencil_export
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shader_stencil_export", 21))
-        {
-          ret = GLEW_AMD_shader_stencil_export;
-          continue;
-        }
-#endif
-#ifdef GL_AMD_texture_texture4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_texture4", 16))
-        {
-          ret = GLEW_AMD_texture_texture4;
-          continue;
-        }
-#endif
-#ifdef GL_AMD_vertex_shader_tessellator
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_shader_tessellator", 25))
-        {
-          ret = GLEW_AMD_vertex_shader_tessellator;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"APPLE_", 6))
-      {
-#ifdef GL_APPLE_aux_depth_stencil
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"aux_depth_stencil", 17))
-        {
-          ret = GLEW_APPLE_aux_depth_stencil;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_client_storage
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"client_storage", 14))
-        {
-          ret = GLEW_APPLE_client_storage;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_element_array
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"element_array", 13))
-        {
-          ret = GLEW_APPLE_element_array;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_fence
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fence", 5))
-        {
-          ret = GLEW_APPLE_fence;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_float_pixels
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"float_pixels", 12))
-        {
-          ret = GLEW_APPLE_float_pixels;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_flush_buffer_range
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"flush_buffer_range", 18))
-        {
-          ret = GLEW_APPLE_flush_buffer_range;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_object_purgeable
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"object_purgeable", 16))
-        {
-          ret = GLEW_APPLE_object_purgeable;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_pixel_buffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_buffer", 12))
-        {
-          ret = GLEW_APPLE_pixel_buffer;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_rgb_422
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"rgb_422", 7))
-        {
-          ret = GLEW_APPLE_rgb_422;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_row_bytes
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"row_bytes", 9))
-        {
-          ret = GLEW_APPLE_row_bytes;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_specular_vector
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"specular_vector", 15))
-        {
-          ret = GLEW_APPLE_specular_vector;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_texture_range
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_range", 13))
-        {
-          ret = GLEW_APPLE_texture_range;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_transform_hint
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"transform_hint", 14))
-        {
-          ret = GLEW_APPLE_transform_hint;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_vertex_array_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_array_object", 19))
-        {
-          ret = GLEW_APPLE_vertex_array_object;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_vertex_array_range
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_array_range", 18))
-        {
-          ret = GLEW_APPLE_vertex_array_range;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_vertex_program_evaluators
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_program_evaluators", 25))
-        {
-          ret = GLEW_APPLE_vertex_program_evaluators;
-          continue;
-        }
-#endif
-#ifdef GL_APPLE_ycbcr_422
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"ycbcr_422", 9))
-        {
-          ret = GLEW_APPLE_ycbcr_422;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"ARB_", 4))
-      {
-#ifdef GL_ARB_blend_func_extended
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"blend_func_extended", 19))
-        {
-          ret = GLEW_ARB_blend_func_extended;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_color_buffer_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"color_buffer_float", 18))
-        {
-          ret = GLEW_ARB_color_buffer_float;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_compatibility
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"compatibility", 13))
-        {
-          ret = GLEW_ARB_compatibility;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_copy_buffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"copy_buffer", 11))
-        {
-          ret = GLEW_ARB_copy_buffer;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_depth_buffer_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"depth_buffer_float", 18))
-        {
-          ret = GLEW_ARB_depth_buffer_float;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_depth_clamp
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"depth_clamp", 11))
-        {
-          ret = GLEW_ARB_depth_clamp;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_depth_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"depth_texture", 13))
-        {
-          ret = GLEW_ARB_depth_texture;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_draw_buffers
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"draw_buffers", 12))
-        {
-          ret = GLEW_ARB_draw_buffers;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_draw_buffers_blend
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"draw_buffers_blend", 18))
-        {
-          ret = GLEW_ARB_draw_buffers_blend;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_draw_elements_base_vertex
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"draw_elements_base_vertex", 25))
-        {
-          ret = GLEW_ARB_draw_elements_base_vertex;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_draw_indirect
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"draw_indirect", 13))
-        {
-          ret = GLEW_ARB_draw_indirect;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_draw_instanced
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"draw_instanced", 14))
-        {
-          ret = GLEW_ARB_draw_instanced;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_explicit_attrib_location
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"explicit_attrib_location", 24))
-        {
-          ret = GLEW_ARB_explicit_attrib_location;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_fragment_coord_conventions
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fragment_coord_conventions", 26))
-        {
-          ret = GLEW_ARB_fragment_coord_conventions;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_fragment_program
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fragment_program", 16))
-        {
-          ret = GLEW_ARB_fragment_program;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_fragment_program_shadow
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fragment_program_shadow", 23))
-        {
-          ret = GLEW_ARB_fragment_program_shadow;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_fragment_shader
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fragment_shader", 15))
-        {
-          ret = GLEW_ARB_fragment_shader;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_framebuffer_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"framebuffer_object", 18))
-        {
-          ret = GLEW_ARB_framebuffer_object;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_framebuffer_sRGB
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"framebuffer_sRGB", 16))
-        {
-          ret = GLEW_ARB_framebuffer_sRGB;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_geometry_shader4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"geometry_shader4", 16))
-        {
-          ret = GLEW_ARB_geometry_shader4;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_gpu_shader5
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"gpu_shader5", 11))
-        {
-          ret = GLEW_ARB_gpu_shader5;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_gpu_shader_fp64
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"gpu_shader_fp64", 15))
-        {
-          ret = GLEW_ARB_gpu_shader_fp64;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_half_float_pixel
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"half_float_pixel", 16))
-        {
-          ret = GLEW_ARB_half_float_pixel;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_half_float_vertex
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"half_float_vertex", 17))
-        {
-          ret = GLEW_ARB_half_float_vertex;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_imaging
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"imaging", 7))
-        {
-          ret = GLEW_ARB_imaging;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_instanced_arrays
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"instanced_arrays", 16))
-        {
-          ret = GLEW_ARB_instanced_arrays;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_map_buffer_range
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"map_buffer_range", 16))
-        {
-          ret = GLEW_ARB_map_buffer_range;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_matrix_palette
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"matrix_palette", 14))
-        {
-          ret = GLEW_ARB_matrix_palette;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multisample", 11))
-        {
-          ret = GLEW_ARB_multisample;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_multitexture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multitexture", 12))
-        {
-          ret = GLEW_ARB_multitexture;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_occlusion_query
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"occlusion_query", 15))
-        {
-          ret = GLEW_ARB_occlusion_query;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_occlusion_query2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"occlusion_query2", 16))
-        {
-          ret = GLEW_ARB_occlusion_query2;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_pixel_buffer_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_buffer_object", 19))
-        {
-          ret = GLEW_ARB_pixel_buffer_object;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_point_parameters
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"point_parameters", 16))
-        {
-          ret = GLEW_ARB_point_parameters;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_point_sprite
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"point_sprite", 12))
-        {
-          ret = GLEW_ARB_point_sprite;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_provoking_vertex
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"provoking_vertex", 16))
-        {
-          ret = GLEW_ARB_provoking_vertex;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_sample_shading
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"sample_shading", 14))
-        {
-          ret = GLEW_ARB_sample_shading;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_sampler_objects
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"sampler_objects", 15))
-        {
-          ret = GLEW_ARB_sampler_objects;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_seamless_cube_map
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"seamless_cube_map", 17))
-        {
-          ret = GLEW_ARB_seamless_cube_map;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_shader_bit_encoding
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shader_bit_encoding", 19))
-        {
-          ret = GLEW_ARB_shader_bit_encoding;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_shader_objects
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shader_objects", 14))
-        {
-          ret = GLEW_ARB_shader_objects;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_shader_subroutine
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shader_subroutine", 17))
-        {
-          ret = GLEW_ARB_shader_subroutine;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_shader_texture_lod
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shader_texture_lod", 18))
-        {
-          ret = GLEW_ARB_shader_texture_lod;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_shading_language_100
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shading_language_100", 20))
-        {
-          ret = GLEW_ARB_shading_language_100;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_shading_language_include
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shading_language_include", 24))
-        {
-          ret = GLEW_ARB_shading_language_include;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_shadow
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shadow", 6))
-        {
-          ret = GLEW_ARB_shadow;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_shadow_ambient
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shadow_ambient", 14))
-        {
-          ret = GLEW_ARB_shadow_ambient;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_sync
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"sync", 4))
-        {
-          ret = GLEW_ARB_sync;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_tessellation_shader
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"tessellation_shader", 19))
-        {
-          ret = GLEW_ARB_tessellation_shader;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_border_clamp
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_border_clamp", 20))
-        {
-          ret = GLEW_ARB_texture_border_clamp;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_buffer_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_buffer_object", 21))
-        {
-          ret = GLEW_ARB_texture_buffer_object;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_buffer_object_rgb32
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_buffer_object_rgb32", 27))
-        {
-          ret = GLEW_ARB_texture_buffer_object_rgb32;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_compression
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_compression", 19))
-        {
-          ret = GLEW_ARB_texture_compression;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_compression_bptc
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_compression_bptc", 24))
-        {
-          ret = GLEW_ARB_texture_compression_bptc;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_compression_rgtc
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_compression_rgtc", 24))
-        {
-          ret = GLEW_ARB_texture_compression_rgtc;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_cube_map
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_cube_map", 16))
-        {
-          ret = GLEW_ARB_texture_cube_map;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_cube_map_array
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_cube_map_array", 22))
-        {
-          ret = GLEW_ARB_texture_cube_map_array;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_env_add
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_env_add", 15))
-        {
-          ret = GLEW_ARB_texture_env_add;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_env_combine
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_env_combine", 19))
-        {
-          ret = GLEW_ARB_texture_env_combine;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_env_crossbar
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_env_crossbar", 20))
-        {
-          ret = GLEW_ARB_texture_env_crossbar;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_env_dot3
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_env_dot3", 16))
-        {
-          ret = GLEW_ARB_texture_env_dot3;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_float", 13))
-        {
-          ret = GLEW_ARB_texture_float;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_gather
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_gather", 14))
-        {
-          ret = GLEW_ARB_texture_gather;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_mirrored_repeat
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_mirrored_repeat", 23))
-        {
-          ret = GLEW_ARB_texture_mirrored_repeat;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_multisample", 19))
-        {
-          ret = GLEW_ARB_texture_multisample;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_non_power_of_two
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_non_power_of_two", 24))
-        {
-          ret = GLEW_ARB_texture_non_power_of_two;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_query_lod
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_query_lod", 17))
-        {
-          ret = GLEW_ARB_texture_query_lod;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_rectangle
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_rectangle", 17))
-        {
-          ret = GLEW_ARB_texture_rectangle;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_rg
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_rg", 10))
-        {
-          ret = GLEW_ARB_texture_rg;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_rgb10_a2ui
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_rgb10_a2ui", 18))
-        {
-          ret = GLEW_ARB_texture_rgb10_a2ui;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_texture_swizzle
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_swizzle", 15))
-        {
-          ret = GLEW_ARB_texture_swizzle;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_timer_query
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"timer_query", 11))
-        {
-          ret = GLEW_ARB_timer_query;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_transform_feedback2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"transform_feedback2", 19))
-        {
-          ret = GLEW_ARB_transform_feedback2;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_transform_feedback3
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"transform_feedback3", 19))
-        {
-          ret = GLEW_ARB_transform_feedback3;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_transpose_matrix
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"transpose_matrix", 16))
-        {
-          ret = GLEW_ARB_transpose_matrix;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_uniform_buffer_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"uniform_buffer_object", 21))
-        {
-          ret = GLEW_ARB_uniform_buffer_object;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_vertex_array_bgra
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_array_bgra", 17))
-        {
-          ret = GLEW_ARB_vertex_array_bgra;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_vertex_array_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_array_object", 19))
-        {
-          ret = GLEW_ARB_vertex_array_object;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_vertex_blend
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_blend", 12))
-        {
-          ret = GLEW_ARB_vertex_blend;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_vertex_buffer_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_buffer_object", 20))
-        {
-          ret = GLEW_ARB_vertex_buffer_object;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_vertex_program
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_program", 14))
-        {
-          ret = GLEW_ARB_vertex_program;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_vertex_shader
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_shader", 13))
-        {
-          ret = GLEW_ARB_vertex_shader;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_vertex_type_2_10_10_10_rev
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_type_2_10_10_10_rev", 26))
-        {
-          ret = GLEW_ARB_vertex_type_2_10_10_10_rev;
-          continue;
-        }
-#endif
-#ifdef GL_ARB_window_pos
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"window_pos", 10))
-        {
-          ret = GLEW_ARB_window_pos;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"ATIX_", 5))
-      {
-#ifdef GL_ATIX_point_sprites
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"point_sprites", 13))
-        {
-          ret = GLEW_ATIX_point_sprites;
-          continue;
-        }
-#endif
-#ifdef GL_ATIX_texture_env_combine3
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_env_combine3", 20))
-        {
-          ret = GLEW_ATIX_texture_env_combine3;
-          continue;
-        }
-#endif
-#ifdef GL_ATIX_texture_env_route
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_env_route", 17))
-        {
-          ret = GLEW_ATIX_texture_env_route;
-          continue;
-        }
-#endif
-#ifdef GL_ATIX_vertex_shader_output_point_size
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_shader_output_point_size", 31))
-        {
-          ret = GLEW_ATIX_vertex_shader_output_point_size;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"ATI_", 4))
-      {
-#ifdef GL_ATI_draw_buffers
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"draw_buffers", 12))
-        {
-          ret = GLEW_ATI_draw_buffers;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_element_array
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"element_array", 13))
-        {
-          ret = GLEW_ATI_element_array;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_envmap_bumpmap
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"envmap_bumpmap", 14))
-        {
-          ret = GLEW_ATI_envmap_bumpmap;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_fragment_shader
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fragment_shader", 15))
-        {
-          ret = GLEW_ATI_fragment_shader;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_map_object_buffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"map_object_buffer", 17))
-        {
-          ret = GLEW_ATI_map_object_buffer;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_meminfo
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"meminfo", 7))
-        {
-          ret = GLEW_ATI_meminfo;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_pn_triangles
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pn_triangles", 12))
-        {
-          ret = GLEW_ATI_pn_triangles;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_separate_stencil
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"separate_stencil", 16))
-        {
-          ret = GLEW_ATI_separate_stencil;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_shader_texture_lod
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shader_texture_lod", 18))
-        {
-          ret = GLEW_ATI_shader_texture_lod;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_text_fragment_shader
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"text_fragment_shader", 20))
-        {
-          ret = GLEW_ATI_text_fragment_shader;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_texture_compression_3dc
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_compression_3dc", 23))
-        {
-          ret = GLEW_ATI_texture_compression_3dc;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_texture_env_combine3
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_env_combine3", 20))
-        {
-          ret = GLEW_ATI_texture_env_combine3;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_texture_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_float", 13))
-        {
-          ret = GLEW_ATI_texture_float;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_texture_mirror_once
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_mirror_once", 19))
-        {
-          ret = GLEW_ATI_texture_mirror_once;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_vertex_array_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_array_object", 19))
-        {
-          ret = GLEW_ATI_vertex_array_object;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_vertex_attrib_array_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_attrib_array_object", 26))
-        {
-          ret = GLEW_ATI_vertex_attrib_array_object;
-          continue;
-        }
-#endif
-#ifdef GL_ATI_vertex_streams
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_streams", 14))
-        {
-          ret = GLEW_ATI_vertex_streams;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"EXT_", 4))
-      {
-#ifdef GL_EXT_422_pixels
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"422_pixels", 10))
-        {
-          ret = GLEW_EXT_422_pixels;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_Cg_shader
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"Cg_shader", 9))
-        {
-          ret = GLEW_EXT_Cg_shader;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_abgr
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"abgr", 4))
-        {
-          ret = GLEW_EXT_abgr;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_bgra
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"bgra", 4))
-        {
-          ret = GLEW_EXT_bgra;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_bindable_uniform
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"bindable_uniform", 16))
-        {
-          ret = GLEW_EXT_bindable_uniform;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_blend_color
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"blend_color", 11))
-        {
-          ret = GLEW_EXT_blend_color;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_blend_equation_separate
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"blend_equation_separate", 23))
-        {
-          ret = GLEW_EXT_blend_equation_separate;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_blend_func_separate
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"blend_func_separate", 19))
-        {
-          ret = GLEW_EXT_blend_func_separate;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_blend_logic_op
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"blend_logic_op", 14))
-        {
-          ret = GLEW_EXT_blend_logic_op;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_blend_minmax
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"blend_minmax", 12))
-        {
-          ret = GLEW_EXT_blend_minmax;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_blend_subtract
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"blend_subtract", 14))
-        {
-          ret = GLEW_EXT_blend_subtract;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_clip_volume_hint
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"clip_volume_hint", 16))
-        {
-          ret = GLEW_EXT_clip_volume_hint;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_cmyka
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"cmyka", 5))
-        {
-          ret = GLEW_EXT_cmyka;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_color_subtable
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"color_subtable", 14))
-        {
-          ret = GLEW_EXT_color_subtable;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_compiled_vertex_array
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"compiled_vertex_array", 21))
-        {
-          ret = GLEW_EXT_compiled_vertex_array;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_convolution
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"convolution", 11))
-        {
-          ret = GLEW_EXT_convolution;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_coordinate_frame
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"coordinate_frame", 16))
-        {
-          ret = GLEW_EXT_coordinate_frame;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_copy_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"copy_texture", 12))
-        {
-          ret = GLEW_EXT_copy_texture;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_cull_vertex
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"cull_vertex", 11))
-        {
-          ret = GLEW_EXT_cull_vertex;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_depth_bounds_test
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"depth_bounds_test", 17))
-        {
-          ret = GLEW_EXT_depth_bounds_test;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_direct_state_access
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"direct_state_access", 19))
-        {
-          ret = GLEW_EXT_direct_state_access;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_draw_buffers2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"draw_buffers2", 13))
-        {
-          ret = GLEW_EXT_draw_buffers2;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_draw_instanced
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"draw_instanced", 14))
-        {
-          ret = GLEW_EXT_draw_instanced;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_draw_range_elements
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"draw_range_elements", 19))
-        {
-          ret = GLEW_EXT_draw_range_elements;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_fog_coord
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fog_coord", 9))
-        {
-          ret = GLEW_EXT_fog_coord;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_fragment_lighting
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fragment_lighting", 17))
-        {
-          ret = GLEW_EXT_fragment_lighting;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_framebuffer_blit
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"framebuffer_blit", 16))
-        {
-          ret = GLEW_EXT_framebuffer_blit;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_framebuffer_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"framebuffer_multisample", 23))
-        {
-          ret = GLEW_EXT_framebuffer_multisample;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_framebuffer_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"framebuffer_object", 18))
-        {
-          ret = GLEW_EXT_framebuffer_object;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_framebuffer_sRGB
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"framebuffer_sRGB", 16))
-        {
-          ret = GLEW_EXT_framebuffer_sRGB;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_geometry_shader4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"geometry_shader4", 16))
-        {
-          ret = GLEW_EXT_geometry_shader4;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_gpu_program_parameters
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"gpu_program_parameters", 22))
-        {
-          ret = GLEW_EXT_gpu_program_parameters;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_gpu_shader4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"gpu_shader4", 11))
-        {
-          ret = GLEW_EXT_gpu_shader4;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_histogram
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"histogram", 9))
-        {
-          ret = GLEW_EXT_histogram;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_index_array_formats
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"index_array_formats", 19))
-        {
-          ret = GLEW_EXT_index_array_formats;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_index_func
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"index_func", 10))
-        {
-          ret = GLEW_EXT_index_func;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_index_material
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"index_material", 14))
-        {
-          ret = GLEW_EXT_index_material;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_index_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"index_texture", 13))
-        {
-          ret = GLEW_EXT_index_texture;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_light_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"light_texture", 13))
-        {
-          ret = GLEW_EXT_light_texture;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_misc_attribute
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"misc_attribute", 14))
-        {
-          ret = GLEW_EXT_misc_attribute;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_multi_draw_arrays
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multi_draw_arrays", 17))
-        {
-          ret = GLEW_EXT_multi_draw_arrays;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multisample", 11))
-        {
-          ret = GLEW_EXT_multisample;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_packed_depth_stencil
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"packed_depth_stencil", 20))
-        {
-          ret = GLEW_EXT_packed_depth_stencil;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_packed_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"packed_float", 12))
-        {
-          ret = GLEW_EXT_packed_float;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_packed_pixels
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"packed_pixels", 13))
-        {
-          ret = GLEW_EXT_packed_pixels;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_paletted_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"paletted_texture", 16))
-        {
-          ret = GLEW_EXT_paletted_texture;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_pixel_buffer_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_buffer_object", 19))
-        {
-          ret = GLEW_EXT_pixel_buffer_object;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_pixel_transform
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_transform", 15))
-        {
-          ret = GLEW_EXT_pixel_transform;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_pixel_transform_color_table
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_transform_color_table", 27))
-        {
-          ret = GLEW_EXT_pixel_transform_color_table;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_point_parameters
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"point_parameters", 16))
-        {
-          ret = GLEW_EXT_point_parameters;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_polygon_offset
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"polygon_offset", 14))
-        {
-          ret = GLEW_EXT_polygon_offset;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_provoking_vertex
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"provoking_vertex", 16))
-        {
-          ret = GLEW_EXT_provoking_vertex;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_rescale_normal
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"rescale_normal", 14))
-        {
-          ret = GLEW_EXT_rescale_normal;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_scene_marker
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"scene_marker", 12))
-        {
-          ret = GLEW_EXT_scene_marker;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_secondary_color
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"secondary_color", 15))
-        {
-          ret = GLEW_EXT_secondary_color;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_separate_shader_objects
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"separate_shader_objects", 23))
-        {
-          ret = GLEW_EXT_separate_shader_objects;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_separate_specular_color
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"separate_specular_color", 23))
-        {
-          ret = GLEW_EXT_separate_specular_color;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_shader_image_load_store
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shader_image_load_store", 23))
-        {
-          ret = GLEW_EXT_shader_image_load_store;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_shadow_funcs
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shadow_funcs", 12))
-        {
-          ret = GLEW_EXT_shadow_funcs;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_shared_texture_palette
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shared_texture_palette", 22))
-        {
-          ret = GLEW_EXT_shared_texture_palette;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_stencil_clear_tag
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"stencil_clear_tag", 17))
-        {
-          ret = GLEW_EXT_stencil_clear_tag;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_stencil_two_side
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"stencil_two_side", 16))
-        {
-          ret = GLEW_EXT_stencil_two_side;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_stencil_wrap
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"stencil_wrap", 12))
-        {
-          ret = GLEW_EXT_stencil_wrap;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_subtexture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"subtexture", 10))
-        {
-          ret = GLEW_EXT_subtexture;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture", 7))
-        {
-          ret = GLEW_EXT_texture;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture3D
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture3D", 9))
-        {
-          ret = GLEW_EXT_texture3D;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_array
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_array", 13))
-        {
-          ret = GLEW_EXT_texture_array;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_buffer_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_buffer_object", 21))
-        {
-          ret = GLEW_EXT_texture_buffer_object;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_compression_dxt1
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_compression_dxt1", 24))
-        {
-          ret = GLEW_EXT_texture_compression_dxt1;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_compression_latc
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_compression_latc", 24))
-        {
-          ret = GLEW_EXT_texture_compression_latc;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_compression_rgtc
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_compression_rgtc", 24))
-        {
-          ret = GLEW_EXT_texture_compression_rgtc;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_compression_s3tc
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_compression_s3tc", 24))
-        {
-          ret = GLEW_EXT_texture_compression_s3tc;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_cube_map
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_cube_map", 16))
-        {
-          ret = GLEW_EXT_texture_cube_map;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_edge_clamp
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_edge_clamp", 18))
-        {
-          ret = GLEW_EXT_texture_edge_clamp;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_env
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_env", 11))
-        {
-          ret = GLEW_EXT_texture_env;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_env_add
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_env_add", 15))
-        {
-          ret = GLEW_EXT_texture_env_add;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_env_combine
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_env_combine", 19))
-        {
-          ret = GLEW_EXT_texture_env_combine;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_env_dot3
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_env_dot3", 16))
-        {
-          ret = GLEW_EXT_texture_env_dot3;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_filter_anisotropic
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_filter_anisotropic", 26))
-        {
-          ret = GLEW_EXT_texture_filter_anisotropic;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_integer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_integer", 15))
-        {
-          ret = GLEW_EXT_texture_integer;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_lod_bias
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_lod_bias", 16))
-        {
-          ret = GLEW_EXT_texture_lod_bias;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_mirror_clamp
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_mirror_clamp", 20))
-        {
-          ret = GLEW_EXT_texture_mirror_clamp;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_object", 14))
-        {
-          ret = GLEW_EXT_texture_object;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_perturb_normal
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_perturb_normal", 22))
-        {
-          ret = GLEW_EXT_texture_perturb_normal;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_rectangle
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_rectangle", 17))
-        {
-          ret = GLEW_EXT_texture_rectangle;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_sRGB
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_sRGB", 12))
-        {
-          ret = GLEW_EXT_texture_sRGB;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_shared_exponent
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_shared_exponent", 23))
-        {
-          ret = GLEW_EXT_texture_shared_exponent;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_snorm
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_snorm", 13))
-        {
-          ret = GLEW_EXT_texture_snorm;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_texture_swizzle
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_swizzle", 15))
-        {
-          ret = GLEW_EXT_texture_swizzle;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_timer_query
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"timer_query", 11))
-        {
-          ret = GLEW_EXT_timer_query;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_transform_feedback
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"transform_feedback", 18))
-        {
-          ret = GLEW_EXT_transform_feedback;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_vertex_array
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_array", 12))
-        {
-          ret = GLEW_EXT_vertex_array;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_vertex_array_bgra
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_array_bgra", 17))
-        {
-          ret = GLEW_EXT_vertex_array_bgra;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_vertex_attrib_64bit
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_attrib_64bit", 19))
-        {
-          ret = GLEW_EXT_vertex_attrib_64bit;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_vertex_shader
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_shader", 13))
-        {
-          ret = GLEW_EXT_vertex_shader;
-          continue;
-        }
-#endif
-#ifdef GL_EXT_vertex_weighting
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_weighting", 16))
-        {
-          ret = GLEW_EXT_vertex_weighting;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"GREMEDY_", 8))
-      {
-#ifdef GL_GREMEDY_frame_terminator
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"frame_terminator", 16))
-        {
-          ret = GLEW_GREMEDY_frame_terminator;
-          continue;
-        }
-#endif
-#ifdef GL_GREMEDY_string_marker
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"string_marker", 13))
-        {
-          ret = GLEW_GREMEDY_string_marker;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"HP_", 3))
-      {
-#ifdef GL_HP_convolution_border_modes
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"convolution_border_modes", 24))
-        {
-          ret = GLEW_HP_convolution_border_modes;
-          continue;
-        }
-#endif
-#ifdef GL_HP_image_transform
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"image_transform", 15))
-        {
-          ret = GLEW_HP_image_transform;
-          continue;
-        }
-#endif
-#ifdef GL_HP_occlusion_test
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"occlusion_test", 14))
-        {
-          ret = GLEW_HP_occlusion_test;
-          continue;
-        }
-#endif
-#ifdef GL_HP_texture_lighting
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_lighting", 16))
-        {
-          ret = GLEW_HP_texture_lighting;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"IBM_", 4))
-      {
-#ifdef GL_IBM_cull_vertex
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"cull_vertex", 11))
-        {
-          ret = GLEW_IBM_cull_vertex;
-          continue;
-        }
-#endif
-#ifdef GL_IBM_multimode_draw_arrays
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multimode_draw_arrays", 21))
-        {
-          ret = GLEW_IBM_multimode_draw_arrays;
-          continue;
-        }
-#endif
-#ifdef GL_IBM_rasterpos_clip
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"rasterpos_clip", 14))
-        {
-          ret = GLEW_IBM_rasterpos_clip;
-          continue;
-        }
-#endif
-#ifdef GL_IBM_static_data
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"static_data", 11))
-        {
-          ret = GLEW_IBM_static_data;
-          continue;
-        }
-#endif
-#ifdef GL_IBM_texture_mirrored_repeat
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_mirrored_repeat", 23))
-        {
-          ret = GLEW_IBM_texture_mirrored_repeat;
-          continue;
-        }
-#endif
-#ifdef GL_IBM_vertex_array_lists
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_array_lists", 18))
-        {
-          ret = GLEW_IBM_vertex_array_lists;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"INGR_", 5))
-      {
-#ifdef GL_INGR_color_clamp
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"color_clamp", 11))
-        {
-          ret = GLEW_INGR_color_clamp;
-          continue;
-        }
-#endif
-#ifdef GL_INGR_interlace_read
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"interlace_read", 14))
-        {
-          ret = GLEW_INGR_interlace_read;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"INTEL_", 6))
-      {
-#ifdef GL_INTEL_parallel_arrays
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"parallel_arrays", 15))
-        {
-          ret = GLEW_INTEL_parallel_arrays;
-          continue;
-        }
-#endif
-#ifdef GL_INTEL_texture_scissor
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_scissor", 15))
-        {
-          ret = GLEW_INTEL_texture_scissor;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"KTX_", 4))
-      {
-#ifdef GL_KTX_buffer_region
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"buffer_region", 13))
-        {
-          ret = GLEW_KTX_buffer_region;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"MESAX_", 6))
-      {
-#ifdef GL_MESAX_texture_stack
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_stack", 13))
-        {
-          ret = GLEW_MESAX_texture_stack;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"MESA_", 5))
-      {
-#ifdef GL_MESA_pack_invert
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pack_invert", 11))
-        {
-          ret = GLEW_MESA_pack_invert;
-          continue;
-        }
-#endif
-#ifdef GL_MESA_resize_buffers
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"resize_buffers", 14))
-        {
-          ret = GLEW_MESA_resize_buffers;
-          continue;
-        }
-#endif
-#ifdef GL_MESA_window_pos
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"window_pos", 10))
-        {
-          ret = GLEW_MESA_window_pos;
-          continue;
-        }
-#endif
-#ifdef GL_MESA_ycbcr_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"ycbcr_texture", 13))
-        {
-          ret = GLEW_MESA_ycbcr_texture;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"NV_", 3))
-      {
-#ifdef GL_NV_blend_square
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"blend_square", 12))
-        {
-          ret = GLEW_NV_blend_square;
-          continue;
-        }
-#endif
-#ifdef GL_NV_conditional_render
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"conditional_render", 18))
-        {
-          ret = GLEW_NV_conditional_render;
-          continue;
-        }
-#endif
-#ifdef GL_NV_copy_depth_to_color
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"copy_depth_to_color", 19))
-        {
-          ret = GLEW_NV_copy_depth_to_color;
-          continue;
-        }
-#endif
-#ifdef GL_NV_copy_image
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"copy_image", 10))
-        {
-          ret = GLEW_NV_copy_image;
-          continue;
-        }
-#endif
-#ifdef GL_NV_depth_buffer_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"depth_buffer_float", 18))
-        {
-          ret = GLEW_NV_depth_buffer_float;
-          continue;
-        }
-#endif
-#ifdef GL_NV_depth_clamp
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"depth_clamp", 11))
-        {
-          ret = GLEW_NV_depth_clamp;
-          continue;
-        }
-#endif
-#ifdef GL_NV_depth_range_unclamped
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"depth_range_unclamped", 21))
-        {
-          ret = GLEW_NV_depth_range_unclamped;
-          continue;
-        }
-#endif
-#ifdef GL_NV_evaluators
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"evaluators", 10))
-        {
-          ret = GLEW_NV_evaluators;
-          continue;
-        }
-#endif
-#ifdef GL_NV_explicit_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"explicit_multisample", 20))
-        {
-          ret = GLEW_NV_explicit_multisample;
-          continue;
-        }
-#endif
-#ifdef GL_NV_fence
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fence", 5))
-        {
-          ret = GLEW_NV_fence;
-          continue;
-        }
-#endif
-#ifdef GL_NV_float_buffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"float_buffer", 12))
-        {
-          ret = GLEW_NV_float_buffer;
-          continue;
-        }
-#endif
-#ifdef GL_NV_fog_distance
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fog_distance", 12))
-        {
-          ret = GLEW_NV_fog_distance;
-          continue;
-        }
-#endif
-#ifdef GL_NV_fragment_program
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fragment_program", 16))
-        {
-          ret = GLEW_NV_fragment_program;
-          continue;
-        }
-#endif
-#ifdef GL_NV_fragment_program2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fragment_program2", 17))
-        {
-          ret = GLEW_NV_fragment_program2;
-          continue;
-        }
-#endif
-#ifdef GL_NV_fragment_program4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fragment_program4", 17))
-        {
-          ret = GLEW_NV_fragment_program4;
-          continue;
-        }
-#endif
-#ifdef GL_NV_fragment_program_option
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fragment_program_option", 23))
-        {
-          ret = GLEW_NV_fragment_program_option;
-          continue;
-        }
-#endif
-#ifdef GL_NV_framebuffer_multisample_coverage
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"framebuffer_multisample_coverage", 32))
-        {
-          ret = GLEW_NV_framebuffer_multisample_coverage;
-          continue;
-        }
-#endif
-#ifdef GL_NV_geometry_program4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"geometry_program4", 17))
-        {
-          ret = GLEW_NV_geometry_program4;
-          continue;
-        }
-#endif
-#ifdef GL_NV_geometry_shader4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"geometry_shader4", 16))
-        {
-          ret = GLEW_NV_geometry_shader4;
-          continue;
-        }
-#endif
-#ifdef GL_NV_gpu_program4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"gpu_program4", 12))
-        {
-          ret = GLEW_NV_gpu_program4;
-          continue;
-        }
-#endif
-#ifdef GL_NV_gpu_program5
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"gpu_program5", 12))
-        {
-          ret = GLEW_NV_gpu_program5;
-          continue;
-        }
-#endif
-#ifdef GL_NV_gpu_program_fp64
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"gpu_program_fp64", 16))
-        {
-          ret = GLEW_NV_gpu_program_fp64;
-          continue;
-        }
-#endif
-#ifdef GL_NV_gpu_shader5
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"gpu_shader5", 11))
-        {
-          ret = GLEW_NV_gpu_shader5;
-          continue;
-        }
-#endif
-#ifdef GL_NV_half_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"half_float", 10))
-        {
-          ret = GLEW_NV_half_float;
-          continue;
-        }
-#endif
-#ifdef GL_NV_light_max_exponent
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"light_max_exponent", 18))
-        {
-          ret = GLEW_NV_light_max_exponent;
-          continue;
-        }
-#endif
-#ifdef GL_NV_multisample_filter_hint
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multisample_filter_hint", 23))
-        {
-          ret = GLEW_NV_multisample_filter_hint;
-          continue;
-        }
-#endif
-#ifdef GL_NV_occlusion_query
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"occlusion_query", 15))
-        {
-          ret = GLEW_NV_occlusion_query;
-          continue;
-        }
-#endif
-#ifdef GL_NV_packed_depth_stencil
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"packed_depth_stencil", 20))
-        {
-          ret = GLEW_NV_packed_depth_stencil;
-          continue;
-        }
-#endif
-#ifdef GL_NV_parameter_buffer_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"parameter_buffer_object", 23))
-        {
-          ret = GLEW_NV_parameter_buffer_object;
-          continue;
-        }
-#endif
-#ifdef GL_NV_parameter_buffer_object2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"parameter_buffer_object2", 24))
-        {
-          ret = GLEW_NV_parameter_buffer_object2;
-          continue;
-        }
-#endif
-#ifdef GL_NV_pixel_data_range
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_data_range", 16))
-        {
-          ret = GLEW_NV_pixel_data_range;
-          continue;
-        }
-#endif
-#ifdef GL_NV_point_sprite
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"point_sprite", 12))
-        {
-          ret = GLEW_NV_point_sprite;
-          continue;
-        }
-#endif
-#ifdef GL_NV_present_video
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"present_video", 13))
-        {
-          ret = GLEW_NV_present_video;
-          continue;
-        }
-#endif
-#ifdef GL_NV_primitive_restart
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"primitive_restart", 17))
-        {
-          ret = GLEW_NV_primitive_restart;
-          continue;
-        }
-#endif
-#ifdef GL_NV_register_combiners
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"register_combiners", 18))
-        {
-          ret = GLEW_NV_register_combiners;
-          continue;
-        }
-#endif
-#ifdef GL_NV_register_combiners2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"register_combiners2", 19))
-        {
-          ret = GLEW_NV_register_combiners2;
-          continue;
-        }
-#endif
-#ifdef GL_NV_shader_buffer_load
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shader_buffer_load", 18))
-        {
-          ret = GLEW_NV_shader_buffer_load;
-          continue;
-        }
-#endif
-#ifdef GL_NV_tessellation_program5
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"tessellation_program5", 21))
-        {
-          ret = GLEW_NV_tessellation_program5;
-          continue;
-        }
-#endif
-#ifdef GL_NV_texgen_emboss
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texgen_emboss", 13))
-        {
-          ret = GLEW_NV_texgen_emboss;
-          continue;
-        }
-#endif
-#ifdef GL_NV_texgen_reflection
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texgen_reflection", 17))
-        {
-          ret = GLEW_NV_texgen_reflection;
-          continue;
-        }
-#endif
-#ifdef GL_NV_texture_barrier
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_barrier", 15))
-        {
-          ret = GLEW_NV_texture_barrier;
-          continue;
-        }
-#endif
-#ifdef GL_NV_texture_compression_vtc
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_compression_vtc", 23))
-        {
-          ret = GLEW_NV_texture_compression_vtc;
-          continue;
-        }
-#endif
-#ifdef GL_NV_texture_env_combine4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_env_combine4", 20))
-        {
-          ret = GLEW_NV_texture_env_combine4;
-          continue;
-        }
-#endif
-#ifdef GL_NV_texture_expand_normal
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_expand_normal", 21))
-        {
-          ret = GLEW_NV_texture_expand_normal;
-          continue;
-        }
-#endif
-#ifdef GL_NV_texture_rectangle
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_rectangle", 17))
-        {
-          ret = GLEW_NV_texture_rectangle;
-          continue;
-        }
-#endif
-#ifdef GL_NV_texture_shader
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_shader", 14))
-        {
-          ret = GLEW_NV_texture_shader;
-          continue;
-        }
-#endif
-#ifdef GL_NV_texture_shader2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_shader2", 15))
-        {
-          ret = GLEW_NV_texture_shader2;
-          continue;
-        }
-#endif
-#ifdef GL_NV_texture_shader3
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_shader3", 15))
-        {
-          ret = GLEW_NV_texture_shader3;
-          continue;
-        }
-#endif
-#ifdef GL_NV_transform_feedback
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"transform_feedback", 18))
-        {
-          ret = GLEW_NV_transform_feedback;
-          continue;
-        }
-#endif
-#ifdef GL_NV_transform_feedback2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"transform_feedback2", 19))
-        {
-          ret = GLEW_NV_transform_feedback2;
-          continue;
-        }
-#endif
-#ifdef GL_NV_vertex_array_range
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_array_range", 18))
-        {
-          ret = GLEW_NV_vertex_array_range;
-          continue;
-        }
-#endif
-#ifdef GL_NV_vertex_array_range2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_array_range2", 19))
-        {
-          ret = GLEW_NV_vertex_array_range2;
-          continue;
-        }
-#endif
-#ifdef GL_NV_vertex_attrib_integer_64bit
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_attrib_integer_64bit", 27))
-        {
-          ret = GLEW_NV_vertex_attrib_integer_64bit;
-          continue;
-        }
-#endif
-#ifdef GL_NV_vertex_buffer_unified_memory
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_buffer_unified_memory", 28))
-        {
-          ret = GLEW_NV_vertex_buffer_unified_memory;
-          continue;
-        }
-#endif
-#ifdef GL_NV_vertex_program
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_program", 14))
-        {
-          ret = GLEW_NV_vertex_program;
-          continue;
-        }
-#endif
-#ifdef GL_NV_vertex_program1_1
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_program1_1", 17))
-        {
-          ret = GLEW_NV_vertex_program1_1;
-          continue;
-        }
-#endif
-#ifdef GL_NV_vertex_program2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_program2", 15))
-        {
-          ret = GLEW_NV_vertex_program2;
-          continue;
-        }
-#endif
-#ifdef GL_NV_vertex_program2_option
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_program2_option", 22))
-        {
-          ret = GLEW_NV_vertex_program2_option;
-          continue;
-        }
-#endif
-#ifdef GL_NV_vertex_program3
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_program3", 15))
-        {
-          ret = GLEW_NV_vertex_program3;
-          continue;
-        }
-#endif
-#ifdef GL_NV_vertex_program4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_program4", 15))
-        {
-          ret = GLEW_NV_vertex_program4;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"OES_", 4))
-      {
-#ifdef GL_OES_byte_coordinates
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"byte_coordinates", 16))
-        {
-          ret = GLEW_OES_byte_coordinates;
-          continue;
-        }
-#endif
-#ifdef GL_OES_compressed_paletted_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"compressed_paletted_texture", 27))
-        {
-          ret = GLEW_OES_compressed_paletted_texture;
-          continue;
-        }
-#endif
-#ifdef GL_OES_read_format
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"read_format", 11))
-        {
-          ret = GLEW_OES_read_format;
-          continue;
-        }
-#endif
-#ifdef GL_OES_single_precision
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"single_precision", 16))
-        {
-          ret = GLEW_OES_single_precision;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"OML_", 4))
-      {
-#ifdef GL_OML_interlace
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"interlace", 9))
-        {
-          ret = GLEW_OML_interlace;
-          continue;
-        }
-#endif
-#ifdef GL_OML_resample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"resample", 8))
-        {
-          ret = GLEW_OML_resample;
-          continue;
-        }
-#endif
-#ifdef GL_OML_subsample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"subsample", 9))
-        {
-          ret = GLEW_OML_subsample;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"PGI_", 4))
-      {
-#ifdef GL_PGI_misc_hints
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"misc_hints", 10))
-        {
-          ret = GLEW_PGI_misc_hints;
-          continue;
-        }
-#endif
-#ifdef GL_PGI_vertex_hints
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_hints", 12))
-        {
-          ret = GLEW_PGI_vertex_hints;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"REND_", 5))
-      {
-#ifdef GL_REND_screen_coordinates
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"screen_coordinates", 18))
-        {
-          ret = GLEW_REND_screen_coordinates;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"S3_", 3))
-      {
-#ifdef GL_S3_s3tc
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"s3tc", 4))
-        {
-          ret = GLEW_S3_s3tc;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"SGIS_", 5))
-      {
-#ifdef GL_SGIS_color_range
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"color_range", 11))
-        {
-          ret = GLEW_SGIS_color_range;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_detail_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"detail_texture", 14))
-        {
-          ret = GLEW_SGIS_detail_texture;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_fog_function
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fog_function", 12))
-        {
-          ret = GLEW_SGIS_fog_function;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_generate_mipmap
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"generate_mipmap", 15))
-        {
-          ret = GLEW_SGIS_generate_mipmap;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multisample", 11))
-        {
-          ret = GLEW_SGIS_multisample;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_pixel_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_texture", 13))
-        {
-          ret = GLEW_SGIS_pixel_texture;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_point_line_texgen
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"point_line_texgen", 17))
-        {
-          ret = GLEW_SGIS_point_line_texgen;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_sharpen_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"sharpen_texture", 15))
-        {
-          ret = GLEW_SGIS_sharpen_texture;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_texture4D
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture4D", 9))
-        {
-          ret = GLEW_SGIS_texture4D;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_texture_border_clamp
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_border_clamp", 20))
-        {
-          ret = GLEW_SGIS_texture_border_clamp;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_texture_edge_clamp
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_edge_clamp", 18))
-        {
-          ret = GLEW_SGIS_texture_edge_clamp;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_texture_filter4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_filter4", 15))
-        {
-          ret = GLEW_SGIS_texture_filter4;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_texture_lod
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_lod", 11))
-        {
-          ret = GLEW_SGIS_texture_lod;
-          continue;
-        }
-#endif
-#ifdef GL_SGIS_texture_select
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_select", 14))
-        {
-          ret = GLEW_SGIS_texture_select;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"SGIX_", 5))
-      {
-#ifdef GL_SGIX_async
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"async", 5))
-        {
-          ret = GLEW_SGIX_async;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_async_histogram
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"async_histogram", 15))
-        {
-          ret = GLEW_SGIX_async_histogram;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_async_pixel
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"async_pixel", 11))
-        {
-          ret = GLEW_SGIX_async_pixel;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_blend_alpha_minmax
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"blend_alpha_minmax", 18))
-        {
-          ret = GLEW_SGIX_blend_alpha_minmax;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_clipmap
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"clipmap", 7))
-        {
-          ret = GLEW_SGIX_clipmap;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_convolution_accuracy
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"convolution_accuracy", 20))
-        {
-          ret = GLEW_SGIX_convolution_accuracy;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_depth_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"depth_texture", 13))
-        {
-          ret = GLEW_SGIX_depth_texture;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_flush_raster
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"flush_raster", 12))
-        {
-          ret = GLEW_SGIX_flush_raster;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_fog_offset
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fog_offset", 10))
-        {
-          ret = GLEW_SGIX_fog_offset;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_fog_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fog_texture", 11))
-        {
-          ret = GLEW_SGIX_fog_texture;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_fragment_specular_lighting
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fragment_specular_lighting", 26))
-        {
-          ret = GLEW_SGIX_fragment_specular_lighting;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_framezoom
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"framezoom", 9))
-        {
-          ret = GLEW_SGIX_framezoom;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_interlace
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"interlace", 9))
-        {
-          ret = GLEW_SGIX_interlace;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_ir_instrument1
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"ir_instrument1", 14))
-        {
-          ret = GLEW_SGIX_ir_instrument1;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_list_priority
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"list_priority", 13))
-        {
-          ret = GLEW_SGIX_list_priority;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_pixel_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_texture", 13))
-        {
-          ret = GLEW_SGIX_pixel_texture;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_pixel_texture_bits
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_texture_bits", 18))
-        {
-          ret = GLEW_SGIX_pixel_texture_bits;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_reference_plane
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"reference_plane", 15))
-        {
-          ret = GLEW_SGIX_reference_plane;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_resample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"resample", 8))
-        {
-          ret = GLEW_SGIX_resample;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_shadow
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shadow", 6))
-        {
-          ret = GLEW_SGIX_shadow;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_shadow_ambient
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shadow_ambient", 14))
-        {
-          ret = GLEW_SGIX_shadow_ambient;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_sprite
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"sprite", 6))
-        {
-          ret = GLEW_SGIX_sprite;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_tag_sample_buffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"tag_sample_buffer", 17))
-        {
-          ret = GLEW_SGIX_tag_sample_buffer;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_texture_add_env
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_add_env", 15))
-        {
-          ret = GLEW_SGIX_texture_add_env;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_texture_coordinate_clamp
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_coordinate_clamp", 24))
-        {
-          ret = GLEW_SGIX_texture_coordinate_clamp;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_texture_lod_bias
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_lod_bias", 16))
-        {
-          ret = GLEW_SGIX_texture_lod_bias;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_texture_multi_buffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_multi_buffer", 20))
-        {
-          ret = GLEW_SGIX_texture_multi_buffer;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_texture_range
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_range", 13))
-        {
-          ret = GLEW_SGIX_texture_range;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_texture_scale_bias
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_scale_bias", 18))
-        {
-          ret = GLEW_SGIX_texture_scale_bias;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_vertex_preclip
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_preclip", 14))
-        {
-          ret = GLEW_SGIX_vertex_preclip;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_vertex_preclip_hint
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_preclip_hint", 19))
-        {
-          ret = GLEW_SGIX_vertex_preclip_hint;
-          continue;
-        }
-#endif
-#ifdef GL_SGIX_ycrcb
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"ycrcb", 5))
-        {
-          ret = GLEW_SGIX_ycrcb;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"SGI_", 4))
-      {
-#ifdef GL_SGI_color_matrix
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"color_matrix", 12))
-        {
-          ret = GLEW_SGI_color_matrix;
-          continue;
-        }
-#endif
-#ifdef GL_SGI_color_table
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"color_table", 11))
-        {
-          ret = GLEW_SGI_color_table;
-          continue;
-        }
-#endif
-#ifdef GL_SGI_texture_color_table
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_color_table", 19))
-        {
-          ret = GLEW_SGI_texture_color_table;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"SUNX_", 5))
-      {
-#ifdef GL_SUNX_constant_data
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"constant_data", 13))
-        {
-          ret = GLEW_SUNX_constant_data;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"SUN_", 4))
-      {
-#ifdef GL_SUN_convolution_border_modes
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"convolution_border_modes", 24))
-        {
-          ret = GLEW_SUN_convolution_border_modes;
-          continue;
-        }
-#endif
-#ifdef GL_SUN_global_alpha
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"global_alpha", 12))
-        {
-          ret = GLEW_SUN_global_alpha;
-          continue;
-        }
-#endif
-#ifdef GL_SUN_mesh_array
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"mesh_array", 10))
-        {
-          ret = GLEW_SUN_mesh_array;
-          continue;
-        }
-#endif
-#ifdef GL_SUN_read_video_pixels
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"read_video_pixels", 17))
-        {
-          ret = GLEW_SUN_read_video_pixels;
-          continue;
-        }
-#endif
-#ifdef GL_SUN_slice_accum
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"slice_accum", 11))
-        {
-          ret = GLEW_SUN_slice_accum;
-          continue;
-        }
-#endif
-#ifdef GL_SUN_triangle_list
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"triangle_list", 13))
-        {
-          ret = GLEW_SUN_triangle_list;
-          continue;
-        }
-#endif
-#ifdef GL_SUN_vertex
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex", 6))
-        {
-          ret = GLEW_SUN_vertex;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"WIN_", 4))
-      {
-#ifdef GL_WIN_phong_shading
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"phong_shading", 13))
-        {
-          ret = GLEW_WIN_phong_shading;
-          continue;
-        }
-#endif
-#ifdef GL_WIN_specular_fog
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"specular_fog", 12))
-        {
-          ret = GLEW_WIN_specular_fog;
-          continue;
-        }
-#endif
-#ifdef GL_WIN_swap_hint
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"swap_hint", 9))
-        {
-          ret = GLEW_WIN_swap_hint;
-          continue;
-        }
-#endif
-      }
-    }
-    ret = (len == 0);
-  }
-  return ret;
-}
-
-#if defined(_WIN32)
-
-#if defined(GLEW_MX)
-GLboolean wglewContextIsSupported (WGLEWContext* ctx, const char* name)
-#else
-GLboolean wglewIsSupported (const char* name)
-#endif
-{
-  GLubyte* pos = (GLubyte*)name;
-  GLuint len = _glewStrLen(pos);
-  GLboolean ret = GL_TRUE;
-  while (ret && len > 0)
-  {
-    if (_glewStrSame1(&pos, &len, (const GLubyte*)"WGL_", 4))
-    {
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"3DFX_", 5))
-      {
-#ifdef WGL_3DFX_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multisample", 11))
-        {
-          ret = WGLEW_3DFX_multisample;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"3DL_", 4))
-      {
-#ifdef WGL_3DL_stereo_control
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"stereo_control", 14))
-        {
-          ret = WGLEW_3DL_stereo_control;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"AMD_", 4))
-      {
-#ifdef WGL_AMD_gpu_association
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"gpu_association", 15))
-        {
-          ret = WGLEW_AMD_gpu_association;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"ARB_", 4))
-      {
-#ifdef WGL_ARB_buffer_region
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"buffer_region", 13))
-        {
-          ret = WGLEW_ARB_buffer_region;
-          continue;
-        }
-#endif
-#ifdef WGL_ARB_create_context
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"create_context", 14))
-        {
-          ret = WGLEW_ARB_create_context;
-          continue;
-        }
-#endif
-#ifdef WGL_ARB_create_context_profile
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"create_context_profile", 22))
-        {
-          ret = WGLEW_ARB_create_context_profile;
-          continue;
-        }
-#endif
-#ifdef WGL_ARB_extensions_string
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"extensions_string", 17))
-        {
-          ret = WGLEW_ARB_extensions_string;
-          continue;
-        }
-#endif
-#ifdef WGL_ARB_framebuffer_sRGB
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"framebuffer_sRGB", 16))
-        {
-          ret = WGLEW_ARB_framebuffer_sRGB;
-          continue;
-        }
-#endif
-#ifdef WGL_ARB_make_current_read
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"make_current_read", 17))
-        {
-          ret = WGLEW_ARB_make_current_read;
-          continue;
-        }
-#endif
-#ifdef WGL_ARB_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multisample", 11))
-        {
-          ret = WGLEW_ARB_multisample;
-          continue;
-        }
-#endif
-#ifdef WGL_ARB_pbuffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pbuffer", 7))
-        {
-          ret = WGLEW_ARB_pbuffer;
-          continue;
-        }
-#endif
-#ifdef WGL_ARB_pixel_format
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_format", 12))
-        {
-          ret = WGLEW_ARB_pixel_format;
-          continue;
-        }
-#endif
-#ifdef WGL_ARB_pixel_format_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_format_float", 18))
-        {
-          ret = WGLEW_ARB_pixel_format_float;
-          continue;
-        }
-#endif
-#ifdef WGL_ARB_render_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"render_texture", 14))
-        {
-          ret = WGLEW_ARB_render_texture;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"ATI_", 4))
-      {
-#ifdef WGL_ATI_pixel_format_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_format_float", 18))
-        {
-          ret = WGLEW_ATI_pixel_format_float;
-          continue;
-        }
-#endif
-#ifdef WGL_ATI_render_texture_rectangle
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"render_texture_rectangle", 24))
-        {
-          ret = WGLEW_ATI_render_texture_rectangle;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"EXT_", 4))
-      {
-#ifdef WGL_EXT_depth_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"depth_float", 11))
-        {
-          ret = WGLEW_EXT_depth_float;
-          continue;
-        }
-#endif
-#ifdef WGL_EXT_display_color_table
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"display_color_table", 19))
-        {
-          ret = WGLEW_EXT_display_color_table;
-          continue;
-        }
-#endif
-#ifdef WGL_EXT_extensions_string
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"extensions_string", 17))
-        {
-          ret = WGLEW_EXT_extensions_string;
-          continue;
-        }
-#endif
-#ifdef WGL_EXT_framebuffer_sRGB
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"framebuffer_sRGB", 16))
-        {
-          ret = WGLEW_EXT_framebuffer_sRGB;
-          continue;
-        }
-#endif
-#ifdef WGL_EXT_make_current_read
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"make_current_read", 17))
-        {
-          ret = WGLEW_EXT_make_current_read;
-          continue;
-        }
-#endif
-#ifdef WGL_EXT_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multisample", 11))
-        {
-          ret = WGLEW_EXT_multisample;
-          continue;
-        }
-#endif
-#ifdef WGL_EXT_pbuffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pbuffer", 7))
-        {
-          ret = WGLEW_EXT_pbuffer;
-          continue;
-        }
-#endif
-#ifdef WGL_EXT_pixel_format
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_format", 12))
-        {
-          ret = WGLEW_EXT_pixel_format;
-          continue;
-        }
-#endif
-#ifdef WGL_EXT_pixel_format_packed_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_format_packed_float", 25))
-        {
-          ret = WGLEW_EXT_pixel_format_packed_float;
-          continue;
-        }
-#endif
-#ifdef WGL_EXT_swap_control
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"swap_control", 12))
-        {
-          ret = WGLEW_EXT_swap_control;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"I3D_", 4))
-      {
-#ifdef WGL_I3D_digital_video_control
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"digital_video_control", 21))
-        {
-          ret = WGLEW_I3D_digital_video_control;
-          continue;
-        }
-#endif
-#ifdef WGL_I3D_gamma
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"gamma", 5))
-        {
-          ret = WGLEW_I3D_gamma;
-          continue;
-        }
-#endif
-#ifdef WGL_I3D_genlock
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"genlock", 7))
-        {
-          ret = WGLEW_I3D_genlock;
-          continue;
-        }
-#endif
-#ifdef WGL_I3D_image_buffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"image_buffer", 12))
-        {
-          ret = WGLEW_I3D_image_buffer;
-          continue;
-        }
-#endif
-#ifdef WGL_I3D_swap_frame_lock
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"swap_frame_lock", 15))
-        {
-          ret = WGLEW_I3D_swap_frame_lock;
-          continue;
-        }
-#endif
-#ifdef WGL_I3D_swap_frame_usage
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"swap_frame_usage", 16))
-        {
-          ret = WGLEW_I3D_swap_frame_usage;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"NV_", 3))
-      {
-#ifdef WGL_NV_copy_image
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"copy_image", 10))
-        {
-          ret = WGLEW_NV_copy_image;
-          continue;
-        }
-#endif
-#ifdef WGL_NV_float_buffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"float_buffer", 12))
-        {
-          ret = WGLEW_NV_float_buffer;
-          continue;
-        }
-#endif
-#ifdef WGL_NV_gpu_affinity
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"gpu_affinity", 12))
-        {
-          ret = WGLEW_NV_gpu_affinity;
-          continue;
-        }
-#endif
-#ifdef WGL_NV_present_video
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"present_video", 13))
-        {
-          ret = WGLEW_NV_present_video;
-          continue;
-        }
-#endif
-#ifdef WGL_NV_render_depth_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"render_depth_texture", 20))
-        {
-          ret = WGLEW_NV_render_depth_texture;
-          continue;
-        }
-#endif
-#ifdef WGL_NV_render_texture_rectangle
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"render_texture_rectangle", 24))
-        {
-          ret = WGLEW_NV_render_texture_rectangle;
-          continue;
-        }
-#endif
-#ifdef WGL_NV_swap_group
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"swap_group", 10))
-        {
-          ret = WGLEW_NV_swap_group;
-          continue;
-        }
-#endif
-#ifdef WGL_NV_vertex_array_range
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_array_range", 18))
-        {
-          ret = WGLEW_NV_vertex_array_range;
-          continue;
-        }
-#endif
-#ifdef WGL_NV_video_output
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"video_output", 12))
-        {
-          ret = WGLEW_NV_video_output;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"OML_", 4))
-      {
-#ifdef WGL_OML_sync_control
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"sync_control", 12))
-        {
-          ret = WGLEW_OML_sync_control;
-          continue;
-        }
-#endif
-      }
-    }
-    ret = (len == 0);
-  }
-  return ret;
-}
-
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-
-#if defined(GLEW_MX)
-GLboolean glxewContextIsSupported (GLXEWContext* ctx, const char* name)
-#else
-GLboolean glxewIsSupported (const char* name)
-#endif
-{
-  GLubyte* pos = (GLubyte*)name;
-  GLuint len = _glewStrLen(pos);
-  GLboolean ret = GL_TRUE;
-  while (ret && len > 0)
-  {
-    if(_glewStrSame1(&pos, &len, (const GLubyte*)"GLX_", 4))
-    {
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"VERSION_", 8))
-      {
-#ifdef GLX_VERSION_1_2
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"1_2", 3))
-        {
-          ret = GLXEW_VERSION_1_2;
-          continue;
-        }
-#endif
-#ifdef GLX_VERSION_1_3
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"1_3", 3))
-        {
-          ret = GLXEW_VERSION_1_3;
-          continue;
-        }
-#endif
-#ifdef GLX_VERSION_1_4
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"1_4", 3))
-        {
-          ret = GLXEW_VERSION_1_4;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"3DFX_", 5))
-      {
-#ifdef GLX_3DFX_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multisample", 11))
-        {
-          ret = GLXEW_3DFX_multisample;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"ARB_", 4))
-      {
-#ifdef GLX_ARB_create_context
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"create_context", 14))
-        {
-          ret = GLXEW_ARB_create_context;
-          continue;
-        }
-#endif
-#ifdef GLX_ARB_create_context_profile
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"create_context_profile", 22))
-        {
-          ret = GLXEW_ARB_create_context_profile;
-          continue;
-        }
-#endif
-#ifdef GLX_ARB_fbconfig_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fbconfig_float", 14))
-        {
-          ret = GLXEW_ARB_fbconfig_float;
-          continue;
-        }
-#endif
-#ifdef GLX_ARB_framebuffer_sRGB
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"framebuffer_sRGB", 16))
-        {
-          ret = GLXEW_ARB_framebuffer_sRGB;
-          continue;
-        }
-#endif
-#ifdef GLX_ARB_get_proc_address
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"get_proc_address", 16))
-        {
-          ret = GLXEW_ARB_get_proc_address;
-          continue;
-        }
-#endif
-#ifdef GLX_ARB_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multisample", 11))
-        {
-          ret = GLXEW_ARB_multisample;
-          continue;
-        }
-#endif
-#ifdef GLX_ARB_vertex_buffer_object
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_buffer_object", 20))
-        {
-          ret = GLXEW_ARB_vertex_buffer_object;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"ATI_", 4))
-      {
-#ifdef GLX_ATI_pixel_format_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixel_format_float", 18))
-        {
-          ret = GLXEW_ATI_pixel_format_float;
-          continue;
-        }
-#endif
-#ifdef GLX_ATI_render_texture
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"render_texture", 14))
-        {
-          ret = GLXEW_ATI_render_texture;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"EXT_", 4))
-      {
-#ifdef GLX_EXT_fbconfig_packed_float
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fbconfig_packed_float", 21))
-        {
-          ret = GLXEW_EXT_fbconfig_packed_float;
-          continue;
-        }
-#endif
-#ifdef GLX_EXT_framebuffer_sRGB
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"framebuffer_sRGB", 16))
-        {
-          ret = GLXEW_EXT_framebuffer_sRGB;
-          continue;
-        }
-#endif
-#ifdef GLX_EXT_import_context
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"import_context", 14))
-        {
-          ret = GLXEW_EXT_import_context;
-          continue;
-        }
-#endif
-#ifdef GLX_EXT_scene_marker
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"scene_marker", 12))
-        {
-          ret = GLXEW_EXT_scene_marker;
-          continue;
-        }
-#endif
-#ifdef GLX_EXT_swap_control
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"swap_control", 12))
-        {
-          ret = GLXEW_EXT_swap_control;
-          continue;
-        }
-#endif
-#ifdef GLX_EXT_texture_from_pixmap
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"texture_from_pixmap", 19))
-        {
-          ret = GLXEW_EXT_texture_from_pixmap;
-          continue;
-        }
-#endif
-#ifdef GLX_EXT_visual_info
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"visual_info", 11))
-        {
-          ret = GLXEW_EXT_visual_info;
-          continue;
-        }
-#endif
-#ifdef GLX_EXT_visual_rating
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"visual_rating", 13))
-        {
-          ret = GLXEW_EXT_visual_rating;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"INTEL_", 6))
-      {
-#ifdef GLX_INTEL_swap_event
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"swap_event", 10))
-        {
-          ret = GLXEW_INTEL_swap_event;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"MESA_", 5))
-      {
-#ifdef GLX_MESA_agp_offset
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"agp_offset", 10))
-        {
-          ret = GLXEW_MESA_agp_offset;
-          continue;
-        }
-#endif
-#ifdef GLX_MESA_copy_sub_buffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"copy_sub_buffer", 15))
-        {
-          ret = GLXEW_MESA_copy_sub_buffer;
-          continue;
-        }
-#endif
-#ifdef GLX_MESA_pixmap_colormap
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pixmap_colormap", 15))
-        {
-          ret = GLXEW_MESA_pixmap_colormap;
-          continue;
-        }
-#endif
-#ifdef GLX_MESA_release_buffers
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"release_buffers", 15))
-        {
-          ret = GLXEW_MESA_release_buffers;
-          continue;
-        }
-#endif
-#ifdef GLX_MESA_set_3dfx_mode
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"set_3dfx_mode", 13))
-        {
-          ret = GLXEW_MESA_set_3dfx_mode;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"NV_", 3))
-      {
-#ifdef GLX_NV_copy_image
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"copy_image", 10))
-        {
-          ret = GLXEW_NV_copy_image;
-          continue;
-        }
-#endif
-#ifdef GLX_NV_float_buffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"float_buffer", 12))
-        {
-          ret = GLXEW_NV_float_buffer;
-          continue;
-        }
-#endif
-#ifdef GLX_NV_present_video
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"present_video", 13))
-        {
-          ret = GLXEW_NV_present_video;
-          continue;
-        }
-#endif
-#ifdef GLX_NV_swap_group
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"swap_group", 10))
-        {
-          ret = GLXEW_NV_swap_group;
-          continue;
-        }
-#endif
-#ifdef GLX_NV_vertex_array_range
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"vertex_array_range", 18))
-        {
-          ret = GLXEW_NV_vertex_array_range;
-          continue;
-        }
-#endif
-#ifdef GLX_NV_video_output
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"video_output", 12))
-        {
-          ret = GLXEW_NV_video_output;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"OML_", 4))
-      {
-#ifdef GLX_OML_swap_method
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"swap_method", 11))
-        {
-          ret = GLXEW_OML_swap_method;
-          continue;
-        }
-#endif
-#if defined(GLX_OML_sync_control) && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
-#include <inttypes.h>
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"sync_control", 12))
-        {
-          ret = GLXEW_OML_sync_control;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"SGIS_", 5))
-      {
-#ifdef GLX_SGIS_blended_overlay
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"blended_overlay", 15))
-        {
-          ret = GLXEW_SGIS_blended_overlay;
-          continue;
-        }
-#endif
-#ifdef GLX_SGIS_color_range
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"color_range", 11))
-        {
-          ret = GLXEW_SGIS_color_range;
-          continue;
-        }
-#endif
-#ifdef GLX_SGIS_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"multisample", 11))
-        {
-          ret = GLXEW_SGIS_multisample;
-          continue;
-        }
-#endif
-#ifdef GLX_SGIS_shared_multisample
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"shared_multisample", 18))
-        {
-          ret = GLXEW_SGIS_shared_multisample;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"SGIX_", 5))
-      {
-#ifdef GLX_SGIX_fbconfig
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"fbconfig", 8))
-        {
-          ret = GLXEW_SGIX_fbconfig;
-          continue;
-        }
-#endif
-#ifdef GLX_SGIX_hyperpipe
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"hyperpipe", 9))
-        {
-          ret = GLXEW_SGIX_hyperpipe;
-          continue;
-        }
-#endif
-#ifdef GLX_SGIX_pbuffer
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"pbuffer", 7))
-        {
-          ret = GLXEW_SGIX_pbuffer;
-          continue;
-        }
-#endif
-#ifdef GLX_SGIX_swap_barrier
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"swap_barrier", 12))
-        {
-          ret = GLXEW_SGIX_swap_barrier;
-          continue;
-        }
-#endif
-#ifdef GLX_SGIX_swap_group
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"swap_group", 10))
-        {
-          ret = GLXEW_SGIX_swap_group;
-          continue;
-        }
-#endif
-#ifdef GLX_SGIX_video_resize
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"video_resize", 12))
-        {
-          ret = GLXEW_SGIX_video_resize;
-          continue;
-        }
-#endif
-#ifdef GLX_SGIX_visual_select_group
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"visual_select_group", 19))
-        {
-          ret = GLXEW_SGIX_visual_select_group;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"SGI_", 4))
-      {
-#ifdef GLX_SGI_cushion
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"cushion", 7))
-        {
-          ret = GLXEW_SGI_cushion;
-          continue;
-        }
-#endif
-#ifdef GLX_SGI_make_current_read
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"make_current_read", 17))
-        {
-          ret = GLXEW_SGI_make_current_read;
-          continue;
-        }
-#endif
-#ifdef GLX_SGI_swap_control
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"swap_control", 12))
-        {
-          ret = GLXEW_SGI_swap_control;
-          continue;
-        }
-#endif
-#ifdef GLX_SGI_video_sync
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"video_sync", 10))
-        {
-          ret = GLXEW_SGI_video_sync;
-          continue;
-        }
-#endif
-      }
-      if (_glewStrSame2(&pos, &len, (const GLubyte*)"SUN_", 4))
-      {
-#ifdef GLX_SUN_get_transparent_index
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"get_transparent_index", 21))
-        {
-          ret = GLXEW_SUN_get_transparent_index;
-          continue;
-        }
-#endif
-#ifdef GLX_SUN_video_resize
-        if (_glewStrSame3(&pos, &len, (const GLubyte*)"video_resize", 12))
-        {
-          ret = GLXEW_SUN_video_resize;
-          continue;
-        }
-#endif
-      }
-    }
-    ret = (len == 0);
-  }
-  return ret;
-}
-
-#endif /* _WIN32 */
diff --git a/src/other/glew/src/glewinfo.c b/src/other/glew/src/glewinfo.c
deleted file mode 100644
index abfe1fa..0000000
--- a/src/other/glew/src/glewinfo.c
+++ /dev/null
@@ -1,8441 +0,0 @@
-/*
-** The OpenGL Extension Wrangler Library
-** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
-** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
-** Copyright (C) 2002, Lev Povalahev
-** All rights reserved.
-** 
-** Redistribution and use in source and binary forms, with or without 
-** modification, are permitted provided that the following conditions are met:
-** 
-** * Redistributions of source code must retain the above copyright notice, 
-**   this list of conditions and the following disclaimer.
-** * Redistributions in binary form must reproduce the above copyright notice, 
-**   this list of conditions and the following disclaimer in the documentation 
-**   and/or other materials provided with the distribution.
-** * The name of the author may be used to endorse or promote products 
-**   derived from this software without specific prior written permission.
-**
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
-** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
-** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
-** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
-** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
-** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-** THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <GL/glew.h>
-#if defined(_WIN32)
-#include <GL/wglew.h>
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-#include <GL/glxew.h>
-#endif
-
-static FILE* f;
-
-#ifdef GLEW_MX
-GLEWContext _glewctx;
-#define glewGetContext() (&_glewctx)
-#ifdef _WIN32
-WGLEWContext _wglewctx;
-#define wglewGetContext() (&_wglewctx)
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-GLXEWContext _glxewctx;
-#define glxewGetContext() (&_glxewctx)
-#endif
-#endif
-
-#if defined(_WIN32)
-GLboolean glewCreateContext (int* pixelformat);
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-GLboolean glewCreateContext (const char* display, int* visual);
-#else
-GLboolean glewCreateContext ();
-#endif
-
-#if defined(_WIN32) || !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-GLboolean glewParseArgs (int argc, char** argv, char** display, int* visual);
-#endif
-
-void glewDestroyContext ();
-
-/* ------------------------------------------------------------------------- */
-
-static void glewPrintExt (const char* name, GLboolean def1, GLboolean def2, GLboolean def3)
-{
-  unsigned int i;
-  fprintf(f, "\n%s:", name);
-  for (i=0; i<62-strlen(name); i++) fprintf(f, " ");
-  fprintf(f, "%s ", def1 ? "OK" : "MISSING");
-  if (def1 != def2)
-    fprintf(f, "[%s] ", def2 ? "OK" : "MISSING");
-  if (def1 != def3)
-    fprintf(f, "[%s]\n", def3 ? "OK" : "MISSING");
-  else
-    fprintf(f, "\n");
-  for (i=0; i<strlen(name)+1; i++) fprintf(f, "-");
-  fprintf(f, "\n");
-  fflush(f);
-}
-
-static void glewInfoFunc (const char* name, GLint undefined)
-{
-  unsigned int i;
-  fprintf(f, "  %s:", name);
-  for (i=0; i<60-strlen(name); i++) fprintf(f, " ");
-  fprintf(f, "%s\n", undefined ? "MISSING" : "OK");
-  fflush(f);
-}
-
-/* ----------------------------- GL_VERSION_1_1 ---------------------------- */
-
-#ifdef GL_VERSION_1_1
-
-static void _glewInfo_GL_VERSION_1_1 (void)
-{
-  glewPrintExt("GL_VERSION_1_1", GLEW_VERSION_1_1, GLEW_VERSION_1_1, GLEW_VERSION_1_1);
-}
-
-#endif /* GL_VERSION_1_1 */
-
-#ifdef GL_VERSION_1_2
-
-static void _glewInfo_GL_VERSION_1_2 (void)
-{
-  glewPrintExt("GL_VERSION_1_2", GLEW_VERSION_1_2, GLEW_VERSION_1_2, GLEW_VERSION_1_2);
-
-  glewInfoFunc("glCopyTexSubImage3D", glCopyTexSubImage3D == NULL);
-  glewInfoFunc("glDrawRangeElements", glDrawRangeElements == NULL);
-  glewInfoFunc("glTexImage3D", glTexImage3D == NULL);
-  glewInfoFunc("glTexSubImage3D", glTexSubImage3D == NULL);
-}
-
-#endif /* GL_VERSION_1_2 */
-
-#ifdef GL_VERSION_1_3
-
-static void _glewInfo_GL_VERSION_1_3 (void)
-{
-  glewPrintExt("GL_VERSION_1_3", GLEW_VERSION_1_3, GLEW_VERSION_1_3, GLEW_VERSION_1_3);
-
-  glewInfoFunc("glActiveTexture", glActiveTexture == NULL);
-  glewInfoFunc("glClientActiveTexture", glClientActiveTexture == NULL);
-  glewInfoFunc("glCompressedTexImage1D", glCompressedTexImage1D == NULL);
-  glewInfoFunc("glCompressedTexImage2D", glCompressedTexImage2D == NULL);
-  glewInfoFunc("glCompressedTexImage3D", glCompressedTexImage3D == NULL);
-  glewInfoFunc("glCompressedTexSubImage1D", glCompressedTexSubImage1D == NULL);
-  glewInfoFunc("glCompressedTexSubImage2D", glCompressedTexSubImage2D == NULL);
-  glewInfoFunc("glCompressedTexSubImage3D", glCompressedTexSubImage3D == NULL);
-  glewInfoFunc("glGetCompressedTexImage", glGetCompressedTexImage == NULL);
-  glewInfoFunc("glLoadTransposeMatrixd", glLoadTransposeMatrixd == NULL);
-  glewInfoFunc("glLoadTransposeMatrixf", glLoadTransposeMatrixf == NULL);
-  glewInfoFunc("glMultTransposeMatrixd", glMultTransposeMatrixd == NULL);
-  glewInfoFunc("glMultTransposeMatrixf", glMultTransposeMatrixf == NULL);
-  glewInfoFunc("glMultiTexCoord1d", glMultiTexCoord1d == NULL);
-  glewInfoFunc("glMultiTexCoord1dv", glMultiTexCoord1dv == NULL);
-  glewInfoFunc("glMultiTexCoord1f", glMultiTexCoord1f == NULL);
-  glewInfoFunc("glMultiTexCoord1fv", glMultiTexCoord1fv == NULL);
-  glewInfoFunc("glMultiTexCoord1i", glMultiTexCoord1i == NULL);
-  glewInfoFunc("glMultiTexCoord1iv", glMultiTexCoord1iv == NULL);
-  glewInfoFunc("glMultiTexCoord1s", glMultiTexCoord1s == NULL);
-  glewInfoFunc("glMultiTexCoord1sv", glMultiTexCoord1sv == NULL);
-  glewInfoFunc("glMultiTexCoord2d", glMultiTexCoord2d == NULL);
-  glewInfoFunc("glMultiTexCoord2dv", glMultiTexCoord2dv == NULL);
-  glewInfoFunc("glMultiTexCoord2f", glMultiTexCoord2f == NULL);
-  glewInfoFunc("glMultiTexCoord2fv", glMultiTexCoord2fv == NULL);
-  glewInfoFunc("glMultiTexCoord2i", glMultiTexCoord2i == NULL);
-  glewInfoFunc("glMultiTexCoord2iv", glMultiTexCoord2iv == NULL);
-  glewInfoFunc("glMultiTexCoord2s", glMultiTexCoord2s == NULL);
-  glewInfoFunc("glMultiTexCoord2sv", glMultiTexCoord2sv == NULL);
-  glewInfoFunc("glMultiTexCoord3d", glMultiTexCoord3d == NULL);
-  glewInfoFunc("glMultiTexCoord3dv", glMultiTexCoord3dv == NULL);
-  glewInfoFunc("glMultiTexCoord3f", glMultiTexCoord3f == NULL);
-  glewInfoFunc("glMultiTexCoord3fv", glMultiTexCoord3fv == NULL);
-  glewInfoFunc("glMultiTexCoord3i", glMultiTexCoord3i == NULL);
-  glewInfoFunc("glMultiTexCoord3iv", glMultiTexCoord3iv == NULL);
-  glewInfoFunc("glMultiTexCoord3s", glMultiTexCoord3s == NULL);
-  glewInfoFunc("glMultiTexCoord3sv", glMultiTexCoord3sv == NULL);
-  glewInfoFunc("glMultiTexCoord4d", glMultiTexCoord4d == NULL);
-  glewInfoFunc("glMultiTexCoord4dv", glMultiTexCoord4dv == NULL);
-  glewInfoFunc("glMultiTexCoord4f", glMultiTexCoord4f == NULL);
-  glewInfoFunc("glMultiTexCoord4fv", glMultiTexCoord4fv == NULL);
-  glewInfoFunc("glMultiTexCoord4i", glMultiTexCoord4i == NULL);
-  glewInfoFunc("glMultiTexCoord4iv", glMultiTexCoord4iv == NULL);
-  glewInfoFunc("glMultiTexCoord4s", glMultiTexCoord4s == NULL);
-  glewInfoFunc("glMultiTexCoord4sv", glMultiTexCoord4sv == NULL);
-  glewInfoFunc("glSampleCoverage", glSampleCoverage == NULL);
-}
-
-#endif /* GL_VERSION_1_3 */
-
-#ifdef GL_VERSION_1_4
-
-static void _glewInfo_GL_VERSION_1_4 (void)
-{
-  glewPrintExt("GL_VERSION_1_4", GLEW_VERSION_1_4, GLEW_VERSION_1_4, GLEW_VERSION_1_4);
-
-  glewInfoFunc("glBlendColor", glBlendColor == NULL);
-  glewInfoFunc("glBlendEquation", glBlendEquation == NULL);
-  glewInfoFunc("glBlendFuncSeparate", glBlendFuncSeparate == NULL);
-  glewInfoFunc("glFogCoordPointer", glFogCoordPointer == NULL);
-  glewInfoFunc("glFogCoordd", glFogCoordd == NULL);
-  glewInfoFunc("glFogCoorddv", glFogCoorddv == NULL);
-  glewInfoFunc("glFogCoordf", glFogCoordf == NULL);
-  glewInfoFunc("glFogCoordfv", glFogCoordfv == NULL);
-  glewInfoFunc("glMultiDrawArrays", glMultiDrawArrays == NULL);
-  glewInfoFunc("glMultiDrawElements", glMultiDrawElements == NULL);
-  glewInfoFunc("glPointParameterf", glPointParameterf == NULL);
-  glewInfoFunc("glPointParameterfv", glPointParameterfv == NULL);
-  glewInfoFunc("glPointParameteri", glPointParameteri == NULL);
-  glewInfoFunc("glPointParameteriv", glPointParameteriv == NULL);
-  glewInfoFunc("glSecondaryColor3b", glSecondaryColor3b == NULL);
-  glewInfoFunc("glSecondaryColor3bv", glSecondaryColor3bv == NULL);
-  glewInfoFunc("glSecondaryColor3d", glSecondaryColor3d == NULL);
-  glewInfoFunc("glSecondaryColor3dv", glSecondaryColor3dv == NULL);
-  glewInfoFunc("glSecondaryColor3f", glSecondaryColor3f == NULL);
-  glewInfoFunc("glSecondaryColor3fv", glSecondaryColor3fv == NULL);
-  glewInfoFunc("glSecondaryColor3i", glSecondaryColor3i == NULL);
-  glewInfoFunc("glSecondaryColor3iv", glSecondaryColor3iv == NULL);
-  glewInfoFunc("glSecondaryColor3s", glSecondaryColor3s == NULL);
-  glewInfoFunc("glSecondaryColor3sv", glSecondaryColor3sv == NULL);
-  glewInfoFunc("glSecondaryColor3ub", glSecondaryColor3ub == NULL);
-  glewInfoFunc("glSecondaryColor3ubv", glSecondaryColor3ubv == NULL);
-  glewInfoFunc("glSecondaryColor3ui", glSecondaryColor3ui == NULL);
-  glewInfoFunc("glSecondaryColor3uiv", glSecondaryColor3uiv == NULL);
-  glewInfoFunc("glSecondaryColor3us", glSecondaryColor3us == NULL);
-  glewInfoFunc("glSecondaryColor3usv", glSecondaryColor3usv == NULL);
-  glewInfoFunc("glSecondaryColorPointer", glSecondaryColorPointer == NULL);
-  glewInfoFunc("glWindowPos2d", glWindowPos2d == NULL);
-  glewInfoFunc("glWindowPos2dv", glWindowPos2dv == NULL);
-  glewInfoFunc("glWindowPos2f", glWindowPos2f == NULL);
-  glewInfoFunc("glWindowPos2fv", glWindowPos2fv == NULL);
-  glewInfoFunc("glWindowPos2i", glWindowPos2i == NULL);
-  glewInfoFunc("glWindowPos2iv", glWindowPos2iv == NULL);
-  glewInfoFunc("glWindowPos2s", glWindowPos2s == NULL);
-  glewInfoFunc("glWindowPos2sv", glWindowPos2sv == NULL);
-  glewInfoFunc("glWindowPos3d", glWindowPos3d == NULL);
-  glewInfoFunc("glWindowPos3dv", glWindowPos3dv == NULL);
-  glewInfoFunc("glWindowPos3f", glWindowPos3f == NULL);
-  glewInfoFunc("glWindowPos3fv", glWindowPos3fv == NULL);
-  glewInfoFunc("glWindowPos3i", glWindowPos3i == NULL);
-  glewInfoFunc("glWindowPos3iv", glWindowPos3iv == NULL);
-  glewInfoFunc("glWindowPos3s", glWindowPos3s == NULL);
-  glewInfoFunc("glWindowPos3sv", glWindowPos3sv == NULL);
-}
-
-#endif /* GL_VERSION_1_4 */
-
-#ifdef GL_VERSION_1_5
-
-static void _glewInfo_GL_VERSION_1_5 (void)
-{
-  glewPrintExt("GL_VERSION_1_5", GLEW_VERSION_1_5, GLEW_VERSION_1_5, GLEW_VERSION_1_5);
-
-  glewInfoFunc("glBeginQuery", glBeginQuery == NULL);
-  glewInfoFunc("glBindBuffer", glBindBuffer == NULL);
-  glewInfoFunc("glBufferData", glBufferData == NULL);
-  glewInfoFunc("glBufferSubData", glBufferSubData == NULL);
-  glewInfoFunc("glDeleteBuffers", glDeleteBuffers == NULL);
-  glewInfoFunc("glDeleteQueries", glDeleteQueries == NULL);
-  glewInfoFunc("glEndQuery", glEndQuery == NULL);
-  glewInfoFunc("glGenBuffers", glGenBuffers == NULL);
-  glewInfoFunc("glGenQueries", glGenQueries == NULL);
-  glewInfoFunc("glGetBufferParameteriv", glGetBufferParameteriv == NULL);
-  glewInfoFunc("glGetBufferPointerv", glGetBufferPointerv == NULL);
-  glewInfoFunc("glGetBufferSubData", glGetBufferSubData == NULL);
-  glewInfoFunc("glGetQueryObjectiv", glGetQueryObjectiv == NULL);
-  glewInfoFunc("glGetQueryObjectuiv", glGetQueryObjectuiv == NULL);
-  glewInfoFunc("glGetQueryiv", glGetQueryiv == NULL);
-  glewInfoFunc("glIsBuffer", glIsBuffer == NULL);
-  glewInfoFunc("glIsQuery", glIsQuery == NULL);
-  glewInfoFunc("glMapBuffer", glMapBuffer == NULL);
-  glewInfoFunc("glUnmapBuffer", glUnmapBuffer == NULL);
-}
-
-#endif /* GL_VERSION_1_5 */
-
-#ifdef GL_VERSION_2_0
-
-static void _glewInfo_GL_VERSION_2_0 (void)
-{
-  glewPrintExt("GL_VERSION_2_0", GLEW_VERSION_2_0, GLEW_VERSION_2_0, GLEW_VERSION_2_0);
-
-  glewInfoFunc("glAttachShader", glAttachShader == NULL);
-  glewInfoFunc("glBindAttribLocation", glBindAttribLocation == NULL);
-  glewInfoFunc("glBlendEquationSeparate", glBlendEquationSeparate == NULL);
-  glewInfoFunc("glCompileShader", glCompileShader == NULL);
-  glewInfoFunc("glCreateProgram", glCreateProgram == NULL);
-  glewInfoFunc("glCreateShader", glCreateShader == NULL);
-  glewInfoFunc("glDeleteProgram", glDeleteProgram == NULL);
-  glewInfoFunc("glDeleteShader", glDeleteShader == NULL);
-  glewInfoFunc("glDetachShader", glDetachShader == NULL);
-  glewInfoFunc("glDisableVertexAttribArray", glDisableVertexAttribArray == NULL);
-  glewInfoFunc("glDrawBuffers", glDrawBuffers == NULL);
-  glewInfoFunc("glEnableVertexAttribArray", glEnableVertexAttribArray == NULL);
-  glewInfoFunc("glGetActiveAttrib", glGetActiveAttrib == NULL);
-  glewInfoFunc("glGetActiveUniform", glGetActiveUniform == NULL);
-  glewInfoFunc("glGetAttachedShaders", glGetAttachedShaders == NULL);
-  glewInfoFunc("glGetAttribLocation", glGetAttribLocation == NULL);
-  glewInfoFunc("glGetProgramInfoLog", glGetProgramInfoLog == NULL);
-  glewInfoFunc("glGetProgramiv", glGetProgramiv == NULL);
-  glewInfoFunc("glGetShaderInfoLog", glGetShaderInfoLog == NULL);
-  glewInfoFunc("glGetShaderSource", glGetShaderSource == NULL);
-  glewInfoFunc("glGetShaderiv", glGetShaderiv == NULL);
-  glewInfoFunc("glGetUniformLocation", glGetUniformLocation == NULL);
-  glewInfoFunc("glGetUniformfv", glGetUniformfv == NULL);
-  glewInfoFunc("glGetUniformiv", glGetUniformiv == NULL);
-  glewInfoFunc("glGetVertexAttribPointerv", glGetVertexAttribPointerv == NULL);
-  glewInfoFunc("glGetVertexAttribdv", glGetVertexAttribdv == NULL);
-  glewInfoFunc("glGetVertexAttribfv", glGetVertexAttribfv == NULL);
-  glewInfoFunc("glGetVertexAttribiv", glGetVertexAttribiv == NULL);
-  glewInfoFunc("glIsProgram", glIsProgram == NULL);
-  glewInfoFunc("glIsShader", glIsShader == NULL);
-  glewInfoFunc("glLinkProgram", glLinkProgram == NULL);
-  glewInfoFunc("glShaderSource", glShaderSource == NULL);
-  glewInfoFunc("glStencilFuncSeparate", glStencilFuncSeparate == NULL);
-  glewInfoFunc("glStencilMaskSeparate", glStencilMaskSeparate == NULL);
-  glewInfoFunc("glStencilOpSeparate", glStencilOpSeparate == NULL);
-  glewInfoFunc("glUniform1f", glUniform1f == NULL);
-  glewInfoFunc("glUniform1fv", glUniform1fv == NULL);
-  glewInfoFunc("glUniform1i", glUniform1i == NULL);
-  glewInfoFunc("glUniform1iv", glUniform1iv == NULL);
-  glewInfoFunc("glUniform2f", glUniform2f == NULL);
-  glewInfoFunc("glUniform2fv", glUniform2fv == NULL);
-  glewInfoFunc("glUniform2i", glUniform2i == NULL);
-  glewInfoFunc("glUniform2iv", glUniform2iv == NULL);
-  glewInfoFunc("glUniform3f", glUniform3f == NULL);
-  glewInfoFunc("glUniform3fv", glUniform3fv == NULL);
-  glewInfoFunc("glUniform3i", glUniform3i == NULL);
-  glewInfoFunc("glUniform3iv", glUniform3iv == NULL);
-  glewInfoFunc("glUniform4f", glUniform4f == NULL);
-  glewInfoFunc("glUniform4fv", glUniform4fv == NULL);
-  glewInfoFunc("glUniform4i", glUniform4i == NULL);
-  glewInfoFunc("glUniform4iv", glUniform4iv == NULL);
-  glewInfoFunc("glUniformMatrix2fv", glUniformMatrix2fv == NULL);
-  glewInfoFunc("glUniformMatrix3fv", glUniformMatrix3fv == NULL);
-  glewInfoFunc("glUniformMatrix4fv", glUniformMatrix4fv == NULL);
-  glewInfoFunc("glUseProgram", glUseProgram == NULL);
-  glewInfoFunc("glValidateProgram", glValidateProgram == NULL);
-  glewInfoFunc("glVertexAttrib1d", glVertexAttrib1d == NULL);
-  glewInfoFunc("glVertexAttrib1dv", glVertexAttrib1dv == NULL);
-  glewInfoFunc("glVertexAttrib1f", glVertexAttrib1f == NULL);
-  glewInfoFunc("glVertexAttrib1fv", glVertexAttrib1fv == NULL);
-  glewInfoFunc("glVertexAttrib1s", glVertexAttrib1s == NULL);
-  glewInfoFunc("glVertexAttrib1sv", glVertexAttrib1sv == NULL);
-  glewInfoFunc("glVertexAttrib2d", glVertexAttrib2d == NULL);
-  glewInfoFunc("glVertexAttrib2dv", glVertexAttrib2dv == NULL);
-  glewInfoFunc("glVertexAttrib2f", glVertexAttrib2f == NULL);
-  glewInfoFunc("glVertexAttrib2fv", glVertexAttrib2fv == NULL);
-  glewInfoFunc("glVertexAttrib2s", glVertexAttrib2s == NULL);
-  glewInfoFunc("glVertexAttrib2sv", glVertexAttrib2sv == NULL);
-  glewInfoFunc("glVertexAttrib3d", glVertexAttrib3d == NULL);
-  glewInfoFunc("glVertexAttrib3dv", glVertexAttrib3dv == NULL);
-  glewInfoFunc("glVertexAttrib3f", glVertexAttrib3f == NULL);
-  glewInfoFunc("glVertexAttrib3fv", glVertexAttrib3fv == NULL);
-  glewInfoFunc("glVertexAttrib3s", glVertexAttrib3s == NULL);
-  glewInfoFunc("glVertexAttrib3sv", glVertexAttrib3sv == NULL);
-  glewInfoFunc("glVertexAttrib4Nbv", glVertexAttrib4Nbv == NULL);
-  glewInfoFunc("glVertexAttrib4Niv", glVertexAttrib4Niv == NULL);
-  glewInfoFunc("glVertexAttrib4Nsv", glVertexAttrib4Nsv == NULL);
-  glewInfoFunc("glVertexAttrib4Nub", glVertexAttrib4Nub == NULL);
-  glewInfoFunc("glVertexAttrib4Nubv", glVertexAttrib4Nubv == NULL);
-  glewInfoFunc("glVertexAttrib4Nuiv", glVertexAttrib4Nuiv == NULL);
-  glewInfoFunc("glVertexAttrib4Nusv", glVertexAttrib4Nusv == NULL);
-  glewInfoFunc("glVertexAttrib4bv", glVertexAttrib4bv == NULL);
-  glewInfoFunc("glVertexAttrib4d", glVertexAttrib4d == NULL);
-  glewInfoFunc("glVertexAttrib4dv", glVertexAttrib4dv == NULL);
-  glewInfoFunc("glVertexAttrib4f", glVertexAttrib4f == NULL);
-  glewInfoFunc("glVertexAttrib4fv", glVertexAttrib4fv == NULL);
-  glewInfoFunc("glVertexAttrib4iv", glVertexAttrib4iv == NULL);
-  glewInfoFunc("glVertexAttrib4s", glVertexAttrib4s == NULL);
-  glewInfoFunc("glVertexAttrib4sv", glVertexAttrib4sv == NULL);
-  glewInfoFunc("glVertexAttrib4ubv", glVertexAttrib4ubv == NULL);
-  glewInfoFunc("glVertexAttrib4uiv", glVertexAttrib4uiv == NULL);
-  glewInfoFunc("glVertexAttrib4usv", glVertexAttrib4usv == NULL);
-  glewInfoFunc("glVertexAttribPointer", glVertexAttribPointer == NULL);
-}
-
-#endif /* GL_VERSION_2_0 */
-
-#ifdef GL_VERSION_2_1
-
-static void _glewInfo_GL_VERSION_2_1 (void)
-{
-  glewPrintExt("GL_VERSION_2_1", GLEW_VERSION_2_1, GLEW_VERSION_2_1, GLEW_VERSION_2_1);
-
-  glewInfoFunc("glUniformMatrix2x3fv", glUniformMatrix2x3fv == NULL);
-  glewInfoFunc("glUniformMatrix2x4fv", glUniformMatrix2x4fv == NULL);
-  glewInfoFunc("glUniformMatrix3x2fv", glUniformMatrix3x2fv == NULL);
-  glewInfoFunc("glUniformMatrix3x4fv", glUniformMatrix3x4fv == NULL);
-  glewInfoFunc("glUniformMatrix4x2fv", glUniformMatrix4x2fv == NULL);
-  glewInfoFunc("glUniformMatrix4x3fv", glUniformMatrix4x3fv == NULL);
-}
-
-#endif /* GL_VERSION_2_1 */
-
-#ifdef GL_VERSION_3_0
-
-static void _glewInfo_GL_VERSION_3_0 (void)
-{
-  glewPrintExt("GL_VERSION_3_0", GLEW_VERSION_3_0, GLEW_VERSION_3_0, GLEW_VERSION_3_0);
-
-  glewInfoFunc("glBeginConditionalRender", glBeginConditionalRender == NULL);
-  glewInfoFunc("glBeginTransformFeedback", glBeginTransformFeedback == NULL);
-  glewInfoFunc("glBindFragDataLocation", glBindFragDataLocation == NULL);
-  glewInfoFunc("glClampColor", glClampColor == NULL);
-  glewInfoFunc("glClearBufferfi", glClearBufferfi == NULL);
-  glewInfoFunc("glClearBufferfv", glClearBufferfv == NULL);
-  glewInfoFunc("glClearBufferiv", glClearBufferiv == NULL);
-  glewInfoFunc("glClearBufferuiv", glClearBufferuiv == NULL);
-  glewInfoFunc("glColorMaski", glColorMaski == NULL);
-  glewInfoFunc("glDisablei", glDisablei == NULL);
-  glewInfoFunc("glEnablei", glEnablei == NULL);
-  glewInfoFunc("glEndConditionalRender", glEndConditionalRender == NULL);
-  glewInfoFunc("glEndTransformFeedback", glEndTransformFeedback == NULL);
-  glewInfoFunc("glGetBooleani_v", glGetBooleani_v == NULL);
-  glewInfoFunc("glGetFragDataLocation", glGetFragDataLocation == NULL);
-  glewInfoFunc("glGetStringi", glGetStringi == NULL);
-  glewInfoFunc("glGetTexParameterIiv", glGetTexParameterIiv == NULL);
-  glewInfoFunc("glGetTexParameterIuiv", glGetTexParameterIuiv == NULL);
-  glewInfoFunc("glGetTransformFeedbackVarying", glGetTransformFeedbackVarying == NULL);
-  glewInfoFunc("glGetUniformuiv", glGetUniformuiv == NULL);
-  glewInfoFunc("glGetVertexAttribIiv", glGetVertexAttribIiv == NULL);
-  glewInfoFunc("glGetVertexAttribIuiv", glGetVertexAttribIuiv == NULL);
-  glewInfoFunc("glIsEnabledi", glIsEnabledi == NULL);
-  glewInfoFunc("glTexParameterIiv", glTexParameterIiv == NULL);
-  glewInfoFunc("glTexParameterIuiv", glTexParameterIuiv == NULL);
-  glewInfoFunc("glTransformFeedbackVaryings", glTransformFeedbackVaryings == NULL);
-  glewInfoFunc("glUniform1ui", glUniform1ui == NULL);
-  glewInfoFunc("glUniform1uiv", glUniform1uiv == NULL);
-  glewInfoFunc("glUniform2ui", glUniform2ui == NULL);
-  glewInfoFunc("glUniform2uiv", glUniform2uiv == NULL);
-  glewInfoFunc("glUniform3ui", glUniform3ui == NULL);
-  glewInfoFunc("glUniform3uiv", glUniform3uiv == NULL);
-  glewInfoFunc("glUniform4ui", glUniform4ui == NULL);
-  glewInfoFunc("glUniform4uiv", glUniform4uiv == NULL);
-  glewInfoFunc("glVertexAttribI1i", glVertexAttribI1i == NULL);
-  glewInfoFunc("glVertexAttribI1iv", glVertexAttribI1iv == NULL);
-  glewInfoFunc("glVertexAttribI1ui", glVertexAttribI1ui == NULL);
-  glewInfoFunc("glVertexAttribI1uiv", glVertexAttribI1uiv == NULL);
-  glewInfoFunc("glVertexAttribI2i", glVertexAttribI2i == NULL);
-  glewInfoFunc("glVertexAttribI2iv", glVertexAttribI2iv == NULL);
-  glewInfoFunc("glVertexAttribI2ui", glVertexAttribI2ui == NULL);
-  glewInfoFunc("glVertexAttribI2uiv", glVertexAttribI2uiv == NULL);
-  glewInfoFunc("glVertexAttribI3i", glVertexAttribI3i == NULL);
-  glewInfoFunc("glVertexAttribI3iv", glVertexAttribI3iv == NULL);
-  glewInfoFunc("glVertexAttribI3ui", glVertexAttribI3ui == NULL);
-  glewInfoFunc("glVertexAttribI3uiv", glVertexAttribI3uiv == NULL);
-  glewInfoFunc("glVertexAttribI4bv", glVertexAttribI4bv == NULL);
-  glewInfoFunc("glVertexAttribI4i", glVertexAttribI4i == NULL);
-  glewInfoFunc("glVertexAttribI4iv", glVertexAttribI4iv == NULL);
-  glewInfoFunc("glVertexAttribI4sv", glVertexAttribI4sv == NULL);
-  glewInfoFunc("glVertexAttribI4ubv", glVertexAttribI4ubv == NULL);
-  glewInfoFunc("glVertexAttribI4ui", glVertexAttribI4ui == NULL);
-  glewInfoFunc("glVertexAttribI4uiv", glVertexAttribI4uiv == NULL);
-  glewInfoFunc("glVertexAttribI4usv", glVertexAttribI4usv == NULL);
-  glewInfoFunc("glVertexAttribIPointer", glVertexAttribIPointer == NULL);
-}
-
-#endif /* GL_VERSION_3_0 */
-
-#ifdef GL_VERSION_3_1
-
-static void _glewInfo_GL_VERSION_3_1 (void)
-{
-  glewPrintExt("GL_VERSION_3_1", GLEW_VERSION_3_1, GLEW_VERSION_3_1, GLEW_VERSION_3_1);
-
-  glewInfoFunc("glDrawArraysInstanced", glDrawArraysInstanced == NULL);
-  glewInfoFunc("glDrawElementsInstanced", glDrawElementsInstanced == NULL);
-  glewInfoFunc("glPrimitiveRestartIndex", glPrimitiveRestartIndex == NULL);
-  glewInfoFunc("glTexBuffer", glTexBuffer == NULL);
-}
-
-#endif /* GL_VERSION_3_1 */
-
-#ifdef GL_VERSION_3_2
-
-static void _glewInfo_GL_VERSION_3_2 (void)
-{
-  glewPrintExt("GL_VERSION_3_2", GLEW_VERSION_3_2, GLEW_VERSION_3_2, GLEW_VERSION_3_2);
-
-  glewInfoFunc("glFramebufferTexture", glFramebufferTexture == NULL);
-  glewInfoFunc("glGetBufferParameteri64v", glGetBufferParameteri64v == NULL);
-  glewInfoFunc("glGetInteger64i_v", glGetInteger64i_v == NULL);
-}
-
-#endif /* GL_VERSION_3_2 */
-
-#ifdef GL_VERSION_3_3
-
-static void _glewInfo_GL_VERSION_3_3 (void)
-{
-  glewPrintExt("GL_VERSION_3_3", GLEW_VERSION_3_3, GLEW_VERSION_3_3, GLEW_VERSION_3_3);
-}
-
-#endif /* GL_VERSION_3_3 */
-
-#ifdef GL_VERSION_4_0
-
-static void _glewInfo_GL_VERSION_4_0 (void)
-{
-  glewPrintExt("GL_VERSION_4_0", GLEW_VERSION_4_0, GLEW_VERSION_4_0, GLEW_VERSION_4_0);
-
-  glewInfoFunc("glBlendEquationSeparatei", glBlendEquationSeparatei == NULL);
-  glewInfoFunc("glBlendEquationi", glBlendEquationi == NULL);
-  glewInfoFunc("glBlendFuncSeparatei", glBlendFuncSeparatei == NULL);
-  glewInfoFunc("glBlendFunci", glBlendFunci == NULL);
-  glewInfoFunc("glMinSampleShading", glMinSampleShading == NULL);
-}
-
-#endif /* GL_VERSION_4_0 */
-
-#ifdef GL_3DFX_multisample
-
-static void _glewInfo_GL_3DFX_multisample (void)
-{
-  glewPrintExt("GL_3DFX_multisample", GLEW_3DFX_multisample, glewIsSupported("GL_3DFX_multisample"), glewGetExtension("GL_3DFX_multisample"));
-}
-
-#endif /* GL_3DFX_multisample */
-
-#ifdef GL_3DFX_tbuffer
-
-static void _glewInfo_GL_3DFX_tbuffer (void)
-{
-  glewPrintExt("GL_3DFX_tbuffer", GLEW_3DFX_tbuffer, glewIsSupported("GL_3DFX_tbuffer"), glewGetExtension("GL_3DFX_tbuffer"));
-
-  glewInfoFunc("glTbufferMask3DFX", glTbufferMask3DFX == NULL);
-}
-
-#endif /* GL_3DFX_tbuffer */
-
-#ifdef GL_3DFX_texture_compression_FXT1
-
-static void _glewInfo_GL_3DFX_texture_compression_FXT1 (void)
-{
-  glewPrintExt("GL_3DFX_texture_compression_FXT1", GLEW_3DFX_texture_compression_FXT1, glewIsSupported("GL_3DFX_texture_compression_FXT1"), glewGetExtension("GL_3DFX_texture_compression_FXT1"));
-}
-
-#endif /* GL_3DFX_texture_compression_FXT1 */
-
-#ifdef GL_AMD_conservative_depth
-
-static void _glewInfo_GL_AMD_conservative_depth (void)
-{
-  glewPrintExt("GL_AMD_conservative_depth", GLEW_AMD_conservative_depth, glewIsSupported("GL_AMD_conservative_depth"), glewGetExtension("GL_AMD_conservative_depth"));
-}
-
-#endif /* GL_AMD_conservative_depth */
-
-#ifdef GL_AMD_draw_buffers_blend
-
-static void _glewInfo_GL_AMD_draw_buffers_blend (void)
-{
-  glewPrintExt("GL_AMD_draw_buffers_blend", GLEW_AMD_draw_buffers_blend, glewIsSupported("GL_AMD_draw_buffers_blend"), glewGetExtension("GL_AMD_draw_buffers_blend"));
-
-  glewInfoFunc("glBlendEquationIndexedAMD", glBlendEquationIndexedAMD == NULL);
-  glewInfoFunc("glBlendEquationSeparateIndexedAMD", glBlendEquationSeparateIndexedAMD == NULL);
-  glewInfoFunc("glBlendFuncIndexedAMD", glBlendFuncIndexedAMD == NULL);
-  glewInfoFunc("glBlendFuncSeparateIndexedAMD", glBlendFuncSeparateIndexedAMD == NULL);
-}
-
-#endif /* GL_AMD_draw_buffers_blend */
-
-#ifdef GL_AMD_performance_monitor
-
-static void _glewInfo_GL_AMD_performance_monitor (void)
-{
-  glewPrintExt("GL_AMD_performance_monitor", GLEW_AMD_performance_monitor, glewIsSupported("GL_AMD_performance_monitor"), glewGetExtension("GL_AMD_performance_monitor"));
-
-  glewInfoFunc("glBeginPerfMonitorAMD", glBeginPerfMonitorAMD == NULL);
-  glewInfoFunc("glDeletePerfMonitorsAMD", glDeletePerfMonitorsAMD == NULL);
-  glewInfoFunc("glEndPerfMonitorAMD", glEndPerfMonitorAMD == NULL);
-  glewInfoFunc("glGenPerfMonitorsAMD", glGenPerfMonitorsAMD == NULL);
-  glewInfoFunc("glGetPerfMonitorCounterDataAMD", glGetPerfMonitorCounterDataAMD == NULL);
-  glewInfoFunc("glGetPerfMonitorCounterInfoAMD", glGetPerfMonitorCounterInfoAMD == NULL);
-  glewInfoFunc("glGetPerfMonitorCounterStringAMD", glGetPerfMonitorCounterStringAMD == NULL);
-  glewInfoFunc("glGetPerfMonitorCountersAMD", glGetPerfMonitorCountersAMD == NULL);
-  glewInfoFunc("glGetPerfMonitorGroupStringAMD", glGetPerfMonitorGroupStringAMD == NULL);
-  glewInfoFunc("glGetPerfMonitorGroupsAMD", glGetPerfMonitorGroupsAMD == NULL);
-  glewInfoFunc("glSelectPerfMonitorCountersAMD", glSelectPerfMonitorCountersAMD == NULL);
-}
-
-#endif /* GL_AMD_performance_monitor */
-
-#ifdef GL_AMD_seamless_cubemap_per_texture
-
-static void _glewInfo_GL_AMD_seamless_cubemap_per_texture (void)
-{
-  glewPrintExt("GL_AMD_seamless_cubemap_per_texture", GLEW_AMD_seamless_cubemap_per_texture, glewIsSupported("GL_AMD_seamless_cubemap_per_texture"), glewGetExtension("GL_AMD_seamless_cubemap_per_texture"));
-}
-
-#endif /* GL_AMD_seamless_cubemap_per_texture */
-
-#ifdef GL_AMD_shader_stencil_export
-
-static void _glewInfo_GL_AMD_shader_stencil_export (void)
-{
-  glewPrintExt("GL_AMD_shader_stencil_export", GLEW_AMD_shader_stencil_export, glewIsSupported("GL_AMD_shader_stencil_export"), glewGetExtension("GL_AMD_shader_stencil_export"));
-}
-
-#endif /* GL_AMD_shader_stencil_export */
-
-#ifdef GL_AMD_texture_texture4
-
-static void _glewInfo_GL_AMD_texture_texture4 (void)
-{
-  glewPrintExt("GL_AMD_texture_texture4", GLEW_AMD_texture_texture4, glewIsSupported("GL_AMD_texture_texture4"), glewGetExtension("GL_AMD_texture_texture4"));
-}
-
-#endif /* GL_AMD_texture_texture4 */
-
-#ifdef GL_AMD_vertex_shader_tessellator
-
-static void _glewInfo_GL_AMD_vertex_shader_tessellator (void)
-{
-  glewPrintExt("GL_AMD_vertex_shader_tessellator", GLEW_AMD_vertex_shader_tessellator, glewIsSupported("GL_AMD_vertex_shader_tessellator"), glewGetExtension("GL_AMD_vertex_shader_tessellator"));
-
-  glewInfoFunc("glTessellationFactorAMD", glTessellationFactorAMD == NULL);
-  glewInfoFunc("glTessellationModeAMD", glTessellationModeAMD == NULL);
-}
-
-#endif /* GL_AMD_vertex_shader_tessellator */
-
-#ifdef GL_APPLE_aux_depth_stencil
-
-static void _glewInfo_GL_APPLE_aux_depth_stencil (void)
-{
-  glewPrintExt("GL_APPLE_aux_depth_stencil", GLEW_APPLE_aux_depth_stencil, glewIsSupported("GL_APPLE_aux_depth_stencil"), glewGetExtension("GL_APPLE_aux_depth_stencil"));
-}
-
-#endif /* GL_APPLE_aux_depth_stencil */
-
-#ifdef GL_APPLE_client_storage
-
-static void _glewInfo_GL_APPLE_client_storage (void)
-{
-  glewPrintExt("GL_APPLE_client_storage", GLEW_APPLE_client_storage, glewIsSupported("GL_APPLE_client_storage"), glewGetExtension("GL_APPLE_client_storage"));
-}
-
-#endif /* GL_APPLE_client_storage */
-
-#ifdef GL_APPLE_element_array
-
-static void _glewInfo_GL_APPLE_element_array (void)
-{
-  glewPrintExt("GL_APPLE_element_array", GLEW_APPLE_element_array, glewIsSupported("GL_APPLE_element_array"), glewGetExtension("GL_APPLE_element_array"));
-
-  glewInfoFunc("glDrawElementArrayAPPLE", glDrawElementArrayAPPLE == NULL);
-  glewInfoFunc("glDrawRangeElementArrayAPPLE", glDrawRangeElementArrayAPPLE == NULL);
-  glewInfoFunc("glElementPointerAPPLE", glElementPointerAPPLE == NULL);
-  glewInfoFunc("glMultiDrawElementArrayAPPLE", glMultiDrawElementArrayAPPLE == NULL);
-  glewInfoFunc("glMultiDrawRangeElementArrayAPPLE", glMultiDrawRangeElementArrayAPPLE == NULL);
-}
-
-#endif /* GL_APPLE_element_array */
-
-#ifdef GL_APPLE_fence
-
-static void _glewInfo_GL_APPLE_fence (void)
-{
-  glewPrintExt("GL_APPLE_fence", GLEW_APPLE_fence, glewIsSupported("GL_APPLE_fence"), glewGetExtension("GL_APPLE_fence"));
-
-  glewInfoFunc("glDeleteFencesAPPLE", glDeleteFencesAPPLE == NULL);
-  glewInfoFunc("glFinishFenceAPPLE", glFinishFenceAPPLE == NULL);
-  glewInfoFunc("glFinishObjectAPPLE", glFinishObjectAPPLE == NULL);
-  glewInfoFunc("glGenFencesAPPLE", glGenFencesAPPLE == NULL);
-  glewInfoFunc("glIsFenceAPPLE", glIsFenceAPPLE == NULL);
-  glewInfoFunc("glSetFenceAPPLE", glSetFenceAPPLE == NULL);
-  glewInfoFunc("glTestFenceAPPLE", glTestFenceAPPLE == NULL);
-  glewInfoFunc("glTestObjectAPPLE", glTestObjectAPPLE == NULL);
-}
-
-#endif /* GL_APPLE_fence */
-
-#ifdef GL_APPLE_float_pixels
-
-static void _glewInfo_GL_APPLE_float_pixels (void)
-{
-  glewPrintExt("GL_APPLE_float_pixels", GLEW_APPLE_float_pixels, glewIsSupported("GL_APPLE_float_pixels"), glewGetExtension("GL_APPLE_float_pixels"));
-}
-
-#endif /* GL_APPLE_float_pixels */
-
-#ifdef GL_APPLE_flush_buffer_range
-
-static void _glewInfo_GL_APPLE_flush_buffer_range (void)
-{
-  glewPrintExt("GL_APPLE_flush_buffer_range", GLEW_APPLE_flush_buffer_range, glewIsSupported("GL_APPLE_flush_buffer_range"), glewGetExtension("GL_APPLE_flush_buffer_range"));
-
-  glewInfoFunc("glBufferParameteriAPPLE", glBufferParameteriAPPLE == NULL);
-  glewInfoFunc("glFlushMappedBufferRangeAPPLE", glFlushMappedBufferRangeAPPLE == NULL);
-}
-
-#endif /* GL_APPLE_flush_buffer_range */
-
-#ifdef GL_APPLE_object_purgeable
-
-static void _glewInfo_GL_APPLE_object_purgeable (void)
-{
-  glewPrintExt("GL_APPLE_object_purgeable", GLEW_APPLE_object_purgeable, glewIsSupported("GL_APPLE_object_purgeable"), glewGetExtension("GL_APPLE_object_purgeable"));
-
-  glewInfoFunc("glGetObjectParameterivAPPLE", glGetObjectParameterivAPPLE == NULL);
-  glewInfoFunc("glObjectPurgeableAPPLE", glObjectPurgeableAPPLE == NULL);
-  glewInfoFunc("glObjectUnpurgeableAPPLE", glObjectUnpurgeableAPPLE == NULL);
-}
-
-#endif /* GL_APPLE_object_purgeable */
-
-#ifdef GL_APPLE_pixel_buffer
-
-static void _glewInfo_GL_APPLE_pixel_buffer (void)
-{
-  glewPrintExt("GL_APPLE_pixel_buffer", GLEW_APPLE_pixel_buffer, glewIsSupported("GL_APPLE_pixel_buffer"), glewGetExtension("GL_APPLE_pixel_buffer"));
-}
-
-#endif /* GL_APPLE_pixel_buffer */
-
-#ifdef GL_APPLE_rgb_422
-
-static void _glewInfo_GL_APPLE_rgb_422 (void)
-{
-  glewPrintExt("GL_APPLE_rgb_422", GLEW_APPLE_rgb_422, glewIsSupported("GL_APPLE_rgb_422"), glewGetExtension("GL_APPLE_rgb_422"));
-}
-
-#endif /* GL_APPLE_rgb_422 */
-
-#ifdef GL_APPLE_row_bytes
-
-static void _glewInfo_GL_APPLE_row_bytes (void)
-{
-  glewPrintExt("GL_APPLE_row_bytes", GLEW_APPLE_row_bytes, glewIsSupported("GL_APPLE_row_bytes"), glewGetExtension("GL_APPLE_row_bytes"));
-}
-
-#endif /* GL_APPLE_row_bytes */
-
-#ifdef GL_APPLE_specular_vector
-
-static void _glewInfo_GL_APPLE_specular_vector (void)
-{
-  glewPrintExt("GL_APPLE_specular_vector", GLEW_APPLE_specular_vector, glewIsSupported("GL_APPLE_specular_vector"), glewGetExtension("GL_APPLE_specular_vector"));
-}
-
-#endif /* GL_APPLE_specular_vector */
-
-#ifdef GL_APPLE_texture_range
-
-static void _glewInfo_GL_APPLE_texture_range (void)
-{
-  glewPrintExt("GL_APPLE_texture_range", GLEW_APPLE_texture_range, glewIsSupported("GL_APPLE_texture_range"), glewGetExtension("GL_APPLE_texture_range"));
-
-  glewInfoFunc("glGetTexParameterPointervAPPLE", glGetTexParameterPointervAPPLE == NULL);
-  glewInfoFunc("glTextureRangeAPPLE", glTextureRangeAPPLE == NULL);
-}
-
-#endif /* GL_APPLE_texture_range */
-
-#ifdef GL_APPLE_transform_hint
-
-static void _glewInfo_GL_APPLE_transform_hint (void)
-{
-  glewPrintExt("GL_APPLE_transform_hint", GLEW_APPLE_transform_hint, glewIsSupported("GL_APPLE_transform_hint"), glewGetExtension("GL_APPLE_transform_hint"));
-}
-
-#endif /* GL_APPLE_transform_hint */
-
-#ifdef GL_APPLE_vertex_array_object
-
-static void _glewInfo_GL_APPLE_vertex_array_object (void)
-{
-  glewPrintExt("GL_APPLE_vertex_array_object", GLEW_APPLE_vertex_array_object, glewIsSupported("GL_APPLE_vertex_array_object"), glewGetExtension("GL_APPLE_vertex_array_object"));
-
-  glewInfoFunc("glBindVertexArrayAPPLE", glBindVertexArrayAPPLE == NULL);
-  glewInfoFunc("glDeleteVertexArraysAPPLE", glDeleteVertexArraysAPPLE == NULL);
-  glewInfoFunc("glGenVertexArraysAPPLE", glGenVertexArraysAPPLE == NULL);
-  glewInfoFunc("glIsVertexArrayAPPLE", glIsVertexArrayAPPLE == NULL);
-}
-
-#endif /* GL_APPLE_vertex_array_object */
-
-#ifdef GL_APPLE_vertex_array_range
-
-static void _glewInfo_GL_APPLE_vertex_array_range (void)
-{
-  glewPrintExt("GL_APPLE_vertex_array_range", GLEW_APPLE_vertex_array_range, glewIsSupported("GL_APPLE_vertex_array_range"), glewGetExtension("GL_APPLE_vertex_array_range"));
-
-  glewInfoFunc("glFlushVertexArrayRangeAPPLE", glFlushVertexArrayRangeAPPLE == NULL);
-  glewInfoFunc("glVertexArrayParameteriAPPLE", glVertexArrayParameteriAPPLE == NULL);
-  glewInfoFunc("glVertexArrayRangeAPPLE", glVertexArrayRangeAPPLE == NULL);
-}
-
-#endif /* GL_APPLE_vertex_array_range */
-
-#ifdef GL_APPLE_vertex_program_evaluators
-
-static void _glewInfo_GL_APPLE_vertex_program_evaluators (void)
-{
-  glewPrintExt("GL_APPLE_vertex_program_evaluators", GLEW_APPLE_vertex_program_evaluators, glewIsSupported("GL_APPLE_vertex_program_evaluators"), glewGetExtension("GL_APPLE_vertex_program_evaluators"));
-
-  glewInfoFunc("glDisableVertexAttribAPPLE", glDisableVertexAttribAPPLE == NULL);
-  glewInfoFunc("glEnableVertexAttribAPPLE", glEnableVertexAttribAPPLE == NULL);
-  glewInfoFunc("glIsVertexAttribEnabledAPPLE", glIsVertexAttribEnabledAPPLE == NULL);
-  glewInfoFunc("glMapVertexAttrib1dAPPLE", glMapVertexAttrib1dAPPLE == NULL);
-  glewInfoFunc("glMapVertexAttrib1fAPPLE", glMapVertexAttrib1fAPPLE == NULL);
-  glewInfoFunc("glMapVertexAttrib2dAPPLE", glMapVertexAttrib2dAPPLE == NULL);
-  glewInfoFunc("glMapVertexAttrib2fAPPLE", glMapVertexAttrib2fAPPLE == NULL);
-}
-
-#endif /* GL_APPLE_vertex_program_evaluators */
-
-#ifdef GL_APPLE_ycbcr_422
-
-static void _glewInfo_GL_APPLE_ycbcr_422 (void)
-{
-  glewPrintExt("GL_APPLE_ycbcr_422", GLEW_APPLE_ycbcr_422, glewIsSupported("GL_APPLE_ycbcr_422"), glewGetExtension("GL_APPLE_ycbcr_422"));
-}
-
-#endif /* GL_APPLE_ycbcr_422 */
-
-#ifdef GL_ARB_blend_func_extended
-
-static void _glewInfo_GL_ARB_blend_func_extended (void)
-{
-  glewPrintExt("GL_ARB_blend_func_extended", GLEW_ARB_blend_func_extended, glewIsSupported("GL_ARB_blend_func_extended"), glewGetExtension("GL_ARB_blend_func_extended"));
-
-  glewInfoFunc("glBindFragDataLocationIndexed", glBindFragDataLocationIndexed == NULL);
-  glewInfoFunc("glGetFragDataIndex", glGetFragDataIndex == NULL);
-}
-
-#endif /* GL_ARB_blend_func_extended */
-
-#ifdef GL_ARB_color_buffer_float
-
-static void _glewInfo_GL_ARB_color_buffer_float (void)
-{
-  glewPrintExt("GL_ARB_color_buffer_float", GLEW_ARB_color_buffer_float, glewIsSupported("GL_ARB_color_buffer_float"), glewGetExtension("GL_ARB_color_buffer_float"));
-
-  glewInfoFunc("glClampColorARB", glClampColorARB == NULL);
-}
-
-#endif /* GL_ARB_color_buffer_float */
-
-#ifdef GL_ARB_compatibility
-
-static void _glewInfo_GL_ARB_compatibility (void)
-{
-  glewPrintExt("GL_ARB_compatibility", GLEW_ARB_compatibility, glewIsSupported("GL_ARB_compatibility"), glewGetExtension("GL_ARB_compatibility"));
-}
-
-#endif /* GL_ARB_compatibility */
-
-#ifdef GL_ARB_copy_buffer
-
-static void _glewInfo_GL_ARB_copy_buffer (void)
-{
-  glewPrintExt("GL_ARB_copy_buffer", GLEW_ARB_copy_buffer, glewIsSupported("GL_ARB_copy_buffer"), glewGetExtension("GL_ARB_copy_buffer"));
-
-  glewInfoFunc("glCopyBufferSubData", glCopyBufferSubData == NULL);
-}
-
-#endif /* GL_ARB_copy_buffer */
-
-#ifdef GL_ARB_depth_buffer_float
-
-static void _glewInfo_GL_ARB_depth_buffer_float (void)
-{
-  glewPrintExt("GL_ARB_depth_buffer_float", GLEW_ARB_depth_buffer_float, glewIsSupported("GL_ARB_depth_buffer_float"), glewGetExtension("GL_ARB_depth_buffer_float"));
-}
-
-#endif /* GL_ARB_depth_buffer_float */
-
-#ifdef GL_ARB_depth_clamp
-
-static void _glewInfo_GL_ARB_depth_clamp (void)
-{
-  glewPrintExt("GL_ARB_depth_clamp", GLEW_ARB_depth_clamp, glewIsSupported("GL_ARB_depth_clamp"), glewGetExtension("GL_ARB_depth_clamp"));
-}
-
-#endif /* GL_ARB_depth_clamp */
-
-#ifdef GL_ARB_depth_texture
-
-static void _glewInfo_GL_ARB_depth_texture (void)
-{
-  glewPrintExt("GL_ARB_depth_texture", GLEW_ARB_depth_texture, glewIsSupported("GL_ARB_depth_texture"), glewGetExtension("GL_ARB_depth_texture"));
-}
-
-#endif /* GL_ARB_depth_texture */
-
-#ifdef GL_ARB_draw_buffers
-
-static void _glewInfo_GL_ARB_draw_buffers (void)
-{
-  glewPrintExt("GL_ARB_draw_buffers", GLEW_ARB_draw_buffers, glewIsSupported("GL_ARB_draw_buffers"), glewGetExtension("GL_ARB_draw_buffers"));
-
-  glewInfoFunc("glDrawBuffersARB", glDrawBuffersARB == NULL);
-}
-
-#endif /* GL_ARB_draw_buffers */
-
-#ifdef GL_ARB_draw_buffers_blend
-
-static void _glewInfo_GL_ARB_draw_buffers_blend (void)
-{
-  glewPrintExt("GL_ARB_draw_buffers_blend", GLEW_ARB_draw_buffers_blend, glewIsSupported("GL_ARB_draw_buffers_blend"), glewGetExtension("GL_ARB_draw_buffers_blend"));
-
-  glewInfoFunc("glBlendEquationSeparateiARB", glBlendEquationSeparateiARB == NULL);
-  glewInfoFunc("glBlendEquationiARB", glBlendEquationiARB == NULL);
-  glewInfoFunc("glBlendFuncSeparateiARB", glBlendFuncSeparateiARB == NULL);
-  glewInfoFunc("glBlendFunciARB", glBlendFunciARB == NULL);
-}
-
-#endif /* GL_ARB_draw_buffers_blend */
-
-#ifdef GL_ARB_draw_elements_base_vertex
-
-static void _glewInfo_GL_ARB_draw_elements_base_vertex (void)
-{
-  glewPrintExt("GL_ARB_draw_elements_base_vertex", GLEW_ARB_draw_elements_base_vertex, glewIsSupported("GL_ARB_draw_elements_base_vertex"), glewGetExtension("GL_ARB_draw_elements_base_vertex"));
-
-  glewInfoFunc("glDrawElementsBaseVertex", glDrawElementsBaseVertex == NULL);
-  glewInfoFunc("glDrawElementsInstancedBaseVertex", glDrawElementsInstancedBaseVertex == NULL);
-  glewInfoFunc("glDrawRangeElementsBaseVertex", glDrawRangeElementsBaseVertex == NULL);
-  glewInfoFunc("glMultiDrawElementsBaseVertex", glMultiDrawElementsBaseVertex == NULL);
-}
-
-#endif /* GL_ARB_draw_elements_base_vertex */
-
-#ifdef GL_ARB_draw_indirect
-
-static void _glewInfo_GL_ARB_draw_indirect (void)
-{
-  glewPrintExt("GL_ARB_draw_indirect", GLEW_ARB_draw_indirect, glewIsSupported("GL_ARB_draw_indirect"), glewGetExtension("GL_ARB_draw_indirect"));
-
-  glewInfoFunc("glDrawArraysIndirect", glDrawArraysIndirect == NULL);
-  glewInfoFunc("glDrawElementsIndirect", glDrawElementsIndirect == NULL);
-}
-
-#endif /* GL_ARB_draw_indirect */
-
-#ifdef GL_ARB_draw_instanced
-
-static void _glewInfo_GL_ARB_draw_instanced (void)
-{
-  glewPrintExt("GL_ARB_draw_instanced", GLEW_ARB_draw_instanced, glewIsSupported("GL_ARB_draw_instanced"), glewGetExtension("GL_ARB_draw_instanced"));
-
-  glewInfoFunc("glDrawArraysInstancedARB", glDrawArraysInstancedARB == NULL);
-  glewInfoFunc("glDrawElementsInstancedARB", glDrawElementsInstancedARB == NULL);
-}
-
-#endif /* GL_ARB_draw_instanced */
-
-#ifdef GL_ARB_explicit_attrib_location
-
-static void _glewInfo_GL_ARB_explicit_attrib_location (void)
-{
-  glewPrintExt("GL_ARB_explicit_attrib_location", GLEW_ARB_explicit_attrib_location, glewIsSupported("GL_ARB_explicit_attrib_location"), glewGetExtension("GL_ARB_explicit_attrib_location"));
-}
-
-#endif /* GL_ARB_explicit_attrib_location */
-
-#ifdef GL_ARB_fragment_coord_conventions
-
-static void _glewInfo_GL_ARB_fragment_coord_conventions (void)
-{
-  glewPrintExt("GL_ARB_fragment_coord_conventions", GLEW_ARB_fragment_coord_conventions, glewIsSupported("GL_ARB_fragment_coord_conventions"), glewGetExtension("GL_ARB_fragment_coord_conventions"));
-}
-
-#endif /* GL_ARB_fragment_coord_conventions */
-
-#ifdef GL_ARB_fragment_program
-
-static void _glewInfo_GL_ARB_fragment_program (void)
-{
-  glewPrintExt("GL_ARB_fragment_program", GLEW_ARB_fragment_program, glewIsSupported("GL_ARB_fragment_program"), glewGetExtension("GL_ARB_fragment_program"));
-}
-
-#endif /* GL_ARB_fragment_program */
-
-#ifdef GL_ARB_fragment_program_shadow
-
-static void _glewInfo_GL_ARB_fragment_program_shadow (void)
-{
-  glewPrintExt("GL_ARB_fragment_program_shadow", GLEW_ARB_fragment_program_shadow, glewIsSupported("GL_ARB_fragment_program_shadow"), glewGetExtension("GL_ARB_fragment_program_shadow"));
-}
-
-#endif /* GL_ARB_fragment_program_shadow */
-
-#ifdef GL_ARB_fragment_shader
-
-static void _glewInfo_GL_ARB_fragment_shader (void)
-{
-  glewPrintExt("GL_ARB_fragment_shader", GLEW_ARB_fragment_shader, glewIsSupported("GL_ARB_fragment_shader"), glewGetExtension("GL_ARB_fragment_shader"));
-}
-
-#endif /* GL_ARB_fragment_shader */
-
-#ifdef GL_ARB_framebuffer_object
-
-static void _glewInfo_GL_ARB_framebuffer_object (void)
-{
-  glewPrintExt("GL_ARB_framebuffer_object", GLEW_ARB_framebuffer_object, glewIsSupported("GL_ARB_framebuffer_object"), glewGetExtension("GL_ARB_framebuffer_object"));
-
-  glewInfoFunc("glBindFramebuffer", glBindFramebuffer == NULL);
-  glewInfoFunc("glBindRenderbuffer", glBindRenderbuffer == NULL);
-  glewInfoFunc("glBlitFramebuffer", glBlitFramebuffer == NULL);
-  glewInfoFunc("glCheckFramebufferStatus", glCheckFramebufferStatus == NULL);
-  glewInfoFunc("glDeleteFramebuffers", glDeleteFramebuffers == NULL);
-  glewInfoFunc("glDeleteRenderbuffers", glDeleteRenderbuffers == NULL);
-  glewInfoFunc("glFramebufferRenderbuffer", glFramebufferRenderbuffer == NULL);
-  glewInfoFunc("glFramebufferTexture1D", glFramebufferTexture1D == NULL);
-  glewInfoFunc("glFramebufferTexture2D", glFramebufferTexture2D == NULL);
-  glewInfoFunc("glFramebufferTexture3D", glFramebufferTexture3D == NULL);
-  glewInfoFunc("glFramebufferTextureLayer", glFramebufferTextureLayer == NULL);
-  glewInfoFunc("glGenFramebuffers", glGenFramebuffers == NULL);
-  glewInfoFunc("glGenRenderbuffers", glGenRenderbuffers == NULL);
-  glewInfoFunc("glGenerateMipmap", glGenerateMipmap == NULL);
-  glewInfoFunc("glGetFramebufferAttachmentParameteriv", glGetFramebufferAttachmentParameteriv == NULL);
-  glewInfoFunc("glGetRenderbufferParameteriv", glGetRenderbufferParameteriv == NULL);
-  glewInfoFunc("glIsFramebuffer", glIsFramebuffer == NULL);
-  glewInfoFunc("glIsRenderbuffer", glIsRenderbuffer == NULL);
-  glewInfoFunc("glRenderbufferStorage", glRenderbufferStorage == NULL);
-  glewInfoFunc("glRenderbufferStorageMultisample", glRenderbufferStorageMultisample == NULL);
-}
-
-#endif /* GL_ARB_framebuffer_object */
-
-#ifdef GL_ARB_framebuffer_sRGB
-
-static void _glewInfo_GL_ARB_framebuffer_sRGB (void)
-{
-  glewPrintExt("GL_ARB_framebuffer_sRGB", GLEW_ARB_framebuffer_sRGB, glewIsSupported("GL_ARB_framebuffer_sRGB"), glewGetExtension("GL_ARB_framebuffer_sRGB"));
-}
-
-#endif /* GL_ARB_framebuffer_sRGB */
-
-#ifdef GL_ARB_geometry_shader4
-
-static void _glewInfo_GL_ARB_geometry_shader4 (void)
-{
-  glewPrintExt("GL_ARB_geometry_shader4", GLEW_ARB_geometry_shader4, glewIsSupported("GL_ARB_geometry_shader4"), glewGetExtension("GL_ARB_geometry_shader4"));
-
-  glewInfoFunc("glFramebufferTextureARB", glFramebufferTextureARB == NULL);
-  glewInfoFunc("glFramebufferTextureFaceARB", glFramebufferTextureFaceARB == NULL);
-  glewInfoFunc("glFramebufferTextureLayerARB", glFramebufferTextureLayerARB == NULL);
-  glewInfoFunc("glProgramParameteriARB", glProgramParameteriARB == NULL);
-}
-
-#endif /* GL_ARB_geometry_shader4 */
-
-#ifdef GL_ARB_gpu_shader5
-
-static void _glewInfo_GL_ARB_gpu_shader5 (void)
-{
-  glewPrintExt("GL_ARB_gpu_shader5", GLEW_ARB_gpu_shader5, glewIsSupported("GL_ARB_gpu_shader5"), glewGetExtension("GL_ARB_gpu_shader5"));
-}
-
-#endif /* GL_ARB_gpu_shader5 */
-
-#ifdef GL_ARB_gpu_shader_fp64
-
-static void _glewInfo_GL_ARB_gpu_shader_fp64 (void)
-{
-  glewPrintExt("GL_ARB_gpu_shader_fp64", GLEW_ARB_gpu_shader_fp64, glewIsSupported("GL_ARB_gpu_shader_fp64"), glewGetExtension("GL_ARB_gpu_shader_fp64"));
-}
-
-#endif /* GL_ARB_gpu_shader_fp64 */
-
-#ifdef GL_ARB_half_float_pixel
-
-static void _glewInfo_GL_ARB_half_float_pixel (void)
-{
-  glewPrintExt("GL_ARB_half_float_pixel", GLEW_ARB_half_float_pixel, glewIsSupported("GL_ARB_half_float_pixel"), glewGetExtension("GL_ARB_half_float_pixel"));
-}
-
-#endif /* GL_ARB_half_float_pixel */
-
-#ifdef GL_ARB_half_float_vertex
-
-static void _glewInfo_GL_ARB_half_float_vertex (void)
-{
-  glewPrintExt("GL_ARB_half_float_vertex", GLEW_ARB_half_float_vertex, glewIsSupported("GL_ARB_half_float_vertex"), glewGetExtension("GL_ARB_half_float_vertex"));
-}
-
-#endif /* GL_ARB_half_float_vertex */
-
-#ifdef GL_ARB_imaging
-
-static void _glewInfo_GL_ARB_imaging (void)
-{
-  glewPrintExt("GL_ARB_imaging", GLEW_ARB_imaging, glewIsSupported("GL_ARB_imaging"), glewGetExtension("GL_ARB_imaging"));
-
-  glewInfoFunc("glBlendEquation", glBlendEquation == NULL);
-  glewInfoFunc("glColorSubTable", glColorSubTable == NULL);
-  glewInfoFunc("glColorTable", glColorTable == NULL);
-  glewInfoFunc("glColorTableParameterfv", glColorTableParameterfv == NULL);
-  glewInfoFunc("glColorTableParameteriv", glColorTableParameteriv == NULL);
-  glewInfoFunc("glConvolutionFilter1D", glConvolutionFilter1D == NULL);
-  glewInfoFunc("glConvolutionFilter2D", glConvolutionFilter2D == NULL);
-  glewInfoFunc("glConvolutionParameterf", glConvolutionParameterf == NULL);
-  glewInfoFunc("glConvolutionParameterfv", glConvolutionParameterfv == NULL);
-  glewInfoFunc("glConvolutionParameteri", glConvolutionParameteri == NULL);
-  glewInfoFunc("glConvolutionParameteriv", glConvolutionParameteriv == NULL);
-  glewInfoFunc("glCopyColorSubTable", glCopyColorSubTable == NULL);
-  glewInfoFunc("glCopyColorTable", glCopyColorTable == NULL);
-  glewInfoFunc("glCopyConvolutionFilter1D", glCopyConvolutionFilter1D == NULL);
-  glewInfoFunc("glCopyConvolutionFilter2D", glCopyConvolutionFilter2D == NULL);
-  glewInfoFunc("glGetColorTable", glGetColorTable == NULL);
-  glewInfoFunc("glGetColorTableParameterfv", glGetColorTableParameterfv == NULL);
-  glewInfoFunc("glGetColorTableParameteriv", glGetColorTableParameteriv == NULL);
-  glewInfoFunc("glGetConvolutionFilter", glGetConvolutionFilter == NULL);
-  glewInfoFunc("glGetConvolutionParameterfv", glGetConvolutionParameterfv == NULL);
-  glewInfoFunc("glGetConvolutionParameteriv", glGetConvolutionParameteriv == NULL);
-  glewInfoFunc("glGetHistogram", glGetHistogram == NULL);
-  glewInfoFunc("glGetHistogramParameterfv", glGetHistogramParameterfv == NULL);
-  glewInfoFunc("glGetHistogramParameteriv", glGetHistogramParameteriv == NULL);
-  glewInfoFunc("glGetMinmax", glGetMinmax == NULL);
-  glewInfoFunc("glGetMinmaxParameterfv", glGetMinmaxParameterfv == NULL);
-  glewInfoFunc("glGetMinmaxParameteriv", glGetMinmaxParameteriv == NULL);
-  glewInfoFunc("glGetSeparableFilter", glGetSeparableFilter == NULL);
-  glewInfoFunc("glHistogram", glHistogram == NULL);
-  glewInfoFunc("glMinmax", glMinmax == NULL);
-  glewInfoFunc("glResetHistogram", glResetHistogram == NULL);
-  glewInfoFunc("glResetMinmax", glResetMinmax == NULL);
-  glewInfoFunc("glSeparableFilter2D", glSeparableFilter2D == NULL);
-}
-
-#endif /* GL_ARB_imaging */
-
-#ifdef GL_ARB_instanced_arrays
-
-static void _glewInfo_GL_ARB_instanced_arrays (void)
-{
-  glewPrintExt("GL_ARB_instanced_arrays", GLEW_ARB_instanced_arrays, glewIsSupported("GL_ARB_instanced_arrays"), glewGetExtension("GL_ARB_instanced_arrays"));
-
-  glewInfoFunc("glVertexAttribDivisorARB", glVertexAttribDivisorARB == NULL);
-}
-
-#endif /* GL_ARB_instanced_arrays */
-
-#ifdef GL_ARB_map_buffer_range
-
-static void _glewInfo_GL_ARB_map_buffer_range (void)
-{
-  glewPrintExt("GL_ARB_map_buffer_range", GLEW_ARB_map_buffer_range, glewIsSupported("GL_ARB_map_buffer_range"), glewGetExtension("GL_ARB_map_buffer_range"));
-
-  glewInfoFunc("glFlushMappedBufferRange", glFlushMappedBufferRange == NULL);
-  glewInfoFunc("glMapBufferRange", glMapBufferRange == NULL);
-}
-
-#endif /* GL_ARB_map_buffer_range */
-
-#ifdef GL_ARB_matrix_palette
-
-static void _glewInfo_GL_ARB_matrix_palette (void)
-{
-  glewPrintExt("GL_ARB_matrix_palette", GLEW_ARB_matrix_palette, glewIsSupported("GL_ARB_matrix_palette"), glewGetExtension("GL_ARB_matrix_palette"));
-
-  glewInfoFunc("glCurrentPaletteMatrixARB", glCurrentPaletteMatrixARB == NULL);
-  glewInfoFunc("glMatrixIndexPointerARB", glMatrixIndexPointerARB == NULL);
-  glewInfoFunc("glMatrixIndexubvARB", glMatrixIndexubvARB == NULL);
-  glewInfoFunc("glMatrixIndexuivARB", glMatrixIndexuivARB == NULL);
-  glewInfoFunc("glMatrixIndexusvARB", glMatrixIndexusvARB == NULL);
-}
-
-#endif /* GL_ARB_matrix_palette */
-
-#ifdef GL_ARB_multisample
-
-static void _glewInfo_GL_ARB_multisample (void)
-{
-  glewPrintExt("GL_ARB_multisample", GLEW_ARB_multisample, glewIsSupported("GL_ARB_multisample"), glewGetExtension("GL_ARB_multisample"));
-
-  glewInfoFunc("glSampleCoverageARB", glSampleCoverageARB == NULL);
-}
-
-#endif /* GL_ARB_multisample */
-
-#ifdef GL_ARB_multitexture
-
-static void _glewInfo_GL_ARB_multitexture (void)
-{
-  glewPrintExt("GL_ARB_multitexture", GLEW_ARB_multitexture, glewIsSupported("GL_ARB_multitexture"), glewGetExtension("GL_ARB_multitexture"));
-
-  glewInfoFunc("glActiveTextureARB", glActiveTextureARB == NULL);
-  glewInfoFunc("glClientActiveTextureARB", glClientActiveTextureARB == NULL);
-  glewInfoFunc("glMultiTexCoord1dARB", glMultiTexCoord1dARB == NULL);
-  glewInfoFunc("glMultiTexCoord1dvARB", glMultiTexCoord1dvARB == NULL);
-  glewInfoFunc("glMultiTexCoord1fARB", glMultiTexCoord1fARB == NULL);
-  glewInfoFunc("glMultiTexCoord1fvARB", glMultiTexCoord1fvARB == NULL);
-  glewInfoFunc("glMultiTexCoord1iARB", glMultiTexCoord1iARB == NULL);
-  glewInfoFunc("glMultiTexCoord1ivARB", glMultiTexCoord1ivARB == NULL);
-  glewInfoFunc("glMultiTexCoord1sARB", glMultiTexCoord1sARB == NULL);
-  glewInfoFunc("glMultiTexCoord1svARB", glMultiTexCoord1svARB == NULL);
-  glewInfoFunc("glMultiTexCoord2dARB", glMultiTexCoord2dARB == NULL);
-  glewInfoFunc("glMultiTexCoord2dvARB", glMultiTexCoord2dvARB == NULL);
-  glewInfoFunc("glMultiTexCoord2fARB", glMultiTexCoord2fARB == NULL);
-  glewInfoFunc("glMultiTexCoord2fvARB", glMultiTexCoord2fvARB == NULL);
-  glewInfoFunc("glMultiTexCoord2iARB", glMultiTexCoord2iARB == NULL);
-  glewInfoFunc("glMultiTexCoord2ivARB", glMultiTexCoord2ivARB == NULL);
-  glewInfoFunc("glMultiTexCoord2sARB", glMultiTexCoord2sARB == NULL);
-  glewInfoFunc("glMultiTexCoord2svARB", glMultiTexCoord2svARB == NULL);
-  glewInfoFunc("glMultiTexCoord3dARB", glMultiTexCoord3dARB == NULL);
-  glewInfoFunc("glMultiTexCoord3dvARB", glMultiTexCoord3dvARB == NULL);
-  glewInfoFunc("glMultiTexCoord3fARB", glMultiTexCoord3fARB == NULL);
-  glewInfoFunc("glMultiTexCoord3fvARB", glMultiTexCoord3fvARB == NULL);
-  glewInfoFunc("glMultiTexCoord3iARB", glMultiTexCoord3iARB == NULL);
-  glewInfoFunc("glMultiTexCoord3ivARB", glMultiTexCoord3ivARB == NULL);
-  glewInfoFunc("glMultiTexCoord3sARB", glMultiTexCoord3sARB == NULL);
-  glewInfoFunc("glMultiTexCoord3svARB", glMultiTexCoord3svARB == NULL);
-  glewInfoFunc("glMultiTexCoord4dARB", glMultiTexCoord4dARB == NULL);
-  glewInfoFunc("glMultiTexCoord4dvARB", glMultiTexCoord4dvARB == NULL);
-  glewInfoFunc("glMultiTexCoord4fARB", glMultiTexCoord4fARB == NULL);
-  glewInfoFunc("glMultiTexCoord4fvARB", glMultiTexCoord4fvARB == NULL);
-  glewInfoFunc("glMultiTexCoord4iARB", glMultiTexCoord4iARB == NULL);
-  glewInfoFunc("glMultiTexCoord4ivARB", glMultiTexCoord4ivARB == NULL);
-  glewInfoFunc("glMultiTexCoord4sARB", glMultiTexCoord4sARB == NULL);
-  glewInfoFunc("glMultiTexCoord4svARB", glMultiTexCoord4svARB == NULL);
-}
-
-#endif /* GL_ARB_multitexture */
-
-#ifdef GL_ARB_occlusion_query
-
-static void _glewInfo_GL_ARB_occlusion_query (void)
-{
-  glewPrintExt("GL_ARB_occlusion_query", GLEW_ARB_occlusion_query, glewIsSupported("GL_ARB_occlusion_query"), glewGetExtension("GL_ARB_occlusion_query"));
-
-  glewInfoFunc("glBeginQueryARB", glBeginQueryARB == NULL);
-  glewInfoFunc("glDeleteQueriesARB", glDeleteQueriesARB == NULL);
-  glewInfoFunc("glEndQueryARB", glEndQueryARB == NULL);
-  glewInfoFunc("glGenQueriesARB", glGenQueriesARB == NULL);
-  glewInfoFunc("glGetQueryObjectivARB", glGetQueryObjectivARB == NULL);
-  glewInfoFunc("glGetQueryObjectuivARB", glGetQueryObjectuivARB == NULL);
-  glewInfoFunc("glGetQueryivARB", glGetQueryivARB == NULL);
-  glewInfoFunc("glIsQueryARB", glIsQueryARB == NULL);
-}
-
-#endif /* GL_ARB_occlusion_query */
-
-#ifdef GL_ARB_occlusion_query2
-
-static void _glewInfo_GL_ARB_occlusion_query2 (void)
-{
-  glewPrintExt("GL_ARB_occlusion_query2", GLEW_ARB_occlusion_query2, glewIsSupported("GL_ARB_occlusion_query2"), glewGetExtension("GL_ARB_occlusion_query2"));
-}
-
-#endif /* GL_ARB_occlusion_query2 */
-
-#ifdef GL_ARB_pixel_buffer_object
-
-static void _glewInfo_GL_ARB_pixel_buffer_object (void)
-{
-  glewPrintExt("GL_ARB_pixel_buffer_object", GLEW_ARB_pixel_buffer_object, glewIsSupported("GL_ARB_pixel_buffer_object"), glewGetExtension("GL_ARB_pixel_buffer_object"));
-}
-
-#endif /* GL_ARB_pixel_buffer_object */
-
-#ifdef GL_ARB_point_parameters
-
-static void _glewInfo_GL_ARB_point_parameters (void)
-{
-  glewPrintExt("GL_ARB_point_parameters", GLEW_ARB_point_parameters, glewIsSupported("GL_ARB_point_parameters"), glewGetExtension("GL_ARB_point_parameters"));
-
-  glewInfoFunc("glPointParameterfARB", glPointParameterfARB == NULL);
-  glewInfoFunc("glPointParameterfvARB", glPointParameterfvARB == NULL);
-}
-
-#endif /* GL_ARB_point_parameters */
-
-#ifdef GL_ARB_point_sprite
-
-static void _glewInfo_GL_ARB_point_sprite (void)
-{
-  glewPrintExt("GL_ARB_point_sprite", GLEW_ARB_point_sprite, glewIsSupported("GL_ARB_point_sprite"), glewGetExtension("GL_ARB_point_sprite"));
-}
-
-#endif /* GL_ARB_point_sprite */
-
-#ifdef GL_ARB_provoking_vertex
-
-static void _glewInfo_GL_ARB_provoking_vertex (void)
-{
-  glewPrintExt("GL_ARB_provoking_vertex", GLEW_ARB_provoking_vertex, glewIsSupported("GL_ARB_provoking_vertex"), glewGetExtension("GL_ARB_provoking_vertex"));
-
-  glewInfoFunc("glProvokingVertex", glProvokingVertex == NULL);
-}
-
-#endif /* GL_ARB_provoking_vertex */
-
-#ifdef GL_ARB_sample_shading
-
-static void _glewInfo_GL_ARB_sample_shading (void)
-{
-  glewPrintExt("GL_ARB_sample_shading", GLEW_ARB_sample_shading, glewIsSupported("GL_ARB_sample_shading"), glewGetExtension("GL_ARB_sample_shading"));
-
-  glewInfoFunc("glMinSampleShadingARB", glMinSampleShadingARB == NULL);
-}
-
-#endif /* GL_ARB_sample_shading */
-
-#ifdef GL_ARB_sampler_objects
-
-static void _glewInfo_GL_ARB_sampler_objects (void)
-{
-  glewPrintExt("GL_ARB_sampler_objects", GLEW_ARB_sampler_objects, glewIsSupported("GL_ARB_sampler_objects"), glewGetExtension("GL_ARB_sampler_objects"));
-
-  glewInfoFunc("glBindSampler", glBindSampler == NULL);
-  glewInfoFunc("glDeleteSamplers", glDeleteSamplers == NULL);
-  glewInfoFunc("glGenSamplers", glGenSamplers == NULL);
-  glewInfoFunc("glGetSamplerParameterIiv", glGetSamplerParameterIiv == NULL);
-  glewInfoFunc("glGetSamplerParameterIuiv", glGetSamplerParameterIuiv == NULL);
-  glewInfoFunc("glGetSamplerParameterfv", glGetSamplerParameterfv == NULL);
-  glewInfoFunc("glGetSamplerParameteriv", glGetSamplerParameteriv == NULL);
-  glewInfoFunc("glIsSampler", glIsSampler == NULL);
-  glewInfoFunc("glSamplerParameterIiv", glSamplerParameterIiv == NULL);
-  glewInfoFunc("glSamplerParameterIuiv", glSamplerParameterIuiv == NULL);
-  glewInfoFunc("glSamplerParameterf", glSamplerParameterf == NULL);
-  glewInfoFunc("glSamplerParameterfv", glSamplerParameterfv == NULL);
-  glewInfoFunc("glSamplerParameteri", glSamplerParameteri == NULL);
-  glewInfoFunc("glSamplerParameteriv", glSamplerParameteriv == NULL);
-}
-
-#endif /* GL_ARB_sampler_objects */
-
-#ifdef GL_ARB_seamless_cube_map
-
-static void _glewInfo_GL_ARB_seamless_cube_map (void)
-{
-  glewPrintExt("GL_ARB_seamless_cube_map", GLEW_ARB_seamless_cube_map, glewIsSupported("GL_ARB_seamless_cube_map"), glewGetExtension("GL_ARB_seamless_cube_map"));
-}
-
-#endif /* GL_ARB_seamless_cube_map */
-
-#ifdef GL_ARB_shader_bit_encoding
-
-static void _glewInfo_GL_ARB_shader_bit_encoding (void)
-{
-  glewPrintExt("GL_ARB_shader_bit_encoding", GLEW_ARB_shader_bit_encoding, glewIsSupported("GL_ARB_shader_bit_encoding"), glewGetExtension("GL_ARB_shader_bit_encoding"));
-}
-
-#endif /* GL_ARB_shader_bit_encoding */
-
-#ifdef GL_ARB_shader_objects
-
-static void _glewInfo_GL_ARB_shader_objects (void)
-{
-  glewPrintExt("GL_ARB_shader_objects", GLEW_ARB_shader_objects, glewIsSupported("GL_ARB_shader_objects"), glewGetExtension("GL_ARB_shader_objects"));
-
-  glewInfoFunc("glAttachObjectARB", glAttachObjectARB == NULL);
-  glewInfoFunc("glCompileShaderARB", glCompileShaderARB == NULL);
-  glewInfoFunc("glCreateProgramObjectARB", glCreateProgramObjectARB == NULL);
-  glewInfoFunc("glCreateShaderObjectARB", glCreateShaderObjectARB == NULL);
-  glewInfoFunc("glDeleteObjectARB", glDeleteObjectARB == NULL);
-  glewInfoFunc("glDetachObjectARB", glDetachObjectARB == NULL);
-  glewInfoFunc("glGetActiveUniformARB", glGetActiveUniformARB == NULL);
-  glewInfoFunc("glGetAttachedObjectsARB", glGetAttachedObjectsARB == NULL);
-  glewInfoFunc("glGetHandleARB", glGetHandleARB == NULL);
-  glewInfoFunc("glGetInfoLogARB", glGetInfoLogARB == NULL);
-  glewInfoFunc("glGetObjectParameterfvARB", glGetObjectParameterfvARB == NULL);
-  glewInfoFunc("glGetObjectParameterivARB", glGetObjectParameterivARB == NULL);
-  glewInfoFunc("glGetShaderSourceARB", glGetShaderSourceARB == NULL);
-  glewInfoFunc("glGetUniformLocationARB", glGetUniformLocationARB == NULL);
-  glewInfoFunc("glGetUniformfvARB", glGetUniformfvARB == NULL);
-  glewInfoFunc("glGetUniformivARB", glGetUniformivARB == NULL);
-  glewInfoFunc("glLinkProgramARB", glLinkProgramARB == NULL);
-  glewInfoFunc("glShaderSourceARB", glShaderSourceARB == NULL);
-  glewInfoFunc("glUniform1fARB", glUniform1fARB == NULL);
-  glewInfoFunc("glUniform1fvARB", glUniform1fvARB == NULL);
-  glewInfoFunc("glUniform1iARB", glUniform1iARB == NULL);
-  glewInfoFunc("glUniform1ivARB", glUniform1ivARB == NULL);
-  glewInfoFunc("glUniform2fARB", glUniform2fARB == NULL);
-  glewInfoFunc("glUniform2fvARB", glUniform2fvARB == NULL);
-  glewInfoFunc("glUniform2iARB", glUniform2iARB == NULL);
-  glewInfoFunc("glUniform2ivARB", glUniform2ivARB == NULL);
-  glewInfoFunc("glUniform3fARB", glUniform3fARB == NULL);
-  glewInfoFunc("glUniform3fvARB", glUniform3fvARB == NULL);
-  glewInfoFunc("glUniform3iARB", glUniform3iARB == NULL);
-  glewInfoFunc("glUniform3ivARB", glUniform3ivARB == NULL);
-  glewInfoFunc("glUniform4fARB", glUniform4fARB == NULL);
-  glewInfoFunc("glUniform4fvARB", glUniform4fvARB == NULL);
-  glewInfoFunc("glUniform4iARB", glUniform4iARB == NULL);
-  glewInfoFunc("glUniform4ivARB", glUniform4ivARB == NULL);
-  glewInfoFunc("glUniformMatrix2fvARB", glUniformMatrix2fvARB == NULL);
-  glewInfoFunc("glUniformMatrix3fvARB", glUniformMatrix3fvARB == NULL);
-  glewInfoFunc("glUniformMatrix4fvARB", glUniformMatrix4fvARB == NULL);
-  glewInfoFunc("glUseProgramObjectARB", glUseProgramObjectARB == NULL);
-  glewInfoFunc("glValidateProgramARB", glValidateProgramARB == NULL);
-}
-
-#endif /* GL_ARB_shader_objects */
-
-#ifdef GL_ARB_shader_subroutine
-
-static void _glewInfo_GL_ARB_shader_subroutine (void)
-{
-  glewPrintExt("GL_ARB_shader_subroutine", GLEW_ARB_shader_subroutine, glewIsSupported("GL_ARB_shader_subroutine"), glewGetExtension("GL_ARB_shader_subroutine"));
-
-  glewInfoFunc("glGetActiveSubroutineName", glGetActiveSubroutineName == NULL);
-  glewInfoFunc("glGetActiveSubroutineUniformName", glGetActiveSubroutineUniformName == NULL);
-  glewInfoFunc("glGetActiveSubroutineUniformiv", glGetActiveSubroutineUniformiv == NULL);
-  glewInfoFunc("glGetProgramStageiv", glGetProgramStageiv == NULL);
-  glewInfoFunc("glGetSubroutineIndex", glGetSubroutineIndex == NULL);
-  glewInfoFunc("glGetSubroutineUniformLocation", glGetSubroutineUniformLocation == NULL);
-  glewInfoFunc("glGetUniformSubroutineuiv", glGetUniformSubroutineuiv == NULL);
-  glewInfoFunc("glUniformSubroutinesuiv", glUniformSubroutinesuiv == NULL);
-}
-
-#endif /* GL_ARB_shader_subroutine */
-
-#ifdef GL_ARB_shader_texture_lod
-
-static void _glewInfo_GL_ARB_shader_texture_lod (void)
-{
-  glewPrintExt("GL_ARB_shader_texture_lod", GLEW_ARB_shader_texture_lod, glewIsSupported("GL_ARB_shader_texture_lod"), glewGetExtension("GL_ARB_shader_texture_lod"));
-}
-
-#endif /* GL_ARB_shader_texture_lod */
-
-#ifdef GL_ARB_shading_language_100
-
-static void _glewInfo_GL_ARB_shading_language_100 (void)
-{
-  glewPrintExt("GL_ARB_shading_language_100", GLEW_ARB_shading_language_100, glewIsSupported("GL_ARB_shading_language_100"), glewGetExtension("GL_ARB_shading_language_100"));
-}
-
-#endif /* GL_ARB_shading_language_100 */
-
-#ifdef GL_ARB_shading_language_include
-
-static void _glewInfo_GL_ARB_shading_language_include (void)
-{
-  glewPrintExt("GL_ARB_shading_language_include", GLEW_ARB_shading_language_include, glewIsSupported("GL_ARB_shading_language_include"), glewGetExtension("GL_ARB_shading_language_include"));
-
-  glewInfoFunc("glCompileShaderIncludeARB", glCompileShaderIncludeARB == NULL);
-  glewInfoFunc("glDeleteNamedStringARB", glDeleteNamedStringARB == NULL);
-  glewInfoFunc("glGetNamedStringARB", glGetNamedStringARB == NULL);
-  glewInfoFunc("glGetNamedStringivARB", glGetNamedStringivARB == NULL);
-  glewInfoFunc("glIsNamedStringARB", glIsNamedStringARB == NULL);
-  glewInfoFunc("glNamedStringARB", glNamedStringARB == NULL);
-}
-
-#endif /* GL_ARB_shading_language_include */
-
-#ifdef GL_ARB_shadow
-
-static void _glewInfo_GL_ARB_shadow (void)
-{
-  glewPrintExt("GL_ARB_shadow", GLEW_ARB_shadow, glewIsSupported("GL_ARB_shadow"), glewGetExtension("GL_ARB_shadow"));
-}
-
-#endif /* GL_ARB_shadow */
-
-#ifdef GL_ARB_shadow_ambient
-
-static void _glewInfo_GL_ARB_shadow_ambient (void)
-{
-  glewPrintExt("GL_ARB_shadow_ambient", GLEW_ARB_shadow_ambient, glewIsSupported("GL_ARB_shadow_ambient"), glewGetExtension("GL_ARB_shadow_ambient"));
-}
-
-#endif /* GL_ARB_shadow_ambient */
-
-#ifdef GL_ARB_sync
-
-static void _glewInfo_GL_ARB_sync (void)
-{
-  glewPrintExt("GL_ARB_sync", GLEW_ARB_sync, glewIsSupported("GL_ARB_sync"), glewGetExtension("GL_ARB_sync"));
-
-  glewInfoFunc("glClientWaitSync", glClientWaitSync == NULL);
-  glewInfoFunc("glDeleteSync", glDeleteSync == NULL);
-  glewInfoFunc("glFenceSync", glFenceSync == NULL);
-  glewInfoFunc("glGetInteger64v", glGetInteger64v == NULL);
-  glewInfoFunc("glGetSynciv", glGetSynciv == NULL);
-  glewInfoFunc("glIsSync", glIsSync == NULL);
-  glewInfoFunc("glWaitSync", glWaitSync == NULL);
-}
-
-#endif /* GL_ARB_sync */
-
-#ifdef GL_ARB_tessellation_shader
-
-static void _glewInfo_GL_ARB_tessellation_shader (void)
-{
-  glewPrintExt("GL_ARB_tessellation_shader", GLEW_ARB_tessellation_shader, glewIsSupported("GL_ARB_tessellation_shader"), glewGetExtension("GL_ARB_tessellation_shader"));
-
-  glewInfoFunc("glPatchParameterfv", glPatchParameterfv == NULL);
-  glewInfoFunc("glPatchParameteri", glPatchParameteri == NULL);
-}
-
-#endif /* GL_ARB_tessellation_shader */
-
-#ifdef GL_ARB_texture_border_clamp
-
-static void _glewInfo_GL_ARB_texture_border_clamp (void)
-{
-  glewPrintExt("GL_ARB_texture_border_clamp", GLEW_ARB_texture_border_clamp, glewIsSupported("GL_ARB_texture_border_clamp"), glewGetExtension("GL_ARB_texture_border_clamp"));
-}
-
-#endif /* GL_ARB_texture_border_clamp */
-
-#ifdef GL_ARB_texture_buffer_object
-
-static void _glewInfo_GL_ARB_texture_buffer_object (void)
-{
-  glewPrintExt("GL_ARB_texture_buffer_object", GLEW_ARB_texture_buffer_object, glewIsSupported("GL_ARB_texture_buffer_object"), glewGetExtension("GL_ARB_texture_buffer_object"));
-
-  glewInfoFunc("glTexBufferARB", glTexBufferARB == NULL);
-}
-
-#endif /* GL_ARB_texture_buffer_object */
-
-#ifdef GL_ARB_texture_buffer_object_rgb32
-
-static void _glewInfo_GL_ARB_texture_buffer_object_rgb32 (void)
-{
-  glewPrintExt("GL_ARB_texture_buffer_object_rgb32", GLEW_ARB_texture_buffer_object_rgb32, glewIsSupported("GL_ARB_texture_buffer_object_rgb32"), glewGetExtension("GL_ARB_texture_buffer_object_rgb32"));
-}
-
-#endif /* GL_ARB_texture_buffer_object_rgb32 */
-
-#ifdef GL_ARB_texture_compression
-
-static void _glewInfo_GL_ARB_texture_compression (void)
-{
-  glewPrintExt("GL_ARB_texture_compression", GLEW_ARB_texture_compression, glewIsSupported("GL_ARB_texture_compression"), glewGetExtension("GL_ARB_texture_compression"));
-
-  glewInfoFunc("glCompressedTexImage1DARB", glCompressedTexImage1DARB == NULL);
-  glewInfoFunc("glCompressedTexImage2DARB", glCompressedTexImage2DARB == NULL);
-  glewInfoFunc("glCompressedTexImage3DARB", glCompressedTexImage3DARB == NULL);
-  glewInfoFunc("glCompressedTexSubImage1DARB", glCompressedTexSubImage1DARB == NULL);
-  glewInfoFunc("glCompressedTexSubImage2DARB", glCompressedTexSubImage2DARB == NULL);
-  glewInfoFunc("glCompressedTexSubImage3DARB", glCompressedTexSubImage3DARB == NULL);
-  glewInfoFunc("glGetCompressedTexImageARB", glGetCompressedTexImageARB == NULL);
-}
-
-#endif /* GL_ARB_texture_compression */
-
-#ifdef GL_ARB_texture_compression_bptc
-
-static void _glewInfo_GL_ARB_texture_compression_bptc (void)
-{
-  glewPrintExt("GL_ARB_texture_compression_bptc", GLEW_ARB_texture_compression_bptc, glewIsSupported("GL_ARB_texture_compression_bptc"), glewGetExtension("GL_ARB_texture_compression_bptc"));
-}
-
-#endif /* GL_ARB_texture_compression_bptc */
-
-#ifdef GL_ARB_texture_compression_rgtc
-
-static void _glewInfo_GL_ARB_texture_compression_rgtc (void)
-{
-  glewPrintExt("GL_ARB_texture_compression_rgtc", GLEW_ARB_texture_compression_rgtc, glewIsSupported("GL_ARB_texture_compression_rgtc"), glewGetExtension("GL_ARB_texture_compression_rgtc"));
-}
-
-#endif /* GL_ARB_texture_compression_rgtc */
-
-#ifdef GL_ARB_texture_cube_map
-
-static void _glewInfo_GL_ARB_texture_cube_map (void)
-{
-  glewPrintExt("GL_ARB_texture_cube_map", GLEW_ARB_texture_cube_map, glewIsSupported("GL_ARB_texture_cube_map"), glewGetExtension("GL_ARB_texture_cube_map"));
-}
-
-#endif /* GL_ARB_texture_cube_map */
-
-#ifdef GL_ARB_texture_cube_map_array
-
-static void _glewInfo_GL_ARB_texture_cube_map_array (void)
-{
-  glewPrintExt("GL_ARB_texture_cube_map_array", GLEW_ARB_texture_cube_map_array, glewIsSupported("GL_ARB_texture_cube_map_array"), glewGetExtension("GL_ARB_texture_cube_map_array"));
-}
-
-#endif /* GL_ARB_texture_cube_map_array */
-
-#ifdef GL_ARB_texture_env_add
-
-static void _glewInfo_GL_ARB_texture_env_add (void)
-{
-  glewPrintExt("GL_ARB_texture_env_add", GLEW_ARB_texture_env_add, glewIsSupported("GL_ARB_texture_env_add"), glewGetExtension("GL_ARB_texture_env_add"));
-}
-
-#endif /* GL_ARB_texture_env_add */
-
-#ifdef GL_ARB_texture_env_combine
-
-static void _glewInfo_GL_ARB_texture_env_combine (void)
-{
-  glewPrintExt("GL_ARB_texture_env_combine", GLEW_ARB_texture_env_combine, glewIsSupported("GL_ARB_texture_env_combine"), glewGetExtension("GL_ARB_texture_env_combine"));
-}
-
-#endif /* GL_ARB_texture_env_combine */
-
-#ifdef GL_ARB_texture_env_crossbar
-
-static void _glewInfo_GL_ARB_texture_env_crossbar (void)
-{
-  glewPrintExt("GL_ARB_texture_env_crossbar", GLEW_ARB_texture_env_crossbar, glewIsSupported("GL_ARB_texture_env_crossbar"), glewGetExtension("GL_ARB_texture_env_crossbar"));
-}
-
-#endif /* GL_ARB_texture_env_crossbar */
-
-#ifdef GL_ARB_texture_env_dot3
-
-static void _glewInfo_GL_ARB_texture_env_dot3 (void)
-{
-  glewPrintExt("GL_ARB_texture_env_dot3", GLEW_ARB_texture_env_dot3, glewIsSupported("GL_ARB_texture_env_dot3"), glewGetExtension("GL_ARB_texture_env_dot3"));
-}
-
-#endif /* GL_ARB_texture_env_dot3 */
-
-#ifdef GL_ARB_texture_float
-
-static void _glewInfo_GL_ARB_texture_float (void)
-{
-  glewPrintExt("GL_ARB_texture_float", GLEW_ARB_texture_float, glewIsSupported("GL_ARB_texture_float"), glewGetExtension("GL_ARB_texture_float"));
-}
-
-#endif /* GL_ARB_texture_float */
-
-#ifdef GL_ARB_texture_gather
-
-static void _glewInfo_GL_ARB_texture_gather (void)
-{
-  glewPrintExt("GL_ARB_texture_gather", GLEW_ARB_texture_gather, glewIsSupported("GL_ARB_texture_gather"), glewGetExtension("GL_ARB_texture_gather"));
-}
-
-#endif /* GL_ARB_texture_gather */
-
-#ifdef GL_ARB_texture_mirrored_repeat
-
-static void _glewInfo_GL_ARB_texture_mirrored_repeat (void)
-{
-  glewPrintExt("GL_ARB_texture_mirrored_repeat", GLEW_ARB_texture_mirrored_repeat, glewIsSupported("GL_ARB_texture_mirrored_repeat"), glewGetExtension("GL_ARB_texture_mirrored_repeat"));
-}
-
-#endif /* GL_ARB_texture_mirrored_repeat */
-
-#ifdef GL_ARB_texture_multisample
-
-static void _glewInfo_GL_ARB_texture_multisample (void)
-{
-  glewPrintExt("GL_ARB_texture_multisample", GLEW_ARB_texture_multisample, glewIsSupported("GL_ARB_texture_multisample"), glewGetExtension("GL_ARB_texture_multisample"));
-
-  glewInfoFunc("glGetMultisamplefv", glGetMultisamplefv == NULL);
-  glewInfoFunc("glSampleMaski", glSampleMaski == NULL);
-  glewInfoFunc("glTexImage2DMultisample", glTexImage2DMultisample == NULL);
-  glewInfoFunc("glTexImage3DMultisample", glTexImage3DMultisample == NULL);
-}
-
-#endif /* GL_ARB_texture_multisample */
-
-#ifdef GL_ARB_texture_non_power_of_two
-
-static void _glewInfo_GL_ARB_texture_non_power_of_two (void)
-{
-  glewPrintExt("GL_ARB_texture_non_power_of_two", GLEW_ARB_texture_non_power_of_two, glewIsSupported("GL_ARB_texture_non_power_of_two"), glewGetExtension("GL_ARB_texture_non_power_of_two"));
-}
-
-#endif /* GL_ARB_texture_non_power_of_two */
-
-#ifdef GL_ARB_texture_query_lod
-
-static void _glewInfo_GL_ARB_texture_query_lod (void)
-{
-  glewPrintExt("GL_ARB_texture_query_lod", GLEW_ARB_texture_query_lod, glewIsSupported("GL_ARB_texture_query_lod"), glewGetExtension("GL_ARB_texture_query_lod"));
-}
-
-#endif /* GL_ARB_texture_query_lod */
-
-#ifdef GL_ARB_texture_rectangle
-
-static void _glewInfo_GL_ARB_texture_rectangle (void)
-{
-  glewPrintExt("GL_ARB_texture_rectangle", GLEW_ARB_texture_rectangle, glewIsSupported("GL_ARB_texture_rectangle"), glewGetExtension("GL_ARB_texture_rectangle"));
-}
-
-#endif /* GL_ARB_texture_rectangle */
-
-#ifdef GL_ARB_texture_rg
-
-static void _glewInfo_GL_ARB_texture_rg (void)
-{
-  glewPrintExt("GL_ARB_texture_rg", GLEW_ARB_texture_rg, glewIsSupported("GL_ARB_texture_rg"), glewGetExtension("GL_ARB_texture_rg"));
-}
-
-#endif /* GL_ARB_texture_rg */
-
-#ifdef GL_ARB_texture_rgb10_a2ui
-
-static void _glewInfo_GL_ARB_texture_rgb10_a2ui (void)
-{
-  glewPrintExt("GL_ARB_texture_rgb10_a2ui", GLEW_ARB_texture_rgb10_a2ui, glewIsSupported("GL_ARB_texture_rgb10_a2ui"), glewGetExtension("GL_ARB_texture_rgb10_a2ui"));
-}
-
-#endif /* GL_ARB_texture_rgb10_a2ui */
-
-#ifdef GL_ARB_texture_swizzle
-
-static void _glewInfo_GL_ARB_texture_swizzle (void)
-{
-  glewPrintExt("GL_ARB_texture_swizzle", GLEW_ARB_texture_swizzle, glewIsSupported("GL_ARB_texture_swizzle"), glewGetExtension("GL_ARB_texture_swizzle"));
-}
-
-#endif /* GL_ARB_texture_swizzle */
-
-#ifdef GL_ARB_timer_query
-
-static void _glewInfo_GL_ARB_timer_query (void)
-{
-  glewPrintExt("GL_ARB_timer_query", GLEW_ARB_timer_query, glewIsSupported("GL_ARB_timer_query"), glewGetExtension("GL_ARB_timer_query"));
-
-  glewInfoFunc("glGetQueryObjecti64v", glGetQueryObjecti64v == NULL);
-  glewInfoFunc("glGetQueryObjectui64v", glGetQueryObjectui64v == NULL);
-  glewInfoFunc("glQueryCounter", glQueryCounter == NULL);
-}
-
-#endif /* GL_ARB_timer_query */
-
-#ifdef GL_ARB_transform_feedback2
-
-static void _glewInfo_GL_ARB_transform_feedback2 (void)
-{
-  glewPrintExt("GL_ARB_transform_feedback2", GLEW_ARB_transform_feedback2, glewIsSupported("GL_ARB_transform_feedback2"), glewGetExtension("GL_ARB_transform_feedback2"));
-
-  glewInfoFunc("glBindTransformFeedback", glBindTransformFeedback == NULL);
-  glewInfoFunc("glDeleteTransformFeedbacks", glDeleteTransformFeedbacks == NULL);
-  glewInfoFunc("glDrawTransformFeedback", glDrawTransformFeedback == NULL);
-  glewInfoFunc("glGenTransformFeedbacks", glGenTransformFeedbacks == NULL);
-  glewInfoFunc("glIsTransformFeedback", glIsTransformFeedback == NULL);
-  glewInfoFunc("glPauseTransformFeedback", glPauseTransformFeedback == NULL);
-  glewInfoFunc("glResumeTransformFeedback", glResumeTransformFeedback == NULL);
-}
-
-#endif /* GL_ARB_transform_feedback2 */
-
-#ifdef GL_ARB_transform_feedback3
-
-static void _glewInfo_GL_ARB_transform_feedback3 (void)
-{
-  glewPrintExt("GL_ARB_transform_feedback3", GLEW_ARB_transform_feedback3, glewIsSupported("GL_ARB_transform_feedback3"), glewGetExtension("GL_ARB_transform_feedback3"));
-
-  glewInfoFunc("glBeginQueryIndexed", glBeginQueryIndexed == NULL);
-  glewInfoFunc("glDrawTransformFeedbackStream", glDrawTransformFeedbackStream == NULL);
-  glewInfoFunc("glEndQueryIndexed", glEndQueryIndexed == NULL);
-  glewInfoFunc("glGetQueryIndexediv", glGetQueryIndexediv == NULL);
-}
-
-#endif /* GL_ARB_transform_feedback3 */
-
-#ifdef GL_ARB_transpose_matrix
-
-static void _glewInfo_GL_ARB_transpose_matrix (void)
-{
-  glewPrintExt("GL_ARB_transpose_matrix", GLEW_ARB_transpose_matrix, glewIsSupported("GL_ARB_transpose_matrix"), glewGetExtension("GL_ARB_transpose_matrix"));
-
-  glewInfoFunc("glLoadTransposeMatrixdARB", glLoadTransposeMatrixdARB == NULL);
-  glewInfoFunc("glLoadTransposeMatrixfARB", glLoadTransposeMatrixfARB == NULL);
-  glewInfoFunc("glMultTransposeMatrixdARB", glMultTransposeMatrixdARB == NULL);
-  glewInfoFunc("glMultTransposeMatrixfARB", glMultTransposeMatrixfARB == NULL);
-}
-
-#endif /* GL_ARB_transpose_matrix */
-
-#ifdef GL_ARB_uniform_buffer_object
-
-static void _glewInfo_GL_ARB_uniform_buffer_object (void)
-{
-  glewPrintExt("GL_ARB_uniform_buffer_object", GLEW_ARB_uniform_buffer_object, glewIsSupported("GL_ARB_uniform_buffer_object"), glewGetExtension("GL_ARB_uniform_buffer_object"));
-
-  glewInfoFunc("glBindBufferBase", glBindBufferBase == NULL);
-  glewInfoFunc("glBindBufferRange", glBindBufferRange == NULL);
-  glewInfoFunc("glGetActiveUniformBlockName", glGetActiveUniformBlockName == NULL);
-  glewInfoFunc("glGetActiveUniformBlockiv", glGetActiveUniformBlockiv == NULL);
-  glewInfoFunc("glGetActiveUniformName", glGetActiveUniformName == NULL);
-  glewInfoFunc("glGetActiveUniformsiv", glGetActiveUniformsiv == NULL);
-  glewInfoFunc("glGetIntegeri_v", glGetIntegeri_v == NULL);
-  glewInfoFunc("glGetUniformBlockIndex", glGetUniformBlockIndex == NULL);
-  glewInfoFunc("glGetUniformIndices", glGetUniformIndices == NULL);
-  glewInfoFunc("glUniformBlockBinding", glUniformBlockBinding == NULL);
-}
-
-#endif /* GL_ARB_uniform_buffer_object */
-
-#ifdef GL_ARB_vertex_array_bgra
-
-static void _glewInfo_GL_ARB_vertex_array_bgra (void)
-{
-  glewPrintExt("GL_ARB_vertex_array_bgra", GLEW_ARB_vertex_array_bgra, glewIsSupported("GL_ARB_vertex_array_bgra"), glewGetExtension("GL_ARB_vertex_array_bgra"));
-}
-
-#endif /* GL_ARB_vertex_array_bgra */
-
-#ifdef GL_ARB_vertex_array_object
-
-static void _glewInfo_GL_ARB_vertex_array_object (void)
-{
-  glewPrintExt("GL_ARB_vertex_array_object", GLEW_ARB_vertex_array_object, glewIsSupported("GL_ARB_vertex_array_object"), glewGetExtension("GL_ARB_vertex_array_object"));
-
-  glewInfoFunc("glBindVertexArray", glBindVertexArray == NULL);
-  glewInfoFunc("glDeleteVertexArrays", glDeleteVertexArrays == NULL);
-  glewInfoFunc("glGenVertexArrays", glGenVertexArrays == NULL);
-  glewInfoFunc("glIsVertexArray", glIsVertexArray == NULL);
-}
-
-#endif /* GL_ARB_vertex_array_object */
-
-#ifdef GL_ARB_vertex_blend
-
-static void _glewInfo_GL_ARB_vertex_blend (void)
-{
-  glewPrintExt("GL_ARB_vertex_blend", GLEW_ARB_vertex_blend, glewIsSupported("GL_ARB_vertex_blend"), glewGetExtension("GL_ARB_vertex_blend"));
-
-  glewInfoFunc("glVertexBlendARB", glVertexBlendARB == NULL);
-  glewInfoFunc("glWeightPointerARB", glWeightPointerARB == NULL);
-  glewInfoFunc("glWeightbvARB", glWeightbvARB == NULL);
-  glewInfoFunc("glWeightdvARB", glWeightdvARB == NULL);
-  glewInfoFunc("glWeightfvARB", glWeightfvARB == NULL);
-  glewInfoFunc("glWeightivARB", glWeightivARB == NULL);
-  glewInfoFunc("glWeightsvARB", glWeightsvARB == NULL);
-  glewInfoFunc("glWeightubvARB", glWeightubvARB == NULL);
-  glewInfoFunc("glWeightuivARB", glWeightuivARB == NULL);
-  glewInfoFunc("glWeightusvARB", glWeightusvARB == NULL);
-}
-
-#endif /* GL_ARB_vertex_blend */
-
-#ifdef GL_ARB_vertex_buffer_object
-
-static void _glewInfo_GL_ARB_vertex_buffer_object (void)
-{
-  glewPrintExt("GL_ARB_vertex_buffer_object", GLEW_ARB_vertex_buffer_object, glewIsSupported("GL_ARB_vertex_buffer_object"), glewGetExtension("GL_ARB_vertex_buffer_object"));
-
-  glewInfoFunc("glBindBufferARB", glBindBufferARB == NULL);
-  glewInfoFunc("glBufferDataARB", glBufferDataARB == NULL);
-  glewInfoFunc("glBufferSubDataARB", glBufferSubDataARB == NULL);
-  glewInfoFunc("glDeleteBuffersARB", glDeleteBuffersARB == NULL);
-  glewInfoFunc("glGenBuffersARB", glGenBuffersARB == NULL);
-  glewInfoFunc("glGetBufferParameterivARB", glGetBufferParameterivARB == NULL);
-  glewInfoFunc("glGetBufferPointervARB", glGetBufferPointervARB == NULL);
-  glewInfoFunc("glGetBufferSubDataARB", glGetBufferSubDataARB == NULL);
-  glewInfoFunc("glIsBufferARB", glIsBufferARB == NULL);
-  glewInfoFunc("glMapBufferARB", glMapBufferARB == NULL);
-  glewInfoFunc("glUnmapBufferARB", glUnmapBufferARB == NULL);
-}
-
-#endif /* GL_ARB_vertex_buffer_object */
-
-#ifdef GL_ARB_vertex_program
-
-static void _glewInfo_GL_ARB_vertex_program (void)
-{
-  glewPrintExt("GL_ARB_vertex_program", GLEW_ARB_vertex_program, glewIsSupported("GL_ARB_vertex_program"), glewGetExtension("GL_ARB_vertex_program"));
-
-  glewInfoFunc("glBindProgramARB", glBindProgramARB == NULL);
-  glewInfoFunc("glDeleteProgramsARB", glDeleteProgramsARB == NULL);
-  glewInfoFunc("glDisableVertexAttribArrayARB", glDisableVertexAttribArrayARB == NULL);
-  glewInfoFunc("glEnableVertexAttribArrayARB", glEnableVertexAttribArrayARB == NULL);
-  glewInfoFunc("glGenProgramsARB", glGenProgramsARB == NULL);
-  glewInfoFunc("glGetProgramEnvParameterdvARB", glGetProgramEnvParameterdvARB == NULL);
-  glewInfoFunc("glGetProgramEnvParameterfvARB", glGetProgramEnvParameterfvARB == NULL);
-  glewInfoFunc("glGetProgramLocalParameterdvARB", glGetProgramLocalParameterdvARB == NULL);
-  glewInfoFunc("glGetProgramLocalParameterfvARB", glGetProgramLocalParameterfvARB == NULL);
-  glewInfoFunc("glGetProgramStringARB", glGetProgramStringARB == NULL);
-  glewInfoFunc("glGetProgramivARB", glGetProgramivARB == NULL);
-  glewInfoFunc("glGetVertexAttribPointervARB", glGetVertexAttribPointervARB == NULL);
-  glewInfoFunc("glGetVertexAttribdvARB", glGetVertexAttribdvARB == NULL);
-  glewInfoFunc("glGetVertexAttribfvARB", glGetVertexAttribfvARB == NULL);
-  glewInfoFunc("glGetVertexAttribivARB", glGetVertexAttribivARB == NULL);
-  glewInfoFunc("glIsProgramARB", glIsProgramARB == NULL);
-  glewInfoFunc("glProgramEnvParameter4dARB", glProgramEnvParameter4dARB == NULL);
-  glewInfoFunc("glProgramEnvParameter4dvARB", glProgramEnvParameter4dvARB == NULL);
-  glewInfoFunc("glProgramEnvParameter4fARB", glProgramEnvParameter4fARB == NULL);
-  glewInfoFunc("glProgramEnvParameter4fvARB", glProgramEnvParameter4fvARB == NULL);
-  glewInfoFunc("glProgramLocalParameter4dARB", glProgramLocalParameter4dARB == NULL);
-  glewInfoFunc("glProgramLocalParameter4dvARB", glProgramLocalParameter4dvARB == NULL);
-  glewInfoFunc("glProgramLocalParameter4fARB", glProgramLocalParameter4fARB == NULL);
-  glewInfoFunc("glProgramLocalParameter4fvARB", glProgramLocalParameter4fvARB == NULL);
-  glewInfoFunc("glProgramStringARB", glProgramStringARB == NULL);
-  glewInfoFunc("glVertexAttrib1dARB", glVertexAttrib1dARB == NULL);
-  glewInfoFunc("glVertexAttrib1dvARB", glVertexAttrib1dvARB == NULL);
-  glewInfoFunc("glVertexAttrib1fARB", glVertexAttrib1fARB == NULL);
-  glewInfoFunc("glVertexAttrib1fvARB", glVertexAttrib1fvARB == NULL);
-  glewInfoFunc("glVertexAttrib1sARB", glVertexAttrib1sARB == NULL);
-  glewInfoFunc("glVertexAttrib1svARB", glVertexAttrib1svARB == NULL);
-  glewInfoFunc("glVertexAttrib2dARB", glVertexAttrib2dARB == NULL);
-  glewInfoFunc("glVertexAttrib2dvARB", glVertexAttrib2dvARB == NULL);
-  glewInfoFunc("glVertexAttrib2fARB", glVertexAttrib2fARB == NULL);
-  glewInfoFunc("glVertexAttrib2fvARB", glVertexAttrib2fvARB == NULL);
-  glewInfoFunc("glVertexAttrib2sARB", glVertexAttrib2sARB == NULL);
-  glewInfoFunc("glVertexAttrib2svARB", glVertexAttrib2svARB == NULL);
-  glewInfoFunc("glVertexAttrib3dARB", glVertexAttrib3dARB == NULL);
-  glewInfoFunc("glVertexAttrib3dvARB", glVertexAttrib3dvARB == NULL);
-  glewInfoFunc("glVertexAttrib3fARB", glVertexAttrib3fARB == NULL);
-  glewInfoFunc("glVertexAttrib3fvARB", glVertexAttrib3fvARB == NULL);
-  glewInfoFunc("glVertexAttrib3sARB", glVertexAttrib3sARB == NULL);
-  glewInfoFunc("glVertexAttrib3svARB", glVertexAttrib3svARB == NULL);
-  glewInfoFunc("glVertexAttrib4NbvARB", glVertexAttrib4NbvARB == NULL);
-  glewInfoFunc("glVertexAttrib4NivARB", glVertexAttrib4NivARB == NULL);
-  glewInfoFunc("glVertexAttrib4NsvARB", glVertexAttrib4NsvARB == NULL);
-  glewInfoFunc("glVertexAttrib4NubARB", glVertexAttrib4NubARB == NULL);
-  glewInfoFunc("glVertexAttrib4NubvARB", glVertexAttrib4NubvARB == NULL);
-  glewInfoFunc("glVertexAttrib4NuivARB", glVertexAttrib4NuivARB == NULL);
-  glewInfoFunc("glVertexAttrib4NusvARB", glVertexAttrib4NusvARB == NULL);
-  glewInfoFunc("glVertexAttrib4bvARB", glVertexAttrib4bvARB == NULL);
-  glewInfoFunc("glVertexAttrib4dARB", glVertexAttrib4dARB == NULL);
-  glewInfoFunc("glVertexAttrib4dvARB", glVertexAttrib4dvARB == NULL);
-  glewInfoFunc("glVertexAttrib4fARB", glVertexAttrib4fARB == NULL);
-  glewInfoFunc("glVertexAttrib4fvARB", glVertexAttrib4fvARB == NULL);
-  glewInfoFunc("glVertexAttrib4ivARB", glVertexAttrib4ivARB == NULL);
-  glewInfoFunc("glVertexAttrib4sARB", glVertexAttrib4sARB == NULL);
-  glewInfoFunc("glVertexAttrib4svARB", glVertexAttrib4svARB == NULL);
-  glewInfoFunc("glVertexAttrib4ubvARB", glVertexAttrib4ubvARB == NULL);
-  glewInfoFunc("glVertexAttrib4uivARB", glVertexAttrib4uivARB == NULL);
-  glewInfoFunc("glVertexAttrib4usvARB", glVertexAttrib4usvARB == NULL);
-  glewInfoFunc("glVertexAttribPointerARB", glVertexAttribPointerARB == NULL);
-}
-
-#endif /* GL_ARB_vertex_program */
-
-#ifdef GL_ARB_vertex_shader
-
-static void _glewInfo_GL_ARB_vertex_shader (void)
-{
-  glewPrintExt("GL_ARB_vertex_shader", GLEW_ARB_vertex_shader, glewIsSupported("GL_ARB_vertex_shader"), glewGetExtension("GL_ARB_vertex_shader"));
-
-  glewInfoFunc("glBindAttribLocationARB", glBindAttribLocationARB == NULL);
-  glewInfoFunc("glGetActiveAttribARB", glGetActiveAttribARB == NULL);
-  glewInfoFunc("glGetAttribLocationARB", glGetAttribLocationARB == NULL);
-}
-
-#endif /* GL_ARB_vertex_shader */
-
-#ifdef GL_ARB_vertex_type_2_10_10_10_rev
-
-static void _glewInfo_GL_ARB_vertex_type_2_10_10_10_rev (void)
-{
-  glewPrintExt("GL_ARB_vertex_type_2_10_10_10_rev", GLEW_ARB_vertex_type_2_10_10_10_rev, glewIsSupported("GL_ARB_vertex_type_2_10_10_10_rev"), glewGetExtension("GL_ARB_vertex_type_2_10_10_10_rev"));
-
-  glewInfoFunc("glColorP3ui", glColorP3ui == NULL);
-  glewInfoFunc("glColorP3uiv", glColorP3uiv == NULL);
-  glewInfoFunc("glColorP4ui", glColorP4ui == NULL);
-  glewInfoFunc("glColorP4uiv", glColorP4uiv == NULL);
-  glewInfoFunc("glMultiTexCoordP1ui", glMultiTexCoordP1ui == NULL);
-  glewInfoFunc("glMultiTexCoordP1uiv", glMultiTexCoordP1uiv == NULL);
-  glewInfoFunc("glMultiTexCoordP2ui", glMultiTexCoordP2ui == NULL);
-  glewInfoFunc("glMultiTexCoordP2uiv", glMultiTexCoordP2uiv == NULL);
-  glewInfoFunc("glMultiTexCoordP3ui", glMultiTexCoordP3ui == NULL);
-  glewInfoFunc("glMultiTexCoordP3uiv", glMultiTexCoordP3uiv == NULL);
-  glewInfoFunc("glMultiTexCoordP4ui", glMultiTexCoordP4ui == NULL);
-  glewInfoFunc("glMultiTexCoordP4uiv", glMultiTexCoordP4uiv == NULL);
-  glewInfoFunc("glNormalP3ui", glNormalP3ui == NULL);
-  glewInfoFunc("glNormalP3uiv", glNormalP3uiv == NULL);
-  glewInfoFunc("glSecondaryColorP3ui", glSecondaryColorP3ui == NULL);
-  glewInfoFunc("glSecondaryColorP3uiv", glSecondaryColorP3uiv == NULL);
-  glewInfoFunc("glTexCoordP1ui", glTexCoordP1ui == NULL);
-  glewInfoFunc("glTexCoordP1uiv", glTexCoordP1uiv == NULL);
-  glewInfoFunc("glTexCoordP2ui", glTexCoordP2ui == NULL);
-  glewInfoFunc("glTexCoordP2uiv", glTexCoordP2uiv == NULL);
-  glewInfoFunc("glTexCoordP3ui", glTexCoordP3ui == NULL);
-  glewInfoFunc("glTexCoordP3uiv", glTexCoordP3uiv == NULL);
-  glewInfoFunc("glTexCoordP4ui", glTexCoordP4ui == NULL);
-  glewInfoFunc("glTexCoordP4uiv", glTexCoordP4uiv == NULL);
-  glewInfoFunc("glVertexAttribP1ui", glVertexAttribP1ui == NULL);
-  glewInfoFunc("glVertexAttribP1uiv", glVertexAttribP1uiv == NULL);
-  glewInfoFunc("glVertexAttribP2ui", glVertexAttribP2ui == NULL);
-  glewInfoFunc("glVertexAttribP2uiv", glVertexAttribP2uiv == NULL);
-  glewInfoFunc("glVertexAttribP3ui", glVertexAttribP3ui == NULL);
-  glewInfoFunc("glVertexAttribP3uiv", glVertexAttribP3uiv == NULL);
-  glewInfoFunc("glVertexAttribP4ui", glVertexAttribP4ui == NULL);
-  glewInfoFunc("glVertexAttribP4uiv", glVertexAttribP4uiv == NULL);
-  glewInfoFunc("glVertexP2ui", glVertexP2ui == NULL);
-  glewInfoFunc("glVertexP2uiv", glVertexP2uiv == NULL);
-  glewInfoFunc("glVertexP3ui", glVertexP3ui == NULL);
-  glewInfoFunc("glVertexP3uiv", glVertexP3uiv == NULL);
-  glewInfoFunc("glVertexP4ui", glVertexP4ui == NULL);
-  glewInfoFunc("glVertexP4uiv", glVertexP4uiv == NULL);
-}
-
-#endif /* GL_ARB_vertex_type_2_10_10_10_rev */
-
-#ifdef GL_ARB_window_pos
-
-static void _glewInfo_GL_ARB_window_pos (void)
-{
-  glewPrintExt("GL_ARB_window_pos", GLEW_ARB_window_pos, glewIsSupported("GL_ARB_window_pos"), glewGetExtension("GL_ARB_window_pos"));
-
-  glewInfoFunc("glWindowPos2dARB", glWindowPos2dARB == NULL);
-  glewInfoFunc("glWindowPos2dvARB", glWindowPos2dvARB == NULL);
-  glewInfoFunc("glWindowPos2fARB", glWindowPos2fARB == NULL);
-  glewInfoFunc("glWindowPos2fvARB", glWindowPos2fvARB == NULL);
-  glewInfoFunc("glWindowPos2iARB", glWindowPos2iARB == NULL);
-  glewInfoFunc("glWindowPos2ivARB", glWindowPos2ivARB == NULL);
-  glewInfoFunc("glWindowPos2sARB", glWindowPos2sARB == NULL);
-  glewInfoFunc("glWindowPos2svARB", glWindowPos2svARB == NULL);
-  glewInfoFunc("glWindowPos3dARB", glWindowPos3dARB == NULL);
-  glewInfoFunc("glWindowPos3dvARB", glWindowPos3dvARB == NULL);
-  glewInfoFunc("glWindowPos3fARB", glWindowPos3fARB == NULL);
-  glewInfoFunc("glWindowPos3fvARB", glWindowPos3fvARB == NULL);
-  glewInfoFunc("glWindowPos3iARB", glWindowPos3iARB == NULL);
-  glewInfoFunc("glWindowPos3ivARB", glWindowPos3ivARB == NULL);
-  glewInfoFunc("glWindowPos3sARB", glWindowPos3sARB == NULL);
-  glewInfoFunc("glWindowPos3svARB", glWindowPos3svARB == NULL);
-}
-
-#endif /* GL_ARB_window_pos */
-
-#ifdef GL_ATIX_point_sprites
-
-static void _glewInfo_GL_ATIX_point_sprites (void)
-{
-  glewPrintExt("GL_ATIX_point_sprites", GLEW_ATIX_point_sprites, glewIsSupported("GL_ATIX_point_sprites"), glewGetExtension("GL_ATIX_point_sprites"));
-}
-
-#endif /* GL_ATIX_point_sprites */
-
-#ifdef GL_ATIX_texture_env_combine3
-
-static void _glewInfo_GL_ATIX_texture_env_combine3 (void)
-{
-  glewPrintExt("GL_ATIX_texture_env_combine3", GLEW_ATIX_texture_env_combine3, glewIsSupported("GL_ATIX_texture_env_combine3"), glewGetExtension("GL_ATIX_texture_env_combine3"));
-}
-
-#endif /* GL_ATIX_texture_env_combine3 */
-
-#ifdef GL_ATIX_texture_env_route
-
-static void _glewInfo_GL_ATIX_texture_env_route (void)
-{
-  glewPrintExt("GL_ATIX_texture_env_route", GLEW_ATIX_texture_env_route, glewIsSupported("GL_ATIX_texture_env_route"), glewGetExtension("GL_ATIX_texture_env_route"));
-}
-
-#endif /* GL_ATIX_texture_env_route */
-
-#ifdef GL_ATIX_vertex_shader_output_point_size
-
-static void _glewInfo_GL_ATIX_vertex_shader_output_point_size (void)
-{
-  glewPrintExt("GL_ATIX_vertex_shader_output_point_size", GLEW_ATIX_vertex_shader_output_point_size, glewIsSupported("GL_ATIX_vertex_shader_output_point_size"), glewGetExtension("GL_ATIX_vertex_shader_output_point_size"));
-}
-
-#endif /* GL_ATIX_vertex_shader_output_point_size */
-
-#ifdef GL_ATI_draw_buffers
-
-static void _glewInfo_GL_ATI_draw_buffers (void)
-{
-  glewPrintExt("GL_ATI_draw_buffers", GLEW_ATI_draw_buffers, glewIsSupported("GL_ATI_draw_buffers"), glewGetExtension("GL_ATI_draw_buffers"));
-
-  glewInfoFunc("glDrawBuffersATI", glDrawBuffersATI == NULL);
-}
-
-#endif /* GL_ATI_draw_buffers */
-
-#ifdef GL_ATI_element_array
-
-static void _glewInfo_GL_ATI_element_array (void)
-{
-  glewPrintExt("GL_ATI_element_array", GLEW_ATI_element_array, glewIsSupported("GL_ATI_element_array"), glewGetExtension("GL_ATI_element_array"));
-
-  glewInfoFunc("glDrawElementArrayATI", glDrawElementArrayATI == NULL);
-  glewInfoFunc("glDrawRangeElementArrayATI", glDrawRangeElementArrayATI == NULL);
-  glewInfoFunc("glElementPointerATI", glElementPointerATI == NULL);
-}
-
-#endif /* GL_ATI_element_array */
-
-#ifdef GL_ATI_envmap_bumpmap
-
-static void _glewInfo_GL_ATI_envmap_bumpmap (void)
-{
-  glewPrintExt("GL_ATI_envmap_bumpmap", GLEW_ATI_envmap_bumpmap, glewIsSupported("GL_ATI_envmap_bumpmap"), glewGetExtension("GL_ATI_envmap_bumpmap"));
-
-  glewInfoFunc("glGetTexBumpParameterfvATI", glGetTexBumpParameterfvATI == NULL);
-  glewInfoFunc("glGetTexBumpParameterivATI", glGetTexBumpParameterivATI == NULL);
-  glewInfoFunc("glTexBumpParameterfvATI", glTexBumpParameterfvATI == NULL);
-  glewInfoFunc("glTexBumpParameterivATI", glTexBumpParameterivATI == NULL);
-}
-
-#endif /* GL_ATI_envmap_bumpmap */
-
-#ifdef GL_ATI_fragment_shader
-
-static void _glewInfo_GL_ATI_fragment_shader (void)
-{
-  glewPrintExt("GL_ATI_fragment_shader", GLEW_ATI_fragment_shader, glewIsSupported("GL_ATI_fragment_shader"), glewGetExtension("GL_ATI_fragment_shader"));
-
-  glewInfoFunc("glAlphaFragmentOp1ATI", glAlphaFragmentOp1ATI == NULL);
-  glewInfoFunc("glAlphaFragmentOp2ATI", glAlphaFragmentOp2ATI == NULL);
-  glewInfoFunc("glAlphaFragmentOp3ATI", glAlphaFragmentOp3ATI == NULL);
-  glewInfoFunc("glBeginFragmentShaderATI", glBeginFragmentShaderATI == NULL);
-  glewInfoFunc("glBindFragmentShaderATI", glBindFragmentShaderATI == NULL);
-  glewInfoFunc("glColorFragmentOp1ATI", glColorFragmentOp1ATI == NULL);
-  glewInfoFunc("glColorFragmentOp2ATI", glColorFragmentOp2ATI == NULL);
-  glewInfoFunc("glColorFragmentOp3ATI", glColorFragmentOp3ATI == NULL);
-  glewInfoFunc("glDeleteFragmentShaderATI", glDeleteFragmentShaderATI == NULL);
-  glewInfoFunc("glEndFragmentShaderATI", glEndFragmentShaderATI == NULL);
-  glewInfoFunc("glGenFragmentShadersATI", glGenFragmentShadersATI == NULL);
-  glewInfoFunc("glPassTexCoordATI", glPassTexCoordATI == NULL);
-  glewInfoFunc("glSampleMapATI", glSampleMapATI == NULL);
-  glewInfoFunc("glSetFragmentShaderConstantATI", glSetFragmentShaderConstantATI == NULL);
-}
-
-#endif /* GL_ATI_fragment_shader */
-
-#ifdef GL_ATI_map_object_buffer
-
-static void _glewInfo_GL_ATI_map_object_buffer (void)
-{
-  glewPrintExt("GL_ATI_map_object_buffer", GLEW_ATI_map_object_buffer, glewIsSupported("GL_ATI_map_object_buffer"), glewGetExtension("GL_ATI_map_object_buffer"));
-
-  glewInfoFunc("glMapObjectBufferATI", glMapObjectBufferATI == NULL);
-  glewInfoFunc("glUnmapObjectBufferATI", glUnmapObjectBufferATI == NULL);
-}
-
-#endif /* GL_ATI_map_object_buffer */
-
-#ifdef GL_ATI_meminfo
-
-static void _glewInfo_GL_ATI_meminfo (void)
-{
-  glewPrintExt("GL_ATI_meminfo", GLEW_ATI_meminfo, glewIsSupported("GL_ATI_meminfo"), glewGetExtension("GL_ATI_meminfo"));
-}
-
-#endif /* GL_ATI_meminfo */
-
-#ifdef GL_ATI_pn_triangles
-
-static void _glewInfo_GL_ATI_pn_triangles (void)
-{
-  glewPrintExt("GL_ATI_pn_triangles", GLEW_ATI_pn_triangles, glewIsSupported("GL_ATI_pn_triangles"), glewGetExtension("GL_ATI_pn_triangles"));
-
-  glewInfoFunc("glPNTrianglesfATI", glPNTrianglesfATI == NULL);
-  glewInfoFunc("glPNTrianglesiATI", glPNTrianglesiATI == NULL);
-}
-
-#endif /* GL_ATI_pn_triangles */
-
-#ifdef GL_ATI_separate_stencil
-
-static void _glewInfo_GL_ATI_separate_stencil (void)
-{
-  glewPrintExt("GL_ATI_separate_stencil", GLEW_ATI_separate_stencil, glewIsSupported("GL_ATI_separate_stencil"), glewGetExtension("GL_ATI_separate_stencil"));
-
-  glewInfoFunc("glStencilFuncSeparateATI", glStencilFuncSeparateATI == NULL);
-  glewInfoFunc("glStencilOpSeparateATI", glStencilOpSeparateATI == NULL);
-}
-
-#endif /* GL_ATI_separate_stencil */
-
-#ifdef GL_ATI_shader_texture_lod
-
-static void _glewInfo_GL_ATI_shader_texture_lod (void)
-{
-  glewPrintExt("GL_ATI_shader_texture_lod", GLEW_ATI_shader_texture_lod, glewIsSupported("GL_ATI_shader_texture_lod"), glewGetExtension("GL_ATI_shader_texture_lod"));
-}
-
-#endif /* GL_ATI_shader_texture_lod */
-
-#ifdef GL_ATI_text_fragment_shader
-
-static void _glewInfo_GL_ATI_text_fragment_shader (void)
-{
-  glewPrintExt("GL_ATI_text_fragment_shader", GLEW_ATI_text_fragment_shader, glewIsSupported("GL_ATI_text_fragment_shader"), glewGetExtension("GL_ATI_text_fragment_shader"));
-}
-
-#endif /* GL_ATI_text_fragment_shader */
-
-#ifdef GL_ATI_texture_compression_3dc
-
-static void _glewInfo_GL_ATI_texture_compression_3dc (void)
-{
-  glewPrintExt("GL_ATI_texture_compression_3dc", GLEW_ATI_texture_compression_3dc, glewIsSupported("GL_ATI_texture_compression_3dc"), glewGetExtension("GL_ATI_texture_compression_3dc"));
-}
-
-#endif /* GL_ATI_texture_compression_3dc */
-
-#ifdef GL_ATI_texture_env_combine3
-
-static void _glewInfo_GL_ATI_texture_env_combine3 (void)
-{
-  glewPrintExt("GL_ATI_texture_env_combine3", GLEW_ATI_texture_env_combine3, glewIsSupported("GL_ATI_texture_env_combine3"), glewGetExtension("GL_ATI_texture_env_combine3"));
-}
-
-#endif /* GL_ATI_texture_env_combine3 */
-
-#ifdef GL_ATI_texture_float
-
-static void _glewInfo_GL_ATI_texture_float (void)
-{
-  glewPrintExt("GL_ATI_texture_float", GLEW_ATI_texture_float, glewIsSupported("GL_ATI_texture_float"), glewGetExtension("GL_ATI_texture_float"));
-}
-
-#endif /* GL_ATI_texture_float */
-
-#ifdef GL_ATI_texture_mirror_once
-
-static void _glewInfo_GL_ATI_texture_mirror_once (void)
-{
-  glewPrintExt("GL_ATI_texture_mirror_once", GLEW_ATI_texture_mirror_once, glewIsSupported("GL_ATI_texture_mirror_once"), glewGetExtension("GL_ATI_texture_mirror_once"));
-}
-
-#endif /* GL_ATI_texture_mirror_once */
-
-#ifdef GL_ATI_vertex_array_object
-
-static void _glewInfo_GL_ATI_vertex_array_object (void)
-{
-  glewPrintExt("GL_ATI_vertex_array_object", GLEW_ATI_vertex_array_object, glewIsSupported("GL_ATI_vertex_array_object"), glewGetExtension("GL_ATI_vertex_array_object"));
-
-  glewInfoFunc("glArrayObjectATI", glArrayObjectATI == NULL);
-  glewInfoFunc("glFreeObjectBufferATI", glFreeObjectBufferATI == NULL);
-  glewInfoFunc("glGetArrayObjectfvATI", glGetArrayObjectfvATI == NULL);
-  glewInfoFunc("glGetArrayObjectivATI", glGetArrayObjectivATI == NULL);
-  glewInfoFunc("glGetObjectBufferfvATI", glGetObjectBufferfvATI == NULL);
-  glewInfoFunc("glGetObjectBufferivATI", glGetObjectBufferivATI == NULL);
-  glewInfoFunc("glGetVariantArrayObjectfvATI", glGetVariantArrayObjectfvATI == NULL);
-  glewInfoFunc("glGetVariantArrayObjectivATI", glGetVariantArrayObjectivATI == NULL);
-  glewInfoFunc("glIsObjectBufferATI", glIsObjectBufferATI == NULL);
-  glewInfoFunc("glNewObjectBufferATI", glNewObjectBufferATI == NULL);
-  glewInfoFunc("glUpdateObjectBufferATI", glUpdateObjectBufferATI == NULL);
-  glewInfoFunc("glVariantArrayObjectATI", glVariantArrayObjectATI == NULL);
-}
-
-#endif /* GL_ATI_vertex_array_object */
-
-#ifdef GL_ATI_vertex_attrib_array_object
-
-static void _glewInfo_GL_ATI_vertex_attrib_array_object (void)
-{
-  glewPrintExt("GL_ATI_vertex_attrib_array_object", GLEW_ATI_vertex_attrib_array_object, glewIsSupported("GL_ATI_vertex_attrib_array_object"), glewGetExtension("GL_ATI_vertex_attrib_array_object"));
-
-  glewInfoFunc("glGetVertexAttribArrayObjectfvATI", glGetVertexAttribArrayObjectfvATI == NULL);
-  glewInfoFunc("glGetVertexAttribArrayObjectivATI", glGetVertexAttribArrayObjectivATI == NULL);
-  glewInfoFunc("glVertexAttribArrayObjectATI", glVertexAttribArrayObjectATI == NULL);
-}
-
-#endif /* GL_ATI_vertex_attrib_array_object */
-
-#ifdef GL_ATI_vertex_streams
-
-static void _glewInfo_GL_ATI_vertex_streams (void)
-{
-  glewPrintExt("GL_ATI_vertex_streams", GLEW_ATI_vertex_streams, glewIsSupported("GL_ATI_vertex_streams"), glewGetExtension("GL_ATI_vertex_streams"));
-
-  glewInfoFunc("glClientActiveVertexStreamATI", glClientActiveVertexStreamATI == NULL);
-  glewInfoFunc("glNormalStream3bATI", glNormalStream3bATI == NULL);
-  glewInfoFunc("glNormalStream3bvATI", glNormalStream3bvATI == NULL);
-  glewInfoFunc("glNormalStream3dATI", glNormalStream3dATI == NULL);
-  glewInfoFunc("glNormalStream3dvATI", glNormalStream3dvATI == NULL);
-  glewInfoFunc("glNormalStream3fATI", glNormalStream3fATI == NULL);
-  glewInfoFunc("glNormalStream3fvATI", glNormalStream3fvATI == NULL);
-  glewInfoFunc("glNormalStream3iATI", glNormalStream3iATI == NULL);
-  glewInfoFunc("glNormalStream3ivATI", glNormalStream3ivATI == NULL);
-  glewInfoFunc("glNormalStream3sATI", glNormalStream3sATI == NULL);
-  glewInfoFunc("glNormalStream3svATI", glNormalStream3svATI == NULL);
-  glewInfoFunc("glVertexBlendEnvfATI", glVertexBlendEnvfATI == NULL);
-  glewInfoFunc("glVertexBlendEnviATI", glVertexBlendEnviATI == NULL);
-  glewInfoFunc("glVertexStream2dATI", glVertexStream2dATI == NULL);
-  glewInfoFunc("glVertexStream2dvATI", glVertexStream2dvATI == NULL);
-  glewInfoFunc("glVertexStream2fATI", glVertexStream2fATI == NULL);
-  glewInfoFunc("glVertexStream2fvATI", glVertexStream2fvATI == NULL);
-  glewInfoFunc("glVertexStream2iATI", glVertexStream2iATI == NULL);
-  glewInfoFunc("glVertexStream2ivATI", glVertexStream2ivATI == NULL);
-  glewInfoFunc("glVertexStream2sATI", glVertexStream2sATI == NULL);
-  glewInfoFunc("glVertexStream2svATI", glVertexStream2svATI == NULL);
-  glewInfoFunc("glVertexStream3dATI", glVertexStream3dATI == NULL);
-  glewInfoFunc("glVertexStream3dvATI", glVertexStream3dvATI == NULL);
-  glewInfoFunc("glVertexStream3fATI", glVertexStream3fATI == NULL);
-  glewInfoFunc("glVertexStream3fvATI", glVertexStream3fvATI == NULL);
-  glewInfoFunc("glVertexStream3iATI", glVertexStream3iATI == NULL);
-  glewInfoFunc("glVertexStream3ivATI", glVertexStream3ivATI == NULL);
-  glewInfoFunc("glVertexStream3sATI", glVertexStream3sATI == NULL);
-  glewInfoFunc("glVertexStream3svATI", glVertexStream3svATI == NULL);
-  glewInfoFunc("glVertexStream4dATI", glVertexStream4dATI == NULL);
-  glewInfoFunc("glVertexStream4dvATI", glVertexStream4dvATI == NULL);
-  glewInfoFunc("glVertexStream4fATI", glVertexStream4fATI == NULL);
-  glewInfoFunc("glVertexStream4fvATI", glVertexStream4fvATI == NULL);
-  glewInfoFunc("glVertexStream4iATI", glVertexStream4iATI == NULL);
-  glewInfoFunc("glVertexStream4ivATI", glVertexStream4ivATI == NULL);
-  glewInfoFunc("glVertexStream4sATI", glVertexStream4sATI == NULL);
-  glewInfoFunc("glVertexStream4svATI", glVertexStream4svATI == NULL);
-}
-
-#endif /* GL_ATI_vertex_streams */
-
-#ifdef GL_EXT_422_pixels
-
-static void _glewInfo_GL_EXT_422_pixels (void)
-{
-  glewPrintExt("GL_EXT_422_pixels", GLEW_EXT_422_pixels, glewIsSupported("GL_EXT_422_pixels"), glewGetExtension("GL_EXT_422_pixels"));
-}
-
-#endif /* GL_EXT_422_pixels */
-
-#ifdef GL_EXT_Cg_shader
-
-static void _glewInfo_GL_EXT_Cg_shader (void)
-{
-  glewPrintExt("GL_EXT_Cg_shader", GLEW_EXT_Cg_shader, glewIsSupported("GL_EXT_Cg_shader"), glewGetExtension("GL_EXT_Cg_shader"));
-}
-
-#endif /* GL_EXT_Cg_shader */
-
-#ifdef GL_EXT_abgr
-
-static void _glewInfo_GL_EXT_abgr (void)
-{
-  glewPrintExt("GL_EXT_abgr", GLEW_EXT_abgr, glewIsSupported("GL_EXT_abgr"), glewGetExtension("GL_EXT_abgr"));
-}
-
-#endif /* GL_EXT_abgr */
-
-#ifdef GL_EXT_bgra
-
-static void _glewInfo_GL_EXT_bgra (void)
-{
-  glewPrintExt("GL_EXT_bgra", GLEW_EXT_bgra, glewIsSupported("GL_EXT_bgra"), glewGetExtension("GL_EXT_bgra"));
-}
-
-#endif /* GL_EXT_bgra */
-
-#ifdef GL_EXT_bindable_uniform
-
-static void _glewInfo_GL_EXT_bindable_uniform (void)
-{
-  glewPrintExt("GL_EXT_bindable_uniform", GLEW_EXT_bindable_uniform, glewIsSupported("GL_EXT_bindable_uniform"), glewGetExtension("GL_EXT_bindable_uniform"));
-
-  glewInfoFunc("glGetUniformBufferSizeEXT", glGetUniformBufferSizeEXT == NULL);
-  glewInfoFunc("glGetUniformOffsetEXT", glGetUniformOffsetEXT == NULL);
-  glewInfoFunc("glUniformBufferEXT", glUniformBufferEXT == NULL);
-}
-
-#endif /* GL_EXT_bindable_uniform */
-
-#ifdef GL_EXT_blend_color
-
-static void _glewInfo_GL_EXT_blend_color (void)
-{
-  glewPrintExt("GL_EXT_blend_color", GLEW_EXT_blend_color, glewIsSupported("GL_EXT_blend_color"), glewGetExtension("GL_EXT_blend_color"));
-
-  glewInfoFunc("glBlendColorEXT", glBlendColorEXT == NULL);
-}
-
-#endif /* GL_EXT_blend_color */
-
-#ifdef GL_EXT_blend_equation_separate
-
-static void _glewInfo_GL_EXT_blend_equation_separate (void)
-{
-  glewPrintExt("GL_EXT_blend_equation_separate", GLEW_EXT_blend_equation_separate, glewIsSupported("GL_EXT_blend_equation_separate"), glewGetExtension("GL_EXT_blend_equation_separate"));
-
-  glewInfoFunc("glBlendEquationSeparateEXT", glBlendEquationSeparateEXT == NULL);
-}
-
-#endif /* GL_EXT_blend_equation_separate */
-
-#ifdef GL_EXT_blend_func_separate
-
-static void _glewInfo_GL_EXT_blend_func_separate (void)
-{
-  glewPrintExt("GL_EXT_blend_func_separate", GLEW_EXT_blend_func_separate, glewIsSupported("GL_EXT_blend_func_separate"), glewGetExtension("GL_EXT_blend_func_separate"));
-
-  glewInfoFunc("glBlendFuncSeparateEXT", glBlendFuncSeparateEXT == NULL);
-}
-
-#endif /* GL_EXT_blend_func_separate */
-
-#ifdef GL_EXT_blend_logic_op
-
-static void _glewInfo_GL_EXT_blend_logic_op (void)
-{
-  glewPrintExt("GL_EXT_blend_logic_op", GLEW_EXT_blend_logic_op, glewIsSupported("GL_EXT_blend_logic_op"), glewGetExtension("GL_EXT_blend_logic_op"));
-}
-
-#endif /* GL_EXT_blend_logic_op */
-
-#ifdef GL_EXT_blend_minmax
-
-static void _glewInfo_GL_EXT_blend_minmax (void)
-{
-  glewPrintExt("GL_EXT_blend_minmax", GLEW_EXT_blend_minmax, glewIsSupported("GL_EXT_blend_minmax"), glewGetExtension("GL_EXT_blend_minmax"));
-
-  glewInfoFunc("glBlendEquationEXT", glBlendEquationEXT == NULL);
-}
-
-#endif /* GL_EXT_blend_minmax */
-
-#ifdef GL_EXT_blend_subtract
-
-static void _glewInfo_GL_EXT_blend_subtract (void)
-{
-  glewPrintExt("GL_EXT_blend_subtract", GLEW_EXT_blend_subtract, glewIsSupported("GL_EXT_blend_subtract"), glewGetExtension("GL_EXT_blend_subtract"));
-}
-
-#endif /* GL_EXT_blend_subtract */
-
-#ifdef GL_EXT_clip_volume_hint
-
-static void _glewInfo_GL_EXT_clip_volume_hint (void)
-{
-  glewPrintExt("GL_EXT_clip_volume_hint", GLEW_EXT_clip_volume_hint, glewIsSupported("GL_EXT_clip_volume_hint"), glewGetExtension("GL_EXT_clip_volume_hint"));
-}
-
-#endif /* GL_EXT_clip_volume_hint */
-
-#ifdef GL_EXT_cmyka
-
-static void _glewInfo_GL_EXT_cmyka (void)
-{
-  glewPrintExt("GL_EXT_cmyka", GLEW_EXT_cmyka, glewIsSupported("GL_EXT_cmyka"), glewGetExtension("GL_EXT_cmyka"));
-}
-
-#endif /* GL_EXT_cmyka */
-
-#ifdef GL_EXT_color_subtable
-
-static void _glewInfo_GL_EXT_color_subtable (void)
-{
-  glewPrintExt("GL_EXT_color_subtable", GLEW_EXT_color_subtable, glewIsSupported("GL_EXT_color_subtable"), glewGetExtension("GL_EXT_color_subtable"));
-
-  glewInfoFunc("glColorSubTableEXT", glColorSubTableEXT == NULL);
-  glewInfoFunc("glCopyColorSubTableEXT", glCopyColorSubTableEXT == NULL);
-}
-
-#endif /* GL_EXT_color_subtable */
-
-#ifdef GL_EXT_compiled_vertex_array
-
-static void _glewInfo_GL_EXT_compiled_vertex_array (void)
-{
-  glewPrintExt("GL_EXT_compiled_vertex_array", GLEW_EXT_compiled_vertex_array, glewIsSupported("GL_EXT_compiled_vertex_array"), glewGetExtension("GL_EXT_compiled_vertex_array"));
-
-  glewInfoFunc("glLockArraysEXT", glLockArraysEXT == NULL);
-  glewInfoFunc("glUnlockArraysEXT", glUnlockArraysEXT == NULL);
-}
-
-#endif /* GL_EXT_compiled_vertex_array */
-
-#ifdef GL_EXT_convolution
-
-static void _glewInfo_GL_EXT_convolution (void)
-{
-  glewPrintExt("GL_EXT_convolution", GLEW_EXT_convolution, glewIsSupported("GL_EXT_convolution"), glewGetExtension("GL_EXT_convolution"));
-
-  glewInfoFunc("glConvolutionFilter1DEXT", glConvolutionFilter1DEXT == NULL);
-  glewInfoFunc("glConvolutionFilter2DEXT", glConvolutionFilter2DEXT == NULL);
-  glewInfoFunc("glConvolutionParameterfEXT", glConvolutionParameterfEXT == NULL);
-  glewInfoFunc("glConvolutionParameterfvEXT", glConvolutionParameterfvEXT == NULL);
-  glewInfoFunc("glConvolutionParameteriEXT", glConvolutionParameteriEXT == NULL);
-  glewInfoFunc("glConvolutionParameterivEXT", glConvolutionParameterivEXT == NULL);
-  glewInfoFunc("glCopyConvolutionFilter1DEXT", glCopyConvolutionFilter1DEXT == NULL);
-  glewInfoFunc("glCopyConvolutionFilter2DEXT", glCopyConvolutionFilter2DEXT == NULL);
-  glewInfoFunc("glGetConvolutionFilterEXT", glGetConvolutionFilterEXT == NULL);
-  glewInfoFunc("glGetConvolutionParameterfvEXT", glGetConvolutionParameterfvEXT == NULL);
-  glewInfoFunc("glGetConvolutionParameterivEXT", glGetConvolutionParameterivEXT == NULL);
-  glewInfoFunc("glGetSeparableFilterEXT", glGetSeparableFilterEXT == NULL);
-  glewInfoFunc("glSeparableFilter2DEXT", glSeparableFilter2DEXT == NULL);
-}
-
-#endif /* GL_EXT_convolution */
-
-#ifdef GL_EXT_coordinate_frame
-
-static void _glewInfo_GL_EXT_coordinate_frame (void)
-{
-  glewPrintExt("GL_EXT_coordinate_frame", GLEW_EXT_coordinate_frame, glewIsSupported("GL_EXT_coordinate_frame"), glewGetExtension("GL_EXT_coordinate_frame"));
-
-  glewInfoFunc("glBinormalPointerEXT", glBinormalPointerEXT == NULL);
-  glewInfoFunc("glTangentPointerEXT", glTangentPointerEXT == NULL);
-}
-
-#endif /* GL_EXT_coordinate_frame */
-
-#ifdef GL_EXT_copy_texture
-
-static void _glewInfo_GL_EXT_copy_texture (void)
-{
-  glewPrintExt("GL_EXT_copy_texture", GLEW_EXT_copy_texture, glewIsSupported("GL_EXT_copy_texture"), glewGetExtension("GL_EXT_copy_texture"));
-
-  glewInfoFunc("glCopyTexImage1DEXT", glCopyTexImage1DEXT == NULL);
-  glewInfoFunc("glCopyTexImage2DEXT", glCopyTexImage2DEXT == NULL);
-  glewInfoFunc("glCopyTexSubImage1DEXT", glCopyTexSubImage1DEXT == NULL);
-  glewInfoFunc("glCopyTexSubImage2DEXT", glCopyTexSubImage2DEXT == NULL);
-  glewInfoFunc("glCopyTexSubImage3DEXT", glCopyTexSubImage3DEXT == NULL);
-}
-
-#endif /* GL_EXT_copy_texture */
-
-#ifdef GL_EXT_cull_vertex
-
-static void _glewInfo_GL_EXT_cull_vertex (void)
-{
-  glewPrintExt("GL_EXT_cull_vertex", GLEW_EXT_cull_vertex, glewIsSupported("GL_EXT_cull_vertex"), glewGetExtension("GL_EXT_cull_vertex"));
-
-  glewInfoFunc("glCullParameterdvEXT", glCullParameterdvEXT == NULL);
-  glewInfoFunc("glCullParameterfvEXT", glCullParameterfvEXT == NULL);
-}
-
-#endif /* GL_EXT_cull_vertex */
-
-#ifdef GL_EXT_depth_bounds_test
-
-static void _glewInfo_GL_EXT_depth_bounds_test (void)
-{
-  glewPrintExt("GL_EXT_depth_bounds_test", GLEW_EXT_depth_bounds_test, glewIsSupported("GL_EXT_depth_bounds_test"), glewGetExtension("GL_EXT_depth_bounds_test"));
-
-  glewInfoFunc("glDepthBoundsEXT", glDepthBoundsEXT == NULL);
-}
-
-#endif /* GL_EXT_depth_bounds_test */
-
-#ifdef GL_EXT_direct_state_access
-
-static void _glewInfo_GL_EXT_direct_state_access (void)
-{
-  glewPrintExt("GL_EXT_direct_state_access", GLEW_EXT_direct_state_access, glewIsSupported("GL_EXT_direct_state_access"), glewGetExtension("GL_EXT_direct_state_access"));
-
-  glewInfoFunc("glBindMultiTextureEXT", glBindMultiTextureEXT == NULL);
-  glewInfoFunc("glCheckNamedFramebufferStatusEXT", glCheckNamedFramebufferStatusEXT == NULL);
-  glewInfoFunc("glClientAttribDefaultEXT", glClientAttribDefaultEXT == NULL);
-  glewInfoFunc("glCompressedMultiTexImage1DEXT", glCompressedMultiTexImage1DEXT == NULL);
-  glewInfoFunc("glCompressedMultiTexImage2DEXT", glCompressedMultiTexImage2DEXT == NULL);
-  glewInfoFunc("glCompressedMultiTexImage3DEXT", glCompressedMultiTexImage3DEXT == NULL);
-  glewInfoFunc("glCompressedMultiTexSubImage1DEXT", glCompressedMultiTexSubImage1DEXT == NULL);
-  glewInfoFunc("glCompressedMultiTexSubImage2DEXT", glCompressedMultiTexSubImage2DEXT == NULL);
-  glewInfoFunc("glCompressedMultiTexSubImage3DEXT", glCompressedMultiTexSubImage3DEXT == NULL);
-  glewInfoFunc("glCompressedTextureImage1DEXT", glCompressedTextureImage1DEXT == NULL);
-  glewInfoFunc("glCompressedTextureImage2DEXT", glCompressedTextureImage2DEXT == NULL);
-  glewInfoFunc("glCompressedTextureImage3DEXT", glCompressedTextureImage3DEXT == NULL);
-  glewInfoFunc("glCompressedTextureSubImage1DEXT", glCompressedTextureSubImage1DEXT == NULL);
-  glewInfoFunc("glCompressedTextureSubImage2DEXT", glCompressedTextureSubImage2DEXT == NULL);
-  glewInfoFunc("glCompressedTextureSubImage3DEXT", glCompressedTextureSubImage3DEXT == NULL);
-  glewInfoFunc("glCopyMultiTexImage1DEXT", glCopyMultiTexImage1DEXT == NULL);
-  glewInfoFunc("glCopyMultiTexImage2DEXT", glCopyMultiTexImage2DEXT == NULL);
-  glewInfoFunc("glCopyMultiTexSubImage1DEXT", glCopyMultiTexSubImage1DEXT == NULL);
-  glewInfoFunc("glCopyMultiTexSubImage2DEXT", glCopyMultiTexSubImage2DEXT == NULL);
-  glewInfoFunc("glCopyMultiTexSubImage3DEXT", glCopyMultiTexSubImage3DEXT == NULL);
-  glewInfoFunc("glCopyTextureImage1DEXT", glCopyTextureImage1DEXT == NULL);
-  glewInfoFunc("glCopyTextureImage2DEXT", glCopyTextureImage2DEXT == NULL);
-  glewInfoFunc("glCopyTextureSubImage1DEXT", glCopyTextureSubImage1DEXT == NULL);
-  glewInfoFunc("glCopyTextureSubImage2DEXT", glCopyTextureSubImage2DEXT == NULL);
-  glewInfoFunc("glCopyTextureSubImage3DEXT", glCopyTextureSubImage3DEXT == NULL);
-  glewInfoFunc("glDisableClientStateIndexedEXT", glDisableClientStateIndexedEXT == NULL);
-  glewInfoFunc("glDisableClientStateiEXT", glDisableClientStateiEXT == NULL);
-  glewInfoFunc("glDisableVertexArrayAttribEXT", glDisableVertexArrayAttribEXT == NULL);
-  glewInfoFunc("glDisableVertexArrayEXT", glDisableVertexArrayEXT == NULL);
-  glewInfoFunc("glEnableClientStateIndexedEXT", glEnableClientStateIndexedEXT == NULL);
-  glewInfoFunc("glEnableClientStateiEXT", glEnableClientStateiEXT == NULL);
-  glewInfoFunc("glEnableVertexArrayAttribEXT", glEnableVertexArrayAttribEXT == NULL);
-  glewInfoFunc("glEnableVertexArrayEXT", glEnableVertexArrayEXT == NULL);
-  glewInfoFunc("glFlushMappedNamedBufferRangeEXT", glFlushMappedNamedBufferRangeEXT == NULL);
-  glewInfoFunc("glFramebufferDrawBufferEXT", glFramebufferDrawBufferEXT == NULL);
-  glewInfoFunc("glFramebufferDrawBuffersEXT", glFramebufferDrawBuffersEXT == NULL);
-  glewInfoFunc("glFramebufferReadBufferEXT", glFramebufferReadBufferEXT == NULL);
-  glewInfoFunc("glGenerateMultiTexMipmapEXT", glGenerateMultiTexMipmapEXT == NULL);
-  glewInfoFunc("glGenerateTextureMipmapEXT", glGenerateTextureMipmapEXT == NULL);
-  glewInfoFunc("glGetCompressedMultiTexImageEXT", glGetCompressedMultiTexImageEXT == NULL);
-  glewInfoFunc("glGetCompressedTextureImageEXT", glGetCompressedTextureImageEXT == NULL);
-  glewInfoFunc("glGetDoubleIndexedvEXT", glGetDoubleIndexedvEXT == NULL);
-  glewInfoFunc("glGetDoublei_vEXT", glGetDoublei_vEXT == NULL);
-  glewInfoFunc("glGetFloatIndexedvEXT", glGetFloatIndexedvEXT == NULL);
-  glewInfoFunc("glGetFloati_vEXT", glGetFloati_vEXT == NULL);
-  glewInfoFunc("glGetFramebufferParameterivEXT", glGetFramebufferParameterivEXT == NULL);
-  glewInfoFunc("glGetMultiTexEnvfvEXT", glGetMultiTexEnvfvEXT == NULL);
-  glewInfoFunc("glGetMultiTexEnvivEXT", glGetMultiTexEnvivEXT == NULL);
-  glewInfoFunc("glGetMultiTexGendvEXT", glGetMultiTexGendvEXT == NULL);
-  glewInfoFunc("glGetMultiTexGenfvEXT", glGetMultiTexGenfvEXT == NULL);
-  glewInfoFunc("glGetMultiTexGenivEXT", glGetMultiTexGenivEXT == NULL);
-  glewInfoFunc("glGetMultiTexImageEXT", glGetMultiTexImageEXT == NULL);
-  glewInfoFunc("glGetMultiTexLevelParameterfvEXT", glGetMultiTexLevelParameterfvEXT == NULL);
-  glewInfoFunc("glGetMultiTexLevelParameterivEXT", glGetMultiTexLevelParameterivEXT == NULL);
-  glewInfoFunc("glGetMultiTexParameterIivEXT", glGetMultiTexParameterIivEXT == NULL);
-  glewInfoFunc("glGetMultiTexParameterIuivEXT", glGetMultiTexParameterIuivEXT == NULL);
-  glewInfoFunc("glGetMultiTexParameterfvEXT", glGetMultiTexParameterfvEXT == NULL);
-  glewInfoFunc("glGetMultiTexParameterivEXT", glGetMultiTexParameterivEXT == NULL);
-  glewInfoFunc("glGetNamedBufferParameterivEXT", glGetNamedBufferParameterivEXT == NULL);
-  glewInfoFunc("glGetNamedBufferPointervEXT", glGetNamedBufferPointervEXT == NULL);
-  glewInfoFunc("glGetNamedBufferSubDataEXT", glGetNamedBufferSubDataEXT == NULL);
-  glewInfoFunc("glGetNamedFramebufferAttachmentParameterivEXT", glGetNamedFramebufferAttachmentParameterivEXT == NULL);
-  glewInfoFunc("glGetNamedProgramLocalParameterIivEXT", glGetNamedProgramLocalParameterIivEXT == NULL);
-  glewInfoFunc("glGetNamedProgramLocalParameterIuivEXT", glGetNamedProgramLocalParameterIuivEXT == NULL);
-  glewInfoFunc("glGetNamedProgramLocalParameterdvEXT", glGetNamedProgramLocalParameterdvEXT == NULL);
-  glewInfoFunc("glGetNamedProgramLocalParameterfvEXT", glGetNamedProgramLocalParameterfvEXT == NULL);
-  glewInfoFunc("glGetNamedProgramStringEXT", glGetNamedProgramStringEXT == NULL);
-  glewInfoFunc("glGetNamedProgramivEXT", glGetNamedProgramivEXT == NULL);
-  glewInfoFunc("glGetNamedRenderbufferParameterivEXT", glGetNamedRenderbufferParameterivEXT == NULL);
-  glewInfoFunc("glGetPointerIndexedvEXT", glGetPointerIndexedvEXT == NULL);
-  glewInfoFunc("glGetPointeri_vEXT", glGetPointeri_vEXT == NULL);
-  glewInfoFunc("glGetTextureImageEXT", glGetTextureImageEXT == NULL);
-  glewInfoFunc("glGetTextureLevelParameterfvEXT", glGetTextureLevelParameterfvEXT == NULL);
-  glewInfoFunc("glGetTextureLevelParameterivEXT", glGetTextureLevelParameterivEXT == NULL);
-  glewInfoFunc("glGetTextureParameterIivEXT", glGetTextureParameterIivEXT == NULL);
-  glewInfoFunc("glGetTextureParameterIuivEXT", glGetTextureParameterIuivEXT == NULL);
-  glewInfoFunc("glGetTextureParameterfvEXT", glGetTextureParameterfvEXT == NULL);
-  glewInfoFunc("glGetTextureParameterivEXT", glGetTextureParameterivEXT == NULL);
-  glewInfoFunc("glGetVertexArrayIntegeri_vEXT", glGetVertexArrayIntegeri_vEXT == NULL);
-  glewInfoFunc("glGetVertexArrayIntegervEXT", glGetVertexArrayIntegervEXT == NULL);
-  glewInfoFunc("glGetVertexArrayPointeri_vEXT", glGetVertexArrayPointeri_vEXT == NULL);
-  glewInfoFunc("glGetVertexArrayPointervEXT", glGetVertexArrayPointervEXT == NULL);
-  glewInfoFunc("glMapNamedBufferEXT", glMapNamedBufferEXT == NULL);
-  glewInfoFunc("glMapNamedBufferRangeEXT", glMapNamedBufferRangeEXT == NULL);
-  glewInfoFunc("glMatrixFrustumEXT", glMatrixFrustumEXT == NULL);
-  glewInfoFunc("glMatrixLoadIdentityEXT", glMatrixLoadIdentityEXT == NULL);
-  glewInfoFunc("glMatrixLoadTransposedEXT", glMatrixLoadTransposedEXT == NULL);
-  glewInfoFunc("glMatrixLoadTransposefEXT", glMatrixLoadTransposefEXT == NULL);
-  glewInfoFunc("glMatrixLoaddEXT", glMatrixLoaddEXT == NULL);
-  glewInfoFunc("glMatrixLoadfEXT", glMatrixLoadfEXT == NULL);
-  glewInfoFunc("glMatrixMultTransposedEXT", glMatrixMultTransposedEXT == NULL);
-  glewInfoFunc("glMatrixMultTransposefEXT", glMatrixMultTransposefEXT == NULL);
-  glewInfoFunc("glMatrixMultdEXT", glMatrixMultdEXT == NULL);
-  glewInfoFunc("glMatrixMultfEXT", glMatrixMultfEXT == NULL);
-  glewInfoFunc("glMatrixOrthoEXT", glMatrixOrthoEXT == NULL);
-  glewInfoFunc("glMatrixPopEXT", glMatrixPopEXT == NULL);
-  glewInfoFunc("glMatrixPushEXT", glMatrixPushEXT == NULL);
-  glewInfoFunc("glMatrixRotatedEXT", glMatrixRotatedEXT == NULL);
-  glewInfoFunc("glMatrixRotatefEXT", glMatrixRotatefEXT == NULL);
-  glewInfoFunc("glMatrixScaledEXT", glMatrixScaledEXT == NULL);
-  glewInfoFunc("glMatrixScalefEXT", glMatrixScalefEXT == NULL);
-  glewInfoFunc("glMatrixTranslatedEXT", glMatrixTranslatedEXT == NULL);
-  glewInfoFunc("glMatrixTranslatefEXT", glMatrixTranslatefEXT == NULL);
-  glewInfoFunc("glMultiTexBufferEXT", glMultiTexBufferEXT == NULL);
-  glewInfoFunc("glMultiTexCoordPointerEXT", glMultiTexCoordPointerEXT == NULL);
-  glewInfoFunc("glMultiTexEnvfEXT", glMultiTexEnvfEXT == NULL);
-  glewInfoFunc("glMultiTexEnvfvEXT", glMultiTexEnvfvEXT == NULL);
-  glewInfoFunc("glMultiTexEnviEXT", glMultiTexEnviEXT == NULL);
-  glewInfoFunc("glMultiTexEnvivEXT", glMultiTexEnvivEXT == NULL);
-  glewInfoFunc("glMultiTexGendEXT", glMultiTexGendEXT == NULL);
-  glewInfoFunc("glMultiTexGendvEXT", glMultiTexGendvEXT == NULL);
-  glewInfoFunc("glMultiTexGenfEXT", glMultiTexGenfEXT == NULL);
-  glewInfoFunc("glMultiTexGenfvEXT", glMultiTexGenfvEXT == NULL);
-  glewInfoFunc("glMultiTexGeniEXT", glMultiTexGeniEXT == NULL);
-  glewInfoFunc("glMultiTexGenivEXT", glMultiTexGenivEXT == NULL);
-  glewInfoFunc("glMultiTexImage1DEXT", glMultiTexImage1DEXT == NULL);
-  glewInfoFunc("glMultiTexImage2DEXT", glMultiTexImage2DEXT == NULL);
-  glewInfoFunc("glMultiTexImage3DEXT", glMultiTexImage3DEXT == NULL);
-  glewInfoFunc("glMultiTexParameterIivEXT", glMultiTexParameterIivEXT == NULL);
-  glewInfoFunc("glMultiTexParameterIuivEXT", glMultiTexParameterIuivEXT == NULL);
-  glewInfoFunc("glMultiTexParameterfEXT", glMultiTexParameterfEXT == NULL);
-  glewInfoFunc("glMultiTexParameterfvEXT", glMultiTexParameterfvEXT == NULL);
-  glewInfoFunc("glMultiTexParameteriEXT", glMultiTexParameteriEXT == NULL);
-  glewInfoFunc("glMultiTexParameterivEXT", glMultiTexParameterivEXT == NULL);
-  glewInfoFunc("glMultiTexRenderbufferEXT", glMultiTexRenderbufferEXT == NULL);
-  glewInfoFunc("glMultiTexSubImage1DEXT", glMultiTexSubImage1DEXT == NULL);
-  glewInfoFunc("glMultiTexSubImage2DEXT", glMultiTexSubImage2DEXT == NULL);
-  glewInfoFunc("glMultiTexSubImage3DEXT", glMultiTexSubImage3DEXT == NULL);
-  glewInfoFunc("glNamedBufferDataEXT", glNamedBufferDataEXT == NULL);
-  glewInfoFunc("glNamedBufferSubDataEXT", glNamedBufferSubDataEXT == NULL);
-  glewInfoFunc("glNamedCopyBufferSubDataEXT", glNamedCopyBufferSubDataEXT == NULL);
-  glewInfoFunc("glNamedFramebufferRenderbufferEXT", glNamedFramebufferRenderbufferEXT == NULL);
-  glewInfoFunc("glNamedFramebufferTexture1DEXT", glNamedFramebufferTexture1DEXT == NULL);
-  glewInfoFunc("glNamedFramebufferTexture2DEXT", glNamedFramebufferTexture2DEXT == NULL);
-  glewInfoFunc("glNamedFramebufferTexture3DEXT", glNamedFramebufferTexture3DEXT == NULL);
-  glewInfoFunc("glNamedFramebufferTextureEXT", glNamedFramebufferTextureEXT == NULL);
-  glewInfoFunc("glNamedFramebufferTextureFaceEXT", glNamedFramebufferTextureFaceEXT == NULL);
-  glewInfoFunc("glNamedFramebufferTextureLayerEXT", glNamedFramebufferTextureLayerEXT == NULL);
-  glewInfoFunc("glNamedProgramLocalParameter4dEXT", glNamedProgramLocalParameter4dEXT == NULL);
-  glewInfoFunc("glNamedProgramLocalParameter4dvEXT", glNamedProgramLocalParameter4dvEXT == NULL);
-  glewInfoFunc("glNamedProgramLocalParameter4fEXT", glNamedProgramLocalParameter4fEXT == NULL);
-  glewInfoFunc("glNamedProgramLocalParameter4fvEXT", glNamedProgramLocalParameter4fvEXT == NULL);
-  glewInfoFunc("glNamedProgramLocalParameterI4iEXT", glNamedProgramLocalParameterI4iEXT == NULL);
-  glewInfoFunc("glNamedProgramLocalParameterI4ivEXT", glNamedProgramLocalParameterI4ivEXT == NULL);
-  glewInfoFunc("glNamedProgramLocalParameterI4uiEXT", glNamedProgramLocalParameterI4uiEXT == NULL);
-  glewInfoFunc("glNamedProgramLocalParameterI4uivEXT", glNamedProgramLocalParameterI4uivEXT == NULL);
-  glewInfoFunc("glNamedProgramLocalParameters4fvEXT", glNamedProgramLocalParameters4fvEXT == NULL);
-  glewInfoFunc("glNamedProgramLocalParametersI4ivEXT", glNamedProgramLocalParametersI4ivEXT == NULL);
-  glewInfoFunc("glNamedProgramLocalParametersI4uivEXT", glNamedProgramLocalParametersI4uivEXT == NULL);
-  glewInfoFunc("glNamedProgramStringEXT", glNamedProgramStringEXT == NULL);
-  glewInfoFunc("glNamedRenderbufferStorageEXT", glNamedRenderbufferStorageEXT == NULL);
-  glewInfoFunc("glNamedRenderbufferStorageMultisampleCoverageEXT", glNamedRenderbufferStorageMultisampleCoverageEXT == NULL);
-  glewInfoFunc("glNamedRenderbufferStorageMultisampleEXT", glNamedRenderbufferStorageMultisampleEXT == NULL);
-  glewInfoFunc("glProgramUniform1fEXT", glProgramUniform1fEXT == NULL);
-  glewInfoFunc("glProgramUniform1fvEXT", glProgramUniform1fvEXT == NULL);
-  glewInfoFunc("glProgramUniform1iEXT", glProgramUniform1iEXT == NULL);
-  glewInfoFunc("glProgramUniform1ivEXT", glProgramUniform1ivEXT == NULL);
-  glewInfoFunc("glProgramUniform1uiEXT", glProgramUniform1uiEXT == NULL);
-  glewInfoFunc("glProgramUniform1uivEXT", glProgramUniform1uivEXT == NULL);
-  glewInfoFunc("glProgramUniform2fEXT", glProgramUniform2fEXT == NULL);
-  glewInfoFunc("glProgramUniform2fvEXT", glProgramUniform2fvEXT == NULL);
-  glewInfoFunc("glProgramUniform2iEXT", glProgramUniform2iEXT == NULL);
-  glewInfoFunc("glProgramUniform2ivEXT", glProgramUniform2ivEXT == NULL);
-  glewInfoFunc("glProgramUniform2uiEXT", glProgramUniform2uiEXT == NULL);
-  glewInfoFunc("glProgramUniform2uivEXT", glProgramUniform2uivEXT == NULL);
-  glewInfoFunc("glProgramUniform3fEXT", glProgramUniform3fEXT == NULL);
-  glewInfoFunc("glProgramUniform3fvEXT", glProgramUniform3fvEXT == NULL);
-  glewInfoFunc("glProgramUniform3iEXT", glProgramUniform3iEXT == NULL);
-  glewInfoFunc("glProgramUniform3ivEXT", glProgramUniform3ivEXT == NULL);
-  glewInfoFunc("glProgramUniform3uiEXT", glProgramUniform3uiEXT == NULL);
-  glewInfoFunc("glProgramUniform3uivEXT", glProgramUniform3uivEXT == NULL);
-  glewInfoFunc("glProgramUniform4fEXT", glProgramUniform4fEXT == NULL);
-  glewInfoFunc("glProgramUniform4fvEXT", glProgramUniform4fvEXT == NULL);
-  glewInfoFunc("glProgramUniform4iEXT", glProgramUniform4iEXT == NULL);
-  glewInfoFunc("glProgramUniform4ivEXT", glProgramUniform4ivEXT == NULL);
-  glewInfoFunc("glProgramUniform4uiEXT", glProgramUniform4uiEXT == NULL);
-  glewInfoFunc("glProgramUniform4uivEXT", glProgramUniform4uivEXT == NULL);
-  glewInfoFunc("glProgramUniformMatrix2fvEXT", glProgramUniformMatrix2fvEXT == NULL);
-  glewInfoFunc("glProgramUniformMatrix2x3fvEXT", glProgramUniformMatrix2x3fvEXT == NULL);
-  glewInfoFunc("glProgramUniformMatrix2x4fvEXT", glProgramUniformMatrix2x4fvEXT == NULL);
-  glewInfoFunc("glProgramUniformMatrix3fvEXT", glProgramUniformMatrix3fvEXT == NULL);
-  glewInfoFunc("glProgramUniformMatrix3x2fvEXT", glProgramUniformMatrix3x2fvEXT == NULL);
-  glewInfoFunc("glProgramUniformMatrix3x4fvEXT", glProgramUniformMatrix3x4fvEXT == NULL);
-  glewInfoFunc("glProgramUniformMatrix4fvEXT", glProgramUniformMatrix4fvEXT == NULL);
-  glewInfoFunc("glProgramUniformMatrix4x2fvEXT", glProgramUniformMatrix4x2fvEXT == NULL);
-  glewInfoFunc("glProgramUniformMatrix4x3fvEXT", glProgramUniformMatrix4x3fvEXT == NULL);
-  glewInfoFunc("glPushClientAttribDefaultEXT", glPushClientAttribDefaultEXT == NULL);
-  glewInfoFunc("glTextureBufferEXT", glTextureBufferEXT == NULL);
-  glewInfoFunc("glTextureImage1DEXT", glTextureImage1DEXT == NULL);
-  glewInfoFunc("glTextureImage2DEXT", glTextureImage2DEXT == NULL);
-  glewInfoFunc("glTextureImage3DEXT", glTextureImage3DEXT == NULL);
-  glewInfoFunc("glTextureParameterIivEXT", glTextureParameterIivEXT == NULL);
-  glewInfoFunc("glTextureParameterIuivEXT", glTextureParameterIuivEXT == NULL);
-  glewInfoFunc("glTextureParameterfEXT", glTextureParameterfEXT == NULL);
-  glewInfoFunc("glTextureParameterfvEXT", glTextureParameterfvEXT == NULL);
-  glewInfoFunc("glTextureParameteriEXT", glTextureParameteriEXT == NULL);
-  glewInfoFunc("glTextureParameterivEXT", glTextureParameterivEXT == NULL);
-  glewInfoFunc("glTextureRenderbufferEXT", glTextureRenderbufferEXT == NULL);
-  glewInfoFunc("glTextureSubImage1DEXT", glTextureSubImage1DEXT == NULL);
-  glewInfoFunc("glTextureSubImage2DEXT", glTextureSubImage2DEXT == NULL);
-  glewInfoFunc("glTextureSubImage3DEXT", glTextureSubImage3DEXT == NULL);
-  glewInfoFunc("glUnmapNamedBufferEXT", glUnmapNamedBufferEXT == NULL);
-  glewInfoFunc("glVertexArrayColorOffsetEXT", glVertexArrayColorOffsetEXT == NULL);
-  glewInfoFunc("glVertexArrayEdgeFlagOffsetEXT", glVertexArrayEdgeFlagOffsetEXT == NULL);
-  glewInfoFunc("glVertexArrayFogCoordOffsetEXT", glVertexArrayFogCoordOffsetEXT == NULL);
-  glewInfoFunc("glVertexArrayIndexOffsetEXT", glVertexArrayIndexOffsetEXT == NULL);
-  glewInfoFunc("glVertexArrayMultiTexCoordOffsetEXT", glVertexArrayMultiTexCoordOffsetEXT == NULL);
-  glewInfoFunc("glVertexArrayNormalOffsetEXT", glVertexArrayNormalOffsetEXT == NULL);
-  glewInfoFunc("glVertexArraySecondaryColorOffsetEXT", glVertexArraySecondaryColorOffsetEXT == NULL);
-  glewInfoFunc("glVertexArrayTexCoordOffsetEXT", glVertexArrayTexCoordOffsetEXT == NULL);
-  glewInfoFunc("glVertexArrayVertexAttribIOffsetEXT", glVertexArrayVertexAttribIOffsetEXT == NULL);
-  glewInfoFunc("glVertexArrayVertexAttribOffsetEXT", glVertexArrayVertexAttribOffsetEXT == NULL);
-  glewInfoFunc("glVertexArrayVertexOffsetEXT", glVertexArrayVertexOffsetEXT == NULL);
-}
-
-#endif /* GL_EXT_direct_state_access */
-
-#ifdef GL_EXT_draw_buffers2
-
-static void _glewInfo_GL_EXT_draw_buffers2 (void)
-{
-  glewPrintExt("GL_EXT_draw_buffers2", GLEW_EXT_draw_buffers2, glewIsSupported("GL_EXT_draw_buffers2"), glewGetExtension("GL_EXT_draw_buffers2"));
-
-  glewInfoFunc("glColorMaskIndexedEXT", glColorMaskIndexedEXT == NULL);
-  glewInfoFunc("glDisableIndexedEXT", glDisableIndexedEXT == NULL);
-  glewInfoFunc("glEnableIndexedEXT", glEnableIndexedEXT == NULL);
-  glewInfoFunc("glGetBooleanIndexedvEXT", glGetBooleanIndexedvEXT == NULL);
-  glewInfoFunc("glGetIntegerIndexedvEXT", glGetIntegerIndexedvEXT == NULL);
-  glewInfoFunc("glIsEnabledIndexedEXT", glIsEnabledIndexedEXT == NULL);
-}
-
-#endif /* GL_EXT_draw_buffers2 */
-
-#ifdef GL_EXT_draw_instanced
-
-static void _glewInfo_GL_EXT_draw_instanced (void)
-{
-  glewPrintExt("GL_EXT_draw_instanced", GLEW_EXT_draw_instanced, glewIsSupported("GL_EXT_draw_instanced"), glewGetExtension("GL_EXT_draw_instanced"));
-
-  glewInfoFunc("glDrawArraysInstancedEXT", glDrawArraysInstancedEXT == NULL);
-  glewInfoFunc("glDrawElementsInstancedEXT", glDrawElementsInstancedEXT == NULL);
-}
-
-#endif /* GL_EXT_draw_instanced */
-
-#ifdef GL_EXT_draw_range_elements
-
-static void _glewInfo_GL_EXT_draw_range_elements (void)
-{
-  glewPrintExt("GL_EXT_draw_range_elements", GLEW_EXT_draw_range_elements, glewIsSupported("GL_EXT_draw_range_elements"), glewGetExtension("GL_EXT_draw_range_elements"));
-
-  glewInfoFunc("glDrawRangeElementsEXT", glDrawRangeElementsEXT == NULL);
-}
-
-#endif /* GL_EXT_draw_range_elements */
-
-#ifdef GL_EXT_fog_coord
-
-static void _glewInfo_GL_EXT_fog_coord (void)
-{
-  glewPrintExt("GL_EXT_fog_coord", GLEW_EXT_fog_coord, glewIsSupported("GL_EXT_fog_coord"), glewGetExtension("GL_EXT_fog_coord"));
-
-  glewInfoFunc("glFogCoordPointerEXT", glFogCoordPointerEXT == NULL);
-  glewInfoFunc("glFogCoorddEXT", glFogCoorddEXT == NULL);
-  glewInfoFunc("glFogCoorddvEXT", glFogCoorddvEXT == NULL);
-  glewInfoFunc("glFogCoordfEXT", glFogCoordfEXT == NULL);
-  glewInfoFunc("glFogCoordfvEXT", glFogCoordfvEXT == NULL);
-}
-
-#endif /* GL_EXT_fog_coord */
-
-#ifdef GL_EXT_fragment_lighting
-
-static void _glewInfo_GL_EXT_fragment_lighting (void)
-{
-  glewPrintExt("GL_EXT_fragment_lighting", GLEW_EXT_fragment_lighting, glewIsSupported("GL_EXT_fragment_lighting"), glewGetExtension("GL_EXT_fragment_lighting"));
-
-  glewInfoFunc("glFragmentColorMaterialEXT", glFragmentColorMaterialEXT == NULL);
-  glewInfoFunc("glFragmentLightModelfEXT", glFragmentLightModelfEXT == NULL);
-  glewInfoFunc("glFragmentLightModelfvEXT", glFragmentLightModelfvEXT == NULL);
-  glewInfoFunc("glFragmentLightModeliEXT", glFragmentLightModeliEXT == NULL);
-  glewInfoFunc("glFragmentLightModelivEXT", glFragmentLightModelivEXT == NULL);
-  glewInfoFunc("glFragmentLightfEXT", glFragmentLightfEXT == NULL);
-  glewInfoFunc("glFragmentLightfvEXT", glFragmentLightfvEXT == NULL);
-  glewInfoFunc("glFragmentLightiEXT", glFragmentLightiEXT == NULL);
-  glewInfoFunc("glFragmentLightivEXT", glFragmentLightivEXT == NULL);
-  glewInfoFunc("glFragmentMaterialfEXT", glFragmentMaterialfEXT == NULL);
-  glewInfoFunc("glFragmentMaterialfvEXT", glFragmentMaterialfvEXT == NULL);
-  glewInfoFunc("glFragmentMaterialiEXT", glFragmentMaterialiEXT == NULL);
-  glewInfoFunc("glFragmentMaterialivEXT", glFragmentMaterialivEXT == NULL);
-  glewInfoFunc("glGetFragmentLightfvEXT", glGetFragmentLightfvEXT == NULL);
-  glewInfoFunc("glGetFragmentLightivEXT", glGetFragmentLightivEXT == NULL);
-  glewInfoFunc("glGetFragmentMaterialfvEXT", glGetFragmentMaterialfvEXT == NULL);
-  glewInfoFunc("glGetFragmentMaterialivEXT", glGetFragmentMaterialivEXT == NULL);
-  glewInfoFunc("glLightEnviEXT", glLightEnviEXT == NULL);
-}
-
-#endif /* GL_EXT_fragment_lighting */
-
-#ifdef GL_EXT_framebuffer_blit
-
-static void _glewInfo_GL_EXT_framebuffer_blit (void)
-{
-  glewPrintExt("GL_EXT_framebuffer_blit", GLEW_EXT_framebuffer_blit, glewIsSupported("GL_EXT_framebuffer_blit"), glewGetExtension("GL_EXT_framebuffer_blit"));
-
-  glewInfoFunc("glBlitFramebufferEXT", glBlitFramebufferEXT == NULL);
-}
-
-#endif /* GL_EXT_framebuffer_blit */
-
-#ifdef GL_EXT_framebuffer_multisample
-
-static void _glewInfo_GL_EXT_framebuffer_multisample (void)
-{
-  glewPrintExt("GL_EXT_framebuffer_multisample", GLEW_EXT_framebuffer_multisample, glewIsSupported("GL_EXT_framebuffer_multisample"), glewGetExtension("GL_EXT_framebuffer_multisample"));
-
-  glewInfoFunc("glRenderbufferStorageMultisampleEXT", glRenderbufferStorageMultisampleEXT == NULL);
-}
-
-#endif /* GL_EXT_framebuffer_multisample */
-
-#ifdef GL_EXT_framebuffer_object
-
-static void _glewInfo_GL_EXT_framebuffer_object (void)
-{
-  glewPrintExt("GL_EXT_framebuffer_object", GLEW_EXT_framebuffer_object, glewIsSupported("GL_EXT_framebuffer_object"), glewGetExtension("GL_EXT_framebuffer_object"));
-
-  glewInfoFunc("glBindFramebufferEXT", glBindFramebufferEXT == NULL);
-  glewInfoFunc("glBindRenderbufferEXT", glBindRenderbufferEXT == NULL);
-  glewInfoFunc("glCheckFramebufferStatusEXT", glCheckFramebufferStatusEXT == NULL);
-  glewInfoFunc("glDeleteFramebuffersEXT", glDeleteFramebuffersEXT == NULL);
-  glewInfoFunc("glDeleteRenderbuffersEXT", glDeleteRenderbuffersEXT == NULL);
-  glewInfoFunc("glFramebufferRenderbufferEXT", glFramebufferRenderbufferEXT == NULL);
-  glewInfoFunc("glFramebufferTexture1DEXT", glFramebufferTexture1DEXT == NULL);
-  glewInfoFunc("glFramebufferTexture2DEXT", glFramebufferTexture2DEXT == NULL);
-  glewInfoFunc("glFramebufferTexture3DEXT", glFramebufferTexture3DEXT == NULL);
-  glewInfoFunc("glGenFramebuffersEXT", glGenFramebuffersEXT == NULL);
-  glewInfoFunc("glGenRenderbuffersEXT", glGenRenderbuffersEXT == NULL);
-  glewInfoFunc("glGenerateMipmapEXT", glGenerateMipmapEXT == NULL);
-  glewInfoFunc("glGetFramebufferAttachmentParameterivEXT", glGetFramebufferAttachmentParameterivEXT == NULL);
-  glewInfoFunc("glGetRenderbufferParameterivEXT", glGetRenderbufferParameterivEXT == NULL);
-  glewInfoFunc("glIsFramebufferEXT", glIsFramebufferEXT == NULL);
-  glewInfoFunc("glIsRenderbufferEXT", glIsRenderbufferEXT == NULL);
-  glewInfoFunc("glRenderbufferStorageEXT", glRenderbufferStorageEXT == NULL);
-}
-
-#endif /* GL_EXT_framebuffer_object */
-
-#ifdef GL_EXT_framebuffer_sRGB
-
-static void _glewInfo_GL_EXT_framebuffer_sRGB (void)
-{
-  glewPrintExt("GL_EXT_framebuffer_sRGB", GLEW_EXT_framebuffer_sRGB, glewIsSupported("GL_EXT_framebuffer_sRGB"), glewGetExtension("GL_EXT_framebuffer_sRGB"));
-}
-
-#endif /* GL_EXT_framebuffer_sRGB */
-
-#ifdef GL_EXT_geometry_shader4
-
-static void _glewInfo_GL_EXT_geometry_shader4 (void)
-{
-  glewPrintExt("GL_EXT_geometry_shader4", GLEW_EXT_geometry_shader4, glewIsSupported("GL_EXT_geometry_shader4"), glewGetExtension("GL_EXT_geometry_shader4"));
-
-  glewInfoFunc("glFramebufferTextureEXT", glFramebufferTextureEXT == NULL);
-  glewInfoFunc("glFramebufferTextureFaceEXT", glFramebufferTextureFaceEXT == NULL);
-  glewInfoFunc("glFramebufferTextureLayerEXT", glFramebufferTextureLayerEXT == NULL);
-  glewInfoFunc("glProgramParameteriEXT", glProgramParameteriEXT == NULL);
-}
-
-#endif /* GL_EXT_geometry_shader4 */
-
-#ifdef GL_EXT_gpu_program_parameters
-
-static void _glewInfo_GL_EXT_gpu_program_parameters (void)
-{
-  glewPrintExt("GL_EXT_gpu_program_parameters", GLEW_EXT_gpu_program_parameters, glewIsSupported("GL_EXT_gpu_program_parameters"), glewGetExtension("GL_EXT_gpu_program_parameters"));
-
-  glewInfoFunc("glProgramEnvParameters4fvEXT", glProgramEnvParameters4fvEXT == NULL);
-  glewInfoFunc("glProgramLocalParameters4fvEXT", glProgramLocalParameters4fvEXT == NULL);
-}
-
-#endif /* GL_EXT_gpu_program_parameters */
-
-#ifdef GL_EXT_gpu_shader4
-
-static void _glewInfo_GL_EXT_gpu_shader4 (void)
-{
-  glewPrintExt("GL_EXT_gpu_shader4", GLEW_EXT_gpu_shader4, glewIsSupported("GL_EXT_gpu_shader4"), glewGetExtension("GL_EXT_gpu_shader4"));
-
-  glewInfoFunc("glBindFragDataLocationEXT", glBindFragDataLocationEXT == NULL);
-  glewInfoFunc("glGetFragDataLocationEXT", glGetFragDataLocationEXT == NULL);
-  glewInfoFunc("glGetUniformuivEXT", glGetUniformuivEXT == NULL);
-  glewInfoFunc("glGetVertexAttribIivEXT", glGetVertexAttribIivEXT == NULL);
-  glewInfoFunc("glGetVertexAttribIuivEXT", glGetVertexAttribIuivEXT == NULL);
-  glewInfoFunc("glUniform1uiEXT", glUniform1uiEXT == NULL);
-  glewInfoFunc("glUniform1uivEXT", glUniform1uivEXT == NULL);
-  glewInfoFunc("glUniform2uiEXT", glUniform2uiEXT == NULL);
-  glewInfoFunc("glUniform2uivEXT", glUniform2uivEXT == NULL);
-  glewInfoFunc("glUniform3uiEXT", glUniform3uiEXT == NULL);
-  glewInfoFunc("glUniform3uivEXT", glUniform3uivEXT == NULL);
-  glewInfoFunc("glUniform4uiEXT", glUniform4uiEXT == NULL);
-  glewInfoFunc("glUniform4uivEXT", glUniform4uivEXT == NULL);
-  glewInfoFunc("glVertexAttribI1iEXT", glVertexAttribI1iEXT == NULL);
-  glewInfoFunc("glVertexAttribI1ivEXT", glVertexAttribI1ivEXT == NULL);
-  glewInfoFunc("glVertexAttribI1uiEXT", glVertexAttribI1uiEXT == NULL);
-  glewInfoFunc("glVertexAttribI1uivEXT", glVertexAttribI1uivEXT == NULL);
-  glewInfoFunc("glVertexAttribI2iEXT", glVertexAttribI2iEXT == NULL);
-  glewInfoFunc("glVertexAttribI2ivEXT", glVertexAttribI2ivEXT == NULL);
-  glewInfoFunc("glVertexAttribI2uiEXT", glVertexAttribI2uiEXT == NULL);
-  glewInfoFunc("glVertexAttribI2uivEXT", glVertexAttribI2uivEXT == NULL);
-  glewInfoFunc("glVertexAttribI3iEXT", glVertexAttribI3iEXT == NULL);
-  glewInfoFunc("glVertexAttribI3ivEXT", glVertexAttribI3ivEXT == NULL);
-  glewInfoFunc("glVertexAttribI3uiEXT", glVertexAttribI3uiEXT == NULL);
-  glewInfoFunc("glVertexAttribI3uivEXT", glVertexAttribI3uivEXT == NULL);
-  glewInfoFunc("glVertexAttribI4bvEXT", glVertexAttribI4bvEXT == NULL);
-  glewInfoFunc("glVertexAttribI4iEXT", glVertexAttribI4iEXT == NULL);
-  glewInfoFunc("glVertexAttribI4ivEXT", glVertexAttribI4ivEXT == NULL);
-  glewInfoFunc("glVertexAttribI4svEXT", glVertexAttribI4svEXT == NULL);
-  glewInfoFunc("glVertexAttribI4ubvEXT", glVertexAttribI4ubvEXT == NULL);
-  glewInfoFunc("glVertexAttribI4uiEXT", glVertexAttribI4uiEXT == NULL);
-  glewInfoFunc("glVertexAttribI4uivEXT", glVertexAttribI4uivEXT == NULL);
-  glewInfoFunc("glVertexAttribI4usvEXT", glVertexAttribI4usvEXT == NULL);
-  glewInfoFunc("glVertexAttribIPointerEXT", glVertexAttribIPointerEXT == NULL);
-}
-
-#endif /* GL_EXT_gpu_shader4 */
-
-#ifdef GL_EXT_histogram
-
-static void _glewInfo_GL_EXT_histogram (void)
-{
-  glewPrintExt("GL_EXT_histogram", GLEW_EXT_histogram, glewIsSupported("GL_EXT_histogram"), glewGetExtension("GL_EXT_histogram"));
-
-  glewInfoFunc("glGetHistogramEXT", glGetHistogramEXT == NULL);
-  glewInfoFunc("glGetHistogramParameterfvEXT", glGetHistogramParameterfvEXT == NULL);
-  glewInfoFunc("glGetHistogramParameterivEXT", glGetHistogramParameterivEXT == NULL);
-  glewInfoFunc("glGetMinmaxEXT", glGetMinmaxEXT == NULL);
-  glewInfoFunc("glGetMinmaxParameterfvEXT", glGetMinmaxParameterfvEXT == NULL);
-  glewInfoFunc("glGetMinmaxParameterivEXT", glGetMinmaxParameterivEXT == NULL);
-  glewInfoFunc("glHistogramEXT", glHistogramEXT == NULL);
-  glewInfoFunc("glMinmaxEXT", glMinmaxEXT == NULL);
-  glewInfoFunc("glResetHistogramEXT", glResetHistogramEXT == NULL);
-  glewInfoFunc("glResetMinmaxEXT", glResetMinmaxEXT == NULL);
-}
-
-#endif /* GL_EXT_histogram */
-
-#ifdef GL_EXT_index_array_formats
-
-static void _glewInfo_GL_EXT_index_array_formats (void)
-{
-  glewPrintExt("GL_EXT_index_array_formats", GLEW_EXT_index_array_formats, glewIsSupported("GL_EXT_index_array_formats"), glewGetExtension("GL_EXT_index_array_formats"));
-}
-
-#endif /* GL_EXT_index_array_formats */
-
-#ifdef GL_EXT_index_func
-
-static void _glewInfo_GL_EXT_index_func (void)
-{
-  glewPrintExt("GL_EXT_index_func", GLEW_EXT_index_func, glewIsSupported("GL_EXT_index_func"), glewGetExtension("GL_EXT_index_func"));
-
-  glewInfoFunc("glIndexFuncEXT", glIndexFuncEXT == NULL);
-}
-
-#endif /* GL_EXT_index_func */
-
-#ifdef GL_EXT_index_material
-
-static void _glewInfo_GL_EXT_index_material (void)
-{
-  glewPrintExt("GL_EXT_index_material", GLEW_EXT_index_material, glewIsSupported("GL_EXT_index_material"), glewGetExtension("GL_EXT_index_material"));
-
-  glewInfoFunc("glIndexMaterialEXT", glIndexMaterialEXT == NULL);
-}
-
-#endif /* GL_EXT_index_material */
-
-#ifdef GL_EXT_index_texture
-
-static void _glewInfo_GL_EXT_index_texture (void)
-{
-  glewPrintExt("GL_EXT_index_texture", GLEW_EXT_index_texture, glewIsSupported("GL_EXT_index_texture"), glewGetExtension("GL_EXT_index_texture"));
-}
-
-#endif /* GL_EXT_index_texture */
-
-#ifdef GL_EXT_light_texture
-
-static void _glewInfo_GL_EXT_light_texture (void)
-{
-  glewPrintExt("GL_EXT_light_texture", GLEW_EXT_light_texture, glewIsSupported("GL_EXT_light_texture"), glewGetExtension("GL_EXT_light_texture"));
-
-  glewInfoFunc("glApplyTextureEXT", glApplyTextureEXT == NULL);
-  glewInfoFunc("glTextureLightEXT", glTextureLightEXT == NULL);
-  glewInfoFunc("glTextureMaterialEXT", glTextureMaterialEXT == NULL);
-}
-
-#endif /* GL_EXT_light_texture */
-
-#ifdef GL_EXT_misc_attribute
-
-static void _glewInfo_GL_EXT_misc_attribute (void)
-{
-  glewPrintExt("GL_EXT_misc_attribute", GLEW_EXT_misc_attribute, glewIsSupported("GL_EXT_misc_attribute"), glewGetExtension("GL_EXT_misc_attribute"));
-}
-
-#endif /* GL_EXT_misc_attribute */
-
-#ifdef GL_EXT_multi_draw_arrays
-
-static void _glewInfo_GL_EXT_multi_draw_arrays (void)
-{
-  glewPrintExt("GL_EXT_multi_draw_arrays", GLEW_EXT_multi_draw_arrays, glewIsSupported("GL_EXT_multi_draw_arrays"), glewGetExtension("GL_EXT_multi_draw_arrays"));
-
-  glewInfoFunc("glMultiDrawArraysEXT", glMultiDrawArraysEXT == NULL);
-  glewInfoFunc("glMultiDrawElementsEXT", glMultiDrawElementsEXT == NULL);
-}
-
-#endif /* GL_EXT_multi_draw_arrays */
-
-#ifdef GL_EXT_multisample
-
-static void _glewInfo_GL_EXT_multisample (void)
-{
-  glewPrintExt("GL_EXT_multisample", GLEW_EXT_multisample, glewIsSupported("GL_EXT_multisample"), glewGetExtension("GL_EXT_multisample"));
-
-  glewInfoFunc("glSampleMaskEXT", glSampleMaskEXT == NULL);
-  glewInfoFunc("glSamplePatternEXT", glSamplePatternEXT == NULL);
-}
-
-#endif /* GL_EXT_multisample */
-
-#ifdef GL_EXT_packed_depth_stencil
-
-static void _glewInfo_GL_EXT_packed_depth_stencil (void)
-{
-  glewPrintExt("GL_EXT_packed_depth_stencil", GLEW_EXT_packed_depth_stencil, glewIsSupported("GL_EXT_packed_depth_stencil"), glewGetExtension("GL_EXT_packed_depth_stencil"));
-}
-
-#endif /* GL_EXT_packed_depth_stencil */
-
-#ifdef GL_EXT_packed_float
-
-static void _glewInfo_GL_EXT_packed_float (void)
-{
-  glewPrintExt("GL_EXT_packed_float", GLEW_EXT_packed_float, glewIsSupported("GL_EXT_packed_float"), glewGetExtension("GL_EXT_packed_float"));
-}
-
-#endif /* GL_EXT_packed_float */
-
-#ifdef GL_EXT_packed_pixels
-
-static void _glewInfo_GL_EXT_packed_pixels (void)
-{
-  glewPrintExt("GL_EXT_packed_pixels", GLEW_EXT_packed_pixels, glewIsSupported("GL_EXT_packed_pixels"), glewGetExtension("GL_EXT_packed_pixels"));
-}
-
-#endif /* GL_EXT_packed_pixels */
-
-#ifdef GL_EXT_paletted_texture
-
-static void _glewInfo_GL_EXT_paletted_texture (void)
-{
-  glewPrintExt("GL_EXT_paletted_texture", GLEW_EXT_paletted_texture, glewIsSupported("GL_EXT_paletted_texture"), glewGetExtension("GL_EXT_paletted_texture"));
-
-  glewInfoFunc("glColorTableEXT", glColorTableEXT == NULL);
-  glewInfoFunc("glGetColorTableEXT", glGetColorTableEXT == NULL);
-  glewInfoFunc("glGetColorTableParameterfvEXT", glGetColorTableParameterfvEXT == NULL);
-  glewInfoFunc("glGetColorTableParameterivEXT", glGetColorTableParameterivEXT == NULL);
-}
-
-#endif /* GL_EXT_paletted_texture */
-
-#ifdef GL_EXT_pixel_buffer_object
-
-static void _glewInfo_GL_EXT_pixel_buffer_object (void)
-{
-  glewPrintExt("GL_EXT_pixel_buffer_object", GLEW_EXT_pixel_buffer_object, glewIsSupported("GL_EXT_pixel_buffer_object"), glewGetExtension("GL_EXT_pixel_buffer_object"));
-}
-
-#endif /* GL_EXT_pixel_buffer_object */
-
-#ifdef GL_EXT_pixel_transform
-
-static void _glewInfo_GL_EXT_pixel_transform (void)
-{
-  glewPrintExt("GL_EXT_pixel_transform", GLEW_EXT_pixel_transform, glewIsSupported("GL_EXT_pixel_transform"), glewGetExtension("GL_EXT_pixel_transform"));
-
-  glewInfoFunc("glGetPixelTransformParameterfvEXT", glGetPixelTransformParameterfvEXT == NULL);
-  glewInfoFunc("glGetPixelTransformParameterivEXT", glGetPixelTransformParameterivEXT == NULL);
-  glewInfoFunc("glPixelTransformParameterfEXT", glPixelTransformParameterfEXT == NULL);
-  glewInfoFunc("glPixelTransformParameterfvEXT", glPixelTransformParameterfvEXT == NULL);
-  glewInfoFunc("glPixelTransformParameteriEXT", glPixelTransformParameteriEXT == NULL);
-  glewInfoFunc("glPixelTransformParameterivEXT", glPixelTransformParameterivEXT == NULL);
-}
-
-#endif /* GL_EXT_pixel_transform */
-
-#ifdef GL_EXT_pixel_transform_color_table
-
-static void _glewInfo_GL_EXT_pixel_transform_color_table (void)
-{
-  glewPrintExt("GL_EXT_pixel_transform_color_table", GLEW_EXT_pixel_transform_color_table, glewIsSupported("GL_EXT_pixel_transform_color_table"), glewGetExtension("GL_EXT_pixel_transform_color_table"));
-}
-
-#endif /* GL_EXT_pixel_transform_color_table */
-
-#ifdef GL_EXT_point_parameters
-
-static void _glewInfo_GL_EXT_point_parameters (void)
-{
-  glewPrintExt("GL_EXT_point_parameters", GLEW_EXT_point_parameters, glewIsSupported("GL_EXT_point_parameters"), glewGetExtension("GL_EXT_point_parameters"));
-
-  glewInfoFunc("glPointParameterfEXT", glPointParameterfEXT == NULL);
-  glewInfoFunc("glPointParameterfvEXT", glPointParameterfvEXT == NULL);
-}
-
-#endif /* GL_EXT_point_parameters */
-
-#ifdef GL_EXT_polygon_offset
-
-static void _glewInfo_GL_EXT_polygon_offset (void)
-{
-  glewPrintExt("GL_EXT_polygon_offset", GLEW_EXT_polygon_offset, glewIsSupported("GL_EXT_polygon_offset"), glewGetExtension("GL_EXT_polygon_offset"));
-
-  glewInfoFunc("glPolygonOffsetEXT", glPolygonOffsetEXT == NULL);
-}
-
-#endif /* GL_EXT_polygon_offset */
-
-#ifdef GL_EXT_provoking_vertex
-
-static void _glewInfo_GL_EXT_provoking_vertex (void)
-{
-  glewPrintExt("GL_EXT_provoking_vertex", GLEW_EXT_provoking_vertex, glewIsSupported("GL_EXT_provoking_vertex"), glewGetExtension("GL_EXT_provoking_vertex"));
-
-  glewInfoFunc("glProvokingVertexEXT", glProvokingVertexEXT == NULL);
-}
-
-#endif /* GL_EXT_provoking_vertex */
-
-#ifdef GL_EXT_rescale_normal
-
-static void _glewInfo_GL_EXT_rescale_normal (void)
-{
-  glewPrintExt("GL_EXT_rescale_normal", GLEW_EXT_rescale_normal, glewIsSupported("GL_EXT_rescale_normal"), glewGetExtension("GL_EXT_rescale_normal"));
-}
-
-#endif /* GL_EXT_rescale_normal */
-
-#ifdef GL_EXT_scene_marker
-
-static void _glewInfo_GL_EXT_scene_marker (void)
-{
-  glewPrintExt("GL_EXT_scene_marker", GLEW_EXT_scene_marker, glewIsSupported("GL_EXT_scene_marker"), glewGetExtension("GL_EXT_scene_marker"));
-
-  glewInfoFunc("glBeginSceneEXT", glBeginSceneEXT == NULL);
-  glewInfoFunc("glEndSceneEXT", glEndSceneEXT == NULL);
-}
-
-#endif /* GL_EXT_scene_marker */
-
-#ifdef GL_EXT_secondary_color
-
-static void _glewInfo_GL_EXT_secondary_color (void)
-{
-  glewPrintExt("GL_EXT_secondary_color", GLEW_EXT_secondary_color, glewIsSupported("GL_EXT_secondary_color"), glewGetExtension("GL_EXT_secondary_color"));
-
-  glewInfoFunc("glSecondaryColor3bEXT", glSecondaryColor3bEXT == NULL);
-  glewInfoFunc("glSecondaryColor3bvEXT", glSecondaryColor3bvEXT == NULL);
-  glewInfoFunc("glSecondaryColor3dEXT", glSecondaryColor3dEXT == NULL);
-  glewInfoFunc("glSecondaryColor3dvEXT", glSecondaryColor3dvEXT == NULL);
-  glewInfoFunc("glSecondaryColor3fEXT", glSecondaryColor3fEXT == NULL);
-  glewInfoFunc("glSecondaryColor3fvEXT", glSecondaryColor3fvEXT == NULL);
-  glewInfoFunc("glSecondaryColor3iEXT", glSecondaryColor3iEXT == NULL);
-  glewInfoFunc("glSecondaryColor3ivEXT", glSecondaryColor3ivEXT == NULL);
-  glewInfoFunc("glSecondaryColor3sEXT", glSecondaryColor3sEXT == NULL);
-  glewInfoFunc("glSecondaryColor3svEXT", glSecondaryColor3svEXT == NULL);
-  glewInfoFunc("glSecondaryColor3ubEXT", glSecondaryColor3ubEXT == NULL);
-  glewInfoFunc("glSecondaryColor3ubvEXT", glSecondaryColor3ubvEXT == NULL);
-  glewInfoFunc("glSecondaryColor3uiEXT", glSecondaryColor3uiEXT == NULL);
-  glewInfoFunc("glSecondaryColor3uivEXT", glSecondaryColor3uivEXT == NULL);
-  glewInfoFunc("glSecondaryColor3usEXT", glSecondaryColor3usEXT == NULL);
-  glewInfoFunc("glSecondaryColor3usvEXT", glSecondaryColor3usvEXT == NULL);
-  glewInfoFunc("glSecondaryColorPointerEXT", glSecondaryColorPointerEXT == NULL);
-}
-
-#endif /* GL_EXT_secondary_color */
-
-#ifdef GL_EXT_separate_shader_objects
-
-static void _glewInfo_GL_EXT_separate_shader_objects (void)
-{
-  glewPrintExt("GL_EXT_separate_shader_objects", GLEW_EXT_separate_shader_objects, glewIsSupported("GL_EXT_separate_shader_objects"), glewGetExtension("GL_EXT_separate_shader_objects"));
-
-  glewInfoFunc("glActiveProgramEXT", glActiveProgramEXT == NULL);
-  glewInfoFunc("glCreateShaderProgramEXT", glCreateShaderProgramEXT == NULL);
-  glewInfoFunc("glUseShaderProgramEXT", glUseShaderProgramEXT == NULL);
-}
-
-#endif /* GL_EXT_separate_shader_objects */
-
-#ifdef GL_EXT_separate_specular_color
-
-static void _glewInfo_GL_EXT_separate_specular_color (void)
-{
-  glewPrintExt("GL_EXT_separate_specular_color", GLEW_EXT_separate_specular_color, glewIsSupported("GL_EXT_separate_specular_color"), glewGetExtension("GL_EXT_separate_specular_color"));
-}
-
-#endif /* GL_EXT_separate_specular_color */
-
-#ifdef GL_EXT_shader_image_load_store
-
-static void _glewInfo_GL_EXT_shader_image_load_store (void)
-{
-  glewPrintExt("GL_EXT_shader_image_load_store", GLEW_EXT_shader_image_load_store, glewIsSupported("GL_EXT_shader_image_load_store"), glewGetExtension("GL_EXT_shader_image_load_store"));
-
-  glewInfoFunc("glBindImageTextureEXT", glBindImageTextureEXT == NULL);
-  glewInfoFunc("glMemoryBarrierEXT", glMemoryBarrierEXT == NULL);
-}
-
-#endif /* GL_EXT_shader_image_load_store */
-
-#ifdef GL_EXT_shadow_funcs
-
-static void _glewInfo_GL_EXT_shadow_funcs (void)
-{
-  glewPrintExt("GL_EXT_shadow_funcs", GLEW_EXT_shadow_funcs, glewIsSupported("GL_EXT_shadow_funcs"), glewGetExtension("GL_EXT_shadow_funcs"));
-}
-
-#endif /* GL_EXT_shadow_funcs */
-
-#ifdef GL_EXT_shared_texture_palette
-
-static void _glewInfo_GL_EXT_shared_texture_palette (void)
-{
-  glewPrintExt("GL_EXT_shared_texture_palette", GLEW_EXT_shared_texture_palette, glewIsSupported("GL_EXT_shared_texture_palette"), glewGetExtension("GL_EXT_shared_texture_palette"));
-}
-
-#endif /* GL_EXT_shared_texture_palette */
-
-#ifdef GL_EXT_stencil_clear_tag
-
-static void _glewInfo_GL_EXT_stencil_clear_tag (void)
-{
-  glewPrintExt("GL_EXT_stencil_clear_tag", GLEW_EXT_stencil_clear_tag, glewIsSupported("GL_EXT_stencil_clear_tag"), glewGetExtension("GL_EXT_stencil_clear_tag"));
-}
-
-#endif /* GL_EXT_stencil_clear_tag */
-
-#ifdef GL_EXT_stencil_two_side
-
-static void _glewInfo_GL_EXT_stencil_two_side (void)
-{
-  glewPrintExt("GL_EXT_stencil_two_side", GLEW_EXT_stencil_two_side, glewIsSupported("GL_EXT_stencil_two_side"), glewGetExtension("GL_EXT_stencil_two_side"));
-
-  glewInfoFunc("glActiveStencilFaceEXT", glActiveStencilFaceEXT == NULL);
-}
-
-#endif /* GL_EXT_stencil_two_side */
-
-#ifdef GL_EXT_stencil_wrap
-
-static void _glewInfo_GL_EXT_stencil_wrap (void)
-{
-  glewPrintExt("GL_EXT_stencil_wrap", GLEW_EXT_stencil_wrap, glewIsSupported("GL_EXT_stencil_wrap"), glewGetExtension("GL_EXT_stencil_wrap"));
-}
-
-#endif /* GL_EXT_stencil_wrap */
-
-#ifdef GL_EXT_subtexture
-
-static void _glewInfo_GL_EXT_subtexture (void)
-{
-  glewPrintExt("GL_EXT_subtexture", GLEW_EXT_subtexture, glewIsSupported("GL_EXT_subtexture"), glewGetExtension("GL_EXT_subtexture"));
-
-  glewInfoFunc("glTexSubImage1DEXT", glTexSubImage1DEXT == NULL);
-  glewInfoFunc("glTexSubImage2DEXT", glTexSubImage2DEXT == NULL);
-  glewInfoFunc("glTexSubImage3DEXT", glTexSubImage3DEXT == NULL);
-}
-
-#endif /* GL_EXT_subtexture */
-
-#ifdef GL_EXT_texture
-
-static void _glewInfo_GL_EXT_texture (void)
-{
-  glewPrintExt("GL_EXT_texture", GLEW_EXT_texture, glewIsSupported("GL_EXT_texture"), glewGetExtension("GL_EXT_texture"));
-}
-
-#endif /* GL_EXT_texture */
-
-#ifdef GL_EXT_texture3D
-
-static void _glewInfo_GL_EXT_texture3D (void)
-{
-  glewPrintExt("GL_EXT_texture3D", GLEW_EXT_texture3D, glewIsSupported("GL_EXT_texture3D"), glewGetExtension("GL_EXT_texture3D"));
-
-  glewInfoFunc("glTexImage3DEXT", glTexImage3DEXT == NULL);
-}
-
-#endif /* GL_EXT_texture3D */
-
-#ifdef GL_EXT_texture_array
-
-static void _glewInfo_GL_EXT_texture_array (void)
-{
-  glewPrintExt("GL_EXT_texture_array", GLEW_EXT_texture_array, glewIsSupported("GL_EXT_texture_array"), glewGetExtension("GL_EXT_texture_array"));
-}
-
-#endif /* GL_EXT_texture_array */
-
-#ifdef GL_EXT_texture_buffer_object
-
-static void _glewInfo_GL_EXT_texture_buffer_object (void)
-{
-  glewPrintExt("GL_EXT_texture_buffer_object", GLEW_EXT_texture_buffer_object, glewIsSupported("GL_EXT_texture_buffer_object"), glewGetExtension("GL_EXT_texture_buffer_object"));
-
-  glewInfoFunc("glTexBufferEXT", glTexBufferEXT == NULL);
-}
-
-#endif /* GL_EXT_texture_buffer_object */
-
-#ifdef GL_EXT_texture_compression_dxt1
-
-static void _glewInfo_GL_EXT_texture_compression_dxt1 (void)
-{
-  glewPrintExt("GL_EXT_texture_compression_dxt1", GLEW_EXT_texture_compression_dxt1, glewIsSupported("GL_EXT_texture_compression_dxt1"), glewGetExtension("GL_EXT_texture_compression_dxt1"));
-}
-
-#endif /* GL_EXT_texture_compression_dxt1 */
-
-#ifdef GL_EXT_texture_compression_latc
-
-static void _glewInfo_GL_EXT_texture_compression_latc (void)
-{
-  glewPrintExt("GL_EXT_texture_compression_latc", GLEW_EXT_texture_compression_latc, glewIsSupported("GL_EXT_texture_compression_latc"), glewGetExtension("GL_EXT_texture_compression_latc"));
-}
-
-#endif /* GL_EXT_texture_compression_latc */
-
-#ifdef GL_EXT_texture_compression_rgtc
-
-static void _glewInfo_GL_EXT_texture_compression_rgtc (void)
-{
-  glewPrintExt("GL_EXT_texture_compression_rgtc", GLEW_EXT_texture_compression_rgtc, glewIsSupported("GL_EXT_texture_compression_rgtc"), glewGetExtension("GL_EXT_texture_compression_rgtc"));
-}
-
-#endif /* GL_EXT_texture_compression_rgtc */
-
-#ifdef GL_EXT_texture_compression_s3tc
-
-static void _glewInfo_GL_EXT_texture_compression_s3tc (void)
-{
-  glewPrintExt("GL_EXT_texture_compression_s3tc", GLEW_EXT_texture_compression_s3tc, glewIsSupported("GL_EXT_texture_compression_s3tc"), glewGetExtension("GL_EXT_texture_compression_s3tc"));
-}
-
-#endif /* GL_EXT_texture_compression_s3tc */
-
-#ifdef GL_EXT_texture_cube_map
-
-static void _glewInfo_GL_EXT_texture_cube_map (void)
-{
-  glewPrintExt("GL_EXT_texture_cube_map", GLEW_EXT_texture_cube_map, glewIsSupported("GL_EXT_texture_cube_map"), glewGetExtension("GL_EXT_texture_cube_map"));
-}
-
-#endif /* GL_EXT_texture_cube_map */
-
-#ifdef GL_EXT_texture_edge_clamp
-
-static void _glewInfo_GL_EXT_texture_edge_clamp (void)
-{
-  glewPrintExt("GL_EXT_texture_edge_clamp", GLEW_EXT_texture_edge_clamp, glewIsSupported("GL_EXT_texture_edge_clamp"), glewGetExtension("GL_EXT_texture_edge_clamp"));
-}
-
-#endif /* GL_EXT_texture_edge_clamp */
-
-#ifdef GL_EXT_texture_env
-
-static void _glewInfo_GL_EXT_texture_env (void)
-{
-  glewPrintExt("GL_EXT_texture_env", GLEW_EXT_texture_env, glewIsSupported("GL_EXT_texture_env"), glewGetExtension("GL_EXT_texture_env"));
-}
-
-#endif /* GL_EXT_texture_env */
-
-#ifdef GL_EXT_texture_env_add
-
-static void _glewInfo_GL_EXT_texture_env_add (void)
-{
-  glewPrintExt("GL_EXT_texture_env_add", GLEW_EXT_texture_env_add, glewIsSupported("GL_EXT_texture_env_add"), glewGetExtension("GL_EXT_texture_env_add"));
-}
-
-#endif /* GL_EXT_texture_env_add */
-
-#ifdef GL_EXT_texture_env_combine
-
-static void _glewInfo_GL_EXT_texture_env_combine (void)
-{
-  glewPrintExt("GL_EXT_texture_env_combine", GLEW_EXT_texture_env_combine, glewIsSupported("GL_EXT_texture_env_combine"), glewGetExtension("GL_EXT_texture_env_combine"));
-}
-
-#endif /* GL_EXT_texture_env_combine */
-
-#ifdef GL_EXT_texture_env_dot3
-
-static void _glewInfo_GL_EXT_texture_env_dot3 (void)
-{
-  glewPrintExt("GL_EXT_texture_env_dot3", GLEW_EXT_texture_env_dot3, glewIsSupported("GL_EXT_texture_env_dot3"), glewGetExtension("GL_EXT_texture_env_dot3"));
-}
-
-#endif /* GL_EXT_texture_env_dot3 */
-
-#ifdef GL_EXT_texture_filter_anisotropic
-
-static void _glewInfo_GL_EXT_texture_filter_anisotropic (void)
-{
-  glewPrintExt("GL_EXT_texture_filter_anisotropic", GLEW_EXT_texture_filter_anisotropic, glewIsSupported("GL_EXT_texture_filter_anisotropic"), glewGetExtension("GL_EXT_texture_filter_anisotropic"));
-}
-
-#endif /* GL_EXT_texture_filter_anisotropic */
-
-#ifdef GL_EXT_texture_integer
-
-static void _glewInfo_GL_EXT_texture_integer (void)
-{
-  glewPrintExt("GL_EXT_texture_integer", GLEW_EXT_texture_integer, glewIsSupported("GL_EXT_texture_integer"), glewGetExtension("GL_EXT_texture_integer"));
-
-  glewInfoFunc("glClearColorIiEXT", glClearColorIiEXT == NULL);
-  glewInfoFunc("glClearColorIuiEXT", glClearColorIuiEXT == NULL);
-  glewInfoFunc("glGetTexParameterIivEXT", glGetTexParameterIivEXT == NULL);
-  glewInfoFunc("glGetTexParameterIuivEXT", glGetTexParameterIuivEXT == NULL);
-  glewInfoFunc("glTexParameterIivEXT", glTexParameterIivEXT == NULL);
-  glewInfoFunc("glTexParameterIuivEXT", glTexParameterIuivEXT == NULL);
-}
-
-#endif /* GL_EXT_texture_integer */
-
-#ifdef GL_EXT_texture_lod_bias
-
-static void _glewInfo_GL_EXT_texture_lod_bias (void)
-{
-  glewPrintExt("GL_EXT_texture_lod_bias", GLEW_EXT_texture_lod_bias, glewIsSupported("GL_EXT_texture_lod_bias"), glewGetExtension("GL_EXT_texture_lod_bias"));
-}
-
-#endif /* GL_EXT_texture_lod_bias */
-
-#ifdef GL_EXT_texture_mirror_clamp
-
-static void _glewInfo_GL_EXT_texture_mirror_clamp (void)
-{
-  glewPrintExt("GL_EXT_texture_mirror_clamp", GLEW_EXT_texture_mirror_clamp, glewIsSupported("GL_EXT_texture_mirror_clamp"), glewGetExtension("GL_EXT_texture_mirror_clamp"));
-}
-
-#endif /* GL_EXT_texture_mirror_clamp */
-
-#ifdef GL_EXT_texture_object
-
-static void _glewInfo_GL_EXT_texture_object (void)
-{
-  glewPrintExt("GL_EXT_texture_object", GLEW_EXT_texture_object, glewIsSupported("GL_EXT_texture_object"), glewGetExtension("GL_EXT_texture_object"));
-
-  glewInfoFunc("glAreTexturesResidentEXT", glAreTexturesResidentEXT == NULL);
-  glewInfoFunc("glBindTextureEXT", glBindTextureEXT == NULL);
-  glewInfoFunc("glDeleteTexturesEXT", glDeleteTexturesEXT == NULL);
-  glewInfoFunc("glGenTexturesEXT", glGenTexturesEXT == NULL);
-  glewInfoFunc("glIsTextureEXT", glIsTextureEXT == NULL);
-  glewInfoFunc("glPrioritizeTexturesEXT", glPrioritizeTexturesEXT == NULL);
-}
-
-#endif /* GL_EXT_texture_object */
-
-#ifdef GL_EXT_texture_perturb_normal
-
-static void _glewInfo_GL_EXT_texture_perturb_normal (void)
-{
-  glewPrintExt("GL_EXT_texture_perturb_normal", GLEW_EXT_texture_perturb_normal, glewIsSupported("GL_EXT_texture_perturb_normal"), glewGetExtension("GL_EXT_texture_perturb_normal"));
-
-  glewInfoFunc("glTextureNormalEXT", glTextureNormalEXT == NULL);
-}
-
-#endif /* GL_EXT_texture_perturb_normal */
-
-#ifdef GL_EXT_texture_rectangle
-
-static void _glewInfo_GL_EXT_texture_rectangle (void)
-{
-  glewPrintExt("GL_EXT_texture_rectangle", GLEW_EXT_texture_rectangle, glewIsSupported("GL_EXT_texture_rectangle"), glewGetExtension("GL_EXT_texture_rectangle"));
-}
-
-#endif /* GL_EXT_texture_rectangle */
-
-#ifdef GL_EXT_texture_sRGB
-
-static void _glewInfo_GL_EXT_texture_sRGB (void)
-{
-  glewPrintExt("GL_EXT_texture_sRGB", GLEW_EXT_texture_sRGB, glewIsSupported("GL_EXT_texture_sRGB"), glewGetExtension("GL_EXT_texture_sRGB"));
-}
-
-#endif /* GL_EXT_texture_sRGB */
-
-#ifdef GL_EXT_texture_shared_exponent
-
-static void _glewInfo_GL_EXT_texture_shared_exponent (void)
-{
-  glewPrintExt("GL_EXT_texture_shared_exponent", GLEW_EXT_texture_shared_exponent, glewIsSupported("GL_EXT_texture_shared_exponent"), glewGetExtension("GL_EXT_texture_shared_exponent"));
-}
-
-#endif /* GL_EXT_texture_shared_exponent */
-
-#ifdef GL_EXT_texture_snorm
-
-static void _glewInfo_GL_EXT_texture_snorm (void)
-{
-  glewPrintExt("GL_EXT_texture_snorm", GLEW_EXT_texture_snorm, glewIsSupported("GL_EXT_texture_snorm"), glewGetExtension("GL_EXT_texture_snorm"));
-}
-
-#endif /* GL_EXT_texture_snorm */
-
-#ifdef GL_EXT_texture_swizzle
-
-static void _glewInfo_GL_EXT_texture_swizzle (void)
-{
-  glewPrintExt("GL_EXT_texture_swizzle", GLEW_EXT_texture_swizzle, glewIsSupported("GL_EXT_texture_swizzle"), glewGetExtension("GL_EXT_texture_swizzle"));
-}
-
-#endif /* GL_EXT_texture_swizzle */
-
-#ifdef GL_EXT_timer_query
-
-static void _glewInfo_GL_EXT_timer_query (void)
-{
-  glewPrintExt("GL_EXT_timer_query", GLEW_EXT_timer_query, glewIsSupported("GL_EXT_timer_query"), glewGetExtension("GL_EXT_timer_query"));
-
-  glewInfoFunc("glGetQueryObjecti64vEXT", glGetQueryObjecti64vEXT == NULL);
-  glewInfoFunc("glGetQueryObjectui64vEXT", glGetQueryObjectui64vEXT == NULL);
-}
-
-#endif /* GL_EXT_timer_query */
-
-#ifdef GL_EXT_transform_feedback
-
-static void _glewInfo_GL_EXT_transform_feedback (void)
-{
-  glewPrintExt("GL_EXT_transform_feedback", GLEW_EXT_transform_feedback, glewIsSupported("GL_EXT_transform_feedback"), glewGetExtension("GL_EXT_transform_feedback"));
-
-  glewInfoFunc("glBeginTransformFeedbackEXT", glBeginTransformFeedbackEXT == NULL);
-  glewInfoFunc("glBindBufferBaseEXT", glBindBufferBaseEXT == NULL);
-  glewInfoFunc("glBindBufferOffsetEXT", glBindBufferOffsetEXT == NULL);
-  glewInfoFunc("glBindBufferRangeEXT", glBindBufferRangeEXT == NULL);
-  glewInfoFunc("glEndTransformFeedbackEXT", glEndTransformFeedbackEXT == NULL);
-  glewInfoFunc("glGetTransformFeedbackVaryingEXT", glGetTransformFeedbackVaryingEXT == NULL);
-  glewInfoFunc("glTransformFeedbackVaryingsEXT", glTransformFeedbackVaryingsEXT == NULL);
-}
-
-#endif /* GL_EXT_transform_feedback */
-
-#ifdef GL_EXT_vertex_array
-
-static void _glewInfo_GL_EXT_vertex_array (void)
-{
-  glewPrintExt("GL_EXT_vertex_array", GLEW_EXT_vertex_array, glewIsSupported("GL_EXT_vertex_array"), glewGetExtension("GL_EXT_vertex_array"));
-
-  glewInfoFunc("glArrayElementEXT", glArrayElementEXT == NULL);
-  glewInfoFunc("glColorPointerEXT", glColorPointerEXT == NULL);
-  glewInfoFunc("glDrawArraysEXT", glDrawArraysEXT == NULL);
-  glewInfoFunc("glEdgeFlagPointerEXT", glEdgeFlagPointerEXT == NULL);
-  glewInfoFunc("glGetPointervEXT", glGetPointervEXT == NULL);
-  glewInfoFunc("glIndexPointerEXT", glIndexPointerEXT == NULL);
-  glewInfoFunc("glNormalPointerEXT", glNormalPointerEXT == NULL);
-  glewInfoFunc("glTexCoordPointerEXT", glTexCoordPointerEXT == NULL);
-  glewInfoFunc("glVertexPointerEXT", glVertexPointerEXT == NULL);
-}
-
-#endif /* GL_EXT_vertex_array */
-
-#ifdef GL_EXT_vertex_array_bgra
-
-static void _glewInfo_GL_EXT_vertex_array_bgra (void)
-{
-  glewPrintExt("GL_EXT_vertex_array_bgra", GLEW_EXT_vertex_array_bgra, glewIsSupported("GL_EXT_vertex_array_bgra"), glewGetExtension("GL_EXT_vertex_array_bgra"));
-}
-
-#endif /* GL_EXT_vertex_array_bgra */
-
-#ifdef GL_EXT_vertex_attrib_64bit
-
-static void _glewInfo_GL_EXT_vertex_attrib_64bit (void)
-{
-  glewPrintExt("GL_EXT_vertex_attrib_64bit", GLEW_EXT_vertex_attrib_64bit, glewIsSupported("GL_EXT_vertex_attrib_64bit"), glewGetExtension("GL_EXT_vertex_attrib_64bit"));
-
-  glewInfoFunc("glGetVertexAttribLdvEXT", glGetVertexAttribLdvEXT == NULL);
-  glewInfoFunc("glVertexArrayVertexAttribLOffsetEXT", glVertexArrayVertexAttribLOffsetEXT == NULL);
-  glewInfoFunc("glVertexAttribL1dEXT", glVertexAttribL1dEXT == NULL);
-  glewInfoFunc("glVertexAttribL1dvEXT", glVertexAttribL1dvEXT == NULL);
-  glewInfoFunc("glVertexAttribL2dEXT", glVertexAttribL2dEXT == NULL);
-  glewInfoFunc("glVertexAttribL2dvEXT", glVertexAttribL2dvEXT == NULL);
-  glewInfoFunc("glVertexAttribL3dEXT", glVertexAttribL3dEXT == NULL);
-  glewInfoFunc("glVertexAttribL3dvEXT", glVertexAttribL3dvEXT == NULL);
-  glewInfoFunc("glVertexAttribL4dEXT", glVertexAttribL4dEXT == NULL);
-  glewInfoFunc("glVertexAttribL4dvEXT", glVertexAttribL4dvEXT == NULL);
-  glewInfoFunc("glVertexAttribLPointerEXT", glVertexAttribLPointerEXT == NULL);
-}
-
-#endif /* GL_EXT_vertex_attrib_64bit */
-
-#ifdef GL_EXT_vertex_shader
-
-static void _glewInfo_GL_EXT_vertex_shader (void)
-{
-  glewPrintExt("GL_EXT_vertex_shader", GLEW_EXT_vertex_shader, glewIsSupported("GL_EXT_vertex_shader"), glewGetExtension("GL_EXT_vertex_shader"));
-
-  glewInfoFunc("glBeginVertexShaderEXT", glBeginVertexShaderEXT == NULL);
-  glewInfoFunc("glBindLightParameterEXT", glBindLightParameterEXT == NULL);
-  glewInfoFunc("glBindMaterialParameterEXT", glBindMaterialParameterEXT == NULL);
-  glewInfoFunc("glBindParameterEXT", glBindParameterEXT == NULL);
-  glewInfoFunc("glBindTexGenParameterEXT", glBindTexGenParameterEXT == NULL);
-  glewInfoFunc("glBindTextureUnitParameterEXT", glBindTextureUnitParameterEXT == NULL);
-  glewInfoFunc("glBindVertexShaderEXT", glBindVertexShaderEXT == NULL);
-  glewInfoFunc("glDeleteVertexShaderEXT", glDeleteVertexShaderEXT == NULL);
-  glewInfoFunc("glDisableVariantClientStateEXT", glDisableVariantClientStateEXT == NULL);
-  glewInfoFunc("glEnableVariantClientStateEXT", glEnableVariantClientStateEXT == NULL);
-  glewInfoFunc("glEndVertexShaderEXT", glEndVertexShaderEXT == NULL);
-  glewInfoFunc("glExtractComponentEXT", glExtractComponentEXT == NULL);
-  glewInfoFunc("glGenSymbolsEXT", glGenSymbolsEXT == NULL);
-  glewInfoFunc("glGenVertexShadersEXT", glGenVertexShadersEXT == NULL);
-  glewInfoFunc("glGetInvariantBooleanvEXT", glGetInvariantBooleanvEXT == NULL);
-  glewInfoFunc("glGetInvariantFloatvEXT", glGetInvariantFloatvEXT == NULL);
-  glewInfoFunc("glGetInvariantIntegervEXT", glGetInvariantIntegervEXT == NULL);
-  glewInfoFunc("glGetLocalConstantBooleanvEXT", glGetLocalConstantBooleanvEXT == NULL);
-  glewInfoFunc("glGetLocalConstantFloatvEXT", glGetLocalConstantFloatvEXT == NULL);
-  glewInfoFunc("glGetLocalConstantIntegervEXT", glGetLocalConstantIntegervEXT == NULL);
-  glewInfoFunc("glGetVariantBooleanvEXT", glGetVariantBooleanvEXT == NULL);
-  glewInfoFunc("glGetVariantFloatvEXT", glGetVariantFloatvEXT == NULL);
-  glewInfoFunc("glGetVariantIntegervEXT", glGetVariantIntegervEXT == NULL);
-  glewInfoFunc("glGetVariantPointervEXT", glGetVariantPointervEXT == NULL);
-  glewInfoFunc("glInsertComponentEXT", glInsertComponentEXT == NULL);
-  glewInfoFunc("glIsVariantEnabledEXT", glIsVariantEnabledEXT == NULL);
-  glewInfoFunc("glSetInvariantEXT", glSetInvariantEXT == NULL);
-  glewInfoFunc("glSetLocalConstantEXT", glSetLocalConstantEXT == NULL);
-  glewInfoFunc("glShaderOp1EXT", glShaderOp1EXT == NULL);
-  glewInfoFunc("glShaderOp2EXT", glShaderOp2EXT == NULL);
-  glewInfoFunc("glShaderOp3EXT", glShaderOp3EXT == NULL);
-  glewInfoFunc("glSwizzleEXT", glSwizzleEXT == NULL);
-  glewInfoFunc("glVariantPointerEXT", glVariantPointerEXT == NULL);
-  glewInfoFunc("glVariantbvEXT", glVariantbvEXT == NULL);
-  glewInfoFunc("glVariantdvEXT", glVariantdvEXT == NULL);
-  glewInfoFunc("glVariantfvEXT", glVariantfvEXT == NULL);
-  glewInfoFunc("glVariantivEXT", glVariantivEXT == NULL);
-  glewInfoFunc("glVariantsvEXT", glVariantsvEXT == NULL);
-  glewInfoFunc("glVariantubvEXT", glVariantubvEXT == NULL);
-  glewInfoFunc("glVariantuivEXT", glVariantuivEXT == NULL);
-  glewInfoFunc("glVariantusvEXT", glVariantusvEXT == NULL);
-  glewInfoFunc("glWriteMaskEXT", glWriteMaskEXT == NULL);
-}
-
-#endif /* GL_EXT_vertex_shader */
-
-#ifdef GL_EXT_vertex_weighting
-
-static void _glewInfo_GL_EXT_vertex_weighting (void)
-{
-  glewPrintExt("GL_EXT_vertex_weighting", GLEW_EXT_vertex_weighting, glewIsSupported("GL_EXT_vertex_weighting"), glewGetExtension("GL_EXT_vertex_weighting"));
-
-  glewInfoFunc("glVertexWeightPointerEXT", glVertexWeightPointerEXT == NULL);
-  glewInfoFunc("glVertexWeightfEXT", glVertexWeightfEXT == NULL);
-  glewInfoFunc("glVertexWeightfvEXT", glVertexWeightfvEXT == NULL);
-}
-
-#endif /* GL_EXT_vertex_weighting */
-
-#ifdef GL_GREMEDY_frame_terminator
-
-static void _glewInfo_GL_GREMEDY_frame_terminator (void)
-{
-  glewPrintExt("GL_GREMEDY_frame_terminator", GLEW_GREMEDY_frame_terminator, glewIsSupported("GL_GREMEDY_frame_terminator"), glewGetExtension("GL_GREMEDY_frame_terminator"));
-
-  glewInfoFunc("glFrameTerminatorGREMEDY", glFrameTerminatorGREMEDY == NULL);
-}
-
-#endif /* GL_GREMEDY_frame_terminator */
-
-#ifdef GL_GREMEDY_string_marker
-
-static void _glewInfo_GL_GREMEDY_string_marker (void)
-{
-  glewPrintExt("GL_GREMEDY_string_marker", GLEW_GREMEDY_string_marker, glewIsSupported("GL_GREMEDY_string_marker"), glewGetExtension("GL_GREMEDY_string_marker"));
-
-  glewInfoFunc("glStringMarkerGREMEDY", glStringMarkerGREMEDY == NULL);
-}
-
-#endif /* GL_GREMEDY_string_marker */
-
-#ifdef GL_HP_convolution_border_modes
-
-static void _glewInfo_GL_HP_convolution_border_modes (void)
-{
-  glewPrintExt("GL_HP_convolution_border_modes", GLEW_HP_convolution_border_modes, glewIsSupported("GL_HP_convolution_border_modes"), glewGetExtension("GL_HP_convolution_border_modes"));
-}
-
-#endif /* GL_HP_convolution_border_modes */
-
-#ifdef GL_HP_image_transform
-
-static void _glewInfo_GL_HP_image_transform (void)
-{
-  glewPrintExt("GL_HP_image_transform", GLEW_HP_image_transform, glewIsSupported("GL_HP_image_transform"), glewGetExtension("GL_HP_image_transform"));
-
-  glewInfoFunc("glGetImageTransformParameterfvHP", glGetImageTransformParameterfvHP == NULL);
-  glewInfoFunc("glGetImageTransformParameterivHP", glGetImageTransformParameterivHP == NULL);
-  glewInfoFunc("glImageTransformParameterfHP", glImageTransformParameterfHP == NULL);
-  glewInfoFunc("glImageTransformParameterfvHP", glImageTransformParameterfvHP == NULL);
-  glewInfoFunc("glImageTransformParameteriHP", glImageTransformParameteriHP == NULL);
-  glewInfoFunc("glImageTransformParameterivHP", glImageTransformParameterivHP == NULL);
-}
-
-#endif /* GL_HP_image_transform */
-
-#ifdef GL_HP_occlusion_test
-
-static void _glewInfo_GL_HP_occlusion_test (void)
-{
-  glewPrintExt("GL_HP_occlusion_test", GLEW_HP_occlusion_test, glewIsSupported("GL_HP_occlusion_test"), glewGetExtension("GL_HP_occlusion_test"));
-}
-
-#endif /* GL_HP_occlusion_test */
-
-#ifdef GL_HP_texture_lighting
-
-static void _glewInfo_GL_HP_texture_lighting (void)
-{
-  glewPrintExt("GL_HP_texture_lighting", GLEW_HP_texture_lighting, glewIsSupported("GL_HP_texture_lighting"), glewGetExtension("GL_HP_texture_lighting"));
-}
-
-#endif /* GL_HP_texture_lighting */
-
-#ifdef GL_IBM_cull_vertex
-
-static void _glewInfo_GL_IBM_cull_vertex (void)
-{
-  glewPrintExt("GL_IBM_cull_vertex", GLEW_IBM_cull_vertex, glewIsSupported("GL_IBM_cull_vertex"), glewGetExtension("GL_IBM_cull_vertex"));
-}
-
-#endif /* GL_IBM_cull_vertex */
-
-#ifdef GL_IBM_multimode_draw_arrays
-
-static void _glewInfo_GL_IBM_multimode_draw_arrays (void)
-{
-  glewPrintExt("GL_IBM_multimode_draw_arrays", GLEW_IBM_multimode_draw_arrays, glewIsSupported("GL_IBM_multimode_draw_arrays"), glewGetExtension("GL_IBM_multimode_draw_arrays"));
-
-  glewInfoFunc("glMultiModeDrawArraysIBM", glMultiModeDrawArraysIBM == NULL);
-  glewInfoFunc("glMultiModeDrawElementsIBM", glMultiModeDrawElementsIBM == NULL);
-}
-
-#endif /* GL_IBM_multimode_draw_arrays */
-
-#ifdef GL_IBM_rasterpos_clip
-
-static void _glewInfo_GL_IBM_rasterpos_clip (void)
-{
-  glewPrintExt("GL_IBM_rasterpos_clip", GLEW_IBM_rasterpos_clip, glewIsSupported("GL_IBM_rasterpos_clip"), glewGetExtension("GL_IBM_rasterpos_clip"));
-}
-
-#endif /* GL_IBM_rasterpos_clip */
-
-#ifdef GL_IBM_static_data
-
-static void _glewInfo_GL_IBM_static_data (void)
-{
-  glewPrintExt("GL_IBM_static_data", GLEW_IBM_static_data, glewIsSupported("GL_IBM_static_data"), glewGetExtension("GL_IBM_static_data"));
-}
-
-#endif /* GL_IBM_static_data */
-
-#ifdef GL_IBM_texture_mirrored_repeat
-
-static void _glewInfo_GL_IBM_texture_mirrored_repeat (void)
-{
-  glewPrintExt("GL_IBM_texture_mirrored_repeat", GLEW_IBM_texture_mirrored_repeat, glewIsSupported("GL_IBM_texture_mirrored_repeat"), glewGetExtension("GL_IBM_texture_mirrored_repeat"));
-}
-
-#endif /* GL_IBM_texture_mirrored_repeat */
-
-#ifdef GL_IBM_vertex_array_lists
-
-static void _glewInfo_GL_IBM_vertex_array_lists (void)
-{
-  glewPrintExt("GL_IBM_vertex_array_lists", GLEW_IBM_vertex_array_lists, glewIsSupported("GL_IBM_vertex_array_lists"), glewGetExtension("GL_IBM_vertex_array_lists"));
-
-  glewInfoFunc("glColorPointerListIBM", glColorPointerListIBM == NULL);
-  glewInfoFunc("glEdgeFlagPointerListIBM", glEdgeFlagPointerListIBM == NULL);
-  glewInfoFunc("glFogCoordPointerListIBM", glFogCoordPointerListIBM == NULL);
-  glewInfoFunc("glIndexPointerListIBM", glIndexPointerListIBM == NULL);
-  glewInfoFunc("glNormalPointerListIBM", glNormalPointerListIBM == NULL);
-  glewInfoFunc("glSecondaryColorPointerListIBM", glSecondaryColorPointerListIBM == NULL);
-  glewInfoFunc("glTexCoordPointerListIBM", glTexCoordPointerListIBM == NULL);
-  glewInfoFunc("glVertexPointerListIBM", glVertexPointerListIBM == NULL);
-}
-
-#endif /* GL_IBM_vertex_array_lists */
-
-#ifdef GL_INGR_color_clamp
-
-static void _glewInfo_GL_INGR_color_clamp (void)
-{
-  glewPrintExt("GL_INGR_color_clamp", GLEW_INGR_color_clamp, glewIsSupported("GL_INGR_color_clamp"), glewGetExtension("GL_INGR_color_clamp"));
-}
-
-#endif /* GL_INGR_color_clamp */
-
-#ifdef GL_INGR_interlace_read
-
-static void _glewInfo_GL_INGR_interlace_read (void)
-{
-  glewPrintExt("GL_INGR_interlace_read", GLEW_INGR_interlace_read, glewIsSupported("GL_INGR_interlace_read"), glewGetExtension("GL_INGR_interlace_read"));
-}
-
-#endif /* GL_INGR_interlace_read */
-
-#ifdef GL_INTEL_parallel_arrays
-
-static void _glewInfo_GL_INTEL_parallel_arrays (void)
-{
-  glewPrintExt("GL_INTEL_parallel_arrays", GLEW_INTEL_parallel_arrays, glewIsSupported("GL_INTEL_parallel_arrays"), glewGetExtension("GL_INTEL_parallel_arrays"));
-
-  glewInfoFunc("glColorPointervINTEL", glColorPointervINTEL == NULL);
-  glewInfoFunc("glNormalPointervINTEL", glNormalPointervINTEL == NULL);
-  glewInfoFunc("glTexCoordPointervINTEL", glTexCoordPointervINTEL == NULL);
-  glewInfoFunc("glVertexPointervINTEL", glVertexPointervINTEL == NULL);
-}
-
-#endif /* GL_INTEL_parallel_arrays */
-
-#ifdef GL_INTEL_texture_scissor
-
-static void _glewInfo_GL_INTEL_texture_scissor (void)
-{
-  glewPrintExt("GL_INTEL_texture_scissor", GLEW_INTEL_texture_scissor, glewIsSupported("GL_INTEL_texture_scissor"), glewGetExtension("GL_INTEL_texture_scissor"));
-
-  glewInfoFunc("glTexScissorFuncINTEL", glTexScissorFuncINTEL == NULL);
-  glewInfoFunc("glTexScissorINTEL", glTexScissorINTEL == NULL);
-}
-
-#endif /* GL_INTEL_texture_scissor */
-
-#ifdef GL_KTX_buffer_region
-
-static void _glewInfo_GL_KTX_buffer_region (void)
-{
-  glewPrintExt("GL_KTX_buffer_region", GLEW_KTX_buffer_region, glewIsSupported("GL_KTX_buffer_region"), glewGetExtension("GL_KTX_buffer_region"));
-
-  glewInfoFunc("glBufferRegionEnabledEXT", glBufferRegionEnabledEXT == NULL);
-  glewInfoFunc("glDeleteBufferRegionEXT", glDeleteBufferRegionEXT == NULL);
-  glewInfoFunc("glDrawBufferRegionEXT", glDrawBufferRegionEXT == NULL);
-  glewInfoFunc("glNewBufferRegionEXT", glNewBufferRegionEXT == NULL);
-  glewInfoFunc("glReadBufferRegionEXT", glReadBufferRegionEXT == NULL);
-}
-
-#endif /* GL_KTX_buffer_region */
-
-#ifdef GL_MESAX_texture_stack
-
-static void _glewInfo_GL_MESAX_texture_stack (void)
-{
-  glewPrintExt("GL_MESAX_texture_stack", GLEW_MESAX_texture_stack, glewIsSupported("GL_MESAX_texture_stack"), glewGetExtension("GL_MESAX_texture_stack"));
-}
-
-#endif /* GL_MESAX_texture_stack */
-
-#ifdef GL_MESA_pack_invert
-
-static void _glewInfo_GL_MESA_pack_invert (void)
-{
-  glewPrintExt("GL_MESA_pack_invert", GLEW_MESA_pack_invert, glewIsSupported("GL_MESA_pack_invert"), glewGetExtension("GL_MESA_pack_invert"));
-}
-
-#endif /* GL_MESA_pack_invert */
-
-#ifdef GL_MESA_resize_buffers
-
-static void _glewInfo_GL_MESA_resize_buffers (void)
-{
-  glewPrintExt("GL_MESA_resize_buffers", GLEW_MESA_resize_buffers, glewIsSupported("GL_MESA_resize_buffers"), glewGetExtension("GL_MESA_resize_buffers"));
-
-  glewInfoFunc("glResizeBuffersMESA", glResizeBuffersMESA == NULL);
-}
-
-#endif /* GL_MESA_resize_buffers */
-
-#ifdef GL_MESA_window_pos
-
-static void _glewInfo_GL_MESA_window_pos (void)
-{
-  glewPrintExt("GL_MESA_window_pos", GLEW_MESA_window_pos, glewIsSupported("GL_MESA_window_pos"), glewGetExtension("GL_MESA_window_pos"));
-
-  glewInfoFunc("glWindowPos2dMESA", glWindowPos2dMESA == NULL);
-  glewInfoFunc("glWindowPos2dvMESA", glWindowPos2dvMESA == NULL);
-  glewInfoFunc("glWindowPos2fMESA", glWindowPos2fMESA == NULL);
-  glewInfoFunc("glWindowPos2fvMESA", glWindowPos2fvMESA == NULL);
-  glewInfoFunc("glWindowPos2iMESA", glWindowPos2iMESA == NULL);
-  glewInfoFunc("glWindowPos2ivMESA", glWindowPos2ivMESA == NULL);
-  glewInfoFunc("glWindowPos2sMESA", glWindowPos2sMESA == NULL);
-  glewInfoFunc("glWindowPos2svMESA", glWindowPos2svMESA == NULL);
-  glewInfoFunc("glWindowPos3dMESA", glWindowPos3dMESA == NULL);
-  glewInfoFunc("glWindowPos3dvMESA", glWindowPos3dvMESA == NULL);
-  glewInfoFunc("glWindowPos3fMESA", glWindowPos3fMESA == NULL);
-  glewInfoFunc("glWindowPos3fvMESA", glWindowPos3fvMESA == NULL);
-  glewInfoFunc("glWindowPos3iMESA", glWindowPos3iMESA == NULL);
-  glewInfoFunc("glWindowPos3ivMESA", glWindowPos3ivMESA == NULL);
-  glewInfoFunc("glWindowPos3sMESA", glWindowPos3sMESA == NULL);
-  glewInfoFunc("glWindowPos3svMESA", glWindowPos3svMESA == NULL);
-  glewInfoFunc("glWindowPos4dMESA", glWindowPos4dMESA == NULL);
-  glewInfoFunc("glWindowPos4dvMESA", glWindowPos4dvMESA == NULL);
-  glewInfoFunc("glWindowPos4fMESA", glWindowPos4fMESA == NULL);
-  glewInfoFunc("glWindowPos4fvMESA", glWindowPos4fvMESA == NULL);
-  glewInfoFunc("glWindowPos4iMESA", glWindowPos4iMESA == NULL);
-  glewInfoFunc("glWindowPos4ivMESA", glWindowPos4ivMESA == NULL);
-  glewInfoFunc("glWindowPos4sMESA", glWindowPos4sMESA == NULL);
-  glewInfoFunc("glWindowPos4svMESA", glWindowPos4svMESA == NULL);
-}
-
-#endif /* GL_MESA_window_pos */
-
-#ifdef GL_MESA_ycbcr_texture
-
-static void _glewInfo_GL_MESA_ycbcr_texture (void)
-{
-  glewPrintExt("GL_MESA_ycbcr_texture", GLEW_MESA_ycbcr_texture, glewIsSupported("GL_MESA_ycbcr_texture"), glewGetExtension("GL_MESA_ycbcr_texture"));
-}
-
-#endif /* GL_MESA_ycbcr_texture */
-
-#ifdef GL_NV_blend_square
-
-static void _glewInfo_GL_NV_blend_square (void)
-{
-  glewPrintExt("GL_NV_blend_square", GLEW_NV_blend_square, glewIsSupported("GL_NV_blend_square"), glewGetExtension("GL_NV_blend_square"));
-}
-
-#endif /* GL_NV_blend_square */
-
-#ifdef GL_NV_conditional_render
-
-static void _glewInfo_GL_NV_conditional_render (void)
-{
-  glewPrintExt("GL_NV_conditional_render", GLEW_NV_conditional_render, glewIsSupported("GL_NV_conditional_render"), glewGetExtension("GL_NV_conditional_render"));
-
-  glewInfoFunc("glBeginConditionalRenderNV", glBeginConditionalRenderNV == NULL);
-  glewInfoFunc("glEndConditionalRenderNV", glEndConditionalRenderNV == NULL);
-}
-
-#endif /* GL_NV_conditional_render */
-
-#ifdef GL_NV_copy_depth_to_color
-
-static void _glewInfo_GL_NV_copy_depth_to_color (void)
-{
-  glewPrintExt("GL_NV_copy_depth_to_color", GLEW_NV_copy_depth_to_color, glewIsSupported("GL_NV_copy_depth_to_color"), glewGetExtension("GL_NV_copy_depth_to_color"));
-}
-
-#endif /* GL_NV_copy_depth_to_color */
-
-#ifdef GL_NV_copy_image
-
-static void _glewInfo_GL_NV_copy_image (void)
-{
-  glewPrintExt("GL_NV_copy_image", GLEW_NV_copy_image, glewIsSupported("GL_NV_copy_image"), glewGetExtension("GL_NV_copy_image"));
-
-  glewInfoFunc("glCopyImageSubDataNV", glCopyImageSubDataNV == NULL);
-}
-
-#endif /* GL_NV_copy_image */
-
-#ifdef GL_NV_depth_buffer_float
-
-static void _glewInfo_GL_NV_depth_buffer_float (void)
-{
-  glewPrintExt("GL_NV_depth_buffer_float", GLEW_NV_depth_buffer_float, glewIsSupported("GL_NV_depth_buffer_float"), glewGetExtension("GL_NV_depth_buffer_float"));
-
-  glewInfoFunc("glClearDepthdNV", glClearDepthdNV == NULL);
-  glewInfoFunc("glDepthBoundsdNV", glDepthBoundsdNV == NULL);
-  glewInfoFunc("glDepthRangedNV", glDepthRangedNV == NULL);
-}
-
-#endif /* GL_NV_depth_buffer_float */
-
-#ifdef GL_NV_depth_clamp
-
-static void _glewInfo_GL_NV_depth_clamp (void)
-{
-  glewPrintExt("GL_NV_depth_clamp", GLEW_NV_depth_clamp, glewIsSupported("GL_NV_depth_clamp"), glewGetExtension("GL_NV_depth_clamp"));
-}
-
-#endif /* GL_NV_depth_clamp */
-
-#ifdef GL_NV_depth_range_unclamped
-
-static void _glewInfo_GL_NV_depth_range_unclamped (void)
-{
-  glewPrintExt("GL_NV_depth_range_unclamped", GLEW_NV_depth_range_unclamped, glewIsSupported("GL_NV_depth_range_unclamped"), glewGetExtension("GL_NV_depth_range_unclamped"));
-}
-
-#endif /* GL_NV_depth_range_unclamped */
-
-#ifdef GL_NV_evaluators
-
-static void _glewInfo_GL_NV_evaluators (void)
-{
-  glewPrintExt("GL_NV_evaluators", GLEW_NV_evaluators, glewIsSupported("GL_NV_evaluators"), glewGetExtension("GL_NV_evaluators"));
-
-  glewInfoFunc("glEvalMapsNV", glEvalMapsNV == NULL);
-  glewInfoFunc("glGetMapAttribParameterfvNV", glGetMapAttribParameterfvNV == NULL);
-  glewInfoFunc("glGetMapAttribParameterivNV", glGetMapAttribParameterivNV == NULL);
-  glewInfoFunc("glGetMapControlPointsNV", glGetMapControlPointsNV == NULL);
-  glewInfoFunc("glGetMapParameterfvNV", glGetMapParameterfvNV == NULL);
-  glewInfoFunc("glGetMapParameterivNV", glGetMapParameterivNV == NULL);
-  glewInfoFunc("glMapControlPointsNV", glMapControlPointsNV == NULL);
-  glewInfoFunc("glMapParameterfvNV", glMapParameterfvNV == NULL);
-  glewInfoFunc("glMapParameterivNV", glMapParameterivNV == NULL);
-}
-
-#endif /* GL_NV_evaluators */
-
-#ifdef GL_NV_explicit_multisample
-
-static void _glewInfo_GL_NV_explicit_multisample (void)
-{
-  glewPrintExt("GL_NV_explicit_multisample", GLEW_NV_explicit_multisample, glewIsSupported("GL_NV_explicit_multisample"), glewGetExtension("GL_NV_explicit_multisample"));
-
-  glewInfoFunc("glGetMultisamplefvNV", glGetMultisamplefvNV == NULL);
-  glewInfoFunc("glSampleMaskIndexedNV", glSampleMaskIndexedNV == NULL);
-  glewInfoFunc("glTexRenderbufferNV", glTexRenderbufferNV == NULL);
-}
-
-#endif /* GL_NV_explicit_multisample */
-
-#ifdef GL_NV_fence
-
-static void _glewInfo_GL_NV_fence (void)
-{
-  glewPrintExt("GL_NV_fence", GLEW_NV_fence, glewIsSupported("GL_NV_fence"), glewGetExtension("GL_NV_fence"));
-
-  glewInfoFunc("glDeleteFencesNV", glDeleteFencesNV == NULL);
-  glewInfoFunc("glFinishFenceNV", glFinishFenceNV == NULL);
-  glewInfoFunc("glGenFencesNV", glGenFencesNV == NULL);
-  glewInfoFunc("glGetFenceivNV", glGetFenceivNV == NULL);
-  glewInfoFunc("glIsFenceNV", glIsFenceNV == NULL);
-  glewInfoFunc("glSetFenceNV", glSetFenceNV == NULL);
-  glewInfoFunc("glTestFenceNV", glTestFenceNV == NULL);
-}
-
-#endif /* GL_NV_fence */
-
-#ifdef GL_NV_float_buffer
-
-static void _glewInfo_GL_NV_float_buffer (void)
-{
-  glewPrintExt("GL_NV_float_buffer", GLEW_NV_float_buffer, glewIsSupported("GL_NV_float_buffer"), glewGetExtension("GL_NV_float_buffer"));
-}
-
-#endif /* GL_NV_float_buffer */
-
-#ifdef GL_NV_fog_distance
-
-static void _glewInfo_GL_NV_fog_distance (void)
-{
-  glewPrintExt("GL_NV_fog_distance", GLEW_NV_fog_distance, glewIsSupported("GL_NV_fog_distance"), glewGetExtension("GL_NV_fog_distance"));
-}
-
-#endif /* GL_NV_fog_distance */
-
-#ifdef GL_NV_fragment_program
-
-static void _glewInfo_GL_NV_fragment_program (void)
-{
-  glewPrintExt("GL_NV_fragment_program", GLEW_NV_fragment_program, glewIsSupported("GL_NV_fragment_program"), glewGetExtension("GL_NV_fragment_program"));
-
-  glewInfoFunc("glGetProgramNamedParameterdvNV", glGetProgramNamedParameterdvNV == NULL);
-  glewInfoFunc("glGetProgramNamedParameterfvNV", glGetProgramNamedParameterfvNV == NULL);
-  glewInfoFunc("glProgramNamedParameter4dNV", glProgramNamedParameter4dNV == NULL);
-  glewInfoFunc("glProgramNamedParameter4dvNV", glProgramNamedParameter4dvNV == NULL);
-  glewInfoFunc("glProgramNamedParameter4fNV", glProgramNamedParameter4fNV == NULL);
-  glewInfoFunc("glProgramNamedParameter4fvNV", glProgramNamedParameter4fvNV == NULL);
-}
-
-#endif /* GL_NV_fragment_program */
-
-#ifdef GL_NV_fragment_program2
-
-static void _glewInfo_GL_NV_fragment_program2 (void)
-{
-  glewPrintExt("GL_NV_fragment_program2", GLEW_NV_fragment_program2, glewIsSupported("GL_NV_fragment_program2"), glewGetExtension("GL_NV_fragment_program2"));
-}
-
-#endif /* GL_NV_fragment_program2 */
-
-#ifdef GL_NV_fragment_program4
-
-static void _glewInfo_GL_NV_fragment_program4 (void)
-{
-  glewPrintExt("GL_NV_fragment_program4", GLEW_NV_fragment_program4, glewIsSupported("GL_NV_fragment_program4"), glewGetExtension("GL_NV_gpu_program4"));
-}
-
-#endif /* GL_NV_fragment_program4 */
-
-#ifdef GL_NV_fragment_program_option
-
-static void _glewInfo_GL_NV_fragment_program_option (void)
-{
-  glewPrintExt("GL_NV_fragment_program_option", GLEW_NV_fragment_program_option, glewIsSupported("GL_NV_fragment_program_option"), glewGetExtension("GL_NV_fragment_program_option"));
-}
-
-#endif /* GL_NV_fragment_program_option */
-
-#ifdef GL_NV_framebuffer_multisample_coverage
-
-static void _glewInfo_GL_NV_framebuffer_multisample_coverage (void)
-{
-  glewPrintExt("GL_NV_framebuffer_multisample_coverage", GLEW_NV_framebuffer_multisample_coverage, glewIsSupported("GL_NV_framebuffer_multisample_coverage"), glewGetExtension("GL_NV_framebuffer_multisample_coverage"));
-
-  glewInfoFunc("glRenderbufferStorageMultisampleCoverageNV", glRenderbufferStorageMultisampleCoverageNV == NULL);
-}
-
-#endif /* GL_NV_framebuffer_multisample_coverage */
-
-#ifdef GL_NV_geometry_program4
-
-static void _glewInfo_GL_NV_geometry_program4 (void)
-{
-  glewPrintExt("GL_NV_geometry_program4", GLEW_NV_geometry_program4, glewIsSupported("GL_NV_geometry_program4"), glewGetExtension("GL_NV_gpu_program4"));
-
-  glewInfoFunc("glProgramVertexLimitNV", glProgramVertexLimitNV == NULL);
-}
-
-#endif /* GL_NV_geometry_program4 */
-
-#ifdef GL_NV_geometry_shader4
-
-static void _glewInfo_GL_NV_geometry_shader4 (void)
-{
-  glewPrintExt("GL_NV_geometry_shader4", GLEW_NV_geometry_shader4, glewIsSupported("GL_NV_geometry_shader4"), glewGetExtension("GL_NV_geometry_shader4"));
-}
-
-#endif /* GL_NV_geometry_shader4 */
-
-#ifdef GL_NV_gpu_program4
-
-static void _glewInfo_GL_NV_gpu_program4 (void)
-{
-  glewPrintExt("GL_NV_gpu_program4", GLEW_NV_gpu_program4, glewIsSupported("GL_NV_gpu_program4"), glewGetExtension("GL_NV_gpu_program4"));
-
-  glewInfoFunc("glProgramEnvParameterI4iNV", glProgramEnvParameterI4iNV == NULL);
-  glewInfoFunc("glProgramEnvParameterI4ivNV", glProgramEnvParameterI4ivNV == NULL);
-  glewInfoFunc("glProgramEnvParameterI4uiNV", glProgramEnvParameterI4uiNV == NULL);
-  glewInfoFunc("glProgramEnvParameterI4uivNV", glProgramEnvParameterI4uivNV == NULL);
-  glewInfoFunc("glProgramEnvParametersI4ivNV", glProgramEnvParametersI4ivNV == NULL);
-  glewInfoFunc("glProgramEnvParametersI4uivNV", glProgramEnvParametersI4uivNV == NULL);
-  glewInfoFunc("glProgramLocalParameterI4iNV", glProgramLocalParameterI4iNV == NULL);
-  glewInfoFunc("glProgramLocalParameterI4ivNV", glProgramLocalParameterI4ivNV == NULL);
-  glewInfoFunc("glProgramLocalParameterI4uiNV", glProgramLocalParameterI4uiNV == NULL);
-  glewInfoFunc("glProgramLocalParameterI4uivNV", glProgramLocalParameterI4uivNV == NULL);
-  glewInfoFunc("glProgramLocalParametersI4ivNV", glProgramLocalParametersI4ivNV == NULL);
-  glewInfoFunc("glProgramLocalParametersI4uivNV", glProgramLocalParametersI4uivNV == NULL);
-}
-
-#endif /* GL_NV_gpu_program4 */
-
-#ifdef GL_NV_gpu_program5
-
-static void _glewInfo_GL_NV_gpu_program5 (void)
-{
-  glewPrintExt("GL_NV_gpu_program5", GLEW_NV_gpu_program5, glewIsSupported("GL_NV_gpu_program5"), glewGetExtension("GL_NV_gpu_program5"));
-}
-
-#endif /* GL_NV_gpu_program5 */
-
-#ifdef GL_NV_gpu_program_fp64
-
-static void _glewInfo_GL_NV_gpu_program_fp64 (void)
-{
-  glewPrintExt("GL_NV_gpu_program_fp64", GLEW_NV_gpu_program_fp64, glewIsSupported("GL_NV_gpu_program_fp64"), glewGetExtension("GL_NV_gpu_program_fp64"));
-}
-
-#endif /* GL_NV_gpu_program_fp64 */
-
-#ifdef GL_NV_gpu_shader5
-
-static void _glewInfo_GL_NV_gpu_shader5 (void)
-{
-  glewPrintExt("GL_NV_gpu_shader5", GLEW_NV_gpu_shader5, glewIsSupported("GL_NV_gpu_shader5"), glewGetExtension("GL_NV_gpu_shader5"));
-
-  glewInfoFunc("glGetUniformi64vNV", glGetUniformi64vNV == NULL);
-  glewInfoFunc("glGetUniformui64vNV", glGetUniformui64vNV == NULL);
-  glewInfoFunc("glProgramUniform1i64NV", glProgramUniform1i64NV == NULL);
-  glewInfoFunc("glProgramUniform1i64vNV", glProgramUniform1i64vNV == NULL);
-  glewInfoFunc("glProgramUniform1ui64NV", glProgramUniform1ui64NV == NULL);
-  glewInfoFunc("glProgramUniform1ui64vNV", glProgramUniform1ui64vNV == NULL);
-  glewInfoFunc("glProgramUniform2i64NV", glProgramUniform2i64NV == NULL);
-  glewInfoFunc("glProgramUniform2i64vNV", glProgramUniform2i64vNV == NULL);
-  glewInfoFunc("glProgramUniform2ui64NV", glProgramUniform2ui64NV == NULL);
-  glewInfoFunc("glProgramUniform2ui64vNV", glProgramUniform2ui64vNV == NULL);
-  glewInfoFunc("glProgramUniform3i64NV", glProgramUniform3i64NV == NULL);
-  glewInfoFunc("glProgramUniform3i64vNV", glProgramUniform3i64vNV == NULL);
-  glewInfoFunc("glProgramUniform3ui64NV", glProgramUniform3ui64NV == NULL);
-  glewInfoFunc("glProgramUniform3ui64vNV", glProgramUniform3ui64vNV == NULL);
-  glewInfoFunc("glProgramUniform4i64NV", glProgramUniform4i64NV == NULL);
-  glewInfoFunc("glProgramUniform4i64vNV", glProgramUniform4i64vNV == NULL);
-  glewInfoFunc("glProgramUniform4ui64NV", glProgramUniform4ui64NV == NULL);
-  glewInfoFunc("glProgramUniform4ui64vNV", glProgramUniform4ui64vNV == NULL);
-  glewInfoFunc("glUniform1i64NV", glUniform1i64NV == NULL);
-  glewInfoFunc("glUniform1i64vNV", glUniform1i64vNV == NULL);
-  glewInfoFunc("glUniform1ui64NV", glUniform1ui64NV == NULL);
-  glewInfoFunc("glUniform1ui64vNV", glUniform1ui64vNV == NULL);
-  glewInfoFunc("glUniform2i64NV", glUniform2i64NV == NULL);
-  glewInfoFunc("glUniform2i64vNV", glUniform2i64vNV == NULL);
-  glewInfoFunc("glUniform2ui64NV", glUniform2ui64NV == NULL);
-  glewInfoFunc("glUniform2ui64vNV", glUniform2ui64vNV == NULL);
-  glewInfoFunc("glUniform3i64NV", glUniform3i64NV == NULL);
-  glewInfoFunc("glUniform3i64vNV", glUniform3i64vNV == NULL);
-  glewInfoFunc("glUniform3ui64NV", glUniform3ui64NV == NULL);
-  glewInfoFunc("glUniform3ui64vNV", glUniform3ui64vNV == NULL);
-  glewInfoFunc("glUniform4i64NV", glUniform4i64NV == NULL);
-  glewInfoFunc("glUniform4i64vNV", glUniform4i64vNV == NULL);
-  glewInfoFunc("glUniform4ui64NV", glUniform4ui64NV == NULL);
-  glewInfoFunc("glUniform4ui64vNV", glUniform4ui64vNV == NULL);
-}
-
-#endif /* GL_NV_gpu_shader5 */
-
-#ifdef GL_NV_half_float
-
-static void _glewInfo_GL_NV_half_float (void)
-{
-  glewPrintExt("GL_NV_half_float", GLEW_NV_half_float, glewIsSupported("GL_NV_half_float"), glewGetExtension("GL_NV_half_float"));
-
-  glewInfoFunc("glColor3hNV", glColor3hNV == NULL);
-  glewInfoFunc("glColor3hvNV", glColor3hvNV == NULL);
-  glewInfoFunc("glColor4hNV", glColor4hNV == NULL);
-  glewInfoFunc("glColor4hvNV", glColor4hvNV == NULL);
-  glewInfoFunc("glFogCoordhNV", glFogCoordhNV == NULL);
-  glewInfoFunc("glFogCoordhvNV", glFogCoordhvNV == NULL);
-  glewInfoFunc("glMultiTexCoord1hNV", glMultiTexCoord1hNV == NULL);
-  glewInfoFunc("glMultiTexCoord1hvNV", glMultiTexCoord1hvNV == NULL);
-  glewInfoFunc("glMultiTexCoord2hNV", glMultiTexCoord2hNV == NULL);
-  glewInfoFunc("glMultiTexCoord2hvNV", glMultiTexCoord2hvNV == NULL);
-  glewInfoFunc("glMultiTexCoord3hNV", glMultiTexCoord3hNV == NULL);
-  glewInfoFunc("glMultiTexCoord3hvNV", glMultiTexCoord3hvNV == NULL);
-  glewInfoFunc("glMultiTexCoord4hNV", glMultiTexCoord4hNV == NULL);
-  glewInfoFunc("glMultiTexCoord4hvNV", glMultiTexCoord4hvNV == NULL);
-  glewInfoFunc("glNormal3hNV", glNormal3hNV == NULL);
-  glewInfoFunc("glNormal3hvNV", glNormal3hvNV == NULL);
-  glewInfoFunc("glSecondaryColor3hNV", glSecondaryColor3hNV == NULL);
-  glewInfoFunc("glSecondaryColor3hvNV", glSecondaryColor3hvNV == NULL);
-  glewInfoFunc("glTexCoord1hNV", glTexCoord1hNV == NULL);
-  glewInfoFunc("glTexCoord1hvNV", glTexCoord1hvNV == NULL);
-  glewInfoFunc("glTexCoord2hNV", glTexCoord2hNV == NULL);
-  glewInfoFunc("glTexCoord2hvNV", glTexCoord2hvNV == NULL);
-  glewInfoFunc("glTexCoord3hNV", glTexCoord3hNV == NULL);
-  glewInfoFunc("glTexCoord3hvNV", glTexCoord3hvNV == NULL);
-  glewInfoFunc("glTexCoord4hNV", glTexCoord4hNV == NULL);
-  glewInfoFunc("glTexCoord4hvNV", glTexCoord4hvNV == NULL);
-  glewInfoFunc("glVertex2hNV", glVertex2hNV == NULL);
-  glewInfoFunc("glVertex2hvNV", glVertex2hvNV == NULL);
-  glewInfoFunc("glVertex3hNV", glVertex3hNV == NULL);
-  glewInfoFunc("glVertex3hvNV", glVertex3hvNV == NULL);
-  glewInfoFunc("glVertex4hNV", glVertex4hNV == NULL);
-  glewInfoFunc("glVertex4hvNV", glVertex4hvNV == NULL);
-  glewInfoFunc("glVertexAttrib1hNV", glVertexAttrib1hNV == NULL);
-  glewInfoFunc("glVertexAttrib1hvNV", glVertexAttrib1hvNV == NULL);
-  glewInfoFunc("glVertexAttrib2hNV", glVertexAttrib2hNV == NULL);
-  glewInfoFunc("glVertexAttrib2hvNV", glVertexAttrib2hvNV == NULL);
-  glewInfoFunc("glVertexAttrib3hNV", glVertexAttrib3hNV == NULL);
-  glewInfoFunc("glVertexAttrib3hvNV", glVertexAttrib3hvNV == NULL);
-  glewInfoFunc("glVertexAttrib4hNV", glVertexAttrib4hNV == NULL);
-  glewInfoFunc("glVertexAttrib4hvNV", glVertexAttrib4hvNV == NULL);
-  glewInfoFunc("glVertexAttribs1hvNV", glVertexAttribs1hvNV == NULL);
-  glewInfoFunc("glVertexAttribs2hvNV", glVertexAttribs2hvNV == NULL);
-  glewInfoFunc("glVertexAttribs3hvNV", glVertexAttribs3hvNV == NULL);
-  glewInfoFunc("glVertexAttribs4hvNV", glVertexAttribs4hvNV == NULL);
-  glewInfoFunc("glVertexWeighthNV", glVertexWeighthNV == NULL);
-  glewInfoFunc("glVertexWeighthvNV", glVertexWeighthvNV == NULL);
-}
-
-#endif /* GL_NV_half_float */
-
-#ifdef GL_NV_light_max_exponent
-
-static void _glewInfo_GL_NV_light_max_exponent (void)
-{
-  glewPrintExt("GL_NV_light_max_exponent", GLEW_NV_light_max_exponent, glewIsSupported("GL_NV_light_max_exponent"), glewGetExtension("GL_NV_light_max_exponent"));
-}
-
-#endif /* GL_NV_light_max_exponent */
-
-#ifdef GL_NV_multisample_filter_hint
-
-static void _glewInfo_GL_NV_multisample_filter_hint (void)
-{
-  glewPrintExt("GL_NV_multisample_filter_hint", GLEW_NV_multisample_filter_hint, glewIsSupported("GL_NV_multisample_filter_hint"), glewGetExtension("GL_NV_multisample_filter_hint"));
-}
-
-#endif /* GL_NV_multisample_filter_hint */
-
-#ifdef GL_NV_occlusion_query
-
-static void _glewInfo_GL_NV_occlusion_query (void)
-{
-  glewPrintExt("GL_NV_occlusion_query", GLEW_NV_occlusion_query, glewIsSupported("GL_NV_occlusion_query"), glewGetExtension("GL_NV_occlusion_query"));
-
-  glewInfoFunc("glBeginOcclusionQueryNV", glBeginOcclusionQueryNV == NULL);
-  glewInfoFunc("glDeleteOcclusionQueriesNV", glDeleteOcclusionQueriesNV == NULL);
-  glewInfoFunc("glEndOcclusionQueryNV", glEndOcclusionQueryNV == NULL);
-  glewInfoFunc("glGenOcclusionQueriesNV", glGenOcclusionQueriesNV == NULL);
-  glewInfoFunc("glGetOcclusionQueryivNV", glGetOcclusionQueryivNV == NULL);
-  glewInfoFunc("glGetOcclusionQueryuivNV", glGetOcclusionQueryuivNV == NULL);
-  glewInfoFunc("glIsOcclusionQueryNV", glIsOcclusionQueryNV == NULL);
-}
-
-#endif /* GL_NV_occlusion_query */
-
-#ifdef GL_NV_packed_depth_stencil
-
-static void _glewInfo_GL_NV_packed_depth_stencil (void)
-{
-  glewPrintExt("GL_NV_packed_depth_stencil", GLEW_NV_packed_depth_stencil, glewIsSupported("GL_NV_packed_depth_stencil"), glewGetExtension("GL_NV_packed_depth_stencil"));
-}
-
-#endif /* GL_NV_packed_depth_stencil */
-
-#ifdef GL_NV_parameter_buffer_object
-
-static void _glewInfo_GL_NV_parameter_buffer_object (void)
-{
-  glewPrintExt("GL_NV_parameter_buffer_object", GLEW_NV_parameter_buffer_object, glewIsSupported("GL_NV_parameter_buffer_object"), glewGetExtension("GL_NV_parameter_buffer_object"));
-
-  glewInfoFunc("glProgramBufferParametersIivNV", glProgramBufferParametersIivNV == NULL);
-  glewInfoFunc("glProgramBufferParametersIuivNV", glProgramBufferParametersIuivNV == NULL);
-  glewInfoFunc("glProgramBufferParametersfvNV", glProgramBufferParametersfvNV == NULL);
-}
-
-#endif /* GL_NV_parameter_buffer_object */
-
-#ifdef GL_NV_parameter_buffer_object2
-
-static void _glewInfo_GL_NV_parameter_buffer_object2 (void)
-{
-  glewPrintExt("GL_NV_parameter_buffer_object2", GLEW_NV_parameter_buffer_object2, glewIsSupported("GL_NV_parameter_buffer_object2"), glewGetExtension("GL_NV_parameter_buffer_object2"));
-}
-
-#endif /* GL_NV_parameter_buffer_object2 */
-
-#ifdef GL_NV_pixel_data_range
-
-static void _glewInfo_GL_NV_pixel_data_range (void)
-{
-  glewPrintExt("GL_NV_pixel_data_range", GLEW_NV_pixel_data_range, glewIsSupported("GL_NV_pixel_data_range"), glewGetExtension("GL_NV_pixel_data_range"));
-
-  glewInfoFunc("glFlushPixelDataRangeNV", glFlushPixelDataRangeNV == NULL);
-  glewInfoFunc("glPixelDataRangeNV", glPixelDataRangeNV == NULL);
-}
-
-#endif /* GL_NV_pixel_data_range */
-
-#ifdef GL_NV_point_sprite
-
-static void _glewInfo_GL_NV_point_sprite (void)
-{
-  glewPrintExt("GL_NV_point_sprite", GLEW_NV_point_sprite, glewIsSupported("GL_NV_point_sprite"), glewGetExtension("GL_NV_point_sprite"));
-
-  glewInfoFunc("glPointParameteriNV", glPointParameteriNV == NULL);
-  glewInfoFunc("glPointParameterivNV", glPointParameterivNV == NULL);
-}
-
-#endif /* GL_NV_point_sprite */
-
-#ifdef GL_NV_present_video
-
-static void _glewInfo_GL_NV_present_video (void)
-{
-  glewPrintExt("GL_NV_present_video", GLEW_NV_present_video, glewIsSupported("GL_NV_present_video"), glewGetExtension("GL_NV_present_video"));
-
-  glewInfoFunc("glGetVideoi64vNV", glGetVideoi64vNV == NULL);
-  glewInfoFunc("glGetVideoivNV", glGetVideoivNV == NULL);
-  glewInfoFunc("glGetVideoui64vNV", glGetVideoui64vNV == NULL);
-  glewInfoFunc("glGetVideouivNV", glGetVideouivNV == NULL);
-  glewInfoFunc("glPresentFrameDualFillNV", glPresentFrameDualFillNV == NULL);
-  glewInfoFunc("glPresentFrameKeyedNV", glPresentFrameKeyedNV == NULL);
-}
-
-#endif /* GL_NV_present_video */
-
-#ifdef GL_NV_primitive_restart
-
-static void _glewInfo_GL_NV_primitive_restart (void)
-{
-  glewPrintExt("GL_NV_primitive_restart", GLEW_NV_primitive_restart, glewIsSupported("GL_NV_primitive_restart"), glewGetExtension("GL_NV_primitive_restart"));
-
-  glewInfoFunc("glPrimitiveRestartIndexNV", glPrimitiveRestartIndexNV == NULL);
-  glewInfoFunc("glPrimitiveRestartNV", glPrimitiveRestartNV == NULL);
-}
-
-#endif /* GL_NV_primitive_restart */
-
-#ifdef GL_NV_register_combiners
-
-static void _glewInfo_GL_NV_register_combiners (void)
-{
-  glewPrintExt("GL_NV_register_combiners", GLEW_NV_register_combiners, glewIsSupported("GL_NV_register_combiners"), glewGetExtension("GL_NV_register_combiners"));
-
-  glewInfoFunc("glCombinerInputNV", glCombinerInputNV == NULL);
-  glewInfoFunc("glCombinerOutputNV", glCombinerOutputNV == NULL);
-  glewInfoFunc("glCombinerParameterfNV", glCombinerParameterfNV == NULL);
-  glewInfoFunc("glCombinerParameterfvNV", glCombinerParameterfvNV == NULL);
-  glewInfoFunc("glCombinerParameteriNV", glCombinerParameteriNV == NULL);
-  glewInfoFunc("glCombinerParameterivNV", glCombinerParameterivNV == NULL);
-  glewInfoFunc("glFinalCombinerInputNV", glFinalCombinerInputNV == NULL);
-  glewInfoFunc("glGetCombinerInputParameterfvNV", glGetCombinerInputParameterfvNV == NULL);
-  glewInfoFunc("glGetCombinerInputParameterivNV", glGetCombinerInputParameterivNV == NULL);
-  glewInfoFunc("glGetCombinerOutputParameterfvNV", glGetCombinerOutputParameterfvNV == NULL);
-  glewInfoFunc("glGetCombinerOutputParameterivNV", glGetCombinerOutputParameterivNV == NULL);
-  glewInfoFunc("glGetFinalCombinerInputParameterfvNV", glGetFinalCombinerInputParameterfvNV == NULL);
-  glewInfoFunc("glGetFinalCombinerInputParameterivNV", glGetFinalCombinerInputParameterivNV == NULL);
-}
-
-#endif /* GL_NV_register_combiners */
-
-#ifdef GL_NV_register_combiners2
-
-static void _glewInfo_GL_NV_register_combiners2 (void)
-{
-  glewPrintExt("GL_NV_register_combiners2", GLEW_NV_register_combiners2, glewIsSupported("GL_NV_register_combiners2"), glewGetExtension("GL_NV_register_combiners2"));
-
-  glewInfoFunc("glCombinerStageParameterfvNV", glCombinerStageParameterfvNV == NULL);
-  glewInfoFunc("glGetCombinerStageParameterfvNV", glGetCombinerStageParameterfvNV == NULL);
-}
-
-#endif /* GL_NV_register_combiners2 */
-
-#ifdef GL_NV_shader_buffer_load
-
-static void _glewInfo_GL_NV_shader_buffer_load (void)
-{
-  glewPrintExt("GL_NV_shader_buffer_load", GLEW_NV_shader_buffer_load, glewIsSupported("GL_NV_shader_buffer_load"), glewGetExtension("GL_NV_shader_buffer_load"));
-
-  glewInfoFunc("glGetBufferParameterui64vNV", glGetBufferParameterui64vNV == NULL);
-  glewInfoFunc("glGetIntegerui64vNV", glGetIntegerui64vNV == NULL);
-  glewInfoFunc("glGetNamedBufferParameterui64vNV", glGetNamedBufferParameterui64vNV == NULL);
-  glewInfoFunc("glIsBufferResidentNV", glIsBufferResidentNV == NULL);
-  glewInfoFunc("glIsNamedBufferResidentNV", glIsNamedBufferResidentNV == NULL);
-  glewInfoFunc("glMakeBufferNonResidentNV", glMakeBufferNonResidentNV == NULL);
-  glewInfoFunc("glMakeBufferResidentNV", glMakeBufferResidentNV == NULL);
-  glewInfoFunc("glMakeNamedBufferNonResidentNV", glMakeNamedBufferNonResidentNV == NULL);
-  glewInfoFunc("glMakeNamedBufferResidentNV", glMakeNamedBufferResidentNV == NULL);
-  glewInfoFunc("glProgramUniformui64NV", glProgramUniformui64NV == NULL);
-  glewInfoFunc("glProgramUniformui64vNV", glProgramUniformui64vNV == NULL);
-  glewInfoFunc("glUniformui64NV", glUniformui64NV == NULL);
-  glewInfoFunc("glUniformui64vNV", glUniformui64vNV == NULL);
-}
-
-#endif /* GL_NV_shader_buffer_load */
-
-#ifdef GL_NV_tessellation_program5
-
-static void _glewInfo_GL_NV_tessellation_program5 (void)
-{
-  glewPrintExt("GL_NV_tessellation_program5", GLEW_NV_tessellation_program5, glewIsSupported("GL_NV_tessellation_program5"), glewGetExtension("GL_NV_gpu_program5"));
-}
-
-#endif /* GL_NV_tessellation_program5 */
-
-#ifdef GL_NV_texgen_emboss
-
-static void _glewInfo_GL_NV_texgen_emboss (void)
-{
-  glewPrintExt("GL_NV_texgen_emboss", GLEW_NV_texgen_emboss, glewIsSupported("GL_NV_texgen_emboss"), glewGetExtension("GL_NV_texgen_emboss"));
-}
-
-#endif /* GL_NV_texgen_emboss */
-
-#ifdef GL_NV_texgen_reflection
-
-static void _glewInfo_GL_NV_texgen_reflection (void)
-{
-  glewPrintExt("GL_NV_texgen_reflection", GLEW_NV_texgen_reflection, glewIsSupported("GL_NV_texgen_reflection"), glewGetExtension("GL_NV_texgen_reflection"));
-}
-
-#endif /* GL_NV_texgen_reflection */
-
-#ifdef GL_NV_texture_barrier
-
-static void _glewInfo_GL_NV_texture_barrier (void)
-{
-  glewPrintExt("GL_NV_texture_barrier", GLEW_NV_texture_barrier, glewIsSupported("GL_NV_texture_barrier"), glewGetExtension("GL_NV_texture_barrier"));
-
-  glewInfoFunc("glTextureBarrierNV", glTextureBarrierNV == NULL);
-}
-
-#endif /* GL_NV_texture_barrier */
-
-#ifdef GL_NV_texture_compression_vtc
-
-static void _glewInfo_GL_NV_texture_compression_vtc (void)
-{
-  glewPrintExt("GL_NV_texture_compression_vtc", GLEW_NV_texture_compression_vtc, glewIsSupported("GL_NV_texture_compression_vtc"), glewGetExtension("GL_NV_texture_compression_vtc"));
-}
-
-#endif /* GL_NV_texture_compression_vtc */
-
-#ifdef GL_NV_texture_env_combine4
-
-static void _glewInfo_GL_NV_texture_env_combine4 (void)
-{
-  glewPrintExt("GL_NV_texture_env_combine4", GLEW_NV_texture_env_combine4, glewIsSupported("GL_NV_texture_env_combine4"), glewGetExtension("GL_NV_texture_env_combine4"));
-}
-
-#endif /* GL_NV_texture_env_combine4 */
-
-#ifdef GL_NV_texture_expand_normal
-
-static void _glewInfo_GL_NV_texture_expand_normal (void)
-{
-  glewPrintExt("GL_NV_texture_expand_normal", GLEW_NV_texture_expand_normal, glewIsSupported("GL_NV_texture_expand_normal"), glewGetExtension("GL_NV_texture_expand_normal"));
-}
-
-#endif /* GL_NV_texture_expand_normal */
-
-#ifdef GL_NV_texture_rectangle
-
-static void _glewInfo_GL_NV_texture_rectangle (void)
-{
-  glewPrintExt("GL_NV_texture_rectangle", GLEW_NV_texture_rectangle, glewIsSupported("GL_NV_texture_rectangle"), glewGetExtension("GL_NV_texture_rectangle"));
-}
-
-#endif /* GL_NV_texture_rectangle */
-
-#ifdef GL_NV_texture_shader
-
-static void _glewInfo_GL_NV_texture_shader (void)
-{
-  glewPrintExt("GL_NV_texture_shader", GLEW_NV_texture_shader, glewIsSupported("GL_NV_texture_shader"), glewGetExtension("GL_NV_texture_shader"));
-}
-
-#endif /* GL_NV_texture_shader */
-
-#ifdef GL_NV_texture_shader2
-
-static void _glewInfo_GL_NV_texture_shader2 (void)
-{
-  glewPrintExt("GL_NV_texture_shader2", GLEW_NV_texture_shader2, glewIsSupported("GL_NV_texture_shader2"), glewGetExtension("GL_NV_texture_shader2"));
-}
-
-#endif /* GL_NV_texture_shader2 */
-
-#ifdef GL_NV_texture_shader3
-
-static void _glewInfo_GL_NV_texture_shader3 (void)
-{
-  glewPrintExt("GL_NV_texture_shader3", GLEW_NV_texture_shader3, glewIsSupported("GL_NV_texture_shader3"), glewGetExtension("GL_NV_texture_shader3"));
-}
-
-#endif /* GL_NV_texture_shader3 */
-
-#ifdef GL_NV_transform_feedback
-
-static void _glewInfo_GL_NV_transform_feedback (void)
-{
-  glewPrintExt("GL_NV_transform_feedback", GLEW_NV_transform_feedback, glewIsSupported("GL_NV_transform_feedback"), glewGetExtension("GL_NV_transform_feedback"));
-
-  glewInfoFunc("glActiveVaryingNV", glActiveVaryingNV == NULL);
-  glewInfoFunc("glBeginTransformFeedbackNV", glBeginTransformFeedbackNV == NULL);
-  glewInfoFunc("glBindBufferBaseNV", glBindBufferBaseNV == NULL);
-  glewInfoFunc("glBindBufferOffsetNV", glBindBufferOffsetNV == NULL);
-  glewInfoFunc("glBindBufferRangeNV", glBindBufferRangeNV == NULL);
-  glewInfoFunc("glEndTransformFeedbackNV", glEndTransformFeedbackNV == NULL);
-  glewInfoFunc("glGetActiveVaryingNV", glGetActiveVaryingNV == NULL);
-  glewInfoFunc("glGetTransformFeedbackVaryingNV", glGetTransformFeedbackVaryingNV == NULL);
-  glewInfoFunc("glGetVaryingLocationNV", glGetVaryingLocationNV == NULL);
-  glewInfoFunc("glTransformFeedbackAttribsNV", glTransformFeedbackAttribsNV == NULL);
-  glewInfoFunc("glTransformFeedbackVaryingsNV", glTransformFeedbackVaryingsNV == NULL);
-}
-
-#endif /* GL_NV_transform_feedback */
-
-#ifdef GL_NV_transform_feedback2
-
-static void _glewInfo_GL_NV_transform_feedback2 (void)
-{
-  glewPrintExt("GL_NV_transform_feedback2", GLEW_NV_transform_feedback2, glewIsSupported("GL_NV_transform_feedback2"), glewGetExtension("GL_NV_transform_feedback2"));
-
-  glewInfoFunc("glBindTransformFeedbackNV", glBindTransformFeedbackNV == NULL);
-  glewInfoFunc("glDeleteTransformFeedbacksNV", glDeleteTransformFeedbacksNV == NULL);
-  glewInfoFunc("glDrawTransformFeedbackNV", glDrawTransformFeedbackNV == NULL);
-  glewInfoFunc("glGenTransformFeedbacksNV", glGenTransformFeedbacksNV == NULL);
-  glewInfoFunc("glIsTransformFeedbackNV", glIsTransformFeedbackNV == NULL);
-  glewInfoFunc("glPauseTransformFeedbackNV", glPauseTransformFeedbackNV == NULL);
-  glewInfoFunc("glResumeTransformFeedbackNV", glResumeTransformFeedbackNV == NULL);
-}
-
-#endif /* GL_NV_transform_feedback2 */
-
-#ifdef GL_NV_vertex_array_range
-
-static void _glewInfo_GL_NV_vertex_array_range (void)
-{
-  glewPrintExt("GL_NV_vertex_array_range", GLEW_NV_vertex_array_range, glewIsSupported("GL_NV_vertex_array_range"), glewGetExtension("GL_NV_vertex_array_range"));
-
-  glewInfoFunc("glFlushVertexArrayRangeNV", glFlushVertexArrayRangeNV == NULL);
-  glewInfoFunc("glVertexArrayRangeNV", glVertexArrayRangeNV == NULL);
-}
-
-#endif /* GL_NV_vertex_array_range */
-
-#ifdef GL_NV_vertex_array_range2
-
-static void _glewInfo_GL_NV_vertex_array_range2 (void)
-{
-  glewPrintExt("GL_NV_vertex_array_range2", GLEW_NV_vertex_array_range2, glewIsSupported("GL_NV_vertex_array_range2"), glewGetExtension("GL_NV_vertex_array_range2"));
-}
-
-#endif /* GL_NV_vertex_array_range2 */
-
-#ifdef GL_NV_vertex_attrib_integer_64bit
-
-static void _glewInfo_GL_NV_vertex_attrib_integer_64bit (void)
-{
-  glewPrintExt("GL_NV_vertex_attrib_integer_64bit", GLEW_NV_vertex_attrib_integer_64bit, glewIsSupported("GL_NV_vertex_attrib_integer_64bit"), glewGetExtension("GL_NV_vertex_attrib_integer_64bit"));
-
-  glewInfoFunc("glGetVertexAttribLi64vNV", glGetVertexAttribLi64vNV == NULL);
-  glewInfoFunc("glGetVertexAttribLui64vNV", glGetVertexAttribLui64vNV == NULL);
-  glewInfoFunc("glVertexAttribL1i64NV", glVertexAttribL1i64NV == NULL);
-  glewInfoFunc("glVertexAttribL1i64vNV", glVertexAttribL1i64vNV == NULL);
-  glewInfoFunc("glVertexAttribL1ui64NV", glVertexAttribL1ui64NV == NULL);
-  glewInfoFunc("glVertexAttribL1ui64vNV", glVertexAttribL1ui64vNV == NULL);
-  glewInfoFunc("glVertexAttribL2i64NV", glVertexAttribL2i64NV == NULL);
-  glewInfoFunc("glVertexAttribL2i64vNV", glVertexAttribL2i64vNV == NULL);
-  glewInfoFunc("glVertexAttribL2ui64NV", glVertexAttribL2ui64NV == NULL);
-  glewInfoFunc("glVertexAttribL2ui64vNV", glVertexAttribL2ui64vNV == NULL);
-  glewInfoFunc("glVertexAttribL3i64NV", glVertexAttribL3i64NV == NULL);
-  glewInfoFunc("glVertexAttribL3i64vNV", glVertexAttribL3i64vNV == NULL);
-  glewInfoFunc("glVertexAttribL3ui64NV", glVertexAttribL3ui64NV == NULL);
-  glewInfoFunc("glVertexAttribL3ui64vNV", glVertexAttribL3ui64vNV == NULL);
-  glewInfoFunc("glVertexAttribL4i64NV", glVertexAttribL4i64NV == NULL);
-  glewInfoFunc("glVertexAttribL4i64vNV", glVertexAttribL4i64vNV == NULL);
-  glewInfoFunc("glVertexAttribL4ui64NV", glVertexAttribL4ui64NV == NULL);
-  glewInfoFunc("glVertexAttribL4ui64vNV", glVertexAttribL4ui64vNV == NULL);
-  glewInfoFunc("glVertexAttribLFormatNV", glVertexAttribLFormatNV == NULL);
-}
-
-#endif /* GL_NV_vertex_attrib_integer_64bit */
-
-#ifdef GL_NV_vertex_buffer_unified_memory
-
-static void _glewInfo_GL_NV_vertex_buffer_unified_memory (void)
-{
-  glewPrintExt("GL_NV_vertex_buffer_unified_memory", GLEW_NV_vertex_buffer_unified_memory, glewIsSupported("GL_NV_vertex_buffer_unified_memory"), glewGetExtension("GL_NV_vertex_buffer_unified_memory"));
-
-  glewInfoFunc("glBufferAddressRangeNV", glBufferAddressRangeNV == NULL);
-  glewInfoFunc("glColorFormatNV", glColorFormatNV == NULL);
-  glewInfoFunc("glEdgeFlagFormatNV", glEdgeFlagFormatNV == NULL);
-  glewInfoFunc("glFogCoordFormatNV", glFogCoordFormatNV == NULL);
-  glewInfoFunc("glGetIntegerui64i_vNV", glGetIntegerui64i_vNV == NULL);
-  glewInfoFunc("glIndexFormatNV", glIndexFormatNV == NULL);
-  glewInfoFunc("glNormalFormatNV", glNormalFormatNV == NULL);
-  glewInfoFunc("glSecondaryColorFormatNV", glSecondaryColorFormatNV == NULL);
-  glewInfoFunc("glTexCoordFormatNV", glTexCoordFormatNV == NULL);
-  glewInfoFunc("glVertexAttribFormatNV", glVertexAttribFormatNV == NULL);
-  glewInfoFunc("glVertexAttribIFormatNV", glVertexAttribIFormatNV == NULL);
-  glewInfoFunc("glVertexFormatNV", glVertexFormatNV == NULL);
-}
-
-#endif /* GL_NV_vertex_buffer_unified_memory */
-
-#ifdef GL_NV_vertex_program
-
-static void _glewInfo_GL_NV_vertex_program (void)
-{
-  glewPrintExt("GL_NV_vertex_program", GLEW_NV_vertex_program, glewIsSupported("GL_NV_vertex_program"), glewGetExtension("GL_NV_vertex_program"));
-
-  glewInfoFunc("glAreProgramsResidentNV", glAreProgramsResidentNV == NULL);
-  glewInfoFunc("glBindProgramNV", glBindProgramNV == NULL);
-  glewInfoFunc("glDeleteProgramsNV", glDeleteProgramsNV == NULL);
-  glewInfoFunc("glExecuteProgramNV", glExecuteProgramNV == NULL);
-  glewInfoFunc("glGenProgramsNV", glGenProgramsNV == NULL);
-  glewInfoFunc("glGetProgramParameterdvNV", glGetProgramParameterdvNV == NULL);
-  glewInfoFunc("glGetProgramParameterfvNV", glGetProgramParameterfvNV == NULL);
-  glewInfoFunc("glGetProgramStringNV", glGetProgramStringNV == NULL);
-  glewInfoFunc("glGetProgramivNV", glGetProgramivNV == NULL);
-  glewInfoFunc("glGetTrackMatrixivNV", glGetTrackMatrixivNV == NULL);
-  glewInfoFunc("glGetVertexAttribPointervNV", glGetVertexAttribPointervNV == NULL);
-  glewInfoFunc("glGetVertexAttribdvNV", glGetVertexAttribdvNV == NULL);
-  glewInfoFunc("glGetVertexAttribfvNV", glGetVertexAttribfvNV == NULL);
-  glewInfoFunc("glGetVertexAttribivNV", glGetVertexAttribivNV == NULL);
-  glewInfoFunc("glIsProgramNV", glIsProgramNV == NULL);
-  glewInfoFunc("glLoadProgramNV", glLoadProgramNV == NULL);
-  glewInfoFunc("glProgramParameter4dNV", glProgramParameter4dNV == NULL);
-  glewInfoFunc("glProgramParameter4dvNV", glProgramParameter4dvNV == NULL);
-  glewInfoFunc("glProgramParameter4fNV", glProgramParameter4fNV == NULL);
-  glewInfoFunc("glProgramParameter4fvNV", glProgramParameter4fvNV == NULL);
-  glewInfoFunc("glProgramParameters4dvNV", glProgramParameters4dvNV == NULL);
-  glewInfoFunc("glProgramParameters4fvNV", glProgramParameters4fvNV == NULL);
-  glewInfoFunc("glRequestResidentProgramsNV", glRequestResidentProgramsNV == NULL);
-  glewInfoFunc("glTrackMatrixNV", glTrackMatrixNV == NULL);
-  glewInfoFunc("glVertexAttrib1dNV", glVertexAttrib1dNV == NULL);
-  glewInfoFunc("glVertexAttrib1dvNV", glVertexAttrib1dvNV == NULL);
-  glewInfoFunc("glVertexAttrib1fNV", glVertexAttrib1fNV == NULL);
-  glewInfoFunc("glVertexAttrib1fvNV", glVertexAttrib1fvNV == NULL);
-  glewInfoFunc("glVertexAttrib1sNV", glVertexAttrib1sNV == NULL);
-  glewInfoFunc("glVertexAttrib1svNV", glVertexAttrib1svNV == NULL);
-  glewInfoFunc("glVertexAttrib2dNV", glVertexAttrib2dNV == NULL);
-  glewInfoFunc("glVertexAttrib2dvNV", glVertexAttrib2dvNV == NULL);
-  glewInfoFunc("glVertexAttrib2fNV", glVertexAttrib2fNV == NULL);
-  glewInfoFunc("glVertexAttrib2fvNV", glVertexAttrib2fvNV == NULL);
-  glewInfoFunc("glVertexAttrib2sNV", glVertexAttrib2sNV == NULL);
-  glewInfoFunc("glVertexAttrib2svNV", glVertexAttrib2svNV == NULL);
-  glewInfoFunc("glVertexAttrib3dNV", glVertexAttrib3dNV == NULL);
-  glewInfoFunc("glVertexAttrib3dvNV", glVertexAttrib3dvNV == NULL);
-  glewInfoFunc("glVertexAttrib3fNV", glVertexAttrib3fNV == NULL);
-  glewInfoFunc("glVertexAttrib3fvNV", glVertexAttrib3fvNV == NULL);
-  glewInfoFunc("glVertexAttrib3sNV", glVertexAttrib3sNV == NULL);
-  glewInfoFunc("glVertexAttrib3svNV", glVertexAttrib3svNV == NULL);
-  glewInfoFunc("glVertexAttrib4dNV", glVertexAttrib4dNV == NULL);
-  glewInfoFunc("glVertexAttrib4dvNV", glVertexAttrib4dvNV == NULL);
-  glewInfoFunc("glVertexAttrib4fNV", glVertexAttrib4fNV == NULL);
-  glewInfoFunc("glVertexAttrib4fvNV", glVertexAttrib4fvNV == NULL);
-  glewInfoFunc("glVertexAttrib4sNV", glVertexAttrib4sNV == NULL);
-  glewInfoFunc("glVertexAttrib4svNV", glVertexAttrib4svNV == NULL);
-  glewInfoFunc("glVertexAttrib4ubNV", glVertexAttrib4ubNV == NULL);
-  glewInfoFunc("glVertexAttrib4ubvNV", glVertexAttrib4ubvNV == NULL);
-  glewInfoFunc("glVertexAttribPointerNV", glVertexAttribPointerNV == NULL);
-  glewInfoFunc("glVertexAttribs1dvNV", glVertexAttribs1dvNV == NULL);
-  glewInfoFunc("glVertexAttribs1fvNV", glVertexAttribs1fvNV == NULL);
-  glewInfoFunc("glVertexAttribs1svNV", glVertexAttribs1svNV == NULL);
-  glewInfoFunc("glVertexAttribs2dvNV", glVertexAttribs2dvNV == NULL);
-  glewInfoFunc("glVertexAttribs2fvNV", glVertexAttribs2fvNV == NULL);
-  glewInfoFunc("glVertexAttribs2svNV", glVertexAttribs2svNV == NULL);
-  glewInfoFunc("glVertexAttribs3dvNV", glVertexAttribs3dvNV == NULL);
-  glewInfoFunc("glVertexAttribs3fvNV", glVertexAttribs3fvNV == NULL);
-  glewInfoFunc("glVertexAttribs3svNV", glVertexAttribs3svNV == NULL);
-  glewInfoFunc("glVertexAttribs4dvNV", glVertexAttribs4dvNV == NULL);
-  glewInfoFunc("glVertexAttribs4fvNV", glVertexAttribs4fvNV == NULL);
-  glewInfoFunc("glVertexAttribs4svNV", glVertexAttribs4svNV == NULL);
-  glewInfoFunc("glVertexAttribs4ubvNV", glVertexAttribs4ubvNV == NULL);
-}
-
-#endif /* GL_NV_vertex_program */
-
-#ifdef GL_NV_vertex_program1_1
-
-static void _glewInfo_GL_NV_vertex_program1_1 (void)
-{
-  glewPrintExt("GL_NV_vertex_program1_1", GLEW_NV_vertex_program1_1, glewIsSupported("GL_NV_vertex_program1_1"), glewGetExtension("GL_NV_vertex_program1_1"));
-}
-
-#endif /* GL_NV_vertex_program1_1 */
-
-#ifdef GL_NV_vertex_program2
-
-static void _glewInfo_GL_NV_vertex_program2 (void)
-{
-  glewPrintExt("GL_NV_vertex_program2", GLEW_NV_vertex_program2, glewIsSupported("GL_NV_vertex_program2"), glewGetExtension("GL_NV_vertex_program2"));
-}
-
-#endif /* GL_NV_vertex_program2 */
-
-#ifdef GL_NV_vertex_program2_option
-
-static void _glewInfo_GL_NV_vertex_program2_option (void)
-{
-  glewPrintExt("GL_NV_vertex_program2_option", GLEW_NV_vertex_program2_option, glewIsSupported("GL_NV_vertex_program2_option"), glewGetExtension("GL_NV_vertex_program2_option"));
-}
-
-#endif /* GL_NV_vertex_program2_option */
-
-#ifdef GL_NV_vertex_program3
-
-static void _glewInfo_GL_NV_vertex_program3 (void)
-{
-  glewPrintExt("GL_NV_vertex_program3", GLEW_NV_vertex_program3, glewIsSupported("GL_NV_vertex_program3"), glewGetExtension("GL_NV_vertex_program3"));
-}
-
-#endif /* GL_NV_vertex_program3 */
-
-#ifdef GL_NV_vertex_program4
-
-static void _glewInfo_GL_NV_vertex_program4 (void)
-{
-  glewPrintExt("GL_NV_vertex_program4", GLEW_NV_vertex_program4, glewIsSupported("GL_NV_vertex_program4"), glewGetExtension("GL_NV_gpu_program4"));
-}
-
-#endif /* GL_NV_vertex_program4 */
-
-#ifdef GL_OES_byte_coordinates
-
-static void _glewInfo_GL_OES_byte_coordinates (void)
-{
-  glewPrintExt("GL_OES_byte_coordinates", GLEW_OES_byte_coordinates, glewIsSupported("GL_OES_byte_coordinates"), glewGetExtension("GL_OES_byte_coordinates"));
-}
-
-#endif /* GL_OES_byte_coordinates */
-
-#ifdef GL_OES_compressed_paletted_texture
-
-static void _glewInfo_GL_OES_compressed_paletted_texture (void)
-{
-  glewPrintExt("GL_OES_compressed_paletted_texture", GLEW_OES_compressed_paletted_texture, glewIsSupported("GL_OES_compressed_paletted_texture"), glewGetExtension("GL_OES_compressed_paletted_texture"));
-}
-
-#endif /* GL_OES_compressed_paletted_texture */
-
-#ifdef GL_OES_read_format
-
-static void _glewInfo_GL_OES_read_format (void)
-{
-  glewPrintExt("GL_OES_read_format", GLEW_OES_read_format, glewIsSupported("GL_OES_read_format"), glewGetExtension("GL_OES_read_format"));
-}
-
-#endif /* GL_OES_read_format */
-
-#ifdef GL_OES_single_precision
-
-static void _glewInfo_GL_OES_single_precision (void)
-{
-  glewPrintExt("GL_OES_single_precision", GLEW_OES_single_precision, glewIsSupported("GL_OES_single_precision"), glewGetExtension("GL_OES_single_precision"));
-
-  glewInfoFunc("glClearDepthfOES", glClearDepthfOES == NULL);
-  glewInfoFunc("glClipPlanefOES", glClipPlanefOES == NULL);
-  glewInfoFunc("glDepthRangefOES", glDepthRangefOES == NULL);
-  glewInfoFunc("glFrustumfOES", glFrustumfOES == NULL);
-  glewInfoFunc("glGetClipPlanefOES", glGetClipPlanefOES == NULL);
-  glewInfoFunc("glOrthofOES", glOrthofOES == NULL);
-}
-
-#endif /* GL_OES_single_precision */
-
-#ifdef GL_OML_interlace
-
-static void _glewInfo_GL_OML_interlace (void)
-{
-  glewPrintExt("GL_OML_interlace", GLEW_OML_interlace, glewIsSupported("GL_OML_interlace"), glewGetExtension("GL_OML_interlace"));
-}
-
-#endif /* GL_OML_interlace */
-
-#ifdef GL_OML_resample
-
-static void _glewInfo_GL_OML_resample (void)
-{
-  glewPrintExt("GL_OML_resample", GLEW_OML_resample, glewIsSupported("GL_OML_resample"), glewGetExtension("GL_OML_resample"));
-}
-
-#endif /* GL_OML_resample */
-
-#ifdef GL_OML_subsample
-
-static void _glewInfo_GL_OML_subsample (void)
-{
-  glewPrintExt("GL_OML_subsample", GLEW_OML_subsample, glewIsSupported("GL_OML_subsample"), glewGetExtension("GL_OML_subsample"));
-}
-
-#endif /* GL_OML_subsample */
-
-#ifdef GL_PGI_misc_hints
-
-static void _glewInfo_GL_PGI_misc_hints (void)
-{
-  glewPrintExt("GL_PGI_misc_hints", GLEW_PGI_misc_hints, glewIsSupported("GL_PGI_misc_hints"), glewGetExtension("GL_PGI_misc_hints"));
-}
-
-#endif /* GL_PGI_misc_hints */
-
-#ifdef GL_PGI_vertex_hints
-
-static void _glewInfo_GL_PGI_vertex_hints (void)
-{
-  glewPrintExt("GL_PGI_vertex_hints", GLEW_PGI_vertex_hints, glewIsSupported("GL_PGI_vertex_hints"), glewGetExtension("GL_PGI_vertex_hints"));
-}
-
-#endif /* GL_PGI_vertex_hints */
-
-#ifdef GL_REND_screen_coordinates
-
-static void _glewInfo_GL_REND_screen_coordinates (void)
-{
-  glewPrintExt("GL_REND_screen_coordinates", GLEW_REND_screen_coordinates, glewIsSupported("GL_REND_screen_coordinates"), glewGetExtension("GL_REND_screen_coordinates"));
-}
-
-#endif /* GL_REND_screen_coordinates */
-
-#ifdef GL_S3_s3tc
-
-static void _glewInfo_GL_S3_s3tc (void)
-{
-  glewPrintExt("GL_S3_s3tc", GLEW_S3_s3tc, glewIsSupported("GL_S3_s3tc"), glewGetExtension("GL_S3_s3tc"));
-}
-
-#endif /* GL_S3_s3tc */
-
-#ifdef GL_SGIS_color_range
-
-static void _glewInfo_GL_SGIS_color_range (void)
-{
-  glewPrintExt("GL_SGIS_color_range", GLEW_SGIS_color_range, glewIsSupported("GL_SGIS_color_range"), glewGetExtension("GL_SGIS_color_range"));
-}
-
-#endif /* GL_SGIS_color_range */
-
-#ifdef GL_SGIS_detail_texture
-
-static void _glewInfo_GL_SGIS_detail_texture (void)
-{
-  glewPrintExt("GL_SGIS_detail_texture", GLEW_SGIS_detail_texture, glewIsSupported("GL_SGIS_detail_texture"), glewGetExtension("GL_SGIS_detail_texture"));
-
-  glewInfoFunc("glDetailTexFuncSGIS", glDetailTexFuncSGIS == NULL);
-  glewInfoFunc("glGetDetailTexFuncSGIS", glGetDetailTexFuncSGIS == NULL);
-}
-
-#endif /* GL_SGIS_detail_texture */
-
-#ifdef GL_SGIS_fog_function
-
-static void _glewInfo_GL_SGIS_fog_function (void)
-{
-  glewPrintExt("GL_SGIS_fog_function", GLEW_SGIS_fog_function, glewIsSupported("GL_SGIS_fog_function"), glewGetExtension("GL_SGIS_fog_function"));
-
-  glewInfoFunc("glFogFuncSGIS", glFogFuncSGIS == NULL);
-  glewInfoFunc("glGetFogFuncSGIS", glGetFogFuncSGIS == NULL);
-}
-
-#endif /* GL_SGIS_fog_function */
-
-#ifdef GL_SGIS_generate_mipmap
-
-static void _glewInfo_GL_SGIS_generate_mipmap (void)
-{
-  glewPrintExt("GL_SGIS_generate_mipmap", GLEW_SGIS_generate_mipmap, glewIsSupported("GL_SGIS_generate_mipmap"), glewGetExtension("GL_SGIS_generate_mipmap"));
-}
-
-#endif /* GL_SGIS_generate_mipmap */
-
-#ifdef GL_SGIS_multisample
-
-static void _glewInfo_GL_SGIS_multisample (void)
-{
-  glewPrintExt("GL_SGIS_multisample", GLEW_SGIS_multisample, glewIsSupported("GL_SGIS_multisample"), glewGetExtension("GL_SGIS_multisample"));
-
-  glewInfoFunc("glSampleMaskSGIS", glSampleMaskSGIS == NULL);
-  glewInfoFunc("glSamplePatternSGIS", glSamplePatternSGIS == NULL);
-}
-
-#endif /* GL_SGIS_multisample */
-
-#ifdef GL_SGIS_pixel_texture
-
-static void _glewInfo_GL_SGIS_pixel_texture (void)
-{
-  glewPrintExt("GL_SGIS_pixel_texture", GLEW_SGIS_pixel_texture, glewIsSupported("GL_SGIS_pixel_texture"), glewGetExtension("GL_SGIS_pixel_texture"));
-}
-
-#endif /* GL_SGIS_pixel_texture */
-
-#ifdef GL_SGIS_point_line_texgen
-
-static void _glewInfo_GL_SGIS_point_line_texgen (void)
-{
-  glewPrintExt("GL_SGIS_point_line_texgen", GLEW_SGIS_point_line_texgen, glewIsSupported("GL_SGIS_point_line_texgen"), glewGetExtension("GL_SGIS_point_line_texgen"));
-}
-
-#endif /* GL_SGIS_point_line_texgen */
-
-#ifdef GL_SGIS_sharpen_texture
-
-static void _glewInfo_GL_SGIS_sharpen_texture (void)
-{
-  glewPrintExt("GL_SGIS_sharpen_texture", GLEW_SGIS_sharpen_texture, glewIsSupported("GL_SGIS_sharpen_texture"), glewGetExtension("GL_SGIS_sharpen_texture"));
-
-  glewInfoFunc("glGetSharpenTexFuncSGIS", glGetSharpenTexFuncSGIS == NULL);
-  glewInfoFunc("glSharpenTexFuncSGIS", glSharpenTexFuncSGIS == NULL);
-}
-
-#endif /* GL_SGIS_sharpen_texture */
-
-#ifdef GL_SGIS_texture4D
-
-static void _glewInfo_GL_SGIS_texture4D (void)
-{
-  glewPrintExt("GL_SGIS_texture4D", GLEW_SGIS_texture4D, glewIsSupported("GL_SGIS_texture4D"), glewGetExtension("GL_SGIS_texture4D"));
-
-  glewInfoFunc("glTexImage4DSGIS", glTexImage4DSGIS == NULL);
-  glewInfoFunc("glTexSubImage4DSGIS", glTexSubImage4DSGIS == NULL);
-}
-
-#endif /* GL_SGIS_texture4D */
-
-#ifdef GL_SGIS_texture_border_clamp
-
-static void _glewInfo_GL_SGIS_texture_border_clamp (void)
-{
-  glewPrintExt("GL_SGIS_texture_border_clamp", GLEW_SGIS_texture_border_clamp, glewIsSupported("GL_SGIS_texture_border_clamp"), glewGetExtension("GL_SGIS_texture_border_clamp"));
-}
-
-#endif /* GL_SGIS_texture_border_clamp */
-
-#ifdef GL_SGIS_texture_edge_clamp
-
-static void _glewInfo_GL_SGIS_texture_edge_clamp (void)
-{
-  glewPrintExt("GL_SGIS_texture_edge_clamp", GLEW_SGIS_texture_edge_clamp, glewIsSupported("GL_SGIS_texture_edge_clamp"), glewGetExtension("GL_SGIS_texture_edge_clamp"));
-}
-
-#endif /* GL_SGIS_texture_edge_clamp */
-
-#ifdef GL_SGIS_texture_filter4
-
-static void _glewInfo_GL_SGIS_texture_filter4 (void)
-{
-  glewPrintExt("GL_SGIS_texture_filter4", GLEW_SGIS_texture_filter4, glewIsSupported("GL_SGIS_texture_filter4"), glewGetExtension("GL_SGIS_texture_filter4"));
-
-  glewInfoFunc("glGetTexFilterFuncSGIS", glGetTexFilterFuncSGIS == NULL);
-  glewInfoFunc("glTexFilterFuncSGIS", glTexFilterFuncSGIS == NULL);
-}
-
-#endif /* GL_SGIS_texture_filter4 */
-
-#ifdef GL_SGIS_texture_lod
-
-static void _glewInfo_GL_SGIS_texture_lod (void)
-{
-  glewPrintExt("GL_SGIS_texture_lod", GLEW_SGIS_texture_lod, glewIsSupported("GL_SGIS_texture_lod"), glewGetExtension("GL_SGIS_texture_lod"));
-}
-
-#endif /* GL_SGIS_texture_lod */
-
-#ifdef GL_SGIS_texture_select
-
-static void _glewInfo_GL_SGIS_texture_select (void)
-{
-  glewPrintExt("GL_SGIS_texture_select", GLEW_SGIS_texture_select, glewIsSupported("GL_SGIS_texture_select"), glewGetExtension("GL_SGIS_texture_select"));
-}
-
-#endif /* GL_SGIS_texture_select */
-
-#ifdef GL_SGIX_async
-
-static void _glewInfo_GL_SGIX_async (void)
-{
-  glewPrintExt("GL_SGIX_async", GLEW_SGIX_async, glewIsSupported("GL_SGIX_async"), glewGetExtension("GL_SGIX_async"));
-
-  glewInfoFunc("glAsyncMarkerSGIX", glAsyncMarkerSGIX == NULL);
-  glewInfoFunc("glDeleteAsyncMarkersSGIX", glDeleteAsyncMarkersSGIX == NULL);
-  glewInfoFunc("glFinishAsyncSGIX", glFinishAsyncSGIX == NULL);
-  glewInfoFunc("glGenAsyncMarkersSGIX", glGenAsyncMarkersSGIX == NULL);
-  glewInfoFunc("glIsAsyncMarkerSGIX", glIsAsyncMarkerSGIX == NULL);
-  glewInfoFunc("glPollAsyncSGIX", glPollAsyncSGIX == NULL);
-}
-
-#endif /* GL_SGIX_async */
-
-#ifdef GL_SGIX_async_histogram
-
-static void _glewInfo_GL_SGIX_async_histogram (void)
-{
-  glewPrintExt("GL_SGIX_async_histogram", GLEW_SGIX_async_histogram, glewIsSupported("GL_SGIX_async_histogram"), glewGetExtension("GL_SGIX_async_histogram"));
-}
-
-#endif /* GL_SGIX_async_histogram */
-
-#ifdef GL_SGIX_async_pixel
-
-static void _glewInfo_GL_SGIX_async_pixel (void)
-{
-  glewPrintExt("GL_SGIX_async_pixel", GLEW_SGIX_async_pixel, glewIsSupported("GL_SGIX_async_pixel"), glewGetExtension("GL_SGIX_async_pixel"));
-}
-
-#endif /* GL_SGIX_async_pixel */
-
-#ifdef GL_SGIX_blend_alpha_minmax
-
-static void _glewInfo_GL_SGIX_blend_alpha_minmax (void)
-{
-  glewPrintExt("GL_SGIX_blend_alpha_minmax", GLEW_SGIX_blend_alpha_minmax, glewIsSupported("GL_SGIX_blend_alpha_minmax"), glewGetExtension("GL_SGIX_blend_alpha_minmax"));
-}
-
-#endif /* GL_SGIX_blend_alpha_minmax */
-
-#ifdef GL_SGIX_clipmap
-
-static void _glewInfo_GL_SGIX_clipmap (void)
-{
-  glewPrintExt("GL_SGIX_clipmap", GLEW_SGIX_clipmap, glewIsSupported("GL_SGIX_clipmap"), glewGetExtension("GL_SGIX_clipmap"));
-}
-
-#endif /* GL_SGIX_clipmap */
-
-#ifdef GL_SGIX_convolution_accuracy
-
-static void _glewInfo_GL_SGIX_convolution_accuracy (void)
-{
-  glewPrintExt("GL_SGIX_convolution_accuracy", GLEW_SGIX_convolution_accuracy, glewIsSupported("GL_SGIX_convolution_accuracy"), glewGetExtension("GL_SGIX_convolution_accuracy"));
-}
-
-#endif /* GL_SGIX_convolution_accuracy */
-
-#ifdef GL_SGIX_depth_texture
-
-static void _glewInfo_GL_SGIX_depth_texture (void)
-{
-  glewPrintExt("GL_SGIX_depth_texture", GLEW_SGIX_depth_texture, glewIsSupported("GL_SGIX_depth_texture"), glewGetExtension("GL_SGIX_depth_texture"));
-}
-
-#endif /* GL_SGIX_depth_texture */
-
-#ifdef GL_SGIX_flush_raster
-
-static void _glewInfo_GL_SGIX_flush_raster (void)
-{
-  glewPrintExt("GL_SGIX_flush_raster", GLEW_SGIX_flush_raster, glewIsSupported("GL_SGIX_flush_raster"), glewGetExtension("GL_SGIX_flush_raster"));
-
-  glewInfoFunc("glFlushRasterSGIX", glFlushRasterSGIX == NULL);
-}
-
-#endif /* GL_SGIX_flush_raster */
-
-#ifdef GL_SGIX_fog_offset
-
-static void _glewInfo_GL_SGIX_fog_offset (void)
-{
-  glewPrintExt("GL_SGIX_fog_offset", GLEW_SGIX_fog_offset, glewIsSupported("GL_SGIX_fog_offset"), glewGetExtension("GL_SGIX_fog_offset"));
-}
-
-#endif /* GL_SGIX_fog_offset */
-
-#ifdef GL_SGIX_fog_texture
-
-static void _glewInfo_GL_SGIX_fog_texture (void)
-{
-  glewPrintExt("GL_SGIX_fog_texture", GLEW_SGIX_fog_texture, glewIsSupported("GL_SGIX_fog_texture"), glewGetExtension("GL_SGIX_fog_texture"));
-
-  glewInfoFunc("glTextureFogSGIX", glTextureFogSGIX == NULL);
-}
-
-#endif /* GL_SGIX_fog_texture */
-
-#ifdef GL_SGIX_fragment_specular_lighting
-
-static void _glewInfo_GL_SGIX_fragment_specular_lighting (void)
-{
-  glewPrintExt("GL_SGIX_fragment_specular_lighting", GLEW_SGIX_fragment_specular_lighting, glewIsSupported("GL_SGIX_fragment_specular_lighting"), glewGetExtension("GL_SGIX_fragment_specular_lighting"));
-
-  glewInfoFunc("glFragmentColorMaterialSGIX", glFragmentColorMaterialSGIX == NULL);
-  glewInfoFunc("glFragmentLightModelfSGIX", glFragmentLightModelfSGIX == NULL);
-  glewInfoFunc("glFragmentLightModelfvSGIX", glFragmentLightModelfvSGIX == NULL);
-  glewInfoFunc("glFragmentLightModeliSGIX", glFragmentLightModeliSGIX == NULL);
-  glewInfoFunc("glFragmentLightModelivSGIX", glFragmentLightModelivSGIX == NULL);
-  glewInfoFunc("glFragmentLightfSGIX", glFragmentLightfSGIX == NULL);
-  glewInfoFunc("glFragmentLightfvSGIX", glFragmentLightfvSGIX == NULL);
-  glewInfoFunc("glFragmentLightiSGIX", glFragmentLightiSGIX == NULL);
-  glewInfoFunc("glFragmentLightivSGIX", glFragmentLightivSGIX == NULL);
-  glewInfoFunc("glFragmentMaterialfSGIX", glFragmentMaterialfSGIX == NULL);
-  glewInfoFunc("glFragmentMaterialfvSGIX", glFragmentMaterialfvSGIX == NULL);
-  glewInfoFunc("glFragmentMaterialiSGIX", glFragmentMaterialiSGIX == NULL);
-  glewInfoFunc("glFragmentMaterialivSGIX", glFragmentMaterialivSGIX == NULL);
-  glewInfoFunc("glGetFragmentLightfvSGIX", glGetFragmentLightfvSGIX == NULL);
-  glewInfoFunc("glGetFragmentLightivSGIX", glGetFragmentLightivSGIX == NULL);
-  glewInfoFunc("glGetFragmentMaterialfvSGIX", glGetFragmentMaterialfvSGIX == NULL);
-  glewInfoFunc("glGetFragmentMaterialivSGIX", glGetFragmentMaterialivSGIX == NULL);
-}
-
-#endif /* GL_SGIX_fragment_specular_lighting */
-
-#ifdef GL_SGIX_framezoom
-
-static void _glewInfo_GL_SGIX_framezoom (void)
-{
-  glewPrintExt("GL_SGIX_framezoom", GLEW_SGIX_framezoom, glewIsSupported("GL_SGIX_framezoom"), glewGetExtension("GL_SGIX_framezoom"));
-
-  glewInfoFunc("glFrameZoomSGIX", glFrameZoomSGIX == NULL);
-}
-
-#endif /* GL_SGIX_framezoom */
-
-#ifdef GL_SGIX_interlace
-
-static void _glewInfo_GL_SGIX_interlace (void)
-{
-  glewPrintExt("GL_SGIX_interlace", GLEW_SGIX_interlace, glewIsSupported("GL_SGIX_interlace"), glewGetExtension("GL_SGIX_interlace"));
-}
-
-#endif /* GL_SGIX_interlace */
-
-#ifdef GL_SGIX_ir_instrument1
-
-static void _glewInfo_GL_SGIX_ir_instrument1 (void)
-{
-  glewPrintExt("GL_SGIX_ir_instrument1", GLEW_SGIX_ir_instrument1, glewIsSupported("GL_SGIX_ir_instrument1"), glewGetExtension("GL_SGIX_ir_instrument1"));
-}
-
-#endif /* GL_SGIX_ir_instrument1 */
-
-#ifdef GL_SGIX_list_priority
-
-static void _glewInfo_GL_SGIX_list_priority (void)
-{
-  glewPrintExt("GL_SGIX_list_priority", GLEW_SGIX_list_priority, glewIsSupported("GL_SGIX_list_priority"), glewGetExtension("GL_SGIX_list_priority"));
-}
-
-#endif /* GL_SGIX_list_priority */
-
-#ifdef GL_SGIX_pixel_texture
-
-static void _glewInfo_GL_SGIX_pixel_texture (void)
-{
-  glewPrintExt("GL_SGIX_pixel_texture", GLEW_SGIX_pixel_texture, glewIsSupported("GL_SGIX_pixel_texture"), glewGetExtension("GL_SGIX_pixel_texture"));
-
-  glewInfoFunc("glPixelTexGenSGIX", glPixelTexGenSGIX == NULL);
-}
-
-#endif /* GL_SGIX_pixel_texture */
-
-#ifdef GL_SGIX_pixel_texture_bits
-
-static void _glewInfo_GL_SGIX_pixel_texture_bits (void)
-{
-  glewPrintExt("GL_SGIX_pixel_texture_bits", GLEW_SGIX_pixel_texture_bits, glewIsSupported("GL_SGIX_pixel_texture_bits"), glewGetExtension("GL_SGIX_pixel_texture_bits"));
-}
-
-#endif /* GL_SGIX_pixel_texture_bits */
-
-#ifdef GL_SGIX_reference_plane
-
-static void _glewInfo_GL_SGIX_reference_plane (void)
-{
-  glewPrintExt("GL_SGIX_reference_plane", GLEW_SGIX_reference_plane, glewIsSupported("GL_SGIX_reference_plane"), glewGetExtension("GL_SGIX_reference_plane"));
-
-  glewInfoFunc("glReferencePlaneSGIX", glReferencePlaneSGIX == NULL);
-}
-
-#endif /* GL_SGIX_reference_plane */
-
-#ifdef GL_SGIX_resample
-
-static void _glewInfo_GL_SGIX_resample (void)
-{
-  glewPrintExt("GL_SGIX_resample", GLEW_SGIX_resample, glewIsSupported("GL_SGIX_resample"), glewGetExtension("GL_SGIX_resample"));
-}
-
-#endif /* GL_SGIX_resample */
-
-#ifdef GL_SGIX_shadow
-
-static void _glewInfo_GL_SGIX_shadow (void)
-{
-  glewPrintExt("GL_SGIX_shadow", GLEW_SGIX_shadow, glewIsSupported("GL_SGIX_shadow"), glewGetExtension("GL_SGIX_shadow"));
-}
-
-#endif /* GL_SGIX_shadow */
-
-#ifdef GL_SGIX_shadow_ambient
-
-static void _glewInfo_GL_SGIX_shadow_ambient (void)
-{
-  glewPrintExt("GL_SGIX_shadow_ambient", GLEW_SGIX_shadow_ambient, glewIsSupported("GL_SGIX_shadow_ambient"), glewGetExtension("GL_SGIX_shadow_ambient"));
-}
-
-#endif /* GL_SGIX_shadow_ambient */
-
-#ifdef GL_SGIX_sprite
-
-static void _glewInfo_GL_SGIX_sprite (void)
-{
-  glewPrintExt("GL_SGIX_sprite", GLEW_SGIX_sprite, glewIsSupported("GL_SGIX_sprite"), glewGetExtension("GL_SGIX_sprite"));
-
-  glewInfoFunc("glSpriteParameterfSGIX", glSpriteParameterfSGIX == NULL);
-  glewInfoFunc("glSpriteParameterfvSGIX", glSpriteParameterfvSGIX == NULL);
-  glewInfoFunc("glSpriteParameteriSGIX", glSpriteParameteriSGIX == NULL);
-  glewInfoFunc("glSpriteParameterivSGIX", glSpriteParameterivSGIX == NULL);
-}
-
-#endif /* GL_SGIX_sprite */
-
-#ifdef GL_SGIX_tag_sample_buffer
-
-static void _glewInfo_GL_SGIX_tag_sample_buffer (void)
-{
-  glewPrintExt("GL_SGIX_tag_sample_buffer", GLEW_SGIX_tag_sample_buffer, glewIsSupported("GL_SGIX_tag_sample_buffer"), glewGetExtension("GL_SGIX_tag_sample_buffer"));
-
-  glewInfoFunc("glTagSampleBufferSGIX", glTagSampleBufferSGIX == NULL);
-}
-
-#endif /* GL_SGIX_tag_sample_buffer */
-
-#ifdef GL_SGIX_texture_add_env
-
-static void _glewInfo_GL_SGIX_texture_add_env (void)
-{
-  glewPrintExt("GL_SGIX_texture_add_env", GLEW_SGIX_texture_add_env, glewIsSupported("GL_SGIX_texture_add_env"), glewGetExtension("GL_SGIX_texture_add_env"));
-}
-
-#endif /* GL_SGIX_texture_add_env */
-
-#ifdef GL_SGIX_texture_coordinate_clamp
-
-static void _glewInfo_GL_SGIX_texture_coordinate_clamp (void)
-{
-  glewPrintExt("GL_SGIX_texture_coordinate_clamp", GLEW_SGIX_texture_coordinate_clamp, glewIsSupported("GL_SGIX_texture_coordinate_clamp"), glewGetExtension("GL_SGIX_texture_coordinate_clamp"));
-}
-
-#endif /* GL_SGIX_texture_coordinate_clamp */
-
-#ifdef GL_SGIX_texture_lod_bias
-
-static void _glewInfo_GL_SGIX_texture_lod_bias (void)
-{
-  glewPrintExt("GL_SGIX_texture_lod_bias", GLEW_SGIX_texture_lod_bias, glewIsSupported("GL_SGIX_texture_lod_bias"), glewGetExtension("GL_SGIX_texture_lod_bias"));
-}
-
-#endif /* GL_SGIX_texture_lod_bias */
-
-#ifdef GL_SGIX_texture_multi_buffer
-
-static void _glewInfo_GL_SGIX_texture_multi_buffer (void)
-{
-  glewPrintExt("GL_SGIX_texture_multi_buffer", GLEW_SGIX_texture_multi_buffer, glewIsSupported("GL_SGIX_texture_multi_buffer"), glewGetExtension("GL_SGIX_texture_multi_buffer"));
-}
-
-#endif /* GL_SGIX_texture_multi_buffer */
-
-#ifdef GL_SGIX_texture_range
-
-static void _glewInfo_GL_SGIX_texture_range (void)
-{
-  glewPrintExt("GL_SGIX_texture_range", GLEW_SGIX_texture_range, glewIsSupported("GL_SGIX_texture_range"), glewGetExtension("GL_SGIX_texture_range"));
-}
-
-#endif /* GL_SGIX_texture_range */
-
-#ifdef GL_SGIX_texture_scale_bias
-
-static void _glewInfo_GL_SGIX_texture_scale_bias (void)
-{
-  glewPrintExt("GL_SGIX_texture_scale_bias", GLEW_SGIX_texture_scale_bias, glewIsSupported("GL_SGIX_texture_scale_bias"), glewGetExtension("GL_SGIX_texture_scale_bias"));
-}
-
-#endif /* GL_SGIX_texture_scale_bias */
-
-#ifdef GL_SGIX_vertex_preclip
-
-static void _glewInfo_GL_SGIX_vertex_preclip (void)
-{
-  glewPrintExt("GL_SGIX_vertex_preclip", GLEW_SGIX_vertex_preclip, glewIsSupported("GL_SGIX_vertex_preclip"), glewGetExtension("GL_SGIX_vertex_preclip"));
-}
-
-#endif /* GL_SGIX_vertex_preclip */
-
-#ifdef GL_SGIX_vertex_preclip_hint
-
-static void _glewInfo_GL_SGIX_vertex_preclip_hint (void)
-{
-  glewPrintExt("GL_SGIX_vertex_preclip_hint", GLEW_SGIX_vertex_preclip_hint, glewIsSupported("GL_SGIX_vertex_preclip_hint"), glewGetExtension("GL_SGIX_vertex_preclip_hint"));
-}
-
-#endif /* GL_SGIX_vertex_preclip_hint */
-
-#ifdef GL_SGIX_ycrcb
-
-static void _glewInfo_GL_SGIX_ycrcb (void)
-{
-  glewPrintExt("GL_SGIX_ycrcb", GLEW_SGIX_ycrcb, glewIsSupported("GL_SGIX_ycrcb"), glewGetExtension("GL_SGIX_ycrcb"));
-}
-
-#endif /* GL_SGIX_ycrcb */
-
-#ifdef GL_SGI_color_matrix
-
-static void _glewInfo_GL_SGI_color_matrix (void)
-{
-  glewPrintExt("GL_SGI_color_matrix", GLEW_SGI_color_matrix, glewIsSupported("GL_SGI_color_matrix"), glewGetExtension("GL_SGI_color_matrix"));
-}
-
-#endif /* GL_SGI_color_matrix */
-
-#ifdef GL_SGI_color_table
-
-static void _glewInfo_GL_SGI_color_table (void)
-{
-  glewPrintExt("GL_SGI_color_table", GLEW_SGI_color_table, glewIsSupported("GL_SGI_color_table"), glewGetExtension("GL_SGI_color_table"));
-
-  glewInfoFunc("glColorTableParameterfvSGI", glColorTableParameterfvSGI == NULL);
-  glewInfoFunc("glColorTableParameterivSGI", glColorTableParameterivSGI == NULL);
-  glewInfoFunc("glColorTableSGI", glColorTableSGI == NULL);
-  glewInfoFunc("glCopyColorTableSGI", glCopyColorTableSGI == NULL);
-  glewInfoFunc("glGetColorTableParameterfvSGI", glGetColorTableParameterfvSGI == NULL);
-  glewInfoFunc("glGetColorTableParameterivSGI", glGetColorTableParameterivSGI == NULL);
-  glewInfoFunc("glGetColorTableSGI", glGetColorTableSGI == NULL);
-}
-
-#endif /* GL_SGI_color_table */
-
-#ifdef GL_SGI_texture_color_table
-
-static void _glewInfo_GL_SGI_texture_color_table (void)
-{
-  glewPrintExt("GL_SGI_texture_color_table", GLEW_SGI_texture_color_table, glewIsSupported("GL_SGI_texture_color_table"), glewGetExtension("GL_SGI_texture_color_table"));
-}
-
-#endif /* GL_SGI_texture_color_table */
-
-#ifdef GL_SUNX_constant_data
-
-static void _glewInfo_GL_SUNX_constant_data (void)
-{
-  glewPrintExt("GL_SUNX_constant_data", GLEW_SUNX_constant_data, glewIsSupported("GL_SUNX_constant_data"), glewGetExtension("GL_SUNX_constant_data"));
-
-  glewInfoFunc("glFinishTextureSUNX", glFinishTextureSUNX == NULL);
-}
-
-#endif /* GL_SUNX_constant_data */
-
-#ifdef GL_SUN_convolution_border_modes
-
-static void _glewInfo_GL_SUN_convolution_border_modes (void)
-{
-  glewPrintExt("GL_SUN_convolution_border_modes", GLEW_SUN_convolution_border_modes, glewIsSupported("GL_SUN_convolution_border_modes"), glewGetExtension("GL_SUN_convolution_border_modes"));
-}
-
-#endif /* GL_SUN_convolution_border_modes */
-
-#ifdef GL_SUN_global_alpha
-
-static void _glewInfo_GL_SUN_global_alpha (void)
-{
-  glewPrintExt("GL_SUN_global_alpha", GLEW_SUN_global_alpha, glewIsSupported("GL_SUN_global_alpha"), glewGetExtension("GL_SUN_global_alpha"));
-
-  glewInfoFunc("glGlobalAlphaFactorbSUN", glGlobalAlphaFactorbSUN == NULL);
-  glewInfoFunc("glGlobalAlphaFactordSUN", glGlobalAlphaFactordSUN == NULL);
-  glewInfoFunc("glGlobalAlphaFactorfSUN", glGlobalAlphaFactorfSUN == NULL);
-  glewInfoFunc("glGlobalAlphaFactoriSUN", glGlobalAlphaFactoriSUN == NULL);
-  glewInfoFunc("glGlobalAlphaFactorsSUN", glGlobalAlphaFactorsSUN == NULL);
-  glewInfoFunc("glGlobalAlphaFactorubSUN", glGlobalAlphaFactorubSUN == NULL);
-  glewInfoFunc("glGlobalAlphaFactoruiSUN", glGlobalAlphaFactoruiSUN == NULL);
-  glewInfoFunc("glGlobalAlphaFactorusSUN", glGlobalAlphaFactorusSUN == NULL);
-}
-
-#endif /* GL_SUN_global_alpha */
-
-#ifdef GL_SUN_mesh_array
-
-static void _glewInfo_GL_SUN_mesh_array (void)
-{
-  glewPrintExt("GL_SUN_mesh_array", GLEW_SUN_mesh_array, glewIsSupported("GL_SUN_mesh_array"), glewGetExtension("GL_SUN_mesh_array"));
-}
-
-#endif /* GL_SUN_mesh_array */
-
-#ifdef GL_SUN_read_video_pixels
-
-static void _glewInfo_GL_SUN_read_video_pixels (void)
-{
-  glewPrintExt("GL_SUN_read_video_pixels", GLEW_SUN_read_video_pixels, glewIsSupported("GL_SUN_read_video_pixels"), glewGetExtension("GL_SUN_read_video_pixels"));
-
-  glewInfoFunc("glReadVideoPixelsSUN", glReadVideoPixelsSUN == NULL);
-}
-
-#endif /* GL_SUN_read_video_pixels */
-
-#ifdef GL_SUN_slice_accum
-
-static void _glewInfo_GL_SUN_slice_accum (void)
-{
-  glewPrintExt("GL_SUN_slice_accum", GLEW_SUN_slice_accum, glewIsSupported("GL_SUN_slice_accum"), glewGetExtension("GL_SUN_slice_accum"));
-}
-
-#endif /* GL_SUN_slice_accum */
-
-#ifdef GL_SUN_triangle_list
-
-static void _glewInfo_GL_SUN_triangle_list (void)
-{
-  glewPrintExt("GL_SUN_triangle_list", GLEW_SUN_triangle_list, glewIsSupported("GL_SUN_triangle_list"), glewGetExtension("GL_SUN_triangle_list"));
-
-  glewInfoFunc("glReplacementCodePointerSUN", glReplacementCodePointerSUN == NULL);
-  glewInfoFunc("glReplacementCodeubSUN", glReplacementCodeubSUN == NULL);
-  glewInfoFunc("glReplacementCodeubvSUN", glReplacementCodeubvSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiSUN", glReplacementCodeuiSUN == NULL);
-  glewInfoFunc("glReplacementCodeuivSUN", glReplacementCodeuivSUN == NULL);
-  glewInfoFunc("glReplacementCodeusSUN", glReplacementCodeusSUN == NULL);
-  glewInfoFunc("glReplacementCodeusvSUN", glReplacementCodeusvSUN == NULL);
-}
-
-#endif /* GL_SUN_triangle_list */
-
-#ifdef GL_SUN_vertex
-
-static void _glewInfo_GL_SUN_vertex (void)
-{
-  glewPrintExt("GL_SUN_vertex", GLEW_SUN_vertex, glewIsSupported("GL_SUN_vertex"), glewGetExtension("GL_SUN_vertex"));
-
-  glewInfoFunc("glColor3fVertex3fSUN", glColor3fVertex3fSUN == NULL);
-  glewInfoFunc("glColor3fVertex3fvSUN", glColor3fVertex3fvSUN == NULL);
-  glewInfoFunc("glColor4fNormal3fVertex3fSUN", glColor4fNormal3fVertex3fSUN == NULL);
-  glewInfoFunc("glColor4fNormal3fVertex3fvSUN", glColor4fNormal3fVertex3fvSUN == NULL);
-  glewInfoFunc("glColor4ubVertex2fSUN", glColor4ubVertex2fSUN == NULL);
-  glewInfoFunc("glColor4ubVertex2fvSUN", glColor4ubVertex2fvSUN == NULL);
-  glewInfoFunc("glColor4ubVertex3fSUN", glColor4ubVertex3fSUN == NULL);
-  glewInfoFunc("glColor4ubVertex3fvSUN", glColor4ubVertex3fvSUN == NULL);
-  glewInfoFunc("glNormal3fVertex3fSUN", glNormal3fVertex3fSUN == NULL);
-  glewInfoFunc("glNormal3fVertex3fvSUN", glNormal3fVertex3fvSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiColor3fVertex3fSUN", glReplacementCodeuiColor3fVertex3fSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiColor3fVertex3fvSUN", glReplacementCodeuiColor3fVertex3fvSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiColor4fNormal3fVertex3fSUN", glReplacementCodeuiColor4fNormal3fVertex3fSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiColor4fNormal3fVertex3fvSUN", glReplacementCodeuiColor4fNormal3fVertex3fvSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiColor4ubVertex3fSUN", glReplacementCodeuiColor4ubVertex3fSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiColor4ubVertex3fvSUN", glReplacementCodeuiColor4ubVertex3fvSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiNormal3fVertex3fSUN", glReplacementCodeuiNormal3fVertex3fSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiNormal3fVertex3fvSUN", glReplacementCodeuiNormal3fVertex3fvSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN", glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN", glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN", glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN", glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiTexCoord2fVertex3fSUN", glReplacementCodeuiTexCoord2fVertex3fSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiTexCoord2fVertex3fvSUN", glReplacementCodeuiTexCoord2fVertex3fvSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiVertex3fSUN", glReplacementCodeuiVertex3fSUN == NULL);
-  glewInfoFunc("glReplacementCodeuiVertex3fvSUN", glReplacementCodeuiVertex3fvSUN == NULL);
-  glewInfoFunc("glTexCoord2fColor3fVertex3fSUN", glTexCoord2fColor3fVertex3fSUN == NULL);
-  glewInfoFunc("glTexCoord2fColor3fVertex3fvSUN", glTexCoord2fColor3fVertex3fvSUN == NULL);
-  glewInfoFunc("glTexCoord2fColor4fNormal3fVertex3fSUN", glTexCoord2fColor4fNormal3fVertex3fSUN == NULL);
-  glewInfoFunc("glTexCoord2fColor4fNormal3fVertex3fvSUN", glTexCoord2fColor4fNormal3fVertex3fvSUN == NULL);
-  glewInfoFunc("glTexCoord2fColor4ubVertex3fSUN", glTexCoord2fColor4ubVertex3fSUN == NULL);
-  glewInfoFunc("glTexCoord2fColor4ubVertex3fvSUN", glTexCoord2fColor4ubVertex3fvSUN == NULL);
-  glewInfoFunc("glTexCoord2fNormal3fVertex3fSUN", glTexCoord2fNormal3fVertex3fSUN == NULL);
-  glewInfoFunc("glTexCoord2fNormal3fVertex3fvSUN", glTexCoord2fNormal3fVertex3fvSUN == NULL);
-  glewInfoFunc("glTexCoord2fVertex3fSUN", glTexCoord2fVertex3fSUN == NULL);
-  glewInfoFunc("glTexCoord2fVertex3fvSUN", glTexCoord2fVertex3fvSUN == NULL);
-  glewInfoFunc("glTexCoord4fColor4fNormal3fVertex4fSUN", glTexCoord4fColor4fNormal3fVertex4fSUN == NULL);
-  glewInfoFunc("glTexCoord4fColor4fNormal3fVertex4fvSUN", glTexCoord4fColor4fNormal3fVertex4fvSUN == NULL);
-  glewInfoFunc("glTexCoord4fVertex4fSUN", glTexCoord4fVertex4fSUN == NULL);
-  glewInfoFunc("glTexCoord4fVertex4fvSUN", glTexCoord4fVertex4fvSUN == NULL);
-}
-
-#endif /* GL_SUN_vertex */
-
-#ifdef GL_WIN_phong_shading
-
-static void _glewInfo_GL_WIN_phong_shading (void)
-{
-  glewPrintExt("GL_WIN_phong_shading", GLEW_WIN_phong_shading, glewIsSupported("GL_WIN_phong_shading"), glewGetExtension("GL_WIN_phong_shading"));
-}
-
-#endif /* GL_WIN_phong_shading */
-
-#ifdef GL_WIN_specular_fog
-
-static void _glewInfo_GL_WIN_specular_fog (void)
-{
-  glewPrintExt("GL_WIN_specular_fog", GLEW_WIN_specular_fog, glewIsSupported("GL_WIN_specular_fog"), glewGetExtension("GL_WIN_specular_fog"));
-}
-
-#endif /* GL_WIN_specular_fog */
-
-#ifdef GL_WIN_swap_hint
-
-static void _glewInfo_GL_WIN_swap_hint (void)
-{
-  glewPrintExt("GL_WIN_swap_hint", GLEW_WIN_swap_hint, glewIsSupported("GL_WIN_swap_hint"), glewGetExtension("GL_WIN_swap_hint"));
-
-  glewInfoFunc("glAddSwapHintRectWIN", glAddSwapHintRectWIN == NULL);
-}
-
-#endif /* GL_WIN_swap_hint */
-
-#ifdef _WIN32
-
-#ifdef WGL_3DFX_multisample
-
-static void _glewInfo_WGL_3DFX_multisample (void)
-{
-  glewPrintExt("WGL_3DFX_multisample", WGLEW_3DFX_multisample, wglewIsSupported("WGL_3DFX_multisample"), wglewGetExtension("WGL_3DFX_multisample"));
-}
-
-#endif /* WGL_3DFX_multisample */
-
-#ifdef WGL_3DL_stereo_control
-
-static void _glewInfo_WGL_3DL_stereo_control (void)
-{
-  glewPrintExt("WGL_3DL_stereo_control", WGLEW_3DL_stereo_control, wglewIsSupported("WGL_3DL_stereo_control"), wglewGetExtension("WGL_3DL_stereo_control"));
-
-  glewInfoFunc("wglSetStereoEmitterState3DL", wglSetStereoEmitterState3DL == NULL);
-}
-
-#endif /* WGL_3DL_stereo_control */
-
-#ifdef WGL_AMD_gpu_association
-
-static void _glewInfo_WGL_AMD_gpu_association (void)
-{
-  glewPrintExt("WGL_AMD_gpu_association", WGLEW_AMD_gpu_association, wglewIsSupported("WGL_AMD_gpu_association"), wglewGetExtension("WGL_AMD_gpu_association"));
-
-  glewInfoFunc("wglBlitContextFramebufferAMD", wglBlitContextFramebufferAMD == NULL);
-  glewInfoFunc("wglCreateAssociatedContextAMD", wglCreateAssociatedContextAMD == NULL);
-  glewInfoFunc("wglCreateAssociatedContextAttribsAMD", wglCreateAssociatedContextAttribsAMD == NULL);
-  glewInfoFunc("wglDeleteAssociatedContextAMD", wglDeleteAssociatedContextAMD == NULL);
-  glewInfoFunc("wglGetContextGPUIDAMD", wglGetContextGPUIDAMD == NULL);
-  glewInfoFunc("wglGetCurrentAssociatedContextAMD", wglGetCurrentAssociatedContextAMD == NULL);
-  glewInfoFunc("wglGetGPUIDsAMD", wglGetGPUIDsAMD == NULL);
-  glewInfoFunc("wglGetGPUInfoAMD", wglGetGPUInfoAMD == NULL);
-  glewInfoFunc("wglMakeAssociatedContextCurrentAMD", wglMakeAssociatedContextCurrentAMD == NULL);
-}
-
-#endif /* WGL_AMD_gpu_association */
-
-#ifdef WGL_ARB_buffer_region
-
-static void _glewInfo_WGL_ARB_buffer_region (void)
-{
-  glewPrintExt("WGL_ARB_buffer_region", WGLEW_ARB_buffer_region, wglewIsSupported("WGL_ARB_buffer_region"), wglewGetExtension("WGL_ARB_buffer_region"));
-
-  glewInfoFunc("wglCreateBufferRegionARB", wglCreateBufferRegionARB == NULL);
-  glewInfoFunc("wglDeleteBufferRegionARB", wglDeleteBufferRegionARB == NULL);
-  glewInfoFunc("wglRestoreBufferRegionARB", wglRestoreBufferRegionARB == NULL);
-  glewInfoFunc("wglSaveBufferRegionARB", wglSaveBufferRegionARB == NULL);
-}
-
-#endif /* WGL_ARB_buffer_region */
-
-#ifdef WGL_ARB_create_context
-
-static void _glewInfo_WGL_ARB_create_context (void)
-{
-  glewPrintExt("WGL_ARB_create_context", WGLEW_ARB_create_context, wglewIsSupported("WGL_ARB_create_context"), wglewGetExtension("WGL_ARB_create_context"));
-
-  glewInfoFunc("wglCreateContextAttribsARB", wglCreateContextAttribsARB == NULL);
-}
-
-#endif /* WGL_ARB_create_context */
-
-#ifdef WGL_ARB_create_context_profile
-
-static void _glewInfo_WGL_ARB_create_context_profile (void)
-{
-  glewPrintExt("WGL_ARB_create_context_profile", WGLEW_ARB_create_context_profile, wglewIsSupported("WGL_ARB_create_context_profile"), wglewGetExtension("WGL_ARB_create_context_profile"));
-}
-
-#endif /* WGL_ARB_create_context_profile */
-
-#ifdef WGL_ARB_extensions_string
-
-static void _glewInfo_WGL_ARB_extensions_string (void)
-{
-  glewPrintExt("WGL_ARB_extensions_string", WGLEW_ARB_extensions_string, wglewIsSupported("WGL_ARB_extensions_string"), wglewGetExtension("WGL_ARB_extensions_string"));
-
-  glewInfoFunc("wglGetExtensionsStringARB", wglGetExtensionsStringARB == NULL);
-}
-
-#endif /* WGL_ARB_extensions_string */
-
-#ifdef WGL_ARB_framebuffer_sRGB
-
-static void _glewInfo_WGL_ARB_framebuffer_sRGB (void)
-{
-  glewPrintExt("WGL_ARB_framebuffer_sRGB", WGLEW_ARB_framebuffer_sRGB, wglewIsSupported("WGL_ARB_framebuffer_sRGB"), wglewGetExtension("WGL_ARB_framebuffer_sRGB"));
-}
-
-#endif /* WGL_ARB_framebuffer_sRGB */
-
-#ifdef WGL_ARB_make_current_read
-
-static void _glewInfo_WGL_ARB_make_current_read (void)
-{
-  glewPrintExt("WGL_ARB_make_current_read", WGLEW_ARB_make_current_read, wglewIsSupported("WGL_ARB_make_current_read"), wglewGetExtension("WGL_ARB_make_current_read"));
-
-  glewInfoFunc("wglGetCurrentReadDCARB", wglGetCurrentReadDCARB == NULL);
-  glewInfoFunc("wglMakeContextCurrentARB", wglMakeContextCurrentARB == NULL);
-}
-
-#endif /* WGL_ARB_make_current_read */
-
-#ifdef WGL_ARB_multisample
-
-static void _glewInfo_WGL_ARB_multisample (void)
-{
-  glewPrintExt("WGL_ARB_multisample", WGLEW_ARB_multisample, wglewIsSupported("WGL_ARB_multisample"), wglewGetExtension("WGL_ARB_multisample"));
-}
-
-#endif /* WGL_ARB_multisample */
-
-#ifdef WGL_ARB_pbuffer
-
-static void _glewInfo_WGL_ARB_pbuffer (void)
-{
-  glewPrintExt("WGL_ARB_pbuffer", WGLEW_ARB_pbuffer, wglewIsSupported("WGL_ARB_pbuffer"), wglewGetExtension("WGL_ARB_pbuffer"));
-
-  glewInfoFunc("wglCreatePbufferARB", wglCreatePbufferARB == NULL);
-  glewInfoFunc("wglDestroyPbufferARB", wglDestroyPbufferARB == NULL);
-  glewInfoFunc("wglGetPbufferDCARB", wglGetPbufferDCARB == NULL);
-  glewInfoFunc("wglQueryPbufferARB", wglQueryPbufferARB == NULL);
-  glewInfoFunc("wglReleasePbufferDCARB", wglReleasePbufferDCARB == NULL);
-}
-
-#endif /* WGL_ARB_pbuffer */
-
-#ifdef WGL_ARB_pixel_format
-
-static void _glewInfo_WGL_ARB_pixel_format (void)
-{
-  glewPrintExt("WGL_ARB_pixel_format", WGLEW_ARB_pixel_format, wglewIsSupported("WGL_ARB_pixel_format"), wglewGetExtension("WGL_ARB_pixel_format"));
-
-  glewInfoFunc("wglChoosePixelFormatARB", wglChoosePixelFormatARB == NULL);
-  glewInfoFunc("wglGetPixelFormatAttribfvARB", wglGetPixelFormatAttribfvARB == NULL);
-  glewInfoFunc("wglGetPixelFormatAttribivARB", wglGetPixelFormatAttribivARB == NULL);
-}
-
-#endif /* WGL_ARB_pixel_format */
-
-#ifdef WGL_ARB_pixel_format_float
-
-static void _glewInfo_WGL_ARB_pixel_format_float (void)
-{
-  glewPrintExt("WGL_ARB_pixel_format_float", WGLEW_ARB_pixel_format_float, wglewIsSupported("WGL_ARB_pixel_format_float"), wglewGetExtension("WGL_ARB_pixel_format_float"));
-}
-
-#endif /* WGL_ARB_pixel_format_float */
-
-#ifdef WGL_ARB_render_texture
-
-static void _glewInfo_WGL_ARB_render_texture (void)
-{
-  glewPrintExt("WGL_ARB_render_texture", WGLEW_ARB_render_texture, wglewIsSupported("WGL_ARB_render_texture"), wglewGetExtension("WGL_ARB_render_texture"));
-
-  glewInfoFunc("wglBindTexImageARB", wglBindTexImageARB == NULL);
-  glewInfoFunc("wglReleaseTexImageARB", wglReleaseTexImageARB == NULL);
-  glewInfoFunc("wglSetPbufferAttribARB", wglSetPbufferAttribARB == NULL);
-}
-
-#endif /* WGL_ARB_render_texture */
-
-#ifdef WGL_ATI_pixel_format_float
-
-static void _glewInfo_WGL_ATI_pixel_format_float (void)
-{
-  glewPrintExt("WGL_ATI_pixel_format_float", WGLEW_ATI_pixel_format_float, wglewIsSupported("WGL_ATI_pixel_format_float"), wglewGetExtension("WGL_ATI_pixel_format_float"));
-}
-
-#endif /* WGL_ATI_pixel_format_float */
-
-#ifdef WGL_ATI_render_texture_rectangle
-
-static void _glewInfo_WGL_ATI_render_texture_rectangle (void)
-{
-  glewPrintExt("WGL_ATI_render_texture_rectangle", WGLEW_ATI_render_texture_rectangle, wglewIsSupported("WGL_ATI_render_texture_rectangle"), wglewGetExtension("WGL_ATI_render_texture_rectangle"));
-}
-
-#endif /* WGL_ATI_render_texture_rectangle */
-
-#ifdef WGL_EXT_depth_float
-
-static void _glewInfo_WGL_EXT_depth_float (void)
-{
-  glewPrintExt("WGL_EXT_depth_float", WGLEW_EXT_depth_float, wglewIsSupported("WGL_EXT_depth_float"), wglewGetExtension("WGL_EXT_depth_float"));
-}
-
-#endif /* WGL_EXT_depth_float */
-
-#ifdef WGL_EXT_display_color_table
-
-static void _glewInfo_WGL_EXT_display_color_table (void)
-{
-  glewPrintExt("WGL_EXT_display_color_table", WGLEW_EXT_display_color_table, wglewIsSupported("WGL_EXT_display_color_table"), wglewGetExtension("WGL_EXT_display_color_table"));
-
-  glewInfoFunc("wglBindDisplayColorTableEXT", wglBindDisplayColorTableEXT == NULL);
-  glewInfoFunc("wglCreateDisplayColorTableEXT", wglCreateDisplayColorTableEXT == NULL);
-  glewInfoFunc("wglDestroyDisplayColorTableEXT", wglDestroyDisplayColorTableEXT == NULL);
-  glewInfoFunc("wglLoadDisplayColorTableEXT", wglLoadDisplayColorTableEXT == NULL);
-}
-
-#endif /* WGL_EXT_display_color_table */
-
-#ifdef WGL_EXT_extensions_string
-
-static void _glewInfo_WGL_EXT_extensions_string (void)
-{
-  glewPrintExt("WGL_EXT_extensions_string", WGLEW_EXT_extensions_string, wglewIsSupported("WGL_EXT_extensions_string"), wglewGetExtension("WGL_EXT_extensions_string"));
-
-  glewInfoFunc("wglGetExtensionsStringEXT", wglGetExtensionsStringEXT == NULL);
-}
-
-#endif /* WGL_EXT_extensions_string */
-
-#ifdef WGL_EXT_framebuffer_sRGB
-
-static void _glewInfo_WGL_EXT_framebuffer_sRGB (void)
-{
-  glewPrintExt("WGL_EXT_framebuffer_sRGB", WGLEW_EXT_framebuffer_sRGB, wglewIsSupported("WGL_EXT_framebuffer_sRGB"), wglewGetExtension("WGL_EXT_framebuffer_sRGB"));
-}
-
-#endif /* WGL_EXT_framebuffer_sRGB */
-
-#ifdef WGL_EXT_make_current_read
-
-static void _glewInfo_WGL_EXT_make_current_read (void)
-{
-  glewPrintExt("WGL_EXT_make_current_read", WGLEW_EXT_make_current_read, wglewIsSupported("WGL_EXT_make_current_read"), wglewGetExtension("WGL_EXT_make_current_read"));
-
-  glewInfoFunc("wglGetCurrentReadDCEXT", wglGetCurrentReadDCEXT == NULL);
-  glewInfoFunc("wglMakeContextCurrentEXT", wglMakeContextCurrentEXT == NULL);
-}
-
-#endif /* WGL_EXT_make_current_read */
-
-#ifdef WGL_EXT_multisample
-
-static void _glewInfo_WGL_EXT_multisample (void)
-{
-  glewPrintExt("WGL_EXT_multisample", WGLEW_EXT_multisample, wglewIsSupported("WGL_EXT_multisample"), wglewGetExtension("WGL_EXT_multisample"));
-}
-
-#endif /* WGL_EXT_multisample */
-
-#ifdef WGL_EXT_pbuffer
-
-static void _glewInfo_WGL_EXT_pbuffer (void)
-{
-  glewPrintExt("WGL_EXT_pbuffer", WGLEW_EXT_pbuffer, wglewIsSupported("WGL_EXT_pbuffer"), wglewGetExtension("WGL_EXT_pbuffer"));
-
-  glewInfoFunc("wglCreatePbufferEXT", wglCreatePbufferEXT == NULL);
-  glewInfoFunc("wglDestroyPbufferEXT", wglDestroyPbufferEXT == NULL);
-  glewInfoFunc("wglGetPbufferDCEXT", wglGetPbufferDCEXT == NULL);
-  glewInfoFunc("wglQueryPbufferEXT", wglQueryPbufferEXT == NULL);
-  glewInfoFunc("wglReleasePbufferDCEXT", wglReleasePbufferDCEXT == NULL);
-}
-
-#endif /* WGL_EXT_pbuffer */
-
-#ifdef WGL_EXT_pixel_format
-
-static void _glewInfo_WGL_EXT_pixel_format (void)
-{
-  glewPrintExt("WGL_EXT_pixel_format", WGLEW_EXT_pixel_format, wglewIsSupported("WGL_EXT_pixel_format"), wglewGetExtension("WGL_EXT_pixel_format"));
-
-  glewInfoFunc("wglChoosePixelFormatEXT", wglChoosePixelFormatEXT == NULL);
-  glewInfoFunc("wglGetPixelFormatAttribfvEXT", wglGetPixelFormatAttribfvEXT == NULL);
-  glewInfoFunc("wglGetPixelFormatAttribivEXT", wglGetPixelFormatAttribivEXT == NULL);
-}
-
-#endif /* WGL_EXT_pixel_format */
-
-#ifdef WGL_EXT_pixel_format_packed_float
-
-static void _glewInfo_WGL_EXT_pixel_format_packed_float (void)
-{
-  glewPrintExt("WGL_EXT_pixel_format_packed_float", WGLEW_EXT_pixel_format_packed_float, wglewIsSupported("WGL_EXT_pixel_format_packed_float"), wglewGetExtension("WGL_EXT_pixel_format_packed_float"));
-}
-
-#endif /* WGL_EXT_pixel_format_packed_float */
-
-#ifdef WGL_EXT_swap_control
-
-static void _glewInfo_WGL_EXT_swap_control (void)
-{
-  glewPrintExt("WGL_EXT_swap_control", WGLEW_EXT_swap_control, wglewIsSupported("WGL_EXT_swap_control"), wglewGetExtension("WGL_EXT_swap_control"));
-
-  glewInfoFunc("wglGetSwapIntervalEXT", wglGetSwapIntervalEXT == NULL);
-  glewInfoFunc("wglSwapIntervalEXT", wglSwapIntervalEXT == NULL);
-}
-
-#endif /* WGL_EXT_swap_control */
-
-#ifdef WGL_I3D_digital_video_control
-
-static void _glewInfo_WGL_I3D_digital_video_control (void)
-{
-  glewPrintExt("WGL_I3D_digital_video_control", WGLEW_I3D_digital_video_control, wglewIsSupported("WGL_I3D_digital_video_control"), wglewGetExtension("WGL_I3D_digital_video_control"));
-
-  glewInfoFunc("wglGetDigitalVideoParametersI3D", wglGetDigitalVideoParametersI3D == NULL);
-  glewInfoFunc("wglSetDigitalVideoParametersI3D", wglSetDigitalVideoParametersI3D == NULL);
-}
-
-#endif /* WGL_I3D_digital_video_control */
-
-#ifdef WGL_I3D_gamma
-
-static void _glewInfo_WGL_I3D_gamma (void)
-{
-  glewPrintExt("WGL_I3D_gamma", WGLEW_I3D_gamma, wglewIsSupported("WGL_I3D_gamma"), wglewGetExtension("WGL_I3D_gamma"));
-
-  glewInfoFunc("wglGetGammaTableI3D", wglGetGammaTableI3D == NULL);
-  glewInfoFunc("wglGetGammaTableParametersI3D", wglGetGammaTableParametersI3D == NULL);
-  glewInfoFunc("wglSetGammaTableI3D", wglSetGammaTableI3D == NULL);
-  glewInfoFunc("wglSetGammaTableParametersI3D", wglSetGammaTableParametersI3D == NULL);
-}
-
-#endif /* WGL_I3D_gamma */
-
-#ifdef WGL_I3D_genlock
-
-static void _glewInfo_WGL_I3D_genlock (void)
-{
-  glewPrintExt("WGL_I3D_genlock", WGLEW_I3D_genlock, wglewIsSupported("WGL_I3D_genlock"), wglewGetExtension("WGL_I3D_genlock"));
-
-  glewInfoFunc("wglDisableGenlockI3D", wglDisableGenlockI3D == NULL);
-  glewInfoFunc("wglEnableGenlockI3D", wglEnableGenlockI3D == NULL);
-  glewInfoFunc("wglGenlockSampleRateI3D", wglGenlockSampleRateI3D == NULL);
-  glewInfoFunc("wglGenlockSourceDelayI3D", wglGenlockSourceDelayI3D == NULL);
-  glewInfoFunc("wglGenlockSourceEdgeI3D", wglGenlockSourceEdgeI3D == NULL);
-  glewInfoFunc("wglGenlockSourceI3D", wglGenlockSourceI3D == NULL);
-  glewInfoFunc("wglGetGenlockSampleRateI3D", wglGetGenlockSampleRateI3D == NULL);
-  glewInfoFunc("wglGetGenlockSourceDelayI3D", wglGetGenlockSourceDelayI3D == NULL);
-  glewInfoFunc("wglGetGenlockSourceEdgeI3D", wglGetGenlockSourceEdgeI3D == NULL);
-  glewInfoFunc("wglGetGenlockSourceI3D", wglGetGenlockSourceI3D == NULL);
-  glewInfoFunc("wglIsEnabledGenlockI3D", wglIsEnabledGenlockI3D == NULL);
-  glewInfoFunc("wglQueryGenlockMaxSourceDelayI3D", wglQueryGenlockMaxSourceDelayI3D == NULL);
-}
-
-#endif /* WGL_I3D_genlock */
-
-#ifdef WGL_I3D_image_buffer
-
-static void _glewInfo_WGL_I3D_image_buffer (void)
-{
-  glewPrintExt("WGL_I3D_image_buffer", WGLEW_I3D_image_buffer, wglewIsSupported("WGL_I3D_image_buffer"), wglewGetExtension("WGL_I3D_image_buffer"));
-
-  glewInfoFunc("wglAssociateImageBufferEventsI3D", wglAssociateImageBufferEventsI3D == NULL);
-  glewInfoFunc("wglCreateImageBufferI3D", wglCreateImageBufferI3D == NULL);
-  glewInfoFunc("wglDestroyImageBufferI3D", wglDestroyImageBufferI3D == NULL);
-  glewInfoFunc("wglReleaseImageBufferEventsI3D", wglReleaseImageBufferEventsI3D == NULL);
-}
-
-#endif /* WGL_I3D_image_buffer */
-
-#ifdef WGL_I3D_swap_frame_lock
-
-static void _glewInfo_WGL_I3D_swap_frame_lock (void)
-{
-  glewPrintExt("WGL_I3D_swap_frame_lock", WGLEW_I3D_swap_frame_lock, wglewIsSupported("WGL_I3D_swap_frame_lock"), wglewGetExtension("WGL_I3D_swap_frame_lock"));
-
-  glewInfoFunc("wglDisableFrameLockI3D", wglDisableFrameLockI3D == NULL);
-  glewInfoFunc("wglEnableFrameLockI3D", wglEnableFrameLockI3D == NULL);
-  glewInfoFunc("wglIsEnabledFrameLockI3D", wglIsEnabledFrameLockI3D == NULL);
-  glewInfoFunc("wglQueryFrameLockMasterI3D", wglQueryFrameLockMasterI3D == NULL);
-}
-
-#endif /* WGL_I3D_swap_frame_lock */
-
-#ifdef WGL_I3D_swap_frame_usage
-
-static void _glewInfo_WGL_I3D_swap_frame_usage (void)
-{
-  glewPrintExt("WGL_I3D_swap_frame_usage", WGLEW_I3D_swap_frame_usage, wglewIsSupported("WGL_I3D_swap_frame_usage"), wglewGetExtension("WGL_I3D_swap_frame_usage"));
-
-  glewInfoFunc("wglBeginFrameTrackingI3D", wglBeginFrameTrackingI3D == NULL);
-  glewInfoFunc("wglEndFrameTrackingI3D", wglEndFrameTrackingI3D == NULL);
-  glewInfoFunc("wglGetFrameUsageI3D", wglGetFrameUsageI3D == NULL);
-  glewInfoFunc("wglQueryFrameTrackingI3D", wglQueryFrameTrackingI3D == NULL);
-}
-
-#endif /* WGL_I3D_swap_frame_usage */
-
-#ifdef WGL_NV_copy_image
-
-static void _glewInfo_WGL_NV_copy_image (void)
-{
-  glewPrintExt("WGL_NV_copy_image", WGLEW_NV_copy_image, wglewIsSupported("WGL_NV_copy_image"), wglewGetExtension("WGL_NV_copy_image"));
-
-  glewInfoFunc("wglCopyImageSubDataNV", wglCopyImageSubDataNV == NULL);
-}
-
-#endif /* WGL_NV_copy_image */
-
-#ifdef WGL_NV_float_buffer
-
-static void _glewInfo_WGL_NV_float_buffer (void)
-{
-  glewPrintExt("WGL_NV_float_buffer", WGLEW_NV_float_buffer, wglewIsSupported("WGL_NV_float_buffer"), wglewGetExtension("WGL_NV_float_buffer"));
-}
-
-#endif /* WGL_NV_float_buffer */
-
-#ifdef WGL_NV_gpu_affinity
-
-static void _glewInfo_WGL_NV_gpu_affinity (void)
-{
-  glewPrintExt("WGL_NV_gpu_affinity", WGLEW_NV_gpu_affinity, wglewIsSupported("WGL_NV_gpu_affinity"), wglewGetExtension("WGL_NV_gpu_affinity"));
-
-  glewInfoFunc("wglCreateAffinityDCNV", wglCreateAffinityDCNV == NULL);
-  glewInfoFunc("wglDeleteDCNV", wglDeleteDCNV == NULL);
-  glewInfoFunc("wglEnumGpuDevicesNV", wglEnumGpuDevicesNV == NULL);
-  glewInfoFunc("wglEnumGpusFromAffinityDCNV", wglEnumGpusFromAffinityDCNV == NULL);
-  glewInfoFunc("wglEnumGpusNV", wglEnumGpusNV == NULL);
-}
-
-#endif /* WGL_NV_gpu_affinity */
-
-#ifdef WGL_NV_present_video
-
-static void _glewInfo_WGL_NV_present_video (void)
-{
-  glewPrintExt("WGL_NV_present_video", WGLEW_NV_present_video, wglewIsSupported("WGL_NV_present_video"), wglewGetExtension("WGL_NV_present_video"));
-
-  glewInfoFunc("wglBindVideoDeviceNV", wglBindVideoDeviceNV == NULL);
-  glewInfoFunc("wglEnumerateVideoDevicesNV", wglEnumerateVideoDevicesNV == NULL);
-  glewInfoFunc("wglQueryCurrentContextNV", wglQueryCurrentContextNV == NULL);
-}
-
-#endif /* WGL_NV_present_video */
-
-#ifdef WGL_NV_render_depth_texture
-
-static void _glewInfo_WGL_NV_render_depth_texture (void)
-{
-  glewPrintExt("WGL_NV_render_depth_texture", WGLEW_NV_render_depth_texture, wglewIsSupported("WGL_NV_render_depth_texture"), wglewGetExtension("WGL_NV_render_depth_texture"));
-}
-
-#endif /* WGL_NV_render_depth_texture */
-
-#ifdef WGL_NV_render_texture_rectangle
-
-static void _glewInfo_WGL_NV_render_texture_rectangle (void)
-{
-  glewPrintExt("WGL_NV_render_texture_rectangle", WGLEW_NV_render_texture_rectangle, wglewIsSupported("WGL_NV_render_texture_rectangle"), wglewGetExtension("WGL_NV_render_texture_rectangle"));
-}
-
-#endif /* WGL_NV_render_texture_rectangle */
-
-#ifdef WGL_NV_swap_group
-
-static void _glewInfo_WGL_NV_swap_group (void)
-{
-  glewPrintExt("WGL_NV_swap_group", WGLEW_NV_swap_group, wglewIsSupported("WGL_NV_swap_group"), wglewGetExtension("WGL_NV_swap_group"));
-
-  glewInfoFunc("wglBindSwapBarrierNV", wglBindSwapBarrierNV == NULL);
-  glewInfoFunc("wglJoinSwapGroupNV", wglJoinSwapGroupNV == NULL);
-  glewInfoFunc("wglQueryFrameCountNV", wglQueryFrameCountNV == NULL);
-  glewInfoFunc("wglQueryMaxSwapGroupsNV", wglQueryMaxSwapGroupsNV == NULL);
-  glewInfoFunc("wglQuerySwapGroupNV", wglQuerySwapGroupNV == NULL);
-  glewInfoFunc("wglResetFrameCountNV", wglResetFrameCountNV == NULL);
-}
-
-#endif /* WGL_NV_swap_group */
-
-#ifdef WGL_NV_vertex_array_range
-
-static void _glewInfo_WGL_NV_vertex_array_range (void)
-{
-  glewPrintExt("WGL_NV_vertex_array_range", WGLEW_NV_vertex_array_range, wglewIsSupported("WGL_NV_vertex_array_range"), wglewGetExtension("WGL_NV_vertex_array_range"));
-
-  glewInfoFunc("wglAllocateMemoryNV", wglAllocateMemoryNV == NULL);
-  glewInfoFunc("wglFreeMemoryNV", wglFreeMemoryNV == NULL);
-}
-
-#endif /* WGL_NV_vertex_array_range */
-
-#ifdef WGL_NV_video_output
-
-static void _glewInfo_WGL_NV_video_output (void)
-{
-  glewPrintExt("WGL_NV_video_output", WGLEW_NV_video_output, wglewIsSupported("WGL_NV_video_output"), wglewGetExtension("WGL_NV_video_output"));
-
-  glewInfoFunc("wglBindVideoImageNV", wglBindVideoImageNV == NULL);
-  glewInfoFunc("wglGetVideoDeviceNV", wglGetVideoDeviceNV == NULL);
-  glewInfoFunc("wglGetVideoInfoNV", wglGetVideoInfoNV == NULL);
-  glewInfoFunc("wglReleaseVideoDeviceNV", wglReleaseVideoDeviceNV == NULL);
-  glewInfoFunc("wglReleaseVideoImageNV", wglReleaseVideoImageNV == NULL);
-  glewInfoFunc("wglSendPbufferToVideoNV", wglSendPbufferToVideoNV == NULL);
-}
-
-#endif /* WGL_NV_video_output */
-
-#ifdef WGL_OML_sync_control
-
-static void _glewInfo_WGL_OML_sync_control (void)
-{
-  glewPrintExt("WGL_OML_sync_control", WGLEW_OML_sync_control, wglewIsSupported("WGL_OML_sync_control"), wglewGetExtension("WGL_OML_sync_control"));
-
-  glewInfoFunc("wglGetMscRateOML", wglGetMscRateOML == NULL);
-  glewInfoFunc("wglGetSyncValuesOML", wglGetSyncValuesOML == NULL);
-  glewInfoFunc("wglSwapBuffersMscOML", wglSwapBuffersMscOML == NULL);
-  glewInfoFunc("wglSwapLayerBuffersMscOML", wglSwapLayerBuffersMscOML == NULL);
-  glewInfoFunc("wglWaitForMscOML", wglWaitForMscOML == NULL);
-  glewInfoFunc("wglWaitForSbcOML", wglWaitForSbcOML == NULL);
-}
-
-#endif /* WGL_OML_sync_control */
-
-#else /* _UNIX */
-
-#ifdef GLX_VERSION_1_2
-
-static void _glewInfo_GLX_VERSION_1_2 (void)
-{
-  glewPrintExt("GLX_VERSION_1_2", GLXEW_VERSION_1_2, GLXEW_VERSION_1_2, GLXEW_VERSION_1_2);
-
-  glewInfoFunc("glXGetCurrentDisplay", glXGetCurrentDisplay == NULL);
-}
-
-#endif /* GLX_VERSION_1_2 */
-
-#ifdef GLX_VERSION_1_3
-
-static void _glewInfo_GLX_VERSION_1_3 (void)
-{
-  glewPrintExt("GLX_VERSION_1_3", GLXEW_VERSION_1_3, GLXEW_VERSION_1_3, GLXEW_VERSION_1_3);
-
-  glewInfoFunc("glXChooseFBConfig", glXChooseFBConfig == NULL);
-  glewInfoFunc("glXCreateNewContext", glXCreateNewContext == NULL);
-  glewInfoFunc("glXCreatePbuffer", glXCreatePbuffer == NULL);
-  glewInfoFunc("glXCreatePixmap", glXCreatePixmap == NULL);
-  glewInfoFunc("glXCreateWindow", glXCreateWindow == NULL);
-  glewInfoFunc("glXDestroyPbuffer", glXDestroyPbuffer == NULL);
-  glewInfoFunc("glXDestroyPixmap", glXDestroyPixmap == NULL);
-  glewInfoFunc("glXDestroyWindow", glXDestroyWindow == NULL);
-  glewInfoFunc("glXGetCurrentReadDrawable", glXGetCurrentReadDrawable == NULL);
-  glewInfoFunc("glXGetFBConfigAttrib", glXGetFBConfigAttrib == NULL);
-  glewInfoFunc("glXGetFBConfigs", glXGetFBConfigs == NULL);
-  glewInfoFunc("glXGetSelectedEvent", glXGetSelectedEvent == NULL);
-  glewInfoFunc("glXGetVisualFromFBConfig", glXGetVisualFromFBConfig == NULL);
-  glewInfoFunc("glXMakeContextCurrent", glXMakeContextCurrent == NULL);
-  glewInfoFunc("glXQueryContext", glXQueryContext == NULL);
-  glewInfoFunc("glXQueryDrawable", glXQueryDrawable == NULL);
-  glewInfoFunc("glXSelectEvent", glXSelectEvent == NULL);
-}
-
-#endif /* GLX_VERSION_1_3 */
-
-#ifdef GLX_VERSION_1_4
-
-static void _glewInfo_GLX_VERSION_1_4 (void)
-{
-  glewPrintExt("GLX_VERSION_1_4", GLXEW_VERSION_1_4, GLXEW_VERSION_1_4, GLXEW_VERSION_1_4);
-}
-
-#endif /* GLX_VERSION_1_4 */
-
-#ifdef GLX_3DFX_multisample
-
-static void _glewInfo_GLX_3DFX_multisample (void)
-{
-  glewPrintExt("GLX_3DFX_multisample", GLXEW_3DFX_multisample, glxewIsSupported("GLX_3DFX_multisample"), glxewGetExtension("GLX_3DFX_multisample"));
-}
-
-#endif /* GLX_3DFX_multisample */
-
-#ifdef GLX_ARB_create_context
-
-static void _glewInfo_GLX_ARB_create_context (void)
-{
-  glewPrintExt("GLX_ARB_create_context", GLXEW_ARB_create_context, glxewIsSupported("GLX_ARB_create_context"), glxewGetExtension("GLX_ARB_create_context"));
-
-  glewInfoFunc("glXCreateContextAttribsARB", glXCreateContextAttribsARB == NULL);
-}
-
-#endif /* GLX_ARB_create_context */
-
-#ifdef GLX_ARB_create_context_profile
-
-static void _glewInfo_GLX_ARB_create_context_profile (void)
-{
-  glewPrintExt("GLX_ARB_create_context_profile", GLXEW_ARB_create_context_profile, glxewIsSupported("GLX_ARB_create_context_profile"), glxewGetExtension("GLX_ARB_create_context_profile"));
-}
-
-#endif /* GLX_ARB_create_context_profile */
-
-#ifdef GLX_ARB_fbconfig_float
-
-static void _glewInfo_GLX_ARB_fbconfig_float (void)
-{
-  glewPrintExt("GLX_ARB_fbconfig_float", GLXEW_ARB_fbconfig_float, glxewIsSupported("GLX_ARB_fbconfig_float"), glxewGetExtension("GLX_ARB_fbconfig_float"));
-}
-
-#endif /* GLX_ARB_fbconfig_float */
-
-#ifdef GLX_ARB_framebuffer_sRGB
-
-static void _glewInfo_GLX_ARB_framebuffer_sRGB (void)
-{
-  glewPrintExt("GLX_ARB_framebuffer_sRGB", GLXEW_ARB_framebuffer_sRGB, glxewIsSupported("GLX_ARB_framebuffer_sRGB"), glxewGetExtension("GLX_ARB_framebuffer_sRGB"));
-}
-
-#endif /* GLX_ARB_framebuffer_sRGB */
-
-#ifdef GLX_ARB_get_proc_address
-
-static void _glewInfo_GLX_ARB_get_proc_address (void)
-{
-  glewPrintExt("GLX_ARB_get_proc_address", GLXEW_ARB_get_proc_address, glxewIsSupported("GLX_ARB_get_proc_address"), glxewGetExtension("GLX_ARB_get_proc_address"));
-}
-
-#endif /* GLX_ARB_get_proc_address */
-
-#ifdef GLX_ARB_multisample
-
-static void _glewInfo_GLX_ARB_multisample (void)
-{
-  glewPrintExt("GLX_ARB_multisample", GLXEW_ARB_multisample, glxewIsSupported("GLX_ARB_multisample"), glxewGetExtension("GLX_ARB_multisample"));
-}
-
-#endif /* GLX_ARB_multisample */
-
-#ifdef GLX_ARB_vertex_buffer_object
-
-static void _glewInfo_GLX_ARB_vertex_buffer_object (void)
-{
-  glewPrintExt("GLX_ARB_vertex_buffer_object", GLXEW_ARB_vertex_buffer_object, glxewIsSupported("GLX_ARB_vertex_buffer_object"), glxewGetExtension("GLX_ARB_vertex_buffer_object"));
-}
-
-#endif /* GLX_ARB_vertex_buffer_object */
-
-#ifdef GLX_ATI_pixel_format_float
-
-static void _glewInfo_GLX_ATI_pixel_format_float (void)
-{
-  glewPrintExt("GLX_ATI_pixel_format_float", GLXEW_ATI_pixel_format_float, glxewIsSupported("GLX_ATI_pixel_format_float"), glxewGetExtension("GLX_ATI_pixel_format_float"));
-}
-
-#endif /* GLX_ATI_pixel_format_float */
-
-#ifdef GLX_ATI_render_texture
-
-static void _glewInfo_GLX_ATI_render_texture (void)
-{
-  glewPrintExt("GLX_ATI_render_texture", GLXEW_ATI_render_texture, glxewIsSupported("GLX_ATI_render_texture"), glxewGetExtension("GLX_ATI_render_texture"));
-
-  glewInfoFunc("glXBindTexImageATI", glXBindTexImageATI == NULL);
-  glewInfoFunc("glXDrawableAttribATI", glXDrawableAttribATI == NULL);
-  glewInfoFunc("glXReleaseTexImageATI", glXReleaseTexImageATI == NULL);
-}
-
-#endif /* GLX_ATI_render_texture */
-
-#ifdef GLX_EXT_fbconfig_packed_float
-
-static void _glewInfo_GLX_EXT_fbconfig_packed_float (void)
-{
-  glewPrintExt("GLX_EXT_fbconfig_packed_float", GLXEW_EXT_fbconfig_packed_float, glxewIsSupported("GLX_EXT_fbconfig_packed_float"), glxewGetExtension("GLX_EXT_fbconfig_packed_float"));
-}
-
-#endif /* GLX_EXT_fbconfig_packed_float */
-
-#ifdef GLX_EXT_framebuffer_sRGB
-
-static void _glewInfo_GLX_EXT_framebuffer_sRGB (void)
-{
-  glewPrintExt("GLX_EXT_framebuffer_sRGB", GLXEW_EXT_framebuffer_sRGB, glxewIsSupported("GLX_EXT_framebuffer_sRGB"), glxewGetExtension("GLX_EXT_framebuffer_sRGB"));
-}
-
-#endif /* GLX_EXT_framebuffer_sRGB */
-
-#ifdef GLX_EXT_import_context
-
-static void _glewInfo_GLX_EXT_import_context (void)
-{
-  glewPrintExt("GLX_EXT_import_context", GLXEW_EXT_import_context, glxewIsSupported("GLX_EXT_import_context"), glxewGetExtension("GLX_EXT_import_context"));
-
-  glewInfoFunc("glXFreeContextEXT", glXFreeContextEXT == NULL);
-  glewInfoFunc("glXGetContextIDEXT", glXGetContextIDEXT == NULL);
-  glewInfoFunc("glXImportContextEXT", glXImportContextEXT == NULL);
-  glewInfoFunc("glXQueryContextInfoEXT", glXQueryContextInfoEXT == NULL);
-}
-
-#endif /* GLX_EXT_import_context */
-
-#ifdef GLX_EXT_scene_marker
-
-static void _glewInfo_GLX_EXT_scene_marker (void)
-{
-  glewPrintExt("GLX_EXT_scene_marker", GLXEW_EXT_scene_marker, glxewIsSupported("GLX_EXT_scene_marker"), glxewGetExtension("GLX_EXT_scene_marker"));
-}
-
-#endif /* GLX_EXT_scene_marker */
-
-#ifdef GLX_EXT_swap_control
-
-static void _glewInfo_GLX_EXT_swap_control (void)
-{
-  glewPrintExt("GLX_EXT_swap_control", GLXEW_EXT_swap_control, glxewIsSupported("GLX_EXT_swap_control"), glxewGetExtension("GLX_EXT_swap_control"));
-
-  glewInfoFunc("glXSwapIntervalEXT", glXSwapIntervalEXT == NULL);
-}
-
-#endif /* GLX_EXT_swap_control */
-
-#ifdef GLX_EXT_texture_from_pixmap
-
-static void _glewInfo_GLX_EXT_texture_from_pixmap (void)
-{
-  glewPrintExt("GLX_EXT_texture_from_pixmap", GLXEW_EXT_texture_from_pixmap, glxewIsSupported("GLX_EXT_texture_from_pixmap"), glxewGetExtension("GLX_EXT_texture_from_pixmap"));
-
-  glewInfoFunc("glXBindTexImageEXT", glXBindTexImageEXT == NULL);
-  glewInfoFunc("glXReleaseTexImageEXT", glXReleaseTexImageEXT == NULL);
-}
-
-#endif /* GLX_EXT_texture_from_pixmap */
-
-#ifdef GLX_EXT_visual_info
-
-static void _glewInfo_GLX_EXT_visual_info (void)
-{
-  glewPrintExt("GLX_EXT_visual_info", GLXEW_EXT_visual_info, glxewIsSupported("GLX_EXT_visual_info"), glxewGetExtension("GLX_EXT_visual_info"));
-}
-
-#endif /* GLX_EXT_visual_info */
-
-#ifdef GLX_EXT_visual_rating
-
-static void _glewInfo_GLX_EXT_visual_rating (void)
-{
-  glewPrintExt("GLX_EXT_visual_rating", GLXEW_EXT_visual_rating, glxewIsSupported("GLX_EXT_visual_rating"), glxewGetExtension("GLX_EXT_visual_rating"));
-}
-
-#endif /* GLX_EXT_visual_rating */
-
-#ifdef GLX_INTEL_swap_event
-
-static void _glewInfo_GLX_INTEL_swap_event (void)
-{
-  glewPrintExt("GLX_INTEL_swap_event", GLXEW_INTEL_swap_event, glxewIsSupported("GLX_INTEL_swap_event"), glxewGetExtension("GLX_INTEL_swap_event"));
-}
-
-#endif /* GLX_INTEL_swap_event */
-
-#ifdef GLX_MESA_agp_offset
-
-static void _glewInfo_GLX_MESA_agp_offset (void)
-{
-  glewPrintExt("GLX_MESA_agp_offset", GLXEW_MESA_agp_offset, glxewIsSupported("GLX_MESA_agp_offset"), glxewGetExtension("GLX_MESA_agp_offset"));
-
-  glewInfoFunc("glXGetAGPOffsetMESA", glXGetAGPOffsetMESA == NULL);
-}
-
-#endif /* GLX_MESA_agp_offset */
-
-#ifdef GLX_MESA_copy_sub_buffer
-
-static void _glewInfo_GLX_MESA_copy_sub_buffer (void)
-{
-  glewPrintExt("GLX_MESA_copy_sub_buffer", GLXEW_MESA_copy_sub_buffer, glxewIsSupported("GLX_MESA_copy_sub_buffer"), glxewGetExtension("GLX_MESA_copy_sub_buffer"));
-
-  glewInfoFunc("glXCopySubBufferMESA", glXCopySubBufferMESA == NULL);
-}
-
-#endif /* GLX_MESA_copy_sub_buffer */
-
-#ifdef GLX_MESA_pixmap_colormap
-
-static void _glewInfo_GLX_MESA_pixmap_colormap (void)
-{
-  glewPrintExt("GLX_MESA_pixmap_colormap", GLXEW_MESA_pixmap_colormap, glxewIsSupported("GLX_MESA_pixmap_colormap"), glxewGetExtension("GLX_MESA_pixmap_colormap"));
-
-  glewInfoFunc("glXCreateGLXPixmapMESA", glXCreateGLXPixmapMESA == NULL);
-}
-
-#endif /* GLX_MESA_pixmap_colormap */
-
-#ifdef GLX_MESA_release_buffers
-
-static void _glewInfo_GLX_MESA_release_buffers (void)
-{
-  glewPrintExt("GLX_MESA_release_buffers", GLXEW_MESA_release_buffers, glxewIsSupported("GLX_MESA_release_buffers"), glxewGetExtension("GLX_MESA_release_buffers"));
-
-  glewInfoFunc("glXReleaseBuffersMESA", glXReleaseBuffersMESA == NULL);
-}
-
-#endif /* GLX_MESA_release_buffers */
-
-#ifdef GLX_MESA_set_3dfx_mode
-
-static void _glewInfo_GLX_MESA_set_3dfx_mode (void)
-{
-  glewPrintExt("GLX_MESA_set_3dfx_mode", GLXEW_MESA_set_3dfx_mode, glxewIsSupported("GLX_MESA_set_3dfx_mode"), glxewGetExtension("GLX_MESA_set_3dfx_mode"));
-
-  glewInfoFunc("glXSet3DfxModeMESA", glXSet3DfxModeMESA == NULL);
-}
-
-#endif /* GLX_MESA_set_3dfx_mode */
-
-#ifdef GLX_NV_copy_image
-
-static void _glewInfo_GLX_NV_copy_image (void)
-{
-  glewPrintExt("GLX_NV_copy_image", GLXEW_NV_copy_image, glxewIsSupported("GLX_NV_copy_image"), glxewGetExtension("GLX_NV_copy_image"));
-
-  glewInfoFunc("glXCopyImageSubDataNV", glXCopyImageSubDataNV == NULL);
-}
-
-#endif /* GLX_NV_copy_image */
-
-#ifdef GLX_NV_float_buffer
-
-static void _glewInfo_GLX_NV_float_buffer (void)
-{
-  glewPrintExt("GLX_NV_float_buffer", GLXEW_NV_float_buffer, glxewIsSupported("GLX_NV_float_buffer"), glxewGetExtension("GLX_NV_float_buffer"));
-}
-
-#endif /* GLX_NV_float_buffer */
-
-#ifdef GLX_NV_present_video
-
-static void _glewInfo_GLX_NV_present_video (void)
-{
-  glewPrintExt("GLX_NV_present_video", GLXEW_NV_present_video, glxewIsSupported("GLX_NV_present_video"), glxewGetExtension("GLX_NV_present_video"));
-
-  glewInfoFunc("glXBindVideoDeviceNV", glXBindVideoDeviceNV == NULL);
-  glewInfoFunc("glXEnumerateVideoDevicesNV", glXEnumerateVideoDevicesNV == NULL);
-}
-
-#endif /* GLX_NV_present_video */
-
-#ifdef GLX_NV_swap_group
-
-static void _glewInfo_GLX_NV_swap_group (void)
-{
-  glewPrintExt("GLX_NV_swap_group", GLXEW_NV_swap_group, glxewIsSupported("GLX_NV_swap_group"), glxewGetExtension("GLX_NV_swap_group"));
-
-  glewInfoFunc("glXBindSwapBarrierNV", glXBindSwapBarrierNV == NULL);
-  glewInfoFunc("glXJoinSwapGroupNV", glXJoinSwapGroupNV == NULL);
-  glewInfoFunc("glXQueryFrameCountNV", glXQueryFrameCountNV == NULL);
-  glewInfoFunc("glXQueryMaxSwapGroupsNV", glXQueryMaxSwapGroupsNV == NULL);
-  glewInfoFunc("glXQuerySwapGroupNV", glXQuerySwapGroupNV == NULL);
-  glewInfoFunc("glXResetFrameCountNV", glXResetFrameCountNV == NULL);
-}
-
-#endif /* GLX_NV_swap_group */
-
-#ifdef GLX_NV_vertex_array_range
-
-static void _glewInfo_GLX_NV_vertex_array_range (void)
-{
-  glewPrintExt("GLX_NV_vertex_array_range", GLXEW_NV_vertex_array_range, glxewIsSupported("GLX_NV_vertex_array_range"), glxewGetExtension("GLX_NV_vertex_array_range"));
-
-  glewInfoFunc("glXAllocateMemoryNV", glXAllocateMemoryNV == NULL);
-  glewInfoFunc("glXFreeMemoryNV", glXFreeMemoryNV == NULL);
-}
-
-#endif /* GLX_NV_vertex_array_range */
-
-#ifdef GLX_NV_video_output
-
-static void _glewInfo_GLX_NV_video_output (void)
-{
-  glewPrintExt("GLX_NV_video_output", GLXEW_NV_video_output, glxewIsSupported("GLX_NV_video_output"), glxewGetExtension("GLX_NV_video_output"));
-
-  glewInfoFunc("glXBindVideoImageNV", glXBindVideoImageNV == NULL);
-  glewInfoFunc("glXGetVideoDeviceNV", glXGetVideoDeviceNV == NULL);
-  glewInfoFunc("glXGetVideoInfoNV", glXGetVideoInfoNV == NULL);
-  glewInfoFunc("glXReleaseVideoDeviceNV", glXReleaseVideoDeviceNV == NULL);
-  glewInfoFunc("glXReleaseVideoImageNV", glXReleaseVideoImageNV == NULL);
-  glewInfoFunc("glXSendPbufferToVideoNV", glXSendPbufferToVideoNV == NULL);
-}
-
-#endif /* GLX_NV_video_output */
-
-#ifdef GLX_OML_swap_method
-
-static void _glewInfo_GLX_OML_swap_method (void)
-{
-  glewPrintExt("GLX_OML_swap_method", GLXEW_OML_swap_method, glxewIsSupported("GLX_OML_swap_method"), glxewGetExtension("GLX_OML_swap_method"));
-}
-
-#endif /* GLX_OML_swap_method */
-
-#if defined(GLX_OML_sync_control) && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
-#include <inttypes.h>
-
-static void _glewInfo_GLX_OML_sync_control (void)
-{
-  glewPrintExt("GLX_OML_sync_control", GLXEW_OML_sync_control, glxewIsSupported("GLX_OML_sync_control"), glxewGetExtension("GLX_OML_sync_control"));
-
-  glewInfoFunc("glXGetMscRateOML", glXGetMscRateOML == NULL);
-  glewInfoFunc("glXGetSyncValuesOML", glXGetSyncValuesOML == NULL);
-  glewInfoFunc("glXSwapBuffersMscOML", glXSwapBuffersMscOML == NULL);
-  glewInfoFunc("glXWaitForMscOML", glXWaitForMscOML == NULL);
-  glewInfoFunc("glXWaitForSbcOML", glXWaitForSbcOML == NULL);
-}
-
-#endif /* GLX_OML_sync_control */
-
-#ifdef GLX_SGIS_blended_overlay
-
-static void _glewInfo_GLX_SGIS_blended_overlay (void)
-{
-  glewPrintExt("GLX_SGIS_blended_overlay", GLXEW_SGIS_blended_overlay, glxewIsSupported("GLX_SGIS_blended_overlay"), glxewGetExtension("GLX_SGIS_blended_overlay"));
-}
-
-#endif /* GLX_SGIS_blended_overlay */
-
-#ifdef GLX_SGIS_color_range
-
-static void _glewInfo_GLX_SGIS_color_range (void)
-{
-  glewPrintExt("GLX_SGIS_color_range", GLXEW_SGIS_color_range, glxewIsSupported("GLX_SGIS_color_range"), glxewGetExtension("GLX_SGIS_color_range"));
-}
-
-#endif /* GLX_SGIS_color_range */
-
-#ifdef GLX_SGIS_multisample
-
-static void _glewInfo_GLX_SGIS_multisample (void)
-{
-  glewPrintExt("GLX_SGIS_multisample", GLXEW_SGIS_multisample, glxewIsSupported("GLX_SGIS_multisample"), glxewGetExtension("GLX_SGIS_multisample"));
-}
-
-#endif /* GLX_SGIS_multisample */
-
-#ifdef GLX_SGIS_shared_multisample
-
-static void _glewInfo_GLX_SGIS_shared_multisample (void)
-{
-  glewPrintExt("GLX_SGIS_shared_multisample", GLXEW_SGIS_shared_multisample, glxewIsSupported("GLX_SGIS_shared_multisample"), glxewGetExtension("GLX_SGIS_shared_multisample"));
-}
-
-#endif /* GLX_SGIS_shared_multisample */
-
-#ifdef GLX_SGIX_fbconfig
-
-static void _glewInfo_GLX_SGIX_fbconfig (void)
-{
-  glewPrintExt("GLX_SGIX_fbconfig", GLXEW_SGIX_fbconfig, glxewIsSupported("GLX_SGIX_fbconfig"), glxewGetExtension("GLX_SGIX_fbconfig"));
-
-  glewInfoFunc("glXChooseFBConfigSGIX", glXChooseFBConfigSGIX == NULL);
-  glewInfoFunc("glXCreateContextWithConfigSGIX", glXCreateContextWithConfigSGIX == NULL);
-  glewInfoFunc("glXCreateGLXPixmapWithConfigSGIX", glXCreateGLXPixmapWithConfigSGIX == NULL);
-  glewInfoFunc("glXGetFBConfigAttribSGIX", glXGetFBConfigAttribSGIX == NULL);
-  glewInfoFunc("glXGetFBConfigFromVisualSGIX", glXGetFBConfigFromVisualSGIX == NULL);
-  glewInfoFunc("glXGetVisualFromFBConfigSGIX", glXGetVisualFromFBConfigSGIX == NULL);
-}
-
-#endif /* GLX_SGIX_fbconfig */
-
-#ifdef GLX_SGIX_hyperpipe
-
-static void _glewInfo_GLX_SGIX_hyperpipe (void)
-{
-  glewPrintExt("GLX_SGIX_hyperpipe", GLXEW_SGIX_hyperpipe, glxewIsSupported("GLX_SGIX_hyperpipe"), glxewGetExtension("GLX_SGIX_hyperpipe"));
-
-  glewInfoFunc("glXBindHyperpipeSGIX", glXBindHyperpipeSGIX == NULL);
-  glewInfoFunc("glXDestroyHyperpipeConfigSGIX", glXDestroyHyperpipeConfigSGIX == NULL);
-  glewInfoFunc("glXHyperpipeAttribSGIX", glXHyperpipeAttribSGIX == NULL);
-  glewInfoFunc("glXHyperpipeConfigSGIX", glXHyperpipeConfigSGIX == NULL);
-  glewInfoFunc("glXQueryHyperpipeAttribSGIX", glXQueryHyperpipeAttribSGIX == NULL);
-  glewInfoFunc("glXQueryHyperpipeBestAttribSGIX", glXQueryHyperpipeBestAttribSGIX == NULL);
-  glewInfoFunc("glXQueryHyperpipeConfigSGIX", glXQueryHyperpipeConfigSGIX == NULL);
-  glewInfoFunc("glXQueryHyperpipeNetworkSGIX", glXQueryHyperpipeNetworkSGIX == NULL);
-}
-
-#endif /* GLX_SGIX_hyperpipe */
-
-#ifdef GLX_SGIX_pbuffer
-
-static void _glewInfo_GLX_SGIX_pbuffer (void)
-{
-  glewPrintExt("GLX_SGIX_pbuffer", GLXEW_SGIX_pbuffer, glxewIsSupported("GLX_SGIX_pbuffer"), glxewGetExtension("GLX_SGIX_pbuffer"));
-
-  glewInfoFunc("glXCreateGLXPbufferSGIX", glXCreateGLXPbufferSGIX == NULL);
-  glewInfoFunc("glXDestroyGLXPbufferSGIX", glXDestroyGLXPbufferSGIX == NULL);
-  glewInfoFunc("glXGetSelectedEventSGIX", glXGetSelectedEventSGIX == NULL);
-  glewInfoFunc("glXQueryGLXPbufferSGIX", glXQueryGLXPbufferSGIX == NULL);
-  glewInfoFunc("glXSelectEventSGIX", glXSelectEventSGIX == NULL);
-}
-
-#endif /* GLX_SGIX_pbuffer */
-
-#ifdef GLX_SGIX_swap_barrier
-
-static void _glewInfo_GLX_SGIX_swap_barrier (void)
-{
-  glewPrintExt("GLX_SGIX_swap_barrier", GLXEW_SGIX_swap_barrier, glxewIsSupported("GLX_SGIX_swap_barrier"), glxewGetExtension("GLX_SGIX_swap_barrier"));
-
-  glewInfoFunc("glXBindSwapBarrierSGIX", glXBindSwapBarrierSGIX == NULL);
-  glewInfoFunc("glXQueryMaxSwapBarriersSGIX", glXQueryMaxSwapBarriersSGIX == NULL);
-}
-
-#endif /* GLX_SGIX_swap_barrier */
-
-#ifdef GLX_SGIX_swap_group
-
-static void _glewInfo_GLX_SGIX_swap_group (void)
-{
-  glewPrintExt("GLX_SGIX_swap_group", GLXEW_SGIX_swap_group, glxewIsSupported("GLX_SGIX_swap_group"), glxewGetExtension("GLX_SGIX_swap_group"));
-
-  glewInfoFunc("glXJoinSwapGroupSGIX", glXJoinSwapGroupSGIX == NULL);
-}
-
-#endif /* GLX_SGIX_swap_group */
-
-#ifdef GLX_SGIX_video_resize
-
-static void _glewInfo_GLX_SGIX_video_resize (void)
-{
-  glewPrintExt("GLX_SGIX_video_resize", GLXEW_SGIX_video_resize, glxewIsSupported("GLX_SGIX_video_resize"), glxewGetExtension("GLX_SGIX_video_resize"));
-
-  glewInfoFunc("glXBindChannelToWindowSGIX", glXBindChannelToWindowSGIX == NULL);
-  glewInfoFunc("glXChannelRectSGIX", glXChannelRectSGIX == NULL);
-  glewInfoFunc("glXChannelRectSyncSGIX", glXChannelRectSyncSGIX == NULL);
-  glewInfoFunc("glXQueryChannelDeltasSGIX", glXQueryChannelDeltasSGIX == NULL);
-  glewInfoFunc("glXQueryChannelRectSGIX", glXQueryChannelRectSGIX == NULL);
-}
-
-#endif /* GLX_SGIX_video_resize */
-
-#ifdef GLX_SGIX_visual_select_group
-
-static void _glewInfo_GLX_SGIX_visual_select_group (void)
-{
-  glewPrintExt("GLX_SGIX_visual_select_group", GLXEW_SGIX_visual_select_group, glxewIsSupported("GLX_SGIX_visual_select_group"), glxewGetExtension("GLX_SGIX_visual_select_group"));
-}
-
-#endif /* GLX_SGIX_visual_select_group */
-
-#ifdef GLX_SGI_cushion
-
-static void _glewInfo_GLX_SGI_cushion (void)
-{
-  glewPrintExt("GLX_SGI_cushion", GLXEW_SGI_cushion, glxewIsSupported("GLX_SGI_cushion"), glxewGetExtension("GLX_SGI_cushion"));
-
-  glewInfoFunc("glXCushionSGI", glXCushionSGI == NULL);
-}
-
-#endif /* GLX_SGI_cushion */
-
-#ifdef GLX_SGI_make_current_read
-
-static void _glewInfo_GLX_SGI_make_current_read (void)
-{
-  glewPrintExt("GLX_SGI_make_current_read", GLXEW_SGI_make_current_read, glxewIsSupported("GLX_SGI_make_current_read"), glxewGetExtension("GLX_SGI_make_current_read"));
-
-  glewInfoFunc("glXGetCurrentReadDrawableSGI", glXGetCurrentReadDrawableSGI == NULL);
-  glewInfoFunc("glXMakeCurrentReadSGI", glXMakeCurrentReadSGI == NULL);
-}
-
-#endif /* GLX_SGI_make_current_read */
-
-#ifdef GLX_SGI_swap_control
-
-static void _glewInfo_GLX_SGI_swap_control (void)
-{
-  glewPrintExt("GLX_SGI_swap_control", GLXEW_SGI_swap_control, glxewIsSupported("GLX_SGI_swap_control"), glxewGetExtension("GLX_SGI_swap_control"));
-
-  glewInfoFunc("glXSwapIntervalSGI", glXSwapIntervalSGI == NULL);
-}
-
-#endif /* GLX_SGI_swap_control */
-
-#ifdef GLX_SGI_video_sync
-
-static void _glewInfo_GLX_SGI_video_sync (void)
-{
-  glewPrintExt("GLX_SGI_video_sync", GLXEW_SGI_video_sync, glxewIsSupported("GLX_SGI_video_sync"), glxewGetExtension("GLX_SGI_video_sync"));
-
-  glewInfoFunc("glXGetVideoSyncSGI", glXGetVideoSyncSGI == NULL);
-  glewInfoFunc("glXWaitVideoSyncSGI", glXWaitVideoSyncSGI == NULL);
-}
-
-#endif /* GLX_SGI_video_sync */
-
-#ifdef GLX_SUN_get_transparent_index
-
-static void _glewInfo_GLX_SUN_get_transparent_index (void)
-{
-  glewPrintExt("GLX_SUN_get_transparent_index", GLXEW_SUN_get_transparent_index, glxewIsSupported("GLX_SUN_get_transparent_index"), glxewGetExtension("GLX_SUN_get_transparent_index"));
-
-  glewInfoFunc("glXGetTransparentIndexSUN", glXGetTransparentIndexSUN == NULL);
-}
-
-#endif /* GLX_SUN_get_transparent_index */
-
-#ifdef GLX_SUN_video_resize
-
-static void _glewInfo_GLX_SUN_video_resize (void)
-{
-  glewPrintExt("GLX_SUN_video_resize", GLXEW_SUN_video_resize, glxewIsSupported("GLX_SUN_video_resize"), glxewGetExtension("GLX_SUN_video_resize"));
-
-  glewInfoFunc("glXGetVideoResizeSUN", glXGetVideoResizeSUN == NULL);
-  glewInfoFunc("glXVideoResizeSUN", glXVideoResizeSUN == NULL);
-}
-
-#endif /* GLX_SUN_video_resize */
-
-#endif /* _WIN32 */
-
-/* ------------------------------------------------------------------------ */
-
-static void glewInfo (void)
-{
-#ifdef GL_VERSION_1_1
-  _glewInfo_GL_VERSION_1_1();
-#endif /* GL_VERSION_1_1 */
-#ifdef GL_VERSION_1_2
-  _glewInfo_GL_VERSION_1_2();
-#endif /* GL_VERSION_1_2 */
-#ifdef GL_VERSION_1_3
-  _glewInfo_GL_VERSION_1_3();
-#endif /* GL_VERSION_1_3 */
-#ifdef GL_VERSION_1_4
-  _glewInfo_GL_VERSION_1_4();
-#endif /* GL_VERSION_1_4 */
-#ifdef GL_VERSION_1_5
-  _glewInfo_GL_VERSION_1_5();
-#endif /* GL_VERSION_1_5 */
-#ifdef GL_VERSION_2_0
-  _glewInfo_GL_VERSION_2_0();
-#endif /* GL_VERSION_2_0 */
-#ifdef GL_VERSION_2_1
-  _glewInfo_GL_VERSION_2_1();
-#endif /* GL_VERSION_2_1 */
-#ifdef GL_VERSION_3_0
-  _glewInfo_GL_VERSION_3_0();
-#endif /* GL_VERSION_3_0 */
-#ifdef GL_VERSION_3_1
-  _glewInfo_GL_VERSION_3_1();
-#endif /* GL_VERSION_3_1 */
-#ifdef GL_VERSION_3_2
-  _glewInfo_GL_VERSION_3_2();
-#endif /* GL_VERSION_3_2 */
-#ifdef GL_VERSION_3_3
-  _glewInfo_GL_VERSION_3_3();
-#endif /* GL_VERSION_3_3 */
-#ifdef GL_VERSION_4_0
-  _glewInfo_GL_VERSION_4_0();
-#endif /* GL_VERSION_4_0 */
-#ifdef GL_3DFX_multisample
-  _glewInfo_GL_3DFX_multisample();
-#endif /* GL_3DFX_multisample */
-#ifdef GL_3DFX_tbuffer
-  _glewInfo_GL_3DFX_tbuffer();
-#endif /* GL_3DFX_tbuffer */
-#ifdef GL_3DFX_texture_compression_FXT1
-  _glewInfo_GL_3DFX_texture_compression_FXT1();
-#endif /* GL_3DFX_texture_compression_FXT1 */
-#ifdef GL_AMD_conservative_depth
-  _glewInfo_GL_AMD_conservative_depth();
-#endif /* GL_AMD_conservative_depth */
-#ifdef GL_AMD_draw_buffers_blend
-  _glewInfo_GL_AMD_draw_buffers_blend();
-#endif /* GL_AMD_draw_buffers_blend */
-#ifdef GL_AMD_performance_monitor
-  _glewInfo_GL_AMD_performance_monitor();
-#endif /* GL_AMD_performance_monitor */
-#ifdef GL_AMD_seamless_cubemap_per_texture
-  _glewInfo_GL_AMD_seamless_cubemap_per_texture();
-#endif /* GL_AMD_seamless_cubemap_per_texture */
-#ifdef GL_AMD_shader_stencil_export
-  _glewInfo_GL_AMD_shader_stencil_export();
-#endif /* GL_AMD_shader_stencil_export */
-#ifdef GL_AMD_texture_texture4
-  _glewInfo_GL_AMD_texture_texture4();
-#endif /* GL_AMD_texture_texture4 */
-#ifdef GL_AMD_vertex_shader_tessellator
-  _glewInfo_GL_AMD_vertex_shader_tessellator();
-#endif /* GL_AMD_vertex_shader_tessellator */
-#ifdef GL_APPLE_aux_depth_stencil
-  _glewInfo_GL_APPLE_aux_depth_stencil();
-#endif /* GL_APPLE_aux_depth_stencil */
-#ifdef GL_APPLE_client_storage
-  _glewInfo_GL_APPLE_client_storage();
-#endif /* GL_APPLE_client_storage */
-#ifdef GL_APPLE_element_array
-  _glewInfo_GL_APPLE_element_array();
-#endif /* GL_APPLE_element_array */
-#ifdef GL_APPLE_fence
-  _glewInfo_GL_APPLE_fence();
-#endif /* GL_APPLE_fence */
-#ifdef GL_APPLE_float_pixels
-  _glewInfo_GL_APPLE_float_pixels();
-#endif /* GL_APPLE_float_pixels */
-#ifdef GL_APPLE_flush_buffer_range
-  _glewInfo_GL_APPLE_flush_buffer_range();
-#endif /* GL_APPLE_flush_buffer_range */
-#ifdef GL_APPLE_object_purgeable
-  _glewInfo_GL_APPLE_object_purgeable();
-#endif /* GL_APPLE_object_purgeable */
-#ifdef GL_APPLE_pixel_buffer
-  _glewInfo_GL_APPLE_pixel_buffer();
-#endif /* GL_APPLE_pixel_buffer */
-#ifdef GL_APPLE_rgb_422
-  _glewInfo_GL_APPLE_rgb_422();
-#endif /* GL_APPLE_rgb_422 */
-#ifdef GL_APPLE_row_bytes
-  _glewInfo_GL_APPLE_row_bytes();
-#endif /* GL_APPLE_row_bytes */
-#ifdef GL_APPLE_specular_vector
-  _glewInfo_GL_APPLE_specular_vector();
-#endif /* GL_APPLE_specular_vector */
-#ifdef GL_APPLE_texture_range
-  _glewInfo_GL_APPLE_texture_range();
-#endif /* GL_APPLE_texture_range */
-#ifdef GL_APPLE_transform_hint
-  _glewInfo_GL_APPLE_transform_hint();
-#endif /* GL_APPLE_transform_hint */
-#ifdef GL_APPLE_vertex_array_object
-  _glewInfo_GL_APPLE_vertex_array_object();
-#endif /* GL_APPLE_vertex_array_object */
-#ifdef GL_APPLE_vertex_array_range
-  _glewInfo_GL_APPLE_vertex_array_range();
-#endif /* GL_APPLE_vertex_array_range */
-#ifdef GL_APPLE_vertex_program_evaluators
-  _glewInfo_GL_APPLE_vertex_program_evaluators();
-#endif /* GL_APPLE_vertex_program_evaluators */
-#ifdef GL_APPLE_ycbcr_422
-  _glewInfo_GL_APPLE_ycbcr_422();
-#endif /* GL_APPLE_ycbcr_422 */
-#ifdef GL_ARB_blend_func_extended
-  _glewInfo_GL_ARB_blend_func_extended();
-#endif /* GL_ARB_blend_func_extended */
-#ifdef GL_ARB_color_buffer_float
-  _glewInfo_GL_ARB_color_buffer_float();
-#endif /* GL_ARB_color_buffer_float */
-#ifdef GL_ARB_compatibility
-  _glewInfo_GL_ARB_compatibility();
-#endif /* GL_ARB_compatibility */
-#ifdef GL_ARB_copy_buffer
-  _glewInfo_GL_ARB_copy_buffer();
-#endif /* GL_ARB_copy_buffer */
-#ifdef GL_ARB_depth_buffer_float
-  _glewInfo_GL_ARB_depth_buffer_float();
-#endif /* GL_ARB_depth_buffer_float */
-#ifdef GL_ARB_depth_clamp
-  _glewInfo_GL_ARB_depth_clamp();
-#endif /* GL_ARB_depth_clamp */
-#ifdef GL_ARB_depth_texture
-  _glewInfo_GL_ARB_depth_texture();
-#endif /* GL_ARB_depth_texture */
-#ifdef GL_ARB_draw_buffers
-  _glewInfo_GL_ARB_draw_buffers();
-#endif /* GL_ARB_draw_buffers */
-#ifdef GL_ARB_draw_buffers_blend
-  _glewInfo_GL_ARB_draw_buffers_blend();
-#endif /* GL_ARB_draw_buffers_blend */
-#ifdef GL_ARB_draw_elements_base_vertex
-  _glewInfo_GL_ARB_draw_elements_base_vertex();
-#endif /* GL_ARB_draw_elements_base_vertex */
-#ifdef GL_ARB_draw_indirect
-  _glewInfo_GL_ARB_draw_indirect();
-#endif /* GL_ARB_draw_indirect */
-#ifdef GL_ARB_draw_instanced
-  _glewInfo_GL_ARB_draw_instanced();
-#endif /* GL_ARB_draw_instanced */
-#ifdef GL_ARB_explicit_attrib_location
-  _glewInfo_GL_ARB_explicit_attrib_location();
-#endif /* GL_ARB_explicit_attrib_location */
-#ifdef GL_ARB_fragment_coord_conventions
-  _glewInfo_GL_ARB_fragment_coord_conventions();
-#endif /* GL_ARB_fragment_coord_conventions */
-#ifdef GL_ARB_fragment_program
-  _glewInfo_GL_ARB_fragment_program();
-#endif /* GL_ARB_fragment_program */
-#ifdef GL_ARB_fragment_program_shadow
-  _glewInfo_GL_ARB_fragment_program_shadow();
-#endif /* GL_ARB_fragment_program_shadow */
-#ifdef GL_ARB_fragment_shader
-  _glewInfo_GL_ARB_fragment_shader();
-#endif /* GL_ARB_fragment_shader */
-#ifdef GL_ARB_framebuffer_object
-  _glewInfo_GL_ARB_framebuffer_object();
-#endif /* GL_ARB_framebuffer_object */
-#ifdef GL_ARB_framebuffer_sRGB
-  _glewInfo_GL_ARB_framebuffer_sRGB();
-#endif /* GL_ARB_framebuffer_sRGB */
-#ifdef GL_ARB_geometry_shader4
-  _glewInfo_GL_ARB_geometry_shader4();
-#endif /* GL_ARB_geometry_shader4 */
-#ifdef GL_ARB_gpu_shader5
-  _glewInfo_GL_ARB_gpu_shader5();
-#endif /* GL_ARB_gpu_shader5 */
-#ifdef GL_ARB_gpu_shader_fp64
-  _glewInfo_GL_ARB_gpu_shader_fp64();
-#endif /* GL_ARB_gpu_shader_fp64 */
-#ifdef GL_ARB_half_float_pixel
-  _glewInfo_GL_ARB_half_float_pixel();
-#endif /* GL_ARB_half_float_pixel */
-#ifdef GL_ARB_half_float_vertex
-  _glewInfo_GL_ARB_half_float_vertex();
-#endif /* GL_ARB_half_float_vertex */
-#ifdef GL_ARB_imaging
-  _glewInfo_GL_ARB_imaging();
-#endif /* GL_ARB_imaging */
-#ifdef GL_ARB_instanced_arrays
-  _glewInfo_GL_ARB_instanced_arrays();
-#endif /* GL_ARB_instanced_arrays */
-#ifdef GL_ARB_map_buffer_range
-  _glewInfo_GL_ARB_map_buffer_range();
-#endif /* GL_ARB_map_buffer_range */
-#ifdef GL_ARB_matrix_palette
-  _glewInfo_GL_ARB_matrix_palette();
-#endif /* GL_ARB_matrix_palette */
-#ifdef GL_ARB_multisample
-  _glewInfo_GL_ARB_multisample();
-#endif /* GL_ARB_multisample */
-#ifdef GL_ARB_multitexture
-  _glewInfo_GL_ARB_multitexture();
-#endif /* GL_ARB_multitexture */
-#ifdef GL_ARB_occlusion_query
-  _glewInfo_GL_ARB_occlusion_query();
-#endif /* GL_ARB_occlusion_query */
-#ifdef GL_ARB_occlusion_query2
-  _glewInfo_GL_ARB_occlusion_query2();
-#endif /* GL_ARB_occlusion_query2 */
-#ifdef GL_ARB_pixel_buffer_object
-  _glewInfo_GL_ARB_pixel_buffer_object();
-#endif /* GL_ARB_pixel_buffer_object */
-#ifdef GL_ARB_point_parameters
-  _glewInfo_GL_ARB_point_parameters();
-#endif /* GL_ARB_point_parameters */
-#ifdef GL_ARB_point_sprite
-  _glewInfo_GL_ARB_point_sprite();
-#endif /* GL_ARB_point_sprite */
-#ifdef GL_ARB_provoking_vertex
-  _glewInfo_GL_ARB_provoking_vertex();
-#endif /* GL_ARB_provoking_vertex */
-#ifdef GL_ARB_sample_shading
-  _glewInfo_GL_ARB_sample_shading();
-#endif /* GL_ARB_sample_shading */
-#ifdef GL_ARB_sampler_objects
-  _glewInfo_GL_ARB_sampler_objects();
-#endif /* GL_ARB_sampler_objects */
-#ifdef GL_ARB_seamless_cube_map
-  _glewInfo_GL_ARB_seamless_cube_map();
-#endif /* GL_ARB_seamless_cube_map */
-#ifdef GL_ARB_shader_bit_encoding
-  _glewInfo_GL_ARB_shader_bit_encoding();
-#endif /* GL_ARB_shader_bit_encoding */
-#ifdef GL_ARB_shader_objects
-  _glewInfo_GL_ARB_shader_objects();
-#endif /* GL_ARB_shader_objects */
-#ifdef GL_ARB_shader_subroutine
-  _glewInfo_GL_ARB_shader_subroutine();
-#endif /* GL_ARB_shader_subroutine */
-#ifdef GL_ARB_shader_texture_lod
-  _glewInfo_GL_ARB_shader_texture_lod();
-#endif /* GL_ARB_shader_texture_lod */
-#ifdef GL_ARB_shading_language_100
-  _glewInfo_GL_ARB_shading_language_100();
-#endif /* GL_ARB_shading_language_100 */
-#ifdef GL_ARB_shading_language_include
-  _glewInfo_GL_ARB_shading_language_include();
-#endif /* GL_ARB_shading_language_include */
-#ifdef GL_ARB_shadow
-  _glewInfo_GL_ARB_shadow();
-#endif /* GL_ARB_shadow */
-#ifdef GL_ARB_shadow_ambient
-  _glewInfo_GL_ARB_shadow_ambient();
-#endif /* GL_ARB_shadow_ambient */
-#ifdef GL_ARB_sync
-  _glewInfo_GL_ARB_sync();
-#endif /* GL_ARB_sync */
-#ifdef GL_ARB_tessellation_shader
-  _glewInfo_GL_ARB_tessellation_shader();
-#endif /* GL_ARB_tessellation_shader */
-#ifdef GL_ARB_texture_border_clamp
-  _glewInfo_GL_ARB_texture_border_clamp();
-#endif /* GL_ARB_texture_border_clamp */
-#ifdef GL_ARB_texture_buffer_object
-  _glewInfo_GL_ARB_texture_buffer_object();
-#endif /* GL_ARB_texture_buffer_object */
-#ifdef GL_ARB_texture_buffer_object_rgb32
-  _glewInfo_GL_ARB_texture_buffer_object_rgb32();
-#endif /* GL_ARB_texture_buffer_object_rgb32 */
-#ifdef GL_ARB_texture_compression
-  _glewInfo_GL_ARB_texture_compression();
-#endif /* GL_ARB_texture_compression */
-#ifdef GL_ARB_texture_compression_bptc
-  _glewInfo_GL_ARB_texture_compression_bptc();
-#endif /* GL_ARB_texture_compression_bptc */
-#ifdef GL_ARB_texture_compression_rgtc
-  _glewInfo_GL_ARB_texture_compression_rgtc();
-#endif /* GL_ARB_texture_compression_rgtc */
-#ifdef GL_ARB_texture_cube_map
-  _glewInfo_GL_ARB_texture_cube_map();
-#endif /* GL_ARB_texture_cube_map */
-#ifdef GL_ARB_texture_cube_map_array
-  _glewInfo_GL_ARB_texture_cube_map_array();
-#endif /* GL_ARB_texture_cube_map_array */
-#ifdef GL_ARB_texture_env_add
-  _glewInfo_GL_ARB_texture_env_add();
-#endif /* GL_ARB_texture_env_add */
-#ifdef GL_ARB_texture_env_combine
-  _glewInfo_GL_ARB_texture_env_combine();
-#endif /* GL_ARB_texture_env_combine */
-#ifdef GL_ARB_texture_env_crossbar
-  _glewInfo_GL_ARB_texture_env_crossbar();
-#endif /* GL_ARB_texture_env_crossbar */
-#ifdef GL_ARB_texture_env_dot3
-  _glewInfo_GL_ARB_texture_env_dot3();
-#endif /* GL_ARB_texture_env_dot3 */
-#ifdef GL_ARB_texture_float
-  _glewInfo_GL_ARB_texture_float();
-#endif /* GL_ARB_texture_float */
-#ifdef GL_ARB_texture_gather
-  _glewInfo_GL_ARB_texture_gather();
-#endif /* GL_ARB_texture_gather */
-#ifdef GL_ARB_texture_mirrored_repeat
-  _glewInfo_GL_ARB_texture_mirrored_repeat();
-#endif /* GL_ARB_texture_mirrored_repeat */
-#ifdef GL_ARB_texture_multisample
-  _glewInfo_GL_ARB_texture_multisample();
-#endif /* GL_ARB_texture_multisample */
-#ifdef GL_ARB_texture_non_power_of_two
-  _glewInfo_GL_ARB_texture_non_power_of_two();
-#endif /* GL_ARB_texture_non_power_of_two */
-#ifdef GL_ARB_texture_query_lod
-  _glewInfo_GL_ARB_texture_query_lod();
-#endif /* GL_ARB_texture_query_lod */
-#ifdef GL_ARB_texture_rectangle
-  _glewInfo_GL_ARB_texture_rectangle();
-#endif /* GL_ARB_texture_rectangle */
-#ifdef GL_ARB_texture_rg
-  _glewInfo_GL_ARB_texture_rg();
-#endif /* GL_ARB_texture_rg */
-#ifdef GL_ARB_texture_rgb10_a2ui
-  _glewInfo_GL_ARB_texture_rgb10_a2ui();
-#endif /* GL_ARB_texture_rgb10_a2ui */
-#ifdef GL_ARB_texture_swizzle
-  _glewInfo_GL_ARB_texture_swizzle();
-#endif /* GL_ARB_texture_swizzle */
-#ifdef GL_ARB_timer_query
-  _glewInfo_GL_ARB_timer_query();
-#endif /* GL_ARB_timer_query */
-#ifdef GL_ARB_transform_feedback2
-  _glewInfo_GL_ARB_transform_feedback2();
-#endif /* GL_ARB_transform_feedback2 */
-#ifdef GL_ARB_transform_feedback3
-  _glewInfo_GL_ARB_transform_feedback3();
-#endif /* GL_ARB_transform_feedback3 */
-#ifdef GL_ARB_transpose_matrix
-  _glewInfo_GL_ARB_transpose_matrix();
-#endif /* GL_ARB_transpose_matrix */
-#ifdef GL_ARB_uniform_buffer_object
-  _glewInfo_GL_ARB_uniform_buffer_object();
-#endif /* GL_ARB_uniform_buffer_object */
-#ifdef GL_ARB_vertex_array_bgra
-  _glewInfo_GL_ARB_vertex_array_bgra();
-#endif /* GL_ARB_vertex_array_bgra */
-#ifdef GL_ARB_vertex_array_object
-  _glewInfo_GL_ARB_vertex_array_object();
-#endif /* GL_ARB_vertex_array_object */
-#ifdef GL_ARB_vertex_blend
-  _glewInfo_GL_ARB_vertex_blend();
-#endif /* GL_ARB_vertex_blend */
-#ifdef GL_ARB_vertex_buffer_object
-  _glewInfo_GL_ARB_vertex_buffer_object();
-#endif /* GL_ARB_vertex_buffer_object */
-#ifdef GL_ARB_vertex_program
-  _glewInfo_GL_ARB_vertex_program();
-#endif /* GL_ARB_vertex_program */
-#ifdef GL_ARB_vertex_shader
-  _glewInfo_GL_ARB_vertex_shader();
-#endif /* GL_ARB_vertex_shader */
-#ifdef GL_ARB_vertex_type_2_10_10_10_rev
-  _glewInfo_GL_ARB_vertex_type_2_10_10_10_rev();
-#endif /* GL_ARB_vertex_type_2_10_10_10_rev */
-#ifdef GL_ARB_window_pos
-  _glewInfo_GL_ARB_window_pos();
-#endif /* GL_ARB_window_pos */
-#ifdef GL_ATIX_point_sprites
-  _glewInfo_GL_ATIX_point_sprites();
-#endif /* GL_ATIX_point_sprites */
-#ifdef GL_ATIX_texture_env_combine3
-  _glewInfo_GL_ATIX_texture_env_combine3();
-#endif /* GL_ATIX_texture_env_combine3 */
-#ifdef GL_ATIX_texture_env_route
-  _glewInfo_GL_ATIX_texture_env_route();
-#endif /* GL_ATIX_texture_env_route */
-#ifdef GL_ATIX_vertex_shader_output_point_size
-  _glewInfo_GL_ATIX_vertex_shader_output_point_size();
-#endif /* GL_ATIX_vertex_shader_output_point_size */
-#ifdef GL_ATI_draw_buffers
-  _glewInfo_GL_ATI_draw_buffers();
-#endif /* GL_ATI_draw_buffers */
-#ifdef GL_ATI_element_array
-  _glewInfo_GL_ATI_element_array();
-#endif /* GL_ATI_element_array */
-#ifdef GL_ATI_envmap_bumpmap
-  _glewInfo_GL_ATI_envmap_bumpmap();
-#endif /* GL_ATI_envmap_bumpmap */
-#ifdef GL_ATI_fragment_shader
-  _glewInfo_GL_ATI_fragment_shader();
-#endif /* GL_ATI_fragment_shader */
-#ifdef GL_ATI_map_object_buffer
-  _glewInfo_GL_ATI_map_object_buffer();
-#endif /* GL_ATI_map_object_buffer */
-#ifdef GL_ATI_meminfo
-  _glewInfo_GL_ATI_meminfo();
-#endif /* GL_ATI_meminfo */
-#ifdef GL_ATI_pn_triangles
-  _glewInfo_GL_ATI_pn_triangles();
-#endif /* GL_ATI_pn_triangles */
-#ifdef GL_ATI_separate_stencil
-  _glewInfo_GL_ATI_separate_stencil();
-#endif /* GL_ATI_separate_stencil */
-#ifdef GL_ATI_shader_texture_lod
-  _glewInfo_GL_ATI_shader_texture_lod();
-#endif /* GL_ATI_shader_texture_lod */
-#ifdef GL_ATI_text_fragment_shader
-  _glewInfo_GL_ATI_text_fragment_shader();
-#endif /* GL_ATI_text_fragment_shader */
-#ifdef GL_ATI_texture_compression_3dc
-  _glewInfo_GL_ATI_texture_compression_3dc();
-#endif /* GL_ATI_texture_compression_3dc */
-#ifdef GL_ATI_texture_env_combine3
-  _glewInfo_GL_ATI_texture_env_combine3();
-#endif /* GL_ATI_texture_env_combine3 */
-#ifdef GL_ATI_texture_float
-  _glewInfo_GL_ATI_texture_float();
-#endif /* GL_ATI_texture_float */
-#ifdef GL_ATI_texture_mirror_once
-  _glewInfo_GL_ATI_texture_mirror_once();
-#endif /* GL_ATI_texture_mirror_once */
-#ifdef GL_ATI_vertex_array_object
-  _glewInfo_GL_ATI_vertex_array_object();
-#endif /* GL_ATI_vertex_array_object */
-#ifdef GL_ATI_vertex_attrib_array_object
-  _glewInfo_GL_ATI_vertex_attrib_array_object();
-#endif /* GL_ATI_vertex_attrib_array_object */
-#ifdef GL_ATI_vertex_streams
-  _glewInfo_GL_ATI_vertex_streams();
-#endif /* GL_ATI_vertex_streams */
-#ifdef GL_EXT_422_pixels
-  _glewInfo_GL_EXT_422_pixels();
-#endif /* GL_EXT_422_pixels */
-#ifdef GL_EXT_Cg_shader
-  _glewInfo_GL_EXT_Cg_shader();
-#endif /* GL_EXT_Cg_shader */
-#ifdef GL_EXT_abgr
-  _glewInfo_GL_EXT_abgr();
-#endif /* GL_EXT_abgr */
-#ifdef GL_EXT_bgra
-  _glewInfo_GL_EXT_bgra();
-#endif /* GL_EXT_bgra */
-#ifdef GL_EXT_bindable_uniform
-  _glewInfo_GL_EXT_bindable_uniform();
-#endif /* GL_EXT_bindable_uniform */
-#ifdef GL_EXT_blend_color
-  _glewInfo_GL_EXT_blend_color();
-#endif /* GL_EXT_blend_color */
-#ifdef GL_EXT_blend_equation_separate
-  _glewInfo_GL_EXT_blend_equation_separate();
-#endif /* GL_EXT_blend_equation_separate */
-#ifdef GL_EXT_blend_func_separate
-  _glewInfo_GL_EXT_blend_func_separate();
-#endif /* GL_EXT_blend_func_separate */
-#ifdef GL_EXT_blend_logic_op
-  _glewInfo_GL_EXT_blend_logic_op();
-#endif /* GL_EXT_blend_logic_op */
-#ifdef GL_EXT_blend_minmax
-  _glewInfo_GL_EXT_blend_minmax();
-#endif /* GL_EXT_blend_minmax */
-#ifdef GL_EXT_blend_subtract
-  _glewInfo_GL_EXT_blend_subtract();
-#endif /* GL_EXT_blend_subtract */
-#ifdef GL_EXT_clip_volume_hint
-  _glewInfo_GL_EXT_clip_volume_hint();
-#endif /* GL_EXT_clip_volume_hint */
-#ifdef GL_EXT_cmyka
-  _glewInfo_GL_EXT_cmyka();
-#endif /* GL_EXT_cmyka */
-#ifdef GL_EXT_color_subtable
-  _glewInfo_GL_EXT_color_subtable();
-#endif /* GL_EXT_color_subtable */
-#ifdef GL_EXT_compiled_vertex_array
-  _glewInfo_GL_EXT_compiled_vertex_array();
-#endif /* GL_EXT_compiled_vertex_array */
-#ifdef GL_EXT_convolution
-  _glewInfo_GL_EXT_convolution();
-#endif /* GL_EXT_convolution */
-#ifdef GL_EXT_coordinate_frame
-  _glewInfo_GL_EXT_coordinate_frame();
-#endif /* GL_EXT_coordinate_frame */
-#ifdef GL_EXT_copy_texture
-  _glewInfo_GL_EXT_copy_texture();
-#endif /* GL_EXT_copy_texture */
-#ifdef GL_EXT_cull_vertex
-  _glewInfo_GL_EXT_cull_vertex();
-#endif /* GL_EXT_cull_vertex */
-#ifdef GL_EXT_depth_bounds_test
-  _glewInfo_GL_EXT_depth_bounds_test();
-#endif /* GL_EXT_depth_bounds_test */
-#ifdef GL_EXT_direct_state_access
-  _glewInfo_GL_EXT_direct_state_access();
-#endif /* GL_EXT_direct_state_access */
-#ifdef GL_EXT_draw_buffers2
-  _glewInfo_GL_EXT_draw_buffers2();
-#endif /* GL_EXT_draw_buffers2 */
-#ifdef GL_EXT_draw_instanced
-  _glewInfo_GL_EXT_draw_instanced();
-#endif /* GL_EXT_draw_instanced */
-#ifdef GL_EXT_draw_range_elements
-  _glewInfo_GL_EXT_draw_range_elements();
-#endif /* GL_EXT_draw_range_elements */
-#ifdef GL_EXT_fog_coord
-  _glewInfo_GL_EXT_fog_coord();
-#endif /* GL_EXT_fog_coord */
-#ifdef GL_EXT_fragment_lighting
-  _glewInfo_GL_EXT_fragment_lighting();
-#endif /* GL_EXT_fragment_lighting */
-#ifdef GL_EXT_framebuffer_blit
-  _glewInfo_GL_EXT_framebuffer_blit();
-#endif /* GL_EXT_framebuffer_blit */
-#ifdef GL_EXT_framebuffer_multisample
-  _glewInfo_GL_EXT_framebuffer_multisample();
-#endif /* GL_EXT_framebuffer_multisample */
-#ifdef GL_EXT_framebuffer_object
-  _glewInfo_GL_EXT_framebuffer_object();
-#endif /* GL_EXT_framebuffer_object */
-#ifdef GL_EXT_framebuffer_sRGB
-  _glewInfo_GL_EXT_framebuffer_sRGB();
-#endif /* GL_EXT_framebuffer_sRGB */
-#ifdef GL_EXT_geometry_shader4
-  _glewInfo_GL_EXT_geometry_shader4();
-#endif /* GL_EXT_geometry_shader4 */
-#ifdef GL_EXT_gpu_program_parameters
-  _glewInfo_GL_EXT_gpu_program_parameters();
-#endif /* GL_EXT_gpu_program_parameters */
-#ifdef GL_EXT_gpu_shader4
-  _glewInfo_GL_EXT_gpu_shader4();
-#endif /* GL_EXT_gpu_shader4 */
-#ifdef GL_EXT_histogram
-  _glewInfo_GL_EXT_histogram();
-#endif /* GL_EXT_histogram */
-#ifdef GL_EXT_index_array_formats
-  _glewInfo_GL_EXT_index_array_formats();
-#endif /* GL_EXT_index_array_formats */
-#ifdef GL_EXT_index_func
-  _glewInfo_GL_EXT_index_func();
-#endif /* GL_EXT_index_func */
-#ifdef GL_EXT_index_material
-  _glewInfo_GL_EXT_index_material();
-#endif /* GL_EXT_index_material */
-#ifdef GL_EXT_index_texture
-  _glewInfo_GL_EXT_index_texture();
-#endif /* GL_EXT_index_texture */
-#ifdef GL_EXT_light_texture
-  _glewInfo_GL_EXT_light_texture();
-#endif /* GL_EXT_light_texture */
-#ifdef GL_EXT_misc_attribute
-  _glewInfo_GL_EXT_misc_attribute();
-#endif /* GL_EXT_misc_attribute */
-#ifdef GL_EXT_multi_draw_arrays
-  _glewInfo_GL_EXT_multi_draw_arrays();
-#endif /* GL_EXT_multi_draw_arrays */
-#ifdef GL_EXT_multisample
-  _glewInfo_GL_EXT_multisample();
-#endif /* GL_EXT_multisample */
-#ifdef GL_EXT_packed_depth_stencil
-  _glewInfo_GL_EXT_packed_depth_stencil();
-#endif /* GL_EXT_packed_depth_stencil */
-#ifdef GL_EXT_packed_float
-  _glewInfo_GL_EXT_packed_float();
-#endif /* GL_EXT_packed_float */
-#ifdef GL_EXT_packed_pixels
-  _glewInfo_GL_EXT_packed_pixels();
-#endif /* GL_EXT_packed_pixels */
-#ifdef GL_EXT_paletted_texture
-  _glewInfo_GL_EXT_paletted_texture();
-#endif /* GL_EXT_paletted_texture */
-#ifdef GL_EXT_pixel_buffer_object
-  _glewInfo_GL_EXT_pixel_buffer_object();
-#endif /* GL_EXT_pixel_buffer_object */
-#ifdef GL_EXT_pixel_transform
-  _glewInfo_GL_EXT_pixel_transform();
-#endif /* GL_EXT_pixel_transform */
-#ifdef GL_EXT_pixel_transform_color_table
-  _glewInfo_GL_EXT_pixel_transform_color_table();
-#endif /* GL_EXT_pixel_transform_color_table */
-#ifdef GL_EXT_point_parameters
-  _glewInfo_GL_EXT_point_parameters();
-#endif /* GL_EXT_point_parameters */
-#ifdef GL_EXT_polygon_offset
-  _glewInfo_GL_EXT_polygon_offset();
-#endif /* GL_EXT_polygon_offset */
-#ifdef GL_EXT_provoking_vertex
-  _glewInfo_GL_EXT_provoking_vertex();
-#endif /* GL_EXT_provoking_vertex */
-#ifdef GL_EXT_rescale_normal
-  _glewInfo_GL_EXT_rescale_normal();
-#endif /* GL_EXT_rescale_normal */
-#ifdef GL_EXT_scene_marker
-  _glewInfo_GL_EXT_scene_marker();
-#endif /* GL_EXT_scene_marker */
-#ifdef GL_EXT_secondary_color
-  _glewInfo_GL_EXT_secondary_color();
-#endif /* GL_EXT_secondary_color */
-#ifdef GL_EXT_separate_shader_objects
-  _glewInfo_GL_EXT_separate_shader_objects();
-#endif /* GL_EXT_separate_shader_objects */
-#ifdef GL_EXT_separate_specular_color
-  _glewInfo_GL_EXT_separate_specular_color();
-#endif /* GL_EXT_separate_specular_color */
-#ifdef GL_EXT_shader_image_load_store
-  _glewInfo_GL_EXT_shader_image_load_store();
-#endif /* GL_EXT_shader_image_load_store */
-#ifdef GL_EXT_shadow_funcs
-  _glewInfo_GL_EXT_shadow_funcs();
-#endif /* GL_EXT_shadow_funcs */
-#ifdef GL_EXT_shared_texture_palette
-  _glewInfo_GL_EXT_shared_texture_palette();
-#endif /* GL_EXT_shared_texture_palette */
-#ifdef GL_EXT_stencil_clear_tag
-  _glewInfo_GL_EXT_stencil_clear_tag();
-#endif /* GL_EXT_stencil_clear_tag */
-#ifdef GL_EXT_stencil_two_side
-  _glewInfo_GL_EXT_stencil_two_side();
-#endif /* GL_EXT_stencil_two_side */
-#ifdef GL_EXT_stencil_wrap
-  _glewInfo_GL_EXT_stencil_wrap();
-#endif /* GL_EXT_stencil_wrap */
-#ifdef GL_EXT_subtexture
-  _glewInfo_GL_EXT_subtexture();
-#endif /* GL_EXT_subtexture */
-#ifdef GL_EXT_texture
-  _glewInfo_GL_EXT_texture();
-#endif /* GL_EXT_texture */
-#ifdef GL_EXT_texture3D
-  _glewInfo_GL_EXT_texture3D();
-#endif /* GL_EXT_texture3D */
-#ifdef GL_EXT_texture_array
-  _glewInfo_GL_EXT_texture_array();
-#endif /* GL_EXT_texture_array */
-#ifdef GL_EXT_texture_buffer_object
-  _glewInfo_GL_EXT_texture_buffer_object();
-#endif /* GL_EXT_texture_buffer_object */
-#ifdef GL_EXT_texture_compression_dxt1
-  _glewInfo_GL_EXT_texture_compression_dxt1();
-#endif /* GL_EXT_texture_compression_dxt1 */
-#ifdef GL_EXT_texture_compression_latc
-  _glewInfo_GL_EXT_texture_compression_latc();
-#endif /* GL_EXT_texture_compression_latc */
-#ifdef GL_EXT_texture_compression_rgtc
-  _glewInfo_GL_EXT_texture_compression_rgtc();
-#endif /* GL_EXT_texture_compression_rgtc */
-#ifdef GL_EXT_texture_compression_s3tc
-  _glewInfo_GL_EXT_texture_compression_s3tc();
-#endif /* GL_EXT_texture_compression_s3tc */
-#ifdef GL_EXT_texture_cube_map
-  _glewInfo_GL_EXT_texture_cube_map();
-#endif /* GL_EXT_texture_cube_map */
-#ifdef GL_EXT_texture_edge_clamp
-  _glewInfo_GL_EXT_texture_edge_clamp();
-#endif /* GL_EXT_texture_edge_clamp */
-#ifdef GL_EXT_texture_env
-  _glewInfo_GL_EXT_texture_env();
-#endif /* GL_EXT_texture_env */
-#ifdef GL_EXT_texture_env_add
-  _glewInfo_GL_EXT_texture_env_add();
-#endif /* GL_EXT_texture_env_add */
-#ifdef GL_EXT_texture_env_combine
-  _glewInfo_GL_EXT_texture_env_combine();
-#endif /* GL_EXT_texture_env_combine */
-#ifdef GL_EXT_texture_env_dot3
-  _glewInfo_GL_EXT_texture_env_dot3();
-#endif /* GL_EXT_texture_env_dot3 */
-#ifdef GL_EXT_texture_filter_anisotropic
-  _glewInfo_GL_EXT_texture_filter_anisotropic();
-#endif /* GL_EXT_texture_filter_anisotropic */
-#ifdef GL_EXT_texture_integer
-  _glewInfo_GL_EXT_texture_integer();
-#endif /* GL_EXT_texture_integer */
-#ifdef GL_EXT_texture_lod_bias
-  _glewInfo_GL_EXT_texture_lod_bias();
-#endif /* GL_EXT_texture_lod_bias */
-#ifdef GL_EXT_texture_mirror_clamp
-  _glewInfo_GL_EXT_texture_mirror_clamp();
-#endif /* GL_EXT_texture_mirror_clamp */
-#ifdef GL_EXT_texture_object
-  _glewInfo_GL_EXT_texture_object();
-#endif /* GL_EXT_texture_object */
-#ifdef GL_EXT_texture_perturb_normal
-  _glewInfo_GL_EXT_texture_perturb_normal();
-#endif /* GL_EXT_texture_perturb_normal */
-#ifdef GL_EXT_texture_rectangle
-  _glewInfo_GL_EXT_texture_rectangle();
-#endif /* GL_EXT_texture_rectangle */
-#ifdef GL_EXT_texture_sRGB
-  _glewInfo_GL_EXT_texture_sRGB();
-#endif /* GL_EXT_texture_sRGB */
-#ifdef GL_EXT_texture_shared_exponent
-  _glewInfo_GL_EXT_texture_shared_exponent();
-#endif /* GL_EXT_texture_shared_exponent */
-#ifdef GL_EXT_texture_snorm
-  _glewInfo_GL_EXT_texture_snorm();
-#endif /* GL_EXT_texture_snorm */
-#ifdef GL_EXT_texture_swizzle
-  _glewInfo_GL_EXT_texture_swizzle();
-#endif /* GL_EXT_texture_swizzle */
-#ifdef GL_EXT_timer_query
-  _glewInfo_GL_EXT_timer_query();
-#endif /* GL_EXT_timer_query */
-#ifdef GL_EXT_transform_feedback
-  _glewInfo_GL_EXT_transform_feedback();
-#endif /* GL_EXT_transform_feedback */
-#ifdef GL_EXT_vertex_array
-  _glewInfo_GL_EXT_vertex_array();
-#endif /* GL_EXT_vertex_array */
-#ifdef GL_EXT_vertex_array_bgra
-  _glewInfo_GL_EXT_vertex_array_bgra();
-#endif /* GL_EXT_vertex_array_bgra */
-#ifdef GL_EXT_vertex_attrib_64bit
-  _glewInfo_GL_EXT_vertex_attrib_64bit();
-#endif /* GL_EXT_vertex_attrib_64bit */
-#ifdef GL_EXT_vertex_shader
-  _glewInfo_GL_EXT_vertex_shader();
-#endif /* GL_EXT_vertex_shader */
-#ifdef GL_EXT_vertex_weighting
-  _glewInfo_GL_EXT_vertex_weighting();
-#endif /* GL_EXT_vertex_weighting */
-#ifdef GL_GREMEDY_frame_terminator
-  _glewInfo_GL_GREMEDY_frame_terminator();
-#endif /* GL_GREMEDY_frame_terminator */
-#ifdef GL_GREMEDY_string_marker
-  _glewInfo_GL_GREMEDY_string_marker();
-#endif /* GL_GREMEDY_string_marker */
-#ifdef GL_HP_convolution_border_modes
-  _glewInfo_GL_HP_convolution_border_modes();
-#endif /* GL_HP_convolution_border_modes */
-#ifdef GL_HP_image_transform
-  _glewInfo_GL_HP_image_transform();
-#endif /* GL_HP_image_transform */
-#ifdef GL_HP_occlusion_test
-  _glewInfo_GL_HP_occlusion_test();
-#endif /* GL_HP_occlusion_test */
-#ifdef GL_HP_texture_lighting
-  _glewInfo_GL_HP_texture_lighting();
-#endif /* GL_HP_texture_lighting */
-#ifdef GL_IBM_cull_vertex
-  _glewInfo_GL_IBM_cull_vertex();
-#endif /* GL_IBM_cull_vertex */
-#ifdef GL_IBM_multimode_draw_arrays
-  _glewInfo_GL_IBM_multimode_draw_arrays();
-#endif /* GL_IBM_multimode_draw_arrays */
-#ifdef GL_IBM_rasterpos_clip
-  _glewInfo_GL_IBM_rasterpos_clip();
-#endif /* GL_IBM_rasterpos_clip */
-#ifdef GL_IBM_static_data
-  _glewInfo_GL_IBM_static_data();
-#endif /* GL_IBM_static_data */
-#ifdef GL_IBM_texture_mirrored_repeat
-  _glewInfo_GL_IBM_texture_mirrored_repeat();
-#endif /* GL_IBM_texture_mirrored_repeat */
-#ifdef GL_IBM_vertex_array_lists
-  _glewInfo_GL_IBM_vertex_array_lists();
-#endif /* GL_IBM_vertex_array_lists */
-#ifdef GL_INGR_color_clamp
-  _glewInfo_GL_INGR_color_clamp();
-#endif /* GL_INGR_color_clamp */
-#ifdef GL_INGR_interlace_read
-  _glewInfo_GL_INGR_interlace_read();
-#endif /* GL_INGR_interlace_read */
-#ifdef GL_INTEL_parallel_arrays
-  _glewInfo_GL_INTEL_parallel_arrays();
-#endif /* GL_INTEL_parallel_arrays */
-#ifdef GL_INTEL_texture_scissor
-  _glewInfo_GL_INTEL_texture_scissor();
-#endif /* GL_INTEL_texture_scissor */
-#ifdef GL_KTX_buffer_region
-  _glewInfo_GL_KTX_buffer_region();
-#endif /* GL_KTX_buffer_region */
-#ifdef GL_MESAX_texture_stack
-  _glewInfo_GL_MESAX_texture_stack();
-#endif /* GL_MESAX_texture_stack */
-#ifdef GL_MESA_pack_invert
-  _glewInfo_GL_MESA_pack_invert();
-#endif /* GL_MESA_pack_invert */
-#ifdef GL_MESA_resize_buffers
-  _glewInfo_GL_MESA_resize_buffers();
-#endif /* GL_MESA_resize_buffers */
-#ifdef GL_MESA_window_pos
-  _glewInfo_GL_MESA_window_pos();
-#endif /* GL_MESA_window_pos */
-#ifdef GL_MESA_ycbcr_texture
-  _glewInfo_GL_MESA_ycbcr_texture();
-#endif /* GL_MESA_ycbcr_texture */
-#ifdef GL_NV_blend_square
-  _glewInfo_GL_NV_blend_square();
-#endif /* GL_NV_blend_square */
-#ifdef GL_NV_conditional_render
-  _glewInfo_GL_NV_conditional_render();
-#endif /* GL_NV_conditional_render */
-#ifdef GL_NV_copy_depth_to_color
-  _glewInfo_GL_NV_copy_depth_to_color();
-#endif /* GL_NV_copy_depth_to_color */
-#ifdef GL_NV_copy_image
-  _glewInfo_GL_NV_copy_image();
-#endif /* GL_NV_copy_image */
-#ifdef GL_NV_depth_buffer_float
-  _glewInfo_GL_NV_depth_buffer_float();
-#endif /* GL_NV_depth_buffer_float */
-#ifdef GL_NV_depth_clamp
-  _glewInfo_GL_NV_depth_clamp();
-#endif /* GL_NV_depth_clamp */
-#ifdef GL_NV_depth_range_unclamped
-  _glewInfo_GL_NV_depth_range_unclamped();
-#endif /* GL_NV_depth_range_unclamped */
-#ifdef GL_NV_evaluators
-  _glewInfo_GL_NV_evaluators();
-#endif /* GL_NV_evaluators */
-#ifdef GL_NV_explicit_multisample
-  _glewInfo_GL_NV_explicit_multisample();
-#endif /* GL_NV_explicit_multisample */
-#ifdef GL_NV_fence
-  _glewInfo_GL_NV_fence();
-#endif /* GL_NV_fence */
-#ifdef GL_NV_float_buffer
-  _glewInfo_GL_NV_float_buffer();
-#endif /* GL_NV_float_buffer */
-#ifdef GL_NV_fog_distance
-  _glewInfo_GL_NV_fog_distance();
-#endif /* GL_NV_fog_distance */
-#ifdef GL_NV_fragment_program
-  _glewInfo_GL_NV_fragment_program();
-#endif /* GL_NV_fragment_program */
-#ifdef GL_NV_fragment_program2
-  _glewInfo_GL_NV_fragment_program2();
-#endif /* GL_NV_fragment_program2 */
-#ifdef GL_NV_fragment_program4
-  _glewInfo_GL_NV_fragment_program4();
-#endif /* GL_NV_fragment_program4 */
-#ifdef GL_NV_fragment_program_option
-  _glewInfo_GL_NV_fragment_program_option();
-#endif /* GL_NV_fragment_program_option */
-#ifdef GL_NV_framebuffer_multisample_coverage
-  _glewInfo_GL_NV_framebuffer_multisample_coverage();
-#endif /* GL_NV_framebuffer_multisample_coverage */
-#ifdef GL_NV_geometry_program4
-  _glewInfo_GL_NV_geometry_program4();
-#endif /* GL_NV_geometry_program4 */
-#ifdef GL_NV_geometry_shader4
-  _glewInfo_GL_NV_geometry_shader4();
-#endif /* GL_NV_geometry_shader4 */
-#ifdef GL_NV_gpu_program4
-  _glewInfo_GL_NV_gpu_program4();
-#endif /* GL_NV_gpu_program4 */
-#ifdef GL_NV_gpu_program5
-  _glewInfo_GL_NV_gpu_program5();
-#endif /* GL_NV_gpu_program5 */
-#ifdef GL_NV_gpu_program_fp64
-  _glewInfo_GL_NV_gpu_program_fp64();
-#endif /* GL_NV_gpu_program_fp64 */
-#ifdef GL_NV_gpu_shader5
-  _glewInfo_GL_NV_gpu_shader5();
-#endif /* GL_NV_gpu_shader5 */
-#ifdef GL_NV_half_float
-  _glewInfo_GL_NV_half_float();
-#endif /* GL_NV_half_float */
-#ifdef GL_NV_light_max_exponent
-  _glewInfo_GL_NV_light_max_exponent();
-#endif /* GL_NV_light_max_exponent */
-#ifdef GL_NV_multisample_filter_hint
-  _glewInfo_GL_NV_multisample_filter_hint();
-#endif /* GL_NV_multisample_filter_hint */
-#ifdef GL_NV_occlusion_query
-  _glewInfo_GL_NV_occlusion_query();
-#endif /* GL_NV_occlusion_query */
-#ifdef GL_NV_packed_depth_stencil
-  _glewInfo_GL_NV_packed_depth_stencil();
-#endif /* GL_NV_packed_depth_stencil */
-#ifdef GL_NV_parameter_buffer_object
-  _glewInfo_GL_NV_parameter_buffer_object();
-#endif /* GL_NV_parameter_buffer_object */
-#ifdef GL_NV_parameter_buffer_object2
-  _glewInfo_GL_NV_parameter_buffer_object2();
-#endif /* GL_NV_parameter_buffer_object2 */
-#ifdef GL_NV_pixel_data_range
-  _glewInfo_GL_NV_pixel_data_range();
-#endif /* GL_NV_pixel_data_range */
-#ifdef GL_NV_point_sprite
-  _glewInfo_GL_NV_point_sprite();
-#endif /* GL_NV_point_sprite */
-#ifdef GL_NV_present_video
-  _glewInfo_GL_NV_present_video();
-#endif /* GL_NV_present_video */
-#ifdef GL_NV_primitive_restart
-  _glewInfo_GL_NV_primitive_restart();
-#endif /* GL_NV_primitive_restart */
-#ifdef GL_NV_register_combiners
-  _glewInfo_GL_NV_register_combiners();
-#endif /* GL_NV_register_combiners */
-#ifdef GL_NV_register_combiners2
-  _glewInfo_GL_NV_register_combiners2();
-#endif /* GL_NV_register_combiners2 */
-#ifdef GL_NV_shader_buffer_load
-  _glewInfo_GL_NV_shader_buffer_load();
-#endif /* GL_NV_shader_buffer_load */
-#ifdef GL_NV_tessellation_program5
-  _glewInfo_GL_NV_tessellation_program5();
-#endif /* GL_NV_tessellation_program5 */
-#ifdef GL_NV_texgen_emboss
-  _glewInfo_GL_NV_texgen_emboss();
-#endif /* GL_NV_texgen_emboss */
-#ifdef GL_NV_texgen_reflection
-  _glewInfo_GL_NV_texgen_reflection();
-#endif /* GL_NV_texgen_reflection */
-#ifdef GL_NV_texture_barrier
-  _glewInfo_GL_NV_texture_barrier();
-#endif /* GL_NV_texture_barrier */
-#ifdef GL_NV_texture_compression_vtc
-  _glewInfo_GL_NV_texture_compression_vtc();
-#endif /* GL_NV_texture_compression_vtc */
-#ifdef GL_NV_texture_env_combine4
-  _glewInfo_GL_NV_texture_env_combine4();
-#endif /* GL_NV_texture_env_combine4 */
-#ifdef GL_NV_texture_expand_normal
-  _glewInfo_GL_NV_texture_expand_normal();
-#endif /* GL_NV_texture_expand_normal */
-#ifdef GL_NV_texture_rectangle
-  _glewInfo_GL_NV_texture_rectangle();
-#endif /* GL_NV_texture_rectangle */
-#ifdef GL_NV_texture_shader
-  _glewInfo_GL_NV_texture_shader();
-#endif /* GL_NV_texture_shader */
-#ifdef GL_NV_texture_shader2
-  _glewInfo_GL_NV_texture_shader2();
-#endif /* GL_NV_texture_shader2 */
-#ifdef GL_NV_texture_shader3
-  _glewInfo_GL_NV_texture_shader3();
-#endif /* GL_NV_texture_shader3 */
-#ifdef GL_NV_transform_feedback
-  _glewInfo_GL_NV_transform_feedback();
-#endif /* GL_NV_transform_feedback */
-#ifdef GL_NV_transform_feedback2
-  _glewInfo_GL_NV_transform_feedback2();
-#endif /* GL_NV_transform_feedback2 */
-#ifdef GL_NV_vertex_array_range
-  _glewInfo_GL_NV_vertex_array_range();
-#endif /* GL_NV_vertex_array_range */
-#ifdef GL_NV_vertex_array_range2
-  _glewInfo_GL_NV_vertex_array_range2();
-#endif /* GL_NV_vertex_array_range2 */
-#ifdef GL_NV_vertex_attrib_integer_64bit
-  _glewInfo_GL_NV_vertex_attrib_integer_64bit();
-#endif /* GL_NV_vertex_attrib_integer_64bit */
-#ifdef GL_NV_vertex_buffer_unified_memory
-  _glewInfo_GL_NV_vertex_buffer_unified_memory();
-#endif /* GL_NV_vertex_buffer_unified_memory */
-#ifdef GL_NV_vertex_program
-  _glewInfo_GL_NV_vertex_program();
-#endif /* GL_NV_vertex_program */
-#ifdef GL_NV_vertex_program1_1
-  _glewInfo_GL_NV_vertex_program1_1();
-#endif /* GL_NV_vertex_program1_1 */
-#ifdef GL_NV_vertex_program2
-  _glewInfo_GL_NV_vertex_program2();
-#endif /* GL_NV_vertex_program2 */
-#ifdef GL_NV_vertex_program2_option
-  _glewInfo_GL_NV_vertex_program2_option();
-#endif /* GL_NV_vertex_program2_option */
-#ifdef GL_NV_vertex_program3
-  _glewInfo_GL_NV_vertex_program3();
-#endif /* GL_NV_vertex_program3 */
-#ifdef GL_NV_vertex_program4
-  _glewInfo_GL_NV_vertex_program4();
-#endif /* GL_NV_vertex_program4 */
-#ifdef GL_OES_byte_coordinates
-  _glewInfo_GL_OES_byte_coordinates();
-#endif /* GL_OES_byte_coordinates */
-#ifdef GL_OES_compressed_paletted_texture
-  _glewInfo_GL_OES_compressed_paletted_texture();
-#endif /* GL_OES_compressed_paletted_texture */
-#ifdef GL_OES_read_format
-  _glewInfo_GL_OES_read_format();
-#endif /* GL_OES_read_format */
-#ifdef GL_OES_single_precision
-  _glewInfo_GL_OES_single_precision();
-#endif /* GL_OES_single_precision */
-#ifdef GL_OML_interlace
-  _glewInfo_GL_OML_interlace();
-#endif /* GL_OML_interlace */
-#ifdef GL_OML_resample
-  _glewInfo_GL_OML_resample();
-#endif /* GL_OML_resample */
-#ifdef GL_OML_subsample
-  _glewInfo_GL_OML_subsample();
-#endif /* GL_OML_subsample */
-#ifdef GL_PGI_misc_hints
-  _glewInfo_GL_PGI_misc_hints();
-#endif /* GL_PGI_misc_hints */
-#ifdef GL_PGI_vertex_hints
-  _glewInfo_GL_PGI_vertex_hints();
-#endif /* GL_PGI_vertex_hints */
-#ifdef GL_REND_screen_coordinates
-  _glewInfo_GL_REND_screen_coordinates();
-#endif /* GL_REND_screen_coordinates */
-#ifdef GL_S3_s3tc
-  _glewInfo_GL_S3_s3tc();
-#endif /* GL_S3_s3tc */
-#ifdef GL_SGIS_color_range
-  _glewInfo_GL_SGIS_color_range();
-#endif /* GL_SGIS_color_range */
-#ifdef GL_SGIS_detail_texture
-  _glewInfo_GL_SGIS_detail_texture();
-#endif /* GL_SGIS_detail_texture */
-#ifdef GL_SGIS_fog_function
-  _glewInfo_GL_SGIS_fog_function();
-#endif /* GL_SGIS_fog_function */
-#ifdef GL_SGIS_generate_mipmap
-  _glewInfo_GL_SGIS_generate_mipmap();
-#endif /* GL_SGIS_generate_mipmap */
-#ifdef GL_SGIS_multisample
-  _glewInfo_GL_SGIS_multisample();
-#endif /* GL_SGIS_multisample */
-#ifdef GL_SGIS_pixel_texture
-  _glewInfo_GL_SGIS_pixel_texture();
-#endif /* GL_SGIS_pixel_texture */
-#ifdef GL_SGIS_point_line_texgen
-  _glewInfo_GL_SGIS_point_line_texgen();
-#endif /* GL_SGIS_point_line_texgen */
-#ifdef GL_SGIS_sharpen_texture
-  _glewInfo_GL_SGIS_sharpen_texture();
-#endif /* GL_SGIS_sharpen_texture */
-#ifdef GL_SGIS_texture4D
-  _glewInfo_GL_SGIS_texture4D();
-#endif /* GL_SGIS_texture4D */
-#ifdef GL_SGIS_texture_border_clamp
-  _glewInfo_GL_SGIS_texture_border_clamp();
-#endif /* GL_SGIS_texture_border_clamp */
-#ifdef GL_SGIS_texture_edge_clamp
-  _glewInfo_GL_SGIS_texture_edge_clamp();
-#endif /* GL_SGIS_texture_edge_clamp */
-#ifdef GL_SGIS_texture_filter4
-  _glewInfo_GL_SGIS_texture_filter4();
-#endif /* GL_SGIS_texture_filter4 */
-#ifdef GL_SGIS_texture_lod
-  _glewInfo_GL_SGIS_texture_lod();
-#endif /* GL_SGIS_texture_lod */
-#ifdef GL_SGIS_texture_select
-  _glewInfo_GL_SGIS_texture_select();
-#endif /* GL_SGIS_texture_select */
-#ifdef GL_SGIX_async
-  _glewInfo_GL_SGIX_async();
-#endif /* GL_SGIX_async */
-#ifdef GL_SGIX_async_histogram
-  _glewInfo_GL_SGIX_async_histogram();
-#endif /* GL_SGIX_async_histogram */
-#ifdef GL_SGIX_async_pixel
-  _glewInfo_GL_SGIX_async_pixel();
-#endif /* GL_SGIX_async_pixel */
-#ifdef GL_SGIX_blend_alpha_minmax
-  _glewInfo_GL_SGIX_blend_alpha_minmax();
-#endif /* GL_SGIX_blend_alpha_minmax */
-#ifdef GL_SGIX_clipmap
-  _glewInfo_GL_SGIX_clipmap();
-#endif /* GL_SGIX_clipmap */
-#ifdef GL_SGIX_convolution_accuracy
-  _glewInfo_GL_SGIX_convolution_accuracy();
-#endif /* GL_SGIX_convolution_accuracy */
-#ifdef GL_SGIX_depth_texture
-  _glewInfo_GL_SGIX_depth_texture();
-#endif /* GL_SGIX_depth_texture */
-#ifdef GL_SGIX_flush_raster
-  _glewInfo_GL_SGIX_flush_raster();
-#endif /* GL_SGIX_flush_raster */
-#ifdef GL_SGIX_fog_offset
-  _glewInfo_GL_SGIX_fog_offset();
-#endif /* GL_SGIX_fog_offset */
-#ifdef GL_SGIX_fog_texture
-  _glewInfo_GL_SGIX_fog_texture();
-#endif /* GL_SGIX_fog_texture */
-#ifdef GL_SGIX_fragment_specular_lighting
-  _glewInfo_GL_SGIX_fragment_specular_lighting();
-#endif /* GL_SGIX_fragment_specular_lighting */
-#ifdef GL_SGIX_framezoom
-  _glewInfo_GL_SGIX_framezoom();
-#endif /* GL_SGIX_framezoom */
-#ifdef GL_SGIX_interlace
-  _glewInfo_GL_SGIX_interlace();
-#endif /* GL_SGIX_interlace */
-#ifdef GL_SGIX_ir_instrument1
-  _glewInfo_GL_SGIX_ir_instrument1();
-#endif /* GL_SGIX_ir_instrument1 */
-#ifdef GL_SGIX_list_priority
-  _glewInfo_GL_SGIX_list_priority();
-#endif /* GL_SGIX_list_priority */
-#ifdef GL_SGIX_pixel_texture
-  _glewInfo_GL_SGIX_pixel_texture();
-#endif /* GL_SGIX_pixel_texture */
-#ifdef GL_SGIX_pixel_texture_bits
-  _glewInfo_GL_SGIX_pixel_texture_bits();
-#endif /* GL_SGIX_pixel_texture_bits */
-#ifdef GL_SGIX_reference_plane
-  _glewInfo_GL_SGIX_reference_plane();
-#endif /* GL_SGIX_reference_plane */
-#ifdef GL_SGIX_resample
-  _glewInfo_GL_SGIX_resample();
-#endif /* GL_SGIX_resample */
-#ifdef GL_SGIX_shadow
-  _glewInfo_GL_SGIX_shadow();
-#endif /* GL_SGIX_shadow */
-#ifdef GL_SGIX_shadow_ambient
-  _glewInfo_GL_SGIX_shadow_ambient();
-#endif /* GL_SGIX_shadow_ambient */
-#ifdef GL_SGIX_sprite
-  _glewInfo_GL_SGIX_sprite();
-#endif /* GL_SGIX_sprite */
-#ifdef GL_SGIX_tag_sample_buffer
-  _glewInfo_GL_SGIX_tag_sample_buffer();
-#endif /* GL_SGIX_tag_sample_buffer */
-#ifdef GL_SGIX_texture_add_env
-  _glewInfo_GL_SGIX_texture_add_env();
-#endif /* GL_SGIX_texture_add_env */
-#ifdef GL_SGIX_texture_coordinate_clamp
-  _glewInfo_GL_SGIX_texture_coordinate_clamp();
-#endif /* GL_SGIX_texture_coordinate_clamp */
-#ifdef GL_SGIX_texture_lod_bias
-  _glewInfo_GL_SGIX_texture_lod_bias();
-#endif /* GL_SGIX_texture_lod_bias */
-#ifdef GL_SGIX_texture_multi_buffer
-  _glewInfo_GL_SGIX_texture_multi_buffer();
-#endif /* GL_SGIX_texture_multi_buffer */
-#ifdef GL_SGIX_texture_range
-  _glewInfo_GL_SGIX_texture_range();
-#endif /* GL_SGIX_texture_range */
-#ifdef GL_SGIX_texture_scale_bias
-  _glewInfo_GL_SGIX_texture_scale_bias();
-#endif /* GL_SGIX_texture_scale_bias */
-#ifdef GL_SGIX_vertex_preclip
-  _glewInfo_GL_SGIX_vertex_preclip();
-#endif /* GL_SGIX_vertex_preclip */
-#ifdef GL_SGIX_vertex_preclip_hint
-  _glewInfo_GL_SGIX_vertex_preclip_hint();
-#endif /* GL_SGIX_vertex_preclip_hint */
-#ifdef GL_SGIX_ycrcb
-  _glewInfo_GL_SGIX_ycrcb();
-#endif /* GL_SGIX_ycrcb */
-#ifdef GL_SGI_color_matrix
-  _glewInfo_GL_SGI_color_matrix();
-#endif /* GL_SGI_color_matrix */
-#ifdef GL_SGI_color_table
-  _glewInfo_GL_SGI_color_table();
-#endif /* GL_SGI_color_table */
-#ifdef GL_SGI_texture_color_table
-  _glewInfo_GL_SGI_texture_color_table();
-#endif /* GL_SGI_texture_color_table */
-#ifdef GL_SUNX_constant_data
-  _glewInfo_GL_SUNX_constant_data();
-#endif /* GL_SUNX_constant_data */
-#ifdef GL_SUN_convolution_border_modes
-  _glewInfo_GL_SUN_convolution_border_modes();
-#endif /* GL_SUN_convolution_border_modes */
-#ifdef GL_SUN_global_alpha
-  _glewInfo_GL_SUN_global_alpha();
-#endif /* GL_SUN_global_alpha */
-#ifdef GL_SUN_mesh_array
-  _glewInfo_GL_SUN_mesh_array();
-#endif /* GL_SUN_mesh_array */
-#ifdef GL_SUN_read_video_pixels
-  _glewInfo_GL_SUN_read_video_pixels();
-#endif /* GL_SUN_read_video_pixels */
-#ifdef GL_SUN_slice_accum
-  _glewInfo_GL_SUN_slice_accum();
-#endif /* GL_SUN_slice_accum */
-#ifdef GL_SUN_triangle_list
-  _glewInfo_GL_SUN_triangle_list();
-#endif /* GL_SUN_triangle_list */
-#ifdef GL_SUN_vertex
-  _glewInfo_GL_SUN_vertex();
-#endif /* GL_SUN_vertex */
-#ifdef GL_WIN_phong_shading
-  _glewInfo_GL_WIN_phong_shading();
-#endif /* GL_WIN_phong_shading */
-#ifdef GL_WIN_specular_fog
-  _glewInfo_GL_WIN_specular_fog();
-#endif /* GL_WIN_specular_fog */
-#ifdef GL_WIN_swap_hint
-  _glewInfo_GL_WIN_swap_hint();
-#endif /* GL_WIN_swap_hint */
-}
-
-/* ------------------------------------------------------------------------ */
-
-#ifdef _WIN32
-
-static void wglewInfo ()
-{
-#ifdef WGL_3DFX_multisample
-  _glewInfo_WGL_3DFX_multisample();
-#endif /* WGL_3DFX_multisample */
-#ifdef WGL_3DL_stereo_control
-  _glewInfo_WGL_3DL_stereo_control();
-#endif /* WGL_3DL_stereo_control */
-#ifdef WGL_AMD_gpu_association
-  _glewInfo_WGL_AMD_gpu_association();
-#endif /* WGL_AMD_gpu_association */
-#ifdef WGL_ARB_buffer_region
-  _glewInfo_WGL_ARB_buffer_region();
-#endif /* WGL_ARB_buffer_region */
-#ifdef WGL_ARB_create_context
-  _glewInfo_WGL_ARB_create_context();
-#endif /* WGL_ARB_create_context */
-#ifdef WGL_ARB_create_context_profile
-  _glewInfo_WGL_ARB_create_context_profile();
-#endif /* WGL_ARB_create_context_profile */
-#ifdef WGL_ARB_extensions_string
-  _glewInfo_WGL_ARB_extensions_string();
-#endif /* WGL_ARB_extensions_string */
-#ifdef WGL_ARB_framebuffer_sRGB
-  _glewInfo_WGL_ARB_framebuffer_sRGB();
-#endif /* WGL_ARB_framebuffer_sRGB */
-#ifdef WGL_ARB_make_current_read
-  _glewInfo_WGL_ARB_make_current_read();
-#endif /* WGL_ARB_make_current_read */
-#ifdef WGL_ARB_multisample
-  _glewInfo_WGL_ARB_multisample();
-#endif /* WGL_ARB_multisample */
-#ifdef WGL_ARB_pbuffer
-  _glewInfo_WGL_ARB_pbuffer();
-#endif /* WGL_ARB_pbuffer */
-#ifdef WGL_ARB_pixel_format
-  _glewInfo_WGL_ARB_pixel_format();
-#endif /* WGL_ARB_pixel_format */
-#ifdef WGL_ARB_pixel_format_float
-  _glewInfo_WGL_ARB_pixel_format_float();
-#endif /* WGL_ARB_pixel_format_float */
-#ifdef WGL_ARB_render_texture
-  _glewInfo_WGL_ARB_render_texture();
-#endif /* WGL_ARB_render_texture */
-#ifdef WGL_ATI_pixel_format_float
-  _glewInfo_WGL_ATI_pixel_format_float();
-#endif /* WGL_ATI_pixel_format_float */
-#ifdef WGL_ATI_render_texture_rectangle
-  _glewInfo_WGL_ATI_render_texture_rectangle();
-#endif /* WGL_ATI_render_texture_rectangle */
-#ifdef WGL_EXT_depth_float
-  _glewInfo_WGL_EXT_depth_float();
-#endif /* WGL_EXT_depth_float */
-#ifdef WGL_EXT_display_color_table
-  _glewInfo_WGL_EXT_display_color_table();
-#endif /* WGL_EXT_display_color_table */
-#ifdef WGL_EXT_extensions_string
-  _glewInfo_WGL_EXT_extensions_string();
-#endif /* WGL_EXT_extensions_string */
-#ifdef WGL_EXT_framebuffer_sRGB
-  _glewInfo_WGL_EXT_framebuffer_sRGB();
-#endif /* WGL_EXT_framebuffer_sRGB */
-#ifdef WGL_EXT_make_current_read
-  _glewInfo_WGL_EXT_make_current_read();
-#endif /* WGL_EXT_make_current_read */
-#ifdef WGL_EXT_multisample
-  _glewInfo_WGL_EXT_multisample();
-#endif /* WGL_EXT_multisample */
-#ifdef WGL_EXT_pbuffer
-  _glewInfo_WGL_EXT_pbuffer();
-#endif /* WGL_EXT_pbuffer */
-#ifdef WGL_EXT_pixel_format
-  _glewInfo_WGL_EXT_pixel_format();
-#endif /* WGL_EXT_pixel_format */
-#ifdef WGL_EXT_pixel_format_packed_float
-  _glewInfo_WGL_EXT_pixel_format_packed_float();
-#endif /* WGL_EXT_pixel_format_packed_float */
-#ifdef WGL_EXT_swap_control
-  _glewInfo_WGL_EXT_swap_control();
-#endif /* WGL_EXT_swap_control */
-#ifdef WGL_I3D_digital_video_control
-  _glewInfo_WGL_I3D_digital_video_control();
-#endif /* WGL_I3D_digital_video_control */
-#ifdef WGL_I3D_gamma
-  _glewInfo_WGL_I3D_gamma();
-#endif /* WGL_I3D_gamma */
-#ifdef WGL_I3D_genlock
-  _glewInfo_WGL_I3D_genlock();
-#endif /* WGL_I3D_genlock */
-#ifdef WGL_I3D_image_buffer
-  _glewInfo_WGL_I3D_image_buffer();
-#endif /* WGL_I3D_image_buffer */
-#ifdef WGL_I3D_swap_frame_lock
-  _glewInfo_WGL_I3D_swap_frame_lock();
-#endif /* WGL_I3D_swap_frame_lock */
-#ifdef WGL_I3D_swap_frame_usage
-  _glewInfo_WGL_I3D_swap_frame_usage();
-#endif /* WGL_I3D_swap_frame_usage */
-#ifdef WGL_NV_copy_image
-  _glewInfo_WGL_NV_copy_image();
-#endif /* WGL_NV_copy_image */
-#ifdef WGL_NV_float_buffer
-  _glewInfo_WGL_NV_float_buffer();
-#endif /* WGL_NV_float_buffer */
-#ifdef WGL_NV_gpu_affinity
-  _glewInfo_WGL_NV_gpu_affinity();
-#endif /* WGL_NV_gpu_affinity */
-#ifdef WGL_NV_present_video
-  _glewInfo_WGL_NV_present_video();
-#endif /* WGL_NV_present_video */
-#ifdef WGL_NV_render_depth_texture
-  _glewInfo_WGL_NV_render_depth_texture();
-#endif /* WGL_NV_render_depth_texture */
-#ifdef WGL_NV_render_texture_rectangle
-  _glewInfo_WGL_NV_render_texture_rectangle();
-#endif /* WGL_NV_render_texture_rectangle */
-#ifdef WGL_NV_swap_group
-  _glewInfo_WGL_NV_swap_group();
-#endif /* WGL_NV_swap_group */
-#ifdef WGL_NV_vertex_array_range
-  _glewInfo_WGL_NV_vertex_array_range();
-#endif /* WGL_NV_vertex_array_range */
-#ifdef WGL_NV_video_output
-  _glewInfo_WGL_NV_video_output();
-#endif /* WGL_NV_video_output */
-#ifdef WGL_OML_sync_control
-  _glewInfo_WGL_OML_sync_control();
-#endif /* WGL_OML_sync_control */
-}
-
-#else /* _UNIX */
-
-static void glxewInfo ()
-{
-#ifdef GLX_VERSION_1_2
-  _glewInfo_GLX_VERSION_1_2();
-#endif /* GLX_VERSION_1_2 */
-#ifdef GLX_VERSION_1_3
-  _glewInfo_GLX_VERSION_1_3();
-#endif /* GLX_VERSION_1_3 */
-#ifdef GLX_VERSION_1_4
-  _glewInfo_GLX_VERSION_1_4();
-#endif /* GLX_VERSION_1_4 */
-#ifdef GLX_3DFX_multisample
-  _glewInfo_GLX_3DFX_multisample();
-#endif /* GLX_3DFX_multisample */
-#ifdef GLX_ARB_create_context
-  _glewInfo_GLX_ARB_create_context();
-#endif /* GLX_ARB_create_context */
-#ifdef GLX_ARB_create_context_profile
-  _glewInfo_GLX_ARB_create_context_profile();
-#endif /* GLX_ARB_create_context_profile */
-#ifdef GLX_ARB_fbconfig_float
-  _glewInfo_GLX_ARB_fbconfig_float();
-#endif /* GLX_ARB_fbconfig_float */
-#ifdef GLX_ARB_framebuffer_sRGB
-  _glewInfo_GLX_ARB_framebuffer_sRGB();
-#endif /* GLX_ARB_framebuffer_sRGB */
-#ifdef GLX_ARB_get_proc_address
-  _glewInfo_GLX_ARB_get_proc_address();
-#endif /* GLX_ARB_get_proc_address */
-#ifdef GLX_ARB_multisample
-  _glewInfo_GLX_ARB_multisample();
-#endif /* GLX_ARB_multisample */
-#ifdef GLX_ARB_vertex_buffer_object
-  _glewInfo_GLX_ARB_vertex_buffer_object();
-#endif /* GLX_ARB_vertex_buffer_object */
-#ifdef GLX_ATI_pixel_format_float
-  _glewInfo_GLX_ATI_pixel_format_float();
-#endif /* GLX_ATI_pixel_format_float */
-#ifdef GLX_ATI_render_texture
-  _glewInfo_GLX_ATI_render_texture();
-#endif /* GLX_ATI_render_texture */
-#ifdef GLX_EXT_fbconfig_packed_float
-  _glewInfo_GLX_EXT_fbconfig_packed_float();
-#endif /* GLX_EXT_fbconfig_packed_float */
-#ifdef GLX_EXT_framebuffer_sRGB
-  _glewInfo_GLX_EXT_framebuffer_sRGB();
-#endif /* GLX_EXT_framebuffer_sRGB */
-#ifdef GLX_EXT_import_context
-  _glewInfo_GLX_EXT_import_context();
-#endif /* GLX_EXT_import_context */
-#ifdef GLX_EXT_scene_marker
-  _glewInfo_GLX_EXT_scene_marker();
-#endif /* GLX_EXT_scene_marker */
-#ifdef GLX_EXT_swap_control
-  _glewInfo_GLX_EXT_swap_control();
-#endif /* GLX_EXT_swap_control */
-#ifdef GLX_EXT_texture_from_pixmap
-  _glewInfo_GLX_EXT_texture_from_pixmap();
-#endif /* GLX_EXT_texture_from_pixmap */
-#ifdef GLX_EXT_visual_info
-  _glewInfo_GLX_EXT_visual_info();
-#endif /* GLX_EXT_visual_info */
-#ifdef GLX_EXT_visual_rating
-  _glewInfo_GLX_EXT_visual_rating();
-#endif /* GLX_EXT_visual_rating */
-#ifdef GLX_INTEL_swap_event
-  _glewInfo_GLX_INTEL_swap_event();
-#endif /* GLX_INTEL_swap_event */
-#ifdef GLX_MESA_agp_offset
-  _glewInfo_GLX_MESA_agp_offset();
-#endif /* GLX_MESA_agp_offset */
-#ifdef GLX_MESA_copy_sub_buffer
-  _glewInfo_GLX_MESA_copy_sub_buffer();
-#endif /* GLX_MESA_copy_sub_buffer */
-#ifdef GLX_MESA_pixmap_colormap
-  _glewInfo_GLX_MESA_pixmap_colormap();
-#endif /* GLX_MESA_pixmap_colormap */
-#ifdef GLX_MESA_release_buffers
-  _glewInfo_GLX_MESA_release_buffers();
-#endif /* GLX_MESA_release_buffers */
-#ifdef GLX_MESA_set_3dfx_mode
-  _glewInfo_GLX_MESA_set_3dfx_mode();
-#endif /* GLX_MESA_set_3dfx_mode */
-#ifdef GLX_NV_copy_image
-  _glewInfo_GLX_NV_copy_image();
-#endif /* GLX_NV_copy_image */
-#ifdef GLX_NV_float_buffer
-  _glewInfo_GLX_NV_float_buffer();
-#endif /* GLX_NV_float_buffer */
-#ifdef GLX_NV_present_video
-  _glewInfo_GLX_NV_present_video();
-#endif /* GLX_NV_present_video */
-#ifdef GLX_NV_swap_group
-  _glewInfo_GLX_NV_swap_group();
-#endif /* GLX_NV_swap_group */
-#ifdef GLX_NV_vertex_array_range
-  _glewInfo_GLX_NV_vertex_array_range();
-#endif /* GLX_NV_vertex_array_range */
-#ifdef GLX_NV_video_output
-  _glewInfo_GLX_NV_video_output();
-#endif /* GLX_NV_video_output */
-#ifdef GLX_OML_swap_method
-  _glewInfo_GLX_OML_swap_method();
-#endif /* GLX_OML_swap_method */
-#if defined(GLX_OML_sync_control) && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
-#include <inttypes.h>
-  _glewInfo_GLX_OML_sync_control();
-#endif /* GLX_OML_sync_control */
-#ifdef GLX_SGIS_blended_overlay
-  _glewInfo_GLX_SGIS_blended_overlay();
-#endif /* GLX_SGIS_blended_overlay */
-#ifdef GLX_SGIS_color_range
-  _glewInfo_GLX_SGIS_color_range();
-#endif /* GLX_SGIS_color_range */
-#ifdef GLX_SGIS_multisample
-  _glewInfo_GLX_SGIS_multisample();
-#endif /* GLX_SGIS_multisample */
-#ifdef GLX_SGIS_shared_multisample
-  _glewInfo_GLX_SGIS_shared_multisample();
-#endif /* GLX_SGIS_shared_multisample */
-#ifdef GLX_SGIX_fbconfig
-  _glewInfo_GLX_SGIX_fbconfig();
-#endif /* GLX_SGIX_fbconfig */
-#ifdef GLX_SGIX_hyperpipe
-  _glewInfo_GLX_SGIX_hyperpipe();
-#endif /* GLX_SGIX_hyperpipe */
-#ifdef GLX_SGIX_pbuffer
-  _glewInfo_GLX_SGIX_pbuffer();
-#endif /* GLX_SGIX_pbuffer */
-#ifdef GLX_SGIX_swap_barrier
-  _glewInfo_GLX_SGIX_swap_barrier();
-#endif /* GLX_SGIX_swap_barrier */
-#ifdef GLX_SGIX_swap_group
-  _glewInfo_GLX_SGIX_swap_group();
-#endif /* GLX_SGIX_swap_group */
-#ifdef GLX_SGIX_video_resize
-  _glewInfo_GLX_SGIX_video_resize();
-#endif /* GLX_SGIX_video_resize */
-#ifdef GLX_SGIX_visual_select_group
-  _glewInfo_GLX_SGIX_visual_select_group();
-#endif /* GLX_SGIX_visual_select_group */
-#ifdef GLX_SGI_cushion
-  _glewInfo_GLX_SGI_cushion();
-#endif /* GLX_SGI_cushion */
-#ifdef GLX_SGI_make_current_read
-  _glewInfo_GLX_SGI_make_current_read();
-#endif /* GLX_SGI_make_current_read */
-#ifdef GLX_SGI_swap_control
-  _glewInfo_GLX_SGI_swap_control();
-#endif /* GLX_SGI_swap_control */
-#ifdef GLX_SGI_video_sync
-  _glewInfo_GLX_SGI_video_sync();
-#endif /* GLX_SGI_video_sync */
-#ifdef GLX_SUN_get_transparent_index
-  _glewInfo_GLX_SUN_get_transparent_index();
-#endif /* GLX_SUN_get_transparent_index */
-#ifdef GLX_SUN_video_resize
-  _glewInfo_GLX_SUN_video_resize();
-#endif /* GLX_SUN_video_resize */
-}
-
-#endif /* _WIN32 */
-
-/* ------------------------------------------------------------------------ */
-
-#if defined(_WIN32) || !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-int main (int argc, char** argv)
-#else
-int main (void)
-#endif
-{
-  GLuint err;
-
-#if defined(_WIN32) || !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-  char* display = NULL;
-  int visual = -1;
-
-  if (glewParseArgs(argc-1, argv+1, &display, &visual))
-  {
-#if defined(_WIN32)
-    fprintf(stderr, "Usage: glewinfo [-pf <id>]\n");
-#else
-    fprintf(stderr, "Usage: glewinfo [-display <display>] [-visual <id>]\n");
-#endif
-    return 1;
-  }
-#endif
-
-#if defined(_WIN32)
-  if (GL_TRUE == glewCreateContext(&visual))
-#elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX)
-  if (GL_TRUE == glewCreateContext())
-#else
-  if (GL_TRUE == glewCreateContext(display, &visual))
-#endif
-  {
-    fprintf(stderr, "Error: glewCreateContext failed\n");
-    glewDestroyContext();
-    return 1;
-  }
-  glewExperimental = GL_TRUE;
-#ifdef GLEW_MX
-  err = glewContextInit(glewGetContext());
-#ifdef _WIN32
-  err = err || wglewContextInit(wglewGetContext());
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-  err = err || glxewContextInit(glxewGetContext());
-#endif
-
-#else
-  err = glewInit();
-#endif
-  if (GLEW_OK != err)
-  {
-    fprintf(stderr, "Error [main]: glewInit failed: %s\n", glewGetErrorString(err));
-    glewDestroyContext();
-    return 1;
-  }
-#if defined(_WIN32)
-  f = fopen("glewinfo.txt", "w");
-  if (f == NULL) f = stdout;
-#else
-  f = stdout;
-#endif
-  fprintf(f, "---------------------------\n");
-  fprintf(f, "    GLEW Extension Info\n");
-  fprintf(f, "---------------------------\n\n");
-  fprintf(f, "GLEW version %s\n", glewGetString(GLEW_VERSION));
-#if defined(_WIN32)
-  fprintf(f, "Reporting capabilities of pixelformat %d\n", visual);
-#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-  fprintf(f, "Reporting capabilities of display %s, visual 0x%x\n", 
-    display == NULL ? getenv("DISPLAY") : display, visual);
-#endif
-  fprintf(f, "Running on a %s from %s\n", 
-	  glGetString(GL_RENDERER), glGetString(GL_VENDOR));
-  fprintf(f, "OpenGL version %s is supported\n", glGetString(GL_VERSION));
-  glewInfo();
-#if defined(_WIN32)
-  wglewInfo();
-#else
-  glxewInfo();
-#endif
-  if (f != stdout) fclose(f);
-  glewDestroyContext();
-  return 0;
-}
-
-/* ------------------------------------------------------------------------ */
-
-#if defined(_WIN32) || !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-GLboolean glewParseArgs (int argc, char** argv, char** display, int* visual)
-{
-  int p = 0;
-  while (p < argc)
-  {
-#if defined(_WIN32)
-    if (!strcmp(argv[p], "-pf") || !strcmp(argv[p], "-pixelformat"))
-    {
-      if (++p >= argc) return GL_TRUE;
-      *display = 0;
-      *visual = strtol(argv[p++], NULL, 0);
-    }
-    else
-      return GL_TRUE;
-#else
-    if (!strcmp(argv[p], "-display"))
-    {
-      if (++p >= argc) return GL_TRUE;
-      *display = argv[p++];
-    }
-    else if (!strcmp(argv[p], "-visual"))
-    {
-      if (++p >= argc) return GL_TRUE;
-      *visual = (int)strtol(argv[p++], NULL, 0);
-    }
-    else
-      return GL_TRUE;
-#endif
-  }
-  return GL_FALSE;
-}
-#endif
-
-/* ------------------------------------------------------------------------ */
-
-#if defined(_WIN32)
-
-HWND wnd = NULL;
-HDC dc = NULL;
-HGLRC rc = NULL;
-
-GLboolean glewCreateContext (int* pixelformat)
-{
-  WNDCLASS wc;
-  PIXELFORMATDESCRIPTOR pfd;
-  /* register window class */
-  ZeroMemory(&wc, sizeof(WNDCLASS));
-  wc.hInstance = GetModuleHandle(NULL);
-  wc.lpfnWndProc = DefWindowProc;
-  wc.lpszClassName = "GLEW";
-  if (0 == RegisterClass(&wc)) return GL_TRUE;
-  /* create window */
-  wnd = CreateWindow("GLEW", "GLEW", 0, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, 
-                     CW_USEDEFAULT, NULL, NULL, GetModuleHandle(NULL), NULL);
-  if (NULL == wnd) return GL_TRUE;
-  /* get the device context */
-  dc = GetDC(wnd);
-  if (NULL == dc) return GL_TRUE;
-  /* find pixel format */
-  ZeroMemory(&pfd, sizeof(PIXELFORMATDESCRIPTOR));
-  if (*pixelformat == -1) /* find default */
-  {
-    pfd.nSize = sizeof(PIXELFORMATDESCRIPTOR);
-    pfd.nVersion = 1;
-    pfd.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL;
-    *pixelformat = ChoosePixelFormat(dc, &pfd);
-    if (*pixelformat == 0) return GL_TRUE;
-  }
-  /* set the pixel format for the dc */
-  if (FALSE == SetPixelFormat(dc, *pixelformat, &pfd)) return GL_TRUE;
-  /* create rendering context */
-  rc = wglCreateContext(dc);
-  if (NULL == rc) return GL_TRUE;
-  if (FALSE == wglMakeCurrent(dc, rc)) return GL_TRUE;
-  return GL_FALSE;
-}
-
-void glewDestroyContext ()
-{
-  if (NULL != rc) wglMakeCurrent(NULL, NULL);
-  if (NULL != rc) wglDeleteContext(rc);
-  if (NULL != wnd && NULL != dc) ReleaseDC(wnd, dc);
-  if (NULL != wnd) DestroyWindow(wnd);
-  UnregisterClass("GLEW", GetModuleHandle(NULL));
-}
-
-/* ------------------------------------------------------------------------ */
-
-#elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX)
-
-#include <AGL/agl.h>
-
-AGLContext ctx, octx;
-
-GLboolean glewCreateContext ()
-{
-  int attrib[] = { AGL_RGBA, AGL_NONE };
-  AGLPixelFormat pf;
-  /*int major, minor;
-  SetPortWindowPort(wnd);
-  aglGetVersion(&major, &minor);
-  fprintf(stderr, "GL %d.%d\n", major, minor);*/
-  pf = aglChoosePixelFormat(NULL, 0, attrib);
-  if (NULL == pf) return GL_TRUE;
-  ctx = aglCreateContext(pf, NULL);
-  if (NULL == ctx || AGL_NO_ERROR != aglGetError()) return GL_TRUE;
-  aglDestroyPixelFormat(pf);
-  /*aglSetDrawable(ctx, GetWindowPort(wnd));*/
-  octx = aglGetCurrentContext();
-  if (GL_FALSE == aglSetCurrentContext(ctx)) return GL_TRUE;
-  return GL_FALSE;
-}
-
-void glewDestroyContext ()
-{
-  aglSetCurrentContext(octx);
-  if (NULL != ctx) aglDestroyContext(ctx);
-}
-
-/* ------------------------------------------------------------------------ */
-
-#else /* __UNIX || (__APPLE__ && GLEW_APPLE_GLX) */
-
-Display* dpy = NULL;
-XVisualInfo* vi = NULL;
-XVisualInfo* vis = NULL;
-GLXContext ctx = NULL;
-Window wnd = 0;
-Colormap cmap = 0;
-
-GLboolean glewCreateContext (const char* display, int* visual)
-{
-  int attrib[] = { GLX_RGBA, GLX_DOUBLEBUFFER, None };
-  int erb, evb;
-  XSetWindowAttributes swa;
-  /* open display */
-  dpy = XOpenDisplay(display);
-  if (NULL == dpy) return GL_TRUE;
-  /* query for glx */
-  if (!glXQueryExtension(dpy, &erb, &evb)) return GL_TRUE;
-  /* choose visual */
-  if (*visual == -1)
-  {
-    vi = glXChooseVisual(dpy, DefaultScreen(dpy), attrib);
-    if (NULL == vi) return GL_TRUE;
-    *visual = (int)XVisualIDFromVisual(vi->visual);
-  }
-  else
-  {
-    int n_vis, i;
-    vis = XGetVisualInfo(dpy, 0, NULL, &n_vis);
-    for (i=0; i<n_vis; i++)
-    {
-      if ((int)XVisualIDFromVisual(vis[i].visual) == *visual)
-        vi = &vis[i];
-    }
-    if (vi == NULL) return GL_TRUE;
-  }
-  /* create context */
-  ctx = glXCreateContext(dpy, vi, None, True);
-  if (NULL == ctx) return GL_TRUE;
-  /* create window */
-  /*wnd = XCreateSimpleWindow(dpy, RootWindow(dpy, vi->screen), 0, 0, 1, 1, 1, 0, 0);*/
-  cmap = XCreateColormap(dpy, RootWindow(dpy, vi->screen), vi->visual, AllocNone);
-  swa.border_pixel = 0;
-  swa.colormap = cmap;
-  wnd = XCreateWindow(dpy, RootWindow(dpy, vi->screen), 
-                      0, 0, 1, 1, 0, vi->depth, InputOutput, vi->visual, 
-                      CWBorderPixel | CWColormap, &swa);
-  /* make context current */
-  if (!glXMakeCurrent(dpy, wnd, ctx)) return GL_TRUE;
-  return GL_FALSE;
-}
-
-void glewDestroyContext ()
-{
-  if (NULL != dpy && NULL != ctx) glXDestroyContext(dpy, ctx);
-  if (NULL != dpy && 0 != wnd) XDestroyWindow(dpy, wnd);
-  if (NULL != dpy && 0 != cmap) XFreeColormap(dpy, cmap);
-  if (NULL != vis)
-    XFree(vis);
-  else if (NULL != vi)
-    XFree(vi);
-  if (NULL != dpy) XCloseDisplay(dpy);
-}
-
-#endif /* __UNIX || (__APPLE__ && GLEW_APPLE_GLX) */
diff --git a/src/other/glew/src/visualinfo.c b/src/other/glew/src/visualinfo.c
deleted file mode 100644
index f3ae91f..0000000
--- a/src/other/glew/src/visualinfo.c
+++ /dev/null
@@ -1,1173 +0,0 @@
-/*
-** visualinfo.c
-**
-** Copyright (C) Nate Robins, 1997
-**               Michael Wimmer, 1999
-**               Milan Ikits, 2002-2008
-**
-** visualinfo is a small utility that displays all available visuals,
-** aka. pixelformats, in an OpenGL system along with renderer version
-** information. It shows a table of all the visuals that support OpenGL
-** along with their capabilities. The format of the table is similar to
-** that of glxinfo on Unix systems:
-**
-** visual ~= pixel format descriptor
-** id       = visual id (integer from 1 - max visuals)
-** tp       = type (wn: window, pb: pbuffer, wp: window & pbuffer, bm: bitmap)
-** ac	    = acceleration (ge: generic, fu: full, no: none)
-** fm	    = format (i: integer, f: float, c: color index)
-** db	    = double buffer (y = yes)
-** sw       = swap method (x: exchange, c: copy, u: undefined)
-** st	    = stereo (y = yes)
-** sz       = total # bits
-** r        = # bits of red
-** g        = # bits of green
-** b        = # bits of blue
-** a        = # bits of alpha
-** axbf     = # aux buffers
-** dpth     = # bits of depth
-** stcl     = # bits of stencil
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <GL/glew.h>
-#if defined(_WIN32)
-#include <GL/wglew.h>
-#elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX)
-#include <AGL/agl.h>
-#else
-#include <GL/glxew.h>
-#endif
-
-#ifdef GLEW_MX
-GLEWContext _glewctx;
-#  define glewGetContext() (&_glewctx)
-#  ifdef _WIN32
-WGLEWContext _wglewctx;
-#    define wglewGetContext() (&_wglewctx)
-#  elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-GLXEWContext _glxewctx;
-#    define glxewGetContext() (&_glxewctx)
-#  endif
-#endif /* GLEW_MX */
-
-typedef struct GLContextStruct
-{
-#ifdef _WIN32
-  HWND wnd;
-  HDC dc;
-  HGLRC rc;
-#elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX)
-  AGLContext ctx, octx;
-#else
-  Display* dpy;
-  XVisualInfo* vi;
-  GLXContext ctx;
-  Window wnd;
-  Colormap cmap;
-#endif
-} GLContext;
-
-void InitContext (GLContext* ctx);
-GLboolean CreateContext (GLContext* ctx);
-void DestroyContext (GLContext* ctx);
-void VisualInfo (GLContext* ctx);
-void PrintExtensions (const char* s);
-GLboolean ParseArgs (int argc, char** argv);
-
-int showall = 0;
-int displaystdout = 0;
-int verbose = 0;
-int drawableonly = 0;
-
-char* display = NULL;
-int visual = -1;
-
-FILE* file = 0;
-GLContext ctx;
-
-int 
-main (int argc, char** argv)
-{
-  GLenum err;
-
-  /* ---------------------------------------------------------------------- */
-  /* parse arguments */
-  if (GL_TRUE == ParseArgs(argc-1, argv+1))
-  {
-#if defined(_WIN32)
-    fprintf(stderr, "Usage: visualinfo [-a] [-s] [-h] [-pf <id>]\n");
-    fprintf(stderr, "        -a: show all visuals\n");
-    fprintf(stderr, "        -s: display to stdout instead of visualinfo.txt\n");
-    fprintf(stderr, "        -pf <id>: use given pixelformat\n");
-    fprintf(stderr, "        -h: this screen\n");
-#else
-    fprintf(stderr, "Usage: visualinfo [-h] [-display <display>] [-visual <id>]\n");
-    fprintf(stderr, "        -h: this screen\n");
-    fprintf(stderr, "        -display <display>: use given display\n");
-    fprintf(stderr, "        -visual <id>: use given visual\n");
-#endif
-    return 1;
-  }
-
-  /* ---------------------------------------------------------------------- */
-  /* create OpenGL rendering context */
-  InitContext(&ctx);
-  if (GL_TRUE == CreateContext(&ctx))
-  {
-    fprintf(stderr, "Error: CreateContext failed\n");
-    DestroyContext(&ctx);
-    return 1;
-  }
-
-  /* ---------------------------------------------------------------------- */
-  /* initialize GLEW */
-  glewExperimental = GL_TRUE;
-#ifdef GLEW_MX
-  err = glewContextInit(glewGetContext());
-#  ifdef _WIN32
-  err = err || wglewContextInit(wglewGetContext());
-#  elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
-  err = err || glxewContextInit(glxewGetContext());
-#  endif
-#else
-  err = glewInit();
-#endif
-  if (GLEW_OK != err)
-  {
-    fprintf(stderr, "Error [main]: glewInit failed: %s\n", glewGetErrorString(err));
-    DestroyContext(&ctx);
-    return 1;
-  }
-
-  /* ---------------------------------------------------------------------- */
-  /* open file */
-#if defined(_WIN32)
-  if (!displaystdout) 
-    file = fopen("visualinfo.txt", "w");
-  if (file == NULL)
-    file = stdout;
-#else
-  file = stdout;
-#endif
-
-  /* ---------------------------------------------------------------------- */
-  /* output header information */
-  /* OpenGL extensions */
-  fprintf(file, "OpenGL vendor string: %s\n", glGetString(GL_VENDOR));
-  fprintf(file, "OpenGL renderer string: %s\n", glGetString(GL_RENDERER));
-  fprintf(file, "OpenGL version string: %s\n", glGetString(GL_VERSION));
-  fprintf(file, "OpenGL extensions (GL_): \n");
-  PrintExtensions((char*)glGetString(GL_EXTENSIONS));
-  /* GLU extensions */
-  fprintf(file, "GLU version string: %s\n", gluGetString(GLU_VERSION));
-  fprintf(file, "GLU extensions (GLU_): \n");
-  PrintExtensions((char*)gluGetString(GLU_EXTENSIONS));
-
-  /* ---------------------------------------------------------------------- */
-  /* extensions string */
-#if defined(_WIN32)
-  /* WGL extensions */
-  if (WGLEW_ARB_extensions_string || WGLEW_EXT_extensions_string)
-  {
-    fprintf(file, "WGL extensions (WGL_): \n");
-    PrintExtensions(wglGetExtensionsStringARB ? 
-                    (char*)wglGetExtensionsStringARB(ctx.dc) :
-		    (char*)wglGetExtensionsStringEXT());
-  }
-#elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX)
-  
-#else
-  /* GLX extensions */
-  fprintf(file, "GLX extensions (GLX_): \n");
-  PrintExtensions(glXQueryExtensionsString(glXGetCurrentDisplay(), 
-                                           DefaultScreen(glXGetCurrentDisplay())));
-#endif
-
-  /* ---------------------------------------------------------------------- */
-  /* enumerate all the formats */
-  VisualInfo(&ctx);
-
-  /* ---------------------------------------------------------------------- */
-  /* release resources */
-  DestroyContext(&ctx);
-  if (file != stdout)
-    fclose(file);
-  return 0;
-}
-
-/* do the magic to separate all extensions with comma's, except
-   for the last one that _may_ terminate in a space. */
-void PrintExtensions (const char* s)
-{
-  char t[80];
-  int i=0;
-  char* p=0;
-
-  t[79] = '\0';
-  while (*s)
-  {
-    t[i++] = *s;
-    if(*s == ' ')
-    {
-      if (*(s+1) != '\0') {
-	t[i-1] = ',';
-	t[i] = ' ';
-	p = &t[i++];
-      }
-      else /* zoinks! last one terminated in a space! */
-      {
-	t[i-1] = '\0';
-      }
-    }
-    if(i > 80 - 5)
-    {
-      *p = t[i] = '\0';
-      fprintf(file, "    %s\n", t);
-      p++;
-      i = (int)strlen(p);
-      strcpy(t, p);
-    }
-    s++;
-  }
-  t[i] = '\0';
-  fprintf(file, "    %s.\n", t);
-}
-
-/* ---------------------------------------------------------------------- */
-
-#if defined(_WIN32)
-
-void
-VisualInfoARB (GLContext* ctx)
-{
-  int attrib[32], value[32], n_attrib, n_pbuffer=0, n_float=0;
-  int i, pf, maxpf;
-  unsigned int c;
-
-  /* to get pbuffer capable pixel formats */
-  attrib[0] = WGL_DRAW_TO_PBUFFER_ARB;
-  attrib[1] = GL_TRUE;
-  attrib[2] = 0;
-  wglChoosePixelFormatARB(ctx->dc, attrib, 0, 1, &pf, &c);
-  /* query number of pixel formats */
-  attrib[0] = WGL_NUMBER_PIXEL_FORMATS_ARB;
-  wglGetPixelFormatAttribivARB(ctx->dc, 0, 0, 1, attrib, value);
-  maxpf = value[0];
-  for (i=0; i<32; i++)
-    value[i] = 0;
-
-  attrib[0] = WGL_SUPPORT_OPENGL_ARB;
-  attrib[1] = WGL_DRAW_TO_WINDOW_ARB;
-  attrib[2] = WGL_DRAW_TO_BITMAP_ARB;
-  attrib[3] = WGL_ACCELERATION_ARB;
-  /* WGL_NO_ACCELERATION_ARB, WGL_GENERIC_ACCELERATION_ARB, WGL_FULL_ACCELERATION_ARB */
-  attrib[4] = WGL_SWAP_METHOD_ARB;
-  /* WGL_SWAP_EXCHANGE_ARB, WGL_SWAP_COPY_ARB, WGL_SWAP_UNDEFINED_ARB */
-  attrib[5] = WGL_DOUBLE_BUFFER_ARB;
-  attrib[6] = WGL_STEREO_ARB;
-  attrib[7] = WGL_PIXEL_TYPE_ARB;
-  /* WGL_TYPE_RGBA_ARB, WGL_TYPE_COLORINDEX_ARB,
-     WGL_TYPE_RGBA_FLOAT_ATI (WGL_ATI_pixel_format_float) */
-  /* Color buffer information */
-  attrib[8] = WGL_COLOR_BITS_ARB;
-  attrib[9] = WGL_RED_BITS_ARB;
-  attrib[10] = WGL_GREEN_BITS_ARB;
-  attrib[11] = WGL_BLUE_BITS_ARB;
-  attrib[12] = WGL_ALPHA_BITS_ARB;
-  /* Accumulation buffer information */
-  attrib[13] = WGL_ACCUM_BITS_ARB;
-  attrib[14] = WGL_ACCUM_RED_BITS_ARB;
-  attrib[15] = WGL_ACCUM_GREEN_BITS_ARB;
-  attrib[16] = WGL_ACCUM_BLUE_BITS_ARB;
-  attrib[17] = WGL_ACCUM_ALPHA_BITS_ARB;
-  /* Depth, stencil, and aux buffer information */
-  attrib[18] = WGL_DEPTH_BITS_ARB;
-  attrib[19] = WGL_STENCIL_BITS_ARB;
-  attrib[20] = WGL_AUX_BUFFERS_ARB;
-  /* Layer information */
-  attrib[21] = WGL_NUMBER_OVERLAYS_ARB;
-  attrib[22] = WGL_NUMBER_UNDERLAYS_ARB;
-  attrib[23] = WGL_SWAP_LAYER_BUFFERS_ARB;
-  attrib[24] = WGL_SAMPLES_ARB;
-  attrib[25] = WGL_SUPPORT_GDI_ARB;
-  n_attrib = 26;
-  if (WGLEW_ARB_pbuffer)
-  {
-    attrib[n_attrib] = WGL_DRAW_TO_PBUFFER_ARB;
-    n_pbuffer = n_attrib;
-    n_attrib++;
-  }
-  if (WGLEW_NV_float_buffer)
-  {
-    attrib[n_attrib] = WGL_FLOAT_COMPONENTS_NV;
-    n_float = n_attrib;
-    n_attrib++;
-  }
-  
-  if (!verbose)
-  {
-    /* print table header */
-    fprintf(file, " +-----+-------------------------+-----------------+----------+-----------------+----------+\n");
-    fprintf(file, " |     |          visual         |      color      | ax dp st |      accum      |   layer  |\n");
-    fprintf(file, " |  id | tp ac gd fm db sw st ms |  sz  r  g  b  a | bf th cl |  sz  r  g  b  a | ov un sw |\n");
-    fprintf(file, " +-----+-------------------------+-----------------+----------+-----------------+----------+\n");
-    /* loop through all the pixel formats */
-    for(i = 1; i <= maxpf; i++)
-    {
-      wglGetPixelFormatAttribivARB(ctx->dc, i, 0, n_attrib, attrib, value);
-      /* only describe this format if it supports OpenGL */
-      if (!value[0]) continue;
-      /* by default show only fully accelerated window or pbuffer capable visuals */
-      if (!showall
-	  && ((value[2] && !value[1])
-	  || (!WGLEW_ARB_pbuffer || !value[n_pbuffer])
-	  || (value[3] != WGL_FULL_ACCELERATION_ARB))) continue;
-      /* print out the information for this visual */
-      /* visual id */
-      fprintf(file, " |% 4d | ", i);
-      /* visual type */
-      if (value[1])
-      {
-	if (WGLEW_ARB_pbuffer && value[n_pbuffer]) fprintf(file, "wp ");
-	else fprintf(file, "wn ");
-      }
-      else
-      {
-	if (value[2]) fprintf(file, "bm ");
-	else if (WGLEW_ARB_pbuffer && value[n_pbuffer]) fprintf(file, "pb ");
-      }
-      /* acceleration */
-      fprintf(file, "%s ", value[3] == WGL_FULL_ACCELERATION_ARB ? "fu" : 
-	      value[3] == WGL_GENERIC_ACCELERATION_ARB ? "ge" :
-	      value[3] == WGL_NO_ACCELERATION_ARB ? "no" : ". ");
-      /* gdi support */
-      fprintf(file, " %c ", value[25] ? 'y' : '.');
-      /* format */
-      if (WGLEW_NV_float_buffer && value[n_float]) fprintf(file, " f ");
-      else if (WGLEW_ATI_pixel_format_float && value[7] == WGL_TYPE_RGBA_FLOAT_ATI) fprintf(file, " f ");
-      else if (value[7] == WGL_TYPE_RGBA_ARB) fprintf(file, " i ");
-      else if (value[7] == WGL_TYPE_COLORINDEX_ARB) fprintf(file, " c ");
-      /* double buffer */
-      fprintf(file, " %c ", value[5] ? 'y' : '.');
-      /* swap method */
-      if (value[4] == WGL_SWAP_EXCHANGE_ARB) fprintf(file, " x ");
-      else if (value[4] == WGL_SWAP_COPY_ARB) fprintf(file, " c ");
-      else if (value[4] == WGL_SWAP_UNDEFINED_ARB) fprintf(file, " . ");
-      else fprintf(file, " . ");
-      /* stereo */
-      fprintf(file, " %c ", value[6] ? 'y' : '.');
-      /* multisample */
-      if (value[24] > 0)
-	fprintf(file, "%2d | ", value[24]);
-      else
-	fprintf(file, " . | ");
-      /* color size */
-      if (value[8]) fprintf(file, "%3d ", value[8]);
-      else fprintf(file, "  . ");
-      /* red */
-      if (value[9]) fprintf(file, "%2d ", value[9]); 
-      else fprintf(file, " . ");
-      /* green */
-      if (value[10]) fprintf(file, "%2d ", value[10]); 
-      else fprintf(file, " . ");
-      /* blue */
-      if (value[11]) fprintf(file, "%2d ", value[11]);
-      else fprintf(file, " . ");
-      /* alpha */
-      if (value[12]) fprintf(file, "%2d | ", value[12]); 
-      else fprintf(file, " . | ");
-      /* aux buffers */
-      if (value[20]) fprintf(file, "%2d ", value[20]);
-      else fprintf(file, " . ");
-      /* depth */
-      if (value[18]) fprintf(file, "%2d ", value[18]);
-      else fprintf(file, " . ");
-      /* stencil */
-      if (value[19]) fprintf(file, "%2d | ", value[19]);
-      else fprintf(file, " . | ");
-      /* accum size */
-      if (value[13]) fprintf(file, "%3d ", value[13]);
-      else fprintf(file, "  . ");
-      /* accum red */
-      if (value[14]) fprintf(file, "%2d ", value[14]);
-      else fprintf(file, " . ");
-      /* accum green */
-      if (value[15]) fprintf(file, "%2d ", value[15]);
-      else fprintf(file, " . ");
-      /* accum blue */
-      if (value[16]) fprintf(file, "%2d ", value[16]);
-      else fprintf(file, " . ");
-      /* accum alpha */
-      if (value[17]) fprintf(file, "%2d | ", value[17]);
-      else fprintf(file, " . | ");
-      /* overlay */
-      if (value[21]) fprintf(file, "%2d ", value[21]);
-      else fprintf(file, " . ");
-      /* underlay */
-      if (value[22]) fprintf(file, "%2d ", value[22]);
-      else fprintf(file, " . ");
-      /* layer swap */
-      if (value[23]) fprintf(file, "y ");
-      else fprintf(file, " . ");
-      fprintf(file, "|\n");
-    }
-    /* print table footer */
-    fprintf(file, " +-----+-------------------------+-----------------+----------+-----------------+----------+\n");
-    fprintf(file, " |     |          visual         |      color      | ax dp st |      accum      |   layer  |\n");
-    fprintf(file, " |  id | tp ac gd fm db sw st ms |  sz  r  g  b  a | bf th cl |  sz  r  g  b  a | ov un sw |\n");
-    fprintf(file, " +-----+-------------------------+-----------------+----------+-----------------+----------+\n");
-  }
-  else /* verbose */
-  {
-#if 0
-    fprintf(file, "\n");
-    /* loop through all the pixel formats */
-    for(i = 1; i <= maxpf; i++)
-    {	    
-      DescribePixelFormat(ctx->dc, i, sizeof(PIXELFORMATDESCRIPTOR), &pfd);
-      /* only describe this format if it supports OpenGL */
-      if(!(pfd.dwFlags & PFD_SUPPORT_OPENGL)
-	 || (drawableonly && !(pfd.dwFlags & PFD_DRAW_TO_WINDOW))) continue;
-      fprintf(file, "Visual ID: %2d  depth=%d  class=%s\n", i, pfd.cDepthBits, 
-	     pfd.cColorBits <= 8 ? "PseudoColor" : "TrueColor");
-      fprintf(file, "    bufferSize=%d level=%d renderType=%s doubleBuffer=%d stereo=%d\n", pfd.cColorBits, pfd.bReserved, pfd.iPixelType == PFD_TYPE_RGBA ? "rgba" : "ci", pfd.dwFlags & PFD_DOUBLEBUFFER, pfd.dwFlags & PFD_STEREO);
-      fprintf(file, "    generic=%d generic accelerated=%d\n", (pfd.dwFlags & PFD_GENERIC_FORMAT) == PFD_GENERIC_FORMAT, (pfd.dwFlags & PFD_GENERIC_ACCELERATED) == PFD_GENERIC_ACCELERATED);
-      fprintf(file, "    rgba: redSize=%d greenSize=%d blueSize=%d alphaSize=%d\n", pfd.cRedBits, pfd.cGreenBits, pfd.cBlueBits, pfd.cAlphaBits);
-      fprintf(file, "    auxBuffers=%d depthSize=%d stencilSize=%d\n", pfd.cAuxBuffers, pfd.cDepthBits, pfd.cStencilBits);
-      fprintf(file, "    accum: redSize=%d greenSize=%d blueSize=%d alphaSize=%d\n", pfd.cAccumRedBits, pfd.cAccumGreenBits, pfd.cAccumBlueBits, pfd.cAccumAlphaBits);
-      fprintf(file, "    multiSample=%d multisampleBuffers=%d\n", 0, 0);
-      fprintf(file, "    Opaque.\n");
-    }
-#endif
-  }
-}
-
-void
-VisualInfoGDI (GLContext* ctx)
-{
-  int i, maxpf;
-  PIXELFORMATDESCRIPTOR pfd;
-
-  /* calling DescribePixelFormat() with NULL pfd (!!!) return maximum
-     number of pixel formats */
-  maxpf = DescribePixelFormat(ctx->dc, 1, 0, NULL);
-
-  if (!verbose)
-  {
-    fprintf(file, "-----------------------------------------------------------------------------\n");
-    fprintf(file, "   visual   x  bf  lv rg d st ge ge  r  g  b a  ax dp st   accum buffs    ms \n");
-    fprintf(file, " id  dep tp sp sz  l  ci b ro ne ac sz sz sz sz bf th cl  sz  r  g  b  a ns b\n");
-    fprintf(file, "-----------------------------------------------------------------------------\n");
-
-    /* loop through all the pixel formats */
-    for(i = 1; i <= maxpf; i++)
-    {
-      DescribePixelFormat(ctx->dc, i, sizeof(PIXELFORMATDESCRIPTOR), &pfd);
-      /* only describe this format if it supports OpenGL */
-      if(!(pfd.dwFlags & PFD_SUPPORT_OPENGL)
-	 || (drawableonly && (pfd.dwFlags & PFD_DRAW_TO_BITMAP))) continue;
-      /* other criteria could be tested here for actual pixel format
-	 choosing in an application:
-	   
-	 for (...each pixel format...) {
-	 if (pfd.dwFlags & PFD_SUPPORT_OPENGL &&
-	 pfd.dwFlags & PFD_DOUBLEBUFFER &&
-	 pfd.cDepthBits >= 24 &&
-	 pfd.cColorBits >= 24)
-	 {
-	 goto found;
-	 }
-	 }
-	 ... not found so exit ...
-	 found:
-	 ... found so use it ...
-      */
-      /* print out the information for this pixel format */
-      fprintf(file, "0x%02x ", i);
-      fprintf(file, "%3d ", pfd.cColorBits);
-      if(pfd.dwFlags & PFD_DRAW_TO_WINDOW) fprintf(file, "wn ");
-      else if(pfd.dwFlags & PFD_DRAW_TO_BITMAP) fprintf(file, "bm ");
-      else fprintf(file, "pb ");
-      /* should find transparent pixel from LAYERPLANEDESCRIPTOR */
-      fprintf(file, " . "); 
-      fprintf(file, "%3d ", pfd.cColorBits);
-      /* bReserved field indicates number of over/underlays */
-      if(pfd.bReserved) fprintf(file, " %d ", pfd.bReserved);
-      else fprintf(file, " . "); 
-      fprintf(file, " %c ", pfd.iPixelType == PFD_TYPE_RGBA ? 'r' : 'c');
-      fprintf(file, "%c ", pfd.dwFlags & PFD_DOUBLEBUFFER ? 'y' : '.');
-      fprintf(file, " %c ", pfd.dwFlags & PFD_STEREO ? 'y' : '.');
-      /* added: */
-      fprintf(file, " %c ", pfd.dwFlags & PFD_GENERIC_FORMAT ? 'y' : '.');
-      fprintf(file, " %c ", pfd.dwFlags & PFD_GENERIC_ACCELERATED ? 'y' : '.');
-      if(pfd.cRedBits && pfd.iPixelType == PFD_TYPE_RGBA) 
-	fprintf(file, "%2d ", pfd.cRedBits);
-      else fprintf(file, " . ");
-      if(pfd.cGreenBits && pfd.iPixelType == PFD_TYPE_RGBA) 
-	fprintf(file, "%2d ", pfd.cGreenBits);
-      else fprintf(file, " . ");
-      if(pfd.cBlueBits && pfd.iPixelType == PFD_TYPE_RGBA) 
-	fprintf(file, "%2d ", pfd.cBlueBits);
-      else fprintf(file, " . ");
-      if(pfd.cAlphaBits && pfd.iPixelType == PFD_TYPE_RGBA) 
-	fprintf(file, "%2d ", pfd.cAlphaBits);
-      else fprintf(file, " . ");
-      if(pfd.cAuxBuffers)     fprintf(file, "%2d ", pfd.cAuxBuffers);
-      else fprintf(file, " . ");
-      if(pfd.cDepthBits)      fprintf(file, "%2d ", pfd.cDepthBits);
-      else fprintf(file, " . ");
-      if(pfd.cStencilBits)    fprintf(file, "%2d ", pfd.cStencilBits);
-      else fprintf(file, " . ");
-      if(pfd.cAccumBits)   fprintf(file, "%3d ", pfd.cAccumBits);
-      else fprintf(file, "  . ");
-      if(pfd.cAccumRedBits)   fprintf(file, "%2d ", pfd.cAccumRedBits);
-      else fprintf(file, " . ");
-      if(pfd.cAccumGreenBits) fprintf(file, "%2d ", pfd.cAccumGreenBits);
-      else fprintf(file, " . ");
-      if(pfd.cAccumBlueBits)  fprintf(file, "%2d ", pfd.cAccumBlueBits);
-      else fprintf(file, " . ");
-      if(pfd.cAccumAlphaBits) fprintf(file, "%2d ", pfd.cAccumAlphaBits);
-      else fprintf(file, " . ");
-      /* no multisample in win32 */
-      fprintf(file, " . .\n");
-    }
-    /* print table footer */
-    fprintf(file, "-----------------------------------------------------------------------------\n");
-    fprintf(file, "   visual   x  bf  lv rg d st ge ge  r  g  b a  ax dp st   accum buffs    ms \n");
-    fprintf(file, " id  dep tp sp sz  l  ci b ro ne ac sz sz sz sz bf th cl  sz  r  g  b  a ns b\n");
-    fprintf(file, "-----------------------------------------------------------------------------\n");
-  }
-  else /* verbose */
-  {
-    fprintf(file, "\n");
-    /* loop through all the pixel formats */
-    for(i = 1; i <= maxpf; i++)
-    {	    
-      DescribePixelFormat(ctx->dc, i, sizeof(PIXELFORMATDESCRIPTOR), &pfd);
-      /* only describe this format if it supports OpenGL */
-      if(!(pfd.dwFlags & PFD_SUPPORT_OPENGL)
-	 || (drawableonly && !(pfd.dwFlags & PFD_DRAW_TO_WINDOW))) continue;
-      fprintf(file, "Visual ID: %2d  depth=%d  class=%s\n", i, pfd.cDepthBits, 
-	     pfd.cColorBits <= 8 ? "PseudoColor" : "TrueColor");
-      fprintf(file, "    bufferSize=%d level=%d renderType=%s doubleBuffer=%ld stereo=%ld\n", pfd.cColorBits, pfd.bReserved, pfd.iPixelType == PFD_TYPE_RGBA ? "rgba" : "ci", pfd.dwFlags & PFD_DOUBLEBUFFER, pfd.dwFlags & PFD_STEREO);
-      fprintf(file, "    generic=%d generic accelerated=%d\n", (pfd.dwFlags & PFD_GENERIC_FORMAT) == PFD_GENERIC_FORMAT, (pfd.dwFlags & PFD_GENERIC_ACCELERATED) == PFD_GENERIC_ACCELERATED);
-      fprintf(file, "    rgba: redSize=%d greenSize=%d blueSize=%d alphaSize=%d\n", pfd.cRedBits, pfd.cGreenBits, pfd.cBlueBits, pfd.cAlphaBits);
-      fprintf(file, "    auxBuffers=%d depthSize=%d stencilSize=%d\n", pfd.cAuxBuffers, pfd.cDepthBits, pfd.cStencilBits);
-      fprintf(file, "    accum: redSize=%d greenSize=%d blueSize=%d alphaSize=%d\n", pfd.cAccumRedBits, pfd.cAccumGreenBits, pfd.cAccumBlueBits, pfd.cAccumAlphaBits);
-      fprintf(file, "    multiSample=%d multisampleBuffers=%d\n", 0, 0);
-      fprintf(file, "    Opaque.\n");
-    }
-  }
-}
-
-void
-VisualInfo (GLContext* ctx)
-{
-  if (WGLEW_ARB_pixel_format)
-    VisualInfoARB(ctx);
-  else
-    VisualInfoGDI(ctx);
-}
-
-/* ---------------------------------------------------------------------- */
-
-#elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX)
-
-void
-VisualInfo (GLContext* ctx)
-{
-/*
-  int attrib[] = { AGL_RGBA, AGL_NONE };
-  AGLPixelFormat pf;
-  GLint value;
-  pf = aglChoosePixelFormat(NULL, 0, attrib);
-  while (pf != NULL)
-  {
-    aglDescribePixelFormat(pf, GL_RGBA, &value);
-    fprintf(stderr, "%d\n", value);
-    pf = aglNextPixelFormat(pf);
-  }
-*/
-}
-
-#else /* GLX */
-
-void
-VisualInfo (GLContext* ctx)
-{
-  int n_fbc;
-  GLXFBConfig* fbc;
-  int value, ret, i;
-
-  fbc = glXGetFBConfigs(ctx->dpy, DefaultScreen(ctx->dpy), &n_fbc);
-
-  if (fbc)
-  {
-    if (!verbose)
-    {
-      /* print table header */
-      fprintf(file, " +-----+-------------------------+-----------------+----------+-------------+-------+------+\n");
-      fprintf(file, " |     |        visual           |      color      | ax dp st |    accum    |   ms  |  cav |\n");
-      fprintf(file, " |  id | tp xr cl fm db st lv xp |  sz  r  g  b  a | bf th cl | r  g  b  a  | ns  b |  eat |\n");
-      fprintf(file, " +-----+-------------------------+-----------------+----------+-------------+-------+------+\n");
-      /* loop through all the fbcs */
-      for (i=0; i<n_fbc; i++)
-      {
-        /* print out the information for this fbc */
-        /* visual id */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_FBCONFIG_ID, &value);
-        if (ret != Success)
-        {
-          fprintf(file, "|  ?  |");
-        }
-        else
-        {
-          fprintf(file, " |% 4d | ", value);
-        }
-        /* visual type */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_DRAWABLE_TYPE, &value);
-        if (ret != Success)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          if (value & GLX_WINDOW_BIT)
-          {
-            if (value & GLX_PBUFFER_BIT)
-            {
-              fprintf(file, "wp ");
-            }
-            else
-            {
-              fprintf(file, "wn ");
-            }
-          }
-          else
-          {
-            if (value & GLX_PBUFFER_BIT)
-            {
-              fprintf(file, "pb ");
-            }
-            else if (value & GLX_PIXMAP_BIT)
-            {
-              fprintf(file, "pm ");
-            }
-            else
-            {
-              fprintf(file, " ? ");
-            }
-          }
-        }
-        /* x renderable */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_X_RENDERABLE, &value);
-        if (ret != Success)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          fprintf(file, value ? " y " : " n ");
-        }
-        /* class */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_X_VISUAL_TYPE, &value);
-        if (ret != Success)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          if (GLX_TRUE_COLOR == value)
-            fprintf(file, "tc ");
-          else if (GLX_DIRECT_COLOR == value)
-            fprintf(file, "dc ");
-          else if (GLX_PSEUDO_COLOR == value)
-            fprintf(file, "pc ");
-          else if (GLX_STATIC_COLOR == value)
-            fprintf(file, "sc ");
-          else if (GLX_GRAY_SCALE == value)
-            fprintf(file, "gs ");
-          else if (GLX_STATIC_GRAY == value)
-            fprintf(file, "sg ");
-          else if (GLX_X_VISUAL_TYPE == value)
-            fprintf(file, " . ");
-          else
-            fprintf(file, " ? ");
-        }
-        /* format */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_RENDER_TYPE, &value);
-        if (ret != Success)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          if (GLXEW_NV_float_buffer)
-          {
-            int ret2, value2;
-            ret2 = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_FLOAT_COMPONENTS_NV, &value2);
-            if (Success == ret2 && GL_TRUE == value2)
-            {
-              fprintf(file, " f ");
-            }
-            else if (value & GLX_RGBA_BIT)
-              fprintf(file, " i ");
-            else if (value & GLX_COLOR_INDEX_BIT)
-              fprintf(file, " c ");
-            else
-              fprintf(file, " ? ");
-          }
-          else
-          {
-            if (value & GLX_RGBA_FLOAT_ATI_BIT)
-              fprintf(file, " f ");
-            else if (value & GLX_RGBA_BIT)
-              fprintf(file, " i ");
-            else if (value & GLX_COLOR_INDEX_BIT)
-              fprintf(file, " c ");
-            else
-              fprintf(file, " ? ");
-          }
-        }
-        /* double buffer */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_DOUBLEBUFFER, &value);
-        fprintf(file, " %c ", Success != ret ? '?' : (value ? 'y' : '.'));
-        /* stereo */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_STEREO, &value);
-        fprintf(file, " %c ", Success != ret ? '?' : (value ? 'y' : '.'));
-        /* level */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_LEVEL, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          fprintf(file, "%2d ", value);
-        }
-        /* transparency */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_TRANSPARENT_TYPE, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? | ");
-        }
-        else
-        {
-          if (GLX_TRANSPARENT_RGB == value)
-            fprintf(file, " r | ");
-          else if (GLX_TRANSPARENT_INDEX == value)
-            fprintf(file, " i | ");
-          else if (GLX_NONE == value)
-            fprintf(file, " . | ");
-          else
-            fprintf(file, " ? | ");
-        }
-        /* color size */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_BUFFER_SIZE, &value);
-        if (Success != ret)
-        {
-          fprintf(file, "  ? ");
-        }
-        else
-        {
-          if (value)
-            fprintf(file, "%3d ", value);
-          else
-            fprintf(file, "  . ");
-        }
-        /* red size */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_RED_SIZE, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          if (value)
-            fprintf(file, "%2d ", value);
-          else
-            fprintf(file, " . ");
-        }
-        /* green size */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_GREEN_SIZE, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          if (value)
-            fprintf(file, "%2d ", value);
-          else
-            fprintf(file, " . ");
-        }
-        /* blue size */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_BLUE_SIZE, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          if (value)
-            fprintf(file, "%2d ", value);
-          else
-            fprintf(file, " . ");
-        }
-        /* alpha size */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_ALPHA_SIZE, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? | ");
-        }
-        else
-        {
-          if (value)
-            fprintf(file, "%2d | ", value);
-          else
-            fprintf(file, " . | ");
-        }
-        /* aux buffers */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_AUX_BUFFERS, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          if (value)
-            fprintf(file, "%2d ", value);
-          else
-            fprintf(file, " . ");
-        }
-        /* depth size */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_DEPTH_SIZE, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          if (value)
-            fprintf(file, "%2d ", value);
-          else
-            fprintf(file, " . ");
-        }
-        /* stencil size */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_STENCIL_SIZE, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? | ");
-        }
-        else
-        {
-          if (value)
-            fprintf(file, "%2d | ", value);
-          else
-            fprintf(file, " . | ");
-        }
-        /* accum red size */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_ACCUM_RED_SIZE, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          if (value)
-            fprintf(file, "%2d ", value);
-          else
-            fprintf(file, " . ");
-        }
-        /* accum green size */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_ACCUM_GREEN_SIZE, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          if (value)
-            fprintf(file, "%2d ", value);
-          else
-            fprintf(file, " . ");
-        }
-        /* accum blue size */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_ACCUM_BLUE_SIZE, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          if (value)
-            fprintf(file, "%2d ", value);
-          else
-            fprintf(file, " . ");
-        }
-        /* accum alpha size */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_ACCUM_ALPHA_SIZE, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? | ");
-        }
-        else
-        {
-          if (value)
-            fprintf(file, "%2d | ", value);
-          else
-            fprintf(file, " . | ");
-        }
-        /* multisample */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_SAMPLES, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? ");
-        }
-        else
-        {
-          fprintf(file, "%2d ", value);
-        }
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_SAMPLE_BUFFERS, &value);
-        if (Success != ret)
-        {
-          fprintf(file, " ? | ");
-        }
-        else
-        {
-          fprintf(file, "%2d | ", value);
-        }
-        /* caveat */
-        ret = glXGetFBConfigAttrib(ctx->dpy, fbc[i], GLX_CONFIG_CAVEAT, &value);
-        if (Success != ret)
-        {
-          fprintf(file, "???? |");
-        }
-        else
-        {
-          if (GLX_NONE == value)
-            fprintf(file, "none |\n");
-          else if (GLX_SLOW_CONFIG == value)
-            fprintf(file, "slow |\n");
-          else if (GLX_NON_CONFORMANT_CONFIG == value)
-            fprintf(file, "ncft |\n");
-          else
-            fprintf(file, "???? |\n");
-        }
-      }
-      /* print table footer */
-      fprintf(file, " +-----+-------------------------+-----------------+----------+-------------+-------+------+\n");
-      fprintf(file, " |  id | tp xr cl fm db st lv xp |  sz  r  g  b  a | bf th cl | r  g  b  a  | ns  b |  eat |\n");
-      fprintf(file, " |     |        visual           |      color      | ax dp st |    accum    |   ms  |  cav |\n");
-      fprintf(file, " +-----+-------------------------+-----------------+----------+-------------+-------+------+\n");
-    }
-  }
-}
-
-#endif
-
-/* ------------------------------------------------------------------------ */
-
-#if defined(_WIN32)
-
-void InitContext (GLContext* ctx)
-{
-  ctx->wnd = NULL;
-  ctx->dc = NULL;
-  ctx->rc = NULL;
-}
-
-GLboolean CreateContext (GLContext* ctx)
-{
-  WNDCLASS wc;
-  PIXELFORMATDESCRIPTOR pfd;
-  /* check for input */
-  if (NULL == ctx) return GL_TRUE;
-  /* register window class */
-  ZeroMemory(&wc, sizeof(WNDCLASS));
-  wc.hInstance = GetModuleHandle(NULL);
-  wc.lpfnWndProc = DefWindowProc;
-  wc.lpszClassName = "GLEW";
-  if (0 == RegisterClass(&wc)) return GL_TRUE;
-  /* create window */
-  ctx->wnd = CreateWindow("GLEW", "GLEW", 0, CW_USEDEFAULT, CW_USEDEFAULT, 
-                          CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, 
-                          GetModuleHandle(NULL), NULL);
-  if (NULL == ctx->wnd) return GL_TRUE;
-  /* get the device context */
-  ctx->dc = GetDC(ctx->wnd);
-  if (NULL == ctx->dc) return GL_TRUE;
-  /* find pixel format */
-  ZeroMemory(&pfd, sizeof(PIXELFORMATDESCRIPTOR));
-  if (visual == -1) /* find default */
-  {
-    pfd.nSize = sizeof(PIXELFORMATDESCRIPTOR);
-    pfd.nVersion = 1;
-    pfd.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL;
-    visual = ChoosePixelFormat(ctx->dc, &pfd);
-    if (0 == visual) return GL_TRUE;
-  }
-  /* set the pixel format for the dc */
-  if (FALSE == SetPixelFormat(ctx->dc, visual, &pfd)) return GL_TRUE;
-  /* create rendering context */
-  ctx->rc = wglCreateContext(ctx->dc);
-  if (NULL == ctx->rc) return GL_TRUE;
-  if (FALSE == wglMakeCurrent(ctx->dc, ctx->rc)) return GL_TRUE;
-  return GL_FALSE;
-}
-
-void DestroyContext (GLContext* ctx)
-{
-  if (NULL == ctx) return;
-  if (NULL != ctx->rc) wglMakeCurrent(NULL, NULL);
-  if (NULL != ctx->rc) wglDeleteContext(wglGetCurrentContext());
-  if (NULL != ctx->wnd && NULL != ctx->dc) ReleaseDC(ctx->wnd, ctx->dc);
-  if (NULL != ctx->wnd) DestroyWindow(ctx->wnd);
-  UnregisterClass("GLEW", GetModuleHandle(NULL));
-}
-
-/* ------------------------------------------------------------------------ */
-
-#elif defined(__APPLE__) && !defined(GLEW_APPLE_GLX)
-
-void InitContext (GLContext* ctx)
-{
-  ctx->ctx = NULL;
-  ctx->octx = NULL;
-}
-
-GLboolean CreateContext (GLContext* ctx)
-{
-  int attrib[] = { AGL_RGBA, AGL_NONE };
-  AGLPixelFormat pf;
-  /* check input */
-  if (NULL == ctx) return GL_TRUE;
-  /*int major, minor;
-  SetPortWindowPort(wnd);
-  aglGetVersion(&major, &minor);
-  fprintf(stderr, "GL %d.%d\n", major, minor);*/
-  pf = aglChoosePixelFormat(NULL, 0, attrib);
-  if (NULL == pf) return GL_TRUE;
-  ctx->ctx = aglCreateContext(pf, NULL);
-  if (NULL == ctx->ctx || AGL_NO_ERROR != aglGetError()) return GL_TRUE;
-  aglDestroyPixelFormat(pf);
-  /*aglSetDrawable(ctx, GetWindowPort(wnd));*/
-  ctx->octx = aglGetCurrentContext();
-  if (GL_FALSE == aglSetCurrentContext(ctx->ctx)) return GL_TRUE;
-  return GL_FALSE;
-}
-
-void DestroyContext (GLContext* ctx)
-{
-  if (NULL == ctx) return;
-  aglSetCurrentContext(ctx->octx);
-  if (NULL != ctx->ctx) aglDestroyContext(ctx->ctx);
-}
-
-/* ------------------------------------------------------------------------ */
-
-#else /* __UNIX || (__APPLE__ && GLEW_APPLE_GLX) */
-
-void InitContext (GLContext* ctx)
-{
-  ctx->dpy = NULL;
-  ctx->vi = NULL;
-  ctx->ctx = NULL;
-  ctx->wnd = 0;
-  ctx->cmap = 0;
-}
-
-GLboolean CreateContext (GLContext* ctx)
-{
-  int attrib[] = { GLX_RGBA, GLX_DOUBLEBUFFER, None };
-  int erb, evb;
-  XSetWindowAttributes swa;
-  /* check input */
-  if (NULL == ctx) return GL_TRUE;
-  /* open display */
-  ctx->dpy = XOpenDisplay(display);
-  if (NULL == ctx->dpy) return GL_TRUE;
-  /* query for glx */
-  if (!glXQueryExtension(ctx->dpy, &erb, &evb)) return GL_TRUE;
-  /* choose visual */
-  ctx->vi = glXChooseVisual(ctx->dpy, DefaultScreen(ctx->dpy), attrib);
-  if (NULL == ctx->vi) return GL_TRUE;
-  /* create context */
-  ctx->ctx = glXCreateContext(ctx->dpy, ctx->vi, None, True);
-  if (NULL == ctx->ctx) return GL_TRUE;
-  /* create window */
-  /*wnd = XCreateSimpleWindow(dpy, RootWindow(dpy, vi->screen), 0, 0, 1, 1, 1, 0, 0);*/
-  ctx->cmap = XCreateColormap(ctx->dpy, RootWindow(ctx->dpy, ctx->vi->screen),
-                              ctx->vi->visual, AllocNone);
-  swa.border_pixel = 0;
-  swa.colormap = ctx->cmap;
-  ctx->wnd = XCreateWindow(ctx->dpy, RootWindow(ctx->dpy, ctx->vi->screen), 
-                           0, 0, 1, 1, 0, ctx->vi->depth, InputOutput, ctx->vi->visual, 
-                           CWBorderPixel | CWColormap, &swa);
-  /* make context current */
-  if (!glXMakeCurrent(ctx->dpy, ctx->wnd, ctx->ctx)) return GL_TRUE;
-  return GL_FALSE;
-}
-
-void DestroyContext (GLContext* ctx)
-{
-  if (NULL != ctx->dpy && NULL != ctx->ctx) glXDestroyContext(ctx->dpy, ctx->ctx);
-  if (NULL != ctx->dpy && 0 != ctx->wnd) XDestroyWindow(ctx->dpy, ctx->wnd);
-  if (NULL != ctx->dpy && 0 != ctx->cmap) XFreeColormap(ctx->dpy, ctx->cmap);
-  if (NULL != ctx->vi) XFree(ctx->vi);
-  if (NULL != ctx->dpy) XCloseDisplay(ctx->dpy);
-}
-
-#endif /* __UNIX || (__APPLE__ && GLEW_APPLE_GLX) */
-
-GLboolean ParseArgs (int argc, char** argv)
-{
-  int p = 0;
-  while (p < argc)
-  {
-#if defined(_WIN32)
-    if (!strcmp(argv[p], "-pf") || !strcmp(argv[p], "-pixelformat"))
-    {
-      if (++p >= argc) return GL_TRUE;
-      display = NULL;
-      visual = strtol(argv[p], NULL, 0);
-    }
-    else if (!strcmp(argv[p], "-a"))
-    {
-      showall = 1;
-    }
-    else if (!strcmp(argv[p], "-s"))
-    {
-      displaystdout = 1;
-    }
-    else if (!strcmp(argv[p], "-h"))
-    {
-      return GL_TRUE;
-    }
-    else
-      return GL_TRUE;
-#else
-    if (!strcmp(argv[p], "-display"))
-    {
-      if (++p >= argc) return GL_TRUE;
-      display = argv[p];
-    }
-    else if (!strcmp(argv[p], "-visual"))
-    {
-      if (++p >= argc) return GL_TRUE;
-      visual = (int)strtol(argv[p], NULL, 0);
-    }
-    else if (!strcmp(argv[p], "-h"))
-    {
-      return GL_TRUE;
-    }
-    else
-      return GL_TRUE;
-#endif
-    p++;
-  }
-  return GL_FALSE;
-}
diff --git a/src/other/regex/Makefile.am b/src/other/regex/Makefile.am
deleted file mode 100644
index 0e67f7b..0000000
--- a/src/other/regex/Makefile.am
+++ /dev/null
@@ -1,18 +0,0 @@
-noinst_LTLIBRARIES = libregex.la
-
-libregex_la_LDFLAGS = -static
-libregex_la_SOURCES  =	\
-	cclass.h	\
-	cname.h		\
-	regcomp.c	\
-	regerror.c	\
-	regex2.h	\
-	regexec.c	\
-	regfree.c	\
-	utils.h
-
-EXTRA_DIST =		\
-	engine.c
-
-MAINTAINERCLEANFILES = \
-	Makefile.in
diff --git a/src/other/regex/Makefile.in b/src/other/regex/Makefile.in
deleted file mode 100644
index ff9b80a..0000000
--- a/src/other/regex/Makefile.in
+++ /dev/null
@@ -1,545 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-target_triplet = @target@
-subdir = src/other/regex
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/cache.m4 \
-	$(top_srcdir)/m4/curses.m4 $(top_srcdir)/m4/isnan.m4 \
-	$(top_srcdir)/m4/libcurl.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/m4/mkdirp.m4 $(top_srcdir)/m4/sdl.m4 \
-	$(top_srcdir)/m4/stage.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/include/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-LTLIBRARIES = $(noinst_LTLIBRARIES)
-libregex_la_LIBADD =
-am_libregex_la_OBJECTS = regcomp.lo regerror.lo regexec.lo regfree.lo
-libregex_la_OBJECTS = $(am_libregex_la_OBJECTS)
-libregex_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
-	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-	$(libregex_la_LDFLAGS) $(LDFLAGS) -o $@
-DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)/include
-depcomp = $(SHELL) $(top_srcdir)/misc/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
-	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
-	$(LDFLAGS) -o $@
-SOURCES = $(libregex_la_SOURCES)
-DIST_SOURCES = $(libregex_la_SOURCES)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AR_FLAGS = @AR_FLAGS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-BZFLAG_DATA = @BZFLAG_DATA@
-BZFLAG_DATE = @BZFLAG_DATE@
-BZFLAG_VERSION = @BZFLAG_VERSION@
-CC = @CC@
-CCACHE = @CCACHE@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CONFIG = @CONFIG@
-CONFIG_CACHE = @CONFIG_CACHE@
-CONF_CFLAGS = @CONF_CFLAGS@
-CONF_CPPFLAGS = @CONF_CPPFLAGS@
-CONF_CXXFLAGS = @CONF_CXXFLAGS@
-CONF_TIME = @CONF_TIME@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CURSES_LIB = @CURSES_LIB@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO = @ECHO@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FRAMEWORK_OPENGL = @FRAMEWORK_OPENGL@
-GLEW_LIBS = @GLEW_LIBS@
-GLIBS = @GLIBS@
-GREP = @GREP@
-HASPOD2MAN = @HASPOD2MAN@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCARES = @LIBCARES@
-LIBCURL = @LIBCURL@
-LIBCURL_CPPFLAGS = @LIBCURL_CPPFLAGS@
-LIBDIR = @LIBDIR@
-LIBDL = @LIBDL@
-LIBMINIUPNPC = @LIBMINIUPNPC@
-LIBOBJS = @LIBOBJS@
-LIBREGEX = @LIBREGEX@
-LIBRT = @LIBRT@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIBTOOLFLAGS = @LIBTOOLFLAGS@
-LIBTOOL_DEPS = @LIBTOOL_DEPS@
-LIBZ = @LIBZ@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAJOR_VERSION = @MAJOR_VERSION@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MINOR_VERSION = @MINOR_VERSION@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-RANLIB = @RANLIB@
-SDL_CFLAGS = @SDL_CFLAGS@
-SDL_CONFIG = @SDL_CONFIG@
-SDL_LIBS = @SDL_LIBS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-VERSION = @VERSION@
-WINDRES = @WINDRES@
-XMKMF = @XMKMF@
-X_CFLAGS = @X_CFLAGS@
-X_EXTRA_LIBS = @X_EXTRA_LIBS@
-X_LIBS = @X_LIBS@
-X_PRE_LIBS = @X_PRE_LIBS@
-_libcurl_config = @_libcurl_config@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-subdirs = @subdirs@
-sysconfdir = @sysconfdir@
-target = @target@
-target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-noinst_LTLIBRARIES = libregex.la
-libregex_la_LDFLAGS = -static
-libregex_la_SOURCES = \
-	cclass.h	\
-	cname.h		\
-	regcomp.c	\
-	regerror.c	\
-	regex2.h	\
-	regexec.c	\
-	regfree.c	\
-	utils.h
-
-EXTRA_DIST = \
-	engine.c
-
-MAINTAINERCLEANFILES = \
-	Makefile.in
-
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .c .lo .o .obj
-$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
-	@for dep in $?; do \
-	  case '$(am__configure_deps)' in \
-	    *$$dep*) \
-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
-	        && { if test -f $@; then exit 0; else break; fi; }; \
-	      exit 1;; \
-	  esac; \
-	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/other/regex/Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --gnu src/other/regex/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure:  $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-clean-noinstLTLIBRARIES:
-	-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
-	@list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
-	  dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
-	  test "$$dir" != "$$p" || dir=.; \
-	  echo "rm -f \"$${dir}/so_locations\""; \
-	  rm -f "$${dir}/so_locations"; \
-	done
-libregex.la: $(libregex_la_OBJECTS) $(libregex_la_DEPENDENCIES) 
-	$(libregex_la_LINK)  $(libregex_la_OBJECTS) $(libregex_la_LIBADD) $(LIBS)
-
-mostlyclean-compile:
-	-rm -f *.$(OBJEXT)
-
-distclean-compile:
-	-rm -f *.tab.c
-
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/regcomp.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/regerror.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/regexec.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/regfree.Plo at am__quote@
-
-.c.o:
- at am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c $<
-
-.c.obj:
- at am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-.c.lo:
- at am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	set x; \
-	here=`pwd`; \
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(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: check-am
-all-am: Makefile $(LTLIBRARIES)
-installdirs:
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-	-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-clean: clean-am
-
-clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
-	mostlyclean-am
-
-distclean: distclean-am
-	-rm -rf ./$(DEPDIR)
-	-rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
-	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 -rf ./$(DEPDIR)
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
-	mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-	clean-libtool clean-noinstLTLIBRARIES ctags distclean \
-	distclean-compile distclean-generic distclean-libtool \
-	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 mostlyclean \
-	mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-	pdf pdf-am ps ps-am tags uninstall uninstall-am
-
-
-# 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/src/other/regex/cclass.h b/src/other/regex/cclass.h
deleted file mode 100644
index a2fdf2e..0000000
--- a/src/other/regex/cclass.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Copyright (c) 1992, 1993, 1994 Henry Spencer.
- * Copyright (c) 1992, 1993, 1994
- *	The Regents of the University of California.  All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Henry Spencer.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *  * Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *	@(#)cclass.h	8.3 (Berkeley) 3/20/94
- */
-
-/* character-class table */
-static struct cclass {
-	char *name;
-	char *chars;
-	char *multis;
-} cclasses[] = {
-	{"alnum",	"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\
-0123456789",				""},
-	{"alpha",	"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",
-					""},
-	{"blank",	" \t",		""},
-	{"cntrl",	"\007\b\t\n\v\f\r\1\2\3\4\5\6\16\17\20\21\22\23\24\
-\25\26\27\30\31\32\33\34\35\36\37\177",	""},
-	{"digit",	"0123456789",	""},
-	{"graph",	"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\
-0123456789!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
-					""},
-	{"lower",	"abcdefghijklmnopqrstuvwxyz",
-					""},
-	{"print",	"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\
-0123456789!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~ ",
-					""},
-	{"punct",	"!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
-					""},
-	{"space",	"\t\n\v\f\r ",	""},
-	{"upper",	"ABCDEFGHIJKLMNOPQRSTUVWXYZ",
-					""},
-	{"xdigit",	"0123456789ABCDEFabcdef",
-					""},
-	{NULL,		0,		""}
-};
diff --git a/src/other/regex/cname.h b/src/other/regex/cname.h
deleted file mode 100644
index c55241c..0000000
--- a/src/other/regex/cname.h
+++ /dev/null
@@ -1,136 +0,0 @@
-/* Copyright (c) 1992, 1993, 1994 Henry Spencer.
- * Copyright (c) 1992, 1993, 1994
- *	The Regents of the University of California.  All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Henry Spencer.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *  * Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *	@(#)cname.h	8.3 (Berkeley) 3/20/94
- */
-
-/* character-name table */
-static struct cname {
-	char *name;
-	char code;
-} cnames[] = {
-	{"NUL",	'\0'},
-	{"SOH",	'\001'},
-	{"STX",	'\002'},
-	{"ETX",	'\003'},
-	{"EOT",	'\004'},
-	{"ENQ",	'\005'},
-	{"ACK",	'\006'},
-	{"BEL",	'\007'},
-	{"alert",	'\007'},
-	{"BS",		'\010'},
-	{"backspace",	'\b'},
-	{"HT",		'\011'},
-	{"tab",		'\t'},
-	{"LF",		'\012'},
-	{"newline",	'\n'},
-	{"VT",		'\013'},
-	{"vertical-tab",	'\v'},
-	{"FF",		'\014'},
-	{"form-feed",	'\f'},
-	{"CR",		'\015'},
-	{"carriage-return",	'\r'},
-	{"SO",	'\016'},
-	{"SI",	'\017'},
-	{"DLE",	'\020'},
-	{"DC1",	'\021'},
-	{"DC2",	'\022'},
-	{"DC3",	'\023'},
-	{"DC4",	'\024'},
-	{"NAK",	'\025'},
-	{"SYN",	'\026'},
-	{"ETB",	'\027'},
-	{"CAN",	'\030'},
-	{"EM",	'\031'},
-	{"SUB",	'\032'},
-	{"ESC",	'\033'},
-	{"IS4",	'\034'},
-	{"FS",	'\034'},
-	{"IS3",	'\035'},
-	{"GS",	'\035'},
-	{"IS2",	'\036'},
-	{"RS",	'\036'},
-	{"IS1",	'\037'},
-	{"US",	'\037'},
-	{"space",		' '},
-	{"exclamation-mark",	'!'},
-	{"quotation-mark",	'"'},
-	{"number-sign",		'#'},
-	{"dollar-sign",		'$'},
-	{"percent-sign",		'%'},
-	{"ampersand",		'&'},
-	{"apostrophe",		'\''},
-	{"left-parenthesis",	'('},
-	{"right-parenthesis",	')'},
-	{"asterisk",	'*'},
-	{"plus-sign",	'+'},
-	{"comma",	','},
-	{"hyphen",	'-'},
-	{"hyphen-minus",	'-'},
-	{"period",	'.'},
-	{"full-stop",	'.'},
-	{"slash",	'/'},
-	{"solidus",	'/'},
-	{"zero",		'0'},
-	{"one",		'1'},
-	{"two",		'2'},
-	{"three",	'3'},
-	{"four",		'4'},
-	{"five",		'5'},
-	{"six",		'6'},
-	{"seven",	'7'},
-	{"eight",	'8'},
-	{"nine",		'9'},
-	{"colon",	':'},
-	{"semicolon",	';'},
-	{"less-than-sign",	'<'},
-	{"equals-sign",		'='},
-	{"greater-than-sign",	'>'},
-	{"question-mark",	'?'},
-	{"commercial-at",	'@'},
-	{"left-square-bracket",	'['},
-	{"backslash",		'\\'},
-	{"reverse-solidus",	'\\'},
-	{"right-square-bracket",	']'},
-	{"circumflex",		'^'},
-	{"circumflex-accent",	'^'},
-	{"underscore",		'_'},
-	{"low-line",		'_'},
-	{"grave-accent",		'`'},
-	{"left-brace",		'{'},
-	{"left-curly-bracket",	'{'},
-	{"vertical-line",	'|'},
-	{"right-brace",		'}'},
-	{"right-curly-bracket",	'}'},
-	{"tilde",		'~'},
-	{"DEL",	'\177'},
-	{NULL,	0}
-};
diff --git a/src/other/regex/engine.c b/src/other/regex/engine.c
deleted file mode 100644
index 771f7da..0000000
--- a/src/other/regex/engine.c
+++ /dev/null
@@ -1,1080 +0,0 @@
-/* Copyright (c) 1992, 1993, 1994 Henry Spencer.
- * Copyright (c) 1992, 1993, 1994
- *	The Regents of the University of California.  All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Henry Spencer.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *  * Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *	@(#)engine.c	8.5 (Berkeley) 3/20/94
- */
-
-/*
- * The matching engine and friends.  This file is #included by regexec.c
- * after suitable #defines of a variety of macros used herein, so that
- * different state representations can be used without duplicating masses
- * of code.
- */
-
-#ifdef SNAMES
-#define	matcher	smatcher
-#define	fast	sfast
-#define	slow	sslow
-#define	dissect	sdissect
-#define	backref	sbackref
-#define	step	sstep
-#define	print	sprint
-#define	at	sat
-#define	match	smat
-#endif
-#ifdef LNAMES
-#define	matcher	lmatcher
-#define	fast	lfast
-#define	slow	lslow
-#define	dissect	ldissect
-#define	backref	lbackref
-#define	step	lstep
-#define	print	lprint
-#define	at	lat
-#define	match	lmat
-#endif
-
-/* another structure passed up and down to avoid zillions of parameters */
-struct match {
-	struct re_guts *g;
-	int eflags;
-	regmatch_t *pmatch;	/* [nsub+1] (0 element unused) */
-	char *offp;		/* offsets work from here */
-	char *beginp;		/* start of string -- virtual NUL precedes */
-	char *endp;		/* end of string -- virtual NUL here */
-	char *coldp;		/* can be no match starting before here */
-	char **lastpos;		/* [nplus+1] */
-	STATEVARS;
-	states st;		/* current states */
-	states fresh;		/* states for a fresh start */
-	states tmp;		/* temporary */
-	states empty;		/* empty set of states */
-};
-
-/* ========= begin header generated by ./mkh ========= */
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* === engine.c === */
-static int matcher (struct re_guts *g, char *string, size_t nmatch, regmatch_t pmatch[], int eflags);
-static char *dissect (struct match *m, char *start, char *stop, sopno startst, sopno stopst);
-static char *backref (struct match *m, char *start, char *stop, sopno startst, sopno stopst, sopno lev);
-static char *fast (struct match *m, char *start, char *stop, sopno startst, sopno stopst);
-static char *slow (struct match *m, char *start, char *stop, sopno startst, sopno stopst);
-static states step (struct re_guts *g, sopno start, sopno stop, states bef, int ch, states aft);
-#define	BOL	(OUT+1)
-#define	EOL	(BOL+1)
-#define	BOLEOL	(BOL+2)
-#define	NOTHING	(BOL+3)
-#define	BOW	(BOL+4)
-#define	EOW	(BOL+5)
-#define	CODEMAX	(BOL+5)		/* highest code used */
-#define	NONCHAR(c)	((c) > CHAR_MAX)
-#define	NNONCHAR	(CODEMAX-CHAR_MAX)
-#ifdef REDEBUG
-static void print __P((struct match *m, char *caption, states st, int ch, FILE *d));
-#endif
-#ifdef REDEBUG
-static void at __P((struct match *m, char *title, char *start, char *stop, sopno startst, sopno stopst));
-#endif
-#ifdef REDEBUG
-static char *pchar __P((int ch));
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-/* ========= end header generated by ./mkh ========= */
-
-#ifdef REDEBUG
-#define	SP(t, s, c)	print(m, t, s, c, stdout)
-#define	AT(t, p1, p2, s1, s2)	at(m, t, p1, p2, s1, s2)
-#define	NOTE(str)	{ if (m->eflags&REG_TRACE) printf("=%s\n", (str)); }
-#else
-#define	SP(t, s, c)	/* nothing */
-#define	AT(t, p1, p2, s1, s2)	/* nothing */
-#define	NOTE(s)	/* nothing */
-#endif
-
-/*
- - matcher - the actual matching engine
- == static int matcher(register struct re_guts *g, char *string, \
- ==	size_t nmatch, regmatch_t pmatch[], int eflags);
- */
-static int			/* 0 success, REG_NOMATCH failure */
-matcher(g, string, nmatch, pmatch, eflags)
-register struct re_guts *g;
-char *string;
-size_t nmatch;
-regmatch_t pmatch[];
-int eflags;
-{
-	register char *endp;
-	register int i;
-	struct match mv;
-	register struct match *m = &mv;
-	register char *dp;
-	register const sopno gf = g->firststate+1;	/* +1 for OEND */
-	register const sopno gl = g->laststate;
-	char *start;
-	char *stop;
-
-	/* simplify the situation where possible */
-	if (g->cflags&REG_NOSUB)
-		nmatch = 0;
-	if (eflags&REG_STARTEND) {
-		start = string + pmatch[0].rm_so;
-		stop = string + pmatch[0].rm_eo;
-	} else {
-		start = string;
-		stop = start + strlen(start);
-	}
-	if (stop < start)
-		return(REG_INVARG);
-
-	/* prescreening; this does wonders for this rather slow code */
-	if (g->must != NULL) {
-		for (dp = start; dp < stop; dp++)
-			if (*dp == g->must[0] && stop - dp >= g->mlen &&
-				memcmp(dp, g->must, (size_t)g->mlen) == 0)
-				break;
-		if (dp == stop)		/* we didn't find g->must */
-			return(REG_NOMATCH);
-	}
-
-	/* match struct setup */
-	m->g = g;
-	m->eflags = eflags;
-	m->pmatch = NULL;
-	m->lastpos = NULL;
-	m->offp = string;
-	m->beginp = start;
-	m->endp = stop;
-	STATESETUP(m, 4);
-	SETUP(m->st);
-	SETUP(m->fresh);
-	SETUP(m->tmp);
-	SETUP(m->empty);
-	CLEAR(m->empty);
-
-	/* this loop does only one repetition except for backrefs */
-	for (;;) {
-		endp = fast(m, start, stop, gf, gl);
-		if (endp == NULL) {		/* a miss */
-			STATETEARDOWN(m);
-			return(REG_NOMATCH);
-		}
-		if (nmatch == 0 && !g->backrefs)
-			break;		/* no further info needed */
-
-		/* where? */
-		assert(m->coldp != NULL);
-		for (;;) {
-			NOTE("finding start");
-			endp = slow(m, m->coldp, stop, gf, gl);
-			if (endp != NULL)
-				break;
-			assert(m->coldp < m->endp);
-			m->coldp++;
-		}
-		if (nmatch == 1 && !g->backrefs)
-			break;		/* no further info needed */
-
-		/* oh my, he wants the subexpressions... */
-		if (m->pmatch == NULL)
-			m->pmatch = (regmatch_t *)malloc((m->g->nsub + 1) *
-							sizeof(regmatch_t));
-		if (m->pmatch == NULL) {
-			STATETEARDOWN(m);
-			return(REG_ESPACE);
-		}
-		for (i = 1; i <= (int)m->g->nsub; i++)
-			m->pmatch[i].rm_so = m->pmatch[i].rm_eo = -1;
-		if (!g->backrefs && !(m->eflags&REG_BACKR)) {
-			NOTE("dissecting");
-			dp = dissect(m, m->coldp, endp, gf, gl);
-		} else {
-			if (g->nplus > 0 && m->lastpos == NULL)
-				m->lastpos = (char **)malloc((g->nplus+1) *
-							sizeof(char *));
-			if (g->nplus > 0 && m->lastpos == NULL) {
-				free(m->pmatch);
-				STATETEARDOWN(m);
-				return(REG_ESPACE);
-			}
-			NOTE("backref dissect");
-			dp = backref(m, m->coldp, endp, gf, gl, (sopno)0);
-		}
-		if (dp != NULL)
-			break;
-
-		/* uh-oh... we couldn't find a subexpression-level match */
-		assert(g->backrefs);	/* must be back references doing it */
-		assert(g->nplus == 0 || m->lastpos != NULL);
-		for (;;) {
-			if (dp != NULL || endp <= m->coldp)
-				break;		/* defeat */
-			NOTE("backoff");
-			endp = slow(m, m->coldp, endp-1, gf, gl);
-			if (endp == NULL)
-				break;		/* defeat */
-			/* try it on a shorter possibility */
-#ifndef NDEBUG
-			for (i = 1; i <= (int)m->g->nsub; i++) {
-				assert(m->pmatch[i].rm_so == -1);
-				assert(m->pmatch[i].rm_eo == -1);
-			}
-#endif
-			NOTE("backoff dissect");
-			dp = backref(m, m->coldp, endp, gf, gl, (sopno)0);
-		}
-		assert(dp == NULL || dp == endp);
-		if (dp != NULL)		/* found a shorter one */
-			break;
-
-		/* despite initial appearances, there is no match here */
-		NOTE("false alarm");
-		start = m->coldp + 1;	/* recycle starting later */
-		assert(start <= stop);
-	}
-
-	/* fill in the details if requested */
-	if (nmatch > 0) {
-		pmatch[0].rm_so = (regoff_t)(m->coldp - m->offp);
-		pmatch[0].rm_eo = (regoff_t)(endp - m->offp);
-	}
-	if (nmatch > 1) {
-		assert(m->pmatch != NULL);
-		for (i = 1; i < (int)nmatch; i++)
-			if (i <= (int)m->g->nsub)
-				pmatch[i] = m->pmatch[i];
-			else {
-				pmatch[i].rm_so = -1;
-				pmatch[i].rm_eo = -1;
-			}
-	}
-
-	if (m->pmatch != NULL)
-		free((char *)m->pmatch);
-	if (m->lastpos != NULL)
-		free((char *)m->lastpos);
-	STATETEARDOWN(m);
-	return(0);
-}
-
-/*
- - dissect - figure out what matched what, no back references
- == static char *dissect(register struct match *m, char *start, \
- ==	char *stop, sopno startst, sopno stopst);
- */
-static char *			/* == stop (success) always */
-dissect(m, start, stop, startst, stopst)
-register struct match *m;
-char *start;
-char *stop;
-sopno startst;
-sopno stopst;
-{
-	register int i;
-	register sopno ss;	/* start sop of current subRE */
-	register sopno es;	/* end sop of current subRE */
-	register char *sp;	/* start of string matched by it */
-	register char *stp;	/* string matched by it cannot pass here */
-	register char *rest;	/* start of rest of string */
-	register char *tail;	/* string unmatched by rest of RE */
-	register sopno ssub;	/* start sop of subsubRE */
-	register sopno esub;	/* end sop of subsubRE */
-	register char *ssp;	/* start of string matched by subsubRE */
-	register char *sep;	/* end of string matched by subsubRE */
-	register char *oldssp;	/* previous ssp */
-	register char *dp;
-
-	AT("diss", start, stop, startst, stopst);
-	sp = start;
-	for (ss = startst; ss < stopst; ss = es) {
-		/* identify end of subRE */
-		es = ss;
-		switch (OP(m->g->strip[es])) {
-		case OPLUS_:
-		case OQUEST_:
-			es += OPND(m->g->strip[es]);
-			break;
-		case OCH_:
-			while (OP(m->g->strip[es]) != O_CH)
-				es += OPND(m->g->strip[es]);
-			break;
-		}
-		es++;
-
-		/* figure out what it matched */
-		switch (OP(m->g->strip[ss])) {
-		case OEND:
-			assert(nope);
-			break;
-		case OCHAR:
-			sp++;
-			break;
-		case OBOL:
-		case OEOL:
-		case OBOW:
-		case OEOW:
-			break;
-		case OANY:
-		case OANYOF:
-			sp++;
-			break;
-		case OBACK_:
-		case O_BACK:
-			assert(nope);
-			break;
-		/* cases where length of match is hard to find */
-		case OQUEST_:
-			stp = stop;
-			for (;;) {
-				/* how long could this one be? */
-				rest = slow(m, sp, stp, ss, es);
-				assert(rest != NULL);	/* it did match */
-				/* could the rest match the rest? */
-				tail = slow(m, rest, stop, es, stopst);
-				if (tail == stop)
-					break;		/* yes! */
-				/* no -- try a shorter match for this one */
-				stp = rest - 1;
-				assert(stp >= sp);	/* it did work */
-			}
-			ssub = ss + 1;
-			esub = es - 1;
-			/* did innards match? */
-			if (slow(m, sp, rest, ssub, esub) != NULL) {
-				dp = dissect(m, sp, rest, ssub, esub);
-				assert(dp == rest);
-			} else		/* no */
-				assert(sp == rest);
-			sp = rest;
-			break;
-		case OPLUS_:
-			stp = stop;
-			for (;;) {
-				/* how long could this one be? */
-				rest = slow(m, sp, stp, ss, es);
-				assert(rest != NULL);	/* it did match */
-				/* could the rest match the rest? */
-				tail = slow(m, rest, stop, es, stopst);
-				if (tail == stop)
-					break;		/* yes! */
-				/* no -- try a shorter match for this one */
-				stp = rest - 1;
-				assert(stp >= sp);	/* it did work */
-			}
-			ssub = ss + 1;
-			esub = es - 1;
-			ssp = sp;
-			oldssp = ssp;
-			for (;;) {	/* find last match of innards */
-				sep = slow(m, ssp, rest, ssub, esub);
-				if (sep == NULL || sep == ssp)
-					break;	/* failed or matched null */
-				oldssp = ssp;	/* on to next try */
-				ssp = sep;
-			}
-			if (sep == NULL) {
-				/* last successful match */
-				sep = ssp;
-				ssp = oldssp;
-			}
-			assert(sep == rest);	/* must exhaust substring */
-			assert(slow(m, ssp, sep, ssub, esub) == rest);
-			dp = dissect(m, ssp, sep, ssub, esub);
-			assert(dp == sep);
-			sp = rest;
-			break;
-		case OCH_:
-			stp = stop;
-			for (;;) {
-				/* how long could this one be? */
-				rest = slow(m, sp, stp, ss, es);
-				assert(rest != NULL);	/* it did match */
-				/* could the rest match the rest? */
-				tail = slow(m, rest, stop, es, stopst);
-				if (tail == stop)
-					break;		/* yes! */
-				/* no -- try a shorter match for this one */
-				stp = rest - 1;
-				assert(stp >= sp);	/* it did work */
-			}
-			ssub = ss + 1;
-			esub = ss + OPND(m->g->strip[ss]) - 1;
-			assert(OP(m->g->strip[esub]) == OOR1);
-			for (;;) {	/* find first matching branch */
-				if (slow(m, sp, rest, ssub, esub) == rest)
-					break;	/* it matched all of it */
-				/* that one missed, try next one */
-				assert(OP(m->g->strip[esub]) == OOR1);
-				esub++;
-				assert(OP(m->g->strip[esub]) == OOR2);
-				ssub = esub + 1;
-				esub += OPND(m->g->strip[esub]);
-				if (OP(m->g->strip[esub]) == OOR2)
-					esub--;
-				else
-					assert(OP(m->g->strip[esub]) == O_CH);
-			}
-			dp = dissect(m, sp, rest, ssub, esub);
-			assert(dp == rest);
-			sp = rest;
-			break;
-		case O_PLUS:
-		case O_QUEST:
-		case OOR1:
-		case OOR2:
-		case O_CH:
-			assert(nope);
-			break;
-		case OLPAREN:
-			i = OPND(m->g->strip[ss]);
-			assert(0 < i && i <= (int)m->g->nsub);
-			m->pmatch[i].rm_so = (regoff_t)(sp - m->offp);
-			break;
-		case ORPAREN:
-			i = OPND(m->g->strip[ss]);
-			assert(0 < i && i <= (int)m->g->nsub);
-			m->pmatch[i].rm_eo = (regoff_t)(sp - m->offp);
-			break;
-		default:		/* uh oh */
-			assert(nope);
-			break;
-		}
-	}
-
-	assert(sp == stop);
-	return(sp);
-}
-
-/*
- - backref - figure out what matched what, figuring in back references
- == static char *backref(register struct match *m, char *start, \
- ==	char *stop, sopno startst, sopno stopst, sopno lev);
- */
-static char *			/* == stop (success) or NULL (failure) */
-backref(m, start, stop, startst, stopst, lev)
-register struct match *m;
-char *start;
-char *stop;
-sopno startst;
-sopno stopst;
-sopno lev;			/* PLUS nesting level */
-{
-	register int i;
-	register sopno ss;	/* start sop of current subRE */
-	register char *sp;	/* start of string matched by it */
-	register sopno ssub;	/* start sop of subsubRE */
-	register sopno esub;	/* end sop of subsubRE */
-	register char *ssp;	/* start of string matched by subsubRE */
-	register char *dp;
-	register size_t len;
-	register int hard;
-	register sop s;
-	register regoff_t offsave;
-	register cset *cs;
-
-	AT("back", start, stop, startst, stopst);
-	sp = start;
-
-	/* get as far as we can with easy stuff */
-	hard = 0;
-	for (ss = startst; !hard && ss < stopst; ss++)
-		switch (OP(s = m->g->strip[ss])) {
-		case OCHAR:
-			if (sp == stop || *sp++ != (char)OPND(s))
-				return(NULL);
-			break;
-		case OANY:
-			if (sp == stop)
-				return(NULL);
-			sp++;
-			break;
-		case OANYOF:
-			cs = &m->g->sets[OPND(s)];
-			if (sp == stop || !CHIN(cs, *sp++))
-				return(NULL);
-			break;
-		case OBOL:
-			if ( (sp == m->beginp && !(m->eflags&REG_NOTBOL)) ||
-					(sp < m->endp && *(sp-1) == '\n' &&
-						(m->g->cflags&REG_NEWLINE)) )
-				{ /* yes */ }
-			else
-				return(NULL);
-			break;
-		case OEOL:
-			if ( (sp == m->endp && !(m->eflags&REG_NOTEOL)) ||
-					(sp < m->endp && *sp == '\n' &&
-						(m->g->cflags&REG_NEWLINE)) )
-				{ /* yes */ }
-			else
-				return(NULL);
-			break;
-		case OBOW:
-			if (( (sp == m->beginp && !(m->eflags&REG_NOTBOL)) ||
-					(sp < m->endp && *(sp-1) == '\n' &&
-						(m->g->cflags&REG_NEWLINE)) ||
-					(sp > m->beginp &&
-							!ISWORD(*(sp-1))) ) &&
-					(sp < m->endp && ISWORD(*sp)) )
-				{ /* yes */ }
-			else
-				return(NULL);
-			break;
-		case OEOW:
-			if (( (sp == m->endp && !(m->eflags&REG_NOTEOL)) ||
-					(sp < m->endp && *sp == '\n' &&
-						(m->g->cflags&REG_NEWLINE)) ||
-					(sp < m->endp && !ISWORD(*sp)) ) &&
-					(sp > m->beginp && ISWORD(*(sp-1))) )
-				{ /* yes */ }
-			else
-				return(NULL);
-			break;
-		case O_QUEST:
-			break;
-		case OOR1:	/* matches null but needs to skip */
-			ss++;
-			s = m->g->strip[ss];
-			do {
-				assert(OP(s) == OOR2);
-				ss += OPND(s);
-			} while (OP(s = m->g->strip[ss]) != O_CH);
-			/* note that the ss++ gets us past the O_CH */
-			break;
-		default:	/* have to make a choice */
-			hard = 1;
-			break;
-		}
-	if (!hard) {		/* that was it! */
-		if (sp != stop)
-			return(NULL);
-		return(sp);
-	}
-	ss--;			/* adjust for the for's final increment */
-
-	/* the hard stuff */
-	AT("hard", sp, stop, ss, stopst);
-	s = m->g->strip[ss];
-	switch (OP(s)) {
-	case OBACK_:		/* the vilest depths */
-		i = OPND(s);
-		assert(0 < i && i <= (int)m->g->nsub);
-		if (m->pmatch[i].rm_eo == -1)
-			return(NULL);
-		assert(m->pmatch[i].rm_so != -1);
-		len = m->pmatch[i].rm_eo - m->pmatch[i].rm_so;
-		assert(stop - m->beginp >= (int)len);
-		if (sp > stop - len)
-			return(NULL);	/* not enough left to match */
-		ssp = m->offp + m->pmatch[i].rm_so;
-		if (memcmp(sp, ssp, len) != 0)
-			return(NULL);
-		while ((int)m->g->strip[ss] != SOP(O_BACK, i))
-			ss++;
-		return(backref(m, sp+len, stop, ss+1, stopst, lev));
-	case OQUEST_:		/* to null or not */
-		dp = backref(m, sp, stop, ss+1, stopst, lev);
-		if (dp != NULL)
-			return(dp);	/* not */
-		return(backref(m, sp, stop, ss+OPND(s)+1, stopst, lev));
-	case OPLUS_:
-		assert(m->lastpos != NULL);
-		assert(lev+1 <= m->g->nplus);
-		m->lastpos[lev+1] = sp;
-		return(backref(m, sp, stop, ss+1, stopst, lev+1));
-	case O_PLUS:
-		if (sp == m->lastpos[lev])	/* last pass matched null */
-			return(backref(m, sp, stop, ss+1, stopst, lev-1));
-		/* try another pass */
-		m->lastpos[lev] = sp;
-		dp = backref(m, sp, stop, ss-OPND(s)+1, stopst, lev);
-		if (dp == NULL)
-			return(backref(m, sp, stop, ss+1, stopst, lev-1));
-		else
-			return(dp);
-	case OCH_:		/* find the right one, if any */
-		ssub = ss + 1;
-		esub = ss + OPND(s) - 1;
-		assert(OP(m->g->strip[esub]) == OOR1);
-		for (;;) {	/* find first matching branch */
-			dp = backref(m, sp, stop, ssub, esub, lev);
-			if (dp != NULL)
-				return(dp);
-			/* that one missed, try next one */
-			if (OP(m->g->strip[esub]) == O_CH)
-				return(NULL);	/* there is none */
-			esub++;
-			assert(OP(m->g->strip[esub]) == OOR2);
-			ssub = esub + 1;
-			esub += OPND(m->g->strip[esub]);
-			if (OP(m->g->strip[esub]) == OOR2)
-				esub--;
-			else
-				assert(OP(m->g->strip[esub]) == O_CH);
-		}
-	case OLPAREN:		/* must undo assignment if rest fails */
-		i = OPND(s);
-		assert(0 < i && i <= (int)m->g->nsub);
-		offsave = m->pmatch[i].rm_so;
-		m->pmatch[i].rm_so = (regoff_t)(sp - m->offp);
-		dp = backref(m, sp, stop, ss+1, stopst, lev);
-		if (dp != NULL)
-			return(dp);
-		m->pmatch[i].rm_so = offsave;
-		return(NULL);
-	case ORPAREN:		/* must undo assignment if rest fails */
-		i = OPND(s);
-		assert(0 < i && i <= (int)m->g->nsub);
-		offsave = m->pmatch[i].rm_eo;
-		m->pmatch[i].rm_eo = (regoff_t)(sp - m->offp);
-		dp = backref(m, sp, stop, ss+1, stopst, lev);
-		if (dp != NULL)
-			return(dp);
-		m->pmatch[i].rm_eo = offsave;
-		return(NULL);
-	default:		/* uh oh */
-		assert(nope);
-		break;
-	}
-
-	/* "can't happen" */
-	assert(nope);
-	/* NOTREACHED */
-	return "";
-}
-
-/*
- - fast - step through the string at top speed
- == static char *fast(register struct match *m, char *start, \
- ==	char *stop, sopno startst, sopno stopst);
- */
-static char *			/* where tentative match ended, or NULL */
-fast(m, start, stop, startst, stopst)
-register struct match *m;
-char *start;
-char *stop;
-sopno startst;
-sopno stopst;
-{
-	register states st = m->st;
-	register states fresh = m->fresh;
-	register states tmp = m->tmp;
-	register char *p = start;
-	register int c = (start == m->beginp) ? OUT : *(start-1);
-	register int lastc;	/* previous c */
-	register int flagch;
-	register int i;
-	register char *coldp;	/* last p after which no match was underway */
-
-	CLEAR(st);
-	SET1(st, startst);
-	st = step(m->g, startst, stopst, st, NOTHING, st);
-	ASSIGN(fresh, st);
-	SP("start", st, *p);
-	coldp = NULL;
-	for (;;) {
-		/* next character */
-		lastc = c;
-		c = (p == m->endp) ? OUT : *p;
-		if (EQ(st, fresh))
-			coldp = p;
-
-		/* is there an EOL and/or BOL between lastc and c? */
-		flagch = '\0';
-		i = 0;
-		if ( (lastc == '\n' && m->g->cflags&REG_NEWLINE) ||
-				(lastc == OUT && !(m->eflags&REG_NOTBOL)) ) {
-			flagch = BOL;
-			i = m->g->nbol;
-		}
-		if ( (c == '\n' && m->g->cflags&REG_NEWLINE) ||
-				(c == OUT && !(m->eflags&REG_NOTEOL)) ) {
-			flagch = (flagch == BOL) ? BOLEOL : EOL;
-			i += m->g->neol;
-		}
-		if (i != 0) {
-			for (; i > 0; i--)
-				st = step(m->g, startst, stopst, st, flagch, st);
-			SP("boleol", st, c);
-		}
-
-		/* how about a word boundary? */
-		if ( (flagch == BOL || (lastc != OUT && !ISWORD(lastc))) &&
-					(c != OUT && ISWORD(c)) ) {
-			flagch = BOW;
-		}
-		if ( (lastc != OUT && ISWORD(lastc)) &&
-				(flagch == EOL || (c != OUT && !ISWORD(c))) ) {
-			flagch = EOW;
-		}
-		if (flagch == BOW || flagch == EOW) {
-			st = step(m->g, startst, stopst, st, flagch, st);
-			SP("boweow", st, c);
-		}
-
-		/* are we done? */
-		if (ISSET(st, stopst) || p == stop)
-			break;		/* NOTE BREAK OUT */
-
-		/* no, we must deal with this character */
-		ASSIGN(tmp, st);
-		ASSIGN(st, fresh);
-		assert(c != OUT);
-		st = step(m->g, startst, stopst, tmp, c, st);
-		SP("aft", st, c);
-		assert(EQ(step(m->g, startst, stopst, st, NOTHING, st), st));
-		p++;
-	}
-
-	assert(coldp != NULL);
-	m->coldp = coldp;
-	if (ISSET(st, stopst))
-		return(p+1);
-	else
-		return(NULL);
-}
-
-/*
- - slow - step through the string more deliberately
- == static char *slow(register struct match *m, char *start, \
- ==	char *stop, sopno startst, sopno stopst);
- */
-static char *			/* where it ended */
-slow(m, start, stop, startst, stopst)
-register struct match *m;
-char *start;
-char *stop;
-sopno startst;
-sopno stopst;
-{
-	register states st = m->st;
-	register states empty = m->empty;
-	register states tmp = m->tmp;
-	register char *p = start;
-	register int c = (start == m->beginp) ? OUT : *(start-1);
-	register int lastc;	/* previous c */
-	register int flagch;
-	register int i;
-	register char *matchp;	/* last p at which a match ended */
-
-	AT("slow", start, stop, startst, stopst);
-	CLEAR(st);
-	SET1(st, startst);
-	SP("sstart", st, *p);
-	st = step(m->g, startst, stopst, st, NOTHING, st);
-	matchp = NULL;
-	for (;;) {
-		/* next character */
-		lastc = c;
-		c = (p == m->endp) ? OUT : *p;
-
-		/* is there an EOL and/or BOL between lastc and c? */
-		flagch = '\0';
-		i = 0;
-		if ( (lastc == '\n' && m->g->cflags&REG_NEWLINE) ||
-				(lastc == OUT && !(m->eflags&REG_NOTBOL)) ) {
-			flagch = BOL;
-			i = m->g->nbol;
-		}
-		if ( (c == '\n' && m->g->cflags&REG_NEWLINE) ||
-				(c == OUT && !(m->eflags&REG_NOTEOL)) ) {
-			flagch = (flagch == BOL) ? BOLEOL : EOL;
-			i += m->g->neol;
-		}
-		if (i != 0) {
-			for (; i > 0; i--)
-				st = step(m->g, startst, stopst, st, flagch, st);
-			SP("sboleol", st, c);
-		}
-
-		/* how about a word boundary? */
-		if ( (flagch == BOL || (lastc != OUT && !ISWORD(lastc))) &&
-					(c != OUT && ISWORD(c)) ) {
-			flagch = BOW;
-		}
-		if ( (lastc != OUT && ISWORD(lastc)) &&
-				(flagch == EOL || (c != OUT && !ISWORD(c))) ) {
-			flagch = EOW;
-		}
-		if (flagch == BOW || flagch == EOW) {
-			st = step(m->g, startst, stopst, st, flagch, st);
-			SP("sboweow", st, c);
-		}
-
-		/* are we done? */
-		if (ISSET(st, stopst))
-			matchp = p;
-		if (EQ(st, empty) || p == stop)
-			break;		/* NOTE BREAK OUT */
-
-		/* no, we must deal with this character */
-		ASSIGN(tmp, st);
-		ASSIGN(st, empty);
-		assert(c != OUT);
-		st = step(m->g, startst, stopst, tmp, c, st);
-		SP("saft", st, c);
-		assert(EQ(step(m->g, startst, stopst, st, NOTHING, st), st));
-		p++;
-	}
-
-	return(matchp);
-}
-
-
-/*
- - step - map set of states reachable before char to set reachable after
- == static states step(register struct re_guts *g, sopno start, sopno stop, \
- ==	register states bef, int ch, register states aft);
- == #define	BOL	(OUT+1)
- == #define	EOL	(BOL+1)
- == #define	BOLEOL	(BOL+2)
- == #define	NOTHING	(BOL+3)
- == #define	BOW	(BOL+4)
- == #define	EOW	(BOL+5)
- == #define	CODEMAX	(BOL+5)		// highest code used
- == #define	NONCHAR(c)	((c) > CHAR_MAX)
- == #define	NNONCHAR	(CODEMAX-CHAR_MAX)
- */
-static states
-step(g, start, stop, bef, ch, aft)
-register struct re_guts *g;
-sopno start;			/* start state within strip */
-sopno stop;			/* state after stop state within strip */
-register states bef;		/* states reachable before */
-int ch;				/* character or NONCHAR code */
-register states aft;		/* states already known reachable after */
-{
-	register cset *cs;
-	register sop s;
-	register sopno pc;
-	register onestate here;		/* note, macros know this name */
-	register sopno look;
-	register int i;
-
-	for (pc = start, INIT(here, pc); pc != stop; pc++, INC(here)) {
-		s = g->strip[pc];
-		switch (OP(s)) {
-		case OEND:
-			assert(pc == stop-1);
-			break;
-		case OCHAR:
-			/* only characters can match */
-			assert(!NONCHAR(ch) || ch != (char)OPND(s));
-			if (ch == (char)OPND(s))
-				FWD(aft, bef, 1);
-			break;
-		case OBOL:
-			if (ch == BOL || ch == BOLEOL)
-				FWD(aft, bef, 1);
-			break;
-		case OEOL:
-			if (ch == EOL || ch == BOLEOL)
-				FWD(aft, bef, 1);
-			break;
-		case OBOW:
-			if (ch == BOW)
-				FWD(aft, bef, 1);
-			break;
-		case OEOW:
-			if (ch == EOW)
-				FWD(aft, bef, 1);
-			break;
-		case OANY:
-			if (!NONCHAR(ch))
-				FWD(aft, bef, 1);
-			break;
-		case OANYOF:
-			cs = &g->sets[OPND(s)];
-			if (!NONCHAR(ch) && CHIN(cs, ch))
-				FWD(aft, bef, 1);
-			break;
-		case OBACK_:		/* ignored here */
-		case O_BACK:
-			FWD(aft, aft, 1);
-			break;
-		case OPLUS_:		/* forward, this is just an empty */
-			FWD(aft, aft, 1);
-			break;
-		case O_PLUS:		/* both forward and back */
-			FWD(aft, aft, 1);
-			i = ISSETBACK(aft, OPND(s));
-			BACK(aft, aft, OPND(s));
-			if (!i && ISSETBACK(aft, OPND(s))) {
-				/* oho, must reconsider loop body */
-				pc -= OPND(s) + 1;
-				INIT(here, pc);
-			}
-			break;
-		case OQUEST_:		/* two branches, both forward */
-			FWD(aft, aft, 1);
-			FWD(aft, aft, OPND(s));
-			break;
-		case O_QUEST:		/* just an empty */
-			FWD(aft, aft, 1);
-			break;
-		case OLPAREN:		/* not significant here */
-		case ORPAREN:
-			FWD(aft, aft, 1);
-			break;
-		case OCH_:		/* mark the first two branches */
-			FWD(aft, aft, 1);
-			assert(OP(g->strip[pc+OPND(s)]) == OOR2);
-			FWD(aft, aft, OPND(s));
-			break;
-		case OOR1:		/* done a branch, find the O_CH */
-			if (ISSTATEIN(aft, here)) {
-				for (look = 1;
-						OP(s = g->strip[pc+look]) != O_CH;
-						look += OPND(s))
-					assert(OP(s) == OOR2);
-				FWD(aft, aft, look);
-			}
-			break;
-		case OOR2:		/* propagate OCH_'s marking */
-			FWD(aft, aft, 1);
-			if (OP(g->strip[pc+OPND(s)]) != O_CH) {
-				assert(OP(g->strip[pc+OPND(s)]) == OOR2);
-				FWD(aft, aft, OPND(s));
-			}
-			break;
-		case O_CH:		/* just empty */
-			FWD(aft, aft, 1);
-			break;
-		default:		/* ooooops... */
-			assert(nope);
-			break;
-		}
-	}
-
-	return(aft);
-}
-
-#ifdef REDEBUG
-/*
- - print - print a set of states
- == #ifdef REDEBUG
- == static void print(struct match *m, char *caption, states st, \
- ==	int ch, FILE *d);
- == #endif
- */
-static void
-print(m, caption, st, ch, d)
-struct match *m;
-char *caption;
-states st;
-int ch;
-FILE *d;
-{
-	register struct re_guts *g = m->g;
-	register int i;
-	register int first = 1;
-
-	if (!(m->eflags&REG_TRACE))
-		return;
-
-	fprintf(d, "%s", caption);
-	if (ch != '\0')
-		fprintf(d, " %s", pchar(ch));
-	for (i = 0; i < g->nstates; i++)
-		if (ISSET(st, i)) {
-			fprintf(d, "%s%d", (first) ? "\t" : ", ", i);
-			first = 0;
-		}
-	fprintf(d, "\n");
-}
-
-/*
- - at - print current situation
- == #ifdef REDEBUG
- == static void at(struct match *m, char *title, char *start, char *stop, \
- ==						sopno startst, sopno stopst);
- == #endif
- */
-static void
-at(m, title, start, stop, startst, stopst)
-struct match *m;
-char *title;
-char *start;
-char *stop;
-sopno startst;
-sopno stopst;
-{
-	if (!(m->eflags&REG_TRACE))
-		return;
-
-	printf("%s %s-", title, pchar(*start));
-	printf("%s ", pchar(*stop));
-	printf("%ld-%ld\n", (long)startst, (long)stopst);
-}
-
-#ifndef PCHARDONE
-#define	PCHARDONE	/* never again */
-/*
- - pchar - make a character printable
- == #ifdef REDEBUG
- == static char *pchar(int ch);
- == #endif
- *
- * Is this identical to regchar() over in debug.c?  Well, yes.  But a
- * duplicate here avoids having a debugging-capable regexec.o tied to
- * a matching debug.o, and this is convenient.  It all disappears in
- * the non-debug compilation anyway, so it doesn't matter much.
- */
-static char *			/* -> representation */
-pchar(ch)
-int ch;
-{
-	static char pbuf[10];
-
-	if (isprint(ch) || ch == ' ')
-		sprintf(pbuf, "%c", ch);
-	else
-		sprintf(pbuf, "\\%o", ch);
-	return(pbuf);
-}
-#endif
-#endif
-
-#undef	matcher
-#undef	fast
-#undef	slow
-#undef	dissect
-#undef	backref
-#undef	step
-#undef	print
-#undef	at
-#undef	match
diff --git a/src/other/regex/regcomp.c b/src/other/regex/regcomp.c
deleted file mode 100644
index f42b3e7..0000000
--- a/src/other/regex/regcomp.c
+++ /dev/null
@@ -1,1706 +0,0 @@
-/* Copyright (c) 1992, 1993, 1994 Henry Spencer.
- * Copyright (c) 1992, 1993, 1994
- *	The Regents of the University of California.  All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Henry Spencer.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *  * Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *	@(#)regcomp.c	8.5 (Berkeley) 3/20/94
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-#if 0
-static char sccsid[] = "@(#)regcomp.c	8.5 (Berkeley) 3/20/94";
-#else
-static char rcsid[] = "$NetBSD: regcomp.c,v 1.6 1995/02/27 13:29:01 cgd Exp $";
-#endif
-#endif /* LIBC_SCCS and not lint */
-
-#include <sys/types.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-#include <limits.h>
-#include <stdlib.h>
-
-#ifndef BUILD_REGEX
-#  define BUILD_REGEX 1
-#endif
-#include "bzregex.h"
-#include "./utils.h"
-#include "./regex2.h"
-
-#include "./cclass.h"
-#include "./cname.h"
-
-/*
- * parse structure, passed up and down to avoid global variables and
- * other clumsinesses
- */
-struct parse {
-	char *next;		/* next character in RE */
-	char *end;		/* end of string (-> NUL normally) */
-	int error;		/* has an error been seen? */
-	sop *strip;		/* malloced strip */
-	sopno ssize;		/* malloced strip size (allocated) */
-	sopno slen;		/* malloced strip length (used) */
-	int ncsalloc;		/* number of csets allocated */
-	struct re_guts *g;
-#	define	NPAREN	10	/* we need to remember () 1-9 for back refs */
-	sopno pbegin[NPAREN];	/* -> ( ([0] unused) */
-	sopno pend[NPAREN];	/* -> ) ([0] unused) */
-};
-
-/* ========= begin header generated by ./mkh ========= */
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* === regcomp.c === */
-static void p_ere (struct parse *p, int stop);
-static void p_ere_exp (struct parse *p);
-static void p_str (struct parse *p);
-static void p_bre (struct parse *p, int end1, int end2);
-static int p_simp_re (struct parse *p, int starordinary);
-static int p_count (struct parse *p);
-static void p_bracket (struct parse *p);
-static void p_b_term (struct parse *p, cset *cs);
-static void p_b_cclass (struct parse *p, cset *cs);
-static void p_b_eclass (struct parse *p, cset *cs);
-static char p_b_symbol (struct parse *p);
-static char p_b_coll_elem (struct parse *p, int endc);
-static char othercase (int ch);
-static void bothcases (struct parse *p, int ch);
-static void ordinary (struct parse *p, int ch);
-static void nonnewline (struct parse *p);
-static void repeat (struct parse *p, sopno start, int from, int to);
-static int seterr (struct parse *p, int e);
-static cset *allocset (struct parse *p);
-static void freeset (struct parse *p, cset *cs);
-static int freezeset (struct parse *p, cset *cs);
-static int firstch (struct parse *p, cset *cs);
-static int nch (struct parse *p, cset *cs);
-static void mcadd (struct parse *p, cset *cs, char *cp);
-static void mcinvert (struct parse *p, cset *cs);
-static void mccase (struct parse *p, cset *cs);
-static int isinsets (struct re_guts *g, int c);
-static int samesets (struct re_guts *g, int c1, int c2);
-static void categorize (struct parse *p, struct re_guts *g);
-static sopno dupl (struct parse *p, sopno start, sopno finish);
-static void doemit (struct parse *p, sop op, size_t opnd);
-static void doinsert (struct parse *p, sop op, size_t opnd, sopno pos);
-static void dofwd (struct parse *p, sopno pos, sop value);
-static void enlarge (struct parse *p, sopno size);
-static void stripsnug (struct parse *p, struct re_guts *g);
-static void findmust (struct parse *p, struct re_guts *g);
-static sopno pluscount (struct parse *p, struct re_guts *g);
-#if 0  /* mcsub/mcin UNUSED */
-static void mcsub (cset *cs, char *cp);
-static int mcin (cset *cs, char *cp);
-static char *mcfind (cset *cs, char *cp);
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-/* ========= end header generated by ./mkh ========= */
-
-static char nuls[10];		/* place to point scanner in event of error */
-
-/*
- * macros for use with parse structure
- * BEWARE:  these know that the parse structure is named `p' !!!
- */
-#define	PEEK()	(*p->next)
-#define	PEEK2()	(*(p->next+1))
-#define	MORE()	(p->next < p->end)
-#define	MORE2()	(p->next+1 < p->end)
-#define	SEE(c)	(MORE() && PEEK() == (c))
-#define	SEETWO(a, b)	(MORE() && MORE2() && PEEK() == (a) && PEEK2() == (b))
-#define	EAT(c)	((SEE(c)) ? (NEXT(), 1) : 0)
-#define	EATTWO(a, b)	((SEETWO(a, b)) ? (NEXT2(), 1) : 0)
-#define	NEXT()	(p->next++)
-#define	NEXT2()	(p->next += 2)
-#define	NEXTn(n)	(p->next += (n))
-#define	GETNEXT()	(*p->next++)
-#define	SETERROR(e)	seterr(p, (e))
-#define	REQUIRE(co, e)	{if (!(co)) SETERROR(e);}
-#define	MUSTSEE(c, e)	(REQUIRE(MORE() && PEEK() == (c), e))
-#define	MUSTEAT(c, e)	REQUIRE(MORE() && GETNEXT() == (c), e)
-#define	MUSTNOTSEE(c, e)	(REQUIRE(!MORE() || PEEK() != (c), e))
-#define	EMIT(op, sopnd)	doemit(p, (sop)(op), (size_t)(sopnd))
-#define	INSERT(op, pos)	doinsert(p, (sop)(op), HERE()-(pos)+1, pos)
-#define	AHEAD(pos)		dofwd(p, pos, HERE()-(pos))
-#define	ASTERN(sop, pos)	EMIT(sop, HERE()-pos)
-#define	HERE()		(p->slen)
-#define	THERE()		(p->slen - 1)
-#define	THERETHERE()	(p->slen - 2)
-#define	DROP(n)	(p->slen -= (n))
-
-#ifndef NDEBUG
-static int never = 0;		/* for use in asserts; shuts lint up */
-#else
-#define	never	0		/* some <assert.h>s have bugs too */
-#endif
-
-/*
- - regcomp - interface for parser and compilation
- = extern int regcomp(regex_t *, const char *, int);
- = #define	REG_BASIC	0000
- = #define	REG_EXTENDED	0001
- = #define	REG_ICASE	0002
- = #define	REG_NOSUB	0004
- = #define	REG_NEWLINE	0010
- = #define	REG_NOSPEC	0020
- = #define	REG_PEND	0040
- = #define	REG_DUMP	0200
- */
-int				/* 0 success, otherwise REG_something */
-regcomp(preg, pattern, cflags)
-regex_t *preg;
-const char *pattern;
-int cflags;
-{
-	struct parse pa;
-	register struct re_guts *g;
-	register struct parse *p = &pa;
-	register int i;
-	register size_t len;
-#ifdef REDEBUG
-#	define	GOODFLAGS(f)	(f)
-#else
-#	define	GOODFLAGS(f)	((f)&~REG_DUMP)
-#endif
-
-	cflags = GOODFLAGS(cflags);
-	if ((cflags&REG_EXTENDED) && (cflags&REG_NOSPEC))
-		return(REG_INVARG);
-
-	if (cflags&REG_PEND) {
-		if (preg->re_endp < pattern)
-			return(REG_INVARG);
-		len = preg->re_endp - pattern;
-	} else
-		len = strlen((char *)pattern);
-
-	/* do the mallocs early so failure handling is easy */
-	g = (struct re_guts *)malloc(sizeof(struct re_guts) +
-							(NC-1)*sizeof(cat_t));
-	if (g == NULL)
-		return(REG_ESPACE);
-	p->ssize = (sopno)(len/(size_t)2*(size_t)3 + (size_t)1);	/* ugh */
-	p->strip = (sop *)malloc(p->ssize * sizeof(sop));
-	p->slen = 0;
-	if (p->strip == NULL) {
-		free((char *)g);
-		return(REG_ESPACE);
-	}
-
-	/* set things up */
-	p->g = g;
-	p->next = (char *)pattern;	/* convenience; we do not modify it */
-	p->end = p->next + len;
-	p->error = 0;
-	p->ncsalloc = 0;
-	for (i = 0; i < NPAREN; i++) {
-		p->pbegin[i] = 0;
-		p->pend[i] = 0;
-	}
-	g->csetsize = NC;
-	g->sets = NULL;
-	g->setbits = NULL;
-	g->ncsets = 0;
-	g->cflags = cflags;
-	g->iflags = 0;
-	g->nbol = 0;
-	g->neol = 0;
-	g->must = NULL;
-	g->mlen = 0;
-	g->nsub = 0;
-	g->ncategories = 1;	/* category 0 is "everything else" */
-	g->categories = &g->catspace[-(CHAR_MIN)];
-	(void) memset((char *)g->catspace, 0, NC*sizeof(cat_t));
-	g->backrefs = 0;
-
-	/* do it */
-	EMIT(OEND, 0);
-	g->firststate = THERE();
-	if (cflags&REG_EXTENDED)
-		p_ere(p, OUT);
-	else if (cflags&REG_NOSPEC)
-		p_str(p);
-	else
-		p_bre(p, OUT, OUT);
-	EMIT(OEND, 0);
-	g->laststate = THERE();
-
-	/* tidy up loose ends and fill things in */
-	categorize(p, g);
-	stripsnug(p, g);
-	findmust(p, g);
-	g->nplus = pluscount(p, g);
-	g->magic = MAGIC2;
-	preg->re_nsub = g->nsub;
-	preg->re_g = g;
-	preg->re_magic = MAGIC1;
-#ifndef REDEBUG
-	/* not debugging, so can't rely on the assert() in regexec() */
-	if (g->iflags&BAD)
-		SETERROR(REG_ASSERT);
-#endif
-
-	/* win or lose, we're done */
-	if (p->error != 0)	/* lose */
-		regfree(preg);
-	return(p->error);
-}
-
-/*
- - p_ere - ERE parser top level, concatenation and alternation
- == static void p_ere(register struct parse *p, int stop);
- */
-static void
-p_ere(p, stop)
-register struct parse *p;
-int stop;			/* character this ERE should end at */
-{
-	register char c;
-	register sopno prevback = (sopno)0;
-	register sopno prevfwd = (sopno)0;
-	register sopno conc = (sopno)0;
-	register int first = 1;		/* is this the first alternative? */
-
-	for (;;) {
-		/* do a bunch of concatenated expressions */
-		conc = HERE();
-		while (MORE() && (c = PEEK()) != '|' && c != stop)
-			p_ere_exp(p);
-		REQUIRE(HERE() != conc, REG_EMPTY);	/* require nonempty */
-
-		if (!EAT('|'))
-			break;		/* NOTE BREAK OUT */
-
-		if (first) {
-			INSERT(OCH_, conc);	/* offset is wrong */
-			prevfwd = conc;
-			prevback = conc;
-			first = 0;
-		}
-		ASTERN(OOR1, prevback);
-		prevback = THERE();
-		AHEAD(prevfwd);			/* fix previous offset */
-		prevfwd = HERE();
-		EMIT(OOR2, 0);			/* offset is very wrong */
-	}
-
-	if (!first) {		/* tail-end fixups */
-		AHEAD(prevfwd);
-		ASTERN(O_CH, prevback);
-	}
-
-	assert(!MORE() || SEE(stop));
-}
-
-/*
- - p_ere_exp - parse one subERE, an atom possibly followed by a repetition op
- == static void p_ere_exp(register struct parse *p);
- */
-static void
-p_ere_exp(p)
-register struct parse *p;
-{
-	register char c;
-	register sopno pos;
-	register int count;
-	register int count2;
-	register sopno subno;
-	int wascaret = 0;
-
-	assert(MORE());		/* caller should have ensured this */
-	c = GETNEXT();
-
-	pos = HERE();
-	switch (c) {
-	case '(':
-		REQUIRE(MORE(), REG_EPAREN);
-		p->g->nsub++;
-		subno = (sopno)p->g->nsub;
-		if (subno < NPAREN)
-			p->pbegin[subno] = HERE();
-		EMIT(OLPAREN, subno);
-		if (!SEE(')'))
-			p_ere(p, ')');
-		if (subno < NPAREN) {
-			p->pend[subno] = HERE();
-			assert(p->pend[subno] != 0);
-		}
-		EMIT(ORPAREN, subno);
-		MUSTEAT(')', REG_EPAREN);
-		break;
-#ifndef POSIX_MISTAKE
-	case ')':		/* happens only if no current unmatched ( */
-		/*
-		 * You may ask, why the ifndef?  Because I didn't notice
-		 * this until slightly too late for 1003.2, and none of the
-		 * other 1003.2 regular-expression reviewers noticed it at
-		 * all.  So an unmatched ) is legal POSIX, at least until
-		 * we can get it fixed.
-		 */
-		SETERROR(REG_EPAREN);
-		break;
-#endif
-	case '^':
-		EMIT(OBOL, 0);
-		p->g->iflags |= USEBOL;
-		p->g->nbol++;
-		wascaret = 1;
-		break;
-	case '$':
-		EMIT(OEOL, 0);
-		p->g->iflags |= USEEOL;
-		p->g->neol++;
-		break;
-	case '|':
-		SETERROR(REG_EMPTY);
-		break;
-	case '*':
-	case '+':
-	case '?':
-		SETERROR(REG_BADRPT);
-		break;
-	case '.':
-		if (p->g->cflags&REG_NEWLINE)
-			nonnewline(p);
-		else
-			EMIT(OANY, 0);
-		break;
-	case '[':
-		p_bracket(p);
-		break;
-	case '\\':
-		REQUIRE(MORE(), REG_EESCAPE);
-		c = GETNEXT();
-		ordinary(p, c);
-		break;
-	case '{':		/* okay as ordinary except if digit follows */
-		REQUIRE(!MORE() || !isdigit(PEEK()), REG_BADRPT);
-		/* FALLTHROUGH */
-	default:
-		ordinary(p, c);
-		break;
-	}
-
-	if (!MORE())
-		return;
-	c = PEEK();
-	/* we call { a repetition if followed by a digit */
-	if (!( c == '*' || c == '+' || c == '?' ||
-				(c == '{' && MORE2() && isdigit(PEEK2())) ))
-		return;		/* no repetition, we're done */
-	NEXT();
-
-	REQUIRE(!wascaret, REG_BADRPT);
-	switch (c) {
-	case '*':	/* implemented as +? */
-		/* this case does not require the (y|) trick, noKLUDGE */
-		INSERT(OPLUS_, pos);
-		ASTERN(O_PLUS, pos);
-		INSERT(OQUEST_, pos);
-		ASTERN(O_QUEST, pos);
-		break;
-	case '+':
-		INSERT(OPLUS_, pos);
-		ASTERN(O_PLUS, pos);
-		break;
-	case '?':
-		/* KLUDGE: emit y? as (y|) until subtle bug gets fixed */
-		INSERT(OCH_, pos);		/* offset slightly wrong */
-		ASTERN(OOR1, pos);		/* this one's right */
-		AHEAD(pos);			/* fix the OCH_ */
-		EMIT(OOR2, 0);			/* offset very wrong... */
-		AHEAD(THERE());			/* ...so fix it */
-		ASTERN(O_CH, THERETHERE());
-		break;
-	case '{':
-		count = p_count(p);
-		if (EAT(',')) {
-			if (isdigit(PEEK())) {
-				count2 = p_count(p);
-				REQUIRE(count <= count2, REG_BADBR);
-			} else		/* single number with comma */
-				count2 = INFINITY;
-		} else		/* just a single number */
-			count2 = count;
-		repeat(p, pos, count, count2);
-		if (!EAT('}')) {	/* error heuristics */
-			while (MORE() && PEEK() != '}')
-				NEXT();
-			REQUIRE(MORE(), REG_EBRACE);
-			SETERROR(REG_BADBR);
-		}
-		break;
-	}
-
-	if (!MORE())
-		return;
-	c = PEEK();
-	if (!( c == '*' || c == '+' || c == '?' ||
-				(c == '{' && MORE2() && isdigit(PEEK2())) ) )
-		return;
-	SETERROR(REG_BADRPT);
-}
-
-/*
- - p_str - string (no metacharacters) "parser"
- == static void p_str(register struct parse *p);
- */
-static void
-p_str(p)
-register struct parse *p;
-{
-	REQUIRE(MORE(), REG_EMPTY);
-	while (MORE())
-		ordinary(p, GETNEXT());
-}
-
-/*
- - p_bre - BRE parser top level, anchoring and concatenation
- == static void p_bre(register struct parse *p, register int end1, \
- ==	register int end2);
- * Giving end1 as OUT essentially eliminates the end1/end2 check.
- *
- * This implementation is a bit of a kludge, in that a trailing $ is first
- * taken as an ordinary character and then revised to be an anchor.  The
- * only undesirable side effect is that '$' gets included as a character
- * category in such cases.  This is fairly harmless; not worth fixing.
- * The amount of lookahead needed to avoid this kludge is excessive.
- */
-static void
-p_bre(p, end1, end2)
-register struct parse *p;
-register int end1;		/* first terminating character */
-register int end2;		/* second terminating character */
-{
-	register sopno start = HERE();
-	register int first = 1;			/* first subexpression? */
-	register int wasdollar = 0;
-
-	if (EAT('^')) {
-		EMIT(OBOL, 0);
-		p->g->iflags |= USEBOL;
-		p->g->nbol++;
-	}
-	while (MORE() && !SEETWO(end1, end2)) {
-		wasdollar = p_simp_re(p, first);
-		first = 0;
-	}
-	if (wasdollar) {	/* oops, that was a trailing anchor */
-		DROP(1);
-		EMIT(OEOL, 0);
-		p->g->iflags |= USEEOL;
-		p->g->neol++;
-	}
-
-	REQUIRE(HERE() != start, REG_EMPTY);	/* require nonempty */
-}
-
-/*
- - p_simp_re - parse a simple RE, an atom possibly followed by a repetition
- == static int p_simp_re(register struct parse *p, int starordinary);
- */
-static int			/* was the simple RE an unbackslashed $? */
-p_simp_re(p, starordinary)
-register struct parse *p;
-int starordinary;		/* is a leading * an ordinary character? */
-{
-	register int c;
-	register int count;
-	register int count2;
-	register sopno pos;
-	register int i;
-	register sopno subno;
-#	define	BACKSL	(1<<CHAR_BIT)
-
-	pos = HERE();		/* repetion op, if any, covers from here */
-
-	assert(MORE());		/* caller should have ensured this */
-	c = GETNEXT();
-	if (c == '\\') {
-		REQUIRE(MORE(), REG_EESCAPE);
-		c = BACKSL | (unsigned char)GETNEXT();
-	}
-	switch (c) {
-	case '.':
-		if (p->g->cflags&REG_NEWLINE)
-			nonnewline(p);
-		else
-			EMIT(OANY, 0);
-		break;
-	case '[':
-		p_bracket(p);
-		break;
-	case BACKSL|'{':
-		SETERROR(REG_BADRPT);
-		break;
-	case BACKSL|'(':
-		p->g->nsub++;
-		subno = (sopno)p->g->nsub;
-		if (subno < NPAREN)
-			p->pbegin[subno] = HERE();
-		EMIT(OLPAREN, subno);
-		/* the MORE here is an error heuristic */
-		if (MORE() && !SEETWO('\\', ')'))
-			p_bre(p, '\\', ')');
-		if (subno < NPAREN) {
-			p->pend[subno] = HERE();
-			assert(p->pend[subno] != 0);
-		}
-		EMIT(ORPAREN, subno);
-		REQUIRE(EATTWO('\\', ')'), REG_EPAREN);
-		break;
-	case BACKSL|')':	/* should not get here -- must be user */
-	case BACKSL|'}':
-		SETERROR(REG_EPAREN);
-		break;
-	case BACKSL|'1':
-	case BACKSL|'2':
-	case BACKSL|'3':
-	case BACKSL|'4':
-	case BACKSL|'5':
-	case BACKSL|'6':
-	case BACKSL|'7':
-	case BACKSL|'8':
-	case BACKSL|'9':
-		i = (c&~BACKSL) - '0';
-		assert(i < NPAREN);
-		if (p->pend[i] != 0) {
-			assert(i <= (int)p->g->nsub);
-			EMIT(OBACK_, i);
-			assert(p->pbegin[i] != 0);
-			assert(OP(p->strip[p->pbegin[i]]) == OLPAREN);
-			assert(OP(p->strip[p->pend[i]]) == ORPAREN);
-			(void) dupl(p, p->pbegin[i]+1, p->pend[i]);
-			EMIT(O_BACK, i);
-		} else
-			SETERROR(REG_ESUBREG);
-		p->g->backrefs = 1;
-		break;
-	case '*':
-		REQUIRE(starordinary, REG_BADRPT);
-		/* FALLTHROUGH */
-	default:
-		ordinary(p, c &~ BACKSL);
-		break;
-	}
-
-	if (EAT('*')) {		/* implemented as +? */
-		/* this case does not require the (y|) trick, noKLUDGE */
-		INSERT(OPLUS_, pos);
-		ASTERN(O_PLUS, pos);
-		INSERT(OQUEST_, pos);
-		ASTERN(O_QUEST, pos);
-	} else if (EATTWO('\\', '{')) {
-		count = p_count(p);
-		if (EAT(',')) {
-			if (MORE() && isdigit(PEEK())) {
-				count2 = p_count(p);
-				REQUIRE(count <= count2, REG_BADBR);
-			} else		/* single number with comma */
-				count2 = INFINITY;
-		} else		/* just a single number */
-			count2 = count;
-		repeat(p, pos, count, count2);
-		if (!EATTWO('\\', '}')) {	/* error heuristics */
-			while (MORE() && !SEETWO('\\', '}'))
-				NEXT();
-			REQUIRE(MORE(), REG_EBRACE);
-			SETERROR(REG_BADBR);
-		}
-	} else if (c == (unsigned char)'$')	/* $ (but not \$) ends it */
-		return(1);
-
-	return(0);
-}
-
-/*
- - p_count - parse a repetition count
- == static int p_count(register struct parse *p);
- */
-static int			/* the value */
-p_count(p)
-register struct parse *p;
-{
-	register int count = 0;
-	register int ndigits = 0;
-
-	while (MORE() && isdigit(PEEK()) && count <= DUPMAX) {
-		count = count*10 + (GETNEXT() - '0');
-		ndigits++;
-	}
-
-	REQUIRE(ndigits > 0 && count <= DUPMAX, REG_BADBR);
-	return(count);
-}
-
-/*
- - p_bracket - parse a bracketed character list
- == static void p_bracket(register struct parse *p);
- *
- * Note a significant property of this code:  if the allocset() did SETERROR,
- * no set operations are done.
- */
-static void
-p_bracket(p)
-register struct parse *p;
-{
-	register cset *cs = allocset(p);
-	register int invert = 0;
-
-	/* Dept of Truly Sickening Special-Case Kludges */
-	if (p->next + 5 < p->end && strncmp(p->next, "[:<:]]", 6) == 0) {
-		EMIT(OBOW, 0);
-		NEXTn(6);
-		return;
-	}
-	if (p->next + 5 < p->end && strncmp(p->next, "[:>:]]", 6) == 0) {
-		EMIT(OEOW, 0);
-		NEXTn(6);
-		return;
-	}
-
-	if (EAT('^'))
-		invert++;	/* make note to invert set at end */
-	if (EAT(']'))
-		CHadd(cs, ']');
-	else if (EAT('-'))
-		CHadd(cs, '-');
-	while (MORE() && PEEK() != ']' && !SEETWO('-', ']'))
-		p_b_term(p, cs);
-	if (EAT('-'))
-		CHadd(cs, '-');
-	MUSTEAT(']', REG_EBRACK);
-
-	if (p->error != 0)	/* don't mess things up further */
-		return;
-
-	if (p->g->cflags&REG_ICASE) {
-		register int i;
-		register int ci;
-
-		for (i = p->g->csetsize - 1; i >= 0; i--)
-			if (CHIN(cs, i) && isalpha(i)) {
-				ci = othercase(i);
-				if (ci != i)
-					CHadd(cs, ci);
-			}
-		if (cs->multis != NULL)
-			mccase(p, cs);
-	}
-	if (invert) {
-		register int i;
-
-		for (i = p->g->csetsize - 1; i >= 0; i--)
-			if (CHIN(cs, i))
-				CHsub(cs, i);
-			else
-				CHadd(cs, i);
-		if (p->g->cflags&REG_NEWLINE)
-			CHsub(cs, '\n');
-		if (cs->multis != NULL)
-			mcinvert(p, cs);
-	}
-
-	assert(cs->multis == NULL);		/* xxx */
-
-	if (nch(p, cs) == 1) {		/* optimize singleton sets */
-		ordinary(p, firstch(p, cs));
-		freeset(p, cs);
-	} else
-		EMIT(OANYOF, freezeset(p, cs));
-}
-
-/*
- - p_b_term - parse one term of a bracketed character list
- == static void p_b_term(register struct parse *p, register cset *cs);
- */
-static void
-p_b_term(p, cs)
-register struct parse *p;
-register cset *cs;
-{
-	register char c;
-	register char start, finish;
-	register int i;
-
-	/* classify what we've got */
-	switch ((MORE()) ? PEEK() : '\0') {
-	case '[':
-		c = (MORE2()) ? PEEK2() : '\0';
-		break;
-	case '-':
-		SETERROR(REG_ERANGE);
-		return;			/* NOTE RETURN */
-	default:
-		c = '\0';
-		break;
-	}
-
-	switch (c) {
-	case ':':		/* character class */
-		NEXT2();
-		REQUIRE(MORE(), REG_EBRACK);
-		c = PEEK();
-		REQUIRE(c != '-' && c != ']', REG_ECTYPE);
-		p_b_cclass(p, cs);
-		REQUIRE(MORE(), REG_EBRACK);
-		REQUIRE(EATTWO(':', ']'), REG_ECTYPE);
-		break;
-	case '=':		/* equivalence class */
-		NEXT2();
-		REQUIRE(MORE(), REG_EBRACK);
-		c = PEEK();
-		REQUIRE(c != '-' && c != ']', REG_ECOLLATE);
-		p_b_eclass(p, cs);
-		REQUIRE(MORE(), REG_EBRACK);
-		REQUIRE(EATTWO('=', ']'), REG_ECOLLATE);
-		break;
-	default:		/* symbol, ordinary character, or range */
-/* xxx revision needed for multichar stuff */
-		start = p_b_symbol(p);
-		if (SEE('-') && MORE2() && PEEK2() != ']') {
-			/* range */
-			NEXT();
-			if (EAT('-'))
-				finish = '-';
-			else
-				finish = p_b_symbol(p);
-		} else
-			finish = start;
-/* xxx what about signed chars here... */
-		REQUIRE(start <= finish, REG_ERANGE);
-		for (i = start; i <= finish; i++)
-			CHadd(cs, i);
-		break;
-	}
-}
-
-/*
- - p_b_cclass - parse a character-class name and deal with it
- == static void p_b_cclass(register struct parse *p, register cset *cs);
- */
-static void
-p_b_cclass(p, cs)
-register struct parse *p;
-register cset *cs;
-{
-	register char *sp = p->next;
-	register struct cclass *cp;
-	register size_t len;
-	register char *u;
-	register char c;
-
-	while (MORE() && isalpha(PEEK()))
-		NEXT();
-	len = p->next - sp;
-	for (cp = cclasses; cp->name != NULL; cp++)
-		if (strncmp(cp->name, sp, len) == 0 && cp->name[len] == '\0')
-			break;
-	if (cp->name == NULL) {
-		/* oops, didn't find it */
-		SETERROR(REG_ECTYPE);
-		return;
-	}
-
-	u = cp->chars;
-	while ((c = *u++) != '\0')
-		CHadd(cs, c);
-	for (u = cp->multis; *u != '\0'; u += strlen(u) + 1)
-		MCadd(p, cs, u);
-}
-
-/*
- - p_b_eclass - parse an equivalence-class name and deal with it
- == static void p_b_eclass(register struct parse *p, register cset *cs);
- *
- * This implementation is incomplete. xxx
- */
-static void
-p_b_eclass(p, cs)
-register struct parse *p;
-register cset *cs;
-{
-	register char c;
-
-	c = p_b_coll_elem(p, '=');
-	CHadd(cs, c);
-}
-
-/*
- - p_b_symbol - parse a character or [..]ed multicharacter collating symbol
- == static char p_b_symbol(register struct parse *p);
- */
-static char			/* value of symbol */
-p_b_symbol(p)
-register struct parse *p;
-{
-	register char value;
-
-	REQUIRE(MORE(), REG_EBRACK);
-	if (!EATTWO('[', '.'))
-		return(GETNEXT());
-
-	/* collating symbol */
-	value = p_b_coll_elem(p, '.');
-	REQUIRE(EATTWO('.', ']'), REG_ECOLLATE);
-	return(value);
-}
-
-/*
- - p_b_coll_elem - parse a collating-element name and look it up
- == static char p_b_coll_elem(register struct parse *p, int endc);
- */
-static char			/* value of collating element */
-p_b_coll_elem(p, endc)
-register struct parse *p;
-int endc;			/* name ended by endc,']' */
-{
-	register char *sp = p->next;
-	register struct cname *cp;
-	register int len;
-
-	while (MORE() && !SEETWO(endc, ']'))
-		NEXT();
-	if (!MORE()) {
-		SETERROR(REG_EBRACK);
-		return(0);
-	}
-	len = (sopno)(p->next - sp);
-	for (cp = cnames; cp->name != NULL; cp++)
-		if (strncmp(cp->name, sp, len) == 0 && cp->name[len] == '\0')
-			return(cp->code);	/* known name */
-	if (len == 1)
-		return(*sp);	/* single character */
-	SETERROR(REG_ECOLLATE);			/* neither */
-	return(0);
-}
-
-/*
- - othercase - return the case counterpart of an alphabetic
- == static char othercase(int ch);
- */
-static char			/* if no counterpart, return ch */
-othercase(ch)
-int ch;
-{
-	assert(isalpha(ch));
-	if (isupper(ch))
-		return(tolower(ch));
-	else if (islower(ch))
-		return(toupper(ch));
-	else			/* peculiar, but could happen */
-		return(ch);
-}
-
-/*
- - bothcases - emit a dualcase version of a two-case character
- == static void bothcases(register struct parse *p, int ch);
- *
- * Boy, is this implementation ever a kludge...
- */
-static void
-bothcases(p, ch)
-register struct parse *p;
-int ch;
-{
-	register char *oldnext = p->next;
-	register char *oldend = p->end;
-	char bracket[3];
-
-	assert(othercase(ch) != ch);	/* p_bracket() would recurse */
-	p->next = bracket;
-	p->end = bracket+2;
-	bracket[0] = ch;
-	bracket[1] = ']';
-	bracket[2] = '\0';
-	p_bracket(p);
-	assert(p->next == bracket+2);
-	p->next = oldnext;
-	p->end = oldend;
-}
-
-/*
- - ordinary - emit an ordinary character
- == static void ordinary(register struct parse *p, register int ch);
- */
-static void
-ordinary(p, ch)
-register struct parse *p;
-register int ch;
-{
-	register cat_t *cap = p->g->categories;
-
-	if ((p->g->cflags&REG_ICASE) && isalpha(ch) && othercase(ch) != ch)
-		bothcases(p, ch);
-	else {
-		EMIT(OCHAR, (unsigned char)ch);
-		if (cap[ch] == 0)
-			cap[ch] = p->g->ncategories++;
-	}
-}
-
-/*
- - nonnewline - emit REG_NEWLINE version of OANY
- == static void nonnewline(register struct parse *p);
- *
- * Boy, is this implementation ever a kludge...
- */
-static void
-nonnewline(p)
-register struct parse *p;
-{
-	register char *oldnext = p->next;
-	register char *oldend = p->end;
-	char bracket[4];
-
-	p->next = bracket;
-	p->end = bracket+3;
-	bracket[0] = '^';
-	bracket[1] = '\n';
-	bracket[2] = ']';
-	bracket[3] = '\0';
-	p_bracket(p);
-	assert(p->next == bracket+3);
-	p->next = oldnext;
-	p->end = oldend;
-}
-
-/*
- - repeat - generate code for a bounded repetition, recursively if needed
- == static void repeat(register struct parse *p, sopno start, int from, int to);
- */
-static void
-repeat(p, start, from, to)
-register struct parse *p;
-sopno start;			/* operand from here to end of strip */
-int from;			/* repeated from this number */
-int to;				/* to this number of times (maybe INFINITY) */
-{
-	register sopno finish = HERE();
-#	define	N	2
-#	define	INF	3
-#	define	REP(f, t)	((f)*8 + (t))
-#	define	MAP(n)	(((n) <= 1) ? (n) : ((n) == INFINITY) ? INF : N)
-	register sopno copy;
-
-	if (p->error != 0)	/* head off possible runaway recursion */
-		return;
-
-	assert(from <= to);
-
-	switch (REP(MAP(from), MAP(to))) {
-	case REP(0, 0):			/* must be user doing this */
-		DROP(finish-start);	/* drop the operand */
-		break;
-	case REP(0, 1):			/* as x{1,1}? */
-	case REP(0, N):			/* as x{1,n}? */
-	case REP(0, INF):		/* as x{1,}? */
-		/* KLUDGE: emit y? as (y|) until subtle bug gets fixed */
-		INSERT(OCH_, start);		/* offset is wrong... */
-		repeat(p, start+1, 1, to);
-		ASTERN(OOR1, start);
-		AHEAD(start);			/* ... fix it */
-		EMIT(OOR2, 0);
-		AHEAD(THERE());
-		ASTERN(O_CH, THERETHERE());
-		break;
-	case REP(1, 1):			/* trivial case */
-		/* done */
-		break;
-	case REP(1, N):			/* as x?x{1,n-1} */
-		/* KLUDGE: emit y? as (y|) until subtle bug gets fixed */
-		INSERT(OCH_, start);
-		ASTERN(OOR1, start);
-		AHEAD(start);
-		EMIT(OOR2, 0);			/* offset very wrong... */
-		AHEAD(THERE());			/* ...so fix it */
-		ASTERN(O_CH, THERETHERE());
-		copy = dupl(p, start+1, finish+1);
-		assert(copy == finish+4);
-		repeat(p, copy, 1, to-1);
-		break;
-	case REP(1, INF):		/* as x+ */
-		INSERT(OPLUS_, start);
-		ASTERN(O_PLUS, start);
-		break;
-	case REP(N, N):			/* as xx{m-1,n-1} */
-		copy = dupl(p, start, finish);
-		repeat(p, copy, from-1, to-1);
-		break;
-	case REP(N, INF):		/* as xx{n-1,INF} */
-		copy = dupl(p, start, finish);
-		repeat(p, copy, from-1, to);
-		break;
-	default:			/* "can't happen" */
-		SETERROR(REG_ASSERT);	/* just in case */
-		break;
-	}
-}
-
-/*
- - seterr - set an error condition
- == static int seterr(register struct parse *p, int e);
- */
-static int			/* useless but makes type checking happy */
-seterr(p, e)
-register struct parse *p;
-int e;
-{
-	if (p->error == 0)	/* keep earliest error condition */
-		p->error = e;
-	p->next = nuls;		/* try to bring things to a halt */
-	p->end = nuls;
-	return(0);		/* make the return value well-defined */
-}
-
-/*
- - allocset - allocate a set of characters for []
- == static cset *allocset(register struct parse *p);
- */
-static cset *
-allocset(p)
-register struct parse *p;
-{
-	register int no = p->g->ncsets++;
-	register size_t nc;
-	register size_t nbytes;
-	register cset *cs;
-	register size_t css = (size_t)p->g->csetsize;
-	register int i;
-
-	if (no >= p->ncsalloc) {	/* need another column of space */
-		p->ncsalloc += CHAR_BIT;
-		nc = p->ncsalloc;
-		assert(nc % CHAR_BIT == 0);
-		nbytes = nc / CHAR_BIT * css;
-		if (p->g->sets == NULL)
-			p->g->sets = (cset *)malloc(nc * sizeof(cset));
-		else
-			p->g->sets = (cset *)realloc((char *)p->g->sets,
-							nc * sizeof(cset));
-		if (p->g->setbits == NULL)
-			p->g->setbits = (uch *)malloc(nbytes);
-		else {
-			p->g->setbits = (uch *)realloc((char *)p->g->setbits,
-								nbytes);
-			/* xxx this isn't right if setbits is now NULL */
-			for (i = 0; i < no; i++)
-				p->g->sets[i].ptr = p->g->setbits + css*(i/CHAR_BIT);
-		}
-		if (p->g->sets != NULL && p->g->setbits != NULL)
-			(void) memset((char *)p->g->setbits + (nbytes - css),
-								0, css);
-		else {
-			no = 0;
-			SETERROR(REG_ESPACE);
-			/* caller's responsibility not to do set ops */
-		}
-	}
-
-	assert(p->g->sets != NULL);	/* xxx */
-	cs = &p->g->sets[no];
-	cs->ptr = p->g->setbits + css*((no)/CHAR_BIT);
-	cs->mask = 1 << ((no) % CHAR_BIT);
-	cs->hash = 0;
-	cs->smultis = 0;
-	cs->multis = NULL;
-
-	return(cs);
-}
-
-/*
- - freeset - free a now-unused set
- == static void freeset(register struct parse *p, register cset *cs);
- */
-static void
-freeset(p, cs)
-register struct parse *p;
-register cset *cs;
-{
-	register int i;
-	register cset *top = &p->g->sets[p->g->ncsets];
-	register size_t css = (size_t)p->g->csetsize;
-
-	for (i = 0; i < (int)css; i++)
-		CHsub(cs, i);
-	if (cs == top-1)	/* recover only the easy case */
-		p->g->ncsets--;
-}
-
-/*
- - freezeset - final processing on a set of characters
- == static int freezeset(register struct parse *p, register cset *cs);
- *
- * The main task here is merging identical sets.  This is usually a waste
- * of time (although the hash code minimizes the overhead), but can win
- * big if REG_ICASE is being used.  REG_ICASE, by the way, is why the hash
- * is done using addition rather than xor -- all ASCII [aA] sets xor to
- * the same value!
- */
-static int			/* set number */
-freezeset(p, cs)
-register struct parse *p;
-register cset *cs;
-{
-	register uch h = cs->hash;
-	register int i;
-	register cset *top = &p->g->sets[p->g->ncsets];
-	register cset *cs2;
-	register size_t css = (size_t)p->g->csetsize;
-
-	/* look for an earlier one which is the same */
-	for (cs2 = &p->g->sets[0]; cs2 < top; cs2++)
-		if (cs2->hash == h && cs2 != cs) {
-			/* maybe */
-			for (i = 0; i < (int)css; i++)
-				if (!!CHIN(cs2, i) != !!CHIN(cs, i))
-					break;		/* no */
-			if (i == (int)css)
-				break;			/* yes */
-		}
-
-	if (cs2 < top) {	/* found one */
-		freeset(p, cs);
-		cs = cs2;
-	}
-
-	return((int)(cs - p->g->sets));
-}
-
-/*
- - firstch - return first character in a set (which must have at least one)
- == static int firstch(register struct parse *p, register cset *cs);
- */
-static int			/* character; there is no "none" value */
-firstch(p, cs)
-register struct parse *p;
-register cset *cs;
-{
-	register int i;
-	register size_t css = (size_t)p->g->csetsize;
-
-	for (i = 0; i < (int)css; i++)
-		if (CHIN(cs, i))
-			return((char)i);
-	assert(never);
-	return(0);		/* arbitrary */
-}
-
-/*
- - nch - number of characters in a set
- == static int nch(register struct parse *p, register cset *cs);
- */
-static int
-nch(p, cs)
-register struct parse *p;
-register cset *cs;
-{
-	register int i;
-	register size_t css = (size_t)p->g->csetsize;
-	register int n = 0;
-
-	for (i = 0; i < (int)css; i++)
-		if (CHIN(cs, i))
-			n++;
-	return(n);
-}
-
-/*
- - mcadd - add a collating element to a cset
- == static void mcadd(register struct parse *p, register cset *cs, \
- ==	register char *cp);
- */
-static void
-mcadd(p, cs, cp)
-register struct parse *p;
-register cset *cs;
-register char *cp;
-{
-	register size_t oldend = cs->smultis;
-
-	cs->smultis += strlen(cp) + 1;
-	if (cs->multis == NULL)
-		cs->multis = malloc(cs->smultis);
-	else
-		cs->multis = realloc(cs->multis, cs->smultis);
-	if (cs->multis == NULL) {
-		SETERROR(REG_ESPACE);
-		return;
-	}
-
-	(void) strcpy(cs->multis + oldend - 1, cp);
-	cs->multis[cs->smultis - 1] = '\0';
-}
-
-#if 0  /* mcsub/mcin UNUSED */
-
-/*
- - mcsub - subtract a collating element from a cset
- == static void mcsub(register cset *cs, register char *cp);
- */
-static void
-mcsub(cs, cp)
-register cset *cs;
-register char *cp;
-{
-	register char *fp = mcfind(cs, cp);
-	register size_t len = strlen(fp);
-
-	assert(fp != NULL);
-	(void) memmove(fp, fp + len + 1,
-				cs->smultis - (fp + len + 1 - cs->multis));
-	cs->smultis -= len;
-
-	if (cs->smultis == 0) {
-		free(cs->multis);
-		cs->multis = NULL;
-		return;
-	}
-
-	cs->multis = realloc(cs->multis, cs->smultis);
-	assert(cs->multis != NULL);
-}
-
-/*
- - mcin - is a collating element in a cset?
- == static int mcin(register cset *cs, register char *cp);
- */
-static int
-mcin(cs, cp)
-register cset *cs;
-register char *cp;
-{
-	return(mcfind(cs, cp) != NULL);
-}
-
-
-/*
- - mcfind - find a collating element in a cset
- == static char *mcfind(register cset *cs, register char *cp);
- */
-static char *
-mcfind(cs, cp)
-register cset *cs;
-register char *cp;
-{
-	register char *p;
-
-	if (cs->multis == NULL)
-		return(NULL);
-	for (p = cs->multis; *p != '\0'; p += strlen(p) + 1)
-		if (strcmp(cp, p) == 0)
-			return(p);
-	return(NULL);
-}
-
-#endif  /* mcsub/mcin UNUSED */
-
-/*
- - mcinvert - invert the list of collating elements in a cset
- == static void mcinvert(register struct parse *p, register cset *cs);
- *
- * This would have to know the set of possibilities.  Implementation
- * is deferred.
- */
-static void
-mcinvert(p, cs)
-register struct parse *p;
-register cset *cs;
-{
-  if (p == p)
-	assert(cs->multis == NULL);	/* xxx */
-}
-
-/*
- - mccase - add case counterparts of the list of collating elements in a cset
- == static void mccase(register struct parse *p, register cset *cs);
- *
- * This would have to know the set of possibilities.  Implementation
- * is deferred.
- */
-static void
-mccase(p, cs)
-register struct parse *p;
-register cset *cs;
-{
-  if (p == p)
-	assert(cs->multis == NULL);	/* xxx */
-}
-
-/*
- - isinsets - is this character in any sets?
- == static int isinsets(register struct re_guts *g, int c);
- */
-static int			/* predicate */
-isinsets(g, c)
-register struct re_guts *g;
-int c;
-{
-	register uch *col;
-	register int i;
-	register int ncols = (g->ncsets+(CHAR_BIT-1)) / CHAR_BIT;
-	register unsigned uc = (unsigned char)c;
-
-	for (i = 0, col = g->setbits; i < ncols; i++, col += g->csetsize)
-		if (col[uc] != 0)
-			return(1);
-	return(0);
-}
-
-/*
- - samesets - are these two characters in exactly the same sets?
- == static int samesets(register struct re_guts *g, int c1, int c2);
- */
-static int			/* predicate */
-samesets(g, c1, c2)
-register struct re_guts *g;
-int c1;
-int c2;
-{
-	register uch *col;
-	register int i;
-	register int ncols = (g->ncsets+(CHAR_BIT-1)) / CHAR_BIT;
-	register unsigned uc1 = (unsigned char)c1;
-	register unsigned uc2 = (unsigned char)c2;
-
-	for (i = 0, col = g->setbits; i < ncols; i++, col += g->csetsize)
-		if (col[uc1] != col[uc2])
-			return(0);
-	return(1);
-}
-
-/*
- - categorize - sort out character categories
- == static void categorize(struct parse *p, register struct re_guts *g);
- */
-static void
-categorize(p, g)
-struct parse *p;
-register struct re_guts *g;
-{
-	register cat_t *cats = g->categories;
-	register int c;
-	register int c2;
-	register cat_t cat;
-
-	/* avoid making error situations worse */
-	if (p->error != 0)
-		return;
-
-	for (c = CHAR_MIN; c <= CHAR_MAX; c++)
-		if (cats[c] == 0 && isinsets(g, c)) {
-			cat = g->ncategories++;
-			cats[c] = cat;
-			for (c2 = c+1; c2 <= CHAR_MAX; c2++)
-				if (cats[c2] == 0 && samesets(g, c, c2))
-					cats[c2] = cat;
-		}
-}
-
-/*
- - dupl - emit a duplicate of a bunch of sops
- == static sopno dupl(register struct parse *p, sopno start, sopno finish);
- */
-static sopno			/* start of duplicate */
-dupl(p, start, finish)
-register struct parse *p;
-sopno start;			/* from here */
-sopno finish;			/* to this less one */
-{
-	register sopno ret = HERE();
-	register sopno len = finish - start;
-
-	assert(finish >= start);
-	if (len == 0)
-		return(ret);
-	enlarge(p, p->ssize + len);	/* this many unexpected additions */
-	assert(p->ssize >= p->slen + len);
-	(void) memcpy((char *)(p->strip + p->slen),
-		(char *)(p->strip + start), (size_t)len*sizeof(sop));
-	p->slen += len;
-	return(ret);
-}
-
-/*
- - doemit - emit a strip operator
- == static void doemit(register struct parse *p, sop op, size_t opnd);
- *
- * It might seem better to implement this as a macro with a function as
- * hard-case backup, but it's just too big and messy unless there are
- * some changes to the data structures.  Maybe later.
- */
-static void
-doemit(p, op, opnd)
-register struct parse *p;
-sop op;
-size_t opnd;
-{
-	/* avoid making error situations worse */
-	if (p->error != 0)
-		return;
-
-	/* deal with oversize operands ("can't happen", more or less) */
-	assert(opnd < 1<<OPSHIFT);
-
-	/* deal with undersized strip */
-	if (p->slen >= p->ssize)
-		enlarge(p, (p->ssize+1) / 2 * 3);	/* +50% */
-	assert(p->slen < p->ssize);
-
-	/* finally, it's all reduced to the easy case */
-	p->strip[p->slen++] = SOP(op, opnd);
-}
-
-/*
- - doinsert - insert a sop into the strip
- == static void doinsert(register struct parse *p, sop op, size_t opnd, sopno pos);
- */
-static void
-doinsert(p, op, opnd, pos)
-register struct parse *p;
-sop op;
-size_t opnd;
-sopno pos;
-{
-	register sopno sn;
-	register sop s;
-	register int i;
-
-	/* avoid making error situations worse */
-	if (p->error != 0)
-		return;
-
-	sn = HERE();
-	EMIT(op, opnd);		/* do checks, ensure space */
-	assert(HERE() == sn+1);
-	s = p->strip[sn];
-
-	/* adjust paren pointers */
-	assert(pos > 0);
-	for (i = 1; i < NPAREN; i++) {
-		if (p->pbegin[i] >= pos) {
-			p->pbegin[i]++;
-		}
-		if (p->pend[i] >= pos) {
-			p->pend[i]++;
-		}
-	}
-
-	memmove((char *)&p->strip[pos+1], (char *)&p->strip[pos],
-						(HERE()-pos-1)*sizeof(sop));
-	p->strip[pos] = s;
-}
-
-/*
- - dofwd - complete a forward reference
- == static void dofwd(register struct parse *p, sopno pos, sop value);
- */
-static void
-dofwd(p, pos, value)
-register struct parse *p;
-register sopno pos;
-sop value;
-{
-	/* avoid making error situations worse */
-	if (p->error != 0)
-		return;
-
-	assert(value < 1<<OPSHIFT);
-	p->strip[pos] = OP(p->strip[pos]) | value;
-}
-
-/*
- - enlarge - enlarge the strip
- == static void enlarge(register struct parse *p, sopno size);
- */
-static void
-enlarge(p, size)
-register struct parse *p;
-register sopno size;
-{
-	register sop *sp;
-
-	if (p->ssize >= size)
-		return;
-
-	sp = (sop *)realloc(p->strip, size*sizeof(sop));
-	if (sp == NULL) {
-		SETERROR(REG_ESPACE);
-		return;
-	}
-	p->strip = sp;
-	p->ssize = size;
-}
-
-/*
- - stripsnug - compact the strip
- == static void stripsnug(register struct parse *p, register struct re_guts *g);
- */
-static void
-stripsnug(p, g)
-register struct parse *p;
-register struct re_guts *g;
-{
-	g->nstates = p->slen;
-	g->strip = (sop *)realloc((char *)p->strip, p->slen * sizeof(sop));
-	if (g->strip == NULL) {
-		SETERROR(REG_ESPACE);
-		g->strip = p->strip;
-	}
-}
-
-/*
- - findmust - fill in must and mlen with longest mandatory literal string
- == static void findmust(register struct parse *p, register struct re_guts *g);
- *
- * This algorithm could do fancy things like analyzing the operands of |
- * for common subsequences.  Someday.  This code is simple and finds most
- * of the interesting cases.
- *
- * Note that must and mlen got initialized during setup.
- */
-static void
-findmust(p, g)
-struct parse *p;
-register struct re_guts *g;
-{
-	register sop *scan;
-	sop *start = NULL;
-	register sop *newstart = (sop *)0;
-	register sopno newlen;
-	register sop s;
-	register char *cp;
-	register sopno i;
-
-	/* avoid making error situations worse */
-	if (p->error != 0)
-		return;
-
-	/* find the longest OCHAR sequence in strip */
-	newlen = 0;
-	scan = g->strip + 1;
-	do {
-		s = *scan++;
-		switch (OP(s)) {
-		case OCHAR:		/* sequence member */
-			if (newlen == 0)		/* new sequence */
-				newstart = scan - 1;
-			newlen++;
-			break;
-		case OPLUS_:		/* things that don't break one */
-		case OLPAREN:
-		case ORPAREN:
-			break;
-		case OQUEST_:		/* things that must be skipped */
-		case OCH_:
-			scan--;
-			do {
-				scan += OPND(s);
-				s = *scan;
-				/* assert() interferes w debug printouts */
-				if (OP(s) != O_QUEST && OP(s) != O_CH &&
-							OP(s) != OOR2) {
-					g->iflags |= BAD;
-					return;
-				}
-			} while (OP(s) != O_QUEST && OP(s) != O_CH);
-			/* fallthrough */
-		default:		/* things that break a sequence */
-			if (newlen > g->mlen) {		/* ends one */
-				start = newstart;
-				g->mlen = newlen;
-			}
-			newlen = 0;
-			break;
-		}
-	} while (OP(s) != OEND);
-
-	if (g->mlen == 0)		/* there isn't one */
-		return;
-
-	/* turn it into a character string */
-	g->must = malloc((size_t)g->mlen + 1);
-	if (g->must == NULL) {		/* argh; just forget it */
-		g->mlen = 0;
-		return;
-	}
-	cp = g->must;
-	scan = start;
-	for (i = g->mlen; i > 0; i--) {
-		while (OP(s = *scan++) != OCHAR)
-			continue;
-		assert(cp < g->must + g->mlen);
-		*cp++ = (char)OPND(s);
-	}
-	assert(cp == g->must + g->mlen);
-	*cp++ = '\0';		/* just on general principles */
-}
-
-/*
- - pluscount - count + nesting
- == static sopno pluscount(register struct parse *p, register struct re_guts *g);
- */
-static sopno			/* nesting depth */
-pluscount(p, g)
-struct parse *p;
-register struct re_guts *g;
-{
-	register sop *scan;
-	register sop s;
-	register sopno plusnest = 0;
-	register sopno maxnest = 0;
-
-	if (p->error != 0)
-		return(0);	/* there may not be an OEND */
-
-	scan = g->strip + 1;
-	do {
-		s = *scan++;
-		switch (OP(s)) {
-		case OPLUS_:
-			plusnest++;
-			break;
-		case O_PLUS:
-			if (plusnest > maxnest)
-				maxnest = plusnest;
-			plusnest--;
-			break;
-		}
-	} while (OP(s) != OEND);
-	if (plusnest != 0)
-		g->iflags |= BAD;
-	return(maxnest);
-}
diff --git a/src/other/regex/regerror.c b/src/other/regex/regerror.c
deleted file mode 100644
index 90a277e..0000000
--- a/src/other/regex/regerror.c
+++ /dev/null
@@ -1,180 +0,0 @@
-/* Copyright (c) 1992, 1993, 1994 Henry Spencer.
- * Copyright (c) 1992, 1993, 1994
- *	The Regents of the University of California.  All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Henry Spencer.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *  * Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *	@(#)regerror.c	8.4 (Berkeley) 3/20/94
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-#if 0
-static char sccsid[] = "@(#)regerror.c	8.4 (Berkeley) 3/20/94";
-#else
-static char rcsid[] = "$NetBSD: regerror.c,v 1.4 1995/02/27 13:29:20 cgd Exp $";
-#endif
-#endif /* LIBC_SCCS and not lint */
-
-#include <sys/types.h>
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-#include <limits.h>
-#include <stdlib.h>
-
-#ifndef BUILD_REGEX
-#  define BUILD_REGEX 1
-#endif
-#include "bzregex.h"
-#include "./utils.h"
-
-/* ========= begin header generated by ./mkh ========= */
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* === regerror.c === */
-static char *regatoi(const regex_t *preg, char *localbuf);
-
-#ifdef __cplusplus
-}
-#endif
-/* ========= end header generated by ./mkh ========= */
-/*
- = #define	REG_NOMATCH	 1
- = #define	REG_BADPAT	 2
- = #define	REG_ECOLLATE	 3
- = #define	REG_ECTYPE	 4
- = #define	REG_EESCAPE	 5
- = #define	REG_ESUBREG	 6
- = #define	REG_EBRACK	 7
- = #define	REG_EPAREN	 8
- = #define	REG_EBRACE	 9
- = #define	REG_BADBR	10
- = #define	REG_ERANGE	11
- = #define	REG_ESPACE	12
- = #define	REG_BADRPT	13
- = #define	REG_EMPTY	14
- = #define	REG_ASSERT	15
- = #define	REG_INVARG	16
- = #define	REG_ATOI	255	// convert name to number (!)
- = #define	REG_ITOA	0400	// convert number to name (!)
- */
-static struct rerr {
-	int code;
-	char *name;
-	char *explain;
-} rerrs[] = {
-	{REG_NOMATCH,	"REG_NOMATCH",	"regexec() failed to match"},
-	{REG_BADPAT,	"REG_BADPAT",	"invalid regular expression"},
-	{REG_ECOLLATE,	"REG_ECOLLATE",	"invalid collating element"},
-	{REG_ECTYPE,	"REG_ECTYPE",	"invalid character class"},
-	{REG_EESCAPE,	"REG_EESCAPE",	"trailing backslash (\\)"},
-	{REG_ESUBREG,	"REG_ESUBREG",	"invalid backreference number"},
-	{REG_EBRACK,	"REG_EBRACK",	"brackets ([ ]) not balanced"},
-	{REG_EPAREN,	"REG_EPAREN",	"parentheses not balanced"},
-	{REG_EBRACE,	"REG_EBRACE",	"braces not balanced"},
-	{REG_BADBR,	"REG_BADBR",	"invalid repetition count(s)"},
-	{REG_ERANGE,	"REG_ERANGE",	"invalid character range"},
-	{REG_ESPACE,	"REG_ESPACE",	"out of memory"},
-	{REG_BADRPT,	"REG_BADRPT",	"repetition-operator operand invalid"},
-	{REG_EMPTY,	"REG_EMPTY",	"empty (sub)expression"},
-	{REG_ASSERT,	"REG_ASSERT",	"\"can't happen\" -- you found a bug"},
-	{REG_INVARG,	"REG_INVARG",	"invalid argument to regex routine"},
-	{0,		"",		"*** unknown regexp error code ***"}
-};
-
-/*
- - regerror - the interface to error numbers
- = extern size_t regerror(int, const regex_t *, char *, size_t);
- */
-/* ARGSUSED */
-size_t
-regerror(errorcode, preg, errbuf, errbuf_size)
-int errorcode;
-const regex_t *preg;
-char *errbuf;
-size_t errbuf_size;
-{
-	register struct rerr *r;
-	register size_t len;
-	register int target = errorcode &~ REG_ITOA;
-	register char *s;
-	char convbuf[50];
-
-	if (errorcode == REG_ATOI)
-		s = regatoi(preg, convbuf);
-	else {
-		for (r = rerrs; r->code != 0; r++)
-			if (r->code == target)
-				break;
-
-		if (errorcode&REG_ITOA) {
-			if (r->code != 0)
-				(void) strcpy(convbuf, r->name);
-			else
-				sprintf(convbuf, "REG_0x%x", target);
-			assert(strlen(convbuf) < sizeof(convbuf));
-			s = convbuf;
-		} else
-			s = r->explain;
-	}
-
-	len = strlen(s) + 1;
-	if (errbuf_size > 0) {
-		if (errbuf_size > len)
-			(void) strcpy(errbuf, s);
-		else {
-			(void) strncpy(errbuf, s, errbuf_size-1);
-			errbuf[errbuf_size-1] = '\0';
-		}
-	}
-
-	return(len);
-}
-
-/*
- - regatoi - internal routine to implement REG_ATOI
- == static char *regatoi(const regex_t *preg, char *localbuf);
- */
-static char *
-regatoi(preg, localbuf)
-const regex_t *preg;
-char *localbuf;
-{
-	register struct rerr *r;
-
-	for (r = rerrs; r->code != 0; r++)
-		if (strcmp(r->name, preg->re_endp) == 0)
-			break;
-	if (r->code == 0)
-		return("0");
-
-	sprintf(localbuf, "%d", r->code);
-	return(localbuf);
-}
diff --git a/src/other/regex/regex2.h b/src/other/regex/regex2.h
deleted file mode 100644
index b89910d..0000000
--- a/src/other/regex/regex2.h
+++ /dev/null
@@ -1,169 +0,0 @@
-/* Copyright (c) 1992, 1993, 1994 Henry Spencer.
- * Copyright (c) 1992, 1993, 1994
- *	The Regents of the University of California.  All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Henry Spencer.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *  * Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *	@(#)regex2.h	8.4 (Berkeley) 3/20/94
- */
-
-/*
- * First, the stuff that ends up in the outside-world include file
- = typedef off_t regoff_t;
- = typedef struct {
- =	int re_magic;
- =	size_t re_nsub;		// number of parenthesized subexpressions
- =	const char *re_endp;	// end pointer for REG_PEND
- =	struct re_guts *re_g;	// none of your business :-)
- = } regex_t;
- = typedef struct {
- =	regoff_t rm_so;		// start of match
- =	regoff_t rm_eo;		// end of match
- = } regmatch_t;
- */
-/*
- * internals of regex_t
- */
-#define	MAGIC1	((('r'^0200)<<8) | 'e')
-
-/*
- * The internal representation is a *strip*, a sequence of
- * operators ending with an endmarker.  (Some terminology etc. is a
- * historical relic of earlier versions which used multiple strips.)
- * Certain oddities in the representation are there to permit running
- * the machinery backwards; in particular, any deviation from sequential
- * flow must be marked at both its source and its destination.  Some
- * fine points:
- *
- * - OPLUS_ and O_PLUS are *inside* the loop they create.
- * - OQUEST_ and O_QUEST are *outside* the bypass they create.
- * - OCH_ and O_CH are *outside* the multi-way branch they create, while
- *   OOR1 and OOR2 are respectively the end and the beginning of one of
- *   the branches.  Note that there is an implicit OOR2 following OCH_
- *   and an implicit OOR1 preceding O_CH.
- *
- * In state representations, an operator's bit is on to signify a state
- * immediately *preceding* "execution" of that operator.
- */
-typedef unsigned long sop;	/* strip operator */
-typedef long sopno;
-#define	OPRMASK	0xf8000000
-#define	OPDMASK	0x07ffffff
-#define	OPSHIFT	((unsigned)27)
-#define	OP(n)	((n)&OPRMASK)
-#define	OPND(n)	((n)&OPDMASK)
-#define	SOP(op, opnd)	((op)|(opnd))
-/* operators			   meaning	operand			*/
-/*						(back, fwd are offsets)	*/
-#define	OEND	0x08000000 /* (1L<<OPSHIFT)	_* endmarker	-			*/
-#define	OCHAR	0x10000000 /* (2L<<OPSHIFT)	_* character	unsigned char		*/
-#define	OBOL	0x18000000 /* (3L<<OPSHIFT)	_* left anchor	-			*/
-#define	OEOL	0x20000000 /* (4L<<OPSHIFT)	_* right anchor	-			*/
-#define	OANY	0x28000000 /* (5L<<OPSHIFT)	_* .		-			*/
-#define	OANYOF	0x30000000 /* (6L<<OPSHIFT)	_* [...]	set number		*/
-#define	OBACK_	0x38000000 /* (7L<<OPSHIFT)	_* begin \d	paren number		*/
-#define	O_BACK	0x40000000 /* (8L<<OPSHIFT)	_* end \d	paren number		*/
-#define	OPLUS_	0x48000000 /* (9L<<OPSHIFT)	_* + prefix	fwd to suffix		*/
-#define	O_PLUS	0x50000000 /* (10L<<OPSHIFT)	_* + suffix	back to prefix		*/
-#define	OQUEST_	0x58000000 /* (11L<<OPSHIFT)	_* ? prefix	fwd to suffix		*/
-#define	O_QUEST	0x60000000 /* (12L<<OPSHIFT)	_* ? suffix	back to prefix		*/
-#define	OLPAREN	0x68000000 /* (13L<<OPSHIFT)	_* (		fwd to )		*/
-#define	ORPAREN	0x70000000 /* (14L<<OPSHIFT)	_* )		back to (		*/
-#define	OCH_	0x78000000 /* (15L<<OPSHIFT)	_* begin choice	fwd to OOR2		*/
-#define	OOR1	0x80000000 /* (16L<<OPSHIFT)	_* | pt. 1	back to OOR1 or OCH_	*/
-#define	OOR2	0x88000000 /* (17L<<OPSHIFT)	_* | pt. 2	fwd to OOR2 or O_CH	*/
-#define	O_CH	0x90000000 /* (18L<<OPSHIFT)	_* end choice	back to OOR1		*/
-#define	OBOW	0x98000000 /* (19L<<OPSHIFT)	_* begin word	-			*/
-#define	OEOW	0xa0000000 /* (20L<<OPSHIFT)	_* end word	-			*/
-
-
-/*
- * Structure for [] character-set representation.  Character sets are
- * done as bit vectors, grouped 8 to a byte vector for compactness.
- * The individual set therefore has both a pointer to the byte vector
- * and a mask to pick out the relevant bit of each byte.  A hash code
- * simplifies testing whether two sets could be identical.
- *
- * This will get trickier for multicharacter collating elements.  As
- * preliminary hooks for dealing with such things, we also carry along
- * a string of multi-character elements, and decide the size of the
- * vectors at run time.
- */
-typedef struct {
-	uch *ptr;		/* -> uch [csetsize] */
-	uch mask;		/* bit within array */
-	uch hash;		/* hash code */
-	size_t smultis;
-	char *multis;		/* -> char[smulti]  ab\0cd\0ef\0\0 */
-} cset;
-/* note that CHadd and CHsub are unsafe, and CHIN doesn't yield 0/1 */
-#define	CHadd(cs, c)	((cs)->ptr[(uch)(c)] |= (cs)->mask, (cs)->hash += (c))
-#define	CHsub(cs, c)	((cs)->ptr[(uch)(c)] &= ~(cs)->mask, (cs)->hash -= (c))
-#define	CHIN(cs, c)	((cs)->ptr[(uch)(c)] & (cs)->mask)
-#define	MCadd(p, cs, cp)	mcadd(p, cs, cp)	/* regcomp() internal fns */
-#define	MCsub(p, cs, cp)	mcsub(p, cs, cp)
-#define	MCin(p, cs, cp)	mcin(p, cs, cp)
-
-/* stuff for character categories */
-typedef unsigned char cat_t;
-
-/*
- * main compiled-expression structure
- */
-struct re_guts {
-	int magic;
-#		define	MAGIC2	((('R'^0200)<<8)|'E')
-	sop *strip;		/* malloced area for strip */
-	int csetsize;		/* number of bits in a cset vector */
-	int ncsets;		/* number of csets in use */
-	cset *sets;		/* -> cset [ncsets] */
-	uch *setbits;		/* -> uch[csetsize][ncsets/CHAR_BIT] */
-	int cflags;		/* copy of regcomp() cflags argument */
-	sopno nstates;		/* = number of sops */
-	sopno firststate;	/* the initial OEND (normally 0) */
-	sopno laststate;	/* the final OEND */
-	int iflags;		/* internal flags */
-#		define	USEBOL	01	/* used ^ */
-#		define	USEEOL	02	/* used $ */
-#		define	BAD	04	/* something wrong */
-	int nbol;		/* number of ^ used */
-	int neol;		/* number of $ used */
-	int ncategories;	/* how many character categories */
-	cat_t *categories;	/* ->catspace[-CHAR_MIN] */
-	char *must;		/* match must contain this string */
-	int mlen;		/* length of must */
-	size_t nsub;		/* copy of re_nsub */
-	int backrefs;		/* does it use back references? */
-	sopno nplus;		/* how deep does it nest +s? */
-	/* catspace must be last */
-	cat_t catspace[1];	/* actually [NC] */
-};
-
-/* misc utilities */
-#define	OUT	(CHAR_MAX+1)	/* a non-character value */
-#define	ISWORD(c)	(isalnum(c) || (c) == '_')
diff --git a/src/other/regex/regexec.c b/src/other/regex/regexec.c
deleted file mode 100644
index 396996d..0000000
--- a/src/other/regex/regexec.c
+++ /dev/null
@@ -1,184 +0,0 @@
-/* Copyright (c) 1992, 1993, 1994 Henry Spencer.
- * Copyright (c) 1992, 1993, 1994
- *	The Regents of the University of California.  All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Henry Spencer.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *  * Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *	@(#)regexec.c	8.3 (Berkeley) 3/20/94
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-#if 0
-static char sccsid[] = "@(#)regexec.c	8.3 (Berkeley) 3/20/94";
-#else
-static char rcsid[] = "$NetBSD: regexec.c,v 1.6 1995/02/27 13:29:48 cgd Exp $";
-#endif
-#endif /* LIBC_SCCS and not lint */
-
-/*
- * the outer shell of regexec()
- *
- * This file includes engine.c *twice*, after muchos fiddling with the
- * macros that code uses.  This lets the same code operate on two different
- * representations for state sets.
- */
-#include <sys/types.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <limits.h>
-#include <ctype.h>
-
-#ifndef BUILD_REGEX
-#  define BUILD_REGEX 1
-#endif
-#include "bzregex.h"
-#include "./utils.h"
-#include "./regex2.h"
-
-static int nope = 0;		/* for use in asserts; shuts lint up */
-
-/* macros for manipulating states, small version */
-#define	states	long
-#define	states1	states		/* for later use in regexec() decision */
-#define	CLEAR(v)	((v) = 0)
-#define	SET0(v, n)	((v) &= ~((unsigned long)1 << (n)))
-#define	SET1(v, n)	((v) |= (unsigned long)1 << (n))
-#define	ISSET(v, n)	(((v) & ((unsigned long)1 << (n))) != 0)
-#define	ASSIGN(d, s)	((d) = (s))
-#define	EQ(a, b)	((a) == (b))
-#define	STATEVARS	long dummy	/* dummy version */
-#define	STATESETUP(m, n)	/* nothing */
-#define	STATETEARDOWN(m)	/* nothing */
-#define	SETUP(v)	((v) = 0)
-#define	onestate	long
-#define	INIT(o, n)	((o) = (unsigned long)1 << (n))
-#define	INC(o)	((o) <<= 1)
-#define	ISSTATEIN(v, o)	(((v) & (o)) != 0)
-/* some abbreviations; note that some of these know variable names! */
-/* do "if I'm here, I can also be there" etc without branches */
-#define	FWD(dst, src, n)	((dst) |= ((unsigned long)(src)&(here)) << (n))
-#define	BACK(dst, src, n)	((dst) |= ((unsigned long)(src)&(here)) >> (n))
-#define	ISSETBACK(v, n)	(((v) & ((unsigned long)here >> (n))) != 0)
-/* function names */
-#define SNAMES			/* engine.c looks after details */
-
-#include "./engine.c"
-
-/* now undo things */
-#undef	states
-#undef	CLEAR
-#undef	SET0
-#undef	SET1
-#undef	ISSET
-#undef	ASSIGN
-#undef	EQ
-#undef	STATEVARS
-#undef	STATESETUP
-#undef	STATETEARDOWN
-#undef	SETUP
-#undef	onestate
-#undef	INIT
-#undef	INC
-#undef	ISSTATEIN
-#undef	FWD
-#undef	BACK
-#undef	ISSETBACK
-#undef	SNAMES
-
-/* macros for manipulating states, large version */
-#define	states	char *
-#define	CLEAR(v)	memset(v, 0, m->g->nstates)
-#define	SET0(v, n)	((v)[n] = 0)
-#define	SET1(v, n)	((v)[n] = 1)
-#define	ISSET(v, n)	((v)[n])
-#define	ASSIGN(d, s)	memcpy(d, s, m->g->nstates)
-#define	EQ(a, b)	(memcmp(a, b, m->g->nstates) == 0)
-#define	STATEVARS	long vn; char *space
-#define	STATESETUP(m, nv)	{ (m)->space = malloc((nv)*(m)->g->nstates); \
-				if ((m)->space == NULL) return(REG_ESPACE); \
-				(m)->vn = 0; }
-#define	STATETEARDOWN(m)	{ free((m)->space); }
-#define	SETUP(v)	((v) = &m->space[m->vn++ * m->g->nstates])
-#define	onestate	long
-#define	INIT(o, n)	((o) = (n))
-#define	INC(o)	((o)++)
-#define	ISSTATEIN(v, o)	((v)[o])
-/* some abbreviations; note that some of these know variable names! */
-/* do "if I'm here, I can also be there" etc without branches */
-#define	FWD(dst, src, n)	((dst)[here+(n)] |= (src)[here])
-#define	BACK(dst, src, n)	((dst)[here-(n)] |= (src)[here])
-#define	ISSETBACK(v, n)	((v)[here - (n)])
-/* function names */
-#define	LNAMES			/* flag */
-
-#include "./engine.c"
-
-/*
- - regexec - interface for matching
- = extern int regexec(const regex_t *, const char *, size_t, \
- =					regmatch_t [], int);
- = #define	REG_NOTBOL	00001
- = #define	REG_NOTEOL	00002
- = #define	REG_STARTEND	00004
- = #define	REG_TRACE	00400	// tracing of execution
- = #define	REG_LARGE	01000	// force large representation
- = #define	REG_BACKR	02000	// force use of backref code
- *
- * We put this here so we can exploit knowledge of the state representation
- * when choosing which matcher to call.  Also, by this point the matchers
- * have been prototyped.
- */
-int				/* 0 success, REG_NOMATCH failure */
-regexec(preg, string, nmatch, pmatch, eflags)
-const regex_t *preg;
-const char *string;
-size_t nmatch;
-regmatch_t pmatch[];
-int eflags;
-{
-	register struct re_guts *g = preg->re_g;
-#ifdef REDEBUG
-#	define	GOODFLAGS(f)	(f)
-#else
-#	define	GOODFLAGS(f)	((f)&(REG_NOTBOL|REG_NOTEOL|REG_STARTEND))
-#endif
-
-	if (preg->re_magic != MAGIC1 || g->magic != MAGIC2)
-		return(REG_BADPAT);
-	assert(!(g->iflags&BAD));
-	if (g->iflags&BAD)		/* backstop for no-debug case */
-		return(REG_BADPAT);
-	eflags = GOODFLAGS(eflags);
-
-	if (g->nstates <= (int)(CHAR_BIT*sizeof(states1))
-	    && !(eflags&REG_LARGE))
-		return(smatcher(g, (char *)string, nmatch, pmatch, eflags));
-	else
-		return(lmatcher(g, (char *)string, nmatch, pmatch, eflags));
-}
diff --git a/src/other/regex/regfree.c b/src/other/regex/regfree.c
deleted file mode 100644
index 58dc140..0000000
--- a/src/other/regex/regfree.c
+++ /dev/null
@@ -1,82 +0,0 @@
-/* Copyright (c) 1992, 1993, 1994 Henry Spencer.
- * Copyright (c) 1992, 1993, 1994
- *	The Regents of the University of California.  All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Henry Spencer.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *  * Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *	@(#)regfree.c	8.3 (Berkeley) 3/20/94
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-#if 0
-static char sccsid[] = "@(#)regfree.c	8.3 (Berkeley) 3/20/94";
-#else
-static char rcsid[] = "$NetBSD: regfree.c,v 1.4 1995/02/27 13:29:56 cgd Exp $";
-#endif
-#endif /* LIBC_SCCS and not lint */
-
-#include <sys/types.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-#ifndef BUILD_REGEX
-#  define BUILD_REGEX 1
-#endif
-#include "bzregex.h"
-#include "./utils.h"
-#include "./regex2.h"
-
-/*
- - regfree - free everything
- = extern void regfree(regex_t *);
- */
-void
-regfree(preg)
-regex_t *preg;
-{
-	register struct re_guts *g;
-
-	if (preg->re_magic != MAGIC1)	/* oops */
-		return;			/* nice to complain, but hard */
-
-	g = preg->re_g;
-	if (g == NULL || g->magic != MAGIC2)	/* oops again */
-		return;
-	preg->re_magic = 0;		/* mark it invalid */
-	g->magic = 0;			/* mark it invalid */
-
-	if (g->strip != NULL)
-		free((char *)g->strip);
-	if (g->sets != NULL)
-		free((char *)g->sets);
-	if (g->setbits != NULL)
-		free((char *)g->setbits);
-	if (g->must != NULL)
-		free(g->must);
-	free((char *)g);
-}
diff --git a/src/other/regex/utils.h b/src/other/regex/utils.h
deleted file mode 100644
index 07c77c5..0000000
--- a/src/other/regex/utils.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright (c) 1992, 1993, 1994 Henry Spencer.
- * Copyright (c) 1992, 1993, 1994
- *	The Regents of the University of California.  All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Henry Spencer.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *  * Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *	@(#)utils.h	8.3 (Berkeley) 3/20/94
- */
-
-/* utility definitions */
-#if 0
-#define	DUPMAX		_POSIX2_RE_DUP_MAX	/* xxx is this right? */
-#else
-/* What's a good number? */
-#define DUPMAX 255
-#endif
-#define	INFINITY	(DUPMAX + 1)
-#define	NC		(CHAR_MAX - CHAR_MIN + 1)
-typedef unsigned char uch;
-
-/* switch off assertions (if not already off) if no REDEBUG */
-#ifndef REDEBUG
-#ifndef NDEBUG
-#if 0 /* XXX We leave assertions on for BRLCAD */
-	#define	NDEBUG	/* no assertions please */
-#endif
-#endif
-#endif
-#include <assert.h>
-
-/* for old systems with bcopy() but no memmove() */
-#ifdef USEBCOPY
-#define	memmove(d, s, c)	bcopy(s, d, c)
-#endif
diff --git a/src/other/zlib/ChangeLog b/src/other/zlib/ChangeLog
deleted file mode 100644
index 0107652..0000000
--- a/src/other/zlib/ChangeLog
+++ /dev/null
@@ -1,1208 +0,0 @@
-
-                ChangeLog file for zlib
-
-Changes in 1.2.5 (19 Apr 2010)
-- Disable visibility attribute in win32/Makefile.gcc [Bar-Lev]
-- Default to libdir as sharedlibdir in configure [Nieder]
-- Update copyright dates on modified source files
-- Update trees.c to be able to generate modified trees.h
-- Exit configure for MinGW, suggesting win32/Makefile.gcc
-
-Changes in 1.2.4.5 (18 Apr 2010)
-- Set sharedlibdir in configure [Torok]
-- Set LDFLAGS in Makefile.in [Bar-Lev]
-- Avoid mkdir objs race condition in Makefile.in [Bowler]
-- Add ZLIB_INTERNAL in front of internal inter-module functions and arrays
-- Define ZLIB_INTERNAL to hide internal functions and arrays for GNU C
-- Don't use hidden attribute when it is a warning generator (e.g. Solaris)
-
-Changes in 1.2.4.4 (18 Apr 2010)
-- Fix CROSS_PREFIX executable testing, CHOST extract, mingw* [Torok]
-- Undefine _LARGEFILE64_SOURCE in zconf.h if it is zero, but not if empty
-- Try to use bash or ksh regardless of functionality of /bin/sh
-- Fix configure incompatibility with NetBSD sh
-- Remove attempt to run under bash or ksh since have better NetBSD fix
-- Fix win32/Makefile.gcc for MinGW [Bar-Lev]
-- Add diagnostic messages when using CROSS_PREFIX in configure
-- Added --sharedlibdir option to configure [Weigelt]
-- Use hidden visibility attribute when available [Frysinger]
-
-Changes in 1.2.4.3 (10 Apr 2010)
-- Only use CROSS_PREFIX in configure for ar and ranlib if they exist
-- Use CROSS_PREFIX for nm [Bar-Lev]
-- Assume _LARGEFILE64_SOURCE defined is equivalent to true
-- Avoid use of undefined symbols in #if with && and ||
-- Make *64 prototypes in gzguts.h consistent with functions
-- Add -shared load option for MinGW in configure [Bowler]
-- Move z_off64_t to public interface, use instead of off64_t
-- Remove ! from shell test in configure (not portable to Solaris)
-- Change +0 macro tests to -0 for possibly increased portability
-
-Changes in 1.2.4.2 (9 Apr 2010)
-- Add consistent carriage returns to readme.txt's in masmx86 and masmx64
-- Really provide prototypes for *64 functions when building without LFS
-- Only define unlink() in minigzip.c if unistd.h not included
-- Update README to point to contrib/vstudio project files
-- Move projects/vc6 to old/ and remove projects/
-- Include stdlib.h in minigzip.c for setmode() definition under WinCE
-- Clean up assembler builds in win32/Makefile.msc [Rowe]
-- Include sys/types.h for Microsoft for off_t definition
-- Fix memory leak on error in gz_open()
-- Symbolize nm as $NM in configure [Weigelt]
-- Use TEST_LDSHARED instead of LDSHARED to link test programs [Weigelt]
-- Add +0 to _FILE_OFFSET_BITS and _LFS64_LARGEFILE in case not defined
-- Fix bug in gzeof() to take into account unused input data
-- Avoid initialization of structures with variables in puff.c
-- Updated win32/README-WIN32.txt [Rowe]
-
-Changes in 1.2.4.1 (28 Mar 2010)
-- Remove the use of [a-z] constructs for sed in configure [gentoo 310225]
-- Remove $(SHAREDLIB) from LIBS in Makefile.in [Creech]
-- Restore "for debugging" comment on sprintf() in gzlib.c
-- Remove fdopen for MVS from gzguts.h
-- Put new README-WIN32.txt in win32 [Rowe]
-- Add check for shell to configure and invoke another shell if needed
-- Fix big fat stinking bug in gzseek() on uncompressed files
-- Remove vestigial F_OPEN64 define in zutil.h
-- Set and check the value of _LARGEFILE_SOURCE and _LARGEFILE64_SOURCE
-- Avoid errors on non-LFS systems when applications define LFS macros
-- Set EXE to ".exe" in configure for MINGW [Kahle]
-- Match crc32() in crc32.c exactly to the prototype in zlib.h [Sherrill]
-- Add prefix for cross-compilation in win32/makefile.gcc [Bar-Lev]
-- Add DLL install in win32/makefile.gcc [Bar-Lev]
-- Allow Linux* or linux* from uname in configure [Bar-Lev]
-- Allow ldconfig to be redefined in configure and Makefile.in [Bar-Lev]
-- Add cross-compilation prefixes to configure [Bar-Lev]
-- Match type exactly in gz_load() invocation in gzread.c
-- Match type exactly of zcalloc() in zutil.c to zlib.h alloc_func
-- Provide prototypes for *64 functions when building zlib without LFS
-- Don't use -lc when linking shared library on MinGW
-- Remove errno.h check in configure and vestigial errno code in zutil.h
-
-Changes in 1.2.4 (14 Mar 2010)
-- Fix VER3 extraction in configure for no fourth subversion
-- Update zlib.3, add docs to Makefile.in to make .pdf out of it
-- Add zlib.3.pdf to distribution
-- Don't set error code in gzerror() if passed pointer is NULL
-- Apply destination directory fixes to CMakeLists.txt [Lowman]
-- Move #cmakedefine's to a new zconf.in.cmakein
-- Restore zconf.h for builds that don't use configure or cmake
-- Add distclean to dummy Makefile for convenience
-- Update and improve INDEX, README, and FAQ
-- Update CMakeLists.txt for the return of zconf.h [Lowman]
-- Update contrib/vstudio/vc9 and vc10 [Vollant]
-- Change libz.dll.a back to libzdll.a in win32/Makefile.gcc
-- Apply license and readme changes to contrib/asm686 [Raiter]
-- Check file name lengths and add -c option in minigzip.c [Li]
-- Update contrib/amd64 and contrib/masmx86/ [Vollant]
-- Avoid use of "eof" parameter in trees.c to not shadow library variable
-- Update make_vms.com for removal of zlibdefs.h [Zinser]
-- Update assembler code and vstudio projects in contrib [Vollant]
-- Remove outdated assembler code contrib/masm686 and contrib/asm586
-- Remove old vc7 and vc8 from contrib/vstudio
-- Update win32/Makefile.msc, add ZLIB_VER_SUBREVISION [Rowe]
-- Fix memory leaks in gzclose_r() and gzclose_w(), file leak in gz_open()
-- Add contrib/gcc_gvmat64 for longest_match and inflate_fast [Vollant]
-- Remove *64 functions from win32/zlib.def (they're not 64-bit yet)
-- Fix bug in void-returning vsprintf() case in gzwrite.c
-- Fix name change from inflate.h in contrib/inflate86/inffas86.c
-- Check if temporary file exists before removing in make_vms.com [Zinser]
-- Fix make install and uninstall for --static option
-- Fix usage of _MSC_VER in gzguts.h and zutil.h [Truta]
-- Update readme.txt in contrib/masmx64 and masmx86 to assemble
-
-Changes in 1.2.3.9 (21 Feb 2010)
-- Expunge gzio.c
-- Move as400 build information to old
-- Fix updates in contrib/minizip and contrib/vstudio
-- Add const to vsnprintf test in configure to avoid warnings [Weigelt]
-- Delete zconf.h (made by configure) [Weigelt]
-- Change zconf.in.h to zconf.h.in per convention [Weigelt]
-- Check for NULL buf in gzgets()
-- Return empty string for gzgets() with len == 1 (like fgets())
-- Fix description of gzgets() in zlib.h for end-of-file, NULL return
-- Update minizip to 1.1 [Vollant]
-- Avoid MSVC loss of data warnings in gzread.c, gzwrite.c
-- Note in zlib.h that gzerror() should be used to distinguish from EOF
-- Remove use of snprintf() from gzlib.c
-- Fix bug in gzseek()
-- Update contrib/vstudio, adding vc9 and vc10 [Kuno, Vollant]
-- Fix zconf.h generation in CMakeLists.txt [Lowman]
-- Improve comments in zconf.h where modified by configure
-
-Changes in 1.2.3.8 (13 Feb 2010)
-- Clean up text files (tabs, trailing whitespace, etc.) [Oberhumer]
-- Use z_off64_t in gz_zero() and gz_skip() to match state->skip
-- Avoid comparison problem when sizeof(int) == sizeof(z_off64_t)
-- Revert to Makefile.in from 1.2.3.6 (live with the clutter)
-- Fix missing error return in gzflush(), add zlib.h note
-- Add *64 functions to zlib.map [Levin]
-- Fix signed/unsigned comparison in gz_comp()
-- Use SFLAGS when testing shared linking in configure
-- Add --64 option to ./configure to use -m64 with gcc
-- Fix ./configure --help to correctly name options
-- Have make fail if a test fails [Levin]
-- Avoid buffer overrun in contrib/masmx64/gvmat64.asm [Simpson]
-- Remove assembler object files from contrib
-
-Changes in 1.2.3.7 (24 Jan 2010)
-- Always gzopen() with O_LARGEFILE if available
-- Fix gzdirect() to work immediately after gzopen() or gzdopen()
-- Make gzdirect() more precise when the state changes while reading
-- Improve zlib.h documentation in many places
-- Catch memory allocation failure in gz_open()
-- Complete close operation if seek forward in gzclose_w() fails
-- Return Z_ERRNO from gzclose_r() if close() fails
-- Return Z_STREAM_ERROR instead of EOF for gzclose() being passed NULL
-- Return zero for gzwrite() errors to match zlib.h description
-- Return -1 on gzputs() error to match zlib.h description
-- Add zconf.in.h to allow recovery from configure modification [Weigelt]
-- Fix static library permissions in Makefile.in [Weigelt]
-- Avoid warnings in configure tests that hide functionality [Weigelt]
-- Add *BSD and DragonFly to Linux case in configure [gentoo 123571]
-- Change libzdll.a to libz.dll.a in win32/Makefile.gcc [gentoo 288212]
-- Avoid access of uninitialized data for first inflateReset2 call [Gomes]
-- Keep object files in subdirectories to reduce the clutter somewhat
-- Remove default Makefile and zlibdefs.h, add dummy Makefile
-- Add new external functions to Z_PREFIX, remove duplicates, z_z_ -> z_
-- Remove zlibdefs.h completely -- modify zconf.h instead
-
-Changes in 1.2.3.6 (17 Jan 2010)
-- Avoid void * arithmetic in gzread.c and gzwrite.c
-- Make compilers happier with const char * for gz_error message
-- Avoid unused parameter warning in inflate.c
-- Avoid signed-unsigned comparison warning in inflate.c
-- Indent #pragma's for traditional C
-- Fix usage of strwinerror() in glib.c, change to gz_strwinerror()
-- Correct email address in configure for system options
-- Update make_vms.com and add make_vms.com to contrib/minizip [Zinser]
-- Update zlib.map [Brown]
-- Fix Makefile.in for Solaris 10 make of example64 and minizip64 [Torok]
-- Apply various fixes to CMakeLists.txt [Lowman]
-- Add checks on len in gzread() and gzwrite()
-- Add error message for no more room for gzungetc()
-- Remove zlib version check in gzwrite()
-- Defer compression of gzprintf() result until need to
-- Use snprintf() in gzdopen() if available
-- Remove USE_MMAP configuration determination (only used by minigzip)
-- Remove examples/pigz.c (available separately)
-- Update examples/gun.c to 1.6
-
-Changes in 1.2.3.5 (8 Jan 2010)
-- Add space after #if in zutil.h for some compilers
-- Fix relatively harmless bug in deflate_fast() [Exarevsky]
-- Fix same problem in deflate_slow()
-- Add $(SHAREDLIBV) to LIBS in Makefile.in [Brown]
-- Add deflate_rle() for faster Z_RLE strategy run-length encoding
-- Add deflate_huff() for faster Z_HUFFMAN_ONLY encoding
-- Change name of "write" variable in inffast.c to avoid library collisions
-- Fix premature EOF from gzread() in gzio.c [Brown]
-- Use zlib header window size if windowBits is 0 in inflateInit2()
-- Remove compressBound() call in deflate.c to avoid linking compress.o
-- Replace use of errno in gz* with functions, support WinCE [Alves]
-- Provide alternative to perror() in minigzip.c for WinCE [Alves]
-- Don't use _vsnprintf on later versions of MSVC [Lowman]
-- Add CMake build script and input file [Lowman]
-- Update contrib/minizip to 1.1 [Svensson, Vollant]
-- Moved nintendods directory from contrib to .
-- Replace gzio.c with a new set of routines with the same functionality
-- Add gzbuffer(), gzoffset(), gzclose_r(), gzclose_w() as part of above
-- Update contrib/minizip to 1.1b
-- Change gzeof() to return 0 on error instead of -1 to agree with zlib.h
-
-Changes in 1.2.3.4 (21 Dec 2009)
-- Use old school .SUFFIXES in Makefile.in for FreeBSD compatibility
-- Update comments in configure and Makefile.in for default --shared
-- Fix test -z's in configure [Marquess]
-- Build examplesh and minigzipsh when not testing
-- Change NULL's to Z_NULL's in deflate.c and in comments in zlib.h
-- Import LDFLAGS from the environment in configure
-- Fix configure to populate SFLAGS with discovered CFLAGS options
-- Adapt make_vms.com to the new Makefile.in [Zinser]
-- Add zlib2ansi script for C++ compilation [Marquess]
-- Add _FILE_OFFSET_BITS=64 test to make test (when applicable)
-- Add AMD64 assembler code for longest match to contrib [Teterin]
-- Include options from $SFLAGS when doing $LDSHARED
-- Simplify 64-bit file support by introducing z_off64_t type
-- Make shared object files in objs directory to work around old Sun cc
-- Use only three-part version number for Darwin shared compiles
-- Add rc option to ar in Makefile.in for when ./configure not run
-- Add -WI,-rpath,. to LDFLAGS for OSF 1 V4*
-- Set LD_LIBRARYN32_PATH for SGI IRIX shared compile
-- Protect against _FILE_OFFSET_BITS being defined when compiling zlib
-- Rename Makefile.in targets allstatic to static and allshared to shared
-- Fix static and shared Makefile.in targets to be independent
-- Correct error return bug in gz_open() by setting state [Brown]
-- Put spaces before ;;'s in configure for better sh compatibility
-- Add pigz.c (parallel implementation of gzip) to examples/
-- Correct constant in crc32.c to UL [Leventhal]
-- Reject negative lengths in crc32_combine()
-- Add inflateReset2() function to work like inflateEnd()/inflateInit2()
-- Include sys/types.h for _LARGEFILE64_SOURCE [Brown]
-- Correct typo in doc/algorithm.txt [Janik]
-- Fix bug in adler32_combine() [Zhu]
-- Catch missing-end-of-block-code error in all inflates and in puff
-    Assures that random input to inflate eventually results in an error
-- Added enough.c (calculation of ENOUGH for inftrees.h) to examples/
-- Update ENOUGH and its usage to reflect discovered bounds
-- Fix gzerror() error report on empty input file [Brown]
-- Add ush casts in trees.c to avoid pedantic runtime errors
-- Fix typo in zlib.h uncompress() description [Reiss]
-- Correct inflate() comments with regard to automatic header detection
-- Remove deprecation comment on Z_PARTIAL_FLUSH (it stays)
-- Put new version of gzlog (2.0) in examples with interruption recovery
-- Add puff compile option to permit invalid distance-too-far streams
-- Add puff TEST command options, ability to read piped input
-- Prototype the *64 functions in zlib.h when _FILE_OFFSET_BITS == 64, but
-  _LARGEFILE64_SOURCE not defined
-- Fix Z_FULL_FLUSH to truly erase the past by resetting s->strstart
-- Fix deflateSetDictionary() to use all 32K for output consistency
-- Remove extraneous #define MIN_LOOKAHEAD in deflate.c (in deflate.h)
-- Clear bytes after deflate lookahead to avoid use of uninitialized data
-- Change a limit in inftrees.c to be more transparent to Coverity Prevent
-- Update win32/zlib.def with exported symbols from zlib.h
-- Correct spelling error in zlib.h [Willem]
-- Allow Z_BLOCK for deflate() to force a new block
-- Allow negative bits in inflatePrime() to delete existing bit buffer
-- Add Z_TREES flush option to inflate() to return at end of trees
-- Add inflateMark() to return current state information for random access
-- Add Makefile for NintendoDS to contrib [Costa]
-- Add -w in configure compile tests to avoid spurious warnings [Beucler]
-- Fix typos in zlib.h comments for deflateSetDictionary()
-- Fix EOF detection in transparent gzread() [Maier]
-
-Changes in 1.2.3.3 (2 October 2006)
-- Make --shared the default for configure, add a --static option
-- Add compile option to permit invalid distance-too-far streams
-- Add inflateUndermine() function which is required to enable above
-- Remove use of "this" variable name for C++ compatibility [Marquess]
-- Add testing of shared library in make test, if shared library built
-- Use ftello() and fseeko() if available instead of ftell() and fseek()
-- Provide two versions of all functions that use the z_off_t type for
-  binary compatibility -- a normal version and a 64-bit offset version,
-  per the Large File Support Extension when _LARGEFILE64_SOURCE is
-  defined; use the 64-bit versions by default when _FILE_OFFSET_BITS
-  is defined to be 64
-- Add a --uname= option to configure to perhaps help with cross-compiling
-
-Changes in 1.2.3.2 (3 September 2006)
-- Turn off silly Borland warnings [Hay]
-- Use off64_t and define _LARGEFILE64_SOURCE when present
-- Fix missing dependency on inffixed.h in Makefile.in
-- Rig configure --shared to build both shared and static [Teredesai, Truta]
-- Remove zconf.in.h and instead create a new zlibdefs.h file
-- Fix contrib/minizip/unzip.c non-encrypted after encrypted [Vollant]
-- Add treebuild.xml (see http://treebuild.metux.de/) [Weigelt]
-
-Changes in 1.2.3.1 (16 August 2006)
-- Add watcom directory with OpenWatcom make files [Daniel]
-- Remove #undef of FAR in zconf.in.h for MVS [Fedtke]
-- Update make_vms.com [Zinser]
-- Use -fPIC for shared build in configure [Teredesai, Nicholson]
-- Use only major version number for libz.so on IRIX and OSF1 [Reinholdtsen]
-- Use fdopen() (not _fdopen()) for Interix in zutil.h [BŠck]
-- Add some FAQ entries about the contrib directory
-- Update the MVS question in the FAQ
-- Avoid extraneous reads after EOF in gzio.c [Brown]
-- Correct spelling of "successfully" in gzio.c [Randers-Pehrson]
-- Add comments to zlib.h about gzerror() usage [Brown]
-- Set extra flags in gzip header in gzopen() like deflate() does
-- Make configure options more compatible with double-dash conventions
-  [Weigelt]
-- Clean up compilation under Solaris SunStudio cc [Rowe, Reinholdtsen]
-- Fix uninstall target in Makefile.in [Truta]
-- Add pkgconfig support [Weigelt]
-- Use $(DESTDIR) macro in Makefile.in [Reinholdtsen, Weigelt]
-- Replace set_data_type() with a more accurate detect_data_type() in
-  trees.c, according to the txtvsbin.txt document [Truta]
-- Swap the order of #include <stdio.h> and #include "zlib.h" in
-  gzio.c, example.c and minigzip.c [Truta]
-- Shut up annoying VS2005 warnings about standard C deprecation [Rowe,
-  Truta] (where?)
-- Fix target "clean" from win32/Makefile.bor [Truta]
-- Create .pdb and .manifest files in win32/makefile.msc [Ziegler, Rowe]
-- Update zlib www home address in win32/DLL_FAQ.txt [Truta]
-- Update contrib/masmx86/inffas32.asm for VS2005 [Vollant, Van Wassenhove]
-- Enable browse info in the "Debug" and "ASM Debug" configurations in
-  the Visual C++ 6 project, and set (non-ASM) "Debug" as default [Truta]
-- Add pkgconfig support [Weigelt]
-- Add ZLIB_VER_MAJOR, ZLIB_VER_MINOR and ZLIB_VER_REVISION in zlib.h,
-  for use in win32/zlib1.rc [Polushin, Rowe, Truta]
-- Add a document that explains the new text detection scheme to
-  doc/txtvsbin.txt [Truta]
-- Add rfc1950.txt, rfc1951.txt and rfc1952.txt to doc/ [Truta]
-- Move algorithm.txt into doc/ [Truta]
-- Synchronize FAQ with website
-- Fix compressBound(), was low for some pathological cases [Fearnley]
-- Take into account wrapper variations in deflateBound()
-- Set examples/zpipe.c input and output to binary mode for Windows
-- Update examples/zlib_how.html with new zpipe.c (also web site)
-- Fix some warnings in examples/gzlog.c and examples/zran.c (it seems
-  that gcc became pickier in 4.0)
-- Add zlib.map for Linux: "All symbols from zlib-1.1.4 remain
-  un-versioned, the patch adds versioning only for symbols introduced in
-  zlib-1.2.0 or later.  It also declares as local those symbols which are
-  not designed to be exported." [Levin]
-- Update Z_PREFIX list in zconf.in.h, add --zprefix option to configure
-- Do not initialize global static by default in trees.c, add a response
-  NO_INIT_GLOBAL_POINTERS to initialize them if needed [Marquess]
-- Don't use strerror() in gzio.c under WinCE [Yakimov]
-- Don't use errno.h in zutil.h under WinCE [Yakimov]
-- Move arguments for AR to its usage to allow replacing ar [Marot]
-- Add HAVE_VISIBILITY_PRAGMA in zconf.in.h for Mozilla [Randers-Pehrson]
-- Improve inflateInit() and inflateInit2() documentation
-- Fix structure size comment in inflate.h
-- Change configure help option from --h* to --help [Santos]
-
-Changes in 1.2.3 (18 July 2005)
-- Apply security vulnerability fixes to contrib/infback9 as well
-- Clean up some text files (carriage returns, trailing space)
-- Update testzlib, vstudio, masmx64, and masmx86 in contrib [Vollant]
-
-Changes in 1.2.2.4 (11 July 2005)
-- Add inflatePrime() function for starting inflation at bit boundary
-- Avoid some Visual C warnings in deflate.c
-- Avoid more silly Visual C warnings in inflate.c and inftrees.c for 64-bit
-  compile
-- Fix some spelling errors in comments [Betts]
-- Correct inflateInit2() error return documentation in zlib.h
-- Add zran.c example of compressed data random access to examples
-  directory, shows use of inflatePrime()
-- Fix cast for assignments to strm->state in inflate.c and infback.c
-- Fix zlibCompileFlags() in zutil.c to use 1L for long shifts [Oberhumer]
-- Move declarations of gf2 functions to right place in crc32.c [Oberhumer]
-- Add cast in trees.c t avoid a warning [Oberhumer]
-- Avoid some warnings in fitblk.c, gun.c, gzjoin.c in examples [Oberhumer]
-- Update make_vms.com [Zinser]
-- Initialize state->write in inflateReset() since copied in inflate_fast()
-- Be more strict on incomplete code sets in inflate_table() and increase
-  ENOUGH and MAXD -- this repairs a possible security vulnerability for
-  invalid inflate input.  Thanks to Tavis Ormandy and Markus Oberhumer for
-  discovering the vulnerability and providing test cases.
-- Add ia64 support to configure for HP-UX [Smith]
-- Add error return to gzread() for format or i/o error [Levin]
-- Use malloc.h for OS/2 [Necasek]
-
-Changes in 1.2.2.3 (27 May 2005)
-- Replace 1U constants in inflate.c and inftrees.c for 64-bit compile
-- Typecast fread() return values in gzio.c [Vollant]
-- Remove trailing space in minigzip.c outmode (VC++ can't deal with it)
-- Fix crc check bug in gzread() after gzungetc() [Heiner]
-- Add the deflateTune() function to adjust internal compression parameters
-- Add a fast gzip decompressor, gun.c, to examples (use of inflateBack)
-- Remove an incorrect assertion in examples/zpipe.c
-- Add C++ wrapper in infback9.h [Donais]
-- Fix bug in inflateCopy() when decoding fixed codes
-- Note in zlib.h how much deflateSetDictionary() actually uses
-- Remove USE_DICT_HEAD in deflate.c (would mess up inflate if used)
-- Add _WIN32_WCE to define WIN32 in zconf.in.h [Spencer]
-- Don't include stderr.h or errno.h for _WIN32_WCE in zutil.h [Spencer]
-- Add gzdirect() function to indicate transparent reads
-- Update contrib/minizip [Vollant]
-- Fix compilation of deflate.c when both ASMV and FASTEST [Oberhumer]
-- Add casts in crc32.c to avoid warnings [Oberhumer]
-- Add contrib/masmx64 [Vollant]
-- Update contrib/asm586, asm686, masmx86, testzlib, vstudio [Vollant]
-
-Changes in 1.2.2.2 (30 December 2004)
-- Replace structure assignments in deflate.c and inflate.c with zmemcpy to
-  avoid implicit memcpy calls (portability for no-library compilation)
-- Increase sprintf() buffer size in gzdopen() to allow for large numbers
-- Add INFLATE_STRICT to check distances against zlib header
-- Improve WinCE errno handling and comments [Chang]
-- Remove comment about no gzip header processing in FAQ
-- Add Z_FIXED strategy option to deflateInit2() to force fixed trees
-- Add updated make_vms.com [Coghlan], update README
-- Create a new "examples" directory, move gzappend.c there, add zpipe.c,
-  fitblk.c, gzlog.[ch], gzjoin.c, and zlib_how.html.
-- Add FAQ entry and comments in deflate.c on uninitialized memory access
-- Add Solaris 9 make options in configure [Gilbert]
-- Allow strerror() usage in gzio.c for STDC
-- Fix DecompressBuf in contrib/delphi/ZLib.pas [ManChesTer]
-- Update contrib/masmx86/inffas32.asm and gvmat32.asm [Vollant]
-- Use z_off_t for adler32_combine() and crc32_combine() lengths
-- Make adler32() much faster for small len
-- Use OS_CODE in deflate() default gzip header
-
-Changes in 1.2.2.1 (31 October 2004)
-- Allow inflateSetDictionary() call for raw inflate
-- Fix inflate header crc check bug for file names and comments
-- Add deflateSetHeader() and gz_header structure for custom gzip headers
-- Add inflateGetheader() to retrieve gzip headers
-- Add crc32_combine() and adler32_combine() functions
-- Add alloc_func, free_func, in_func, out_func to Z_PREFIX list
-- Use zstreamp consistently in zlib.h (inflate_back functions)
-- Remove GUNZIP condition from definition of inflate_mode in inflate.h
-  and in contrib/inflate86/inffast.S [Truta, Anderson]
-- Add support for AMD64 in contrib/inflate86/inffas86.c [Anderson]
-- Update projects/README.projects and projects/visualc6 [Truta]
-- Update win32/DLL_FAQ.txt [Truta]
-- Avoid warning under NO_GZCOMPRESS in gzio.c; fix typo [Truta]
-- Deprecate Z_ASCII; use Z_TEXT instead [Truta]
-- Use a new algorithm for setting strm->data_type in trees.c [Truta]
-- Do not define an exit() prototype in zutil.c unless DEBUG defined
-- Remove prototype of exit() from zutil.c, example.c, minigzip.c [Truta]
-- Add comment in zlib.h for Z_NO_FLUSH parameter to deflate()
-- Fix Darwin build version identification [Peterson]
-
-Changes in 1.2.2 (3 October 2004)
-- Update zlib.h comments on gzip in-memory processing
-- Set adler to 1 in inflateReset() to support Java test suite [Walles]
-- Add contrib/dotzlib [Ravn]
-- Update win32/DLL_FAQ.txt [Truta]
-- Update contrib/minizip [Vollant]
-- Move contrib/visual-basic.txt to old/ [Truta]
-- Fix assembler builds in projects/visualc6/ [Truta]
-
-Changes in 1.2.1.2 (9 September 2004)
-- Update INDEX file
-- Fix trees.c to update strm->data_type (no one ever noticed!)
-- Fix bug in error case in inflate.c, infback.c, and infback9.c [Brown]
-- Add "volatile" to crc table flag declaration (for DYNAMIC_CRC_TABLE)
-- Add limited multitasking protection to DYNAMIC_CRC_TABLE
-- Add NO_vsnprintf for VMS in zutil.h [Mozilla]
-- Don't declare strerror() under VMS [Mozilla]
-- Add comment to DYNAMIC_CRC_TABLE to use get_crc_table() to initialize
-- Update contrib/ada [Anisimkov]
-- Update contrib/minizip [Vollant]
-- Fix configure to not hardcode directories for Darwin [Peterson]
-- Fix gzio.c to not return error on empty files [Brown]
-- Fix indentation; update version in contrib/delphi/ZLib.pas and
-  contrib/pascal/zlibpas.pas [Truta]
-- Update mkasm.bat in contrib/masmx86 [Truta]
-- Update contrib/untgz [Truta]
-- Add projects/README.projects [Truta]
-- Add project for MS Visual C++ 6.0 in projects/visualc6 [Cadieux, Truta]
-- Update win32/DLL_FAQ.txt [Truta]
-- Update list of Z_PREFIX symbols in zconf.h [Randers-Pehrson, Truta]
-- Remove an unnecessary assignment to curr in inftrees.c [Truta]
-- Add OS/2 to exe builds in configure [Poltorak]
-- Remove err dummy parameter in zlib.h [Kientzle]
-
-Changes in 1.2.1.1 (9 January 2004)
-- Update email address in README
-- Several FAQ updates
-- Fix a big fat bug in inftrees.c that prevented decoding valid
-  dynamic blocks with only literals and no distance codes --
-  Thanks to "Hot Emu" for the bug report and sample file
-- Add a note to puff.c on no distance codes case.
-
-Changes in 1.2.1 (17 November 2003)
-- Remove a tab in contrib/gzappend/gzappend.c
-- Update some interfaces in contrib for new zlib functions
-- Update zlib version number in some contrib entries
-- Add Windows CE definition for ptrdiff_t in zutil.h [Mai, Truta]
-- Support shared libraries on Hurd and KFreeBSD [Brown]
-- Fix error in NO_DIVIDE option of adler32.c
-
-Changes in 1.2.0.8 (4 November 2003)
-- Update version in contrib/delphi/ZLib.pas and contrib/pascal/zlibpas.pas
-- Add experimental NO_DIVIDE #define in adler32.c
-    - Possibly faster on some processors (let me know if it is)
-- Correct Z_BLOCK to not return on first inflate call if no wrap
-- Fix strm->data_type on inflate() return to correctly indicate EOB
-- Add deflatePrime() function for appending in the middle of a byte
-- Add contrib/gzappend for an example of appending to a stream
-- Update win32/DLL_FAQ.txt [Truta]
-- Delete Turbo C comment in README [Truta]
-- Improve some indentation in zconf.h [Truta]
-- Fix infinite loop on bad input in configure script [Church]
-- Fix gzeof() for concatenated gzip files [Johnson]
-- Add example to contrib/visual-basic.txt [Michael B.]
-- Add -p to mkdir's in Makefile.in [vda]
-- Fix configure to properly detect presence or lack of printf functions
-- Add AS400 support [Monnerat]
-- Add a little Cygwin support [Wilson]
-
-Changes in 1.2.0.7 (21 September 2003)
-- Correct some debug formats in contrib/infback9
-- Cast a type in a debug statement in trees.c
-- Change search and replace delimiter in configure from % to # [Beebe]
-- Update contrib/untgz to 0.2 with various fixes [Truta]
-- Add build support for Amiga [Nikl]
-- Remove some directories in old that have been updated to 1.2
-- Add dylib building for Mac OS X in configure and Makefile.in
-- Remove old distribution stuff from Makefile
-- Update README to point to DLL_FAQ.txt, and add comment on Mac OS X
-- Update links in README
-
-Changes in 1.2.0.6 (13 September 2003)
-- Minor FAQ updates
-- Update contrib/minizip to 1.00 [Vollant]
-- Remove test of gz functions in example.c when GZ_COMPRESS defined [Truta]
-- Update POSTINC comment for 68060 [Nikl]
-- Add contrib/infback9 with deflate64 decoding (unsupported)
-- For MVS define NO_vsnprintf and undefine FAR [van Burik]
-- Add pragma for fdopen on MVS [van Burik]
-
-Changes in 1.2.0.5 (8 September 2003)
-- Add OF to inflateBackEnd() declaration in zlib.h
-- Remember start when using gzdopen in the middle of a file
-- Use internal off_t counters in gz* functions to properly handle seeks
-- Perform more rigorous check for distance-too-far in inffast.c
-- Add Z_BLOCK flush option to return from inflate at block boundary
-- Set strm->data_type on return from inflate
-    - Indicate bits unused, if at block boundary, and if in last block
-- Replace size_t with ptrdiff_t in crc32.c, and check for correct size
-- Add condition so old NO_DEFLATE define still works for compatibility
-- FAQ update regarding the Windows DLL [Truta]
-- INDEX update: add qnx entry, remove aix entry [Truta]
-- Install zlib.3 into mandir [Wilson]
-- Move contrib/zlib_dll_FAQ.txt to win32/DLL_FAQ.txt; update [Truta]
-- Adapt the zlib interface to the new DLL convention guidelines [Truta]
-- Introduce ZLIB_WINAPI macro to allow the export of functions using
-  the WINAPI calling convention, for Visual Basic [Vollant, Truta]
-- Update msdos and win32 scripts and makefiles [Truta]
-- Export symbols by name, not by ordinal, in win32/zlib.def [Truta]
-- Add contrib/ada [Anisimkov]
-- Move asm files from contrib/vstudio/vc70_32 to contrib/asm386 [Truta]
-- Rename contrib/asm386 to contrib/masmx86 [Truta, Vollant]
-- Add contrib/masm686 [Truta]
-- Fix offsets in contrib/inflate86 and contrib/masmx86/inffas32.asm
-  [Truta, Vollant]
-- Update contrib/delphi; rename to contrib/pascal; add example [Truta]
-- Remove contrib/delphi2; add a new contrib/delphi [Truta]
-- Avoid inclusion of the nonstandard <memory.h> in contrib/iostream,
-  and fix some method prototypes [Truta]
-- Fix the ZCR_SEED2 constant to avoid warnings in contrib/minizip
-  [Truta]
-- Avoid the use of backslash (\) in contrib/minizip [Vollant]
-- Fix file time handling in contrib/untgz; update makefiles [Truta]
-- Update contrib/vstudio/vc70_32 to comply with the new DLL guidelines
-  [Vollant]
-- Remove contrib/vstudio/vc15_16 [Vollant]
-- Rename contrib/vstudio/vc70_32 to contrib/vstudio/vc7 [Truta]
-- Update README.contrib [Truta]
-- Invert the assignment order of match_head and s->prev[...] in
-  INSERT_STRING [Truta]
-- Compare TOO_FAR with 32767 instead of 32768, to avoid 16-bit warnings
-  [Truta]
-- Compare function pointers with 0, not with NULL or Z_NULL [Truta]
-- Fix prototype of syncsearch in inflate.c [Truta]
-- Introduce ASMINF macro to be enabled when using an ASM implementation
-  of inflate_fast [Truta]
-- Change NO_DEFLATE to NO_GZCOMPRESS [Truta]
-- Modify test_gzio in example.c to take a single file name as a
-  parameter [Truta]
-- Exit the example.c program if gzopen fails [Truta]
-- Add type casts around strlen in example.c [Truta]
-- Remove casting to sizeof in minigzip.c; give a proper type
-  to the variable compared with SUFFIX_LEN [Truta]
-- Update definitions of STDC and STDC99 in zconf.h [Truta]
-- Synchronize zconf.h with the new Windows DLL interface [Truta]
-- Use SYS16BIT instead of __32BIT__ to distinguish between
-  16- and 32-bit platforms [Truta]
-- Use far memory allocators in small 16-bit memory models for
-  Turbo C [Truta]
-- Add info about the use of ASMV, ASMINF and ZLIB_WINAPI in
-  zlibCompileFlags [Truta]
-- Cygwin has vsnprintf [Wilson]
-- In Windows16, OS_CODE is 0, as in MSDOS [Truta]
-- In Cygwin, OS_CODE is 3 (Unix), not 11 (Windows32) [Wilson]
-
-Changes in 1.2.0.4 (10 August 2003)
-- Minor FAQ updates
-- Be more strict when checking inflateInit2's windowBits parameter
-- Change NO_GUNZIP compile option to NO_GZIP to cover deflate as well
-- Add gzip wrapper option to deflateInit2 using windowBits
-- Add updated QNX rule in configure and qnx directory [Bonnefoy]
-- Make inflate distance-too-far checks more rigorous
-- Clean up FAR usage in inflate
-- Add casting to sizeof() in gzio.c and minigzip.c
-
-Changes in 1.2.0.3 (19 July 2003)
-- Fix silly error in gzungetc() implementation [Vollant]
-- Update contrib/minizip and contrib/vstudio [Vollant]
-- Fix printf format in example.c
-- Correct cdecl support in zconf.in.h [Anisimkov]
-- Minor FAQ updates
-
-Changes in 1.2.0.2 (13 July 2003)
-- Add ZLIB_VERNUM in zlib.h for numerical preprocessor comparisons
-- Attempt to avoid warnings in crc32.c for pointer-int conversion
-- Add AIX to configure, remove aix directory [Bakker]
-- Add some casts to minigzip.c
-- Improve checking after insecure sprintf() or vsprintf() calls
-- Remove #elif's from crc32.c
-- Change leave label to inf_leave in inflate.c and infback.c to avoid
-  library conflicts
-- Remove inflate gzip decoding by default--only enable gzip decoding by
-  special request for stricter backward compatibility
-- Add zlibCompileFlags() function to return compilation information
-- More typecasting in deflate.c to avoid warnings
-- Remove leading underscore from _Capital #defines [Truta]
-- Fix configure to link shared library when testing
-- Add some Windows CE target adjustments [Mai]
-- Remove #define ZLIB_DLL in zconf.h [Vollant]
-- Add zlib.3 [Rodgers]
-- Update RFC URL in deflate.c and algorithm.txt [Mai]
-- Add zlib_dll_FAQ.txt to contrib [Truta]
-- Add UL to some constants [Truta]
-- Update minizip and vstudio [Vollant]
-- Remove vestigial NEED_DUMMY_RETURN from zconf.in.h
-- Expand use of NO_DUMMY_DECL to avoid all dummy structures
-- Added iostream3 to contrib [Schwardt]
-- Replace rewind() with fseek() for WinCE [Truta]
-- Improve setting of zlib format compression level flags
-    - Report 0 for huffman and rle strategies and for level == 0 or 1
-    - Report 2 only for level == 6
-- Only deal with 64K limit when necessary at compile time [Truta]
-- Allow TOO_FAR check to be turned off at compile time [Truta]
-- Add gzclearerr() function [Souza]
-- Add gzungetc() function
-
-Changes in 1.2.0.1 (17 March 2003)
-- Add Z_RLE strategy for run-length encoding [Truta]
-    - When Z_RLE requested, restrict matches to distance one
-    - Update zlib.h, minigzip.c, gzopen(), gzdopen() for Z_RLE
-- Correct FASTEST compilation to allow level == 0
-- Clean up what gets compiled for FASTEST
-- Incorporate changes to zconf.in.h [Vollant]
-    - Refine detection of Turbo C need for dummy returns
-    - Refine ZLIB_DLL compilation
-    - Include additional header file on VMS for off_t typedef
-- Try to use _vsnprintf where it supplants vsprintf [Vollant]
-- Add some casts in inffast.c
-- Enchance comments in zlib.h on what happens if gzprintf() tries to
-  write more than 4095 bytes before compression
-- Remove unused state from inflateBackEnd()
-- Remove exit(0) from minigzip.c, example.c
-- Get rid of all those darn tabs
-- Add "check" target to Makefile.in that does the same thing as "test"
-- Add "mostlyclean" and "maintainer-clean" targets to Makefile.in
-- Update contrib/inflate86 [Anderson]
-- Update contrib/testzlib, contrib/vstudio, contrib/minizip [Vollant]
-- Add msdos and win32 directories with makefiles [Truta]
-- More additions and improvements to the FAQ
-
-Changes in 1.2.0 (9 March 2003)
-- New and improved inflate code
-    - About 20% faster
-    - Does not allocate 32K window unless and until needed
-    - Automatically detects and decompresses gzip streams
-    - Raw inflate no longer needs an extra dummy byte at end
-    - Added inflateBack functions using a callback interface--even faster
-      than inflate, useful for file utilities (gzip, zip)
-    - Added inflateCopy() function to record state for random access on
-      externally generated deflate streams (e.g. in gzip files)
-    - More readable code (I hope)
-- New and improved crc32()
-    - About 50% faster, thanks to suggestions from Rodney Brown
-- Add deflateBound() and compressBound() functions
-- Fix memory leak in deflateInit2()
-- Permit setting dictionary for raw deflate (for parallel deflate)
-- Fix const declaration for gzwrite()
-- Check for some malloc() failures in gzio.c
-- Fix bug in gzopen() on single-byte file 0x1f
-- Fix bug in gzread() on concatenated file with 0x1f at end of buffer
-  and next buffer doesn't start with 0x8b
-- Fix uncompress() to return Z_DATA_ERROR on truncated input
-- Free memory at end of example.c
-- Remove MAX #define in trees.c (conflicted with some libraries)
-- Fix static const's in deflate.c, gzio.c, and zutil.[ch]
-- Declare malloc() and free() in gzio.c if STDC not defined
-- Use malloc() instead of calloc() in zutil.c if int big enough
-- Define STDC for AIX
-- Add aix/ with approach for compiling shared library on AIX
-- Add HP-UX support for shared libraries in configure
-- Add OpenUNIX support for shared libraries in configure
-- Use $cc instead of gcc to build shared library
-- Make prefix directory if needed when installing
-- Correct Macintosh avoidance of typedef Byte in zconf.h
-- Correct Turbo C memory allocation when under Linux
-- Use libz.a instead of -lz in Makefile (assure use of compiled library)
-- Update configure to check for snprintf or vsnprintf functions and their
-  return value, warn during make if using an insecure function
-- Fix configure problem with compile-time knowledge of HAVE_UNISTD_H that
-  is lost when library is used--resolution is to build new zconf.h
-- Documentation improvements (in zlib.h):
-    - Document raw deflate and inflate
-    - Update RFCs URL
-    - Point out that zlib and gzip formats are different
-    - Note that Z_BUF_ERROR is not fatal
-    - Document string limit for gzprintf() and possible buffer overflow
-    - Note requirement on avail_out when flushing
-    - Note permitted values of flush parameter of inflate()
-- Add some FAQs (and even answers) to the FAQ
-- Add contrib/inflate86/ for x86 faster inflate
-- Add contrib/blast/ for PKWare Data Compression Library decompression
-- Add contrib/puff/ simple inflate for deflate format description
-
-Changes in 1.1.4 (11 March 2002)
-- ZFREE was repeated on same allocation on some error conditions.
-  This creates a security problem described in
-  http://www.zlib.org/advisory-2002-03-11.txt
-- Returned incorrect error (Z_MEM_ERROR) on some invalid data
-- Avoid accesses before window for invalid distances with inflate window
-  less than 32K.
-- force windowBits > 8 to avoid a bug in the encoder for a window size
-  of 256 bytes. (A complete fix will be available in 1.1.5).
-
-Changes in 1.1.3 (9 July 1998)
-- fix "an inflate input buffer bug that shows up on rare but persistent
-  occasions" (Mark)
-- fix gzread and gztell for concatenated .gz files (Didier Le Botlan)
-- fix gzseek(..., SEEK_SET) in write mode
-- fix crc check after a gzeek (Frank Faubert)
-- fix miniunzip when the last entry in a zip file is itself a zip file
-  (J Lillge)
-- add contrib/asm586 and contrib/asm686 (Brian Raiter)
-  See http://www.muppetlabs.com/~breadbox/software/assembly.html
-- add support for Delphi 3 in contrib/delphi (Bob Dellaca)
-- add support for C++Builder 3 and Delphi 3 in contrib/delphi2 (Davide Moretti)
-- do not exit prematurely in untgz if 0 at start of block (Magnus Holmgren)
-- use macro EXTERN instead of extern to support DLL for BeOS (Sander Stoks)
-- added a FAQ file
-
-- Support gzdopen on Mac with Metrowerks (Jason Linhart)
-- Do not redefine Byte on Mac (Brad Pettit & Jason Linhart)
-- define SEEK_END too if SEEK_SET is not defined (Albert Chin-A-Young)
-- avoid some warnings with Borland C (Tom Tanner)
-- fix a problem in contrib/minizip/zip.c for 16-bit MSDOS (Gilles Vollant)
-- emulate utime() for WIN32 in contrib/untgz  (Gilles Vollant)
-- allow several arguments to configure (Tim Mooney, Frodo Looijaard)
-- use libdir and includedir in Makefile.in (Tim Mooney)
-- support shared libraries on OSF1 V4 (Tim Mooney)
-- remove so_locations in "make clean"  (Tim Mooney)
-- fix maketree.c compilation error (Glenn, Mark)
-- Python interface to zlib now in Python 1.5 (Jeremy Hylton)
-- new Makefile.riscos (Rich Walker)
-- initialize static descriptors in trees.c for embedded targets (Nick Smith)
-- use "foo-gz" in example.c for RISCOS and VMS (Nick Smith)
-- add the OS/2 files in Makefile.in too (Andrew Zabolotny)
-- fix fdopen and halloc macros for Microsoft C 6.0 (Tom Lane)
-- fix maketree.c to allow clean compilation of inffixed.h (Mark)
-- fix parameter check in deflateCopy (Gunther Nikl)
-- cleanup trees.c, use compressed_len only in debug mode (Christian Spieler)
-- Many portability patches by Christian Spieler:
-  . zutil.c, zutil.h: added "const" for zmem*
-  . Make_vms.com: fixed some typos
-  . Make_vms.com: msdos/Makefile.*: removed zutil.h from some dependency lists
-  . msdos/Makefile.msc: remove "default rtl link library" info from obj files
-  . msdos/Makefile.*: use model-dependent name for the built zlib library
-  . msdos/Makefile.emx, nt/Makefile.emx, nt/Makefile.gcc:
-     new makefiles, for emx (DOS/OS2), emx&rsxnt and mingw32 (Windows 9x / NT)
-- use define instead of typedef for Bytef also for MSC small/medium (Tom Lane)
-- replace __far with _far for better portability (Christian Spieler, Tom Lane)
-- fix test for errno.h in configure (Tim Newsham)
-
-Changes in 1.1.2 (19 March 98)
-- added contrib/minzip, mini zip and unzip based on zlib (Gilles Vollant)
-  See http://www.winimage.com/zLibDll/unzip.html
-- preinitialize the inflate tables for fixed codes, to make the code
-  completely thread safe (Mark)
-- some simplifications and slight speed-up to the inflate code (Mark)
-- fix gzeof on non-compressed files (Allan Schrum)
-- add -std1 option in configure for OSF1 to fix gzprintf (Martin Mokrejs)
-- use default value of 4K for Z_BUFSIZE for 16-bit MSDOS (Tim Wegner + Glenn)
-- added os2/Makefile.def and os2/zlib.def (Andrew Zabolotny)
-- add shared lib support for UNIX_SV4.2MP (MATSUURA Takanori)
-- do not wrap extern "C" around system includes (Tom Lane)
-- mention zlib binding for TCL in README (Andreas Kupries)
-- added amiga/Makefile.pup for Amiga powerUP SAS/C PPC (Andreas Kleinert)
-- allow "make install prefix=..." even after configure (Glenn Randers-Pehrson)
-- allow "configure --prefix $HOME" (Tim Mooney)
-- remove warnings in example.c and gzio.c (Glenn Randers-Pehrson)
-- move Makefile.sas to amiga/Makefile.sas
-
-Changes in 1.1.1 (27 Feb 98)
-- fix macros _tr_tally_* in deflate.h for debug mode  (Glenn Randers-Pehrson)
-- remove block truncation heuristic which had very marginal effect for zlib
-  (smaller lit_bufsize than in gzip 1.2.4) and degraded a little the
-  compression ratio on some files. This also allows inlining _tr_tally for
-  matches in deflate_slow.
-- added msdos/Makefile.w32 for WIN32 Microsoft Visual C++ (Bob Frazier)
-
-Changes in 1.1.0 (24 Feb 98)
-- do not return STREAM_END prematurely in inflate (John Bowler)
-- revert to the zlib 1.0.8 inflate to avoid the gcc 2.8.0 bug (Jeremy Buhler)
-- compile with -DFASTEST to get compression code optimized for speed only
-- in minigzip, try mmap'ing the input file first (Miguel Albrecht)
-- increase size of I/O buffers in minigzip.c and gzio.c (not a big gain
-  on Sun but significant on HP)
-
-- add a pointer to experimental unzip library in README (Gilles Vollant)
-- initialize variable gcc in configure (Chris Herborth)
-
-Changes in 1.0.9 (17 Feb 1998)
-- added gzputs and gzgets functions
-- do not clear eof flag in gzseek (Mark Diekhans)
-- fix gzseek for files in transparent mode (Mark Diekhans)
-- do not assume that vsprintf returns the number of bytes written (Jens Krinke)
-- replace EXPORT with ZEXPORT to avoid conflict with other programs
-- added compress2 in zconf.h, zlib.def, zlib.dnt
-- new asm code from Gilles Vollant in contrib/asm386
-- simplify the inflate code (Mark):
- . Replace ZALLOC's in huft_build() with single ZALLOC in inflate_blocks_new()
- . ZALLOC the length list in inflate_trees_fixed() instead of using stack
- . ZALLOC the value area for huft_build() instead of using stack
- . Simplify Z_FINISH check in inflate()
-
-- Avoid gcc 2.8.0 comparison bug a little differently than zlib 1.0.8
-- in inftrees.c, avoid cc -O bug on HP (Farshid Elahi)
-- in zconf.h move the ZLIB_DLL stuff earlier to avoid problems with
-  the declaration of FAR (Gilles VOllant)
-- install libz.so* with mode 755 (executable) instead of 644 (Marc Lehmann)
-- read_buf buf parameter of type Bytef* instead of charf*
-- zmemcpy parameters are of type Bytef*, not charf* (Joseph Strout)
-- do not redeclare unlink in minigzip.c for WIN32 (John Bowler)
-- fix check for presence of directories in "make install" (Ian Willis)
-
-Changes in 1.0.8 (27 Jan 1998)
-- fixed offsets in contrib/asm386/gvmat32.asm (Gilles Vollant)
-- fix gzgetc and gzputc for big endian systems (Markus Oberhumer)
-- added compress2() to allow setting the compression level
-- include sys/types.h to get off_t on some systems (Marc Lehmann & QingLong)
-- use constant arrays for the static trees in trees.c instead of computing
-  them at run time (thanks to Ken Raeburn for this suggestion). To create
-  trees.h, compile with GEN_TREES_H and run "make test".
-- check return code of example in "make test" and display result
-- pass minigzip command line options to file_compress
-- simplifying code of inflateSync to avoid gcc 2.8 bug
-
-- support CC="gcc -Wall" in configure -s (QingLong)
-- avoid a flush caused by ftell in gzopen for write mode (Ken Raeburn)
-- fix test for shared library support to avoid compiler warnings
-- zlib.lib -> zlib.dll in msdos/zlib.rc (Gilles Vollant)
-- check for TARGET_OS_MAC in addition to MACOS (Brad Pettit)
-- do not use fdopen for Metrowerks on Mac (Brad Pettit))
-- add checks for gzputc and gzputc in example.c
-- avoid warnings in gzio.c and deflate.c (Andreas Kleinert)
-- use const for the CRC table (Ken Raeburn)
-- fixed "make uninstall" for shared libraries
-- use Tracev instead of Trace in infblock.c
-- in example.c use correct compressed length for test_sync
-- suppress +vnocompatwarnings in configure for HPUX (not always supported)
-
-Changes in 1.0.7 (20 Jan 1998)
-- fix gzseek which was broken in write mode
-- return error for gzseek to negative absolute position
-- fix configure for Linux (Chun-Chung Chen)
-- increase stack space for MSC (Tim Wegner)
-- get_crc_table and inflateSyncPoint are EXPORTed (Gilles Vollant)
-- define EXPORTVA for gzprintf (Gilles Vollant)
-- added man page zlib.3 (Rick Rodgers)
-- for contrib/untgz, fix makedir() and improve Makefile
-
-- check gzseek in write mode in example.c
-- allocate extra buffer for seeks only if gzseek is actually called
-- avoid signed/unsigned comparisons (Tim Wegner, Gilles Vollant)
-- add inflateSyncPoint in zconf.h
-- fix list of exported functions in nt/zlib.dnt and mdsos/zlib.def
-
-Changes in 1.0.6 (19 Jan 1998)
-- add functions gzprintf, gzputc, gzgetc, gztell, gzeof, gzseek, gzrewind and
-  gzsetparams (thanks to Roland Giersig and Kevin Ruland for some of this code)
-- Fix a deflate bug occurring only with compression level 0 (thanks to
-  Andy Buckler for finding this one).
-- In minigzip, pass transparently also the first byte for .Z files.
-- return Z_BUF_ERROR instead of Z_OK if output buffer full in uncompress()
-- check Z_FINISH in inflate (thanks to Marc Schluper)
-- Implement deflateCopy (thanks to Adam Costello)
-- make static libraries by default in configure, add --shared option.
-- move MSDOS or Windows specific files to directory msdos
-- suppress the notion of partial flush to simplify the interface
-  (but the symbol Z_PARTIAL_FLUSH is kept for compatibility with 1.0.4)
-- suppress history buffer provided by application to simplify the interface
-  (this feature was not implemented anyway in 1.0.4)
-- next_in and avail_in must be initialized before calling inflateInit or
-  inflateInit2
-- add EXPORT in all exported functions (for Windows DLL)
-- added Makefile.nt (thanks to Stephen Williams)
-- added the unsupported "contrib" directory:
-   contrib/asm386/ by Gilles Vollant <info at winimage.com>
-        386 asm code replacing longest_match().
-   contrib/iostream/ by Kevin Ruland <kevin at rodin.wustl.edu>
-        A C++ I/O streams interface to the zlib gz* functions
-   contrib/iostream2/  by Tyge Løvset <Tyge.Lovset at cmr.no>
-        Another C++ I/O streams interface
-   contrib/untgz/  by "Pedro A. Aranda Guti\irrez" <paag at tid.es>
-        A very simple tar.gz file extractor using zlib
-   contrib/visual-basic.txt by Carlos Rios <c_rios at sonda.cl>
-        How to use compress(), uncompress() and the gz* functions from VB.
-- pass params -f (filtered data), -h (huffman only), -1 to -9 (compression
-  level) in minigzip (thanks to Tom Lane)
-
-- use const for rommable constants in deflate
-- added test for gzseek and gztell in example.c
-- add undocumented function inflateSyncPoint() (hack for Paul Mackerras)
-- add undocumented function zError to convert error code to string
-  (for Tim Smithers)
-- Allow compilation of gzio with -DNO_DEFLATE to avoid the compression code.
-- Use default memcpy for Symantec MSDOS compiler.
-- Add EXPORT keyword for check_func (needed for Windows DLL)
-- add current directory to LD_LIBRARY_PATH for "make test"
-- create also a link for libz.so.1
-- added support for FUJITSU UXP/DS (thanks to Toshiaki Nomura)
-- use $(SHAREDLIB) instead of libz.so in Makefile.in (for HPUX)
-- added -soname for Linux in configure (Chun-Chung Chen,
-- assign numbers to the exported functions in zlib.def (for Windows DLL)
-- add advice in zlib.h for best usage of deflateSetDictionary
-- work around compiler bug on Atari (cast Z_NULL in call of s->checkfn)
-- allow compilation with ANSI keywords only enabled for TurboC in large model
-- avoid "versionString"[0] (Borland bug)
-- add NEED_DUMMY_RETURN for Borland
-- use variable z_verbose for tracing in debug mode (L. Peter Deutsch).
-- allow compilation with CC
-- defined STDC for OS/2 (David Charlap)
-- limit external names to 8 chars for MVS (Thomas Lund)
-- in minigzip.c, use static buffers only for 16-bit systems
-- fix suffix check for "minigzip -d foo.gz"
-- do not return an error for the 2nd of two consecutive gzflush() (Felix Lee)
-- use _fdopen instead of fdopen for MSC >= 6.0 (Thomas Fanslau)
-- added makelcc.bat for lcc-win32 (Tom St Denis)
-- in Makefile.dj2, use copy and del instead of install and rm (Frank Donahoe)
-- Avoid expanded $Id: ChangeLog 21114 2010-05-10 07:14:43Z dtremenak $. Use "rcs -kb" or "cvs admin -kb" to avoid Id expansion.
-- check for unistd.h in configure (for off_t)
-- remove useless check parameter in inflate_blocks_free
-- avoid useless assignment of s->check to itself in inflate_blocks_new
-- do not flush twice in gzclose (thanks to Ken Raeburn)
-- rename FOPEN as F_OPEN to avoid clash with /usr/include/sys/file.h
-- use NO_ERRNO_H instead of enumeration of operating systems with errno.h
-- work around buggy fclose on pipes for HP/UX
-- support zlib DLL with BORLAND C++ 5.0 (thanks to Glenn Randers-Pehrson)
-- fix configure if CC is already equal to gcc
-
-Changes in 1.0.5 (3 Jan 98)
-- Fix inflate to terminate gracefully when fed corrupted or invalid data
-- Use const for rommable constants in inflate
-- Eliminate memory leaks on error conditions in inflate
-- Removed some vestigial code in inflate
-- Update web address in README
-
-Changes in 1.0.4 (24 Jul 96)
-- In very rare conditions, deflate(s, Z_FINISH) could fail to produce an EOF
-  bit, so the decompressor could decompress all the correct data but went
-  on to attempt decompressing extra garbage data. This affected minigzip too.
-- zlibVersion and gzerror return const char* (needed for DLL)
-- port to RISCOS (no fdopen, no multiple dots, no unlink, no fileno)
-- use z_error only for DEBUG (avoid problem with DLLs)
-
-Changes in 1.0.3 (2 Jul 96)
-- use z_streamp instead of z_stream *, which is now a far pointer in MSDOS
-  small and medium models; this makes the library incompatible with previous
-  versions for these models. (No effect in large model or on other systems.)
-- return OK instead of BUF_ERROR if previous deflate call returned with
-  avail_out as zero but there is nothing to do
-- added memcmp for non STDC compilers
-- define NO_DUMMY_DECL for more Mac compilers (.h files merged incorrectly)
-- define __32BIT__ if __386__ or i386 is defined (pb. with Watcom and SCO)
-- better check for 16-bit mode MSC (avoids problem with Symantec)
-
-Changes in 1.0.2 (23 May 96)
-- added Windows DLL support
-- added a function zlibVersion (for the DLL support)
-- fixed declarations using Bytef in infutil.c (pb with MSDOS medium model)
-- Bytef is define's instead of typedef'd only for Borland C
-- avoid reading uninitialized memory in example.c
-- mention in README that the zlib format is now RFC1950
-- updated Makefile.dj2
-- added algorithm.doc
-
-Changes in 1.0.1 (20 May 96) [1.0 skipped to avoid confusion]
-- fix array overlay in deflate.c which sometimes caused bad compressed data
-- fix inflate bug with empty stored block
-- fix MSDOS medium model which was broken in 0.99
-- fix deflateParams() which could generated bad compressed data.
-- Bytef is define'd instead of typedef'ed (work around Borland bug)
-- added an INDEX file
-- new makefiles for DJGPP (Makefile.dj2), 32-bit Borland (Makefile.b32),
-  Watcom (Makefile.wat), Amiga SAS/C (Makefile.sas)
-- speed up adler32 for modern machines without auto-increment
-- added -ansi for IRIX in configure
-- static_init_done in trees.c is an int
-- define unlink as delete for VMS
-- fix configure for QNX
-- add configure branch for SCO and HPUX
-- avoid many warnings (unused variables, dead assignments, etc...)
-- no fdopen for BeOS
-- fix the Watcom fix for 32 bit mode (define FAR as empty)
-- removed redefinition of Byte for MKWERKS
-- work around an MWKERKS bug (incorrect merge of all .h files)
-
-Changes in 0.99 (27 Jan 96)
-- allow preset dictionary shared between compressor and decompressor
-- allow compression level 0 (no compression)
-- add deflateParams in zlib.h: allow dynamic change of compression level
-  and compression strategy.
-- test large buffers and deflateParams in example.c
-- add optional "configure" to build zlib as a shared library
-- suppress Makefile.qnx, use configure instead
-- fixed deflate for 64-bit systems (detected on Cray)
-- fixed inflate_blocks for 64-bit systems (detected on Alpha)
-- declare Z_DEFLATED in zlib.h (possible parameter for deflateInit2)
-- always return Z_BUF_ERROR when deflate() has nothing to do
-- deflateInit and inflateInit are now macros to allow version checking
-- prefix all global functions and types with z_ with -DZ_PREFIX
-- make falloc completely reentrant (inftrees.c)
-- fixed very unlikely race condition in ct_static_init
-- free in reverse order of allocation to help memory manager
-- use zlib-1.0/* instead of zlib/* inside the tar.gz
-- make zlib warning-free with "gcc -O3 -Wall -Wwrite-strings -Wpointer-arith
-  -Wconversion -Wstrict-prototypes -Wmissing-prototypes"
-- allow gzread on concatenated .gz files
-- deflateEnd now returns Z_DATA_ERROR if it was premature
-- deflate is finally (?) fully deterministic (no matches beyond end of input)
-- Document Z_SYNC_FLUSH
-- add uninstall in Makefile
-- Check for __cpluplus in zlib.h
-- Better test in ct_align for partial flush
-- avoid harmless warnings for Borland C++
-- initialize hash_head in deflate.c
-- avoid warning on fdopen (gzio.c) for HP cc -Aa
-- include stdlib.h for STDC compilers
-- include errno.h for Cray
-- ignore error if ranlib doesn't exist
-- call ranlib twice for NeXTSTEP
-- use exec_prefix instead of prefix for libz.a
-- renamed ct_* as _tr_* to avoid conflict with applications
-- clear z->msg in inflateInit2 before any error return
-- initialize opaque in example.c, gzio.c, deflate.c and inflate.c
-- fixed typo in zconf.h (_GNUC__ => __GNUC__)
-- check for WIN32 in zconf.h and zutil.c (avoid farmalloc in 32-bit mode)
-- fix typo in Make_vms.com (f$trnlnm -> f$getsyi)
-- in fcalloc, normalize pointer if size > 65520 bytes
-- don't use special fcalloc for 32 bit Borland C++
-- use STDC instead of __GO32__ to avoid redeclaring exit, calloc, etc...
-- use Z_BINARY instead of BINARY
-- document that gzclose after gzdopen will close the file
-- allow "a" as mode in gzopen.
-- fix error checking in gzread
-- allow skipping .gz extra-field on pipes
-- added reference to Perl interface in README
-- put the crc table in FAR data (I dislike more and more the medium model :)
-- added get_crc_table
-- added a dimension to all arrays (Borland C can't count).
-- workaround Borland C bug in declaration of inflate_codes_new & inflate_fast
-- guard against multiple inclusion of *.h (for precompiled header on Mac)
-- Watcom C pretends to be Microsoft C small model even in 32 bit mode.
-- don't use unsized arrays to avoid silly warnings by Visual C++:
-     warning C4746: 'inflate_mask' : unsized array treated as  '__far'
-     (what's wrong with far data in far model?).
-- define enum out of inflate_blocks_state to allow compilation with C++
-
-Changes in 0.95 (16 Aug 95)
-- fix MSDOS small and medium model (now easier to adapt to any compiler)
-- inlined send_bits
-- fix the final (:-) bug for deflate with flush (output was correct but
-  not completely flushed in rare occasions).
-- default window size is same for compression and decompression
-  (it's now sufficient to set MAX_WBITS in zconf.h).
-- voidp -> voidpf and voidnp -> voidp (for consistency with other
-  typedefs and because voidnp was not near in large model).
-
-Changes in 0.94 (13 Aug 95)
-- support MSDOS medium model
-- fix deflate with flush (could sometimes generate bad output)
-- fix deflateReset (zlib header was incorrectly suppressed)
-- added support for VMS
-- allow a compression level in gzopen()
-- gzflush now calls fflush
-- For deflate with flush, flush even if no more input is provided.
-- rename libgz.a as libz.a
-- avoid complex expression in infcodes.c triggering Turbo C bug
-- work around a problem with gcc on Alpha (in INSERT_STRING)
-- don't use inline functions (problem with some gcc versions)
-- allow renaming of Byte, uInt, etc... with #define.
-- avoid warning about (unused) pointer before start of array in deflate.c
-- avoid various warnings in gzio.c, example.c, infblock.c, adler32.c, zutil.c
-- avoid reserved word 'new' in trees.c
-
-Changes in 0.93 (25 June 95)
-- temporarily disable inline functions
-- make deflate deterministic
-- give enough lookahead for PARTIAL_FLUSH
-- Set binary mode for stdin/stdout in minigzip.c for OS/2
-- don't even use signed char in inflate (not portable enough)
-- fix inflate memory leak for segmented architectures
-
-Changes in 0.92 (3 May 95)
-- don't assume that char is signed (problem on SGI)
-- Clear bit buffer when starting a stored block
-- no memcpy on Pyramid
-- suppressed inftest.c
-- optimized fill_window, put longest_match inline for gcc
-- optimized inflate on stored blocks.
-- untabify all sources to simplify patches
-
-Changes in 0.91 (2 May 95)
-- Default MEM_LEVEL is 8 (not 9 for Unix) as documented in zlib.h
-- Document the memory requirements in zconf.h
-- added "make install"
-- fix sync search logic in inflateSync
-- deflate(Z_FULL_FLUSH) now works even if output buffer too short
-- after inflateSync, don't scare people with just "lo world"
-- added support for DJGPP
-
-Changes in 0.9 (1 May 95)
-- don't assume that zalloc clears the allocated memory (the TurboC bug
-  was Mark's bug after all :)
-- let again gzread copy uncompressed data unchanged (was working in 0.71)
-- deflate(Z_FULL_FLUSH), inflateReset and inflateSync are now fully implemented
-- added a test of inflateSync in example.c
-- moved MAX_WBITS to zconf.h because users might want to change that.
-- document explicitly that zalloc(64K) on MSDOS must return a normalized
-  pointer (zero offset)
-- added Makefiles for Microsoft C, Turbo C, Borland C++
-- faster crc32()
-
-Changes in 0.8 (29 April 95)
-- added fast inflate (inffast.c)
-- deflate(Z_FINISH) now returns Z_STREAM_END when done. Warning: this
-  is incompatible with previous versions of zlib which returned Z_OK.
-- work around a TurboC compiler bug (bad code for b << 0, see infutil.h)
-  (actually that was not a compiler bug, see 0.81 above)
-- gzread no longer reads one extra byte in certain cases
-- In gzio destroy(), don't reference a freed structure
-- avoid many warnings for MSDOS
-- avoid the ERROR symbol which is used by MS Windows
-
-Changes in 0.71 (14 April 95)
-- Fixed more MSDOS compilation problems :( There is still a bug with
-  TurboC large model.
-
-Changes in 0.7 (14 April 95)
-- Added full inflate support.
-- Simplified the crc32() interface. The pre- and post-conditioning
-  (one's complement) is now done inside crc32(). WARNING: this is
-  incompatible with previous versions; see zlib.h for the new usage.
-
-Changes in 0.61 (12 April 95)
-- workaround for a bug in TurboC. example and minigzip now work on MSDOS.
-
-Changes in 0.6 (11 April 95)
-- added minigzip.c
-- added gzdopen to reopen a file descriptor as gzFile
-- added transparent reading of non-gziped files in gzread.
-- fixed bug in gzread (don't read crc as data)
-- fixed bug in destroy (gzio.c) (don't return Z_STREAM_END for gzclose).
-- don't allocate big arrays in the stack (for MSDOS)
-- fix some MSDOS compilation problems
-
-Changes in 0.5:
-- do real compression in deflate.c. Z_PARTIAL_FLUSH is supported but
-  not yet Z_FULL_FLUSH.
-- support decompression but only in a single step (forced Z_FINISH)
-- added opaque object for zalloc and zfree.
-- added deflateReset and inflateReset
-- added a variable zlib_version for consistency checking.
-- renamed the 'filter' parameter of deflateInit2 as 'strategy'.
-  Added Z_FILTERED and Z_HUFFMAN_ONLY constants.
-
-Changes in 0.4:
-- avoid "zip" everywhere, use zlib instead of ziplib.
-- suppress Z_BLOCK_FLUSH, interpret Z_PARTIAL_FLUSH as block flush
-  if compression method == 8.
-- added adler32 and crc32
-- renamed deflateOptions as deflateInit2, call one or the other but not both
-- added the method parameter for deflateInit2.
-- added inflateInit2
-- simplied considerably deflateInit and inflateInit by not supporting
-  user-provided history buffer. This is supported only in deflateInit2
-  and inflateInit2.
-
-Changes in 0.3:
-- prefix all macro names with Z_
-- use Z_FINISH instead of deflateEnd to finish compression.
-- added Z_HUFFMAN_ONLY
-- added gzerror()
diff --git a/src/other/zlib/FAQ b/src/other/zlib/FAQ
deleted file mode 100644
index 1a22750..0000000
--- a/src/other/zlib/FAQ
+++ /dev/null
@@ -1,366 +0,0 @@
-
-                Frequently Asked Questions about zlib
-
-
-If your question is not there, please check the zlib home page
-http://zlib.net/ which may have more recent information.
-The lastest zlib FAQ is at http://zlib.net/zlib_faq.html
-
-
- 1. Is zlib Y2K-compliant?
-
-    Yes. zlib doesn't handle dates.
-
- 2. Where can I get a Windows DLL version?
-
-    The zlib sources can be compiled without change to produce a DLL.  See the
-    file win32/DLL_FAQ.txt in the zlib distribution.  Pointers to the
-    precompiled DLL are found in the zlib web site at http://zlib.net/ .
-
- 3. Where can I get a Visual Basic interface to zlib?
-
-    See
-        * http://marknelson.us/1997/01/01/zlib-engine/
-        * win32/DLL_FAQ.txt in the zlib distribution
-
- 4. compress() returns Z_BUF_ERROR.
-
-    Make sure that before the call of compress(), the length of the compressed
-    buffer is equal to the available size of the compressed buffer and not
-    zero.  For Visual Basic, check that this parameter is passed by reference
-    ("as any"), not by value ("as long").
-
- 5. deflate() or inflate() returns Z_BUF_ERROR.
-
-    Before making the call, make sure that avail_in and avail_out are not zero.
-    When setting the parameter flush equal to Z_FINISH, also make sure that
-    avail_out is big enough to allow processing all pending input.  Note that a
-    Z_BUF_ERROR is not fatal--another call to deflate() or inflate() can be
-    made with more input or output space.  A Z_BUF_ERROR may in fact be
-    unavoidable depending on how the functions are used, since it is not
-    possible to tell whether or not there is more output pending when
-    strm.avail_out returns with zero.  See http://zlib.net/zlib_how.html for a
-    heavily annotated example.
-
- 6. Where's the zlib documentation (man pages, etc.)?
-
-    It's in zlib.h .  Examples of zlib usage are in the files example.c and
-    minigzip.c, with more in examples/ .
-
- 7. Why don't you use GNU autoconf or libtool or ...?
-
-    Because we would like to keep zlib as a very small and simple package.
-    zlib is rather portable and doesn't need much configuration.
-
- 8. I found a bug in zlib.
-
-    Most of the time, such problems are due to an incorrect usage of zlib.
-    Please try to reproduce the problem with a small program and send the
-    corresponding source to us at zlib at gzip.org .  Do not send multi-megabyte
-    data files without prior agreement.
-
- 9. Why do I get "undefined reference to gzputc"?
-
-    If "make test" produces something like
-
-       example.o(.text+0x154): undefined reference to `gzputc'
-
-    check that you don't have old files libz.* in /usr/lib, /usr/local/lib or
-    /usr/X11R6/lib. Remove any old versions, then do "make install".
-
-10. I need a Delphi interface to zlib.
-
-    See the contrib/delphi directory in the zlib distribution.
-
-11. Can zlib handle .zip archives?
-
-    Not by itself, no.  See the directory contrib/minizip in the zlib
-    distribution.
-
-12. Can zlib handle .Z files?
-
-    No, sorry.  You have to spawn an uncompress or gunzip subprocess, or adapt
-    the code of uncompress on your own.
-
-13. How can I make a Unix shared library?
-
-    make clean
-    ./configure -s
-    make
-
-14. How do I install a shared zlib library on Unix?
-
-    After the above, then:
-
-    make install
-
-    However, many flavors of Unix come with a shared zlib already installed.
-    Before going to the trouble of compiling a shared version of zlib and
-    trying to install it, you may want to check if it's already there!  If you
-    can #include <zlib.h>, it's there.  The -lz option will probably link to
-    it.  You can check the version at the top of zlib.h or with the
-    ZLIB_VERSION symbol defined in zlib.h .
-
-15. I have a question about OttoPDF.
-
-    We are not the authors of OttoPDF. The real author is on the OttoPDF web
-    site: Joel Hainley, jhainley at myndkryme.com.
-
-16. Can zlib decode Flate data in an Adobe PDF file?
-
-    Yes. See http://www.pdflib.com/ . To modify PDF forms, see
-    http://sourceforge.net/projects/acroformtool/ .
-
-17. Why am I getting this "register_frame_info not found" error on Solaris?
-
-    After installing zlib 1.1.4 on Solaris 2.6, running applications using zlib
-    generates an error such as:
-
-        ld.so.1: rpm: fatal: relocation error: file /usr/local/lib/libz.so:
-        symbol __register_frame_info: referenced symbol not found
-
-    The symbol __register_frame_info is not part of zlib, it is generated by
-    the C compiler (cc or gcc).  You must recompile applications using zlib
-    which have this problem.  This problem is specific to Solaris.  See
-    http://www.sunfreeware.com for Solaris versions of zlib and applications
-    using zlib.
-
-18. Why does gzip give an error on a file I make with compress/deflate?
-
-    The compress and deflate functions produce data in the zlib format, which
-    is different and incompatible with the gzip format.  The gz* functions in
-    zlib on the other hand use the gzip format.  Both the zlib and gzip formats
-    use the same compressed data format internally, but have different headers
-    and trailers around the compressed data.
-
-19. Ok, so why are there two different formats?
-
-    The gzip format was designed to retain the directory information about a
-    single file, such as the name and last modification date.  The zlib format
-    on the other hand was designed for in-memory and communication channel
-    applications, and has a much more compact header and trailer and uses a
-    faster integrity check than gzip.
-
-20. Well that's nice, but how do I make a gzip file in memory?
-
-    You can request that deflate write the gzip format instead of the zlib
-    format using deflateInit2().  You can also request that inflate decode the
-    gzip format using inflateInit2().  Read zlib.h for more details.
-
-21. Is zlib thread-safe?
-
-    Yes.  However any library routines that zlib uses and any application-
-    provided memory allocation routines must also be thread-safe.  zlib's gz*
-    functions use stdio library routines, and most of zlib's functions use the
-    library memory allocation routines by default.  zlib's *Init* functions
-    allow for the application to provide custom memory allocation routines.
-
-    Of course, you should only operate on any given zlib or gzip stream from a
-    single thread at a time.
-
-22. Can I use zlib in my commercial application?
-
-    Yes.  Please read the license in zlib.h.
-
-23. Is zlib under the GNU license?
-
-    No.  Please read the license in zlib.h.
-
-24. The license says that altered source versions must be "plainly marked". So
-    what exactly do I need to do to meet that requirement?
-
-    You need to change the ZLIB_VERSION and ZLIB_VERNUM #defines in zlib.h.  In
-    particular, the final version number needs to be changed to "f", and an
-    identification string should be appended to ZLIB_VERSION.  Version numbers
-    x.x.x.f are reserved for modifications to zlib by others than the zlib
-    maintainers.  For example, if the version of the base zlib you are altering
-    is "1.2.3.4", then in zlib.h you should change ZLIB_VERNUM to 0x123f, and
-    ZLIB_VERSION to something like "1.2.3.f-zachary-mods-v3".  You can also
-    update the version strings in deflate.c and inftrees.c.
-
-    For altered source distributions, you should also note the origin and
-    nature of the changes in zlib.h, as well as in ChangeLog and README, along
-    with the dates of the alterations.  The origin should include at least your
-    name (or your company's name), and an email address to contact for help or
-    issues with the library.
-
-    Note that distributing a compiled zlib library along with zlib.h and
-    zconf.h is also a source distribution, and so you should change
-    ZLIB_VERSION and ZLIB_VERNUM and note the origin and nature of the changes
-    in zlib.h as you would for a full source distribution.
-
-25. Will zlib work on a big-endian or little-endian architecture, and can I
-    exchange compressed data between them?
-
-    Yes and yes.
-
-26. Will zlib work on a 64-bit machine?
-
-    Yes.  It has been tested on 64-bit machines, and has no dependence on any
-    data types being limited to 32-bits in length.  If you have any
-    difficulties, please provide a complete problem report to zlib at gzip.org
-
-27. Will zlib decompress data from the PKWare Data Compression Library?
-
-    No.  The PKWare DCL uses a completely different compressed data format than
-    does PKZIP and zlib.  However, you can look in zlib's contrib/blast
-    directory for a possible solution to your problem.
-
-28. Can I access data randomly in a compressed stream?
-
-    No, not without some preparation.  If when compressing you periodically use
-    Z_FULL_FLUSH, carefully write all the pending data at those points, and
-    keep an index of those locations, then you can start decompression at those
-    points.  You have to be careful to not use Z_FULL_FLUSH too often, since it
-    can significantly degrade compression.  Alternatively, you can scan a
-    deflate stream once to generate an index, and then use that index for
-    random access.  See examples/zran.c .
-
-29. Does zlib work on MVS, OS/390, CICS, etc.?
-
-    It has in the past, but we have not heard of any recent evidence.  There
-    were working ports of zlib 1.1.4 to MVS, but those links no longer work.
-    If you know of recent, successful applications of zlib on these operating
-    systems, please let us know.  Thanks.
-
-30. Is there some simpler, easier to read version of inflate I can look at to
-    understand the deflate format?
-
-    First off, you should read RFC 1951.  Second, yes.  Look in zlib's
-    contrib/puff directory.
-
-31. Does zlib infringe on any patents?
-
-    As far as we know, no.  In fact, that was originally the whole point behind
-    zlib.  Look here for some more information:
-
-    http://www.gzip.org/#faq11
-
-32. Can zlib work with greater than 4 GB of data?
-
-    Yes.  inflate() and deflate() will process any amount of data correctly.
-    Each call of inflate() or deflate() is limited to input and output chunks
-    of the maximum value that can be stored in the compiler's "unsigned int"
-    type, but there is no limit to the number of chunks.  Note however that the
-    strm.total_in and strm_total_out counters may be limited to 4 GB.  These
-    counters are provided as a convenience and are not used internally by
-    inflate() or deflate().  The application can easily set up its own counters
-    updated after each call of inflate() or deflate() to count beyond 4 GB.
-    compress() and uncompress() may be limited to 4 GB, since they operate in a
-    single call.  gzseek() and gztell() may be limited to 4 GB depending on how
-    zlib is compiled.  See the zlibCompileFlags() function in zlib.h.
-
-    The word "may" appears several times above since there is a 4 GB limit only
-    if the compiler's "long" type is 32 bits.  If the compiler's "long" type is
-    64 bits, then the limit is 16 exabytes.
-
-33. Does zlib have any security vulnerabilities?
-
-    The only one that we are aware of is potentially in gzprintf().  If zlib is
-    compiled to use sprintf() or vsprintf(), then there is no protection
-    against a buffer overflow of an 8K string space (or other value as set by
-    gzbuffer()), other than the caller of gzprintf() assuring that the output
-    will not exceed 8K.  On the other hand, if zlib is compiled to use
-    snprintf() or vsnprintf(), which should normally be the case, then there is
-    no vulnerability.  The ./configure script will display warnings if an
-    insecure variation of sprintf() will be used by gzprintf().  Also the
-    zlibCompileFlags() function will return information on what variant of
-    sprintf() is used by gzprintf().
-
-    If you don't have snprintf() or vsnprintf() and would like one, you can
-    find a portable implementation here:
-
-        http://www.ijs.si/software/snprintf/
-
-    Note that you should be using the most recent version of zlib.  Versions
-    1.1.3 and before were subject to a double-free vulnerability, and versions
-    1.2.1 and 1.2.2 were subject to an access exception when decompressing
-    invalid compressed data.
-
-34. Is there a Java version of zlib?
-
-    Probably what you want is to use zlib in Java. zlib is already included
-    as part of the Java SDK in the java.util.zip package. If you really want
-    a version of zlib written in the Java language, look on the zlib home
-    page for links: http://zlib.net/ .
-
-35. I get this or that compiler or source-code scanner warning when I crank it
-    up to maximally-pedantic. Can't you guys write proper code?
-
-    Many years ago, we gave up attempting to avoid warnings on every compiler
-    in the universe.  It just got to be a waste of time, and some compilers
-    were downright silly as well as contradicted each other.  So now, we simply
-    make sure that the code always works.
-
-36. Valgrind (or some similar memory access checker) says that deflate is
-    performing a conditional jump that depends on an uninitialized value.
-    Isn't that a bug?
-
-    No.  That is intentional for performance reasons, and the output of deflate
-    is not affected.  This only started showing up recently since zlib 1.2.x
-    uses malloc() by default for allocations, whereas earlier versions used
-    calloc(), which zeros out the allocated memory.  Even though the code was
-    correct, versions 1.2.4 and later was changed to not stimulate these
-    checkers.
-
-37. Will zlib read the (insert any ancient or arcane format here) compressed
-    data format?
-
-    Probably not. Look in the comp.compression FAQ for pointers to various
-    formats and associated software.
-
-38. How can I encrypt/decrypt zip files with zlib?
-
-    zlib doesn't support encryption.  The original PKZIP encryption is very
-    weak and can be broken with freely available programs.  To get strong
-    encryption, use GnuPG, http://www.gnupg.org/ , which already includes zlib
-    compression.  For PKZIP compatible "encryption", look at
-    http://www.info-zip.org/
-
-39. What's the difference between the "gzip" and "deflate" HTTP 1.1 encodings?
-
-    "gzip" is the gzip format, and "deflate" is the zlib format.  They should
-    probably have called the second one "zlib" instead to avoid confusion with
-    the raw deflate compressed data format.  While the HTTP 1.1 RFC 2616
-    correctly points to the zlib specification in RFC 1950 for the "deflate"
-    transfer encoding, there have been reports of servers and browsers that
-    incorrectly produce or expect raw deflate data per the deflate
-    specficiation in RFC 1951, most notably Microsoft.  So even though the
-    "deflate" transfer encoding using the zlib format would be the more
-    efficient approach (and in fact exactly what the zlib format was designed
-    for), using the "gzip" transfer encoding is probably more reliable due to
-    an unfortunate choice of name on the part of the HTTP 1.1 authors.
-
-    Bottom line: use the gzip format for HTTP 1.1 encoding.
-
-40. Does zlib support the new "Deflate64" format introduced by PKWare?
-
-    No.  PKWare has apparently decided to keep that format proprietary, since
-    they have not documented it as they have previous compression formats.  In
-    any case, the compression improvements are so modest compared to other more
-    modern approaches, that it's not worth the effort to implement.
-
-41. I'm having a problem with the zip functions in zlib, can you help?
-
-    There are no zip functions in zlib.  You are probably using minizip by
-    Giles Vollant, which is found in the contrib directory of zlib.  It is not
-    part of zlib.  In fact none of the stuff in contrib is part of zlib.  The
-    files in there are not supported by the zlib authors.  You need to contact
-    the authors of the respective contribution for help.
-
-42. The match.asm code in contrib is under the GNU General Public License.
-    Since it's part of zlib, doesn't that mean that all of zlib falls under the
-    GNU GPL?
-
-    No.  The files in contrib are not part of zlib.  They were contributed by
-    other authors and are provided as a convenience to the user within the zlib
-    distribution.  Each item in contrib has its own license.
-
-43. Is zlib subject to export controls?  What is its ECCN?
-
-    zlib is not subject to export controls, and so is classified as EAR99.
-
-44. Can you please sign these lengthy legal documents and fax them back to us
-    so that we can use your software in our product?
-
-    No. Go away. Shoo.
diff --git a/src/other/zlib/INDEX b/src/other/zlib/INDEX
deleted file mode 100644
index f6c51ca..0000000
--- a/src/other/zlib/INDEX
+++ /dev/null
@@ -1,65 +0,0 @@
-CMakeLists.txt  cmake build file
-ChangeLog       history of changes
-FAQ             Frequently Asked Questions about zlib
-INDEX           this file
-Makefile        dummy Makefile that tells you to ./configure
-Makefile.in     template for Unix Makefile
-README          guess what
-configure       configure script for Unix
-make_vms.com    makefile for VMS
-treebuild.xml   XML description of source file dependencies
-zconf.h.cmakein zconf.h template for cmake
-zconf.h.in      zconf.h template for configure
-zlib.3          Man page for zlib
-zlib.3.pdf      Man page in PDF format
-zlib.map        Linux symbol information
-zlib.pc.in      Template for pkg-config descriptor
-zlib2ansi       perl script to convert source files for C++ compilation
-
-amiga/          makefiles for Amiga SAS C
-doc/            documentation for formats and algorithms
-msdos/          makefiles for MSDOS
-nintendods/     makefile for Nintendo DS
-old/            makefiles for various architectures and zlib documentation
-                files that have not yet been updated for zlib 1.2.x
-qnx/            makefiles for QNX
-watcom/         makefiles for OpenWatcom
-win32/          makefiles for Windows
-
-                zlib public header files (required for library use):
-zconf.h
-zlib.h
-
-                private source files used to build the zlib library:
-adler32.c
-compress.c
-crc32.c
-crc32.h
-deflate.c
-deflate.h
-gzclose.c
-gzguts.h
-gzlib.c
-gzread.c
-gzwrite.c
-infback.c
-inffast.c
-inffast.h
-inffixed.h
-inflate.c
-inflate.h
-inftrees.c
-inftrees.h
-trees.c
-trees.h
-uncompr.c
-zutil.c
-zutil.h
-
-                source files for sample programs:
-example.c
-minigzip.c
-See examples/README.examples for more
-
-                unsupported contribution by third parties
-See contrib/README.contrib
diff --git a/src/other/zlib/Makefile.am b/src/other/zlib/Makefile.am
deleted file mode 100644
index abb3ab9..0000000
--- a/src/other/zlib/Makefile.am
+++ /dev/null
@@ -1,43 +0,0 @@
-# $Id: Makefile.am 21122 2010-05-10 18:40:45Z bullet_catcher $
-
-noinst_LTLIBRARIES = libz.la
-
-libz_la_LDFLAGS = -static
-libz_la_SOURCES = \
-	adler32.c \
-	compress.c \
-	crc32.c \
-	deflate.c \
-	gzclose.c \
-	gzlib.c \
-	gzread.c \
-	gzwrite.c \
-	infback.c \
-	inffast.c \
-	inflate.c \
-	inftrees.c \
-	trees.c \
-	uncompr.c \
-	zutil.c
-
-noinst_HEADERS = \
-	crc32.h \
-	deflate.h \
-	gzguts.h \
-	inffast.h \
-	inffixed.h \
-	inflate.h \
-	inftrees.h \
-	trees.h \
-	zconf.h \
-	zlib.h \
-	zutil.h
-
-EXTRA_DIST = \
-	ChangeLog \
-	FAQ \
-	INDEX \
-	zconf.h.in \
-	zlib.3
-
-MAINTAINERCLEANFILES = Makefile.in
diff --git a/src/other/zlib/Makefile.in b/src/other/zlib/Makefile.in
deleted file mode 100644
index f8aca3c..0000000
--- a/src/other/zlib/Makefile.in
+++ /dev/null
@@ -1,585 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-# $Id: Makefile.am 21122 2010-05-10 18:40:45Z bullet_catcher $
-
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-target_triplet = @target@
-subdir = src/other/zlib
-DIST_COMMON = README $(noinst_HEADERS) $(srcdir)/Makefile.am \
-	$(srcdir)/Makefile.in ChangeLog
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/cache.m4 \
-	$(top_srcdir)/m4/curses.m4 $(top_srcdir)/m4/isnan.m4 \
-	$(top_srcdir)/m4/libcurl.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/m4/mkdirp.m4 $(top_srcdir)/m4/sdl.m4 \
-	$(top_srcdir)/m4/stage.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/include/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-LTLIBRARIES = $(noinst_LTLIBRARIES)
-libz_la_LIBADD =
-am_libz_la_OBJECTS = adler32.lo compress.lo crc32.lo deflate.lo \
-	gzclose.lo gzlib.lo gzread.lo gzwrite.lo infback.lo inffast.lo \
-	inflate.lo inftrees.lo trees.lo uncompr.lo zutil.lo
-libz_la_OBJECTS = $(am_libz_la_OBJECTS)
-libz_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(libz_la_LDFLAGS) \
-	$(LDFLAGS) -o $@
-DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)/include
-depcomp = $(SHELL) $(top_srcdir)/misc/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
-	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
-	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
-	$(LDFLAGS) -o $@
-SOURCES = $(libz_la_SOURCES)
-DIST_SOURCES = $(libz_la_SOURCES)
-HEADERS = $(noinst_HEADERS)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AR_FLAGS = @AR_FLAGS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-BZFLAG_DATA = @BZFLAG_DATA@
-BZFLAG_DATE = @BZFLAG_DATE@
-BZFLAG_VERSION = @BZFLAG_VERSION@
-CC = @CC@
-CCACHE = @CCACHE@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CONFIG = @CONFIG@
-CONFIG_CACHE = @CONFIG_CACHE@
-CONF_CFLAGS = @CONF_CFLAGS@
-CONF_CPPFLAGS = @CONF_CPPFLAGS@
-CONF_CXXFLAGS = @CONF_CXXFLAGS@
-CONF_TIME = @CONF_TIME@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CURSES_LIB = @CURSES_LIB@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO = @ECHO@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FRAMEWORK_OPENGL = @FRAMEWORK_OPENGL@
-GLEW_LIBS = @GLEW_LIBS@
-GLIBS = @GLIBS@
-GREP = @GREP@
-HASPOD2MAN = @HASPOD2MAN@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCARES = @LIBCARES@
-LIBCURL = @LIBCURL@
-LIBCURL_CPPFLAGS = @LIBCURL_CPPFLAGS@
-LIBDIR = @LIBDIR@
-LIBDL = @LIBDL@
-LIBMINIUPNPC = @LIBMINIUPNPC@
-LIBOBJS = @LIBOBJS@
-LIBREGEX = @LIBREGEX@
-LIBRT = @LIBRT@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIBTOOLFLAGS = @LIBTOOLFLAGS@
-LIBTOOL_DEPS = @LIBTOOL_DEPS@
-LIBZ = @LIBZ@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAJOR_VERSION = @MAJOR_VERSION@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MINOR_VERSION = @MINOR_VERSION@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-RANLIB = @RANLIB@
-SDL_CFLAGS = @SDL_CFLAGS@
-SDL_CONFIG = @SDL_CONFIG@
-SDL_LIBS = @SDL_LIBS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-VERSION = @VERSION@
-WINDRES = @WINDRES@
-XMKMF = @XMKMF@
-X_CFLAGS = @X_CFLAGS@
-X_EXTRA_LIBS = @X_EXTRA_LIBS@
-X_LIBS = @X_LIBS@
-X_PRE_LIBS = @X_PRE_LIBS@
-_libcurl_config = @_libcurl_config@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-subdirs = @subdirs@
-sysconfdir = @sysconfdir@
-target = @target@
-target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-noinst_LTLIBRARIES = libz.la
-libz_la_LDFLAGS = -static
-libz_la_SOURCES = \
-	adler32.c \
-	compress.c \
-	crc32.c \
-	deflate.c \
-	gzclose.c \
-	gzlib.c \
-	gzread.c \
-	gzwrite.c \
-	infback.c \
-	inffast.c \
-	inflate.c \
-	inftrees.c \
-	trees.c \
-	uncompr.c \
-	zutil.c
-
-noinst_HEADERS = \
-	crc32.h \
-	deflate.h \
-	gzguts.h \
-	inffast.h \
-	inffixed.h \
-	inflate.h \
-	inftrees.h \
-	trees.h \
-	zconf.h \
-	zlib.h \
-	zutil.h
-
-EXTRA_DIST = \
-	ChangeLog \
-	FAQ \
-	INDEX \
-	zconf.h.in \
-	zlib.3
-
-MAINTAINERCLEANFILES = Makefile.in
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .c .lo .o .obj
-$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
-	@for dep in $?; do \
-	  case '$(am__configure_deps)' in \
-	    *$$dep*) \
-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
-	        && { if test -f $@; then exit 0; else break; fi; }; \
-	      exit 1;; \
-	  esac; \
-	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/other/zlib/Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --gnu src/other/zlib/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure:  $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-clean-noinstLTLIBRARIES:
-	-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
-	@list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
-	  dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
-	  test "$$dir" != "$$p" || dir=.; \
-	  echo "rm -f \"$${dir}/so_locations\""; \
-	  rm -f "$${dir}/so_locations"; \
-	done
-libz.la: $(libz_la_OBJECTS) $(libz_la_DEPENDENCIES) 
-	$(libz_la_LINK)  $(libz_la_OBJECTS) $(libz_la_LIBADD) $(LIBS)
-
-mostlyclean-compile:
-	-rm -f *.$(OBJEXT)
-
-distclean-compile:
-	-rm -f *.tab.c
-
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/adler32.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/compress.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/crc32.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/deflate.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/gzclose.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/gzlib.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/gzread.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/gzwrite.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/infback.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/inffast.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/inflate.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/inftrees.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/trees.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/uncompr.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/zutil.Plo at am__quote@
-
-.c.o:
- at am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c $<
-
-.c.obj:
- at am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-.c.lo:
- at am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCC_TRUE@	$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	set x; \
-	here=`pwd`; \
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-		$(TAGS_FILES) $(LISP)
-	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-	unique=`for i in $$list; do \
-	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-	  done | \
-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-	      END { if (nonempty) { for (i in files) print i; }; }'`; \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(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: check-am
-all-am: Makefile $(LTLIBRARIES) $(HEADERS)
-installdirs:
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-	-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-clean: clean-am
-
-clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
-	mostlyclean-am
-
-distclean: distclean-am
-	-rm -rf ./$(DEPDIR)
-	-rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
-	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 -rf ./$(DEPDIR)
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
-	mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-	clean-libtool clean-noinstLTLIBRARIES ctags distclean \
-	distclean-compile distclean-generic distclean-libtool \
-	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 mostlyclean \
-	mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-	pdf pdf-am ps ps-am tags uninstall uninstall-am
-
-
-# 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/src/other/zlib/README b/src/other/zlib/README
deleted file mode 100644
index d4219bf..0000000
--- a/src/other/zlib/README
+++ /dev/null
@@ -1,115 +0,0 @@
-ZLIB DATA COMPRESSION LIBRARY
-
-zlib 1.2.5 is a general purpose data compression library.  All the code is
-thread safe.  The data format used by the zlib library is described by RFCs
-(Request for Comments) 1950 to 1952 in the files
-http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format)
-and rfc1952.txt (gzip format).
-
-All functions of the compression library are documented in the file zlib.h
-(volunteer to write man pages welcome, contact zlib at gzip.org).  A usage example
-of the library is given in the file example.c which also tests that the library
-is working correctly.  Another example is given in the file minigzip.c.  The
-compression library itself is composed of all source files except example.c and
-minigzip.c.
-
-To compile all files and run the test program, follow the instructions given at
-the top of Makefile.in.  In short "./configure; make test", and if that goes
-well, "make install" should work for most flavors of Unix.  For Windows, use one
-of the special makefiles in win32/ or contrib/vstudio/ .  For VMS, use
-make_vms.com.
-
-Questions about zlib should be sent to <zlib at gzip.org>, or to Gilles Vollant
-<info at winimage.com> for the Windows DLL version.  The zlib home page is
-http://zlib.net/ .  Before reporting a problem, please check this site to
-verify that you have the latest version of zlib; otherwise get the latest
-version and check whether the problem still exists or not.
-
-PLEASE read the zlib FAQ http://zlib.net/zlib_faq.html before asking for help.
-
-Mark Nelson <markn at ieee.org> wrote an article about zlib for the Jan.  1997
-issue of Dr.  Dobb's Journal; a copy of the article is available at
-http://marknelson.us/1997/01/01/zlib-engine/ .
-
-The changes made in version 1.2.5 are documented in the file ChangeLog.
-
-Unsupported third party contributions are provided in directory contrib/ .
-
-zlib is available in Java using the java.util.zip package, documented at
-http://java.sun.com/developer/technicalArticles/Programming/compression/ .
-
-A Perl interface to zlib written by Paul Marquess <pmqs at cpan.org> is available
-at CPAN (Comprehensive Perl Archive Network) sites, including
-http://search.cpan.org/~pmqs/IO-Compress-Zlib/ .
-
-A Python interface to zlib written by A.M. Kuchling <amk at amk.ca> is
-available in Python 1.5 and later versions, see
-http://www.python.org/doc/lib/module-zlib.html .
-
-zlib is built into tcl: http://wiki.tcl.tk/4610 .
-
-An experimental package to read and write files in .zip format, written on top
-of zlib by Gilles Vollant <info at winimage.com>, is available in the
-contrib/minizip directory of zlib.
-
-
-Notes for some targets:
-
-- For Windows DLL versions, please see win32/DLL_FAQ.txt
-
-- For 64-bit Irix, deflate.c must be compiled without any optimization. With
-  -O, one libpng test fails. The test works in 32 bit mode (with the -n32
-  compiler flag). The compiler bug has been reported to SGI.
-
-- zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1 it works
-  when compiled with cc.
-
-- On Digital Unix 4.0D (formely OSF/1) on AlphaServer, the cc option -std1 is
-  necessary to get gzprintf working correctly. This is done by configure.
-
-- zlib doesn't work on HP-UX 9.05 with some versions of /bin/cc. It works with
-  other compilers. Use "make test" to check your compiler.
-
-- gzdopen is not supported on RISCOS or BEOS.
-
-- For PalmOs, see http://palmzlib.sourceforge.net/
-
-
-Acknowledgments:
-
-  The deflate format used by zlib was defined by Phil Katz.  The deflate and
-  zlib specifications were written by L.  Peter Deutsch.  Thanks to all the
-  people who reported problems and suggested various improvements in zlib; they
-  are too numerous to cite here.
-
-Copyright notice:
-
- (C) 1995-2010 Jean-loup Gailly and Mark Adler
-
-  This software is provided 'as-is', without any express or implied
-  warranty.  In no event will the authors be held liable for any damages
-  arising from the use of this software.
-
-  Permission is granted to anyone to use this software for any purpose,
-  including commercial applications, and to alter it and redistribute it
-  freely, subject to the following restrictions:
-
-  1. The origin of this software must not be misrepresented; you must not
-     claim that you wrote the original software. If you use this software
-     in a product, an acknowledgment in the product documentation would be
-     appreciated but is not required.
-  2. Altered source versions must be plainly marked as such, and must not be
-     misrepresented as being the original software.
-  3. This notice may not be removed or altered from any source distribution.
-
-  Jean-loup Gailly        Mark Adler
-  jloup at gzip.org          madler at alumni.caltech.edu
-
-If you use the zlib library in a product, we would appreciate *not* receiving
-lengthy legal documents to sign.  The sources are provided for free but without
-warranty of any kind.  The library has been entirely written by Jean-loup
-Gailly and Mark Adler; it does not include third-party code.
-
-If you redistribute modified sources, we would appreciate that you include in
-the file ChangeLog history information documenting your changes.  Please read
-the FAQ for more information on the distribution of modified source versions.
diff --git a/src/other/zlib/adler32.c b/src/other/zlib/adler32.c
deleted file mode 100644
index b2c31c2..0000000
--- a/src/other/zlib/adler32.c
+++ /dev/null
@@ -1,169 +0,0 @@
-/* adler32.c -- compute the Adler-32 checksum of a data stream
- * Copyright (C) 1995-2007 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* @(#) $Id: adler32.c 21114 2010-05-10 07:14:43Z dtremenak $ */
-
-#include "zutil.h"
-
-#define local static
-
-local uLong adler32_combine_(uLong adler1, uLong adler2, z_off64_t len2);
-
-#define BASE 65521UL    /* largest prime smaller than 65536 */
-#define NMAX 5552
-/* NMAX is the largest n such that 255n(n+1)/2 + (n+1)(BASE-1) <= 2^32-1 */
-
-#define DO1(buf,i)  {adler += (buf)[i]; sum2 += adler;}
-#define DO2(buf,i)  DO1(buf,i); DO1(buf,i+1);
-#define DO4(buf,i)  DO2(buf,i); DO2(buf,i+2);
-#define DO8(buf,i)  DO4(buf,i); DO4(buf,i+4);
-#define DO16(buf)   DO8(buf,0); DO8(buf,8);
-
-/* use NO_DIVIDE if your processor does not do division in hardware */
-#ifdef NO_DIVIDE
-#  define MOD(a) \
-    do { \
-        if (a >= (BASE << 16)) a -= (BASE << 16); \
-        if (a >= (BASE << 15)) a -= (BASE << 15); \
-        if (a >= (BASE << 14)) a -= (BASE << 14); \
-        if (a >= (BASE << 13)) a -= (BASE << 13); \
-        if (a >= (BASE << 12)) a -= (BASE << 12); \
-        if (a >= (BASE << 11)) a -= (BASE << 11); \
-        if (a >= (BASE << 10)) a -= (BASE << 10); \
-        if (a >= (BASE << 9)) a -= (BASE << 9); \
-        if (a >= (BASE << 8)) a -= (BASE << 8); \
-        if (a >= (BASE << 7)) a -= (BASE << 7); \
-        if (a >= (BASE << 6)) a -= (BASE << 6); \
-        if (a >= (BASE << 5)) a -= (BASE << 5); \
-        if (a >= (BASE << 4)) a -= (BASE << 4); \
-        if (a >= (BASE << 3)) a -= (BASE << 3); \
-        if (a >= (BASE << 2)) a -= (BASE << 2); \
-        if (a >= (BASE << 1)) a -= (BASE << 1); \
-        if (a >= BASE) a -= BASE; \
-    } while (0)
-#  define MOD4(a) \
-    do { \
-        if (a >= (BASE << 4)) a -= (BASE << 4); \
-        if (a >= (BASE << 3)) a -= (BASE << 3); \
-        if (a >= (BASE << 2)) a -= (BASE << 2); \
-        if (a >= (BASE << 1)) a -= (BASE << 1); \
-        if (a >= BASE) a -= BASE; \
-    } while (0)
-#else
-#  define MOD(a) a %= BASE
-#  define MOD4(a) a %= BASE
-#endif
-
-/* ========================================================================= */
-uLong ZEXPORT adler32(adler, buf, len)
-    uLong adler;
-    const Bytef *buf;
-    uInt len;
-{
-    unsigned long sum2;
-    unsigned n;
-
-    /* split Adler-32 into component sums */
-    sum2 = (adler >> 16) & 0xffff;
-    adler &= 0xffff;
-
-    /* in case user likes doing a byte at a time, keep it fast */
-    if (len == 1) {
-        adler += buf[0];
-        if (adler >= BASE)
-            adler -= BASE;
-        sum2 += adler;
-        if (sum2 >= BASE)
-            sum2 -= BASE;
-        return adler | (sum2 << 16);
-    }
-
-    /* initial Adler-32 value (deferred check for len == 1 speed) */
-    if (buf == Z_NULL)
-        return 1L;
-
-    /* in case short lengths are provided, keep it somewhat fast */
-    if (len < 16) {
-        while (len--) {
-            adler += *buf++;
-            sum2 += adler;
-        }
-        if (adler >= BASE)
-            adler -= BASE;
-        MOD4(sum2);             /* only added so many BASE's */
-        return adler | (sum2 << 16);
-    }
-
-    /* do length NMAX blocks -- requires just one modulo operation */
-    while (len >= NMAX) {
-        len -= NMAX;
-        n = NMAX / 16;          /* NMAX is divisible by 16 */
-        do {
-            DO16(buf);          /* 16 sums unrolled */
-            buf += 16;
-        } while (--n);
-        MOD(adler);
-        MOD(sum2);
-    }
-
-    /* do remaining bytes (less than NMAX, still just one modulo) */
-    if (len) {                  /* avoid modulos if none remaining */
-        while (len >= 16) {
-            len -= 16;
-            DO16(buf);
-            buf += 16;
-        }
-        while (len--) {
-            adler += *buf++;
-            sum2 += adler;
-        }
-        MOD(adler);
-        MOD(sum2);
-    }
-
-    /* return recombined sums */
-    return adler | (sum2 << 16);
-}
-
-/* ========================================================================= */
-local uLong adler32_combine_(adler1, adler2, len2)
-    uLong adler1;
-    uLong adler2;
-    z_off64_t len2;
-{
-    unsigned long sum1;
-    unsigned long sum2;
-    unsigned rem;
-
-    /* the derivation of this formula is left as an exercise for the reader */
-    rem = (unsigned)(len2 % BASE);
-    sum1 = adler1 & 0xffff;
-    sum2 = rem * sum1;
-    MOD(sum2);
-    sum1 += (adler2 & 0xffff) + BASE - 1;
-    sum2 += ((adler1 >> 16) & 0xffff) + ((adler2 >> 16) & 0xffff) + BASE - rem;
-    if (sum1 >= BASE) sum1 -= BASE;
-    if (sum1 >= BASE) sum1 -= BASE;
-    if (sum2 >= (BASE << 1)) sum2 -= (BASE << 1);
-    if (sum2 >= BASE) sum2 -= BASE;
-    return sum1 | (sum2 << 16);
-}
-
-/* ========================================================================= */
-uLong ZEXPORT adler32_combine(adler1, adler2, len2)
-    uLong adler1;
-    uLong adler2;
-    z_off_t len2;
-{
-    return adler32_combine_(adler1, adler2, len2);
-}
-
-uLong ZEXPORT adler32_combine64(adler1, adler2, len2)
-    uLong adler1;
-    uLong adler2;
-    z_off64_t len2;
-{
-    return adler32_combine_(adler1, adler2, len2);
-}
diff --git a/src/other/zlib/compress.c b/src/other/zlib/compress.c
deleted file mode 100644
index 664779d..0000000
--- a/src/other/zlib/compress.c
+++ /dev/null
@@ -1,80 +0,0 @@
-/* compress.c -- compress a memory buffer
- * Copyright (C) 1995-2005 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* @(#) $Id: compress.c 21114 2010-05-10 07:14:43Z dtremenak $ */
-
-#define ZLIB_INTERNAL
-#include "zlib.h"
-
-/* ===========================================================================
-     Compresses the source buffer into the destination buffer. The level
-   parameter has the same meaning as in deflateInit.  sourceLen is the byte
-   length of the source buffer. Upon entry, destLen is the total size of the
-   destination buffer, which must be at least 0.1% larger than sourceLen plus
-   12 bytes. Upon exit, destLen is the actual size of the compressed buffer.
-
-     compress2 returns Z_OK if success, Z_MEM_ERROR if there was not enough
-   memory, Z_BUF_ERROR if there was not enough room in the output buffer,
-   Z_STREAM_ERROR if the level parameter is invalid.
-*/
-int ZEXPORT compress2 (dest, destLen, source, sourceLen, level)
-    Bytef *dest;
-    uLongf *destLen;
-    const Bytef *source;
-    uLong sourceLen;
-    int level;
-{
-    z_stream stream;
-    int err;
-
-    stream.next_in = (Bytef*)source;
-    stream.avail_in = (uInt)sourceLen;
-#ifdef MAXSEG_64K
-    /* Check for source > 64K on 16-bit machine: */
-    if ((uLong)stream.avail_in != sourceLen) return Z_BUF_ERROR;
-#endif
-    stream.next_out = dest;
-    stream.avail_out = (uInt)*destLen;
-    if ((uLong)stream.avail_out != *destLen) return Z_BUF_ERROR;
-
-    stream.zalloc = (alloc_func)0;
-    stream.zfree = (free_func)0;
-    stream.opaque = (voidpf)0;
-
-    err = deflateInit(&stream, level);
-    if (err != Z_OK) return err;
-
-    err = deflate(&stream, Z_FINISH);
-    if (err != Z_STREAM_END) {
-        deflateEnd(&stream);
-        return err == Z_OK ? Z_BUF_ERROR : err;
-    }
-    *destLen = stream.total_out;
-
-    err = deflateEnd(&stream);
-    return err;
-}
-
-/* ===========================================================================
- */
-int ZEXPORT compress (dest, destLen, source, sourceLen)
-    Bytef *dest;
-    uLongf *destLen;
-    const Bytef *source;
-    uLong sourceLen;
-{
-    return compress2(dest, destLen, source, sourceLen, Z_DEFAULT_COMPRESSION);
-}
-
-/* ===========================================================================
-     If the default memLevel or windowBits for deflateInit() is changed, then
-   this function needs to be updated.
- */
-uLong ZEXPORT compressBound (sourceLen)
-    uLong sourceLen;
-{
-    return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) +
-           (sourceLen >> 25) + 13;
-}
diff --git a/src/other/zlib/crc32.c b/src/other/zlib/crc32.c
deleted file mode 100644
index b0b1e9c..0000000
--- a/src/other/zlib/crc32.c
+++ /dev/null
@@ -1,442 +0,0 @@
-/* crc32.c -- compute the CRC-32 of a data stream
- * Copyright (C) 1995-2006, 2010 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- *
- * Thanks to Rodney Brown <rbrown64 at csc.com.au> for his contribution of faster
- * CRC methods: exclusive-oring 32 bits of data at a time, and pre-computing
- * tables for updating the shift register in one step with three exclusive-ors
- * instead of four steps with four exclusive-ors.  This results in about a
- * factor of two increase in speed on a Power PC G4 (PPC7455) using gcc -O3.
- */
-
-/* @(#) $Id: crc32.c 21114 2010-05-10 07:14:43Z dtremenak $ */
-
-/*
-  Note on the use of DYNAMIC_CRC_TABLE: there is no mutex or semaphore
-  protection on the static variables used to control the first-use generation
-  of the crc tables.  Therefore, if you #define DYNAMIC_CRC_TABLE, you should
-  first call get_crc_table() to initialize the tables before allowing more than
-  one thread to use crc32().
- */
-
-#ifdef MAKECRCH
-#  include <stdio.h>
-#  ifndef DYNAMIC_CRC_TABLE
-#    define DYNAMIC_CRC_TABLE
-#  endif /* !DYNAMIC_CRC_TABLE */
-#endif /* MAKECRCH */
-
-#include "zutil.h"      /* for STDC and FAR definitions */
-
-#define local static
-
-/* Find a four-byte integer type for crc32_little() and crc32_big(). */
-#ifndef NOBYFOUR
-#  ifdef STDC           /* need ANSI C limits.h to determine sizes */
-#    include <limits.h>
-#    define BYFOUR
-#    if (UINT_MAX == 0xffffffffUL)
-       typedef unsigned int u4;
-#    else
-#      if (ULONG_MAX == 0xffffffffUL)
-         typedef unsigned long u4;
-#      else
-#        if (USHRT_MAX == 0xffffffffUL)
-           typedef unsigned short u4;
-#        else
-#          undef BYFOUR     /* can't find a four-byte integer type! */
-#        endif
-#      endif
-#    endif
-#  endif /* STDC */
-#endif /* !NOBYFOUR */
-
-/* Definitions for doing the crc four data bytes at a time. */
-#ifdef BYFOUR
-#  define REV(w) ((((w)>>24)&0xff)+(((w)>>8)&0xff00)+ \
-                (((w)&0xff00)<<8)+(((w)&0xff)<<24))
-   local unsigned long crc32_little OF((unsigned long,
-                        const unsigned char FAR *, unsigned));
-   local unsigned long crc32_big OF((unsigned long,
-                        const unsigned char FAR *, unsigned));
-#  define TBLS 8
-#else
-#  define TBLS 1
-#endif /* BYFOUR */
-
-/* Local functions for crc concatenation */
-local unsigned long gf2_matrix_times OF((unsigned long *mat,
-                                         unsigned long vec));
-local void gf2_matrix_square OF((unsigned long *square, unsigned long *mat));
-local uLong crc32_combine_(uLong crc1, uLong crc2, z_off64_t len2);
-
-
-#ifdef DYNAMIC_CRC_TABLE
-
-local volatile int crc_table_empty = 1;
-local unsigned long FAR crc_table[TBLS][256];
-local void make_crc_table OF((void));
-#ifdef MAKECRCH
-   local void write_table OF((FILE *, const unsigned long FAR *));
-#endif /* MAKECRCH */
-/*
-  Generate tables for a byte-wise 32-bit CRC calculation on the polynomial:
-  x^32+x^26+x^23+x^22+x^16+x^12+x^11+x^10+x^8+x^7+x^5+x^4+x^2+x+1.
-
-  Polynomials over GF(2) are represented in binary, one bit per coefficient,
-  with the lowest powers in the most significant bit.  Then adding polynomials
-  is just exclusive-or, and multiplying a polynomial by x is a right shift by
-  one.  If we call the above polynomial p, and represent a byte as the
-  polynomial q, also with the lowest power in the most significant bit (so the
-  byte 0xb1 is the polynomial x^7+x^3+x+1), then the CRC is (q*x^32) mod p,
-  where a mod b means the remainder after dividing a by b.
-
-  This calculation is done using the shift-register method of multiplying and
-  taking the remainder.  The register is initialized to zero, and for each
-  incoming bit, x^32 is added mod p to the register if the bit is a one (where
-  x^32 mod p is p+x^32 = x^26+...+1), and the register is multiplied mod p by
-  x (which is shifting right by one and adding x^32 mod p if the bit shifted
-  out is a one).  We start with the highest power (least significant bit) of
-  q and repeat for all eight bits of q.
-
-  The first table is simply the CRC of all possible eight bit values.  This is
-  all the information needed to generate CRCs on data a byte at a time for all
-  combinations of CRC register values and incoming bytes.  The remaining tables
-  allow for word-at-a-time CRC calculation for both big-endian and little-
-  endian machines, where a word is four bytes.
-*/
-local void make_crc_table()
-{
-    unsigned long c;
-    int n, k;
-    unsigned long poly;                 /* polynomial exclusive-or pattern */
-    /* terms of polynomial defining this crc (except x^32): */
-    static volatile int first = 1;      /* flag to limit concurrent making */
-    static const unsigned char p[] = {0,1,2,4,5,7,8,10,11,12,16,22,23,26};
-
-    /* See if another task is already doing this (not thread-safe, but better
-       than nothing -- significantly reduces duration of vulnerability in
-       case the advice about DYNAMIC_CRC_TABLE is ignored) */
-    if (first) {
-        first = 0;
-
-        /* make exclusive-or pattern from polynomial (0xedb88320UL) */
-        poly = 0UL;
-        for (n = 0; n < sizeof(p)/sizeof(unsigned char); n++)
-            poly |= 1UL << (31 - p[n]);
-
-        /* generate a crc for every 8-bit value */
-        for (n = 0; n < 256; n++) {
-            c = (unsigned long)n;
-            for (k = 0; k < 8; k++)
-                c = c & 1 ? poly ^ (c >> 1) : c >> 1;
-            crc_table[0][n] = c;
-        }
-
-#ifdef BYFOUR
-        /* generate crc for each value followed by one, two, and three zeros,
-           and then the byte reversal of those as well as the first table */
-        for (n = 0; n < 256; n++) {
-            c = crc_table[0][n];
-            crc_table[4][n] = REV(c);
-            for (k = 1; k < 4; k++) {
-                c = crc_table[0][c & 0xff] ^ (c >> 8);
-                crc_table[k][n] = c;
-                crc_table[k + 4][n] = REV(c);
-            }
-        }
-#endif /* BYFOUR */
-
-        crc_table_empty = 0;
-    }
-    else {      /* not first */
-        /* wait for the other guy to finish (not efficient, but rare) */
-        while (crc_table_empty)
-            ;
-    }
-
-#ifdef MAKECRCH
-    /* write out CRC tables to crc32.h */
-    {
-        FILE *out;
-
-        out = fopen("crc32.h", "w");
-        if (out == NULL) return;
-        fprintf(out, "/* crc32.h -- tables for rapid CRC calculation\n");
-        fprintf(out, " * Generated automatically by crc32.c\n */\n\n");
-        fprintf(out, "local const unsigned long FAR ");
-        fprintf(out, "crc_table[TBLS][256] =\n{\n  {\n");
-        write_table(out, crc_table[0]);
-#  ifdef BYFOUR
-        fprintf(out, "#ifdef BYFOUR\n");
-        for (k = 1; k < 8; k++) {
-            fprintf(out, "  },\n  {\n");
-            write_table(out, crc_table[k]);
-        }
-        fprintf(out, "#endif\n");
-#  endif /* BYFOUR */
-        fprintf(out, "  }\n};\n");
-        fclose(out);
-    }
-#endif /* MAKECRCH */
-}
-
-#ifdef MAKECRCH
-local void write_table(out, table)
-    FILE *out;
-    const unsigned long FAR *table;
-{
-    int n;
-
-    for (n = 0; n < 256; n++)
-        fprintf(out, "%s0x%08lxUL%s", n % 5 ? "" : "    ", table[n],
-                n == 255 ? "\n" : (n % 5 == 4 ? ",\n" : ", "));
-}
-#endif /* MAKECRCH */
-
-#else /* !DYNAMIC_CRC_TABLE */
-/* ========================================================================
- * Tables of CRC-32s of all single-byte values, made by make_crc_table().
- */
-#include "crc32.h"
-#endif /* DYNAMIC_CRC_TABLE */
-
-/* =========================================================================
- * This function can be used by asm versions of crc32()
- */
-const unsigned long FAR * ZEXPORT get_crc_table()
-{
-#ifdef DYNAMIC_CRC_TABLE
-    if (crc_table_empty)
-        make_crc_table();
-#endif /* DYNAMIC_CRC_TABLE */
-    return (const unsigned long FAR *)crc_table;
-}
-
-/* ========================================================================= */
-#define DO1 crc = crc_table[0][((int)crc ^ (*buf++)) & 0xff] ^ (crc >> 8)
-#define DO8 DO1; DO1; DO1; DO1; DO1; DO1; DO1; DO1
-
-/* ========================================================================= */
-unsigned long ZEXPORT crc32(crc, buf, len)
-    unsigned long crc;
-    const unsigned char FAR *buf;
-    uInt len;
-{
-    if (buf == Z_NULL) return 0UL;
-
-#ifdef DYNAMIC_CRC_TABLE
-    if (crc_table_empty)
-        make_crc_table();
-#endif /* DYNAMIC_CRC_TABLE */
-
-#ifdef BYFOUR
-    if (sizeof(void *) == sizeof(ptrdiff_t)) {
-        u4 endian;
-
-        endian = 1;
-        if (*((unsigned char *)(&endian)))
-            return crc32_little(crc, buf, len);
-        else
-            return crc32_big(crc, buf, len);
-    }
-#endif /* BYFOUR */
-    crc = crc ^ 0xffffffffUL;
-    while (len >= 8) {
-        DO8;
-        len -= 8;
-    }
-    if (len) do {
-        DO1;
-    } while (--len);
-    return crc ^ 0xffffffffUL;
-}
-
-#ifdef BYFOUR
-
-/* ========================================================================= */
-#define DOLIT4 c ^= *buf4++; \
-        c = crc_table[3][c & 0xff] ^ crc_table[2][(c >> 8) & 0xff] ^ \
-            crc_table[1][(c >> 16) & 0xff] ^ crc_table[0][c >> 24]
-#define DOLIT32 DOLIT4; DOLIT4; DOLIT4; DOLIT4; DOLIT4; DOLIT4; DOLIT4; DOLIT4
-
-/* ========================================================================= */
-local unsigned long crc32_little(crc, buf, len)
-    unsigned long crc;
-    const unsigned char FAR *buf;
-    unsigned len;
-{
-    register u4 c;
-    register const u4 FAR *buf4;
-
-    c = (u4)crc;
-    c = ~c;
-    while (len && ((ptrdiff_t)buf & 3)) {
-        c = crc_table[0][(c ^ *buf++) & 0xff] ^ (c >> 8);
-        len--;
-    }
-
-    buf4 = (const u4 FAR *)(const void FAR *)buf;
-    while (len >= 32) {
-        DOLIT32;
-        len -= 32;
-    }
-    while (len >= 4) {
-        DOLIT4;
-        len -= 4;
-    }
-    buf = (const unsigned char FAR *)buf4;
-
-    if (len) do {
-        c = crc_table[0][(c ^ *buf++) & 0xff] ^ (c >> 8);
-    } while (--len);
-    c = ~c;
-    return (unsigned long)c;
-}
-
-/* ========================================================================= */
-#define DOBIG4 c ^= *++buf4; \
-        c = crc_table[4][c & 0xff] ^ crc_table[5][(c >> 8) & 0xff] ^ \
-            crc_table[6][(c >> 16) & 0xff] ^ crc_table[7][c >> 24]
-#define DOBIG32 DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4
-
-/* ========================================================================= */
-local unsigned long crc32_big(crc, buf, len)
-    unsigned long crc;
-    const unsigned char FAR *buf;
-    unsigned len;
-{
-    register u4 c;
-    register const u4 FAR *buf4;
-
-    c = REV((u4)crc);
-    c = ~c;
-    while (len && ((ptrdiff_t)buf & 3)) {
-        c = crc_table[4][(c >> 24) ^ *buf++] ^ (c << 8);
-        len--;
-    }
-
-    buf4 = (const u4 FAR *)(const void FAR *)buf;
-    buf4--;
-    while (len >= 32) {
-        DOBIG32;
-        len -= 32;
-    }
-    while (len >= 4) {
-        DOBIG4;
-        len -= 4;
-    }
-    buf4++;
-    buf = (const unsigned char FAR *)buf4;
-
-    if (len) do {
-        c = crc_table[4][(c >> 24) ^ *buf++] ^ (c << 8);
-    } while (--len);
-    c = ~c;
-    return (unsigned long)(REV(c));
-}
-
-#endif /* BYFOUR */
-
-#define GF2_DIM 32      /* dimension of GF(2) vectors (length of CRC) */
-
-/* ========================================================================= */
-local unsigned long gf2_matrix_times(mat, vec)
-    unsigned long *mat;
-    unsigned long vec;
-{
-    unsigned long sum;
-
-    sum = 0;
-    while (vec) {
-        if (vec & 1)
-            sum ^= *mat;
-        vec >>= 1;
-        mat++;
-    }
-    return sum;
-}
-
-/* ========================================================================= */
-local void gf2_matrix_square(square, mat)
-    unsigned long *square;
-    unsigned long *mat;
-{
-    int n;
-
-    for (n = 0; n < GF2_DIM; n++)
-        square[n] = gf2_matrix_times(mat, mat[n]);
-}
-
-/* ========================================================================= */
-local uLong crc32_combine_(crc1, crc2, len2)
-    uLong crc1;
-    uLong crc2;
-    z_off64_t len2;
-{
-    int n;
-    unsigned long row;
-    unsigned long even[GF2_DIM];    /* even-power-of-two zeros operator */
-    unsigned long odd[GF2_DIM];     /* odd-power-of-two zeros operator */
-
-    /* degenerate case (also disallow negative lengths) */
-    if (len2 <= 0)
-        return crc1;
-
-    /* put operator for one zero bit in odd */
-    odd[0] = 0xedb88320UL;          /* CRC-32 polynomial */
-    row = 1;
-    for (n = 1; n < GF2_DIM; n++) {
-        odd[n] = row;
-        row <<= 1;
-    }
-
-    /* put operator for two zero bits in even */
-    gf2_matrix_square(even, odd);
-
-    /* put operator for four zero bits in odd */
-    gf2_matrix_square(odd, even);
-
-    /* apply len2 zeros to crc1 (first square will put the operator for one
-       zero byte, eight zero bits, in even) */
-    do {
-        /* apply zeros operator for this bit of len2 */
-        gf2_matrix_square(even, odd);
-        if (len2 & 1)
-            crc1 = gf2_matrix_times(even, crc1);
-        len2 >>= 1;
-
-        /* if no more bits set, then done */
-        if (len2 == 0)
-            break;
-
-        /* another iteration of the loop with odd and even swapped */
-        gf2_matrix_square(odd, even);
-        if (len2 & 1)
-            crc1 = gf2_matrix_times(odd, crc1);
-        len2 >>= 1;
-
-        /* if no more bits set, then done */
-    } while (len2 != 0);
-
-    /* return combined crc */
-    crc1 ^= crc2;
-    return crc1;
-}
-
-/* ========================================================================= */
-uLong ZEXPORT crc32_combine(crc1, crc2, len2)
-    uLong crc1;
-    uLong crc2;
-    z_off_t len2;
-{
-    return crc32_combine_(crc1, crc2, len2);
-}
-
-uLong ZEXPORT crc32_combine64(crc1, crc2, len2)
-    uLong crc1;
-    uLong crc2;
-    z_off64_t len2;
-{
-    return crc32_combine_(crc1, crc2, len2);
-}
diff --git a/src/other/zlib/crc32.h b/src/other/zlib/crc32.h
deleted file mode 100644
index 8053b61..0000000
--- a/src/other/zlib/crc32.h
+++ /dev/null
@@ -1,441 +0,0 @@
-/* crc32.h -- tables for rapid CRC calculation
- * Generated automatically by crc32.c
- */
-
-local const unsigned long FAR crc_table[TBLS][256] =
-{
-  {
-    0x00000000UL, 0x77073096UL, 0xee0e612cUL, 0x990951baUL, 0x076dc419UL,
-    0x706af48fUL, 0xe963a535UL, 0x9e6495a3UL, 0x0edb8832UL, 0x79dcb8a4UL,
-    0xe0d5e91eUL, 0x97d2d988UL, 0x09b64c2bUL, 0x7eb17cbdUL, 0xe7b82d07UL,
-    0x90bf1d91UL, 0x1db71064UL, 0x6ab020f2UL, 0xf3b97148UL, 0x84be41deUL,
-    0x1adad47dUL, 0x6ddde4ebUL, 0xf4d4b551UL, 0x83d385c7UL, 0x136c9856UL,
-    0x646ba8c0UL, 0xfd62f97aUL, 0x8a65c9ecUL, 0x14015c4fUL, 0x63066cd9UL,
-    0xfa0f3d63UL, 0x8d080df5UL, 0x3b6e20c8UL, 0x4c69105eUL, 0xd56041e4UL,
-    0xa2677172UL, 0x3c03e4d1UL, 0x4b04d447UL, 0xd20d85fdUL, 0xa50ab56bUL,
-    0x35b5a8faUL, 0x42b2986cUL, 0xdbbbc9d6UL, 0xacbcf940UL, 0x32d86ce3UL,
-    0x45df5c75UL, 0xdcd60dcfUL, 0xabd13d59UL, 0x26d930acUL, 0x51de003aUL,
-    0xc8d75180UL, 0xbfd06116UL, 0x21b4f4b5UL, 0x56b3c423UL, 0xcfba9599UL,
-    0xb8bda50fUL, 0x2802b89eUL, 0x5f058808UL, 0xc60cd9b2UL, 0xb10be924UL,
-    0x2f6f7c87UL, 0x58684c11UL, 0xc1611dabUL, 0xb6662d3dUL, 0x76dc4190UL,
-    0x01db7106UL, 0x98d220bcUL, 0xefd5102aUL, 0x71b18589UL, 0x06b6b51fUL,
-    0x9fbfe4a5UL, 0xe8b8d433UL, 0x7807c9a2UL, 0x0f00f934UL, 0x9609a88eUL,
-    0xe10e9818UL, 0x7f6a0dbbUL, 0x086d3d2dUL, 0x91646c97UL, 0xe6635c01UL,
-    0x6b6b51f4UL, 0x1c6c6162UL, 0x856530d8UL, 0xf262004eUL, 0x6c0695edUL,
-    0x1b01a57bUL, 0x8208f4c1UL, 0xf50fc457UL, 0x65b0d9c6UL, 0x12b7e950UL,
-    0x8bbeb8eaUL, 0xfcb9887cUL, 0x62dd1ddfUL, 0x15da2d49UL, 0x8cd37cf3UL,
-    0xfbd44c65UL, 0x4db26158UL, 0x3ab551ceUL, 0xa3bc0074UL, 0xd4bb30e2UL,
-    0x4adfa541UL, 0x3dd895d7UL, 0xa4d1c46dUL, 0xd3d6f4fbUL, 0x4369e96aUL,
-    0x346ed9fcUL, 0xad678846UL, 0xda60b8d0UL, 0x44042d73UL, 0x33031de5UL,
-    0xaa0a4c5fUL, 0xdd0d7cc9UL, 0x5005713cUL, 0x270241aaUL, 0xbe0b1010UL,
-    0xc90c2086UL, 0x5768b525UL, 0x206f85b3UL, 0xb966d409UL, 0xce61e49fUL,
-    0x5edef90eUL, 0x29d9c998UL, 0xb0d09822UL, 0xc7d7a8b4UL, 0x59b33d17UL,
-    0x2eb40d81UL, 0xb7bd5c3bUL, 0xc0ba6cadUL, 0xedb88320UL, 0x9abfb3b6UL,
-    0x03b6e20cUL, 0x74b1d29aUL, 0xead54739UL, 0x9dd277afUL, 0x04db2615UL,
-    0x73dc1683UL, 0xe3630b12UL, 0x94643b84UL, 0x0d6d6a3eUL, 0x7a6a5aa8UL,
-    0xe40ecf0bUL, 0x9309ff9dUL, 0x0a00ae27UL, 0x7d079eb1UL, 0xf00f9344UL,
-    0x8708a3d2UL, 0x1e01f268UL, 0x6906c2feUL, 0xf762575dUL, 0x806567cbUL,
-    0x196c3671UL, 0x6e6b06e7UL, 0xfed41b76UL, 0x89d32be0UL, 0x10da7a5aUL,
-    0x67dd4accUL, 0xf9b9df6fUL, 0x8ebeeff9UL, 0x17b7be43UL, 0x60b08ed5UL,
-    0xd6d6a3e8UL, 0xa1d1937eUL, 0x38d8c2c4UL, 0x4fdff252UL, 0xd1bb67f1UL,
-    0xa6bc5767UL, 0x3fb506ddUL, 0x48b2364bUL, 0xd80d2bdaUL, 0xaf0a1b4cUL,
-    0x36034af6UL, 0x41047a60UL, 0xdf60efc3UL, 0xa867df55UL, 0x316e8eefUL,
-    0x4669be79UL, 0xcb61b38cUL, 0xbc66831aUL, 0x256fd2a0UL, 0x5268e236UL,
-    0xcc0c7795UL, 0xbb0b4703UL, 0x220216b9UL, 0x5505262fUL, 0xc5ba3bbeUL,
-    0xb2bd0b28UL, 0x2bb45a92UL, 0x5cb36a04UL, 0xc2d7ffa7UL, 0xb5d0cf31UL,
-    0x2cd99e8bUL, 0x5bdeae1dUL, 0x9b64c2b0UL, 0xec63f226UL, 0x756aa39cUL,
-    0x026d930aUL, 0x9c0906a9UL, 0xeb0e363fUL, 0x72076785UL, 0x05005713UL,
-    0x95bf4a82UL, 0xe2b87a14UL, 0x7bb12baeUL, 0x0cb61b38UL, 0x92d28e9bUL,
-    0xe5d5be0dUL, 0x7cdcefb7UL, 0x0bdbdf21UL, 0x86d3d2d4UL, 0xf1d4e242UL,
-    0x68ddb3f8UL, 0x1fda836eUL, 0x81be16cdUL, 0xf6b9265bUL, 0x6fb077e1UL,
-    0x18b74777UL, 0x88085ae6UL, 0xff0f6a70UL, 0x66063bcaUL, 0x11010b5cUL,
-    0x8f659effUL, 0xf862ae69UL, 0x616bffd3UL, 0x166ccf45UL, 0xa00ae278UL,
-    0xd70dd2eeUL, 0x4e048354UL, 0x3903b3c2UL, 0xa7672661UL, 0xd06016f7UL,
-    0x4969474dUL, 0x3e6e77dbUL, 0xaed16a4aUL, 0xd9d65adcUL, 0x40df0b66UL,
-    0x37d83bf0UL, 0xa9bcae53UL, 0xdebb9ec5UL, 0x47b2cf7fUL, 0x30b5ffe9UL,
-    0xbdbdf21cUL, 0xcabac28aUL, 0x53b39330UL, 0x24b4a3a6UL, 0xbad03605UL,
-    0xcdd70693UL, 0x54de5729UL, 0x23d967bfUL, 0xb3667a2eUL, 0xc4614ab8UL,
-    0x5d681b02UL, 0x2a6f2b94UL, 0xb40bbe37UL, 0xc30c8ea1UL, 0x5a05df1bUL,
-    0x2d02ef8dUL
-#ifdef BYFOUR
-  },
-  {
-    0x00000000UL, 0x191b3141UL, 0x32366282UL, 0x2b2d53c3UL, 0x646cc504UL,
-    0x7d77f445UL, 0x565aa786UL, 0x4f4196c7UL, 0xc8d98a08UL, 0xd1c2bb49UL,
-    0xfaefe88aUL, 0xe3f4d9cbUL, 0xacb54f0cUL, 0xb5ae7e4dUL, 0x9e832d8eUL,
-    0x87981ccfUL, 0x4ac21251UL, 0x53d92310UL, 0x78f470d3UL, 0x61ef4192UL,
-    0x2eaed755UL, 0x37b5e614UL, 0x1c98b5d7UL, 0x05838496UL, 0x821b9859UL,
-    0x9b00a918UL, 0xb02dfadbUL, 0xa936cb9aUL, 0xe6775d5dUL, 0xff6c6c1cUL,
-    0xd4413fdfUL, 0xcd5a0e9eUL, 0x958424a2UL, 0x8c9f15e3UL, 0xa7b24620UL,
-    0xbea97761UL, 0xf1e8e1a6UL, 0xe8f3d0e7UL, 0xc3de8324UL, 0xdac5b265UL,
-    0x5d5daeaaUL, 0x44469febUL, 0x6f6bcc28UL, 0x7670fd69UL, 0x39316baeUL,
-    0x202a5aefUL, 0x0b07092cUL, 0x121c386dUL, 0xdf4636f3UL, 0xc65d07b2UL,
-    0xed705471UL, 0xf46b6530UL, 0xbb2af3f7UL, 0xa231c2b6UL, 0x891c9175UL,
-    0x9007a034UL, 0x179fbcfbUL, 0x0e848dbaUL, 0x25a9de79UL, 0x3cb2ef38UL,
-    0x73f379ffUL, 0x6ae848beUL, 0x41c51b7dUL, 0x58de2a3cUL, 0xf0794f05UL,
-    0xe9627e44UL, 0xc24f2d87UL, 0xdb541cc6UL, 0x94158a01UL, 0x8d0ebb40UL,
-    0xa623e883UL, 0xbf38d9c2UL, 0x38a0c50dUL, 0x21bbf44cUL, 0x0a96a78fUL,
-    0x138d96ceUL, 0x5ccc0009UL, 0x45d73148UL, 0x6efa628bUL, 0x77e153caUL,
-    0xbabb5d54UL, 0xa3a06c15UL, 0x888d3fd6UL, 0x91960e97UL, 0xded79850UL,
-    0xc7cca911UL, 0xece1fad2UL, 0xf5facb93UL, 0x7262d75cUL, 0x6b79e61dUL,
-    0x4054b5deUL, 0x594f849fUL, 0x160e1258UL, 0x0f152319UL, 0x243870daUL,
-    0x3d23419bUL, 0x65fd6ba7UL, 0x7ce65ae6UL, 0x57cb0925UL, 0x4ed03864UL,
-    0x0191aea3UL, 0x188a9fe2UL, 0x33a7cc21UL, 0x2abcfd60UL, 0xad24e1afUL,
-    0xb43fd0eeUL, 0x9f12832dUL, 0x8609b26cUL, 0xc94824abUL, 0xd05315eaUL,
-    0xfb7e4629UL, 0xe2657768UL, 0x2f3f79f6UL, 0x362448b7UL, 0x1d091b74UL,
-    0x04122a35UL, 0x4b53bcf2UL, 0x52488db3UL, 0x7965de70UL, 0x607eef31UL,
-    0xe7e6f3feUL, 0xfefdc2bfUL, 0xd5d0917cUL, 0xcccba03dUL, 0x838a36faUL,
-    0x9a9107bbUL, 0xb1bc5478UL, 0xa8a76539UL, 0x3b83984bUL, 0x2298a90aUL,
-    0x09b5fac9UL, 0x10aecb88UL, 0x5fef5d4fUL, 0x46f46c0eUL, 0x6dd93fcdUL,
-    0x74c20e8cUL, 0xf35a1243UL, 0xea412302UL, 0xc16c70c1UL, 0xd8774180UL,
-    0x9736d747UL, 0x8e2de606UL, 0xa500b5c5UL, 0xbc1b8484UL, 0x71418a1aUL,
-    0x685abb5bUL, 0x4377e898UL, 0x5a6cd9d9UL, 0x152d4f1eUL, 0x0c367e5fUL,
-    0x271b2d9cUL, 0x3e001cddUL, 0xb9980012UL, 0xa0833153UL, 0x8bae6290UL,
-    0x92b553d1UL, 0xddf4c516UL, 0xc4eff457UL, 0xefc2a794UL, 0xf6d996d5UL,
-    0xae07bce9UL, 0xb71c8da8UL, 0x9c31de6bUL, 0x852aef2aUL, 0xca6b79edUL,
-    0xd37048acUL, 0xf85d1b6fUL, 0xe1462a2eUL, 0x66de36e1UL, 0x7fc507a0UL,
-    0x54e85463UL, 0x4df36522UL, 0x02b2f3e5UL, 0x1ba9c2a4UL, 0x30849167UL,
-    0x299fa026UL, 0xe4c5aeb8UL, 0xfdde9ff9UL, 0xd6f3cc3aUL, 0xcfe8fd7bUL,
-    0x80a96bbcUL, 0x99b25afdUL, 0xb29f093eUL, 0xab84387fUL, 0x2c1c24b0UL,
-    0x350715f1UL, 0x1e2a4632UL, 0x07317773UL, 0x4870e1b4UL, 0x516bd0f5UL,
-    0x7a468336UL, 0x635db277UL, 0xcbfad74eUL, 0xd2e1e60fUL, 0xf9ccb5ccUL,
-    0xe0d7848dUL, 0xaf96124aUL, 0xb68d230bUL, 0x9da070c8UL, 0x84bb4189UL,
-    0x03235d46UL, 0x1a386c07UL, 0x31153fc4UL, 0x280e0e85UL, 0x674f9842UL,
-    0x7e54a903UL, 0x5579fac0UL, 0x4c62cb81UL, 0x8138c51fUL, 0x9823f45eUL,
-    0xb30ea79dUL, 0xaa1596dcUL, 0xe554001bUL, 0xfc4f315aUL, 0xd7626299UL,
-    0xce7953d8UL, 0x49e14f17UL, 0x50fa7e56UL, 0x7bd72d95UL, 0x62cc1cd4UL,
-    0x2d8d8a13UL, 0x3496bb52UL, 0x1fbbe891UL, 0x06a0d9d0UL, 0x5e7ef3ecUL,
-    0x4765c2adUL, 0x6c48916eUL, 0x7553a02fUL, 0x3a1236e8UL, 0x230907a9UL,
-    0x0824546aUL, 0x113f652bUL, 0x96a779e4UL, 0x8fbc48a5UL, 0xa4911b66UL,
-    0xbd8a2a27UL, 0xf2cbbce0UL, 0xebd08da1UL, 0xc0fdde62UL, 0xd9e6ef23UL,
-    0x14bce1bdUL, 0x0da7d0fcUL, 0x268a833fUL, 0x3f91b27eUL, 0x70d024b9UL,
-    0x69cb15f8UL, 0x42e6463bUL, 0x5bfd777aUL, 0xdc656bb5UL, 0xc57e5af4UL,
-    0xee530937UL, 0xf7483876UL, 0xb809aeb1UL, 0xa1129ff0UL, 0x8a3fcc33UL,
-    0x9324fd72UL
-  },
-  {
-    0x00000000UL, 0x01c26a37UL, 0x0384d46eUL, 0x0246be59UL, 0x0709a8dcUL,
-    0x06cbc2ebUL, 0x048d7cb2UL, 0x054f1685UL, 0x0e1351b8UL, 0x0fd13b8fUL,
-    0x0d9785d6UL, 0x0c55efe1UL, 0x091af964UL, 0x08d89353UL, 0x0a9e2d0aUL,
-    0x0b5c473dUL, 0x1c26a370UL, 0x1de4c947UL, 0x1fa2771eUL, 0x1e601d29UL,
-    0x1b2f0bacUL, 0x1aed619bUL, 0x18abdfc2UL, 0x1969b5f5UL, 0x1235f2c8UL,
-    0x13f798ffUL, 0x11b126a6UL, 0x10734c91UL, 0x153c5a14UL, 0x14fe3023UL,
-    0x16b88e7aUL, 0x177ae44dUL, 0x384d46e0UL, 0x398f2cd7UL, 0x3bc9928eUL,
-    0x3a0bf8b9UL, 0x3f44ee3cUL, 0x3e86840bUL, 0x3cc03a52UL, 0x3d025065UL,
-    0x365e1758UL, 0x379c7d6fUL, 0x35dac336UL, 0x3418a901UL, 0x3157bf84UL,
-    0x3095d5b3UL, 0x32d36beaUL, 0x331101ddUL, 0x246be590UL, 0x25a98fa7UL,
-    0x27ef31feUL, 0x262d5bc9UL, 0x23624d4cUL, 0x22a0277bUL, 0x20e69922UL,
-    0x2124f315UL, 0x2a78b428UL, 0x2bbade1fUL, 0x29fc6046UL, 0x283e0a71UL,
-    0x2d711cf4UL, 0x2cb376c3UL, 0x2ef5c89aUL, 0x2f37a2adUL, 0x709a8dc0UL,
-    0x7158e7f7UL, 0x731e59aeUL, 0x72dc3399UL, 0x7793251cUL, 0x76514f2bUL,
-    0x7417f172UL, 0x75d59b45UL, 0x7e89dc78UL, 0x7f4bb64fUL, 0x7d0d0816UL,
-    0x7ccf6221UL, 0x798074a4UL, 0x78421e93UL, 0x7a04a0caUL, 0x7bc6cafdUL,
-    0x6cbc2eb0UL, 0x6d7e4487UL, 0x6f38fadeUL, 0x6efa90e9UL, 0x6bb5866cUL,
-    0x6a77ec5bUL, 0x68315202UL, 0x69f33835UL, 0x62af7f08UL, 0x636d153fUL,
-    0x612bab66UL, 0x60e9c151UL, 0x65a6d7d4UL, 0x6464bde3UL, 0x662203baUL,
-    0x67e0698dUL, 0x48d7cb20UL, 0x4915a117UL, 0x4b531f4eUL, 0x4a917579UL,
-    0x4fde63fcUL, 0x4e1c09cbUL, 0x4c5ab792UL, 0x4d98dda5UL, 0x46c49a98UL,
-    0x4706f0afUL, 0x45404ef6UL, 0x448224c1UL, 0x41cd3244UL, 0x400f5873UL,
-    0x4249e62aUL, 0x438b8c1dUL, 0x54f16850UL, 0x55330267UL, 0x5775bc3eUL,
-    0x56b7d609UL, 0x53f8c08cUL, 0x523aaabbUL, 0x507c14e2UL, 0x51be7ed5UL,
-    0x5ae239e8UL, 0x5b2053dfUL, 0x5966ed86UL, 0x58a487b1UL, 0x5deb9134UL,
-    0x5c29fb03UL, 0x5e6f455aUL, 0x5fad2f6dUL, 0xe1351b80UL, 0xe0f771b7UL,
-    0xe2b1cfeeUL, 0xe373a5d9UL, 0xe63cb35cUL, 0xe7fed96bUL, 0xe5b86732UL,
-    0xe47a0d05UL, 0xef264a38UL, 0xeee4200fUL, 0xeca29e56UL, 0xed60f461UL,
-    0xe82fe2e4UL, 0xe9ed88d3UL, 0xebab368aUL, 0xea695cbdUL, 0xfd13b8f0UL,
-    0xfcd1d2c7UL, 0xfe976c9eUL, 0xff5506a9UL, 0xfa1a102cUL, 0xfbd87a1bUL,
-    0xf99ec442UL, 0xf85cae75UL, 0xf300e948UL, 0xf2c2837fUL, 0xf0843d26UL,
-    0xf1465711UL, 0xf4094194UL, 0xf5cb2ba3UL, 0xf78d95faUL, 0xf64fffcdUL,
-    0xd9785d60UL, 0xd8ba3757UL, 0xdafc890eUL, 0xdb3ee339UL, 0xde71f5bcUL,
-    0xdfb39f8bUL, 0xddf521d2UL, 0xdc374be5UL, 0xd76b0cd8UL, 0xd6a966efUL,
-    0xd4efd8b6UL, 0xd52db281UL, 0xd062a404UL, 0xd1a0ce33UL, 0xd3e6706aUL,
-    0xd2241a5dUL, 0xc55efe10UL, 0xc49c9427UL, 0xc6da2a7eUL, 0xc7184049UL,
-    0xc25756ccUL, 0xc3953cfbUL, 0xc1d382a2UL, 0xc011e895UL, 0xcb4dafa8UL,
-    0xca8fc59fUL, 0xc8c97bc6UL, 0xc90b11f1UL, 0xcc440774UL, 0xcd866d43UL,
-    0xcfc0d31aUL, 0xce02b92dUL, 0x91af9640UL, 0x906dfc77UL, 0x922b422eUL,
-    0x93e92819UL, 0x96a63e9cUL, 0x976454abUL, 0x9522eaf2UL, 0x94e080c5UL,
-    0x9fbcc7f8UL, 0x9e7eadcfUL, 0x9c381396UL, 0x9dfa79a1UL, 0x98b56f24UL,
-    0x99770513UL, 0x9b31bb4aUL, 0x9af3d17dUL, 0x8d893530UL, 0x8c4b5f07UL,
-    0x8e0de15eUL, 0x8fcf8b69UL, 0x8a809decUL, 0x8b42f7dbUL, 0x89044982UL,
-    0x88c623b5UL, 0x839a6488UL, 0x82580ebfUL, 0x801eb0e6UL, 0x81dcdad1UL,
-    0x8493cc54UL, 0x8551a663UL, 0x8717183aUL, 0x86d5720dUL, 0xa9e2d0a0UL,
-    0xa820ba97UL, 0xaa6604ceUL, 0xaba46ef9UL, 0xaeeb787cUL, 0xaf29124bUL,
-    0xad6fac12UL, 0xacadc625UL, 0xa7f18118UL, 0xa633eb2fUL, 0xa4755576UL,
-    0xa5b73f41UL, 0xa0f829c4UL, 0xa13a43f3UL, 0xa37cfdaaUL, 0xa2be979dUL,
-    0xb5c473d0UL, 0xb40619e7UL, 0xb640a7beUL, 0xb782cd89UL, 0xb2cddb0cUL,
-    0xb30fb13bUL, 0xb1490f62UL, 0xb08b6555UL, 0xbbd72268UL, 0xba15485fUL,
-    0xb853f606UL, 0xb9919c31UL, 0xbcde8ab4UL, 0xbd1ce083UL, 0xbf5a5edaUL,
-    0xbe9834edUL
-  },
-  {
-    0x00000000UL, 0xb8bc6765UL, 0xaa09c88bUL, 0x12b5afeeUL, 0x8f629757UL,
-    0x37def032UL, 0x256b5fdcUL, 0x9dd738b9UL, 0xc5b428efUL, 0x7d084f8aUL,
-    0x6fbde064UL, 0xd7018701UL, 0x4ad6bfb8UL, 0xf26ad8ddUL, 0xe0df7733UL,
-    0x58631056UL, 0x5019579fUL, 0xe8a530faUL, 0xfa109f14UL, 0x42acf871UL,
-    0xdf7bc0c8UL, 0x67c7a7adUL, 0x75720843UL, 0xcdce6f26UL, 0x95ad7f70UL,
-    0x2d111815UL, 0x3fa4b7fbUL, 0x8718d09eUL, 0x1acfe827UL, 0xa2738f42UL,
-    0xb0c620acUL, 0x087a47c9UL, 0xa032af3eUL, 0x188ec85bUL, 0x0a3b67b5UL,
-    0xb28700d0UL, 0x2f503869UL, 0x97ec5f0cUL, 0x8559f0e2UL, 0x3de59787UL,
-    0x658687d1UL, 0xdd3ae0b4UL, 0xcf8f4f5aUL, 0x7733283fUL, 0xeae41086UL,
-    0x525877e3UL, 0x40edd80dUL, 0xf851bf68UL, 0xf02bf8a1UL, 0x48979fc4UL,
-    0x5a22302aUL, 0xe29e574fUL, 0x7f496ff6UL, 0xc7f50893UL, 0xd540a77dUL,
-    0x6dfcc018UL, 0x359fd04eUL, 0x8d23b72bUL, 0x9f9618c5UL, 0x272a7fa0UL,
-    0xbafd4719UL, 0x0241207cUL, 0x10f48f92UL, 0xa848e8f7UL, 0x9b14583dUL,
-    0x23a83f58UL, 0x311d90b6UL, 0x89a1f7d3UL, 0x1476cf6aUL, 0xaccaa80fUL,
-    0xbe7f07e1UL, 0x06c36084UL, 0x5ea070d2UL, 0xe61c17b7UL, 0xf4a9b859UL,
-    0x4c15df3cUL, 0xd1c2e785UL, 0x697e80e0UL, 0x7bcb2f0eUL, 0xc377486bUL,
-    0xcb0d0fa2UL, 0x73b168c7UL, 0x6104c729UL, 0xd9b8a04cUL, 0x446f98f5UL,
-    0xfcd3ff90UL, 0xee66507eUL, 0x56da371bUL, 0x0eb9274dUL, 0xb6054028UL,
-    0xa4b0efc6UL, 0x1c0c88a3UL, 0x81dbb01aUL, 0x3967d77fUL, 0x2bd27891UL,
-    0x936e1ff4UL, 0x3b26f703UL, 0x839a9066UL, 0x912f3f88UL, 0x299358edUL,
-    0xb4446054UL, 0x0cf80731UL, 0x1e4da8dfUL, 0xa6f1cfbaUL, 0xfe92dfecUL,
-    0x462eb889UL, 0x549b1767UL, 0xec277002UL, 0x71f048bbUL, 0xc94c2fdeUL,
-    0xdbf98030UL, 0x6345e755UL, 0x6b3fa09cUL, 0xd383c7f9UL, 0xc1366817UL,
-    0x798a0f72UL, 0xe45d37cbUL, 0x5ce150aeUL, 0x4e54ff40UL, 0xf6e89825UL,
-    0xae8b8873UL, 0x1637ef16UL, 0x048240f8UL, 0xbc3e279dUL, 0x21e91f24UL,
-    0x99557841UL, 0x8be0d7afUL, 0x335cb0caUL, 0xed59b63bUL, 0x55e5d15eUL,
-    0x47507eb0UL, 0xffec19d5UL, 0x623b216cUL, 0xda874609UL, 0xc832e9e7UL,
-    0x708e8e82UL, 0x28ed9ed4UL, 0x9051f9b1UL, 0x82e4565fUL, 0x3a58313aUL,
-    0xa78f0983UL, 0x1f336ee6UL, 0x0d86c108UL, 0xb53aa66dUL, 0xbd40e1a4UL,
-    0x05fc86c1UL, 0x1749292fUL, 0xaff54e4aUL, 0x322276f3UL, 0x8a9e1196UL,
-    0x982bbe78UL, 0x2097d91dUL, 0x78f4c94bUL, 0xc048ae2eUL, 0xd2fd01c0UL,
-    0x6a4166a5UL, 0xf7965e1cUL, 0x4f2a3979UL, 0x5d9f9697UL, 0xe523f1f2UL,
-    0x4d6b1905UL, 0xf5d77e60UL, 0xe762d18eUL, 0x5fdeb6ebUL, 0xc2098e52UL,
-    0x7ab5e937UL, 0x680046d9UL, 0xd0bc21bcUL, 0x88df31eaUL, 0x3063568fUL,
-    0x22d6f961UL, 0x9a6a9e04UL, 0x07bda6bdUL, 0xbf01c1d8UL, 0xadb46e36UL,
-    0x15080953UL, 0x1d724e9aUL, 0xa5ce29ffUL, 0xb77b8611UL, 0x0fc7e174UL,
-    0x9210d9cdUL, 0x2aacbea8UL, 0x38191146UL, 0x80a57623UL, 0xd8c66675UL,
-    0x607a0110UL, 0x72cfaefeUL, 0xca73c99bUL, 0x57a4f122UL, 0xef189647UL,
-    0xfdad39a9UL, 0x45115eccUL, 0x764dee06UL, 0xcef18963UL, 0xdc44268dUL,
-    0x64f841e8UL, 0xf92f7951UL, 0x41931e34UL, 0x5326b1daUL, 0xeb9ad6bfUL,
-    0xb3f9c6e9UL, 0x0b45a18cUL, 0x19f00e62UL, 0xa14c6907UL, 0x3c9b51beUL,
-    0x842736dbUL, 0x96929935UL, 0x2e2efe50UL, 0x2654b999UL, 0x9ee8defcUL,
-    0x8c5d7112UL, 0x34e11677UL, 0xa9362eceUL, 0x118a49abUL, 0x033fe645UL,
-    0xbb838120UL, 0xe3e09176UL, 0x5b5cf613UL, 0x49e959fdUL, 0xf1553e98UL,
-    0x6c820621UL, 0xd43e6144UL, 0xc68bceaaUL, 0x7e37a9cfUL, 0xd67f4138UL,
-    0x6ec3265dUL, 0x7c7689b3UL, 0xc4caeed6UL, 0x591dd66fUL, 0xe1a1b10aUL,
-    0xf3141ee4UL, 0x4ba87981UL, 0x13cb69d7UL, 0xab770eb2UL, 0xb9c2a15cUL,
-    0x017ec639UL, 0x9ca9fe80UL, 0x241599e5UL, 0x36a0360bUL, 0x8e1c516eUL,
-    0x866616a7UL, 0x3eda71c2UL, 0x2c6fde2cUL, 0x94d3b949UL, 0x090481f0UL,
-    0xb1b8e695UL, 0xa30d497bUL, 0x1bb12e1eUL, 0x43d23e48UL, 0xfb6e592dUL,
-    0xe9dbf6c3UL, 0x516791a6UL, 0xccb0a91fUL, 0x740cce7aUL, 0x66b96194UL,
-    0xde0506f1UL
-  },
-  {
-    0x00000000UL, 0x96300777UL, 0x2c610eeeUL, 0xba510999UL, 0x19c46d07UL,
-    0x8ff46a70UL, 0x35a563e9UL, 0xa395649eUL, 0x3288db0eUL, 0xa4b8dc79UL,
-    0x1ee9d5e0UL, 0x88d9d297UL, 0x2b4cb609UL, 0xbd7cb17eUL, 0x072db8e7UL,
-    0x911dbf90UL, 0x6410b71dUL, 0xf220b06aUL, 0x4871b9f3UL, 0xde41be84UL,
-    0x7dd4da1aUL, 0xebe4dd6dUL, 0x51b5d4f4UL, 0xc785d383UL, 0x56986c13UL,
-    0xc0a86b64UL, 0x7af962fdUL, 0xecc9658aUL, 0x4f5c0114UL, 0xd96c0663UL,
-    0x633d0ffaUL, 0xf50d088dUL, 0xc8206e3bUL, 0x5e10694cUL, 0xe44160d5UL,
-    0x727167a2UL, 0xd1e4033cUL, 0x47d4044bUL, 0xfd850dd2UL, 0x6bb50aa5UL,
-    0xfaa8b535UL, 0x6c98b242UL, 0xd6c9bbdbUL, 0x40f9bcacUL, 0xe36cd832UL,
-    0x755cdf45UL, 0xcf0dd6dcUL, 0x593dd1abUL, 0xac30d926UL, 0x3a00de51UL,
-    0x8051d7c8UL, 0x1661d0bfUL, 0xb5f4b421UL, 0x23c4b356UL, 0x9995bacfUL,
-    0x0fa5bdb8UL, 0x9eb80228UL, 0x0888055fUL, 0xb2d90cc6UL, 0x24e90bb1UL,
-    0x877c6f2fUL, 0x114c6858UL, 0xab1d61c1UL, 0x3d2d66b6UL, 0x9041dc76UL,
-    0x0671db01UL, 0xbc20d298UL, 0x2a10d5efUL, 0x8985b171UL, 0x1fb5b606UL,
-    0xa5e4bf9fUL, 0x33d4b8e8UL, 0xa2c90778UL, 0x34f9000fUL, 0x8ea80996UL,
-    0x18980ee1UL, 0xbb0d6a7fUL, 0x2d3d6d08UL, 0x976c6491UL, 0x015c63e6UL,
-    0xf4516b6bUL, 0x62616c1cUL, 0xd8306585UL, 0x4e0062f2UL, 0xed95066cUL,
-    0x7ba5011bUL, 0xc1f40882UL, 0x57c40ff5UL, 0xc6d9b065UL, 0x50e9b712UL,
-    0xeab8be8bUL, 0x7c88b9fcUL, 0xdf1ddd62UL, 0x492dda15UL, 0xf37cd38cUL,
-    0x654cd4fbUL, 0x5861b24dUL, 0xce51b53aUL, 0x7400bca3UL, 0xe230bbd4UL,
-    0x41a5df4aUL, 0xd795d83dUL, 0x6dc4d1a4UL, 0xfbf4d6d3UL, 0x6ae96943UL,
-    0xfcd96e34UL, 0x468867adUL, 0xd0b860daUL, 0x732d0444UL, 0xe51d0333UL,
-    0x5f4c0aaaUL, 0xc97c0dddUL, 0x3c710550UL, 0xaa410227UL, 0x10100bbeUL,
-    0x86200cc9UL, 0x25b56857UL, 0xb3856f20UL, 0x09d466b9UL, 0x9fe461ceUL,
-    0x0ef9de5eUL, 0x98c9d929UL, 0x2298d0b0UL, 0xb4a8d7c7UL, 0x173db359UL,
-    0x810db42eUL, 0x3b5cbdb7UL, 0xad6cbac0UL, 0x2083b8edUL, 0xb6b3bf9aUL,
-    0x0ce2b603UL, 0x9ad2b174UL, 0x3947d5eaUL, 0xaf77d29dUL, 0x1526db04UL,
-    0x8316dc73UL, 0x120b63e3UL, 0x843b6494UL, 0x3e6a6d0dUL, 0xa85a6a7aUL,
-    0x0bcf0ee4UL, 0x9dff0993UL, 0x27ae000aUL, 0xb19e077dUL, 0x44930ff0UL,
-    0xd2a30887UL, 0x68f2011eUL, 0xfec20669UL, 0x5d5762f7UL, 0xcb676580UL,
-    0x71366c19UL, 0xe7066b6eUL, 0x761bd4feUL, 0xe02bd389UL, 0x5a7ada10UL,
-    0xcc4add67UL, 0x6fdfb9f9UL, 0xf9efbe8eUL, 0x43beb717UL, 0xd58eb060UL,
-    0xe8a3d6d6UL, 0x7e93d1a1UL, 0xc4c2d838UL, 0x52f2df4fUL, 0xf167bbd1UL,
-    0x6757bca6UL, 0xdd06b53fUL, 0x4b36b248UL, 0xda2b0dd8UL, 0x4c1b0aafUL,
-    0xf64a0336UL, 0x607a0441UL, 0xc3ef60dfUL, 0x55df67a8UL, 0xef8e6e31UL,
-    0x79be6946UL, 0x8cb361cbUL, 0x1a8366bcUL, 0xa0d26f25UL, 0x36e26852UL,
-    0x95770cccUL, 0x03470bbbUL, 0xb9160222UL, 0x2f260555UL, 0xbe3bbac5UL,
-    0x280bbdb2UL, 0x925ab42bUL, 0x046ab35cUL, 0xa7ffd7c2UL, 0x31cfd0b5UL,
-    0x8b9ed92cUL, 0x1daede5bUL, 0xb0c2649bUL, 0x26f263ecUL, 0x9ca36a75UL,
-    0x0a936d02UL, 0xa906099cUL, 0x3f360eebUL, 0x85670772UL, 0x13570005UL,
-    0x824abf95UL, 0x147ab8e2UL, 0xae2bb17bUL, 0x381bb60cUL, 0x9b8ed292UL,
-    0x0dbed5e5UL, 0xb7efdc7cUL, 0x21dfdb0bUL, 0xd4d2d386UL, 0x42e2d4f1UL,
-    0xf8b3dd68UL, 0x6e83da1fUL, 0xcd16be81UL, 0x5b26b9f6UL, 0xe177b06fUL,
-    0x7747b718UL, 0xe65a0888UL, 0x706a0fffUL, 0xca3b0666UL, 0x5c0b0111UL,
-    0xff9e658fUL, 0x69ae62f8UL, 0xd3ff6b61UL, 0x45cf6c16UL, 0x78e20aa0UL,
-    0xeed20dd7UL, 0x5483044eUL, 0xc2b30339UL, 0x612667a7UL, 0xf71660d0UL,
-    0x4d476949UL, 0xdb776e3eUL, 0x4a6ad1aeUL, 0xdc5ad6d9UL, 0x660bdf40UL,
-    0xf03bd837UL, 0x53aebca9UL, 0xc59ebbdeUL, 0x7fcfb247UL, 0xe9ffb530UL,
-    0x1cf2bdbdUL, 0x8ac2bacaUL, 0x3093b353UL, 0xa6a3b424UL, 0x0536d0baUL,
-    0x9306d7cdUL, 0x2957de54UL, 0xbf67d923UL, 0x2e7a66b3UL, 0xb84a61c4UL,
-    0x021b685dUL, 0x942b6f2aUL, 0x37be0bb4UL, 0xa18e0cc3UL, 0x1bdf055aUL,
-    0x8def022dUL
-  },
-  {
-    0x00000000UL, 0x41311b19UL, 0x82623632UL, 0xc3532d2bUL, 0x04c56c64UL,
-    0x45f4777dUL, 0x86a75a56UL, 0xc796414fUL, 0x088ad9c8UL, 0x49bbc2d1UL,
-    0x8ae8effaUL, 0xcbd9f4e3UL, 0x0c4fb5acUL, 0x4d7eaeb5UL, 0x8e2d839eUL,
-    0xcf1c9887UL, 0x5112c24aUL, 0x1023d953UL, 0xd370f478UL, 0x9241ef61UL,
-    0x55d7ae2eUL, 0x14e6b537UL, 0xd7b5981cUL, 0x96848305UL, 0x59981b82UL,
-    0x18a9009bUL, 0xdbfa2db0UL, 0x9acb36a9UL, 0x5d5d77e6UL, 0x1c6c6cffUL,
-    0xdf3f41d4UL, 0x9e0e5acdUL, 0xa2248495UL, 0xe3159f8cUL, 0x2046b2a7UL,
-    0x6177a9beUL, 0xa6e1e8f1UL, 0xe7d0f3e8UL, 0x2483dec3UL, 0x65b2c5daUL,
-    0xaaae5d5dUL, 0xeb9f4644UL, 0x28cc6b6fUL, 0x69fd7076UL, 0xae6b3139UL,
-    0xef5a2a20UL, 0x2c09070bUL, 0x6d381c12UL, 0xf33646dfUL, 0xb2075dc6UL,
-    0x715470edUL, 0x30656bf4UL, 0xf7f32abbUL, 0xb6c231a2UL, 0x75911c89UL,
-    0x34a00790UL, 0xfbbc9f17UL, 0xba8d840eUL, 0x79dea925UL, 0x38efb23cUL,
-    0xff79f373UL, 0xbe48e86aUL, 0x7d1bc541UL, 0x3c2ade58UL, 0x054f79f0UL,
-    0x447e62e9UL, 0x872d4fc2UL, 0xc61c54dbUL, 0x018a1594UL, 0x40bb0e8dUL,
-    0x83e823a6UL, 0xc2d938bfUL, 0x0dc5a038UL, 0x4cf4bb21UL, 0x8fa7960aUL,
-    0xce968d13UL, 0x0900cc5cUL, 0x4831d745UL, 0x8b62fa6eUL, 0xca53e177UL,
-    0x545dbbbaUL, 0x156ca0a3UL, 0xd63f8d88UL, 0x970e9691UL, 0x5098d7deUL,
-    0x11a9ccc7UL, 0xd2fae1ecUL, 0x93cbfaf5UL, 0x5cd76272UL, 0x1de6796bUL,
-    0xdeb55440UL, 0x9f844f59UL, 0x58120e16UL, 0x1923150fUL, 0xda703824UL,
-    0x9b41233dUL, 0xa76bfd65UL, 0xe65ae67cUL, 0x2509cb57UL, 0x6438d04eUL,
-    0xa3ae9101UL, 0xe29f8a18UL, 0x21cca733UL, 0x60fdbc2aUL, 0xafe124adUL,
-    0xeed03fb4UL, 0x2d83129fUL, 0x6cb20986UL, 0xab2448c9UL, 0xea1553d0UL,
-    0x29467efbUL, 0x687765e2UL, 0xf6793f2fUL, 0xb7482436UL, 0x741b091dUL,
-    0x352a1204UL, 0xf2bc534bUL, 0xb38d4852UL, 0x70de6579UL, 0x31ef7e60UL,
-    0xfef3e6e7UL, 0xbfc2fdfeUL, 0x7c91d0d5UL, 0x3da0cbccUL, 0xfa368a83UL,
-    0xbb07919aUL, 0x7854bcb1UL, 0x3965a7a8UL, 0x4b98833bUL, 0x0aa99822UL,
-    0xc9fab509UL, 0x88cbae10UL, 0x4f5def5fUL, 0x0e6cf446UL, 0xcd3fd96dUL,
-    0x8c0ec274UL, 0x43125af3UL, 0x022341eaUL, 0xc1706cc1UL, 0x804177d8UL,
-    0x47d73697UL, 0x06e62d8eUL, 0xc5b500a5UL, 0x84841bbcUL, 0x1a8a4171UL,
-    0x5bbb5a68UL, 0x98e87743UL, 0xd9d96c5aUL, 0x1e4f2d15UL, 0x5f7e360cUL,
-    0x9c2d1b27UL, 0xdd1c003eUL, 0x120098b9UL, 0x533183a0UL, 0x9062ae8bUL,
-    0xd153b592UL, 0x16c5f4ddUL, 0x57f4efc4UL, 0x94a7c2efUL, 0xd596d9f6UL,
-    0xe9bc07aeUL, 0xa88d1cb7UL, 0x6bde319cUL, 0x2aef2a85UL, 0xed796bcaUL,
-    0xac4870d3UL, 0x6f1b5df8UL, 0x2e2a46e1UL, 0xe136de66UL, 0xa007c57fUL,
-    0x6354e854UL, 0x2265f34dUL, 0xe5f3b202UL, 0xa4c2a91bUL, 0x67918430UL,
-    0x26a09f29UL, 0xb8aec5e4UL, 0xf99fdefdUL, 0x3accf3d6UL, 0x7bfde8cfUL,
-    0xbc6ba980UL, 0xfd5ab299UL, 0x3e099fb2UL, 0x7f3884abUL, 0xb0241c2cUL,
-    0xf1150735UL, 0x32462a1eUL, 0x73773107UL, 0xb4e17048UL, 0xf5d06b51UL,
-    0x3683467aUL, 0x77b25d63UL, 0x4ed7facbUL, 0x0fe6e1d2UL, 0xccb5ccf9UL,
-    0x8d84d7e0UL, 0x4a1296afUL, 0x0b238db6UL, 0xc870a09dUL, 0x8941bb84UL,
-    0x465d2303UL, 0x076c381aUL, 0xc43f1531UL, 0x850e0e28UL, 0x42984f67UL,
-    0x03a9547eUL, 0xc0fa7955UL, 0x81cb624cUL, 0x1fc53881UL, 0x5ef42398UL,
-    0x9da70eb3UL, 0xdc9615aaUL, 0x1b0054e5UL, 0x5a314ffcUL, 0x996262d7UL,
-    0xd85379ceUL, 0x174fe149UL, 0x567efa50UL, 0x952dd77bUL, 0xd41ccc62UL,
-    0x138a8d2dUL, 0x52bb9634UL, 0x91e8bb1fUL, 0xd0d9a006UL, 0xecf37e5eUL,
-    0xadc26547UL, 0x6e91486cUL, 0x2fa05375UL, 0xe836123aUL, 0xa9070923UL,
-    0x6a542408UL, 0x2b653f11UL, 0xe479a796UL, 0xa548bc8fUL, 0x661b91a4UL,
-    0x272a8abdUL, 0xe0bccbf2UL, 0xa18dd0ebUL, 0x62defdc0UL, 0x23efe6d9UL,
-    0xbde1bc14UL, 0xfcd0a70dUL, 0x3f838a26UL, 0x7eb2913fUL, 0xb924d070UL,
-    0xf815cb69UL, 0x3b46e642UL, 0x7a77fd5bUL, 0xb56b65dcUL, 0xf45a7ec5UL,
-    0x370953eeUL, 0x763848f7UL, 0xb1ae09b8UL, 0xf09f12a1UL, 0x33cc3f8aUL,
-    0x72fd2493UL
-  },
-  {
-    0x00000000UL, 0x376ac201UL, 0x6ed48403UL, 0x59be4602UL, 0xdca80907UL,
-    0xebc2cb06UL, 0xb27c8d04UL, 0x85164f05UL, 0xb851130eUL, 0x8f3bd10fUL,
-    0xd685970dUL, 0xe1ef550cUL, 0x64f91a09UL, 0x5393d808UL, 0x0a2d9e0aUL,
-    0x3d475c0bUL, 0x70a3261cUL, 0x47c9e41dUL, 0x1e77a21fUL, 0x291d601eUL,
-    0xac0b2f1bUL, 0x9b61ed1aUL, 0xc2dfab18UL, 0xf5b56919UL, 0xc8f23512UL,
-    0xff98f713UL, 0xa626b111UL, 0x914c7310UL, 0x145a3c15UL, 0x2330fe14UL,
-    0x7a8eb816UL, 0x4de47a17UL, 0xe0464d38UL, 0xd72c8f39UL, 0x8e92c93bUL,
-    0xb9f80b3aUL, 0x3cee443fUL, 0x0b84863eUL, 0x523ac03cUL, 0x6550023dUL,
-    0x58175e36UL, 0x6f7d9c37UL, 0x36c3da35UL, 0x01a91834UL, 0x84bf5731UL,
-    0xb3d59530UL, 0xea6bd332UL, 0xdd011133UL, 0x90e56b24UL, 0xa78fa925UL,
-    0xfe31ef27UL, 0xc95b2d26UL, 0x4c4d6223UL, 0x7b27a022UL, 0x2299e620UL,
-    0x15f32421UL, 0x28b4782aUL, 0x1fdeba2bUL, 0x4660fc29UL, 0x710a3e28UL,
-    0xf41c712dUL, 0xc376b32cUL, 0x9ac8f52eUL, 0xada2372fUL, 0xc08d9a70UL,
-    0xf7e75871UL, 0xae591e73UL, 0x9933dc72UL, 0x1c259377UL, 0x2b4f5176UL,
-    0x72f11774UL, 0x459bd575UL, 0x78dc897eUL, 0x4fb64b7fUL, 0x16080d7dUL,
-    0x2162cf7cUL, 0xa4748079UL, 0x931e4278UL, 0xcaa0047aUL, 0xfdcac67bUL,
-    0xb02ebc6cUL, 0x87447e6dUL, 0xdefa386fUL, 0xe990fa6eUL, 0x6c86b56bUL,
-    0x5bec776aUL, 0x02523168UL, 0x3538f369UL, 0x087faf62UL, 0x3f156d63UL,
-    0x66ab2b61UL, 0x51c1e960UL, 0xd4d7a665UL, 0xe3bd6464UL, 0xba032266UL,
-    0x8d69e067UL, 0x20cbd748UL, 0x17a11549UL, 0x4e1f534bUL, 0x7975914aUL,
-    0xfc63de4fUL, 0xcb091c4eUL, 0x92b75a4cUL, 0xa5dd984dUL, 0x989ac446UL,
-    0xaff00647UL, 0xf64e4045UL, 0xc1248244UL, 0x4432cd41UL, 0x73580f40UL,
-    0x2ae64942UL, 0x1d8c8b43UL, 0x5068f154UL, 0x67023355UL, 0x3ebc7557UL,
-    0x09d6b756UL, 0x8cc0f853UL, 0xbbaa3a52UL, 0xe2147c50UL, 0xd57ebe51UL,
-    0xe839e25aUL, 0xdf53205bUL, 0x86ed6659UL, 0xb187a458UL, 0x3491eb5dUL,
-    0x03fb295cUL, 0x5a456f5eUL, 0x6d2fad5fUL, 0x801b35e1UL, 0xb771f7e0UL,
-    0xeecfb1e2UL, 0xd9a573e3UL, 0x5cb33ce6UL, 0x6bd9fee7UL, 0x3267b8e5UL,
-    0x050d7ae4UL, 0x384a26efUL, 0x0f20e4eeUL, 0x569ea2ecUL, 0x61f460edUL,
-    0xe4e22fe8UL, 0xd388ede9UL, 0x8a36abebUL, 0xbd5c69eaUL, 0xf0b813fdUL,
-    0xc7d2d1fcUL, 0x9e6c97feUL, 0xa90655ffUL, 0x2c101afaUL, 0x1b7ad8fbUL,
-    0x42c49ef9UL, 0x75ae5cf8UL, 0x48e900f3UL, 0x7f83c2f2UL, 0x263d84f0UL,
-    0x115746f1UL, 0x944109f4UL, 0xa32bcbf5UL, 0xfa958df7UL, 0xcdff4ff6UL,
-    0x605d78d9UL, 0x5737bad8UL, 0x0e89fcdaUL, 0x39e33edbUL, 0xbcf571deUL,
-    0x8b9fb3dfUL, 0xd221f5ddUL, 0xe54b37dcUL, 0xd80c6bd7UL, 0xef66a9d6UL,
-    0xb6d8efd4UL, 0x81b22dd5UL, 0x04a462d0UL, 0x33cea0d1UL, 0x6a70e6d3UL,
-    0x5d1a24d2UL, 0x10fe5ec5UL, 0x27949cc4UL, 0x7e2adac6UL, 0x494018c7UL,
-    0xcc5657c2UL, 0xfb3c95c3UL, 0xa282d3c1UL, 0x95e811c0UL, 0xa8af4dcbUL,
-    0x9fc58fcaUL, 0xc67bc9c8UL, 0xf1110bc9UL, 0x740744ccUL, 0x436d86cdUL,
-    0x1ad3c0cfUL, 0x2db902ceUL, 0x4096af91UL, 0x77fc6d90UL, 0x2e422b92UL,
-    0x1928e993UL, 0x9c3ea696UL, 0xab546497UL, 0xf2ea2295UL, 0xc580e094UL,
-    0xf8c7bc9fUL, 0xcfad7e9eUL, 0x9613389cUL, 0xa179fa9dUL, 0x246fb598UL,
-    0x13057799UL, 0x4abb319bUL, 0x7dd1f39aUL, 0x3035898dUL, 0x075f4b8cUL,
-    0x5ee10d8eUL, 0x698bcf8fUL, 0xec9d808aUL, 0xdbf7428bUL, 0x82490489UL,
-    0xb523c688UL, 0x88649a83UL, 0xbf0e5882UL, 0xe6b01e80UL, 0xd1dadc81UL,
-    0x54cc9384UL, 0x63a65185UL, 0x3a181787UL, 0x0d72d586UL, 0xa0d0e2a9UL,
-    0x97ba20a8UL, 0xce0466aaUL, 0xf96ea4abUL, 0x7c78ebaeUL, 0x4b1229afUL,
-    0x12ac6fadUL, 0x25c6adacUL, 0x1881f1a7UL, 0x2feb33a6UL, 0x765575a4UL,
-    0x413fb7a5UL, 0xc429f8a0UL, 0xf3433aa1UL, 0xaafd7ca3UL, 0x9d97bea2UL,
-    0xd073c4b5UL, 0xe71906b4UL, 0xbea740b6UL, 0x89cd82b7UL, 0x0cdbcdb2UL,
-    0x3bb10fb3UL, 0x620f49b1UL, 0x55658bb0UL, 0x6822d7bbUL, 0x5f4815baUL,
-    0x06f653b8UL, 0x319c91b9UL, 0xb48adebcUL, 0x83e01cbdUL, 0xda5e5abfUL,
-    0xed3498beUL
-  },
-  {
-    0x00000000UL, 0x6567bcb8UL, 0x8bc809aaUL, 0xeeafb512UL, 0x5797628fUL,
-    0x32f0de37UL, 0xdc5f6b25UL, 0xb938d79dUL, 0xef28b4c5UL, 0x8a4f087dUL,
-    0x64e0bd6fUL, 0x018701d7UL, 0xb8bfd64aUL, 0xddd86af2UL, 0x3377dfe0UL,
-    0x56106358UL, 0x9f571950UL, 0xfa30a5e8UL, 0x149f10faUL, 0x71f8ac42UL,
-    0xc8c07bdfUL, 0xada7c767UL, 0x43087275UL, 0x266fcecdUL, 0x707fad95UL,
-    0x1518112dUL, 0xfbb7a43fUL, 0x9ed01887UL, 0x27e8cf1aUL, 0x428f73a2UL,
-    0xac20c6b0UL, 0xc9477a08UL, 0x3eaf32a0UL, 0x5bc88e18UL, 0xb5673b0aUL,
-    0xd00087b2UL, 0x6938502fUL, 0x0c5fec97UL, 0xe2f05985UL, 0x8797e53dUL,
-    0xd1878665UL, 0xb4e03addUL, 0x5a4f8fcfUL, 0x3f283377UL, 0x8610e4eaUL,
-    0xe3775852UL, 0x0dd8ed40UL, 0x68bf51f8UL, 0xa1f82bf0UL, 0xc49f9748UL,
-    0x2a30225aUL, 0x4f579ee2UL, 0xf66f497fUL, 0x9308f5c7UL, 0x7da740d5UL,
-    0x18c0fc6dUL, 0x4ed09f35UL, 0x2bb7238dUL, 0xc518969fUL, 0xa07f2a27UL,
-    0x1947fdbaUL, 0x7c204102UL, 0x928ff410UL, 0xf7e848a8UL, 0x3d58149bUL,
-    0x583fa823UL, 0xb6901d31UL, 0xd3f7a189UL, 0x6acf7614UL, 0x0fa8caacUL,
-    0xe1077fbeUL, 0x8460c306UL, 0xd270a05eUL, 0xb7171ce6UL, 0x59b8a9f4UL,
-    0x3cdf154cUL, 0x85e7c2d1UL, 0xe0807e69UL, 0x0e2fcb7bUL, 0x6b4877c3UL,
-    0xa20f0dcbUL, 0xc768b173UL, 0x29c70461UL, 0x4ca0b8d9UL, 0xf5986f44UL,
-    0x90ffd3fcUL, 0x7e5066eeUL, 0x1b37da56UL, 0x4d27b90eUL, 0x284005b6UL,
-    0xc6efb0a4UL, 0xa3880c1cUL, 0x1ab0db81UL, 0x7fd76739UL, 0x9178d22bUL,
-    0xf41f6e93UL, 0x03f7263bUL, 0x66909a83UL, 0x883f2f91UL, 0xed589329UL,
-    0x546044b4UL, 0x3107f80cUL, 0xdfa84d1eUL, 0xbacff1a6UL, 0xecdf92feUL,
-    0x89b82e46UL, 0x67179b54UL, 0x027027ecUL, 0xbb48f071UL, 0xde2f4cc9UL,
-    0x3080f9dbUL, 0x55e74563UL, 0x9ca03f6bUL, 0xf9c783d3UL, 0x176836c1UL,
-    0x720f8a79UL, 0xcb375de4UL, 0xae50e15cUL, 0x40ff544eUL, 0x2598e8f6UL,
-    0x73888baeUL, 0x16ef3716UL, 0xf8408204UL, 0x9d273ebcUL, 0x241fe921UL,
-    0x41785599UL, 0xafd7e08bUL, 0xcab05c33UL, 0x3bb659edUL, 0x5ed1e555UL,
-    0xb07e5047UL, 0xd519ecffUL, 0x6c213b62UL, 0x094687daUL, 0xe7e932c8UL,
-    0x828e8e70UL, 0xd49eed28UL, 0xb1f95190UL, 0x5f56e482UL, 0x3a31583aUL,
-    0x83098fa7UL, 0xe66e331fUL, 0x08c1860dUL, 0x6da63ab5UL, 0xa4e140bdUL,
-    0xc186fc05UL, 0x2f294917UL, 0x4a4ef5afUL, 0xf3762232UL, 0x96119e8aUL,
-    0x78be2b98UL, 0x1dd99720UL, 0x4bc9f478UL, 0x2eae48c0UL, 0xc001fdd2UL,
-    0xa566416aUL, 0x1c5e96f7UL, 0x79392a4fUL, 0x97969f5dUL, 0xf2f123e5UL,
-    0x05196b4dUL, 0x607ed7f5UL, 0x8ed162e7UL, 0xebb6de5fUL, 0x528e09c2UL,
-    0x37e9b57aUL, 0xd9460068UL, 0xbc21bcd0UL, 0xea31df88UL, 0x8f566330UL,
-    0x61f9d622UL, 0x049e6a9aUL, 0xbda6bd07UL, 0xd8c101bfUL, 0x366eb4adUL,
-    0x53090815UL, 0x9a4e721dUL, 0xff29cea5UL, 0x11867bb7UL, 0x74e1c70fUL,
-    0xcdd91092UL, 0xa8beac2aUL, 0x46111938UL, 0x2376a580UL, 0x7566c6d8UL,
-    0x10017a60UL, 0xfeaecf72UL, 0x9bc973caUL, 0x22f1a457UL, 0x479618efUL,
-    0xa939adfdUL, 0xcc5e1145UL, 0x06ee4d76UL, 0x6389f1ceUL, 0x8d2644dcUL,
-    0xe841f864UL, 0x51792ff9UL, 0x341e9341UL, 0xdab12653UL, 0xbfd69aebUL,
-    0xe9c6f9b3UL, 0x8ca1450bUL, 0x620ef019UL, 0x07694ca1UL, 0xbe519b3cUL,
-    0xdb362784UL, 0x35999296UL, 0x50fe2e2eUL, 0x99b95426UL, 0xfcdee89eUL,
-    0x12715d8cUL, 0x7716e134UL, 0xce2e36a9UL, 0xab498a11UL, 0x45e63f03UL,
-    0x208183bbUL, 0x7691e0e3UL, 0x13f65c5bUL, 0xfd59e949UL, 0x983e55f1UL,
-    0x2106826cUL, 0x44613ed4UL, 0xaace8bc6UL, 0xcfa9377eUL, 0x38417fd6UL,
-    0x5d26c36eUL, 0xb389767cUL, 0xd6eecac4UL, 0x6fd61d59UL, 0x0ab1a1e1UL,
-    0xe41e14f3UL, 0x8179a84bUL, 0xd769cb13UL, 0xb20e77abUL, 0x5ca1c2b9UL,
-    0x39c67e01UL, 0x80fea99cUL, 0xe5991524UL, 0x0b36a036UL, 0x6e511c8eUL,
-    0xa7166686UL, 0xc271da3eUL, 0x2cde6f2cUL, 0x49b9d394UL, 0xf0810409UL,
-    0x95e6b8b1UL, 0x7b490da3UL, 0x1e2eb11bUL, 0x483ed243UL, 0x2d596efbUL,
-    0xc3f6dbe9UL, 0xa6916751UL, 0x1fa9b0ccUL, 0x7ace0c74UL, 0x9461b966UL,
-    0xf10605deUL
-#endif
-  }
-};
diff --git a/src/other/zlib/deflate.c b/src/other/zlib/deflate.c
deleted file mode 100644
index 979659d..0000000
--- a/src/other/zlib/deflate.c
+++ /dev/null
@@ -1,1834 +0,0 @@
-/* deflate.c -- compress data using the deflation algorithm
- * Copyright (C) 1995-2010 Jean-loup Gailly and Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/*
- *  ALGORITHM
- *
- *      The "deflation" process depends on being able to identify portions
- *      of the input text which are identical to earlier input (within a
- *      sliding window trailing behind the input currently being processed).
- *
- *      The most straightforward technique turns out to be the fastest for
- *      most input files: try all possible matches and select the longest.
- *      The key feature of this algorithm is that insertions into the string
- *      dictionary are very simple and thus fast, and deletions are avoided
- *      completely. Insertions are performed at each input character, whereas
- *      string matches are performed only when the previous match ends. So it
- *      is preferable to spend more time in matches to allow very fast string
- *      insertions and avoid deletions. The matching algorithm for small
- *      strings is inspired from that of Rabin & Karp. A brute force approach
- *      is used to find longer strings when a small match has been found.
- *      A similar algorithm is used in comic (by Jan-Mark Wams) and freeze
- *      (by Leonid Broukhis).
- *         A previous version of this file used a more sophisticated algorithm
- *      (by Fiala and Greene) which is guaranteed to run in linear amortized
- *      time, but has a larger average cost, uses more memory and is patented.
- *      However the F&G algorithm may be faster for some highly redundant
- *      files if the parameter max_chain_length (described below) is too large.
- *
- *  ACKNOWLEDGEMENTS
- *
- *      The idea of lazy evaluation of matches is due to Jan-Mark Wams, and
- *      I found it in 'freeze' written by Leonid Broukhis.
- *      Thanks to many people for bug reports and testing.
- *
- *  REFERENCES
- *
- *      Deutsch, L.P.,"DEFLATE Compressed Data Format Specification".
- *      Available in http://www.ietf.org/rfc/rfc1951.txt
- *
- *      A description of the Rabin and Karp algorithm is given in the book
- *         "Algorithms" by R. Sedgewick, Addison-Wesley, p252.
- *
- *      Fiala,E.R., and Greene,D.H.
- *         Data Compression with Finite Windows, Comm.ACM, 32,4 (1989) 490-595
- *
- */
-
-/* @(#) $Id: deflate.c 21114 2010-05-10 07:14:43Z dtremenak $ */
-
-#include "deflate.h"
-
-const char deflate_copyright[] =
-   " deflate 1.2.5 Copyright 1995-2010 Jean-loup Gailly and Mark Adler ";
-/*
-  If you use the zlib library in a product, an acknowledgment is welcome
-  in the documentation of your product. If for some reason you cannot
-  include such an acknowledgment, I would appreciate that you keep this
-  copyright string in the executable of your product.
- */
-
-/* ===========================================================================
- *  Function prototypes.
- */
-typedef enum {
-    need_more,      /* block not completed, need more input or more output */
-    block_done,     /* block flush performed */
-    finish_started, /* finish started, need only more output at next deflate */
-    finish_done     /* finish done, accept no more input or output */
-} block_state;
-
-typedef block_state (*compress_func) OF((deflate_state *s, int flush));
-/* Compression function. Returns the block state after the call. */
-
-local void fill_window    OF((deflate_state *s));
-local block_state deflate_stored OF((deflate_state *s, int flush));
-local block_state deflate_fast   OF((deflate_state *s, int flush));
-#ifndef FASTEST
-local block_state deflate_slow   OF((deflate_state *s, int flush));
-#endif
-local block_state deflate_rle    OF((deflate_state *s, int flush));
-local block_state deflate_huff   OF((deflate_state *s, int flush));
-local void lm_init        OF((deflate_state *s));
-local void putShortMSB    OF((deflate_state *s, uInt b));
-local void flush_pending  OF((z_streamp strm));
-local int read_buf        OF((z_streamp strm, Bytef *buf, unsigned size));
-#ifdef ASMV
-      void match_init OF((void)); /* asm code initialization */
-      uInt longest_match  OF((deflate_state *s, IPos cur_match));
-#else
-local uInt longest_match  OF((deflate_state *s, IPos cur_match));
-#endif
-
-#ifdef DEBUG
-local  void check_match OF((deflate_state *s, IPos start, IPos match,
-                            int length));
-#endif
-
-/* ===========================================================================
- * Local data
- */
-
-#define NIL 0
-/* Tail of hash chains */
-
-#ifndef TOO_FAR
-#  define TOO_FAR 4096
-#endif
-/* Matches of length 3 are discarded if their distance exceeds TOO_FAR */
-
-/* Values for max_lazy_match, good_match and max_chain_length, depending on
- * the desired pack level (0..9). The values given below have been tuned to
- * exclude worst case performance for pathological files. Better values may be
- * found for specific files.
- */
-typedef struct config_s {
-   ush good_length; /* reduce lazy search above this match length */
-   ush max_lazy;    /* do not perform lazy search above this match length */
-   ush nice_length; /* quit search above this match length */
-   ush max_chain;
-   compress_func func;
-} config;
-
-#ifdef FASTEST
-local const config configuration_table[2] = {
-/*      good lazy nice chain */
-/* 0 */ {0,    0,  0,    0, deflate_stored},  /* store only */
-/* 1 */ {4,    4,  8,    4, deflate_fast}}; /* max speed, no lazy matches */
-#else
-local const config configuration_table[10] = {
-/*      good lazy nice chain */
-/* 0 */ {0,    0,  0,    0, deflate_stored},  /* store only */
-/* 1 */ {4,    4,  8,    4, deflate_fast}, /* max speed, no lazy matches */
-/* 2 */ {4,    5, 16,    8, deflate_fast},
-/* 3 */ {4,    6, 32,   32, deflate_fast},
-
-/* 4 */ {4,    4, 16,   16, deflate_slow},  /* lazy matches */
-/* 5 */ {8,   16, 32,   32, deflate_slow},
-/* 6 */ {8,   16, 128, 128, deflate_slow},
-/* 7 */ {8,   32, 128, 256, deflate_slow},
-/* 8 */ {32, 128, 258, 1024, deflate_slow},
-/* 9 */ {32, 258, 258, 4096, deflate_slow}}; /* max compression */
-#endif
-
-/* Note: the deflate() code requires max_lazy >= MIN_MATCH and max_chain >= 4
- * For deflate_fast() (levels <= 3) good is ignored and lazy has a different
- * meaning.
- */
-
-#define EQUAL 0
-/* result of memcmp for equal strings */
-
-#ifndef NO_DUMMY_DECL
-struct static_tree_desc_s {int dummy;}; /* for buggy compilers */
-#endif
-
-/* ===========================================================================
- * Update a hash value with the given input byte
- * IN  assertion: all calls to to UPDATE_HASH are made with consecutive
- *    input characters, so that a running hash key can be computed from the
- *    previous key instead of complete recalculation each time.
- */
-#define UPDATE_HASH(s,h,c) (h = (((h)<<s->hash_shift) ^ (c)) & s->hash_mask)
-
-
-/* ===========================================================================
- * Insert string str in the dictionary and set match_head to the previous head
- * of the hash chain (the most recent string with same hash key). Return
- * the previous length of the hash chain.
- * If this file is compiled with -DFASTEST, the compression level is forced
- * to 1, and no hash chains are maintained.
- * IN  assertion: all calls to to INSERT_STRING are made with consecutive
- *    input characters and the first MIN_MATCH bytes of str are valid
- *    (except for the last MIN_MATCH-1 bytes of the input file).
- */
-#ifdef FASTEST
-#define INSERT_STRING(s, str, match_head) \
-   (UPDATE_HASH(s, s->ins_h, s->window[(str) + (MIN_MATCH-1)]), \
-    match_head = s->head[s->ins_h], \
-    s->head[s->ins_h] = (Pos)(str))
-#else
-#define INSERT_STRING(s, str, match_head) \
-   (UPDATE_HASH(s, s->ins_h, s->window[(str) + (MIN_MATCH-1)]), \
-    match_head = s->prev[(str) & s->w_mask] = s->head[s->ins_h], \
-    s->head[s->ins_h] = (Pos)(str))
-#endif
-
-/* ===========================================================================
- * Initialize the hash table (avoiding 64K overflow for 16 bit systems).
- * prev[] will be initialized on the fly.
- */
-#define CLEAR_HASH(s) \
-    s->head[s->hash_size-1] = NIL; \
-    zmemzero((Bytef *)s->head, (unsigned)(s->hash_size-1)*sizeof(*s->head));
-
-/* ========================================================================= */
-int ZEXPORT deflateInit_(strm, level, version, stream_size)
-    z_streamp strm;
-    int level;
-    const char *version;
-    int stream_size;
-{
-    return deflateInit2_(strm, level, Z_DEFLATED, MAX_WBITS, DEF_MEM_LEVEL,
-                         Z_DEFAULT_STRATEGY, version, stream_size);
-    /* To do: ignore strm->next_in if we use it as window */
-}
-
-/* ========================================================================= */
-int ZEXPORT deflateInit2_(strm, level, method, windowBits, memLevel, strategy,
-                  version, stream_size)
-    z_streamp strm;
-    int  level;
-    int  method;
-    int  windowBits;
-    int  memLevel;
-    int  strategy;
-    const char *version;
-    int stream_size;
-{
-    deflate_state *s;
-    int wrap = 1;
-    static const char my_version[] = ZLIB_VERSION;
-
-    ushf *overlay;
-    /* We overlay pending_buf and d_buf+l_buf. This works since the average
-     * output size for (length,distance) codes is <= 24 bits.
-     */
-
-    if (version == Z_NULL || version[0] != my_version[0] ||
-        stream_size != sizeof(z_stream)) {
-        return Z_VERSION_ERROR;
-    }
-    if (strm == Z_NULL) return Z_STREAM_ERROR;
-
-    strm->msg = Z_NULL;
-    if (strm->zalloc == (alloc_func)0) {
-        strm->zalloc = zcalloc;
-        strm->opaque = (voidpf)0;
-    }
-    if (strm->zfree == (free_func)0) strm->zfree = zcfree;
-
-#ifdef FASTEST
-    if (level != 0) level = 1;
-#else
-    if (level == Z_DEFAULT_COMPRESSION) level = 6;
-#endif
-
-    if (windowBits < 0) { /* suppress zlib wrapper */
-        wrap = 0;
-        windowBits = -windowBits;
-    }
-#ifdef GZIP
-    else if (windowBits > 15) {
-        wrap = 2;       /* write gzip wrapper instead */
-        windowBits -= 16;
-    }
-#endif
-    if (memLevel < 1 || memLevel > MAX_MEM_LEVEL || method != Z_DEFLATED ||
-        windowBits < 8 || windowBits > 15 || level < 0 || level > 9 ||
-        strategy < 0 || strategy > Z_FIXED) {
-        return Z_STREAM_ERROR;
-    }
-    if (windowBits == 8) windowBits = 9;  /* until 256-byte window bug fixed */
-    s = (deflate_state *) ZALLOC(strm, 1, sizeof(deflate_state));
-    if (s == Z_NULL) return Z_MEM_ERROR;
-    strm->state = (struct internal_state FAR *)s;
-    s->strm = strm;
-
-    s->wrap = wrap;
-    s->gzhead = Z_NULL;
-    s->w_bits = windowBits;
-    s->w_size = 1 << s->w_bits;
-    s->w_mask = s->w_size - 1;
-
-    s->hash_bits = memLevel + 7;
-    s->hash_size = 1 << s->hash_bits;
-    s->hash_mask = s->hash_size - 1;
-    s->hash_shift =  ((s->hash_bits+MIN_MATCH-1)/MIN_MATCH);
-
-    s->window = (Bytef *) ZALLOC(strm, s->w_size, 2*sizeof(Byte));
-    s->prev   = (Posf *)  ZALLOC(strm, s->w_size, sizeof(Pos));
-    s->head   = (Posf *)  ZALLOC(strm, s->hash_size, sizeof(Pos));
-
-    s->high_water = 0;      /* nothing written to s->window yet */
-
-    s->lit_bufsize = 1 << (memLevel + 6); /* 16K elements by default */
-
-    overlay = (ushf *) ZALLOC(strm, s->lit_bufsize, sizeof(ush)+2);
-    s->pending_buf = (uchf *) overlay;
-    s->pending_buf_size = (ulg)s->lit_bufsize * (sizeof(ush)+2L);
-
-    if (s->window == Z_NULL || s->prev == Z_NULL || s->head == Z_NULL ||
-        s->pending_buf == Z_NULL) {
-        s->status = FINISH_STATE;
-        strm->msg = (char*)ERR_MSG(Z_MEM_ERROR);
-        deflateEnd (strm);
-        return Z_MEM_ERROR;
-    }
-    s->d_buf = overlay + s->lit_bufsize/sizeof(ush);
-    s->l_buf = s->pending_buf + (1+sizeof(ush))*s->lit_bufsize;
-
-    s->level = level;
-    s->strategy = strategy;
-    s->method = (Byte)method;
-
-    return deflateReset(strm);
-}
-
-/* ========================================================================= */
-int ZEXPORT deflateSetDictionary (strm, dictionary, dictLength)
-    z_streamp strm;
-    const Bytef *dictionary;
-    uInt  dictLength;
-{
-    deflate_state *s;
-    uInt length = dictLength;
-    uInt n;
-    IPos hash_head = 0;
-
-    if (strm == Z_NULL || strm->state == Z_NULL || dictionary == Z_NULL ||
-        strm->state->wrap == 2 ||
-        (strm->state->wrap == 1 && strm->state->status != INIT_STATE))
-        return Z_STREAM_ERROR;
-
-    s = strm->state;
-    if (s->wrap)
-        strm->adler = adler32(strm->adler, dictionary, dictLength);
-
-    if (length < MIN_MATCH) return Z_OK;
-    if (length > s->w_size) {
-        length = s->w_size;
-        dictionary += dictLength - length; /* use the tail of the dictionary */
-    }
-    zmemcpy(s->window, dictionary, length);
-    s->strstart = length;
-    s->block_start = (long)length;
-
-    /* Insert all strings in the hash table (except for the last two bytes).
-     * s->lookahead stays null, so s->ins_h will be recomputed at the next
-     * call of fill_window.
-     */
-    s->ins_h = s->window[0];
-    UPDATE_HASH(s, s->ins_h, s->window[1]);
-    for (n = 0; n <= length - MIN_MATCH; n++) {
-        INSERT_STRING(s, n, hash_head);
-    }
-    if (hash_head) hash_head = 0;  /* to make compiler happy */
-    return Z_OK;
-}
-
-/* ========================================================================= */
-int ZEXPORT deflateReset (strm)
-    z_streamp strm;
-{
-    deflate_state *s;
-
-    if (strm == Z_NULL || strm->state == Z_NULL ||
-        strm->zalloc == (alloc_func)0 || strm->zfree == (free_func)0) {
-        return Z_STREAM_ERROR;
-    }
-
-    strm->total_in = strm->total_out = 0;
-    strm->msg = Z_NULL; /* use zfree if we ever allocate msg dynamically */
-    strm->data_type = Z_UNKNOWN;
-
-    s = (deflate_state *)strm->state;
-    s->pending = 0;
-    s->pending_out = s->pending_buf;
-
-    if (s->wrap < 0) {
-        s->wrap = -s->wrap; /* was made negative by deflate(..., Z_FINISH); */
-    }
-    s->status = s->wrap ? INIT_STATE : BUSY_STATE;
-    strm->adler =
-#ifdef GZIP
-        s->wrap == 2 ? crc32(0L, Z_NULL, 0) :
-#endif
-        adler32(0L, Z_NULL, 0);
-    s->last_flush = Z_NO_FLUSH;
-
-    _tr_init(s);
-    lm_init(s);
-
-    return Z_OK;
-}
-
-/* ========================================================================= */
-int ZEXPORT deflateSetHeader (strm, head)
-    z_streamp strm;
-    gz_headerp head;
-{
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-    if (strm->state->wrap != 2) return Z_STREAM_ERROR;
-    strm->state->gzhead = head;
-    return Z_OK;
-}
-
-/* ========================================================================= */
-int ZEXPORT deflatePrime (strm, bits, value)
-    z_streamp strm;
-    int bits;
-    int value;
-{
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-    strm->state->bi_valid = bits;
-    strm->state->bi_buf = (ush)(value & ((1 << bits) - 1));
-    return Z_OK;
-}
-
-/* ========================================================================= */
-int ZEXPORT deflateParams(strm, level, strategy)
-    z_streamp strm;
-    int level;
-    int strategy;
-{
-    deflate_state *s;
-    compress_func func;
-    int err = Z_OK;
-
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-    s = strm->state;
-
-#ifdef FASTEST
-    if (level != 0) level = 1;
-#else
-    if (level == Z_DEFAULT_COMPRESSION) level = 6;
-#endif
-    if (level < 0 || level > 9 || strategy < 0 || strategy > Z_FIXED) {
-        return Z_STREAM_ERROR;
-    }
-    func = configuration_table[s->level].func;
-
-    if ((strategy != s->strategy || func != configuration_table[level].func) &&
-        strm->total_in != 0) {
-        /* Flush the last buffer: */
-        err = deflate(strm, Z_BLOCK);
-    }
-    if (s->level != level) {
-        s->level = level;
-        s->max_lazy_match   = configuration_table[level].max_lazy;
-        s->good_match       = configuration_table[level].good_length;
-        s->nice_match       = configuration_table[level].nice_length;
-        s->max_chain_length = configuration_table[level].max_chain;
-    }
-    s->strategy = strategy;
-    return err;
-}
-
-/* ========================================================================= */
-int ZEXPORT deflateTune(strm, good_length, max_lazy, nice_length, max_chain)
-    z_streamp strm;
-    int good_length;
-    int max_lazy;
-    int nice_length;
-    int max_chain;
-{
-    deflate_state *s;
-
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-    s = strm->state;
-    s->good_match = good_length;
-    s->max_lazy_match = max_lazy;
-    s->nice_match = nice_length;
-    s->max_chain_length = max_chain;
-    return Z_OK;
-}
-
-/* =========================================================================
- * For the default windowBits of 15 and memLevel of 8, this function returns
- * a close to exact, as well as small, upper bound on the compressed size.
- * They are coded as constants here for a reason--if the #define's are
- * changed, then this function needs to be changed as well.  The return
- * value for 15 and 8 only works for those exact settings.
- *
- * For any setting other than those defaults for windowBits and memLevel,
- * the value returned is a conservative worst case for the maximum expansion
- * resulting from using fixed blocks instead of stored blocks, which deflate
- * can emit on compressed data for some combinations of the parameters.
- *
- * This function could be more sophisticated to provide closer upper bounds for
- * every combination of windowBits and memLevel.  But even the conservative
- * upper bound of about 14% expansion does not seem onerous for output buffer
- * allocation.
- */
-uLong ZEXPORT deflateBound(strm, sourceLen)
-    z_streamp strm;
-    uLong sourceLen;
-{
-    deflate_state *s;
-    uLong complen, wraplen;
-    Bytef *str;
-
-    /* conservative upper bound for compressed data */
-    complen = sourceLen +
-              ((sourceLen + 7) >> 3) + ((sourceLen + 63) >> 6) + 5;
-
-    /* if can't get parameters, return conservative bound plus zlib wrapper */
-    if (strm == Z_NULL || strm->state == Z_NULL)
-        return complen + 6;
-
-    /* compute wrapper length */
-    s = strm->state;
-    switch (s->wrap) {
-    case 0:                                 /* raw deflate */
-        wraplen = 0;
-        break;
-    case 1:                                 /* zlib wrapper */
-        wraplen = 6 + (s->strstart ? 4 : 0);
-        break;
-    case 2:                                 /* gzip wrapper */
-        wraplen = 18;
-        if (s->gzhead != Z_NULL) {          /* user-supplied gzip header */
-            if (s->gzhead->extra != Z_NULL)
-                wraplen += 2 + s->gzhead->extra_len;
-            str = s->gzhead->name;
-            if (str != Z_NULL)
-                do {
-                    wraplen++;
-                } while (*str++);
-            str = s->gzhead->comment;
-            if (str != Z_NULL)
-                do {
-                    wraplen++;
-                } while (*str++);
-            if (s->gzhead->hcrc)
-                wraplen += 2;
-        }
-        break;
-    default:                                /* for compiler happiness */
-        wraplen = 6;
-    }
-
-    /* if not default parameters, return conservative bound */
-    if (s->w_bits != 15 || s->hash_bits != 8 + 7)
-        return complen + wraplen;
-
-    /* default settings: return tight bound for that case */
-    return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) +
-           (sourceLen >> 25) + 13 - 6 + wraplen;
-}
-
-/* =========================================================================
- * Put a short in the pending buffer. The 16-bit value is put in MSB order.
- * IN assertion: the stream state is correct and there is enough room in
- * pending_buf.
- */
-local void putShortMSB (s, b)
-    deflate_state *s;
-    uInt b;
-{
-    put_byte(s, (Byte)(b >> 8));
-    put_byte(s, (Byte)(b & 0xff));
-}
-
-/* =========================================================================
- * Flush as much pending output as possible. All deflate() output goes
- * through this function so some applications may wish to modify it
- * to avoid allocating a large strm->next_out buffer and copying into it.
- * (See also read_buf()).
- */
-local void flush_pending(strm)
-    z_streamp strm;
-{
-    unsigned len = strm->state->pending;
-
-    if (len > strm->avail_out) len = strm->avail_out;
-    if (len == 0) return;
-
-    zmemcpy(strm->next_out, strm->state->pending_out, len);
-    strm->next_out  += len;
-    strm->state->pending_out  += len;
-    strm->total_out += len;
-    strm->avail_out  -= len;
-    strm->state->pending -= len;
-    if (strm->state->pending == 0) {
-        strm->state->pending_out = strm->state->pending_buf;
-    }
-}
-
-/* ========================================================================= */
-int ZEXPORT deflate (strm, flush)
-    z_streamp strm;
-    int flush;
-{
-    int old_flush; /* value of flush param for previous deflate call */
-    deflate_state *s;
-
-    if (strm == Z_NULL || strm->state == Z_NULL ||
-        flush > Z_BLOCK || flush < 0) {
-        return Z_STREAM_ERROR;
-    }
-    s = strm->state;
-
-    if (strm->next_out == Z_NULL ||
-        (strm->next_in == Z_NULL && strm->avail_in != 0) ||
-        (s->status == FINISH_STATE && flush != Z_FINISH)) {
-        ERR_RETURN(strm, Z_STREAM_ERROR);
-    }
-    if (strm->avail_out == 0) ERR_RETURN(strm, Z_BUF_ERROR);
-
-    s->strm = strm; /* just in case */
-    old_flush = s->last_flush;
-    s->last_flush = flush;
-
-    /* Write the header */
-    if (s->status == INIT_STATE) {
-#ifdef GZIP
-        if (s->wrap == 2) {
-            strm->adler = crc32(0L, Z_NULL, 0);
-            put_byte(s, 31);
-            put_byte(s, 139);
-            put_byte(s, 8);
-            if (s->gzhead == Z_NULL) {
-                put_byte(s, 0);
-                put_byte(s, 0);
-                put_byte(s, 0);
-                put_byte(s, 0);
-                put_byte(s, 0);
-                put_byte(s, s->level == 9 ? 2 :
-                            (s->strategy >= Z_HUFFMAN_ONLY || s->level < 2 ?
-                             4 : 0));
-                put_byte(s, OS_CODE);
-                s->status = BUSY_STATE;
-            }
-            else {
-                put_byte(s, (s->gzhead->text ? 1 : 0) +
-                            (s->gzhead->hcrc ? 2 : 0) +
-                            (s->gzhead->extra == Z_NULL ? 0 : 4) +
-                            (s->gzhead->name == Z_NULL ? 0 : 8) +
-                            (s->gzhead->comment == Z_NULL ? 0 : 16)
-                        );
-                put_byte(s, (Byte)(s->gzhead->time & 0xff));
-                put_byte(s, (Byte)((s->gzhead->time >> 8) & 0xff));
-                put_byte(s, (Byte)((s->gzhead->time >> 16) & 0xff));
-                put_byte(s, (Byte)((s->gzhead->time >> 24) & 0xff));
-                put_byte(s, s->level == 9 ? 2 :
-                            (s->strategy >= Z_HUFFMAN_ONLY || s->level < 2 ?
-                             4 : 0));
-                put_byte(s, s->gzhead->os & 0xff);
-                if (s->gzhead->extra != Z_NULL) {
-                    put_byte(s, s->gzhead->extra_len & 0xff);
-                    put_byte(s, (s->gzhead->extra_len >> 8) & 0xff);
-                }
-                if (s->gzhead->hcrc)
-                    strm->adler = crc32(strm->adler, s->pending_buf,
-                                        s->pending);
-                s->gzindex = 0;
-                s->status = EXTRA_STATE;
-            }
-        }
-        else
-#endif
-        {
-            uInt header = (Z_DEFLATED + ((s->w_bits-8)<<4)) << 8;
-            uInt level_flags;
-
-            if (s->strategy >= Z_HUFFMAN_ONLY || s->level < 2)
-                level_flags = 0;
-            else if (s->level < 6)
-                level_flags = 1;
-            else if (s->level == 6)
-                level_flags = 2;
-            else
-                level_flags = 3;
-            header |= (level_flags << 6);
-            if (s->strstart != 0) header |= PRESET_DICT;
-            header += 31 - (header % 31);
-
-            s->status = BUSY_STATE;
-            putShortMSB(s, header);
-
-            /* Save the adler32 of the preset dictionary: */
-            if (s->strstart != 0) {
-                putShortMSB(s, (uInt)(strm->adler >> 16));
-                putShortMSB(s, (uInt)(strm->adler & 0xffff));
-            }
-            strm->adler = adler32(0L, Z_NULL, 0);
-        }
-    }
-#ifdef GZIP
-    if (s->status == EXTRA_STATE) {
-        if (s->gzhead->extra != Z_NULL) {
-            uInt beg = s->pending;  /* start of bytes to update crc */
-
-            while (s->gzindex < (s->gzhead->extra_len & 0xffff)) {
-                if (s->pending == s->pending_buf_size) {
-                    if (s->gzhead->hcrc && s->pending > beg)
-                        strm->adler = crc32(strm->adler, s->pending_buf + beg,
-                                            s->pending - beg);
-                    flush_pending(strm);
-                    beg = s->pending;
-                    if (s->pending == s->pending_buf_size)
-                        break;
-                }
-                put_byte(s, s->gzhead->extra[s->gzindex]);
-                s->gzindex++;
-            }
-            if (s->gzhead->hcrc && s->pending > beg)
-                strm->adler = crc32(strm->adler, s->pending_buf + beg,
-                                    s->pending - beg);
-            if (s->gzindex == s->gzhead->extra_len) {
-                s->gzindex = 0;
-                s->status = NAME_STATE;
-            }
-        }
-        else
-            s->status = NAME_STATE;
-    }
-    if (s->status == NAME_STATE) {
-        if (s->gzhead->name != Z_NULL) {
-            uInt beg = s->pending;  /* start of bytes to update crc */
-            int val;
-
-            do {
-                if (s->pending == s->pending_buf_size) {
-                    if (s->gzhead->hcrc && s->pending > beg)
-                        strm->adler = crc32(strm->adler, s->pending_buf + beg,
-                                            s->pending - beg);
-                    flush_pending(strm);
-                    beg = s->pending;
-                    if (s->pending == s->pending_buf_size) {
-                        val = 1;
-                        break;
-                    }
-                }
-                val = s->gzhead->name[s->gzindex++];
-                put_byte(s, val);
-            } while (val != 0);
-            if (s->gzhead->hcrc && s->pending > beg)
-                strm->adler = crc32(strm->adler, s->pending_buf + beg,
-                                    s->pending - beg);
-            if (val == 0) {
-                s->gzindex = 0;
-                s->status = COMMENT_STATE;
-            }
-        }
-        else
-            s->status = COMMENT_STATE;
-    }
-    if (s->status == COMMENT_STATE) {
-        if (s->gzhead->comment != Z_NULL) {
-            uInt beg = s->pending;  /* start of bytes to update crc */
-            int val;
-
-            do {
-                if (s->pending == s->pending_buf_size) {
-                    if (s->gzhead->hcrc && s->pending > beg)
-                        strm->adler = crc32(strm->adler, s->pending_buf + beg,
-                                            s->pending - beg);
-                    flush_pending(strm);
-                    beg = s->pending;
-                    if (s->pending == s->pending_buf_size) {
-                        val = 1;
-                        break;
-                    }
-                }
-                val = s->gzhead->comment[s->gzindex++];
-                put_byte(s, val);
-            } while (val != 0);
-            if (s->gzhead->hcrc && s->pending > beg)
-                strm->adler = crc32(strm->adler, s->pending_buf + beg,
-                                    s->pending - beg);
-            if (val == 0)
-                s->status = HCRC_STATE;
-        }
-        else
-            s->status = HCRC_STATE;
-    }
-    if (s->status == HCRC_STATE) {
-        if (s->gzhead->hcrc) {
-            if (s->pending + 2 > s->pending_buf_size)
-                flush_pending(strm);
-            if (s->pending + 2 <= s->pending_buf_size) {
-                put_byte(s, (Byte)(strm->adler & 0xff));
-                put_byte(s, (Byte)((strm->adler >> 8) & 0xff));
-                strm->adler = crc32(0L, Z_NULL, 0);
-                s->status = BUSY_STATE;
-            }
-        }
-        else
-            s->status = BUSY_STATE;
-    }
-#endif
-
-    /* Flush as much pending output as possible */
-    if (s->pending != 0) {
-        flush_pending(strm);
-        if (strm->avail_out == 0) {
-            /* Since avail_out is 0, deflate will be called again with
-             * more output space, but possibly with both pending and
-             * avail_in equal to zero. There won't be anything to do,
-             * but this is not an error situation so make sure we
-             * return OK instead of BUF_ERROR at next call of deflate:
-             */
-            s->last_flush = -1;
-            return Z_OK;
-        }
-
-    /* Make sure there is something to do and avoid duplicate consecutive
-     * flushes. For repeated and useless calls with Z_FINISH, we keep
-     * returning Z_STREAM_END instead of Z_BUF_ERROR.
-     */
-    } else if (strm->avail_in == 0 && flush <= old_flush &&
-               flush != Z_FINISH) {
-        ERR_RETURN(strm, Z_BUF_ERROR);
-    }
-
-    /* User must not provide more input after the first FINISH: */
-    if (s->status == FINISH_STATE && strm->avail_in != 0) {
-        ERR_RETURN(strm, Z_BUF_ERROR);
-    }
-
-    /* Start a new block or continue the current one.
-     */
-    if (strm->avail_in != 0 || s->lookahead != 0 ||
-        (flush != Z_NO_FLUSH && s->status != FINISH_STATE)) {
-        block_state bstate;
-
-        bstate = s->strategy == Z_HUFFMAN_ONLY ? deflate_huff(s, flush) :
-                    (s->strategy == Z_RLE ? deflate_rle(s, flush) :
-                        (*(configuration_table[s->level].func))(s, flush));
-
-        if (bstate == finish_started || bstate == finish_done) {
-            s->status = FINISH_STATE;
-        }
-        if (bstate == need_more || bstate == finish_started) {
-            if (strm->avail_out == 0) {
-                s->last_flush = -1; /* avoid BUF_ERROR next call, see above */
-            }
-            return Z_OK;
-            /* If flush != Z_NO_FLUSH && avail_out == 0, the next call
-             * of deflate should use the same flush parameter to make sure
-             * that the flush is complete. So we don't have to output an
-             * empty block here, this will be done at next call. This also
-             * ensures that for a very small output buffer, we emit at most
-             * one empty block.
-             */
-        }
-        if (bstate == block_done) {
-            if (flush == Z_PARTIAL_FLUSH) {
-                _tr_align(s);
-            } else if (flush != Z_BLOCK) { /* FULL_FLUSH or SYNC_FLUSH */
-                _tr_stored_block(s, (char*)0, 0L, 0);
-                /* For a full flush, this empty block will be recognized
-                 * as a special marker by inflate_sync().
-                 */
-                if (flush == Z_FULL_FLUSH) {
-                    CLEAR_HASH(s);             /* forget history */
-                    if (s->lookahead == 0) {
-                        s->strstart = 0;
-                        s->block_start = 0L;
-                    }
-                }
-            }
-            flush_pending(strm);
-            if (strm->avail_out == 0) {
-              s->last_flush = -1; /* avoid BUF_ERROR at next call, see above */
-              return Z_OK;
-            }
-        }
-    }
-    Assert(strm->avail_out > 0, "bug2");
-
-    if (flush != Z_FINISH) return Z_OK;
-    if (s->wrap <= 0) return Z_STREAM_END;
-
-    /* Write the trailer */
-#ifdef GZIP
-    if (s->wrap == 2) {
-        put_byte(s, (Byte)(strm->adler & 0xff));
-        put_byte(s, (Byte)((strm->adler >> 8) & 0xff));
-        put_byte(s, (Byte)((strm->adler >> 16) & 0xff));
-        put_byte(s, (Byte)((strm->adler >> 24) & 0xff));
-        put_byte(s, (Byte)(strm->total_in & 0xff));
-        put_byte(s, (Byte)((strm->total_in >> 8) & 0xff));
-        put_byte(s, (Byte)((strm->total_in >> 16) & 0xff));
-        put_byte(s, (Byte)((strm->total_in >> 24) & 0xff));
-    }
-    else
-#endif
-    {
-        putShortMSB(s, (uInt)(strm->adler >> 16));
-        putShortMSB(s, (uInt)(strm->adler & 0xffff));
-    }
-    flush_pending(strm);
-    /* If avail_out is zero, the application will call deflate again
-     * to flush the rest.
-     */
-    if (s->wrap > 0) s->wrap = -s->wrap; /* write the trailer only once! */
-    return s->pending != 0 ? Z_OK : Z_STREAM_END;
-}
-
-/* ========================================================================= */
-int ZEXPORT deflateEnd (strm)
-    z_streamp strm;
-{
-    int status;
-
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-
-    status = strm->state->status;
-    if (status != INIT_STATE &&
-        status != EXTRA_STATE &&
-        status != NAME_STATE &&
-        status != COMMENT_STATE &&
-        status != HCRC_STATE &&
-        status != BUSY_STATE &&
-        status != FINISH_STATE) {
-      return Z_STREAM_ERROR;
-    }
-
-    /* Deallocate in reverse order of allocations: */
-    TRY_FREE(strm, strm->state->pending_buf);
-    TRY_FREE(strm, strm->state->head);
-    TRY_FREE(strm, strm->state->prev);
-    TRY_FREE(strm, strm->state->window);
-
-    ZFREE(strm, strm->state);
-    strm->state = Z_NULL;
-
-    return status == BUSY_STATE ? Z_DATA_ERROR : Z_OK;
-}
-
-/* =========================================================================
- * Copy the source state to the destination state.
- * To simplify the source, this is not supported for 16-bit MSDOS (which
- * doesn't have enough memory anyway to duplicate compression states).
- */
-int ZEXPORT deflateCopy (dest, source)
-    z_streamp dest;
-    z_streamp source;
-{
-#ifdef MAXSEG_64K
-    return Z_STREAM_ERROR;
-#else
-    deflate_state *ds;
-    deflate_state *ss;
-    ushf *overlay;
-
-
-    if (source == Z_NULL || dest == Z_NULL || source->state == Z_NULL) {
-        return Z_STREAM_ERROR;
-    }
-
-    ss = source->state;
-
-    zmemcpy(dest, source, sizeof(z_stream));
-
-    ds = (deflate_state *) ZALLOC(dest, 1, sizeof(deflate_state));
-    if (ds == Z_NULL) return Z_MEM_ERROR;
-    dest->state = (struct internal_state FAR *) ds;
-    zmemcpy(ds, ss, sizeof(deflate_state));
-    ds->strm = dest;
-
-    ds->window = (Bytef *) ZALLOC(dest, ds->w_size, 2*sizeof(Byte));
-    ds->prev   = (Posf *)  ZALLOC(dest, ds->w_size, sizeof(Pos));
-    ds->head   = (Posf *)  ZALLOC(dest, ds->hash_size, sizeof(Pos));
-    overlay = (ushf *) ZALLOC(dest, ds->lit_bufsize, sizeof(ush)+2);
-    ds->pending_buf = (uchf *) overlay;
-
-    if (ds->window == Z_NULL || ds->prev == Z_NULL || ds->head == Z_NULL ||
-        ds->pending_buf == Z_NULL) {
-        deflateEnd (dest);
-        return Z_MEM_ERROR;
-    }
-    /* following zmemcpy do not work for 16-bit MSDOS */
-    zmemcpy(ds->window, ss->window, ds->w_size * 2 * sizeof(Byte));
-    zmemcpy(ds->prev, ss->prev, ds->w_size * sizeof(Pos));
-    zmemcpy(ds->head, ss->head, ds->hash_size * sizeof(Pos));
-    zmemcpy(ds->pending_buf, ss->pending_buf, (uInt)ds->pending_buf_size);
-
-    ds->pending_out = ds->pending_buf + (ss->pending_out - ss->pending_buf);
-    ds->d_buf = overlay + ds->lit_bufsize/sizeof(ush);
-    ds->l_buf = ds->pending_buf + (1+sizeof(ush))*ds->lit_bufsize;
-
-    ds->l_desc.dyn_tree = ds->dyn_ltree;
-    ds->d_desc.dyn_tree = ds->dyn_dtree;
-    ds->bl_desc.dyn_tree = ds->bl_tree;
-
-    return Z_OK;
-#endif /* MAXSEG_64K */
-}
-
-/* ===========================================================================
- * Read a new buffer from the current input stream, update the adler32
- * and total number of bytes read.  All deflate() input goes through
- * this function so some applications may wish to modify it to avoid
- * allocating a large strm->next_in buffer and copying from it.
- * (See also flush_pending()).
- */
-local int read_buf(strm, buf, size)
-    z_streamp strm;
-    Bytef *buf;
-    unsigned size;
-{
-    unsigned len = strm->avail_in;
-
-    if (len > size) len = size;
-    if (len == 0) return 0;
-
-    strm->avail_in  -= len;
-
-    if (strm->state->wrap == 1) {
-        strm->adler = adler32(strm->adler, strm->next_in, len);
-    }
-#ifdef GZIP
-    else if (strm->state->wrap == 2) {
-        strm->adler = crc32(strm->adler, strm->next_in, len);
-    }
-#endif
-    zmemcpy(buf, strm->next_in, len);
-    strm->next_in  += len;
-    strm->total_in += len;
-
-    return (int)len;
-}
-
-/* ===========================================================================
- * Initialize the "longest match" routines for a new zlib stream
- */
-local void lm_init (s)
-    deflate_state *s;
-{
-    s->window_size = (ulg)2L*s->w_size;
-
-    CLEAR_HASH(s);
-
-    /* Set the default configuration parameters:
-     */
-    s->max_lazy_match   = configuration_table[s->level].max_lazy;
-    s->good_match       = configuration_table[s->level].good_length;
-    s->nice_match       = configuration_table[s->level].nice_length;
-    s->max_chain_length = configuration_table[s->level].max_chain;
-
-    s->strstart = 0;
-    s->block_start = 0L;
-    s->lookahead = 0;
-    s->match_length = s->prev_length = MIN_MATCH-1;
-    s->match_available = 0;
-    s->ins_h = 0;
-#ifndef FASTEST
-#ifdef ASMV
-    match_init(); /* initialize the asm code */
-#endif
-#endif
-}
-
-#ifndef FASTEST
-/* ===========================================================================
- * Set match_start to the longest match starting at the given string and
- * return its length. Matches shorter or equal to prev_length are discarded,
- * in which case the result is equal to prev_length and match_start is
- * garbage.
- * IN assertions: cur_match is the head of the hash chain for the current
- *   string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1
- * OUT assertion: the match length is not greater than s->lookahead.
- */
-#ifndef ASMV
-/* For 80x86 and 680x0, an optimized version will be provided in match.asm or
- * match.S. The code will be functionally equivalent.
- */
-local uInt longest_match(s, cur_match)
-    deflate_state *s;
-    IPos cur_match;                             /* current match */
-{
-    unsigned chain_length = s->max_chain_length;/* max hash chain length */
-    register Bytef *scan = s->window + s->strstart; /* current string */
-    register Bytef *match;                       /* matched string */
-    register int len;                           /* length of current match */
-    int best_len = s->prev_length;              /* best match length so far */
-    int nice_match = s->nice_match;             /* stop if match long enough */
-    IPos limit = s->strstart > (IPos)MAX_DIST(s) ?
-        s->strstart - (IPos)MAX_DIST(s) : NIL;
-    /* Stop when cur_match becomes <= limit. To simplify the code,
-     * we prevent matches with the string of window index 0.
-     */
-    Posf *prev = s->prev;
-    uInt wmask = s->w_mask;
-
-#ifdef UNALIGNED_OK
-    /* Compare two bytes at a time. Note: this is not always beneficial.
-     * Try with and without -DUNALIGNED_OK to check.
-     */
-    register Bytef *strend = s->window + s->strstart + MAX_MATCH - 1;
-    register ush scan_start = *(ushf*)scan;
-    register ush scan_end   = *(ushf*)(scan+best_len-1);
-#else
-    register Bytef *strend = s->window + s->strstart + MAX_MATCH;
-    register Byte scan_end1  = scan[best_len-1];
-    register Byte scan_end   = scan[best_len];
-#endif
-
-    /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16.
-     * It is easy to get rid of this optimization if necessary.
-     */
-    Assert(s->hash_bits >= 8 && MAX_MATCH == 258, "Code too clever");
-
-    /* Do not waste too much time if we already have a good match: */
-    if (s->prev_length >= s->good_match) {
-        chain_length >>= 2;
-    }
-    /* Do not look for matches beyond the end of the input. This is necessary
-     * to make deflate deterministic.
-     */
-    if ((uInt)nice_match > s->lookahead) nice_match = s->lookahead;
-
-    Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, "need lookahead");
-
-    do {
-        Assert(cur_match < s->strstart, "no future");
-        match = s->window + cur_match;
-
-        /* Skip to next match if the match length cannot increase
-         * or if the match length is less than 2.  Note that the checks below
-         * for insufficient lookahead only occur occasionally for performance
-         * reasons.  Therefore uninitialized memory will be accessed, and
-         * conditional jumps will be made that depend on those values.
-         * However the length of the match is limited to the lookahead, so
-         * the output of deflate is not affected by the uninitialized values.
-         */
-#if (defined(UNALIGNED_OK) && MAX_MATCH == 258)
-        /* This code assumes sizeof(unsigned short) == 2. Do not use
-         * UNALIGNED_OK if your compiler uses a different size.
-         */
-        if (*(ushf*)(match+best_len-1) != scan_end ||
-            *(ushf*)match != scan_start) continue;
-
-        /* It is not necessary to compare scan[2] and match[2] since they are
-         * always equal when the other bytes match, given that the hash keys
-         * are equal and that HASH_BITS >= 8. Compare 2 bytes at a time at
-         * strstart+3, +5, ... up to strstart+257. We check for insufficient
-         * lookahead only every 4th comparison; the 128th check will be made
-         * at strstart+257. If MAX_MATCH-2 is not a multiple of 8, it is
-         * necessary to put more guard bytes at the end of the window, or
-         * to check more often for insufficient lookahead.
-         */
-        Assert(scan[2] == match[2], "scan[2]?");
-        scan++, match++;
-        do {
-        } while (*(ushf*)(scan+=2) == *(ushf*)(match+=2) &&
-                 *(ushf*)(scan+=2) == *(ushf*)(match+=2) &&
-                 *(ushf*)(scan+=2) == *(ushf*)(match+=2) &&
-                 *(ushf*)(scan+=2) == *(ushf*)(match+=2) &&
-                 scan < strend);
-        /* The funny "do {}" generates better code on most compilers */
-
-        /* Here, scan <= window+strstart+257 */
-        Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan");
-        if (*scan == *match) scan++;
-
-        len = (MAX_MATCH - 1) - (int)(strend-scan);
-        scan = strend - (MAX_MATCH-1);
-
-#else /* UNALIGNED_OK */
-
-        if (match[best_len]   != scan_end  ||
-            match[best_len-1] != scan_end1 ||
-            *match            != *scan     ||
-            *++match          != scan[1])      continue;
-
-        /* The check at best_len-1 can be removed because it will be made
-         * again later. (This heuristic is not always a win.)
-         * It is not necessary to compare scan[2] and match[2] since they
-         * are always equal when the other bytes match, given that
-         * the hash keys are equal and that HASH_BITS >= 8.
-         */
-        scan += 2, match++;
-        Assert(*scan == *match, "match[2]?");
-
-        /* We check for insufficient lookahead only every 8th comparison;
-         * the 256th check will be made at strstart+258.
-         */
-        do {
-        } while (*++scan == *++match && *++scan == *++match &&
-                 *++scan == *++match && *++scan == *++match &&
-                 *++scan == *++match && *++scan == *++match &&
-                 *++scan == *++match && *++scan == *++match &&
-                 scan < strend);
-
-        Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan");
-
-        len = MAX_MATCH - (int)(strend - scan);
-        scan = strend - MAX_MATCH;
-
-#endif /* UNALIGNED_OK */
-
-        if (len > best_len) {
-            s->match_start = cur_match;
-            best_len = len;
-            if (len >= nice_match) break;
-#ifdef UNALIGNED_OK
-            scan_end = *(ushf*)(scan+best_len-1);
-#else
-            scan_end1  = scan[best_len-1];
-            scan_end   = scan[best_len];
-#endif
-        }
-    } while ((cur_match = prev[cur_match & wmask]) > limit
-             && --chain_length != 0);
-
-    if ((uInt)best_len <= s->lookahead) return (uInt)best_len;
-    return s->lookahead;
-}
-#endif /* ASMV */
-
-#else /* FASTEST */
-
-/* ---------------------------------------------------------------------------
- * Optimized version for FASTEST only
- */
-local uInt longest_match(s, cur_match)
-    deflate_state *s;
-    IPos cur_match;                             /* current match */
-{
-    register Bytef *scan = s->window + s->strstart; /* current string */
-    register Bytef *match;                       /* matched string */
-    register int len;                           /* length of current match */
-    register Bytef *strend = s->window + s->strstart + MAX_MATCH;
-
-    /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16.
-     * It is easy to get rid of this optimization if necessary.
-     */
-    Assert(s->hash_bits >= 8 && MAX_MATCH == 258, "Code too clever");
-
-    Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, "need lookahead");
-
-    Assert(cur_match < s->strstart, "no future");
-
-    match = s->window + cur_match;
-
-    /* Return failure if the match length is less than 2:
-     */
-    if (match[0] != scan[0] || match[1] != scan[1]) return MIN_MATCH-1;
-
-    /* The check at best_len-1 can be removed because it will be made
-     * again later. (This heuristic is not always a win.)
-     * It is not necessary to compare scan[2] and match[2] since they
-     * are always equal when the other bytes match, given that
-     * the hash keys are equal and that HASH_BITS >= 8.
-     */
-    scan += 2, match += 2;
-    Assert(*scan == *match, "match[2]?");
-
-    /* We check for insufficient lookahead only every 8th comparison;
-     * the 256th check will be made at strstart+258.
-     */
-    do {
-    } while (*++scan == *++match && *++scan == *++match &&
-             *++scan == *++match && *++scan == *++match &&
-             *++scan == *++match && *++scan == *++match &&
-             *++scan == *++match && *++scan == *++match &&
-             scan < strend);
-
-    Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan");
-
-    len = MAX_MATCH - (int)(strend - scan);
-
-    if (len < MIN_MATCH) return MIN_MATCH - 1;
-
-    s->match_start = cur_match;
-    return (uInt)len <= s->lookahead ? (uInt)len : s->lookahead;
-}
-
-#endif /* FASTEST */
-
-#ifdef DEBUG
-/* ===========================================================================
- * Check that the match at match_start is indeed a match.
- */
-local void check_match(s, start, match, length)
-    deflate_state *s;
-    IPos start, match;
-    int length;
-{
-    /* check that the match is indeed a match */
-    if (zmemcmp(s->window + match,
-                s->window + start, length) != EQUAL) {
-        fprintf(stderr, " start %u, match %u, length %d\n",
-                start, match, length);
-        do {
-            fprintf(stderr, "%c%c", s->window[match++], s->window[start++]);
-        } while (--length != 0);
-        z_error("invalid match");
-    }
-    if (z_verbose > 1) {
-        fprintf(stderr,"\\[%d,%d]", start-match, length);
-        do { putc(s->window[start++], stderr); } while (--length != 0);
-    }
-}
-#else
-#  define check_match(s, start, match, length)
-#endif /* DEBUG */
-
-/* ===========================================================================
- * Fill the window when the lookahead becomes insufficient.
- * Updates strstart and lookahead.
- *
- * IN assertion: lookahead < MIN_LOOKAHEAD
- * OUT assertions: strstart <= window_size-MIN_LOOKAHEAD
- *    At least one byte has been read, or avail_in == 0; reads are
- *    performed for at least two bytes (required for the zip translate_eol
- *    option -- not supported here).
- */
-local void fill_window(s)
-    deflate_state *s;
-{
-    register unsigned n, m;
-    register Posf *p;
-    unsigned more;    /* Amount of free space at the end of the window. */
-    uInt wsize = s->w_size;
-
-    do {
-        more = (unsigned)(s->window_size -(ulg)s->lookahead -(ulg)s->strstart);
-
-        /* Deal with !@#$% 64K limit: */
-        if (sizeof(int) <= 2) {
-            if (more == 0 && s->strstart == 0 && s->lookahead == 0) {
-                more = wsize;
-
-            } else if (more == (unsigned)(-1)) {
-                /* Very unlikely, but possible on 16 bit machine if
-                 * strstart == 0 && lookahead == 1 (input done a byte at time)
-                 */
-                more--;
-            }
-        }
-
-        /* If the window is almost full and there is insufficient lookahead,
-         * move the upper half to the lower one to make room in the upper half.
-         */
-        if (s->strstart >= wsize+MAX_DIST(s)) {
-
-            zmemcpy(s->window, s->window+wsize, (unsigned)wsize);
-            s->match_start -= wsize;
-            s->strstart    -= wsize; /* we now have strstart >= MAX_DIST */
-            s->block_start -= (long) wsize;
-
-            /* Slide the hash table (could be avoided with 32 bit values
-               at the expense of memory usage). We slide even when level == 0
-               to keep the hash table consistent if we switch back to level > 0
-               later. (Using level 0 permanently is not an optimal usage of
-               zlib, so we don't care about this pathological case.)
-             */
-            n = s->hash_size;
-            p = &s->head[n];
-            do {
-                m = *--p;
-                *p = (Pos)(m >= wsize ? m-wsize : NIL);
-            } while (--n);
-
-            n = wsize;
-#ifndef FASTEST
-            p = &s->prev[n];
-            do {
-                m = *--p;
-                *p = (Pos)(m >= wsize ? m-wsize : NIL);
-                /* If n is not on any hash chain, prev[n] is garbage but
-                 * its value will never be used.
-                 */
-            } while (--n);
-#endif
-            more += wsize;
-        }
-        if (s->strm->avail_in == 0) return;
-
-        /* If there was no sliding:
-         *    strstart <= WSIZE+MAX_DIST-1 && lookahead <= MIN_LOOKAHEAD - 1 &&
-         *    more == window_size - lookahead - strstart
-         * => more >= window_size - (MIN_LOOKAHEAD-1 + WSIZE + MAX_DIST-1)
-         * => more >= window_size - 2*WSIZE + 2
-         * In the BIG_MEM or MMAP case (not yet supported),
-         *   window_size == input_size + MIN_LOOKAHEAD  &&
-         *   strstart + s->lookahead <= input_size => more >= MIN_LOOKAHEAD.
-         * Otherwise, window_size == 2*WSIZE so more >= 2.
-         * If there was sliding, more >= WSIZE. So in all cases, more >= 2.
-         */
-        Assert(more >= 2, "more < 2");
-
-        n = read_buf(s->strm, s->window + s->strstart + s->lookahead, more);
-        s->lookahead += n;
-
-        /* Initialize the hash value now that we have some input: */
-        if (s->lookahead >= MIN_MATCH) {
-            s->ins_h = s->window[s->strstart];
-            UPDATE_HASH(s, s->ins_h, s->window[s->strstart+1]);
-#if MIN_MATCH != 3
-            Call UPDATE_HASH() MIN_MATCH-3 more times
-#endif
-        }
-        /* If the whole input has less than MIN_MATCH bytes, ins_h is garbage,
-         * but this is not important since only literal bytes will be emitted.
-         */
-
-    } while (s->lookahead < MIN_LOOKAHEAD && s->strm->avail_in != 0);
-
-    /* If the WIN_INIT bytes after the end of the current data have never been
-     * written, then zero those bytes in order to avoid memory check reports of
-     * the use of uninitialized (or uninitialised as Julian writes) bytes by
-     * the longest match routines.  Update the high water mark for the next
-     * time through here.  WIN_INIT is set to MAX_MATCH since the longest match
-     * routines allow scanning to strstart + MAX_MATCH, ignoring lookahead.
-     */
-    if (s->high_water < s->window_size) {
-        ulg curr = s->strstart + (ulg)(s->lookahead);
-        ulg init;
-
-        if (s->high_water < curr) {
-            /* Previous high water mark below current data -- zero WIN_INIT
-             * bytes or up to end of window, whichever is less.
-             */
-            init = s->window_size - curr;
-            if (init > WIN_INIT)
-                init = WIN_INIT;
-            zmemzero(s->window + curr, (unsigned)init);
-            s->high_water = curr + init;
-        }
-        else if (s->high_water < (ulg)curr + WIN_INIT) {
-            /* High water mark at or above current data, but below current data
-             * plus WIN_INIT -- zero out to current data plus WIN_INIT, or up
-             * to end of window, whichever is less.
-             */
-            init = (ulg)curr + WIN_INIT - s->high_water;
-            if (init > s->window_size - s->high_water)
-                init = s->window_size - s->high_water;
-            zmemzero(s->window + s->high_water, (unsigned)init);
-            s->high_water += init;
-        }
-    }
-}
-
-/* ===========================================================================
- * Flush the current block, with given end-of-file flag.
- * IN assertion: strstart is set to the end of the current match.
- */
-#define FLUSH_BLOCK_ONLY(s, last) { \
-   _tr_flush_block(s, (s->block_start >= 0L ? \
-                   (charf *)&s->window[(unsigned)s->block_start] : \
-                   (charf *)Z_NULL), \
-                (ulg)((long)s->strstart - s->block_start), \
-                (last)); \
-   s->block_start = s->strstart; \
-   flush_pending(s->strm); \
-   Tracev((stderr,"[FLUSH]")); \
-}
-
-/* Same but force premature exit if necessary. */
-#define FLUSH_BLOCK(s, last) { \
-   FLUSH_BLOCK_ONLY(s, last); \
-   if (s->strm->avail_out == 0) return (last) ? finish_started : need_more; \
-}
-
-/* ===========================================================================
- * Copy without compression as much as possible from the input stream, return
- * the current block state.
- * This function does not insert new strings in the dictionary since
- * uncompressible data is probably not useful. This function is used
- * only for the level=0 compression option.
- * NOTE: this function should be optimized to avoid extra copying from
- * window to pending_buf.
- */
-local block_state deflate_stored(s, flush)
-    deflate_state *s;
-    int flush;
-{
-    /* Stored blocks are limited to 0xffff bytes, pending_buf is limited
-     * to pending_buf_size, and each stored block has a 5 byte header:
-     */
-    ulg max_block_size = 0xffff;
-    ulg max_start;
-
-    if (max_block_size > s->pending_buf_size - 5) {
-        max_block_size = s->pending_buf_size - 5;
-    }
-
-    /* Copy as much as possible from input to output: */
-    for (;;) {
-        /* Fill the window as much as possible: */
-        if (s->lookahead <= 1) {
-
-            Assert(s->strstart < s->w_size+MAX_DIST(s) ||
-                   s->block_start >= (long)s->w_size, "slide too late");
-
-            fill_window(s);
-            if (s->lookahead == 0 && flush == Z_NO_FLUSH) return need_more;
-
-            if (s->lookahead == 0) break; /* flush the current block */
-        }
-        Assert(s->block_start >= 0L, "block gone");
-
-        s->strstart += s->lookahead;
-        s->lookahead = 0;
-
-        /* Emit a stored block if pending_buf will be full: */
-        max_start = s->block_start + max_block_size;
-        if (s->strstart == 0 || (ulg)s->strstart >= max_start) {
-            /* strstart == 0 is possible when wraparound on 16-bit machine */
-            s->lookahead = (uInt)(s->strstart - max_start);
-            s->strstart = (uInt)max_start;
-            FLUSH_BLOCK(s, 0);
-        }
-        /* Flush if we may have to slide, otherwise block_start may become
-         * negative and the data will be gone:
-         */
-        if (s->strstart - (uInt)s->block_start >= MAX_DIST(s)) {
-            FLUSH_BLOCK(s, 0);
-        }
-    }
-    FLUSH_BLOCK(s, flush == Z_FINISH);
-    return flush == Z_FINISH ? finish_done : block_done;
-}
-
-/* ===========================================================================
- * Compress as much as possible from the input stream, return the current
- * block state.
- * This function does not perform lazy evaluation of matches and inserts
- * new strings in the dictionary only for unmatched strings or for short
- * matches. It is used only for the fast compression options.
- */
-local block_state deflate_fast(s, flush)
-    deflate_state *s;
-    int flush;
-{
-    IPos hash_head;       /* head of the hash chain */
-    int bflush;           /* set if current block must be flushed */
-
-    for (;;) {
-        /* Make sure that we always have enough lookahead, except
-         * at the end of the input file. We need MAX_MATCH bytes
-         * for the next match, plus MIN_MATCH bytes to insert the
-         * string following the next match.
-         */
-        if (s->lookahead < MIN_LOOKAHEAD) {
-            fill_window(s);
-            if (s->lookahead < MIN_LOOKAHEAD && flush == Z_NO_FLUSH) {
-                return need_more;
-            }
-            if (s->lookahead == 0) break; /* flush the current block */
-        }
-
-        /* Insert the string window[strstart .. strstart+2] in the
-         * dictionary, and set hash_head to the head of the hash chain:
-         */
-        hash_head = NIL;
-        if (s->lookahead >= MIN_MATCH) {
-            INSERT_STRING(s, s->strstart, hash_head);
-        }
-
-        /* Find the longest match, discarding those <= prev_length.
-         * At this point we have always match_length < MIN_MATCH
-         */
-        if (hash_head != NIL && s->strstart - hash_head <= MAX_DIST(s)) {
-            /* To simplify the code, we prevent matches with the string
-             * of window index 0 (in particular we have to avoid a match
-             * of the string with itself at the start of the input file).
-             */
-            s->match_length = longest_match (s, hash_head);
-            /* longest_match() sets match_start */
-        }
-        if (s->match_length >= MIN_MATCH) {
-            check_match(s, s->strstart, s->match_start, s->match_length);
-
-            _tr_tally_dist(s, s->strstart - s->match_start,
-                           s->match_length - MIN_MATCH, bflush);
-
-            s->lookahead -= s->match_length;
-
-            /* Insert new strings in the hash table only if the match length
-             * is not too large. This saves time but degrades compression.
-             */
-#ifndef FASTEST
-            if (s->match_length <= s->max_insert_length &&
-                s->lookahead >= MIN_MATCH) {
-                s->match_length--; /* string at strstart already in table */
-                do {
-                    s->strstart++;
-                    INSERT_STRING(s, s->strstart, hash_head);
-                    /* strstart never exceeds WSIZE-MAX_MATCH, so there are
-                     * always MIN_MATCH bytes ahead.
-                     */
-                } while (--s->match_length != 0);
-                s->strstart++;
-            } else
-#endif
-            {
-                s->strstart += s->match_length;
-                s->match_length = 0;
-                s->ins_h = s->window[s->strstart];
-                UPDATE_HASH(s, s->ins_h, s->window[s->strstart+1]);
-#if MIN_MATCH != 3
-                Call UPDATE_HASH() MIN_MATCH-3 more times
-#endif
-                /* If lookahead < MIN_MATCH, ins_h is garbage, but it does not
-                 * matter since it will be recomputed at next deflate call.
-                 */
-            }
-        } else {
-            /* No match, output a literal byte */
-            Tracevv((stderr,"%c", s->window[s->strstart]));
-            _tr_tally_lit (s, s->window[s->strstart], bflush);
-            s->lookahead--;
-            s->strstart++;
-        }
-        if (bflush) FLUSH_BLOCK(s, 0);
-    }
-    FLUSH_BLOCK(s, flush == Z_FINISH);
-    return flush == Z_FINISH ? finish_done : block_done;
-}
-
-#ifndef FASTEST
-/* ===========================================================================
- * Same as above, but achieves better compression. We use a lazy
- * evaluation for matches: a match is finally adopted only if there is
- * no better match at the next window position.
- */
-local block_state deflate_slow(s, flush)
-    deflate_state *s;
-    int flush;
-{
-    IPos hash_head;          /* head of hash chain */
-    int bflush;              /* set if current block must be flushed */
-
-    /* Process the input block. */
-    for (;;) {
-        /* Make sure that we always have enough lookahead, except
-         * at the end of the input file. We need MAX_MATCH bytes
-         * for the next match, plus MIN_MATCH bytes to insert the
-         * string following the next match.
-         */
-        if (s->lookahead < MIN_LOOKAHEAD) {
-            fill_window(s);
-            if (s->lookahead < MIN_LOOKAHEAD && flush == Z_NO_FLUSH) {
-                return need_more;
-            }
-            if (s->lookahead == 0) break; /* flush the current block */
-        }
-
-        /* Insert the string window[strstart .. strstart+2] in the
-         * dictionary, and set hash_head to the head of the hash chain:
-         */
-        hash_head = NIL;
-        if (s->lookahead >= MIN_MATCH) {
-            INSERT_STRING(s, s->strstart, hash_head);
-        }
-
-        /* Find the longest match, discarding those <= prev_length.
-         */
-        s->prev_length = s->match_length, s->prev_match = s->match_start;
-        s->match_length = MIN_MATCH-1;
-
-        if (hash_head != NIL && s->prev_length < s->max_lazy_match &&
-            s->strstart - hash_head <= MAX_DIST(s)) {
-            /* To simplify the code, we prevent matches with the string
-             * of window index 0 (in particular we have to avoid a match
-             * of the string with itself at the start of the input file).
-             */
-            s->match_length = longest_match (s, hash_head);
-            /* longest_match() sets match_start */
-
-            if (s->match_length <= 5 && (s->strategy == Z_FILTERED
-#if TOO_FAR <= 32767
-                || (s->match_length == MIN_MATCH &&
-                    s->strstart - s->match_start > TOO_FAR)
-#endif
-                )) {
-
-                /* If prev_match is also MIN_MATCH, match_start is garbage
-                 * but we will ignore the current match anyway.
-                 */
-                s->match_length = MIN_MATCH-1;
-            }
-        }
-        /* If there was a match at the previous step and the current
-         * match is not better, output the previous match:
-         */
-        if (s->prev_length >= MIN_MATCH && s->match_length <= s->prev_length) {
-            uInt max_insert = s->strstart + s->lookahead - MIN_MATCH;
-            /* Do not insert strings in hash table beyond this. */
-
-            check_match(s, s->strstart-1, s->prev_match, s->prev_length);
-
-            _tr_tally_dist(s, s->strstart -1 - s->prev_match,
-                           s->prev_length - MIN_MATCH, bflush);
-
-            /* Insert in hash table all strings up to the end of the match.
-             * strstart-1 and strstart are already inserted. If there is not
-             * enough lookahead, the last two strings are not inserted in
-             * the hash table.
-             */
-            s->lookahead -= s->prev_length-1;
-            s->prev_length -= 2;
-            do {
-                if (++s->strstart <= max_insert) {
-                    INSERT_STRING(s, s->strstart, hash_head);
-                }
-            } while (--s->prev_length != 0);
-            s->match_available = 0;
-            s->match_length = MIN_MATCH-1;
-            s->strstart++;
-
-            if (bflush) FLUSH_BLOCK(s, 0);
-
-        } else if (s->match_available) {
-            /* If there was no match at the previous position, output a
-             * single literal. If there was a match but the current match
-             * is longer, truncate the previous match to a single literal.
-             */
-            Tracevv((stderr,"%c", s->window[s->strstart-1]));
-            _tr_tally_lit(s, s->window[s->strstart-1], bflush);
-            if (bflush) {
-                FLUSH_BLOCK_ONLY(s, 0);
-            }
-            s->strstart++;
-            s->lookahead--;
-            if (s->strm->avail_out == 0) return need_more;
-        } else {
-            /* There is no previous match to compare with, wait for
-             * the next step to decide.
-             */
-            s->match_available = 1;
-            s->strstart++;
-            s->lookahead--;
-        }
-    }
-    Assert (flush != Z_NO_FLUSH, "no flush?");
-    if (s->match_available) {
-        Tracevv((stderr,"%c", s->window[s->strstart-1]));
-        _tr_tally_lit(s, s->window[s->strstart-1], bflush);
-        s->match_available = 0;
-    }
-    FLUSH_BLOCK(s, flush == Z_FINISH);
-    return flush == Z_FINISH ? finish_done : block_done;
-}
-#endif /* FASTEST */
-
-/* ===========================================================================
- * For Z_RLE, simply look for runs of bytes, generate matches only of distance
- * one.  Do not maintain a hash table.  (It will be regenerated if this run of
- * deflate switches away from Z_RLE.)
- */
-local block_state deflate_rle(s, flush)
-    deflate_state *s;
-    int flush;
-{
-    int bflush;             /* set if current block must be flushed */
-    uInt prev;              /* byte at distance one to match */
-    Bytef *scan, *strend;   /* scan goes up to strend for length of run */
-
-    for (;;) {
-        /* Make sure that we always have enough lookahead, except
-         * at the end of the input file. We need MAX_MATCH bytes
-         * for the longest encodable run.
-         */
-        if (s->lookahead < MAX_MATCH) {
-            fill_window(s);
-            if (s->lookahead < MAX_MATCH && flush == Z_NO_FLUSH) {
-                return need_more;
-            }
-            if (s->lookahead == 0) break; /* flush the current block */
-        }
-
-        /* See how many times the previous byte repeats */
-        s->match_length = 0;
-        if (s->lookahead >= MIN_MATCH && s->strstart > 0) {
-            scan = s->window + s->strstart - 1;
-            prev = *scan;
-            if (prev == *++scan && prev == *++scan && prev == *++scan) {
-                strend = s->window + s->strstart + MAX_MATCH;
-                do {
-                } while (prev == *++scan && prev == *++scan &&
-                         prev == *++scan && prev == *++scan &&
-                         prev == *++scan && prev == *++scan &&
-                         prev == *++scan && prev == *++scan &&
-                         scan < strend);
-                s->match_length = MAX_MATCH - (int)(strend - scan);
-                if (s->match_length > s->lookahead)
-                    s->match_length = s->lookahead;
-            }
-        }
-
-        /* Emit match if have run of MIN_MATCH or longer, else emit literal */
-        if (s->match_length >= MIN_MATCH) {
-            check_match(s, s->strstart, s->strstart - 1, s->match_length);
-
-            _tr_tally_dist(s, 1, s->match_length - MIN_MATCH, bflush);
-
-            s->lookahead -= s->match_length;
-            s->strstart += s->match_length;
-            s->match_length = 0;
-        } else {
-            /* No match, output a literal byte */
-            Tracevv((stderr,"%c", s->window[s->strstart]));
-            _tr_tally_lit (s, s->window[s->strstart], bflush);
-            s->lookahead--;
-            s->strstart++;
-        }
-        if (bflush) FLUSH_BLOCK(s, 0);
-    }
-    FLUSH_BLOCK(s, flush == Z_FINISH);
-    return flush == Z_FINISH ? finish_done : block_done;
-}
-
-/* ===========================================================================
- * For Z_HUFFMAN_ONLY, do not look for matches.  Do not maintain a hash table.
- * (It will be regenerated if this run of deflate switches away from Huffman.)
- */
-local block_state deflate_huff(s, flush)
-    deflate_state *s;
-    int flush;
-{
-    int bflush;             /* set if current block must be flushed */
-
-    for (;;) {
-        /* Make sure that we have a literal to write. */
-        if (s->lookahead == 0) {
-            fill_window(s);
-            if (s->lookahead == 0) {
-                if (flush == Z_NO_FLUSH)
-                    return need_more;
-                break;      /* flush the current block */
-            }
-        }
-
-        /* Output a literal byte */
-        s->match_length = 0;
-        Tracevv((stderr,"%c", s->window[s->strstart]));
-        _tr_tally_lit (s, s->window[s->strstart], bflush);
-        s->lookahead--;
-        s->strstart++;
-        if (bflush) FLUSH_BLOCK(s, 0);
-    }
-    FLUSH_BLOCK(s, flush == Z_FINISH);
-    return flush == Z_FINISH ? finish_done : block_done;
-}
diff --git a/src/other/zlib/deflate.h b/src/other/zlib/deflate.h
deleted file mode 100644
index 3aa4397..0000000
--- a/src/other/zlib/deflate.h
+++ /dev/null
@@ -1,342 +0,0 @@
-/* deflate.h -- internal compression state
- * Copyright (C) 1995-2010 Jean-loup Gailly
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
-   part of the implementation of the compression library and is
-   subject to change. Applications should only use zlib.h.
- */
-
-/* @(#) $Id: deflate.h 21114 2010-05-10 07:14:43Z dtremenak $ */
-
-#ifndef DEFLATE_H
-#define DEFLATE_H
-
-#include "zutil.h"
-
-/* define NO_GZIP when compiling if you want to disable gzip header and
-   trailer creation by deflate().  NO_GZIP would be used to avoid linking in
-   the crc code when it is not needed.  For shared libraries, gzip encoding
-   should be left enabled. */
-#ifndef NO_GZIP
-#  define GZIP
-#endif
-
-/* ===========================================================================
- * Internal compression state.
- */
-
-#define LENGTH_CODES 29
-/* number of length codes, not counting the special END_BLOCK code */
-
-#define LITERALS  256
-/* number of literal bytes 0..255 */
-
-#define L_CODES (LITERALS+1+LENGTH_CODES)
-/* number of Literal or Length codes, including the END_BLOCK code */
-
-#define D_CODES   30
-/* number of distance codes */
-
-#define BL_CODES  19
-/* number of codes used to transfer the bit lengths */
-
-#define HEAP_SIZE (2*L_CODES+1)
-/* maximum heap size */
-
-#define MAX_BITS 15
-/* All codes must not exceed MAX_BITS bits */
-
-#define INIT_STATE    42
-#define EXTRA_STATE   69
-#define NAME_STATE    73
-#define COMMENT_STATE 91
-#define HCRC_STATE   103
-#define BUSY_STATE   113
-#define FINISH_STATE 666
-/* Stream status */
-
-
-/* Data structure describing a single value and its code string. */
-typedef struct ct_data_s {
-    union {
-        ush  freq;       /* frequency count */
-        ush  code;       /* bit string */
-    } fc;
-    union {
-        ush  dad;        /* father node in Huffman tree */
-        ush  len;        /* length of bit string */
-    } dl;
-} FAR ct_data;
-
-#define Freq fc.freq
-#define Code fc.code
-#define Dad  dl.dad
-#define Len  dl.len
-
-typedef struct static_tree_desc_s  static_tree_desc;
-
-typedef struct tree_desc_s {
-    ct_data *dyn_tree;           /* the dynamic tree */
-    int     max_code;            /* largest code with non zero frequency */
-    static_tree_desc *stat_desc; /* the corresponding static tree */
-} FAR tree_desc;
-
-typedef ush Pos;
-typedef Pos FAR Posf;
-typedef unsigned IPos;
-
-/* A Pos is an index in the character window. We use short instead of int to
- * save space in the various tables. IPos is used only for parameter passing.
- */
-
-typedef struct internal_state {
-    z_streamp strm;      /* pointer back to this zlib stream */
-    int   status;        /* as the name implies */
-    Bytef *pending_buf;  /* output still pending */
-    ulg   pending_buf_size; /* size of pending_buf */
-    Bytef *pending_out;  /* next pending byte to output to the stream */
-    uInt   pending;      /* nb of bytes in the pending buffer */
-    int   wrap;          /* bit 0 true for zlib, bit 1 true for gzip */
-    gz_headerp  gzhead;  /* gzip header information to write */
-    uInt   gzindex;      /* where in extra, name, or comment */
-    Byte  method;        /* STORED (for zip only) or DEFLATED */
-    int   last_flush;    /* value of flush param for previous deflate call */
-
-                /* used by deflate.c: */
-
-    uInt  w_size;        /* LZ77 window size (32K by default) */
-    uInt  w_bits;        /* log2(w_size)  (8..16) */
-    uInt  w_mask;        /* w_size - 1 */
-
-    Bytef *window;
-    /* Sliding window. Input bytes are read into the second half of the window,
-     * and move to the first half later to keep a dictionary of at least wSize
-     * bytes. With this organization, matches are limited to a distance of
-     * wSize-MAX_MATCH bytes, but this ensures that IO is always
-     * performed with a length multiple of the block size. Also, it limits
-     * the window size to 64K, which is quite useful on MSDOS.
-     * To do: use the user input buffer as sliding window.
-     */
-
-    ulg window_size;
-    /* Actual size of window: 2*wSize, except when the user input buffer
-     * is directly used as sliding window.
-     */
-
-    Posf *prev;
-    /* Link to older string with same hash index. To limit the size of this
-     * array to 64K, this link is maintained only for the last 32K strings.
-     * An index in this array is thus a window index modulo 32K.
-     */
-
-    Posf *head; /* Heads of the hash chains or NIL. */
-
-    uInt  ins_h;          /* hash index of string to be inserted */
-    uInt  hash_size;      /* number of elements in hash table */
-    uInt  hash_bits;      /* log2(hash_size) */
-    uInt  hash_mask;      /* hash_size-1 */
-
-    uInt  hash_shift;
-    /* Number of bits by which ins_h must be shifted at each input
-     * step. It must be such that after MIN_MATCH steps, the oldest
-     * byte no longer takes part in the hash key, that is:
-     *   hash_shift * MIN_MATCH >= hash_bits
-     */
-
-    long block_start;
-    /* Window position at the beginning of the current output block. Gets
-     * negative when the window is moved backwards.
-     */
-
-    uInt match_length;           /* length of best match */
-    IPos prev_match;             /* previous match */
-    int match_available;         /* set if previous match exists */
-    uInt strstart;               /* start of string to insert */
-    uInt match_start;            /* start of matching string */
-    uInt lookahead;              /* number of valid bytes ahead in window */
-
-    uInt prev_length;
-    /* Length of the best match at previous step. Matches not greater than this
-     * are discarded. This is used in the lazy match evaluation.
-     */
-
-    uInt max_chain_length;
-    /* To speed up deflation, hash chains are never searched beyond this
-     * length.  A higher limit improves compression ratio but degrades the
-     * speed.
-     */
-
-    uInt max_lazy_match;
-    /* Attempt to find a better match only when the current match is strictly
-     * smaller than this value. This mechanism is used only for compression
-     * levels >= 4.
-     */
-#   define max_insert_length  max_lazy_match
-    /* Insert new strings in the hash table only if the match length is not
-     * greater than this length. This saves time but degrades compression.
-     * max_insert_length is used only for compression levels <= 3.
-     */
-
-    int level;    /* compression level (1..9) */
-    int strategy; /* favor or force Huffman coding*/
-
-    uInt good_match;
-    /* Use a faster search when the previous match is longer than this */
-
-    int nice_match; /* Stop searching when current match exceeds this */
-
-                /* used by trees.c: */
-    /* Didn't use ct_data typedef below to supress compiler warning */
-    struct ct_data_s dyn_ltree[HEAP_SIZE];   /* literal and length tree */
-    struct ct_data_s dyn_dtree[2*D_CODES+1]; /* distance tree */
-    struct ct_data_s bl_tree[2*BL_CODES+1];  /* Huffman tree for bit lengths */
-
-    struct tree_desc_s l_desc;               /* desc. for literal tree */
-    struct tree_desc_s d_desc;               /* desc. for distance tree */
-    struct tree_desc_s bl_desc;              /* desc. for bit length tree */
-
-    ush bl_count[MAX_BITS+1];
-    /* number of codes at each bit length for an optimal tree */
-
-    int heap[2*L_CODES+1];      /* heap used to build the Huffman trees */
-    int heap_len;               /* number of elements in the heap */
-    int heap_max;               /* element of largest frequency */
-    /* The sons of heap[n] are heap[2*n] and heap[2*n+1]. heap[0] is not used.
-     * The same heap array is used to build all trees.
-     */
-
-    uch depth[2*L_CODES+1];
-    /* Depth of each subtree used as tie breaker for trees of equal frequency
-     */
-
-    uchf *l_buf;          /* buffer for literals or lengths */
-
-    uInt  lit_bufsize;
-    /* Size of match buffer for literals/lengths.  There are 4 reasons for
-     * limiting lit_bufsize to 64K:
-     *   - frequencies can be kept in 16 bit counters
-     *   - if compression is not successful for the first block, all input
-     *     data is still in the window so we can still emit a stored block even
-     *     when input comes from standard input.  (This can also be done for
-     *     all blocks if lit_bufsize is not greater than 32K.)
-     *   - if compression is not successful for a file smaller than 64K, we can
-     *     even emit a stored file instead of a stored block (saving 5 bytes).
-     *     This is applicable only for zip (not gzip or zlib).
-     *   - creating new Huffman trees less frequently may not provide fast
-     *     adaptation to changes in the input data statistics. (Take for
-     *     example a binary file with poorly compressible code followed by
-     *     a highly compressible string table.) Smaller buffer sizes give
-     *     fast adaptation but have of course the overhead of transmitting
-     *     trees more frequently.
-     *   - I can't count above 4
-     */
-
-    uInt last_lit;      /* running index in l_buf */
-
-    ushf *d_buf;
-    /* Buffer for distances. To simplify the code, d_buf and l_buf have
-     * the same number of elements. To use different lengths, an extra flag
-     * array would be necessary.
-     */
-
-    ulg opt_len;        /* bit length of current block with optimal trees */
-    ulg static_len;     /* bit length of current block with static trees */
-    uInt matches;       /* number of string matches in current block */
-    int last_eob_len;   /* bit length of EOB code for last block */
-
-#ifdef DEBUG
-    ulg compressed_len; /* total bit length of compressed file mod 2^32 */
-    ulg bits_sent;      /* bit length of compressed data sent mod 2^32 */
-#endif
-
-    ush bi_buf;
-    /* Output buffer. bits are inserted starting at the bottom (least
-     * significant bits).
-     */
-    int bi_valid;
-    /* Number of valid bits in bi_buf.  All bits above the last valid bit
-     * are always zero.
-     */
-
-    ulg high_water;
-    /* High water mark offset in window for initialized bytes -- bytes above
-     * this are set to zero in order to avoid memory check warnings when
-     * longest match routines access bytes past the input.  This is then
-     * updated to the new high water mark.
-     */
-
-} FAR deflate_state;
-
-/* Output a byte on the stream.
- * IN assertion: there is enough room in pending_buf.
- */
-#define put_byte(s, c) {s->pending_buf[s->pending++] = (c);}
-
-
-#define MIN_LOOKAHEAD (MAX_MATCH+MIN_MATCH+1)
-/* Minimum amount of lookahead, except at the end of the input file.
- * See deflate.c for comments about the MIN_MATCH+1.
- */
-
-#define MAX_DIST(s)  ((s)->w_size-MIN_LOOKAHEAD)
-/* In order to simplify the code, particularly on 16 bit machines, match
- * distances are limited to MAX_DIST instead of WSIZE.
- */
-
-#define WIN_INIT MAX_MATCH
-/* Number of bytes after end of data in window to initialize in order to avoid
-   memory checker errors from longest match routines */
-
-        /* in trees.c */
-void ZLIB_INTERNAL _tr_init OF((deflate_state *s));
-int ZLIB_INTERNAL _tr_tally OF((deflate_state *s, unsigned dist, unsigned lc));
-void ZLIB_INTERNAL _tr_flush_block OF((deflate_state *s, charf *buf,
-                        ulg stored_len, int last));
-void ZLIB_INTERNAL _tr_align OF((deflate_state *s));
-void ZLIB_INTERNAL _tr_stored_block OF((deflate_state *s, charf *buf,
-                        ulg stored_len, int last));
-
-#define d_code(dist) \
-   ((dist) < 256 ? _dist_code[dist] : _dist_code[256+((dist)>>7)])
-/* Mapping from a distance to a distance code. dist is the distance - 1 and
- * must not have side effects. _dist_code[256] and _dist_code[257] are never
- * used.
- */
-
-#ifndef DEBUG
-/* Inline versions of _tr_tally for speed: */
-
-#if defined(GEN_TREES_H) || !defined(STDC)
-  extern uch ZLIB_INTERNAL _length_code[];
-  extern uch ZLIB_INTERNAL _dist_code[];
-#else
-  extern const uch ZLIB_INTERNAL _length_code[];
-  extern const uch ZLIB_INTERNAL _dist_code[];
-#endif
-
-# define _tr_tally_lit(s, c, flush) \
-  { uch cc = (c); \
-    s->d_buf[s->last_lit] = 0; \
-    s->l_buf[s->last_lit++] = cc; \
-    s->dyn_ltree[cc].Freq++; \
-    flush = (s->last_lit == s->lit_bufsize-1); \
-   }
-# define _tr_tally_dist(s, distance, length, flush) \
-  { uch len = (length); \
-    ush dist = (distance); \
-    s->d_buf[s->last_lit] = dist; \
-    s->l_buf[s->last_lit++] = len; \
-    dist--; \
-    s->dyn_ltree[_length_code[len]+LITERALS+1].Freq++; \
-    s->dyn_dtree[d_code(dist)].Freq++; \
-    flush = (s->last_lit == s->lit_bufsize-1); \
-  }
-#else
-# define _tr_tally_lit(s, c, flush) flush = _tr_tally(s, 0, c)
-# define _tr_tally_dist(s, distance, length, flush) \
-              flush = _tr_tally(s, distance, length)
-#endif
-
-#endif /* DEFLATE_H */
diff --git a/src/other/zlib/gzclose.c b/src/other/zlib/gzclose.c
deleted file mode 100644
index caeb99a..0000000
--- a/src/other/zlib/gzclose.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* gzclose.c -- zlib gzclose() function
- * Copyright (C) 2004, 2010 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-#include "gzguts.h"
-
-/* gzclose() is in a separate file so that it is linked in only if it is used.
-   That way the other gzclose functions can be used instead to avoid linking in
-   unneeded compression or decompression routines. */
-int ZEXPORT gzclose(file)
-    gzFile file;
-{
-#ifndef NO_GZCOMPRESS
-    gz_statep state;
-
-    if (file == NULL)
-        return Z_STREAM_ERROR;
-    state = (gz_statep)file;
-
-    return state->mode == GZ_READ ? gzclose_r(file) : gzclose_w(file);
-#else
-    return gzclose_r(file);
-#endif
-}
diff --git a/src/other/zlib/gzguts.h b/src/other/zlib/gzguts.h
deleted file mode 100644
index 3065659..0000000
--- a/src/other/zlib/gzguts.h
+++ /dev/null
@@ -1,139 +0,0 @@
-/* gzguts.h -- zlib internal header definitions for gz* operations
- * Copyright (C) 2004, 2005, 2010 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-#ifndef _WIN32
-#include "config.h"	/* this is a BZFlag file */
-#endif
-
-#ifdef _LARGEFILE64_SOURCE
-#  ifndef _LARGEFILE_SOURCE
-#    define _LARGEFILE_SOURCE 1
-#  endif
-#  ifdef _FILE_OFFSET_BITS
-#    undef _FILE_OFFSET_BITS
-#  endif
-#endif
-
-#if ((__GNUC__-0) * 10 + __GNUC_MINOR__-0 >= 33) && !defined(NO_VIZ)
-#  define ZLIB_INTERNAL __attribute__((visibility ("hidden")))
-#else
-#  define ZLIB_INTERNAL
-#endif
-
-#include <stdio.h>
-#include "zlib.h"
-#ifdef STDC
-#  include <string.h>
-#  include <stdlib.h>
-#  include <limits.h>
-#endif
-#include <fcntl.h>
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-
-#ifdef NO_DEFLATE       /* for compatibility with old definition */
-#  define NO_GZCOMPRESS
-#endif
-
-#ifdef _MSC_VER
-#  include <io.h>
-#  define vsnprintf _vsnprintf
-#endif
-
-#ifndef local
-#  define local static
-#endif
-/* compile with -Dlocal if your debugger can't find static symbols */
-
-/* gz* functions always use library allocation functions */
-#ifndef STDC
-  extern voidp  malloc OF((uInt size));
-  extern void   free   OF((voidpf ptr));
-#endif
-
-/* get errno and strerror definition */
-#if defined UNDER_CE
-#  include <windows.h>
-#  define zstrerror() gz_strwinerror((DWORD)GetLastError())
-#else
-#  ifdef STDC
-#    include <errno.h>
-#    define zstrerror() strerror(errno)
-#  else
-#    define zstrerror() "stdio error (consult errno)"
-#  endif
-#endif
-
-/* provide prototypes for these when building zlib without LFS */
-#if !defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0
-    ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *));
-    ZEXTERN z_off64_t ZEXPORT gzseek64 OF((gzFile, z_off64_t, int));
-    ZEXTERN z_off64_t ZEXPORT gztell64 OF((gzFile));
-    ZEXTERN z_off64_t ZEXPORT gzoffset64 OF((gzFile));
-#endif
-
-/* default i/o buffer size -- double this for output when reading */
-#define GZBUFSIZE 8192
-
-/* gzip modes, also provide a little integrity check on the passed structure */
-#define GZ_NONE 0
-#define GZ_READ 7247
-#define GZ_WRITE 31153
-#define GZ_APPEND 1     /* mode set to GZ_WRITE after the file is opened */
-
-/* values for gz_state how */
-#define LOOK 0      /* look for a gzip header */
-#define COPY 1      /* copy input directly */
-#define GZIP 2      /* decompress a gzip stream */
-
-/* internal gzip file state data structure */
-typedef struct {
-        /* used for both reading and writing */
-    int mode;               /* see gzip modes above */
-    int fd;                 /* file descriptor */
-    char *path;             /* path or fd for error messages */
-    z_off64_t pos;          /* current position in uncompressed data */
-    unsigned size;          /* buffer size, zero if not allocated yet */
-    unsigned want;          /* requested buffer size, default is GZBUFSIZE */
-    unsigned char *in;      /* input buffer */
-    unsigned char *out;     /* output buffer (double-sized when reading) */
-    unsigned char *next;    /* next output data to deliver or write */
-        /* just for reading */
-    unsigned have;          /* amount of output data unused at next */
-    int eof;                /* true if end of input file reached */
-    z_off64_t start;        /* where the gzip data started, for rewinding */
-    z_off64_t raw;          /* where the raw data started, for seeking */
-    int how;                /* 0: get header, 1: copy, 2: decompress */
-    int direct;             /* true if last read direct, false if gzip */
-        /* just for writing */
-    int level;              /* compression level */
-    int strategy;           /* compression strategy */
-        /* seek request */
-    z_off64_t skip;         /* amount to skip (already rewound if backwards) */
-    int seek;               /* true if seek request pending */
-        /* error information */
-    int err;                /* error code */
-    char *msg;              /* error message */
-        /* zlib inflate or deflate stream */
-    z_stream strm;          /* stream structure in-place (not a pointer) */
-} gz_state;
-typedef gz_state FAR *gz_statep;
-
-/* shared functions */
-void ZLIB_INTERNAL gz_error OF((gz_statep, int, const char *));
-#if defined UNDER_CE
-char ZLIB_INTERNAL *gz_strwinerror OF((DWORD error));
-#endif
-
-/* GT_OFF(x), where x is an unsigned value, is true if x > maximum z_off64_t
-   value -- needed when comparing unsigned to z_off64_t, which is signed
-   (possible z_off64_t types off_t, off64_t, and long are all signed) */
-#ifdef INT_MAX
-#  define GT_OFF(x) (sizeof(int) == sizeof(z_off64_t) && (x) > INT_MAX)
-#else
-unsigned ZLIB_INTERNAL gz_intmax OF((void));
-#  define GT_OFF(x) (sizeof(int) == sizeof(z_off64_t) && (x) > gz_intmax())
-#endif
diff --git a/src/other/zlib/gzlib.c b/src/other/zlib/gzlib.c
deleted file mode 100644
index 603e60e..0000000
--- a/src/other/zlib/gzlib.c
+++ /dev/null
@@ -1,537 +0,0 @@
-/* gzlib.c -- zlib functions common to reading and writing gzip files
- * Copyright (C) 2004, 2010 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-#include "gzguts.h"
-
-#if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
-#  define LSEEK lseek64
-#else
-#  define LSEEK lseek
-#endif
-
-/* Local functions */
-local void gz_reset OF((gz_statep));
-local gzFile gz_open OF((const char *, int, const char *));
-
-#if defined UNDER_CE
-
-/* Map the Windows error number in ERROR to a locale-dependent error message
-   string and return a pointer to it.  Typically, the values for ERROR come
-   from GetLastError.
-
-   The string pointed to shall not be modified by the application, but may be
-   overwritten by a subsequent call to gz_strwinerror
-
-   The gz_strwinerror function does not change the current setting of
-   GetLastError. */
-char ZLIB_INTERNAL *gz_strwinerror (error)
-     DWORD error;
-{
-    static char buf[1024];
-
-    wchar_t *msgbuf;
-    DWORD lasterr = GetLastError();
-    DWORD chars = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM
-        | FORMAT_MESSAGE_ALLOCATE_BUFFER,
-        NULL,
-        error,
-        0, /* Default language */
-        (LPVOID)&msgbuf,
-        0,
-        NULL);
-    if (chars != 0) {
-        /* If there is an \r\n appended, zap it.  */
-        if (chars >= 2
-            && msgbuf[chars - 2] == '\r' && msgbuf[chars - 1] == '\n') {
-            chars -= 2;
-            msgbuf[chars] = 0;
-        }
-
-        if (chars > sizeof (buf) - 1) {
-            chars = sizeof (buf) - 1;
-            msgbuf[chars] = 0;
-        }
-
-        wcstombs(buf, msgbuf, chars + 1);
-        LocalFree(msgbuf);
-    }
-    else {
-        sprintf(buf, "unknown win32 error (%ld)", error);
-    }
-
-    SetLastError(lasterr);
-    return buf;
-}
-
-#endif /* UNDER_CE */
-
-/* Reset gzip file state */
-local void gz_reset(state)
-    gz_statep state;
-{
-    if (state->mode == GZ_READ) {   /* for reading ... */
-        state->have = 0;            /* no output data available */
-        state->eof = 0;             /* not at end of file */
-        state->how = LOOK;          /* look for gzip header */
-        state->direct = 1;          /* default for empty file */
-    }
-    state->seek = 0;                /* no seek request pending */
-    gz_error(state, Z_OK, NULL);    /* clear error */
-    state->pos = 0;                 /* no uncompressed data yet */
-    state->strm.avail_in = 0;       /* no input data yet */
-}
-
-/* Open a gzip file either by name or file descriptor. */
-local gzFile gz_open(path, fd, mode)
-    const char *path;
-    int fd;
-    const char *mode;
-{
-    gz_statep state;
-
-    /* allocate gzFile structure to return */
-    state = malloc(sizeof(gz_state));
-    if (state == NULL)
-        return NULL;
-    state->size = 0;            /* no buffers allocated yet */
-    state->want = GZBUFSIZE;    /* requested buffer size */
-    state->msg = NULL;          /* no error message yet */
-
-    /* interpret mode */
-    state->mode = GZ_NONE;
-    state->level = Z_DEFAULT_COMPRESSION;
-    state->strategy = Z_DEFAULT_STRATEGY;
-    while (*mode) {
-        if (*mode >= '0' && *mode <= '9')
-            state->level = *mode - '0';
-        else
-            switch (*mode) {
-            case 'r':
-                state->mode = GZ_READ;
-                break;
-#ifndef NO_GZCOMPRESS
-            case 'w':
-                state->mode = GZ_WRITE;
-                break;
-            case 'a':
-                state->mode = GZ_APPEND;
-                break;
-#endif
-            case '+':       /* can't read and write at the same time */
-                free(state);
-                return NULL;
-            case 'b':       /* ignore -- will request binary anyway */
-                break;
-            case 'f':
-                state->strategy = Z_FILTERED;
-                break;
-            case 'h':
-                state->strategy = Z_HUFFMAN_ONLY;
-                break;
-            case 'R':
-                state->strategy = Z_RLE;
-                break;
-            case 'F':
-                state->strategy = Z_FIXED;
-            default:        /* could consider as an error, but just ignore */
-                ;
-            }
-        mode++;
-    }
-
-    /* must provide an "r", "w", or "a" */
-    if (state->mode == GZ_NONE) {
-        free(state);
-        return NULL;
-    }
-
-    /* save the path name for error messages */
-    state->path = malloc(strlen(path) + 1);
-    if (state->path == NULL) {
-        free(state);
-        return NULL;
-    }
-    strcpy(state->path, path);
-
-    /* open the file with the appropriate mode (or just use fd) */
-    state->fd = fd != -1 ? fd :
-        open(path,
-#ifdef O_LARGEFILE
-            O_LARGEFILE |
-#endif
-#ifdef O_BINARY
-            O_BINARY |
-#endif
-            (state->mode == GZ_READ ?
-                O_RDONLY :
-                (O_WRONLY | O_CREAT | (
-                    state->mode == GZ_WRITE ?
-                        O_TRUNC :
-                        O_APPEND))),
-            0666);
-    if (state->fd == -1) {
-        free(state->path);
-        free(state);
-        return NULL;
-    }
-    if (state->mode == GZ_APPEND)
-        state->mode = GZ_WRITE;         /* simplify later checks */
-
-    /* save the current position for rewinding (only if reading) */
-    if (state->mode == GZ_READ) {
-        state->start = LSEEK(state->fd, 0, SEEK_CUR);
-        if (state->start == -1) state->start = 0;
-    }
-
-    /* initialize stream */
-    gz_reset(state);
-
-    /* return stream */
-    return (gzFile)state;
-}
-
-/* -- see zlib.h -- */
-gzFile ZEXPORT gzopen(path, mode)
-    const char *path;
-    const char *mode;
-{
-    return gz_open(path, -1, mode);
-}
-
-/* -- see zlib.h -- */
-gzFile ZEXPORT gzopen64(path, mode)
-    const char *path;
-    const char *mode;
-{
-    return gz_open(path, -1, mode);
-}
-
-/* -- see zlib.h -- */
-gzFile ZEXPORT gzdopen(fd, mode)
-    int fd;
-    const char *mode;
-{
-    char *path;         /* identifier for error messages */
-    gzFile gz;
-
-    if (fd == -1 || (path = malloc(7 + 3 * sizeof(int))) == NULL)
-        return NULL;
-    sprintf(path, "<fd:%d>", fd);   /* for debugging */
-    gz = gz_open(path, fd, mode);
-    free(path);
-    return gz;
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzbuffer(file, size)
-    gzFile file;
-    unsigned size;
-{
-    gz_statep state;
-
-    /* get internal structure and check integrity */
-    if (file == NULL)
-        return -1;
-    state = (gz_statep)file;
-    if (state->mode != GZ_READ && state->mode != GZ_WRITE)
-        return -1;
-
-    /* make sure we haven't already allocated memory */
-    if (state->size != 0)
-        return -1;
-
-    /* check and set requested size */
-    if (size == 0)
-        return -1;
-    state->want = size;
-    return 0;
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzrewind(file)
-    gzFile file;
-{
-    gz_statep state;
-
-    /* get internal structure */
-    if (file == NULL)
-        return -1;
-    state = (gz_statep)file;
-
-    /* check that we're reading and that there's no error */
-    if (state->mode != GZ_READ || state->err != Z_OK)
-        return -1;
-
-    /* back up and start over */
-    if (LSEEK(state->fd, state->start, SEEK_SET) == -1)
-        return -1;
-    gz_reset(state);
-    return 0;
-}
-
-/* -- see zlib.h -- */
-z_off64_t ZEXPORT gzseek64(file, offset, whence)
-    gzFile file;
-    z_off64_t offset;
-    int whence;
-{
-    unsigned n;
-    z_off64_t ret;
-    gz_statep state;
-
-    /* get internal structure and check integrity */
-    if (file == NULL)
-        return -1;
-    state = (gz_statep)file;
-    if (state->mode != GZ_READ && state->mode != GZ_WRITE)
-        return -1;
-
-    /* check that there's no error */
-    if (state->err != Z_OK)
-        return -1;
-
-    /* can only seek from start or relative to current position */
-    if (whence != SEEK_SET && whence != SEEK_CUR)
-        return -1;
-
-    /* normalize offset to a SEEK_CUR specification */
-    if (whence == SEEK_SET)
-        offset -= state->pos;
-    else if (state->seek)
-        offset += state->skip;
-    state->seek = 0;
-
-    /* if within raw area while reading, just go there */
-    if (state->mode == GZ_READ && state->how == COPY &&
-        state->pos + offset >= state->raw) {
-        ret = LSEEK(state->fd, offset - state->have, SEEK_CUR);
-        if (ret == -1)
-            return -1;
-        state->have = 0;
-        state->eof = 0;
-        state->seek = 0;
-        gz_error(state, Z_OK, NULL);
-        state->strm.avail_in = 0;
-        state->pos += offset;
-        return state->pos;
-    }
-
-    /* calculate skip amount, rewinding if needed for back seek when reading */
-    if (offset < 0) {
-        if (state->mode != GZ_READ)         /* writing -- can't go backwards */
-            return -1;
-        offset += state->pos;
-        if (offset < 0)                     /* before start of file! */
-            return -1;
-        if (gzrewind(file) == -1)           /* rewind, then skip to offset */
-            return -1;
-    }
-
-    /* if reading, skip what's in output buffer (one less gzgetc() check) */
-    if (state->mode == GZ_READ) {
-        n = GT_OFF(state->have) || (z_off64_t)state->have > offset ?
-            (unsigned)offset : state->have;
-        state->have -= n;
-        state->next += n;
-        state->pos += n;
-        offset -= n;
-    }
-
-    /* request skip (if not zero) */
-    if (offset) {
-        state->seek = 1;
-        state->skip = offset;
-    }
-    return state->pos + offset;
-}
-
-/* -- see zlib.h -- */
-z_off_t ZEXPORT gzseek(file, offset, whence)
-    gzFile file;
-    z_off_t offset;
-    int whence;
-{
-    z_off64_t ret;
-
-    ret = gzseek64(file, (z_off64_t)offset, whence);
-    return ret == (z_off_t)ret ? (z_off_t)ret : -1;
-}
-
-/* -- see zlib.h -- */
-z_off64_t ZEXPORT gztell64(file)
-    gzFile file;
-{
-    gz_statep state;
-
-    /* get internal structure and check integrity */
-    if (file == NULL)
-        return -1;
-    state = (gz_statep)file;
-    if (state->mode != GZ_READ && state->mode != GZ_WRITE)
-        return -1;
-
-    /* return position */
-    return state->pos + (state->seek ? state->skip : 0);
-}
-
-/* -- see zlib.h -- */
-z_off_t ZEXPORT gztell(file)
-    gzFile file;
-{
-    z_off64_t ret;
-
-    ret = gztell64(file);
-    return ret == (z_off_t)ret ? (z_off_t)ret : -1;
-}
-
-/* -- see zlib.h -- */
-z_off64_t ZEXPORT gzoffset64(file)
-    gzFile file;
-{
-    z_off64_t offset;
-    gz_statep state;
-
-    /* get internal structure and check integrity */
-    if (file == NULL)
-        return -1;
-    state = (gz_statep)file;
-    if (state->mode != GZ_READ && state->mode != GZ_WRITE)
-        return -1;
-
-    /* compute and return effective offset in file */
-    offset = LSEEK(state->fd, 0, SEEK_CUR);
-    if (offset == -1)
-        return -1;
-    if (state->mode == GZ_READ)             /* reading */
-        offset -= state->strm.avail_in;     /* don't count buffered input */
-    return offset;
-}
-
-/* -- see zlib.h -- */
-z_off_t ZEXPORT gzoffset(file)
-    gzFile file;
-{
-    z_off64_t ret;
-
-    ret = gzoffset64(file);
-    return ret == (z_off_t)ret ? (z_off_t)ret : -1;
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzeof(file)
-    gzFile file;
-{
-    gz_statep state;
-
-    /* get internal structure and check integrity */
-    if (file == NULL)
-        return 0;
-    state = (gz_statep)file;
-    if (state->mode != GZ_READ && state->mode != GZ_WRITE)
-        return 0;
-
-    /* return end-of-file state */
-    return state->mode == GZ_READ ?
-        (state->eof && state->strm.avail_in == 0 && state->have == 0) : 0;
-}
-
-/* -- see zlib.h -- */
-const char * ZEXPORT gzerror(file, errnum)
-    gzFile file;
-    int *errnum;
-{
-    gz_statep state;
-
-    /* get internal structure and check integrity */
-    if (file == NULL)
-        return NULL;
-    state = (gz_statep)file;
-    if (state->mode != GZ_READ && state->mode != GZ_WRITE)
-        return NULL;
-
-    /* return error information */
-    if (errnum != NULL)
-        *errnum = state->err;
-    return state->msg == NULL ? "" : state->msg;
-}
-
-/* -- see zlib.h -- */
-void ZEXPORT gzclearerr(file)
-    gzFile file;
-{
-    gz_statep state;
-
-    /* get internal structure and check integrity */
-    if (file == NULL)
-        return;
-    state = (gz_statep)file;
-    if (state->mode != GZ_READ && state->mode != GZ_WRITE)
-        return;
-
-    /* clear error and end-of-file */
-    if (state->mode == GZ_READ)
-        state->eof = 0;
-    gz_error(state, Z_OK, NULL);
-}
-
-/* Create an error message in allocated memory and set state->err and
-   state->msg accordingly.  Free any previous error message already there.  Do
-   not try to free or allocate space if the error is Z_MEM_ERROR (out of
-   memory).  Simply save the error message as a static string.  If there is an
-   allocation failure constructing the error message, then convert the error to
-   out of memory. */
-void ZLIB_INTERNAL gz_error(state, err, msg)
-    gz_statep state;
-    int err;
-    const char *msg;
-{
-    /* free previously allocated message and clear */
-    if (state->msg != NULL) {
-        if (state->err != Z_MEM_ERROR)
-            free(state->msg);
-        state->msg = NULL;
-    }
-
-    /* set error code, and if no message, then done */
-    state->err = err;
-    if (msg == NULL)
-        return;
-
-    /* for an out of memory error, save as static string */
-    if (err == Z_MEM_ERROR) {
-        state->msg = (char *)msg;
-        return;
-    }
-
-    /* construct error message with path */
-    if ((state->msg = malloc(strlen(state->path) + strlen(msg) + 3)) == NULL) {
-        state->err = Z_MEM_ERROR;
-        state->msg = (char *)"out of memory";
-        return;
-    }
-    strcpy(state->msg, state->path);
-    strcat(state->msg, ": ");
-    strcat(state->msg, msg);
-    return;
-}
-
-#ifndef INT_MAX
-/* portably return maximum value for an int (when limits.h presumed not
-   available) -- we need to do this to cover cases where 2's complement not
-   used, since C standard permits 1's complement and sign-bit representations,
-   otherwise we could just use ((unsigned)-1) >> 1 */
-unsigned ZLIB_INTERNAL gz_intmax()
-{
-    unsigned p, q;
-
-    p = 1;
-    do {
-        q = p;
-        p <<= 1;
-        p++;
-    } while (p > q);
-    return q >> 1;
-}
-#endif
diff --git a/src/other/zlib/gzread.c b/src/other/zlib/gzread.c
deleted file mode 100644
index 548201a..0000000
--- a/src/other/zlib/gzread.c
+++ /dev/null
@@ -1,653 +0,0 @@
-/* gzread.c -- zlib functions for reading gzip files
- * Copyright (C) 2004, 2005, 2010 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-#include "gzguts.h"
-
-/* Local functions */
-local int gz_load OF((gz_statep, unsigned char *, unsigned, unsigned *));
-local int gz_avail OF((gz_statep));
-local int gz_next4 OF((gz_statep, unsigned long *));
-local int gz_head OF((gz_statep));
-local int gz_decomp OF((gz_statep));
-local int gz_make OF((gz_statep));
-local int gz_skip OF((gz_statep, z_off64_t));
-
-/* Use read() to load a buffer -- return -1 on error, otherwise 0.  Read from
-   state->fd, and update state->eof, state->err, and state->msg as appropriate.
-   This function needs to loop on read(), since read() is not guaranteed to
-   read the number of bytes requested, depending on the type of descriptor. */
-local int gz_load(state, buf, len, have)
-    gz_statep state;
-    unsigned char *buf;
-    unsigned len;
-    unsigned *have;
-{
-    int ret;
-
-    *have = 0;
-    do {
-        ret = read(state->fd, buf + *have, len - *have);
-        if (ret <= 0)
-            break;
-        *have += ret;
-    } while (*have < len);
-    if (ret < 0) {
-        gz_error(state, Z_ERRNO, zstrerror());
-        return -1;
-    }
-    if (ret == 0)
-        state->eof = 1;
-    return 0;
-}
-
-/* Load up input buffer and set eof flag if last data loaded -- return -1 on
-   error, 0 otherwise.  Note that the eof flag is set when the end of the input
-   file is reached, even though there may be unused data in the buffer.  Once
-   that data has been used, no more attempts will be made to read the file.
-   gz_avail() assumes that strm->avail_in == 0. */
-local int gz_avail(state)
-    gz_statep state;
-{
-    z_streamp strm = &(state->strm);
-
-    if (state->err != Z_OK)
-        return -1;
-    if (state->eof == 0) {
-        if (gz_load(state, state->in, state->size,
-                (unsigned *)&(strm->avail_in)) == -1)
-            return -1;
-        strm->next_in = state->in;
-    }
-    return 0;
-}
-
-/* Get next byte from input, or -1 if end or error. */
-#define NEXT() ((strm->avail_in == 0 && gz_avail(state) == -1) ? -1 : \
-                (strm->avail_in == 0 ? -1 : \
-                 (strm->avail_in--, *(strm->next_in)++)))
-
-/* Get a four-byte little-endian integer and return 0 on success and the value
-   in *ret.  Otherwise -1 is returned and *ret is not modified. */
-local int gz_next4(state, ret)
-    gz_statep state;
-    unsigned long *ret;
-{
-    int ch;
-    unsigned long val;
-    z_streamp strm = &(state->strm);
-
-    val = NEXT();
-    val += (unsigned)NEXT() << 8;
-    val += (unsigned long)NEXT() << 16;
-    ch = NEXT();
-    if (ch == -1)
-        return -1;
-    val += (unsigned long)ch << 24;
-    *ret = val;
-    return 0;
-}
-
-/* Look for gzip header, set up for inflate or copy.  state->have must be zero.
-   If this is the first time in, allocate required memory.  state->how will be
-   left unchanged if there is no more input data available, will be set to COPY
-   if there is no gzip header and direct copying will be performed, or it will
-   be set to GZIP for decompression, and the gzip header will be skipped so
-   that the next available input data is the raw deflate stream.  If direct
-   copying, then leftover input data from the input buffer will be copied to
-   the output buffer.  In that case, all further file reads will be directly to
-   either the output buffer or a user buffer.  If decompressing, the inflate
-   state and the check value will be initialized.  gz_head() will return 0 on
-   success or -1 on failure.  Failures may include read errors or gzip header
-   errors.  */
-local int gz_head(state)
-    gz_statep state;
-{
-    z_streamp strm = &(state->strm);
-    int flags;
-    unsigned len;
-
-    /* allocate read buffers and inflate memory */
-    if (state->size == 0) {
-        /* allocate buffers */
-        state->in = malloc(state->want);
-        state->out = malloc(state->want << 1);
-        if (state->in == NULL || state->out == NULL) {
-            if (state->out != NULL)
-                free(state->out);
-            if (state->in != NULL)
-                free(state->in);
-            gz_error(state, Z_MEM_ERROR, "out of memory");
-            return -1;
-        }
-        state->size = state->want;
-
-        /* allocate inflate memory */
-        state->strm.zalloc = Z_NULL;
-        state->strm.zfree = Z_NULL;
-        state->strm.opaque = Z_NULL;
-        state->strm.avail_in = 0;
-        state->strm.next_in = Z_NULL;
-        if (inflateInit2(&(state->strm), -15) != Z_OK) {    /* raw inflate */
-            free(state->out);
-            free(state->in);
-            state->size = 0;
-            gz_error(state, Z_MEM_ERROR, "out of memory");
-            return -1;
-        }
-    }
-
-    /* get some data in the input buffer */
-    if (strm->avail_in == 0) {
-        if (gz_avail(state) == -1)
-            return -1;
-        if (strm->avail_in == 0)
-            return 0;
-    }
-
-    /* look for the gzip magic header bytes 31 and 139 */
-    if (strm->next_in[0] == 31) {
-        strm->avail_in--;
-        strm->next_in++;
-        if (strm->avail_in == 0 && gz_avail(state) == -1)
-            return -1;
-        if (strm->avail_in && strm->next_in[0] == 139) {
-            /* we have a gzip header, woo hoo! */
-            strm->avail_in--;
-            strm->next_in++;
-
-            /* skip rest of header */
-            if (NEXT() != 8) {      /* compression method */
-                gz_error(state, Z_DATA_ERROR, "unknown compression method");
-                return -1;
-            }
-            flags = NEXT();
-            if (flags & 0xe0) {     /* reserved flag bits */
-                gz_error(state, Z_DATA_ERROR, "unknown header flags set");
-                return -1;
-            }
-            NEXT();                 /* modification time */
-            NEXT();
-            NEXT();
-            NEXT();
-            NEXT();                 /* extra flags */
-            NEXT();                 /* operating system */
-            if (flags & 4) {        /* extra field */
-                len = (unsigned)NEXT();
-                len += (unsigned)NEXT() << 8;
-                while (len--)
-                    if (NEXT() < 0)
-                        break;
-            }
-            if (flags & 8)          /* file name */
-                while (NEXT() > 0)
-                    ;
-            if (flags & 16)         /* comment */
-                while (NEXT() > 0)
-                    ;
-            if (flags & 2) {        /* header crc */
-                NEXT();
-                NEXT();
-            }
-            /* an unexpected end of file is not checked for here -- it will be
-               noticed on the first request for uncompressed data */
-
-            /* set up for decompression */
-            inflateReset(strm);
-            strm->adler = crc32(0L, Z_NULL, 0);
-            state->how = GZIP;
-            state->direct = 0;
-            return 0;
-        }
-        else {
-            /* not a gzip file -- save first byte (31) and fall to raw i/o */
-            state->out[0] = 31;
-            state->have = 1;
-        }
-    }
-
-    /* doing raw i/o, save start of raw data for seeking, copy any leftover
-       input to output -- this assumes that the output buffer is larger than
-       the input buffer, which also assures space for gzungetc() */
-    state->raw = state->pos;
-    state->next = state->out;
-    if (strm->avail_in) {
-        memcpy(state->next + state->have, strm->next_in, strm->avail_in);
-        state->have += strm->avail_in;
-        strm->avail_in = 0;
-    }
-    state->how = COPY;
-    state->direct = 1;
-    return 0;
-}
-
-/* Decompress from input to the provided next_out and avail_out in the state.
-   If the end of the compressed data is reached, then verify the gzip trailer
-   check value and length (modulo 2^32).  state->have and state->next are set
-   to point to the just decompressed data, and the crc is updated.  If the
-   trailer is verified, state->how is reset to LOOK to look for the next gzip
-   stream or raw data, once state->have is depleted.  Returns 0 on success, -1
-   on failure.  Failures may include invalid compressed data or a failed gzip
-   trailer verification. */
-local int gz_decomp(state)
-    gz_statep state;
-{
-    int ret;
-    unsigned had;
-    unsigned long crc, len;
-    z_streamp strm = &(state->strm);
-
-    /* fill output buffer up to end of deflate stream */
-    had = strm->avail_out;
-    do {
-        /* get more input for inflate() */
-        if (strm->avail_in == 0 && gz_avail(state) == -1)
-            return -1;
-        if (strm->avail_in == 0) {
-            gz_error(state, Z_DATA_ERROR, "unexpected end of file");
-            return -1;
-        }
-
-        /* decompress and handle errors */
-        ret = inflate(strm, Z_NO_FLUSH);
-        if (ret == Z_STREAM_ERROR || ret == Z_NEED_DICT) {
-            gz_error(state, Z_STREAM_ERROR,
-                      "internal error: inflate stream corrupt");
-            return -1;
-        }
-        if (ret == Z_MEM_ERROR) {
-            gz_error(state, Z_MEM_ERROR, "out of memory");
-            return -1;
-        }
-        if (ret == Z_DATA_ERROR) {              /* deflate stream invalid */
-            gz_error(state, Z_DATA_ERROR,
-                      strm->msg == NULL ? "compressed data error" : strm->msg);
-            return -1;
-        }
-    } while (strm->avail_out && ret != Z_STREAM_END);
-
-    /* update available output and crc check value */
-    state->have = had - strm->avail_out;
-    state->next = strm->next_out - state->have;
-    strm->adler = crc32(strm->adler, state->next, state->have);
-
-    /* check gzip trailer if at end of deflate stream */
-    if (ret == Z_STREAM_END) {
-        if (gz_next4(state, &crc) == -1 || gz_next4(state, &len) == -1) {
-            gz_error(state, Z_DATA_ERROR, "unexpected end of file");
-            return -1;
-        }
-        if (crc != strm->adler) {
-            gz_error(state, Z_DATA_ERROR, "incorrect data check");
-            return -1;
-        }
-        if (len != (strm->total_out & 0xffffffffL)) {
-            gz_error(state, Z_DATA_ERROR, "incorrect length check");
-            return -1;
-        }
-        state->how = LOOK;      /* ready for next stream, once have is 0 (leave
-                                   state->direct unchanged to remember how) */
-    }
-
-    /* good decompression */
-    return 0;
-}
-
-/* Make data and put in the output buffer.  Assumes that state->have == 0.
-   Data is either copied from the input file or decompressed from the input
-   file depending on state->how.  If state->how is LOOK, then a gzip header is
-   looked for (and skipped if found) to determine wither to copy or decompress.
-   Returns -1 on error, otherwise 0.  gz_make() will leave state->have as COPY
-   or GZIP unless the end of the input file has been reached and all data has
-   been processed.  */
-local int gz_make(state)
-    gz_statep state;
-{
-    z_streamp strm = &(state->strm);
-
-    if (state->how == LOOK) {           /* look for gzip header */
-        if (gz_head(state) == -1)
-            return -1;
-        if (state->have)                /* got some data from gz_head() */
-            return 0;
-    }
-    if (state->how == COPY) {           /* straight copy */
-        if (gz_load(state, state->out, state->size << 1, &(state->have)) == -1)
-            return -1;
-        state->next = state->out;
-    }
-    else if (state->how == GZIP) {      /* decompress */
-        strm->avail_out = state->size << 1;
-        strm->next_out = state->out;
-        if (gz_decomp(state) == -1)
-            return -1;
-    }
-    return 0;
-}
-
-/* Skip len uncompressed bytes of output.  Return -1 on error, 0 on success. */
-local int gz_skip(state, len)
-    gz_statep state;
-    z_off64_t len;
-{
-    unsigned n;
-
-    /* skip over len bytes or reach end-of-file, whichever comes first */
-    while (len)
-        /* skip over whatever is in output buffer */
-        if (state->have) {
-            n = GT_OFF(state->have) || (z_off64_t)state->have > len ?
-                (unsigned)len : state->have;
-            state->have -= n;
-            state->next += n;
-            state->pos += n;
-            len -= n;
-        }
-
-        /* output buffer empty -- return if we're at the end of the input */
-        else if (state->eof && state->strm.avail_in == 0)
-            break;
-
-        /* need more data to skip -- load up output buffer */
-        else {
-            /* get more output, looking for header if required */
-            if (gz_make(state) == -1)
-                return -1;
-        }
-    return 0;
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzread(file, buf, len)
-    gzFile file;
-    voidp buf;
-    unsigned len;
-{
-    unsigned got, n;
-    gz_statep state;
-    z_streamp strm;
-
-    /* get internal structure */
-    if (file == NULL)
-        return -1;
-    state = (gz_statep)file;
-    strm = &(state->strm);
-
-    /* check that we're reading and that there's no error */
-    if (state->mode != GZ_READ || state->err != Z_OK)
-        return -1;
-
-    /* since an int is returned, make sure len fits in one, otherwise return
-       with an error (this avoids the flaw in the interface) */
-    if ((int)len < 0) {
-        gz_error(state, Z_BUF_ERROR, "requested length does not fit in int");
-        return -1;
-    }
-
-    /* if len is zero, avoid unnecessary operations */
-    if (len == 0)
-        return 0;
-
-    /* process a skip request */
-    if (state->seek) {
-        state->seek = 0;
-        if (gz_skip(state, state->skip) == -1)
-            return -1;
-    }
-
-    /* get len bytes to buf, or less than len if at the end */
-    got = 0;
-    do {
-        /* first just try copying data from the output buffer */
-        if (state->have) {
-            n = state->have > len ? len : state->have;
-            memcpy(buf, state->next, n);
-            state->next += n;
-            state->have -= n;
-        }
-
-        /* output buffer empty -- return if we're at the end of the input */
-        else if (state->eof && strm->avail_in == 0)
-            break;
-
-        /* need output data -- for small len or new stream load up our output
-           buffer */
-        else if (state->how == LOOK || len < (state->size << 1)) {
-            /* get more output, looking for header if required */
-            if (gz_make(state) == -1)
-                return -1;
-            continue;       /* no progress yet -- go back to memcpy() above */
-            /* the copy above assures that we will leave with space in the
-               output buffer, allowing at least one gzungetc() to succeed */
-        }
-
-        /* large len -- read directly into user buffer */
-        else if (state->how == COPY) {      /* read directly */
-            if (gz_load(state, buf, len, &n) == -1)
-                return -1;
-        }
-
-        /* large len -- decompress directly into user buffer */
-        else {  /* state->how == GZIP */
-            strm->avail_out = len;
-            strm->next_out = buf;
-            if (gz_decomp(state) == -1)
-                return -1;
-            n = state->have;
-            state->have = 0;
-        }
-
-        /* update progress */
-        len -= n;
-        buf = (char *)buf + n;
-        got += n;
-        state->pos += n;
-    } while (len);
-
-    /* return number of bytes read into user buffer (will fit in int) */
-    return (int)got;
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzgetc(file)
-    gzFile file;
-{
-    int ret;
-    unsigned char buf[1];
-    gz_statep state;
-
-    /* get internal structure */
-    if (file == NULL)
-        return -1;
-    state = (gz_statep)file;
-
-    /* check that we're reading and that there's no error */
-    if (state->mode != GZ_READ || state->err != Z_OK)
-        return -1;
-
-    /* try output buffer (no need to check for skip request) */
-    if (state->have) {
-        state->have--;
-        state->pos++;
-        return *(state->next)++;
-    }
-
-    /* nothing there -- try gzread() */
-    ret = gzread(file, buf, 1);
-    return ret < 1 ? -1 : buf[0];
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzungetc(c, file)
-    int c;
-    gzFile file;
-{
-    gz_statep state;
-
-    /* get internal structure */
-    if (file == NULL)
-        return -1;
-    state = (gz_statep)file;
-
-    /* check that we're reading and that there's no error */
-    if (state->mode != GZ_READ || state->err != Z_OK)
-        return -1;
-
-    /* process a skip request */
-    if (state->seek) {
-        state->seek = 0;
-        if (gz_skip(state, state->skip) == -1)
-            return -1;
-    }
-
-    /* can't push EOF */
-    if (c < 0)
-        return -1;
-
-    /* if output buffer empty, put byte at end (allows more pushing) */
-    if (state->have == 0) {
-        state->have = 1;
-        state->next = state->out + (state->size << 1) - 1;
-        state->next[0] = c;
-        state->pos--;
-        return c;
-    }
-
-    /* if no room, give up (must have already done a gzungetc()) */
-    if (state->have == (state->size << 1)) {
-        gz_error(state, Z_BUF_ERROR, "out of room to push characters");
-        return -1;
-    }
-
-    /* slide output data if needed and insert byte before existing data */
-    if (state->next == state->out) {
-        unsigned char *src = state->out + state->have;
-        unsigned char *dest = state->out + (state->size << 1);
-        while (src > state->out)
-            *--dest = *--src;
-        state->next = dest;
-    }
-    state->have++;
-    state->next--;
-    state->next[0] = c;
-    state->pos--;
-    return c;
-}
-
-/* -- see zlib.h -- */
-char * ZEXPORT gzgets(file, buf, len)
-    gzFile file;
-    char *buf;
-    int len;
-{
-    unsigned left, n;
-    char *str;
-    unsigned char *eol;
-    gz_statep state;
-
-    /* check parameters and get internal structure */
-    if (file == NULL || buf == NULL || len < 1)
-        return NULL;
-    state = (gz_statep)file;
-
-    /* check that we're reading and that there's no error */
-    if (state->mode != GZ_READ || state->err != Z_OK)
-        return NULL;
-
-    /* process a skip request */
-    if (state->seek) {
-        state->seek = 0;
-        if (gz_skip(state, state->skip) == -1)
-            return NULL;
-    }
-
-    /* copy output bytes up to new line or len - 1, whichever comes first --
-       append a terminating zero to the string (we don't check for a zero in
-       the contents, let the user worry about that) */
-    str = buf;
-    left = (unsigned)len - 1;
-    if (left) do {
-        /* assure that something is in the output buffer */
-        if (state->have == 0) {
-            if (gz_make(state) == -1)
-                return NULL;            /* error */
-            if (state->have == 0) {     /* end of file */
-                if (buf == str)         /* got bupkus */
-                    return NULL;
-                break;                  /* got something -- return it */
-            }
-        }
-
-        /* look for end-of-line in current output buffer */
-        n = state->have > left ? left : state->have;
-        eol = memchr(state->next, '\n', n);
-        if (eol != NULL)
-            n = (unsigned)(eol - state->next) + 1;
-
-        /* copy through end-of-line, or remainder if not found */
-        memcpy(buf, state->next, n);
-        state->have -= n;
-        state->next += n;
-        state->pos += n;
-        left -= n;
-        buf += n;
-    } while (left && eol == NULL);
-
-    /* found end-of-line or out of space -- terminate string and return it */
-    buf[0] = 0;
-    return str;
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzdirect(file)
-    gzFile file;
-{
-    gz_statep state;
-
-    /* get internal structure */
-    if (file == NULL)
-        return 0;
-    state = (gz_statep)file;
-
-    /* check that we're reading */
-    if (state->mode != GZ_READ)
-        return 0;
-
-    /* if the state is not known, but we can find out, then do so (this is
-       mainly for right after a gzopen() or gzdopen()) */
-    if (state->how == LOOK && state->have == 0)
-        (void)gz_head(state);
-
-    /* return 1 if reading direct, 0 if decompressing a gzip stream */
-    return state->direct;
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzclose_r(file)
-    gzFile file;
-{
-    int ret;
-    gz_statep state;
-
-    /* get internal structure */
-    if (file == NULL)
-        return Z_STREAM_ERROR;
-    state = (gz_statep)file;
-
-    /* check that we're reading */
-    if (state->mode != GZ_READ)
-        return Z_STREAM_ERROR;
-
-    /* free memory and close file */
-    if (state->size) {
-        inflateEnd(&(state->strm));
-        free(state->out);
-        free(state->in);
-    }
-    gz_error(state, Z_OK, NULL);
-    free(state->path);
-    ret = close(state->fd);
-    free(state);
-    return ret ? Z_ERRNO : Z_OK;
-}
diff --git a/src/other/zlib/gzwrite.c b/src/other/zlib/gzwrite.c
deleted file mode 100644
index e8defc6..0000000
--- a/src/other/zlib/gzwrite.c
+++ /dev/null
@@ -1,531 +0,0 @@
-/* gzwrite.c -- zlib functions for writing gzip files
- * Copyright (C) 2004, 2005, 2010 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-#include "gzguts.h"
-
-/* Local functions */
-local int gz_init OF((gz_statep));
-local int gz_comp OF((gz_statep, int));
-local int gz_zero OF((gz_statep, z_off64_t));
-
-/* Initialize state for writing a gzip file.  Mark initialization by setting
-   state->size to non-zero.  Return -1 on failure or 0 on success. */
-local int gz_init(state)
-    gz_statep state;
-{
-    int ret;
-    z_streamp strm = &(state->strm);
-
-    /* allocate input and output buffers */
-    state->in = malloc(state->want);
-    state->out = malloc(state->want);
-    if (state->in == NULL || state->out == NULL) {
-        if (state->out != NULL)
-            free(state->out);
-        if (state->in != NULL)
-            free(state->in);
-        gz_error(state, Z_MEM_ERROR, "out of memory");
-        return -1;
-    }
-
-    /* allocate deflate memory, set up for gzip compression */
-    strm->zalloc = Z_NULL;
-    strm->zfree = Z_NULL;
-    strm->opaque = Z_NULL;
-    ret = deflateInit2(strm, state->level, Z_DEFLATED,
-                       15 + 16, 8, state->strategy);
-    if (ret != Z_OK) {
-        free(state->in);
-        gz_error(state, Z_MEM_ERROR, "out of memory");
-        return -1;
-    }
-
-    /* mark state as initialized */
-    state->size = state->want;
-
-    /* initialize write buffer */
-    strm->avail_out = state->size;
-    strm->next_out = state->out;
-    state->next = strm->next_out;
-    return 0;
-}
-
-/* Compress whatever is at avail_in and next_in and write to the output file.
-   Return -1 if there is an error writing to the output file, otherwise 0.
-   flush is assumed to be a valid deflate() flush value.  If flush is Z_FINISH,
-   then the deflate() state is reset to start a new gzip stream. */
-local int gz_comp(state, flush)
-    gz_statep state;
-    int flush;
-{
-    int ret, got;
-    unsigned have;
-    z_streamp strm = &(state->strm);
-
-    /* allocate memory if this is the first time through */
-    if (state->size == 0 && gz_init(state) == -1)
-        return -1;
-
-    /* run deflate() on provided input until it produces no more output */
-    ret = Z_OK;
-    do {
-        /* write out current buffer contents if full, or if flushing, but if
-           doing Z_FINISH then don't write until we get to Z_STREAM_END */
-        if (strm->avail_out == 0 || (flush != Z_NO_FLUSH &&
-            (flush != Z_FINISH || ret == Z_STREAM_END))) {
-            have = (unsigned)(strm->next_out - state->next);
-            if (have && ((got = write(state->fd, state->next, have)) < 0 ||
-                         (unsigned)got != have)) {
-                gz_error(state, Z_ERRNO, zstrerror());
-                return -1;
-            }
-            if (strm->avail_out == 0) {
-                strm->avail_out = state->size;
-                strm->next_out = state->out;
-            }
-            state->next = strm->next_out;
-        }
-
-        /* compress */
-        have = strm->avail_out;
-        ret = deflate(strm, flush);
-        if (ret == Z_STREAM_ERROR) {
-            gz_error(state, Z_STREAM_ERROR,
-                      "internal error: deflate stream corrupt");
-            return -1;
-        }
-        have -= strm->avail_out;
-    } while (have);
-
-    /* if that completed a deflate stream, allow another to start */
-    if (flush == Z_FINISH)
-        deflateReset(strm);
-
-    /* all done, no errors */
-    return 0;
-}
-
-/* Compress len zeros to output.  Return -1 on error, 0 on success. */
-local int gz_zero(state, len)
-    gz_statep state;
-    z_off64_t len;
-{
-    int first;
-    unsigned n;
-    z_streamp strm = &(state->strm);
-
-    /* consume whatever's left in the input buffer */
-    if (strm->avail_in && gz_comp(state, Z_NO_FLUSH) == -1)
-        return -1;
-
-    /* compress len zeros (len guaranteed > 0) */
-    first = 1;
-    while (len) {
-        n = GT_OFF(state->size) || (z_off64_t)state->size > len ?
-            (unsigned)len : state->size;
-        if (first) {
-            memset(state->in, 0, n);
-            first = 0;
-        }
-        strm->avail_in = n;
-        strm->next_in = state->in;
-        state->pos += n;
-        if (gz_comp(state, Z_NO_FLUSH) == -1)
-            return -1;
-        len -= n;
-    }
-    return 0;
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzwrite(file, buf, len)
-    gzFile file;
-    voidpc buf;
-    unsigned len;
-{
-    unsigned put = len;
-    unsigned n;
-    gz_statep state;
-    z_streamp strm;
-
-    /* get internal structure */
-    if (file == NULL)
-        return 0;
-    state = (gz_statep)file;
-    strm = &(state->strm);
-
-    /* check that we're writing and that there's no error */
-    if (state->mode != GZ_WRITE || state->err != Z_OK)
-        return 0;
-
-    /* since an int is returned, make sure len fits in one, otherwise return
-       with an error (this avoids the flaw in the interface) */
-    if ((int)len < 0) {
-        gz_error(state, Z_BUF_ERROR, "requested length does not fit in int");
-        return 0;
-    }
-
-    /* if len is zero, avoid unnecessary operations */
-    if (len == 0)
-        return 0;
-
-    /* allocate memory if this is the first time through */
-    if (state->size == 0 && gz_init(state) == -1)
-        return 0;
-
-    /* check for seek request */
-    if (state->seek) {
-        state->seek = 0;
-        if (gz_zero(state, state->skip) == -1)
-            return 0;
-    }
-
-    /* for small len, copy to input buffer, otherwise compress directly */
-    if (len < state->size) {
-        /* copy to input buffer, compress when full */
-        do {
-            if (strm->avail_in == 0)
-                strm->next_in = state->in;
-            n = state->size - strm->avail_in;
-            if (n > len)
-                n = len;
-            memcpy(strm->next_in + strm->avail_in, buf, n);
-            strm->avail_in += n;
-            state->pos += n;
-            buf = (char *)buf + n;
-            len -= n;
-            if (len && gz_comp(state, Z_NO_FLUSH) == -1)
-                return 0;
-        } while (len);
-    }
-    else {
-        /* consume whatever's left in the input buffer */
-        if (strm->avail_in && gz_comp(state, Z_NO_FLUSH) == -1)
-            return 0;
-
-        /* directly compress user buffer to file */
-        strm->avail_in = len;
-        strm->next_in = (voidp)buf;
-        state->pos += len;
-        if (gz_comp(state, Z_NO_FLUSH) == -1)
-            return 0;
-    }
-
-    /* input was all buffered or compressed (put will fit in int) */
-    return (int)put;
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzputc(file, c)
-    gzFile file;
-    int c;
-{
-    unsigned char buf[1];
-    gz_statep state;
-    z_streamp strm;
-
-    /* get internal structure */
-    if (file == NULL)
-        return -1;
-    state = (gz_statep)file;
-    strm = &(state->strm);
-
-    /* check that we're writing and that there's no error */
-    if (state->mode != GZ_WRITE || state->err != Z_OK)
-        return -1;
-
-    /* check for seek request */
-    if (state->seek) {
-        state->seek = 0;
-        if (gz_zero(state, state->skip) == -1)
-            return -1;
-    }
-
-    /* try writing to input buffer for speed (state->size == 0 if buffer not
-       initialized) */
-    if (strm->avail_in < state->size) {
-        if (strm->avail_in == 0)
-            strm->next_in = state->in;
-        strm->next_in[strm->avail_in++] = c;
-        state->pos++;
-        return c;
-    }
-
-    /* no room in buffer or not initialized, use gz_write() */
-    buf[0] = c;
-    if (gzwrite(file, buf, 1) != 1)
-        return -1;
-    return c;
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzputs(file, str)
-    gzFile file;
-    const char *str;
-{
-    int ret;
-    unsigned len;
-
-    /* write string */
-    len = (unsigned)strlen(str);
-    ret = gzwrite(file, str, len);
-    return ret == 0 && len != 0 ? -1 : ret;
-}
-
-#ifdef STDC
-#include <stdarg.h>
-
-/* -- see zlib.h -- */
-int ZEXPORTVA gzprintf (gzFile file, const char *format, ...)
-{
-    int size, len;
-    gz_statep state;
-    z_streamp strm;
-    va_list va;
-
-    /* get internal structure */
-    if (file == NULL)
-        return -1;
-    state = (gz_statep)file;
-    strm = &(state->strm);
-
-    /* check that we're writing and that there's no error */
-    if (state->mode != GZ_WRITE || state->err != Z_OK)
-        return 0;
-
-    /* make sure we have some buffer space */
-    if (state->size == 0 && gz_init(state) == -1)
-        return 0;
-
-    /* check for seek request */
-    if (state->seek) {
-        state->seek = 0;
-        if (gz_zero(state, state->skip) == -1)
-            return 0;
-    }
-
-    /* consume whatever's left in the input buffer */
-    if (strm->avail_in && gz_comp(state, Z_NO_FLUSH) == -1)
-        return 0;
-
-    /* do the printf() into the input buffer, put length in len */
-    size = (int)(state->size);
-    state->in[size - 1] = 0;
-    va_start(va, format);
-#ifdef NO_vsnprintf
-#  ifdef HAS_vsprintf_void
-    (void)vsprintf(state->in, format, va);
-    va_end(va);
-    for (len = 0; len < size; len++)
-        if (state->in[len] == 0) break;
-#  else
-    len = vsprintf(state->in, format, va);
-    va_end(va);
-#  endif
-#else
-#  ifdef HAS_vsnprintf_void
-    (void)vsnprintf(state->in, size, format, va);
-    va_end(va);
-    len = strlen(state->in);
-#  else
-    len = vsnprintf((char *)(state->in), size, format, va);
-    va_end(va);
-#  endif
-#endif
-
-    /* check that printf() results fit in buffer */
-    if (len <= 0 || len >= (int)size || state->in[size - 1] != 0)
-        return 0;
-
-    /* update buffer and position, defer compression until needed */
-    strm->avail_in = (unsigned)len;
-    strm->next_in = state->in;
-    state->pos += len;
-    return len;
-}
-
-#else /* !STDC */
-
-/* -- see zlib.h -- */
-int ZEXPORTVA gzprintf (file, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,
-                       a11, a12, a13, a14, a15, a16, a17, a18, a19, a20)
-    gzFile file;
-    const char *format;
-    int a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,
-        a11, a12, a13, a14, a15, a16, a17, a18, a19, a20;
-{
-    int size, len;
-    gz_statep state;
-    z_streamp strm;
-
-    /* get internal structure */
-    if (file == NULL)
-        return -1;
-    state = (gz_statep)file;
-    strm = &(state->strm);
-
-    /* check that we're writing and that there's no error */
-    if (state->mode != GZ_WRITE || state->err != Z_OK)
-        return 0;
-
-    /* make sure we have some buffer space */
-    if (state->size == 0 && gz_init(state) == -1)
-        return 0;
-
-    /* check for seek request */
-    if (state->seek) {
-        state->seek = 0;
-        if (gz_zero(state, state->skip) == -1)
-            return 0;
-    }
-
-    /* consume whatever's left in the input buffer */
-    if (strm->avail_in && gz_comp(state, Z_NO_FLUSH) == -1)
-        return 0;
-
-    /* do the printf() into the input buffer, put length in len */
-    size = (int)(state->size);
-    state->in[size - 1] = 0;
-#ifdef NO_snprintf
-#  ifdef HAS_sprintf_void
-    sprintf(state->in, format, a1, a2, a3, a4, a5, a6, a7, a8,
-            a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
-    for (len = 0; len < size; len++)
-        if (state->in[len] == 0) break;
-#  else
-    len = sprintf(state->in, format, a1, a2, a3, a4, a5, a6, a7, a8,
-                a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
-#  endif
-#else
-#  ifdef HAS_snprintf_void
-    snprintf(state->in, size, format, a1, a2, a3, a4, a5, a6, a7, a8,
-             a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
-    len = strlen(state->in);
-#  else
-    len = snprintf(state->in, size, format, a1, a2, a3, a4, a5, a6, a7, a8,
-                 a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
-#  endif
-#endif
-
-    /* check that printf() results fit in buffer */
-    if (len <= 0 || len >= (int)size || state->in[size - 1] != 0)
-        return 0;
-
-    /* update buffer and position, defer compression until needed */
-    strm->avail_in = (unsigned)len;
-    strm->next_in = state->in;
-    state->pos += len;
-    return len;
-}
-
-#endif
-
-/* -- see zlib.h -- */
-int ZEXPORT gzflush(file, flush)
-    gzFile file;
-    int flush;
-{
-    gz_statep state;
-
-    /* get internal structure */
-    if (file == NULL)
-        return -1;
-    state = (gz_statep)file;
-
-    /* check that we're writing and that there's no error */
-    if (state->mode != GZ_WRITE || state->err != Z_OK)
-        return Z_STREAM_ERROR;
-
-    /* check flush parameter */
-    if (flush < 0 || flush > Z_FINISH)
-        return Z_STREAM_ERROR;
-
-    /* check for seek request */
-    if (state->seek) {
-        state->seek = 0;
-        if (gz_zero(state, state->skip) == -1)
-            return -1;
-    }
-
-    /* compress remaining data with requested flush */
-    gz_comp(state, flush);
-    return state->err;
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzsetparams(file, level, strategy)
-    gzFile file;
-    int level;
-    int strategy;
-{
-    gz_statep state;
-    z_streamp strm;
-
-    /* get internal structure */
-    if (file == NULL)
-        return Z_STREAM_ERROR;
-    state = (gz_statep)file;
-    strm = &(state->strm);
-
-    /* check that we're writing and that there's no error */
-    if (state->mode != GZ_WRITE || state->err != Z_OK)
-        return Z_STREAM_ERROR;
-
-    /* if no change is requested, then do nothing */
-    if (level == state->level && strategy == state->strategy)
-        return Z_OK;
-
-    /* check for seek request */
-    if (state->seek) {
-        state->seek = 0;
-        if (gz_zero(state, state->skip) == -1)
-            return -1;
-    }
-
-    /* change compression parameters for subsequent input */
-    if (state->size) {
-        /* flush previous input with previous parameters before changing */
-        if (strm->avail_in && gz_comp(state, Z_PARTIAL_FLUSH) == -1)
-            return state->err;
-        deflateParams(strm, level, strategy);
-    }
-    state->level = level;
-    state->strategy = strategy;
-    return Z_OK;
-}
-
-/* -- see zlib.h -- */
-int ZEXPORT gzclose_w(file)
-    gzFile file;
-{
-    int ret = 0;
-    gz_statep state;
-
-    /* get internal structure */
-    if (file == NULL)
-        return Z_STREAM_ERROR;
-    state = (gz_statep)file;
-
-    /* check that we're writing */
-    if (state->mode != GZ_WRITE)
-        return Z_STREAM_ERROR;
-
-    /* check for seek request */
-    if (state->seek) {
-        state->seek = 0;
-        ret += gz_zero(state, state->skip);
-    }
-
-    /* flush, free memory, and close file */
-    ret += gz_comp(state, Z_FINISH);
-    (void)deflateEnd(&(state->strm));
-    free(state->out);
-    free(state->in);
-    gz_error(state, Z_OK, NULL);
-    free(state->path);
-    ret += close(state->fd);
-    free(state);
-    return ret ? Z_ERRNO : Z_OK;
-}
diff --git a/src/other/zlib/infback.c b/src/other/zlib/infback.c
deleted file mode 100644
index af3a8c9..0000000
--- a/src/other/zlib/infback.c
+++ /dev/null
@@ -1,632 +0,0 @@
-/* infback.c -- inflate using a call-back interface
- * Copyright (C) 1995-2009 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/*
-   This code is largely copied from inflate.c.  Normally either infback.o or
-   inflate.o would be linked into an application--not both.  The interface
-   with inffast.c is retained so that optimized assembler-coded versions of
-   inflate_fast() can be used with either inflate.c or infback.c.
- */
-
-#include "zutil.h"
-#include "inftrees.h"
-#include "inflate.h"
-#include "inffast.h"
-
-/* function prototypes */
-local void fixedtables OF((struct inflate_state FAR *state));
-
-/*
-   strm provides memory allocation functions in zalloc and zfree, or
-   Z_NULL to use the library memory allocation functions.
-
-   windowBits is in the range 8..15, and window is a user-supplied
-   window and output buffer that is 2**windowBits bytes.
- */
-int ZEXPORT inflateBackInit_(strm, windowBits, window, version, stream_size)
-z_streamp strm;
-int windowBits;
-unsigned char FAR *window;
-const char *version;
-int stream_size;
-{
-    struct inflate_state FAR *state;
-
-    if (version == Z_NULL || version[0] != ZLIB_VERSION[0] ||
-        stream_size != (int)(sizeof(z_stream)))
-        return Z_VERSION_ERROR;
-    if (strm == Z_NULL || window == Z_NULL ||
-        windowBits < 8 || windowBits > 15)
-        return Z_STREAM_ERROR;
-    strm->msg = Z_NULL;                 /* in case we return an error */
-    if (strm->zalloc == (alloc_func)0) {
-        strm->zalloc = zcalloc;
-        strm->opaque = (voidpf)0;
-    }
-    if (strm->zfree == (free_func)0) strm->zfree = zcfree;
-    state = (struct inflate_state FAR *)ZALLOC(strm, 1,
-                                               sizeof(struct inflate_state));
-    if (state == Z_NULL) return Z_MEM_ERROR;
-    Tracev((stderr, "inflate: allocated\n"));
-    strm->state = (struct internal_state FAR *)state;
-    state->dmax = 32768U;
-    state->wbits = windowBits;
-    state->wsize = 1U << windowBits;
-    state->window = window;
-    state->wnext = 0;
-    state->whave = 0;
-    return Z_OK;
-}
-
-/*
-   Return state with length and distance decoding tables and index sizes set to
-   fixed code decoding.  Normally this returns fixed tables from inffixed.h.
-   If BUILDFIXED is defined, then instead this routine builds the tables the
-   first time it's called, and returns those tables the first time and
-   thereafter.  This reduces the size of the code by about 2K bytes, in
-   exchange for a little execution time.  However, BUILDFIXED should not be
-   used for threaded applications, since the rewriting of the tables and virgin
-   may not be thread-safe.
- */
-local void fixedtables(state)
-struct inflate_state FAR *state;
-{
-#ifdef BUILDFIXED
-    static int virgin = 1;
-    static code *lenfix, *distfix;
-    static code fixed[544];
-
-    /* build fixed huffman tables if first call (may not be thread safe) */
-    if (virgin) {
-        unsigned sym, bits;
-        static code *next;
-
-        /* literal/length table */
-        sym = 0;
-        while (sym < 144) state->lens[sym++] = 8;
-        while (sym < 256) state->lens[sym++] = 9;
-        while (sym < 280) state->lens[sym++] = 7;
-        while (sym < 288) state->lens[sym++] = 8;
-        next = fixed;
-        lenfix = next;
-        bits = 9;
-        inflate_table(LENS, state->lens, 288, &(next), &(bits), state->work);
-
-        /* distance table */
-        sym = 0;
-        while (sym < 32) state->lens[sym++] = 5;
-        distfix = next;
-        bits = 5;
-        inflate_table(DISTS, state->lens, 32, &(next), &(bits), state->work);
-
-        /* do this just once */
-        virgin = 0;
-    }
-#else /* !BUILDFIXED */
-#   include "inffixed.h"
-#endif /* BUILDFIXED */
-    state->lencode = lenfix;
-    state->lenbits = 9;
-    state->distcode = distfix;
-    state->distbits = 5;
-}
-
-/* Macros for inflateBack(): */
-
-/* Load returned state from inflate_fast() */
-#define LOAD() \
-    do { \
-        put = strm->next_out; \
-        left = strm->avail_out; \
-        next = strm->next_in; \
-        have = strm->avail_in; \
-        hold = state->hold; \
-        bits = state->bits; \
-    } while (0)
-
-/* Set state from registers for inflate_fast() */
-#define RESTORE() \
-    do { \
-        strm->next_out = put; \
-        strm->avail_out = left; \
-        strm->next_in = next; \
-        strm->avail_in = have; \
-        state->hold = hold; \
-        state->bits = bits; \
-    } while (0)
-
-/* Clear the input bit accumulator */
-#define INITBITS() \
-    do { \
-        hold = 0; \
-        bits = 0; \
-    } while (0)
-
-/* Assure that some input is available.  If input is requested, but denied,
-   then return a Z_BUF_ERROR from inflateBack(). */
-#define PULL() \
-    do { \
-        if (have == 0) { \
-            have = in(in_desc, &next); \
-            if (have == 0) { \
-                next = Z_NULL; \
-                ret = Z_BUF_ERROR; \
-                goto inf_leave; \
-            } \
-        } \
-    } while (0)
-
-/* Get a byte of input into the bit accumulator, or return from inflateBack()
-   with an error if there is no input available. */
-#define PULLBYTE() \
-    do { \
-        PULL(); \
-        have--; \
-        hold += (unsigned long)(*next++) << bits; \
-        bits += 8; \
-    } while (0)
-
-/* Assure that there are at least n bits in the bit accumulator.  If there is
-   not enough available input to do that, then return from inflateBack() with
-   an error. */
-#define NEEDBITS(n) \
-    do { \
-        while (bits < (unsigned)(n)) \
-            PULLBYTE(); \
-    } while (0)
-
-/* Return the low n bits of the bit accumulator (n < 16) */
-#define BITS(n) \
-    ((unsigned)hold & ((1U << (n)) - 1))
-
-/* Remove n bits from the bit accumulator */
-#define DROPBITS(n) \
-    do { \
-        hold >>= (n); \
-        bits -= (unsigned)(n); \
-    } while (0)
-
-/* Remove zero to seven bits as needed to go to a byte boundary */
-#define BYTEBITS() \
-    do { \
-        hold >>= bits & 7; \
-        bits -= bits & 7; \
-    } while (0)
-
-/* Assure that some output space is available, by writing out the window
-   if it's full.  If the write fails, return from inflateBack() with a
-   Z_BUF_ERROR. */
-#define ROOM() \
-    do { \
-        if (left == 0) { \
-            put = state->window; \
-            left = state->wsize; \
-            state->whave = left; \
-            if (out(out_desc, put, left)) { \
-                ret = Z_BUF_ERROR; \
-                goto inf_leave; \
-            } \
-        } \
-    } while (0)
-
-/*
-   strm provides the memory allocation functions and window buffer on input,
-   and provides information on the unused input on return.  For Z_DATA_ERROR
-   returns, strm will also provide an error message.
-
-   in() and out() are the call-back input and output functions.  When
-   inflateBack() needs more input, it calls in().  When inflateBack() has
-   filled the window with output, or when it completes with data in the
-   window, it calls out() to write out the data.  The application must not
-   change the provided input until in() is called again or inflateBack()
-   returns.  The application must not change the window/output buffer until
-   inflateBack() returns.
-
-   in() and out() are called with a descriptor parameter provided in the
-   inflateBack() call.  This parameter can be a structure that provides the
-   information required to do the read or write, as well as accumulated
-   information on the input and output such as totals and check values.
-
-   in() should return zero on failure.  out() should return non-zero on
-   failure.  If either in() or out() fails, than inflateBack() returns a
-   Z_BUF_ERROR.  strm->next_in can be checked for Z_NULL to see whether it
-   was in() or out() that caused in the error.  Otherwise,  inflateBack()
-   returns Z_STREAM_END on success, Z_DATA_ERROR for an deflate format
-   error, or Z_MEM_ERROR if it could not allocate memory for the state.
-   inflateBack() can also return Z_STREAM_ERROR if the input parameters
-   are not correct, i.e. strm is Z_NULL or the state was not initialized.
- */
-int ZEXPORT inflateBack(strm, in, in_desc, out, out_desc)
-z_streamp strm;
-in_func in;
-void FAR *in_desc;
-out_func out;
-void FAR *out_desc;
-{
-    struct inflate_state FAR *state;
-    unsigned char FAR *next;    /* next input */
-    unsigned char FAR *put;     /* next output */
-    unsigned have, left;        /* available input and output */
-    unsigned long hold;         /* bit buffer */
-    unsigned bits;              /* bits in bit buffer */
-    unsigned copy;              /* number of stored or match bytes to copy */
-    unsigned char FAR *from;    /* where to copy match bytes from */
-    code here;                  /* current decoding table entry */
-    code last;                  /* parent table entry */
-    unsigned len;               /* length to copy for repeats, bits to drop */
-    int ret;                    /* return code */
-    static const unsigned short order[19] = /* permutation of code lengths */
-        {16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15};
-
-    /* Check that the strm exists and that the state was initialized */
-    if (strm == Z_NULL || strm->state == Z_NULL)
-        return Z_STREAM_ERROR;
-    state = (struct inflate_state FAR *)strm->state;
-
-    /* Reset the state */
-    strm->msg = Z_NULL;
-    state->mode = TYPE;
-    state->last = 0;
-    state->whave = 0;
-    next = strm->next_in;
-    have = next != Z_NULL ? strm->avail_in : 0;
-    hold = 0;
-    bits = 0;
-    put = state->window;
-    left = state->wsize;
-
-    /* Inflate until end of block marked as last */
-    for (;;)
-        switch (state->mode) {
-        case TYPE:
-            /* determine and dispatch block type */
-            if (state->last) {
-                BYTEBITS();
-                state->mode = DONE;
-                break;
-            }
-            NEEDBITS(3);
-            state->last = BITS(1);
-            DROPBITS(1);
-            switch (BITS(2)) {
-            case 0:                             /* stored block */
-                Tracev((stderr, "inflate:     stored block%s\n",
-                        state->last ? " (last)" : ""));
-                state->mode = STORED;
-                break;
-            case 1:                             /* fixed block */
-                fixedtables(state);
-                Tracev((stderr, "inflate:     fixed codes block%s\n",
-                        state->last ? " (last)" : ""));
-                state->mode = LEN;              /* decode codes */
-                break;
-            case 2:                             /* dynamic block */
-                Tracev((stderr, "inflate:     dynamic codes block%s\n",
-                        state->last ? " (last)" : ""));
-                state->mode = TABLE;
-                break;
-            case 3:
-                strm->msg = (char *)"invalid block type";
-                state->mode = BAD;
-            }
-            DROPBITS(2);
-            break;
-
-        case STORED:
-            /* get and verify stored block length */
-            BYTEBITS();                         /* go to byte boundary */
-            NEEDBITS(32);
-            if ((hold & 0xffff) != ((hold >> 16) ^ 0xffff)) {
-                strm->msg = (char *)"invalid stored block lengths";
-                state->mode = BAD;
-                break;
-            }
-            state->length = (unsigned)hold & 0xffff;
-            Tracev((stderr, "inflate:       stored length %u\n",
-                    state->length));
-            INITBITS();
-
-            /* copy stored block from input to output */
-            while (state->length != 0) {
-                copy = state->length;
-                PULL();
-                ROOM();
-                if (copy > have) copy = have;
-                if (copy > left) copy = left;
-                zmemcpy(put, next, copy);
-                have -= copy;
-                next += copy;
-                left -= copy;
-                put += copy;
-                state->length -= copy;
-            }
-            Tracev((stderr, "inflate:       stored end\n"));
-            state->mode = TYPE;
-            break;
-
-        case TABLE:
-            /* get dynamic table entries descriptor */
-            NEEDBITS(14);
-            state->nlen = BITS(5) + 257;
-            DROPBITS(5);
-            state->ndist = BITS(5) + 1;
-            DROPBITS(5);
-            state->ncode = BITS(4) + 4;
-            DROPBITS(4);
-#ifndef PKZIP_BUG_WORKAROUND
-            if (state->nlen > 286 || state->ndist > 30) {
-                strm->msg = (char *)"too many length or distance symbols";
-                state->mode = BAD;
-                break;
-            }
-#endif
-            Tracev((stderr, "inflate:       table sizes ok\n"));
-
-            /* get code length code lengths (not a typo) */
-            state->have = 0;
-            while (state->have < state->ncode) {
-                NEEDBITS(3);
-                state->lens[order[state->have++]] = (unsigned short)BITS(3);
-                DROPBITS(3);
-            }
-            while (state->have < 19)
-                state->lens[order[state->have++]] = 0;
-            state->next = state->codes;
-            state->lencode = (code const FAR *)(state->next);
-            state->lenbits = 7;
-            ret = inflate_table(CODES, state->lens, 19, &(state->next),
-                                &(state->lenbits), state->work);
-            if (ret) {
-                strm->msg = (char *)"invalid code lengths set";
-                state->mode = BAD;
-                break;
-            }
-            Tracev((stderr, "inflate:       code lengths ok\n"));
-
-            /* get length and distance code code lengths */
-            state->have = 0;
-            while (state->have < state->nlen + state->ndist) {
-                for (;;) {
-                    here = state->lencode[BITS(state->lenbits)];
-                    if ((unsigned)(here.bits) <= bits) break;
-                    PULLBYTE();
-                }
-                if (here.val < 16) {
-                    NEEDBITS(here.bits);
-                    DROPBITS(here.bits);
-                    state->lens[state->have++] = here.val;
-                }
-                else {
-                    if (here.val == 16) {
-                        NEEDBITS(here.bits + 2);
-                        DROPBITS(here.bits);
-                        if (state->have == 0) {
-                            strm->msg = (char *)"invalid bit length repeat";
-                            state->mode = BAD;
-                            break;
-                        }
-                        len = (unsigned)(state->lens[state->have - 1]);
-                        copy = 3 + BITS(2);
-                        DROPBITS(2);
-                    }
-                    else if (here.val == 17) {
-                        NEEDBITS(here.bits + 3);
-                        DROPBITS(here.bits);
-                        len = 0;
-                        copy = 3 + BITS(3);
-                        DROPBITS(3);
-                    }
-                    else {
-                        NEEDBITS(here.bits + 7);
-                        DROPBITS(here.bits);
-                        len = 0;
-                        copy = 11 + BITS(7);
-                        DROPBITS(7);
-                    }
-                    if (state->have + copy > state->nlen + state->ndist) {
-                        strm->msg = (char *)"invalid bit length repeat";
-                        state->mode = BAD;
-                        break;
-                    }
-                    while (copy--)
-                        state->lens[state->have++] = (unsigned short)len;
-                }
-            }
-
-            /* handle error breaks in while */
-            if (state->mode == BAD) break;
-
-            /* check for end-of-block code (better have one) */
-            if (state->lens[256] == 0) {
-                strm->msg = (char *)"invalid code -- missing end-of-block";
-                state->mode = BAD;
-                break;
-            }
-
-            /* build code tables -- note: do not change the lenbits or distbits
-               values here (9 and 6) without reading the comments in inftrees.h
-               concerning the ENOUGH constants, which depend on those values */
-            state->next = state->codes;
-            state->lencode = (code const FAR *)(state->next);
-            state->lenbits = 9;
-            ret = inflate_table(LENS, state->lens, state->nlen, &(state->next),
-                                &(state->lenbits), state->work);
-            if (ret) {
-                strm->msg = (char *)"invalid literal/lengths set";
-                state->mode = BAD;
-                break;
-            }
-            state->distcode = (code const FAR *)(state->next);
-            state->distbits = 6;
-            ret = inflate_table(DISTS, state->lens + state->nlen, state->ndist,
-                            &(state->next), &(state->distbits), state->work);
-            if (ret) {
-                strm->msg = (char *)"invalid distances set";
-                state->mode = BAD;
-                break;
-            }
-            Tracev((stderr, "inflate:       codes ok\n"));
-            state->mode = LEN;
-
-        case LEN:
-            /* use inflate_fast() if we have enough input and output */
-            if (have >= 6 && left >= 258) {
-                RESTORE();
-                if (state->whave < state->wsize)
-                    state->whave = state->wsize - left;
-                inflate_fast(strm, state->wsize);
-                LOAD();
-                break;
-            }
-
-            /* get a literal, length, or end-of-block code */
-            for (;;) {
-                here = state->lencode[BITS(state->lenbits)];
-                if ((unsigned)(here.bits) <= bits) break;
-                PULLBYTE();
-            }
-            if (here.op && (here.op & 0xf0) == 0) {
-                last = here;
-                for (;;) {
-                    here = state->lencode[last.val +
-                            (BITS(last.bits + last.op) >> last.bits)];
-                    if ((unsigned)(last.bits + here.bits) <= bits) break;
-                    PULLBYTE();
-                }
-                DROPBITS(last.bits);
-            }
-            DROPBITS(here.bits);
-            state->length = (unsigned)here.val;
-
-            /* process literal */
-            if (here.op == 0) {
-                Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?
-                        "inflate:         literal '%c'\n" :
-                        "inflate:         literal 0x%02x\n", here.val));
-                ROOM();
-                *put++ = (unsigned char)(state->length);
-                left--;
-                state->mode = LEN;
-                break;
-            }
-
-            /* process end of block */
-            if (here.op & 32) {
-                Tracevv((stderr, "inflate:         end of block\n"));
-                state->mode = TYPE;
-                break;
-            }
-
-            /* invalid code */
-            if (here.op & 64) {
-                strm->msg = (char *)"invalid literal/length code";
-                state->mode = BAD;
-                break;
-            }
-
-            /* length code -- get extra bits, if any */
-            state->extra = (unsigned)(here.op) & 15;
-            if (state->extra != 0) {
-                NEEDBITS(state->extra);
-                state->length += BITS(state->extra);
-                DROPBITS(state->extra);
-            }
-            Tracevv((stderr, "inflate:         length %u\n", state->length));
-
-            /* get distance code */
-            for (;;) {
-                here = state->distcode[BITS(state->distbits)];
-                if ((unsigned)(here.bits) <= bits) break;
-                PULLBYTE();
-            }
-            if ((here.op & 0xf0) == 0) {
-                last = here;
-                for (;;) {
-                    here = state->distcode[last.val +
-                            (BITS(last.bits + last.op) >> last.bits)];
-                    if ((unsigned)(last.bits + here.bits) <= bits) break;
-                    PULLBYTE();
-                }
-                DROPBITS(last.bits);
-            }
-            DROPBITS(here.bits);
-            if (here.op & 64) {
-                strm->msg = (char *)"invalid distance code";
-                state->mode = BAD;
-                break;
-            }
-            state->offset = (unsigned)here.val;
-
-            /* get distance extra bits, if any */
-            state->extra = (unsigned)(here.op) & 15;
-            if (state->extra != 0) {
-                NEEDBITS(state->extra);
-                state->offset += BITS(state->extra);
-                DROPBITS(state->extra);
-            }
-            if (state->offset > state->wsize - (state->whave < state->wsize ?
-                                                left : 0)) {
-                strm->msg = (char *)"invalid distance too far back";
-                state->mode = BAD;
-                break;
-            }
-            Tracevv((stderr, "inflate:         distance %u\n", state->offset));
-
-            /* copy match from window to output */
-            do {
-                ROOM();
-                copy = state->wsize - state->offset;
-                if (copy < left) {
-                    from = put + copy;
-                    copy = left - copy;
-                }
-                else {
-                    from = put - state->offset;
-                    copy = left;
-                }
-                if (copy > state->length) copy = state->length;
-                state->length -= copy;
-                left -= copy;
-                do {
-                    *put++ = *from++;
-                } while (--copy);
-            } while (state->length != 0);
-            break;
-
-        case DONE:
-            /* inflate stream terminated properly -- write leftover output */
-            ret = Z_STREAM_END;
-            if (left < state->wsize) {
-                if (out(out_desc, state->window, state->wsize - left))
-                    ret = Z_BUF_ERROR;
-            }
-            goto inf_leave;
-
-        case BAD:
-            ret = Z_DATA_ERROR;
-            goto inf_leave;
-
-        default:                /* can't happen, but makes compilers happy */
-            ret = Z_STREAM_ERROR;
-            goto inf_leave;
-        }
-
-    /* Return unused input */
-  inf_leave:
-    strm->next_in = next;
-    strm->avail_in = have;
-    return ret;
-}
-
-int ZEXPORT inflateBackEnd(strm)
-z_streamp strm;
-{
-    if (strm == Z_NULL || strm->state == Z_NULL || strm->zfree == (free_func)0)
-        return Z_STREAM_ERROR;
-    ZFREE(strm, strm->state);
-    strm->state = Z_NULL;
-    Tracev((stderr, "inflate: end\n"));
-    return Z_OK;
-}
diff --git a/src/other/zlib/inffast.c b/src/other/zlib/inffast.c
deleted file mode 100644
index 2f1d60b..0000000
--- a/src/other/zlib/inffast.c
+++ /dev/null
@@ -1,340 +0,0 @@
-/* inffast.c -- fast decoding
- * Copyright (C) 1995-2008, 2010 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-#include "zutil.h"
-#include "inftrees.h"
-#include "inflate.h"
-#include "inffast.h"
-
-#ifndef ASMINF
-
-/* Allow machine dependent optimization for post-increment or pre-increment.
-   Based on testing to date,
-   Pre-increment preferred for:
-   - PowerPC G3 (Adler)
-   - MIPS R5000 (Randers-Pehrson)
-   Post-increment preferred for:
-   - none
-   No measurable difference:
-   - Pentium III (Anderson)
-   - M68060 (Nikl)
- */
-#ifdef POSTINC
-#  define OFF 0
-#  define PUP(a) *(a)++
-#else
-#  define OFF 1
-#  define PUP(a) *++(a)
-#endif
-
-/*
-   Decode literal, length, and distance codes and write out the resulting
-   literal and match bytes until either not enough input or output is
-   available, an end-of-block is encountered, or a data error is encountered.
-   When large enough input and output buffers are supplied to inflate(), for
-   example, a 16K input buffer and a 64K output buffer, more than 95% of the
-   inflate execution time is spent in this routine.
-
-   Entry assumptions:
-
-        state->mode == LEN
-        strm->avail_in >= 6
-        strm->avail_out >= 258
-        start >= strm->avail_out
-        state->bits < 8
-
-   On return, state->mode is one of:
-
-        LEN -- ran out of enough output space or enough available input
-        TYPE -- reached end of block code, inflate() to interpret next block
-        BAD -- error in block data
-
-   Notes:
-
-    - The maximum input bits used by a length/distance pair is 15 bits for the
-      length code, 5 bits for the length extra, 15 bits for the distance code,
-      and 13 bits for the distance extra.  This totals 48 bits, or six bytes.
-      Therefore if strm->avail_in >= 6, then there is enough input to avoid
-      checking for available input while decoding.
-
-    - The maximum bytes that a single length/distance pair can output is 258
-      bytes, which is the maximum length that can be coded.  inflate_fast()
-      requires strm->avail_out >= 258 for each loop to avoid checking for
-      output space.
- */
-void ZLIB_INTERNAL inflate_fast(strm, start)
-z_streamp strm;
-unsigned start;         /* inflate()'s starting value for strm->avail_out */
-{
-    struct inflate_state FAR *state;
-    unsigned char FAR *in;      /* local strm->next_in */
-    unsigned char FAR *last;    /* while in < last, enough input available */
-    unsigned char FAR *out;     /* local strm->next_out */
-    unsigned char FAR *beg;     /* inflate()'s initial strm->next_out */
-    unsigned char FAR *end;     /* while out < end, enough space available */
-#ifdef INFLATE_STRICT
-    unsigned dmax;              /* maximum distance from zlib header */
-#endif
-    unsigned wsize;             /* window size or zero if not using window */
-    unsigned whave;             /* valid bytes in the window */
-    unsigned wnext;             /* window write index */
-    unsigned char FAR *window;  /* allocated sliding window, if wsize != 0 */
-    unsigned long hold;         /* local strm->hold */
-    unsigned bits;              /* local strm->bits */
-    code const FAR *lcode;      /* local strm->lencode */
-    code const FAR *dcode;      /* local strm->distcode */
-    unsigned lmask;             /* mask for first level of length codes */
-    unsigned dmask;             /* mask for first level of distance codes */
-    code here;                  /* retrieved table entry */
-    unsigned op;                /* code bits, operation, extra bits, or */
-                                /*  window position, window bytes to copy */
-    unsigned len;               /* match length, unused bytes */
-    unsigned dist;              /* match distance */
-    unsigned char FAR *from;    /* where to copy match from */
-
-    /* copy state to local variables */
-    state = (struct inflate_state FAR *)strm->state;
-    in = strm->next_in - OFF;
-    last = in + (strm->avail_in - 5);
-    out = strm->next_out - OFF;
-    beg = out - (start - strm->avail_out);
-    end = out + (strm->avail_out - 257);
-#ifdef INFLATE_STRICT
-    dmax = state->dmax;
-#endif
-    wsize = state->wsize;
-    whave = state->whave;
-    wnext = state->wnext;
-    window = state->window;
-    hold = state->hold;
-    bits = state->bits;
-    lcode = state->lencode;
-    dcode = state->distcode;
-    lmask = (1U << state->lenbits) - 1;
-    dmask = (1U << state->distbits) - 1;
-
-    /* decode literals and length/distances until end-of-block or not enough
-       input data or output space */
-    do {
-        if (bits < 15) {
-            hold += (unsigned long)(PUP(in)) << bits;
-            bits += 8;
-            hold += (unsigned long)(PUP(in)) << bits;
-            bits += 8;
-        }
-        here = lcode[hold & lmask];
-      dolen:
-        op = (unsigned)(here.bits);
-        hold >>= op;
-        bits -= op;
-        op = (unsigned)(here.op);
-        if (op == 0) {                          /* literal */
-            Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?
-                    "inflate:         literal '%c'\n" :
-                    "inflate:         literal 0x%02x\n", here.val));
-            PUP(out) = (unsigned char)(here.val);
-        }
-        else if (op & 16) {                     /* length base */
-            len = (unsigned)(here.val);
-            op &= 15;                           /* number of extra bits */
-            if (op) {
-                if (bits < op) {
-                    hold += (unsigned long)(PUP(in)) << bits;
-                    bits += 8;
-                }
-                len += (unsigned)hold & ((1U << op) - 1);
-                hold >>= op;
-                bits -= op;
-            }
-            Tracevv((stderr, "inflate:         length %u\n", len));
-            if (bits < 15) {
-                hold += (unsigned long)(PUP(in)) << bits;
-                bits += 8;
-                hold += (unsigned long)(PUP(in)) << bits;
-                bits += 8;
-            }
-            here = dcode[hold & dmask];
-          dodist:
-            op = (unsigned)(here.bits);
-            hold >>= op;
-            bits -= op;
-            op = (unsigned)(here.op);
-            if (op & 16) {                      /* distance base */
-                dist = (unsigned)(here.val);
-                op &= 15;                       /* number of extra bits */
-                if (bits < op) {
-                    hold += (unsigned long)(PUP(in)) << bits;
-                    bits += 8;
-                    if (bits < op) {
-                        hold += (unsigned long)(PUP(in)) << bits;
-                        bits += 8;
-                    }
-                }
-                dist += (unsigned)hold & ((1U << op) - 1);
-#ifdef INFLATE_STRICT
-                if (dist > dmax) {
-                    strm->msg = (char *)"invalid distance too far back";
-                    state->mode = BAD;
-                    break;
-                }
-#endif
-                hold >>= op;
-                bits -= op;
-                Tracevv((stderr, "inflate:         distance %u\n", dist));
-                op = (unsigned)(out - beg);     /* max distance in output */
-                if (dist > op) {                /* see if copy from window */
-                    op = dist - op;             /* distance back in window */
-                    if (op > whave) {
-                        if (state->sane) {
-                            strm->msg =
-                                (char *)"invalid distance too far back";
-                            state->mode = BAD;
-                            break;
-                        }
-#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR
-                        if (len <= op - whave) {
-                            do {
-                                PUP(out) = 0;
-                            } while (--len);
-                            continue;
-                        }
-                        len -= op - whave;
-                        do {
-                            PUP(out) = 0;
-                        } while (--op > whave);
-                        if (op == 0) {
-                            from = out - dist;
-                            do {
-                                PUP(out) = PUP(from);
-                            } while (--len);
-                            continue;
-                        }
-#endif
-                    }
-                    from = window - OFF;
-                    if (wnext == 0) {           /* very common case */
-                        from += wsize - op;
-                        if (op < len) {         /* some from window */
-                            len -= op;
-                            do {
-                                PUP(out) = PUP(from);
-                            } while (--op);
-                            from = out - dist;  /* rest from output */
-                        }
-                    }
-                    else if (wnext < op) {      /* wrap around window */
-                        from += wsize + wnext - op;
-                        op -= wnext;
-                        if (op < len) {         /* some from end of window */
-                            len -= op;
-                            do {
-                                PUP(out) = PUP(from);
-                            } while (--op);
-                            from = window - OFF;
-                            if (wnext < len) {  /* some from start of window */
-                                op = wnext;
-                                len -= op;
-                                do {
-                                    PUP(out) = PUP(from);
-                                } while (--op);
-                                from = out - dist;      /* rest from output */
-                            }
-                        }
-                    }
-                    else {                      /* contiguous in window */
-                        from += wnext - op;
-                        if (op < len) {         /* some from window */
-                            len -= op;
-                            do {
-                                PUP(out) = PUP(from);
-                            } while (--op);
-                            from = out - dist;  /* rest from output */
-                        }
-                    }
-                    while (len > 2) {
-                        PUP(out) = PUP(from);
-                        PUP(out) = PUP(from);
-                        PUP(out) = PUP(from);
-                        len -= 3;
-                    }
-                    if (len) {
-                        PUP(out) = PUP(from);
-                        if (len > 1)
-                            PUP(out) = PUP(from);
-                    }
-                }
-                else {
-                    from = out - dist;          /* copy direct from output */
-                    do {                        /* minimum length is three */
-                        PUP(out) = PUP(from);
-                        PUP(out) = PUP(from);
-                        PUP(out) = PUP(from);
-                        len -= 3;
-                    } while (len > 2);
-                    if (len) {
-                        PUP(out) = PUP(from);
-                        if (len > 1)
-                            PUP(out) = PUP(from);
-                    }
-                }
-            }
-            else if ((op & 64) == 0) {          /* 2nd level distance code */
-                here = dcode[here.val + (hold & ((1U << op) - 1))];
-                goto dodist;
-            }
-            else {
-                strm->msg = (char *)"invalid distance code";
-                state->mode = BAD;
-                break;
-            }
-        }
-        else if ((op & 64) == 0) {              /* 2nd level length code */
-            here = lcode[here.val + (hold & ((1U << op) - 1))];
-            goto dolen;
-        }
-        else if (op & 32) {                     /* end-of-block */
-            Tracevv((stderr, "inflate:         end of block\n"));
-            state->mode = TYPE;
-            break;
-        }
-        else {
-            strm->msg = (char *)"invalid literal/length code";
-            state->mode = BAD;
-            break;
-        }
-    } while (in < last && out < end);
-
-    /* return unused bytes (on entry, bits < 8, so in won't go too far back) */
-    len = bits >> 3;
-    in -= len;
-    bits -= len << 3;
-    hold &= (1U << bits) - 1;
-
-    /* update state and return */
-    strm->next_in = in + OFF;
-    strm->next_out = out + OFF;
-    strm->avail_in = (unsigned)(in < last ? 5 + (last - in) : 5 - (in - last));
-    strm->avail_out = (unsigned)(out < end ?
-                                 257 + (end - out) : 257 - (out - end));
-    state->hold = hold;
-    state->bits = bits;
-    return;
-}
-
-/*
-   inflate_fast() speedups that turned out slower (on a PowerPC G3 750CXe):
-   - Using bit fields for code structure
-   - Different op definition to avoid & for extra bits (do & for table bits)
-   - Three separate decoding do-loops for direct, window, and wnext == 0
-   - Special case for distance > 1 copies to do overlapped load and store copy
-   - Explicit branch predictions (based on measured branch probabilities)
-   - Deferring match copy and interspersed it with decoding subsequent codes
-   - Swapping literal/length else
-   - Swapping window/direct else
-   - Larger unrolled copy loops (three is about right)
-   - Moving len -= 3 statement into middle of loop
- */
-
-#endif /* !ASMINF */
diff --git a/src/other/zlib/inffast.h b/src/other/zlib/inffast.h
deleted file mode 100644
index e5c1aa4..0000000
--- a/src/other/zlib/inffast.h
+++ /dev/null
@@ -1,11 +0,0 @@
-/* inffast.h -- header to use inffast.c
- * Copyright (C) 1995-2003, 2010 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
-   part of the implementation of the compression library and is
-   subject to change. Applications should only use zlib.h.
- */
-
-void ZLIB_INTERNAL inflate_fast OF((z_streamp strm, unsigned start));
diff --git a/src/other/zlib/inffixed.h b/src/other/zlib/inffixed.h
deleted file mode 100644
index 75ed4b5..0000000
--- a/src/other/zlib/inffixed.h
+++ /dev/null
@@ -1,94 +0,0 @@
-    /* inffixed.h -- table for decoding fixed codes
-     * Generated automatically by makefixed().
-     */
-
-    /* WARNING: this file should *not* be used by applications. It
-       is part of the implementation of the compression library and
-       is subject to change. Applications should only use zlib.h.
-     */
-
-    static const code lenfix[512] = {
-        {96,7,0},{0,8,80},{0,8,16},{20,8,115},{18,7,31},{0,8,112},{0,8,48},
-        {0,9,192},{16,7,10},{0,8,96},{0,8,32},{0,9,160},{0,8,0},{0,8,128},
-        {0,8,64},{0,9,224},{16,7,6},{0,8,88},{0,8,24},{0,9,144},{19,7,59},
-        {0,8,120},{0,8,56},{0,9,208},{17,7,17},{0,8,104},{0,8,40},{0,9,176},
-        {0,8,8},{0,8,136},{0,8,72},{0,9,240},{16,7,4},{0,8,84},{0,8,20},
-        {21,8,227},{19,7,43},{0,8,116},{0,8,52},{0,9,200},{17,7,13},{0,8,100},
-        {0,8,36},{0,9,168},{0,8,4},{0,8,132},{0,8,68},{0,9,232},{16,7,8},
-        {0,8,92},{0,8,28},{0,9,152},{20,7,83},{0,8,124},{0,8,60},{0,9,216},
-        {18,7,23},{0,8,108},{0,8,44},{0,9,184},{0,8,12},{0,8,140},{0,8,76},
-        {0,9,248},{16,7,3},{0,8,82},{0,8,18},{21,8,163},{19,7,35},{0,8,114},
-        {0,8,50},{0,9,196},{17,7,11},{0,8,98},{0,8,34},{0,9,164},{0,8,2},
-        {0,8,130},{0,8,66},{0,9,228},{16,7,7},{0,8,90},{0,8,26},{0,9,148},
-        {20,7,67},{0,8,122},{0,8,58},{0,9,212},{18,7,19},{0,8,106},{0,8,42},
-        {0,9,180},{0,8,10},{0,8,138},{0,8,74},{0,9,244},{16,7,5},{0,8,86},
-        {0,8,22},{64,8,0},{19,7,51},{0,8,118},{0,8,54},{0,9,204},{17,7,15},
-        {0,8,102},{0,8,38},{0,9,172},{0,8,6},{0,8,134},{0,8,70},{0,9,236},
-        {16,7,9},{0,8,94},{0,8,30},{0,9,156},{20,7,99},{0,8,126},{0,8,62},
-        {0,9,220},{18,7,27},{0,8,110},{0,8,46},{0,9,188},{0,8,14},{0,8,142},
-        {0,8,78},{0,9,252},{96,7,0},{0,8,81},{0,8,17},{21,8,131},{18,7,31},
-        {0,8,113},{0,8,49},{0,9,194},{16,7,10},{0,8,97},{0,8,33},{0,9,162},
-        {0,8,1},{0,8,129},{0,8,65},{0,9,226},{16,7,6},{0,8,89},{0,8,25},
-        {0,9,146},{19,7,59},{0,8,121},{0,8,57},{0,9,210},{17,7,17},{0,8,105},
-        {0,8,41},{0,9,178},{0,8,9},{0,8,137},{0,8,73},{0,9,242},{16,7,4},
-        {0,8,85},{0,8,21},{16,8,258},{19,7,43},{0,8,117},{0,8,53},{0,9,202},
-        {17,7,13},{0,8,101},{0,8,37},{0,9,170},{0,8,5},{0,8,133},{0,8,69},
-        {0,9,234},{16,7,8},{0,8,93},{0,8,29},{0,9,154},{20,7,83},{0,8,125},
-        {0,8,61},{0,9,218},{18,7,23},{0,8,109},{0,8,45},{0,9,186},{0,8,13},
-        {0,8,141},{0,8,77},{0,9,250},{16,7,3},{0,8,83},{0,8,19},{21,8,195},
-        {19,7,35},{0,8,115},{0,8,51},{0,9,198},{17,7,11},{0,8,99},{0,8,35},
-        {0,9,166},{0,8,3},{0,8,131},{0,8,67},{0,9,230},{16,7,7},{0,8,91},
-        {0,8,27},{0,9,150},{20,7,67},{0,8,123},{0,8,59},{0,9,214},{18,7,19},
-        {0,8,107},{0,8,43},{0,9,182},{0,8,11},{0,8,139},{0,8,75},{0,9,246},
-        {16,7,5},{0,8,87},{0,8,23},{64,8,0},{19,7,51},{0,8,119},{0,8,55},
-        {0,9,206},{17,7,15},{0,8,103},{0,8,39},{0,9,174},{0,8,7},{0,8,135},
-        {0,8,71},{0,9,238},{16,7,9},{0,8,95},{0,8,31},{0,9,158},{20,7,99},
-        {0,8,127},{0,8,63},{0,9,222},{18,7,27},{0,8,111},{0,8,47},{0,9,190},
-        {0,8,15},{0,8,143},{0,8,79},{0,9,254},{96,7,0},{0,8,80},{0,8,16},
-        {20,8,115},{18,7,31},{0,8,112},{0,8,48},{0,9,193},{16,7,10},{0,8,96},
-        {0,8,32},{0,9,161},{0,8,0},{0,8,128},{0,8,64},{0,9,225},{16,7,6},
-        {0,8,88},{0,8,24},{0,9,145},{19,7,59},{0,8,120},{0,8,56},{0,9,209},
-        {17,7,17},{0,8,104},{0,8,40},{0,9,177},{0,8,8},{0,8,136},{0,8,72},
-        {0,9,241},{16,7,4},{0,8,84},{0,8,20},{21,8,227},{19,7,43},{0,8,116},
-        {0,8,52},{0,9,201},{17,7,13},{0,8,100},{0,8,36},{0,9,169},{0,8,4},
-        {0,8,132},{0,8,68},{0,9,233},{16,7,8},{0,8,92},{0,8,28},{0,9,153},
-        {20,7,83},{0,8,124},{0,8,60},{0,9,217},{18,7,23},{0,8,108},{0,8,44},
-        {0,9,185},{0,8,12},{0,8,140},{0,8,76},{0,9,249},{16,7,3},{0,8,82},
-        {0,8,18},{21,8,163},{19,7,35},{0,8,114},{0,8,50},{0,9,197},{17,7,11},
-        {0,8,98},{0,8,34},{0,9,165},{0,8,2},{0,8,130},{0,8,66},{0,9,229},
-        {16,7,7},{0,8,90},{0,8,26},{0,9,149},{20,7,67},{0,8,122},{0,8,58},
-        {0,9,213},{18,7,19},{0,8,106},{0,8,42},{0,9,181},{0,8,10},{0,8,138},
-        {0,8,74},{0,9,245},{16,7,5},{0,8,86},{0,8,22},{64,8,0},{19,7,51},
-        {0,8,118},{0,8,54},{0,9,205},{17,7,15},{0,8,102},{0,8,38},{0,9,173},
-        {0,8,6},{0,8,134},{0,8,70},{0,9,237},{16,7,9},{0,8,94},{0,8,30},
-        {0,9,157},{20,7,99},{0,8,126},{0,8,62},{0,9,221},{18,7,27},{0,8,110},
-        {0,8,46},{0,9,189},{0,8,14},{0,8,142},{0,8,78},{0,9,253},{96,7,0},
-        {0,8,81},{0,8,17},{21,8,131},{18,7,31},{0,8,113},{0,8,49},{0,9,195},
-        {16,7,10},{0,8,97},{0,8,33},{0,9,163},{0,8,1},{0,8,129},{0,8,65},
-        {0,9,227},{16,7,6},{0,8,89},{0,8,25},{0,9,147},{19,7,59},{0,8,121},
-        {0,8,57},{0,9,211},{17,7,17},{0,8,105},{0,8,41},{0,9,179},{0,8,9},
-        {0,8,137},{0,8,73},{0,9,243},{16,7,4},{0,8,85},{0,8,21},{16,8,258},
-        {19,7,43},{0,8,117},{0,8,53},{0,9,203},{17,7,13},{0,8,101},{0,8,37},
-        {0,9,171},{0,8,5},{0,8,133},{0,8,69},{0,9,235},{16,7,8},{0,8,93},
-        {0,8,29},{0,9,155},{20,7,83},{0,8,125},{0,8,61},{0,9,219},{18,7,23},
-        {0,8,109},{0,8,45},{0,9,187},{0,8,13},{0,8,141},{0,8,77},{0,9,251},
-        {16,7,3},{0,8,83},{0,8,19},{21,8,195},{19,7,35},{0,8,115},{0,8,51},
-        {0,9,199},{17,7,11},{0,8,99},{0,8,35},{0,9,167},{0,8,3},{0,8,131},
-        {0,8,67},{0,9,231},{16,7,7},{0,8,91},{0,8,27},{0,9,151},{20,7,67},
-        {0,8,123},{0,8,59},{0,9,215},{18,7,19},{0,8,107},{0,8,43},{0,9,183},
-        {0,8,11},{0,8,139},{0,8,75},{0,9,247},{16,7,5},{0,8,87},{0,8,23},
-        {64,8,0},{19,7,51},{0,8,119},{0,8,55},{0,9,207},{17,7,15},{0,8,103},
-        {0,8,39},{0,9,175},{0,8,7},{0,8,135},{0,8,71},{0,9,239},{16,7,9},
-        {0,8,95},{0,8,31},{0,9,159},{20,7,99},{0,8,127},{0,8,63},{0,9,223},
-        {18,7,27},{0,8,111},{0,8,47},{0,9,191},{0,8,15},{0,8,143},{0,8,79},
-        {0,9,255}
-    };
-
-    static const code distfix[32] = {
-        {16,5,1},{23,5,257},{19,5,17},{27,5,4097},{17,5,5},{25,5,1025},
-        {21,5,65},{29,5,16385},{16,5,3},{24,5,513},{20,5,33},{28,5,8193},
-        {18,5,9},{26,5,2049},{22,5,129},{64,5,0},{16,5,2},{23,5,385},
-        {19,5,25},{27,5,6145},{17,5,7},{25,5,1537},{21,5,97},{29,5,24577},
-        {16,5,4},{24,5,769},{20,5,49},{28,5,12289},{18,5,13},{26,5,3073},
-        {22,5,193},{64,5,0}
-    };
diff --git a/src/other/zlib/inflate.c b/src/other/zlib/inflate.c
deleted file mode 100644
index a8431ab..0000000
--- a/src/other/zlib/inflate.c
+++ /dev/null
@@ -1,1480 +0,0 @@
-/* inflate.c -- zlib decompression
- * Copyright (C) 1995-2010 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/*
- * Change history:
- *
- * 1.2.beta0    24 Nov 2002
- * - First version -- complete rewrite of inflate to simplify code, avoid
- *   creation of window when not needed, minimize use of window when it is
- *   needed, make inffast.c even faster, implement gzip decoding, and to
- *   improve code readability and style over the previous zlib inflate code
- *
- * 1.2.beta1    25 Nov 2002
- * - Use pointers for available input and output checking in inffast.c
- * - Remove input and output counters in inffast.c
- * - Change inffast.c entry and loop from avail_in >= 7 to >= 6
- * - Remove unnecessary second byte pull from length extra in inffast.c
- * - Unroll direct copy to three copies per loop in inffast.c
- *
- * 1.2.beta2    4 Dec 2002
- * - Change external routine names to reduce potential conflicts
- * - Correct filename to inffixed.h for fixed tables in inflate.c
- * - Make hbuf[] unsigned char to match parameter type in inflate.c
- * - Change strm->next_out[-state->offset] to *(strm->next_out - state->offset)
- *   to avoid negation problem on Alphas (64 bit) in inflate.c
- *
- * 1.2.beta3    22 Dec 2002
- * - Add comments on state->bits assertion in inffast.c
- * - Add comments on op field in inftrees.h
- * - Fix bug in reuse of allocated window after inflateReset()
- * - Remove bit fields--back to byte structure for speed
- * - Remove distance extra == 0 check in inflate_fast()--only helps for lengths
- * - Change post-increments to pre-increments in inflate_fast(), PPC biased?
- * - Add compile time option, POSTINC, to use post-increments instead (Intel?)
- * - Make MATCH copy in inflate() much faster for when inflate_fast() not used
- * - Use local copies of stream next and avail values, as well as local bit
- *   buffer and bit count in inflate()--for speed when inflate_fast() not used
- *
- * 1.2.beta4    1 Jan 2003
- * - Split ptr - 257 statements in inflate_table() to avoid compiler warnings
- * - Move a comment on output buffer sizes from inffast.c to inflate.c
- * - Add comments in inffast.c to introduce the inflate_fast() routine
- * - Rearrange window copies in inflate_fast() for speed and simplification
- * - Unroll last copy for window match in inflate_fast()
- * - Use local copies of window variables in inflate_fast() for speed
- * - Pull out common wnext == 0 case for speed in inflate_fast()
- * - Make op and len in inflate_fast() unsigned for consistency
- * - Add FAR to lcode and dcode declarations in inflate_fast()
- * - Simplified bad distance check in inflate_fast()
- * - Added inflateBackInit(), inflateBack(), and inflateBackEnd() in new
- *   source file infback.c to provide a call-back interface to inflate for
- *   programs like gzip and unzip -- uses window as output buffer to avoid
- *   window copying
- *
- * 1.2.beta5    1 Jan 2003
- * - Improved inflateBack() interface to allow the caller to provide initial
- *   input in strm.
- * - Fixed stored blocks bug in inflateBack()
- *
- * 1.2.beta6    4 Jan 2003
- * - Added comments in inffast.c on effectiveness of POSTINC
- * - Typecasting all around to reduce compiler warnings
- * - Changed loops from while (1) or do {} while (1) to for (;;), again to
- *   make compilers happy
- * - Changed type of window in inflateBackInit() to unsigned char *
- *
- * 1.2.beta7    27 Jan 2003
- * - Changed many types to unsigned or unsigned short to avoid warnings
- * - Added inflateCopy() function
- *
- * 1.2.0        9 Mar 2003
- * - Changed inflateBack() interface to provide separate opaque descriptors
- *   for the in() and out() functions
- * - Changed inflateBack() argument and in_func typedef to swap the length
- *   and buffer address return values for the input function
- * - Check next_in and next_out for Z_NULL on entry to inflate()
- *
- * The history for versions after 1.2.0 are in ChangeLog in zlib distribution.
- */
-
-#include "zutil.h"
-#include "inftrees.h"
-#include "inflate.h"
-#include "inffast.h"
-
-#ifdef MAKEFIXED
-#  ifndef BUILDFIXED
-#    define BUILDFIXED
-#  endif
-#endif
-
-/* function prototypes */
-local void fixedtables OF((struct inflate_state FAR *state));
-local int updatewindow OF((z_streamp strm, unsigned out));
-#ifdef BUILDFIXED
-   void makefixed OF((void));
-#endif
-local unsigned syncsearch OF((unsigned FAR *have, unsigned char FAR *buf,
-                              unsigned len));
-
-int ZEXPORT inflateReset(strm)
-z_streamp strm;
-{
-    struct inflate_state FAR *state;
-
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-    state = (struct inflate_state FAR *)strm->state;
-    strm->total_in = strm->total_out = state->total = 0;
-    strm->msg = Z_NULL;
-    strm->adler = 1;        /* to support ill-conceived Java test suite */
-    state->mode = HEAD;
-    state->last = 0;
-    state->havedict = 0;
-    state->dmax = 32768U;
-    state->head = Z_NULL;
-    state->wsize = 0;
-    state->whave = 0;
-    state->wnext = 0;
-    state->hold = 0;
-    state->bits = 0;
-    state->lencode = state->distcode = state->next = state->codes;
-    state->sane = 1;
-    state->back = -1;
-    Tracev((stderr, "inflate: reset\n"));
-    return Z_OK;
-}
-
-int ZEXPORT inflateReset2(strm, windowBits)
-z_streamp strm;
-int windowBits;
-{
-    int wrap;
-    struct inflate_state FAR *state;
-
-    /* get the state */
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-    state = (struct inflate_state FAR *)strm->state;
-
-    /* extract wrap request from windowBits parameter */
-    if (windowBits < 0) {
-        wrap = 0;
-        windowBits = -windowBits;
-    }
-    else {
-        wrap = (windowBits >> 4) + 1;
-#ifdef GUNZIP
-        if (windowBits < 48)
-            windowBits &= 15;
-#endif
-    }
-
-    /* set number of window bits, free window if different */
-    if (windowBits && (windowBits < 8 || windowBits > 15))
-        return Z_STREAM_ERROR;
-    if (state->window != Z_NULL && state->wbits != (unsigned)windowBits) {
-        ZFREE(strm, state->window);
-        state->window = Z_NULL;
-    }
-
-    /* update state and reset the rest of it */
-    state->wrap = wrap;
-    state->wbits = (unsigned)windowBits;
-    return inflateReset(strm);
-}
-
-int ZEXPORT inflateInit2_(strm, windowBits, version, stream_size)
-z_streamp strm;
-int windowBits;
-const char *version;
-int stream_size;
-{
-    int ret;
-    struct inflate_state FAR *state;
-
-    if (version == Z_NULL || version[0] != ZLIB_VERSION[0] ||
-        stream_size != (int)(sizeof(z_stream)))
-        return Z_VERSION_ERROR;
-    if (strm == Z_NULL) return Z_STREAM_ERROR;
-    strm->msg = Z_NULL;                 /* in case we return an error */
-    if (strm->zalloc == (alloc_func)0) {
-        strm->zalloc = zcalloc;
-        strm->opaque = (voidpf)0;
-    }
-    if (strm->zfree == (free_func)0) strm->zfree = zcfree;
-    state = (struct inflate_state FAR *)
-            ZALLOC(strm, 1, sizeof(struct inflate_state));
-    if (state == Z_NULL) return Z_MEM_ERROR;
-    Tracev((stderr, "inflate: allocated\n"));
-    strm->state = (struct internal_state FAR *)state;
-    state->window = Z_NULL;
-    ret = inflateReset2(strm, windowBits);
-    if (ret != Z_OK) {
-        ZFREE(strm, state);
-        strm->state = Z_NULL;
-    }
-    return ret;
-}
-
-int ZEXPORT inflateInit_(strm, version, stream_size)
-z_streamp strm;
-const char *version;
-int stream_size;
-{
-    return inflateInit2_(strm, DEF_WBITS, version, stream_size);
-}
-
-int ZEXPORT inflatePrime(strm, bits, value)
-z_streamp strm;
-int bits;
-int value;
-{
-    struct inflate_state FAR *state;
-
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-    state = (struct inflate_state FAR *)strm->state;
-    if (bits < 0) {
-        state->hold = 0;
-        state->bits = 0;
-        return Z_OK;
-    }
-    if (bits > 16 || state->bits + bits > 32) return Z_STREAM_ERROR;
-    value &= (1L << bits) - 1;
-    state->hold += value << state->bits;
-    state->bits += bits;
-    return Z_OK;
-}
-
-/*
-   Return state with length and distance decoding tables and index sizes set to
-   fixed code decoding.  Normally this returns fixed tables from inffixed.h.
-   If BUILDFIXED is defined, then instead this routine builds the tables the
-   first time it's called, and returns those tables the first time and
-   thereafter.  This reduces the size of the code by about 2K bytes, in
-   exchange for a little execution time.  However, BUILDFIXED should not be
-   used for threaded applications, since the rewriting of the tables and virgin
-   may not be thread-safe.
- */
-local void fixedtables(state)
-struct inflate_state FAR *state;
-{
-#ifdef BUILDFIXED
-    static int virgin = 1;
-    static code *lenfix, *distfix;
-    static code fixed[544];
-
-    /* build fixed huffman tables if first call (may not be thread safe) */
-    if (virgin) {
-        unsigned sym, bits;
-        static code *next;
-
-        /* literal/length table */
-        sym = 0;
-        while (sym < 144) state->lens[sym++] = 8;
-        while (sym < 256) state->lens[sym++] = 9;
-        while (sym < 280) state->lens[sym++] = 7;
-        while (sym < 288) state->lens[sym++] = 8;
-        next = fixed;
-        lenfix = next;
-        bits = 9;
-        inflate_table(LENS, state->lens, 288, &(next), &(bits), state->work);
-
-        /* distance table */
-        sym = 0;
-        while (sym < 32) state->lens[sym++] = 5;
-        distfix = next;
-        bits = 5;
-        inflate_table(DISTS, state->lens, 32, &(next), &(bits), state->work);
-
-        /* do this just once */
-        virgin = 0;
-    }
-#else /* !BUILDFIXED */
-#   include "inffixed.h"
-#endif /* BUILDFIXED */
-    state->lencode = lenfix;
-    state->lenbits = 9;
-    state->distcode = distfix;
-    state->distbits = 5;
-}
-
-#ifdef MAKEFIXED
-#include <stdio.h>
-
-/*
-   Write out the inffixed.h that is #include'd above.  Defining MAKEFIXED also
-   defines BUILDFIXED, so the tables are built on the fly.  makefixed() writes
-   those tables to stdout, which would be piped to inffixed.h.  A small program
-   can simply call makefixed to do this:
-
-    void makefixed(void);
-
-    int main(void)
-    {
-        makefixed();
-        return 0;
-    }
-
-   Then that can be linked with zlib built with MAKEFIXED defined and run:
-
-    a.out > inffixed.h
- */
-void makefixed()
-{
-    unsigned low, size;
-    struct inflate_state state;
-
-    fixedtables(&state);
-    puts("    /* inffixed.h -- table for decoding fixed codes");
-    puts("     * Generated automatically by makefixed().");
-    puts("     */");
-    puts("");
-    puts("    /* WARNING: this file should *not* be used by applications.");
-    puts("       It is part of the implementation of this library and is");
-    puts("       subject to change. Applications should only use zlib.h.");
-    puts("     */");
-    puts("");
-    size = 1U << 9;
-    printf("    static const code lenfix[%u] = {", size);
-    low = 0;
-    for (;;) {
-        if ((low % 7) == 0) printf("\n        ");
-        printf("{%u,%u,%d}", state.lencode[low].op, state.lencode[low].bits,
-               state.lencode[low].val);
-        if (++low == size) break;
-        putchar(',');
-    }
-    puts("\n    };");
-    size = 1U << 5;
-    printf("\n    static const code distfix[%u] = {", size);
-    low = 0;
-    for (;;) {
-        if ((low % 6) == 0) printf("\n        ");
-        printf("{%u,%u,%d}", state.distcode[low].op, state.distcode[low].bits,
-               state.distcode[low].val);
-        if (++low == size) break;
-        putchar(',');
-    }
-    puts("\n    };");
-}
-#endif /* MAKEFIXED */
-
-/*
-   Update the window with the last wsize (normally 32K) bytes written before
-   returning.  If window does not exist yet, create it.  This is only called
-   when a window is already in use, or when output has been written during this
-   inflate call, but the end of the deflate stream has not been reached yet.
-   It is also called to create a window for dictionary data when a dictionary
-   is loaded.
-
-   Providing output buffers larger than 32K to inflate() should provide a speed
-   advantage, since only the last 32K of output is copied to the sliding window
-   upon return from inflate(), and since all distances after the first 32K of
-   output will fall in the output data, making match copies simpler and faster.
-   The advantage may be dependent on the size of the processor's data caches.
- */
-local int updatewindow(strm, out)
-z_streamp strm;
-unsigned out;
-{
-    struct inflate_state FAR *state;
-    unsigned copy, dist;
-
-    state = (struct inflate_state FAR *)strm->state;
-
-    /* if it hasn't been done already, allocate space for the window */
-    if (state->window == Z_NULL) {
-        state->window = (unsigned char FAR *)
-                        ZALLOC(strm, 1U << state->wbits,
-                               sizeof(unsigned char));
-        if (state->window == Z_NULL) return 1;
-    }
-
-    /* if window not in use yet, initialize */
-    if (state->wsize == 0) {
-        state->wsize = 1U << state->wbits;
-        state->wnext = 0;
-        state->whave = 0;
-    }
-
-    /* copy state->wsize or less output bytes into the circular window */
-    copy = out - strm->avail_out;
-    if (copy >= state->wsize) {
-        zmemcpy(state->window, strm->next_out - state->wsize, state->wsize);
-        state->wnext = 0;
-        state->whave = state->wsize;
-    }
-    else {
-        dist = state->wsize - state->wnext;
-        if (dist > copy) dist = copy;
-        zmemcpy(state->window + state->wnext, strm->next_out - copy, dist);
-        copy -= dist;
-        if (copy) {
-            zmemcpy(state->window, strm->next_out - copy, copy);
-            state->wnext = copy;
-            state->whave = state->wsize;
-        }
-        else {
-            state->wnext += dist;
-            if (state->wnext == state->wsize) state->wnext = 0;
-            if (state->whave < state->wsize) state->whave += dist;
-        }
-    }
-    return 0;
-}
-
-/* Macros for inflate(): */
-
-/* check function to use adler32() for zlib or crc32() for gzip */
-#ifdef GUNZIP
-#  define UPDATE(check, buf, len) \
-    (state->flags ? crc32(check, buf, len) : adler32(check, buf, len))
-#else
-#  define UPDATE(check, buf, len) adler32(check, buf, len)
-#endif
-
-/* check macros for header crc */
-#ifdef GUNZIP
-#  define CRC2(check, word) \
-    do { \
-        hbuf[0] = (unsigned char)(word); \
-        hbuf[1] = (unsigned char)((word) >> 8); \
-        check = crc32(check, hbuf, 2); \
-    } while (0)
-
-#  define CRC4(check, word) \
-    do { \
-        hbuf[0] = (unsigned char)(word); \
-        hbuf[1] = (unsigned char)((word) >> 8); \
-        hbuf[2] = (unsigned char)((word) >> 16); \
-        hbuf[3] = (unsigned char)((word) >> 24); \
-        check = crc32(check, hbuf, 4); \
-    } while (0)
-#endif
-
-/* Load registers with state in inflate() for speed */
-#define LOAD() \
-    do { \
-        put = strm->next_out; \
-        left = strm->avail_out; \
-        next = strm->next_in; \
-        have = strm->avail_in; \
-        hold = state->hold; \
-        bits = state->bits; \
-    } while (0)
-
-/* Restore state from registers in inflate() */
-#define RESTORE() \
-    do { \
-        strm->next_out = put; \
-        strm->avail_out = left; \
-        strm->next_in = next; \
-        strm->avail_in = have; \
-        state->hold = hold; \
-        state->bits = bits; \
-    } while (0)
-
-/* Clear the input bit accumulator */
-#define INITBITS() \
-    do { \
-        hold = 0; \
-        bits = 0; \
-    } while (0)
-
-/* Get a byte of input into the bit accumulator, or return from inflate()
-   if there is no input available. */
-#define PULLBYTE() \
-    do { \
-        if (have == 0) goto inf_leave; \
-        have--; \
-        hold += (unsigned long)(*next++) << bits; \
-        bits += 8; \
-    } while (0)
-
-/* Assure that there are at least n bits in the bit accumulator.  If there is
-   not enough available input to do that, then return from inflate(). */
-#define NEEDBITS(n) \
-    do { \
-        while (bits < (unsigned)(n)) \
-            PULLBYTE(); \
-    } while (0)
-
-/* Return the low n bits of the bit accumulator (n < 16) */
-#define BITS(n) \
-    ((unsigned)hold & ((1U << (n)) - 1))
-
-/* Remove n bits from the bit accumulator */
-#define DROPBITS(n) \
-    do { \
-        hold >>= (n); \
-        bits -= (unsigned)(n); \
-    } while (0)
-
-/* Remove zero to seven bits as needed to go to a byte boundary */
-#define BYTEBITS() \
-    do { \
-        hold >>= bits & 7; \
-        bits -= bits & 7; \
-    } while (0)
-
-/* Reverse the bytes in a 32-bit value */
-#define REVERSE(q) \
-    ((((q) >> 24) & 0xff) + (((q) >> 8) & 0xff00) + \
-     (((q) & 0xff00) << 8) + (((q) & 0xff) << 24))
-
-/*
-   inflate() uses a state machine to process as much input data and generate as
-   much output data as possible before returning.  The state machine is
-   structured roughly as follows:
-
-    for (;;) switch (state) {
-    ...
-    case STATEn:
-        if (not enough input data or output space to make progress)
-            return;
-        ... make progress ...
-        state = STATEm;
-        break;
-    ...
-    }
-
-   so when inflate() is called again, the same case is attempted again, and
-   if the appropriate resources are provided, the machine proceeds to the
-   next state.  The NEEDBITS() macro is usually the way the state evaluates
-   whether it can proceed or should return.  NEEDBITS() does the return if
-   the requested bits are not available.  The typical use of the BITS macros
-   is:
-
-        NEEDBITS(n);
-        ... do something with BITS(n) ...
-        DROPBITS(n);
-
-   where NEEDBITS(n) either returns from inflate() if there isn't enough
-   input left to load n bits into the accumulator, or it continues.  BITS(n)
-   gives the low n bits in the accumulator.  When done, DROPBITS(n) drops
-   the low n bits off the accumulator.  INITBITS() clears the accumulator
-   and sets the number of available bits to zero.  BYTEBITS() discards just
-   enough bits to put the accumulator on a byte boundary.  After BYTEBITS()
-   and a NEEDBITS(8), then BITS(8) would return the next byte in the stream.
-
-   NEEDBITS(n) uses PULLBYTE() to get an available byte of input, or to return
-   if there is no input available.  The decoding of variable length codes uses
-   PULLBYTE() directly in order to pull just enough bytes to decode the next
-   code, and no more.
-
-   Some states loop until they get enough input, making sure that enough
-   state information is maintained to continue the loop where it left off
-   if NEEDBITS() returns in the loop.  For example, want, need, and keep
-   would all have to actually be part of the saved state in case NEEDBITS()
-   returns:
-
-    case STATEw:
-        while (want < need) {
-            NEEDBITS(n);
-            keep[want++] = BITS(n);
-            DROPBITS(n);
-        }
-        state = STATEx;
-    case STATEx:
-
-   As shown above, if the next state is also the next case, then the break
-   is omitted.
-
-   A state may also return if there is not enough output space available to
-   complete that state.  Those states are copying stored data, writing a
-   literal byte, and copying a matching string.
-
-   When returning, a "goto inf_leave" is used to update the total counters,
-   update the check value, and determine whether any progress has been made
-   during that inflate() call in order to return the proper return code.
-   Progress is defined as a change in either strm->avail_in or strm->avail_out.
-   When there is a window, goto inf_leave will update the window with the last
-   output written.  If a goto inf_leave occurs in the middle of decompression
-   and there is no window currently, goto inf_leave will create one and copy
-   output to the window for the next call of inflate().
-
-   In this implementation, the flush parameter of inflate() only affects the
-   return code (per zlib.h).  inflate() always writes as much as possible to
-   strm->next_out, given the space available and the provided input--the effect
-   documented in zlib.h of Z_SYNC_FLUSH.  Furthermore, inflate() always defers
-   the allocation of and copying into a sliding window until necessary, which
-   provides the effect documented in zlib.h for Z_FINISH when the entire input
-   stream available.  So the only thing the flush parameter actually does is:
-   when flush is set to Z_FINISH, inflate() cannot return Z_OK.  Instead it
-   will return Z_BUF_ERROR if it has not reached the end of the stream.
- */
-
-int ZEXPORT inflate(strm, flush)
-z_streamp strm;
-int flush;
-{
-    struct inflate_state FAR *state;
-    unsigned char FAR *next;    /* next input */
-    unsigned char FAR *put;     /* next output */
-    unsigned have, left;        /* available input and output */
-    unsigned long hold;         /* bit buffer */
-    unsigned bits;              /* bits in bit buffer */
-    unsigned in, out;           /* save starting available input and output */
-    unsigned copy;              /* number of stored or match bytes to copy */
-    unsigned char FAR *from;    /* where to copy match bytes from */
-    code here;                  /* current decoding table entry */
-    code last;                  /* parent table entry */
-    unsigned len;               /* length to copy for repeats, bits to drop */
-    int ret;                    /* return code */
-#ifdef GUNZIP
-    unsigned char hbuf[4];      /* buffer for gzip header crc calculation */
-#endif
-    static const unsigned short order[19] = /* permutation of code lengths */
-        {16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15};
-
-    if (strm == Z_NULL || strm->state == Z_NULL || strm->next_out == Z_NULL ||
-        (strm->next_in == Z_NULL && strm->avail_in != 0))
-        return Z_STREAM_ERROR;
-
-    state = (struct inflate_state FAR *)strm->state;
-    if (state->mode == TYPE) state->mode = TYPEDO;      /* skip check */
-    LOAD();
-    in = have;
-    out = left;
-    ret = Z_OK;
-    for (;;)
-        switch (state->mode) {
-        case HEAD:
-            if (state->wrap == 0) {
-                state->mode = TYPEDO;
-                break;
-            }
-            NEEDBITS(16);
-#ifdef GUNZIP
-            if ((state->wrap & 2) && hold == 0x8b1f) {  /* gzip header */
-                state->check = crc32(0L, Z_NULL, 0);
-                CRC2(state->check, hold);
-                INITBITS();
-                state->mode = FLAGS;
-                break;
-            }
-            state->flags = 0;           /* expect zlib header */
-            if (state->head != Z_NULL)
-                state->head->done = -1;
-            if (!(state->wrap & 1) ||   /* check if zlib header allowed */
-#else
-            if (
-#endif
-                ((BITS(8) << 8) + (hold >> 8)) % 31) {
-                strm->msg = (char *)"incorrect header check";
-                state->mode = BAD;
-                break;
-            }
-            if (BITS(4) != Z_DEFLATED) {
-                strm->msg = (char *)"unknown compression method";
-                state->mode = BAD;
-                break;
-            }
-            DROPBITS(4);
-            len = BITS(4) + 8;
-            if (state->wbits == 0)
-                state->wbits = len;
-            else if (len > state->wbits) {
-                strm->msg = (char *)"invalid window size";
-                state->mode = BAD;
-                break;
-            }
-            state->dmax = 1U << len;
-            Tracev((stderr, "inflate:   zlib header ok\n"));
-            strm->adler = state->check = adler32(0L, Z_NULL, 0);
-            state->mode = hold & 0x200 ? DICTID : TYPE;
-            INITBITS();
-            break;
-#ifdef GUNZIP
-        case FLAGS:
-            NEEDBITS(16);
-            state->flags = (int)(hold);
-            if ((state->flags & 0xff) != Z_DEFLATED) {
-                strm->msg = (char *)"unknown compression method";
-                state->mode = BAD;
-                break;
-            }
-            if (state->flags & 0xe000) {
-                strm->msg = (char *)"unknown header flags set";
-                state->mode = BAD;
-                break;
-            }
-            if (state->head != Z_NULL)
-                state->head->text = (int)((hold >> 8) & 1);
-            if (state->flags & 0x0200) CRC2(state->check, hold);
-            INITBITS();
-            state->mode = TIME;
-        case TIME:
-            NEEDBITS(32);
-            if (state->head != Z_NULL)
-                state->head->time = hold;
-            if (state->flags & 0x0200) CRC4(state->check, hold);
-            INITBITS();
-            state->mode = OS;
-        case OS:
-            NEEDBITS(16);
-            if (state->head != Z_NULL) {
-                state->head->xflags = (int)(hold & 0xff);
-                state->head->os = (int)(hold >> 8);
-            }
-            if (state->flags & 0x0200) CRC2(state->check, hold);
-            INITBITS();
-            state->mode = EXLEN;
-        case EXLEN:
-            if (state->flags & 0x0400) {
-                NEEDBITS(16);
-                state->length = (unsigned)(hold);
-                if (state->head != Z_NULL)
-                    state->head->extra_len = (unsigned)hold;
-                if (state->flags & 0x0200) CRC2(state->check, hold);
-                INITBITS();
-            }
-            else if (state->head != Z_NULL)
-                state->head->extra = Z_NULL;
-            state->mode = EXTRA;
-        case EXTRA:
-            if (state->flags & 0x0400) {
-                copy = state->length;
-                if (copy > have) copy = have;
-                if (copy) {
-                    if (state->head != Z_NULL &&
-                        state->head->extra != Z_NULL) {
-                        len = state->head->extra_len - state->length;
-                        zmemcpy(state->head->extra + len, next,
-                                len + copy > state->head->extra_max ?
-                                state->head->extra_max - len : copy);
-                    }
-                    if (state->flags & 0x0200)
-                        state->check = crc32(state->check, next, copy);
-                    have -= copy;
-                    next += copy;
-                    state->length -= copy;
-                }
-                if (state->length) goto inf_leave;
-            }
-            state->length = 0;
-            state->mode = NAME;
-        case NAME:
-            if (state->flags & 0x0800) {
-                if (have == 0) goto inf_leave;
-                copy = 0;
-                do {
-                    len = (unsigned)(next[copy++]);
-                    if (state->head != Z_NULL &&
-                            state->head->name != Z_NULL &&
-                            state->length < state->head->name_max)
-                        state->head->name[state->length++] = len;
-                } while (len && copy < have);
-                if (state->flags & 0x0200)
-                    state->check = crc32(state->check, next, copy);
-                have -= copy;
-                next += copy;
-                if (len) goto inf_leave;
-            }
-            else if (state->head != Z_NULL)
-                state->head->name = Z_NULL;
-            state->length = 0;
-            state->mode = COMMENT;
-        case COMMENT:
-            if (state->flags & 0x1000) {
-                if (have == 0) goto inf_leave;
-                copy = 0;
-                do {
-                    len = (unsigned)(next[copy++]);
-                    if (state->head != Z_NULL &&
-                            state->head->comment != Z_NULL &&
-                            state->length < state->head->comm_max)
-                        state->head->comment[state->length++] = len;
-                } while (len && copy < have);
-                if (state->flags & 0x0200)
-                    state->check = crc32(state->check, next, copy);
-                have -= copy;
-                next += copy;
-                if (len) goto inf_leave;
-            }
-            else if (state->head != Z_NULL)
-                state->head->comment = Z_NULL;
-            state->mode = HCRC;
-        case HCRC:
-            if (state->flags & 0x0200) {
-                NEEDBITS(16);
-                if (hold != (state->check & 0xffff)) {
-                    strm->msg = (char *)"header crc mismatch";
-                    state->mode = BAD;
-                    break;
-                }
-                INITBITS();
-            }
-            if (state->head != Z_NULL) {
-                state->head->hcrc = (int)((state->flags >> 9) & 1);
-                state->head->done = 1;
-            }
-            strm->adler = state->check = crc32(0L, Z_NULL, 0);
-            state->mode = TYPE;
-            break;
-#endif
-        case DICTID:
-            NEEDBITS(32);
-            strm->adler = state->check = REVERSE(hold);
-            INITBITS();
-            state->mode = DICT;
-        case DICT:
-            if (state->havedict == 0) {
-                RESTORE();
-                return Z_NEED_DICT;
-            }
-            strm->adler = state->check = adler32(0L, Z_NULL, 0);
-            state->mode = TYPE;
-        case TYPE:
-            if (flush == Z_BLOCK || flush == Z_TREES) goto inf_leave;
-        case TYPEDO:
-            if (state->last) {
-                BYTEBITS();
-                state->mode = CHECK;
-                break;
-            }
-            NEEDBITS(3);
-            state->last = BITS(1);
-            DROPBITS(1);
-            switch (BITS(2)) {
-            case 0:                             /* stored block */
-                Tracev((stderr, "inflate:     stored block%s\n",
-                        state->last ? " (last)" : ""));
-                state->mode = STORED;
-                break;
-            case 1:                             /* fixed block */
-                fixedtables(state);
-                Tracev((stderr, "inflate:     fixed codes block%s\n",
-                        state->last ? " (last)" : ""));
-                state->mode = LEN_;             /* decode codes */
-                if (flush == Z_TREES) {
-                    DROPBITS(2);
-                    goto inf_leave;
-                }
-                break;
-            case 2:                             /* dynamic block */
-                Tracev((stderr, "inflate:     dynamic codes block%s\n",
-                        state->last ? " (last)" : ""));
-                state->mode = TABLE;
-                break;
-            case 3:
-                strm->msg = (char *)"invalid block type";
-                state->mode = BAD;
-            }
-            DROPBITS(2);
-            break;
-        case STORED:
-            BYTEBITS();                         /* go to byte boundary */
-            NEEDBITS(32);
-            if ((hold & 0xffff) != ((hold >> 16) ^ 0xffff)) {
-                strm->msg = (char *)"invalid stored block lengths";
-                state->mode = BAD;
-                break;
-            }
-            state->length = (unsigned)hold & 0xffff;
-            Tracev((stderr, "inflate:       stored length %u\n",
-                    state->length));
-            INITBITS();
-            state->mode = COPY_;
-            if (flush == Z_TREES) goto inf_leave;
-        case COPY_:
-            state->mode = COPY;
-        case COPY:
-            copy = state->length;
-            if (copy) {
-                if (copy > have) copy = have;
-                if (copy > left) copy = left;
-                if (copy == 0) goto inf_leave;
-                zmemcpy(put, next, copy);
-                have -= copy;
-                next += copy;
-                left -= copy;
-                put += copy;
-                state->length -= copy;
-                break;
-            }
-            Tracev((stderr, "inflate:       stored end\n"));
-            state->mode = TYPE;
-            break;
-        case TABLE:
-            NEEDBITS(14);
-            state->nlen = BITS(5) + 257;
-            DROPBITS(5);
-            state->ndist = BITS(5) + 1;
-            DROPBITS(5);
-            state->ncode = BITS(4) + 4;
-            DROPBITS(4);
-#ifndef PKZIP_BUG_WORKAROUND
-            if (state->nlen > 286 || state->ndist > 30) {
-                strm->msg = (char *)"too many length or distance symbols";
-                state->mode = BAD;
-                break;
-            }
-#endif
-            Tracev((stderr, "inflate:       table sizes ok\n"));
-            state->have = 0;
-            state->mode = LENLENS;
-        case LENLENS:
-            while (state->have < state->ncode) {
-                NEEDBITS(3);
-                state->lens[order[state->have++]] = (unsigned short)BITS(3);
-                DROPBITS(3);
-            }
-            while (state->have < 19)
-                state->lens[order[state->have++]] = 0;
-            state->next = state->codes;
-            state->lencode = (code const FAR *)(state->next);
-            state->lenbits = 7;
-            ret = inflate_table(CODES, state->lens, 19, &(state->next),
-                                &(state->lenbits), state->work);
-            if (ret) {
-                strm->msg = (char *)"invalid code lengths set";
-                state->mode = BAD;
-                break;
-            }
-            Tracev((stderr, "inflate:       code lengths ok\n"));
-            state->have = 0;
-            state->mode = CODELENS;
-        case CODELENS:
-            while (state->have < state->nlen + state->ndist) {
-                for (;;) {
-                    here = state->lencode[BITS(state->lenbits)];
-                    if ((unsigned)(here.bits) <= bits) break;
-                    PULLBYTE();
-                }
-                if (here.val < 16) {
-                    NEEDBITS(here.bits);
-                    DROPBITS(here.bits);
-                    state->lens[state->have++] = here.val;
-                }
-                else {
-                    if (here.val == 16) {
-                        NEEDBITS(here.bits + 2);
-                        DROPBITS(here.bits);
-                        if (state->have == 0) {
-                            strm->msg = (char *)"invalid bit length repeat";
-                            state->mode = BAD;
-                            break;
-                        }
-                        len = state->lens[state->have - 1];
-                        copy = 3 + BITS(2);
-                        DROPBITS(2);
-                    }
-                    else if (here.val == 17) {
-                        NEEDBITS(here.bits + 3);
-                        DROPBITS(here.bits);
-                        len = 0;
-                        copy = 3 + BITS(3);
-                        DROPBITS(3);
-                    }
-                    else {
-                        NEEDBITS(here.bits + 7);
-                        DROPBITS(here.bits);
-                        len = 0;
-                        copy = 11 + BITS(7);
-                        DROPBITS(7);
-                    }
-                    if (state->have + copy > state->nlen + state->ndist) {
-                        strm->msg = (char *)"invalid bit length repeat";
-                        state->mode = BAD;
-                        break;
-                    }
-                    while (copy--)
-                        state->lens[state->have++] = (unsigned short)len;
-                }
-            }
-
-            /* handle error breaks in while */
-            if (state->mode == BAD) break;
-
-            /* check for end-of-block code (better have one) */
-            if (state->lens[256] == 0) {
-                strm->msg = (char *)"invalid code -- missing end-of-block";
-                state->mode = BAD;
-                break;
-            }
-
-            /* build code tables -- note: do not change the lenbits or distbits
-               values here (9 and 6) without reading the comments in inftrees.h
-               concerning the ENOUGH constants, which depend on those values */
-            state->next = state->codes;
-            state->lencode = (code const FAR *)(state->next);
-            state->lenbits = 9;
-            ret = inflate_table(LENS, state->lens, state->nlen, &(state->next),
-                                &(state->lenbits), state->work);
-            if (ret) {
-                strm->msg = (char *)"invalid literal/lengths set";
-                state->mode = BAD;
-                break;
-            }
-            state->distcode = (code const FAR *)(state->next);
-            state->distbits = 6;
-            ret = inflate_table(DISTS, state->lens + state->nlen, state->ndist,
-                            &(state->next), &(state->distbits), state->work);
-            if (ret) {
-                strm->msg = (char *)"invalid distances set";
-                state->mode = BAD;
-                break;
-            }
-            Tracev((stderr, "inflate:       codes ok\n"));
-            state->mode = LEN_;
-            if (flush == Z_TREES) goto inf_leave;
-        case LEN_:
-            state->mode = LEN;
-        case LEN:
-            if (have >= 6 && left >= 258) {
-                RESTORE();
-                inflate_fast(strm, out);
-                LOAD();
-                if (state->mode == TYPE)
-                    state->back = -1;
-                break;
-            }
-            state->back = 0;
-            for (;;) {
-                here = state->lencode[BITS(state->lenbits)];
-                if ((unsigned)(here.bits) <= bits) break;
-                PULLBYTE();
-            }
-            if (here.op && (here.op & 0xf0) == 0) {
-                last = here;
-                for (;;) {
-                    here = state->lencode[last.val +
-                            (BITS(last.bits + last.op) >> last.bits)];
-                    if ((unsigned)(last.bits + here.bits) <= bits) break;
-                    PULLBYTE();
-                }
-                DROPBITS(last.bits);
-                state->back += last.bits;
-            }
-            DROPBITS(here.bits);
-            state->back += here.bits;
-            state->length = (unsigned)here.val;
-            if ((int)(here.op) == 0) {
-                Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?
-                        "inflate:         literal '%c'\n" :
-                        "inflate:         literal 0x%02x\n", here.val));
-                state->mode = LIT;
-                break;
-            }
-            if (here.op & 32) {
-                Tracevv((stderr, "inflate:         end of block\n"));
-                state->back = -1;
-                state->mode = TYPE;
-                break;
-            }
-            if (here.op & 64) {
-                strm->msg = (char *)"invalid literal/length code";
-                state->mode = BAD;
-                break;
-            }
-            state->extra = (unsigned)(here.op) & 15;
-            state->mode = LENEXT;
-        case LENEXT:
-            if (state->extra) {
-                NEEDBITS(state->extra);
-                state->length += BITS(state->extra);
-                DROPBITS(state->extra);
-                state->back += state->extra;
-            }
-            Tracevv((stderr, "inflate:         length %u\n", state->length));
-            state->was = state->length;
-            state->mode = DIST;
-        case DIST:
-            for (;;) {
-                here = state->distcode[BITS(state->distbits)];
-                if ((unsigned)(here.bits) <= bits) break;
-                PULLBYTE();
-            }
-            if ((here.op & 0xf0) == 0) {
-                last = here;
-                for (;;) {
-                    here = state->distcode[last.val +
-                            (BITS(last.bits + last.op) >> last.bits)];
-                    if ((unsigned)(last.bits + here.bits) <= bits) break;
-                    PULLBYTE();
-                }
-                DROPBITS(last.bits);
-                state->back += last.bits;
-            }
-            DROPBITS(here.bits);
-            state->back += here.bits;
-            if (here.op & 64) {
-                strm->msg = (char *)"invalid distance code";
-                state->mode = BAD;
-                break;
-            }
-            state->offset = (unsigned)here.val;
-            state->extra = (unsigned)(here.op) & 15;
-            state->mode = DISTEXT;
-        case DISTEXT:
-            if (state->extra) {
-                NEEDBITS(state->extra);
-                state->offset += BITS(state->extra);
-                DROPBITS(state->extra);
-                state->back += state->extra;
-            }
-#ifdef INFLATE_STRICT
-            if (state->offset > state->dmax) {
-                strm->msg = (char *)"invalid distance too far back";
-                state->mode = BAD;
-                break;
-            }
-#endif
-            Tracevv((stderr, "inflate:         distance %u\n", state->offset));
-            state->mode = MATCH;
-        case MATCH:
-            if (left == 0) goto inf_leave;
-            copy = out - left;
-            if (state->offset > copy) {         /* copy from window */
-                copy = state->offset - copy;
-                if (copy > state->whave) {
-                    if (state->sane) {
-                        strm->msg = (char *)"invalid distance too far back";
-                        state->mode = BAD;
-                        break;
-                    }
-#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR
-                    Trace((stderr, "inflate.c too far\n"));
-                    copy -= state->whave;
-                    if (copy > state->length) copy = state->length;
-                    if (copy > left) copy = left;
-                    left -= copy;
-                    state->length -= copy;
-                    do {
-                        *put++ = 0;
-                    } while (--copy);
-                    if (state->length == 0) state->mode = LEN;
-                    break;
-#endif
-                }
-                if (copy > state->wnext) {
-                    copy -= state->wnext;
-                    from = state->window + (state->wsize - copy);
-                }
-                else
-                    from = state->window + (state->wnext - copy);
-                if (copy > state->length) copy = state->length;
-            }
-            else {                              /* copy from output */
-                from = put - state->offset;
-                copy = state->length;
-            }
-            if (copy > left) copy = left;
-            left -= copy;
-            state->length -= copy;
-            do {
-                *put++ = *from++;
-            } while (--copy);
-            if (state->length == 0) state->mode = LEN;
-            break;
-        case LIT:
-            if (left == 0) goto inf_leave;
-            *put++ = (unsigned char)(state->length);
-            left--;
-            state->mode = LEN;
-            break;
-        case CHECK:
-            if (state->wrap) {
-                NEEDBITS(32);
-                out -= left;
-                strm->total_out += out;
-                state->total += out;
-                if (out)
-                    strm->adler = state->check =
-                        UPDATE(state->check, put - out, out);
-                out = left;
-                if ((
-#ifdef GUNZIP
-                     state->flags ? hold :
-#endif
-                     REVERSE(hold)) != state->check) {
-                    strm->msg = (char *)"incorrect data check";
-                    state->mode = BAD;
-                    break;
-                }
-                INITBITS();
-                Tracev((stderr, "inflate:   check matches trailer\n"));
-            }
-#ifdef GUNZIP
-            state->mode = LENGTH;
-        case LENGTH:
-            if (state->wrap && state->flags) {
-                NEEDBITS(32);
-                if (hold != (state->total & 0xffffffffUL)) {
-                    strm->msg = (char *)"incorrect length check";
-                    state->mode = BAD;
-                    break;
-                }
-                INITBITS();
-                Tracev((stderr, "inflate:   length matches trailer\n"));
-            }
-#endif
-            state->mode = DONE;
-        case DONE:
-            ret = Z_STREAM_END;
-            goto inf_leave;
-        case BAD:
-            ret = Z_DATA_ERROR;
-            goto inf_leave;
-        case MEM:
-            return Z_MEM_ERROR;
-        case SYNC:
-        default:
-            return Z_STREAM_ERROR;
-        }
-
-    /*
-       Return from inflate(), updating the total counts and the check value.
-       If there was no progress during the inflate() call, return a buffer
-       error.  Call updatewindow() to create and/or update the window state.
-       Note: a memory error from inflate() is non-recoverable.
-     */
-  inf_leave:
-    RESTORE();
-    if (state->wsize || (state->mode < CHECK && out != strm->avail_out))
-        if (updatewindow(strm, out)) {
-            state->mode = MEM;
-            return Z_MEM_ERROR;
-        }
-    in -= strm->avail_in;
-    out -= strm->avail_out;
-    strm->total_in += in;
-    strm->total_out += out;
-    state->total += out;
-    if (state->wrap && out)
-        strm->adler = state->check =
-            UPDATE(state->check, strm->next_out - out, out);
-    strm->data_type = state->bits + (state->last ? 64 : 0) +
-                      (state->mode == TYPE ? 128 : 0) +
-                      (state->mode == LEN_ || state->mode == COPY_ ? 256 : 0);
-    if (((in == 0 && out == 0) || flush == Z_FINISH) && ret == Z_OK)
-        ret = Z_BUF_ERROR;
-    return ret;
-}
-
-int ZEXPORT inflateEnd(strm)
-z_streamp strm;
-{
-    struct inflate_state FAR *state;
-    if (strm == Z_NULL || strm->state == Z_NULL || strm->zfree == (free_func)0)
-        return Z_STREAM_ERROR;
-    state = (struct inflate_state FAR *)strm->state;
-    if (state->window != Z_NULL) ZFREE(strm, state->window);
-    ZFREE(strm, strm->state);
-    strm->state = Z_NULL;
-    Tracev((stderr, "inflate: end\n"));
-    return Z_OK;
-}
-
-int ZEXPORT inflateSetDictionary(strm, dictionary, dictLength)
-z_streamp strm;
-const Bytef *dictionary;
-uInt dictLength;
-{
-    struct inflate_state FAR *state;
-    unsigned long id;
-
-    /* check state */
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-    state = (struct inflate_state FAR *)strm->state;
-    if (state->wrap != 0 && state->mode != DICT)
-        return Z_STREAM_ERROR;
-
-    /* check for correct dictionary id */
-    if (state->mode == DICT) {
-        id = adler32(0L, Z_NULL, 0);
-        id = adler32(id, dictionary, dictLength);
-        if (id != state->check)
-            return Z_DATA_ERROR;
-    }
-
-    /* copy dictionary to window */
-    if (updatewindow(strm, strm->avail_out)) {
-        state->mode = MEM;
-        return Z_MEM_ERROR;
-    }
-    if (dictLength > state->wsize) {
-        zmemcpy(state->window, dictionary + dictLength - state->wsize,
-                state->wsize);
-        state->whave = state->wsize;
-    }
-    else {
-        zmemcpy(state->window + state->wsize - dictLength, dictionary,
-                dictLength);
-        state->whave = dictLength;
-    }
-    state->havedict = 1;
-    Tracev((stderr, "inflate:   dictionary set\n"));
-    return Z_OK;
-}
-
-int ZEXPORT inflateGetHeader(strm, head)
-z_streamp strm;
-gz_headerp head;
-{
-    struct inflate_state FAR *state;
-
-    /* check state */
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-    state = (struct inflate_state FAR *)strm->state;
-    if ((state->wrap & 2) == 0) return Z_STREAM_ERROR;
-
-    /* save header structure */
-    state->head = head;
-    head->done = 0;
-    return Z_OK;
-}
-
-/*
-   Search buf[0..len-1] for the pattern: 0, 0, 0xff, 0xff.  Return when found
-   or when out of input.  When called, *have is the number of pattern bytes
-   found in order so far, in 0..3.  On return *have is updated to the new
-   state.  If on return *have equals four, then the pattern was found and the
-   return value is how many bytes were read including the last byte of the
-   pattern.  If *have is less than four, then the pattern has not been found
-   yet and the return value is len.  In the latter case, syncsearch() can be
-   called again with more data and the *have state.  *have is initialized to
-   zero for the first call.
- */
-local unsigned syncsearch(have, buf, len)
-unsigned FAR *have;
-unsigned char FAR *buf;
-unsigned len;
-{
-    unsigned got;
-    unsigned next;
-
-    got = *have;
-    next = 0;
-    while (next < len && got < 4) {
-        if ((int)(buf[next]) == (got < 2 ? 0 : 0xff))
-            got++;
-        else if (buf[next])
-            got = 0;
-        else
-            got = 4 - got;
-        next++;
-    }
-    *have = got;
-    return next;
-}
-
-int ZEXPORT inflateSync(strm)
-z_streamp strm;
-{
-    unsigned len;               /* number of bytes to look at or looked at */
-    unsigned long in, out;      /* temporary to save total_in and total_out */
-    unsigned char buf[4];       /* to restore bit buffer to byte string */
-    struct inflate_state FAR *state;
-
-    /* check parameters */
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-    state = (struct inflate_state FAR *)strm->state;
-    if (strm->avail_in == 0 && state->bits < 8) return Z_BUF_ERROR;
-
-    /* if first time, start search in bit buffer */
-    if (state->mode != SYNC) {
-        state->mode = SYNC;
-        state->hold <<= state->bits & 7;
-        state->bits -= state->bits & 7;
-        len = 0;
-        while (state->bits >= 8) {
-            buf[len++] = (unsigned char)(state->hold);
-            state->hold >>= 8;
-            state->bits -= 8;
-        }
-        state->have = 0;
-        syncsearch(&(state->have), buf, len);
-    }
-
-    /* search available input */
-    len = syncsearch(&(state->have), strm->next_in, strm->avail_in);
-    strm->avail_in -= len;
-    strm->next_in += len;
-    strm->total_in += len;
-
-    /* return no joy or set up to restart inflate() on a new block */
-    if (state->have != 4) return Z_DATA_ERROR;
-    in = strm->total_in;  out = strm->total_out;
-    inflateReset(strm);
-    strm->total_in = in;  strm->total_out = out;
-    state->mode = TYPE;
-    return Z_OK;
-}
-
-/*
-   Returns true if inflate is currently at the end of a block generated by
-   Z_SYNC_FLUSH or Z_FULL_FLUSH. This function is used by one PPP
-   implementation to provide an additional safety check. PPP uses
-   Z_SYNC_FLUSH but removes the length bytes of the resulting empty stored
-   block. When decompressing, PPP checks that at the end of input packet,
-   inflate is waiting for these length bytes.
- */
-int ZEXPORT inflateSyncPoint(strm)
-z_streamp strm;
-{
-    struct inflate_state FAR *state;
-
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-    state = (struct inflate_state FAR *)strm->state;
-    return state->mode == STORED && state->bits == 0;
-}
-
-int ZEXPORT inflateCopy(dest, source)
-z_streamp dest;
-z_streamp source;
-{
-    struct inflate_state FAR *state;
-    struct inflate_state FAR *copy;
-    unsigned char FAR *window;
-    unsigned wsize;
-
-    /* check input */
-    if (dest == Z_NULL || source == Z_NULL || source->state == Z_NULL ||
-        source->zalloc == (alloc_func)0 || source->zfree == (free_func)0)
-        return Z_STREAM_ERROR;
-    state = (struct inflate_state FAR *)source->state;
-
-    /* allocate space */
-    copy = (struct inflate_state FAR *)
-           ZALLOC(source, 1, sizeof(struct inflate_state));
-    if (copy == Z_NULL) return Z_MEM_ERROR;
-    window = Z_NULL;
-    if (state->window != Z_NULL) {
-        window = (unsigned char FAR *)
-                 ZALLOC(source, 1U << state->wbits, sizeof(unsigned char));
-        if (window == Z_NULL) {
-            ZFREE(source, copy);
-            return Z_MEM_ERROR;
-        }
-    }
-
-    /* copy state */
-    zmemcpy(dest, source, sizeof(z_stream));
-    zmemcpy(copy, state, sizeof(struct inflate_state));
-    if (state->lencode >= state->codes &&
-        state->lencode <= state->codes + ENOUGH - 1) {
-        copy->lencode = copy->codes + (state->lencode - state->codes);
-        copy->distcode = copy->codes + (state->distcode - state->codes);
-    }
-    copy->next = copy->codes + (state->next - state->codes);
-    if (window != Z_NULL) {
-        wsize = 1U << state->wbits;
-        zmemcpy(window, state->window, wsize);
-    }
-    copy->window = window;
-    dest->state = (struct internal_state FAR *)copy;
-    return Z_OK;
-}
-
-int ZEXPORT inflateUndermine(strm, subvert)
-z_streamp strm;
-int subvert;
-{
-    struct inflate_state FAR *state;
-
-    if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
-    state = (struct inflate_state FAR *)strm->state;
-    state->sane = !subvert;
-#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR
-    return Z_OK;
-#else
-    state->sane = 1;
-    return Z_DATA_ERROR;
-#endif
-}
-
-long ZEXPORT inflateMark(strm)
-z_streamp strm;
-{
-    struct inflate_state FAR *state;
-
-    if (strm == Z_NULL || strm->state == Z_NULL) return -1L << 16;
-    state = (struct inflate_state FAR *)strm->state;
-    return ((long)(state->back) << 16) +
-        (state->mode == COPY ? state->length :
-            (state->mode == MATCH ? state->was - state->length : 0));
-}
diff --git a/src/other/zlib/inflate.h b/src/other/zlib/inflate.h
deleted file mode 100644
index 95f4986..0000000
--- a/src/other/zlib/inflate.h
+++ /dev/null
@@ -1,122 +0,0 @@
-/* inflate.h -- internal inflate state definition
- * Copyright (C) 1995-2009 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
-   part of the implementation of the compression library and is
-   subject to change. Applications should only use zlib.h.
- */
-
-/* define NO_GZIP when compiling if you want to disable gzip header and
-   trailer decoding by inflate().  NO_GZIP would be used to avoid linking in
-   the crc code when it is not needed.  For shared libraries, gzip decoding
-   should be left enabled. */
-#ifndef NO_GZIP
-#  define GUNZIP
-#endif
-
-/* Possible inflate modes between inflate() calls */
-typedef enum {
-    HEAD,       /* i: waiting for magic header */
-    FLAGS,      /* i: waiting for method and flags (gzip) */
-    TIME,       /* i: waiting for modification time (gzip) */
-    OS,         /* i: waiting for extra flags and operating system (gzip) */
-    EXLEN,      /* i: waiting for extra length (gzip) */
-    EXTRA,      /* i: waiting for extra bytes (gzip) */
-    NAME,       /* i: waiting for end of file name (gzip) */
-    COMMENT,    /* i: waiting for end of comment (gzip) */
-    HCRC,       /* i: waiting for header crc (gzip) */
-    DICTID,     /* i: waiting for dictionary check value */
-    DICT,       /* waiting for inflateSetDictionary() call */
-        TYPE,       /* i: waiting for type bits, including last-flag bit */
-        TYPEDO,     /* i: same, but skip check to exit inflate on new block */
-        STORED,     /* i: waiting for stored size (length and complement) */
-        COPY_,      /* i/o: same as COPY below, but only first time in */
-        COPY,       /* i/o: waiting for input or output to copy stored block */
-        TABLE,      /* i: waiting for dynamic block table lengths */
-        LENLENS,    /* i: waiting for code length code lengths */
-        CODELENS,   /* i: waiting for length/lit and distance code lengths */
-            LEN_,       /* i: same as LEN below, but only first time in */
-            LEN,        /* i: waiting for length/lit/eob code */
-            LENEXT,     /* i: waiting for length extra bits */
-            DIST,       /* i: waiting for distance code */
-            DISTEXT,    /* i: waiting for distance extra bits */
-            MATCH,      /* o: waiting for output space to copy string */
-            LIT,        /* o: waiting for output space to write literal */
-    CHECK,      /* i: waiting for 32-bit check value */
-    LENGTH,     /* i: waiting for 32-bit length (gzip) */
-    DONE,       /* finished check, done -- remain here until reset */
-    BAD,        /* got a data error -- remain here until reset */
-    MEM,        /* got an inflate() memory error -- remain here until reset */
-    SYNC        /* looking for synchronization bytes to restart inflate() */
-} inflate_mode;
-
-/*
-    State transitions between above modes -
-
-    (most modes can go to BAD or MEM on error -- not shown for clarity)
-
-    Process header:
-        HEAD -> (gzip) or (zlib) or (raw)
-        (gzip) -> FLAGS -> TIME -> OS -> EXLEN -> EXTRA -> NAME -> COMMENT ->
-                  HCRC -> TYPE
-        (zlib) -> DICTID or TYPE
-        DICTID -> DICT -> TYPE
-        (raw) -> TYPEDO
-    Read deflate blocks:
-            TYPE -> TYPEDO -> STORED or TABLE or LEN_ or CHECK
-            STORED -> COPY_ -> COPY -> TYPE
-            TABLE -> LENLENS -> CODELENS -> LEN_
-            LEN_ -> LEN
-    Read deflate codes in fixed or dynamic block:
-                LEN -> LENEXT or LIT or TYPE
-                LENEXT -> DIST -> DISTEXT -> MATCH -> LEN
-                LIT -> LEN
-    Process trailer:
-        CHECK -> LENGTH -> DONE
- */
-
-/* state maintained between inflate() calls.  Approximately 10K bytes. */
-struct inflate_state {
-    inflate_mode mode;          /* current inflate mode */
-    int last;                   /* true if processing last block */
-    int wrap;                   /* bit 0 true for zlib, bit 1 true for gzip */
-    int havedict;               /* true if dictionary provided */
-    int flags;                  /* gzip header method and flags (0 if zlib) */
-    unsigned dmax;              /* zlib header max distance (INFLATE_STRICT) */
-    unsigned long check;        /* protected copy of check value */
-    unsigned long total;        /* protected copy of output count */
-    gz_headerp head;            /* where to save gzip header information */
-        /* sliding window */
-    unsigned wbits;             /* log base 2 of requested window size */
-    unsigned wsize;             /* window size or zero if not using window */
-    unsigned whave;             /* valid bytes in the window */
-    unsigned wnext;             /* window write index */
-    unsigned char FAR *window;  /* allocated sliding window, if needed */
-        /* bit accumulator */
-    unsigned long hold;         /* input bit accumulator */
-    unsigned bits;              /* number of bits in "in" */
-        /* for string and stored block copying */
-    unsigned length;            /* literal or length of data to copy */
-    unsigned offset;            /* distance back to copy string from */
-        /* for table and code decoding */
-    unsigned extra;             /* extra bits needed */
-        /* fixed and dynamic code tables */
-    code const FAR *lencode;    /* starting table for length/literal codes */
-    code const FAR *distcode;   /* starting table for distance codes */
-    unsigned lenbits;           /* index bits for lencode */
-    unsigned distbits;          /* index bits for distcode */
-        /* dynamic table building */
-    unsigned ncode;             /* number of code length code lengths */
-    unsigned nlen;              /* number of length code lengths */
-    unsigned ndist;             /* number of distance code lengths */
-    unsigned have;              /* number of code lengths in lens[] */
-    code FAR *next;             /* next available space in codes[] */
-    unsigned short lens[320];   /* temporary storage for code lengths */
-    unsigned short work[288];   /* work area for code table building */
-    code codes[ENOUGH];         /* space for code tables */
-    int sane;                   /* if false, allow invalid distance too far */
-    int back;                   /* bits back of last unprocessed length/lit */
-    unsigned was;               /* initial length of match */
-};
diff --git a/src/other/zlib/inftrees.c b/src/other/zlib/inftrees.c
deleted file mode 100644
index 11e9c52..0000000
--- a/src/other/zlib/inftrees.c
+++ /dev/null
@@ -1,330 +0,0 @@
-/* inftrees.c -- generate Huffman trees for efficient decoding
- * Copyright (C) 1995-2010 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-#include "zutil.h"
-#include "inftrees.h"
-
-#define MAXBITS 15
-
-const char inflate_copyright[] =
-   " inflate 1.2.5 Copyright 1995-2010 Mark Adler ";
-/*
-  If you use the zlib library in a product, an acknowledgment is welcome
-  in the documentation of your product. If for some reason you cannot
-  include such an acknowledgment, I would appreciate that you keep this
-  copyright string in the executable of your product.
- */
-
-/*
-   Build a set of tables to decode the provided canonical Huffman code.
-   The code lengths are lens[0..codes-1].  The result starts at *table,
-   whose indices are 0..2^bits-1.  work is a writable array of at least
-   lens shorts, which is used as a work area.  type is the type of code
-   to be generated, CODES, LENS, or DISTS.  On return, zero is success,
-   -1 is an invalid code, and +1 means that ENOUGH isn't enough.  table
-   on return points to the next available entry's address.  bits is the
-   requested root table index bits, and on return it is the actual root
-   table index bits.  It will differ if the request is greater than the
-   longest code or if it is less than the shortest code.
- */
-int ZLIB_INTERNAL inflate_table(type, lens, codes, table, bits, work)
-codetype type;
-unsigned short FAR *lens;
-unsigned codes;
-code FAR * FAR *table;
-unsigned FAR *bits;
-unsigned short FAR *work;
-{
-    unsigned len;               /* a code's length in bits */
-    unsigned sym;               /* index of code symbols */
-    unsigned min, max;          /* minimum and maximum code lengths */
-    unsigned root;              /* number of index bits for root table */
-    unsigned curr;              /* number of index bits for current table */
-    unsigned drop;              /* code bits to drop for sub-table */
-    int left;                   /* number of prefix codes available */
-    unsigned used;              /* code entries in table used */
-    unsigned huff;              /* Huffman code */
-    unsigned incr;              /* for incrementing code, index */
-    unsigned fill;              /* index for replicating entries */
-    unsigned low;               /* low bits for current root entry */
-    unsigned mask;              /* mask for low root bits */
-    code here;                  /* table entry for duplication */
-    code FAR *next;             /* next available space in table */
-    const unsigned short FAR *base;     /* base value table to use */
-    const unsigned short FAR *extra;    /* extra bits table to use */
-    int end;                    /* use base and extra for symbol > end */
-    unsigned short count[MAXBITS+1];    /* number of codes of each length */
-    unsigned short offs[MAXBITS+1];     /* offsets in table for each length */
-    static const unsigned short lbase[31] = { /* Length codes 257..285 base */
-        3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,
-        35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0};
-    static const unsigned short lext[31] = { /* Length codes 257..285 extra */
-        16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18,
-        19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 73, 195};
-    static const unsigned short dbase[32] = { /* Distance codes 0..29 base */
-        1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,
-        257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,
-        8193, 12289, 16385, 24577, 0, 0};
-    static const unsigned short dext[32] = { /* Distance codes 0..29 extra */
-        16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22,
-        23, 23, 24, 24, 25, 25, 26, 26, 27, 27,
-        28, 28, 29, 29, 64, 64};
-
-    /*
-       Process a set of code lengths to create a canonical Huffman code.  The
-       code lengths are lens[0..codes-1].  Each length corresponds to the
-       symbols 0..codes-1.  The Huffman code is generated by first sorting the
-       symbols by length from short to long, and retaining the symbol order
-       for codes with equal lengths.  Then the code starts with all zero bits
-       for the first code of the shortest length, and the codes are integer
-       increments for the same length, and zeros are appended as the length
-       increases.  For the deflate format, these bits are stored backwards
-       from their more natural integer increment ordering, and so when the
-       decoding tables are built in the large loop below, the integer codes
-       are incremented backwards.
-
-       This routine assumes, but does not check, that all of the entries in
-       lens[] are in the range 0..MAXBITS.  The caller must assure this.
-       1..MAXBITS is interpreted as that code length.  zero means that that
-       symbol does not occur in this code.
-
-       The codes are sorted by computing a count of codes for each length,
-       creating from that a table of starting indices for each length in the
-       sorted table, and then entering the symbols in order in the sorted
-       table.  The sorted table is work[], with that space being provided by
-       the caller.
-
-       The length counts are used for other purposes as well, i.e. finding
-       the minimum and maximum length codes, determining if there are any
-       codes at all, checking for a valid set of lengths, and looking ahead
-       at length counts to determine sub-table sizes when building the
-       decoding tables.
-     */
-
-    /* accumulate lengths for codes (assumes lens[] all in 0..MAXBITS) */
-    for (len = 0; len <= MAXBITS; len++)
-        count[len] = 0;
-    for (sym = 0; sym < codes; sym++)
-        count[lens[sym]]++;
-
-    /* bound code lengths, force root to be within code lengths */
-    root = *bits;
-    for (max = MAXBITS; max >= 1; max--)
-        if (count[max] != 0) break;
-    if (root > max) root = max;
-    if (max == 0) {                     /* no symbols to code at all */
-        here.op = (unsigned char)64;    /* invalid code marker */
-        here.bits = (unsigned char)1;
-        here.val = (unsigned short)0;
-        *(*table)++ = here;             /* make a table to force an error */
-        *(*table)++ = here;
-        *bits = 1;
-        return 0;     /* no symbols, but wait for decoding to report error */
-    }
-    for (min = 1; min < max; min++)
-        if (count[min] != 0) break;
-    if (root < min) root = min;
-
-    /* check for an over-subscribed or incomplete set of lengths */
-    left = 1;
-    for (len = 1; len <= MAXBITS; len++) {
-        left <<= 1;
-        left -= count[len];
-        if (left < 0) return -1;        /* over-subscribed */
-    }
-    if (left > 0 && (type == CODES || max != 1))
-        return -1;                      /* incomplete set */
-
-    /* generate offsets into symbol table for each length for sorting */
-    offs[1] = 0;
-    for (len = 1; len < MAXBITS; len++)
-        offs[len + 1] = offs[len] + count[len];
-
-    /* sort symbols by length, by symbol order within each length */
-    for (sym = 0; sym < codes; sym++)
-        if (lens[sym] != 0) work[offs[lens[sym]]++] = (unsigned short)sym;
-
-    /*
-       Create and fill in decoding tables.  In this loop, the table being
-       filled is at next and has curr index bits.  The code being used is huff
-       with length len.  That code is converted to an index by dropping drop
-       bits off of the bottom.  For codes where len is less than drop + curr,
-       those top drop + curr - len bits are incremented through all values to
-       fill the table with replicated entries.
-
-       root is the number of index bits for the root table.  When len exceeds
-       root, sub-tables are created pointed to by the root entry with an index
-       of the low root bits of huff.  This is saved in low to check for when a
-       new sub-table should be started.  drop is zero when the root table is
-       being filled, and drop is root when sub-tables are being filled.
-
-       When a new sub-table is needed, it is necessary to look ahead in the
-       code lengths to determine what size sub-table is needed.  The length
-       counts are used for this, and so count[] is decremented as codes are
-       entered in the tables.
-
-       used keeps track of how many table entries have been allocated from the
-       provided *table space.  It is checked for LENS and DIST tables against
-       the constants ENOUGH_LENS and ENOUGH_DISTS to guard against changes in
-       the initial root table size constants.  See the comments in inftrees.h
-       for more information.
-
-       sym increments through all symbols, and the loop terminates when
-       all codes of length max, i.e. all codes, have been processed.  This
-       routine permits incomplete codes, so another loop after this one fills
-       in the rest of the decoding tables with invalid code markers.
-     */
-
-    /* set up for code type */
-    switch (type) {
-    case CODES:
-        base = extra = work;    /* dummy value--not used */
-        end = 19;
-        break;
-    case LENS:
-        base = lbase;
-        base -= 257;
-        extra = lext;
-        extra -= 257;
-        end = 256;
-        break;
-    default:            /* DISTS */
-        base = dbase;
-        extra = dext;
-        end = -1;
-    }
-
-    /* initialize state for loop */
-    huff = 0;                   /* starting code */
-    sym = 0;                    /* starting code symbol */
-    len = min;                  /* starting code length */
-    next = *table;              /* current table to fill in */
-    curr = root;                /* current table index bits */
-    drop = 0;                   /* current bits to drop from code for index */
-    low = (unsigned)(-1);       /* trigger new sub-table when len > root */
-    used = 1U << root;          /* use root table entries */
-    mask = used - 1;            /* mask for comparing low */
-
-    /* check available table space */
-    if ((type == LENS && used >= ENOUGH_LENS) ||
-        (type == DISTS && used >= ENOUGH_DISTS))
-        return 1;
-
-    /* process all codes and make table entries */
-    for (;;) {
-        /* create table entry */
-        here.bits = (unsigned char)(len - drop);
-        if ((int)(work[sym]) < end) {
-            here.op = (unsigned char)0;
-            here.val = work[sym];
-        }
-        else if ((int)(work[sym]) > end) {
-            here.op = (unsigned char)(extra[work[sym]]);
-            here.val = base[work[sym]];
-        }
-        else {
-            here.op = (unsigned char)(32 + 64);         /* end of block */
-            here.val = 0;
-        }
-
-        /* replicate for those indices with low len bits equal to huff */
-        incr = 1U << (len - drop);
-        fill = 1U << curr;
-        min = fill;                 /* save offset to next table */
-        do {
-            fill -= incr;
-            next[(huff >> drop) + fill] = here;
-        } while (fill != 0);
-
-        /* backwards increment the len-bit code huff */
-        incr = 1U << (len - 1);
-        while (huff & incr)
-            incr >>= 1;
-        if (incr != 0) {
-            huff &= incr - 1;
-            huff += incr;
-        }
-        else
-            huff = 0;
-
-        /* go to next symbol, update count, len */
-        sym++;
-        if (--(count[len]) == 0) {
-            if (len == max) break;
-            len = lens[work[sym]];
-        }
-
-        /* create new sub-table if needed */
-        if (len > root && (huff & mask) != low) {
-            /* if first time, transition to sub-tables */
-            if (drop == 0)
-                drop = root;
-
-            /* increment past last table */
-            next += min;            /* here min is 1 << curr */
-
-            /* determine length of next table */
-            curr = len - drop;
-            left = (int)(1 << curr);
-            while (curr + drop < max) {
-                left -= count[curr + drop];
-                if (left <= 0) break;
-                curr++;
-                left <<= 1;
-            }
-
-            /* check for enough space */
-            used += 1U << curr;
-            if ((type == LENS && used >= ENOUGH_LENS) ||
-                (type == DISTS && used >= ENOUGH_DISTS))
-                return 1;
-
-            /* point entry in root table to sub-table */
-            low = huff & mask;
-            (*table)[low].op = (unsigned char)curr;
-            (*table)[low].bits = (unsigned char)root;
-            (*table)[low].val = (unsigned short)(next - *table);
-        }
-    }
-
-    /*
-       Fill in rest of table for incomplete codes.  This loop is similar to the
-       loop above in incrementing huff for table indices.  It is assumed that
-       len is equal to curr + drop, so there is no loop needed to increment
-       through high index bits.  When the current sub-table is filled, the loop
-       drops back to the root table to fill in any remaining entries there.
-     */
-    here.op = (unsigned char)64;                /* invalid code marker */
-    here.bits = (unsigned char)(len - drop);
-    here.val = (unsigned short)0;
-    while (huff != 0) {
-        /* when done with sub-table, drop back to root table */
-        if (drop != 0 && (huff & mask) != low) {
-            drop = 0;
-            len = root;
-            next = *table;
-            here.bits = (unsigned char)len;
-        }
-
-        /* put invalid code marker in table */
-        next[huff >> drop] = here;
-
-        /* backwards increment the len-bit code huff */
-        incr = 1U << (len - 1);
-        while (huff & incr)
-            incr >>= 1;
-        if (incr != 0) {
-            huff &= incr - 1;
-            huff += incr;
-        }
-        else
-            huff = 0;
-    }
-
-    /* set return parameters */
-    *table += used;
-    *bits = root;
-    return 0;
-}
diff --git a/src/other/zlib/inftrees.h b/src/other/zlib/inftrees.h
deleted file mode 100644
index baa53a0..0000000
--- a/src/other/zlib/inftrees.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/* inftrees.h -- header to use inftrees.c
- * Copyright (C) 1995-2005, 2010 Mark Adler
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
-   part of the implementation of the compression library and is
-   subject to change. Applications should only use zlib.h.
- */
-
-/* Structure for decoding tables.  Each entry provides either the
-   information needed to do the operation requested by the code that
-   indexed that table entry, or it provides a pointer to another
-   table that indexes more bits of the code.  op indicates whether
-   the entry is a pointer to another table, a literal, a length or
-   distance, an end-of-block, or an invalid code.  For a table
-   pointer, the low four bits of op is the number of index bits of
-   that table.  For a length or distance, the low four bits of op
-   is the number of extra bits to get after the code.  bits is
-   the number of bits in this code or part of the code to drop off
-   of the bit buffer.  val is the actual byte to output in the case
-   of a literal, the base length or distance, or the offset from
-   the current table to the next table.  Each entry is four bytes. */
-typedef struct {
-    unsigned char op;           /* operation, extra bits, table bits */
-    unsigned char bits;         /* bits in this part of the code */
-    unsigned short val;         /* offset in table or code value */
-} code;
-
-/* op values as set by inflate_table():
-    00000000 - literal
-    0000tttt - table link, tttt != 0 is the number of table index bits
-    0001eeee - length or distance, eeee is the number of extra bits
-    01100000 - end of block
-    01000000 - invalid code
- */
-
-/* Maximum size of the dynamic table.  The maximum number of code structures is
-   1444, which is the sum of 852 for literal/length codes and 592 for distance
-   codes.  These values were found by exhaustive searches using the program
-   examples/enough.c found in the zlib distribtution.  The arguments to that
-   program are the number of symbols, the initial root table size, and the
-   maximum bit length of a code.  "enough 286 9 15" for literal/length codes
-   returns returns 852, and "enough 30 6 15" for distance codes returns 592.
-   The initial root table size (9 or 6) is found in the fifth argument of the
-   inflate_table() calls in inflate.c and infback.c.  If the root table size is
-   changed, then these maximum sizes would be need to be recalculated and
-   updated. */
-#define ENOUGH_LENS 852
-#define ENOUGH_DISTS 592
-#define ENOUGH (ENOUGH_LENS+ENOUGH_DISTS)
-
-/* Type of code to build for inflate_table() */
-typedef enum {
-    CODES,
-    LENS,
-    DISTS
-} codetype;
-
-int ZLIB_INTERNAL inflate_table OF((codetype type, unsigned short FAR *lens,
-                             unsigned codes, code FAR * FAR *table,
-                             unsigned FAR *bits, unsigned short FAR *work));
diff --git a/src/other/zlib/trees.c b/src/other/zlib/trees.c
deleted file mode 100644
index fdec7e9..0000000
--- a/src/other/zlib/trees.c
+++ /dev/null
@@ -1,1244 +0,0 @@
-/* trees.c -- output deflated data using Huffman coding
- * Copyright (C) 1995-2010 Jean-loup Gailly
- * detect_data_type() function provided freely by Cosmin Truta, 2006
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/*
- *  ALGORITHM
- *
- *      The "deflation" process uses several Huffman trees. The more
- *      common source values are represented by shorter bit sequences.
- *
- *      Each code tree is stored in a compressed form which is itself
- * a Huffman encoding of the lengths of all the code strings (in
- * ascending order by source values).  The actual code strings are
- * reconstructed from the lengths in the inflate process, as described
- * in the deflate specification.
- *
- *  REFERENCES
- *
- *      Deutsch, L.P.,"'Deflate' Compressed Data Format Specification".
- *      Available in ftp.uu.net:/pub/archiving/zip/doc/deflate-1.1.doc
- *
- *      Storer, James A.
- *          Data Compression:  Methods and Theory, pp. 49-50.
- *          Computer Science Press, 1988.  ISBN 0-7167-8156-5.
- *
- *      Sedgewick, R.
- *          Algorithms, p290.
- *          Addison-Wesley, 1983. ISBN 0-201-06672-6.
- */
-
-/* @(#) $Id: trees.c 21114 2010-05-10 07:14:43Z dtremenak $ */
-
-/* #define GEN_TREES_H */
-
-#include "deflate.h"
-
-#ifdef DEBUG
-#  include <ctype.h>
-#endif
-
-/* ===========================================================================
- * Constants
- */
-
-#define MAX_BL_BITS 7
-/* Bit length codes must not exceed MAX_BL_BITS bits */
-
-#define END_BLOCK 256
-/* end of block literal code */
-
-#define REP_3_6      16
-/* repeat previous bit length 3-6 times (2 bits of repeat count) */
-
-#define REPZ_3_10    17
-/* repeat a zero length 3-10 times  (3 bits of repeat count) */
-
-#define REPZ_11_138  18
-/* repeat a zero length 11-138 times  (7 bits of repeat count) */
-
-local const int extra_lbits[LENGTH_CODES] /* extra bits for each length code */
-   = {0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0};
-
-local const int extra_dbits[D_CODES] /* extra bits for each distance code */
-   = {0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13};
-
-local const int extra_blbits[BL_CODES]/* extra bits for each bit length code */
-   = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7};
-
-local const uch bl_order[BL_CODES]
-   = {16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15};
-/* The lengths of the bit length codes are sent in order of decreasing
- * probability, to avoid transmitting the lengths for unused bit length codes.
- */
-
-#define Buf_size (8 * 2*sizeof(char))
-/* Number of bits used within bi_buf. (bi_buf might be implemented on
- * more than 16 bits on some systems.)
- */
-
-/* ===========================================================================
- * Local data. These are initialized only once.
- */
-
-#define DIST_CODE_LEN  512 /* see definition of array dist_code below */
-
-#if defined(GEN_TREES_H) || !defined(STDC)
-/* non ANSI compilers may not accept trees.h */
-
-local ct_data static_ltree[L_CODES+2];
-/* The static literal tree. Since the bit lengths are imposed, there is no
- * need for the L_CODES extra codes used during heap construction. However
- * The codes 286 and 287 are needed to build a canonical tree (see _tr_init
- * below).
- */
-
-local ct_data static_dtree[D_CODES];
-/* The static distance tree. (Actually a trivial tree since all codes use
- * 5 bits.)
- */
-
-uch _dist_code[DIST_CODE_LEN];
-/* Distance codes. The first 256 values correspond to the distances
- * 3 .. 258, the last 256 values correspond to the top 8 bits of
- * the 15 bit distances.
- */
-
-uch _length_code[MAX_MATCH-MIN_MATCH+1];
-/* length code for each normalized match length (0 == MIN_MATCH) */
-
-local int base_length[LENGTH_CODES];
-/* First normalized length for each code (0 = MIN_MATCH) */
-
-local int base_dist[D_CODES];
-/* First normalized distance for each code (0 = distance of 1) */
-
-#else
-#  include "trees.h"
-#endif /* GEN_TREES_H */
-
-struct static_tree_desc_s {
-    const ct_data *static_tree;  /* static tree or NULL */
-    const intf *extra_bits;      /* extra bits for each code or NULL */
-    int     extra_base;          /* base index for extra_bits */
-    int     elems;               /* max number of elements in the tree */
-    int     max_length;          /* max bit length for the codes */
-};
-
-local static_tree_desc  static_l_desc =
-{static_ltree, extra_lbits, LITERALS+1, L_CODES, MAX_BITS};
-
-local static_tree_desc  static_d_desc =
-{static_dtree, extra_dbits, 0,          D_CODES, MAX_BITS};
-
-local static_tree_desc  static_bl_desc =
-{(const ct_data *)0, extra_blbits, 0,   BL_CODES, MAX_BL_BITS};
-
-/* ===========================================================================
- * Local (static) routines in this file.
- */
-
-local void tr_static_init OF((void));
-local void init_block     OF((deflate_state *s));
-local void pqdownheap     OF((deflate_state *s, ct_data *tree, int k));
-local void gen_bitlen     OF((deflate_state *s, tree_desc *desc));
-local void gen_codes      OF((ct_data *tree, int max_code, ushf *bl_count));
-local void build_tree     OF((deflate_state *s, tree_desc *desc));
-local void scan_tree      OF((deflate_state *s, ct_data *tree, int max_code));
-local void send_tree      OF((deflate_state *s, ct_data *tree, int max_code));
-local int  build_bl_tree  OF((deflate_state *s));
-local void send_all_trees OF((deflate_state *s, int lcodes, int dcodes,
-                              int blcodes));
-local void compress_block OF((deflate_state *s, ct_data *ltree,
-                              ct_data *dtree));
-local int  detect_data_type OF((deflate_state *s));
-local unsigned bi_reverse OF((unsigned value, int length));
-local void bi_windup      OF((deflate_state *s));
-local void bi_flush       OF((deflate_state *s));
-local void copy_block     OF((deflate_state *s, charf *buf, unsigned len,
-                              int header));
-
-#ifdef GEN_TREES_H
-local void gen_trees_header OF((void));
-#endif
-
-#ifndef DEBUG
-#  define send_code(s, c, tree) send_bits(s, tree[c].Code, tree[c].Len)
-   /* Send a code of the given tree. c and tree must not have side effects */
-
-#else /* DEBUG */
-#  define send_code(s, c, tree) \
-     { if (z_verbose>2) fprintf(stderr,"\ncd %3d ",(c)); \
-       send_bits(s, tree[c].Code, tree[c].Len); }
-#endif
-
-/* ===========================================================================
- * Output a short LSB first on the stream.
- * IN assertion: there is enough room in pendingBuf.
- */
-#define put_short(s, w) { \
-    put_byte(s, (uch)((w) & 0xff)); \
-    put_byte(s, (uch)((ush)(w) >> 8)); \
-}
-
-/* ===========================================================================
- * Send a value on a given number of bits.
- * IN assertion: length <= 16 and value fits in length bits.
- */
-#ifdef DEBUG
-local void send_bits      OF((deflate_state *s, int value, int length));
-
-local void send_bits(s, value, length)
-    deflate_state *s;
-    int value;  /* value to send */
-    int length; /* number of bits */
-{
-    Tracevv((stderr," l %2d v %4x ", length, value));
-    Assert(length > 0 && length <= 15, "invalid length");
-    s->bits_sent += (ulg)length;
-
-    /* If not enough room in bi_buf, use (valid) bits from bi_buf and
-     * (16 - bi_valid) bits from value, leaving (width - (16-bi_valid))
-     * unused bits in value.
-     */
-    if (s->bi_valid > (int)Buf_size - length) {
-        s->bi_buf |= (ush)value << s->bi_valid;
-        put_short(s, s->bi_buf);
-        s->bi_buf = (ush)value >> (Buf_size - s->bi_valid);
-        s->bi_valid += length - Buf_size;
-    } else {
-        s->bi_buf |= (ush)value << s->bi_valid;
-        s->bi_valid += length;
-    }
-}
-#else /* !DEBUG */
-
-#define send_bits(s, value, length) \
-{ int len = length;\
-  if (s->bi_valid > (int)Buf_size - len) {\
-    int val = value;\
-    s->bi_buf |= (ush)val << s->bi_valid;\
-    put_short(s, s->bi_buf);\
-    s->bi_buf = (ush)val >> (Buf_size - s->bi_valid);\
-    s->bi_valid += len - Buf_size;\
-  } else {\
-    s->bi_buf |= (ush)(value) << s->bi_valid;\
-    s->bi_valid += len;\
-  }\
-}
-#endif /* DEBUG */
-
-
-/* the arguments must not have side effects */
-
-/* ===========================================================================
- * Initialize the various 'constant' tables.
- */
-local void tr_static_init()
-{
-#if defined(GEN_TREES_H) || !defined(STDC)
-    static int static_init_done = 0;
-    int n;        /* iterates over tree elements */
-    int bits;     /* bit counter */
-    int length;   /* length value */
-    int code;     /* code value */
-    int dist;     /* distance index */
-    ush bl_count[MAX_BITS+1];
-    /* number of codes at each bit length for an optimal tree */
-
-    if (static_init_done) return;
-
-    /* For some embedded targets, global variables are not initialized: */
-#ifdef NO_INIT_GLOBAL_POINTERS
-    static_l_desc.static_tree = static_ltree;
-    static_l_desc.extra_bits = extra_lbits;
-    static_d_desc.static_tree = static_dtree;
-    static_d_desc.extra_bits = extra_dbits;
-    static_bl_desc.extra_bits = extra_blbits;
-#endif
-
-    /* Initialize the mapping length (0..255) -> length code (0..28) */
-    length = 0;
-    for (code = 0; code < LENGTH_CODES-1; code++) {
-        base_length[code] = length;
-        for (n = 0; n < (1<<extra_lbits[code]); n++) {
-            _length_code[length++] = (uch)code;
-        }
-    }
-    Assert (length == 256, "tr_static_init: length != 256");
-    /* Note that the length 255 (match length 258) can be represented
-     * in two different ways: code 284 + 5 bits or code 285, so we
-     * overwrite length_code[255] to use the best encoding:
-     */
-    _length_code[length-1] = (uch)code;
-
-    /* Initialize the mapping dist (0..32K) -> dist code (0..29) */
-    dist = 0;
-    for (code = 0 ; code < 16; code++) {
-        base_dist[code] = dist;
-        for (n = 0; n < (1<<extra_dbits[code]); n++) {
-            _dist_code[dist++] = (uch)code;
-        }
-    }
-    Assert (dist == 256, "tr_static_init: dist != 256");
-    dist >>= 7; /* from now on, all distances are divided by 128 */
-    for ( ; code < D_CODES; code++) {
-        base_dist[code] = dist << 7;
-        for (n = 0; n < (1<<(extra_dbits[code]-7)); n++) {
-            _dist_code[256 + dist++] = (uch)code;
-        }
-    }
-    Assert (dist == 256, "tr_static_init: 256+dist != 512");
-
-    /* Construct the codes of the static literal tree */
-    for (bits = 0; bits <= MAX_BITS; bits++) bl_count[bits] = 0;
-    n = 0;
-    while (n <= 143) static_ltree[n++].Len = 8, bl_count[8]++;
-    while (n <= 255) static_ltree[n++].Len = 9, bl_count[9]++;
-    while (n <= 279) static_ltree[n++].Len = 7, bl_count[7]++;
-    while (n <= 287) static_ltree[n++].Len = 8, bl_count[8]++;
-    /* Codes 286 and 287 do not exist, but we must include them in the
-     * tree construction to get a canonical Huffman tree (longest code
-     * all ones)
-     */
-    gen_codes((ct_data *)static_ltree, L_CODES+1, bl_count);
-
-    /* The static distance tree is trivial: */
-    for (n = 0; n < D_CODES; n++) {
-        static_dtree[n].Len = 5;
-        static_dtree[n].Code = bi_reverse((unsigned)n, 5);
-    }
-    static_init_done = 1;
-
-#  ifdef GEN_TREES_H
-    gen_trees_header();
-#  endif
-#endif /* defined(GEN_TREES_H) || !defined(STDC) */
-}
-
-/* ===========================================================================
- * Genererate the file trees.h describing the static trees.
- */
-#ifdef GEN_TREES_H
-#  ifndef DEBUG
-#    include <stdio.h>
-#  endif
-
-#  define SEPARATOR(i, last, width) \
-      ((i) == (last)? "\n};\n\n" :    \
-       ((i) % (width) == (width)-1 ? ",\n" : ", "))
-
-void gen_trees_header()
-{
-    FILE *header = fopen("trees.h", "w");
-    int i;
-
-    Assert (header != NULL, "Can't open trees.h");
-    fprintf(header,
-            "/* header created automatically with -DGEN_TREES_H */\n\n");
-
-    fprintf(header, "local const ct_data static_ltree[L_CODES+2] = {\n");
-    for (i = 0; i < L_CODES+2; i++) {
-        fprintf(header, "{{%3u},{%3u}}%s", static_ltree[i].Code,
-                static_ltree[i].Len, SEPARATOR(i, L_CODES+1, 5));
-    }
-
-    fprintf(header, "local const ct_data static_dtree[D_CODES] = {\n");
-    for (i = 0; i < D_CODES; i++) {
-        fprintf(header, "{{%2u},{%2u}}%s", static_dtree[i].Code,
-                static_dtree[i].Len, SEPARATOR(i, D_CODES-1, 5));
-    }
-
-    fprintf(header, "const uch ZLIB_INTERNAL _dist_code[DIST_CODE_LEN] = {\n");
-    for (i = 0; i < DIST_CODE_LEN; i++) {
-        fprintf(header, "%2u%s", _dist_code[i],
-                SEPARATOR(i, DIST_CODE_LEN-1, 20));
-    }
-
-    fprintf(header,
-        "const uch ZLIB_INTERNAL _length_code[MAX_MATCH-MIN_MATCH+1]= {\n");
-    for (i = 0; i < MAX_MATCH-MIN_MATCH+1; i++) {
-        fprintf(header, "%2u%s", _length_code[i],
-                SEPARATOR(i, MAX_MATCH-MIN_MATCH, 20));
-    }
-
-    fprintf(header, "local const int base_length[LENGTH_CODES] = {\n");
-    for (i = 0; i < LENGTH_CODES; i++) {
-        fprintf(header, "%1u%s", base_length[i],
-                SEPARATOR(i, LENGTH_CODES-1, 20));
-    }
-
-    fprintf(header, "local const int base_dist[D_CODES] = {\n");
-    for (i = 0; i < D_CODES; i++) {
-        fprintf(header, "%5u%s", base_dist[i],
-                SEPARATOR(i, D_CODES-1, 10));
-    }
-
-    fclose(header);
-}
-#endif /* GEN_TREES_H */
-
-/* ===========================================================================
- * Initialize the tree data structures for a new zlib stream.
- */
-void ZLIB_INTERNAL _tr_init(s)
-    deflate_state *s;
-{
-    tr_static_init();
-
-    s->l_desc.dyn_tree = s->dyn_ltree;
-    s->l_desc.stat_desc = &static_l_desc;
-
-    s->d_desc.dyn_tree = s->dyn_dtree;
-    s->d_desc.stat_desc = &static_d_desc;
-
-    s->bl_desc.dyn_tree = s->bl_tree;
-    s->bl_desc.stat_desc = &static_bl_desc;
-
-    s->bi_buf = 0;
-    s->bi_valid = 0;
-    s->last_eob_len = 8; /* enough lookahead for inflate */
-#ifdef DEBUG
-    s->compressed_len = 0L;
-    s->bits_sent = 0L;
-#endif
-
-    /* Initialize the first block of the first file: */
-    init_block(s);
-}
-
-/* ===========================================================================
- * Initialize a new block.
- */
-local void init_block(s)
-    deflate_state *s;
-{
-    int n; /* iterates over tree elements */
-
-    /* Initialize the trees. */
-    for (n = 0; n < L_CODES;  n++) s->dyn_ltree[n].Freq = 0;
-    for (n = 0; n < D_CODES;  n++) s->dyn_dtree[n].Freq = 0;
-    for (n = 0; n < BL_CODES; n++) s->bl_tree[n].Freq = 0;
-
-    s->dyn_ltree[END_BLOCK].Freq = 1;
-    s->opt_len = s->static_len = 0L;
-    s->last_lit = s->matches = 0;
-}
-
-#define SMALLEST 1
-/* Index within the heap array of least frequent node in the Huffman tree */
-
-
-/* ===========================================================================
- * Remove the smallest element from the heap and recreate the heap with
- * one less element. Updates heap and heap_len.
- */
-#define pqremove(s, tree, top) \
-{\
-    top = s->heap[SMALLEST]; \
-    s->heap[SMALLEST] = s->heap[s->heap_len--]; \
-    pqdownheap(s, tree, SMALLEST); \
-}
-
-/* ===========================================================================
- * Compares to subtrees, using the tree depth as tie breaker when
- * the subtrees have equal frequency. This minimizes the worst case length.
- */
-#define smaller(tree, n, m, depth) \
-   (tree[n].Freq < tree[m].Freq || \
-   (tree[n].Freq == tree[m].Freq && depth[n] <= depth[m]))
-
-/* ===========================================================================
- * Restore the heap property by moving down the tree starting at node k,
- * exchanging a node with the smallest of its two sons if necessary, stopping
- * when the heap property is re-established (each father smaller than its
- * two sons).
- */
-local void pqdownheap(s, tree, k)
-    deflate_state *s;
-    ct_data *tree;  /* the tree to restore */
-    int k;               /* node to move down */
-{
-    int v = s->heap[k];
-    int j = k << 1;  /* left son of k */
-    while (j <= s->heap_len) {
-        /* Set j to the smallest of the two sons: */
-        if (j < s->heap_len &&
-            smaller(tree, s->heap[j+1], s->heap[j], s->depth)) {
-            j++;
-        }
-        /* Exit if v is smaller than both sons */
-        if (smaller(tree, v, s->heap[j], s->depth)) break;
-
-        /* Exchange v with the smallest son */
-        s->heap[k] = s->heap[j];  k = j;
-
-        /* And continue down the tree, setting j to the left son of k */
-        j <<= 1;
-    }
-    s->heap[k] = v;
-}
-
-/* ===========================================================================
- * Compute the optimal bit lengths for a tree and update the total bit length
- * for the current block.
- * IN assertion: the fields freq and dad are set, heap[heap_max] and
- *    above are the tree nodes sorted by increasing frequency.
- * OUT assertions: the field len is set to the optimal bit length, the
- *     array bl_count contains the frequencies for each bit length.
- *     The length opt_len is updated; static_len is also updated if stree is
- *     not null.
- */
-local void gen_bitlen(s, desc)
-    deflate_state *s;
-    tree_desc *desc;    /* the tree descriptor */
-{
-    ct_data *tree        = desc->dyn_tree;
-    int max_code         = desc->max_code;
-    const ct_data *stree = desc->stat_desc->static_tree;
-    const intf *extra    = desc->stat_desc->extra_bits;
-    int base             = desc->stat_desc->extra_base;
-    int max_length       = desc->stat_desc->max_length;
-    int h;              /* heap index */
-    int n, m;           /* iterate over the tree elements */
-    int bits;           /* bit length */
-    int xbits;          /* extra bits */
-    ush f;              /* frequency */
-    int overflow = 0;   /* number of elements with bit length too large */
-
-    for (bits = 0; bits <= MAX_BITS; bits++) s->bl_count[bits] = 0;
-
-    /* In a first pass, compute the optimal bit lengths (which may
-     * overflow in the case of the bit length tree).
-     */
-    tree[s->heap[s->heap_max]].Len = 0; /* root of the heap */
-
-    for (h = s->heap_max+1; h < HEAP_SIZE; h++) {
-        n = s->heap[h];
-        bits = tree[tree[n].Dad].Len + 1;
-        if (bits > max_length) bits = max_length, overflow++;
-        tree[n].Len = (ush)bits;
-        /* We overwrite tree[n].Dad which is no longer needed */
-
-        if (n > max_code) continue; /* not a leaf node */
-
-        s->bl_count[bits]++;
-        xbits = 0;
-        if (n >= base) xbits = extra[n-base];
-        f = tree[n].Freq;
-        s->opt_len += (ulg)f * (bits + xbits);
-        if (stree) s->static_len += (ulg)f * (stree[n].Len + xbits);
-    }
-    if (overflow == 0) return;
-
-    Trace((stderr,"\nbit length overflow\n"));
-    /* This happens for example on obj2 and pic of the Calgary corpus */
-
-    /* Find the first bit length which could increase: */
-    do {
-        bits = max_length-1;
-        while (s->bl_count[bits] == 0) bits--;
-        s->bl_count[bits]--;      /* move one leaf down the tree */
-        s->bl_count[bits+1] += 2; /* move one overflow item as its brother */
-        s->bl_count[max_length]--;
-        /* The brother of the overflow item also moves one step up,
-         * but this does not affect bl_count[max_length]
-         */
-        overflow -= 2;
-    } while (overflow > 0);
-
-    /* Now recompute all bit lengths, scanning in increasing frequency.
-     * h is still equal to HEAP_SIZE. (It is simpler to reconstruct all
-     * lengths instead of fixing only the wrong ones. This idea is taken
-     * from 'ar' written by Haruhiko Okumura.)
-     */
-    for (bits = max_length; bits != 0; bits--) {
-        n = s->bl_count[bits];
-        while (n != 0) {
-            m = s->heap[--h];
-            if (m > max_code) continue;
-            if ((unsigned) tree[m].Len != (unsigned) bits) {
-                Trace((stderr,"code %d bits %d->%d\n", m, tree[m].Len, bits));
-                s->opt_len += ((long)bits - (long)tree[m].Len)
-                              *(long)tree[m].Freq;
-                tree[m].Len = (ush)bits;
-            }
-            n--;
-        }
-    }
-}
-
-/* ===========================================================================
- * Generate the codes for a given tree and bit counts (which need not be
- * optimal).
- * IN assertion: the array bl_count contains the bit length statistics for
- * the given tree and the field len is set for all tree elements.
- * OUT assertion: the field code is set for all tree elements of non
- *     zero code length.
- */
-local void gen_codes (tree, max_code, bl_count)
-    ct_data *tree;             /* the tree to decorate */
-    int max_code;              /* largest code with non zero frequency */
-    ushf *bl_count;            /* number of codes at each bit length */
-{
-    ush next_code[MAX_BITS+1]; /* next code value for each bit length */
-    ush code = 0;              /* running code value */
-    int bits;                  /* bit index */
-    int n;                     /* code index */
-
-    /* The distribution counts are first used to generate the code values
-     * without bit reversal.
-     */
-    for (bits = 1; bits <= MAX_BITS; bits++) {
-        next_code[bits] = code = (code + bl_count[bits-1]) << 1;
-    }
-    /* Check that the bit counts in bl_count are consistent. The last code
-     * must be all ones.
-     */
-    Assert (code + bl_count[MAX_BITS]-1 == (1<<MAX_BITS)-1,
-            "inconsistent bit counts");
-    Tracev((stderr,"\ngen_codes: max_code %d ", max_code));
-
-    for (n = 0;  n <= max_code; n++) {
-        int len = tree[n].Len;
-        if (len == 0) continue;
-        /* Now reverse the bits */
-        tree[n].Code = bi_reverse(next_code[len]++, len);
-
-        Tracecv(tree != static_ltree, (stderr,"\nn %3d %c l %2d c %4x (%x) ",
-             n, (isgraph(n) ? n : ' '), len, tree[n].Code, next_code[len]-1));
-    }
-}
-
-/* ===========================================================================
- * Construct one Huffman tree and assigns the code bit strings and lengths.
- * Update the total bit length for the current block.
- * IN assertion: the field freq is set for all tree elements.
- * OUT assertions: the fields len and code are set to the optimal bit length
- *     and corresponding code. The length opt_len is updated; static_len is
- *     also updated if stree is not null. The field max_code is set.
- */
-local void build_tree(s, desc)
-    deflate_state *s;
-    tree_desc *desc; /* the tree descriptor */
-{
-    ct_data *tree         = desc->dyn_tree;
-    const ct_data *stree  = desc->stat_desc->static_tree;
-    int elems             = desc->stat_desc->elems;
-    int n, m;          /* iterate over heap elements */
-    int max_code = -1; /* largest code with non zero frequency */
-    int node;          /* new node being created */
-
-    /* Construct the initial heap, with least frequent element in
-     * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n+1].
-     * heap[0] is not used.
-     */
-    s->heap_len = 0, s->heap_max = HEAP_SIZE;
-
-    for (n = 0; n < elems; n++) {
-        if (tree[n].Freq != 0) {
-            s->heap[++(s->heap_len)] = max_code = n;
-            s->depth[n] = 0;
-        } else {
-            tree[n].Len = 0;
-        }
-    }
-
-    /* The pkzip format requires that at least one distance code exists,
-     * and that at least one bit should be sent even if there is only one
-     * possible code. So to avoid special checks later on we force at least
-     * two codes of non zero frequency.
-     */
-    while (s->heap_len < 2) {
-        node = s->heap[++(s->heap_len)] = (max_code < 2 ? ++max_code : 0);
-        tree[node].Freq = 1;
-        s->depth[node] = 0;
-        s->opt_len--; if (stree) s->static_len -= stree[node].Len;
-        /* node is 0 or 1 so it does not have extra bits */
-    }
-    desc->max_code = max_code;
-
-    /* The elements heap[heap_len/2+1 .. heap_len] are leaves of the tree,
-     * establish sub-heaps of increasing lengths:
-     */
-    for (n = s->heap_len/2; n >= 1; n--) pqdownheap(s, tree, n);
-
-    /* Construct the Huffman tree by repeatedly combining the least two
-     * frequent nodes.
-     */
-    node = elems;              /* next internal node of the tree */
-    do {
-        pqremove(s, tree, n);  /* n = node of least frequency */
-        m = s->heap[SMALLEST]; /* m = node of next least frequency */
-
-        s->heap[--(s->heap_max)] = n; /* keep the nodes sorted by frequency */
-        s->heap[--(s->heap_max)] = m;
-
-        /* Create a new node father of n and m */
-        tree[node].Freq = tree[n].Freq + tree[m].Freq;
-        s->depth[node] = (uch)((s->depth[n] >= s->depth[m] ?
-                                s->depth[n] : s->depth[m]) + 1);
-        tree[n].Dad = tree[m].Dad = (ush)node;
-#ifdef DUMP_BL_TREE
-        if (tree == s->bl_tree) {
-            fprintf(stderr,"\nnode %d(%d), sons %d(%d) %d(%d)",
-                    node, tree[node].Freq, n, tree[n].Freq, m, tree[m].Freq);
-        }
-#endif
-        /* and insert the new node in the heap */
-        s->heap[SMALLEST] = node++;
-        pqdownheap(s, tree, SMALLEST);
-
-    } while (s->heap_len >= 2);
-
-    s->heap[--(s->heap_max)] = s->heap[SMALLEST];
-
-    /* At this point, the fields freq and dad are set. We can now
-     * generate the bit lengths.
-     */
-    gen_bitlen(s, (tree_desc *)desc);
-
-    /* The field len is now set, we can generate the bit codes */
-    gen_codes ((ct_data *)tree, max_code, s->bl_count);
-}
-
-/* ===========================================================================
- * Scan a literal or distance tree to determine the frequencies of the codes
- * in the bit length tree.
- */
-local void scan_tree (s, tree, max_code)
-    deflate_state *s;
-    ct_data *tree;   /* the tree to be scanned */
-    int max_code;    /* and its largest code of non zero frequency */
-{
-    int n;                     /* iterates over all tree elements */
-    int prevlen = -1;          /* last emitted length */
-    int curlen;                /* length of current code */
-    int nextlen = tree[0].Len; /* length of next code */
-    int count = 0;             /* repeat count of the current code */
-    int max_count = 7;         /* max repeat count */
-    int min_count = 4;         /* min repeat count */
-
-    if (nextlen == 0) max_count = 138, min_count = 3;
-    tree[max_code+1].Len = (ush)0xffff; /* guard */
-
-    for (n = 0; n <= max_code; n++) {
-        curlen = nextlen; nextlen = tree[n+1].Len;
-        if (++count < max_count && curlen == nextlen) {
-            continue;
-        } else if (count < min_count) {
-            s->bl_tree[curlen].Freq += count;
-        } else if (curlen != 0) {
-            if (curlen != prevlen) s->bl_tree[curlen].Freq++;
-            s->bl_tree[REP_3_6].Freq++;
-        } else if (count <= 10) {
-            s->bl_tree[REPZ_3_10].Freq++;
-        } else {
-            s->bl_tree[REPZ_11_138].Freq++;
-        }
-        count = 0; prevlen = curlen;
-        if (nextlen == 0) {
-            max_count = 138, min_count = 3;
-        } else if (curlen == nextlen) {
-            max_count = 6, min_count = 3;
-        } else {
-            max_count = 7, min_count = 4;
-        }
-    }
-}
-
-/* ===========================================================================
- * Send a literal or distance tree in compressed form, using the codes in
- * bl_tree.
- */
-local void send_tree (s, tree, max_code)
-    deflate_state *s;
-    ct_data *tree; /* the tree to be scanned */
-    int max_code;       /* and its largest code of non zero frequency */
-{
-    int n;                     /* iterates over all tree elements */
-    int prevlen = -1;          /* last emitted length */
-    int curlen;                /* length of current code */
-    int nextlen = tree[0].Len; /* length of next code */
-    int count = 0;             /* repeat count of the current code */
-    int max_count = 7;         /* max repeat count */
-    int min_count = 4;         /* min repeat count */
-
-    /* tree[max_code+1].Len = -1; */  /* guard already set */
-    if (nextlen == 0) max_count = 138, min_count = 3;
-
-    for (n = 0; n <= max_code; n++) {
-        curlen = nextlen; nextlen = tree[n+1].Len;
-        if (++count < max_count && curlen == nextlen) {
-            continue;
-        } else if (count < min_count) {
-            do { send_code(s, curlen, s->bl_tree); } while (--count != 0);
-
-        } else if (curlen != 0) {
-            if (curlen != prevlen) {
-                send_code(s, curlen, s->bl_tree); count--;
-            }
-            Assert(count >= 3 && count <= 6, " 3_6?");
-            send_code(s, REP_3_6, s->bl_tree); send_bits(s, count-3, 2);
-
-        } else if (count <= 10) {
-            send_code(s, REPZ_3_10, s->bl_tree); send_bits(s, count-3, 3);
-
-        } else {
-            send_code(s, REPZ_11_138, s->bl_tree); send_bits(s, count-11, 7);
-        }
-        count = 0; prevlen = curlen;
-        if (nextlen == 0) {
-            max_count = 138, min_count = 3;
-        } else if (curlen == nextlen) {
-            max_count = 6, min_count = 3;
-        } else {
-            max_count = 7, min_count = 4;
-        }
-    }
-}
-
-/* ===========================================================================
- * Construct the Huffman tree for the bit lengths and return the index in
- * bl_order of the last bit length code to send.
- */
-local int build_bl_tree(s)
-    deflate_state *s;
-{
-    int max_blindex;  /* index of last bit length code of non zero freq */
-
-    /* Determine the bit length frequencies for literal and distance trees */
-    scan_tree(s, (ct_data *)s->dyn_ltree, s->l_desc.max_code);
-    scan_tree(s, (ct_data *)s->dyn_dtree, s->d_desc.max_code);
-
-    /* Build the bit length tree: */
-    build_tree(s, (tree_desc *)(&(s->bl_desc)));
-    /* opt_len now includes the length of the tree representations, except
-     * the lengths of the bit lengths codes and the 5+5+4 bits for the counts.
-     */
-
-    /* Determine the number of bit length codes to send. The pkzip format
-     * requires that at least 4 bit length codes be sent. (appnote.txt says
-     * 3 but the actual value used is 4.)
-     */
-    for (max_blindex = BL_CODES-1; max_blindex >= 3; max_blindex--) {
-        if (s->bl_tree[bl_order[max_blindex]].Len != 0) break;
-    }
-    /* Update opt_len to include the bit length tree and counts */
-    s->opt_len += 3*(max_blindex+1) + 5+5+4;
-    Tracev((stderr, "\ndyn trees: dyn %ld, stat %ld",
-            s->opt_len, s->static_len));
-
-    return max_blindex;
-}
-
-/* ===========================================================================
- * Send the header for a block using dynamic Huffman trees: the counts, the
- * lengths of the bit length codes, the literal tree and the distance tree.
- * IN assertion: lcodes >= 257, dcodes >= 1, blcodes >= 4.
- */
-local void send_all_trees(s, lcodes, dcodes, blcodes)
-    deflate_state *s;
-    int lcodes, dcodes, blcodes; /* number of codes for each tree */
-{
-    int rank;                    /* index in bl_order */
-
-    Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, "not enough codes");
-    Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES,
-            "too many codes");
-    Tracev((stderr, "\nbl counts: "));
-    send_bits(s, lcodes-257, 5); /* not +255 as stated in appnote.txt */
-    send_bits(s, dcodes-1,   5);
-    send_bits(s, blcodes-4,  4); /* not -3 as stated in appnote.txt */
-    for (rank = 0; rank < blcodes; rank++) {
-        Tracev((stderr, "\nbl code %2d ", bl_order[rank]));
-        send_bits(s, s->bl_tree[bl_order[rank]].Len, 3);
-    }
-    Tracev((stderr, "\nbl tree: sent %ld", s->bits_sent));
-
-    send_tree(s, (ct_data *)s->dyn_ltree, lcodes-1); /* literal tree */
-    Tracev((stderr, "\nlit tree: sent %ld", s->bits_sent));
-
-    send_tree(s, (ct_data *)s->dyn_dtree, dcodes-1); /* distance tree */
-    Tracev((stderr, "\ndist tree: sent %ld", s->bits_sent));
-}
-
-/* ===========================================================================
- * Send a stored block
- */
-void ZLIB_INTERNAL _tr_stored_block(s, buf, stored_len, last)
-    deflate_state *s;
-    charf *buf;       /* input block */
-    ulg stored_len;   /* length of input block */
-    int last;         /* one if this is the last block for a file */
-{
-    send_bits(s, (STORED_BLOCK<<1)+last, 3);    /* send block type */
-#ifdef DEBUG
-    s->compressed_len = (s->compressed_len + 3 + 7) & (ulg)~7L;
-    s->compressed_len += (stored_len + 4) << 3;
-#endif
-    copy_block(s, buf, (unsigned)stored_len, 1); /* with header */
-}
-
-/* ===========================================================================
- * Send one empty static block to give enough lookahead for inflate.
- * This takes 10 bits, of which 7 may remain in the bit buffer.
- * The current inflate code requires 9 bits of lookahead. If the
- * last two codes for the previous block (real code plus EOB) were coded
- * on 5 bits or less, inflate may have only 5+3 bits of lookahead to decode
- * the last real code. In this case we send two empty static blocks instead
- * of one. (There are no problems if the previous block is stored or fixed.)
- * To simplify the code, we assume the worst case of last real code encoded
- * on one bit only.
- */
-void ZLIB_INTERNAL _tr_align(s)
-    deflate_state *s;
-{
-    send_bits(s, STATIC_TREES<<1, 3);
-    send_code(s, END_BLOCK, static_ltree);
-#ifdef DEBUG
-    s->compressed_len += 10L; /* 3 for block type, 7 for EOB */
-#endif
-    bi_flush(s);
-    /* Of the 10 bits for the empty block, we have already sent
-     * (10 - bi_valid) bits. The lookahead for the last real code (before
-     * the EOB of the previous block) was thus at least one plus the length
-     * of the EOB plus what we have just sent of the empty static block.
-     */
-    if (1 + s->last_eob_len + 10 - s->bi_valid < 9) {
-        send_bits(s, STATIC_TREES<<1, 3);
-        send_code(s, END_BLOCK, static_ltree);
-#ifdef DEBUG
-        s->compressed_len += 10L;
-#endif
-        bi_flush(s);
-    }
-    s->last_eob_len = 7;
-}
-
-/* ===========================================================================
- * Determine the best encoding for the current block: dynamic trees, static
- * trees or store, and output the encoded block to the zip file.
- */
-void ZLIB_INTERNAL _tr_flush_block(s, buf, stored_len, last)
-    deflate_state *s;
-    charf *buf;       /* input block, or NULL if too old */
-    ulg stored_len;   /* length of input block */
-    int last;         /* one if this is the last block for a file */
-{
-    ulg opt_lenb, static_lenb; /* opt_len and static_len in bytes */
-    int max_blindex = 0;  /* index of last bit length code of non zero freq */
-
-    /* Build the Huffman trees unless a stored block is forced */
-    if (s->level > 0) {
-
-        /* Check if the file is binary or text */
-        if (s->strm->data_type == Z_UNKNOWN)
-            s->strm->data_type = detect_data_type(s);
-
-        /* Construct the literal and distance trees */
-        build_tree(s, (tree_desc *)(&(s->l_desc)));
-        Tracev((stderr, "\nlit data: dyn %ld, stat %ld", s->opt_len,
-                s->static_len));
-
-        build_tree(s, (tree_desc *)(&(s->d_desc)));
-        Tracev((stderr, "\ndist data: dyn %ld, stat %ld", s->opt_len,
-                s->static_len));
-        /* At this point, opt_len and static_len are the total bit lengths of
-         * the compressed block data, excluding the tree representations.
-         */
-
-        /* Build the bit length tree for the above two trees, and get the index
-         * in bl_order of the last bit length code to send.
-         */
-        max_blindex = build_bl_tree(s);
-
-        /* Determine the best encoding. Compute the block lengths in bytes. */
-        opt_lenb = (s->opt_len+3+7)>>3;
-        static_lenb = (s->static_len+3+7)>>3;
-
-        Tracev((stderr, "\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u ",
-                opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len,
-                s->last_lit));
-
-        if (static_lenb <= opt_lenb) opt_lenb = static_lenb;
-
-    } else {
-        Assert(buf != (char*)0, "lost buf");
-        opt_lenb = static_lenb = stored_len + 5; /* force a stored block */
-    }
-
-#ifdef FORCE_STORED
-    if (buf != (char*)0) { /* force stored block */
-#else
-    if (stored_len+4 <= opt_lenb && buf != (char*)0) {
-                       /* 4: two words for the lengths */
-#endif
-        /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE.
-         * Otherwise we can't have processed more than WSIZE input bytes since
-         * the last block flush, because compression would have been
-         * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to
-         * transform a block into a stored block.
-         */
-        _tr_stored_block(s, buf, stored_len, last);
-
-#ifdef FORCE_STATIC
-    } else if (static_lenb >= 0) { /* force static trees */
-#else
-    } else if (s->strategy == Z_FIXED || static_lenb == opt_lenb) {
-#endif
-        send_bits(s, (STATIC_TREES<<1)+last, 3);
-        compress_block(s, (ct_data *)static_ltree, (ct_data *)static_dtree);
-#ifdef DEBUG
-        s->compressed_len += 3 + s->static_len;
-#endif
-    } else {
-        send_bits(s, (DYN_TREES<<1)+last, 3);
-        send_all_trees(s, s->l_desc.max_code+1, s->d_desc.max_code+1,
-                       max_blindex+1);
-        compress_block(s, (ct_data *)s->dyn_ltree, (ct_data *)s->dyn_dtree);
-#ifdef DEBUG
-        s->compressed_len += 3 + s->opt_len;
-#endif
-    }
-    Assert (s->compressed_len == s->bits_sent, "bad compressed size");
-    /* The above check is made mod 2^32, for files larger than 512 MB
-     * and uLong implemented on 32 bits.
-     */
-    init_block(s);
-
-    if (last) {
-        bi_windup(s);
-#ifdef DEBUG
-        s->compressed_len += 7;  /* align on byte boundary */
-#endif
-    }
-    Tracev((stderr,"\ncomprlen %lu(%lu) ", s->compressed_len>>3,
-           s->compressed_len-7*last));
-}
-
-/* ===========================================================================
- * Save the match info and tally the frequency counts. Return true if
- * the current block must be flushed.
- */
-int ZLIB_INTERNAL _tr_tally (s, dist, lc)
-    deflate_state *s;
-    unsigned dist;  /* distance of matched string */
-    unsigned lc;    /* match length-MIN_MATCH or unmatched char (if dist==0) */
-{
-    s->d_buf[s->last_lit] = (ush)dist;
-    s->l_buf[s->last_lit++] = (uch)lc;
-    if (dist == 0) {
-        /* lc is the unmatched char */
-        s->dyn_ltree[lc].Freq++;
-    } else {
-        s->matches++;
-        /* Here, lc is the match length - MIN_MATCH */
-        dist--;             /* dist = match distance - 1 */
-        Assert((ush)dist < (ush)MAX_DIST(s) &&
-               (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) &&
-               (ush)d_code(dist) < (ush)D_CODES,  "_tr_tally: bad match");
-
-        s->dyn_ltree[_length_code[lc]+LITERALS+1].Freq++;
-        s->dyn_dtree[d_code(dist)].Freq++;
-    }
-
-#ifdef TRUNCATE_BLOCK
-    /* Try to guess if it is profitable to stop the current block here */
-    if ((s->last_lit & 0x1fff) == 0 && s->level > 2) {
-        /* Compute an upper bound for the compressed length */
-        ulg out_length = (ulg)s->last_lit*8L;
-        ulg in_length = (ulg)((long)s->strstart - s->block_start);
-        int dcode;
-        for (dcode = 0; dcode < D_CODES; dcode++) {
-            out_length += (ulg)s->dyn_dtree[dcode].Freq *
-                (5L+extra_dbits[dcode]);
-        }
-        out_length >>= 3;
-        Tracev((stderr,"\nlast_lit %u, in %ld, out ~%ld(%ld%%) ",
-               s->last_lit, in_length, out_length,
-               100L - out_length*100L/in_length));
-        if (s->matches < s->last_lit/2 && out_length < in_length/2) return 1;
-    }
-#endif
-    return (s->last_lit == s->lit_bufsize-1);
-    /* We avoid equality with lit_bufsize because of wraparound at 64K
-     * on 16 bit machines and because stored blocks are restricted to
-     * 64K-1 bytes.
-     */
-}
-
-/* ===========================================================================
- * Send the block data compressed using the given Huffman trees
- */
-local void compress_block(s, ltree, dtree)
-    deflate_state *s;
-    ct_data *ltree; /* literal tree */
-    ct_data *dtree; /* distance tree */
-{
-    unsigned dist;      /* distance of matched string */
-    int lc;             /* match length or unmatched char (if dist == 0) */
-    unsigned lx = 0;    /* running index in l_buf */
-    unsigned code;      /* the code to send */
-    int extra;          /* number of extra bits to send */
-
-    if (s->last_lit != 0) do {
-        dist = s->d_buf[lx];
-        lc = s->l_buf[lx++];
-        if (dist == 0) {
-            send_code(s, lc, ltree); /* send a literal byte */
-            Tracecv(isgraph(lc), (stderr," '%c' ", lc));
-        } else {
-            /* Here, lc is the match length - MIN_MATCH */
-            code = _length_code[lc];
-            send_code(s, code+LITERALS+1, ltree); /* send the length code */
-            extra = extra_lbits[code];
-            if (extra != 0) {
-                lc -= base_length[code];
-                send_bits(s, lc, extra);       /* send the extra length bits */
-            }
-            dist--; /* dist is now the match distance - 1 */
-            code = d_code(dist);
-            Assert (code < D_CODES, "bad d_code");
-
-            send_code(s, code, dtree);       /* send the distance code */
-            extra = extra_dbits[code];
-            if (extra != 0) {
-                dist -= base_dist[code];
-                send_bits(s, dist, extra);   /* send the extra distance bits */
-            }
-        } /* literal or match pair ? */
-
-        /* Check that the overlay between pending_buf and d_buf+l_buf is ok: */
-        Assert((uInt)(s->pending) < s->lit_bufsize + 2*lx,
-               "pendingBuf overflow");
-
-    } while (lx < s->last_lit);
-
-    send_code(s, END_BLOCK, ltree);
-    s->last_eob_len = ltree[END_BLOCK].Len;
-}
-
-/* ===========================================================================
- * Check if the data type is TEXT or BINARY, using the following algorithm:
- * - TEXT if the two conditions below are satisfied:
- *    a) There are no non-portable control characters belonging to the
- *       "black list" (0..6, 14..25, 28..31).
- *    b) There is at least one printable character belonging to the
- *       "white list" (9 {TAB}, 10 {LF}, 13 {CR}, 32..255).
- * - BINARY otherwise.
- * - The following partially-portable control characters form a
- *   "gray list" that is ignored in this detection algorithm:
- *   (7 {BEL}, 8 {BS}, 11 {VT}, 12 {FF}, 26 {SUB}, 27 {ESC}).
- * IN assertion: the fields Freq of dyn_ltree are set.
- */
-local int detect_data_type(s)
-    deflate_state *s;
-{
-    /* black_mask is the bit mask of black-listed bytes
-     * set bits 0..6, 14..25, and 28..31
-     * 0xf3ffc07f = binary 11110011111111111100000001111111
-     */
-    unsigned long black_mask = 0xf3ffc07fUL;
-    int n;
-
-    /* Check for non-textual ("black-listed") bytes. */
-    for (n = 0; n <= 31; n++, black_mask >>= 1)
-        if ((black_mask & 1) && (s->dyn_ltree[n].Freq != 0))
-            return Z_BINARY;
-
-    /* Check for textual ("white-listed") bytes. */
-    if (s->dyn_ltree[9].Freq != 0 || s->dyn_ltree[10].Freq != 0
-            || s->dyn_ltree[13].Freq != 0)
-        return Z_TEXT;
-    for (n = 32; n < LITERALS; n++)
-        if (s->dyn_ltree[n].Freq != 0)
-            return Z_TEXT;
-
-    /* There are no "black-listed" or "white-listed" bytes:
-     * this stream either is empty or has tolerated ("gray-listed") bytes only.
-     */
-    return Z_BINARY;
-}
-
-/* ===========================================================================
- * Reverse the first len bits of a code, using straightforward code (a faster
- * method would use a table)
- * IN assertion: 1 <= len <= 15
- */
-local unsigned bi_reverse(code, len)
-    unsigned code; /* the value to invert */
-    int len;       /* its bit length */
-{
-    register unsigned res = 0;
-    do {
-        res |= code & 1;
-        code >>= 1, res <<= 1;
-    } while (--len > 0);
-    return res >> 1;
-}
-
-/* ===========================================================================
- * Flush the bit buffer, keeping at most 7 bits in it.
- */
-local void bi_flush(s)
-    deflate_state *s;
-{
-    if (s->bi_valid == 16) {
-        put_short(s, s->bi_buf);
-        s->bi_buf = 0;
-        s->bi_valid = 0;
-    } else if (s->bi_valid >= 8) {
-        put_byte(s, (Byte)s->bi_buf);
-        s->bi_buf >>= 8;
-        s->bi_valid -= 8;
-    }
-}
-
-/* ===========================================================================
- * Flush the bit buffer and align the output on a byte boundary
- */
-local void bi_windup(s)
-    deflate_state *s;
-{
-    if (s->bi_valid > 8) {
-        put_short(s, s->bi_buf);
-    } else if (s->bi_valid > 0) {
-        put_byte(s, (Byte)s->bi_buf);
-    }
-    s->bi_buf = 0;
-    s->bi_valid = 0;
-#ifdef DEBUG
-    s->bits_sent = (s->bits_sent+7) & ~7;
-#endif
-}
-
-/* ===========================================================================
- * Copy a stored block, storing first the length and its
- * one's complement if requested.
- */
-local void copy_block(s, buf, len, header)
-    deflate_state *s;
-    charf    *buf;    /* the input data */
-    unsigned len;     /* its length */
-    int      header;  /* true if block header must be written */
-{
-    bi_windup(s);        /* align on byte boundary */
-    s->last_eob_len = 8; /* enough lookahead for inflate */
-
-    if (header) {
-        put_short(s, (ush)len);
-        put_short(s, (ush)~len);
-#ifdef DEBUG
-        s->bits_sent += 2*16;
-#endif
-    }
-#ifdef DEBUG
-    s->bits_sent += (ulg)len<<3;
-#endif
-    while (len--) {
-        put_byte(s, *buf++);
-    }
-}
diff --git a/src/other/zlib/trees.h b/src/other/zlib/trees.h
deleted file mode 100644
index d35639d..0000000
--- a/src/other/zlib/trees.h
+++ /dev/null
@@ -1,128 +0,0 @@
-/* header created automatically with -DGEN_TREES_H */
-
-local const ct_data static_ltree[L_CODES+2] = {
-{{ 12},{  8}}, {{140},{  8}}, {{ 76},{  8}}, {{204},{  8}}, {{ 44},{  8}},
-{{172},{  8}}, {{108},{  8}}, {{236},{  8}}, {{ 28},{  8}}, {{156},{  8}},
-{{ 92},{  8}}, {{220},{  8}}, {{ 60},{  8}}, {{188},{  8}}, {{124},{  8}},
-{{252},{  8}}, {{  2},{  8}}, {{130},{  8}}, {{ 66},{  8}}, {{194},{  8}},
-{{ 34},{  8}}, {{162},{  8}}, {{ 98},{  8}}, {{226},{  8}}, {{ 18},{  8}},
-{{146},{  8}}, {{ 82},{  8}}, {{210},{  8}}, {{ 50},{  8}}, {{178},{  8}},
-{{114},{  8}}, {{242},{  8}}, {{ 10},{  8}}, {{138},{  8}}, {{ 74},{  8}},
-{{202},{  8}}, {{ 42},{  8}}, {{170},{  8}}, {{106},{  8}}, {{234},{  8}},
-{{ 26},{  8}}, {{154},{  8}}, {{ 90},{  8}}, {{218},{  8}}, {{ 58},{  8}},
-{{186},{  8}}, {{122},{  8}}, {{250},{  8}}, {{  6},{  8}}, {{134},{  8}},
-{{ 70},{  8}}, {{198},{  8}}, {{ 38},{  8}}, {{166},{  8}}, {{102},{  8}},
-{{230},{  8}}, {{ 22},{  8}}, {{150},{  8}}, {{ 86},{  8}}, {{214},{  8}},
-{{ 54},{  8}}, {{182},{  8}}, {{118},{  8}}, {{246},{  8}}, {{ 14},{  8}},
-{{142},{  8}}, {{ 78},{  8}}, {{206},{  8}}, {{ 46},{  8}}, {{174},{  8}},
-{{110},{  8}}, {{238},{  8}}, {{ 30},{  8}}, {{158},{  8}}, {{ 94},{  8}},
-{{222},{  8}}, {{ 62},{  8}}, {{190},{  8}}, {{126},{  8}}, {{254},{  8}},
-{{  1},{  8}}, {{129},{  8}}, {{ 65},{  8}}, {{193},{  8}}, {{ 33},{  8}},
-{{161},{  8}}, {{ 97},{  8}}, {{225},{  8}}, {{ 17},{  8}}, {{145},{  8}},
-{{ 81},{  8}}, {{209},{  8}}, {{ 49},{  8}}, {{177},{  8}}, {{113},{  8}},
-{{241},{  8}}, {{  9},{  8}}, {{137},{  8}}, {{ 73},{  8}}, {{201},{  8}},
-{{ 41},{  8}}, {{169},{  8}}, {{105},{  8}}, {{233},{  8}}, {{ 25},{  8}},
-{{153},{  8}}, {{ 89},{  8}}, {{217},{  8}}, {{ 57},{  8}}, {{185},{  8}},
-{{121},{  8}}, {{249},{  8}}, {{  5},{  8}}, {{133},{  8}}, {{ 69},{  8}},
-{{197},{  8}}, {{ 37},{  8}}, {{165},{  8}}, {{101},{  8}}, {{229},{  8}},
-{{ 21},{  8}}, {{149},{  8}}, {{ 85},{  8}}, {{213},{  8}}, {{ 53},{  8}},
-{{181},{  8}}, {{117},{  8}}, {{245},{  8}}, {{ 13},{  8}}, {{141},{  8}},
-{{ 77},{  8}}, {{205},{  8}}, {{ 45},{  8}}, {{173},{  8}}, {{109},{  8}},
-{{237},{  8}}, {{ 29},{  8}}, {{157},{  8}}, {{ 93},{  8}}, {{221},{  8}},
-{{ 61},{  8}}, {{189},{  8}}, {{125},{  8}}, {{253},{  8}}, {{ 19},{  9}},
-{{275},{  9}}, {{147},{  9}}, {{403},{  9}}, {{ 83},{  9}}, {{339},{  9}},
-{{211},{  9}}, {{467},{  9}}, {{ 51},{  9}}, {{307},{  9}}, {{179},{  9}},
-{{435},{  9}}, {{115},{  9}}, {{371},{  9}}, {{243},{  9}}, {{499},{  9}},
-{{ 11},{  9}}, {{267},{  9}}, {{139},{  9}}, {{395},{  9}}, {{ 75},{  9}},
-{{331},{  9}}, {{203},{  9}}, {{459},{  9}}, {{ 43},{  9}}, {{299},{  9}},
-{{171},{  9}}, {{427},{  9}}, {{107},{  9}}, {{363},{  9}}, {{235},{  9}},
-{{491},{  9}}, {{ 27},{  9}}, {{283},{  9}}, {{155},{  9}}, {{411},{  9}},
-{{ 91},{  9}}, {{347},{  9}}, {{219},{  9}}, {{475},{  9}}, {{ 59},{  9}},
-{{315},{  9}}, {{187},{  9}}, {{443},{  9}}, {{123},{  9}}, {{379},{  9}},
-{{251},{  9}}, {{507},{  9}}, {{  7},{  9}}, {{263},{  9}}, {{135},{  9}},
-{{391},{  9}}, {{ 71},{  9}}, {{327},{  9}}, {{199},{  9}}, {{455},{  9}},
-{{ 39},{  9}}, {{295},{  9}}, {{167},{  9}}, {{423},{  9}}, {{103},{  9}},
-{{359},{  9}}, {{231},{  9}}, {{487},{  9}}, {{ 23},{  9}}, {{279},{  9}},
-{{151},{  9}}, {{407},{  9}}, {{ 87},{  9}}, {{343},{  9}}, {{215},{  9}},
-{{471},{  9}}, {{ 55},{  9}}, {{311},{  9}}, {{183},{  9}}, {{439},{  9}},
-{{119},{  9}}, {{375},{  9}}, {{247},{  9}}, {{503},{  9}}, {{ 15},{  9}},
-{{271},{  9}}, {{143},{  9}}, {{399},{  9}}, {{ 79},{  9}}, {{335},{  9}},
-{{207},{  9}}, {{463},{  9}}, {{ 47},{  9}}, {{303},{  9}}, {{175},{  9}},
-{{431},{  9}}, {{111},{  9}}, {{367},{  9}}, {{239},{  9}}, {{495},{  9}},
-{{ 31},{  9}}, {{287},{  9}}, {{159},{  9}}, {{415},{  9}}, {{ 95},{  9}},
-{{351},{  9}}, {{223},{  9}}, {{479},{  9}}, {{ 63},{  9}}, {{319},{  9}},
-{{191},{  9}}, {{447},{  9}}, {{127},{  9}}, {{383},{  9}}, {{255},{  9}},
-{{511},{  9}}, {{  0},{  7}}, {{ 64},{  7}}, {{ 32},{  7}}, {{ 96},{  7}},
-{{ 16},{  7}}, {{ 80},{  7}}, {{ 48},{  7}}, {{112},{  7}}, {{  8},{  7}},
-{{ 72},{  7}}, {{ 40},{  7}}, {{104},{  7}}, {{ 24},{  7}}, {{ 88},{  7}},
-{{ 56},{  7}}, {{120},{  7}}, {{  4},{  7}}, {{ 68},{  7}}, {{ 36},{  7}},
-{{100},{  7}}, {{ 20},{  7}}, {{ 84},{  7}}, {{ 52},{  7}}, {{116},{  7}},
-{{  3},{  8}}, {{131},{  8}}, {{ 67},{  8}}, {{195},{  8}}, {{ 35},{  8}},
-{{163},{  8}}, {{ 99},{  8}}, {{227},{  8}}
-};
-
-local const ct_data static_dtree[D_CODES] = {
-{{ 0},{ 5}}, {{16},{ 5}}, {{ 8},{ 5}}, {{24},{ 5}}, {{ 4},{ 5}},
-{{20},{ 5}}, {{12},{ 5}}, {{28},{ 5}}, {{ 2},{ 5}}, {{18},{ 5}},
-{{10},{ 5}}, {{26},{ 5}}, {{ 6},{ 5}}, {{22},{ 5}}, {{14},{ 5}},
-{{30},{ 5}}, {{ 1},{ 5}}, {{17},{ 5}}, {{ 9},{ 5}}, {{25},{ 5}},
-{{ 5},{ 5}}, {{21},{ 5}}, {{13},{ 5}}, {{29},{ 5}}, {{ 3},{ 5}},
-{{19},{ 5}}, {{11},{ 5}}, {{27},{ 5}}, {{ 7},{ 5}}, {{23},{ 5}}
-};
-
-const uch ZLIB_INTERNAL _dist_code[DIST_CODE_LEN] = {
- 0,  1,  2,  3,  4,  4,  5,  5,  6,  6,  6,  6,  7,  7,  7,  7,  8,  8,  8,  8,
- 8,  8,  8,  8,  9,  9,  9,  9,  9,  9,  9,  9, 10, 10, 10, 10, 10, 10, 10, 10,
-10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
-11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
-12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13,
-13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
-13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
-14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
-14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
-14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15,
-15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
-15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
-15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,  0,  0, 16, 17,
-18, 18, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22,
-23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24,
-24, 24, 24, 24, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
-26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 27, 27, 27, 27, 27, 27, 27, 27,
-27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,
-27, 27, 27, 27, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28,
-28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28,
-28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28,
-28, 28, 28, 28, 28, 28, 28, 28, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
-29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
-29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
-29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29
-};
-
-const uch ZLIB_INTERNAL _length_code[MAX_MATCH-MIN_MATCH+1]= {
- 0,  1,  2,  3,  4,  5,  6,  7,  8,  8,  9,  9, 10, 10, 11, 11, 12, 12, 12, 12,
-13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16,
-17, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19,
-19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
-21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22,
-22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23,
-23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24,
-24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24,
-25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
-25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 26, 26, 26, 26, 26, 26, 26, 26,
-26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
-26, 26, 26, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,
-27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 28
-};
-
-local const int base_length[LENGTH_CODES] = {
-0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, 32, 40, 48, 56,
-64, 80, 96, 112, 128, 160, 192, 224, 0
-};
-
-local const int base_dist[D_CODES] = {
-    0,     1,     2,     3,     4,     6,     8,    12,    16,    24,
-   32,    48,    64,    96,   128,   192,   256,   384,   512,   768,
- 1024,  1536,  2048,  3072,  4096,  6144,  8192, 12288, 16384, 24576
-};
-
diff --git a/src/other/zlib/uncompr.c b/src/other/zlib/uncompr.c
deleted file mode 100644
index e2223d7..0000000
--- a/src/other/zlib/uncompr.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/* uncompr.c -- decompress a memory buffer
- * Copyright (C) 1995-2003, 2010 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* @(#) $Id: uncompr.c 21114 2010-05-10 07:14:43Z dtremenak $ */
-
-#define ZLIB_INTERNAL
-#include "zlib.h"
-
-/* ===========================================================================
-     Decompresses the source buffer into the destination buffer.  sourceLen is
-   the byte length of the source buffer. Upon entry, destLen is the total
-   size of the destination buffer, which must be large enough to hold the
-   entire uncompressed data. (The size of the uncompressed data must have
-   been saved previously by the compressor and transmitted to the decompressor
-   by some mechanism outside the scope of this compression library.)
-   Upon exit, destLen is the actual size of the compressed buffer.
-
-     uncompress returns Z_OK if success, Z_MEM_ERROR if there was not
-   enough memory, Z_BUF_ERROR if there was not enough room in the output
-   buffer, or Z_DATA_ERROR if the input data was corrupted.
-*/
-int ZEXPORT uncompress (dest, destLen, source, sourceLen)
-    Bytef *dest;
-    uLongf *destLen;
-    const Bytef *source;
-    uLong sourceLen;
-{
-    z_stream stream;
-    int err;
-
-    stream.next_in = (Bytef*)source;
-    stream.avail_in = (uInt)sourceLen;
-    /* Check for source > 64K on 16-bit machine: */
-    if ((uLong)stream.avail_in != sourceLen) return Z_BUF_ERROR;
-
-    stream.next_out = dest;
-    stream.avail_out = (uInt)*destLen;
-    if ((uLong)stream.avail_out != *destLen) return Z_BUF_ERROR;
-
-    stream.zalloc = (alloc_func)0;
-    stream.zfree = (free_func)0;
-
-    err = inflateInit(&stream);
-    if (err != Z_OK) return err;
-
-    err = inflate(&stream, Z_FINISH);
-    if (err != Z_STREAM_END) {
-        inflateEnd(&stream);
-        if (err == Z_NEED_DICT || (err == Z_BUF_ERROR && stream.avail_in == 0))
-            return Z_DATA_ERROR;
-        return err;
-    }
-    *destLen = stream.total_out;
-
-    err = inflateEnd(&stream);
-    return err;
-}
diff --git a/src/other/zlib/zconf.h b/src/other/zlib/zconf.h
deleted file mode 100644
index 9f3aac5..0000000
--- a/src/other/zlib/zconf.h
+++ /dev/null
@@ -1,428 +0,0 @@
-/* zconf.h -- configuration of the zlib compression library
- * Copyright (C) 1995-2010 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* @(#) $Id: zconf.h 22372 2012-02-17 20:04:33Z bullet_catcher $ */
-
-#ifndef ZCONF_H
-#define ZCONF_H
-
-/*
- * If you *really* need a unique prefix for all types and library functions,
- * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
- * Even better than compiling with -DZ_PREFIX would be to use configure to set
- * this permanently in zconf.h using "./configure --zprefix".
- */
-#ifdef Z_PREFIX     /* may be set to #if 1 by ./configure */
-
-/* all linked symbols */
-#  define _dist_code            z__dist_code
-#  define _length_code          z__length_code
-#  define _tr_align             z__tr_align
-#  define _tr_flush_block       z__tr_flush_block
-#  define _tr_init              z__tr_init
-#  define _tr_stored_block      z__tr_stored_block
-#  define _tr_tally             z__tr_tally
-#  define adler32               z_adler32
-#  define adler32_combine       z_adler32_combine
-#  define adler32_combine64     z_adler32_combine64
-#  define compress              z_compress
-#  define compress2             z_compress2
-#  define compressBound         z_compressBound
-#  define crc32                 z_crc32
-#  define crc32_combine         z_crc32_combine
-#  define crc32_combine64       z_crc32_combine64
-#  define deflate               z_deflate
-#  define deflateBound          z_deflateBound
-#  define deflateCopy           z_deflateCopy
-#  define deflateEnd            z_deflateEnd
-#  define deflateInit2_         z_deflateInit2_
-#  define deflateInit_          z_deflateInit_
-#  define deflateParams         z_deflateParams
-#  define deflatePrime          z_deflatePrime
-#  define deflateReset          z_deflateReset
-#  define deflateSetDictionary  z_deflateSetDictionary
-#  define deflateSetHeader      z_deflateSetHeader
-#  define deflateTune           z_deflateTune
-#  define deflate_copyright     z_deflate_copyright
-#  define get_crc_table         z_get_crc_table
-#  define gz_error              z_gz_error
-#  define gz_intmax             z_gz_intmax
-#  define gz_strwinerror        z_gz_strwinerror
-#  define gzbuffer              z_gzbuffer
-#  define gzclearerr            z_gzclearerr
-#  define gzclose               z_gzclose
-#  define gzclose_r             z_gzclose_r
-#  define gzclose_w             z_gzclose_w
-#  define gzdirect              z_gzdirect
-#  define gzdopen               z_gzdopen
-#  define gzeof                 z_gzeof
-#  define gzerror               z_gzerror
-#  define gzflush               z_gzflush
-#  define gzgetc                z_gzgetc
-#  define gzgets                z_gzgets
-#  define gzoffset              z_gzoffset
-#  define gzoffset64            z_gzoffset64
-#  define gzopen                z_gzopen
-#  define gzopen64              z_gzopen64
-#  define gzprintf              z_gzprintf
-#  define gzputc                z_gzputc
-#  define gzputs                z_gzputs
-#  define gzread                z_gzread
-#  define gzrewind              z_gzrewind
-#  define gzseek                z_gzseek
-#  define gzseek64              z_gzseek64
-#  define gzsetparams           z_gzsetparams
-#  define gztell                z_gztell
-#  define gztell64              z_gztell64
-#  define gzungetc              z_gzungetc
-#  define gzwrite               z_gzwrite
-#  define inflate               z_inflate
-#  define inflateBack           z_inflateBack
-#  define inflateBackEnd        z_inflateBackEnd
-#  define inflateBackInit_      z_inflateBackInit_
-#  define inflateCopy           z_inflateCopy
-#  define inflateEnd            z_inflateEnd
-#  define inflateGetHeader      z_inflateGetHeader
-#  define inflateInit2_         z_inflateInit2_
-#  define inflateInit_          z_inflateInit_
-#  define inflateMark           z_inflateMark
-#  define inflatePrime          z_inflatePrime
-#  define inflateReset          z_inflateReset
-#  define inflateReset2         z_inflateReset2
-#  define inflateSetDictionary  z_inflateSetDictionary
-#  define inflateSync           z_inflateSync
-#  define inflateSyncPoint      z_inflateSyncPoint
-#  define inflateUndermine      z_inflateUndermine
-#  define inflate_copyright     z_inflate_copyright
-#  define inflate_fast          z_inflate_fast
-#  define inflate_table         z_inflate_table
-#  define uncompress            z_uncompress
-#  define zError                z_zError
-#  define zcalloc               z_zcalloc
-#  define zcfree                z_zcfree
-#  define zlibCompileFlags      z_zlibCompileFlags
-#  define zlibVersion           z_zlibVersion
-
-/* all zlib typedefs in zlib.h and zconf.h */
-#  define Byte                  z_Byte
-#  define Bytef                 z_Bytef
-#  define alloc_func            z_alloc_func
-#  define charf                 z_charf
-#  define free_func             z_free_func
-#  define gzFile                z_gzFile
-#  define gz_header             z_gz_header
-#  define gz_headerp            z_gz_headerp
-#  define in_func               z_in_func
-#  define intf                  z_intf
-#  define out_func              z_out_func
-#  define uInt                  z_uInt
-#  define uIntf                 z_uIntf
-#  define uLong                 z_uLong
-#  define uLongf                z_uLongf
-#  define voidp                 z_voidp
-#  define voidpc                z_voidpc
-#  define voidpf                z_voidpf
-
-/* all zlib structs in zlib.h and zconf.h */
-#  define gz_header_s           z_gz_header_s
-#  define internal_state        z_internal_state
-
-#endif
-
-#if defined(__MSDOS__) && !defined(MSDOS)
-#  define MSDOS
-#endif
-#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2)
-#  define OS2
-#endif
-#if defined(_WINDOWS) && !defined(WINDOWS)
-#  define WINDOWS
-#endif
-#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__)
-#  ifndef WIN32
-#    define WIN32
-#  endif
-#endif
-#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32)
-#  if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__)
-#    ifndef SYS16BIT
-#      define SYS16BIT
-#    endif
-#  endif
-#endif
-
-/*
- * Compile with -DMAXSEG_64K if the alloc function cannot allocate more
- * than 64k bytes at a time (needed on systems with 16-bit int).
- */
-#ifdef SYS16BIT
-#  define MAXSEG_64K
-#endif
-#ifdef MSDOS
-#  define UNALIGNED_OK
-#endif
-
-#ifdef __STDC_VERSION__
-#  ifndef STDC
-#    define STDC
-#  endif
-#  if __STDC_VERSION__ >= 199901L
-#    ifndef STDC99
-#      define STDC99
-#    endif
-#  endif
-#endif
-#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus))
-#  define STDC
-#endif
-#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__))
-#  define STDC
-#endif
-#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32))
-#  define STDC
-#endif
-#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__))
-#  define STDC
-#endif
-
-#if defined(__OS400__) && !defined(STDC)    /* iSeries (formerly AS/400). */
-#  define STDC
-#endif
-
-#ifndef STDC
-#  ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */
-#    define const       /* note: need a more gentle solution here */
-#  endif
-#endif
-
-/* Some Mac compilers merge all .h files incorrectly: */
-#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__)
-#  define NO_DUMMY_DECL
-#endif
-
-/* Maximum value for memLevel in deflateInit2 */
-#ifndef MAX_MEM_LEVEL
-#  ifdef MAXSEG_64K
-#    define MAX_MEM_LEVEL 8
-#  else
-#    define MAX_MEM_LEVEL 9
-#  endif
-#endif
-
-/* Maximum value for windowBits in deflateInit2 and inflateInit2.
- * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files
- * created by gzip. (Files created by minigzip can still be extracted by
- * gzip.)
- */
-#ifndef MAX_WBITS
-#  define MAX_WBITS   15 /* 32K LZ77 window */
-#endif
-
-/* The memory requirements for deflate are (in bytes):
-            (1 << (windowBits+2)) +  (1 << (memLevel+9))
- that is: 128K for windowBits=15  +  128K for memLevel = 8  (default values)
- plus a few kilobytes for small objects. For example, if you want to reduce
- the default memory requirements from 256K to 128K, compile with
-     make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
- Of course this will generally degrade compression (there's no free lunch).
-
-   The memory requirements for inflate are (in bytes) 1 << windowBits
- that is, 32K for windowBits=15 (default value) plus a few kilobytes
- for small objects.
-*/
-
-                        /* Type declarations */
-
-#ifndef OF /* function prototypes */
-#  ifdef STDC
-#    define OF(args)  args
-#  else
-#    define OF(args)  ()
-#  endif
-#endif
-
-/* The following definitions for FAR are needed only for MSDOS mixed
- * model programming (small or medium model with some far allocations).
- * This was tested only with MSC; for other MSDOS compilers you may have
- * to define NO_MEMCPY in zutil.h.  If you don't need the mixed model,
- * just define FAR to be empty.
- */
-#ifdef SYS16BIT
-#  if defined(M_I86SM) || defined(M_I86MM)
-     /* MSC small or medium model */
-#    define SMALL_MEDIUM
-#    ifdef _MSC_VER
-#      define FAR _far
-#    else
-#      define FAR far
-#    endif
-#  endif
-#  if (defined(__SMALL__) || defined(__MEDIUM__))
-     /* Turbo C small or medium model */
-#    define SMALL_MEDIUM
-#    ifdef __BORLANDC__
-#      define FAR _far
-#    else
-#      define FAR far
-#    endif
-#  endif
-#endif
-
-#if defined(WINDOWS) || defined(WIN32)
-   /* If building or using zlib as a DLL, define ZLIB_DLL.
-    * This is not mandatory, but it offers a little performance increase.
-    */
-#  ifdef ZLIB_DLL
-#    if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500))
-#      ifdef ZLIB_INTERNAL
-#        define ZEXTERN extern __declspec(dllexport)
-#      else
-#        define ZEXTERN extern __declspec(dllimport)
-#      endif
-#    endif
-#  endif  /* ZLIB_DLL */
-   /* If building or using zlib with the WINAPI/WINAPIV calling convention,
-    * define ZLIB_WINAPI.
-    * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI.
-    */
-#  ifdef ZLIB_WINAPI
-#    ifdef FAR
-#      undef FAR
-#    endif
-#    include <windows.h>
-     /* No need for _export, use ZLIB.DEF instead. */
-     /* For complete Windows compatibility, use WINAPI, not __stdcall. */
-#    define ZEXPORT WINAPI
-#    ifdef WIN32
-#      define ZEXPORTVA WINAPIV
-#    else
-#      define ZEXPORTVA FAR CDECL
-#    endif
-#  endif
-#endif
-
-#if defined (__BEOS__)
-#  ifdef ZLIB_DLL
-#    ifdef ZLIB_INTERNAL
-#      define ZEXPORT   __declspec(dllexport)
-#      define ZEXPORTVA __declspec(dllexport)
-#    else
-#      define ZEXPORT   __declspec(dllimport)
-#      define ZEXPORTVA __declspec(dllimport)
-#    endif
-#  endif
-#endif
-
-#ifndef ZEXTERN
-#  define ZEXTERN extern
-#endif
-#ifndef ZEXPORT
-#  define ZEXPORT
-#endif
-#ifndef ZEXPORTVA
-#  define ZEXPORTVA
-#endif
-
-#ifndef FAR
-#  define FAR
-#endif
-
-#if !defined(__MACTYPES__)
-typedef unsigned char  Byte;  /* 8 bits */
-#endif
-typedef unsigned int   uInt;  /* 16 bits or more */
-typedef unsigned long  uLong; /* 32 bits or more */
-
-#ifdef SMALL_MEDIUM
-   /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */
-#  define Bytef Byte FAR
-#else
-   typedef Byte  FAR Bytef;
-#endif
-typedef char  FAR charf;
-typedef int   FAR intf;
-typedef uInt  FAR uIntf;
-typedef uLong FAR uLongf;
-
-#ifdef STDC
-   typedef void const *voidpc;
-   typedef void FAR   *voidpf;
-   typedef void       *voidp;
-#else
-   typedef Byte const *voidpc;
-   typedef Byte FAR   *voidpf;
-   typedef Byte       *voidp;
-#endif
-
-#ifdef HAVE_UNISTD_H    /* may be set to #if 1 by ./configure */
-#  define Z_HAVE_UNISTD_H
-#endif
-
-#ifdef STDC
-#  include <sys/types.h>    /* for off_t */
-#endif
-
-/* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and
- * "#define _LARGEFILE64_SOURCE 1" as requesting 64-bit operations, (even
- * though the former does not conform to the LFS document), but considering
- * both "#undef _LARGEFILE64_SOURCE" and "#define _LARGEFILE64_SOURCE 0" as
- * equivalently requesting no 64-bit operations
- */
-#if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1
-#  undef _LARGEFILE64_SOURCE
-#endif
-
-#if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE)
-#  include <unistd.h>       /* for SEEK_* and off_t */
-#  ifdef VMS
-#    include <unixio.h>     /* for off_t */
-#  endif
-#  ifndef z_off_t
-#    define z_off_t off_t
-#  endif
-#endif
-
-#ifndef SEEK_SET
-#  define SEEK_SET        0       /* Seek from beginning of file.  */
-#  define SEEK_CUR        1       /* Seek from current position.  */
-#  define SEEK_END        2       /* Set file pointer to EOF plus "offset" */
-#endif
-
-#ifndef z_off_t
-#  define z_off_t long
-#endif
-
-#if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
-#  define z_off64_t off64_t
-#else
-#  define z_off64_t z_off_t
-#endif
-
-#if defined(__OS400__)
-#  define NO_vsnprintf
-#endif
-
-#if defined(__MVS__)
-#  define NO_vsnprintf
-#endif
-
-/* MVS linker does not support external names larger than 8 bytes */
-#if defined(__MVS__)
-  #pragma map(deflateInit_,"DEIN")
-  #pragma map(deflateInit2_,"DEIN2")
-  #pragma map(deflateEnd,"DEEND")
-  #pragma map(deflateBound,"DEBND")
-  #pragma map(inflateInit_,"ININ")
-  #pragma map(inflateInit2_,"ININ2")
-  #pragma map(inflateEnd,"INEND")
-  #pragma map(inflateSync,"INSY")
-  #pragma map(inflateSetDictionary,"INSEDI")
-  #pragma map(compressBound,"CMBND")
-  #pragma map(inflate_table,"INTABL")
-  #pragma map(inflate_fast,"INFA")
-  #pragma map(inflate_copyright,"INCOPY")
-#endif
-
-#endif /* ZCONF_H */
diff --git a/src/other/zlib/zconf.h.in b/src/other/zlib/zconf.h.in
deleted file mode 100644
index 02ce56c..0000000
--- a/src/other/zlib/zconf.h.in
+++ /dev/null
@@ -1,428 +0,0 @@
-/* zconf.h -- configuration of the zlib compression library
- * Copyright (C) 1995-2010 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* @(#) $Id$ */
-
-#ifndef ZCONF_H
-#define ZCONF_H
-
-/*
- * If you *really* need a unique prefix for all types and library functions,
- * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
- * Even better than compiling with -DZ_PREFIX would be to use configure to set
- * this permanently in zconf.h using "./configure --zprefix".
- */
-#ifdef Z_PREFIX     /* may be set to #if 1 by ./configure */
-
-/* all linked symbols */
-#  define _dist_code            z__dist_code
-#  define _length_code          z__length_code
-#  define _tr_align             z__tr_align
-#  define _tr_flush_block       z__tr_flush_block
-#  define _tr_init              z__tr_init
-#  define _tr_stored_block      z__tr_stored_block
-#  define _tr_tally             z__tr_tally
-#  define adler32               z_adler32
-#  define adler32_combine       z_adler32_combine
-#  define adler32_combine64     z_adler32_combine64
-#  define compress              z_compress
-#  define compress2             z_compress2
-#  define compressBound         z_compressBound
-#  define crc32                 z_crc32
-#  define crc32_combine         z_crc32_combine
-#  define crc32_combine64       z_crc32_combine64
-#  define deflate               z_deflate
-#  define deflateBound          z_deflateBound
-#  define deflateCopy           z_deflateCopy
-#  define deflateEnd            z_deflateEnd
-#  define deflateInit2_         z_deflateInit2_
-#  define deflateInit_          z_deflateInit_
-#  define deflateParams         z_deflateParams
-#  define deflatePrime          z_deflatePrime
-#  define deflateReset          z_deflateReset
-#  define deflateSetDictionary  z_deflateSetDictionary
-#  define deflateSetHeader      z_deflateSetHeader
-#  define deflateTune           z_deflateTune
-#  define deflate_copyright     z_deflate_copyright
-#  define get_crc_table         z_get_crc_table
-#  define gz_error              z_gz_error
-#  define gz_intmax             z_gz_intmax
-#  define gz_strwinerror        z_gz_strwinerror
-#  define gzbuffer              z_gzbuffer
-#  define gzclearerr            z_gzclearerr
-#  define gzclose               z_gzclose
-#  define gzclose_r             z_gzclose_r
-#  define gzclose_w             z_gzclose_w
-#  define gzdirect              z_gzdirect
-#  define gzdopen               z_gzdopen
-#  define gzeof                 z_gzeof
-#  define gzerror               z_gzerror
-#  define gzflush               z_gzflush
-#  define gzgetc                z_gzgetc
-#  define gzgets                z_gzgets
-#  define gzoffset              z_gzoffset
-#  define gzoffset64            z_gzoffset64
-#  define gzopen                z_gzopen
-#  define gzopen64              z_gzopen64
-#  define gzprintf              z_gzprintf
-#  define gzputc                z_gzputc
-#  define gzputs                z_gzputs
-#  define gzread                z_gzread
-#  define gzrewind              z_gzrewind
-#  define gzseek                z_gzseek
-#  define gzseek64              z_gzseek64
-#  define gzsetparams           z_gzsetparams
-#  define gztell                z_gztell
-#  define gztell64              z_gztell64
-#  define gzungetc              z_gzungetc
-#  define gzwrite               z_gzwrite
-#  define inflate               z_inflate
-#  define inflateBack           z_inflateBack
-#  define inflateBackEnd        z_inflateBackEnd
-#  define inflateBackInit_      z_inflateBackInit_
-#  define inflateCopy           z_inflateCopy
-#  define inflateEnd            z_inflateEnd
-#  define inflateGetHeader      z_inflateGetHeader
-#  define inflateInit2_         z_inflateInit2_
-#  define inflateInit_          z_inflateInit_
-#  define inflateMark           z_inflateMark
-#  define inflatePrime          z_inflatePrime
-#  define inflateReset          z_inflateReset
-#  define inflateReset2         z_inflateReset2
-#  define inflateSetDictionary  z_inflateSetDictionary
-#  define inflateSync           z_inflateSync
-#  define inflateSyncPoint      z_inflateSyncPoint
-#  define inflateUndermine      z_inflateUndermine
-#  define inflate_copyright     z_inflate_copyright
-#  define inflate_fast          z_inflate_fast
-#  define inflate_table         z_inflate_table
-#  define uncompress            z_uncompress
-#  define zError                z_zError
-#  define zcalloc               z_zcalloc
-#  define zcfree                z_zcfree
-#  define zlibCompileFlags      z_zlibCompileFlags
-#  define zlibVersion           z_zlibVersion
-
-/* all zlib typedefs in zlib.h and zconf.h */
-#  define Byte                  z_Byte
-#  define Bytef                 z_Bytef
-#  define alloc_func            z_alloc_func
-#  define charf                 z_charf
-#  define free_func             z_free_func
-#  define gzFile                z_gzFile
-#  define gz_header             z_gz_header
-#  define gz_headerp            z_gz_headerp
-#  define in_func               z_in_func
-#  define intf                  z_intf
-#  define out_func              z_out_func
-#  define uInt                  z_uInt
-#  define uIntf                 z_uIntf
-#  define uLong                 z_uLong
-#  define uLongf                z_uLongf
-#  define voidp                 z_voidp
-#  define voidpc                z_voidpc
-#  define voidpf                z_voidpf
-
-/* all zlib structs in zlib.h and zconf.h */
-#  define gz_header_s           z_gz_header_s
-#  define internal_state        z_internal_state
-
-#endif
-
-#if defined(__MSDOS__) && !defined(MSDOS)
-#  define MSDOS
-#endif
-#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2)
-#  define OS2
-#endif
-#if defined(_WINDOWS) && !defined(WINDOWS)
-#  define WINDOWS
-#endif
-#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__)
-#  ifndef WIN32
-#    define WIN32
-#  endif
-#endif
-#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32)
-#  if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__)
-#    ifndef SYS16BIT
-#      define SYS16BIT
-#    endif
-#  endif
-#endif
-
-/*
- * Compile with -DMAXSEG_64K if the alloc function cannot allocate more
- * than 64k bytes at a time (needed on systems with 16-bit int).
- */
-#ifdef SYS16BIT
-#  define MAXSEG_64K
-#endif
-#ifdef MSDOS
-#  define UNALIGNED_OK
-#endif
-
-#ifdef __STDC_VERSION__
-#  ifndef STDC
-#    define STDC
-#  endif
-#  if __STDC_VERSION__ >= 199901L
-#    ifndef STDC99
-#      define STDC99
-#    endif
-#  endif
-#endif
-#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus))
-#  define STDC
-#endif
-#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__))
-#  define STDC
-#endif
-#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32))
-#  define STDC
-#endif
-#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__))
-#  define STDC
-#endif
-
-#if defined(__OS400__) && !defined(STDC)    /* iSeries (formerly AS/400). */
-#  define STDC
-#endif
-
-#ifndef STDC
-#  ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */
-#    define const       /* note: need a more gentle solution here */
-#  endif
-#endif
-
-/* Some Mac compilers merge all .h files incorrectly: */
-#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__)
-#  define NO_DUMMY_DECL
-#endif
-
-/* Maximum value for memLevel in deflateInit2 */
-#ifndef MAX_MEM_LEVEL
-#  ifdef MAXSEG_64K
-#    define MAX_MEM_LEVEL 8
-#  else
-#    define MAX_MEM_LEVEL 9
-#  endif
-#endif
-
-/* Maximum value for windowBits in deflateInit2 and inflateInit2.
- * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files
- * created by gzip. (Files created by minigzip can still be extracted by
- * gzip.)
- */
-#ifndef MAX_WBITS
-#  define MAX_WBITS   15 /* 32K LZ77 window */
-#endif
-
-/* The memory requirements for deflate are (in bytes):
-            (1 << (windowBits+2)) +  (1 << (memLevel+9))
- that is: 128K for windowBits=15  +  128K for memLevel = 8  (default values)
- plus a few kilobytes for small objects. For example, if you want to reduce
- the default memory requirements from 256K to 128K, compile with
-     make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
- Of course this will generally degrade compression (there's no free lunch).
-
-   The memory requirements for inflate are (in bytes) 1 << windowBits
- that is, 32K for windowBits=15 (default value) plus a few kilobytes
- for small objects.
-*/
-
-                        /* Type declarations */
-
-#ifndef OF /* function prototypes */
-#  ifdef STDC
-#    define OF(args)  args
-#  else
-#    define OF(args)  ()
-#  endif
-#endif
-
-/* The following definitions for FAR are needed only for MSDOS mixed
- * model programming (small or medium model with some far allocations).
- * This was tested only with MSC; for other MSDOS compilers you may have
- * to define NO_MEMCPY in zutil.h.  If you don't need the mixed model,
- * just define FAR to be empty.
- */
-#ifdef SYS16BIT
-#  if defined(M_I86SM) || defined(M_I86MM)
-     /* MSC small or medium model */
-#    define SMALL_MEDIUM
-#    ifdef _MSC_VER
-#      define FAR _far
-#    else
-#      define FAR far
-#    endif
-#  endif
-#  if (defined(__SMALL__) || defined(__MEDIUM__))
-     /* Turbo C small or medium model */
-#    define SMALL_MEDIUM
-#    ifdef __BORLANDC__
-#      define FAR _far
-#    else
-#      define FAR far
-#    endif
-#  endif
-#endif
-
-#if defined(WINDOWS) || defined(WIN32)
-   /* If building or using zlib as a DLL, define ZLIB_DLL.
-    * This is not mandatory, but it offers a little performance increase.
-    */
-#  ifdef ZLIB_DLL
-#    if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500))
-#      ifdef ZLIB_INTERNAL
-#        define ZEXTERN extern __declspec(dllexport)
-#      else
-#        define ZEXTERN extern __declspec(dllimport)
-#      endif
-#    endif
-#  endif  /* ZLIB_DLL */
-   /* If building or using zlib with the WINAPI/WINAPIV calling convention,
-    * define ZLIB_WINAPI.
-    * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI.
-    */
-#  ifdef ZLIB_WINAPI
-#    ifdef FAR
-#      undef FAR
-#    endif
-#    include <windows.h>
-     /* No need for _export, use ZLIB.DEF instead. */
-     /* For complete Windows compatibility, use WINAPI, not __stdcall. */
-#    define ZEXPORT WINAPI
-#    ifdef WIN32
-#      define ZEXPORTVA WINAPIV
-#    else
-#      define ZEXPORTVA FAR CDECL
-#    endif
-#  endif
-#endif
-
-#if defined (__BEOS__)
-#  ifdef ZLIB_DLL
-#    ifdef ZLIB_INTERNAL
-#      define ZEXPORT   __declspec(dllexport)
-#      define ZEXPORTVA __declspec(dllexport)
-#    else
-#      define ZEXPORT   __declspec(dllimport)
-#      define ZEXPORTVA __declspec(dllimport)
-#    endif
-#  endif
-#endif
-
-#ifndef ZEXTERN
-#  define ZEXTERN extern
-#endif
-#ifndef ZEXPORT
-#  define ZEXPORT
-#endif
-#ifndef ZEXPORTVA
-#  define ZEXPORTVA
-#endif
-
-#ifndef FAR
-#  define FAR
-#endif
-
-#if !defined(__MACTYPES__)
-typedef unsigned char  Byte;  /* 8 bits */
-#endif
-typedef unsigned int   uInt;  /* 16 bits or more */
-typedef unsigned long  uLong; /* 32 bits or more */
-
-#ifdef SMALL_MEDIUM
-   /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */
-#  define Bytef Byte FAR
-#else
-   typedef Byte  FAR Bytef;
-#endif
-typedef char  FAR charf;
-typedef int   FAR intf;
-typedef uInt  FAR uIntf;
-typedef uLong FAR uLongf;
-
-#ifdef STDC
-   typedef void const *voidpc;
-   typedef void FAR   *voidpf;
-   typedef void       *voidp;
-#else
-   typedef Byte const *voidpc;
-   typedef Byte FAR   *voidpf;
-   typedef Byte       *voidp;
-#endif
-
-#ifdef HAVE_UNISTD_H    /* may be set to #if 1 by ./configure */
-#  define Z_HAVE_UNISTD_H
-#endif
-
-#ifdef STDC
-#  include <sys/types.h>    /* for off_t */
-#endif
-
-/* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and
- * "#define _LARGEFILE64_SOURCE 1" as requesting 64-bit operations, (even
- * though the former does not conform to the LFS document), but considering
- * both "#undef _LARGEFILE64_SOURCE" and "#define _LARGEFILE64_SOURCE 0" as
- * equivalently requesting no 64-bit operations
- */
-#if -_LARGEFILE64_SOURCE - -1 == 1
-#  undef _LARGEFILE64_SOURCE
-#endif
-
-#if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE)
-#  include <unistd.h>       /* for SEEK_* and off_t */
-#  ifdef VMS
-#    include <unixio.h>     /* for off_t */
-#  endif
-#  ifndef z_off_t
-#    define z_off_t off_t
-#  endif
-#endif
-
-#ifndef SEEK_SET
-#  define SEEK_SET        0       /* Seek from beginning of file.  */
-#  define SEEK_CUR        1       /* Seek from current position.  */
-#  define SEEK_END        2       /* Set file pointer to EOF plus "offset" */
-#endif
-
-#ifndef z_off_t
-#  define z_off_t long
-#endif
-
-#if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
-#  define z_off64_t off64_t
-#else
-#  define z_off64_t z_off_t
-#endif
-
-#if defined(__OS400__)
-#  define NO_vsnprintf
-#endif
-
-#if defined(__MVS__)
-#  define NO_vsnprintf
-#endif
-
-/* MVS linker does not support external names larger than 8 bytes */
-#if defined(__MVS__)
-  #pragma map(deflateInit_,"DEIN")
-  #pragma map(deflateInit2_,"DEIN2")
-  #pragma map(deflateEnd,"DEEND")
-  #pragma map(deflateBound,"DEBND")
-  #pragma map(inflateInit_,"ININ")
-  #pragma map(inflateInit2_,"ININ2")
-  #pragma map(inflateEnd,"INEND")
-  #pragma map(inflateSync,"INSY")
-  #pragma map(inflateSetDictionary,"INSEDI")
-  #pragma map(compressBound,"CMBND")
-  #pragma map(inflate_table,"INTABL")
-  #pragma map(inflate_fast,"INFA")
-  #pragma map(inflate_copyright,"INCOPY")
-#endif
-
-#endif /* ZCONF_H */
diff --git a/src/other/zlib/zlib.3 b/src/other/zlib/zlib.3
deleted file mode 100644
index 27adc4c..0000000
--- a/src/other/zlib/zlib.3
+++ /dev/null
@@ -1,151 +0,0 @@
-.TH ZLIB 3 "19 Apr 2010"
-.SH NAME
-zlib \- compression/decompression library
-.SH SYNOPSIS
-[see
-.I zlib.h
-for full description]
-.SH DESCRIPTION
-The
-.I zlib
-library is a general purpose data compression library.
-The code is thread safe, assuming that the standard library functions
-used are thread safe, such as memory allocation routines.
-It provides in-memory compression and decompression functions,
-including integrity checks of the uncompressed data.
-This version of the library supports only one compression method (deflation)
-but other algorithms may be added later
-with the same stream interface.
-.LP
-Compression can be done in a single step if the buffers are large enough
-or can be done by repeated calls of the compression function.
-In the latter case,
-the application must provide more input and/or consume the output
-(providing more output space) before each call.
-.LP
-The library also supports reading and writing files in
-.IR gzip (1)
-(.gz) format
-with an interface similar to that of stdio.
-.LP
-The library does not install any signal handler.
-The decoder checks the consistency of the compressed data,
-so the library should never crash even in the case of corrupted input.
-.LP
-All functions of the compression library are documented in the file
-.IR zlib.h .
-The distribution source includes examples of use of the library
-in the files
-.I example.c
-and
-.IR minigzip.c,
-as well as other examples in the
-.IR examples/
-directory.
-.LP
-Changes to this version are documented in the file
-.I ChangeLog
-that accompanies the source.
-.LP
-.I zlib
-is available in Java using the java.util.zip package:
-.IP
-http://java.sun.com/developer/technicalArticles/Programming/compression/
-.LP
-A Perl interface to
-.IR zlib ,
-written by Paul Marquess (pmqs at cpan.org),
-is available at CPAN (Comprehensive Perl Archive Network) sites,
-including:
-.IP
-http://search.cpan.org/~pmqs/IO-Compress-Zlib/
-.LP
-A Python interface to
-.IR zlib ,
-written by A.M. Kuchling (amk at magnet.com),
-is available in Python 1.5 and later versions:
-.IP
-http://www.python.org/doc/lib/module-zlib.html
-.LP
-.I zlib
-is built into
-.IR tcl:
-.IP
-http://wiki.tcl.tk/4610
-.LP
-An experimental package to read and write files in .zip format,
-written on top of
-.I zlib
-by Gilles Vollant (info at winimage.com),
-is available at:
-.IP
-http://www.winimage.com/zLibDll/minizip.html
-and also in the
-.I contrib/minizip
-directory of the main
-.I zlib
-source distribution.
-.SH "SEE ALSO"
-The
-.I zlib
-web site can be found at:
-.IP
-http://zlib.net/
-.LP
-The data format used by the zlib library is described by RFC
-(Request for Comments) 1950 to 1952 in the files:
-.IP
-http://www.ietf.org/rfc/rfc1950.txt (for the zlib header and trailer format)
-.br
-http://www.ietf.org/rfc/rfc1951.txt (for the deflate compressed data format)
-.br
-http://www.ietf.org/rfc/rfc1952.txt (for the gzip header and trailer format)
-.LP
-Mark Nelson wrote an article about
-.I zlib
-for the Jan. 1997 issue of  Dr. Dobb's Journal;
-a copy of the article is available at:
-.IP
-http://marknelson.us/1997/01/01/zlib-engine/
-.SH "REPORTING PROBLEMS"
-Before reporting a problem,
-please check the
-.I zlib
-web site to verify that you have the latest version of
-.IR zlib ;
-otherwise,
-obtain the latest version and see if the problem still exists.
-Please read the
-.I zlib
-FAQ at:
-.IP
-http://zlib.net/zlib_faq.html
-.LP
-before asking for help.
-Send questions and/or comments to zlib at gzip.org,
-or (for the Windows DLL version) to Gilles Vollant (info at winimage.com).
-.SH AUTHORS
-Version 1.2.5
-Copyright (C) 1995-2010 Jean-loup Gailly (jloup at gzip.org)
-and Mark Adler (madler at alumni.caltech.edu).
-.LP
-This software is provided "as-is,"
-without any express or implied warranty.
-In no event will the authors be held liable for any damages
-arising from the use of this software.
-See the distribution directory with respect to requirements
-governing redistribution.
-The deflate format used by
-.I zlib
-was defined by Phil Katz.
-The deflate and
-.I zlib
-specifications were written by L. Peter Deutsch.
-Thanks to all the people who reported problems and suggested various
-improvements in
-.IR zlib ;
-who are too numerous to cite here.
-.LP
-UNIX manual page by R. P. C. Rodgers,
-U.S. National Library of Medicine (rodgers at nlm.nih.gov).
-.\" end of man page
diff --git a/src/other/zlib/zlib.h b/src/other/zlib/zlib.h
deleted file mode 100644
index 30cd0a4..0000000
--- a/src/other/zlib/zlib.h
+++ /dev/null
@@ -1,1613 +0,0 @@
-/* zlib.h -- interface of the 'zlib' general purpose compression library
-  version 1.2.5, April 19th, 2010
-
-  Copyright (C) 1995-2010 Jean-loup Gailly and Mark Adler
-
-  This software is provided 'as-is', without any express or implied
-  warranty.  In no event will the authors be held liable for any damages
-  arising from the use of this software.
-
-  Permission is granted to anyone to use this software for any purpose,
-  including commercial applications, and to alter it and redistribute it
-  freely, subject to the following restrictions:
-
-  1. The origin of this software must not be misrepresented; you must not
-     claim that you wrote the original software. If you use this software
-     in a product, an acknowledgment in the product documentation would be
-     appreciated but is not required.
-  2. Altered source versions must be plainly marked as such, and must not be
-     misrepresented as being the original software.
-  3. This notice may not be removed or altered from any source distribution.
-
-  Jean-loup Gailly        Mark Adler
-  jloup at gzip.org          madler at alumni.caltech.edu
-
-
-  The data format used by the zlib library is described by RFCs (Request for
-  Comments) 1950 to 1952 in the files http://www.ietf.org/rfc/rfc1950.txt
-  (zlib format), rfc1951.txt (deflate format) and rfc1952.txt (gzip format).
-*/
-
-#ifndef ZLIB_H
-#define ZLIB_H
-
-#include "zconf.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define ZLIB_VERSION "1.2.5"
-#define ZLIB_VERNUM 0x1250
-#define ZLIB_VER_MAJOR 1
-#define ZLIB_VER_MINOR 2
-#define ZLIB_VER_REVISION 5
-#define ZLIB_VER_SUBREVISION 0
-
-/*
-    The 'zlib' compression library provides in-memory compression and
-  decompression functions, including integrity checks of the uncompressed data.
-  This version of the library supports only one compression method (deflation)
-  but other algorithms will be added later and will have the same stream
-  interface.
-
-    Compression can be done in a single step if the buffers are large enough,
-  or can be done by repeated calls of the compression function.  In the latter
-  case, the application must provide more input and/or consume the output
-  (providing more output space) before each call.
-
-    The compressed data format used by default by the in-memory functions is
-  the zlib format, which is a zlib wrapper documented in RFC 1950, wrapped
-  around a deflate stream, which is itself documented in RFC 1951.
-
-    The library also supports reading and writing files in gzip (.gz) format
-  with an interface similar to that of stdio using the functions that start
-  with "gz".  The gzip format is different from the zlib format.  gzip is a
-  gzip wrapper, documented in RFC 1952, wrapped around a deflate stream.
-
-    This library can optionally read and write gzip streams in memory as well.
-
-    The zlib format was designed to be compact and fast for use in memory
-  and on communications channels.  The gzip format was designed for single-
-  file compression on file systems, has a larger header than zlib to maintain
-  directory information, and uses a different, slower check method than zlib.
-
-    The library does not install any signal handler.  The decoder checks
-  the consistency of the compressed data, so the library should never crash
-  even in case of corrupted input.
-*/
-
-typedef voidpf (*alloc_func) OF((voidpf opaque, uInt items, uInt size));
-typedef void   (*free_func)  OF((voidpf opaque, voidpf address));
-
-struct internal_state;
-
-typedef struct z_stream_s {
-    Bytef    *next_in;  /* next input byte */
-    uInt     avail_in;  /* number of bytes available at next_in */
-    uLong    total_in;  /* total nb of input bytes read so far */
-
-    Bytef    *next_out; /* next output byte should be put there */
-    uInt     avail_out; /* remaining free space at next_out */
-    uLong    total_out; /* total nb of bytes output so far */
-
-    char     *msg;      /* last error message, NULL if no error */
-    struct internal_state FAR *state; /* not visible by applications */
-
-    alloc_func zalloc;  /* used to allocate the internal state */
-    free_func  zfree;   /* used to free the internal state */
-    voidpf     opaque;  /* private data object passed to zalloc and zfree */
-
-    int     data_type;  /* best guess about the data type: binary or text */
-    uLong   adler;      /* adler32 value of the uncompressed data */
-    uLong   reserved;   /* reserved for future use */
-} z_stream;
-
-typedef z_stream FAR *z_streamp;
-
-/*
-     gzip header information passed to and from zlib routines.  See RFC 1952
-  for more details on the meanings of these fields.
-*/
-typedef struct gz_header_s {
-    int     text;       /* true if compressed data believed to be text */
-    uLong   time;       /* modification time */
-    int     xflags;     /* extra flags (not used when writing a gzip file) */
-    int     os;         /* operating system */
-    Bytef   *extra;     /* pointer to extra field or Z_NULL if none */
-    uInt    extra_len;  /* extra field length (valid if extra != Z_NULL) */
-    uInt    extra_max;  /* space at extra (only when reading header) */
-    Bytef   *name;      /* pointer to zero-terminated file name or Z_NULL */
-    uInt    name_max;   /* space at name (only when reading header) */
-    Bytef   *comment;   /* pointer to zero-terminated comment or Z_NULL */
-    uInt    comm_max;   /* space at comment (only when reading header) */
-    int     hcrc;       /* true if there was or will be a header crc */
-    int     done;       /* true when done reading gzip header (not used
-                           when writing a gzip file) */
-} gz_header;
-
-typedef gz_header FAR *gz_headerp;
-
-/*
-     The application must update next_in and avail_in when avail_in has dropped
-   to zero.  It must update next_out and avail_out when avail_out has dropped
-   to zero.  The application must initialize zalloc, zfree and opaque before
-   calling the init function.  All other fields are set by the compression
-   library and must not be updated by the application.
-
-     The opaque value provided by the application will be passed as the first
-   parameter for calls of zalloc and zfree.  This can be useful for custom
-   memory management.  The compression library attaches no meaning to the
-   opaque value.
-
-     zalloc must return Z_NULL if there is not enough memory for the object.
-   If zlib is used in a multi-threaded application, zalloc and zfree must be
-   thread safe.
-
-     On 16-bit systems, the functions zalloc and zfree must be able to allocate
-   exactly 65536 bytes, but will not be required to allocate more than this if
-   the symbol MAXSEG_64K is defined (see zconf.h).  WARNING: On MSDOS, pointers
-   returned by zalloc for objects of exactly 65536 bytes *must* have their
-   offset normalized to zero.  The default allocation function provided by this
-   library ensures this (see zutil.c).  To reduce memory requirements and avoid
-   any allocation of 64K objects, at the expense of compression ratio, compile
-   the library with -DMAX_WBITS=14 (see zconf.h).
-
-     The fields total_in and total_out can be used for statistics or progress
-   reports.  After compression, total_in holds the total size of the
-   uncompressed data and may be saved for use in the decompressor (particularly
-   if the decompressor wants to decompress everything in a single step).
-*/
-
-                        /* constants */
-
-#define Z_NO_FLUSH      0
-#define Z_PARTIAL_FLUSH 1
-#define Z_SYNC_FLUSH    2
-#define Z_FULL_FLUSH    3
-#define Z_FINISH        4
-#define Z_BLOCK         5
-#define Z_TREES         6
-/* Allowed flush values; see deflate() and inflate() below for details */
-
-#define Z_OK            0
-#define Z_STREAM_END    1
-#define Z_NEED_DICT     2
-#define Z_ERRNO        (-1)
-#define Z_STREAM_ERROR (-2)
-#define Z_DATA_ERROR   (-3)
-#define Z_MEM_ERROR    (-4)
-#define Z_BUF_ERROR    (-5)
-#define Z_VERSION_ERROR (-6)
-/* Return codes for the compression/decompression functions. Negative values
- * are errors, positive values are used for special but normal events.
- */
-
-#define Z_NO_COMPRESSION         0
-#define Z_BEST_SPEED             1
-#define Z_BEST_COMPRESSION       9
-#define Z_DEFAULT_COMPRESSION  (-1)
-/* compression levels */
-
-#define Z_FILTERED            1
-#define Z_HUFFMAN_ONLY        2
-#define Z_RLE                 3
-#define Z_FIXED               4
-#define Z_DEFAULT_STRATEGY    0
-/* compression strategy; see deflateInit2() below for details */
-
-#define Z_BINARY   0
-#define Z_TEXT     1
-#define Z_ASCII    Z_TEXT   /* for compatibility with 1.2.2 and earlier */
-#define Z_UNKNOWN  2
-/* Possible values of the data_type field (though see inflate()) */
-
-#define Z_DEFLATED   8
-/* The deflate compression method (the only one supported in this version) */
-
-#define Z_NULL  0  /* for initializing zalloc, zfree, opaque */
-
-#define zlib_version zlibVersion()
-/* for compatibility with versions < 1.0.2 */
-
-
-                        /* basic functions */
-
-ZEXTERN const char * ZEXPORT zlibVersion OF((void));
-/* The application can compare zlibVersion and ZLIB_VERSION for consistency.
-   If the first character differs, the library code actually used is not
-   compatible with the zlib.h header file used by the application.  This check
-   is automatically made by deflateInit and inflateInit.
- */
-
-/*
-ZEXTERN int ZEXPORT deflateInit OF((z_streamp strm, int level));
-
-     Initializes the internal stream state for compression.  The fields
-   zalloc, zfree and opaque must be initialized before by the caller.  If
-   zalloc and zfree are set to Z_NULL, deflateInit updates them to use default
-   allocation functions.
-
-     The compression level must be Z_DEFAULT_COMPRESSION, or between 0 and 9:
-   1 gives best speed, 9 gives best compression, 0 gives no compression at all
-   (the input data is simply copied a block at a time).  Z_DEFAULT_COMPRESSION
-   requests a default compromise between speed and compression (currently
-   equivalent to level 6).
-
-     deflateInit returns Z_OK if success, Z_MEM_ERROR if there was not enough
-   memory, Z_STREAM_ERROR if level is not a valid compression level, or
-   Z_VERSION_ERROR if the zlib library version (zlib_version) is incompatible
-   with the version assumed by the caller (ZLIB_VERSION).  msg is set to null
-   if there is no error message.  deflateInit does not perform any compression:
-   this will be done by deflate().
-*/
-
-
-ZEXTERN int ZEXPORT deflate OF((z_streamp strm, int flush));
-/*
-    deflate compresses as much data as possible, and stops when the input
-  buffer becomes empty or the output buffer becomes full.  It may introduce
-  some output latency (reading input without producing any output) except when
-  forced to flush.
-
-    The detailed semantics are as follows.  deflate performs one or both of the
-  following actions:
-
-  - Compress more input starting at next_in and update next_in and avail_in
-    accordingly.  If not all input can be processed (because there is not
-    enough room in the output buffer), next_in and avail_in are updated and
-    processing will resume at this point for the next call of deflate().
-
-  - Provide more output starting at next_out and update next_out and avail_out
-    accordingly.  This action is forced if the parameter flush is non zero.
-    Forcing flush frequently degrades the compression ratio, so this parameter
-    should be set only when necessary (in interactive applications).  Some
-    output may be provided even if flush is not set.
-
-    Before the call of deflate(), the application should ensure that at least
-  one of the actions is possible, by providing more input and/or consuming more
-  output, and updating avail_in or avail_out accordingly; avail_out should
-  never be zero before the call.  The application can consume the compressed
-  output when it wants, for example when the output buffer is full (avail_out
-  == 0), or after each call of deflate().  If deflate returns Z_OK and with
-  zero avail_out, it must be called again after making room in the output
-  buffer because there might be more output pending.
-
-    Normally the parameter flush is set to Z_NO_FLUSH, which allows deflate to
-  decide how much data to accumulate before producing output, in order to
-  maximize compression.
-
-    If the parameter flush is set to Z_SYNC_FLUSH, all pending output is
-  flushed to the output buffer and the output is aligned on a byte boundary, so
-  that the decompressor can get all input data available so far.  (In
-  particular avail_in is zero after the call if enough output space has been
-  provided before the call.) Flushing may degrade compression for some
-  compression algorithms and so it should be used only when necessary.  This
-  completes the current deflate block and follows it with an empty stored block
-  that is three bits plus filler bits to the next byte, followed by four bytes
-  (00 00 ff ff).
-
-    If flush is set to Z_PARTIAL_FLUSH, all pending output is flushed to the
-  output buffer, but the output is not aligned to a byte boundary.  All of the
-  input data so far will be available to the decompressor, as for Z_SYNC_FLUSH.
-  This completes the current deflate block and follows it with an empty fixed
-  codes block that is 10 bits long.  This assures that enough bytes are output
-  in order for the decompressor to finish the block before the empty fixed code
-  block.
-
-    If flush is set to Z_BLOCK, a deflate block is completed and emitted, as
-  for Z_SYNC_FLUSH, but the output is not aligned on a byte boundary, and up to
-  seven bits of the current block are held to be written as the next byte after
-  the next deflate block is completed.  In this case, the decompressor may not
-  be provided enough bits at this point in order to complete decompression of
-  the data provided so far to the compressor.  It may need to wait for the next
-  block to be emitted.  This is for advanced applications that need to control
-  the emission of deflate blocks.
-
-    If flush is set to Z_FULL_FLUSH, all output is flushed as with
-  Z_SYNC_FLUSH, and the compression state is reset so that decompression can
-  restart from this point if previous compressed data has been damaged or if
-  random access is desired.  Using Z_FULL_FLUSH too often can seriously degrade
-  compression.
-
-    If deflate returns with avail_out == 0, this function must be called again
-  with the same value of the flush parameter and more output space (updated
-  avail_out), until the flush is complete (deflate returns with non-zero
-  avail_out).  In the case of a Z_FULL_FLUSH or Z_SYNC_FLUSH, make sure that
-  avail_out is greater than six to avoid repeated flush markers due to
-  avail_out == 0 on return.
-
-    If the parameter flush is set to Z_FINISH, pending input is processed,
-  pending output is flushed and deflate returns with Z_STREAM_END if there was
-  enough output space; if deflate returns with Z_OK, this function must be
-  called again with Z_FINISH and more output space (updated avail_out) but no
-  more input data, until it returns with Z_STREAM_END or an error.  After
-  deflate has returned Z_STREAM_END, the only possible operations on the stream
-  are deflateReset or deflateEnd.
-
-    Z_FINISH can be used immediately after deflateInit if all the compression
-  is to be done in a single step.  In this case, avail_out must be at least the
-  value returned by deflateBound (see below).  If deflate does not return
-  Z_STREAM_END, then it must be called again as described above.
-
-    deflate() sets strm->adler to the adler32 checksum of all input read
-  so far (that is, total_in bytes).
-
-    deflate() may update strm->data_type if it can make a good guess about
-  the input data type (Z_BINARY or Z_TEXT).  In doubt, the data is considered
-  binary.  This field is only for information purposes and does not affect the
-  compression algorithm in any manner.
-
-    deflate() returns Z_OK if some progress has been made (more input
-  processed or more output produced), Z_STREAM_END if all input has been
-  consumed and all output has been produced (only when flush is set to
-  Z_FINISH), Z_STREAM_ERROR if the stream state was inconsistent (for example
-  if next_in or next_out was Z_NULL), Z_BUF_ERROR if no progress is possible
-  (for example avail_in or avail_out was zero).  Note that Z_BUF_ERROR is not
-  fatal, and deflate() can be called again with more input and more output
-  space to continue compressing.
-*/
-
-
-ZEXTERN int ZEXPORT deflateEnd OF((z_streamp strm));
-/*
-     All dynamically allocated data structures for this stream are freed.
-   This function discards any unprocessed input and does not flush any pending
-   output.
-
-     deflateEnd returns Z_OK if success, Z_STREAM_ERROR if the
-   stream state was inconsistent, Z_DATA_ERROR if the stream was freed
-   prematurely (some input or output was discarded).  In the error case, msg
-   may be set but then points to a static string (which must not be
-   deallocated).
-*/
-
-
-/*
-ZEXTERN int ZEXPORT inflateInit OF((z_streamp strm));
-
-     Initializes the internal stream state for decompression.  The fields
-   next_in, avail_in, zalloc, zfree and opaque must be initialized before by
-   the caller.  If next_in is not Z_NULL and avail_in is large enough (the
-   exact value depends on the compression method), inflateInit determines the
-   compression method from the zlib header and allocates all data structures
-   accordingly; otherwise the allocation will be deferred to the first call of
-   inflate.  If zalloc and zfree are set to Z_NULL, inflateInit updates them to
-   use default allocation functions.
-
-     inflateInit returns Z_OK if success, Z_MEM_ERROR if there was not enough
-   memory, Z_VERSION_ERROR if the zlib library version is incompatible with the
-   version assumed by the caller, or Z_STREAM_ERROR if the parameters are
-   invalid, such as a null pointer to the structure.  msg is set to null if
-   there is no error message.  inflateInit does not perform any decompression
-   apart from possibly reading the zlib header if present: actual decompression
-   will be done by inflate().  (So next_in and avail_in may be modified, but
-   next_out and avail_out are unused and unchanged.) The current implementation
-   of inflateInit() does not process any header information -- that is deferred
-   until inflate() is called.
-*/
-
-
-ZEXTERN int ZEXPORT inflate OF((z_streamp strm, int flush));
-/*
-    inflate decompresses as much data as possible, and stops when the input
-  buffer becomes empty or the output buffer becomes full.  It may introduce
-  some output latency (reading input without producing any output) except when
-  forced to flush.
-
-  The detailed semantics are as follows.  inflate performs one or both of the
-  following actions:
-
-  - Decompress more input starting at next_in and update next_in and avail_in
-    accordingly.  If not all input can be processed (because there is not
-    enough room in the output buffer), next_in is updated and processing will
-    resume at this point for the next call of inflate().
-
-  - Provide more output starting at next_out and update next_out and avail_out
-    accordingly.  inflate() provides as much output as possible, until there is
-    no more input data or no more space in the output buffer (see below about
-    the flush parameter).
-
-    Before the call of inflate(), the application should ensure that at least
-  one of the actions is possible, by providing more input and/or consuming more
-  output, and updating the next_* and avail_* values accordingly.  The
-  application can consume the uncompressed output when it wants, for example
-  when the output buffer is full (avail_out == 0), or after each call of
-  inflate().  If inflate returns Z_OK and with zero avail_out, it must be
-  called again after making room in the output buffer because there might be
-  more output pending.
-
-    The flush parameter of inflate() can be Z_NO_FLUSH, Z_SYNC_FLUSH, Z_FINISH,
-  Z_BLOCK, or Z_TREES.  Z_SYNC_FLUSH requests that inflate() flush as much
-  output as possible to the output buffer.  Z_BLOCK requests that inflate()
-  stop if and when it gets to the next deflate block boundary.  When decoding
-  the zlib or gzip format, this will cause inflate() to return immediately
-  after the header and before the first block.  When doing a raw inflate,
-  inflate() will go ahead and process the first block, and will return when it
-  gets to the end of that block, or when it runs out of data.
-
-    The Z_BLOCK option assists in appending to or combining deflate streams.
-  Also to assist in this, on return inflate() will set strm->data_type to the
-  number of unused bits in the last byte taken from strm->next_in, plus 64 if
-  inflate() is currently decoding the last block in the deflate stream, plus
-  128 if inflate() returned immediately after decoding an end-of-block code or
-  decoding the complete header up to just before the first byte of the deflate
-  stream.  The end-of-block will not be indicated until all of the uncompressed
-  data from that block has been written to strm->next_out.  The number of
-  unused bits may in general be greater than seven, except when bit 7 of
-  data_type is set, in which case the number of unused bits will be less than
-  eight.  data_type is set as noted here every time inflate() returns for all
-  flush options, and so can be used to determine the amount of currently
-  consumed input in bits.
-
-    The Z_TREES option behaves as Z_BLOCK does, but it also returns when the
-  end of each deflate block header is reached, before any actual data in that
-  block is decoded.  This allows the caller to determine the length of the
-  deflate block header for later use in random access within a deflate block.
-  256 is added to the value of strm->data_type when inflate() returns
-  immediately after reaching the end of the deflate block header.
-
-    inflate() should normally be called until it returns Z_STREAM_END or an
-  error.  However if all decompression is to be performed in a single step (a
-  single call of inflate), the parameter flush should be set to Z_FINISH.  In
-  this case all pending input is processed and all pending output is flushed;
-  avail_out must be large enough to hold all the uncompressed data.  (The size
-  of the uncompressed data may have been saved by the compressor for this
-  purpose.) The next operation on this stream must be inflateEnd to deallocate
-  the decompression state.  The use of Z_FINISH is never required, but can be
-  used to inform inflate that a faster approach may be used for the single
-  inflate() call.
-
-     In this implementation, inflate() always flushes as much output as
-  possible to the output buffer, and always uses the faster approach on the
-  first call.  So the only effect of the flush parameter in this implementation
-  is on the return value of inflate(), as noted below, or when it returns early
-  because Z_BLOCK or Z_TREES is used.
-
-     If a preset dictionary is needed after this call (see inflateSetDictionary
-  below), inflate sets strm->adler to the adler32 checksum of the dictionary
-  chosen by the compressor and returns Z_NEED_DICT; otherwise it sets
-  strm->adler to the adler32 checksum of all output produced so far (that is,
-  total_out bytes) and returns Z_OK, Z_STREAM_END or an error code as described
-  below.  At the end of the stream, inflate() checks that its computed adler32
-  checksum is equal to that saved by the compressor and returns Z_STREAM_END
-  only if the checksum is correct.
-
-    inflate() can decompress and check either zlib-wrapped or gzip-wrapped
-  deflate data.  The header type is detected automatically, if requested when
-  initializing with inflateInit2().  Any information contained in the gzip
-  header is not retained, so applications that need that information should
-  instead use raw inflate, see inflateInit2() below, or inflateBack() and
-  perform their own processing of the gzip header and trailer.
-
-    inflate() returns Z_OK if some progress has been made (more input processed
-  or more output produced), Z_STREAM_END if the end of the compressed data has
-  been reached and all uncompressed output has been produced, Z_NEED_DICT if a
-  preset dictionary is needed at this point, Z_DATA_ERROR if the input data was
-  corrupted (input stream not conforming to the zlib format or incorrect check
-  value), Z_STREAM_ERROR if the stream structure was inconsistent (for example
-  next_in or next_out was Z_NULL), Z_MEM_ERROR if there was not enough memory,
-  Z_BUF_ERROR if no progress is possible or if there was not enough room in the
-  output buffer when Z_FINISH is used.  Note that Z_BUF_ERROR is not fatal, and
-  inflate() can be called again with more input and more output space to
-  continue decompressing.  If Z_DATA_ERROR is returned, the application may
-  then call inflateSync() to look for a good compression block if a partial
-  recovery of the data is desired.
-*/
-
-
-ZEXTERN int ZEXPORT inflateEnd OF((z_streamp strm));
-/*
-     All dynamically allocated data structures for this stream are freed.
-   This function discards any unprocessed input and does not flush any pending
-   output.
-
-     inflateEnd returns Z_OK if success, Z_STREAM_ERROR if the stream state
-   was inconsistent.  In the error case, msg may be set but then points to a
-   static string (which must not be deallocated).
-*/
-
-
-                        /* Advanced functions */
-
-/*
-    The following functions are needed only in some special applications.
-*/
-
-/*
-ZEXTERN int ZEXPORT deflateInit2 OF((z_streamp strm,
-                                     int  level,
-                                     int  method,
-                                     int  windowBits,
-                                     int  memLevel,
-                                     int  strategy));
-
-     This is another version of deflateInit with more compression options.  The
-   fields next_in, zalloc, zfree and opaque must be initialized before by the
-   caller.
-
-     The method parameter is the compression method.  It must be Z_DEFLATED in
-   this version of the library.
-
-     The windowBits parameter is the base two logarithm of the window size
-   (the size of the history buffer).  It should be in the range 8..15 for this
-   version of the library.  Larger values of this parameter result in better
-   compression at the expense of memory usage.  The default value is 15 if
-   deflateInit is used instead.
-
-     windowBits can also be -8..-15 for raw deflate.  In this case, -windowBits
-   determines the window size.  deflate() will then generate raw deflate data
-   with no zlib header or trailer, and will not compute an adler32 check value.
-
-     windowBits can also be greater than 15 for optional gzip encoding.  Add
-   16 to windowBits to write a simple gzip header and trailer around the
-   compressed data instead of a zlib wrapper.  The gzip header will have no
-   file name, no extra data, no comment, no modification time (set to zero), no
-   header crc, and the operating system will be set to 255 (unknown).  If a
-   gzip stream is being written, strm->adler is a crc32 instead of an adler32.
-
-     The memLevel parameter specifies how much memory should be allocated
-   for the internal compression state.  memLevel=1 uses minimum memory but is
-   slow and reduces compression ratio; memLevel=9 uses maximum memory for
-   optimal speed.  The default value is 8.  See zconf.h for total memory usage
-   as a function of windowBits and memLevel.
-
-     The strategy parameter is used to tune the compression algorithm.  Use the
-   value Z_DEFAULT_STRATEGY for normal data, Z_FILTERED for data produced by a
-   filter (or predictor), Z_HUFFMAN_ONLY to force Huffman encoding only (no
-   string match), or Z_RLE to limit match distances to one (run-length
-   encoding).  Filtered data consists mostly of small values with a somewhat
-   random distribution.  In this case, the compression algorithm is tuned to
-   compress them better.  The effect of Z_FILTERED is to force more Huffman
-   coding and less string matching; it is somewhat intermediate between
-   Z_DEFAULT_STRATEGY and Z_HUFFMAN_ONLY.  Z_RLE is designed to be almost as
-   fast as Z_HUFFMAN_ONLY, but give better compression for PNG image data.  The
-   strategy parameter only affects the compression ratio but not the
-   correctness of the compressed output even if it is not set appropriately.
-   Z_FIXED prevents the use of dynamic Huffman codes, allowing for a simpler
-   decoder for special applications.
-
-     deflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was not enough
-   memory, Z_STREAM_ERROR if any parameter is invalid (such as an invalid
-   method), or Z_VERSION_ERROR if the zlib library version (zlib_version) is
-   incompatible with the version assumed by the caller (ZLIB_VERSION).  msg is
-   set to null if there is no error message.  deflateInit2 does not perform any
-   compression: this will be done by deflate().
-*/
-
-ZEXTERN int ZEXPORT deflateSetDictionary OF((z_streamp strm,
-                                             const Bytef *dictionary,
-                                             uInt  dictLength));
-/*
-     Initializes the compression dictionary from the given byte sequence
-   without producing any compressed output.  This function must be called
-   immediately after deflateInit, deflateInit2 or deflateReset, before any call
-   of deflate.  The compressor and decompressor must use exactly the same
-   dictionary (see inflateSetDictionary).
-
-     The dictionary should consist of strings (byte sequences) that are likely
-   to be encountered later in the data to be compressed, with the most commonly
-   used strings preferably put towards the end of the dictionary.  Using a
-   dictionary is most useful when the data to be compressed is short and can be
-   predicted with good accuracy; the data can then be compressed better than
-   with the default empty dictionary.
-
-     Depending on the size of the compression data structures selected by
-   deflateInit or deflateInit2, a part of the dictionary may in effect be
-   discarded, for example if the dictionary is larger than the window size
-   provided in deflateInit or deflateInit2.  Thus the strings most likely to be
-   useful should be put at the end of the dictionary, not at the front.  In
-   addition, the current implementation of deflate will use at most the window
-   size minus 262 bytes of the provided dictionary.
-
-     Upon return of this function, strm->adler is set to the adler32 value
-   of the dictionary; the decompressor may later use this value to determine
-   which dictionary has been used by the compressor.  (The adler32 value
-   applies to the whole dictionary even if only a subset of the dictionary is
-   actually used by the compressor.) If a raw deflate was requested, then the
-   adler32 value is not computed and strm->adler is not set.
-
-     deflateSetDictionary returns Z_OK if success, or Z_STREAM_ERROR if a
-   parameter is invalid (e.g.  dictionary being Z_NULL) or the stream state is
-   inconsistent (for example if deflate has already been called for this stream
-   or if the compression method is bsort).  deflateSetDictionary does not
-   perform any compression: this will be done by deflate().
-*/
-
-ZEXTERN int ZEXPORT deflateCopy OF((z_streamp dest,
-                                    z_streamp source));
-/*
-     Sets the destination stream as a complete copy of the source stream.
-
-     This function can be useful when several compression strategies will be
-   tried, for example when there are several ways of pre-processing the input
-   data with a filter.  The streams that will be discarded should then be freed
-   by calling deflateEnd.  Note that deflateCopy duplicates the internal
-   compression state which can be quite large, so this strategy is slow and can
-   consume lots of memory.
-
-     deflateCopy returns Z_OK if success, Z_MEM_ERROR if there was not
-   enough memory, Z_STREAM_ERROR if the source stream state was inconsistent
-   (such as zalloc being Z_NULL).  msg is left unchanged in both source and
-   destination.
-*/
-
-ZEXTERN int ZEXPORT deflateReset OF((z_streamp strm));
-/*
-     This function is equivalent to deflateEnd followed by deflateInit,
-   but does not free and reallocate all the internal compression state.  The
-   stream will keep the same compression level and any other attributes that
-   may have been set by deflateInit2.
-
-     deflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source
-   stream state was inconsistent (such as zalloc or state being Z_NULL).
-*/
-
-ZEXTERN int ZEXPORT deflateParams OF((z_streamp strm,
-                                      int level,
-                                      int strategy));
-/*
-     Dynamically update the compression level and compression strategy.  The
-   interpretation of level and strategy is as in deflateInit2.  This can be
-   used to switch between compression and straight copy of the input data, or
-   to switch to a different kind of input data requiring a different strategy.
-   If the compression level is changed, the input available so far is
-   compressed with the old level (and may be flushed); the new level will take
-   effect only at the next call of deflate().
-
-     Before the call of deflateParams, the stream state must be set as for
-   a call of deflate(), since the currently available input may have to be
-   compressed and flushed.  In particular, strm->avail_out must be non-zero.
-
-     deflateParams returns Z_OK if success, Z_STREAM_ERROR if the source
-   stream state was inconsistent or if a parameter was invalid, Z_BUF_ERROR if
-   strm->avail_out was zero.
-*/
-
-ZEXTERN int ZEXPORT deflateTune OF((z_streamp strm,
-                                    int good_length,
-                                    int max_lazy,
-                                    int nice_length,
-                                    int max_chain));
-/*
-     Fine tune deflate's internal compression parameters.  This should only be
-   used by someone who understands the algorithm used by zlib's deflate for
-   searching for the best matching string, and even then only by the most
-   fanatic optimizer trying to squeeze out the last compressed bit for their
-   specific input data.  Read the deflate.c source code for the meaning of the
-   max_lazy, good_length, nice_length, and max_chain parameters.
-
-     deflateTune() can be called after deflateInit() or deflateInit2(), and
-   returns Z_OK on success, or Z_STREAM_ERROR for an invalid deflate stream.
- */
-
-ZEXTERN uLong ZEXPORT deflateBound OF((z_streamp strm,
-                                       uLong sourceLen));
-/*
-     deflateBound() returns an upper bound on the compressed size after
-   deflation of sourceLen bytes.  It must be called after deflateInit() or
-   deflateInit2(), and after deflateSetHeader(), if used.  This would be used
-   to allocate an output buffer for deflation in a single pass, and so would be
-   called before deflate().
-*/
-
-ZEXTERN int ZEXPORT deflatePrime OF((z_streamp strm,
-                                     int bits,
-                                     int value));
-/*
-     deflatePrime() inserts bits in the deflate output stream.  The intent
-   is that this function is used to start off the deflate output with the bits
-   leftover from a previous deflate stream when appending to it.  As such, this
-   function can only be used for raw deflate, and must be used before the first
-   deflate() call after a deflateInit2() or deflateReset().  bits must be less
-   than or equal to 16, and that many of the least significant bits of value
-   will be inserted in the output.
-
-     deflatePrime returns Z_OK if success, or Z_STREAM_ERROR if the source
-   stream state was inconsistent.
-*/
-
-ZEXTERN int ZEXPORT deflateSetHeader OF((z_streamp strm,
-                                         gz_headerp head));
-/*
-     deflateSetHeader() provides gzip header information for when a gzip
-   stream is requested by deflateInit2().  deflateSetHeader() may be called
-   after deflateInit2() or deflateReset() and before the first call of
-   deflate().  The text, time, os, extra field, name, and comment information
-   in the provided gz_header structure are written to the gzip header (xflag is
-   ignored -- the extra flags are set according to the compression level).  The
-   caller must assure that, if not Z_NULL, name and comment are terminated with
-   a zero byte, and that if extra is not Z_NULL, that extra_len bytes are
-   available there.  If hcrc is true, a gzip header crc is included.  Note that
-   the current versions of the command-line version of gzip (up through version
-   1.3.x) do not support header crc's, and will report that it is a "multi-part
-   gzip file" and give up.
-
-     If deflateSetHeader is not used, the default gzip header has text false,
-   the time set to zero, and os set to 255, with no extra, name, or comment
-   fields.  The gzip header is returned to the default state by deflateReset().
-
-     deflateSetHeader returns Z_OK if success, or Z_STREAM_ERROR if the source
-   stream state was inconsistent.
-*/
-
-/*
-ZEXTERN int ZEXPORT inflateInit2 OF((z_streamp strm,
-                                     int  windowBits));
-
-     This is another version of inflateInit with an extra parameter.  The
-   fields next_in, avail_in, zalloc, zfree and opaque must be initialized
-   before by the caller.
-
-     The windowBits parameter is the base two logarithm of the maximum window
-   size (the size of the history buffer).  It should be in the range 8..15 for
-   this version of the library.  The default value is 15 if inflateInit is used
-   instead.  windowBits must be greater than or equal to the windowBits value
-   provided to deflateInit2() while compressing, or it must be equal to 15 if
-   deflateInit2() was not used.  If a compressed stream with a larger window
-   size is given as input, inflate() will return with the error code
-   Z_DATA_ERROR instead of trying to allocate a larger window.
-
-     windowBits can also be zero to request that inflate use the window size in
-   the zlib header of the compressed stream.
-
-     windowBits can also be -8..-15 for raw inflate.  In this case, -windowBits
-   determines the window size.  inflate() will then process raw deflate data,
-   not looking for a zlib or gzip header, not generating a check value, and not
-   looking for any check values for comparison at the end of the stream.  This
-   is for use with other formats that use the deflate compressed data format
-   such as zip.  Those formats provide their own check values.  If a custom
-   format is developed using the raw deflate format for compressed data, it is
-   recommended that a check value such as an adler32 or a crc32 be applied to
-   the uncompressed data as is done in the zlib, gzip, and zip formats.  For
-   most applications, the zlib format should be used as is.  Note that comments
-   above on the use in deflateInit2() applies to the magnitude of windowBits.
-
-     windowBits can also be greater than 15 for optional gzip decoding.  Add
-   32 to windowBits to enable zlib and gzip decoding with automatic header
-   detection, or add 16 to decode only the gzip format (the zlib format will
-   return a Z_DATA_ERROR).  If a gzip stream is being decoded, strm->adler is a
-   crc32 instead of an adler32.
-
-     inflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was not enough
-   memory, Z_VERSION_ERROR if the zlib library version is incompatible with the
-   version assumed by the caller, or Z_STREAM_ERROR if the parameters are
-   invalid, such as a null pointer to the structure.  msg is set to null if
-   there is no error message.  inflateInit2 does not perform any decompression
-   apart from possibly reading the zlib header if present: actual decompression
-   will be done by inflate().  (So next_in and avail_in may be modified, but
-   next_out and avail_out are unused and unchanged.) The current implementation
-   of inflateInit2() does not process any header information -- that is
-   deferred until inflate() is called.
-*/
-
-ZEXTERN int ZEXPORT inflateSetDictionary OF((z_streamp strm,
-                                             const Bytef *dictionary,
-                                             uInt  dictLength));
-/*
-     Initializes the decompression dictionary from the given uncompressed byte
-   sequence.  This function must be called immediately after a call of inflate,
-   if that call returned Z_NEED_DICT.  The dictionary chosen by the compressor
-   can be determined from the adler32 value returned by that call of inflate.
-   The compressor and decompressor must use exactly the same dictionary (see
-   deflateSetDictionary).  For raw inflate, this function can be called
-   immediately after inflateInit2() or inflateReset() and before any call of
-   inflate() to set the dictionary.  The application must insure that the
-   dictionary that was used for compression is provided.
-
-     inflateSetDictionary returns Z_OK if success, Z_STREAM_ERROR if a
-   parameter is invalid (e.g.  dictionary being Z_NULL) or the stream state is
-   inconsistent, Z_DATA_ERROR if the given dictionary doesn't match the
-   expected one (incorrect adler32 value).  inflateSetDictionary does not
-   perform any decompression: this will be done by subsequent calls of
-   inflate().
-*/
-
-ZEXTERN int ZEXPORT inflateSync OF((z_streamp strm));
-/*
-     Skips invalid compressed data until a full flush point (see above the
-   description of deflate with Z_FULL_FLUSH) can be found, or until all
-   available input is skipped.  No output is provided.
-
-     inflateSync returns Z_OK if a full flush point has been found, Z_BUF_ERROR
-   if no more input was provided, Z_DATA_ERROR if no flush point has been
-   found, or Z_STREAM_ERROR if the stream structure was inconsistent.  In the
-   success case, the application may save the current current value of total_in
-   which indicates where valid compressed data was found.  In the error case,
-   the application may repeatedly call inflateSync, providing more input each
-   time, until success or end of the input data.
-*/
-
-ZEXTERN int ZEXPORT inflateCopy OF((z_streamp dest,
-                                    z_streamp source));
-/*
-     Sets the destination stream as a complete copy of the source stream.
-
-     This function can be useful when randomly accessing a large stream.  The
-   first pass through the stream can periodically record the inflate state,
-   allowing restarting inflate at those points when randomly accessing the
-   stream.
-
-     inflateCopy returns Z_OK if success, Z_MEM_ERROR if there was not
-   enough memory, Z_STREAM_ERROR if the source stream state was inconsistent
-   (such as zalloc being Z_NULL).  msg is left unchanged in both source and
-   destination.
-*/
-
-ZEXTERN int ZEXPORT inflateReset OF((z_streamp strm));
-/*
-     This function is equivalent to inflateEnd followed by inflateInit,
-   but does not free and reallocate all the internal decompression state.  The
-   stream will keep attributes that may have been set by inflateInit2.
-
-     inflateReset returns Z_OK if success, or Z_STREAM_ERROR if the source
-   stream state was inconsistent (such as zalloc or state being Z_NULL).
-*/
-
-ZEXTERN int ZEXPORT inflateReset2 OF((z_streamp strm,
-                                      int windowBits));
-/*
-     This function is the same as inflateReset, but it also permits changing
-   the wrap and window size requests.  The windowBits parameter is interpreted
-   the same as it is for inflateInit2.
-
-     inflateReset2 returns Z_OK if success, or Z_STREAM_ERROR if the source
-   stream state was inconsistent (such as zalloc or state being Z_NULL), or if
-   the windowBits parameter is invalid.
-*/
-
-ZEXTERN int ZEXPORT inflatePrime OF((z_streamp strm,
-                                     int bits,
-                                     int value));
-/*
-     This function inserts bits in the inflate input stream.  The intent is
-   that this function is used to start inflating at a bit position in the
-   middle of a byte.  The provided bits will be used before any bytes are used
-   from next_in.  This function should only be used with raw inflate, and
-   should be used before the first inflate() call after inflateInit2() or
-   inflateReset().  bits must be less than or equal to 16, and that many of the
-   least significant bits of value will be inserted in the input.
-
-     If bits is negative, then the input stream bit buffer is emptied.  Then
-   inflatePrime() can be called again to put bits in the buffer.  This is used
-   to clear out bits leftover after feeding inflate a block description prior
-   to feeding inflate codes.
-
-     inflatePrime returns Z_OK if success, or Z_STREAM_ERROR if the source
-   stream state was inconsistent.
-*/
-
-ZEXTERN long ZEXPORT inflateMark OF((z_streamp strm));
-/*
-     This function returns two values, one in the lower 16 bits of the return
-   value, and the other in the remaining upper bits, obtained by shifting the
-   return value down 16 bits.  If the upper value is -1 and the lower value is
-   zero, then inflate() is currently decoding information outside of a block.
-   If the upper value is -1 and the lower value is non-zero, then inflate is in
-   the middle of a stored block, with the lower value equaling the number of
-   bytes from the input remaining to copy.  If the upper value is not -1, then
-   it is the number of bits back from the current bit position in the input of
-   the code (literal or length/distance pair) currently being processed.  In
-   that case the lower value is the number of bytes already emitted for that
-   code.
-
-     A code is being processed if inflate is waiting for more input to complete
-   decoding of the code, or if it has completed decoding but is waiting for
-   more output space to write the literal or match data.
-
-     inflateMark() is used to mark locations in the input data for random
-   access, which may be at bit positions, and to note those cases where the
-   output of a code may span boundaries of random access blocks.  The current
-   location in the input stream can be determined from avail_in and data_type
-   as noted in the description for the Z_BLOCK flush parameter for inflate.
-
-     inflateMark returns the value noted above or -1 << 16 if the provided
-   source stream state was inconsistent.
-*/
-
-ZEXTERN int ZEXPORT inflateGetHeader OF((z_streamp strm,
-                                         gz_headerp head));
-/*
-     inflateGetHeader() requests that gzip header information be stored in the
-   provided gz_header structure.  inflateGetHeader() may be called after
-   inflateInit2() or inflateReset(), and before the first call of inflate().
-   As inflate() processes the gzip stream, head->done is zero until the header
-   is completed, at which time head->done is set to one.  If a zlib stream is
-   being decoded, then head->done is set to -1 to indicate that there will be
-   no gzip header information forthcoming.  Note that Z_BLOCK or Z_TREES can be
-   used to force inflate() to return immediately after header processing is
-   complete and before any actual data is decompressed.
-
-     The text, time, xflags, and os fields are filled in with the gzip header
-   contents.  hcrc is set to true if there is a header CRC.  (The header CRC
-   was valid if done is set to one.) If extra is not Z_NULL, then extra_max
-   contains the maximum number of bytes to write to extra.  Once done is true,
-   extra_len contains the actual extra field length, and extra contains the
-   extra field, or that field truncated if extra_max is less than extra_len.
-   If name is not Z_NULL, then up to name_max characters are written there,
-   terminated with a zero unless the length is greater than name_max.  If
-   comment is not Z_NULL, then up to comm_max characters are written there,
-   terminated with a zero unless the length is greater than comm_max.  When any
-   of extra, name, or comment are not Z_NULL and the respective field is not
-   present in the header, then that field is set to Z_NULL to signal its
-   absence.  This allows the use of deflateSetHeader() with the returned
-   structure to duplicate the header.  However if those fields are set to
-   allocated memory, then the application will need to save those pointers
-   elsewhere so that they can be eventually freed.
-
-     If inflateGetHeader is not used, then the header information is simply
-   discarded.  The header is always checked for validity, including the header
-   CRC if present.  inflateReset() will reset the process to discard the header
-   information.  The application would need to call inflateGetHeader() again to
-   retrieve the header from the next gzip stream.
-
-     inflateGetHeader returns Z_OK if success, or Z_STREAM_ERROR if the source
-   stream state was inconsistent.
-*/
-
-/*
-ZEXTERN int ZEXPORT inflateBackInit OF((z_streamp strm, int windowBits,
-                                        unsigned char FAR *window));
-
-     Initialize the internal stream state for decompression using inflateBack()
-   calls.  The fields zalloc, zfree and opaque in strm must be initialized
-   before the call.  If zalloc and zfree are Z_NULL, then the default library-
-   derived memory allocation routines are used.  windowBits is the base two
-   logarithm of the window size, in the range 8..15.  window is a caller
-   supplied buffer of that size.  Except for special applications where it is
-   assured that deflate was used with small window sizes, windowBits must be 15
-   and a 32K byte window must be supplied to be able to decompress general
-   deflate streams.
-
-     See inflateBack() for the usage of these routines.
-
-     inflateBackInit will return Z_OK on success, Z_STREAM_ERROR if any of
-   the paramaters are invalid, Z_MEM_ERROR if the internal state could not be
-   allocated, or Z_VERSION_ERROR if the version of the library does not match
-   the version of the header file.
-*/
-
-typedef unsigned (*in_func) OF((void FAR *, unsigned char FAR * FAR *));
-typedef int (*out_func) OF((void FAR *, unsigned char FAR *, unsigned));
-
-ZEXTERN int ZEXPORT inflateBack OF((z_streamp strm,
-                                    in_func in, void FAR *in_desc,
-                                    out_func out, void FAR *out_desc));
-/*
-     inflateBack() does a raw inflate with a single call using a call-back
-   interface for input and output.  This is more efficient than inflate() for
-   file i/o applications in that it avoids copying between the output and the
-   sliding window by simply making the window itself the output buffer.  This
-   function trusts the application to not change the output buffer passed by
-   the output function, at least until inflateBack() returns.
-
-     inflateBackInit() must be called first to allocate the internal state
-   and to initialize the state with the user-provided window buffer.
-   inflateBack() may then be used multiple times to inflate a complete, raw
-   deflate stream with each call.  inflateBackEnd() is then called to free the
-   allocated state.
-
-     A raw deflate stream is one with no zlib or gzip header or trailer.
-   This routine would normally be used in a utility that reads zip or gzip
-   files and writes out uncompressed files.  The utility would decode the
-   header and process the trailer on its own, hence this routine expects only
-   the raw deflate stream to decompress.  This is different from the normal
-   behavior of inflate(), which expects either a zlib or gzip header and
-   trailer around the deflate stream.
-
-     inflateBack() uses two subroutines supplied by the caller that are then
-   called by inflateBack() for input and output.  inflateBack() calls those
-   routines until it reads a complete deflate stream and writes out all of the
-   uncompressed data, or until it encounters an error.  The function's
-   parameters and return types are defined above in the in_func and out_func
-   typedefs.  inflateBack() will call in(in_desc, &buf) which should return the
-   number of bytes of provided input, and a pointer to that input in buf.  If
-   there is no input available, in() must return zero--buf is ignored in that
-   case--and inflateBack() will return a buffer error.  inflateBack() will call
-   out(out_desc, buf, len) to write the uncompressed data buf[0..len-1].  out()
-   should return zero on success, or non-zero on failure.  If out() returns
-   non-zero, inflateBack() will return with an error.  Neither in() nor out()
-   are permitted to change the contents of the window provided to
-   inflateBackInit(), which is also the buffer that out() uses to write from.
-   The length written by out() will be at most the window size.  Any non-zero
-   amount of input may be provided by in().
-
-     For convenience, inflateBack() can be provided input on the first call by
-   setting strm->next_in and strm->avail_in.  If that input is exhausted, then
-   in() will be called.  Therefore strm->next_in must be initialized before
-   calling inflateBack().  If strm->next_in is Z_NULL, then in() will be called
-   immediately for input.  If strm->next_in is not Z_NULL, then strm->avail_in
-   must also be initialized, and then if strm->avail_in is not zero, input will
-   initially be taken from strm->next_in[0 ..  strm->avail_in - 1].
-
-     The in_desc and out_desc parameters of inflateBack() is passed as the
-   first parameter of in() and out() respectively when they are called.  These
-   descriptors can be optionally used to pass any information that the caller-
-   supplied in() and out() functions need to do their job.
-
-     On return, inflateBack() will set strm->next_in and strm->avail_in to
-   pass back any unused input that was provided by the last in() call.  The
-   return values of inflateBack() can be Z_STREAM_END on success, Z_BUF_ERROR
-   if in() or out() returned an error, Z_DATA_ERROR if there was a format error
-   in the deflate stream (in which case strm->msg is set to indicate the nature
-   of the error), or Z_STREAM_ERROR if the stream was not properly initialized.
-   In the case of Z_BUF_ERROR, an input or output error can be distinguished
-   using strm->next_in which will be Z_NULL only if in() returned an error.  If
-   strm->next_in is not Z_NULL, then the Z_BUF_ERROR was due to out() returning
-   non-zero.  (in() will always be called before out(), so strm->next_in is
-   assured to be defined if out() returns non-zero.) Note that inflateBack()
-   cannot return Z_OK.
-*/
-
-ZEXTERN int ZEXPORT inflateBackEnd OF((z_streamp strm));
-/*
-     All memory allocated by inflateBackInit() is freed.
-
-     inflateBackEnd() returns Z_OK on success, or Z_STREAM_ERROR if the stream
-   state was inconsistent.
-*/
-
-ZEXTERN uLong ZEXPORT zlibCompileFlags OF((void));
-/* Return flags indicating compile-time options.
-
-    Type sizes, two bits each, 00 = 16 bits, 01 = 32, 10 = 64, 11 = other:
-     1.0: size of uInt
-     3.2: size of uLong
-     5.4: size of voidpf (pointer)
-     7.6: size of z_off_t
-
-    Compiler, assembler, and debug options:
-     8: DEBUG
-     9: ASMV or ASMINF -- use ASM code
-     10: ZLIB_WINAPI -- exported functions use the WINAPI calling convention
-     11: 0 (reserved)
-
-    One-time table building (smaller code, but not thread-safe if true):
-     12: BUILDFIXED -- build static block decoding tables when needed
-     13: DYNAMIC_CRC_TABLE -- build CRC calculation tables when needed
-     14,15: 0 (reserved)
-
-    Library content (indicates missing functionality):
-     16: NO_GZCOMPRESS -- gz* functions cannot compress (to avoid linking
-                          deflate code when not needed)
-     17: NO_GZIP -- deflate can't write gzip streams, and inflate can't detect
-                    and decode gzip streams (to avoid linking crc code)
-     18-19: 0 (reserved)
-
-    Operation variations (changes in library functionality):
-     20: PKZIP_BUG_WORKAROUND -- slightly more permissive inflate
-     21: FASTEST -- deflate algorithm with only one, lowest compression level
-     22,23: 0 (reserved)
-
-    The sprintf variant used by gzprintf (zero is best):
-     24: 0 = vs*, 1 = s* -- 1 means limited to 20 arguments after the format
-     25: 0 = *nprintf, 1 = *printf -- 1 means gzprintf() not secure!
-     26: 0 = returns value, 1 = void -- 1 means inferred string length returned
-
-    Remainder:
-     27-31: 0 (reserved)
- */
-
-
-                        /* utility functions */
-
-/*
-     The following utility functions are implemented on top of the basic
-   stream-oriented functions.  To simplify the interface, some default options
-   are assumed (compression level and memory usage, standard memory allocation
-   functions).  The source code of these utility functions can be modified if
-   you need special options.
-*/
-
-ZEXTERN int ZEXPORT compress OF((Bytef *dest,   uLongf *destLen,
-                                 const Bytef *source, uLong sourceLen));
-/*
-     Compresses the source buffer into the destination buffer.  sourceLen is
-   the byte length of the source buffer.  Upon entry, destLen is the total size
-   of the destination buffer, which must be at least the value returned by
-   compressBound(sourceLen).  Upon exit, destLen is the actual size of the
-   compressed buffer.
-
-     compress returns Z_OK if success, Z_MEM_ERROR if there was not
-   enough memory, Z_BUF_ERROR if there was not enough room in the output
-   buffer.
-*/
-
-ZEXTERN int ZEXPORT compress2 OF((Bytef *dest,   uLongf *destLen,
-                                  const Bytef *source, uLong sourceLen,
-                                  int level));
-/*
-     Compresses the source buffer into the destination buffer.  The level
-   parameter has the same meaning as in deflateInit.  sourceLen is the byte
-   length of the source buffer.  Upon entry, destLen is the total size of the
-   destination buffer, which must be at least the value returned by
-   compressBound(sourceLen).  Upon exit, destLen is the actual size of the
-   compressed buffer.
-
-     compress2 returns Z_OK if success, Z_MEM_ERROR if there was not enough
-   memory, Z_BUF_ERROR if there was not enough room in the output buffer,
-   Z_STREAM_ERROR if the level parameter is invalid.
-*/
-
-ZEXTERN uLong ZEXPORT compressBound OF((uLong sourceLen));
-/*
-     compressBound() returns an upper bound on the compressed size after
-   compress() or compress2() on sourceLen bytes.  It would be used before a
-   compress() or compress2() call to allocate the destination buffer.
-*/
-
-ZEXTERN int ZEXPORT uncompress OF((Bytef *dest,   uLongf *destLen,
-                                   const Bytef *source, uLong sourceLen));
-/*
-     Decompresses the source buffer into the destination buffer.  sourceLen is
-   the byte length of the source buffer.  Upon entry, destLen is the total size
-   of the destination buffer, which must be large enough to hold the entire
-   uncompressed data.  (The size of the uncompressed data must have been saved
-   previously by the compressor and transmitted to the decompressor by some
-   mechanism outside the scope of this compression library.) Upon exit, destLen
-   is the actual size of the uncompressed buffer.
-
-     uncompress returns Z_OK if success, Z_MEM_ERROR if there was not
-   enough memory, Z_BUF_ERROR if there was not enough room in the output
-   buffer, or Z_DATA_ERROR if the input data was corrupted or incomplete.
-*/
-
-
-                        /* gzip file access functions */
-
-/*
-     This library supports reading and writing files in gzip (.gz) format with
-   an interface similar to that of stdio, using the functions that start with
-   "gz".  The gzip format is different from the zlib format.  gzip is a gzip
-   wrapper, documented in RFC 1952, wrapped around a deflate stream.
-*/
-
-typedef voidp gzFile;       /* opaque gzip file descriptor */
-
-/*
-ZEXTERN gzFile ZEXPORT gzopen OF((const char *path, const char *mode));
-
-     Opens a gzip (.gz) file for reading or writing.  The mode parameter is as
-   in fopen ("rb" or "wb") but can also include a compression level ("wb9") or
-   a strategy: 'f' for filtered data as in "wb6f", 'h' for Huffman-only
-   compression as in "wb1h", 'R' for run-length encoding as in "wb1R", or 'F'
-   for fixed code compression as in "wb9F".  (See the description of
-   deflateInit2 for more information about the strategy parameter.) Also "a"
-   can be used instead of "w" to request that the gzip stream that will be
-   written be appended to the file.  "+" will result in an error, since reading
-   and writing to the same gzip file is not supported.
-
-     gzopen can be used to read a file which is not in gzip format; in this
-   case gzread will directly read from the file without decompression.
-
-     gzopen returns NULL if the file could not be opened, if there was
-   insufficient memory to allocate the gzFile state, or if an invalid mode was
-   specified (an 'r', 'w', or 'a' was not provided, or '+' was provided).
-   errno can be checked to determine if the reason gzopen failed was that the
-   file could not be opened.
-*/
-
-ZEXTERN gzFile ZEXPORT gzdopen OF((int fd, const char *mode));
-/*
-     gzdopen associates a gzFile with the file descriptor fd.  File descriptors
-   are obtained from calls like open, dup, creat, pipe or fileno (if the file
-   has been previously opened with fopen).  The mode parameter is as in gzopen.
-
-     The next call of gzclose on the returned gzFile will also close the file
-   descriptor fd, just like fclose(fdopen(fd, mode)) closes the file descriptor
-   fd.  If you want to keep fd open, use fd = dup(fd_keep); gz = gzdopen(fd,
-   mode);.  The duplicated descriptor should be saved to avoid a leak, since
-   gzdopen does not close fd if it fails.
-
-     gzdopen returns NULL if there was insufficient memory to allocate the
-   gzFile state, if an invalid mode was specified (an 'r', 'w', or 'a' was not
-   provided, or '+' was provided), or if fd is -1.  The file descriptor is not
-   used until the next gz* read, write, seek, or close operation, so gzdopen
-   will not detect if fd is invalid (unless fd is -1).
-*/
-
-ZEXTERN int ZEXPORT gzbuffer OF((gzFile file, unsigned size));
-/*
-     Set the internal buffer size used by this library's functions.  The
-   default buffer size is 8192 bytes.  This function must be called after
-   gzopen() or gzdopen(), and before any other calls that read or write the
-   file.  The buffer memory allocation is always deferred to the first read or
-   write.  Two buffers are allocated, either both of the specified size when
-   writing, or one of the specified size and the other twice that size when
-   reading.  A larger buffer size of, for example, 64K or 128K bytes will
-   noticeably increase the speed of decompression (reading).
-
-     The new buffer size also affects the maximum length for gzprintf().
-
-     gzbuffer() returns 0 on success, or -1 on failure, such as being called
-   too late.
-*/
-
-ZEXTERN int ZEXPORT gzsetparams OF((gzFile file, int level, int strategy));
-/*
-     Dynamically update the compression level or strategy.  See the description
-   of deflateInit2 for the meaning of these parameters.
-
-     gzsetparams returns Z_OK if success, or Z_STREAM_ERROR if the file was not
-   opened for writing.
-*/
-
-ZEXTERN int ZEXPORT gzread OF((gzFile file, voidp buf, unsigned len));
-/*
-     Reads the given number of uncompressed bytes from the compressed file.  If
-   the input file was not in gzip format, gzread copies the given number of
-   bytes into the buffer.
-
-     After reaching the end of a gzip stream in the input, gzread will continue
-   to read, looking for another gzip stream, or failing that, reading the rest
-   of the input file directly without decompression.  The entire input file
-   will be read if gzread is called until it returns less than the requested
-   len.
-
-     gzread returns the number of uncompressed bytes actually read, less than
-   len for end of file, or -1 for error.
-*/
-
-ZEXTERN int ZEXPORT gzwrite OF((gzFile file,
-                                voidpc buf, unsigned len));
-/*
-     Writes the given number of uncompressed bytes into the compressed file.
-   gzwrite returns the number of uncompressed bytes written or 0 in case of
-   error.
-*/
-
-ZEXTERN int ZEXPORTVA gzprintf OF((gzFile file, const char *format, ...));
-/*
-     Converts, formats, and writes the arguments to the compressed file under
-   control of the format string, as in fprintf.  gzprintf returns the number of
-   uncompressed bytes actually written, or 0 in case of error.  The number of
-   uncompressed bytes written is limited to 8191, or one less than the buffer
-   size given to gzbuffer().  The caller should assure that this limit is not
-   exceeded.  If it is exceeded, then gzprintf() will return an error (0) with
-   nothing written.  In this case, there may also be a buffer overflow with
-   unpredictable consequences, which is possible only if zlib was compiled with
-   the insecure functions sprintf() or vsprintf() because the secure snprintf()
-   or vsnprintf() functions were not available.  This can be determined using
-   zlibCompileFlags().
-*/
-
-ZEXTERN int ZEXPORT gzputs OF((gzFile file, const char *s));
-/*
-     Writes the given null-terminated string to the compressed file, excluding
-   the terminating null character.
-
-     gzputs returns the number of characters written, or -1 in case of error.
-*/
-
-ZEXTERN char * ZEXPORT gzgets OF((gzFile file, char *buf, int len));
-/*
-     Reads bytes from the compressed file until len-1 characters are read, or a
-   newline character is read and transferred to buf, or an end-of-file
-   condition is encountered.  If any characters are read or if len == 1, the
-   string is terminated with a null character.  If no characters are read due
-   to an end-of-file or len < 1, then the buffer is left untouched.
-
-     gzgets returns buf which is a null-terminated string, or it returns NULL
-   for end-of-file or in case of error.  If there was an error, the contents at
-   buf are indeterminate.
-*/
-
-ZEXTERN int ZEXPORT gzputc OF((gzFile file, int c));
-/*
-     Writes c, converted to an unsigned char, into the compressed file.  gzputc
-   returns the value that was written, or -1 in case of error.
-*/
-
-ZEXTERN int ZEXPORT gzgetc OF((gzFile file));
-/*
-     Reads one byte from the compressed file.  gzgetc returns this byte or -1
-   in case of end of file or error.
-*/
-
-ZEXTERN int ZEXPORT gzungetc OF((int c, gzFile file));
-/*
-     Push one character back onto the stream to be read as the first character
-   on the next read.  At least one character of push-back is allowed.
-   gzungetc() returns the character pushed, or -1 on failure.  gzungetc() will
-   fail if c is -1, and may fail if a character has been pushed but not read
-   yet.  If gzungetc is used immediately after gzopen or gzdopen, at least the
-   output buffer size of pushed characters is allowed.  (See gzbuffer above.)
-   The pushed character will be discarded if the stream is repositioned with
-   gzseek() or gzrewind().
-*/
-
-ZEXTERN int ZEXPORT gzflush OF((gzFile file, int flush));
-/*
-     Flushes all pending output into the compressed file.  The parameter flush
-   is as in the deflate() function.  The return value is the zlib error number
-   (see function gzerror below).  gzflush is only permitted when writing.
-
-     If the flush parameter is Z_FINISH, the remaining data is written and the
-   gzip stream is completed in the output.  If gzwrite() is called again, a new
-   gzip stream will be started in the output.  gzread() is able to read such
-   concatented gzip streams.
-
-     gzflush should be called only when strictly necessary because it will
-   degrade compression if called too often.
-*/
-
-/*
-ZEXTERN z_off_t ZEXPORT gzseek OF((gzFile file,
-                                   z_off_t offset, int whence));
-
-     Sets the starting position for the next gzread or gzwrite on the given
-   compressed file.  The offset represents a number of bytes in the
-   uncompressed data stream.  The whence parameter is defined as in lseek(2);
-   the value SEEK_END is not supported.
-
-     If the file is opened for reading, this function is emulated but can be
-   extremely slow.  If the file is opened for writing, only forward seeks are
-   supported; gzseek then compresses a sequence of zeroes up to the new
-   starting position.
-
-     gzseek returns the resulting offset location as measured in bytes from
-   the beginning of the uncompressed stream, or -1 in case of error, in
-   particular if the file is opened for writing and the new starting position
-   would be before the current position.
-*/
-
-ZEXTERN int ZEXPORT    gzrewind OF((gzFile file));
-/*
-     Rewinds the given file. This function is supported only for reading.
-
-     gzrewind(file) is equivalent to (int)gzseek(file, 0L, SEEK_SET)
-*/
-
-/*
-ZEXTERN z_off_t ZEXPORT    gztell OF((gzFile file));
-
-     Returns the starting position for the next gzread or gzwrite on the given
-   compressed file.  This position represents a number of bytes in the
-   uncompressed data stream, and is zero when starting, even if appending or
-   reading a gzip stream from the middle of a file using gzdopen().
-
-     gztell(file) is equivalent to gzseek(file, 0L, SEEK_CUR)
-*/
-
-/*
-ZEXTERN z_off_t ZEXPORT gzoffset OF((gzFile file));
-
-     Returns the current offset in the file being read or written.  This offset
-   includes the count of bytes that precede the gzip stream, for example when
-   appending or when using gzdopen() for reading.  When reading, the offset
-   does not include as yet unused buffered input.  This information can be used
-   for a progress indicator.  On error, gzoffset() returns -1.
-*/
-
-ZEXTERN int ZEXPORT gzeof OF((gzFile file));
-/*
-     Returns true (1) if the end-of-file indicator has been set while reading,
-   false (0) otherwise.  Note that the end-of-file indicator is set only if the
-   read tried to go past the end of the input, but came up short.  Therefore,
-   just like feof(), gzeof() may return false even if there is no more data to
-   read, in the event that the last read request was for the exact number of
-   bytes remaining in the input file.  This will happen if the input file size
-   is an exact multiple of the buffer size.
-
-     If gzeof() returns true, then the read functions will return no more data,
-   unless the end-of-file indicator is reset by gzclearerr() and the input file
-   has grown since the previous end of file was detected.
-*/
-
-ZEXTERN int ZEXPORT gzdirect OF((gzFile file));
-/*
-     Returns true (1) if file is being copied directly while reading, or false
-   (0) if file is a gzip stream being decompressed.  This state can change from
-   false to true while reading the input file if the end of a gzip stream is
-   reached, but is followed by data that is not another gzip stream.
-
-     If the input file is empty, gzdirect() will return true, since the input
-   does not contain a gzip stream.
-
-     If gzdirect() is used immediately after gzopen() or gzdopen() it will
-   cause buffers to be allocated to allow reading the file to determine if it
-   is a gzip file.  Therefore if gzbuffer() is used, it should be called before
-   gzdirect().
-*/
-
-ZEXTERN int ZEXPORT    gzclose OF((gzFile file));
-/*
-     Flushes all pending output if necessary, closes the compressed file and
-   deallocates the (de)compression state.  Note that once file is closed, you
-   cannot call gzerror with file, since its structures have been deallocated.
-   gzclose must not be called more than once on the same file, just as free
-   must not be called more than once on the same allocation.
-
-     gzclose will return Z_STREAM_ERROR if file is not valid, Z_ERRNO on a
-   file operation error, or Z_OK on success.
-*/
-
-ZEXTERN int ZEXPORT gzclose_r OF((gzFile file));
-ZEXTERN int ZEXPORT gzclose_w OF((gzFile file));
-/*
-     Same as gzclose(), but gzclose_r() is only for use when reading, and
-   gzclose_w() is only for use when writing or appending.  The advantage to
-   using these instead of gzclose() is that they avoid linking in zlib
-   compression or decompression code that is not used when only reading or only
-   writing respectively.  If gzclose() is used, then both compression and
-   decompression code will be included the application when linking to a static
-   zlib library.
-*/
-
-ZEXTERN const char * ZEXPORT gzerror OF((gzFile file, int *errnum));
-/*
-     Returns the error message for the last error which occurred on the given
-   compressed file.  errnum is set to zlib error number.  If an error occurred
-   in the file system and not in the compression library, errnum is set to
-   Z_ERRNO and the application may consult errno to get the exact error code.
-
-     The application must not modify the returned string.  Future calls to
-   this function may invalidate the previously returned string.  If file is
-   closed, then the string previously returned by gzerror will no longer be
-   available.
-
-     gzerror() should be used to distinguish errors from end-of-file for those
-   functions above that do not distinguish those cases in their return values.
-*/
-
-ZEXTERN void ZEXPORT gzclearerr OF((gzFile file));
-/*
-     Clears the error and end-of-file flags for file.  This is analogous to the
-   clearerr() function in stdio.  This is useful for continuing to read a gzip
-   file that is being written concurrently.
-*/
-
-
-                        /* checksum functions */
-
-/*
-     These functions are not related to compression but are exported
-   anyway because they might be useful in applications using the compression
-   library.
-*/
-
-ZEXTERN uLong ZEXPORT adler32 OF((uLong adler, const Bytef *buf, uInt len));
-/*
-     Update a running Adler-32 checksum with the bytes buf[0..len-1] and
-   return the updated checksum.  If buf is Z_NULL, this function returns the
-   required initial value for the checksum.
-
-     An Adler-32 checksum is almost as reliable as a CRC32 but can be computed
-   much faster.
-
-   Usage example:
-
-     uLong adler = adler32(0L, Z_NULL, 0);
-
-     while (read_buffer(buffer, length) != EOF) {
-       adler = adler32(adler, buffer, length);
-     }
-     if (adler != original_adler) error();
-*/
-
-/*
-ZEXTERN uLong ZEXPORT adler32_combine OF((uLong adler1, uLong adler2,
-                                          z_off_t len2));
-
-     Combine two Adler-32 checksums into one.  For two sequences of bytes, seq1
-   and seq2 with lengths len1 and len2, Adler-32 checksums were calculated for
-   each, adler1 and adler2.  adler32_combine() returns the Adler-32 checksum of
-   seq1 and seq2 concatenated, requiring only adler1, adler2, and len2.
-*/
-
-ZEXTERN uLong ZEXPORT crc32   OF((uLong crc, const Bytef *buf, uInt len));
-/*
-     Update a running CRC-32 with the bytes buf[0..len-1] and return the
-   updated CRC-32.  If buf is Z_NULL, this function returns the required
-   initial value for the for the crc.  Pre- and post-conditioning (one's
-   complement) is performed within this function so it shouldn't be done by the
-   application.
-
-   Usage example:
-
-     uLong crc = crc32(0L, Z_NULL, 0);
-
-     while (read_buffer(buffer, length) != EOF) {
-       crc = crc32(crc, buffer, length);
-     }
-     if (crc != original_crc) error();
-*/
-
-/*
-ZEXTERN uLong ZEXPORT crc32_combine OF((uLong crc1, uLong crc2, z_off_t len2));
-
-     Combine two CRC-32 check values into one.  For two sequences of bytes,
-   seq1 and seq2 with lengths len1 and len2, CRC-32 check values were
-   calculated for each, crc1 and crc2.  crc32_combine() returns the CRC-32
-   check value of seq1 and seq2 concatenated, requiring only crc1, crc2, and
-   len2.
-*/
-
-
-                        /* various hacks, don't look :) */
-
-/* deflateInit and inflateInit are macros to allow checking the zlib version
- * and the compiler's view of z_stream:
- */
-ZEXTERN int ZEXPORT deflateInit_ OF((z_streamp strm, int level,
-                                     const char *version, int stream_size));
-ZEXTERN int ZEXPORT inflateInit_ OF((z_streamp strm,
-                                     const char *version, int stream_size));
-ZEXTERN int ZEXPORT deflateInit2_ OF((z_streamp strm, int  level, int  method,
-                                      int windowBits, int memLevel,
-                                      int strategy, const char *version,
-                                      int stream_size));
-ZEXTERN int ZEXPORT inflateInit2_ OF((z_streamp strm, int  windowBits,
-                                      const char *version, int stream_size));
-ZEXTERN int ZEXPORT inflateBackInit_ OF((z_streamp strm, int windowBits,
-                                         unsigned char FAR *window,
-                                         const char *version,
-                                         int stream_size));
-#define deflateInit(strm, level) \
-        deflateInit_((strm), (level),       ZLIB_VERSION, sizeof(z_stream))
-#define inflateInit(strm) \
-        inflateInit_((strm),                ZLIB_VERSION, sizeof(z_stream))
-#define deflateInit2(strm, level, method, windowBits, memLevel, strategy) \
-        deflateInit2_((strm),(level),(method),(windowBits),(memLevel),\
-                      (strategy),           ZLIB_VERSION, sizeof(z_stream))
-#define inflateInit2(strm, windowBits) \
-        inflateInit2_((strm), (windowBits), ZLIB_VERSION, sizeof(z_stream))
-#define inflateBackInit(strm, windowBits, window) \
-        inflateBackInit_((strm), (windowBits), (window), \
-                                            ZLIB_VERSION, sizeof(z_stream))
-
-/* provide 64-bit offset functions if _LARGEFILE64_SOURCE defined, and/or
- * change the regular functions to 64 bits if _FILE_OFFSET_BITS is 64 (if
- * both are true, the application gets the *64 functions, and the regular
- * functions are changed to 64 bits) -- in case these are set on systems
- * without large file support, _LFS64_LARGEFILE must also be true
- */
-#if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
-   ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *));
-   ZEXTERN z_off64_t ZEXPORT gzseek64 OF((gzFile, z_off64_t, int));
-   ZEXTERN z_off64_t ZEXPORT gztell64 OF((gzFile));
-   ZEXTERN z_off64_t ZEXPORT gzoffset64 OF((gzFile));
-   ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, z_off64_t));
-   ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, z_off64_t));
-#endif
-
-#if !defined(ZLIB_INTERNAL) && defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS-0 == 64 && _LFS64_LARGEFILE-0
-#  define gzopen gzopen64
-#  define gzseek gzseek64
-#  define gztell gztell64
-#  define gzoffset gzoffset64
-#  define adler32_combine adler32_combine64
-#  define crc32_combine crc32_combine64
-#  ifdef _LARGEFILE64_SOURCE
-     ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *));
-     ZEXTERN z_off_t ZEXPORT gzseek64 OF((gzFile, z_off_t, int));
-     ZEXTERN z_off_t ZEXPORT gztell64 OF((gzFile));
-     ZEXTERN z_off_t ZEXPORT gzoffset64 OF((gzFile));
-     ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, z_off_t));
-     ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, z_off_t));
-#  endif
-#else
-   ZEXTERN gzFile ZEXPORT gzopen OF((const char *, const char *));
-   ZEXTERN z_off_t ZEXPORT gzseek OF((gzFile, z_off_t, int));
-   ZEXTERN z_off_t ZEXPORT gztell OF((gzFile));
-   ZEXTERN z_off_t ZEXPORT gzoffset OF((gzFile));
-   ZEXTERN uLong ZEXPORT adler32_combine OF((uLong, uLong, z_off_t));
-   ZEXTERN uLong ZEXPORT crc32_combine OF((uLong, uLong, z_off_t));
-#endif
-
-/* hack for buggy compilers */
-#if !defined(ZUTIL_H) && !defined(NO_DUMMY_DECL)
-    struct internal_state {int dummy;};
-#endif
-
-/* undocumented functions */
-ZEXTERN const char   * ZEXPORT zError           OF((int));
-ZEXTERN int            ZEXPORT inflateSyncPoint OF((z_streamp));
-ZEXTERN const uLongf * ZEXPORT get_crc_table    OF((void));
-ZEXTERN int            ZEXPORT inflateUndermine OF((z_streamp, int));
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* ZLIB_H */
diff --git a/src/other/zlib/zutil.c b/src/other/zlib/zutil.c
deleted file mode 100644
index 4fb28df..0000000
--- a/src/other/zlib/zutil.c
+++ /dev/null
@@ -1,318 +0,0 @@
-/* zutil.c -- target dependent utility functions for the compression library
- * Copyright (C) 1995-2005, 2010 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* @(#) $Id: zutil.c 21114 2010-05-10 07:14:43Z dtremenak $ */
-
-#include "zutil.h"
-
-#ifndef NO_DUMMY_DECL
-struct internal_state      {int dummy;}; /* for buggy compilers */
-#endif
-
-const char * const z_errmsg[10] = {
-"need dictionary",     /* Z_NEED_DICT       2  */
-"stream end",          /* Z_STREAM_END      1  */
-"",                    /* Z_OK              0  */
-"file error",          /* Z_ERRNO         (-1) */
-"stream error",        /* Z_STREAM_ERROR  (-2) */
-"data error",          /* Z_DATA_ERROR    (-3) */
-"insufficient memory", /* Z_MEM_ERROR     (-4) */
-"buffer error",        /* Z_BUF_ERROR     (-5) */
-"incompatible version",/* Z_VERSION_ERROR (-6) */
-""};
-
-
-const char * ZEXPORT zlibVersion()
-{
-    return ZLIB_VERSION;
-}
-
-uLong ZEXPORT zlibCompileFlags()
-{
-    uLong flags;
-
-    flags = 0;
-    switch ((int)(sizeof(uInt))) {
-    case 2:     break;
-    case 4:     flags += 1;     break;
-    case 8:     flags += 2;     break;
-    default:    flags += 3;
-    }
-    switch ((int)(sizeof(uLong))) {
-    case 2:     break;
-    case 4:     flags += 1 << 2;        break;
-    case 8:     flags += 2 << 2;        break;
-    default:    flags += 3 << 2;
-    }
-    switch ((int)(sizeof(voidpf))) {
-    case 2:     break;
-    case 4:     flags += 1 << 4;        break;
-    case 8:     flags += 2 << 4;        break;
-    default:    flags += 3 << 4;
-    }
-    switch ((int)(sizeof(z_off_t))) {
-    case 2:     break;
-    case 4:     flags += 1 << 6;        break;
-    case 8:     flags += 2 << 6;        break;
-    default:    flags += 3 << 6;
-    }
-#ifdef DEBUG
-    flags += 1 << 8;
-#endif
-#if defined(ASMV) || defined(ASMINF)
-    flags += 1 << 9;
-#endif
-#ifdef ZLIB_WINAPI
-    flags += 1 << 10;
-#endif
-#ifdef BUILDFIXED
-    flags += 1 << 12;
-#endif
-#ifdef DYNAMIC_CRC_TABLE
-    flags += 1 << 13;
-#endif
-#ifdef NO_GZCOMPRESS
-    flags += 1L << 16;
-#endif
-#ifdef NO_GZIP
-    flags += 1L << 17;
-#endif
-#ifdef PKZIP_BUG_WORKAROUND
-    flags += 1L << 20;
-#endif
-#ifdef FASTEST
-    flags += 1L << 21;
-#endif
-#ifdef STDC
-#  ifdef NO_vsnprintf
-        flags += 1L << 25;
-#    ifdef HAS_vsprintf_void
-        flags += 1L << 26;
-#    endif
-#  else
-#    ifdef HAS_vsnprintf_void
-        flags += 1L << 26;
-#    endif
-#  endif
-#else
-        flags += 1L << 24;
-#  ifdef NO_snprintf
-        flags += 1L << 25;
-#    ifdef HAS_sprintf_void
-        flags += 1L << 26;
-#    endif
-#  else
-#    ifdef HAS_snprintf_void
-        flags += 1L << 26;
-#    endif
-#  endif
-#endif
-    return flags;
-}
-
-#ifdef DEBUG
-
-#  ifndef verbose
-#    define verbose 0
-#  endif
-int ZLIB_INTERNAL z_verbose = verbose;
-
-void ZLIB_INTERNAL z_error (m)
-    char *m;
-{
-    fprintf(stderr, "%s\n", m);
-    exit(1);
-}
-#endif
-
-/* exported to allow conversion of error code to string for compress() and
- * uncompress()
- */
-const char * ZEXPORT zError(err)
-    int err;
-{
-    return ERR_MSG(err);
-}
-
-#if defined(_WIN32_WCE)
-    /* The Microsoft C Run-Time Library for Windows CE doesn't have
-     * errno.  We define it as a global variable to simplify porting.
-     * Its value is always 0 and should not be used.
-     */
-    int errno = 0;
-#endif
-
-#ifndef HAVE_MEMCPY
-
-void ZLIB_INTERNAL zmemcpy(dest, source, len)
-    Bytef* dest;
-    const Bytef* source;
-    uInt  len;
-{
-    if (len == 0) return;
-    do {
-        *dest++ = *source++; /* ??? to be unrolled */
-    } while (--len != 0);
-}
-
-int ZLIB_INTERNAL zmemcmp(s1, s2, len)
-    const Bytef* s1;
-    const Bytef* s2;
-    uInt  len;
-{
-    uInt j;
-
-    for (j = 0; j < len; j++) {
-        if (s1[j] != s2[j]) return 2*(s1[j] > s2[j])-1;
-    }
-    return 0;
-}
-
-void ZLIB_INTERNAL zmemzero(dest, len)
-    Bytef* dest;
-    uInt  len;
-{
-    if (len == 0) return;
-    do {
-        *dest++ = 0;  /* ??? to be unrolled */
-    } while (--len != 0);
-}
-#endif
-
-
-#ifdef SYS16BIT
-
-#ifdef __TURBOC__
-/* Turbo C in 16-bit mode */
-
-#  define MY_ZCALLOC
-
-/* Turbo C malloc() does not allow dynamic allocation of 64K bytes
- * and farmalloc(64K) returns a pointer with an offset of 8, so we
- * must fix the pointer. Warning: the pointer must be put back to its
- * original form in order to free it, use zcfree().
- */
-
-#define MAX_PTR 10
-/* 10*64K = 640K */
-
-local int next_ptr = 0;
-
-typedef struct ptr_table_s {
-    voidpf org_ptr;
-    voidpf new_ptr;
-} ptr_table;
-
-local ptr_table table[MAX_PTR];
-/* This table is used to remember the original form of pointers
- * to large buffers (64K). Such pointers are normalized with a zero offset.
- * Since MSDOS is not a preemptive multitasking OS, this table is not
- * protected from concurrent access. This hack doesn't work anyway on
- * a protected system like OS/2. Use Microsoft C instead.
- */
-
-voidpf ZLIB_INTERNAL zcalloc (voidpf opaque, unsigned items, unsigned size)
-{
-    voidpf buf = opaque; /* just to make some compilers happy */
-    ulg bsize = (ulg)items*size;
-
-    /* If we allocate less than 65520 bytes, we assume that farmalloc
-     * will return a usable pointer which doesn't have to be normalized.
-     */
-    if (bsize < 65520L) {
-        buf = farmalloc(bsize);
-        if (*(ush*)&buf != 0) return buf;
-    } else {
-        buf = farmalloc(bsize + 16L);
-    }
-    if (buf == NULL || next_ptr >= MAX_PTR) return NULL;
-    table[next_ptr].org_ptr = buf;
-
-    /* Normalize the pointer to seg:0 */
-    *((ush*)&buf+1) += ((ush)((uch*)buf-0) + 15) >> 4;
-    *(ush*)&buf = 0;
-    table[next_ptr++].new_ptr = buf;
-    return buf;
-}
-
-void ZLIB_INTERNAL zcfree (voidpf opaque, voidpf ptr)
-{
-    int n;
-    if (*(ush*)&ptr != 0) { /* object < 64K */
-        farfree(ptr);
-        return;
-    }
-    /* Find the original pointer */
-    for (n = 0; n < next_ptr; n++) {
-        if (ptr != table[n].new_ptr) continue;
-
-        farfree(table[n].org_ptr);
-        while (++n < next_ptr) {
-            table[n-1] = table[n];
-        }
-        next_ptr--;
-        return;
-    }
-    ptr = opaque; /* just to make some compilers happy */
-    Assert(0, "zcfree: ptr not found");
-}
-
-#endif /* __TURBOC__ */
-
-
-#ifdef M_I86
-/* Microsoft C in 16-bit mode */
-
-#  define MY_ZCALLOC
-
-#if (!defined(_MSC_VER) || (_MSC_VER <= 600))
-#  define _halloc  halloc
-#  define _hfree   hfree
-#endif
-
-voidpf ZLIB_INTERNAL zcalloc (voidpf opaque, uInt items, uInt size)
-{
-    if (opaque) opaque = 0; /* to make compiler happy */
-    return _halloc((long)items, size);
-}
-
-void ZLIB_INTERNAL zcfree (voidpf opaque, voidpf ptr)
-{
-    if (opaque) opaque = 0; /* to make compiler happy */
-    _hfree(ptr);
-}
-
-#endif /* M_I86 */
-
-#endif /* SYS16BIT */
-
-
-#ifndef MY_ZCALLOC /* Any system without a special alloc function */
-
-#ifndef STDC
-extern voidp  malloc OF((uInt size));
-extern voidp  calloc OF((uInt items, uInt size));
-extern void   free   OF((voidpf ptr));
-#endif
-
-voidpf ZLIB_INTERNAL zcalloc (opaque, items, size)
-    voidpf opaque;
-    unsigned items;
-    unsigned size;
-{
-    if (opaque) items += size - size; /* make compiler happy */
-    return sizeof(uInt) > 2 ? (voidpf)malloc(items * size) :
-                              (voidpf)calloc(items, size);
-}
-
-void ZLIB_INTERNAL zcfree (opaque, ptr)
-    voidpf opaque;
-    voidpf ptr;
-{
-    free(ptr);
-    if (opaque) return; /* make compiler happy */
-}
-
-#endif /* MY_ZCALLOC */
diff --git a/src/other/zlib/zutil.h b/src/other/zlib/zutil.h
deleted file mode 100644
index baade28..0000000
--- a/src/other/zlib/zutil.h
+++ /dev/null
@@ -1,274 +0,0 @@
-/* zutil.h -- internal interface and configuration of the compression library
- * Copyright (C) 1995-2010 Jean-loup Gailly.
- * For conditions of distribution and use, see copyright notice in zlib.h
- */
-
-/* WARNING: this file should *not* be used by applications. It is
-   part of the implementation of the compression library and is
-   subject to change. Applications should only use zlib.h.
- */
-
-/* @(#) $Id: zutil.h 21114 2010-05-10 07:14:43Z dtremenak $ */
-
-#ifndef ZUTIL_H
-#define ZUTIL_H
-
-#if ((__GNUC__-0) * 10 + __GNUC_MINOR__-0 >= 33) && !defined(NO_VIZ)
-#  define ZLIB_INTERNAL __attribute__((visibility ("hidden")))
-#else
-#  define ZLIB_INTERNAL
-#endif
-
-#include "zlib.h"
-
-#ifdef STDC
-#  if !(defined(_WIN32_WCE) && defined(_MSC_VER))
-#    include <stddef.h>
-#  endif
-#  include <string.h>
-#  include <stdlib.h>
-#endif
-
-#ifndef local
-#  define local static
-#endif
-/* compile with -Dlocal if your debugger can't find static symbols */
-
-typedef unsigned char  uch;
-typedef uch FAR uchf;
-typedef unsigned short ush;
-typedef ush FAR ushf;
-typedef unsigned long  ulg;
-
-extern const char * const z_errmsg[10]; /* indexed by 2-zlib_error */
-/* (size given to avoid silly warnings with Visual C++) */
-
-#define ERR_MSG(err) z_errmsg[Z_NEED_DICT-(err)]
-
-#define ERR_RETURN(strm,err) \
-  return (strm->msg = (char*)ERR_MSG(err), (err))
-/* To be used only when the state is known to be valid */
-
-        /* common constants */
-
-#ifndef DEF_WBITS
-#  define DEF_WBITS MAX_WBITS
-#endif
-/* default windowBits for decompression. MAX_WBITS is for compression only */
-
-#if MAX_MEM_LEVEL >= 8
-#  define DEF_MEM_LEVEL 8
-#else
-#  define DEF_MEM_LEVEL  MAX_MEM_LEVEL
-#endif
-/* default memLevel */
-
-#define STORED_BLOCK 0
-#define STATIC_TREES 1
-#define DYN_TREES    2
-/* The three kinds of block type */
-
-#define MIN_MATCH  3
-#define MAX_MATCH  258
-/* The minimum and maximum match lengths */
-
-#define PRESET_DICT 0x20 /* preset dictionary flag in zlib header */
-
-        /* target dependencies */
-
-#if defined(MSDOS) || (defined(WINDOWS) && !defined(WIN32))
-#  define OS_CODE  0x00
-#  if defined(__TURBOC__) || defined(__BORLANDC__)
-#    if (__STDC__ == 1) && (defined(__LARGE__) || defined(__COMPACT__))
-       /* Allow compilation with ANSI keywords only enabled */
-       void _Cdecl farfree( void *block );
-       void *_Cdecl farmalloc( unsigned long nbytes );
-#    else
-#      include <alloc.h>
-#    endif
-#  else /* MSC or DJGPP */
-#    include <malloc.h>
-#  endif
-#endif
-
-#ifdef AMIGA
-#  define OS_CODE  0x01
-#endif
-
-#if defined(VAXC) || defined(VMS)
-#  define OS_CODE  0x02
-#  define F_OPEN(name, mode) \
-     fopen((name), (mode), "mbc=60", "ctx=stm", "rfm=fix", "mrs=512")
-#endif
-
-#if defined(ATARI) || defined(atarist)
-#  define OS_CODE  0x05
-#endif
-
-#ifdef OS2
-#  define OS_CODE  0x06
-#  ifdef M_I86
-#    include <malloc.h>
-#  endif
-#endif
-
-#if defined(MACOS) || defined(TARGET_OS_MAC)
-#  define OS_CODE  0x07
-#  if defined(__MWERKS__) && __dest_os != __be_os && __dest_os != __win32_os
-#    include <unix.h> /* for fdopen */
-#  else
-#    ifndef fdopen
-#      define fdopen(fd,mode) NULL /* No fdopen() */
-#    endif
-#  endif
-#endif
-
-#ifdef TOPS20
-#  define OS_CODE  0x0a
-#endif
-
-#ifdef WIN32
-#  ifndef __CYGWIN__  /* Cygwin is Unix, not Win32 */
-#    define OS_CODE  0x0b
-#  endif
-#endif
-
-#ifdef __50SERIES /* Prime/PRIMOS */
-#  define OS_CODE  0x0f
-#endif
-
-#if defined(_BEOS_) || defined(RISCOS)
-#  define fdopen(fd,mode) NULL /* No fdopen() */
-#endif
-
-#if (defined(_MSC_VER) && (_MSC_VER > 600)) && !defined __INTERIX
-#  if defined(_WIN32_WCE)
-#    define fdopen(fd,mode) NULL /* No fdopen() */
-#    ifndef _PTRDIFF_T_DEFINED
-       typedef int ptrdiff_t;
-#      define _PTRDIFF_T_DEFINED
-#    endif
-#  else
-#    define fdopen(fd,type)  _fdopen(fd,type)
-#  endif
-#endif
-
-#if defined(__BORLANDC__)
-  #pragma warn -8004
-  #pragma warn -8008
-  #pragma warn -8066
-#endif
-
-/* provide prototypes for these when building zlib without LFS */
-#if !defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0
-    ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, z_off_t));
-    ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, z_off_t));
-#endif
-
-        /* common defaults */
-
-#ifndef OS_CODE
-#  define OS_CODE  0x03  /* assume Unix */
-#endif
-
-#ifndef F_OPEN
-#  define F_OPEN(name, mode) fopen((name), (mode))
-#endif
-
-         /* functions */
-
-#if defined(STDC99) || (defined(__TURBOC__) && __TURBOC__ >= 0x550)
-#  ifndef HAVE_VSNPRINTF
-#    define HAVE_VSNPRINTF
-#  endif
-#endif
-#if defined(__CYGWIN__)
-#  ifndef HAVE_VSNPRINTF
-#    define HAVE_VSNPRINTF
-#  endif
-#endif
-#ifndef HAVE_VSNPRINTF
-#  ifdef MSDOS
-     /* vsnprintf may exist on some MS-DOS compilers (DJGPP?),
-        but for now we just assume it doesn't. */
-#    define NO_vsnprintf
-#  endif
-#  ifdef __TURBOC__
-#    define NO_vsnprintf
-#  endif
-#  ifdef WIN32
-     /* In Win32, vsnprintf is available as the "non-ANSI" _vsnprintf. */
-#    if !defined(vsnprintf) && !defined(NO_vsnprintf)
-#      if !defined(_MSC_VER) || ( defined(_MSC_VER) && _MSC_VER < 1500 )
-#         define vsnprintf _vsnprintf
-#      endif
-#    endif
-#  endif
-#  ifdef __SASC
-#    define NO_vsnprintf
-#  endif
-#endif
-#ifdef VMS
-#  define NO_vsnprintf
-#endif
-
-#if defined(pyr)
-#  define NO_MEMCPY
-#endif
-#if defined(SMALL_MEDIUM) && !defined(_MSC_VER) && !defined(__SC__)
- /* Use our own functions for small and medium model with MSC <= 5.0.
-  * You may have to use the same strategy for Borland C (untested).
-  * The __SC__ check is for Symantec.
-  */
-#  define NO_MEMCPY
-#endif
-#if defined(STDC) && !defined(HAVE_MEMCPY) && !defined(NO_MEMCPY)
-#  define HAVE_MEMCPY
-#endif
-#ifdef HAVE_MEMCPY
-#  ifdef SMALL_MEDIUM /* MSDOS small or medium model */
-#    define zmemcpy _fmemcpy
-#    define zmemcmp _fmemcmp
-#    define zmemzero(dest, len) _fmemset(dest, 0, len)
-#  else
-#    define zmemcpy memcpy
-#    define zmemcmp memcmp
-#    define zmemzero(dest, len) memset(dest, 0, len)
-#  endif
-#else
-   void ZLIB_INTERNAL zmemcpy OF((Bytef* dest, const Bytef* source, uInt len));
-   int ZLIB_INTERNAL zmemcmp OF((const Bytef* s1, const Bytef* s2, uInt len));
-   void ZLIB_INTERNAL zmemzero OF((Bytef* dest, uInt len));
-#endif
-
-/* Diagnostic functions */
-#ifdef DEBUG
-#  include <stdio.h>
-   extern int ZLIB_INTERNAL z_verbose;
-   extern void ZLIB_INTERNAL z_error OF((char *m));
-#  define Assert(cond,msg) {if(!(cond)) z_error(msg);}
-#  define Trace(x) {if (z_verbose>=0) fprintf x ;}
-#  define Tracev(x) {if (z_verbose>0) fprintf x ;}
-#  define Tracevv(x) {if (z_verbose>1) fprintf x ;}
-#  define Tracec(c,x) {if (z_verbose>0 && (c)) fprintf x ;}
-#  define Tracecv(c,x) {if (z_verbose>1 && (c)) fprintf x ;}
-#else
-#  define Assert(cond,msg)
-#  define Trace(x)
-#  define Tracev(x)
-#  define Tracevv(x)
-#  define Tracec(c,x)
-#  define Tracecv(c,x)
-#endif
-
-
-voidpf ZLIB_INTERNAL zcalloc OF((voidpf opaque, unsigned items,
-                        unsigned size));
-void ZLIB_INTERNAL zcfree  OF((voidpf opaque, voidpf ptr));
-
-#define ZALLOC(strm, items, size) \
-           (*((strm)->zalloc))((strm)->opaque, (items), (size))
-#define ZFREE(strm, addr)  (*((strm)->zfree))((strm)->opaque, (voidpf)(addr))
-#define TRY_FREE(s, p) {if (p) ZFREE(s, p);}
-
-#endif /* ZUTIL_H */

-- 
Packaging for bzflag



More information about the Pkg-games-commits mailing list